diff options
130 files changed, 21 insertions, 42135 deletions
diff --git a/benchmarks/Makefile b/benchmarks/Makefile index 9738f61..2b71b50 100644 --- a/benchmarks/Makefile +++ b/benchmarks/Makefile @@ -27,10 +27,6 @@ bmarks = \ spmv \ mt-vvadd \ mt-matmul \ - #vec-fft \ - #vec-vvadd \ - #vec-cmplxmult \ - #vec-matmul \ bmarks_host = \ median \ @@ -52,7 +48,7 @@ HOST_COMP = gcc $(HOST_OPTS) RISCV_PREFIX=riscv64-unknown-elf- RISCV_GCC = $(RISCV_PREFIX)gcc -RISCV_GCC_OPTS = -static -Wa,-march=RVIMAFDXhwacha -std=gnu99 -O2 -ffast-math -fno-common -fno-builtin-printf +RISCV_GCC_OPTS = -static -std=gnu99 -O2 -ffast-math -fno-common -fno-builtin-printf RISCV_LINK = $(RISCV_GCC) -T $(bmarkdir)/common/test.ld $(incs) RISCV_LINK_MT = $(RISCV_GCC) -T $(bmarkdir)/common/test-mt.ld RISCV_LINK_OPTS = -nostdlib -nostartfiles -ffast-math -lc -lgcc diff --git a/benchmarks/mm/bmark.mk b/benchmarks/mm/bmark.mk index bb982a8..ec8fd16 100644 --- a/benchmarks/mm/bmark.mk +++ b/benchmarks/mm/bmark.mk @@ -14,7 +14,6 @@ mm_c_src = \ syscalls.c \ mm_riscv_src = \ - hwacha.S \ crt.S \ mm_c_objs = $(patsubst %.c, %.o, $(mm_c_src)) diff --git a/benchmarks/mm/common.h b/benchmarks/mm/common.h index c48cc57..01b9f3f 100644 --- a/benchmarks/mm/common.h +++ b/benchmarks/mm/common.h @@ -19,7 +19,6 @@ typedef double t; #define alloca_aligned(s, a) ((void*)(((uintptr_t)alloca((s)+(a)-1)+(a)-1)&~((a)-1))) #include "rb.h" -#include "hwacha.h" #ifdef __cplusplus extern "C" { diff --git a/benchmarks/mm/hwacha.S b/benchmarks/mm/hwacha.S deleted file mode 100644 index e5a67b4..0000000 --- a/benchmarks/mm/hwacha.S +++ /dev/null @@ -1,94 +0,0 @@ -# See LICENSE for license details. - - .text - .align 2 - - .globl hwacha_mm_0 -hwacha_mm_0: - fmadd.d f0,f19,f20,f0 - stop - - .globl hwacha_mm_1 -hwacha_mm_1: - fmadd.d f1,f18,f20,f1 - stop - - .globl hwacha_mm_2 -hwacha_mm_2: - fmadd.d f2,f19,f20,f2 - stop - - .globl hwacha_mm_3 -hwacha_mm_3: - fmadd.d f3,f18,f20,f3 - stop - - .globl hwacha_mm_4 -hwacha_mm_4: - fmadd.d f4,f19,f20,f4 - stop - - .globl hwacha_mm_5 -hwacha_mm_5: - fmadd.d f5,f18,f20,f5 - stop - - .globl hwacha_mm_6 -hwacha_mm_6: - fmadd.d f6,f19,f20,f6 - stop - - .globl hwacha_mm_7 -hwacha_mm_7: - fmadd.d f7,f18,f20,f7 - stop - - .globl hwacha_mm_8 -hwacha_mm_8: - fmadd.d f8,f19,f20,f8 - stop - - .globl hwacha_mm_9 -hwacha_mm_9: - fmadd.d f9,f18,f20,f9 - stop - - .globl hwacha_mm_10 -hwacha_mm_10: - fmadd.d f10,f19,f20,f10 - stop - - .globl hwacha_mm_11 -hwacha_mm_11: - fmadd.d f11,f18,f20,f11 - stop - - .globl hwacha_mm_12 -hwacha_mm_12: - fmadd.d f12,f19,f20,f12 - stop - - .globl hwacha_mm_13 -hwacha_mm_13: - fmadd.d f13,f18,f20,f13 - stop - - .globl hwacha_mm_14 -hwacha_mm_14: - fmadd.d f14,f19,f20,f14 - stop - - .globl hwacha_mm_15 -hwacha_mm_15: - fmadd.d f15,f18,f20,f15 - stop - - .globl hwacha_mm_16 -hwacha_mm_16: - fmadd.d f16,f19,f20,f16 - stop - - .globl hwacha_mm_17 -hwacha_mm_17: - fmadd.d f17,f18,f20,f17 - stop diff --git a/benchmarks/mm/hwacha.h b/benchmarks/mm/hwacha.h deleted file mode 100644 index 42abc87..0000000 --- a/benchmarks/mm/hwacha.h +++ /dev/null @@ -1,140 +0,0 @@ -// See LICENSE for license details. - -static const int HCBM = 18; -static const int HCBN = 80; -static const int HCBK = 16; - -static const int HRBM = 18; -static const int HRBN = 80; -static const int HRBK = 1; - -extern void hwacha_mm_0(); -extern void hwacha_mm_1(); -extern void hwacha_mm_2(); -extern void hwacha_mm_3(); -extern void hwacha_mm_4(); -extern void hwacha_mm_5(); -extern void hwacha_mm_6(); -extern void hwacha_mm_7(); -extern void hwacha_mm_8(); -extern void hwacha_mm_9(); -extern void hwacha_mm_10(); -extern void hwacha_mm_11(); -extern void hwacha_mm_12(); -extern void hwacha_mm_13(); -extern void hwacha_mm_14(); -extern void hwacha_mm_15(); -extern void hwacha_mm_16(); -extern void hwacha_mm_17(); - -static inline void nloop(int s, int e, t* a, size_t lda, t* b, size_t ldb, t* c, size_t ldc) -{ - asm volatile ("vfmsv.d vf19, %[ptr]" : : [ptr]"r"(a[0*lda])); - asm volatile ("vfld vf20, %[ptr]" : : [ptr]"r"(b) : ); - if (s) asm volatile ("vfld vf0, %[ptr]" : : [ptr]"r"(&c[ldc*0]) : ); - asm volatile ("vf 0(%[vf_ptr])" : : [vf_ptr]"r"(&hwacha_mm_0) : ); - if (e) asm volatile ("vfsd vf0, %[ptr]" : : [ptr]"r"(&c[ldc*0]) : ); - - asm volatile ("vfmsv.d vf18, %[ptr]" : : [ptr]"r"(a[1*lda])); - if (s) asm volatile ("vfld vf1, %[ptr]" : : [ptr]"r"(&c[ldc*1]) : ); - asm volatile ("vf 0(%[vf_ptr])" : : [vf_ptr]"r"(&hwacha_mm_1) : ); - if (e) asm volatile ("vfsd vf1, %[ptr]" : : [ptr]"r"(&c[ldc*1]) : ); - - asm volatile ("vfmsv.d vf19, %[ptr]" : : [ptr]"r"(a[2*lda])); - if (s) asm volatile ("vfld vf2, %[ptr]" : : [ptr]"r"(&c[ldc*2]) : ); - asm volatile ("vf 0(%[vf_ptr])" : : [vf_ptr]"r"(&hwacha_mm_2) : ); - if (e) asm volatile ("vfsd vf2, %[ptr]" : : [ptr]"r"(&c[ldc*2]) : ); - - asm volatile ("vfmsv.d vf18, %[ptr]" : : [ptr]"r"(a[3*lda])); - if (s) asm volatile ("vfld vf3, %[ptr]" : : [ptr]"r"(&c[ldc*3]) : ); - asm volatile ("vf 0(%[vf_ptr])" : : [vf_ptr]"r"(&hwacha_mm_3) : ); - if (e) asm volatile ("vfsd vf3, %[ptr]" : : [ptr]"r"(&c[ldc*3]) : ); - - asm volatile ("vfmsv.d vf19, %[ptr]" : : [ptr]"r"(a[4*lda])); - if (s) asm volatile ("vfld vf4, %[ptr]" : : [ptr]"r"(&c[ldc*4]) : ); - asm volatile ("vf 0(%[vf_ptr])" : : [vf_ptr]"r"(&hwacha_mm_4) : ); - if (e) asm volatile ("vfsd vf4, %[ptr]" : : [ptr]"r"(&c[ldc*4]) : ); - - asm volatile ("vfmsv.d vf18, %[ptr]" : : [ptr]"r"(a[5*lda])); - if (s) asm volatile ("vfld vf5, %[ptr]" : : [ptr]"r"(&c[ldc*5]) : ); - asm volatile ("vf 0(%[vf_ptr])" : : [vf_ptr]"r"(&hwacha_mm_5) : ); - if (e) asm volatile ("vfsd vf5, %[ptr]" : : [ptr]"r"(&c[ldc*5]) : ); - - asm volatile ("vfmsv.d vf19, %[ptr]" : : [ptr]"r"(a[6*lda])); - if (s) asm volatile ("vfld vf6, %[ptr]" : : [ptr]"r"(&c[ldc*6]) : ); - asm volatile ("vf 0(%[vf_ptr])" : : [vf_ptr]"r"(&hwacha_mm_6) : ); - if (e) asm volatile ("vfsd vf6, %[ptr]" : : [ptr]"r"(&c[ldc*6]) : ); - - asm volatile ("vfmsv.d vf18, %[ptr]" : : [ptr]"r"(a[7*lda])); - if (s) asm volatile ("vfld vf7, %[ptr]" : : [ptr]"r"(&c[ldc*7]) : ); - asm volatile ("vf 0(%[vf_ptr])" : : [vf_ptr]"r"(&hwacha_mm_7) : ); - if (e) asm volatile ("vfsd vf7, %[ptr]" : : [ptr]"r"(&c[ldc*7]) : ); - - asm volatile ("vfmsv.d vf19, %[ptr]" : : [ptr]"r"(a[8*lda])); - if (s) asm volatile ("vfld vf8, %[ptr]" : : [ptr]"r"(&c[ldc*8]) : ); - asm volatile ("vf 0(%[vf_ptr])" : : [vf_ptr]"r"(&hwacha_mm_8) : ); - if (e) asm volatile ("vfsd vf8, %[ptr]" : : [ptr]"r"(&c[ldc*8]) : ); - - asm volatile ("vfmsv.d vf18, %[ptr]" : : [ptr]"r"(a[9*lda])); - if (s) asm volatile ("vfld vf9, %[ptr]" : : [ptr]"r"(&c[ldc*9]) : ); - asm volatile ("vf 0(%[vf_ptr])" : : [vf_ptr]"r"(&hwacha_mm_9) : ); - if (e) asm volatile ("vfsd vf9, %[ptr]" : : [ptr]"r"(&c[ldc*9]) : ); - - asm volatile ("vfmsv.d vf19, %[ptr]" : : [ptr]"r"(a[10*lda])); - if (s) asm volatile ("vfld vf10, %[ptr]" : : [ptr]"r"(&c[ldc*10]) : ); - asm volatile ("vf 0(%[vf_ptr])" : : [vf_ptr]"r"(&hwacha_mm_10) : ); - if (e) asm volatile ("vfsd vf10, %[ptr]" : : [ptr]"r"(&c[ldc*10]) : ); - - asm volatile ("vfmsv.d vf18, %[ptr]" : : [ptr]"r"(a[11*lda])); - if (s) asm volatile ("vfld vf11, %[ptr]" : : [ptr]"r"(&c[ldc*11]) : ); - asm volatile ("vf 0(%[vf_ptr])" : : [vf_ptr]"r"(&hwacha_mm_11) : ); - if (e) asm volatile ("vfsd vf11, %[ptr]" : : [ptr]"r"(&c[ldc*11]) : ); - - asm volatile ("vfmsv.d vf19, %[ptr]" : : [ptr]"r"(a[12*lda])); - if (s) asm volatile ("vfld vf12, %[ptr]" : : [ptr]"r"(&c[ldc*12]) : ); - asm volatile ("vf 0(%[vf_ptr])" : : [vf_ptr]"r"(&hwacha_mm_12) : ); - if (e) asm volatile ("vfsd vf12, %[ptr]" : : [ptr]"r"(&c[ldc*12]) : ); - - asm volatile ("vfmsv.d vf18, %[ptr]" : : [ptr]"r"(a[13*lda])); - if (s) asm volatile ("vfld vf13, %[ptr]" : : [ptr]"r"(&c[ldc*13]) : ); - asm volatile ("vf 0(%[vf_ptr])" : : [vf_ptr]"r"(&hwacha_mm_13) : ); - if (e) asm volatile ("vfsd vf13, %[ptr]" : : [ptr]"r"(&c[ldc*13]) : ); - - asm volatile ("vfmsv.d vf19, %[ptr]" : : [ptr]"r"(a[14*lda])); - if (s) asm volatile ("vfld vf14, %[ptr]" : : [ptr]"r"(&c[ldc*14]) : ); - asm volatile ("vf 0(%[vf_ptr])" : : [vf_ptr]"r"(&hwacha_mm_14) : ); - if (e) asm volatile ("vfsd vf14, %[ptr]" : : [ptr]"r"(&c[ldc*14]) : ); - - asm volatile ("vfmsv.d vf18, %[ptr]" : : [ptr]"r"(a[15*lda])); - if (s) asm volatile ("vfld vf15, %[ptr]" : : [ptr]"r"(&c[ldc*15]) : ); - asm volatile ("vf 0(%[vf_ptr])" : : [vf_ptr]"r"(&hwacha_mm_15) : ); - if (e) asm volatile ("vfsd vf15, %[ptr]" : : [ptr]"r"(&c[ldc*15]) : ); - - asm volatile ("vfmsv.d vf19, %[ptr]" : : [ptr]"r"(a[16*lda])); - if (s) asm volatile ("vfld vf16, %[ptr]" : : [ptr]"r"(&c[ldc*16]) : ); - asm volatile ("vf 0(%[vf_ptr])" : : [vf_ptr]"r"(&hwacha_mm_16) : ); - if (e) asm volatile ("vfsd vf16, %[ptr]" : : [ptr]"r"(&c[ldc*16]) : ); - - asm volatile ("vfmsv.d vf18, %[ptr]" : : [ptr]"r"(a[17*lda])); - if (s) asm volatile ("vfld vf17, %[ptr]" : : [ptr]"r"(&c[ldc*17]) : ); - asm volatile ("vf 0(%[vf_ptr])" : : [vf_ptr]"r"(&hwacha_mm_17) : ); - if (e) asm volatile ("vfsd vf17, %[ptr]" : : [ptr]"r"(&c[ldc*17]) : ); -} - -static inline void mm_rb_hwacha(size_t m, size_t n, size_t p, - t* a, size_t lda, t* b, size_t ldb, t* c, size_t ldc) -{ - int vl; - asm volatile ("vsetcfg 4, 21" : : : ); - asm volatile ("vsetvl %[gvl], %[nvl]" : [gvl]"=r"(vl) : [nvl]"r"(n) : ); - - size_t mb = m/HRBM*HRBM, nk=p/HRBK*HRBK; - - for (size_t i=0; i<mb; i+=HRBM) - { - for (size_t k=0; k<nk; k+=HRBK) - { - nloop(k==0, k==(p-1), a+i*lda+k, lda, b+k*ldb, ldb, c+i*ldc, ldc); - } - } -} diff --git a/benchmarks/mm/mm_main.c b/benchmarks/mm/mm_main.c index 1f4e28b..8b6a093 100644 --- a/benchmarks/mm/mm_main.c +++ b/benchmarks/mm/mm_main.c @@ -12,15 +12,9 @@ void thread_entry(int cid, int nc) int m, n, p; uint64_t s = 0xdeadbeefU; - if (have_vec) { - m = HCBM; - n = HCBN; - p = HCBK; - } else { - m = CBM; - n = CBN; - p = CBK; - } + m = CBM; + n = CBN; + p = CBK; t a[m*p]; t b[p*n]; @@ -35,24 +29,13 @@ void thread_entry(int cid, int nc) memset(c, 0, m*n*sizeof(c[0])); size_t instret, cycles; - if (have_vec) { - for (int i = 0; i < R; i++) - { - instret = -rdinstret(); - cycles = -rdcycle(); - mm_rb_hwacha(m, n, p, a, p, b, n, c, n); - instret += rdinstret(); - cycles += rdcycle(); - } - } else { - for (int i = 0; i < R; i++) - { - instret = -rdinstret(); - cycles = -rdcycle(); - mm(m, n, p, a, p, b, n, c, n); - instret += rdinstret(); - cycles += rdcycle(); - } + for (int i = 0; i < R; i++) + { + instret = -rdinstret(); + cycles = -rdcycle(); + mm(m, n, p, a, p, b, n, c, n); + instret += rdinstret(); + cycles += rdcycle(); } asm volatile("fence"); diff --git a/benchmarks/vec-cmplxmult/bmark.mk b/benchmarks/vec-cmplxmult/bmark.mk deleted file mode 100644 index ae93506..0000000 --- a/benchmarks/vec-cmplxmult/bmark.mk +++ /dev/null @@ -1,30 +0,0 @@ -#======================================================================= -# UCB CS250 Makefile fragment for benchmarks -#----------------------------------------------------------------------- -# -# Each benchmark directory should have its own fragment which -# essentially lists what the source files are and how to link them -# into an riscv and/or host executable. All variables should include -# the benchmark name as a prefix so that they are unique. -# - -vec_cmplxmult_c_src = \ - vec_cmplxmult_main.c \ - -vec_cmplxmult_riscv_src = \ - crt.S \ - vec_cmplxmult_asm.S - -vec_cmplxmult_c_objs = $(patsubst %.c, %.o, $(vec_cmplxmult_c_src)) -vec_cmplxmult_riscv_objs = $(patsubst %.S, %.o, $(vec_cmplxmult_riscv_src)) - -vec_cmplxmult_host_bin = vec-cmplxmult.host -$(vec_cmplxmult_host_bin) : $(vec_cmplxmult_c_src) - $(HOST_COMP) $^ -o $(vec_cmplxmult_host_bin) - -vec_cmplxmult_riscv_bin = vec-cmplxmult.riscv -$(vec_cmplxmult_riscv_bin) : $(vec_cmplxmult_c_objs) $(vec_cmplxmult_riscv_objs) - $(RISCV_LINK) $(RISCV_LINK_SYSCALL) $(vec_cmplxmult_c_objs) $(vec_cmplxmult_riscv_objs) -o $(vec_cmplxmult_riscv_bin) - -junk += $(vec_cmplxmult_c_objs) $(vec_cmplxmult_riscv_objs) \ - $(vec_cmplxmult_host_bin) $(vec_cmplxmult_riscv_bin) diff --git a/benchmarks/vec-cmplxmult/cmplxmult_gendata.pl b/benchmarks/vec-cmplxmult/cmplxmult_gendata.pl deleted file mode 100755 index 07881b8..0000000 --- a/benchmarks/vec-cmplxmult/cmplxmult_gendata.pl +++ /dev/null @@ -1,117 +0,0 @@ -#!/usr/bin/perl -w -#========================================================================== -# vvadd_gendata.pl -# -# Author : Christopher Batten (cbatten@mit.edu) -# Date : April 29, 2005 -# -(our $usageMsg = <<'ENDMSG') =~ s/^\#//gm; -# -# Simple script which creates an input data set and the reference data -# for the vvadd benchmark. -# -ENDMSG - -use strict "vars"; -use warnings; -no warnings("once"); -use Getopt::Long; - -#-------------------------------------------------------------------------- -# Command line processing -#-------------------------------------------------------------------------- - -our %opts; - -sub usage() -{ - - print "\n"; - print " Usage: vvadd_gendata.pl [options] \n"; - print "\n"; - print " Options:\n"; - print " --help print this message\n"; - print " --size size of input data [1000]\n"; - print " --seed random seed [1]\n"; - print "$usageMsg"; - - exit(); -} - -sub processCommandLine() -{ - - $opts{"help"} = 0; - $opts{"size"} = 1000; - $opts{"seed"} = 1; - Getopt::Long::GetOptions( \%opts, 'help|?', 'size:i', 'seed:i' ) or usage(); - $opts{"help"} and usage(); - -} - -#-------------------------------------------------------------------------- -# Helper Functions -#-------------------------------------------------------------------------- - -sub printArray -{ - my $arrayName = $_[0]; - my $arrayRefReal = $_[1]; - my $arrayRefImag = $_[2]; - - my $numCols = 20; - my $arrayLen = scalar(@{$arrayRefReal}); - - print "struct Complex ".$arrayName."[DATA_SIZE] = \n"; - print "{\n"; - - print " "; - for ( my $i = 0; $i < $arrayLen; $i++ ) { - print sprintf("{%3.2f, %3.2f}",$arrayRefReal->[$i], $arrayRefImag->[$i]); - if ( $i != $arrayLen-1 ) { - print ",\n "; - } - } - - print "\n};\n\n"; -} - -#-------------------------------------------------------------------------- -# Main -#-------------------------------------------------------------------------- - -sub main() -{ - - processCommandLine(); - srand($opts{"seed"}); - - my @values_real1; - my @values_imag1; - my @values_real2; - my @values_imag2; - my @product_real; - my @product_imag; - for ( my $i = 0; $i < $opts{"size"}; $i++ ) { - my $value_real1 = (rand(9.0)); - my $value_imag1 = (rand(9.0)); - my $value_real2 = (rand(9.0)); - my $value_imag2 = (rand(9.0)); - push( @values_real1, $value_real1 ); - push( @values_imag1, $value_imag1 ); - push( @values_real2, $value_real2 ); - push( @values_imag2, $value_imag2 ); - push( @product_real, ($value_real1 * $value_real2) - ($value_imag1 * $value_imag2)); - push( @product_imag, ($value_imag1 * $value_real2) + ($value_real1 * $value_imag2)); - } - - - print "\n\#define DATA_SIZE ".$opts{"size"}." \n\n"; - printArray( "input1_data", \@values_real1, \@values_imag1 ); - printArray( "input2_data", \@values_real2, \@values_imag2 ); - printArray( "verify_data", \@product_real, \@product_imag ); - -} - -main(); - diff --git a/benchmarks/vec-cmplxmult/dataset.h b/benchmarks/vec-cmplxmult/dataset.h deleted file mode 100644 index 7fb3856..0000000 --- a/benchmarks/vec-cmplxmult/dataset.h +++ /dev/null @@ -1,1553 +0,0 @@ -// See LICENSE for license details. - - -#define DATA_SIZE 512 - -struct Complex input1_data[DATA_SIZE] = -{ - {0.37, 4.09}, - {5.09, 0.02}, - {6.75, 3.30}, - {1.19, 0.58}, - {5.26, 1.95}, - {5.60, 1.90}, - {8.39, 3.06}, - {3.54, 8.09}, - {8.66, 0.11}, - {1.05, 6.76}, - {3.84, 4.51}, - {5.94, 6.32}, - {2.88, 8.84}, - {7.88, 6.27}, - {4.27, 2.45}, - {4.86, 5.83}, - {1.83, 0.80}, - {6.84, 6.04}, - {4.61, 4.97}, - {1.76, 5.34}, - {2.41, 8.58}, - {3.04, 5.26}, - {8.13, 3.32}, - {8.23, 2.96}, - {8.41, 5.34}, - {1.77, 4.90}, - {5.11, 8.82}, - {5.85, 7.34}, - {1.63, 1.88}, - {7.74, 5.67}, - {2.60, 6.35}, - {1.28, 2.28}, - {7.98, 3.87}, - {5.20, 4.85}, - {6.86, 0.04}, - {4.31, 0.90}, - {3.63, 6.25}, - {4.00, 2.67}, - {6.09, 5.59}, - {2.02, 3.17}, - {2.60, 5.83}, - {5.54, 4.75}, - {3.51, 7.17}, - {4.10, 6.49}, - {3.31, 6.72}, - {5.26, 8.91}, - {8.88, 7.69}, - {3.12, 4.79}, - {5.04, 4.15}, - {6.99, 3.23}, - {7.02, 6.17}, - {1.29, 4.02}, - {1.13, 6.70}, - {8.41, 4.32}, - {4.98, 8.34}, - {5.85, 3.22}, - {2.59, 6.00}, - {0.45, 5.03}, - {0.86, 7.69}, - {5.29, 0.55}, - {3.44, 3.57}, - {7.28, 0.16}, - {7.38, 2.62}, - {4.06, 4.83}, - {8.70, 8.26}, - {7.29, 8.86}, - {4.84, 0.49}, - {6.32, 8.57}, - {5.12, 1.36}, - {0.20, 5.78}, - {6.00, 6.58}, - {3.91, 6.56}, - {0.02, 3.56}, - {2.23, 8.21}, - {3.92, 7.34}, - {7.83, 2.39}, - {3.73, 2.13}, - {4.94, 1.63}, - {8.00, 4.54}, - {2.57, 1.56}, - {4.50, 3.13}, - {8.08, 0.62}, - {6.59, 5.93}, - {2.26, 1.10}, - {5.01, 7.47}, - {4.76, 3.91}, - {2.90, 6.79}, - {2.59, 5.65}, - {2.75, 0.10}, - {6.61, 0.95}, - {3.30, 7.37}, - {2.65, 3.66}, - {5.89, 7.72}, - {0.82, 0.54}, - {0.95, 6.02}, - {3.44, 1.09}, - {7.44, 3.72}, - {3.22, 0.11}, - {0.49, 8.70}, - {8.61, 5.60}, - {4.81, 8.30}, - {4.70, 5.83}, - {5.34, 7.99}, - {1.56, 0.33}, - {1.09, 4.96}, - {6.83, 8.74}, - {8.57, 3.91}, - {1.17, 2.73}, - {7.64, 7.75}, - {2.30, 4.31}, - {3.69, 6.08}, - {3.60, 8.92}, - {6.79, 4.06}, - {1.54, 1.40}, - {6.55, 4.08}, - {7.01, 4.59}, - {6.79, 3.84}, - {1.82, 4.35}, - {1.39, 3.06}, - {3.22, 0.46}, - {8.31, 5.42}, - {4.47, 8.73}, - {4.66, 7.93}, - {2.49, 7.84}, - {1.03, 5.44}, - {8.17, 8.00}, - {2.14, 3.65}, - {7.07, 6.72}, - {3.22, 2.48}, - {7.38, 2.04}, - {2.52, 8.50}, - {4.13, 6.39}, - {6.40, 0.49}, - {0.38, 0.48}, - {3.40, 0.37}, - {6.31, 3.75}, - {4.33, 1.98}, - {4.50, 6.94}, - {0.45, 4.35}, - {7.87, 6.53}, - {8.94, 1.68}, - {6.50, 0.01}, - {2.10, 2.23}, - {6.29, 3.27}, - {3.14, 2.11}, - {3.16, 0.37}, - {5.17, 1.76}, - {6.75, 6.70}, - {7.42, 3.21}, - {1.53, 1.27}, - {6.08, 2.61}, - {1.82, 2.88}, - {7.69, 1.07}, - {3.56, 0.64}, - {7.70, 3.50}, - {1.42, 0.32}, - {6.90, 6.29}, - {1.76, 6.10}, - {1.97, 7.96}, - {1.60, 6.73}, - {6.30, 4.61}, - {6.37, 3.97}, - {0.76, 6.60}, - {8.05, 6.33}, - {3.36, 0.78}, - {0.13, 1.94}, - {0.75, 5.87}, - {7.16, 3.87}, - {5.79, 0.87}, - {7.52, 5.94}, - {4.16, 4.72}, - {5.06, 5.63}, - {0.09, 6.44}, - {8.15, 0.50}, - {3.67, 2.75}, - {5.04, 8.12}, - {4.62, 6.23}, - {2.73, 4.48}, - {3.85, 8.48}, - {3.24, 4.33}, - {6.17, 7.41}, - {1.67, 6.13}, - {0.97, 1.01}, - {3.49, 1.67}, - {4.38, 6.48}, - {6.30, 6.75}, - {6.94, 7.33}, - {0.73, 2.94}, - {3.67, 0.31}, - {0.27, 8.43}, - {7.84, 0.80}, - {1.34, 3.06}, - {1.33, 4.99}, - {7.61, 8.60}, - {1.27, 3.57}, - {7.36, 2.25}, - {5.07, 7.50}, - {5.55, 3.55}, - {7.32, 4.24}, - {1.44, 3.03}, - {7.24, 2.25}, - {4.91, 4.89}, - {4.13, 5.73}, - {7.86, 5.24}, - {7.26, 6.05}, - {0.94, 3.77}, - {2.29, 8.29}, - {1.23, 6.71}, - {5.27, 1.25}, - {3.74, 8.36}, - {6.37, 4.12}, - {3.41, 1.66}, - {8.80, 1.77}, - {8.54, 3.75}, - {1.49, 8.98}, - {0.95, 6.63}, - {7.17, 7.44}, - {2.74, 0.46}, - {5.72, 4.84}, - {1.07, 2.65}, - {4.79, 0.99}, - {0.34, 7.04}, - {6.67, 3.38}, - {6.91, 8.08}, - {0.52, 0.40}, - {7.07, 7.62}, - {7.54, 0.89}, - {0.61, 4.00}, - {8.98, 1.49}, - {1.55, 0.26}, - {5.60, 2.92}, - {7.44, 3.39}, - {6.25, 8.09}, - {2.13, 1.52}, - {6.71, 1.75}, - {1.12, 8.43}, - {8.49, 7.04}, - {3.34, 5.58}, - {2.43, 8.41}, - {6.88, 7.45}, - {8.25, 8.90}, - {0.01, 5.85}, - {8.97, 0.01}, - {5.05, 3.60}, - {8.76, 7.13}, - {4.59, 8.87}, - {8.74, 5.41}, - {5.22, 6.15}, - {2.26, 8.14}, - {1.16, 8.97}, - {6.45, 5.61}, - {6.12, 8.07}, - {2.17, 7.39}, - {7.15, 2.04}, - {0.01, 2.37}, - {8.89, 2.15}, - {6.80, 5.50}, - {1.83, 2.15}, - {1.62, 7.97}, - {1.49, 0.97}, - {8.78, 7.11}, - {5.04, 0.21}, - {3.81, 8.02}, - {5.10, 0.48}, - {4.44, 1.81}, - {6.72, 3.68}, - {3.36, 5.82}, - {5.99, 0.74}, - {4.81, 0.47}, - {8.19, 2.02}, - {0.30, 6.63}, - {3.30, 1.51}, - {7.04, 4.79}, - {6.35, 1.52}, - {8.53, 0.92}, - {0.45, 0.39}, - {4.28, 5.90}, - {6.12, 5.64}, - {8.59, 7.41}, - {4.30, 5.78}, - {6.43, 2.21}, - {4.77, 7.90}, - {0.70, 5.41}, - {8.18, 6.98}, - {1.29, 2.11}, - {2.16, 4.09}, - {3.29, 1.89}, - {0.49, 8.12}, - {3.96, 5.91}, - {2.84, 5.36}, - {6.28, 4.19}, - {6.54, 0.63}, - {2.55, 0.29}, - {5.61, 0.23}, - {8.02, 4.40}, - {2.62, 3.69}, - {6.54, 0.25}, - {4.94, 4.86}, - {5.81, 2.73}, - {2.61, 6.62}, - {1.47, 4.98}, - {4.43, 0.97}, - {1.05, 0.44}, - {7.74, 1.30}, - {2.55, 6.53}, - {8.23, 4.24}, - {1.76, 3.09}, - {7.05, 6.10}, - {6.56, 3.03}, - {3.88, 4.19}, - {6.85, 5.32}, - {2.79, 3.66}, - {3.19, 6.72}, - {6.30, 4.73}, - {4.39, 2.31}, - {0.91, 4.92}, - {2.42, 3.31}, - {0.68, 0.96}, - {8.90, 3.57}, - {8.19, 3.87}, - {0.83, 1.18}, - {2.50, 8.93}, - {3.17, 8.93}, - {7.78, 4.05}, - {0.91, 5.55}, - {5.12, 6.37}, - {3.34, 7.63}, - {4.16, 2.85}, - {1.64, 6.72}, - {1.44, 4.71}, - {0.20, 1.04}, - {5.81, 2.04}, - {7.02, 1.80}, - {7.71, 6.69}, - {8.86, 6.35}, - {5.09, 7.07}, - {2.28, 8.67}, - {1.39, 2.65}, - {2.29, 1.30}, - {8.10, 7.17}, - {2.94, 6.11}, - {2.78, 7.15}, - {1.44, 5.74}, - {7.56, 2.18}, - {4.96, 6.24}, - {0.74, 5.42}, - {2.92, 3.59}, - {0.93, 0.66}, - {8.71, 8.81}, - {1.60, 5.03}, - {3.36, 4.56}, - {5.40, 5.87}, - {3.40, 2.89}, - {5.33, 3.61}, - {3.97, 7.61}, - {5.35, 8.41}, - {8.18, 4.04}, - {3.40, 0.46}, - {7.04, 8.11}, - {4.47, 6.74}, - {7.27, 0.06}, - {4.94, 2.57}, - {0.27, 4.06}, - {5.68, 6.95}, - {5.53, 4.82}, - {1.05, 4.34}, - {8.15, 3.91}, - {5.47, 0.38}, - {1.53, 7.80}, - {4.57, 3.74}, - {3.89, 4.86}, - {1.33, 0.95}, - {1.01, 5.36}, - {7.52, 3.15}, - {8.55, 2.59}, - {4.40, 1.39}, - {7.19, 4.86}, - {6.93, 7.86}, - {4.37, 5.88}, - {6.50, 6.74}, - {7.40, 3.07}, - {0.00, 1.86}, - {2.50, 4.56}, - {6.13, 8.66}, - {5.00, 5.65}, - {4.66, 8.75}, - {4.56, 3.70}, - {2.22, 0.57}, - {3.55, 3.57}, - {1.93, 5.58}, - {4.73, 5.02}, - {1.56, 0.61}, - {5.59, 4.62}, - {4.82, 0.06}, - {1.44, 7.95}, - {7.30, 6.89}, - {0.68, 4.56}, - {1.51, 7.49}, - {7.69, 5.75}, - {2.92, 0.66}, - {0.47, 0.54}, - {0.10, 8.37}, - {6.58, 8.66}, - {2.59, 7.19}, - {0.83, 7.69}, - {8.22, 5.41}, - {7.75, 2.10}, - {6.71, 1.62}, - {5.54, 6.22}, - {8.24, 4.46}, - {2.60, 2.11}, - {1.16, 7.03}, - {4.95, 0.20}, - {8.84, 6.68}, - {5.61, 3.86}, - {5.64, 5.44}, - {3.48, 3.11}, - {4.26, 2.86}, - {2.16, 7.76}, - {7.79, 4.61}, - {3.21, 0.63}, - {7.44, 7.69}, - {3.52, 4.42}, - {0.35, 2.73}, - {5.56, 7.33}, - {1.86, 3.50}, - {7.06, 8.72}, - {7.34, 0.44}, - {6.00, 2.27}, - {0.85, 6.68}, - {3.80, 1.59}, - {6.08, 4.72}, - {3.37, 8.58}, - {0.58, 4.79}, - {6.83, 0.21}, - {4.51, 7.63}, - {3.03, 7.70}, - {2.14, 0.22}, - {4.22, 2.87}, - {5.09, 5.97}, - {4.05, 2.53}, - {1.23, 2.65}, - {3.45, 6.61}, - {2.42, 4.24}, - {8.18, 6.07}, - {8.58, 3.96}, - {3.58, 1.40}, - {2.09, 8.55}, - {0.32, 4.01}, - {3.99, 7.07}, - {3.50, 8.50}, - {5.60, 3.30}, - {5.52, 5.45}, - {8.59, 3.07}, - {4.16, 8.21}, - {7.32, 3.92}, - {6.06, 0.71}, - {2.82, 8.56}, - {0.50, 0.24}, - {6.79, 1.81}, - {7.92, 7.91}, - {5.16, 7.92}, - {6.50, 1.29}, - {5.80, 7.32}, - {8.72, 4.75}, - {7.57, 7.18}, - {5.68, 2.65}, - {7.16, 2.49}, - {7.98, 3.72}, - {6.28, 3.48}, - {0.84, 2.91}, - {7.07, 4.85}, - {5.24, 8.65}, - {8.32, 0.44}, - {5.88, 8.09}, - {2.36, 4.46}, - {5.49, 7.25}, - {4.86, 3.89}, - {5.05, 1.73}, - {0.18, 7.01}, - {8.80, 3.24}, - {3.48, 6.73}, - {5.98, 6.75}, - {1.91, 3.68}, - {8.17, 3.98}, - {6.64, 0.88}, - {0.23, 3.24}, - {7.19, 6.06}, - {4.07, 7.93}, - {6.16, 2.71}, - {7.35, 8.32}, - {5.52, 7.36}, - {1.05, 2.20}, - {2.54, 8.26}, - {2.61, 5.89}, - {5.81, 3.66}, - {8.40, 0.98}, - {6.17, 4.18}, - {7.89, 0.78}, - {3.71, 4.02}, - {5.98, 4.86}, - {7.06, 0.26}, - {6.38, 6.63}, - {4.72, 5.50}, - {0.34, 6.06}, - {0.39, 6.90}, - {1.12, 3.69}, - {7.34, 1.68}, - {1.93, 5.12}, - {5.16, 8.99}, - {8.62, 4.11}, - {5.87, 5.10} -}; - -struct Complex input2_data[DATA_SIZE] = -{ - {7.51, 3.02}, - {1.69, 8.91}, - {3.16, 5.16}, - {8.56, 1.38}, - {7.26, 1.26}, - {0.06, 5.16}, - {8.02, 5.34}, - {6.25, 2.06}, - {1.00, 7.96}, - {2.67, 5.82}, - {2.83, 3.93}, - {6.97, 7.32}, - {6.12, 1.36}, - {3.40, 5.08}, - {8.45, 2.33}, - {5.13, 4.59}, - {2.53, 6.34}, - {5.46, 3.38}, - {5.93, 8.44}, - {0.74, 5.13}, - {2.06, 7.22}, - {8.51, 5.79}, - {2.18, 4.41}, - {7.45, 2.82}, - {8.88, 3.50}, - {8.65, 5.85}, - {3.16, 8.99}, - {5.92, 0.71}, - {1.01, 8.99}, - {0.59, 7.63}, - {3.15, 8.98}, - {8.16, 6.45}, - {2.38, 3.74}, - {8.83, 6.31}, - {2.17, 4.46}, - {4.50, 7.79}, - {2.00, 3.75}, - {6.50, 2.58}, - {2.86, 0.71}, - {8.45, 4.87}, - {1.08, 1.53}, - {5.46, 2.61}, - {3.16, 7.22}, - {2.51, 6.84}, - {3.23, 0.83}, - {0.57, 2.44}, - {3.63, 7.10}, - {4.66, 2.01}, - {8.18, 2.18}, - {2.30, 2.99}, - {5.39, 6.67}, - {0.31, 2.81}, - {8.48, 5.02}, - {7.20, 5.02}, - {3.89, 7.17}, - {8.58, 8.03}, - {0.18, 4.64}, - {0.78, 7.84}, - {3.98, 3.97}, - {5.54, 6.12}, - {2.53, 0.09}, - {8.75, 1.54}, - {3.11, 3.43}, - {4.62, 1.67}, - {3.13, 4.86}, - {7.95, 8.00}, - {8.53, 5.52}, - {3.21, 4.32}, - {8.03, 0.07}, - {5.12, 3.02}, - {3.81, 0.86}, - {1.43, 2.53}, - {0.76, 6.20}, - {0.45, 4.30}, - {7.14, 6.57}, - {4.38, 1.15}, - {3.33, 1.93}, - {4.67, 0.06}, - {6.15, 5.37}, - {2.38, 5.80}, - {2.62, 5.40}, - {1.94, 7.66}, - {6.20, 5.58}, - {7.08, 1.19}, - {2.72, 6.01}, - {4.91, 4.40}, - {8.54, 1.13}, - {7.42, 0.13}, - {7.11, 3.64}, - {8.65, 6.34}, - {6.51, 8.69}, - {8.79, 7.88}, - {6.75, 0.78}, - {3.41, 5.95}, - {0.93, 1.38}, - {5.87, 0.88}, - {7.57, 2.13}, - {1.34, 3.82}, - {1.26, 1.95}, - {3.09, 3.26}, - {6.82, 6.44}, - {7.55, 2.70}, - {0.12, 6.15}, - {0.57, 4.45}, - {1.20, 4.84}, - {3.35, 5.79}, - {0.36, 3.74}, - {1.00, 3.95}, - {3.94, 1.83}, - {2.43, 8.90}, - {5.66, 6.48}, - {4.95, 3.05}, - {5.08, 5.70}, - {0.17, 5.83}, - {4.52, 3.85}, - {0.39, 8.91}, - {0.73, 0.11}, - {7.69, 1.28}, - {6.85, 3.52}, - {8.50, 1.54}, - {2.96, 0.95}, - {3.99, 1.09}, - {5.78, 0.74}, - {7.08, 5.41}, - {7.59, 7.85}, - {2.48, 5.50}, - {0.30, 2.11}, - {5.09, 4.74}, - {7.24, 3.98}, - {6.77, 6.78}, - {0.77, 6.54}, - {4.10, 1.81}, - {4.14, 6.83}, - {2.28, 3.58}, - {4.58, 1.27}, - {7.75, 6.74}, - {6.68, 4.31}, - {6.39, 1.62}, - {3.35, 6.23}, - {8.52, 1.56}, - {4.75, 8.24}, - {3.92, 8.68}, - {4.48, 4.19}, - {0.28, 4.70}, - {2.26, 1.09}, - {2.26, 7.02}, - {7.06, 1.45}, - {4.53, 3.96}, - {7.45, 3.63}, - {1.45, 5.70}, - {0.29, 7.05}, - {1.29, 5.73}, - {0.81, 7.68}, - {0.97, 7.35}, - {0.96, 8.60}, - {0.05, 0.15}, - {1.84, 6.27}, - {5.18, 5.39}, - {4.74, 7.43}, - {2.16, 4.17}, - {6.82, 4.81}, - {0.45, 3.86}, - {7.21, 6.55}, - {4.62, 4.93}, - {4.44, 7.20}, - {5.60, 0.20}, - {0.93, 0.54}, - {8.30, 5.93}, - {7.93, 8.77}, - {2.16, 8.70}, - {1.03, 0.56}, - {4.77, 2.73}, - {8.98, 3.69}, - {3.49, 6.57}, - {0.95, 3.93}, - {8.44, 5.34}, - {3.69, 7.18}, - {1.82, 1.60}, - {5.53, 8.97}, - {4.70, 1.43}, - {0.20, 5.51}, - {2.82, 0.13}, - {2.48, 7.18}, - {2.19, 0.00}, - {0.95, 0.87}, - {8.10, 6.66}, - {5.81, 3.92}, - {1.46, 0.34}, - {8.52, 5.46}, - {6.92, 0.24}, - {1.03, 3.98}, - {0.56, 3.10}, - {7.55, 3.29}, - {3.90, 5.76}, - {1.90, 8.93}, - {7.40, 3.05}, - {3.28, 8.78}, - {4.47, 2.40}, - {8.26, 3.14}, - {3.88, 3.78}, - {1.62, 1.95}, - {7.57, 8.14}, - {7.09, 6.58}, - {7.17, 7.39}, - {6.83, 8.82}, - {3.62, 6.04}, - {8.87, 5.12}, - {6.57, 5.97}, - {7.16, 3.48}, - {4.76, 1.56}, - {4.99, 2.85}, - {6.91, 4.30}, - {2.13, 3.60}, - {2.07, 7.26}, - {4.56, 2.43}, - {6.35, 6.28}, - {1.26, 4.76}, - {7.17, 5.62}, - {5.05, 0.79}, - {0.08, 7.82}, - {7.33, 3.59}, - {5.27, 5.83}, - {5.58, 8.50}, - {4.31, 5.31}, - {8.64, 2.60}, - {8.88, 6.69}, - {2.77, 4.71}, - {7.43, 3.89}, - {6.75, 8.39}, - {7.44, 4.16}, - {1.40, 2.46}, - {0.39, 3.07}, - {0.73, 1.43}, - {6.74, 4.00}, - {2.40, 5.69}, - {6.59, 2.47}, - {3.83, 1.67}, - {2.89, 2.63}, - {4.89, 1.41}, - {6.78, 0.80}, - {0.13, 5.67}, - {8.16, 0.29}, - {7.30, 6.71}, - {7.87, 8.25}, - {2.61, 5.00}, - {5.03, 4.78}, - {3.65, 3.62}, - {2.64, 4.87}, - {7.66, 1.09}, - {4.08, 4.70}, - {0.78, 2.02}, - {1.64, 4.78}, - {3.03, 5.87}, - {5.78, 0.87}, - {2.88, 5.13}, - {5.83, 1.14}, - {8.64, 1.73}, - {1.28, 7.18}, - {2.70, 5.16}, - {6.86, 1.27}, - {5.83, 7.68}, - {5.58, 6.35}, - {2.35, 4.33}, - {4.88, 3.36}, - {8.93, 4.92}, - {1.87, 1.08}, - {8.40, 4.19}, - {0.31, 2.64}, - {4.31, 7.93}, - {1.83, 6.71}, - {1.93, 7.98}, - {8.04, 0.02}, - {6.13, 2.90}, - {6.20, 4.38}, - {3.48, 1.60}, - {0.91, 6.38}, - {3.60, 8.25}, - {2.97, 2.18}, - {4.25, 7.17}, - {6.54, 2.27}, - {8.45, 1.36}, - {7.84, 3.00}, - {4.91, 8.46}, - {7.69, 3.58}, - {8.82, 6.81}, - {0.95, 3.82}, - {0.89, 8.67}, - {0.88, 8.32}, - {6.89, 4.77}, - {3.03, 0.82}, - {6.98, 6.18}, - {2.92, 6.80}, - {4.83, 4.46}, - {5.36, 3.51}, - {0.68, 0.34}, - {4.47, 5.76}, - {4.05, 8.57}, - {1.22, 0.73}, - {7.55, 6.52}, - {6.91, 1.13}, - {3.75, 2.24}, - {8.88, 3.26}, - {5.57, 7.83}, - {2.12, 7.58}, - {5.15, 3.02}, - {5.05, 2.37}, - {2.18, 7.29}, - {8.88, 3.06}, - {3.10, 3.70}, - {5.52, 0.51}, - {1.59, 4.38}, - {3.01, 8.95}, - {2.79, 2.15}, - {0.42, 3.03}, - {4.54, 1.21}, - {3.54, 6.51}, - {2.83, 8.50}, - {3.12, 5.67}, - {5.41, 1.88}, - {3.47, 4.72}, - {4.91, 3.21}, - {6.02, 6.07}, - {7.69, 6.49}, - {2.82, 0.77}, - {4.80, 1.90}, - {7.53, 6.64}, - {8.92, 4.08}, - {8.22, 8.78}, - {2.42, 7.18}, - {6.95, 5.57}, - {7.70, 6.55}, - {0.16, 1.49}, - {8.21, 7.48}, - {1.24, 1.69}, - {6.46, 6.05}, - {6.48, 7.98}, - {7.08, 5.93}, - {1.77, 5.59}, - {4.03, 1.56}, - {0.05, 0.65}, - {5.55, 0.72}, - {1.58, 6.17}, - {1.11, 8.72}, - {6.45, 8.09}, - {2.07, 3.36}, - {5.65, 6.50}, - {8.35, 4.98}, - {0.16, 1.58}, - {1.43, 2.93}, - {5.35, 1.67}, - {3.55, 7.75}, - {6.72, 5.17}, - {7.80, 3.15}, - {4.98, 8.02}, - {3.12, 7.97}, - {2.62, 8.84}, - {4.91, 8.91}, - {4.11, 2.99}, - {0.99, 6.46}, - {8.07, 4.00}, - {6.31, 3.55}, - {3.07, 6.34}, - {7.48, 5.88}, - {4.92, 4.37}, - {8.76, 5.04}, - {2.83, 4.57}, - {8.75, 3.10}, - {7.16, 7.07}, - {8.08, 3.80}, - {8.26, 7.85}, - {3.06, 1.46}, - {2.03, 4.34}, - {5.23, 1.04}, - {1.21, 8.69}, - {1.82, 2.10}, - {3.57, 5.43}, - {4.31, 8.50}, - {5.17, 1.09}, - {3.06, 7.31}, - {4.06, 3.26}, - {6.71, 8.20}, - {5.36, 5.16}, - {1.08, 8.77}, - {6.82, 3.20}, - {7.64, 7.66}, - {3.42, 8.21}, - {8.15, 6.94}, - {2.19, 7.88}, - {3.88, 4.35}, - {2.20, 5.82}, - {3.60, 2.96}, - {2.75, 7.97}, - {5.36, 8.76}, - {6.30, 4.62}, - {6.76, 5.07}, - {4.10, 3.30}, - {0.84, 7.09}, - {0.15, 3.45}, - {4.46, 4.08}, - {0.71, 0.76}, - {1.01, 8.40}, - {3.09, 8.33}, - {6.13, 0.62}, - {8.66, 8.88}, - {5.64, 7.97}, - {5.55, 3.51}, - {6.70, 7.15}, - {4.31, 6.97}, - {4.58, 6.99}, - {7.30, 1.26}, - {8.78, 3.89}, - {5.23, 3.35}, - {7.82, 5.89}, - {2.43, 7.35}, - {5.88, 1.26}, - {8.92, 2.84}, - {2.92, 8.01}, - {1.48, 2.34}, - {1.71, 3.40}, - {2.09, 2.74}, - {1.38, 0.32}, - {2.96, 5.20}, - {7.64, 2.94}, - {3.63, 3.88}, - {4.92, 6.39}, - {0.02, 8.67}, - {8.02, 3.99}, - {7.50, 7.49}, - {3.70, 2.90}, - {2.22, 1.62}, - {1.91, 1.05}, - {0.09, 6.89}, - {3.85, 6.35}, - {0.48, 7.25}, - {7.31, 5.51}, - {3.95, 3.38}, - {2.96, 8.75}, - {3.75, 5.76}, - {6.17, 6.52}, - {2.75, 5.83}, - {5.39, 1.43}, - {7.95, 7.98}, - {8.45, 7.81}, - {1.04, 2.67}, - {0.45, 4.26}, - {3.30, 0.05}, - {2.32, 4.57}, - {6.01, 5.41}, - {8.93, 2.00}, - {1.93, 3.15}, - {0.12, 1.35}, - {0.48, 4.00}, - {8.42, 6.49}, - {7.47, 8.76}, - {5.60, 2.90}, - {4.71, 0.45}, - {0.52, 6.86}, - {3.18, 2.15}, - {8.76, 2.04}, - {3.75, 1.59}, - {7.79, 4.06}, - {1.47, 0.90}, - {0.11, 0.29}, - {4.57, 6.95}, - {7.04, 4.40}, - {2.18, 1.75}, - {7.30, 8.71}, - {3.93, 3.11}, - {5.40, 1.78}, - {5.80, 1.05}, - {6.40, 6.13}, - {1.01, 4.99}, - {0.12, 7.88}, - {5.55, 4.57}, - {3.24, 4.86}, - {2.10, 6.88}, - {6.18, 2.58}, - {1.06, 7.54}, - {6.66, 7.44}, - {2.86, 5.28}, - {5.17, 3.18}, - {6.96, 0.10}, - {4.55, 0.05}, - {8.01, 5.80}, - {3.79, 3.32}, - {4.65, 1.53}, - {1.98, 4.75}, - {6.46, 0.63}, - {6.23, 2.69}, - {4.14, 2.95}, - {2.92, 7.47}, - {2.23, 4.48}, - {3.18, 8.84}, - {6.66, 6.43}, - {8.20, 4.54}, - {5.64, 4.90}, - {1.98, 2.74}, - {3.36, 8.60}, - {5.83, 7.23}, - {8.61, 0.25}, - {7.66, 5.90}, - {3.54, 4.24}, - {3.80, 8.48}, - {6.15, 4.07}, - {1.41, 2.14}, - {6.92, 6.43}, - {4.95, 7.83}, - {2.26, 4.29}, - {1.91, 0.40}, - {8.10, 1.26}, - {5.49, 4.23}, - {3.92, 3.68} -}; - -struct Complex verify_data[DATA_SIZE] = -{ - {-9.55, 31.87}, - {8.45, 45.39}, - {4.34, 45.27}, - {9.41, 6.59}, - {35.73, 20.80}, - {-9.46, 29.00}, - {50.95, 69.43}, - {5.47, 57.90}, - {7.79, 69.03}, - {-36.53, 24.18}, - {-6.85, 27.86}, - {-4.86, 87.57}, - {5.59, 57.99}, - {-5.10, 61.38}, - {30.42, 30.70}, - {-1.81, 52.19}, - {-0.43, 13.62}, - {16.97, 56.10}, - {-14.63, 68.37}, - {-26.08, 12.95}, - {-56.93, 35.07}, - {-4.61, 62.42}, - {3.10, 43.03}, - {52.89, 45.25}, - {55.98, 76.85}, - {-13.41, 52.73}, - {-63.15, 73.78}, - {29.38, 47.60}, - {-15.25, 16.57}, - {-38.76, 62.42}, - {-48.83, 43.31}, - {-4.32, 26.85}, - {4.49, 39.11}, - {15.24, 75.60}, - {14.71, 30.66}, - {12.39, 37.66}, - {-16.19, 26.14}, - {19.10, 27.68}, - {13.49, 20.33}, - {1.62, 36.60}, - {-6.13, 10.25}, - {17.87, 40.40}, - {-40.70, 48.05}, - {-34.10, 44.30}, - {5.13, 24.45}, - {-18.80, 17.91}, - {-22.36, 91.00}, - {4.95, 28.61}, - {32.18, 44.95}, - {6.40, 28.33}, - {-3.28, 80.04}, - {-10.91, 4.86}, - {-24.07, 62.47}, - {38.92, 73.33}, - {-40.44, 68.15}, - {24.28, 74.58}, - {-27.37, 13.08}, - {-39.05, 7.43}, - {-27.07, 33.97}, - {25.94, 35.40}, - {8.40, 9.34}, - {63.51, 12.56}, - {13.94, 33.44}, - {10.67, 29.11}, - {-12.93, 68.17}, - {-12.91, 128.67}, - {38.58, 30.92}, - {-16.80, 54.81}, - {41.01, 11.31}, - {-16.46, 30.20}, - {17.23, 30.21}, - {-10.98, 19.28}, - {-22.07, 2.83}, - {-34.27, 13.24}, - {-20.25, 78.23}, - {31.56, 19.48}, - {8.30, 14.29}, - {22.98, 7.89}, - {24.83, 70.87}, - {-2.96, 18.61}, - {-5.10, 32.50}, - {10.92, 63.09}, - {7.76, 73.56}, - {14.73, 10.45}, - {-31.23, 50.42}, - {6.18, 40.10}, - {17.09, 61.26}, - {18.50, 42.26}, - {19.17, 10.67}, - {51.10, 50.14}, - {-42.52, 76.67}, - {-5.54, 53.06}, - {33.70, 56.65}, - {-0.44, 6.76}, - {-7.42, 6.89}, - {19.24, 9.46}, - {48.41, 43.99}, - {3.87, 12.42}, - {-16.32, 11.94}, - {8.37, 45.34}, - {-20.69, 87.66}, - {19.71, 56.72}, - {-48.50, 33.76}, - {-0.57, 7.13}, - {-22.71, 11.26}, - {-27.73, 68.86}, - {-11.59, 33.48}, - {-9.62, 7.36}, - {15.89, 44.50}, - {-32.81, 30.96}, - {-18.53, 58.34}, - {-9.41, 55.15}, - {11.33, 59.36}, - {-7.88, 9.24}, - {13.91, 43.66}, - {-38.15, 64.22}, - {4.54, 3.59}, - {8.44, 35.80}, - {-1.29, 25.84}, - {26.64, 8.86}, - {19.44, 23.93}, - {8.31, 39.70}, - {21.07, 49.26}, - {-24.77, 69.02}, - {-34.89, 49.32}, - {-23.70, 64.79}, - {-7.06, 5.59}, - {4.13, 67.73}, - {13.44, 30.78}, - {36.07, 63.89}, - {-53.67, 23.06}, - {5.35, 33.70}, - {23.17, 45.78}, - {-0.85, 2.44}, - {15.12, 6.04}, - {23.63, 71.56}, - {20.37, 31.88}, - {17.50, 51.67}, - {-25.60, 17.35}, - {56.86, 67.97}, - {28.63, 81.59}, - {25.38, 56.49}, - {0.05, 18.79}, - {-13.60, 30.47}, - {4.80, 8.17}, - {4.55, 23.00}, - {33.94, 19.94}, - {4.04, 57.01}, - {43.61, 50.83}, - {-5.06, 10.59}, - {-16.60, 43.62}, - {-14.17, 14.19}, - {-1.97, 59.94}, - {-1.25, 26.76}, - {-22.66, 69.63}, - {0.03, 0.23}, - {-26.76, 54.82}, - {-23.82, 41.05}, - {-49.83, 52.38}, - {-24.58, 21.18}, - {20.76, 61.75}, - {-12.48, 26.36}, - {-37.73, 52.56}, - {6.00, 68.90}, - {9.32, 27.67}, - {0.36, 10.88}, - {-2.45, 5.87}, - {36.49, 74.56}, - {38.31, 57.71}, - {-35.46, 78.25}, - {1.62, 7.20}, - {8.75, 40.70}, - {-22.91, 58.17}, - {25.14, 55.26}, - {-7.33, 17.05}, - {-0.86, 95.47}, - {-27.65, 56.11}, - {-2.21, 12.53}, - {-54.69, 81.45}, - {9.02, 24.97}, - {-39.56, 35.42}, - {3.90, 17.48}, - {-4.84, 9.43}, - {7.63, 3.67}, - {-1.49, 9.99}, - {6.07, 96.66}, - {11.55, 69.81}, - {0.06, 4.54}, - {29.61, 22.63}, - {-0.18, 58.41}, - {4.87, 32.02}, - {-8.74, 5.88}, - {-6.42, 42.08}, - {-19.85, 77.38}, - {-29.51, 18.18}, - {47.64, 39.05}, - {-49.21, 69.14}, - {16.27, 29.14}, - {47.13, 57.96}, - {-5.88, 17.20}, - {7.39, 17.73}, - {-2.63, 76.94}, - {-8.43, 67.80}, - {17.66, 95.65}, - {-3.78, 105.43}, - {-19.35, 19.33}, - {-22.13, 85.25}, - {-32.01, 51.45}, - {33.34, 27.27}, - {4.76, 45.63}, - {20.07, 38.73}, - {16.43, 26.11}, - {12.41, 35.49}, - {-9.54, 69.75}, - {-15.05, 44.52}, - {-35.58, 48.02}, - {-26.35, 43.57}, - {17.04, 18.66}, - {25.06, 28.94}, - {-20.65, 8.61}, - {31.60, 24.50}, - {-39.23, 39.05}, - {8.47, 75.50}, - {-13.14, 71.52}, - {3.44, 4.81}, - {11.79, 114.92}, - {16.71, 37.99}, - {-11.03, 32.07}, - {48.07, 85.39}, - {10.42, 8.37}, - {0.67, 17.83}, - {-7.51, 24.17}, - {-6.98, 14.83}, - {8.26, 18.75}, - {6.14, 42.31}, - {-13.44, 58.32}, - {20.77, 41.19}, - {-5.08, 24.90}, - {0.02, 44.55}, - {40.65, 56.02}, - {-49.38, 47.95}, - {-1.62, 47.74}, - {65.36, 60.27}, - {10.12, 69.99}, - {-12.80, 62.38}, - {-19.28, 66.58}, - {12.35, 51.40}, - {-16.15, 41.69}, - {8.46, 64.81}, - {-37.44, 42.07}, - {-6.31, 17.43}, - {-28.52, 42.42}, - {-36.85, 35.12}, - {39.58, 17.97}, - {-12.11, 6.90}, - {49.39, 22.67}, - {49.25, 59.28}, - {-13.11, 15.93}, - {-36.76, 29.92}, - {9.02, 8.57}, - {-3.52, 108.92}, - {26.81, 33.21}, - {-25.78, 35.35}, - {23.31, 19.43}, - {30.72, 38.03}, - {8.59, 14.15}, - {3.84, 62.92}, - {-0.07, 16.04}, - {16.99, 40.18}, - {1.44, 58.64}, - {-52.31, 15.21}, - {26.47, 12.18}, - {29.26, 49.76}, - {32.75, 37.25}, - {28.24, 16.85}, - {-2.05, 3.25}, - {-33.27, 56.51}, - {5.90, 30.11}, - {-16.63, 93.02}, - {14.99, 47.54}, - {51.31, 27.46}, - {13.69, 76.22}, - {-42.35, 32.55}, - {37.88, 82.98}, - {-2.92, 27.40}, - {-13.59, 12.14}, - {-13.48, 30.24}, - {-67.06, 11.26}, - {-0.87, 59.62}, - {4.24, 18.59}, - {17.98, 68.03}, - {14.82, 46.36}, - {11.00, 12.77}, - {29.22, 20.92}, - {3.95, 5.68}, - {-9.54, 31.57}, - {24.37, 57.06}, - {2.50, 9.51}, - {26.05, 58.50}, - {10.56, 48.73}, - {-5.65, 21.94}, - {36.16, 23.04}, - {2.42, 10.68}, - {6.56, 61.46}, - {-6.60, 41.32}, - {31.49, 40.93}, - {-18.71, 19.55}, - {43.97, 75.72}, - {9.14, 33.64}, - {19.30, 25.13}, - {-12.38, 38.43}, - {-24.39, 35.99}, - {-5.55, 25.66}, - {-11.71, 21.07}, - {17.12, 15.80}, - {-28.85, 23.36}, - {-21.31, 29.96}, - {-3.33, 6.83}, - {41.43, 36.06}, - {10.13, 52.06}, - {0.30, 8.45}, - {-39.11, 68.91}, - {-33.57, 89.22}, - {18.81, 17.35}, - {-6.22, 28.36}, - {-3.80, 82.00}, - {-1.35, 81.71}, - {9.18, 59.90}, - {-44.29, 28.03}, - {-16.17, 40.76}, - {-5.22, 9.32}, - {-2.14, 9.00}, - {44.18, 67.32}, - {-1.76, 21.32}, - {18.82, 94.67}, - {-23.49, 86.50}, - {-35.23, 74.91}, - {-12.32, 12.48}, - {7.18, 8.81}, - {-4.30, 5.64}, - {11.90, 36.04}, - {-39.71, 28.47}, - {-48.46, 18.94}, - {31.11, 75.20}, - {-10.67, 29.61}, - {-31.00, 35.43}, - {6.53, 44.56}, - {-0.88, 1.57}, - {-13.32, 38.14}, - {0.14, 29.57}, - {-23.39, 42.20}, - {5.95, 67.32}, - {17.38, 33.26}, - {-2.36, 60.71}, - {-48.30, 55.33}, - {-60.27, 69.27}, - {4.13, 92.76}, - {12.63, 12.06}, - {-45.40, 53.50}, - {9.11, 72.28}, - {45.68, 26.21}, - {-1.17, 39.19}, - {-21.89, 31.92}, - {-2.45, 59.04}, - {24.16, 70.02}, - {-16.86, 17.05}, - {59.15, 59.47}, - {36.45, 41.38}, - {-17.30, 68.80}, - {8.35, 66.77}, - {4.78, 20.56}, - {-1.41, 7.70}, - {-0.27, 29.10}, - {-18.33, 69.13}, - {10.10, 22.61}, - {8.17, 28.85}, - {-10.28, 82.05}, - {27.25, 48.21}, - {-29.61, 49.95}, - {4.42, 48.59}, - {24.46, 81.28}, - {-9.60, 10.00}, - {-37.27, 26.90}, - {14.15, 78.71}, - {-5.04, 81.46}, - {-55.91, 68.15}, - {11.48, 61.76}, - {0.33, 18.74}, - {-1.75, 29.29}, - {-28.27, 23.57}, - {2.14, 32.10}, - {-0.58, 14.09}, - {-10.48, 73.71}, - {30.11, 22.64}, - {-30.62, 61.05}, - {7.14, 52.31}, - {-31.75, 8.68}, - {-25.60, 6.33}, - {10.81, 57.00}, - {1.58, 2.68}, - {-4.03, 4.49}, - {-69.40, 26.65}, - {34.97, 57.23}, - {-41.39, 85.26}, - {-56.66, 50.02}, - {26.67, 58.89}, - {36.97, 69.48}, - {17.62, 53.74}, - {-18.06, 67.20}, - {54.54, 42.92}, - {14.62, 28.66}, - {-17.46, 40.70}, - {37.49, 30.72}, - {-27.58, 81.20}, - {28.17, 29.78}, - {34.89, 64.55}, - {-14.73, 36.98}, - {-0.38, 14.23}, - {-22.73, 20.62}, - {3.66, 30.99}, - {4.21, 1.91}, - {-17.97, 61.45}, - {13.89, 44.10}, - {-9.36, 11.27}, - {-19.45, 71.53}, - {-30.31, 16.20}, - {21.83, 98.07}, - {51.73, 58.32}, - {15.61, 25.75}, - {-8.92, 16.21}, - {5.57, 7.03}, - {-31.94, 42.30}, - {-41.53, 54.41}, - {-34.46, 6.55}, - {48.82, 39.18}, - {-7.99, 45.35}, - {-58.46, 49.26}, - {6.76, 13.13}, - {7.31, 45.21}, - {-20.81, 46.15}, - {18.17, 19.43}, - {-11.37, 30.95}, - {-22.46, 82.83}, - {-8.81, 10.85}, - {-22.15, 37.62}, - {28.11, 13.51}, - {1.90, 19.58}, - {-33.67, 62.66}, - {-5.18, 36.44}, - {-14.59, 26.19}, - {-11.07, 5.77}, - {-10.54, 23.97}, - {11.13, 81.69}, - {37.26, 98.19}, - {-0.45, 58.06}, - {32.69, 21.79}, - {-1.75, 41.90}, - {-9.42, 33.26}, - {3.90, 3.16}, - {22.57, 17.60}, - {29.61, 93.77}, - {0.47, 16.32}, - {0.35, 2.00}, - {-24.37, 73.72}, - {40.52, 71.85}, - {3.95, 28.92}, - {18.43, 68.77}, - {20.38, 32.06}, - {36.49, 34.30}, - {32.78, 26.76}, - {-12.45, 23.75}, - {-17.04, 40.20}, - {-67.58, 42.30}, - {44.14, 40.41}, - {-20.29, 54.82}, - {-25.76, 25.64}, - {15.24, 59.03}, - {-24.18, 40.82}, - {20.78, 49.10}, - {-36.53, 21.06}, - {35.15, 44.67}, - {23.56, 47.18}, - {26.83, 31.04}, - {-6.04, 40.57}, - {17.77, 42.20}, - {29.56, 14.24}, - {-14.93, 7.49}, - {42.65, 43.61}, - {4.09, 60.41}, - {17.54, 29.38}, - {-40.77, 79.19}, - {-20.66, 41.15}, - {-16.10, 16.23}, - {-36.23, 71.30}, - {-5.32, 60.14}, - {14.84, 49.12}, - {13.98, 25.01}, - {-15.22, 67.15}, - {40.35, 61.61}, - {30.94, 35.53}, - {17.11, 72.57}, - {23.87, 30.84}, - {-31.95, 79.27}, - {6.63, 52.97}, - {-12.48, 9.24}, - {-41.66, 50.25}, - {-23.34, 27.06}, - {9.40, 35.27}, - {1.66, 10.57}, - {30.45, 79.29}, - {29.85, 59.03}, - {4.19, 41.60} -}; - diff --git a/benchmarks/vec-cmplxmult/dataset_test.h b/benchmarks/vec-cmplxmult/dataset_test.h deleted file mode 100644 index 1f2fed7..0000000 --- a/benchmarks/vec-cmplxmult/dataset_test.h +++ /dev/null @@ -1,29 +0,0 @@ -// See LICENSE for license details. - - -#define DATA_SIZE 4 - -struct Complex input1_data[DATA_SIZE] = -{ - {0.37, 4.09}, - {5.09, 0.02}, - {6.75, 3.30}, - {1.19, 0.58} -}; - -struct Complex input2_data[DATA_SIZE] = -{ - {7.51, 3.02}, - {1.69, 8.91}, - {3.16, 5.16}, - {8.56, 1.38} -}; - -struct Complex verify_data[DATA_SIZE] = -{ - {-9.55, 31.87}, - {8.45, 45.39}, - {4.34, 45.27}, - {9.41, 6.59} -}; - diff --git a/benchmarks/vec-cmplxmult/vec_cmplxmult_asm.S b/benchmarks/vec-cmplxmult/vec_cmplxmult_asm.S deleted file mode 100644 index dff057e..0000000 --- a/benchmarks/vec-cmplxmult/vec_cmplxmult_asm.S +++ /dev/null @@ -1,148 +0,0 @@ -# See LICENSE for license details. - -#***************************************************************************** -# cmplxmult function (assembly version) -#----------------------------------------------------------------------------- - - -#-------------------------------------------------------------------------- -# Headers and Defines -#-------------------------------------------------------------------------- - -# Here are some defines that make writing assembly code easier. - -# I'm using the knowledge that rN will be placed in register a0, rA will be -# placed into register a1, etc., based on the calling convention for functions. - - -#define rN a0 -#define rA a1 -#define rB a2 -#define rC a3 - -#define rVlen a6 -#define rStride a7 - -#define rAI t0 -#define rBI t1 -#define rCI t2 - -# WARNING: do not write to the s0,...,s9 registers without first saving them to -# the stack. - -#-------------------------------------------------------------------------- -# void scalar_cmplxmult_asm( int n, float a[], float b[], float c[] ) -#-------------------------------------------------------------------------- - - .text - .align 2 - .globl scalar_cmplxmult_asm - .type scalar_cmplxmult_asm,@function - -scalar_cmplxmult_asm: - - # ***** Scalar Example ***** - - blez rN, done # exit early if n < 0 - -loop: - # The following code is a naive implementation... - # Re-ordering instructions may increase performance, also, - # RISC-V supports instrucitons such as the "fmuladd" and "fmulsub". - # fmsub.s fa2,fa4,fa3,ft1 - # Finally, unrolling and other fun transformations can also provide - # performance gains. - - flw f2, 0(rA) - flw f3, 4(rA) - flw f4, 0(rB) - flw f5, 4(rB) - fmul.s f6, f2, f4 - fmul.s f7, f3, f5 - fmul.s f8, f3, f4 - fmul.s f9, f2, f5 - fsub.s f10, f6, f7 - fadd.s f11, f8, f9 - fsw f10, 0(rC) - fsw f11, 4(rC) - addi rN, rN, -1 - addi rA, rA, 8 - addi rB, rB, 8 - addi rC, rC, 8 - bne rN, zero, loop -done: - ret - - -#-------------------------------------------------------------------------- -# void vt_cmplxmult_asm( int n, float a[], float b[], float c[] ) -#-------------------------------------------------------------------------- - - - # ***** Vector-Thread Example ***** - - .globl vt_cmplxmult_asm - .type vt_cmplxmult_asm,@function - - # HINT: because you are dealing with an array of structures, a regular, - # vanilla vector-load/vector-store won't work here! - -vt_cmplxmult_asm: - - blez rN, cpdone - la a4, vtcode - li rStride, 8 - - vvcfgivl rVlen, rN, 1, 7 - -stripmineloop: - - # ADD YOUR CODE HERE.... - vsetvl rVlen, rN # set the vector length - # rN is the desired (application) vector length - # rVLen is what vector length we were given - - vflstw vf2, rA, rStride # real number vector load of A - addi rAI, rA, 4 - vflstw vf4, rB, rStride # real number vector load of B - addi rBI, rB, 4 - vflstw vf3, rAI, rStride #imaginary number vector load of A - vflstw vf5, rBI, rStride #imaginary vector number load of B - - vf 0(a4) # jump to vector-fetch code - - vfsstw vf0, rC, rStride # real number vector store C - addi rCI, rC, 4 - vfsstw vf1, rCI, rStride # imaginary - - slli a5, rVlen, 3 - sub rN, rN, rVlen # book keeping - add rA, rA, a5 - add rB, rB, a5 - add rC, rC, a5 - bne rN, zero, stripmineloop - # Step 0: set the vector length - # Step 1: perform your vector loads - # Step 2: jump to the vector-fetch code to perform the calculation - # Step 3: perform the vector store - # Step 4: book keeping, update the pointers, etc. - -cpdone: - fence.v.l - ret - -vtcode: - # ADD YOUR VECTOR-ELEMENT CODE HERE ... - fmul.s f0, f2, f4 - fmsub.s f0, f3, f5, f0 - - fmul.s f1, f2, f5 - fmadd.s f1, f3, f4, f1 - stop - - # The C code uses a jalr instruction to call this function - # so we can use a jr to return back to where the function - # was called. Also known as "ret", for "return". - - ret - diff --git a/benchmarks/vec-cmplxmult/vec_cmplxmult_main.c b/benchmarks/vec-cmplxmult/vec_cmplxmult_main.c deleted file mode 100644 index 62521c4..0000000 --- a/benchmarks/vec-cmplxmult/vec_cmplxmult_main.c +++ /dev/null @@ -1,319 +0,0 @@ -// See LICENSE for license details. - -//************************************************************************** -// Vector-Thread Complex Multiply benchmark -//-------------------------------------------------------------------------- -// -// This benchmark multiplies two complex numbers together. The input data (and -// reference data) should be generated using the cmplxmult_gendata.pl perl -// script and dumped to a file named dataset.h. The riscv-gcc toolchain does -// not support system calls so printf's can only be used on a host system, not -// on the riscv-v processor simulator itself. -// -// HOWEVER: printstr() and printhex() are provided, for a primitive form of -// printing strings and hexadecimal values to stdout. - - -// Choose which implementation you wish to test... but leave only one on! -// (only the first one will be executed). -//#define SCALAR_C -//#define SCALAR_ASM -#define VT_ASM - -//-------------------------------------------------------------------------- -// Macros - -// Set HOST_DEBUG to 1 if you are going to compile this for a host -// machine (ie Athena/Linux) for debug purposes and set HOST_DEBUG -// to 0 if you are compiling with the smips-gcc toolchain. - -#ifndef HOST_DEBUG -#define HOST_DEBUG 0 -#endif - -// Set PREALLOCATE to 1 if you want to preallocate the benchmark -// function before starting stats. If you have instruction/data -// caches and you don't want to count the overhead of misses, then -// you will need to use preallocation. - -#ifndef PREALLOCATE -#define PREALLOCATE 0 -#endif - -// Set SET_STATS to 1 if you want to carve out the piece that actually -// does the computation. - -#ifndef SET_STATS -#define SET_STATS 0 -#endif - -//-------------------------------------------------------------------------- -// Host Platform Includes - -#if HOST_DEBUG - #include <stdio.h> - #include <stdlib.h> -#else -void printstr(const char*); -#endif - -#include "util.h" - - -//-------------------------------------------------------------------------- -// Complex Value Structs - -struct Complex -{ - float real; - float imag; -}; - - -//-------------------------------------------------------------------------- -// Input/Reference Data - -//#include "dataset_test.h" -#include "dataset.h" - - -//-------------------------------------------------------------------------- -// Helper functions - -float absolute( float in) -{ - if (in > 0) - return in; - else - return -in; -} - - -// are two floating point numbers "close enough"? -// this is pretty loose, because Perl is giving me pretty terrible answers -int close_enough(float a, float b) -{ - int close_enough = 1; - - if ( absolute(a) > 1.10*absolute(b) - || absolute(a) < 0.90*absolute(b) - || absolute(a) > 1.10*absolute(b) - || absolute(a) < 0.90*absolute(b)) - { - if (absolute(absolute(a) - absolute(b)) > 0.1) - { - close_enough = 0; - } - } - - return close_enough; -} - -int verify( int n, struct Complex test[], struct Complex correct[] ) -{ - int i; - for ( i = 0; i < n; i++ ) { - if ( !close_enough(test[i].real, correct[i].real) - || !close_enough(test[i].imag, correct[i].imag)) - { -#if HOST_DEBUG - printf(" test[%d] : {%3.2f, %3.2f}\n", i, test[i].real, test[i].imag); - printf(" corr[%d] : {%3.2f, %3.2f}\n", i, correct[i].real, correct[i].imag); -#endif - // tell us which index fails + 10 - // (so that if i==0,i==1 fails, we don't - // think it was a 'not-finished yet' or pass) -// return i+10; - return 2; - } - } - return 1; -} - -//#if HOST_DEBUG -void printComplexArray( char name[], int n, struct Complex arr[] ) -{ -#if HOST_DEBUG - int i; - printf( " %10s :", name ); - for ( i = 0; i < n; i++ ) - printf( " {%03.2f,%03.2f} ", arr[i].real, arr[i].imag ); - printf( "\n" ); -#else - int i; - printstr( name ); - for ( i = 0; i < n; i++ ) - { - printstr(" {"); - printhex((int) arr[i].real); - printstr(","); - printhex((int) arr[i].imag); - printstr("}"); - } - printstr( "\n" ); -#endif -} -//#endif - - - -void finishTest( int correct, long long num_cycles, long long num_retired ) -{ - int toHostValue = correct; -#if HOST_DEBUG - if ( toHostValue == 1 ) - printf( "*** PASSED ***\n" ); - else - printf( "*** FAILED *** (tohost = %d)\n", toHostValue ); - exit(0); -#else - // we no longer run in -testrun mode, which means we can't use - // the tohost register to communicate "test is done" and "test results" - // so instead we will communicate through print* functions! - if ( correct == 1 ) - { - printstr( "*** PASSED *** (num_cycles = 0x" ); - printhex(num_cycles); - printstr( ", num_inst_retired = 0x"); - printhex(num_retired); - printstr( ")\n" ); - } - else - { - printstr( "*** FAILED *** (num_cycles = 0x"); - printhex(num_cycles); - printstr( ", num_inst_retired = 0x"); - printhex(num_retired); - printstr( ")\n" ); - } - exit(); -#endif -} - - - - -// deprecated - cr10/stats-enable register no longer exists -void setStats( int enable ) -{ -#if ( !HOST_DEBUG && SET_STATS ) - asm( "mtpcr %0, cr10" : : "r" (enable) ); -#endif -} - -long long getCycles() -{ - long long cycles = 1337; -#if ( !HOST_DEBUG && SET_STATS ) - __asm__ __volatile__( "rdcycle %0" : "=r" (cycles) ); -#endif - return cycles; -} - -long long getInstRetired() -{ - long long inst_retired = 1338; -#if ( !HOST_DEBUG && SET_STATS ) - __asm__ __volatile__( "rdinstret %0" : "=r" (inst_retired) ); -#endif - return inst_retired; -} - -//-------------------------------------------------------------------------- -// complex multiply function - -// scalar C implementation -void cmplxmult( int n, struct Complex a[], struct Complex b[], struct Complex c[] ) -{ - int i; - for ( i = 0; i < n; i++ ) - { - c[i].real = (a[i].real * b[i].real) - (a[i].imag * b[i].imag); - c[i].imag = (a[i].imag * b[i].real) + (a[i].real * b[i].imag); - } -} - -// assembly implementations can be found in *_asm.S - -//-------------------------------------------------------------------------- -// Main - -int main( int argc, char* argv[] ) -{ - struct Complex results_data[DATA_SIZE]; - long long start_cycles = 0; - long long stop_cycles = 0; - long long num_cycles; - long long start_retired = 0; - long long stop_retired = 0; - long long num_retired; - - // Output the input array - -#if HOST_DEBUG - printComplexArray( "input1", DATA_SIZE, input1_data ); - printComplexArray( "input2", DATA_SIZE, input2_data ); - printComplexArray( "verify", DATA_SIZE, verify_data ); -#endif - - // -------------------------------------------------- - // If needed we preallocate everything in the caches - -#if PREALLOCATE - -#ifdef SCALAR_C - cmplxmult( DATA_SIZE, input1_data, input2_data, results_data ); -#else -#ifdef SCALAR_ASM - scalar_cmplxmult_asm( DATA_SIZE, input1_data, input2_data, results_data ); -#else -#ifdef VT_ASM - vt_cmplxmult_asm( DATA_SIZE, input1_data, input2_data, results_data ); -#endif -#endif -#endif - -#endif - - // -------------------------------------------------- - // Do the cmplxmult - - start_cycles = getCycles(); - start_retired = getInstRetired(); - -#ifdef SCALAR_C - cmplxmult( DATA_SIZE, input1_data, input2_data, results_data ); -#else -#ifdef SCALAR_ASM - #if HOST_DEBUG==0 - scalar_cmplxmult_asm( DATA_SIZE, input1_data, input2_data, results_data ); - #endif -#else -#ifdef VT_ASM - #if HOST_DEBUG==0 - vt_cmplxmult_asm( DATA_SIZE, input1_data, input2_data, results_data ); - #endif -#endif -#endif -#endif - - stop_cycles = getCycles(); - stop_retired = getInstRetired(); - num_cycles = stop_cycles - start_cycles; - num_retired = stop_retired - start_retired; - - // -------------------------------------------------- - // Print out the results - -#if HOST_DEBUG - printComplexArray( "results", DATA_SIZE, results_data ); - printComplexArray( "verify ", DATA_SIZE, verify_data ); -#endif - - - // -------------------------------------------------- - // Check the results - int correct = verify( DATA_SIZE, results_data, verify_data ); - finishTest(correct, num_cycles, num_retired); - -} diff --git a/benchmarks/vec-fft/bmark.mk b/benchmarks/vec-fft/bmark.mk deleted file mode 100644 index 46a2835..0000000 --- a/benchmarks/vec-fft/bmark.mk +++ /dev/null @@ -1,41 +0,0 @@ -#======================================================================= -# UCB CS250 Makefile fragment for benchmarks -#----------------------------------------------------------------------- -# -# Each benchmark directory should have its own fragment which -# essentially lists what the source files are and how to link them -# into an riscv and/or host executable. All variables should include -# the benchmark name as a prefix so that they are unique. -# - -vec-fft_data_src = fft-data.c - -vec-fft_c_src = \ - vec-fft_main.c \ - vec-fft.c \ - $(vec-fft_data_src) - -vec-fft_riscv_src = \ - crt.S \ - vec-vfft.S - -vec-fft_c_objs = $(patsubst %.c, %.o, $(vec-fft_c_src)) -vec-fft_riscv_objs = $(patsubst %.S, %.o, $(vec-fft_riscv_src)) - -vec-fft_data_bin = fft-data-gen -$(vec-fft_data_src): $(vec-fft_data_bin) - ./$< $(FFT_FLOATING_PREC) $(FFT_SIZE) > $@ - -vec-fft_host_bin = vec-fft.host -$(vec-fft_host_bin): $(vec-fft_c_src) -# $(HOST_COMP) $^ -o $(vec-fft_host_bin) - -RISCV_LINK_SYSCALL = $(bmarkdir)/common/syscalls.c -lc - -vec-fft_riscv_bin = vec-fft.riscv -$(vec-fft_riscv_bin): $(vec-fft_c_objs) $(vec-fft_riscv_objs) - $(RISCV_LINK) $(RISCV_LINK_SYSCALL) $(vec-fft_c_objs) $(vec-fft_riscv_objs) -o $(vec-fft_riscv_bin) - -junk += \ - $(vec-fft_data_src) $(vec-fft_c_objs) $(vec-fft_riscv_objs) \ - $(vec-fft_host_bin) $(vec-fft_riscv_bin) diff --git a/benchmarks/vec-fft/cvt16.c b/benchmarks/vec-fft/cvt16.c deleted file mode 100644 index ef769b0..0000000 --- a/benchmarks/vec-fft/cvt16.c +++ /dev/null @@ -1,122 +0,0 @@ -// See LICENSE for license details. - -#include "cvt16.h" - -#define H_BIAS (UINT16_C(0xf)) -#define H_F_MASK (UINT16_C(0x03FF)) -#define H_E_MASK (UINT16_C(0x7C00)) -#define H_E_SHIFT (10) -#define H_S_MASK (UINT16_C(0x8000)) - -#define H_QNAN (H_F_MASK) - -#define S_BIAS (UINT32_C(0x7F)) -#define S_F_MASK (UINT32_C(0x007fffff)) -#define S_E_MASK (UINT32_C(0x7f800000)) -#define S_E_SHIFT (23) -#define S_S_MASK (UINT32_C(0x80000000)) - -#define S_QNAN (S_F_MASK) - -#define PAD (S_E_SHIFT - H_E_SHIFT) - -uint_fast32_t cvt_hs(uint_fast16_t x) -{ -#define MSB (UINT32_C(0x00800000)) - uint_fast32_t frac, exp, sign; - frac = (x & H_F_MASK) << PAD; - exp = (x & H_E_MASK); - sign = (x & H_S_MASK); - - switch (exp) { - case 0: - if (frac) { /* Denormal */ - exp = S_BIAS - 14; - /* Adjust fraction for implicit leading 1-bit */ - for (; !(frac & MSB); frac <<= 1, exp--); - frac &= ~(MSB); - exp <<= S_E_SHIFT; - } - break; - - case H_E_MASK: /* Infinity and NaN */ - exp = S_E_MASK; - if (frac) { /* Set padding bits for NaN */ - frac |= (1 << PAD) - 1; - } - break; - default: - exp += (S_BIAS - H_BIAS) << H_E_SHIFT; /* Re-bias */ - exp <<= PAD; - } - return (sign << 16) | exp | frac; -#undef MSB -} - -/* - * LSB : frac[13] - * Guard bit (G): frac[12] - * Round bit (R): frac[11] - * Sticky bit (S): OR of frac[10..0] - * - * RTZ: - * truncate - * RUP: - * 000 : exact - * else : round up - * RDN: - * 000 : exact - * else : round down - * RNE: - * 0xx : round down - * 100 : tie; round up if LSB is 1 - * 101 : round up - * 110 : round up - * 111 : round up - */ -uint_fast16_t cvt_sh(uint_fast32_t x, int rm) -{ -#define MSB UINT16_C(0x0400) - uint_fast32_t frac, exp, sign; - int e; - sign = (x & S_S_MASK) >> 16; - exp = (x & S_E_MASK); - if (exp && exp != S_E_MASK) { - int inc; - inc = 0; - switch (rm) { - case RNE: - /* Round up if G is set and either R, S, - or the bit before G is non-zero */ - inc = (x & 0x1000) && (x & 0x2fff); - break; - case RUP: - inc = ((x & 0x1fff) != 0) && (!sign); - break; - case RDN: - inc = ((x & 0x1fff) != 0) && sign; - break; - } - x += inc << PAD; - exp = (x & S_E_MASK); - } - frac = (x & S_F_MASK) >> PAD; - - e = (exp >> S_E_SHIFT) - S_BIAS; - if (e < -24) { /* Round to zero */ - return sign; - } else if (e < -14) { /* Denormal */ - frac = (frac | MSB) >> (-e - 14); - return sign | frac; - } else if (e < 16) { - exp = (e + H_BIAS) << H_E_SHIFT; - } else if (e < 127) { /* Round to infinity */ - exp = H_E_MASK; - frac = 0; - } else { - /* Infinity and NaN */ - } - return sign | exp | frac; -#undef MSB -} - diff --git a/benchmarks/vec-fft/cvt16.h b/benchmarks/vec-fft/cvt16.h deleted file mode 100644 index 3d45f01..0000000 --- a/benchmarks/vec-fft/cvt16.h +++ /dev/null @@ -1,19 +0,0 @@ -// See LICENSE for license details. - -#ifndef _CVT16_H -#define _CVT16_H - -#include <stdint.h> - -extern uint_fast32_t cvt_hs(uint_fast16_t); -extern uint_fast16_t cvt_sh(uint_fast32_t, int); - -enum riscv_rm { - RNE = 0, /* Round to nearest; ties to even */ - RTZ = 1, /* Round towards zero (truncate) */ - RDN = 2, /* Round towards negative infinity (down) */ - RUP = 3, /* Round towards positive infinity (up) */ - RMM = 4, /* Round to nearest; ties to max magnitude */ -}; - -#endif diff --git a/benchmarks/vec-fft/cvt_fft.c b/benchmarks/vec-fft/cvt_fft.c deleted file mode 100644 index 94884b0..0000000 --- a/benchmarks/vec-fft/cvt_fft.c +++ /dev/null @@ -1,39 +0,0 @@ -// See LICENSE for license details. - -#include <stdio.h> -#include <stdint.h> -#include <inttypes.h> - -#include "cvt16.h" - -typedef float fftval_t; -#include "fft_data_generic.c" - -static void _array(const char *s, const fftval_t *v, unsigned int n) -{ - union single { - float f; - uint32_t u; - } bits; - unsigned int i; - - printf("fftval_t %s[%u] = { ", s, n); - for (i = 0; i < n; i++) { - bits.f = v[i]; - printf("0x%04" PRIx16 ", ", cvt_sh(bits.u, RNE)); - } - puts("};"); -} - -#define array(v) _array(#v, (v), (sizeof(v) / sizeof(0[v]))) - -int main(void) -{ - array(input_data_real); - array(input_data_imag); - array(output_data_real); - array(output_data_imag); - array(tf_real); - array(tf_imag); - return 0; -} diff --git a/benchmarks/vec-fft/data.c b/benchmarks/vec-fft/data.c deleted file mode 100644 index bf8a18c..0000000 --- a/benchmarks/vec-fft/data.c +++ /dev/null @@ -1,23 +0,0 @@ -// See LICENSE for license details. - -#include "fft_const.h" - -#if !defined(FP_HALF) - -fftval_t input_data_real[ 128 ] = { 0.639426798458, 0.0250107552227, 0.275029318369, 0.223210738149, 0.736471214164, 0.676699487423, 0.892179567705, 0.0869388326294, 0.421921819685, 0.0297972194381, 0.218637974804, 0.505355288103, 0.0265359696839, 0.198837650687, 0.64988443778, 0.544941480603, 0.220440622041, 0.589265683876, 0.809430456678, 0.00649875967806, 0.805819251833, 0.698139394988, 0.340250516518, 0.155479499812, 0.957213072207, 0.336594545113, 0.0927458433801, 0.0967163768335, 0.847494366347, 0.603726031367, 0.807128273274, 0.729731786694, 0.536228091455, 0.973115763979, 0.378534377208, 0.552040631273, 0.829404664253, 0.618519752364, 0.861706900311, 0.577352145257, 0.704571836215, 0.0458243836557, 0.227898275652, 0.289387963602, 0.0797919769236, 0.232790886361, 0.10100142941, 0.27797360311, 0.635684444264, 0.36483217897, 0.370180967117, 0.209507030771, 0.266977822049, 0.936654587712, 0.648035385247, 0.609131005667, 0.171138648198, 0.72912679795, 0.163402493762, 0.379455441758, 0.989523350637, 0.639999759854, 0.556949743775, 0.68461425099, 0.84285192019, 0.775999911546, 0.229048071964, 0.032100243904, 0.315453048059, 0.267740875976, 0.210982843586, 0.942909714335, 0.876367626473, 0.314677880798, 0.655438665295, 0.395631901061, 0.914547589741, 0.458851852587, 0.264880166498, 0.246627507694, 0.561368134163, 0.262741608523, 0.584585990224, 0.897822883602, 0.39940050514, 0.219320759157, 0.997537606495, 0.509526293676, 0.0909094121738, 0.0471163754247, 0.109649130351, 0.627446041703, 0.792079364363, 0.4221599668, 0.063527706152, 0.381619286507, 0.99612138024, 0.529114345099, 0.971078377614, 0.860779702234, 0.0114810219428, 0.72072181936, 0.681710369027, 0.536970330409, 0.266825189953, 0.64096179858, 0.111552173596, 0.434765250669, 0.453723706329, 0.953815927521, 0.875852940378, 0.263389050751, 0.50058611305, 0.17865188053, 0.912627839345, 0.870518569837, 0.298444791449, 0.638949494866, 0.608970211438, 0.15283926855, 0.762510800075, 0.53937903012, 0.778626478631, 0.530353672195, 0.000571896127944, 0.324156057005, 0.0194767423858, 0.929098616265 }; -fftval_t input_data_imag[ 128 ] = { 0.878721877823, 0.831665529361, 0.307514125403, 0.0579251664942, 0.878009599204, 0.946949445298, 0.0856534520679, 0.485990463317, 0.0692125184684, 0.760602165257, 0.765834429307, 0.1283914645, 0.475282378099, 0.549803593495, 0.26505662894, 0.872433041085, 0.423137940201, 0.211798205442, 0.539296088779, 0.72993106909, 0.20115106339, 0.311716291301, 0.995149356661, 0.649878057639, 0.438100083915, 0.517575841036, 0.121004195868, 0.224697337032, 0.338085562147, 0.588308718457, 0.230114732597, 0.220217384452, 0.070993086009, 0.63110295727, 0.228941783811, 0.905420013006, 0.859635400254, 0.0708573498887, 0.238004634369, 0.668977778296, 0.21423680737, 0.132311848725, 0.935514240581, 0.571043093325, 0.472671026312, 0.784619424291, 0.807496997767, 0.190409914362, 0.0969308142288, 0.431051182406, 0.42357862302, 0.467024668037, 0.72907584946, 0.673364547293, 0.984165211366, 0.098417871152, 0.402621282102, 0.339302605395, 0.861672536353, 0.24865633392, 0.190208908441, 0.448613547833, 0.421881639834, 0.278545144667, 0.249806447882, 0.923265599276, 0.443130745053, 0.861349104762, 0.55032531245, 0.0505883295249, 0.999282468413, 0.83602758508, 0.968996257285, 0.926366983008, 0.848695734414, 0.166311110604, 0.485641125451, 0.213747299199, 0.401040292549, 0.0586353999722, 0.378973118977, 0.98530884378, 0.265203058172, 0.784070601949, 0.455008367339, 0.42300748599, 0.95731764086, 0.995422689493, 0.555768323406, 0.718408275296, 0.154796825274, 0.296707825495, 0.968709364969, 0.579180290816, 0.542195201374, 0.747975560379, 0.0571652729075, 0.584177594459, 0.50285038292, 0.852719892048, 0.157432727939, 0.960778903274, 0.0801114652406, 0.185824960981, 0.59503510645, 0.675212553604, 0.235203895001, 0.119886613947, 0.890287314129, 0.246215347789, 0.594519153533, 0.619381510332, 0.419224915336, 0.583672289291, 0.522782715532, 0.934706257736, 0.204259199424, 0.716191800789, 0.238685952616, 0.395785846791, 0.67169022296, 0.299997079799, 0.316177196272, 0.751864492414, 0.0725431144932, 0.458285522619, 0.998454440854, 0.996096447855 }; -fftval_t output_data_real[ 128 ] = { 61.954455353, -3.55833399529, -0.523354806008, -3.37768557289, 3.32687067509, -3.0237541092, -0.378319273514, 0.525689010981, 5.25658573479, -2.28074215555, -4.28723433346, -4.4277864945, 1.25302215885, -0.482791893995, -1.12845609406, -3.21089274844, -0.078505416643, -2.1193590094, 4.98495906311, -3.56979439628, 2.72333789593, 2.25668218204, 0.335271678442, -6.34334972936, 0.712532452309, 0.409291142904, -1.22780527711, 3.84865910019, 0.969858896916, 1.05979174012, -0.405273430345, 1.0161952607, 2.65666792497, -7.17797945232, 3.35748060331, -1.93036005449, 5.79228873407, 6.83679539719, 0.455509780838, -4.32751152407, -0.195720493898, -4.39713867575, 4.04962604613, 8.55532419691, 0.793886999177, 2.74675335418, 1.78534557879, -0.150461101563, 4.79269199365, -0.097190171132, -2.93509465459, 0.000498021981268, -3.87438881161, -5.12734321093, -2.12762472404, -1.16638837683, 3.59130812163, -0.816225274592, -0.806189352525, -1.15586605458, -1.92113200189, 0.855167926588, 0.603604208411, -0.409696855698, 2.88640009067, 2.56152175575, -1.09096481126, 0.828707821899, -0.962267817144, -0.81230709709, 1.16163049602, -0.695404120144, -4.20242999608, -2.92482265517, 1.02303060189, -2.70129415201, 0.525364381257, 2.49338291739, 2.34783772688, 4.95908644781, 0.177530769676, 5.16759926801, -2.55397551085, 1.48552350843, -4.50573276988, 0.451229866674, -6.81151821737, -5.00364260745, -0.98762260691, 5.226676945, 1.73684083074, -4.95366720132, 2.43429602647, 0.460297668808, 0.111897844813, -2.75691723482, 0.310022422864, -1.58528590021, -2.03689286823, -1.102027189, 3.51353594739, 1.0387748517, 3.84115211002, 3.81032001841, 2.43243605239, 0.621532229972, 5.36804043022, 7.69993469463, 3.63860246238, 3.633002238, -2.47462170952, 5.24293295589, 0.774064132507, -3.91244434865, 4.72655267242, -2.81469193189, 0.993153378271, -3.2354193083, 0.474071574908, 0.756162196284, -1.15709647317, 3.31705213122, -6.01086540873, 2.37742277745, 2.84408587391, -3.65152823413, -3.16692487284, 2.0388874191 }; -fftval_t output_data_imag[ 128 ] = { 64.7050383851, 0.698184545699, 3.42493175348, 5.66261938459, 1.00574698274, -3.1031255135, 5.20424207641, 2.0448135066, -4.63849287023, 2.51117736295, 1.41295259621, -2.45639979763, 5.86862949669, -4.29715899392, 1.97792740773, 1.61104358821, 3.55985554637, -0.852668449458, 3.78965920404, 1.11985520891, -3.08121666225, 4.31756301978, 7.89587646848, 5.66554418397, -6.1086556137, 5.62222049291, 4.34787054172, 0.668211990523, 2.31296531095, 5.41014021609, 0.453996830494, 2.7935768665, -2.34494675051, 1.17549556253, -2.36863533542, 3.34802654836, 0.810944712905, -3.46714468032, -4.00653978407, -3.0699493452, 5.34453801646, -1.15007047713, 1.48224491218, 1.96983218353, -2.35988258452, -3.83406990073, 1.05359927173, -2.62518260336, -2.26840395653, 4.53058951798, 4.37784201599, 1.74456564948, 1.17919710136, 5.85762105311, -2.17089571025, -0.186855334345, -2.78684050993, 11.2542088523, 3.53682020657, 0.921750647669, -2.75033375937, -2.39105725671, 5.69627942011, -2.14262056709, -3.24450591785, -4.88101239098, -0.82019947831, 1.73555667725, -2.67542169613, 2.70255959353, -1.56904900802, 0.813903077259, -4.79584930282, -0.827151380084, -0.153701429418, -2.79898616186, 2.31828350443, 2.21515556736, -3.40293773784, -0.162985084297, -3.05206321075, 1.75265985778, 1.95085395048, -4.00325708931, -4.0551434497, 1.05832733908, -0.462016761175, -10.7553551483, -1.34633968539, 3.33861851859, 0.17331130312, -3.50040264719, -0.469531530722, -6.75712678783, 0.101038910495, 4.60866018427, -1.43982416145, -0.388454731031, -2.90742197761, 0.187444758531, 2.66953361587, 6.87916789749, -1.25246099771, -0.80213619158, 0.490239247273, -4.52070544206, 1.9815151617, -4.46229763612, -2.28749790966, 0.771352499303, 2.42025535542, 2.63871825487, -3.99023733181, -0.379591050964, 2.64500129424, -1.50502365382, 1.35040224487, 6.8258533247, -2.71874835374, 5.97039779238, 3.11574368961, 6.0121394881, -1.19573643258, 2.25554012485, -0.82195704339, -1.2418186553, 1.11396326277, -1.87990085069 }; -fftval_t tf_real[ 128 ] = { 1.0, 0.998795456205, 0.995184726672, 0.989176509965, 0.980785280403, 0.970031253195, 0.956940335732, 0.941544065183, 0.923879532511, 0.903989293123, 0.881921264348, 0.85772861, 0.831469612303, 0.803207531481, 0.773010453363, 0.740951125355, 0.707106781187, 0.671558954847, 0.634393284164, 0.595699304492, 0.55557023302, 0.514102744193, 0.471396736826, 0.42755509343, 0.382683432365, 0.336889853392, 0.290284677254, 0.242980179903, 0.195090322016, 0.146730474455, 0.0980171403296, 0.0490676743274, 6.12323399574e-17, -0.0490676743274, -0.0980171403296, -0.146730474455, -0.195090322016, -0.242980179903, -0.290284677254, -0.336889853392, -0.382683432365, -0.42755509343, -0.471396736826, -0.514102744193, -0.55557023302, -0.595699304492, -0.634393284164, -0.671558954847, -0.707106781187, -0.740951125355, -0.773010453363, -0.803207531481, -0.831469612303, -0.85772861, -0.881921264348, -0.903989293123, -0.923879532511, -0.941544065183, -0.956940335732, -0.970031253195, -0.980785280403, -0.989176509965, -0.995184726672, -0.998795456205, -1.0, -0.998795456205, -0.995184726672, -0.989176509965, -0.980785280403, -0.970031253195, -0.956940335732, -0.941544065183, -0.923879532511, -0.903989293123, -0.881921264348, -0.85772861, -0.831469612303, -0.803207531481, -0.773010453363, -0.740951125355, -0.707106781187, -0.671558954847, -0.634393284164, -0.595699304492, -0.55557023302, -0.514102744193, -0.471396736826, -0.42755509343, -0.382683432365, -0.336889853392, -0.290284677254, -0.242980179903, -0.195090322016, -0.146730474455, -0.0980171403296, -0.0490676743274, -1.83697019872e-16, 0.0490676743274, 0.0980171403296, 0.146730474455, 0.195090322016, 0.242980179903, 0.290284677254, 0.336889853392, 0.382683432365, 0.42755509343, 0.471396736826, 0.514102744193, 0.55557023302, 0.595699304492, 0.634393284164, 0.671558954847, 0.707106781187, 0.740951125355, 0.773010453363, 0.803207531481, 0.831469612303, 0.85772861, 0.881921264348, 0.903989293123, 0.923879532511, 0.941544065183, 0.956940335732, 0.970031253195, 0.980785280403, 0.989176509965, 0.995184726672, 0.998795456205 }; -fftval_t tf_imag[ 128 ] = { -0.0, -0.0490676743274, -0.0980171403296, -0.146730474455, -0.195090322016, -0.242980179903, -0.290284677254, -0.336889853392, -0.382683432365, -0.42755509343, -0.471396736826, -0.514102744193, -0.55557023302, -0.595699304492, -0.634393284164, -0.671558954847, -0.707106781187, -0.740951125355, -0.773010453363, -0.803207531481, -0.831469612303, -0.85772861, -0.881921264348, -0.903989293123, -0.923879532511, -0.941544065183, -0.956940335732, -0.970031253195, -0.980785280403, -0.989176509965, -0.995184726672, -0.998795456205, -1.0, -0.998795456205, -0.995184726672, -0.989176509965, -0.980785280403, -0.970031253195, -0.956940335732, -0.941544065183, -0.923879532511, -0.903989293123, -0.881921264348, -0.85772861, -0.831469612303, -0.803207531481, -0.773010453363, -0.740951125355, -0.707106781187, -0.671558954847, -0.634393284164, -0.595699304492, -0.55557023302, -0.514102744193, -0.471396736826, -0.42755509343, -0.382683432365, -0.336889853392, -0.290284677254, -0.242980179903, -0.195090322016, -0.146730474455, -0.0980171403296, -0.0490676743274, -1.22464679915e-16, 0.0490676743274, 0.0980171403296, 0.146730474455, 0.195090322016, 0.242980179903, 0.290284677254, 0.336889853392, 0.382683432365, 0.42755509343, 0.471396736826, 0.514102744193, 0.55557023302, 0.595699304492, 0.634393284164, 0.671558954847, 0.707106781187, 0.740951125355, 0.773010453363, 0.803207531481, 0.831469612303, 0.85772861, 0.881921264348, 0.903989293123, 0.923879532511, 0.941544065183, 0.956940335732, 0.970031253195, 0.980785280403, 0.989176509965, 0.995184726672, 0.998795456205, 1.0, 0.998795456205, 0.995184726672, 0.989176509965, 0.980785280403, 0.970031253195, 0.956940335732, 0.941544065183, 0.923879532511, 0.903989293123, 0.881921264348, 0.85772861, 0.831469612303, 0.803207531481, 0.773010453363, 0.740951125355, 0.707106781187, 0.671558954847, 0.634393284164, 0.595699304492, 0.55557023302, 0.514102744193, 0.471396736826, 0.42755509343, 0.382683432365, 0.336889853392, 0.290284677254, 0.242980179903, 0.195090322016, 0.146730474455, 0.0980171403296, 0.0490676743274 }; - -#else - -fftval_t input_data_real[128] = { 0x391e, 0x2667, 0x3467, 0x3325, 0x39e4, 0x396a, 0x3b23, 0x2d90, 0x36c0, 0x27a1, 0x32ff, 0x380b, 0x26cb, 0x325d, 0x3933, 0x385c, 0x330e, 0x38b7, 0x3a7a, 0x1ea8, 0x3a72, 0x3996, 0x3572, 0x30fa, 0x3ba8, 0x3563, 0x2df0, 0x2e31, 0x3ac8, 0x38d4, 0x3a75, 0x39d6, 0x384a, 0x3bc9, 0x360e, 0x386b, 0x3aa3, 0x38f3, 0x3ae5, 0x389e, 0x39a3, 0x29de, 0x334b, 0x34a1, 0x2d1b, 0x3373, 0x2e77, 0x3473, 0x3916, 0x35d6, 0x35ec, 0x32b4, 0x3446, 0x3b7e, 0x392f, 0x38e0, 0x317a, 0x39d5, 0x313b, 0x3612, 0x3beb, 0x391f, 0x3875, 0x397a, 0x3abe, 0x3a35, 0x3354, 0x281c, 0x350c, 0x3449, 0x32c0, 0x3b8b, 0x3b03, 0x3509, 0x393e, 0x3655, 0x3b51, 0x3757, 0x343d, 0x33e4, 0x387e, 0x3434, 0x38ad, 0x3b2f, 0x3664, 0x3305, 0x3bfb, 0x3814, 0x2dd1, 0x2a08, 0x2f04, 0x3905, 0x3a56, 0x36c1, 0x2c11, 0x361b, 0x3bf8, 0x383c, 0x3bc5, 0x3ae3, 0x21e1, 0x39c4, 0x3974, 0x384c, 0x3445, 0x3921, 0x2f24, 0x36f5, 0x3742, 0x3ba1, 0x3b02, 0x3437, 0x3801, 0x31b8, 0x3b4d, 0x3af7, 0x34c6, 0x391d, 0x38df, 0x30e4, 0x3a1a, 0x3851, 0x3a3b, 0x383e, 0x10af, 0x3530, 0x24fc, 0x3b6f, }; -fftval_t input_data_imag[128] = { 0x3b08, 0x3aa7, 0x34ec, 0x2b6a, 0x3b06, 0x3b93, 0x2d7b, 0x37c7, 0x2c6e, 0x3a16, 0x3a20, 0x301c, 0x379b, 0x3866, 0x343e, 0x3afb, 0x36c5, 0x32c7, 0x3850, 0x39d7, 0x3270, 0x34fd, 0x3bf6, 0x3933, 0x3702, 0x3824, 0x2fbf, 0x3331, 0x3569, 0x38b5, 0x335d, 0x330c, 0x2c8b, 0x390c, 0x3353, 0x3b3e, 0x3ae1, 0x2c89, 0x339e, 0x395a, 0x32db, 0x303c, 0x3b7c, 0x3891, 0x3790, 0x3a47, 0x3a76, 0x3218, 0x2e34, 0x36e6, 0x36c7, 0x3779, 0x39d5, 0x3963, 0x3be0, 0x2e4c, 0x3671, 0x356e, 0x3ae5, 0x33f5, 0x3216, 0x372e, 0x36c0, 0x3475, 0x33fe, 0x3b63, 0x3717, 0x3ae4, 0x3867, 0x2a7a, 0x3bff, 0x3ab0, 0x3bc1, 0x3b69, 0x3aca, 0x3152, 0x37c5, 0x32d7, 0x366b, 0x2b81, 0x3610, 0x3be2, 0x343e, 0x3a46, 0x3748, 0x36c5, 0x3ba9, 0x3bf7, 0x3872, 0x39bf, 0x30f4, 0x34bf, 0x3bc0, 0x38a2, 0x3856, 0x39fc, 0x2b51, 0x38ac, 0x3806, 0x3ad2, 0x310a, 0x3bb0, 0x2d21, 0x31f2, 0x38c3, 0x3967, 0x3387, 0x2fac, 0x3b1f, 0x33e1, 0x38c2, 0x38f4, 0x36b5, 0x38ab, 0x382f, 0x3b7a, 0x3289, 0x39bb, 0x33a3, 0x3655, 0x3960, 0x34cd, 0x350f, 0x3a04, 0x2ca5, 0x3755, 0x3bfd, 0x3bf8, }; -fftval_t output_data_real[128] = { 0x53bf, 0xc31e, 0xb830, 0xc2c1, 0x42a7, 0xc20c, 0xb60e, 0x3835, 0x4542, 0xc090, 0xc44a, 0xc46e, 0x3d03, 0xb7ba, 0xbc84, 0xc26c, 0xad06, 0xc03d, 0x44fc, 0xc324, 0x4172, 0x4083, 0x355d, 0xc658, 0x39b3, 0x368c, 0xbce9, 0x43b3, 0x3bc2, 0x3c3d, 0xb67c, 0x3c11, 0x4150, 0xc72e, 0x42b7, 0xbfb9, 0x45cb, 0x46d6, 0x374a, 0xc454, 0xb243, 0xc466, 0x440d, 0x4847, 0x3a5a, 0x417e, 0x3f24, 0xb0d1, 0x44cb, 0xae38, 0xc1df, 0x1014, 0xc3c0, 0xc521, 0xc041, 0xbcaa, 0x432f, 0xba88, 0xba73, 0xbca0, 0xbfaf, 0x3ad7, 0x38d4, 0xb68e, 0x41c6, 0x411f, 0xbc5d, 0x3aa1, 0xbbb3, 0xba80, 0x3ca6, 0xb990, 0xc434, 0xc1da, 0x3c18, 0xc167, 0x3834, 0x40fd, 0x40b2, 0x44f6, 0x31ae, 0x452b, 0xc11c, 0x3df1, 0xc481, 0x3738, 0xc6d0, 0xc501, 0xbbe7, 0x453a, 0x3ef3, 0xc4f4, 0x40de, 0x375d, 0x2f29, 0xc184, 0x34f6, 0xbe57, 0xc013, 0xbc68, 0x4307, 0x3c28, 0x43af, 0x439f, 0x40dd, 0x38f9, 0x455e, 0x47b3, 0x4347, 0x4344, 0xc0f3, 0x453e, 0x3a31, 0xc3d3, 0x44ba, 0xc1a1, 0x3bf2, 0xc279, 0x3796, 0x3a0d, 0xbca1, 0x42a2, 0xc603, 0x40c1, 0x41b0, 0xc34e, 0xc255, 0x4014, }; -fftval_t output_data_imag[128] = { 0x540b, 0x3996, 0x42da, 0x45aa, 0x3c06, 0xc235, 0x4534, 0x4017, 0xc4a3, 0x4106, 0x3da7, 0xc0ea, 0x45de, 0xc44c, 0x3fe9, 0x3e72, 0x431f, 0xbad2, 0x4394, 0x3c7b, 0xc22a, 0x4451, 0x47e5, 0x45aa, 0xc61c, 0x459f, 0x4459, 0x3958, 0x40a0, 0x4569, 0x3744, 0x4196, 0xc0b1, 0x3cb4, 0xc0bd, 0x42b2, 0x3a7d, 0xc2ef, 0xc402, 0xc224, 0x4558, 0xbc9a, 0x3dee, 0x3fe1, 0xc0b8, 0xc3ab, 0x3c37, 0xc140, 0xc089, 0x4488, 0x4461, 0x3efa, 0x3cb7, 0x45dc, 0xc057, 0xb1fb, 0xc193, 0x49a1, 0x4313, 0x3b60, 0xc180, 0xc0c8, 0x45b2, 0xc049, 0xc27d, 0xc4e2, 0xba90, 0x3ef1, 0xc15a, 0x4168, 0xbe47, 0x3a83, 0xc4cc, 0xba9e, 0xb0eb, 0xc199, 0x40a3, 0x406e, 0xc2ce, 0xb137, 0xc21b, 0x3f03, 0x3fce, 0xc401, 0xc40e, 0x3c3c, 0xb764, 0xc961, 0xbd63, 0x42ad, 0x318c, 0xc300, 0xb783, 0xc6c2, 0x2e77, 0x449c, 0xbdc2, 0xb637, 0xc1d1, 0x3200, 0x4157, 0x46e1, 0xbd03, 0xba6b, 0x37d8, 0xc485, 0x3fed, 0xc476, 0xc093, 0x3a2c, 0x40d7, 0x4147, 0xc3fb, 0xb613, 0x414a, 0xbe05, 0x3d67, 0x46d3, 0xc170, 0x45f8, 0x423b, 0x4603, 0xbcc8, 0x4083, 0xba93, 0xbcf8, 0x3c75, 0xbf85, }; -fftval_t tf_real[128] = { 0x3c00, 0x3bfe, 0x3bf6, 0x3bea, 0x3bd9, 0x3bc3, 0x3ba8, 0x3b88, 0x3b64, 0x3b3b, 0x3b0e, 0x3add, 0x3aa7, 0x3a6d, 0x3a2f, 0x39ed, 0x39a8, 0x395f, 0x3913, 0x38c4, 0x3872, 0x381d, 0x378b, 0x36d7, 0x361f, 0x3564, 0x34a5, 0x33c6, 0x323e, 0x30b2, 0x2e46, 0x2a48, 0x0000, 0xaa48, 0xae46, 0xb0b2, 0xb23e, 0xb3c6, 0xb4a5, 0xb564, 0xb61f, 0xb6d7, 0xb78b, 0xb81d, 0xb872, 0xb8c4, 0xb913, 0xb95f, 0xb9a8, 0xb9ed, 0xba2f, 0xba6d, 0xbaa7, 0xbadd, 0xbb0e, 0xbb3b, 0xbb64, 0xbb88, 0xbba8, 0xbbc3, 0xbbd9, 0xbbea, 0xbbf6, 0xbbfe, 0xbc00, 0xbbfe, 0xbbf6, 0xbbea, 0xbbd9, 0xbbc3, 0xbba8, 0xbb88, 0xbb64, 0xbb3b, 0xbb0e, 0xbadd, 0xbaa7, 0xba6d, 0xba2f, 0xb9ed, 0xb9a8, 0xb95f, 0xb913, 0xb8c4, 0xb872, 0xb81d, 0xb78b, 0xb6d7, 0xb61f, 0xb564, 0xb4a5, 0xb3c6, 0xb23e, 0xb0b2, 0xae46, 0xaa48, 0x8000, 0x2a48, 0x2e46, 0x30b2, 0x323e, 0x33c6, 0x34a5, 0x3564, 0x361f, 0x36d7, 0x378b, 0x381d, 0x3872, 0x38c4, 0x3913, 0x395f, 0x39a8, 0x39ed, 0x3a2f, 0x3a6d, 0x3aa7, 0x3add, 0x3b0e, 0x3b3b, 0x3b64, 0x3b88, 0x3ba8, 0x3bc3, 0x3bd9, 0x3bea, 0x3bf6, 0x3bfe, }; -fftval_t tf_imag[128] = { 0x8000, 0xaa48, 0xae46, 0xb0b2, 0xb23e, 0xb3c6, 0xb4a5, 0xb564, 0xb61f, 0xb6d7, 0xb78b, 0xb81d, 0xb872, 0xb8c4, 0xb913, 0xb95f, 0xb9a8, 0xb9ed, 0xba2f, 0xba6d, 0xbaa7, 0xbadd, 0xbb0e, 0xbb3b, 0xbb64, 0xbb88, 0xbba8, 0xbbc3, 0xbbd9, 0xbbea, 0xbbf6, 0xbbfe, 0xbc00, 0xbbfe, 0xbbf6, 0xbbea, 0xbbd9, 0xbbc3, 0xbba8, 0xbb88, 0xbb64, 0xbb3b, 0xbb0e, 0xbadd, 0xbaa7, 0xba6d, 0xba2f, 0xb9ed, 0xb9a8, 0xb95f, 0xb913, 0xb8c4, 0xb872, 0xb81d, 0xb78b, 0xb6d7, 0xb61f, 0xb564, 0xb4a5, 0xb3c6, 0xb23e, 0xb0b2, 0xae46, 0xaa48, 0x8000, 0x2a48, 0x2e46, 0x30b2, 0x323e, 0x33c6, 0x34a5, 0x3564, 0x361f, 0x36d7, 0x378b, 0x381d, 0x3872, 0x38c4, 0x3913, 0x395f, 0x39a8, 0x39ed, 0x3a2f, 0x3a6d, 0x3aa7, 0x3add, 0x3b0e, 0x3b3b, 0x3b64, 0x3b88, 0x3ba8, 0x3bc3, 0x3bd9, 0x3bea, 0x3bf6, 0x3bfe, 0x3c00, 0x3bfe, 0x3bf6, 0x3bea, 0x3bd9, 0x3bc3, 0x3ba8, 0x3b88, 0x3b64, 0x3b3b, 0x3b0e, 0x3add, 0x3aa7, 0x3a6d, 0x3a2f, 0x39ed, 0x39a8, 0x395f, 0x3913, 0x38c4, 0x3872, 0x381d, 0x378b, 0x36d7, 0x361f, 0x3564, 0x34a5, 0x33c6, 0x323e, 0x30b2, 0x2e46, 0x2a48, }; - -#endif diff --git a/benchmarks/vec-fft/dc_data.c b/benchmarks/vec-fft/dc_data.c deleted file mode 100644 index a913bf0..0000000 --- a/benchmarks/vec-fft/dc_data.c +++ /dev/null @@ -1,14 +0,0 @@ -// See LICENSE for license details. - -int input_data_real[1024] = {1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576, 1048576}; - -int input_data_imag[1024] = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; - -int output_data_real[1024] = {1073741824, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; - -int output_data_imag[1024] = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; - -int tf_real[1024] = {1048576, 1048556, 1048497, 1048398, 1048260, 1048082, 1047865, 1047608, 1047312, 1046977, 1046602, 1046188, 1045734, 1045241, 1044709, 1044137, 1043526, 1042876, 1042186, 1041458, 1040690, 1039883, 1039036, 1038151, 1037226, 1036263, 1035260, 1034218, 1033138, 1032019, 1030860, 1029663, 1028427, 1027153, 1025840, 1024488, 1023097, 1021668, 1020201, 1018695, 1017151, 1015569, 1013948, 1012289, 1010592, 1008857, 1007084, 1005273, 1003424, 1001538, 999613, 997651, 995652, 993615, 991541, 989429, 987280, 985094, 982871, 980610, 978313, 975979, 973609, 971201, 968757, 966277, 963760, 961207, 958618, 955993, 953331, 950634, 947901, 945132, 942328, 939488, 936613, 933703, 930757, 927777, 924761, 921711, 918626, 915506, 912352, 909163, 905941, 902684, 899393, 896068, 892710, 889318, 885893, 882434, 878942, 875417, 871859, 868268, 864644, 860988, 857299, 853578, 849825, 846040, 842224, 838375, 834495, 830583, 826641, 822667, 818662, 814626, 810560, 806463, 802336, 798178, 793991, 789773, 785526, 781249, 776943, 772608, 768243, 763850, 759428, 754977, 750498, 745990, 741455, 736891, 732300, 727681, 723035, 718362, 713661, 708934, 704180, 699400, 694593, 689760, 684901, 680016, 675106, 670170, 665209, 660223, 655212, 650177, 645117, 640032, 634924, 629792, 624635, 619456, 614253, 609027, 603778, 598506, 593212, 587896, 582557, 577197, 571814, 566410, 560985, 555539, 550072, 544584, 539075, 533547, 527998, 522429, 516841, 511233, 505606, 499960, 494295, 488611, 482909, 477189, 471451, 465695, 459922, 454131, 448324, 442499, 436658, 430800, 424926, 419036, 413130, 407209, 401272, 395320, 389354, 383373, 377377, 371367, 365343, 359305, 353254, 347190, 341112, 335022, 328919, 322803, 316676, 310536, 304385, 298222, 292049, 285864, 279668, 273462, 267246, 261019, 254783, 248537, 242281, 236017, 229744, 223462, 217172, 210873, 204567, 198252, 191931, 185602, 179266, 172923, 166574, 160219, 153858, 147490, 141118, 134740, 128356, 121968, 115576, 109179, 102778, 96373, 89965, 83553, 77138, 70720, 64299, 57876, 51451, 45024, 38595, 32164, 25733, 19300, 12867, 6433, 0, -6433, -12867, -19300, -25733, -32164, -38595, -45024, -51451, -57876, -64299, -70720, -77138, -83553, -89965, -96373, -102778, -109179, -115576, -121968, -128356, -134740, -141118, -147490, -153858, -160219, -166574, -172923, -179266, -185602, -191931, -198252, -204567, -210873, -217172, -223462, -229744, -236017, -242281, -248537, -254783, -261019, -267246, -273462, -279668, -285864, -292049, -298222, -304385, -310536, -316676, -322803, -328919, -335022, -341112, -347190, -353254, -359305, -365343, -371367, -377377, -383373, -389354, -395320, -401272, -407209, -413130, -419036, -424926, -430800, -436658, -442499, -448324, -454131, -459922, -465695, -471451, -477189, -482909, -488611, -494295, -499960, -505606, -511233, -516841, -522429, -527998, -533547, -539075, -544584, -550072, -555539, -560985, -566410, -571814, -577197, -582557, -587896, -593212, -598506, -603778, -609027, -614253, -619456, -624635, -629792, -634924, -640032, -645117, -650177, -655212, -660223, -665209, -670170, -675106, -680016, -684901, -689760, -694593, -699400, -704180, -708934, -713661, -718362, -723035, -727681, -732300, -736891, -741455, -745990, -750498, -754977, -759428, -763850, -768243, -772608, -776943, -781249, -785526, -789773, -793991, -798178, -802336, -806463, -810560, -814626, -818662, -822667, -826641, -830583, -834495, -838375, -842224, -846040, -849825, -853578, -857299, -860988, -864644, -868268, -871859, -875417, -878942, -882434, -885893, -889318, -892710, -896068, -899393, -902684, -905941, -909163, -912352, -915506, -918626, -921711, -924761, -927777, -930757, -933703, -936613, -939488, -942328, -945132, -947901, -950634, -953331, -955993, -958618, -961207, -963760, -966277, -968757, -971201, -973609, -975979, -978313, -980610, -982871, -985094, -987280, -989429, -991541, -993615, -995652, -997651, -999613, -1001538, -1003424, -1005273, -1007084, -1008857, -1010592, -1012289, -1013948, -1015569, -1017151, -1018695, -1020201, -1021668, -1023097, -1024488, -1025840, -1027153, -1028427, -1029663, -1030860, -1032019, -1033138, -1034218, -1035260, -1036263, -1037226, -1038151, -1039036, -1039883, -1040690, -1041458, -1042186, -1042876, -1043526, -1044137, -1044709, -1045241, -1045734, -1046188, -1046602, -1046977, -1047312, -1047608, -1047865, -1048082, -1048260, -1048398, -1048497, -1048556, -1048576, -1048556, -1048497, -1048398, -1048260, -1048082, -1047865, -1047608, -1047312, -1046977, -1046602, -1046188, -1045734, -1045241, -1044709, -1044137, -1043526, -1042876, -1042186, -1041458, -1040690, -1039883, -1039036, -1038151, -1037226, -1036263, -1035260, -1034218, -1033138, -1032019, -1030860, -1029663, -1028427, -1027153, -1025840, -1024488, -1023097, -1021668, -1020201, -1018695, -1017151, -1015569, -1013948, -1012289, -1010592, -1008857, -1007084, -1005273, -1003424, -1001538, -999613, -997651, -995652, -993615, -991541, -989429, -987280, -985094, -982871, -980610, -978313, -975979, -973609, -971201, -968757, -966277, -963760, -961207, -958618, -955993, -953331, -950634, -947901, -945132, -942328, -939488, -936613, -933703, -930757, -927777, -924761, -921711, -918626, -915506, -912352, -909163, -905941, -902684, -899393, -896068, -892710, -889318, -885893, -882434, -878942, -875417, -871859, -868268, -864644, -860988, -857299, -853578, -849825, -846040, -842224, -838375, -834495, -830583, -826641, -822667, -818662, -814626, -810560, -806463, -802336, -798178, -793991, -789773, -785526, -781249, -776943, -772608, -768243, -763850, -759428, -754977, -750498, -745990, -741455, -736891, -732300, -727681, -723035, -718362, -713661, -708934, -704180, -699400, -694593, -689760, -684901, -680016, -675106, -670170, -665209, -660223, -655212, -650177, -645117, -640032, -634924, -629792, -624635, -619456, -614253, -609027, -603778, -598506, -593212, -587896, -582557, -577197, -571814, -566410, -560985, -555539, -550072, -544584, -539075, -533547, -527998, -522429, -516841, -511233, -505606, -499960, -494295, -488611, -482909, -477189, -471451, -465695, -459922, -454131, -448324, -442499, -436658, -430800, -424926, -419036, -413130, -407209, -401272, -395320, -389354, -383373, -377377, -371367, -365343, -359305, -353254, -347190, -341112, -335022, -328919, -322803, -316676, -310536, -304385, -298222, -292049, -285864, -279668, -273462, -267246, -261019, -254783, -248537, -242281, -236017, -229744, -223462, -217172, -210873, -204567, -198252, -191931, -185602, -179266, -172923, -166574, -160219, -153858, -147490, -141118, -134740, -128356, -121968, -115576, -109179, -102778, -96373, -89965, -83553, -77138, -70720, -64299, -57876, -51451, -45024, -38595, -32164, -25733, -19300, -12867, -6433, 0, 6433, 12867, 19300, 25733, 32164, 38595, 45024, 51451, 57876, 64299, 70720, 77138, 83553, 89965, 96373, 102778, 109179, 115576, 121968, 128356, 134740, 141118, 147490, 153858, 160219, 166574, 172923, 179266, 185602, 191931, 198252, 204567, 210873, 217172, 223462, 229744, 236017, 242281, 248537, 254783, 261019, 267246, 273462, 279668, 285864, 292049, 298222, 304385, 310536, 316676, 322803, 328919, 335022, 341112, 347190, 353254, 359305, 365343, 371367, 377377, 383373, 389354, 395320, 401272, 407209, 413130, 419036, 424926, 430800, 436658, 442499, 448324, 454131, 459922, 465695, 471451, 477189, 482909, 488611, 494295, 499960, 505606, 511233, 516841, 522429, 527998, 533547, 539075, 544584, 550072, 555539, 560985, 566410, 571814, 577197, 582557, 587896, 593212, 598506, 603778, 609027, 614253, 619456, 624635, 629792, 634924, 640032, 645117, 650177, 655212, 660223, 665209, 670170, 675106, 680016, 684901, 689760, 694593, 699400, 704180, 708934, 713661, 718362, 723035, 727681, 732300, 736891, 741455, 745990, 750498, 754977, 759428, 763850, 768243, 772608, 776943, 781249, 785526, 789773, 793991, 798178, 802336, 806463, 810560, 814626, 818662, 822667, 826641, 830583, 834495, 838375, 842224, 846040, 849825, 853578, 857299, 860988, 864644, 868268, 871859, 875417, 878942, 882434, 885893, 889318, 892710, 896068, 899393, 902684, 905941, 909163, 912352, 915506, 918626, 921711, 924761, 927777, 930757, 933703, 936613, 939488, 942328, 945132, 947901, 950634, 953331, 955993, 958618, 961207, 963760, 966277, 968757, 971201, 973609, 975979, 978313, 980610, 982871, 985094, 987280, 989429, 991541, 993615, 995652, 997651, 999613, 1001538, 1003424, 1005273, 1007084, 1008857, 1010592, 1012289, 1013948, 1015569, 1017151, 1018695, 1020201, 1021668, 1023097, 1024488, 1025840, 1027153, 1028427, 1029663, 1030860, 1032019, 1033138, 1034218, 1035260, 1036263, 1037226, 1038151, 1039036, 1039883, 1040690, 1041458, 1042186, 1042876, 1043526, 1044137, 1044709, 1045241, 1045734, 1046188, 1046602, 1046977, 1047312, 1047608, 1047865, 1048082, 1048260, 1048398, 1048497, 1048556}; - -int tf_imag[1024] = {0, -6433, -12867, -19300, -25733, -32164, -38595, -45024, -51451, -57876, -64299, -70720, -77138, -83553, -89965, -96373, -102778, -109179, -115576, -121968, -128356, -134740, -141118, -147490, -153858, -160219, -166574, -172923, -179266, -185602, -191931, -198252, -204567, -210873, -217172, -223462, -229744, -236017, -242281, -248537, -254783, -261019, -267246, -273462, -279668, -285864, -292049, -298222, -304385, -310536, -316676, -322803, -328919, -335022, -341112, -347190, -353254, -359305, -365343, -371367, -377377, -383373, -389354, -395320, -401272, -407209, -413130, -419036, -424926, -430800, -436658, -442499, -448324, -454131, -459922, -465695, -471451, -477189, -482909, -488611, -494295, -499960, -505606, -511233, -516841, -522429, -527998, -533547, -539075, -544584, -550072, -555539, -560985, -566410, -571814, -577197, -582557, -587896, -593212, -598506, -603778, -609027, -614253, -619456, -624635, -629792, -634924, -640032, -645117, -650177, -655212, -660223, -665209, -670170, -675106, -680016, -684901, -689760, -694593, -699400, -704180, -708934, -713661, -718362, -723035, -727681, -732300, -736891, -741455, -745990, -750498, -754977, -759428, -763850, -768243, -772608, -776943, -781249, -785526, -789773, -793991, -798178, -802336, -806463, -810560, -814626, -818662, -822667, -826641, -830583, -834495, -838375, -842224, -846040, -849825, -853578, -857299, -860988, -864644, -868268, -871859, -875417, -878942, -882434, -885893, -889318, -892710, -896068, -899393, -902684, -905941, -909163, -912352, -915506, -918626, -921711, -924761, -927777, -930757, -933703, -936613, -939488, -942328, -945132, -947901, -950634, -953331, -955993, -958618, -961207, -963760, -966277, -968757, -971201, -973609, -975979, -978313, -980610, -982871, -985094, -987280, -989429, -991541, -993615, -995652, -997651, -999613, -1001538, -1003424, -1005273, -1007084, -1008857, -1010592, -1012289, -1013948, -1015569, -1017151, -1018695, -1020201, -1021668, -1023097, -1024488, -1025840, -1027153, -1028427, -1029663, -1030860, -1032019, -1033138, -1034218, -1035260, -1036263, -1037226, -1038151, -1039036, -1039883, -1040690, -1041458, -1042186, -1042876, -1043526, -1044137, -1044709, -1045241, -1045734, -1046188, -1046602, -1046977, -1047312, -1047608, -1047865, -1048082, -1048260, -1048398, -1048497, -1048556, -1048576, -1048556, -1048497, -1048398, -1048260, -1048082, -1047865, -1047608, -1047312, -1046977, -1046602, -1046188, -1045734, -1045241, -1044709, -1044137, -1043526, -1042876, -1042186, -1041458, -1040690, -1039883, -1039036, -1038151, -1037226, -1036263, -1035260, -1034218, -1033138, -1032019, -1030860, -1029663, -1028427, -1027153, -1025840, -1024488, -1023097, -1021668, -1020201, -1018695, -1017151, -1015569, -1013948, -1012289, -1010592, -1008857, -1007084, -1005273, -1003424, -1001538, -999613, -997651, -995652, -993615, -991541, -989429, -987280, -985094, -982871, -980610, -978313, -975979, -973609, -971201, -968757, -966277, -963760, -961207, -958618, -955993, -953331, -950634, -947901, -945132, -942328, -939488, -936613, -933703, -930757, -927777, -924761, -921711, -918626, -915506, -912352, -909163, -905941, -902684, -899393, -896068, -892710, -889318, -885893, -882434, -878942, -875417, -871859, -868268, -864644, -860988, -857299, -853578, -849825, -846040, -842224, -838375, -834495, -830583, -826641, -822667, -818662, -814626, -810560, -806463, -802336, -798178, -793991, -789773, -785526, -781249, -776943, -772608, -768243, -763850, -759428, -754977, -750498, -745990, -741455, -736891, -732300, -727681, -723035, -718362, -713661, -708934, -704180, -699400, -694593, -689760, -684901, -680016, -675106, -670170, -665209, -660223, -655212, -650177, -645117, -640032, -634924, -629792, -624635, -619456, -614253, -609027, -603778, -598506, -593212, -587896, -582557, -577197, -571814, -566410, -560985, -555539, -550072, -544584, -539075, -533547, -527998, -522429, -516841, -511233, -505606, -499960, -494295, -488611, -482909, -477189, -471451, -465695, -459922, -454131, -448324, -442499, -436658, -430800, -424926, -419036, -413130, -407209, -401272, -395320, -389354, -383373, -377377, -371367, -365343, -359305, -353254, -347190, -341112, -335022, -328919, -322803, -316676, -310536, -304385, -298222, -292049, -285864, -279668, -273462, -267246, -261019, -254783, -248537, -242281, -236017, -229744, -223462, -217172, -210873, -204567, -198252, -191931, -185602, -179266, -172923, -166574, -160219, -153858, -147490, -141118, -134740, -128356, -121968, -115576, -109179, -102778, -96373, -89965, -83553, -77138, -70720, -64299, -57876, -51451, -45024, -38595, -32164, -25733, -19300, -12867, -6433, 0, 6433, 12867, 19300, 25733, 32164, 38595, 45024, 51451, 57876, 64299, 70720, 77138, 83553, 89965, 96373, 102778, 109179, 115576, 121968, 128356, 134740, 141118, 147490, 153858, 160219, 166574, 172923, 179266, 185602, 191931, 198252, 204567, 210873, 217172, 223462, 229744, 236017, 242281, 248537, 254783, 261019, 267246, 273462, 279668, 285864, 292049, 298222, 304385, 310536, 316676, 322803, 328919, 335022, 341112, 347190, 353254, 359305, 365343, 371367, 377377, 383373, 389354, 395320, 401272, 407209, 413130, 419036, 424926, 430800, 436658, 442499, 448324, 454131, 459922, 465695, 471451, 477189, 482909, 488611, 494295, 499960, 505606, 511233, 516841, 522429, 527998, 533547, 539075, 544584, 550072, 555539, 560985, 566410, 571814, 577197, 582557, 587896, 593212, 598506, 603778, 609027, 614253, 619456, 624635, 629792, 634924, 640032, 645117, 650177, 655212, 660223, 665209, 670170, 675106, 680016, 684901, 689760, 694593, 699400, 704180, 708934, 713661, 718362, 723035, 727681, 732300, 736891, 741455, 745990, 750498, 754977, 759428, 763850, 768243, 772608, 776943, 781249, 785526, 789773, 793991, 798178, 802336, 806463, 810560, 814626, 818662, 822667, 826641, 830583, 834495, 838375, 842224, 846040, 849825, 853578, 857299, 860988, 864644, 868268, 871859, 875417, 878942, 882434, 885893, 889318, 892710, 896068, 899393, 902684, 905941, 909163, 912352, 915506, 918626, 921711, 924761, 927777, 930757, 933703, 936613, 939488, 942328, 945132, 947901, 950634, 953331, 955993, 958618, 961207, 963760, 966277, 968757, 971201, 973609, 975979, 978313, 980610, 982871, 985094, 987280, 989429, 991541, 993615, 995652, 997651, 999613, 1001538, 1003424, 1005273, 1007084, 1008857, 1010592, 1012289, 1013948, 1015569, 1017151, 1018695, 1020201, 1021668, 1023097, 1024488, 1025840, 1027153, 1028427, 1029663, 1030860, 1032019, 1033138, 1034218, 1035260, 1036263, 1037226, 1038151, 1039036, 1039883, 1040690, 1041458, 1042186, 1042876, 1043526, 1044137, 1044709, 1045241, 1045734, 1046188, 1046602, 1046977, 1047312, 1047608, 1047865, 1048082, 1048260, 1048398, 1048497, 1048556, 1048576, 1048556, 1048497, 1048398, 1048260, 1048082, 1047865, 1047608, 1047312, 1046977, 1046602, 1046188, 1045734, 1045241, 1044709, 1044137, 1043526, 1042876, 1042186, 1041458, 1040690, 1039883, 1039036, 1038151, 1037226, 1036263, 1035260, 1034218, 1033138, 1032019, 1030860, 1029663, 1028427, 1027153, 1025840, 1024488, 1023097, 1021668, 1020201, 1018695, 1017151, 1015569, 1013948, 1012289, 1010592, 1008857, 1007084, 1005273, 1003424, 1001538, 999613, 997651, 995652, 993615, 991541, 989429, 987280, 985094, 982871, 980610, 978313, 975979, 973609, 971201, 968757, 966277, 963760, 961207, 958618, 955993, 953331, 950634, 947901, 945132, 942328, 939488, 936613, 933703, 930757, 927777, 924761, 921711, 918626, 915506, 912352, 909163, 905941, 902684, 899393, 896068, 892710, 889318, 885893, 882434, 878942, 875417, 871859, 868268, 864644, 860988, 857299, 853578, 849825, 846040, 842224, 838375, 834495, 830583, 826641, 822667, 818662, 814626, 810560, 806463, 802336, 798178, 793991, 789773, 785526, 781249, 776943, 772608, 768243, 763850, 759428, 754977, 750498, 745990, 741455, 736891, 732300, 727681, 723035, 718362, 713661, 708934, 704180, 699400, 694593, 689760, 684901, 680016, 675106, 670170, 665209, 660223, 655212, 650177, 645117, 640032, 634924, 629792, 624635, 619456, 614253, 609027, 603778, 598506, 593212, 587896, 582557, 577197, 571814, 566410, 560985, 555539, 550072, 544584, 539075, 533547, 527998, 522429, 516841, 511233, 505606, 499960, 494295, 488611, 482909, 477189, 471451, 465695, 459922, 454131, 448324, 442499, 436658, 430800, 424926, 419036, 413130, 407209, 401272, 395320, 389354, 383373, 377377, 371367, 365343, 359305, 353254, 347190, 341112, 335022, 328919, 322803, 316676, 310536, 304385, 298222, 292049, 285864, 279668, 273462, 267246, 261019, 254783, 248537, 242281, 236017, 229744, 223462, 217172, 210873, 204567, 198252, 191931, 185602, 179266, 172923, 166574, 160219, 153858, 147490, 141118, 134740, 128356, 121968, 115576, 109179, 102778, 96373, 89965, 83553, 77138, 70720, 64299, 57876, 51451, 45024, 38595, 32164, 25733, 19300, 12867, 6433}; - diff --git a/benchmarks/vec-fft/fft-data-gen b/benchmarks/vec-fft/fft-data-gen deleted file mode 100755 index a8a14d0..0000000 --- a/benchmarks/vec-fft/fft-data-gen +++ /dev/null @@ -1,84 +0,0 @@ -#!/usr/bin/env python - -import sys -import numpy - -def array_print(name, data): - if type_scalar == numpy.float16: - a = ['{:#04x}'.format(h.astype(int)) for h in data.view(dtype=numpy.uint16)] - else: - a = [repr(x) for x in data] - print 'fftval_t {}[{}] = {{ {} }};'.format(name, len(a), ', '.join(a)) - -def array_permute(data, radix = 2): - logradix = int(numpy.log2(radix)) - term_mask = int(radix - 1) -# num_term = int(numpy.log2(len(data)) / logradix) - for i in xrange(0, len(data)): - # Obtain permuted address - i_left = i - permuted = 0 - cur_fft_size = radix - while cur_fft_size <= len(data): - permuted = (permuted << logradix) | (i_left & term_mask) - i_left >>= logradix - cur_fft_size <<= logradix - # Permute only once and when addresses are different - if i < permuted: - tmp = data[i] - data[i] = data[permuted] - data[permuted] = tmp - -fft_size = 1024 -type_scalar = numpy.float16 -permute = True - -if len(sys.argv) > 1: - type_scalar = { - '16' : numpy.float16, - '32' : numpy.float32, - '64' : numpy.float64 }.get(sys.argv[1].strip(), None) - if type_scalar == None: - sys.exit('Invalid datatype') - -if len(sys.argv) > 2: - fft_size = sys.argv[2].strip() - if not fft_size.isdigit(): - sys.exit('Invalid FFT size') - fft_size = int(fft_size) - -numpy.random.seed(seed=0) - -print '#include "fft_const.h"' - -# Generate input data -input_real = numpy.random.uniform(size=fft_size).astype(type_scalar) -input_imag = numpy.random.uniform(size=fft_size).astype(type_scalar) - -# Compute reference FFT output -type_cmplx = numpy.complex128 if (type_scalar == numpy.float64) else numpy.complex64 -input_cmplx = input_real.astype(type_cmplx) -input_cmplx.imag = input_imag -output_cmplx = numpy.fft.fft(input_cmplx) - -if permute: - array_permute(input_real) - array_permute(input_imag) - -array_print('input_data_real', input_real) -array_print('input_data_imag', input_imag) - -output_real = output_cmplx.real.astype(type_scalar) -output_imag = output_cmplx.imag.astype(type_scalar) - -array_print('output_data_real', output_real) -array_print('output_data_imag', output_imag) - -# Generate twiddle factors (TFs) -# Negate sine since twiddle factor angles are generated *clockwise* from 0 -rad = [(2.0 * numpy.pi * (float(i) / fft_size)) for i in xrange(fft_size)] -tf_real = numpy.cos(rad).astype(type_scalar) -tf_imag = -numpy.sin(rad).astype(type_scalar) - -array_print('tf_real', tf_real) -array_print('tf_imag', tf_imag) diff --git a/benchmarks/vec-fft/fft_const.h b/benchmarks/vec-fft/fft_const.h deleted file mode 100644 index c9e30ea..0000000 --- a/benchmarks/vec-fft/fft_const.h +++ /dev/null @@ -1,71 +0,0 @@ -// See LICENSE for license details. - -#ifndef __FFT_CONST_H -#define __FFT_CONST_H - -#ifndef FFT_SIZE -#define FFT_SIZE 1024 -#endif /* FFT_SIZE */ - -#if 0 - #define FFT_FIXED - #define DATA_IN_PERMUTED -#else -// #define DATA_IN_UNPERMUTED - #define FFT_FLOATING - #define FFT_FLOATING_PREC 64 -#endif - -#if defined(FFT_FIXED) - #define FIX_PT 20 - #define DATA_WIDTH 32 -#elif defined(FFT_FLOATING) - #if FFT_FLOATING_PREC == 16 - #define FP_HALF - #elif FFT_FLOATING_PREC == 32 - #define FP_SINGLE - #elif FFT_FLOATING_PREC == 64 - #define FP_DOUBLE - #else - #error "Unsupported floating-point configuration" - #endif - #define DATA_WIDTH FFT_FLOATING_PREC -#else - #error "Define fixed or floating point in fft_const.h" -#endif - -#if !defined(__ASSEMBLY__) - -#include <stdint.h> -#include <inttypes.h> - -#if defined(FFT_FIXED) - typedef int fftval_t; - typedef int fftbit_t; - #define FFT_PRI "%08x" -#elif defined(FFT_FLOATING) - #if defined(FP_HALF) - typedef uint16_t fftval_t; - typedef uint16_t fftbit_t; - #define FFT_PRI "%04" PRIx16 - #elif defined(FP_SINGLE) - typedef float fftval_t; - typedef uint32_t fftbit_t; - #define FFT_PRI "%08" PRIx32 - #elif defined(FP_DOUBLE) - typedef double fftval_t; - typedef uint64_t fftbit_t; - #define FFT_PRI "%016" PRIx64 - #endif -#endif - -extern fftval_t input_data_real[FFT_SIZE]; -extern fftval_t input_data_imag[FFT_SIZE]; -extern fftval_t output_data_real[FFT_SIZE]; -extern fftval_t output_data_imag[FFT_SIZE]; -extern fftval_t tf_real[FFT_SIZE]; -extern fftval_t tf_imag[FFT_SIZE]; - -#endif /* __ASSEMBLY__ */ - -#endif /* __FFT_CONST_H */ diff --git a/benchmarks/vec-fft/fft_cos_data.c b/benchmarks/vec-fft/fft_cos_data.c deleted file mode 100644 index 909e0ba..0000000 --- a/benchmarks/vec-fft/fft_cos_data.c +++ /dev/null @@ -1,8 +0,0 @@ -// See LICENSE for license details. - -float input_data_real[ 1024 ] = { 1.0, 0.999981175283, 0.999924701839, 0.999830581796, 0.999698818696, 0.999529417501, 0.999322384588, 0.999077727753, 0.998795456205, 0.998475580573, 0.9981181129, 0.997723066644, 0.997290456679, 0.996820299291, 0.996312612183, 0.995767414468, 0.995184726672, 0.994564570734, 0.993906970002, 0.993211949235, 0.992479534599, 0.991709753669, 0.990902635428, 0.990058210262, 0.989176509965, 0.988257567731, 0.987301418158, 0.986308097245, 0.985277642389, 0.984210092387, 0.983105487431, 0.98196386911, 0.980785280403, 0.979569765685, 0.97831737072, 0.977028142658, 0.975702130039, 0.974339382786, 0.972939952206, 0.971503890986, 0.970031253195, 0.968522094274, 0.966976471045, 0.965394441698, 0.963776065795, 0.962121404269, 0.960430519416, 0.958703474896, 0.956940335732, 0.955141168306, 0.953306040354, 0.951435020969, 0.949528180593, 0.947585591018, 0.945607325381, 0.943593458162, 0.941544065183, 0.939459223602, 0.937339011913, 0.935183509939, 0.932992798835, 0.930766961079, 0.928506080473, 0.926210242138, 0.923879532511, 0.921514039342, 0.91911385169, 0.916679059921, 0.914209755704, 0.911706032005, 0.909167983091, 0.906595704515, 0.903989293123, 0.901348847046, 0.898674465694, 0.895966249756, 0.893224301196, 0.890448723245, 0.887639620403, 0.884797098431, 0.881921264348, 0.879012226429, 0.876070094195, 0.873094978418, 0.870086991109, 0.867046245516, 0.863972856122, 0.860866938638, 0.85772861, 0.854557988365, 0.851355193105, 0.848120344803, 0.84485356525, 0.841554977437, 0.838224705555, 0.834862874986, 0.831469612303, 0.828045045258, 0.824589302785, 0.821102514991, 0.817584813152, 0.814036329706, 0.810457198253, 0.806847553544, 0.803207531481, 0.799537269108, 0.795836904609, 0.7921065773, 0.788346427627, 0.784556597156, 0.780737228572, 0.776888465673, 0.773010453363, 0.769103337646, 0.765167265622, 0.761202385484, 0.757208846506, 0.753186799044, 0.749136394523, 0.745057785441, 0.740951125355, 0.736816568877, 0.732654271672, 0.728464390448, 0.724247082951, 0.720002507961, 0.715730825284, 0.711432195745, 0.707106781187, 0.702754744457, 0.698376249409, 0.69397146089, 0.689540544737, 0.685083667773, 0.680600997795, 0.676092703575, 0.671558954847, 0.666999922304, 0.66241577759, 0.657806693297, 0.653172842954, 0.648514401022, 0.64383154289, 0.639124444864, 0.634393284164, 0.629638238915, 0.624859488142, 0.620057211763, 0.615231590581, 0.610382806276, 0.605511041404, 0.600616479384, 0.595699304492, 0.590759701859, 0.585797857456, 0.580813958096, 0.575808191418, 0.570780745887, 0.565731810784, 0.560661576197, 0.55557023302, 0.550457972937, 0.545324988422, 0.54017147273, 0.534997619887, 0.529803624686, 0.524589682678, 0.519355990166, 0.514102744193, 0.508830142543, 0.503538383726, 0.498227666973, 0.49289819223, 0.487550160148, 0.482183772079, 0.476799230063, 0.471396736826, 0.465976495768, 0.460538710958, 0.455083587126, 0.449611329655, 0.44412214457, 0.438616238539, 0.433093818853, 0.42755509343, 0.4220002708, 0.416429560098, 0.410843171058, 0.405241314005, 0.399624199846, 0.393992040061, 0.388345046699, 0.382683432365, 0.377007410216, 0.371317193952, 0.365612997805, 0.359895036535, 0.35416352542, 0.348418680249, 0.342660717312, 0.336889853392, 0.33110630576, 0.325310292162, 0.319502030816, 0.313681740399, 0.307849640042, 0.302005949319, 0.296150888244, 0.290284677254, 0.284407537211, 0.278519689385, 0.27262135545, 0.266712757475, 0.260794117915, 0.254865659605, 0.248927605746, 0.242980179903, 0.237023605994, 0.231058108281, 0.22508391136, 0.219101240157, 0.213110319916, 0.207111376192, 0.201104634842, 0.195090322016, 0.18906866415, 0.183039887955, 0.177004220412, 0.17096188876, 0.16491312049, 0.158858143334, 0.152797185258, 0.146730474455, 0.140658239333, 0.134580708507, 0.128498110794, 0.122410675199, 0.116318630912, 0.110222207294, 0.104121633872, 0.0980171403296, 0.0919089564971, 0.0857973123444, 0.0796824379714, 0.0735645635997, 0.0674439195637, 0.0613207363022, 0.0551952443497, 0.0490676743274, 0.0429382569349, 0.0368072229414, 0.0306748031766, 0.0245412285229, 0.0184067299058, 0.0122715382857, 0.00613588464915, 6.12323399574e-17, -0.00613588464915, -0.0122715382857, -0.0184067299058, -0.0245412285229, -0.0306748031766, -0.0368072229414, -0.0429382569349, -0.0490676743274, -0.0551952443497, -0.0613207363022, -0.0674439195637, -0.0735645635997, -0.0796824379714, -0.0857973123444, -0.0919089564971, -0.0980171403296, -0.104121633872, -0.110222207294, -0.116318630912, -0.122410675199, -0.128498110794, -0.134580708507, -0.140658239333, -0.146730474455, -0.152797185258, -0.158858143334, -0.16491312049, -0.17096188876, -0.177004220412, -0.183039887955, -0.18906866415, -0.195090322016, -0.201104634842, -0.207111376192, -0.213110319916, -0.219101240157, -0.22508391136, -0.231058108281, -0.237023605994, -0.242980179903, -0.248927605746, -0.254865659605, -0.260794117915, -0.266712757475, -0.27262135545, -0.278519689385, -0.284407537211, -0.290284677254, -0.296150888244, -0.302005949319, -0.307849640042, -0.313681740399, -0.319502030816, -0.325310292162, -0.33110630576, -0.336889853392, -0.342660717312, -0.348418680249, -0.35416352542, -0.359895036535, -0.365612997805, -0.371317193952, -0.377007410216, -0.382683432365, -0.388345046699, -0.393992040061, -0.399624199846, -0.405241314005, -0.410843171058, -0.416429560098, -0.4220002708, -0.42755509343, -0.433093818853, -0.438616238539, -0.44412214457, -0.449611329655, -0.455083587126, -0.460538710958, -0.465976495768, -0.471396736826, -0.476799230063, -0.482183772079, -0.487550160148, -0.49289819223, -0.498227666973, -0.503538383726, -0.508830142543, -0.514102744193, -0.519355990166, -0.524589682678, -0.529803624686, -0.534997619887, -0.54017147273, -0.545324988422, -0.550457972937, -0.55557023302, -0.560661576197, -0.565731810784, -0.570780745887, -0.575808191418, -0.580813958096, -0.585797857456, -0.590759701859, -0.595699304492, -0.600616479384, -0.605511041404, -0.610382806276, -0.615231590581, -0.620057211763, -0.624859488142, -0.629638238915, -0.634393284164, -0.639124444864, -0.64383154289, -0.648514401022, -0.653172842954, -0.657806693297, -0.66241577759, -0.666999922304, -0.671558954847, -0.676092703575, -0.680600997795, -0.685083667773, -0.689540544737, -0.69397146089, -0.698376249409, -0.702754744457, -0.707106781187, -0.711432195745, -0.715730825284, -0.720002507961, -0.724247082951, -0.728464390448, -0.732654271672, -0.736816568877, -0.740951125355, -0.745057785441, -0.749136394523, -0.753186799044, -0.757208846506, -0.761202385484, -0.765167265622, -0.769103337646, -0.773010453363, -0.776888465673, -0.780737228572, -0.784556597156, -0.788346427627, -0.7921065773, -0.795836904609, -0.799537269108, -0.803207531481, -0.806847553544, -0.810457198253, -0.814036329706, -0.817584813152, -0.821102514991, -0.824589302785, -0.828045045258, -0.831469612303, -0.834862874986, -0.838224705555, -0.841554977437, -0.84485356525, -0.848120344803, -0.851355193105, -0.854557988365, -0.85772861, -0.860866938638, -0.863972856122, -0.867046245516, -0.870086991109, -0.873094978418, -0.876070094195, -0.879012226429, -0.881921264348, -0.884797098431, -0.887639620403, -0.890448723245, -0.893224301196, -0.895966249756, -0.898674465694, -0.901348847046, -0.903989293123, -0.906595704515, -0.909167983091, -0.911706032005, -0.914209755704, -0.916679059921, -0.91911385169, -0.921514039342, -0.923879532511, -0.926210242138, -0.928506080473, -0.930766961079, -0.932992798835, -0.935183509939, -0.937339011913, -0.939459223602, -0.941544065183, -0.943593458162, -0.945607325381, -0.947585591018, -0.949528180593, -0.951435020969, -0.953306040354, -0.955141168306, -0.956940335732, -0.958703474896, -0.960430519416, -0.962121404269, -0.963776065795, -0.965394441698, -0.966976471045, -0.968522094274, -0.970031253195, -0.971503890986, -0.972939952206, -0.974339382786, -0.975702130039, -0.977028142658, -0.97831737072, -0.979569765685, -0.980785280403, -0.98196386911, -0.983105487431, -0.984210092387, -0.985277642389, -0.986308097245, -0.987301418158, -0.988257567731, -0.989176509965, -0.990058210262, -0.990902635428, -0.991709753669, -0.992479534599, -0.993211949235, -0.993906970002, -0.994564570734, -0.995184726672, -0.995767414468, -0.996312612183, -0.996820299291, -0.997290456679, -0.997723066644, -0.9981181129, -0.998475580573, -0.998795456205, -0.999077727753, -0.999322384588, -0.999529417501, -0.999698818696, -0.999830581796, -0.999924701839, -0.999981175283, -1.0, -0.999981175283, -0.999924701839, -0.999830581796, -0.999698818696, -0.999529417501, -0.999322384588, -0.999077727753, -0.998795456205, -0.998475580573, -0.9981181129, -0.997723066644, -0.997290456679, -0.996820299291, -0.996312612183, -0.995767414468, -0.995184726672, -0.994564570734, -0.993906970002, -0.993211949235, -0.992479534599, -0.991709753669, -0.990902635428, -0.990058210262, -0.989176509965, -0.988257567731, -0.987301418158, -0.986308097245, -0.985277642389, -0.984210092387, -0.983105487431, -0.98196386911, -0.980785280403, -0.979569765685, -0.97831737072, -0.977028142658, -0.975702130039, -0.974339382786, -0.972939952206, -0.971503890986, -0.970031253195, -0.968522094274, -0.966976471045, -0.965394441698, -0.963776065795, -0.962121404269, -0.960430519416, -0.958703474896, -0.956940335732, -0.955141168306, -0.953306040354, -0.951435020969, -0.949528180593, -0.947585591018, -0.945607325381, -0.943593458162, -0.941544065183, -0.939459223602, -0.937339011913, -0.935183509939, -0.932992798835, -0.930766961079, -0.928506080473, -0.926210242138, -0.923879532511, -0.921514039342, -0.91911385169, -0.916679059921, -0.914209755704, -0.911706032005, -0.909167983091, -0.906595704515, -0.903989293123, -0.901348847046, -0.898674465694, -0.895966249756, -0.893224301196, -0.890448723245, -0.887639620403, -0.884797098431, -0.881921264348, -0.879012226429, -0.876070094195, -0.873094978418, -0.870086991109, -0.867046245516, -0.863972856122, -0.860866938638, -0.85772861, -0.854557988365, -0.851355193105, -0.848120344803, -0.84485356525, -0.841554977437, -0.838224705555, -0.834862874986, -0.831469612303, -0.828045045258, -0.824589302785, -0.821102514991, -0.817584813152, -0.814036329706, -0.810457198253, -0.806847553544, -0.803207531481, -0.799537269108, -0.795836904609, -0.7921065773, -0.788346427627, -0.784556597156, -0.780737228572, -0.776888465673, -0.773010453363, -0.769103337646, -0.765167265622, -0.761202385484, -0.757208846506, -0.753186799044, -0.749136394523, -0.745057785441, -0.740951125355, -0.736816568877, -0.732654271672, -0.728464390448, -0.724247082951, -0.720002507961, -0.715730825284, -0.711432195745, -0.707106781187, -0.702754744457, -0.698376249409, -0.69397146089, -0.689540544737, -0.685083667773, -0.680600997795, -0.676092703575, -0.671558954847, -0.666999922304, -0.66241577759, -0.657806693297, -0.653172842954, -0.648514401022, -0.64383154289, -0.639124444864, -0.634393284164, -0.629638238915, -0.624859488142, -0.620057211763, -0.615231590581, -0.610382806276, -0.605511041404, -0.600616479384, -0.595699304492, -0.590759701859, -0.585797857456, -0.580813958096, -0.575808191418, -0.570780745887, -0.565731810784, -0.560661576197, -0.55557023302, -0.550457972937, -0.545324988422, -0.54017147273, -0.534997619887, -0.529803624686, -0.524589682678, -0.519355990166, -0.514102744193, -0.508830142543, -0.503538383726, -0.498227666973, -0.49289819223, -0.487550160148, -0.482183772079, -0.476799230063, -0.471396736826, -0.465976495768, -0.460538710958, -0.455083587126, -0.449611329655, -0.44412214457, -0.438616238539, -0.433093818853, -0.42755509343, -0.4220002708, -0.416429560098, -0.410843171058, -0.405241314005, -0.399624199846, -0.393992040061, -0.388345046699, -0.382683432365, -0.377007410216, -0.371317193952, -0.365612997805, -0.359895036535, -0.35416352542, -0.348418680249, -0.342660717312, -0.336889853392, -0.33110630576, -0.325310292162, -0.319502030816, -0.313681740399, -0.307849640042, -0.302005949319, -0.296150888244, -0.290284677254, -0.284407537211, -0.278519689385, -0.27262135545, -0.266712757475, -0.260794117915, -0.254865659605, -0.248927605746, -0.242980179903, -0.237023605994, -0.231058108281, -0.22508391136, -0.219101240157, -0.213110319916, -0.207111376192, -0.201104634842, -0.195090322016, -0.18906866415, -0.183039887955, -0.177004220412, -0.17096188876, -0.16491312049, -0.158858143334, -0.152797185258, -0.146730474455, -0.140658239333, -0.134580708507, -0.128498110794, -0.122410675199, -0.116318630912, -0.110222207294, -0.104121633872, -0.0980171403296, -0.0919089564971, -0.0857973123444, -0.0796824379714, -0.0735645635997, -0.0674439195637, -0.0613207363022, -0.0551952443497, -0.0490676743274, -0.0429382569349, -0.0368072229414, -0.0306748031766, -0.0245412285229, -0.0184067299058, -0.0122715382857, -0.00613588464915, -1.83697019872e-16, 0.00613588464915, 0.0122715382857, 0.0184067299058, 0.0245412285229, 0.0306748031766, 0.0368072229414, 0.0429382569349, 0.0490676743274, 0.0551952443497, 0.0613207363022, 0.0674439195637, 0.0735645635997, 0.0796824379714, 0.0857973123444, 0.0919089564971, 0.0980171403296, 0.104121633872, 0.110222207294, 0.116318630912, 0.122410675199, 0.128498110794, 0.134580708507, 0.140658239333, 0.146730474455, 0.152797185258, 0.158858143334, 0.16491312049, 0.17096188876, 0.177004220412, 0.183039887955, 0.18906866415, 0.195090322016, 0.201104634842, 0.207111376192, 0.213110319916, 0.219101240157, 0.22508391136, 0.231058108281, 0.237023605994, 0.242980179903, 0.248927605746, 0.254865659605, 0.260794117915, 0.266712757475, 0.27262135545, 0.278519689385, 0.284407537211, 0.290284677254, 0.296150888244, 0.302005949319, 0.307849640042, 0.313681740399, 0.319502030816, 0.325310292162, 0.33110630576, 0.336889853392, 0.342660717312, 0.348418680249, 0.35416352542, 0.359895036535, 0.365612997805, 0.371317193952, 0.377007410216, 0.382683432365, 0.388345046699, 0.393992040061, 0.399624199846, 0.405241314005, 0.410843171058, 0.416429560098, 0.4220002708, 0.42755509343, 0.433093818853, 0.438616238539, 0.44412214457, 0.449611329655, 0.455083587126, 0.460538710958, 0.465976495768, 0.471396736826, 0.476799230063, 0.482183772079, 0.487550160148, 0.49289819223, 0.498227666973, 0.503538383726, 0.508830142543, 0.514102744193, 0.519355990166, 0.524589682678, 0.529803624686, 0.534997619887, 0.54017147273, 0.545324988422, 0.550457972937, 0.55557023302, 0.560661576197, 0.565731810784, 0.570780745887, 0.575808191418, 0.580813958096, 0.585797857456, 0.590759701859, 0.595699304492, 0.600616479384, 0.605511041404, 0.610382806276, 0.615231590581, 0.620057211763, 0.624859488142, 0.629638238915, 0.634393284164, 0.639124444864, 0.64383154289, 0.648514401022, 0.653172842954, 0.657806693297, 0.66241577759, 0.666999922304, 0.671558954847, 0.676092703575, 0.680600997795, 0.685083667773, 0.689540544737, 0.69397146089, 0.698376249409, 0.702754744457, 0.707106781187, 0.711432195745, 0.715730825284, 0.720002507961, 0.724247082951, 0.728464390448, 0.732654271672, 0.736816568877, 0.740951125355, 0.745057785441, 0.749136394523, 0.753186799044, 0.757208846506, 0.761202385484, 0.765167265622, 0.769103337646, 0.773010453363, 0.776888465673, 0.780737228572, 0.784556597156, 0.788346427627, 0.7921065773, 0.795836904609, 0.799537269108, 0.803207531481, 0.806847553544, 0.810457198253, 0.814036329706, 0.817584813152, 0.821102514991, 0.824589302785, 0.828045045258, 0.831469612303, 0.834862874986, 0.838224705555, 0.841554977437, 0.84485356525, 0.848120344803, 0.851355193105, 0.854557988365, 0.85772861, 0.860866938638, 0.863972856122, 0.867046245516, 0.870086991109, 0.873094978418, 0.876070094195, 0.879012226429, 0.881921264348, 0.884797098431, 0.887639620403, 0.890448723245, 0.893224301196, 0.895966249756, 0.898674465694, 0.901348847046, 0.903989293123, 0.906595704515, 0.909167983091, 0.911706032005, 0.914209755704, 0.916679059921, 0.91911385169, 0.921514039342, 0.923879532511, 0.926210242138, 0.928506080473, 0.930766961079, 0.932992798835, 0.935183509939, 0.937339011913, 0.939459223602, 0.941544065183, 0.943593458162, 0.945607325381, 0.947585591018, 0.949528180593, 0.951435020969, 0.953306040354, 0.955141168306, 0.956940335732, 0.958703474896, 0.960430519416, 0.962121404269, 0.963776065795, 0.965394441698, 0.966976471045, 0.968522094274, 0.970031253195, 0.971503890986, 0.972939952206, 0.974339382786, 0.975702130039, 0.977028142658, 0.97831737072, 0.979569765685, 0.980785280403, 0.98196386911, 0.983105487431, 0.984210092387, 0.985277642389, 0.986308097245, 0.987301418158, 0.988257567731, 0.989176509965, 0.990058210262, 0.990902635428, 0.991709753669, 0.992479534599, 0.993211949235, 0.993906970002, 0.994564570734, 0.995184726672, 0.995767414468, 0.996312612183, 0.996820299291, 0.997290456679, 0.997723066644, 0.9981181129, 0.998475580573, 0.998795456205, 0.999077727753, 0.999322384588, 0.999529417501, 0.999698818696, 0.999830581796, 0.999924701839, 0.999981175283 }; -float input_data_imag[ 1024 ] = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }; -float output_data_real[ 1024 ] = { -3.98328871302e-14, 512.0, 1.27235727414e-14, 2.11219930435e-13, 2.56426491579e-15, 6.90867309258e-14, 2.59436596681e-15, 1.02395635854e-13, 5.61080391287e-16, 2.85262909278e-14, 3.79032227216e-16, 7.53393398908e-14, 2.66162910625e-16, 2.13178823599e-14, -1.93700945762e-15, 2.54685161849e-13, -1.0480207485e-16, 1.49529977383e-14, 1.67741767281e-15, 4.43915870872e-14, 2.72764222422e-16, 1.52808625925e-14, -2.99940488335e-16, 2.81673052451e-14, -3.14206394495e-16, 9.73082752877e-15, 3.41332290024e-16, 2.63398836114e-14, 9.01376884194e-16, 1.07971860501e-14, -2.16489859293e-16, 1.22399044814e-13, -2.81903879404e-16, 7.70972419107e-15, -1.60972715089e-16, 1.94010784335e-14, 1.30859141192e-16, 6.63927036612e-15, 6.13055952407e-16, 2.02306856577e-14, -5.75282259126e-16, 8.03563339119e-15, -1.71840381989e-15, 1.94213634363e-14, -1.48370317037e-16, 2.94407121745e-15, 1.03703984616e-15, 8.23035203833e-14, 7.01961623624e-16, 4.34745397051e-15, 4.56259003886e-16, 1.86244190865e-14, -7.52443713212e-16, 5.72672412574e-15, -4.67950066318e-16, 1.58021773106e-14, 5.894955421e-17, 5.67365377039e-15, 5.84754391954e-16, 1.3231125266e-14, 1.32571081181e-15, 3.25209579784e-15, -2.40264994719e-16, 2.57571741713e-13, -5.00002386189e-16, 3.02656006773e-15, -3.26405588808e-16, 1.42487690053e-14, -6.63822354292e-16, 6.6022019812e-15, 9.94981112262e-16, 5.49373271562e-15, 1.00761570794e-16, 3.95666287023e-15, -1.95071483446e-15, 1.56333546729e-14, 1.70620506332e-15, 2.70111065119e-15, 1.58344416309e-15, 5.66002978792e-14, -1.78754920909e-15, 3.22081292635e-15, 3.72585484986e-16, 9.92942942162e-15, -3.5930568463e-17, 4.215937795e-15, -1.33163046986e-15, 3.72038284346e-15, 1.31631749194e-15, 6.69001898104e-15, 7.5809899164e-16, 1.16035168759e-14, 2.06193747392e-16, -2.05766401993e-15, 3.17731451744e-15, 3.40668848718e-14, -4.64380668017e-16, 9.40864217653e-15, -3.49175297909e-15, 9.34771079725e-15, 1.1341541471e-15, 4.12668346235e-16, 1.33761095312e-15, 1.04488133379e-14, -1.41400258841e-15, -2.14683976834e-16, -5.15479064209e-16, 7.07691580819e-15, -5.95914117692e-16, 5.36244098615e-15, -4.51177893942e-16, 3.68493980688e-14, 7.82350136714e-16, 1.10543728146e-14, 2.27743811408e-16, 3.28225870764e-15, 5.40130814212e-16, 6.67645215345e-15, -3.50843836178e-16, 1.279343385e-14, -1.02139125531e-15, 1.09149611348e-15, 8.77607632505e-16, 9.14235345858e-15, 7.89502628481e-16, 2.25734666014e-15, -4.50745100905e-17, 8.66746035337e-14, 6.27447048091e-16, 3.65533132722e-15, 1.43174399109e-16, 5.82956652231e-15, -1.45737981045e-16, -1.29157867952e-16, 1.18978725726e-15, 1.38364373427e-15, 8.41747333429e-16, 4.3673989967e-15, -3.85906290425e-17, 5.09925725437e-15, 1.50240781231e-16, -1.76650582842e-15, -7.39518114382e-16, 2.87280700733e-14, -9.96989952227e-16, 2.31548911934e-16, 2.36889949114e-16, 6.34954615877e-15, -5.85757554919e-16, -1.68242621986e-15, -4.66248195508e-16, 9.02584093418e-15, 1.40782032941e-16, 3.15901910566e-15, 4.98055709469e-16, 1.20596584076e-14, -8.89342670076e-17, -6.3516242516e-16, -1.7458138716e-15, 2.8058807857e-14, -2.21973351348e-16, 2.04649181021e-15, 3.87342319562e-16, 6.06353860395e-15, -3.81708513492e-16, 1.89335817025e-15, -4.04021120233e-16, -8.93181398066e-15, 2.67075596151e-17, 8.46234003187e-16, -3.08961223442e-16, -5.74890322552e-15, -2.37625728097e-16, -2.5658294371e-15, 1.53521183787e-15, 1.26425818542e-14, -6.13776272451e-18, -1.05988554149e-15, -2.17239450599e-15, -1.08085321211e-15, -1.38697234275e-15, 4.2038156275e-15, -1.59780806146e-15, -7.66808409701e-15, -6.05376786395e-16, 1.30073416562e-14, 2.21277076554e-15, 4.54954264027e-16, 2.61462296006e-15, -3.30725510621e-16, 1.17196752845e-15, 8.49820133083e-14, -8.76902171665e-16, 8.76384566986e-15, -1.5968293806e-15, -6.96917929091e-16, 6.18966041212e-16, 1.4533812346e-15, 1.88194306608e-15, 5.53878921704e-15, 6.41947497837e-16, -2.58911446434e-15, -3.57354629937e-16, -8.36897940857e-16, -1.09968330794e-15, 3.75360545117e-15, -2.38950959284e-15, 1.11602857754e-14, 7.40738951969e-17, 2.18554944972e-15, 2.4737094729e-15, 2.23631813468e-15, -2.38358796158e-16, 7.11506892815e-16, -1.43566227545e-15, 3.63828639912e-15, 3.23176624349e-16, 3.26693081305e-15, 4.06264334213e-16, 1.08648883704e-15, 3.97081814176e-17, -4.11183923829e-15, 1.40901037236e-16, 1.07728205061e-14, 2.49215789888e-16, 1.86987739338e-15, -3.54353005052e-16, 7.49453470008e-16, -8.04573384604e-16, -3.12010826146e-15, 7.73598790599e-16, 7.00000300529e-15, 7.85638252146e-16, 2.66154338778e-15, -1.48244958666e-16, 4.2260599496e-15, -2.71278947456e-16, -2.87357207886e-16, -1.80358697424e-17, 1.84429384913e-14, 1.58318646262e-16, -2.65314193883e-15, -5.70094465335e-16, 4.19048722376e-15, -1.41749070227e-15, 3.88976423898e-15, 7.02433451731e-16, -6.08449237004e-16, 7.61467782713e-16, -5.66018000355e-16, -6.04391978181e-16, -3.3201876178e-15, 7.15562261709e-17, -2.29442813759e-15, 3.192686443e-16, 2.34479102801e-13, -1.57159149434e-16, -2.60208521397e-16, -1.14878564218e-15, -1.31838984174e-15, 4.74081709404e-16, 7.66456304007e-16, 1.7831988913e-15, 4.02011759265e-16, -1.13495040105e-15, 5.07623728442e-15, -1.88288108205e-15, 5.45192154517e-15, 3.06475416731e-15, -2.66569831313e-15, 4.07464728363e-15, 8.65973959208e-15, -2.37551463362e-15, 9.17224986529e-16, -3.09021178563e-15, 2.35961352891e-15, 4.17582405778e-15, -4.10455452096e-15, 5.30952606861e-15, 2.962502435e-14, 5.14002246939e-16, -2.80909888336e-14, -4.26985256491e-15, 1.42928510756e-14, -3.76137762878e-15, -7.32702696459e-16, 1.49462486312e-15, 3.76673344319e-15, 4.2194325517e-16, 3.24382123682e-15, -2.72383715929e-15, 4.55419167509e-15, -9.97821069011e-16, 8.59877137244e-16, 1.73508606445e-15, 2.64691339524e-15, 1.25989890426e-15, 1.87513917999e-15, -4.92411118081e-16, 2.46348904585e-15, -6.27494788887e-16, -3.96750865671e-15, 1.76804844506e-16, 1.52297985316e-14, 1.00538925333e-15, 3.2213904896e-15, 1.88974179837e-17, -1.15748486176e-15, -4.03684563621e-16, -3.09287506838e-16, -3.10177439566e-17, 4.75067161654e-15, 1.9038176849e-16, 1.56016551202e-15, 7.39547679204e-16, 2.66502474114e-15, 2.7423617409e-16, -7.14183467585e-16, -7.83710908369e-16, 9.05941988094e-14, -9.80495714737e-16, 6.85615184726e-16, -1.62855636973e-15, -8.78121607031e-16, -3.3553596728e-16, 7.21229796572e-16, 1.17858908338e-15, -4.6750047143e-16, 1.1511683809e-16, -6.22060882854e-16, -2.06807788113e-17, 2.57050914047e-15, -1.60530397929e-16, 2.82280236155e-16, -1.441330434e-17, 3.36275358528e-14, 7.9160390211e-16, 2.78872405136e-15, 5.71816496774e-16, 1.05669220751e-14, -5.90464067592e-16, 4.70750685665e-15, -4.5809790381e-16, -8.76218356501e-15, 3.22883908531e-16, 1.83351937784e-15, -4.75357553212e-16, 1.12137751537e-14, -6.52233985352e-16, 1.27478459404e-15, -2.48514390054e-16, 1.12642100855e-14, -5.21748385391e-16, 1.17998198641e-15, -5.50000492759e-16, 1.767476236e-15, 1.8743037822e-16, 1.54063158514e-15, 1.45415852793e-16, -7.14244637222e-15, -1.10637652425e-16, 2.24969279334e-15, -5.73868014574e-16, 2.74291992254e-15, 9.92962068291e-16, -2.5412196985e-15, 4.33490689622e-15, 2.91999603692e-14, -4.28995942772e-16, -5.19949879346e-15, -5.01054248088e-15, 4.14925757339e-15, -3.37494690924e-16, 2.28922769946e-15, 2.14932931869e-15, 7.66998402116e-15, -5.69881550658e-17, -8.02603177859e-15, -9.80390426905e-16, 1.94763095569e-15, 4.99722813172e-18, -6.66210410455e-16, 9.41928479954e-16, 4.19895250363e-14, 5.08463478957e-16, 6.20190538995e-15, -2.35854522357e-15, -2.67071268032e-15, -1.38642994103e-15, -1.02418768022e-15, 1.94115907508e-15, 4.56342584147e-15, 7.2192452627e-16, -1.92582982702e-15, -1.449258867e-16, -9.07398851732e-16, 8.64525455475e-16, 3.77536167485e-15, -9.1841281355e-17, 4.89964006655e-15, -1.20756076199e-15, -7.88195479675e-16, -3.68567647009e-16, -8.12712584812e-16, 4.16898212995e-16, 1.3701924654e-15, 5.74575746489e-16, 1.34567384015e-16, 8.12670897395e-16, -9.91145971777e-16, 6.74576695871e-16, 3.85800421458e-15, 5.20619714792e-16, -1.06836589264e-15, -3.72800798199e-16, -2.40927752498e-15, -1.06744761661e-15, -2.95216879137e-16, -6.08174658384e-16, -1.6644187365e-15, -3.86699638476e-16, -7.96907084358e-17, 1.16545894065e-15, -1.24484226387e-15, 1.08374478299e-15, 9.4403695106e-16, -2.08497272972e-16, 4.94396399916e-15, 2.12726465997e-16, -1.77481532024e-15, -6.39406839322e-16, 3.04923459776e-15, -8.69606102743e-16, 2.2219282865e-15, 3.95813673121e-16, -1.7990688344e-16, -5.63916824224e-16, -5.67077590969e-16, 4.22181597111e-16, 1.39110577279e-15, 1.11863342183e-15, 1.81880283834e-15, -2.43702564934e-16, 1.74625259159e-15, 4.3103310218e-16, 7.1373344441e-16, -9.87981427945e-16, 1.98880192188e-14, -2.07375018449e-15, -3.66389163663e-15, 7.63201784862e-16, 2.39596787516e-15, 1.75272272327e-15, 1.254146269e-15, 6.98734718797e-16, -6.50986450705e-15, 2.1034371653e-16, 4.54545295019e-15, -1.913438378e-15, 3.13131278631e-15, 4.26525055625e-15, -9.36882402956e-15, 1.2201732239e-14, 9.71756235254e-15, 5.77507229304e-16, -1.0879283722e-14, -1.20603705944e-14, 1.0169796636e-14, -5.60452211765e-15, 2.38066479825e-16, 2.54995294177e-15, 1.77922351918e-15, 1.35382575568e-15, -4.35716175585e-15, -2.0632735534e-15, 3.19751487327e-15, -1.46551759471e-15, -8.61052538447e-16, 2.31447787942e-15, 6.03596667648e-15, 5.7351050901e-16, 1.35654182726e-15, -3.45858121827e-15, 6.42595130315e-15, -6.48862312509e-16, -1.86443760579e-15, 2.21095741615e-15, -8.20287105612e-16, -1.14763726476e-16, 8.93294678651e-16, -1.42541384839e-15, 4.30201097178e-15, 3.23312042966e-16, -7.90493991157e-16, 9.93935809561e-16, -2.51295030043e-15, -4.98399645598e-17, 3.43126754284e-15, -6.12625705211e-16, 2.02054707759e-15, 9.92734328274e-16, 2.14432093605e-15, 1.27664789667e-15, 3.82656793812e-15, -1.17513236038e-15, 6.46771091798e-16, -6.58541155666e-16, 1.23306063544e-15, 8.63775523006e-16, -4.3065359981e-16, 7.99782798654e-17, 0.0, -7.408935991e-16, 0.0, 7.99782798654e-17, 2.77555756156e-16, 8.63775523006e-16, -2.12613825371e-15, -6.58541155666e-16, -6.3246075703e-15, -1.17513236038e-15, 3.50738763842e-15, 1.27664789667e-15, -3.09021880097e-15, 9.92734328274e-16, 3.03678304335e-16, -6.12625705211e-16, -6.43929354283e-15, -4.98399645598e-17, -3.62120518093e-16, 9.93935809561e-16, -5.08325525014e-15, 3.23312042966e-16, 5.77869894261e-15, -1.42541384839e-15, -3.48884750087e-15, -1.14763726476e-16, -2.22769577566e-15, 2.21095741615e-15, -2.19560878634e-15, -6.48862312509e-16, 1.82487923371e-15, -3.45858121827e-15, -1.02058767664e-14, 5.7351050901e-16, -1.35654182726e-15, 2.31447787942e-15, 1.84725066254e-15, -1.46551759471e-15, -7.01948110961e-16, -2.0632735534e-15, -9.10105706027e-16, 1.35382575568e-15, 2.20007464334e-15, 2.54995294177e-15, -2.9175292536e-15, -5.60452211765e-15, 8.86782446531e-15, -1.20603705944e-14, -1.63373187952e-14, 5.77507229303e-16, 7.93803009299e-15, 1.2201732239e-14, -1.58959478948e-14, 4.26525055625e-15, 6.04573375385e-15, -1.913438378e-15, 7.3258645698e-15, 2.1034371653e-16, -4.98967084796e-15, 6.98734718797e-16, -2.05549959344e-15, 1.75272272327e-15, 7.68385982522e-16, 7.63201784862e-16, -3.01980662698e-14, -2.07375018449e-15, 3.66389163663e-15, -9.87981427945e-16, -5.24382996407e-15, 4.3103310218e-16, 2.04619277278e-15, -2.43702564934e-16, 7.45136378507e-16, 1.11863342183e-15, 8.01862849642e-16, 4.22181597111e-16, 1.03597885229e-15, -5.63916824224e-16, -1.49699967674e-15, 3.95813673121e-16, 5.44753569854e-15, -8.69606102743e-16, -1.48071746875e-15, -6.39406839322e-16, -1.00333450332e-15, 2.12726465997e-16, 3.50683788947e-15, -2.08497272972e-16, -2.96870996645e-15, 1.08374478299e-15, -2.47185893733e-15, 1.16545894065e-15, -3.71558463505e-15, -3.86699638476e-16, -1.30128748642e-15, -6.08174658384e-16, 1.10884195507e-14, -1.06744761661e-15, 2.95216879137e-16, -3.72800798199e-16, 2.84241644262e-15, 5.20619714792e-16, 2.52322931447e-15, 6.74576695871e-16, -3.1022517619e-15, 8.12670897395e-16, -1.35686661376e-15, 5.74575746489e-16, -1.47887556814e-15, 4.16898212995e-16, -3.56342139879e-15, -3.68567647009e-16, -6.17787340511e-15, -1.20756076199e-15, -1.00129216777e-15, -9.1841281355e-17, 5.80591434315e-16, 8.64525455475e-16, 9.37218183823e-16, -1.449258867e-16, -1.08059682348e-15, 7.2192452627e-16, -3.20883147224e-18, 1.94115907508e-15, -3.89446511198e-15, -1.38642994103e-15, -9.96824637036e-16, -2.35854522357e-15, -2.12360666947e-15, 5.08463478957e-16, -6.20190538995e-15, 9.41928479954e-16, -1.80500805804e-15, 4.99722813172e-18, 3.6853304815e-15, -9.80390426905e-16, -8.23624187394e-15, -5.69881550659e-17, 3.32625278161e-15, 2.14932931869e-15, -3.32008827134e-15, -3.37494690924e-16, 2.44443948251e-15, -5.01054248088e-15, -2.33989995551e-14, -4.28995942772e-16, 4.04423170661e-15, 4.33490689622e-15, -5.52681703026e-15, 9.92962068291e-16, 3.41366099079e-15, -5.73868014574e-16, 4.53980096769e-15, -1.10637652425e-16, -4.90690073699e-15, 1.45415852793e-16, -3.83676377132e-15, 1.8743037822e-16, -5.71127218112e-16, -5.50000492759e-16, -1.69405723416e-14, -5.21748385391e-16, -1.17998198641e-15, -2.48514390054e-16, -1.37094578956e-14, -6.52233985352e-16, -1.74972395421e-15, -4.75357553212e-16, 1.00574099701e-14, 3.22883908531e-16, 2.64812859627e-15, -4.5809790381e-16, -1.27698595878e-14, -5.90464067592e-16, -1.65381610939e-15, 5.71816496774e-16, -2.70837644704e-14, 7.9160390211e-16, -1.83425181237e-15, -1.441330434e-17, -4.93951306978e-15, -1.60530397929e-16, -4.18555326087e-16, -2.06807788113e-17, 4.2742176548e-15, 1.1511683809e-16, 1.43023548865e-16, 1.17858908338e-15, 6.98475617935e-16, -3.3553596728e-16, -2.71937835408e-15, -1.62855636973e-15, -7.07711585931e-14, -9.80495714737e-16, -6.85615184726e-16, -7.83710908369e-16, -5.88860604709e-15, 2.7423617409e-16, 3.45294997788e-16, 7.39547679204e-16, -2.94724655451e-15, 1.9038176849e-16, 1.26835957679e-17, -3.10177439566e-17, -1.90223835643e-15, -4.03684563621e-16, -1.80679336733e-15, 1.88974179837e-17, -1.43881511287e-14, 1.00538925333e-15, -8.38271502277e-16, 1.76804844506e-16, -1.07529288593e-15, -6.27494788887e-16, -1.94098315881e-16, -4.92411118081e-16, -1.27913041272e-15, 1.25989890426e-15, -5.36544050569e-16, 1.73508606445e-15, -1.48155012895e-15, -9.97821069011e-16, 4.15057248691e-15, -2.72383715929e-15, -5.77648211823e-15, 4.2194325517e-16, -3.24382123682e-15, 1.49462486312e-15, -1.8054003715e-15, -3.76137762878e-15, 6.07589488891e-15, -4.26985256491e-15, -3.55292890168e-14, 5.14002246939e-16, 3.21517708057e-14, 5.30952606861e-15, -5.34435750472e-15, 4.17582405778e-15, -3.97790495752e-17, -3.09021178563e-15, -1.01652223712e-14, -2.37551463362e-15, 6.33120358087e-16, 4.07464728363e-15, -4.82942871756e-15, 3.06475416731e-15, 1.97881378861e-15, -1.88288108205e-15, 2.76755019208e-15, -1.13495040105e-15, -2.52778382087e-15, 1.7831988913e-15, -1.47788897876e-15, 4.74081709404e-16, 8.03809676956e-17, -1.14878564218e-15, -2.34479102801e-13, -1.57159149434e-16, 2.60208521397e-16, 3.192686443e-16, -5.23192600355e-15, 7.15562261709e-17, -4.25119562298e-15, -6.04391978181e-16, -7.83671062062e-15, 7.61467782713e-16, -5.04172299165e-16, 7.02433451731e-16, -2.10294556608e-15, -1.41749070227e-15, -5.48981100148e-16, -5.70094465335e-16, -4.66293670343e-15, 1.58318646262e-16, -8.7098537217e-16, -1.80358697424e-17, -2.27532007435e-15, -2.71278947456e-16, 1.68378392771e-15, -1.48244958666e-16, 3.07586485054e-17, 7.85638252146e-16, -5.22365417556e-15, 7.73598790599e-16, -3.53829557192e-15, -8.04573384604e-16, 3.90956922218e-15, -3.54353005052e-16, -2.19020428393e-14, 2.49215789888e-16, -1.86987739338e-15, 1.40901037236e-16, -4.5904923547e-15, 3.97081814176e-17, 1.73632359456e-15, 4.06264334213e-16, -2.02248558346e-15, 3.23176624349e-16, -1.39636105172e-15, -1.43566227545e-15, -1.46008034978e-15, -2.38358796158e-16, -4.18834972627e-15, 2.4737094729e-15, -2.5713237352e-14, 7.40738951969e-17, -1.08421915539e-15, -2.38950959284e-15, 2.26871291959e-15, -1.09968330794e-15, 2.97468012304e-16, -3.57354629937e-16, -3.46977886104e-15, 6.41947497837e-16, 1.13725373844e-15, 1.88194306608e-15, -2.61245323064e-15, 6.18966041212e-16, -5.20509779573e-15, -1.5968293806e-15, -6.2172489379e-14, -8.76902171665e-16, -8.76384566986e-15, 1.17196752845e-15, -4.13001454552e-15, 2.61462296006e-15, -2.16502587336e-15, 2.21277076554e-15, 1.04403312756e-14, -6.05376786395e-16, -1.29271495657e-14, -1.59780806146e-15, 6.5665843656e-15, -1.38697234275e-15, -1.37935396685e-15, -2.17239450599e-15, -8.63388429993e-15, -6.13776272452e-18, -5.8768675312e-16, 1.53521183787e-15, 4.8123749377e-15, -2.37625728097e-16, -3.233700987e-16, -3.08961223442e-16, 3.40924736096e-15, 2.67075596151e-17, -1.41750324373e-15, -4.04021120233e-16, 1.68219473853e-15, -3.81708513492e-16, -3.4726970431e-15, 3.87342319562e-16, -2.36913960358e-14, -2.21973351348e-16, -2.04649181021e-15, -1.7458138716e-15, -7.83153542858e-15, -8.89342670076e-17, -4.34569832689e-15, 4.98055709469e-16, -1.01007693457e-14, 1.40782032941e-16, -6.49417390119e-16, -4.66248195508e-16, -8.16132272723e-15, -5.85757554919e-16, -7.19649188366e-15, 2.36889949114e-16, -3.05813987445e-14, -9.96989952227e-16, -2.03025529022e-15, -7.39518114382e-16, -2.35384490801e-15, 1.50240781231e-16, -4.882785595e-15, -3.85906290425e-17, -4.33544352438e-15, 8.41747333429e-16, -2.43325585761e-15, 1.18978725726e-15, -5.20113274643e-15, -1.45737981045e-16, -1.7572801079e-15, 1.43174399109e-16, -9.81188124701e-14, 6.27447048091e-16, -3.65533132722e-15, -4.50745100905e-17, -7.79313932677e-15, 7.89502628481e-16, -1.02993825451e-15, 8.77607632505e-16, -7.95700244129e-15, -1.02139125531e-15, 3.6031784029e-15, -3.50843836178e-16, -7.98476832232e-15, 5.40130814212e-16, -8.1970177362e-15, 2.27743811408e-16, -4.2203133694e-14, 7.82350136714e-16, -6.31091170203e-15, -4.51177893942e-16, -4.63744167336e-15, -5.95914117693e-16, -2.59375338172e-15, -5.15479064209e-16, -7.49034383788e-15, -1.41400258841e-15, 2.71030279049e-15, 1.33761095312e-15, -1.26418339437e-14, 1.1341541471e-15, -2.07045836128e-16, -3.49175297909e-15, -3.24266744932e-14, -4.64380668017e-16, -9.40864217653e-15, 3.17731451744e-15, -1.50103148572e-14, 2.06193747392e-16, 2.27227094656e-15, 7.5809899164e-16, -3.02254702386e-15, 1.31631749194e-15, -9.07257572833e-15, -1.33163046986e-15, -8.44464247043e-15, -3.5930568463e-17, -4.86015568863e-15, 3.72585484986e-16, -5.11962421069e-14, -1.78754920909e-15, -3.26892368847e-15, 1.58344416309e-15, -1.43700865822e-14, 1.70620506332e-15, 3.4898600853e-16, -1.95071483446e-15, -8.85669591942e-15, 1.00761570794e-16, -6.17848331473e-15, 9.94981112262e-16, -8.8604874255e-15, -6.63822354292e-16, -3.70083634403e-15, -3.26405588808e-16, -2.61472549377e-13, -5.00002386189e-16, -3.02656006773e-15, -2.40264994719e-16, -1.3574012293e-14, 1.32571081181e-15, -2.98787954048e-15, 5.84754391954e-16, -1.26967296071e-14, 5.894955421e-17, -5.3504242545e-15, -4.67950066318e-16, -1.53725096238e-14, -7.52443713212e-16, -6.70433491573e-15, 4.56259003886e-16, -8.64257547722e-14, 7.01961623624e-16, -4.89064962318e-15, 1.03703984616e-15, -2.59924929928e-14, -1.48370317037e-16, -5.9921142312e-15, -1.71840381989e-15, -1.75167215756e-14, -5.75282259126e-16, -9.08771116942e-15, 6.13055952407e-16, -2.28217866367e-14, 1.30859141192e-16, -6.61543881274e-15, -1.60972715089e-16, -1.14100565686e-13, -2.81903879404e-16, -7.70972419107e-15, -2.16489859293e-16, -2.97037300528e-14, 9.01376884194e-16, -9.69539643162e-15, 3.41332290024e-16, -3.54466068642e-14, -3.14206394495e-16, -9.89509761608e-15, -2.99940488335e-16, -4.26352084326e-14, 2.72764222422e-16, -1.6326395471e-14, 1.67741767281e-15, -2.55323100194e-13, -1.0480207485e-16, -1.60483627967e-14, -1.93700945762e-15, -7.02452656662e-14, 2.66162910625e-16, -2.244010883e-14, 3.79032227216e-16, -9.72442087284e-14, 5.61080391287e-16, -3.41587128221e-14, 2.59436596681e-15, -2.02224056364e-13, 2.56426491579e-15, -6.32228954874e-14, 1.27235727414e-14, 512.0 }; -float output_data_imag[ 1024 ] = { 0.0, -2.73953068846e-13, 1.15172383906e-15, 3.68662073617e-15, -1.45479157899e-15, 2.48165218159e-15, -2.08879510066e-16, -3.85093749736e-16, 5.46113498614e-15, 2.44894545386e-16, -1.68032250205e-15, -3.63986713248e-15, 1.14467078969e-15, 2.62379558266e-15, -1.20173507003e-16, 2.45588135991e-14, -2.28073078977e-15, -9.53898338068e-16, 8.87809217826e-16, 4.12808780082e-15, -2.56251438336e-16, 3.30146726949e-15, -3.54940262707e-16, 8.03877524948e-15, 1.15285950656e-15, -2.30506445454e-16, 8.87513413854e-17, 2.23261909814e-15, 1.5063710346e-15, 4.33122162145e-17, -1.89599352224e-16, 7.60192042751e-15, -6.02005880314e-16, 1.40456009736e-15, 9.6334874024e-16, 6.16753874481e-15, -2.79440119233e-15, 7.58459144135e-16, -9.69817982155e-17, -1.02144885918e-15, 6.91272417172e-16, 8.56194950051e-16, -1.73762849479e-15, 1.76239136203e-16, 7.01809248253e-16, 1.67538466295e-15, 5.85407041713e-16, -4.08080055893e-15, -9.33375515213e-16, 1.86124598693e-15, 1.07736225398e-15, 2.49127345913e-15, -1.34168769079e-15, 3.74217398683e-17, -2.46964522561e-16, 1.73613760301e-15, -5.292814139e-16, 3.15536314342e-15, -1.24304317762e-15, 1.49412576636e-15, 9.5116703599e-17, -3.08361084214e-15, -5.57200987754e-16, 5.27584784246e-14, -4.38802570717e-16, 7.50641619326e-16, 1.4339129634e-16, 2.77869203777e-15, -1.19948718688e-15, 1.5010958528e-15, 5.61489696854e-16, 1.10581498676e-14, -6.49624898559e-16, -7.74709496067e-16, 1.20842656842e-15, 4.14245116142e-15, 1.94514500159e-15, 4.10166856894e-15, -9.65961864596e-16, 8.6875315271e-15, 2.30258216555e-15, 8.72132579025e-16, -1.29036326958e-15, 5.45154445953e-15, 7.20381737789e-16, -1.39624137643e-15, 2.98104266618e-15, -6.05386165158e-15, -4.4850648388e-15, -2.05528714873e-16, 3.26666197019e-15, 4.87260297905e-15, -2.37907983094e-15, 2.67048811613e-15, 7.24055578052e-15, 1.29495798241e-14, -1.4274727085e-14, -6.51401619087e-16, 9.12521170012e-15, 5.19436767679e-15, -4.46023168045e-15, 4.09915099629e-17, 5.43887418291e-16, 7.22166519042e-15, 3.87071888059e-15, 3.15972494277e-15, -2.58665031383e-15, 5.91326033617e-15, 8.71432135114e-16, -5.43469963092e-15, 6.21762895013e-16, 1.45491025006e-14, -2.62650078075e-15, 4.60081762556e-16, 2.0674938355e-15, 1.35294748496e-15, -6.87341536638e-16, 5.08905965428e-15, 5.99905973439e-16, -4.23065985666e-15, 1.82031123201e-15, -1.46333181508e-15, -6.8309871823e-16, 4.40227356677e-15, 7.239150452e-16, 7.0106959564e-16, -8.08802501863e-16, 6.5877373318e-14, -1.31418601149e-16, 2.25141356872e-15, 3.5172838985e-16, 3.44013830933e-15, -1.75788615762e-15, 3.48768747897e-15, 1.46855202014e-16, 7.27213449042e-15, 8.38081251592e-16, 1.49813912017e-16, -6.127982626e-16, 4.08551466839e-15, 1.1310458676e-15, 3.56826164738e-15, 5.70155242519e-17, 1.11868821688e-14, 1.36575582806e-15, 4.81064806855e-16, 2.09172631408e-16, 2.6352845297e-15, -3.51163600879e-16, 1.80215435991e-15, 1.15875883238e-15, 1.8974577543e-15, 9.09195860278e-17, 1.68406438478e-15, -4.52996069251e-16, 7.16598795991e-15, -3.16341778083e-16, 7.19036831591e-17, -2.07538381817e-15, 1.19525619111e-14, 1.50466816212e-15, 1.84871764945e-15, 4.6143140642e-16, 1.23331070715e-14, -1.07218380206e-15, 6.14417737434e-16, 6.77303719623e-16, 1.44568346796e-14, -9.11413353252e-16, -1.886112873e-15, -4.63247220387e-16, 3.22941920061e-15, -2.99741558825e-16, 4.78748900403e-15, -8.08889827204e-16, 1.59212885519e-15, 2.44889260229e-15, -2.26072842079e-15, -1.44413919146e-15, 7.59273364297e-16, -2.75187425977e-17, 3.62442320155e-15, 7.62203077378e-15, -4.56065051903e-15, -1.36578151305e-14, -2.70522479486e-15, 6.20798781571e-15, -3.2701216735e-15, 2.9308161452e-15, 2.26318853066e-15, -1.50147548979e-15, 2.71536915785e-14, -1.0582799372e-15, 1.55630501158e-16, 1.58007273902e-15, 1.99864191434e-15, -1.52779539895e-16, 2.10511581427e-15, -4.87706719594e-16, 3.83599367747e-15, 2.57798035437e-15, 2.72503514671e-15, -1.11551257282e-15, 3.79956633175e-15, 6.58165718252e-17, 1.94068261795e-15, -7.2971861241e-16, 1.53938428317e-15, -1.61852535736e-15, 1.87027481149e-15, -8.75257341819e-16, 1.05001481037e-15, -1.58460373069e-15, 1.44282331787e-15, -7.88127363583e-17, 2.17999174599e-15, 1.24831743062e-15, 2.93495848303e-15, -5.98969996062e-16, 2.6507319804e-15, 4.57756990983e-16, 3.16240869392e-15, 5.04529873205e-16, 1.96896872755e-14, 1.48256414363e-16, 1.76415150978e-15, -1.16075694013e-16, 3.26728884325e-15, -1.31887586034e-15, 1.43015338233e-16, 6.20025641148e-16, 3.52423571023e-15, -3.78777065646e-16, -6.40918411023e-16, -1.71454239283e-15, 4.29410127026e-15, 5.82491925549e-16, 2.41815943113e-16, 1.06847904754e-15, 9.82445238275e-15, -3.08636449864e-16, 2.1981949625e-15, -7.98080310683e-17, 1.57967036623e-15, -5.9142466091e-16, 1.29893812167e-16, 1.04393914747e-15, -2.97749689255e-15, -8.60515224882e-16, 2.05084022671e-15, 1.55232536105e-16, 6.43333838214e-15, 1.76930977808e-15, 1.71998355771e-15, -3.27866146078e-16, 1.75327100343e-13, -1.49619899803e-15, 2.17327516568e-15, 6.27230612655e-16, 2.28496416758e-15, 4.31061372935e-16, 1.51498556345e-15, -2.41379657496e-16, 8.54922474292e-15, -2.53561776174e-15, -1.96447154088e-15, 2.46918155941e-15, -2.67247754713e-15, 1.20896925943e-15, -1.67710097423e-15, -5.03563949166e-15, 1.23463603282e-14, 3.88281935351e-15, -1.1424375941e-15, 4.99640215333e-16, -1.04677547743e-14, 4.55567315921e-16, 1.42661144347e-16, -1.80034340757e-14, 9.1368787862e-15, 3.74104800735e-14, 4.00380603665e-15, -1.8706945529e-14, -2.20818470989e-16, 1.01999118023e-15, -4.01042068495e-15, 4.66953597322e-15, 9.44164533434e-15, -6.87306490459e-15, 1.08736024308e-15, 9.31705575511e-16, 2.32883817834e-15, -8.06961215069e-16, -1.47089236451e-15, 1.77077881743e-15, 3.90918337789e-15, 1.57990274188e-15, 1.74207324944e-15, -3.30443144419e-15, 2.73324021617e-15, 2.11076281525e-16, 7.73929782593e-16, 5.40861669409e-16, 1.73884379909e-14, -2.73405127195e-15, 2.85004867239e-16, 1.23083033936e-15, -1.56874307021e-15, -1.6356257922e-16, 8.07722696748e-16, 1.53282664689e-16, 5.364085064e-15, 3.11824908548e-17, 1.41089768053e-15, -6.38938501779e-16, 2.05736294853e-15, 1.91885771844e-15, -2.57743472288e-16, -2.99081365518e-16, 3.49949100306e-14, -6.26180595204e-16, 1.27989187959e-15, 1.8653083502e-15, -6.88959173984e-16, -5.94001284124e-16, 1.95206111324e-15, 8.35526733382e-16, -7.17586251191e-16, 7.94471446201e-16, -3.75954311181e-15, -9.64968503347e-16, 6.78789892289e-15, 9.03780977626e-16, -4.48394529542e-16, -1.01347542423e-15, 3.24769590978e-15, 1.03434867957e-15, 5.93750240162e-17, 3.41941256699e-16, -2.44970720548e-15, -5.91886740811e-16, 2.31733889993e-15, 1.53956173749e-15, -5.09325879895e-15, -8.46364173071e-17, -1.31049784366e-15, 2.72307441143e-16, -8.35462049356e-15, 2.0789546282e-15, -2.97490424655e-16, -2.43920969935e-15, 2.0780366678e-14, 1.43010813713e-15, 1.08680349384e-15, -4.99993130819e-17, 1.3680270116e-14, -1.40145030122e-15, 3.28706638594e-15, -9.09427414205e-16, 5.30016397989e-15, -3.33019544847e-15, -3.15270030444e-16, 8.33013116985e-16, 3.2837614527e-15, -8.60412920251e-16, 3.52974170665e-15, -3.46724512498e-15, 8.25136006591e-15, 7.38228425443e-15, 7.78682260469e-16, -1.22884453464e-15, 7.61251483515e-16, -2.67927805373e-15, -3.4724735923e-15, -2.91227515194e-15, 2.25458342396e-15, 8.63807144024e-15, 3.94723677236e-15, -4.69103089485e-15, 1.79576307685e-15, 9.76657567195e-16, 1.29424672859e-15, -7.8591867691e-16, 8.82586683227e-14, -5.61630023192e-16, 1.33879732711e-15, 3.04735560047e-16, 2.96410916004e-15, -6.32746643693e-16, 2.13171849548e-15, 1.79549912284e-16, -1.37624603807e-17, 7.26603588845e-16, 5.34517424813e-15, -1.53186598697e-15, 1.12739162102e-15, 1.57021092237e-15, -3.47030469894e-15, -1.18897281333e-15, 2.40747130957e-14, -1.05267373886e-15, -1.28194598679e-16, 2.08151664043e-15, 3.37542627501e-15, -5.683054308e-16, 3.08330910932e-15, -7.16428068166e-16, 5.79006317403e-15, 5.14656906134e-16, -1.93911940545e-15, -5.97663274908e-16, 3.63481646884e-15, 7.28614918687e-16, 3.14792560133e-15, -6.60308405852e-16, 1.66100069802e-14, -5.06121189428e-16, 1.91495894075e-15, 4.45548779047e-16, 3.50951956396e-15, -1.05944300987e-15, 2.7856512572e-15, 6.01975675551e-16, 5.17446671808e-15, 3.31070910974e-16, 1.20601098318e-16, -7.4426931679e-18, 3.47449350828e-15, 1.59667472032e-15, -1.08415641271e-15, 4.81781264109e-16, 1.94990794908e-14, -6.73463851011e-16, 2.22808131986e-15, 4.35441399322e-16, 2.63459727026e-15, -8.80130817626e-16, 3.39520236172e-15, 2.92930541465e-17, 2.0183756753e-15, -6.24042921308e-16, 2.83589172759e-15, -3.11700531387e-16, 6.00367777332e-17, 8.10893172234e-16, 1.83522365021e-15, 7.06860747402e-16, 5.8949581831e-14, -1.04753731431e-15, 1.64787634483e-16, 3.35728878682e-16, -1.88475924946e-15, 6.33964389112e-16, 9.31502974883e-16, -3.26657487871e-16, 8.30401977958e-15, -4.07592395138e-15, -5.45651366298e-15, 2.90213508097e-15, 1.86236227006e-16, -8.3007961954e-16, 5.54053228612e-15, -9.52706427437e-15, 1.37906889101e-14, 2.41761718074e-14, 2.82538102906e-15, -1.06762551442e-14, 2.75798217925e-15, -2.88001099304e-15, -2.28664254033e-15, 2.11912893337e-15, 3.5762590347e-15, 3.59009480548e-15, 4.28953465839e-15, -4.66990708882e-15, 1.66935096227e-15, 1.57105507873e-15, -3.6015676964e-16, 1.43426043374e-15, 1.54443678718e-14, -4.88239152496e-15, 2.15112376664e-17, 1.30008265697e-15, 2.98259119492e-15, -5.57512769384e-16, -3.90128205711e-15, 3.74488886447e-18, 4.67403343815e-15, 2.93834111152e-16, 2.97009596838e-15, -1.0606029569e-15, 3.59389654082e-15, 2.74299797442e-15, -2.72719448966e-15, 1.33912843396e-15, 1.55794281528e-14, -2.0568874456e-15, 9.25544153536e-16, 2.8772277208e-15, 1.60162392082e-15, 7.15690976427e-16, 3.97451358465e-16, -4.34861403234e-16, 6.54731976893e-15, -5.50309884485e-16, 3.21363537806e-16, -5.83283100715e-18, 7.97606207447e-15, 1.35539048596e-15, 5.49479200048e-17, -1.35902499261e-15, 2.81908510707e-13, 0.0, 2.30384872588e-16, 1.35902499261e-15, 7.15606768812e-15, -1.35539048596e-15, -3.32934781371e-16, 5.83283100715e-18, 6.82396271486e-15, 5.50309884485e-16, 2.28191148578e-15, 4.34861403234e-16, -2.60841819373e-15, -7.15690976427e-16, 1.65356121823e-15, -2.8772277208e-15, 1.78974754514e-14, 2.0568874456e-15, 3.26502957885e-15, -1.33912843396e-15, -7.18705074102e-16, -2.74299797442e-15, -1.43829432517e-15, 1.0606029569e-15, 6.14487166166e-16, -2.93834111152e-16, 1.82087292996e-15, -3.7448888645e-18, 2.83217041153e-15, 5.57512769384e-16, 5.84411288227e-15, -1.30008265697e-15, 1.91578000059e-14, 4.88239152496e-15, 2.15112376664e-17, -1.43426043374e-15, 3.65576990312e-15, -1.57105507873e-15, 8.14864619644e-16, 4.66990708882e-15, -7.51238578891e-16, -3.59009480548e-15, -5.5463129009e-16, -2.11912893337e-15, 3.30124938173e-15, 2.88001099304e-15, -4.05336817949e-15, 1.06762551442e-14, 1.19937957534e-14, -2.41761718074e-14, 2.77219011992e-16, 9.52706427437e-15, 2.6201569591e-15, 8.3007961954e-16, 7.39881718642e-15, -2.90213508097e-15, 5.26181244446e-15, 4.07592395138e-15, -3.91241475767e-15, 3.26657487871e-16, 3.77537176656e-16, -6.33964389112e-16, 3.75835979084e-15, -3.35728878682e-16, 6.3416619461e-14, 1.04753731431e-15, 1.64787634483e-16, -7.06860747402e-16, 4.02790012768e-15, -8.10893172234e-16, 2.68479927427e-15, 3.11700531387e-16, 3.34204015564e-15, 6.24042921308e-16, 1.55992276644e-15, -2.92930541465e-17, 3.2529261471e-15, 8.80130817626e-16, -1.30593528745e-15, -4.35441399322e-16, 5.61643337054e-15, 6.73463851011e-16, -4.66938752557e-16, -4.81781264109e-16, 4.428652364e-15, -1.59667472032e-15, 7.95230774979e-16, 7.4426931679e-18, 1.22715914665e-15, -3.31070910974e-16, 1.15986701527e-15, -6.01975675551e-16, 1.95237376217e-15, 1.05944300987e-15, 2.92636799221e-16, -4.45548779047e-16, 2.11510661465e-14, 5.06121189428e-16, 1.91495894075e-15, 6.60308405852e-16, 1.24243697491e-15, -7.28614918687e-16, -2.50585927707e-15, 5.97663274908e-16, 6.97384463069e-16, -5.14656906134e-16, 6.13828595537e-16, 7.16428068166e-16, 2.89649113404e-15, 5.683054308e-16, 2.62058961239e-15, -2.08151664043e-15, 2.68798005623e-14, 1.05267373886e-15, 2.21171437386e-15, 1.18897281333e-15, 2.21205744799e-15, -1.57021092237e-15, 9.39373151287e-16, 1.53186598697e-15, 2.37866323832e-16, -7.26603588845e-16, 3.27389998158e-16, -1.79549912284e-16, 3.29480019222e-15, 6.32746643693e-16, -1.01868335642e-15, -3.04735560047e-16, 6.15654149049e-14, 5.61630023192e-16, 1.33879732711e-15, 7.8591867691e-16, 5.26537079255e-15, -9.76657567195e-16, 2.91705036903e-15, 4.69103089485e-15, 1.31151687544e-15, -8.63807144024e-15, 7.86244214477e-16, 2.91227515194e-15, 7.59356035427e-15, 2.67927805373e-15, -1.49384253891e-15, 1.22884453464e-15, 7.73267875967e-15, -7.38228425443e-15, 1.8988338842e-15, 3.46724512498e-15, -1.4020687178e-15, 8.60412920251e-16, -4.87670330244e-16, -8.33013116985e-16, 7.19262436095e-15, 3.33019544847e-15, 4.01627770763e-15, 9.09427414205e-16, 9.72413130659e-15, 1.40145030122e-15, 1.57738825679e-15, 4.99993130819e-17, 1.77297211517e-14, -1.43010813713e-15, 1.08680349384e-15, 2.43920969935e-15, -6.08708242797e-15, -2.0789546282e-15, -4.91157384466e-17, -2.72307441143e-16, 1.02039121842e-15, 8.46364173071e-17, 7.85620489305e-16, -1.53956173749e-15, -2.12716529091e-15, 5.91886740811e-16, 4.91875266305e-15, -3.41941256699e-16, 6.71726243149e-15, -1.03434867957e-15, 1.45809598464e-15, 1.01347542423e-15, 6.43812545996e-15, -9.03780977626e-16, -2.54449499174e-15, 9.64968503347e-16, -4.24045442967e-15, -7.94471446201e-16, 1.0789220926e-15, -8.35526733382e-16, -8.97592237344e-15, 5.94001284124e-16, 1.40934196371e-15, -1.8653083502e-15, 3.21779874463e-14, 6.26180595204e-16, 1.27989187959e-15, 2.99081365518e-16, 4.18991609102e-15, -1.91885771844e-15, 1.457314646e-15, 6.38938501779e-16, 3.30429387224e-15, -3.11824908548e-17, 1.35410602249e-15, -1.53282664689e-16, -7.19080720576e-16, 1.6356257922e-16, 1.45268634384e-16, -1.23083033936e-15, 6.26870255769e-15, 2.73405127195e-15, -9.15700928308e-16, -5.40861669409e-16, 4.99849276968e-15, -2.11076281525e-16, 1.84032641067e-15, 3.30443144419e-15, 5.06816268077e-15, -1.57990274188e-15, -1.89905199305e-15, -1.77077881743e-15, 3.71527664165e-15, 8.06961215069e-16, 4.7410458348e-15, -9.3170557551e-16, -4.50565123995e-15, 6.87306490459e-15, 1.08736024308e-15, -4.66953597322e-15, 4.35029778249e-15, -1.01999118023e-15, 4.89314709131e-15, 1.8706945529e-14, -6.16308667791e-15, -3.74104800735e-14, -5.76141369393e-15, 1.80034340757e-14, 2.47118694407e-15, -4.55567315921e-16, 6.37223544748e-15, -4.99640215333e-16, -1.20077714778e-15, -3.88281935351e-15, -7.16408559454e-16, 5.03563949166e-15, 2.89206114375e-15, -1.20896925943e-15, 4.80808147015e-15, -2.46918155941e-15, 3.55147911791e-15, 2.53561776174e-15, 4.67228908488e-16, 2.41379657496e-16, -6.51848873468e-16, -4.31061372935e-16, -1.18281780027e-15, -6.27230612655e-16, 1.75327100343e-13, 1.49619899803e-15, 2.17327516568e-15, 3.27866146078e-16, 2.06291956265e-15, -1.76930977808e-15, -1.51954841335e-15, -1.55232536105e-16, 1.85634316912e-15, 8.60515224882e-16, -4.79735756367e-16, -1.04393914747e-15, 3.34834238626e-15, 5.9142466091e-16, -4.53559929379e-16, 7.98080310683e-17, 8.79364664944e-15, 3.08636449864e-16, -3.29749467993e-16, -1.06847904754e-15, 3.0522885131e-15, -5.82491925549e-16, 8.2113910652e-16, 1.71454239283e-15, 1.68749234869e-15, 3.78777065646e-16, -2.04120004293e-15, -6.20025641148e-16, 2.14938315916e-15, 1.31887586034e-15, 1.36203846026e-16, 1.16075694013e-16, 1.29034184016e-14, -1.48256414363e-16, 1.76415150978e-15, -5.04529873205e-16, 2.6396666765e-17, -4.57756990983e-16, 2.2689832801e-15, 5.98969996062e-16, 8.30174523195e-16, -1.24831743062e-15, 2.83079749708e-15, 7.88127363583e-17, -1.91114405181e-16, 1.58460373069e-15, 2.48579725793e-16, 8.75257341819e-16, 1.49867157085e-14, 1.61852535736e-15, -2.35310396817e-17, 7.2971861241e-16, 1.84460278871e-16, -6.58165718252e-17, -1.00676834563e-15, 1.11551257282e-15, 5.40627912031e-15, -2.57798035437e-15, -1.81676189856e-15, 4.87706719594e-16, -8.97467477404e-16, 1.52779539895e-16, 5.08435804738e-15, -1.58007273902e-15, 5.27584784246e-14, 1.0582799372e-15, 1.55630501158e-16, 1.50147548979e-15, -1.80724647827e-15, -2.9308161452e-15, -2.64987903975e-16, -6.20798781571e-15, -6.37192886982e-15, 1.36578151305e-14, 4.11449856153e-15, -7.62203077378e-15, -6.65115982007e-15, 2.75187425977e-17, -1.6839065087e-15, 1.44413919146e-15, 1.63571423575e-15, -2.44889260229e-15, 2.62244182149e-15, 8.08889827204e-16, 5.09607550247e-15, 2.99741558825e-16, 1.48427418572e-15, 4.63247220387e-16, 1.37354149963e-14, 9.11413353252e-16, -7.83770724268e-17, -6.77303719623e-16, 1.12313319789e-14, 1.07218380206e-15, 1.8393415929e-15, -4.6143140642e-16, 3.05305988781e-14, -1.50466816212e-15, 1.84871764945e-15, 2.07538381817e-15, 6.87804381697e-15, 3.16341778083e-16, 3.63391108165e-16, 4.52996069251e-16, 5.29858240133e-15, -9.09195860278e-17, 4.14766347666e-15, -1.15875883238e-15, 3.82181230853e-15, 3.51163600879e-16, -9.82802227161e-16, -2.09172631408e-16, 1.02740527923e-14, -1.36575582806e-15, -3.72565535798e-16, -5.70155242519e-17, 1.96149018218e-15, -1.1310458676e-15, 2.29347123987e-15, 6.127982626e-16, 4.07732164444e-15, -8.38081251592e-16, 2.04440430943e-15, -1.46855202014e-16, 8.27680517458e-15, 1.75788615762e-15, 2.44534317827e-15, -3.5172838985e-16, 5.92813033713e-14, 1.31418601149e-16, 2.25141356872e-15, 8.08802501863e-16, 3.96504310245e-15, -7.239150452e-16, -1.5570024126e-15, 6.8309871823e-16, 5.02630634649e-15, -1.82031123201e-15, 5.54336545356e-15, -5.99905973439e-16, 4.72572983089e-15, 6.87341536638e-16, 4.60419615043e-15, -2.0674938355e-15, 9.94388096759e-15, 2.62650078075e-15, 8.2620876871e-16, -6.21762895013e-16, 3.48264103018e-15, -8.71432135114e-16, -3.52048620971e-15, 2.58665031383e-15, 2.40544909649e-15, -3.87071888059e-15, -2.06322263271e-15, -5.43887418291e-16, 2.85971092565e-15, 4.46023168045e-15, -1.19012926654e-15, -9.12521170012e-15, 1.81942124296e-14, 1.4274727085e-14, -6.51401619087e-16, -7.24055578052e-15, -3.54335205748e-15, 2.37907983094e-15, 5.39475479005e-16, -3.26666197019e-15, 9.14040512567e-15, 4.4850648388e-15, 4.49291860245e-15, -2.98104266618e-15, 5.48993257022e-15, -7.20381737789e-16, -2.18820258483e-15, 1.29036326958e-15, 2.00161219181e-14, -2.30258216555e-15, 1.66156178826e-15, 9.65961864596e-16, -1.09395513157e-15, -1.94514500159e-15, -2.90903521817e-15, -1.20842656842e-15, 2.68715045171e-15, 6.49624898559e-16, -1.45562041651e-15, -5.61489696854e-16, -5.52605006013e-16, 1.19948718688e-15, 2.23410230192e-15, -1.4339129634e-16, 2.88038066242e-14, 4.38802570717e-16, 7.50641619326e-16, 5.57200987754e-16, 3.5593014361e-15, -9.5116703599e-17, 2.67414836986e-15, 1.24304317762e-15, 7.33674732368e-15, 5.292814139e-16, -1.17174344976e-15, 2.46964522561e-16, 6.11851770024e-15, 1.34168769079e-15, 2.10778164938e-15, -1.07736225398e-15, 4.69402664978e-15, 9.33375515213e-16, -1.38001608576e-15, -5.85407041713e-16, 1.59325420701e-15, -7.01809248253e-16, -2.45204764222e-15, 1.73762849479e-15, 1.36478639217e-15, -6.91272417172e-16, 3.49655719087e-15, 9.69817982155e-17, 3.37141467259e-15, 2.79440119233e-15, -1.81105091978e-15, -9.6334874024e-16, 1.76484546791e-14, 6.02005880314e-16, 1.40456009736e-15, 1.89599352224e-16, 4.7762565697e-15, -1.5063710346e-15, 7.10647037785e-16, -8.87513413854e-17, 2.90865656137e-15, -1.15285950656e-15, 1.07726168453e-15, 3.54940262707e-16, 4.10136317079e-15, 2.56251438336e-16, -5.29623538998e-16, -8.87809217826e-16, 1.8166176996e-14, 2.28073078977e-15, -1.56838637789e-15, 1.20173507003e-16, -4.92020930739e-15, -1.14467078969e-15, -5.16312506711e-16, 1.68032250205e-15, 6.57367591077e-16, -5.46113498614e-15, 4.21206462423e-15, 2.08879510066e-16, 2.03269633698e-15, 1.45479157899e-15, -1.65721007671e-15, -1.15172383906e-15, -2.29025619274e-12 }; -float tf_real[ 1024 ] = { 1.0, 0.999981175283, 0.999924701839, 0.999830581796, 0.999698818696, 0.999529417501, 0.999322384588, 0.999077727753, 0.998795456205, 0.998475580573, 0.9981181129, 0.997723066644, 0.997290456679, 0.996820299291, 0.996312612183, 0.995767414468, 0.995184726672, 0.994564570734, 0.993906970002, 0.993211949235, 0.992479534599, 0.991709753669, 0.990902635428, 0.990058210262, 0.989176509965, 0.988257567731, 0.987301418158, 0.986308097245, 0.985277642389, 0.984210092387, 0.983105487431, 0.98196386911, 0.980785280403, 0.979569765685, 0.97831737072, 0.977028142658, 0.975702130039, 0.974339382786, 0.972939952206, 0.971503890986, 0.970031253195, 0.968522094274, 0.966976471045, 0.965394441698, 0.963776065795, 0.962121404269, 0.960430519416, 0.958703474896, 0.956940335732, 0.955141168306, 0.953306040354, 0.951435020969, 0.949528180593, 0.947585591018, 0.945607325381, 0.943593458162, 0.941544065183, 0.939459223602, 0.937339011913, 0.935183509939, 0.932992798835, 0.930766961079, 0.928506080473, 0.926210242138, 0.923879532511, 0.921514039342, 0.91911385169, 0.916679059921, 0.914209755704, 0.911706032005, 0.909167983091, 0.906595704515, 0.903989293123, 0.901348847046, 0.898674465694, 0.895966249756, 0.893224301196, 0.890448723245, 0.887639620403, 0.884797098431, 0.881921264348, 0.879012226429, 0.876070094195, 0.873094978418, 0.870086991109, 0.867046245516, 0.863972856122, 0.860866938638, 0.85772861, 0.854557988365, 0.851355193105, 0.848120344803, 0.84485356525, 0.841554977437, 0.838224705555, 0.834862874986, 0.831469612303, 0.828045045258, 0.824589302785, 0.821102514991, 0.817584813152, 0.814036329706, 0.810457198253, 0.806847553544, 0.803207531481, 0.799537269108, 0.795836904609, 0.7921065773, 0.788346427627, 0.784556597156, 0.780737228572, 0.776888465673, 0.773010453363, 0.769103337646, 0.765167265622, 0.761202385484, 0.757208846506, 0.753186799044, 0.749136394523, 0.745057785441, 0.740951125355, 0.736816568877, 0.732654271672, 0.728464390448, 0.724247082951, 0.720002507961, 0.715730825284, 0.711432195745, 0.707106781187, 0.702754744457, 0.698376249409, 0.69397146089, 0.689540544737, 0.685083667773, 0.680600997795, 0.676092703575, 0.671558954847, 0.666999922304, 0.66241577759, 0.657806693297, 0.653172842954, 0.648514401022, 0.64383154289, 0.639124444864, 0.634393284164, 0.629638238915, 0.624859488142, 0.620057211763, 0.615231590581, 0.610382806276, 0.605511041404, 0.600616479384, 0.595699304492, 0.590759701859, 0.585797857456, 0.580813958096, 0.575808191418, 0.570780745887, 0.565731810784, 0.560661576197, 0.55557023302, 0.550457972937, 0.545324988422, 0.54017147273, 0.534997619887, 0.529803624686, 0.524589682678, 0.519355990166, 0.514102744193, 0.508830142543, 0.503538383726, 0.498227666973, 0.49289819223, 0.487550160148, 0.482183772079, 0.476799230063, 0.471396736826, 0.465976495768, 0.460538710958, 0.455083587126, 0.449611329655, 0.44412214457, 0.438616238539, 0.433093818853, 0.42755509343, 0.4220002708, 0.416429560098, 0.410843171058, 0.405241314005, 0.399624199846, 0.393992040061, 0.388345046699, 0.382683432365, 0.377007410216, 0.371317193952, 0.365612997805, 0.359895036535, 0.35416352542, 0.348418680249, 0.342660717312, 0.336889853392, 0.33110630576, 0.325310292162, 0.319502030816, 0.313681740399, 0.307849640042, 0.302005949319, 0.296150888244, 0.290284677254, 0.284407537211, 0.278519689385, 0.27262135545, 0.266712757475, 0.260794117915, 0.254865659605, 0.248927605746, 0.242980179903, 0.237023605994, 0.231058108281, 0.22508391136, 0.219101240157, 0.213110319916, 0.207111376192, 0.201104634842, 0.195090322016, 0.18906866415, 0.183039887955, 0.177004220412, 0.17096188876, 0.16491312049, 0.158858143334, 0.152797185258, 0.146730474455, 0.140658239333, 0.134580708507, 0.128498110794, 0.122410675199, 0.116318630912, 0.110222207294, 0.104121633872, 0.0980171403296, 0.0919089564971, 0.0857973123444, 0.0796824379714, 0.0735645635997, 0.0674439195637, 0.0613207363022, 0.0551952443497, 0.0490676743274, 0.0429382569349, 0.0368072229414, 0.0306748031766, 0.0245412285229, 0.0184067299058, 0.0122715382857, 0.00613588464915, 6.12323399574e-17, -0.00613588464915, -0.0122715382857, -0.0184067299058, -0.0245412285229, -0.0306748031766, -0.0368072229414, -0.0429382569349, -0.0490676743274, -0.0551952443497, -0.0613207363022, -0.0674439195637, -0.0735645635997, -0.0796824379714, -0.0857973123444, -0.0919089564971, -0.0980171403296, -0.104121633872, -0.110222207294, -0.116318630912, -0.122410675199, -0.128498110794, -0.134580708507, -0.140658239333, -0.146730474455, -0.152797185258, -0.158858143334, -0.16491312049, -0.17096188876, -0.177004220412, -0.183039887955, -0.18906866415, -0.195090322016, -0.201104634842, -0.207111376192, -0.213110319916, -0.219101240157, -0.22508391136, -0.231058108281, -0.237023605994, -0.242980179903, -0.248927605746, -0.254865659605, -0.260794117915, -0.266712757475, -0.27262135545, -0.278519689385, -0.284407537211, -0.290284677254, -0.296150888244, -0.302005949319, -0.307849640042, -0.313681740399, -0.319502030816, -0.325310292162, -0.33110630576, -0.336889853392, -0.342660717312, -0.348418680249, -0.35416352542, -0.359895036535, -0.365612997805, -0.371317193952, -0.377007410216, -0.382683432365, -0.388345046699, -0.393992040061, -0.399624199846, -0.405241314005, -0.410843171058, -0.416429560098, -0.4220002708, -0.42755509343, -0.433093818853, -0.438616238539, -0.44412214457, -0.449611329655, -0.455083587126, -0.460538710958, -0.465976495768, -0.471396736826, -0.476799230063, -0.482183772079, -0.487550160148, -0.49289819223, -0.498227666973, -0.503538383726, -0.508830142543, -0.514102744193, -0.519355990166, -0.524589682678, -0.529803624686, -0.534997619887, -0.54017147273, -0.545324988422, -0.550457972937, -0.55557023302, -0.560661576197, -0.565731810784, -0.570780745887, -0.575808191418, -0.580813958096, -0.585797857456, -0.590759701859, -0.595699304492, -0.600616479384, -0.605511041404, -0.610382806276, -0.615231590581, -0.620057211763, -0.624859488142, -0.629638238915, -0.634393284164, -0.639124444864, -0.64383154289, -0.648514401022, -0.653172842954, -0.657806693297, -0.66241577759, -0.666999922304, -0.671558954847, -0.676092703575, -0.680600997795, -0.685083667773, -0.689540544737, -0.69397146089, -0.698376249409, -0.702754744457, -0.707106781187, -0.711432195745, -0.715730825284, -0.720002507961, -0.724247082951, -0.728464390448, -0.732654271672, -0.736816568877, -0.740951125355, -0.745057785441, -0.749136394523, -0.753186799044, -0.757208846506, -0.761202385484, -0.765167265622, -0.769103337646, -0.773010453363, -0.776888465673, -0.780737228572, -0.784556597156, -0.788346427627, -0.7921065773, -0.795836904609, -0.799537269108, -0.803207531481, -0.806847553544, -0.810457198253, -0.814036329706, -0.817584813152, -0.821102514991, -0.824589302785, -0.828045045258, -0.831469612303, -0.834862874986, -0.838224705555, -0.841554977437, -0.84485356525, -0.848120344803, -0.851355193105, -0.854557988365, -0.85772861, -0.860866938638, -0.863972856122, -0.867046245516, -0.870086991109, -0.873094978418, -0.876070094195, -0.879012226429, -0.881921264348, -0.884797098431, -0.887639620403, -0.890448723245, -0.893224301196, -0.895966249756, -0.898674465694, -0.901348847046, -0.903989293123, -0.906595704515, -0.909167983091, -0.911706032005, -0.914209755704, -0.916679059921, -0.91911385169, -0.921514039342, -0.923879532511, -0.926210242138, -0.928506080473, -0.930766961079, -0.932992798835, -0.935183509939, -0.937339011913, -0.939459223602, -0.941544065183, -0.943593458162, -0.945607325381, -0.947585591018, -0.949528180593, -0.951435020969, -0.953306040354, -0.955141168306, -0.956940335732, -0.958703474896, -0.960430519416, -0.962121404269, -0.963776065795, -0.965394441698, -0.966976471045, -0.968522094274, -0.970031253195, -0.971503890986, -0.972939952206, -0.974339382786, -0.975702130039, -0.977028142658, -0.97831737072, -0.979569765685, -0.980785280403, -0.98196386911, -0.983105487431, -0.984210092387, -0.985277642389, -0.986308097245, -0.987301418158, -0.988257567731, -0.989176509965, -0.990058210262, -0.990902635428, -0.991709753669, -0.992479534599, -0.993211949235, -0.993906970002, -0.994564570734, -0.995184726672, -0.995767414468, -0.996312612183, -0.996820299291, -0.997290456679, -0.997723066644, -0.9981181129, -0.998475580573, -0.998795456205, -0.999077727753, -0.999322384588, -0.999529417501, -0.999698818696, -0.999830581796, -0.999924701839, -0.999981175283, -1.0, -0.999981175283, -0.999924701839, -0.999830581796, -0.999698818696, -0.999529417501, -0.999322384588, -0.999077727753, -0.998795456205, -0.998475580573, -0.9981181129, -0.997723066644, -0.997290456679, -0.996820299291, -0.996312612183, -0.995767414468, -0.995184726672, -0.994564570734, -0.993906970002, -0.993211949235, -0.992479534599, -0.991709753669, -0.990902635428, -0.990058210262, -0.989176509965, -0.988257567731, -0.987301418158, -0.986308097245, -0.985277642389, -0.984210092387, -0.983105487431, -0.98196386911, -0.980785280403, -0.979569765685, -0.97831737072, -0.977028142658, -0.975702130039, -0.974339382786, -0.972939952206, -0.971503890986, -0.970031253195, -0.968522094274, -0.966976471045, -0.965394441698, -0.963776065795, -0.962121404269, -0.960430519416, -0.958703474896, -0.956940335732, -0.955141168306, -0.953306040354, -0.951435020969, -0.949528180593, -0.947585591018, -0.945607325381, -0.943593458162, -0.941544065183, -0.939459223602, -0.937339011913, -0.935183509939, -0.932992798835, -0.930766961079, -0.928506080473, -0.926210242138, -0.923879532511, -0.921514039342, -0.91911385169, -0.916679059921, -0.914209755704, -0.911706032005, -0.909167983091, -0.906595704515, -0.903989293123, -0.901348847046, -0.898674465694, -0.895966249756, -0.893224301196, -0.890448723245, -0.887639620403, -0.884797098431, -0.881921264348, -0.879012226429, -0.876070094195, -0.873094978418, -0.870086991109, -0.867046245516, -0.863972856122, -0.860866938638, -0.85772861, -0.854557988365, -0.851355193105, -0.848120344803, -0.84485356525, -0.841554977437, -0.838224705555, -0.834862874986, -0.831469612303, -0.828045045258, -0.824589302785, -0.821102514991, -0.817584813152, -0.814036329706, -0.810457198253, -0.806847553544, -0.803207531481, -0.799537269108, -0.795836904609, -0.7921065773, -0.788346427627, -0.784556597156, -0.780737228572, -0.776888465673, -0.773010453363, -0.769103337646, -0.765167265622, -0.761202385484, -0.757208846506, -0.753186799044, -0.749136394523, -0.745057785441, -0.740951125355, -0.736816568877, -0.732654271672, -0.728464390448, -0.724247082951, -0.720002507961, -0.715730825284, -0.711432195745, -0.707106781187, -0.702754744457, -0.698376249409, -0.69397146089, -0.689540544737, -0.685083667773, -0.680600997795, -0.676092703575, -0.671558954847, -0.666999922304, -0.66241577759, -0.657806693297, -0.653172842954, -0.648514401022, -0.64383154289, -0.639124444864, -0.634393284164, -0.629638238915, -0.624859488142, -0.620057211763, -0.615231590581, -0.610382806276, -0.605511041404, -0.600616479384, -0.595699304492, -0.590759701859, -0.585797857456, -0.580813958096, -0.575808191418, -0.570780745887, -0.565731810784, -0.560661576197, -0.55557023302, -0.550457972937, -0.545324988422, -0.54017147273, -0.534997619887, -0.529803624686, -0.524589682678, -0.519355990166, -0.514102744193, -0.508830142543, -0.503538383726, -0.498227666973, -0.49289819223, -0.487550160148, -0.482183772079, -0.476799230063, -0.471396736826, -0.465976495768, -0.460538710958, -0.455083587126, -0.449611329655, -0.44412214457, -0.438616238539, -0.433093818853, -0.42755509343, -0.4220002708, -0.416429560098, -0.410843171058, -0.405241314005, -0.399624199846, -0.393992040061, -0.388345046699, -0.382683432365, -0.377007410216, -0.371317193952, -0.365612997805, -0.359895036535, -0.35416352542, -0.348418680249, -0.342660717312, -0.336889853392, -0.33110630576, -0.325310292162, -0.319502030816, -0.313681740399, -0.307849640042, -0.302005949319, -0.296150888244, -0.290284677254, -0.284407537211, -0.278519689385, -0.27262135545, -0.266712757475, -0.260794117915, -0.254865659605, -0.248927605746, -0.242980179903, -0.237023605994, -0.231058108281, -0.22508391136, -0.219101240157, -0.213110319916, -0.207111376192, -0.201104634842, -0.195090322016, -0.18906866415, -0.183039887955, -0.177004220412, -0.17096188876, -0.16491312049, -0.158858143334, -0.152797185258, -0.146730474455, -0.140658239333, -0.134580708507, -0.128498110794, -0.122410675199, -0.116318630912, -0.110222207294, -0.104121633872, -0.0980171403296, -0.0919089564971, -0.0857973123444, -0.0796824379714, -0.0735645635997, -0.0674439195637, -0.0613207363022, -0.0551952443497, -0.0490676743274, -0.0429382569349, -0.0368072229414, -0.0306748031766, -0.0245412285229, -0.0184067299058, -0.0122715382857, -0.00613588464915, -1.83697019872e-16, 0.00613588464915, 0.0122715382857, 0.0184067299058, 0.0245412285229, 0.0306748031766, 0.0368072229414, 0.0429382569349, 0.0490676743274, 0.0551952443497, 0.0613207363022, 0.0674439195637, 0.0735645635997, 0.0796824379714, 0.0857973123444, 0.0919089564971, 0.0980171403296, 0.104121633872, 0.110222207294, 0.116318630912, 0.122410675199, 0.128498110794, 0.134580708507, 0.140658239333, 0.146730474455, 0.152797185258, 0.158858143334, 0.16491312049, 0.17096188876, 0.177004220412, 0.183039887955, 0.18906866415, 0.195090322016, 0.201104634842, 0.207111376192, 0.213110319916, 0.219101240157, 0.22508391136, 0.231058108281, 0.237023605994, 0.242980179903, 0.248927605746, 0.254865659605, 0.260794117915, 0.266712757475, 0.27262135545, 0.278519689385, 0.284407537211, 0.290284677254, 0.296150888244, 0.302005949319, 0.307849640042, 0.313681740399, 0.319502030816, 0.325310292162, 0.33110630576, 0.336889853392, 0.342660717312, 0.348418680249, 0.35416352542, 0.359895036535, 0.365612997805, 0.371317193952, 0.377007410216, 0.382683432365, 0.388345046699, 0.393992040061, 0.399624199846, 0.405241314005, 0.410843171058, 0.416429560098, 0.4220002708, 0.42755509343, 0.433093818853, 0.438616238539, 0.44412214457, 0.449611329655, 0.455083587126, 0.460538710958, 0.465976495768, 0.471396736826, 0.476799230063, 0.482183772079, 0.487550160148, 0.49289819223, 0.498227666973, 0.503538383726, 0.508830142543, 0.514102744193, 0.519355990166, 0.524589682678, 0.529803624686, 0.534997619887, 0.54017147273, 0.545324988422, 0.550457972937, 0.55557023302, 0.560661576197, 0.565731810784, 0.570780745887, 0.575808191418, 0.580813958096, 0.585797857456, 0.590759701859, 0.595699304492, 0.600616479384, 0.605511041404, 0.610382806276, 0.615231590581, 0.620057211763, 0.624859488142, 0.629638238915, 0.634393284164, 0.639124444864, 0.64383154289, 0.648514401022, 0.653172842954, 0.657806693297, 0.66241577759, 0.666999922304, 0.671558954847, 0.676092703575, 0.680600997795, 0.685083667773, 0.689540544737, 0.69397146089, 0.698376249409, 0.702754744457, 0.707106781187, 0.711432195745, 0.715730825284, 0.720002507961, 0.724247082951, 0.728464390448, 0.732654271672, 0.736816568877, 0.740951125355, 0.745057785441, 0.749136394523, 0.753186799044, 0.757208846506, 0.761202385484, 0.765167265622, 0.769103337646, 0.773010453363, 0.776888465673, 0.780737228572, 0.784556597156, 0.788346427627, 0.7921065773, 0.795836904609, 0.799537269108, 0.803207531481, 0.806847553544, 0.810457198253, 0.814036329706, 0.817584813152, 0.821102514991, 0.824589302785, 0.828045045258, 0.831469612303, 0.834862874986, 0.838224705555, 0.841554977437, 0.84485356525, 0.848120344803, 0.851355193105, 0.854557988365, 0.85772861, 0.860866938638, 0.863972856122, 0.867046245516, 0.870086991109, 0.873094978418, 0.876070094195, 0.879012226429, 0.881921264348, 0.884797098431, 0.887639620403, 0.890448723245, 0.893224301196, 0.895966249756, 0.898674465694, 0.901348847046, 0.903989293123, 0.906595704515, 0.909167983091, 0.911706032005, 0.914209755704, 0.916679059921, 0.91911385169, 0.921514039342, 0.923879532511, 0.926210242138, 0.928506080473, 0.930766961079, 0.932992798835, 0.935183509939, 0.937339011913, 0.939459223602, 0.941544065183, 0.943593458162, 0.945607325381, 0.947585591018, 0.949528180593, 0.951435020969, 0.953306040354, 0.955141168306, 0.956940335732, 0.958703474896, 0.960430519416, 0.962121404269, 0.963776065795, 0.965394441698, 0.966976471045, 0.968522094274, 0.970031253195, 0.971503890986, 0.972939952206, 0.974339382786, 0.975702130039, 0.977028142658, 0.97831737072, 0.979569765685, 0.980785280403, 0.98196386911, 0.983105487431, 0.984210092387, 0.985277642389, 0.986308097245, 0.987301418158, 0.988257567731, 0.989176509965, 0.990058210262, 0.990902635428, 0.991709753669, 0.992479534599, 0.993211949235, 0.993906970002, 0.994564570734, 0.995184726672, 0.995767414468, 0.996312612183, 0.996820299291, 0.997290456679, 0.997723066644, 0.9981181129, 0.998475580573, 0.998795456205, 0.999077727753, 0.999322384588, 0.999529417501, 0.999698818696, 0.999830581796, 0.999924701839, 0.999981175283 }; -float tf_imag[ 1024 ] = { -0.0, -0.00613588464915, -0.0122715382857, -0.0184067299058, -0.0245412285229, -0.0306748031766, -0.0368072229414, -0.0429382569349, -0.0490676743274, -0.0551952443497, -0.0613207363022, -0.0674439195637, -0.0735645635997, -0.0796824379714, -0.0857973123444, -0.0919089564971, -0.0980171403296, -0.104121633872, -0.110222207294, -0.116318630912, -0.122410675199, -0.128498110794, -0.134580708507, -0.140658239333, -0.146730474455, -0.152797185258, -0.158858143334, -0.16491312049, -0.17096188876, -0.177004220412, -0.183039887955, -0.18906866415, -0.195090322016, -0.201104634842, -0.207111376192, -0.213110319916, -0.219101240157, -0.22508391136, -0.231058108281, -0.237023605994, -0.242980179903, -0.248927605746, -0.254865659605, -0.260794117915, -0.266712757475, -0.27262135545, -0.278519689385, -0.284407537211, -0.290284677254, -0.296150888244, -0.302005949319, -0.307849640042, -0.313681740399, -0.319502030816, -0.325310292162, -0.33110630576, -0.336889853392, -0.342660717312, -0.348418680249, -0.35416352542, -0.359895036535, -0.365612997805, -0.371317193952, -0.377007410216, -0.382683432365, -0.388345046699, -0.393992040061, -0.399624199846, -0.405241314005, -0.410843171058, -0.416429560098, -0.4220002708, -0.42755509343, -0.433093818853, -0.438616238539, -0.44412214457, -0.449611329655, -0.455083587126, -0.460538710958, -0.465976495768, -0.471396736826, -0.476799230063, -0.482183772079, -0.487550160148, -0.49289819223, -0.498227666973, -0.503538383726, -0.508830142543, -0.514102744193, -0.519355990166, -0.524589682678, -0.529803624686, -0.534997619887, -0.54017147273, -0.545324988422, -0.550457972937, -0.55557023302, -0.560661576197, -0.565731810784, -0.570780745887, -0.575808191418, -0.580813958096, -0.585797857456, -0.590759701859, -0.595699304492, -0.600616479384, -0.605511041404, -0.610382806276, -0.615231590581, -0.620057211763, -0.624859488142, -0.629638238915, -0.634393284164, -0.639124444864, -0.64383154289, -0.648514401022, -0.653172842954, -0.657806693297, -0.66241577759, -0.666999922304, -0.671558954847, -0.676092703575, -0.680600997795, -0.685083667773, -0.689540544737, -0.69397146089, -0.698376249409, -0.702754744457, -0.707106781187, -0.711432195745, -0.715730825284, -0.720002507961, -0.724247082951, -0.728464390448, -0.732654271672, -0.736816568877, -0.740951125355, -0.745057785441, -0.749136394523, -0.753186799044, -0.757208846506, -0.761202385484, -0.765167265622, -0.769103337646, -0.773010453363, -0.776888465673, -0.780737228572, -0.784556597156, -0.788346427627, -0.7921065773, -0.795836904609, -0.799537269108, -0.803207531481, -0.806847553544, -0.810457198253, -0.814036329706, -0.817584813152, -0.821102514991, -0.824589302785, -0.828045045258, -0.831469612303, -0.834862874986, -0.838224705555, -0.841554977437, -0.84485356525, -0.848120344803, -0.851355193105, -0.854557988365, -0.85772861, -0.860866938638, -0.863972856122, -0.867046245516, -0.870086991109, -0.873094978418, -0.876070094195, -0.879012226429, -0.881921264348, -0.884797098431, -0.887639620403, -0.890448723245, -0.893224301196, -0.895966249756, -0.898674465694, -0.901348847046, -0.903989293123, -0.906595704515, -0.909167983091, -0.911706032005, -0.914209755704, -0.916679059921, -0.91911385169, -0.921514039342, -0.923879532511, -0.926210242138, -0.928506080473, -0.930766961079, -0.932992798835, -0.935183509939, -0.937339011913, -0.939459223602, -0.941544065183, -0.943593458162, -0.945607325381, -0.947585591018, -0.949528180593, -0.951435020969, -0.953306040354, -0.955141168306, -0.956940335732, -0.958703474896, -0.960430519416, -0.962121404269, -0.963776065795, -0.965394441698, -0.966976471045, -0.968522094274, -0.970031253195, -0.971503890986, -0.972939952206, -0.974339382786, -0.975702130039, -0.977028142658, -0.97831737072, -0.979569765685, -0.980785280403, -0.98196386911, -0.983105487431, -0.984210092387, -0.985277642389, -0.986308097245, -0.987301418158, -0.988257567731, -0.989176509965, -0.990058210262, -0.990902635428, -0.991709753669, -0.992479534599, -0.993211949235, -0.993906970002, -0.994564570734, -0.995184726672, -0.995767414468, -0.996312612183, -0.996820299291, -0.997290456679, -0.997723066644, -0.9981181129, -0.998475580573, -0.998795456205, -0.999077727753, -0.999322384588, -0.999529417501, -0.999698818696, -0.999830581796, -0.999924701839, -0.999981175283, -1.0, -0.999981175283, -0.999924701839, -0.999830581796, -0.999698818696, -0.999529417501, -0.999322384588, -0.999077727753, -0.998795456205, -0.998475580573, -0.9981181129, -0.997723066644, -0.997290456679, -0.996820299291, -0.996312612183, -0.995767414468, -0.995184726672, -0.994564570734, -0.993906970002, -0.993211949235, -0.992479534599, -0.991709753669, -0.990902635428, -0.990058210262, -0.989176509965, -0.988257567731, -0.987301418158, -0.986308097245, -0.985277642389, -0.984210092387, -0.983105487431, -0.98196386911, -0.980785280403, -0.979569765685, -0.97831737072, -0.977028142658, -0.975702130039, -0.974339382786, -0.972939952206, -0.971503890986, -0.970031253195, -0.968522094274, -0.966976471045, -0.965394441698, -0.963776065795, -0.962121404269, -0.960430519416, -0.958703474896, -0.956940335732, -0.955141168306, -0.953306040354, -0.951435020969, -0.949528180593, -0.947585591018, -0.945607325381, -0.943593458162, -0.941544065183, -0.939459223602, -0.937339011913, -0.935183509939, -0.932992798835, -0.930766961079, -0.928506080473, -0.926210242138, -0.923879532511, -0.921514039342, -0.91911385169, -0.916679059921, -0.914209755704, -0.911706032005, -0.909167983091, -0.906595704515, -0.903989293123, -0.901348847046, -0.898674465694, -0.895966249756, -0.893224301196, -0.890448723245, -0.887639620403, -0.884797098431, -0.881921264348, -0.879012226429, -0.876070094195, -0.873094978418, -0.870086991109, -0.867046245516, -0.863972856122, -0.860866938638, -0.85772861, -0.854557988365, -0.851355193105, -0.848120344803, -0.84485356525, -0.841554977437, -0.838224705555, -0.834862874986, -0.831469612303, -0.828045045258, -0.824589302785, -0.821102514991, -0.817584813152, -0.814036329706, -0.810457198253, -0.806847553544, -0.803207531481, -0.799537269108, -0.795836904609, -0.7921065773, -0.788346427627, -0.784556597156, -0.780737228572, -0.776888465673, -0.773010453363, -0.769103337646, -0.765167265622, -0.761202385484, -0.757208846506, -0.753186799044, -0.749136394523, -0.745057785441, -0.740951125355, -0.736816568877, -0.732654271672, -0.728464390448, -0.724247082951, -0.720002507961, -0.715730825284, -0.711432195745, -0.707106781187, -0.702754744457, -0.698376249409, -0.69397146089, -0.689540544737, -0.685083667773, -0.680600997795, -0.676092703575, -0.671558954847, -0.666999922304, -0.66241577759, -0.657806693297, -0.653172842954, -0.648514401022, -0.64383154289, -0.639124444864, -0.634393284164, -0.629638238915, -0.624859488142, -0.620057211763, -0.615231590581, -0.610382806276, -0.605511041404, -0.600616479384, -0.595699304492, -0.590759701859, -0.585797857456, -0.580813958096, -0.575808191418, -0.570780745887, -0.565731810784, -0.560661576197, -0.55557023302, -0.550457972937, -0.545324988422, -0.54017147273, -0.534997619887, -0.529803624686, -0.524589682678, -0.519355990166, -0.514102744193, -0.508830142543, -0.503538383726, -0.498227666973, -0.49289819223, -0.487550160148, -0.482183772079, -0.476799230063, -0.471396736826, -0.465976495768, -0.460538710958, -0.455083587126, -0.449611329655, -0.44412214457, -0.438616238539, -0.433093818853, -0.42755509343, -0.4220002708, -0.416429560098, -0.410843171058, -0.405241314005, -0.399624199846, -0.393992040061, -0.388345046699, -0.382683432365, -0.377007410216, -0.371317193952, -0.365612997805, -0.359895036535, -0.35416352542, -0.348418680249, -0.342660717312, -0.336889853392, -0.33110630576, -0.325310292162, -0.319502030816, -0.313681740399, -0.307849640042, -0.302005949319, -0.296150888244, -0.290284677254, -0.284407537211, -0.278519689385, -0.27262135545, -0.266712757475, -0.260794117915, -0.254865659605, -0.248927605746, -0.242980179903, -0.237023605994, -0.231058108281, -0.22508391136, -0.219101240157, -0.213110319916, -0.207111376192, -0.201104634842, -0.195090322016, -0.18906866415, -0.183039887955, -0.177004220412, -0.17096188876, -0.16491312049, -0.158858143334, -0.152797185258, -0.146730474455, -0.140658239333, -0.134580708507, -0.128498110794, -0.122410675199, -0.116318630912, -0.110222207294, -0.104121633872, -0.0980171403296, -0.0919089564971, -0.0857973123444, -0.0796824379714, -0.0735645635997, -0.0674439195637, -0.0613207363022, -0.0551952443497, -0.0490676743274, -0.0429382569349, -0.0368072229414, -0.0306748031766, -0.0245412285229, -0.0184067299058, -0.0122715382857, -0.00613588464915, -1.22464679915e-16, 0.00613588464915, 0.0122715382857, 0.0184067299058, 0.0245412285229, 0.0306748031766, 0.0368072229414, 0.0429382569349, 0.0490676743274, 0.0551952443497, 0.0613207363022, 0.0674439195637, 0.0735645635997, 0.0796824379714, 0.0857973123444, 0.0919089564971, 0.0980171403296, 0.104121633872, 0.110222207294, 0.116318630912, 0.122410675199, 0.128498110794, 0.134580708507, 0.140658239333, 0.146730474455, 0.152797185258, 0.158858143334, 0.16491312049, 0.17096188876, 0.177004220412, 0.183039887955, 0.18906866415, 0.195090322016, 0.201104634842, 0.207111376192, 0.213110319916, 0.219101240157, 0.22508391136, 0.231058108281, 0.237023605994, 0.242980179903, 0.248927605746, 0.254865659605, 0.260794117915, 0.266712757475, 0.27262135545, 0.278519689385, 0.284407537211, 0.290284677254, 0.296150888244, 0.302005949319, 0.307849640042, 0.313681740399, 0.319502030816, 0.325310292162, 0.33110630576, 0.336889853392, 0.342660717312, 0.348418680249, 0.35416352542, 0.359895036535, 0.365612997805, 0.371317193952, 0.377007410216, 0.382683432365, 0.388345046699, 0.393992040061, 0.399624199846, 0.405241314005, 0.410843171058, 0.416429560098, 0.4220002708, 0.42755509343, 0.433093818853, 0.438616238539, 0.44412214457, 0.449611329655, 0.455083587126, 0.460538710958, 0.465976495768, 0.471396736826, 0.476799230063, 0.482183772079, 0.487550160148, 0.49289819223, 0.498227666973, 0.503538383726, 0.508830142543, 0.514102744193, 0.519355990166, 0.524589682678, 0.529803624686, 0.534997619887, 0.54017147273, 0.545324988422, 0.550457972937, 0.55557023302, 0.560661576197, 0.565731810784, 0.570780745887, 0.575808191418, 0.580813958096, 0.585797857456, 0.590759701859, 0.595699304492, 0.600616479384, 0.605511041404, 0.610382806276, 0.615231590581, 0.620057211763, 0.624859488142, 0.629638238915, 0.634393284164, 0.639124444864, 0.64383154289, 0.648514401022, 0.653172842954, 0.657806693297, 0.66241577759, 0.666999922304, 0.671558954847, 0.676092703575, 0.680600997795, 0.685083667773, 0.689540544737, 0.69397146089, 0.698376249409, 0.702754744457, 0.707106781187, 0.711432195745, 0.715730825284, 0.720002507961, 0.724247082951, 0.728464390448, 0.732654271672, 0.736816568877, 0.740951125355, 0.745057785441, 0.749136394523, 0.753186799044, 0.757208846506, 0.761202385484, 0.765167265622, 0.769103337646, 0.773010453363, 0.776888465673, 0.780737228572, 0.784556597156, 0.788346427627, 0.7921065773, 0.795836904609, 0.799537269108, 0.803207531481, 0.806847553544, 0.810457198253, 0.814036329706, 0.817584813152, 0.821102514991, 0.824589302785, 0.828045045258, 0.831469612303, 0.834862874986, 0.838224705555, 0.841554977437, 0.84485356525, 0.848120344803, 0.851355193105, 0.854557988365, 0.85772861, 0.860866938638, 0.863972856122, 0.867046245516, 0.870086991109, 0.873094978418, 0.876070094195, 0.879012226429, 0.881921264348, 0.884797098431, 0.887639620403, 0.890448723245, 0.893224301196, 0.895966249756, 0.898674465694, 0.901348847046, 0.903989293123, 0.906595704515, 0.909167983091, 0.911706032005, 0.914209755704, 0.916679059921, 0.91911385169, 0.921514039342, 0.923879532511, 0.926210242138, 0.928506080473, 0.930766961079, 0.932992798835, 0.935183509939, 0.937339011913, 0.939459223602, 0.941544065183, 0.943593458162, 0.945607325381, 0.947585591018, 0.949528180593, 0.951435020969, 0.953306040354, 0.955141168306, 0.956940335732, 0.958703474896, 0.960430519416, 0.962121404269, 0.963776065795, 0.965394441698, 0.966976471045, 0.968522094274, 0.970031253195, 0.971503890986, 0.972939952206, 0.974339382786, 0.975702130039, 0.977028142658, 0.97831737072, 0.979569765685, 0.980785280403, 0.98196386911, 0.983105487431, 0.984210092387, 0.985277642389, 0.986308097245, 0.987301418158, 0.988257567731, 0.989176509965, 0.990058210262, 0.990902635428, 0.991709753669, 0.992479534599, 0.993211949235, 0.993906970002, 0.994564570734, 0.995184726672, 0.995767414468, 0.996312612183, 0.996820299291, 0.997290456679, 0.997723066644, 0.9981181129, 0.998475580573, 0.998795456205, 0.999077727753, 0.999322384588, 0.999529417501, 0.999698818696, 0.999830581796, 0.999924701839, 0.999981175283, 1.0, 0.999981175283, 0.999924701839, 0.999830581796, 0.999698818696, 0.999529417501, 0.999322384588, 0.999077727753, 0.998795456205, 0.998475580573, 0.9981181129, 0.997723066644, 0.997290456679, 0.996820299291, 0.996312612183, 0.995767414468, 0.995184726672, 0.994564570734, 0.993906970002, 0.993211949235, 0.992479534599, 0.991709753669, 0.990902635428, 0.990058210262, 0.989176509965, 0.988257567731, 0.987301418158, 0.986308097245, 0.985277642389, 0.984210092387, 0.983105487431, 0.98196386911, 0.980785280403, 0.979569765685, 0.97831737072, 0.977028142658, 0.975702130039, 0.974339382786, 0.972939952206, 0.971503890986, 0.970031253195, 0.968522094274, 0.966976471045, 0.965394441698, 0.963776065795, 0.962121404269, 0.960430519416, 0.958703474896, 0.956940335732, 0.955141168306, 0.953306040354, 0.951435020969, 0.949528180593, 0.947585591018, 0.945607325381, 0.943593458162, 0.941544065183, 0.939459223602, 0.937339011913, 0.935183509939, 0.932992798835, 0.930766961079, 0.928506080473, 0.926210242138, 0.923879532511, 0.921514039342, 0.91911385169, 0.916679059921, 0.914209755704, 0.911706032005, 0.909167983091, 0.906595704515, 0.903989293123, 0.901348847046, 0.898674465694, 0.895966249756, 0.893224301196, 0.890448723245, 0.887639620403, 0.884797098431, 0.881921264348, 0.879012226429, 0.876070094195, 0.873094978418, 0.870086991109, 0.867046245516, 0.863972856122, 0.860866938638, 0.85772861, 0.854557988365, 0.851355193105, 0.848120344803, 0.84485356525, 0.841554977437, 0.838224705555, 0.834862874986, 0.831469612303, 0.828045045258, 0.824589302785, 0.821102514991, 0.817584813152, 0.814036329706, 0.810457198253, 0.806847553544, 0.803207531481, 0.799537269108, 0.795836904609, 0.7921065773, 0.788346427627, 0.784556597156, 0.780737228572, 0.776888465673, 0.773010453363, 0.769103337646, 0.765167265622, 0.761202385484, 0.757208846506, 0.753186799044, 0.749136394523, 0.745057785441, 0.740951125355, 0.736816568877, 0.732654271672, 0.728464390448, 0.724247082951, 0.720002507961, 0.715730825284, 0.711432195745, 0.707106781187, 0.702754744457, 0.698376249409, 0.69397146089, 0.689540544737, 0.685083667773, 0.680600997795, 0.676092703575, 0.671558954847, 0.666999922304, 0.66241577759, 0.657806693297, 0.653172842954, 0.648514401022, 0.64383154289, 0.639124444864, 0.634393284164, 0.629638238915, 0.624859488142, 0.620057211763, 0.615231590581, 0.610382806276, 0.605511041404, 0.600616479384, 0.595699304492, 0.590759701859, 0.585797857456, 0.580813958096, 0.575808191418, 0.570780745887, 0.565731810784, 0.560661576197, 0.55557023302, 0.550457972937, 0.545324988422, 0.54017147273, 0.534997619887, 0.529803624686, 0.524589682678, 0.519355990166, 0.514102744193, 0.508830142543, 0.503538383726, 0.498227666973, 0.49289819223, 0.487550160148, 0.482183772079, 0.476799230063, 0.471396736826, 0.465976495768, 0.460538710958, 0.455083587126, 0.449611329655, 0.44412214457, 0.438616238539, 0.433093818853, 0.42755509343, 0.4220002708, 0.416429560098, 0.410843171058, 0.405241314005, 0.399624199846, 0.393992040061, 0.388345046699, 0.382683432365, 0.377007410216, 0.371317193952, 0.365612997805, 0.359895036535, 0.35416352542, 0.348418680249, 0.342660717312, 0.336889853392, 0.33110630576, 0.325310292162, 0.319502030816, 0.313681740399, 0.307849640042, 0.302005949319, 0.296150888244, 0.290284677254, 0.284407537211, 0.278519689385, 0.27262135545, 0.266712757475, 0.260794117915, 0.254865659605, 0.248927605746, 0.242980179903, 0.237023605994, 0.231058108281, 0.22508391136, 0.219101240157, 0.213110319916, 0.207111376192, 0.201104634842, 0.195090322016, 0.18906866415, 0.183039887955, 0.177004220412, 0.17096188876, 0.16491312049, 0.158858143334, 0.152797185258, 0.146730474455, 0.140658239333, 0.134580708507, 0.128498110794, 0.122410675199, 0.116318630912, 0.110222207294, 0.104121633872, 0.0980171403296, 0.0919089564971, 0.0857973123444, 0.0796824379714, 0.0735645635997, 0.0674439195637, 0.0613207363022, 0.0551952443497, 0.0490676743274, 0.0429382569349, 0.0368072229414, 0.0306748031766, 0.0245412285229, 0.0184067299058, 0.0122715382857, 0.00613588464915 }; diff --git a/benchmarks/vec-fft/fft_dc_float.c b/benchmarks/vec-fft/fft_dc_float.c deleted file mode 100644 index 8099ff2..0000000 --- a/benchmarks/vec-fft/fft_dc_float.c +++ /dev/null @@ -1,8 +0,0 @@ -// See LICENSE for license details. - -double input_data_real[ 1024 ] = { 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 }; -double input_data_imag[ 1024 ] = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }; -double output_data_real[ 1024 ] = { 1024.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 }; -double output_data_imag[ 1024 ] = { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 }; -double tf_real[ 1024 ] = { 1.0, 0.999981175283, 0.999924701839, 0.999830581796, 0.999698818696, 0.999529417501, 0.999322384588, 0.999077727753, 0.998795456205, 0.998475580573, 0.9981181129, 0.997723066644, 0.997290456679, 0.996820299291, 0.996312612183, 0.995767414468, 0.995184726672, 0.994564570734, 0.993906970002, 0.993211949235, 0.992479534599, 0.991709753669, 0.990902635428, 0.990058210262, 0.989176509965, 0.988257567731, 0.987301418158, 0.986308097245, 0.985277642389, 0.984210092387, 0.983105487431, 0.98196386911, 0.980785280403, 0.979569765685, 0.97831737072, 0.977028142658, 0.975702130039, 0.974339382786, 0.972939952206, 0.971503890986, 0.970031253195, 0.968522094274, 0.966976471045, 0.965394441698, 0.963776065795, 0.962121404269, 0.960430519416, 0.958703474896, 0.956940335732, 0.955141168306, 0.953306040354, 0.951435020969, 0.949528180593, 0.947585591018, 0.945607325381, 0.943593458162, 0.941544065183, 0.939459223602, 0.937339011913, 0.935183509939, 0.932992798835, 0.930766961079, 0.928506080473, 0.926210242138, 0.923879532511, 0.921514039342, 0.91911385169, 0.916679059921, 0.914209755704, 0.911706032005, 0.909167983091, 0.906595704515, 0.903989293123, 0.901348847046, 0.898674465694, 0.895966249756, 0.893224301196, 0.890448723245, 0.887639620403, 0.884797098431, 0.881921264348, 0.879012226429, 0.876070094195, 0.873094978418, 0.870086991109, 0.867046245516, 0.863972856122, 0.860866938638, 0.85772861, 0.854557988365, 0.851355193105, 0.848120344803, 0.84485356525, 0.841554977437, 0.838224705555, 0.834862874986, 0.831469612303, 0.828045045258, 0.824589302785, 0.821102514991, 0.817584813152, 0.814036329706, 0.810457198253, 0.806847553544, 0.803207531481, 0.799537269108, 0.795836904609, 0.7921065773, 0.788346427627, 0.784556597156, 0.780737228572, 0.776888465673, 0.773010453363, 0.769103337646, 0.765167265622, 0.761202385484, 0.757208846506, 0.753186799044, 0.749136394523, 0.745057785441, 0.740951125355, 0.736816568877, 0.732654271672, 0.728464390448, 0.724247082951, 0.720002507961, 0.715730825284, 0.711432195745, 0.707106781187, 0.702754744457, 0.698376249409, 0.69397146089, 0.689540544737, 0.685083667773, 0.680600997795, 0.676092703575, 0.671558954847, 0.666999922304, 0.66241577759, 0.657806693297, 0.653172842954, 0.648514401022, 0.64383154289, 0.639124444864, 0.634393284164, 0.629638238915, 0.624859488142, 0.620057211763, 0.615231590581, 0.610382806276, 0.605511041404, 0.600616479384, 0.595699304492, 0.590759701859, 0.585797857456, 0.580813958096, 0.575808191418, 0.570780745887, 0.565731810784, 0.560661576197, 0.55557023302, 0.550457972937, 0.545324988422, 0.54017147273, 0.534997619887, 0.529803624686, 0.524589682678, 0.519355990166, 0.514102744193, 0.508830142543, 0.503538383726, 0.498227666973, 0.49289819223, 0.487550160148, 0.482183772079, 0.476799230063, 0.471396736826, 0.465976495768, 0.460538710958, 0.455083587126, 0.449611329655, 0.44412214457, 0.438616238539, 0.433093818853, 0.42755509343, 0.4220002708, 0.416429560098, 0.410843171058, 0.405241314005, 0.399624199846, 0.393992040061, 0.388345046699, 0.382683432365, 0.377007410216, 0.371317193952, 0.365612997805, 0.359895036535, 0.35416352542, 0.348418680249, 0.342660717312, 0.336889853392, 0.33110630576, 0.325310292162, 0.319502030816, 0.313681740399, 0.307849640042, 0.302005949319, 0.296150888244, 0.290284677254, 0.284407537211, 0.278519689385, 0.27262135545, 0.266712757475, 0.260794117915, 0.254865659605, 0.248927605746, 0.242980179903, 0.237023605994, 0.231058108281, 0.22508391136, 0.219101240157, 0.213110319916, 0.207111376192, 0.201104634842, 0.195090322016, 0.18906866415, 0.183039887955, 0.177004220412, 0.17096188876, 0.16491312049, 0.158858143334, 0.152797185258, 0.146730474455, 0.140658239333, 0.134580708507, 0.128498110794, 0.122410675199, 0.116318630912, 0.110222207294, 0.104121633872, 0.0980171403296, 0.0919089564971, 0.0857973123444, 0.0796824379714, 0.0735645635997, 0.0674439195637, 0.0613207363022, 0.0551952443497, 0.0490676743274, 0.0429382569349, 0.0368072229414, 0.0306748031766, 0.0245412285229, 0.0184067299058, 0.0122715382857, 0.00613588464915, 6.12323399574e-17, -0.00613588464915, -0.0122715382857, -0.0184067299058, -0.0245412285229, -0.0306748031766, -0.0368072229414, -0.0429382569349, -0.0490676743274, -0.0551952443497, -0.0613207363022, -0.0674439195637, -0.0735645635997, -0.0796824379714, -0.0857973123444, -0.0919089564971, -0.0980171403296, -0.104121633872, -0.110222207294, -0.116318630912, -0.122410675199, -0.128498110794, -0.134580708507, -0.140658239333, -0.146730474455, -0.152797185258, -0.158858143334, -0.16491312049, -0.17096188876, -0.177004220412, -0.183039887955, -0.18906866415, -0.195090322016, -0.201104634842, -0.207111376192, -0.213110319916, -0.219101240157, -0.22508391136, -0.231058108281, -0.237023605994, -0.242980179903, -0.248927605746, -0.254865659605, -0.260794117915, -0.266712757475, -0.27262135545, -0.278519689385, -0.284407537211, -0.290284677254, -0.296150888244, -0.302005949319, -0.307849640042, -0.313681740399, -0.319502030816, -0.325310292162, -0.33110630576, -0.336889853392, -0.342660717312, -0.348418680249, -0.35416352542, -0.359895036535, -0.365612997805, -0.371317193952, -0.377007410216, -0.382683432365, -0.388345046699, -0.393992040061, -0.399624199846, -0.405241314005, -0.410843171058, -0.416429560098, -0.4220002708, -0.42755509343, -0.433093818853, -0.438616238539, -0.44412214457, -0.449611329655, -0.455083587126, -0.460538710958, -0.465976495768, -0.471396736826, -0.476799230063, -0.482183772079, -0.487550160148, -0.49289819223, -0.498227666973, -0.503538383726, -0.508830142543, -0.514102744193, -0.519355990166, -0.524589682678, -0.529803624686, -0.534997619887, -0.54017147273, -0.545324988422, -0.550457972937, -0.55557023302, -0.560661576197, -0.565731810784, -0.570780745887, -0.575808191418, -0.580813958096, -0.585797857456, -0.590759701859, -0.595699304492, -0.600616479384, -0.605511041404, -0.610382806276, -0.615231590581, -0.620057211763, -0.624859488142, -0.629638238915, -0.634393284164, -0.639124444864, -0.64383154289, -0.648514401022, -0.653172842954, -0.657806693297, -0.66241577759, -0.666999922304, -0.671558954847, -0.676092703575, -0.680600997795, -0.685083667773, -0.689540544737, -0.69397146089, -0.698376249409, -0.702754744457, -0.707106781187, -0.711432195745, -0.715730825284, -0.720002507961, -0.724247082951, -0.728464390448, -0.732654271672, -0.736816568877, -0.740951125355, -0.745057785441, -0.749136394523, -0.753186799044, -0.757208846506, -0.761202385484, -0.765167265622, -0.769103337646, -0.773010453363, -0.776888465673, -0.780737228572, -0.784556597156, -0.788346427627, -0.7921065773, -0.795836904609, -0.799537269108, -0.803207531481, -0.806847553544, -0.810457198253, -0.814036329706, -0.817584813152, -0.821102514991, -0.824589302785, -0.828045045258, -0.831469612303, -0.834862874986, -0.838224705555, -0.841554977437, -0.84485356525, -0.848120344803, -0.851355193105, -0.854557988365, -0.85772861, -0.860866938638, -0.863972856122, -0.867046245516, -0.870086991109, -0.873094978418, -0.876070094195, -0.879012226429, -0.881921264348, -0.884797098431, -0.887639620403, -0.890448723245, -0.893224301196, -0.895966249756, -0.898674465694, -0.901348847046, -0.903989293123, -0.906595704515, -0.909167983091, -0.911706032005, -0.914209755704, -0.916679059921, -0.91911385169, -0.921514039342, -0.923879532511, -0.926210242138, -0.928506080473, -0.930766961079, -0.932992798835, -0.935183509939, -0.937339011913, -0.939459223602, -0.941544065183, -0.943593458162, -0.945607325381, -0.947585591018, -0.949528180593, -0.951435020969, -0.953306040354, -0.955141168306, -0.956940335732, -0.958703474896, -0.960430519416, -0.962121404269, -0.963776065795, -0.965394441698, -0.966976471045, -0.968522094274, -0.970031253195, -0.971503890986, -0.972939952206, -0.974339382786, -0.975702130039, -0.977028142658, -0.97831737072, -0.979569765685, -0.980785280403, -0.98196386911, -0.983105487431, -0.984210092387, -0.985277642389, -0.986308097245, -0.987301418158, -0.988257567731, -0.989176509965, -0.990058210262, -0.990902635428, -0.991709753669, -0.992479534599, -0.993211949235, -0.993906970002, -0.994564570734, -0.995184726672, -0.995767414468, -0.996312612183, -0.996820299291, -0.997290456679, -0.997723066644, -0.9981181129, -0.998475580573, -0.998795456205, -0.999077727753, -0.999322384588, -0.999529417501, -0.999698818696, -0.999830581796, -0.999924701839, -0.999981175283, -1.0, -0.999981175283, -0.999924701839, -0.999830581796, -0.999698818696, -0.999529417501, -0.999322384588, -0.999077727753, -0.998795456205, -0.998475580573, -0.9981181129, -0.997723066644, -0.997290456679, -0.996820299291, -0.996312612183, -0.995767414468, -0.995184726672, -0.994564570734, -0.993906970002, -0.993211949235, -0.992479534599, -0.991709753669, -0.990902635428, -0.990058210262, -0.989176509965, -0.988257567731, -0.987301418158, -0.986308097245, -0.985277642389, -0.984210092387, -0.983105487431, -0.98196386911, -0.980785280403, -0.979569765685, -0.97831737072, -0.977028142658, -0.975702130039, -0.974339382786, -0.972939952206, -0.971503890986, -0.970031253195, -0.968522094274, -0.966976471045, -0.965394441698, -0.963776065795, -0.962121404269, -0.960430519416, -0.958703474896, -0.956940335732, -0.955141168306, -0.953306040354, -0.951435020969, -0.949528180593, -0.947585591018, -0.945607325381, -0.943593458162, -0.941544065183, -0.939459223602, -0.937339011913, -0.935183509939, -0.932992798835, -0.930766961079, -0.928506080473, -0.926210242138, -0.923879532511, -0.921514039342, -0.91911385169, -0.916679059921, -0.914209755704, -0.911706032005, -0.909167983091, -0.906595704515, -0.903989293123, -0.901348847046, -0.898674465694, -0.895966249756, -0.893224301196, -0.890448723245, -0.887639620403, -0.884797098431, -0.881921264348, -0.879012226429, -0.876070094195, -0.873094978418, -0.870086991109, -0.867046245516, -0.863972856122, -0.860866938638, -0.85772861, -0.854557988365, -0.851355193105, -0.848120344803, -0.84485356525, -0.841554977437, -0.838224705555, -0.834862874986, -0.831469612303, -0.828045045258, -0.824589302785, -0.821102514991, -0.817584813152, -0.814036329706, -0.810457198253, -0.806847553544, -0.803207531481, -0.799537269108, -0.795836904609, -0.7921065773, -0.788346427627, -0.784556597156, -0.780737228572, -0.776888465673, -0.773010453363, -0.769103337646, -0.765167265622, -0.761202385484, -0.757208846506, -0.753186799044, -0.749136394523, -0.745057785441, -0.740951125355, -0.736816568877, -0.732654271672, -0.728464390448, -0.724247082951, -0.720002507961, -0.715730825284, -0.711432195745, -0.707106781187, -0.702754744457, -0.698376249409, -0.69397146089, -0.689540544737, -0.685083667773, -0.680600997795, -0.676092703575, -0.671558954847, -0.666999922304, -0.66241577759, -0.657806693297, -0.653172842954, -0.648514401022, -0.64383154289, -0.639124444864, -0.634393284164, -0.629638238915, -0.624859488142, -0.620057211763, -0.615231590581, -0.610382806276, -0.605511041404, -0.600616479384, -0.595699304492, -0.590759701859, -0.585797857456, -0.580813958096, -0.575808191418, -0.570780745887, -0.565731810784, -0.560661576197, -0.55557023302, -0.550457972937, -0.545324988422, -0.54017147273, -0.534997619887, -0.529803624686, -0.524589682678, -0.519355990166, -0.514102744193, -0.508830142543, -0.503538383726, -0.498227666973, -0.49289819223, -0.487550160148, -0.482183772079, -0.476799230063, -0.471396736826, -0.465976495768, -0.460538710958, -0.455083587126, -0.449611329655, -0.44412214457, -0.438616238539, -0.433093818853, -0.42755509343, -0.4220002708, -0.416429560098, -0.410843171058, -0.405241314005, -0.399624199846, -0.393992040061, -0.388345046699, -0.382683432365, -0.377007410216, -0.371317193952, -0.365612997805, -0.359895036535, -0.35416352542, -0.348418680249, -0.342660717312, -0.336889853392, -0.33110630576, -0.325310292162, -0.319502030816, -0.313681740399, -0.307849640042, -0.302005949319, -0.296150888244, -0.290284677254, -0.284407537211, -0.278519689385, -0.27262135545, -0.266712757475, -0.260794117915, -0.254865659605, -0.248927605746, -0.242980179903, -0.237023605994, -0.231058108281, -0.22508391136, -0.219101240157, -0.213110319916, -0.207111376192, -0.201104634842, -0.195090322016, -0.18906866415, -0.183039887955, -0.177004220412, -0.17096188876, -0.16491312049, -0.158858143334, -0.152797185258, -0.146730474455, -0.140658239333, -0.134580708507, -0.128498110794, -0.122410675199, -0.116318630912, -0.110222207294, -0.104121633872, -0.0980171403296, -0.0919089564971, -0.0857973123444, -0.0796824379714, -0.0735645635997, -0.0674439195637, -0.0613207363022, -0.0551952443497, -0.0490676743274, -0.0429382569349, -0.0368072229414, -0.0306748031766, -0.0245412285229, -0.0184067299058, -0.0122715382857, -0.00613588464915, -1.83697019872e-16, 0.00613588464915, 0.0122715382857, 0.0184067299058, 0.0245412285229, 0.0306748031766, 0.0368072229414, 0.0429382569349, 0.0490676743274, 0.0551952443497, 0.0613207363022, 0.0674439195637, 0.0735645635997, 0.0796824379714, 0.0857973123444, 0.0919089564971, 0.0980171403296, 0.104121633872, 0.110222207294, 0.116318630912, 0.122410675199, 0.128498110794, 0.134580708507, 0.140658239333, 0.146730474455, 0.152797185258, 0.158858143334, 0.16491312049, 0.17096188876, 0.177004220412, 0.183039887955, 0.18906866415, 0.195090322016, 0.201104634842, 0.207111376192, 0.213110319916, 0.219101240157, 0.22508391136, 0.231058108281, 0.237023605994, 0.242980179903, 0.248927605746, 0.254865659605, 0.260794117915, 0.266712757475, 0.27262135545, 0.278519689385, 0.284407537211, 0.290284677254, 0.296150888244, 0.302005949319, 0.307849640042, 0.313681740399, 0.319502030816, 0.325310292162, 0.33110630576, 0.336889853392, 0.342660717312, 0.348418680249, 0.35416352542, 0.359895036535, 0.365612997805, 0.371317193952, 0.377007410216, 0.382683432365, 0.388345046699, 0.393992040061, 0.399624199846, 0.405241314005, 0.410843171058, 0.416429560098, 0.4220002708, 0.42755509343, 0.433093818853, 0.438616238539, 0.44412214457, 0.449611329655, 0.455083587126, 0.460538710958, 0.465976495768, 0.471396736826, 0.476799230063, 0.482183772079, 0.487550160148, 0.49289819223, 0.498227666973, 0.503538383726, 0.508830142543, 0.514102744193, 0.519355990166, 0.524589682678, 0.529803624686, 0.534997619887, 0.54017147273, 0.545324988422, 0.550457972937, 0.55557023302, 0.560661576197, 0.565731810784, 0.570780745887, 0.575808191418, 0.580813958096, 0.585797857456, 0.590759701859, 0.595699304492, 0.600616479384, 0.605511041404, 0.610382806276, 0.615231590581, 0.620057211763, 0.624859488142, 0.629638238915, 0.634393284164, 0.639124444864, 0.64383154289, 0.648514401022, 0.653172842954, 0.657806693297, 0.66241577759, 0.666999922304, 0.671558954847, 0.676092703575, 0.680600997795, 0.685083667773, 0.689540544737, 0.69397146089, 0.698376249409, 0.702754744457, 0.707106781187, 0.711432195745, 0.715730825284, 0.720002507961, 0.724247082951, 0.728464390448, 0.732654271672, 0.736816568877, 0.740951125355, 0.745057785441, 0.749136394523, 0.753186799044, 0.757208846506, 0.761202385484, 0.765167265622, 0.769103337646, 0.773010453363, 0.776888465673, 0.780737228572, 0.784556597156, 0.788346427627, 0.7921065773, 0.795836904609, 0.799537269108, 0.803207531481, 0.806847553544, 0.810457198253, 0.814036329706, 0.817584813152, 0.821102514991, 0.824589302785, 0.828045045258, 0.831469612303, 0.834862874986, 0.838224705555, 0.841554977437, 0.84485356525, 0.848120344803, 0.851355193105, 0.854557988365, 0.85772861, 0.860866938638, 0.863972856122, 0.867046245516, 0.870086991109, 0.873094978418, 0.876070094195, 0.879012226429, 0.881921264348, 0.884797098431, 0.887639620403, 0.890448723245, 0.893224301196, 0.895966249756, 0.898674465694, 0.901348847046, 0.903989293123, 0.906595704515, 0.909167983091, 0.911706032005, 0.914209755704, 0.916679059921, 0.91911385169, 0.921514039342, 0.923879532511, 0.926210242138, 0.928506080473, 0.930766961079, 0.932992798835, 0.935183509939, 0.937339011913, 0.939459223602, 0.941544065183, 0.943593458162, 0.945607325381, 0.947585591018, 0.949528180593, 0.951435020969, 0.953306040354, 0.955141168306, 0.956940335732, 0.958703474896, 0.960430519416, 0.962121404269, 0.963776065795, 0.965394441698, 0.966976471045, 0.968522094274, 0.970031253195, 0.971503890986, 0.972939952206, 0.974339382786, 0.975702130039, 0.977028142658, 0.97831737072, 0.979569765685, 0.980785280403, 0.98196386911, 0.983105487431, 0.984210092387, 0.985277642389, 0.986308097245, 0.987301418158, 0.988257567731, 0.989176509965, 0.990058210262, 0.990902635428, 0.991709753669, 0.992479534599, 0.993211949235, 0.993906970002, 0.994564570734, 0.995184726672, 0.995767414468, 0.996312612183, 0.996820299291, 0.997290456679, 0.997723066644, 0.9981181129, 0.998475580573, 0.998795456205, 0.999077727753, 0.999322384588, 0.999529417501, 0.999698818696, 0.999830581796, 0.999924701839, 0.999981175283 }; -double tf_imag[ 1024 ] = { -0.0, -0.00613588464915, -0.0122715382857, -0.0184067299058, -0.0245412285229, -0.0306748031766, -0.0368072229414, -0.0429382569349, -0.0490676743274, -0.0551952443497, -0.0613207363022, -0.0674439195637, -0.0735645635997, -0.0796824379714, -0.0857973123444, -0.0919089564971, -0.0980171403296, -0.104121633872, -0.110222207294, -0.116318630912, -0.122410675199, -0.128498110794, -0.134580708507, -0.140658239333, -0.146730474455, -0.152797185258, -0.158858143334, -0.16491312049, -0.17096188876, -0.177004220412, -0.183039887955, -0.18906866415, -0.195090322016, -0.201104634842, -0.207111376192, -0.213110319916, -0.219101240157, -0.22508391136, -0.231058108281, -0.237023605994, -0.242980179903, -0.248927605746, -0.254865659605, -0.260794117915, -0.266712757475, -0.27262135545, -0.278519689385, -0.284407537211, -0.290284677254, -0.296150888244, -0.302005949319, -0.307849640042, -0.313681740399, -0.319502030816, -0.325310292162, -0.33110630576, -0.336889853392, -0.342660717312, -0.348418680249, -0.35416352542, -0.359895036535, -0.365612997805, -0.371317193952, -0.377007410216, -0.382683432365, -0.388345046699, -0.393992040061, -0.399624199846, -0.405241314005, -0.410843171058, -0.416429560098, -0.4220002708, -0.42755509343, -0.433093818853, -0.438616238539, -0.44412214457, -0.449611329655, -0.455083587126, -0.460538710958, -0.465976495768, -0.471396736826, -0.476799230063, -0.482183772079, -0.487550160148, -0.49289819223, -0.498227666973, -0.503538383726, -0.508830142543, -0.514102744193, -0.519355990166, -0.524589682678, -0.529803624686, -0.534997619887, -0.54017147273, -0.545324988422, -0.550457972937, -0.55557023302, -0.560661576197, -0.565731810784, -0.570780745887, -0.575808191418, -0.580813958096, -0.585797857456, -0.590759701859, -0.595699304492, -0.600616479384, -0.605511041404, -0.610382806276, -0.615231590581, -0.620057211763, -0.624859488142, -0.629638238915, -0.634393284164, -0.639124444864, -0.64383154289, -0.648514401022, -0.653172842954, -0.657806693297, -0.66241577759, -0.666999922304, -0.671558954847, -0.676092703575, -0.680600997795, -0.685083667773, -0.689540544737, -0.69397146089, -0.698376249409, -0.702754744457, -0.707106781187, -0.711432195745, -0.715730825284, -0.720002507961, -0.724247082951, -0.728464390448, -0.732654271672, -0.736816568877, -0.740951125355, -0.745057785441, -0.749136394523, -0.753186799044, -0.757208846506, -0.761202385484, -0.765167265622, -0.769103337646, -0.773010453363, -0.776888465673, -0.780737228572, -0.784556597156, -0.788346427627, -0.7921065773, -0.795836904609, -0.799537269108, -0.803207531481, -0.806847553544, -0.810457198253, -0.814036329706, -0.817584813152, -0.821102514991, -0.824589302785, -0.828045045258, -0.831469612303, -0.834862874986, -0.838224705555, -0.841554977437, -0.84485356525, -0.848120344803, -0.851355193105, -0.854557988365, -0.85772861, -0.860866938638, -0.863972856122, -0.867046245516, -0.870086991109, -0.873094978418, -0.876070094195, -0.879012226429, -0.881921264348, -0.884797098431, -0.887639620403, -0.890448723245, -0.893224301196, -0.895966249756, -0.898674465694, -0.901348847046, -0.903989293123, -0.906595704515, -0.909167983091, -0.911706032005, -0.914209755704, -0.916679059921, -0.91911385169, -0.921514039342, -0.923879532511, -0.926210242138, -0.928506080473, -0.930766961079, -0.932992798835, -0.935183509939, -0.937339011913, -0.939459223602, -0.941544065183, -0.943593458162, -0.945607325381, -0.947585591018, -0.949528180593, -0.951435020969, -0.953306040354, -0.955141168306, -0.956940335732, -0.958703474896, -0.960430519416, -0.962121404269, -0.963776065795, -0.965394441698, -0.966976471045, -0.968522094274, -0.970031253195, -0.971503890986, -0.972939952206, -0.974339382786, -0.975702130039, -0.977028142658, -0.97831737072, -0.979569765685, -0.980785280403, -0.98196386911, -0.983105487431, -0.984210092387, -0.985277642389, -0.986308097245, -0.987301418158, -0.988257567731, -0.989176509965, -0.990058210262, -0.990902635428, -0.991709753669, -0.992479534599, -0.993211949235, -0.993906970002, -0.994564570734, -0.995184726672, -0.995767414468, -0.996312612183, -0.996820299291, -0.997290456679, -0.997723066644, -0.9981181129, -0.998475580573, -0.998795456205, -0.999077727753, -0.999322384588, -0.999529417501, -0.999698818696, -0.999830581796, -0.999924701839, -0.999981175283, -1.0, -0.999981175283, -0.999924701839, -0.999830581796, -0.999698818696, -0.999529417501, -0.999322384588, -0.999077727753, -0.998795456205, -0.998475580573, -0.9981181129, -0.997723066644, -0.997290456679, -0.996820299291, -0.996312612183, -0.995767414468, -0.995184726672, -0.994564570734, -0.993906970002, -0.993211949235, -0.992479534599, -0.991709753669, -0.990902635428, -0.990058210262, -0.989176509965, -0.988257567731, -0.987301418158, -0.986308097245, -0.985277642389, -0.984210092387, -0.983105487431, -0.98196386911, -0.980785280403, -0.979569765685, -0.97831737072, -0.977028142658, -0.975702130039, -0.974339382786, -0.972939952206, -0.971503890986, -0.970031253195, -0.968522094274, -0.966976471045, -0.965394441698, -0.963776065795, -0.962121404269, -0.960430519416, -0.958703474896, -0.956940335732, -0.955141168306, -0.953306040354, -0.951435020969, -0.949528180593, -0.947585591018, -0.945607325381, -0.943593458162, -0.941544065183, -0.939459223602, -0.937339011913, -0.935183509939, -0.932992798835, -0.930766961079, -0.928506080473, -0.926210242138, -0.923879532511, -0.921514039342, -0.91911385169, -0.916679059921, -0.914209755704, -0.911706032005, -0.909167983091, -0.906595704515, -0.903989293123, -0.901348847046, -0.898674465694, -0.895966249756, -0.893224301196, -0.890448723245, -0.887639620403, -0.884797098431, -0.881921264348, -0.879012226429, -0.876070094195, -0.873094978418, -0.870086991109, -0.867046245516, -0.863972856122, -0.860866938638, -0.85772861, -0.854557988365, -0.851355193105, -0.848120344803, -0.84485356525, -0.841554977437, -0.838224705555, -0.834862874986, -0.831469612303, -0.828045045258, -0.824589302785, -0.821102514991, -0.817584813152, -0.814036329706, -0.810457198253, -0.806847553544, -0.803207531481, -0.799537269108, -0.795836904609, -0.7921065773, -0.788346427627, -0.784556597156, -0.780737228572, -0.776888465673, -0.773010453363, -0.769103337646, -0.765167265622, -0.761202385484, -0.757208846506, -0.753186799044, -0.749136394523, -0.745057785441, -0.740951125355, -0.736816568877, -0.732654271672, -0.728464390448, -0.724247082951, -0.720002507961, -0.715730825284, -0.711432195745, -0.707106781187, -0.702754744457, -0.698376249409, -0.69397146089, -0.689540544737, -0.685083667773, -0.680600997795, -0.676092703575, -0.671558954847, -0.666999922304, -0.66241577759, -0.657806693297, -0.653172842954, -0.648514401022, -0.64383154289, -0.639124444864, -0.634393284164, -0.629638238915, -0.624859488142, -0.620057211763, -0.615231590581, -0.610382806276, -0.605511041404, -0.600616479384, -0.595699304492, -0.590759701859, -0.585797857456, -0.580813958096, -0.575808191418, -0.570780745887, -0.565731810784, -0.560661576197, -0.55557023302, -0.550457972937, -0.545324988422, -0.54017147273, -0.534997619887, -0.529803624686, -0.524589682678, -0.519355990166, -0.514102744193, -0.508830142543, -0.503538383726, -0.498227666973, -0.49289819223, -0.487550160148, -0.482183772079, -0.476799230063, -0.471396736826, -0.465976495768, -0.460538710958, -0.455083587126, -0.449611329655, -0.44412214457, -0.438616238539, -0.433093818853, -0.42755509343, -0.4220002708, -0.416429560098, -0.410843171058, -0.405241314005, -0.399624199846, -0.393992040061, -0.388345046699, -0.382683432365, -0.377007410216, -0.371317193952, -0.365612997805, -0.359895036535, -0.35416352542, -0.348418680249, -0.342660717312, -0.336889853392, -0.33110630576, -0.325310292162, -0.319502030816, -0.313681740399, -0.307849640042, -0.302005949319, -0.296150888244, -0.290284677254, -0.284407537211, -0.278519689385, -0.27262135545, -0.266712757475, -0.260794117915, -0.254865659605, -0.248927605746, -0.242980179903, -0.237023605994, -0.231058108281, -0.22508391136, -0.219101240157, -0.213110319916, -0.207111376192, -0.201104634842, -0.195090322016, -0.18906866415, -0.183039887955, -0.177004220412, -0.17096188876, -0.16491312049, -0.158858143334, -0.152797185258, -0.146730474455, -0.140658239333, -0.134580708507, -0.128498110794, -0.122410675199, -0.116318630912, -0.110222207294, -0.104121633872, -0.0980171403296, -0.0919089564971, -0.0857973123444, -0.0796824379714, -0.0735645635997, -0.0674439195637, -0.0613207363022, -0.0551952443497, -0.0490676743274, -0.0429382569349, -0.0368072229414, -0.0306748031766, -0.0245412285229, -0.0184067299058, -0.0122715382857, -0.00613588464915, -1.22464679915e-16, 0.00613588464915, 0.0122715382857, 0.0184067299058, 0.0245412285229, 0.0306748031766, 0.0368072229414, 0.0429382569349, 0.0490676743274, 0.0551952443497, 0.0613207363022, 0.0674439195637, 0.0735645635997, 0.0796824379714, 0.0857973123444, 0.0919089564971, 0.0980171403296, 0.104121633872, 0.110222207294, 0.116318630912, 0.122410675199, 0.128498110794, 0.134580708507, 0.140658239333, 0.146730474455, 0.152797185258, 0.158858143334, 0.16491312049, 0.17096188876, 0.177004220412, 0.183039887955, 0.18906866415, 0.195090322016, 0.201104634842, 0.207111376192, 0.213110319916, 0.219101240157, 0.22508391136, 0.231058108281, 0.237023605994, 0.242980179903, 0.248927605746, 0.254865659605, 0.260794117915, 0.266712757475, 0.27262135545, 0.278519689385, 0.284407537211, 0.290284677254, 0.296150888244, 0.302005949319, 0.307849640042, 0.313681740399, 0.319502030816, 0.325310292162, 0.33110630576, 0.336889853392, 0.342660717312, 0.348418680249, 0.35416352542, 0.359895036535, 0.365612997805, 0.371317193952, 0.377007410216, 0.382683432365, 0.388345046699, 0.393992040061, 0.399624199846, 0.405241314005, 0.410843171058, 0.416429560098, 0.4220002708, 0.42755509343, 0.433093818853, 0.438616238539, 0.44412214457, 0.449611329655, 0.455083587126, 0.460538710958, 0.465976495768, 0.471396736826, 0.476799230063, 0.482183772079, 0.487550160148, 0.49289819223, 0.498227666973, 0.503538383726, 0.508830142543, 0.514102744193, 0.519355990166, 0.524589682678, 0.529803624686, 0.534997619887, 0.54017147273, 0.545324988422, 0.550457972937, 0.55557023302, 0.560661576197, 0.565731810784, 0.570780745887, 0.575808191418, 0.580813958096, 0.585797857456, 0.590759701859, 0.595699304492, 0.600616479384, 0.605511041404, 0.610382806276, 0.615231590581, 0.620057211763, 0.624859488142, 0.629638238915, 0.634393284164, 0.639124444864, 0.64383154289, 0.648514401022, 0.653172842954, 0.657806693297, 0.66241577759, 0.666999922304, 0.671558954847, 0.676092703575, 0.680600997795, 0.685083667773, 0.689540544737, 0.69397146089, 0.698376249409, 0.702754744457, 0.707106781187, 0.711432195745, 0.715730825284, 0.720002507961, 0.724247082951, 0.728464390448, 0.732654271672, 0.736816568877, 0.740951125355, 0.745057785441, 0.749136394523, 0.753186799044, 0.757208846506, 0.761202385484, 0.765167265622, 0.769103337646, 0.773010453363, 0.776888465673, 0.780737228572, 0.784556597156, 0.788346427627, 0.7921065773, 0.795836904609, 0.799537269108, 0.803207531481, 0.806847553544, 0.810457198253, 0.814036329706, 0.817584813152, 0.821102514991, 0.824589302785, 0.828045045258, 0.831469612303, 0.834862874986, 0.838224705555, 0.841554977437, 0.84485356525, 0.848120344803, 0.851355193105, 0.854557988365, 0.85772861, 0.860866938638, 0.863972856122, 0.867046245516, 0.870086991109, 0.873094978418, 0.876070094195, 0.879012226429, 0.881921264348, 0.884797098431, 0.887639620403, 0.890448723245, 0.893224301196, 0.895966249756, 0.898674465694, 0.901348847046, 0.903989293123, 0.906595704515, 0.909167983091, 0.911706032005, 0.914209755704, 0.916679059921, 0.91911385169, 0.921514039342, 0.923879532511, 0.926210242138, 0.928506080473, 0.930766961079, 0.932992798835, 0.935183509939, 0.937339011913, 0.939459223602, 0.941544065183, 0.943593458162, 0.945607325381, 0.947585591018, 0.949528180593, 0.951435020969, 0.953306040354, 0.955141168306, 0.956940335732, 0.958703474896, 0.960430519416, 0.962121404269, 0.963776065795, 0.965394441698, 0.966976471045, 0.968522094274, 0.970031253195, 0.971503890986, 0.972939952206, 0.974339382786, 0.975702130039, 0.977028142658, 0.97831737072, 0.979569765685, 0.980785280403, 0.98196386911, 0.983105487431, 0.984210092387, 0.985277642389, 0.986308097245, 0.987301418158, 0.988257567731, 0.989176509965, 0.990058210262, 0.990902635428, 0.991709753669, 0.992479534599, 0.993211949235, 0.993906970002, 0.994564570734, 0.995184726672, 0.995767414468, 0.996312612183, 0.996820299291, 0.997290456679, 0.997723066644, 0.9981181129, 0.998475580573, 0.998795456205, 0.999077727753, 0.999322384588, 0.999529417501, 0.999698818696, 0.999830581796, 0.999924701839, 0.999981175283, 1.0, 0.999981175283, 0.999924701839, 0.999830581796, 0.999698818696, 0.999529417501, 0.999322384588, 0.999077727753, 0.998795456205, 0.998475580573, 0.9981181129, 0.997723066644, 0.997290456679, 0.996820299291, 0.996312612183, 0.995767414468, 0.995184726672, 0.994564570734, 0.993906970002, 0.993211949235, 0.992479534599, 0.991709753669, 0.990902635428, 0.990058210262, 0.989176509965, 0.988257567731, 0.987301418158, 0.986308097245, 0.985277642389, 0.984210092387, 0.983105487431, 0.98196386911, 0.980785280403, 0.979569765685, 0.97831737072, 0.977028142658, 0.975702130039, 0.974339382786, 0.972939952206, 0.971503890986, 0.970031253195, 0.968522094274, 0.966976471045, 0.965394441698, 0.963776065795, 0.962121404269, 0.960430519416, 0.958703474896, 0.956940335732, 0.955141168306, 0.953306040354, 0.951435020969, 0.949528180593, 0.947585591018, 0.945607325381, 0.943593458162, 0.941544065183, 0.939459223602, 0.937339011913, 0.935183509939, 0.932992798835, 0.930766961079, 0.928506080473, 0.926210242138, 0.923879532511, 0.921514039342, 0.91911385169, 0.916679059921, 0.914209755704, 0.911706032005, 0.909167983091, 0.906595704515, 0.903989293123, 0.901348847046, 0.898674465694, 0.895966249756, 0.893224301196, 0.890448723245, 0.887639620403, 0.884797098431, 0.881921264348, 0.879012226429, 0.876070094195, 0.873094978418, 0.870086991109, 0.867046245516, 0.863972856122, 0.860866938638, 0.85772861, 0.854557988365, 0.851355193105, 0.848120344803, 0.84485356525, 0.841554977437, 0.838224705555, 0.834862874986, 0.831469612303, 0.828045045258, 0.824589302785, 0.821102514991, 0.817584813152, 0.814036329706, 0.810457198253, 0.806847553544, 0.803207531481, 0.799537269108, 0.795836904609, 0.7921065773, 0.788346427627, 0.784556597156, 0.780737228572, 0.776888465673, 0.773010453363, 0.769103337646, 0.765167265622, 0.761202385484, 0.757208846506, 0.753186799044, 0.749136394523, 0.745057785441, 0.740951125355, 0.736816568877, 0.732654271672, 0.728464390448, 0.724247082951, 0.720002507961, 0.715730825284, 0.711432195745, 0.707106781187, 0.702754744457, 0.698376249409, 0.69397146089, 0.689540544737, 0.685083667773, 0.680600997795, 0.676092703575, 0.671558954847, 0.666999922304, 0.66241577759, 0.657806693297, 0.653172842954, 0.648514401022, 0.64383154289, 0.639124444864, 0.634393284164, 0.629638238915, 0.624859488142, 0.620057211763, 0.615231590581, 0.610382806276, 0.605511041404, 0.600616479384, 0.595699304492, 0.590759701859, 0.585797857456, 0.580813958096, 0.575808191418, 0.570780745887, 0.565731810784, 0.560661576197, 0.55557023302, 0.550457972937, 0.545324988422, 0.54017147273, 0.534997619887, 0.529803624686, 0.524589682678, 0.519355990166, 0.514102744193, 0.508830142543, 0.503538383726, 0.498227666973, 0.49289819223, 0.487550160148, 0.482183772079, 0.476799230063, 0.471396736826, 0.465976495768, 0.460538710958, 0.455083587126, 0.449611329655, 0.44412214457, 0.438616238539, 0.433093818853, 0.42755509343, 0.4220002708, 0.416429560098, 0.410843171058, 0.405241314005, 0.399624199846, 0.393992040061, 0.388345046699, 0.382683432365, 0.377007410216, 0.371317193952, 0.365612997805, 0.359895036535, 0.35416352542, 0.348418680249, 0.342660717312, 0.336889853392, 0.33110630576, 0.325310292162, 0.319502030816, 0.313681740399, 0.307849640042, 0.302005949319, 0.296150888244, 0.290284677254, 0.284407537211, 0.278519689385, 0.27262135545, 0.266712757475, 0.260794117915, 0.254865659605, 0.248927605746, 0.242980179903, 0.237023605994, 0.231058108281, 0.22508391136, 0.219101240157, 0.213110319916, 0.207111376192, 0.201104634842, 0.195090322016, 0.18906866415, 0.183039887955, 0.177004220412, 0.17096188876, 0.16491312049, 0.158858143334, 0.152797185258, 0.146730474455, 0.140658239333, 0.134580708507, 0.128498110794, 0.122410675199, 0.116318630912, 0.110222207294, 0.104121633872, 0.0980171403296, 0.0919089564971, 0.0857973123444, 0.0796824379714, 0.0735645635997, 0.0674439195637, 0.0613207363022, 0.0551952443497, 0.0490676743274, 0.0429382569349, 0.0368072229414, 0.0306748031766, 0.0245412285229, 0.0184067299058, 0.0122715382857, 0.00613588464915 }; diff --git a/benchmarks/vec-fft/fft_gaussian_float.c b/benchmarks/vec-fft/fft_gaussian_float.c deleted file mode 100644 index be531a8..0000000 --- a/benchmarks/vec-fft/fft_gaussian_float.c +++ /dev/null @@ -1,8 +0,0 @@ -// See LICENSE for license details. - -float input_data_real[ 1024 ] = { 0.639426798458, 0.0250107552227, 0.275029318369, 0.223210738149, 0.736471214164, 0.676699487423, 0.892179567705, 0.0869388326294, 0.421921819685, 0.0297972194381, 0.218637974804, 0.505355288103, 0.0265359696839, 0.198837650687, 0.64988443778, 0.544941480603, 0.220440622041, 0.589265683876, 0.809430456678, 0.00649875967806, 0.805819251833, 0.698139394988, 0.340250516518, 0.155479499812, 0.957213072207, 0.336594545113, 0.0927458433801, 0.0967163768335, 0.847494366347, 0.603726031367, 0.807128273274, 0.729731786694, 0.536228091455, 0.973115763979, 0.378534377208, 0.552040631273, 0.829404664253, 0.618519752364, 0.861706900311, 0.577352145257, 0.704571836215, 0.0458243836557, 0.227898275652, 0.289387963602, 0.0797919769236, 0.232790886361, 0.10100142941, 0.27797360311, 0.635684444264, 0.36483217897, 0.370180967117, 0.209507030771, 0.266977822049, 0.936654587712, 0.648035385247, 0.609131005667, 0.171138648198, 0.72912679795, 0.163402493762, 0.379455441758, 0.989523350637, 0.639999759854, 0.556949743775, 0.68461425099, 0.84285192019, 0.775999911546, 0.229048071964, 0.032100243904, 0.315453048059, 0.267740875976, 0.210982843586, 0.942909714335, 0.876367626473, 0.314677880798, 0.655438665295, 0.395631901061, 0.914547589741, 0.458851852587, 0.264880166498, 0.246627507694, 0.561368134163, 0.262741608523, 0.584585990224, 0.897822883602, 0.39940050514, 0.219320759157, 0.997537606495, 0.509526293676, 0.0909094121738, 0.0471163754247, 0.109649130351, 0.627446041703, 0.792079364363, 0.4221599668, 0.063527706152, 0.381619286507, 0.99612138024, 0.529114345099, 0.971078377614, 0.860779702234, 0.0114810219428, 0.72072181936, 0.681710369027, 0.536970330409, 0.266825189953, 0.64096179858, 0.111552173596, 0.434765250669, 0.453723706329, 0.953815927521, 0.875852940378, 0.263389050751, 0.50058611305, 0.17865188053, 0.912627839345, 0.870518569837, 0.298444791449, 0.638949494866, 0.608970211438, 0.15283926855, 0.762510800075, 0.53937903012, 0.778626478631, 0.530353672195, 0.000571896127944, 0.324156057005, 0.0194767423858, 0.929098616265, 0.878721877823, 0.831665529361, 0.307514125403, 0.0579251664942, 0.878009599204, 0.946949445298, 0.0856534520679, 0.485990463317, 0.0692125184684, 0.760602165257, 0.765834429307, 0.1283914645, 0.475282378099, 0.549803593495, 0.26505662894, 0.872433041085, 0.423137940201, 0.211798205442, 0.539296088779, 0.72993106909, 0.20115106339, 0.311716291301, 0.995149356661, 0.649878057639, 0.438100083915, 0.517575841036, 0.121004195868, 0.224697337032, 0.338085562147, 0.588308718457, 0.230114732597, 0.220217384452, 0.070993086009, 0.63110295727, 0.228941783811, 0.905420013006, 0.859635400254, 0.0708573498887, 0.238004634369, 0.668977778296, 0.21423680737, 0.132311848725, 0.935514240581, 0.571043093325, 0.472671026312, 0.784619424291, 0.807496997767, 0.190409914362, 0.0969308142288, 0.431051182406, 0.42357862302, 0.467024668037, 0.72907584946, 0.673364547293, 0.984165211366, 0.098417871152, 0.402621282102, 0.339302605395, 0.861672536353, 0.24865633392, 0.190208908441, 0.448613547833, 0.421881639834, 0.278545144667, 0.249806447882, 0.923265599276, 0.443130745053, 0.861349104762, 0.55032531245, 0.0505883295249, 0.999282468413, 0.83602758508, 0.968996257285, 0.926366983008, 0.848695734414, 0.166311110604, 0.485641125451, 0.213747299199, 0.401040292549, 0.0586353999722, 0.378973118977, 0.98530884378, 0.265203058172, 0.784070601949, 0.455008367339, 0.42300748599, 0.95731764086, 0.995422689493, 0.555768323406, 0.718408275296, 0.154796825274, 0.296707825495, 0.968709364969, 0.579180290816, 0.542195201374, 0.747975560379, 0.0571652729075, 0.584177594459, 0.50285038292, 0.852719892048, 0.157432727939, 0.960778903274, 0.0801114652406, 0.185824960981, 0.59503510645, 0.675212553604, 0.235203895001, 0.119886613947, 0.890287314129, 0.246215347789, 0.594519153533, 0.619381510332, 0.419224915336, 0.583672289291, 0.522782715532, 0.934706257736, 0.204259199424, 0.716191800789, 0.238685952616, 0.395785846791, 0.67169022296, 0.299997079799, 0.316177196272, 0.751864492414, 0.0725431144932, 0.458285522619, 0.998454440854, 0.996096447855, 0.0732607210996, 0.213154312267, 0.26520041475, 0.933259377994, 0.880864173686, 0.879270242485, 0.369527088739, 0.157746832357, 0.83374495464, 0.703539925087, 0.611677765726, 0.987233063632, 0.653976317711, 0.00782310715216, 0.817104135115, 0.2993787522, 0.663388714966, 0.938930003927, 0.134291114393, 0.115428670419, 0.107035977709, 0.553223640885, 0.272348212315, 0.60482982703, 0.717612187139, 0.203597312327, 0.634237958885, 0.26398390163, 0.488531852149, 0.905336491079, 0.846103713295, 0.0922984677127, 0.423575772564, 0.276680223972, 0.00354568908778, 0.77111922302, 0.637113377301, 0.261955262434, 0.741230908348, 0.551680421126, 0.427686918981, 0.00966969960834, 0.0752438600738, 0.8831063933, 0.90392857156, 0.545590289206, 0.834595019886, 0.58250956649, 0.148093785567, 0.127445519282, 0.30825834993, 0.898981488743, 0.796122304888, 0.860702582001, 0.898924636526, 0.21007653834, 0.249529739223, 0.102793621672, 0.780116241871, 0.884134701451, 0.406377389832, 0.620661510151, 0.154553338332, 0.929881015694, 0.86460569622, 0.976206032931, 0.81077171994, 0.881416204663, 0.0247863618982, 0.736564471755, 0.332185467946, 0.930815886048, 0.802235138937, 0.864064028375, 0.810749316574, 0.266805709594, 0.787374509135, 0.108095626403, 0.872166782906, 0.858593251338, 0.222433717546, 0.816586605597, 0.460303234679, 0.305190867339, 0.795345499153, 0.227595487408, 0.0236644347015, 0.193129788328, 0.328261951198, 0.86435294203, 0.966889104048, 0.279124992722, 0.641481738608, 0.39967838436, 0.981149687198, 0.536215732479, 0.939237140325, 0.115341751851, 0.970400611022, 0.178567816172, 0.962534315762, 0.265466362523, 0.108402547215, 0.434563758565, 0.728545060653, 0.313677314195, 0.606208853306, 0.511423059669, 0.385195433345, 0.576588043497, 0.254722506139, 0.708785283834, 0.00169127821863, 0.925575165499, 0.538451997093, 0.719429999145, 0.741950077839, 0.670628504433, 0.364221471781, 0.0699738111263, 0.664237684911, 0.330200036043, 0.313915645058, 0.848015279506, 0.719754263014, 0.300322268211, 0.309284662209, 0.408392908619, 0.402400387058, 0.295655202526, 0.127287799059, 0.420446333773, 0.94036367073, 0.677317945273, 0.902805545733, 0.615514915951, 0.300949874566, 0.547937213136, 0.000405939697288, 0.286913716869, 0.42988814999, 0.579984781196, 0.654705623703, 0.464988190247, 0.442159799305, 0.213701400989, 0.473186185909, 0.901180825828, 0.796024760127, 0.169691396198, 0.0847955367251, 0.515452009915, 0.632940855766, 0.33518825541, 0.818423464537, 0.751138137541, 0.672795670557, 0.224640665997, 0.199129932727, 0.0244253877268, 0.244842544078, 0.475136344219, 0.849737694625, 0.0728282291846, 0.414441010998, 0.629765380738, 0.19443523674, 0.696354250491, 0.49437716901, 0.243984439578, 0.656058011112, 0.00554481813803, 0.750964476618, 0.770046188574, 0.106587296564, 0.425146193943, 0.175886681707, 0.95796604228, 0.517957750444, 0.0502183851406, 0.24919827966, 0.848336347352, 0.45646182547, 0.801416601722, 0.667577732586, 0.987892453066, 0.595452318469, 0.950039608443, 0.89142592581, 0.612652322762, 0.719273961276, 0.504778164824, 0.830569169721, 0.547871950611, 0.897208103233, 0.74365544216, 0.474674436823, 0.259191548465, 0.24723973751, 0.637661436776, 0.765813684297, 0.521299812828, 0.626748436982, 0.274597446918, 0.0774833538647, 0.285728150863, 0.271715107082, 0.319709568419, 0.540152222518, 0.138374061516, 0.231261479728, 0.693949812299, 0.706419141695, 0.0642288507139, 0.407599369667, 0.542611140504, 0.415774234103, 0.206834389514, 0.420143517773, 0.90483847834, 0.584079414204, 0.695522986498, 0.856732032304, 0.765594576118, 0.380381028928, 0.00589608358399, 0.351758802672, 0.753475125059, 0.853447950569, 0.95343033847, 0.41902128263, 0.747515668978, 0.546132309734, 0.603252588941, 0.220538694324, 0.219421634621, 0.435835976047, 0.0290248199467, 0.336129543698, 0.679141885028, 0.404316669138, 0.165044731204, 0.467390149232, 0.127627797281, 0.622256960974, 0.0269664519051, 0.39402025634, 0.564391983025, 0.0271020463403, 0.642749648009, 0.135699487231, 0.461698444052, 0.0502846334886, 0.379103864188, 0.211660284211, 0.326845804881, 0.761229707894, 0.379126215564, 0.752009823555, 0.831924285155, 0.252271531782, 0.0819062327616, 0.01938328705, 0.539419047923, 0.999907828509, 0.34996034372, 0.65014409325, 0.781233049611, 0.651754655244, 0.75423320406, 0.949611732716, 0.199360682363, 0.0203800173203, 0.152382345785, 0.126220974874, 0.66945884462, 0.56396958193, 0.217964540907, 0.699464971246, 0.766898098356, 0.167789143368, 0.607247493891, 0.747925651955, 0.114532871379, 0.819301174311, 0.964720773034, 0.108098749658, 0.0256784254975, 0.311957244395, 0.67734728685, 0.958172838206, 0.396654441517, 0.715014705049, 0.0759964778431, 0.690614415933, 0.627242395601, 0.101901305446, 0.772480884951, 0.850293239089, 0.600411614817, 0.121055065067, 0.983844351515, 0.782635346361, 0.347203765308, 0.428378013235, 0.370570876218, 0.505960789677, 0.341231174861, 0.849575627, 0.82233091809, 0.105538870644, 0.960787567215, 0.635585106101, 0.828707311002, 0.707308643706, 0.435487145008, 0.733795304013, 0.965473731238, 0.270082396387, 0.808199218807, 0.538172906448, 0.483497503883, 0.435574493004, 0.731026214305, 0.268395538049, 0.851713160019, 0.830731018891, 0.0866628980557, 0.881631184003, 0.243863439191, 0.464708466603, 0.610331704231, 0.378989304128, 0.0286999977701, 0.850952836312, 0.181839857158, 0.21211985018, 0.797832356828, 0.340338843164, 0.880319979758, 0.701183750332, 0.276268575756, 0.0101511144387, 0.948062577777, 0.085612961958, 0.720074664104, 0.488577846849, 0.758164653482, 0.690609339447, 0.645902899741, 0.490821335079, 0.792932868132, 0.0930533505547, 0.221596400473, 0.691787155295, 0.30620603013, 0.581555585332, 0.47326048876, 0.530921931146, 0.425503812705, 0.745935436714, 0.330791297196, 0.702854942186, 0.270916426976, 0.251403676201, 0.120655884752, 0.192584293452, 0.119554741255, 0.535863965384, 0.762189609484, 0.185149842438, 0.216384639879, 0.484198587213, 0.724585001093, 0.976607022883, 0.524636869109, 0.282998703275, 0.100526108091, 0.194117578091, 0.227483163483, 0.179441543685, 0.0141483672561, 0.534135089268, 0.274311326783, 0.974294931103, 0.553358966799, 0.69741739291, 0.126279492958, 0.868461197263, 0.490878694524, 0.872719734999, 0.574064219626, 0.469396944931, 0.440468798136, 0.18436367039, 0.0513767171836, 0.941063596768, 0.477729187266, 0.822115645299, 0.400707442252, 0.0740821702556, 0.629445706952, 0.0536090742925, 0.149197584474, 0.562839597085, 0.303835511842, 0.99391812271, 0.118451562211, 0.764443445326, 0.606317651243, 0.790740829843, 0.225687137065, 0.52257253513, 0.450514464889, 0.442721004019, 0.860166665826, 0.990031260467, 0.305380244319, 0.621027321072, 0.609630912245, 0.740089305485, 0.947590200325, 0.207787905824, 0.211025195305, 0.660428137192, 0.157057093381, 0.173813548326, 0.0750648689012, 0.00267572260289, 0.450503704618, 0.59381119512, 0.291259289031, 0.231476234556, 0.706955829879, 0.702987558094, 0.454031326407, 0.687384920071, 0.923911044483, 0.787828026647, 0.625058007164, 0.661183042853, 0.933668458446, 0.425138966104, 0.544562378711, 0.647634723402, 0.908411445213, 0.82663115965, 0.0714098368558, 0.165922789221, 0.307611812614, 0.74895772207, 0.569207049319, 0.288610588306, 0.124353658175, 0.688677991212, 0.699733684976, 0.942676240744, 0.500472177118, 0.493795219345, 0.0804418518993, 0.0398607841836, 0.432028664161, 0.322321583358, 0.250367902412, 0.091326886631, 0.961911102193, 0.835958613906, 0.57519910922, 0.950786277806, 0.999572416877, 0.672281584303, 0.269511025967, 0.0402316731446, 0.756268830413, 0.470500823252, 0.651509489434, 0.916072787927, 0.181489147223, 0.585329625278, 0.634784719454, 0.491725802191, 0.0912424062938, 0.347961056295, 0.333308393665, 0.670133509521, 0.8577330944, 0.329803663579, 0.693673673983, 0.288217795361, 0.945193539563, 0.813566034738, 0.550096608972, 0.454825908602, 0.31451715717, 0.323273786276, 0.970184726809, 0.404175057001, 0.514596252329, 0.988119214782, 0.657660386483, 0.542593594357, 0.413247570799, 0.187582541395, 0.361779359152, 0.756443154056, 0.625408742145, 0.759990536061, 0.20355823835, 0.549219639085, 0.927672760844, 0.438116095072, 0.698250029122, 0.121426083363, 0.973146815822, 0.608871667082, 0.239297462328, 0.158378163805, 0.550839007003, 0.552251409054, 0.0932092012815, 0.992257139395, 0.912929878484, 0.461447894179, 0.11746614909, 0.832143173769, 0.498375504707, 0.716603325992, 0.50887201507, 0.273424896713, 0.834723945577, 0.980244632603, 0.243730906075, 0.55126507688, 0.383586013247, 0.921868149932, 0.508240891593, 0.879326255146, 0.864026934429, 0.276247402822, 0.790006182003, 0.414942423551, 0.934248393683, 0.50773767581, 0.820549473186, 0.282838983283, 0.298555849772, 0.586937722414, 0.998902333229, 0.489640346656, 0.148595418383, 0.538580577704, 0.345123941693, 0.551917417071, 0.543430062959, 0.455344616867, 0.321777350229, 0.188652373707, 0.697498427621, 0.571797641985, 0.233562446058, 0.775544475099, 0.0436472990973, 0.744705151565, 0.705227881025, 0.811408902565, 0.386078752491, 0.663688829485, 0.82074755171, 0.98081813866, 0.495328649616, 0.0370196113456, 0.502291150133, 0.59018042931, 0.869700313362, 0.874190374054, 0.440306209771, 0.525951086808, 0.456928074474, 0.722443827571, 0.409978619746, 0.654781326428, 0.154361218772, 0.469490600985, 0.969203630574, 0.338561234051, 0.692704598587, 0.649836652579, 0.851765292351, 0.852341336566, 0.859342184168, 0.380009397523, 0.316661153933, 0.718717425223, 0.759401809334, 0.872383017399, 0.0358990998377, 0.0684207471816, 0.631161016855, 0.92092909878, 0.997425922956, 0.746766366738, 0.433971471923, 0.0984431263832, 0.633747828781, 0.872579232607, 0.443678551662, 0.694001162793, 0.90342406205, 0.0459909686772, 0.796143465162, 0.293367775965, 0.374841089775, 0.145569795699, 0.531166318149, 0.565928061916, 0.792519473881, 0.169983649068, 0.07896835066, 0.870839598645, 0.619710368537, 0.240829791856, 0.912829016024, 0.143117720129, 0.461149913355, 0.253977339414, 0.255326708159, 0.00939743145487, 0.804633076975, 0.901209423599, 0.677610885699, 0.157975622072, 0.441729783604, 0.345565624443, 0.587571705126, 0.63893870236, 0.424308938461, 0.250098224408, 0.845303925143, 0.199216999109, 0.384693248967, 0.483208061059, 0.237205701928, 0.571922692351, 0.574811930179, 0.992692043627, 0.295230753883, 0.977944484577, 0.658229815929, 0.274480380178, 0.565929016956, 0.685799492734, 0.744668841165, 0.049044250776, 0.606406493076, 0.496727286524, 0.904155290894, 0.286194151459, 0.798860119508, 0.607064998164, 0.352320955835, 0.636617878006, 0.62089116313, 0.677764458623, 0.720928376671, 0.659181540317, 0.838337116963, 0.628248103687, 0.903403704073, 0.646340608891, 0.308932883953, 0.440823190163, 0.579573805368, 0.732359767939, 0.0901333757462, 0.295110451629, 0.747480864938, 0.175640070444, 0.132159797747, 0.539407758984, 0.971489581211, 0.530852373703, 0.913486974482, 0.830472619567, 0.256970084563, 0.824689812542, 0.481847829874, 0.806488493794, 0.746559350717, 0.338715253802, 0.11516970745, 0.962893292869, 0.140757015006, 0.966500209463, 0.860140596899, 0.724216712076, 0.979942242782, 0.9672697473, 0.804587644021, 0.365775049406, 0.790681968589, 0.0139186551009, 0.536572308269, 0.454786027734, 0.672828381874, 0.672340797351, 0.584560091652, 0.822417301227, 0.94029189178, 0.108346102199, 0.233821902212, 0.0250246496465, 0.884234845215, 0.56140738225, 0.915255908743, 0.221367200074, 0.0632170411602, 0.82385535139, 0.909387638428, 0.302190174529, 0.408295855795, 0.139777012507, 0.946261532882, 0.304364584356, 0.492624618978, 0.0971919986218, 0.887259308529, 0.135664048706, 0.453643756889, 0.67048621885, 0.743140121523, 0.945974085779, 0.419126753415, 0.742269014765, 0.15452290241, 0.414884527437, 0.0990216347105, 0.48934703779, 0.408115885698, 0.951521525381, 0.032716286855, 0.370529958734, 0.443383086061, 0.950555169851, 0.855450193306, 0.0993546246061, 0.685680265481, 0.544465861482, 0.977842529452, 0.358673841212, 0.398139642744, 0.189808562161, 0.122159719087, 0.848033188464, 0.454717368571, 0.662768738062, 0.641704467233, 0.59714595952, 0.0213574547364, 0.786794590455, 0.243568897164, 0.125923885308, 0.564577975908, 0.0686101528244, 0.765157375889, 0.207157370347, 0.215951351919, 0.86969542677, 0.328559553432 }; -float input_data_imag[ 1024 ] = { 0.147554179941, 0.900531035632, 0.00283555148002, 0.85840612638, 0.144687980321, 0.129992131443, 0.250654196728, 0.174497120901, 0.661057642597, 0.0257801497862, 0.0148603272307, 0.789984664235, 0.23793160609, 0.323771461962, 0.174246201406, 0.0523990178612, 0.741718056954, 0.526085526598, 0.745665275034, 0.476245965423, 0.778017039314, 0.513237957609, 0.109054010004, 0.503838689786, 0.94541564297, 0.0433650368992, 0.78322699598, 0.86698090776, 0.521451214713, 0.458042522098, 0.964026183122, 0.0608254074945, 0.478981910998, 0.401617254513, 0.686097496062, 0.490268854144, 0.909700829115, 0.0734907157665, 0.0807904774108, 0.608297423633, 0.0656822333201, 0.275015999558, 0.633076724301, 0.548356434048, 0.325185443319, 0.994627755861, 0.530556837431, 0.453715417575, 0.605426791535, 0.099178461679, 0.701779418546, 0.852792737296, 0.650916664881, 0.768962730105, 0.720839916658, 0.215023066327, 0.451554915965, 0.228493574365, 0.338931618835, 0.453498902907, 0.415989650261, 0.0950858392756, 0.426764006261, 0.66510786306, 0.374301023436, 0.152638924769, 0.922985035734, 0.0671333081366, 0.831771888475, 0.0932301017037, 0.0965644325658, 0.738795998489, 0.811769285277, 0.556370735615, 0.586465082739, 0.561586413992, 0.329645981416, 0.122231285355, 0.353598079634, 0.665340520003, 0.750284250251, 0.868092148869, 0.721060678746, 0.968398625311, 0.600410091225, 0.351646185693, 0.57791851839, 0.212738805672, 0.656736302988, 0.224244869108, 0.108218381927, 0.845373418601, 0.367561050615, 0.762605631937, 0.574100004331, 0.807221371152, 0.845155161328, 0.974546602126, 0.818426859541, 0.613573280535, 0.64269916383, 0.0262538314536, 0.929084290995, 0.82946078996, 0.267447725154, 0.180416071961, 0.702698772866, 0.30898468883, 0.339824656777, 0.00610578940366, 0.869862706536, 0.566321094761, 0.400784344, 0.141874654151, 0.633172012656, 0.0306570983809, 0.746111762006, 0.215132880034, 0.419832493765, 0.340895981769, 0.370053092477, 0.721595967743, 0.776835619967, 0.567593556614, 0.0849570399772, 0.0526088264255, 0.157409897107, 0.617838181926, 0.673968710613, 0.272102843546, 0.661938692808, 0.485661704891, 0.442044186698, 0.273166844365, 0.754943143668, 0.11381750811, 0.429913633398, 0.28324647008, 0.67848625476, 0.486632753364, 0.667132558736, 0.0454173626044, 0.395263396088, 0.599324956944, 0.00768708589988, 0.301419362018, 0.21123397922, 0.137234805257, 0.255519504021, 0.328122355938, 0.00772990656931, 0.74701412343, 0.175694801876, 0.380207445715, 0.703671263383, 0.500262346556, 0.83335420242, 0.806200186567, 0.0720754965922, 0.861764362023, 0.0423022615628, 0.0187415365856, 0.921162434502, 0.862110013612, 0.575759160737, 0.573399680886, 0.709498961569, 0.417693959843, 0.115173372664, 0.0208565590247, 0.324768179446, 0.80132215431, 0.618125263304, 0.832025913072, 0.919769751741, 0.0881298812979, 0.844484359815, 0.243316474823, 0.588871288303, 0.523962543001, 0.395766696859, 0.310274561836, 0.339513281148, 0.333068622493, 0.168132708046, 0.510483284542, 0.114026639839, 0.509952062323, 0.90592273158, 0.349375265472, 0.727379105674, 0.818948601525, 0.81503700575, 0.236268848947, 0.146444218278, 0.197271802824, 0.602398985273, 0.760215295547, 0.655509010519, 0.177146128947, 0.772848089248, 0.494117025017, 0.754445825247, 0.759877149608, 0.448905256995, 0.924154258386, 0.564491783403, 0.635298319061, 0.624521779442, 0.864246874831, 0.6272174069, 0.150957401393, 0.0682862584958, 0.442208063836, 0.302820435139, 0.274673667486, 0.0561721202131, 0.50733688529, 0.310407850606, 0.451913863701, 0.056890050834, 0.831696631663, 0.0767310011735, 0.864250033925, 0.855293371456, 0.615008388416, 0.507067817334, 0.462711658927, 0.554316371338, 0.791817797265, 0.895876765557, 0.449733703651, 0.809815917698, 0.651837454649, 0.32152676288, 0.475629027943, 0.150861076696, 0.0618737001011, 0.10350187727, 0.899126833956, 0.343437775838, 0.714315549167, 0.504549001501, 0.172558911436, 0.247743723598, 0.437758274309, 0.439421791763, 0.522748035266, 0.158746207982, 0.372851982101, 0.282893578614, 0.408769397247, 0.338367146841, 0.597885862383, 0.789226931564, 0.647305356969, 0.0659118542797, 0.0945059475151, 0.67837934484, 0.284146973878, 0.723733655002, 0.65656408641, 0.906342697164, 0.873279662061, 0.333362036061, 0.582739514586, 0.141428380584, 0.349820787536, 0.967696507693, 0.698479962812, 0.391957984335, 0.595041228152, 0.938002199566, 0.309581887416, 0.376679306056, 0.791661957864, 0.813184783815, 0.670116399995, 0.828958972894, 0.738774672129, 0.685414440278, 0.526393339734, 0.646024820733, 0.423406366322, 0.361828096347, 0.362597668982, 0.180262922877, 0.214192661209, 0.947668267534, 0.486270920873, 0.226543046534, 0.137565353177, 0.0771650843009, 0.844428388686, 0.101140763668, 0.770874720363, 0.835119826635, 0.883682165493, 0.0377474923576, 0.336764371964, 0.766307604447, 0.13104904143, 0.376719870823, 0.162247212088, 0.831345056689, 0.771097813731, 0.809043719639, 0.165539165744, 0.437673405138, 0.410858611497, 0.676362922189, 0.237530201447, 0.444198709805, 0.284927932563, 0.748536518095, 0.448927963033, 0.534011149698, 0.309467896563, 0.808623871091, 0.469015605032, 0.835113392726, 0.367840958225, 0.947130170244, 0.984439793532, 0.461679978441, 0.281771732704, 0.381872434191, 0.527459788461, 0.966268153206, 0.816891239581, 0.801259224152, 0.138398534603, 0.250003211589, 0.641179036204, 0.874116945052, 0.554540745424, 0.102589731748, 0.845892276733, 0.851166048085, 0.285063014059, 0.763116830292, 0.272791299591, 0.905306208978, 0.147348655992, 0.437472560195, 0.946413263012, 0.222038006907, 0.451127990221, 0.349585078139, 0.0266701908029, 0.0532568871711, 0.502007114693, 0.235778073863, 0.994525351238, 0.374912673418, 0.0281875455282, 0.93082590475, 0.839176287612, 0.649960684294, 0.791380637482, 0.137599587726, 0.286879397313, 0.829761583153, 0.696071988576, 0.138792691818, 0.705536175289, 0.448601473982, 0.00525119830562, 0.0792257712707, 0.255923928437, 0.834963099282, 0.548804245444, 0.727234785325, 0.527771505887, 0.111186860324, 0.288101578039, 0.301151194586, 0.0477494466189, 0.419825543753, 0.793899108639, 0.457113616636, 0.11085789529, 0.905146885662, 0.596739042819, 0.0164353522059, 0.515375730209, 0.241938134421, 0.143576840246, 0.429238893103, 0.614809582776, 0.240564238807, 0.416567595209, 0.664371301742, 0.0856139549873, 0.974654490952, 0.0676793229088, 0.526059445322, 0.50732769658, 0.988331485596, 0.554151952418, 0.39045373256, 0.470135078158, 0.635670791469, 0.981039422552, 0.253650261069, 0.0162422311089, 0.78852001628, 0.344802493163, 0.732941021451, 0.628256962476, 0.77150137411, 0.735186984812, 0.332518608372, 0.0443356882952, 0.546013745208, 0.813508865556, 0.175089127052, 0.779142593478, 0.464622899747, 0.695389251996, 0.631735847758, 0.811497681848, 0.0631005370322, 0.776190399703, 0.457679577447, 0.293442571175, 0.0438062756591, 0.199469833715, 0.0419059419304, 0.93337097995, 0.515383589254, 0.989122702296, 0.543030697654, 0.253313765203, 0.753290918819, 0.191103430734, 0.356974176035, 0.780841566978, 0.865798277078, 0.331924686381, 0.124475008244, 0.368019174315, 0.889486517012, 0.74330770552, 0.894637494955, 0.386644768261, 0.973723584315, 0.496203226537, 0.497523392494, 0.924310466627, 0.519275853535, 0.801148087402, 0.727081324343, 0.0789270060555, 0.60245329883, 0.82234127954, 0.545474397345, 0.321211428215, 0.080068911075, 0.660919221458, 0.306495856091, 0.602621627731, 0.426116072883, 0.689764808445, 0.351546983772, 0.0423551628501, 0.870037175056, 0.352559310308, 0.998150597773, 0.274555360075, 0.980027279194, 0.947904378603, 0.0750411649882, 0.637512537883, 0.363311130651, 0.801095975562, 0.679410607815, 0.95278939628, 0.142779468363, 0.607572903321, 0.781311969743, 0.0347989657985, 0.0672333630621, 0.778515373507, 0.366328473107, 0.382854401689, 0.567244641724, 0.605094828855, 0.679062056913, 0.948823529266, 0.372013378471, 0.763084471799, 0.573921778334, 0.529459881536, 0.398034045952, 0.649560736706, 0.249611653093, 0.113448612585, 0.735674859479, 0.499043960256, 0.386987380039, 0.56167271076, 0.261776676587, 0.26028977114, 0.446273112406, 0.996365112155, 0.285576877698, 0.916478909542, 0.491200195254, 0.122637421904, 0.852826290384, 0.452042685245, 0.898679030786, 0.445111192742, 0.0877907411047, 0.681929260251, 0.845521218975, 0.3195877721, 0.347425294739, 0.0649390783161, 0.542171361226, 0.891331682354, 0.851362050753, 0.711809104007, 0.927324456723, 0.637700022564, 0.793696383845, 0.508755745174, 0.121362455078, 0.200980371178, 0.138876872038, 0.790373060808, 0.0262840268083, 0.55402143726, 0.368911165501, 0.803661726289, 0.551646933926, 0.611948362621, 0.0862154816519, 0.309290717528, 0.999595043934, 0.718869659891, 0.52569565483, 0.769164550375, 0.823339399508, 0.0737507129112, 0.972379731514, 0.642338589386, 0.449974495663, 0.68010899065, 0.344514780703, 0.87796015165, 0.780262928838, 0.639793929367, 0.181963136552, 0.966264613934, 0.432618286482, 0.910712270947, 0.0554128500178, 0.124161120639, 0.15301546681, 0.16465707989, 0.322660751155, 0.709332132529, 0.346023082342, 0.940904054932, 0.894925916821, 0.845933706156, 0.250605308982, 0.635057091388, 0.550841415483, 0.125170295127, 0.302824606109, 0.533478029768, 0.502573144741, 0.168635901748, 0.941606987869, 0.15419426688, 0.658732873384, 0.720632768437, 0.605138907862, 0.842530004113, 0.563618034431, 0.825236267327, 0.0283734878989, 0.0454618032913, 0.641453733824, 0.576771231477, 0.651129977486, 0.766959000916, 0.416586783663, 0.638991192209, 0.498038060136, 0.627164010298, 0.289671656802, 0.956650169954, 0.482944818175, 0.804688154216, 0.684990841196, 0.29743387143, 0.0729730255053, 0.0599130329347, 0.43960549992, 0.484251130107, 0.204023013563, 0.606660262821, 0.312582499247, 0.718362885112, 0.734199754805, 0.860777365754, 0.975374127915, 0.130766151552, 0.37054019805, 0.561651215748, 0.319115886403, 0.466472567041, 0.267471674454, 0.247918882526, 0.0968116525606, 0.29021200497, 0.384149833502, 0.615377444164, 0.248270280381, 0.865307501721, 0.15969966213, 0.327435820801, 0.577687037894, 0.312714920862, 0.763121375139, 0.49826554206, 0.514724839231, 0.498759708398, 0.308540482054, 0.0231762982164, 0.945232804069, 0.505444463024, 0.966686630552, 0.215144422526, 0.352895088856, 0.0505404046279, 0.494894203525, 0.882339476368, 0.65426003689, 0.470586853368, 0.536690749289, 0.847172365393, 0.430927769348, 0.882455730919, 0.727508063359, 0.763856764162, 0.365937352518, 0.400581621015, 0.570281643881, 0.194655301888, 0.553222926621, 0.0735317497428, 0.504255529123, 0.764404114707, 0.279720677624, 0.989090700621, 0.680398640119, 0.118811019724, 0.975082815414, 0.393903712729, 0.794897228381, 0.339085299953, 0.938948566955, 0.754965172293, 0.199057881552, 0.509122516225, 0.500077903571, 0.0453033524671, 0.137036373568, 0.333040705353, 0.473744150395, 0.456988559283, 0.606260522404, 0.515505732147, 0.327965847637, 0.613068121065, 0.162502045877, 0.990615737561, 0.739319360574, 0.299234342528, 0.336373452152, 0.828289385957, 0.532339829876, 0.708739806435, 0.299790564737, 0.815748833244, 0.368357809866, 0.673806392473, 0.979898031179, 0.583702141849, 0.79675481393, 0.725324212552, 0.688043651203, 0.0266471549638, 0.474590214085, 0.967070696172, 0.782903991431, 0.776162025172, 0.577634395864, 0.721400112296, 0.583523277048, 0.170512061747, 0.629025241145, 0.619735805501, 0.841167124958, 0.1477757083, 0.680726895051, 0.0315705133421, 0.948205170784, 0.109895521334, 0.0189373675066, 0.313692483446, 0.151431258119, 0.690500260919, 0.410377409323, 0.774972301807, 0.920520949897, 0.872817708912, 0.735837271269, 0.0622812860144, 0.138082485785, 0.207341704971, 0.325049534426, 0.662226799714, 0.5254771514, 0.313752598738, 0.173182423857, 0.912124160924, 0.342327017682, 0.354286988645, 0.771989784149, 0.720924561327, 0.643309099999, 0.69331331003, 0.610076580079, 0.192264169137, 0.246519135527, 0.558086650807, 0.224867037993, 0.972910627591, 0.297614565277, 0.289004137404, 0.207277794855, 0.70498825974, 0.317040745018, 0.348803174201, 0.933700374771, 0.795405356002, 0.273457536755, 0.121874105733, 0.676622245783, 0.379694185374, 0.980160537321, 0.818377460131, 0.954608863391, 0.804615833957, 0.290452651993, 0.287630341614, 0.714141287498, 0.346363514096, 0.442376111865, 0.256443975473, 0.479079263016, 0.202068007201, 0.538577923709, 0.933023933783, 0.696171300647, 0.137272954801, 0.615677034414, 0.586830498571, 0.24245803841, 0.669833964893, 0.531041489733, 0.637944573409, 0.0524911068395, 0.413301366048, 0.71735805625, 0.100544904777, 0.770766058098, 0.00518144640713, 0.55035256578, 0.92909968017, 0.406907451547, 0.935032098596, 0.878399621514, 0.477448520441, 0.199455974668, 0.963914038891, 0.321167702119, 0.64589791789, 0.907936958736, 0.0894607205115, 0.574133353175, 0.535152276894, 0.723117678242, 0.936669379751, 0.91322972567, 0.175064775481, 0.882244973165, 0.175788707539, 0.919634811851, 0.997171803089, 0.396994574278, 0.495383897322, 0.936608744778, 0.962131380083, 0.926039697896, 0.876743167918, 0.0092671684801, 0.567961868664, 0.107300690774, 0.982993888371, 0.28456165235, 0.989099470089, 0.543300483557, 0.493912420342, 0.938560501741, 0.851059738578, 0.468020769006, 0.192811398274, 0.11264676102, 0.16249426254, 0.458914471032, 0.25726488023, 0.186199069128, 0.736617895492, 0.790767664425, 0.567781222421, 0.757282750258, 0.175494913838, 0.856146504273, 0.897042761784, 0.826989825276, 0.51528065896, 0.0867377698484, 0.66925585341, 0.184781201047, 0.140611875634, 0.323601670085, 0.248047083667, 0.260785277065, 0.235521252802, 0.753756651781, 0.954034822655, 0.301945839692, 0.722882528401, 0.0114357341942, 0.65368336707, 0.692768590423, 0.0621243318005, 0.118224847804, 0.306806342004, 0.405416612968, 0.502520471238, 0.895118369816, 0.703557035102, 0.310977948385, 0.117415745845, 0.916130385851, 0.295037600156, 0.614625448144, 0.219128600935, 0.133568782197, 0.153185564689, 0.747734837151, 0.605738948089, 0.415845615431, 0.549234508818, 0.470828076879, 0.537517687693, 0.66409443934, 0.218411622657, 0.247465429309, 0.754739549725, 0.873135058488, 0.0818703064733, 0.446747977496, 0.703766125156, 0.0781027221474, 0.564168722273, 0.0617580475567, 0.547649248711, 0.505487056093, 0.572701674228, 0.149852381382, 0.328117637742, 0.520341541185, 0.116240022185, 0.205401485539, 0.583147678441, 0.0909416444517, 0.510375354033, 0.808692083177, 0.45343230018, 0.513247843202, 0.456798475712, 0.0577367809325, 0.462378305739, 0.806915352554, 0.723280079825, 0.395948709953, 0.816453225933, 0.745804482832, 0.578311265059, 0.0452898027278, 0.344528866562, 0.0637599121121, 0.994123660477, 0.934582798885, 0.0690191461603, 0.933775562585, 0.0317348710231, 0.408866935819, 0.768972062583, 0.765827682924, 0.978333284924, 0.645880818097, 0.420361938882, 0.992856598581, 0.382479618851, 0.869620285311, 0.906767311525, 0.375645533802, 0.682730354102, 0.661792538125, 0.539300263919, 0.653534098419, 0.347769887139, 0.178473629004, 0.537258486398, 0.528842539544, 0.727858140906, 0.222690215966, 0.00347329494491, 0.022735327322, 0.298362988703, 0.673499857777, 0.544445339025, 0.531933608497, 0.823360437376, 0.247512038504, 0.346159734988, 0.275649727795, 0.937410361135, 0.725023945909, 0.112844638766, 0.809478183539, 0.419240598492, 0.766053467514, 0.883756621845, 0.0156457963635, 0.20608162185, 0.100896713093, 0.0335762757543, 0.597784896732, 0.703286266865, 0.0486763212437, 0.74054107848, 0.402265350811, 0.234339278488, 0.217269210178, 0.86373024267, 0.0564440350245, 0.503895848941, 0.289263451354, 0.815786256763, 0.731517483116, 0.318903696369, 0.597917674277, 0.672531901437, 0.320665115393, 0.301764435144, 0.143260434163, 0.660212423811, 0.221042740446, 0.300500953757, 0.0609576371068, 0.948520255027, 0.879713890964, 0.911577665621, 0.625993137648, 0.427200582295, 0.495620787493, 0.972290235344, 0.941586409832, 0.671342524746, 0.785804595981, 0.318734457316, 0.416324633421, 0.149217607825, 0.376460188507, 0.754416097238, 0.473518820412, 0.84934093226, 0.300736418795, 0.707576797488, 0.805776159935, 0.914741173816, 0.562385949587, 0.967786188547, 0.557286758199, 0.134092751059, 0.24285851609, 0.20333673306, 0.646705851548, 0.922226104511, 0.84713338592, 0.0924639965269, 0.724584712307, 0.190481618431, 0.268461587855, 0.673671920635, 0.602922044989, 0.87362045849, 0.188163293933, 0.761696417537, 0.724305239852, 0.558850476273, 0.479394206471, 0.869473851525 }; -float output_data_real[ 1024 ] = { 523.339819046, -2.25302908212, -13.6281669096, -0.80619315498, -0.530026276956, -4.61942176839, -15.3890656376, -3.0913060525, -11.2804237404, 1.99387250637, -13.4091466836, -4.09537922666, -2.32245381054, -0.64832532284, -9.73667687407, -9.06594386518, 10.9668241754, -3.45541390314, -0.385557892975, -1.5693787719, -14.9361104082, -5.66587656353, -17.715522953, 1.17114033618, -8.0000550754, -2.69813152147, 6.46776849676, 5.82847924327, 6.36864326639, -11.4604071804, -1.94502670431, -1.29965751473, 9.96555961198, -17.6728067097, 0.558747943009, -2.13636750466, -5.40103429067, 2.21299623501, 6.30779448836, -15.274800562, -3.57404067061, 12.2855136836, 1.42858053935, -12.7703797658, -5.77711407326, -15.9385041121, 9.81315261269, 12.2999220423, -4.8845795721, 4.13254134413, -2.36796593852, 6.47175206967, 2.20243239151, 7.76650946603, -16.0451024828, 11.6051149242, 6.97855004663, -4.55588851949, -14.0775515689, 0.917378719286, -11.57332925, 5.43583632389, -1.24037435335, -1.01714644098, -3.17204619793, -0.968743494785, -13.7217839771, 18.117348241, 6.70087486842, 0.837543266277, -5.72502516431, -2.51079035409, -2.22933773533, 13.5957934661, -1.82248187106, -4.18577974683, 9.61244462198, -8.95651190197, 5.12501793077, -3.61159316886, 10.6470567404, 2.27092976986, -0.0827896650535, 5.50874293233, 7.33731902236, -2.94822920479, 3.91670085012, -16.7425658488, 5.0179945464, -11.713599987, -7.36612720367, -2.31339159954, -17.4146633541, -15.0787281324, 0.735615068694, 10.6787096792, -1.74662053045, -2.87977051903, 4.11229707267, -7.13004519893, 3.15294576203, -13.5065322624, 11.5554697347, 11.0551720774, -21.1109429596, -6.31675367637, -13.9481012236, -5.2479309573, 11.3818534919, -9.69120798387, 9.15997041226, -5.41868267967, 6.10171039384, -1.37509560649, 7.66322947892, -8.68542240579, 9.147981111, -18.262887187, -3.52019639509, 10.1440556833, -0.345591164593, -14.5981916828, 8.16769814775, -14.1702575208, -6.78170466623, 12.6927064711, 8.41024019164, 11.461314248, -8.25572360343, 6.65464555168, 3.07617698317, 4.22311151574, 4.21561422449, 20.54703981, 5.08203365767, -13.2867290596, 4.18334512326, 2.92294590961, 4.30019095423, 0.129794257549, -1.68914651643, -0.0441216512604, 0.799742445747, 3.7055524499, 13.3151504339, -5.36352809629, 6.37966591064, -3.26733547436, -8.38241501637, -17.4911917886, 1.69296723227, -12.9639911866, 4.47907548169, 2.22339201317, -5.99590099077, -11.7418486065, -24.4071199552, 12.943538646, 8.07081501288, -7.40333434291, 6.93800908458, -3.76115503048, 4.56867439411, 12.2657935523, -8.71070098935, -7.51509898975, -7.09604387498, 6.37115040803, -2.24526151697, 14.935076979, 4.12746162596, 11.1845803849, 1.9404937002, -7.99298471277, -21.569739492, -4.01176561996, 4.5444659373, 0.277298384199, -5.44957967534, -2.0520874358, -2.83396857543, 14.013157912, 3.33770001111, -15.7334864981, 15.929866936, 8.34316517803, -6.38972756559, 2.00666412991, -0.068013211758, 26.6388942369, 8.10213306678, 1.17811684207, -14.6849117564, 7.37450850342, 8.46112849842, 9.36178946446, -11.3646733656, -8.71053552884, -4.2241057277, 29.8348373812, 3.73772044572, 15.768902937, -6.42540800291, 15.6630657621, -10.932270682, 10.3506262793, 1.90282408301, -10.5136356229, -11.4445468029, 7.27309719693, 9.34589135464, 0.703716953688, -5.98949342887, 11.1221093369, 2.97844209831, 9.21370893117, 20.8753121238, -9.66716466095, -4.47077749851, -7.04508394114, 1.03164401125, -6.19998822626, 3.84935326632, 1.24899505755, -7.62342343114, 6.10823431141, -0.154318543253, -6.33938551055, -25.3376326449, -0.525787380384, -13.0502718768, -7.0974425784, 9.34509201089, 2.4758422549, -1.65468766696, 8.58010266138, 15.1573153552, 2.82021091072, -6.80785036054, 1.24792131136, -1.90507688987, 10.4497165234, 12.7431470321, -5.03265223978, -5.53173749138, -6.64891013269, 4.53880277599, -6.29032354847, 1.22878949443, -15.1803883384, 5.65667122151, -1.61094200518, -3.93388522011, 13.9359552058, 0.721061101985, -8.48163777509, -14.5029571154, 0.38870448995, -8.65823100584, 1.05538669802, 5.65423482084, 12.3796360364, -9.36598247279, -6.43583522755, -0.0599501770835, 5.8243135972, -16.5031706035, -10.3233921733, -9.16715101614, -11.4895608137, 13.2715816904, 1.41386869053, 4.36107566034, -7.89013206755, 9.61213095446, -12.9420175864, -2.70928277087, 12.2321759489, -6.5746312976, -5.77009892318, 6.87638926056, -0.838056927886, -11.410527574, -2.38068549491, 1.3429932681, 1.570869201, 7.77050574327, 1.00120457495, 12.653671588, -6.50713951566, -9.0157516339, 0.996272550324, 0.748772529975, -9.39314796374, 2.8112781953, 3.19905539975, -10.063653504, -3.24424962098, 1.91183056321, 4.73179732548, 0.692044118492, 0.518544836905, 4.49057710504, -6.67315308685, -8.12266907846, 1.48856600312, 4.36723192457, -1.49894108982, 0.767667455247, -3.46285611381, 0.939843019606, -1.16629942151, -1.37260262341, -1.59507907153, 13.1188978143, -1.38903341062, -10.9607019671, -1.52922889652, -3.96961033611, 9.21877442521, 4.74341372311, 1.97730233687, 4.72580730819, -6.53108554459, -10.6594718628, 8.60092081117, 4.64088988963, 0.372694746369, -4.47837214022, -0.950882075714, -2.23624187301, 17.7024719392, -16.1803045833, 0.643701740843, 4.58016010356, -3.26303394234, -0.767126947127, -15.0727153516, -9.90620302183, -11.3521592266, 12.4915506167, 0.28532973901, 10.2785017474, 1.21526327579, 9.63089150898, -5.93595058575, -2.48194641563, -15.8250388835, -0.879498151116, 22.6648231025, -7.25246583129, -2.78593034449, -5.44427824938, -14.1403150963, 20.661828921, 2.63021399105, 9.7275375501, -8.28117738735, -15.419850599, -0.939910470156, -5.87929934337, -0.40704690097, 0.0285233583903, 2.64371166801, -0.674956515198, -27.2940459915, 2.80564486542, -9.40067344751, 21.119716226, -14.4558953803, 1.45059507862, -4.20801842802, 14.5434401031, 1.1383817686, -0.904149789762, 6.28241763168, 1.12301311363, 1.33678200232, -3.82686686713, -4.35501795966, 6.33247921457, 3.01448061343, 5.69075219782, 5.51438263581, -15.5752726654, -3.19876217205, 2.38822632773, 5.11803178251, 9.03681162213, -7.64315099375, 18.5157358267, -2.31470463367, 5.44377517955, -0.89638986682, 6.69476956698, 7.27397239951, 4.67722114955, 8.92482689274, 6.54599423533, 3.45891564942, 6.26819615338, 6.46289871658, 8.37901001134, 1.58029807742, 16.7916633295, -8.68493651473, 7.47975213912, 15.0775856513, 6.57976319637, 11.8432250726, 24.8286196195, 1.98738281554, -2.95527871376, 10.2219654466, 8.40474435333, -9.8036628942, 10.0601549232, -4.75579153827, 4.93761657863, -3.7990227251, 4.61241988297, -6.34002518477, -7.29851062035, -14.8105414469, -6.00843262059, 4.145151184, 15.7003631256, 9.94165176585, -6.13800672603, 7.0325930659, 15.0169600884, -9.29010687958, 16.3518466818, -2.49892516086, 7.31471744425, 0.976087299479, 0.370525080287, 4.94559490274, 12.6275015156, -10.1957705583, -4.60319356206, -6.79865866686, 1.03453533203, 7.51243715589, -6.97500071338, -3.63501551246, 16.8194269911, 12.7040610273, -9.45951873812, -12.4511428807, 8.10693626771, 6.88149515167, 6.47059617301, -6.18203738574, -3.14337978189, 7.15565243698, 11.1428731917, -12.6838583214, -7.00454344477, -1.24942263615, 4.06431770396, 0.242639774491, -0.215811452352, -3.79320934011, -10.3962669193, -1.75865348002, -0.260794248678, -13.7928251442, -16.0960904341, 24.6536827836, -1.9482655919, -7.33570926663, -2.61373091016, 7.53418158389, -7.05322569436, -0.441928141677, -20.9188431906, 31.7656019752, 1.01141445699, 5.32893083516, 7.57287149852, -20.258044967, 14.2693223362, 13.6630541705, 5.25505749426, 8.87075217455, 8.98371257401, 5.88329372983, 4.31838341274, 3.77437123185, -8.5610174536, -0.0550407163278, -1.59605768557, -23.1154382969, -9.86064527802, 0.149375883171, -7.41427182703, 16.0127755832, 3.37786723258, -0.395288010988, -0.383952855883, 11.1594795898, 5.75416090548, 4.23276044599, -2.58395757316, -15.1074827218, 11.5810942635, 3.53221851127, -9.48578699782, 1.54203908981, -1.88999810745, -10.6952242683, 0.973985183599, 1.67709481112, 7.60010284998, 25.0518538543, 8.3797545114, 11.6966856337, 7.28668730547, -0.779808137497, 8.93754037904, -1.35850784573, 9.19642899483, 21.8247580436, 8.38644884496, -4.96141786248, -7.89479913799, -9.97609974766, 0.943366945053, 1.87835852196, 1.73989736357, -8.05289176845, -6.1490278606, -3.79812434999, -6.07435296688, 1.6847057444, 2.46811841959, 8.62611461392, 9.35710516723, -2.34062027598, -12.246891283, -1.40459429136, 3.14983216227, 9.4227364389, -9.37139526452, -9.17976622289, 3.42875035918, 2.76481350452, 0.586627416449, -0.347561789886, 8.342021447, -6.39182988372, 12.4297018349, -2.39618022941, 5.22527790319, -3.14495278275, -11.1248430401, -3.44486302191, 3.44061515155, -3.51230995411, -5.46608193938, 16.543397519, 0.610803749273, -0.407128688406, 3.71897275045, 4.20916054505, 9.89155973428, 19.9895386161, -4.31430171745, -7.96199174005, -1.5238602446, -9.54133785576, 2.74660076868, 7.20794248106, 6.5200050301, -8.69762122123, 6.76268083782, 11.9346594069, 14.0779830645, -6.55574372818, 7.06614051869, -7.85333217665, -1.18661562519, 0.673813691248, -13.3938621965, 1.80316429397, 10.6428734897, 10.7434679068, -1.17208902677, -0.01483175185, -5.84943074664, 11.1671281163, -7.06624429263, 4.00116834898, 16.6838107599, 3.24501031511, 18.7767296032, -14.9763767446, -6.40112320724, -9.16648958561, 4.24617715411, -9.22908050833, -5.71754287492, -11.9612541612, -14.8862084135, 6.53695176904, -1.47558858683, 8.54501795675, 11.9720024735, -10.1673362408, -9.89081355487, 5.85811284216, -4.36922644899, -5.10396309106, -0.503850014566, -17.994679406, -6.07636392138, 3.67031871895, -3.78376609739, 1.29163026537, 10.8416556654, 3.85390520537, 9.82654557371, -1.34634076299, -10.1265190018, 2.022785566, -9.107550749, -5.76046545624, -10.7919879947, -3.92689287052, 19.3734179073, 7.90239389483, -6.06127912302, 3.43940549778, -19.9547694625, -8.04644125361, -4.52268154612, 5.71564205724, -10.9268140761, 0.0882393120662, -1.4428863352, 9.62768911165, 5.34079437126, -15.5631481427, -0.609268156607, 9.22746963715, -3.09921631123, 4.80208936755, 4.06370991743, 7.90578027042, -10.1691449222, 2.18509245644, -9.44801644889, 0.249557551385, -3.40234341804, -2.94358540932, 9.44376157112, -8.76216433592, 1.17941691867, 15.6751527011, 7.41621277563, 2.56840946397, -6.7774831759, 1.03223647466, -4.35216073676, -3.02892169166, 12.3215673011, -3.98164106106, 15.2421736938, -2.96723298044, -6.34681796872, -2.23856177552, 5.25141669145, -7.29968459557, -15.0269397352, -0.117006510322, -1.58253704926, 0.418029734363, -19.6167092519, 0.0885155474245, 2.76229832756, 17.975144782, 7.81334938579, 5.73492660901, -8.06903123994, 3.37338038709, -1.37311318827, 16.735763082, -4.56116196516, 14.9102250908, 3.21863804056, 2.32075886622, -17.5756071528, 2.74457048931, 23.4107961003, -2.29637675603, -17.7813253475, -7.29708557192, -2.03714412547, -22.4471213606, -5.09369712293, -7.98202299728, 10.6018783082, -0.0987504936222, -6.89889233608, -0.029459686453, 8.17956704936, -37.292699509, 2.19702417685, -5.84173605994, 3.44897388101, 1.76628361916, 5.31030951162, -0.933256606343, -2.16987032896, -2.1113381745, -4.25849018987, 9.87827457973, -2.9018168622, 14.9804326771, 3.81597394649, -12.7021549434, 0.488326056575, 0.878459366206, 12.6078342059, 4.26920862349, -2.22764184572, 5.01915099635, 0.430009786856, -5.37882389571, 23.3905609294, -7.1433255282, -10.5068809166, -5.13248407725, -3.93508948096, -2.93916594793, 5.35089084167, 24.501920232, 6.65096119652, 11.6667959451, -0.44427518301, -13.0248852286, 19.0292901679, 8.593513351, -13.3238513808, -5.0766454333, 2.49516742408, -1.84578928952, -11.8766739262, -13.4806705587, 1.36140485336, -2.35811829779, -3.40836571982, -13.9594646374, 17.3894732988, 5.99748217953, -14.1851377321, 6.50042768309, -4.71689380413, 1.37843539139, -6.7615620232, 2.47130415484, -7.787045771, -1.29248486886, -0.323661988576, -1.03045451334, -1.35777760665, 5.86286433572, 8.4422090052, -8.70120690085, 23.0863564772, 0.245134233748, -4.64215816506, -2.59322571567, -4.68335277722, -4.24871342488, 9.91761655462, -14.8454676578, -2.76689887041, 6.08004322514, 13.1283341556, -1.43136540703, -16.3304890752, 14.7796750865, 6.07080407931, -2.40807567747, 1.17707070947, 9.53495165147, -4.00702535567, -11.6120489871, 7.41954663215, 14.0464366147, 0.304038154373, 3.27493740605, -12.2908069445, 7.89122966561, -3.03815193187, -5.07914998948, 4.31379166563, -3.17021606046, 13.9516372038, -6.91967542016, -4.79620209374, 3.38114420657, 4.01151865388, -4.62440769708, 10.8056923529, 4.07720173867, -3.02575307432, -5.10707082448, -2.14667941846, 1.27125589902, -4.85357899777, 5.07090081787, 5.65296234207, -1.26245896262, 3.22952020387, -12.4457278952, 8.23246985883, 7.62542427771, -2.99799587699, -1.56815119875, 4.12373253207, 5.93588144219, 15.744735818, 6.18477689994, 9.99567740613, -3.19912886244, -13.5963965598, -0.0300414604038, -1.20499751099, 6.60984427422, -12.1725160547, 3.62667900986, 5.40254759653, 0.19405641981, -4.97093551023, 7.088021249, 5.26698199829, -3.60220237116, -2.58008219335, -19.6790582274, -0.543028985889, -6.05484918315, 4.12842659773, -21.7854900328, -3.68988896967, 19.8453220422, 9.56456909772, -0.983070183798, 13.9230223281, -3.54498175124, -16.7554053018, -10.832267165, -1.98582543676, 10.5293774423, 3.11419474408, -14.0109607888, 5.3115959838, 9.29092076359, -4.17081657171, 1.45522689409, 9.04585449717, 2.60102743437, -6.07515192315, 13.2252890907, 4.54443580238, 8.65992803991, -2.62773818471, -10.9747158103, 11.038860357, 4.4741802426, 6.3651306917, -5.85828491174, 10.934374214, 8.54919101805, 11.5447629714, 4.44678741372, 5.14859044038, -14.4447275381, -1.27730756252, 7.50103999815, -7.11591016282, -12.5269582365, 7.29210023326, 6.95418028319, -13.5672698339, 14.2665244497, 3.79961893735, -0.86969458347, -14.8171046542, 9.44567564533, 8.84033674182, -6.48908945724, 8.54873310988, -0.991931831299, 0.819767692714, 3.85024552543, -13.4003939151, -5.84699418572, -3.53228820341, -11.1669422816, -11.798509079, -6.6320835748, -22.6296018425, -15.4443258958, -4.00180652461, -7.21735237858, 4.44672772704, -6.12262816437, -11.042945385, 2.38213932171, 16.594259392, -8.79890381178, -1.6968087909, 9.71757606345, -8.09468303059, -0.470562727864, 0.146538679337, 8.65961773296, -23.0385409155, -10.9214807335, 14.6857408456, 10.118624921, -1.73862374893, 3.76864875832, -5.93831192463, 9.65307332486, 10.1112103628, 7.22873193795, -3.23249319907, -13.3071276712, 11.2510459799, -13.5188172998, -3.53044756606, -18.7937893665, 8.31744052527, -8.87213448921, 6.83814761925, 10.334207486, 1.1804028064, 13.0344395614, 21.2474321153, 0.410376259619, 2.63894040567, -4.25650611174, -10.8224886944, -4.90009439502, -5.98370713826, -4.90932643765, -1.48289926845, -13.0693942993, 13.8750013114, -5.95421303299, 5.26181073167, -9.97907915767, 7.08658613581, -11.0241191446, -10.2459058562, 2.94173856289, -17.6900623347, 2.87806436337, 19.7425579727, 8.74884646833, 0.447305120572, 3.05130317267, 23.7766750752, 8.0349226689, 3.21611175978, 7.85018838915, 5.59161663627, -1.66466738679, 7.14637566498, 5.25527904538, 10.911957863, -6.94509849087, -7.7468387913, -3.00545968063, -10.2729547873, -9.94084986564, 4.54709454456, 11.5975258459, -15.6177137743, 11.9732733939, 1.86540627037, 5.423909769, 4.14842170245, 3.97345558088, 0.796229208129, 17.1338966154, 10.7550460829, -13.0280141702, 10.7275763996, 5.99221683915, 17.4892540856, 10.6162985655, 6.28543786214, -5.48654556475, -8.94400295375, 6.9577541525, -13.2217448, -1.50007779867, 2.83212349433, -8.45992566313, -2.13389097053, 4.28699214386, -6.4467678228, 0.472119917794, 0.636720062476, -0.589415334199, -3.68183129529, -6.93624325627, 2.87113390282, 14.5613780272, 7.30713580898, 22.7425671488, -23.8488643239, -2.98954951344, -2.39062078061, -7.43468697593, 0.938529384739, -5.16984948735, -10.8804447342, 9.94019846898 }; -float output_data_imag[ 1024 ] = { 515.372543542, -1.39721348545, 10.1872177703, 4.97312139391, 8.56615800138, 5.26946644107, -4.76718277996, -5.39303864414, -10.1766897459, 11.6651683132, -2.55590312336, -1.62064077661, 2.60503785405, -2.32572256328, -7.13035199964, 0.117094076428, -12.2415223307, -22.4415418588, 7.01186200928, 16.7583958065, -5.03467635445, -8.08636428443, 2.38113322932, 11.8152780479, -16.886764963, 9.59796369217, -3.44147464984, 12.367972241, 5.09142147673, -6.12839297782, 6.00253686212, 8.86338094192, 11.5809739339, -10.1331616944, -2.70760892076, -1.87040888632, -9.89740229602, -3.22004803381, -3.12407160704, 1.68035606799, 0.520408239648, 16.7925985655, 3.70357095426, -4.42457205827, -4.30899317358, 2.71300535388, -0.0770774035021, -5.13783366086, -6.49412533958, 6.68172017102, 9.99230122699, 8.53494825248, 14.3388838351, 4.12899504721, 13.7860216338, -0.555454974724, -16.1753294103, 6.02133502722, -16.9287950184, 5.79931112036, 20.0702050614, -1.98443007191, -3.40262415723, 1.31102065156, -3.96508849855, -0.801374291047, -9.11243487604, -13.8229553002, -17.5757593267, -1.13816747302, -2.06250595908, 2.84440327561, -10.6735458885, -10.3583657142, 3.9430548598, -0.557114604573, 21.9153488242, -8.17977111002, -5.28986670415, -13.5238370603, 6.06978879635, 16.9742578446, -4.34354115522, -2.49777620631, 0.401444950326, 1.46778066776, 22.0924447132, -2.61745145472, -0.526474228508, -1.40337186604, -10.4894325571, -10.7457040347, 13.2830292365, 0.207832450955, 11.9826663405, -2.36632049512, 7.19944307034, -1.2961162383, -1.95318137222, 10.5525481216, 11.0735334534, 3.72473015523, -3.7171243994, -3.14118006238, -11.7829872863, 5.59237420807, -19.1911058027, 0.778087732867, -14.3718324042, 0.674325226128, 2.86315342438, 17.7144348346, 8.93917913741, 7.87419114508, -3.64517226361, 7.74112441382, -14.6584793453, 5.59041036269, 23.6780087823, -1.99765372782, 3.4616907022, 7.23972519111, -15.7903400016, -8.07648029678, 4.91419506283, 11.52592989, -4.98522718976, 8.05972505268, 1.65153218902, 12.9585487364, -11.3172417806, -3.18756722006, -4.2696517891, -8.00953012568, 7.4870091479, -7.30601620761, 5.52093558966, 5.37686612651, 2.51806081888, -2.01639371814, -6.14324857931, 16.6972967679, 25.0035427567, -1.02771445453, -15.1397582862, 5.56546623216, 15.6967093413, -6.15973450259, 3.87774894256, 17.3701869345, -2.27119637672, -18.3341793865, 14.7087854734, 10.1900199214, -12.7209736732, 10.3217655477, 0.458574449659, 6.62911469977, -7.08868136351, -2.55080768945, -2.96501082983, 1.70208591169, -5.20267927638, -10.8084095211, -4.14883512987, 11.2822683102, -0.835580003973, 2.61763522985, 20.1628639226, 10.8484761875, -17.3954643494, 4.64315864035, 14.7895152511, -8.75919985307, 3.53258374804, 13.2689429956, 1.42774296249, 10.2767177851, 0.828754106875, -19.2871199165, -14.0306724734, -8.54192937399, -4.23408658438, 5.83749345055, 9.43471489227, 17.2608670221, -3.09061490638, -0.807774861539, -4.13312973514, -10.4470861188, -1.67814064437, 0.0902316182714, 1.88141876355, -9.05711363354, -20.1930809358, 7.93556657063, 0.285868865745, -6.80681233537, -3.70692320314, -7.07372246824, 21.1893159717, 21.4394687842, -1.99130360755, 7.52936006618, 0.0352604706926, -13.0018265756, 12.8511101974, 10.8469568926, 4.74226207823, -7.18420232824, 10.9874589472, -6.19428172478, -4.14743942818, -1.09735572316, 5.72835071266, -0.178980101135, -3.07794572803, -16.4162185699, 5.24774032083, -9.81201959856, -3.51977591195, 12.1338712576, 3.16453213552, -8.85609603, 13.8224139526, -7.87892934249, -14.7541834729, 0.401221062348, -3.70429954757, 4.18492088809, 5.49818561207, -14.059704981, -0.95761540893, -16.7534920098, -4.45152198852, -14.2434989658, 4.23625441724, 1.34971858743, -4.03790664127, -0.337760584135, -6.44377940869, 9.48197324128, 10.3732278142, 16.2127826498, 3.63881803004, 16.1244061222, 12.6540868083, -8.066109085, -0.0942734621073, 2.72237703815, 2.87578953268, -3.05709006404, 18.5454132495, -11.7995360437, -1.9091437187, 4.58200468397, -7.24076452987, -2.60615777979, 14.4833385377, 0.846704538173, 7.15787238511, -9.83582686497, 6.16929798575, -2.3298831297, 2.28895981291, -3.79015358844, 16.4803954155, 5.59554663668, 2.93500463786, 13.3588101495, 8.79429374252, -4.61568198752, -4.35532906565, -0.599627943355, -5.06765016362, -11.1255998804, -2.85811238618, 5.15098133111, 8.55406129301, 10.8124649943, 3.16835436414, 10.3348113174, 3.43299874083, 4.61454885969, -0.232937412846, -9.78358973897, 8.09822295011, -3.99189619583, 10.0552037179, 5.72746199607, 7.10191941122, -7.12882295702, -5.41533196755, -0.176950929733, -1.28880519398, -6.48975974311, -23.2846991273, 12.6156968601, 2.77080561963, 7.76754268734, -5.81532128165, 1.77789517553, -1.36233878316, -10.9073302533, -4.85292005442, -10.6978688188, 3.96396559305, -2.66912602834, 4.15554956853, -2.31654113808, -8.31258700746, 1.74223674197, -1.44376253474, -5.31000467603, -6.24665222585, -8.92733183842, 4.93904978984, 2.34725591134, 1.33755064474, -5.47524753503, -6.2800319428, 11.5586250689, -3.24104601972, -17.5592411579, -7.2382927463, -7.4570934705, -10.0456570414, -3.0093087703, 0.0326329126099, 25.6506795317, -0.551008280991, -5.40179805107, -3.27302482669, 3.10422202674, -5.46270504131, -3.5925421044, -4.36755793615, 4.44238069315, 4.50016928288, 7.98315728247, 3.7948769076, 5.26217069322, 10.8707473808, 24.5537033949, 8.02312952241, 8.39270609912, 6.85428251519, -1.60797504292, 9.5338274449, -13.4401704936, -9.01515577705, -8.05274645683, -0.79624923273, -14.2664364538, 3.26336520858, 1.1350475833, 9.88249407272, -10.3317908279, 3.62304402437, 3.94780305131, 5.29286691654, 13.4922434491, 9.03814279888, -18.5808131628, -4.76424640134, -8.97457373971, -5.55162424761, -10.496230905, -11.2588566395, -8.17017589155, 5.3444460585, 1.68120328714, 3.88774211214, 5.00942886681, -7.98361486698, -6.87853659607, -11.3724051423, -3.66909422043, -10.0737432757, 2.10395358445, -3.05688199401, -0.680595485147, 9.40829136785, 2.73072777475, -3.82666057325, -7.4050439337, 7.68356731912, -7.32690192024, -4.2591987446, -14.1171416467, 10.4950911106, 19.7346832769, -5.86014807139, 4.67677905828, 3.39018233418, -19.6451410171, -16.8801034329, -15.1510349154, -5.99614647065, 14.0483211109, -2.18594603488, 13.688664104, -12.6896403024, -0.609270920324, -3.71235042366, -9.33010619616, 8.80048777167, 1.19935823832, -10.8376850564, 2.46805194939, -6.16495968579, -4.83613756974, -26.4366771289, 9.57790020791, -17.0179644529, 1.63941526616, 10.9586098519, -9.83538741582, 2.92393361215, -2.45315092959, 11.3285484046, -1.03025047044, 3.35792762648, -19.3151103377, 7.85174699539, -8.73776740831, -9.54550272695, 8.71950675089, -3.90664754281, -8.69903733053, -2.09242139715, 5.28082426165, 4.0760452652, -6.98807557649, -6.96971224487, -3.5884137165, -14.6974864828, 14.439921231, 2.13076876006, -4.5957643093, 11.1062069556, -6.3857076639, -0.828204652515, -10.2644137244, 12.3884971712, -12.9226633131, -2.27455319931, -7.07147025725, 9.13568529399, 10.4546630297, 16.7793197481, -4.19157472783, 5.59261441982, 3.00768792733, 15.6170568192, 17.6302744603, 6.72194235797, 7.69340080465, -3.95730922739, 10.8094377311, -1.64481885661, -2.53978927111, -0.108771052026, -2.9977637601, 1.365502019, 13.6753162552, 5.19361476028, -6.14387856079, -0.588174664231, -30.2790879877, -0.0807555401685, -9.41246822684, -10.4761672496, -1.48040881353, -6.29226831372, 12.6985977018, -0.0336674543381, -11.6767166367, -12.0000788329, -17.3574584005, 12.0136354194, -3.03633531001, 11.7433566196, -6.34290351895, 7.76951522736, 1.29928530557, -5.93506956716, -4.94362445788, -14.2937864706, 8.03621777441, -7.85916845196, -3.94698192968, -1.54374090896, 0.942254686412, 5.87560738605, -19.7288625682, 17.5931845839, -13.1220821655, -18.6415975706, 3.02148036978, 1.89724260025, -5.41510251721, 2.86007903817, -5.56759171235, 10.5846480369, 7.07933062188, -2.4645390969, -4.38430720223, -6.54152573321, 11.9777498071, -1.65467634669, 1.41286256821, -1.89836792248, 5.36776727815, -12.8500052006, 0.585049911802, -10.9097341288, -10.682774499, 6.37189420237, -5.22944996742, -6.76021229626, -0.923555321395, 2.63445186278, 7.74443348168, -6.82623764214, -0.599997036117, -2.27401198097, -16.214674231, 7.37511139793, 2.33208986426, -7.42910380231, -4.95316948146, -0.652565891454, -15.1321844277, -10.8505889569, -1.70541613004, -18.5193681876, -15.9860696698, 17.430944535, -6.09542568784, -1.98747606646, -5.65279998381, -3.18125223244, 7.19101464722, 1.9301333772, -1.97302890495, -6.17933193281, -8.14725633549, 5.67139238021, 3.46671738738, -6.32341126273, 4.95837394077, 4.72701885176, -3.05417064497, 0.492670481059, 12.6127914828, -14.8064895869, 2.74005472274, -7.07623831765, -8.55503848056, -18.5093301753, -8.94988523559, -8.50867351524, -9.42777909935, -7.85817038637, -16.2303057415, -8.38254520158, 6.80405664171, -19.5792381391, -1.46021951879, -10.5552756753, 2.18204240572, 8.51231134663, 5.21374522605, -3.83190914823, -3.6779838146, 5.66286537126, -4.12180445484, -6.37750158224, -10.521953577, 17.3255996831, -11.7655028099, -5.41970008609, 8.24449732849, 9.05518189675, -23.7516867483, -16.4565340327, 13.4034776737, 6.29436683929, -8.38561483616, 1.87633431136, -12.3004212108, 3.8804690228, 4.30957973542, 9.33742038466, 1.43640851294, 2.37018010837, -1.52476726025, 3.38887499944, -7.12445494584, -12.3001804858, -1.75594862132, -6.41981163711, 1.95445603202, 2.6725607993, 1.72262710764, 6.15882566959, -6.86465902336, 4.40472279662, 3.30606086423, -0.080400991724, 0.956027944393, 2.211513373, -4.45373463977, 9.40195347876, -1.75959053126, -14.4419894971, -0.381775720589, 3.07108076587, -4.00180919454, 10.7898847878, -2.87631274837, 2.08608554915, 1.68574265474, -12.748190244, -8.33986277455, 13.096455873, -2.28366258502, -10.3419786929, 0.67868572497, 6.26949023863, 10.5982016628, 6.87103386037, -1.4346001826, 3.95093003466, 10.3045326337, 17.2489952408, -0.433533930457, 1.66873014606, 2.7408511324, -4.8111589701, 1.41185141288, -2.32691131588, 3.80216985452, 2.15210000055, 3.49287516765, 10.9170513457, 5.55253480293, -10.2642120133, -11.8066812429, 24.842283673, 14.8267235174, -11.1195360376, 4.70956476708, -5.69274291665, -14.1158214071, 12.9971452941, -5.62156194696, -12.8168870135, 19.9363191495, -11.0910838779, 10.2216469789, -2.80213636904, 0.383057234948, 18.913132623, 13.9620546016, -1.40450590425, -18.745533806, 4.66240445306, -24.5292761367, -12.7504651025, 11.7584615455, -8.25284829627, 18.7860755918, -7.76985030769, 4.04956901882, 1.12807474528, 10.2822471144, 9.62416872859, 1.94798112977, -2.19966682514, 7.09414227287, 9.99936738669, -2.06618675929, -12.7388529872, 1.26616878473, -3.76513576345, -7.23786590453, -2.35468482424, 7.65740054628, -8.10339820932, -9.71683570638, -11.8401567574, -10.942862162, -12.6487440174, -10.2299518088, 0.365528280529, 11.3724963199, 3.77734568125, -10.7822539252, -14.2997339986, -24.5286467825, 10.8889075384, -0.428783681142, -5.08763973414, -17.8954296647, -0.426187071928, -2.35771841329, -0.724984041007, 6.7065793947, 11.2387180869, 10.7569894969, -10.8981085449, 11.7131074172, 0.117975145046, 19.0369001409, 7.08759342038, -4.27384034165, -6.53146582932, 9.42310365586, 1.74535531089, 7.35866324802, 5.44489391229, -2.39059266295, 10.3989658382, -9.42841282947, -2.09471870388, 7.72416129617, 11.7059906925, 0.483519810969, 15.1693421387, -13.2079942305, 6.03639028947, -5.86966558741, 9.68887531534, -0.876612433391, -8.40279155425, -6.7133424974, -2.90857852641, -11.058947794, 2.74862204445, -2.31643581592, -5.02577123984, -2.59510340053, -5.92217586188, -1.97363581006, 5.69003177365, 6.13196037613, -5.42676466078, -6.40430616712, -2.48895097836, 8.64911757173, 7.01239046469, -3.08570425145, 3.88509613982, -2.14832816716, -13.97137205, 1.69000377526, -1.16058808252, 12.6057115948, 0.307761264406, -1.57859403061, 6.49687777791, 13.9343377523, 14.583627508, 22.241089854, 0.773907086026, 7.23662504949, -2.7044987795, -2.47865227991, -3.53565004129, -7.34655968029, 12.6881133963, -6.26801373015, 3.89040256943, 2.90707469124, -2.50599822982, -13.2940739182, -4.45830428406, -1.48632963185, 7.00931705549, 3.05789752818, -6.98269392176, -0.822173197564, -2.70233124319, 6.74124607571, -3.68796988126, 1.13687823253, -18.8573409748, -0.287946180151, 4.43772862774, -4.68340491943, 4.96847149337, -3.88418801075, 3.47115763098, 0.614807466875, -2.94769166299, 6.1364507764, 8.1722803549, -1.66932548887, 2.44433524291, -11.9359173943, 1.0826189915, -11.2697880543, -1.77137540418, -0.0375210061261, 11.0050865466, 7.75511368286, 4.09905332933, 3.0784495471, -3.08303198739, -12.4463929549, 1.2715465502, 1.04018349862, -3.11925401937, 16.158667843, -11.8032600508, -28.438336596, -5.87429338229, -7.11836220733, -13.7087199105, 3.83326989915, 13.5489786862, -7.38198265218, -11.5111097906, -1.25949398476, -9.06727806269, 17.6486398412, 4.13725785078, -0.617137505634, -4.93545061677, 11.258840464, 5.13895912658, 6.92450702081, 2.37683666309, -13.6664858262, -14.3881579912, 0.489832020234, -4.44310669082, 0.989771733606, -3.89531663597, -5.52426307456, 6.69898914683, -5.22050160187, 7.07631262185, -5.76764036578, 16.7036858228, -1.27211388629, 2.15213837831, -18.8027946935, 2.02879055733, 19.0147782866, -0.959592833218, 11.8440027882, -1.52528787563, -14.1985055113, -5.34935861279, -17.1149031754, -1.09609286687, -26.104923835, -11.8358997344, -3.39910768528, 1.02688009486, -5.19617953397, 10.26807382, -16.9454749626, 6.03701601049, 0.0459879804055, -11.5827459433, 6.25687081534, -10.3610011149, 1.80363596924, -6.99792788872, 0.052506344362, 11.749343374, -10.262154839, 3.20000904789, -7.82050636824, 4.09994395616, 14.3273897843, 2.52001862129, 5.91010590912, -10.5700140469, -7.25881668389, 6.10095265186, -9.48149939471, 23.8590026554, 14.6083898171, -1.852508789, 4.63591829932, -10.991844607, -11.1342820927, -9.61373152301, -5.58740113338, -9.00334730382, -4.73221902937, -3.9113545044, 10.3185279408, -5.23392619211, 5.93039638941, 13.1417535792, -10.576627254, -11.9264311627, -0.430537564576, 4.16612536744, 4.31236982288, 5.59207001124, -6.35106175875, -4.60819377585, 0.149457890351, 15.864402698, 7.45614247329, -3.72552761408, 3.98375770898, 8.61908534699, -13.1270519529, -0.0869702479982, -10.2553166432, -9.95812440745, -8.75709097699, 0.142131441963, -7.84627211735, -6.9410951242, -1.25297349346, 8.22817141993, -11.9680553355, 13.7718576981, -1.75450620207, -6.46894187878, -2.02870184455, 7.37684174247, -7.30360048154, -8.92893475984, -11.4281515221, 5.21670802397, -10.9409480909, 6.69255947444, 9.45913287923, -5.617219161, 5.60290886058, -6.0427176748, -5.94471440101, -5.97465818594, 7.816571649, 9.90780188496, -9.38413247861, 6.12841046347, 8.58054229075, 0.429138800867, 1.84560724408, 25.4375016169, -2.26554496194, -9.25241437119, 2.65702504454, -1.66343743359, 10.9701425652, -8.75474547492, 7.15527136911, -3.301520542, 13.9642208242, 14.3733493127, -3.53881757204, -8.51007380462, -3.42129326175, -5.58606293826, 9.55343445314, 0.0201436376397, 3.03701754911, -5.64661429762, -2.40878536462, 21.825466502, -5.17428551274, -1.86807882223, 4.48624400284, -9.47455589302, 1.54156556466, 6.35567094496, -10.3488653658, -8.72209782237, 1.31819547145, 4.46884479118, 13.1970650146, 5.93727415103, 5.21686859262, 17.9831659941, 10.7058217989, 0.696449957925, 12.7303447817, -1.64905679371, -2.35613279778, 5.17833665782, -7.25306146968, -1.57962414835, 5.58174322862, 4.30090307292, -17.9179860137, 4.11361923204, -15.471754533, 10.5771327568, -6.98638375446, 6.37910385361, -7.90730261689, 5.57101574051, -2.199939871, -5.35328317677, 6.62551896408, -9.25325963185, -11.0379824943, -4.82179500229, -9.22298216092, -11.1201369226, -8.29282449768, 0.340902491192, 6.62565882598, 15.2645284087, 10.0636088014, -7.96323285426, -7.47199240228, -1.93634653821, -10.0923789761, 14.5528816281, -1.93370182031, -9.63247298114, -14.254508783 }; -float tf_real[ 1024 ] = { 1.0, 0.999981175283, 0.999924701839, 0.999830581796, 0.999698818696, 0.999529417501, 0.999322384588, 0.999077727753, 0.998795456205, 0.998475580573, 0.9981181129, 0.997723066644, 0.997290456679, 0.996820299291, 0.996312612183, 0.995767414468, 0.995184726672, 0.994564570734, 0.993906970002, 0.993211949235, 0.992479534599, 0.991709753669, 0.990902635428, 0.990058210262, 0.989176509965, 0.988257567731, 0.987301418158, 0.986308097245, 0.985277642389, 0.984210092387, 0.983105487431, 0.98196386911, 0.980785280403, 0.979569765685, 0.97831737072, 0.977028142658, 0.975702130039, 0.974339382786, 0.972939952206, 0.971503890986, 0.970031253195, 0.968522094274, 0.966976471045, 0.965394441698, 0.963776065795, 0.962121404269, 0.960430519416, 0.958703474896, 0.956940335732, 0.955141168306, 0.953306040354, 0.951435020969, 0.949528180593, 0.947585591018, 0.945607325381, 0.943593458162, 0.941544065183, 0.939459223602, 0.937339011913, 0.935183509939, 0.932992798835, 0.930766961079, 0.928506080473, 0.926210242138, 0.923879532511, 0.921514039342, 0.91911385169, 0.916679059921, 0.914209755704, 0.911706032005, 0.909167983091, 0.906595704515, 0.903989293123, 0.901348847046, 0.898674465694, 0.895966249756, 0.893224301196, 0.890448723245, 0.887639620403, 0.884797098431, 0.881921264348, 0.879012226429, 0.876070094195, 0.873094978418, 0.870086991109, 0.867046245516, 0.863972856122, 0.860866938638, 0.85772861, 0.854557988365, 0.851355193105, 0.848120344803, 0.84485356525, 0.841554977437, 0.838224705555, 0.834862874986, 0.831469612303, 0.828045045258, 0.824589302785, 0.821102514991, 0.817584813152, 0.814036329706, 0.810457198253, 0.806847553544, 0.803207531481, 0.799537269108, 0.795836904609, 0.7921065773, 0.788346427627, 0.784556597156, 0.780737228572, 0.776888465673, 0.773010453363, 0.769103337646, 0.765167265622, 0.761202385484, 0.757208846506, 0.753186799044, 0.749136394523, 0.745057785441, 0.740951125355, 0.736816568877, 0.732654271672, 0.728464390448, 0.724247082951, 0.720002507961, 0.715730825284, 0.711432195745, 0.707106781187, 0.702754744457, 0.698376249409, 0.69397146089, 0.689540544737, 0.685083667773, 0.680600997795, 0.676092703575, 0.671558954847, 0.666999922304, 0.66241577759, 0.657806693297, 0.653172842954, 0.648514401022, 0.64383154289, 0.639124444864, 0.634393284164, 0.629638238915, 0.624859488142, 0.620057211763, 0.615231590581, 0.610382806276, 0.605511041404, 0.600616479384, 0.595699304492, 0.590759701859, 0.585797857456, 0.580813958096, 0.575808191418, 0.570780745887, 0.565731810784, 0.560661576197, 0.55557023302, 0.550457972937, 0.545324988422, 0.54017147273, 0.534997619887, 0.529803624686, 0.524589682678, 0.519355990166, 0.514102744193, 0.508830142543, 0.503538383726, 0.498227666973, 0.49289819223, 0.487550160148, 0.482183772079, 0.476799230063, 0.471396736826, 0.465976495768, 0.460538710958, 0.455083587126, 0.449611329655, 0.44412214457, 0.438616238539, 0.433093818853, 0.42755509343, 0.4220002708, 0.416429560098, 0.410843171058, 0.405241314005, 0.399624199846, 0.393992040061, 0.388345046699, 0.382683432365, 0.377007410216, 0.371317193952, 0.365612997805, 0.359895036535, 0.35416352542, 0.348418680249, 0.342660717312, 0.336889853392, 0.33110630576, 0.325310292162, 0.319502030816, 0.313681740399, 0.307849640042, 0.302005949319, 0.296150888244, 0.290284677254, 0.284407537211, 0.278519689385, 0.27262135545, 0.266712757475, 0.260794117915, 0.254865659605, 0.248927605746, 0.242980179903, 0.237023605994, 0.231058108281, 0.22508391136, 0.219101240157, 0.213110319916, 0.207111376192, 0.201104634842, 0.195090322016, 0.18906866415, 0.183039887955, 0.177004220412, 0.17096188876, 0.16491312049, 0.158858143334, 0.152797185258, 0.146730474455, 0.140658239333, 0.134580708507, 0.128498110794, 0.122410675199, 0.116318630912, 0.110222207294, 0.104121633872, 0.0980171403296, 0.0919089564971, 0.0857973123444, 0.0796824379714, 0.0735645635997, 0.0674439195637, 0.0613207363022, 0.0551952443497, 0.0490676743274, 0.0429382569349, 0.0368072229414, 0.0306748031766, 0.0245412285229, 0.0184067299058, 0.0122715382857, 0.00613588464915, 6.12323399574e-17, -0.00613588464915, -0.0122715382857, -0.0184067299058, -0.0245412285229, -0.0306748031766, -0.0368072229414, -0.0429382569349, -0.0490676743274, -0.0551952443497, -0.0613207363022, -0.0674439195637, -0.0735645635997, -0.0796824379714, -0.0857973123444, -0.0919089564971, -0.0980171403296, -0.104121633872, -0.110222207294, -0.116318630912, -0.122410675199, -0.128498110794, -0.134580708507, -0.140658239333, -0.146730474455, -0.152797185258, -0.158858143334, -0.16491312049, -0.17096188876, -0.177004220412, -0.183039887955, -0.18906866415, -0.195090322016, -0.201104634842, -0.207111376192, -0.213110319916, -0.219101240157, -0.22508391136, -0.231058108281, -0.237023605994, -0.242980179903, -0.248927605746, -0.254865659605, -0.260794117915, -0.266712757475, -0.27262135545, -0.278519689385, -0.284407537211, -0.290284677254, -0.296150888244, -0.302005949319, -0.307849640042, -0.313681740399, -0.319502030816, -0.325310292162, -0.33110630576, -0.336889853392, -0.342660717312, -0.348418680249, -0.35416352542, -0.359895036535, -0.365612997805, -0.371317193952, -0.377007410216, -0.382683432365, -0.388345046699, -0.393992040061, -0.399624199846, -0.405241314005, -0.410843171058, -0.416429560098, -0.4220002708, -0.42755509343, -0.433093818853, -0.438616238539, -0.44412214457, -0.449611329655, -0.455083587126, -0.460538710958, -0.465976495768, -0.471396736826, -0.476799230063, -0.482183772079, -0.487550160148, -0.49289819223, -0.498227666973, -0.503538383726, -0.508830142543, -0.514102744193, -0.519355990166, -0.524589682678, -0.529803624686, -0.534997619887, -0.54017147273, -0.545324988422, -0.550457972937, -0.55557023302, -0.560661576197, -0.565731810784, -0.570780745887, -0.575808191418, -0.580813958096, -0.585797857456, -0.590759701859, -0.595699304492, -0.600616479384, -0.605511041404, -0.610382806276, -0.615231590581, -0.620057211763, -0.624859488142, -0.629638238915, -0.634393284164, -0.639124444864, -0.64383154289, -0.648514401022, -0.653172842954, -0.657806693297, -0.66241577759, -0.666999922304, -0.671558954847, -0.676092703575, -0.680600997795, -0.685083667773, -0.689540544737, -0.69397146089, -0.698376249409, -0.702754744457, -0.707106781187, -0.711432195745, -0.715730825284, -0.720002507961, -0.724247082951, -0.728464390448, -0.732654271672, -0.736816568877, -0.740951125355, -0.745057785441, -0.749136394523, -0.753186799044, -0.757208846506, -0.761202385484, -0.765167265622, -0.769103337646, -0.773010453363, -0.776888465673, -0.780737228572, -0.784556597156, -0.788346427627, -0.7921065773, -0.795836904609, -0.799537269108, -0.803207531481, -0.806847553544, -0.810457198253, -0.814036329706, -0.817584813152, -0.821102514991, -0.824589302785, -0.828045045258, -0.831469612303, -0.834862874986, -0.838224705555, -0.841554977437, -0.84485356525, -0.848120344803, -0.851355193105, -0.854557988365, -0.85772861, -0.860866938638, -0.863972856122, -0.867046245516, -0.870086991109, -0.873094978418, -0.876070094195, -0.879012226429, -0.881921264348, -0.884797098431, -0.887639620403, -0.890448723245, -0.893224301196, -0.895966249756, -0.898674465694, -0.901348847046, -0.903989293123, -0.906595704515, -0.909167983091, -0.911706032005, -0.914209755704, -0.916679059921, -0.91911385169, -0.921514039342, -0.923879532511, -0.926210242138, -0.928506080473, -0.930766961079, -0.932992798835, -0.935183509939, -0.937339011913, -0.939459223602, -0.941544065183, -0.943593458162, -0.945607325381, -0.947585591018, -0.949528180593, -0.951435020969, -0.953306040354, -0.955141168306, -0.956940335732, -0.958703474896, -0.960430519416, -0.962121404269, -0.963776065795, -0.965394441698, -0.966976471045, -0.968522094274, -0.970031253195, -0.971503890986, -0.972939952206, -0.974339382786, -0.975702130039, -0.977028142658, -0.97831737072, -0.979569765685, -0.980785280403, -0.98196386911, -0.983105487431, -0.984210092387, -0.985277642389, -0.986308097245, -0.987301418158, -0.988257567731, -0.989176509965, -0.990058210262, -0.990902635428, -0.991709753669, -0.992479534599, -0.993211949235, -0.993906970002, -0.994564570734, -0.995184726672, -0.995767414468, -0.996312612183, -0.996820299291, -0.997290456679, -0.997723066644, -0.9981181129, -0.998475580573, -0.998795456205, -0.999077727753, -0.999322384588, -0.999529417501, -0.999698818696, -0.999830581796, -0.999924701839, -0.999981175283, -1.0, -0.999981175283, -0.999924701839, -0.999830581796, -0.999698818696, -0.999529417501, -0.999322384588, -0.999077727753, -0.998795456205, -0.998475580573, -0.9981181129, -0.997723066644, -0.997290456679, -0.996820299291, -0.996312612183, -0.995767414468, -0.995184726672, -0.994564570734, -0.993906970002, -0.993211949235, -0.992479534599, -0.991709753669, -0.990902635428, -0.990058210262, -0.989176509965, -0.988257567731, -0.987301418158, -0.986308097245, -0.985277642389, -0.984210092387, -0.983105487431, -0.98196386911, -0.980785280403, -0.979569765685, -0.97831737072, -0.977028142658, -0.975702130039, -0.974339382786, -0.972939952206, -0.971503890986, -0.970031253195, -0.968522094274, -0.966976471045, -0.965394441698, -0.963776065795, -0.962121404269, -0.960430519416, -0.958703474896, -0.956940335732, -0.955141168306, -0.953306040354, -0.951435020969, -0.949528180593, -0.947585591018, -0.945607325381, -0.943593458162, -0.941544065183, -0.939459223602, -0.937339011913, -0.935183509939, -0.932992798835, -0.930766961079, -0.928506080473, -0.926210242138, -0.923879532511, -0.921514039342, -0.91911385169, -0.916679059921, -0.914209755704, -0.911706032005, -0.909167983091, -0.906595704515, -0.903989293123, -0.901348847046, -0.898674465694, -0.895966249756, -0.893224301196, -0.890448723245, -0.887639620403, -0.884797098431, -0.881921264348, -0.879012226429, -0.876070094195, -0.873094978418, -0.870086991109, -0.867046245516, -0.863972856122, -0.860866938638, -0.85772861, -0.854557988365, -0.851355193105, -0.848120344803, -0.84485356525, -0.841554977437, -0.838224705555, -0.834862874986, -0.831469612303, -0.828045045258, -0.824589302785, -0.821102514991, -0.817584813152, -0.814036329706, -0.810457198253, -0.806847553544, -0.803207531481, -0.799537269108, -0.795836904609, -0.7921065773, -0.788346427627, -0.784556597156, -0.780737228572, -0.776888465673, -0.773010453363, -0.769103337646, -0.765167265622, -0.761202385484, -0.757208846506, -0.753186799044, -0.749136394523, -0.745057785441, -0.740951125355, -0.736816568877, -0.732654271672, -0.728464390448, -0.724247082951, -0.720002507961, -0.715730825284, -0.711432195745, -0.707106781187, -0.702754744457, -0.698376249409, -0.69397146089, -0.689540544737, -0.685083667773, -0.680600997795, -0.676092703575, -0.671558954847, -0.666999922304, -0.66241577759, -0.657806693297, -0.653172842954, -0.648514401022, -0.64383154289, -0.639124444864, -0.634393284164, -0.629638238915, -0.624859488142, -0.620057211763, -0.615231590581, -0.610382806276, -0.605511041404, -0.600616479384, -0.595699304492, -0.590759701859, -0.585797857456, -0.580813958096, -0.575808191418, -0.570780745887, -0.565731810784, -0.560661576197, -0.55557023302, -0.550457972937, -0.545324988422, -0.54017147273, -0.534997619887, -0.529803624686, -0.524589682678, -0.519355990166, -0.514102744193, -0.508830142543, -0.503538383726, -0.498227666973, -0.49289819223, -0.487550160148, -0.482183772079, -0.476799230063, -0.471396736826, -0.465976495768, -0.460538710958, -0.455083587126, -0.449611329655, -0.44412214457, -0.438616238539, -0.433093818853, -0.42755509343, -0.4220002708, -0.416429560098, -0.410843171058, -0.405241314005, -0.399624199846, -0.393992040061, -0.388345046699, -0.382683432365, -0.377007410216, -0.371317193952, -0.365612997805, -0.359895036535, -0.35416352542, -0.348418680249, -0.342660717312, -0.336889853392, -0.33110630576, -0.325310292162, -0.319502030816, -0.313681740399, -0.307849640042, -0.302005949319, -0.296150888244, -0.290284677254, -0.284407537211, -0.278519689385, -0.27262135545, -0.266712757475, -0.260794117915, -0.254865659605, -0.248927605746, -0.242980179903, -0.237023605994, -0.231058108281, -0.22508391136, -0.219101240157, -0.213110319916, -0.207111376192, -0.201104634842, -0.195090322016, -0.18906866415, -0.183039887955, -0.177004220412, -0.17096188876, -0.16491312049, -0.158858143334, -0.152797185258, -0.146730474455, -0.140658239333, -0.134580708507, -0.128498110794, -0.122410675199, -0.116318630912, -0.110222207294, -0.104121633872, -0.0980171403296, -0.0919089564971, -0.0857973123444, -0.0796824379714, -0.0735645635997, -0.0674439195637, -0.0613207363022, -0.0551952443497, -0.0490676743274, -0.0429382569349, -0.0368072229414, -0.0306748031766, -0.0245412285229, -0.0184067299058, -0.0122715382857, -0.00613588464915, -1.83697019872e-16, 0.00613588464915, 0.0122715382857, 0.0184067299058, 0.0245412285229, 0.0306748031766, 0.0368072229414, 0.0429382569349, 0.0490676743274, 0.0551952443497, 0.0613207363022, 0.0674439195637, 0.0735645635997, 0.0796824379714, 0.0857973123444, 0.0919089564971, 0.0980171403296, 0.104121633872, 0.110222207294, 0.116318630912, 0.122410675199, 0.128498110794, 0.134580708507, 0.140658239333, 0.146730474455, 0.152797185258, 0.158858143334, 0.16491312049, 0.17096188876, 0.177004220412, 0.183039887955, 0.18906866415, 0.195090322016, 0.201104634842, 0.207111376192, 0.213110319916, 0.219101240157, 0.22508391136, 0.231058108281, 0.237023605994, 0.242980179903, 0.248927605746, 0.254865659605, 0.260794117915, 0.266712757475, 0.27262135545, 0.278519689385, 0.284407537211, 0.290284677254, 0.296150888244, 0.302005949319, 0.307849640042, 0.313681740399, 0.319502030816, 0.325310292162, 0.33110630576, 0.336889853392, 0.342660717312, 0.348418680249, 0.35416352542, 0.359895036535, 0.365612997805, 0.371317193952, 0.377007410216, 0.382683432365, 0.388345046699, 0.393992040061, 0.399624199846, 0.405241314005, 0.410843171058, 0.416429560098, 0.4220002708, 0.42755509343, 0.433093818853, 0.438616238539, 0.44412214457, 0.449611329655, 0.455083587126, 0.460538710958, 0.465976495768, 0.471396736826, 0.476799230063, 0.482183772079, 0.487550160148, 0.49289819223, 0.498227666973, 0.503538383726, 0.508830142543, 0.514102744193, 0.519355990166, 0.524589682678, 0.529803624686, 0.534997619887, 0.54017147273, 0.545324988422, 0.550457972937, 0.55557023302, 0.560661576197, 0.565731810784, 0.570780745887, 0.575808191418, 0.580813958096, 0.585797857456, 0.590759701859, 0.595699304492, 0.600616479384, 0.605511041404, 0.610382806276, 0.615231590581, 0.620057211763, 0.624859488142, 0.629638238915, 0.634393284164, 0.639124444864, 0.64383154289, 0.648514401022, 0.653172842954, 0.657806693297, 0.66241577759, 0.666999922304, 0.671558954847, 0.676092703575, 0.680600997795, 0.685083667773, 0.689540544737, 0.69397146089, 0.698376249409, 0.702754744457, 0.707106781187, 0.711432195745, 0.715730825284, 0.720002507961, 0.724247082951, 0.728464390448, 0.732654271672, 0.736816568877, 0.740951125355, 0.745057785441, 0.749136394523, 0.753186799044, 0.757208846506, 0.761202385484, 0.765167265622, 0.769103337646, 0.773010453363, 0.776888465673, 0.780737228572, 0.784556597156, 0.788346427627, 0.7921065773, 0.795836904609, 0.799537269108, 0.803207531481, 0.806847553544, 0.810457198253, 0.814036329706, 0.817584813152, 0.821102514991, 0.824589302785, 0.828045045258, 0.831469612303, 0.834862874986, 0.838224705555, 0.841554977437, 0.84485356525, 0.848120344803, 0.851355193105, 0.854557988365, 0.85772861, 0.860866938638, 0.863972856122, 0.867046245516, 0.870086991109, 0.873094978418, 0.876070094195, 0.879012226429, 0.881921264348, 0.884797098431, 0.887639620403, 0.890448723245, 0.893224301196, 0.895966249756, 0.898674465694, 0.901348847046, 0.903989293123, 0.906595704515, 0.909167983091, 0.911706032005, 0.914209755704, 0.916679059921, 0.91911385169, 0.921514039342, 0.923879532511, 0.926210242138, 0.928506080473, 0.930766961079, 0.932992798835, 0.935183509939, 0.937339011913, 0.939459223602, 0.941544065183, 0.943593458162, 0.945607325381, 0.947585591018, 0.949528180593, 0.951435020969, 0.953306040354, 0.955141168306, 0.956940335732, 0.958703474896, 0.960430519416, 0.962121404269, 0.963776065795, 0.965394441698, 0.966976471045, 0.968522094274, 0.970031253195, 0.971503890986, 0.972939952206, 0.974339382786, 0.975702130039, 0.977028142658, 0.97831737072, 0.979569765685, 0.980785280403, 0.98196386911, 0.983105487431, 0.984210092387, 0.985277642389, 0.986308097245, 0.987301418158, 0.988257567731, 0.989176509965, 0.990058210262, 0.990902635428, 0.991709753669, 0.992479534599, 0.993211949235, 0.993906970002, 0.994564570734, 0.995184726672, 0.995767414468, 0.996312612183, 0.996820299291, 0.997290456679, 0.997723066644, 0.9981181129, 0.998475580573, 0.998795456205, 0.999077727753, 0.999322384588, 0.999529417501, 0.999698818696, 0.999830581796, 0.999924701839, 0.999981175283 }; -float tf_imag[ 1024 ] = { -0.0, -0.00613588464915, -0.0122715382857, -0.0184067299058, -0.0245412285229, -0.0306748031766, -0.0368072229414, -0.0429382569349, -0.0490676743274, -0.0551952443497, -0.0613207363022, -0.0674439195637, -0.0735645635997, -0.0796824379714, -0.0857973123444, -0.0919089564971, -0.0980171403296, -0.104121633872, -0.110222207294, -0.116318630912, -0.122410675199, -0.128498110794, -0.134580708507, -0.140658239333, -0.146730474455, -0.152797185258, -0.158858143334, -0.16491312049, -0.17096188876, -0.177004220412, -0.183039887955, -0.18906866415, -0.195090322016, -0.201104634842, -0.207111376192, -0.213110319916, -0.219101240157, -0.22508391136, -0.231058108281, -0.237023605994, -0.242980179903, -0.248927605746, -0.254865659605, -0.260794117915, -0.266712757475, -0.27262135545, -0.278519689385, -0.284407537211, -0.290284677254, -0.296150888244, -0.302005949319, -0.307849640042, -0.313681740399, -0.319502030816, -0.325310292162, -0.33110630576, -0.336889853392, -0.342660717312, -0.348418680249, -0.35416352542, -0.359895036535, -0.365612997805, -0.371317193952, -0.377007410216, -0.382683432365, -0.388345046699, -0.393992040061, -0.399624199846, -0.405241314005, -0.410843171058, -0.416429560098, -0.4220002708, -0.42755509343, -0.433093818853, -0.438616238539, -0.44412214457, -0.449611329655, -0.455083587126, -0.460538710958, -0.465976495768, -0.471396736826, -0.476799230063, -0.482183772079, -0.487550160148, -0.49289819223, -0.498227666973, -0.503538383726, -0.508830142543, -0.514102744193, -0.519355990166, -0.524589682678, -0.529803624686, -0.534997619887, -0.54017147273, -0.545324988422, -0.550457972937, -0.55557023302, -0.560661576197, -0.565731810784, -0.570780745887, -0.575808191418, -0.580813958096, -0.585797857456, -0.590759701859, -0.595699304492, -0.600616479384, -0.605511041404, -0.610382806276, -0.615231590581, -0.620057211763, -0.624859488142, -0.629638238915, -0.634393284164, -0.639124444864, -0.64383154289, -0.648514401022, -0.653172842954, -0.657806693297, -0.66241577759, -0.666999922304, -0.671558954847, -0.676092703575, -0.680600997795, -0.685083667773, -0.689540544737, -0.69397146089, -0.698376249409, -0.702754744457, -0.707106781187, -0.711432195745, -0.715730825284, -0.720002507961, -0.724247082951, -0.728464390448, -0.732654271672, -0.736816568877, -0.740951125355, -0.745057785441, -0.749136394523, -0.753186799044, -0.757208846506, -0.761202385484, -0.765167265622, -0.769103337646, -0.773010453363, -0.776888465673, -0.780737228572, -0.784556597156, -0.788346427627, -0.7921065773, -0.795836904609, -0.799537269108, -0.803207531481, -0.806847553544, -0.810457198253, -0.814036329706, -0.817584813152, -0.821102514991, -0.824589302785, -0.828045045258, -0.831469612303, -0.834862874986, -0.838224705555, -0.841554977437, -0.84485356525, -0.848120344803, -0.851355193105, -0.854557988365, -0.85772861, -0.860866938638, -0.863972856122, -0.867046245516, -0.870086991109, -0.873094978418, -0.876070094195, -0.879012226429, -0.881921264348, -0.884797098431, -0.887639620403, -0.890448723245, -0.893224301196, -0.895966249756, -0.898674465694, -0.901348847046, -0.903989293123, -0.906595704515, -0.909167983091, -0.911706032005, -0.914209755704, -0.916679059921, -0.91911385169, -0.921514039342, -0.923879532511, -0.926210242138, -0.928506080473, -0.930766961079, -0.932992798835, -0.935183509939, -0.937339011913, -0.939459223602, -0.941544065183, -0.943593458162, -0.945607325381, -0.947585591018, -0.949528180593, -0.951435020969, -0.953306040354, -0.955141168306, -0.956940335732, -0.958703474896, -0.960430519416, -0.962121404269, -0.963776065795, -0.965394441698, -0.966976471045, -0.968522094274, -0.970031253195, -0.971503890986, -0.972939952206, -0.974339382786, -0.975702130039, -0.977028142658, -0.97831737072, -0.979569765685, -0.980785280403, -0.98196386911, -0.983105487431, -0.984210092387, -0.985277642389, -0.986308097245, -0.987301418158, -0.988257567731, -0.989176509965, -0.990058210262, -0.990902635428, -0.991709753669, -0.992479534599, -0.993211949235, -0.993906970002, -0.994564570734, -0.995184726672, -0.995767414468, -0.996312612183, -0.996820299291, -0.997290456679, -0.997723066644, -0.9981181129, -0.998475580573, -0.998795456205, -0.999077727753, -0.999322384588, -0.999529417501, -0.999698818696, -0.999830581796, -0.999924701839, -0.999981175283, -1.0, -0.999981175283, -0.999924701839, -0.999830581796, -0.999698818696, -0.999529417501, -0.999322384588, -0.999077727753, -0.998795456205, -0.998475580573, -0.9981181129, -0.997723066644, -0.997290456679, -0.996820299291, -0.996312612183, -0.995767414468, -0.995184726672, -0.994564570734, -0.993906970002, -0.993211949235, -0.992479534599, -0.991709753669, -0.990902635428, -0.990058210262, -0.989176509965, -0.988257567731, -0.987301418158, -0.986308097245, -0.985277642389, -0.984210092387, -0.983105487431, -0.98196386911, -0.980785280403, -0.979569765685, -0.97831737072, -0.977028142658, -0.975702130039, -0.974339382786, -0.972939952206, -0.971503890986, -0.970031253195, -0.968522094274, -0.966976471045, -0.965394441698, -0.963776065795, -0.962121404269, -0.960430519416, -0.958703474896, -0.956940335732, -0.955141168306, -0.953306040354, -0.951435020969, -0.949528180593, -0.947585591018, -0.945607325381, -0.943593458162, -0.941544065183, -0.939459223602, -0.937339011913, -0.935183509939, -0.932992798835, -0.930766961079, -0.928506080473, -0.926210242138, -0.923879532511, -0.921514039342, -0.91911385169, -0.916679059921, -0.914209755704, -0.911706032005, -0.909167983091, -0.906595704515, -0.903989293123, -0.901348847046, -0.898674465694, -0.895966249756, -0.893224301196, -0.890448723245, -0.887639620403, -0.884797098431, -0.881921264348, -0.879012226429, -0.876070094195, -0.873094978418, -0.870086991109, -0.867046245516, -0.863972856122, -0.860866938638, -0.85772861, -0.854557988365, -0.851355193105, -0.848120344803, -0.84485356525, -0.841554977437, -0.838224705555, -0.834862874986, -0.831469612303, -0.828045045258, -0.824589302785, -0.821102514991, -0.817584813152, -0.814036329706, -0.810457198253, -0.806847553544, -0.803207531481, -0.799537269108, -0.795836904609, -0.7921065773, -0.788346427627, -0.784556597156, -0.780737228572, -0.776888465673, -0.773010453363, -0.769103337646, -0.765167265622, -0.761202385484, -0.757208846506, -0.753186799044, -0.749136394523, -0.745057785441, -0.740951125355, -0.736816568877, -0.732654271672, -0.728464390448, -0.724247082951, -0.720002507961, -0.715730825284, -0.711432195745, -0.707106781187, -0.702754744457, -0.698376249409, -0.69397146089, -0.689540544737, -0.685083667773, -0.680600997795, -0.676092703575, -0.671558954847, -0.666999922304, -0.66241577759, -0.657806693297, -0.653172842954, -0.648514401022, -0.64383154289, -0.639124444864, -0.634393284164, -0.629638238915, -0.624859488142, -0.620057211763, -0.615231590581, -0.610382806276, -0.605511041404, -0.600616479384, -0.595699304492, -0.590759701859, -0.585797857456, -0.580813958096, -0.575808191418, -0.570780745887, -0.565731810784, -0.560661576197, -0.55557023302, -0.550457972937, -0.545324988422, -0.54017147273, -0.534997619887, -0.529803624686, -0.524589682678, -0.519355990166, -0.514102744193, -0.508830142543, -0.503538383726, -0.498227666973, -0.49289819223, -0.487550160148, -0.482183772079, -0.476799230063, -0.471396736826, -0.465976495768, -0.460538710958, -0.455083587126, -0.449611329655, -0.44412214457, -0.438616238539, -0.433093818853, -0.42755509343, -0.4220002708, -0.416429560098, -0.410843171058, -0.405241314005, -0.399624199846, -0.393992040061, -0.388345046699, -0.382683432365, -0.377007410216, -0.371317193952, -0.365612997805, -0.359895036535, -0.35416352542, -0.348418680249, -0.342660717312, -0.336889853392, -0.33110630576, -0.325310292162, -0.319502030816, -0.313681740399, -0.307849640042, -0.302005949319, -0.296150888244, -0.290284677254, -0.284407537211, -0.278519689385, -0.27262135545, -0.266712757475, -0.260794117915, -0.254865659605, -0.248927605746, -0.242980179903, -0.237023605994, -0.231058108281, -0.22508391136, -0.219101240157, -0.213110319916, -0.207111376192, -0.201104634842, -0.195090322016, -0.18906866415, -0.183039887955, -0.177004220412, -0.17096188876, -0.16491312049, -0.158858143334, -0.152797185258, -0.146730474455, -0.140658239333, -0.134580708507, -0.128498110794, -0.122410675199, -0.116318630912, -0.110222207294, -0.104121633872, -0.0980171403296, -0.0919089564971, -0.0857973123444, -0.0796824379714, -0.0735645635997, -0.0674439195637, -0.0613207363022, -0.0551952443497, -0.0490676743274, -0.0429382569349, -0.0368072229414, -0.0306748031766, -0.0245412285229, -0.0184067299058, -0.0122715382857, -0.00613588464915, -1.22464679915e-16, 0.00613588464915, 0.0122715382857, 0.0184067299058, 0.0245412285229, 0.0306748031766, 0.0368072229414, 0.0429382569349, 0.0490676743274, 0.0551952443497, 0.0613207363022, 0.0674439195637, 0.0735645635997, 0.0796824379714, 0.0857973123444, 0.0919089564971, 0.0980171403296, 0.104121633872, 0.110222207294, 0.116318630912, 0.122410675199, 0.128498110794, 0.134580708507, 0.140658239333, 0.146730474455, 0.152797185258, 0.158858143334, 0.16491312049, 0.17096188876, 0.177004220412, 0.183039887955, 0.18906866415, 0.195090322016, 0.201104634842, 0.207111376192, 0.213110319916, 0.219101240157, 0.22508391136, 0.231058108281, 0.237023605994, 0.242980179903, 0.248927605746, 0.254865659605, 0.260794117915, 0.266712757475, 0.27262135545, 0.278519689385, 0.284407537211, 0.290284677254, 0.296150888244, 0.302005949319, 0.307849640042, 0.313681740399, 0.319502030816, 0.325310292162, 0.33110630576, 0.336889853392, 0.342660717312, 0.348418680249, 0.35416352542, 0.359895036535, 0.365612997805, 0.371317193952, 0.377007410216, 0.382683432365, 0.388345046699, 0.393992040061, 0.399624199846, 0.405241314005, 0.410843171058, 0.416429560098, 0.4220002708, 0.42755509343, 0.433093818853, 0.438616238539, 0.44412214457, 0.449611329655, 0.455083587126, 0.460538710958, 0.465976495768, 0.471396736826, 0.476799230063, 0.482183772079, 0.487550160148, 0.49289819223, 0.498227666973, 0.503538383726, 0.508830142543, 0.514102744193, 0.519355990166, 0.524589682678, 0.529803624686, 0.534997619887, 0.54017147273, 0.545324988422, 0.550457972937, 0.55557023302, 0.560661576197, 0.565731810784, 0.570780745887, 0.575808191418, 0.580813958096, 0.585797857456, 0.590759701859, 0.595699304492, 0.600616479384, 0.605511041404, 0.610382806276, 0.615231590581, 0.620057211763, 0.624859488142, 0.629638238915, 0.634393284164, 0.639124444864, 0.64383154289, 0.648514401022, 0.653172842954, 0.657806693297, 0.66241577759, 0.666999922304, 0.671558954847, 0.676092703575, 0.680600997795, 0.685083667773, 0.689540544737, 0.69397146089, 0.698376249409, 0.702754744457, 0.707106781187, 0.711432195745, 0.715730825284, 0.720002507961, 0.724247082951, 0.728464390448, 0.732654271672, 0.736816568877, 0.740951125355, 0.745057785441, 0.749136394523, 0.753186799044, 0.757208846506, 0.761202385484, 0.765167265622, 0.769103337646, 0.773010453363, 0.776888465673, 0.780737228572, 0.784556597156, 0.788346427627, 0.7921065773, 0.795836904609, 0.799537269108, 0.803207531481, 0.806847553544, 0.810457198253, 0.814036329706, 0.817584813152, 0.821102514991, 0.824589302785, 0.828045045258, 0.831469612303, 0.834862874986, 0.838224705555, 0.841554977437, 0.84485356525, 0.848120344803, 0.851355193105, 0.854557988365, 0.85772861, 0.860866938638, 0.863972856122, 0.867046245516, 0.870086991109, 0.873094978418, 0.876070094195, 0.879012226429, 0.881921264348, 0.884797098431, 0.887639620403, 0.890448723245, 0.893224301196, 0.895966249756, 0.898674465694, 0.901348847046, 0.903989293123, 0.906595704515, 0.909167983091, 0.911706032005, 0.914209755704, 0.916679059921, 0.91911385169, 0.921514039342, 0.923879532511, 0.926210242138, 0.928506080473, 0.930766961079, 0.932992798835, 0.935183509939, 0.937339011913, 0.939459223602, 0.941544065183, 0.943593458162, 0.945607325381, 0.947585591018, 0.949528180593, 0.951435020969, 0.953306040354, 0.955141168306, 0.956940335732, 0.958703474896, 0.960430519416, 0.962121404269, 0.963776065795, 0.965394441698, 0.966976471045, 0.968522094274, 0.970031253195, 0.971503890986, 0.972939952206, 0.974339382786, 0.975702130039, 0.977028142658, 0.97831737072, 0.979569765685, 0.980785280403, 0.98196386911, 0.983105487431, 0.984210092387, 0.985277642389, 0.986308097245, 0.987301418158, 0.988257567731, 0.989176509965, 0.990058210262, 0.990902635428, 0.991709753669, 0.992479534599, 0.993211949235, 0.993906970002, 0.994564570734, 0.995184726672, 0.995767414468, 0.996312612183, 0.996820299291, 0.997290456679, 0.997723066644, 0.9981181129, 0.998475580573, 0.998795456205, 0.999077727753, 0.999322384588, 0.999529417501, 0.999698818696, 0.999830581796, 0.999924701839, 0.999981175283, 1.0, 0.999981175283, 0.999924701839, 0.999830581796, 0.999698818696, 0.999529417501, 0.999322384588, 0.999077727753, 0.998795456205, 0.998475580573, 0.9981181129, 0.997723066644, 0.997290456679, 0.996820299291, 0.996312612183, 0.995767414468, 0.995184726672, 0.994564570734, 0.993906970002, 0.993211949235, 0.992479534599, 0.991709753669, 0.990902635428, 0.990058210262, 0.989176509965, 0.988257567731, 0.987301418158, 0.986308097245, 0.985277642389, 0.984210092387, 0.983105487431, 0.98196386911, 0.980785280403, 0.979569765685, 0.97831737072, 0.977028142658, 0.975702130039, 0.974339382786, 0.972939952206, 0.971503890986, 0.970031253195, 0.968522094274, 0.966976471045, 0.965394441698, 0.963776065795, 0.962121404269, 0.960430519416, 0.958703474896, 0.956940335732, 0.955141168306, 0.953306040354, 0.951435020969, 0.949528180593, 0.947585591018, 0.945607325381, 0.943593458162, 0.941544065183, 0.939459223602, 0.937339011913, 0.935183509939, 0.932992798835, 0.930766961079, 0.928506080473, 0.926210242138, 0.923879532511, 0.921514039342, 0.91911385169, 0.916679059921, 0.914209755704, 0.911706032005, 0.909167983091, 0.906595704515, 0.903989293123, 0.901348847046, 0.898674465694, 0.895966249756, 0.893224301196, 0.890448723245, 0.887639620403, 0.884797098431, 0.881921264348, 0.879012226429, 0.876070094195, 0.873094978418, 0.870086991109, 0.867046245516, 0.863972856122, 0.860866938638, 0.85772861, 0.854557988365, 0.851355193105, 0.848120344803, 0.84485356525, 0.841554977437, 0.838224705555, 0.834862874986, 0.831469612303, 0.828045045258, 0.824589302785, 0.821102514991, 0.817584813152, 0.814036329706, 0.810457198253, 0.806847553544, 0.803207531481, 0.799537269108, 0.795836904609, 0.7921065773, 0.788346427627, 0.784556597156, 0.780737228572, 0.776888465673, 0.773010453363, 0.769103337646, 0.765167265622, 0.761202385484, 0.757208846506, 0.753186799044, 0.749136394523, 0.745057785441, 0.740951125355, 0.736816568877, 0.732654271672, 0.728464390448, 0.724247082951, 0.720002507961, 0.715730825284, 0.711432195745, 0.707106781187, 0.702754744457, 0.698376249409, 0.69397146089, 0.689540544737, 0.685083667773, 0.680600997795, 0.676092703575, 0.671558954847, 0.666999922304, 0.66241577759, 0.657806693297, 0.653172842954, 0.648514401022, 0.64383154289, 0.639124444864, 0.634393284164, 0.629638238915, 0.624859488142, 0.620057211763, 0.615231590581, 0.610382806276, 0.605511041404, 0.600616479384, 0.595699304492, 0.590759701859, 0.585797857456, 0.580813958096, 0.575808191418, 0.570780745887, 0.565731810784, 0.560661576197, 0.55557023302, 0.550457972937, 0.545324988422, 0.54017147273, 0.534997619887, 0.529803624686, 0.524589682678, 0.519355990166, 0.514102744193, 0.508830142543, 0.503538383726, 0.498227666973, 0.49289819223, 0.487550160148, 0.482183772079, 0.476799230063, 0.471396736826, 0.465976495768, 0.460538710958, 0.455083587126, 0.449611329655, 0.44412214457, 0.438616238539, 0.433093818853, 0.42755509343, 0.4220002708, 0.416429560098, 0.410843171058, 0.405241314005, 0.399624199846, 0.393992040061, 0.388345046699, 0.382683432365, 0.377007410216, 0.371317193952, 0.365612997805, 0.359895036535, 0.35416352542, 0.348418680249, 0.342660717312, 0.336889853392, 0.33110630576, 0.325310292162, 0.319502030816, 0.313681740399, 0.307849640042, 0.302005949319, 0.296150888244, 0.290284677254, 0.284407537211, 0.278519689385, 0.27262135545, 0.266712757475, 0.260794117915, 0.254865659605, 0.248927605746, 0.242980179903, 0.237023605994, 0.231058108281, 0.22508391136, 0.219101240157, 0.213110319916, 0.207111376192, 0.201104634842, 0.195090322016, 0.18906866415, 0.183039887955, 0.177004220412, 0.17096188876, 0.16491312049, 0.158858143334, 0.152797185258, 0.146730474455, 0.140658239333, 0.134580708507, 0.128498110794, 0.122410675199, 0.116318630912, 0.110222207294, 0.104121633872, 0.0980171403296, 0.0919089564971, 0.0857973123444, 0.0796824379714, 0.0735645635997, 0.0674439195637, 0.0613207363022, 0.0551952443497, 0.0490676743274, 0.0429382569349, 0.0368072229414, 0.0306748031766, 0.0245412285229, 0.0184067299058, 0.0122715382857, 0.00613588464915 }; diff --git a/benchmarks/vec-fft/vec-fft.c b/benchmarks/vec-fft/vec-fft.c deleted file mode 100644 index b7b4d55..0000000 --- a/benchmarks/vec-fft/vec-fft.c +++ /dev/null @@ -1,171 +0,0 @@ -// See LICENSE for license details. - -// ************************************************************************* -// multiply function (c version) -// ------------------------------------------------------------------------- -#include "vec-fft.h" -#include "fft_const.h" - -int log2down(int in) -{ - int counter = -1; - while(in > 0) { counter++; in = in >> 1; } - return counter; -} - -void fft(fftval_t workspace_real[], fftval_t workspace_imag[], - const fftval_t tf_real[], const fftval_t tf_imag[]) //size is FFT_SIZE -{ - const int num_stage_ops = FFT_SIZE >> 1; - const int logfftsize = log2down(FFT_SIZE); - - int given_vl; - // First, setup hwacha to what we need: -#if defined(FFT_FIXED) - // num_stage_ops VL, 9 x-reg (1 zero, 2 ctrl, 4 data, 2 scratch), 1 fpu (avert bug) - asm volatile ("vsetcfg 9, 1"); -#elif defined(FFT_FLOATING) - asm volatile ("vsetcfg 8, 6"); - #if defined(FP_SINGLE) -// asm volatile ("vsetprec 32"); - #elif defined(FP_HALF) -// asm volatile ("vsetprec 16"); - #elif defined(FP_DOUBLE) - #else - #error wat - #endif -#endif - asm volatile ("vsetvl %[gvl], %[nvl]" : [gvl]"=r"(given_vl) : [nvl]"r"(num_stage_ops)); - asm volatile ("fence"); // Make sure prefilling of workspace is complete - - for(int stage = 0; stage < logfftsize; stage++) - { - const int half_cur_fft_size = (1 << stage); - const int sel_block_op = half_cur_fft_size-1; - const int sel_block = ~sel_block_op; - const int tf_scale = logfftsize - stage - 1; - - // Stripmining loop - for(int lane_start = 0; lane_start < num_stage_ops; lane_start += given_vl) - { - // Setup new vector length for this stripmining pass - const int needed_vl = num_stage_ops - lane_start; - asm volatile ("vsetvl %[gvl], %[nvl]" : [gvl]"=r"(given_vl) : [nvl]"r"(needed_vl)); - -#if defined(FFT_FIXED) - // First VF block to have vector unit determine what op it is doing - asm volatile (R"( - vmsv vx1, %[lane_start] - vmsv vx2, %[sel_block] - vmsv vx3, %[sel_block_op] - vmsv vx4, %[tf_scale] - vmsv vx5, %[half_cfs] - vf 0(%[vf_ptr]) - )": // no output registers - : [lane_start]"r"(lane_start), - [sel_block]"r"(sel_block), - [sel_block_op]"r"(sel_block_op), - [tf_scale]"r"(tf_scale), - [half_cfs]"r"(half_cur_fft_size), - [vf_ptr]"r"(&vf_fft_init) - : // no clobber - ); - - // Second VF block loads tf and op2 then calculates scale factor - asm volatile (R"( - vmsv vx4, %[tf_real] - vmsv vx5, %[tf_imag] - vmsv vx6, %[workspace_real] - vmsv vx7, %[workspace_imag] - vmsv vx8, %[fix_pt] - vf 0(%[vf_ptr]) - )": // no output registers - : [tf_real]"r"(tf_real), - [tf_imag]"r"(tf_imag), - [workspace_real]"r"(workspace_real), - [workspace_imag]"r"(workspace_imag), - [fix_pt]"r"(FIX_PT), - [vf_ptr]"r"(&vf_fft_scale) - : // no clobber - ); -#elif defined(FFT_FLOATING) - // First VF block to have vector unit determine what op it is doing - asm volatile (R"( - vmsv vx1, %[lane_start] - vmsv vx2, %[sel_block] - vmsv vx3, %[sel_block_op] - vmsv vx4, %[tf_scale] - vmsv vx5, %[half_cfs] - vf 0(%[vf_ptr]) - )": // no output registers - : [lane_start]"r"(lane_start), - [sel_block]"r"(sel_block), - [sel_block_op]"r"(sel_block_op), - [tf_scale]"r"(tf_scale), - [half_cfs]"r"(half_cur_fft_size), - [vf_ptr]"r"(&vf_fft_init) - : // no clobber - ); - - // Second VF block loads tf and op2 then calculates scale factor - asm volatile (R"( - vmsv vx4, %[tf_real] - vmsv vx5, %[tf_imag] - vmsv vx6, %[workspace_real] - vmsv vx7, %[workspace_imag] - vf 0(%[vf_ptr]) - )": // no output registers - : [tf_real]"r"(tf_real), - [tf_imag]"r"(tf_imag), - [workspace_real]"r"(workspace_real), - [workspace_imag]"r"(workspace_imag), - [vf_ptr]"r"(&vf_fft_scale) - : // no clobber - ); -#else - #error no mode selected in vec-fft/vec-fft.c -#endif - - // Third VF block actually calculates the results - asm volatile (R"( - vmsv vx5, %[workspace_real] - vmsv vx6, %[workspace_imag] - vf 0(%[vf_ptr]) - )": // no output registers - : [workspace_real]"r"(workspace_real), - [workspace_imag]"r"(workspace_imag), - [vf_ptr]"r"(&vf_fft_exec) - : // no clobber - ); - - // Fourth VF block stores first result - asm volatile (R"( - vmsv vx3, %[workspace_real] - vmsv vx4, %[workspace_imag] - vf 0(%[vf_ptr]) - )": // no output registers - : [workspace_real]"r"(workspace_real), - [workspace_imag]"r"(workspace_imag), - [vf_ptr]"r"(&vf_fft_store1) - : "memory" - ); - - // Fifth VF block stores second result - asm volatile (R"( - vmsv vx3, %[workspace_real] - vmsv vx4, %[workspace_imag] - vf 0(%[vf_ptr]) - )": // no output registers - : [workspace_real]"r"(workspace_real), - [workspace_imag]"r"(workspace_imag), - [vf_ptr]"r"(&vf_fft_store2) - : "memory" - ); - - } - } - - asm volatile ("fence"); // Make sure all that work from vector unit is visible to CPU - - return; -} diff --git a/benchmarks/vec-fft/vec-fft.h b/benchmarks/vec-fft/vec-fft.h deleted file mode 100644 index 7656cbc..0000000 --- a/benchmarks/vec-fft/vec-fft.h +++ /dev/null @@ -1,21 +0,0 @@ -// See LICENSE for license details. - -#ifndef __VEC_FFT_H -#define __VEC_FFT_H - -#include "fft_const.h" - -// Simple C version - -int log2down(int in); -void fft(fftval_t workspace_real[], fftval_t workspace_imag[], const fftval_t tf_real[], const fftval_t tf_imag[]); - -// VF blocks - DO NOT CALL FROM SCALAR CORE -extern void vf_test(); -extern void vf_fft_init(); -extern void vf_fft_scale(); -extern void vf_fft_exec(); -extern void vf_fft_store1(); -extern void vf_fft_store2(); - -#endif /* __VEC_FFT_H */ diff --git a/benchmarks/vec-fft/vec-fft_gaussian.c b/benchmarks/vec-fft/vec-fft_gaussian.c deleted file mode 100644 index a8c1e09..0000000 --- a/benchmarks/vec-fft/vec-fft_gaussian.c +++ /dev/null @@ -1,14 +0,0 @@ -// See LICENSE for license details. - -int input_data_real[1024] = {-896054, 949431, -1181578, 253232, -258369, -152000, 619625, -76677, 465711, -549326, -886958, -966940, 642303, -1412490, 762634, -220791, -1315319, -2559848, 1722557, -1279554, -784697, -85712, -470933, -2785179, -66578, -1597429, -409911, 896, 1027796, 48085, 1774527, 562113, 1795654, 983044, -60377, -1573581, 1030270, -773291, -987375, -291152, 1126075, -406236, -630897, 1531200, 153252, -1544032, 518357, -479677, -489022, 768468, 216657, 978756, 60305, 323742, -266762, -1654684, 1162783, 367356, -215242, 77760, 584574, 352846, -1205031, 202189, 12621, -777742, 1241171, -353489, -201242, 268114, 7405, 511548, 594019, 1378269, -470360, -1419079, -2068041, -224985, 773760, -133786, 166345, 56818, -329117, 710806, -406329, -325712, -1090084, 70838, 1004493, 716570, 1557742, 1814687, -1044653, 865660, 423172, 280485, 122644, 1599035, 836955, -966475, -731759, -1342635, -918704, -478514, -1729195, -275916, 1481397, -80107, -320867, 1571394, 441358, 1095253, 123305, 515740, 558500, 735220, -1409019, -192480, 750830, -385698, -133846, 582203, -538534, 906199, 448649, -1011173, 1112875, 305645, -427417, -1621730, -771200, -807072, -1648200, 2275694, -250040, 166780, 75114, 1498792, -852391, -1449432, 387756, 590382, 630725, 1111966, -1463601, 1379964, 588656, 36544, 585505, -675475, -1147007, 122834, -2281502, 1148931, 840446, -1322731, 2822403, 164183, 799482, 212823, -1077917, -2276541, -2416247, -1866483, 25406, -532814, -28766, -3399, -229289, -884731, -697664, 1388647, 1413131, 695668, 1600785, 1053622, 1882168, 807694, 1496109, 414407, -354594, 852655, -726330, -760018, 203035, 861991, 2077817, -278761, -1692805, -163980, 152551, 99640, -1544466, 424749, 600022, -224627, 1700150, 257985, -710227, -653561, -278079, 65958, 536047, -514225, 131065, 1879774, 1325692, -418569, -94234, -1567061, -1329031, -185396, 321072, -576789, -2082050, 120663, -1112296, -526319, 763200, -26381, 1324391, -740749, 173611, -1034909, -400867, -599852, -854975, 506465, -470497, -1690555, -599600, -774910, 480166, -551595, -154846, 1148952, -531685, -1420372, 115244, -44897, 224230, -235359, -491645, 580113, -930422, -1959150, 660689, -312934, -775785, -1447388, -738147, 327008, 117518, -1024839, -742963, 1113591, 512088, 981759, 224251, 879687, 530700, 793549, -1133250, -1984799, -201157, -226046, -693217, 1865422, -1323405, 727875, 1099706, -572954, 876134, 5546, -359252, -1477340, -1827760, 1425401, -713946, 407302, 296915, 428736, -1928924, 199630, -268383, 524386, -954547, -1009395, -299817, -310362, -3118676, 619580, 274035, -291538, 10998, 54373, -2682711, 1059473, 1900561, -1072897, 390315, 553662, 286722, -575054, 291089, -324509, -2201875, -1739589, -592230, -2358024, 1035206, 101656, 51362, -161931, 982101, 1972023, -940406, 117267, 919302, 706673, -526962, 3251470, -70727, 1354903, -123238, 191080, 2197403, -907972, -1631270, -273662, -43394, 100110, -1757122, 424462, -318587, 241805, -1161233, -766219, -844215, -424058, -571869, 1058981, -576705, -69864, 786586, 3420949, 1175440, -1369774, -1033382, 1895799, -160257, -500482, 649412, 523523, 1044180, 455826, 604125, 781678, -35555, -380257, -2101152, -2052395, 1345031, -1749075, -1898768, 2596126, 877930, 886063, -1747101, 361069, -2709924, -387654, 1461459, 278642, 284030, -2189727, -579640, -410905, 1800776, -387552, -616487, -891888, 1293689, 544185, 165521, -746200, 25612, -748496, -693907, 440270, -1355509, 802877, -226185, -122957, -163764, 706156, -599130, 2085773, 687121, 1536468, -197261, -65999, -602517, -1996625, 711481, 558923, 1575241, -131589, 1443891, 853304, 1450518, 2433068, -614678, 902956, 276921, -865560, 1250774, 1178148, 1627304, -526388, -293789, 163521, -2227160, -1681836, 1054701, -2316942, -575982, -220544, -907539, -728331, -149547, -309108, 1339888, -698216, 333701, 437526, 2094829, -1361341, -461547, 1162315, 1493649, -1052221, 403851, 841804, 2322413, 271887, 1100268, 954880, 97292, 638758, 300629, 654241, -1190910, -141642, 709317, -1761989, -1445740, 1071331, 1503261, -492201, -975276, 730555, -450130, -678104, -690089, -1439162, 226482, -48190, 977167, -403028, -660667, 602354, -970278, 376586, 1099863, -537913, 627956, -71364, -819583, -116110, 114762, 1227038, -416023, 1263602, 419692, 1489545, -323662, 57509, 148590, -627405, -1416122, -994706, -1207921, 2849186, 87464, 38164, -790326, -810378, 917028, -1707856, -782588, 39726, 1311549, 476992, 121776, -5966, -1107219, -113871, -1836494, 292648, 782507, -327742, 1568375, 1031082, 875287, -949597, -364015, -1345238, 2049161, 1199569, -1566459, 432513, -697595, -1989664, 117455, -298029, -372192, -278563, 785990, -307587, 2308882, -128000, 853709, -469916, 569248, -1013809, -92453, -612595, -976635, 407757, -278549, -553747, -1127594, 35556, -967385, -1254461, 2458671, -1235129, 112282, -7618, 1232264, -1584499, 546417, 636949, -788087, 204249, 563736, 905080, 24683, -772095, 957269, -476610, 3997491, -1132151, -87573, -1925741, 423206, 1759035, 345800, -1505568, 857837, 1280631, 672655, 1133353, -2360246, -310429, 1471262, 1874920, -942267, -494638, -1092077, -10703, -798528, 291551, 195560, 603693, 485551, -37890, -681278, 1318510, -1775936, -267078, -1193401, -626711, 427957, -977820, 1177448, -1891652, -486457, -1858903, -251575, 1087978, -1625087, 298155, -1557769, 1112788, 1633070, 742091, 750361, 717342, -597939, -393911, -348514, 1606463, 1104431, -1780884, -1724355, -1087455, -626704, -234591, -841, 595062, -210024, -1150164, 298276, -1357687, 1092760, -795133, 437956, -1073763, -541, -1756437, -423091, -135638, -501750, 1843207, -499411, 515043, -347171, -1864412, 2081029, 935757, -1217682, -862780, 643680, -1682284, 1052595, -1055351, 1278938, -2296045, 728516, -1328562, 316609, -503151, -1317546, -310576, -821390, 717855, -447765, -82472, 226472, -2007236, 1839585, -908416, -131113, 61112, -439936, 37521, -56853, -322043, -537081, -1305022, 613039, -398354, -2251352, -274268, 213708, 1216898, -145297, 163831, 802134, 616814, 742237, 71663, -181725, -234834, 1567310, -433700, 1143683, 1217074, 588362, 880977, 257134, -251325, 419032, 1358747, -1010892, 911781, -114881, 1358209, 1938967, 2496063, 643557, 1131044, 1215299, -1293521, -552701, 535820, -59013, -364820, 401230, -493578, 934606, 947383, 90222, -982021, 823033, -767065, 719868, 555083, -542885, -248389, 683906, -1000980, 960526, 379686, -1332005, 3005752, -1014656, -707705, 957653, 1395720, 695949, -2199684, -1472357, -1402525, -1056170, -773175, -1038523, -1648483, 439225, -604068, 323281, 990838, -258093, -642187, 638228, 1016123, 1215852, -755431, -791548, 232428, -82638, 420739, -1182173, 2073021, -190956, -1426757, 1310320, -529883, 905258, 232249, -107927, -778138, -739516, 819476, 380856, 324304, 750739, -85899, -224870, 2741555, 241328, -1001409, 410347, -803508, 1603523, 83407, -1310198, -841961, -1499826, -231665, -1204370, 365869, 657035, -870479, -947226, 41541, 53460, 1185594, 197060, -442508, 560089, -648000, -1789746, 199013, 792625, 983644, -1255249, 611407, -642979, 2761, 1029260, 165283, -346945, -1241505, -1867499, -330354, 453762, 1144514, 1677530, -794614, -113484, 93134, 174381, 91979, -1072786, 546927, -950065, -1068562, -1316833, 2010054, 1167861, 376645, -1598679, -330354, -64535, -439935, 108686, -122528, -816010, -1657702, 1640815, -729089, -2109620, -1544674, 1751899, 828989, 1396845, -840295, 807944, -1422573, -1962193, -1494306, 1100314, -1035079, -113884, -755568, 311640, 21811, 1118977, 1769466, 272869, 1483856, -2397511, -1212979, -1870837, 66655, -844513, 566095, 258971, -2441991, -53408, 2379521, 1579490, 94538, -1729911, -2271954, -92893, -57722, 755889, 971922, 61839, 1289233, -1708188, 429444, 329090, -846816, -1406843, -329808, -487371, -1342151, -7656, 2160620, 1048363, -1481379, -1973413, 89442, -863813, -334120, 2920250, 1679680, -203732, -840043, 812270, -1065058, 1000115, -1755099, 1098146, -206412, -352184, 45945, -2653853, 539338, -217170, -25474, -1541171, -640479, -1465498, -590507, -294424, 1133931, -258876, -1336660, -36708, -136578, 274059, 2340197, -1661670, -569377, 11224, -781516, 1231584, 2084167, 647286, 1491175, 1359026, 1980953, -529280, 326660, 833554, 1246125, -1181280, -440724, -999991, -1751126, -1058615, 1202373, 379613, -94962, -548041, -2378721, 340897, 1644642, 384925, 10212, -1439416, 1377793, 1736966, -677616, -185008, 1062970, 334065, -923961, 1591540, -323994, 1729168, 1105046, -261575, -256889, 417819, 591476, -1039900, -873951, 299386, -365, -574062, -12822, 773415, -1887046, 1720955, 401646, 903317, 843614, 24321, 397914, -517594, -966687, 1225655, 1041758, 1609662, 530653, 2082272, 379586, -653861, -1324874, -543320, -902844, -156747, 314204, -221853, 698115, 2373708, -473267, -867591, 1789907, 50399, 148680, 110642, 2565631, 1338325, 1122299, -771531, -434336, 962718, -417205, 325343, 221979, -432146, 2039328, -496594, 646733, 707371, -555182, -499570, -1122461, 70865, -267403, -21031, 967469, 515973, 1838992, 1806965, -118340}; - -int input_data_imag[1024] = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; - -int output_data_real[1024] = {-12552904, 900359, 13572614, 6612100, 21544345, 11727877, 41132063, 19376007, 28943753, -27164137, -33144128, 6308054, -4036209, 5075419, 61637708, -7000522, 10258235, -3290422, -1930761, -34401327, 11137064, 7072560, -5882191, -220280, 23820092, -2747162, -28342204, 3125936, 7067612, -29776710, 55435764, -17075007, -19174432, 20671700, -12850843, -7092760, 28566808, 7334062, -4448199, 9472241, 47990150, -14256806, 34713414, 685658, -11454543, -23878239, -3851980, -31644251, -37423854, -1393894, 7232213, 8636293, 11497913, 9667982, 35262268, 5288923, -55684640, 3700995, -22558252, 18480571, -3559982, -8088458, -4285223, 7405114, -7771936, 12380211, -22448319, -4486944, -5799558, -6360713, -42620553, 9922426, 53490, 34344676, 9036257, -11010380, 8992865, 6702815, 37459231, -51621029, 45427877, -33475926, 6145230, -1165894, 9274164, -6597275, -3224277, 7626625, 61264116, -44474201, 124449, -2018025, 17789771, -17386333, 21059636, 25853157, 24492414, -36973351, -898990, 10429825, 33784360, -12611474, -9253302, -11470671, -23838238, -5434085, -8063059, -10329404, -24686045, 7658790, -17604946, 4041983, 17475815, -15225635, -6527846, -73005557, -386102, 17003988, -12259825, -11144953, 36458684, 29952905, 23484279, -30698712, 34127344, 9315402, -786106, -20800916, 27201257, 4772119, -20300899, -5423789, 30842314, -24840735, -18319755, 50925957, 19428607, -20411834, 12547811, -1014932, 10278862, -32309319, -1845021, -1849277, -45728792, 2285470, 35351079, 4290917, -30853329, -8422261, -36146114, 27125965, -17918864, -3137631, 16473491, 4954133, -15439592, 17157868, -18076982, -34202615, -18793524, -10174558, -2904950, 11985992, -44150120, -35036737, 21105041, 20053489, -1150444, 5200899, -9805414, -23632872, -9796924, -17291839, -12551635, -16640164, -6028118, -12190830, -10279820, -883003, 3527116, 40755752, 28098784, -7167611, 5362554, -41423374, 24889496, 47850412, 12089976, -37773935, -18754709, 46972743, 22713778, -16370229, 26601571, 6009203, -23452807, -11836470, 43211515, 20586799, 33670875, -50098827, 38216755, 3992212, -48197762, 10221413, -4180759, 38877047, 24300809, 29759474, -3046819, -24536720, 36519832, -32126982, 48288800, -35312888, 609558, -47953658, -37884802, 25200530, 4336904, 1479356, -7797884, -18955924, -32376585, -21405801, 29384571, -24481459, 2543253, 17158726, -2776591, 11240742, 15819802, -6537788, -4704053, 714275, 11628194, 28723061, 5738400, -37731881, 13312717, 5031202, 3486856, 33969822, -45736651, 9926004, 11254269, -8851157, -32157646, 12021993, 5884165, 15241604, 6434347, -17375580, -15489770, 52491003, -15225800, -14319845, 16184057, -23298538, -12183843, 15891533, -24134472, -15409885, -33973366, 36464591, -41740876, -5814469, -47863361, 5361930, 23994350, 25062493, -3595486, 5781951, 11066975, 20050830, 1161667, -48325555, -50611922, 9501699, 40705759, -5313072, -9659277, 10592603, -20218838, 18738334, -3328681, 36037414, -7491180, -31052879, -16631065, 8521060, 33240862, 32028228, 4855574, -4137820, -2219601, 18511495, -18457783, 32503042, -24587081, -10376774, 48721064, 5739730, -19871347, -3666797, 2290638, -46611214, 34189522, 34232428, -76237564, 16828591, -653519, -24934144, -13619213, -34352692, -9241485, -38754679, -29896052, 14155622, -14851765, -7247528, -11442225, 23899339, 21619168, 16078611, 1056057, 12534212, -8524125, -18563168, 1189818, 3284210, 18933819, -168384, -19548176, 3351897, 26023992, 5652407, 18821169, 5444904, -21497967, -18921004, 16911041, -28914605, -32035931, 29907843, 25885333, -4662420, -44175706, -18961154, -12390312, -30787883, 234931, 20687676, 1626383, 24397270, 28930792, 23854935, 3621212, -14037045, 5835273, -22733870, -15069814, 22891991, -5135262, -38748231, -8301851, -32091129, 6556125, 19593984, 29121989, 21557498, 24757875, 7340453, -12388807, -14846595, 31262548, -19666223, 6846384, 25564004, 1344657, -14261594, 34748326, 26024037, -2144417, -16123700, 14820402, 11115160, -24641550, -22153858, -9135007, 5480795, -2482695, 29012030, 20961896, -10222219, 3885264, -11027804, -22889506, 34689823, 8311915, -22242556, 18673513, -5202883, 5908575, 23036139, -3855230, -74608942, 13512302, -9837005, 3273908, -49960540, -11076455, 45599654, -40257199, 9076658, -27009729, 4399532, -13005537, -28775110, -3973568, -21385680, -14196021, -24651745, -18867054, -19140980, 29662849, -29940752, -18104043, -16287558, -9058976, 28073203, 27184046, -7723259, 701913, 18190003, 12586763, -34934264, -11473700, 4147803, 12865353, -23153211, 14184342, 849631, 9742551, 15656015, 1221034, -2745933, -55104836, 818333, 10184835, -39362197, 3106268, 49992663, 37017075, 3750303, -983440, -10290521, 4533740, 8052801, -27625442, -11484030, -5162240, 44681978, -14633727, 21739135, 6304123, 29959360, -17983352, 13539318, -42605105, -16083591, -41238795, -734838, -18941413, -23180474, 5784245, 42435559, -9134333, 7998833, -6148840, -35251769, -11080087, 5868914, 20072717, -24259041, -3030660, 16518116, -63597382, 21360935, 6670140, 27257482, -1314107, 7280448, 55584322, 9679983, 1404784, -20769472, -9417164, -15378773, -37098082, 20582563, -20200971, 4098965, 3273742, 5234704, 17739141, -35916362, 2538992, 7932900, 13107659, -66841471, -16623704, -66841471, 13107659, 7932900, 2538992, -35916362, 17739141, 5234704, 3273742, 4098965, -20200971, 20582563, -37098082, -15378773, -9417164, -20769472, 1404784, 9679983, 55584322, 7280448, -1314107, 27257482, 6670140, 21360935, -63597382, 16518116, -3030660, -24259041, 20072717, 5868914, -11080087, -35251769, -6148840, 7998833, -9134333, 42435559, 5784245, -23180474, -18941413, -734838, -41238795, -16083591, -42605105, 13539318, -17983352, 29959360, 6304123, 21739135, -14633727, 44681978, -5162240, -11484030, -27625442, 8052801, 4533740, -10290521, -983440, 3750303, 37017075, 49992663, 3106268, -39362197, 10184835, 818333, -55104836, -2745933, 1221034, 15656015, 9742551, 849631, 14184342, -23153211, 12865353, 4147803, -11473700, -34934264, 12586763, 18190003, 701913, -7723259, 27184046, 28073203, -9058976, -16287558, -18104043, -29940752, 29662849, -19140980, -18867054, -24651745, -14196021, -21385680, -3973568, -28775110, -13005537, 4399532, -27009729, 9076658, -40257199, 45599654, -11076455, -49960540, 3273908, -9837005, 13512302, -74608942, -3855230, 23036139, 5908575, -5202883, 18673513, -22242556, 8311915, 34689823, -22889506, -11027804, 3885264, -10222219, 20961896, 29012030, -2482695, 5480795, -9135007, -22153858, -24641550, 11115160, 14820402, -16123700, -2144417, 26024037, 34748326, -14261594, 1344657, 25564004, 6846384, -19666223, 31262548, -14846595, -12388807, 7340453, 24757875, 21557498, 29121989, 19593984, 6556125, -32091129, -8301851, -38748231, -5135262, 22891991, -15069814, -22733870, 5835273, -14037045, 3621212, 23854935, 28930792, 24397270, 1626383, 20687676, 234931, -30787883, -12390312, -18961154, -44175706, -4662420, 25885333, 29907843, -32035931, -28914605, 16911041, -18921004, -21497967, 5444904, 18821169, 5652407, 26023992, 3351897, -19548176, -168384, 18933819, 3284210, 1189818, -18563168, -8524125, 12534212, 1056057, 16078611, 21619168, 23899339, -11442225, -7247528, -14851765, 14155622, -29896052, -38754679, -9241485, -34352692, -13619213, -24934144, -653519, 16828591, -76237564, 34232428, 34189522, -46611214, 2290638, -3666797, -19871347, 5739730, 48721064, -10376774, -24587081, 32503042, -18457783, 18511495, -2219601, -4137820, 4855574, 32028228, 33240862, 8521060, -16631065, -31052879, -7491180, 36037414, -3328681, 18738334, -20218838, 10592603, -9659277, -5313072, 40705759, 9501699, -50611922, -48325555, 1161667, 20050830, 11066975, 5781951, -3595486, 25062493, 23994350, 5361930, -47863361, -5814469, -41740876, 36464591, -33973366, -15409885, -24134472, 15891533, -12183843, -23298538, 16184057, -14319845, -15225800, 52491003, -15489770, -17375580, 6434347, 15241604, 5884165, 12021993, -32157646, -8851157, 11254269, 9926004, -45736651, 33969822, 3486856, 5031202, 13312717, -37731881, 5738400, 28723061, 11628194, 714275, -4704053, -6537788, 15819802, 11240742, -2776591, 17158726, 2543253, -24481459, 29384571, -21405801, -32376585, -18955924, -7797884, 1479356, 4336904, 25200530, -37884802, -47953658, 609558, -35312888, 48288800, -32126982, 36519832, -24536720, -3046819, 29759474, 24300809, 38877047, -4180759, 10221413, -48197762, 3992212, 38216755, -50098827, 33670875, 20586799, 43211515, -11836470, -23452807, 6009203, 26601571, -16370229, 22713778, 46972743, -18754709, -37773935, 12089976, 47850412, 24889496, -41423374, 5362554, -7167611, 28098784, 40755752, 3527116, -883003, -10279820, -12190830, -6028118, -16640164, -12551635, -17291839, -9796924, -23632872, -9805414, 5200899, -1150444, 20053489, 21105041, -35036737, -44150120, 11985992, -2904950, -10174558, -18793524, -34202615, -18076982, 17157868, -15439592, 4954133, 16473491, -3137631, -17918864, 27125965, -36146114, -8422261, -30853329, 4290917, 35351079, 2285470, -45728792, -1849277, -1845021, -32309319, 10278862, -1014932, 12547811, -20411834, 19428607, 50925957, -18319755, -24840735, 30842314, -5423789, -20300899, 4772119, 27201257, -20800916, -786106, 9315402, 34127344, -30698712, 23484279, 29952905, 36458684, -11144953, -12259825, 17003988, -386102, -73005557, -6527846, -15225635, 17475815, 4041983, -17604946, 7658790, -24686045, -10329404, -8063059, -5434085, -23838238, -11470671, -9253302, -12611474, 33784360, 10429825, -898990, -36973351, 24492414, 25853157, 21059636, -17386333, 17789771, -2018025, 124449, -44474201, 61264116, 7626625, -3224277, -6597275, 9274164, -1165894, 6145230, -33475926, 45427877, -51621029, 37459231, 6702815, 8992865, -11010380, 9036257, 34344676, 53490, 9922426, -42620553, -6360713, -5799558, -4486944, -22448319, 12380211, -7771936, 7405114, -4285223, -8088458, -3559982, 18480571, -22558252, 3700995, -55684640, 5288923, 35262268, 9667982, 11497913, 8636293, 7232213, -1393894, -37423854, -31644251, -3851980, -23878239, -11454543, 685658, 34713414, -14256806, 47990150, 9472241, -4448199, 7334062, 28566808, -7092760, -12850843, 20671700, -19174432, -17075007, 55435764, -29776710, 7067612, 3125936, -28342204, -2747162, 23820092, -220280, -5882191, 7072560, 11137064, -34401327, -1930761, -3290422, 10258235, -7000522, 61637708, 5075419, -4036209, 6308054, -33144128, -27164137, 28943753, 19376007, 41132063, 11727877, 21544345, 6612100, 13572614, 900359}; - -int output_data_imag[1024] = {0, -5173739, 8732116, -9198791, 14335177, 438680, -22709701, -17845044, 46347274, -6345647, -2448769, -3536186, -11317514, -6755869, -56193258, 20510638, 36621773, 15143807, -23048336, -38525115, -34883897, 24214333, -25231715, -12107006, 713935, -26002012, 9793100, 27093766, 4897309, -15653296, 10724876, -29977588, 4309154, 23693365, -7664895, -45459513, 23194556, -2303636, 1369664, 2909709, -27032265, 20630463, -6235213, -2795181, -11657347, -56308552, -20811426, -35038296, 17912124, -14484060, -6781618, -38557643, -19148006, 35906257, 48027176, -21283279, 40736471, -11382928, 38262486, 12787192, -23033012, -8422805, -5377539, 22253959, -30745831, -29877218, -4239294, -28422500, -3618200, 13973117, 29741342, -17022267, -1957036, 8899885, 15742866, -33238888, 10084317, 26605444, 1030161, -21185160, -34935187, -16030047, 3642533, -34366997, 1826498, 29308452, -25112834, 20471937, -1180009, 37130194, -38361361, -15382227, -28458875, -10901236, 51939635, -10001075, 8415830, 14969775, -2200086, -8987923, -33459044, -19604410, 14599232, 15030263, 3116624, -240613, 35488914, -17880023, 12116931, 970002, -1645052, 11739988, -12405219, -8531371, 6280980, 43285275, 53294091, 14438956, -30709790, 3150296, -33870140, -30033796, -28257394, 2750861, 25734336, -10970839, -11661418, 44020436, 51741722, 31593825, 1747345, -20312309, -10179497, -21226148, 9835530, -9842343, -37542741, 42470495, -11301906, 11074125, 8780329, -17607802, -3312496, 13724852, 7735047, 26992838, -9180479, 32233478, -16313096, -18433286, -30525619, 28005433, -10111916, 21313758, 16044736, 12597726, -32790484, -16457884, -22200939, -18952889, -8466738, -31433357, 16965458, -2667905, 34294230, -15693435, -38503205, -27036248, 9870059, -10850678, 34292210, -41648342, -51497130, -14892223, 37945215, 8713693, -35858488, 5589150, 9267318, 8617025, -26936877, -4618667, 28945096, -18109048, 4284503, -20954012, 18336350, 8975377, 5324160, 32515341, 8257865, -12876619, 15988251, -96265292, -4176864, 2844196, 10868795, -21900938, 5968061, 1897870, -22256630, 5224738, 60085554, -16237695, -6969494, 3596058, -53074519, -18673224, 4900205, -24041184, 14133732, 25686170, 21028590, 19631795, -59800506, 14736647, 4895114, 4574152, -16549930, -50712873, 25373350, -32709009, -44358772, 58484885, 30214820, -11849460, 28322835, 21857252, -5628499, 36482875, -45328150, -30533556, 37530144, -3175589, -8391765, 20977257, -45409365, -14941794, 26381932, -17752896, -20050130, 29577848, -24457742, -51927238, -24413730, -12321691, -45195789, 30714238, -36509740, -40891318, -536372, 38490970, 37769763, -22775001, -8782034, 50315786, 8747460, -8082453, 9112167, 25470858, -9026632, -12237932, 11922939, -37462363, 30931967, 26476785, 11104819, -2942996, 36609737, -10110669, -17494763, -32857246, -22093506, -26127426, -41073536, 12327567, -10858236, -1433333, 3051905, -41817568, -25322923, 21665127, -41081131, 9433003, -33500087, 6396874, -13125160, 14694942, 33578834, 5602343, 13130115, 11729869, -3278485, -8709757, -25016094, -18683886, 6448906, 3171432, 21909223, -13641011, 44653591, 1198608, -11304099, -2542801, 32260023, 39939458, -16829798, -9366616, 63722083, -20680408, 4166791, 8554116, -19087027, -14876678, -9029718, -16314336, -5015656, -28571608, 26241701, 23027632, -8151529, 9721116, 536487, -41407616, 25405396, -22804081, 18988939, 23502922, 14160197, 17047542, 30171442, -35782940, 18122433, 7041401, -7896995, -38654097, 6224865, 9032313, -43765857, 5509349, -32164669, 15514221, -9215526, -2280056, -33678728, -5924909, -15688654, 5877933, -21068700, 33958782, -21540809, 21514861, -23099501, 12167718, 1477466, -31225530, 30547368, 34724033, -12194598, -6927380, 28757001, 3608809, 6260154, 21036639, 26307468, 6147806, 32175079, 3022892, 4585861, 13438166, -1341850, -32018696, 20165657, 10924238, 4349653, 29344316, 11808656, -38962700, 2846524, 29271928, 14628346, -1606887, 19934345, -15553962, 20620814, -15345862, 13570431, -26033484, -17323815, 19138174, -5342012, -10847049, 6212685, 36134613, -19766821, 3420438, 14880233, -7546326, -30108011, -8147370, 5736405, -28832233, 7260622, -38196573, 7983744, 39941609, 36752501, -18229998, -12591531, -5449065, -3928810, -1198627, 21680350, 27274726, -24915723, 3674016, 10314988, -43129459, -11082589, -30512620, 35820807, -22031772, 10768143, 13007038, 532791, 10880345, -18259021, -2701802, 20569560, 4152182, -13884018, 10854482, 12409669, -16238838, 13056624, -5799578, -57146386, 33718206, 21125488, -23646294, -41201403, 6564701, 12270149, 34778357, -40546139, -8501137, 39065223, 5721295, 14034699, 39589659, -490345, -26369806, -36847561, 14754701, 40726766, -29337748, -1383770, 19937687, 15436341, -396690, -16681977, 6868965, -21414293, -6831406, 15671217, 165948, -31373984, -14083491, 31088721, -7143287, -22061171, -29467733, 56712, -20509584, -78381147, 32974224, -62195634, -17486541, -28238711, -44529567, 31706075, -44738518, -25633029, 8759873, -15345780, -12994147, -21208035, -25026091, -11433931, 15909594, -15057552, 4344815, 16416258, -19924616, -25098907, -15034316, 7031513, -9625884, -35247437, 2958647, 34044834, -47596541, 30806704, 31809436, -51382701, -109428, -30027525, -2742560, -12145827, 17664073, 7117373, -26213934, 0, 26213934, -7117373, -17664073, 12145827, 2742560, 30027525, 109428, 51382701, -31809436, -30806704, 47596541, -34044834, -2958647, 35247437, 9625884, -7031513, 15034316, 25098907, 19924616, -16416258, -4344815, 15057552, -15909594, 11433931, 25026091, 21208035, 12994147, 15345780, -8759873, 25633029, 44738518, -31706075, 44529567, 28238711, 17486541, 62195634, -32974224, 78381147, 20509584, -56712, 29467733, 22061171, 7143287, -31088721, 14083491, 31373984, -165948, -15671217, 6831406, 21414293, -6868965, 16681977, 396690, -15436341, -19937687, 1383770, 29337748, -40726766, -14754701, 36847561, 26369806, 490345, -39589659, -14034699, -5721295, -39065223, 8501137, 40546139, -34778357, -12270149, -6564701, 41201403, 23646294, -21125488, -33718206, 57146386, 5799578, -13056624, 16238838, -12409669, -10854482, 13884018, -4152182, -20569560, 2701802, 18259021, -10880345, -532791, -13007038, -10768143, 22031772, -35820807, 30512620, 11082589, 43129459, -10314988, -3674016, 24915723, -27274726, -21680350, 1198627, 3928810, 5449065, 12591531, 18229998, -36752501, -39941609, -7983744, 38196573, -7260622, 28832233, -5736405, 8147370, 30108011, 7546326, -14880233, -3420438, 19766821, -36134613, -6212685, 10847049, 5342012, -19138174, 17323815, 26033484, -13570431, 15345862, -20620814, 15553962, -19934345, 1606887, -14628346, -29271928, -2846524, 38962700, -11808656, -29344316, -4349653, -10924238, -20165657, 32018696, 1341850, -13438166, -4585861, -3022892, -32175079, -6147806, -26307468, -21036639, -6260154, -3608809, -28757001, 6927380, 12194598, -34724033, -30547368, 31225530, -1477466, -12167718, 23099501, -21514861, 21540809, -33958782, 21068700, -5877933, 15688654, 5924909, 33678728, 2280056, 9215526, -15514221, 32164669, -5509349, 43765857, -9032313, -6224865, 38654097, 7896995, -7041401, -18122433, 35782940, -30171442, -17047542, -14160197, -23502922, -18988939, 22804081, -25405396, 41407616, -536487, -9721116, 8151529, -23027632, -26241701, 28571608, 5015656, 16314336, 9029718, 14876678, 19087027, -8554116, -4166791, 20680408, -63722083, 9366616, 16829798, -39939458, -32260023, 2542801, 11304099, -1198608, -44653591, 13641011, -21909223, -3171432, -6448906, 18683886, 25016094, 8709757, 3278485, -11729869, -13130115, -5602343, -33578834, -14694942, 13125160, -6396874, 33500087, -9433003, 41081131, -21665127, 25322923, 41817568, -3051905, 1433333, 10858236, -12327567, 41073536, 26127426, 22093506, 32857246, 17494763, 10110669, -36609737, 2942996, -11104819, -26476785, -30931967, 37462363, -11922939, 12237932, 9026632, -25470858, -9112167, 8082453, -8747460, -50315786, 8782034, 22775001, -37769763, -38490970, 536372, 40891318, 36509740, -30714238, 45195789, 12321691, 24413730, 51927238, 24457742, -29577848, 20050130, 17752896, -26381932, 14941794, 45409365, -20977257, 8391765, 3175589, -37530144, 30533556, 45328150, -36482875, 5628499, -21857252, -28322835, 11849460, -30214820, -58484885, 44358772, 32709009, -25373350, 50712873, 16549930, -4574152, -4895114, -14736647, 59800506, -19631795, -21028590, -25686170, -14133732, 24041184, -4900205, 18673224, 53074519, -3596058, 6969494, 16237695, -60085554, -5224738, 22256630, -1897870, -5968061, 21900938, -10868795, -2844196, 4176864, 96265292, -15988251, 12876619, -8257865, -32515341, -5324160, -8975377, -18336350, 20954012, -4284503, 18109048, -28945096, 4618667, 26936877, -8617025, -9267318, -5589150, 35858488, -8713693, -37945215, 14892223, 51497130, 41648342, -34292210, 10850678, -9870059, 27036248, 38503205, 15693435, -34294230, 2667905, -16965458, 31433357, 8466738, 18952889, 22200939, 16457884, 32790484, -12597726, -16044736, -21313758, 10111916, -28005433, 30525619, 18433286, 16313096, -32233478, 9180479, -26992838, -7735047, -13724852, 3312496, 17607802, -8780329, -11074125, 11301906, -42470495, 37542741, 9842343, -9835530, 21226148, 10179497, 20312309, -1747345, -31593825, -51741722, -44020436, 11661418, 10970839, -25734336, -2750861, 28257394, 30033796, 33870140, -3150296, 30709790, -14438956, -53294091, -43285275, -6280980, 8531371, 12405219, -11739988, 1645052, -970002, -12116931, 17880023, -35488914, 240613, -3116624, -15030263, -14599232, 19604410, 33459044, 8987923, 2200086, -14969775, -8415830, 10001075, -51939635, 10901236, 28458875, 15382227, 38361361, -37130194, 1180009, -20471937, 25112834, -29308452, -1826498, 34366997, -3642533, 16030047, 34935187, 21185160, -1030161, -26605444, -10084317, 33238888, -15742866, -8899885, 1957036, 17022267, -29741342, -13973117, 3618200, 28422500, 4239294, 29877218, 30745831, -22253959, 5377539, 8422805, 23033012, -12787192, -38262486, 11382928, -40736471, 21283279, -48027176, -35906257, 19148006, 38557643, 6781618, 14484060, -17912124, 35038296, 20811426, 56308552, 11657347, 2795181, 6235213, -20630463, 27032265, -2909709, -1369664, 2303636, -23194556, 45459513, 7664895, -23693365, -4309154, 29977588, -10724876, 15653296, -4897309, -27093766, -9793100, 26002012, -713935, 12107006, 25231715, -24214333, 34883897, 38525115, 23048336, -15143807, -36621773, -20510638, 56193258, 6755869, 11317514, 3536186, 2448769, 6345647, -46347274, 17845044, 22709701, -438680, -14335177, 9198791, -8732116, 5173739}; - -int tf_real[1024] = {1048576, 1048556, 1048497, 1048398, 1048260, 1048082, 1047865, 1047608, 1047312, 1046977, 1046602, 1046188, 1045734, 1045241, 1044709, 1044137, 1043526, 1042876, 1042186, 1041458, 1040690, 1039883, 1039036, 1038151, 1037226, 1036263, 1035260, 1034218, 1033138, 1032019, 1030860, 1029663, 1028427, 1027153, 1025840, 1024488, 1023097, 1021668, 1020201, 1018695, 1017151, 1015569, 1013948, 1012289, 1010592, 1008857, 1007084, 1005273, 1003424, 1001538, 999613, 997651, 995652, 993615, 991541, 989429, 987280, 985094, 982871, 980610, 978313, 975979, 973609, 971201, 968757, 966277, 963760, 961207, 958618, 955993, 953331, 950634, 947901, 945132, 942328, 939488, 936613, 933703, 930757, 927777, 924761, 921711, 918626, 915506, 912352, 909163, 905941, 902684, 899393, 896068, 892710, 889318, 885893, 882434, 878942, 875417, 871859, 868268, 864644, 860988, 857299, 853578, 849825, 846040, 842224, 838375, 834495, 830583, 826641, 822667, 818662, 814626, 810560, 806463, 802336, 798178, 793991, 789773, 785526, 781249, 776943, 772608, 768243, 763850, 759428, 754977, 750498, 745990, 741455, 736891, 732300, 727681, 723035, 718362, 713661, 708934, 704180, 699400, 694593, 689760, 684901, 680016, 675106, 670170, 665209, 660223, 655212, 650177, 645117, 640032, 634924, 629792, 624635, 619456, 614253, 609027, 603778, 598506, 593212, 587896, 582557, 577197, 571814, 566410, 560985, 555539, 550072, 544584, 539075, 533547, 527998, 522429, 516841, 511233, 505606, 499960, 494295, 488611, 482909, 477189, 471451, 465695, 459922, 454131, 448324, 442499, 436658, 430800, 424926, 419036, 413130, 407209, 401272, 395320, 389354, 383373, 377377, 371367, 365343, 359305, 353254, 347190, 341112, 335022, 328919, 322803, 316676, 310536, 304385, 298222, 292049, 285864, 279668, 273462, 267246, 261019, 254783, 248537, 242281, 236017, 229744, 223462, 217172, 210873, 204567, 198252, 191931, 185602, 179266, 172923, 166574, 160219, 153858, 147490, 141118, 134740, 128356, 121968, 115576, 109179, 102778, 96373, 89965, 83553, 77138, 70720, 64299, 57876, 51451, 45024, 38595, 32164, 25733, 19300, 12867, 6433, 0, -6433, -12867, -19300, -25733, -32164, -38595, -45024, -51451, -57876, -64299, -70720, -77138, -83553, -89965, -96373, -102778, -109179, -115576, -121968, -128356, -134740, -141118, -147490, -153858, -160219, -166574, -172923, -179266, -185602, -191931, -198252, -204567, -210873, -217172, -223462, -229744, -236017, -242281, -248537, -254783, -261019, -267246, -273462, -279668, -285864, -292049, -298222, -304385, -310536, -316676, -322803, -328919, -335022, -341112, -347190, -353254, -359305, -365343, -371367, -377377, -383373, -389354, -395320, -401272, -407209, -413130, -419036, -424926, -430800, -436658, -442499, -448324, -454131, -459922, -465695, -471451, -477189, -482909, -488611, -494295, -499960, -505606, -511233, -516841, -522429, -527998, -533547, -539075, -544584, -550072, -555539, -560985, -566410, -571814, -577197, -582557, -587896, -593212, -598506, -603778, -609027, -614253, -619456, -624635, -629792, -634924, -640032, -645117, -650177, -655212, -660223, -665209, -670170, -675106, -680016, -684901, -689760, -694593, -699400, -704180, -708934, -713661, -718362, -723035, -727681, -732300, -736891, -741455, -745990, -750498, -754977, -759428, -763850, -768243, -772608, -776943, -781249, -785526, -789773, -793991, -798178, -802336, -806463, -810560, -814626, -818662, -822667, -826641, -830583, -834495, -838375, -842224, -846040, -849825, -853578, -857299, -860988, -864644, -868268, -871859, -875417, -878942, -882434, -885893, -889318, -892710, -896068, -899393, -902684, -905941, -909163, -912352, -915506, -918626, -921711, -924761, -927777, -930757, -933703, -936613, -939488, -942328, -945132, -947901, -950634, -953331, -955993, -958618, -961207, -963760, -966277, -968757, -971201, -973609, -975979, -978313, -980610, -982871, -985094, -987280, -989429, -991541, -993615, -995652, -997651, -999613, -1001538, -1003424, -1005273, -1007084, -1008857, -1010592, -1012289, -1013948, -1015569, -1017151, -1018695, -1020201, -1021668, -1023097, -1024488, -1025840, -1027153, -1028427, -1029663, -1030860, -1032019, -1033138, -1034218, -1035260, -1036263, -1037226, -1038151, -1039036, -1039883, -1040690, -1041458, -1042186, -1042876, -1043526, -1044137, -1044709, -1045241, -1045734, -1046188, -1046602, -1046977, -1047312, -1047608, -1047865, -1048082, -1048260, -1048398, -1048497, -1048556, -1048576, -1048556, -1048497, -1048398, -1048260, -1048082, -1047865, -1047608, -1047312, -1046977, -1046602, -1046188, -1045734, -1045241, -1044709, -1044137, -1043526, -1042876, -1042186, -1041458, -1040690, -1039883, -1039036, -1038151, -1037226, -1036263, -1035260, -1034218, -1033138, -1032019, -1030860, -1029663, -1028427, -1027153, -1025840, -1024488, -1023097, -1021668, -1020201, -1018695, -1017151, -1015569, -1013948, -1012289, -1010592, -1008857, -1007084, -1005273, -1003424, -1001538, -999613, -997651, -995652, -993615, -991541, -989429, -987280, -985094, -982871, -980610, -978313, -975979, -973609, -971201, -968757, -966277, -963760, -961207, -958618, -955993, -953331, -950634, -947901, -945132, -942328, -939488, -936613, -933703, -930757, -927777, -924761, -921711, -918626, -915506, -912352, -909163, -905941, -902684, -899393, -896068, -892710, -889318, -885893, -882434, -878942, -875417, -871859, -868268, -864644, -860988, -857299, -853578, -849825, -846040, -842224, -838375, -834495, -830583, -826641, -822667, -818662, -814626, -810560, -806463, -802336, -798178, -793991, -789773, -785526, -781249, -776943, -772608, -768243, -763850, -759428, -754977, -750498, -745990, -741455, -736891, -732300, -727681, -723035, -718362, -713661, -708934, -704180, -699400, -694593, -689760, -684901, -680016, -675106, -670170, -665209, -660223, -655212, -650177, -645117, -640032, -634924, -629792, -624635, -619456, -614253, -609027, -603778, -598506, -593212, -587896, -582557, -577197, -571814, -566410, -560985, -555539, -550072, -544584, -539075, -533547, -527998, -522429, -516841, -511233, -505606, -499960, -494295, -488611, -482909, -477189, -471451, -465695, -459922, -454131, -448324, -442499, -436658, -430800, -424926, -419036, -413130, -407209, -401272, -395320, -389354, -383373, -377377, -371367, -365343, -359305, -353254, -347190, -341112, -335022, -328919, -322803, -316676, -310536, -304385, -298222, -292049, -285864, -279668, -273462, -267246, -261019, -254783, -248537, -242281, -236017, -229744, -223462, -217172, -210873, -204567, -198252, -191931, -185602, -179266, -172923, -166574, -160219, -153858, -147490, -141118, -134740, -128356, -121968, -115576, -109179, -102778, -96373, -89965, -83553, -77138, -70720, -64299, -57876, -51451, -45024, -38595, -32164, -25733, -19300, -12867, -6433, 0, 6433, 12867, 19300, 25733, 32164, 38595, 45024, 51451, 57876, 64299, 70720, 77138, 83553, 89965, 96373, 102778, 109179, 115576, 121968, 128356, 134740, 141118, 147490, 153858, 160219, 166574, 172923, 179266, 185602, 191931, 198252, 204567, 210873, 217172, 223462, 229744, 236017, 242281, 248537, 254783, 261019, 267246, 273462, 279668, 285864, 292049, 298222, 304385, 310536, 316676, 322803, 328919, 335022, 341112, 347190, 353254, 359305, 365343, 371367, 377377, 383373, 389354, 395320, 401272, 407209, 413130, 419036, 424926, 430800, 436658, 442499, 448324, 454131, 459922, 465695, 471451, 477189, 482909, 488611, 494295, 499960, 505606, 511233, 516841, 522429, 527998, 533547, 539075, 544584, 550072, 555539, 560985, 566410, 571814, 577197, 582557, 587896, 593212, 598506, 603778, 609027, 614253, 619456, 624635, 629792, 634924, 640032, 645117, 650177, 655212, 660223, 665209, 670170, 675106, 680016, 684901, 689760, 694593, 699400, 704180, 708934, 713661, 718362, 723035, 727681, 732300, 736891, 741455, 745990, 750498, 754977, 759428, 763850, 768243, 772608, 776943, 781249, 785526, 789773, 793991, 798178, 802336, 806463, 810560, 814626, 818662, 822667, 826641, 830583, 834495, 838375, 842224, 846040, 849825, 853578, 857299, 860988, 864644, 868268, 871859, 875417, 878942, 882434, 885893, 889318, 892710, 896068, 899393, 902684, 905941, 909163, 912352, 915506, 918626, 921711, 924761, 927777, 930757, 933703, 936613, 939488, 942328, 945132, 947901, 950634, 953331, 955993, 958618, 961207, 963760, 966277, 968757, 971201, 973609, 975979, 978313, 980610, 982871, 985094, 987280, 989429, 991541, 993615, 995652, 997651, 999613, 1001538, 1003424, 1005273, 1007084, 1008857, 1010592, 1012289, 1013948, 1015569, 1017151, 1018695, 1020201, 1021668, 1023097, 1024488, 1025840, 1027153, 1028427, 1029663, 1030860, 1032019, 1033138, 1034218, 1035260, 1036263, 1037226, 1038151, 1039036, 1039883, 1040690, 1041458, 1042186, 1042876, 1043526, 1044137, 1044709, 1045241, 1045734, 1046188, 1046602, 1046977, 1047312, 1047608, 1047865, 1048082, 1048260, 1048398, 1048497, 1048556}; - -int tf_imag[1024] = {0, -6433, -12867, -19300, -25733, -32164, -38595, -45024, -51451, -57876, -64299, -70720, -77138, -83553, -89965, -96373, -102778, -109179, -115576, -121968, -128356, -134740, -141118, -147490, -153858, -160219, -166574, -172923, -179266, -185602, -191931, -198252, -204567, -210873, -217172, -223462, -229744, -236017, -242281, -248537, -254783, -261019, -267246, -273462, -279668, -285864, -292049, -298222, -304385, -310536, -316676, -322803, -328919, -335022, -341112, -347190, -353254, -359305, -365343, -371367, -377377, -383373, -389354, -395320, -401272, -407209, -413130, -419036, -424926, -430800, -436658, -442499, -448324, -454131, -459922, -465695, -471451, -477189, -482909, -488611, -494295, -499960, -505606, -511233, -516841, -522429, -527998, -533547, -539075, -544584, -550072, -555539, -560985, -566410, -571814, -577197, -582557, -587896, -593212, -598506, -603778, -609027, -614253, -619456, -624635, -629792, -634924, -640032, -645117, -650177, -655212, -660223, -665209, -670170, -675106, -680016, -684901, -689760, -694593, -699400, -704180, -708934, -713661, -718362, -723035, -727681, -732300, -736891, -741455, -745990, -750498, -754977, -759428, -763850, -768243, -772608, -776943, -781249, -785526, -789773, -793991, -798178, -802336, -806463, -810560, -814626, -818662, -822667, -826641, -830583, -834495, -838375, -842224, -846040, -849825, -853578, -857299, -860988, -864644, -868268, -871859, -875417, -878942, -882434, -885893, -889318, -892710, -896068, -899393, -902684, -905941, -909163, -912352, -915506, -918626, -921711, -924761, -927777, -930757, -933703, -936613, -939488, -942328, -945132, -947901, -950634, -953331, -955993, -958618, -961207, -963760, -966277, -968757, -971201, -973609, -975979, -978313, -980610, -982871, -985094, -987280, -989429, -991541, -993615, -995652, -997651, -999613, -1001538, -1003424, -1005273, -1007084, -1008857, -1010592, -1012289, -1013948, -1015569, -1017151, -1018695, -1020201, -1021668, -1023097, -1024488, -1025840, -1027153, -1028427, -1029663, -1030860, -1032019, -1033138, -1034218, -1035260, -1036263, -1037226, -1038151, -1039036, -1039883, -1040690, -1041458, -1042186, -1042876, -1043526, -1044137, -1044709, -1045241, -1045734, -1046188, -1046602, -1046977, -1047312, -1047608, -1047865, -1048082, -1048260, -1048398, -1048497, -1048556, -1048576, -1048556, -1048497, -1048398, -1048260, -1048082, -1047865, -1047608, -1047312, -1046977, -1046602, -1046188, -1045734, -1045241, -1044709, -1044137, -1043526, -1042876, -1042186, -1041458, -1040690, -1039883, -1039036, -1038151, -1037226, -1036263, -1035260, -1034218, -1033138, -1032019, -1030860, -1029663, -1028427, -1027153, -1025840, -1024488, -1023097, -1021668, -1020201, -1018695, -1017151, -1015569, -1013948, -1012289, -1010592, -1008857, -1007084, -1005273, -1003424, -1001538, -999613, -997651, -995652, -993615, -991541, -989429, -987280, -985094, -982871, -980610, -978313, -975979, -973609, -971201, -968757, -966277, -963760, -961207, -958618, -955993, -953331, -950634, -947901, -945132, -942328, -939488, -936613, -933703, -930757, -927777, -924761, -921711, -918626, -915506, -912352, -909163, -905941, -902684, -899393, -896068, -892710, -889318, -885893, -882434, -878942, -875417, -871859, -868268, -864644, -860988, -857299, -853578, -849825, -846040, -842224, -838375, -834495, -830583, -826641, -822667, -818662, -814626, -810560, -806463, -802336, -798178, -793991, -789773, -785526, -781249, -776943, -772608, -768243, -763850, -759428, -754977, -750498, -745990, -741455, -736891, -732300, -727681, -723035, -718362, -713661, -708934, -704180, -699400, -694593, -689760, -684901, -680016, -675106, -670170, -665209, -660223, -655212, -650177, -645117, -640032, -634924, -629792, -624635, -619456, -614253, -609027, -603778, -598506, -593212, -587896, -582557, -577197, -571814, -566410, -560985, -555539, -550072, -544584, -539075, -533547, -527998, -522429, -516841, -511233, -505606, -499960, -494295, -488611, -482909, -477189, -471451, -465695, -459922, -454131, -448324, -442499, -436658, -430800, -424926, -419036, -413130, -407209, -401272, -395320, -389354, -383373, -377377, -371367, -365343, -359305, -353254, -347190, -341112, -335022, -328919, -322803, -316676, -310536, -304385, -298222, -292049, -285864, -279668, -273462, -267246, -261019, -254783, -248537, -242281, -236017, -229744, -223462, -217172, -210873, -204567, -198252, -191931, -185602, -179266, -172923, -166574, -160219, -153858, -147490, -141118, -134740, -128356, -121968, -115576, -109179, -102778, -96373, -89965, -83553, -77138, -70720, -64299, -57876, -51451, -45024, -38595, -32164, -25733, -19300, -12867, -6433, 0, 6433, 12867, 19300, 25733, 32164, 38595, 45024, 51451, 57876, 64299, 70720, 77138, 83553, 89965, 96373, 102778, 109179, 115576, 121968, 128356, 134740, 141118, 147490, 153858, 160219, 166574, 172923, 179266, 185602, 191931, 198252, 204567, 210873, 217172, 223462, 229744, 236017, 242281, 248537, 254783, 261019, 267246, 273462, 279668, 285864, 292049, 298222, 304385, 310536, 316676, 322803, 328919, 335022, 341112, 347190, 353254, 359305, 365343, 371367, 377377, 383373, 389354, 395320, 401272, 407209, 413130, 419036, 424926, 430800, 436658, 442499, 448324, 454131, 459922, 465695, 471451, 477189, 482909, 488611, 494295, 499960, 505606, 511233, 516841, 522429, 527998, 533547, 539075, 544584, 550072, 555539, 560985, 566410, 571814, 577197, 582557, 587896, 593212, 598506, 603778, 609027, 614253, 619456, 624635, 629792, 634924, 640032, 645117, 650177, 655212, 660223, 665209, 670170, 675106, 680016, 684901, 689760, 694593, 699400, 704180, 708934, 713661, 718362, 723035, 727681, 732300, 736891, 741455, 745990, 750498, 754977, 759428, 763850, 768243, 772608, 776943, 781249, 785526, 789773, 793991, 798178, 802336, 806463, 810560, 814626, 818662, 822667, 826641, 830583, 834495, 838375, 842224, 846040, 849825, 853578, 857299, 860988, 864644, 868268, 871859, 875417, 878942, 882434, 885893, 889318, 892710, 896068, 899393, 902684, 905941, 909163, 912352, 915506, 918626, 921711, 924761, 927777, 930757, 933703, 936613, 939488, 942328, 945132, 947901, 950634, 953331, 955993, 958618, 961207, 963760, 966277, 968757, 971201, 973609, 975979, 978313, 980610, 982871, 985094, 987280, 989429, 991541, 993615, 995652, 997651, 999613, 1001538, 1003424, 1005273, 1007084, 1008857, 1010592, 1012289, 1013948, 1015569, 1017151, 1018695, 1020201, 1021668, 1023097, 1024488, 1025840, 1027153, 1028427, 1029663, 1030860, 1032019, 1033138, 1034218, 1035260, 1036263, 1037226, 1038151, 1039036, 1039883, 1040690, 1041458, 1042186, 1042876, 1043526, 1044137, 1044709, 1045241, 1045734, 1046188, 1046602, 1046977, 1047312, 1047608, 1047865, 1048082, 1048260, 1048398, 1048497, 1048556, 1048576, 1048556, 1048497, 1048398, 1048260, 1048082, 1047865, 1047608, 1047312, 1046977, 1046602, 1046188, 1045734, 1045241, 1044709, 1044137, 1043526, 1042876, 1042186, 1041458, 1040690, 1039883, 1039036, 1038151, 1037226, 1036263, 1035260, 1034218, 1033138, 1032019, 1030860, 1029663, 1028427, 1027153, 1025840, 1024488, 1023097, 1021668, 1020201, 1018695, 1017151, 1015569, 1013948, 1012289, 1010592, 1008857, 1007084, 1005273, 1003424, 1001538, 999613, 997651, 995652, 993615, 991541, 989429, 987280, 985094, 982871, 980610, 978313, 975979, 973609, 971201, 968757, 966277, 963760, 961207, 958618, 955993, 953331, 950634, 947901, 945132, 942328, 939488, 936613, 933703, 930757, 927777, 924761, 921711, 918626, 915506, 912352, 909163, 905941, 902684, 899393, 896068, 892710, 889318, 885893, 882434, 878942, 875417, 871859, 868268, 864644, 860988, 857299, 853578, 849825, 846040, 842224, 838375, 834495, 830583, 826641, 822667, 818662, 814626, 810560, 806463, 802336, 798178, 793991, 789773, 785526, 781249, 776943, 772608, 768243, 763850, 759428, 754977, 750498, 745990, 741455, 736891, 732300, 727681, 723035, 718362, 713661, 708934, 704180, 699400, 694593, 689760, 684901, 680016, 675106, 670170, 665209, 660223, 655212, 650177, 645117, 640032, 634924, 629792, 624635, 619456, 614253, 609027, 603778, 598506, 593212, 587896, 582557, 577197, 571814, 566410, 560985, 555539, 550072, 544584, 539075, 533547, 527998, 522429, 516841, 511233, 505606, 499960, 494295, 488611, 482909, 477189, 471451, 465695, 459922, 454131, 448324, 442499, 436658, 430800, 424926, 419036, 413130, 407209, 401272, 395320, 389354, 383373, 377377, 371367, 365343, 359305, 353254, 347190, 341112, 335022, 328919, 322803, 316676, 310536, 304385, 298222, 292049, 285864, 279668, 273462, 267246, 261019, 254783, 248537, 242281, 236017, 229744, 223462, 217172, 210873, 204567, 198252, 191931, 185602, 179266, 172923, 166574, 160219, 153858, 147490, 141118, 134740, 128356, 121968, 115576, 109179, 102778, 96373, 89965, 83553, 77138, 70720, 64299, 57876, 51451, 45024, 38595, 32164, 25733, 19300, 12867, 6433}; - diff --git a/benchmarks/vec-fft/vec-fft_main.c b/benchmarks/vec-fft/vec-fft_main.c deleted file mode 100644 index b186205..0000000 --- a/benchmarks/vec-fft/vec-fft_main.c +++ /dev/null @@ -1,302 +0,0 @@ -// See LICENSE for license details. - -// ************************************************************************* -// multiply filter bencmark -// ------------------------------------------------------------------------- -// -// This benchmark tests the software multiply implemenation. The -// input data (and reference data) should be generated using the -// multiply_gendata.pl perl script and dumped to a file named -// dataset1.h You should not change anything except the -// HOST_DEBUG and VERIFY macros for your timing run. - -#include "vec-fft.h" - -//-------------------------------------------------------------------------- -// Macros - -// Set HOST_DEBUG to 1 if you are going to compile this for a host -// machine (ie Athena/Linux) for debug purposes and set HOST_DEBUG -// to 0 if you are compiling with the smips-gcc toolchain. - -#ifndef HOST_DEBUG -#define HOST_DEBUG 0 -#endif - -// Set PREALLOCATE to 1 if you want to preallocate the benchmark -// function before starting stats. If you have instruction/data -// caches and you don't want to count the overhead of misses, then -// you will need to use preallocation. - -#ifndef PREALLOCATE -#define PREALLOCATE 0 -#endif - -// Set VERIFY to 1 if you want the program to check that the sort -// function returns the right answer. When you are doing your -// benchmarking you should set this to 0 so that the verification -// is not included in your timing. - -#ifndef VERIFY -#define VERIFY 1 -#endif - -// Set SET_STATS to 1 if you want to carve out the piece that actually -// does the computation. - -#ifndef SET_STATS -#define SET_STATS 0 -#endif - -// Set MINIMAL to 1 if you want to run the core FFT kernel without -// any instrumentation or warm-up. -#ifndef MINIMAL -#define MINIMAL 1 -#endif - -//-------------------------------------------------------------------------- -// Platform Specific Includes - -#if HOST_DEBUG - #include <stdio.h> - #include <stdlib.h> -#else -void printstr(const char*); -void exit(); -#endif - - -//-------------------------------------------------------------------------- -// Input/Reference Data - -#include "fft_const.h" - -//-------------------------------------------------------------------------- -// Helper functions - -#if !MINIMAL - -void setup_input(int n, fftval_t in_real[], fftval_t in_imag[]) -{ - int i; - for(i=0; i < n; i++) { - in_real[i] = input_data_real[i]; - in_imag[i] = input_data_imag[i]; - } -} -void setup_warm_tf(int n, fftval_t in_real[], fftval_t in_imag[]) -{ - int i; - for(i=0; i < n; i++) { - in_real[i] = tf_real[i]; - in_imag[i] = tf_imag[i]; - } -} - -fftval_t calculate_error( int n, const fftval_t test_real[], const fftval_t test_imag[]) -{ - fftval_t current_max = 0; - printf("idx, real expected, real observed, imag expected, imag observed %d\n", 0); - -#if defined(FFT_FIXED) - for(int i = 0; i < n; i++) - { - const double scale = 1 << FIX_PT; - const double real_diff = (test_real[i] - output_data_real[i])/scale; - const double imag_diff = (test_imag[i] - output_data_imag[i])/scale; - - const double i_sq_error = real_diff*real_diff + imag_diff*imag_diff; - if(i_sq_error > current_max) { - printf("i = %d, current error: %d\n", i, (long)current_max); - current_max = i_sq_error; - } - } -#elif defined(FFT_FLOATING) - fftval_t real_expect = 0.0; - fftval_t imag_expect = 0.0; - for(int i = 0; i < n; i++) - { - /* TODO: Fix error caculation for half precision */ - const fftval_t real_diff = (test_real[i] - output_data_real[i]); - const fftval_t imag_diff = (test_imag[i] - output_data_imag[i]); - fftval_t i_sq_error = real_diff*real_diff + imag_diff*imag_diff; - -#if 0 - long tr = (long)(test_real[i] * 1000000000); - long ti = (long)(test_imag[i] * 1000000000); - long er = (long)(output_data_real[i] * 1000000000); - long ei = (long)(output_data_imag[i] * 1000000000); - - printf("i = %d, expected (%d,%d) and got (%d,%d), diff (%d,%d)\n", - i, - er, ei, - tr, ti, - er-tr, ei-ti); -#endif - -#if 1 - fftbit_t tr, ti, er, ei; -#ifdef FP_HALF - tr = test_real[i]; - ti = test_imag[i]; - er = output_data_real[i]; - ei = output_data_imag[i]; -#else - union bits { - fftval_t v; - fftbit_t u; - } bits; - bits.v = test_real[i]; tr = bits.u; - bits.v = test_imag[i]; ti = bits.u; - bits.v = output_data_real[i]; er = bits.u; - bits.v = output_data_imag[i]; ei = bits.u; -#endif - printf("%d: %d %d %d %d\n", i, er, tr, ei, ti); - // printf("%4d\t" FFT_PRI "\t" FFT_PRI "\t" FFT_PRI "\t" FFT_PRI "\n", - // i, er, tr, ei, ti); -#endif - -#if 0 - if(i_sq_error > current_max) { - printf("i = %d, max error (ppb): %ld\n", i, (long)(current_max * 1000000000)); - current_max = i_sq_error; - real_expect = output_data_real[i]; - imag_expect = output_data_imag[i]; - } -#endif - } -/* - printf("real expected: %d\n", (long)(real_expect)); - printf("imag expected: %d\n", (long)(imag_expect)); -*/ -#endif - - return current_max; -} - -void finishTest( double max_sq_error, long long num_cycles, long long num_retired) -{ - int passed = max_sq_error < 10e-8; - - if( passed ) printstr("*** PASSED ***"); - else printstr("*** FAILED ***"); - - printf(" (num_cycles = %ld, num_inst_retired = %ld)\n", num_cycles, num_retired); - - passed = passed ? 1 : 2; // if it passed, return 1 - - exit(); -} - -void setStats( int enable ) -{ -#if ( !HOST_DEBUG && SET_STATS ) - //asm( "mtpcr %0, cr10" : : "r" (enable) ); -#endif -} - -long long getCycles() -{ - long long cycles = 1337; -#if ( !HOST_DEBUG && SET_STATS ) - __asm__ __volatile__( "rdcycle %0" : "=r" (cycles) ); -#endif - return cycles; -} - -long long getInstRetired() -{ - long long inst_retired = 1338; -#if ( !HOST_DEBUG && SET_STATS ) - __asm__ __volatile__( "rdinstret %0" : "=r" (inst_retired) ); -#endif - return inst_retired; -} - -#endif /* !MINIMAL */ - -//-------------------------------------------------------------------------- -// Main -#define HWACHA_RADIX 2 - -#ifdef DATA_IN_UNPERMUTED -void permute(fftval_t workspace_real[], fftval_t workspace_imag[]) -{ - const int logradix = log2down(HWACHA_RADIX); - const int term_mask = HWACHA_RADIX-1; - const int num_term = log2down(FFT_SIZE)/logradix; - for(int i = 0; i < FFT_SIZE; i++) - { - // Get permuted address - int i_left = i; - int permuted = 0; - for(int cur_fft_size=HWACHA_RADIX; cur_fft_size <= FFT_SIZE; cur_fft_size = cur_fft_size << logradix) - { - permuted = (permuted << logradix) | (i_left & term_mask); - i_left = i_left >> logradix; - } - // If addresses are different and i < permuted (so we only do permutation once) - if(i < permuted) - { - fftval_t t = workspace_real[i]; - fftval_t u = workspace_imag[i]; - workspace_real[i] = workspace_real[permuted]; - workspace_imag[i] = workspace_imag[permuted]; - workspace_real[permuted] = t; - workspace_imag[permuted] = u; - } - } -} -#endif /* DATA_IN_UNPERMUTED */ - -#if MINIMAL - -int main(void) -{ -#ifdef DATA_IN_UNPERMUTED - permute(input_data_real, input_data_imag); -#endif - fft(input_data_real, input_data_imag, tf_real, tf_imag); -// calculate_error(FFT_SIZE, input_data_real, input_data_imag); - exit(); -} - -#else /* !MINIMAL */ - -int main(void) -{ - static fftval_t workspace_real[FFT_SIZE]; - static fftval_t workspace_imag[FFT_SIZE]; - static fftval_t warm_tf_real[FFT_SIZE]; - static fftval_t warm_tf_imag[FFT_SIZE]; - setup_input(FFT_SIZE, workspace_real, workspace_imag); - setup_warm_tf(FFT_SIZE, warm_tf_real, warm_tf_imag); - -#if PREALLOCATE - fft(workspace_real, workspace_imag, warm_tf_real, warm_tf_imag); - setup_input(FFT_SIZE, workspace_real, workspace_imag); -#endif - - long long start_cycles, start_retired, stop_cycles, stop_retired; - start_cycles = getCycles(); - start_retired = getInstRetired(); - -#ifdef DATA_IN_UNPERMUTED - permute(workspace_real, workspace_imag); -#endif - setStats(1); - fft(workspace_real, workspace_imag, warm_tf_real, warm_tf_imag); - setStats(0); - - stop_cycles = getCycles(); - stop_retired = getInstRetired(); - long long num_cycles = stop_cycles - start_cycles; - long long num_retired = stop_retired - start_retired; - - const double max_sq_error = calculate_error(FFT_SIZE, workspace_real, workspace_imag); - - // Check the results - finishTest(max_sq_error, num_cycles, num_retired); -} - -#endif /* MINIMAL */ diff --git a/benchmarks/vec-fft/vec-vfft.S b/benchmarks/vec-fft/vec-vfft.S deleted file mode 100644 index 05706af..0000000 --- a/benchmarks/vec-fft/vec-vfft.S +++ /dev/null @@ -1,245 +0,0 @@ -# See LICENSE for license details. - - .text - .align 2 - -#include "fft_const.h" - -#if defined(FFT_FIXED) - #define PTR_SHIFT 2 - #define PTR_SIZE 4 - - #define DATA_LOAD lw - #define DATA_STORE sw - - #define FFT_MUL mul - #define FFT_ADD add - #define FFT_SUB sub - - #define REG0 x3 - #define REG1 x4 - #define REG2 x5 - #define REG3 x6 - #define REG4 x7 - #define REG5 x8 -#elif defined(FFT_FLOATING) - #if defined(FP_HALF) - #define PTR_SHIFT 1 - #define PTR_SIZE 2 - - #define DATA_LOAD flh - #define DATA_STORE fsh - - #define FFT_MUL fmul.h - #define FFT_ADD fadd.h - #define FFT_SUB fsub.h - #elif defined(FP_SINGLE) - #define PTR_SHIFT 2 - #define PTR_SIZE 4 - - #define DATA_LOAD flw - #define DATA_STORE fsw - - #define FFT_MUL fmul.s - #define FFT_ADD fadd.s - #define FFT_SUB fsub.s - #elif defined(FP_DOUBLE) - #define PTR_SHIFT 3 - #define PTR_SIZE 8 - - #define DATA_LOAD fld - #define DATA_STORE fsd - - #define FFT_MUL fmul.d - #define FFT_ADD fadd.d - #define FFT_SUB fsub.d - #endif - - #define REG0 f0 - #define REG1 f1 - #define REG2 f2 - #define REG3 f3 - #define REG4 f4 - #define REG5 f5 -#else - #error FFT_FIXED or FFT_FLOATING not defined -#endif - - .globl vf_test -vf_test: - utidx x2 - add x1, x1, x2 - add x1, x1, x1 - stop - - .globl vf_fft_init -vf_fft_init: -# IN: -# x1: lane start (utidx=0 actually has this pos due to stripmining) -# x2: bit mask to select FFT block from op idx -# x3: bit mask to select operand in FFT block from op idx -# x4: necessary shift to adjust TF appropriately ( REMOVED ) -# x5: half the current FFT size (add to get the second op) -# OUT: -# x1: Has the first operand pos = (opid & i_x2) << 1 + (opid & i_x3) -# x2: Has the second operand pos = o_x1 + i_x5 -# x3: Has the twiddle factor pos = (opid & i_x3) << i_x4 - utidx x6 - add x6, x1, x6 # x6 <= opid - and x2, x2, x6 # x2 <= opid & i_x2 - and x3, x3, x6 # x3 <= opid & i_x3 - slli x2, x2, 1 # x2 <= (opid & i_x2) << 1 - - add x1, x2, x3 # x1 is now the proper result - add x2, x1, x5 # x2 is now the proper result - sll x3, x3, x4 - - stop - - .globl vf_fft_scale -vf_fft_scale: -# IN: -# x1: Has the first operand pos (reused) -# x2: Has the second operand pos (reused) -# x3: Has the twiddle factor pos (reused) -# x4: Has the tf real ptr -# x5: Has the tf imag ptr -# x6: Has the workspace real ptr -# x7: Has the workspace imag ptr -# x8: Has the fixed point shift ( REMOVED ) -# OUT: -# x1: Has the first operand offset = i_x1 << 3 -# x2: Has the second operand offset = i_x2 << 3 -# x3: Has the scale factor real -# x4: Has the scale factor imag - # Convert positions into actual memory offsets from table start - slli x1, x1, PTR_SHIFT # x1 <= i_x1 << 3 (proper result) - slli x2, x2, PTR_SHIFT # x2 <= i_x2 << 3 (proper result) - slli x3, x3, PTR_SHIFT # x3 <= i_x3 << 3 (tf offset) - - # Compute memory locations - add x4, x4, x3 # x4 <= load address for tf real - add x5, x5, x3 # x5 <= load address for tf imag - add x6, x6, x2 # x6 <= load address for op2 real - add x7, x7, x2 # x7 <= load address for op2 imag - - # Actually read memory - DATA_LOAD REG1, 0(x4) # tf real (a) - DATA_LOAD REG2, 0(x5) # tf imag (bi) - DATA_LOAD REG3, 0(x6) # op2 real (c) - DATA_LOAD REG4, 0(x7) # op2 imag (di) - - # Do the math using 3 multiplies - FFT_ADD REG0, REG1, REG2 # REG0 <= a + b - FFT_SUB REG2, REG2, REG1 # REG2 <= b - a - FFT_MUL REG0, REG0, REG4 # REG0 <= (a+b)d -#ifdef FFT_FIXED - sra REG0, REG0, REG5 # DO NOT SHIFT FOR FLOATING -#endif - FFT_MUL REG2, REG2, REG3 # REG2 <= (b-a)c -#ifdef FFT_FIXED - sra REG2, REG2, REG5 # DO NOT SHIFT FOR FLOATING -#endif - FFT_ADD REG3, REG3, REG4 # REG3 <= c + d - FFT_MUL REG4, REG1, REG3 # REG4 <= a(c+d) -#ifdef FFT_FIXED - sra REG4, REG4, REG5 # DO NOT SHIFT FOR FLOATING -#endif - - # Prepare final result - FFT_SUB REG0, REG4, REG0 # REG0 <= a(c+d) - (a+b)d (scale real) - FFT_ADD REG1, REG4, REG2 # REG1 <= a(c+d) + (b-a)c (scale imag) - - stop -/* - # Four multiply version - # Do the multiplications (a+bi)(c+di) needs ac ad bc bd - mul x3, x4, x6 # x3 <= ac - mul x4, x4, x7 # x4 <= adi - mul x6, x5, x6 # x6 <= bc - mul x5, x5, x7 # x5 <= bdi - sra x3, x3, x8 # These 4 shifts make sure the fixed pt properly aligned - sra x4, x4, x8 - sra x5, x5, x8 - sra x6, x6, x8 - - # Do the additions (ac - bd) and (bc + ad) - sub x3, x3, x5 # x3 <= ac - bd (proper result) - add x4, x4, x6 # x4 <= bc + ad (proper result) -*/ - - .globl vf_fft_exec -vf_fft_exec: -# IN: -# x1: Has the first operand offset (reused) -# x2: Has the second operand offset (reused) -# x3: Has the scale factor real (reused) -# x4: Has the scale factor imag (reused) -# x5: Has the workspace real ptr -# x6: Has the workspace imag ptr -# OUT: -# x1: Has the first operand offset (carry) -# x2: Has the second operand offset (carry) -# x5: Has the first result real -# x6: Has the first result imag -# x7: Has the second result real -# x8: Has the second result imag - # Compute first operand memory locations - add x5, x5, x1 # x5 <= load address for op1 real - add x6, x6, x1 # x6 <= load address for op1 imag - - #actually read memory - DATA_LOAD REG2, 0(x5) # op1 real - DATA_LOAD REG3, 0(x6) # op1 imag - - # Do the add/subs (res1=op1+scale), (res2=op1-scale) - FFT_SUB REG4, REG2, REG0 # res2 real - FFT_SUB REG5, REG3, REG1 # res2 imag - FFT_ADD REG2, REG2, REG0 # res1 real - FFT_ADD REG3, REG3, REG1 # res1 imag - - stop - - .globl vf_fft_store1 -vf_fft_store1: -# IN: -# x1: Has the first operand offset (reused) -# x2: Has the second operand offset (reused) -# x3: Has the workspace real ptr -# x4: Has the workspace imag ptr -# x5: Has the first result real (reused) -# x6: Has the first result imag (reused) -# x7: Has the second result real (reused) -# x8: Has the second result imag (reused) -# OUT: -# x2: Has the second operand offset (carry) -# x7: Has the second result real (carry) -# x8: Has the second result imag (carry) - # Compute first result memory locations - add x3, x3, x1 - add x4, x4, x1 - - # actually write memory - DATA_STORE REG2, 0(x3) - DATA_STORE REG3, 0(x4) - - stop - - .globl vf_fft_store2 -vf_fft_store2: -# IN: -# x2: Has the second operand offset -# x3: Has the workspace real ptr -# x4: Has the workspace imag ptr -# x7: Has the second result real -# x8: Has the second result imag -# OUT: (none) - # Compute second result memory locations - add x3, x3, x2 - add x4, x4, x2 - - # actually write memory - DATA_STORE REG4, 0(x3) - DATA_STORE REG5, 0(x4) - - stop diff --git a/benchmarks/vec-matmul/bmark.mk b/benchmarks/vec-matmul/bmark.mk deleted file mode 100644 index a503f7b..0000000 --- a/benchmarks/vec-matmul/bmark.mk +++ /dev/null @@ -1,30 +0,0 @@ -#======================================================================= -# UCB CS250 Makefile fragment for benchmarks -#----------------------------------------------------------------------- -# -# Each benchmark directory should have its own fragment which -# essentially lists what the source files are and how to link them -# into an riscv and/or host executable. All variables should include -# the benchmark name as a prefix so that they are unique. -# - -vec_matmul_c_src = \ - vec_matmul_main.c \ - -vec_matmul_riscv_src = \ - crt.S \ - vec_matmul_asm.S - -vec_matmul_c_objs = $(patsubst %.c, %.o, $(vec_matmul_c_src)) -vec_matmul_riscv_objs = $(patsubst %.S, %.o, $(vec_matmul_riscv_src)) - -vec_matmul_host_bin = vec-matmul.host -$(vec_matmul_host_bin) : $(vec_matmul_c_src) - $(HOST_COMP) $^ -o $(vec_matmul_host_bin) - -vec_matmul_riscv_bin = vec-matmul.riscv -$(vec_matmul_riscv_bin) : $(vec_matmul_c_objs) $(vec_matmul_riscv_objs) - $(RISCV_LINK) $(RISCV_LINK_SYSCALL) $(vec_matmul_c_objs) $(vec_matmul_riscv_objs) -o $(vec_matmul_riscv_bin) - -junk += $(vec_matmul_c_objs) $(vec_matmul_riscv_objs) \ - $(vec_matmul_host_bin) $(vec_matmul_riscv_bin) diff --git a/benchmarks/vec-matmul/dataset.h b/benchmarks/vec-matmul/dataset.h deleted file mode 100644 index 99fb974..0000000 --- a/benchmarks/vec-matmul/dataset.h +++ /dev/null @@ -1,635 +0,0 @@ -// See LICENSE for license details. - - -#define ARRAY_SIZE 4096 - - -#define DIM_SIZE 64 - -float input1_data[ARRAY_SIZE] = -{ - 0.37, 7.51, 5.09, 1.69, 6.75, 3.16, 1.19, 8.56, 5.26, 7.26, 5.60, 0.06, 8.39, 8.02, 3.54, 6.25, 8.66, 1.00, 1.05, 2.67, - 3.84, 2.83, 5.94, 6.97, 2.88, 6.12, 7.88, 3.40, 4.27, 8.45, 4.86, 5.13, 1.83, 2.53, 6.84, 5.46, 4.61, 5.93, 1.76, 0.74, - 2.41, 2.06, 3.04, 8.51, 8.13, 2.18, 8.23, 7.45, 8.41, 8.88, 1.77, 8.65, 5.11, 3.16, 5.85, 5.92, 1.63, 1.01, 7.74, 0.59, - 2.60, 3.15, 1.28, 8.16, 7.98, 2.38, 5.20, 8.83, 6.86, 2.17, 4.31, 4.50, 3.63, 2.00, 4.00, 6.50, 6.09, 2.86, 2.02, 8.45, - 2.60, 1.08, 5.54, 5.46, 3.51, 3.16, 4.10, 2.51, 3.31, 3.23, 5.26, 0.57, 8.88, 3.63, 3.12, 4.66, 5.04, 8.18, 6.99, 2.30, - 7.02, 5.39, 1.29, 0.31, 1.13, 8.48, 8.41, 7.20, 4.98, 3.89, 5.85, 8.58, 2.59, 0.18, 0.45, 0.78, 0.86, 3.98, 5.29, 5.54, - 3.44, 2.53, 7.28, 8.75, 7.38, 3.11, 4.06, 4.62, 8.70, 3.13, 7.29, 7.95, 4.84, 8.53, 6.32, 3.21, 5.12, 8.03, 0.20, 5.12, - 6.00, 3.81, 3.91, 1.43, 0.02, 0.76, 2.23, 0.45, 3.92, 7.14, 7.83, 4.38, 3.73, 3.33, 4.94, 4.67, 8.00, 6.15, 2.57, 2.38, - 4.50, 2.62, 8.08, 1.94, 6.59, 6.20, 2.26, 7.08, 5.01, 2.72, 4.76, 4.91, 2.90, 8.54, 2.59, 7.42, 2.75, 7.11, 6.61, 8.65, - 3.30, 6.51, 2.65, 8.79, 5.89, 6.75, 0.82, 3.41, 0.95, 0.93, 3.44, 5.87, 7.44, 7.57, 3.22, 1.34, 0.49, 1.26, 8.61, 3.09, - 4.81, 6.82, 4.70, 7.55, 5.34, 0.12, 1.56, 0.57, 1.09, 1.20, 6.83, 3.35, 8.57, 0.36, 1.17, 1.00, 7.64, 3.94, 2.30, 2.43, - 3.69, 5.66, 3.60, 4.95, 6.79, 5.08, 1.54, 0.17, 6.55, 4.52, 7.01, 0.39, 6.79, 0.73, 1.82, 7.69, 1.39, 6.85, 3.22, 8.50, - 8.31, 2.96, 4.47, 3.99, 4.66, 5.78, 2.49, 7.08, 1.03, 7.59, 8.17, 2.48, 2.14, 0.30, 7.07, 5.09, 3.22, 7.24, 7.38, 6.77, - 2.52, 0.77, 4.13, 4.10, 6.40, 4.14, 0.38, 2.28, 3.40, 4.58, 6.31, 7.75, 4.33, 6.68, 4.50, 6.39, 0.45, 3.35, 7.87, 8.52, - 8.94, 4.75, 6.50, 3.92, 2.10, 4.48, 6.29, 0.28, 3.14, 2.26, 3.16, 2.26, 5.17, 7.06, 6.75, 4.53, 7.42, 7.45, 1.53, 1.45, - 6.08, 0.29, 1.82, 1.29, 7.69, 0.81, 3.56, 0.97, 7.70, 0.96, 1.42, 0.05, 6.90, 1.84, 1.76, 5.18, 1.97, 4.74, 1.60, 2.16, - 6.30, 6.82, 6.37, 0.45, 0.76, 7.21, 8.05, 4.62, 3.36, 4.44, 0.13, 5.60, 0.75, 0.93, 7.16, 8.30, 5.79, 7.93, 7.52, 2.16, - 4.16, 1.03, 5.06, 4.77, 0.09, 8.98, 8.15, 3.49, 3.67, 0.95, 5.04, 8.44, 4.62, 3.69, 2.73, 1.82, 3.85, 5.53, 3.24, 4.70, - 6.17, 0.20, 1.67, 2.82, 0.97, 2.48, 3.49, 2.19, 4.38, 0.95, 6.30, 8.10, 6.94, 5.81, 0.73, 1.46, 3.67, 8.52, 0.27, 6.92, - 7.84, 1.03, 1.34, 0.56, 1.33, 7.55, 7.61, 3.90, 1.27, 1.90, 7.36, 7.40, 5.07, 3.28, 5.55, 4.47, 7.32, 8.26, 1.44, 3.88, - 7.24, 1.62, 4.91, 7.57, 4.13, 7.09, 7.86, 7.17, 7.26, 6.83, 0.94, 3.62, 2.29, 8.87, 1.23, 6.57, 5.27, 7.16, 3.74, 4.76, - 6.37, 4.99, 3.41, 6.91, 8.80, 2.13, 8.54, 2.07, 1.49, 4.56, 0.95, 6.35, 7.17, 1.26, 2.74, 7.17, 5.72, 5.05, 1.07, 0.08, - 4.79, 7.33, 0.34, 5.27, 6.67, 5.58, 6.91, 4.31, 0.52, 8.64, 7.07, 8.88, 7.54, 2.77, 0.61, 7.43, 8.98, 6.75, 1.55, 7.44, - 5.60, 1.40, 7.44, 0.39, 6.25, 0.73, 2.13, 6.74, 6.71, 2.40, 1.12, 6.59, 8.49, 3.83, 3.34, 2.89, 2.43, 4.89, 6.88, 6.78, - 8.25, 0.13, 0.01, 8.16, 8.97, 7.30, 5.05, 7.87, 8.76, 2.61, 4.59, 5.03, 8.74, 3.65, 5.22, 2.64, 2.26, 7.66, 1.16, 4.08, - 6.45, 0.78, 6.12, 1.64, 2.17, 3.03, 7.15, 5.78, 0.01, 2.88, 8.89, 5.83, 6.80, 8.64, 1.83, 1.28, 1.62, 2.70, 1.49, 6.86, - 8.78, 5.83, 5.04, 5.58, 3.81, 2.35, 5.10, 4.88, 4.44, 8.93, 6.72, 1.87, 3.36, 8.40, 5.99, 0.31, 4.81, 4.31, 8.19, 1.83, - 0.30, 1.93, 3.30, 8.04, 7.04, 6.13, 6.35, 6.20, 8.53, 3.48, 0.45, 0.91, 4.28, 3.60, 6.12, 2.97, 8.59, 4.25, 4.30, 6.54, - 6.43, 8.45, 4.77, 7.84, 0.70, 4.91, 8.18, 7.69, 1.29, 8.82, 2.16, 0.95, 3.29, 0.89, 0.49, 0.88, 3.96, 6.89, 2.84, 3.03, - 6.28, 6.98, 6.54, 2.92, 2.55, 4.83, 5.61, 5.36, 8.02, 0.68, 2.62, 4.47, 6.54, 4.05, 4.94, 1.22, 5.81, 7.55, 2.61, 6.91, - 1.47, 3.75, 4.43, 8.88, 1.05, 5.57, 7.74, 2.12, 2.55, 5.15, 8.23, 5.05, 1.76, 2.18, 7.05, 8.88, 6.56, 3.10, 3.88, 5.52, - 6.85, 1.59, 2.79, 3.01, 3.19, 2.79, 6.30, 0.42, 4.39, 4.54, 0.91, 3.54, 2.42, 2.83, 0.68, 3.12, 8.90, 5.41, 8.19, 3.47, - 0.83, 4.91, 2.50, 6.02, 3.17, 7.69, 7.78, 2.82, 0.91, 4.80, 5.12, 7.53, 3.34, 8.92, 4.16, 8.22, 1.64, 2.42, 1.44, 6.95, - 0.20, 7.70, 5.81, 0.16, 7.02, 8.21, 7.71, 1.24, 8.86, 6.46, 5.09, 6.48, 2.28, 7.08, 1.39, 1.77, 2.29, 4.03, 8.10, 0.05, - 2.94, 5.55, 2.78, 1.58, 1.44, 1.11, 7.56, 6.45, 4.96, 2.07, 0.74, 5.65, 2.92, 8.35, 0.93, 0.16, 8.71, 1.43, 1.60, 5.35, - 3.36, 3.55, 5.40, 6.72, 3.40, 7.80, 5.33, 4.98, 3.97, 3.12, 5.35, 2.62, 8.18, 4.91, 3.40, 4.11, 7.04, 0.99, 4.47, 8.07, - 7.27, 6.31, 4.94, 3.07, 0.27, 7.48, 5.68, 4.92, 5.53, 8.76, 1.05, 2.83, 8.15, 8.75, 5.47, 7.16, 1.53, 8.08, 4.57, 8.26, - 3.89, 3.06, 1.33, 2.03, 1.01, 5.23, 7.52, 1.21, 8.55, 1.82, 4.40, 3.57, 7.19, 4.31, 6.93, 5.17, 4.37, 3.06, 6.50, 4.06, - 7.40, 6.71, 0.00, 5.36, 2.50, 1.08, 6.13, 6.82, 5.00, 7.64, 4.66, 3.42, 4.56, 8.15, 2.22, 2.19, 3.55, 3.88, 1.93, 2.20, - 4.73, 3.60, 1.56, 2.75, 5.59, 5.36, 4.82, 6.30, 1.44, 6.76, 7.30, 4.10, 0.68, 0.84, 1.51, 0.15, 7.69, 4.46, 2.92, 0.71, - 0.47, 1.01, 0.10, 3.09, 6.58, 6.13, 2.59, 8.66, 0.83, 5.64, 8.22, 5.55, 7.75, 6.70, 6.71, 4.31, 5.54, 4.58, 8.24, 7.30, - 2.60, 8.78, 1.16, 5.23, 4.95, 7.82, 8.84, 2.43, 5.61, 5.88, 5.64, 8.92, 3.48, 2.92, 4.26, 1.48, 2.16, 1.71, 7.79, 2.09, - 3.21, 1.38, 7.44, 2.96, 3.52, 7.64, 0.35, 3.63, 5.56, 4.92, 1.86, 0.02, 7.06, 8.02, 7.34, 7.50, 6.00, 3.70, 0.85, 2.22, - 3.80, 1.91, 6.08, 0.09, 3.37, 3.85, 0.58, 0.48, 6.83, 7.31, 4.51, 3.95, 3.03, 2.96, 2.14, 3.75, 4.22, 6.17, 5.09, 2.75, - 4.05, 5.39, 1.23, 7.95, 3.45, 8.45, 2.42, 1.04, 8.18, 0.45, 8.58, 3.30, 3.58, 2.32, 2.09, 6.01, 0.32, 8.93, 3.99, 1.93, - 3.50, 0.12, 5.60, 0.48, 5.52, 8.42, 8.59, 7.47, 4.16, 5.60, 7.32, 4.71, 6.06, 0.52, 2.82, 3.18, 0.50, 8.76, 6.79, 3.75, - 7.92, 7.79, 5.16, 1.47, 6.50, 0.11, 5.80, 4.57, 8.72, 7.04, 7.57, 2.18, 5.68, 7.30, 7.16, 3.93, 7.98, 5.40, 6.28, 5.80, - 0.84, 6.40, 7.07, 1.01, 5.24, 0.12, 8.32, 5.55, 5.88, 3.24, 2.36, 2.10, 5.49, 6.18, 4.86, 1.06, 5.05, 6.66, 0.18, 2.86, - 8.80, 5.17, 3.48, 6.96, 5.98, 4.55, 1.91, 8.01, 8.17, 3.79, 6.64, 4.65, 0.23, 1.98, 7.19, 6.46, 4.07, 6.23, 6.16, 4.14, - 7.35, 2.92, 5.52, 2.23, 1.05, 3.18, 2.54, 6.66, 2.61, 8.20, 5.81, 5.64, 8.40, 1.98, 6.17, 3.36, 7.89, 5.83, 3.71, 8.61, - 5.98, 7.66, 7.06, 3.54, 6.38, 3.80, 4.72, 6.15, 0.34, 1.41, 0.39, 6.92, 1.12, 4.95, 7.34, 2.26, 1.93, 1.91, 5.16, 8.10, - 8.62, 5.49, 5.87, 3.92, 8.17, 8.75, 5.77, 6.19, 5.78, 2.39, 2.45, 8.76, 7.34, 7.43, 1.09, 4.20, 4.22, 5.69, 2.54, 3.76, - 2.84, 2.12, 5.65, 2.67, 4.53, 0.25, 6.02, 2.94, 5.21, 7.94, 2.74, 3.74, 0.00, 1.80, 8.42, 1.92, 4.83, 0.37, 4.76, 7.53, - 3.14, 3.05, 2.08, 7.86, 3.38, 1.29, 8.97, 3.47, 7.64, 4.39, 5.30, 0.07, 4.39, 6.57, 8.51, 6.21, 7.85, 1.41, 5.62, 2.43, - 0.43, 2.26, 4.43, 7.95, 1.92, 2.09, 2.94, 1.19, 5.81, 3.80, 2.95, 0.52, 6.10, 4.68, 6.99, 2.12, 5.83, 0.86, 2.35, 6.43, - 1.79, 4.44, 8.50, 0.78, 2.01, 7.60, 3.04, 6.78, 0.48, 0.78, 8.01, 2.42, 1.69, 6.59, 4.86, 6.84, 8.67, 5.47, 0.09, 5.05, - 1.10, 8.62, 2.60, 5.45, 1.16, 0.98, 1.58, 5.32, 3.72, 3.12, 2.25, 5.72, 4.64, 7.20, 7.95, 8.47, 1.42, 7.99, 1.55, 8.78, - 8.31, 2.92, 7.06, 7.50, 0.90, 6.96, 6.77, 6.27, 5.86, 8.89, 1.73, 7.19, 0.36, 5.90, 6.86, 8.04, 7.22, 2.50, 4.07, 8.71, - 3.25, 0.58, 8.37, 8.24, 4.83, 2.20, 2.39, 7.93, 5.77, 1.88, 2.73, 2.66, 7.33, 5.17, 3.12, 8.69, 4.35, 5.46, 0.92, 1.10, - 3.92, 4.09, 0.19, 0.63, 0.21, 2.30, 2.49, 8.02, 3.86, 4.89, 5.61, 6.30, 6.97, 2.67, 2.50, 0.94, 0.72, 5.69, 7.35, 7.67, - 6.60, 3.54, 6.85, 1.14, 1.52, 7.60, 1.71, 5.31, 8.44, 2.31, 2.10, 0.68, 1.72, 3.82, 6.77, 6.82, 7.90, 0.43, 7.72, 6.94, - 5.75, 4.40, 1.59, 4.27, 4.16, 5.46, 8.32, 0.00, 5.70, 2.53, 8.36, 2.71, 4.07, 6.34, 6.41, 5.59, 4.00, 7.11, 5.51, 2.09, - 4.78, 7.13, 6.60, 2.60, 6.55, 7.27, 1.55, 8.09, 4.11, 8.49, 5.47, 7.22, 4.53, 6.68, 7.27, 5.71, 8.56, 8.54, 0.37, 3.18, - 1.76, 7.16, 6.31, 2.59, 2.41, 6.98, 5.86, 1.80, 2.38, 2.85, 8.53, 8.47, 5.44, 7.51, 5.76, 4.71, 2.31, 3.77, 2.40, 8.27, - 7.09, 7.05, 4.77, 4.45, 2.72, 1.76, 3.53, 6.58, 8.22, 7.19, 4.26, 7.45, 3.31, 1.04, 2.10, 7.66, 7.70, 4.97, 7.72, 2.83, - 7.41, 3.81, 1.58, 4.24, 7.49, 2.81, 1.86, 1.30, 0.96, 5.75, 1.21, 5.61, 3.96, 8.23, 5.43, 8.98, 5.00, 4.34, 2.04, 2.93, - 7.67, 4.83, 1.21, 1.84, 6.27, 7.13, 1.52, 5.61, 0.78, 4.36, 0.83, 4.25, 4.85, 2.73, 7.01, 6.33, 4.78, 4.14, 8.23, 8.68, - 6.17, 2.95, 1.48, 3.94, 1.34, 0.02, 0.96, 6.69, 2.74, 6.26, 4.54, 0.36, 0.35, 0.64, 5.75, 7.60, 2.34, 4.79, 4.43, 6.25, - 2.51, 8.74, 4.93, 4.54, 8.61, 6.28, 7.59, 2.93, 2.01, 0.76, 6.60, 2.88, 6.34, 8.83, 4.02, 8.04, 6.21, 0.91, 1.77, 3.10, - 5.74, 3.31, 0.43, 7.75, 6.27, 6.53, 1.72, 3.53, 4.60, 8.79, 5.13, 6.52, 6.24, 0.44, 0.44, 0.79, 8.11, 4.38, 3.83, 6.84, - 3.97, 0.52, 5.74, 3.65, 5.69, 1.33, 4.02, 3.34, 8.97, 8.70, 6.58, 6.62, 4.21, 6.22, 2.64, 6.19, 3.91, 3.27, 6.54, 6.65, - 3.34, 6.68, 4.01, 2.79, 2.52, 3.04, 4.53, 4.66, 7.95, 4.86, 1.32, 3.03, 7.11, 0.71, 3.31, 7.72, 3.82, 0.75, 8.30, 0.79, - 4.81, 5.67, 3.09, 5.16, 5.07, 8.93, 4.66, 1.25, 8.37, 6.94, 2.63, 2.03, 5.08, 6.35, 3.44, 5.37, 6.09, 2.09, 5.44, 6.51, - 6.72, 7.39, 0.53, 6.51, 2.31, 6.10, 3.97, 5.27, 4.28, 6.01, 0.84, 3.01, 8.33, 1.87, 6.93, 7.91, 7.42, 4.07, 2.90, 5.40, - 7.81, 2.58, 6.22, 0.91, 1.94, 4.86, 5.95, 1.32, 4.10, 3.07, 6.98, 4.87, 5.22, 6.54, 6.73, 5.38, 6.92, 4.24, 3.74, 7.73, - 7.61, 5.09, 0.53, 8.72, 7.34, 8.81, 3.82, 8.41, 7.31, 0.79, 3.26, 4.74, 1.10, 6.10, 3.31, 2.13, 6.17, 4.51, 5.56, 0.43, - 5.57, 1.67, 3.37, 2.13, 7.75, 6.25, 6.17, 5.25, 0.04, 5.95, 3.64, 5.72, 6.50, 5.69, 4.22, 1.38, 0.00, 6.21, 1.98, 3.88, - 4.72, 8.70, 3.01, 8.97, 1.71, 2.46, 4.89, 0.68, 5.97, 4.16, 8.50, 2.54, 3.13, 1.23, 1.28, 2.44, 7.82, 0.41, 7.61, 3.72, - 4.07, 7.20, 7.54, 1.34, 1.20, 5.22, 3.96, 3.09, 7.16, 1.21, 5.86, 7.72, 3.88, 6.19, 1.79, 4.62, 7.91, 3.12, 5.46, 7.61, - 4.60, 1.81, 2.05, 3.05, 8.98, 5.49, 8.15, 2.94, 2.96, 0.75, 4.96, 3.33, 6.48, 7.07, 4.26, 6.62, 8.26, 7.99, 6.56, 4.74, - 5.94, 8.64, 1.02, 1.39, 6.70, 0.90, 6.02, 0.47, 2.16, 6.65, 6.77, 0.15, 7.63, 8.45, 6.71, 0.70, 3.14, 4.56, 4.69, 5.16, - 2.91, 4.03, 5.26, 8.58, 0.88, 1.11, 5.94, 8.32, 8.46, 8.66, 1.31, 6.44, 0.60, 6.71, 4.30, 5.42, 8.56, 2.51, 8.45, 3.32, - 6.74, 6.68, 7.77, 0.07, 3.57, 1.08, 4.59, 7.61, 0.88, 8.17, 0.75, 1.72, 3.95, 6.36, 4.92, 7.28, 3.24, 3.84, 7.68, 6.90, - 4.96, 4.93, 2.05, 6.12, 5.62, 2.78, 8.29, 8.76, 5.32, 6.75, 5.97, 4.92, 6.73, 2.08, 5.91, 1.33, 0.64, 4.09, 5.05, 7.53, - 5.48, 0.12, 3.33, 1.25, 1.57, 1.89, 4.12, 8.17, 7.51, 1.58, 3.37, 3.76, 2.82, 3.51, 1.40, 8.48, 4.06, 2.55, 8.99, 8.27, - 2.55, 8.65, 1.75, 7.20, 1.12, 0.37, 0.56, 7.92, 2.87, 1.80, 4.62, 6.40, 8.19, 3.06, 4.89, 1.61, 5.32, 1.65, 5.58, 8.75, - 6.33, 6.45, 3.84, 8.75, 8.61, 1.30, 8.30, 0.15, 7.18, 8.33, 8.70, 5.64, 0.06, 0.06, 0.52, 4.73, 2.23, 5.36, 7.82, 1.97, - 6.39, 6.31, 3.10, 4.11, 8.46, 1.42, 0.90, 1.27, 1.96, 0.76, 6.44, 1.35, 5.10, 4.70, 3.17, 4.93, 5.44, 4.85, 6.80, 8.05, - 8.23, 1.74, 3.26, 6.33, 5.66, 5.40, 6.19, 5.45, 1.38, 7.12, 5.44, 4.19, 7.04, 1.55, 4.01, 4.52, 0.41, 1.67, 0.64, 4.04, - 1.81, 1.72, 1.57, 8.48, 2.30, 6.25, 1.36, 5.52, 2.05, 7.07, 7.03, 7.06, 1.62, 0.48, 7.42, 2.96, 6.12, 2.71, 3.65, 8.60, - 8.79, 1.11, 6.12, 1.42, 1.14, 6.64, 8.20, 0.79, 6.54, 4.80, 4.27, 7.99, 6.45, 4.13, 6.93, 3.45, 7.96, 6.46, 2.17, 5.20, - 3.35, 2.16, 8.51, 0.95, 4.20, 0.49, 1.56, 5.85, 3.49, 8.86, 5.87, 3.00, 5.77, 0.61, 6.97, 2.54, 6.56, 6.41, 0.74, 7.82, - 5.72, 8.04, 0.11, 5.63, 5.49, 5.55, 4.33, 4.16, 1.47, 4.20, 4.24, 5.58, 1.05, 2.81, 1.68, 6.50, 6.93, 1.30, 6.58, 3.81, - 8.53, 5.12, 4.26, 3.43, 7.09, 6.40, 4.23, 6.57, 5.09, 1.28, 3.09, 7.12, 7.43, 8.85, 0.19, 4.35, 2.81, 4.62, 5.40, 7.24, - 8.66, 4.13, 3.43, 6.95, 2.63, 5.68, 7.62, 3.92, 0.64, 6.61, 8.10, 8.23, 0.55, 8.87, 2.20, 8.43, 8.65, 5.67, 1.31, 0.07, - 3.95, 5.32, 1.48, 1.77, 2.18, 2.15, 6.08, 4.10, 8.87, 6.47, 0.75, 5.36, 1.01, 3.26, 6.48, 2.29, 8.51, 4.07, 3.12, 6.50, - 4.23, 0.18, 8.89, 0.37, 6.33, 3.63, 5.91, 5.20, 0.43, 0.17, 0.97, 1.74, 0.63, 1.55, 3.57, 1.72, 4.30, 6.81, 3.92, 4.34, - 8.37, 3.35, 1.46, 6.83, 4.26, 6.71, 1.84, 0.48, 0.51, 2.88, 0.92, 6.50, 4.94, 4.92, 2.53, 6.90, 1.44, 6.36, 8.51, 3.87, - 8.61, 0.68, 8.88, 1.30, 3.97, 7.55, 7.33, 2.36, 6.86, 4.36, 6.70, 4.18, 2.10, 2.52, 1.80, 3.43, 2.14, 0.80, 4.78, 6.86, - 4.56, 8.82, 6.26, 4.33, 8.98, 0.24, 3.34, 6.76, 2.71, 1.92, 3.38, 1.91, 4.99, 5.61, 3.28, 8.60, 3.45, 8.26, 8.19, 1.23, - 1.92, 5.99, 8.87, 4.88, 6.12, 2.39, 7.14, 3.52, 4.44, 0.30, 5.79, 5.90, 2.60, 4.83, 2.61, 3.94, 4.38, 3.65, 6.57, 2.19, - 0.99, 5.84, 8.72, 4.90, 7.66, 8.99, 6.03, 6.02, 3.77, 8.07, 8.44, 8.07, 3.00, 4.78, 6.10, 5.49, 8.09, 6.89, 1.22, 4.39, - 0.26, 8.00, 2.15, 0.28, 8.79, 7.83, 2.73, 1.47, 7.08, 1.66, 4.82, 2.03, 4.18, 3.37, 4.39, 4.46, 3.90, 1.57, 2.82, 2.06, - 7.67, 4.14, 1.86, 3.15, 6.80, 2.17, 8.32, 0.79, 6.94, 6.13, 5.56, 2.79, 3.62, 3.51, 4.83, 7.05, 3.98, 2.61, 2.92, 3.14, - 1.28, 8.84, 6.70, 7.30, 1.45, 7.71, 6.01, 3.48, 1.36, 1.31, 0.67, 6.24, 1.02, 6.96, 5.65, 5.71, 2.17, 0.70, 1.07, 8.49, - 0.71, 4.29, 6.19, 7.86, 2.14, 6.27, 2.59, 2.22, 7.35, 4.08, 2.54, 0.45, 8.05, 3.20, 3.79, 8.00, 1.74, 3.53, 6.26, 7.57, - 0.44, 4.99, 6.66, 6.21, 3.07, 0.22, 4.53, 0.81, 8.36, 7.99, 8.00, 8.63, 3.70, 4.72, 8.58, 2.15, 7.18, 5.89, 0.34, 2.41, - 6.41, 4.71, 7.80, 1.52, 3.16, 7.77, 2.78, 0.17, 2.57, 0.74, 8.48, 0.82, 4.98, 5.15, 8.94, 1.09, 2.10, 1.83, 5.18, 3.34, - 7.44, 6.97, 2.70, 2.33, 2.88, 6.38, 4.91, 3.98, 7.04, 2.64, 5.75, 4.93, 6.13, 5.19, 1.73, 1.80, 8.19, 3.51, 5.94, 5.19, - 5.99, 0.49, 8.51, 4.70, 8.17, 0.27, 4.94, 1.16, 1.17, 1.27, 2.84, 7.26, 5.08, 0.37, 2.77, 0.65, 6.46, 2.44, 6.46, 6.04, - 3.56, 5.31, 0.14, 1.97, 8.44, 2.45, 6.53, 1.93, 3.89, 6.35, 2.74, 1.38, 0.86, 8.45, 5.76, 4.33, 7.68, 7.18, 4.88, 2.68, - 3.24, 7.19, 4.26, 0.20, 3.50, 3.44, 4.08, 6.82, 4.80, 8.19, 6.35, 6.25, 5.88, 4.18, 1.57, 6.15, 2.90, 6.79, 4.01, 0.93, - 7.74, 2.59, 8.84, 1.73, 1.34, 5.29, 7.57, 2.92, 5.12, 3.71, 1.50, 1.03, 7.44, 7.19, 7.79, 7.16, 3.68, 2.94, 7.33, 0.67, - 5.57, 1.14, 7.51, 4.79, 8.46, 0.38, 4.22, 6.21, 4.62, 7.38, 2.42, 0.58, 0.84, 3.50, 8.21, 8.07, 6.67, 0.50, 8.74, 6.50, - 7.65, 8.65, 5.05, 6.07, 7.68, 1.92, 3.81, 1.59, 0.85, 8.35, 1.88, 6.29, 8.07, 7.48, 7.85, 3.51, 7.40, 1.39, 0.97, 6.03, - 4.48, 2.95, 6.43, 3.08, 1.00, 3.17, 5.59, 3.26, 8.13, 7.34, 0.41, 1.85, 4.92, 1.89, 8.54, 5.79, 2.42, 5.40, 4.36, 7.67, - 0.23, 6.39, 5.78, 0.01, 6.89, 1.63, 5.76, 7.47, 0.96, 0.85, 8.31, 2.91, 2.59, 7.70, 7.44, 1.93, 3.07, 1.62, 0.17, 8.85, - 7.36, 2.14, 8.14, 8.78, 2.23, 8.83, 0.22, 4.15, 6.80, 2.60, 3.06, 6.81, 7.96, 7.72, 0.08, 0.52, 6.82, 6.20, 7.78, 1.81, - 1.34, 5.62, 3.44, 4.02, 7.92, 5.57, 3.06, 2.14, 2.54, 3.14, 6.50, 0.82, 0.79, 2.80, 6.22, 8.54, 1.96, 7.09, 5.31, 7.20, - 3.90, 8.27, 0.22, 8.43, 6.35, 5.93, 0.38, 8.36, 3.92, 5.08, 2.60, 2.83, 3.71, 2.03, 7.62, 0.15, 4.29, 5.64, 0.90, 6.58, - 3.43, 7.94, 5.66, 7.70, 2.47, 5.57, 5.26, 0.56, 5.16, 6.38, 4.01, 2.51, 6.34, 2.00, 3.26, 6.02, 3.38, 1.78, 4.60, 1.61, - 4.93, 2.85, 0.22, 3.33, 2.53, 5.47, 0.78, 4.76, 8.58, 0.82, 6.60, 4.66, 1.33, 5.94, 6.72, 3.81, 6.02, 5.02, 7.03, 7.40, - 6.55, 4.70, 4.72, 3.70, 3.08, 0.53, 2.34, 7.37, 3.36, 2.66, 6.10, 5.75, 3.91, 5.43, 1.46, 1.19, 1.04, 4.17, 0.42, 5.15, - 5.10, 0.87, 5.07, 8.22, 4.78, 8.95, 2.37, 2.88, 2.90, 7.36, 6.55, 0.99, 0.62, 0.76, 2.56, 7.41, 7.49, 6.39, 2.27, 4.17, - 6.95, 6.36, 8.93, 3.94, 6.12, 2.93, 5.60, 3.26, 5.10, 4.21, 7.69, 6.03, 8.37, 4.51, 7.06, 8.69, 4.88, 3.97, 7.90, 0.83, - 2.91, 0.91, 5.41, 2.09, 8.08, 8.62, 3.05, 6.34, 8.68, 3.64, 2.66, 6.70, 4.39, 5.01, 0.38, 2.39, 0.12, 8.81, 2.43, 4.36, - 1.18, 4.88, 0.77, 3.21, 1.98, 0.93, 7.88, 8.49, 1.10, 7.81, 3.33, 1.83, 2.99, 0.87, 0.33, 1.97, 5.49, 2.65, 3.16, 4.66, - 6.07, 1.03, 7.29, 8.93, 6.93, 0.33, 6.82, 8.06, 4.17, 2.29, 2.36, 4.73, 8.65, 3.17, 2.46, 4.63, 5.86, 0.49, 2.44, 0.69, - 2.43, 6.98, 3.87, 1.62, 3.15, 6.37, 1.06, 3.43, 1.18, 8.66, 1.54, 8.64, 1.17, 5.25, 8.77, 0.76, 8.60, 3.11, 7.70, 8.60, - 6.86, 7.94, 5.95, 2.52, 8.36, 0.57, 6.10, 8.60, 1.66, 4.63, 2.53, 4.91, 3.66, 7.74, 6.57, 0.07, 6.77, 4.66, 5.40, 0.98, - 5.42, 8.34, 1.95, 1.50, 0.70, 5.54, 2.44, 0.55, 4.16, 7.94, 4.92, 8.54, 0.00, 6.61, 2.58, 6.72, 8.35, 3.13, 2.62, 2.28, - 4.46, 5.11, 2.34, 6.47, 0.07, 7.50, 2.27, 6.97, 5.10, 4.70, 3.56, 8.31, 2.84, 7.95, 1.09, 1.55, 3.86, 5.54, 2.52, 8.94, - 0.31, 6.21, 4.31, 4.72, 4.74, 1.52, 7.44, 7.17, 3.98, 5.77, 0.94, 7.47, 1.75, 3.44, 0.19, 5.79, 4.18, 4.43, 7.75, 5.12, - 0.03, 0.87, 2.74, 7.03, 8.07, 1.17, 5.52, 5.54, 0.94, 3.31, 6.48, 0.81, 2.20, 1.30, 8.46, 8.97, 0.92, 5.72, 1.70, 0.96, - 3.14, 5.78, 5.58, 2.55, 2.55, 5.57, 4.63, 7.06, 1.93, 0.26, 1.21, 5.62, 2.06, 2.00, 8.95, 5.60, 6.64, 6.35, 5.93, 6.32, - 1.10, 0.69, 6.72, 0.61, 2.13, 8.11, 2.80, 1.04, 2.76, 4.66, 1.00, 2.99, 8.80, 0.65, 5.52, 8.76, 7.94, 0.88, 6.63, 0.12, - 0.97, 5.46, 3.86, 6.42, 3.56, 8.64, 2.12, 1.57, 6.18, 6.89, 7.61, 3.66, 8.46, 5.88, 4.44, 6.87, 6.53, 0.74, 6.86, 0.79, - 1.70, 2.10, 0.12, 4.82, 3.85, 6.08, 1.32, 7.72, 1.66, 6.35, 8.14, 7.64, 0.32, 1.54, 1.94, 7.15, 8.31, 1.55, 3.41, 0.04, - 8.81, 1.88, 0.23, 8.42, 0.41, 2.26, 7.78, 9.00, 2.17, 6.53, 1.85, 7.64, 1.53, 5.26, 0.99, 7.77, 1.05, 4.32, 7.46, 5.12, - 6.13, 4.99, 7.87, 8.50, 7.13, 4.70, 5.82, 8.19, 0.22, 4.51, 0.79, 7.37, 3.80, 5.08, 1.76, 3.90, 7.18, 0.42, 5.26, 6.26, - 5.66, 4.23, 4.45, 5.23, 1.77, 3.20, 6.86, 4.24, 5.40, 2.67, 3.00, 6.75, 5.60, 3.61, 7.27, 7.44, 1.88, 5.63, 3.49, 2.93, - 4.36, 5.27, 2.91, 0.16, 7.47, 1.06, 5.78, 8.46, 4.65, 2.58, 4.35, 2.11, 7.15, 4.53, 7.83, 4.37, 1.34, 1.45, 0.77, 6.32, - 5.62, 4.30, 1.40, 5.77, 6.61, 2.68, 0.86, 8.01, 4.64, 1.70, 6.19, 8.38, 6.18, 4.85, 5.14, 4.44, 6.40, 2.60, 2.93, 5.39, - 7.43, 5.05, 0.47, 0.70, 6.31, 6.78, 6.04, 7.22, 4.38, 4.90, 7.25, 4.62, 3.94, 8.30, 5.66, 8.15, 1.66, 4.61, 4.69, 5.64, - 8.75, 4.22, 6.35, 7.96, 8.04, 6.07, 2.90, 6.18, 1.76, 2.39, 4.66, 1.05, 2.17, 3.18, 2.01, 5.64, 5.56, 2.94, 2.46, 0.72, - 1.41, 2.96, 3.30, 1.36, 3.18, 2.92, 1.68, 6.47, 7.18, 6.15, 6.13, 1.14, 6.58, 3.13, 0.78, 4.56, 6.99, 4.25, 7.31, 7.95, - 2.04, 7.92, 6.21, 4.23, 0.12, 7.31, 3.84, 3.05, 5.55, 1.86, 2.67, 6.28, 6.73, 1.91, 2.56, 0.73, 4.98, 6.21, 7.87, 0.88, - 4.71, 2.11, 5.94, 7.28, 8.72, 5.79, 7.09, 3.84, 1.72, 7.29, 8.92, 6.94, 8.95, 6.70, 5.87, 7.77, 1.96, 7.18, 7.88, 0.84, - 2.87, 1.71, 0.47, 5.72, 7.99, 5.56, 6.81, 1.45, 1.38, 0.70, 0.99, 4.37, 1.35, 0.30, 8.44, 3.73, 2.25, 6.15, 1.35, 8.82, - 1.83, 3.90, 6.90, 2.11, 5.55, 5.60, 8.45, 8.42, 0.88, 1.50, 1.04, 7.23, 8.00, 0.78, 2.20, 4.43, 8.14, 7.14, 4.66, 0.64, - 4.58, 5.55, 6.34, 5.26, 2.42, 2.76, 5.14, 2.17, 1.39, 1.04, 2.05, 7.65, 3.38, 6.11, 4.29, 3.74, 0.68, 0.60, 4.02, 2.01, - 5.84, 2.73, 7.33, 2.50, 2.59, 1.39, 8.28, 6.85, 6.52, 1.43, 8.49, 8.87, 6.99, 6.78, 1.02, 3.95, 4.45, 7.15, 5.43, 5.78, - 1.32, 8.84, 3.24, 8.69, 2.58, 4.05, 5.61, 0.08, 3.64, 2.65, 2.90, 7.76, 4.22, 8.19, 7.29, 3.09, 6.91, 7.15, 6.01, 3.10, - 0.23, 8.16, 3.68, 4.57, 6.49, 6.81, 8.63, 6.91, 8.34, 1.52, 6.64, 6.80, 6.31, 0.28, 8.98, 5.83, 2.85, 3.94, 7.73, 7.34, - 1.05, 2.86, 0.93, 4.94, 7.56, 0.36, 3.60, 1.78, 5.54, 4.46, 0.62, 2.97, 5.79, 7.61, 8.07, 7.54, 7.02, 4.30, 7.10, 4.92, - 7.82, 6.20, 2.29, 4.47, 6.03, 2.59, 7.02, 0.03, 6.04, 5.37, 1.88, 4.91, 8.08, 2.93, 0.90, 6.73, 0.69, 3.51, 8.01, 0.33, - 1.39, 0.22, 3.60, 0.05, 2.02, 4.56, 7.66, 1.86, 3.31, 3.16, 0.80, 7.59, 7.13, 1.07, 1.63, 7.21, 8.17, 7.84, 7.70, 5.14, - 5.94, 7.81, 5.06, 7.79, 4.80, 2.81, 0.35, 1.36, 1.01, 7.44, 3.46, 8.15, 8.91, 7.80, 5.22, 1.20, 1.13, 4.37, 2.56, 4.93, - 3.94, 5.86, 4.91, 8.10, 4.96, 7.91, 6.39, 0.98, 1.28, 0.53, 4.16, 1.96, 2.04, 1.38, 3.55, 6.38, 0.87, 8.62, 8.51, 3.45, - 3.05, 1.63, 7.50, 7.42, 4.54, 8.32, 3.32, 4.23, 5.15, 0.40, 1.22, 3.84, 2.64, 8.93, 5.04, 4.18, 7.67, 4.21, 7.84, 0.96, - 0.90, 5.47, 6.75, 2.54, 6.55, 4.83, 6.82, 7.37, 3.46, 6.79, 2.57, 8.65, 6.33, 2.53, 2.89, 1.29, 5.46, 4.06, 7.42, 4.84, - 0.52, 8.63, 7.86, 1.95, 5.79, 0.85, 0.08, 3.38, 8.69, 1.03, 4.00, 6.45, 7.86, 2.90, 7.70, 8.74, 8.64, 6.85, 4.55, 5.00, - 5.39, 3.53, 3.17, 4.53, 0.39, 2.15, 5.55, 1.49, 6.56, 2.27, 8.96, 5.76, 8.99, 5.56, 3.20, 4.73, 8.24, 6.97, 2.33, 3.54, - 6.24, 6.27, 1.20, 3.00, 4.91, 7.79, 2.06, 0.07, 3.91, 8.54, 6.97, 8.50, 2.53, 3.48, 8.11, 1.65, 6.12, 8.86, 8.69, 0.01, - 0.67, 1.07, 7.89, 1.26, 5.76, 3.35, 8.42, 7.87, 7.34, 1.92, 3.86, 2.57, 5.27, 8.06, 8.85, 2.84, 0.55, 7.50, 1.86, 4.69, - 8.23, 5.20, 6.49, 8.82, 4.52, 8.61, 0.38, 4.01, 2.32, 0.49, 1.17, 6.24, 1.01, 4.77, 5.45, 8.77, 1.82, 1.20, 7.33, 5.58, - 1.21, 4.07, 8.12, 1.42, 3.66, 5.52, 0.46, 6.54, 3.15, 0.62, 7.58, 1.79, 1.67, 6.35, 4.48, 1.61, 2.60, 1.39, 3.36, 8.58, - 7.54, 5.67, 6.19, 5.14, 2.92, 5.27, 8.24, 3.84, 2.62, 1.98, 5.90, 1.23, 7.29, 1.37, 0.81, 0.35, 7.62, 5.63, 2.88, 2.89, - 6.29, 2.06, 8.77, 6.10, 0.76, 3.94, 4.39, 3.40, 2.85, 2.26, 3.32, 7.26, 2.12, 7.33, 5.16, 7.86, 1.86, 1.83, 7.49, 1.32, - 4.96, 4.14, 3.88, 2.15, 2.11, 5.37, 3.98, 6.39, 4.44, 4.54, 7.88, 7.04, 3.35, 5.44, 4.99, 1.70, 7.06, 5.93, 7.05, 7.10, - 7.53, 3.21, 0.20, 8.93, 5.51, 1.64, 7.87, 5.44, 4.59, 5.07, 5.66, 3.82, 5.05, 4.82, 4.83, 7.73, 7.35, 8.53, 6.41, 7.13, - 0.41, 6.92, 2.84, 1.97, 4.36, 1.67, 2.03, 4.12, 2.83, 0.01, 8.28, 2.69, 7.80, 2.80, 6.54, 0.89, 2.86, 4.98, 7.84, 5.90, - 6.70, 7.16, 0.22, 6.35, 8.97, 5.26, 1.30, 8.80, 7.11, 6.75, 4.22, 0.70, 6.98, 2.70, 3.86, 8.05, 1.12, 8.80, 1.28, 7.60, - 3.09, 0.62, 7.72, 0.21, 5.60, 7.24, 3.75, 2.39, 8.83, 0.32, 3.03, 1.49, 8.27, 8.31, 5.66, 3.28, 0.24, 0.44, 7.28, 7.16, - 2.46, 6.19, 7.73, 1.02, 2.27, 0.04, 0.95, 2.03, 6.51, 5.16, 0.45, 6.68, 1.86, 8.25, 1.90, 0.95, 1.80, 6.87, 8.59, 3.62, - 7.63, 2.79, 0.66, 1.22, 4.90, 0.55, 5.87, 6.52, 8.76, 6.94, 2.92, 1.46, 5.21, 5.27, 5.59, 0.26, 2.68, 6.50, 4.62, 0.14, - 6.13, 8.68, 5.47, 2.01, 1.67, 6.86, 6.58, 6.93, 4.65, 8.79, 6.92, 5.74, 3.37, 1.49, 6.44, 2.65, 7.88, 7.64, 7.62, 2.97, - 1.87, 3.11, 7.48, 2.28, 6.94, 6.00, 3.12, 5.66, 1.90, 3.48, 4.59, 8.50, 2.12, 5.53, 8.68, 8.40, 0.30, 8.77, 0.32, 5.63, - 4.42, 8.80, 6.68, 0.27, 0.61, 2.59, 6.88, 1.88, 3.74, 1.34, 6.42, 4.17, 2.79, 6.43, 1.55, 4.46, 4.31, 0.53, 8.94, 6.47, - 2.09, 3.98, 2.85, 2.80, 5.26, 6.95, 5.24, 2.12, 6.79, 2.55, 5.35, 1.92, 4.28, 1.58, 3.14, 4.74, 5.20, 2.61, 8.00, 5.89, - 5.87, 8.90, 8.53, 8.27, 4.20, 0.16, 4.50, 6.73, 8.60, 4.90, 5.83, 6.20, 2.29, 4.49, 3.92, 0.16, 2.36, 0.36, 2.84, 5.48, - 5.70, 2.38, 8.61, 7.31, 8.54, 2.06, 0.36, 1.55, 0.30, 0.06, 4.20, 2.03, 0.59, 6.77, 1.27, 0.20, 1.17, 6.25, 1.18, 6.49, - 3.45, 5.13, 4.83, 3.16, 7.13, 2.19, 7.36, 7.34, 6.78, 1.73, 6.58, 2.64, 4.63, 0.49, 2.10, 4.39, 3.97, 6.15, 7.98, 5.08, - 5.76, 0.19, 3.40, 1.78, 3.31, 5.59, 6.58, 8.09, 8.26, 7.44, 5.91, 5.95, 3.95, 4.47, 2.64, 0.16, 1.79, 5.46, 2.55, 7.09, - 3.36, 2.19, 6.20, 1.63, 2.94, 2.97, 7.49, 3.58, 6.52, 7.62, 4.15, 5.07, 4.64, 4.15, 0.46, 5.82, 0.05, 2.41, 1.85, 8.97, - 6.89, 6.65, 2.63, 2.47, 0.89, 1.01, 4.22, 7.52, 1.17, 1.51, 1.71, 0.83, 3.46, 6.85, 1.47, 8.72, 7.79, 4.77, 3.90, 3.06, - 2.23, 8.28, 8.83, 2.26, 7.03, 0.23, 6.78, 7.30, 8.11, 7.21, 4.90, 7.73, 3.00, 7.67, 4.43, 8.11, 6.32, 3.40, 2.61, 3.34, - 2.34, 7.38, 3.19, 8.56, 3.34, 3.94, 2.86, 4.94, 7.35, 2.95, 2.02, 4.98, 7.34, 3.40, 6.21, 1.20, 8.15, 2.49, 1.25, 6.35, - 4.11, 8.57, 8.34, 1.25, 5.91, 6.97, 7.18, 8.50, 2.32, 3.94, 6.12, 3.96, 2.23, 6.12, 1.94, 7.97, 7.76, 8.18, 7.51, 5.90, - 0.36, 3.20, 3.44, 6.99, 4.77, 5.38, 4.53, 5.47, 2.64, 1.58, 0.36, 8.85, 7.15, 4.71, 6.10, 7.87, 0.44, 5.89, 8.57, 4.94, - 0.04, 7.85, 4.64, 1.74, 8.59, 2.23, 2.33, 1.92, 1.79, 7.34, 4.36, 6.83, 0.86, 1.61, 7.21, 4.86, 8.75, 6.66, 7.99, 5.97, - 1.14, 7.80, 4.60, 0.50, 2.32, 0.69, 4.27, 0.06, 2.33, 7.04, 2.25, 4.72, 2.00, 1.83, 1.26, 4.04, 8.14, 7.38, 6.15, 7.00, - 5.97, 1.13, 8.59, 1.94, 0.17, 4.68, 0.70, 6.54, 5.69, 7.91, 0.04, 7.57, 4.08, 6.42, 1.12, 4.06, 1.43, 7.89, 7.06, 1.38, - 7.84, 3.87, 1.33, 4.71, 2.59, 5.86, 1.16, 2.46, 0.07, 1.35, 2.87, 8.53, 7.61, 6.29, 8.33, 5.92, 3.18, 6.58, 6.69, 3.32, - 5.43, 3.40, 0.87, 3.99, 4.80, 5.27, 4.62, 3.91, 6.93, 0.75, 5.21, 5.63, 8.60, 8.62, 1.05, 4.23, 8.90, 1.23, 2.70, 7.37, - 4.67, 3.23, 7.19, 7.63, 2.40, 0.96, 3.55, 5.79, 3.85, 4.64, 6.65, 6.29, 4.58, 4.75, 1.12, 8.92, 3.81, 3.58, 1.46, 7.78, - 5.22, 1.77, 2.47, 6.31, 8.82, 1.45, 6.80, 2.11, 0.73, 4.81, 8.81, 3.62, 2.33, 0.89, 8.79, 7.67, 2.27, 6.29, 2.23, 4.94, - 7.95, 8.18, 1.39, 4.09, 6.18, 3.77, 5.88, 8.37, 7.41, 8.00, 4.14, 2.84, 7.04, 6.70, 8.42, 1.29, 8.60, 7.80, 1.24, 5.03, - 0.89, 1.65, 4.56, 7.54, 0.70, 8.63, 5.33, 2.91, 0.48, 8.27, 0.82, 6.46, 4.07, 4.43, 1.83, 3.87, 5.68, 0.67, 8.93, 5.31, - 1.46, 6.00, 8.85, 3.92, 0.26, 2.06, 6.54, 8.74, 7.58, 7.04, 3.85, 2.14, 3.71, 5.75, 0.07, 0.23, 5.12, 1.19, 1.78, 5.42, - 1.97, 7.87, 2.90, 7.68, 8.88, 7.88, 4.16, 2.48, 6.02, 7.48, 5.26, 3.57, 8.49, 4.39, 0.42, 5.09, 3.78, 2.84, 5.50, 4.35, - 1.84, 5.37, 6.58, 4.87, 4.86, 6.06, 3.61, 6.99, 0.37, 2.91, 2.88, 2.18, 1.96, 1.35, 4.10, 5.97, 6.64, 3.73, 3.08, 4.95, - 8.10, 8.68, 5.74, 2.90, 2.96, 7.15, 4.45, 5.39, 6.85, 2.51, 2.68, 4.71, 0.99, 2.96, 1.80, 8.04, 6.37, 4.85, 5.93, 8.14, - 6.53, 8.20, 7.95, 4.57, 2.80, 7.94, 6.29, 6.84, 7.93, 1.68, 7.46, 0.23, 3.39, 5.19, 0.19, 5.40, 8.90, 4.53, 6.73, 0.91, - 0.46, 6.23, 4.04, 0.04, 2.61, 8.29, 3.58, 7.20, 5.91, 4.19, 2.94, 4.94, 2.25, 3.23, 7.87, 0.94 -}; - -float input2_data[ARRAY_SIZE] = -{ - 4.09, 3.02, 0.02, 8.91, 3.30, 5.16, 0.58, 1.38, 1.95, 1.26, 1.90, 5.16, 3.06, 5.34, 8.09, 2.06, 0.11, 7.96, 6.76, 5.82, - 4.51, 3.93, 6.32, 7.32, 8.84, 1.36, 6.27, 5.08, 2.45, 2.33, 5.83, 4.59, 0.80, 6.34, 6.04, 3.38, 4.97, 8.44, 5.34, 5.13, - 8.58, 7.22, 5.26, 5.79, 3.32, 4.41, 2.96, 2.82, 5.34, 3.50, 4.90, 5.85, 8.82, 8.99, 7.34, 0.71, 1.88, 8.99, 5.67, 7.63, - 6.35, 8.98, 2.28, 6.45, 3.87, 3.74, 4.85, 6.31, 0.04, 4.46, 0.90, 7.79, 6.25, 3.75, 2.67, 2.58, 5.59, 0.71, 3.17, 4.87, - 5.83, 1.53, 4.75, 2.61, 7.17, 7.22, 6.49, 6.84, 6.72, 0.83, 8.91, 2.44, 7.69, 7.10, 4.79, 2.01, 4.15, 2.18, 3.23, 2.99, - 6.17, 6.67, 4.02, 2.81, 6.70, 5.02, 4.32, 5.02, 8.34, 7.17, 3.22, 8.03, 6.00, 4.64, 5.03, 7.84, 7.69, 3.97, 0.55, 6.12, - 3.57, 0.09, 0.16, 1.54, 2.62, 3.43, 4.83, 1.67, 8.26, 4.86, 8.86, 8.00, 0.49, 5.52, 8.57, 4.32, 1.36, 0.07, 5.78, 3.02, - 6.58, 0.86, 6.56, 2.53, 3.56, 6.20, 8.21, 4.30, 7.34, 6.57, 2.39, 1.15, 2.13, 1.93, 1.63, 0.06, 4.54, 5.37, 1.56, 5.80, - 3.13, 5.40, 0.62, 7.66, 5.93, 5.58, 1.10, 1.19, 7.47, 6.01, 3.91, 4.40, 6.79, 1.13, 5.65, 0.13, 0.10, 3.64, 0.95, 6.34, - 7.37, 8.69, 3.66, 7.88, 7.72, 0.78, 0.54, 5.95, 6.02, 1.38, 1.09, 0.88, 3.72, 2.13, 0.11, 3.82, 8.70, 1.95, 5.60, 3.26, - 8.30, 6.44, 5.83, 2.70, 7.99, 6.15, 0.33, 4.45, 4.96, 4.84, 8.74, 5.79, 3.91, 3.74, 2.73, 3.95, 7.75, 1.83, 4.31, 8.90, - 6.08, 6.48, 8.92, 3.05, 4.06, 5.70, 1.40, 5.83, 4.08, 3.85, 4.59, 8.91, 3.84, 0.11, 4.35, 1.28, 3.06, 3.52, 0.46, 1.54, - 5.42, 0.95, 8.73, 1.09, 7.93, 0.74, 7.84, 5.41, 5.44, 7.85, 8.00, 5.50, 3.65, 2.11, 6.72, 4.74, 2.48, 3.98, 2.04, 6.78, - 8.50, 6.54, 6.39, 1.81, 0.49, 6.83, 0.48, 3.58, 0.37, 1.27, 3.75, 6.74, 1.98, 4.31, 6.94, 1.62, 4.35, 6.23, 6.53, 1.56, - 1.68, 8.24, 0.01, 8.68, 2.23, 4.19, 3.27, 4.70, 2.11, 1.09, 0.37, 7.02, 1.76, 1.45, 6.70, 3.96, 3.21, 3.63, 1.27, 5.70, - 2.61, 7.05, 2.88, 5.73, 1.07, 7.68, 0.64, 7.35, 3.50, 8.60, 0.32, 0.15, 6.29, 6.27, 6.10, 5.39, 7.96, 7.43, 6.73, 4.17, - 4.61, 4.81, 3.97, 3.86, 6.60, 6.55, 6.33, 4.93, 0.78, 7.20, 1.94, 0.20, 5.87, 0.54, 3.87, 5.93, 0.87, 8.77, 5.94, 8.70, - 4.72, 0.56, 5.63, 2.73, 6.44, 3.69, 0.50, 6.57, 2.75, 3.93, 8.12, 5.34, 6.23, 7.18, 4.48, 1.60, 8.48, 8.97, 4.33, 1.43, - 7.41, 5.51, 6.13, 0.13, 1.01, 7.18, 1.67, 0.00, 6.48, 0.87, 6.75, 6.66, 7.33, 3.92, 2.94, 0.34, 0.31, 5.46, 8.43, 0.24, - 0.80, 3.98, 3.06, 3.10, 4.99, 3.29, 8.60, 5.76, 3.57, 8.93, 2.25, 3.05, 7.50, 8.78, 3.55, 2.40, 4.24, 3.14, 3.03, 3.78, - 2.25, 1.95, 4.89, 8.14, 5.73, 6.58, 5.24, 7.39, 6.05, 8.82, 3.77, 6.04, 8.29, 5.12, 6.71, 5.97, 1.25, 3.48, 8.36, 1.56, - 4.12, 2.85, 1.66, 4.30, 1.77, 3.60, 3.75, 7.26, 8.98, 2.43, 6.63, 6.28, 7.44, 4.76, 0.46, 5.62, 4.84, 0.79, 2.65, 7.82, - 0.99, 3.59, 7.04, 5.83, 3.38, 8.50, 8.08, 5.31, 0.40, 2.60, 7.62, 6.69, 0.89, 4.71, 4.00, 3.89, 1.49, 8.39, 0.26, 4.16, - 2.92, 2.46, 3.39, 3.07, 8.09, 1.43, 1.52, 4.00, 1.75, 5.69, 8.43, 2.47, 7.04, 1.67, 5.58, 2.63, 8.41, 1.41, 7.45, 0.80, - 8.90, 5.67, 5.85, 0.29, 0.01, 6.71, 3.60, 8.25, 7.13, 5.00, 8.87, 4.78, 5.41, 3.62, 6.15, 4.87, 8.14, 1.09, 8.97, 4.70, - 5.61, 2.02, 8.07, 4.78, 7.39, 5.87, 2.04, 0.87, 2.37, 5.13, 2.15, 1.14, 5.50, 1.73, 2.15, 7.18, 7.97, 5.16, 0.97, 1.27, - 7.11, 7.68, 0.21, 6.35, 8.02, 4.33, 0.48, 3.36, 1.81, 4.92, 3.68, 1.08, 5.82, 4.19, 0.74, 2.64, 0.47, 7.93, 2.02, 6.71, - 6.63, 7.98, 1.51, 0.02, 4.79, 2.90, 1.52, 4.38, 0.92, 1.60, 0.39, 6.38, 5.90, 8.25, 5.64, 2.18, 7.41, 7.17, 5.78, 2.27, - 2.21, 1.36, 7.90, 3.00, 5.41, 8.46, 6.98, 3.58, 2.11, 6.81, 4.09, 3.82, 1.89, 8.67, 8.12, 8.32, 5.91, 4.77, 5.36, 0.82, - 4.19, 6.18, 0.63, 6.80, 0.29, 4.46, 0.23, 3.51, 4.40, 0.34, 3.69, 5.76, 0.25, 8.57, 4.86, 0.73, 2.73, 6.52, 6.62, 1.13, - 4.98, 2.24, 0.97, 3.26, 0.44, 7.83, 1.30, 7.58, 6.53, 3.02, 4.24, 2.37, 3.09, 7.29, 6.10, 3.06, 3.03, 3.70, 4.19, 0.51, - 5.32, 4.38, 3.66, 8.95, 6.72, 2.15, 4.73, 3.03, 2.31, 1.21, 4.92, 6.51, 3.31, 8.50, 0.96, 5.67, 3.57, 1.88, 3.87, 4.72, - 1.18, 3.21, 8.93, 6.07, 8.93, 6.49, 4.05, 0.77, 5.55, 1.90, 6.37, 6.64, 7.63, 4.08, 2.85, 8.78, 6.72, 7.18, 4.71, 5.57, - 1.04, 6.55, 2.04, 1.49, 1.80, 7.48, 6.69, 1.69, 6.35, 6.05, 7.07, 7.98, 8.67, 5.93, 2.65, 5.59, 1.30, 1.56, 7.17, 0.65, - 6.11, 0.72, 7.15, 6.17, 5.74, 8.72, 2.18, 8.09, 6.24, 3.36, 5.42, 6.50, 3.59, 4.98, 0.66, 1.58, 8.81, 2.93, 5.03, 1.67, - 4.56, 7.75, 5.87, 5.17, 2.89, 3.15, 3.61, 8.02, 7.61, 7.97, 8.41, 8.84, 4.04, 8.91, 0.46, 2.99, 8.11, 6.46, 6.74, 4.00, - 0.06, 3.55, 2.57, 6.34, 4.06, 5.88, 6.95, 4.37, 4.82, 5.04, 4.34, 4.57, 3.91, 3.10, 0.38, 7.07, 7.80, 3.80, 3.74, 7.85, - 4.86, 1.46, 0.95, 4.34, 5.36, 1.04, 3.15, 8.69, 2.59, 2.10, 1.39, 5.43, 4.86, 8.50, 7.86, 1.09, 5.88, 7.31, 6.74, 3.26, - 3.07, 8.20, 1.86, 5.16, 4.56, 8.77, 8.66, 3.20, 5.65, 7.66, 8.75, 8.21, 3.70, 6.94, 0.57, 7.88, 3.57, 4.35, 5.58, 5.82, - 5.02, 2.96, 0.61, 7.97, 4.62, 8.76, 0.06, 4.62, 7.95, 5.07, 6.89, 3.30, 4.56, 7.09, 7.49, 3.45, 5.75, 4.08, 0.66, 0.76, - 0.54, 8.40, 8.37, 8.33, 8.66, 0.62, 7.19, 8.88, 7.69, 7.97, 5.41, 3.51, 2.10, 7.15, 1.62, 6.97, 6.22, 6.99, 4.46, 1.26, - 2.11, 3.89, 7.03, 3.35, 0.20, 5.89, 6.68, 7.35, 3.86, 1.26, 5.44, 2.84, 3.11, 8.01, 2.86, 2.34, 7.76, 3.40, 4.61, 2.74, - 0.63, 0.32, 7.69, 5.20, 4.42, 2.94, 2.73, 3.88, 7.33, 6.39, 3.50, 8.67, 8.72, 3.99, 0.44, 7.49, 2.27, 2.90, 6.68, 1.62, - 1.59, 1.05, 4.72, 6.89, 8.58, 6.35, 4.79, 7.25, 0.21, 5.51, 7.63, 3.38, 7.70, 8.75, 0.22, 5.76, 2.87, 6.52, 5.97, 5.83, - 2.53, 1.43, 2.65, 7.98, 6.61, 7.81, 4.24, 2.67, 6.07, 4.26, 3.96, 0.05, 1.40, 4.57, 8.55, 5.41, 4.01, 2.00, 7.07, 3.15, - 8.50, 1.35, 3.30, 4.00, 5.45, 6.49, 3.07, 8.76, 8.21, 2.90, 3.92, 0.45, 0.71, 6.86, 8.56, 2.15, 0.24, 2.04, 1.81, 1.59, - 7.91, 4.06, 7.92, 0.90, 1.29, 0.29, 7.32, 6.95, 4.75, 4.40, 7.18, 1.75, 2.65, 8.71, 2.49, 3.11, 3.72, 1.78, 3.48, 1.05, - 2.91, 6.13, 4.85, 4.99, 8.65, 7.88, 0.44, 4.57, 8.09, 4.86, 4.46, 6.88, 7.25, 2.58, 3.89, 7.54, 1.73, 7.44, 7.01, 5.28, - 3.24, 3.18, 6.73, 0.10, 6.75, 0.05, 3.68, 5.80, 3.98, 3.32, 0.88, 1.53, 3.24, 4.75, 6.06, 0.63, 7.93, 2.69, 2.71, 2.95, - 8.32, 7.47, 7.36, 4.48, 2.20, 8.84, 8.26, 6.43, 5.89, 4.54, 3.66, 4.90, 0.98, 2.74, 4.18, 8.60, 0.78, 7.23, 4.02, 0.25, - 4.86, 5.90, 0.26, 4.24, 6.63, 8.48, 5.50, 4.07, 6.06, 2.14, 6.90, 6.43, 3.69, 7.83, 1.68, 4.29, 5.12, 0.40, 8.99, 1.26, - 4.11, 4.23, 5.10, 3.68, 6.81, 5.17, 7.91, 0.22, 4.56, 3.32, 3.59, 8.56, 0.99, 5.37, 7.72, 4.65, 4.26, 7.14, 6.63, 6.39, - 8.81, 4.78, 3.78, 4.94, 7.70, 1.66, 7.09, 2.06, 6.66, 2.39, 7.28, 4.42, 5.62, 4.36, 0.95, 4.91, 1.39, 4.26, 6.42, 6.02, - 2.12, 2.77, 3.02, 4.70, 2.03, 6.72, 1.30, 1.23, 4.92, 3.91, 7.54, 4.11, 3.91, 1.03, 8.75, 2.85, 6.01, 2.74, 7.33, 6.57, - 4.85, 6.81, 7.56, 3.65, 0.51, 4.25, 6.83, 4.45, 2.95, 8.94, 3.93, 5.87, 3.18, 1.79, 3.19, 5.84, 0.03, 7.59, 3.11, 8.22, - 7.04, 5.70, 1.28, 5.55, 0.86, 6.70, 8.50, 0.79, 1.10, 2.38, 5.23, 6.00, 0.62, 2.08, 0.65, 2.97, 4.94, 5.35, 2.89, 7.20, - 0.30, 5.82, 4.06, 1.45, 7.93, 1.99, 7.37, 3.84, 1.96, 1.85, 0.57, 7.74, 0.13, 6.90, 5.50, 3.38, 1.09, 8.68, 8.86, 6.80, - 5.15, 3.18, 7.80, 8.61, 4.44, 4.78, 3.25, 2.90, 0.63, 4.98, 0.50, 0.83, 5.07, 5.09, 4.90, 1.51, 1.11, 0.23, 7.47, 7.04, - 1.52, 3.58, 5.08, 3.03, 4.31, 2.32, 4.30, 3.51, 6.32, 2.96, 4.00, 4.70, 8.24, 1.06, 4.74, 4.58, 0.28, 3.75, 0.64, 0.83, - 2.56, 1.46, 3.26, 3.74, 7.24, 7.57, 5.29, 0.33, 2.22, 7.80, 8.59, 3.31, 7.24, 1.21, 4.77, 2.07, 4.17, 2.34, 0.34, 2.14, - 2.19, 7.81, 1.77, 5.69, 2.72, 5.53, 3.01, 2.23, 1.77, 5.35, 8.61, 2.76, 2.97, 1.39, 6.22, 7.26, 4.86, 1.11, 4.27, 3.50, - 1.13, 8.77, 1.83, 6.25, 0.74, 3.90, 0.64, 3.35, 1.86, 5.44, 6.19, 1.08, 7.17, 7.30, 6.38, 3.22, 0.89, 8.14, 0.84, 3.39, - 2.70, 0.01, 2.69, 1.18, 7.52, 2.25, 6.39, 1.11, 0.05, 4.17, 2.91, 1.88, 3.80, 1.65, 2.33, 4.81, 5.36, 0.28, 8.87, 1.93, - 0.45, 8.82, 1.96, 7.40, 6.61, 5.00, 3.26, 2.13, 0.89, 7.30, 8.87, 8.03, 1.63, 3.01, 2.58, 0.30, 1.82, 4.21, 6.46, 1.14, - 6.27, 3.68, 8.30, 1.87, 8.34, 7.25, 8.57, 4.98, 3.89, 0.30, 2.37, 6.74, 7.53, 3.36, 3.17, 8.20, 6.20, 7.96, 0.22, 5.00, - 8.88, 8.26, 1.56, 3.19, 1.88, 7.51, 5.88, 7.42, 1.14, 6.21, 2.77, 7.24, 3.81, 3.15, 3.83, 3.88, 1.30, 6.81, 8.93, 1.87, - 2.73, 7.44, 7.66, 6.16, 5.01, 6.87, 4.81, 1.75, 6.53, 3.97, 7.84, 0.78, 0.43, 7.38, 5.88, 8.11, 4.71, 2.89, 5.04, 8.68, - 3.33, 4.24, 2.56, 8.62, 5.56, 0.98, 2.67, 1.10, 1.18, 8.43, 8.44, 7.96, 8.11, 2.07, 5.90, 7.80, 2.27, 0.48, 8.74, 3.78, - 7.01, 3.99, 4.11, 0.62, 1.16, 5.62, 3.24, 4.65, 4.75, 4.23, 6.53, 0.94, 7.11, 0.99, 7.49, 0.21, 7.97, 7.12, 4.59, 7.46, - 5.23, 7.64, 3.92, 2.63, 4.72, 8.18, 7.26, 8.57, 1.48, 2.33, 8.31, 2.10, 2.96, 5.89, 0.32, 4.06, 7.70, 6.31, 4.64, 4.90, - 5.69, 3.12, 7.34, 7.98, 5.49, 8.58, 8.29, 1.39, 7.34, 7.89, 8.95, 6.91, 1.47, 4.33, 6.17, 0.94, 8.49, 0.26, 1.48, 2.98, - 1.16, 8.58, 2.18, 3.42, 3.03, 5.48, 1.19, 3.32, 0.79, 6.19, 2.10, 4.12, 2.23, 1.74, 0.66, 8.92, 8.52, 8.71, 8.83, 4.99, - 0.30, 5.09, 2.94, 3.88, 0.98, 3.87, 1.61, 7.64, 4.67, 1.45, 0.68, 2.68, 2.11, 8.54, 1.47, 1.47, 3.79, 0.64, 3.30, 7.98, - 5.73, 6.61, 3.36, 7.88, 0.24, 4.07, 1.84, 3.92, 5.23, 4.94, 7.33, 0.44, 4.58, 3.36, 6.15, 4.04, 0.42, 2.48, 6.00, 0.45, - 5.14, 3.99, 3.48, 4.31, 6.43, 2.15, 3.10, 1.28, 2.61, 6.89, 4.67, 8.81, 2.00, 0.06, 5.74, 7.45, 3.23, 0.50, 4.59, 1.09, - 8.87, 5.26, 6.80, 8.29, 0.99, 8.76, 0.31, 6.30, 0.85, 1.89, 3.55, 5.59, 8.96, 8.86, 6.30, 4.51, 0.88, 1.67, 1.40, 0.81, - 3.80, 3.06, 7.73, 6.90, 6.21, 3.98, 8.40, 2.45, 1.03, 8.61, 2.44, 5.68, 5.37, 6.93, 0.86, 8.86, 3.68, 2.64, 5.28, 6.03, - 1.70, 8.20, 5.19, 4.57, 1.20, 4.73, 7.95, 8.25, 5.50, 8.62, 1.97, 1.76, 8.97, 5.31, 6.38, 0.03, 4.22, 6.69, 8.68, 7.75, - 5.73, 8.16, 3.43, 2.52, 3.09, 1.54, 6.63, 8.27, 6.64, 7.74, 4.38, 0.57, 6.10, 6.04, 1.11, 5.16, 8.00, 3.07, 7.45, 3.38, - 7.43, 1.98, 1.81, 4.71, 0.69, 8.31, 2.44, 7.29, 2.57, 5.68, 0.83, 8.63, 8.83, 4.45, 2.08, 3.68, 3.74, 0.33, 1.05, 7.60, - 4.45, 3.56, 6.84, 5.98, 1.41, 6.91, 5.59, 6.73, 0.88, 3.60, 4.13, 0.43, 5.02, 0.65, 7.65, 6.36, 0.30, 0.75, 6.27, 5.96, - 1.11, 3.15, 3.90, 8.16, 3.75, 3.80, 7.60, 8.41, 2.62, 7.76, 3.31, 1.39, 6.29, 5.92, 4.61, 4.02, 4.99, 0.87, 5.01, 3.75, - 1.29, 6.95, 8.93, 2.66, 0.16, 2.13, 2.57, 8.23, 2.12, 1.07, 3.66, 5.58, 3.95, 3.73, 1.93, 4.87, 1.46, 0.38, 2.33, 1.33, - 0.13, 6.35, 6.61, 5.29, 7.17, 4.86, 3.36, 8.38, 4.20, 0.38, 7.16, 0.52, 7.46, 2.59, 3.99, 5.41, 1.89, 4.45, 4.89, 0.42, - 8.76, 5.41, 5.97, 7.37, 5.57, 5.49, 3.36, 8.64, 3.45, 1.23, 1.42, 6.86, 6.40, 6.72, 2.14, 5.12, 6.46, 3.68, 1.75, 7.21, - 6.77, 5.45, 2.80, 1.27, 4.44, 3.96, 3.51, 6.59, 5.23, 3.42, 3.23, 1.70, 5.76, 0.87, 3.55, 1.85, 6.27, 2.23, 3.73, 4.86, - 3.88, 8.56, 6.85, 1.87, 3.36, 0.96, 5.32, 6.97, 1.62, 6.39, 8.95, 6.83, 3.22, 7.02, 1.46, 2.39, 3.38, 4.91, 8.77, 1.53, - 8.29, 1.02, 1.92, 2.90, 1.49, 7.96, 2.33, 4.64, 2.80, 5.95, 4.55, 1.79, 3.08, 4.28, 8.58, 1.65, 7.90, 8.12, 3.27, 8.77, - 2.21, 7.21, 1.40, 5.74, 3.74, 1.60, 6.47, 4.96, 2.18, 1.37, 1.52, 7.02, 4.61, 7.11, 5.57, 2.43, 6.27, 8.35, 8.75, 4.68, - 8.28, 8.64, 7.53, 8.26, 5.18, 8.79, 6.00, 4.08, 2.34, 5.12, 3.56, 0.92, 1.12, 0.48, 7.82, 6.87, 5.18, 8.16, 1.26, 2.53, - 2.22, 6.24, 2.49, 6.63, 4.73, 7.42, 5.95, 8.19, 4.71, 0.84, 7.90, 4.51, 2.33, 0.26, 1.98, 4.54, 0.09, 7.06, 4.68, 8.04, - 2.18, 3.78, 4.20, 5.29, 2.11, 1.75, 7.51, 5.05, 5.31, 6.24, 0.91, 7.12, 0.46, 3.58, 6.31, 6.23, 6.09, 5.69, 7.11, 5.57, - 2.39, 5.56, 6.89, 8.92, 0.53, 7.04, 8.46, 5.51, 1.66, 2.84, 6.29, 7.11, 0.03, 4.11, 1.84, 8.41, 4.53, 8.15, 1.82, 3.76, - 1.39, 2.35, 6.98, 5.55, 1.75, 4.01, 8.50, 1.84, 1.06, 5.12, 7.69, 8.87, 2.68, 7.51, 8.51, 6.84, 0.02, 5.94, 7.76, 0.04, - 7.12, 3.27, 0.81, 3.51, 1.89, 3.97, 2.30, 4.96, 8.33, 5.94, 6.94, 7.13, 8.95, 8.61, 0.50, 7.91, 6.39, 3.38, 7.85, 3.67, - 5.33, 1.12, 3.62, 6.83, 3.92, 1.23, 5.13, 0.44, 8.46, 3.44, 6.99, 0.63, 3.80, 5.64, 5.98, 6.26, 2.54, 1.77, 6.31, 7.47, - 3.32, 7.44, 3.93, 5.21, 1.80, 5.62, 0.31, 8.35, 8.95, 6.68, 1.99, 8.40, 7.50, 3.21, 1.90, 0.49, 7.76, 1.78, 1.80, 0.47, - 3.13, 8.55, 0.10, 5.35, 5.03, 4.46, 1.02, 4.60, 8.33, 1.67, 6.42, 4.28, 5.65, 0.04, 7.97, 6.39, 7.31, 6.60, 6.58, 2.14, - 8.33, 0.22, 3.22, 0.78, 1.89, 5.20, 0.73, 7.29, 2.80, 4.03, 5.69, 5.93, 0.39, 8.05, 2.47, 6.95, 7.35, 0.68, 6.57, 6.73, - 8.11, 2.80, 4.33, 0.74, 6.57, 5.65, 4.87, 0.22, 5.99, 6.76, 0.65, 4.87, 2.07, 7.03, 2.56, 2.40, 5.68, 2.69, 7.91, 4.37, - 4.45, 7.04, 8.71, 3.91, 1.32, 7.01, 6.87, 4.28, 3.94, 4.31, 4.90, 8.65, 0.47, 8.88, 3.32, 8.68, 4.46, 7.23, 6.84, 3.35, - 4.20, 6.98, 1.04, 2.04, 0.92, 0.53, 8.13, 5.76, 6.24, 3.75, 7.38, 0.19, 7.08, 4.89, 8.39, 7.71, 2.60, 8.54, 4.64, 6.93, - 0.32, 3.17, 6.35, 1.42, 5.18, 4.04, 2.99, 2.15, 3.02, 3.67, 2.54, 8.83, 1.24, 3.63, 4.74, 8.82, 0.65, 0.44, 4.70, 0.57, - 0.69, 5.82, 0.15, 0.35, 1.40, 6.57, 4.06, 7.20, 0.70, 4.83, 0.09, 6.14, 5.26, 5.93, 1.06, 7.57, 4.96, 2.86, 5.27, 1.34, - 2.84, 3.89, 8.29, 0.52, 3.61, 7.73, 2.81, 6.06, 1.09, 8.96, 5.51, 2.32, 1.81, 1.97, 2.37, 2.69, 3.04, 4.26, 4.17, 2.45, - 7.29, 6.36, 0.20, 1.94, 6.02, 6.41, 2.91, 2.74, 6.39, 3.74, 4.63, 5.80, 4.10, 5.21, 4.63, 5.92, 5.54, 3.38, 7.11, 4.56, - 0.50, 3.17, 7.36, 2.07, 1.08, 7.30, 0.71, 3.61, 2.46, 6.80, 0.04, 3.61, 3.87, 1.45, 6.50, 5.55, 8.74, 4.11, 5.72, 1.66, - 4.20, 7.43, 7.56, 1.93, 2.58, 0.90, 1.07, 7.09, 7.79, 7.31, 7.42, 3.63, 1.09, 1.70, 1.97, 8.52, 6.04, 6.67, 8.94, 6.67, - 7.11, 3.40, 4.63, 6.00, 6.69, 7.99, 0.29, 8.03, 0.13, 0.03, 4.71, 2.32, 1.65, 1.87, 0.35, 8.66, 5.94, 8.11, 4.11, 6.96, - 2.65, 4.82, 2.65, 5.80, 7.83, 7.64, 7.48, 2.28, 7.89, 3.63, 0.83, 6.41, 4.72, 1.64, 3.77, 3.51, 7.91, 1.48, 2.05, 5.19, - 1.45, 3.65, 2.20, 4.38, 6.33, 3.25, 0.03, 8.43, 7.18, 7.90, 5.49, 7.77, 6.25, 4.90, 7.50, 6.93, 2.55, 7.72, 3.38, 0.49, - 5.35, 8.60, 7.23, 1.47, 1.00, 4.65, 8.53, 4.17, 0.02, 7.24, 7.08, 6.71, 7.67, 6.29, 6.57, 2.87, 1.11, 0.37, 8.61, 6.40, - 5.43, 4.63, 8.75, 0.83, 3.09, 7.61, 7.14, 6.41, 1.20, 0.71, 2.50, 6.56, 3.72, 2.35, 8.45, 0.91, 5.49, 8.68, 1.84, 3.08, - 2.46, 5.97, 4.48, 2.58, 0.88, 1.59, 6.45, 2.12, 7.31, 0.13, 5.60, 1.90, 1.92, 6.56, 3.95, 3.54, 0.80, 0.73, 4.34, 1.72, - 5.47, 1.08, 8.39, 7.27, 7.25, 0.68, 8.86, 5.75, 1.68, 2.72, 4.38, 2.47, 0.58, 3.50, 7.27, 3.72, 2.05, 8.35, 1.21, 4.91, - 6.25, 3.44, 5.69, 7.16, 7.24, 8.70, 7.70, 8.59, 6.20, 3.62, 5.75, 3.20, 1.56, 8.95, 1.88, 8.04, 4.72, 4.35, 5.75, 1.91, - 0.39, 6.55, 7.78, 7.12, 3.73, 3.76, 3.83, 3.90, 7.91, 5.52, 6.62, 3.97, 6.91, 1.24, 1.80, 5.25, 5.86, 4.90, 6.44, 7.46, - 3.57, 5.36, 1.42, 6.07, 6.29, 0.21, 1.94, 7.53, 2.31, 5.30, 5.44, 0.19, 5.42, 2.95, 8.93, 3.94, 6.74, 2.08, 1.60, 6.86, - 2.15, 4.54, 8.83, 2.57, 7.90, 8.84, 0.25, 0.33, 3.85, 2.22, 0.96, 7.22, 7.16, 4.14, 0.62, 0.70, 7.34, 8.96, 2.70, 1.40, - 4.64, 4.11, 5.66, 6.68, 8.36, 7.17, 1.68, 6.85, 7.51, 7.68, 0.95, 1.74, 4.87, 6.84, 1.55, 1.53, 6.74, 3.48, 4.31, 7.05, - 6.90, 1.54, 8.13, 4.43, 8.04, 3.92, 6.91, 3.17, 4.89, 5.17, 2.83, 6.40, 7.20, 2.64, 7.13, 4.31, 3.82, 3.65, 6.70, 4.90, - 8.99, 5.44, 7.42, 3.72, 7.28, 8.67, 7.55, 6.36, 2.24, 8.15, 8.87, 6.32, 0.56, 7.36, 1.97, 6.46, 4.04, 4.24, 4.37, 6.97, - 1.40, 8.61, 1.11, 5.65, 8.87, 8.03, 0.42, 8.71, 6.69, 2.02, 4.64, 2.64, 5.25, 0.88, 1.07, 6.89, 7.59, 8.08, 3.32, 0.69, - 8.31, 6.68, 6.49, 2.25, 4.78, 3.99, 0.86, 0.96, 5.10, 1.43, 0.23, 0.11, 2.67, 6.97, 3.22, 4.23, 8.78, 2.87, 0.11, 0.26, - 8.85, 5.30, 6.52, 8.74, 5.97, 4.47, 7.20, 2.46, 4.25, 5.29, 8.03, 2.97, 6.87, 5.05, 4.57, 0.37, 4.59, 5.81, 4.10, 8.57, - 4.78, 0.96, 6.62, 2.32, 3.14, 2.33, 3.89, 5.94, 5.43, 7.67, 0.09, 2.47, 1.02, 7.42, 0.36, 8.85, 0.05, 0.10, 7.28, 8.11, - 0.37, 5.14, 3.77, 8.37, 2.07, 4.95, 8.90, 6.06, 0.15, 1.93, 2.66, 2.98, 8.05, 5.07, 6.60, 5.64, 0.50, 5.79, 7.17, 1.38, - 7.03, 1.52, 3.19, 0.56, 5.88, 1.90, 8.08, 3.72, 2.51, 5.83, 5.08, 0.65, 1.41, 3.97, 1.95, 5.02, 4.80, 6.62, 0.35, 7.29, - 5.00, 2.05, 1.19, 4.11, 7.30, 2.66, 3.51, 7.14, 3.45, 7.41, 4.02, 3.28, 8.06, 7.07, 8.07, 6.27, 5.45, 1.85, 0.64, 4.57, - 4.70, 1.93, 5.13, 3.92, 6.10, 5.60, 4.06, 1.37, 1.38, 4.90, 3.85, 4.61, 1.56, 3.51, 6.31, 2.62, 5.65, 6.45, 0.49, 7.97, - 5.82, 2.34, 6.16, 2.99, 4.17, 6.70, 7.28, 7.95, 5.71, 8.20, 4.43, 3.71, 7.63, 5.14, 2.37, 7.97, 8.65, 3.62, 0.56, 1.90, - 5.52, 5.59, 6.68, 7.29, 6.85, 5.69, 8.10, 3.69, 6.46, 2.30, 0.29, 5.66, 7.83, 1.27, 1.14, 1.37, 0.22, 4.99, 5.66, 3.93, - 4.48, 7.18, 2.91, 1.41, 3.71, 1.14, 1.10, 7.41, 3.19, 1.97, 8.15, 3.07, 4.59, 7.97, 4.91, 4.85, 5.53, 8.60, 8.89, 0.95, - 5.13, 8.91, 7.27, 6.57, 3.67, 7.07, 8.66, 5.77, 2.65, 3.40, 4.94, 2.09, 6.57, 6.03, 2.52, 8.00, 5.60, 5.35, 0.12, 6.07, - 8.45, 1.70, 1.19, 0.47, 7.02, 7.67, 7.12, 3.71, 2.12, 4.70, 0.23, 6.80, 1.13, 4.67, 4.77, 4.75, 7.33, 2.72, 4.15, 2.38, - 5.10, 4.23, 8.58, 3.67, 5.12, 7.99, 1.79, 3.29, 5.38, 8.91, 7.17, 5.95, 4.69, 8.01, 7.40, 7.28, 2.08, 1.69, 4.45, 3.23, - 3.53, 0.07, 5.23, 3.83, 3.26, 0.80, 6.63, 7.90, 8.66, 4.49, 6.61, 2.77, 3.20, 7.78, 1.93, 7.40, 1.23, 7.54, 7.75, 6.10, - 7.97, 7.96, 1.60, 7.29, 7.91, 3.56, 7.82, 2.91, 2.81, 4.78, 5.76, 0.85, 3.80, 1.70, 6.03, 6.59, 1.21, 8.72, 2.94, 2.68, - 3.66, 0.30, 6.69, 2.71, 2.71, 2.86, 6.51, 6.81, 7.85, 5.84, 0.58, 2.22, 3.77, 8.14, 7.31, 2.05, 2.28, 4.98, 1.03, 0.99, - 1.26, 4.95, 3.18, 8.57, 7.09, 7.12, 8.55, 8.61, 2.32, 0.72, 7.17, 3.22, 0.08, 7.44, 5.00, 6.19, 2.83, 4.43, 1.70, 7.83, - 1.92, 1.50, 8.48, 0.47, 6.59, 4.34, 5.89, 5.48, 0.80, 4.70, 6.58, 2.48, 6.96, 2.36, 2.79, 8.70, 7.93, 5.25, 1.56, 3.61, - 7.65, 7.82, 6.41, 2.91, 7.18, 6.47, 7.70, 6.77, 8.84, 3.58, 1.58, 3.61, 4.72, 1.53, 4.83, 1.09, 3.77, 7.73, 5.07, 0.08, - 0.28, 4.94, 7.70, 5.15, 6.61, 5.32, 3.66, 1.77, 0.74, 6.51, 7.90, 8.99, 8.21, 3.88, 3.94, 0.40, 0.86, 3.38, 6.35, 7.12, - 1.89, 0.69, 7.99, 5.62, 2.48, 7.58, 5.57, 2.34, 7.63, 2.98, 1.37, 7.74, 1.52, 0.06, 4.27, 6.26, 7.11, 1.65, 6.04, 2.77, - 0.58, 3.14, 3.02, 1.61, 1.52, 8.03, 1.02, 0.88, 7.93, 4.00, 4.95, 4.80, 1.15, 4.91, 1.95, 4.99, 4.32, 4.41, 6.85, 0.41, - 1.11, 6.84, 8.05, 2.11, 4.74, 6.03, 5.02, 7.47, 8.73, 4.27, 3.87, 3.62, 3.11, 3.85, 6.73, 8.75, 1.40, 0.29, 7.93, 1.64, - 3.67, 8.66, 4.29, 7.35, 2.10, 8.87, 0.27, 8.09, 3.30, 4.63, 5.91, 0.48, 2.66, 2.80, 4.27, 3.26, 7.25, 2.28, 3.95, 4.02, - 7.57, 8.97, 6.51, 0.85, 0.92, 7.64, 6.25, 3.34, 4.99, 1.43, 3.31, 6.78, 0.68, 0.15, 6.54, 4.59, 7.18, 1.56, 6.34, 2.37, - 2.86, 5.65, 6.24, 3.14, 7.42, 4.20, 3.49, 3.62, 3.42, 1.72, 4.09, 3.17, 0.33, 8.51, 8.70, 7.60, 1.94, 6.92, 7.44, 8.53, - 7.03, 2.13, 3.64, 8.30, 4.89, 5.81, 4.06, 6.16, 4.57, 1.60, 8.34, 5.44, 0.39, 2.95, 6.95, 1.97, 2.62, 2.41, 7.19, 4.06, - 4.85, 6.02, 7.41, 8.90, 0.24, 8.97, 7.86, 4.79, 5.25, 1.83, 7.32, 6.32, 7.40, 2.34, 0.10, 5.32, 0.94, 0.02, 6.48, 0.32, - 3.35, 2.63, 6.52, 8.43, 0.16, 5.53, 3.43, 1.45, 3.23, 7.38, 5.75, 7.34, 8.84, 8.15, 7.04, 8.80, 1.30, 3.26, 5.50, 2.62, - 6.08, 7.89, 4.86, 1.65, 2.89, 7.95, 5.57, 7.66, 2.67, 6.81, 7.05, 5.05, 7.82, 2.06, 6.86, 2.53, 1.41, 8.61, 8.23, 1.02, - 8.88, 0.39, 8.64, 4.76, 5.01, 6.19, 8.72, 8.28, 7.75, 0.98, 2.00, 5.26, 3.03, 2.82, 4.99, 7.59, 8.26, 2.64, 4.98, 5.55, - 7.01, 6.81, 5.19, 4.30, 3.07, 4.95, 7.88, 7.87, 6.73, 4.69, 2.21, 8.50, 8.02, 6.06, 4.86, 1.02, 2.31, 1.35, 0.52, 3.98, - 2.76, 6.49, 2.59, 4.84, 7.59, 1.65, 6.84, 5.86, 7.49, 3.02, 6.80, 4.71, 3.97, 8.38, 4.34, 3.58, 5.86, 3.29, 7.82, 5.61, - 5.70, 5.68, 4.92, 1.70, 2.30, 4.60, 6.57, 5.41, 4.18, 7.28, 5.77, 4.48, 0.43, 8.22, 7.59, 4.60, 1.89, 8.09, 3.29, 8.55, - 6.32, 8.03, 6.88, 0.60, 7.01, 4.08, 3.03, 6.77, 0.68, 2.34, 4.93, 7.23, 5.75, 4.46, 3.25, 0.24, 6.24, 8.32, 5.07, 7.18, - 3.97, 7.57, 3.29, 8.22, 1.00, 6.25, 4.85, 8.42, 6.70, 4.08, 0.72, 5.14, 6.06, 4.56, 8.48, 8.93, 4.57, 1.26, 6.22, 4.14, - 4.15, 4.45, 0.14, 0.16, 2.30, 1.54, 8.33, 4.74, 4.18, 5.41, 0.90, 7.22, 0.67, 5.60, 2.81, 1.63, 2.34, 6.12, 0.57, 3.51, - 7.67, 4.73, 5.04, 1.71, 6.57, 2.33, 8.57, 8.47, 3.90, 1.06, 2.85, 7.69, 5.55, 3.88, 1.88, 3.63, 5.13, 7.09, 6.66, 1.14, - 8.37, 4.93, 0.34, 6.92, 7.81, 4.53, 5.70, 4.66, 4.63, 5.92, 7.19, 8.34, 0.87, 7.32, 0.93, 8.45, 2.60, 8.05, 4.39, 3.06, - 5.11, 6.50, 8.71, 7.69, 8.70, 2.12, 6.18, 0.68, 4.00, 0.15, 3.49, 3.34, 2.40, 3.05, 5.04, 8.37, 1.66, 7.61, 3.93, 1.37, - 8.34, 3.59, 6.69, 5.90, 4.49, 5.74, 5.38, 2.43, 0.28, 1.76, 2.21, 4.85, 4.51, 5.94, 3.50, 3.49, 4.06, 7.22, 6.10, 7.58, - 8.54, 7.08, 5.48, 8.05, 3.90, 5.62, 3.93, 7.71, 6.69, 2.71, 8.26, 7.91, 5.50, 6.52, 6.08, 5.13, 0.86, 7.04, 6.45, 0.55, - 8.91, 5.51, 1.44, 1.89, 0.13, 3.72, 5.13, 0.58, 6.05, 8.57, 3.25, 1.39, 0.35, 2.35, 5.60, 5.91, 3.36, 7.84, 3.44, 8.80, - 3.23, 3.13, 6.68, 7.68, 0.10, 7.32, 5.08, 5.65, 6.71, 5.30, 3.29, 8.81, 8.03, 1.20, 7.87, 8.84, 8.59, 8.10, 2.37, 0.88, - 2.67, 7.82, 3.72, 2.77, 4.43, 0.43, 6.25, 3.90, 4.39, 3.35, 5.87, 3.14, 8.42, 0.64, 6.14, 5.77, 3.83, 6.95, 2.15, 0.70, - 1.68, 2.76, 3.40, 0.76, 6.62, 3.76, 4.25, 3.05, 3.09, 3.40, 6.60, 4.32, 6.33, 7.05, 7.16, 8.10, 0.72, 6.12, 8.65, 4.89, - 3.05, 4.46, 8.11, 5.97, 6.38, 1.72, 4.51, 4.64, 7.10, 4.01, 2.71, 0.38, 3.04, 6.09, 4.15, 6.33, 5.74, 1.49, 4.07, 6.79, - 6.81, 5.44, 6.94, 3.63, 7.95, 8.27, 7.13, 4.80, 0.06, 2.93, 4.51, 7.55, 5.54, 1.64, 2.53, 4.71, 6.71, 3.16, 0.73, 0.04, - 6.17, 4.31, 2.64, 3.08, 7.70, 7.10, 3.54, 4.74, 8.21, 6.73, 8.62, 0.78, 8.41, 2.18, 8.57, 8.38, 5.29, 6.06, 2.74, 6.94, - 5.28, 6.87, 5.89, 8.47, 3.08, 6.29, 7.17, 8.62, 6.09, 5.84, 7.35, 6.21, 5.71, 5.72, 0.98, 5.23, 8.48, 1.50, 4.23, 8.78, - 3.72, 0.71, 2.30, 2.01, 5.84, 4.66, 1.28, 8.33, 6.58, 0.56, 3.50, 3.03, 1.57, 5.42, 5.36, 6.52, 3.13, 5.77, 8.14, 1.65, - 6.29, 3.74, 2.15, 2.30, 5.46, 3.18, 5.97, 4.24, 3.61, 1.07, 1.80, 7.28, 1.05, 6.72, 4.12, 8.71, 7.47, 1.12, 2.36, 1.93, - 0.31, 3.65, 0.41, 5.17, 3.11, 6.74, 1.38, 0.45, 8.72, 1.64, 3.33, 5.62, 7.32, 2.26, 8.15, 7.04, 7.21, 5.10, 7.24, 3.69, - 8.46, 2.98, 2.26, 8.90, 8.67, 3.46, 4.56, 1.64, 8.33, 3.49, 2.60, 0.19, 8.39, 2.36, 2.33, 1.31, 2.95, 1.13, 7.96, 6.80, - 0.14, 5.15, 3.31, 1.63, 2.87, 2.73, 4.78, 2.70, 6.05, 6.87, 4.29, 2.83, 6.54, 6.37, 5.83, 7.07, 8.44, 2.68, 3.57, 1.64, - 4.70, 5.98, 4.69, 5.66, 6.45, 5.65, 2.63, 8.92, 6.14, 5.82, 3.53, 7.97, 8.88, 8.05, 7.50, 6.69, 5.05, 7.23, 3.37, 5.22, - 1.81, 2.70, 1.29, 6.29, 1.77, 4.26, 1.94, 1.27, 3.73, 3.11, 5.90, 3.36, 1.95, 0.04, 0.77, 2.81, 8.44, 3.29, 1.99, 4.78, - 2.11, 3.89, 8.09, 1.62, 4.74, 0.54, 0.60, 8.61, 8.23, 7.62, 7.82, 1.71, 3.76, 8.72, 3.97, 0.01, 0.99, 4.62, 2.51, 2.50, - 6.63, 0.52, 0.61, 1.33, 6.57, 0.52, 6.24, 4.54, 0.48, 8.05, 6.54, 1.04, 2.27, 2.51, 0.61, 7.30, 1.24, 0.58, 5.25, 2.19, - 0.33, 3.82, 4.56, 7.07, 1.66, 7.24, 0.95, 1.48, 7.66, 8.71, 5.47, 5.04, 0.53, 0.16, 5.92, 0.20, 2.48, 2.05, 5.87, 1.98, - 2.97, 1.20, 1.21, 6.64, 7.91, 3.46, 0.67, 3.25, 1.30, 4.35, 1.99, 0.58, 3.19, 6.38, 8.77, 5.95, 1.87, 1.38, 1.15, 4.18, - 8.93, 0.70, 5.51, 5.43, 3.85, 4.35, 8.22, 0.29, 1.61, 0.75, 1.11, 6.60, 8.91, 6.17, 6.38, 8.80, 7.33, 2.77, 8.32, 0.62, - 8.16, 2.07, 4.37, 3.94, 7.29, 5.22, 4.84, 4.92, 2.93, 8.86, 1.58, 5.34, 0.84, 2.54, 7.11, 5.71, 1.16, 2.43, 2.36, 3.33, - 6.74, 0.14, 5.69, 4.44, 5.51, 2.49, 1.67, 1.95, 2.18, 1.78, 0.28, 2.75, 2.49, 4.93, 1.46, 6.35, 7.69, 3.70, 6.03, 5.91, - 0.19, 4.10, 2.28, 8.81, 6.82, 5.00, 3.79, 0.95, 2.35, 7.80, 7.23, 2.53, 3.49, 1.26, 7.42, 2.73, 7.01, 4.01, 5.11, 0.74, - 0.14, 2.35, 0.27, 2.82, 2.83, 2.43, 1.42, 4.95, 6.19, 0.94, 8.47, 8.89, 1.82, 6.48, 5.60, 3.39, 8.50, 0.12, 4.66, 4.93, - 5.27, 7.40, 2.54, 1.82, 8.72, 4.14, 4.30, 6.67, 8.83, 4.33, 1.47, 1.42, 0.75, 4.30, 7.71, 1.75, 2.23, 2.82, 5.51, 2.35, - 6.80, 3.29, 1.35, 7.79, 2.04, 9.00, 8.63, 6.18, 4.63, 6.71, 0.14, 6.20, 5.42, 3.27, 2.88, 1.37, 4.01, 2.44, 6.82, 7.46, - 6.86, 5.52, 7.89, 8.40, 1.56, 5.17, 0.56, 1.27, 6.19, 3.93, 2.21, 2.24, 4.42, 2.18, 6.37, 6.69, 1.57, 8.01, 7.02, 0.37, - 0.39, 8.27, 2.03, 7.28, 8.06, 2.47, 7.99, 3.42, 6.54, 7.36, 6.56, 8.66, 1.07, 4.01, 6.71, 0.13, 6.50, 2.19, 3.49, 8.30, - 0.78, 2.09, 8.68, 7.37, 2.77, 8.14, 2.45, 2.26, 3.35, 8.35, 0.85, 1.18, 7.86, 1.08, 4.73, 3.15, 6.44, 0.22, 0.35, 2.22, - 7.12, 1.82, 1.00, 0.70, 1.36, 5.86, 6.62, 5.14, 0.49, 5.51, 5.27, 5.58, 4.07, 3.48, 6.40, 1.61, 7.57, 6.07, 5.66, 4.39, - 1.53, 3.64, 2.99, 7.03, 3.80, 8.52, 2.77, 7.02, 7.34, 1.26, 7.92, 3.37, 0.53, 4.86, 2.63, 0.71, 8.67, 8.16, 7.00, 0.40, - 7.36, 8.68, 4.40, 5.54, 2.76, 1.56, 5.10, 6.40, 4.02, 2.82, 7.46, 5.20, 8.64, 3.86, 4.48, 7.09, 6.60, 7.73, 1.61, 6.32, - 4.88, 7.48, 7.26, 0.32, 0.02, 3.32, 5.25, 4.58, 7.29, 0.72, 0.51, 0.90, 5.91, 6.36, 3.01, 7.41, 8.12, 1.89, 0.97, 4.39, - 8.43, 4.94, 5.15, 4.17, 4.14, 2.17, 5.32, 8.89, 2.61, 2.41, 3.60, 1.93, 1.52, 7.84, 8.76, 7.15, 0.22, 2.73, 6.56, 4.22, - 4.47, 6.05, 4.98, 7.50, 1.37, 5.31, 3.01, 1.58, 6.13, 4.11, 0.00, 0.35, 5.22, 7.75, 7.54, 8.57, 2.07, 6.96, 2.46, 5.36, - 0.55, 7.94, 5.28, 4.65, 4.36, 6.48, 0.24, 3.59, 5.11, 8.51, 5.98, 7.19, 0.30, 4.54, 7.53, 1.99, 8.93, 1.64, 4.47, 3.24, - 8.91, 4.19, 7.77, 3.28, 3.05, 4.63, 6.94, 0.15, 4.03, 4.23, 7.02, 7.02, 7.34, 2.75, 5.90, 7.02, 5.68, 8.09, 0.71, 8.29, - 4.41, 0.37, 4.75, 4.43, 4.73, 5.91, 0.89, 7.46, 3.70, 5.24, 6.25, 7.23, 0.32, 7.96, 3.26, 1.87, 3.29, 7.51, 7.34, 3.10, - 8.45, 3.08, 0.74, 4.41, 6.03, 7.89, 0.17, 2.22, 1.69, 5.57, 8.44, 1.35, 6.07, 7.95, 8.24, 3.38, 2.99, 5.87, 4.04, 6.86, - 7.79, 3.54, 8.91, 8.16, 0.93, 1.87, 5.08, 5.09, 6.72, 6.74, 0.88, 1.16, 3.99, 2.60, 2.80, 4.86 -}; - -float verify_data[ARRAY_SIZE] = -{ - 1354.01, 1395.87, 1543.01, 1599.53, 1344.29, 1352.43, 1217.77, 1342.96, 1258.09, 1233.96, 1257.44, 1240.52, 1417.05, 1133.66, 1303.01, 1394.43, 1397.95, 1498.21, 1297.75, 1314.17, - 1267.56, 1570.65, 1350.75, 1214.41, 1293.15, 1281.52, 1383.14, 1328.95, 1376.30, 1474.75, 1233.98, 1467.32, 1385.80, 1516.00, 1383.32, 1498.40, 1349.81, 1387.99, 1407.33, 1276.53, - 1346.93, 1398.80, 1512.83, 1286.52, 1361.78, 1434.00, 1346.92, 1349.11, 1168.83, 1159.40, 1665.83, 1344.38, 1467.49, 1415.67, 1419.02, 1570.37, 1301.99, 1414.36, 1520.39, 1306.54, - 1094.96, 1373.59, 1448.26, 1375.64, 1258.80, 1185.72, 1350.71, 1563.55, 1316.17, 1301.19, 1161.06, 1230.95, 1212.56, 1154.43, 1151.65, 1135.04, 1347.27, 1181.36, 1228.32, 1167.81, - 1156.78, 1400.19, 1281.56, 1208.90, 1142.65, 1360.37, 1253.98, 1222.83, 1280.18, 1338.35, 1283.13, 1329.33, 1251.23, 1359.60, 1233.32, 1306.39, 1272.46, 1390.59, 1328.05, 1409.97, - 1267.51, 1339.74, 1282.41, 1220.99, 1298.74, 1220.26, 1411.56, 1343.96, 1225.86, 1372.56, 1276.61, 1267.04, 1131.05, 1256.09, 1469.12, 1268.12, 1476.59, 1405.91, 1301.43, 1389.66, - 1273.65, 1288.05, 1571.70, 1269.64, 1112.05, 1363.37, 1378.76, 1304.14, 1396.36, 1336.56, 1370.00, 1644.75, 1315.29, 1396.68, 1281.25, 1262.70, 1299.40, 1249.69, 1175.23, 1181.40, - 1454.54, 1216.33, 1207.56, 1376.62, 1143.42, 1534.02, 1401.90, 1323.66, 1178.84, 1410.94, 1260.04, 1289.08, 1394.97, 1377.33, 1317.83, 1439.55, 1349.56, 1435.91, 1333.42, 1428.67, - 1296.20, 1504.97, 1349.81, 1435.84, 1453.81, 1455.28, 1336.01, 1281.53, 1344.39, 1378.58, 1520.28, 1362.65, 1349.20, 1461.86, 1258.32, 1233.64, 1244.44, 1205.92, 1618.34, 1355.04, - 1562.53, 1473.65, 1461.36, 1521.75, 1228.12, 1506.90, 1493.48, 1374.98, 1185.69, 1493.79, 1345.46, 1369.70, 1161.75, 1116.09, 1290.69, 1477.64, 1140.02, 1264.17, 1074.87, 1269.37, - 1056.11, 1127.10, 1090.32, 1055.62, 1302.05, 1118.96, 1092.37, 1273.94, 1075.51, 1266.97, 1125.54, 1136.88, 1098.92, 1359.13, 1142.29, 1101.04, 1308.78, 1291.21, 1182.88, 1179.02, - 1114.94, 1287.37, 1059.56, 1279.27, 1250.69, 1275.44, 1288.61, 1145.96, 1235.53, 1291.31, 1188.66, 1052.27, 1174.23, 1190.70, 1397.36, 1275.87, 1317.88, 1243.39, 1131.48, 1260.10, - 1192.54, 1178.11, 1432.50, 1106.75, 1343.19, 1255.30, 1263.46, 1388.74, 1137.68, 1257.01, 1350.52, 1180.76, 1066.27, 1314.34, 1193.60, 1265.57, 1210.52, 1183.99, 1230.33, 1387.46, - 1151.10, 1077.39, 1149.84, 1215.06, 1119.25, 1199.23, 977.74, 1111.13, 1335.71, 1168.84, 1036.50, 1005.27, 1178.64, 1275.66, 1208.78, 1075.36, 1100.36, 1163.28, 1075.87, 1190.77, - 1176.13, 1074.33, 1152.84, 1062.11, 1314.44, 1298.88, 1192.93, 1199.16, 1043.27, 1263.14, 1123.87, 1159.83, 1233.00, 1222.81, 1054.01, 1078.97, 1233.10, 1122.61, 1260.10, 1132.02, - 1169.08, 1203.75, 1166.90, 1081.17, 1092.89, 1127.70, 1311.74, 1267.25, 1353.53, 1251.22, 1208.01, 1377.83, 1170.55, 1183.10, 1210.08, 1079.78, 1022.47, 1267.79, 1280.86, 1107.99, - 1220.63, 1231.38, 1297.16, 1349.99, 1132.89, 1057.39, 1167.18, 1238.74, 1058.25, 1242.15, 966.69, 1056.35, 1312.60, 1080.69, 1157.51, 1057.53, 1096.31, 1256.06, 1222.67, 1225.06, - 1084.64, 1147.07, 1166.91, 1215.04, 1214.49, 1119.43, 1151.76, 1214.63, 1167.99, 1353.90, 1138.60, 1258.90, 1082.25, 1209.09, 1209.70, 1129.26, 1276.81, 1264.27, 1085.23, 927.81, - 1128.21, 1080.52, 1231.94, 1182.54, 1235.60, 1292.99, 1235.59, 1127.82, 1124.34, 1079.43, 1432.82, 1249.15, 1327.01, 1301.50, 1246.96, 1376.32, 1061.28, 1204.55, 1329.92, 1103.78, - 931.53, 1368.76, 1190.03, 1163.34, 1396.89, 1433.26, 1527.05, 1598.78, 1278.53, 1415.12, 1430.83, 1481.94, 1199.17, 1329.99, 1335.39, 1231.51, 1470.62, 1375.58, 1375.26, 1395.02, - 1399.26, 1608.00, 1308.94, 1431.51, 1243.43, 1463.41, 1403.81, 1364.34, 1434.32, 1417.88, 1495.77, 1363.22, 1464.28, 1487.78, 1364.68, 1381.91, 1349.18, 1528.36, 1396.53, 1392.29, - 1414.73, 1422.36, 1300.79, 1310.37, 1443.54, 1385.04, 1608.70, 1404.34, 1432.32, 1504.10, 1442.82, 1397.85, 1334.88, 1305.33, 1663.19, 1432.12, 1613.45, 1523.58, 1466.45, 1595.38, - 1366.08, 1411.41, 1496.29, 1258.22, 1156.74, 1532.48, 1488.98, 1406.65, 1397.03, 1292.21, 1440.31, 1634.74, 1358.90, 1495.89, 1347.00, 1449.85, 1225.68, 1390.38, 1157.20, 1369.11, - 1596.16, 1259.06, 1245.06, 1294.82, 1291.60, 1576.38, 1369.14, 1234.77, 1202.91, 1557.84, 1329.85, 1203.48, 1415.17, 1392.83, 1405.60, 1427.19, 1375.85, 1442.91, 1349.33, 1454.88, - 1281.60, 1469.46, 1358.83, 1380.14, 1363.64, 1431.13, 1262.43, 1334.68, 1399.66, 1290.28, 1658.62, 1332.18, 1351.59, 1357.42, 1313.97, 1315.74, 1291.34, 1297.74, 1686.54, 1265.94, - 1589.24, 1458.80, 1414.98, 1572.02, 1366.07, 1427.09, 1438.33, 1344.23, 1277.32, 1518.03, 1472.18, 1351.37, 1392.20, 1374.39, 1377.64, 1568.39, 1282.97, 1253.27, 1246.33, 1311.90, - 1251.72, 1266.76, 1139.97, 1291.31, 1397.95, 1124.47, 1260.95, 1227.31, 1269.12, 1472.09, 1282.62, 1179.06, 1169.98, 1488.49, 1313.12, 1263.70, 1286.53, 1276.45, 1351.07, 1313.12, - 1345.65, 1366.31, 1250.39, 1330.61, 1358.94, 1406.88, 1390.62, 1382.66, 1355.59, 1434.79, 1347.25, 1215.57, 1313.64, 1212.06, 1420.40, 1374.99, 1314.28, 1419.94, 1318.03, 1268.17, - 1195.18, 1278.23, 1604.11, 1276.18, 1558.91, 1450.96, 1279.83, 1608.46, 1258.74, 1380.00, 1459.37, 1229.32, 1127.80, 1465.53, 1372.71, 1288.84, 1245.17, 1363.43, 1340.75, 1485.38, - 1282.79, 1323.81, 1342.04, 1389.78, 1172.57, 1267.06, 1203.23, 1199.95, 1461.08, 1151.50, 1148.56, 1246.64, 1194.17, 1419.16, 1151.19, 1225.54, 1172.39, 1268.26, 1279.08, 1214.26, - 1226.21, 1323.91, 1293.96, 1211.01, 1359.67, 1416.99, 1218.85, 1342.10, 1183.49, 1412.17, 1238.21, 1387.83, 1378.53, 1284.84, 1299.25, 1096.53, 1269.18, 1288.36, 1405.23, 1299.46, - 1245.22, 1327.05, 1261.93, 1215.82, 1264.44, 1239.77, 1552.56, 1296.11, 1442.32, 1384.22, 1359.94, 1383.29, 1203.91, 1374.08, 1441.88, 1189.57, 1146.06, 1315.69, 1348.47, 1322.45, - 1128.66, 1214.98, 1316.18, 1357.55, 1261.46, 1285.64, 1171.37, 1352.30, 1057.03, 1180.40, 1092.10, 1083.04, 1337.04, 1212.64, 1229.50, 1245.28, 1176.11, 1333.82, 1325.87, 1200.51, - 1102.30, 1266.74, 1114.25, 1287.98, 1317.99, 1273.57, 1255.38, 1221.25, 1239.90, 1380.25, 1289.36, 1247.62, 1260.22, 1373.04, 1228.45, 1228.69, 1353.32, 1330.31, 1104.74, 1049.00, - 1242.65, 1136.09, 1402.20, 1293.11, 1203.44, 1333.25, 1239.05, 1229.50, 1209.23, 1146.20, 1358.72, 1395.66, 1338.24, 1310.86, 1255.35, 1384.90, 1158.04, 1198.98, 1440.59, 1127.60, - 957.27, 1348.18, 1362.57, 1180.99, 1464.68, 1386.78, 1512.22, 1534.28, 1327.25, 1431.83, 1344.34, 1485.21, 1271.82, 1323.19, 1236.09, 1315.75, 1519.97, 1242.57, 1318.09, 1376.85, - 1278.51, 1533.16, 1460.59, 1224.81, 1236.72, 1474.99, 1366.45, 1269.97, 1357.90, 1400.97, 1495.44, 1403.39, 1435.75, 1531.07, 1341.67, 1358.59, 1247.33, 1505.51, 1388.59, 1505.12, - 1464.88, 1423.19, 1310.46, 1278.27, 1401.25, 1310.40, 1581.57, 1427.85, 1367.65, 1463.46, 1476.53, 1409.38, 1257.88, 1299.85, 1625.04, 1442.07, 1532.34, 1497.04, 1437.51, 1624.79, - 1230.74, 1367.82, 1534.68, 1330.36, 1135.18, 1501.52, 1490.87, 1358.10, 1286.56, 1358.83, 1356.88, 1512.96, 1250.52, 1272.49, 1274.92, 1305.45, 1227.33, 1135.43, 1162.45, 1230.09, - 1385.53, 1230.82, 1243.73, 1297.78, 1234.57, 1488.49, 1293.94, 1251.93, 1145.57, 1356.51, 1208.46, 1241.36, 1273.63, 1288.38, 1365.52, 1321.69, 1331.95, 1379.18, 1281.63, 1354.01, - 1224.44, 1440.92, 1317.49, 1362.65, 1403.81, 1372.31, 1383.65, 1115.44, 1327.92, 1296.24, 1512.29, 1343.31, 1283.19, 1404.62, 1263.54, 1228.75, 1174.57, 1171.94, 1559.27, 1376.76, - 1456.71, 1345.08, 1380.05, 1459.01, 1212.10, 1348.34, 1492.67, 1287.52, 1112.90, 1499.50, 1326.50, 1268.42, 1039.32, 1159.37, 1261.43, 1324.98, 1100.77, 1171.99, 1087.34, 1102.53, - 1122.55, 1021.05, 1056.53, 1142.89, 1269.32, 1112.13, 1015.51, 1135.11, 1092.82, 1237.04, 1076.18, 1128.87, 1048.15, 1195.04, 1015.79, 1190.58, 1164.24, 1212.17, 1172.98, 1075.36, - 1228.39, 1240.92, 1150.23, 1237.26, 1086.94, 1254.15, 1132.80, 1164.63, 1162.59, 1136.61, 1173.39, 965.03, 1177.22, 1131.64, 1254.41, 1214.57, 1089.64, 1239.24, 1106.76, 1037.27, - 962.49, 1034.46, 1297.65, 1254.56, 1207.93, 1216.06, 1119.13, 1312.59, 1112.75, 1097.98, 1307.74, 1192.41, 973.53, 1387.04, 1157.31, 1099.13, 1311.17, 1378.00, 1469.13, 1590.78, - 1333.74, 1336.15, 1297.78, 1473.36, 1289.06, 1302.42, 1201.01, 1266.29, 1503.54, 1312.87, 1262.47, 1275.63, 1395.36, 1476.57, 1312.36, 1262.03, 1233.52, 1395.29, 1228.28, 1409.59, - 1387.55, 1403.12, 1430.41, 1272.49, 1428.01, 1479.15, 1339.01, 1457.99, 1369.05, 1393.67, 1413.85, 1431.64, 1376.41, 1390.82, 1314.10, 1180.77, 1298.37, 1343.59, 1467.81, 1361.09, - 1431.13, 1478.41, 1348.23, 1394.75, 1246.04, 1296.82, 1526.66, 1458.45, 1473.05, 1495.85, 1282.82, 1599.32, 1427.10, 1350.46, 1464.37, 1271.35, 1181.11, 1559.64, 1561.56, 1389.35, - 1369.84, 1419.83, 1451.45, 1681.61, 1436.44, 1348.12, 1308.13, 1388.24, 1301.13, 1385.31, 1220.28, 1341.28, 1601.04, 1331.48, 1325.58, 1290.60, 1232.76, 1642.37, 1411.39, 1377.22, - 1156.76, 1466.42, 1375.66, 1325.09, 1408.20, 1437.40, 1412.27, 1474.78, 1429.78, 1518.94, 1426.34, 1495.92, 1366.96, 1532.46, 1439.96, 1388.39, 1398.59, 1562.84, 1378.79, 1331.36, - 1412.45, 1305.85, 1580.16, 1359.08, 1343.40, 1530.16, 1364.59, 1285.68, 1317.68, 1368.55, 1723.86, 1409.11, 1699.95, 1580.27, 1439.28, 1528.99, 1482.09, 1450.39, 1640.19, 1379.11, - 1242.22, 1607.38, 1529.27, 1414.70, 1266.13, 1260.65, 1279.51, 1502.70, 1164.50, 1270.53, 1223.93, 1280.00, 1210.34, 1181.94, 1027.15, 1218.78, 1401.17, 1092.32, 1098.36, 1086.59, - 1176.60, 1377.04, 1199.74, 1119.22, 1191.42, 1411.57, 1248.73, 1205.67, 1231.78, 1151.91, 1239.38, 1347.67, 1253.05, 1343.59, 1284.73, 1303.14, 1126.30, 1303.28, 1197.07, 1290.40, - 1222.08, 1269.38, 1281.51, 1188.44, 1311.67, 1214.92, 1432.29, 1174.58, 1265.55, 1298.27, 1154.89, 1243.58, 1042.13, 1102.71, 1476.41, 1204.74, 1360.13, 1397.41, 1231.77, 1429.69, - 1197.13, 1276.24, 1299.34, 1187.89, 1114.67, 1363.68, 1379.29, 1171.70, 1313.87, 1352.24, 1441.85, 1667.44, 1351.17, 1313.45, 1240.02, 1208.08, 1192.24, 1235.72, 1178.14, 1183.12, - 1403.52, 1250.37, 1238.65, 1235.05, 1119.69, 1466.08, 1381.23, 1271.59, 988.59, 1354.66, 1345.17, 1279.41, 1295.76, 1272.77, 1376.11, 1406.65, 1285.50, 1477.70, 1328.50, 1429.22, - 1224.42, 1448.28, 1261.41, 1336.04, 1378.87, 1335.38, 1327.60, 1199.76, 1155.44, 1160.00, 1452.01, 1382.43, 1341.91, 1450.36, 1302.41, 1351.84, 1158.69, 1319.26, 1543.70, 1357.04, - 1533.51, 1426.15, 1387.27, 1526.33, 1228.63, 1320.55, 1432.95, 1315.83, 1049.43, 1500.71, 1353.63, 1368.97, 1139.31, 1157.17, 1384.59, 1380.63, 1311.81, 1234.87, 1312.66, 1303.28, - 1059.96, 1117.79, 1070.43, 1129.95, 1432.29, 1153.08, 1187.14, 1287.10, 1165.82, 1348.58, 1212.90, 1204.39, 1174.20, 1272.09, 1173.52, 1162.60, 1233.63, 1305.57, 1338.09, 1172.95, - 1323.86, 1324.07, 1243.67, 1266.72, 1170.81, 1398.73, 1119.67, 1331.76, 1175.22, 1201.22, 1211.26, 1127.93, 1328.62, 1271.81, 1474.22, 1339.07, 1270.04, 1259.59, 1228.70, 1161.23, - 1210.48, 1133.59, 1493.76, 1271.63, 1328.03, 1254.34, 1389.44, 1334.65, 1232.48, 1347.65, 1322.99, 1186.21, 1086.77, 1415.26, 1294.45, 1282.19, 1531.11, 1471.22, 1581.93, 1722.80, - 1505.51, 1453.34, 1412.37, 1422.03, 1293.06, 1310.27, 1294.47, 1416.66, 1600.64, 1341.85, 1341.85, 1451.51, 1367.89, 1716.03, 1573.49, 1361.98, 1197.26, 1473.62, 1355.35, 1361.63, - 1471.37, 1457.78, 1473.47, 1400.30, 1457.48, 1598.43, 1502.65, 1578.03, 1451.60, 1657.89, 1427.07, 1526.75, 1508.23, 1608.07, 1512.20, 1345.54, 1450.02, 1373.91, 1709.84, 1510.90, - 1468.48, 1554.60, 1447.69, 1403.40, 1439.40, 1364.05, 1649.56, 1519.12, 1662.38, 1580.64, 1521.50, 1648.85, 1473.95, 1537.87, 1603.35, 1405.32, 1277.63, 1635.12, 1530.58, 1527.68, - 1376.14, 1259.62, 1404.31, 1491.97, 1331.98, 1323.84, 1261.00, 1340.33, 1212.09, 1272.78, 1149.12, 1251.68, 1474.67, 1215.21, 1209.61, 1208.81, 1223.37, 1440.41, 1299.06, 1191.88, - 1159.34, 1391.74, 1411.92, 1238.45, 1366.96, 1326.26, 1374.60, 1281.97, 1335.22, 1429.39, 1234.86, 1347.17, 1296.84, 1441.90, 1285.37, 1323.53, 1295.99, 1417.08, 1297.75, 1166.38, - 1345.28, 1205.89, 1508.88, 1352.85, 1387.88, 1397.88, 1360.48, 1318.44, 1183.16, 1290.36, 1548.41, 1268.90, 1491.98, 1406.27, 1336.20, 1491.58, 1320.34, 1336.40, 1423.83, 1315.12, - 1140.91, 1435.46, 1362.80, 1367.75, 1208.92, 1214.60, 1291.40, 1393.45, 1352.84, 1177.35, 1233.46, 1243.24, 1202.87, 1152.15, 1102.70, 1135.41, 1311.41, 1209.16, 1166.73, 1153.12, - 1082.47, 1368.74, 1272.80, 1247.51, 972.26, 1268.29, 1180.56, 1139.86, 1160.60, 1213.71, 1159.53, 1298.88, 1185.02, 1340.95, 1207.52, 1320.85, 1165.75, 1343.30, 1320.00, 1267.42, - 1284.86, 1303.08, 1196.86, 1109.66, 1177.52, 1129.73, 1377.07, 1293.27, 1104.89, 1318.76, 1217.58, 1159.26, 1134.64, 1227.63, 1465.98, 1179.33, 1349.20, 1310.41, 1333.38, 1341.44, - 1204.24, 1234.32, 1426.88, 1212.51, 1090.72, 1367.31, 1306.05, 1198.97, 1324.78, 1346.77, 1413.33, 1636.98, 1448.15, 1362.02, 1289.33, 1392.20, 1303.17, 1337.15, 1208.25, 1255.99, - 1570.02, 1285.29, 1254.08, 1266.47, 1371.72, 1524.30, 1318.69, 1309.52, 1280.95, 1448.40, 1241.72, 1305.67, 1428.22, 1313.74, 1429.82, 1245.78, 1457.28, 1413.81, 1374.30, 1425.78, - 1386.56, 1480.91, 1370.04, 1377.77, 1448.03, 1484.91, 1440.71, 1135.39, 1430.11, 1296.96, 1528.05, 1457.42, 1443.13, 1488.35, 1343.99, 1363.68, 1292.27, 1385.99, 1610.51, 1429.82, - 1581.36, 1555.99, 1405.08, 1588.68, 1483.02, 1433.00, 1484.10, 1337.65, 1216.33, 1530.77, 1414.60, 1352.93, 1410.85, 1404.43, 1499.88, 1654.33, 1419.27, 1381.92, 1446.47, 1313.75, - 1230.75, 1311.00, 1281.90, 1336.07, 1486.57, 1303.81, 1283.26, 1203.40, 1251.23, 1607.85, 1466.10, 1354.93, 1139.88, 1361.32, 1332.28, 1256.61, 1325.96, 1293.50, 1383.11, 1380.59, - 1410.64, 1503.91, 1421.53, 1431.41, 1325.24, 1542.63, 1332.45, 1445.11, 1361.08, 1475.89, 1355.22, 1261.77, 1358.17, 1276.94, 1568.52, 1461.70, 1382.64, 1434.41, 1416.95, 1289.51, - 1280.10, 1333.82, 1592.15, 1440.51, 1596.76, 1593.17, 1441.33, 1553.98, 1355.84, 1444.55, 1554.09, 1333.92, 1217.44, 1539.21, 1425.98, 1438.95, 1326.11, 1337.20, 1418.70, 1565.13, - 1346.15, 1290.62, 1390.47, 1296.12, 1222.93, 1208.62, 1157.11, 1232.63, 1431.54, 1168.34, 1209.56, 1266.56, 1335.13, 1510.47, 1218.02, 1308.08, 1163.80, 1395.41, 1241.01, 1233.40, - 1319.51, 1337.43, 1331.33, 1363.23, 1294.18, 1421.20, 1315.08, 1406.64, 1342.14, 1419.83, 1328.49, 1338.51, 1319.43, 1378.65, 1317.56, 1178.78, 1314.38, 1281.70, 1528.55, 1248.40, - 1287.56, 1396.60, 1304.52, 1274.46, 1270.10, 1141.44, 1508.64, 1261.97, 1498.70, 1296.16, 1294.33, 1447.11, 1317.39, 1387.30, 1419.28, 1175.32, 1093.19, 1393.37, 1432.13, 1394.91, - 1339.44, 1451.46, 1471.60, 1647.16, 1395.21, 1329.47, 1212.87, 1280.47, 1242.28, 1256.06, 1229.93, 1290.29, 1501.08, 1217.36, 1260.44, 1325.51, 1175.00, 1555.52, 1382.92, 1311.71, - 1136.58, 1354.00, 1299.64, 1349.04, 1383.59, 1351.55, 1450.07, 1263.82, 1348.83, 1480.50, 1323.08, 1472.22, 1313.66, 1503.74, 1278.77, 1374.14, 1383.02, 1426.02, 1387.34, 1283.57, - 1391.57, 1202.51, 1506.87, 1435.41, 1387.86, 1495.19, 1337.06, 1342.56, 1313.18, 1388.45, 1549.16, 1501.64, 1582.78, 1457.61, 1393.05, 1532.14, 1296.13, 1417.10, 1538.59, 1331.41, - 1146.52, 1483.76, 1364.16, 1342.58, 1339.84, 1231.51, 1392.19, 1541.26, 1379.06, 1284.47, 1333.99, 1168.79, 1240.25, 1243.38, 1225.68, 1192.46, 1478.92, 1143.23, 1194.31, 1184.91, - 1244.84, 1460.50, 1353.63, 1309.48, 1198.55, 1343.88, 1285.32, 1183.00, 1285.77, 1329.35, 1249.94, 1336.30, 1272.53, 1475.49, 1341.50, 1462.93, 1289.21, 1460.03, 1274.86, 1412.97, - 1309.66, 1320.84, 1207.50, 1154.06, 1326.60, 1294.83, 1430.91, 1303.30, 1412.77, 1334.93, 1417.29, 1186.29, 1167.63, 1136.88, 1547.47, 1292.33, 1537.90, 1413.62, 1477.22, 1370.40, - 1266.79, 1468.12, 1541.73, 1280.70, 1099.87, 1431.57, 1370.73, 1430.16, 1287.15, 1302.94, 1367.50, 1479.61, 1183.45, 1271.03, 1104.45, 1254.57, 1067.91, 1055.56, 1147.17, 1099.07, - 1412.01, 1175.60, 1122.21, 1168.64, 1217.95, 1435.20, 1244.95, 1174.28, 1037.30, 1346.03, 1126.56, 1133.71, 1207.31, 1213.28, 1396.69, 1246.52, 1310.06, 1341.45, 1199.27, 1302.28, - 1193.38, 1415.50, 1300.40, 1293.62, 1265.19, 1312.18, 1194.04, 1070.98, 1200.29, 1231.26, 1382.38, 1245.62, 1289.17, 1253.46, 1203.08, 1216.75, 1216.75, 1113.40, 1511.99, 1333.84, - 1491.33, 1364.50, 1252.77, 1389.22, 1266.92, 1262.67, 1308.35, 1139.02, 1095.95, 1250.58, 1256.60, 1207.54, 1258.37, 1222.83, 1387.63, 1565.40, 1286.28, 1378.77, 1202.50, 1226.40, - 1233.51, 1272.39, 1135.10, 1272.53, 1450.78, 1205.86, 1172.64, 1251.87, 1293.64, 1408.35, 1253.49, 1169.40, 1094.99, 1473.96, 1156.60, 1152.69, 1240.37, 1336.59, 1256.09, 1270.34, - 1379.24, 1264.01, 1305.27, 1316.17, 1293.57, 1354.00, 1248.79, 1230.31, 1220.46, 1266.96, 1321.42, 1161.22, 1321.67, 1215.86, 1477.98, 1247.61, 1280.55, 1396.92, 1217.64, 1290.41, - 1120.19, 1274.98, 1522.36, 1319.65, 1452.76, 1448.01, 1346.93, 1538.98, 1387.19, 1302.15, 1393.31, 1255.87, 1105.50, 1455.56, 1369.93, 1209.40, 1381.89, 1430.12, 1450.82, 1635.71, - 1437.24, 1390.56, 1342.80, 1428.70, 1304.14, 1425.51, 1222.89, 1303.49, 1524.84, 1368.17, 1254.39, 1262.64, 1289.81, 1553.24, 1336.51, 1305.66, 1175.94, 1402.50, 1383.16, 1314.48, - 1333.52, 1364.53, 1348.77, 1331.30, 1485.87, 1504.13, 1293.29, 1503.41, 1250.85, 1495.27, 1310.55, 1416.37, 1483.68, 1408.91, 1391.24, 1197.45, 1403.04, 1310.95, 1529.08, 1376.88, - 1411.55, 1494.99, 1419.20, 1348.40, 1245.18, 1339.69, 1672.18, 1481.88, 1471.30, 1589.93, 1510.08, 1591.33, 1434.29, 1500.06, 1437.97, 1336.17, 1210.29, 1496.89, 1431.74, 1434.55, - 1109.32, 1160.85, 1183.75, 1317.10, 1136.56, 1202.62, 1257.64, 1211.35, 960.97, 1102.03, 1035.43, 1094.03, 1322.79, 1109.01, 1178.40, 1103.12, 1115.55, 1351.82, 1180.03, 1116.25, - 1067.68, 1210.60, 1141.34, 1138.26, 1164.25, 1188.62, 1145.14, 1166.63, 1151.11, 1266.50, 1196.94, 1283.88, 1029.97, 1290.98, 1111.12, 1167.39, 1194.87, 1163.32, 1146.74, 980.08, - 1133.81, 1213.24, 1390.11, 1235.55, 1185.48, 1129.37, 1195.50, 1057.05, 1045.65, 1150.77, 1310.88, 1207.02, 1306.82, 1266.99, 1191.95, 1332.92, 1186.43, 1196.87, 1277.65, 1113.34, - 997.77, 1325.07, 1240.91, 1192.01, 1328.43, 1524.76, 1378.11, 1655.42, 1482.31, 1257.37, 1371.89, 1391.01, 1290.70, 1320.22, 1278.98, 1259.12, 1517.19, 1396.03, 1312.04, 1322.48, - 1342.52, 1615.32, 1338.23, 1323.15, 1259.52, 1392.80, 1297.01, 1396.00, 1374.56, 1369.10, 1377.74, 1341.32, 1343.13, 1494.14, 1353.10, 1539.29, 1394.78, 1554.40, 1437.57, 1392.17, - 1436.09, 1462.98, 1462.19, 1287.17, 1353.18, 1347.42, 1494.53, 1417.34, 1416.12, 1472.78, 1293.32, 1307.72, 1291.17, 1426.14, 1707.64, 1393.30, 1626.75, 1552.00, 1554.54, 1585.40, - 1462.09, 1566.27, 1554.21, 1355.06, 1247.11, 1530.26, 1509.97, 1483.55, 1157.37, 1224.96, 1303.57, 1373.71, 1108.41, 1151.40, 1128.28, 1104.19, 1036.39, 1078.01, 1126.44, 1077.43, - 1260.49, 1049.67, 1093.87, 1150.62, 1191.45, 1340.40, 1063.97, 1177.66, 1092.67, 1192.58, 1171.95, 1114.64, 1132.36, 1187.56, 1184.95, 1098.46, 1242.38, 1252.91, 1146.14, 1213.53, - 1151.48, 1302.51, 1210.09, 1277.25, 1212.93, 1169.25, 1232.64, 1013.59, 1131.25, 1181.94, 1195.44, 1222.64, 1227.38, 1262.32, 1169.22, 1110.55, 1056.72, 1113.43, 1372.05, 1172.92, - 1341.51, 1333.83, 1318.03, 1297.42, 1128.36, 1286.40, 1432.39, 1234.76, 960.27, 1262.17, 1230.64, 1289.61, 1178.74, 1322.92, 1365.09, 1560.18, 1240.06, 1298.16, 1270.39, 1380.29, - 1178.59, 1282.83, 1131.41, 1247.39, 1454.86, 1299.12, 1234.57, 1251.17, 1226.32, 1393.81, 1315.78, 1187.97, 1116.85, 1296.71, 1258.36, 1319.93, 1404.14, 1256.31, 1250.91, 1225.50, - 1318.11, 1406.80, 1374.43, 1321.74, 1271.49, 1367.09, 1280.77, 1216.35, 1378.19, 1344.02, 1280.09, 1266.72, 1361.90, 1082.34, 1467.46, 1247.23, 1225.47, 1397.46, 1170.62, 1280.63, - 1215.11, 1305.35, 1472.73, 1402.19, 1438.47, 1387.88, 1343.98, 1551.27, 1286.53, 1306.61, 1473.54, 1268.90, 1026.88, 1435.20, 1338.70, 1201.07, 1205.67, 1180.31, 1277.09, 1487.67, - 1275.37, 1205.90, 1168.27, 1151.28, 1266.29, 1223.82, 1025.42, 1126.89, 1418.77, 1258.73, 1151.18, 1185.15, 1201.54, 1305.38, 1224.83, 1195.85, 1156.78, 1236.28, 1140.40, 1218.58, - 1264.79, 1310.85, 1267.30, 1276.64, 1345.50, 1424.70, 1313.61, 1274.54, 1094.44, 1262.35, 1244.23, 1306.83, 1273.37, 1289.96, 1211.66, 1111.85, 1231.99, 1238.70, 1388.57, 1291.91, - 1313.12, 1363.81, 1206.82, 1224.65, 1157.49, 1166.88, 1407.36, 1380.27, 1427.48, 1442.76, 1246.20, 1427.56, 1280.26, 1204.75, 1406.67, 1269.74, 1098.59, 1504.81, 1333.90, 1320.63, - 1439.39, 1500.46, 1521.08, 1643.49, 1370.21, 1362.21, 1399.55, 1373.25, 1288.44, 1307.67, 1256.60, 1368.86, 1587.53, 1351.12, 1269.76, 1298.72, 1277.12, 1573.40, 1379.21, 1313.94, - 1350.92, 1346.48, 1358.60, 1362.78, 1385.25, 1415.82, 1417.94, 1276.20, 1399.87, 1503.54, 1365.93, 1488.50, 1229.29, 1605.94, 1378.20, 1407.51, 1463.04, 1487.27, 1308.27, 1295.92, - 1479.90, 1329.27, 1537.17, 1375.43, 1384.39, 1498.94, 1355.79, 1248.86, 1266.85, 1343.97, 1577.34, 1492.68, 1574.08, 1540.48, 1430.11, 1616.07, 1314.66, 1394.15, 1547.96, 1343.40, - 1238.82, 1453.75, 1400.22, 1411.65, 1266.02, 1414.66, 1393.70, 1586.89, 1439.13, 1147.83, 1388.78, 1205.49, 1210.84, 1220.89, 1086.58, 1282.55, 1383.51, 1173.76, 1187.24, 1206.61, - 1189.22, 1466.96, 1221.41, 1281.40, 1112.21, 1303.78, 1244.05, 1199.54, 1150.01, 1291.89, 1187.27, 1271.99, 1300.04, 1388.98, 1249.89, 1377.25, 1331.37, 1344.50, 1185.39, 1369.23, - 1297.42, 1346.96, 1344.56, 1085.52, 1322.79, 1161.28, 1369.76, 1327.06, 1254.11, 1295.80, 1175.43, 1147.85, 1186.42, 1235.36, 1547.78, 1293.41, 1462.35, 1358.42, 1280.40, 1305.61, - 1284.39, 1322.74, 1458.59, 1227.66, 1242.84, 1422.63, 1283.41, 1293.64, 1236.86, 1238.83, 1325.46, 1339.01, 1243.56, 1276.09, 1223.38, 1317.69, 1026.85, 1158.69, 1102.14, 1115.35, - 1243.15, 1152.42, 1207.79, 1174.65, 1257.85, 1356.79, 1174.03, 1151.82, 1116.41, 1320.78, 1188.24, 1150.60, 1187.63, 1218.89, 1267.38, 1132.95, 1250.98, 1318.38, 1122.67, 1235.94, - 1204.07, 1331.33, 1247.02, 1269.95, 1240.11, 1262.19, 1126.53, 1030.14, 1222.95, 1211.25, 1363.31, 1343.91, 1257.16, 1283.36, 1396.42, 1256.45, 1195.48, 1121.06, 1473.56, 1234.76, - 1363.67, 1305.92, 1345.16, 1403.26, 1201.26, 1268.59, 1298.15, 1035.01, 1016.79, 1252.66, 1301.61, 1217.53, 1294.85, 1272.48, 1438.89, 1559.17, 1373.48, 1459.73, 1309.49, 1395.41, - 1253.73, 1330.35, 1170.63, 1251.99, 1459.50, 1183.12, 1196.73, 1321.25, 1313.51, 1423.84, 1327.71, 1202.91, 1222.77, 1513.00, 1291.28, 1205.45, 1366.21, 1464.72, 1368.94, 1347.14, - 1408.92, 1530.45, 1289.40, 1376.09, 1313.88, 1407.88, 1279.27, 1403.69, 1335.38, 1386.07, 1362.59, 1073.05, 1270.84, 1284.84, 1526.29, 1415.24, 1394.95, 1447.69, 1398.90, 1305.83, - 1274.60, 1252.84, 1587.27, 1371.74, 1467.79, 1434.15, 1375.48, 1545.78, 1266.71, 1317.48, 1572.39, 1244.32, 1174.21, 1468.65, 1413.09, 1290.17, 1197.21, 1155.17, 1263.35, 1275.64, - 1172.47, 1166.75, 1044.69, 1269.30, 1050.90, 1086.32, 1023.80, 1087.59, 1323.49, 973.71, 1130.29, 1094.06, 1026.61, 1277.66, 1148.16, 1004.99, 1077.11, 1247.31, 1140.63, 1135.91, - 1193.23, 1158.95, 1238.92, 1111.04, 1119.26, 1365.83, 1098.28, 1154.73, 1024.14, 1265.05, 1204.07, 1293.20, 1264.65, 1157.76, 1059.30, 1018.65, 1143.54, 1143.00, 1259.12, 1201.64, - 1150.86, 1251.88, 1317.65, 1162.50, 992.08, 1126.13, 1323.76, 1158.03, 1267.61, 1293.64, 1237.19, 1384.30, 1025.94, 1139.64, 1297.74, 1216.18, 993.00, 1300.77, 1218.99, 1093.70, - 1311.48, 1379.92, 1391.74, 1445.09, 1292.05, 1323.08, 1298.06, 1391.88, 1159.64, 1262.33, 1149.94, 1219.13, 1434.55, 1241.38, 1228.38, 1255.36, 1287.72, 1541.03, 1349.55, 1235.28, - 1182.24, 1330.28, 1208.99, 1294.62, 1384.90, 1249.50, 1334.11, 1137.09, 1360.42, 1419.80, 1252.52, 1460.52, 1364.99, 1483.29, 1262.38, 1290.85, 1393.34, 1474.44, 1301.33, 1126.24, - 1332.38, 1186.72, 1429.03, 1304.63, 1254.23, 1479.85, 1226.02, 1171.24, 1321.09, 1285.88, 1477.04, 1426.97, 1464.75, 1483.92, 1313.67, 1615.16, 1302.34, 1412.35, 1390.38, 1185.07, - 1031.23, 1431.41, 1362.11, 1279.65, 1147.52, 1265.17, 1338.69, 1294.82, 1081.53, 1155.02, 1171.38, 1284.06, 996.85, 1085.68, 1079.02, 1035.53, 1365.52, 1111.12, 1050.53, 1170.60, - 1154.94, 1401.82, 1131.67, 1165.38, 1080.77, 1251.29, 1187.41, 1202.82, 1161.96, 1166.27, 1264.96, 1224.00, 1232.78, 1356.04, 1235.77, 1367.99, 1080.91, 1395.61, 1116.94, 1197.89, - 1152.28, 1282.20, 1265.43, 1105.87, 1160.68, 1185.00, 1377.18, 1160.41, 1237.22, 1369.00, 1172.74, 1143.98, 1164.60, 1059.15, 1490.22, 1281.17, 1272.72, 1306.11, 1257.99, 1435.04, - 1156.08, 1275.73, 1268.04, 1056.30, 962.94, 1269.43, 1272.12, 1262.24, 1212.76, 1148.18, 1322.38, 1439.61, 1326.34, 1348.20, 1146.04, 1213.72, 1202.08, 1253.69, 1144.32, 1217.91, - 1487.40, 1187.52, 1089.16, 1188.73, 1165.73, 1402.32, 1221.57, 1045.12, 1064.80, 1326.59, 1127.45, 1105.51, 1205.64, 1341.33, 1306.25, 1205.99, 1321.27, 1307.26, 1239.29, 1379.26, - 1220.08, 1373.86, 1274.71, 1285.41, 1272.40, 1249.75, 1264.54, 1089.46, 1183.74, 1163.74, 1415.27, 1413.09, 1297.57, 1262.34, 1355.14, 1284.73, 1208.88, 1302.79, 1486.06, 1227.25, - 1438.54, 1249.08, 1329.12, 1497.28, 1315.91, 1372.41, 1364.22, 1205.45, 1057.81, 1386.32, 1352.89, 1294.29, 1325.27, 1230.70, 1321.97, 1486.89, 1399.78, 1294.22, 1267.40, 1343.29, - 1235.20, 1270.54, 1121.95, 1250.46, 1478.94, 1205.37, 1219.79, 1152.37, 1161.98, 1466.89, 1362.33, 1232.15, 1071.75, 1374.74, 1195.27, 1254.65, 1194.23, 1331.21, 1282.74, 1387.72, - 1327.09, 1451.54, 1293.32, 1388.75, 1173.54, 1410.52, 1246.23, 1421.01, 1352.69, 1347.36, 1225.86, 1172.25, 1214.56, 1218.43, 1476.12, 1327.09, 1228.78, 1331.55, 1374.88, 1216.15, - 1184.61, 1275.82, 1542.57, 1276.47, 1440.43, 1462.71, 1422.04, 1461.29, 1230.16, 1392.49, 1467.53, 1279.27, 1118.19, 1440.74, 1458.13, 1403.59, 1368.83, 1301.71, 1410.11, 1550.70, - 1329.09, 1376.40, 1284.55, 1321.19, 1211.98, 1352.49, 1185.79, 1269.39, 1571.69, 1236.95, 1198.81, 1316.00, 1245.78, 1465.14, 1349.26, 1275.25, 1176.92, 1332.87, 1268.57, 1195.62, - 1258.48, 1351.58, 1365.71, 1308.49, 1346.47, 1406.09, 1215.81, 1464.78, 1268.32, 1487.75, 1278.61, 1384.99, 1346.72, 1299.86, 1301.33, 1129.20, 1267.63, 1200.91, 1519.21, 1366.10, - 1359.52, 1400.78, 1292.35, 1266.57, 1199.34, 1314.76, 1593.66, 1317.76, 1464.75, 1440.56, 1359.43, 1498.53, 1235.95, 1396.02, 1470.29, 1225.62, 1121.64, 1508.88, 1415.02, 1354.13, - 1094.40, 1256.05, 1306.23, 1484.59, 1159.38, 1184.43, 1160.58, 1239.94, 1066.13, 1120.31, 1084.26, 1107.13, 1232.42, 1185.27, 1122.73, 1218.90, 1158.50, 1390.26, 1222.39, 1203.27, - 1045.68, 1255.68, 1168.27, 1176.79, 1298.02, 1267.50, 1307.26, 1289.89, 1247.03, 1287.59, 1222.51, 1262.53, 1148.63, 1271.35, 1245.51, 1187.88, 1234.49, 1307.71, 1249.04, 1116.37, - 1219.62, 1218.57, 1349.69, 1204.77, 1223.39, 1327.52, 1178.79, 1126.71, 1144.74, 1082.20, 1503.34, 1301.65, 1392.24, 1318.44, 1260.89, 1274.02, 1282.23, 1266.53, 1428.87, 1171.14, - 1111.19, 1426.06, 1228.13, 1162.35, 1290.22, 1234.24, 1447.04, 1554.34, 1329.19, 1395.15, 1224.29, 1368.36, 1262.15, 1235.36, 1078.19, 1217.33, 1493.90, 1206.57, 1278.17, 1261.99, - 1207.40, 1527.35, 1164.25, 1225.90, 1209.26, 1448.77, 1186.13, 1225.96, 1427.34, 1285.64, 1345.22, 1242.62, 1319.73, 1382.43, 1353.37, 1346.72, 1312.13, 1358.70, 1315.08, 1232.98, - 1254.44, 1394.73, 1317.85, 1135.92, 1376.34, 1246.70, 1506.46, 1352.52, 1373.02, 1465.13, 1343.40, 1325.84, 1297.73, 1252.62, 1522.17, 1325.26, 1533.99, 1484.58, 1420.57, 1539.40, - 1309.14, 1336.26, 1459.18, 1308.33, 1187.05, 1544.99, 1431.61, 1252.38, 1297.08, 1386.36, 1534.82, 1508.74, 1322.47, 1439.91, 1396.94, 1350.46, 1277.41, 1225.67, 1333.70, 1327.48, - 1505.64, 1263.33, 1252.28, 1351.43, 1316.36, 1539.11, 1348.90, 1296.86, 1176.41, 1429.35, 1293.29, 1275.66, 1397.76, 1408.99, 1357.66, 1318.09, 1363.31, 1513.22, 1427.17, 1492.98, - 1366.35, 1582.13, 1356.30, 1444.21, 1382.33, 1365.70, 1420.20, 1217.78, 1432.58, 1228.45, 1616.54, 1409.56, 1307.97, 1475.86, 1318.09, 1367.11, 1286.74, 1257.13, 1573.40, 1372.58, - 1447.57, 1427.08, 1471.14, 1566.62, 1257.12, 1423.67, 1589.79, 1344.49, 1130.92, 1498.77, 1430.68, 1448.58, 1273.37, 1187.48, 1364.40, 1523.23, 1134.45, 1280.58, 1181.08, 1208.90, - 1122.63, 1174.70, 1126.42, 1201.24, 1346.38, 1141.12, 1131.35, 1126.39, 1096.53, 1371.79, 1273.42, 1263.91, 1027.28, 1217.60, 1233.67, 1146.90, 1230.50, 1199.41, 1100.08, 1152.27, - 1273.63, 1323.58, 1214.36, 1346.47, 1135.80, 1375.39, 1235.42, 1336.22, 1267.26, 1262.96, 1092.23, 1234.82, 1264.79, 1214.61, 1348.77, 1253.45, 1122.38, 1239.97, 1224.84, 1152.76, - 1134.34, 1142.76, 1429.84, 1189.04, 1387.07, 1278.77, 1361.50, 1392.18, 1206.86, 1334.71, 1346.73, 1242.13, 1050.60, 1341.34, 1260.75, 1238.45, 1259.03, 1452.68, 1421.62, 1570.44, - 1251.15, 1244.67, 1329.80, 1327.47, 1172.33, 1235.11, 1245.45, 1199.66, 1397.00, 1148.54, 1301.25, 1264.99, 1293.76, 1468.17, 1340.31, 1238.17, 1251.76, 1361.59, 1341.50, 1352.14, - 1323.34, 1308.28, 1426.95, 1417.59, 1269.54, 1456.13, 1317.12, 1445.25, 1312.21, 1459.87, 1347.29, 1358.24, 1396.66, 1443.73, 1350.70, 1268.52, 1365.85, 1364.99, 1421.07, 1307.91, - 1352.22, 1391.29, 1355.71, 1216.58, 1176.76, 1202.96, 1642.02, 1413.84, 1638.88, 1448.85, 1415.71, 1453.51, 1356.51, 1397.14, 1551.89, 1241.79, 1051.81, 1481.01, 1375.11, 1306.43, - 1391.90, 1448.82, 1525.69, 1650.86, 1352.60, 1398.71, 1409.39, 1522.05, 1223.15, 1417.08, 1140.56, 1282.95, 1512.92, 1306.01, 1310.24, 1293.54, 1347.89, 1517.58, 1384.35, 1324.97, - 1246.73, 1380.81, 1304.58, 1326.74, 1381.90, 1365.68, 1340.00, 1292.61, 1463.39, 1444.67, 1343.18, 1426.27, 1341.80, 1491.57, 1423.12, 1381.26, 1448.98, 1411.46, 1300.85, 1256.10, - 1367.57, 1251.11, 1535.47, 1420.20, 1447.88, 1459.55, 1441.55, 1314.46, 1233.96, 1360.85, 1603.25, 1477.07, 1444.84, 1500.80, 1486.72, 1601.72, 1338.91, 1511.31, 1509.19, 1342.63, - 1213.00, 1555.80, 1461.04, 1324.73, 1350.26, 1407.60, 1553.58, 1622.25, 1309.04, 1278.07, 1257.23, 1263.75, 1204.42, 1237.60, 1135.64, 1323.82, 1440.34, 1206.64, 1147.32, 1284.33, - 1298.69, 1563.46, 1245.16, 1371.08, 1110.77, 1353.32, 1272.94, 1376.96, 1393.38, 1327.03, 1390.54, 1231.77, 1391.41, 1334.24, 1462.92, 1495.89, 1396.69, 1501.23, 1343.75, 1252.75, - 1338.90, 1593.07, 1375.33, 1226.33, 1407.39, 1229.39, 1527.84, 1289.46, 1396.80, 1388.67, 1198.63, 1211.68, 1330.36, 1218.02, 1483.55, 1494.09, 1524.05, 1427.59, 1263.21, 1483.71, - 1281.09, 1329.57, 1457.08, 1284.94, 1185.33, 1443.42, 1330.63, 1430.03, 1214.06, 1219.89, 1347.54, 1421.58, 1180.42, 1272.71, 1211.46, 1326.81, 1037.82, 1082.19, 1161.71, 1141.40, - 1350.77, 1189.16, 1100.50, 1203.64, 1121.20, 1380.45, 1222.09, 1115.74, 1117.06, 1254.62, 1148.37, 1123.30, 1181.78, 1308.93, 1173.63, 1212.08, 1175.13, 1206.51, 1158.92, 1354.48, - 1187.28, 1432.28, 1261.04, 1279.24, 1216.02, 1300.33, 1216.19, 1091.07, 1235.87, 1242.67, 1378.27, 1250.20, 1229.67, 1274.75, 1192.17, 1186.72, 1065.46, 1210.51, 1413.41, 1192.26, - 1319.02, 1308.81, 1343.64, 1323.26, 1216.37, 1278.10, 1388.78, 1165.99, 1078.57, 1239.04, 1337.30, 1274.60, 1349.44, 1467.96, 1499.66, 1723.01, 1394.09, 1391.72, 1456.78, 1508.54, - 1285.27, 1410.21, 1227.75, 1258.55, 1568.65, 1294.37, 1346.73, 1355.97, 1291.39, 1491.92, 1433.87, 1383.22, 1234.42, 1480.98, 1431.55, 1394.94, 1451.04, 1461.42, 1480.30, 1390.20, - 1451.88, 1559.52, 1316.89, 1396.52, 1385.16, 1549.24, 1376.21, 1352.67, 1490.72, 1377.56, 1324.12, 1288.39, 1486.11, 1401.94, 1597.30, 1393.09, 1393.10, 1527.19, 1346.17, 1403.61, - 1329.84, 1428.33, 1697.28, 1486.74, 1610.30, 1524.46, 1536.59, 1601.98, 1406.43, 1537.88, 1518.79, 1379.87, 1151.81, 1615.09, 1448.84, 1386.40, 1198.14, 1206.61, 1238.94, 1358.98, - 1104.33, 1060.02, 1132.03, 1218.76, 1148.86, 1139.73, 1011.63, 1011.10, 1253.39, 1145.71, 1046.80, 1098.42, 1133.10, 1332.54, 1114.50, 1108.41, 1095.69, 1186.49, 1088.61, 1177.96, - 1179.91, 1080.40, 1232.01, 1178.43, 1295.16, 1337.88, 1089.30, 1138.30, 982.34, 1238.16, 1193.96, 1128.41, 1226.30, 1110.66, 1201.22, 1026.73, 1099.94, 1082.45, 1286.87, 1182.08, - 1161.86, 1229.94, 1118.10, 1169.49, 1059.97, 1106.63, 1337.81, 1198.73, 1338.76, 1140.70, 1176.55, 1411.23, 1066.54, 1225.73, 1285.37, 1105.53, 995.55, 1251.52, 1296.70, 1183.81, - 1336.82, 1359.41, 1531.23, 1506.89, 1277.25, 1341.98, 1207.09, 1441.27, 1245.61, 1279.99, 1171.33, 1203.39, 1552.78, 1221.36, 1278.65, 1229.00, 1212.91, 1567.53, 1327.70, 1240.24, - 1221.25, 1366.21, 1299.23, 1329.50, 1364.06, 1221.40, 1345.24, 1276.10, 1358.50, 1499.46, 1370.30, 1533.58, 1307.25, 1541.06, 1373.60, 1256.80, 1411.07, 1472.58, 1381.63, 1209.79, - 1385.44, 1228.53, 1579.26, 1332.83, 1430.57, 1425.45, 1391.60, 1288.74, 1244.24, 1275.17, 1516.60, 1474.56, 1448.48, 1489.99, 1368.60, 1592.46, 1335.75, 1411.22, 1432.70, 1267.68, - 1041.35, 1491.54, 1498.69, 1323.89, 1179.47, 1288.17, 1343.09, 1495.42, 1190.80, 1208.26, 1233.67, 1266.03, 1009.92, 1189.92, 1079.33, 1226.48, 1415.04, 1174.65, 1095.22, 1124.00, - 1118.95, 1334.79, 1243.54, 1187.79, 1081.39, 1204.17, 1153.96, 1225.61, 1165.12, 1278.03, 1207.02, 1105.44, 1266.90, 1290.10, 1156.28, 1332.57, 1130.42, 1364.51, 1124.01, 1162.57, - 1257.70, 1224.27, 1163.35, 1089.64, 1331.68, 1111.06, 1321.76, 1210.18, 1203.34, 1320.04, 1119.50, 1162.15, 1211.72, 1226.56, 1418.76, 1345.12, 1364.04, 1344.66, 1322.72, 1369.63, - 1197.77, 1342.54, 1295.97, 1116.95, 1010.17, 1336.54, 1207.94, 1273.88, 1234.22, 1145.59, 1273.48, 1352.87, 1111.27, 1229.25, 1105.41, 1236.72, 1114.96, 1128.70, 1001.74, 1106.89, - 1306.04, 1147.72, 1139.74, 1197.38, 1101.79, 1346.01, 1193.67, 1053.84, 997.60, 1243.23, 1132.20, 1140.96, 1188.55, 1128.00, 1141.85, 1152.23, 1186.89, 1293.55, 1165.47, 1241.90, - 1114.40, 1382.10, 1174.74, 1128.36, 1206.13, 1252.88, 1163.47, 1058.72, 1157.54, 1136.36, 1452.71, 1189.00, 1158.47, 1286.42, 1087.34, 1117.48, 1059.71, 1200.30, 1363.05, 1194.97, - 1287.62, 1371.77, 1242.62, 1381.55, 1162.41, 1153.85, 1296.64, 1183.91, 1104.32, 1302.69, 1248.47, 1127.57, 1541.65, 1449.79, 1543.72, 1669.84, 1552.41, 1442.87, 1419.15, 1516.45, - 1365.70, 1418.19, 1283.35, 1397.02, 1636.63, 1330.73, 1354.17, 1396.58, 1343.54, 1676.34, 1545.03, 1346.49, 1205.89, 1582.05, 1492.58, 1339.30, 1505.07, 1445.89, 1521.83, 1438.11, - 1514.20, 1537.87, 1457.46, 1563.90, 1380.61, 1640.16, 1372.38, 1522.58, 1470.40, 1587.96, 1514.42, 1344.65, 1492.48, 1285.49, 1721.76, 1459.99, 1440.06, 1547.91, 1372.78, 1443.99, - 1427.05, 1452.09, 1730.53, 1504.18, 1661.41, 1506.44, 1466.96, 1729.20, 1424.56, 1526.45, 1623.14, 1377.34, 1328.57, 1535.54, 1486.59, 1426.21, 1251.77, 1271.32, 1385.16, 1513.24, - 1214.50, 1329.88, 1281.79, 1400.95, 1181.91, 1193.78, 1112.89, 1162.70, 1409.60, 1309.09, 1324.74, 1200.69, 1270.76, 1404.72, 1270.69, 1247.59, 1133.68, 1276.68, 1301.66, 1287.50, - 1245.47, 1231.10, 1338.69, 1224.15, 1459.25, 1460.39, 1298.97, 1267.27, 1198.90, 1420.61, 1242.62, 1373.64, 1278.89, 1310.16, 1265.24, 1162.40, 1356.80, 1323.82, 1486.75, 1340.86, - 1272.36, 1425.28, 1252.32, 1345.57, 1290.27, 1190.63, 1562.44, 1439.95, 1476.36, 1440.54, 1413.98, 1475.85, 1274.13, 1332.14, 1366.48, 1104.44, 1112.21, 1401.95, 1403.46, 1325.29, - 1319.27, 1331.63, 1332.49, 1472.21, 1325.58, 1311.89, 1312.22, 1480.80, 1108.58, 1245.66, 1143.69, 1163.06, 1536.72, 1239.62, 1193.78, 1265.51, 1140.02, 1461.12, 1311.68, 1260.50, - 1243.53, 1288.05, 1197.69, 1253.15, 1319.70, 1266.22, 1272.58, 1219.48, 1293.98, 1487.47, 1178.02, 1344.72, 1268.21, 1537.06, 1283.91, 1289.73, 1395.59, 1376.58, 1319.33, 1045.68, - 1310.65, 1386.68, 1532.68, 1377.28, 1279.59, 1366.86, 1403.80, 1200.92, 1189.43, 1248.40, 1591.06, 1355.88, 1377.70, 1451.58, 1480.72, 1472.42, 1246.27, 1399.85, 1400.35, 1235.28, - 1124.89, 1407.01, 1319.83, 1301.32, 1415.13, 1365.13, 1452.19, 1604.11, 1500.89, 1435.12, 1385.70, 1390.88, 1370.55, 1371.05, 1134.74, 1227.42, 1515.15, 1335.13, 1326.54, 1236.30, - 1336.05, 1528.68, 1271.89, 1289.61, 1315.37, 1554.50, 1310.00, 1258.95, 1371.55, 1340.63, 1338.41, 1482.49, 1431.91, 1526.41, 1323.51, 1506.38, 1300.72, 1450.18, 1375.10, 1555.41, - 1385.68, 1408.90, 1439.56, 1172.49, 1303.00, 1284.11, 1561.57, 1510.37, 1392.96, 1444.72, 1355.37, 1344.74, 1334.03, 1237.49, 1698.61, 1301.14, 1501.12, 1497.12, 1406.61, 1668.88, - 1271.92, 1409.82, 1568.31, 1247.27, 1268.28, 1506.07, 1487.85, 1331.96, 1308.11, 1153.87, 1349.43, 1394.82, 1370.40, 1305.67, 1238.26, 1244.13, 1212.34, 1214.01, 1057.37, 1222.82, - 1462.63, 1146.31, 1176.44, 1233.37, 1219.87, 1417.39, 1256.23, 1141.71, 1104.27, 1342.60, 1107.36, 1166.71, 1269.03, 1296.78, 1394.75, 1203.71, 1303.12, 1292.80, 1349.62, 1268.20, - 1282.37, 1365.87, 1257.10, 1301.37, 1223.24, 1357.85, 1295.40, 1080.32, 1259.42, 1103.25, 1505.06, 1378.76, 1259.55, 1407.08, 1277.81, 1274.20, 1239.76, 1259.26, 1419.32, 1290.93, - 1461.62, 1392.77, 1208.72, 1487.44, 1233.27, 1167.01, 1408.25, 1166.39, 1115.86, 1476.19, 1408.85, 1255.06, 1318.64, 1417.57, 1440.11, 1502.85, 1377.80, 1417.09, 1331.16, 1321.85, - 1168.14, 1336.71, 1255.18, 1308.91, 1564.34, 1217.88, 1191.89, 1256.18, 1238.63, 1484.72, 1428.50, 1188.80, 1197.03, 1352.54, 1233.73, 1210.42, 1334.10, 1343.73, 1344.27, 1247.66, - 1422.34, 1501.63, 1308.65, 1456.09, 1333.68, 1538.77, 1309.99, 1554.85, 1368.45, 1371.48, 1286.55, 1192.83, 1372.63, 1244.44, 1486.45, 1447.41, 1312.79, 1416.11, 1354.57, 1335.71, - 1289.82, 1212.67, 1601.19, 1401.01, 1527.72, 1468.40, 1434.39, 1541.73, 1275.53, 1436.32, 1532.78, 1246.52, 1183.33, 1431.59, 1398.14, 1389.18 -}; - diff --git a/benchmarks/vec-matmul/dataset_test.h b/benchmarks/vec-matmul/dataset_test.h deleted file mode 100644 index d9244de..0000000 --- a/benchmarks/vec-matmul/dataset_test.h +++ /dev/null @@ -1,41 +0,0 @@ -// See LICENSE for license details. - - -#define ARRAY_SIZE 4 - - -#define DIM_SIZE 2 - -#if 1 -float input1_data[ARRAY_SIZE] = -{ - 0.37, 7.51, 5.09, 1.69 -}; - -float input2_data[ARRAY_SIZE] = -{ - 4.09, 3.02, 0.02, 8.91 -}; - -float verify_data[ARRAY_SIZE] = -{ - 1.65, 68.11, 20.84, 30.44 -}; -#endif -#if 0 -float input1_data[ARRAY_SIZE] = -{ - 1.0, 0.0, 0.0, 0.0 -}; - -float input2_data[ARRAY_SIZE] = -{ - 1.0, 0.0, 0.0, 1.0 -}; - -float verify_data[ARRAY_SIZE] = -{ - 1.0, 0.0, 0.0, 0.0 -}; -#endif - diff --git a/benchmarks/vec-matmul/matmul_gendata.pl b/benchmarks/vec-matmul/matmul_gendata.pl deleted file mode 100755 index c9d0ac7..0000000 --- a/benchmarks/vec-matmul/matmul_gendata.pl +++ /dev/null @@ -1,200 +0,0 @@ -#!/usr/bin/perl -w -#========================================================================== -# matmul_gendata.pl -# -# Author : Christopher Batten (cbatten@mit.edu) -# Date : April 29, 2005 -# -(our $usageMsg = <<'ENDMSG') =~ s/^\#//gm; -# -# Simple script which creates an input data set and the reference data -# for the matmul benchmark. -# -ENDMSG - -use strict "vars"; -use warnings; -no warnings("once"); -use Getopt::Long; - -#-------------------------------------------------------------------------- -# Command line processing -#-------------------------------------------------------------------------- - -our %opts; - -sub usage() -{ - - print "\n"; - print " Usage: matmul_gendata.pl [options] \n"; - print "\n"; - print " Options:\n"; - print " --help print this message\n"; - print " --size size of input data [1000]\n"; - print " --seed random seed [1]\n"; - print "$usageMsg"; - - exit(); -} - -sub processCommandLine() -{ - - $opts{"help"} = 0; - $opts{"size"} = 1000; - $opts{"seed"} = 1; - Getopt::Long::GetOptions( \%opts, 'help|?', 'size:i', 'seed:i' ) or usage(); - $opts{"help"} and usage(); - -} - -#-------------------------------------------------------------------------- -# Helper Functions -#-------------------------------------------------------------------------- - -sub printArray -{ - my $arrayName = $_[0]; - my $arrayRef = $_[1]; - - my $numCols = 20; - my $arrayLen = scalar(@{$arrayRef}); - - print "float ".$arrayName."[ARRAY_SIZE] = \n"; - print "{\n"; - - if ( $arrayLen <= $numCols ) { - print " "; - for ( my $i = 0; $i < $arrayLen; $i++ ) { - print sprintf("%3.2f",$arrayRef->[$i]); - if ( $i != $arrayLen-1 ) { - print ", "; - } - } - print "\n"; - } - - else { - my $numRows = int($arrayLen/$numCols); - for ( my $j = 0; $j < $numRows; $j++ ) { - print " "; - for ( my $i = 0; $i < $numCols; $i++ ) { - my $index = $j*$numCols + $i; - print sprintf("%3.2f",$arrayRef->[$index]); - if ( $index != $arrayLen-1 ) { - print ", "; - } - } - print "\n"; - } - - if ( $arrayLen > ($numRows*$numCols) ) { - print " "; - for ( my $i = 0; $i < ($arrayLen-($numRows*$numCols)); $i++ ) { - my $index = $numCols*$numRows + $i; - print sprintf("%3.2f",$arrayRef->[$index]); - if ( $index != $arrayLen-1 ) { - print ", "; - } - } - print "\n"; - } - - } - - print "};\n\n"; -} - - - -#-------------------------------------------------------------------------- -# Matmul -#-------------------------------------------------------------------------- - -# http://answers.oreilly.com/topic/418-how-to-multiply-matrices-in-perl/ - -sub mmult { - my ($m1,$m2) = @_; - my ($m1rows,$m1cols) = matdim($m1); - my ($m2rows,$m2cols) = matdim($m2); - - my $result = [ ]; - my ($i, $j, $k); - - for $i (range($m1rows)) { - for $j (range($m2cols)) { - for $k (range($m1cols)) { - $result->[$i][$j] += $m1->[$i][$k] * $m2->[$k][$j]; - } - } - } - return $result; -} - -sub range { 0 .. ($_[0] - 1) } - - -sub veclen { - my $ary_ref = $_[0]; - my $type = ref $ary_ref; - if ($type ne "ARRAY") { die "$type is bad array ref for $ary_ref" } - return scalar(@$ary_ref); -} - -sub matdim { - my $matrix = $_[0]; - my $rows = veclen($matrix); - my $cols = veclen($matrix->[0]); - return ($rows, $cols); -} - -#-------------------------------------------------------------------------- -# Main -#-------------------------------------------------------------------------- - -sub main() -{ - - processCommandLine(); - srand($opts{"seed"}); - - # create random input arrays - my $mat_values1; - my $mat_values2; - for ( my $i = 0; $i < $opts{"size"}; $i++ ) { - for ( my $j = 0; $j < $opts{"size"}; $j++ ) { - $mat_values1->[$i][$j] = (rand(9)); - $mat_values2->[$i][$j] = (rand(9)); - } - } - - # perform matmul - my $mat_results = mmult( $mat_values1, $mat_values2 ); - - # translate 2d arrays to 1d-somethings (I don't know how to code in perl - Chris) - my @values1; - my @values2; - my @results; - for ( my $i = 0; $i < $opts{"size"}; $i++ ) { - for ( my $j = 0; $j < $opts{"size"}; $j++ ) { - my $value1 = $mat_values1->[$i][$j]; - my $value2 = $mat_values2->[$i][$j]; - my $result = $mat_results->[$i][$j]; - push( @values1, $value1 ); - push( @values2, $value2 ); - push( @results, $result ); - } - } - - print "\n\#define ARRAY_SIZE ".($opts{"size"}*$opts{"size"})." \n\n"; - print "\n\#define DIM_SIZE ".$opts{"size"}." \n\n"; - - printArray( "input1_data", \@values1 ); - printArray( "input2_data", \@values2 ); - printArray( "verify_data", \@results); - -} - -main(); - diff --git a/benchmarks/vec-matmul/vec_matmul_asm.S b/benchmarks/vec-matmul/vec_matmul_asm.S deleted file mode 100644 index a9cad53..0000000 --- a/benchmarks/vec-matmul/vec_matmul_asm.S +++ /dev/null @@ -1,345 +0,0 @@ -# See LICENSE for license details. - -#***************************************************************************** -# matmul function (assembly version) -#----------------------------------------------------------------------------- - - -#-------------------------------------------------------------------------- -# Headers and Defines -#-------------------------------------------------------------------------- - -#include "pcr.h" - -# Here are some defines that make writing assembly code easier. - -# I'm using the knowledge that rLda will be placed in register a0, rA will be -# placed into register a1, etc., based on the calling convention for functions. - -#define rN a0 -#define rLda a0 -#define rA a1 -#define rB a2 -#define rC a3 -#define rATmp2 v0 -#define rBTmp2 s0 - - -# given vector-length -#define rVlen a7 - -# address of VT function -#define rVTAddr v1 -#define rTemp0 t0 - -# desired app vector length (number of elements to vectorize) -#define rNum t1 - -#define rATemp t2 -#define rBTemp t3 -#define rCTemp t4 -#define rI t5 -#define rJ s1 -#define rK s2 -#define rLda4 a4 -#define rK4 a5 -#define rI4 a6 - -# WARNING: do not write to the s0,...,s9 registers without first saving them to -# the stack! - -#-------------------------------------------------------------------------- -# void scalar_matmul_asm( int n, float a[], float b[], float c[] ) -#-------------------------------------------------------------------------- - - .text - .align 2 - .globl scalar_matmul_asm - .type scalar_matmul_asm,@function - -scalar_matmul_asm: - - # ***** Scalar Example ***** - - blez rLda, done # exit early if lda < 0 - - move rJ, zero -loopj: - move rI, zero -loopi: - move rK, zero -loopk: - mul rTemp0, rJ, rLda # calculate indices... I'm being SUPER naive here: - add rATemp, rK, rTemp0 # this could be a lot more clever! - slli rATemp, rATemp, 2 - add rATemp, rA, rATemp - - mul rTemp0, rK, rLda - add rBTemp, rI, rTemp0 - slli rBTemp, rBTemp, 2 - add rBTemp, rB, rBTemp - - mul rTemp0, rJ, rLda - add rCTemp, rI, rTemp0 - slli rCTemp, rCTemp, 2 - add rCTemp, rC, rCTemp - - flw f2, 0(rATemp) # again, I'm being very lazy... - # I can lift this out of the inner loop! - flw f3, 0(rBTemp) - flw f4, 0(rCTemp) - fmul.s f3, f2, f3 - fadd.s f4, f4, f3 - fsw f4, 0(rCTemp) -endk: - addi rK, rK, 1 - blt rK, rLda, loopk -endi: - addi rI, rI, 1 - blt rI, rLda, loopi -endj: - addi rJ, rJ, 1 - blt rJ, rLda, loopj -done: - ret - - -#-------------------------------------------------------------------------- -# void vt_matmul_asm( int n, float a[], float b[], float c[] ) -#-------------------------------------------------------------------------- - - - # ***** Vector-Thread Example ***** - - .globl vt_matmul_asm - .type vt_matmul_asm,@function - -vt_matmul_asm: - addi sp, sp, -24 - sd s0, 0(sp) - sd s1, 8(sp) - sd s2, 16(sp) - - - # turn on vector unit - setpcr status, SR_EV - - blez rLda, cpdone # exit early if lda < 0 - - - la rVTAddr, vtcode - slli rLda4, rLda, 2 - - #for starters ask for all the registers. We shouldn't need this many - #but we'll trim it when we have correctness in hand - vvcfgivl rVlen, rNum, 1, 5 - - - move rJ, zero -vec_loopj: - move rI, zero -vec_loopi: - slli rI4, rI, 2 - - sub rNum, rN, rI # book keeping - vsetvl rVlen, rNum # set the vector length - # rN is the desired (application) vector length - # rVlen is what vector length we were given - - ##################################### - # LOADS FOR C # - ##################################### - mul rTemp0, rJ, rLda4 - add rCTemp, rI4, rTemp0 - - add rCTemp, rC, rCTemp - vflw vf2, rCTemp - - add rCTemp, rCTemp, rLda4 - vflw vf4, rCTemp - - - ################################# - # address calculation lifts # - ################################# - mul rTemp0, rJ, rLda4 - add rATmp2, rA, rTemp0 - - add rBTmp2, rI4, rB - move rK, zero -vec_loopk: - slli rK4, rK, 2 - - ##################################### - # LOADS FOR A # - ##################################### - - add rATemp, rK4, rATmp2 - vflstw vf0, rATemp, zero - - add rATemp, rATemp, rLda4 - vflstw vf3, rATemp, zero - - - ##################################### - # LOADS FOR B # - ##################################### - mul rTemp0, rK, rLda4 - add rBTemp, rBTmp2, rTemp0 - vflw vf1, rBTemp - vf 0(rVTAddr) - - ##################################### - # LOADS FOR A # - ##################################### - add rATemp, rK4, rATmp2 - addi rATemp, rATemp, 4 - vflstw vf0, rATemp, zero - - add rATemp, rATemp, rLda4 - vflstw vf3, rATemp, zero - - - ##################################### - # LOADS FOR B # - ##################################### - add rBTemp, rBTemp, rLda4 - vflw vf1, rBTemp - vf 0(rVTAddr) - - ##################################### - # LOADS FOR A # - ##################################### - add rATemp, rK4, rATmp2 - addi rATemp, rATemp, 8 - vflstw vf0, rATemp, zero - - add rATemp, rATemp, rLda4 - vflstw vf3, rATemp, zero - - - ##################################### - # LOADS FOR B # - ##################################### - add rBTemp, rBTemp, rLda4 - vflw vf1, rBTemp - vf 0(rVTAddr) - - - ##################################### - # LOADS FOR A # - ##################################### - add rATemp, rK4, rATmp2 - addi rATemp, rATemp, 12 - vflstw vf0, rATemp, zero - - add rATemp, rATemp, rLda4 - vflstw vf3, rATemp, zero - - - ##################################### - # LOADS FOR B # - ##################################### - add rBTemp, rBTemp, rLda4 - vflw vf1, rBTemp - vf 0(rVTAddr) - -vec_endk: - addi rK, rK, 4 - blt rK, rLda, vec_loopk - -vec_endi: - ##################################### - # STORES FOR C # - ##################################### - vfsw vf4, rCTemp - sub rCTemp, rCTemp, rLda4 - vfsw vf2, rCTemp - - add rI, rI, rVlen - blt rI, rLda, vec_loopi -vec_endj: - addi rJ, rJ, 2 -# fence.v.l - blt rJ, rLda, vec_loopj - - -cpdone: - fence.v.l - ld s0, 0(sp) - ld s1, 8(sp) - ld s2, 16(sp) - addi sp, sp, 24 - - - ret - -vtcode: - # ADD YOUR VECTOR-ELEMENT CODE HERE ... - - #TODO: hit this with a fused multiply add. - - fmadd.s f2, f0, f1, f2 - fmadd.s f4, f3, f1, f4 - #fmadd.s f6, f5, f1, f6 - #fmadd.s f8, f7, f1, f8 - - - #fmul.s f1, f0, f1 - #fadd.s f2, f2, f1 - stop - -transpose: - # turn on vector unit - setpcr status, SR_EV - - - blez rLda, cpdone # exit early if lda < 0 - vvcfgivl rVlen, rNum, 1, 1 - - move rI, zero -tloopi: - sub rNum, rLda, rI - vsetvl rVlen, rNum - - move rJ, zero -tloopj: - - mul rTemp0, rJ, rLda - add rATemp, rI, rTemp0 - slli rATemp, rATemp, 2 - add rATemp, rA, rATemp - - mul rTemp0, rI, rLda - add rBTemp, rJ, rTemp0 - slli rBTemp, rBTemp, 2 - add rBTemp, rB, rBTemp - - #flw f0, 0(rBTemp) - #fsw f0, 0(rATemp) - vflstw vf0, rBTemp, rLda4 - vfsw vf0, rATemp - -tendj: - addi rJ, rJ, 1 - blt rJ, rLda, tloopj -tendi: - #addi rI, rI, 1 - add rI, rI, rVlen - blt rI, rLda, tloopi - - ret - # The C code uses a jalr instruction to call this function - # so we can use a jr to return back to where the function - # was called. Also known as "ret", for "return". - - ret - - - -##################################### -# NOPS TO AVOID OVERPREFETCH # -##################################### -# srli rTemp0, rLda, 4 -#nop_lp: addi rTemp0, rTemp0, -1 -# bgez rTemp0, nop_lp diff --git a/benchmarks/vec-matmul/vec_matmul_main.c b/benchmarks/vec-matmul/vec_matmul_main.c deleted file mode 100644 index 9554da8..0000000 --- a/benchmarks/vec-matmul/vec_matmul_main.c +++ /dev/null @@ -1,207 +0,0 @@ -// See LICENSE for license details. - -//************************************************************************** -// Vector-Thread Vector Matrix Multiply benchmark -//-------------------------------------------------------------------------- -// -// This benchmark multiplies two 2-D arrays together and writes the results to -// a third vector. The input data (and reference data) should be generated -// using the matmul_gendata.pl perl script and dumped to a file named -// dataset.h. - -#include "util.h" - -// Choose which implementation you wish to test... but leave only one on! -// (only the first one will be executed). -//#define SCALAR_C -//#define SCALAR_ASM -#define VT_ASM - -//-------------------------------------------------------------------------- -// Input/Reference Data - -//#include "dataset_test.h" -#include "dataset.h" - -//-------------------------------------------------------------------------- -// Helper functions - -int verify( int n, float test[], float correct[] ) -{ - int i; - for ( i = 0; i < n; i++ ) { - if ( test[i] > 1.02*correct[i] - || test[i] < 0.98*correct[i]) { -#if HOST_DEBUG - printf(" test[%d] : %3.2f\n", i, test[i]); - printf(" corr[%d] : %3.2f\n", i, correct[i]); -#endif - // tell us which index fails + 2 - // (so that if i==0,i==1 fails, we don't - // think it was a 'not-finished yet' or pass) - return i+10; - } - } - return 1; -} - -void finishTest( int correct, long long num_cycles, long long num_retired ) -{ - int toHostValue = correct; -#if HOST_DEBUG - if ( toHostValue == 1 ) - printf( "*** PASSED ***\n" ); - else - printf( "*** FAILED *** (tohost = %d)\n", toHostValue ); - exit(0); -#else - // we no longer run in -testrun mode, which means we can't use - // the tohost register to communicate "test is done" and "test results" - // so instead we will communicate through print* functions! - if ( correct == 1 ) - { - printstr( "*** PASSED *** (num_cycles = 0x" ); - printhex(num_cycles); - printstr( ", num_inst_retired = 0x"); - printhex(num_retired); - printstr( ")\n" ); - } - else - { - printstr( "*** FAILED *** (num_cycles = 0x"); - printhex(num_cycles); - printstr( ", num_inst_retired = 0x"); - printhex(num_retired); - printstr( ")\n" ); - } - exit(); -#endif -} - - -// deprecated - cr10/stats-enable register no longer exists -void setStats( int enable ) -{ -#if ( !HOST_DEBUG && SET_STATS ) - asm( "mtpcr %0, cr10" : : "r" (enable) ); -#endif -} - -long long getCycles() -{ - long long cycles = 1337; -#if ( !HOST_DEBUG && SET_STATS ) - __asm__ __volatile__( "rdcycle %0" : "=r" (cycles) ); -#endif - return cycles; -} - -long long getInstRetired() -{ - long long inst_retired = 1338; -#if ( !HOST_DEBUG && SET_STATS ) - __asm__ __volatile__( "rdinstret %0" : "=r" (inst_retired) ); -#endif - return inst_retired; -} - -//-------------------------------------------------------------------------- -// matmul function - -// scalar C implementation -void matmul(const int lda, const float A[], const float B[], float C[] ) -{ - int i, j, k; - - for ( j = 0; j < lda; j++ ) - for ( i = 0; i < lda; i++ ) - { - float cij = C[i + j*lda]; - for ( k = 0; k < lda; k++ ) - { - cij += A[j*lda + k] * B[k*lda + i]; - } - C[i + j*lda] = cij; - } -} - - -// assembly implementations can be found in *_asm.S - -//-------------------------------------------------------------------------- -// Main - -int main( int argc, char* argv[] ) -{ - int i,j; - long long start_cycles = 0; - long long stop_cycles = 0; - long long num_cycles; - long long start_retired = 0; - long long stop_retired = 0; - long long num_retired; - - float results_data[ARRAY_SIZE]; - for ( i = 0; i < DIM_SIZE; i++ ) - for ( j = 0; j < DIM_SIZE; j++ ) - results_data[i + j*DIM_SIZE] = 0.0f; - - // Output the input array - -#if HOST_DEBUG - printArray( "input1", ARRAY_SIZE, input1_data ); - printArray( "input2", ARRAY_SIZE, input2_data ); - printArray( "verify", ARRAY_SIZE, verify_data ); - printArray( "results", ARRAY_SIZE, results_data ); -#endif - - // -------------------------------------------------- - // If needed we preallocate everything in the caches - -#if PREALLOCATE - - - -#endif - - // -------------------------------------------------- - // Do the matmul - start_cycles = getCycles(); - start_retired = getInstRetired(); - -#ifdef SCALAR_C - matmul( DIM_SIZE, input1_data, input2_data, results_data ); -#else -#ifdef SCALAR_ASM - #if HOST_DEBUG==0 - scalar_matmul_asm( DIM_SIZE, input1_data, input2_data, results_data ); - #endif -#else -#ifdef VT_ASM - #if HOST_DEBUG==0 - vt_matmul_asm( DIM_SIZE, input1_data, input2_data, results_data ); - #endif -#endif -#endif -#endif - - - stop_cycles = getCycles(); - stop_retired = getInstRetired(); - num_cycles = stop_cycles - start_cycles; - num_retired = stop_retired - start_retired; - - - // -------------------------------------------------- - // Print out the results - -#if HOST_DEBUG - printArray( "results", ARRAY_SIZE, results_data ); -#endif - - - // -------------------------------------------------- - // Check the results - int correct = verify( ARRAY_SIZE, results_data, verify_data ); - finishTest(correct, num_cycles, num_retired); -} diff --git a/benchmarks/vec-vvadd/bmark.mk b/benchmarks/vec-vvadd/bmark.mk deleted file mode 100644 index 78ebff2..0000000 --- a/benchmarks/vec-vvadd/bmark.mk +++ /dev/null @@ -1,30 +0,0 @@ -#======================================================================= -# UCB CS250 Makefile fragment for benchmarks -#----------------------------------------------------------------------- -# -# Each benchmark directory should have its own fragment which -# essentially lists what the source files are and how to link them -# into an riscv and/or host executable. All variables should include -# the benchmark name as a prefix so that they are unique. -# - -vec_vvadd_c_src = \ - vec_vvadd_main.c \ - -vec_vvadd_riscv_src = \ - crt.S \ - vec_vvadd_asm.S - -vec_vvadd_c_objs = $(patsubst %.c, %.o, $(vec_vvadd_c_src)) -vec_vvadd_riscv_objs = $(patsubst %.S, %.o, $(vec_vvadd_riscv_src)) - -vec_vvadd_host_bin = vec-vvadd.host -$(vec_vvadd_host_bin) : $(vec_vvadd_c_src) - $(HOST_COMP) $^ -o $(vec_vvadd_host_bin) - -vec_vvadd_riscv_bin = vec-vvadd.riscv -$(vec_vvadd_riscv_bin) : $(vec_vvadd_c_objs) $(vec_vvadd_riscv_objs) - $(RISCV_LINK) $(RISCV_LINK_SYSCALL) $(vec_vvadd_c_objs) $(vec_vvadd_riscv_objs) -o $(vec_vvadd_riscv_bin) - -junk += $(vec_vvadd_c_objs) $(vec_vvadd_riscv_objs) \ - $(vec_vvadd_host_bin) $(vec_vvadd_riscv_bin) diff --git a/benchmarks/vec-vvadd/dataset.h b/benchmarks/vec-vvadd/dataset.h deleted file mode 100644 index 976896f..0000000 --- a/benchmarks/vec-vvadd/dataset.h +++ /dev/null @@ -1,173 +0,0 @@ -// See LICENSE for license details. - - -#define DATA_SIZE 1024 - -float input1_data[DATA_SIZE] = -{ - 41.59, 833.98, 564.92, 187.40, 749.75, 350.86, 132.42, 949.90, 584.06, 805.70, 621.44, 6.57, 931.73, 890.19, 392.50, 694.30, 961.50, 110.85, 116.64, 296.64, - 426.15, 314.26, 659.38, 774.03, 319.50, 678.95, 875.15, 376.99, 474.52, 938.39, 539.64, 569.21, 203.10, 280.59, 759.17, 606.49, 511.73, 657.85, 195.14, 81.76, - 267.13, 229.11, 337.80, 944.31, 902.33, 241.76, 913.03, 826.41, 933.10, 985.95, 195.94, 960.23, 566.85, 350.87, 649.08, 657.11, 181.07, 111.93, 859.03, 65.38, - 288.41, 349.32, 141.62, 905.27, 886.09, 264.13, 576.69, 979.62, 761.15, 241.01, 478.77, 499.56, 403.08, 222.09, 444.00, 721.13, 676.11, 317.98, 224.02, 937.91, - 288.16, 119.49, 615.12, 606.02, 389.63, 351.17, 455.08, 278.19, 367.94, 358.65, 584.29, 62.81, 985.38, 403.31, 346.66, 517.64, 559.24, 908.23, 775.53, 255.22, - 778.76, 598.70, 143.67, 33.87, 125.22, 941.32, 933.58, 799.68, 553.00, 431.48, 648.92, 952.26, 287.81, 19.55, 49.85, 86.34, 95.37, 441.32, 587.26, 614.94, - 382.15, 280.93, 808.48, 971.60, 819.34, 344.75, 450.92, 512.61, 965.23, 347.78, 808.67, 882.45, 537.55, 946.57, 701.25, 356.05, 567.96, 891.59, 22.08, 568.05, - 665.92, 423.06, 434.34, 158.95, 2.47, 84.01, 247.70, 49.41, 435.28, 792.95, 869.12, 486.44, 414.24, 369.14, 548.71, 518.09, 888.38, 682.27, 284.83, 264.53, - 499.48, 290.72, 897.15, 215.27, 731.10, 688.62, 251.21, 786.26, 555.77, 302.26, 528.37, 544.63, 322.31, 947.49, 287.49, 824.15, 304.91, 788.79, 733.63, 959.89, - 366.53, 722.70, 294.29, 975.54, 653.47, 748.94, 91.37, 378.81, 105.56, 102.96, 381.89, 651.77, 825.56, 840.65, 356.91, 148.28, 54.55, 140.19, 955.46, 343.09, - 533.74, 757.52, 521.69, 837.60, 592.30, 13.14, 173.27, 63.12, 121.08, 133.74, 758.23, 372.02, 951.71, 39.51, 129.91, 110.98, 847.87, 437.05, 255.51, 269.43, - 409.58, 628.32, 399.16, 549.49, 753.43, 564.11, 171.44, 19.41, 727.43, 501.57, 777.90, 43.09, 753.99, 81.39, 202.47, 853.24, 153.74, 760.34, 357.21, 943.33, - 922.66, 328.36, 496.72, 442.71, 516.93, 641.63, 276.71, 786.16, 113.96, 842.51, 907.08, 275.40, 237.13, 32.98, 784.54, 565.19, 357.36, 803.66, 819.14, 751.19, - 280.22, 85.45, 458.79, 454.92, 710.83, 459.50, 41.90, 253.04, 377.89, 508.40, 700.13, 860.38, 480.43, 741.22, 499.72, 709.19, 49.82, 371.43, 873.84, 945.74, - 992.29, 526.88, 721.83, 435.40, 232.94, 497.20, 697.84, 30.97, 348.62, 250.71, 350.43, 250.94, 573.58, 784.02, 749.08, 502.35, 823.63, 826.56, 170.19, 160.43, - 674.95, 32.57, 202.49, 143.61, 853.30, 90.19, 394.67, 107.54, 855.13, 106.95, 157.48, 6.02, 765.70, 204.09, 194.97, 574.49, 218.68, 526.07, 177.51, 239.54, - 698.98, 757.04, 706.64, 49.59, 84.46, 799.94, 893.26, 512.93, 373.43, 492.61, 14.70, 621.34, 83.22, 103.52, 794.61, 921.52, 643.16, 880.32, 834.18, 239.95, - 462.18, 114.13, 561.17, 529.93, 10.30, 997.07, 904.66, 387.08, 407.57, 105.47, 559.17, 936.96, 512.84, 409.16, 302.62, 202.29, 427.86, 613.96, 359.16, 521.47, - 684.36, 22.07, 185.67, 312.54, 107.15, 274.79, 387.52, 242.91, 486.42, 105.59, 698.95, 899.65, 770.03, 644.88, 80.86, 161.95, 407.27, 946.13, 30.14, 768.55, - 870.70, 113.84, 148.93, 62.24, 147.22, 838.37, 845.09, 432.80, 141.35, 211.37, 817.36, 821.24, 562.79, 364.45, 615.83, 495.66, 812.02, 916.81, 159.62, 430.76, - 803.39, 180.32, 544.52, 840.69, 458.36, 786.87, 872.83, 795.63, 806.35, 758.10, 104.71, 401.72, 254.16, 984.58, 136.35, 729.51, 584.46, 794.56, 414.82, 528.59, - 707.41, 554.08, 378.44, 766.91, 977.14, 236.84, 947.69, 229.98, 165.43, 505.78, 105.10, 704.89, 796.28, 140.34, 303.80, 795.40, 635.19, 560.05, 119.19, 8.94, - 532.12, 814.18, 37.37, 584.99, 739.88, 619.35, 767.29, 478.11, 57.63, 958.75, 784.42, 985.67, 837.44, 307.64, 67.92, 824.29, 996.62, 749.22, 171.61, 826.01, - 621.55, 155.29, 826.10, 43.35, 694.11, 80.98, 236.29, 747.66, 744.26, 265.92, 124.29, 731.39, 941.95, 425.61, 370.26, 320.28, 269.25, 542.98, 763.36, 752.33, - 915.79, 14.49, 1.02, 906.26, 995.56, 809.80, 560.98, 873.76, 972.51, 289.40, 509.58, 558.76, 970.08, 405.61, 579.55, 293.55, 251.18, 849.74, 129.09, 452.87, - 716.20, 86.61, 678.77, 181.77, 240.86, 335.99, 793.87, 641.72, 1.47, 320.21, 987.27, 646.93, 754.87, 958.84, 203.62, 142.11, 180.16, 299.98, 165.92, 761.46, - 974.39, 646.84, 559.81, 619.82, 422.99, 260.82, 565.90, 542.16, 492.49, 991.70, 745.63, 207.65, 372.46, 932.61, 664.40, 34.84, 533.95, 478.47, 908.95, 203.05, - 33.64, 214.19, 365.78, 892.41, 781.43, 680.21, 705.21, 688.64, 947.17, 386.39, 50.40, 101.30, 474.97, 399.09, 679.01, 330.13, 952.98, 471.66, 477.47, 725.77, - 713.76, 937.76, 529.17, 870.41, 77.99, 545.34, 907.70, 853.57, 143.68, 979.57, 239.21, 105.80, 365.64, 98.64, 54.56, 98.04, 440.05, 764.95, 315.62, 336.77, - 697.12, 774.98, 726.37, 324.62, 282.73, 536.06, 622.47, 594.54, 890.74, 75.13, 290.61, 496.26, 726.27, 449.55, 548.04, 135.51, 644.61, 838.43, 290.24, 767.27, - 162.90, 415.87, 491.71, 985.23, 116.70, 617.91, 859.64, 235.61, 282.59, 571.64, 913.20, 560.56, 194.94, 242.05, 782.79, 985.66, 728.32, 344.06, 430.86, 613.14, - 759.90, 176.81, 309.64, 333.97, 354.41, 310.11, 699.67, 46.29, 487.22, 503.74, 100.74, 393.42, 268.61, 314.32, 75.11, 345.99, 987.79, 600.60, 908.74, 384.95, - 92.09, 545.17, 277.13, 668.55, 351.48, 853.73, 863.11, 312.76, 100.68, 532.50, 567.78, 836.25, 370.79, 989.97, 461.42, 912.55, 182.04, 268.37, 160.27, 771.80, - 22.69, 854.15, 644.93, 17.22, 779.43, 911.42, 855.52, 137.54, 983.70, 717.12, 565.26, 719.22, 253.48, 785.55, 154.54, 196.92, 253.81, 447.04, 899.47, 5.34, - 325.97, 616.42, 309.07, 175.28, 159.88, 123.45, 838.83, 715.65, 550.54, 230.32, 82.39, 627.26, 324.56, 927.11, 103.12, 17.97, 966.92, 159.09, 177.28, 593.36, - 372.91, 393.86, 599.09, 745.91, 377.05, 865.47, 591.44, 553.27, 440.27, 345.91, 593.69, 290.57, 908.14, 544.77, 377.87, 456.22, 781.05, 110.18, 495.91, 896.30, - 806.64, 700.92, 548.12, 340.34, 29.42, 829.88, 630.52, 546.09, 613.55, 972.27, 116.31, 313.81, 904.18, 971.17, 607.11, 794.60, 169.61, 896.60, 507.27, 916.31, - 431.26, 339.73, 147.92, 224.85, 112.36, 580.34, 834.44, 134.00, 948.54, 201.62, 488.69, 396.03, 797.99, 478.84, 769.12, 574.12, 485.10, 339.64, 721.39, 451.01, - 821.46, 744.32, 0.32, 594.88, 277.92, 120.10, 680.48, 757.52, 555.46, 847.72, 517.32, 379.19, 505.76, 904.86, 246.20, 243.02, 394.14, 430.59, 214.70, 244.51, - 524.70, 399.78, 172.96, 304.80, 620.47, 594.89, 535.34, 698.85, 159.58, 750.18, 809.80, 454.71, 76.00, 93.16, 167.76, 16.56, 853.29, 494.86, 324.64, 78.75, - 52.12, 112.44, 10.83, 342.60, 730.66, 680.71, 287.57, 961.30, 92.22, 626.09, 912.54, 616.39, 860.45, 744.11, 744.54, 478.60, 615.31, 508.17, 914.51, 810.39, - 288.65, 974.52, 129.30, 581.07, 548.96, 868.10, 981.49, 270.03, 623.03, 653.03, 626.15, 990.32, 386.70, 323.86, 472.86, 164.65, 239.77, 189.69, 865.12, 231.99, - 356.20, 152.84, 825.88, 328.59, 390.54, 848.08, 38.56, 402.90, 616.86, 546.07, 206.41, 2.50, 783.35, 890.15, 815.17, 831.95, 665.61, 410.53, 94.20, 246.60, - 422.12, 211.55, 675.13, 9.90, 374.19, 426.82, 64.89, 53.51, 758.63, 811.88, 500.64, 437.97, 335.95, 328.20, 237.48, 415.70, 468.47, 684.52, 565.24, 305.75, - 449.18, 597.90, 136.86, 882.80, 383.10, 938.05, 268.60, 115.02, 908.44, 50.25, 952.61, 366.36, 397.07, 257.43, 231.61, 667.39, 35.32, 990.98, 443.25, 213.68, - 389.05, 13.39, 621.15, 52.84, 612.70, 934.69, 953.51, 828.93, 462.31, 621.74, 812.65, 522.67, 672.37, 57.38, 313.44, 352.52, 55.66, 972.52, 753.45, 416.32, - 879.66, 864.63, 572.40, 163.63, 721.06, 12.23, 643.51, 507.11, 968.33, 781.67, 840.17, 242.23, 630.38, 810.57, 795.03, 435.93, 885.97, 599.49, 696.83, 643.98, - 93.08, 710.36, 785.04, 112.34, 581.66, 12.82, 923.01, 615.98, 652.77, 359.69, 261.90, 233.64, 609.49, 686.46, 539.88, 118.11, 560.80, 739.29, 20.45, 317.91, - 976.37, 573.39, 386.70, 772.54, 663.59, 504.89, 212.06, 888.98, 907.19, 420.67, 737.06, 516.55, 25.06, 219.92, 798.00, 716.93, 452.20, 692.03, 683.97, 459.81, - 815.55, 323.78, 612.76, 247.55, 116.16, 352.60, 281.43, 738.83, 290.13, 909.66, 645.24, 625.86, 932.73, 220.19, 685.31, 373.01, 876.04, 646.60, 412.10, 955.61, - 664.07, 850.22, 783.40, 392.65, 707.73, 422.19, 523.39, 682.29, 37.63, 156.05, 43.20, 767.99, 124.71, 549.18, 814.54, 251.25, 214.66, 212.34, 572.71, 898.81, - 956.34, 608.88, 651.21, 434.82 -}; - -float input2_data[DATA_SIZE] = -{ - 454.04, 335.65, 1.77, 989.44, 365.91, 572.77, 64.10, 153.41, 216.37, 140.33, 210.68, 572.73, 339.99, 593.28, 898.42, 228.37, 12.04, 883.21, 750.17, 646.05, - 500.44, 436.35, 701.84, 812.45, 981.34, 150.82, 696.06, 564.27, 272.22, 258.80, 647.13, 509.06, 88.49, 703.96, 669.95, 375.24, 551.64, 936.95, 592.64, 569.16, - 952.14, 800.96, 584.36, 643.10, 368.06, 489.01, 328.85, 313.03, 592.75, 388.47, 543.97, 649.72, 979.53, 997.36, 814.30, 79.21, 208.54, 998.28, 629.87, 847.38, - 704.44, 997.07, 253.56, 715.50, 430.09, 415.56, 538.54, 700.34, 4.53, 494.85, 100.03, 864.77, 693.83, 416.61, 296.87, 285.92, 620.97, 78.51, 351.59, 540.87, - 646.76, 169.92, 527.62, 289.32, 796.30, 801.60, 720.50, 758.92, 745.48, 92.20, 989.02, 271.26, 853.35, 788.60, 531.96, 222.70, 461.08, 241.60, 358.39, 332.17, - 684.58, 740.02, 446.29, 311.97, 743.59, 557.40, 479.07, 557.42, 925.39, 796.31, 357.74, 891.05, 666.07, 514.82, 557.92, 870.02, 853.32, 440.22, 61.13, 678.78, - 396.53, 9.60, 17.28, 170.59, 291.21, 380.26, 536.10, 185.83, 917.13, 539.78, 983.16, 887.64, 54.78, 612.25, 951.51, 479.91, 151.50, 7.63, 641.97, 335.43, - 730.12, 95.14, 728.36, 280.47, 395.18, 688.69, 911.04, 476.88, 815.06, 729.61, 265.14, 127.81, 236.25, 214.41, 180.89, 6.46, 503.57, 596.12, 173.66, 643.66, - 346.93, 599.78, 68.90, 849.86, 658.43, 619.45, 121.67, 131.85, 828.62, 667.11, 433.76, 487.96, 753.88, 125.79, 626.75, 14.42, 10.59, 403.62, 106.00, 703.45, - 818.16, 964.09, 406.41, 874.40, 856.38, 86.58, 60.48, 660.95, 667.96, 153.07, 121.32, 98.11, 412.62, 236.34, 12.41, 423.64, 965.21, 216.22, 621.17, 361.66, - 921.78, 715.22, 647.63, 299.72, 886.82, 682.62, 36.45, 493.97, 551.05, 537.23, 969.91, 643.13, 434.31, 415.39, 303.19, 438.67, 860.46, 203.12, 478.66, 988.42, - 675.20, 719.24, 990.64, 338.47, 450.81, 633.17, 155.33, 646.75, 452.99, 427.23, 509.17, 988.99, 426.10, 12.74, 483.26, 142.23, 339.79, 390.81, 50.95, 171.16, - 601.54, 105.47, 968.89, 121.26, 879.98, 81.89, 870.32, 600.55, 603.29, 871.73, 887.50, 610.56, 404.65, 234.16, 745.69, 526.44, 275.51, 441.57, 226.96, 752.86, - 943.47, 726.29, 709.63, 201.25, 54.32, 758.41, 53.13, 397.79, 41.32, 141.48, 416.24, 747.81, 219.98, 478.11, 770.83, 180.06, 482.88, 691.56, 725.10, 173.62, - 186.07, 914.28, 1.64, 963.17, 248.00, 464.70, 362.43, 521.93, 233.68, 120.84, 40.89, 779.34, 195.43, 161.24, 743.15, 439.32, 355.84, 403.26, 141.52, 633.14, - 289.43, 782.40, 320.03, 636.26, 118.73, 852.98, 70.84, 816.16, 388.16, 954.73, 36.04, 16.68, 698.34, 695.97, 677.21, 598.79, 883.95, 824.68, 746.81, 462.54, - 511.64, 534.37, 440.30, 428.71, 732.86, 726.51, 702.51, 547.02, 86.52, 798.67, 215.32, 21.88, 651.12, 59.56, 429.73, 657.72, 96.84, 973.02, 659.46, 966.03, - 524.36, 62.55, 625.28, 303.09, 714.64, 409.32, 55.49, 728.91, 305.61, 436.34, 901.67, 592.86, 691.16, 796.54, 497.10, 177.90, 940.76, 995.51, 480.97, 158.27, - 822.18, 611.21, 680.54, 14.69, 111.64, 797.48, 185.26, 0.42, 718.99, 96.96, 749.66, 739.06, 814.08, 435.19, 326.74, 37.87, 33.93, 605.81, 935.30, 27.08, - 88.64, 441.48, 339.35, 344.49, 554.29, 365.36, 954.73, 639.24, 396.74, 991.69, 249.37, 338.14, 832.96, 974.16, 393.61, 266.20, 470.51, 348.21, 336.49, 419.51, - 249.26, 215.93, 542.52, 903.45, 636.50, 729.85, 581.11, 820.51, 671.78, 979.39, 418.16, 670.72, 920.09, 568.34, 745.07, 662.81, 139.00, 385.86, 927.79, 173.18, - 457.31, 316.41, 183.92, 477.45, 196.33, 399.89, 416.39, 805.73, 996.26, 270.14, 735.50, 696.71, 825.63, 528.63, 50.72, 623.80, 537.51, 87.46, 294.50, 867.57, - 110.26, 398.60, 781.21, 646.64, 375.13, 943.34, 897.04, 589.48, 44.54, 288.17, 845.33, 742.83, 99.00, 522.57, 443.74, 432.33, 165.91, 930.88, 28.94, 461.66, - 323.98, 272.51, 376.62, 340.73, 898.14, 158.37, 168.75, 443.51, 193.73, 631.20, 935.89, 274.02, 781.65, 185.57, 619.86, 292.35, 933.33, 156.41, 827.37, 88.76, - 987.54, 629.48, 649.02, 32.15, 1.18, 744.89, 399.21, 915.37, 791.96, 554.59, 984.10, 530.66, 600.58, 401.77, 683.13, 540.36, 903.94, 120.85, 995.87, 521.86, - 622.16, 224.65, 895.32, 530.33, 820.81, 651.71, 226.16, 96.13, 262.91, 569.20, 238.65, 126.49, 610.86, 191.60, 238.92, 796.97, 884.59, 573.09, 108.00, 140.59, - 789.76, 852.96, 23.71, 704.58, 890.76, 480.51, 52.78, 372.43, 201.01, 546.61, 408.85, 119.89, 645.63, 464.84, 81.80, 293.26, 52.40, 880.11, 224.02, 744.84, - 735.53, 886.00, 167.35, 1.88, 532.19, 321.39, 169.10, 485.71, 101.72, 177.67, 42.92, 708.17, 654.57, 915.79, 625.69, 242.14, 822.84, 795.34, 641.04, 252.42, - 245.63, 151.34, 876.43, 333.05, 601.06, 938.92, 775.05, 397.50, 233.79, 755.78, 454.06, 424.44, 210.01, 962.37, 900.93, 923.02, 655.46, 529.87, 595.01, 90.89, - 464.89, 685.58, 70.44, 754.90, 32.51, 494.81, 25.80, 389.38, 488.21, 37.40, 409.08, 639.86, 27.63, 950.87, 539.51, 80.51, 303.34, 723.69, 734.88, 125.98, - 552.69, 248.59, 107.29, 362.31, 48.68, 869.57, 144.74, 841.18, 724.89, 335.10, 470.53, 263.38, 343.02, 809.49, 677.01, 339.36, 336.03, 410.43, 465.15, 56.81, - 590.66, 485.63, 406.57, 993.51, 746.33, 238.91, 525.16, 336.30, 256.11, 134.76, 546.41, 722.96, 367.62, 943.94, 106.51, 629.33, 396.50, 208.74, 429.60, 523.82, - 130.87, 355.83, 990.83, 673.36, 991.28, 719.97, 449.14, 84.94, 616.26, 211.40, 707.51, 737.36, 847.35, 452.81, 316.11, 974.19, 746.34, 796.57, 522.31, 618.19, - 115.11, 727.59, 226.00, 165.86, 200.08, 830.23, 742.47, 187.65, 705.02, 671.77, 785.22, 886.33, 962.57, 657.86, 293.97, 620.08, 144.34, 173.29, 796.21, 72.50, - 678.01, 80.06, 793.33, 685.03, 637.56, 967.37, 241.53, 898.52, 693.00, 372.64, 601.23, 721.30, 398.50, 553.18, 72.92, 174.85, 978.42, 325.01, 558.77, 185.25, - 505.93, 860.00, 651.31, 573.60, 321.32, 349.19, 400.24, 890.35, 844.52, 885.04, 933.02, 980.84, 448.61, 989.45, 50.53, 332.36, 900.28, 716.93, 747.86, 444.23, - 6.62, 394.55, 285.73, 703.44, 450.70, 652.55, 771.82, 485.17, 534.56, 559.01, 481.51, 507.24, 434.52, 343.63, 42.42, 784.26, 865.65, 421.89, 415.22, 871.79, - 539.58, 162.47, 105.09, 481.92, 595.44, 115.11, 350.01, 964.58, 287.38, 232.55, 154.11, 602.37, 539.48, 943.16, 872.17, 121.26, 652.20, 811.95, 747.88, 362.25, - 340.41, 910.73, 206.71, 572.95, 505.78, 973.87, 961.61, 354.74, 627.25, 849.72, 971.69, 910.80, 410.29, 770.61, 63.75, 874.84, 396.21, 482.65, 619.93, 646.52, - 557.70, 328.81, 67.74, 884.16, 512.52, 972.25, 6.13, 513.12, 882.90, 562.88, 764.78, 366.50, 506.01, 786.96, 831.46, 382.69, 638.33, 452.86, 72.80, 83.99, - 59.48, 932.56, 929.17, 924.31, 961.79, 69.09, 797.94, 985.49, 854.03, 885.08, 600.77, 389.36, 232.77, 793.58, 179.91, 773.67, 689.88, 775.80, 494.89, 139.65, - 234.41, 431.79, 780.34, 371.94, 22.47, 653.95, 741.81, 815.30, 429.00, 139.33, 603.92, 315.04, 344.80, 889.48, 317.27, 260.28, 861.63, 377.78, 511.76, 304.06, - 70.19, 35.87, 854.09, 576.98, 490.35, 326.55, 303.50, 431.21, 813.10, 708.96, 388.67, 962.18, 967.95, 442.52, 49.02, 831.49, 251.65, 321.36, 741.45, 179.51, - 176.27, 117.00, 523.73, 764.26, 952.82, 704.67, 531.80, 804.94, 23.61, 611.10, 846.79, 375.26, 854.69, 971.77, 24.05, 639.17, 318.66, 723.53, 662.84, 647.47, - 281.11, 158.85, 294.58, 885.85, 734.06, 866.60, 471.06, 296.09, 673.55, 472.93, 439.09, 5.93, 155.39, 506.79, 948.50, 600.40, 445.21, 222.05, 784.59, 349.77, - 943.37, 150.14, 366.16, 444.22, 604.60, 720.40, 340.70, 972.58, 911.45, 321.49, 435.22, 50.43, 78.96, 761.04, 950.33, 238.41, 27.06, 226.17, 201.43, 176.53, - 877.51, 450.94, 879.63, 99.89, 143.28, 31.66, 812.36, 771.31, 527.29, 488.63, 797.10, 194.25, 293.72, 966.52, 276.35, 345.26, 413.02, 197.52, 386.04, 116.36, - 322.72, 680.35, 538.15, 554.00, 960.31, 874.79, 48.72, 506.93, 898.24, 539.71, 495.50, 764.01, 805.12, 286.44, 432.09, 836.98, 192.15, 825.36, 778.42, 586.55, - 359.37, 352.70, 746.78, 11.34, 749.69, 5.98, 408.76, 643.32, 441.94, 368.15, 97.74, 169.62, 359.25, 527.49, 672.31, 69.39, 880.66, 298.11, 300.84, 327.09, - 923.83, 829.55, 816.51, 497.50, 243.91, 981.12, 917.21, 713.38, 653.91, 503.75, 406.65, 543.57, 108.87, 304.66, 464.10, 954.74, 86.37, 802.71, 446.02, 28.16, - 539.76, 655.37, 28.71, 470.59, 735.85, 941.08, 610.37, 451.33, 672.34, 237.47, 766.04, 713.35, 409.69, 869.06, 186.75, 475.83, 568.73, 44.08, 997.88, 139.85, - 456.29, 470.05, 566.52, 408.79 -}; - -float verify_data[DATA_SIZE] = -{ - 495.63, 1169.63, 566.69, 1176.85, 1115.65, 923.63, 196.52, 1103.31, 800.44, 946.03, 832.12, 579.30, 1271.72, 1483.47, 1290.93, 922.67, 973.54, 994.06, 866.81, 942.68, - 926.59, 750.61, 1361.22, 1586.49, 1300.84, 829.78, 1571.21, 941.26, 746.74, 1197.19, 1186.78, 1078.26, 291.58, 984.55, 1429.12, 981.74, 1063.38, 1594.80, 787.78, 650.92, - 1219.28, 1030.07, 922.15, 1587.41, 1270.39, 730.77, 1241.89, 1139.44, 1525.85, 1374.42, 739.91, 1609.95, 1546.39, 1348.24, 1463.38, 736.32, 389.61, 1110.21, 1488.91, 912.76, - 992.84, 1346.40, 395.18, 1620.78, 1316.18, 679.69, 1115.23, 1679.96, 765.68, 735.85, 578.79, 1364.33, 1096.91, 638.70, 740.87, 1007.04, 1297.08, 396.49, 575.61, 1478.78, - 934.92, 289.41, 1142.74, 895.34, 1185.93, 1152.77, 1175.57, 1037.12, 1113.42, 450.84, 1573.31, 334.07, 1838.73, 1191.90, 878.61, 740.34, 1020.32, 1149.83, 1133.92, 587.39, - 1463.34, 1338.72, 589.95, 345.84, 868.80, 1498.73, 1412.65, 1357.10, 1478.39, 1227.79, 1006.65, 1843.31, 953.88, 534.37, 607.77, 956.35, 948.69, 881.54, 648.39, 1293.73, - 778.68, 290.54, 825.76, 1142.18, 1110.55, 725.01, 987.02, 698.44, 1882.36, 887.56, 1791.84, 1770.09, 592.34, 1558.82, 1652.77, 835.96, 719.46, 899.23, 664.05, 903.48, - 1396.04, 518.20, 1162.70, 439.42, 397.65, 772.71, 1158.74, 526.29, 1250.34, 1522.57, 1134.26, 614.25, 650.49, 583.54, 729.60, 524.55, 1391.95, 1278.39, 458.49, 908.20, - 846.41, 890.50, 966.06, 1065.12, 1389.53, 1308.07, 372.88, 918.11, 1384.40, 969.38, 962.13, 1032.60, 1076.19, 1073.28, 914.24, 838.56, 315.50, 1192.41, 839.63, 1663.34, - 1184.70, 1686.79, 700.69, 1849.94, 1509.85, 835.52, 151.84, 1039.76, 773.51, 256.03, 503.21, 749.88, 1238.18, 1076.99, 369.33, 571.92, 1019.76, 356.41, 1576.64, 704.75, - 1455.51, 1472.74, 1169.31, 1137.32, 1479.12, 695.76, 209.72, 557.09, 672.13, 670.97, 1728.14, 1015.15, 1386.02, 454.90, 433.10, 549.65, 1708.33, 640.17, 734.17, 1257.85, - 1084.79, 1347.56, 1389.80, 887.96, 1204.24, 1197.28, 326.78, 666.15, 1180.43, 928.80, 1287.07, 1032.07, 1180.09, 94.13, 685.73, 995.48, 493.52, 1151.15, 408.17, 1114.49, - 1524.20, 433.83, 1465.62, 563.97, 1396.91, 723.51, 1147.02, 1386.71, 717.25, 1714.24, 1794.58, 885.95, 641.78, 267.14, 1530.24, 1091.63, 632.86, 1245.24, 1046.10, 1504.05, - 1223.69, 811.73, 1168.43, 656.17, 765.15, 1217.91, 95.02, 650.84, 419.21, 649.88, 1116.37, 1608.19, 700.41, 1219.33, 1270.55, 889.25, 532.70, 1062.99, 1598.94, 1119.37, - 1178.37, 1441.16, 723.46, 1398.57, 480.94, 961.90, 1060.27, 552.90, 582.30, 371.55, 391.32, 1030.28, 769.01, 945.25, 1492.23, 941.67, 1179.47, 1229.81, 311.71, 793.56, - 964.38, 814.96, 522.52, 779.87, 972.03, 943.17, 465.51, 923.71, 1243.30, 1061.68, 193.53, 22.70, 1464.04, 900.06, 872.18, 1173.28, 1102.63, 1350.75, 924.32, 702.08, - 1210.63, 1291.41, 1146.94, 478.30, 817.32, 1526.45, 1595.77, 1059.94, 459.94, 1291.29, 230.02, 643.22, 734.35, 163.08, 1224.35, 1579.24, 739.99, 1853.34, 1493.65, 1205.98, - 986.54, 176.68, 1186.45, 833.02, 724.94, 1406.38, 960.15, 1115.99, 713.18, 541.81, 1460.84, 1529.83, 1204.00, 1205.70, 799.72, 380.19, 1368.62, 1609.47, 840.13, 679.74, - 1506.54, 633.28, 866.21, 327.23, 218.80, 1072.27, 572.78, 243.33, 1205.41, 202.56, 1448.61, 1638.72, 1584.11, 1080.07, 407.61, 199.82, 441.20, 1551.94, 965.44, 795.64, - 959.34, 555.31, 488.27, 406.73, 701.51, 1203.74, 1799.83, 1072.04, 538.08, 1203.05, 1066.74, 1159.37, 1395.75, 1338.61, 1009.44, 761.86, 1282.53, 1265.02, 496.10, 850.27, - 1052.65, 396.25, 1087.04, 1744.14, 1094.86, 1516.72, 1453.94, 1616.13, 1478.13, 1737.48, 522.87, 1072.44, 1174.25, 1552.93, 881.42, 1392.32, 723.46, 1180.41, 1342.61, 701.77, - 1164.72, 870.50, 562.36, 1244.36, 1173.48, 636.73, 1364.08, 1035.71, 1161.69, 775.92, 840.61, 1401.61, 1621.91, 668.97, 354.52, 1419.21, 1172.70, 647.51, 413.69, 876.51, - 642.38, 1212.78, 818.58, 1231.63, 1115.00, 1562.69, 1664.33, 1067.59, 102.18, 1246.92, 1629.75, 1728.50, 936.44, 830.21, 511.66, 1256.62, 1162.52, 1680.10, 200.55, 1287.67, - 945.54, 427.81, 1202.72, 384.08, 1592.24, 239.35, 405.04, 1191.17, 937.99, 897.12, 1060.18, 1005.41, 1723.60, 611.18, 990.11, 612.63, 1202.58, 699.39, 1590.74, 841.09, - 1903.33, 643.97, 650.04, 938.41, 996.74, 1554.70, 960.19, 1789.12, 1764.47, 843.99, 1493.67, 1089.42, 1570.66, 807.37, 1262.68, 833.91, 1155.12, 970.59, 1124.96, 974.72, - 1338.35, 311.26, 1574.08, 712.10, 1061.67, 987.70, 1020.03, 737.85, 264.38, 889.41, 1225.92, 773.42, 1365.73, 1150.43, 442.54, 939.08, 1064.75, 873.07, 273.93, 902.05, - 1764.15, 1499.80, 583.52, 1324.39, 1313.75, 741.33, 618.68, 914.59, 693.50, 1538.31, 1154.48, 327.54, 1018.09, 1397.45, 746.21, 328.09, 586.35, 1358.57, 1132.98, 947.89, - 769.17, 1100.19, 533.13, 894.29, 1313.62, 1001.59, 874.31, 1174.35, 1048.89, 564.06, 93.33, 809.48, 1129.55, 1314.88, 1304.70, 572.27, 1775.82, 1267.01, 1118.51, 978.19, - 959.40, 1089.10, 1405.59, 1203.46, 679.05, 1484.27, 1682.75, 1251.06, 377.47, 1735.35, 693.27, 530.23, 575.65, 1061.01, 955.49, 1021.06, 1095.51, 1294.81, 910.64, 427.66, - 1162.01, 1460.55, 796.81, 1079.52, 315.24, 1030.87, 648.27, 983.92, 1378.95, 112.53, 699.70, 1136.13, 753.89, 1400.42, 1087.55, 216.02, 947.95, 1562.12, 1025.12, 893.25, - 715.59, 664.46, 599.00, 1347.54, 165.38, 1487.48, 1004.37, 1076.79, 1007.48, 906.74, 1383.74, 823.94, 537.97, 1051.54, 1459.79, 1325.02, 1064.35, 754.49, 896.01, 669.95, - 1350.57, 662.43, 716.21, 1327.48, 1100.74, 549.02, 1224.82, 382.59, 743.32, 638.50, 647.15, 1116.38, 636.23, 1258.26, 181.62, 975.32, 1384.29, 809.34, 1338.34, 908.77, - 222.96, 901.00, 1267.96, 1341.91, 1342.76, 1573.69, 1312.25, 397.71, 716.94, 743.90, 1275.29, 1573.61, 1218.13, 1442.78, 777.53, 1886.74, 928.38, 1064.95, 682.57, 1389.99, - 137.80, 1581.75, 870.93, 183.08, 979.51, 1741.65, 1598.00, 325.19, 1688.71, 1388.89, 1350.48, 1605.55, 1216.06, 1443.41, 448.51, 816.99, 398.15, 620.33, 1695.69, 77.84, - 1003.98, 696.49, 1102.40, 860.31, 797.44, 1090.82, 1080.36, 1614.18, 1243.54, 602.96, 683.61, 1348.56, 723.06, 1480.29, 176.04, 192.82, 1945.34, 484.10, 736.05, 778.60, - 878.83, 1253.86, 1250.40, 1319.50, 698.36, 1214.66, 991.67, 1443.62, 1284.79, 1230.94, 1526.71, 1271.40, 1356.76, 1534.22, 428.41, 788.58, 1681.33, 827.11, 1243.77, 1340.54, - 813.27, 1095.47, 833.86, 1043.78, 480.13, 1482.43, 1402.35, 1031.26, 1148.11, 1531.28, 597.82, 821.05, 1338.69, 1314.80, 649.53, 1578.87, 1035.26, 1318.49, 922.49, 1788.10, - 970.84, 502.20, 253.02, 706.77, 707.80, 695.45, 1184.45, 1098.58, 1235.92, 434.17, 642.81, 998.40, 1337.46, 1422.00, 1641.30, 695.39, 1137.30, 1151.58, 1469.27, 813.26, - 1161.87, 1655.05, 207.04, 1167.83, 783.70, 1093.98, 1642.08, 1112.26, 1182.71, 1697.44, 1489.02, 1289.98, 916.05, 1675.47, 309.95, 1117.86, 790.35, 913.24, 834.63, 891.03, - 1082.40, 728.59, 240.69, 1188.95, 1132.99, 1567.14, 541.47, 1211.96, 1042.48, 1313.06, 1574.58, 821.21, 582.01, 880.12, 999.23, 399.25, 1491.61, 947.72, 397.45, 162.75, - 111.60, 1045.00, 940.01, 1266.90, 1692.45, 749.80, 1085.51, 1946.78, 946.25, 1511.17, 1513.31, 1005.75, 1093.23, 1537.69, 924.45, 1252.27, 1305.19, 1283.97, 1409.40, 950.03, - 523.06, 1406.31, 909.64, 953.01, 571.43, 1522.05, 1723.30, 1085.33, 1052.03, 792.36, 1230.06, 1305.36, 731.50, 1213.35, 790.13, 424.94, 1101.40, 567.48, 1376.87, 536.06, - 426.39, 188.71, 1679.97, 905.57, 880.88, 1174.62, 342.05, 834.11, 1429.95, 1255.03, 595.08, 964.68, 1751.30, 1332.67, 864.20, 1663.44, 917.26, 731.89, 835.65, 426.11, - 598.39, 328.55, 1198.86, 774.17, 1327.00, 1131.50, 596.69, 858.45, 782.24, 1422.98, 1347.43, 813.23, 1190.64, 1299.97, 261.53, 1054.87, 787.13, 1408.05, 1228.08, 953.22, - 730.28, 756.75, 431.44, 1768.64, 1117.16, 1804.65, 739.66, 411.11, 1581.98, 523.18, 1391.70, 372.29, 552.46, 764.22, 1180.11, 1267.78, 480.53, 1213.03, 1227.84, 563.46, - 1332.42, 163.53, 987.30, 497.06, 1217.30, 1655.09, 1294.21, 1801.51, 1373.76, 943.23, 1247.88, 573.11, 751.33, 818.42, 1263.77, 590.93, 82.72, 1198.69, 954.88, 592.85, - 1757.16, 1315.57, 1452.03, 263.52, 864.34, 43.90, 1455.87, 1278.42, 1495.61, 1270.29, 1637.27, 436.48, 924.10, 1777.09, 1071.38, 781.19, 1298.99, 797.01, 1082.87, 760.34, - 415.80, 1390.71, 1323.19, 666.33, 1541.97, 887.62, 971.73, 1122.91, 1551.00, 899.40, 757.40, 997.65, 1414.61, 972.90, 971.97, 955.10, 752.96, 1564.64, 798.87, 904.46, - 1335.73, 926.08, 1133.48, 783.88, 1413.28, 510.87, 620.83, 1532.29, 1349.13, 788.82, 834.80, 686.17, 384.31, 747.41, 1470.31, 786.32, 1332.86, 990.15, 984.81, 786.91, - 1739.38, 1153.33, 1429.27, 745.05, 360.07, 1333.72, 1198.64, 1452.21, 944.04, 1413.41, 1051.90, 1169.43, 1041.60, 524.85, 1149.41, 1327.75, 962.41, 1449.32, 858.12, 983.77, - 1203.83, 1505.59, 812.11, 863.24, 1443.57, 1363.27, 1133.76, 1133.62, 709.97, 393.53, 809.24, 1481.34, 534.41, 1418.23, 1001.29, 727.08, 783.39, 256.43, 1570.59, 1038.65, - 1412.63, 1078.93, 1217.72, 843.61 -}; - diff --git a/benchmarks/vec-vvadd/dataset_test.h b/benchmarks/vec-vvadd/dataset_test.h deleted file mode 100644 index 8b7ec21..0000000 --- a/benchmarks/vec-vvadd/dataset_test.h +++ /dev/null @@ -1,20 +0,0 @@ -// See LICENSE for license details. - - -#define DATA_SIZE 4 - -float input1_data[DATA_SIZE] = -{ - 41.59, 833.98, 564.92, 187.40 -}; - -float input2_data[DATA_SIZE] = -{ - 454.04, 335.65, 1.77, 989.44 -}; - -float verify_data[DATA_SIZE] = -{ - 495.63, 1169.63, 566.69, 1176.85 -}; - diff --git a/benchmarks/vec-vvadd/vec_vvadd_asm.S b/benchmarks/vec-vvadd/vec_vvadd_asm.S deleted file mode 100644 index c4d0534..0000000 --- a/benchmarks/vec-vvadd/vec_vvadd_asm.S +++ /dev/null @@ -1,110 +0,0 @@ -# See LICENSE for license details. - -#***************************************************************************** -# vvadd function (assembly version) -#----------------------------------------------------------------------------- - - -#-------------------------------------------------------------------------- -# Headers and Defines -#-------------------------------------------------------------------------- - -# Here are some defines that make writing assembly code easier. - -# I'm using the knowledge that rN will be placed in register a0, rA will be -# placed into register a1, etc., based on the calling convention for functions. - -#define rN a0 -#define rA a1 -#define rB a2 -#define rC a3 - -#define rVLen a4 - -# WARNING: do not write to the s0,...,s9 registers without first saving them to -# the stack. - -#-------------------------------------------------------------------------- -# void scalar_vvadd_asm( int n, float a[], float b[], float c[] ) -#-------------------------------------------------------------------------- - - .text - .align 2 - .globl scalar_vvadd_asm - .type scalar_vvadd_asm,@function - -scalar_vvadd_asm: - - # ***** Scalar Example ***** - - beq rN, zero, done # exit early if n == 0 - -loop: - flw f2, 0(rA) - flw f3, 0(rB) - fadd.s f2, f2, f3 - fsw f2, 0(rC) - addi rN, rN, -1 - addi rA, rA, 4 - addi rB, rB, 4 - addi rC, rC, 4 - bne rN, zero, loop -done: - ret - - -#-------------------------------------------------------------------------- -# void vt_vvadd_asm( int n, float a[], float b[], float c[] ) -#-------------------------------------------------------------------------- - - - # ***** Vector-Thread Example ***** - - .globl vt_vvadd_asm - .type vt_vvadd_asm,@function - -vt_vvadd_asm: - - beq rN, zero, cpdone - la a5, vtcode - - # First, configure the vector unit. - # rd (given vlen), desired vlen, num of x-regs, num of f-regs - # For vvadd, we do not need to use any x-registers, and only two - # floating point registers. By using fewer registers, hwacha can give us a longer vector length! - # But make sure to use registers starting from x0, f0! - # WARNING: there is a BUG if you tell it you want 0 registers of any type! - # So here I'm asking for 1 x-register, even though I don't use any of them. - vvcfgivl rVLen, rN, 1, 2 - - -stripmineloop: - vsetvl rVLen, rN # set the vector length - # rN is the desired (application) vector length - # rVLen is what vector length we were given - - vflw vf0, rA # vector loads - vflw vf1, rB - vf 0(a5) # jump to vector-fetch code - vfsw vf0, rC # vector store - - sub rN, rN, rVLen # book keeping - slli a6, rVLen, 2 # turn num_elements into num_bytes - add rA, rA, a6 - add rB, rB, a6 - add rC, rC, a6 - bne rN, zero, stripmineloop - -cpdone: - fence.v.l # make stores visible to the control processor - ret - -vtcode: - fadd.s f0, f0, f1 - stop - - # The C code uses a jalr instruction to call this function - # so we can use a jr to return back to where the function - # was called. Also known as "ret", for "return". - - ret diff --git a/benchmarks/vec-vvadd/vec_vvadd_main.c b/benchmarks/vec-vvadd/vec_vvadd_main.c deleted file mode 100644 index 6b53871..0000000 --- a/benchmarks/vec-vvadd/vec_vvadd_main.c +++ /dev/null @@ -1,200 +0,0 @@ -// See LICENSE for license details. - -//************************************************************************** -// Vector-Thread Vector-vector add benchmark -//-------------------------------------------------------------------------- -// -// This benchmark uses adds to vectors and writes the results to a third -// vector. The input data (and reference data) should be generated using the -// vvadd_gendata.pl perl script and dumped to a file named dataset.h. - -// Choose which implementation you wish to test... but leave only one on! -// (only the first one will be executed). -//#define SCALAR_C -//#define SCALAR_ASM -#define VT_ASM - -//-------------------------------------------------------------------------- -// Input/Reference Data - -//#include "dataset_test.h" -#include "dataset.h" - -//-------------------------------------------------------------------------- -// Helper functions - -int verify( int n, float test[], float correct[] ) -{ - int i; - for ( i = 0; i < n; i++ ) { -// if ( test[i] != correct[i] ) { - if ( test[i] > 1.02*correct[i] - || test[i] < 0.98*correct[i]) { -#if HOST_DEBUG - printf(" test[%d] : %3.2f\n", i, test[i]); - printf(" corr[%d] : %3.2f\n", i, correct[i]); -#endif - // tell us which index fails + 2 - // (so that if i==0,i==1 fails, we don't - // think it was a 'not-finished yet' or pass) -// return i+10; - return 2; - } - } - return 1; -} - -void finishTest( int correct, long long num_cycles, long long num_retired ) -{ - int toHostValue = correct; -#if HOST_DEBUG - if ( toHostValue == 1 ) - printf( "*** PASSED ***\n" ); - else - printf( "*** FAILED *** (tohost = %d)\n", toHostValue ); - exit(0); -#else - // we no longer run in -testrun mode, which means we can't use - // the tohost register to communicate "test is done" and "test results" - // so instead we will communicate through print* functions! - if ( correct == 1 ) - { - printstr( "*** PASSED *** (num_cycles = 0x" ); - printhex(num_cycles); - printstr( ", num_inst_retired = 0x"); - printhex(num_retired); - printstr( ")\n" ); - } - else - { - printstr( "*** FAILED *** (num_cycles = 0x"); - printhex(num_cycles); - printstr( ", num_inst_retired = 0x"); - printhex(num_retired); - printstr( ")\n" ); - } - exit(); -#endif -} - - -// deprecated - cr10/stats-enable register no longer exists -void setStats( int enable ) -{ -#if ( !HOST_DEBUG && SET_STATS ) - asm( "mtpcr %0, cr10" : : "r" (enable) ); -#endif -} - -long long getCycles() -{ - long long cycles = 1337; -#if ( !HOST_DEBUG && SET_STATS ) - __asm__ __volatile__( "rdcycle %0" : "=r" (cycles) ); -#endif - return cycles; -} - -long long getInstRetired() -{ - long long inst_retired = 1338; -#if ( !HOST_DEBUG && SET_STATS ) - __asm__ __volatile__( "rdinstret %0" : "=r" (inst_retired) ); -#endif - return inst_retired; -} - -//-------------------------------------------------------------------------- -// vvadd function - -// scalar C implementation -void vvadd( int n, float a[], float b[], float c[] ) -{ - int i; - for ( i = 0; i < n; i++ ) - c[i] = a[i] + b[i]; -} - -// assembly implementations can be found in *_asm.S - -//-------------------------------------------------------------------------- -// Main - -int main( int argc, char* argv[] ) -{ - float results_data[DATA_SIZE]; - long long start_cycles = 0; - long long stop_cycles = 0; - long long num_cycles; - long long start_retired = 0; - long long stop_retired = 0; - long long num_retired; - - // Output the input array - -#if HOST_DEBUG - printArray( "input1", DATA_SIZE, input1_data ); - printArray( "input2", DATA_SIZE, input2_data ); - printArray( "verify", DATA_SIZE, verify_data ); -#endif - - // -------------------------------------------------- - // If needed we preallocate everything in the caches - -#if PREALLOCATE - -#ifdef SCALAR_C - vvadd( DATA_SIZE, input1_data, input2_data, results_data ); -#else -#ifdef SCALAR_ASM - scalar_vvadd_asm( DATA_SIZE, input1_data, input2_data, results_data ); -#else -#ifdef VT_ASM - vt_vvadd_asm( DATA_SIZE, input1_data, input2_data, results_data ); -#endif -#endif -#endif - -#endif - - // -------------------------------------------------- - // Do the vvadd - start_cycles = getCycles(); - start_retired = getInstRetired(); - -#ifdef SCALAR_C - vvadd( DATA_SIZE, input1_data, input2_data, results_data ); -#else -#ifdef SCALAR_ASM - #if HOST_DEBUG==0 - scalar_vvadd_asm( DATA_SIZE, input1_data, input2_data, results_data ); - #endif -#else -#ifdef VT_ASM - #if HOST_DEBUG==0 - vt_vvadd_asm( DATA_SIZE, input1_data, input2_data, results_data ); - #endif -#endif -#endif -#endif - - stop_cycles = getCycles(); - stop_retired = getInstRetired(); - num_cycles = stop_cycles - start_cycles; - num_retired = stop_retired - start_retired; - -// printstr("stop_cycles: "); printhex(stop_cycles); printstr("\n"); -// printstr("star_cycles: "); printhex(start_cycles); printstr("\n"); - - // -------------------------------------------------- - // Print out the results - -#if HOST_DEBUG - printArray( "results", DATA_SIZE, results_data ); -#endif - - // -------------------------------------------------- - // Check the results - int correct = verify( DATA_SIZE, results_data, verify_data ); - finishTest(correct, num_cycles, num_retired); -} diff --git a/benchmarks/vec-vvadd/vvadd_gendata.pl b/benchmarks/vec-vvadd/vvadd_gendata.pl deleted file mode 100755 index 10fc4e9..0000000 --- a/benchmarks/vec-vvadd/vvadd_gendata.pl +++ /dev/null @@ -1,139 +0,0 @@ -#!/usr/bin/perl -w -#========================================================================== -# vvadd_gendata.pl -# -# Author : Christopher Batten (cbatten@mit.edu) -# Date : April 29, 2005 -# -(our $usageMsg = <<'ENDMSG') =~ s/^\#//gm; -# -# Simple script which creates an input data set and the reference data -# for the vvadd benchmark. -# -ENDMSG - -use strict "vars"; -use warnings; -no warnings("once"); -use Getopt::Long; - -#-------------------------------------------------------------------------- -# Command line processing -#-------------------------------------------------------------------------- - -our %opts; - -sub usage() -{ - - print "\n"; - print " Usage: vvadd_gendata.pl [options] \n"; - print "\n"; - print " Options:\n"; - print " --help print this message\n"; - print " --size size of input data [1000]\n"; - print " --seed random seed [1]\n"; - print "$usageMsg"; - - exit(); -} - -sub processCommandLine() -{ - - $opts{"help"} = 0; - $opts{"size"} = 1000; - $opts{"seed"} = 1; - Getopt::Long::GetOptions( \%opts, 'help|?', 'size:i', 'seed:i' ) or usage(); - $opts{"help"} and usage(); - -} - -#-------------------------------------------------------------------------- -# Helper Functions -#-------------------------------------------------------------------------- - -sub printArray -{ - my $arrayName = $_[0]; - my $arrayRef = $_[1]; - - my $numCols = 20; - my $arrayLen = scalar(@{$arrayRef}); - - print "float ".$arrayName."[DATA_SIZE] = \n"; - print "{\n"; - - if ( $arrayLen <= $numCols ) { - print " "; - for ( my $i = 0; $i < $arrayLen; $i++ ) { - print sprintf("%3.2f",$arrayRef->[$i]); - if ( $i != $arrayLen-1 ) { - print ", "; - } - } - print "\n"; - } - - else { - my $numRows = int($arrayLen/$numCols); - for ( my $j = 0; $j < $numRows; $j++ ) { - print " "; - for ( my $i = 0; $i < $numCols; $i++ ) { - my $index = $j*$numCols + $i; - print sprintf("%3.2f",$arrayRef->[$index]); - if ( $index != $arrayLen-1 ) { - print ", "; - } - } - print "\n"; - } - - if ( $arrayLen > ($numRows*$numCols) ) { - print " "; - for ( my $i = 0; $i < ($arrayLen-($numRows*$numCols)); $i++ ) { - my $index = $numCols*$numRows + $i; - print sprintf("%3.2f",$arrayRef->[$index]); - if ( $index != $arrayLen-1 ) { - print ", "; - } - } - print "\n"; - } - - } - - print "};\n\n"; -} - -#-------------------------------------------------------------------------- -# Main -#-------------------------------------------------------------------------- - -sub main() -{ - - processCommandLine(); - srand($opts{"seed"}); - - my @values1; - my @values2; - my @sum; - for ( my $i = 0; $i < $opts{"size"}; $i++ ) { - my $value1 = (rand(999)); - my $value2 = (rand(999)); - push( @values1, $value1 ); - push( @values2, $value2 ); - push( @sum, $value1 + $value2 ); - } - - - print "\n\#define DATA_SIZE ".$opts{"size"}." \n\n"; - printArray( "input1_data", \@values1 ); - printArray( "input2_data", \@values2 ); - printArray( "verify_data", \@sum ); - -} - -main(); - diff --git a/env b/env -Subproject cdf86f59e5706d1c35371b555892fe7b8ab2b01 +Subproject 0bf56e2156ad5393ec2997e4f3dfba98778e8f1 diff --git a/isa/Makefile b/isa/Makefile index 3a8b265..07aef50 100644 --- a/isa/Makefile +++ b/isa/Makefile @@ -6,9 +6,7 @@ isa_src_dir := . include $(isa_src_dir)/rv64ui/Makefrag include $(isa_src_dir)/rv64uf/Makefrag -include $(isa_src_dir)/rv64uv/Makefrag include $(isa_src_dir)/rv64si/Makefrag -include $(isa_src_dir)/rv64sv/Makefrag include $(isa_src_dir)/rv64mi/Makefrag include $(isa_src_dir)/rv32ui/Makefrag include $(isa_src_dir)/rv32si/Makefrag @@ -23,9 +21,9 @@ default: all RISCV_PREFIX=riscv64-unknown-elf- RISCV_GCC = $(RISCV_PREFIX)gcc ENTROPY = -DENTROPY=$(shell echo $$$$) -RISCV_GCC_OPTS = $(ENTROPY) -static -mcmodel=medany -fvisibility=hidden -nostdlib -nostartfiles -Wa,-march=RVIMAFDXhwacha +RISCV_GCC_OPTS = $(ENTROPY) -static -mcmodel=medany -fvisibility=hidden -nostdlib -nostartfiles RISCV_OBJDUMP = $(RISCV_PREFIX)objdump --disassemble-all --disassemble-zeroes --section=.text --section=.text.startup --section=.text.init --section=.data -RISCV_SIM = spike --extension=hwacha +RISCV_SIM = spike vpath %.S $(isa_src_dir) @@ -62,18 +60,6 @@ $$($(1)_v_tests): $(1)-v-%: $(1)/%.S $$(RISCV_GCC) $(2) $$(RISCV_GCC_OPTS) -std=gnu99 -O2 -I$(isa_src_dir)/../env/v -I$(isa_src_dir)/macros/scalar -T$(isa_src_dir)/../env/v/link.ld $(isa_src_dir)/../env/v/entry.S $(isa_src_dir)/../env/v/vm.c $$< -lc -o $$@ $(1)_tests += $$($(1)_v_tests) -$$($(1)_p_vec_tests): $(1)-p-vec-%: $(1)/%.S - $$(RISCV_GCC) $(2) $$(RISCV_GCC_OPTS) -I$(isa_src_dir)/../env/p -I$(isa_src_dir)/macros/vector -T$(isa_src_dir)/../env/p/link.ld $$< -o $$@ -$(1)_tests += $$($(1)_p_vec_tests) - -$$($(1)_pt_vec_tests): $(1)-pt-vec-%: $(1)/%.S - $$(RISCV_GCC) $(2) $$(RISCV_GCC_OPTS) -I$(isa_src_dir)/../env/pt -I$(isa_src_dir)/macros/vector -T$(isa_src_dir)/../env/pt/link.ld $$< -o $$@ -$(1)_tests += $$($(1)_pt_vec_tests) - -$$($(1)_v_vec_tests): $(1)-v-vec-%: $(1)/%.S - $$(RISCV_GCC) $(2) $$(RISCV_GCC_OPTS) -std=gnu99 -O2 -I$(isa_src_dir)/../env/v -I$(isa_src_dir)/macros/vector -T$(isa_src_dir)/../env/v/link.ld $(isa_src_dir)/../env/v/entry.S $(isa_src_dir)/../env/v/vm.c $$< -lc -o $$@ -$(1)_tests += $$($(1)_v_vec_tests) - $(1)_tests_dump = $$(addsuffix .dump, $$($(1)_tests)) $(1)_tests_hex = $$(addsuffix .hex, $$($(1)_tests)) @@ -90,9 +76,7 @@ $(eval $(call compile_template,rv32si,-m32)) $(eval $(call compile_template,rv32mi,-m32)) $(eval $(call compile_template,rv64ui)) $(eval $(call compile_template,rv64uf)) -$(eval $(call compile_template,rv64uv)) $(eval $(call compile_template,rv64si)) -$(eval $(call compile_template,rv64sv)) $(eval $(call compile_template,rv64mi)) tests_dump = $(addsuffix .dump, $(tests)) diff --git a/isa/macros/scalar/test_macros.h b/isa/macros/scalar/test_macros.h index 6242f0b..48ce028 100644 --- a/isa/macros/scalar/test_macros.h +++ b/isa/macros/scalar/test_macros.h @@ -564,129 +564,6 @@ test_ ## testnum: \ .double result; \ 1: - -#----------------------------------------------------------------------- -# RV64SV MACROS -#----------------------------------------------------------------------- - -#define TEST_ILLEGAL_TVEC_REGID( testnum, nxreg, nfreg, inst, reg1, reg2) \ - la a0, handler ## testnum; \ - csrw stvec, a0; \ - vsetcfg nxreg, nfreg; \ - li a0, 4; \ - vsetvl a0, a0; \ - la a0, src1; \ - la a1, src2; \ - vld vx2, a0; \ - vld vx3, a1; \ - lui a0,%hi(vtcode1 ## testnum); \ - vf %lo(vtcode1 ## testnum)(a0); \ - la reg2, dest; \ -illegal ## testnum: \ - inst reg1, reg2; \ - la a3, dest; \ - vsd vx2, a3; \ - fence; \ -vtcode1 ## testnum: \ - add x2, x2, x3; \ - stop; \ -vtcode2 ## testnum: \ - add x2, x2, x3; \ - stop; \ -handler ## testnum: \ - vxcptkill; \ - li TESTNUM,2; \ - csrr a0, scause; \ - li a1,HWACHA_CAUSE_TVEC_ILLEGAL_REGID; \ - bne a0,a1,fail; \ - csrr a0, sbadaddr; \ - la a1, illegal ## testnum; \ - lw a2, 0(a1); \ - bne a0, a2, fail; \ - vsetcfg 32,0; \ - li a0,4; \ - vsetvl a0,a0; \ - la a0,src1; \ - la a1,src2; \ - vld vx2,a0; \ - vld vx3,a1; \ - lui a0,%hi(vtcode2 ## testnum); \ - vf %lo(vtcode2 ## testnum)(a0); \ - la a3,dest; \ - vsd vx2,a3; \ - fence; \ - ld a1,0(a3); \ - li a2,5; \ - li TESTNUM,2; \ - bne a1,a2,fail; \ - ld a1,8(a3); \ - li TESTNUM,3; \ - bne a1,a2,fail; \ - ld a1,16(a3); \ - li TESTNUM,4; \ - bne a1,a2,fail; \ - ld a1,24(a3); \ - li TESTNUM,5; \ - bne a1,a2,fail; \ - -#define TEST_ILLEGAL_VT_REGID( testnum, nxreg, nfreg, inst, reg1, reg2, reg3) \ - la a0, handler ## testnum; \ - csrw stvec, a0; \ - vsetcfg nxreg, nfreg; \ - li a0, 4; \ - vsetvl a0, a0; \ - la a0, src1; \ - la a1, src2; \ - vld vx2, a0; \ - vld vx3, a1; \ - lui a0,%hi(vtcode1 ## testnum); \ - vf %lo(vtcode1 ## testnum)(a0); \ - la a3, dest; \ - vsd vx2, a3; \ - fence; \ -vtcode1 ## testnum: \ - add x2, x2, x3; \ -illegal ## testnum: \ - inst reg1, reg2, reg3; \ - stop; \ -vtcode2 ## testnum: \ - add x2, x2, x3; \ - stop; \ -handler ## testnum: \ - vxcptkill; \ - li TESTNUM,2; \ - csrr a0, scause; \ - li a1,HWACHA_CAUSE_VF_ILLEGAL_REGID; \ - bne a0,a1,fail; \ - csrr a0, sbadaddr; \ - la a1,illegal ## testnum; \ - bne a0,a1,fail; \ - vsetcfg 32,0; \ - li a0,4; \ - vsetvl a0,a0; \ - la a0,src1; \ - la a1,src2; \ - vld vx2,a0; \ - vld vx3,a1; \ - lui a0,%hi(vtcode2 ## testnum); \ - vf %lo(vtcode2 ## testnum)(a0); \ - la a3,dest; \ - vsd vx2,a3; \ - fence; \ - ld a1,0(a3); \ - li a2,5; \ - li TESTNUM,2; \ - bne a1,a2,fail; \ - ld a1,8(a3); \ - li TESTNUM,3; \ - bne a1,a2,fail; \ - ld a1,16(a3); \ - li TESTNUM,4; \ - bne a1,a2,fail; \ - ld a1,24(a3); \ - li TESTNUM,5; \ - bne a1,a2,fail; \ - #----------------------------------------------------------------------- # Pass and fail code (assumes test num is in TESTNUM) #----------------------------------------------------------------------- diff --git a/isa/rv64sv/Makefrag b/isa/rv64sv/Makefrag deleted file mode 100644 index 9a2746c..0000000 --- a/isa/rv64sv/Makefrag +++ /dev/null @@ -1,14 +0,0 @@ -#======================================================================= -# Makefrag for rv64sv tests -#----------------------------------------------------------------------- - -rv64sv_sc_tests = \ - illegal_cfg_nxpr illegal_cfg_nfpr illegal_inst privileged_inst \ - illegal_tvec_regid \ - illegal_vt_inst illegal_vt_regid \ - ma_utld ma_utsd ma_vld ma_vsd \ - ma_vt_inst \ - -rv64sv_p_tests = $(addprefix rv64sv-p-, $(rv64sv_sc_tests)) - -spike_tests += $(rv64sv_p_tests) diff --git a/isa/rv64sv/illegal_cfg_nfpr.S b/isa/rv64sv/illegal_cfg_nfpr.S deleted file mode 100644 index be114cc..0000000 --- a/isa/rv64sv/illegal_cfg_nfpr.S +++ /dev/null @@ -1,93 +0,0 @@ -# See LICENSE for license details. - -#***************************************************************************** -# illegal_tvec_cmd.S -#----------------------------------------------------------------------------- -# -# Test illegal tvec command trap. -# - -#include "riscv_test.h" -#include "test_macros.h" - -RVTEST_RV64SV -RVTEST_CODE_BEGIN - - li a0,33 - slli a0,a0,6 - vsetcfg a0 - -vtcode2: - add x2,x2,x3 - stop - -stvec_handler: - vxcptkill - - li TESTNUM,2 - - # check cause - csrr a3, scause - li a4,HWACHA_CAUSE_ILLEGAL_CFG - bne a3,a4,fail - - # check vec irq aux - csrr a3, sbadaddr - li a4, 1 - bne a3,a4,fail - - # make sure vector unit has cleared out - vsetcfg 32,0 - li a3,4 - vsetvl a3,a3 - - la a3,src1 - la a4,src2 - vld vx2,a3 - vld vx3,a4 - lui a0,%hi(vtcode2) - vf %lo(vtcode2)(a0) - la a5,dest - vsd vx2,a5 - fence - - ld a1,0(a5) - li a2,5 - li TESTNUM,2 - bne a1,a2,fail - ld a1,8(a5) - li TESTNUM,3 - bne a1,a2,fail - ld a1,16(a5) - li TESTNUM,4 - bne a1,a2,fail - ld a1,24(a5) - li TESTNUM,5 - bne a1,a2,fail - - TEST_PASSFAIL - -RVTEST_CODE_END - - .data -RVTEST_DATA_BEGIN - - TEST_DATA - -src1: - .dword 1 - .dword 2 - .dword 3 - .dword 4 -src2: - .dword 4 - .dword 3 - .dword 2 - .dword 1 -dest: - .dword 0xdeadbeefcafebabe - .dword 0xdeadbeefcafebabe - .dword 0xdeadbeefcafebabe - .dword 0xdeadbeefcafebabe - -RVTEST_DATA_END diff --git a/isa/rv64sv/illegal_cfg_nxpr.S b/isa/rv64sv/illegal_cfg_nxpr.S deleted file mode 100644 index 51cc84a..0000000 --- a/isa/rv64sv/illegal_cfg_nxpr.S +++ /dev/null @@ -1,92 +0,0 @@ -# See LICENSE for license details. - -#***************************************************************************** -# illegal_tvec_cmd.S -#----------------------------------------------------------------------------- -# -# Test illegal tvec command trap. -# - -#include "riscv_test.h" -#include "test_macros.h" - -RVTEST_RV64SV -RVTEST_CODE_BEGIN - - li a0,33 - vsetcfg a0 - -vtcode2: - add x2,x2,x3 - stop - -stvec_handler: - vxcptkill - - li TESTNUM,2 - - # check cause - csrr a3, scause - li a4,HWACHA_CAUSE_ILLEGAL_CFG - bne a3,a4,fail - - # check vec irq aux - csrr a3, sbadaddr - li a4, 0 - bne a3,a4,fail - - # make sure vector unit has cleared out - vsetcfg 32,0 - li a3,4 - vsetvl a3,a3 - - la a3,src1 - la a4,src2 - vld vx2,a3 - vld vx3,a4 - lui a0,%hi(vtcode2) - vf %lo(vtcode2)(a0) - la a5,dest - vsd vx2,a5 - fence - - ld a1,0(a5) - li a2,5 - li TESTNUM,2 - bne a1,a2,fail - ld a1,8(a5) - li TESTNUM,3 - bne a1,a2,fail - ld a1,16(a5) - li TESTNUM,4 - bne a1,a2,fail - ld a1,24(a5) - li TESTNUM,5 - bne a1,a2,fail - - TEST_PASSFAIL - -RVTEST_CODE_END - - .data -RVTEST_DATA_BEGIN - - TEST_DATA - -src1: - .dword 1 - .dword 2 - .dword 3 - .dword 4 -src2: - .dword 4 - .dword 3 - .dword 2 - .dword 1 -dest: - .dword 0xdeadbeefcafebabe - .dword 0xdeadbeefcafebabe - .dword 0xdeadbeefcafebabe - .dword 0xdeadbeefcafebabe - -RVTEST_DATA_END diff --git a/isa/rv64sv/illegal_inst.S b/isa/rv64sv/illegal_inst.S deleted file mode 100644 index 7e653d1..0000000 --- a/isa/rv64sv/illegal_inst.S +++ /dev/null @@ -1,99 +0,0 @@ -# See LICENSE for license details. - -#***************************************************************************** -# illegal_tvec_cmd.S -#----------------------------------------------------------------------------- -# -# Test illegal tvec command trap. -# - -#include "riscv_test.h" -#include "test_macros.h" - -RVTEST_RV64SV -RVTEST_CODE_BEGIN - - .word 0xff00002b - - vsetcfg 32,0 - li a3,4 - vsetvl a3,a3 - -vtcode1: - lw x2, 0(x1) - stop - -vtcode2: - add x2,x2,x3 - stop - -stvec_handler: - vxcptkill - - li TESTNUM,2 - - # check cause - csrr a3, scause - li a4,HWACHA_CAUSE_ILLEGAL_INSTRUCTION - bne a3,a4,fail - - # check vec irq aux - csrr a3, sbadaddr - li a4, 0xff00002b - bne a3,a4,fail - - # make sure vector unit has cleared out - vsetcfg 32,0 - li a3,4 - vsetvl a3,a3 - - la a3,src1 - la a4,src2 - vld vx2,a3 - vld vx3,a4 - lui a0,%hi(vtcode2) - vf %lo(vtcode2)(a0) - la a5,dest - vsd vx2,a5 - fence - - ld a1,0(a5) - li a2,5 - li TESTNUM,2 - bne a1,a2,fail - ld a1,8(a5) - li TESTNUM,3 - bne a1,a2,fail - ld a1,16(a5) - li TESTNUM,4 - bne a1,a2,fail - ld a1,24(a5) - li TESTNUM,5 - bne a1,a2,fail - - TEST_PASSFAIL - -RVTEST_CODE_END - - .data -RVTEST_DATA_BEGIN - - TEST_DATA - -src1: - .dword 1 - .dword 2 - .dword 3 - .dword 4 -src2: - .dword 4 - .dword 3 - .dword 2 - .dword 1 -dest: - .dword 0xdeadbeefcafebabe - .dword 0xdeadbeefcafebabe - .dword 0xdeadbeefcafebabe - .dword 0xdeadbeefcafebabe - -RVTEST_DATA_END diff --git a/isa/rv64sv/illegal_tvec_regid.S b/isa/rv64sv/illegal_tvec_regid.S deleted file mode 100644 index 30403ba..0000000 --- a/isa/rv64sv/illegal_tvec_regid.S +++ /dev/null @@ -1,51 +0,0 @@ -# See LICENSE for license details. - -#***************************************************************************** -# illegal_tvec_regid.S -#----------------------------------------------------------------------------- -# -# Test illegal tvec regid trap. -# - -#include "riscv_test.h" -#include "test_macros.h" - -RVTEST_RV64SV -RVTEST_CODE_BEGIN - - TEST_ILLEGAL_TVEC_REGID(2, 5, 5, vsd, vx7, a2) - TEST_ILLEGAL_TVEC_REGID(3, 5, 5, vld, vx7, a2) - - TEST_ILLEGAL_TVEC_REGID(4, 5, 5, vfsd, vf7, a2) - TEST_ILLEGAL_TVEC_REGID(5, 5, 5, vfld, vf7, a2) - - TEST_PASSFAIL - -# the handler gets rewritten for every test, but need this for the framework -stvec_handler: - j fail - -RVTEST_CODE_END - - .data -RVTEST_DATA_BEGIN - - TEST_DATA - -src1: - .dword 1 - .dword 2 - .dword 3 - .dword 4 -src2: - .dword 4 - .dword 3 - .dword 2 - .dword 1 -dest: - .dword 0xdeadbeefcafebabe - .dword 0xdeadbeefcafebabe - .dword 0xdeadbeefcafebabe - .dword 0xdeadbeefcafebabe - -RVTEST_DATA_END diff --git a/isa/rv64sv/illegal_vt_inst.S b/isa/rv64sv/illegal_vt_inst.S deleted file mode 100644 index 080cd2f..0000000 --- a/isa/rv64sv/illegal_vt_inst.S +++ /dev/null @@ -1,107 +0,0 @@ -# See LICENSE for license details. - -#***************************************************************************** -# illegal_vt_inst.S -#----------------------------------------------------------------------------- -# -# Test illegal vt instruction trap. -# - -#include "riscv_test.h" -#include "test_macros.h" - -RVTEST_RV64SV -RVTEST_CODE_BEGIN - - vsetcfg 32,0 - li a3,4 - vsetvl a3,a3 - - la a3,src1 - la a4,src2 - vld vx2,a3 - vld vx3,a4 - lui a0,%hi(vtcode1) - vf %lo(vtcode1)(a0) - fence - -vtcode1: - add x2,x2,x3 -illegal: - .word 0x0 - stop - -vtcode2: - add x2,x2,x3 - stop - -stvec_handler: - vxcptkill - - li TESTNUM,2 - - # check cause - csrr a3, scause - li a4,HWACHA_CAUSE_VF_ILLEGAL_INSTRUCTION - bne a3,a4,fail - - # check badvaddr - csrr a3, sbadaddr - la a4,illegal - bne a3,a4,fail - - # make sure vector unit has cleared out - vsetcfg 32,0 - li a3,4 - vsetvl a3,a3 - - la a3,src1 - la a4,src2 - vld vx2,a3 - vld vx3,a4 - lui a0,%hi(vtcode2) - vf %lo(vtcode2)(a0) - la a5,dest - vsd vx2,a5 - fence - - ld a1,0(a5) - li a2,5 - li TESTNUM,2 - bne a1,a2,fail - ld a1,8(a5) - li TESTNUM,3 - bne a1,a2,fail - ld a1,16(a5) - li TESTNUM,4 - bne a1,a2,fail - ld a1,24(a5) - li TESTNUM,5 - bne a1,a2,fail - - TEST_PASSFAIL - -RVTEST_CODE_END - - .data -RVTEST_DATA_BEGIN - - TEST_DATA - -src1: - .dword 1 - .dword 2 - .dword 3 - .dword 4 -src2: - .dword 4 - .dword 3 - .dword 2 - .dword 1 -dest: - .dword 0xdeadbeefcafebabe - .dword 0xdeadbeefcafebabe - .dword 0xdeadbeefcafebabe - .dword 0xdeadbeefcafebabe - -RVTEST_DATA_END diff --git a/isa/rv64sv/illegal_vt_regid.S b/isa/rv64sv/illegal_vt_regid.S deleted file mode 100644 index e74b614..0000000 --- a/isa/rv64sv/illegal_vt_regid.S +++ /dev/null @@ -1,53 +0,0 @@ -# See LICENSE for license details. - -#***************************************************************************** -# xcpt_illegal_vt_regid.S -#----------------------------------------------------------------------------- -# -# Test illegal vt regid trap. -# - -#include "riscv_test.h" -#include "test_macros.h" - -RVTEST_RV64SV -RVTEST_CODE_BEGIN - - TEST_ILLEGAL_VT_REGID(2, 5, 5, add, x7, x1, x2) - TEST_ILLEGAL_VT_REGID(3, 5, 5, add, x1, x7, x2) - TEST_ILLEGAL_VT_REGID(4, 5, 5, add, x1, x2, x7) - - TEST_ILLEGAL_VT_REGID(5, 5, 5, fadd.d, f7, f1, f2) - TEST_ILLEGAL_VT_REGID(6, 5, 5, fadd.d, f1, f7, f2) - TEST_ILLEGAL_VT_REGID(7, 5, 5, fadd.d, f1, f2, f7) - - TEST_PASSFAIL - -# the handler gets rewritten for every test, but need this for the framework -stvec_handler: - j fail - -RVTEST_CODE_END - - .data -RVTEST_DATA_BEGIN - - TEST_DATA - -src1: - .dword 1 - .dword 2 - .dword 3 - .dword 4 -src2: - .dword 4 - .dword 3 - .dword 2 - .dword 1 -dest: - .dword 0xdeadbeefcafebabe - .dword 0xdeadbeefcafebabe - .dword 0xdeadbeefcafebabe - .dword 0xdeadbeefcafebabe - -RVTEST_DATA_END diff --git a/isa/rv64sv/ma_utld.S b/isa/rv64sv/ma_utld.S deleted file mode 100644 index 5ea6ee6..0000000 --- a/isa/rv64sv/ma_utld.S +++ /dev/null @@ -1,103 +0,0 @@ -# See LICENSE for license details. - -#***************************************************************************** -# ma_utld.S -#----------------------------------------------------------------------------- -# -# Test misaligned ut ld trap. -# - -#include "riscv_test.h" -#include "test_macros.h" - -RVTEST_RV64SV -RVTEST_CODE_BEGIN - - vsetcfg 32,0 - li a3,4 - vsetvl a3,a3 - - la a3, dest+1 - vmsv vx1, a3 - lui a0,%hi(vtcode1) - vf %lo(vtcode1)(a0) - fence - -vtcode1: - lw x2, 0(x1) - stop - -vtcode2: - add x2,x2,x3 - stop - -stvec_handler: - vxcptkill - - li TESTNUM,2 - - # check cause - csrr a3, scause - li a4,HWACHA_CAUSE_MISALIGNED_LOAD - bne a3,a4,fail - - # check vec irq aux - csrr a3, sbadaddr - la a4,dest+1 - bne a3,a4,fail - - # make sure vector unit has cleared out - vsetcfg 32,0 - li a3,4 - vsetvl a3,a3 - - la a3,src1 - la a4,src2 - vld vx2,a3 - vld vx3,a4 - lui a0,%hi(vtcode2) - vf %lo(vtcode2)(a0) - la a5,dest - vsd vx2,a5 - fence - - ld a1,0(a5) - li a2,5 - li TESTNUM,2 - bne a1,a2,fail - ld a1,8(a5) - li TESTNUM,3 - bne a1,a2,fail - ld a1,16(a5) - li TESTNUM,4 - bne a1,a2,fail - ld a1,24(a5) - li TESTNUM,5 - bne a1,a2,fail - - TEST_PASSFAIL - -RVTEST_CODE_END - - .data -RVTEST_DATA_BEGIN - - TEST_DATA - -src1: - .dword 1 - .dword 2 - .dword 3 - .dword 4 -src2: - .dword 4 - .dword 3 - .dword 2 - .dword 1 -dest: - .dword 0xdeadbeefcafebabe - .dword 0xdeadbeefcafebabe - .dword 0xdeadbeefcafebabe - .dword 0xdeadbeefcafebabe - -RVTEST_DATA_END diff --git a/isa/rv64sv/ma_utsd.S b/isa/rv64sv/ma_utsd.S deleted file mode 100644 index 47df11b..0000000 --- a/isa/rv64sv/ma_utsd.S +++ /dev/null @@ -1,105 +0,0 @@ -# See LICENSE for license details. - -#***************************************************************************** -# ma_utsd.S -#----------------------------------------------------------------------------- -# -# Test misaligned ut sd trap. -# - -#include "riscv_test.h" -#include "test_macros.h" - -RVTEST_RV64SV -RVTEST_CODE_BEGIN - - vsetcfg 32,0 - li a3,4 - vsetvl a3,a3 - - la a3, dest+1 - vmsv vx1, a3 - lui a0,%hi(vtcode1) - vf %lo(vtcode1)(a0) - la a3, dest+1 - vsd vx1, a3 - fence - -vtcode1: - sw x2, 0(x1) - stop - -vtcode2: - add x2,x2,x3 - stop - -stvec_handler: - vxcptkill - - li TESTNUM,2 - - # check cause - csrr a3, scause - li a4,HWACHA_CAUSE_MISALIGNED_STORE - bne a3,a4,fail - - # check vec irq aux - csrr a3, sbadaddr - la a4, dest+1 - bne a3,a4,fail - - # make sure vector unit has cleared out - vsetcfg 32,0 - li a3,4 - vsetvl a3,a3 - - la a3,src1 - la a4,src2 - vld vx2,a3 - vld vx3,a4 - lui a0,%hi(vtcode2) - vf %lo(vtcode2)(a0) - la a5,dest - vsd vx2,a5 - fence - - ld a1,0(a5) - li a2,5 - li TESTNUM,2 - bne a1,a2,fail - ld a1,8(a5) - li TESTNUM,3 - bne a1,a2,fail - ld a1,16(a5) - li TESTNUM,4 - bne a1,a2,fail - ld a1,24(a5) - li TESTNUM,5 - bne a1,a2,fail - - TEST_PASSFAIL - -RVTEST_CODE_END - - .data -RVTEST_DATA_BEGIN - - TEST_DATA - -src1: - .dword 1 - .dword 2 - .dword 3 - .dword 4 -src2: - .dword 4 - .dword 3 - .dword 2 - .dword 1 -dest: - .dword 0xdeadbeefcafebabe - .dword 0xdeadbeefcafebabe - .dword 0xdeadbeefcafebabe - .dword 0xdeadbeefcafebabe - -RVTEST_DATA_END diff --git a/isa/rv64sv/ma_vld.S b/isa/rv64sv/ma_vld.S deleted file mode 100644 index 2cdc2d4..0000000 --- a/isa/rv64sv/ma_vld.S +++ /dev/null @@ -1,104 +0,0 @@ -# See LICENSE for license details. - -#***************************************************************************** -# ma_vld.S -#----------------------------------------------------------------------------- -# -# Test misaligned vector ld trap. -# - -#include "riscv_test.h" -#include "test_macros.h" - -RVTEST_RV64SV -RVTEST_CODE_BEGIN - - vsetcfg 32,0 - li a3,4 - vsetvl a3,a3 - - la a3, dest+1 - vld vx2,a3 - vld vx3,a4 - lui a0,%hi(vtcode1) - vf %lo(vtcode1)(a0) - fence - -vtcode1: - add x2,x2,x3 - stop - -vtcode2: - add x2,x2,x3 - stop - -stvec_handler: - vxcptkill - - li TESTNUM,2 - - # check cause - csrr a3, scause - li a4,HWACHA_CAUSE_MISALIGNED_LOAD - bne a3,a4,fail - - # check vec irq aux - csrr a3, sbadaddr - la a4,dest+1 - bne a3,a4,fail - - # make sure vector unit has cleared out - vsetcfg 32,0 - li a3,4 - vsetvl a3,a3 - - la a3,src1 - la a4,src2 - vld vx2,a3 - vld vx3,a4 - lui a0,%hi(vtcode2) - vf %lo(vtcode2)(a0) - la a5,dest - vsd vx2,a5 - fence - - ld a1,0(a5) - li a2,5 - li TESTNUM,2 - bne a1,a2,fail - ld a1,8(a5) - li TESTNUM,3 - bne a1,a2,fail - ld a1,16(a5) - li TESTNUM,4 - bne a1,a2,fail - ld a1,24(a5) - li TESTNUM,5 - bne a1,a2,fail - - TEST_PASSFAIL - -RVTEST_CODE_END - - .data -RVTEST_DATA_BEGIN - - TEST_DATA - -src1: - .dword 1 - .dword 2 - .dword 3 - .dword 4 -src2: - .dword 4 - .dword 3 - .dword 2 - .dword 1 -dest: - .dword 0xdeadbeefcafebabe - .dword 0xdeadbeefcafebabe - .dword 0xdeadbeefcafebabe - .dword 0xdeadbeefcafebabe - -RVTEST_DATA_END diff --git a/isa/rv64sv/ma_vsd.S b/isa/rv64sv/ma_vsd.S deleted file mode 100644 index e113f99..0000000 --- a/isa/rv64sv/ma_vsd.S +++ /dev/null @@ -1,107 +0,0 @@ -# See LICENSE for license details. - -#***************************************************************************** -# ma_vsd.S -#----------------------------------------------------------------------------- -# -# Test misaligned vector sd trap. -# - -#include "riscv_test.h" -#include "test_macros.h" - -RVTEST_RV64SV -RVTEST_CODE_BEGIN - - vsetcfg 32,0 - li a3,4 - vsetvl a3,a3 - - la a3, src1 - la a4, src2 - vld vx2,a3 - vld vx3,a4 - lui a0,%hi(vtcode1) - vf %lo(vtcode1)(a0) - la a3, dest+1 - vsd vx1, a3 - fence - -vtcode1: - add x2,x2,x3 - stop - -vtcode2: - add x2,x2,x3 - stop - -stvec_handler: - vxcptkill - - li TESTNUM,2 - - # check cause - csrr a3, scause - li a4,HWACHA_CAUSE_MISALIGNED_STORE - bne a3,a4,fail - - # check vec irq aux - csrr a3, sbadaddr - la a4,dest+1 - bne a3,a4,fail - - # make sure vector unit has cleared out - vsetcfg 32,0 - li a3,4 - vsetvl a3,a3 - - la a3,src1 - la a4,src2 - vld vx2,a3 - vld vx3,a4 - lui a0,%hi(vtcode2) - vf %lo(vtcode2)(a0) - la a5,dest - vsd vx2,a5 - fence - - ld a1,0(a5) - li a2,5 - li TESTNUM,2 - bne a1,a2,fail - ld a1,8(a5) - li TESTNUM,3 - bne a1,a2,fail - ld a1,16(a5) - li TESTNUM,4 - bne a1,a2,fail - ld a1,24(a5) - li TESTNUM,5 - bne a1,a2,fail - - TEST_PASSFAIL - -RVTEST_CODE_END - - .data -RVTEST_DATA_BEGIN - - TEST_DATA - -src1: - .dword 1 - .dword 2 - .dword 3 - .dword 4 -src2: - .dword 4 - .dword 3 - .dword 2 - .dword 1 -dest: - .dword 0xdeadbeefcafebabe - .dword 0xdeadbeefcafebabe - .dword 0xdeadbeefcafebabe - .dword 0xdeadbeefcafebabe - -RVTEST_DATA_END diff --git a/isa/rv64sv/ma_vt_inst.S b/isa/rv64sv/ma_vt_inst.S deleted file mode 100644 index a257942..0000000 --- a/isa/rv64sv/ma_vt_inst.S +++ /dev/null @@ -1,99 +0,0 @@ -# See LICENSE for license details. - -#***************************************************************************** -# ma_vt_inst.S -#----------------------------------------------------------------------------- -# -# Test misaligned vt instruction trap. -# - -#include "riscv_test.h" -#include "test_macros.h" - -RVTEST_RV64SV -RVTEST_CODE_BEGIN - - vsetcfg 32,0 - li a3,4 - vsetvl a3,a3 - - lui a0,%hi(vtcode1+2) - vf %lo(vtcode1+2)(a0) -1: j 1b - -vtcode1: - add x2,x2,x3 - stop - -stvec_handler: - vxcptkill - - li TESTNUM,2 - - # check cause - csrr a3, scause - li a4,HWACHA_CAUSE_VF_MISALIGNED_FETCH - bne a3,a4,fail - - # check badvaddr - csrr a3, sbadaddr - la a4,vtcode1+2 - andi a3, a3, -4 # mask off lower bits so that may - andi a4, a4, -4 # ignore impl. specific behavior - bne a3,a4,fail - - # make sure vector unit has cleared out - vsetcfg 32,0 - li a3,4 - vsetvl a3,a3 - - la a3,src1 - la a4,src2 - vld vx2,a3 - vld vx3,a4 - lui a0,%hi(vtcode1) - vf %lo(vtcode1)(a0) - la a5,dest - vsd vx2,a5 - fence - - ld a1,0(a5) - li a2,5 - li TESTNUM,2 - bne a1,a2,fail - ld a1,8(a5) - li TESTNUM,3 - bne a1,a2,fail - ld a1,16(a5) - li TESTNUM,4 - bne a1,a2,fail - ld a1,24(a5) - li TESTNUM,5 - bne a1,a2,fail - - TEST_PASSFAIL - -RVTEST_CODE_END - - .data -RVTEST_DATA_BEGIN - - TEST_DATA - -src1: - .dword 1 - .dword 2 - .dword 3 - .dword 4 -src2: - .dword 4 - .dword 3 - .dword 2 - .dword 1 -dest: - .dword 0xdeadbeefcafebabe - .dword 0xdeadbeefcafebabe - .dword 0xdeadbeefcafebabe - .dword 0xdeadbeefcafebabe - -RVTEST_DATA_END diff --git a/isa/rv64sv/privileged_inst.S b/isa/rv64sv/privileged_inst.S deleted file mode 100644 index e59d361..0000000 --- a/isa/rv64sv/privileged_inst.S +++ /dev/null @@ -1,100 +0,0 @@ -# See LICENSE for license details. - -#***************************************************************************** -# illegal_tvec_cmd.S -#----------------------------------------------------------------------------- -# -# Test illegal tvec command trap. -# - -#include "riscv_test.h" -#include "test_macros.h" - -RVTEST_RV64SV -RVTEST_CODE_BEGIN - - li a3, SSTATUS_PS - csrc sstatus, a3 - la t0, 1f - csrw sepc, t0 - sret -1: - -privileged_inst: - vxcptcause a3 # privileged inst - -vtcode2: - add x2,x2,x3 - stop - -stvec_handler: - vxcptkill - - li TESTNUM,2 - - # check cause - csrr a3, scause - li a4,HWACHA_CAUSE_PRIVILEGED_INSTRUCTION - bne a3,a4,fail - - # check vec irq aux - csrr a3, sbadaddr - la a4, privileged_inst - lw a5, 0(a4) - bne a3,a5,fail - - # make sure vector unit has cleared out - vsetcfg 32,0 - li a3,4 - vsetvl a3,a3 - - la a3,src1 - la a4,src2 - vld vx2,a3 - vld vx3,a4 - lui a0,%hi(vtcode2) - vf %lo(vtcode2)(a0) - la a5,dest - vsd vx2,a5 - fence - - ld a1,0(a5) - li a2,5 - li TESTNUM,2 - bne a1,a2,fail - ld a1,8(a5) - li TESTNUM,3 - bne a1,a2,fail - ld a1,16(a5) - li TESTNUM,4 - bne a1,a2,fail - ld a1,24(a5) - li TESTNUM,5 - bne a1,a2,fail - - TEST_PASSFAIL - -RVTEST_CODE_END - - .data -RVTEST_DATA_BEGIN - - TEST_DATA - -src1: - .dword 1 - .dword 2 - .dword 3 - .dword 4 -src2: - .dword 4 - .dword 3 - .dword 2 - .dword 1 -dest: - .dword 0xdeadbeefcafebabe - .dword 0xdeadbeefcafebabe - .dword 0xdeadbeefcafebabe - .dword 0xdeadbeefcafebabe - -RVTEST_DATA_END diff --git a/isa/rv64uf/Makefrag b/isa/rv64uf/Makefrag index d604a85..c42b5f7 100644 --- a/isa/rv64uf/Makefrag +++ b/isa/rv64uf/Makefrag @@ -6,14 +6,8 @@ rv64uf_sc_tests = \ fadd fdiv fclass fcmp fcvt fcvt_w fmadd fmin fsgnj \ ldst move structural recoding \ -rv64uf_sc_vec_tests = \ - fadd fcmp fcvt fcvt_w fmadd fmin fsgnj \ - rv64uf_p_tests = $(addprefix rv64uf-p-, $(rv64uf_sc_tests)) rv64uf_pt_tests = $(addprefix rv64uf-pt-, $(rv64uf_sc_tests)) rv64uf_v_tests = $(addprefix rv64uf-v-, $(rv64uf_sc_tests)) -rv64uf_p_vec_tests = $(addprefix rv64uf-p-vec-, $(rv64uf_sc_vec_tests)) -rv64uf_pt_vec_tests = $(addprefix rv64uf-pt-vec-, $(rv64uf_sc_vec_tests)) -rv64uf_v_vec_tests = $(addprefix rv64uf-v-vec-, $(rv64uf_sc_vec_tests)) -spike_tests += $(rv64uf_p_tests) $(rv64uf_pt_tests) $(rv64uf_v_tests) $(rv64uf_p_vec_tests) $(rv64uf_pt_vec_tests) $(rv64uf_v_vec_tests) +spike_tests += $(rv64uf_p_tests) $(rv64uf_pt_tests) $(rv64uf_v_tests) diff --git a/isa/rv64ui/Makefrag b/isa/rv64ui/Makefrag index 53f9a7f..d8d21af 100644 --- a/isa/rv64ui/Makefrag +++ b/isa/rv64ui/Makefrag @@ -29,25 +29,9 @@ rv64ui_sc_tests = \ rv64ui_mc_tests = \ lrsc -rv64ui_sc_vec_tests = \ - add addi addiw addw \ - and andi \ - lui \ - mul mulh mulhsu mulhu mulw \ - or ori \ - sll slli slliw sllw \ - slt slti sltiu sltu \ - sra srai sraiw sraw \ - srl srli srliw srlw \ - sub subw \ - xor xori \ - rv64ui_p_tests = $(addprefix rv64ui-p-, $(rv64ui_sc_tests)) rv64ui_pt_tests = $(addprefix rv64ui-pt-, $(rv64ui_sc_tests)) rv64ui_pm_tests = $(addprefix rv64ui-pm-, $(rv64ui_mc_tests)) rv64ui_v_tests = $(addprefix rv64ui-v-, $(rv64ui_sc_tests)) -rv64ui_p_vec_tests = $(addprefix rv64ui-p-vec-, $(rv64ui_sc_vec_tests)) -rv64ui_pt_vec_tests = $(addprefix rv64ui-pt-vec-, $(rv64ui_sc_vec_tests)) -rv64ui_v_vec_tests = $(addprefix rv64ui-v-vec-, $(rv64ui_sc_vec_tests)) -spike_tests += $(rv64ui_p_tests) $(rv64ui_pm_tests) $(rv64ui_pt_tests) $(rv64ui_v_tests) $(rv64ui_p_vec_tests) $(rv64ui_pt_vec_tests) $(rv64ui_v_vec_tests) +spike_tests += $(rv64ui_p_tests) $(rv64ui_pm_tests) $(rv64ui_pt_tests) $(rv64ui_v_tests) diff --git a/isa/rv64uv/Makefrag b/isa/rv64uv/Makefrag deleted file mode 100644 index 856721b..0000000 --- a/isa/rv64uv/Makefrag +++ /dev/null @@ -1,34 +0,0 @@ -#======================================================================= -# Makefrag for rv64uv tests -#----------------------------------------------------------------------- - -rv64uv_sc_tests = \ - wakeup fence \ - vsetcfgi vsetcfg vsetvl keepcfg \ - vmvv vmsv \ - vfmvv vfmsv_d vfmsv_s \ - utidx \ - lb lbu lh lhu lw lwu ld \ - sb sh sw sd \ - fld flw \ - fsd fsw \ - amoadd_d amoand_d amomax_d amomaxu_d amomin_d amominu_d amoor_d amoswap_d amoxor_d \ - amoadd_w amoand_w amomax_w amomaxu_w amomin_w amominu_w amoor_w amoswap_w amoxor_w \ - imul \ - movn movz \ - fcvt fma fma_many \ - fmovn fmovz \ - vvadd_d vvadd_w vvadd_fd vvadd_fw \ - vvmul_d \ - -rv64uv_sc_vec_tests = \ - beq bge bgeu blt bltu bne \ - -rv64uv_p_tests = $(addprefix rv64uv-p-, $(rv64uv_sc_tests)) -rv64uv_pt_tests = $(addprefix rv64uv-pt-, $(rv64uv_sc_tests)) -rv64uv_v_tests = $(addprefix rv64uv-v-, $(rv64uv_sc_tests)) -rv64uv_p_vec_tests = $(addprefix rv64uv-p-vec-, $(rv64uv_sc_vec_tests)) -rv64uv_pt_vec_tests = $(addprefix rv64uv-pt-vec-, $(rv64uv_sc_vec_tests)) -rv64uv_v_vec_tests = $(addprefix rv64uv-v-vec-, $(rv64uv_sc_vec_tests)) - -spike_tests += $(rv64uv_p_tests) $(rv64uv_pt_tests) $(rv64uv_v_tests) diff --git a/isa/rv64uv/amoadd_d.S b/isa/rv64uv/amoadd_d.S deleted file mode 100644 index a90fb10..0000000 --- a/isa/rv64uv/amoadd_d.S +++ /dev/null @@ -1,58 +0,0 @@ -# See LICENSE for license details. - -#***************************************************************************** -# amoadd_d.S -#----------------------------------------------------------------------------- -# -# Test amoadd.d instruction in a vf block. -# - -#include "riscv_test.h" -#include "test_macros.h" - -RVTEST_RV64UV -RVTEST_CODE_BEGIN - - vsetcfg 4,0 - li a4,2048 - vsetvl a4,a4 - - la a5,amodest - vmsv vx2,a5 - li a5,1 - vmsv vx3,a5 - lui a0,%hi(vtcode) - vf %lo(vtcode)(a0) - la a6,dest - vsd vx1,a6 - fence - - li a1,0 -loop: - ld a0,0(a6) - addi TESTNUM,a1,2 - bne a0,a1,fail - addi a6,a6,8 - addi a1,a1,1 - bne a1,a4,loop - j pass - -vtcode: - amoadd.d x1,x3,0(x2) - stop - - TEST_PASSFAIL - -RVTEST_CODE_END - - .data -RVTEST_DATA_BEGIN - - TEST_DATA - -amodest: - .dword 0 -dest: - .skip 16384 - -RVTEST_DATA_END diff --git a/isa/rv64uv/amoadd_w.S b/isa/rv64uv/amoadd_w.S deleted file mode 100644 index c0005b0..0000000 --- a/isa/rv64uv/amoadd_w.S +++ /dev/null @@ -1,58 +0,0 @@ -# See LICENSE for license details. - -#***************************************************************************** -# amoadd_w.S -#----------------------------------------------------------------------------- -# -# Test amoadd.w instruction in a vf block. -# - -#include "riscv_test.h" -#include "test_macros.h" - -RVTEST_RV64UV -RVTEST_CODE_BEGIN - - vsetcfg 4,0 - li a4,2048 - vsetvl a4,a4 - - la a5,amodest - vmsv vx2,a5 - li a5,1 - vmsv vx3,a5 - lui a0,%hi(vtcode) - vf %lo(vtcode)(a0) - la a6,dest - vsw vx1,a6 - fence - - li a1,0 -loop: - lw a0,0(a6) - addi TESTNUM,a1,2 - bne a0,a1,fail - addi a6,a6,4 - addi a1,a1,1 - bne a1,a4,loop - j pass - -vtcode: - amoadd.w x1,x3,0(x2) - stop - - TEST_PASSFAIL - -RVTEST_CODE_END - - .data -RVTEST_DATA_BEGIN - - TEST_DATA - -amodest: - .word 0 -dest: - .skip 16384 - -RVTEST_DATA_END diff --git a/isa/rv64uv/amoand_d.S b/isa/rv64uv/amoand_d.S deleted file mode 100644 index e9e835d..0000000 --- a/isa/rv64uv/amoand_d.S +++ /dev/null @@ -1,58 +0,0 @@ -# See LICENSE for license details. - -#***************************************************************************** -# amoand_d.S -#----------------------------------------------------------------------------- -# -# Test amoand.d instruction in a vf block. -# - -#include "riscv_test.h" -#include "test_macros.h" - -RVTEST_RV64UV -RVTEST_CODE_BEGIN - - vsetcfg 4,0 - li a4,2048 - vsetvl a4,a4 - - la a5,amodest - vmsv vx2,a5 - lui a0,%hi(vtcode) - vf %lo(vtcode)(a0) - la a6,dest - vsd vx1,a6 - fence - - li a1,0 - li a2,0 -loop: - ld a0,0(a6) - addi TESTNUM,a1,2 - bne a0,a2,fail - addi a6,a6,8 - addi a1,a1,1 - bne a1,a4,loop - j pass - -vtcode: - li x3,-1 - amoand.d x1,x3,0(x2) - stop - - TEST_PASSFAIL - -RVTEST_CODE_END - - .data -RVTEST_DATA_BEGIN - - TEST_DATA - -amodest: - .dword 0 -dest: - .skip 16384 - -RVTEST_DATA_END diff --git a/isa/rv64uv/amoand_w.S b/isa/rv64uv/amoand_w.S deleted file mode 100644 index 2dcb343..0000000 --- a/isa/rv64uv/amoand_w.S +++ /dev/null @@ -1,58 +0,0 @@ -# See LICENSE for license details. - -#***************************************************************************** -# amoand_w.S -#----------------------------------------------------------------------------- -# -# Test amoand.w instruction in a vf block. -# - -#include "riscv_test.h" -#include "test_macros.h" - -RVTEST_RV64UV -RVTEST_CODE_BEGIN - - vsetcfg 4,0 - li a4,2048 - vsetvl a4,a4 - - la a5,amodest - vmsv vx2,a5 - lui a0,%hi(vtcode) - vf %lo(vtcode)(a0) - la a6,dest - vsw vx1,a6 - fence - - li a1,0 - li a2,0 -loop: - lw a0,0(a6) - addi TESTNUM,a1,2 - bne a0,a2,fail - addi a6,a6,4 - addi a1,a1,1 - bne a1,a4,loop - j pass - -vtcode: - li x3,-1 - amoand.w x1,x3,0(x2) - stop - - TEST_PASSFAIL - -RVTEST_CODE_END - - .data -RVTEST_DATA_BEGIN - - TEST_DATA - -amodest: - .word 0 -dest: - .skip 16384 - -RVTEST_DATA_END diff --git a/isa/rv64uv/amomax_d.S b/isa/rv64uv/amomax_d.S deleted file mode 100644 index 321a43f..0000000 --- a/isa/rv64uv/amomax_d.S +++ /dev/null @@ -1,61 +0,0 @@ -# See LICENSE for license details. - -#***************************************************************************** -# amomax_d.S -#----------------------------------------------------------------------------- -# -# Test amomax.d instruction in a vf block. -# - -#include "riscv_test.h" -#include "test_macros.h" - -RVTEST_RV64UV -RVTEST_CODE_BEGIN - - vsetcfg 4,0 - li a4,2048 - vsetvl a4,a4 - - la a5,amodest - vmsv vx2,a5 - lui a0,%hi(vtcode) - vf %lo(vtcode)(a0) - la a6,dest - vsd vx1,a6 - fence - - li a1,0 - li a2,0 -loop: - ld a0,0(a6) - addi TESTNUM,a1,2 - bne a0,a2,fail - addi a6,a6,8 - addi a1,a1,1 - bne a1,a4,loop - j pass - -vtcode: - utidx x3 - addi x3,x3,1 - li x1,-1 - mul x3,x3,x1 - amomax.d x1,x3,0(x2) - stop - - TEST_PASSFAIL - -RVTEST_CODE_END - - .data -RVTEST_DATA_BEGIN - - TEST_DATA - -amodest: - .dword 0 -dest: - .skip 16384 - -RVTEST_DATA_END diff --git a/isa/rv64uv/amomax_w.S b/isa/rv64uv/amomax_w.S deleted file mode 100644 index e49d4ed..0000000 --- a/isa/rv64uv/amomax_w.S +++ /dev/null @@ -1,61 +0,0 @@ -# See LICENSE for license details. - -#***************************************************************************** -# amomax_w.S -#----------------------------------------------------------------------------- -# -# Test amomax.w instruction in a vf block. -# - -#include "riscv_test.h" -#include "test_macros.h" - -RVTEST_RV64UV -RVTEST_CODE_BEGIN - - vsetcfg 4,0 - li a4,2048 - vsetvl a4,a4 - - la a5,amodest - vmsv vx2,a5 - lui a0,%hi(vtcode) - vf %lo(vtcode)(a0) - la a6,dest - vsw vx1,a6 - fence - - li a1,0 - li a2,0 -loop: - lw a0,0(a6) - addi TESTNUM,a1,2 - bne a0,a2,fail - addi a6,a6,4 - addi a1,a1,1 - bne a1,a4,loop - j pass - -vtcode: - utidx x3 - addi x3,x3,1 - li x1,-1 - mul x3,x3,x1 - amomax.w x1,x3,0(x2) - stop - - TEST_PASSFAIL - -RVTEST_CODE_END - - .data -RVTEST_DATA_BEGIN - - TEST_DATA - -amodest: - .word 0 -dest: - .skip 16384 - -RVTEST_DATA_END diff --git a/isa/rv64uv/amomaxu_d.S b/isa/rv64uv/amomaxu_d.S deleted file mode 100644 index 77162e5..0000000 --- a/isa/rv64uv/amomaxu_d.S +++ /dev/null @@ -1,61 +0,0 @@ -# See LICENSE for license details. - -#***************************************************************************** -# amomaxu_d.S -#----------------------------------------------------------------------------- -# -# Test amomaxu.d instruction in a vf block. -# - -#include "riscv_test.h" -#include "test_macros.h" - -RVTEST_RV64UV -RVTEST_CODE_BEGIN - - vsetcfg 4,0 - li a4,2048 - vsetvl a4,a4 - - la a5,amodest - vmsv vx2,a5 - lui a0,%hi(vtcode) - vf %lo(vtcode)(a0) - la a6,dest - vsd vx1,a6 - fence - - li a1,0 - li a2,-1 -loop: - ld a0,0(a6) - addi TESTNUM,a1,2 - bne a0,a2,fail - addi a6,a6,8 - addi a1,a1,1 - bne a1,a4,loop - j pass - -vtcode: - utidx x3 - addi x3,x3,1 - li x1,-1 - mul x3,x3,x1 - amomaxu.d x1,x3,0(x2) - stop - - TEST_PASSFAIL - -RVTEST_CODE_END - - .data -RVTEST_DATA_BEGIN - - TEST_DATA - -amodest: - .dword -1 -dest: - .skip 16384 - -RVTEST_DATA_END diff --git a/isa/rv64uv/amomaxu_w.S b/isa/rv64uv/amomaxu_w.S deleted file mode 100644 index 83250eb..0000000 --- a/isa/rv64uv/amomaxu_w.S +++ /dev/null @@ -1,61 +0,0 @@ -# See LICENSE for license details. - -#***************************************************************************** -# amomaxu_w.S -#----------------------------------------------------------------------------- -# -# Test amomaxu.w instruction in a vf block. -# - -#include "riscv_test.h" -#include "test_macros.h" - -RVTEST_RV64UV -RVTEST_CODE_BEGIN - - vsetcfg 4,0 - li a4,2048 - vsetvl a4,a4 - - la a5,amodest - vmsv vx2,a5 - lui a0,%hi(vtcode) - vf %lo(vtcode)(a0) - la a6,dest - vsw vx1,a6 - fence - - li a1,0 - li a2,-1 -loop: - lw a0,0(a6) - addi TESTNUM,a1,2 - bne a0,a2,fail - addi a6,a6,4 - addi a1,a1,1 - bne a1,a4,loop - j pass - -vtcode: - utidx x3 - addi x3,x3,1 - li x1,-1 - mul x3,x3,x1 - amomaxu.w x1,x3,0(x2) - stop - - TEST_PASSFAIL - -RVTEST_CODE_END - - .data -RVTEST_DATA_BEGIN - - TEST_DATA - -amodest: - .word -1 -dest: - .skip 16384 - -RVTEST_DATA_END diff --git a/isa/rv64uv/amomin_d.S b/isa/rv64uv/amomin_d.S deleted file mode 100644 index 2921884..0000000 --- a/isa/rv64uv/amomin_d.S +++ /dev/null @@ -1,65 +0,0 @@ -# See LICENSE for license details. - -#***************************************************************************** -# amomin_d.S -#----------------------------------------------------------------------------- -# -# Test amomin.d instruction in a vf block. -# - -#include "riscv_test.h" -#include "test_macros.h" - -RVTEST_RV64UV -RVTEST_CODE_BEGIN - - vsetcfg 4,0 - li a4,2048 - vsetvl a4,a4 - - la a5,amodest - vmsv vx2,a5 - lui a0,%hi(vtcode) - vf %lo(vtcode)(a0) - la a6,dest - vsd vx1,a6 - fence - - li a1,0 - li a2,-1 -loop: - ld a0,0(a5) - addi TESTNUM,a1,2 - bne a0,a2,fail - addi a5,a5,8 - addi a1,a1,1 - addi a2,a2,-1 - bne a1,a4,loop - j pass - -vtcode: - utidx x3 - slli x3, x3, 3 - add x2, x2, x3 - utidx x3 - addi x3,x3,1 - li x1,-1 - mul x3,x3,x1 - amomin.d x1,x3,0(x2) - stop - - TEST_PASSFAIL - -RVTEST_CODE_END - - .data -RVTEST_DATA_BEGIN - - TEST_DATA - -amodest: - .skip 16384 -dest: - .skip 16384 - -RVTEST_DATA_END diff --git a/isa/rv64uv/amomin_w.S b/isa/rv64uv/amomin_w.S deleted file mode 100644 index 18d71b7..0000000 --- a/isa/rv64uv/amomin_w.S +++ /dev/null @@ -1,62 +0,0 @@ -# See LICENSE for license details. - -#***************************************************************************** -# amomin_w.S -#----------------------------------------------------------------------------- -# -# Test amomin.w instruction in a vf block. -# - -#include "riscv_test.h" -#include "test_macros.h" - -RVTEST_RV64UV -RVTEST_CODE_BEGIN - - vsetcfg 4,0 - li a4,2048 - vsetvl a4,a4 - - la a5,amodest - vmsv vx2,a5 - lui a0,%hi(vtcode) - vf %lo(vtcode)(a0) - la a6,dest - vsw vx1,a6 - fence - - li a1,0 - li a2,0 -loop: - lw a0,0(a6) - addi TESTNUM,a1,2 - bne a0,a2,fail - addi a6,a6,4 - addi a1,a1,1 - addi a2,a2,-1 - bne a1,a4,loop - j pass - -vtcode: - utidx x3 - addi x3,x3,1 - li x1,-1 - mul x3,x3,x1 - amomin.w x1,x3,0(x2) - stop - - TEST_PASSFAIL - -RVTEST_CODE_END - - .data -RVTEST_DATA_BEGIN - - TEST_DATA - -amodest: - .word 0 -dest: - .skip 16384 - -RVTEST_DATA_END diff --git a/isa/rv64uv/amominu_d.S b/isa/rv64uv/amominu_d.S deleted file mode 100644 index ed61a99..0000000 --- a/isa/rv64uv/amominu_d.S +++ /dev/null @@ -1,61 +0,0 @@ -# See LICENSE for license details. - -#***************************************************************************** -# amominu_d.S -#----------------------------------------------------------------------------- -# -# Test amominu.d instruction in a vf block. -# - -#include "riscv_test.h" -#include "test_macros.h" - -RVTEST_RV64UV -RVTEST_CODE_BEGIN - - vsetcfg 4,0 - li a4,2048 - vsetvl a4,a4 - - la a5,amodest - vmsv vx2,a5 - lui a0,%hi(vtcode) - vf %lo(vtcode)(a0) - la a6,dest - vsd vx1,a6 - fence - - li a1,0 - li a2,0 -loop: - ld a0,0(a6) - addi TESTNUM,a1,2 - bne a0,a2,fail - addi a6,a6,8 - addi a1,a1,1 - bne a1,a4,loop - j pass - -vtcode: - utidx x3 - addi x3,x3,1 - li x1,-1 - mul x3,x3,x1 - amominu.d x1,x3,0(x2) - stop - - TEST_PASSFAIL - -RVTEST_CODE_END - - .data -RVTEST_DATA_BEGIN - - TEST_DATA - -amodest: - .dword 0 -dest: - .skip 16384 - -RVTEST_DATA_END diff --git a/isa/rv64uv/amominu_w.S b/isa/rv64uv/amominu_w.S deleted file mode 100644 index 4e9544b..0000000 --- a/isa/rv64uv/amominu_w.S +++ /dev/null @@ -1,61 +0,0 @@ -# See LICENSE for license details. - -#***************************************************************************** -# amominu_w.S -#----------------------------------------------------------------------------- -# -# Test amominu.w instruction in a vf block. -# - -#include "riscv_test.h" -#include "test_macros.h" - -RVTEST_RV64UV -RVTEST_CODE_BEGIN - - vsetcfg 4,0 - li a4,2048 - vsetvl a4,a4 - - la a5,amodest - vmsv vx2,a5 - lui a0,%hi(vtcode) - vf %lo(vtcode)(a0) - la a6,dest - vsw vx1,a6 - fence - - li a1,0 - li a2,0 -loop: - lw a0,0(a6) - addi TESTNUM,a1,2 - bne a0,a2,fail - addi a6,a6,4 - addi a1,a1,1 - bne a1,a4,loop - j pass - -vtcode: - utidx x3 - addi x3,x3,1 - li x1,-1 - mul x3,x3,x1 - amominu.w x1,x3,0(x2) - stop - - TEST_PASSFAIL - -RVTEST_CODE_END - - .data -RVTEST_DATA_BEGIN - - TEST_DATA - -amodest: - .word 0 -dest: - .skip 16384 - -RVTEST_DATA_END diff --git a/isa/rv64uv/amoor_d.S b/isa/rv64uv/amoor_d.S deleted file mode 100644 index a7bdf52..0000000 --- a/isa/rv64uv/amoor_d.S +++ /dev/null @@ -1,58 +0,0 @@ -# See LICENSE for license details. - -#***************************************************************************** -# amoor_d.S -#----------------------------------------------------------------------------- -# -# Test amoor.d instruction in a vf block. -# - -#include "riscv_test.h" -#include "test_macros.h" - -RVTEST_RV64UV -RVTEST_CODE_BEGIN - - vsetcfg 4,0 - li a4,2048 - vsetvl a4,a4 - - la a5,amodest - vmsv vx2,a5 - lui a0,%hi(vtcode) - vf %lo(vtcode)(a0) - la a6,dest - vsd vx1,a6 - fence - - li a1,0 - li a2,-1 -loop: - ld a0,0(a6) - addi TESTNUM,a1,2 - bne a0,a2,fail - addi a6,a6,8 - addi a1,a1,1 - bne a1,a4,loop - j pass - -vtcode: - li x3,7 - amoor.d x1,x3,0(x2) - stop - - TEST_PASSFAIL - -RVTEST_CODE_END - - .data -RVTEST_DATA_BEGIN - - TEST_DATA - -amodest: - .dword -1 -dest: - .skip 16384 - -RVTEST_DATA_END diff --git a/isa/rv64uv/amoor_w.S b/isa/rv64uv/amoor_w.S deleted file mode 100644 index db1f275..0000000 --- a/isa/rv64uv/amoor_w.S +++ /dev/null @@ -1,58 +0,0 @@ -# See LICENSE for license details. - -#***************************************************************************** -# amoor_w.S -#----------------------------------------------------------------------------- -# -# Test amoor.w instruction in a vf block. -# - -#include "riscv_test.h" -#include "test_macros.h" - -RVTEST_RV64UV -RVTEST_CODE_BEGIN - - vsetcfg 4,0 - li a4,2048 - vsetvl a4,a4 - - la a5,amodest - vmsv vx2,a5 - lui a0,%hi(vtcode) - vf %lo(vtcode)(a0) - la a6,dest - vsw vx1,a6 - fence - - li a1,0 - li a2,-1 -loop: - lw a0,0(a6) - addi TESTNUM,a1,2 - bne a0,a2,fail - addi a6,a6,4 - addi a1,a1,1 - bne a1,a4,loop - j pass - -vtcode: - li x3,7 - amoor.w x1,x3,0(x2) - stop - - TEST_PASSFAIL - -RVTEST_CODE_END - - .data -RVTEST_DATA_BEGIN - - TEST_DATA - -amodest: - .word -1 -dest: - .skip 16384 - -RVTEST_DATA_END diff --git a/isa/rv64uv/amoswap_d.S b/isa/rv64uv/amoswap_d.S deleted file mode 100644 index 8b2aa87..0000000 --- a/isa/rv64uv/amoswap_d.S +++ /dev/null @@ -1,58 +0,0 @@ -# See LICENSE for license details. - -#***************************************************************************** -# amoswap_d.S -#----------------------------------------------------------------------------- -# -# Test amoswap.d instruction in a vf block. -# - -#include "riscv_test.h" -#include "test_macros.h" - -RVTEST_RV64UV -RVTEST_CODE_BEGIN - - vsetcfg 4,0 - li a4,2048 - vsetvl a4,a4 - - la a5,amodest - vmsv vx2,a5 - lui a0,%hi(vtcode) - vf %lo(vtcode)(a0) - la a6,dest - vsd vx1,a6 - fence - - li a1,0 -loop: - ld a0,0(a6) - addi TESTNUM,a1,2 - bne a0,a1,fail - addi a6,a6,8 - addi a1,a1,1 - bne a1,a4,loop - j pass - -vtcode: - utidx x3 - addi x3,x3,1 - amoswap.d x1,x3,0(x2) - stop - - TEST_PASSFAIL - -RVTEST_CODE_END - - .data -RVTEST_DATA_BEGIN - - TEST_DATA - -amodest: - .dword 0 -dest: - .skip 16384 - -RVTEST_DATA_END diff --git a/isa/rv64uv/amoswap_w.S b/isa/rv64uv/amoswap_w.S deleted file mode 100644 index dd1a837..0000000 --- a/isa/rv64uv/amoswap_w.S +++ /dev/null @@ -1,58 +0,0 @@ -# See LICENSE for license details. - -#***************************************************************************** -# amoswap_w.S -#----------------------------------------------------------------------------- -# -# Test amoswap.w instruction in a vf block. -# - -#include "riscv_test.h" -#include "test_macros.h" - -RVTEST_RV64UV -RVTEST_CODE_BEGIN - - vsetcfg 4,0 - li a4,2048 - vsetvl a4,a4 - - la a5,amodest - vmsv vx2,a5 - lui a0,%hi(vtcode) - vf %lo(vtcode)(a0) - la a6,dest - vsw vx1,a6 - fence - - li a1,0 -loop: - lw a0,0(a6) - addi TESTNUM,a1,2 - bne a0,a1,fail - addi a6,a6,4 - addi a1,a1,1 - bne a1,a4,loop - j pass - -vtcode: - utidx x3 - addi x3,x3,1 - amoswap.w x1,x3,0(x2) - stop - - TEST_PASSFAIL - -RVTEST_CODE_END - - .data -RVTEST_DATA_BEGIN - - TEST_DATA - -amodest: - .word 0 -dest: - .skip 16384 - -RVTEST_DATA_END diff --git a/isa/rv64uv/amoxor_d.S b/isa/rv64uv/amoxor_d.S deleted file mode 100644 index 78cb310..0000000 --- a/isa/rv64uv/amoxor_d.S +++ /dev/null @@ -1,60 +0,0 @@ -# See LICENSE for license details. - -#***************************************************************************** -# amoxor_d.S -#----------------------------------------------------------------------------- -# -# Test amoxor.d instruction in a vf block. -# - -#include "riscv_test.h" -#include "test_macros.h" - -RVTEST_RV64UV -RVTEST_CODE_BEGIN - - vsetcfg 4,0 - li a4,2048 - vsetvl a4,a4 - - la a5,amodest - vmsv vx2,a5 - lui a0,%hi(vtcode) - vf %lo(vtcode)(a0) - la a6,dest - vsd vx1,a6 - fence - - li a1,0 - li a2,-1 - li t0,0xaaaaaaaaaaaaaaaa -loop: - ld a0,0(a6) - addi TESTNUM,a1,2 - bne a0,a2,fail - addi a6,a6,8 - addi a1,a1,1 - xor a2,a2,t0 - bne a1,a4,loop - j pass - -vtcode: - li x3,0xaaaaaaaaaaaaaaaa - amoxor.d x1,x3,0(x2) - stop - - TEST_PASSFAIL - -RVTEST_CODE_END - - .data -RVTEST_DATA_BEGIN - - TEST_DATA - -amodest: - .dword -1 -dest: - .skip 16384 - -RVTEST_DATA_END diff --git a/isa/rv64uv/amoxor_w.S b/isa/rv64uv/amoxor_w.S deleted file mode 100644 index 6eee508..0000000 --- a/isa/rv64uv/amoxor_w.S +++ /dev/null @@ -1,60 +0,0 @@ -# See LICENSE for license details. - -#***************************************************************************** -# amoxor_w.S -#----------------------------------------------------------------------------- -# -# Test amoxor.w instruction in a vf block. -# - -#include "riscv_test.h" -#include "test_macros.h" - -RVTEST_RV64UV -RVTEST_CODE_BEGIN - - vsetcfg 4,0 - li a4,2048 - vsetvl a4,a4 - - la a5,amodest - vmsv vx2,a5 - lui a0,%hi(vtcode) - vf %lo(vtcode)(a0) - la a6,dest - vsw vx1,a6 - fence - - li a1,0 - li a2,-1 -loop: - lw a0,0(a6) - addi TESTNUM,a1,2 - bne a0,a2,fail - addi a6,a6,4 - addi a1,a1,1 - li t0,0xcafe - xor a2,a2,t0 - bne a1,a4,loop - j pass - -vtcode: - li x3,0xcafe - amoxor.w x1,x3,0(x2) - stop - - TEST_PASSFAIL - -RVTEST_CODE_END - - .data -RVTEST_DATA_BEGIN - - TEST_DATA - -amodest: - .word -1 -dest: - .skip 16384 - -RVTEST_DATA_END diff --git a/isa/rv64uv/beq.S b/isa/rv64uv/beq.S deleted file mode 100644 index 8c7bce4..0000000 --- a/isa/rv64uv/beq.S +++ /dev/null @@ -1,96 +0,0 @@ -# See LICENSE for license details. - -#***************************************************************************** -# beq.S -#----------------------------------------------------------------------------- -# -# Test beq instruction in a vf block. -# - -#include "riscv_test.h" -#include "test_macros.h" - -RVTEST_RV64UV -RVTEST_CODE_BEGIN - - #------------------------------------------------------------- - # Branch tests - #------------------------------------------------------------- - - # Each test checks both forward and backward branches - - TEST_BR2_OP_TAKEN( 2, beq, 0, 0 ); - TEST_BR2_OP_TAKEN( 3, beq, 1, 1 ); - TEST_BR2_OP_TAKEN( 4, beq, -1, -1 ); - - TEST_BR2_OP_NOTTAKEN( 5, beq, 0, 1 ); - TEST_BR2_OP_NOTTAKEN( 6, beq, 1, 0 ); - TEST_BR2_OP_NOTTAKEN( 7, beq, -1, 1 ); - TEST_BR2_OP_NOTTAKEN( 8, beq, 1, -1 ); - - #------------------------------------------------------------- - # Bypassing tests - #------------------------------------------------------------- - - TEST_BR2_SRC12_BYPASS( 9, 0, 0, beq, 0, -1 ); - TEST_BR2_SRC12_BYPASS( 10, 0, 1, beq, 0, -1 ); - TEST_BR2_SRC12_BYPASS( 11, 0, 2, beq, 0, -1 ); - TEST_BR2_SRC12_BYPASS( 12, 1, 0, beq, 0, -1 ); - TEST_BR2_SRC12_BYPASS( 13, 1, 1, beq, 0, -1 ); - TEST_BR2_SRC12_BYPASS( 14, 2, 0, beq, 0, -1 ); - - TEST_BR2_SRC12_BYPASS( 15, 0, 0, beq, 0, -1 ); - TEST_BR2_SRC12_BYPASS( 16, 0, 1, beq, 0, -1 ); - TEST_BR2_SRC12_BYPASS( 17, 0, 2, beq, 0, -1 ); - TEST_BR2_SRC12_BYPASS( 18, 1, 0, beq, 0, -1 ); - TEST_BR2_SRC12_BYPASS( 19, 1, 1, beq, 0, -1 ); - TEST_BR2_SRC12_BYPASS( 20, 2, 0, beq, 0, -1 ); - - #------------------------------------------------------------- - # Test when uts diverge - #------------------------------------------------------------- - - TEST_BR2_DIVERGED_ODD_EVEN( 24, beq, 1, 1, \ - addi x3, x3, 1; \ - ) - TEST_BR2_DIVERGED_ODD_EVEN( 25, beq, 2, 2, \ - addi x3, x3, 1; \ - ) - TEST_BR2_DIVERGED_ODD_EVEN( 26, beq, 3, 3, \ - addi x3, x3, 1; \ - ) - - TEST_BR2_DIVERGED_ODD_EVEN( 27, beq, 1, 16, \ - addi x3, x3, 4; \ - mul x3, x3, x3; \ - ) - TEST_BR2_DIVERGED_ODD_EVEN( 28, beq, 2, 400, \ - addi x3, x3, 4; \ - mul x3, x3, x3; \ - ) - TEST_BR2_DIVERGED_ODD_EVEN( 29, beq, 3, 163216, \ - addi x3, x3, 4; \ - mul x3, x3, x3; \ - ) - - TEST_BR2_DIVERGED_FULL12( 30, beq, 1, 1, \ - addi x3, x3, 1; \ - ) - - TEST_BR2_DIVERGED_FULL12( 31, beq, 1, 16, \ - addi x3, x3, 4; \ - mul x3, x3, x3; \ - ) - - TEST_BR2_DIVERGED_MEM_FULL12( 32, beq, 1); - - TEST_PASSFAIL - -RVTEST_CODE_END - - .data -RVTEST_DATA_BEGIN - - TEST_DATA - -RVTEST_DATA_END diff --git a/isa/rv64uv/bge.S b/isa/rv64uv/bge.S deleted file mode 100644 index 6763a1c..0000000 --- a/isa/rv64uv/bge.S +++ /dev/null @@ -1,99 +0,0 @@ -# See LICENSE for license details. - -#***************************************************************************** -# bge.S -#----------------------------------------------------------------------------- -# -# Test bge instruction in a vf block. -# - -#include "riscv_test.h" -#include "test_macros.h" - -RVTEST_RV64UV -RVTEST_CODE_BEGIN - - #------------------------------------------------------------- - # Branch tests - #------------------------------------------------------------- - - # Each test checks both forward and backward branches - - TEST_BR2_OP_TAKEN( 2, bge, 0, 0 ); - TEST_BR2_OP_TAKEN( 3, bge, 1, 1 ); - TEST_BR2_OP_TAKEN( 4, bge, -1, -1 ); - TEST_BR2_OP_TAKEN( 5, bge, 1, 0 ); - TEST_BR2_OP_TAKEN( 6, bge, 1, -1 ); - TEST_BR2_OP_TAKEN( 7, bge, -1, -2 ); - - TEST_BR2_OP_NOTTAKEN( 8, bge, 0, 1 ); - TEST_BR2_OP_NOTTAKEN( 9, bge, -1, 1 ); - TEST_BR2_OP_NOTTAKEN( 10, bge, -2, -1 ); - TEST_BR2_OP_NOTTAKEN( 11, bge, -2, 1 ); - - #------------------------------------------------------------- - # Bypassing tests - #------------------------------------------------------------- - - TEST_BR2_SRC12_BYPASS( 12, 0, 0, bge, -1, 0 ); - TEST_BR2_SRC12_BYPASS( 13, 0, 1, bge, -1, 0 ); - TEST_BR2_SRC12_BYPASS( 14, 0, 2, bge, -1, 0 ); - TEST_BR2_SRC12_BYPASS( 15, 1, 0, bge, -1, 0 ); - TEST_BR2_SRC12_BYPASS( 16, 1, 1, bge, -1, 0 ); - TEST_BR2_SRC12_BYPASS( 17, 2, 0, bge, -1, 0 ); - - TEST_BR2_SRC12_BYPASS( 18, 0, 0, bge, -1, 0 ); - TEST_BR2_SRC12_BYPASS( 19, 0, 1, bge, -1, 0 ); - TEST_BR2_SRC12_BYPASS( 20, 0, 2, bge, -1, 0 ); - TEST_BR2_SRC12_BYPASS( 21, 1, 0, bge, -1, 0 ); - TEST_BR2_SRC12_BYPASS( 22, 1, 1, bge, -1, 0 ); - TEST_BR2_SRC12_BYPASS( 23, 2, 0, bge, -1, 0 ); - - #------------------------------------------------------------- - # Test when uts diverge - #------------------------------------------------------------- - - TEST_BR2_DIVERGED_ODD_EVEN( 24, bge, 1, 1, \ - addi x3, x3, 1; \ - ) - TEST_BR2_DIVERGED_ODD_EVEN( 25, bge, 2, 2, \ - addi x3, x3, 1; \ - ) - TEST_BR2_DIVERGED_ODD_EVEN( 26, bge, 3, 3, \ - addi x3, x3, 1; \ - ) - - TEST_BR2_DIVERGED_ODD_EVEN( 27, bge, 1, 16, \ - addi x3, x3, 4; \ - mul x3, x3, x3; \ - ) - TEST_BR2_DIVERGED_ODD_EVEN( 28, bge, 2, 400, \ - addi x3, x3, 4; \ - mul x3, x3, x3; \ - ) - TEST_BR2_DIVERGED_ODD_EVEN( 29, bge, 3, 163216, \ - addi x3, x3, 4; \ - mul x3, x3, x3; \ - ) - - TEST_BR2_DIVERGED_FULL12( 30, bge, 1, 1, \ - addi x3, x3, 1; \ - ) - - TEST_BR2_DIVERGED_FULL12( 31, bge, 1, 16, \ - addi x3, x3, 4; \ - mul x3, x3, x3; \ - ) - - TEST_BR2_DIVERGED_MEM_FULL12( 32, bge, 1); - - TEST_PASSFAIL - -RVTEST_CODE_END - - .data -RVTEST_DATA_BEGIN - - TEST_DATA - -RVTEST_DATA_END diff --git a/isa/rv64uv/bgeu.S b/isa/rv64uv/bgeu.S deleted file mode 100644 index 527e446..0000000 --- a/isa/rv64uv/bgeu.S +++ /dev/null @@ -1,99 +0,0 @@ -# See LICENSE for license details. - -#***************************************************************************** -# bgeu.S -#----------------------------------------------------------------------------- -# -# Test bgeu instruction in a vf block. -# - -#include "riscv_test.h" -#include "test_macros.h" - -RVTEST_RV64UV -RVTEST_CODE_BEGIN - - #------------------------------------------------------------- - # Branch tests - #------------------------------------------------------------- - - # Each test checks both forward and backward branches - - TEST_BR2_OP_TAKEN( 2, bgeu, 0x00000000, 0x00000000 ); - TEST_BR2_OP_TAKEN( 3, bgeu, 0x00000001, 0x00000001 ); - TEST_BR2_OP_TAKEN( 4, bgeu, 0xffffffff, 0xffffffff ); - TEST_BR2_OP_TAKEN( 5, bgeu, 0x00000001, 0x00000000 ); - TEST_BR2_OP_TAKEN( 6, bgeu, 0xffffffff, 0xfffffffe ); - TEST_BR2_OP_TAKEN( 7, bgeu, 0xffffffff, 0x00000000 ); - - TEST_BR2_OP_NOTTAKEN( 8, bgeu, 0x00000000, 0x00000001 ); - TEST_BR2_OP_NOTTAKEN( 9, bgeu, 0xfffffffe, 0xffffffff ); - TEST_BR2_OP_NOTTAKEN( 10, bgeu, 0x00000000, 0xffffffff ); - TEST_BR2_OP_NOTTAKEN( 11, bgeu, 0x7fffffff, 0x80000000 ); - - #------------------------------------------------------------- - # Bypassing tests - #------------------------------------------------------------- - - TEST_BR2_SRC12_BYPASS( 12, 0, 0, bgeu, 0xefffffff, 0xf0000000 ); - TEST_BR2_SRC12_BYPASS( 13, 0, 1, bgeu, 0xefffffff, 0xf0000000 ); - TEST_BR2_SRC12_BYPASS( 14, 0, 2, bgeu, 0xefffffff, 0xf0000000 ); - TEST_BR2_SRC12_BYPASS( 15, 1, 0, bgeu, 0xefffffff, 0xf0000000 ); - TEST_BR2_SRC12_BYPASS( 16, 1, 1, bgeu, 0xefffffff, 0xf0000000 ); - TEST_BR2_SRC12_BYPASS( 17, 2, 0, bgeu, 0xefffffff, 0xf0000000 ); - - TEST_BR2_SRC12_BYPASS( 18, 0, 0, bgeu, 0xefffffff, 0xf0000000 ); - TEST_BR2_SRC12_BYPASS( 19, 0, 1, bgeu, 0xefffffff, 0xf0000000 ); - TEST_BR2_SRC12_BYPASS( 20, 0, 2, bgeu, 0xefffffff, 0xf0000000 ); - TEST_BR2_SRC12_BYPASS( 21, 1, 0, bgeu, 0xefffffff, 0xf0000000 ); - TEST_BR2_SRC12_BYPASS( 22, 1, 1, bgeu, 0xefffffff, 0xf0000000 ); - TEST_BR2_SRC12_BYPASS( 23, 2, 0, bgeu, 0xefffffff, 0xf0000000 ); - - #------------------------------------------------------------- - # Test when uts diverge - #------------------------------------------------------------- - - TEST_BR2_DIVERGED_ODD_EVEN( 24, bgeu, 1, 1, \ - addi x3, x3, 1; \ - ) - TEST_BR2_DIVERGED_ODD_EVEN( 25, bgeu, 2, 2, \ - addi x3, x3, 1; \ - ) - TEST_BR2_DIVERGED_ODD_EVEN( 26, bgeu, 3, 3, \ - addi x3, x3, 1; \ - ) - - TEST_BR2_DIVERGED_ODD_EVEN( 27, bgeu, 1, 16, \ - addi x3, x3, 4; \ - mul x3, x3, x3; \ - ) - TEST_BR2_DIVERGED_ODD_EVEN( 28, bgeu, 2, 400, \ - addi x3, x3, 4; \ - mul x3, x3, x3; \ - ) - TEST_BR2_DIVERGED_ODD_EVEN( 29, bgeu, 3, 163216, \ - addi x3, x3, 4; \ - mul x3, x3, x3; \ - ) - - TEST_BR2_DIVERGED_FULL12( 30, bgeu, 1, 1, \ - addi x3, x3, 1; \ - ) - - TEST_BR2_DIVERGED_FULL12( 31, bgeu, 1, 16, \ - addi x3, x3, 4; \ - mul x3, x3, x3; \ - ) - - TEST_BR2_DIVERGED_MEM_FULL12( 32, bgeu, 1); - - TEST_PASSFAIL - -RVTEST_CODE_END - - .data -RVTEST_DATA_BEGIN - - TEST_DATA - -RVTEST_DATA_END diff --git a/isa/rv64uv/blt.S b/isa/rv64uv/blt.S deleted file mode 100644 index 575b85c..0000000 --- a/isa/rv64uv/blt.S +++ /dev/null @@ -1,96 +0,0 @@ -# See LICENSE for license details. - -#***************************************************************************** -# blt.S -#----------------------------------------------------------------------------- -# -# Test blt instruction in a vf block. -# - -#include "riscv_test.h" -#include "test_macros.h" - -RVTEST_RV64UV -RVTEST_CODE_BEGIN - - #------------------------------------------------------------- - # Branch tests - #------------------------------------------------------------- - - # Each test checks both forward and backward branches - - TEST_BR2_OP_TAKEN( 2, blt, 0, 1 ); - TEST_BR2_OP_TAKEN( 3, blt, -1, 1 ); - TEST_BR2_OP_TAKEN( 4, blt, -2, -1 ); - - TEST_BR2_OP_NOTTAKEN( 5, blt, 1, 0 ); - TEST_BR2_OP_NOTTAKEN( 6, blt, 1, -1 ); - TEST_BR2_OP_NOTTAKEN( 7, blt, -1, -2 ); - TEST_BR2_OP_NOTTAKEN( 8, blt, 1, -2 ); - - #------------------------------------------------------------- - # Bypassing tests - #------------------------------------------------------------- - - TEST_BR2_SRC12_BYPASS( 9, 0, 0, blt, 0, -1 ); - TEST_BR2_SRC12_BYPASS( 10, 0, 1, blt, 0, -1 ); - TEST_BR2_SRC12_BYPASS( 11, 0, 2, blt, 0, -1 ); - TEST_BR2_SRC12_BYPASS( 12, 1, 0, blt, 0, -1 ); - TEST_BR2_SRC12_BYPASS( 13, 1, 1, blt, 0, -1 ); - TEST_BR2_SRC12_BYPASS( 14, 2, 0, blt, 0, -1 ); - - TEST_BR2_SRC12_BYPASS( 15, 0, 0, blt, 0, -1 ); - TEST_BR2_SRC12_BYPASS( 16, 0, 1, blt, 0, -1 ); - TEST_BR2_SRC12_BYPASS( 17, 0, 2, blt, 0, -1 ); - TEST_BR2_SRC12_BYPASS( 18, 1, 0, blt, 0, -1 ); - TEST_BR2_SRC12_BYPASS( 19, 1, 1, blt, 0, -1 ); - TEST_BR2_SRC12_BYPASS( 20, 2, 0, blt, 0, -1 ); - - #------------------------------------------------------------- - # Test when uts diverge - #------------------------------------------------------------- - - TEST_BR2_DIVERGED_ODD_EVEN( 24, blt, 1, 1, \ - addi x3, x3, 1; \ - ) - TEST_BR2_DIVERGED_ODD_EVEN( 25, blt, 2, 2, \ - addi x3, x3, 1; \ - ) - TEST_BR2_DIVERGED_ODD_EVEN( 26, blt, 3, 3, \ - addi x3, x3, 1; \ - ) - - TEST_BR2_DIVERGED_ODD_EVEN( 27, blt, 1, 16, \ - addi x3, x3, 4; \ - mul x3, x3, x3; \ - ) - TEST_BR2_DIVERGED_ODD_EVEN( 28, blt, 2, 400, \ - addi x3, x3, 4; \ - mul x3, x3, x3; \ - ) - TEST_BR2_DIVERGED_ODD_EVEN( 29, blt, 3, 163216, \ - addi x3, x3, 4; \ - mul x3, x3, x3; \ - ) - - TEST_BR2_DIVERGED_FULL21( 30, blt, 0, 1, \ - addi x3, x3, 1; \ - ) - - TEST_BR2_DIVERGED_FULL21( 31, blt, 0, 16, \ - addi x3, x3, 4; \ - mul x3, x3, x3; \ - ) - - TEST_BR2_DIVERGED_MEM_FULL21( 32, blt, 0); - - TEST_PASSFAIL - -RVTEST_CODE_END - - .data -RVTEST_DATA_BEGIN - - TEST_DATA - -RVTEST_DATA_END diff --git a/isa/rv64uv/bltu.S b/isa/rv64uv/bltu.S deleted file mode 100644 index d499531..0000000 --- a/isa/rv64uv/bltu.S +++ /dev/null @@ -1,96 +0,0 @@ -# See LICENSE for license details. - -#***************************************************************************** -# bltu.S -#----------------------------------------------------------------------------- -# -# Test bltu instruction in a vf block. -# - -#include "riscv_test.h" -#include "test_macros.h" - -RVTEST_RV64UV -RVTEST_CODE_BEGIN - - #------------------------------------------------------------- - # Branch tests - #------------------------------------------------------------- - - # Each test checks both forward and backward branches - - TEST_BR2_OP_TAKEN( 2, bltu, 0x00000000, 0x00000001 ); - TEST_BR2_OP_TAKEN( 3, bltu, 0xfffffffe, 0xffffffff ); - TEST_BR2_OP_TAKEN( 4, bltu, 0x00000000, 0xffffffff ); - - TEST_BR2_OP_NOTTAKEN( 5, bltu, 0x00000001, 0x00000000 ); - TEST_BR2_OP_NOTTAKEN( 6, bltu, 0xffffffff, 0xfffffffe ); - TEST_BR2_OP_NOTTAKEN( 7, bltu, 0xffffffff, 0x00000000 ); - TEST_BR2_OP_NOTTAKEN( 8, bltu, 0x80000000, 0x7fffffff ); - - #------------------------------------------------------------- - # Bypassing tests - #------------------------------------------------------------- - - TEST_BR2_SRC12_BYPASS( 9, 0, 0, bltu, 0xf0000000, 0xefffffff ); - TEST_BR2_SRC12_BYPASS( 10, 0, 1, bltu, 0xf0000000, 0xefffffff ); - TEST_BR2_SRC12_BYPASS( 11, 0, 2, bltu, 0xf0000000, 0xefffffff ); - TEST_BR2_SRC12_BYPASS( 12, 1, 0, bltu, 0xf0000000, 0xefffffff ); - TEST_BR2_SRC12_BYPASS( 13, 1, 1, bltu, 0xf0000000, 0xefffffff ); - TEST_BR2_SRC12_BYPASS( 14, 2, 0, bltu, 0xf0000000, 0xefffffff ); - - TEST_BR2_SRC12_BYPASS( 15, 0, 0, bltu, 0xf0000000, 0xefffffff ); - TEST_BR2_SRC12_BYPASS( 16, 0, 1, bltu, 0xf0000000, 0xefffffff ); - TEST_BR2_SRC12_BYPASS( 17, 0, 2, bltu, 0xf0000000, 0xefffffff ); - TEST_BR2_SRC12_BYPASS( 18, 1, 0, bltu, 0xf0000000, 0xefffffff ); - TEST_BR2_SRC12_BYPASS( 19, 1, 1, bltu, 0xf0000000, 0xefffffff ); - TEST_BR2_SRC12_BYPASS( 20, 2, 0, bltu, 0xf0000000, 0xefffffff ); - - #------------------------------------------------------------- - # Test when uts diverge - #------------------------------------------------------------- - - TEST_BR2_DIVERGED_ODD_EVEN( 24, bltu, 1, 1, \ - addi x3, x3, 1; \ - ) - TEST_BR2_DIVERGED_ODD_EVEN( 25, bltu, 2, 2, \ - addi x3, x3, 1; \ - ) - TEST_BR2_DIVERGED_ODD_EVEN( 26, bltu, 3, 3, \ - addi x3, x3, 1; \ - ) - - TEST_BR2_DIVERGED_ODD_EVEN( 27, bltu, 1, 16, \ - addi x3, x3, 4; \ - mul x3, x3, x3; \ - ) - TEST_BR2_DIVERGED_ODD_EVEN( 28, bltu, 2, 400, \ - addi x3, x3, 4; \ - mul x3, x3, x3; \ - ) - TEST_BR2_DIVERGED_ODD_EVEN( 29, bltu, 3, 163216, \ - addi x3, x3, 4; \ - mul x3, x3, x3; \ - ) - - TEST_BR2_DIVERGED_FULL21( 30, bltu, 0, 1, \ - addi x3, x3, 1; \ - ) - - TEST_BR2_DIVERGED_FULL21( 31, bltu, 0, 16, \ - addi x3, x3, 4; \ - mul x3, x3, x3; \ - ) - - TEST_BR2_DIVERGED_MEM_FULL21( 32, bltu, 0 ); - - TEST_PASSFAIL - -RVTEST_CODE_END - - .data -RVTEST_DATA_BEGIN - - TEST_DATA - -RVTEST_DATA_END diff --git a/isa/rv64uv/bne.S b/isa/rv64uv/bne.S deleted file mode 100644 index 6b01d9b..0000000 --- a/isa/rv64uv/bne.S +++ /dev/null @@ -1,96 +0,0 @@ -# See LICENSE for license details. - -#***************************************************************************** -# bne.S -#----------------------------------------------------------------------------- -# -# Test bne instruction in a vf block. -# - -#include "riscv_test.h" -#include "test_macros.h" - -RVTEST_RV64UV -RVTEST_CODE_BEGIN - - #------------------------------------------------------------- - # Branch tests - #------------------------------------------------------------- - - # Each test checks both forward and backward branches - - TEST_BR2_OP_TAKEN( 2, bne, 0, 1 ); - TEST_BR2_OP_TAKEN( 3, bne, 1, 0 ); - TEST_BR2_OP_TAKEN( 4, bne, -1, 1 ); - TEST_BR2_OP_TAKEN( 5, bne, 1, -1 ); - - TEST_BR2_OP_NOTTAKEN( 6, bne, 0, 0 ); - TEST_BR2_OP_NOTTAKEN( 7, bne, 1, 1 ); - TEST_BR2_OP_NOTTAKEN( 8, bne, -1, -1 ); - - #------------------------------------------------------------- - # Bypassing tests - #------------------------------------------------------------- - - TEST_BR2_SRC12_BYPASS( 9, 0, 0, bne, 0, 0 ); - TEST_BR2_SRC12_BYPASS( 10, 0, 1, bne, 0, 0 ); - TEST_BR2_SRC12_BYPASS( 11, 0, 2, bne, 0, 0 ); - TEST_BR2_SRC12_BYPASS( 12, 1, 0, bne, 0, 0 ); - TEST_BR2_SRC12_BYPASS( 13, 1, 1, bne, 0, 0 ); - TEST_BR2_SRC12_BYPASS( 14, 2, 0, bne, 0, 0 ); - - TEST_BR2_SRC12_BYPASS( 15, 0, 0, bne, 0, 0 ); - TEST_BR2_SRC12_BYPASS( 16, 0, 1, bne, 0, 0 ); - TEST_BR2_SRC12_BYPASS( 17, 0, 2, bne, 0, 0 ); - TEST_BR2_SRC12_BYPASS( 18, 1, 0, bne, 0, 0 ); - TEST_BR2_SRC12_BYPASS( 19, 1, 1, bne, 0, 0 ); - TEST_BR2_SRC12_BYPASS( 20, 2, 0, bne, 0, 0 ); - - #------------------------------------------------------------- - # Test when uts diverge - #------------------------------------------------------------- - - TEST_BR2_DIVERGED_ODD_EVEN( 24, bne, 1, 1, \ - addi x3, x3, 1; \ - ) - TEST_BR2_DIVERGED_ODD_EVEN( 25, bne, 2, 2, \ - addi x3, x3, 1; \ - ) - TEST_BR2_DIVERGED_ODD_EVEN( 26, bne, 3, 3, \ - addi x3, x3, 1; \ - ) - - TEST_BR2_DIVERGED_ODD_EVEN( 27, bne, 1, 16, \ - addi x3, x3, 4; \ - mul x3, x3, x3; \ - ) - TEST_BR2_DIVERGED_ODD_EVEN( 28, bne, 2, 400, \ - addi x3, x3, 4; \ - mul x3, x3, x3; \ - ) - TEST_BR2_DIVERGED_ODD_EVEN( 29, bne, 3, 163216, \ - addi x3, x3, 4; \ - mul x3, x3, x3; \ - ) - - TEST_BR2_DIVERGED_FULL12( 30, bne, 0, 1, \ - addi x3, x3, 1; \ - ) - - TEST_BR2_DIVERGED_FULL12( 31, bne, 0, 16, \ - addi x3, x3, 4; \ - mul x3, x3, x3; \ - ) - - TEST_BR2_DIVERGED_MEM_FULL12( 32, bne, 0); - - TEST_PASSFAIL - -RVTEST_CODE_END - - .data -RVTEST_DATA_BEGIN - - TEST_DATA - -RVTEST_DATA_END diff --git a/isa/rv64uv/data_d.h b/isa/rv64uv/data_d.h deleted file mode 100644 index 98a3eb2..0000000 --- a/isa/rv64uv/data_d.h +++ /dev/null @@ -1,4098 +0,0 @@ -# See LICENSE for license details. - -.dword 0xd1dd560bfe643843 -.dword 0xc8ad10b2feb2c113 -.dword 0xa6ce19b8a92a9e4a -.dword 0x6fb83883fbe60922 -.dword 0xcd6d2e7ead7330da -.dword 0xb755598a5cfbe06d -.dword 0x1fed84bdc9a118eb -.dword 0x24b3f3d23d84f322 -.dword 0x1d3a988f53778458 -.dword 0x9f730b0a1f140995 -.dword 0x374b360639302b65 -.dword 0xc88b9497f9b5efd5 -.dword 0x0f172d3a9a63bd97 -.dword 0xc972275f26cd737e -.dword 0x0c78f61b7c470f8a -.dword 0x4def0e021a99b81b -.dword 0x4390f30c5a5c55b8 -.dword 0xeaf430769db34de0 -.dword 0x8e8fc37e74e9f4db -.dword 0xcc629a32e15f65e2 -.dword 0x3da9bb4a9f413e61 -.dword 0xe9df9acc0f5e994f -.dword 0x6108c0f41e90f5f0 -.dword 0x4d68eaa08a12cb08 -.dword 0xc84eae79e5090721 -.dword 0xdda11817b153d6c0 -.dword 0x43ea43ba3915460a -.dword 0xd16801093aaa5b85 -.dword 0x2994fe94a0eb82bb -.dword 0xf61250031eed5ad4 -.dword 0xe0f751364c4ac72b -.dword 0xa41a38b4ba19bbed -.dword 0x82b6eafa646fe2b1 -.dword 0x13a5f5e58e6486ad -.dword 0x18f7896d7e7e91fa -.dword 0x9e24f5c9e78fce0a -.dword 0x95daaa5911e1d92a -.dword 0x8f83bb408747dced -.dword 0xec1c6c26df3c7a01 -.dword 0x8a41db8ebdc862ba -.dword 0xbacfff7cbc9779cf -.dword 0x83f82f31eb3dfad1 -.dword 0xfcc145f5029a8625 -.dword 0x510ce08546de5450 -.dword 0xc95124e7a14b9be3 -.dword 0xf64185fd81ab3a1c -.dword 0x80c59f913c179195 -.dword 0x63d1ad007bb6424f -.dword 0xbb6594c2764d5430 -.dword 0xfcd8ad0c37625f81 -.dword 0x55250db2b9467d0c -.dword 0x48f5fc7eb263c237 -.dword 0x8630a803c867c593 -.dword 0xb17acfbaf144ad8a -.dword 0xc27f45373274a219 -.dword 0xa67a5eb493dd5d22 -.dword 0x7bd384d0529fe47c -.dword 0x01689905e11f4fab -.dword 0xcd92dad51c4cc758 -.dword 0xa7053373be73acc3 -.dword 0x58f3527f398d5897 -.dword 0x76ea566bbae082fc -.dword 0x4b2e9e1fbfcd19f0 -.dword 0xf8d97e36c686f2cf -.dword 0x1b063a61787a89d5 -.dword 0x21265b64c1aded0a -.dword 0x2f74685489b32b9d -.dword 0x46489c4b8e0bd6f9 -.dword 0x4d28452001969d33 -.dword 0xc313e0df8cf90326 -.dword 0xb36e27445eec8f63 -.dword 0x3dce9fdd33780a33 -.dword 0x35d9282a83ed0792 -.dword 0x23f70a663acddbcb -.dword 0xdfb488c67e6aadce -.dword 0x7c096383619903bf -.dword 0x40c7d6230dbe4453 -.dword 0xf1bdf56435ffdd8b -.dword 0xb924953b36ad21ea -.dword 0xe1922d720dc0f8e1 -.dword 0xca14881a5df36203 -.dword 0x10a51671ac227124 -.dword 0xe2aa78ac2953c159 -.dword 0x171cfb746137ac31 -.dword 0xfcd02cbb7fdbe20a -.dword 0x8aec2c2562b80399 -.dword 0x6637173b837c7ba4 -.dword 0x66c9a4593cd8f718 -.dword 0x322953399499feb0 -.dword 0x9e35467828344bd2 -.dword 0x2003f9037983dab7 -.dword 0x295feaa4c5a648ef -.dword 0xe248eb724dc0af80 -.dword 0xc52e7cf9faa370df -.dword 0x9bf39a432db2919c -.dword 0x5b239a556fa41c76 -.dword 0x1a24dc91239d9112 -.dword 0x24ad2069ddee64cd -.dword 0xea4f902196d947c0 -.dword 0xd5719f41843de606 -.dword 0x96fadc26cc9a8ba2 -.dword 0x7fd63232190f9123 -.dword 0x85207de84fec4c69 -.dword 0x8dc5783bc47d2c80 -.dword 0x6c160891342377aa -.dword 0x49ec2102949335df -.dword 0xf9695f0d9beb313d -.dword 0xb34950eea2c82924 -.dword 0xbd7b3d5898810087 -.dword 0x77aa89bc4dc41491 -.dword 0x2e59cbe79c5bd82d -.dword 0x078b9cc820dfe05d -.dword 0x1eba8e9468b547ca -.dword 0xb1b9daa17cdadb65 -.dword 0x7b37cf022a5adc98 -.dword 0x82888b22c8f68319 -.dword 0x6544296994275855 -.dword 0xe8d8812685ec86b1 -.dword 0xde5a4e0842d29105 -.dword 0x3d390dd88fb762c2 -.dword 0xf47e82a8f281e113 -.dword 0x2701325622dbd103 -.dword 0x9154ffa1df56d1ff -.dword 0x00c6f0e72c06b9b8 -.dword 0x4479c0ec8c6184f3 -.dword 0x3213379c6178bd76 -.dword 0x5dca6933a79335d5 -.dword 0xc24c6205ed579d4e -.dword 0xdb0e51b4f2ed17c6 -.dword 0xc5685607d07b507d -.dword 0x72c0e2c99f389e46 -.dword 0xa02764c6311e00e5 -.dword 0x7870ab738532148b -.dword 0x7f874adb52beb4e8 -.dword 0x50c52ee79a1e0c1d -.dword 0x88819d99d98db336 -.dword 0x67e66fb35f47355b -.dword 0x3d81206ea88f9da6 -.dword 0xaccd3715c7cd9ba2 -.dword 0x8902c29993381ba5 -.dword 0xaae370c7c4b22462 -.dword 0xd2b1dce4e3ac015e -.dword 0x4773d5916e630bd9 -.dword 0x572483aa9b5aab6f -.dword 0x9959377b18d62c2e -.dword 0x13d85103af1c087d -.dword 0x53b4588c0e888696 -.dword 0xe6be9aae2ff9cd78 -.dword 0xd0c9c214b646121e -.dword 0xce92bccecd471d91 -.dword 0xe410f67c75821e12 -.dword 0xbcf589be794f3597 -.dword 0x3fd392c04e9ebf38 -.dword 0x00c4d6def0f5eee5 -.dword 0xd341d5fadc428055 -.dword 0x02c3de7dfc9ed665 -.dword 0x1541ca277ab8a0e8 -.dword 0x1ff674a29b47321f -.dword 0xa61585db7469805e -.dword 0xdb0d78bb11294171 -.dword 0xb39564524ec390fc -.dword 0x404c5780c7c92c6d -.dword 0x9978d380a279a59b -.dword 0x05f8453bbe5f2ea7 -.dword 0xf5b95d08a6f5e9ca -.dword 0x011564847183c638 -.dword 0x27449d3768949e29 -.dword 0xd19c3c475be504c7 -.dword 0x1ba532f154514419 -.dword 0x271a184dec4d50f5 -.dword 0xd4b7214f425152c0 -.dword 0xc0a64a59f49984c8 -.dword 0xbedf75cf2e92fa53 -.dword 0xcb2a6b36ad092221 -.dword 0xd313c13f893c846f -.dword 0x94c85bde9dc14441 -.dword 0x276c2e7a23632691 -.dword 0x1bf9ed15f7a69997 -.dword 0xc60669a46e455c83 -.dword 0x075a73e0536aa746 -.dword 0x11b7f38be5644e36 -.dword 0x8aa5ff3e6174bf35 -.dword 0x9df5b4009d054b4c -.dword 0x3bfc811145580f03 -.dword 0x81e402cbe8b64d83 -.dword 0x349e298c1970fdd1 -.dword 0x0b84c13325cbe531 -.dword 0x521d02b009ff742d -.dword 0x8db4b0afd217672c -.dword 0x1b8a834d538edc3a -.dword 0x6d889357053a83cc -.dword 0xd7a6902112814aac -.dword 0x0d9be52bb75f46bf -.dword 0xf3e2a43cc1838123 -.dword 0x6a303ab7e4a27df9 -.dword 0x4bda7d162afc46f8 -.dword 0x81f509722ae331ed -.dword 0xd4932203319c4807 -.dword 0x0d8ce3014cf5b3b1 -.dword 0x4c0bce3b426f5c7f -.dword 0x46cdf6a058f38e2e -.dword 0xd7ecb3a7e644b4a8 -.dword 0x30497a1d437a84d2 -.dword 0x579807c2f78e9269 -.dword 0xd479cbd321d063ff -.dword 0x32f2e17eb3704d78 -.dword 0x7cb3a430fd53347d -.dword 0x81da87c223931855 -.dword 0x7f7c8515af7e6d94 -.dword 0xfb31918732476f09 -.dword 0xdd46de64278340bd -.dword 0x45aea039f0cf434c -.dword 0x481c81edd0222ad7 -.dword 0x84e7f5d6b3130e83 -.dword 0x88eb9e6bbd70ac95 -.dword 0x57ad83ec0b4f5035 -.dword 0x2f1beb5ed965cf9e -.dword 0x489e25d9c7001f40 -.dword 0xb9a2dcc04439c03a -.dword 0xcc46d982f2713f82 -.dword 0x64cd0d87d2e1f590 -.dword 0x99d1ea6f299d8b04 -.dword 0x6f9885a53a4e8ece -.dword 0xbe15edb832582600 -.dword 0xc4334f7edcfadfb8 -.dword 0x6b8ab1b030b854d9 -.dword 0x2985c16c98c65cc4 -.dword 0x52be6770ed652698 -.dword 0x40b60876842cf669 -.dword 0x62d456ab5f49623c -.dword 0xee2cc0db5681638e -.dword 0xee3955379349279c -.dword 0x60173695a3434359 -.dword 0xefeca0bd53b054f0 -.dword 0x78437787a15025ad -.dword 0xf30550cea298ac56 -.dword 0x3d3461fbf18b8a48 -.dword 0xfe154f122661e197 -.dword 0xf97d15afab0fde11 -.dword 0x0a661d32c6445e70 -.dword 0x55896f0932475d50 -.dword 0x919c02a488900c0d -.dword 0x0d17bd1bc093365b -.dword 0xd0771fd3aeb0cc8b -.dword 0xc2d5865c1a81a63b -.dword 0x1445601c461cb041 -.dword 0x98939ab354407b78 -.dword 0x4f05db9d67c21cd2 -.dword 0x299949ec9fcd27d2 -.dword 0x71bae81e4dceb789 -.dword 0x9134805d4981121f -.dword 0x032e7a111873258d -.dword 0xaee56313b867829a -.dword 0xdaf93af909122b99 -.dword 0x25615ef79a26e618 -.dword 0xdef32d7125df5d67 -.dword 0x08c1de6c31316024 -.dword 0x0f92950b9f70d2be -.dword 0x2b13429896974b4d -.dword 0xdac02d4e195094c7 -.dword 0x19f01f955c6d31af -.dword 0x4b8bb4861073fbce -.dword 0x021ab06dcb8680ba -.dword 0x528a0be02a7d95e7 -.dword 0xeaa6b7893be5de4f -.dword 0x75eb4cf4d9ff4c96 -.dword 0x0b56d96aa69e2e29 -.dword 0x61b2a2d9b3750b70 -.dword 0xc32f1d6b38a4e55e -.dword 0xd4801bbc2ef013d2 -.dword 0x8049c25eb2e04f4d -.dword 0x20eec01b898e66ee -.dword 0x4ff66e613e7ab9a2 -.dword 0x53e5519a2b26f860 -.dword 0xa35df38d4fb89249 -.dword 0x28628d0677e42f97 -.dword 0xf007be486b8c983e -.dword 0x442beb3e99c6f4c3 -.dword 0x6e5f7d8b6e55c134 -.dword 0x41855991a61dd297 -.dword 0x05fb5db0e8f111d4 -.dword 0xbc689aef8391f7ed -.dword 0x75172f9f8d95c16b -.dword 0x39dcecc2e0d37df6 -.dword 0xe41da50c2fed64ae -.dword 0x8993cb9fc8167514 -.dword 0xefe88b831e4a909b -.dword 0xad5940ad9a7f20c9 -.dword 0x3fc9843888820439 -.dword 0xe6c29d98b469c179 -.dword 0x7b1c5638cdaaa3c8 -.dword 0xdb8fe11acaafbf95 -.dword 0x50fd8d3aed235491 -.dword 0x011e855cc83ea2f3 -.dword 0x7969c71fc88748e6 -.dword 0x6dd82014171f468c -.dword 0x3a0eb6f4a91a55c2 -.dword 0x3767ce48a2c731e1 -.dword 0x0b908ace533b95fe -.dword 0xcad63b406be18a52 -.dword 0xfd5bf304f35e9591 -.dword 0x1d2587ea75dc991f -.dword 0x7e79a36823de0733 -.dword 0xedd1c3f254ea5c10 -.dword 0x8ae23cc59aa99c90 -.dword 0x19b5ef815d1d92cc -.dword 0x92dfc3356340cb82 -.dword 0xc20331724d0e11bb -.dword 0x3b25c6c5415c5ca1 -.dword 0x2cf7e8a9526c5a03 -.dword 0xb30d631b68fe23ed -.dword 0x72856af2eaea1708 -.dword 0xf666385f81d5f5d5 -.dword 0x25c9a36eca87d630 -.dword 0x6018bf0c601937b4 -.dword 0xa891ed26e9ed1f57 -.dword 0x46f2bdc5b8b0188b -.dword 0x578d9ce58b9fb66a -.dword 0xe619e98c701bb5e3 -.dword 0x479499b408e2a91d -.dword 0x43a60ad1369ebbe6 -.dword 0x75801126ed6c736d -.dword 0xa3837807050a5228 -.dword 0xa0a34411d487fdab -.dword 0xcac739c7d5dc0279 -.dword 0x3c9bd11e417e14ef -.dword 0xf88d4b5dea0a2c1c -.dword 0x5644030ac41413aa -.dword 0x32e41bf9760af296 -.dword 0x07fc6d47a8cab1ac -.dword 0x84fdf8f053dc7efa -.dword 0xef8246fd624d3fd2 -.dword 0xc051c3bf1c41689e -.dword 0xd5e4742a74b12fb6 -.dword 0x536c430313d955a8 -.dword 0xb82d98208a99c0c0 -.dword 0xd7a5347fe8196ffa -.dword 0x3331f548ca4783fd -.dword 0x173abfb46f5a26fe -.dword 0x5c2de61e8dd700f9 -.dword 0x1d2187ab567ed37f -.dword 0x72be7acee392f743 -.dword 0x34094b4249c6d646 -.dword 0xfb02124760c26f7e -.dword 0x99f975e05daa46a7 -.dword 0x821d33c78c66038e -.dword 0xb1b2cad5492ae3b5 -.dword 0xa3682f77f34987b8 -.dword 0x03434455f4af6f1f -.dword 0x1a58466129e23d81 -.dword 0x5388f1bada07557f -.dword 0xf38aa948236a7b91 -.dword 0x510e98c13c7dfafa -.dword 0xdc70ce93022bfcf2 -.dword 0x52575af6bc0d1cfe -.dword 0xf5098269e9af3667 -.dword 0xb95405e44057e2f6 -.dword 0x22655f65ecd6002d -.dword 0xb629e5a5af33efec -.dword 0x5e54d4d7bb2640e8 -.dword 0xcdf648c80659cd57 -.dword 0x4bb45e8ea16aee25 -.dword 0x6132e4a6b027a4fc -.dword 0xc0238b7944dfe489 -.dword 0x8e1a6b240f1908b2 -.dword 0x4baa8e719727bd36 -.dword 0xb623efc3f0c90d83 -.dword 0x9e9224130c9e6e95 -.dword 0x3c1ba4349205775d -.dword 0x531ff2a61037495e -.dword 0x77b2baa674ee029c -.dword 0x29b9daee9739ec2d -.dword 0x842e7b785487469c -.dword 0x60a905492a2c8ecb -.dword 0x7fa4a13ddea8bb8c -.dword 0x70877908426c945e -.dword 0x15fd3901fbda0111 -.dword 0xea04ebd46eb894bb -.dword 0xe89b903b8deccf88 -.dword 0x4088d12ad27ddc79 -.dword 0x9a6b8cb536b3919d -.dword 0xf35c18b7a418d2a9 -.dword 0x8b826c62f3584ac4 -.dword 0x629e5cc40b100785 -.dword 0x27d4b7cc809958a9 -.dword 0x75aef5c63d6f3b80 -.dword 0x57bbc80a51e8c6a7 -.dword 0x2eff9e4a4ab02aff -.dword 0xfb9dda844d0cc279 -.dword 0xb21b43769d81a0d3 -.dword 0xa5de15d1879eecda -.dword 0xd78f4b7f9b9e4f3c -.dword 0x84394766b1e08361 -.dword 0x04917ead828287f0 -.dword 0x123c0d0da75719a3 -.dword 0x791a6b6d3132cb0b -.dword 0xa83dc58526be55b0 -.dword 0x702831d2a11478f9 -.dword 0xd39a03a27372634f -.dword 0x5d2e45b3a2b83cea -.dword 0x5650dfd3af2428f7 -.dword 0x5932080fd1508b33 -.dword 0xde4c32ff64f18b26 -.dword 0xc855d16d0a32b6cd -.dword 0x6bea83b85dbc31cf -.dword 0xf663a2f2769718e2 -.dword 0x52062a7055d129f3 -.dword 0xa7c1e023d6fe88cc -.dword 0x9ef5434f58a540d9 -.dword 0x70c827b2208ea7e3 -.dword 0x26b533fb76fbb49a -.dword 0x531207201481a52c -.dword 0x1613bf63f875c086 -.dword 0x4292c827f68f67b7 -.dword 0x7021ba8898459bec -.dword 0xe75803e90366cf79 -.dword 0xa4750518442fa7ce -.dword 0x45e662a58ffd42e9 -.dword 0xb5bcdc00c6e4ef62 -.dword 0x0b6c587157e09364 -.dword 0x5b6f4dad23744b94 -.dword 0x08f6fdfcd476b9b7 -.dword 0xe2276cbffc225d0a -.dword 0x43b5d10961472c56 -.dword 0x0fcab937c4ea9ddc -.dword 0xae8350e4159dacf1 -.dword 0xf03f40562b497efe -.dword 0xcbfd5ca0650a2138 -.dword 0xe1378bfb2b15044e -.dword 0x4d136b609a6459cb -.dword 0x036630fe3e2969ad -.dword 0xe7c2f379a028f782 -.dword 0x1222c4e1e55b4d63 -.dword 0x3a8be79ca735d9b1 -.dword 0xcdacc0efe7f42717 -.dword 0xf73fb62f5e2ff936 -.dword 0xb893f19f67a6eafc -.dword 0x239474ad8a3541fd -.dword 0xd81d95094f7faa72 -.dword 0xe2973fe14adeedf1 -.dword 0xa896243573784281 -.dword 0x33db6b13d9c9a6ae -.dword 0x0f40c9820d70fe2c -.dword 0x7725290f43cd8117 -.dword 0xaa822cbb7e936cff -.dword 0xa5814f3053f29882 -.dword 0x6fc64e07d96fa140 -.dword 0xd8ffca9dd2e7e729 -.dword 0x440282d262e05e85 -.dword 0x76938f9ff4d4b595 -.dword 0x5338dc8eb840d68c -.dword 0xd43ab1ae3628bad0 -.dword 0xac46770a4a8fd339 -.dword 0x9f9010bcbe1d4cc0 -.dword 0x7a273573abb12c47 -.dword 0x51d6d1a02b4068de -.dword 0xa0fae18f788cbeb9 -.dword 0x24e20e4f2c86c9fc -.dword 0xda5f3900d9a29571 -.dword 0x52f011b218721f81 -.dword 0x6c2fe91d0fef5afb -.dword 0x5bf7a9c2539468e3 -.dword 0x3b30eb491b4d49af -.dword 0xa0e7eddff50481eb -.dword 0x696d4f66e661b9d5 -.dword 0xc9317686cb3382b7 -.dword 0xc49a0caa0f0c814c -.dword 0x7691a49f2bcf1337 -.dword 0xc2b0b67325efe884 -.dword 0x816cca3a8cfabb0f -.dword 0x08f616fcf9b4be6c -.dword 0xddf9ac2138ba92e7 -.dword 0x536e63e4ee4ad567 -.dword 0x6de85b6c10cdc88b -.dword 0x51499397d1382a0c -.dword 0x618fb6eaa4d73311 -.dword 0x05b098f3516982f6 -.dword 0x52905b77daad8b9c -.dword 0xead67445a4edfe51 -.dword 0xb920f3260cd41978 -.dword 0xc5b933020869d59d -.dword 0x4971db1c51c5acfe -.dword 0x8e9246d906b8753a -.dword 0xd32c924bae751955 -.dword 0x68ce556dfb0398a7 -.dword 0x6b1cabbc59d57fb8 -.dword 0xe107d1b0692ea69f -.dword 0xa78253883770d055 -.dword 0xe867ec19c06e083d -.dword 0xb58b1c24363cb667 -.dword 0x76964fefaf59a46c -.dword 0x9cc0d9695e1bb44a -.dword 0xb7ae7b4bceede08b -.dword 0xa7e914b93a7f8dfd -.dword 0xbb2742555fbb2777 -.dword 0x95de5120c57f0b7e -.dword 0xfe2b6134af70718c -.dword 0x0389825836498a28 -.dword 0x99fac57629216ba6 -.dword 0x5459049124b499a8 -.dword 0x719f0d45d2957358 -.dword 0x65002394142736f2 -.dword 0x29683bcec5931f19 -.dword 0xe282e00b80c557df -.dword 0x67cc14fe84877e89 -.dword 0x7c3448c5cc8948c8 -.dword 0x8b9f6ae359e69858 -.dword 0xf9c74e960f8403e9 -.dword 0x6670636b192fd9df -.dword 0x4091d9833bfe5732 -.dword 0x0acb40b08b431cf7 -.dword 0x521f7d97954e5efe -.dword 0x31fca2879918c45e -.dword 0xf9f518647add8ed9 -.dword 0x618aaaafb04939b2 -.dword 0x9459e57fbbc0f9ce -.dword 0x0607f8bfcd08071a -.dword 0xe87db3f2d2922454 -.dword 0x8395771f890796b0 -.dword 0x2a1cad36f39e7686 -.dword 0xa6a87dafe66e7f3c -.dword 0x5041a5581b77d456 -.dword 0xaf7c6b161a81dd2d -.dword 0x901438c62e4136d3 -.dword 0xc41bc198458c8157 -.dword 0x8fbb2c9a89bba2e7 -.dword 0xcfcc25cf362932d8 -.dword 0xffa50320cdd7df5e -.dword 0x63a47099304b47b4 -.dword 0x231ca77143d0287f -.dword 0xb9638c48d2879fcd -.dword 0x1af74aae60af526b -.dword 0x95101277b7f2da83 -.dword 0xf86c2435122a3459 -.dword 0xfb6bea245d26f594 -.dword 0x6e9a6b31f43a876b -.dword 0xda5cb0cdd5124eae -.dword 0x040455b82b154554 -.dword 0x3b7d39944cf9be0a -.dword 0xde48bb4823d63379 -.dword 0x1818b79b7b2e73b9 -.dword 0x326bfb8b460a36a9 -.dword 0xc6097ad8d8c5c65c -.dword 0x6910d19649e0d95c -.dword 0x5900af93cfeab3ca -.dword 0xbb476f4759a0b5aa -.dword 0x849115eee126adac -.dword 0xd81ebab61dff756a -.dword 0x115ca79e4a908a01 -.dword 0x0c73d4c7f79b0319 -.dword 0x585151a828bb28c3 -.dword 0x3304576f0efa7e40 -.dword 0x2c8d673f4249401e -.dword 0x840133ccde0559b8 -.dword 0x471c196d36b8d165 -.dword 0xa4823d62fa737e17 -.dword 0x0f63304aced9bb21 -.dword 0x975e26c4d142c388 -.dword 0xb4812607aec82b2b -.dword 0x5fd8fad8aad7c4cb -.dword 0x505e10bfaf752c98 -.dword 0x137ab63794cd7b69 -.dword 0x2ec0c61fe557a266 -.dword 0x5f49e3064a31daa5 -.dword 0x433f59fcba9ef542 -.dword 0xad2f7cd6f2aa4cfd -.dword 0x1b019310eb16b9a0 -.dword 0x37d670a514d37fb1 -.dword 0x084808699d0ba9f1 -.dword 0xa4d18a50d647f5d3 -.dword 0xc6bf1bf79c23c829 -.dword 0xf31a06636b421343 -.dword 0x56dfb168f545ea31 -.dword 0x3afc406b06db2f01 -.dword 0xa054eaa2453b4c60 -.dword 0x31cbadb4229a6d4e -.dword 0x327da7ca2a556e36 -.dword 0x836759b8d08f121b -.dword 0xc7858525346722ea -.dword 0xdde347a2d9ebcf57 -.dword 0x638c58082b0c4970 -.dword 0x3c199d3ecfbeaed9 -.dword 0x29c052f958778c2a -.dword 0x724515cfc5387057 -.dword 0x78f282f4f89077a3 -.dword 0x9111e055553e5c5e -.dword 0x9812e398437d16a2 -.dword 0xa9d42b9c8fa11bdf -.dword 0xa2736705d9baf11e -.dword 0x557d53a7b1b132eb -.dword 0x9032eb7788b88239 -.dword 0x0d6fa526917ed714 -.dword 0xb2921b7c2b90b7d6 -.dword 0x63dd0ec709cc8c8f -.dword 0x4e5220f85d5468da -.dword 0x8387a60852e48085 -.dword 0x39444cbf0cd7da39 -.dword 0x64227a11245e9c88 -.dword 0x68f35853f6f1b3de -.dword 0x1b9ada2d8843f434 -.dword 0x29c09aaf28d184c1 -.dword 0xe7dcf61036105d81 -.dword 0x9697c3d538fdc6bb -.dword 0xac25cfd4c8dfc69f -.dword 0x98b16f739be4dcea -.dword 0xc3b875ceed9acfb3 -.dword 0x151974b5654524a6 -.dword 0xdd816f286d978533 -.dword 0xb678ceeaddf6fec5 -.dword 0x8589ef72a42acfb8 -.dword 0x879566c4ee80f0ae -.dword 0xb2183229ab4ee19a -.dword 0x161469a933ba844a -.dword 0xe3f7861442468813 -.dword 0x6a13b2545830ac8c -.dword 0x3c363b2be15e80e3 -.dword 0xa17df31c88b6099d -.dword 0x256dc8c771bb1965 -.dword 0x46a76d41476e9ad5 -.dword 0x50b11253885894e9 -.dword 0x92d4081104aee65a -.dword 0x9e5329de95c407a1 -.dword 0x89f0c1140702b554 -.dword 0x721d74a2f89cf0c8 -.dword 0xdf950c115535d882 -.dword 0x4d19d23bdaff13cb -.dword 0x3a83473f088c128c -.dword 0x8c8c8da28ee7f0f8 -.dword 0x7cb2d08145274963 -.dword 0xf724bedb7b7747bd -.dword 0xa2f10605415e6e20 -.dword 0xa2aaa9de3390e183 -.dword 0x55c6b064df3c3915 -.dword 0x7b6fb157685e70f6 -.dword 0x04ca037b804bc762 -.dword 0x2877414611880ede -.dword 0xb78675127111dc50 -.dword 0x90453d2ac970f604 -.dword 0xee415adf837e0a41 -.dword 0x7b7ce9a132506e87 -.dword 0x486ed007fd03f111 -.dword 0x2f61f2582382af16 -.dword 0x9ca10cb6ad950bba -.dword 0x0b55d05307b583ca -.dword 0x1782922ffd6157e3 -.dword 0x93d023377fef0506 -.dword 0xd3fef7e9a1ce0247 -.dword 0x178d8ec0c8930202 -.dword 0x8f2cf473f8805818 -.dword 0x3d0468fd2f3ac9eb -.dword 0xbf897aabf87daf1e -.dword 0xeca0d43995c41c26 -.dword 0x036bd67bd6b5553f -.dword 0x952a71731e71b768 -.dword 0x494295d36216182d -.dword 0x677bd97cd7ed911e -.dword 0xa10a14a6294adb74 -.dword 0x32330fa3ca1aa177 -.dword 0xe09b7f58f76f3f9a -.dword 0x1de94f62c4054b8f -.dword 0x6d33e1018290d58e -.dword 0x79e98ee675f09856 -.dword 0x695e80544305af9e -.dword 0x9481103b65cc6610 -.dword 0x5eb478898ee25df8 -.dword 0xcf02af8eb88f1b88 -.dword 0x3eab188188eee9a2 -.dword 0x1456aec41e2368ab -.dword 0xe7fa43a64e3f7cce -.dword 0xee95f538ad6b02c0 -.dword 0xf6bad0ffe3a153d8 -.dword 0x579113779862b7fe -.dword 0x9a20f9d9363be22d -.dword 0xc004c81b33f063f5 -.dword 0x3af36307b4e0c1ff -.dword 0xf23a61021f7ff991 -.dword 0x0bdb43ca3752bf1e -.dword 0x3f0fc42075b4931c -.dword 0x6ab1cd8534a0f8a7 -.dword 0x393b8ee241fdfbbc -.dword 0xb3ade7c37d93fb29 -.dword 0xb46613e70ed6f8e2 -.dword 0x4c400514b09f1093 -.dword 0x50890ca553d21687 -.dword 0xe6e920ddabcc9636 -.dword 0xfe9d76cc53b161b8 -.dword 0x380870eb2bb651ac -.dword 0xa5d0c50444466371 -.dword 0x0d63a03299badb53 -.dword 0x4839adc18775fb7b -.dword 0x428b13903692e2a9 -.dword 0xb969681dddbb79d6 -.dword 0x523b1134cb4d3f70 -.dword 0xa482fd0f21b0c329 -.dword 0x39d8d98a79b58293 -.dword 0x2aa281e2aff0c946 -.dword 0xef2b4440ebc617b2 -.dword 0xf7afcb4abe126d46 -.dword 0xd292b47569e4467b -.dword 0xc2d05b0de05cc004 -.dword 0x6fdad9c500594ce9 -.dword 0xc3c712a4080298e5 -.dword 0xd0a87dcf0aace801 -.dword 0xee3c6c5b7910d302 -.dword 0x3ac54dbaeef5693e -.dword 0x53fd81c2563408a0 -.dword 0xeed1eb6db965ba11 -.dword 0x732261a140372d7b -.dword 0xd7c2df006de32818 -.dword 0xf05bd11d207fd0a4 -.dword 0x1fa8a2aa16d5be85 -.dword 0x434765ba8b1351f5 -.dword 0x7240fee13f34196f -.dword 0x0e240f26da5cb5b6 -.dword 0x26af64eef68b2213 -.dword 0x88efd5f91957a9aa -.dword 0xb0f9e38e96855cfe -.dword 0x6ebafb18274f024d -.dword 0x735250c20877966f -.dword 0x97435791db46bdf9 -.dword 0xf893470c74edf498 -.dword 0xc8634393d1304c32 -.dword 0xb4d94f7a29f7a66d -.dword 0x6702b3167c74ce3b -.dword 0x9e565859608654c1 -.dword 0x30203a2db5a784db -.dword 0x9bd2aee0bac40cdb -.dword 0x58e011f1baee3113 -.dword 0x3c9aa4f2aae1dc7a -.dword 0xe4a246bb1c82c1d9 -.dword 0xb30c7d1b43334e61 -.dword 0x3c02899e3396a6e5 -.dword 0x35c931d226f19671 -.dword 0xff7df2e14cf62be7 -.dword 0x6584408a2cac8947 -.dword 0xc2b0e1690c4a05e9 -.dword 0x2156eba6d34c51b8 -.dword 0x1513c43c509f0cf1 -.dword 0x276ae36600624475 -.dword 0x397275c725d98430 -.dword 0x0da66c040e2438c2 -.dword 0xc072df1ebb7e6baf -.dword 0x27b4f8f88b77dc21 -.dword 0x495fc7b093c70f82 -.dword 0x2f8bdf5527040f65 -.dword 0x258c21ea823c71f4 -.dword 0xbaad8ba2fb2ff685 -.dword 0x39ef8cfa6b758500 -.dword 0x3392fd669b46a4c7 -.dword 0xa0b221c0d0e469ef -.dword 0x1f0e86f4f8e89860 -.dword 0x1d0117826d613f8f -.dword 0x20ac89fb3b8f3fbd -.dword 0x9c8c038b899a76c4 -.dword 0xc60797173aed8fae -.dword 0x7062889f1abe4119 -.dword 0xfbb9dba68b52e0db -.dword 0x663b28a612698760 -.dword 0x587b2c7a9165c229 -.dword 0xc0bd009cfafd7d99 -.dword 0xe0c0785838f4d4c7 -.dword 0x0f9b68c4ebeca907 -.dword 0x0501682dc45839a2 -.dword 0x6783f072a015135c -.dword 0xd5d4a4697281703a -.dword 0x607f2258adf65c2c -.dword 0x57e7629abc456855 -.dword 0x45130776d05d0b01 -.dword 0xab9bd21849eb153f -.dword 0x91d9a151065b41ba -.dword 0x5313d0d4af32ad6c -.dword 0x0b2dcc9176f2e7aa -.dword 0x22f9504cb5d02a2f -.dword 0x6e081af5ef37b409 -.dword 0xd9534b8ad2336b90 -.dword 0x57ed5b56f0dd24d6 -.dword 0xe115304b2b6f8fb3 -.dword 0x2b90a2469c5b6f65 -.dword 0xd645744a6aef376d -.dword 0x2389370afe0f76e6 -.dword 0xd092f63879eaa7c4 -.dword 0xeb96553cbd57dd40 -.dword 0xf5663e7f682ca4b1 -.dword 0x73e9f4115cc41882 -.dword 0x99522cf732fb7769 -.dword 0xaf3738cc397e480b -.dword 0xee35c32c1d2e501f -.dword 0xce306910aab8f272 -.dword 0x8acc4d345d99aef3 -.dword 0xccd33d5af24c3b5d -.dword 0x5f1475c72449012e -.dword 0x1889e5913adc4935 -.dword 0xee4a1104ccc79a30 -.dword 0x387597feb6480145 -.dword 0x45323cfd9462faf2 -.dword 0x67aa9c99bfe05037 -.dword 0xf2630bfe0b7f1da1 -.dword 0x843d4555f00b1ba6 -.dword 0xae67c448ee0da58d -.dword 0x91f6ccd3360ac704 -.dword 0xf4d076ef3bd854cd -.dword 0xd61513a9a6199296 -.dword 0x64dfb47a59ea9757 -.dword 0xe363e5c30902b12a -.dword 0x7d071e27f51cfe3e -.dword 0xb7b8488a2f9084cc -.dword 0xdc9c342a05aa76b4 -.dword 0xc5532a253f397a74 -.dword 0x45ca2df61c3b72be -.dword 0xc1d38e0a6288a6a8 -.dword 0x507d303b5ec65ecc -.dword 0x2ff83c812e087274 -.dword 0x51dbb5d96b172012 -.dword 0xd19e88c6c98495e1 -.dword 0x3fe7a978b229afa8 -.dword 0xc2bea9a902e407d0 -.dword 0x17c66c76323985c1 -.dword 0x4776e518e7f2f346 -.dword 0x8add3f33865b3627 -.dword 0x30ef89f5f2fc1adb -.dword 0xa9d275f1eae132d9 -.dword 0x6935f4354d9fd807 -.dword 0xb8121af8eb2e4ccd -.dword 0x96b9db6fe216a2e4 -.dword 0x6a323829af6e5c0b -.dword 0x8b08ed3af1dc55be -.dword 0x1366231f29498da7 -.dword 0xd8252ca9e0b9f265 -.dword 0xbce1d51a7032cf52 -.dword 0x3715a21e453dac8b -.dword 0x3e0ec0449ef39ac2 -.dword 0xa8a3ceee4618514e -.dword 0x9b93a41be1bfc22d -.dword 0x9891260482318e54 -.dword 0xf542e4d011ac702c -.dword 0xe690c2aa178bb681 -.dword 0x1ad05d8cdd255ce8 -.dword 0x7be183f3b77efa03 -.dword 0xb7c5081329dd1321 -.dword 0x6560a01681f02c4d -.dword 0xccbbd64bd7d50f5a -.dword 0xb995713fea7e73c1 -.dword 0x435a03d70b26bac6 -.dword 0xecf62566c9cd25dd -.dword 0xfd2a86dea2dc8e02 -.dword 0x963960d5a6b24289 -.dword 0xd3036a8ba18d6dea -.dword 0xbe42fc18b8f50e88 -.dword 0xb329646bec55e8ca -.dword 0x37e19f01faf0549c -.dword 0xd559f239862ba9ae -.dword 0x7dd79fe3d6845941 -.dword 0x9c5647075e06d77a -.dword 0xc6c6674263d87f80 -.dword 0x662e22f775c5453a -.dword 0x073179afb6dc1f11 -.dword 0xb80328b036267047 -.dword 0x36502b4fe5a71a30 -.dword 0xfe09bc6946e47ffb -.dword 0x89b670c6a919b32b -.dword 0x02444495cc14ceba -.dword 0xac55121b668d9bb1 -.dword 0xd641df0d2d12c761 -.dword 0xb48bfc7fff59ec05 -.dword 0x39694c33709530e8 -.dword 0x09c7813986727446 -.dword 0xa0a776b2ffa3221e -.dword 0x8a9e8eb3c6014b19 -.dword 0x1f6fcf3e6137ca51 -.dword 0xc8ba0da5f23a80e3 -.dword 0xe5a5c94e4a2729cb -.dword 0x424db5a1bfe90d40 -.dword 0xdddb0755f6728e2c -.dword 0xa928d967dcdd28c3 -.dword 0x72b5909485061fad -.dword 0x75bacafcd11a3501 -.dword 0x2943cb35188d6924 -.dword 0x6231dc3862825b59 -.dword 0xe23625967beeedc5 -.dword 0xee2853dbdb487e98 -.dword 0x7c2dbb949a5579d3 -.dword 0x85384177569a6d29 -.dword 0x9f3947cfb4ffbb82 -.dword 0x3fcaaa09ae6ad0d9 -.dword 0x14119d276abde4e1 -.dword 0xee5a5c48a7a0677d -.dword 0xffd1d90b204bec0e -.dword 0x7925fc81fdf05b43 -.dword 0xb79705a0b0f59582 -.dword 0xc4eb741d4bff254b -.dword 0xce6f0f97f4904a37 -.dword 0xfc6adaaa76b7b363 -.dword 0xd84f23a808202168 -.dword 0x341b0d32d3e1f143 -.dword 0x95035547de9d5fbb -.dword 0x1fb1bbe166bc439a -.dword 0x248d1ba1171d6844 -.dword 0x872398be63b902cb -.dword 0x71e0e5e99fc4f6be -.dword 0x2a6615d719de7e6d -.dword 0xaabec7e2471e6174 -.dword 0x9dff5f34680b916d -.dword 0x08fb3ef47f0d5913 -.dword 0x09d9a2522f18c9cd -.dword 0x9f78d7d35cce88fd -.dword 0x57d4b09bd1c04aeb -.dword 0x691c28422caf6f75 -.dword 0x6939b1cec965ec8e -.dword 0x8ea73443238bb41f -.dword 0xdd40f388ec00e49f -.dword 0x7409667f8af598de -.dword 0x626019a04bc7821c -.dword 0x81f744233d0ed8de -.dword 0x83182a415aa7a6d4 -.dword 0xb6a6291d02e59826 -.dword 0x3e150ae7965adca5 -.dword 0x3b7edd39c832b679 -.dword 0xc11ae3fd7f8dd3da -.dword 0x7f63701f8516624f -.dword 0x4cc43aab3e7a03a7 -.dword 0x7f7133743d8661cd -.dword 0x13a2dc1d25843b39 -.dword 0x1b3a1267111b79db -.dword 0xfc005594b82e78d4 -.dword 0xe539458fa35086e3 -.dword 0x82d19b53f4ff1af9 -.dword 0xb470ed1c2c01fab7 -.dword 0xf047382ebc115f19 -.dword 0x462fef32a7346653 -.dword 0x11eff057f99c40bf -.dword 0xf9e4e8ca7bf92729 -.dword 0x218ea6737cc99059 -.dword 0x392130918a8c451d -.dword 0x452f83c27b1d65fe -.dword 0x3d8adcf058d0ae9c -.dword 0x047ad1c21d16358e -.dword 0x4547d2eab39c7eb0 -.dword 0xbdebabc611aee4de -.dword 0x8588fb0e85de262b -.dword 0x85a4a6bd8534d7fc -.dword 0x20fea9c6c48fdb82 -.dword 0xa750e39675304a53 -.dword 0xe0c7674930db95ac -.dword 0x3c2c1ad8441cffca -.dword 0x5a473c7fbb8a213c -.dword 0xe63df8d45033076b -.dword 0xb3d45622dccc6874 -.dword 0x3dc3a1086b7daa50 -.dword 0x2fa7a7b9e9c34776 -.dword 0xca4849d471cb8118 -.dword 0xe4d8fba59e7136bc -.dword 0xe30c6be200983a2f -.dword 0x859c2ef03c1d1f93 -.dword 0xfc57e586353dda07 -.dword 0x1c281c4a7236b9c9 -.dword 0x18fa48125d365048 -.dword 0xf55284ac416e7095 -.dword 0x300d8f22fb0c6545 -.dword 0x7ba136e2edab6187 -.dword 0xb97f6e96567e4e46 -.dword 0x7c5668145d968bbd -.dword 0xd6e1acc345aec0a8 -.dword 0x6b6b8ef14e4c5185 -.dword 0x76f8cf4fda392543 -.dword 0x4ef5293822cc31d7 -.dword 0x3a72346cc0235bd4 -.dword 0x4348005e90f90c49 -.dword 0x18a7c847fa0095be -.dword 0xd990c09046656fb7 -.dword 0x688adb05b73c0b07 -.dword 0xc23d45417ba0516e -.dword 0x751feae2025ec1b8 -.dword 0xd5fd4134af29f1d1 -.dword 0x087a3642d3232f51 -.dword 0x007abec19b0dbeb8 -.dword 0x3ad16780897746a6 -.dword 0xc04ae9a705eae0c1 -.dword 0x2fc5f6903f090c9f -.dword 0x562814ddaff75381 -.dword 0x4fd8998c7d665406 -.dword 0x7a344878a09d1ba5 -.dword 0xe5d9837a83786e4f -.dword 0x54832c72714ba772 -.dword 0x68e7abbc8ce55234 -.dword 0x242f38874f1e938d -.dword 0xc6eb16786d9eb512 -.dword 0x4db6803cbbc9b54f -.dword 0xcb146dadc236262a -.dword 0xcd7da0f7d930b223 -.dword 0x5714ad8a4db12f75 -.dword 0x98acf23c08444fe6 -.dword 0xad821e51cc261aad -.dword 0x63a6b58bf35e4783 -.dword 0x94e39546af43349a -.dword 0xd2759b03583e232f -.dword 0x98d32fc193789572 -.dword 0xf1cd7acf2a620d7f -.dword 0x408070dbfb6ccfc9 -.dword 0xcef25879d76e86e8 -.dword 0x29c241fe76a4d24b -.dword 0xb0af23b399a45276 -.dword 0xa1f31449aaba8650 -.dword 0x1ce8ed66156df589 -.dword 0x52c45c3ba903c748 -.dword 0x34fe1538857dc63a -.dword 0x0e5c52cc6aff95b6 -.dword 0xc4ca01863304c716 -.dword 0xcb103be1a1ce15ec -.dword 0x3a69bc0755370b4a -.dword 0xcaebbe664aa7b8cc -.dword 0x84a7096de7a8625a -.dword 0xbe6403c52e67f6ac -.dword 0xda42e73cf2a80a64 -.dword 0x66198eb0bd22eea6 -.dword 0x30914d5b6f2960fc -.dword 0xa5a67c758fc604dc -.dword 0x0cf6201346d4422a -.dword 0x0ff933633ac69b76 -.dword 0xffffd58311f6e306 -.dword 0xba653791be9cd078 -.dword 0x3f3b380a50805702 -.dword 0x1ce8b9a2d96b83a7 -.dword 0xe8717edaf6fc7252 -.dword 0xdaa60d02e4bac6b0 -.dword 0xcb1c2af5152d6405 -.dword 0x27b4dc140cb5752f -.dword 0x767856247a5a4cc0 -.dword 0x5dc8713bbb08c3e0 -.dword 0xefdb38e607a26713 -.dword 0xa1b9ff629449e65d -.dword 0x103a0445c007c5e6 -.dword 0xcac396be21475e5e -.dword 0xfbfeeb06a61a4afb -.dword 0x98ae4357d7a5d22a -.dword 0x6bdaf900640dfa01 -.dword 0xff15b01cb0f725d0 -.dword 0xbdb8067596a3368f -.dword 0x94395064e025eedf -.dword 0x72e906728aed28ce -.dword 0x574450d7537501bd -.dword 0x04139dec84fafbf6 -.dword 0x440df9e488545168 -.dword 0x860f9ade9a5ec412 -.dword 0xd1a3e3cf305e7e04 -.dword 0xc012badaa61d9ef9 -.dword 0xb0ffa3df5ccce160 -.dword 0xea594e6c08dd9b35 -.dword 0xc6e1f532c7d4ea29 -.dword 0xbd52d16da66a268d -.dword 0x436dd479a6347d54 -.dword 0xc20bea2ac306509f -.dword 0xb2e9667920141660 -.dword 0x73efb64a72c66038 -.dword 0x068bb1b3c75235c8 -.dword 0x9deaf7d03c435b7b -.dword 0x529fe9439894ea30 -.dword 0xbf0ec3a879ba8579 -.dword 0x67c6049a7b2998e0 -.dword 0x91cd00fda674d8aa -.dword 0x0426161d2ca73fee -.dword 0xe4f6449daf618f2f -.dword 0x4ddaa882eddab6a1 -.dword 0xd778ff53443760aa -.dword 0x7b65724997917f0c -.dword 0x7ee7f953639f669e -.dword 0x82f1bc6b42592020 -.dword 0x348f31ed4f99d80c -.dword 0xf6c93b6b98c6e76e -.dword 0xe7557eacc2f4e9ca -.dword 0x2de9223a634b8571 -.dword 0x14606ebb604de1c2 -.dword 0x8209bdc00d809118 -.dword 0xb9a18b9dd3a4ec81 -.dword 0x8df48516a75f2146 -.dword 0x677c8cf466585900 -.dword 0xb9cbc99bc718cb3f -.dword 0xe9c201f4719f6daf -.dword 0x5ac79f3e08a29040 -.dword 0x662b9ae656089779 -.dword 0x95c5040663d62c5d -.dword 0xf718fae632798c33 -.dword 0x2abbeb5c75798e60 -.dword 0x79ac104f23131ede -.dword 0x08402832f50aaafc -.dword 0x014f39eba514314f -.dword 0x319fbdf5b19b1d53 -.dword 0xa270d8af834390e5 -.dword 0x3e2923dc0c934f7c -.dword 0x0caacad108ffbe60 -.dword 0x6977840ade64f69d -.dword 0xb332bbaca062d0b8 -.dword 0x850fe36a1d4126ad -.dword 0xdbe0c8d8fdf21f1d -.dword 0x45ec1fe757dc7552 -.dword 0x59bbc4a263ff5340 -.dword 0x2bbb32a9377f9bd8 -.dword 0x0a1763ea3c8b189b -.dword 0x3d83bb533fe2843b -.dword 0x101d9943c93ce986 -.dword 0xa11f5fbd4198a9cb -.dword 0xc283ab6096a404c3 -.dword 0x6053d859eb153336 -.dword 0xa26fb5a2cef758c6 -.dword 0x2c249c990c42fe7c -.dword 0x28b654ed040c2900 -.dword 0x80ba75d7b2a08123 -.dword 0xe3a379fbbde3936f -.dword 0x04fc44458e1eeac1 -.dword 0xb665b659b269ac52 -.dword 0x321b6395f55e981c -.dword 0xddd1b7c85df03525 -.dword 0xe75e3c2224794825 -.dword 0xfef5c755bb81ad9a -.dword 0x137f8e8791feb606 -.dword 0xecf6f01134f7c8c6 -.dword 0xd2ecdd76a7b4c40b -.dword 0x4f028f79a7840468 -.dword 0x87deb25832fe2ff3 -.dword 0x85f815319a33daf6 -.dword 0x8caa44c3057cde78 -.dword 0xafc9e1d5f34e8654 -.dword 0x091619e36b703ad3 -.dword 0x533134f3e11d6862 -.dword 0x6c659a30d5b515fc -.dword 0xa0a61b52014b9d13 -.dword 0x0c6ab68d99016837 -.dword 0x4eaf0eace6870975 -.dword 0x901e534eecff2ff9 -.dword 0x78c56b987deacebd -.dword 0xadb7eceb55c3e054 -.dword 0x08d9704cf7f02099 -.dword 0x61050ca05c5b82d9 -.dword 0x13b949c62c2ce75a -.dword 0x9734742a6be77c77 -.dword 0x511e8dc57ac02889 -.dword 0x7cd5b1f31a60e72d -.dword 0xd3ad9580fead9a68 -.dword 0x60b5e6ac25cd6a91 -.dword 0x6ded5175b8bb3b97 -.dword 0x245bb279cfdc8289 -.dword 0xf119c68b10b9ca24 -.dword 0x43b649dffdf03cec -.dword 0x794195461aacb9c6 -.dword 0xecbf4bbe58f50be8 -.dword 0x7fdf926dabca9f4c -.dword 0x1f756cf3b348575b -.dword 0x9d05df1b27925e1b -.dword 0xa406ad462150b800 -.dword 0xf9c70e20f9a8c29a -.dword 0x060376dc8d9607d0 -.dword 0x5dbcd385c1ace8b9 -.dword 0xcf03a574076ed17c -.dword 0x2ddb3cdccc122759 -.dword 0xd64f9b15ddcbdc4d -.dword 0x98c5d26a61cd991c -.dword 0x3eaf2594c735fd2b -.dword 0xf23ce296b09fe190 -.dword 0x0ffe6445aed4fe39 -.dword 0xd7e6245d4522f5d1 -.dword 0x94f89590586611f9 -.dword 0xd0792269a0b2eb60 -.dword 0x291e7bbe77a27e66 -.dword 0xc4168cb5a0f64cf3 -.dword 0x16307a06eaa4e4d2 -.dword 0x282ed7a62d9c7a50 -.dword 0x66775d54742bea60 -.dword 0xe18eaf28d85e6078 -.dword 0x43cb972accf90485 -.dword 0x8e8bea1e77fd61bc -.dword 0x3378ef84defe60f6 -.dword 0x20d4255c4d17436a -.dword 0x9b3caa63312de8cb -.dword 0x82a0c5426d6da7f0 -.dword 0xdce515f75f9cc307 -.dword 0xaac3f647ab2f9ca2 -.dword 0xb616941618df3a30 -.dword 0x34dfc8fb9498d88b -.dword 0xf9d07b666b85c5f0 -.dword 0xc3c9497558c18bfd -.dword 0x86d7de158f803ea0 -.dword 0x67a61a29ac9db8ea -.dword 0xd81a28819ce22ad3 -.dword 0x2726c8988e03abac -.dword 0x7c54cfbf621b981f -.dword 0x71c51599cae6ac93 -.dword 0xe4e6edc163f39623 -.dword 0xb0b0a6c9ccb6ab77 -.dword 0x8d32fdc91509e712 -.dword 0x844127b751ff868f -.dword 0x31d2b1fe2c82a697 -.dword 0xcf24be6e7d153581 -.dword 0x0d345dbd7c2a93d1 -.dword 0x993a289f058a9fdc -.dword 0xe5da16b72564d533 -.dword 0xf36e38a9c7fada9f -.dword 0x103dbf3da59c37bd -.dword 0x6f0336752c0a734b -.dword 0x9bf1650c4e4ae9d7 -.dword 0x4da1bb1aa135344d -.dword 0x935aa0e1b4e334ef -.dword 0x535ea1e608ebc050 -.dword 0xd0e8841c11a608a2 -.dword 0xf6ec735ba7046df6 -.dword 0x3de82773ac2d0de6 -.dword 0x0923368b128480a7 -.dword 0xc26fe4bef7c62682 -.dword 0xd8f7e0359072f2c0 -.dword 0x313b1fb616251765 -.dword 0x4cf7e31756a2b408 -.dword 0xb02ce68f36618b85 -.dword 0x256548d5d75a7fb1 -.dword 0x5110da13f1ee1d30 -.dword 0xb575866d223b84f7 -.dword 0xb08887478e7db0ca -.dword 0x23eb45345683e5ae -.dword 0x82e849aeb4c0c248 -.dword 0xa6793a84249beb14 -.dword 0x5968b53952099c13 -.dword 0x30724e6d39c32816 -.dword 0x86965eaa9fcf933c -.dword 0x8574c1c168b64c29 -.dword 0xaa3db5cd1daa7782 -.dword 0x8cb987ab690bb531 -.dword 0xf15edccbd49e858c -.dword 0x20870bc7d0871053 -.dword 0x624e1b971368b2c9 -.dword 0x596cd5788b816428 -.dword 0x3576b648c705b44b -.dword 0x65c9fcdcb748ae8b -.dword 0x41dac6101b539266 -.dword 0xb53c84c4790e9739 -.dword 0x409ec51ae9e22670 -.dword 0xe0b2d9e0d6d77dea -.dword 0x86a332165010176d -.dword 0x603a89645456eded -.dword 0x201044587517a1da -.dword 0x7100d568d4d25ec3 -.dword 0xd11bf52421deb103 -.dword 0xd7a35e791cc4bc2f -.dword 0x0b16bc62b8985482 -.dword 0x5589c69c55a7158d -.dword 0x07a11f9dc13ea91c -.dword 0x59eb0aad60a363e3 -.dword 0x4eb745addc8ecaa7 -.dword 0xb0a62fe60a56e619 -.dword 0x48ebe2d85177b73d -.dword 0xa3c040a6e10f10f2 -.dword 0x28732e10de97c716 -.dword 0x79eaba8f4effc030 -.dword 0xe40fb142bbb0a4a4 -.dword 0x78071cf7591c36c1 -.dword 0x7e059bc004bf6b47 -.dword 0x6b88c1fddf556b8c -.dword 0xa30ca8abd1153a2a -.dword 0x938d08c18c4e2056 -.dword 0x5788848caa84feab -.dword 0xc0a15bbb40b3aac7 -.dword 0xdc84d5cb0cc9278b -.dword 0x32f9bc958285af4d -.dword 0x99c65d3a819ab366 -.dword 0xfe3ea828bc26b89a -.dword 0x656911320170684e -.dword 0x1d339d1e5674234e -.dword 0x4776a67448c53f5e -.dword 0xbd2e6531df449fd2 -.dword 0xbb7e00cf0bab7f22 -.dword 0xc04e66b901c31be5 -.dword 0x04fca0cb60a2d671 -.dword 0x293350650d8e876f -.dword 0x280800593345f4a6 -.dword 0x28c310b35db94ec4 -.dword 0x1863264e0dccc796 -.dword 0xfcacbb76ec101b39 -.dword 0xc0f074caea645187 -.dword 0xc7f8e5e58f4bfea4 -.dword 0x86a059e17a3fc4f2 -.dword 0x4c43fd55287a271a -.dword 0x7c300917221affdb -.dword 0x250a41ad7544dd82 -.dword 0x9581541ac60b40ef -.dword 0x1bb78d20362721e1 -.dword 0x8b4f39be1e23a770 -.dword 0x0d8158273dbdffa6 -.dword 0xf8e7b95d205fd2ef -.dword 0x78972bc4ff6e5ccb -.dword 0x56508f652fbdd67c -.dword 0x3e9302a251bc1430 -.dword 0xb93ecd48f8dd0af0 -.dword 0xdb3a24f8433dee99 -.dword 0xbf3bcfacca04e3d9 -.dword 0x2c2c2ea028bb9117 -.dword 0x4f217854a0eae82b -.dword 0xf3cf9aafb0f5e18f -.dword 0x919114b95aedfefc -.dword 0x3f9dee600786446d -.dword 0xf133d68f883de548 -.dword 0xf9b5fef9fd8e1216 -.dword 0xbce9679a85ef18b0 -.dword 0xb646a79288de4101 -.dword 0xd268d4b04b9392f6 -.dword 0x94880eeae2dc47b1 -.dword 0x1a13346e6daac5af -.dword 0xcb6724388fbfd205 -.dword 0x5ce11da73600c247 -.dword 0x8ace1c26267813f0 -.dword 0x4969791d673b17f6 -.dword 0xe466f43a63e254d5 -.dword 0x77ef7d31ed2c4638 -.dword 0xb507ef5462dd8fdb -.dword 0x46cbf3d7f15ea15a -.dword 0x4fdd28cd4fa7d058 -.dword 0x1cf00783f5fcc998 -.dword 0x5937ffd391b4121c -.dword 0x726ae85085543f2f -.dword 0x9e8a1986bc7835af -.dword 0xcf059b74bef98e39 -.dword 0x2e34ea17943e089e -.dword 0x59d68c41a9060935 -.dword 0xa1f86969353497eb -.dword 0x6ff8c7cd3b95d066 -.dword 0xe966813fe37da9c3 -.dword 0x168c9fbcf131b279 -.dword 0x21a19c664333ba87 -.dword 0xa039b296cecb44c0 -.dword 0x5b6791c257ea3474 -.dword 0x9bfb380bba3ebc7a -.dword 0xd264935b7a2c52e5 -.dword 0xed6f840a7a95ec26 -.dword 0x4f6d747e7d51c112 -.dword 0xe02632a236b87b35 -.dword 0x8cb6cad4b10b932c -.dword 0xa627d0ae263001e5 -.dword 0x423c22be491a271f -.dword 0x2abe8dd49875982d -.dword 0xe0c0b499061ab01a -.dword 0x9de43d01f33ad0bc -.dword 0x1a153c896933958b -.dword 0x3aa29c9f1f59a3da -.dword 0x87d59bb62911b70b -.dword 0xd042241301cc6966 -.dword 0x41dbc7a0926a2af3 -.dword 0x2339414d7985a7d8 -.dword 0x9be230972380054e -.dword 0x8515503c1f196170 -.dword 0x2341deebda0bd0c7 -.dword 0xbf23fc52088a84d7 -.dword 0xdf670442edad4300 -.dword 0x1487d3b0aced4255 -.dword 0x289d60010f59a14d -.dword 0x19cf0c94bf75df73 -.dword 0xa63f366db50086a7 -.dword 0xdd99a837e6f6d0f7 -.dword 0xd269ea82a43e2680 -.dword 0x0cea9a94e8e86a5d -.dword 0xb425e94b746fc4cb -.dword 0x53a21e388ec5b864 -.dword 0x9e93a88fbf3026df -.dword 0xaf3d1a43e419e1ff -.dword 0x3999a803e95f730e -.dword 0x2559d6e6a92855ff -.dword 0x9e2bdf4b552c301a -.dword 0x81e852c259f7f85d -.dword 0x1012bff1f3b468e9 -.dword 0xb1a87851bcd10849 -.dword 0x16c60dd766c983d0 -.dword 0x0b1accd3328d67e6 -.dword 0x38db2350e1a68ea5 -.dword 0xe33ac904f36039d5 -.dword 0x719fe7660c78585f -.dword 0xf2cf3baff4749b5a -.dword 0x2e072b4e9023bf6b -.dword 0xbdf7b96a378f05f5 -.dword 0xf6c7da343c8f38a1 -.dword 0xca69e002baa4e9ec -.dword 0xa9084561d410e7c8 -.dword 0x5ac807f594a59f3c -.dword 0xd8064d8bb8e70aea -.dword 0x7f4ccf8475a8c4b3 -.dword 0xca51ace155b99d5e -.dword 0xf43edbae5b665134 -.dword 0xf955ec5c586c8b3d -.dword 0x3a15e61aa99a9582 -.dword 0xd44a5dfa82712ead -.dword 0x8f326a5d1b698dbb -.dword 0x73702909d9b9563a -.dword 0xdb0835796661d394 -.dword 0x3192afebccf680f4 -.dword 0x5ef155c22d97b4b8 -.dword 0xfe4db4098367a7da -.dword 0x8c311b963b36cf1d -.dword 0x720ac74a72372b8d -.dword 0x1b4afc683d5f148e -.dword 0xafa46f23cd2a5c80 -.dword 0xc5b002eba8553a40 -.dword 0xeb4c528045b4dc12 -.dword 0x215712e1d50f21c3 -.dword 0xce17dc7bf5fb0668 -.dword 0x4066d4577d005577 -.dword 0xc19fd54f74b14667 -.dword 0x6c53b7e5e99f4749 -.dword 0x15ed1d81092fa588 -.dword 0x7bc73b2a8c58dc6a -.dword 0x3f6e403579bde65a -.dword 0xad28967f5d65a235 -.dword 0xcff1a5e0c233fd6b -.dword 0x5ae558926c64c508 -.dword 0x9e70341e6951206e -.dword 0xb0aeb450a3243a8b -.dword 0xbe856bb6d0c499d8 -.dword 0xc3104984da52d674 -.dword 0xdf03ddbb9d5b35e3 -.dword 0x9aca323fd0e022ca -.dword 0xc4abbc5e9a3db7ad -.dword 0x1377077b2bf118b2 -.dword 0xc78589ae2da51183 -.dword 0xbe256271658322be -.dword 0xfc36a32db3e1e44e -.dword 0x7bbba30f6f42d241 -.dword 0xb34edfb6d9e09e6d -.dword 0x4b0658b4f158886a -.dword 0xb36b9f6168bd2462 -.dword 0x0d317ebd4210d27a -.dword 0x01ee7ae8352ce7b9 -.dword 0x52f8e6f0d5005b9b -.dword 0xec3e32b84451b991 -.dword 0x1be1f9524426832e -.dword 0x8c3630858b626f7a -.dword 0xdd50b29b662b7182 -.dword 0x950138996a94ecb0 -.dword 0xb425e69fe94546d4 -.dword 0x988d4893a222960e -.dword 0xb119b56739fa633c -.dword 0xa26a49fa7332d73b -.dword 0x4fec81c26b1b5f8b -.dword 0x71514d4170c63994 -.dword 0x558bbdf1054f343c -.dword 0x90f8d36be4011fff -.dword 0x09b0d5eb17d9ffdb -.dword 0xf99885359fbef3ec -.dword 0xecc70b026d675d9c -.dword 0xf67e29607f9a718f -.dword 0xdf2150a0ea587be1 -.dword 0x92b0c3e398257066 -.dword 0xb7e91fb379879b11 -.dword 0x6cb18cc9ebaa7103 -.dword 0x6a611cd26867aa85 -.dword 0x55c54f5bdbc43b45 -.dword 0x0deb40e3ec19f233 -.dword 0xbd2c9a5c8e7f46fe -.dword 0xbe533b4114a91115 -.dword 0x2d429963b96f9c94 -.dword 0x628832c47e5aba23 -.dword 0x239478d49d6b17f3 -.dword 0xcd398595e9762221 -.dword 0xd00047fa5dad314f -.dword 0x2fe75683dd962445 -.dword 0x028ee7cdc060f73a -.dword 0x332719613f3cf42c -.dword 0x4678bf75e1261115 -.dword 0xf226e7a5a94a0d1a -.dword 0x68ce463f77e7728a -.dword 0x2336821e3d72ad52 -.dword 0x94b2300d1bf5bcd1 -.dword 0xd5db83b07aaf46e9 -.dword 0xe01d2bd5d4778b1b -.dword 0x36edb320f6ad919f -.dword 0xee6925ba338f799c -.dword 0x15700e00880ed4c2 -.dword 0xabe44b2ea832bf08 -.dword 0x31099c26092004c1 -.dword 0x25acf6d5db4b24f3 -.dword 0xa2f36d0fda62109b -.dword 0x9b645a23cec03a6d -.dword 0x48337869133e8440 -.dword 0x390f7085959443ba -.dword 0x298d08a4e0dae8c6 -.dword 0xe59c374fe6fa8c12 -.dword 0x2dc35e8df492f0d3 -.dword 0x2e575982a8c9a64f -.dword 0x40ca31ee6c980fdc -.dword 0xd070342ee4f1759a -.dword 0x58f6028426f55720 -.dword 0xa048fd9f395e3631 -.dword 0x96556803d34ddcc2 -.dword 0x08e4820ed1fedc38 -.dword 0x9d3c515a3a7a346a -.dword 0xd3aa5a1a4b866344 -.dword 0x071831577b1bb720 -.dword 0x3f46777c8d7a210d -.dword 0x1d081ba1857fe9eb -.dword 0xbadb90f3f0ec1219 -.dword 0x1cb90b28195e6e5d -.dword 0x0424fd8ac8816471 -.dword 0xbb9d9742dc5cae1e -.dword 0x799031d0651f7c08 -.dword 0xa33e4adf7031d4c4 -.dword 0xba393d9cbe9ebb49 -.dword 0x19c5653c9d802fa1 -.dword 0x0116a201f873c995 -.dword 0xf53012051916bf30 -.dword 0x6d00644dd4109fc3 -.dword 0x656ba51b8cce5a17 -.dword 0x54d8ad7dc964f272 -.dword 0x5b6fa5a3dcc02c1a -.dword 0x348cc40d95246486 -.dword 0x2fef7596a2fe8de4 -.dword 0x28c8452eff2464e1 -.dword 0xe47945e3b2c77b8e -.dword 0xcc27702cb5e1146e -.dword 0xa507a73b4c2812fa -.dword 0x04f35ab64010f547 -.dword 0x004b9f29d02c63c3 -.dword 0x2e81e01ff91599f8 -.dword 0x2767fa6d612cc78e -.dword 0x22250957a47914e1 -.dword 0x351c72d3cf9fc225 -.dword 0xf0c1cb8c7d7af456 -.dword 0x0907f5f43334002f -.dword 0x1f2e2e2e481503a6 -.dword 0x20e220cc9e9de423 -.dword 0xa04eea4282876785 -.dword 0x46b8385d55fc74b2 -.dword 0xe71204b5099b0800 -.dword 0xc7fb1b46a98a62ff -.dword 0x712d3bba796113b7 -.dword 0x99189e877393e059 -.dword 0xc6efa5e0cfd54c2d -.dword 0xc2f5136c7bb59aba -.dword 0x94c08ee01438dbaa -.dword 0x06d848de57d72cf4 -.dword 0xb384158e824a6bb2 -.dword 0x8a37642b10803244 -.dword 0xb1a053c93797ed8d -.dword 0xc6221609dabd77cc -.dword 0xd7855e73e06b7fff -.dword 0x295dc7d4d926b9f3 -.dword 0x1aef637fd081f7b8 -.dword 0x73e0b03c7173e5ad -.dword 0x4740948366a101ed -.dword 0x4f302fea5f3a5cac -.dword 0xaa08946bcb9bb34e -.dword 0x53b9d7062b6af12b -.dword 0x43e6f3e8aa46d4cc -.dword 0xbe057906286cbf46 -.dword 0xf24ff14551531ba1 -.dword 0xa8e98c0079ec3512 -.dword 0x225553027ff83899 -.dword 0x3502a7cac2870ce5 -.dword 0xe3b7216709469ed3 -.dword 0xd92d7b64eea8efee -.dword 0xf406db69b791ca11 -.dword 0xad0723f36e3d280c -.dword 0x143dd4581488acce -.dword 0x5143efb8b389d685 -.dword 0x026882880c7c0c2b -.dword 0x4136a3bbff6f2daf -.dword 0x02af565742ab89b7 -.dword 0x2b4badd61d4bc376 -.dword 0x19adedd191336774 -.dword 0x83e9b60927fad706 -.dword 0x93db69e6786add5a -.dword 0xdbbbd7654756caac -.dword 0x5fee609be2e02dc7 -.dword 0xf84dae43a9438593 -.dword 0x44900fa8af674575 -.dword 0x183c49e61752ef92 -.dword 0x4f36dbd404edad67 -.dword 0xc45cf51e070d1122 -.dword 0x95503f1cfe6eb82c -.dword 0x293f78124470a110 -.dword 0xfb45727033e8f58b -.dword 0xf87e05c8b4b62716 -.dword 0x60b7b99491376d4d -.dword 0x12c3cfbe822208ac -.dword 0xbcc17c63d4a46fdb -.dword 0x9151ef80badd3ab1 -.dword 0xe5b2545d2a4047f8 -.dword 0x9a33f44c3c7ffe51 -.dword 0xa1a7a52c43486bcb -.dword 0x2ff83d3ef652c772 -.dword 0xd09122104292b3fb -.dword 0x88568e0f4ca262a6 -.dword 0x16a920dd7128f1cf -.dword 0x0abd992a75b38ede -.dword 0xa9f7a8e37b7107f0 -.dword 0xa37f90d4509b8a20 -.dword 0x5f976e4b28e0ac93 -.dword 0x0ff75d1c6c5c328b -.dword 0x04474d9499c25aad -.dword 0xf17129e3b1b68834 -.dword 0xbd5777d6b6a10d11 -.dword 0x1e7683a3a3302aba -.dword 0x8515218e567dca18 -.dword 0xc29c316e4ba54dfc -.dword 0x98142462f20ae667 -.dword 0x43a335d99c1e63ce -.dword 0x03a92c5b2a84e45d -.dword 0x32d8be9c805756b0 -.dword 0x2e44a29ba8c1d289 -.dword 0xa2ac5ec0879b3ae9 -.dword 0x4e603a992eea79aa -.dword 0xd6e2a30b64b993de -.dword 0x0d708fded387603b -.dword 0x1c25aeba033dfdde -.dword 0xd0ea656c45f466c7 -.dword 0xd8e3d9f195570dae -.dword 0x70902b39085d7c1b -.dword 0x83c0ef614fd26e58 -.dword 0x51295bfc3fe793f8 -.dword 0x5c2e0dedb7ce3f94 -.dword 0x0201b2eda8f5b26c -.dword 0x27b506d948ea9fe1 -.dword 0x8931375a38b23656 -.dword 0x80c9c7cd0ce65106 -.dword 0xb152a293a17d7669 -.dword 0xb2dbaeef81411ecb -.dword 0xae3c922ab4ed27a3 -.dword 0x2e2f021763e3d758 -.dword 0xc55c3d3f42d41ebb -.dword 0x9a56e6ced7f9bf36 -.dword 0x87fc1fcc95c92acd -.dword 0x3448ffed6a598aba -.dword 0xc135adf0a3b2dc67 -.dword 0x35a4a0481c835b77 -.dword 0x8909428a856f0c3c -.dword 0x9eb1fbee3ed9f418 -.dword 0xa7206af8c35de368 -.dword 0x45cb99bcadec2962 -.dword 0x2f9dc4897c28fe2a -.dword 0x6048d5b0b9d3f48a -.dword 0xf298f4b5fdee461f -.dword 0xc9e2e3327074cbeb -.dword 0x15419f6ea8f8abea -.dword 0x577353706588dbe4 -.dword 0x726cecbc587cf036 -.dword 0xb685bb9a9a91f6d7 -.dword 0x87518ff324f49903 -.dword 0xc996ae529338a54a -.dword 0x31190d36b8f891c6 -.dword 0x6ea42fc1ce9a2025 -.dword 0x49fe0fdea074bd51 -.dword 0x516296482d73c877 -.dword 0x963eda20f14554e3 -.dword 0x9baed58b783bfa34 -.dword 0x9ee94c4b26655fc2 -.dword 0x5ae0fba79a7a3e70 -.dword 0x16848486d481fa0f -.dword 0x603ca484daad4b56 -.dword 0x42a8ad9c41eab355 -.dword 0xbedf4d7e42011cf7 -.dword 0xf2e161f76c6c7580 -.dword 0x50b6fc1bcd39d155 -.dword 0x48b08a618f304aed -.dword 0xbaa8861e7c2d86ac -.dword 0xaf88dd7f215d585c -.dword 0x96674c59544d17f0 -.dword 0x225f1c569acdf500 -.dword 0xc308975aac1a52fa -.dword 0x5e7d3b10aa444210 -.dword 0xbcc43102ba0ea626 -.dword 0x15a688e743d0440b -.dword 0x9193f969d47a02bc -.dword 0xa26f0a0a96c2fb52 -.dword 0xaf9d46570378d4ea -.dword 0x199cf7afe54466f9 -.dword 0x8203ca257d944348 -.dword 0x3c09445929df50ad -.dword 0x1e076a5a2715e8ac -.dword 0x994471c4d3c6148f -.dword 0xbbdcc616d821e67c -.dword 0x1a44ac4b5ad23c5c -.dword 0xa87b51eb6d9402a9 -.dword 0xab1172e16d90c517 -.dword 0x3fda147325bb153a -.dword 0x9103372c89bc698d -.dword 0xc5c79e94aabbfc4d -.dword 0x6c5bbe00292f9431 -.dword 0xb80bab2d37b925bb -.dword 0xd23784bf3bd2ce3c -.dword 0xb8a4360783ea3ef4 -.dword 0xa803b890b7295f89 -.dword 0x08ced245d5a4dced -.dword 0x24d2f3a39d61822f -.dword 0x893eac50bc4e75c0 -.dword 0x6f104eb11abdd404 -.dword 0xd3c5cdb15ac99909 -.dword 0x806df0d0a688735f -.dword 0xf8f51aae5335bb6b -.dword 0x7ea48cc132c0c8e2 -.dword 0x2cba233999817ce4 -.dword 0x4e5b839997f23b78 -.dword 0xdae53377ae444ba9 -.dword 0x58f6f09efc0855cf -.dword 0x5c35c3d3413ba98e -.dword 0x3730a31076ed1fd4 -.dword 0x5f33edd2e0c781b1 -.dword 0xfac3433d093c9862 -.dword 0xa1cde823f734ff78 -.dword 0xa3463d1556804ba9 -.dword 0x365711b101a81105 -.dword 0x4bcb3658b9b3b0b9 -.dword 0x209c270ef6baa79b -.dword 0x8e665354be69986f -.dword 0xbba083aa0926dcb9 -.dword 0xc53492b29736945b -.dword 0xab338ea8264abc5c -.dword 0x8f7f16ad74da5aed -.dword 0xb512c2d330fb312a -.dword 0x867579f3aa76dc21 -.dword 0x7db31b54cc794152 -.dword 0x27bea4837c2817b4 -.dword 0x8d1979b133364186 -.dword 0xe87bff50c6a96ac3 -.dword 0xf81c1fa5f757634b -.dword 0x4faaac1503b1d09e -.dword 0x6224ef799af8ff89 -.dword 0x25e43a6ad7146227 -.dword 0xd40be0ebfc97d5ce -.dword 0xeb0e94c24c8e793e -.dword 0xad22010afa7d616c -.dword 0x641cc16f75ade332 -.dword 0x0dfb4047fc7014e2 -.dword 0x472c4a675a0cef63 -.dword 0x2d51925fed70af96 -.dword 0x6af3ab9db762e39a -.dword 0xd0ea7ecb85e53d7e -.dword 0x5c0a7f7df8d001dd -.dword 0x97970c21b6a047af -.dword 0x7ef924289e46672d -.dword 0xe38b6614407e0b47 -.dword 0xdc7349d9fe13373d -.dword 0xc1a23f3d5a71eded -.dword 0xcfcab45d8188921e -.dword 0x717d0c2e44940f8b -.dword 0xc48a8219864b3c61 -.dword 0xa62a923ace9fa4a0 -.dword 0x5e92a6f89dd56d73 -.dword 0xcc30fdb9c4535cd4 -.dword 0x23e35b68bafe8e49 -.dword 0x974deb861d20fa75 -.dword 0x4072fa23a0e15c15 -.dword 0xc7390f8eed3b25a6 -.dword 0x0fbb049653269885 -.dword 0xe9e8bebf49e4170d -.dword 0x419dd150e882a92a -.dword 0xba0988cd707fec4f -.dword 0xbcd96ce5e9213afc -.dword 0x5e9875728cb0ddde -.dword 0x8764f8507ee48732 -.dword 0x3bbf3f5d6647db6d -.dword 0x35b41e74e2e2eace -.dword 0xfc4d4fa30b68248a -.dword 0xdcacc9b0b0edcb15 -.dword 0xa41f29dc65dfe3cb -.dword 0xa45f4e481e83f18d -.dword 0xbd6d6d111e30cf79 -.dword 0x5aa10b7463ca3901 -.dword 0xbe53b55a1f96c939 -.dword 0xd030224ace4f05d1 -.dword 0x2ac17b94849d6c07 -.dword 0xc5cb6740b3148347 -.dword 0xf340d9309fca1790 -.dword 0xe8b4dea78fc80e87 -.dword 0x4f76ee8e1e48516b -.dword 0x34dcc154348d6748 -.dword 0x4abe5730ffff15c0 -.dword 0x21e0503a819b31f9 -.dword 0xc96587309fa23e42 -.dword 0xc1833e0270c2bcd8 -.dword 0xa99ac8aa2712abb3 -.dword 0xc8b49d777a23d760 -.dword 0x61e9962f28477d65 -.dword 0x99a87d4c1387c977 -.dword 0x8510216b8527d878 -.dword 0x013dd19fd506ee55 -.dword 0x6deaee1b25d9c4f8 -.dword 0xa88d701409c8dfbf -.dword 0x168c9d4d0acf98b2 -.dword 0xe3b9c081649a43f3 -.dword 0xe561759c1ce9d817 -.dword 0x9f522e8e34014439 -.dword 0x6d7a1e9cf0dc4de1 -.dword 0x563cf38c08a15dce -.dword 0xe0599eacbd83b532 -.dword 0xc9e2545960f57f86 -.dword 0x42e0def8d52d8810 -.dword 0xd895d8c5237d5796 -.dword 0xad3dc0b2ec7dcf04 -.dword 0x5dd5d29d5093ae1f -.dword 0xa657447ee3462b9b -.dword 0xce12c4679b63f721 -.dword 0x63cd898ea3144b5d -.dword 0x646d03b8f62abf0d -.dword 0x745e257cc2d76f3e -.dword 0x26c7e8041f2bba6f -.dword 0x7599e4147cc6ccf5 -.dword 0xcb14aef62beb4cd1 -.dword 0x0b741f82cb0b1ea0 -.dword 0x8821d8bbbaa3a323 -.dword 0x597d76881215051d -.dword 0xf007e61582d53a58 -.dword 0x763bc21355a09e01 -.dword 0x21b1c4bf620f1338 -.dword 0x1177eff319520c69 -.dword 0x5e4c88467d4d3511 -.dword 0x9bee5d3b94069b07 -.dword 0x654b26beb81be7c0 -.dword 0xd9a39bf9b1ad87f3 -.dword 0xacb0d4a6ab6e6a96 -.dword 0xaf9afc1075bcf202 -.dword 0xf50290b99a653932 -.dword 0xa832ce393f9a4a25 -.dword 0xede42e9a6b4d47ea -.dword 0xe0e6f121bc9cdac7 -.dword 0x227794f6edde9de3 -.dword 0x8ded7612ba6be119 -.dword 0xa46500a11252d357 -.dword 0xf5c0d64279f49f1e -.dword 0x6c413acdc02dc89d -.dword 0xd9ed0eab2c993b44 -.dword 0xdeb70e5655b01951 -.dword 0xad19cb575494047f -.dword 0x6cde6ec65b295592 -.dword 0x886ca03a84563934 -.dword 0xb99a282f04454bfc -.dword 0xb6139b12a56e33ed -.dword 0xbe3949b50eaede12 -.dword 0x2ed2e50033897605 -.dword 0x0e504e63c1d3b1ec -.dword 0xf9c503fe810d6700 -.dword 0xf7f87ee4dd2f86bd -.dword 0x99dee84c2c85eff5 -.dword 0x95cf7122fe5511bb -.dword 0x797130b44f736632 -.dword 0xffcf9c1a69a8cf85 -.dword 0x3c2e7b4a50da4ac1 -.dword 0x7af6bc8543e9d21a -.dword 0x169d32b2595507f0 -.dword 0x128741ef678e3d1c -.dword 0xcd74ddbe254b7267 -.dword 0xed810389dd7d8a74 -.dword 0xf3055f64993ba448 -.dword 0xf1938fd09fd69b98 -.dword 0x8d9b8dcc36eee7e1 -.dword 0x52933400f9cc21ff -.dword 0xb71ae1531f3afcbc -.dword 0x6bf79b7aad2c6679 -.dword 0xc3f9eef096dd485e -.dword 0xfac68f7bcb3842a3 -.dword 0xd6d2d22314bf7348 -.dword 0xd4c21076b4a52821 -.dword 0xaeedab74f418482e -.dword 0x93f630d0e77aa9d5 -.dword 0x8b34f6b6d49d6f23 -.dword 0x48a16a2a0ecabfe4 -.dword 0x30235735587286e0 -.dword 0x99e56e4c26074bbd -.dword 0x4393b3e4cf51f8e9 -.dword 0xed0865524a1029fa -.dword 0xb95c0e7e7ef2ac3c -.dword 0x30c2f0295e030b8b -.dword 0x739c2b227d05d49a -.dword 0xa4fb32a988e51bb7 -.dword 0xe6b75f98a85ac6ca -.dword 0x758f14666e5be9eb -.dword 0x5b1cc1558c1afa01 -.dword 0xb3d1c48db5a67068 -.dword 0x6d200b34853ce829 -.dword 0xc3219f80cb28a510 -.dword 0xc8cc11ba1be5bd93 -.dword 0xe2e9c8a06722d9a5 -.dword 0x9643b35e05912e63 -.dword 0xb4ebdcb98066cbf2 -.dword 0x918e65f87aa0f31e -.dword 0x3d60eb641f7f5dd7 -.dword 0xd193ff34d39c9677 -.dword 0x33b060b261e456a9 -.dword 0xf28ed8470f2af50c -.dword 0xe6e54a1ed7c415c4 -.dword 0x440b2f5aaedddee9 -.dword 0xb34a1c267871edfb -.dword 0xe53295282a22f0b0 -.dword 0x4feea6e8b0bcd498 -.dword 0xf9406911517ce780 -.dword 0xed7d6d6bd2225760 -.dword 0xd2171e25246e2046 -.dword 0xee586642f5547259 -.dword 0xdef02db0af37eaf4 -.dword 0x594b29374d184bc0 -.dword 0xc630502a6e8c178e -.dword 0x227561b845b65f7a -.dword 0x34b22dc9febb01b8 -.dword 0xfa78a44657867247 -.dword 0xdf18c2290d07d180 -.dword 0x1c9babf668bc08c6 -.dword 0x8d00363a480248e0 -.dword 0x9c3d5fb6d01b262a -.dword 0x51a48069ca72ef09 -.dword 0x089674bbfc18b4e7 -.dword 0xda412a57216fa816 -.dword 0x2060e1dd472e48d4 -.dword 0xe0f0b037c7855c09 -.dword 0xad171d1b03d574d6 -.dword 0x0b53bcb877c06ad5 -.dword 0x45aa3fb3998479c9 -.dword 0x118c91e81fcac16a -.dword 0x783e00c129d9c490 -.dword 0xe260f156bc3c1e74 -.dword 0x253dffce26c0c570 -.dword 0x9546e77a8ce588f4 -.dword 0xeddf7c219a7dbd64 -.dword 0x5389537fb082c090 -.dword 0x8671c36d6a73319d -.dword 0x8b8db463a4ca7e0b -.dword 0xbde6290349b6e71f -.dword 0x0ed9c247ffbcb0f0 -.dword 0xd7571aab637aa84b -.dword 0x87fb84144c2ede69 -.dword 0x717645dc1020216e -.dword 0xcfd86b1c80370b11 -.dword 0x8867e5eaf1a61d8c -.dword 0x97ea5afc3ae7ce4f -.dword 0x7bede7ba44fd22f0 -.dword 0xc59269e4787b9312 -.dword 0xcdf339ea4176ba41 -.dword 0xb5d57d82ef7394f9 -.dword 0x4d34d054e568ba7a -.dword 0x3441cf4f720f7c24 -.dword 0xa9cf854125b440d8 -.dword 0xac817efd32d3c353 -.dword 0x0b7baef942d122ae -.dword 0xe4020fe4998bd2d6 -.dword 0x04a04cbe225bd6fb -.dword 0x042b98c67d798537 -.dword 0x6fc03e5e7225cde5 -.dword 0x3827b6b86a50e1fb -.dword 0x12396dc7fb39a074 -.dword 0xfed67ef1e3fc384f -.dword 0x5a56dcd96d8213f6 -.dword 0x3319b23a48629359 -.dword 0x2e87cddb6f240e2d -.dword 0x09c5b77d1c4749d8 -.dword 0x1ea805130ff17124 -.dword 0x2e64aacb49acff82 -.dword 0xaea925830476298c -.dword 0x228ed2f3778e13f0 -.dword 0xc29d8a9e6c491f0d -.dword 0x502253169ce3f065 -.dword 0xc0c7c4b205233073 -.dword 0x24ba3ce8334efbc0 -.dword 0x3521b3bee3f9c151 -.dword 0xef1eca80ee394a02 -.dword 0xa2f9ea27b058852d -.dword 0x47ca80af6b090a3a -.dword 0x1893cb6ee9d2b5ac -.dword 0x70fcf1392ac57b55 -.dword 0x045104496edd9789 -.dword 0xff30701dafefe57b -.dword 0x344358166de1c4b0 -.dword 0x736391ac6e75ca0e -.dword 0x486a37effe78af17 -.dword 0x2a46e858af7253b6 -.dword 0x67c0527fc8fbfb3e -.dword 0xfc5b2710b56345fb -.dword 0x8be0119e8c6d9c4c -.dword 0x8b1c9e6a85d3a8cf -.dword 0x8b3c470905db0b22 -.dword 0x4ac60f3fc290917b -.dword 0xbd47b865b6aaa20e -.dword 0x67ce3ed686084aba -.dword 0xc5b50871ca9e80a0 -.dword 0x845883476f03d52d -.dword 0xfa9768eec8eeedde -.dword 0x4d3a88f8a4749c4c -.dword 0x28b21fdd0ef12548 -.dword 0x40fda78540d3731f -.dword 0x68c1a669ff23fcd6 -.dword 0x25fff2de730b3e11 -.dword 0x2fd40d358724e51f -.dword 0x34a19e217b9f5747 -.dword 0x6ada6d671970590e -.dword 0xd866901a62580c67 -.dword 0x11a23fb2cf9418d2 -.dword 0xc8c0fe45620c7b0e -.dword 0x799c8365caf82457 -.dword 0x65ec067abc1b8bd5 -.dword 0x05e1a4318938020c -.dword 0x3a56d55a416e2424 -.dword 0x4e14759747bd21ba -.dword 0x0fc43cfa2f05719f -.dword 0xc6c11d01d2a154d0 -.dword 0xa3f4212ea24cbb50 -.dword 0xa75ee2dc392c2e65 -.dword 0xd0211c2b3932f0bd -.dword 0x3097fb1bf15ad9cb -.dword 0x20ef7644ce79da2b -.dword 0xbffab724b7c86b11 -.dword 0x7376b07d036246fa -.dword 0x372969f8797d37dd -.dword 0x1c88eb7b4bc2e4b6 -.dword 0xe1d38853cdc3b40a -.dword 0xe441b90b31c8bcaf -.dword 0x0ae545824d44cf32 -.dword 0x8f457b285d4a391c -.dword 0x1bbf2da260126162 -.dword 0x2dac10bda88da80e -.dword 0x08a72b59a89e89fa -.dword 0xb6dfb6995b289e5a -.dword 0x4ecfbbc9521e3879 -.dword 0xc22e0bb8d8e12958 -.dword 0xcce1b48f00bac5f9 -.dword 0x256c389d4d5773ad -.dword 0x291a1356bc3c2e5c -.dword 0x6add8139c8715ae0 -.dword 0x7f5f3649169c372b -.dword 0x61898d080fda0a17 -.dword 0xd3c98fb984e09c55 -.dword 0x086a4f3e1d33c9b9 -.dword 0xd82820c72aef5a6b -.dword 0xe4681113ad56a3d8 -.dword 0x2063df57c19d08ae -.dword 0xa55a5c9e693d046f -.dword 0xf3c485d8388ab9ec -.dword 0x7a56cf2f8cb998f5 -.dword 0x248da996421acc15 -.dword 0xaeb4f37f2a8b5b5a -.dword 0xfcad23b2abed597a -.dword 0x2efbc12b3bb970b9 -.dword 0x61220af806f06549 -.dword 0x028a5e2a0d316c65 -.dword 0x67d1d62374e94530 -.dword 0x63277e027ae382f6 -.dword 0x0d3649229b7637b3 -.dword 0xb0c7f08a767625f3 -.dword 0x8c7b38be202fed63 -.dword 0x70840b94b23c6be5 -.dword 0x04753d06386d724a -.dword 0x8d5ac6753d8eeb7f -.dword 0x8da1f3bf06405000 -.dword 0xaaef58bd393c864f -.dword 0x69e3f160d1fb37bd -.dword 0x089077f06c6a9afe -.dword 0xb117ee8e080b510c -.dword 0x8ce8c82747028b7d -.dword 0xc7a18b8af8664939 -.dword 0x062c376cb64f1351 -.dword 0x8dd211976522cc45 -.dword 0xc0401799d11fd72d -.dword 0x5d1972a52ff9bb54 -.dword 0x66dbda5483b0be7b -.dword 0x33b79d8e17dc2659 -.dword 0x6fca47c3d41cba6d -.dword 0xaae4fd5faac5d648 -.dword 0xc76e713026b646b8 -.dword 0x4f8ae8619b1a7033 -.dword 0xa072cc0eaa81ffe1 -.dword 0x0128811df86e212e -.dword 0x333a49c1444f5476 -.dword 0x872485a45a2c33a0 -.dword 0x19afbb3c6a7fffbb -.dword 0x54ba5df9b904cf04 -.dword 0x151b9d5b5e9db735 -.dword 0x3161aceebd176ab7 -.dword 0xdea6483b12ff2d0d -.dword 0x8bbe12e61624040f -.dword 0xfe175fbb878af752 -.dword 0xdd3e3fb9471079d6 -.dword 0x3171911d79f0f016 -.dword 0xe724ab40d562c5bf -.dword 0xcc0bb6ecc6bad927 -.dword 0x6098782657c6288a -.dword 0x7052e168cb1b8697 -.dword 0x21ce5738f1f6b0d7 -.dword 0x55cb0b8ee7672854 -.dword 0xefbd12b23531ddd0 -.dword 0xaa8a37c30fe36b2e -.dword 0x479039dd7f10a6b9 -.dword 0x34e86d7926170c51 -.dword 0xe374acac833154d0 -.dword 0x61492aebb28fc88f -.dword 0xd5c77fec19d01d8e -.dword 0x115a0e028c11bae9 -.dword 0xc9ede48130159c0d -.dword 0x1b1d3f59072b48fa -.dword 0x0dcf4d482ba45d33 -.dword 0x8c14137237e43ea2 -.dword 0x7fc387beeef14f03 -.dword 0x2446af2c9753237f -.dword 0x41c368d7ef5a770a -.dword 0xbb30cfdaad63dadb -.dword 0x276ca585ba32fcb8 -.dword 0xb82ff38092b62de9 -.dword 0x0a6c9e2f04913d42 -.dword 0x2c3b058936cc4cd1 -.dword 0xad11dbf4d3be4f8d -.dword 0xffbfd7d057453253 -.dword 0xb2876c6f71e602ec -.dword 0xcad5d0466b651573 -.dword 0xef939e77f3e398c2 -.dword 0x09208a7f5a33edea -.dword 0x7f4b4a554d5ddf81 -.dword 0xb52b333d7318cc1a -.dword 0xd1051a6ab6c8efd5 -.dword 0xf4a75814d2740762 -.dword 0x718ace83abcb5430 -.dword 0xff0735732f392f93 -.dword 0xc1eaa3a98097e7e9 -.dword 0xcfea3429d55b6e77 -.dword 0x0b90b1700fbf3459 -.dword 0x0a831a8ddbee6623 -.dword 0x179f3a25bfc4f231 -.dword 0xb64223dec82520cc -.dword 0x3b6669a0c3ade865 -.dword 0xacd84935cbdecb5b -.dword 0x058b85d3d2ffafe3 -.dword 0x0630ab65396890b6 -.dword 0xb81ca89815316b82 -.dword 0x26fb63b99e754704 -.dword 0xeccc183968caa00c -.dword 0x902d06d1fdc6dd38 -.dword 0x618aa7e6cb8d658f -.dword 0xd2bfe863480cc089 -.dword 0xeda8e36fa3ef748a -.dword 0x0d6bb1e21689a1fd -.dword 0x6e5aec5c9bcec28b -.dword 0x3c7d876ba221b3c4 -.dword 0x5335fdc7845c0083 -.dword 0x6de12049da54e1f2 -.dword 0xc27beae1363c723f -.dword 0x79223b4807f74611 -.dword 0x4d8c3038391e3816 -.dword 0x49b18f9f4f3e57ac -.dword 0xd27f503287c3d502 -.dword 0xea503cdd3ecf18ce -.dword 0xa2301c3e0c3f01f6 -.dword 0xc3e5fe3fcccfb440 -.dword 0xf349ae9bf3fcdb53 -.dword 0xf0c0d72b81a06897 -.dword 0x36a7a235ac73299c -.dword 0x735bd6f8b54a6433 -.dword 0xaead8ed69ee258d4 -.dword 0x760bed029e00aafb -.dword 0xcfb26bdff45763db -.dword 0x015ccd486fa2b916 -.dword 0x525294ff91f4a27f -.dword 0x0ebc8621b0872f60 -.dword 0xeebdbe1bccc473e9 -.dword 0xa12b48613111b0d9 -.dword 0x1ac3010e3c72c8bc -.dword 0xe5ffcab5f1bed7e3 -.dword 0xe23fd2927786f46c -.dword 0x80aeaf4b3266787c -.dword 0x916b36ca863d2791 -.dword 0x4cf6ffe96c782ee7 -.dword 0xf647f20445f491a2 -.dword 0xa892eee64cd8e1c2 -.dword 0x884de75bdf2b13b4 -.dword 0x8d21632d99c27752 -.dword 0x21cfdc7244eaa58e -.dword 0x53d92206da706615 -.dword 0x4d65150392b4724b -.dword 0x87343a7ff8810537 -.dword 0xdd9e5c29594393a6 -.dword 0xe786434a3a8e2fa7 -.dword 0x8d92008d71ab2b18 -.dword 0xb4287b6e65afbcb9 -.dword 0xc650aca3ae5ab552 -.dword 0x40e519ca03ad830d -.dword 0x1596dac17748895b -.dword 0xcfda165086ac1f01 -.dword 0x7354311831d7d874 -.dword 0x1f4c28c277e53050 -.dword 0xd6134a93de05ffa0 -.dword 0x05e2bfc51e290847 -.dword 0x21ad72873730b45f -.dword 0x949df2fa4acf0c8f -.dword 0x39ce1397246e4769 -.dword 0xd2296850904fdc70 -.dword 0xc238484526f3dcc6 -.dword 0x1abb3689024025f7 -.dword 0xe4015c249a5bce8c -.dword 0xbb5fc7205ff5de65 -.dword 0xc532d60807f23a0a -.dword 0xc48c626f9ee473cd -.dword 0x72373a0fd228edba -.dword 0x468ab627588590d9 -.dword 0x08864271cdaad2bc -.dword 0x9e558a14d0d3fbc3 -.dword 0xfd510aebca84d32c -.dword 0x167db88e0870e91e -.dword 0x1b7c5b0d2c75fabd -.dword 0xd2dc42d19eeb58c0 -.dword 0xefbe0037950c4523 -.dword 0xa63a2936ede4e586 -.dword 0x4f4bc92591710cce -.dword 0x29ac5f3adf4afac7 -.dword 0x479485e4ed1cdc0d -.dword 0x0521006042d8029d -.dword 0xe5d4c15fd29f2ef5 -.dword 0xb1ce08d8c1d2ef62 -.dword 0x672f949cda37d12e -.dword 0x60bc486337485715 -.dword 0x77e9a2220d84a610 -.dword 0x06952b11b2be4d93 -.dword 0xdf96b5a27ae1bbca -.dword 0xed5311ca53ba1436 -.dword 0x344cf535bd738885 -.dword 0xa49473bc62505a60 -.dword 0xc818c26da7076f92 -.dword 0x6e2fa453c9951127 -.dword 0x2aca91df4439dbdf -.dword 0x3342eee048fd0e0a -.dword 0x7a63c8c1dc87a305 -.dword 0x5fb7651a24c080ea -.dword 0xa1ee5fe810687ff7 -.dword 0x6ba8a869b6464de0 -.dword 0xdc8435e960539046 -.dword 0xe840bf420f15249f -.dword 0x84edc5c3fd66e997 -.dword 0xb3eaee9d5ff4ba90 -.dword 0xf8f084881423fd84 -.dword 0x95ef253be913107b -.dword 0x1b211f9e8f079bd0 -.dword 0xe4c2db51d368b412 -.dword 0x1dbee89c60996b34 -.dword 0x22a8bf6fd679834d -.dword 0xea9ce2abbba3b953 -.dword 0x28a0a634dd8cfb8a -.dword 0xf6c833e9cf84ceb8 -.dword 0xdba7965fb31c83bf -.dword 0xc5b295f69c976eac -.dword 0x4eb0cd907ed05256 -.dword 0xbed191a2be37eb91 -.dword 0x25cf7c6a3ca0d20d -.dword 0x5e51c9ee8db73c7a -.dword 0x1f198e43693106a9 -.dword 0x5c2cef385f308eb5 -.dword 0x61f39da52497c7a1 -.dword 0x5483d46f26259d89 -.dword 0x56aa7e7aa92bd60b -.dword 0xa3ea09d25dc16542 -.dword 0xa7f5c568780ed412 -.dword 0xaa4fa01d1d0b445d -.dword 0x2b7c01a48cd6e4dc -.dword 0xea8b9b01b6d9cde5 -.dword 0x926610e4e861f7f0 -.dword 0x2da4eb90826eaac9 -.dword 0xeadf9097957b6188 -.dword 0x8abdec9af9ffac33 -.dword 0xe111bad3714affbb -.dword 0xc64b06bb13c2ebb7 -.dword 0x3b953d0e8566a43d -.dword 0x6cc6c73190fcb504 -.dword 0xfd2efb6386840481 -.dword 0xc5a44a26389f56ac -.dword 0x4c9fe886dbb4094b -.dword 0x591b7426acf067b0 -.dword 0x4d8725eb3efa0cbb -.dword 0x33188d3b15fd0ee2 -.dword 0x190e024b8d0eb536 -.dword 0xc8529c0850daaf47 -.dword 0xfbadd94965d46d6e -.dword 0x05086bea9296203a -.dword 0x34cd47055ad6697a -.dword 0xd7dd8ab8591403c3 -.dword 0x02b12286a50c0741 -.dword 0x55abe393881456cd -.dword 0xacae8761236ce349 -.dword 0x23b8788968e91c20 -.dword 0x5e73571a262439ea -.dword 0x3052774339fa1ee9 -.dword 0x49ed5582278ee51c -.dword 0xb0576d4d8d7f8608 -.dword 0xaab85ff0883b368d -.dword 0x3f3b0889c456fc13 -.dword 0x4c930490078b2ac3 -.dword 0x2352dde2857e95e5 -.dword 0xf2a90dc1357aef6a -.dword 0xd65be9fad6275f13 -.dword 0x8c1008cbac9f4691 -.dword 0x50ac84f003e5a169 -.dword 0x844a38408e3aa5de -.dword 0x223ff2104dc42891 -.dword 0x6dac0a6423077508 -.dword 0xbe1b1809464019e0 -.dword 0xaa2ab5074c2e2de3 -.dword 0x3be0c0ec65b821ae -.dword 0xb0c879acaef41b96 -.dword 0x73dda0d80f74c92d -.dword 0xd0843e8039d04d53 -.dword 0x1315e2e0c3119328 -.dword 0xe8a39901c2deaf49 -.dword 0xaf4cbfdcbc115f6f -.dword 0x18c56523e8212c37 -.dword 0x946d10c3a8609d85 -.dword 0xa470961d30f691a5 -.dword 0x35cfd91f9c23d7ed -.dword 0x76303bdf2a41aea5 -.dword 0x103ccd53e482ed19 -.dword 0xd2d1776f594ec62f -.dword 0x5754ef82661334bc -.dword 0x1011ca3cac6429f1 -.dword 0x3a69c92ab5653436 -.dword 0xc52b6c5f924d5695 -.dword 0x8091c5fe6700b58a -.dword 0xbf961639338215df -.dword 0x6a51b51c100a7889 -.dword 0x79cc2cc73aede907 -.dword 0xefd8895926510705 -.dword 0x44c0979ef44d3b8c -.dword 0x788acac67feb97e8 -.dword 0xf6418611767d2ef3 -.dword 0x22755f771acf8837 -.dword 0xfbe580c1e1d3e096 -.dword 0x8007fc55645bad3a -.dword 0x59c30c3a08b1d640 -.dword 0xc0eaebb3e3e531a1 -.dword 0xc65cc09248db1df7 -.dword 0x8f88952fcef64a7b -.dword 0xa8eadf9b0ed14dfd -.dword 0x826ba81672e15b3a -.dword 0x2ea9b1c8cf165e2e -.dword 0x20e84560303820c6 -.dword 0x53e97bae4797657d -.dword 0x20779b7ad7ce5f5c -.dword 0xe474570d6554e68b -.dword 0x673c8b60bb3876cc -.dword 0xf9207fdd23c62db4 -.dword 0x462690c50c77528f -.dword 0x3910ff9023a5337c -.dword 0xf6ceb4f2999db6ac -.dword 0xaad1161b9475e349 -.dword 0xd741a22dc6f15e9f -.dword 0xc2af17c6c2a20784 -.dword 0x3fc17faf4091d258 -.dword 0xb62652a837844498 -.dword 0x43033d3ac447386e -.dword 0xf11e9915bdfb4b4a -.dword 0x57a24dcf928baacf -.dword 0x7cd238523d5bb9cd -.dword 0x3ec561074869eb40 -.dword 0x4b8170d56d01103a -.dword 0x1dbb54512a3e8a03 -.dword 0xa3279da11b48320d -.dword 0xaa75ff09cbb3de81 -.dword 0x4f79550802927623 -.dword 0x1efabb1f8ed01c86 -.dword 0x8b9a14d4d62a3ef9 -.dword 0x6ada35f949624bfb -.dword 0x54ceb4493d7f4baf -.dword 0x11eae528cea3a443 -.dword 0x09791680e0a80b95 -.dword 0xd07d35cbcd39c371 -.dword 0x481d808d9734f1a5 -.dword 0x7064d7488c645df0 -.dword 0xd3e5bbb9307a3def -.dword 0xa5c67617e733da4e -.dword 0x93c8f3db15623259 -.dword 0x601ab5f531d853b8 -.dword 0xbb5818e439ce0b33 -.dword 0xaf28a31a084a2dca -.dword 0xce8b1684259e56a4 -.dword 0x2b8b84e8ff6b6b21 -.dword 0xbd45bf35ce1f1394 -.dword 0x979dbb15127c360d -.dword 0xe80d8734d47dd9d0 -.dword 0xc2a56a2889adaf58 -.dword 0xb092cf2c8a79ef55 -.dword 0xa8b784ae0d1f9791 -.dword 0x5a2c35759de7add0 -.dword 0x1d457a2f7d86c89e -.dword 0xa88908661fcb0c83 -.dword 0x8271e15aa6f599f0 -.dword 0xca11273b1a343033 -.dword 0x650f9ee172ed53e8 -.dword 0xdbff8d7baee58ded -.dword 0x63218892033692c9 -.dword 0x3ac483348e441a7d -.dword 0xa67fa17de778171c -.dword 0x0265760df95cc1fe -.dword 0xda14f5804fb7f7c0 -.dword 0x9323aa212ae7bb59 -.dword 0x79d9b530b0aa3c3f -.dword 0x45a998132ce8eb36 -.dword 0x087a276f5790c5df -.dword 0x1057a3349587517d -.dword 0x7ba2dbb051d99bd4 -.dword 0xfccf3e2634da156b -.dword 0x6963bfa477ed667f -.dword 0x5580772e73062794 -.dword 0x880a96c89a8cb1af -.dword 0x31e84d11fa807791 -.dword 0xa8e5a6df5482ccad -.dword 0x6fd8fb1544a79adb -.dword 0xf922693456942ca0 -.dword 0x972abfa20d29dc74 -.dword 0xbfda7c449e7b4a45 -.dword 0x06f08b5ab65b9879 -.dword 0x872e05f6888bde93 -.dword 0x4731f222aa4a7a0a -.dword 0x3cdb7b7b6c1f16c1 -.dword 0xaacd149eb5348dea -.dword 0xf76321b3a995ff3c -.dword 0xa816f101f853da34 -.dword 0xb840b4ffa4a1d91c -.dword 0x10728ff7daed0bcd -.dword 0x830ebd2d33bc7b56 -.dword 0xed2bc6ac6be68625 -.dword 0x6ca28cb9027b8f6c -.dword 0xf64a12ab726b5dd3 -.dword 0x2057b8dfce5bfeac -.dword 0xc7bf27f2cce72319 -.dword 0xaa5080dbf40d8c90 -.dword 0x55b6e9ca49abf676 -.dword 0xf81963f3d2826fb0 -.dword 0x056ef9c7e5c8d6a6 -.dword 0xbe5e7de1941bffc1 -.dword 0x63c8ad6241e6d4b6 -.dword 0xccda9697ada367f7 -.dword 0x5745be2d243c4a68 -.dword 0x3af9ce307db0f24f -.dword 0x4c9e966da875ff11 -.dword 0xef63ceeee328f266 -.dword 0x053f6bde14187055 -.dword 0x7321002f4d4cff68 -.dword 0x66016e88a228cafe -.dword 0x5b582189b3936f3b -.dword 0x89cbbba8103f05f3 -.dword 0x477acf60c40fc5b1 -.dword 0xc4645036e46ac85f -.dword 0x2bac4b5c30421c2c -.dword 0x5fe1ad0bf61ef150 -.dword 0xb8826f4e65990c7b -.dword 0xebb2dfc24627a94f -.dword 0xdfc996026f7a3f20 -.dword 0x519f6a9be9a6d778 -.dword 0x447916f609e1a539 -.dword 0xdd6a33c799838fb2 -.dword 0xe6483a04d04b98e9 -.dword 0xaea6f004e3279bb9 -.dword 0xc06afba6ad8497fd -.dword 0x328712e4ae0031c2 -.dword 0xa88ebb3db993fffe -.dword 0xdeb9e4b0c1d308e6 -.dword 0xaa6fe748865f03bf -.dword 0x0e7543dae549300d -.dword 0x076eeb9c38349c97 -.dword 0x217b42bd2d383028 -.dword 0x5570d346c5cba328 -.dword 0x31fc60bb16009fd3 -.dword 0x37f106acc4701285 -.dword 0x6f78f5fcf558056e -.dword 0x5da5704d35e1e830 -.dword 0x26c8a661f58b5e85 -.dword 0x605d2e222ef4825a -.dword 0x0b6a8e78de1bf383 -.dword 0xf0c3416141d38fd6 -.dword 0xfb4f14057b5db94b -.dword 0x1212ca2ce901b35c -.dword 0xcb218b8c0f8f6833 -.dword 0xcaae438524e315ce -.dword 0x98a4bf9927df20e6 -.dword 0x5701f24e11538751 -.dword 0x9085ce756bfb73bb -.dword 0xf97e1d64e5732785 -.dword 0x89505e95885efc20 -.dword 0xe136ddd4e8833d40 -.dword 0x6581175872e83929 -.dword 0xbc3e40ab1a13885c -.dword 0x54327b8896c9040c -.dword 0xdd5a7824804a8e64 -.dword 0x14936681b0ad985b -.dword 0x987be6c18e5553a6 -.dword 0x0f881d1bfad406e4 -.dword 0x6d28494de950a188 -.dword 0x17e9f36ee3501d0d -.dword 0x6157bb61057ed08c -.dword 0xea8c1b780b278676 -.dword 0xb4534c40195c1be0 -.dword 0x4d62ffde8487eddc -.dword 0xe8879fe828e3e84f -.dword 0x2d6692556133258a -.dword 0x188120d47f36a97b -.dword 0x385b32a39f7153d1 -.dword 0x77653d968dc43d66 -.dword 0x884f6e57baaeb11e -.dword 0xca4a8190d931d66d -.dword 0x7692bf2d131cea07 -.dword 0x0b13b8505fef621a -.dword 0x7555510ba2953472 -.dword 0x6eeddeceb171b597 -.dword 0x3778b27dc4c43d0c -.dword 0x2a4dbee58cb7e823 -.dword 0xcf45c1551ff67170 -.dword 0x3e3410a1dad1042f -.dword 0x2659c81f21ff747a -.dword 0x1b28c8741b3eb826 -.dword 0xc70ec88fa031bc6a -.dword 0xd8707e375e8609a0 -.dword 0x55602953843f097d -.dword 0x6e79570106783304 -.dword 0x812eb5448e734a19 -.dword 0x6419c1cdf55aca22 -.dword 0x534cad28dae8eefb -.dword 0x315d1cb893415ca3 -.dword 0xb1a20782dd3bc1fb -.dword 0x24bce5b983a49ee8 -.dword 0x2d88a996b3c50467 -.dword 0x1ae0345d43310889 -.dword 0xac797403841165a7 -.dword 0x5a94572bbcea5d3a -.dword 0x42beea381dfa8915 -.dword 0x690a9d6f7165d8f3 -.dword 0x6d47c89da33086c8 -.dword 0x2b7a70e5d7f72fbb -.dword 0xfd5b87e0b688149b -.dword 0x39851ec748fe30d0 -.dword 0xfedca55a7a60d02d -.dword 0xfa36d2cc6a59704d -.dword 0x64f86c1b62fd264e -.dword 0xb8c217c01576e1b1 -.dword 0xf3ad41753f4d6009 -.dword 0xff189c933ca128d7 -.dword 0x8972bf5a0c977112 -.dword 0xa0b862f95adbac98 -.dword 0x1c323e2c7daff851 -.dword 0xd59cac2d825e86b3 -.dword 0x10dc624cb145f160 -.dword 0x4efcc6c2c108421f -.dword 0x950cbceaaf39788e -.dword 0x196e0bc0248bf16c -.dword 0xc13959f0a2b17622 -.dword 0x3882058ba0086e7b -.dword 0xe8c570de063159cc -.dword 0x7d5c6d2ec8343751 -.dword 0x0a51101c61e6ac8d -.dword 0x446c5ffd6ffeb084 -.dword 0x9d03fe3aa32f5e11 -.dword 0xd30aaf69bcc9aae9 -.dword 0x9e596b360e3825af -.dword 0x1e8862dec9bab052 -.dword 0xcfa9637d6ac767c4 -.dword 0xd7f5c0de38017fe1 -.dword 0x5eaecf308b56ca3f -.dword 0x8b17e09f90cb9351 -.dword 0x44f5c35e33da5df7 -.dword 0x4aca668d3866ff73 -.dword 0xb787eb37f3d7df6d -.dword 0x25b120be06422608 -.dword 0x96a965f6ad044c7a -.dword 0xb1c987013c70b15a -.dword 0xf45f0fa4b71c3d72 -.dword 0x05c5eaa13ac43929 -.dword 0x1b7fe00625b30653 -.dword 0x1d51ac665fc25929 -.dword 0xb22a9cd13a4a6b96 -.dword 0x1d1d5471e267879d -.dword 0xd5579aaa0b248f7c -.dword 0xb4959d7f46f0d3ba -.dword 0xfbe2ba51b52141ff -.dword 0x69f463adbe713b3a -.dword 0x0776ca0447286c05 -.dword 0xdb0e760450bed254 -.dword 0xbc7f05daadb07ffe -.dword 0x724ed2ac4c25f46a -.dword 0xe6895694f990ab34 -.dword 0x160e01c0814bd667 -.dword 0xbb239cc5bd4fd006 -.dword 0xcdd086ae9b8052e8 -.dword 0x657c1c3e12b60c5a -.dword 0xf39fd482d6a5d057 -.dword 0xc1ee5f4b005ff90b -.dword 0xbe433bc36ee661b5 -.dword 0x1594a6f57e56273a -.dword 0x354377e44f373073 -.dword 0xb20476c64443c825 -.dword 0x4de1344d3147ebcb -.dword 0x081b3a83bed4206b -.dword 0x317d1a342e0d15c9 -.dword 0xfb8faa0d4a928288 -.dword 0x27b93f7da7af6b2d -.dword 0x689d8de89bf252d7 -.dword 0x0e1290b62386296a -.dword 0x636547d4f8988ab0 -.dword 0xa53ba82203977d6c -.dword 0xfae299828a4147d1 -.dword 0x7f88a2772b8bea5f -.dword 0x3e577da146d80a80 -.dword 0x5085aeabaf4a1704 -.dword 0x85b1eb0262d51c71 -.dword 0x216798bb24a61079 -.dword 0xaf0187f5c350ba5f -.dword 0xf79ac1fa929d6c53 -.dword 0x42bcff6a8549b079 -.dword 0x85f2cecfd5d10954 -.dword 0x51da89fdb1d06425 -.dword 0xfcdaff076fc494ee -.dword 0xba119c0941685bb6 -.dword 0x45a3af8a38cfad9c -.dword 0x552be69cabee6859 -.dword 0xd6448704cca5b22f -.dword 0x3698622af6984cba -.dword 0x37620058fb7792b7 -.dword 0xe3755146523b547a -.dword 0x7052b9701439240d -.dword 0x1ab83e3abb2334e4 -.dword 0x525a879c41376000 -.dword 0xad6971f6a805620b -.dword 0x2aabce080bc35522 -.dword 0x83c9234dd428a8b1 -.dword 0x8b0021c24dd752fe -.dword 0x39c2f17be7007217 -.dword 0x13da5d6ad8e97b09 -.dword 0x6376079ba0280642 -.dword 0x61100a6f1e41912d -.dword 0x6c02b9de9e8e026a -.dword 0xd5d5e18b8089bbbb -.dword 0xb38b2d3bb0b1d3b0 -.dword 0x0bbd3939b54286f8 -.dword 0xdf8d87af656fe318 -.dword 0x42b7779b8ad8ad43 -.dword 0xccd4102cc6158bdc -.dword 0x3fd22fc5391acd76 -.dword 0x407d7f63aa9ff940 -.dword 0xf45810dfbb293a68 -.dword 0x1d6cb180ce0f26f0 -.dword 0xf5cbb865e7922782 -.dword 0x2183219732a8ec1a -.dword 0x49ddf362326e74f2 -.dword 0x83381915472a6a2b -.dword 0xe63667147237fc27 -.dword 0x564721adb19da5b5 -.dword 0xf92341bbb1cfa3c7 -.dword 0x448b7b7b82700a55 -.dword 0xb112d7024222c0af -.dword 0x743d2de433efc2ef -.dword 0x81686b585cc0db6d -.dword 0xfb2d47bc34024865 -.dword 0xe772dca3b8d765ef -.dword 0xe217772d8666baab -.dword 0x3c2514909762a29b -.dword 0x2a42af39d659a096 -.dword 0x1c09fed9965241ce -.dword 0x71ae49b9a694f320 -.dword 0x7ed441e2eaa6d9c2 -.dword 0xd3c4fbc1874cb3a7 -.dword 0x31c57b2afc5b2e97 -.dword 0x35b8ce9a2e2a541c -.dword 0x040f1fb4700984b0 -.dword 0xb9f18394af6b6d50 -.dword 0x7d584051fe6a7a90 -.dword 0xd59fb5dac768d1c8 -.dword 0x9d79366ae6137463 -.dword 0x7dfa595404bc6fdf -.dword 0x509cfe708b24bed5 -.dword 0xf213921ac8e0d7fd -.dword 0x5adfa3d365ce349e -.dword 0x4b33c68e0e969760 -.dword 0xc81a4031d750ed8b -.dword 0xfc0a27d4977ba218 -.dword 0x47df169e9406c06a -.dword 0x43f9a7bb598df619 -.dword 0x2df1972ec7d52c04 -.dword 0xf17531ee048c1695 -.dword 0xdc67f886e198b3df -.dword 0x97c66846e9ef9d50 -.dword 0xa34e82dcbb7cfeb5 -.dword 0x08c45ed1b86c4b8f -.dword 0xd771a09561380efa -.dword 0x983fe92dd19b2809 -.dword 0xa258cde5d03f7b01 -.dword 0x017e5b0f49ff094e -.dword 0x15b20785b1aed4e8 -.dword 0xead9c708af39cf0a -.dword 0xd220f9780c9ae566 -.dword 0x13ae4472724ce09b -.dword 0xd236edff24dcbd0a -.dword 0x23023022b862a764 -.dword 0x313b586833b0d325 -.dword 0x4b4d45c310396b98 -.dword 0xfb503d71138ceee9 -.dword 0x769bd0c40ce3c4cf -.dword 0x6d1966e46044bcf7 -.dword 0x5c5ed1c1be146cd5 -.dword 0xa0073b63c07392b7 -.dword 0xb430188485186829 -.dword 0x187fc5a4f25b8435 -.dword 0x67fcc6863fb8599a -.dword 0x45720a3208e1f097 -.dword 0x58e008b7bc692e93 -.dword 0x3045bdf061c3da5b -.dword 0xb7df8bb5aeeded2e -.dword 0x943ffea54d6d5d4b -.dword 0xdf6f28950bf313c5 -.dword 0xb1704166c96c54ee -.dword 0xa2574f6e08185410 -.dword 0x9eb401c5c93d7507 -.dword 0x53e63a9ef5403369 -.dword 0x98f2600b31e87e2b -.dword 0xc7f1ff6e7c6b57cf -.dword 0xbdcd64ca2c645f80 -.dword 0x75cf4d00c2eaa607 -.dword 0x2eafd9ea3615fd9f -.dword 0xc400666fe3736abc -.dword 0x7864b9c2bca77222 -.dword 0x66c8a635adce37db -.dword 0xd7a07b229f918328 -.dword 0x9a362d58771f159e -.dword 0x677d5065d0d27182 -.dword 0x8e8c79df647e1386 -.dword 0x35444639846f42e2 -.dword 0x6a538b43ab4f22b7 -.dword 0xde6691e84630d11c -.dword 0xecd6d3e84233686c -.dword 0x65951200c2aadc5e -.dword 0xd0b17e0be38d4117 -.dword 0x3e0ee2dd0a0607f2 -.dword 0xc5950b73ec417047 -.dword 0x11d336ff7f3c0daf -.dword 0x9c4f6d2a615d9103 -.dword 0x466a9e6da55d4f89 -.dword 0xd2d9befd8141c7a2 -.dword 0x8819a66539be478b -.dword 0x89b9fc30c741beba -.dword 0xf3dec891f2b0806e -.dword 0xe51e7920a32e5ea2 -.dword 0xd19973bc0cb44c89 -.dword 0x703117f70f9d4248 -.dword 0xe76c2306c7e7eb5d -.dword 0x418e36b1ae2038de -.dword 0xc8975635918ebdcb -.dword 0xe859305ba96aa45c -.dword 0x3b3baf16250d6941 -.dword 0x67bbd081d346b53d -.dword 0xb891f4cbbbbe229c -.dword 0x45167bc8890dc5a6 -.dword 0x39f4043763620336 -.dword 0x09663221f7d9835d -.dword 0xcc5feedd3d57be8f -.dword 0xa0b2e447840d1c58 -.dword 0xeb3e988862bb36fe -.dword 0x49dbc5d00f1045f3 -.dword 0xfb21036b8ea66ae1 -.dword 0x244490188dff9ae4 -.dword 0x59d0c3f1d20141d4 -.dword 0x21e33753dc8b21ea -.dword 0x3a24ab41a23bd734 -.dword 0x33f755866a92ec9b -.dword 0xbf7a9ffb1ef6b8de -.dword 0x2a4fa89d1c6b4c8d -.dword 0x8b5ef46dc3ff2a08 -.dword 0x17077ec4e3c0e3f3 -.dword 0xeb62e7e474027dde -.dword 0x8166f0a574e9d91c -.dword 0x5ffd34a481e061d3 -.dword 0x05d5a55ef4a394a9 -.dword 0x972a24f8326973a5 -.dword 0x7f94b247d7a904e6 -.dword 0xc0547b0490e47951 -.dword 0xc2cf1b5da6b3093b -.dword 0x3581c2cfb6973607 -.dword 0x8d72f9d5e1b97bd0 -.dword 0xb0a15785bfbe7630 -.dword 0xc0e9d5529d8791a6 -.dword 0x6415e06456038233 -.dword 0x1e27198a1d01cf1c -.dword 0xf210822d4301ae79 -.dword 0x3e1fd93fa6df2a60 -.dword 0x9bfa1dc29f536d10 -.dword 0x11d5810810ed6bc6 -.dword 0xcbe303a88742f3b7 -.dword 0x834aaabaeeba9d3a -.dword 0x6e54e4f9826717f7 -.dword 0xa0d6b72eeb310f0d -.dword 0xe4e6e56ab8f2d585 -.dword 0x4ae3bc4b5a015537 -.dword 0xe387cfebbd0e9784 -.dword 0x3fe71edcc5bef852 -.dword 0x9f7388ad1fcbe0f4 -.dword 0x7cf98846d19e7474 -.dword 0x3ad704227ebbe6f2 -.dword 0x0128120233478d15 -.dword 0x06d59d2e59fcd062 -.dword 0x6ffd5f62d2acd473 -.dword 0x6730413a872ad3e2 -.dword 0x89846a75b6506af0 -.dword 0x02e0bdc8f893b5ce -.dword 0x47d1c98f43700136 -.dword 0x5a58479dc18337ae -.dword 0xca6be43380b1d6de -.dword 0xdcdb306d75e8e665 -.dword 0x7d792aed9b5602b4 -.dword 0x0bb08ac89484a568 -.dword 0x23425b4f73b60117 -.dword 0x5e466476d0abf98a -.dword 0xe29191a8c8422c8e -.dword 0x430fa5502789ab73 -.dword 0x3df93f80c90e909e -.dword 0xd17d88c014e6b821 -.dword 0xec704bdd20aab9bb -.dword 0x50c7391117a125e3 -.dword 0x1312258ee6326d94 -.dword 0xefa2905d278e60a5 -.dword 0x112342e26d47e904 -.dword 0x5da16aa19b90c35d -.dword 0x9df4b9185dcf8dff -.dword 0x926c294189a3cd7e -.dword 0xc047362a8d2b5165 -.dword 0xc468caf0eb0ad9f6 -.dword 0xa0eb5e5f49eefaf2 -.dword 0x8c486d78adf53185 -.dword 0x7172a98a1e16bfa0 -.dword 0xafd39439a9f948e3 -.dword 0x7b5b134781605e05 -.dword 0xa17f26399bd54c18 -.dword 0x2c2542b4b5107cc2 -.dword 0x549dfdb118264a4a -.dword 0xcff20e854017b768 -.dword 0xde3f48de82984b74 -.dword 0x2deaa904230f5665 -.dword 0x9a1af931c9f09470 -.dword 0xfe8b0e7d0b6f26e2 -.dword 0xfb3c942505cb22fd -.dword 0xf62fd61ea6d4bb23 -.dword 0xc3484756c3585e57 -.dword 0x8c7f9fee8f3b6181 -.dword 0x988a39809487e558 -.dword 0xeb699604075a9f22 -.dword 0xea22126142522711 -.dword 0x5ec3482ee68618a6 -.dword 0xe23af4d5b631e5af -.dword 0x285efc94c48a120d -.dword 0xdcd797ab56796294 -.dword 0x7f71f21918fae362 -.dword 0x82dbcbad938106b6 -.dword 0x31b45cb61775df4f -.dword 0xfe4a81d21739fb79 -.dword 0x59032fe5279194d9 -.dword 0x2f6be9fdd4479c74 -.dword 0xe35652103aba57fd -.dword 0xeef315439a236b6f -.dword 0xf92d68ea938d420a -.dword 0xf4d3de64600e1d22 -.dword 0x7f9993f5c4c7ffb9 -.dword 0x970ef4b7d925644d -.dword 0x2584488a9e8a9da1 -.dword 0x9b755adeaf5ee1a0 -.dword 0x0ed2968bccc8c399 -.dword 0x01d70a1429fa1787 -.dword 0x783b344b9d2db234 -.dword 0x960b457a1b39a05e -.dword 0x54a206761458dd02 -.dword 0x926b9308b05efdd8 -.dword 0x854e93dc26687ced -.dword 0xd04143a83f18340b -.dword 0xb7addd9428729633 -.dword 0x9b2aa4054638b4d0 -.dword 0xaaee3e65182bba70 -.dword 0xa1ab157cce0b460d -.dword 0x3989fe6983a3d8f8 -.dword 0xdfacf4ed5d335e4f -.dword 0x4a71154605dbfb2c -.dword 0xf2a233f5d9ee6640 -.dword 0x362a9764b3faf75f -.dword 0x3ec4a54c31c9d9d1 -.dword 0x3ca94cdc010a99f9 -.dword 0x1ab6d7ffec029719 -.dword 0x43b71fc290517bd5 -.dword 0x71eced4317617a88 -.dword 0xa5f82ae9c15eed94 -.dword 0x8c535812912067ed -.dword 0xed1c856b3249feda -.dword 0x021a19fdd46dd1af -.dword 0x46526c8f87c1e3e0 -.dword 0x26148670d6c1faa8 -.dword 0x3826d5f89e5edd60 -.dword 0xfff326984515a57a -.dword 0x542dea403179091b -.dword 0xee3419c756acb579 -.dword 0xeb6783b778d2f47a -.dword 0x7cdc73d5a9558c02 -.dword 0xcad5f565a2e757c6 -.dword 0x9613e1d46be9f25a -.dword 0xc251e7f871e74119 -.dword 0x7b0e3d3033c15873 -.dword 0x7596449ed45da4f5 -.dword 0x3a2d5561f7413c85 -.dword 0xb1020d2ee6f468bf -.dword 0x906d4ed61d229cf2 -.dword 0x63b72c581a672e24 -.dword 0x6ef19578c5e90af3 -.dword 0xcaa62ccc8ea3820c -.dword 0x0be3965c02577d4c -.dword 0x573241381cb3c21f -.dword 0xdba19ff0635b38f7 -.dword 0xae22a53d60c35c4e -.dword 0xfcfff653d932cc5c -.dword 0x8e876223493c4bc0 -.dword 0xf778717da9b71268 -.dword 0xcc10eb327f27bb7a -.dword 0x3bbbfa1370d59eac -.dword 0xb00cfb887fb37855 -.dword 0x8dcc327d4cf3cebc -.dword 0x18ea91cb25544747 -.dword 0x79135b54ec30cbe1 -.dword 0xb8c320d1b0b830bd -.dword 0x5e26f38963d603ee -.dword 0xa57c21984a802214 -.dword 0x56c31bed0991380d -.dword 0xaebecd8af5dbfabb -.dword 0xb9c96fcba12d582e -.dword 0x3c2a4666113afe9a -.dword 0x7ca97f8b70b28400 -.dword 0xfcc01491ad43fff1 -.dword 0x2e2c8956fd36ab99 -.dword 0x7bd5f6186e186971 -.dword 0xef013cf871347b42 -.dword 0x45d2f6f40013d94f -.dword 0xc21fda75983784b6 -.dword 0x5d58b1ab80a5f84e -.dword 0x6c526f250eaa183b -.dword 0xfbfce093eb451263 -.dword 0xd6289f0ca4b4103c -.dword 0x9dae7aae5dd38ab9 -.dword 0x18072f34eb90bbea -.dword 0x8dfc1638d2d57531 -.dword 0xc4bf4a491f00c3ea -.dword 0xcfa5b028b36d10a5 -.dword 0xcb589179966abae1 -.dword 0x3fee006e8a934cde -.dword 0x0673ce0285a6b16e -.dword 0xd8a0954e732f8359 -.dword 0x5ab2c14508272489 -.dword 0x71a16789c01d67ea -.dword 0xe122869d41edfedb -.dword 0x71939e3c703d01e3 -.dword 0x24e76297c7c95b40 -.dword 0xcf3e6aeeaf3a3902 -.dword 0x56b9547673e04d2a -.dword 0x7c81535d0d4c0f99 -.dword 0xe90ba3dd5f640761 -.dword 0xa175dcf5a4fd7e57 -.dword 0x9d5c06cfebb984dd -.dword 0xae4439dbc850df7b -.dword 0x93b747cac1a8504f -.dword 0x61e8e343fe1eb5a1 -.dword 0xf8c7e06e8518ccd5 -.dword 0xbcc8a88a5996bfae -.dword 0x05d70a25f878ec64 -.dword 0x5f93154703baa147 -.dword 0x226a5619ee8432db -.dword 0x1249aa4edb1aa1c0 -.dword 0xf4f400237924f937 -.dword 0x8609a0c2c11ecf8a -.dword 0x9076d45cb628827e -.dword 0xa79840b265aaad59 -.dword 0xedf9f5120a96d6b6 -.dword 0x80204b744a68b27b -.dword 0x090553839e07e8cb -.dword 0x56b66d523fcb5744 -.dword 0xb18136e5cec921b7 -.dword 0x93a2b6c5d6644eee -.dword 0x94a700c799247ea8 -.dword 0xb4a0594ebe15ce25 -.dword 0xfee39ddd4d59fec0 -.dword 0xa1438b239d0b8256 -.dword 0xa011212a64c360a5 -.dword 0x8a430fd7f7e81f11 -.dword 0x93000f285d5c275b -.dword 0xdb4084d77cedcde1 -.dword 0x7d40e3e3c409b338 -.dword 0xe014804ac83b4ad0 -.dword 0x33f78836423fe2c6 -.dword 0xdea3dd284870e458 -.dword 0xeb8fbb63f6318e3d -.dword 0x887f70bf64c3ebb8 -.dword 0x8d9aefef0ab2955b -.dword 0x853e3cb7a4cdbd9e -.dword 0x632ca02afdc5439b -.dword 0x4b09d69fa9c39830 -.dword 0x2480eedf8cfe2f3e -.dword 0x148fe55d72af9310 -.dword 0xf8963c678e4dccbd -.dword 0x169a553ebab94732 -.dword 0x491c8aad1f125427 -.dword 0x17acdcdccd388ffe -.dword 0xf4201c6208d77314 -.dword 0xa2baecf3375c0383 -.dword 0xe4bf29c104a2d7ca -.dword 0xad0c44345a930221 -.dword 0x39cc2276a17918c9 -.dword 0x9e580110630aa513 -.dword 0x51df51092b57f5f8 -.dword 0xa5ca48eccea4b291 -.dword 0x0877f87e436b6429 -.dword 0x4e6cd048cfd8b2f2 -.dword 0x112d7f320217cb0e -.dword 0x80f9458bdef11b2d -.dword 0xef9b501b6d2120e0 -.dword 0x6b29ee532e2be4c6 -.dword 0x8c9dda83c063991b -.dword 0xc06b7bf41c1c7973 -.dword 0x22c9f244ffaf7712 -.dword 0xfe319742deb558c2 -.dword 0xa65614e6e7abb565 -.dword 0xc082a7db610cc672 -.dword 0xac777109946bf0bf -.dword 0x87a0cead46b598cd -.dword 0xbbfd97af7e77d442 -.dword 0x119b062247bd6fe2 -.dword 0x0817d1e1619caaa7 -.dword 0x466d557bfc82f576 -.dword 0x0d756866b10cef65 -.dword 0x3377d25f5b602210 -.dword 0x49ef62c0c3a351f2 -.dword 0xdc13417ba8dfe404 -.dword 0x9cbf2b9215e664a8 -.dword 0xd04aa48202b242d3 -.dword 0xa27056e6f0062018 -.dword 0x515b847ae6fe3e8a -.dword 0x6018b88554f9a9b7 -.dword 0x55530372f6b1f737 -.dword 0x5ccee3264132d831 -.dword 0x5acca60075a06a15 -.dword 0xdf8760ab5560c2c5 -.dword 0x325a1c1cc30a7aad -.dword 0x2d14f45867b8edb7 -.dword 0x4d6ca62095c25b6b -.dword 0x6ad00492db4f52a6 -.dword 0xc920c0a4a5fc7d8a -.dword 0xfedfd392c88d0511 -.dword 0x81e9a705547fa774 -.dword 0xe1096a4656dcf8d2 -.dword 0xec24d90194f04111 -.dword 0xe044d3b6f5fff8e3 -.dword 0xe34aaf2d287d0fb5 -.dword 0x1781f4a22054725e -.dword 0x37ddaccfcbfe83fa -.dword 0x18de2fe5c717edb4 -.dword 0xb4097164318a3ee6 -.dword 0x0048b02397fa7265 -.dword 0x14287bac31b18ecf -.dword 0x2310f448e174aac3 -.dword 0xe27a0791bcce90d6 -.dword 0x2559a1758910721a -.dword 0xdb4925cc2fb7fd3c -.dword 0xbd810ffbbf14cb92 -.dword 0x9bafc9e81f07ac83 -.dword 0x690435240b02682d -.dword 0x37abc6eac6d4561c -.dword 0x9e7554b7a9d4894f -.dword 0x0c3400e6b3687ba8 -.dword 0x4956c22b505a32a5 -.dword 0xd14d200aed16fe34 -.dword 0xc8d915dfcba2b02c -.dword 0xb9bf103eff503e99 -.dword 0x82cd4c7f97d327b9 -.dword 0xbb1118c78feeb40c -.dword 0xdcdb4a96d968b905 -.dword 0x52cef6e4800d3f6d -.dword 0x67a82e9054b077a8 -.dword 0x2c43bef025e774fd -.dword 0x414b25a29e03b8b2 -.dword 0x5607aa29a82b4a67 -.dword 0x837031a347896520 -.dword 0x3d4b04f20c35381f -.dword 0xff30a8807131fac3 -.dword 0x2e46086005df44aa -.dword 0x4b5f4191e0531a0d -.dword 0x646cb30077db332e -.dword 0x193840d73e89abd6 -.dword 0xa560755c1ae31154 -.dword 0xfd9325f311dfbfc0 -.dword 0xb4099e4aba005155 -.dword 0x603c1e97ed75f5fb -.dword 0xa32eb5037de21187 -.dword 0xa3601378ecc460be -.dword 0x117efd2a316c8741 -.dword 0x1f28fb3260fb66d4 -.dword 0x7ad7221fefdf563d -.dword 0x814186998ac53059 -.dword 0x14bb1690c8a8f0f3 -.dword 0xd433d8a8ef12c39b -.dword 0x2304b424e111b345 -.dword 0x2fa30d1f81ff86ee -.dword 0xf1eef661f0fc4a5d -.dword 0xe8524c54e80210da -.dword 0x1a98b74fb1645070 -.dword 0xefeae434b6af7877 -.dword 0x7b74eb6a0dd73e95 -.dword 0x035166336652a678 -.dword 0x3d79c5889d1cc226 -.dword 0xf7b90a220d2dcea6 -.dword 0x8f9b64341a370d01 -.dword 0xbd8874b555ef508d -.dword 0xa3af58619dc62ae3 -.dword 0xd06c8f2392d1d885 -.dword 0xd1e577f734a2e3c3 -.dword 0x80e2a1ba1c5c74c7 -.dword 0x0dfe4153ef587c47 -.dword 0x28e8722cc32808a0 -.dword 0x4579899d1ba292ac -.dword 0x4c5581d24c1d63f9 -.dword 0x8123a5f0716c546a -.dword 0xc7a00cafed7ac97e -.dword 0xfbb1350df8dc12ad -.dword 0xbd3b7a52e7e4160a -.dword 0x0ddf4ae3bee8ff39 -.dword 0x6cf3a4f5b947b7fe -.dword 0x59a23fe2ae9e344c -.dword 0x31d1797ccc460735 -.dword 0x04e268f33414c51d -.dword 0x8a27ca7de3cafb25 -.dword 0x902251d390f2327f -.dword 0x1cd34ab4beed6482 -.dword 0x495f06dc36782aef -.dword 0x795a8b609a2445fd -.dword 0xc1b825e6836b92c4 -.dword 0x0e1a2383e52492cb -.dword 0x998add1086639d56 -.dword 0x5cd6aad6998dfa19 -.dword 0xacdeea92ebbc0a51 -.dword 0xd408d56a29dd9471 -.dword 0x9b30238ac93034d0 -.dword 0x785da76e162f77e1 -.dword 0x552492bb2f106fcf -.dword 0x4d4a6c86bc43b3d8 -.dword 0x2cc485cfa0794e48 -.dword 0x95a3b0103b8bac8f -.dword 0xd4b49b2f19e4e14e -.dword 0xbb7b3bca179b150c -.dword 0xc96d069bb49ec1e6 -.dword 0xe1e692c503de54e3 -.dword 0x3f7f1d424719327a -.dword 0xdfa767f6ee64c668 -.dword 0x661496234a3abf6d -.dword 0xc8e9d8a0aec8db34 -.dword 0xf49f59ca2a4c84e9 -.dword 0xc517f6c524b96fd3 -.dword 0x726efd69ba19139a -.dword 0x9b7086f1c63ba6c5 -.dword 0xba5adb439ee0bc4e -.dword 0xdc39089be5622d24 -.dword 0xe2b9f5f102f3375a -.dword 0x42d72801b1ddf81e -.dword 0xdad49dc6fa3ad23b -.dword 0x4a3cf79b0474c719 -.dword 0x95ecefb69332b84e -.dword 0x0c9a9302f1ab7c39 -.dword 0xd6d3db3ad97b301f -.dword 0x629fe6ea71ca8385 -.dword 0x3757ddc82862944b -.dword 0x761aa77841e6f4d5 -.dword 0x8fe2f219dc4395d9 -.dword 0xb3ec7e7214aa35fd -.dword 0x426b67cb8da5fd30 -.dword 0x19628287367eda83 -.dword 0xcc597ff850751efe -.dword 0x0f6daa3d8ef06181 -.dword 0x07477f4ab00e026a -.dword 0x68e5900727532753 -.dword 0x70da06bfa0e5fdc1 -.dword 0x64a887f47d8510b7 -.dword 0x0d3801990679d3c7 -.dword 0xe333df12617136c7 -.dword 0x04eacfcd677bc1c1 -.dword 0x50205548f715c8a1 -.dword 0x80612ad85c06e72d -.dword 0x1fd9639ca005395d -.dword 0xb2272d5699b6f0c9 -.dword 0x9adac9518046ea04 -.dword 0x6323e9d7f263c268 -.dword 0xdc2bbdfd69eab8ba -.dword 0x68a4a6baf9903c3d -.dword 0xfacc9cc24f2d77c1 -.dword 0x44979588e33c8b0a -.dword 0x1b0f16c31c3f5c59 -.dword 0xebd09baf32f08caf -.dword 0xcdc55adcf3887d5d -.dword 0x62ee63adbed5f546 -.dword 0xaca6ed251f449841 -.dword 0x8ca11f31da275e0f -.dword 0x55490120acbfcef1 -.dword 0x27e588feb912849e -.dword 0x94f450b61a75fcfa -.dword 0x1ffd94b52468e02f -.dword 0x1b93a54a62f8a4dd -.dword 0x276ebbcbb5aff48e -.dword 0x1d0b1f7409886035 -.dword 0x423f3e00adbabfaf -.dword 0x5390cc6233843675 -.dword 0x88d3c3970fe01166 -.dword 0x1bbf6a55e631e27c -.dword 0x28f67e6c97f14fa8 -.dword 0x5220d86a76ca50b9 -.dword 0x120f3ba56c9986f7 -.dword 0xddec82736bcf2cfd -.dword 0xd500c0d73204ea12 -.dword 0xcbbedaf023302cbc -.dword 0x7d6a73355e2c1a60 -.dword 0x39c3dc2bc0adbb18 -.dword 0x3eea758cf4aea929 -.dword 0x5fcd17f772a71793 -.dword 0x74e7b82dddbe445f -.dword 0xd6ffb8e0495ffbbd -.dword 0x7fb1f026d1efea29 -.dword 0xf3f4532fb5298418 -.dword 0xa10de8629019d954 -.dword 0x6a4e98b2e9f0fda5 -.dword 0xbd3bc6007903a6d1 -.dword 0x0d3ccea2f5a212a7 -.dword 0xa2a25a8749b60d46 -.dword 0x7b2319b9461cbe32 -.dword 0x5753fed9f2cd9e4a -.dword 0x2832c59269eedcd9 -.dword 0xfe239648c403c9f6 -.dword 0xde51934b78c7599e -.dword 0x7a5f85bad8d7adc5 -.dword 0xcc54a8793e5f6828 -.dword 0xe0a3acf4cc4596c5 -.dword 0x85f92e2749ad30bd -.dword 0x172b000413b89ded -.dword 0x49ab81990deca5d5 -.dword 0xcc9ce404cbdfb5ea -.dword 0x879e0818a73eeec9 -.dword 0x7b0926903cf28368 -.dword 0x5dc2df2901127d6a -.dword 0xa474429d1c6dfb12 -.dword 0x5ddeb6541c263cb6 -.dword 0x67381aed9166c17b -.dword 0xf962df35cc452dc6 -.dword 0x3a18aec298e7577a -.dword 0xb5d8c0b2654f1387 -.dword 0x8c93fc424a21d0e0 -.dword 0xc42a99051ffd97a5 -.dword 0x78ae7d65f8c77395 -.dword 0x1c207e71858fc00f -.dword 0xe4ba7e06c7a8ac64 -.dword 0xc664881596ae314c -.dword 0xeafbb588c6045e14 -.dword 0x15b284f014f68d25 -.dword 0x69e851ffa23ad595 -.dword 0x8f24d3a2dc61c769 -.dword 0x11171bacd8d7f1ca -.dword 0xe80cddd48fec0e6c -.dword 0x4d51994b9c4658e3 -.dword 0xec8eecce6e794ad5 -.dword 0x66cfd2837b20d0f4 -.dword 0x18967868cfe2e062 -.dword 0x3f2e9bd01387704c -.dword 0x8fafb1c2b3f6c81c -.dword 0xf5ef4dababc9487b -.dword 0x28409f95d9a6c6ee -.dword 0xbe5864b1bb0e9bbd -.dword 0xfdac50ad4af18d54 -.dword 0x9d40d8d5ad1894f3 -.dword 0x7a960127dc004190 -.dword 0x9ea36b08cb0231e0 -.dword 0x2d4253b501a27cf0 -.dword 0xb6c05cb9112b6c9a -.dword 0x69878b5716b9d6b2 -.dword 0x9bb667bd5a925b9f -.dword 0x6b8b039adc597d8c -.dword 0xab459eaf8c017683 -.dword 0x90c01c071e0d8651 -.dword 0x37bdc7e8e0196e96 -.dword 0x8d3d3cd6cf9e1a66 -.dword 0x70f9f0a86803d6eb -.dword 0x927a5dff36fcdbfc -.dword 0x2b0bc705e8dc55a3 -.dword 0x7b7d437559100e76 -.dword 0xc639d2a648f5ddbe -.dword 0x4b7c940a5b71675a -.dword 0x117c8173883445ec -.dword 0xa85ff7400c4396c8 -.dword 0x0afef2f4266a32be -.dword 0x29253a6ed8069731 -.dword 0x745e3c628275e269 -.dword 0x8c006ce1b27ab075 -.dword 0x22ac7ae7414169d5 -.dword 0x90122c0adb5df078 -.dword 0xecad38bdc971f5cb -.dword 0x684aa4d7a0f0ead7 -.dword 0xc60725eada751d31 -.dword 0x624b563db6e9e77c -.dword 0xdd239d02c504acec -.dword 0x23ca59b0bf4d996e -.dword 0x87429c7cb2cc3f86 -.dword 0xf6d5bf72cfec6cf6 -.dword 0x5be795b1c1645829 -.dword 0x38513d6d2e47034a -.dword 0x5f8fb44706bee4bc -.dword 0x2deb3c2993680a6f -.dword 0x9ce74ebd0576e3ec -.dword 0x55e5b8cef5db1140 -.dword 0x9463ad06ac6aa962 -.dword 0x6231d9baf58c4866 -.dword 0xc44b23b7d7aa3526 -.dword 0x7a863357e2e67431 -.dword 0x6204051a76663935 -.dword 0x5e68e8abd4e66056 -.dword 0x1674c8905ed01088 -.dword 0xa3876553b5811d8c -.dword 0x9af48d417cd17921 -.dword 0xc8885da53b9c89f3 -.dword 0x9acfffb357342b08 -.dword 0x4941fb1cddde8139 -.dword 0x87ad1a5fb40f5100 -.dword 0x42863d63de0a454c -.dword 0x3935acdd7121cb5f -.dword 0x3049a38bb7cd77c1 -.dword 0x6b6d986bc697ab30 -.dword 0xc641d1054dba4a19 -.dword 0xf9b9d535d5928d3a -.dword 0x9bd95eeced8772e0 -.dword 0x4d53467a8b71666f -.dword 0x81a31369cd6dde22 -.dword 0x4e8c2a858163a897 -.dword 0x1e4dbffaf383fdfb -.dword 0xe554ce62d95ebab8 -.dword 0xecfb337de9314d20 -.dword 0x644ad9615ceb8997 -.dword 0x958845dd2f4f346e -.dword 0x85521272f26e307a -.dword 0x936ff317e4ed8b30 -.dword 0xea4138dacf0010ed -.dword 0xf3a9deebddaa8893 -.dword 0x4a908fe84b604787 -.dword 0x6fd457a182fab558 -.dword 0x595676225861bc0b -.dword 0xc53bbdfea4a4cd01 -.dword 0x1d4ac163c5cb96be -.dword 0x1a428bcfa9d34345 -.dword 0x984f206c1414543a -.dword 0x45e53ab1970eab1b -.dword 0xf565012900d97e85 -.dword 0xe8eae36adf913aaa -.dword 0x15d2ac77157e7192 -.dword 0xf8b99a955ed50bf5 -.dword 0xb13edcd5853790e2 -.dword 0x209eed00c55dec12 -.dword 0x03ef11c0e36447bd -.dword 0x25f3e9ffd2fd0428 -.dword 0x581f2ac2db654f03 -.dword 0x2d0a99ecec6879d9 -.dword 0x29467a9bb47e2714 -.dword 0x4c3cf99c77253e39 -.dword 0x3d28a2333484e970 -.dword 0x09fedd4070f5594e -.dword 0xf936c8f2a480f353 -.dword 0x801249627d441c43 -.dword 0x186526802f302018 -.dword 0x8d6a68689d1e5225 -.dword 0x09d4577dd6a0f1d3 -.dword 0x3ca8a6ba197fe883 -.dword 0x37f2cda62bf68c16 -.dword 0xcb42b5c2e3e10589 -.dword 0x7e3843799422bdbf -.dword 0xac3f8f4a82a6c50d -.dword 0xc04766aef31d7b49 -.dword 0xfc59e29f46e8ac3e -.dword 0x320ea52b19746d9e -.dword 0xbfe16a69e2011182 -.dword 0x01db012547254846 -.dword 0x3a1e11662abf7c14 -.dword 0x2be3db81ea860ab4 -.dword 0x1c2b87ae16717b2e -.dword 0xe3c9362f9b8aae8a -.dword 0x2c94bed85d344404 -.dword 0x50b073af62df985e -.dword 0x1e219814ed09ee6f -.dword 0x698f768f99719dbb -.dword 0x8b207f0effd02453 -.dword 0xc2cc674487edd4ec -.dword 0xca5114e28af1a08f -.dword 0x777b6a42ce3645ff -.dword 0xecc660008ad66580 -.dword 0x1b7e0c78e5588dfc -.dword 0x211e5d62175206e1 -.dword 0x07fbdd70d088a5af -.dword 0x1649e698055956c8 -.dword 0xa4dce5f30e7b7cc3 -.dword 0x221fa74456134615 -.dword 0x7f755e92d5f5ea26 -.dword 0x6517fedb3996c3c1 -.dword 0xa1f9f9018b582710 -.dword 0xc6215439b5bfcee4 -.dword 0xd7db0c6d08f32e15 -.dword 0xed54f1380ec8196c -.dword 0x9127a1ee0f4c3d61 -.dword 0xba80add1a2698c3c -.dword 0x97b23e3cd9993e6a -.dword 0x92375942349dd438 -.dword 0x43fb55412a64cc28 -.dword 0x203cc768e43bbf01 -.dword 0x383243e6d422151a -.dword 0x8e9086e23dcd0bf8 -.dword 0x225133bbc6e0e842 -.dword 0x9a09c0571f8abf13 -.dword 0x43fab64c522ffd69 -.dword 0x348b87eae833bd8a -.dword 0x87b6502ea524742a -.dword 0x6f6c43582976f619 -.dword 0xde5c45dd72512d4e -.dword 0x33c48617dec62c91 -.dword 0x19b553ce132da509 -.dword 0x10bc21bd753bee24 -.dword 0xef1904b410026377 -.dword 0x1799839c56b2b8b6 -.dword 0xcd2009691e913c03 -.dword 0x38ccf2a57fd56803 -.dword 0xc80f55263a7bbb64 -.dword 0x62739df1dbd08a05 -.dword 0xe977c5ed2b6c71a9 -.dword 0x4ba28f918cc16a48 -.dword 0x0a9f00926daccf23 -.dword 0x5ff895c4b55b02d8 -.dword 0x6ddaafc1d5f36efb -.dword 0x24e1a7f101850b85 -.dword 0xb94fd0f161f9b482 -.dword 0x39769a68c9d8bb2f -.dword 0x8b1cd27b38018c5f -.dword 0xbf99d8afcff13454 -.dword 0xa49af8b2b67cee4f -.dword 0x5c6ebfdae95b2d14 -.dword 0x6119e63eca1c1d47 -.dword 0xc05399e1be6c845e -.dword 0x451c3163a772c501 -.dword 0xe5f9ebca7f39a120 -.dword 0xb95d57e06907064a -.dword 0x6484dfd0fe99347b -.dword 0xcbd322fb55041412 -.dword 0xa341a179f231b35e -.dword 0xbfb9b2a4a4c417bf -.dword 0x3b70e90b339b8bfc -.dword 0xc535cfea122d2872 -.dword 0xd996751b9fe7dac2 -.dword 0x17f843e23fa54eb0 -.dword 0xbd1e67890f3f351b -.dword 0xeceb1464bb88c5ee -.dword 0x829571b5d79dd9fe -.dword 0xbe604b43a6791da9 -.dword 0x286de5b0ff5c18ba -.dword 0x3b590cdd3ee14ed6 -.dword 0xb9237501000269ec -.dword 0x0a9ca6da87d8fb4d -.dword 0x9176db6b34b1d767 -.dword 0x58d36cd0b5740700 -.dword 0xf1b7ab7bac07994f -.dword 0x2b6d081b1039b0a5 -.dword 0xd14ed4de43869493 -.dword 0x50b2ffe3b729f5bc -.dword 0xaedc07374d16a39c -.dword 0x2e6c7b322479d856 -.dword 0x0d934a1d3e5351e1 -.dword 0x40c6eecfdf8c9468 -.dword 0x23553691bcb96dc3 -.dword 0x2004004f6be2a4dd -.dword 0x821a77130991c576 -.dword 0xa89a9bfe5afd356c -.dword 0xfeb8ee19f55c8afc -.dword 0x3351c85dac887b72 -.dword 0xa2f8ee4ed3483d24 -.dword 0xee7af5e9d178aa15 -.dword 0xfb8eb6e4e0bab503 -.dword 0xf945e3cea5cbaa66 -.dword 0xa10f09e2f43b1141 -.dword 0x86ca85417395ad1c -.dword 0x2eacb00c90e26bed -.dword 0x53749225842413e4 -.dword 0xeff170aced8940d7 -.dword 0xc8d5aa578ac0c62f -.dword 0xb5107452eeb253d9 -.dword 0x148e39d977f823a2 -.dword 0xdf89dc8a109a7ea5 -.dword 0xb7fbebd522426dbe -.dword 0x831362a9e3c3ef72 -.dword 0xaa724adb1d057394 -.dword 0x792353733b290eae -.dword 0xcb2e14d2beae7763 -.dword 0xadd9a0e1e5ed2ac0 -.dword 0x6c36bbc71f390480 -.dword 0x28e3d3aef2d93c0d -.dword 0x00f4be72121ed65a -.dword 0x79f06af532a9e2df -.dword 0x37b431397450e615 -.dword 0x95b36870930c928f -.dword 0x79a016934e16e94f -.dword 0xd534586619738f19 -.dword 0x7eaff109bd075e07 -.dword 0xd4ddb6c783c54ad6 -.dword 0x38c81f40139c767c -.dword 0xb1d1fcadd847889e -.dword 0x90365e06772bebe2 -.dword 0xaab8884645846c23 -.dword 0xbd362a080267553a -.dword 0x008ea6b8ef840306 -.dword 0x90ee4e6e06efa3f6 -.dword 0xff9577096464e82b -.dword 0x88493cf690979b3d -.dword 0x2eacb6c6b66c8c09 -.dword 0x29a2fdd593e99deb -.dword 0x41bb516a2d63adf2 -.dword 0x18c578e368a022de -.dword 0xc288c4b519b5cb92 -.dword 0x8a5175fdbeb47cff -.dword 0x0b642b5d11c8743a -.dword 0x636c3b7a4479f572 -.dword 0xc698638aeadc4b95 -.dword 0xc579e2ca05cc7f3b -.dword 0x8b53b51708ac49b2 -.dword 0xd82d5d2274b06c52 -.dword 0x7c2b06da9459ec88 -.dword 0x360f8de2fba2bda1 -.dword 0xcdd7c44b853ba09d -.dword 0xda752707a2121243 -.dword 0x9f7b961acda8cd6c -.dword 0xaeea11a4b3bf3106 -.dword 0x754cd8425b493f51 -.dword 0x628e734d4c97f51f -.dword 0x8f8929aa237338b5 -.dword 0x7f02e3a6310bd468 -.dword 0x8b11c9d360ff1d0f -.dword 0x9f3552be33b517b9 -.dword 0xd0de4957b5f882b5 -.dword 0x52b25ffb0bf2d4f1 -.dword 0x2687d313c050f27e -.dword 0x4d1da70bc95a004e -.dword 0x9fbd968b3858ca8b -.dword 0x0498efaf01e57191 -.dword 0x2057d0ed77e6d1c8 -.dword 0x7217df1d92d23f90 -.dword 0xf822574297625473 -.dword 0x0785384fab0f2f59 -.dword 0x591e63792722f3d4 -.dword 0x259d41183dd2dab3 -.dword 0xa61838fe01202f69 -.dword 0xf84d3a7a3f697c9d -.dword 0xd1176be2e15160f3 -.dword 0x94b078d48a756eeb -.dword 0xacc3920b92fcac3a -.dword 0xf6b96adccca5a91f -.dword 0x0b292ea2856e7852 -.dword 0xa2339a4ba2ce81e8 -.dword 0xc8ec8162107775df -.dword 0xed86318693ecc50b -.dword 0x6b4e68d7d2feed61 -.dword 0xda6690075b31c8c8 -.dword 0xbf90810fcef0d988 -.dword 0x2883901539aac63c -.dword 0x79359bc3fcfb1e9a -.dword 0x9fe394ff9de6cfbf -.dword 0x49ed5fccf0337105 -.dword 0x7704d2f4e691c9ca -.dword 0xa5043d1996363ca9 -.dword 0x96bb62da9093bea4 -.dword 0xea17846e33a72d79 -.dword 0xe8f5ba65923d8cb1 -.dword 0x6db6c410f9e3011f -.dword 0xe6f671a9b9cd14f4 -.dword 0x67faf21753dd4296 -.dword 0x33e1f0e09113e131 -.dword 0xf686aed66c53a4e8 -.dword 0x72f6202e4139685d -.dword 0xbb918067ed20dbc3 -.dword 0xd0f30482a8698b6f -.dword 0xbf4bffd15b99dd74 -.dword 0x22aa3cbdd270db29 -.dword 0x30008534291e07ab -.dword 0x9e94ab4001ef3b06 -.dword 0x24a128cf0e5e2d0c -.dword 0x748833074d7c50ca -.dword 0x03231f25f217b5a0 -.dword 0xd664f9e8e8dc242f -.dword 0x33e448515f625ce1 -.dword 0xc50b0b744d49466f -.dword 0x199c09bc58e216d8 -.dword 0x49f1322aa91fa151 -.dword 0x48e9925a0fc7a8fb -.dword 0x97c7e965c272e744 -.dword 0x02d5e72fb98b2b1b -.dword 0x82831995a9005fcf -.dword 0xe7bf70ba8d7c7b71 -.dword 0xc8a74ed2ccde8661 -.dword 0x18c1f11163a22806 -.dword 0x8dc97d69ac7bd578 -.dword 0xee99529c38760519 -.dword 0x8fecfc6e46033f2b -.dword 0x3fac5f2c5cbf7946 -.dword 0xa4cf2fa0e0d271c5 -.dword 0x00b145b1ef0adea8 -.dword 0x0ed88f52130ee40b -.dword 0x6efb84d7dc6774fe -.dword 0xe94725557652186b -.dword 0x33808d9239f5858a -.dword 0x753d1d2c7f57f80f -.dword 0xfc8446b6c2d4fcb0 -.dword 0x3265c7e9a3cd62fc -.dword 0x66307983c15a2a82 -.dword 0xce2d7dc8199d6716 -.dword 0x5b76914cd6c63897 -.dword 0x09e852612165ba37 -.dword 0x44774f8e2183e5b6 -.dword 0xefd1e03ab171c743 -.dword 0xd95ba47a449c07c3 -.dword 0x2b0a6fdacfa27e9d -.dword 0xe84ac7ab8580cb6f -.dword 0x8e0fd76710f9be48 -.dword 0x2970ab4e40c429e5 -.dword 0x4d0c8b80fe7a0916 -.dword 0xc147cf8c2564ddbb -.dword 0xcf59c67292ecee81 -.dword 0x3b5fa7e265b05821 -.dword 0x4f33a5f847a6c5ef -.dword 0x9ea726dc7b959de7 -.dword 0x6a0374dfd597dac6 -.dword 0xe836594a408a0b64 -.dword 0xe21974c3c639b372 -.dword 0xb2a75c9d941796b8 -.dword 0xdfc363d160e6f37e -.dword 0x6b0252f62e409fe7 -.dword 0x2bafbde1e8a88d0c -.dword 0xb28b308493af8dee -.dword 0xe14c98bd91d1c721 -.dword 0xe3a56b52ee4389d4 -.dword 0x002943d20b7cf55d -.dword 0xdef46ba9e2a8c544 -.dword 0x99ce6750013d31c6 -.dword 0x5acf3da393c5372a -.dword 0x00d9a4554a4c31be -.dword 0x3f47ba8d3ae64466 -.dword 0x468b6263515ff8fd -.dword 0x16f7e9fb5f1f6233 -.dword 0x18c1e1163fad7c07 -.dword 0xca47bef5160ea4ce -.dword 0x68e8c53e4149336d -.dword 0x65bb522353167a31 -.dword 0x3b99aad8c775d762 -.dword 0x18aaec71acf2a6f5 -.dword 0xbda7f0b9fd2b9b4a -.dword 0xd3261f5cac743657 -.dword 0x3d3fd25a5064c57a -.dword 0x174b8b5ba4a6b9ae -.dword 0xe1c9970655691268 -.dword 0x0aa1cd57ab023484 -.dword 0x3e166fd8a69b1732 -.dword 0x89ac82a3ffcd0ce8 -.dword 0x9623fcea635bde46 -.dword 0xaee39ebf6a71bc84 -.dword 0x9e42104789661aa2 -.dword 0xa3be25614ef86906 -.dword 0x524b96360a6a1ef0 -.dword 0x3eeb6ddbddce4456 -.dword 0x32a2f9d13a46aa31 -.dword 0x17adfb4132b35fba -.dword 0x2a3357daa0b057d2 -.dword 0xe924b1a228c26199 -.dword 0x5193d3188ffb4e05 -.dword 0x78bf6db4d7902b2c -.dword 0x116f2bb0802be2bf -.dword 0x917b5fb8825b775c -.dword 0x75779b85a559b938 -.dword 0xe1c27d10f9038500 -.dword 0x327904a87983bd4d -.dword 0x48049a4bd5e1eec5 -.dword 0x0c70c1f56c05190b -.dword 0x891f1e982a0e9307 -.dword 0x62412a70efed93a5 -.dword 0x245e5d8179404382 -.dword 0xdff3816256a1327a -.dword 0x28169f910a355ffc -.dword 0xb71adaf71da801ce -.dword 0xa44cb92bc4418cba -.dword 0x3f586e5544f1ec73 -.dword 0x77181f14272b673a -.dword 0x653cf1e6ace2c5b6 -.dword 0xe56afb66c4ac90e4 -.dword 0x6259ae9c3a7264d9 -.dword 0xf16baff5f58aaf93 -.dword 0xc87052a672261a61 -.dword 0x483943fe356e56a2 -.dword 0x4c8956c18d0cef43 -.dword 0xd3b081b76d4a5046 -.dword 0x49d597f126537b1f -.dword 0x9e75ccb801d732d1 -.dword 0x2975e81b4910b140 -.dword 0x02fab5fde56499c3 -.dword 0x6ab87468b51824a3 -.dword 0xfce251b1c9396eb1 -.dword 0xac3adbaa07ff5db8 -.dword 0x42fc94c9997710ae -.dword 0xafa6fdbb8228a969 -.dword 0x69a1ff94c8a617df -.dword 0x6920d69a48561d9f -.dword 0x4a0e202ef70d3460 -.dword 0xa90b2a4493914b56 -.dword 0x437ef8a0594d305a -.dword 0x77e06563a7e6e742 -.dword 0xcf9f48bb0bf280f5 -.dword 0xd5846586ad07126f -.dword 0x380e4ede3f6c35e1 -.dword 0xc50c671aa424e343 -.dword 0x35245741ca74551e -.dword 0x767091eec15c451b -.dword 0xa18b35d5fad885ec -.dword 0x4a02405e6941a7e6 -.dword 0x958c8c346d2b84a1 -.dword 0x6053bfb9372e2a66 -.dword 0xad82694f22251cae -.dword 0xe96f5c66f21a4bcc -.dword 0x69e56b324ec2e2a4 -.dword 0x5a333c40510e3d33 -.dword 0xae768531c347e731 -.dword 0xb2d9396f16374faf -.dword 0xac7e62ed3dc054e3 -.dword 0xe037b7ab35bfa4aa -.dword 0xd39b0c38e223aad3 -.dword 0x1957389799196fa3 -.dword 0x9aac125b4823b076 -.dword 0x1b9baffcf1454465 -.dword 0x12be04baf3a4e022 -.dword 0x8a1eb1a6c6ccff45 -.dword 0x92b7bfb0f8a92626 -.dword 0x14f40d40d4b516f2 -.dword 0x867daff89a12fed8 -.dword 0x78d8e259408311ff -.dword 0xbeceb86840088eae -.dword 0x11dc3b2da5af7c35 -.dword 0x9e09cc0487c0d425 -.dword 0x60294ed5cbe33ed8 -.dword 0x1a736baf041a2f55 -.dword 0x582d8634edf79d15 -.dword 0x872e089b219beeed -.dword 0xc6be90dc64a951d7 -.dword 0x6865b0d7e76fd88b -.dword 0x401ef2888e0f5137 -.dword 0xf7026846c7d42500 -.dword 0x6b983d46d5f0d7d7 -.dword 0x8168cc21627b8905 -.dword 0xc197a1578b58805b -.dword 0x7fa9e7cfc8e13794 -.dword 0xc1927249824bf940 -.dword 0x1f8b9cb134bd1c82 -.dword 0xf71525b2135488c6 -.dword 0xc9e58311fe995872 -.dword 0x9eaca9c5ef307e95 -.dword 0xfa2e4eb1d976b923 -.dword 0xd9666d8d40d1306b -.dword 0x76a43cebd9e8873f -.dword 0x1a97858e8ea89c84 -.dword 0xc001925e7b00acdb -.dword 0x95bca5853ca1627b -.dword 0x4b7aa404791b86cb -.dword 0xe5d596cbde599147 -.dword 0xd4c2e45c3637ff56 -.dword 0xa283fd4a402deaf5 -.dword 0x872125bedf105f08 -.dword 0xbb134cd81d22d9cd -.dword 0x87b9f053d351c318 -.dword 0x99893e3edf5de21e -.dword 0x32c559ebe1850af2 -.dword 0x0014dbe14cb3ccd6 -.dword 0xe7ef45adebab2c17 -.dword 0x2fd9cebd2156e9aa -.dword 0x9c131cc0775b467a -.dword 0xe33be88d8200cd06 -.dword 0x902536e0dc519e6c -.dword 0x4ae627a13d33d756 -.dword 0x2e2d9454a898bd94 -.dword 0x1f6c174b5885ede9 -.dword 0x60df3a5ffc8b5c1e -.dword 0x682a948622e03d82 -.dword 0xd9a726ef5520a950 -.dword 0xa8aefe0cc3453260 -.dword 0xcb270f473f4e764b -.dword 0xd41f70b838244e7e -.dword 0x168c5c85995cbffe -.dword 0xe4f1c187e7049a40 -.dword 0x0c614fa5bc37d085 -.dword 0xd971d30a8b89200f -.dword 0xcb16f07afd10ad33 -.dword 0x598a6da01f071660 -.dword 0xe977e7bb83a963f1 -.dword 0xae7704559e21b730 -.dword 0x59f209e3e4ee959a -.dword 0x57ed1acc51bcc638 -.dword 0xa13af7cd45760dd9 -.dword 0x9e66c13e94064ab2 -.dword 0xf44fcd50772d601f -.dword 0x90542340723bff0f -.dword 0xd87a009e07a70323 -.dword 0x64052687a862dba1 -.dword 0xd2c677e8114d49ac -.dword 0x9364033a6e63a66c -.dword 0x11e244acda8a6f09 -.dword 0x65735bba515e486a -.dword 0x3285e41bf25adca0 -.dword 0x762c076022b01a08 -.dword 0x4d4bd1902322f890 -.dword 0x5e8e04bd02669e94 -.dword 0x3cc74ff458b799ba -.dword 0x0ccf0322dc1f2783 -.dword 0x9435c64a8d69316d -.dword 0xd45d63a19a6bc295 -.dword 0x66878759a22f2882 -.dword 0xf5d84bd6f03f2eb4 -.dword 0xabe8586ae20af07c -.dword 0xeb9ee32132a21607 -.dword 0x90bd5ced6bbad599 -.dword 0x7d1a0fc9adfc737a -.dword 0x42afcf467f235a72 -.dword 0xa2138a8bcfd2c402 -.dword 0x06e3806b1572c0b0 -.dword 0xa6543376139f9c76 -.dword 0x6eabd760c2e0b9cf -.dword 0x9519319fe6c088d4 -.dword 0x1e458140cbfd5442 -.dword 0x1076d9bb4377bb6d -.dword 0x8ca97ea3de5b6555 -.dword 0x2794146f5acb8ef0 -.dword 0x5bc4ba7bdcda6394 -.dword 0xc21e45f7e433f365 -.dword 0xe311a83d09d66e99 -.dword 0xc20bec89bbacfeb5 -.dword 0x76cf2c6f54e6b7b1 -.dword 0x2b87e1b9afb880de -.dword 0xac116c1376f7adf7 -.dword 0xef52661f202e9207 -.dword 0x2c4d99b99b7a0647 -.dword 0x3a78b7bd024e12ad -.dword 0xc0411a865ca34fa5 -.dword 0x58825d2664a4f1ea -.dword 0xabfbd383edfdddd3 -.dword 0xe0313ccec4fcdb25 -.dword 0x56da739e6492a6c1 -.dword 0xd0f255957ec502a8 -.dword 0xa39a489d59608250 -.dword 0xde35b72f12af0baa -.dword 0x628e776e1b2e847b -.dword 0x69ca821e3da6a3ba -.dword 0x723f7e53a7246fff -.dword 0xa2c0201d037690c2 -.dword 0xc7e99bfc4c47aaab -.dword 0xaff3798881488913 -.dword 0x6549e87d1b643376 -.dword 0x8622c394a73c48ff -.dword 0x738011609247087f -.dword 0x6899a89ee0fcf423 -.dword 0x932589c4653c3f59 -.dword 0x6519bffdb84f956e -.dword 0xec526475e7742808 -.dword 0xe17f8daf3dbfb9fc -.dword 0x6e3ad04c33faa196 -.dword 0x90b3acce085d46d2 -.dword 0xff6ac59044544b7c -.dword 0x832a5b1558540abf -.dword 0x3341b5ea19a49528 -.dword 0xddd10a6660efdd1d -.dword 0x96d473e9db9d3499 -.dword 0xaf6ad3e0a9cf78c9 -.dword 0x6c5c4e2e0d9a1e3c -.dword 0x576855f7e050b5a6 -.dword 0x6978d800dadeaad7 -.dword 0x37e105e841287fa9 -.dword 0xaa6809abc946b1b6 -.dword 0x52e1389482574d3f -.dword 0xe7ebf5349af1b425 -.dword 0x22f2ca0539379a1b -.dword 0x0997481d8abc8570 -.dword 0x5d56bbfebd92d35c -.dword 0x5418d6dd147da46f -.dword 0x3c7effb1e876c9d1 -.dword 0x3aa02e46440cf8bf -.dword 0x9d7344fa107f0d34 -.dword 0xb3e752894e06840b -.dword 0xa3b2dbcb51e15ff1 -.dword 0xb9f46bb93195a0f9 -.dword 0xabd3aeb2d818636b -.dword 0x458bb7075f1e46f9 -.dword 0x47a835f874403dbb -.dword 0x54f8ce31004e6ef8 -.dword 0x2def9d6746335b15 -.dword 0xcc3d337501943efe -.dword 0x2064192f67d15eab -.dword 0xbf09a4f291a2e900 -.dword 0x4eaf5ec5f5342538 -.dword 0x55c84906d75fd678 -.dword 0xe6eb609c39acf740 -.dword 0x1381fdedcdcfed54 -.dword 0x17abd5bce54f318f -.dword 0x34f70a9bd3550149 -.dword 0x932165e35041a6e8 -.dword 0x7deb86c92f4fa173 -.dword 0xb6410f62794cf2aa -.dword 0x976e99aa97c614b2 -.dword 0xa7fa308a1cadc5c6 -.dword 0xc1a6f7a39854e34d -.dword 0x00eb04a1993430ad -.dword 0x2592e6c474b3ae34 -.dword 0xe0b41616b659408a -.dword 0x9d6134617412904d -.dword 0x20f73affc92298ab -.dword 0xf272dd72e9c95c7b -.dword 0xc298c4751d489c54 -.dword 0x02f31a81560de753 -.dword 0x5bdb4ed28e27124c -.dword 0xe7c1bcf9c45bbe75 -.dword 0xcb25f103c64f66a3 -.dword 0x1c9ccb88902167de -.dword 0x4255160f8bc6eb88 -.dword 0x0335e41abd7de751 -.dword 0x6d96984efd3ab625 -.dword 0x058b7421c708378a -.dword 0xc28fb7e1c37feb48 -.dword 0x13968a5ae337f6d7 -.dword 0x095a0afc199d9831 -.dword 0x757bef5c9bb9c39b -.dword 0x87df48a58befdd03 -.dword 0x21758128a64c3700 -.dword 0x5e1eca8ba0395c53 -.dword 0x77c4d13d6aa34cbf -.dword 0x3f9aa73e9f4fa708 -.dword 0x25682bb7be91c328 -.dword 0x8fe31b21c2c5474c -.dword 0xf96be69283107d60 -.dword 0x8361fdc30b8bbd0d -.dword 0x69c0aa2c56c23060 -.dword 0x0e38e6c11832e38f -.dword 0xfcfb723937d1790c -.dword 0x04a1f3daf62a4657 -.dword 0x3f3145f837a1b2bc -.dword 0x5881f724fb505baa -.dword 0x6c400f3113f42eaf -.dword 0x8f322b6c80c63999 -.dword 0x0a604774a67fd62f -.dword 0x5a96611635a7d2fa -.dword 0x661a633cdea690eb -.dword 0xd9d69dbb9beed7b1 -.dword 0xff1fad72b746c14a -.dword 0xd6879a3375951077 -.dword 0xfacb0de0e0e4ec17 -.dword 0x733190f8986ee8c7 -.dword 0xdb05727bfcaa8e39 -.dword 0x0fdb7c342af76699 -.dword 0xe71a87fe220e91f8 -.dword 0xd749d9018d54b00a -.dword 0x933f701d64f64a90 -.dword 0x6c36ab0b8a7ae45d -.dword 0x47e5b91edaf9442a -.dword 0x91fe03cd591ffe52 -.dword 0xc2b018635a3b7de2 -.dword 0x886b722b60fae124 -.dword 0x10f035fc67b31c17 -.dword 0xbcda42f8f4c16c5f -.dword 0x61fad3c70935381b -.dword 0x0b6fd5c4093b78d8 -.dword 0xbab0a281da9265d4 -.dword 0x22185d96058c84cf -.dword 0x1fff2162c97b13cf -.dword 0x78534f0a19487ab8 -.dword 0x84d43e73bd5449b0 -.dword 0xf33f08bb4715a914 -.dword 0x3cb316eddee319e3 -.dword 0x2da363435a98cf36 -.dword 0x68e1da412b5a457f -.dword 0x2611783e9d098d33 -.dword 0x4f2c342f0f84ab0c -.dword 0xe08630f176b9fbf4 -.dword 0x43464ce3407d15e3 -.dword 0x569939db6cb65edb -.dword 0x708bfced67267eff -.dword 0x7ef0160dbede96e5 -.dword 0xef9b2cf439cf9c99 -.dword 0x809c0f4903c129a8 -.dword 0x6f65a7586e41b6b4 -.dword 0x356368d9dee91952 -.dword 0x386d1cef6c1231c4 -.dword 0x222e8ce6cbe2f544 -.dword 0x54f03cc94236156a -.dword 0x1d5cc75707b954d4 -.dword 0x6023c3b6751e79c2 -.dword 0x1b1f4c46de48d776 -.dword 0x264aa5d14d4f9a24 -.dword 0x055414778aa15e29 -.dword 0x7bf1fbd8b7b7a0a3 -.dword 0xe1c9cc26f724ed86 -.dword 0x76302e3427dcb034 -.dword 0x9eb3bd36a3f6aa64 -.dword 0x2c8986fab60d390b -.dword 0xfc2db3b3521ed95b -.dword 0xa7f4a13d2f276f2f -.dword 0x69d1561823905b21 -.dword 0x569b22dcbba4dc38 -.dword 0x418a239bc96b5c33 -.dword 0x1596e1671b8e915c -.dword 0x721574a21fb4b721 -.dword 0x5115ec5d567bbdcc -.dword 0x2633412082b3fe62 -.dword 0x1fee9ca2c43fb1f9 -.dword 0xe67fe0b3ac483653 -.dword 0x51de7dc7cb23938a -.dword 0x208a3fd9b0e5390e -.dword 0x527717352a00d943 -.dword 0xd23eec9d516681ed -.dword 0x82f7e55a1a936ca6 -.dword 0xee6e6098557ab03e -.dword 0xc31542deb346f20d -.dword 0x2130fd1eb956e1a5 -.dword 0xf39c687d0384a5ad -.dword 0x2e4e11338ce7c71e -.dword 0x09bca174be6280d1 -.dword 0x2b8a5b6cf86bc01f -.dword 0x2192cbc5fb652e00 -.dword 0x653a1d09f4654ac5 -.dword 0xb0ee12f584c890d7 -.dword 0xc7852b5341c950ef -.dword 0xc529c6e8697d9ecd -.dword 0x857787e68b507630 -.dword 0x52416f6edc1b2460 -.dword 0xc2efc2e78671db18 -.dword 0x39129d5e4f01aa72 -.dword 0x6ad9f6d5c6b075c4 -.dword 0x97e56c3afcd2a261 -.dword 0xa7ebd739eee7bb58 -.dword 0xe5ac4d7543429e11 -.dword 0xea6ab20ace4ba17a -.dword 0xc02a16e6c6dd2b2a -.dword 0x57e25adf81634d3c -.dword 0x377b7831f949c2eb -.dword 0x96be83450cfc4d9b -.dword 0x0cc43a21a7ecdaf0 -.dword 0x2b8ec8283d4a89d9 -.dword 0xcd5858c48cfc15fa -.dword 0x2e70004204f88a3f -.dword 0xd30115366f8e3397 -.dword 0x7d2254cb2ebd6bc1 -.dword 0x584805e8ff8ebe5a -.dword 0x95924130fbc2b724 -.dword 0xe711d98b99446ae1 -.dword 0x7f3b013537bc0df1 -.dword 0xefeee677460b1ee9 -.dword 0x2e8eb3c4a620508c -.dword 0x2948c2f69e934ba9 -.dword 0x14dc92deb8a887c2 -.dword 0x2ccd215d5dc9bd5f -.dword 0xe02f6f122d7815fe -.dword 0xe79d95f98f321284 -.dword 0x1410254fd98f70b0 -.dword 0x373ebbb6fd312b82 -.dword 0xe109df7798d9156c -.dword 0x2ab2dd0e71aea992 -.dword 0xa993720e97ed646c -.dword 0xd116dcf71dfd13b4 -.dword 0x32b3d5f0c0b989c6 -.dword 0xee27b3beea246847 -.dword 0x89209ef44f265976 -.dword 0x38ff6a8d78c8607f -.dword 0x5650425f2588de3d -.dword 0x2e446f07df41bd66 -.dword 0x42d10134af8a6433 -.dword 0x2088267961bff078 -.dword 0x6a317d471f494e68 -.dword 0x2944603df773df5e -.dword 0xb645c7d5399d1e9b -.dword 0xd3bc58329952fb81 -.dword 0x7c27f4e71ac728f9 -.dword 0x19e614ef3b61c9c0 -.dword 0x55e5ca17616a50a8 -.dword 0x29a6c9e1b1095615 -.dword 0xf0e3db172d9b599a -.dword 0x12363760a4843535 -.dword 0x3f395f09695712dd -.dword 0x16239386c12442a6 -.dword 0x11c910e76322697b -.dword 0x22dd9f6e5eb30542 -.dword 0x51f80daa11551df8 -.dword 0x784a1712b62d76d2 -.dword 0x6a2000ced5ce1be0 -.dword 0x74ea3d8889fbb880 -.dword 0x7d55fa0192e8bad2 -.dword 0xaee350ea5757b78f -.dword 0xe58ebf1559afa2d1 -.dword 0xc39f278bd9160377 -.dword 0x72d3913e5175e033 -.dword 0x9e08916b50fc0074 -.dword 0xd4b9cef86cc2fe94 -.dword 0x65d67ca08f7b7d92 -.dword 0xb2677e537ca5b668 -.dword 0x513444a043c9fa74 -.dword 0x14ee26514be58250 -.dword 0x22a28766d39e842f -.dword 0x2c5cd19467a1e411 -.dword 0x87b5224e99ec7d4b -.dword 0x2774054c0a9f9a4c -.dword 0x46122bde6a1121a5 -.dword 0x78f11c4193d44aa4 diff --git a/isa/rv64uv/data_fd.h b/isa/rv64uv/data_fd.h deleted file mode 100644 index b6405a9..0000000 --- a/isa/rv64uv/data_fd.h +++ /dev/null @@ -1,4098 +0,0 @@ -# See LICENSE for license details. - -.double 3.82442188112e-88 -.double 9.43371972728e-26 -.double 3.93277941308e+246 -.double 1.07116715411e-136 -.double 2.94366617223e+71 -.double 2.74149657173e-281 -.double 4.03928077631e-189 -.double 1.39753598034e+88 -.double 9.99891841595e+213 -.double 167950.209113 -.double 3.0938897403e+212 -.double 1.27015662742e-246 -.double 1.76239017488e+214 -.double 4.64664649481e+228 -.double 2.05347187325e+18 -.double 4.97149695024e+161 -.double 2.2402530193e-190 -.double 3.23373689753e-104 -.double 1.8774019486e-257 -.double 2.09851573992e+203 -.double 1.50554446389e-204 -.double 1.09209202377e+22 -.double 5.48867635168e+193 -.double 9.46861888455e+285 -.double 1.48773103771e-86 -.double 9.84726166644e-178 -.double 4.50928483518e-88 -.double 4.88630775716e-279 -.double 7.99769919299e-200 -.double 2.19080373589e-258 -.double 2.20471662267e+187 -.double 3.01765807058e-205 -.double 4.44513880315e-170 -.double 1.42983049394e+55 -.double 1.43821524886e-229 -.double 3.51432832431e+79 -.double 2.19784528323e+145 -.double 3.59021532923e-177 -.double 8.32770856299e+175 -.double 1.16281616503e+81 -.double 1.02181921933e+25 -.double 1.66166219641e-277 -.double 1.41497712152e+172 -.double 1.35348433377e-15 -.double 2.05865658051e-215 -.double 1.27025671443e-78 -.double 2.71146324575e+233 -.double 2.0468698842e+257 -.double 2.51053594015e-289 -.double 7.18095653196e+142 -.double 6.96936821152e-81 -.double 2.81657804683e+125 -.double 2.50237117238e+99 -.double 1.1095037484e-54 -.double 3.93514652461e+183 -.double 4.82625377516e+250 -.double 5.93162974333e-271 -.double 1.24193349808e-233 -.double 1.52137894289e-306 -.double 2.9416506645e-193 -.double 9.34583286483e+127 -.double 7.81591285713e+292 -.double 2.80584530064e+206 -.double 4.36835137603e+226 -.double 63.7671241011 -.double 2.87105947072e-173 -.double 7.55272779176e+119 -.double 4.30098037209e-242 -.double 4.91076062682e+58 -.double 9.96249531025e+298 -.double 5.34159554277e+142 -.double 7.42295055377e+50 -.double 2.01120747283e+52 -.double 6.30617592833e+13 -.double 7.13286437101e+180 -.double 2.06038467147e-283 -.double 5.39454243137e-115 -.double 4.98377530203e+287 -.double 1.28016901377e+306 -.double 2.37162802895e+50 -.double 3.94982469871e-243 -.double 3.40526707404e+171 -.double 5.06662598311e+106 -.double 4.50218603502e-119 -.double 3.58275068673e-128 -.double 1.39119552744e-308 -.double 7.6610081387e+266 -.double 2.23839941306e+295 -.double 9.87333702842e+126 -.double 8.23650583981e+291 -.double 1.84449057415e-30 -.double 2.57127410232e-243 -.double 1.48957217119e-269 -.double 5.01399168207e-212 -.double 5.30203863369e-197 -.double 2.29161410838e-128 -.double 4.31722042106e+78 -.double 1.30255000892e-52 -.double 1.13011376923e+65 -.double 1.87219537932e-30 -.double 9.23583894399e+276 -.double 4.18724742551e-112 -.double 6.33852914813e-212 -.double 7.8441099576e+206 -.double 5.21858143584e-229 -.double 1.86468467613e+210 -.double 2.4163677115e-08 -.double 8.33102075649e+274 -.double 5.39125516002e+112 -.double 2.5533931483e-171 -.double 5.22459491411e+194 -.double 2.32947751823e+140 -.double 3.91787357598e-187 -.double 3.89897249042e-107 -.double 1.69972778543e-56 -.double 11116.3911888 -.double 6.30640502814e+295 -.double 1.66418134895e-268 -.double 1.07455797329e+156 -.double 1.58499205767e-114 -.double 3.84820554548e-138 -.double 4.83792208432e+237 -.double 1.4160490147e-175 -.double 1.2425196935e-61 -.double 1.12844315132e-170 -.double 4.59932352914e+306 -.double 1.01624249558e+163 -.double 5.27110565812e+98 -.double 6.24356495688e-12 -.double 1.28312485777e+131 -.double 4.33504259701e+237 -.double 1.16409126841e+259 -.double 1.47596419605e-108 -.double 5.00545394832e-137 -.double 6.23292781249e+125 -.double 9.53713612698e-157 -.double 4.86143898079e-262 -.double 5.86452695699e+81 -.double 7.90220124437e+166 -.double 5.43415504592e-104 -.double 515496.277408 -.double 3.54673599356e+177 -.double 1.63587676811e-268 -.double 1.61259427898e+28 -.double 1.09474317505e+83 -.double 4.19063247466e+49 -.double 3.84047621979e-277 -.double 5.79783447524e-158 -.double 1.61474877998e+143 -.double 4.44599341656e+96 -.double 2.62251455029e+134 -.double 1.263105125e-38 -.double 7.93325515304e-160 -.double 3.52676657744e-37 -.double 1.54548083338e+252 -.double 7.84183090124e+299 -.double 2.27711200231e+226 -.double 1.18938270382e+41 -.double 3.42990921891e+34 -.double 4.40825740177e-191 -.double 4.17117665123e+117 -.double 2.47742695482e+67 -.double 6.46925802594e-52 -.double 2.98171201207e-20 -.double 5.5623203193e+283 -.double 3.08776275447e-52 -.double 4.8603068152e-99 -.double 7.26483286554e-16 -.double 1.01885123915e+51 -.double 5.27211556052e-293 -.double 1.09136514446e+245 -.double 3.40182405712e-190 -.double 5.06842242823e+160 -.double 4.80387225296e+117 -.double 4.98906497893e+213 -.double 4.66012357267e-204 -.double 7.55927357168e-198 -.double 1.26582248889e+306 -.double 5.45184391955e-05 -.double 5.70352388489e-30 -.double 2.3246186492e+133 -.double 2.3291614041e+206 -.double 4.76672732026e+34 -.double 1.23879003102e-256 -.double 1.54610609805e+210 -.double 4.54828043959e+141 -.double 1.71232095271e-13 -.double 1.03425463514e-259 -.double 1.06442248267e+151 -.double 4.78037879998e-204 -.double 3.13602462171e-52 -.double 2.27725999163e+47 -.double 3.18096975706e-118 -.double 6.31446299277e+77 -.double 3.99818108771e+232 -.double 2.23631646047e-53 -.double 4.15674411894e+294 -.double 1.08805390198e+178 -.double 1.21929257647e+132 -.double 0.334918652198 -.double 8.99530433428e+104 -.double 1.19691819218e+35 -.double 6.74700661759e+97 -.double 2.51861771014e-110 -.double 1.95118755901e-126 -.double 4.27032600369e+163 -.double 1.3118740796e-141 -.double 7.85393751373e+236 -.double 5.08597657423e-83 -.double 3.90796931871e-212 -.double 6.52201698735e-128 -.double 1.66646352907e+75 -.double 1.66417823967e-26 -.double 1.89218126456e-97 -.double 2.43898031991e+60 -.double 1.34683072442e+47 -.double 2.8912723382e-13 -.double 2.62640159709e-194 -.double 1.12913172719e-114 -.double 6.47612774363e-298 -.double 8.50714294882e-37 -.double 3.72750550144e+96 -.double 7.30354074781e-264 -.double 6.9954430262e-128 -.double 3.33029219605e-244 -.double 8.87103491842e+150 -.double 1.59008817028e-172 -.double 5.52982520782e-185 -.double 1.07471153587e-163 -.double 5.46841797609e-111 -.double 7.19637514773e+286 -.double 1.17787701128e+129 -.double 1.07313350621e-82 -.double 5.42805197293e-167 -.double 2.15490937966e+17 -.double 5.94310293473e+176 -.double 66226296197.3 -.double 5.47281554868e-56 -.double 1.62047047676e-183 -.double 3.65807965119e-147 -.double 1.50263292547e-164 -.double 7647.73522886 -.double 4.14709350274e-209 -.double 2.67333364816e-220 -.double 1.1318542587e+196 -.double 6.85706541856e-264 -.double 5.97951124866e+297 -.double 1.68071059075e+153 -.double 1.18406181514e-142 -.double 3.00294436609e-55 -.double 6.75473977214e+80 -.double 1.80922939946e+194 -.double 1.30617504526e-169 -.double 6.29667272612e+93 -.double 3.87841981165e+141 -.double 3.27847753862e-240 -.double 1.19019129053e+112 -.double 5.51782322764e+270 -.double 5.10177713792e-140 -.double 2.90903095978e-64 -.double 7.14190254127e-125 -.double 9.28864200848e+113 -.double 1.24221691229e-244 -.double 1.66656923814e+22 -.double 4.1726954421e-154 -.double 7.69367767439e+143 -.double 5.67474047507e-251 -.double 9.28526229884e+248 -.double 7.65074463779e-199 -.double 1.77704016821e+78 -.double 5.40973661539e-179 -.double 5.09892381099e-157 -.double 3.840746571e+85 -.double 1.60885118841e-171 -.double 8.27097161759e-189 -.double 9.85439848372e-309 -.double 1.01744914641e-198 -.double 3.02976349596e+237 -.double 2.48193866364e-114 -.double 3.47556272347e-32 -.double 5.29244689703e+140 -.double 1.08367467971e+91 -.double 3.85265534176e-177 -.double 4.82892469361e-260 -.double 2.39345928653e+252 -.double 1.08314063995e+255 -.double 2.12397213848e-240 -.double 4.12974907926e-115 -.double 1.2505749745e+15 -.double 8.18821861386e-77 -.double 1.15843881328e-91 -.double 4.77941567414e-298 -.double 5.31759484137e-248 -.double 3.78547555722e-52 -.double 3.0641664538e-163 -.double 2.58193931153e-225 -.double 1.65614263999e+91 -.double 5.02132843614e-111 -.double 5.71900717534e+289 -.double 4.12324631032e-153 -.double 1.3873328788e+256 -.double 1.67186615634e-46 -.double 1.72227913899e-241 -.double 2.71103304046e-205 -.double 3.27914708387e+92 -.double 5.70888026703e-35 -.double 1.15556722891e+97 -.double 2.82087779717e-156 -.double 2.3889245399e-19 -.double 9.49620067393e-183 -.double 362192963.663 -.double 3.27482603154e+29 -.double 3.19639214826e-32 -.double 3.98388165942e-101 -.double 3.59237799593e-13 -.double 1.09504915472e-278 -.double 1.36091426429e-220 -.double 8.82237244372e-243 -.double 1.41217455759e+35 -.double 7.89082203375e+293 -.double 2.76215646876e+236 -.double 2.16869786554e-112 -.double 6.70830453254e+104 -.double 1.7880565388e-295 -.double 6.98840826323e+118 -.double 2.84216229054e-27 -.double 2.75842986099e+274 -.double 4.03744455457e-83 -.double 1.96924405838e+255 -.double 2.18227014464e+272 -.double 5.73773693828e+147 -.double 1.5604902802e+206 -.double 1.91638896429e+158 -.double 2.3248194159e-18 -.double 6.22755115913e+154 -.double 4.10191330631e+303 -.double 0.708899346193 -.double 4.59163783958e-117 -.double 3.02370381713e-239 -.double 1.45074179072e+260 -.double 1.42123861673e+76 -.double 5.85242146774e+26 -.double 4.94914830827e-96 -.double 6.05987204711e+190 -.double 4.91300123947e-35 -.double 1.89175083129e-100 -.double 4.60586486293e-92 -.double 4.07378917388e-275 -.double 1.26930233356e+259 -.double 1.67073820751e+67 -.double 1.47596075424e-14 -.double 7.71459247703e-252 -.double 4.54693085718e+57 -.double 2.06838351427e-281 -.double 7.25858810875e-237 -.double 5.10436023249e-20 -.double 8.1043382514e-100 -.double 3.41503377267e-274 -.double 3.67876838986e+50 -.double 1.17133617649e+129 -.double 4.79901859071e+175 -.double 2.08347306012e+138 -.double 4.03742070692e-296 -.double 1.3675926103e-161 -.double 7.27901038991e-245 -.double 4.91561269267e+193 -.double 5.70309217419e-67 -.double 1.28081225898e-298 -.double 9.2184402317e-276 -.double 7.99949466191e-249 -.double 1.97670616964e+166 -.double 7.60621033545e-279 -.double 1.03022289276e-19 -.double 3.05633558505e+157 -.double 2.46883051231e+280 -.double 1.99766005198e-66 -.double 1.32936007519e+89 -.double 3.4232750481e-285 -.double 2.60741587185e-74 -.double 2.33272855412e+146 -.double 2.16841518588e+221 -.double 8.61606406545e+135 -.double 4.30393333288e+14 -.double 1.68704473851e+260 -.double 6.52776500077e-144 -.double 3.44961009434e-134 -.double 8.39119824606e+55 -.double 4.27298288636e-76 -.double 4.52023977768e+184 -.double 2.42945582577e-252 -.double 7.72200301817e+117 -.double 6.8259087103e+224 -.double 4.83984923883e+68 -.double 3.82246503294e-190 -.double 5.4396777095e+103 -.double 5.17925185361e+280 -.double 4.56093975541e+228 -.double 4.47731648599e-38 -.double 3.72241008513e-125 -.double 8.34015297857e-97 -.double 1.20008728476e-238 -.double 5.36461629793e-229 -.double 2.63400575477e+157 -.double 8.61155529101e+41 -.double 8.10432055197e+54 -.double 2.73005407013e-63 -.double 7.90526013219e-206 -.double 2.83700326066e-42 -.double 4.77795755448e-237 -.double 1.0543861686e-235 -.double 5.01529152026e+141 -.double 7.78584035222e+170 -.double 7.18668968201e+71 -.double 5.70845099009e-56 -.double 4.84625082018e+33 -.double 40957803358.0 -.double 5.02324584155e-157 -.double 1.46784205357e-117 -.double 6.51276978432e+129 -.double 5.61114353182e+115 -.double 1.93865721907e+209 -.double 8.23119169825e+277 -.double 7.49588096423e+17 -.double 4.54630288251e-82 -.double 4.45474434301e+128 -.double 2.34396252506e+36 -.double 639405474.992 -.double 1.38782376727e+164 -.double 1.08417869495e+199 -.double 1.72759146444e+217 -.double 1.53393993293e-115 -.double 1.55599386353e+165 -.double 8.35063268018e-249 -.double 8.58322879385e+166 -.double 2.11498392594e+37 -.double 7.39927308799e-30 -.double 1.41850838733e+245 -.double 3.45896752586e-43 -.double 1.1482929203e-88 -.double 9.80514004796e+258 -.double 1.68665899462e-127 -.double 1.00654046452e-239 -.double 1.97770792326e-58 -.double 2.73492769433e-55 -.double 7.76219339134e-277 -.double 1.82417502004e-122 -.double 7.0201314391e-93 -.double 1.34064972437e+179 -.double 3.78822437997e-282 -.double 6.26609766117e-131 -.double 1.64980427181e+211 -.double 1.92694410821e-288 -.double 2.98101244901e+92 -.double 7.51578264741e-129 -.double 3.77586385062e-202 -.double 4.03674988354e+101 -.double 1.38470303803e-27 -.double 4.04145102672e-148 -.double 1.15920661269e+89 -.double 3.37168600123e+110 -.double 2.47160342225e-30 -.double 2.28325677836e+216 -.double 4.82865636058e+132 -.double 1.47816786023e+23 -.double 3.25791719982e+172 -.double 5.50406397936e-200 -.double 1.19223035938e-267 -.double 0.00313480520547 -.double 8.04970971722e-283 -.double 7.36681878321e-20 -.double 1.98867264325e+214 -.double 8.41269299032e+179 -.double 7.54816829984e+81 -.double 1.1638830695e-275 -.double 2.21839400784e-299 -.double 7.83216273767e+243 -.double 6.86202056459e-18 -.double 9.68037003127e-142 -.double 7.01309385412 -.double 6.97919691629e+25 -.double 3.33084539117e-158 -.double 6.82039752283e+141 -.double 3.364036876e+152 -.double 2.62916820463e+64 -.double 3.12161229276e-29 -.double 8.62766116867e+291 -.double 2.50134361186e+26 -.double 4.44414745006e+202 -.double 1.13278961536e-53 -.double 6.02567148314e-200 -.double 1.9743001317e-246 -.double 1.17268280904e+269 -.double 6.41169333908e+143 -.double 1.10436451663e-46 -.double 4.54064864748e+154 -.double 9.05119305484e-78 -.double 7.34063316574e+168 -.double 2.95033021821e+281 -.double 1.28782473164e-136 -.double 2.24893041187e+61 -.double 3.16142843632e-58 -.double 4.25664487837e-127 -.double 4.34274283492e+114 -.double 3.23012383374e+220 -.double 6.56021202998e-49 -.double 5.70345461387e-233 -.double 2.31855771125e+202 -.double 2.86989657866e+41 -.double 1.34007528875e+188 -.double 8.27092346444e-19 -.double 2.04409118534e-227 -.double 1.28145955641e-101 -.double 4.07976150809e-111 -.double 3.95765651459e-205 -.double 2.90197057111e+167 -.double 3.85051281254e+220 -.double 3.98376327789e+168 -.double 1.87232661257e-247 -.double 4.01207010794e+51 -.double 6.16382881066e-285 -.double 1.69847261386e+40 -.double 2.71095387443e-207 -.double 1.30950524316e-161 -.double 1.38161895576e+159 -.double 1.30215549158e+91 -.double 4.36871761859e+86 -.double 4.59159204509e-254 -.double 6.34004204906e+235 -.double 1.40522433644e-219 -.double 3.8443536669e+109 -.double 1.93011037993e+192 -.double 3.60983800081e+75 -.double 3.23849297399e-78 -.double 7.71700795772e-289 -.double 1.6377134608e-104 -.double 4.31012994737e-81 -.double 5.16793820808e-76 -.double 2.58421658983e-155 -.double 2.49283470142e+12 -.double 18353866273.8 -.double 5.2820215183e+219 -.double 1.73986023085e-105 -.double 1.94772666648e-76 -.double 1.03229625595e-26 -.double 2.20806459992e+99 -.double 8.11936773305e-266 -.double 2.3578892043e+118 -.double 2.89696698112e+242 -.double 1.95698002816e-240 -.double 1.82287515363e+291 -.double 8.1412490217e+191 -.double 1.90815684623e+240 -.double 4.33625203515e-182 -.double 7.96711363429e+202 -.double 7.23473386358e+124 -.double 4.72843467677e+207 -.double 1.22173121021e-59 -.double 1.13898723221e+110 -.double 1.12287787463e-176 -.double 1.64715890089e+117 -.double 3.38711154149e-292 -.double 1.5206419765e-286 -.double 1.32638296406e-249 -.double 6.33998507674e+301 -.double 1.14830082757e-151 -.double 6.68070981467e+207 -.double 9.43353443081e-83 -.double 1.68420729741e-277 -.double 7.20407627625e-230 -.double 484572.096595 -.double 2.1902289693e-235 -.double 3.25846571176e-271 -.double 8.15133758495e+114 -.double 3.81758169573e-307 -.double 1.87639541561e-209 -.double 1.4791735226e-233 -.double 1.34623557338e+205 -.double 1.00827726677e+149 -.double 6.16870096781e+168 -.double 1.58308043151e-20 -.double 7.15875374015e+165 -.double 9.89012266677e-211 -.double 2.98194485256e+54 -.double 4.68229449354e+252 -.double 8.05498563913e+181 -.double 7.55674180043e-233 -.double 5.19115473093e-96 -.double 5.03311300739e+234 -.double 1.59674015117e+167 -.double 1.51935963254e-178 -.double 6.95490537921e+38 -.double 4.71006320726e-186 -.double 2.90045957249e-261 -.double 8.34764720493e+186 -.double 4.2132384089e+56 -.double 7.85606213951e-281 -.double 1.19094858803e+60 -.double 1.85264164463e-32 -.double 4.39790377006e+62 -.double 1.32576490937e-196 -.double 2.68640130943e+119 -.double 9.44926166708e-30 -.double 1.10490976414e-32 -.double 2.90264965805e-36 -.double 1.219014029e+166 -.double 1.69319946938e-154 -.double 2.79607109844e-183 -.double 2.3388765632e+33 -.double 2.51396016405e-215 -.double 1.19998048209e+94 -.double 2.35952575057e-99 -.double 1.80582524387e+26 -.double 6.80557857402e-101 -.double 1.67145241529e-281 -.double 2.54041185983e-196 -.double 4.18769251731e+242 -.double 4.00831214251e-20 -.double 5.96936730429e-176 -.double 3.00806430441e+35 -.double 4.80052604126e-218 -.double 1.73801245699e-163 -.double 3.30307688472e-26 -.double 2.23712659233e+187 -.double 8.98926505319e-269 -.double 7.51125382149e-84 -.double 1.58853561461e+294 -.double 4.18904029122e+290 -.double 1.6350951722e-209 -.double 1.61742213703e+283 -.double 1.30967490651e+103 -.double 2.70389496685e+212 -.double 3.38296251313e-297 -.double 1.04190466116e+14 -.double 1.76457946206e+279 -.double 1.11673099517e-134 -.double 5.99322713781e+289 -.double 4.10582802831e-17 -.double 4.28560472427e-185 -.double 1.20601031915e+241 -.double 1.25865916093e+268 -.double 1.29728429579e-198 -.double 8.6277664219e+269 -.double 4.52556637056e+273 -.double 4.0953180074e+198 -.double 1.57491019656e+271 -.double 0.000177545243654 -.double 2.83509049663e-82 -.double 2.68971848288e-282 -.double 1.11988110259e-187 -.double 2.86943205908e-251 -.double 6.80772299894e+62 -.double 2.52517100196e+69 -.double 3.30100257196e-45 -.double 8.02432906552e+123 -.double 2.35463080747e-116 -.double 2.08060431056e-219 -.double 1.03927735481e+203 -.double 2.92403200471e-84 -.double 1.52632901393e-46 -.double 1.23738189658e-250 -.double 1.07223287489e-240 -.double 1.18106404726e-84 -.double 1.12364706618e-299 -.double 1.61601906047e+78 -.double 7.72710416349e-184 -.double 1.0148134907e-56 -.double 5.87713514974e+29 -.double 1.44954758699e+262 -.double 3.99804360189e+29 -.double 2.42427496666e+121 -.double 2.65933363003e+241 -.double 3.36697151731e-79 -.double 7.23216461729e-187 -.double 5.01333456811e-273 -.double 6.50203849337e-56 -.double 1.95188129308e-148 -.double 841013.521391 -.double 9.98414846299e+59 -.double 1.10441805188e+286 -.double 4.65426218575e-99 -.double 9.00449330438e+73 -.double 2.25953391618e+78 -.double 3.5477454434e+223 -.double 4.42548610886e-207 -.double 2.57888123528e-48 -.double 5.92028219956e+103 -.double 6.97982347887e+280 -.double 6.73483015328e-21 -.double 9.80889505587e-116 -.double 2.47450459693e-207 -.double 3.96723280695e+195 -.double 5.49125847056e-171 -.double 9.5152050023e-287 -.double 6.09166729707e-152 -.double 1.90719190304e+84 -.double 2.26162329445e+271 -.double 1.89147098658e+48 -.double 3.50542197089e-253 -.double 6.68678148256e-222 -.double 7.17241024219e+25 -.double 141142804807.0 -.double 2.41425608567e-139 -.double 5.19928842396e+192 -.double 2.39356864853e+216 -.double 1.72219986735e+131 -.double 3.02658461257e+246 -.double 1.32105848595e+31 -.double 9.19461675715e+128 -.double 7.70817939982e+20 -.double 5.98370108156e-242 -.double 1.06051794507e-95 -.double 3.43549852151e+262 -.double 4.22559651792e-204 -.double 3.70376726427e-94 -.double 1.71829710166e-110 -.double 1.27725654016e+197 -.double 5.67785683026e-131 -.double 8.19957806183e+196 -.double 9.05765129816e+57 -.double 1.41798474839e+166 -.double 1.6938685039e-184 -.double 3.85067828467e+36 -.double 0.202183272038 -.double 2.96478426417e-60 -.double 8.0234187877e+170 -.double 2.60097683311e+278 -.double 9.15514687594e-139 -.double 1.11225200344e-58 -.double 1.21662595012e-214 -.double 2.51275170651e+91 -.double 1.37684728559e-141 -.double 1.28060013536e+46 -.double 1.45721321435e-242 -.double 5.14768640197e+218 -.double 1.1474266115e-114 -.double 1.34347746281e+21 -.double 5.03171162235e-254 -.double 7.34517982388e+81 -.double 1.52332466595e-198 -.double 1.60493001077e-82 -.double 4.80342760427e-157 -.double 5.79119635414e+240 -.double 2.05094868919e+253 -.double 1.45801174265e-218 -.double 5.52510900359e-121 -.double 2.09499183034e+221 -.double 9.08189426458e-181 -.double 1.28308463559e-232 -.double 2.04688617027e+148 -.double 7.64732971294e+49 -.double 1.36145979011e-68 -.double 4.64573445596e-21 -.double 3.17033770487e-295 -.double 1.55747784952e+138 -.double 9.73403045021e+30 -.double 16259.2840884 -.double 1.07204099705e+24 -.double 2.7999299857e-212 -.double 2.93002719207e+22 -.double 5.76509634783e-154 -.double 1.6845802575e-93 -.double 3.83170607218e-53 -.double 5.79943193975e+189 -.double 2.96794684834e+285 -.double 1.74916232161e-13 -.double 1.13810652232e+282 -.double 3.27711660887e-218 -.double 1.66144135753e+243 -.double 7.77533761076e+288 -.double 1.86129553268e-96 -.double 1.97866716567e+109 -.double 3.00966610339e+122 -.double 8.68084018163e-172 -.double 2.44655739577e+59 -.double 3.48837206173e+271 -.double 2.92446771243e+186 -.double 1.14344221803e-257 -.double 3.79730907763e-76 -.double 8.8290273704e-271 -.double 1.75168740941e+192 -.double 6.11986425856e-259 -.double 1.62013271934e-132 -.double 1.493210426e-189 -.double 2.38123017151e-143 -.double 1.06404223477e-226 -.double 3.61746599493e-291 -.double 7.63188912307e-88 -.double 1.94239291793e-153 -.double 7.57326980074e+204 -.double 4.81749591818e-74 -.double 4.65403015608e+306 -.double 1.10135245143e+102 -.double 3.875440667e-280 -.double 2.58902436544e+113 -.double 4.64035837462e-92 -.double 2.72173625796e-70 -.double 1.28023480372e+155 -.double 1.36398338251e-146 -.double 7.96798941161e-308 -.double 2.17084838403e+156 -.double 2.0165194187e+79 -.double 4.82245457509e+156 -.double 1.66109032829e-259 -.double 1.44131128187e-295 -.double 1.47410659109e-149 -.double 4.39178721031e-142 -.double 3.86562252104e+161 -.double 7.34419574998e-15 -.double 1.4598000876e-15 -.double 8.24847181408e-50 -.double 5.89951619311e-96 -.double 8.16566279374e-05 -.double 9.02333823888e+183 -.double 2.3811526494e+191 -.double 6.53274881898e-279 -.double 4.75868325749e+233 -.double 1.99916468649e+163 -.double 8.3832662158e-291 -.double 2.37001458971e+33 -.double 7.27423764343e-259 -.double 1.71741100085e-164 -.double 2.78256124093e+180 -.double 8.33609723728e+62 -.double 7.43526895776e+198 -.double 3.46862749997e-118 -.double 8.12247729049e-184 -.double 1.07734984729e+206 -.double 2.18839919886e-45 -.double 7.68543089843e-136 -.double 2.25427570419e+38 -.double 2.34183180451e-243 -.double 1.11641617555e+290 -.double 3.66778153048e+174 -.double 5.27392075352e+89 -.double 9.4771149777e-122 -.double 2.13399576941e-33 -.double 2.55352917631e-101 -.double 8.14617736246e-293 -.double 4.31592940988e+271 -.double 1.13201579271e+143 -.double 2.93320279302e-146 -.double 2.03251938323e+51 -.double 6.62926929331e-101 -.double 3.59190403432e+30 -.double 5.18812560875e-202 -.double 6.04180279375e+112 -.double 7.11586105638e-90 -.double 2.90933139614e-97 -.double 1.51728666082e-243 -.double 9.105715848e-244 -.double 3.23644606867e-37 -.double 3.77289511618e-251 -.double 7.65272064757e+272 -.double 9.45227643396e+101 -.double 1.06641265302e+89 -.double 1.81166347652e-238 -.double 3.00947852061e-279 -.double 1.42883150707e+259 -.double 0.00490944714854 -.double 7.91569809193e+125 -.double 2.49802878995e+17 -.double 1.06519342814e+199 -.double 5.11352684396e+165 -.double 7.98536405521e-303 -.double 4.36215138933e+33 -.double 2.19643330677e+165 -.double 6.80333784664e+97 -.double 3.0520663456e+43 -.double 4.06525257681e+205 -.double 3.99658768201e-174 -.double 4.9279667004e-137 -.double 3.27000023395e+12 -.double 7.38338553175e+110 -.double 6.09551551935e-108 -.double 547291970.389 -.double 3.33034414578e+215 -.double 9.84722352853e+105 -.double 3.43365332609e-151 -.double 4.55626476957e+300 -.double 2.09938964254e-226 -.double 1.82464059592e-173 -.double 2.61612028354e-198 -.double 2.88796890152e-57 -.double 1.36952218834e-103 -.double 1.01334309856e+297 -.double 7.92041246949e-143 -.double 9.48278611929e-264 -.double 5.79379555211e-290 -.double 5.07377230292e-233 -.double 8.17030481529e+46 -.double 1.49328961233e-33 -.double 4.24446297145e-184 -.double 4.40189318055e+288 -.double 2.24711748012e+294 -.double 8.93143042848e-102 -.double 3.00885668478e-172 -.double 5.54092143224e+205 -.double 3.31218991485e+156 -.double 1.69905736986e-101 -.double 2.2924371104e+305 -.double 4.65573913365e-242 -.double 2.68332705631e-276 -.double 3.23533276694e+127 -.double 2.65339187267e-60 -.double 5.85526378741e-207 -.double 1.34695708113e+152 -.double 1.60063495955e+192 -.double 2.18250069366e-92 -.double 2.61670787079e-107 -.double 1.77410078191e+52 -.double 4.1320169156e+114 -.double 2.32683861469e-206 -.double 6.06527057546e+93 -.double 1.55911879266e-250 -.double 1.72565533279e-172 -.double 6.850815924e+296 -.double 127.598239396 -.double 3.08017257174e-11 -.double 1.82601164688e-163 -.double 2.1605436766e+194 -.double 63964113.7245 -.double 2.41983630227e+139 -.double 1.07960044865e-218 -.double 2.23172901124e+148 -.double 2.48555028806e+292 -.double 5.91827235522e-231 -.double 9366298.52332 -.double 9.60065546749e+36 -.double 1.50903076766e+183 -.double 1.98947384048e+259 -.double 6.77593484235e-151 -.double 2.4236736512e+214 -.double 1.04509016793e-22 -.double 5.73282109251e-116 -.double 1.99891402071e-201 -.double 1.67737326951e-233 -.double 4.92817017379e+39 -.double 4.69329338116e-171 -.double 2.44688151903e+145 -.double 8.29107487797e-127 -.double 9.67401518773e+127 -.double 6.09586235432e-71 -.double 1.4619048684e-248 -.double 9.33845831253e+293 -.double 3.31286914072e+167 -.double 2.22221398263e+120 -.double 3.66824465e-08 -.double 4.3493732106e-201 -.double 2.27314309431e-139 -.double 2.34736264272e+65 -.double 8.14503569347e+252 -.double 2.08908136943e-143 -.double 2.58470326203e+63 -.double 5.48410234676e+283 -.double 2.02895725408e+228 -.double 2.12895523949e+256 -.double 9.34587887895e-228 -.double 1.07102524117e-103 -.double 3.55089814369e-148 -.double 7.40798377064e+59 -.double 1.44588174036e+88 -.double 6.70553793205e+59 -.double 3.61049154107e+191 -.double 1.63538789523e-80 -.double 8.15986231424e-06 -.double 3.43786332116e-282 -.double 1.98282403928e-191 -.double 2.98244495215e+12 -.double 4.40114669805e+167 -.double 6.17903558074e-231 -.double 1.36189831056e-32 -.double 2.63209627514e+181 -.double 1.62076429246e-252 -.double 6.32810976608e+72 -.double 1.71923544854e-280 -.double 4.4373276838e-35 -.double 5.73783175785e+149 -.double 9.75979374095e+70 -.double 1.20098070992e-88 -.double 7.1437133306e-214 -.double 5.16854554215e+166 -.double 5.94951299148e+120 -.double 1.03573883366e+180 -.double 8.19734562327e-241 -.double 1.87262332645e-216 -.double 1.56992102008e-213 -.double 2.43033918783e-63 -.double 5.10331554201e+128 -.double 2.10723719227e-289 -.double 1.67770734185e+212 -.double 7.28898763885e-18 -.double 0.00797613662774 -.double 2.12739113293e+128 -.double 8.68027313655e+108 -.double 4.45234160703e+229 -.double 3.34540581284e+198 -.double 2.91678621466e-223 -.double 4.6667413073e-160 -.double 1.9277462937e+167 -.double 2.27546437083e-249 -.double 2.2869914961e-280 -.double 7.07296329874e-105 -.double 2.11837971706e+165 -.double 2.6176980466e+307 -.double 1.4728397318e+198 -.double 1.05460733061e-237 -.double 3.00054588849e-217 -.double 2.61752132163e+201 -.double 6.45339609617e+46 -.double 2.42300818865e-108 -.double 7.6940633113e-81 -.double 5.01119917023e-124 -.double 6.22116681341e+41 -.double 7.1731808649e+258 -.double 3.31288906521e+22 -.double 4.73953410552e-154 -.double 2.85002624244e+245 -.double 3.01084740848e-254 -.double 1.76504550956e+137 -.double 2.51814464609e-206 -.double 4.15478774151e+216 -.double 6.86707315402e+139 -.double 1.48114061619e-294 -.double 8.40812255194e-13 -.double 2.53150392345e-286 -.double 8.15592310998e+279 -.double 1.81958716811e+126 -.double 1.35869569079e+238 -.double 1031574821.21 -.double 8.64238540784e-11 -.double 5.14176658325e+248 -.double 1.66667161131e+229 -.double 1.08645243361e+241 -.double 1.76990174335e+208 -.double 8.60194189158e-279 -.double 6.21919492999e-54 -.double 8.90166859005e-148 -.double 8.27637127133e-90 -.double 1.14854080124e+296 -.double 5.41111087018e+207 -.double 5.75745711984e+160 -.double 3.57732833045e-171 -.double 2.32465590172e+289 -.double 8.26116227335e+207 -.double 3.76843391531e-133 -.double 8.44712352106e+288 -.double 5.89655052801e+171 -.double 7.26306214899e-86 -.double 1.16161909773e-167 -.double 3.97443089677e+31 -.double 3.45262754178e+148 -.double 3.77048141307e-279 -.double 6.79930490433e-246 -.double 2.03544604741e-239 -.double 7.42757086593e-103 -.double 3.5672112586e+295 -.double 5.53560691041e-262 -.double 2.61986783107e-78 -.double 6.60466036412e-140 -.double 7.36454674227e+14 -.double 7.08407134546e-274 -.double 2.33392292967e+155 -.double 2.97079426529e-209 -.double 883070.089243 -.double 3.20183082378e+108 -.double 3.23468035747e-117 -.double 4.44854019474e-32 -.double 3.74892593257e-51 -.double 2.4310591352e-161 -.double 1.13659551678e-225 -.double 8.69672619242e+57 -.double 4.47577541102e-234 -.double 1.08312141296e-86 -.double 5.16500189056e+204 -.double 2.08258557928e+47 -.double 7.94640981073e+205 -.double 3.26453468459e+81 -.double 1.59546751602e+208 -.double 3.77332874803e-239 -.double 1.49709984956e-50 -.double 2.03117548845e-131 -.double 9.25500950611e+25 -.double 1.18275980753e+84 -.double 1.45760885357e-67 -.double 2.79232187465e+284 -.double 2.30569018877e+20 -.double 2.56252958469e+149 -.double 9.13618341309e-21 -.double 4.09247977137e+173 -.double 2.30105443658e-28 -.double 2.550694789e+51 -.double 6.34399452967e+171 -.double 9.9937898122e+45 -.double 4.17353988939e+70 -.double 2.63532522014e+54 -.double 2.62025129989e+129 -.double 4.21986338889e+220 -.double 8.08634794288e+186 -.double 2.84657875521e-71 -.double 2.54874556325e+125 -.double 1.57342673343e-114 -.double 5.78193152457e+284 -.double 3.171476882e-198 -.double 3.03002139415e+106 -.double 3.88170756066e+134 -.double 5.52039103737e-114 -.double 3.13109313638e-269 -.double 1.29574400559e-194 -.double 3.66018222725e+113 -.double 3.18136301208e+168 -.double 1.14876879774e+107 -.double 3.81498389012e-24 -.double 4.91736463022e+274 -.double 7.59949279574e-222 -.double 3.93335182407e-112 -.double 3.61478903253e+167 -.double 4.06823083485e-110 -.double 2.96755552197e-252 -.double 3.87909391295e-268 -.double 6.502508414e+244 -.double 8.72547789867e+24 -.double 3.96904993345e-94 -.double 2.30430917539e+222 -.double 1.20025954564e-303 -.double 6.18822060205e+233 -.double 4.56332546768e+72 -.double 2.20868345485e+297 -.double 1.59874591661e-306 -.double 1.28880507812e+226 -.double 1.14421133745e+36 -.double 1.91672245887e+81 -.double 7.33459908549e+301 -.double 8.6466164739e-244 -.double 2.07369494747e-190 -.double 1.21937963467e+53 -.double 4.79980453079e-21 -.double 3.42154673736e+91 -.double 9.13746477164e+198 -.double 1.14674987407e+49 -.double 9.10974983125e+244 -.double 4.43350958945e+159 -.double 1.19402346314e-97 -.double 6.23124387348e-122 -.double 1.60938663219e-238 -.double 1.24467312574e-115 -.double 0.00358484694734 -.double 4.57123653657e+270 -.double 1.55925960824e-263 -.double 2.97507454557e-104 -.double 1.91540613339e+177 -.double 3.62904162058e-66 -.double 9.13587492877e+39 -.double 4.530380805e-64 -.double 5.23402354375e+261 -.double 8.84482440307e-212 -.double 3.10706741649e+98 -.double 4.20580255786e+216 -.double 1.36112733398e+107 -.double 1.34010678147e+251 -.double 92302323.3194 -.double 4.2015941931e-191 -.double 1.92412442302e+31 -.double 3.19832541239e-307 -.double 2.12531592105e+95 -.double 5.46355703743e-204 -.double 1.93518594915e-284 -.double 7.11762055756e-119 -.double 6.7252752675e-192 -.double 3.42931361711e+183 -.double 7.51828687045e-241 -.double 6.28431571528e-50 -.double 2.82519083527e-165 -.double 1.96647700849e+294 -.double 7.10610889511e+119 -.double 2.53904151672e-12 -.double 2.32444929974e+182 -.double 1.16204967233e-302 -.double 1.36745963603e-195 -.double 475228.03358 -.double 9.17269235193e+19 -.double 5.6950158051e-219 -.double 1.26613477488e-211 -.double 7.74292048407e-212 -.double 1.07342548997e+110 -.double 4.95903887665e-56 -.double 1.63906269812e+140 -.double 1.08436208327e+235 -.double 3.77347518953e-56 -.double 2.16355507055e-121 -.double 2.44366121721e+39 -.double 8.39817251522e+194 -.double 6.22503626447e-47 -.double 2.01020890874e-160 -.double 7.95705918567e-294 -.double 1.60090418336e+29 -.double 1.11046026521e-240 -.double 4.56101715406e-11 -.double 8.20989162323e-183 -.double 1.00821438189e+257 -.double 1.15467081451e-71 -.double 6.61070206838e+159 -.double 4.0343057229e-146 -.double 1.10811566569e+27 -.double 8.1095616936e-162 -.double 4.90629259274e+99 -.double 3.14396340183e+246 -.double 3.81024870284e-148 -.double 4.75947628275e+243 -.double 5.13866905459e-214 -.double 3.85308992152e+91 -.double 4.71098940238e-178 -.double 0.00171359638561 -.double 2.79192036579e-267 -.double 6207555852.4 -.double 2.10636297721e-299 -.double 5.732617226e-82 -.double 2.67601839977e-35 -.double 4.94959254379e+154 -.double 2.58209804425e-38 -.double 1.11711888066e-110 -.double 2.06755332791e+105 -.double 1.54995026407e+84 -.double 4.66683377475e+97 -.double 1.63696446071e+195 -.double 4.15186789807e-114 -.double 2.3653215397e+304 -.double 1.60566104647e+38 -.double 4.49174885713e+246 -.double 3.99303246918e-132 -.double 1.18905503979e+179 -.double 9.46132106324e-147 -.double 3.49410938075e+153 -.double 4.61431029268e+168 -.double 2.59440503516e-166 -.double 1.21422120988e-169 -.double 2.74657048257e+231 -.double 9.72535970041e-240 -.double 1.07496662723e+73 -.double 2.02137086434e-75 -.double 4.50525852349e+33 -.double 8.45657788926e+28 -.double 1.53701679999e-188 -.double 3.00656717557e-177 -.double 1.62986584517e-161 -.double 1.08413807171e+209 -.double 3.98898142494e+104 -.double 1.29694694515e-207 -.double 2.62696254918e-270 -.double 2.52783869698e-157 -.double 9.92003132112e-310 -.double 7.4987810894e-240 -.double 2.36315015393e-105 -.double 5.81107124784e-139 -.double 3.88574859589e-193 -.double 1.58828865535e+291 -.double 2.26971881601e+249 -.double 7.17546538087e+245 -.double 5.10568696851e-39 -.double 7.244469264e-257 -.double 1.61367268411e+128 -.double 2.48119648136e+75 -.double 1.21091508184e-168 -.double 6.89043556949e-71 -.double 7.72476591553e+302 -.double 1.02900319443e+29 -.double 1.59526369739e+154 -.double 9.09139391819e-176 -.double 1.60927861405e-185 -.double 1.94445044179e+217 -.double 7.33500595221e-68 -.double 1.3489365343e-65 -.double 1.86484002005e+28 -.double 2.478538083e-259 -.double 3.1609649012e-207 -.double 3.35531946884e+266 -.double 5.85186472798e-236 -.double 8.21669195563e-301 -.double 1.17389158503e+220 -.double 7.21685999136e-142 -.double 3.64575252027e-139 -.double 1.59203042603e+222 -.double 8.19969537389e-91 -.double 3.2643150328e-165 -.double 1.80268748474e-277 -.double 3.95265680904e+227 -.double 1.05654596284e-295 -.double 1.53207801806e+283 -.double 1.22176849128e-189 -.double 2.57338791407e-250 -.double 9.14022248172e+225 -.double 1.76433332716e-301 -.double 8.31240534637e+144 -.double 9.9275836455e+145 -.double 2.82329758619e-258 -.double 1.3718809131e+107 -.double 7.42115044414e+79 -.double 1.37665256646e-176 -.double 3.80925769993e+149 -.double 2.17759049523e-59 -.double 5.18582521339e-58 -.double 2.21126274375e+89 -.double 3.35203241816e+183 -.double 6.64421202691e-211 -.double 2.29362915363e-100 -.double 2.31323397319e-156 -.double 3.46403504145e+212 -.double 3.39178279449e-161 -.double 1.05759233436e-207 -.double 2.53857472237e-163 -.double 9.07766348994e-18 -.double 35736307.5721 -.double 2.27902885229e-171 -.double 9.82141015611e+300 -.double 1.52499586171e-276 -.double 9.00925985227e-186 -.double 3.29101222353e+292 -.double 2.89522690622e-187 -.double 5.83769910232e-21 -.double 7.74516756327e-154 -.double 1.18414252645e+267 -.double 7.07317448114e-238 -.double 4.21266691332e-188 -.double 1.74557387901e-260 -.double 5108.60888937 -.double 0.000104440819411 -.double 2.34570049406e-251 -.double 1.51992444846e+212 -.double 7.08274216657e-243 -.double 4.05158996536e+178 -.double 7.98822007968e+185 -.double 2.62894075849e-170 -.double 1.01553436203e-19 -.double 2.66839856912e+61 -.double 2.75833235204e+29 -.double 4.44242748169e+222 -.double 8.25748941546e+106 -.double 1.28493885565e+220 -.double 1.20277462746e-276 -.double 4.22669817212e+19 -.double 1.06069409902e+34 -.double 1.08782737785e+161 -.double 9.70881201761e-111 -.double 23038.3076367 -.double 1.12956808258e+300 -.double 9.22389553517e-11 -.double 7.35553388736e-37 -.double 1.95517601873e-197 -.double 9.97326760299e+107 -.double 2.60122058691e+225 -.double 2.06266440251e-291 -.double 4.63558439967e-70 -.double 8.29873312026e+248 -.double 3.40681219275e+37 -.double 4.28109601757e-271 -.double 2.73955031389e-22 -.double 2.28553743227e+49 -.double 1.07452553665e+40 -.double 3.01708385811e-14 -.double 7.0940049372e+69 -.double 3.92451870439e-303 -.double 1.38709229813e-41 -.double 7.60436176246e+225 -.double 4.29239881927e-71 -.double 4.34833402603e-05 -.double 1.44767165536e+21 -.double 7.77805654115e-175 -.double 1.03905576811e+103 -.double 1.28325602639e+287 -.double 1.24876932879e-127 -.double 1.82538059558e+172 -.double 1.7864989169e+97 -.double 2.29241469622e-104 -.double 2.21633060131e+151 -.double 9.59583861364e+171 -.double 4.27973831592e-165 -.double 1.48200184969e+273 -.double 7.15996605474e+89 -.double 6.79806895901e+215 -.double 3.307716637e+89 -.double 1.24826151369e+138 -.double 3.74418726767e-91 -.double 6.57725013208e-164 -.double 3.85442862322e-156 -.double 2.08904974897e-275 -.double 1.33178251642e-34 -.double 1.74543691319e+29 -.double 3.49983462863e-31 -.double 1.65953161262e+178 -.double 1.44202385561e+140 -.double 4.90536751305e-132 -.double 1.85090377546e-284 -.double 4.15206782952e+294 -.double 6.15824939518e-248 -.double 3.71597923582e-24 -.double 4.31932814001e-70 -.double 5.37876330192e-24 -.double 3.92079598889e-13 -.double 4.15394972429e-176 -.double 2.41776014302e-86 -.double 1.06984193841e-249 -.double 8.63864520788e-215 -.double 6.01427337779e+193 -.double 9.2532635439e+293 -.double 4748.87889398 -.double 1.00980348452e-86 -.double 7.35452894818e+269 -.double 2.4580610925e+68 -.double 0.00626599074584 -.double 1.41179705513e-12 -.double 1.39032911468e-202 -.double 3.4048448812e+73 -.double 1.68594694048e+41 -.double 3.5510158346e+99 -.double 2.2836363928e+25 -.double 5.54242196681e-129 -.double 5.14807338983e+177 -.double 4.2185480577e-108 -.double 8.54509328624e+47 -.double 1.49666585326e+131 -.double 3.24810493387e+34 -.double 3.53786522657e-42 -.double 1.28976294666e+17 -.double 3.02279978563e-83 -.double 1.46481286559e+220 -.double 1.67706730306e-249 -.double 4.94680464809e+266 -.double 9.9244240297e-252 -.double 1.08272897431e-214 -.double 1.78990183046e+280 -.double 1.04749026883e-290 -.double 1.54285512184e-240 -.double 7.65823627996e-88 -.double 1.01017063657e-162 -.double 1.00766380048e+35 -.double 0.00613717186221 -.double 2.02771897869e-111 -.double 1.46510135993e-23 -.double 5.32371575732e-196 -.double 8.14004706507e-189 -.double 1.35365998598e+296 -.double 2.25245203889e-98 -.double 7.17981519506e+109 -.double 1.64929256312e+14 -.double 5.78175617488e+105 -.double 3.53877868128e+213 -.double 2.96992536991e-204 -.double 3.55415842506e+121 -.double 6.00284248719e+54 -.double 6.11901741444e+35 -.double 1.18152285307e-22 -.double 8.82464546849e-148 -.double 3.66170582988e+62 -.double 3.31533501824e-167 -.double 5.3563527287e+266 -.double 1.39713645003e+148 -.double 3.68792103668e+238 -.double 3.68160390649e+227 -.double 4.06952147901e-102 -.double 5.51658923676e-193 -.double 5.35713938275e-258 -.double 1.05465864769e-46 -.double 4.13765697122e+158 -.double 7.17314633659e+233 -.double 5.21576852209e-10 -.double 2.80167590773e+288 -.double 6.74121709209e+70 -.double 4.20312964592e+12 -.double 2.04147099063e-85 -.double 1.17363769875e+195 -.double 2.93384850135e+306 -.double 6.91096558179e+190 -.double 2.83170730729e-15 -.double 2.70512795589e+104 -.double 2.22691714555e+37 -.double 3.29736101305e+137 -.double 2.99182872971e+57 -.double 1.24338827718e+152 -.double 5.64686248646e+130 -.double 8.93399695789e+71 -.double 8.91305574363e-36 -.double 6.745454939e+44 -.double 1.18952860076e-45 -.double 4.08412434512e+302 -.double 3.85606731432e+48 -.double 8.99664711073e+120 -.double 2.17046453589e-172 -.double 2.85596470225e-137 -.double 4.8246810054e-122 -.double 1.66156487764e+66 -.double 5.93331612862e+74 -.double 1.03070241399e-44 -.double 1.03869531901e-66 -.double 2.08756942096e-265 -.double 1.91276587131e+93 -.double 1.30493605519e-278 -.double 3.6274994033e-284 -.double 1.24629773611e-164 -.double 3.68116167214e-171 -.double 6.41926692357e+292 -.double 1.14998248288e+42 -.double 5.21528018748e-308 -.double 1.35633070072e-99 -.double 2.42101171898e-08 -.double 1514118666.27 -.double 3.21493304227e+91 -.double 5.86338908403e+133 -.double 9.11260081194e+84 -.double 1.17331121806e-23 -.double 4.37845668326e-218 -.double 4.67423766599e+178 -.double 1.69620201182e+136 -.double 2.25227765975e+201 -.double 1.22121300522e+117 -.double 1.86454880962e+303 -.double 4.4212344444e+44 -.double 2.99971378539e-166 -.double 1.95638735389e+261 -.double 3.32769933486e-289 -.double 7.94283528246e-41 -.double 674289238.873 -.double 1.52188278541e-82 -.double 9.97943006489e-87 -.double 9.36717894282e+197 -.double 2.25167514138e+282 -.double 1.03140298075e+304 -.double 8.19759748003e-137 -.double 5.57991336023e-151 -.double 4.42538570172e+77 -.double 3.10823535461e-205 -.double 9.24067391376e+268 -.double 7.63517915772e+193 -.double 1.2649414433e+166 -.double 1.89977016288e-91 -.double 1.33606112405e+167 -.double 8.3390626419e-140 -.double 2.61419690748e-101 -.double 1.71893362711e-33 -.double 4.59116212098e-131 -.double 6.92684920994e-149 -.double 5.12818805286e-34 -.double 2.70619559658e+51 -.double 8.25229363979e-32 -.double 1.86947101651e-156 -.double 3.79523248067e-26 -.double 3.720927357e+98 -.double 1.80962488168e+303 -.double 3.67015605713e+244 -.double 3.84274874426e-175 -.double 5.8364593635e-76 -.double 3.22251742838e+105 -.double 1.24753043424e+235 -.double 5.81751899793e+127 -.double 7.13705068081e+180 -.double 1.26220100346e-25 -.double 5.44485698241e+109 -.double 8.03339298976e-27 -.double 1.307802117e-223 -.double 1.76813570332e+141 -.double 4.29689834197e-168 -.double 7.98263265289e+209 -.double 2.97406612599e-39 -.double 2.21120080157e-78 -.double 6.8054391776e+114 -.double 1.02112968162e+38 -.double 1.1751013156e+249 -.double 1.12854613624e-251 -.double 2.59994191901e+30 -.double 1.28538029473e-27 -.double 2.54660541595e+67 -.double 3.57812694156e-75 -.double 9.28252311117e-15 -.double 3.13497320064e-57 -.double 4.25079447275e+295 -.double 6.1870151095e+125 -.double 4.22721224437e+80 -.double 3.69490216433e-264 -.double 6.24052132144e-145 -.double 6.82386233997e+96 -.double 5.54627875622e-127 -.double 1.26926059727e+299 -.double 2.09996648088e-111 -.double 1.66897080916e+132 -.double 4.054577991e+298 -.double 625.028748076 -.double 3.96172878296e+124 -.double 9.83519898072e-138 -.double 6.40150488476e+34 -.double 6.62550487766e+242 -.double 3.63321166126e-118 -.double 1.07374595336e+303 -.double 1.84785884108e+110 -.double 1.89954722693e+53 -.double 8.69213477977e-114 -.double 1.79991545476e+276 -.double 1.86637852092e+174 -.double 9.09066653088e-32 -.double 1.70677056175e-213 -.double 1.27450401869e-127 -.double 3.70760032328e+278 -.double 8.30650780279e+164 -.double 4.10009373011e-210 -.double 9.65536937337e-89 -.double 1.21080954297e+84 -.double 2.62784957957e-43 -.double 8.0255696267e-07 -.double 4.33730348635e+162 -.double 5.00327346472e-34 -.double 1.30745769219e+153 -.double 8.00913560434e-41 -.double 1.21515107216e-246 -.double 1.09911071185e+51 -.double 22541.5422809 -.double 1.64815769819e-266 -.double 3.65788520113e-171 -.double 5.25221558418e-19 -.double 1.42481964982e+173 -.double 44884509.9263 -.double 1.9940049553e-45 -.double 3.39040116207e-208 -.double 1.69700306664e+303 -.double 2.91818460481e+62 -.double 8.93934469281e+248 -.double 2.41711741451e-57 -.double 1.63178834698e+193 -.double 1.19682568467e-274 -.double 6.95081775412e-274 -.double 1.22096448117e-51 -.double 2.74465886892e-117 -.double 4.60740812902e+227 -.double 1.14956161164e+160 -.double 1400574326.44 -.double 5.99565409599e+41 -.double 1.03071545997e+157 -.double 2.58962573173e-47 -.double 1.4343751514e-263 -.double 6.47013399939e+197 -.double 2.79040641621e+122 -.double 1.33051332404e-272 -.double 1.60737959239e+280 -.double 1.30240646148e-177 -.double 8.78647748838e-67 -.double 1.11064171132e+101 -.double 1.39543031565e-133 -.double 3.10384184122e-282 -.double 3.14794354248e+33 -.double 8.52737653798e-67 -.double 1.84373604978e-114 -.double 8.54085198459e-96 -.double 3.81122309576e+23 -.double 1.33689439225e+98 -.double 4.70926113408e+277 -.double 4.08423980689e-200 -.double 5.22919012714e-38 -.double 1.73536167427e+236 -.double 2.52648170224e-234 -.double 1.10994305935e+185 -.double 1.29015026164e+238 -.double 1.36438122474e-27 -.double 2.18906773202e-118 -.double 5.31363778149e-42 -.double 4.00628769539e+241 -.double 8.36240482272e+297 -.double 1.24320260031e-198 -.double 7.95224057819e+195 -.double 6.19131409014e-305 -.double 1.8489934324e-63 -.double 2.55854586092e+295 -.double 0.00219322363005 -.double 3.78277487419e-305 -.double 1.5317166899e-238 -.double 4.77393924001e-157 -.double 5.79544169652e-134 -.double 2.78602057928e-59 -.double 2.59996748187e+275 -.double 8.5369407564e-284 -.double 2.65861768666e-253 -.double 1.38056075447e-33 -.double 3.69882832955e-189 -.double 7.38199780172e-230 -.double 6.00751792848e-148 -.double 7.76498841192e+78 -.double 1.85971760549e+87 -.double 4.95230467617e+268 -.double 2.64128173472e+159 -.double 1.41294585253e-221 -.double 4.02136848543e-31 -.double 3.41248333298e-109 -.double 6482734.15189 -.double 4.13602566451e-150 -.double 6.83125872262e+192 -.double 4.48757545481e-232 -.double 2.66284904758e-279 -.double 3.17783818518e+151 -.double 5.47699974211e-194 -.double 9.80571642686e+138 -.double 1.31330503044e+124 -.double 5.42246925979e-40 -.double 2.85010838048e+104 -.double 2.18693917968e+245 -.double 2.24180795977e-216 -.double 8.89296384435e-11 -.double 2.580866715e+282 -.double 1.78704510517e-247 -.double 1.87440951041e-168 -.double 3.62702908793e+199 -.double 1.1030792125e-208 -.double 2.01107500945e-125 -.double 4.71076448534e+35 -.double 1.08888220173e-66 -.double 9.53968839529e-47 -.double 3.85812858014e-198 -.double 6.17039925506e-128 -.double 1.12354181385e+58 -.double 1388.68690163 -.double 1.54730984553e-239 -.double 1.35070607524e-269 -.double 2.27702390423e+219 -.double 2.42291851911e-245 -.double 1.59219804611e+124 -.double 2.76235457672e-243 -.double 6.11176021273e+75 -.double 5.36880224404e-106 -.double 5.39688120591e+66 -.double 2.21360318977e+29 -.double 2.45572679813e-23 -.double 6.38977278716e-190 -.double 7.24302286703e-221 -.double 1.60818087312e-226 -.double 1.66160369425e+289 -.double 7.59234361262e-74 -.double 1.40857921795e-282 -.double 5.64056522271e-60 -.double 1.15635514423e+302 -.double 3.30610110618e-105 -.double 2.39540452029e-204 -.double 4.03740690179e+101 -.double 2.13765125176e-93 -.double 4.00346905994e+157 -.double 3.84453659167e-85 -.double 2.87425985225e+142 -.double 7.85687457898e-281 -.double 9.1927275571e+189 -.double 1.04628328665e-59 -.double 5.92388303218e+95 -.double 8580248611.49 -.double 5.24197320365e-238 -.double 2.95317420062e+26 -.double 2.64917884722e-86 -.double 8.12658241584e+92 -.double 1.09245309585e+202 -.double 1.70811473856e-91 -.double 1.67077748703e+96 -.double 1.6224501406e+145 -.double 4.24454323017e+100 -.double 3.89754260619e+213 -.double 1.08230493503e-117 -.double 2.06516726051e-276 -.double 1.58427025769e+300 -.double 1.95769795843e+81 -.double 1.63780377557e+35 -.double 1.72520332201e-217 -.double 7.61162561728e+110 -.double 6.49480038143e-11 -.double 2.00931310158e+52 -.double 480.247339083 -.double 3.42081450884e+122 -.double 1.28212371626e+214 -.double 2.99058862459e+189 -.double 2.4029461865e+260 -.double 1.89580210432e-41 -.double 1.89033250571e+205 -.double 4.6490105879e-93 -.double 2.14030143542e+274 -.double 1.56412726431e-143 -.double 3.74112751763e+83 -.double 5.85394754589e-207 -.double 4.95708970202e+71 -.double 1.87204505778e-173 -.double 5.21775300459e+173 -.double 1.12464504218e-50 -.double 3.53715830332e+121 -.double 4.43665972101e-23 -.double 8.1420679469e-252 -.double 1.89191599145e-151 -.double 1.23359359441e+99 -.double 5.49005647272e-10 -.double 5.20451686764e-233 -.double 1.95165010613e+273 -.double 1.53078393237e-281 -.double 5.67573121891e+253 -.double 4.0738851067e+58 -.double 1.18787753786e-237 -.double 8.97630646961e-117 -.double 7.31786146506e+196 -.double 3.80323877261e+221 -.double 2.39803322288e-247 -.double 5.38790768974e+32 -.double 2.36416860451e-255 -.double 9.10529193804e-308 -.double 8.37463501107e-296 -.double 1.77134654275e-49 -.double 2.0665982911e-129 -.double 5.62344913833e+82 -.double 1.03429541572e+110 -.double 2.31814406878e+265 -.double 1.67000208312e+72 -.double 3.55982796048e+249 -.double 1.53330507666e+42 -.double 2.62687282137e-197 -.double 2.49062691828e+179 -.double 6.25669132571e+158 -.double 3.35601638359e+36 -.double 1.50386418756e+63 -.double 5.12170291382e-294 -.double 1.49700433875e+216 -.double 6.55161508618e+85 -.double 9.98296045776e+157 -.double 9.48366472533e-153 -.double 7.26385128503e+211 -.double 7.98529852509e-57 -.double 3.73016135908e-278 -.double 3.01468499506e+244 -.double 2.23003542277e-274 -.double 2.25282802562e-280 -.double 6.88448948902e+195 -.double 9.28763210474e-282 -.double 2.57125857362e-51 -.double 9.74036457142e-52 -.double 7.42921865172e-258 -.double 8.93847701985e-13 -.double 5.40292232488e-138 -.double 4.73582978148e-299 -.double 3.43071296021e-175 -.double 1.14250282372e-195 -.double 1.14543320616e+128 -.double 1.16740866783e-168 -.double 1.06719887093e+83 -.double 6.87467085769e+164 -.double 3.44753624881e+252 -.double 1.65965284838e+113 -.double 7.58319733626e+156 -.double 9.65485710164e-166 -.double 7.29168872748e-304 -.double 1.36170761373e+44 -.double 7.41522621356e-90 -.double 6.02008161481e+216 -.double 5.73640509322e+254 -.double 1.08150369466e-256 -.double 6.8212847887e-305 -.double 7.33449881755e-203 -.double 3.45041758642e+109 -.double 1.83689575178e-241 -.double 2.48972929287e+110 -.double 4.49670254325e-144 -.double 1.99460604037e+158 -.double 6.60433563307e+69 -.double 1.92993803618e+98 -.double 6.49764922845e+136 -.double 5.78430175983e+51 -.double 1.61698871753e-184 -.double 2.74525052494e-25 -.double 8.91590116672e+281 -.double 7.78224626828e+242 -.double 1.51143095683e-194 -.double 2.64133213465e-176 -.double 3.91176924327e+205 -.double 2.21571519092e-223 -.double 6.77363199095e+27 -.double 7.09919672532e-208 -.double 3.45287011934e-24 -.double 2.29680008063e-51 -.double 6.94892261976e-248 -.double 1.28462299862e-64 -.double 7.72615530642e-17 -.double 4.81045606916e-14 -.double 1.03645845952e-271 -.double 5.07196772333e-161 -.double 2.33022559889e-250 -.double 1.43279942384e-37 -.double 5.47437088361e+204 -.double 8.15095692898e+183 -.double 1.11223839039e-156 -.double 2.91554214933e-112 -.double 4.922159795e+269 -.double 2.75809609187e-46 -.double 2.69484655517e+228 -.double 3.70001612285e+279 -.double 1.51545033695e+257 -.double 5.10432208562e-74 -.double 7.53804735835e-143 -.double 7.75832120543e-169 -.double 8.48070633139e+245 -.double 234802432.674 -.double 1.83726510349e-249 -.double 0.0001854561896 -.double 2.12969869385e+63 -.double 1.37183498069e+110 -.double 5.74187381649e+301 -.double 8.50581951749e-288 -.double 2.42804462476e+29 -.double 5.12495195692e+180 -.double 2.54655955476e+123 -.double 4.64802542009e-138 -.double 3.50752610527e-34 -.double 3.74454842223e+104 -.double 1.8410245839e+219 -.double 3.07073123196e-86 -.double 7.6373604111e+81 -.double 4.28697995879e+245 -.double 1.89794961204e+206 -.double 1.68597363308e+272 -.double 1.36936740973e+293 -.double 2.45501277608e+111 -.double 8.69010674515e+24 -.double 9.91524840843e-61 -.double 6.86556794175e-12 -.double 1.41461741849e+280 -.double 9.5897063667e+122 -.double 0.967392033688 -.double 8.15909284893e+139 -.double 7661178146.1 -.double 0.0297596417128 -.double 6.85430509345e-184 -.double 9.83826777311e-305 -.double 1.78763723938e+68 -.double 9.25866678615e-139 -.double 1.75700225329e-212 -.double 4.60762364442e+194 -.double 6.86915789646e-264 -.double 1.40340751265e-142 -.double 5.92816307809e-256 -.double 8.61761534041e+54 -.double 2.80644473538e-95 -.double 3.5820712116e+100 -.double 6.01887791408e-306 -.double 2.49745290297e-90 -.double 3.94396830871e-308 -.double 2.92521901536e+272 -.double 3.87825643396e-50 -.double 1.35282196259e-145 -.double 3.81535528053e+258 -.double 2.28856479942e+149 -.double 2.54991631331e-255 -.double 1.38739503609e-193 -.double 4.8215249102e-192 -.double 2.26422197323e-293 -.double 3.34369679386e-103 -.double 7.62656201002e+229 -.double 3.66983683677e-286 -.double 1.78169327358e-217 -.double 4.60612195234e-149 -.double 3.02836706721e+134 -.double 8.2298507275e-140 -.double 2.27791356655e-60 -.double 4.63574770972e-215 -.double 4.82378568058e+137 -.double 2.65705890663e+122 -.double 1.13597712208e+96 -.double 2.10957765126e-168 -.double 4.24205664549e-99 -.double 3.08115112694e-93 -.double 9.96752679734e+19 -.double 8.11978923827e-180 -.double 5.07221244125e+105 -.double 2.97413194578e-30 -.double 1.20447378442e+293 -.double 1.33618026863e-247 -.double 1.06556907913e-279 -.double 1.99171732622e-136 -.double 3.89915763521e+304 -.double 1.19654813231e-84 -.double 3.51849544639e-196 -.double 1.8780926204e-159 -.double 1.4288853234e+38 -.double 1.87471548528e+218 -.double 2.80388732989e+88 -.double 1.02372269699e+44 -.double 7.449960322e-261 -.double 6.70541852557e-199 -.double 9.07230587921e+132 -.double 4.68226874817e-185 -.double 7.74906918298e+117 -.double 4.90268899189e+173 -.double 7.92125065985e+236 -.double 8.44108370458e+30 -.double 1.02415666216e+305 -.double 3.69589852158e-52 -.double 3.76138133775e-202 -.double 1.15695056347e+194 -.double 6.56445118985e-216 -.double 3.19171059725e+119 -.double 8.90157532616e+266 -.double 2.05260150746e-280 -.double 6.31366696861e-139 -.double 9.95481874105e+305 -.double 5.70345421357e+41 -.double 1.21198536331e+174 -.double 3.23235026811e+154 -.double 1.22453453087e-107 -.double 6.7600977983e+105 -.double 5.43533330671e+287 -.double 2.38876547578e-92 -.double 1.62758433322e+170 -.double 3.98988249289e-65 -.double 7.56431577058e+34 -.double 1.57503939753e-171 -.double 1.36743876115e+56 -.double 4.62223342476e+233 -.double 8.78853557619e+278 -.double 7.59699726379e-171 -.double 3.67094111616e+114 -.double 4.87906504197e-179 -.double 5.30919894588e-230 -.double 7.31320647926e-230 -.double 4.55704127829e+250 -.double 1.28208647662e-181 -.double 1.57061904376e-228 -.double 6.16598904011e+300 -.double 2.73721030546e+292 -.double 2.68686753697e+104 -.double 3.64571868545e+235 -.double 2.536604893e-128 -.double 9.05562731397e-247 -.double 1.61255235398e-269 -.double 4.28135714761e+228 -.double 3.17843379575e-157 -.double 7.04561960756e+238 -.double 1.92915085344e-63 -.double 2.32042530707e-190 -.double 5.09909197052e+47 -.double 9.32172992514e+67 -.double 6.81388668351e+163 -.double 2.46463077464e+89 -.double 6.62267242098e+221 -.double 8.41955593073e-166 -.double 9.37682514309e-38 -.double 1.87819877047e-205 -.double 5.16502472795e-75 -.double 2.37853244497e+70 -.double 5.55912569518e+216 -.double 1.92867207202e-86 -.double 3.76180965397e-184 -.double 7.3233747468e+119 -.double 9.3164436078e-33 -.double 1.22484135224e-158 -.double 1.01639843591e+129 -.double 8.50365106977e+171 -.double 4.24148940829e+18 -.double 9.66574185203e-56 -.double 6.04939930943e-66 -.double 6.4251429095e+262 -.double 5.36650547654e+13 -.double 1.72811364339e-186 -.double 9.75436753175e-18 -.double 2.15685196513e+138 -.double 9.09988904355e+132 -.double 3.43532790836e-127 -.double 6.55407056864e-209 -.double 5.43873445917e+212 -.double 8.36218058808e-283 -.double 3.87774325643e-244 -.double 1.80664615148e+155 -.double 1.26876110253e-69 -.double 4.47930480468e-138 -.double 5.71165352816e+296 -.double 3.36694975039e-49 -.double 4.13335641272e+158 -.double 4.05810096873e-115 -.double 4.19607686267e-82 -.double 1.28061185067e+283 -.double 5.43995263473e+175 -.double 4.66608180478e-116 -.double 5.77162819468e-173 -.double 1.11119531495e+283 -.double 9.78539464249e-269 -.double 1.44566190827e+37 -.double 1.03783367389e+30 -.double 1.33086843448e+146 -.double 2.0525271461e-05 -.double 5.2404758194e-284 -.double 1.88025162003e+205 -.double 7.32105542374e+47 -.double 2.45430889092e-280 -.double 1.09514691129e+210 -.double 408.82416027 -.double 1.259979626e-36 -.double 9.60370371618e-281 -.double 1.31696131373e+36 -.double 3.84242071509e+260 -.double 7.39600317514e+296 -.double 5.07390043334e+286 -.double 7.93624475039e+172 -.double 2.70408857785e+210 -.double 1.80105897037e-37 -.double 1.95939267677e+35 -.double 1.25548260704e-209 -.double 5.31036633437e-195 -.double 8.62736255917e+278 -.double 1.60097490928e-183 -.double 4.15051754478e-104 -.double 3.09400529766e-192 -.double 3.20031128358e-276 -.double 1.23032360862e+30 -.double 2.75079888069e-216 -.double 7.50112639783e+22 -.double 4.34073907616e-46 -.double 1.44387880065e+294 -.double 1.23345366903e+113 -.double 2.76508677506e+95 -.double 1.05915828553e-20 -.double 1.03276354603e-97 -.double 2.08116185653e+247 -.double 5.03673933657e-192 -.double 3.39132674943e-188 -.double 3.94662728099e-25 -.double 8.42464851589e-51 -.double 7.22561917183e-158 -.double 5.11798940407e-285 -.double 1.51253323016e-195 -.double 1.94914506974e-69 -.double 2.66862491361e-153 -.double 1.30777792655e-167 -.double 1.62086857102e-104 -.double 4.4183698076e+246 -.double 8.47059040033e+18 -.double 3.09655865142e+275 -.double 2.81115624301e+69 -.double 3.64885102064e-121 -.double 2.78270561795e+211 -.double 1.72758500292e+192 -.double 3.60491968685e+229 -.double 0.0123602852853 -.double 3.34486526036e-119 -.double 1.58680573138e-178 -.double 3.79727915992e-18 -.double 1.82750999666e+232 -.double 3.02721141065e-249 -.double 1.00112075902e-157 -.double 4.71382117767e-251 -.double 9.16605423336e+94 -.double 1.82403634402e+149 -.double 1.50926932945e+57 -.double 2.95024846492e-134 -.double 1.58624974208e+307 -.double 1.0958503677e-258 -.double 7.25287989274e+292 -.double 9.10331644817e-11 -.double 1.18636290919e+53 -.double 7.17285410378e-260 -.double 2.51752270271e-132 -.double 9.36405686767e-298 -.double 9.06891124199e+164 -.double 5.35467013409e-275 -.double 7.07492204048e-125 -.double 1.62943814131e-21 -.double 8.87242728908e+195 -.double 7.007183795e-88 -.double 1.0012170659e-188 -.double 3.686800172e+137 -.double 2.57416688395e+230 -.double 2.88217432575e+68 -.double 2.30183824371e+157 -.double 1.28919442265e-149 -.double 5.55863568294e+38 -.double 3.09766358039e+59 -.double 5.22857159571e+97 -.double 1.8365691383e+194 -.double 6.14276962506e+50 -.double 1.53061752154e-227 -.double 9.83622442306e-166 -.double 2.40597538631e-262 -.double 1.08308788299e+49 -.double 7.31669232623e+19 -.double 3.58477452757e+200 -.double 5.53409033445e+91 -.double 1.00617748975e-171 -.double 3.83738656059e+14 -.double 1.08161485975e-129 -.double 8.42751496838e-251 -.double 9.82223205661e-238 -.double 1.43716947877e+192 -.double 4.18851195525e-92 -.double 4.99733319738e+297 -.double 2.47229395327e+14 -.double 2.12736381477e-125 -.double 5.45033459992e-21 -.double 2.94772806928e-19 -.double 4.09485457609e+125 -.double 1.22019087452e-233 -.double 1.58092836604e+276 -.double 8.31728269791e-63 -.double 5.8900897612e+219 -.double 9.64170910323e+232 -.double 7.22683705283e+19 -.double 2.49899833645e+276 -.double 1.03947503387e+176 -.double 6.15212538425e-264 -.double 1.16550626498e+223 -.double 5.74940762629e-178 -.double 5.46063730936e-153 -.double 1.45432878966e+265 -.double 4.06077943144e+65 -.double 1.48385629733e+191 -.double 3.5429401039e-122 -.double 5.83443849729e-43 -.double 1.40165293996e-275 -.double 5.01251331285e+20 -.double 2.77782263736e+127 -.double 60.2761876159 -.double 6.02772249129e-173 -.double 36778.4755653 -.double 3.06321942732e-249 -.double 5.58101603734e-236 -.double 3.72193330629e-96 -.double 1.70859412868e-133 -.double 1.49011889876e-67 -.double 7.97047841474e+176 -.double 2.86657530335e-202 -.double 1.1735466151e+93 -.double 1.4858315275e+302 -.double 4.97716218618e-34 -.double 2.11090558589e-256 -.double 5.2212324546e+234 -.double 8.35465082964e-35 -.double 5.27316883722e+86 -.double 1.75473423207e+52 -.double 5.24990156849e-98 -.double 1.22843174585e-58 -.double 1.67774604332e-286 -.double 2.40207164856e-240 -.double 1.39396938181e+163 -.double 2.99278564558e-288 -.double 1.62294953318e+17 -.double 2.05601706292e+267 -.double 3.94053885161e-87 -.double 8.1096881035e-14 -.double 4.66907836727e-291 -.double 3.98554313197e-240 -.double 1.98027631811e-300 -.double 5.36285906626e+270 -.double 5.09205042757e+199 -.double 3.7675837484e+35 -.double 4.05744474124e-171 -.double 1.96965331838e+174 -.double 4.53925196914e-50 -.double 2.64524692746e+168 -.double 8.91650893727e-204 -.double 2.97628817817e-07 -.double 2.45129189866e-30 -.double 1.301934756e+17 -.double 3.58367653593e-163 -.double 1.27890409452e-249 -.double 1.04296514045e-185 -.double 1.62090391391e-80 -.double 2.21418638687e-290 -.double 3.30893087259e-18 -.double 2.60034210421e+145 -.double 3.33072001556e+272 -.double 1.72783894233e-121 -.double 7.44853651486e+306 -.double 7.72916727835e+287 -.double 1.0448726894e+120 -.double 4.85568861558e-202 -.double 5.99710826739e+141 -.double 6.1246399958e-131 -.double 2.08679755671e-48 -.double 1.08074654764e-101 -.double 1.64189524736e-113 -.double 8.38937810659e-243 -.double 9.86962452579e+117 -.double 3.80669221292e+169 -.double 1.19399371854e-211 -.double 5.34001869323e-214 -.double 4.75840279561e-159 -.double 2.33644284717e-200 -.double 1.16379224184e-217 -.double 9.5792212298e-217 -.double 5.47509974518e-207 -.double 7.48321810936e+100 -.double 6.04807702671e-295 -.double 7.39596311115e-30 -.double 2.31494955662e+229 -.double 1.15323847484e+77 -.double 1.37558506711e+279 -.double 2.10734836139e-186 -.double 4.05469207869e+193 -.double 7.50683281474e-235 -.double 2.19159545546e+256 -.double 5.33675084255e-72 -.double 1.50801806909e+195 -.double 2.60669772112e+16 -.double 5.32451511474e-307 -.double 7.73304881561e-128 -.double 1.21509716485e+44 -.double 2.32334825868e-57 -.double 1.44815511886e-282 -.double 7.34131682337e+178 -.double 4.07429750909e-69 -.double 3.67908880228e+164 -.double 2.98770643428e+97 -.double 1.4329425053e+264 -.double 5.84955256089e+38 -.double 6.30393206708e-75 -.double 6.96750746559e-245 -.double 1.59764603769e+174 -.double 5.3876593793e-160 -.double 8.27200723785e+42 -.double 7.4062338879e+295 -.double 5.46460016791e+23 -.double 2.18621352378e-291 -.double 3.15053747268e+79 -.double 8.74715921019e-244 -.double 3.97545791649e+146 -.double 1.26183820558e+265 -.double 4.87747265347e-125 -.double 3.98734557608e+195 -.double 0.0494063043969 -.double 1.83007796788e-240 -.double 4.87533800406e+23 -.double 2.00718908874e-276 -.double 5.19964449177e-149 -.double 1.02508718064e+296 -.double 3.88006395234e+107 -.double 1.87707468193e-54 -.double 4.95773816382e-86 -.double 4.28585899901e-56 -.double 3.86053608889e-62 -.double 4.23138816603e+92 -.double 7.8900237055e-100 -.double 2.74342575447e+225 -.double 9.47093756244e+228 -.double 2.19423460188e-44 -.double 1.74482980137e-234 -.double 4.72388890536e-23 -.double 1.11112457834e+105 -.double 18080.8285683 -.double 3.94772332736e+94 -.double 2.51416582458e+113 -.double 2.91911598294e+113 -.double 2.64528933727e-285 -.double 4.94940169084e+144 -.double 1.47375885783e-151 -.double 5.06837845555e-68 -.double 9.23240648895e+126 -.double 9.56257262727e-213 -.double 7.3783920177e+130 -.double 3.38131302199e-128 -.double 5.30873773584e+140 -.double 4.81169496755e+90 -.double 9.87236399053e+306 -.double 5.03522579818e-29 -.double 1.56841961225e+50 -.double 1.10494219537e-190 -.double 9.06813533706e+260 -.double 7.22987057493e+71 -.double 1.21895355829e+305 -.double 3.51617274436e-78 -.double 3.18894874006e-271 -.double 8.55934840644e+158 -.double 1.04678785926e-76 -.double 5.05593861994e+137 -.double 6.79939748405e-58 -.double 6.26410665551e-88 -.double 6.22330742304e+279 -.double 8.39816672092e+55 -.double 3.00439430131e-16 -.double 2.38862651304e+276 -.double 2.55787457959e-23 -.double 2.00827602552e-92 -.double 2.62102777586e-275 -.double 4.10557004573e+269 -.double 1.42850683212e-28 -.double 0.00188312234992 -.double 2.68269431074e+26 -.double 2.10962240476e-51 -.double 1.09013797963e-126 -.double 130997177.404 -.double 3.43395625571e-245 -.double 2.23784595177e+294 -.double 3.92171159183e-248 -.double 8.8823550348e-69 -.double 25527372288.6 -.double 2.42669318716e-70 -.double 3.41923137769e-74 -.double 4.81491440229e-306 -.double 0.000100421946861 -.double 2.68090756858e+88 -.double 2.41517924639e-23 -.double 7.07344603378e-293 -.double 4.13073165386e-259 -.double 4.49281278571e-166 -.double 9356663492.07 -.double 3.45544141553e-81 -.double 1.30415790167e+141 -.double 6.77629224235e-127 -.double 1.90026420788e+83 -.double 1.96994465428e-185 -.double 1.19214637266e+190 -.double 9.4325999919e+193 -.double 9.34299410197e-119 -.double 1.14159515535e-267 -.double 9.9949238476e-32 -.double 5.07373276908e+192 -.double 1.9889123399e+215 -.double 1.35147853561e-216 -.double 7.37254507227e-249 -.double 1.20483023166e-213 -.double 1.12067431887e+72 -.double 7.56796989297e+33 -.double 4.97807865374e+36 -.double 1.39196402957e+193 -.double 2.74885962831e-239 -.double 2.93743347231e+300 -.double 1.78934105134e+173 -.double 1.51835092675e-58 -.double 6.71110099404e-57 -.double 1.98509711942e+230 -.double 1.26152816226e-57 -.double 2.23556978274e-299 -.double 4.00736785576e-88 -.double 5.26491489651e+220 -.double 6.62622152415e-12 -.double 7.16781583715e-171 -.double 4.41253099925e+291 -.double 7.58980748327e+142 -.double 3.64826997417e+40 -.double 3.45181740173e+80 -.double 3.64568474059e+13 -.double 5595.8080679 -.double 4.21298760696e-236 -.double 1.03221345536e+269 -.double 3.58627009519e+93 -.double 2.16881395828e+69 -.double 3.66806361144e-185 -.double 2.95702189867e-44 -.double 1.30479804751e-176 -.double 5.1348050033e+20 -.double 8.12496679453e-280 -.double 2.75189736381e-297 -.double 6.63525060131e+297 -.double 6.23886897938e-247 -.double 9.39921565519e-15 -.double 6.79663848155e+256 -.double 5.06362836839e+149 -.double 2.84121167032e-244 -.double 1.58059740895e-198 -.double 2.36847497427e+27 -.double 7.27127728044e-129 -.double 7.9880872965e+201 -.double 8.71982832837e+28 -.double 1.47946851269e-141 -.double 6.99305685471e+264 -.double 1.04197968535e-76 -.double 1.0804415239e+141 -.double 4.62226571237e-302 -.double 5.61813960478e-212 -.double 1.60442154808e-274 -.double 1.76094163124e+74 -.double 3.36765994618e-197 -.double 6.57828941502e-226 -.double 7.79054145966e+179 -.double 3.94743574562e-27 -.double 6.1032140388e+64 -.double 4.07688976103e+211 -.double 4.0504927363e+223 -.double 8.98178487071e-131 -.double 9.15154131958e-186 -.double 1.38997138344e+166 -.double 9.74858737448e-175 -.double 1.19160637173e+187 -.double 1.19249001579e-94 -.double 1.24234350327e-51 -.double 1.15542528948e-131 -.double 6.43821025521e-220 -.double 4.13362363202e-216 -.double 2.81557939235e+189 -.double 1.19154708742e+120 -.double 8.33057094139e+192 -.double 2.63836777904e-106 -.double 2.4906248541e-92 -.double 2.53519839854e-127 -.double 3.26309211659e+246 -.double 1.53568582864e+152 -.double 1.57240731946e+175 -.double 2.13250912315e-42 -.double 8.46725145119e+272 -.double 1.5636530984e-169 -.double 9.59982450974e-248 -.double 6.31403479774e+292 -.double 7.98888609298e-89 -.double 8.95099036913e-172 -.double 8.9932822097e-145 -.double 4.58673153367e+262 -.double 4.78325661359e-263 -.double 2.66858121069e-201 -.double 1.97366503885e-194 -.double 1.9510446129e+157 -.double 2.28611332375e+102 -.double 9.80169101046e+281 -.double 1.28151486089e-93 -.double 4.98191469298e-229 -.double 6.96199210703e+43 -.double 4.32773691924e-60 -.double 7.02043539629e-140 -.double 1.15169573954e+295 -.double 1.14607158838e+219 -.double 422473.901947 -.double 3.25337631782e+150 -.double 148.426999214 -.double 9.19263648759e-21 -.double 8.85625572388e-71 -.double 9.16497939566e-265 -.double 1.34002940195e-72 -.double 4.64376693877e-207 -.double 479742.092783 -.double 1.69708497299e-124 -.double 4.55001882396e-234 -.double 3.79235898996e+284 -.double 0.369271132689 -.double 9.64197513435e-256 -.double 6.00103043326e+305 -.double 6.16620122365e-122 -.double 5.5098215579e-43 -.double 1.04968122983e+159 -.double 3.25651065194e+149 -.double 4.40243474499e+55 -.double 5.4541141328e+148 -.double 9.68072276443e-148 -.double 1.89292789911e+75 -.double 2.27908861169e+77 -.double 1.00294983444e+97 -.double 8.5127218762e+112 -.double 2.24193078313e+292 -.double 1.66474249271e-19 -.double 2.52122883937e+273 -.double 4.03006791419e+241 -.double 7.43375276536e+110 -.double 2.01380782784e-286 -.double 7.61078507377e-253 -.double 1.27898765586e+219 -.double 4.20044538849e+74 -.double 1.07530228978e-103 -.double 2.16776910531e-47 -.double 7.40380294319e+166 -.double 7.2687908525e+99 -.double 1.67730073468e+113 -.double 3292.83839862 -.double 2.27452414721e+133 -.double 3.56441352761e+275 -.double 3.00053645107e-157 -.double 5.68490268819e+236 -.double 1.32770038199e+306 -.double 3.74721949205e+109 -.double 7.55132726282e-308 -.double 1.16842866328e-305 -.double 5.64749291105e+194 -.double 1.94591187995e+305 -.double 12931155.2846 -.double 4.90986848744e-43 -.double 1.54447658379e-175 -.double 1.66853011314e-247 -.double 5.3654531423e-239 -.double 2.93161676608e-117 -.double 8.84083877669e+152 -.double 1.82137744264e+245 -.double 1.24467622258e+295 -.double 1.16676120726e+144 -.double 2.98701959088e-283 -.double 2.22206008105e+69 -.double 3.00921461209e-53 -.double 9.46388725213e-12 -.double 3.00797800102e-19 -.double 7.02799957735e+76 -.double 2.05548602719e-243 -.double 4.41933717132e+20 -.double 1.90124188386e+191 -.double 1.99800636696e+283 -.double 2.96661469838e-201 -.double 5.59094691398e-99 -.double 2.95499228249e-77 -.double 3.46457739807e+305 -.double 6.95543652221e-175 -.double 4.97486338725e-177 -.double 1687.41346693 -.double 6.94727632417e+297 -.double 7.10619144735e-37 -.double 5.31288010712e-298 -.double 2.13473137013e-255 -.double 2.54558749267e+147 -.double 2.17790284289e+220 -.double 1.55824182244e+293 -.double 3.4305003115e-135 -.double 3.55800280762e-26 -.double 3.75490575116e-147 -.double 1.1149438773e-80 -.double 1503042.05769 -.double 1963.39486251 -.double 1.48895380958e-138 -.double 3.74996385603e+24 -.double 1.19360655881e-265 -.double 5.40463040129e-273 -.double 4.19380768275e-257 -.double 9.57729846248e-125 -.double 1.29440156759e-118 -.double 1.66973901837e-187 -.double 2.77619567505e+99 -.double 1.04433873179e+186 -.double 2.67315846078e-90 -.double 1.57993068555e+234 -.double 6.96005170911e-159 -.double 6.29163005162e-12 -.double 1.26817185741e-64 -.double 1.93720149887e+121 -.double 4.01040036582e-22 -.double 5.05335568579e-261 -.double 3.96891739347e-267 -.double 1.16833989064e-203 -.double 3.32680160472e+102 -.double 8.59324952888e-102 -.double 3.10573481883e-181 -.double 8.42469123975e-276 -.double 1.69523047901e-50 -.double 7.83798731788e-81 -.double 2.34113831585e-243 -.double 3.71598789254e+290 -.double 1.78213745251e+132 -.double 8.93828819619e+198 -.double 5.43018446446e+77 -.double 5.5429721997e-278 -.double 8027356.63087 -.double 0.0115798623551 -.double 2.7850022336e+63 -.double 7.68997093395e-222 -.double 5.29407358027e-87 -.double 1.68135184217e-276 -.double 3.03771587762e+215 -.double 2.895590083e+193 -.double 9.76853373038e+195 -.double 4.48573289204e+75 -.double 6.41226427023e-240 -.double 3.33118622912e-263 -.double 2.16320819761e+86 -.double 6.58681624323e+161 -.double 1.70814394323e-283 -.double 7.85777508839e-87 -.double 3.53834196022e-131 -.double 1.72107182669e-298 -.double 4.91849641805e-98 -.double 3.99521244706e-120 -.double 0.000112800198042 -.double 0.000303085074447 -.double 3.22864856305e+48 -.double 53582366425.1 -.double 9.13207822955e+210 -.double 6.70252608023e+85 -.double 5.94127341032e-54 -.double 2.62691146725e-152 -.double 1.8671091063e-148 -.double 1.93779296201e-13 -.double 1.62526801732e+53 -.double 1.54485444205e+217 -.double 4.05667168428e-88 -.double 2.58917532453e-185 -.double 2.3345316342e-298 -.double 5.65859674689e-281 -.double 3.22425722618e-198 -.double 9.5884252185e+182 -.double 4.19566423116e+33 -.double 1.96267505242e+67 -.double 8.52312193371e-203 -.double 1.58320423353e+100 -.double 6.1908869641e-154 -.double 5.92237086041e-264 -.double 1.05839390879e+289 -.double 3.36697043193e+224 -.double 4.36930771047e+161 -.double 2.69098156381e-67 -.double 9.60227983247e-268 -.double 2.04471830151e+105 -.double 1.97512038691e-245 -.double 9.95386800579e-138 -.double 2.00278558998e+158 -.double 1.01803953964e+30 -.double 6.08475136883e+218 -.double 1.9077537569e-94 -.double 3.99032984575e+282 -.double 1.21735654466e+89 -.double 1.5207315305e-259 -.double 1.31295891122e-40 -.double 1.59406083612e-82 -.double 8.32020545441e+114 -.double 1.03346479284e-293 -.double 1.37807188294e-08 -.double 3.67299539767e-288 -.double 6.26496994931e-189 -.double 7.09456626062e+296 -.double 1.16106747777e-253 -.double 4.18853791233e+120 -.double 6.81193222865e-48 -.double 1.36847206017e-303 -.double 1.06758950426e-282 -.double 1.04696234142e+242 -.double 6.39380843123e+113 -.double 3.89874931572e+270 -.double 1.04592605161e-218 -.double 5.47008108133e-42 -.double 3.7113378566e+59 -.double 5.13792721359e+142 -.double 1.02193456466e-205 -.double 2.30930961038e+107 -.double 1.35559610596e-204 -.double 6.97561293971e-62 -.double 4.56685793592e+211 -.double 2.65030140524e+173 -.double 1.06382507298e+294 -.double 4.86793308288e-140 -.double 1.46353358664e-229 -.double 7.35873750294e+272 -.double 3.72374882765e-26 -.double 1.38354547238e-181 -.double 8.38486838284e-144 -.double 1.05314224379e-154 -.double 9.38703788154e-259 -.double 7.81280240699e+138 -.double 1.99738135568e+68 -.double 1.42329867236e+57 -.double 5.95789848072e-242 -.double 2.56566111239e-237 -.double 1.57160947878e+140 -.double 4.07307097769e-283 -.double 21642527.4141 -.double 1.01751229145e-14 -.double 3.39512118568e+149 -.double 5.52924904109e-184 -.double 1.95389094883e-287 -.double 3.09824449099e-188 -.double 7.50668392625e+35 -.double 2.52865892402e+38 -.double 6.90957227711e+61 -.double 6.38462586577e+68 -.double 9.60347898511e+108 -.double 3.59799945045e-144 -.double 6.92910606559e+271 -.double 2.0043049833e-138 -.double 5.3210940732e+165 -.double 6.24875137643e-254 -.double 2.24099065598e+193 -.double 5.70090648423e-214 -.double 3.82804364453e+264 -.double 1.21003419766e+38 -.double 5.52338342359e-05 -.double 4.06827619449e-261 -.double 1.45277329105e-06 -.double 1.15276460981e+16 -.double 2.42700448955e+257 -.double 8.42114456081e+101 -.double 1.83656600134e-186 -.double 5.92904967016e-48 -.double 9.09454606242e-152 -.double 2.46798977264e+230 -.double 1.42475969615e-280 -.double 1.80365356222e+32 -.double 2.58535073824e-238 -.double 9.86698794692e+296 -.double 1.99773579903e+95 -.double 8.53433009616e-176 -.double 1.32518393196e-197 -.double 2.23898301407e-45 -.double 5.65718176509e-290 -.double 7.98551445574e+286 -.double 2.68812443617e-100 -.double 2.10912478751e+153 -.double 2.84590564958e+296 -.double 2.41931380555e+23 -.double 1.46974720155e+106 -.double 2.33282510885e+214 -.double 1.96695323307e-156 -.double 6.51004040533e+252 -.double 4.61837130779e-149 -.double 5.66449136463e-168 -.double 1.40349757884e+190 -.double 5.78565045106e-299 -.double 3.70673515916e-129 -.double 2.45688779217e+173 -.double 1.80261272477e+25 -.double 9.30075880996e+259 -.double 9.05149041332e+92 -.double 2.10578663274e-190 -.double 2.38071317786e+17 -.double 9.3650534133e+129 -.double 6.07052689013e+41 -.double 4.24256831382e+298 -.double 2.31246263955e+247 -.double 8.7167959914e+291 -.double 8.82772394551e-157 -.double 2.2202492229e-203 -.double 6.41755153487e-290 -.double 3.66277849147e+117 -.double 1.38202668179e-280 -.double 9.67615462297e+190 -.double 1.00545032353e-264 -.double 1.31828966304e+215 -.double 5.89201666939e+16 -.double 6.5551666035e+28 -.double 2.96745358208e-98 -.double 1.9300468964e+121 -.double 2.78240444484e+304 -.double 1.74516294062e-150 -.double 1.78140782826e+109 -.double 6008386.40427 -.double 1.2066869521e-98 -.double 7.36268165806e-203 -.double 1.16673566722e+73 -.double 8.58908990561e-190 -.double 3.55126913919e+227 -.double 1.52667239096e+243 -.double 1.07655716314e+165 -.double 6.88851744376e-140 -.double 1.91508826529e+30 -.double 3.5729555342e-276 -.double 2.85683046422e-260 -.double 2.54389354859e+54 -.double 3.57037126714e-258 -.double 2.04779191187e+75 -.double 3.51985304031e-48 -.double 1.08350532565e-215 -.double 1.21875121579e-229 -.double 1.4643779826e+70 -.double 129705.275988 -.double 4.81184138203e-24 -.double 3.90563456563e+43 -.double 6.89948356466e-274 -.double 1.95650220364e+178 -.double 6.57207178896e-214 -.double 1.36333975438e+115 -.double 0.000447647764742 -.double 5.02044103177e-200 -.double 1.19831027566e+191 -.double 1.52962367483e-239 -.double 1.32583451691e-80 -.double 6.94426488635e-30 -.double 2.50532720291e-104 -.double 3.25200653798e+197 -.double 1.41087441054e-176 -.double 2.42007438198e-248 -.double 1.15573143336e+204 -.double 7.83869491025e-161 -.double 8.0175520155e+167 -.double 6.96303328718e-243 -.double 3.80166767992e-250 -.double 2.78645076624e-160 -.double 2.33818168109e-81 -.double 2.02116206736e+226 -.double 7.93887620039e+67 -.double 3.3622233789e+81 -.double 8.64976838854e+196 -.double 1.60916589005e+270 -.double 4.78334290513e+170 -.double 1.0207100266e-11 -.double 1.86196380635e-122 -.double 7.85808423398e+302 -.double 1.31640066281e-127 -.double 2.62993568429e-158 -.double 2.06101185892e-254 -.double 1.04704150627e-138 -.double 1.04199682046e+189 -.double 6.91311359168e+246 -.double 4.15450757708e+188 -.double 4.4383939758e-233 -.double 4.61578372179e-277 -.double 2.18691566895e+256 -.double 2.03036001931e+287 -.double 2.34730029105e-14 -.double 2.63379579956e+20 -.double 8.0738632492e-184 -.double 5.51851426075e-49 -.double 2.43119559186e+278 -.double 2.64402426044e-100 -.double 4.02129456735e+37 -.double 8.92484788953e+55 -.double 3.62018959529e-51 -.double 4.98320098985e-125 -.double 1.00303484012e+129 -.double 5.92124941539e-219 -.double 5.36923068533e+75 -.double 984648037473.0 -.double 2.34806983613e+47 -.double 2.89778684707e+155 -.double 1.7638862464e+305 -.double 1.41000282884e+152 -.double 7.21155210117e+221 -.double 6.13114889602e-22 -.double 5.41081515228e-184 -.double 4.28190492911e+233 -.double 1.10586883321e-270 -.double 7.21052579312e+81 -.double 6.85897231023e-271 -.double 148.931649565 -.double 1.74832243525e+133 -.double 1.89935650747e+180 -.double 1.20265640401e-149 -.double 4.15092650521e-308 -.double 3.15040850554e-242 -.double 2.71569835821e-194 -.double 2.65615012366e+31 -.double 1.53981393384e+246 -.double 1.1162774277e-279 -.double 2.00213977605e+69 -.double 6.39056008823e+155 -.double 9.26831829471e-255 -.double 4.24736646282e-127 -.double 5.00578055763e+70 -.double 3.3435975747e-15 -.double 3.2347199954e+246 -.double 7.17030945256e-144 -.double 4.03846334448e-49 -.double 4.9638815134e+67 -.double 1.40443324797e+85 -.double 1.76256680248e+238 -.double 4.46572851704e-41 -.double 2.57032062413e-243 -.double 2.98023191546e+216 -.double 1.22763961528e-131 -.double 3.86318459645e+137 -.double 1.7426302095e+247 -.double 6.56362123365e-07 -.double 1.08295741083e-182 -.double 6.85838790689e-136 -.double 1.7437857339e-100 -.double 3.57973646517e-289 -.double 1.54882717079e+70 -.double 1.49672396079e+17 -.double 3.49027421647e-102 -.double 2.20366869437e-263 -.double 1.14732754953e+33 -.double 4.82909487708e+162 -.double 1.69365992606e+33 -.double 1.88394338689e+288 -.double 5.85803815674e-151 -.double 2.62474653138e-76 -.double 6.11872846975e+88 -.double 5.772103201e-291 -.double 9.22160477576e-302 -.double 4.11388303944e-178 -.double 6.96052889015e+249 -.double 1.06985994615e+212 -.double 5.37684706915e+14 -.double 4.83812495893e-69 -.double 4.00077260329e+198 -.double 6.17427847353e-304 -.double 2.12545031713e+273 -.double 1.40922237568e+80 -.double 2.66809905481e-130 -.double 279850.701075 -.double 5.37249321506e-205 -.double 1.6048176928e+37 -.double 7.73169261084e+271 -.double 7.31227885274e-137 -.double 3.64613321354e+116 -.double 3.1607971665e+209 -.double 1.96921521106e-277 -.double 3.65074846804e+177 -.double 3.86215283697e-146 -.double 4.15058052556e+154 -.double 1.7706274152e+292 -.double 2.18753394486e-290 -.double 9.25244692939e+238 -.double 1.10156634649e-210 -.double 4.58164499932e-112 -.double 2.38359720672e+145 -.double 2.88013858129e+277 -.double 2.72752580105e-146 -.double 5.79633798426e+137 -.double 1.72668964129e-169 -.double 1.97001641643e+233 -.double 1.96650876198e+94 -.double 1.31115867405e+228 -.double 6.02486717887e+252 -.double 4.98444076266e-27 -.double 2.55209920508e-50 -.double 2.24176759088e-139 -.double 9.08720852049e-112 -.double 1.45914226443e+168 -.double 2.46282926864e+23 -.double 1.48169648855e+215 -.double 1.08405581555e-252 -.double 5.22664081312e+213 -.double 5.5565839891e-178 -.double 6.58341868052e-34 -.double 3.82124619453e-43 -.double 2.32079365681e+122 -.double 2.4939898437e-52 -.double 2.91155680211e+272 -.double 2.17703032222e+50 -.double 2.5467902048e-51 -.double 5.61519696645e-214 -.double 5.18062775223e+72 -.double 3.93416088167e-51 -.double 3.84142407435e-123 -.double 7.23639548575e-167 -.double 1.45066950231e-25 -.double 5.71532386061e-133 -.double 3.34240291011e-19 -.double 2.43948039314e-172 -.double 2.73979977556e+301 -.double 4.21959481478e-132 -.double 7.87243060418e+300 -.double 4.60477788781e-82 -.double 1.75621738796e-146 -.double 3.34521239996e-285 -.double 1.20947051329e-106 -.double 6.40817072455e+159 -.double 3.11374667266e-119 -.double 1.2175153294e+258 -.double 1.29482890767e-53 -.double 16426.1520459 -.double 9.7365323519e-164 -.double 1.77314093931e+273 -.double 2.24576292282e+122 -.double 1.31505233515e+269 -.double 2.55736781426e-25 -.double 2.24748156388e-205 -.double 1.29836958397e-112 -.double 6.98303378247e+235 -.double 6.65301892528e-207 -.double 3.13134956581e+247 -.double 5.71297860002e-285 -.double 4.12266303967e-156 -.double 1.75677187033e-250 -.double 1.59790592196e-260 -.double 2.8638468516e-136 -.double 2.04947258641e+298 -.double 4.53077258415e-230 -.double 1.24028480016e-180 -.double 6.00711580615e-127 -.double 4.58706138926e-188 -.double 1.61343142488e-177 -.double 6.82346345815e+186 -.double 1.77284783329e+229 -.double 5.92651719091e-96 -.double 1.06113093826e+129 -.double 4.92334175134e-124 -.double 1.21603695408e-281 -.double 7.20919353751e-32 -.double 3.27661972015e-254 -.double 1.51731467064e-123 -.double 7.24634874969e+49 -.double 1.59711947362e-12 -.double 1.12179634244e-270 -.double 7.56495068207e-274 -.double 1.18610157262e+257 -.double 7.83645051695e+82 -.double 6.75422723187e-276 -.double 2.38766058208e-234 -.double 1.05162276922e+272 -.double 7.82907545828e-194 -.double 4.33790284424e+296 -.double 1.02283042691e-119 -.double 9.44682203536e+238 -.double 1.17148623157e-291 -.double 2.33187819256e-203 -.double 2.78998298672e-91 -.double 2.99862746517e-174 -.double 1.22118625688e+147 -.double 8.16753700028e+245 -.double 2.16747271341e+76 -.double 40357229757.8 -.double 4.95121454665e-269 -.double 2.95282229164e-84 -.double 8.62765799478e+179 -.double 2.18435872878e+238 -.double 3.40313642758e-218 -.double 4.60202145184e+226 -.double 8.85032950722e+102 -.double 2.5669126274e+38 -.double 5.81218232948e+87 -.double 1.75368209512e+76 -.double 1.07733232815e+136 -.double 1.13379364349e-139 -.double 1.08842508496e+172 -.double 2.34169399547e+138 -.double 1.20810163721e+259 -.double 1.79500707314e+208 -.double 1.03606942844e+31 -.double 2.52603321934e-21 -.double 1.17574697387e-09 -.double 9.88185912207e-261 -.double 6.70892271944e-163 -.double 7.40611828986e+175 -.double 4.38642348435e-285 -.double 6.31913267017e-81 -.double 5.59204498535e+58 -.double 3.53810870663e+24 -.double 8.88706237044e-142 -.double 1.14923310768e-267 -.double 1.41028539098e+209 -.double 5.88861257755e+154 -.double 1.76036559353e+257 -.double 4.40323724786e+35 -.double 3.69568383156e-297 -.double 2.08275947296e-49 -.double 1.36835734746e+82 -.double 4.63260169755e-118 -.double 3.45791213361e-232 -.double 2.80145849326e-278 -.double 5.13250147148e+41 -.double 4.82424509175e+306 -.double 4.19620484248e+61 -.double 9.29476284476e+293 -.double 2.23159211403e-219 -.double 1.97589229684e-209 -.double 5.83911190306e+124 -.double 6.21274031588e-223 -.double 8.20980602683e-216 -.double 1.00407090794e+154 -.double 1.1023266799e+135 -.double 2.07688551157e+234 -.double 5.44209676492e+170 -.double 3.40746251995e+60 -.double 1.39462225291e-98 -.double 3.75578944646e+100 -.double 9.59453820202e+136 -.double 2.68238621012e-183 -.double 1.03459468254e-57 -.double 3.0302791483e-175 -.double 4.43121628625e-157 -.double 1.99594408041e+83 -.double 8.80620529834e+238 -.double 7.78563022002e-263 -.double 2.29742827829e+291 -.double 6.43659128808e+119 -.double 2.595064552e-15 -.double 1.65851750096e+97 -.double 8.89215800638e+57 -.double 1.93256417374e-296 -.double 4.2144132991e+196 -.double 2.24044288495e-277 -.double 4.59002983953e-132 -.double 6.83913750503e+140 -.double 2.09950410732e+247 -.double 3.34886922987e-274 -.double 1.0301593413e+40 -.double 1.95167588781e+44 -.double 4.81966612437e+270 -.double 2.30449495008e+45 -.double 4.44670849404e+189 -.double 4.9914942985e-117 -.double 5.8164074147e-37 -.double 2.30277231907e+245 -.double 1.25174682999e-171 -.double 3.13751266773e+27 -.double 9.33820258267e+148 -.double 1.26290824798e+150 -.double 2.23634152416e+288 -.double 3.67149738047e+50 -.double 1.24857330954e+117 -.double 1.7214579633e-74 -.double 3.04960291323e-130 -.double 1.08792477675e-139 -.double 1.07737483975e+155 -.double 8.95856462077e+291 -.double 4.0110132488e-44 -.double 1.53092162114e+81 -.double 2.23421335157e-190 -.double 3.07156721165e+85 -.double 3.47404515583e-62 -.double 3.46704247075e-281 -.double 1.11767644045e+117 -.double 3.6218016113e+156 -.double 1.69862307947e+167 -.double 1.02662181132e-166 -.double 2.10403194681e-35 -.double 2.69811605864e-219 -.double 3.32913565692e+153 -.double 7.33981906313e-60 -.double 2.26437392681e+75 -.double 1.40075695095e-116 -.double 3.88985925653e+56 -.double 2.56205756982e-126 -.double 3.9916840707e+93 -.double 61805790127.6 -.double 1.17456445414e-254 -.double 2.67519340407e+276 -.double 9.98070884048e+288 -.double 8875280572.46 -.double 7.65441038397e+41 -.double 6.44955101863e-201 -.double 1.22906288055e-123 -.double 2.1435370374e+15 -.double 6.01686983056e-109 -.double 7.14407446828e-36 -.double 3.22586333083e+207 -.double 2.07941254614e-64 -.double 1.40235392726e-89 -.double 1.49295663233e-275 -.double 2.68169866289e-105 -.double 2.91746907877e+231 -.double 5.02406845639e+53 -.double 4.81250528114e-120 -.double 1.63864775355e+297 -.double 7.42275113963e-259 -.double 1.71197889483e-13 -.double 5.62177613619e+253 -.double 2.03563952066e-19 -.double 2.52611330068e+271 -.double 9.75843792022e-293 -.double 8.34123203277e+132 -.double 1.02187435439e-224 -.double 6.34496079195e-291 -.double 2.60988998197e-281 -.double 3.35897967846e+49 -.double 2.63319388722e-79 -.double 9.35972926373e-240 -.double 6.61614511633e+53 -.double 6.35583226994e-103 -.double 5.23010267753e+118 -.double 77218074.5524 -.double 0.249030379369 -.double 1.09909056501e+233 -.double 1.01415617914e+14 -.double 4.5455838254e+89 -.double 2.52643481944e-270 -.double 2.04800579443e+16 -.double 9.56365592853e-109 -.double 1.61332806914e+120 -.double 1.36830521915e+292 -.double 5.987665494e-236 -.double 2.10447600066e+282 -.double 1.66563366808e+252 -.double 4.36982694623e-66 -.double 1.24872874372e-110 -.double 6.7025539363e-18 -.double 4.60751410796e-16 -.double 6.07083205092e-148 -.double 4.32282867559e-222 -.double 4.25654840334e+279 -.double 2.63823308942e-67 -.double 1.78835922854e-85 -.double 4.88206629388e+87 -.double 4.99845448543e-109 -.double 2.09250660097e-162 -.double 1.16969105619e-201 -.double 2.45754803976e-23 -.double 7.04334453451e+283 -.double 5.47309534244e-33 -.double 4.34325697513e+196 -.double 1.7842190401e-69 -.double 4.9158885607e-24 -.double 8.42973736811e+160 -.double 1.24115290725e-308 -.double 1.98197647124e+144 -.double 28644571724.1 -.double 7.73985922839e-34 -.double 2.41938230353e-201 -.double 0.000193194806642 -.double 2.77062506275e-308 -.double 1.7255184336e-178 -.double 2.64596085584e+108 -.double 5.23993833976e-142 -.double 3.52803178171e+193 -.double 6.52133173934e-23 -.double 1.79587246664e-140 -.double 1.13946669617e-36 -.double 3.22052125342e-140 -.double 2.27391669744e-112 -.double 3.35535119039e-126 -.double 3.48601368206e-14 -.double 2.45014949967e+168 -.double 9.49319319567e-264 -.double 1.28240991023e-30 -.double 3.85172290261e-26 -.double 1.36432859364e+281 -.double 5.89811674302e+299 -.double 1.79771805032e+70 -.double 1.61609194304e+45 -.double 1.14112441268e-175 -.double 1.03179255894e+239 -.double 1.81986969724e-93 -.double 3.07392735844e-146 -.double 1.56414095055e-285 -.double 2.10945457818e+51 -.double 3.69235125133e+119 -.double 7.70445634966e-95 -.double 1.08416111226e+256 -.double 1.42406673703e-113 -.double 1.246158705e-271 -.double 1.53282549443e-214 -.double 5.48750809929e-111 -.double 4.67249923196e-186 -.double 2.65128891328e-192 -.double 7.44887368037e+28 -.double 8.04417356125e+263 -.double 4.93403166417e-227 -.double 4.84739415032e+129 -.double 1.01807439036e+295 -.double 8.49103961966e+288 -.double 7.81324748062e+65 -.double 1.36111473929e+125 -.double 5.53801811225e+150 -.double 555668.456627 -.double 9.18916916353e+295 -.double 3.50059782726e+173 -.double 1.3946009856e+101 -.double 1.16735956252e-153 -.double 1.46579778648e-133 -.double 9.50309396177e-49 -.double 3.7685198187e-238 -.double 4.54816957554e-208 -.double 9.82515944951e-27 -.double 5.93140942689e-68 -.double 2.09437583897e-309 -.double 2.62041332969e-42 -.double 6.27967519712e+161 -.double 1.65445338732e+204 -.double 1.38918401154e-133 -.double 2.63001467433e-42 -.double 3.19427448832e+21 -.double 2.66393518427e+47 -.double 2.15305046773e-255 -.double 4.42842766901e+205 -.double 6.56258339198e-246 -.double 1.65987511486e-251 -.double 9.33349004816e-282 -.double 3.17537430355e-222 -.double 3.83400406784e-124 -.double 1.54587798905e-200 -.double 7.56510346033e-118 -.double 82794.5601889 -.double 9.6336725098e-250 -.double 2.01671960952e-179 -.double 4.14200388828e-274 -.double 1.94614302488e-54 -.double 1.05205317438e-273 -.double 4.18201053721e+217 -.double 1.25372806846e-54 -.double 2.69550970082e+164 -.double 5.53179736541e+17 -.double 5.59759721097e+93 -.double 2.32105116263e-288 -.double 7.07430944233e+103 -.double 2.00107073761e+213 -.double 7.33433689767e-219 -.double 3.19784639821e-26 -.double 6.1294950124e-273 -.double 3.25281059304e-59 -.double 1.18508626138e+255 -.double 4.87631721837e-220 -.double 8.11453098117e+107 -.double 8.78728024765e-247 -.double 8.09959276727e+142 -.double 3.54132111459e-82 -.double 8.51493554879e-147 -.double 1.79903341293e+179 -.double 9.06007188478e+304 -.double 2.99695776296e+305 -.double 4.25940068032e-247 -.double 1028743399.4 -.double 5.65011692643e+69 -.double 3.65675046894e-221 -.double 3.08123182495e-165 -.double 2.62076147516e+25 -.double 7.77362277253e+199 -.double 7.11416141262e-41 -.double 1.94133088971e-302 -.double 2.83227189058e-263 -.double 5.77123253597e+130 -.double 2.87095743692e+143 -.double 1.28429640876e-146 -.double 1.92199112394e+140 -.double 7.52934118632e-154 -.double 2.90973261984e-168 -.double 1.45304830831e-210 -.double 5.25949206471e-149 -.double 1.17934675899e-223 -.double 7.05174245115e+116 -.double 1.71917972334e-145 -.double 6.34202727818e-205 -.double 9.73503254404e-184 -.double 8.06828148773e-190 -.double 3.58196518856e+64 -.double 7.57186959502e-194 -.double 3.74168638806e+263 -.double 1.06210494008e-94 -.double 1.13314372936e+156 -.double 1.01068052747e+117 -.double 1.50900978205e-55 -.double 1.60777351227e-88 -.double 8.94794697933e-270 -.double 1.31374628903e-104 -.double 1.77505529883e-73 -.double 2.2718187333e-69 -.double 7.86448889038e-07 -.double 2.64131994403e+134 -.double 1.72629893139e-73 -.double 2.28257364756e-155 -.double 305.433955893 -.double 1.91819920456e+71 -.double 9.42933075641e-101 -.double 3.1176364663e+18 -.double 1.5561222469e+217 -.double 9.59832382296e+95 -.double 4.18662654686e-58 -.double 3.81009395897e-154 -.double 1.8126648899e+289 -.double 5.80376855536e-157 -.double 1.55904655344e-225 -.double 1.85525876652e+225 -.double 2.4441380051e-278 -.double 3.01191650986e+295 -.double 3.1911405724e+55 -.double 3.34071011277e+242 -.double 2.08669378857e+229 -.double 5.06146985346e+250 -.double 8.52236498476e+199 -.double 2.54908098397e+206 -.double 8.75982878677e+170 -.double 1.05354906706e+23 -.double 1.44182811126e-136 -.double 7.44043395366e+295 -.double 2.95978040609e+75 -.double 5.79774709004e+226 -.double 8.62025147944e+282 -.double 2.27816483968e-176 -.double 2.39100384917e-238 -.double 7.24269347671e+211 -.double 4.27650560662e-258 -.double 1.30655197545e+26 -.double 2.94535239019e-208 -.double 9.97280808329e+35 -.double 4.03955870592e+186 -.double 1.29846290731e-153 -.double 4.68248417776e-81 -.double 1.12177539196e-296 -.double 2.87750952608e-95 -.double 2.6734507184e-263 -.double 9.90749191419e-299 -.double 2.71429645502e-276 -.double 1.69743232697e-84 -.double 1.96946157291e-210 -.double 1.12708355394e-231 -.double 6.80887458054e-108 -.double 6.0389141789e-220 -.double 2.3328844431e-25 -.double 1.71104689076e-255 -.double 5.20028959992e+146 -.double 1.28458160627e+29 -.double 1.11837581508e+239 -.double 1.35259189259e+83 -.double 8.71589552609e-196 -.double 8.79591509054e-296 -.double 2.57203553154e-158 -.double 4.98717223243e+188 -.double 2.67670575465e-53 -.double 2.25083430287e-144 -.double 3.50744328965e+12 -.double 4.43261162456e-76 -.double 4.74737778896e-192 -.double 2.9262456301e+292 -.double 2.97216650777e+141 -.double 1.68254554102e-182 -.double 1.44374318766e+296 -.double 2.85646242914e+138 -.double 2.57349840326e+149 -.double 8.98231702631e-187 -.double 1.24415872137e-200 -.double 7.02060733222e-42 -.double 2.54547663751e-252 -.double 1.63505163943e+72 -.double 6.44976383632e-254 -.double 1.23279088298e-71 -.double 1.46842229031e+196 -.double 6.79714355849e-284 -.double 3.15847135994e-19 -.double 2.04668074192e-200 -.double 7.03666884473e-265 -.double 2.4274776978e+188 -.double 1.02389336826e-28 -.double 2.84231652884e-255 -.double 7.82485222977e+188 -.double 2.36629980052e+297 -.double 2.63262457387e-222 -.double 1.20407659146e+57 -.double 7.7592739036e+20 -.double 3.76915262699e-132 -.double 1.12048359982e-260 -.double 3.43689525771e-164 -.double 8.31332600908e+216 -.double 4.08466038376e-200 -.double 7.67175358915e+80 -.double 1.04289462237e+210 -.double 6.52673805583e+255 -.double 3.88049919233e-114 -.double 1.13484907745e-85 -.double 4.21143278605e-270 -.double 8.22808854342e-66 -.double 2.38171255418e+36 -.double 1.09893849515e+20 -.double 1.82609703126e-277 -.double 1.30976769176e+75 -.double 3.00156879215e+200 -.double 2.38396933415e+81 -.double 2.26058389744e-295 -.double 1.75982907939e+95 -.double 7.22537205327e+85 -.double 4.40904412781e-152 -.double 2.57915429111e-138 -.double 87737046.8935 -.double 3.28532731019e+13 -.double 4.44396075658e+183 -.double 1.8134377153e+13 -.double 5.01379017351e-302 -.double 1.74963300735e+289 -.double 2.38160563532e+49 -.double 1.94763906138e-209 -.double 3.33592496647e-06 -.double 2.47059946801e+34 -.double 1.25840356066e+51 -.double 1.04106450877e-200 -.double 2.15839742809e+259 -.double 1.35698891617e+275 -.double 1.86403964492e-23 -.double 2.77740226011e+26 -.double 6.88577033001e+25 -.double 9.81140600098e+293 -.double 2.0458079904e-103 -.double 4.35519367171e+215 -.double 1.97025955539e-212 -.double 3.97860258255e-68 -.double 1.35832219646e-52 -.double 1.1281589989e+256 -.double 7.45334069766e+187 -.double 8.20846056441e-106 -.double 3.84327405763e+37 -.double 2.38113937484e-203 -.double 1.37129471569e-303 -.double 2.26325289281e+296 -.double 1.09636448814e+169 -.double 5.5284111175e-264 -.double 2.26020060567e+105 -.double 9.03851487607e+235 -.double 2.23986209461e+169 -.double 1.74813939096e+33 -.double 3.49989204694e+173 -.double 7.83297521098e+205 -.double 5.39273756721e-18 -.double 2.67963234396e-244 -.double 1.120432298e+45 -.double 3.68160655693e-262 -.double 3.20187348827e+289 -.double 3.08812579871e+97 -.double 7.73914378989e-35 -.double 1.97777479026e+25 -.double 1.58288881273e-194 -.double 1.04928318087e+78 -.double 9.49236662833e+204 -.double 8.47486843825e-41 -.double 3.1652785645e+41 -.double 3.43024623886e+250 -.double 4.68141929709e-119 -.double 1.23177538362e-53 -.double 2.2555254038e-241 -.double 1.28579082782e-46 -.double 2.04942690529e+158 -.double 2.51393393988e-08 -.double 4.12567655236e+81 -.double 9.06984821524e+201 -.double 8.60281145083e-196 -.double 1.3138196704e+216 -.double 4.40605347379e-127 -.double 4.7098933621e-70 -.double 1.49879643956e+265 -.double 2.8753704458e-136 -.double 1.1349613208e+179 -.double 9.26717272115e-133 -.double 2.70178275215e-179 -.double 2.77657443201e+34 -.double 2.85942561001e-128 -.double 7.04103773747e+44 -.double 5.40015898832e+292 -.double 3.67397469448e-242 -.double 2.20219161566e-180 -.double 2.40223314607e-84 -.double 1.52301550715e-223 -.double 1.05732837297e+282 -.double 1.13035974401e-288 -.double 2.232666461e+185 -.double 1.68177707154e+271 -.double 1.85255217075e+148 -.double 2.36770664854e-158 -.double 6.68891065508e-91 -.double 5.57425852468e+201 -.double 6.37946613431e-52 -.double 2.03674401546e-149 -.double 3.95837683718e+65 -.double 9.60833923197e-241 -.double 8.35487948381e+31 -.double 2.17326972495e-249 -.double 7.38388880146e-157 -.double 7.81275605423e+72 -.double 5.07851144352e-67 -.double 4.83584571045e-219 -.double 2.94336178246e-231 -.double 1.52563526424e+144 -.double 1.69808558097e+137 -.double 7.88283292017e+223 -.double 1.43542277405e-173 -.double 2.8104042102e-139 -.double 8.98872221659e-100 -.double 1.13306164541e-188 -.double 3.20204337873e-75 -.double 2.93386917319e-207 -.double 1.18112769214e+201 -.double 3.19992230951e-07 -.double 1.18783392553e-223 -.double 5.94603189689e+31 -.double 8.34911477602e-136 -.double 1.454448564e+168 -.double 1.80978580959e-31 -.double 3.02377897004e+26 -.double 5.17413419919e-59 -.double 1.10435598816e-163 -.double 61670249298.5 -.double 1.61895543969e-182 -.double 2.34844094725e+47 -.double 7.99682839515e+71 -.double 8.87152879068e-116 -.double 2.37923285101e+134 -.double 4.66246118343e-45 -.double 3.38442508819e+26 -.double 1.23573339803e-195 -.double 2.6589288937e-95 -.double 2.07423866018e+195 -.double 1.59235925023e+184 -.double 3.66737070244e-113 -.double 3.91047958947e+61 -.double 5.38346719355e-146 -.double 1.9482492505e-236 -.double 6.84592233477e+12 -.double 4.71699892672e-201 -.double 2.33140014739e+273 -.double 2.18841629531e+260 -.double 6.72880853996e+238 -.double 1.78470958234e+282 -.double 3.79266677579e+229 -.double 9.48410402267e+22 -.double 3.48067673569e+65 -.double 3.32056402284e+73 -.double 3.66615184843e-06 -.double 5.15596603612e+237 -.double 1.58417010343e-136 -.double 7.41936379114e+122 -.double 4.52412655987e-163 -.double 3.14138334245e-272 -.double 3.90934318246e-194 -.double 1.3809929877e+68 -.double 9.45987610528e+57 -.double 2.38837858954e-124 -.double 1.77063136418e-201 -.double 3.34319314412e+132 -.double 5.21840379305e+258 -.double 3.25571166898e+206 -.double 8.29083855037e-245 -.double 1.4119331753e+244 -.double 3.74338091526e-178 -.double 5.04068943255e+45 -.double 3.05479938993e-162 -.double 3.61785438552e-168 -.double 3.03846959521e+80 -.double 2.89432734446e+72 -.double 1.17898808068e+290 -.double 1.05768595767e+169 -.double 1.74985574973e-102 -.double 6.51820510595e+82 -.double 2.55083722159e-121 -.double 0.00399745534471 -.double 2.38328597096e-274 -.double 9.22227291561e-303 -.double 5.80576725593e+265 -.double 4.15679163852e-225 -.double 7.69670944858e+172 -.double 4.17450240182e-64 -.double 3.13077564644e+173 -.double 2.42654059444e-257 -.double 9.93949235139e-309 -.double 5.08832434901e-273 -.double 1.00824397781e+68 -.double 8.41520193181e-198 -.double 1.32929900517e+16 -.double 5.70916449001e+198 -.double 5.43192293805e+272 -.double 1.18174005431e-306 -.double 7.303373267e-158 -.double 3.12130130024e+229 -.double 8.87981650835e-20 -.double 4.38292039525e-06 -.double 1.42172413952e-236 -.double 1.51560111608e+54 -.double 1.1329561083e-91 -.double 1.62598216442e-296 -.double 7.04353290069e-286 -.double 3.98759042458e+158 -.double 2.71893117684e+221 -.double 2.14818286048e+226 -.double 2.4522493358e+111 -.double 4.00896502014e+176 -.double 3.71404747782e+77 -.double 7.30258917409e+220 -.double 1.34472570224e-153 -.double 9.95258935314e-69 -.double 7.18318373032e+43 -.double 6.60892838826e+191 -.double 1.6314248944e+139 -.double 1.00745750041e-94 -.double 5.17015360898e-14 -.double 4.29668450922e+39 -.double 3.0654719451e+139 -.double 1.46837815389e-280 -.double 2.86899815096e-251 -.double 7.29560025973e-104 -.double 6.9215030438e+144 -.double 1.63722959618e-06 -.double 1.77913118251e+24 -.double 0.00540902493285 -.double 3.38044446195e+20 -.double 1.34036821792e-150 -.double 1.25750474129e+92 -.double 1.89310380971e-07 -.double 1.6166732635e+266 -.double 2.39401226712e-256 -.double 1.23150010547e+42 -.double 4.6018424097e-33 -.double 5.57321072982e+301 -.double 1.1002431684e-134 -.double 3.04678586874e+226 -.double 2.06667581226e-134 -.double 5.27095326012e+161 -.double 2.46617389571e+54 -.double 1.09558036756e+300 -.double 6.73581416956e+69 -.double 4.29783894834e+117 -.double 1.726899134e-234 -.double 4.60981214801e-82 -.double 6.07551809122e-208 -.double 1.80142542245e-35 -.double 2.21568455581e+89 -.double 3.61679335793e-108 -.double 8.97119759069e-69 -.double 8.45251548455e-60 -.double 1.20745787809e-303 -.double 0.000887374350439 -.double 2.99312112028e-49 -.double 1.82068391124e-243 -.double 7.50364003891e+133 -.double 7.5384983934e-185 -.double 1.99431517547e+47 -.double 4.97895394585e+113 -.double 6.16944266869e-235 -.double 4.19017317366e+265 -.double 2.8092291195e+49 -.double 4.00458122175e+204 -.double 7.60911747703e+66 -.double 5.15725765741e-170 -.double 2.36296897201e-06 -.double 1.54586641212e-158 -.double 1.0622008784e-48 -.double 6.60730319746e+264 -.double 6.11059689539e+246 -.double 1.35121078183e+286 -.double 6.88940122529e+16 -.double 1.02531594651e-36 -.double 6.69632412031e+37 -.double 1.36006269615e+178 -.double 1.47823205252e-20 -.double 2.78562061641e+170 -.double 5.93609714679e+154 -.double 3.02190263274e+167 -.double 9.14752362015e-14 -.double 1.98762709724e-249 -.double 1.65682748968e+167 -.double 3.49355996029e-217 -.double 1.99378113121e-304 -.double 6.30004368601e+127 -.double 1.38080273082e-71 -.double 9.11621016728e-82 -.double 9.47067460218e+101 -.double 3.36572181045e+143 -.double 2.68069855558e-195 -.double 8.81810042317e+286 -.double 1.50637484616e+122 -.double 3.77280457696e+282 -.double 6.11064345682e+230 -.double 8.40396154158e+37 -.double 1.31543758767e-191 -.double 9.22013506519e+285 -.double 3.98076787126e-208 -.double 2.39684578731e+60 -.double 2.82292851066e+199 -.double 5.0296573603e+224 -.double 1.62990704192e-15 -.double 6.32289964757e-06 -.double 9.9937607178e-206 -.double 4.02103354201e-232 -.double 4.1360794206e+61 -.double 5.51239458295e+278 -.double 6.12433440477e-202 -.double 7.95678289581e-98 -.double 9.7469186149e+73 -.double 5.33630596127e-306 -.double 3.94440524109e+179 -.double 5.92582620924e-245 -.double 2.19176958563e+234 -.double 4.75149419227e-24 -.double 7.33372339501e+140 -.double 6.7517046629e+41 -.double 2.59583824479e-105 -.double 4.64434134667e+274 -.double 1.26486492518e-236 -.double 5.51409894846e+121 -.double 7.36021731207e-257 -.double 2.16115950532e-120 -.double 2.33392331757e+280 -.double 3.17376202769e-240 -.double 3.71037929807e-249 -.double 4.7887290203e-160 -.double 2.00435020596e+267 -.double 7.02451011305e+31 -.double 9.34131940588e-89 -.double 1.10696123992e-203 -.double 4.02537568063e+110 -.double 9.73684922901e+306 -.double 8.89580356116e-79 -.double 1.1137540185e-76 -.double 5.24006314911e+203 -.double 7.69669800967e-124 -.double 1.16516448983e+216 -.double 6.03861434598e+47 -.double 4.76337339882e-113 -.double 1.8156299587e-96 -.double 1.68055834554e-208 -.double 1.86883816019e+70 -.double 3.47423428111e+168 -.double 4.93388177719e+162 -.double 2.68537475314e-42 -.double 2.86724569884e-242 -.double 1.12215091302e+305 -.double 3.69621624409e+76 -.double 2.09025174009e-270 -.double 2.15823912292e+306 -.double 1.69917829292e+14 -.double 1.32219362716e-119 -.double 2.17287658692e-226 -.double 3.68978905125e-159 -.double 3.08071179305e+183 -.double 1.90831461409e-243 -.double 5.58972389564e+43 -.double 2.10159056933e-61 -.double 3.78091039426e+213 -.double 1.40764357518e+167 -.double 1.28860469549e-169 -.double 2.93457092276e-172 -.double 3.1093682806e-139 -.double 1.30805648379e+153 -.double 2.30519248557e-271 -.double 1.59896397711e+180 -.double 2.03361408113e-123 -.double 1.11972340006e+106 -.double 1.26788737722e-226 -.double 4.46962922222e+213 -.double 9.25420830084e-302 -.double 1.05585110699e-36 -.double 1.74731120989e+232 -.double 4.32348920525e-85 -.double 5.34999030557e-302 -.double 3.23561886091e+176 -.double 1.57697800668e+97 -.double 2.99007460504e-229 -.double 1.19164372472e-217 -.double 3.79432125977e+282 -.double 2.5844852362e-83 -.double 2.08517652138e+273 -.double 2.75051056226e-64 -.double 5.94783887098e+27 -.double 1.09963707252e-179 -.double 1.19362688006e-277 -.double 1.79172691039e+131 -.double 3.50549022808e+56 -.double 1.17595401026e-154 -.double 2.18614032064e+279 -.double 3.01845081878e-119 -.double 5.78885544815e+84 -.double 237.420777067 -.double 4.8565092996e-166 -.double 5.97520356191e+49 -.double 2.11682322908e-309 -.double 2.61927936465e+68 -.double 1.04653618082e+84 -.double 3.22278596756e+25 -.double 2.54067205536e+87 -.double 2.58039119795e-41 -.double 1.18368717145e+151 -.double 2.0107168996e-306 -.double 5.31665402002e-254 -.double 5.6303758361e-173 -.double 1.30849555216e+225 -.double 3.80992432982e+272 -.double 2.03306627461e+96 -.double 8.32227588492e+169 -.double 4.45687383181e-39 -.double 2.08600579619e+306 -.double 1.82070025388e-82 -.double 2.35766116979e+197 -.double 2.68682926925e-106 -.double 9.5118083435e-92 -.double 5.09743013363e-49 -.double 1.95338058631e-110 -.double 4.0945573847e-81 -.double 7.78351450134e+135 -.double 2.74095928454e-151 -.double 1.87190164664e+156 -.double 3.1190418403e+301 -.double 5.35472965938e-05 -.double 8.19353558296e+17 -.double 5.2855324586e+275 -.double 1.25969454268e+112 -.double 1.61601278522e-80 -.double 6.03905386063e-10 -.double 1.54909932585e-10 -.double 1.7685389657e+42 -.double 1.49780315844e+247 -.double 7.93066724593e+237 -.double 1.25760999911e-243 -.double 1.45275281245e-143 -.double 1.97972650689e-289 -.double 7.9262585526e-194 -.double 6.08750886295e+66 -.double 2.43210064709e-238 -.double 2.84307798615e-51 -.double 8.78206746156e+101 -.double 1.04434350771e-207 -.double 2.00067719818e-232 -.double 5.02473195764e+103 -.double 1.69103584589e-224 -.double 2.45408575115e-191 -.double 3.95360804598e+134 -.double 8.5570424582e+219 -.double 2.24191992427e-265 -.double 6.40368082546e-263 -.double 1.33206254788e-76 -.double 4.4590026381e+218 -.double 1.46785390215e-71 -.double 4.90442381182e-309 -.double 3.62113318633e-90 -.double 6.77889897186e+304 -.double 1.62093033819e-207 -.double 1.65588329127e-144 -.double 1.48397134115e-65 -.double 1.30831508822e+250 -.double 9202.03458539 -.double 8.5905618144e+284 -.double 1.06924754801e+100 -.double 2.67463710519e+217 -.double 7.38612419212e+220 -.double 1.40124766111e-120 -.double 4.32046010532e-300 -.double 3.75732561596e-76 -.double 5.6612605953e+250 -.double 3.2224407992e+247 -.double 1.24736968014e+241 -.double 6.62379164472e+64 -.double 1.76880856307e-270 -.double 1.00878347209e+281 -.double 6.09865311034e+46 -.double 8.79240475032e+221 -.double 6.85602923778e-305 -.double 6.14955589306e-169 -.double 1.20508006935e+244 -.double 9.8936449391e+290 -.double 3.71267665705e-300 -.double 2.50513965105e-234 -.double 2.37246354032e-135 -.double 1.95275371253e-254 -.double 3.11033791516e-20 -.double 4.37099637416e-30 -.double 1.62668850562e-139 -.double 4.70466629198e+29 -.double 4.76099763981e+215 -.double 4.63459837695e-175 -.double 4.65855705114e+141 -.double 5633564.93921 -.double 1.44099583929e-228 -.double 5.27929214936e+300 -.double 5.07956473233e-138 -.double 4.2902453988e-107 -.double 3.14679008933e-211 -.double 1.5249895585e+255 -.double 6.5799484769e-254 -.double 7.92185817228e-189 -.double 1.11446751617e-274 -.double 6.77103684394e+211 -.double 1.27672197107e-16 -.double 6.66850326904e+296 -.double 2.05203030614e+224 -.double 8.97720740477e+160 -.double 6.40996122749e+278 -.double 7.96198261269e-304 -.double 2.994316528e-205 -.double 4.59305385841e-187 -.double 3.46686003049e+291 -.double 1.40523841797e-182 -.double 1.70419254857e+307 -.double 1.15240627585e-289 -.double 1.20637802299e+207 -.double 4.77475522012e+70 -.double 1.53489474508e-75 -.double 3.9635527741e+27 -.double 9.6402017348e-20 -.double 6.72733632568e+188 -.double 8.19970680632e+243 -.double 0.000755182491179 -.double 2.05483786671e+225 -.double 3.69060983203e-99 -.double 6.18950940457e+210 -.double 1.34595359404e-218 -.double 2.55278334764e+76 -.double 2.22446925427e-224 -.double 1.09261325345e-293 -.double 1.2421509308e+120 -.double 1.21592065943e-244 -.double 5.77789152067e+156 -.double 1.67440689167e+97 -.double 1.2068016432e-172 -.double 1.73268387883e-166 -.double 7.14730314357e+101 -.double 1.81268720236e-147 -.double 1.14810754801e+175 -.double 1.18037342355e-63 -.double 5.60141335274e-148 -.double 2.55133778439e-228 -.double 1.57126279311e+296 -.double 5.56475374828e-104 -.double 6.88572757448e+256 -.double 1.00785565167e-49 -.double 1.23231561695e-76 -.double 1.57733418343e-281 -.double 1.27066579186e-218 -.double 3.3170950094e+67 -.double 1.06003035005e-07 -.double 6.55176481965e+127 -.double 2.34515418602e+282 -.double 4.74362510453e+269 -.double 2.82519262694e-248 -.double 3.53599597186e+214 -.double 1.52123024845e+110 -.double 5.69905547227e-241 -.double 1.68672510804e+22 -.double 2.06385090812e-44 -.double 8.70734250024e-55 -.double 4.22587111144e+21 -.double 1.171088455e-125 -.double 7.43751910723e-22 -.double 4.44374800888e+128 -.double 5.54173436715e+23 -.double 1.47333684048e+151 -.double 2.29083949182e-156 -.double 1.44088952151e+137 -.double 1.37484704519e-224 -.double 1.25164020881e-278 -.double 6.06499216202e+59 -.double 1.90576819438e-225 -.double 1.82115257007e-304 -.double 2.15074394424e+44 -.double 6.01755896571e+144 -.double 3.45479913727e+223 -.double 1.65276755105e-62 -.double 2.43477300209e-58 -.double 1.64209156695e-90 -.double 5.17275498611e+90 -.double 1.09054883364e+23 -.double 3.1696747859e+58 -.double 2.40561682636e+71 -.double 1.05906374726e+179 -.double 1.04991788492e-169 -.double 2.20126871259e-92 -.double 7.07295681432e+223 -.double 1.4412942561e+119 -.double 9.48508470611e+225 -.double 4.03227569336e-48 -.double 5.21328126846e+244 -.double 1.6459633681e+25 -.double 9.80484786068e-60 -.double 2.17193885853e+174 -.double 3.50153921992e-146 -.double 4.60755897099e-195 -.double 3.25919281092e+49 -.double 2.20658466286e+153 -.double 4.41254095705e+262 diff --git a/isa/rv64uv/data_fw.h b/isa/rv64uv/data_fw.h deleted file mode 100644 index e1c8041..0000000 --- a/isa/rv64uv/data_fw.h +++ /dev/null @@ -1,4099 +0,0 @@ -# See LICENSE for license details. - -.align 2 -.float 5527.22204077 -.float 1.5241163985e-09 -.float 1.0716292843e+17 -.float 2.71967022688e+19 -.float 2.70880649082e-35 -.float 7.55333096332e+18 -.float 3.12220172139e+12 -.float 1.23235770812e-13 -.float 2.62464913883e-20 -.float 2.27315574488e+36 -.float 5.50155785572e+15 -.float 2.8931179311e+26 -.float 3.58727932926e-30 -.float 8.62588318435e-16 -.float 89.890060027 -.float 5.77023439439e-22 -.float 3.1346969609e-30 -.float 1.62074219366e-12 -.float 3640.24925559 -.float 2.46457601634e+12 -.float 2.79904152104e+37 -.float 9.45205745358e+36 -.float 22714379223.7 -.float 45.3769711516 -.float 6.97578276342e+26 -.float 4.26465551752e-19 -.float 3.6217416877e-33 -.float 1.87062574459e+27 -.float 4.72693222903e-05 -.float 7.21152636444e+16 -.float 441159995.531 -.float 1.25560888101 -.float 843728291.119 -.float 2.97430616122e-08 -.float 2.55959542749e+22 -.float 1.15959490048e-16 -.float 0.00188623666077 -.float 680349331686.0 -.float 2.43327941612e+25 -.float 2.14887703004e+33 -.float 8.8016440385e+19 -.float 7.88111163478e+35 -.float 2971740710.24 -.float 4608392.82192 -.float 9.26133303809e+33 -.float 9.57598079163e+33 -.float 7.47732181835e-27 -.float 4.47233692893e-36 -.float 1.46752850916e+27 -.float 0.00214975695539 -.float 2.37376961117e-16 -.float 3.37183428271e-34 -.float 1.00434329014e+37 -.float 2.50701700801e-19 -.float 2.85303019697e+36 -.float 7.52686841379e-34 -.float 2.30836194346e-26 -.float 1.09109930974e-05 -.float 1.2154286759e+26 -.float 24861737.545 -.float 3.14396603222e+17 -.float 1.53765232394e-37 -.float 8.64143798694e+26 -.float 4.85760513161e+23 -.float 2.65586912013e+26 -.float 1.91788716498e-26 -.float 3.08982989491e+27 -.float 8.45181041468e+18 -.float 3.29867256334e-07 -.float 3.65946513921e+25 -.float 4.06042626257e+36 -.float 6.39790524258e-07 -.float 1.27551440832e+12 -.float 5.27664840533e-18 -.float 8.71688237466e-26 -.float 2.87735786139e-36 -.float 4.01492377749e-12 -.float 2.13263735887e-36 -.float 3.33792701763e-06 -.float 474.365522199 -.float 4.05451735366e-39 -.float 1.66896783134e-21 -.float 5.59995439296e-39 -.float 1.77041181832e+29 -.float 1.17878004277e-17 -.float 4738020.17453 -.float 1.00973508538e+31 -.float 8.30845904986e+18 -.float 1854.17328755 -.float 4.47283148982e+16 -.float 6.66688944094e+22 -.float 1.37466622846e+14 -.float 3.20451549718e-40 -.float 2.84038612799e+25 -.float 2.55468551132e-14 -.float 16.1804603647 -.float 3.00403627872e-26 -.float 2.26724427291e-24 -.float 9.7158096952e-26 -.float 2.15219500401e-35 -.float 4.19833497699e+30 -.float 4.22369139142e-21 -.float 8.8550049184e-31 -.float 1.861461022e+26 -.float 1.74340359695e-11 -.float 4.47815553339e-12 -.float 0.000448433118451 -.float 9.24179272924e+21 -.float 1.04691809103e-38 -.float 24238.1575714 -.float 14.7729278655 -.float 7.49069904264e-18 -.float 3.46016023883e+20 -.float 3.06908659958e-18 -.float 1.18256850501e-17 -.float 5.63083577805e-09 -.float 7.71811119112e+37 -.float 66.777464655 -.float 3.3275018926e-11 -.float 0.80535354419 -.float 2.92784098666e+31 -.float 568690660861.0 -.float 1.31428177328e+29 -.float 1.7957944968e+14 -.float 3276352260.62 -.float 3.58330713184e-39 -.float 26755099.2973 -.float 6.38700634146e-10 -.float 1.5485639327e+29 -.float 5.81974365655e+27 -.float 7.20494408047e-11 -.float 1.6606577107e-11 -.float 5.74886264927e+35 -.float 0.000103758843124 -.float 1.01964083248e+37 -.float 4.5197437495e-34 -.float 3.67261241067e-11 -.float 6.23478245436e-23 -.float 1.78760858123e-28 -.float 3459.68856191 -.float 3.25874119081e+27 -.float 4.45389952284e-13 -.float 5.99495179287e-16 -.float 1.29172747854e+37 -.float 2.91479886755e+13 -.float 0.000942585577388 -.float 5.63379066844 -.float 1.66850623196e+18 -.float 2.31976548076e+30 -.float 2.14113686583e+17 -.float 2.88052362606e+34 -.float 0.125390725406 -.float 9.03263771651e+21 -.float 4.96131962131e-28 -.float 8.66162706837e+33 -.float 1.40729409068e+17 -.float 2.9319816753e-19 -.float 3.05376234161e-26 -.float 2.99429899062e-06 -.float 4.20266135798e+36 -.float 4.40695096599e-31 -.float 3.31926058038e-19 -.float 5.18922369706e+23 -.float 7.31880638171e+28 -.float 1.26960781139e+28 -.float 1.53710843838e-18 -.float 6.30907585306e+35 -.float 1.32581104374e-11 -.float 0.000712141923735 -.float 1.03643462828e+32 -.float 1.54666620156e-05 -.float 6.52690911907e-12 -.float 3.00791861833e-32 -.float 6.05415750197e+16 -.float 0.000197562746507 -.float 1.47319725376e-37 -.float 1.11340699154e-23 -.float 190935.341381 -.float 4.45814028559e-13 -.float 121675.872677 -.float 2.26631875521e-20 -.float 2.46628097502e-39 -.float 2.31564950143e+32 -.float 0.0103619577863 -.float 1.99233413262e+23 -.float 1.50188528027e-06 -.float 39410.9103477 -.float 88609.2084737 -.float 6.51606779736e+12 -.float 6.53176630902e+33 -.float 2.25273986258e+17 -.float 3.44895027227e-34 -.float 1.13634335874e+18 -.float 5.62816319733e-16 -.float 6.37657446155e-36 -.float 83.1487553364 -.float 0.794722714976 -.float 2.96933035806e+32 -.float 2.79605307124e-19 -.float 980633709.754 -.float 853649316.209 -.float 5.61598165592e+22 -.float 0.0141342926386 -.float 176078461.18 -.float 2.16398440757e+30 -.float 0.00233413881346 -.float 3.23918454155e+31 -.float 7.84090187116e+18 -.float 1.48042434606e-14 -.float 2.26721753267e-22 -.float 1.83168300185e-20 -.float 5.11942250495e-30 -.float 9.25597884305e+35 -.float 0.00418972796407 -.float 9.71184620276e+26 -.float 3.05901095219e-05 -.float 2.31013051388e+32 -.float 1.94104856914e+14 -.float 1.19058626291e-17 -.float 5.04804593418e-07 -.float 9.51837003984e-21 -.float 4.32398072875e-12 -.float 3.45993247662e-11 -.float 4.50736753939e-31 -.float 20.6165525432 -.float 8.84365937771e-32 -.float 5.55134019219e-38 -.float 1.16444842261e+27 -.float 7.8149633753e+34 -.float 1.07234792096e+20 -.float 1.13012770157e-07 -.float 1.80038759925e+25 -.float 1.82014466581e-17 -.float 1.47415590213e+25 -.float 11927809719.7 -.float 6.23880266507e-26 -.float 338386342059.0 -.float 3.32308189028e-34 -.float 2.03467355322e-33 -.float 142559.530451 -.float 7.48313578426e+30 -.float 2.28885691615e-29 -.float 1.07112777745e-28 -.float 9.15464918626e+15 -.float 8016332322.65 -.float 4.71809172558 -.float 2.07821112848e-20 -.float 1.24447017974e-20 -.float 0.00039508039504 -.float 6.4786023692e-16 -.float 470719803266.0 -.float 1.35375831348e+15 -.float 5884626.33759 -.float 1.13798224445e-07 -.float 0.131585749098 -.float 5.28515909743e-23 -.float 1.94393866349e-30 -.float 101.926945352 -.float 5.48886739768e+13 -.float 65702019.7045 -.float 1.59002671215e-38 -.float 5.37447000206e-23 -.float 5.65809755075e+14 -.float 5.92064023757e-21 -.float 6.60930542749e-21 -.float 3.26948978848e+32 -.float 1.44742351342e-28 -.float 2.92772166921e-23 -.float 1.35203604221e-08 -.float 1.88356227821e+36 -.float 1.93873395113e-29 -.float 0.326164748021 -.float 1.66617105975e-06 -.float 22926.2770574 -.float 8.55687141466e-27 -.float 3.93396750369e+13 -.float 1.04434892442e-30 -.float 1.2034528591e+31 -.float 1.09272272984e+15 -.float 1.35774717372e-17 -.float 1.19111221089e+13 -.float 2.08028250689e-26 -.float 0.182952058739 -.float 1.27199138822e-31 -.float 0.110401887091 -.float 5.24908337102e+14 -.float 680146454.876 -.float 1.90478938739e-16 -.float 2018579257.58 -.float 1.14672311885e-17 -.float 0.0198249572197 -.float 5.57582971496e-22 -.float 730311432445.0 -.float 145305.349456 -.float 2.22258912666e+19 -.float 9.90612192492e-34 -.float 1.86726828836e+37 -.float 255.41293663 -.float 1.91433797915e-25 -.float 5.38833020967e+21 -.float 8.76284910026e+28 -.float 5.89126630592e-24 -.float 7.90366198241e-13 -.float 7626599.70323 -.float 8.01972476416e-14 -.float 4.11654658248e+31 -.float 6.78220122324e-37 -.float 1.46739473097e-10 -.float 1.14354681281e+28 -.float 1.54510066855e+27 -.float 4.49620825412e-14 -.float 4.20160398692e+15 -.float 4.1581611661e+20 -.float 4.94542935383e-28 -.float 1.25549393962e-14 -.float 2.58597737329e+13 -.float 2.79931895467e-39 -.float 2.43292711703e+14 -.float 9.34308374803e-28 -.float 19207682479.8 -.float 3.79929648435e-14 -.float 1.26362195512e+29 -.float 21.3759098894 -.float 2068732374.46 -.float 6.61776725302e+25 -.float 2.18681832791e+34 -.float 166282759.512 -.float 4.87739680792e-12 -.float 3.03153256515e-36 -.float 3.38106788644e-25 -.float 1.92743777167e-33 -.float 9.450419226e+36 -.float 20355041708.1 -.float 7.31260227708e-22 -.float 1.55943339029e-12 -.float 1.93620384253e-21 -.float 4.78717495152e+29 -.float 5.95364358384e-09 -.float 2.04987110956e-34 -.float 1.46018977474e+33 -.float 8.5525851806e+17 -.float 1.41387443255e+23 -.float 1.20721480928e-32 -.float 1.93238070547e-38 -.float 1.03484771896e-12 -.float 2.57596476653e-24 -.float 4.57801058892e+25 -.float 9.19135143387e-39 -.float 4.48547675737e-11 -.float 190.53754184 -.float 147230351.243 -.float 8.60648391412e-21 -.float 8.71491857671e-38 -.float 3.50474110265e-34 -.float 1.48527801577e+18 -.float 1.67845675426e-37 -.float 7.20909364775e+28 -.float 6.13761716122e+35 -.float 7.61813404371e-17 -.float 9.79319248953e-10 -.float 710727.923398 -.float 1.23430426898e-13 -.float 3.49105696515e+28 -.float 3.65727667793e-06 -.float 8.6667278471 -.float 8.81264903051e-32 -.float 23412.4667505 -.float 3.43786943449e-30 -.float 8.81824795785e+35 -.float 2.01787749434e+32 -.float 1937335607.68 -.float 463.943736202 -.float 2.61963460277e+22 -.float 4.23178062854e-19 -.float 26916.1647846 -.float 5.92936402258e-22 -.float 3.14917147603e+19 -.float 1.69557008839e+24 -.float 5.49961697313e+20 -.float 204.65333394 -.float 923392148450.0 -.float 0.00013861343938 -.float 6.84501860482e+17 -.float 8.56094988427e-10 -.float 2.16580214105e+12 -.float 67855.0603069 -.float 7.00057790003e+12 -.float 668371.916976 -.float 1.53926147248e-19 -.float 1.89793243173e+23 -.float 3.6577043027e-12 -.float 1.04414976734e+16 -.float 2.96011983895e-38 -.float 7.60803004472e-31 -.float 4.34748087601e+12 -.float 4.20869436398e+27 -.float 4.24143704052e+15 -.float 3.46738738452e-25 -.float 2.36788411807e+29 -.float 1199206600.22 -.float 1.62191269809e+16 -.float 9.02352150061e-06 -.float 1.17517336507e-27 -.float 588103670214.0 -.float 3011686.87707 -.float 1849.27119665 -.float 2.24204210025e-35 -.float 3.28019813187e+23 -.float 2.34602290125e-08 -.float 49.1881552534 -.float 1.79585893935e+32 -.float 2.1342597697e-22 -.float 5.51131716734e-26 -.float 2.42231563125e+15 -.float 1.47840500953e+25 -.float 7.60563767594e-19 -.float 8.2494907713e-38 -.float 0.00172593952892 -.float 2.21584098546e+22 -.float 1.30295523538e-07 -.float 0.00147434774277 -.float 9.02898631696e+26 -.float 4.82563631584e+33 -.float 1.9729464341e-10 -.float 5.59591940146e-39 -.float 3.82861450513e+14 -.float 472539.043037 -.float 29.1489220883 -.float 7.87660097986e-39 -.float 28602870113.9 -.float 8.16363763053e-34 -.float 0.0226975344484 -.float 1.00139341564e-12 -.float 7.21735519087e+15 -.float 8.70049840564e-15 -.float 3.24706600826e+24 -.float 0.671888566037 -.float 1.72612944311e-10 -.float 523319.203283 -.float 0.0108116960063 -.float 2.92272608618e-12 -.float 9975047952.78 -.float 2.13751237406e-13 -.float 3.36809071135e+15 -.float 11508124416.6 -.float 6.24888262431e-23 -.float 1.26108475709e-27 -.float 7.23570688677e+16 -.float 4.88559937141e-29 -.float 3.5970822481e+22 -.float 1.91755090676e-22 -.float 4.54886076426e-27 -.float 0.00203237029294 -.float 3.49385190688e+36 -.float 0.313362001877 -.float 1.89086959938e-34 -.float 1.40019967873e+38 -.float 279927.581282 -.float 1.62692610735e+22 -.float 0.416963848097 -.float 1.48657396174e-27 -.float 1.85093859917e-33 -.float 3.20703984035e+31 -.float 7.35777488626e-33 -.float 381952100812.0 -.float 7515659686.49 -.float 2.84603129251e-37 -.float 8.58527569869e-19 -.float 2.10838079704e+33 -.float 1.06619955813e+15 -.float 1.55229896946e+25 -.float 1.21482240672e-20 -.float 1.937441552e+18 -.float 1.45061696224e-29 -.float 92.7368586085 -.float 4417.49637509 -.float 1.4569785967e-31 -.float 3.21286166791e-15 -.float 6.05098880625e-33 -.float 9.20447277453e+26 -.float 5.10395086681e-34 -.float 1.5003744696e-15 -.float 3.63186618133e-10 -.float 4.31160448567e+12 -.float 2.97784521222e+25 -.float 1.5225167053e+29 -.float 6.10962433523e-35 -.float 6.35836885409e+13 -.float 1.69720469529e+13 -.float 6.69092952273e-06 -.float 1.00760944861 -.float 1.0313320205e-27 -.float 2.27291045241e+28 -.float 0.0934107227832 -.float 4.0501531847e+13 -.float 2.07651099732e+33 -.float 1.28486720657e+17 -.float 68833820.9137 -.float 2.58378686207e-30 -.float 2.23059097861e+17 -.float 8.78279500936e-12 -.float 96942592854.8 -.float 9.28717918272e+32 -.float 1.2972341287e+26 -.float 2.9422082146e-17 -.float 4.89425998711e+36 -.float 1325927871.16 -.float 806601.837582 -.float 1.37924842915e-16 -.float 23375301731.0 -.float 1.19925771871e-05 -.float 1.96608624784e-34 -.float 1.6824334243e+26 -.float 2.2850827803e+12 -.float 4.63884333241e+32 -.float 2.64955866073e+35 -.float 4.29120890895e-15 -.float 232.664738336 -.float 0.000447391425909 -.float 2.21609144395e-06 -.float 1.22824635886e-12 -.float 6.61169997056e-14 -.float 4.34542974648e-16 -.float 7.69699862965e-18 -.float 1.92711098027e-10 -.float 2.57313067022e+33 -.float 4.21393053145e-18 -.float 4.68986916637e-27 -.float 34176801639.9 -.float 1.64873276065e+31 -.float 212362.450547 -.float 7.98143821967e+17 -.float 4.75710793276e+17 -.float 1.26153242402e+19 -.float 3.41963478215e-38 -.float 1.27674396929e+17 -.float 7.68559854201e+12 -.float 7.41555173839e+34 -.float 8.51830056391e+25 -.float 1.35803748299e+17 -.float 3.56242876105e+16 -.float 2.2792249419e+37 -.float 5267499.99454 -.float 2.99768669924e+36 -.float 5.66141915048e-28 -.float 0.000337993660844 -.float 1.29777051231e+32 -.float 5.96276447978e+26 -.float 8.69192358872e-19 -.float 8.47134708931e+18 -.float 6.9953500778e-39 -.float 5.71046570026e+33 -.float 2.08799279672e-22 -.float 7.22165684561 -.float 1.9645124421e+20 -.float 1.45893562988e+24 -.float 5.00869925951e+26 -.float 1.38413771762e+36 -.float 1.69282409806e-20 -.float 4.52593709886e+22 -.float 9.16382619812e-11 -.float 2.10971555482e+27 -.float 3.68858671849e+29 -.float 4.96394512849e-36 -.float 6.7446318248e+23 -.float 0.0225683780161 -.float 3.72470926716e+31 -.float 1.94529836243e+29 -.float 1.68837156679e-37 -.float 7.60650273975e+24 -.float 4.27523319531e+16 -.float 9.58355079206e+29 -.float 2.41042664595e-36 -.float 1.10721492401e-16 -.float 1.31468355439e+12 -.float 5.19967578931e-07 -.float 4.47727303211e-29 -.float 7.02084222665e+26 -.float 1.02990095703e+24 -.float 3.3305067677e-31 -.float 5.37352702337e+16 -.float 1.18169130516e+15 -.float 3.54326503119e-19 -.float 2.34315820759e-25 -.float 1.89175550474e-25 -.float 1.22982885412e+22 -.float 1.70126802307e+24 -.float 0.0604886363009 -.float 8.40538559483e-36 -.float 1.93114054488e-19 -.float 2.55295741294e+33 -.float 4.04416311825e-30 -.float 1.15506772841e+29 -.float 3.43146625745e-22 -.float 8.38648193439e+18 -.float 9.07721315992e+18 -.float 1.0679674043e+38 -.float 2.38730903335e-13 -.float 2.18471208753e+26 -.float 9.9789330339e+13 -.float 224112449.882 -.float 5.98479442753e-33 -.float 1196.36270748 -.float 12.443986959 -.float 3.1146441576e-14 -.float 4.16091867846e+29 -.float 1958651954.91 -.float 1.61558502768e+22 -.float 4.1278784197e+27 -.float 9.57237370698e+30 -.float 7.83691415641 -.float 4.97657731662e+28 -.float 7.48210845517 -.float 1.34911796127e-18 -.float 5.14643588462e-31 -.float 1.36106840733e-30 -.float 3.44596544772e-37 -.float 3.04477886121e-14 -.float 1.8495730207e-09 -.float 6.59623907457e-22 -.float 7.30084639827e+12 -.float 3.32260315061e+28 -.float 3.16089239384e-37 -.float 4.57994989353e-21 -.float 6.44925162778e+31 -.float 1.58389974917e+38 -.float 6.49747056656e-41 -.float 1.23322284035e-23 -.float 1.20655393499e+29 -.float 3.01035574259e+18 -.float 1.64098183575e+21 -.float 1.88539013748e-11 -.float 9.14590489285e-26 -.float 3.97600757785e+37 -.float 1.17649087646e+24 -.float 1.48699788726e+25 -.float 14503683.3044 -.float 5.42908024021e-06 -.float 1.68119891908e-17 -.float 1.87854264623e+37 -.float 4.09676710618e-07 -.float 2.38553998792e-18 -.float 2.76422281565e+22 -.float 1481.78004363 -.float 1.32584853957e+32 -.float 4460633.40107 -.float 4.55783698011e-33 -.float 9.86466349549e-28 -.float 2.2087407199e+37 -.float 4.15159479737e+26 -.float 658.247273018 -.float 1.91589448794e+36 -.float 0.16452617378 -.float 1.10769585378e-32 -.float 1.6528626915e-07 -.float 2.25216040289e-12 -.float 1.27134874151e-18 -.float 9.81333561913e-09 -.float 1.44583161159e-29 -.float 3.17521139875e-29 -.float 3.2797633625e+19 -.float 2.03801651999e+37 -.float 14.9674808328 -.float 2.12309148996e-21 -.float 3.77016332692e+37 -.float 2.26969005444e-10 -.float 313808957.24 -.float 1.63569085646e-24 -.float 4.18853410153e+26 -.float 4027.63040269 -.float 1.15895595239e-09 -.float 1580603817.87 -.float 1.51533812952e+26 -.float 1.16370778046e-08 -.float 6.89538711346 -.float 954439542974.0 -.float 8.77326017099e+20 -.float 8.44476221769e+25 -.float 2.06813423835e-06 -.float 1.40568364661e+17 -.float 1.30372595769e-18 -.float 3.73154629713e-23 -.float 1.45439357961e-23 -.float 1.20957424588e-12 -.float 1.43465293104e-12 -.float 3.12844234648e+29 -.float 1.51032129582e+22 -.float 1.88848913305e+18 -.float 3.53583006771e-09 -.float 3.63850153993e+12 -.float 6.23180162187e-12 -.float 3.66002176272e-24 -.float 1123933116.72 -.float 1.25413337658e+31 -.float 40574541867.0 -.float 1.04150095436e-28 -.float 7.96623095865e-22 -.float 1.46209986601e-16 -.float 3.08759806493e-26 -.float 7.21520159703e+24 -.float 1.06806665996e+35 -.float 4.31882703899e-38 -.float 6.03763455548e-08 -.float 4.52601276155e-29 -.float 1.80549844479e-18 -.float 3.5441887836e+25 -.float 474.195411458 -.float 5.76136381451e-40 -.float 3.8963432362e+31 -.float 1.86048679496e-07 -.float 3.17718474107e+23 -.float 0.000188422175068 -.float 276555582276.0 -.float 7.04931012232e+20 -.float 56856959017.7 -.float 0.0551651734885 -.float 2.38615243395e-06 -.float 8.16512490456e-29 -.float 2.5837866723e-39 -.float 8.53196557328e+34 -.float 39.399443785 -.float 2.75360632144e-31 -.float 1.294939587e-05 -.float 9.34093064124e-32 -.float 4.00628236946e+26 -.float 1.08874923601e-06 -.float 658323739039.0 -.float 2.29279004662e-32 -.float 0.0148083712018 -.float 3.0045285991e-21 -.float 4.36281223655e+28 -.float 1.18983766607 -.float 3.61962382714e+24 -.float 1.38012234506e-17 -.float 1.51723197366e+36 -.float 3343377546.46 -.float 1.89010086833e-26 -.float 6.74606706946e-39 -.float 229890842.782 -.float 1.87941390825e+24 -.float 2.22537953875e+27 -.float 2.85054289511e-13 -.float 4.49964330725e+29 -.float 0.00745608504955 -.float 1.5632378588e+30 -.float 4.69482645039e-37 -.float 1.58275567991e-09 -.float 1.17049036919e-07 -.float 6.15072788455e-37 -.float 2.77040762399 -.float 3.71411439983e-15 -.float 5.4232045718e+29 -.float 8.19199022891e-16 -.float 2.68093756631e-28 -.float 6.0242046833e-27 -.float 4.77248397793e-22 -.float 1.25055990575e-26 -.float 1.09130613322e-35 -.float 4.82814068566e-37 -.float 1.79163831218e+23 -.float 3.8209351195e+36 -.float 6485.41691054 -.float 103232670.599 -.float 3.7882250526e+28 -.float 1.51496808153e-33 -.float 17844827086.7 -.float 371181216.589 -.float 8.47000905683e+27 -.float 1.4939728423e-31 -.float 7407002221.82 -.float 9.30837843573e+18 -.float 8.67394661637e-26 -.float 2.95130145767e+19 -.float 3.5110883607e+31 -.float 1.1349960042e+38 -.float 1.57842988509e-21 -.float 52959.1720882 -.float 43777781.8671 -.float 3.33624408696e+30 -.float 4.99786604548e-09 -.float 5526320.78025 -.float 4.79129372115e+17 -.float 1.89260330859e+34 -.float 9.60896663604e+25 -.float 8.71714264341e+18 -.float 0.00654763687255 -.float 0.00872606950071 -.float 5.27132152724e+32 -.float 1.21221721126e-23 -.float 1.48704700189e+27 -.float 8.14222743903e-29 -.float 1.18753526042e+30 -.float 809633593229.0 -.float 4.75437475893e+34 -.float 7.16339356609e-37 -.float 7.04864555507e-14 -.float 1.23374304031e-10 -.float 1.24618594811e+21 -.float 0.0116460567223 -.float 6.27518280832e+33 -.float 2.83896453675e-11 -.float 252274.049987 -.float 3.10005399216e-29 -.float 2.81376412749e+26 -.float 523647.472963 -.float 667376897.76 -.float 5.56755361719 -.float 1.73241495393e-09 -.float 1.39569120647e+29 -.float 1.00181877587e-35 -.float 7.4921832853e-05 -.float 9.94345678137e+30 -.float 4.15619980552e-19 -.float 26840464.0127 -.float 4.36762379991e+27 -.float 9.53555924137e+36 -.float 2028365961.78 -.float 3.478919523e+34 -.float 3.76633220358e-27 -.float 118331.031021 -.float 3.4334435128e+21 -.float 5.13543379614e-06 -.float 67978.669077 -.float 0.0089975072701 -.float 8.72950397744e-24 -.float 2.46449189822e-23 -.float 6.86935760282e-33 -.float 8.3100747936e-24 -.float 3798837454.04 -.float 3.10066316993e+27 -.float 4.86405539956e+29 -.float 2.99018504121e+21 -.float 455.507526595 -.float 9.72164127401e+18 -.float 5.46517487307e+27 -.float 2.14814447145e-19 -.float 1.98371522494e+29 -.float 1.91158175774e+26 -.float 2.38564899224e-05 -.float 1.76299755414e-25 -.float 4.9721557525e+30 -.float 1.51737396556e+12 -.float 2.83416756723e+21 -.float 7.62116086948e-26 -.float 7.40593872085e+34 -.float 1.18980392553e-13 -.float 31346692223.6 -.float 1.09092750149e-05 -.float 3.25906015735e-17 -.float 1.9651052571e+30 -.float 2.87872887419e+29 -.float 4.40371185036e-28 -.float 2.13623001821e+21 -.float 8.01071816014e+23 -.float 3.74571254403e+18 -.float 9.11533254668e+36 -.float 4.3837154549e-08 -.float 3.67013595577e+19 -.float 1.1148893598e-10 -.float 1.00791803586e+30 -.float 1.41689090627e+14 -.float 1.63339723493e-38 -.float 0.0465172157905 -.float 3.99860094961e+14 -.float 1.79445596872e+22 -.float 362557.414849 -.float 5.10226375624e+33 -.float 1.39621321139e-31 -.float 2.24360177315e+13 -.float 1.91422263169e+33 -.float 4.66169210228e-17 -.float 3.70130581336e+12 -.float 3.55882666716e+35 -.float 8.84137209166e-22 -.float 6.39894171791e-05 -.float 1.49243046298e+22 -.float 2.37731869206e-21 -.float 4.76670566628e-22 -.float 2.59021097124e-17 -.float 672429156644.0 -.float 439822.042134 -.float 769541982702.0 -.float 4.90838933966e-28 -.float 2585738489.29 -.float 1.67283204985e+32 -.float 3.28209448675e-37 -.float 7.50403380905e+20 -.float 0.046504829898 -.float 2.30486015843e-32 -.float 6.2071460283e-07 -.float 3.57050851488e+15 -.float 1.23451045215e-35 -.float 2.59919216201e-14 -.float 3.85255785543e-26 -.float 1.09092692856e-24 -.float 3.84966451572e-28 -.float 0.831811524462 -.float 26.7118587159 -.float 1.4264102e+20 -.float 1.18910734124e-08 -.float 3.59130436364e-33 -.float 5.09908286373e+31 -.float 843.057848808 -.float 2.78296727535e+34 -.float 7.56024076381e-26 -.float 3.38294901211e-26 -.float 6.241890209e-15 -.float 3.57348216988e+13 -.float 387851120.658 -.float 2.29045476121e+17 -.float 3.48587150147e+35 -.float 4.1643167253e-29 -.float 1.37791605427e-17 -.float 1.92538273029e+19 -.float 3.69249557752e-29 -.float 5.35981547513e-38 -.float 3.96754875435e-18 -.float 1.13820505872e+17 -.float 3.7295476272e+24 -.float 8.58310266067e+27 -.float 19.7880075267 -.float 498.326810472 -.float 3.50174749727e-28 -.float 1.22191488274e-33 -.float 1.09508835648e-13 -.float 6.10527466029e-28 -.float 498.525356055 -.float 2.92182634812e-15 -.float 2.36363511563e+16 -.float 2.12816814067e-17 -.float 0.000426364804882 -.float 8.83960219632e-07 -.float 12092.5211083 -.float 2.35140455927e+27 -.float 3.27194698411e-11 -.float 2.76675693119e-33 -.float 0.632100927355 -.float 3.3129566492e-37 -.float 1.15833770373e-17 -.float 2.96598127729e-08 -.float 5.42441970581e+15 -.float 3.24943280678e-34 -.float 3.51159390031e-27 -.float 9.84807782725e-34 -.float 0.00051253617309 -.float 6.66726371387e-32 -.float 3.17552541417e+32 -.float 1.91130760146e-13 -.float 1.55359024782e+27 -.float 2.42841696952e-11 -.float 9.37784594409e+37 -.float 2.54798163062e+26 -.float 6.48133347037e-24 -.float 0.000115987570247 -.float 4.80948143724e+13 -.float 6.9708411299e-35 -.float 4.25284491661e-10 -.float 1.25330442316e+24 -.float 3.00954906598e+29 -.float 1.04173753194e-31 -.float 6.18750617735e-30 -.float 2.34233884893e-30 -.float 600992.091829 -.float 8.43629842451e+12 -.float 1.81502400445e-27 -.float 2.97998946483e-27 -.float 1.52168170479e-24 -.float 230.504965821 -.float 4.65209576445e-16 -.float 2.51373284638e-09 -.float 1.18489568042e+32 -.float 15.81173036 -.float 2.75683291939e-08 -.float 1.41880013028e+16 -.float 3.05213986393e+16 -.float 1.4275836076e-08 -.float 8.82564196429e-27 -.float 1.12003709678e+24 -.float 4.22287469539e+14 -.float 2.37572855028e-16 -.float 2.16660335844e-20 -.float 1.85391617079e-16 -.float 1.82089196788e-37 -.float 6.91756789636e-38 -.float 0.000261314154993 -.float 7.05614075493e+21 -.float 6.79437847806e-17 -.float 2.14491100285e-19 -.float 2.10527947532e+22 -.float 1.58353068517e-15 -.float 4.82640688489e-08 -.float 1.67422019741e-13 -.float 7.75317675669e+30 -.float 4.76900601565e-33 -.float 1.67247581183e-15 -.float 1.12523647056e+36 -.float 5.41180851492e+19 -.float 5.87687643105e-13 -.float 3.37314959614e-18 -.float 5.53130293033e+26 -.float 3.19665455816e+22 -.float 1.00777998759e+26 -.float 9.50617989107e-12 -.float 6.69795501554e+28 -.float 6.58734677317e-12 -.float 1.00830709713e+21 -.float 3.00060985757e+28 -.float 1.59729344753e-06 -.float 1.47741010764e+24 -.float 7.11441926436e-10 -.float 3.13081047703e-10 -.float 1.48035272263e-36 -.float 2.90097014722e-38 -.float 7437027983.0 -.float 398260006.804 -.float 1.29644310781e+17 -.float 8.01293810316e-25 -.float 1.00708737688e+23 -.float 9.02719345874e-24 -.float 9.36859304761e-39 -.float 9.29445459893e-07 -.float 1.36876428582e-09 -.float 5.36524776132e-33 -.float 2.05672200633e+30 -.float 3.62293306556e+19 -.float 1.89740337116e+27 -.float 4.72586930531e+35 -.float 2215299.94123 -.float 5.65634826124e-09 -.float 139459.079924 -.float 1.46271552948e-08 -.float 1.11795553299e-39 -.float 2.02867180276e+20 -.float 1.18673349309e-19 -.float 8.1406979513e-19 -.float 5.60725355359e-22 -.float 1.92012780146e+24 -.float 8.76262468362e-25 -.float 3.81861724139e-08 -.float 4.83916321101e-26 -.float 1002107548.92 -.float 0.0145542507829 -.float 4.17418902754e-07 -.float 0.0410071625465 -.float 165.985177528 -.float 5.56414291938e-21 -.float 8.52600342891e-33 -.float 2.327108835e-07 -.float 40929.1054466 -.float 0.15679471254 -.float 4.44269720043e-22 -.float 6.54315261199e-34 -.float 2.04444898211e-22 -.float 7.90345289758e+31 -.float 2.81525599787e-10 -.float 4.77604384714e-05 -.float 1.43859733961e-31 -.float 6.30819352987e+16 -.float 0.0738659037919 -.float 1.04660318441e-20 -.float 3.6670113965e+33 -.float 1.53489141003e+36 -.float 2.46066370884e-13 -.float 9.97169373765e+28 -.float 4.16474541729e-22 -.float 5.22525019318e-14 -.float 19016629.3386 -.float 0.361345101383 -.float 3.49223708499e+29 -.float 1.65033264288e+22 -.float 1.55478720793e-12 -.float 1.11658532026 -.float 1.18599288035e-15 -.float 7.23617795489e+15 -.float 2.54718614449e-21 -.float 741292820929.0 -.float 1.24731529377e-29 -.float 1.42197454396e+24 -.float 4.66261019804e-27 -.float 1.30115777564e+19 -.float 4.9212819082e+26 -.float 2.53668521308e+20 -.float 5.29496993328e-21 -.float 3.57249951133e+29 -.float 5.43978043406e+12 -.float 1.22592541756e+17 -.float 6.59634099255e+13 -.float 9.22007545743e-27 -.float 1.29313137099e+12 -.float 1.26513787699e+19 -.float 8.296539634e-06 -.float 2.2755127623e+19 -.float 4.73376035137e-19 -.float 8.0211620982e-07 -.float 2.87423708812e-33 -.float 7.46583947439e-20 -.float 4.91557574285e-29 -.float 5.03026299121e+24 -.float 2.42531008295e-05 -.float 1.70577981213e-23 -.float 4.08845896223e+21 -.float 4.40281110632e+31 -.float 7.63256552073e+12 -.float 4.25585445273e+13 -.float 8.8418715143e-17 -.float 3.85573640258e-19 -.float 1.44685576869e-30 -.float 1488483833.35 -.float 0.00461256265272 -.float 1.90910169422e-27 -.float 1.90499524201e+25 -.float 5.70604918827e-11 -.float 4.5219938092e+27 -.float 1.6853662187e-25 -.float 8.42618399574e-18 -.float 1.77138187801e+31 -.float 3155.04594932 -.float 4.336121842e-13 -.float 4.88472137592e+20 -.float 1.32617145911e-11 -.float 1.39815794714e-25 -.float 56692151688.9 -.float 6.81847046434e-12 -.float 1214.37551263 -.float 0.188944427253 -.float 2.50951853681e-38 -.float 4.48465137747e-33 -.float 1.50792970641e+24 -.float 3.92178172128e+16 -.float 16.8409513187 -.float 1.65773992287e+20 -.float 6.61424014797e-14 -.float 3.40249606127e-32 -.float 1.13047234581e-07 -.float 4.43685896747e-21 -.float 8.95769020608e-10 -.float 3.90946100871e+30 -.float 1.16243749162e+34 -.float 1.4539575721e-15 -.float 4.47293222593e-39 -.float 2.21221621272e-05 -.float 2.99826957567e-18 -.float 6.56767810212e+26 -.float 7.25521717735e+21 -.float 1.57890348235e-24 -.float 2.50815954586e-27 -.float 0.0208693829554 -.float 3.70916041566e+30 -.float 5567835.63723 -.float 1.63003122146e+32 -.float 1.34991363699e-30 -.float 0.00443421436041 -.float 6.59479382739e-29 -.float 0.00546255111033 -.float 1.14863957109e-24 -.float 7.69205002163e-19 -.float 1.15011179442e+30 -.float 8.31865663115e-13 -.float 3.08935738192e-34 -.float 1.79136230957e+15 -.float 1.08431996343e-07 -.float 0.0621596429624 -.float 7.58249255193e-29 -.float 1.88864870123e+35 -.float 56671117.1755 -.float 2.44417825956e+16 -.float 1.49247000008e+26 -.float 74.1741152816 -.float 3.18429880767e+13 -.float 2.93628338101e+35 -.float 191555713.301 -.float 2.76043053698e+26 -.float 509958360770.0 -.float 3.22496576746e-32 -.float 9.06615060277e-08 -.float 1.69386669887e-21 -.float 491.659999751 -.float 2.13520350267e+18 -.float 0.00087965601577 -.float 2.29966834843e+18 -.float 242374.679248 -.float 3.74922535293e-37 -.float 9.83050465389e+18 -.float 441.830874136 -.float 2.95106800726e-37 -.float 1.00116027876e-37 -.float 4.21429191984e-07 -.float 1.90990314673e-23 -.float 1941.20719505 -.float 1.55177600816e-18 -.float 5.52041870888e-25 -.float 4.40065461134e+22 -.float 8.35194002213e+31 -.float 4898525461.87 -.float 1.40486058618e-15 -.float 1.01496969096e+26 -.float 2.73809616006 -.float 4.31553910248e-39 -.float 3.01902352839 -.float 4.53149776122e-28 -.float 2.03218781275e+30 -.float 4.17634101904e+22 -.float 3.14658517963e-12 -.float 1.0754626397e-05 -.float 2.5957418743e+18 -.float 7.22188433846e+32 -.float 1.61356424384e-28 -.float 9.76852475232e-16 -.float 11558.8955877 -.float 86421886.6822 -.float 1.67480676117e-28 -.float 3.29026145117e-39 -.float 0.000217374169742 -.float 2.05266171903e-38 -.float 2.38637625697e-22 -.float 3.27111535283e-10 -.float 1.05643666195e-14 -.float 0.00687483276508 -.float 1.96374641277 -.float 12693.3428446 -.float 2.70958042616e+25 -.float 1.06536656769e+35 -.float 2.42913810864e+27 -.float 3.21007150533e+22 -.float 6.73854594298e+19 -.float 5.77666904841e-21 -.float 2.75614026772e-25 -.float 3.16139404228e+18 -.float 6.23721228157e-17 -.float 5.25380600767e-38 -.float 912.271870769 -.float 2.84953679531e-32 -.float 1.59416465764e+17 -.float 0.000171441318377 -.float 1.33975081055e-20 -.float 5.33377859794e+23 -.float 2.80782886073e-06 -.float 4.28869280388e-14 -.float 570068644.553 -.float 1.32017994439e+23 -.float 25047652.7742 -.float 7.90522055094e+29 -.float 0.0847839630097 -.float 1.17579301982e-31 -.float 6.73503462146e-11 -.float 1.37127219301e-17 -.float 7.62914842529e+29 -.float 1.62313560968e+32 -.float 0.925414350146 -.float 4.61732210997e-20 -.float 5.90444277916e-17 -.float 7.0281930359e-19 -.float 1.2992299864e-11 -.float 2.98272017577e+31 -.float 9.06729221499e+30 -.float 3.11521676784e-06 -.float 1340829786.08 -.float 4.35938785994e+31 -.float 1.48952877683e-06 -.float 4.54363431212e+31 -.float 7.76692121855e-26 -.float 1.05471154003e+30 -.float 1.58613370516e-34 -.float 9.9738540205e+34 -.float 581632.730155 -.float 1.20438055019e+12 -.float 8.06452564223e+26 -.float 1.96548466142e+14 -.float 74.034242539 -.float 2.79606705085e+35 -.float 3.07172703308e-22 -.float 0.113929286711 -.float 3.73985353678e+25 -.float 2661786147.41 -.float 0.00597549926832 -.float 5.56738070899e-19 -.float 1.31143717484e+26 -.float 1.16330888194e-33 -.float 1.54742231046e+33 -.float 6.56199863092e-24 -.float 4.02238459207e-11 -.float 3.08761179902e-06 -.float 6.82745852946e-06 -.float 1.41649704074e+36 -.float 1.4304656333e-18 -.float 3.83665802624e+13 -.float 2.76097393191e+24 -.float 3.11907415201e-07 -.float 2.12225822417e+20 -.float 4.19806781942e+29 -.float 2.91644765749e-08 -.float 1.5941053025e-21 -.float 1.25715364147e-36 -.float 7.51035037698e-07 -.float 8.0758881345e+19 -.float 3.27543959618e-32 -.float 1.13284234336e+22 -.float 216.191267363 -.float 1.13206898239e-31 -.float 4.42183047216e-33 -.float 1.3199053508e+14 -.float 2.41854267469e-18 -.float 1.85692433451e+25 -.float 5.61392117837e-25 -.float 3.71357751503e-37 -.float 8.18564302052e-22 -.float 2.41192377775e+17 -.float 1.47071573756e+34 -.float 1.54889331822e+35 -.float 2.08252571679e-36 -.float 4.2436808995e-29 -.float 6.18749797889e-38 -.float 3.5207527479e-14 -.float 9.70629791384e-16 -.float 1.76150339134e-32 -.float 9.6144635985e-35 -.float 25759627129.2 -.float 1.75808308408e+18 -.float 9.09566318649e-30 -.float 9.66628195983e+20 -.float 11945.8093501 -.float 0.000242493672738 -.float 2.79582116436e-08 -.float 4.54960119121e-27 -.float 3.37952588336 -.float 262823229792.0 -.float 6045671892.91 -.float 1.76449898364e-11 -.float 1.95989760008e-05 -.float 9.5537544923e+13 -.float 3.20988015728e-39 -.float 2.07628267269e-10 -.float 6940599.97102 -.float 2.1896451451e+27 -.float 3.53604427373e-25 -.float 680.860446961 -.float 204121.598715 -.float 3.22641879528e-20 -.float 1.59724582973e-17 -.float 5.1786930493e+21 -.float 3.91827331063e+12 -.float 2.20247573682e+20 -.float 1.86422598941e-29 -.float 1.52453287798e-18 -.float 1.07068607713e+25 -.float 4.40194107997e-38 -.float 8757.20406605 -.float 2.36990403787e-37 -.float 1.82555768242e-13 -.float 3.72741473254e-18 -.float 1.22528089534e+17 -.float 1.78918484431e-39 -.float 6.05059799705e-09 -.float 1.88132195524e+17 -.float 1.52685097322e-16 -.float 1.28355777293e-14 -.float 3.22532237029e-14 -.float 3.75371087987e+16 -.float 2.01831533081e-11 -.float 1.56222312714e+31 -.float 1.14010903371e+26 -.float 1.08910871796e-27 -.float 1.76046434823e+14 -.float 3.52426998421e+37 -.float 6.18739290445e-07 -.float 1.0102595411e+37 -.float 9.37345915993e-18 -.float 0.00570834254394 -.float 2.50072236168e-26 -.float 144191.663265 -.float 2.20307134216e-18 -.float 1.57874630136e-24 -.float 1.56212183328e+17 -.float 79862.0677328 -.float 7240695.8625 -.float 2.52602781715e-18 -.float 1.61452530081e+19 -.float 15.6958935214 -.float 6.57974039766e-21 -.float 5.71198621709e+14 -.float 604.732281711 -.float 3.82695295923e-12 -.float 3.0514770143e-17 -.float 8.40844166527e-05 -.float 7.15204224965e-06 -.float 6.46023729779e+35 -.float 2.06563067712e-35 -.float 1.58757833133e+33 -.float 0.0561977507707 -.float 3.92302461078e+18 -.float 1.22217125143e-28 -.float 2.94200457279e+26 -.float 2.17456025417e-30 -.float 16.0206026664 -.float 9.43161862607e-21 -.float 22900.4140526 -.float 0.00020815017648 -.float 0.00192056339327 -.float 5.59712778794e+25 -.float 1.03463794663e-30 -.float 1.73410851304e-29 -.float 0.0501219314442 -.float 1.34208197292e-39 -.float 207874246.373 -.float 1.02949202233e-15 -.float 9.96812292667e-20 -.float 3.13754334387e-29 -.float 831537.087434 -.float 1.70296462802e+25 -.float 4.9072256492e-18 -.float 6.75082750914e-14 -.float 9.08826991919e+24 -.float 7.77334924674e-17 -.float 9.06492358005e-25 -.float 8.89900125574 -.float 1.26347798259e-22 -.float 3.27061956471e+26 -.float 4.24322347345e+36 -.float 1889775.99967 -.float 3.00039006687e+26 -.float 2.73037088344e-10 -.float 1.00451230352e-19 -.float 2.24541046056e+33 -.float 2.77209840035e-31 -.float 7875983.68471 -.float 9.18106509613e+18 -.float 2.54067829744e-31 -.float 6.82567816948e+28 -.float 3516.3808991 -.float 8.32357384679e+24 -.float 1547388.47739 -.float 6.50022406604e-26 -.float 9.07214805492e-16 -.float 74532375.2401 -.float 5.93366033929e+18 -.float 3.91198595696e-10 -.float 9.10364999438e-38 -.float 9.40540215005e-14 -.float 9.41818977298e-19 -.float 4.74911951617e+34 -.float 1.73816807703e+37 -.float 3359408.95485 -.float 8.61090437417e+28 -.float 1.80405080094e-36 -.float 1.9906778698e+12 -.float 3.61558669157e-23 -.float 1.35045375173e-23 -.float 7.7692168599e-05 -.float 2.67399531744e+15 -.float 5.4659474938e-29 -.float 8.03249386884e-08 -.float 3.66155753893e+12 -.float 1.11466257297e-05 -.float 3.33412700288e+33 -.float 1.97724062663e+17 -.float 0.015022254617 -.float 4.5362718633e-39 -.float 1.38153541778e+27 -.float 3.99941435157e-35 -.float 4.26700525901e-16 -.float 1846.14146801 -.float 5.7668313724e+25 -.float 5251858.20316 -.float 1.17347403407e-23 -.float 12.1194810269 -.float 4.07669129027e-37 -.float 9.30025740668e-34 -.float 3.06147321316e-30 -.float 1.48472086463e-15 -.float 1.39532133372e-06 -.float 1.48575739169e-25 -.float 1.63392136367e+35 -.float 0.00118876898155 -.float 3.3876748893e-35 -.float 0.00110087952189 -.float 7.43099880453e-06 -.float 5.57904869575e-08 -.float 7.42494158454e-38 -.float 7.31620657556e-29 -.float 0.0421471557759 -.float 779.707951532 -.float 2.68842149646e-26 -.float 1.157027548e-21 -.float 1.24817166521e-06 -.float 0.0635469921928 -.float 30194.5741209 -.float 1.43725852967e+27 -.float 1.8299082484e-29 -.float 4.00640693639e-14 -.float 4.32228376144e-28 -.float 1.9459664459e+23 -.float 3.93682091144e+27 -.float 1.35613558652e-19 -.float 0.000230448221845 -.float 4.47691004705e-10 -.float 3.37184713834e-10 -.float 487567.938693 -.float 2.96667002959e+22 -.float 3.030888077e+27 -.float 1.02414967755e-29 -.float 6.76576774718e+21 -.float 8.498106791e-17 -.float 3.16802945803e-18 -.float 1.10463722875e+33 -.float 3.06455497766e+22 -.float 6.76401168659e+25 -.float 249439932.707 -.float 1.39780234981e+27 -.float 8.53562674876e+37 -.float 3.16389953237 -.float 13.0408425026 -.float 6.92391519273e-22 -.float 5.64770675428e-14 -.float 9.39051884094e+15 -.float 3.17573402694e-38 -.float 1.62280638194e+28 -.float 1.92811352128e-19 -.float 3.31097324103e+16 -.float 2.78320095809e-27 -.float 1.22442709163e-25 -.float 3.20173473275e-07 -.float 7.2161282149e-29 -.float 232.506488591 -.float 2.74410530346e-11 -.float 0.000110851262418 -.float 8.40083536766e-07 -.float 1.52313500691e+15 -.float 8.32574178911e-24 -.float 7.34766095343e-10 -.float 2.13846277268e-32 -.float 8.12631805569e+18 -.float 3.74881937976e-07 -.float 4013904.46371 -.float 839494838690.0 -.float 25472159630.8 -.float 6.1731861288e+29 -.float 1.53402519921e+38 -.float 1.88467060933e-20 -.float 1.58949368306e-35 -.float 7.1569969006e+23 -.float 8.2596244137e+26 -.float 3.06918988083e+15 -.float 2.71278704436e-15 -.float 6.81494068104e-15 -.float 10560.1302474 -.float 3011.79345862 -.float 3521.66969619 -.float 18037.376464 -.float 5.95663203003e+19 -.float 1.89592107932e-30 -.float 3.08128873113e+20 -.float 5.56062137644e-12 -.float 4.95888972522e-18 -.float 2.69433026357e+17 -.float 2.84241741028e+33 -.float 2.41849878317e-26 -.float 264224594484.0 -.float 4.04317884034e+34 -.float 4.1193513718e-29 -.float 0.00100277853879 -.float 3.18017437528e-08 -.float 13081.9909755 -.float 4.49170623632e-23 -.float 1.84012209662e-07 -.float 6.7469061112e-06 -.float 3984.86097306 -.float 0.113001526649 -.float 1.41760512203e-05 -.float 3.85284330686e+28 -.float 5.15593511166e-05 -.float 4.44051169413e-14 -.float 3.4170859117e+27 -.float 1.74053437956e+28 -.float 9.28296396188e+21 -.float 2.2835814237e+24 -.float 4.67942638207e+32 -.float 3.18992095268e+32 -.float 1.92745554887e+28 -.float 2.23096010033e+20 -.float 0.0668692319931 -.float 0.00711235005025 -.float 51388.861572 -.float 1.2998863367e-39 -.float 208720.423197 -.float 7.36620752455e+20 -.float 9.01554240059e-26 -.float 5.25911677278e+15 -.float 5.65046325489e-07 -.float 2.1882070393e-27 -.float 4.13129358319e+20 -.float 2.0345655817e+28 -.float 3.70209036045e+34 -.float 0.00338459867264 -.float 1.11191648589e+29 -.float 4.15109769909e-30 -.float 2.57543870124e-14 -.float 1.33773258894e-23 -.float 2.06086298439e+33 -.float 2.48439910929e+14 -.float 1.8246373785e-38 -.float 4.78960723774e+12 -.float 3.00256857913e-32 -.float 0.0074111535823 -.float 2.95281311341e-25 -.float 3.52499651337 -.float 4.85915458008e+22 -.float 1.5379061497e+22 -.float 1.9021442093 -.float 6.49962405494e-09 -.float 587644966.759 -.float 0.48213786304 -.float 321.982167109 -.float 57219934752.6 -.float 3.19653485346e-14 -.float 2.62824189354e+26 -.float 3.87761987716e+18 -.float 4.61510917538e-05 -.float 1.72184615209 -.float 3.7049019335e+13 -.float 0.914108781925 -.float 1.30320726064e-20 -.float 1.05384688568e+25 -.float 5.78986026832e+20 -.float 1.95795308903e+29 -.float 2.15074723733e-13 -.float 2.42369630186e+21 -.float 2.30422224807e+21 -.float 13.7509055849 -.float 8.85055427124e+17 -.float 4.53761129158e+19 -.float 1.54106108989e-05 -.float 6.89202176233e-40 -.float 2.79717608451e+21 -.float 1.69905724309e-28 -.float 4.23324820118e-28 -.float 1296.44451816 -.float 2.56142546002e-09 -.float 2.45207085063e-17 -.float 1.09719309564e-09 -.float 6.01882436463e-16 -.float 12786395549.9 -.float 1.06739251197e-06 -.float 6.40460868261e+32 -.float 1.08459974388e-07 -.float 2.73127620973e-07 -.float 1.57433459116e-24 -.float 2.94900468323e-35 -.float 2.75707094031e+32 -.float 1.18327934201e+17 -.float 2.47066925823e+36 -.float 2.07397977053e+18 -.float 8.71174031839e+13 -.float 145268556.731 -.float 1.3233690149e-23 -.float 1.29996394152e-06 -.float 1.05440446383e+35 -.float 1.581950074e-38 -.float 1.26978290735e+31 -.float 1.80804434107e-31 -.float 2.49479935808e-08 -.float 1.06302530639e+34 -.float 1.81274222933e-19 -.float 2.50519652121e-20 -.float 1.50231912519e-06 -.float 0.146758547861 -.float 4456612.36729 -.float 4.17702161012e-11 -.float 1.2238962256e-23 -.float 1.99493514487e+30 -.float 6.13119648021e-18 -.float 1.36190003229e+23 -.float 108960.549928 -.float 1.10047568837e-26 -.float 1.05785036934e+12 -.float 0.0490615973095 -.float 68811.2146185 -.float 6.45035475078e+19 -.float 2.79285960489e-13 -.float 1.19761340564e-18 -.float 4.45339260968e-10 -.float 7.02346145013e+14 -.float 4.16119127466e-26 -.float 2.82600196579e-05 -.float 2.53527131345e-15 -.float 3.35463320226e+24 -.float 1.0130141719e-31 -.float 3.87599977596e-37 -.float 1.23080083006e-06 -.float 7.12496165433e-08 -.float 1.06344667937e-27 -.float 5.99174890638e-07 -.float 2.10469617406e+23 -.float 3.04004089068e-11 -.float 25353373691.4 -.float 8.4331524224e+17 -.float 4843.33112009 -.float 1.18035686381e+23 -.float 3.08631813494e+21 -.float 0.000269804125261 -.float 1.05126038892e+18 -.float 1.57188416491e-27 -.float 7.4219225389e-36 -.float 1.21855347388e+18 -.float 1.35306886412e+16 -.float 1.38261029522e-30 -.float 9.58692962651e+13 -.float 1.66519584381e-09 -.float 2.63262654056e+35 -.float 0.00013098332012 -.float 1.41295166109e+18 -.float 49831.9597667 -.float 3.58420506897e-19 -.float 3.33863037402e-10 -.float 6.14006967283e-18 -.float 1.36396464291e-09 -.float 8.51406468996e-39 -.float 3.83755640297e-16 -.float 1.62105946743e+34 -.float 28603586756.2 -.float 92286767697.2 -.float 1.48728487323e+20 -.float 3084072965.0 -.float 2.90353587112e-28 -.float 2.41037671208e+14 -.float 6.37624539996e+27 -.float 5.75969159264e+32 -.float 3.25853940659e+23 -.float 2.08452662895e-32 -.float 0.000815923193232 -.float 4.59534801519e-07 -.float 8.33782539139e-08 -.float 9.91133130647e+22 -.float 2.5055253267e-30 -.float 1.44369842066e+35 -.float 3.64799712436e-37 -.float 0.731311863016 -.float 3.56033858736e+22 -.float 2.11411791584e+34 -.float 4.28633234177e-32 -.float 2.82972612117e-24 -.float 5.26790039519e-27 -.float 1.61850152205e-08 -.float 6.74166304979e-31 -.float 9.98622366719e+25 -.float 1.29873160027e-32 -.float 103807.012277 -.float 4.78857383969e-28 -.float 4.3356027161e+36 -.float 2.35785218766e+28 -.float 3.24379526331e-34 -.float 3.57720652362e-06 -.float 1.9726528894e-28 -.float 2.87392305275e-11 -.float 9.77832327564e+28 -.float 6.47698087641e-30 -.float 0.166046053029 -.float 66.699175322 -.float 0.00037721331261 -.float 8484857188.56 -.float 2.57774096661e+15 -.float 70427521958.8 -.float 3.43991562216e+18 -.float 3.58910731091e-19 -.float 1.1065092179e+26 -.float 6.52495503884e-15 -.float 2.96952327144e-31 -.float 4.9002835884e-09 -.float 1.10458010883e-32 -.float 3.29908126556e-12 -.float 5.24561610795e+30 -.float 1.09674554469e-38 -.float 2.55884531074e+14 -.float 0.00246282919589 -.float 3.32659056753e-24 -.float 1.18104560676e+19 -.float 4.9900249063e+14 -.float 5.21339999535e-05 -.float 2.04604434689e-30 -.float 9.92937226402e-28 -.float 1.68034968703e-05 -.float 879289.624705 -.float 6.74111367094e-39 -.float 3009962.68616 -.float 5.00971747465e+16 -.float 4.9654331923e+26 -.float 7.57099775266e+24 -.float 1.2789662253e+20 -.float 0.00539832983749 -.float 4.17339345109e+29 -.float 9.85113643927e+13 -.float 1.30330788782e-38 -.float 3.01891733525e-28 -.float 1.92171525865e-39 -.float 2.41786539868e-14 -.float 1.86629934925e-29 -.float 4.5031655043e+29 -.float 1.84899338757e+34 -.float 0.0459058314977 -.float 2.7363951522e-10 -.float 2.09886563071e+20 -.float 3.83948710417e-20 -.float 1.67532504473e+36 -.float 2.87095551741e+21 -.float 6.48242159927e+27 -.float 1990344621.03 -.float 94353.8419946 -.float 4.32201677317e+12 -.float 5.53948929527e+15 -.float 5.75287963131e+36 -.float 3.33359794237e-36 -.float 1.69272733865e-14 -.float 0.000789188178467 -.float 1.89040274864e-22 -.float 542.190227315 -.float 8.93236436104e+24 -.float 886.58588734 -.float 0.00174050980247 -.float 2.12260706512e-17 -.float 8.17151772786e-38 -.float 579623.274275 -.float 7.1167640661e+35 -.float 0.64744543459 -.float 0.000482474364829 -.float 2.40902358091e-11 -.float 3.5695242094 -.float 2.02147922237e+15 -.float 1.81559217669e-34 -.float 2.35245744076e-26 -.float 0.0347234326054 -.float 6.78604839117e-26 -.float 1.1063700195e+35 -.float 1976049679.19 -.float 4.10636144109e-38 -.float 7.56796316155 -.float 3.43596708709 -.float 2.38845903682e+18 -.float 3.01120717143e-25 -.float 1.15440771396e-27 -.float 5.72292336451e-18 -.float 5.15495055225e+28 -.float 9.45541538144e-19 -.float 1.68963824288e+14 -.float 50043101.0391 -.float 4.14216942257e-22 -.float 1.14411876492e+21 -.float 1033053.29406 -.float 57.1354062837 -.float 1.15248258843e-35 -.float 8.78576202085e-21 -.float 3.78929153644e+33 -.float 5.01237970629e+24 -.float 4.20776048836e+16 -.float 3.69919716101e+28 -.float 1.0773055106e+14 -.float 15304.5121058 -.float 5.01775760513e-39 -.float 1.17718550401e-39 -.float 1.28827322502e-08 -.float 3.17712315337e-23 -.float 1.20069237909e-12 -.float 8.21447388333e+35 -.float 2.30284520411e-21 -.float 4.34654795939e+21 -.float 2.81948021322e+29 -.float 0.0160634138498 -.float 5.85777750182e-23 -.float 1.37291129463e-32 -.float 5.5090338633e-05 -.float 1.91383833283e-38 -.float 1.99837728743e+27 -.float 1.12030193891e-26 -.float 4.85251805942e-39 -.float 5.8340676859e-10 -.float 4.5547283768e-31 -.float 4.57071310371e+24 -.float 2.24709354593e-06 -.float 2.51327869872e-23 -.float 2.82934501204e+19 -.float 2.72632666876e+16 -.float 3.03942926561e-10 -.float 1.39578986257e-36 -.float 30609997.4796 -.float 2.35645406877e-39 -.float 3181.5717651 -.float 1.76403620151e-25 -.float 237154894516.0 -.float 2.39908676409e-18 -.float 2.54531652014e-05 -.float 4.98399638216e+12 -.float 1017245.89018 -.float 6.3272021897e-38 -.float 1603.08363559 -.float 2078497232.12 -.float 4.00630196877e-21 -.float 1.08441078261e-38 -.float 2.21841495798e+23 -.float 7.24913059348e-14 -.float 2.69215821912e-19 -.float 2.84738607571e-10 -.float 2.2662045011e+32 -.float 7.06242772051e-08 -.float 1.0461125116e+17 -.float 1.00683551182e-28 -.float 1.90110056688e-22 -.float 8546948.88391 -.float 1.41095260322e-13 -.float 8.07515667404e+32 -.float 0.0218051350925 -.float 1483.61345371 -.float 1.02118692903e-39 -.float 1.02775409857e-17 -.float 1.69804123474e-31 -.float 4290.31191265 -.float 1.89406107903e-20 -.float 1.17766851993e-08 -.float 3.65526873305e+33 -.float 1.60101244011e-18 -.float 1.06982247624e-16 -.float 4.52809702182e-07 -.float 3.68778068951e-31 -.float 0.108636541129 -.float 3.50022159429e+34 -.float 553556976373.0 -.float 1.92914860576e+32 -.float 2.65408504737e+36 -.float 3.74409699137e-32 -.float 5.18736361436e+25 -.float 4.43150093355e+26 -.float 72765.2011948 -.float 4.38842233175e+16 -.float 6.01236721333e+23 -.float 2.66778519944e-20 -.float 3.8225476518e+33 -.float 5.07113646054e-10 -.float 0.00214783477638 -.float 3.34740038978e+31 -.float 1.14788655769e-20 -.float 1.1088230856e-12 -.float 0.000750789187885 -.float 2.98684328547e+28 -.float 3.94960246559e-14 -.float 0.102180550395 -.float 289832663367.0 -.float 1.15702531105e+25 -.float 5.345319694e-16 -.float 4.78983058278e+26 -.float 2.16972572473e+19 -.float 2107994045.45 -.float 8166208787.19 -.float 1.12706612436e+22 -.float 4.5145905828e+36 -.float 3.64570296157e+36 -.float 3.61730305062e-37 -.float 1.10060554016e+15 -.float 0.000362589967099 -.float 2.44262091897e+30 -.float 1.76659721857e-34 -.float 8.6764190507e-38 -.float 1.53953497796e-34 -.float 9.77906536791e+33 -.float 1.23528155707e-39 -.float 25.4317548052 -.float 247233.278041 -.float 9.46841524334e-13 -.float 2.94207325405e-05 -.float 2.87493652229e+29 -.float 1.97852825704e+14 -.float 4.13010827091e-24 -.float 5.95229780278e-06 -.float 4.74725479624e+14 -.float 1.41531255613e+36 -.float 3.85329484069e+22 -.float 12959064839.8 -.float 6.65620064075e-34 -.float 6.77121914948e+30 -.float 1.23866117159e+30 -.float 1.04155314073e-23 -.float 4.68261874476e-07 -.float 1.9405247718e-22 -.float 6.07237277097e+21 -.float 1.52763640622e-38 -.float 2.45207841611e-19 -.float 7.29802885029e-09 -.float 1.15794001529e-36 -.float 9.29716206692e-07 -.float 5.97999199178e+23 -.float 3.60532019352e+29 -.float 5.88625686594e-06 -.float 4.70091533795e+35 -.float 1.17914414583e-28 -.float 6.94651149222e-32 -.float 1.01982816619e+28 -.float 1.62149800384e-38 -.float 5.48861963152e+17 -.float 1.76447407063e+29 -.float 1.50562532292e-36 -.float 3.30826899442e+23 -.float 1.05488561934e+33 -.float 5.52257912852e-13 -.float 0.00310612359185 -.float 1.67216425548e-06 -.float 7.90675955541e-07 -.float 2.46893512016e-34 -.float 8.12208440821e+22 -.float 0.000535537501654 -.float 2.39883188636e+27 -.float 9.3813083272e+34 -.float 3.11030243266e-29 -.float 1.80042639315e-12 -.float 6.55354554868e-22 -.float 1.25321010663e-09 -.float 4.39364935842e-26 -.float 8.47800731488e-12 -.float 2.79761464117e-08 -.float 1.32167782983e+32 -.float 4.1314847026e+20 -.float 0.0447675428763 -.float 1.68618335593e+21 -.float 2.0831569672e-32 -.float 1.67170836125e-37 -.float 9.75090704152e-25 -.float 1.6254586386e+19 -.float 4.30602046963e-14 -.float 8.14302713365e+17 -.float 2.06870838098e-15 -.float 2.90309318623e+17 -.float 38435715.5356 -.float 1882.02876272 -.float 1.30546344271e+23 -.float 2117301055.04 -.float 6.93038581862e-16 -.float 9.94381745738e+32 -.float 14722006.571 -.float 2.69004941036e+13 -.float 1.05696760486e-25 -.float 427443.35756 -.float 0.118695533072 -.float 5.3393607299e-37 -.float 2.3507346615e-05 -.float 13.7694214241 -.float 8.39417025957e-10 -.float 9.6379705536e+33 -.float 2.22778484872e+14 -.float 2.39684438835e-09 -.float 3.36117510538e-16 -.float 1.47771450142e-38 -.float 3.45258341823e+34 -.float 7.89289507473e+29 -.float 5366.75737422 -.float 7.16737456918e-32 -.float 29354917374.1 -.float 4.12413539603e-38 -.float 3.02513185574e+32 -.float 1.61169626382e-39 -.float 0.000862108202491 -.float 0.290494308851 -.float 9.03161224401e+27 -.float 9.65696092723e-14 -.float 9.17468328823e-23 -.float 4.22504242798e-26 -.float 1.28159826715e+12 -.float 1.43819532301e+20 -.float 2.96118608136e+19 -.float 1.03837906654e+20 -.float 4.46063746675e-09 -.float 1.87244779942e-23 -.float 1.21730052843e-15 -.float 1.9663716722e-38 -.float 7.03576846458e+22 -.float 1.68551707581e-12 -.float 1.72144741575e+27 -.float 4.06971321354e+16 -.float 706049916593.0 -.float 2.64065495918e+13 -.float 2.82612051373e-10 -.float 2.91897438175e-20 -.float 1.35881642069e-30 -.float 7.08138825621e+16 -.float 2.33902656047e-17 -.float 2.5039620237e+23 -.float 8.27941795063e+30 -.float 0.0107717614902 -.float 1.77462676715 -.float 19534503372.1 -.float 2.49189270712e-31 -.float 3.61180019732e-37 -.float 1.46756842899e-10 -.float 10787.2169046 -.float 2.81857412095e-33 -.float 1.57957621671e-09 -.float 4.22327731336e+20 -.float 0.101039561657 -.float 0.0501916640504 -.float 3.09105443547e+37 -.float 1.46847126225e+25 -.float 3.0284302603e-14 -.float 2.22581215657e-13 -.float 8.88156628445e+35 -.float 9.53353560419e-32 -.float 7.33070331657e-30 -.float 7.33350924741e-34 -.float 1.38392548266e-12 -.float 1.93197709817e+18 -.float 1.76154124346e-30 -.float 60341.3716133 -.float 1.94699138608e+33 -.float 1.12160029949e+35 -.float 4.44763953015e+14 -.float 1.40544094808e-11 -.float 1.58006337752e-14 -.float 6.45011362119e-21 -.float 8.85189093419e+27 -.float 2.19535160186e+24 -.float 1.44734141008e-06 -.float 6.69307828516e+35 -.float 11.1291669715 -.float 3.75869686941e-27 -.float 7.55739218742e+31 -.float 1.38897224919e-35 -.float 6.76005325431e-17 -.float 6.81752860598e+34 -.float 4.65707758871e-36 -.float 9.67226852703e-28 -.float 139044.338913 -.float 3.40702137672e-19 -.float 1.66991041391e-29 -.float 1.89694896709e-22 -.float 0.00432139233836 -.float 3.40212099209e-15 -.float 4.39199669339e-17 -.float 0.0310861366878 -.float 5.29167618478e+31 -.float 1.88437708291e+15 -.float 1.68844091086e+13 -.float 8.61186359509e+30 -.float 0.00136568974995 -.float 1.2587419549e+20 -.float 2.20812248949e-08 -.float 6.04107504127e-05 -.float 3.87770535792e-07 -.float 1.85429490691e+36 -.float 9.57141338283e-24 -.float 8415745.2136 -.float 1.93259765388e+15 -.float 4.72693208846e-15 -.float 4.28331698595e+24 -.float 107434030043.0 -.float 1.27352005952e+30 -.float 5.52578002682e+35 -.float 9.96671833499e+36 -.float 6.82196902576e-29 -.float 4180169134.56 -.float 6.45440568901e+21 -.float 2.07075115849e-29 -.float 2.61538080241e-10 -.float 6.87626074344e-35 -.float 3.20887840427e+32 -.float 7.65639561563e+36 -.float 1.35734228461e-11 -.float 2.83121374038e-33 -.float 0.105921640704 -.float 3.54862559425e-25 -.float 4.55646754381e+23 -.float 1.09134236846e+32 -.float 2.4971069742e+32 -.float 1.20391706128e+15 -.float 6.64384934995e-22 -.float 0.0815985333922 -.float 0.393038278337 -.float 1.29059406192e-20 -.float 3.96724720072e-19 -.float 1.88982151547e-06 -.float 0.157616393113 -.float 2.8108600175e+35 -.float 1.96865752126e+15 -.float 0.00333890924743 -.float 1482.24825386 -.float 1.25762875683e-17 -.float 41354019261.8 -.float 0.00855088882703 -.float 6.18668699214e+22 -.float 0.124839090177 -.float 6.41868790429e-22 -.float 591106.046128 -.float 1.89497267755e-34 -.float 1.55671536481e+25 -.float 16581135562.6 -.float 8.87631542733e+17 -.float 5.1496620693e-34 -.float 2.71832496621e+17 -.float 6.72790765508e-34 -.float 2290368114.61 -.float 5.44467312708e+19 -.float 9.45816628548e+20 -.float 7.95064584389e-39 -.float 1.35435838038e-34 -.float 1.08689492149e+29 -.float 99981766.6894 -.float 6.32883270029e+16 -.float 2.23738258031e-26 -.float 1.38698159073e+22 -.float 1.56687741881e-13 -.float 1591.62298948 -.float 1.94791583758e+23 -.float 34089434645.9 -.float 2.40491697404e+35 -.float 1.60705357057e+31 -.float 8.61884386939e-30 -.float 4.30886896012e+27 -.float 1.72284774555e+16 -.float 2.95460336894e-05 -.float 2.5680369664e+33 -.float 1.68540621979e-22 -.float 8.99646051899e+20 -.float 6.1306546046e-39 -.float 254.601038665 -.float 3.00203926023e+20 -.float 1.62144697159e-28 -.float 4.99643372509e-28 -.float 3.15481674005e-27 -.float 3.55732112743e-28 -.float 0.00564138936693 -.float 2.40241852499e-35 -.float 1.16296803065e+24 -.float 3.86315351771e+28 -.float 1.00141273745e-29 -.float 9.82559830157e+18 -.float 243911.037967 -.float 1.91458270595e-07 -.float 1.44770265082e-06 -.float 2.14035245134e-26 -.float 1.53308674371e+14 -.float 0.0114423362523 -.float 5856.79224423 -.float 1.48711963212e+32 -.float 3.49334325474e-13 -.float 6.97202461379e+28 -.float 0.000434223860939 -.float 7.57907505e+25 -.float 2.25750322386e+26 -.float 2.7886581425e-17 -.float 1.20439210002e-21 -.float 3.26561451142e-29 -.float 0.000276372098139 -.float 0.78952194186 -.float 3.71098129303e-31 -.float 8.63396164112e+16 -.float 98968641.093 -.float 6.45437840133e+25 -.float 1.46769773486e-16 -.float 1.33107736194e+19 -.float 501.587786312 -.float 1.86635429362e-39 -.float 2.72413504531e+25 -.float 0.00661617641205 -.float 1.21762061361e-39 -.float 6.11274269924e+22 -.float 6.39612294144e-19 -.float 4.32685099732e+30 -.float 3434819.29667 -.float 9.67819320819e-20 -.float 6.55691726005e+35 -.float 4.59551128322e+26 -.float 2.88807516603e+37 -.float 4.43481961662e+24 -.float 3.84487773605e-28 -.float 1.91239288265e+35 -.float 1.70138100586e-37 -.float 6.04246953067e-31 -.float 0.180615208972 -.float 1.65473097098e-34 -.float 4.40436968728e+27 -.float 1.22866859059e+30 -.float 2.20617858578e-27 -.float 3.55001106325e-06 -.float 978152475391.0 -.float 1.08774613122e+30 -.float 0.000299766214055 -.float 891.863527223 -.float 1.67446728299e+34 -.float 1.13852234724e-35 -.float 0.00146516570249 -.float 6.79830836588e+31 -.float 1.03772551843e+29 -.float 887155456.912 -.float 6.47269338441e+18 -.float 8.71462360777e+31 -.float 8.50448139188e+30 -.float 5.88367815338e-28 -.float 1.33005198227e-13 -.float 1.36547923072e+17 -.float 3.89469597009e-25 -.float 121728110638.0 -.float 1.22476429696e-07 -.float 10366495310.3 -.float 3.72326215089e+25 -.float 1.16248372466e-07 -.float 9.89351988734e-22 -.float 2.95257599771e+18 -.float 3.29938299498e-33 -.float 231671.251896 -.float 5.63506243102e+24 -.float 3.44897737873e-38 -.float 17.3992530749 -.float 2.73963862391e-33 -.float 2.39679385653e-06 -.float 3.62671625349e-15 -.float 177251.515269 -.float 2.05387722309e+36 -.float 9.66971590681e+13 -.float 5.51045449761e-18 -.float 7.73934480664e-20 -.float 1.29124978441e-12 -.float 4.45075461137 -.float 5.07659890278e-22 -.float 6.4734801802e-39 -.float 5.63344842927e+35 -.float 7.69082319045 -.float 273523383133.0 -.float 9.29207928067e-34 -.float 0.70910156099 -.float 3.03334443794e-21 -.float 3.87429533761e+12 -.float 2.44330169751e+31 -.float 0.000363029820882 -.float 243.456687807 -.float 1.39976095334e-07 -.float 1.35692736045e+29 -.float 4.47304908934e-22 -.float 81901.1167568 -.float 3.58299486505e-09 -.float 3.203252658e-06 -.float 3.26210311677e-11 -.float 4.72349322111e+28 -.float 31739983.9077 -.float 73855262495.3 -.float 616486817.369 -.float 3.42161799439e-40 -.float 7.7171072878e-26 -.float 1.906660642e+35 -.float 2.42402177945e-32 -.float 9.18907906415e-18 -.float 9.1757949436e-15 -.float 5.46475761235e-18 -.float 1.98400457294 -.float 1.37753280494e+29 -.float 1.26240611032e-20 -.float 7.26377035662e+14 -.float 9766592.47623 -.float 0.0312595030806 -.float 5.14918756232e-20 -.float 271746.118699 -.float 5.47464571353e+21 -.float 8.55527421289e+28 -.float 2.71305318748e-37 -.float 219.961802116 -.float 0.00341499359619 -.float 1.71656873101e+15 -.float 1.08478813932e-09 -.float 1.01750328173e-32 -.float 4.24558502907e-35 -.float 822769689.729 -.float 0.000281728146904 -.float 0.00730898968586 -.float 7.31094950691e+14 -.float 0.00824051878122 -.float 2.26348788381e-28 -.float 4.10124485317e-17 -.float 52.7775211409 -.float 2.08711879524e-29 -.float 1.64335408009e-36 -.float 1.14316059575e-38 -.float 741.276277952 -.float 9.7722385239e-09 -.float 56446.9358477 -.float 1.6611281106e-16 -.float 6.35306976645e-19 -.float 6.33228884771e-31 -.float 5.21897620386e-39 -.float 7.13412678469e+35 -.float 1.70725804344 -.float 8.23337732843e-22 -.float 1.42107461838e-32 -.float 1.36661037325e-23 -.float 3.73652136545e-31 -.float 1.27948318914e+22 -.float 2.36351291702e-13 -.float 2.04525060326e-25 -.float 7.51575916616e+22 -.float 1.11571314521e-24 -.float 5.25835952693e+33 -.float 8.70460039631e+29 -.float 7.19477277316e+18 -.float 1.23046013311e-16 -.float 8.50443775522e+33 -.float 6.12179832796e+15 -.float 1.44705553438e-19 -.float 1850820.18783 -.float 4.33311614379e-38 -.float 1.00857403343e+21 -.float 1.0963185166e-31 -.float 0.028514816324 -.float 3.17856667823e+37 -.float 2.83861455854e-15 -.float 256041.790304 -.float 4.14593340961e-29 -.float 1.06373163287e+26 -.float 4.52830419507e-38 -.float 7.40555337493e-29 -.float 203065826863.0 -.float 9.34000499954e+26 -.float 2.83748644133e-10 -.float 1.03130189027e+14 -.float 5.06679553796e+14 -.float 5.61883436462e-19 -.float 8.7319078111e+15 -.float 1.26864648708e-18 -.float 3.18486312229e-27 -.float 6.00405217059e-25 -.float 5.66870397271e+24 -.float 2.2828560401e-26 -.float 3.27715370427e-08 -.float 0.0479775537599 -.float 4.23171414827e-26 -.float 7.16925277797e-34 -.float 1.60377548546e+27 -.float 6.53263246504e+28 -.float 4.07428696825e-05 -.float 0.169484881419 -.float 2.58485753622e-11 -.float 2.76495808508e-10 -.float 211.149054017 -.float 3.29252567273e-16 -.float 1.15643123161e-38 -.float 3.21580286533e-32 -.float 6.34864832017e+34 -.float 4.79537994177e-09 -.float 255042.201569 -.float 4.61820133485e+23 -.float 6.46507077005e-05 -.float 1.49579143937e+35 -.float 9.28225018582e-39 -.float 5.55657047815e-30 -.float 1.44684042777e+35 -.float 1.04314473226e-30 -.float 1230075.52106 -.float 363.460899018 -.float 2.13553724116e-24 -.float 5.24363294288e+14 -.float 2.08713241308e-13 -.float 4.3216510575e-07 -.float 2.28471763114e+36 -.float 1.4341896581e-12 -.float 8945563.60707 -.float 1.54458579527e-29 -.float 4.31586801488e-07 -.float 1.1350762424e-39 -.float 8.09554980399e-09 -.float 2.03734456152e+18 -.float 2.09521677465e+16 -.float 20714488062.7 -.float 4310624516.72 -.float 6.65314994302e-21 -.float 8.68953665847e+30 -.float 2.78208137245e+27 -.float 2.78430406376e-11 -.float 208.663686178 -.float 2.60343197409e+24 -.float 7.81862954849e-20 -.float 1.69221023437e+14 -.float 3.02417850481e-27 -.float 7.40911824709e-26 -.float 484246186.116 -.float 1.18755946806e-34 -.float 9.01721411657e-34 -.float 3.92221096802e+29 -.float 2.04774669905e+15 -.float 3.58035319614 -.float 6.13085883036e-07 -.float 2.38681549433e+13 -.float 2.74993944405e-33 -.float 8.5491758333e-13 -.float 1.99102008318e+19 -.float 9.07005158345e+36 -.float 3.35712750914e+20 -.float 4.36689580347e+12 -.float 5.50250428324e+35 -.float 100821049.776 -.float 6.40816945727e+25 -.float 2.09107366514e-19 -.float 7.32912341125e+31 -.float 4.58223217256e-26 -.float 4.39607110372e+31 -.float 3.06432111456e+26 -.float 2.11727463832e-33 -.float 0.000103353408809 -.float 9.19446221253e+24 -.float 3.5245958535e-12 -.float 3.5297727102e-32 -.float 8.20671993469e-25 -.float 2.05127594136e-15 -.float 8.61167619591e-33 -.float 660622158468.0 -.float 3.325650938e+24 -.float 1.98496959254e-22 -.float 5.52195410556e-36 -.float 3.99738170335e+29 -.float 117.573436947 -.float 4.40572451888e-10 -.float 1.97490391061e-13 -.float 6.71121073942e-25 -.float 8.43554492397e-26 -.float 1.73791186206e+19 -.float 2.16121458016e-23 -.float 8.40148960329e-15 -.float 619548.124101 -.float 5.03740381643e-23 -.float 3.75997255476e+23 -.float 0.000144470987642 -.float 9.36209913875e-18 -.float 7946077399.27 -.float 3.91164865967e-35 -.float 3.77073617847e-07 -.float 344.345252021 -.float 31.2282159962 -.float 7.56250713565e-07 -.float 687.367555424 -.float 1.65324539767e-34 -.float 1.16358834886e-06 -.float 3.30135501773e+28 -.float 5.29402728776e-15 -.float 5.18457596213e-33 -.float 7.64400294148e-30 -.float 5.00019407375e-05 -.float 5.08610190729e-37 -.float 1.04866771905e-13 -.float 1.73916401043e-29 -.float 1.94865641674e+23 -.float 5.05482546824e-11 -.float 0.107809916636 -.float 1.96035727375e+17 -.float 3.24407994437e+16 -.float 1.3112012194e-31 -.float 1.58903205975e+25 -.float 1.44035481574e-33 -.float 6.02582004127e+30 -.float 9.6831042089e-35 -.float 4439450141.31 -.float 463413238995.0 -.float 7.72480650174e-06 -.float 1.27681225489e+27 -.float 1.53700725651e-31 -.float 9.99225786582e+18 -.float 1.00443293557e+25 -.float 2.35488162877e-39 -.float 49002328442.8 -.float 55066070.5956 -.float 1.42861063513e-36 -.float 4.08156231228e-30 -.float 137095.924238 -.float 0.000317703695696 -.float 6.78999430794e+21 -.float 2.50926830098e-17 -.float 140937.048755 -.float 1.70842114801e+15 -.float 3.65066460886e-14 -.float 7.22782252739e-25 -.float 5.22913940143e+33 -.float 1.35999899645e+34 -.float 5.68451670914e-21 -.float 1859810679.29 -.float 2.65194127318e-39 -.float 4.46018479121e-35 -.float 253666.519132 -.float 24761609.881 -.float 6.13877583922e+26 -.float 1.36215087696e+28 -.float 1.26106417264e-29 -.float 2.28259880253e+17 -.float 2.04936803925e-13 -.float 1.20670642259e-08 -.float 1.19814377831e-27 -.float 288.599500597 -.float 7.21192782798e+17 -.float 2.82420258633e-33 -.float 13541.7625394 -.float 2.51031554064e-37 -.float 1.32220551965e-23 -.float 1.83407676872e+25 -.float 6.05508012872e+33 -.float 5.55322637915e-05 -.float 1.13619771709e+35 -.float 4.24236914022e+22 -.float 8.35795951062e+35 -.float 1.4167079778e+17 -.float 1.29073592511e+20 -.float 2.56615556561e-11 -.float 3.38076732002e-12 -.float 1.82916576969e+24 -.float 3.25722394617e-29 -.float 3.81322653013e-22 -.float 56738946.4603 -.float 1.04871803127e+17 -.float 2.01196957335e+34 -.float 2.06538195853e+27 -.float 104.342367706 -.float 1.26157204603e-37 -.float 1.21497170204e+21 -.float 25425310209.4 -.float 2.68815603232e-10 -.float 4.50264903348e+24 -.float 3.87692520082e-06 -.float 1.58915998634e+16 -.float 1.59971087814e-29 -.float 3.25733935901 -.float 1.37463749906e-27 -.float 2.81861822736e+15 -.float 1.40119098495e-09 -.float 1.33046202946e+32 -.float 1.91194138276e-39 -.float 2.2724129883e+26 -.float 2.88813472877e+23 -.float 2.5089552943e-20 -.float 1614.7204333 -.float 2.17280116186e-21 -.float 9.51750532522e-29 -.float 2.7368138911e-36 -.float 5.13328260194e+33 -.float 1.8406647088e+27 -.float 1.6084106299e+35 -.float 1.80734027026 -.float 3.84003107529e+32 -.float 1.8074657616e-18 -.float 8.50690043437e+32 -.float 0.000168390902288 -.float 3.09704355055e-12 -.float 0.016770048532 -.float 5.22915421244e+14 -.float 2.66892702424e-30 -.float 0.000219300666511 -.float 0.000100234213244 -.float 3.55317393517e+15 -.float 1.11531480998e-24 -.float 1.28817440655e+14 -.float 7.37441791002e+23 -.float 1.17251641441e-36 -.float 8.13338280361e+21 -.float 3.18048626126e-15 -.float 1.9048534441e-14 -.float 2.52756934499e+23 -.float 5.46274357123e-28 -.float 3.21973457343e-19 -.float 10406.7998549 -.float 1.78742001955e-22 -.float 7.58188670969e+23 -.float 1.76963924608e+36 -.float 205.712308959 -.float 1.40185960725e-33 -.float 4.22488095493e+12 -.float 2.21548401911e+12 -.float 1.05460643108e+18 -.float 231548674.803 -.float 40120479.4311 -.float 3.46825718302e-18 -.float 1.87995718714e+18 -.float 92075435978.9 -.float 8.44680234025e+33 -.float 57.6012098173 -.float 1024887.23908 -.float 2.60191998002e+22 -.float 1.23784211176e-30 -.float 8.8493444436 -.float 6.61457127042e-10 -.float 8.9719686536e-26 -.float 8.59634662238e+15 -.float 4.17216235733e-16 -.float 7.06096049517e+34 -.float 133813.765096 -.float 8.25335774981e-09 -.float 1.91414234193 -.float 17.6388253962 -.float 116210864567.0 -.float 2.79442035881e-36 -.float 9.73567030703e-38 -.float 1.10920259942e+30 -.float 3.20248213757e+36 -.float 2.42140481715e-26 -.float 7.32053914186e+13 -.float 9995424496.3 -.float 1.38103575726e+14 -.float 1.08545499951e+29 -.float 0.000111806242024 -.float 9.16819109754e+26 -.float 3.21599484349e-31 -.float 1.05348712658e-12 -.float 1.75891666033e+32 -.float 3.26064301647e-10 -.float 2.50745608033e-31 -.float 0.000377704474678 -.float 9.88074841202e-35 -.float 3.49344361758e+24 -.float 1.02763658408e+28 -.float 12.1591386054 -.float 3.16061663156e-39 -.float 3.2832293771e-16 -.float 1.85500135633e-30 -.float 5.74018291027e+28 -.float 5.78115568561e+27 -.float 6.58053337799e+13 -.float 22277.7503189 -.float 2.21090513072e+27 -.float 1.26249347662e+24 -.float 9.23234430778e-10 -.float 14119024210.8 -.float 270.317179416 -.float 1.22895369215e+28 -.float 3.3993452535e-26 -.float 7.3871910105e-10 -.float 4.09670741682e-26 -.float 1.13057037359e-29 -.float 6.04254742978e-38 -.float 9.00041678838e+33 -.float 0.59965247736 -.float 4.24019710213e-30 -.float 2.87057524513e-23 -.float 3.25826251405e+33 -.float 8.80667563775e+27 -.float 1.66390857041e+14 -.float 4.81114846066e-33 -.float 4.94768296509e+17 -.float 0.000135028898157 -.float 1.03530873341e-36 -.float 1.14623425983e+33 -.float 3.12112549112 -.float 3.00323865193e-26 -.float 18255.2878252 -.float 0.0593410466492 -.float 117.156193011 -.float 3.39494653698e+22 -.float 2.51984229116e-09 -.float 6.52207124532e+35 -.float 1.35778018403e-08 -.float 117963.014209 -.float 6.6731092031e+36 -.float 4.03053339055e-08 -.float 2.21606688412e+22 -.float 6.93517161359e-38 -.float 2.61733787268e-12 -.float 5.11028021491e+19 -.float 7.08265912678e-38 -.float 1.67779437771e-16 -.float 4.62721094494e-12 -.float 3.57650905308e+21 -.float 3.40842144255e+12 -.float 4.5917632124e+26 -.float 1.15754853187e+25 -.float 2.75938979428e+32 -.float 8.33905783773e-07 -.float 3.00674870356e+37 -.float 4.94727567331e+14 -.float 8.69839392589e-10 -.float 1.67604279051e+31 -.float 3.05040900972e+25 -.float 58.1018904183 -.float 1.23458981608e-28 -.float 1.42995336999e-07 -.float 1766.1475236 -.float 21336628.9882 -.float 1.31879495396e-31 -.float 67.7981836984 -.float 7.72989915866e-13 -.float 1.35195152002e-24 -.float 2.61360354398e+27 -.float 1.69249116207e+17 -.float 19424.9526744 -.float 9.3534339742e-23 -.float 1.54061786399e+29 -.float 7.18058216897e-35 -.float 0.0913297393313 -.float 8.19711258878e-33 -.float 6.48802640802e+18 -.float 1.86062797721e-38 -.float 8.33298457599e+19 -.float 1.75073846426e-34 -.float 1.13651554798e-17 -.float 8.90523751751e-32 -.float 8307400899.84 -.float 2.2861272524e-12 -.float 1.685210446e+34 -.float 1.05749501232e-38 -.float 8.96185269284e+35 -.float 4.44343321585e-37 -.float 3.64025507611e-35 -.float 3.89474953251e-19 -.float 1.97881121504e-10 -.float 6.78425620662e+27 -.float 0.00711535105667 -.float 5.3267193128e-26 -.float 5.41094058825e-05 -.float 3.37942497842e-35 -.float 3.37052158681e+20 -.float 4.76151835745e-36 -.float 8.99940390654e+30 -.float 5.83874259957e-30 -.float 4.38537140641e+31 -.float 0.108547126163 -.float 3.53418639467e-37 -.float 608.293008995 -.float 18155.9607242 -.float 6.87869923664e-19 -.float 5.97235792458e-36 -.float 2.84578524087e+20 -.float 4.6195497489e+23 -.float 7.03406010211e-26 -.float 2.12768437596e-09 -.float 1.32249994471e-09 -.float 1.50630064352e+17 -.float 4.1745301142e-32 -.float 5.57068006459e+24 -.float 1.91640473608e-33 -.float 3.78264642304e+20 -.float 9.52308349e+26 -.float 1.18978262762e+33 -.float 4.90130191289e-24 -.float 1.81430991479e-31 -.float 8.40542949433e-18 -.float 9.42019193196e-07 -.float 1.04095819777e-09 -.float 2.06405315602e-15 -.float 7.84575221179e+14 -.float 2.27343496262e-11 -.float 0.000159207337871 -.float 4.79436562493e-34 -.float 1.00093723611e-09 -.float 2.08466160688e-15 -.float 2.27203917276e+14 -.float 2.49021062264e+36 -.float 1.04129691056e+36 -.float 1.04677191623e+32 -.float 5.29134686442e+18 -.float 2.93179664699e+34 -.float 0.122672486171 -.float 6.92930442513e+28 -.float 1.19397540135e-39 -.float 4.40992214697e-38 -.float 8.4173892236e+17 -.float 0.00337936529337 -.float 91798520.3061 -.float 2.8155372076e-19 -.float 0.000110381110679 -.float 5.01377339244e+31 -.float 9.48386424401e-34 -.float 2.79556105256e+19 -.float 1.47846718651e-30 -.float 2.82062531239e-22 -.float 1.85219729508e-31 -.float 0.912936845709 -.float 2.24584388608e-36 -.float 1.48693553686e+38 -.float 1.81621025064e+31 -.float 5.7834334723e-36 -.float 3.08149090927e-30 -.float 28279.7524203 -.float 1.46455219372 -.float 14772.4152086 -.float 2.50789184278e+29 -.float 1.03367176907e+14 -.float 0.0280072813512 -.float 1.77759881987e+24 -.float 2.05403549985e-25 -.float 4.99699685416e-08 -.float 4.19967549974e-15 -.float 58304277305.1 -.float 3.11483139708e+28 -.float 1.28144680274e-31 -.float 22650.6091152 -.float 15317832391.3 -.float 3.10575736645e-31 -.float 0.00730474355099 -.float 1.62444270018e-15 -.float 3.45506604308e+22 -.float 526359277384.0 -.float 8.37529216386e-32 -.float 1.7980690862e+28 -.float 2.88780676191e+28 -.float 1.94683118444 -.float 1.81322250935e+30 -.float 1.05922866891e+37 -.float 1.82059609087e-13 -.float 1.05659116097e+24 -.float 3.47430661759e+27 -.float 2.41736680947e+34 -.float 1665253.36836 -.float 177618117508.0 -.float 806.146694079 -.float 1.44845345623e-27 -.float 1.09097075154e+19 -.float 1.32751970322e-24 -.float 4.53735950589e+12 -.float 1.04560516114e+21 -.float 5.82022704364e-30 -.float 1.37068560474e+23 -.float 1.00770259255e-12 -.float 6.9461321183e+19 -.float 3528571630.73 -.float 1.40493499412e-31 -.float 7593158029.7 -.float 1483991208.43 -.float 5.04430076294e-08 -.float 16100.3131038 -.float 1.02640154429e+32 -.float 3.83298690602e-17 -.float 1.00279645784e+21 -.float 1.06391878395e+24 -.float 1.36619496637e+32 -.float 7.31872950261e-20 -.float 4.60133281984e+36 -.float 1.33763455202e-27 -.float 6.57330176996e-06 -.float 8.27495226478e-10 -.float 5.34084060299e+22 -.float 7.99685031536e-39 -.float 7.61365423871e+18 -.float 1.05215966653e-10 -.float 1.88516237157e-27 -.float 0.048397436854 -.float 22509.9585825 -.float 2.02275669501e-27 -.float 2.810765043e+31 -.float 7.27646676245e-16 -.float 1.38191531593e-39 -.float 7.72179087152e+18 -.float 3.25306739602e+14 -.float 1.84576423346e-36 -.float 2.28130155815e-34 -.float 2.16375751046e+19 -.float 3.76069682187e+21 -.float 1.10956041867e+36 -.float 1.53535170004e-27 -.float 0.00259691238115 -.float 4.99862276802e-21 -.float 6.50447083097e+16 -.float 5.62061299608e-27 -.float 253018496438.0 -.float 6.08544973664e-11 -.float 2.85713648783e-17 -.float 6.67319667167e-34 -.float 6.82944840652e+24 -.float 1.14521657308e+31 -.float 3.31090324444e+35 -.float 2.24322456975e-26 -.float 7.15365008176e+21 -.float 2.40273699914e-20 -.float 1.01720567209e-05 -.float 1.22090832921e-36 -.float 5.06413348976e+14 -.float 1.02735391908e-24 -.float 5.40205739867e+14 -.float 997.897553952 -.float 7.96655043545e+34 -.float 2127.25890954 -.float 6.91499632349e+14 -.float 171484468.573 -.float 1.0217083598e-36 -.float 1.3423530667e+27 -.float 1.02352092689e+24 -.float 3.66338810438 -.float 4.1717294212e+25 -.float 7.17909071418e-30 -.float 1.77417787992e-08 -.float 5.19254272836e-33 -.float 3.62970134875e-39 -.float 9.30406526683e-16 -.float 8.28819495231e-08 -.float 1.38588772224e-22 -.float 6.80231960818e-14 -.float 1.27707064732e-33 -.float 1.6585547417e+22 -.float 104761160.979 -.float 3.79600146316e-36 -.float 11.7556038003 -.float 2.02971171334e+26 -.float 1.53813663796e-15 -.float 6740179.66658 -.float 2.37005532179e+19 -.float 9.79218565782e-20 -.float 267720531.311 -.float 1.90459242752e+25 -.float 1.40045800954e+19 -.float 1.88238564021e-11 -.float 1.20694651009e+16 -.float 2.68219187365e-36 -.float 4.48729048728e-21 -.float 1.66041365082e-13 -.float 2.26950276628e+34 -.float 20541434.8825 -.float 7.04695552005e+22 -.float 1.37134515226e-11 -.float 0.00326299897637 -.float 8.28686127131e+32 -.float 3.62927548306e+36 -.float 3.32373078546e-16 -.float 68406.2001995 -.float 3.12025044581e-36 -.float 1.40252103834e-06 -.float 5.92287382981e-32 -.float 3.73105388195e-18 -.float 3.92242877162e+33 -.float 7.39565578323e-13 -.float 5.79700870128e+26 -.float 4.38899215227e-22 -.float 3.23646000658e-19 -.float 1.28194733722e+35 -.float 1.12550210023e-29 -.float 3.22177311426e-05 -.float 207221.407616 -.float 3.31282165588e-09 -.float 1.0571030423e-38 -.float 2.78217278266e+24 -.float 0.120936466706 -.float 3.5370160738e-16 -.float 1.21581538413e+23 -.float 2.22526636459e-29 -.float 5.30822259225e+23 -.float 0.000228360615171 -.float 0.000222127630413 -.float 8.21752975302e+26 -.float 6.66521306832e+30 -.float 1.45263035385e+35 -.float 4.68388484621e+25 -.float 95388165.2138 -.float 17146738.1901 -.float 6.23940112259e-36 -.float 100.946549744 -.float 8.29554878083e+24 -.float 8.95840767079e-13 -.float 4.05580991582e-26 -.float 8.39236056102e+30 -.float 6.68973256263e-21 -.float 1.45341275903e-34 -.float 957777927.444 -.float 9.60769976595e-37 -.float 8.0071867945e+18 -.float 7.10290538275e+22 -.float 0.00748176340213 -.float 1.24141421749e-37 -.float 1.35029824253e+33 -.float 1.99023781936e+19 -.float 2.17111867222e+22 -.float 1.65395797517e-31 -.float 3.88106547665e+25 -.float 5.20047572784e+32 -.float 1.12471773169e-34 -.float 3.80941267441e+15 -.float 1.9592850124e+17 -.float 65445.0836872 -.float 1.46281473186e+29 -.float 5.99801645206e+33 -.float 7.00049232407e+29 -.float 5.20229105547e-15 -.float 152227.342854 -.float 0.184659045009 -.float 1.28406737598e-27 -.float 3.35917047139e-21 -.float 7.32715743281e-07 -.float 6.54990885745e-12 -.float 7.18717772707e-21 -.float 2.66157976977e-25 -.float 5.46893220453e-10 -.float 7.42473209427e-24 -.float 3.35390669294e-24 -.float 9918094551.85 -.float 4.66326670372e+33 -.float 1.56646312309e-39 -.float 2.55667493284e-16 -.float 7232040.32235 -.float 3.93385819935e-13 -.float 6959047601.49 -.float 1.33911441835e-05 -.float 2.24670078042e-13 -.float 30657240.8469 -.float 4.65981285531e-08 -.float 1.4940204674e+32 -.float 4.43305108842e-35 -.float 0.000237609469432 -.float 0.000175176963172 -.float 405785.205587 -.float 2.45021907341e-33 -.float 866.115917365 -.float 368.155444784 -.float 1.27028827952e+24 -.float 5.41246128134e-16 -.float 30570153.8797 -.float 1.08367362369 -.float 6.45374168279e+22 -.float 3.00884021881e+23 -.float 1.05922018793e-09 -.float 1.05408996372e-22 -.float 7.19455394605e+20 -.float 0.000753294978087 -.float 2.09225762498e-23 -.float 1.71580392031e+25 -.float 1.26724628558e+17 -.float 2.38783557461e-19 -.float 1.29920212853e-12 -.float 2.71233112958e-39 -.float 2.6773925591e-11 -.float 2.85431480218e-24 -.float 9.41984154492e+25 -.float 5.83356904047e+12 -.float 515951020.901 -.float 1.50348276788e-32 -.float 1.09614615672e-26 -.float 2.58709070609e-23 -.float 2.0326056803e-13 -.float 5.82726227273e-13 -.float 0.00952590504865 -.float 9.17094670332e-38 -.float 1.53575405682e+17 -.float 772530992.31 -.float 7.36075639379e-10 -.float 1.55645165939e+16 -.float 8.13066198279e-21 -.float 9.10767809916e-24 -.float 3.37885125701e-08 -.float 5.26431539155e+34 -.float 2.68629107266e-23 -.float 9.14443135079e-35 -.float 6.31830494013e-12 -.float 2.16927462839e-05 -.float 7.18915078652e+24 -.float 1984.56514621 -.float 5.25076024467e-25 -.float 13729302.4954 -.float 0.00191911223378 -.float 2.50665628592e+13 -.float 2.32621812414e-37 -.float 25.0709039449 -.float 1.95702847393e+30 -.float 63.6246239345 -.float 436618.101346 -.float 1.55505062485e-07 -.float 3.01889101168e-22 -.float 4.15505883867e+34 -.float 9.38369501519e-35 -.float 5.1110201824e-18 -.float 1.62236349519e+29 -.float 9.60943903696e+18 -.float 196093615.176 -.float 8.75996032056e-40 -.float 1.5807546292e-21 -.float 3.67918255587e-22 -.float 1.00442403023e-10 -.float 7.27298672458e-25 -.float 3.9959425297e-29 -.float 4.37257869651e-11 -.float 2603723.20418 -.float 2.76750533073e-31 -.float 6.50847030027e-39 -.float 118.562349264 -.float 1.99365186077e-22 -.float 2.80742580926e-13 -.float 4.43260361621e-10 -.float 2.27110012978e+20 -.float 2745516.1776 -.float 1.78995530082e+18 -.float 1.64677315417e-26 -.float 7.57806950175e-14 -.float 1.02424158601e-08 -.float 1.79332076964e-10 -.float 3.91072027025e-13 -.float 6.16417828799e-06 -.float 3.42099981676e+36 -.float 2.11505445781e+37 -.float 1.07039768903e-12 -.float 1.01426824542e-06 -.float 2.87861297778e-08 -.float 2.08633329867e+29 -.float 7.18196299313e+37 -.float 7.87135641438e-09 -.float 479.090538257 -.float 4.00221693772e-19 -.float 1.01328606376e+29 -.float 3.05934349641e+16 -.float 1.61233049101e-27 -.float 1.41718513677e+12 -.float 2.8784001295e-18 -.float 5.59108411806e+21 -.float 2.5327212851e-19 -.float 1.44132248779e+25 -.float 2.2755089737e+19 -.float 0.394657335864 -.float 6.86534127473e-11 -.float 3.22715271327e-12 -.float 3523720192.05 -.float 2.06441438086e-08 -.float 5.60157253903e-11 -.float 9.47827397904e-14 -.float 7.95653156479e-31 -.float 2.92519769593e-30 -.float 1.60084121105e-27 -.float 8.59369147658e-08 -.float 3.27199485782e-29 -.float 9126883.09135 -.float 3.24670969177e+13 -.float 67255559087.8 -.float 1.17914295513e-13 -.float 2.77597085166e-30 -.float 1.14626891228e-27 -.float 4.90359791753e-26 -.float 4.80775989017e+29 -.float 9.50568119252e-18 -.float 1.03544770626e-09 -.float 4.95991475354e-26 -.float 8.07362987308e+35 -.float 7.08686362018e-34 -.float 3.33620811239e+15 -.float 1.76623473891e-15 -.float 4.20869389665e-21 -.float 1.26477330712e-09 -.float 2.73807407505e-11 -.float 2.15197365606e-28 -.float 1.92491031213e-05 -.float 4.07747518261e+32 -.float 7.34558570682e+31 -.float 2.84480620035e+31 -.float 1.31865924673e+33 -.float 6.76930297369e-13 -.float 1.30416472227e-19 -.float 5.06711117953e-21 -.float 4.71427881394e+23 -.float 1.50547176893e+22 -.float 8.09890980156e-07 -.float 0.1075813305 -.float 2.2090948203e-32 -.float 0.000205166481923 -.float 2.91500149991e-22 -.float 2.1333178021e-39 -.float 3.03469048706e-26 -.float 2.19060208459e+33 -.float 1.17937419962e+19 -.float 1714209.1014 -.float 1.84804728457e+28 -.float 1.14948809862e+31 -.float 3.33100615783e-28 -.float 2.07868890698e-21 -.float 83.0941279782 -.float 4.3902556416e+21 -.float 3401.86515344 -.float 2.25400938974e+26 -.float 2.05545151072e+14 -.float 2.27024157993e-38 -.float 1.23095629065e+15 -.float 14.4927662628 -.float 1.4730994638e-29 -.float 1.63882433114e-30 -.float 115.366308756 -.float 19.692313537 -.float 2470470991.01 -.float 8.36186207618e-35 -.float 2370773111.5 -.float 130345304734.0 -.float 12397624028.3 -.float 1.61282122917e-09 -.float 9.49309393823e-22 -.float 1.164119072e-20 -.float 1.36050273595e-12 -.float 912640678.016 -.float 5.91021602014e-22 -.float 0.000913912003493 -.float 6.44100681723e+20 -.float 4.14797862783e+12 -.float 0.0249426570187 -.float 6.40366533977e-28 -.float 1.97992091647e-10 -.float 1.2827720384e-25 -.float 3.41683139068 -.float 2.84744133241e+13 -.float 1.53193772002e-28 -.float 1.90505656618e+14 -.float 1.56911779887e+32 -.float 8.76922715527e-23 -.float 1.08096494935e-32 -.float 1.70486318485e+24 -.float 2.36253400057e+36 -.float 3.42202725274e+13 -.float 0.000217766863811 -.float 4.84623228368 -.float 2.98773868872e+13 -.float 3.6431733673e-35 -.float 19698905438.1 -.float 1.73162894375e+34 -.float 6.82919721896e-36 -.float 2.35988520969e-06 -.float 5.96817576739e-31 -.float 2.11095914362e+36 -.float 9.05819869259e-09 -.float 694348.704063 -.float 5.05352390764e-20 -.float 9.66262044129e-26 -.float 5.47249863078e+32 -.float 221191.958107 -.float 8.20048158164e+27 -.float 3.04967231323e+21 -.float 6.12315966284e+30 -.float 4.48506352918e+22 -.float 1.52061850592e-20 -.float 4.15957873546e-16 -.float 1.80384075479e+18 -.float 2.21024353741e-12 -.float 1.5664211618e+31 -.float 3.18488064818e-31 -.float 1.2575879951e+17 -.float 1.78320964823e-35 -.float 0.00010841455531 -.float 1.0764191391e-31 -.float 5.84432681465e-34 -.float 9.13877224194e-07 -.float 6.39735702026e-36 -.float 3.68537669157e-35 -.float 2.12526061924e-27 -.float 1.24068827672e-11 -.float 3658739.35099 -.float 2.31010607559e-33 -.float 1.60967098482e+28 -.float 3.01065632523e-25 -.float 4.99675300389e+36 -.float 3.56958554883e-06 -.float 1383712.08284 -.float 1.62586179091e-37 -.float 2.9727251775e-20 -.float 71885.8115432 -.float 2.28472411234e+13 -.float 4.43968278993e+29 -.float 3.67088606684e+19 -.float 1.75569549035e-12 -.float 4.18677859775e+14 -.float 2.25060506244e+14 -.float 5.46436521106e-12 -.float 3.63275248951e+14 -.float 20.6163076725 -.float 956.813052785 -.float 7.29813198437e+25 -.float 1.38574118558e+19 -.float 2.60101873979e-12 -.float 2.46917586146e+33 -.float 2.71478351088e-05 -.float 4.30263632308e-31 -.float 2.5967230568e-15 -.float 8.46353523606e+28 -.float 1.77407486807e-25 -.float 1.2660933555e-38 -.float 3.69392134362e+13 -.float 2.74477671914e-07 -.float 2.94803197844e-16 -.float 6.36122767073e+32 -.float 1.9507600612e-15 -.float 2.1153918821e+37 -.float 2323.76063248 -.float 6.50668817247e-25 -.float 9.04272641801e-33 -.float 5.94804619785e+19 -.float 7.67413933499e-12 -.float 0.168854609475 -.float 1.32748864149e-34 -.float 0.0959349327548 -.float 9.19895339056e-35 -.float 410305.445151 -.float 2.14869439425e-19 -.float 4.69368190862e-11 -.float 5.458043531 -.float 2.59849676631e+27 -.float 7.64161521507 -.float 0.00731810573884 -.float 1.28371268859e-26 -.float 2204256408.14 -.float 2.83231755531e-39 -.float 1.12522339901e+12 -.float 6.86616769129e+31 -.float 0.00710792244283 -.float 129.707387408 -.float 2.2901515837e-38 -.float 3.9547598384e-28 -.float 2.14194309519e+25 -.float 3.98617310503e+37 -.float 6.46810916869e+36 -.float 3.34009769374 -.float 1.24572003946e-19 -.float 219886563939.0 -.float 0.0348518699985 -.float 2.44633575752e-29 -.float 1.49150282606e-27 -.float 3.89730498011e+12 -.float 4.30706293979e+34 -.float 362811.541437 -.float 4.52910358633e+24 -.float 4.85239512215e+30 -.float 1.42283991759e-08 -.float 7.52717493759e+31 -.float 6447.02054556 -.float 1.71057194966e-12 -.float 1.06477366437e+13 -.float 4.10319346746e-32 -.float 1.49860716846e-37 -.float 0.000424285612528 -.float 8.90298863992e+34 -.float 4.08176197619e-13 -.float 3.93745122656e-28 -.float 2.82543448982e-12 -.float 4.11567739833e+37 -.float 3.54173958992e+37 -.float 1.20008519861e+33 -.float 1.5795252355e+34 -.float 1.62628690571e+31 -.float 8.55123505101e+35 -.float 2.8942801753e-21 -.float 9.65972961613e+25 -.float 1.0142482545e+17 -.float 5.43078885269e-30 -.float 15475185341.5 -.float 1.4906970952e+19 -.float 4.43566900391e+33 -.float 105.960323115 -.float 8.81519395393e+14 -.float 3.69390363814e+23 -.float 9.68858214583e-30 -.float 3.38145483656e-26 -.float 9.06449244795e+33 -.float 7.45160242541e-39 -.float 2.14805057306e-38 -.float 5.33914195753e-36 -.float 0.113378517545 -.float 6.88316929817e-12 -.float 1.92093732001e-20 -.float 1.70621964705e-25 -.float 4.25153828228e+31 -.float 5.14876198086e-36 -.float 59.3505857182 -.float 1.62199147023e-19 -.float 7.87985038159e-16 -.float 1.90566122014e-06 -.float 4.98405280609e-24 -.float 3.93187384503e+23 -.float 38.100472892 -.float 1.58324326212e-23 -.float 2.9453477614e-28 -.float 3.95930279448e-19 -.float 1.24397021196e+23 -.float 2.29410702731e+21 -.float 5.83848291897e+14 -.float 1878159.77149 -.float 2.65346059399e+15 -.float 9.12486450431e-36 -.float 511121.467861 -.float 3.18632670409e+33 -.float 6.28688399202e+34 -.float 4.29825102152e-10 -.float 3.16424846916e-15 -.float 6.3144809923e-21 -.float 1.94269223949e+31 -.float 1.66993263115e-37 -.float 4.32829247789e-33 -.float 4.90638401535e-25 -.float 1.85285390503e+29 -.float 135.819064228 -.float 5.15934950111e-31 -.float 6.33894017746e+35 -.float 6.60960541039e-13 -.float 6.07758045279e+21 -.float 0.000561630042956 -.float 3.40849617358e-38 -.float 3.74395769877e+35 -.float 0.00106836700439 -.float 5.81785884432e+17 -.float 5.90479579266e-26 -.float 1005036172.15 -.float 5.41551870368e-14 -.float 1.70970513588e+26 -.float 4.42099824145e+13 -.float 1.08752489369e+29 -.float 4.83314247634e-11 -.float 1.9139407997e+25 -.float 0.11229924648 -.float 8.48406229333e+30 -.float 1.13472834912e-11 -.float 0.991450575946 -.float 1.1953710188e-13 -.float 1.32840801275e-39 -.float 110977725019.0 -.float 1.68779003589e+34 -.float 3.95375305067e-39 -.float 2.79609994512e-05 -.float 1.57460731924e+19 -.float 8.96536749208e-35 -.float 23130.5131809 -.float 9.24089002433e-35 -.float 2.21927000088e+27 -.float 0.000491710120234 -.float 802.947693262 -.float 7.25195285576e+19 -.float 9.78551273642e-19 -.float 1.40315628034e+14 -.float 2.20721001713e+14 -.float 2.16678900727e-14 -.float 6.44680589139e-06 -.float 5.87585154924e-10 -.float 1.63918092835e+13 -.float 1.20260555564e-06 -.float 4.1570092354e+24 -.float 1.86765807959e-09 -.float 3.03715807889e-27 -.float 1199.14605947 -.float 41.1141217924 -.float 1.7613992606e+34 -.float 1.12488628946e-19 -.float 8.68711196352e-32 -.float 3085131.51856 -.float 1.78449618093e-32 -.float 1.71716278746e+14 -.float 3.51348719507e+28 -.float 5.25218262608e-18 -.float 7.47559497588e-29 -.float 2.22269943199e-19 -.float 55179.2181188 -.float 9.14816674595e+27 -.float 1.29377621124e-30 -.float 1.33410989932e-14 -.float 9545032.20021 -.float 1.52687992985e-38 -.float 1.05823458689e-26 -.float 55.5675415639 -.float 0.00211216219299 -.float 2.18745011371e-39 -.float 1.12318525858e-13 -.float 3.49796541597e+27 -.float 1.07572452509e+30 -.float 2.92858905703e+25 -.float 1.02769558195e-08 -.float 801075.117928 -.float 6.22714260851e-08 -.float 1.9071515037e+25 -.float 8.2726352195 -.float 3.78770913817e-31 -.float 56885956092.9 -.float 28980.8503558 -.float 30160.1126078 -.float 6.02221235428e-18 -.float 14077.4034748 -.float 8251194.56802 -.float 1.50250403781e+30 -.float 7.84314157346e-06 -.float 9.40795252227e+13 -.float 3099.98305653 -.float 58844834964.3 -.float 2.13547454855e-32 -.float 1.53974145685e+17 -.float 1.20204358607e-38 -.float 3.58964146543e+15 -.float 1.87456826285e-37 -.float 5.1550915439e-20 -.float 2.48084102921e+29 -.float 7.5032949693e+16 -.float 8.560938086e-35 -.float 3.75276135223e+22 -.float 3.20875032811e+22 -.float 3.65617473571e-11 -.float 1.05801412441e-37 -.float 1.19022329283e+22 -.float 1.09120817064e+12 -.float 7.1248540232e+20 -.float 1.78488101761e-06 -.float 3.50473380753e+20 -.float 1.44823279655e-13 -.float 9.5370798267e+30 -.float 0.00345524292836 -.float 1.99863261178e+36 -.float 7.28309553481e-21 -.float 2.98401614297e-24 -.float 447.595601891 -.float 2.2073236588e-19 -.float 2.28761172878e+12 -.float 2.41858282536e+32 -.float 1.03099366534e+16 -.float 5.61749593922e-21 -.float 3810141.40075 -.float 6.77969481915e+18 -.float 25867.4225341 -.float 1.27539835274e-21 -.float 9.31947577917e-34 -.float 2.8334583842e-32 -.float 4.50091377004e+24 -.float 2.70268707471e+21 -.float 2.44005208265e-35 -.float 1.40093380731e-07 -.float 2.94650062392e-30 -.float 4.57143099832e-38 -.float 3.2698681321e+21 -.float 686741706349.0 -.float 3.03926703139e+26 -.float 1.93724598621e-19 -.float 4756749191.48 -.float 1.91566416912e+24 -.float 6.31930761737e-37 -.float 4.32626733883e-11 -.float 5.87912872223e-10 -.float 599906355.575 -.float 1.48926165337e-30 -.float 8.97242163411e+36 -.float 4.0109600205e+24 -.float 2.33685934522e-27 -.float 2.13808881116e+26 -.float 1.0334224456e-17 -.float 4.61688218378e+25 -.float 1100457600.76 -.float 45215.2635726 -.float 1.06665781918e-13 -.float 1.9716408684e+37 -.float 3.18352066153e+16 -.float 0.000204990802066 -.float 4.30964793254e+27 -.float 0.0619470076778 -.float 2.45856975738e+32 -.float 1.37037879315e-06 -.float 1.30156964803e+36 -.float 6.3127493596e-15 -.float 15016794214.5 -.float 797126656399.0 -.float 1.69836804068e-08 -.float 61.7846008239 -.float 8.48556472295e+33 -.float 8.84453163889e+25 -.float 1.35448646048e+20 -.float 8.2016792378e+24 -.float 1.55132791983e-23 -.float 1.39887434467e+24 -.float 1.01484380697e-18 -.float 8.9284801652e-29 -.float 4.32453423201e-19 -.float 7.35767823425e-23 -.float 5.5385887991e-14 -.float 2.632363714e-05 -.float 1.35616860603e+34 -.float 1.51628091002e+36 -.float 3.07071154523e+19 -.float 146974.435739 -.float 59606698001.2 -.float 4.77837535978e-31 -.float 2.34813973935e+24 -.float 49039.3585434 -.float 2.8807536367e+29 -.float 0.000324972549141 -.float 1.2608614048e-07 -.float 8.77147041785e-16 -.float 0.00717151205553 -.float 1968.94858723 -.float 2.20386415761e-13 -.float 1.36666510858e-06 -.float 6.98618236031e-31 -.float 6.56658626371e+23 -.float 8.93725310961e+26 -.float 4.16594527576e-35 -.float 16.5879654121 -.float 2.69114325078e+22 -.float 260908946020.0 -.float 6.15872028023e+32 -.float 1.4065474596e-27 -.float 5.40775552807e-23 -.float 1.37898748804e-12 -.float 4.76800828921e-14 -.float 2.50576933483e-20 -.float 0.00372994691028 -.float 9.17525642648e-10 -.float 1.0195294721e-13 -.float 8.44664247639e+35 -.float 2.63892405992e-27 -.float 1213788224.22 -.float 192951.230461 -.float 67.4392503413 -.float 1.85237154474e+31 -.float 0.258596191768 -.float 1.06345104815e+18 -.float 7.78117371973e+31 -.float 1.61084516622e-22 -.float 1709.61644928 -.float 4.30676269021e-19 -.float 62503450.044 -.float 3.52700867505e+28 -.float 6.95971551038e+12 -.float 2.48768957443e-37 -.float 4.12741563352e-37 -.float 8.99352977479e-18 -.float 61627.1150731 -.float 2.84102164007e+22 -.float 3.81079301998e-11 -.float 1.44583447838e+30 -.float 1.46576148394e-20 -.float 1.13805806482e-34 -.float 6.41274154845e-21 -.float 6.93438901829e+31 -.float 1.13148605596e+20 -.float 1.0605059073e-05 -.float 6.16477777296e-15 -.float 7.4981771468e-28 -.float 4.17324348242e-23 -.float 9.87943742423e+36 -.float 64.9611049223 -.float 7.0922421853e+34 -.float 7.20630995304e-07 -.float 1.43209484971e-17 -.float 50645364.1668 -.float 9.9366381617e-11 -.float 2.11879739952e-07 -.float 2.01558983633e-11 -.float 0.484856630165 -.float 9.45437524048e-23 -.float 1.40774841738e+13 -.float 5.98886691944e-38 -.float 50298.3796442 -.float 0.879184382069 -.float 2.34689332982e+13 -.float 0.000100651778815 -.float 2.57693710326e-31 -.float 4.14560001935e-26 -.float 1.0524313033e-34 -.float 2.00230618392e+19 -.float 11.4712995152 -.float 6.32303337758e+30 -.float 7.0619561148e-31 -.float 1.82531582579e-28 -.float 6.65307456919 -.float 1.16875436014e+37 -.float 9.0437174396e-34 -.float 2.48982600296e+15 -.float 4.41912635268e+18 -.float 2.00429521978e-36 -.float 2.37912082362e-34 -.float 14231828177.1 -.float 13427606109.5 -.float 6.66350074869e-29 -.float 3.64149145196e-18 -.float 0.0844356142551 -.float 1.21394553741e+12 -.float 2.77122390499e-19 -.float 3.84253640556e+23 -.float 1.48540821828e+29 -.float 5.76413753477e+30 -.float 5.43634419031e-21 -.float 2.7204281257e-33 -.float 4.97404137473e+19 -.float 1.24005832149e-21 -.float 1.52405361282e-27 -.float 3.32855513737e+35 -.float 9832150915.14 -.float 2.04723281508e-21 -.float 1.59593244031e-12 -.float 1.64164435212e+33 -.float 8.66712369017e-31 -.float 6.4910611169e+36 -.float 2738.49911372 -.float 6.63629441326e-06 -.float 3.23734905547e-28 -.float 1.83481736606e-11 -.float 3.45158651347e+25 -.float 0.684209560025 -.float 5.81567764341e+23 -.float 3.88438922397e-38 -.float 8.01987117473e-37 -.float 6.2540754258e-37 -.float 721749023.289 -.float 2.07724852354e+36 -.float 1.66408116282e-28 -.float 3.4697127327e-21 -.float 9.50584364982e-07 -.float 2.62500054758e+22 -.float 1.17545743716e-06 -.float 7.9012169219e+18 -.float 4.59903502028e+24 -.float 5.51241783371e-27 -.float 6.90452220556e+25 -.float 2.70039028089e-34 -.float 2.90731345219e-39 -.float 11622.8148909 -.float 4.62645081624e-05 -.float 1.49097794136e+34 -.float 179085837245.0 -.float 2.44118720937e+33 -.float 48.0324640703 -.float 1.0563060424e+13 -.float 5.79496964255e-06 -.float 2.98006702538e-21 -.float 13.7235136169 -.float 4.17680102386e-25 -.float 4.36673188599e+35 -.float 4.31310073524e+32 -.float 3.97112600454e-29 -.float 0.00727318999173 -.float 259.808605303 -.float 1.15178352828e-07 -.float 0.263936015693 -.float 1.3864851151e+30 -.float 3.95517367026e-21 -.float 3.25636704372e-15 -.float 1.07479950167e+30 -.float 1.00202381585e-28 -.float 2.12377587317e+15 -.float 3.71504867092e+19 -.float 2.93858322579e-15 -.float 2.52001696015e+21 -.float 3.85138160841e+30 -.float 1.36488741143e-08 -.float 0.112545606648 -.float 2.49668516578e+30 -.float 8.63351552941e+35 -.float 2.28346215148e-31 -.float 34031.7116182 -.float 1.47723577891e-15 -.float 1.76965666756e-34 -.float 0.00167549189826 -.float 8.53215952524e-39 -.float 2.19595590889e+21 -.float 6.3135537561e-26 -.float 2.21109737363e-24 -.float 9.3354699357e-38 -.float 2.61364234516e+15 -.float 2.3931092972e-12 -.float 2.32944850224e+36 -.float 1.55121523282e-21 -.float 2.94280308339e-35 -.float 1.35685498853e+28 -.float 5.70127962702e-37 -.float 2.81057416519e+25 -.float 1.73705565023e+33 -.float 8.62366046809e-38 -.float 1.34645083726e+12 -.float 12309478529.8 -.float 509.79476809 -.float 2.33409105433e+20 -.float 1.21498330892e+29 -.float 4.68090355891e+36 -.float 5.65279341778e+12 -.float 12614.8112657 -.float 1.13051378628e-30 -.float 1.21588344884e+27 -.float 0.0036216480105 -.float 2.53362504145e-36 -.float 1.52850599153e-37 -.float 1.93771683686e-33 -.float 28.2566354864 -.float 1.7606252389e-31 -.float 9.02096942962e-39 -.float 1.88397622137e-22 -.float 2.71282906586e-14 -.float 3.03055081964e+28 -.float 1.81262129851e+12 -.float 2.84201279199e+20 -.float 3.54259110511e-28 -.float 629.118599829 -.float 3.6412739926e-22 -.float 3.52409221683e-34 -.float 23.2597718275 -.float 6.03245363541e-37 -.float 3.83390563514e+30 -.float 1.22363776108e-24 -.float 4752.03283105 -.float 4.72170431067e+17 -.float 6.52754535086e+33 -.float 2.82314808817e-22 -.float 1.16235441901e+32 -.float 2.3247288326e+20 -.float 6.1233390784e-38 -.float 1.0594512293e+30 -.float 2.36532629696e-32 -.float 0.00014993702546 -.float 2.54956840766e+26 -.float 6.24454266847e-32 -.float 1.19768985674e+24 -.float 2.30053674549e-11 -.float 2.75215880949e-22 -.float 1.02215392046e-35 -.float 4.05419704309e+27 -.float 2.03190811392e-14 -.float 208897.828562 -.float 1.04480068868e+20 -.float 1.14805655348e-26 -.float 23101.804735 -.float 2.36352865933e+25 -.float 1.97720762588e-25 -.float 1.41318439561e+13 -.float 3060635998.74 -.float 4.52665932579e-36 -.float 541206603463.0 -.float 1.65632877358e-28 -.float 2.44691849202e-36 -.float 2.54551844903e-07 -.float 5.85377541209e-12 -.float 2.7195311764e+15 -.float 6.86736177021e-36 -.float 1.18357743017e+32 -.float 1.59950924395e-12 -.float 9.10443313569e-32 -.float 1.38628645376e+18 -.float 0.000110866227768 -.float 1.84392219867e-16 -.float 4.08702608535e-38 -.float 1.97071837604e-36 -.float 1.83483300692e+12 -.float 5.85910678078e-09 -.float 7.94787146419e-14 -.float 5.49421056576e-35 -.float 1.97123587477e-10 -.float 4.88294672651e-09 -.float 9.40915907911e-34 -.float 1.3695342938 -.float 3367090968.11 -.float 1.03979677e+32 -.float 1.16299185888e+19 -.float 1.39867429866e-36 -.float 1.75893096376e+25 -.float 6161723380.82 -.float 5.90069651615e+20 -.float 8.95392209911e+15 -.float 9.76120967577e-19 -.float 7.17249639411e-13 -.float 0.000294003524547 -.float 3619098594.13 -.float 3.01030870309e+26 -.float 30719.8924578 -.float 3.86012086984e-25 -.float 5146913.25166 -.float 1.16405411757e+27 -.float 7.27660247085e-08 -.float 2.15791034601e+15 -.float 3.09429370369e+32 -.float 3.49548705808e+25 -.float 5.13407277651e+31 -.float 4.23684214444e+14 -.float 1.06871156524e-36 -.float 2.90906049467e-33 -.float 2.23740363979e-37 -.float 7.07466625153e+31 -.float 5.88797917437e-32 -.float 1.99986313033e-13 -.float 2.4951012256e+35 -.float 1.24136832766e-09 -.float 6.70687778843e+36 -.float 2.31474889837e-31 -.float 4.8186831663e+14 -.float 1085133869.57 -.float 3.49058619376e-25 -.float 1.57250378368e-35 -.float 1.79664980272e-06 -.float 2.73428041076e-20 -.float 7.0918269534e+29 -.float 5.21259445087e+28 -.float 4.61176243838e+31 -.float 3.08878245863e+36 -.float 2.61444161236e+20 -.float 1.39941242287 -.float 5.17673340502e-39 -.float 2.17318687696e-07 -.float 7.6233500532e+29 -.float 5.75457618486e-13 -.float 2659.67544681 -.float 1.78273307772e-37 -.float 5.40732119593e-34 -.float 3.92200987146 -.float 0.000902667419885 -.float 16773208.6051 -.float 7.1892883635e-19 -.float 1.23522972611e-31 -.float 1.87949196879e-24 -.float 3.41935464023e+33 -.float 1.52437122416e-05 -.float 9.76870416637e-29 -.float 5.04577311767e-07 -.float 3.70125960406e-38 -.float 9.36704595821e-08 -.float 2.15504500783e-10 -.float 2.92864979156e-33 -.float 143135271.728 -.float 22045.5651034 -.float 5.6528086716e-19 -.float 1.02608100127e+37 -.float 1.18016117758e+32 -.float 14637386.6572 -.float 6.80064114213e+21 -.float 2.09815656415e+37 -.float 9.00659180734e-20 -.float 2.71244232734e-16 -.float 3408090881.39 -.float 98212105.8353 -.float 3.65190594718e-19 -.float 8.48997035405e+17 -.float 1.47027940563e-23 -.float 80.654781505 -.float 3.09539444085e-25 -.float 3.78372295214e-36 -.float 1.91339916892e-31 -.float 2.96285738613e+36 -.float 4.25020026571e-11 -.float 8.74255629578e-20 -.float 4.42762896863 -.float 7.41162549613e-31 -.float 1.05884148896e+22 -.float 5.00907424838e+14 -.float 5.92387138731e-31 -.float 80725347299.0 -.float 1.67769049164e-21 -.float 8.61458970878e-30 -.float 1.03077213891e+29 -.float 2.7405141671e-11 -.float 3.67025222969e+18 -.float 15664921921.8 -.float 9.90529910334e-08 -.float 31971.6392338 -.float 0.000174534938639 -.float 3.91536182865e-29 -.float 2.26902259877e+27 -.float 1.11877208048e+37 -.float 1.96177383698e-38 -.float 7.37183431373e+28 -.float 2.57735142123e+28 -.float 1.95297556502e+34 -.float 2.74241085483e-05 -.float 5337956.36612 -.float 1444645965.69 -.float 9.75354635138e+13 -.float 14765465508.4 -.float 1.25335235996e+16 -.float 2.75148730343e+22 -.float 2.26232943175e-21 -.float 3.19201634071e-33 -.float 8.57325560934e+24 -.float 2.55077132568e-10 -.float 9.27781367973e+37 -.float 1.93211590871e+17 -.float 18721.2281316 -.float 571920682.429 -.float 2056.40414516 -.float 26418378.4599 -.float 11668148.3537 -.float 3.1752439144e+17 -.float 243.444861489 -.float 115007.441759 -.float 0.000191691859198 -.float 3.95040829013e-12 -.float 1.0338827013e-15 -.float 5.60839365902e-28 -.float 3.03808361459e-25 -.float 1.04745523019e-16 -.float 1.41891093458e+13 -.float 3.7694443405e+20 -.float 3.04721841867e+23 -.float 3.06549887867e+15 -.float 1.89231406017e+22 -.float 2.8952217686e-26 -.float 4.6758732584e+29 -.float 1.17720851944e-35 -.float 5.62018171318e-21 -.float 450103965.87 -.float 3.30159705208e-18 -.float 5.86758069788e-27 -.float 1.75885671861e-32 -.float 3.14166731856e+27 -.float 3.14684519349e+31 -.float 1.35074405473e-05 -.float 792504.237982 -.float 1.82700696803e-29 -.float 731966432.792 -.float 3.33234996972e+15 -.float 1.29300254404e+13 -.float 3.99869953105 -.float 3175628240.22 -.float 3.72274617474e-32 -.float 2.3149318327e-29 -.float 8.84855178184e-10 -.float 10270836745.0 -.float 9.25799924052e-32 -.float 4.33905672481e-17 -.float 7.52410452303e-18 -.float 49322806.8377 -.float 5.84004265739e-17 -.float 1.15019385978e-32 -.float 2.75060252979e-23 -.float 194.331047854 -.float 1.19538876665e+23 -.float 6.01373518831e-20 -.float 4.86220142923e-12 -.float 481.441807223 -.float 504854.609105 -.float 4.07700344459e-25 -.float 1.18534564408e-19 -.float 9.67703876395e+30 -.float 5.58315934792e-40 -.float 1.30316089972e-39 -.float 7.54893242767e+32 diff --git a/isa/rv64uv/data_w.h b/isa/rv64uv/data_w.h deleted file mode 100644 index 52b072e..0000000 --- a/isa/rv64uv/data_w.h +++ /dev/null @@ -1,16387 +0,0 @@ -# See LICENSE for license details. - -.align 2 -.word 0x3ceb3ff3 -.word 0x8b529b44 -.word 0x5eb561bd -.word 0x9a9a80ef -.word 0xa02f34b3 -.word 0x10c67fd3 -.word 0x035efa3d -.word 0xd6645faf -.word 0x42650651 -.word 0x3bfd1d26 -.word 0xfee29477 -.word 0x78633071 -.word 0xd6225672 -.word 0x79f248ad -.word 0xa399f83c -.word 0x268ecc47 -.word 0xa2863a65 -.word 0xde38379e -.word 0x85ef342d -.word 0xbdc2ae81 -.word 0xabe19f59 -.word 0x10645d45 -.word 0xc21b609f -.word 0x97524d61 -.word 0x4d1fe099 -.word 0x07f062da -.word 0xdd933169 -.word 0x79061593 -.word 0xb804d83e -.word 0xe0f9e02d -.word 0xb6d13099 -.word 0xebcd1f4e -.word 0x651c5257 -.word 0xcd085b73 -.word 0x71d2af7f -.word 0xef829c85 -.word 0xe0fd67cc -.word 0x18f2c401 -.word 0x22cedaef -.word 0x378c74c8 -.word 0xf729b4d6 -.word 0x6fa84dd9 -.word 0xa06c05bb -.word 0x4d100d8d -.word 0x81daad1b -.word 0x62c82192 -.word 0x59d54511 -.word 0x95c76aad -.word 0x95918688 -.word 0xe779c46b -.word 0xae96619d -.word 0xedcf6101 -.word 0xdb3d1149 -.word 0xfdb17f54 -.word 0xabd89536 -.word 0x29c0e596 -.word 0xdc52bdcb -.word 0xf6f22f52 -.word 0xe79a27f3 -.word 0x91b10783 -.word 0xb6bcb655 -.word 0x360c4974 -.word 0xd4e441e0 -.word 0x92d30429 -.word 0x48f2f8e4 -.word 0x103ef3cf -.word 0xda9bf995 -.word 0xfd63ed50 -.word 0x16a91f2b -.word 0xccf3d0a2 -.word 0x691406bd -.word 0x26988f40 -.word 0x4b3c74ed -.word 0xc4cf8b8e -.word 0xdf6da8e4 -.word 0x0b500a33 -.word 0x9d5200f8 -.word 0x0b81342c -.word 0xb7ebb713 -.word 0x54b96931 -.word 0xe183029e -.word 0xfb0af1e9 -.word 0x81633ac8 -.word 0xff9e4842 -.word 0x4f468960 -.word 0x13b45a23 -.word 0x998a0e31 -.word 0x08085f7e -.word 0x3287d05f -.word 0x686e80a9 -.word 0x9c4792c9 -.word 0x27fca836 -.word 0x0add12ff -.word 0xde26c44b -.word 0x5057326b -.word 0xf56ab445 -.word 0xe58b7c7c -.word 0x60b6cbac -.word 0x75dd67dc -.word 0x852380cc -.word 0xa4d5e41c -.word 0x987c88b6 -.word 0x8f2bbba3 -.word 0x9ec0961f -.word 0xf0cc8dfa -.word 0x81cc8269 -.word 0x6e6291d4 -.word 0xb8665177 -.word 0x3cd5b01e -.word 0x4d14074e -.word 0xfa50ecc9 -.word 0x8568992a -.word 0x8c65f06b -.word 0x02eee0b9 -.word 0x6a4b39a0 -.word 0x947899aa -.word 0x05222fac -.word 0x9da4ef13 -.word 0xa1d69564 -.word 0x0f616fb4 -.word 0xa0996d4b -.word 0x775c302b -.word 0xade562be -.word 0x5a427c33 -.word 0xb4fab109 -.word 0xbcefd0b0 -.word 0x05adc012 -.word 0x0f81f61e -.word 0xad0faac1 -.word 0xf69b31cc -.word 0x40498cb4 -.word 0x74d0df2a -.word 0x97b95813 -.word 0x51ed2f05 -.word 0x5d2c2926 -.word 0x500b2f38 -.word 0x5e80dffb -.word 0x987aa6a9 -.word 0x4ce74659 -.word 0x608d9483 -.word 0xc5b3b5da -.word 0x06e44edf -.word 0x91bae476 -.word 0xbc344f44 -.word 0x4f5d4110 -.word 0x38f83d75 -.word 0xcdc656e9 -.word 0x3d1b208a -.word 0x2ff91355 -.word 0x6f6b8435 -.word 0xb2b47ae3 -.word 0x1a124c13 -.word 0x526c5cde -.word 0x5570e115 -.word 0xd562ce08 -.word 0x703cff1a -.word 0xdb045abf -.word 0x2b563622 -.word 0x5632a458 -.word 0xa675a107 -.word 0xe288b173 -.word 0x737b6ec9 -.word 0x399b6cb9 -.word 0x1ef491a1 -.word 0x8795ad1f -.word 0x30d884aa -.word 0xce88f3fb -.word 0xd6a66353 -.word 0x2eff833b -.word 0x4751d08b -.word 0xcea663fb -.word 0xa4560003 -.word 0xce66e9f4 -.word 0x58647433 -.word 0x21334ead -.word 0x4abcc4f0 -.word 0xcb3a88fb -.word 0x456bb10f -.word 0x58aaac94 -.word 0x6aba54e9 -.word 0x6b761fd2 -.word 0x68d67101 -.word 0xebad40ce -.word 0x27ef79c6 -.word 0x013183ef -.word 0xf17a003b -.word 0xe1464134 -.word 0xfca65f91 -.word 0x6f31b692 -.word 0xf33dc320 -.word 0xed6897d7 -.word 0x38daf041 -.word 0xbeda988f -.word 0xd631e278 -.word 0xa9b98778 -.word 0x84de2a5f -.word 0x49fea551 -.word 0x5750477c -.word 0x3a3b3bdb -.word 0x116ce13b -.word 0x96b3953f -.word 0x49799084 -.word 0xcf68bc28 -.word 0x0b8a2761 -.word 0xe752f01a -.word 0xb196b0d1 -.word 0xec81bf87 -.word 0xe5856cfd -.word 0xe651170e -.word 0x93b337e2 -.word 0x035d700f -.word 0xbecbde04 -.word 0x2bfc7ff0 -.word 0x4cc576e7 -.word 0xa9b38f21 -.word 0x86640cb1 -.word 0x69eb8ca2 -.word 0xf065163e -.word 0x9cb6c624 -.word 0x5762e344 -.word 0x40a230ff -.word 0xdc960f12 -.word 0x7a299d7a -.word 0xc8467562 -.word 0x5a124b07 -.word 0x328475a4 -.word 0x88ddf91c -.word 0xd11a8404 -.word 0x2bda7707 -.word 0xcaab02c9 -.word 0xebf8e3dd -.word 0xce595c64 -.word 0xd2d0d09e -.word 0x01ebd44f -.word 0xa0ec66f2 -.word 0xdcd0604d -.word 0x0cc85578 -.word 0x457a46a8 -.word 0x44c20f34 -.word 0x86faea91 -.word 0x6c48ae02 -.word 0x790ff9aa -.word 0xc6c88cfb -.word 0x0076881b -.word 0x0e0992f8 -.word 0x207a1cc1 -.word 0x1fe78141 -.word 0x1183c18f -.word 0xf9857322 -.word 0xdabd2a57 -.word 0x160c7c30 -.word 0x808aefd0 -.word 0x50de9385 -.word 0x50884d42 -.word 0x59ee1ccc -.word 0xa59c216d -.word 0x962c470a -.word 0x5c5fa7c8 -.word 0x30eabfff -.word 0x542aaf0e -.word 0x1fae68c4 -.word 0x8e36f2c0 -.word 0xb74e9517 -.word 0x61574819 -.word 0x14746832 -.word 0x2db5db01 -.word 0x5f8eec2f -.word 0x9abc3e55 -.word 0xc859e792 -.word 0x615906b4 -.word 0xcd18e1a2 -.word 0x9f781c9c -.word 0x6e7ceb02 -.word 0x5f56ed34 -.word 0x7f03ca98 -.word 0xb3effcaa -.word 0x6ba6cc7e -.word 0xb1b20f0e -.word 0x75f99ac1 -.word 0x3ebdc767 -.word 0x892ca389 -.word 0xb1f69af3 -.word 0x125321d9 -.word 0x6cc57ee7 -.word 0x6d04d644 -.word 0xe13201a1 -.word 0xefbd6b8b -.word 0x5fcde91f -.word 0xe5d9c5d2 -.word 0xca79879c -.word 0x431e35e4 -.word 0x76d216f6 -.word 0x1f867fde -.word 0xd02f4c38 -.word 0xa98bcfbb -.word 0xe328f191 -.word 0xcadf460c -.word 0xaae550c4 -.word 0xbbd6118a -.word 0x905813d1 -.word 0x1a66f0ba -.word 0x96775bd7 -.word 0x014135cf -.word 0x24bd9e87 -.word 0xc638c9cd -.word 0x0b581670 -.word 0x17802192 -.word 0x196bb2b5 -.word 0xe166586c -.word 0x2ddd02ba -.word 0x060344aa -.word 0xd76ee01c -.word 0x1f0c6f00 -.word 0xd80caa44 -.word 0xac6cc650 -.word 0xd6100537 -.word 0xf3d13a6a -.word 0x943e5a2a -.word 0xcc7ab323 -.word 0x0948f15f -.word 0xc4758a92 -.word 0x82e63e71 -.word 0xb7149708 -.word 0x1b538e11 -.word 0xbfbc2a43 -.word 0xef3f7a52 -.word 0x0fa6d691 -.word 0x5301d7bc -.word 0x9060d1c6 -.word 0xd3fbb243 -.word 0x3dfbf940 -.word 0x2e059114 -.word 0x3ffdc6ee -.word 0x9db0edf7 -.word 0xc0e836de -.word 0x64cb7c68 -.word 0x5e129a33 -.word 0x658a2d3e -.word 0x59ac3e72 -.word 0x6b104fdf -.word 0x15508f2c -.word 0x80144a68 -.word 0xf91a3a5e -.word 0x69af511b -.word 0xbf56323f -.word 0x291e6cad -.word 0xb0dac432 -.word 0xc190d1d3 -.word 0xac81d07e -.word 0x84602576 -.word 0x7bd521e5 -.word 0xa498916d -.word 0xe5bc175d -.word 0x263a5205 -.word 0x188a5430 -.word 0xbf8712d0 -.word 0xeaa73d77 -.word 0x846ac01e -.word 0x716bf4b3 -.word 0xb80a871c -.word 0x2fa4f904 -.word 0x44718838 -.word 0x32fd7324 -.word 0x95eb0431 -.word 0x5099d8fe -.word 0x3b785a1b -.word 0xb0ee0db1 -.word 0xf413b279 -.word 0x4bbdb815 -.word 0xb490b8fc -.word 0x69c78513 -.word 0xda881dd3 -.word 0x95ab8300 -.word 0x44657bdc -.word 0x37b4f40a -.word 0x05eb8108 -.word 0x7abfd4da -.word 0x61fbe926 -.word 0x2c186d92 -.word 0x5c47c908 -.word 0x52715acf -.word 0xc63244fc -.word 0x24c3a22d -.word 0xfdc07557 -.word 0x7ac666b6 -.word 0x99581b27 -.word 0x77d25193 -.word 0xd5a91d5d -.word 0xd2555e55 -.word 0x8e9f7f81 -.word 0x7b366ea0 -.word 0xb88062e3 -.word 0xdb4d585f -.word 0x66779739 -.word 0xbbcc73bc -.word 0xf5d38682 -.word 0x77a7365d -.word 0x3ac72a1c -.word 0x3c1a7554 -.word 0xb7ba6c99 -.word 0xace3ca82 -.word 0xf56e5387 -.word 0xda97fa88 -.word 0x3df9ba7c -.word 0x308b24d9 -.word 0x42351e64 -.word 0x2feb67b4 -.word 0xb46977d6 -.word 0xdbcceb42 -.word 0xe656abde -.word 0x41483325 -.word 0xdd771fc2 -.word 0x503c14a6 -.word 0x6c5d1483 -.word 0xba9dacda -.word 0x15ff3543 -.word 0x17b76868 -.word 0xd57c615e -.word 0x4ab10161 -.word 0x5b4e240e -.word 0x948e8b38 -.word 0xacee0ceb -.word 0x01c32140 -.word 0x55b5946a -.word 0x6fac33ac -.word 0x7c63fa22 -.word 0x35c8de74 -.word 0x95c97798 -.word 0xf490fc50 -.word 0x64135544 -.word 0x8b5af32a -.word 0x1e825d3c -.word 0x4656c0c2 -.word 0xaa59d20e -.word 0x1cceb36e -.word 0xe31ed1b1 -.word 0xe8a4a068 -.word 0x18cecf10 -.word 0xf0f83877 -.word 0x5fcd1af6 -.word 0xc5bd448c -.word 0xc1dff10f -.word 0x4ba81e35 -.word 0xad06f176 -.word 0xa771ae1e -.word 0xce599eda -.word 0x43fdd203 -.word 0xc112935e -.word 0xf6197c0b -.word 0xac3e4332 -.word 0x894242b1 -.word 0x1d00f855 -.word 0x7e6ef790 -.word 0x5a270302 -.word 0xb7d4f68a -.word 0xadb50c97 -.word 0x90ff0738 -.word 0x2e963a34 -.word 0xa54a7c38 -.word 0xa181a485 -.word 0x2dd9c98c -.word 0xe3d1bf7e -.word 0xa7c66a0f -.word 0x1f858063 -.word 0xee8d5572 -.word 0x2431c21d -.word 0x54df24f4 -.word 0xb8713475 -.word 0x98f15b0e -.word 0x8e0f7cea -.word 0xa5c1b206 -.word 0x752c146f -.word 0x4ffc3f19 -.word 0x2d2751f6 -.word 0x118f8683 -.word 0xb740fdc6 -.word 0xc125a152 -.word 0x8b0ae752 -.word 0xbd58f66d -.word 0x5bf5fee3 -.word 0x440e7ce8 -.word 0x62252bc2 -.word 0xdf5ecb25 -.word 0x0ac7c66f -.word 0x8134cac9 -.word 0x3f484196 -.word 0xc4d6b891 -.word 0x5aa6e95c -.word 0x55367c5e -.word 0x6741372e -.word 0x8a9f9efa -.word 0xc58ecfc2 -.word 0x5a56a490 -.word 0xd8cd5e60 -.word 0x1cb49c04 -.word 0x453eab73 -.word 0x198293d5 -.word 0x1cd8e8d2 -.word 0xc76b6f1d -.word 0xba2fa224 -.word 0x2f521016 -.word 0x306d69f2 -.word 0x6aa9ec95 -.word 0xbe4a0d6d -.word 0xd0d4df60 -.word 0xbfaad4a4 -.word 0x9787d394 -.word 0x257f223b -.word 0x65fed0b9 -.word 0x31924a11 -.word 0x8710df85 -.word 0x91809426 -.word 0x33bb4cfb -.word 0x4009de8c -.word 0xc81b100a -.word 0x07b3cfba -.word 0xcd9ba96f -.word 0xe425b0cd -.word 0xf306d19b -.word 0x6215e04a -.word 0x8d779cfd -.word 0x9543340a -.word 0xa2365b10 -.word 0xfa1b24b1 -.word 0xafc6fe17 -.word 0x4ca5b59c -.word 0xdc29aad6 -.word 0x7bec2761 -.word 0x99f2fd46 -.word 0xba11d175 -.word 0x009b8283 -.word 0xc53ca2d8 -.word 0xa974bd88 -.word 0x7deb5be6 -.word 0x860d4034 -.word 0x75e58526 -.word 0x31850c99 -.word 0x879073c7 -.word 0x097ce99a -.word 0x801d4c1e -.word 0xa55d86be -.word 0x71b88c84 -.word 0x90e5ac89 -.word 0xf5827535 -.word 0xe45d69a5 -.word 0x22b5e18f -.word 0xcad921a3 -.word 0x9f8f23de -.word 0x0cf49460 -.word 0x5c227914 -.word 0x3bc10190 -.word 0x13ed14b0 -.word 0x89f40aa1 -.word 0xee08da2b -.word 0x52b7d46a -.word 0xded9cb0b -.word 0xb1d53816 -.word 0x226532e2 -.word 0xdbb8f91b -.word 0x99e36379 -.word 0xed4e4882 -.word 0xb748a363 -.word 0xbd5e4460 -.word 0x57f5b3c0 -.word 0xce8299c7 -.word 0xee8682a2 -.word 0xdc88a467 -.word 0x6fe0da16 -.word 0xc1c0e247 -.word 0x7c29134a -.word 0x1bef6db9 -.word 0x0aee7d4d -.word 0x13f406fb -.word 0x33470ab6 -.word 0x292ba5cc -.word 0x7f4491cf -.word 0xb303e1a2 -.word 0x899562bb -.word 0x6c0f7a47 -.word 0xa634bdd0 -.word 0x4dfd8961 -.word 0x76e3442f -.word 0xc1d13956 -.word 0x66c5f0ce -.word 0x2e3b15ae -.word 0xe63fd162 -.word 0xb83dbc68 -.word 0x5def4e5b -.word 0x5ef8194e -.word 0x87823f0c -.word 0x98b2882d -.word 0x394e093f -.word 0x00b0fbb9 -.word 0x3580b348 -.word 0xc87e806c -.word 0x24baeb7b -.word 0x75c1c1d1 -.word 0x31ff2685 -.word 0x3593dc40 -.word 0x2bb72f12 -.word 0x675bfaf0 -.word 0x2b141fb4 -.word 0x07091a24 -.word 0x1c2d8153 -.word 0x2b11500e -.word 0x7d82ac06 -.word 0x0f49a97a -.word 0x05bde28c -.word 0x72b1a2ea -.word 0x6861d7e1 -.word 0xb414db97 -.word 0x0d15f1c7 -.word 0x673ee161 -.word 0x65882810 -.word 0x06d365fd -.word 0xf72cc17d -.word 0x380a8487 -.word 0x1822228c -.word 0x797e77c6 -.word 0x2a2da7aa -.word 0x9f58fd64 -.word 0x58aafd3d -.word 0x1fbae5f3 -.word 0x0d48be19 -.word 0xba48fdaa -.word 0x466c38df -.word 0xc9afd61e -.word 0x7724b5d9 -.word 0xeed3c53f -.word 0x4cf0b94f -.word 0x3ffe3732 -.word 0x440c6581 -.word 0xd08e2a6b -.word 0xa10cf520 -.word 0x5840d30a -.word 0x17fdc381 -.word 0xaeb1ad4e -.word 0xf821e7e3 -.word 0x979e33b4 -.word 0x00ef9dc3 -.word 0x07c1da35 -.word 0x172d43c0 -.word 0x2b9b0170 -.word 0x095f02af -.word 0x0dcf4026 -.word 0xa780f970 -.word 0xe67a1dcb -.word 0x3360529c -.word 0xf94e0cf9 -.word 0x7a14ab6b -.word 0xcdb7fd10 -.word 0xead920ec -.word 0xf0a9ba56 -.word 0x08c21aec -.word 0x4e0253d8 -.word 0x9b5fed94 -.word 0xf25068ed -.word 0x1678b71e -.word 0x4b1e75c6 -.word 0xd9936a2e -.word 0x1d5b40f0 -.word 0x63ce1691 -.word 0x558cf431 -.word 0xae179c39 -.word 0xedb3728d -.word 0x2cb49dfa -.word 0xbd632b7c -.word 0xbbe4384d -.word 0xd5eda29e -.word 0x8da776cc -.word 0xec6ab2e6 -.word 0x5ce220fa -.word 0x6a2b460e -.word 0x3aba462e -.word 0xc78b0777 -.word 0x7b09958b -.word 0x44fb2a1a -.word 0x2b744970 -.word 0xb87b2558 -.word 0x9b0f759d -.word 0xb5eba597 -.word 0x63054b9e -.word 0x7cb37f81 -.word 0x27654c25 -.word 0xb5f04178 -.word 0x05e04a3a -.word 0x77889823 -.word 0xc229dfb6 -.word 0xad659015 -.word 0x18dab8aa -.word 0x3cb73c13 -.word 0xd7f9c55a -.word 0xa4730122 -.word 0xe0e79714 -.word 0xdf4c4d22 -.word 0x732cee2f -.word 0xe59adddc -.word 0xbb9c9155 -.word 0x556e1f80 -.word 0x5ebe6b60 -.word 0x127250a6 -.word 0x663ab079 -.word 0xf4a82ade -.word 0x1ae10e4a -.word 0x91a3120a -.word 0x1c319aae -.word 0x14b525ba -.word 0xa62df827 -.word 0x3d9da996 -.word 0x0c7f77df -.word 0x271594fe -.word 0xa501ac25 -.word 0x95e71580 -.word 0x02fbffa3 -.word 0x3adc57a9 -.word 0xf79d9d47 -.word 0x385744fb -.word 0x8ffcc051 -.word 0x6b6c5170 -.word 0xc7f953bd -.word 0x9ab6e3ca -.word 0xc9e4639d -.word 0x89042bf9 -.word 0x302b3faf -.word 0x2d77d5f4 -.word 0x1441bce1 -.word 0xd354d89a -.word 0x1ccee7d3 -.word 0x0624815b -.word 0xf766fd24 -.word 0x33027e7e -.word 0xe4ae3f89 -.word 0x15f52d63 -.word 0x77199f0d -.word 0x390650fa -.word 0xd45844b6 -.word 0x9d8c41e4 -.word 0xa44d5cb0 -.word 0xc2eb3636 -.word 0xdf27bf77 -.word 0x5896a40d -.word 0x9a653215 -.word 0x72129d99 -.word 0x1c66db09 -.word 0xd5db63bf -.word 0x982a590e -.word 0xd096d66c -.word 0x34bb9903 -.word 0x8a07d5c0 -.word 0x76d41d6a -.word 0xba5ec775 -.word 0x13c5e70b -.word 0x589d3d26 -.word 0x7c0ae5d8 -.word 0x124f98fd -.word 0x8d7de896 -.word 0xbc3dca6c -.word 0x6c400159 -.word 0xa5fe3502 -.word 0x9b1a4031 -.word 0x36d3a688 -.word 0x59bd63bb -.word 0xfee91282 -.word 0x55cfe2c7 -.word 0x6e4ada6e -.word 0x158d4be8 -.word 0x37c76caa -.word 0x2a4ffd58 -.word 0xee51a907 -.word 0xb9f2ebe7 -.word 0xdfedbbdc -.word 0xfc902b98 -.word 0x9cb56acf -.word 0xee6ca957 -.word 0x8924b95b -.word 0x6b3289cc -.word 0xf2b3ac87 -.word 0xe7310b74 -.word 0xf319410e -.word 0x7bf3ec1d -.word 0xc6015e40 -.word 0x682fed4f -.word 0xff4f2cf3 -.word 0xeb9919a2 -.word 0x4ac3603e -.word 0xef276da1 -.word 0x2f40fd3c -.word 0x188ac281 -.word 0xb8ec8185 -.word 0x4b571310 -.word 0x84fb1e62 -.word 0xa3a5f84f -.word 0x0a624466 -.word 0xbec47227 -.word 0x46a6d790 -.word 0x6eb167c1 -.word 0x58440f6f -.word 0xbdf98c67 -.word 0xbf2dbe79 -.word 0x498cb244 -.word 0x1a75e8ce -.word 0x4ca11c9d -.word 0x693c92ae -.word 0x13dad126 -.word 0x2738df4f -.word 0xc3424c3a -.word 0xb34efc69 -.word 0xf9f590ec -.word 0xfaca65ba -.word 0xe04af5b5 -.word 0x5f6173fe -.word 0x294df38d -.word 0x4fdb4b7e -.word 0x76913e0f -.word 0x86a408a0 -.word 0x8ac55b67 -.word 0x5c163c3e -.word 0xda4a26aa -.word 0x490201a1 -.word 0x7691864c -.word 0xe306104c -.word 0xcea098db -.word 0x4c2250f8 -.word 0x3e1b3f3e -.word 0xce81efb1 -.word 0x02932a80 -.word 0x21a8a5d4 -.word 0x87e6a6c5 -.word 0x892c9001 -.word 0x2a6d3dfe -.word 0x0cddd320 -.word 0x34355d5f -.word 0xc51e8b7a -.word 0x773b3e0b -.word 0xfab2b9ff -.word 0xc918deec -.word 0xfaaf30f2 -.word 0x08fddcef -.word 0x2f5ebc87 -.word 0x03604988 -.word 0x6eaef61d -.word 0x5698cbbb -.word 0x0d1f8cd3 -.word 0x8bc7aefa -.word 0x18046eae -.word 0x4fc60368 -.word 0x3f4aa555 -.word 0xcd583210 -.word 0x6b106037 -.word 0x42a69fab -.word 0x0b441380 -.word 0x6df7d881 -.word 0xa0a2cd80 -.word 0xacdba3c5 -.word 0xe99d0639 -.word 0xcefe2152 -.word 0x3f53de1e -.word 0x22baf837 -.word 0xc2209e7b -.word 0xca1d23ad -.word 0x8242b1f8 -.word 0xd4bc34ab -.word 0x8d468c24 -.word 0x47936e20 -.word 0x2b3268e1 -.word 0x045d2c4f -.word 0xa4a1c282 -.word 0xe5a01c3b -.word 0xe7fa2f8f -.word 0x77ad3951 -.word 0xaa5d54b8 -.word 0xedb9ff1c -.word 0xd062ec40 -.word 0x9a471fb1 -.word 0x6a17ecec -.word 0x84b67cf4 -.word 0x2bb8f3a9 -.word 0x2ed5c542 -.word 0xaf0cbf25 -.word 0xfdfb209b -.word 0x8c0c8d23 -.word 0x687c3b39 -.word 0x5a16336e -.word 0x7473c849 -.word 0xcd8de1e8 -.word 0x73d817e9 -.word 0xf5923891 -.word 0x27c20fd2 -.word 0x509dba04 -.word 0x85a1b041 -.word 0x6970bc8f -.word 0xd9df9328 -.word 0xd3dda7af -.word 0xee6b5f73 -.word 0x9cca6a09 -.word 0x07d524aa -.word 0x93130073 -.word 0x8cbc49c4 -.word 0x7cd28404 -.word 0x47a43779 -.word 0xb59af6f8 -.word 0xe9602e29 -.word 0x1a3aa72e -.word 0xab2f6b63 -.word 0x5f0dad81 -.word 0x83c97910 -.word 0xe54ca8b8 -.word 0xf5d790bb -.word 0xa4bff70e -.word 0x31f139ca -.word 0xebb396cb -.word 0x2e5e8055 -.word 0x622028fe -.word 0xd403624d -.word 0x50f23bc1 -.word 0x4558e367 -.word 0xf32d8b22 -.word 0xf19d204b -.word 0x5140c2d3 -.word 0x647d2d12 -.word 0x482db7e1 -.word 0x21aaf0cd -.word 0x400ead0d -.word 0xfaec7d7d -.word 0x144a7cef -.word 0x3ad1077e -.word 0x3332d957 -.word 0x145c35d6 -.word 0x86b84d64 -.word 0xbe367ef4 -.word 0xd699c424 -.word 0xa190dffb -.word 0xd15bebbc -.word 0x015fa85e -.word 0x483df85f -.word 0xf60f4157 -.word 0x11c2d90d -.word 0x4482ef9f -.word 0x7b9b958f -.word 0x4492ae09 -.word 0x8bcf1652 -.word 0x0c112d65 -.word 0x3c66d04f -.word 0xf52314e6 -.word 0x24eb6384 -.word 0xe7ce5377 -.word 0x2d8b9e76 -.word 0xfe2939af -.word 0xacb26b8d -.word 0xa59d43c0 -.word 0x24680b6c -.word 0x0df8b865 -.word 0xc26c7014 -.word 0x2d184cea -.word 0x308984f4 -.word 0xd29c0425 -.word 0xdff41f65 -.word 0x0c7e2650 -.word 0xf5f4bb65 -.word 0x88e33187 -.word 0x61e400f9 -.word 0x1b68524d -.word 0x63ce3386 -.word 0xfccdef61 -.word 0x47e06423 -.word 0x219dc063 -.word 0x252f4ac9 -.word 0x207cff6c -.word 0x5a381b9e -.word 0xea3b15d4 -.word 0x13b3e3bd -.word 0x31257320 -.word 0xf076802c -.word 0xff34c405 -.word 0xfadc46b0 -.word 0x3ef66402 -.word 0x5ab817d1 -.word 0xf36a17fd -.word 0x7c2df383 -.word 0xb412ca5b -.word 0x503294af -.word 0x0576b177 -.word 0x586a3831 -.word 0xbf88761c -.word 0xc82d018e -.word 0x91a16b4d -.word 0x76cd2bf1 -.word 0x89c2f86a -.word 0x7139bca5 -.word 0x88d0caef -.word 0xd53def8d -.word 0x33512498 -.word 0x9824c14a -.word 0xeecb72b8 -.word 0xd92d11b8 -.word 0x2df0e569 -.word 0xf6a4af3c -.word 0xd70d081f -.word 0x2afcb1aa -.word 0x4411779b -.word 0x33cdb504 -.word 0x0d959b33 -.word 0xfa769782 -.word 0x68c75894 -.word 0xdf6816a6 -.word 0x1d545fd2 -.word 0x039076c5 -.word 0xdea9d244 -.word 0xcb441c8d -.word 0xfdd6e493 -.word 0xaf7b186c -.word 0x86759dd6 -.word 0xc41afcc9 -.word 0x17aff6ce -.word 0x8a566dd3 -.word 0x70f1e48a -.word 0x25766813 -.word 0x99b2d927 -.word 0x52bae74e -.word 0x81a2a1f2 -.word 0x5f9e5414 -.word 0x5170d993 -.word 0x5bc2b656 -.word 0x99dd8bf9 -.word 0xfb0208d8 -.word 0xefa7996b -.word 0xdcb83a76 -.word 0xd5d15f8b -.word 0x496b51df -.word 0xfa0a35aa -.word 0x450e9c86 -.word 0x1f88abb3 -.word 0x8034e087 -.word 0xbb7276a0 -.word 0x574ca617 -.word 0xa530e888 -.word 0x484ade6e -.word 0xf788e089 -.word 0x73f173c4 -.word 0x7a5510eb -.word 0x880bd799 -.word 0xdff980c6 -.word 0xfc8d4b54 -.word 0x874a6cd1 -.word 0x7109c5a0 -.word 0x9e282a42 -.word 0x11bc3fcd -.word 0x6cec3992 -.word 0xd8f46634 -.word 0xc7044b4a -.word 0x0f31be07 -.word 0xdabf556d -.word 0x624f6f07 -.word 0xfb34aa83 -.word 0x5dda85f0 -.word 0x36f35241 -.word 0x8c77e6f0 -.word 0xe243df64 -.word 0x6e5c30b7 -.word 0xde12b0cd -.word 0xb61bf392 -.word 0x5c8c9140 -.word 0x4cf4688c -.word 0x815d724c -.word 0x6625afee -.word 0x5f5eef3d -.word 0xa6d71ad6 -.word 0xe0086f84 -.word 0x959c4570 -.word 0x256d3aea -.word 0x384c3000 -.word 0x5ef4b482 -.word 0x9d5bbaa0 -.word 0x23b776dc -.word 0x14e06ec6 -.word 0x5215c12e -.word 0x48715846 -.word 0x078cb020 -.word 0x89ee7398 -.word 0xebdb554a -.word 0x88cbe58e -.word 0xbcc71fcc -.word 0xd412c857 -.word 0xd6734d3a -.word 0xe9bd71c7 -.word 0x70ff746b -.word 0xaeb40d13 -.word 0x1ee802f0 -.word 0xe14647be -.word 0x60d437a7 -.word 0x79b0b364 -.word 0xe3ea9d4a -.word 0x4968e471 -.word 0x309e0343 -.word 0xd2d6c7c6 -.word 0x994e2d7c -.word 0x15b7ecad -.word 0x072e44b9 -.word 0x59ece52c -.word 0x01ea7f0f -.word 0xd51a2800 -.word 0x2f04522f -.word 0x46302204 -.word 0x6386b8c6 -.word 0x82ffba54 -.word 0x6eae6993 -.word 0xa0efd1bf -.word 0xa8eb722a -.word 0x6fab6949 -.word 0x18d78294 -.word 0xfaa71418 -.word 0xb0f3709c -.word 0x15631382 -.word 0x7112369c -.word 0xc0ea1df8 -.word 0xfde5272b -.word 0x10e5d95b -.word 0x026e14ea -.word 0x7add555d -.word 0x6c0eee14 -.word 0xe4f7f143 -.word 0xd394a2d5 -.word 0x54e21054 -.word 0x6b33fbbc -.word 0x953615c7 -.word 0xe2589e2b -.word 0x33b1f594 -.word 0x6451af1f -.word 0x16a52f21 -.word 0xa42ae271 -.word 0x06cc865c -.word 0xef5f2591 -.word 0x8612e768 -.word 0x92eb533b -.word 0x15d51d65 -.word 0x3b73c2fa -.word 0x7801db1a -.word 0xdb7c4abe -.word 0x89ff43cd -.word 0x48dcca6b -.word 0xfb69466f -.word 0xa954bcdf -.word 0x8743f507 -.word 0x33ce8e12 -.word 0x4c6e538b -.word 0xe65ca913 -.word 0x22056f72 -.word 0x8815bc0c -.word 0x9eb5f691 -.word 0x5ad80fca -.word 0xc4c9e47c -.word 0xe8f2edd3 -.word 0xdb87c3d7 -.word 0xbced5931 -.word 0x341dd68e -.word 0x0f5409f7 -.word 0x6ecdd57b -.word 0x4fe522f4 -.word 0x31a4062f -.word 0xdf127c7c -.word 0x37506b86 -.word 0xd2a0e8a4 -.word 0xf009422f -.word 0x1ea6a8dd -.word 0xe9e03690 -.word 0x65ab7d9b -.word 0x36426e0a -.word 0x2fbc7d38 -.word 0x09a7802a -.word 0x7fae8bc8 -.word 0x6263313c -.word 0xd9f83936 -.word 0xd5404778 -.word 0x0e970fa7 -.word 0x66bc9bac -.word 0x63a21dc7 -.word 0x2d794fe9 -.word 0x402e372b -.word 0x436b0281 -.word 0xb1b22adf -.word 0x5717d077 -.word 0x1c74a5e6 -.word 0x386d2ee9 -.word 0x713272e5 -.word 0x90993925 -.word 0x3ed8872f -.word 0xb31a4f07 -.word 0x3725a43a -.word 0xabba064c -.word 0x9bfee6c8 -.word 0x2cfea596 -.word 0xc0452631 -.word 0x64ec8653 -.word 0x8a1ef8ce -.word 0x99078066 -.word 0xa0cd658a -.word 0x713d3c2c -.word 0x0e5501a2 -.word 0xc964f9f1 -.word 0xdc10e08f -.word 0x7d7b60c1 -.word 0x9438df86 -.word 0x44ba9c90 -.word 0xe60f84ae -.word 0xaf87d490 -.word 0x38cd75ac -.word 0xd1453190 -.word 0xfc7262d0 -.word 0x5890886d -.word 0xfedae054 -.word 0x7bae4718 -.word 0x2dc0bb63 -.word 0xb785722e -.word 0x56c0519b -.word 0xbb7a3425 -.word 0x955cb6ca -.word 0x1b8f0c0b -.word 0x873003e5 -.word 0xd9d07c6a -.word 0x7a510154 -.word 0x8a10f445 -.word 0xdcf6a81e -.word 0x7257ed8c -.word 0x7e20e3a1 -.word 0x9533088b -.word 0xd2e84a55 -.word 0x33ff8af4 -.word 0x17f36bb6 -.word 0xc2dd843f -.word 0x8d763813 -.word 0x4d80e492 -.word 0xe46434d6 -.word 0xe275488a -.word 0x8a9dfd4a -.word 0xfd09f36e -.word 0xd601b0be -.word 0xbf802e15 -.word 0x4a9175bd -.word 0x02c5180d -.word 0xadb84a92 -.word 0xbc309639 -.word 0x59c54ded -.word 0x7a9015ac -.word 0x91323086 -.word 0x3ff50a49 -.word 0xb29724c6 -.word 0x90009f9b -.word 0x62b1f8f7 -.word 0x1c0f018a -.word 0x8dcf7ac5 -.word 0x51d650dd -.word 0xb991b1b0 -.word 0x2c2b4f91 -.word 0x64f700af -.word 0x323b37fd -.word 0x68849d12 -.word 0x938d826c -.word 0x1b5e23b7 -.word 0x0e078a33 -.word 0x7b75ea96 -.word 0x33986e45 -.word 0x814e0cd5 -.word 0x2acbfb63 -.word 0x19cd6511 -.word 0x899aa004 -.word 0xec56008d -.word 0xde58a012 -.word 0x83f9848a -.word 0x65b614c9 -.word 0x10ea77ef -.word 0x46bf50f6 -.word 0x50724ee7 -.word 0xf108cb89 -.word 0x1e010306 -.word 0xf2ae0dc4 -.word 0x7a0b238c -.word 0x6f1daac5 -.word 0x43242a4c -.word 0xf6692c96 -.word 0x2fa326c8 -.word 0x924390f9 -.word 0x82c0e57e -.word 0x33131ed5 -.word 0x3913c388 -.word 0xfc4497e9 -.word 0xca71ba2b -.word 0xbbc3046b -.word 0xe72435a4 -.word 0x193ae4bb -.word 0xb41b80c5 -.word 0xc021f0e3 -.word 0x39b1d17f -.word 0x7501ab2b -.word 0xf9736e64 -.word 0x53a7165a -.word 0xc32947e5 -.word 0x2a4fbc41 -.word 0xaacc4f70 -.word 0x44fa5200 -.word 0x8240aa64 -.word 0x5f54391d -.word 0xdecd930e -.word 0xbeaee34e -.word 0x811011d2 -.word 0xafeed633 -.word 0x6d7b51bf -.word 0xcde5432e -.word 0x41e8d889 -.word 0x8b4d55a9 -.word 0x95eca0bd -.word 0x63590145 -.word 0x0bed6581 -.word 0x2b825b6d -.word 0xa3f5db40 -.word 0x361afb79 -.word 0xc215dca4 -.word 0x81413ed7 -.word 0xf4008307 -.word 0xd90b62f7 -.word 0xba34f875 -.word 0x5f5ca108 -.word 0x0b23abf4 -.word 0x8e803a32 -.word 0xbee4505f -.word 0xebcb03ac -.word 0x33e26c23 -.word 0x289079c7 -.word 0xfb0075bf -.word 0xbd4d0783 -.word 0x7c0f3f4e -.word 0xbd0d2d69 -.word 0x26412023 -.word 0x8b468ccb -.word 0xab2bb43a -.word 0x9a919077 -.word 0x2941fa48 -.word 0x23046862 -.word 0x9ff4d803 -.word 0xe264ce36 -.word 0x235b98c3 -.word 0x01d15056 -.word 0x1532f5d4 -.word 0xc903bd31 -.word 0x640a2cf7 -.word 0x74ae1c32 -.word 0xfe786356 -.word 0x9c74070e -.word 0x4368e3a5 -.word 0xb3724e7b -.word 0x0081b2c2 -.word 0x48128b56 -.word 0xb2d971ad -.word 0x2bbb85a0 -.word 0x085d686a -.word 0x84ab55b7 -.word 0x53eba03b -.word 0xf8a09a4c -.word 0x1a034381 -.word 0xcd5b6aa7 -.word 0x637353e0 -.word 0xce2fda71 -.word 0x71f21d1e -.word 0xaadbd0f7 -.word 0x539d73f4 -.word 0x397e6fce -.word 0x73d21c08 -.word 0xccda4a20 -.word 0x5865fb07 -.word 0x3adadd05 -.word 0x6a76208c -.word 0x188c61cc -.word 0x50d3a4ff -.word 0x92a5a244 -.word 0x8ba73d55 -.word 0x98f280c8 -.word 0x4a3e9183 -.word 0x0658f10d -.word 0x06c87f72 -.word 0x56c8bf07 -.word 0x324b41ee -.word 0x91a800b0 -.word 0x43ee8d74 -.word 0xc30d2280 -.word 0x99f3836c -.word 0xa98e927d -.word 0xbc4b7a47 -.word 0x858859b3 -.word 0x6d33ce74 -.word 0x4ef4de19 -.word 0x101bf885 -.word 0xcb5fafcf -.word 0x8006c851 -.word 0x19878a29 -.word 0xed37631e -.word 0x94fe1b7e -.word 0x9fa17945 -.word 0x704b7551 -.word 0x20498749 -.word 0xffe158f1 -.word 0x2b0d9de7 -.word 0x5dc24f31 -.word 0xffd46c0a -.word 0x1f422782 -.word 0x7fdecf22 -.word 0x7acadc9a -.word 0x3f654e37 -.word 0xecb3af99 -.word 0x6a0854c1 -.word 0x02f76c00 -.word 0x793a9654 -.word 0x01349261 -.word 0xb5601510 -.word 0xde7926b0 -.word 0xe7da5b61 -.word 0x0c45506b -.word 0xacdb8cea -.word 0x4e02897a -.word 0x78fedbd0 -.word 0x4cea01f9 -.word 0x4e154bb9 -.word 0x21fb2f8a -.word 0xa02fa6f2 -.word 0x16ac600d -.word 0xf6d53015 -.word 0x0b381743 -.word 0xf6cd9ab6 -.word 0x3109b9e7 -.word 0x155e41c5 -.word 0xbeab9e6d -.word 0x87e80f38 -.word 0xc4d872d7 -.word 0x822a46a4 -.word 0xa16b2385 -.word 0x152a8efe -.word 0xac81842a -.word 0x832fe51b -.word 0xf6546531 -.word 0x0195dd6f -.word 0x117c3e4b -.word 0xad1ef0f0 -.word 0xed18f943 -.word 0x6bf54855 -.word 0xb600002b -.word 0x8f7f3ad9 -.word 0x6412090e -.word 0x7725840b -.word 0x9a04af9e -.word 0x0764ecaa -.word 0x4e3d060f -.word 0xbcf1b9d5 -.word 0x42145799 -.word 0x79204b58 -.word 0x41b8a066 -.word 0x5b8c7f03 -.word 0xa68a07a9 -.word 0xbe62fb30 -.word 0xf4f27aee -.word 0x7a101ef8 -.word 0x33e82d57 -.word 0x5640aab3 -.word 0x0ef97215 -.word 0x3d53b460 -.word 0x95a4a442 -.word 0x9c70c44d -.word 0x3dd1870c -.word 0x2e7cea0a -.word 0x191a0935 -.word 0x2dbb7f3d -.word 0x805c722e -.word 0x415331ce -.word 0xe23a61ae -.word 0x9099f1b3 -.word 0x57153c4c -.word 0x6e5afcba -.word 0x0a3d08eb -.word 0xbb9e867a -.word 0xc0474aad -.word 0x5d171ddd -.word 0xb9b9b60d -.word 0x45c13851 -.word 0x38312604 -.word 0x3a6d9f5c -.word 0x3259dbb8 -.word 0x9b19bde1 -.word 0xa46155ed -.word 0xba4d037b -.word 0x1a907953 -.word 0xc42a04ad -.word 0x7a70208f -.word 0x60e40550 -.word 0x80c98a12 -.word 0x6ec9c4b4 -.word 0x3338f2cf -.word 0x651fdfc2 -.word 0xa564eb72 -.word 0xb718dae5 -.word 0xea3e8701 -.word 0x31c327f2 -.word 0xe4187b16 -.word 0xcce3a15f -.word 0xb68518a3 -.word 0xfac0a45b -.word 0x234c2bcc -.word 0xc6cefe51 -.word 0xe63f50a4 -.word 0x1f3dc543 -.word 0x983c3f47 -.word 0xf26ef3fe -.word 0x4b034391 -.word 0xdaf2e964 -.word 0xe8046eae -.word 0x6f62c360 -.word 0x252b6825 -.word 0x372e1636 -.word 0xd46f9f94 -.word 0x6c12ca50 -.word 0x50cfef54 -.word 0x71629bb0 -.word 0xed9dba41 -.word 0x4104e3b1 -.word 0x04ae9372 -.word 0xf2fed8cb -.word 0x51216471 -.word 0x62af1607 -.word 0xf9d29c84 -.word 0x482aa346 -.word 0x15f30406 -.word 0xe341762d -.word 0x3e6e3d7b -.word 0x38b9a93c -.word 0xf00a6b4b -.word 0x3ab69097 -.word 0xe6b064e3 -.word 0x5546d7f2 -.word 0x4da16399 -.word 0x374077ba -.word 0x8ad47f27 -.word 0x8f64bc17 -.word 0x65f9c0a0 -.word 0x81e6d0b5 -.word 0x4c503d5a -.word 0xd670ef08 -.word 0xef121745 -.word 0xc0c990a9 -.word 0xd1dcae93 -.word 0x121bb0d9 -.word 0x4016cecb -.word 0x3425f1c9 -.word 0x27a2bb4b -.word 0xf7eb8667 -.word 0xe7bf5e67 -.word 0xea065574 -.word 0x8ece1639 -.word 0x1dd3444e -.word 0x6d522de8 -.word 0x0e64c751 -.word 0xe796a96d -.word 0x43f83d32 -.word 0x49c3a97a -.word 0xf21de7d1 -.word 0x33546f8e -.word 0xec2efb67 -.word 0x4fa756cb -.word 0xaa320983 -.word 0x1b50f18d -.word 0xe5fba0d9 -.word 0x660c83f7 -.word 0x58551db9 -.word 0xa784d5b9 -.word 0x97e88cc8 -.word 0x403ff338 -.word 0x1fca42b3 -.word 0x93522f24 -.word 0x0650eea5 -.word 0xdf17f1ab -.word 0x58002a13 -.word 0x2b6a3ca7 -.word 0x53f0a101 -.word 0x1d229459 -.word 0x510f8753 -.word 0x8b104c42 -.word 0x682b41bc -.word 0x558f2552 -.word 0x4a713c60 -.word 0x7c8b8f0e -.word 0xc75877b7 -.word 0x700ebae0 -.word 0xc4958a26 -.word 0x7b903460 -.word 0x1ece6f39 -.word 0x2b949d8b -.word 0xd8ff0f1c -.word 0x7ab2cf69 -.word 0x61e70ffb -.word 0x84018a26 -.word 0xd8a2134f -.word 0x60158baf -.word 0x5c913616 -.word 0x5db025b7 -.word 0x02c41edd -.word 0x8b7a6e6b -.word 0x7aaa58b2 -.word 0x7eebebf1 -.word 0x739b9b20 -.word 0x78f39702 -.word 0xb728c26a -.word 0x2fa6dd67 -.word 0xfb3c17d1 -.word 0x1d5a9c75 -.word 0xddc83e26 -.word 0x2cd08ef7 -.word 0xcb927b3f -.word 0x42b16aaa -.word 0x140707eb -.word 0x8a69e760 -.word 0xd6c75587 -.word 0xd871cf8b -.word 0xe081afe1 -.word 0xface23f4 -.word 0x0d9bb17f -.word 0x610895a5 -.word 0x1b5ed9d4 -.word 0xc152b470 -.word 0x7395946b -.word 0xbe7b8970 -.word 0xcbb4a761 -.word 0xffbd74ef -.word 0xad4634ee -.word 0xe00da8b5 -.word 0x8c699dd8 -.word 0x14a76da3 -.word 0xe41eb0b9 -.word 0x174fe935 -.word 0x15f4dc26 -.word 0xd4904fa4 -.word 0x47d2da62 -.word 0xa9931cab -.word 0x07539579 -.word 0x35f69e61 -.word 0xb736e90e -.word 0x09a3d283 -.word 0x82b7d6dc -.word 0xefffb3f8 -.word 0x36dd858a -.word 0xb46c972e -.word 0xbe6cccc0 -.word 0x9eb6d5ca -.word 0xc42dcd2b -.word 0xb2bc08df -.word 0x03a7663b -.word 0x311b1a76 -.word 0x89523ef5 -.word 0xf848c221 -.word 0x378a95b8 -.word 0x963c4b2e -.word 0x20da1036 -.word 0xd8ca006c -.word 0x71f4f271 -.word 0x859fb60d -.word 0xab5a0bcf -.word 0x22f36033 -.word 0xba9302bd -.word 0xccc5e32a -.word 0xdc0c92f4 -.word 0x480b7b22 -.word 0x3bfc6af8 -.word 0x2a3a9731 -.word 0xe63dc26b -.word 0x7022d41a -.word 0x63cbace8 -.word 0x853ceb3d -.word 0xb2d26411 -.word 0x516e0469 -.word 0x561830eb -.word 0xc426ca38 -.word 0xc6d4e006 -.word 0x4bc3ef8c -.word 0x12db3dc5 -.word 0xed95efed -.word 0xbacde24a -.word 0x981ee04f -.word 0x679725ff -.word 0xf57544b1 -.word 0x6e3db03a -.word 0x376f787d -.word 0x19b06f54 -.word 0x59de2720 -.word 0x99cbaf18 -.word 0x5d52114e -.word 0xf2756882 -.word 0xa65a4b55 -.word 0x754bc3b1 -.word 0xa9094abb -.word 0x9a0c6468 -.word 0x9e1ab6bd -.word 0x7ec67d91 -.word 0x85e512d8 -.word 0x7dc25019 -.word 0xd4d380b8 -.word 0x311ebadb -.word 0xc9142c80 -.word 0x4c5e14c3 -.word 0xd9494896 -.word 0x12a2cefa -.word 0x7c289439 -.word 0x7163b5cd -.word 0xb628daa5 -.word 0x33d0e15b -.word 0x432f8d57 -.word 0x22090cfe -.word 0x8fbb363d -.word 0x93989088 -.word 0x0021ffff -.word 0x2d8949be -.word 0x331b1e94 -.word 0xf50c2528 -.word 0x747bd6d6 -.word 0x90c767a4 -.word 0x4a261a0c -.word 0xa8e1b686 -.word 0xd01f3b11 -.word 0xabd40ce3 -.word 0x005f3eaa -.word 0x70833fea -.word 0x7d23f4f3 -.word 0x0b67cd1d -.word 0xca3a4575 -.word 0x51a01d39 -.word 0x4b19d926 -.word 0xa0107acf -.word 0x95b56752 -.word 0x7f1666ea -.word 0xdbfb1460 -.word 0x84d43f4f -.word 0x57da4308 -.word 0x107bc4a6 -.word 0x8d89adc1 -.word 0x5d0d0abc -.word 0x895e2702 -.word 0x58f09ada -.word 0x01c31325 -.word 0x09ad21ef -.word 0x286bb04a -.word 0x180cd825 -.word 0xd9f5998c -.word 0x94abbcba -.word 0x3d0f05ef -.word 0xb5ef2770 -.word 0xa26c7111 -.word 0x0fe05460 -.word 0xc052d012 -.word 0x3a95b3b5 -.word 0xff51a82b -.word 0x24523052 -.word 0x492ccc72 -.word 0x3fc6810b -.word 0xdcb89519 -.word 0xd18f306b -.word 0x94535c6c -.word 0x2623f0ce -.word 0x6dbc9f15 -.word 0xb3b609ed -.word 0x0ed3150e -.word 0xebc277ed -.word 0xd7630fa1 -.word 0xee840215 -.word 0xb2d6eb99 -.word 0x9e1d9be3 -.word 0xf99d591e -.word 0x4454330d -.word 0x4e3881eb -.word 0x1f88a7c0 -.word 0x2e2de15f -.word 0xcc685aba -.word 0x18610f2d -.word 0xbe7f2fe2 -.word 0x6571bc76 -.word 0xe0ab694e -.word 0xc2774728 -.word 0xafd3f8a3 -.word 0xd85274ce -.word 0x0ae361fe -.word 0x43f35f1e -.word 0x5e5c0ae6 -.word 0x6de88d1d -.word 0xab9ac3cb -.word 0xe112c9ee -.word 0xbd738f01 -.word 0xedbf2308 -.word 0xb22b2893 -.word 0x5b42695f -.word 0x82016107 -.word 0xbf9fd05f -.word 0xd09d704d -.word 0x5eb1d356 -.word 0x5af8ef89 -.word 0x9d5002c5 -.word 0x3a7717eb -.word 0xe20a3e98 -.word 0x0004d747 -.word 0xa61156a5 -.word 0x7c521348 -.word 0x31ebe6a4 -.word 0x91f7e15c -.word 0x7962145f -.word 0xf64d24b9 -.word 0xe276ebf1 -.word 0x9629da3a -.word 0xdf139b2f -.word 0xe237d27d -.word 0x2a48d4d8 -.word 0xd3cf616d -.word 0xd5564f89 -.word 0xfda7b32d -.word 0xc2779b73 -.word 0x645d4103 -.word 0x34d5864c -.word 0xa720c264 -.word 0x35f13cdc -.word 0xc1ddabb5 -.word 0x930825ac -.word 0xd365ef3a -.word 0x5b435328 -.word 0x4d911e1b -.word 0xe7886677 -.word 0xa999f455 -.word 0x60d3fe75 -.word 0x8f86c6f9 -.word 0x6f7f0d85 -.word 0xa498118b -.word 0x844bbd02 -.word 0x491b3fdf -.word 0xfacb7f0b -.word 0xe2a1af14 -.word 0xc238783a -.word 0x47394a57 -.word 0x31b9d706 -.word 0xbb272216 -.word 0xd285540d -.word 0xa7195efa -.word 0x36a7dc15 -.word 0xb86af4e7 -.word 0x85f1c807 -.word 0x5f93d47c -.word 0x96c583e9 -.word 0x72e2b108 -.word 0xa616a4bd -.word 0xc06b3b04 -.word 0xfb9527b8 -.word 0x1c74ac10 -.word 0x9232ba1f -.word 0xf205bbc1 -.word 0xa831f5dc -.word 0x946412cd -.word 0xda5ca7fb -.word 0x0805421e -.word 0xcaed361b -.word 0x9f8afc52 -.word 0x9590cd9e -.word 0x4f89290a -.word 0x9e85f06c -.word 0x20183497 -.word 0x8686f264 -.word 0x41fccadd -.word 0xee803746 -.word 0xcdfee3a0 -.word 0x790c0659 -.word 0xc146a3d6 -.word 0x62826068 -.word 0x860b0468 -.word 0x2957f875 -.word 0xdb9e0c53 -.word 0xc39910d9 -.word 0xc28f87b0 -.word 0x1550dc86 -.word 0xd1c6c10c -.word 0x0314b71f -.word 0x90acf376 -.word 0x7ce0ecdc -.word 0x0f2a58f1 -.word 0x6bf6cace -.word 0xe319f884 -.word 0x9fd00c4d -.word 0x5081f66d -.word 0xd079520a -.word 0x5afc7eb4 -.word 0xe5a60193 -.word 0x669f51bb -.word 0x13ddbfee -.word 0xf8c2d107 -.word 0x12315095 -.word 0x40c8ed2e -.word 0xc5639cf8 -.word 0x1d7c1268 -.word 0x8b4c8022 -.word 0xdbeb0da8 -.word 0x97079f51 -.word 0x591ec8a9 -.word 0xc20d6315 -.word 0xd35a0628 -.word 0x94519b96 -.word 0xa07d545d -.word 0x528640fb -.word 0x684f45c1 -.word 0xfdeab9e3 -.word 0xf8ca20b3 -.word 0x006fb304 -.word 0x323ebb14 -.word 0x39ab8535 -.word 0xcafac3c4 -.word 0x335afc8b -.word 0x2b5bde31 -.word 0xc410ffc3 -.word 0x2b3b5ecc -.word 0xfa355751 -.word 0x74936e61 -.word 0xe60979a4 -.word 0xd1d9006b -.word 0x3508cf6c -.word 0xc91fb39d -.word 0x6a38cd99 -.word 0x38df55e3 -.word 0x0bca0142 -.word 0xb4050ce2 -.word 0x8fa09f77 -.word 0x4d9c9955 -.word 0xd5329bdb -.word 0x32713526 -.word 0x71dad1e6 -.word 0x1656e776 -.word 0x59b3a1a2 -.word 0xe27aaf50 -.word 0x8004f135 -.word 0x27503624 -.word 0x3c8ea1a7 -.word 0xa4f3e2f0 -.word 0x471967cd -.word 0xe31d9f16 -.word 0x0f81403c -.word 0xde704268 -.word 0x9f37842a -.word 0xd27de596 -.word 0x5aadf4dc -.word 0x11b2a214 -.word 0x2c12b6a5 -.word 0xa076e5f4 -.word 0x06a201ce -.word 0x1c351318 -.word 0xc84403a8 -.word 0xe0c65b44 -.word 0xdb2a85e6 -.word 0xd661cde5 -.word 0x8e16f01f -.word 0xe0118d6a -.word 0xb294e327 -.word 0x8eb18c59 -.word 0x6cf9fa1e -.word 0x063bb869 -.word 0x16f1d7ee -.word 0x3fe9f450 -.word 0x75fde408 -.word 0x1efc762d -.word 0xf870961c -.word 0x93953e74 -.word 0xbd8a59d4 -.word 0xe48888c6 -.word 0x39ea9615 -.word 0xe2dabffd -.word 0xf5429211 -.word 0x4478a163 -.word 0x201f320f -.word 0xcccecafc -.word 0xe3c7c27d -.word 0xcc6a9de0 -.word 0x68875021 -.word 0x9a26442c -.word 0x1d2706da -.word 0x3c083011 -.word 0x6b3b113c -.word 0xbea68606 -.word 0x16bab462 -.word 0xeda43010 -.word 0x07a25159 -.word 0xf83c7006 -.word 0x3ca904ca -.word 0xd1a0a854 -.word 0xd16b8e1d -.word 0xf454e20b -.word 0x785e793d -.word 0xb2e43f8f -.word 0x4ac2f2a2 -.word 0xd5362e9d -.word 0x1bddf2d9 -.word 0xe23ceaec -.word 0x97a23b32 -.word 0x0fd95040 -.word 0xf0fa4d8c -.word 0x50e5e361 -.word 0x117190e5 -.word 0x425088e4 -.word 0x06fdb81b -.word 0x4803b2b6 -.word 0xb5be2814 -.word 0xfd0f9370 -.word 0xa1a0dd40 -.word 0xdaa01c5e -.word 0xd281954e -.word 0xb6f7c05d -.word 0x6266b9e1 -.word 0x40750d4b -.word 0x27f1b91b -.word 0x8c061feb -.word 0x344441d4 -.word 0xbd6ba162 -.word 0x520b8179 -.word 0x944a90ca -.word 0x8be46818 -.word 0xa0bf992c -.word 0x27c28b8c -.word 0x419a21c2 -.word 0xb04b8ab3 -.word 0x3690c7ef -.word 0xabe6e150 -.word 0xf70d1583 -.word 0x639e0caa -.word 0xf62f3d23 -.word 0x9d40dcfc -.word 0xf1c3e838 -.word 0x86b72652 -.word 0xc0b73fea -.word 0xaebb7e28 -.word 0x31fac927 -.word 0x84958f77 -.word 0x94b693cd -.word 0x76b12f1e -.word 0xa8f38f34 -.word 0xe8bb53aa -.word 0xcb82ed17 -.word 0xcfef0d9f -.word 0x24b918c5 -.word 0xb4018af6 -.word 0xa09c4475 -.word 0xf036f132 -.word 0x00a716e7 -.word 0x2c240c90 -.word 0xf9c34c4f -.word 0x5f599497 -.word 0xb4a43f4d -.word 0x977d8d1a -.word 0x65e27d58 -.word 0x70499510 -.word 0x8fe9476a -.word 0xfc366aad -.word 0x888b82cc -.word 0xca4c0c1f -.word 0x4daf92a2 -.word 0xb634209b -.word 0x9ac9cb94 -.word 0xbe51e40a -.word 0xe127f624 -.word 0x146ebd1d -.word 0xf791754d -.word 0x9c3507ee -.word 0x4281f6d6 -.word 0x76e007c9 -.word 0x18cb2380 -.word 0x3b2ae56e -.word 0xd678b773 -.word 0xb60d1f94 -.word 0xddc62930 -.word 0x2990bc3b -.word 0x1bb17d32 -.word 0x611ddcd7 -.word 0x7ee9d707 -.word 0xb5f87dae -.word 0x4c5e7c80 -.word 0xbcbe4a1c -.word 0x958f6420 -.word 0x49e579d6 -.word 0xc9aa290a -.word 0x12dcbee4 -.word 0x979abefd -.word 0x30137917 -.word 0x0ae800a1 -.word 0x7a74f32d -.word 0x85142aec -.word 0x9ccf28ba -.word 0x600fba9b -.word 0xedf3ff8e -.word 0xc8bdf641 -.word 0x2769d938 -.word 0x013802cc -.word 0xf5e8f1bc -.word 0x693c816e -.word 0x1addbaa7 -.word 0x2d7e603a -.word 0xb33e31d6 -.word 0x2d363ad4 -.word 0x5f81dfa3 -.word 0xad461972 -.word 0x5a30203d -.word 0xa74d827d -.word 0xf2c7ce1e -.word 0xcafe0c58 -.word 0xa0d2d78b -.word 0xa028fa41 -.word 0x4f4036cb -.word 0xa3f1fc02 -.word 0xa62c2c1b -.word 0x964753c9 -.word 0x7d9fe9ab -.word 0xc0631880 -.word 0x3457eecc -.word 0xb6a3e997 -.word 0xfa7e571d -.word 0x09309f3c -.word 0x4089011e -.word 0xfc5a9421 -.word 0x151c0808 -.word 0xd15af78b -.word 0x94ba200f -.word 0x11cdf50f -.word 0xa130b4ad -.word 0x01f4e1ec -.word 0xd96c9b61 -.word 0x4d67df6e -.word 0xec882e5f -.word 0xe5cb49d2 -.word 0x22f60bf5 -.word 0x672948e8 -.word 0x270a2b4e -.word 0xc1ffb7f0 -.word 0x18697682 -.word 0x12dffa7b -.word 0x1db906e8 -.word 0xdbd72a61 -.word 0x3f403856 -.word 0x52b14f6a -.word 0x72397c39 -.word 0x8d440882 -.word 0x69c6bac7 -.word 0xf2766ec3 -.word 0x57330d03 -.word 0x79d73655 -.word 0xdcb56d57 -.word 0x3e5c1e2c -.word 0x2c89cb5a -.word 0xd6160a3b -.word 0x50e1f7e5 -.word 0xe455a21f -.word 0xd275d3ac -.word 0x5f77b1b2 -.word 0x5537b7bd -.word 0x19f325fd -.word 0xdf9bebe6 -.word 0x714910e3 -.word 0x5798c6bb -.word 0x2d32f7cb -.word 0x39d58aa3 -.word 0xdfb67e1f -.word 0x2171936f -.word 0x8df92fea -.word 0x9fecdf8f -.word 0x85389349 -.word 0x809af163 -.word 0x65c1c6c2 -.word 0x310e5e03 -.word 0xd22dbe63 -.word 0xe597077c -.word 0x905e6908 -.word 0x406d518a -.word 0xe98a3295 -.word 0x33a52245 -.word 0x2bc2861f -.word 0xa038ab78 -.word 0xd4d99fba -.word 0x928098b1 -.word 0x1c14f416 -.word 0xfa9cb87c -.word 0x27fb6a26 -.word 0x57f8f014 -.word 0xfd0004cb -.word 0xcacae73e -.word 0xc178c608 -.word 0x1364d975 -.word 0xda0e23c6 -.word 0x666bb137 -.word 0x02be0aa7 -.word 0xca02b209 -.word 0xee27e26a -.word 0x0c2e95cb -.word 0x74440d60 -.word 0xe6c8754c -.word 0x551cb971 -.word 0x4d8dc44b -.word 0xc7685d53 -.word 0x70f35812 -.word 0xff8239fd -.word 0xdb225ae4 -.word 0xdbcad48b -.word 0xb4fcbad7 -.word 0x31dfef36 -.word 0xafe02e89 -.word 0x941de5fe -.word 0x7b987407 -.word 0x91046c2e -.word 0x4e25e877 -.word 0x32a44f36 -.word 0xe9852e3f -.word 0x5deb7a1a -.word 0x1b16662f -.word 0xf9f725e4 -.word 0x82c32790 -.word 0xad03ac06 -.word 0x56d54875 -.word 0x261f0fa1 -.word 0x551a94c2 -.word 0xd55e2af4 -.word 0x461e18c0 -.word 0xe9882a88 -.word 0x4dedc5cc -.word 0xe5a024a9 -.word 0x2dd293d3 -.word 0x71946416 -.word 0x20fc627f -.word 0x260438ca -.word 0x85c44320 -.word 0x5d730233 -.word 0x899a60f1 -.word 0x376766f6 -.word 0x4f7a60dc -.word 0x52644bed -.word 0xe5f711d7 -.word 0x14b50a39 -.word 0x6a8ffde7 -.word 0xdabb9d40 -.word 0x9276f6c4 -.word 0x4175d1d2 -.word 0xff4a0e59 -.word 0x1bbe7afb -.word 0x230fb770 -.word 0x045a12af -.word 0x706c5e88 -.word 0xdbd59f6b -.word 0x484794c6 -.word 0x4919f00d -.word 0xcc52b6d8 -.word 0x13d9467c -.word 0x04716383 -.word 0xa9d9e46e -.word 0x169266b9 -.word 0x8700095e -.word 0x250e2677 -.word 0x9a0ad345 -.word 0xd9ef5611 -.word 0x73fa78c8 -.word 0x45f7fcaa -.word 0x9f92f88e -.word 0xb33dd95f -.word 0x0e91f42c -.word 0x3d681100 -.word 0x606d0d5a -.word 0x817ce012 -.word 0x460ad4c9 -.word 0xa8808b5f -.word 0x41651a65 -.word 0xe7a04b1b -.word 0x5a0b09a0 -.word 0x38b8cdd7 -.word 0x1414f7a5 -.word 0x2066fb39 -.word 0x372e5993 -.word 0xe1f78b03 -.word 0x6aa60b20 -.word 0x716a4a2d -.word 0xf5af6bb7 -.word 0xf7737051 -.word 0xc404f4ef -.word 0x3d7d7503 -.word 0x53cd8ff8 -.word 0x814e75b4 -.word 0x4213c450 -.word 0x58dadc81 -.word 0x366a0fd2 -.word 0x3dbda7f2 -.word 0xbfdd451a -.word 0x9a765873 -.word 0x720f2733 -.word 0x78bf58f5 -.word 0x9d0963d5 -.word 0xaf45e718 -.word 0x05d9e6b7 -.word 0xd7e67310 -.word 0x767050d6 -.word 0x578bd345 -.word 0xf562c4eb -.word 0xc1b33023 -.word 0x59b69cda -.word 0x064603a8 -.word 0x6fece031 -.word 0x70931bca -.word 0x5ff32473 -.word 0x19070d81 -.word 0x93a5a612 -.word 0x41351184 -.word 0xc30a5ffe -.word 0x874e5fc3 -.word 0x4af42f4e -.word 0xd378ed6a -.word 0x72993090 -.word 0x159b2730 -.word 0x47a5fce9 -.word 0x0d7c488b -.word 0x6dfa80c9 -.word 0xe8a32c28 -.word 0xf0bb2f60 -.word 0xa6e97c4b -.word 0x27817f5c -.word 0x3d5a022f -.word 0x3408cc32 -.word 0x5f6d9d22 -.word 0xa3606ce1 -.word 0x05b092d1 -.word 0x7d4cc873 -.word 0x6cf4b389 -.word 0xa949a553 -.word 0xd39579f7 -.word 0x65984c36 -.word 0x9a4e656c -.word 0x459ed28c -.word 0x74518177 -.word 0xa2912533 -.word 0x0d630ada -.word 0x83925b6e -.word 0x8090dac3 -.word 0x2efcf0d2 -.word 0x3faee5a5 -.word 0xd2fc85ea -.word 0x596df8e2 -.word 0x31464920 -.word 0x48dc92b0 -.word 0x856d09f9 -.word 0x6617b828 -.word 0x59df52fe -.word 0x52957bb6 -.word 0x37728f00 -.word 0x812a6b41 -.word 0x9993142f -.word 0x16ce440a -.word 0x97312875 -.word 0x4ec1bfda -.word 0xfa852eee -.word 0xf021b2e4 -.word 0x219919d2 -.word 0xb23dd604 -.word 0x586049ba -.word 0x1c798865 -.word 0xe029ce25 -.word 0xe8879bd4 -.word 0xc9667538 -.word 0xa2f9de93 -.word 0xfa5fa927 -.word 0x8e3fdf06 -.word 0xad08d5af -.word 0xa7176d9b -.word 0xdbf5765f -.word 0xdb22f370 -.word 0x4de4581d -.word 0x353534f5 -.word 0x8bbe360a -.word 0x96f7028a -.word 0x5a6b1734 -.word 0xdc55b059 -.word 0xd944994c -.word 0xafd2e0f3 -.word 0x8909bdb5 -.word 0xb2006218 -.word 0x31f85fec -.word 0xcec3a20c -.word 0x2092c349 -.word 0xe74b57dd -.word 0xa023b29d -.word 0x46fcaef7 -.word 0x30c373ed -.word 0x9989de2c -.word 0x76c2099c -.word 0xb257b9af -.word 0x190bd0e2 -.word 0xe0137761 -.word 0x6dd28a35 -.word 0x7096c10e -.word 0xbd107d1b -.word 0x9b372b11 -.word 0x71e6b16b -.word 0x4af13fdd -.word 0x774382ab -.word 0x08031ad7 -.word 0x41835d25 -.word 0xd3672a5d -.word 0x1ec1cde1 -.word 0x160307e1 -.word 0xd9203f89 -.word 0x5fb01cce -.word 0x87a6d68f -.word 0x96654f7d -.word 0xb7c67678 -.word 0x519467a0 -.word 0xc521ebdb -.word 0x0026db3b -.word 0xd8f25fe7 -.word 0x4f54dbf2 -.word 0xa0147e0f -.word 0x4dbcd17d -.word 0xbfd48ed2 -.word 0x60540fc7 -.word 0x9a331afa -.word 0x521c11ed -.word 0xd51d8a4c -.word 0xc6e5923a -.word 0x338010b4 -.word 0xc1a0c3d0 -.word 0xf1432af6 -.word 0x3cb658fb -.word 0x30c3d970 -.word 0xee5abf9a -.word 0xf682b1c7 -.word 0x2138da60 -.word 0xc689fd02 -.word 0xee178ad7 -.word 0x436facd7 -.word 0xc7d8daaf -.word 0x4c1d1f55 -.word 0xc9888d25 -.word 0x822779ba -.word 0x78f2c45d -.word 0x1fed56ed -.word 0xa7083d4c -.word 0xb34f33af -.word 0x4a6607c7 -.word 0x0b836a8f -.word 0x172def3c -.word 0x426c1662 -.word 0xff230968 -.word 0xbe6b790c -.word 0xe55fd121 -.word 0xbfecb84e -.word 0x22344e5a -.word 0x62cbd57e -.word 0xf33003f6 -.word 0xda011497 -.word 0xfdcce902 -.word 0xd1e48344 -.word 0xb5fed310 -.word 0xc364a2ef -.word 0xea3cf2d5 -.word 0x6de15ccb -.word 0x088b5a93 -.word 0x4ffda684 -.word 0x03665c13 -.word 0x45ce1b74 -.word 0x9703ebec -.word 0x4674371e -.word 0x3f82f536 -.word 0x183eae92 -.word 0x5bb320fc -.word 0x84193317 -.word 0x97482b1c -.word 0xf167e4dd -.word 0x1206692f -.word 0x4151e4f1 -.word 0x13ae766c -.word 0xee1e77b2 -.word 0xa1c63a2e -.word 0xa8129d23 -.word 0xd04c811f -.word 0x00a39449 -.word 0xe74334ab -.word 0x5515ddbc -.word 0xa0ee93aa -.word 0x6766ef13 -.word 0xbee56305 -.word 0x4d495e4c -.word 0x4711f4d3 -.word 0x3fef8d3b -.word 0xb987fe31 -.word 0x74bc0824 -.word 0x27c30770 -.word 0x5af7521a -.word 0x9166dce8 -.word 0x5f58487a -.word 0x97ae0743 -.word 0xd7ce8432 -.word 0xa3e1fdcc -.word 0xcd227187 -.word 0x4da914b7 -.word 0xde992499 -.word 0xf0d53a86 -.word 0x87a0bc45 -.word 0x05e4fd1e -.word 0x15ff9758 -.word 0xc1df1bb1 -.word 0xde0e84d8 -.word 0xb970e1f2 -.word 0x82051a2d -.word 0x8a4bcfb3 -.word 0x1d9c6c3e -.word 0x9932c942 -.word 0xfffd72b7 -.word 0x349f4e71 -.word 0x9c453950 -.word 0xd9c47fce -.word 0xa66bf413 -.word 0x59c2474c -.word 0x3cdc24d7 -.word 0xbb91291c -.word 0xed7157dd -.word 0xe0b3b8d3 -.word 0x66946b82 -.word 0xbea785bf -.word 0xcfb7416d -.word 0x6018ef66 -.word 0xc16cafa7 -.word 0x62ca766f -.word 0x3353e018 -.word 0x001b02eb -.word 0xb97cae2c -.word 0xc0a65e3b -.word 0x0af326f8 -.word 0x0fe0ba6a -.word 0x51977243 -.word 0x35546270 -.word 0xbb524def -.word 0x30a090e8 -.word 0x95be7e8a -.word 0x8d06fdcc -.word 0x594be78d -.word 0xdad0575f -.word 0x6ff82f55 -.word 0x8312465d -.word 0xaa8a2533 -.word 0x678a96bf -.word 0x2f9920ec -.word 0xf3f0d989 -.word 0xc0739db8 -.word 0x8ba5028d -.word 0x7efc89f6 -.word 0x9e0378bd -.word 0x4b8a6160 -.word 0x12a17aee -.word 0x8b870132 -.word 0xe662fa24 -.word 0x194e9323 -.word 0xfb2913bb -.word 0x5fa7f730 -.word 0xff951789 -.word 0xc4fc93d3 -.word 0x45ae8a1a -.word 0x368020b2 -.word 0xe36752c3 -.word 0xfac3eab0 -.word 0xce19779a -.word 0x959783d0 -.word 0x8b1804d8 -.word 0xc8433d1f -.word 0xd296bd10 -.word 0xd596aed4 -.word 0x49d73237 -.word 0xd3bfcf50 -.word 0xf41b70bc -.word 0x93109da1 -.word 0x0263d45c -.word 0x303d6e67 -.word 0xa6aa709e -.word 0x6cd0aaac -.word 0xeaf163b4 -.word 0xa445d3ee -.word 0xb30fc1b3 -.word 0x26c6036a -.word 0x865881e9 -.word 0xb5dc1aec -.word 0xeaab5da7 -.word 0xe6dbb806 -.word 0x438f7180 -.word 0x80739ead -.word 0xfa985b7a -.word 0x170f597a -.word 0x121b1f93 -.word 0x2e7eaeac -.word 0xbb41953a -.word 0x5338c1c7 -.word 0xb5257eda -.word 0xd3c901ad -.word 0xcef18b62 -.word 0x0a360608 -.word 0xb03f0c76 -.word 0xcc582ee8 -.word 0xb3e505d6 -.word 0xdd3081d4 -.word 0xd15377a2 -.word 0x9d1e740b -.word 0xddb0c0d3 -.word 0x8b6732fd -.word 0x1bb1a8a2 -.word 0x48faab33 -.word 0xeebe2ad8 -.word 0x561d8be7 -.word 0x78b0df3f -.word 0xdf83159d -.word 0xaf7619e4 -.word 0xca6c7b9d -.word 0x7860c149 -.word 0x82014fb8 -.word 0x13bccefb -.word 0x3316af41 -.word 0x288696e7 -.word 0x8986d233 -.word 0x86ba5ead -.word 0x127d085f -.word 0xa2842395 -.word 0x1a01d8a1 -.word 0x62c15e0e -.word 0x06c75da8 -.word 0x799a6707 -.word 0x2512f354 -.word 0xf0c116ff -.word 0x5cab49f5 -.word 0xd4464ebb -.word 0x71376cf5 -.word 0x53bf0e4e -.word 0xd70656b8 -.word 0x4652c9fa -.word 0x83d8207c -.word 0xa3aa79ac -.word 0xfe7879ad -.word 0xb4276ced -.word 0x0d26cb6c -.word 0x74b798f2 -.word 0xf3c2d184 -.word 0xdacd4352 -.word 0x5e70dcde -.word 0x20dfde80 -.word 0x44ece45a -.word 0xc1ce1a87 -.word 0x2e306742 -.word 0xe44fb83d -.word 0x43fe96ff -.word 0xb07cae25 -.word 0xb19a8f90 -.word 0x3e0555bf -.word 0x84cbde73 -.word 0xa0dd0854 -.word 0x44e7d6e4 -.word 0x8833ec95 -.word 0xa0a4b6a6 -.word 0xf518439b -.word 0x48b4d213 -.word 0x2c7ec35a -.word 0x81cfc4a1 -.word 0x98c49bca -.word 0x7cb5b81c -.word 0xe9b096b2 -.word 0x33a5980c -.word 0x82247941 -.word 0x78adaff8 -.word 0x32b81fa8 -.word 0x746822e2 -.word 0x73d8f120 -.word 0x6018b329 -.word 0xc5f3a82b -.word 0xfc8364f0 -.word 0xf81a3a51 -.word 0x37d71457 -.word 0x5f398384 -.word 0xf30d4388 -.word 0x154151b7 -.word 0x16ecf710 -.word 0x10980f26 -.word 0xf5bfe81d -.word 0x8166f9b3 -.word 0x6edfe7bd -.word 0x193077e6 -.word 0xe25658c8 -.word 0xfe328514 -.word 0xb01419a6 -.word 0xe98987fc -.word 0x9165bf05 -.word 0x4f9f3522 -.word 0x2dea9589 -.word 0x4dc53f9f -.word 0x26631fee -.word 0x5e51457e -.word 0x0c20b41f -.word 0x0a6d1506 -.word 0xe5b98f77 -.word 0xd91df13e -.word 0xd094b054 -.word 0x5a155132 -.word 0x7357ad2b -.word 0x8affb65b -.word 0xc98dbb74 -.word 0x4db6750c -.word 0x83288d01 -.word 0x8c9afc36 -.word 0xd74cdaa1 -.word 0x596d76d5 -.word 0x00d62b6c -.word 0x6767233a -.word 0xe2434f63 -.word 0x2cc44845 -.word 0xa0571705 -.word 0x21e66fab -.word 0x4566aae2 -.word 0x9fed55be -.word 0x1a45e5e5 -.word 0x744081e7 -.word 0x963763c0 -.word 0x635ab843 -.word 0xc18df15b -.word 0xd8a84962 -.word 0x4777ce06 -.word 0xc2c2eb80 -.word 0xc17493ee -.word 0x988efbb7 -.word 0x975db8aa -.word 0x91581cb3 -.word 0xbd61af82 -.word 0xb0d6b288 -.word 0x456189d5 -.word 0xa6667797 -.word 0xb601ea4f -.word 0x765a8759 -.word 0xe5630066 -.word 0x50827a1b -.word 0x8d2973c6 -.word 0x918e7766 -.word 0x9a7587ed -.word 0x2f1c31cd -.word 0xab1074b7 -.word 0x1dbb7310 -.word 0x8886ac91 -.word 0x737ac8aa -.word 0xb2006485 -.word 0xdb966b98 -.word 0xfc027028 -.word 0x3acb593e -.word 0xe8f6b71e -.word 0x78dc0f1e -.word 0x811cb3e6 -.word 0x0a7237b2 -.word 0xdc079f86 -.word 0x3a7d67ad -.word 0x470910ca -.word 0x4e2112e9 -.word 0x3be7bd21 -.word 0x49facc06 -.word 0x49c4f7d6 -.word 0x886b743a -.word 0x5c223870 -.word 0xc1a6d9d1 -.word 0xeec9e99d -.word 0xee8e75ae -.word 0x600f1011 -.word 0xaeca086a -.word 0xbb87a8a8 -.word 0xb98696af -.word 0x66326c75 -.word 0x3145de8b -.word 0xc203a877 -.word 0xa80088e5 -.word 0x59f28101 -.word 0xaaa1132a -.word 0x11329048 -.word 0xc8a040be -.word 0xe5fec46f -.word 0xf86bf07d -.word 0x1d378943 -.word 0xb0f39160 -.word 0xc81e4807 -.word 0x2429dd74 -.word 0x9c2cbfab -.word 0x3082de5b -.word 0x37dc44b7 -.word 0x07302514 -.word 0x47f3ac4a -.word 0xd978d4da -.word 0x962afd07 -.word 0xcc0c8881 -.word 0xf871978d -.word 0x26c81541 -.word 0xd8e88a3b -.word 0xe55c4e3b -.word 0xa62da10a -.word 0x5573c8eb -.word 0x2cf220d8 -.word 0x7069ff5e -.word 0x5f588690 -.word 0x42afdc96 -.word 0xaca207e7 -.word 0xa2993a86 -.word 0x42253f44 -.word 0x2c30055e -.word 0x7fc1246b -.word 0xb5fd9b32 -.word 0xaa5c2bd5 -.word 0xa41237ec -.word 0xe59e2e76 -.word 0xc1fa37ce -.word 0x71330395 -.word 0xbee93e0c -.word 0xaa2e61ec -.word 0x5752aadd -.word 0x2ad31a21 -.word 0x609f72ef -.word 0xb7d1063c -.word 0xc031875d -.word 0x4dd4340c -.word 0x8aa3c9d6 -.word 0x1328f945 -.word 0x9916de5e -.word 0x72f16118 -.word 0xc490f637 -.word 0xdc679912 -.word 0x0d75315f -.word 0xf7133f83 -.word 0x2bee9c58 -.word 0xf6c1bf40 -.word 0xfc3dc80a -.word 0x38cea024 -.word 0x4aaa13b8 -.word 0x252f9be9 -.word 0xe90d4846 -.word 0xc1b3a613 -.word 0xf75a356a -.word 0xce90e634 -.word 0x5c183d39 -.word 0xc627d89f -.word 0x5b32ea42 -.word 0x545b4a45 -.word 0x6d096d3a -.word 0xb33fc81b -.word 0x50fdb177 -.word 0x8f683d7b -.word 0x914b5c89 -.word 0xcb62ad21 -.word 0x785a5a3f -.word 0x6ba5b7da -.word 0x8e33f7d3 -.word 0x75f90349 -.word 0xbb44275c -.word 0x1b7cf05c -.word 0x2d81371e -.word 0x09d5a3f7 -.word 0x69bcdf7f -.word 0xd93f5006 -.word 0x99870110 -.word 0xa2e3ec5c -.word 0xef7e4d0d -.word 0xd24a19b8 -.word 0x4b03e164 -.word 0x38def104 -.word 0x899e4ef7 -.word 0x3aad98ff -.word 0x98a42aeb -.word 0x1449b6f4 -.word 0x640d684d -.word 0xb8d0df3f -.word 0x4141a61c -.word 0x26337f98 -.word 0xbf9e3451 -.word 0x318cdc21 -.word 0xe6c0c854 -.word 0x9cf269e9 -.word 0xe38dd4b0 -.word 0x88453664 -.word 0x7d2d2d52 -.word 0x4203da99 -.word 0x0eded97b -.word 0xf413d012 -.word 0x380d44a4 -.word 0x14c227bd -.word 0xeeb8858e -.word 0x8976ad41 -.word 0x94c51bdb -.word 0xeb432cd7 -.word 0xbb6903ea -.word 0x425a5c55 -.word 0x487d5fa4 -.word 0xa807200a -.word 0xae342721 -.word 0x39aa46a4 -.word 0x3fed3ad0 -.word 0x824ddb8e -.word 0x0f3980b1 -.word 0xcdfb363d -.word 0xa85ad740 -.word 0x26a4a7cb -.word 0x94627716 -.word 0x9799234f -.word 0x16c68997 -.word 0x6e07d016 -.word 0xcabb7da3 -.word 0x74799774 -.word 0xba1cfae8 -.word 0x3bc7df08 -.word 0xff8cde97 -.word 0xab15d5e7 -.word 0x8eee85c3 -.word 0x02d597a5 -.word 0x5b176d02 -.word 0x008828aa -.word 0x7063ff83 -.word 0x2d532644 -.word 0x3e92c4fe -.word 0x4e45cbdc -.word 0x24fee3ac -.word 0x488f77b2 -.word 0x80f87ec6 -.word 0x2262b132 -.word 0x8f776706 -.word 0xf2fa3e77 -.word 0xb8a12142 -.word 0xf4433bdb -.word 0x1bd5fd4d -.word 0xa92d2e37 -.word 0x3dad2431 -.word 0xef52a343 -.word 0x7eef38a5 -.word 0xb8db8788 -.word 0xc6af1c4f -.word 0x21ef9038 -.word 0x19baabd1 -.word 0xcf866540 -.word 0xd1aa1a8a -.word 0x6f1de621 -.word 0x064c97d2 -.word 0x0633c761 -.word 0xcd102a96 -.word 0xb1f6da68 -.word 0x5fa57041 -.word 0xad7b83e8 -.word 0xced30f5d -.word 0x01d44713 -.word 0xbedc9ac4 -.word 0xfa61a9e0 -.word 0xde82f0f0 -.word 0xe25379d9 -.word 0x70a1eedd -.word 0x9b458fd3 -.word 0x1d35537b -.word 0xcae3bd48 -.word 0xa8f03ad6 -.word 0x67b9f1f5 -.word 0x0caf6679 -.word 0x2ddd7f56 -.word 0x66d6c054 -.word 0xebbcb3e3 -.word 0x78b65ed0 -.word 0xdda41002 -.word 0x2fed9a57 -.word 0x40d5ca28 -.word 0x3c88fc55 -.word 0x4998377f -.word 0xcb8fc1ef -.word 0x5e5d9673 -.word 0x51edd759 -.word 0xae64b7b6 -.word 0x72565652 -.word 0xe0f8ac78 -.word 0xb21d5372 -.word 0xd50a3641 -.word 0x6d66432f -.word 0x65100af3 -.word 0x73c44a70 -.word 0xfcd69254 -.word 0xf1ad665f -.word 0x91397d5b -.word 0x7e55aa8a -.word 0x127edf95 -.word 0xdb9fecac -.word 0x9c28d3e4 -.word 0x697a1886 -.word 0x2ae7a75e -.word 0x788365fe -.word 0xb56c9199 -.word 0x44c9c272 -.word 0x43ef88ee -.word 0x82e6c2ac -.word 0x7ef697ee -.word 0x01ca5a40 -.word 0x10140f46 -.word 0x5fc91532 -.word 0xb58ecd94 -.word 0x61bd6705 -.word 0x040dd6b1 -.word 0x3e548245 -.word 0x31f817b4 -.word 0xc3a69584 -.word 0x3a525e19 -.word 0xfb214d3c -.word 0x49dea993 -.word 0x2e1df8bb -.word 0x04db3d7b -.word 0x7dcfef16 -.word 0x8406c5fc -.word 0xc7f43a08 -.word 0xab309064 -.word 0x8afca95d -.word 0x0d93b97c -.word 0xed5cb8b1 -.word 0x3f761b33 -.word 0x3c0ac425 -.word 0x2c6f6c34 -.word 0x967e9b7b -.word 0xa7a7bfe0 -.word 0x50d873f0 -.word 0x41cd18ba -.word 0x02ce9a7e -.word 0x980480f7 -.word 0xb63301c3 -.word 0x1ea746e9 -.word 0x3db16c2d -.word 0xc06a0c10 -.word 0xb5c78caa -.word 0x23018468 -.word 0xfce99c11 -.word 0xb77624cf -.word 0xb72dfede -.word 0x522b8ecc -.word 0xf76d8b55 -.word 0x71197a44 -.word 0xa30746e7 -.word 0xfb8b986e -.word 0xd5b321e1 -.word 0x2d026522 -.word 0x214a0f8f -.word 0x3598b815 -.word 0x1e97ff70 -.word 0xe2a0d504 -.word 0x8afb3c0e -.word 0x79ef62a3 -.word 0x5e6e5f37 -.word 0x7f270ce1 -.word 0x6fe42ee2 -.word 0xb9afaf86 -.word 0x6a66f961 -.word 0xddee4066 -.word 0xd8916aae -.word 0xde3e1e2c -.word 0xbff66f56 -.word 0x2c219bc2 -.word 0x6be8f04d -.word 0xd72b4d23 -.word 0x5b3bb953 -.word 0x928832ab -.word 0x3619ae31 -.word 0xd31e14ab -.word 0x55665090 -.word 0x5c97096e -.word 0xd13eb9db -.word 0x16cec817 -.word 0x01bbdca5 -.word 0x6cb9a025 -.word 0x71e2ed4e -.word 0x1cdc1555 -.word 0x64735f25 -.word 0xc4ebde8c -.word 0xe2240572 -.word 0xec10731c -.word 0xcb7e5edc -.word 0x12f4762e -.word 0x5d97af9d -.word 0x72b71769 -.word 0x073329e9 -.word 0xc7d74551 -.word 0x473fb75c -.word 0xc7abd0b8 -.word 0xacf5af49 -.word 0x444ddd4e -.word 0x5795fe43 -.word 0x732eceff -.word 0x31ea5c8e -.word 0x02f4fe43 -.word 0x6bf1454b -.word 0x3a5ccaf0 -.word 0x412aec00 -.word 0xc977fc49 -.word 0xbe13afc7 -.word 0x6930a29c -.word 0x0658840a -.word 0xc375abcf -.word 0x435fdaba -.word 0x19b52e54 -.word 0xc0a66852 -.word 0xe7cadea7 -.word 0x4185b8dc -.word 0x8b85a429 -.word 0xe33b1001 -.word 0x850cb344 -.word 0x59512756 -.word 0x27f5bc2b -.word 0x07133e49 -.word 0xe44bbe16 -.word 0xcfccc446 -.word 0x2e81953f -.word 0xa53edaa0 -.word 0x313a7321 -.word 0xbf45adf3 -.word 0x605ecaf6 -.word 0xb23766c2 -.word 0x88cf9c55 -.word 0x1513172a -.word 0x91baa214 -.word 0xa778f3c4 -.word 0x0bda539b -.word 0x09633cea -.word 0x45157fd6 -.word 0xb8ccfbf5 -.word 0xfa2086f0 -.word 0x7264e043 -.word 0xdbe5a167 -.word 0xb5e1cc55 -.word 0x45e3124f -.word 0x7226c106 -.word 0xd85e3a8a -.word 0x7b89ba16 -.word 0x8195501d -.word 0xb8c9a687 -.word 0x25edbe2c -.word 0x75beccf5 -.word 0x8525d883 -.word 0x914de97b -.word 0xb14c073b -.word 0x45652bfa -.word 0x794f30bc -.word 0x75eb31af -.word 0x1a73a6a4 -.word 0xc96dc8dc -.word 0xf593dd38 -.word 0x8f4e1a52 -.word 0x6923abcf -.word 0x5e90dcfe -.word 0x740ad2b3 -.word 0x5ec9f9eb -.word 0x45862413 -.word 0xf2cd23c8 -.word 0x5dc69c66 -.word 0x3688e126 -.word 0xa8afe84f -.word 0x015ce4b6 -.word 0x5a72f59f -.word 0x8f8fa330 -.word 0xd1bb2626 -.word 0x4d90d37f -.word 0x0d58be87 -.word 0xf7b85be2 -.word 0x02f493a2 -.word 0x6b1aceab -.word 0x82ecbab9 -.word 0xfcc45797 -.word 0x5b32f413 -.word 0x3de729e9 -.word 0x48f8042e -.word 0x600d85d8 -.word 0x2534a9ba -.word 0xe64bd126 -.word 0x8369aa59 -.word 0xbbf5ac13 -.word 0x46cb701a -.word 0xaa9e44e1 -.word 0xe99819f5 -.word 0x3b040bce -.word 0xf4b26954 -.word 0x48eedba1 -.word 0xb7bc6376 -.word 0xf11ea9ef -.word 0x76bac0ea -.word 0xee6a9a22 -.word 0x653e4392 -.word 0x6fe0d4d2 -.word 0xeca7ba97 -.word 0x9a2e1446 -.word 0x0d9b0e8e -.word 0x2656fa2f -.word 0x88f3a910 -.word 0x56f75b55 -.word 0x0ec04146 -.word 0xd07f2152 -.word 0x537c1e04 -.word 0xe76b60f9 -.word 0x5dc43819 -.word 0x2ef9e0f8 -.word 0x6c631e1d -.word 0xd39550e8 -.word 0xe792ddc1 -.word 0x900abd93 -.word 0x406f7706 -.word 0x8718d8e8 -.word 0x432a526d -.word 0x5c78fa24 -.word 0x01df78c7 -.word 0x04b56dd7 -.word 0xeebc48ad -.word 0xc46af1ba -.word 0x3e683605 -.word 0x9d961c18 -.word 0x0a74c290 -.word 0xd4177a27 -.word 0x9ce23ebe -.word 0xb861db45 -.word 0x6e0226a8 -.word 0x6f44193a -.word 0xd0dbdcf2 -.word 0x516f20df -.word 0x13d56be0 -.word 0x1d7e8de7 -.word 0xead2dbd8 -.word 0x471c8cc8 -.word 0x104f5419 -.word 0x90c55a50 -.word 0x2127a4a2 -.word 0x6d3338b1 -.word 0xc60438e7 -.word 0x3bc917ab -.word 0x6bfcc042 -.word 0xee99e280 -.word 0xde82f423 -.word 0xde5a3568 -.word 0x0961f9a2 -.word 0xf9076830 -.word 0x8f746f75 -.word 0x2667ff3a -.word 0xfc5b75c9 -.word 0x1f79e3ad -.word 0xfc225bf0 -.word 0x07e7ec8b -.word 0x14037ad1 -.word 0x790e2363 -.word 0x9bd31031 -.word 0x95d9291a -.word 0xd136545a -.word 0x1bb65f4a -.word 0xb9bd9180 -.word 0x5222e9fa -.word 0xf45e6236 -.word 0xa035c324 -.word 0xb0a74b4b -.word 0x21e07786 -.word 0xea01dddb -.word 0x4a1de2e9 -.word 0x3564b156 -.word 0x6ba79f0a -.word 0xc82d03cb -.word 0x529d0570 -.word 0x7890e2f9 -.word 0x9ab7f156 -.word 0x3f4075de -.word 0x1e5a2565 -.word 0x680ab036 -.word 0xb67675a3 -.word 0xad9ec8fe -.word 0x364ccfec -.word 0xa854fe35 -.word 0xd6137fa1 -.word 0xb415a179 -.word 0x2ed940a6 -.word 0x0ad7d687 -.word 0xfc56013c -.word 0xb5a450f9 -.word 0x45fc7a36 -.word 0xbdd12304 -.word 0x948bc384 -.word 0xa14bdc06 -.word 0x5be391ad -.word 0xab0f3d64 -.word 0x61e40cae -.word 0x6260715d -.word 0x530b35f5 -.word 0xbc91c3ff -.word 0xdc38f07e -.word 0x4aa0ce3f -.word 0x1320b12e -.word 0x40909ddd -.word 0xc188b755 -.word 0x5b25f5ba -.word 0x02b53778 -.word 0xd7f2e385 -.word 0x6f2ead79 -.word 0x1145d1de -.word 0xbf49ce54 -.word 0x81fcff43 -.word 0xd9000056 -.word 0xd5b7d996 -.word 0xd2da8fe4 -.word 0xe1d30a09 -.word 0x62530c0b -.word 0xcf1539dd -.word 0x7ebd73e0 -.word 0xa6e1103c -.word 0x37957b9a -.word 0xa012191b -.word 0x12e25101 -.word 0xdc4f3181 -.word 0x2daa0261 -.word 0x91c37e55 -.word 0xd796638a -.word 0xd3c532e5 -.word 0xdb013de3 -.word 0x6ce76b32 -.word 0x11feca1a -.word 0xfc38fd7c -.word 0x4e272630 -.word 0xdd540f97 -.word 0x68ebc852 -.word 0x70eb9e90 -.word 0x8ab3af6a -.word 0x8ba1ed01 -.word 0xc7a4502f -.word 0x965c1c2a -.word 0x2adcc180 -.word 0x883d6ba1 -.word 0x182196e9 -.word 0xda976c6e -.word 0x2d0a7725 -.word 0x5d48f05b -.word 0x972089f9 -.word 0x57850449 -.word 0xe4febbb8 -.word 0xcae98245 -.word 0x552bd711 -.word 0x6dd1eccb -.word 0xbcf2a0c4 -.word 0x82c41b50 -.word 0xa2e3db05 -.word 0x5626d595 -.word 0x91bbd95f -.word 0x979c3e9f -.word 0xe650bf01 -.word 0x59f5b9cf -.word 0xcceaa860 -.word 0x36caf015 -.word 0x4a5ca96d -.word 0x3b6e6f8e -.word 0xedc7f466 -.word 0x186bbcdb -.word 0x49a05830 -.word 0x77ed4104 -.word 0xb5d04777 -.word 0xa95589fe -.word 0x1f203e19 -.word 0x63f7ac80 -.word 0xb857df42 -.word 0x24a036cd -.word 0x1f39c9ee -.word 0xd2e7c043 -.word 0x0015e1db -.word 0x145e0c2a -.word 0x300bb582 -.word 0xd5c92d8a -.word 0x5932cd8c -.word 0x6defad6d -.word 0x8a731543 -.word 0xe42409c4 -.word 0x0a5f555b -.word 0x31810e5f -.word 0x66e7a557 -.word 0xa45f50a9 -.word 0x220caaf5 -.word 0x6f609329 -.word 0x919f8b85 -.word 0x10a0a387 -.word 0x54ed92c6 -.word 0x0f92cb20 -.word 0xe9278c27 -.word 0x02d9777b -.word 0x28cad2c8 -.word 0x9d0394ad -.word 0x3ae3ccca -.word 0x931d0b5a -.word 0x575d663b -.word 0xfd90275e -.word 0x9186dcc4 -.word 0x5a6109e9 -.word 0x2e32ba61 -.word 0x7b210e4d -.word 0xc5fa26db -.word 0xb74a4d8c -.word 0xb49135b0 -.word 0x8428e722 -.word 0xef44708a -.word 0x66503d6a -.word 0x8c06a6c3 -.word 0xf4947c1d -.word 0xca3b9fe4 -.word 0x7946d2da -.word 0xcb9de016 -.word 0xc563c082 -.word 0x4b2bd4c1 -.word 0x6661795d -.word 0xc1da07aa -.word 0x5fb96af2 -.word 0x59c20bc9 -.word 0x897600ee -.word 0x137feaef -.word 0x42efdd54 -.word 0xfc9e3a29 -.word 0x3fad1e9a -.word 0xce855e59 -.word 0x017c9c78 -.word 0x4eb1e4f9 -.word 0x83f968f2 -.word 0x501f6db5 -.word 0xf18760d2 -.word 0xf53e93a5 -.word 0x4c30d426 -.word 0x2325faf4 -.word 0xeb9bda0c -.word 0xcb7699f1 -.word 0x84d97f13 -.word 0x0f04f7e8 -.word 0x027fcc7c -.word 0xb04e1bd7 -.word 0xaf632c1d -.word 0x774effb9 -.word 0x554db98c -.word 0x469b4996 -.word 0x5f018e8d -.word 0x6b122f93 -.word 0x9cbc9a3b -.word 0x6a0c22ce -.word 0x56878c2d -.word 0x39942ac3 -.word 0xa920831c -.word 0xefcc3f4d -.word 0x2f21aa31 -.word 0xc5a3efce -.word 0xa56f50f1 -.word 0x3b50b5ba -.word 0x22b36911 -.word 0xd61143e7 -.word 0x260384ef -.word 0x1e6695fa -.word 0x1722250f -.word 0xd07b8a38 -.word 0x60f16c32 -.word 0x004bb410 -.word 0x47e07775 -.word 0x84d91907 -.word 0x798e0c75 -.word 0x25b6ad3f -.word 0xd9395c5e -.word 0xb237932e -.word 0x46095cbd -.word 0x518ffee5 -.word 0x413d0c24 -.word 0x057f8b78 -.word 0x9c1d263e -.word 0x4627a968 -.word 0xa9308204 -.word 0xd6835348 -.word 0x5209d51b -.word 0x492df53d -.word 0x5d8be599 -.word 0x79c8d728 -.word 0x0c01d8c6 -.word 0x63c17ee9 -.word 0x50135cbf -.word 0x1c6ece44 -.word 0xd5792893 -.word 0xb23963d0 -.word 0x7cf898db -.word 0x12c69f1f -.word 0xba3c5f3a -.word 0x6128c08c -.word 0xe1b5def0 -.word 0xa59de8d4 -.word 0x3d6241e4 -.word 0xc084d6a7 -.word 0x97776572 -.word 0x5ab9c207 -.word 0xcb99ff8c -.word 0x546d629b -.word 0x24c2fad5 -.word 0x0b1e8709 -.word 0x9cff4bb8 -.word 0x46069f26 -.word 0x286a08dc -.word 0x0c3994a0 -.word 0xc5fe23da -.word 0x4776761b -.word 0xdbe2526b -.word 0xe4ab3e8b -.word 0xd171343a -.word 0x3967f927 -.word 0xf17366d9 -.word 0x9f7c0743 -.word 0xd8b9255d -.word 0xe871a415 -.word 0x51712b2a -.word 0x600d042e -.word 0xe5969ffc -.word 0x4a502a04 -.word 0x19678cab -.word 0x09bf2f9c -.word 0x8e61ac01 -.word 0x4e97913c -.word 0xf248bbea -.word 0x02add50e -.word 0x65d5be09 -.word 0xb63faaac -.word 0x9b7bbe32 -.word 0xd54d5487 -.word 0xa665df77 -.word 0xdf5aa6cd -.word 0xf7c91075 -.word 0xdcb747a8 -.word 0x9a4826d8 -.word 0x66111287 -.word 0x87cc2434 -.word 0x38594952 -.word 0x4133f336 -.word 0x84fc5e54 -.word 0x70307cca -.word 0x63547778 -.word 0x15cf2da7 -.word 0xfb236953 -.word 0x55048260 -.word 0x7adf421b -.word 0x5943e274 -.word 0x8e38966b -.word 0xc7bc4b88 -.word 0xf0285588 -.word 0x9a6e75c9 -.word 0xf0077ea2 -.word 0x5dda71e2 -.word 0x79173dde -.word 0x5684a5a6 -.word 0xf72bd16c -.word 0x20ee9dc3 -.word 0x39986372 -.word 0xc492a08f -.word 0x3d0421aa -.word 0x10c34f8c -.word 0x5e57ce9e -.word 0x76db69d6 -.word 0x7468b356 -.word 0x3b9fa1d1 -.word 0x590808a1 -.word 0x49909d32 -.word 0x2ce1b972 -.word 0x81c55a63 -.word 0x3a594c4b -.word 0x31252587 -.word 0xede38152 -.word 0xe2f1c500 -.word 0x613ae4e6 -.word 0x878dfd58 -.word 0x18e61639 -.word 0x04e4e873 -.word 0x8360bee8 -.word 0xf1ee8427 -.word 0x141938b7 -.word 0x7472747b -.word 0xcb169961 -.word 0x02b312e4 -.word 0x9629d8d9 -.word 0x430beb4a -.word 0xc1122a05 -.word 0xd2acf11a -.word 0xe203072d -.word 0xc7e14fec -.word 0x16564dca -.word 0xa8403458 -.word 0x8f3c5178 -.word 0x4d19e5a6 -.word 0x33714f86 -.word 0x78eea672 -.word 0x6c1f7e3a -.word 0x682ad397 -.word 0xf3fff62d -.word 0x3b0290fc -.word 0xdb170762 -.word 0x252999b6 -.word 0xb09f06da -.word 0x71739481 -.word 0x64e19345 -.word 0x7a3c234b -.word 0x22149363 -.word 0x385c1d74 -.word 0x696f18c4 -.word 0x3130d3ca -.word 0xd8640642 -.word 0xb0dcd7f4 -.word 0xa11908eb -.word 0xb1f180d6 -.word 0x299fc547 -.word 0x02a9edb7 -.word 0x145d5328 -.word 0xe23c7c93 -.word 0x7cd1839a -.word 0xf937e65b -.word 0x52f280fc -.word 0x629963b4 -.word 0xa619a76f -.word 0xd8d3b971 -.word 0x6d76de9e -.word 0x7bb926aa -.word 0x5b0936bb -.word 0x3cfa0366 -.word 0xe7f7c29c -.word 0xe7a5eb63 -.word 0x6fbb32b2 -.word 0x239bdd94 -.word 0xdedb9b8f -.word 0x76dc0689 -.word 0xbf4345be -.word 0x6ab79958 -.word 0x149a0349 -.word 0xbef69f69 -.word 0x1b1ac226 -.word 0xeff2fdc9 -.word 0x2b57472f -.word 0x5796ce8a -.word 0x00e61c31 -.word 0x383b2195 -.word 0xa6649005 -.word 0x17830c0c -.word 0x1d1b8dc4 -.word 0x0f835f8b -.word 0x03785988 -.word 0x83d3f5d5 -.word 0x39ba7973 -.word 0xc0b197dd -.word 0xadb5687b -.word 0x8145e7a0 -.word 0xed9cb022 -.word 0xf8517d1c -.word 0x4eb93f29 -.word 0xc655d1d2 -.word 0xb1a1ab1a -.word 0x2fe0ce06 -.word 0xc8d4d00d -.word 0x090bf84f -.word 0xac564274 -.word 0xe7d54914 -.word 0xa6b2750b -.word 0xb2886840 -.word 0xa8b20868 -.word 0x6928113a -.word 0x1c568392 -.word 0x60bd4302 -.word 0x4fb2cdc8 -.word 0xcff74767 -.word 0xe12b7898 -.word 0xf82547be -.word 0x5536d793 -.word 0xe4d5077d -.word 0xe733f76b -.word 0x053be504 -.word 0x8c14ea98 -.word 0x186cb10b -.word 0x146b88cf -.word 0x7164457b -.word 0xb49ac515 -.word 0x2ddae01c -.word 0x524abe7f -.word 0x7bd4b1a9 -.word 0x8b6659a4 -.word 0x1f99bb3f -.word 0x2c5f6ffb -.word 0x03783f83 -.word 0x5251fcaa -.word 0xfce2191c -.word 0x2fa646ea -.word 0xc14c3d6d -.word 0xa5fa264e -.word 0xdc2b3aa8 -.word 0xcdbd453e -.word 0x0fd5d91f -.word 0x546948ef -.word 0xd5658db9 -.word 0xa559e945 -.word 0xdae64535 -.word 0x083e2abe -.word 0xd6c136fc -.word 0x655b5de5 -.word 0xc9ab6761 -.word 0x9540edee -.word 0x5b11a20d -.word 0x86902519 -.word 0x0689891e -.word 0xef7ebfbe -.word 0xdfba5232 -.word 0xa6156553 -.word 0xa59f96c8 -.word 0xbc74feba -.word 0x707d03af -.word 0x3e339742 -.word 0xa6210dfe -.word 0xfbde7703 -.word 0xde41c3e1 -.word 0xcc4a6787 -.word 0x2a2731ca -.word 0x4fbbbd87 -.word 0x47d22cd4 -.word 0x907841ec -.word 0xe6993bdf -.word 0x9eeb412c -.word 0x958b771d -.word 0x6d5901fb -.word 0x2d072012 -.word 0x43d81dd6 -.word 0xfb77845f -.word 0xe86f0b5f -.word 0xa6ed9556 -.word 0xafca3eff -.word 0x39cdead7 -.word 0x05e94b4d -.word 0x064ae082 -.word 0x0490af55 -.word 0x34012709 -.word 0xfb2ad688 -.word 0x93c3d0d4 -.word 0x3862ff8b -.word 0x1767152f -.word 0x046b5f81 -.word 0x036339ca -.word 0x22acd157 -.word 0x56159e5c -.word 0x27e5043d -.word 0x3a85c2f1 -.word 0xa00a0aec -.word 0x20de40c4 -.word 0x22c93516 -.word 0xc5ad3993 -.word 0x47d50ec8 -.word 0xa10b4131 -.word 0x48f1c8f7 -.word 0xb262c0d7 -.word 0x028c3aa6 -.word 0x45372ce6 -.word 0xdd4034eb -.word 0x4aea4860 -.word 0xa2f51957 -.word 0x3609e539 -.word 0x1b59d924 -.word 0x6ca7eb16 -.word 0x7531bd2e -.word 0x08fb011f -.word 0x8733df20 -.word 0x6c5714a7 -.word 0x5bee0581 -.word 0xc2280705 -.word 0xe3665e0a -.word 0x685820b9 -.word 0x4dfa6c8a -.word 0xc5465e7f -.word 0xc22d4ffc -.word 0x83190fc8 -.word 0x9d2512b2 -.word 0x576d6bf0 -.word 0xb98aa6b4 -.word 0x94080450 -.word 0xdbe22537 -.word 0x4cd8c0e2 -.word 0x11126344 -.word 0xdd9ab6ba -.word 0x95fba04a -.word 0xcd3b1b75 -.word 0xbf1647ba -.word 0xc57b0627 -.word 0x5c5312f9 -.word 0xdd5defbc -.word 0x9df4a5e2 -.word 0x6840f1a7 -.word 0x2af69aa4 -.word 0x186e1e89 -.word 0x3af64fb7 -.word 0x51f7cf29 -.word 0x54ae8e47 -.word 0x9edca61b -.word 0xf5bce8c7 -.word 0x9042d6f7 -.word 0xaa1b0cba -.word 0x02a95b12 -.word 0xb22fcce1 -.word 0x88c955f4 -.word 0xc712fb5f -.word 0x5979d0f1 -.word 0xa4d9a2d8 -.word 0x82f7f06c -.word 0xc807ee63 -.word 0x6f24a800 -.word 0xd3311e47 -.word 0xde742f84 -.word 0x877ffde2 -.word 0x8069f428 -.word 0xb4b25857 -.word 0x84e8cd26 -.word 0xf858806e -.word 0xef21af81 -.word 0x7f63a45b -.word 0xb00b4457 -.word 0x1b145fda -.word 0xe780524b -.word 0x9e6f62f1 -.word 0x06a1bb04 -.word 0x029ea69b -.word 0xd870cced -.word 0xc8182716 -.word 0x9e070902 -.word 0x67998a67 -.word 0x3e42dc3a -.word 0x7bd1e464 -.word 0xe83e4c70 -.word 0xa15aee0f -.word 0x0b4bc18f -.word 0x34e82639 -.word 0x15b6c99e -.word 0xdd81574d -.word 0xd8c8a565 -.word 0xed05deb6 -.word 0x6e313abe -.word 0x50e7e72d -.word 0x0faa963b -.word 0x4146441d -.word 0x58123987 -.word 0x6398cca1 -.word 0x56d814c1 -.word 0xba64fc66 -.word 0xdbc4feaf -.word 0x610fc415 -.word 0xd13a98ad -.word 0x4acb70c9 -.word 0x4423e90a -.word 0xcbf706b4 -.word 0x16dc31fc -.word 0x134719db -.word 0xfe1aac8e -.word 0x789c6474 -.word 0x68d40ba3 -.word 0xc59d71fc -.word 0xe3fe15d1 -.word 0x5ee9e6ac -.word 0xce55aa7c -.word 0x2106aeba -.word 0xe3786f3b -.word 0x69efe64d -.word 0x62b0e327 -.word 0x03dffc0c -.word 0x118f801a -.word 0x640c45dd -.word 0x1d6b708e -.word 0xa91d26f9 -.word 0xff231fab -.word 0x49fc0ac6 -.word 0xc0da0402 -.word 0x95a33290 -.word 0x9e5ebf82 -.word 0xc6f2dfed -.word 0x7c0e0429 -.word 0xd428e5a1 -.word 0x28b78fef -.word 0xae9531a7 -.word 0x876b592f -.word 0x32a6c209 -.word 0x3a9521fc -.word 0xf2a8a306 -.word 0xa2f2a9bb -.word 0x7f36684c -.word 0x803f4f73 -.word 0xd9517f73 -.word 0xa2150832 -.word 0x38cab3e9 -.word 0xf0377295 -.word 0xd967652c -.word 0xc7e9f32d -.word 0xb5a412b9 -.word 0xac3f0f60 -.word 0x52d77232 -.word 0xfa30a3a5 -.word 0xb660be8d -.word 0x29f288e0 -.word 0xcf55200f -.word 0x6d57ebda -.word 0x0f955e18 -.word 0xe1e9b71e -.word 0x39bd96d0 -.word 0x6bca51bd -.word 0x1836a917 -.word 0x85aa9f03 -.word 0x89ca1471 -.word 0xd2648b31 -.word 0xf41c040b -.word 0xe2b3fb49 -.word 0xab4cf3e4 -.word 0x66af1cb9 -.word 0xf04cdc57 -.word 0x3a7a2385 -.word 0x50ea709d -.word 0x90932fe2 -.word 0x5e2b2c0b -.word 0x915159b4 -.word 0x1de8726a -.word 0x3ebc1a38 -.word 0x0547f9df -.word 0x6e13aa36 -.word 0x3d759a34 -.word 0xd0beefa7 -.word 0x4172cfb3 -.word 0x311245e2 -.word 0xb78859de -.word 0x31adbf21 -.word 0xd6bbd565 -.word 0x87a7fc0a -.word 0x24c687c3 -.word 0xb3754932 -.word 0xff4c2c8c -.word 0x4ec044b6 -.word 0x8e1e84e8 -.word 0x8bd5f505 -.word 0xf34c82ae -.word 0xfccdbc8c -.word 0x0fb8cade -.word 0x61c39a5b -.word 0xceb7d8fe -.word 0x6b2c9fdb -.word 0x82701bbc -.word 0x90f7736b -.word 0x0319a0e5 -.word 0x09bd6fee -.word 0xe5a783a5 -.word 0x655c597e -.word 0x71afe307 -.word 0x8f040588 -.word 0xc06034b2 -.word 0xe45b815e -.word 0x1563d770 -.word 0xa1ba1363 -.word 0x00ee1290 -.word 0x8ba4dfa9 -.word 0xd0e0dc52 -.word 0x7a70228d -.word 0x5e642fd1 -.word 0xdb14d9e8 -.word 0xb1611576 -.word 0xea345106 -.word 0x8a9ceb9c -.word 0x4f0e4a72 -.word 0xb1668a6a -.word 0x7cdc1945 -.word 0x004a261d -.word 0x21257f95 -.word 0xf57f762f -.word 0xa53c063a -.word 0x086a8b87 -.word 0xc0905652 -.word 0xc1bf00a2 -.word 0x0c175306 -.word 0xfd462501 -.word 0x2c82943b -.word 0x81cf0354 -.word 0xb63558f7 -.word 0x7d070a75 -.word 0x591d604c -.word 0x7a46bfff -.word 0xa17d609e -.word 0xf3d3aec4 -.word 0xe17b7d20 -.word 0xfd3ee6d6 -.word 0xce118fbe -.word 0x7a2e471e -.word 0x5ad88aad -.word 0xe8f7326c -.word 0xebf1b3ae -.word 0x4d239e83 -.word 0xc927b1b1 -.word 0x5931be0e -.word 0x0e267fe2 -.word 0x78f3f12d -.word 0xe61deae7 -.word 0x88b00452 -.word 0xd0877f2c -.word 0xd771ac8d -.word 0xcc1c8d10 -.word 0x4c58245f -.word 0xe9295b55 -.word 0x15bcae8a -.word 0x81484595 -.word 0x155c2e1b -.word 0x620df81c -.word 0xe2dc0a7f -.word 0xd01a7767 -.word 0xfe1d00c6 -.word 0x8f86916e -.word 0x852de18f -.word 0x2a4380ea -.word 0x7c2e7b07 -.word 0xe8265db6 -.word 0x570ba3fb -.word 0xdaad0786 -.word 0x4dc6e580 -.word 0xcd39bfb1 -.word 0x30e08859 -.word 0xf6aa5b4b -.word 0x1e0840c8 -.word 0x149df113 -.word 0x92b93451 -.word 0xc6f6e1e6 -.word 0xb5fc1e7e -.word 0x67d36cae -.word 0xb6cf9c5d -.word 0x34342564 -.word 0x53e632d3 -.word 0x49e87ab0 -.word 0x39eb0fc1 -.word 0x0aeb2ebc -.word 0x36a97a28 -.word 0x8aae87d5 -.word 0x9b893c68 -.word 0x55b3d7b1 -.word 0x9c69e9ac -.word 0x54b0c7e3 -.word 0xcf176dc8 -.word 0x037031e6 -.word 0xc5a9d7dc -.word 0xe64d64af -.word 0x94549549 -.word 0xa326100d -.word 0xfb6913dd -.word 0x250551e1 -.word 0x185149a3 -.word 0x81df8c8d -.word 0xb93004ff -.word 0x892fc0dd -.word 0x7c24f2d9 -.word 0x6eafbfc3 -.word 0x75d20ebc -.word 0xe06c4159 -.word 0x11ae6057 -.word 0xa7ea38a8 -.word 0x17a4650b -.word 0xd7d90ca1 -.word 0x431cac10 -.word 0xcc89d5cc -.word 0x51cb17e4 -.word 0xa246a444 -.word 0x82539653 -.word 0xf4b84378 -.word 0x78f45b70 -.word 0x831548cb -.word 0x80758ff9 -.word 0x40135d37 -.word 0xf0eaf7d2 -.word 0x57a708b4 -.word 0x26a3f6fd -.word 0x35481f92 -.word 0xb8168e09 -.word 0xe726ddaa -.word 0x97ad8004 -.word 0xf4cd7d12 -.word 0x3964a084 -.word 0xe2c8c43c -.word 0xc4a6689c -.word 0x36c0e04c -.word 0x17a2473b -.word 0x6c50425c -.word 0x6b25ccb5 -.word 0x7d60b3f5 -.word 0xb8a5d63e -.word 0x3a86fe30 -.word 0x41368f32 -.word 0x55139527 -.word 0x29495350 -.word 0x70ea58b7 -.word 0x996b9af2 -.word 0x45bb1ab6 -.word 0x22e7c9f9 -.word 0xbadf4a39 -.word 0x163c2649 -.word 0xdbb5c228 -.word 0x9d5ca087 -.word 0x3a100227 -.word 0x025a90a7 -.word 0xd8370f7a -.word 0x05adbd22 -.word 0xc106b69e -.word 0x88a8817b -.word 0xb0bc253a -.word 0x336b01f9 -.word 0xbb10ca0d -.word 0x4164edf4 -.word 0x9711770c -.word 0xf6ffe8c9 -.word 0x989f13db -.word 0x28f21bfe -.word 0x3e09d5fb -.word 0x687098b7 -.word 0xd472183d -.word 0xcc3c9bfd -.word 0x643a1c5d -.word 0x963fe1f5 -.word 0x5aad2695 -.word 0x7d977b8c -.word 0x51066cba -.word 0xf1fae5fe -.word 0x5f6ad219 -.word 0x51244626 -.word 0x9f57cfba -.word 0x384502a3 -.word 0x1cb47da5 -.word 0x71e9ff03 -.word 0xd3a567b0 -.word 0x5df68da5 -.word 0x486453a1 -.word 0x4a455775 -.word 0x9a6ff465 -.word 0x44f17652 -.word 0x88801d16 -.word 0x82e3c30b -.word 0x0a119192 -.word 0x52750df3 -.word 0xd22c6897 -.word 0x35f27839 -.word 0xc0021f4b -.word 0x136004cb -.word 0x7d117389 -.word 0x6c2abc9d -.word 0xa67db18c -.word 0x0128dd5e -.word 0x1f4dd3d0 -.word 0x675cf0f4 -.word 0xeb096082 -.word 0x8082fa11 -.word 0xdc763a15 -.word 0x8819c63b -.word 0xfc8684bc -.word 0x13e9d045 -.word 0xde76c763 -.word 0x418c2f89 -.word 0x3810b7fd -.word 0x86c5a5f9 -.word 0x6b099286 -.word 0xfec26c1c -.word 0xef876030 -.word 0xb9576241 -.word 0x3f09bdf1 -.word 0x3bb588db -.word 0x70d83599 -.word 0x523125be -.word 0x3822067c -.word 0x34a3646e -.word 0x438cd7e1 -.word 0x4c67906d -.word 0x1c396bd6 -.word 0x4f2ccbbb -.word 0xf3a3cd59 -.word 0xd64c94e1 -.word 0x9e0b9b1e -.word 0xf4fb5120 -.word 0xf052f852 -.word 0x17ae1e1e -.word 0x0c0f451f -.word 0x55551d0f -.word 0x8847f60f -.word 0xff621a90 -.word 0x06e5f21d -.word 0xb32a1aeb -.word 0xcae76703 -.word 0x43331dfa -.word 0xc45fd724 -.word 0xde1f7959 -.word 0x17d84aa8 -.word 0xa8708b44 -.word 0x790e485b -.word 0xc56caf02 -.word 0x263bc12b -.word 0xa9ac4417 -.word 0x02fcc14c -.word 0x087603e9 -.word 0x6e8bd7ef -.word 0x58c59bd6 -.word 0x6ea121f9 -.word 0x35c65ec9 -.word 0xfec4d9d1 -.word 0x6a2212de -.word 0x7f673a2b -.word 0x5ba797b6 -.word 0xe181a72f -.word 0x2a610012 -.word 0xee6673c6 -.word 0x31094a03 -.word 0xe0249a18 -.word 0x6d618f06 -.word 0x996dbdbd -.word 0x3c5c825e -.word 0xd166b24b -.word 0x389ec115 -.word 0xc939b832 -.word 0xa8a41823 -.word 0xe5f6287d -.word 0xfd275cba -.word 0xcd3ad94d -.word 0x2c3fb810 -.word 0xd0e29236 -.word 0x1a16dcee -.word 0xcf890d80 -.word 0xec1853af -.word 0x2330d97a -.word 0x0a450b7c -.word 0xcf7a40fc -.word 0x59acef94 -.word 0xadce121d -.word 0xd1a56e04 -.word 0xf1101702 -.word 0x84bd74a6 -.word 0xd7a157a5 -.word 0xe940b3dc -.word 0xc5696726 -.word 0x5eaffbfa -.word 0xea979ed2 -.word 0x6bba35e4 -.word 0xe6bb4b31 -.word 0x6221a4cb -.word 0x7c470b73 -.word 0x0912ac58 -.word 0x1b0f1dd8 -.word 0xeda4e604 -.word 0x74af9a5f -.word 0xbae03a24 -.word 0x795cc464 -.word 0xb9cb1fd1 -.word 0x86015686 -.word 0x24c1ca8d -.word 0x50c3d9ec -.word 0xa28318f2 -.word 0x2821d20c -.word 0xf1430dd3 -.word 0x0f87640a -.word 0x9066f474 -.word 0xdef89d9d -.word 0xbb3f65a6 -.word 0x253b79fb -.word 0x1b151b75 -.word 0xb4f09cab -.word 0x68c1d37a -.word 0x190cd744 -.word 0x20238230 -.word 0xaa5e1d31 -.word 0x06775ea8 -.word 0x49f9f995 -.word 0xf0f1da2a -.word 0x4081f78a -.word 0xd9d7c5f4 -.word 0x06a720bf -.word 0x334e0987 -.word 0x0cb3b26c -.word 0xbb1653d2 -.word 0x913750d2 -.word 0xc48d4f31 -.word 0xd0870c69 -.word 0xb8ecf903 -.word 0x1b97ddbe -.word 0x7545d191 -.word 0x0887f283 -.word 0xcc17e0b7 -.word 0x60357eb5 -.word 0x769cdc55 -.word 0xe459ced9 -.word 0xfdb80264 -.word 0x9abf91ee -.word 0x630f2602 -.word 0xdf73dbf7 -.word 0xd8286c34 -.word 0x36f44ec6 -.word 0x743dbc68 -.word 0xf2b0e46c -.word 0xfbf64418 -.word 0xea06fe2b -.word 0x7c988acc -.word 0x29cea76a -.word 0xe4208595 -.word 0x348b1644 -.word 0x9a3b9ba1 -.word 0x638a4ee1 -.word 0xd8e34a9d -.word 0x5dea5371 -.word 0x609a60dc -.word 0xd9247316 -.word 0xb9e5f7a2 -.word 0xff95bb91 -.word 0x1e928666 -.word 0x219f85d9 -.word 0xad3cea97 -.word 0x7f41a6ff -.word 0xe4c14979 -.word 0x76c6ec1c -.word 0x0c25e589 -.word 0x79d60c4b -.word 0x3fa1d629 -.word 0xccc5b6ac -.word 0xcefb56ec -.word 0xdd261ebc -.word 0x1be3eca8 -.word 0x9036cfa2 -.word 0x32cba197 -.word 0xfa60976c -.word 0x26453dbb -.word 0xa699e78b -.word 0xb7ad2349 -.word 0x3371373c -.word 0x954a722f -.word 0x1f19b888 -.word 0x0d99e59d -.word 0x48964a88 -.word 0x13fd81f9 -.word 0x709b8224 -.word 0xadc1fa90 -.word 0xecccf3f2 -.word 0x42e20b34 -.word 0x79df3876 -.word 0xb07f92fa -.word 0x50bb56ae -.word 0x4f42f81d -.word 0x5ebf032e -.word 0xd588192c -.word 0x5c9b4fbe -.word 0xc4bb6d76 -.word 0x2590d76e -.word 0x4ef8345e -.word 0x4a75b61f -.word 0x3a72af74 -.word 0x285c1407 -.word 0x65400db7 -.word 0xd068b264 -.word 0xa8edba95 -.word 0xfe18ff5f -.word 0x50d99b6e -.word 0x4de8a222 -.word 0x3dec2504 -.word 0x7e304285 -.word 0x1fac73a3 -.word 0xcdc345f1 -.word 0x6c5e150f -.word 0x0ab31ee7 -.word 0x8176798a -.word 0x6de7df70 -.word 0x318ad6c3 -.word 0x4d8b48ca -.word 0xab7c7b88 -.word 0xff97304c -.word 0x9a9c290d -.word 0x41d4457d -.word 0x084c0ab8 -.word 0x53266d9f -.word 0x3d7b9e87 -.word 0x6c4c4a4b -.word 0x731f88eb -.word 0x47b4294d -.word 0x29ffc6c1 -.word 0xee1a0272 -.word 0xf2bd5eea -.word 0xb97247db -.word 0xeda8c215 -.word 0x91642ace -.word 0xbdbd52c8 -.word 0x70f078f7 -.word 0xa9a1e9ab -.word 0xd8f9c924 -.word 0xb4e501a5 -.word 0xcbfe1d11 -.word 0x9cc77396 -.word 0x583ff0f5 -.word 0xcd738d39 -.word 0xe58b2369 -.word 0x3c00f2b1 -.word 0x2a75231f -.word 0x01ea858a -.word 0x3e9c36b4 -.word 0x2e3f165d -.word 0x3395dffa -.word 0x2a7f6cbf -.word 0x511f1aa1 -.word 0x2b3f7f30 -.word 0xf5f43d33 -.word 0x11faa5fe -.word 0x0353f3dc -.word 0xebed06c6 -.word 0x61e24386 -.word 0xbf8a1cfa -.word 0x51b0ea0f -.word 0x037ccab0 -.word 0x09b4ab5b -.word 0xec308655 -.word 0x0cb3e12e -.word 0x71d32b8f -.word 0x4334e68b -.word 0xa4eb609c -.word 0x607327af -.word 0xcee4b565 -.word 0x36d37119 -.word 0x89e7d7e1 -.word 0xfad90a9d -.word 0x88231d80 -.word 0xf40c2abf -.word 0x0c8eb3e5 -.word 0xe15d733e -.word 0x63ff0158 -.word 0xff389c66 -.word 0xb3581c23 -.word 0x4182a621 -.word 0xc4deab74 -.word 0x2ade3762 -.word 0x87177c96 -.word 0xbd8f9912 -.word 0x2ac4bbc9 -.word 0x0ece17dd -.word 0xd731ba90 -.word 0x304cf1c8 -.word 0xc2a16b02 -.word 0x789e9ba8 -.word 0x31b93654 -.word 0xdc2b4c03 -.word 0x5f4737dc -.word 0x433528ee -.word 0xe5f331ef -.word 0xfd2480fe -.word 0x54c8c603 -.word 0xf982c37b -.word 0x1bdb8ddb -.word 0xcafa31f6 -.word 0x95c1a62a -.word 0x3e7a10ad -.word 0x65ba6fb8 -.word 0x51be4c41 -.word 0xac90ce66 -.word 0x6c15f933 -.word 0x6da26083 -.word 0xaab820e5 -.word 0x590a8b85 -.word 0x153116e1 -.word 0x7e4a1e3e -.word 0xdda52eb2 -.word 0x3d3808fc -.word 0x450f37cd -.word 0xe9e12641 -.word 0x29a01547 -.word 0xf5a66493 -.word 0x4d9f24d9 -.word 0x35773ab8 -.word 0xb9223dd8 -.word 0xe3f77525 -.word 0x777e5fb3 -.word 0x453ef957 -.word 0x20eeb9b5 -.word 0x01e23a7a -.word 0xb45438f7 -.word 0xbd9451ad -.word 0x509b2ba4 -.word 0x793d6578 -.word 0xc3cee357 -.word 0xb27313dc -.word 0xae4addb0 -.word 0xeafdf38b -.word 0x3e3c37c0 -.word 0xf91bd2fa -.word 0xa0670a89 -.word 0x51afcd41 -.word 0xae6e4b64 -.word 0x4e16f5c1 -.word 0x694338e8 -.word 0xd2ae3ad7 -.word 0xce82c4e5 -.word 0x99011648 -.word 0xce862030 -.word 0xdd9f5c31 -.word 0x63a85e24 -.word 0x13552532 -.word 0xf0bf85f6 -.word 0x0f543394 -.word 0x71e16833 -.word 0x1a111a51 -.word 0x89b9deb2 -.word 0xc7b9df85 -.word 0x08fb07a8 -.word 0x7f189e52 -.word 0x6731ecf9 -.word 0xab5e8112 -.word 0xe60cc960 -.word 0xac43b426 -.word 0x0f692463 -.word 0x5a5b464b -.word 0x76f00596 -.word 0x2988b9af -.word 0xdbe9fe88 -.word 0x5c1de442 -.word 0x5c04cbde -.word 0x369d3d12 -.word 0x897a11bb -.word 0xce99b6ec -.word 0x1c7c10cf -.word 0x7fd1559d -.word 0x4c076760 -.word 0x0ffa6692 -.word 0x65d1d03e -.word 0xa308570d -.word 0x9d3b2f86 -.word 0xfed7e307 -.word 0xb3e64a8d -.word 0xee0d4fbe -.word 0xba293589 -.word 0xaf4bbb5b -.word 0xe6187b86 -.word 0xdd6ec63f -.word 0xc13f5257 -.word 0x53b2b3f7 -.word 0x483e892b -.word 0xdd8a9b0e -.word 0x067e6246 -.word 0x63c9da83 -.word 0xd673da27 -.word 0x4b137866 -.word 0x7f74e1f0 -.word 0x58f7a57b -.word 0xa3d01941 -.word 0xd4466f32 -.word 0x0f4449ec -.word 0x68df99e8 -.word 0xdb1c6c97 -.word 0x69b01dc4 -.word 0xfa13e963 -.word 0x4572da50 -.word 0x8125b9ab -.word 0x2c533090 -.word 0xde408469 -.word 0x7ad8a598 -.word 0xd323d43e -.word 0xb032ac02 -.word 0x4358ebb2 -.word 0xda675e26 -.word 0x115029d9 -.word 0xecf178f1 -.word 0xc8cb4ba3 -.word 0x3ec928cf -.word 0x93458ee9 -.word 0x595272f6 -.word 0x77e2f511 -.word 0xf2b1f586 -.word 0x74141a07 -.word 0x94c793b2 -.word 0x0b81ea6d -.word 0x0e929694 -.word 0x79f78f69 -.word 0x6bd99681 -.word 0xef1645a7 -.word 0x92082bbb -.word 0xe37dfa0d -.word 0x93034548 -.word 0xee709b59 -.word 0x51daa8fe -.word 0x06abb4b6 -.word 0xc077acc4 -.word 0xa7b6f268 -.word 0x322dbfba -.word 0x37533609 -.word 0x78bc6364 -.word 0xe632dde3 -.word 0xab5d0f21 -.word 0x6e93ba65 -.word 0x92864652 -.word 0x5915e930 -.word 0x64ea09c7 -.word 0x2edc3547 -.word 0xb20dbc77 -.word 0x06255c15 -.word 0x8641b0a4 -.word 0x169f8abb -.word 0x24724c58 -.word 0xc2684825 -.word 0xdceeede5 -.word 0x8279bdf8 -.word 0xf669c901 -.word 0xb57dac45 -.word 0x89fcd84f -.word 0x9b46a3c6 -.word 0x022fb138 -.word 0x18cc8240 -.word 0xbfbcc889 -.word 0x5fdf0a8e -.word 0xf7345f8e -.word 0x41e358ea -.word 0x48661bbc -.word 0x36364acc -.word 0xee49e628 -.word 0x8bd07648 -.word 0x41a752b5 -.word 0x1095b369 -.word 0x9531e56c -.word 0x03f6eee9 -.word 0xdcb7a457 -.word 0x2891dd72 -.word 0xc3212e2e -.word 0xdcd8299d -.word 0x4a0f415b -.word 0x95c0e915 -.word 0xaff6821e -.word 0x74ca3d64 -.word 0x6981708b -.word 0xe2451153 -.word 0x41a20a4e -.word 0x90e23a40 -.word 0x01d6d94e -.word 0x91b440a7 -.word 0xf8716248 -.word 0x654869c6 -.word 0xbc3b2aab -.word 0x53a172ca -.word 0x6094df90 -.word 0x64b02fca -.word 0xe159e7a5 -.word 0x53773081 -.word 0x0b8afb39 -.word 0x8bec6fd2 -.word 0x9532c78b -.word 0x9b1953cd -.word 0x77f90dff -.word 0x4bf8eedc -.word 0xb74b1138 -.word 0x3fc2a8b8 -.word 0x42e2d614 -.word 0x2da1a6b3 -.word 0x0ef5a223 -.word 0x34eb7e87 -.word 0xacd530b9 -.word 0x658d3bfc -.word 0x7514ef01 -.word 0x3b22369e -.word 0x42022601 -.word 0xafbcb3da -.word 0xf04d0aca -.word 0x23e58a6d -.word 0xb09f2452 -.word 0xf5d649b3 -.word 0x8b889249 -.word 0xe4f51d40 -.word 0x2e50d916 -.word 0xc8dae978 -.word 0x1c18c372 -.word 0x375880e5 -.word 0x18b32868 -.word 0x00d90d1f -.word 0xc224859f -.word 0x597a41d7 -.word 0x5cf1a666 -.word 0xbb97f856 -.word 0x4096d07f -.word 0xdbc43761 -.word 0x2f5c675c -.word 0xf9c909d1 -.word 0xdf408d77 -.word 0x80031eb6 -.word 0xef98a9c8 -.word 0xd854d29d -.word 0xf39b8ee2 -.word 0x4ba83f91 -.word 0x6a1148cc -.word 0x4d652d35 -.word 0x71d878d6 -.word 0x8e2462da -.word 0xdbd600ad -.word 0x540fa84e -.word 0x8e42c366 -.word 0x46c09367 -.word 0x71f3d5fc -.word 0x0d1bfdf7 -.word 0x8ab25da5 -.word 0x9db7e35f -.word 0x9775bfa5 -.word 0xde5805bf -.word 0x852ef1db -.word 0x46a64700 -.word 0xf3332016 -.word 0x670f9cc9 -.word 0x31c448a1 -.word 0x8233af06 -.word 0xb38fa2ec -.word 0x444da588 -.word 0x3baa7cd7 -.word 0x1595fee5 -.word 0x8e7bc1ec -.word 0x6014e4a6 -.word 0xcbc4ad3e -.word 0x28e8d637 -.word 0x9c826de7 -.word 0x2668ad90 -.word 0x32b5c2da -.word 0x1d017552 -.word 0xa52d9ac2 -.word 0xbb3c4123 -.word 0x6f627b2a -.word 0xd347783a -.word 0xcd3db664 -.word 0xdd9d9a61 -.word 0xa4e2c5bd -.word 0x72bf5dbd -.word 0x6a7eb42d -.word 0xcbd0b2df -.word 0x4b72bdaf -.word 0x3e5f7e64 -.word 0xff7b37da -.word 0xef64a821 -.word 0xa7762d30 -.word 0xd512a2cc -.word 0x0dbfdb16 -.word 0xc5edb0bf -.word 0x97cc4c36 -.word 0x4b9c2174 -.word 0x473ea2ea -.word 0xad65b060 -.word 0xe9d615f1 -.word 0xbef2b34e -.word 0x0b2fcf70 -.word 0x95aca4d9 -.word 0x560cd3c4 -.word 0x3a0c80bf -.word 0x0e3abf7e -.word 0x9437f7d3 -.word 0x44cdc01f -.word 0x55f4b088 -.word 0x80146bb0 -.word 0xe5a5dccc -.word 0x469c6e65 -.word 0x93585587 -.word 0xa5867c09 -.word 0xc0dd99e9 -.word 0xd91b90bd -.word 0x3a219e23 -.word 0xdd2867e5 -.word 0x133b89a0 -.word 0x757ce8e2 -.word 0xbc4613c6 -.word 0xe63c167d -.word 0x58e98746 -.word 0xadb69681 -.word 0xb2f55c5f -.word 0x0c2162a6 -.word 0xc016ae02 -.word 0xd63e481f -.word 0x23c36264 -.word 0x51f4fff5 -.word 0x6eebdaed -.word 0xf008f27e -.word 0xf50d0bd6 -.word 0x2ee720f9 -.word 0x6535749b -.word 0x1f6e9e6e -.word 0x0d993272 -.word 0x36cc03c2 -.word 0xef859ca1 -.word 0xe7bc8dfb -.word 0x3320ccf4 -.word 0x9f8d282b -.word 0xa32586c6 -.word 0x7291d139 -.word 0xd8c14cd7 -.word 0x170c1005 -.word 0x45c334f1 -.word 0x1d776b79 -.word 0xe902699d -.word 0xcc5d298a -.word 0x736481ea -.word 0x16b1eb4d -.word 0xda5d1d72 -.word 0xc7bf8f64 -.word 0xde777e20 -.word 0xf138d040 -.word 0xaa133ff0 -.word 0x7dae7a8e -.word 0xcd38099a -.word 0x2351b1de -.word 0xd6a150b9 -.word 0x4e9dcf76 -.word 0x707393e0 -.word 0xdf775068 -.word 0x01ad2896 -.word 0x566b6b46 -.word 0xd0598613 -.word 0x66e6d40a -.word 0xe7422d6c -.word 0xb7755176 -.word 0x3a62b130 -.word 0x7e272665 -.word 0x5ad23043 -.word 0xa9672e40 -.word 0xb66a5ad7 -.word 0x80871131 -.word 0x1351d490 -.word 0xdc6c5262 -.word 0x2dd2e5d7 -.word 0xa2116bdf -.word 0xd2f22abc -.word 0x754bea6f -.word 0x0cd55ee0 -.word 0x8c9b9c09 -.word 0x1948f612 -.word 0x2c00e7c1 -.word 0x3526c26f -.word 0x2bf063af -.word 0x93d01dc9 -.word 0xc00134f0 -.word 0x7103127d -.word 0xf3e05f1d -.word 0x129c63cc -.word 0x54644cf3 -.word 0x529c204d -.word 0x89ac1a11 -.word 0xab5afbf6 -.word 0x46af7dfb -.word 0x6cf76b08 -.word 0x61b269ca -.word 0x57236053 -.word 0x0e72b69f -.word 0xbf69b94e -.word 0x07276a3e -.word 0x6c10ce6e -.word 0x39cd9552 -.word 0x6b253031 -.word 0xb4444b40 -.word 0xcc3ccc18 -.word 0xde71bd49 -.word 0xa00ab7b0 -.word 0x48ad3d48 -.word 0x0285a58f -.word 0x2620e371 -.word 0xe27c36cb -.word 0x617be605 -.word 0x61038c08 -.word 0x5a62daa0 -.word 0x55ff4f45 -.word 0x315e2bdd -.word 0x47dfacff -.word 0x787ebb38 -.word 0x74c96c39 -.word 0x0f668ceb -.word 0x1c9a0a70 -.word 0x06a768db -.word 0x77ec797c -.word 0xa581cb0e -.word 0xe17c66b1 -.word 0x66505dc7 -.word 0x9b1468b6 -.word 0xc920f0c6 -.word 0x8913f777 -.word 0x8a25ab24 -.word 0x2615b699 -.word 0xae89502f -.word 0xba234214 -.word 0x4d888de5 -.word 0xa94f0851 -.word 0x3579864c -.word 0x1bc30746 -.word 0x54a97b22 -.word 0x8c07a772 -.word 0x6358890b -.word 0x403d38e3 -.word 0xf6d06dc6 -.word 0xb328d3ef -.word 0x47df309f -.word 0x122b7fb7 -.word 0xb71a3590 -.word 0xec16678e -.word 0xb8329e29 -.word 0xaf77221f -.word 0xf7af0a21 -.word 0xb1f19f3a -.word 0x1f872bc5 -.word 0x78b0d549 -.word 0x6534dc39 -.word 0x93fd8b5d -.word 0x285871c0 -.word 0xa09ac71b -.word 0xb4827d52 -.word 0x45b69757 -.word 0x9fca284d -.word 0x582194b3 -.word 0xac6da850 -.word 0x77cb4e9e -.word 0xf5cb288f -.word 0x772aa1f7 -.word 0x0ae2fea2 -.word 0x11858526 -.word 0xb0a03ca7 -.word 0x17f5000f -.word 0xc39e7709 -.word 0x7eb5e3e8 -.word 0x586ee2d9 -.word 0x6893b8db -.word 0xd7fc418e -.word 0x8a1fbc71 -.word 0x6ac422d8 -.word 0x7898ca39 -.word 0x9435242e -.word 0x747d5002 -.word 0xb5b79655 -.word 0x6891e3e0 -.word 0x48c2e861 -.word 0x1eb92e19 -.word 0x74588b9b -.word 0x2e8b86e4 -.word 0x320f953c -.word 0x2c6ec6ad -.word 0x5b4a5e4f -.word 0xe8efc064 -.word 0x82f6baaf -.word 0x46df9b08 -.word 0x79524a22 -.word 0x755adb38 -.word 0x0d5644f1 -.word 0xcef6a995 -.word 0x81e88114 -.word 0xfda99862 -.word 0xa219883f -.word 0x3e72380c -.word 0xfb8b7750 -.word 0x1c7a3527 -.word 0x2a78a288 -.word 0x24fdd14f -.word 0x27cef36b -.word 0x223d2864 -.word 0xe695e439 -.word 0x24b83256 -.word 0x7cd1f75d -.word 0x24daebb7 -.word 0x4fca8841 -.word 0x17427d40 -.word 0x5e5d8a89 -.word 0x4835f7da -.word 0xb9e36731 -.word 0xfd855af5 -.word 0x30ceeb40 -.word 0x773c2b11 -.word 0x9e0a554b -.word 0xfc9e477f -.word 0x10b73187 -.word 0xa7cfe009 -.word 0x67578bb6 -.word 0x8084b9f7 -.word 0xb36bb530 -.word 0xb1d53db4 -.word 0x62e39b62 -.word 0xd06b7ebc -.word 0x94a01fa1 -.word 0x3b33fad4 -.word 0x31b8ec46 -.word 0x32f060b4 -.word 0xcfda5c05 -.word 0xdcdf7ab2 -.word 0x297c4f5d -.word 0x974e2973 -.word 0x1321df54 -.word 0x0ffdb555 -.word 0xae426d3a -.word 0x8e6fcffa -.word 0x6df4d121 -.word 0x6f660cbd -.word 0x743d0dd5 -.word 0x608776df -.word 0x48e17015 -.word 0xef4e942c -.word 0x11eab062 -.word 0x9716bbc5 -.word 0x2d4bec51 -.word 0x5d3ff847 -.word 0x0af00915 -.word 0x24bce304 -.word 0x9c5f9bf2 -.word 0x0829fcdf -.word 0x6a6d1c7a -.word 0x9ca357f5 -.word 0x92300676 -.word 0x1a3a855f -.word 0x6bef22cb -.word 0x538fe695 -.word 0xcda54f08 -.word 0xdd84e287 -.word 0x97ac18e3 -.word 0xc8d3e192 -.word 0x69fb4c83 -.word 0xfa5e36f2 -.word 0xb77fd772 -.word 0xe4005c85 -.word 0x2a030336 -.word 0xb1d165ea -.word 0xab5510c2 -.word 0xb1ef8237 -.word 0xe4d089aa -.word 0x3a58341f -.word 0x1e8c84fa -.word 0x8f9a2635 -.word 0x38c3bbde -.word 0xf7f7e20f -.word 0xe981300a -.word 0x7b197b29 -.word 0xceae0649 -.word 0x9d3b42c6 -.word 0xe9d79655 -.word 0x8d115257 -.word 0x34536b22 -.word 0xfdf1d00a -.word 0x441e6e8a -.word 0x1d047721 -.word 0xc773dac0 -.word 0xa6f74de3 -.word 0xdd60eca0 -.word 0x3893e9d4 -.word 0xec581389 -.word 0xd46ceb49 -.word 0xa4763863 -.word 0x0407b50c -.word 0xc3cc7ccf -.word 0x5f5ed7db -.word 0x22f8e56e -.word 0x53cbdc95 -.word 0xf28ee7b7 -.word 0x50bcc0bf -.word 0x76b9f0ad -.word 0xe6d52050 -.word 0xb626ec83 -.word 0x5f344ef1 -.word 0x555c4d1b -.word 0x8c4b17e6 -.word 0x8996e123 -.word 0xb996d8c5 -.word 0xa5080bf0 -.word 0x2eb609f5 -.word 0xdfb5d95d -.word 0xcd103592 -.word 0x803a0e35 -.word 0x253186da -.word 0x73f02bf6 -.word 0xdcd902c0 -.word 0x45690da0 -.word 0x51f4a22b -.word 0xb11b887f -.word 0xbda28f9e -.word 0xd4e6cdad -.word 0x65372f51 -.word 0xbb950104 -.word 0x3acef72e -.word 0x0cb4a28d -.word 0xb08ebfa8 -.word 0x3c88b063 -.word 0xe0979b02 -.word 0x533e3fcb -.word 0x5722874f -.word 0xd881cce2 -.word 0x071b42df -.word 0xf8527a18 -.word 0x542a003c -.word 0x0a4905f1 -.word 0x55f4e065 -.word 0x1fd94915 -.word 0x407ec6a7 -.word 0x80693d02 -.word 0x8f98bbe1 -.word 0x307a5cd5 -.word 0xff7a4fc5 -.word 0x251d7344 -.word 0x1b457f21 -.word 0x449ef381 -.word 0x000454dd -.word 0xe0abbaa4 -.word 0x27d4a0f4 -.word 0x041d624d -.word 0x9ece8c42 -.word 0x57020149 -.word 0x1e8fee8c -.word 0x7809ea5c -.word 0x2f01d386 -.word 0x13fd17b7 -.word 0x81ec7ae3 -.word 0x3d22fdb3 -.word 0x5874fffb -.word 0x7e6946e4 -.word 0xfe35b50e -.word 0x9b93fb47 -.word 0x91891d3e -.word 0x4d5bca9d -.word 0x75fe13a0 -.word 0x44028408 -.word 0xd8c3df10 -.word 0xee13119f -.word 0xd61b9e79 -.word 0x6942adc2 -.word 0xb80f4350 -.word 0x4b9fd998 -.word 0xcac9e86f -.word 0xf36cfc4e -.word 0x2c3e7a1d -.word 0x15b7d0b7 -.word 0xfe54cfa3 -.word 0x926ee37e -.word 0xc9080411 -.word 0xd8eea06a -.word 0xcdcf7133 -.word 0x1a6f1511 -.word 0x4020def8 -.word 0x5ea62dae -.word 0xdf46ca76 -.word 0xbb3817aa -.word 0x37c1b051 -.word 0x23a66206 -.word 0xcbf5d766 -.word 0xe0076287 -.word 0x05c6587f -.word 0x545e6e27 -.word 0x1c92ce24 -.word 0x6e1e2ade -.word 0x044eb79b -.word 0x631a6490 -.word 0x2b754eb9 -.word 0x0e52f22f -.word 0xf84ba892 -.word 0x26c6a12b -.word 0xed5f1222 -.word 0xb9d1355d -.word 0x58cd606d -.word 0x6070691a -.word 0x5f71c795 -.word 0x46721126 -.word 0x930b2770 -.word 0x2234fcb0 -.word 0x97051b60 -.word 0x7e02bd48 -.word 0x302d69ef -.word 0xf4ea7a2d -.word 0x49b536a5 -.word 0xa0ba319a -.word 0xb8458c44 -.word 0xbce9aa58 -.word 0x9458173a -.word 0x759d17f0 -.word 0x6cc8bdfa -.word 0xbd0c85ac -.word 0x100243c3 -.word 0x903e17e3 -.word 0xd6c72e7d -.word 0x73ecb685 -.word 0x7ba4f00a -.word 0xb0cad2e4 -.word 0xc89494f7 -.word 0x53676717 -.word 0x9a029682 -.word 0xd0a8588a -.word 0x9db5ed31 -.word 0x35b05ca9 -.word 0xfef83728 -.word 0x57d98375 -.word 0xa63ce2b2 -.word 0x0da3dae6 -.word 0xae530779 -.word 0x8df9e526 -.word 0xe83a7c1b -.word 0x3b162257 -.word 0x05859ad9 -.word 0x5475799c -.word 0x6ded20ad -.word 0xaf2faf59 -.word 0x4f2ea3f6 -.word 0xc5516ada -.word 0xda10714d -.word 0x084fd2f0 -.word 0xfc6a4d59 -.word 0x10a6ab5b -.word 0x428b75d0 -.word 0x150f683e -.word 0xcce1c6ba -.word 0xf3dd2476 -.word 0x44a83093 -.word 0x9179b83a -.word 0xf6f9128f -.word 0xc522613e -.word 0x424a5eee -.word 0x76236b07 -.word 0xeab1c273 -.word 0xdf4d1ad2 -.word 0x7bce7078 -.word 0x949f858d -.word 0x1226c48b -.word 0x654cd500 -.word 0xce65a6fc -.word 0x0a17fcb8 -.word 0x329cd0b5 -.word 0x90a3ecf4 -.word 0x04c12532 -.word 0x2df83d4b -.word 0xc0d2e32b -.word 0x2faa9955 -.word 0x7f028bf1 -.word 0xefd37515 -.word 0x86b834f0 -.word 0xb033d832 -.word 0x10ce00c9 -.word 0x86fe7827 -.word 0x87e903ec -.word 0x7b989787 -.word 0x7ac343db -.word 0x110425ec -.word 0x9d8f7f84 -.word 0x59535dda -.word 0xb40cb165 -.word 0x41549928 -.word 0xe96b5dd7 -.word 0x766d90b3 -.word 0xd5266d7c -.word 0x8593a104 -.word 0x4851c73f -.word 0x6f79bc39 -.word 0x47d54bcb -.word 0x87be85b8 -.word 0x5cdac5e2 -.word 0x446bcb48 -.word 0xff8ba638 -.word 0xf8047cc1 -.word 0x82b86547 -.word 0x90a7b23e -.word 0xd2324c6d -.word 0xa1d8d2d6 -.word 0x6a393723 -.word 0x80d44165 -.word 0xcd1286dc -.word 0x10997025 -.word 0x693bb1d6 -.word 0x1542ea1b -.word 0x9055202b -.word 0x06ce35dd -.word 0x70806c6a -.word 0x21e33ef1 -.word 0x57213df1 -.word 0xf988cd3d -.word 0x3bdefc02 -.word 0x5f6a7cbd -.word 0xcda6a2b1 -.word 0x34eb97db -.word 0x3a02395d -.word 0x6b74e740 -.word 0x9d1b50ec -.word 0x34c28626 -.word 0x418de14f -.word 0x0ff1358c -.word 0x44bcd264 -.word 0x63ede48e -.word 0x98052ee6 -.word 0x4b92ede1 -.word 0x86c14ac0 -.word 0xc8e97b80 -.word 0x47c7c1fd -.word 0xb7cf04c2 -.word 0xc2301784 -.word 0xecc854f4 -.word 0xbd7398bb -.word 0xa3349568 -.word 0xa339931d -.word 0x6191fe16 -.word 0xe4e5007d -.word 0x3085cbda -.word 0x5c850f38 -.word 0x20393a21 -.word 0x827c9d91 -.word 0xe716f5d7 -.word 0xa49abd17 -.word 0x0421cf35 -.word 0xe1a54942 -.word 0x0e40b4c5 -.word 0x31cd424e -.word 0x7aaaf2cb -.word 0x05ae957b -.word 0xcaec583e -.word 0xafabe6b8 -.word 0xf6d79ff8 -.word 0xa58456f0 -.word 0x6de5dcc8 -.word 0x3b045a8f -.word 0x51505572 -.word 0xa0d2936a -.word 0xd52d1b57 -.word 0x2fd9764c -.word 0x86b2dccf -.word 0xa659282e -.word 0x3b2e8e39 -.word 0xb57d66e3 -.word 0x47ccd732 -.word 0x58c98b58 -.word 0x34a14709 -.word 0xf35cfdf1 -.word 0x0a444318 -.word 0x4ebb0345 -.word 0x9cd05690 -.word 0x81afbe02 -.word 0x392218c4 -.word 0x817eb0c3 -.word 0x78c92e39 -.word 0x8bd4417f -.word 0x71b76c0c -.word 0x2a7bf8f9 -.word 0xb2aa4c78 -.word 0x5441002e -.word 0xce5b5126 -.word 0x55c8ddf6 -.word 0xddf0eb80 -.word 0x3f5a5d62 -.word 0xa5a205c1 -.word 0xf8b84e63 -.word 0x4cc5031c -.word 0xce1a8e9c -.word 0x8d180fe9 -.word 0x00ea90da -.word 0x9727a840 -.word 0x60385965 -.word 0x11d0ebc3 -.word 0xcdb8f2ec -.word 0xb268cf61 -.word 0xefe82635 -.word 0x21be16eb -.word 0x5cd2fa6b -.word 0x932a7333 -.word 0x585b79df -.word 0x201e70be -.word 0x5ea63bc3 -.word 0x6eae1b88 -.word 0x7e2f2f9a -.word 0x7102806b -.word 0x6b980b6d -.word 0x80149d57 -.word 0xaf3744be -.word 0x3fa100cd -.word 0x7b108a58 -.word 0xd7ec2a2d -.word 0xc76e4370 -.word 0xc8f18c32 -.word 0xed53c199 -.word 0x7cc474ab -.word 0xd6680900 -.word 0xca638ad3 -.word 0x5b1703ab -.word 0xc3e8eab7 -.word 0x7c229e59 -.word 0x90bfc1fb -.word 0x28f51b36 -.word 0xbc8d83ae -.word 0x550e8523 -.word 0x6e141b92 -.word 0x8689f3b6 -.word 0xc2c67028 -.word 0xfa0b8ab2 -.word 0xde387530 -.word 0xaa9c2580 -.word 0x4abcac10 -.word 0x8ae1e7d7 -.word 0x9feb693f -.word 0x5a40760f -.word 0xe877a9cd -.word 0x4fa53049 -.word 0x869b13bc -.word 0xf930e18c -.word 0x365b927c -.word 0x6c3af20b -.word 0xeb7e0e12 -.word 0xef4caa02 -.word 0x71bed28e -.word 0xb2fc1922 -.word 0x92142c89 -.word 0x163a8ca8 -.word 0xea2d076f -.word 0xe01caf46 -.word 0xea708124 -.word 0x36d1e364 -.word 0x8bc0df5d -.word 0xd1e3ba3f -.word 0xdbcf9264 -.word 0xdb4e0dbf -.word 0x0d81f7ae -.word 0xaeb0cfbf -.word 0x582cfadf -.word 0x23f68ac6 -.word 0x816d4e57 -.word 0x1466e071 -.word 0x4db1bbd9 -.word 0x6ebb543d -.word 0x6666d972 -.word 0x52ade238 -.word 0x7c2e8729 -.word 0x81fc12a6 -.word 0x26a49bb0 -.word 0x3b61a6a0 -.word 0x55357af3 -.word 0x053cbbf8 -.word 0x85e6396f -.word 0xe70ad007 -.word 0x3f13365c -.word 0xe2185469 -.word 0x5e716694 -.word 0x733d8740 -.word 0xc7f211a6 -.word 0x70f2ff0c -.word 0x7f689ea9 -.word 0xeb4fb1db -.word 0x11d92ef1 -.word 0x70c7d3d4 -.word 0x4d34b38c -.word 0x7f0842df -.word 0x8ce4498a -.word 0xb08d07e6 -.word 0x4b5dde0b -.word 0xed7dd81f -.word 0xf3c23755 -.word 0xc715a48c -.word 0x9b50af48 -.word 0xcbbbc382 -.word 0x0de9a848 -.word 0x9ed43411 -.word 0x72da4cbc -.word 0x53546bfe -.word 0xaea83e2d -.word 0x5fbe3ab5 -.word 0xe51c75ab -.word 0x1b13bd09 -.word 0x4379eee6 -.word 0x79145ccc -.word 0x23772a86 -.word 0x1df253ee -.word 0xad380710 -.word 0x432fd9be -.word 0x220d4e9e -.word 0xb3d081f6 -.word 0xdba36f1e -.word 0x9cbebbef -.word 0x9f9ded41 -.word 0x484edad1 -.word 0xe91c28a1 -.word 0xc8db2baf -.word 0xce6d63dd -.word 0x89f573cc -.word 0x3ad3d09e -.word 0x78dd00e3 -.word 0x6282eba3 -.word 0x9f8f4383 -.word 0x241d7453 -.word 0x337f6b8d -.word 0x8d59e9fa -.word 0x23695e2a -.word 0x29637cd5 -.word 0x8adf817c -.word 0x72211a4c -.word 0xd27fc6c7 -.word 0xfb71e0f7 -.word 0x8e57ee36 -.word 0xa4d4c963 -.word 0x6c9e5d32 -.word 0x9b27e5d8 -.word 0x6024cad4 -.word 0xdeecffc3 -.word 0x827e084c -.word 0x3e329282 -.word 0x6b2109b7 -.word 0xd847561b -.word 0x08089f09 -.word 0xfe3c16e0 -.word 0xbfea0527 -.word 0x80e4f017 -.word 0x47bf67c2 -.word 0x402ce98c -.word 0x5865fba5 -.word 0xb9dd0a69 -.word 0xa16b9d4e -.word 0x7fbf960f -.word 0x61674c56 -.word 0x6b9bae95 -.word 0x249d2aa2 -.word 0x60671e80 -.word 0xb0a37498 -.word 0x047be3d5 -.word 0xf1c41a63 -.word 0x048a8b99 -.word 0x726976d9 -.word 0x4b0dc08f -.word 0x893cbfaa -.word 0x430b2d18 -.word 0x9a77c39d -.word 0x0ad4c48d -.word 0xe5dd59e4 -.word 0xebbb4a1e -.word 0xdf00760d -.word 0xb287b5df -.word 0x230dd960 -.word 0x9ffc58b3 -.word 0x93c1feea -.word 0xcc3f9e87 -.word 0x76241b96 -.word 0xc943a95a -.word 0x4ef682ef -.word 0x07eca511 -.word 0x27c97958 -.word 0xfe24937c -.word 0x53a0b3a8 -.word 0x22b2a9fb -.word 0x2a4ebd52 -.word 0xf40bec98 -.word 0xcefed4fe -.word 0x6fb0d941 -.word 0x0d708515 -.word 0xcd15e722 -.word 0x00ce4770 -.word 0xbff4f20c -.word 0x6c9a3612 -.word 0x5be84275 -.word 0x04140af2 -.word 0xa93cddcc -.word 0xdfdf584f -.word 0x732ea7a3 -.word 0xe04eb957 -.word 0x2f67ac43 -.word 0x5345d5c6 -.word 0x6dcb28c7 -.word 0x2f93fa10 -.word 0xfd4cbcea -.word 0x83ed0240 -.word 0x00277522 -.word 0xa2f2262d -.word 0x2605b9bd -.word 0x5a5e9b9c -.word 0xd1192448 -.word 0x56ddcbdc -.word 0x4451f8e3 -.word 0xdc719f60 -.word 0x4355a7c0 -.word 0xf302064d -.word 0x0892f219 -.word 0x1157251a -.word 0xfe6b7d66 -.word 0x9dc6bf64 -.word 0x8df8aca5 -.word 0xcb1a224a -.word 0x4be4320b -.word 0xde870471 -.word 0x47c0492c -.word 0xdcf8ddba -.word 0x7f3f05ad -.word 0xe61268b0 -.word 0xf649dae0 -.word 0xccbf8bf3 -.word 0x24d820e0 -.word 0x75b66634 -.word 0xe9830e06 -.word 0x71698724 -.word 0x358c19ab -.word 0x7773ef7a -.word 0x21fab22b -.word 0x13a27011 -.word 0x96c78f69 -.word 0x02803776 -.word 0x67bb614b -.word 0x5103ae18 -.word 0xcc2072d2 -.word 0x5c781451 -.word 0x70b97c32 -.word 0xa30f5881 -.word 0x2b024cd1 -.word 0x7a5f8a7d -.word 0x31cb99e8 -.word 0x668cde7c -.word 0xcec9ec2b -.word 0xf17a0b6f -.word 0xf3b661b9 -.word 0xcc8e9a58 -.word 0x0aa0a227 -.word 0x6d1cc14e -.word 0x5dad485f -.word 0x606c8d57 -.word 0x76a1def9 -.word 0xada9acdc -.word 0x015c222d -.word 0x976c5286 -.word 0x0e51231e -.word 0xbfad55a7 -.word 0xef07d1f9 -.word 0xaadfd6f6 -.word 0xc64c1a74 -.word 0xfb022918 -.word 0xea34418a -.word 0x49e3a318 -.word 0x9c8ac764 -.word 0x7b2dee15 -.word 0x84ec39c7 -.word 0x6ca9571a -.word 0x0458ff7a -.word 0x54da03d4 -.word 0x074f9bbc -.word 0xe2d58570 -.word 0xc9e41e29 -.word 0x0e96ebb8 -.word 0xa4127401 -.word 0xe14991ba -.word 0xa15369df -.word 0xa8744264 -.word 0x7bbf3968 -.word 0x6372adff -.word 0x5598184c -.word 0x167773b5 -.word 0x4e554263 -.word 0x35c9eed8 -.word 0x6d9d97c2 -.word 0x5f8d057e -.word 0x4ec738c1 -.word 0xfe04ce8e -.word 0x3aa45ee9 -.word 0x6396d483 -.word 0xd276a897 -.word 0x5d5eb71c -.word 0x0c96e5aa -.word 0x90018d04 -.word 0x57bdfec0 -.word 0xcbd8b124 -.word 0x54e255c3 -.word 0x54f919d8 -.word 0x82f4cbe7 -.word 0xa0885cec -.word 0x20bf3303 -.word 0x10591393 -.word 0xc3906d97 -.word 0x4009a8f3 -.word 0xef7eafac -.word 0xcf89ba35 -.word 0x884e7508 -.word 0x1438d8da -.word 0x42305d9c -.word 0x04ca0269 -.word 0x956415c6 -.word 0x8f910ec4 -.word 0xb9d9b22d -.word 0x5c0c0679 -.word 0xe7afb92e -.word 0xdffbee43 -.word 0xb03d85f4 -.word 0x81125397 -.word 0xed702c7a -.word 0x8149e447 -.word 0x00c97f4e -.word 0xe3eac6d9 -.word 0x16c2b14e -.word 0x5d96a7e6 -.word 0x5e1aeca2 -.word 0xdb4a6e21 -.word 0x99da0a49 -.word 0x8c283baf -.word 0xfd2d805a -.word 0xe32d5005 -.word 0xa4de7c3f -.word 0x6e9c41ca -.word 0x3a9e1e9f -.word 0xe1ab2f10 -.word 0xb4603b21 -.word 0xe8da74f1 -.word 0x6894c994 -.word 0xf488fd0e -.word 0x13533a7f -.word 0x49e3fccf -.word 0xf1bb99a9 -.word 0xc5d8ca61 -.word 0x2d82c115 -.word 0x5a415a91 -.word 0x38867bec -.word 0xa1af7eaf -.word 0xb101b9bc -.word 0x9a76afe2 -.word 0x6620598f -.word 0x10428ac7 -.word 0x54ed731b -.word 0xed42fef0 -.word 0xbc7747c9 -.word 0x9882fd5d -.word 0x96370941 -.word 0x652c0781 -.word 0x0508f18e -.word 0x347b6501 -.word 0x4fb73b9d -.word 0x039bdc72 -.word 0x5a7c6ce8 -.word 0x51678b1e -.word 0x68de215b -.word 0x6a0e8f69 -.word 0xc7933141 -.word 0x8614e2c7 -.word 0xe5b4ebb5 -.word 0x9091e16a -.word 0x52c158ad -.word 0x72e9d641 -.word 0xaec03bde -.word 0x2682fabe -.word 0xb5562fd8 -.word 0xf6d33f7e -.word 0xba8ced85 -.word 0xb0243ada -.word 0xd563ae19 -.word 0x031e9f66 -.word 0x8f0eb487 -.word 0x6292d3b7 -.word 0x2e82a6f2 -.word 0x63f282c5 -.word 0x0b5e262f -.word 0xb1a3095c -.word 0x192d364d -.word 0x60357b47 -.word 0x181777fe -.word 0xfe8e111b -.word 0x3bfc5551 -.word 0x8be2df74 -.word 0x05243625 -.word 0x4a7d4b58 -.word 0x6948ac1c -.word 0x04f324e4 -.word 0xe1b162d5 -.word 0xa54ca05e -.word 0x08eb689c -.word 0x72ac0d4b -.word 0x1f54c3de -.word 0x6c462a36 -.word 0xc5a1f09f -.word 0x34ae2e32 -.word 0xd4aa79b1 -.word 0x7c8cbf6a -.word 0x9fd528a1 -.word 0xfa3d0867 -.word 0x2c5a9d1d -.word 0xba8ba80f -.word 0xea92a588 -.word 0x7fa2d232 -.word 0x3af5cbe5 -.word 0xc6a6fa03 -.word 0x750ae974 -.word 0x08ee1f1b -.word 0xe76875d1 -.word 0x246fc0a2 -.word 0xbe74a014 -.word 0x2c9c80cd -.word 0x7430d41a -.word 0x8553e761 -.word 0x459b9b67 -.word 0x91a909be -.word 0xfd3c7a21 -.word 0x516eeee0 -.word 0x9c9eee79 -.word 0xf0b0b23e -.word 0x25a2be42 -.word 0xe1bea611 -.word 0xebc5facb -.word 0xa0df7288 -.word 0x0b8415b3 -.word 0x448211ce -.word 0x3a4558e0 -.word 0x8360d49b -.word 0x343ec05e -.word 0xef51622d -.word 0xf83011f0 -.word 0x145920c7 -.word 0xd1c0f20a -.word 0x6cb8306b -.word 0x84b86aef -.word 0x734a9ece -.word 0x5bf282a7 -.word 0x816227a4 -.word 0x96032066 -.word 0x50953cf4 -.word 0x3a9399e4 -.word 0x5ed60af1 -.word 0x2fcc2099 -.word 0xa1445ba2 -.word 0x8cf9ab5d -.word 0xbc735c11 -.word 0xa3e41f2d -.word 0x9f84f526 -.word 0x3aa57ee0 -.word 0x6adf61d4 -.word 0x1a903f0e -.word 0xcc09e038 -.word 0xeacac40a -.word 0xa9c2dcc7 -.word 0x816be42d -.word 0x50dff78a -.word 0x8ae29729 -.word 0xc564dd04 -.word 0x7f7eb181 -.word 0x96510993 -.word 0x1422f3c0 -.word 0x380327e0 -.word 0x8d4fab0c -.word 0xe0261cb0 -.word 0x48164119 -.word 0x819b30c4 -.word 0x53bfc46c -.word 0x1d1685cc -.word 0x4a8e65d7 -.word 0xaec53865 -.word 0x5f029cca -.word 0x733000ba -.word 0x866a7219 -.word 0x99ac3426 -.word 0x9dfb1ff3 -.word 0xb0949152 -.word 0xe3bcd9aa -.word 0xa4e37b70 -.word 0x90bdf937 -.word 0xe815aeea -.word 0x71a71d81 -.word 0x88173ad3 -.word 0x14e0e7d8 -.word 0xa22561b3 -.word 0x95b51f37 -.word 0xeddccf53 -.word 0x11fe014b -.word 0x3dadbf8c -.word 0xc24b4278 -.word 0xc9169eb9 -.word 0xac0e2efc -.word 0x3c45f3a7 -.word 0xec4f4b61 -.word 0x8e400044 -.word 0xd7c1d458 -.word 0xd38b5dc9 -.word 0xa9ea408c -.word 0x8218e6d5 -.word 0xa8d71aef -.word 0x1f9eeb72 -.word 0xc006ef8a -.word 0xee494e28 -.word 0x9c75c8d3 -.word 0xa55ecea3 -.word 0xbe528f5f -.word 0xaa528723 -.word 0x23b136c8 -.word 0xd645f51c -.word 0xca84c36e -.word 0x3ce86caf -.word 0x8deacdfd -.word 0x1b0b2c51 -.word 0x3f248aff -.word 0x5f08a2d9 -.word 0x7e30ff1c -.word 0xc82f6bf7 -.word 0xf161b870 -.word 0xc1bd818b -.word 0x5146080c -.word 0x52d36a1c -.word 0x1831dc99 -.word 0x8c4809bf -.word 0x618d6618 -.word 0x903e5800 -.word 0x6b5078d4 -.word 0xa930bd81 -.word 0xc2443f9f -.word 0x6b348ff4 -.word 0x7e8b9e05 -.word 0xacf91bff -.word 0x327b272c -.word 0xa148154b -.word 0x1bbe0011 -.word 0x4e2da5c3 -.word 0x714b4e67 -.word 0x7eaa3af2 -.word 0x63665fbe -.word 0xdef5abd0 -.word 0x45b4dfe9 -.word 0xce7f3c58 -.word 0xb9fb1433 -.word 0x353156f7 -.word 0x483734d0 -.word 0xb76f3d0d -.word 0x91c214e2 -.word 0x9b15002e -.word 0xdc6a1755 -.word 0x27db6118 -.word 0x2e499bea -.word 0xfd7ecddf -.word 0x4f2bd4e0 -.word 0x9cf5480d -.word 0x48416686 -.word 0x2035b963 -.word 0xd07cf5ef -.word 0xc1318c77 -.word 0x4ab68185 -.word 0x180d55b1 -.word 0xc4c392dd -.word 0x46a1d1a6 -.word 0xc342b862 -.word 0x3f25173a -.word 0xfd5c00cc -.word 0x2336ad46 -.word 0x55889da4 -.word 0x39138f32 -.word 0x9fb25bab -.word 0xc89f72c9 -.word 0x201eb110 -.word 0x8b26df23 -.word 0xee68a529 -.word 0x65199bd7 -.word 0xb8dde8d2 -.word 0xb6c8940b -.word 0x4b9be54d -.word 0xe3d41e86 -.word 0xcd20e807 -.word 0x770a9180 -.word 0x3544a9ab -.word 0x1dc317d2 -.word 0xdc326192 -.word 0x91e16233 -.word 0x850acd17 -.word 0x6a812535 -.word 0x02687050 -.word 0x2e4e54c9 -.word 0x107b8dd3 -.word 0xe435f6a1 -.word 0xefcf4f5e -.word 0x6a6c1f89 -.word 0x9f9406ac -.word 0x97c8aff0 -.word 0xf93bda3b -.word 0xfa90233a -.word 0x2209ef2b -.word 0xef99fa0b -.word 0x9d952c13 -.word 0x5bdf034c -.word 0xc9e8488e -.word 0x09c82cb0 -.word 0xcfd5ed42 -.word 0xe024c92f -.word 0x15e80edd -.word 0x44632809 -.word 0xfbb3fa2b -.word 0xf1760573 -.word 0x9e29ad75 -.word 0xf52ef712 -.word 0x1541a163 -.word 0x697efb21 -.word 0xd9e4ede4 -.word 0x0caa1761 -.word 0x547f8888 -.word 0x25873402 -.word 0x96fead7e -.word 0xfcc8734d -.word 0x7e13db12 -.word 0xd4024d10 -.word 0x10c59df5 -.word 0x6bc91166 -.word 0xf74e5832 -.word 0xf6b08d3d -.word 0x3f66fecc -.word 0x29517ee1 -.word 0x44a97053 -.word 0xef2ae134 -.word 0x1eabd454 -.word 0x42ced739 -.word 0x5070018f -.word 0x72c56c0d -.word 0xc87a0ddf -.word 0x841e244f -.word 0xcb513628 -.word 0x7a36c7b1 -.word 0xd33ffaf8 -.word 0x5a5eef12 -.word 0x9a65d4b1 -.word 0x5fb2efa2 -.word 0x69a9d7fe -.word 0x2df9bc19 -.word 0xdbcd8381 -.word 0x59545e4d -.word 0xf0c8bda1 -.word 0xa7667012 -.word 0x1b2d499b -.word 0xe4adfa33 -.word 0xd8b1fac8 -.word 0x989bfdb7 -.word 0x4470b195 -.word 0xd9643e3c -.word 0x498647b8 -.word 0xe876073c -.word 0xe041bfb8 -.word 0x133252a3 -.word 0x577f0fae -.word 0xfb785556 -.word 0xcd2a0699 -.word 0x3bcde3bc -.word 0x6b944293 -.word 0xe61f9688 -.word 0x03ba25d9 -.word 0x2654d9a5 -.word 0xb58556d3 -.word 0x633ad7bd -.word 0xa5945e0d -.word 0x6a4fe974 -.word 0x7ff99467 -.word 0xa9994176 -.word 0xbc1c848a -.word 0x1d2b5cd8 -.word 0x95c415dd -.word 0xf9f5df48 -.word 0xf5567657 -.word 0x160f47fa -.word 0x86475c7b -.word 0x3391a53e -.word 0xfd9270ea -.word 0x43e31ab9 -.word 0xe7ac6d7a -.word 0x67095749 -.word 0xeba4bd57 -.word 0x15797151 -.word 0x86f64eb0 -.word 0x98f079a1 -.word 0x69cd886b -.word 0x4ad3eb96 -.word 0xd2f2389e -.word 0x17e739bf -.word 0xd60d288e -.word 0xe2aa330a -.word 0xd2db92f6 -.word 0xa4237cbc -.word 0x68f0a2e0 -.word 0x788e479e -.word 0x3eabef0e -.word 0x43a552bc -.word 0x860d84c1 -.word 0x0da41a35 -.word 0x0026e039 -.word 0xab335155 -.word 0xf6aca060 -.word 0xb52001c9 -.word 0x15492805 -.word 0x1ccb423d -.word 0x0fce24cc -.word 0x97c774b9 -.word 0xc04f16ef -.word 0x75423eea -.word 0x0cdd7e75 -.word 0xf0e1bb8b -.word 0xc7c4a5f6 -.word 0x2cd07209 -.word 0xdc911241 -.word 0xec74ef3d -.word 0x4c82706f -.word 0x8f29cf93 -.word 0x01850278 -.word 0x59896384 -.word 0x338d7790 -.word 0xf00d884e -.word 0xbb2a582b -.word 0x40112fca -.word 0xbdd0a171 -.word 0x1f9e69c2 -.word 0x1068b1d9 -.word 0x69bfeb97 -.word 0xd34125b4 -.word 0xecf08dce -.word 0x4cea4c42 -.word 0x48afb867 -.word 0x70f0fe9b -.word 0x640c7725 -.word 0xb1825b3e -.word 0x7916da60 -.word 0x3e6d915e -.word 0x4704dede -.word 0x8eaa5a23 -.word 0x1349effd -.word 0x2cbee38d -.word 0x3096aec8 -.word 0x326daf3e -.word 0x0aa1f303 -.word 0x86d604ec -.word 0xa0d3af8b -.word 0x4b24865e -.word 0xf0508d0c -.word 0x4d824bd5 -.word 0x7f403d64 -.word 0xa4cc48c6 -.word 0xa3482666 -.word 0xef11b335 -.word 0x0bdcdd7b -.word 0x15250dd0 -.word 0x117cb967 -.word 0x1a80d8d1 -.word 0x5f23590d -.word 0x8bb6ae83 -.word 0xc4c1c6a2 -.word 0xdbc59aac -.word 0x97cfd726 -.word 0x8880523a -.word 0x72a667aa -.word 0x36da1e31 -.word 0x373d0383 -.word 0x5b2ea4c4 -.word 0x1e5e3f25 -.word 0xa012e6b9 -.word 0x3f27ccdf -.word 0xf7283574 -.word 0x54d3b35c -.word 0xc214adb6 -.word 0x43470234 -.word 0x3a463a1e -.word 0x7015dceb -.word 0x89324472 -.word 0xf7f48f44 -.word 0x2b970a49 -.word 0x06d49231 -.word 0x156e5111 -.word 0xdb4bbd73 -.word 0x11a1f875 -.word 0xf04b7932 -.word 0x2ea53e0a -.word 0xe966c084 -.word 0x58bea819 -.word 0xe8755def -.word 0x74a5fefb -.word 0x5e58b45f -.word 0x02a859dd -.word 0x66291b07 -.word 0x743e09ab -.word 0xee92d6dd -.word 0x8470a498 -.word 0xd8a5604a -.word 0x72e8b909 -.word 0xa061b5de -.word 0x9b54e38d -.word 0x1f74ad26 -.word 0x96b41350 -.word 0xb653d464 -.word 0x6a9ac0ab -.word 0x2ed6d0e0 -.word 0x2a20a7dc -.word 0x6b752183 -.word 0xf479b740 -.word 0x7682f7b8 -.word 0x3d4cd38b -.word 0x7c07f450 -.word 0xbe57265d -.word 0xd9c8ad1b -.word 0x1f9c03de -.word 0x76f912d0 -.word 0x0d4e3b24 -.word 0x4f5916f9 -.word 0x75892e85 -.word 0x2f3bc8d1 -.word 0x2134d2bc -.word 0xcb78961e -.word 0x36d80ab5 -.word 0xc1f423d0 -.word 0x23a9753d -.word 0x2a3fbd62 -.word 0x316961eb -.word 0xcf9840e0 -.word 0x16cc23dd -.word 0x36d8c06d -.word 0x9c719cab -.word 0x716a6bbc -.word 0xe1cc4fbd -.word 0x4a8588af -.word 0x0bf4c522 -.word 0xb4ee5e78 -.word 0x68053df0 -.word 0x86b4eeeb -.word 0x30ab072a -.word 0xef5bc771 -.word 0xc7a4e48f -.word 0x3f5284b8 -.word 0x5cf319a7 -.word 0x1fb7b7c3 -.word 0xf95cee11 -.word 0x22400487 -.word 0x67a212ad -.word 0x357d9f05 -.word 0x7b65cf89 -.word 0x9b43f687 -.word 0x41823d95 -.word 0x951b37e4 -.word 0xab42c541 -.word 0x3b880eb2 -.word 0xfaf78854 -.word 0x62503c1b -.word 0x90f81ee6 -.word 0xf4d13c88 -.word 0x4ed2cf04 -.word 0x0081012f -.word 0x3ee5a218 -.word 0x19436696 -.word 0x164a697e -.word 0xe8650de0 -.word 0xa4950e55 -.word 0x2be6bc8f -.word 0x62bb3988 -.word 0x5f56fc03 -.word 0x1d98ce88 -.word 0x43796c81 -.word 0x04bdc0ff -.word 0xed209acd -.word 0x73f2a4ce -.word 0x86bd87af -.word 0xd4ffd5e2 -.word 0x9036e1f0 -.word 0x78bb1a1e -.word 0xb8bef034 -.word 0x873f7d2c -.word 0x5447d871 -.word 0xc3074b38 -.word 0x175a5547 -.word 0x947f5169 -.word 0x2964d01b -.word 0x829b4dfc -.word 0x2e077db7 -.word 0x8634b89a -.word 0x594ae79f -.word 0xafb0da11 -.word 0x51cdf186 -.word 0x1ac4e292 -.word 0x9a6c3cfd -.word 0x68b26553 -.word 0xba7a5d22 -.word 0xa3159e96 -.word 0x040cad97 -.word 0x96cb7d03 -.word 0x04df011f -.word 0xe8894931 -.word 0x92918b7f -.word 0x94265d6d -.word 0x5c93f0b0 -.word 0x0cdb6ae8 -.word 0x4e48d9a3 -.word 0x4bc230b3 -.word 0x2c8ec2a5 -.word 0xf9cf9040 -.word 0x42004c0c -.word 0x823a5b1b -.word 0x3cac1567 -.word 0xd8049161 -.word 0x1a8f6882 -.word 0xf9242073 -.word 0x2a6406da -.word 0x420a69f4 -.word 0x713d62e5 -.word 0x4ffe10f9 -.word 0x161b9a90 -.word 0xcab459ae -.word 0x0d9b66b4 -.word 0x496f4a75 -.word 0x03603f2b -.word 0x0cf0462a -.word 0x602b63ee -.word 0x8fc15bf3 -.word 0x00a192ec -.word 0x7248e8e6 -.word 0x5936a4fa -.word 0xf9e55fe0 -.word 0xf956da5e -.word 0x981bd0e1 -.word 0xb6002686 -.word 0x0a58b03c -.word 0x8a85bfa0 -.word 0xe5faac64 -.word 0xde71a968 -.word 0xb6648a85 -.word 0xc3d47f7e -.word 0xf10e8ead -.word 0x97bfc90c -.word 0x2c9bfdae -.word 0xae78a34a -.word 0x3de48acb -.word 0xe3c23c2a -.word 0x3547756d -.word 0xdca26995 -.word 0xa73d86dd -.word 0xa7032c4c -.word 0x36be27b7 -.word 0x77d19f36 -.word 0x85b50d1a -.word 0xfd351ec7 -.word 0xb2cf0a46 -.word 0xbf05a842 -.word 0xfdaa00cc -.word 0x6eadfc97 -.word 0xa0da085f -.word 0x8dc39394 -.word 0x6e808b1a -.word 0x517f4b3d -.word 0x5a2d0649 -.word 0x1603cf73 -.word 0xf147f8ff -.word 0x403a40aa -.word 0xd852efa4 -.word 0x5970d7d5 -.word 0x53b016a9 -.word 0x0a5f4692 -.word 0x7eb554de -.word 0x35b7f4d3 -.word 0x5ecd8282 -.word 0xc4e15c6c -.word 0xf0242619 -.word 0x0f7f3d8d -.word 0xb6f6c530 -.word 0xe4713e80 -.word 0xda101668 -.word 0xd0d25096 -.word 0xc6c0859b -.word 0x7f10a058 -.word 0x0c72a054 -.word 0x3306dbbf -.word 0xcc5f9c16 -.word 0x6419448b -.word 0x7991d249 -.word 0xb1f3aad1 -.word 0x679ef1b5 -.word 0x4391fe5f -.word 0x497843d8 -.word 0xec684bda -.word 0x74d70a2a -.word 0xbeff989c -.word 0xaee7af6d -.word 0x58ddc702 -.word 0x67288065 -.word 0x8085b92e -.word 0x84b2109d -.word 0x982315b3 -.word 0x35f5b05d -.word 0x7106f23b -.word 0xbeb723ee -.word 0x46ad687d -.word 0x6eca604a -.word 0xc4fd011b -.word 0xa74b6ff5 -.word 0x948a1843 -.word 0x18bb6e4e -.word 0xacf6785e -.word 0xbed93905 -.word 0x1de8c5e7 -.word 0x2dc43f90 -.word 0xe50b4b87 -.word 0x75ad95d8 -.word 0xcc786a1f -.word 0x105c23f3 -.word 0xe5328686 -.word 0x97b0ecc2 -.word 0x39d0f8b6 -.word 0xb11a9c90 -.word 0x85c2c5b7 -.word 0x3b660da4 -.word 0xfde10354 -.word 0x07fd7d92 -.word 0x5390d710 -.word 0xd83bc6e9 -.word 0xe1efd28f -.word 0x2e098e95 -.word 0xf4d3089f -.word 0x18e2cf40 -.word 0x5a9c5f74 -.word 0xcb55ad08 -.word 0x24dceede -.word 0x58dd28ff -.word 0x676ac983 -.word 0x81aa9d79 -.word 0x60694252 -.word 0x40dede2e -.word 0x74ccfbf0 -.word 0x7345812b -.word 0xa5b3d3dc -.word 0x1d2f3ac6 -.word 0x0991a6f2 -.word 0xc59aa322 -.word 0xa1805b8a -.word 0xb54b02b3 -.word 0xa4a7317d -.word 0x0f64eefb -.word 0x23ade89e -.word 0xeb283422 -.word 0x848a570d -.word 0x5a7550ad -.word 0xc08992e4 -.word 0x39172df6 -.word 0xf7bcdc27 -.word 0xb281a1b4 -.word 0x3c09c0d1 -.word 0xc12f264a -.word 0x8299c5c0 -.word 0x4706b49a -.word 0x2388831d -.word 0x29b8571b -.word 0x85042ea6 -.word 0x6e0ec5f8 -.word 0xea8935fd -.word 0x569e1b0b -.word 0x93ea3bfb -.word 0xda9e9772 -.word 0xc4d796dc -.word 0xa7aa7e04 -.word 0xe1b8a96f -.word 0xa6b85eba -.word 0xd48c4675 -.word 0xac8b6c81 -.word 0x355fc67b -.word 0x9ba89bf1 -.word 0xbe5b2c5b -.word 0xb0a5b4ff -.word 0x6d7ba104 -.word 0x069826d9 -.word 0x9544ad87 -.word 0xd0435322 -.word 0xe28fbf7b -.word 0x9a2f6ead -.word 0x7d2a5eb7 -.word 0x384ef7b9 -.word 0x319f2e06 -.word 0xd06c6854 -.word 0x06f9939c -.word 0x6ff9298b -.word 0x49b55d88 -.word 0x66e5b22c -.word 0xfecc41a0 -.word 0x1115eee3 -.word 0xbc26fa37 -.word 0xb9feaba1 -.word 0x0e754c7c -.word 0x33233ae7 -.word 0x48a5bf82 -.word 0x2c5c232a -.word 0x62fbeca0 -.word 0xce675d88 -.word 0xfb65c553 -.word 0x908d4224 -.word 0x731abb79 -.word 0x97f2bb05 -.word 0x4f25b5c9 -.word 0x8e08c663 -.word 0x4de3bd88 -.word 0x7f288966 -.word 0x6faa5bb2 -.word 0x8e1be534 -.word 0x91701f62 -.word 0x9b746dc7 -.word 0x690b59fd -.word 0x5ab4d3ab -.word 0x65006057 -.word 0x8666e1c8 -.word 0x0cbb6445 -.word 0xa4028e75 -.word 0xa5fb07bf -.word 0x36c2e0b6 -.word 0xe6dfae48 -.word 0xab1cd2b6 -.word 0xd7b6a195 -.word 0x6da02457 -.word 0xf48a4211 -.word 0x41198936 -.word 0x887cf450 -.word 0x88cc8f91 -.word 0x4d97816b -.word 0x7a1562d4 -.word 0xf34474b6 -.word 0x04e462f3 -.word 0xbd7cc332 -.word 0x27e1e540 -.word 0x89e3a7a6 -.word 0xb34bf6af -.word 0x8437abc0 -.word 0xd4504849 -.word 0xcc50d939 -.word 0x065137c5 -.word 0x3d059b67 -.word 0xbbc2deee -.word 0xb4949941 -.word 0x82df5f60 -.word 0x0c3d3a43 -.word 0x2e3c6a0c -.word 0x5199bbf0 -.word 0x84450da4 -.word 0xba29a179 -.word 0x402afaac -.word 0xa5431db3 -.word 0xa4931e31 -.word 0x5f33637e -.word 0xdac3770f -.word 0x3a5d4f79 -.word 0xc5fdc38c -.word 0x3c45a67d -.word 0xc333f694 -.word 0x732eace5 -.word 0x53bb713b -.word 0xd5616c31 -.word 0x60340ca5 -.word 0xc88d5099 -.word 0x7eed6fee -.word 0x108989f8 -.word 0x4d69aa29 -.word 0x38ae3000 -.word 0x221d193b -.word 0x043657e9 -.word 0x957333ec -.word 0x7fde6766 -.word 0xb0597b39 -.word 0x5ce63119 -.word 0x0792082a -.word 0xdbbff454 -.word 0xbf7f0b6e -.word 0xd6b8a916 -.word 0x6e35ac51 -.word 0x41e769af -.word 0xeeb95efd -.word 0x1493dca1 -.word 0x8c4daa13 -.word 0x1e214eb7 -.word 0x4d476223 -.word 0xef4b5b46 -.word 0xe1d14cdb -.word 0x81961d24 -.word 0x1491122e -.word 0x835be438 -.word 0xe7c50206 -.word 0xdb77d919 -.word 0x0fe9f761 -.word 0x427f1424 -.word 0x7cf9c7b1 -.word 0x0e06f3d5 -.word 0x609289ae -.word 0x90ed8c45 -.word 0x437ac5cd -.word 0xc2d6578c -.word 0xf357761d -.word 0x44165002 -.word 0x83c0ac3b -.word 0xb74df65c -.word 0x2a13db4c -.word 0x857cf0df -.word 0x922ad2b4 -.word 0xd5e582a4 -.word 0x94c334bb -.word 0xe2206331 -.word 0xb784244a -.word 0x230f0c91 -.word 0xc2233833 -.word 0x7e649b01 -.word 0x8ebd736c -.word 0x7c2086fd -.word 0x948d40c9 -.word 0x6a46138f -.word 0x6c9d19c5 -.word 0xdcf1c764 -.word 0x33fb543b -.word 0x5deea359 -.word 0x5e65288f -.word 0x00d23169 -.word 0x1779bd9c -.word 0x7737a6a9 -.word 0xfd5f172d -.word 0x90230989 -.word 0x3f2f1089 -.word 0x0a44f8ac -.word 0x48652f65 -.word 0xf2f1d041 -.word 0x4daa7619 -.word 0xd832f345 -.word 0x9b279241 -.word 0x187a6ed4 -.word 0xe8f31b0a -.word 0x71d44a0d -.word 0x0913ba07 -.word 0xe3269438 -.word 0x9e28fe68 -.word 0x175318ef -.word 0x67692ede -.word 0x6d346cf9 -.word 0x37a7ea8a -.word 0x9f262511 -.word 0xdaaed3b4 -.word 0xa91aa701 -.word 0x31cecb1b -.word 0xfa34b305 -.word 0x9e337a57 -.word 0x281da0b6 -.word 0xd9283c46 -.word 0xf0505719 -.word 0xd4706898 -.word 0xfbc2f0eb -.word 0x88677a7c -.word 0x0ebf50a7 -.word 0xe8eb4ac6 -.word 0xad110f77 -.word 0xfe8c5b9c -.word 0xfdb9bd58 -.word 0xaa971af9 -.word 0x1aa2350c -.word 0xe484fb1f -.word 0x15b7eae4 -.word 0x6a12d89a -.word 0x6ca0044c -.word 0x2a14ab41 -.word 0x528470cb -.word 0xb8ef0a88 -.word 0x266eaf56 -.word 0xad295b02 -.word 0x32fc91b8 -.word 0x248049e1 -.word 0xed834770 -.word 0x3f1bb8fa -.word 0x0164d12c -.word 0x9e4e8683 -.word 0x847bb887 -.word 0x90321242 -.word 0xf682b8a8 -.word 0x4a550b1f -.word 0x8f94bbbb -.word 0xd00b339a -.word 0x351df2a6 -.word 0x9d2c9c8b -.word 0x4e32c5b7 -.word 0xf299076b -.word 0x0b529b97 -.word 0x3183aa1a -.word 0xbc547f6c -.word 0x16d4e8cd -.word 0xa841268e -.word 0x57e4bea8 -.word 0xa63d4c55 -.word 0xa43afbaf -.word 0xb3b1ce03 -.word 0xeecdbd17 -.word 0x2b5a0769 -.word 0x0ea88c53 -.word 0x4ee970eb -.word 0x0c2b6bb3 -.word 0x5faa88a0 -.word 0xfa73d103 -.word 0x381573e7 -.word 0x603e827c -.word 0x09654a2f -.word 0xb7602278 -.word 0x6b00c5b7 -.word 0x8717ba71 -.word 0xef31bd03 -.word 0x46524220 -.word 0xa060bbcf -.word 0x3ea09180 -.word 0xeeb48fbe -.word 0xfcc7e8ec -.word 0x5df0d64f -.word 0xef710879 -.word 0x2c99954f -.word 0x0a91d92e -.word 0x65522b11 -.word 0x500bc7f6 -.word 0x334bc974 -.word 0x50523153 -.word 0x387307f3 -.word 0x5783e5c0 -.word 0xb54ae8a7 -.word 0x3a783e29 -.word 0x93c4ddec -.word 0xd8c11839 -.word 0x82193a0f -.word 0x190ba377 -.word 0x3f47385e -.word 0x1ff9ee6c -.word 0x49040df1 -.word 0xb8d859dd -.word 0xb20755cb -.word 0x7401a1bb -.word 0x0bf55a64 -.word 0x92c94776 -.word 0xf2c0aeff -.word 0x72cf4742 -.word 0x8c986f6b -.word 0x8cf79499 -.word 0x761fe88c -.word 0xf26bf1c4 -.word 0x11d337e8 -.word 0x6c844337 -.word 0xefaa6319 -.word 0x19c35ee2 -.word 0xed0d2817 -.word 0x8ec3ed60 -.word 0x72b98e27 -.word 0xeac1560c -.word 0xf7db8794 -.word 0x248927c6 -.word 0x3ae01f03 -.word 0x0fa38ae4 -.word 0x575f2547 -.word 0x8b013239 -.word 0x590f1f64 -.word 0xa671923f -.word 0x06c851f7 -.word 0x082b7367 -.word 0x71ed1a0c -.word 0x4fc08b87 -.word 0x6a550536 -.word 0xa33cc1b0 -.word 0x913d06f6 -.word 0x0bd84cb4 -.word 0x13b9d0b8 -.word 0x05b29add -.word 0xc0675c66 -.word 0xf0e05794 -.word 0xd650d71b -.word 0x730f4a74 -.word 0xc51078d1 -.word 0x94046532 -.word 0x1350fd6a -.word 0x140b9cf7 -.word 0xc23412d7 -.word 0x848268af -.word 0xa5577892 -.word 0x623f9a45 -.word 0x4697f379 -.word 0x37e5c378 -.word 0x80b3022b -.word 0x7754d6c7 -.word 0x8b986b73 -.word 0x79316b08 -.word 0xbd62b19b -.word 0x15c207a1 -.word 0xe5443e02 -.word 0x320dc64b -.word 0x6953dc9a -.word 0x445c61da -.word 0x029df369 -.word 0x108eb693 -.word 0x0045cf57 -.word 0x800e637f -.word 0x227f421b -.word 0xa45e8708 -.word 0x91da4d59 -.word 0xe0f0036d -.word 0x3d5e602b -.word 0x495444d2 -.word 0xb4292238 -.word 0xca5cef39 -.word 0xd4e4273d -.word 0xeab4585a -.word 0xd9a4a9b9 -.word 0x02a7e31a -.word 0x80a8ac5d -.word 0xab08f0e2 -.word 0xea08efb7 -.word 0x774e837f -.word 0x4ac4b81c -.word 0x137b9364 -.word 0x333497a6 -.word 0x1ae5c2dc -.word 0x7471ecf1 -.word 0x23c65cf3 -.word 0xd679413e -.word 0x256b0bb7 -.word 0x9c4abe85 -.word 0x4d3bd3fb -.word 0x4b533667 -.word 0x308c79fb -.word 0x6c8a2657 -.word 0xc8efa8ff -.word 0x88e71274 -.word 0x7cb96dde -.word 0x37f11989 -.word 0x511497e1 -.word 0xd775ab9f -.word 0x1363eff1 -.word 0xa609b8f3 -.word 0xcb82bae6 -.word 0x89d83c10 -.word 0x56178aa5 -.word 0x3b0693db -.word 0xb0459ffd -.word 0xa6543bc6 -.word 0x2a25726c -.word 0x545f404b -.word 0xd04bcc33 -.word 0x0d1cd0ae -.word 0xe3ea3454 -.word 0x9cf3562a -.word 0x34323b5c -.word 0xee2d52ad -.word 0x56c6d00b -.word 0xa3c7f907 -.word 0x782db7b5 -.word 0x22e94908 -.word 0x58860aa5 -.word 0x261bc99e -.word 0xb6e6dfac -.word 0xf106dc79 -.word 0x0f13edb9 -.word 0x33646360 -.word 0x70b71028 -.word 0x92427f7d -.word 0x6b77782a -.word 0xac1ed0c6 -.word 0xfd9bf013 -.word 0x2043685b -.word 0x2994000c -.word 0x7b6be82c -.word 0xa4fef6aa -.word 0xc19d3bb8 -.word 0x7fe6a492 -.word 0xe2100e3e -.word 0xfd14b90f -.word 0xe4d68b15 -.word 0x5fee15fa -.word 0xfc611a34 -.word 0x93524443 -.word 0xcb05764a -.word 0xd10052b4 -.word 0x04b7b07d -.word 0xff8a286f -.word 0xcd5ed522 -.word 0xa836f9fc -.word 0xb29749d0 -.word 0x5d8debee -.word 0x8e1ac0e4 -.word 0x5e0e7a1d -.word 0x4b8aa46a -.word 0x6a04d1fa -.word 0x6681ffb2 -.word 0xcfc38269 -.word 0x6ffebcf4 -.word 0x246db0a8 -.word 0xc314b19f -.word 0xb54fa0bf -.word 0xea07bcd7 -.word 0xa9d6feec -.word 0x00822bac -.word 0x1f57ae73 -.word 0xf16cbffd -.word 0xaa4a708e -.word 0x6d5c27db -.word 0xe2acbdfd -.word 0x1571b960 -.word 0xd30f8017 -.word 0x36952097 -.word 0x06b20e7e -.word 0xd68f45c1 -.word 0xd9f8d24a -.word 0x01ff6279 -.word 0xae40229e -.word 0xf3b3e7c7 -.word 0xe02da9b9 -.word 0x90a68d83 -.word 0xd6d6ebdb -.word 0xce87228f -.word 0x85afc2e7 -.word 0xe7fe9a44 -.word 0x2d87129b -.word 0x32b8f4bc -.word 0x623bda32 -.word 0xde4ef48c -.word 0x1aa1c45c -.word 0x4f0717e9 -.word 0x7e5cb5e7 -.word 0xfa83acb9 -.word 0x83ede592 -.word 0xfaf43c9c -.word 0x18a8592b -.word 0x5e756a6b -.word 0x2277f1c8 -.word 0x2c2b7529 -.word 0xdfe92440 -.word 0x571ad048 -.word 0x73234c37 -.word 0x7ca40ca9 -.word 0x06b6d642 -.word 0xfac3aff0 -.word 0x9d7e0639 -.word 0xef06a4cc -.word 0x220566d8 -.word 0x9de5f0fc -.word 0xc89ebfc5 -.word 0xbc964163 -.word 0x6867424e -.word 0xcf9da334 -.word 0xe802eec4 -.word 0xafad4aab -.word 0xc06a96a1 -.word 0x30473cbd -.word 0x99205499 -.word 0xab99fe8c -.word 0x33f75db3 -.word 0xb5c6feed -.word 0x1eb38e81 -.word 0xc102ae79 -.word 0x63b825fb -.word 0x03aa1a7c -.word 0x5216a787 -.word 0xc555b8c8 -.word 0x62f865f2 -.word 0x833b663c -.word 0x753fcaa0 -.word 0x0fe7c6f2 -.word 0x796f4a73 -.word 0x725efb97 -.word 0xbd3c6bb6 -.word 0x3dc4be70 -.word 0x06549ad0 -.word 0xd2d28ab6 -.word 0xb7ed75cf -.word 0x05411ee3 -.word 0x30ae2e3f -.word 0xce3bafbb -.word 0x52c4e10f -.word 0x4e9444de -.word 0x98fa18ef -.word 0xe38bf1ac -.word 0xaacd1b8d -.word 0x0743c4e8 -.word 0x6752e12a -.word 0xfb72962d -.word 0xa3bad325 -.word 0x987910a4 -.word 0xad25d61a -.word 0xbb4cd1a2 -.word 0x096f3b0e -.word 0xdbe58243 -.word 0x2f7d48a3 -.word 0x7564e60c -.word 0x3c83e37a -.word 0x05fcff7a -.word 0x28ddc056 -.word 0x7a99ebb5 -.word 0xb8a9dac7 -.word 0x657e2f0a -.word 0x6bfbd917 -.word 0xd82aa7ae -.word 0x9cf29ef2 -.word 0xa9fd3437 -.word 0x99b57f5d -.word 0x44acba20 -.word 0xf268978a -.word 0x4d1e38ab -.word 0x35aa3964 -.word 0xe80810cf -.word 0x730e10ab -.word 0xbf8d8497 -.word 0x7fac2c4b -.word 0x392fd77a -.word 0x622268f9 -.word 0x5a0988aa -.word 0x6f3ad9a2 -.word 0x67c52592 -.word 0x0260fe6d -.word 0x32b0120c -.word 0xb214c27c -.word 0x7e7309ca -.word 0x3ebfdee9 -.word 0xc4dace7f -.word 0x3b6bbe37 -.word 0xe34f9e71 -.word 0xfbac9258 -.word 0x8f888e9f -.word 0x6bf3c141 -.word 0xe451711d -.word 0xa3fd2c03 -.word 0x0fca6086 -.word 0x8bfbd0ae -.word 0xd91a9174 -.word 0xc0cf6378 -.word 0xc9e07e95 -.word 0x45751b2c -.word 0xe53a0b5f -.word 0xc22c7a53 -.word 0x5cfda5fa -.word 0xcbb11916 -.word 0x6b7a1f5a -.word 0x37bab3b3 -.word 0x9c125336 -.word 0xcecfc562 -.word 0xc45e3590 -.word 0xccd7148e -.word 0xf7fde30e -.word 0xc69e9581 -.word 0xf2bf5d07 -.word 0x6df65308 -.word 0x4d6a7dca -.word 0x5665e3d5 -.word 0x5bb5a759 -.word 0x613b096b -.word 0x79b13904 -.word 0x1534c3ce -.word 0x8efa146a -.word 0x970c78d4 -.word 0x586f22b3 -.word 0x42257ac3 -.word 0xfc30f2e2 -.word 0xcada5f7e -.word 0xcdf48e52 -.word 0xb481950f -.word 0x132736c3 -.word 0x4b9a298c -.word 0xb92541c2 -.word 0xc8a22b57 -.word 0x2bdfdf09 -.word 0x99106b26 -.word 0xbf3aa679 -.word 0xd52cd19c -.word 0x1cb4fc70 -.word 0xc594e177 -.word 0x92c240a6 -.word 0xf5229ff2 -.word 0x0c28902d -.word 0xbae7a4e3 -.word 0xf26c252f -.word 0xd202e1c4 -.word 0x3c749a7c -.word 0x6e19fcb4 -.word 0xf67173ea -.word 0x92bd06fb -.word 0x7506d5a9 -.word 0x6494d441 -.word 0x7d04433f -.word 0x14956971 -.word 0x5eb52e22 -.word 0xe4401ffe -.word 0xdcc9cbaa -.word 0x2e79efd8 -.word 0xae245dbd -.word 0xe7102460 -.word 0x327707f9 -.word 0x546c725d -.word 0x8eecb812 -.word 0x47071a7b -.word 0xac290fad -.word 0xc601aefe -.word 0x60c04ae1 -.word 0xd99e22c4 -.word 0xfe593108 -.word 0x343dc7f6 -.word 0xada264d3 -.word 0x1d1580a7 -.word 0xb4795cb6 -.word 0x0d1b8c52 -.word 0x5ecd95db -.word 0xbff4d42c -.word 0xa73f7193 -.word 0x66618392 -.word 0x29251415 -.word 0xcec51cf4 -.word 0x91c268fd -.word 0x36903ec1 -.word 0xda8f2d15 -.word 0xbb126380 -.word 0xacb4cdaf -.word 0x6d903be9 -.word 0xbd559ed4 -.word 0x20a65f9a -.word 0x3a616b69 -.word 0xab9e42c6 -.word 0x6f78cea3 -.word 0x4b7424d1 -.word 0x0268430c -.word 0x33700c8b -.word 0xc3c2f15b -.word 0x0c5abc79 -.word 0x9e639382 -.word 0x646503a0 -.word 0x65d7a161 -.word 0x5b91f8de -.word 0xf1027786 -.word 0xf731497f -.word 0x7b8980f4 -.word 0xcec1c75a -.word 0x83c67904 -.word 0xd32dc62d -.word 0xf69b868e -.word 0x52d75651 -.word 0x9673d26f -.word 0x4a42aa6d -.word 0xb8d25c5a -.word 0x3f7a6f5b -.word 0xd82b29a5 -.word 0xf013fac0 -.word 0x2871d094 -.word 0xab1a95f4 -.word 0x0ba1b163 -.word 0x06177728 -.word 0x161e60b0 -.word 0x7bafe49d -.word 0xd92bd44e -.word 0x1588923b -.word 0xe6a46434 -.word 0x7011abb8 -.word 0x34612b02 -.word 0xa89477ad -.word 0xccfaf167 -.word 0x76d2c23e -.word 0x75794b1a -.word 0xdaa8d179 -.word 0xe708b3d7 -.word 0x2287bc39 -.word 0x9e7e01cc -.word 0xf4a8436d -.word 0xe44b90fb -.word 0x21d7ce4e -.word 0xf6fc89b0 -.word 0xa9659abf -.word 0xe9556466 -.word 0x61f61b54 -.word 0xfee18817 -.word 0xc278ac78 -.word 0x39b3422d -.word 0x88864b2c -.word 0x09fc3b26 -.word 0xb7de9b63 -.word 0x94f4be1a -.word 0x48ef35e0 -.word 0x909807f9 -.word 0xe655905b -.word 0x3bbcd005 -.word 0x7209c0a1 -.word 0x4e743cde -.word 0xd3ade2b8 -.word 0x30ed78d1 -.word 0xf9c38c57 -.word 0xa77c2f9b -.word 0xff36e523 -.word 0x43c01aaf -.word 0x5bca49e3 -.word 0x3ec2df3c -.word 0xbf3797d2 -.word 0x155c19d2 -.word 0x177cbe6c -.word 0xd7dbf888 -.word 0xce8efc3f -.word 0xdf42a4de -.word 0xa163c785 -.word 0x3f8e8ca2 -.word 0x41cc455e -.word 0xcfeb9e15 -.word 0x2f91e76c -.word 0x37a0916c -.word 0xcf382771 -.word 0xdaa8946c -.word 0x3dcf49a7 -.word 0x362627d0 -.word 0xf87e1b8b -.word 0x3b6dbe5c -.word 0xaa992d31 -.word 0xefd51e32 -.word 0x14f4ce17 -.word 0x2a4ad632 -.word 0x8de1ce20 -.word 0x33d3635b -.word 0xfdb7ae68 -.word 0x7f5254d7 -.word 0xeca66d25 -.word 0xb2a092bc -.word 0x4508ffbb -.word 0x3c7324e0 -.word 0x86badf74 -.word 0x746ab27a -.word 0xeff448c5 -.word 0x43704b0d -.word 0x4f3f633d -.word 0x5365643e -.word 0xc18b7696 -.word 0xb260d830 -.word 0x975c1457 -.word 0x2eaf288d -.word 0x9fffda67 -.word 0x8ebf2fe6 -.word 0xce126d89 -.word 0x596167b4 -.word 0x4ff57679 -.word 0xd5c0090b -.word 0x0246907d -.word 0xebe03b1f -.word 0xc566ff98 -.word 0xc774ce72 -.word 0x72127843 -.word 0x479c2494 -.word 0x4f900758 -.word 0x9a36d660 -.word 0x25e9d459 -.word 0xee92804c -.word 0xe06a1a57 -.word 0x5efb29a3 -.word 0xcf8b354c -.word 0xdb9def96 -.word 0xe10b1c03 -.word 0xf474a1be -.word 0x00de9d99 -.word 0xd528b3d7 -.word 0xd896c805 -.word 0xf11efda2 -.word 0xb122b99f -.word 0x2f81faf7 -.word 0xa0a6b304 -.word 0x96cf4f5a -.word 0x3c99343c -.word 0x2b672ec1 -.word 0xcfa43172 -.word 0xab3b7699 -.word 0x2872f037 -.word 0x69af0f36 -.word 0x5607fffc -.word 0xfd4dea0b -.word 0xa7ec8ca6 -.word 0x44f0ecf3 -.word 0x468f5aa0 -.word 0xe5ef27ff -.word 0x90cec730 -.word 0x8fdd17ac -.word 0x89c9a15e -.word 0x31dc1e04 -.word 0x062effb7 -.word 0x854cb67d -.word 0x3821fe4f -.word 0xe39df37f -.word 0x7ad2440e -.word 0x5becb2a2 -.word 0xec967795 -.word 0xa824201b -.word 0xcd9423f4 -.word 0xc33537f8 -.word 0xb2348d39 -.word 0xce2922bc -.word 0x5d2b3911 -.word 0x88507eca -.word 0x48e362fa -.word 0xd7bfe78b -.word 0x68e476d8 -.word 0x6418edda -.word 0xad20da6a -.word 0x0c937ff4 -.word 0x05cb1e82 -.word 0xe066be60 -.word 0x2aea7cc0 -.word 0x994afb52 -.word 0x65f6b5d6 -.word 0x76494f88 -.word 0x3d33e4d0 -.word 0xa3494c2b -.word 0x0a37a549 -.word 0x3d0c82ec -.word 0xceb44359 -.word 0xb7c274b4 -.word 0x8f8d5442 -.word 0x426499dc -.word 0x01da605e -.word 0x20c6c3c7 -.word 0xf2801afd -.word 0xf83067d0 -.word 0x5c95638d -.word 0xab1ad5a0 -.word 0x6f38ff7c -.word 0xd454fd78 -.word 0x6cd2d685 -.word 0xdd985d34 -.word 0x080ae905 -.word 0xc8bfb478 -.word 0x6265f66f -.word 0xfa2bde80 -.word 0x35351324 -.word 0x2143ab92 -.word 0x998e2f82 -.word 0x7a849713 -.word 0x2e395500 -.word 0x26cbe049 -.word 0x65ae6fd1 -.word 0xc78dc98b -.word 0x90c40fc4 -.word 0xadc4d6d9 -.word 0x3043fe5f -.word 0x9a3f6b7a -.word 0x034d6b6c -.word 0x00e1b131 -.word 0x0c3db18d -.word 0x1cd1330e -.word 0xdfca840a -.word 0xeed279b6 -.word 0x8aad2dd3 -.word 0x4f9c0f36 -.word 0x62c727d3 -.word 0xc5ebebc4 -.word 0x9c0e575a -.word 0x7847aaba -.word 0xa56b43c7 -.word 0x86b43d27 -.word 0xf24f740a -.word 0x2e3ec461 -.word 0xc12dc8ad -.word 0x0ff42ea4 -.word 0xeacd5e8a -.word 0xd2918577 -.word 0xeceef544 -.word 0x2d580699 -.word 0xb5d03040 -.word 0x4f41a419 -.word 0x737c219f -.word 0xb09b5e48 -.word 0x663bb298 -.word 0xf82f064c -.word 0x166f186a -.word 0x5f5a9f7e -.word 0x24e223e7 -.word 0xeb489a22 -.word 0x9a92ad3a -.word 0xa3fba284 -.word 0x796ad44e -.word 0x5242cd75 -.word 0x024dd81c -.word 0x6875af7e -.word 0x5eb55388 -.word 0x704da150 -.word 0xa9914198 -.word 0x3cde3698 -.word 0x34869f92 -.word 0x1fcbaf84 -.word 0xc95959b8 -.word 0xfdc65961 -.word 0x2e16cbab -.word 0x40798b08 -.word 0x2e91d2d0 -.word 0x6437430f -.word 0x8a07ac4b -.word 0xe843ed29 -.word 0x304fe2c7 -.word 0x4837a60e -.word 0xe6eb7c9f -.word 0x20356451 -.word 0xeae6cc61 -.word 0xf4e1d41c -.word 0xcb764e9a -.word 0x31095ae4 -.word 0x8b230b94 -.word 0xc7fabc03 -.word 0x80efdcb9 -.word 0x411c5e29 -.word 0xa1071406 -.word 0xbe4eca73 -.word 0xaa7866ce -.word 0x2f5a4eab -.word 0x11de4a73 -.word 0x4f54489c -.word 0xb60d356f -.word 0x7ec13edd -.word 0xfc9d8f97 -.word 0x4591d7e3 -.word 0xd45f28fa -.word 0x0cc72864 -.word 0x38de5cdf -.word 0x0f09ea97 -.word 0xb513da40 -.word 0xf31e68bb -.word 0x5aacefa5 -.word 0x49b70a7d -.word 0x1ccf2b7c -.word 0x38acebd4 -.word 0x589a130b -.word 0x22e0a321 -.word 0x94512e54 -.word 0x694e36c3 -.word 0x118ed370 -.word 0xb5227514 -.word 0x6d96fae1 -.word 0x654d8f15 -.word 0xde93ef90 -.word 0x4e489cb4 -.word 0xcee822d2 -.word 0x243af505 -.word 0xf2a66d0e -.word 0x18e74141 -.word 0xdedb643d -.word 0xfd840a3e -.word 0x58f05a76 -.word 0x921ed397 -.word 0xa486caba -.word 0xd806e5eb -.word 0x481ac0c2 -.word 0xb3563ca5 -.word 0x6cf80d1b -.word 0x04ac8c42 -.word 0xae182490 -.word 0xe91e7f61 -.word 0x734c2941 -.word 0x67c961b0 -.word 0x8b885a2b -.word 0xf915b324 -.word 0xa2daf1c3 -.word 0xcf82055a -.word 0xc5bb06af -.word 0x05076bf4 -.word 0xa6072df6 -.word 0xfb0a749f -.word 0xa3e4ae89 -.word 0x36a71c8a -.word 0x9205ae5a -.word 0xf9920797 -.word 0x68f74329 -.word 0x46530230 -.word 0xf39c8733 -.word 0xbaa8f42e -.word 0x5b241506 -.word 0x683b710e -.word 0x0f61137b -.word 0x1abfe174 -.word 0xd51f92db -.word 0xc53d72b5 -.word 0xaea6575c -.word 0xfb12dd1f -.word 0x5755c18a -.word 0xf3f177d4 -.word 0xb6b2db1b -.word 0x04161a59 -.word 0x7b82790b -.word 0xc1137279 -.word 0x876fd323 -.word 0x4b0b795c -.word 0xf6da36b9 -.word 0x73d023e9 -.word 0x5a6ed6ed -.word 0x8cebb59f -.word 0x4ebddc4c -.word 0x57bdb0ae -.word 0xad8b163a -.word 0x04fb789c -.word 0x2466ca6f -.word 0x2e577248 -.word 0x4ffac1de -.word 0x7598440c -.word 0x1b1307d6 -.word 0xe497a599 -.word 0x15ed2bc1 -.word 0x1641b439 -.word 0xb9591661 -.word 0x5b3b4a64 -.word 0x404a49c4 -.word 0x93054909 -.word 0x02e8cceb -.word 0x3b7313ec -.word 0x7ccdf4e7 -.word 0xf9237b29 -.word 0x6a44ce2c -.word 0xbca0b715 -.word 0xa2908323 -.word 0x11859d7d -.word 0x9a897837 -.word 0xcd0c828e -.word 0xeb33dc20 -.word 0x9464cdbc -.word 0x872dcc07 -.word 0xa1edf2d3 -.word 0xdc6d5eb8 -.word 0xd482a0f3 -.word 0xe234c4d9 -.word 0xfa1fee21 -.word 0x647bd6c4 -.word 0xec68bfb6 -.word 0xa20ff13e -.word 0xeef31e06 -.word 0xaf2014a0 -.word 0xa8ab8e4e -.word 0xbeb49c25 -.word 0x79e20b8c -.word 0xb601232a -.word 0xf03d8713 -.word 0x2d11501c -.word 0x9b98e108 -.word 0x9c344086 -.word 0xa7d4983d -.word 0xcd761d4e -.word 0x5e2e023f -.word 0x100d2070 -.word 0x4e8edf06 -.word 0xee34f81e -.word 0xc293a5c1 -.word 0xf4d6c972 -.word 0x95d85c9a -.word 0xedc94ac4 -.word 0x605f51a5 -.word 0x90642aa8 -.word 0xc0a0e601 -.word 0x5cab0808 -.word 0x294ead6d -.word 0x26345c9b -.word 0x8bef6eca -.word 0x48c915c4 -.word 0x646ca01d -.word 0xe1bd5382 -.word 0xcc3ec474 -.word 0x101ab5e4 -.word 0x8fc57430 -.word 0x81df8050 -.word 0x3fafdeb4 -.word 0x353938a8 -.word 0x254b05a9 -.word 0xc5d675a5 -.word 0xe9d9c030 -.word 0x6d5a8e81 -.word 0xdc834719 -.word 0x5366e159 -.word 0x10e48278 -.word 0xd8220677 -.word 0x647df002 -.word 0x5b1692ba -.word 0x67c60b50 -.word 0xfa84aa6b -.word 0x2b4ab6cd -.word 0x1828c1ba -.word 0x89df838c -.word 0xc9c00507 -.word 0x0422706b -.word 0x802efb97 -.word 0xf4ec2c1e -.word 0x7c0a68a4 -.word 0x2d418fb5 -.word 0x53c9dfa0 -.word 0xc8b2698b -.word 0x67cc1969 -.word 0x862a1779 -.word 0x42d67c6a -.word 0xe5c1cf5a -.word 0x8d3cc8b3 -.word 0xbcff3104 -.word 0x46ce1009 -.word 0x92a809eb -.word 0x03ec0739 -.word 0x93bb64a2 -.word 0x7cee4575 -.word 0x43709a36 -.word 0x2bb4df56 -.word 0xa7708509 -.word 0xafc9f7f5 -.word 0xdf988216 -.word 0xb71069bf -.word 0xf6b2b6be -.word 0x61382495 -.word 0x01b05688 -.word 0x850efd94 -.word 0x5599b795 -.word 0x99e06ae5 -.word 0x8552a00b -.word 0xf8dc53f9 -.word 0xfec2d077 -.word 0xbc9ea255 -.word 0x57057078 -.word 0x5413c867 -.word 0x3ba347e5 -.word 0x2afea1f1 -.word 0x7e69b359 -.word 0xaee054e3 -.word 0x75232e91 -.word 0x7e10f96f -.word 0x56fcdea6 -.word 0x5b0636aa -.word 0xeb6994c2 -.word 0x6098c57a -.word 0x055a1551 -.word 0x9b281f3e -.word 0x90af8083 -.word 0x11c8fb3b -.word 0x84692c13 -.word 0xcbacee38 -.word 0x43d9b53c -.word 0x56ac4bb9 -.word 0xa65a81bd -.word 0x9afafff2 -.word 0xe636ee4c -.word 0x45383ba0 -.word 0x6d36908c -.word 0x2c5c2d39 -.word 0xff04d6a8 -.word 0x5f79e07b -.word 0xcc7865f0 -.word 0x8cb9755c -.word 0x185eb509 -.word 0xe6e8800a -.word 0x3b257c2b -.word 0x05f34d32 -.word 0xf04869d3 -.word 0x45e5f8eb -.word 0x0cfd89d6 -.word 0x20e1ee1e -.word 0xabf3673e -.word 0xb4edd551 -.word 0x78ecd6bb -.word 0x76e9b98f -.word 0x461eb32a -.word 0xe7dd7033 -.word 0x164ec8e7 -.word 0x17494e9b -.word 0xd7eed4f1 -.word 0xdf4f6f04 -.word 0xbc53b1cb -.word 0xfee6c6fa -.word 0xe8a8ad30 -.word 0x5709bfe3 -.word 0x2315629a -.word 0x99c365cc -.word 0x0dd72c44 -.word 0x759bbf4d -.word 0x1246d668 -.word 0xcd1532c0 -.word 0x089e062a -.word 0xcf703b6e -.word 0xec2e79d0 -.word 0x1fa4828f -.word 0x7b94202b -.word 0x1384f28b -.word 0x3f6a8b16 -.word 0x1558106c -.word 0x6d370489 -.word 0x26e824db -.word 0x7eadb11e -.word 0xca3cb0c7 -.word 0x8deb37e6 -.word 0xfb9b60ee -.word 0xcfeb4a3c -.word 0xe9bce54b -.word 0x4f66e058 -.word 0xbba5e828 -.word 0xd7e67c69 -.word 0xffa32377 -.word 0xe14e36fa -.word 0x60f217b2 -.word 0xf8fced87 -.word 0x82cccaa7 -.word 0xda46b55a -.word 0x0eec65d6 -.word 0x9753c440 -.word 0xb4061e29 -.word 0xeff8c0c5 -.word 0xb836f7db -.word 0x57ef493b -.word 0x766216b1 -.word 0x9febb48e -.word 0x219a405a -.word 0x5402edc7 -.word 0xff76e8e9 -.word 0x3bccbe45 -.word 0xba5c91ab -.word 0x0e37db9c -.word 0x3bdc58e2 -.word 0x15ccf669 -.word 0x692ce8f0 -.word 0x2f7511a9 -.word 0x0136da95 -.word 0xf1039056 -.word 0x5cf70b51 -.word 0x36368a86 -.word 0x242dec9e -.word 0x25b66fdb -.word 0x53f80a9a -.word 0x776b8915 -.word 0x16be222e -.word 0x9e3b1258 -.word 0x220b8bd1 -.word 0xb28bf27c -.word 0x39f55059 -.word 0x984eef43 -.word 0xb1d74f32 -.word 0x31648e62 -.word 0xe0b439e7 -.word 0xa4a249df -.word 0x5223d56a -.word 0x64b77cf6 -.word 0x6f8bc6a2 -.word 0xfdf7f339 -.word 0xc851a693 -.word 0x0ae00b92 -.word 0xd6f37309 -.word 0x89b19de6 -.word 0xd0a23c9e -.word 0x26cd5c82 -.word 0x528a5078 -.word 0xf5de04fb -.word 0xdde672bd -.word 0x9cad0876 -.word 0x81f876ee -.word 0x3f99ea28 -.word 0x5ee5605d -.word 0x81df1e0b -.word 0x70af483f -.word 0x7df3c6df -.word 0xad49454c -.word 0xeb149578 -.word 0xb14524d8 -.word 0xcdf74437 -.word 0x21ab964b -.word 0x8a9a3246 -.word 0x5cb14be1 -.word 0x1fc3d9c3 -.word 0x4a354f3b -.word 0xde9911d2 -.word 0xffd5af5f -.word 0x71601d8e -.word 0x16cc561c -.word 0x8b91c59a -.word 0x275d2d0d -.word 0x6df41e9e -.word 0x1bb0d4e8 -.word 0x98ea6bd7 -.word 0x49e65b3c -.word 0x4cb282b1 -.word 0x36eb949e -.word 0x402c4c52 -.word 0xc1d11a89 -.word 0xdbfd3c1b -.word 0x37acda43 -.word 0x1d397090 -.word 0x90382df4 -.word 0x4dc7af2a -.word 0x206f870a -.word 0xbf5206ec -.word 0x9f0e8325 -.word 0x602c679e -.word 0xea74b2cd -.word 0x85222bfc -.word 0x9c54fda5 -.word 0x8ac6f852 -.word 0xc9f956c4 -.word 0xf42126ea -.word 0x2c510f53 -.word 0x88763860 -.word 0xb173a6a0 -.word 0xd5b65d8f -.word 0xd06e7f47 -.word 0x0ccc5993 -.word 0x257b025f -.word 0xcf33c157 -.word 0x4f748fe1 -.word 0xe7efd717 -.word 0x851cf58f -.word 0x877da1e2 -.word 0x59817163 -.word 0x08f567b6 -.word 0x6c1cc975 -.word 0xa058d81d -.word 0x2e916ac3 -.word 0x401b2f5b -.word 0x9056828c -.word 0x95837e2d -.word 0x9e0ea42a -.word 0x23adaee9 -.word 0xca83b9a7 -.word 0x70d2b218 -.word 0xfb629cd8 -.word 0x274e93b2 -.word 0x0cf3749e -.word 0xd3ad08de -.word 0xed6bdcc9 -.word 0x41f32aa9 -.word 0x6e157f58 -.word 0xa100435c -.word 0x9ccf552b -.word 0xa86c95ee -.word 0xfd21cb99 -.word 0xfd26847c -.word 0x028d0138 -.word 0x173f9471 -.word 0x87c431cd -.word 0x56c92af0 -.word 0x2cfc298e -.word 0x8777cf42 -.word 0x5ae9b201 -.word 0xfaa82b0f -.word 0xfcb4cfb2 -.word 0xea972915 -.word 0x64c7bbd5 -.word 0xd9c900a3 -.word 0x7df0ac85 -.word 0x07e86789 -.word 0xb6fa7082 -.word 0xca6c96a5 -.word 0x30c71de3 -.word 0xa697a4ab -.word 0xc5ca9b3f -.word 0x3a9b7237 -.word 0x5c2f11b0 -.word 0xd60b6ad7 -.word 0xef72bb02 -.word 0x2e4058de -.word 0x7f1e580b -.word 0x5463cf6c -.word 0xd881fb66 -.word 0xd946c4e9 -.word 0x4568b215 -.word 0x8669c1d5 -.word 0x6350a66e -.word 0x58ccc78a -.word 0xc8bd1e33 -.word 0x1c187011 -.word 0x37f4ff37 -.word 0xb50bae22 -.word 0x8154f02a -.word 0x7499ae8a -.word 0x3bf604b8 -.word 0x5850551c -.word 0x8167919c -.word 0xe4aa285d -.word 0xdfdcdec3 -.word 0xbf2b22bd -.word 0x8af70739 -.word 0xab959759 -.word 0x9823ffbf -.word 0xf0255fd5 -.word 0xca085ef9 -.word 0xd5b31458 -.word 0xc4026fa1 -.word 0x900d0c32 -.word 0x6ef2bac7 -.word 0x72f5a051 -.word 0xe933c0a0 -.word 0xdb1abb2f -.word 0x2b0009f9 -.word 0xec40c3ee -.word 0x1ee8afd7 -.word 0x68ea2376 -.word 0x0c859f69 -.word 0x0621e462 -.word 0x73605408 -.word 0xd22859ec -.word 0x350d8535 -.word 0x27acf516 -.word 0xcb19d768 -.word 0xc9d24f4f -.word 0xf2904d1d -.word 0xd439ed9c -.word 0x44752d43 -.word 0x3de47c54 -.word 0x4ed7eaf2 -.word 0xc1077d56 -.word 0xe54265c2 -.word 0x63bfa56d -.word 0xfdfcc201 -.word 0xcd59bd06 -.word 0x53639924 -.word 0xbea048a5 -.word 0x5effe100 -.word 0xe2f4e444 -.word 0xa7a2fb2c -.word 0xa7df7f26 -.word 0x9358d974 -.word 0x60b3c144 -.word 0x9f3c09e8 -.word 0xe4022330 -.word 0x339b7324 -.word 0xb81cc2a0 -.word 0xb0407810 -.word 0x88c07505 -.word 0x604f03b4 -.word 0x631391a7 -.word 0x4a5d2e70 -.word 0xed8051bc -.word 0x2242601c -.word 0x244b903d -.word 0xaf0a177c -.word 0xd14d196c -.word 0x0ea71b3c -.word 0x4ecc17d4 -.word 0xe2279d9d -.word 0xf234d330 -.word 0xabfcf7e3 -.word 0x7a3860cb -.word 0x78e6bfde -.word 0xd34ed2e0 -.word 0xf937ae97 -.word 0x88b19743 -.word 0xaf2d6491 -.word 0xd0237fc8 -.word 0xd3466803 -.word 0x73107653 -.word 0x0c4ba434 -.word 0xf7017bc6 -.word 0x6e2077a2 -.word 0xaf3d7ff5 -.word 0xa04845be -.word 0x1b6a0f17 -.word 0x0a050efc -.word 0x7bd92809 -.word 0xecb379d5 -.word 0x91bf62c3 -.word 0xd46e750b -.word 0x54dfe065 -.word 0x8e65d101 -.word 0xcc662613 -.word 0x4b9b6410 -.word 0x64df2e53 -.word 0xec0bd5d1 -.word 0x3b73553e -.word 0x2755473f -.word 0x6dc71250 -.word 0x51d05745 -.word 0xb11e6e8f -.word 0x675c7011 -.word 0xa6d44d0d -.word 0x33978c67 -.word 0xc2963410 -.word 0xea1a3e3c -.word 0x4870acfa -.word 0x808d2e74 -.word 0xf1c95557 -.word 0x0f166563 -.word 0x21589a27 -.word 0x4bceefd1 -.word 0x6e101492 -.word 0x6afad03c -.word 0x02d0a4c3 -.word 0x4bbac1a1 -.word 0x06b840b0 -.word 0x62a05eeb -.word 0x512ea951 -.word 0x6a09de06 -.word 0x997390ef -.word 0x01c8e6bf -.word 0xbc06678e -.word 0x9b95d4de -.word 0x109dbd28 -.word 0x7cde8fd3 -.word 0xf3b57346 -.word 0xf365bac8 -.word 0xe7922a99 -.word 0x30bf4635 -.word 0xd2ba4377 -.word 0x8b064702 -.word 0xb79dcc60 -.word 0xa9778fac -.word 0xc6f970e9 -.word 0x76cfe0a9 -.word 0x2b45ecf3 -.word 0xd19e89e7 -.word 0x1117f52b -.word 0x4bfd7763 -.word 0xd5b8a894 -.word 0x51923e6c -.word 0x778cc19b -.word 0xf33bf013 -.word 0xd58ce579 -.word 0x9ebf9832 -.word 0xbaafcbb6 -.word 0x508f1713 -.word 0xa1554221 -.word 0xd9e2dcdc -.word 0x28abe43f -.word 0x61a8e156 -.word 0x8456d716 -.word 0x31e8803b -.word 0xedbe70f8 -.word 0xd94117d5 -.word 0x0b073299 -.word 0x72eea74e -.word 0x806ae367 -.word 0x048ee4ae -.word 0xd1b10d10 -.word 0x68fd38c0 -.word 0x39a55a6a -.word 0x4f296d03 -.word 0x26a949a2 -.word 0x9a95279e -.word 0xfbcfc069 -.word 0x747f0c91 -.word 0x0ebb7dc1 -.word 0xd98f3fce -.word 0xcd81f002 -.word 0x71c824d5 -.word 0xaf1617bf -.word 0x365cea9a -.word 0xce1d9dbd -.word 0xfd4d63f2 -.word 0x2e1be62e -.word 0x674c00c9 -.word 0x53d38ce6 -.word 0x1fa62300 -.word 0x19f23c4d -.word 0x5af3bb33 -.word 0x0258902a -.word 0x927a9be5 -.word 0x31f501c7 -.word 0x8416473c -.word 0xee1f8213 -.word 0xc9c67561 -.word 0x3376b102 -.word 0x100c49e5 -.word 0xa2f11fb6 -.word 0x02a73388 -.word 0x772bb34b -.word 0x1b72c34c -.word 0x988f9a18 -.word 0x77b80718 -.word 0x8363e00e -.word 0xb80f625c -.word 0x5a6b601d -.word 0x5af16a6a -.word 0x567fa509 -.word 0x1a1bc84c -.word 0x2ff028b6 -.word 0x3dbabb64 -.word 0x6bd76e53 -.word 0x05e80216 -.word 0xdcfb849c -.word 0xcec27601 -.word 0xf93481d7 -.word 0xdabdb302 -.word 0x05137464 -.word 0xb54467e8 -.word 0xda7d3d46 -.word 0xe4d1bba4 -.word 0xc716bd65 -.word 0xeaf3ac2e -.word 0x9a1631ec -.word 0x5771ba94 -.word 0x6a36f849 -.word 0xa9075c00 -.word 0x9b560a46 -.word 0xb4eed944 -.word 0x112aaca3 -.word 0x58d8c07c -.word 0xc9407df3 -.word 0xaa2c8e8a -.word 0x6aa35012 -.word 0x8136749b -.word 0x30c990d7 -.word 0xb335824f -.word 0xc6328379 -.word 0x41bd3389 -.word 0x4ef87969 -.word 0x69870a30 -.word 0xc2c7d136 -.word 0x06137622 -.word 0xf047ea89 -.word 0xfb9485da -.word 0xced97728 -.word 0xa193b167 -.word 0x64dd5bb0 -.word 0xd8f18b41 -.word 0x03b663db -.word 0x1c5f6640 -.word 0xa2324471 -.word 0x4036a4a3 -.word 0x3c9c4946 -.word 0x15ad4baa -.word 0xc6482538 -.word 0xda5a40aa -.word 0x8e03b644 -.word 0x0a82c597 -.word 0xbbcacdd5 -.word 0xba9ab453 -.word 0x59eecb08 -.word 0x2bb4f55d -.word 0x55d13736 -.word 0x45bf248d -.word 0x291e95dc -.word 0xf3db95af -.word 0xc2188176 -.word 0x7d966c51 -.word 0x541b7914 -.word 0x1dc342e9 -.word 0x90921eef -.word 0x5994d596 -.word 0xbf1d689f -.word 0x24fa389f -.word 0x700d107a -.word 0x87b22576 -.word 0x99270ab8 -.word 0x4fdeea25 -.word 0x4ee10569 -.word 0xcc5acacc -.word 0xaf45de7d -.word 0x8dcf5e46 -.word 0x88a753e0 -.word 0x3fa66305 -.word 0xfaa6f2df -.word 0x1548e563 -.word 0x8033693a -.word 0x0bcf0fa2 -.word 0x08f182e7 -.word 0xc5b29ad9 -.word 0x9056d5c7 -.word 0x5dbe7e42 -.word 0xd0f521d0 -.word 0x06cc8a44 -.word 0x59885ed4 -.word 0xf8266d4e -.word 0xcff196e3 -.word 0x8157f025 -.word 0xbf1c025b -.word 0xee77360b -.word 0x627f24ea -.word 0x172c12d5 -.word 0xd3f93d13 -.word 0x872fed44 -.word 0xe0789af0 -.word 0xa902e316 -.word 0x41a44824 -.word 0x0608f3a2 -.word 0x94b1adf0 -.word 0x744632be -.word 0x5966ed1a -.word 0xb171a29f -.word 0x61ef1723 -.word 0xd02af581 -.word 0x1004f64c -.word 0x053d4729 -.word 0x5e9d2cc2 -.word 0x2b662f4d -.word 0xe6f36575 -.word 0xa39aba7a -.word 0xf69f690c -.word 0x4b07deac -.word 0xd93a3834 -.word 0xfa7e32d7 -.word 0xdd92dc19 -.word 0xc3d2cd6b -.word 0x214c8a34 -.word 0xe61e40c3 -.word 0x1804d4be -.word 0x5a8cad44 -.word 0x2e15dc68 -.word 0x1f7f1ab3 -.word 0xf75eb520 -.word 0x9e538d98 -.word 0xe422e1e6 -.word 0x5f8a7b04 -.word 0x621a7eab -.word 0xd4348549 -.word 0xf81276a5 -.word 0xc47223f1 -.word 0xe042574e -.word 0xd92a59d3 -.word 0xc35a3ff3 -.word 0xe91e126b -.word 0xc451e726 -.word 0x018c699e -.word 0x2fd2c315 -.word 0x563f2ea4 -.word 0x3d153fc0 -.word 0xf68d2307 -.word 0xde437b5a -.word 0x8a8d3f85 -.word 0x3d27ee5b -.word 0x1ad32866 -.word 0x0ce624cf -.word 0x301f4a14 -.word 0x42216fed -.word 0xdafd3d89 -.word 0x4ef6efff -.word 0x7d9798dc -.word 0x99b8f645 -.word 0xf9ca3325 -.word 0xb499be1b -.word 0x45727491 -.word 0x77e779fc -.word 0x55360f8f -.word 0x398ac714 -.word 0xc2a98dba -.word 0x9132f784 -.word 0x59cfcb58 -.word 0xa422c81e -.word 0x1f19d74a -.word 0x982b4fbb -.word 0xd0b4b3df -.word 0xed09a57f -.word 0x88f08f1a -.word 0x3e8bc723 -.word 0xbf1b0564 -.word 0xfde58df0 -.word 0x5506925d -.word 0x52df62a1 -.word 0x2ceaa1c7 -.word 0x55ff1ef7 -.word 0xc3ed9642 -.word 0x8fc9bc91 -.word 0x310eddd2 -.word 0x3673de0a -.word 0x2c21cd5b -.word 0xa28964fb -.word 0x1e22c98f -.word 0x3a77e932 -.word 0x63bbabce -.word 0xcb00e32c -.word 0xe41209c3 -.word 0x69bfb87f -.word 0xce88c128 -.word 0x33545407 -.word 0x3eb40eed -.word 0x6029ee08 -.word 0x99a4b099 -.word 0xb034f0fb -.word 0xbc40a0b3 -.word 0x3a87a611 -.word 0x1b34f265 -.word 0x2fd5bbe4 -.word 0x25f3c0a4 -.word 0x96a611db -.word 0xee62789e -.word 0xd79b82f5 -.word 0xc4e8c7b4 -.word 0x8dbf616c -.word 0x415d2820 -.word 0xec9ebd04 -.word 0xa47b4030 -.word 0xfedacea4 -.word 0x95e577eb -.word 0x2dad42c6 -.word 0x2f8d6b4a -.word 0xdf9dbf2b -.word 0x2735600f -.word 0x72c6f1fe -.word 0x724c4504 -.word 0x5b4f274a -.word 0xf71a6fc9 -.word 0xe6558eb8 -.word 0x1eb783b1 -.word 0xf910679c -.word 0x8e85f0bc -.word 0x245405e1 -.word 0xdb4e939a -.word 0x5fbd7c3e -.word 0x750995da -.word 0x3fb90150 -.word 0x82e1c709 -.word 0x47a09894 -.word 0xf8fc1b3b -.word 0x1d435546 -.word 0x5fd356f3 -.word 0x6ddbc383 -.word 0xd388d001 -.word 0x7f8c5947 -.word 0xb49c0eb8 -.word 0x3708e4b5 -.word 0xc06e098e -.word 0x904e89f7 -.word 0xe0d9c90e -.word 0xe4d7f14e -.word 0x6326485e -.word 0x9595f429 -.word 0xb390c47a -.word 0xec672394 -.word 0x27e93b41 -.word 0x84c00525 -.word 0xd30e8890 -.word 0x263f5f5a -.word 0xfd99bd31 -.word 0x9a09c151 -.word 0xa6d2201d -.word 0x083c623b -.word 0x736056fe -.word 0x8007f89c -.word 0x38ae7fff -.word 0xfec529a9 -.word 0x9052770f -.word 0x641ab710 -.word 0xd24c29ba -.word 0xeb1fa8c6 -.word 0x47b9d678 -.word 0x0767c200 -.word 0x4e12055e -.word 0x3fec7514 -.word 0x6bbcefcc -.word 0xfffaf4d0 -.word 0x13d8ec0b -.word 0x68c351b4 -.word 0x12499dcd -.word 0x59e71af2 -.word 0xd6176c51 -.word 0x8e9dd6fd -.word 0xde101a4f -.word 0x49886db4 -.word 0xa7d0a206 -.word 0x20c189ae -.word 0x830805f8 -.word 0x19ccd207 -.word 0xb561edb6 -.word 0x7b8dfd4a -.word 0x90a36d42 -.word 0xa4499331 -.word 0x8341682d -.word 0x15f92e1e -.word 0x6f175e45 -.word 0xe0e47f40 -.word 0xa7ef746b -.word 0x96de9742 -.word 0xe4de6be6 -.word 0xa5a8e055 -.word 0x40404b6c -.word 0xaacb2b19 -.word 0xd411a7c7 -.word 0x39c3555a -.word 0x3d6a0e2b -.word 0x364dea30 -.word 0xf621363f -.word 0x4a374d75 -.word 0xc45e7c52 -.word 0x1009bb30 -.word 0x09200c58 -.word 0xba6dc6cb -.word 0x320cfe75 -.word 0x77b978c7 -.word 0xa1a26a5b -.word 0x460da0d8 -.word 0x9cc872aa -.word 0x19a35e90 -.word 0x1c6d654e -.word 0x0de2fba3 -.word 0xab6a0f4f -.word 0xb5bf514c -.word 0x79f0a40f -.word 0x60dd138f -.word 0xf7e1cbf9 -.word 0x4f5ad4df -.word 0xd66755a2 -.word 0xf78f5f66 -.word 0xc74bc08e -.word 0xe602f8e1 -.word 0x6c090a40 -.word 0xa4a8bf0c -.word 0xe9c4b49e -.word 0x2439b4f4 -.word 0x8c70185d -.word 0xb276fda2 -.word 0xca321c83 -.word 0x92d71026 -.word 0xf701f8fb -.word 0xd18a348f -.word 0xfeec94a5 -.word 0xeaca7cf9 -.word 0x8912d393 -.word 0xfbe794be -.word 0x9b1415f2 -.word 0x1c8b0547 -.word 0xa00b05bb -.word 0x9bf3b4c0 -.word 0x4493dfb3 -.word 0xc6fbb718 -.word 0xb312423f -.word 0xf08444c6 -.word 0x773c1772 -.word 0x85871de4 -.word 0x986d5192 -.word 0xc2c9ec27 -.word 0xb6e4e1f6 -.word 0x12ddc87c -.word 0xc5b00309 -.word 0x25bca43a -.word 0x4bc902fe -.word 0x1ba0c067 -.word 0xbfa7396c -.word 0x05d15326 -.word 0xf0a9f068 -.word 0x53b06ac6 -.word 0x31dda412 -.word 0xa60d40dd -.word 0xf4ce52c5 -.word 0xb7d0559f -.word 0x6617da04 -.word 0x59c6c267 -.word 0xa695cb2b -.word 0x41c1ad05 -.word 0x451205d6 -.word 0xa9a96cd1 -.word 0x1c8831f7 -.word 0xa06405e3 -.word 0xc5a7c2fc -.word 0xe06597c4 -.word 0x65d34fdf -.word 0xa43e16f5 -.word 0x6edc5cab -.word 0x9db9a850 -.word 0x640a003c -.word 0x69bf3b52 -.word 0xcc87254c -.word 0x45efca3d -.word 0xf48302ca -.word 0x82181fd8 -.word 0x3abd5206 -.word 0x538e0e30 -.word 0x2d370196 -.word 0xbaea16d0 -.word 0x59ed446d -.word 0x12603a99 -.word 0x66eefe3d -.word 0xcf705549 -.word 0x6497a328 -.word 0x01584290 -.word 0x67edbab6 -.word 0x86dd2141 -.word 0xb4dbe95f -.word 0x39e1f7e2 -.word 0x418d5f43 -.word 0x7ce1d5da -.word 0xae1afe13 -.word 0xfdadf3f1 -.word 0x80b54951 -.word 0x22d9360c -.word 0x74bee5d7 -.word 0x106d2fed -.word 0x8570d7b9 -.word 0xaeac12a5 -.word 0x2ed23b32 -.word 0x524b621f -.word 0x9913a470 -.word 0x1676199f -.word 0x593e8077 -.word 0x697d613b -.word 0xc92019da -.word 0xa70e493d -.word 0x0333a5b7 -.word 0x67dcc09c -.word 0x8fd6e48f -.word 0x763d44eb -.word 0x50f8e0a0 -.word 0x6e47f8ce -.word 0xf8fde914 -.word 0x82dab300 -.word 0xdea1381e -.word 0x5383be23 -.word 0x724cd7fc -.word 0xc0076b4d -.word 0x6da145a1 -.word 0xf14f3718 -.word 0x5f197048 -.word 0xd47f4e2e -.word 0xead909ee -.word 0x13af1d69 -.word 0x5216cc28 -.word 0x3b63ea88 -.word 0x83b7dee5 -.word 0xf576b44f -.word 0xa1724f0d -.word 0x8728a86d -.word 0x40d1859a -.word 0x577ff804 -.word 0x018b4f19 -.word 0xdc38e3f4 -.word 0x08af18a0 -.word 0xb21b527c -.word 0x188adb55 -.word 0x89556846 -.word 0xd3ef3150 -.word 0x8f14598a -.word 0xea43ef1e -.word 0x2c81bd14 -.word 0xf23707b8 -.word 0xfcbf07f0 -.word 0xfadf8d0b -.word 0x535571f8 -.word 0x7fcc2d61 -.word 0xfa39a07d -.word 0xa54673e9 -.word 0xae6412dd -.word 0x09e3f11c -.word 0x416a1d5a -.word 0x35de9f2b -.word 0x3f584eb0 -.word 0xa4b0336f -.word 0x3760f5dc -.word 0xb4ba2920 -.word 0xffe72c71 -.word 0x7db49000 -.word 0x14724eaf -.word 0xb1cc68a0 -.word 0xf7c78b15 -.word 0x4b31f48d -.word 0xf666e188 -.word 0xecbea048 -.word 0x8040efff -.word 0x517cd16e -.word 0x89ba9a0e -.word 0xa402f6e2 -.word 0x3eab110a -.word 0xef31bce4 -.word 0xa72faf9e -.word 0xa2a91c75 -.word 0xffabf204 -.word 0x3bc2f608 -.word 0x7338ad88 -.word 0x63aa8002 -.word 0xbdd52466 -.word 0xff9262e1 -.word 0x11320e9f -.word 0x1931928a -.word 0x3988951e -.word 0x9323a8ba -.word 0xcdcf1aa7 -.word 0xf3e5b17e -.word 0x9f6ce5b9 -.word 0x63ba4d6e -.word 0xa24a7f53 -.word 0x64dfaa1a -.word 0x0840f2d1 -.word 0x2d8baaa1 -.word 0x738b4288 -.word 0x9df4cf55 -.word 0xb4c083b2 -.word 0xbed209c2 -.word 0x0daa7aa5 -.word 0x39c806b2 -.word 0x271ee086 -.word 0x74aa9d45 -.word 0xcc6ab371 -.word 0xb25602f8 -.word 0x881ffc08 -.word 0x13dfa536 -.word 0x67d40281 -.word 0xaaa2524e -.word 0x29f55142 -.word 0x716aeaac -.word 0x6b1c6da2 -.word 0x47bff229 -.word 0x6c40d442 -.word 0x88242a5c -.word 0xe7f21833 -.word 0xd666fb38 -.word 0x7ff39ea8 -.word 0xeaf5a3cd -.word 0x9d4a3b58 -.word 0xaeed901c -.word 0x9c686c30 -.word 0xeea8f2f8 -.word 0x87201642 -.word 0x61e6f014 -.word 0xc723ab9c -.word 0x7e8100a9 -.word 0x5956f15d -.word 0xd83d47e0 -.word 0xacf4718f -.word 0x0f82c15c -.word 0x8800dc8f -.word 0x954cfc4b -.word 0x61691245 -.word 0xfd626337 -.word 0x0e498812 -.word 0x72b871c9 -.word 0xd4971ddc -.word 0x7478b8c3 -.word 0x713b028c -.word 0xe1e5878f -.word 0xac92e7f8 -.word 0xafaf94c9 -.word 0xc70ffd1d -.word 0x2f7ab28b -.word 0xaa7649c5 -.word 0x08cd52b5 -.word 0x2c7f664c -.word 0xc0e95f45 -.word 0xd318c6ef -.word 0xede4f593 -.word 0x30ef22bc -.word 0x80a76ff0 -.word 0x1baf7278 -.word 0x1483d922 -.word 0xa424f2c8 -.word 0x0388f18d -.word 0x060c5d2c -.word 0xbd0be199 -.word 0x504af0c0 -.word 0x72b6a274 -.word 0x58957db8 -.word 0x46712d32 -.word 0x820844f8 -.word 0xeceec60e -.word 0xcaeef3b2 -.word 0x11f65295 -.word 0x58808b02 -.word 0x58087e91 -.word 0xb19fb632 -.word 0xed459f68 -.word 0xfe02957c -.word 0x0c6da8b8 -.word 0x3a93099f -.word 0xf0ceda4c -.word 0xc90c6b2c -.word 0xd8ccffb6 -.word 0x4dd667c0 -.word 0x0887fb54 -.word 0xa913c789 -.word 0x01bda9f8 -.word 0x381b6dd9 -.word 0x3d89f038 -.word 0x2f3f7b92 -.word 0x51efb291 -.word 0xb86bb897 -.word 0x599d68b8 -.word 0xccb28e1b -.word 0x6f767681 -.word 0x5ea9c25d -.word 0x703426fe -.word 0x95cd466d -.word 0xe9ac58bf -.word 0x39200bbf -.word 0x402a0ea6 -.word 0xc0abe5c4 -.word 0xff1cb7d4 -.word 0xf0d933f2 -.word 0x1d3cba3c -.word 0x7f501735 -.word 0x0bbc60d7 -.word 0x52d96518 -.word 0x37a83393 -.word 0x406a1468 -.word 0x16edace7 -.word 0x3953d3aa -.word 0xfd83dc99 -.word 0xad78e42c -.word 0xb12220ae -.word 0x40129273 -.word 0x541fe7f3 -.word 0xd97f1283 -.word 0xebe1ac07 -.word 0x7b435a30 -.word 0x1862e47c -.word 0x7f62b5be -.word 0xac0f964a -.word 0xc087aae1 -.word 0xcee6cd53 -.word 0xfa3aa133 -.word 0x1e2a7a84 -.word 0xed1813f0 -.word 0x78719a7f -.word 0x9346f5e0 -.word 0x8e3859c5 -.word 0x98e89c3d -.word 0x70059903 -.word 0xd2decaf2 -.word 0x5b594325 -.word 0x3d9e1030 -.word 0x3ff028bb -.word 0x4f0dd52a -.word 0x56f40b70 -.word 0xfc48c40d -.word 0x7830d314 -.word 0x51ae5a58 -.word 0x6dbdaa07 -.word 0x98eea88e -.word 0x59fe7b17 -.word 0x59e35490 -.word 0xaca32d0d -.word 0xafd57628 -.word 0xb3b5ff47 -.word 0xbf919b2b -.word 0x64918171 -.word 0x3bd766c8 -.word 0x943286a2 -.word 0x1c1b997b -.word 0xb3b59e2b -.word 0xdf7d1b75 -.word 0xbb580a1e -.word 0x1ab97ebc -.word 0xb5f85503 -.word 0x5a05f486 -.word 0x16a97e83 -.word 0xf3d0ade0 -.word 0x68700465 -.word 0x1403da76 -.word 0x6e6f16eb -.word 0xa1aae5d7 -.word 0xf3ba72a5 -.word 0x16fa2b06 -.word 0xd131c05d -.word 0x2321d156 -.word 0x20d9ca78 -.word 0x1c0dfc17 -.word 0xb04a4ce8 -.word 0xc1dcfeb5 -.word 0xc38f699f -.word 0x346dc355 -.word 0xa4a22ff2 -.word 0x7ca962a3 -.word 0x61651917 -.word 0x77860270 -.word 0xe8dbf83f -.word 0x355fd74c -.word 0x3d8e61fe -.word 0x2150ad43 -.word 0x9baa052d -.word 0x07b57111 -.word 0x8a49e2c9 -.word 0xb0039b77 -.word 0x734b08e4 -.word 0x0d6b9738 -.word 0x5e9616e4 -.word 0xb6b55365 -.word 0xaaa7c377 -.word 0xbedafc08 -.word 0x62c14a0e -.word 0xf81ee429 -.word 0x005e54d0 -.word 0x950a1df0 -.word 0x5080666b -.word 0x1a999faa -.word 0x83f995c6 -.word 0xa3293431 -.word 0x31aac88d -.word 0xddf6e6f3 -.word 0x9616ecc5 -.word 0x43402344 -.word 0x567f0c11 -.word 0x9f9db7d8 -.word 0xc76717b9 -.word 0x083ddf3c -.word 0x425db659 -.word 0x6f84bb6c -.word 0xe417cf30 -.word 0x8cb90c4e -.word 0x6c35d574 -.word 0x8be77f71 -.word 0x637ff5eb -.word 0x3d93bad2 -.word 0x32e149f8 -.word 0x20100ba5 -.word 0xfa731a5d -.word 0x39991177 -.word 0x8ccf610b -.word 0x9b028279 -.word 0x28abad96 -.word 0x31aa1b7b -.word 0x165caee7 -.word 0x87fcb236 -.word 0x26697943 -.word 0xb5759461 -.word 0xeefe6bed -.word 0x05509e63 -.word 0xe245d5ce -.word 0xbba04221 -.word 0x2849899b -.word 0x96202ea9 -.word 0x5ceec268 -.word 0x49952ebd -.word 0x5869919b -.word 0xf4a0bb6d -.word 0x658cd412 -.word 0x72bf1be1 -.word 0x22e84672 -.word 0xe11d156f -.word 0x5163d65b -.word 0x44b34ea4 -.word 0x42e6f3c1 -.word 0xd996b420 -.word 0x23bd49ee -.word 0x6223ad86 -.word 0x9e870bff -.word 0x4959c1f3 -.word 0xa817814d -.word 0xf2f7b758 -.word 0x2669e2c9 -.word 0xdfc670c8 -.word 0x86d0402f -.word 0xe2e9fcc6 -.word 0x2c241533 -.word 0x177652fc -.word 0xe7fc1069 -.word 0x364a6799 -.word 0xe30b63bc -.word 0x3245871e -.word 0xdda7291b -.word 0xd8fb6f90 -.word 0x2d80716b -.word 0xe551a560 -.word 0x8bf12468 -.word 0xcc16d660 -.word 0x386a23a0 -.word 0x963f5fe6 -.word 0x7a763811 -.word 0x2ff32ad2 -.word 0x54a95f97 -.word 0xfe9c0757 -.word 0x43279b30 -.word 0xf3a61ea2 -.word 0x69dad268 -.word 0x532df0cc -.word 0xa9177106 -.word 0xa829d366 -.word 0x69f10f8c -.word 0x4ec04425 -.word 0xaba9c80d -.word 0x24c5cfc5 -.word 0x458a8e5f -.word 0xeebd5d92 -.word 0x5122b4d6 -.word 0x88352725 -.word 0xf414967f -.word 0x3ac139ee -.word 0x0e7ba4ea -.word 0xa21a7b06 -.word 0xa80f28ac -.word 0xc51a6937 -.word 0xfba9e540 -.word 0x928a4469 -.word 0xb06602ad -.word 0xba404cef -.word 0x08ced7e4 -.word 0xf369bec4 -.word 0x22b91028 -.word 0x39ec1a2d -.word 0x25344579 -.word 0xd344fd72 -.word 0xf1904eb9 -.word 0x901bbd62 -.word 0x11eb97fa -.word 0x153bb2fe -.word 0x243b9ff0 -.word 0x3dd4144e -.word 0x32448fc9 -.word 0xf20281c9 -.word 0x809dea7e -.word 0x23ba882f -.word 0xfe6c8e91 -.word 0x59082b28 -.word 0x14e2f6f4 -.word 0x0c390f04 -.word 0x5b8cc73b -.word 0xa094e7b7 -.word 0xc6a41b2c -.word 0x8dc37f55 -.word 0xf5953155 -.word 0xb302bf4e -.word 0xe848b3f9 -.word 0x780fc709 -.word 0x59557a31 -.word 0x306eedf4 -.word 0xc0156c54 -.word 0x1c3ebbe7 -.word 0x633bf3b6 -.word 0x667e74a8 -.word 0x52ea43af -.word 0x9c954077 -.word 0x63164ed0 -.word 0x1b027a1a -.word 0x5b107e54 -.word 0x14c869fc -.word 0x8c6f9437 -.word 0x19cedcd6 -.word 0x43549dcb -.word 0x742ab5ff -.word 0x105d81b8 -.word 0x2e892482 -.word 0x658fc778 -.word 0x54744d22 -.word 0x8e1ec76c -.word 0x771f5322 -.word 0xa3a6bd9e -.word 0x2e3ecd83 -.word 0x90523695 -.word 0x155556e2 -.word 0xedf16a62 -.word 0x2c668618 -.word 0x22e39867 -.word 0xf6630d78 -.word 0x7e3e44dc -.word 0x13a9aeb8 -.word 0x2aba7231 -.word 0x26d9c1c0 -.word 0x8f67d0bb -.word 0x3f15a7c1 -.word 0x8f6d4e77 -.word 0xeaf8d59e -.word 0xd4c72b70 -.word 0x4da54871 -.word 0x98fb91c2 -.word 0xb0fd29eb -.word 0xe64bb22d -.word 0xbba59877 -.word 0xffcfa273 -.word 0xec82caf5 -.word 0xa906b9c2 -.word 0x6e3229a1 -.word 0xd5c6796f -.word 0xd48f3867 -.word 0x606be6a3 -.word 0xbe3ecbe8 -.word 0xe4ec5062 -.word 0x9443514b -.word 0x5c82a7ee -.word 0x1f70e3a2 -.word 0xb051e564 -.word 0x46dfb9c3 -.word 0x374bd19f -.word 0x1839d728 -.word 0xd6754d86 -.word 0xd0652ce3 -.word 0x3450026f -.word 0x43a222c2 -.word 0x5a416469 -.word 0x903dcb92 -.word 0x13af3703 -.word 0x265dd553 -.word 0xba19bb90 -.word 0xee0d2db6 -.word 0x08aa866c -.word 0x7cd52f6a -.word 0xa4f1f796 -.word 0x59ef770f -.word 0xd3f8145b -.word 0x0afd81a3 -.word 0xad6bed7a -.word 0x4737ef3b -.word 0xab41801d -.word 0xa85da2c0 -.word 0xfefb1e6d -.word 0xb921d2df -.word 0x51d4f539 -.word 0x1fb4f670 -.word 0xc8b8c562 -.word 0xd9dfacf1 -.word 0x88396e9d -.word 0x5d008c07 -.word 0x914c198e -.word 0x4d9bcb7f -.word 0xe7495121 -.word 0xc09bff7e -.word 0x380ed3a6 -.word 0x0a089ec5 -.word 0x317e7756 -.word 0x812ceea7 -.word 0xa2435090 -.word 0xc4c65fa2 -.word 0x9ff00add -.word 0x7b6bfd06 -.word 0x5176ea6a -.word 0xc594d1d9 -.word 0xc6bfe1a1 -.word 0x100e905b -.word 0xf742610c -.word 0x6bc49a9d -.word 0x41015744 -.word 0x36267ec1 -.word 0xafd789d0 -.word 0x9dd55301 -.word 0xeabcc88c -.word 0x2e95df81 -.word 0x76ddf00a -.word 0xc6761511 -.word 0x4c82aa04 -.word 0xa5d40a35 -.word 0xfc001237 -.word 0x2afab08e -.word 0xb9375cb6 -.word 0xea6d8c59 -.word 0x90160651 -.word 0xb6ad0c08 -.word 0x438c0c69 -.word 0xd47346b6 -.word 0x4dec3c8a -.word 0x02d5a074 -.word 0xef01e8a3 -.word 0xbb2e2e4f -.word 0xfd0dc670 -.word 0x294c690f -.word 0x86e0ad40 -.word 0xf1e2ba24 -.word 0x6c524684 -.word 0xa7dca937 -.word 0xbabdb25c -.word 0xe978e776 -.word 0xfa3b297a -.word 0x18a1e544 -.word 0x460eadb6 -.word 0xa71f3f06 -.word 0xb7813680 -.word 0xaf8fab09 -.word 0xe3be5479 -.word 0xbc5e7f72 -.word 0xb4f3c4b4 -.word 0x5c421120 -.word 0x5afb7d02 -.word 0xa0b9bc70 -.word 0x67f652cf -.word 0xae4d97b5 -.word 0x23a9aac5 -.word 0x7fa868ed -.word 0x4900d5d0 -.word 0xbf0c2c68 -.word 0xbc69f589 -.word 0x05a25125 -.word 0xa5b0a228 -.word 0xcb93bb8c -.word 0xffdf6088 -.word 0x74cc1cbc -.word 0xb282bf18 -.word 0x443b2a3c -.word 0x240a6044 -.word 0x38668033 -.word 0xea832b44 -.word 0xccca493a -.word 0x38bc5a61 -.word 0x7cf428ec -.word 0x4b2653dc -.word 0x32892e79 -.word 0x9ff21eff -.word 0x8a87ce13 -.word 0xde963570 -.word 0x02ba83ea -.word 0x03b7f256 -.word 0x9af9fd80 -.word 0xa1866aae -.word 0x586e90f0 -.word 0xbf579179 -.word 0xddc9fb12 -.word 0xfa6a4dd7 -.word 0x0ca10db7 -.word 0x19d04527 -.word 0x25d4a6e1 -.word 0x37c353ce -.word 0x927bcfca -.word 0xfad65be8 -.word 0xf150bdfc -.word 0xf1aa7eb0 -.word 0x118b1e3c -.word 0x161064ae -.word 0x8869b655 -.word 0xe28a59ec -.word 0xdce2276c -.word 0xe129dd3e -.word 0xbbde4378 -.word 0x7eac43c1 -.word 0xf2444855 -.word 0x9f5a9d7e -.word 0x9af68f53 -.word 0x99bebbe7 -.word 0x6b66aaa4 -.word 0x1742442e -.word 0xf971a485 -.word 0xa3a07cf0 -.word 0x41bac230 -.word 0x7b8dc09d -.word 0x0e983a2c -.word 0x6b3fa7f8 -.word 0xf4f56dac -.word 0x23199da5 -.word 0x6a393c1c -.word 0x31944763 -.word 0xb8ed8f5e -.word 0x178d5dd9 -.word 0x88cfaf1e -.word 0xae5caf1a -.word 0x519f1040 -.word 0xbc328b30 -.word 0xe1d87090 -.word 0x19c6a060 -.word 0xa8ef3eec -.word 0xb7ffaab3 -.word 0xd384ed6c -.word 0xd27abe10 -.word 0xe0bcf3d1 -.word 0x37988b2b -.word 0xcd400b0d -.word 0x676fb0cb -.word 0x51f17190 -.word 0xaa0f6e47 -.word 0x3f8fd6b3 -.word 0xcb99e8d1 -.word 0x9e6d25e4 -.word 0xd1e17044 -.word 0x053a3236 -.word 0xf3946d21 -.word 0xbfd84c58 -.word 0x07a415b6 -.word 0x727fed0e -.word 0x5b980b28 -.word 0x35923606 -.word 0x2685a690 -.word 0xfaa26e35 -.word 0x9077da04 -.word 0x00b865c4 -.word 0x018f394b -.word 0xbe0d50dc -.word 0xd3c8b727 -.word 0x75b2687f -.word 0xbf7467f8 -.word 0x3f5ec93f -.word 0x3425ba16 -.word 0xfeabac79 -.word 0x6025d5cf -.word 0xe7629b6b -.word 0xc585959e -.word 0xe69a5105 -.word 0x7da0ebde -.word 0x6ac932c1 -.word 0x0d1c217b -.word 0x4ab2ec55 -.word 0xc4d68404 -.word 0x672d158e -.word 0x83c1094d -.word 0x68864c8e -.word 0x4f78f323 -.word 0xf939ebf6 -.word 0xf0ec4de2 -.word 0x0f056e8b -.word 0xfa4538cd -.word 0xa17345b9 -.word 0x9334ac7e -.word 0x6d19e4e3 -.word 0x66f97a6d -.word 0x6c8977e2 -.word 0x775efc9e -.word 0x70bb6f85 -.word 0xb946f847 -.word 0xcf0b269e -.word 0xeba160f2 -.word 0x4dde9f53 -.word 0x201a3af2 -.word 0xb2e2fd3c -.word 0xa945439c -.word 0x2eda283c -.word 0x8758cdc7 -.word 0xd927e3e7 -.word 0x39319168 -.word 0x0305e27c -.word 0xbc9af578 -.word 0x8d365e35 -.word 0xf78911d3 -.word 0x91f6e0bf -.word 0x34b27514 -.word 0xf27f5788 -.word 0xf973f150 -.word 0xfb8a94f3 -.word 0x94b2bcf5 -.word 0xd14be360 -.word 0x2907bbc0 -.word 0x37c13b1e -.word 0x853f81fe -.word 0x3043aa22 -.word 0xcd09f659 -.word 0x76663255 -.word 0x7839211b -.word 0xed1a30e4 -.word 0x6f7ea285 -.word 0x6769a6bb -.word 0xa5f643a9 -.word 0x64be13c6 -.word 0xce24229e -.word 0x1cdae533 -.word 0x90034102 -.word 0x285ce3a5 -.word 0xb759bfbb -.word 0x02839bca -.word 0x5b35edc0 -.word 0x9cde0515 -.word 0x847fa188 -.word 0x2e515f59 -.word 0xe4cab04b -.word 0xf7fefa05 -.word 0x07abf7f9 -.word 0x8ee0ef54 -.word 0x5a8093c6 -.word 0xee50c358 -.word 0x5cc795b7 -.word 0xf0d2fdfa -.word 0xb39d62a1 -.word 0x274d2b09 -.word 0xf5f79b6b -.word 0x295f20d3 -.word 0xa3139b13 -.word 0xe2758139 -.word 0xfe32f0f3 -.word 0x149cb4b8 -.word 0x610ac748 -.word 0x8858bc0e -.word 0x34a636da -.word 0xfbd62784 -.word 0xfa72bbac -.word 0x0288d9b9 -.word 0x67a5c82c -.word 0x8219296e -.word 0xba5d81b7 -.word 0x2759bdb2 -.word 0xdd24d8fc -.word 0x7bfdd9a1 -.word 0x72f9d38b -.word 0xcc98bb1d -.word 0x3bd9e7a7 -.word 0x8394f8a6 -.word 0x24b9d6b9 -.word 0xe3122099 -.word 0x2c9b8643 -.word 0x2c50f65e -.word 0xbcdde6a0 -.word 0x611fbbe5 -.word 0xfc278868 -.word 0x2cca7969 -.word 0xaa91fa37 -.word 0x6db61a5e -.word 0x2351bd2e -.word 0x7b8b08c1 -.word 0x0c233f79 -.word 0xfb137c8e -.word 0x9296557b -.word 0x26b9a942 -.word 0x725eea5c -.word 0xac71e534 -.word 0xbb7c5a82 -.word 0x22c7c652 -.word 0x776787db -.word 0xf38f8e80 -.word 0xd23d4a87 -.word 0x5b990b0f -.word 0x1e462cbc -.word 0x3fe13719 -.word 0xc1071cca -.word 0x19aa3800 -.word 0x35115d1c -.word 0x01a5fb48 -.word 0x62b74cdd -.word 0xf0471d9f -.word 0x91395735 -.word 0x3bd480e9 -.word 0x059f0df9 -.word 0xfb29198c -.word 0x69ca354d -.word 0x872af005 -.word 0x3ee17b1c -.word 0x9f6471d4 -.word 0xeee694e6 -.word 0x896770a9 -.word 0x5f185a95 -.word 0xec83ac8e -.word 0x10ec2b4a -.word 0x7a92a8da -.word 0xe582f4bb -.word 0x68cb674c -.word 0x564d4684 -.word 0xdd673830 -.word 0xa5f9edb0 -.word 0xb83aefa8 -.word 0x710de67b -.word 0x4281cc6b -.word 0x93aa143a -.word 0xe7f57412 -.word 0x6279cd46 -.word 0x67292c3e -.word 0xe35218b8 -.word 0x3e899a0b -.word 0x2a9cc1fe -.word 0x6efea3cb -.word 0xe9ad443c -.word 0x838fbbfd -.word 0x4b82ae9d -.word 0x4bd500b2 -.word 0x762f67a4 -.word 0xec539451 -.word 0x2ac3ad0b -.word 0x9f9818b4 -.word 0xfa7cff32 -.word 0xdf5cd0d9 -.word 0x8ad53199 -.word 0xfe428dc9 -.word 0x551b5bbc -.word 0x1305115a -.word 0x5592d28e -.word 0x5900443b -.word 0xebec8400 -.word 0x388acf01 -.word 0x1d284117 -.word 0x5634c013 -.word 0x74f1c7d9 -.word 0xeb58983a -.word 0x48d8d631 -.word 0x5337480b -.word 0x3f81a5fd -.word 0x33f75ac4 -.word 0x054142ed -.word 0xa7748eca -.word 0x4a57afe0 -.word 0x58a0036f -.word 0xaf1cad77 -.word 0x28c60944 -.word 0x2671f47b -.word 0x1483f43a -.word 0xe7266955 -.word 0xa165bca6 -.word 0x6ec6c2e8 -.word 0x04c3c036 -.word 0x8f24e20d -.word 0x18d26594 -.word 0xd6822ef0 -.word 0xfa56fdd7 -.word 0x6157a1b3 -.word 0x57f0821e -.word 0x2ad9e365 -.word 0xe595bbc0 -.word 0x294625e7 -.word 0x70fc32f9 -.word 0x1e214983 -.word 0x4451af2e -.word 0xefa8e1c4 -.word 0x77d4981b -.word 0x1ce8998a -.word 0x2d5f3d90 -.word 0x118eb32e -.word 0x85a6462d -.word 0xb3811662 -.word 0x3b6dfb0b -.word 0x148b6bd4 -.word 0x3980e94c -.word 0xfc357011 -.word 0xcde5fa3c -.word 0x829741a4 -.word 0x1b307a13 -.word 0x3fc14cbe -.word 0x006cf17b -.word 0x55fd0f4e -.word 0x103167cf -.word 0x9d80f329 -.word 0xb7b04e59 -.word 0x42eaa9ee -.word 0x5a63cdcd -.word 0x36760582 -.word 0x4df1e830 -.word 0xf1948a09 -.word 0x1ad8ac79 -.word 0x1b8f0a22 -.word 0xee78dc25 -.word 0xcdb8d974 -.word 0xd4ada503 -.word 0x0f7b28ad -.word 0x810dd897 -.word 0x2418494a -.word 0x91fa4564 -.word 0xf3e15be9 -.word 0x80b686b9 -.word 0xf7387894 -.word 0x6b02e8fa -.word 0x943c20c6 -.word 0x3b0c69b8 -.word 0x22057940 -.word 0x00092681 -.word 0x08161d13 -.word 0x49f5d22b -.word 0xef1c2b41 -.word 0xa400acc6 -.word 0x9ae0ea7c -.word 0x1d33af75 -.word 0x2f199ebb -.word 0xbe68f716 -.word 0xd1f70474 -.word 0x070a8a20 -.word 0xf607b339 -.word 0x9ac92cdb -.word 0x4667c7da -.word 0xfb8f2d1e -.word 0x9ea6fe17 -.word 0xb43e26ef -.word 0x9cdae366 -.word 0x4b9c0a51 -.word 0xded71faf -.word 0xc3a177b8 -.word 0x2174e590 -.word 0x6f795b90 -.word 0x9b1f8e96 -.word 0xc31682ac -.word 0xe189d60b -.word 0xee137cb3 -.word 0x4e403435 -.word 0x180801a7 -.word 0x58c4ea9f -.word 0x222d7e4f -.word 0xebf87963 -.word 0x42dd7018 -.word 0x63cdf4d4 -.word 0x5d7fd061 -.word 0x430f5669 -.word 0x666bccfc -.word 0x1ea8e95f -.word 0x09f33037 -.word 0xf765659d -.word 0xf3a2c1da -.word 0x3ae1ecfe -.word 0x5ac87240 -.word 0x89ca6eba -.word 0x4584a5cd -.word 0xa12c83db -.word 0x1584c7b0 -.word 0xeef9c0d7 -.word 0xdd7ff210 -.word 0x51e497e8 -.word 0x3e14d533 -.word 0xefc53bea -.word 0xf6d745d6 -.word 0x22a52335 -.word 0x1cf5eb47 -.word 0x6081c58e -.word 0x9582a42a -.word 0xbe68f01d -.word 0xa0feab27 -.word 0xab73eb78 -.word 0xcd6dc310 -.word 0xda44be54 -.word 0x0d11d953 -.word 0x7dad1d1c -.word 0x0525a62d -.word 0x70ae0919 -.word 0xcacf775a -.word 0x02fc0fcc -.word 0x1ad73177 -.word 0x4f4d2670 -.word 0x0bf31365 -.word 0x61ed893b -.word 0x465dd604 -.word 0x34c5f08f -.word 0x04d8a297 -.word 0x514e02da -.word 0x3edd3e8e -.word 0x7877fbdc -.word 0x23973271 -.word 0xf8b14632 -.word 0xcb203907 -.word 0x5a5229dd -.word 0x9771a295 -.word 0x25a94827 -.word 0xe121ba55 -.word 0xd801f7bb -.word 0xdabad410 -.word 0x27b79e9b -.word 0x61d5deca -.word 0x43a40a7e -.word 0x7fb3e09a -.word 0x61749cc0 -.word 0xebcb1308 -.word 0x683332fb -.word 0xce297a97 -.word 0xcb7beab1 -.word 0x7cea8948 -.word 0x10a7edc1 -.word 0x93ab7f04 -.word 0x04e36b58 -.word 0xfa6365a6 -.word 0x008e5234 -.word 0x09652d3f -.word 0x42b81142 -.word 0xaad745e6 -.word 0xd38740c2 -.word 0x00921762 -.word 0x65cb5bc0 -.word 0x951809dd -.word 0x4c57dc66 -.word 0xfb8315e1 -.word 0x5c3b11c9 -.word 0x542c2184 -.word 0xdf3b1dc1 -.word 0xebb7f862 -.word 0xd680cbec -.word 0x397ccc42 -.word 0xdf330f44 -.word 0x59b621ad -.word 0x39739b9e -.word 0x5fa2380d -.word 0xcfd64d05 -.word 0xb12c243a -.word 0xc75af12e -.word 0x8148bc9e -.word 0x76e58333 -.word 0xd24503ca -.word 0x168c99a8 -.word 0x47c90340 -.word 0xbbe91806 -.word 0xdcc501b5 -.word 0xa654ef83 -.word 0x9ac6b0ea -.word 0x2bb341f7 -.word 0x8c0988a3 -.word 0xeb5d1840 -.word 0x2ec34060 -.word 0xb13126ed -.word 0xed3daff8 -.word 0x96765f9a -.word 0x508c3276 -.word 0xc02a0426 -.word 0x00a125a4 -.word 0xe292e927 -.word 0xa829dac1 -.word 0x0694735f -.word 0x8315bcc3 -.word 0x41dd9eda -.word 0x9a5f78dc -.word 0x157ff804 -.word 0x1f45bed0 -.word 0xe50b9bd2 -.word 0x22976661 -.word 0x5d556fac -.word 0x31bd0eb3 -.word 0xa43c71b0 -.word 0x7e447dde -.word 0x9e0f8b84 -.word 0xd437080e -.word 0x318ce4fd -.word 0x958a32fe -.word 0xd40487ab -.word 0x5924a570 -.word 0x5ef0bc37 -.word 0x3c7ff739 -.word 0x561bd4e3 -.word 0x988e5199 -.word 0xea92579a -.word 0xed7908a6 -.word 0x38fb200a -.word 0xdd1209c1 -.word 0xb89fda31 -.word 0x526e3308 -.word 0x9e980fb7 -.word 0x408ff2b9 -.word 0xd9f27a5d -.word 0xed9926ed -.word 0xb1ef7e71 -.word 0x93cb840c -.word 0x96b3e40a -.word 0x3d33382f -.word 0x3570f8fe -.word 0x7eadaa90 -.word 0x310241de -.word 0xb74e9c45 -.word 0x9eb05e11 -.word 0x57b82346 -.word 0xb7852639 -.word 0x3642fe7f -.word 0xc832caf6 -.word 0x172a7ab0 -.word 0x1db81815 -.word 0x8414f2fd -.word 0x2ac3949a -.word 0xf09134c6 -.word 0x5e3145f1 -.word 0xfe87ae9d -.word 0x04c2a10a -.word 0xa945703d -.word 0x0724824f -.word 0x9f208187 -.word 0xae1231fc -.word 0xb8c86530 -.word 0xc2fd6f59 -.word 0x779a8b68 -.word 0x87522e80 -.word 0x60feb5ec -.word 0x03bde6cc -.word 0x4b187bf8 -.word 0x250e98b7 -.word 0x02aa6a11 -.word 0x595dd869 -.word 0x45c34f34 -.word 0xce120daf -.word 0xa169cb01 -.word 0x91f21be7 -.word 0x44e4c6c3 -.word 0xfbf5fd28 -.word 0x12dbb2f7 -.word 0x3fe1dfab -.word 0xca4a9b5f -.word 0x4dd4428f -.word 0xf216f3db -.word 0x0c1e6160 -.word 0xcf5cd230 -.word 0xc6f4533b -.word 0xfb25308c -.word 0xb337f3d9 -.word 0x38aebc2d -.word 0x84a7bd18 -.word 0x491f6eaa -.word 0xf92bbeff -.word 0xb0c1e98c -.word 0x7d25c134 -.word 0xcb4ca2fa -.word 0xf448c929 -.word 0xb333d557 -.word 0xb962fabe -.word 0x2489cd24 -.word 0x78838ab4 -.word 0x4f59c3d2 -.word 0x5860f611 -.word 0xbeff158d -.word 0xc9bd6fd8 -.word 0xc21389ba -.word 0xb8403488 -.word 0xbad57f6d -.word 0x2868e263 -.word 0x12693388 -.word 0xfbee1116 -.word 0x81d3fb5f -.word 0x68714971 -.word 0xfac2824f -.word 0xa3a88045 -.word 0x2e49401e -.word 0xc0003cb4 -.word 0x0ed8b767 -.word 0x7eccc6e6 -.word 0x53f140c2 -.word 0xc386c471 -.word 0xf8c4b181 -.word 0x83ae2577 -.word 0xc83ff939 -.word 0x8ca6524c -.word 0x09bb3f58 -.word 0x5bce48be -.word 0xbacbc5bc -.word 0x2d60a9a9 -.word 0x00b1ca67 -.word 0x88965cd0 -.word 0x68f1b43f -.word 0x952d06f8 -.word 0xe0bae41f -.word 0xcb515ff1 -.word 0x1a6931e0 -.word 0x617adf75 -.word 0x9bc30d2c -.word 0x672d0012 -.word 0xf7aca595 -.word 0x5b509a61 -.word 0xcea690eb -.word 0x968a154b -.word 0xa39c6fc8 -.word 0xd770b7eb -.word 0x62934329 -.word 0xf1ab74f7 -.word 0x3c5fcc6c -.word 0x7862023d -.word 0x37141d41 -.word 0xfa95c665 -.word 0xb212c9b4 -.word 0xbdf6270b -.word 0xa5d12ecd -.word 0xa84b4f49 -.word 0x84ed0f4e -.word 0x9af22dea -.word 0x29fd232c -.word 0x9482aec9 -.word 0xb766f924 -.word 0x87aa013f -.word 0xde241221 -.word 0xce032ae7 -.word 0x5e0e4f37 -.word 0x41589bd9 -.word 0x9c4d125f -.word 0xe867c8a4 -.word 0x8e39181b -.word 0x2be32893 -.word 0xdceeddb6 -.word 0xa71ffce6 -.word 0x18c765fa -.word 0x121a9341 -.word 0x976e324d -.word 0xc21996da -.word 0xedad95da -.word 0xf1da9196 -.word 0xdab68946 -.word 0xe3502602 -.word 0x95756b78 -.word 0xe36df6b3 -.word 0xb1bb8a49 -.word 0x7cc063a7 -.word 0x147a29de -.word 0x74b0462d -.word 0xf794b5e7 -.word 0xc7597091 -.word 0x953dfc34 -.word 0xab7222b8 -.word 0xd1febb13 -.word 0x44e9d8be -.word 0xad043117 -.word 0x5087c1e9 -.word 0x91dd6624 -.word 0x07501496 -.word 0xa63e4eaf -.word 0xdb710845 -.word 0x9cdf8d7e -.word 0xa049c529 -.word 0xb09c5d52 -.word 0x66a80f20 -.word 0x02cc47b8 -.word 0x52972b53 -.word 0xab2ca150 -.word 0x664b4c4e -.word 0x55bd11e0 -.word 0xcf949d60 -.word 0x45d641ec -.word 0xdeb162a3 -.word 0xfe9274f8 -.word 0x1e30578c -.word 0x7572c10e -.word 0x6cd9c7bc -.word 0x3f225344 -.word 0xbf0c4171 -.word 0x59d003ff -.word 0x58afa239 -.word 0x588da923 -.word 0x8d7b57a0 -.word 0x8423dbaa -.word 0x424e5f51 -.word 0x71e9b133 -.word 0xc63ddab2 -.word 0xcb53879d -.word 0x516f19a8 -.word 0x75b3b727 -.word 0x9379ef3f -.word 0xf26b979f -.word 0xede8744f -.word 0xacaa31db -.word 0x46da93fd -.word 0x4cdca58c -.word 0x1e7a08a1 -.word 0x005eccb3 -.word 0xa507b5be -.word 0x6d54e672 -.word 0x3823828e -.word 0x0a24631a -.word 0x2790169a -.word 0x952a6525 -.word 0xa4094b63 -.word 0x59177c2d -.word 0xd78022a4 -.word 0x843b828f -.word 0x158bc527 -.word 0x024e70f1 -.word 0xf9c9d58f -.word 0xe77910ec -.word 0x75d7c5f1 -.word 0x0b3d0895 -.word 0xac923f26 -.word 0xc4b1188f -.word 0x3a6aaf8a -.word 0x3e15f808 -.word 0xcb77dac0 -.word 0x3c049690 -.word 0xca509cf6 -.word 0x48ef3fec -.word 0x3bd7ddff -.word 0xa5140689 -.word 0x0a4d09a4 -.word 0xbb61d201 -.word 0xec8ed259 -.word 0x19b0a60a -.word 0x68f8bd7c -.word 0x02573be3 -.word 0xd12e7861 -.word 0xbe591b91 -.word 0xecf20be4 -.word 0xdcf549a7 -.word 0x0319d381 -.word 0xb133e9ba -.word 0xd5b047eb -.word 0x91d1a183 -.word 0x368606f2 -.word 0x374b7732 -.word 0xab95afee -.word 0x2bca849a -.word 0x0b25b319 -.word 0xe326956a -.word 0x6a347484 -.word 0xa650d1bc -.word 0x1db40547 -.word 0x773e425d -.word 0x5ed4dfa2 -.word 0xebe5e1d2 -.word 0x2601a97b -.word 0xddc3ad61 -.word 0x27a12381 -.word 0xc81276f0 -.word 0x6a0727a7 -.word 0x1772407a -.word 0xc5e889fa -.word 0x4b792e6a -.word 0xf1fcad94 -.word 0xd2372e59 -.word 0xb78216b4 -.word 0xd32f871a -.word 0x8a8f1e2e -.word 0x07d97ad6 -.word 0x11762476 -.word 0x108651d1 -.word 0x420701d1 -.word 0xd2df70b3 -.word 0xb39c8988 -.word 0x7203f36e -.word 0x63eb5155 -.word 0xba9e63da -.word 0x5cb1601e -.word 0xde28570e -.word 0x9f1239c9 -.word 0x343f4f24 -.word 0xce25f2b5 -.word 0x1bbecf49 -.word 0xa43c0b09 -.word 0x94228278 -.word 0x1ee9c670 -.word 0x7e669a14 -.word 0xc6f3849a -.word 0x92244bc6 -.word 0x1aff79e8 -.word 0x46456eea -.word 0x54325d99 -.word 0xca2fa1e2 -.word 0x000c55ab -.word 0xddad16eb -.word 0xdb8f8d90 -.word 0xc0cddbf2 -.word 0xde7cc5a4 -.word 0x08565944 -.word 0x836d634b -.word 0xe03fdec4 -.word 0xe34d1090 -.word 0xe1849957 -.word 0x85d8c261 -.word 0x354c9769 -.word 0x20f196eb -.word 0x8083fbd0 -.word 0x56834be5 -.word 0xf2d99655 -.word 0xc6460e25 -.word 0x48c78d3e -.word 0xa4e7bee4 -.word 0x660b41df -.word 0x0d68f141 -.word 0x30578904 -.word 0xea1b4b36 -.word 0x8daab282 -.word 0xadd3ce96 -.word 0x477f097c -.word 0xa1fb52d1 -.word 0x170e0661 -.word 0x5dc31e1e -.word 0x0deb4397 -.word 0xe7df0f51 -.word 0xe9e61dda -.word 0x80442bc1 -.word 0x8a151bcf -.word 0xda9e970a -.word 0xa0518bec -.word 0x50ba6f2a -.word 0xff0b52a3 -.word 0x17a7f9e9 -.word 0x9718a7f1 -.word 0x656d454e -.word 0x79b0c798 -.word 0x99efb6cb -.word 0x7275d467 -.word 0x42305c45 -.word 0x88c98cf2 -.word 0xeca6b17e -.word 0xaeda0fda -.word 0xc594a58b -.word 0xf44866ee -.word 0xbe698b38 -.word 0xcb46eaa9 -.word 0xcf71cfdf -.word 0xfe2b2efb -.word 0x9f98531d -.word 0x0e9053b9 -.word 0x6fa1044b -.word 0x27ec854f -.word 0x9ea7341e -.word 0xd2f49886 -.word 0xcb10212c -.word 0x17c34c97 -.word 0x09c247d3 -.word 0xd92e63fd -.word 0xe1c4dd16 -.word 0x46a30d7d -.word 0xa85f8d3f -.word 0xfc11057d -.word 0xd30c231d -.word 0x0207b446 -.word 0x7bd34195 -.word 0xfce1e8a7 -.word 0x6ea220d4 -.word 0x65e984bc -.word 0xc9de3a6d -.word 0x6d5b7fb6 -.word 0x73a1469a -.word 0x9a1de875 -.word 0xca89f0b6 -.word 0x62573e18 -.word 0xa6346c87 -.word 0x3c618273 -.word 0x4861da60 -.word 0x0df83fc7 -.word 0x7c22fafd -.word 0x3afdc4ae -.word 0x8afb7f32 -.word 0xd631fc05 -.word 0xc8ae8e74 -.word 0x232c3087 -.word 0xa2c516ee -.word 0x566a7700 -.word 0x8a0ab8cb -.word 0x6bc56105 -.word 0x61a71a13 -.word 0x04ef9fc9 -.word 0xa8524c36 -.word 0xa4b45ca7 -.word 0x743c7f77 -.word 0xcaa06db8 -.word 0xc1dc4c9f -.word 0xef0568b0 -.word 0x213f4467 -.word 0x0da85492 -.word 0x5f2a36fb -.word 0xaf17b63e -.word 0xb6f10e93 -.word 0xb74904cb -.word 0x6f008b27 -.word 0x5ede7eee -.word 0x8b190f3e -.word 0xe4388355 -.word 0xc2e3908c -.word 0x275ce094 -.word 0x074166ca -.word 0x3693833e -.word 0x6e501adc -.word 0xbc6c930c -.word 0x69106ec3 -.word 0xe78d3a57 -.word 0xcd7020b9 -.word 0x8a5431e5 -.word 0x5399b6a4 -.word 0x49b2feed -.word 0x902d919d -.word 0xd321124b -.word 0x65d6114a -.word 0xd240ef60 -.word 0x30445117 -.word 0xbe55ae4d -.word 0x997766cd -.word 0x2b29c46d -.word 0xc4b0f5ff -.word 0x41af83c6 -.word 0x01a548a0 -.word 0x4bff0e10 -.word 0xdb852189 -.word 0x47eabb1a -.word 0x54b43d5c -.word 0x75d86465 -.word 0xcbabf3fc -.word 0x5e3ec766 -.word 0xdd7f1224 -.word 0x65145936 -.word 0x664157e7 -.word 0x73cdddc2 -.word 0xc26aa462 -.word 0x3e96f8cf -.word 0x4d9e124f -.word 0xa09d8804 -.word 0xc090b063 -.word 0xe5687f5d -.word 0x6186d282 -.word 0x9802b221 -.word 0xf017e968 -.word 0x0bf2ff3c -.word 0xcb08ee89 -.word 0x754af664 -.word 0xc685682f -.word 0x00747ea3 -.word 0x1b68ac17 -.word 0x2ebf1d4c -.word 0x5863122d -.word 0x9e53ebab -.word 0xa5a4ba62 -.word 0x6eca590f -.word 0xb362280a -.word 0xa5b7ea74 -.word 0x79774bfb -.word 0xe04df78a -.word 0xcc7132b6 -.word 0x6d2cd1e3 -.word 0x991c15c2 -.word 0xd5b645d1 -.word 0x79534a24 -.word 0x54ff0490 -.word 0x0648de49 -.word 0x40ec7c06 -.word 0x41abb8ec -.word 0x42e0076e -.word 0x003e49ff -.word 0x218443ea -.word 0xf6940036 -.word 0x3bb0d11c -.word 0x7fa144dc -.word 0x00f73ba2 -.word 0xe16d2157 -.word 0xe2eb6e03 -.word 0x71381e6f -.word 0x0bf48a55 -.word 0x2202c087 -.word 0xc05bc509 -.word 0x2ed3d774 -.word 0x3e1288ac -.word 0xb4fc0c39 -.word 0xe7a25c73 -.word 0xff2cf512 -.word 0x84d21e33 -.word 0xf0ba7f0f -.word 0x83df1766 -.word 0x7f2f1269 -.word 0xad7db4b5 -.word 0xba8c0226 -.word 0x5ca0ea8f -.word 0x883899fb -.word 0xd88a010d -.word 0x85f001ac -.word 0x48900501 -.word 0xd12ea752 -.word 0x9cda41ee -.word 0x3497e1aa -.word 0x859b5aff -.word 0x2209f891 -.word 0x7ac89187 -.word 0xa27107ee -.word 0x0ed174e1 -.word 0x8edad381 -.word 0x0bb50eeb -.word 0xc67d7601 -.word 0x12ce6dc1 -.word 0x2f297ff5 -.word 0x01150cb3 -.word 0x995dabe0 -.word 0x70983821 -.word 0x589397de -.word 0xedf6f5b0 -.word 0x03d294b1 -.word 0xb08aee18 -.word 0xbc4c8167 -.word 0xb9c7db66 -.word 0x81c05520 -.word 0xe1f4e0b1 -.word 0x1a526f3c -.word 0x7aa8bab8 -.word 0xb7da3b10 -.word 0xf7ad48d0 -.word 0x241bbd99 -.word 0xd85eef78 -.word 0xdd296f5f -.word 0x285f922f -.word 0xab5ce80b -.word 0x5fb7456a -.word 0xe69c65fb -.word 0x7495fc53 -.word 0xa402ce52 -.word 0x2585a17f -.word 0x3b9d35fb -.word 0x4cdb90a6 -.word 0xeaf116c8 -.word 0xc7abc4ed -.word 0xbab08c37 -.word 0x6392dc23 -.word 0xb87da639 -.word 0x7482afa6 -.word 0xd0283d14 -.word 0xd174cb26 -.word 0xdf7a0846 -.word 0x85bf39ed -.word 0x045bb240 -.word 0xf9576f04 -.word 0x69272f04 -.word 0x2bfd7dc7 -.word 0xe475dca6 -.word 0xceeb89e2 -.word 0xfb3a096e -.word 0xec1e958b -.word 0x10701822 -.word 0xc865fea4 -.word 0x36ebdf65 -.word 0xa07cca70 -.word 0xb7252146 -.word 0x9ee9b03e -.word 0x3539364a -.word 0x837f6dac -.word 0xffe0f1c3 -.word 0xb5515ddf -.word 0xfe615957 -.word 0x0631f1c1 -.word 0x0dae5a55 -.word 0xc6f42bd3 -.word 0x4477089e -.word 0x40a36e16 -.word 0xb8e2f196 -.word 0x77fca52a -.word 0x48b96fc6 -.word 0x0765f5f7 -.word 0x21babeef -.word 0x2b1f64cb -.word 0x6c5f429a -.word 0x8932e7ce -.word 0x015517c5 -.word 0x12905170 -.word 0x93c90ac4 -.word 0x3e61ef0f -.word 0x160a170f -.word 0x0bc14454 -.word 0x725fb40d -.word 0x065512c9 -.word 0x67a026e7 -.word 0x20937709 -.word 0x9f31bf07 -.word 0xe3036886 -.word 0x640daf6d -.word 0x4b88b04a -.word 0x7390208b -.word 0x2b8b18e6 -.word 0x55ff96c7 -.word 0x8eef9074 -.word 0x8acb2c0c -.word 0x1c097fba -.word 0x18f94196 -.word 0xbdf9facb -.word 0xd25f28a6 -.word 0x650ccf8f -.word 0x04e3c930 -.word 0x4a92e304 -.word 0x9454dd37 -.word 0x754b51e8 -.word 0x2fbf735a -.word 0x15a9b253 -.word 0x7d08b63a -.word 0xb2695720 -.word 0x1721ad36 -.word 0x32c3d61a -.word 0xf54fb7db -.word 0xd8a4b24b -.word 0xbbcf23b8 -.word 0x7c7d6352 -.word 0x7d9a57a3 -.word 0x2e761a66 -.word 0xaf62a4d4 -.word 0x32844a4a -.word 0x4a338588 -.word 0x8238924a -.word 0x358949b0 -.word 0x8671e070 -.word 0x6f2e34f3 -.word 0xe59b5566 -.word 0x3b6d4bfb -.word 0x27868cd2 -.word 0x00c7b1e2 -.word 0x9359312f -.word 0x7df93db4 -.word 0x015d1de5 -.word 0x6a3c4467 -.word 0xa0c982df -.word 0x9241e721 -.word 0x1613c1c4 -.word 0xc7791f57 -.word 0xa0112332 -.word 0x43616c35 -.word 0x55a3260d -.word 0x67c15ce0 -.word 0x1d392574 -.word 0x4e4d5e38 -.word 0x9ff2ba37 -.word 0x0f27b306 -.word 0xd14b1ef5 -.word 0x52a0820d -.word 0xb35b5c91 -.word 0x0898b48e -.word 0xc844e5b8 -.word 0x89e06c4e -.word 0xcc41a866 -.word 0xd4567a72 -.word 0xae03c227 -.word 0x7bf6556b -.word 0x296ef2cd -.word 0xbe72bdd8 -.word 0x9ce9fed3 -.word 0x984ee61a -.word 0x2bf6b404 -.word 0x60845ad3 -.word 0xb362b68d -.word 0x20734b1b -.word 0xeff56cd7 -.word 0x7f031f52 -.word 0x1725a325 -.word 0x2f3de16a -.word 0xfde10f30 -.word 0x30f3e61b -.word 0xc054f30c -.word 0x6ac303da -.word 0xcf2bacd3 -.word 0x41a9c128 -.word 0xe12c3968 -.word 0x1a75e34c -.word 0x30cc4ad3 -.word 0x1f0beafe -.word 0xc3f4c6af -.word 0x1df4c330 -.word 0xe29e49be -.word 0xedb81ee4 -.word 0x5dedbecd -.word 0x91168efa -.word 0xd9c6042c -.word 0xdd47d1f3 -.word 0x2daca8b8 -.word 0xdbfb9a12 -.word 0xaf8f3c68 -.word 0x5d644808 -.word 0x724d72ca -.word 0xbf1f3d69 -.word 0x9bf96d4a -.word 0x33674c8a -.word 0xf0f8c47e -.word 0xd5daa191 -.word 0x97840cd6 -.word 0xdcb72b92 -.word 0x4c7c7c8b -.word 0xc44a9b35 -.word 0x6481d96d -.word 0xfbb1f0b3 -.word 0x203f61e4 -.word 0x823472a9 -.word 0xb371398d -.word 0x14cf75fc -.word 0x7ba06d3b -.word 0x4a4e73af -.word 0x8cd7ce67 -.word 0xaba94090 -.word 0x3ca26e7f -.word 0x53c69a42 -.word 0x5ce840ac -.word 0x9b049822 -.word 0xa5b3335f -.word 0x5442038a -.word 0x41472e9e -.word 0x4bfdbeaa -.word 0x9c27c16d -.word 0x895a6ea1 -.word 0x75ecaf5c -.word 0x46e991bd -.word 0xc8e48abb -.word 0x8972771d -.word 0x27fbf3dc -.word 0x7b946827 -.word 0xf5aa0f46 -.word 0xc7c4e2cf -.word 0x02031290 -.word 0xbc864bd1 -.word 0x2178e7a5 -.word 0x5b81e728 -.word 0x00a3ca70 -.word 0x66939414 -.word 0x272c5e68 -.word 0x96583f1b -.word 0xa6e10dde -.word 0x27410224 -.word 0x48082290 -.word 0xfe76a2c2 -.word 0x0c2e03f5 -.word 0xa3bebc10 -.word 0xb188615c -.word 0x93c0f909 -.word 0x71322a28 -.word 0xb8d30aad -.word 0x83a738f8 -.word 0x43e8aa59 -.word 0xe30541b6 -.word 0x4ec2a9a2 -.word 0xaa8c2f7d -.word 0xacb6092b -.word 0xec02a0d8 -.word 0x8665ee45 -.word 0x8d93d28c -.word 0x6f39c18d -.word 0xfd672dff -.word 0x7606a0da -.word 0xedda5371 -.word 0x4961bc9a -.word 0x2f790a5c -.word 0x3048f83f -.word 0x03cc5ef9 -.word 0x3eadfc5f -.word 0xa59a3581 -.word 0x4a7d0a6d -.word 0x5a29e7d0 -.word 0x88c4aca6 -.word 0x66b32f89 -.word 0x1bc4dfe2 -.word 0x01d40337 -.word 0x8d6b4163 -.word 0xc43d986e -.word 0x45eaa549 -.word 0x8a4602aa -.word 0x3b172bf8 -.word 0x7363becb -.word 0x9ebda511 -.word 0x5b899448 -.word 0xde1045ec -.word 0xf70d3f40 -.word 0x16c4ba89 -.word 0xae6da812 -.word 0x491bd276 -.word 0xe6607d1c -.word 0xede7b29d -.word 0xc86c5398 -.word 0x6e15dcd8 -.word 0xee7c0995 -.word 0x11579451 -.word 0x24124ac3 -.word 0x2c32ce26 -.word 0x8d3a45a6 -.word 0x56db2a6d -.word 0x71bfb43f -.word 0x9f487cc8 -.word 0xef0a624d -.word 0xe738815c -.word 0x62dd5d9a -.word 0xd44e6218 -.word 0xafaaf55d -.word 0xc17d505b -.word 0x224abc65 -.word 0xa00d553a -.word 0x45ebeb76 -.word 0x110c3a63 -.word 0xc0966249 -.word 0x3414a8fa -.word 0x09d4b31b -.word 0xfa12b547 -.word 0x7f94e3d6 -.word 0x77f2eef4 -.word 0xa90357c7 -.word 0x07a7f495 -.word 0x246306dc -.word 0x308d18cf -.word 0x77109951 -.word 0x0eab801e -.word 0x1fdb08e0 -.word 0x003c1a45 -.word 0xb47706e9 -.word 0x3d46af5d -.word 0x00a7fd70 -.word 0x25489086 -.word 0xbdf000f8 -.word 0x9dc40812 -.word 0x52ffd7f7 -.word 0x06c7c985 -.word 0xbfbeea44 -.word 0xced73157 -.word 0x55299895 -.word 0xe52df8ff -.word 0xcb6cb779 -.word 0x03820428 -.word 0x84596062 -.word 0xcd4441a7 -.word 0x3cdd4500 -.word 0xa8998773 -.word 0xf5fa9e08 -.word 0xd24d2aca -.word 0x739d67d9 -.word 0x224bfeb2 -.word 0x57f0e3bb -.word 0xe155b63e -.word 0x50ae6db0 -.word 0x98f9644b -.word 0xdad30f5e -.word 0x7bc69e6c -.word 0xabfba967 -.word 0x46e551f0 -.word 0x05fd705b -.word 0xfce49a47 -.word 0xf5666fdf -.word 0x859cd6f2 -.word 0x50b0d563 -.word 0xa37822c8 -.word 0xec2a05e3 -.word 0x73318d65 -.word 0x414f4bc7 -.word 0xa34fc426 -.word 0x442888a2 -.word 0x57cd45bc -.word 0xe499ee30 -.word 0x24ec45bb -.word 0xe069394b -.word 0x3d3530b0 -.word 0xac7df8bb -.word 0x45158958 -.word 0x649810ca -.word 0xaec4ae4e -.word 0x21dd49d7 -.word 0x82147ef1 -.word 0x0cc195b7 -.word 0xb372f1a8 -.word 0x437a77a2 -.word 0x9710e548 -.word 0x7079fbcd -.word 0x919561d6 -.word 0xfc9930f0 -.word 0x00528493 -.word 0xbfac9bc6 -.word 0xdf47cba5 -.word 0xcb6a4867 -.word 0x33b82b07 -.word 0x0d0e1371 -.word 0x017a7761 -.word 0x58e85482 -.word 0x7a176af8 -.word 0xb468ab40 -.word 0xdadca372 -.word 0x7b8c1620 -.word 0x5bfd85a9 -.word 0xa5a6996a -.word 0xa6b4f6b2 -.word 0x933d44e9 -.word 0x0f57ed70 -.word 0x7a06fe30 -.word 0xa1b0beeb -.word 0x11369716 -.word 0xfa387c83 -.word 0x5283ed77 -.word 0x8343df18 -.word 0x6aef60b4 -.word 0xcb3948bd -.word 0x8d6a7d05 -.word 0x2784899c -.word 0x08d33e4c -.word 0x969b578e -.word 0x6406615b -.word 0xaa82d05a -.word 0xea82c335 -.word 0x6ea6d7f9 -.word 0xff6e1876 -.word 0xa8a18c3b -.word 0x8347f689 -.word 0x8a8b5426 -.word 0xcfc79f9d -.word 0xd4a858fe -.word 0x4b591181 -.word 0x392fa4a4 -.word 0x46f78025 -.word 0x6268ddda -.word 0x5579b7cb -.word 0xdd67f677 -.word 0xed058eff -.word 0xb1e66fda -.word 0xdbd71f2d -.word 0x7f22aec4 -.word 0x01a44f67 -.word 0x8fc6eecf -.word 0x1a1d335a -.word 0x30ee82c6 -.word 0xf0cb2620 -.word 0xe2c1259d -.word 0x502b25ea -.word 0x6c70dc97 -.word 0x3320c51f -.word 0x2ecb6ffb -.word 0xd6b56a04 -.word 0xdfce75fd -.word 0xfe2d9764 -.word 0x779d8c2b -.word 0xa1ff3ed7 -.word 0x05522221 -.word 0x5e123a05 -.word 0xa987d9a5 -.word 0x45e76c17 -.word 0x40735d8b -.word 0x0ebe8903 -.word 0x87a8830e -.word 0x73c03904 -.word 0x95552427 -.word 0x50f6e1af -.word 0x8fc1aa2a -.word 0x9e9f06fe -.word 0xac2c4a0f -.word 0xc3351cd7 -.word 0x7ca2cc16 -.word 0x8400aaa5 -.word 0x1494855f -.word 0xb96b87ed -.word 0x753f93bf -.word 0xd2659071 -.word 0xb6aaaa8c -.word 0x8f55cdf1 -.word 0x02ac6fb1 -.word 0x86c663f2 -.word 0xfd6db375 -.word 0xf0a637e5 -.word 0x47f5a89b -.word 0xdd1f35b8 -.word 0xf031afe6 -.word 0xca5d1f45 -.word 0xd5082951 -.word 0x3a53abdb -.word 0x6cdd6dde -.word 0x0ad141c9 -.word 0x992da931 -.word 0x7793d984 -.word 0x3563583f -.word 0xb02b2a82 -.word 0x0ab9090c -.word 0xda4fb804 -.word 0x6db872bc -.word 0x3370f3f4 -.word 0x3aa5d5ac -.word 0x1e2364de -.word 0x4d88dc88 -.word 0x984c0585 -.word 0x24e5b3d5 -.word 0xf31b7026 -.word 0xdfb263b2 -.word 0xd51dfde7 -.word 0x03041f40 -.word 0x8378df51 -.word 0x0dceee11 -.word 0x77ce3228 -.word 0x7a7ea0c2 -.word 0x4d27fee5 -.word 0xe0393451 -.word 0x283b9fa0 -.word 0xb97b4ed7 -.word 0xca2a42fb -.word 0xc34ed0b8 -.word 0xf6628dc2 -.word 0x5bbe9fdc -.word 0x884dc4b7 -.word 0x332d3279 -.word 0xa9ee0379 -.word 0x134c1794 -.word 0x7310866c -.word 0xf006b7a7 -.word 0x8be52dc5 -.word 0x26062604 -.word 0x7ec6474e -.word 0x3ab7be2f -.word 0x6860d70d -.word 0xa10f8deb -.word 0xb4113785 -.word 0xdc8d824d -.word 0x51c2ceab -.word 0x961f5a17 -.word 0xdc8df109 -.word 0xfabc8507 -.word 0x9a65752e -.word 0x9a3f8fb3 -.word 0x2d924590 -.word 0xed90dcb4 -.word 0xe16e02f9 -.word 0x949d7dd5 -.word 0x95dc4652 -.word 0x4b6ea796 -.word 0xf000df17 -.word 0x9da832f2 -.word 0x3d4b556e -.word 0xb0427c99 -.word 0xe9920ba5 -.word 0xfcd1440d -.word 0x516f3f8f -.word 0x1c8257ab -.word 0xf2521dbc -.word 0x4cec7e9b -.word 0x35670a88 -.word 0xff725db8 -.word 0xf4d54d9a -.word 0x76c2eda0 -.word 0xb8443fbb -.word 0x0f00a1b2 -.word 0x4a647442 -.word 0x51c7c2be -.word 0x9d5a3b2b -.word 0x11d17a3e -.word 0xfaa5229b -.word 0xc112ca9d -.word 0x70aa52ff -.word 0x9a0ebfa4 -.word 0x1bc94f55 -.word 0x6f2faafc -.word 0xc14e0c10 -.word 0x8dfd4d57 -.word 0x897ae85f -.word 0x4e503af4 -.word 0xe478bda4 -.word 0xac043390 -.word 0x86b9aa03 -.word 0xc6906c12 -.word 0x3730694b -.word 0x19c1d743 -.word 0xbe59fbda -.word 0xdd992db0 -.word 0xc37e3f9b -.word 0xadfe1b2a -.word 0x90898059 -.word 0x6a4a64f1 -.word 0x2057d379 -.word 0xd264dddb -.word 0x9ecc98fc -.word 0x71c8aab3 -.word 0x8f3c11e0 -.word 0xb47542d0 -.word 0x8c3e5b35 -.word 0x4cde7867 -.word 0x5ce1881e -.word 0x950c2485 -.word 0xb018e72f -.word 0xcab73433 -.word 0xb275174d -.word 0xd225f295 -.word 0xd76e104a -.word 0x28e1063e -.word 0xa3ab981d -.word 0x0ef59342 -.word 0x7cf03c21 -.word 0x127f9188 -.word 0x726e1328 -.word 0x344d7310 -.word 0x100bccd1 -.word 0x9d6cfd6e -.word 0x432e933a -.word 0xe161a0b2 -.word 0x13e98c52 -.word 0xf92bf7ac -.word 0x3142aba8 -.word 0xabc2aa91 -.word 0x38b32455 -.word 0xaa474b05 -.word 0x7cf81d4d -.word 0x554077aa -.word 0x9d16aa8d -.word 0x9e031f7d -.word 0xd327d6a2 -.word 0x50120755 -.word 0x26822431 -.word 0xb1e68917 -.word 0x0c8925a2 -.word 0x404526ab -.word 0x77c1bd08 -.word 0x9798f4ae -.word 0x1226137e -.word 0xb0cc4228 -.word 0xf650c75a -.word 0xc63711c7 -.word 0x12319c8f -.word 0xf11b1bcf -.word 0xa62c4c89 -.word 0x8872c5c7 -.word 0x779bdbb4 -.word 0x1b19bb3a -.word 0xb0a3bb9f -.word 0x61bef60d -.word 0x68b671ae -.word 0xa113b491 -.word 0xece3e754 -.word 0x864cc604 -.word 0x0d8b0445 -.word 0x8f42c95b -.word 0xb945ba69 -.word 0xacda6eb5 -.word 0x44f5e09c -.word 0xa8122b6b -.word 0x2566d191 -.word 0x6fa3258f -.word 0x9cc19891 -.word 0x8ab96e9a -.word 0x1f737fd5 -.word 0xd1f71e35 -.word 0xc3469c8b -.word 0xda766194 -.word 0x11d1ed38 -.word 0xf7bca5ad -.word 0x51360ccf -.word 0x42c6cd83 -.word 0xac6bda10 -.word 0xa8bfdbfd -.word 0xab135bbc -.word 0x715e3c4e -.word 0xdc514f70 -.word 0x365b5077 -.word 0x982effda -.word 0xaffb856e -.word 0x78085c6c -.word 0x0b7082eb -.word 0xd6731614 -.word 0x9b4b4b5a -.word 0x4460c218 -.word 0xa7e3c30e -.word 0x00990fcf -.word 0xffc83f86 -.word 0x2da98235 -.word 0xfeaf2f32 -.word 0x9434270b -.word 0xdfaa94d6 -.word 0x7d13f48a -.word 0x9fafcbee -.word 0x3e9fa197 -.word 0x6afee9c5 -.word 0xfdaddcd8 -.word 0xf29af2f4 -.word 0xa4183924 -.word 0xd7372998 -.word 0x1c3fb7e3 -.word 0x48c68bcb -.word 0xad9cc940 -.word 0x91122eb8 -.word 0xc2a12f6c -.word 0xc06f2473 -.word 0xe6e4c944 -.word 0xf62191de -.word 0xabbde670 -.word 0x1e16c833 -.word 0x9463f75e -.word 0xbed70a8c -.word 0x054ff0c4 -.word 0xf9b76c17 -.word 0x7db3b1d4 -.word 0x31913ceb -.word 0x7f0738c7 -.word 0xbabc453f -.word 0xf30340bc -.word 0x5d26b666 -.word 0xb8247d9b -.word 0xf7a0eaef -.word 0xe527c4df -.word 0x41ec1c98 -.word 0x413d55ad -.word 0x53cae635 -.word 0xc2a97502 -.word 0xc7467c37 -.word 0x3e493a61 -.word 0x5ac04a97 -.word 0xf0f21b0f -.word 0xa7ea05bf -.word 0x4254afa2 -.word 0xc68586e6 -.word 0x5b3223f6 -.word 0xf98cfaf8 -.word 0xd1b10f29 -.word 0xd7ad701e -.word 0xd9f95910 -.word 0x1949ec8b -.word 0x0b9b8ab7 -.word 0x09e8f917 -.word 0xe8015c57 -.word 0x2eac5119 -.word 0x5fd078fe -.word 0xd2a1b9db -.word 0x2964f407 -.word 0x9a7cda08 -.word 0xfd7bb78a -.word 0x89dc945d -.word 0xd2590bcc -.word 0x9838340e -.word 0xfac549ab -.word 0xef774d3b -.word 0xef79358f -.word 0xfb7db504 -.word 0x00d93d6c -.word 0x617363e5 -.word 0xf7f2b715 -.word 0xfb9bacc8 -.word 0x83d40598 -.word 0x63039d8e -.word 0x07bdde3e -.word 0x9978e008 -.word 0xca78bc7c -.word 0xcbcb86ef -.word 0x4d326ff0 -.word 0x524cbe28 -.word 0x26226ab4 -.word 0xf68422a7 -.word 0x0d037250 -.word 0x3cf62b8a -.word 0xaf3af556 -.word 0xfb10f552 -.word 0x2057e66b -.word 0xf642dbaa -.word 0x9a756451 -.word 0x793ccf3d -.word 0x557745a7 -.word 0x43ec02fe -.word 0xd13b65c9 -.word 0x9c70f04a -.word 0xfed57db0 -.word 0xfc338319 -.word 0xf3d65a26 -.word 0x8f378f1f -.word 0x9acde669 -.word 0x031447a0 -.word 0xb255af38 -.word 0xdedf6da3 -.word 0xe684fc5a -.word 0xb641d8de -.word 0x01298a8e -.word 0x0e29a7c5 -.word 0xaf610e79 -.word 0xd1757445 -.word 0x250882db -.word 0xfb8fdae7 -.word 0xec5b9582 -.word 0xc004cb00 -.word 0xef9033cb -.word 0xa20a130c -.word 0x44fc60ef -.word 0x0d9ee9cd -.word 0x506cba3a -.word 0x0a81ce25 -.word 0x3a0aaa8f -.word 0x7c0ec1ea -.word 0xfceed457 -.word 0x46bb330d -.word 0x06096d21 -.word 0xdbd57ceb -.word 0x21852d44 -.word 0x0c861456 -.word 0x91cb7f84 -.word 0x56c8b05c -.word 0x99fd48e7 -.word 0x2e1d0687 -.word 0xb6ceea17 -.word 0x6cc87731 -.word 0xd6df66ec -.word 0x21dce12c -.word 0xde3fb42b -.word 0xe1aa41a8 -.word 0x7ae0ecaa -.word 0x93203319 -.word 0x35be9f4c -.word 0x59fcec7c -.word 0x6b5490e3 -.word 0x2f17a4e9 -.word 0xdad5ca39 -.word 0xb7853ad6 -.word 0xa1447804 -.word 0xb8f983f7 -.word 0x0d8895bd -.word 0x2d30b09a -.word 0x4cddce02 -.word 0x6e07422c -.word 0x9d7a4a55 -.word 0x79dbafc2 -.word 0xa4da3591 -.word 0x77c54896 -.word 0x06a91bb5 -.word 0x0888b9e8 -.word 0xe1c54827 -.word 0x6fa95733 -.word 0xa647bf30 -.word 0x409c8739 -.word 0x9356be95 -.word 0x6613e1b4 -.word 0xe5b62073 -.word 0x804cf225 -.word 0x0e11adf8 -.word 0x9696e44a -.word 0x3bf85bc9 -.word 0x0a1edaaa -.word 0x61dd4d37 -.word 0xd2d11cf9 -.word 0x64325420 -.word 0xd303cc16 -.word 0x0d9d95dc -.word 0xdec0f36c -.word 0xded3475d -.word 0xc2f23ce3 -.word 0xf13602a5 -.word 0x7e726bf5 -.word 0x2cdea984 -.word 0x4b1043ca -.word 0x2605b54d -.word 0x4027cb11 -.word 0xc2d0b78b -.word 0x589ce3e6 -.word 0xbae6caac -.word 0xf953db0f -.word 0x8af3354d -.word 0x51496b83 -.word 0x4665455b -.word 0xdd01c90f -.word 0xdd6fa38a -.word 0x7db44b30 -.word 0x4456e304 -.word 0x52fd8451 -.word 0x21c00a21 -.word 0x56f19956 -.word 0xb43fd9c4 -.word 0x13c8a9b4 -.word 0x23267075 -.word 0x0514599b -.word 0x2991b0a2 -.word 0xd31f5b1d -.word 0xa5eb8547 -.word 0x33167266 -.word 0x74dbccab -.word 0xdf838eb4 -.word 0x598c5cb4 -.word 0xb87d34fa -.word 0xb7521d90 -.word 0x2da1b565 -.word 0xb41b4905 -.word 0x2cf3f011 -.word 0x0b2311e6 -.word 0xd5380866 -.word 0x93ba2e74 -.word 0xa0b54be3 -.word 0xc3475210 -.word 0xe575ede0 -.word 0x1c44954f -.word 0xd4aa2726 -.word 0xa50dfa2d -.word 0xe0b3a7fb -.word 0xe6dab92b -.word 0x303585c2 -.word 0x8743b0f8 -.word 0xafa6ff3f -.word 0xab4d3c9d -.word 0xbe48546b -.word 0x3c64fc28 -.word 0xbeeba59b -.word 0xbc319332 -.word 0xfd4ee500 -.word 0x97587290 -.word 0x5e594d60 -.word 0x5fb37909 -.word 0x089d2010 -.word 0x349b7bf4 -.word 0xaf161a09 -.word 0x56f46324 -.word 0x2516f042 -.word 0x67413abb -.word 0xcfbbc9b1 -.word 0xe9f19a93 -.word 0x890efcb9 -.word 0xbf5edd99 -.word 0xb43757eb -.word 0xda41298b -.word 0x5c9b8fc0 -.word 0x17080931 -.word 0x11f8eb54 -.word 0x3e766a22 -.word 0xf9ae4fd8 -.word 0x413a7a5f -.word 0xf150d7ce -.word 0xfc4182b6 -.word 0x43884fc9 -.word 0x044233b4 -.word 0x14d90238 -.word 0x3e34278d -.word 0x3b0b6e51 -.word 0x89d0375b -.word 0x87e35038 -.word 0x7844eef1 -.word 0x42bd6e79 -.word 0x23538123 -.word 0x00b03435 -.word 0xfaea022f -.word 0x16ed63b5 -.word 0x0f69a2b7 -.word 0x2cf56dd8 -.word 0x327e66ca -.word 0x5a559fee -.word 0x030f5ad4 -.word 0x29f1f309 -.word 0xa15bbf22 -.word 0xca3e421c -.word 0xbbecd570 -.word 0xac95b925 -.word 0xca76ea51 -.word 0x87b879ae -.word 0x6637a82d -.word 0xc2d6bfc8 -.word 0xc6789b3a -.word 0xb49ae62d -.word 0xecf7e1a4 -.word 0x3539926a -.word 0x75b644f9 -.word 0xb10550b4 -.word 0xcb568871 -.word 0x177fe768 -.word 0xd4013437 -.word 0x6a3ee5d7 -.word 0x761ac201 -.word 0xc8ecd594 -.word 0x9c34e5cf -.word 0x056b34b8 -.word 0x1500c252 -.word 0x89228edb -.word 0xd9cdde04 -.word 0x65dab62b -.word 0xfbd66a12 -.word 0x4c40d4c4 -.word 0xe2169de1 -.word 0x37bcb839 -.word 0x02932582 -.word 0xf9759111 -.word 0xb45dacdc -.word 0x9a4b0ac5 -.word 0xc9d150b3 -.word 0x51554151 -.word 0x2492e399 -.word 0xf84176f5 -.word 0x0c2b3612 -.word 0x7bceb10b -.word 0xca03b775 -.word 0xdd78de71 -.word 0xab58211d -.word 0xde770b74 -.word 0x84f4ada6 -.word 0xd5ece582 -.word 0x09c14214 -.word 0x28eaf34c -.word 0xbeb26f4f -.word 0xbb1e5d3d -.word 0x1596d31b -.word 0x956376f0 -.word 0xa5dcf9b8 -.word 0x2fa4e17e -.word 0x39e5e02c -.word 0x68f9c72c -.word 0xe97467dd -.word 0x5faaa5d2 -.word 0x403a7cd0 -.word 0x3e9be8f3 -.word 0xe37119e1 -.word 0x543ca6cc -.word 0x0a84953a -.word 0x5ed867ac -.word 0xa2985b86 -.word 0xb244b5f8 -.word 0x066af3a6 -.word 0x42f0681a -.word 0x0f8478df -.word 0xdfe92d30 -.word 0x7097209a -.word 0x07e07181 -.word 0x0e602cc1 -.word 0x70a7c08a -.word 0x5cb24166 -.word 0xe0e80c82 -.word 0xf4acd9ff -.word 0xa3b32d13 -.word 0x4e19f9b1 -.word 0xf6e28094 -.word 0xf15e1f77 -.word 0x8af7fcd1 -.word 0x510371c9 -.word 0xea8db6d8 -.word 0xdd49de2e -.word 0x23949876 -.word 0x33864b3c -.word 0xbc3877fd -.word 0x69b5e87e -.word 0x7d796629 -.word 0x713c6dfd -.word 0x8d5f829b -.word 0x9dc17915 -.word 0x9f2c735f -.word 0xffac35d9 -.word 0x83403236 -.word 0xb7437331 -.word 0xda1f4cd9 -.word 0x052f76ec -.word 0xdb4874a3 -.word 0x44b58ed7 -.word 0x5185a1b2 -.word 0x84c30475 -.word 0x850cb2b9 -.word 0x6269018a -.word 0x2c5a6da1 -.word 0x65fc1174 -.word 0xf3432e99 -.word 0x2c12931d -.word 0x5edd2259 -.word 0x4aac386f -.word 0xfe377cbb -.word 0xb3a04e26 -.word 0x8cf87166 -.word 0x920fc339 -.word 0xad69ff03 -.word 0xd9a154aa -.word 0xeb2b65d4 -.word 0x64ab9b2c -.word 0x5e1a4114 -.word 0xe5ad31f6 -.word 0x7d116fb2 -.word 0x4bf34bab -.word 0x7f5f4c88 -.word 0x32e229c7 -.word 0xe46c24cd -.word 0x720c2811 -.word 0xc28904d9 -.word 0xbecdbd3c -.word 0x23735a0c -.word 0xad98e3cf -.word 0x951e8c92 -.word 0xf12db6f1 -.word 0x040ec0a9 -.word 0x6c13b51e -.word 0x988ae7d7 -.word 0x86f50e26 -.word 0x09406f6b -.word 0x0c05c6df -.word 0x58392d94 -.word 0x960ae38a -.word 0xb2bf877f -.word 0xc0432062 -.word 0x467962f9 -.word 0xe450d54e -.word 0x83daa4e2 -.word 0x92dab761 -.word 0x3c198436 -.word 0xae18133e -.word 0x1f53be6d -.word 0x9d93bea5 -.word 0x5a5f2ead -.word 0x1642bb96 -.word 0x566baba0 -.word 0x2738fae3 -.word 0xa45df790 -.word 0x850d9402 -.word 0x59a61403 -.word 0x9d66e523 -.word 0x3d323b01 -.word 0xaca227a1 -.word 0x93cd0dff -.word 0xe09387ce -.word 0x537ed05b -.word 0xe73f0dc4 -.word 0x4dd27f92 -.word 0xeb963125 -.word 0x9aa9a1a3 -.word 0x0f888a15 -.word 0x51e53f55 -.word 0xd60b8203 -.word 0x2fdf1144 -.word 0x15e91aad -.word 0x34aeb92a -.word 0xdd0b2d7b -.word 0xba499c56 -.word 0x71576351 -.word 0xbb6a2ee8 -.word 0x2f3af091 -.word 0x7575abb2 -.word 0x5f3f3940 -.word 0x66068276 -.word 0xf30eadc4 -.word 0x2fd1700b -.word 0x0be5ecec -.word 0x6d1b3761 -.word 0x3b56f543 -.word 0x08559648 -.word 0x16116589 -.word 0xd22490c4 -.word 0x960cca6a -.word 0xca9aae0f -.word 0xf1c17f49 -.word 0xad7ecaf7 -.word 0x44f8ac01 -.word 0x19e47e18 -.word 0x1742e262 -.word 0xac65e80f -.word 0x5006de79 -.word 0x5dd3561c -.word 0xdaf60179 -.word 0xc32bcaae -.word 0xaea55a74 -.word 0xb686371f -.word 0x9970f91c -.word 0xb2bd5058 -.word 0xd179ad75 -.word 0x56af6cf1 -.word 0x7c47ecb6 -.word 0xc2f7401d -.word 0xabeb221b -.word 0xf4a28ee0 -.word 0x9fc8a794 -.word 0x7135b0be -.word 0x883a578b -.word 0x2023783b -.word 0xebf1d20b -.word 0x33ec519b -.word 0x95c9cfb8 -.word 0x5f6ba299 -.word 0x28fd63e0 -.word 0x37403189 -.word 0x7ff56258 -.word 0x7027e1f4 -.word 0x11f5d835 -.word 0x33328569 -.word 0x592508c6 -.word 0x1a34579e -.word 0x7c7f0411 -.word 0x0d65a179 -.word 0x3c1f29b9 -.word 0xe705ffc3 -.word 0x9c4c3a17 -.word 0xf6eddf61 -.word 0x880892c9 -.word 0xa3a00b3a -.word 0xe846daf6 -.word 0x4a939b6a -.word 0x6e5bf036 -.word 0x4c29c689 -.word 0xcd1f9636 -.word 0x493717f1 -.word 0xfb0f153b -.word 0x9ecec4ba -.word 0x2c83a890 -.word 0xe9ef0719 -.word 0x77352d0b -.word 0x20bcc5a3 -.word 0xc1c064b5 -.word 0x7f257abb -.word 0xe0fa930a -.word 0x08eefedd -.word 0x7185a4c2 -.word 0x1f7f62fc -.word 0x6048151e -.word 0x214019f2 -.word 0x2aef1ff5 -.word 0x5861c731 -.word 0xc111f2bf -.word 0xf4beabb5 -.word 0x5fd4f533 -.word 0x2db9ac5d -.word 0x08ca4ce7 -.word 0x2e6405e5 -.word 0xbb81eac2 -.word 0x232814f4 -.word 0x977f926d -.word 0x4b341769 -.word 0xe722aded -.word 0x71eb488c -.word 0x53bf7c46 -.word 0x4402e851 -.word 0x0fbca066 -.word 0x62060546 -.word 0x62fac5b1 -.word 0x2922c6e2 -.word 0x847c5930 -.word 0x3776fcd4 -.word 0xb5e81f20 -.word 0xa3f2cdbd -.word 0xb818b5de -.word 0x39441bc5 -.word 0x7bca6a52 -.word 0x613635f9 -.word 0xf83677c3 -.word 0x2784a100 -.word 0xbe4cc4fe -.word 0x4327ea80 -.word 0x401060a6 -.word 0xd8454c7f -.word 0x0ad8f21f -.word 0xbd076b71 -.word 0xd4a3699c -.word 0x4218331e -.word 0x6ddb453d -.word 0x8e611da4 -.word 0x8e636e30 -.word 0x6971170f -.word 0x31a34b4d -.word 0x531afd5e -.word 0xa53ef4b3 -.word 0x7359addb -.word 0xd20fca35 -.word 0x7c5189b5 -.word 0x40a39e11 -.word 0x32753cef -.word 0x495741c2 -.word 0x6e194825 -.word 0x39386906 -.word 0x1b0d8b10 -.word 0x6efb7824 -.word 0x330beb08 -.word 0x51023b3f -.word 0xdbe709a8 -.word 0xe2420ec6 -.word 0x8b97532e -.word 0x30635ab2 -.word 0x1d9606a3 -.word 0x9a0bc27d -.word 0xe5d894f1 -.word 0x1d349e00 -.word 0x826b5dad -.word 0x8962e5d0 -.word 0xfe9d021f -.word 0x3507f366 -.word 0x568e6846 -.word 0x70324f34 -.word 0xcd2f05b0 -.word 0x58707433 -.word 0x80c432a1 -.word 0x2515f205 -.word 0xf9fca246 -.word 0x40675937 -.word 0x074f6f6a -.word 0xbd814deb -.word 0x2f8299e2 -.word 0x52dc7d29 -.word 0xd7f5d8f7 -.word 0xbbca370e -.word 0xbc1b38ba -.word 0x7be83269 -.word 0x2dace685 -.word 0xf45453b1 -.word 0xc0b2cf47 -.word 0x469c1a71 -.word 0x199df09a -.word 0xb75800d8 -.word 0x6b55d0a5 -.word 0x1e482f89 -.word 0x8b65576f -.word 0xe37fe11e -.word 0x71c32041 -.word 0x1dde7ff1 -.word 0xd861f7ef -.word 0x1b191dc3 -.word 0xb3254c28 -.word 0x3dd2ecd3 -.word 0xd0f71013 -.word 0x31871b84 -.word 0x7ee25013 -.word 0x6c51530c -.word 0xcf36659b -.word 0x04f8eb18 -.word 0x0b310d12 -.word 0xd925d442 -.word 0x2f074773 -.word 0x042e6671 -.word 0x4f0eb134 -.word 0x44225e61 -.word 0x5e4e6186 -.word 0x2f621396 -.word 0xc35425aa -.word 0x622955fb -.word 0x577e22b6 -.word 0xcb08fb32 -.word 0xa57df7dc -.word 0x6cc22d99 -.word 0xad4a2d17 -.word 0x05f1ec34 -.word 0xd57e8326 -.word 0xbb162cce -.word 0x50612838 -.word 0x7626385a -.word 0x8bce7f8c -.word 0xdca4ad98 -.word 0xb2f47c98 -.word 0x3384105b -.word 0x34bb083c -.word 0x2933a658 -.word 0x7ff875a7 -.word 0x3d8f1cfe -.word 0xd486520f -.word 0x9d825a4b -.word 0x4f1cfa57 -.word 0xc4d38cb1 -.word 0x517604b1 -.word 0xdc2fa3b4 -.word 0xc5c3d2ca -.word 0xacf1759f -.word 0x0db45eba -.word 0x82a137fd -.word 0x43be657d -.word 0xbead6f29 -.word 0x4f532c9f -.word 0xc811a59f -.word 0x96eb8535 -.word 0xd49022b7 -.word 0xd3dee97b -.word 0x695ba9f7 -.word 0xa53d8c0d -.word 0x876bf691 -.word 0xc0b312e6 -.word 0x8dbe131e -.word 0x0c8b7e9d -.word 0xd47f3ff7 -.word 0xe72b9b5b -.word 0x513b859e -.word 0x82275464 -.word 0x613840f3 -.word 0x4f892884 -.word 0xab032365 -.word 0xcee646fa -.word 0xe589388b -.word 0x29d441fe -.word 0x4a65b469 -.word 0xd4620432 -.word 0x583bf5cf -.word 0x23a76009 -.word 0x3cbf498e -.word 0x0cfe24af -.word 0x35524449 -.word 0xd46ce249 -.word 0x35e47524 -.word 0x9e335c5a -.word 0xbdefaa46 -.word 0xead4ea53 -.word 0xbd53ebdd -.word 0xab8bf3a5 -.word 0xd3f13cc6 -.word 0xd6932c7b -.word 0xf9e88ff1 -.word 0x0389fbfe -.word 0x29719647 -.word 0xaa68d2d1 -.word 0xe13e0495 -.word 0xa0d995df -.word 0x22f30f13 -.word 0xafd968da -.word 0x20eda7bf -.word 0xd1d731f8 -.word 0xc70c1639 -.word 0x31e1e263 -.word 0x089e7b63 -.word 0xdb40deb0 -.word 0x49b273bb -.word 0xdd4229b0 -.word 0x49e3ace2 -.word 0xb8a3a96c -.word 0x87b8937d -.word 0x2fb8682f -.word 0xfe3062ef -.word 0xfb95c193 -.word 0xd3394030 -.word 0xe575485a -.word 0xc22c40f1 -.word 0x5894835f -.word 0xbc679cec -.word 0x4da7528f -.word 0xaa094153 -.word 0xa34f2fb8 -.word 0x7478ed49 -.word 0xe53ac1d6 -.word 0xe0f0d4c2 -.word 0x3a30ecd2 -.word 0xb9066a9a -.word 0x7bd55171 -.word 0x1f6288df -.word 0xf4d81456 -.word 0xd540d318 -.word 0x93957ae8 -.word 0x7d663aa4 -.word 0x85226de6 -.word 0x163075ae -.word 0xf797d0af -.word 0x76264692 -.word 0xf32a8387 -.word 0xd7b1a827 -.word 0x315850d4 -.word 0xefbfafde -.word 0xedb34dea -.word 0x23236c4d -.word 0x34f6f886 -.word 0xd178a334 -.word 0x4cd5fe3c -.word 0x8d29c027 -.word 0x683e7278 -.word 0x0b80eea1 -.word 0x00560ab7 -.word 0xe27d4d63 -.word 0x57a176e3 -.word 0xef0a91b4 -.word 0xc2642408 -.word 0xfd303c42 -.word 0x5497f074 -.word 0x96b6ad20 -.word 0xaa87cb68 -.word 0xbe5fd468 -.word 0xbeedc797 -.word 0x00fcfefb -.word 0x1b2ed96d -.word 0x2a1e1808 -.word 0xc693a4db -.word 0x3fb78a79 -.word 0xb0f33ab7 -.word 0xe7a865aa -.word 0xa5a8d764 -.word 0x92993cab -.word 0x6374aa45 -.word 0x29411126 -.word 0xfae2aab6 -.word 0xcfa1ec5b -.word 0x85ca98b7 -.word 0x986673c2 -.word 0x0ee5502a -.word 0x26c645fe -.word 0x5c6e88cc -.word 0x262fe5f7 -.word 0x778e3ff7 -.word 0x523cb2ce -.word 0x58c9c836 -.word 0x8c9a0264 -.word 0x0ad475b0 -.word 0x5ec94250 -.word 0xcac843ce -.word 0x1b436e05 -.word 0xbc7b977b -.word 0x7b084cdf -.word 0x4187338e -.word 0x1068dc7a -.word 0xf3a0f5a5 -.word 0xf343d590 -.word 0xecf66b0f -.word 0x02cd020d -.word 0x9aa8bc3f -.word 0x354979c8 -.word 0xcd1ab375 -.word 0x39038897 -.word 0x477f03e4 -.word 0xc8fa9a37 -.word 0xb6884a1f -.word 0x91454013 -.word 0x8e2cbb3d -.word 0xce60dc58 -.word 0x5eb52a21 -.word 0x75718b5c -.word 0x6d1afd99 -.word 0x68670f05 -.word 0x9834ddf2 -.word 0x2c6cadda -.word 0x2a23c16b -.word 0x927634ec -.word 0x90394ddb -.word 0x6daf4408 -.word 0xec0309e4 -.word 0xeb774393 -.word 0x107f5301 -.word 0x7714e68e -.word 0x9befb884 -.word 0xadce000a -.word 0xc68ebc9c -.word 0xc66431cd -.word 0x636c6767 -.word 0x01528192 -.word 0xdf6fa47d -.word 0x36193e76 -.word 0x1850b37c -.word 0x7027afb1 -.word 0x648f7d15 -.word 0x16bbc3c6 -.word 0xfe896587 -.word 0x434b27fd -.word 0x1a3e5d29 -.word 0x4741a4a9 -.word 0x352fee91 -.word 0x9b63dd26 -.word 0x190e9b76 -.word 0xaa77b2a3 -.word 0x71291caa -.word 0x2132bba1 -.word 0xe1eb1ba5 -.word 0x2561af6f -.word 0x3a5f0b3e -.word 0xf4b6dceb -.word 0x8b08359d -.word 0x487a2e49 -.word 0x6a30533f -.word 0xa6517ba6 -.word 0xdca5f80f -.word 0x62b0f880 -.word 0x64734381 -.word 0xc0ea9804 -.word 0xbda664ff -.word 0xbe1e89c4 -.word 0xf7e73dca -.word 0x837e3df3 -.word 0x251a7276 -.word 0x85781942 -.word 0x121b0db8 -.word 0x3738732c -.word 0x042835e4 -.word 0x31d103f0 -.word 0x16c53ae5 -.word 0xc79130f6 -.word 0x03f8b291 -.word 0x2678995f -.word 0xfc0f0b44 -.word 0x23ec7814 -.word 0xf67b1fb9 -.word 0x53b3e7f8 -.word 0x9b74d8a2 -.word 0x33ea1ef9 -.word 0xffae0387 -.word 0x5a7f37a4 -.word 0x400bacd3 -.word 0xf8dd8285 -.word 0xb6bc0cc5 -.word 0x1b463115 -.word 0x038c3b75 -.word 0x8a290cbe -.word 0x89304e8c -.word 0x5fdbdf3f -.word 0x14e0b7be -.word 0x92d4395a -.word 0x883519e0 -.word 0x7c14e478 -.word 0x459823fc -.word 0x7a5d32a0 -.word 0xb836009b -.word 0x8d4cad72 -.word 0x88bc5217 -.word 0xcb5f3f02 -.word 0xb8335d9f -.word 0x646c0077 -.word 0x494868d1 -.word 0x17ec7d7d -.word 0x4091f851 -.word 0x4fa20e3c -.word 0x115777f9 -.word 0x92cd35b8 -.word 0xeda5aeb6 -.word 0x1f3bfeaa -.word 0x94032bb5 -.word 0xdd85a6a0 -.word 0xa0af4f36 -.word 0x6d6c8d28 -.word 0x321f7094 -.word 0xc3634782 -.word 0x74381776 -.word 0xc44dfeaf -.word 0x16bbde82 -.word 0xc1d3dab9 -.word 0xcf48e168 -.word 0x447873ed -.word 0x62efa6b0 -.word 0xb63f0f8d -.word 0x140699ac -.word 0x479e5ff7 -.word 0xc0fe2f26 -.word 0x16479274 -.word 0x16cc5341 -.word 0x99983ab3 -.word 0xb1ae1b65 -.word 0x35e16f55 -.word 0xbb4109ac -.word 0x9e5cf15e -.word 0xb031393c -.word 0xad734227 -.word 0x3a609d73 -.word 0x8b436ec3 -.word 0x5ec2f433 -.word 0xd7fae758 -.word 0xadd35c0c -.word 0xfab24dd5 -.word 0x0ab6f751 -.word 0xc7b683b1 -.word 0x03f8c2f1 -.word 0x9c168cab -.word 0x0e848f96 -.word 0xe4bc374b -.word 0x2f60808e -.word 0xe3f80e2d -.word 0xdff2cd21 -.word 0x1e9e5751 -.word 0x1a1b2381 -.word 0x6be6c9be -.word 0x51b8346f -.word 0xb6d41efb -.word 0xb5dbc9bd -.word 0xad9ddfcc -.word 0x8f7c7aa9 -.word 0x261dffce -.word 0x63b3b0ce -.word 0xde00d742 -.word 0xdc5172e3 -.word 0x433401b2 -.word 0x63c3f2a8 -.word 0xe8d2c416 -.word 0x26d6cec9 -.word 0x9cc999d2 -.word 0x7326be2c -.word 0xf6c006da -.word 0xeae85c22 -.word 0x569c6c62 -.word 0x352f140b -.word 0xb175c37e -.word 0x35c0d512 -.word 0x3cf9b9e9 -.word 0xf6140ef5 -.word 0x701af4d1 -.word 0xbd7e757d -.word 0x43a4b41b -.word 0x747ea3bd -.word 0xcc75de9a -.word 0xc0793aa9 -.word 0x4d0f2f61 -.word 0xb5b21d7c -.word 0x85ae6932 -.word 0x3548f429 -.word 0xcfe53fcf -.word 0x1a46079e -.word 0x41e2b286 -.word 0xcb9d85aa -.word 0x653261ad -.word 0xf5eb8e31 -.word 0x4938bee5 -.word 0x4f1063c7 -.word 0xfc203993 -.word 0xd9f312a9 -.word 0xef545715 -.word 0x0abf89f1 -.word 0xfb5ce47b -.word 0xdf8050e7 -.word 0x191eb609 -.word 0xe83e2ea1 -.word 0x89788358 -.word 0xceaae8d9 -.word 0x80036f74 -.word 0x54070c5e -.word 0x573fbc03 -.word 0xf644e9d1 -.word 0x9079eede -.word 0x4d6f227c -.word 0x6955c67a -.word 0xb82ebfcf -.word 0x78319763 -.word 0xd2087068 -.word 0x9453d190 -.word 0x00bd48d4 -.word 0xab35630a -.word 0x58674a3e -.word 0xcf06d774 -.word 0x90f36568 -.word 0x94669381 -.word 0x0eeef9f5 -.word 0x17354cc0 -.word 0xecf1bfbd -.word 0xb914a030 -.word 0xf4f7b7b8 -.word 0xbcdf0b78 -.word 0xb0a492b4 -.word 0xf76c44c0 -.word 0x6fcab717 -.word 0xc93406e5 -.word 0x6410206d -.word 0x1fad820e -.word 0xae5d238e -.word 0xc4ec2e4b -.word 0x613ad781 -.word 0xf1009375 -.word 0x31fa9bae -.word 0x63c6f3aa -.word 0x8b6c466d -.word 0x7e4a6002 -.word 0x9e5073a7 -.word 0xeb9e9d10 -.word 0xb1e06bdd -.word 0xb7551992 -.word 0x89f3a6dd -.word 0xeb48dc51 -.word 0x7996db2f -.word 0x45d94ddd -.word 0x10e29f02 -.word 0x77159645 -.word 0x3131145f -.word 0x1d5d9024 -.word 0x8d4c952f -.word 0xeae91886 -.word 0x8f35e8bd -.word 0x982befca -.word 0x3d769cdb -.word 0x026ec441 -.word 0x1f3dcbc7 -.word 0x1319c5c9 -.word 0xd3c318b2 -.word 0x4a4b1fdd -.word 0xaf104bfd -.word 0x29325ae7 -.word 0xb7ed6cc8 -.word 0x59e8ca76 -.word 0xb47eb1e2 -.word 0xacbbf714 -.word 0xf826052c -.word 0x0656a2e2 -.word 0xdcd702b1 -.word 0x170db748 -.word 0xf5045e58 -.word 0x76199362 -.word 0x90c121d6 -.word 0xa12131fa -.word 0xef4e37b0 -.word 0x72ea7782 -.word 0xacbde4c4 -.word 0x49145fd7 -.word 0x97fc21eb -.word 0x86f91ca7 -.word 0xbf5187e8 -.word 0x9102b978 -.word 0x299bd78f -.word 0x2ebf1c19 -.word 0x9eb2ab36 -.word 0x8361655c -.word 0x39dc356f -.word 0x267cf45b -.word 0xa4adc562 -.word 0x72e4a398 -.word 0xe7dcb176 -.word 0x18004d9f -.word 0xe9606997 -.word 0xe01657df -.word 0x9b9f9cf5 -.word 0xdcdbdc85 -.word 0xfdc4d9be -.word 0x2793d0de -.word 0xee05d226 -.word 0x366be3be -.word 0xcf905cc0 -.word 0x8acbb969 -.word 0x5cd6e9e3 -.word 0x0763d24b -.word 0x4049f69f -.word 0x70c82d6d -.word 0xe6fd4c5e -.word 0xec4831d1 -.word 0xdbb48ba8 -.word 0x7579c108 -.word 0xca2d9464 -.word 0xb11c22f2 -.word 0xe4041ed2 -.word 0xebe1d7e9 -.word 0x66086911 -.word 0x2449d1ac -.word 0x5f428324 -.word 0x3f67d2dc -.word 0xaffdb641 -.word 0x9401931c -.word 0xeb35a6c1 -.word 0x09319ec9 -.word 0x62be68ff -.word 0x8e495f50 -.word 0x72588ae1 -.word 0x1b168f38 -.word 0xa9d85390 -.word 0x4fb73a11 -.word 0x32c37427 -.word 0x0c61d9e6 -.word 0x78e72c98 -.word 0x0fa5981c -.word 0x7fcd24d4 -.word 0x13b21970 -.word 0x200c1304 -.word 0x64681f3f -.word 0x27ff37c7 -.word 0x84852278 -.word 0xf380311d -.word 0x8d5c00fc -.word 0x362e11a4 -.word 0x6ab05553 -.word 0x74290953 -.word 0xdc3a6c09 -.word 0x223c0482 -.word 0x34223fd6 -.word 0xba1cf34e -.word 0xb94ea5dd -.word 0xf65ebfe7 -.word 0x4a2c3d76 -.word 0x8b98ddd1 -.word 0x4c2016ce -.word 0x219eb6bd -.word 0x9c042dab -.word 0x848d1096 -.word 0x9d75bf45 -.word 0x149f11c3 -.word 0x5c1237d8 -.word 0x09c70ceb -.word 0xbfbe37e7 -.word 0xfb5e6379 -.word 0x26aa7514 -.word 0x08becd61 -.word 0xb2bea4bb -.word 0xc67277a9 -.word 0x6a5491de -.word 0xe6d6d86d -.word 0x82d42a70 -.word 0x43e8913c -.word 0x0044c7f9 -.word 0x09e5db3c -.word 0x81f6ba20 -.word 0xa26c88c3 -.word 0x504fe14f -.word 0x7327d2e7 -.word 0x7a06b8d5 -.word 0xf8d8aaf4 -.word 0x945ba931 -.word 0xcb1dfa7b -.word 0x872bf0aa -.word 0xfa3f63d5 -.word 0x431eae0d -.word 0xd21aa175 -.word 0xc12a8d92 -.word 0x7fc0a8d4 -.word 0x86bb3f14 -.word 0x40c38fcd -.word 0xb3867083 -.word 0xd0120904 -.word 0xa620cee4 -.word 0x5980f8a9 -.word 0x28be7cd5 -.word 0x277c64d5 -.word 0x27fce9f0 -.word 0x9b77c9bc -.word 0x0244d41d -.word 0xb4b5b48c -.word 0xfe0acdbd -.word 0x87e5fcdb -.word 0xb51ed632 -.word 0x563a0caa -.word 0x17f09f2b -.word 0x20ba9ee2 -.word 0x4d6df394 -.word 0xb8279ac2 -.word 0xc5bdfac2 -.word 0x9473da46 -.word 0xdaa1cd8b -.word 0x8f23967e -.word 0xbba925d7 -.word 0x5d64dc61 -.word 0x20d21d24 -.word 0x4c65bc2b -.word 0xe5113149 -.word 0x57b47752 -.word 0x7e92d6ad -.word 0x83d393d7 -.word 0x81fb5b24 -.word 0x699b01a5 -.word 0xaecbaddf -.word 0x6a246040 -.word 0x69bcacd4 -.word 0xbe596287 -.word 0x89c1acb0 -.word 0x5097e2b4 -.word 0x3759fcb4 -.word 0x1c1ce084 -.word 0x4713d853 -.word 0x44d9bc43 -.word 0xd5f579f7 -.word 0x99ce06ea -.word 0xe5a50792 -.word 0x5a2b0ff3 -.word 0xa9391bb1 -.word 0xd1b48a6b -.word 0x3392ced9 -.word 0x4391cb0b -.word 0xb395afa0 -.word 0xfbd114f7 -.word 0x8e063178 -.word 0x7f503ac4 -.word 0x7ba29777 -.word 0x8ca83c20 -.word 0xb7c8be8a -.word 0xbe1f968a -.word 0x5a478bda -.word 0x8ca5f546 -.word 0x6ddb0ed5 -.word 0x44580c3a -.word 0xe5bf3820 -.word 0x50df621c -.word 0xbfb20459 -.word 0xd685a8e9 -.word 0x9129bc2a -.word 0x7d2ca9d2 -.word 0x9c9b08a5 -.word 0x243d6f62 -.word 0x81eb9d13 -.word 0x93f42c42 -.word 0x82deb734 -.word 0xcaa7008c -.word 0x6172cc8b -.word 0xa26d703d -.word 0x78ff3578 -.word 0xb488d81b -.word 0xf11ef0ef -.word 0x4c4a115c -.word 0x70fe99c0 -.word 0x11832e29 -.word 0xb855ebb0 -.word 0x1351ab65 -.word 0x9a565429 -.word 0x79e6bbd9 -.word 0xe2a7e7af -.word 0x7cc3296a -.word 0x303ff53c -.word 0xbe6e22f0 -.word 0x9ae5cb3b -.word 0x2e4f2c7c -.word 0x10cec9da -.word 0x4abe896e -.word 0xee36329b -.word 0xda1c4e5c -.word 0x3f95b006 -.word 0x7777d698 -.word 0xd1eaf7a1 -.word 0x09bced4b -.word 0xbbe2a911 -.word 0xdb925c34 -.word 0x3c1e9c6c -.word 0x32341017 -.word 0x853fef5d -.word 0x45240363 -.word 0x82e8fc97 -.word 0x5d20cba7 -.word 0x102eec9d -.word 0x3aa7e485 -.word 0xd9ff8dc9 -.word 0xdbbef5f2 -.word 0x102e1311 -.word 0x2f251dba -.word 0xbdf53d5e -.word 0x8ad6b56e -.word 0x44c350b2 -.word 0x30eda3b7 -.word 0xc366eefa -.word 0xecf081f2 -.word 0x5f70edde -.word 0xb8a0f41a -.word 0x0fba7dbe -.word 0xe0d5e7c9 -.word 0x6384924b -.word 0x8b6809ae -.word 0x8515b7ab -.word 0xdf10fb37 -.word 0xdf2e7633 -.word 0x23ae2285 -.word 0x5ca658dc -.word 0x89f5cb12 -.word 0x9ce7d1c6 -.word 0x8fd8a5aa -.word 0xc82cedd6 -.word 0x55f7fe72 -.word 0x3cd7093d -.word 0xcc7b69cc -.word 0x2e97693b -.word 0xf4d62d87 -.word 0x78f77212 -.word 0xc6587849 -.word 0xdc2eaa91 -.word 0xf939a7e1 -.word 0x8eb2a6fb -.word 0xb321cb47 -.word 0x94130db2 -.word 0x603df0dc -.word 0x2013d798 -.word 0x1a642e96 -.word 0x104274b4 -.word 0xe202add2 -.word 0x4cc452de -.word 0x54516707 -.word 0x3ba86e80 -.word 0xea1deb7f -.word 0x3aa425e0 -.word 0x90a354c9 -.word 0xce7df2eb -.word 0xf84d87b1 -.word 0x64948b4e -.word 0x10b271ce -.word 0xc4c56496 -.word 0xeef5a927 -.word 0x10aea74d -.word 0x62d61720 -.word 0x151c36bf -.word 0x9e5cf9f6 -.word 0x6479310f -.word 0x8515dbd0 -.word 0xb5f81f40 -.word 0xa5c8f9fa -.word 0x68e43fb2 -.word 0x71d98735 -.word 0x15be3152 -.word 0x96d2e32a -.word 0xfbbf77ee -.word 0xcf520e25 -.word 0x780ac7f2 -.word 0xaf2ea3f7 -.word 0x161edfe4 -.word 0x35144dec -.word 0x71726124 -.word 0xddb1470c -.word 0x307c34d4 -.word 0x53afdfed -.word 0xbd8d7fda -.word 0xa5b54d92 -.word 0x0ea7cfd1 -.word 0xe148d011 -.word 0xe0afca95 -.word 0x597eec70 -.word 0x2e61ffe6 -.word 0x2f1e0c2c -.word 0x474981fd -.word 0x49b7a7dc -.word 0x028b74c6 -.word 0x4f0f9887 -.word 0x4f713c96 -.word 0xa30d9a0a -.word 0xb1a84629 -.word 0x1ca4aa41 -.word 0x15cdfa35 -.word 0x238a60ac -.word 0x87edf536 -.word 0x86b3bfd8 -.word 0x2e91ce1e -.word 0x35d24292 -.word 0xb3b014d9 -.word 0x52754c79 -.word 0x7bd2a39b -.word 0xee869717 -.word 0x8db2383f -.word 0x5816fbb0 -.word 0xb5a6ac7e -.word 0x15847dad -.word 0x7005e188 -.word 0x2c1826d2 -.word 0xfc0db3c0 -.word 0x602fa3e3 -.word 0x25cdf966 -.word 0x998d07aa -.word 0xc0dbec75 -.word 0xb3a29f92 -.word 0x813212d6 -.word 0x1fc7d400 -.word 0xaa01d5e2 -.word 0x09af9251 -.word 0xcd63448f -.word 0xbabefecf -.word 0xabfe7ac9 -.word 0xf9acb1c1 -.word 0x6727bb2b -.word 0xb67bcf23 -.word 0x4b594e49 -.word 0xaf686280 -.word 0xca641c65 -.word 0x09bd52d0 -.word 0x62280c9e -.word 0x7615037f -.word 0xb38235c1 -.word 0xe5fbb71c -.word 0x9e6e556b -.word 0xe492b66d -.word 0x3fefb9d0 -.word 0xe68b17b7 -.word 0x4eb00235 -.word 0x87ae09e3 -.word 0x3c274bd1 -.word 0xc02b538f -.word 0xc4c70762 -.word 0x9455a068 -.word 0x53917b6e -.word 0x9bd023cd -.word 0x1a5f3df9 -.word 0xe59df96c -.word 0x3dcee9b7 -.word 0xc5acba57 -.word 0x0705bda0 -.word 0xc9fb2717 -.word 0x4ba40b4a -.word 0x4b1d2bd2 -.word 0xeca5fdbd -.word 0x6f08ada0 -.word 0x02d791d0 -.word 0xe046c4bb -.word 0x4a3a0c34 -.word 0x72c17afb -.word 0x49dca607 -.word 0x92b8d8aa -.word 0xe87b81bd -.word 0x89b29072 -.word 0xdc2eb41d -.word 0xd0606992 -.word 0xd168f186 -.word 0x115bb8bc -.word 0xc5768cd6 -.word 0x5871a52e -.word 0x507c6943 -.word 0x4dd1778e -.word 0xb8420c77 -.word 0xab77d02b -.word 0xd0eceb68 -.word 0x2f4837a3 -.word 0xc8f3ceeb -.word 0xa3d5f9a9 -.word 0x730a0e87 -.word 0xd13b2302 -.word 0xe63cd542 -.word 0xbf98178a -.word 0xaf790a71 -.word 0xbcdb78cf -.word 0xb5f5fb1c -.word 0x48ca3a16 -.word 0x434a28fc -.word 0x19b479fd -.word 0x85ad1564 -.word 0xeb3d8ac0 -.word 0xbf4fa888 -.word 0x1a9c19c8 -.word 0xd9ef1d06 -.word 0x552d4fcb -.word 0x8a5c76e9 -.word 0x2bfaf92c -.word 0x9bd5e5ab -.word 0xd02d500b -.word 0xcdf4e978 -.word 0x562f01dd -.word 0x07f4a001 -.word 0xdf10d476 -.word 0x2b08dbe7 -.word 0x6a236d97 -.word 0x6dd9e6a5 -.word 0x0b7817a2 -.word 0x50f60d46 -.word 0xb6cef71f -.word 0x2a3618f3 -.word 0x8900c034 -.word 0xe3dd93f6 -.word 0xe9f62b78 -.word 0x19f750db -.word 0x5f1cb40a -.word 0xdb127b77 -.word 0xe6210ea3 -.word 0x91b6f494 -.word 0x36793c29 -.word 0x5c13a1ee -.word 0x744607a9 -.word 0x5fc2b68c -.word 0x670a2939 -.word 0x18694b0f -.word 0xdfa7eefe -.word 0xeb4839bd -.word 0x02f4811c -.word 0x4b41c97a -.word 0x25aa6624 -.word 0xa9ca21a6 -.word 0xbc125e4a -.word 0x6d971d60 -.word 0x02681f74 -.word 0x8832c8ea -.word 0x58b73b65 -.word 0x022a17ee -.word 0x51ace5e5 -.word 0x67baa037 -.word 0x85b699e6 -.word 0xdde91c12 -.word 0x3625a97f -.word 0x22e35239 -.word 0x9a53f3cf -.word 0xf230579b -.word 0x70ab77c4 -.word 0x7639971c -.word 0x321dc2ca -.word 0x30d4b90b -.word 0x9566b6f1 -.word 0x814b2384 -.word 0xe57ee88b -.word 0x6895bb10 -.word 0x39c3c5af -.word 0x24099769 -.word 0xb157f6ae -.word 0xdd9e886c -.word 0x29e18d0c -.word 0xa03eae62 -.word 0x7f1e08f4 -.word 0xeafa3688 -.word 0x36f46d98 -.word 0x89b6cd46 -.word 0x1350894d -.word 0x41853ea5 -.word 0x789b6cdd -.word 0x0c6f34fc -.word 0x7228a475 -.word 0xd8c83a7e -.word 0xb2964472 -.word 0x2e691fa2 -.word 0x5897d6b0 -.word 0x4180ffc8 -.word 0x7df6c969 -.word 0x0d575f09 -.word 0xd5a58061 -.word 0xfbf2d185 -.word 0x23faef5e -.word 0xa1820b0d -.word 0xa9888427 -.word 0xe5f29f8e -.word 0x038edf7b -.word 0x7ab29072 -.word 0x059a29c0 -.word 0x376f10d3 -.word 0xb59066d0 -.word 0xa22b8088 -.word 0x7a214db2 -.word 0xdf52b8df -.word 0x2675bd0f -.word 0xebbef76f -.word 0xdb932f77 -.word 0x57396f72 -.word 0x0b87912d -.word 0xae934f37 -.word 0x3fb6a24e -.word 0x7c54d9fe -.word 0x60ae4e54 -.word 0xf31c054c -.word 0xfad5dd9d -.word 0xb58e840b -.word 0x5abdbbab -.word 0xc44a71ef -.word 0xc95bb88b -.word 0xfc02c13b -.word 0x963cb8c2 -.word 0xf8a1daaf -.word 0x4d2e626a -.word 0x89ee099d -.word 0x5904141c -.word 0x9e0ada1e -.word 0x30836eb3 -.word 0x792f81e9 -.word 0x4132a626 -.word 0xf0e9b9be -.word 0x93635c60 -.word 0xd66e2270 -.word 0xcae69761 -.word 0x35aafd99 -.word 0x39761e6c -.word 0xed9383fd -.word 0x629c6ab0 -.word 0x9d4bd9c8 -.word 0xd2f69c67 -.word 0xecb1e6c9 -.word 0xee219bd1 -.word 0x95d6ba1c -.word 0xe48a84da -.word 0x8124b26d -.word 0xa01b2f1f -.word 0xcb61898b -.word 0xb5e74e67 -.word 0xca079b4a -.word 0x72447464 -.word 0x3c46149c -.word 0x67a5f3a5 -.word 0x1a7e2af7 -.word 0x8a0fe59f -.word 0xae69a220 -.word 0xc4cb1ee4 -.word 0xc7224c80 -.word 0x891aa200 -.word 0xe370d3ed -.word 0xaaf8e81a -.word 0x48b4ed87 -.word 0x6e81c9fc -.word 0xb4147445 -.word 0x1e604e92 -.word 0xddce8e9d -.word 0xe197924b -.word 0xdc235105 -.word 0xd3b0076a -.word 0x626934a9 -.word 0x6caf65ba -.word 0xed39f9c4 -.word 0xabc5f3ea -.word 0x14c5e787 -.word 0xd7ba151d -.word 0x396d1e05 -.word 0x985e5047 -.word 0x8df96bdb -.word 0x50e60752 -.word 0xb7650884 -.word 0x1c379381 -.word 0x1a3b34f6 -.word 0xa44bea6a -.word 0xfeb14416 -.word 0x6594162f -.word 0x0e52a778 -.word 0xe2ac41f2 -.word 0x92d69a58 -.word 0x9885d3db -.word 0xb49e8870 -.word 0x79ba9091 -.word 0xd33c1868 -.word 0xc6a9d349 -.word 0x9caa9a22 -.word 0x0a1ac6a3 -.word 0x4bc7dfe8 -.word 0xf5662b6f -.word 0xd6294c43 -.word 0x93abe0ba -.word 0xce9ff857 -.word 0x66d6748f -.word 0x78dc0036 -.word 0x327cb512 -.word 0x9023a884 -.word 0xa9f64696 -.word 0xdab50323 -.word 0x5c9ab74b -.word 0xc524c108 -.word 0xb35b8cf1 -.word 0x933f892f -.word 0x63d4afe0 -.word 0xca8192ea -.word 0x27d67598 -.word 0xdf7b85d4 -.word 0xb118ae75 -.word 0xa8340f8d -.word 0xb2506a15 -.word 0x61dabf8c -.word 0xbe507492 -.word 0x4f11685d -.word 0x5f6099b1 -.word 0x9875c1ac -.word 0x63d37073 -.word 0x4836e5fd -.word 0x9a1cbc70 -.word 0x74dadf0f -.word 0xd7568305 -.word 0xaf6d7bbd -.word 0x758b8ee9 -.word 0x72baa87b -.word 0x144e96bb -.word 0xde6faac2 -.word 0xd6499fca -.word 0xe2bc1fa5 -.word 0x119cd86a -.word 0x4711815d -.word 0xe0665e01 -.word 0x1fa92fd7 -.word 0xc7fe11b5 -.word 0x5fe64158 -.word 0x133c5d0e -.word 0x548b06d9 -.word 0x7bb6656d -.word 0x11930c98 -.word 0x0c6fa2e5 -.word 0x85b14f4e -.word 0xc85b3c2a -.word 0x0ffbe060 -.word 0xd94c197d -.word 0xa05d76c8 -.word 0x0d55487f -.word 0x8e5c0d54 -.word 0x85496e97 -.word 0x89c0fd7b -.word 0x155dcc79 -.word 0x1739844d -.word 0x24c44cec -.word 0x781b30d1 -.word 0x6012838c -.word 0x5a2dfc8b -.word 0x1c0cab30 -.word 0x88681e73 -.word 0xd6a31ec2 -.word 0xd1d9f92c -.word 0x7a6ec5fc -.word 0xcda84e89 -.word 0xf115fe2c -.word 0x9153ff12 -.word 0xa47e9af0 -.word 0xd5c3717a -.word 0x16b74d85 -.word 0xa00a55c7 -.word 0x9d48d203 -.word 0x96991b34 -.word 0x7576def1 -.word 0xbf0897cd -.word 0xe4a0ddda -.word 0x76d2c280 -.word 0x4d7953dd -.word 0x2b84e87b -.word 0x2d72584c -.word 0x492dfde6 -.word 0x4871ff36 -.word 0x93cb893b -.word 0xa6921644 -.word 0xe39004ab -.word 0x53aa5f42 -.word 0x967aed3f -.word 0xdc7c1abe -.word 0xb391d65c -.word 0xcc60e0f0 -.word 0xf8523261 -.word 0xab751ffe -.word 0x4fc46365 -.word 0x6b80632a -.word 0x020a692f -.word 0x3cd6a96d -.word 0xc80a8423 -.word 0xce573760 -.word 0xb2ec1af9 -.word 0xe8334b35 -.word 0xfbc62393 -.word 0xd8ef8c90 -.word 0x64e093cf -.word 0xe975ab3e -.word 0xe19e4011 -.word 0x4aed372a -.word 0xc54da717 -.word 0x0b0afcaf -.word 0xed7ae09a -.word 0xbc166f84 -.word 0x08d430b1 -.word 0x97cdc5fe -.word 0xa3452c30 -.word 0x829f625b -.word 0xa32587a1 -.word 0xda3e7f83 -.word 0x1cf4e8e1 -.word 0xa2e2917d -.word 0xe13aa563 -.word 0xe362ebd5 -.word 0xb48d6e7e -.word 0x6a41d279 -.word 0xb48afd91 -.word 0xdf0c7130 -.word 0xb06257f9 -.word 0x9fd5c5b1 -.word 0xa912159f -.word 0x2226ed62 -.word 0x15743fe5 -.word 0xdb7caa61 -.word 0xbcff13f0 -.word 0x61264a2e -.word 0x99a1bbb3 -.word 0xe8afee14 -.word 0x07a28344 -.word 0x21cb1d5b -.word 0x51b63c12 -.word 0xe598cfe6 -.word 0x7293bf17 -.word 0x9acd43bc -.word 0x687437b1 -.word 0xb9c53696 -.word 0x68225c46 -.word 0x619d5aca -.word 0x7c15d307 -.word 0xaaa757bd -.word 0x152ddebc -.word 0x40745ff8 -.word 0x0af7f6f3 -.word 0x409e9ad8 -.word 0xbef6e954 -.word 0x077d8216 -.word 0x93fcc3b9 -.word 0x677acdfb -.word 0x7ebccabc -.word 0x76e0db3f -.word 0x5ec9d21d -.word 0x37f1cf00 -.word 0xacfc796b -.word 0x367717c7 -.word 0x0515fc1e -.word 0x07fe9433 -.word 0xe767ddd1 -.word 0x222d2ddc -.word 0xcd3c10f9 -.word 0x018f8911 -.word 0xa40c46b7 -.word 0x2333f62e -.word 0x85a40625 -.word 0x7238faa8 -.word 0xbedd2fd9 -.word 0xc6fedff5 -.word 0xd79fc7b0 -.word 0x74f8541b -.word 0xfe5b36de -.word 0x56d23837 -.word 0xa0c6902a -.word 0x42624b35 -.word 0xa424c73f -.word 0xd032807f -.word 0x79a275c8 -.word 0xfb72c95a -.word 0x0bb518d2 -.word 0xc7b3210d -.word 0x6c64c8f2 -.word 0xd2fb0f47 -.word 0x345cd085 -.word 0x4f6f8c13 -.word 0x329a4f49 -.word 0x1a7fb5b9 -.word 0x53c82a54 -.word 0x79c7558b -.word 0x2637cee2 -.word 0xc5610bee -.word 0x467069d4 -.word 0x5d68a2e4 -.word 0xa33708ff -.word 0xd3b6eac4 -.word 0xf0d00ed9 -.word 0x5a71875b -.word 0x90cb3094 -.word 0x94b3e650 -.word 0x6c8e3a72 -.word 0xb56bd264 -.word 0xb8bbb3c0 -.word 0xe1496030 -.word 0x3a3bd78f -.word 0xd47d724a -.word 0xd3d52e14 -.word 0xab85199e -.word 0x83279c52 -.word 0xcc2ebd1b -.word 0x3859ed3a -.word 0xa32eb9c4 -.word 0x1379350b -.word 0x9cd53318 -.word 0xc14718f7 -.word 0x53997d27 -.word 0x52318a5b -.word 0xca3275ec -.word 0x53528909 -.word 0x24e3a189 -.word 0x1c4d8723 -.word 0xe06ca25e -.word 0x6883cf49 -.word 0x5ed76f04 -.word 0xce6a2186 -.word 0xefa372c5 -.word 0xca8c0cc5 -.word 0xa1f7d2dd -.word 0x00dd529e -.word 0x5bb1d190 -.word 0x89903bf0 -.word 0x7ea00c18 -.word 0x84fa8de2 -.word 0x006ac4b5 -.word 0xfabbc008 -.word 0x98086f2e -.word 0xa86c5e71 -.word 0x9349a0d3 -.word 0x41752ac8 -.word 0xae5c39b1 -.word 0x387f6aee -.word 0x65d84980 -.word 0x81a7c423 -.word 0xc46c5920 -.word 0x6bfdde9d -.word 0x539f7b72 -.word 0xf69fb3c2 -.word 0x39d728f8 -.word 0x5c812a97 -.word 0x823458b3 -.word 0x6f965976 -.word 0x7d6b26e3 -.word 0x5a84a850 -.word 0xe21951e6 -.word 0xde0a0a3b -.word 0x4a542c7d -.word 0xd3a80224 -.word 0x1c625f4f -.word 0x3d49e275 -.word 0x57b8c369 -.word 0xc733d3f5 -.word 0xbec559f3 -.word 0xa1fe3fff -.word 0xfc4a4cdd -.word 0x00f0b5c4 -.word 0xce970e7f -.word 0x31ac96e8 -.word 0x84233090 -.word 0xbd6681fe -.word 0x6bd962c4 -.word 0x0699d17b -.word 0x6acfb9e4 -.word 0x451e62ba -.word 0x80310fe6 -.word 0x06ff6274 -.word 0x5afa02e8 -.word 0x401e6515 -.word 0x5d464ce2 -.word 0x978e0e3c -.word 0x0adbba5e -.word 0x74a31e70 -.word 0xbdb40753 -.word 0x4647a3d0 -.word 0xb63e01aa -.word 0xf9890270 -.word 0xadd0194b -.word 0x239b0d18 -.word 0xbf5fa871 -.word 0x192ad76b -.word 0x2ba0d032 -.word 0xca159ca6 -.word 0x6effa56a -.word 0xb55e4c7b -.word 0xbebc2a87 -.word 0x6efbb421 -.word 0x6f37c153 -.word 0x191de590 -.word 0x49e26039 -.word 0x4967a57d -.word 0xf6211bd9 -.word 0x24c20538 -.word 0x7a7b9aba -.word 0x801154b3 -.word 0x754837ac -.word 0x6e096c52 -.word 0xbb2417b2 -.word 0x546c4707 -.word 0xce634e3b -.word 0x7c63b9e9 -.word 0xf522766d -.word 0x48426252 -.word 0x21f8f67e -.word 0xbfa6135b -.word 0x2a5521e1 -.word 0x3752cfbb -.word 0x93bdbc4f -.word 0xcfdbb43d -.word 0x2624a188 -.word 0xe6c5cd25 -.word 0x6165da16 -.word 0xa3b93b29 -.word 0x8749fd26 -.word 0x63c6e182 -.word 0x44129872 -.word 0x7d2bf77a -.word 0x9352c650 -.word 0x50da43d5 -.word 0x0ef14101 -.word 0x1fb9f66c -.word 0x1377f8eb -.word 0x008bdc6c -.word 0x3c6401ea -.word 0x7c8dcb2f -.word 0xce345a14 -.word 0x04bddb99 -.word 0x29194dfe -.word 0xb18b68de -.word 0xe8ad5bdd -.word 0x6d198b67 -.word 0xf8aa04ac -.word 0xf3636d5c -.word 0x18694693 -.word 0xaa81ef20 -.word 0xbb29a349 -.word 0xe522dca8 -.word 0x721928c8 -.word 0x08ce9a7e -.word 0xfee6ddf0 -.word 0xf103fe49 -.word 0x96543f48 -.word 0xb4bfee09 -.word 0xac4368e6 -.word 0xb7a0ced2 -.word 0x8ec274c5 -.word 0xa6be9bd2 -.word 0xd264c5d1 -.word 0xec78910e -.word 0x09d7eccc -.word 0x4a65e3b2 -.word 0xdb31feca -.word 0xd3f78089 -.word 0x0129e5d7 -.word 0x9819a435 -.word 0x53a51ed5 -.word 0xfff6f703 -.word 0x46c37f46 -.word 0xe2e9f305 -.word 0x5ac082bb -.word 0xfc29b377 -.word 0xba2e6b10 -.word 0x268ea452 -.word 0x19ccc228 -.word 0xcd7b0b78 -.word 0xd74e50b0 -.word 0x90e3c2b4 -.word 0x633f67d1 -.word 0x8b59b061 -.word 0x6fedfbf5 -.word 0x89ccaa32 -.word 0x07b7486f -.word 0x2005daca -.word 0x72599796 -.word 0xd8a255bc -.word 0x13c68e5a -.word 0xba856c54 -.word 0xa2528c47 -.word 0x5c7833ca -.word 0x367a9dbc -.word 0xc6ce2cd6 -.word 0x7db0c839 -.word 0xe6c53a3b -.word 0x1fd26c2f -.word 0x635ef09a -.word 0x16381258 -.word 0x58b05f9e -.word 0x2102b79b -.word 0xcf35618a -.word 0xb4fd9646 -.word 0x754e161a -.word 0x862405e8 -.word 0x4e65d575 -.word 0xa7502854 -.word 0x7db1e6cf -.word 0xec9e2293 -.word 0x8b8c5683 -.word 0x29415194 -.word 0x336f99dd -.word 0x230e6af4 -.word 0x7f0a7b1b -.word 0xf82ebf35 -.word 0x7354e6d3 -.word 0x0899c256 -.word 0x32402ed8 -.word 0x3a6fa26f -.word 0x3caeb117 -.word 0x82e97ad7 -.word 0xd0addcfd -.word 0x1fb90603 -.word 0x5dda2484 -.word 0x7e3b4ba5 -.word 0x61c161ee -.word 0x9b348d94 -.word 0xfaf82ca9 -.word 0x93a57a6f -.word 0x7542c48f -.word 0x68341967 -.word 0xf9e3a0ec -.word 0xa23a0a4c -.word 0xc3faee58 -.word 0x24742345 -.word 0xdef7a7b2 -.word 0xbb5f6b59 -.word 0x29c49a88 -.word 0x7faf88f2 -.word 0x68dcc2ef -.word 0x01a0c18f -.word 0x1de64aaa -.word 0xda7bb568 -.word 0x0874da98 -.word 0x7e6d136e -.word 0xba570dfc -.word 0xab60f726 -.word 0x58d8e137 -.word 0x4085e6e5 -.word 0xc877fc84 -.word 0xb612e04b -.word 0x49804d47 -.word 0x2b159940 -.word 0x4d127e06 -.word 0xf1a0d493 -.word 0x51fc6728 -.word 0x3e2f4838 -.word 0xb6b5948f -.word 0x792f6505 -.word 0xb38a9507 -.word 0xaea40d1f -.word 0x24338214 -.word 0x1bb8a4b3 -.word 0x42a60781 -.word 0xeb04a7a2 -.word 0x31d41d1a -.word 0x802d8cfc -.word 0x24faa024 -.word 0xcf960580 -.word 0x456bedf9 -.word 0x2c8088f2 -.word 0x388ad0ae -.word 0x69c132c8 -.word 0xbd19b933 -.word 0x52bea52b -.word 0xcf5acb5b -.word 0x89d45132 -.word 0xe3b75c03 -.word 0xb9a4729a -.word 0x54010cca -.word 0x648d5dbd -.word 0x4c289ed8 -.word 0xb1c53fe5 -.word 0xa8d87a8b -.word 0x83490aa4 -.word 0xaf4cb4e0 -.word 0xee99d169 -.word 0x84dac9b5 -.word 0xf07bb1bc -.word 0x22e03a8c -.word 0x6e9f18e0 -.word 0xd352c5a9 -.word 0xf7f09e25 -.word 0xbeb4fbc1 -.word 0x3762fe84 -.word 0x66e2d9aa -.word 0xe308bfd2 -.word 0x4ea14caf -.word 0x6efa7a8d -.word 0xeca647d9 -.word 0x6245cc61 -.word 0x03b57e03 -.word 0x58325181 -.word 0x07c73605 -.word 0x145e4f1f -.word 0xb984349f -.word 0xeaeb92c3 -.word 0x6077858b -.word 0x73dce50f -.word 0x7c5a6995 -.word 0x67afe577 -.word 0x3da42eba -.word 0xf3f4e254 -.word 0xda586033 -.word 0xab562177 -.word 0x1d170a98 -.word 0xf5148c85 -.word 0xec7ea56a -.word 0x63a1be1b -.word 0x045c7c44 -.word 0xd50c7575 -.word 0x5f18b3ea -.word 0x951f3b16 -.word 0xad77b424 -.word 0x5e72824e -.word 0xdf5ead89 -.word 0x85b45ce6 -.word 0x8deba81a -.word 0xfa8678cc -.word 0x66687d02 -.word 0x6a419b35 -.word 0x0c844a4e -.word 0x0054bf6e -.word 0x7d114a5c -.word 0xbbce1d25 -.word 0x15c506c7 -.word 0xc4ed1068 -.word 0x15ae412a -.word 0xa779de3b -.word 0x9978c1e5 -.word 0x7e12b60e -.word 0x103e2d1d -.word 0x106485ed -.word 0x1f24df33 -.word 0x75fa67aa -.word 0x4e9b0296 -.word 0xf87b9a0a -.word 0x30f82b25 -.word 0xbca54a3c -.word 0x5ff86f25 -.word 0xdb34461d -.word 0x52ef5561 -.word 0x8de3d518 -.word 0xad477b74 -.word 0x2ee0dab2 -.word 0x223a35ab -.word 0x4a984ca7 -.word 0x0983737a -.word 0xb511e68b -.word 0xf64a9bd8 -.word 0xa57e2a53 -.word 0xf32284d0 -.word 0x10b66d8f -.word 0xb78fbd8b -.word 0x6e6fb30c -.word 0x79f28627 -.word 0xe1accc70 -.word 0x027cee3c -.word 0xd5834052 -.word 0x5623cc57 -.word 0x03c3210b -.word 0xd8339804 -.word 0xcc3b4f52 -.word 0x7856c47a -.word 0xd5f24073 -.word 0x032e9646 -.word 0x9fab9e1f -.word 0xd54eeef2 -.word 0x21f181f8 -.word 0x43b0942e -.word 0xbbce4cb8 -.word 0x07ba91e3 -.word 0x78004056 -.word 0x9e2990f4 -.word 0x645582ea -.word 0x07ed252d -.word 0x75b206ae -.word 0x8deee6ab -.word 0x8cef11df -.word 0xf24299b0 -.word 0x56f29d8a -.word 0xe11f032f -.word 0xbf6e4cb7 -.word 0x3a54fd0f -.word 0xa9ee2147 -.word 0xb010214a -.word 0x7e09e6e1 -.word 0x0e4b56b5 -.word 0x3dd871e5 -.word 0x75d559c0 -.word 0x1b120c81 -.word 0xacec6660 -.word 0x2934b926 -.word 0xdf8fe306 -.word 0x5d25651d -.word 0xb1a87b46 -.word 0x4a33f51a -.word 0xa369e538 -.word 0x9f0b3143 -.word 0x8e52ccfc -.word 0x86744d75 -.word 0xbb3b7923 -.word 0xa6c94d20 -.word 0x16fb26a7 -.word 0x79bfc0ed -.word 0x863c8b8c -.word 0x5a074b18 -.word 0xbf6feb51 -.word 0x2ada1bce -.word 0x388ca282 -.word 0x4c3e3d36 -.word 0xd61eabe1 -.word 0x304c87b2 -.word 0x5fb515ef -.word 0xd51be178 -.word 0xfaf66468 -.word 0xb8a879d8 -.word 0x3111115e -.word 0xb368c46c -.word 0x48523365 -.word 0x4dd50cb8 -.word 0x2c189120 -.word 0xce4052a9 -.word 0x0a753c71 -.word 0x77e8ce2a -.word 0xb03315db -.word 0x19c5db1f -.word 0x1bdb99ff -.word 0x818f0f9f -.word 0x5d0ad5f7 -.word 0xea35550b -.word 0x08195e02 -.word 0xf9f9755f -.word 0xdce96291 -.word 0x7b9f2256 -.word 0x9511b2e9 -.word 0xc758f894 -.word 0x9632b1b3 -.word 0x964fe5c9 -.word 0x2661acca -.word 0x2a0b911d -.word 0x7c7f659b -.word 0x9d2adca7 -.word 0x3a2858c6 -.word 0x0cc97d24 -.word 0x926fc639 -.word 0x1186ecb2 -.word 0x8040caf5 -.word 0x26af1de8 -.word 0x5a6c8eed -.word 0x973810e4 -.word 0xaf390e68 -.word 0xb28f7808 -.word 0xb52323fd -.word 0xb0dae5f9 -.word 0x7aee1142 -.word 0x2eb681e8 -.word 0x0a620bd7 -.word 0xc79d27df -.word 0x82665d4c -.word 0xa0eefc54 -.word 0x02504fe8 -.word 0x0b50c183 -.word 0x0134cfa7 -.word 0x92b80437 -.word 0xc7a19876 -.word 0x0d911fa1 -.word 0x039c1fff -.word 0xd2d11e4a -.word 0x2441e8be -.word 0x26e45d6b -.word 0xfce906bc -.word 0xc481cbdb -.word 0xec5c9a48 -.word 0x8b6feeca -.word 0xb49cf1c2 -.word 0xf83ed23c -.word 0xfb075293 -.word 0x50bba0e7 -.word 0x97b93dea -.word 0xa34aac18 -.word 0xff5d1fbb -.word 0xbe854a19 -.word 0x31549818 -.word 0x092bbb7b -.word 0x02423074 -.word 0x74302510 -.word 0xbdce1c56 -.word 0x7d8c1b17 -.word 0x97ecffbf -.word 0x865998c4 -.word 0xe607b21c -.word 0x9eeb657b -.word 0xe3c25405 -.word 0xdefba558 -.word 0x53074b88 -.word 0xd145c03b -.word 0xf99003ae -.word 0x4218a350 -.word 0xb2b9a811 -.word 0xc7fcad61 -.word 0x1a5ffd14 -.word 0xa35c128a -.word 0x0a1eb9ce -.word 0x3c900c4a -.word 0x1d65739a -.word 0xb29bc44b -.word 0xc17ef1ee -.word 0x6f8d793c -.word 0xe5ea45d9 -.word 0x43e60439 -.word 0x333d4de6 -.word 0xbb988ce5 -.word 0xf20ae27a -.word 0x3fdfde5f -.word 0xdd0304b1 -.word 0xc481461d -.word 0x312d2dec -.word 0xc041392a -.word 0xb65d83e1 -.word 0xf712d893 -.word 0x873ae1ab -.word 0x353ef11a -.word 0xe2fbba40 -.word 0xa72c0f15 -.word 0xc81e8eac -.word 0xacd049d6 -.word 0xd4463c28 -.word 0xb0a8d61a -.word 0x96d0251e -.word 0x4d0bb941 -.word 0x8bb4bb32 -.word 0xe8b214f2 -.word 0x08dd1fa1 -.word 0xe8e28fa5 -.word 0x56b01d76 -.word 0x962b5e5f -.word 0x65b5ff0b -.word 0x40144dbb -.word 0x11539cd7 -.word 0x34dd8f99 -.word 0x5681e306 -.word 0xefc4369e -.word 0xa12f7555 -.word 0x4a2ad67c -.word 0x5ee92e16 -.word 0x3f00fd89 -.word 0x09f1d9da -.word 0x0c2c385d -.word 0x7f5597a5 -.word 0x148be97c -.word 0xbf71d874 -.word 0x8d30bf82 -.word 0xac08a090 -.word 0x37b979aa -.word 0xe8e0cf74 -.word 0xb13a596f -.word 0xff269fd7 -.word 0x2b14698b -.word 0x69ccc593 -.word 0xf6adceab -.word 0x1f58627a -.word 0xbdf7852b -.word 0x008ee2a4 -.word 0xc3d2a44e -.word 0xf900aeb3 -.word 0xe84da722 -.word 0x18bf960b -.word 0xacb91216 -.word 0x30ee9a2d -.word 0x7e59afa1 -.word 0xcd5e47ba -.word 0x253f1dd4 -.word 0x81ff1614 -.word 0xc24159a6 -.word 0x8d7eb95c -.word 0xf08fe611 -.word 0xa9c30397 -.word 0x2d22c4f1 -.word 0x0851bb3c -.word 0x1a77df25 -.word 0xff29eee5 -.word 0x379ed817 -.word 0x16964d0c -.word 0xc29acd19 -.word 0x00be820d -.word 0xe313f9f7 -.word 0x7dbec600 -.word 0xb5e02bb3 -.word 0x2436b15c -.word 0xc67c6732 -.word 0xb9c29ea7 -.word 0x5d42fb94 -.word 0xda089ba1 -.word 0x2c6cf2d7 -.word 0xbc2cdcd8 -.word 0x8b91f159 -.word 0x5d16c56c -.word 0x923c7022 -.word 0xd790afa6 -.word 0x0585c3f1 -.word 0x7759922a -.word 0xa86c6143 -.word 0x196eac11 -.word 0xcf72e6d8 -.word 0x3ecbdd2d -.word 0xf76e1465 -.word 0x885539f8 -.word 0xef7bebaf -.word 0xb09c9484 -.word 0x5afb74ac -.word 0xbba25369 -.word 0x85e7f27c -.word 0x13188485 -.word 0x650d9b0d -.word 0x926ab1e3 -.word 0x0136d97f -.word 0x2d3e73ce -.word 0xcc7ae167 -.word 0xcdc4a51a -.word 0xd00d490c -.word 0xe93e87c6 -.word 0xf90906d1 -.word 0x2087a498 -.word 0xde74ebbd -.word 0xae3f2699 -.word 0x132bc79f -.word 0xc4bdbd6b -.word 0x7f86283c -.word 0x547a018c -.word 0xe5f09514 -.word 0x40e64b8d -.word 0x96321c5f -.word 0x3a2f1c30 -.word 0x0bee6c49 -.word 0x31c98241 -.word 0x319a891e -.word 0x241f56f6 -.word 0xe80d9f9c -.word 0x55dffb49 -.word 0x8a249b45 -.word 0xf59df542 -.word 0xdad3e646 -.word 0xf939364b -.word 0xe806e627 -.word 0xb8cb22c0 -.word 0x64276146 -.word 0x9729df97 -.word 0xfe35ee57 -.word 0x5c96f0ce -.word 0xb2ab37dc -.word 0x7cf86b8b -.word 0x60ccc79f -.word 0x51f60f36 -.word 0x1ce6dec7 -.word 0x82ac792b -.word 0x75129ce3 -.word 0x70bae14f -.word 0x04d9dcdc -.word 0x135898c6 -.word 0x9c091374 -.word 0xe7a7449b -.word 0x7eb0b6ba -.word 0xdc88fe5f -.word 0xd2ead572 -.word 0x513e1239 -.word 0xa200d4ee -.word 0x33529e3b -.word 0xe633dd12 -.word 0xf36fcb7c -.word 0xbeea5bd1 -.word 0x83cb079e -.word 0x062de2d1 -.word 0x84008450 -.word 0x92a6579d -.word 0xa81332a0 -.word 0x1db0e55a -.word 0x29c648e0 -.word 0x92cdadd3 -.word 0x9ba3e36d -.word 0x9fef2dac -.word 0xbe15606a -.word 0x12d4abb1 -.word 0xad56ba35 -.word 0xee7acdb4 -.word 0xa5db2d4f -.word 0x1c42ca87 -.word 0x005113b0 -.word 0xd7d6dac6 -.word 0xec2453af -.word 0x4be89b0b -.word 0xc82a186a -.word 0xbf9b09c5 -.word 0xdad021cb -.word 0x3e04c35d -.word 0x6e28f0fa -.word 0xecd1126c -.word 0xdc51c04f -.word 0x44abf3b5 -.word 0xa358548d -.word 0x9f5866bc -.word 0xa1e5ad57 -.word 0xc0ef2e75 -.word 0xf6d34a6a -.word 0x2744e844 -.word 0x024e5a2c -.word 0x4fc5abff -.word 0xe53cca23 -.word 0x7a7c164d -.word 0xc26fa16e -.word 0xe7aef6d0 -.word 0x0584e2c8 -.word 0xf41028ad -.word 0x340d80be -.word 0x2a481620 -.word 0xd3d675eb -.word 0xb640d4a6 -.word 0x3ff5bf3f -.word 0x3238c611 -.word 0x61aa3505 -.word 0xcdf60292 -.word 0x1de4cb48 -.word 0x0e48545a -.word 0xb070c15b -.word 0x054eab2a -.word 0xa19d84f9 -.word 0x7c3ca8d1 -.word 0x2b701e72 -.word 0x60e0e746 -.word 0x45e495a9 -.word 0x23fc28c9 -.word 0xa8a77b48 -.word 0x15c70e8b -.word 0xfd232a5c -.word 0x5a07639e -.word 0xccd66e98 -.word 0xc2d6bda7 -.word 0xc3bb4d58 -.word 0xd124e96a -.word 0x4b985d23 -.word 0x72b225cd -.word 0x73c820b4 -.word 0x0c104758 -.word 0x32e81be8 -.word 0xa72b1d9c -.word 0x516a5519 -.word 0x6ba9c8df -.word 0x93792bd0 -.word 0x873fd688 -.word 0x05c5f036 -.word 0x430dabcf -.word 0x908eccd1 -.word 0x197ec1d1 -.word 0x22576ee3 -.word 0x1fa7915e -.word 0x0691a3da -.word 0x242bbae2 -.word 0xb5c9c543 -.word 0x267c862a -.word 0x14c66f90 -.word 0xa051c95b -.word 0xcbd67ec3 -.word 0x822dcbda -.word 0xd6f14ee6 -.word 0x30105b39 -.word 0xb26e8a89 -.word 0x82c68631 -.word 0xd651f3b1 -.word 0x76fc8d89 -.word 0x502fd146 -.word 0x7d4e6057 -.word 0x0435d304 -.word 0x2ef39008 -.word 0xf9087ce7 -.word 0x57b6b29a -.word 0xb3f7bb76 -.word 0x9a90c4e0 -.word 0xeef17097 -.word 0x1afcca79 -.word 0x4440af46 -.word 0xe61e1f15 -.word 0x7211f1ba -.word 0x50600893 -.word 0xca8b9195 -.word 0xed957df9 -.word 0xb4a46950 -.word 0x6746ffdd -.word 0xc47a0a9a -.word 0x4b8ede29 -.word 0xc8dcbf05 -.word 0x78fbf0bb -.word 0x6fe81522 -.word 0x5dc13f22 -.word 0xd970ba0b -.word 0x56ce7468 -.word 0xfba3bef1 -.word 0x40c2b06a -.word 0xcf1a1d14 -.word 0x86152e67 -.word 0xf7a00ba6 -.word 0xfa858bd8 -.word 0xfdbba29c -.word 0xc4fd6de6 -.word 0x6e8ea9bc -.word 0xd88dd6eb -.word 0x60c6fe2b -.word 0xd4cdc957 -.word 0xe98a1a86 -.word 0x183b5b53 -.word 0x16fa9247 -.word 0xaafb949d -.word 0x796a6633 -.word 0xd9afa43b -.word 0xdcd95775 -.word 0x5384ce4f -.word 0xa65b008a -.word 0x1eb1f3b2 -.word 0x398d1c58 -.word 0x4111dead -.word 0x26632421 -.word 0xbefefff7 -.word 0xfc3c42be -.word 0x747c7f5a -.word 0x159e0011 -.word 0xdd87003a -.word 0x9b36a9e4 -.word 0x816cb8ce -.word 0x7f05e5d7 -.word 0xb004de6f -.word 0x6dc77aed -.word 0x19fae491 -.word 0x10d4f837 -.word 0xee9d8910 -.word 0x4a9bb659 -.word 0xd10d9796 -.word 0x278d9bd9 -.word 0x3b613619 -.word 0x037d2e00 -.word 0xe72082d9 -.word 0x4005abf8 -.word 0x12ea025c -.word 0x86426321 -.word 0x50b87999 -.word 0x2939ca6f -.word 0x13d44339 -.word 0xcf2b2a21 -.word 0xdf8aced2 -.word 0x13bc6bb1 -.word 0x4ebf5e55 -.word 0xffd0c258 -.word 0xf5d63a72 -.word 0xb0fb0e01 -.word 0x3371ac02 -.word 0xaf3d18e0 -.word 0x267ad585 -.word 0xeec5af9b -.word 0xc09d8a7f -.word 0x9f729363 -.word 0xd1d27ded -.word 0xfd99f3ef -.word 0x97d0d072 -.word 0x69ef9d1c -.word 0x8eb1c84d -.word 0x2c9471bc -.word 0x092a45ce -.word 0x73c04be3 -.word 0x2b43f11e -.word 0x656b1528 -.word 0xaa4bbd5f -.word 0x17919197 -.word 0x43362c70 -.word 0x828f6364 -.word 0xa9bf122d -.word 0x92fe8ea2 -.word 0x9d83e510 -.word 0xdf7cd455 -.word 0x0ddc2259 -.word 0xa8ee4eef -.word 0x20766d98 -.word 0x2243309f -.word 0x1d9139fc -.word 0x75bc91d2 -.word 0x83afdfad -.word 0x46a7a819 -.word 0xd36064d6 -.word 0xf4887e8c -.word 0x4f583185 -.word 0x68a2cf80 -.word 0xbcd1a0d8 -.word 0xe97a18e3 -.word 0x9e7bae32 -.word 0x9b275eb5 -.word 0x2319c759 -.word 0x471fbcaa -.word 0xd7fc5338 -.word 0x2ef9b304 -.word 0xd0f45937 -.word 0xec29c86e -.word 0x81193b36 -.word 0x4c8a455a -.word 0xdc1367db -.word 0x4c6e8268 -.word 0xe6d12013 -.word 0x01f8385f -.word 0xc9c94036 -.word 0x3921b60f -.word 0xb60add0c -.word 0x01e07851 -.word 0x9434cd97 -.word 0x4f9d87ee -.word 0x1f7a824a -.word 0xa03b9109 -.word 0xd8bd796d -.word 0x6b727539 -.word 0x9bc3e8ed -.word 0x81b4cad8 -.word 0xc9e14efc -.word 0x3f07da31 -.word 0x3e1aa35e -.word 0x2ce99dc5 -.word 0x7e2d633b -.word 0xeb571f18 -.word 0x08997a7b -.word 0x9c236aa7 -.word 0x803850a0 -.word 0xfe0f6a9c -.word 0xc84bccb5 -.word 0x782b8af4 -.word 0xc3a560f8 -.word 0x73982eff -.word 0xe8187d01 -.word 0x09051f1a -.word 0x1c5c1925 -.word 0x04b224ab -.word 0xbb6d23f9 -.word 0xdcbb229c -.word 0x6294b44c -.word 0xc938178b -.word 0x693244a6 -.word 0xc59d2eff -.word 0x14e93d0a -.word 0xc528ff7b -.word 0x51895b07 -.word 0xe96df9dc -.word 0x1d54ff2b -.word 0x99424116 -.word 0xb27b81f8 -.word 0xa7f2d5fd -.word 0x7c2a8b14 -.word 0xed65f0a2 -.word 0x2051765c -.word 0x50da97e5 -.word 0x5e6415ba -.word 0xb2b97e8b -.word 0xbd97b0b8 -.word 0x21e58cbe -.word 0x25083430 -.word 0xd3c91c1e -.word 0x78e2d1db -.word 0x4e047fc6 -.word 0xfeba6055 -.word 0x35222118 -.word 0x7607d1ac -.word 0x01f4dff9 -.word 0x6ca9f863 -.word 0xa1ed5fa9 -.word 0xf354e9bf -.word 0xa4a32723 -.word 0x68a8aa14 -.word 0x17adc059 -.word 0x3145c448 -.word 0xbac5a484 -.word 0x7592ee48 -.word 0x38334409 -.word 0xbb374f00 -.word 0xed615663 -.word 0x73fb8729 -.word 0xacc323ff -.word 0x64950e1d -.word 0x619ee3fa -.word 0x347a4834 -.word 0xaaaf3887 -.word 0xbfe3232c -.word 0xdeff01ba -.word 0x94e6a4bc -.word 0xec652405 -.word 0xae8463de -.word 0x9f435bee -.word 0xd6c49f04 -.word 0x630dc8bf -.word 0xd82af509 -.word 0x4b1fbc6e -.word 0xf6a43723 -.word 0xf51bd8b3 -.word 0x0a8d2f14 -.word 0x685e8548 -.word 0x970895a0 -.word 0x18588b95 -.word 0xcb84e443 -.word 0x67be50ea -.word 0xcac20066 -.word 0x1a66f819 -.word 0x793fad21 -.word 0x65ea5831 -.word 0xe1916662 -.word 0xc9e07e8a -.word 0xf316b0e8 -.word 0xe18ddf3e -.word 0xd3c5943c -.word 0x4ac12b8f -.word 0xaa458a91 -.word 0xd4752d14 -.word 0xc5f3f072 -.word 0x46cd370b -.word 0x46c163a7 -.word 0x430e2809 -.word 0xe8facc86 -.word 0xcb94c0f7 -.word 0xa2e4b1a8 -.word 0xfbe2e3f8 -.word 0xefcb8967 -.word 0x22c76262 -.word 0xf7168405 -.word 0xbc148202 -.word 0x019e6f26 -.word 0xdbf7f9ef -.word 0x07c36803 -.word 0x4fdfd33b -.word 0x1149bc94 -.word 0x14d8c21d -.word 0x8b1fec76 -.word 0x272f22e8 -.word 0x83b02fcc -.word 0x3e502f00 -.word 0xcf8f37ba -.word 0x11f4a13c -.word 0x573b82aa -.word 0x88f332d6 -.word 0xb06f1833 -.word 0x5eb7d235 -.word 0xbc0ddd73 -.word 0x0a0f2036 -.word 0xeec00214 -.word 0x8ef18bb1 -.word 0x24c6bda6 -.word 0x2fe11f67 -.word 0xfcddc956 -.word 0x0c46e83d -.word 0xf49cc273 -.word 0x6ec5cfc0 -.word 0x8ca0829f -.word 0x8a0a10aa -.word 0x312c71e2 -.word 0xa13d6a37 -.word 0x443c6a6b -.word 0x9b0989e1 -.word 0x7aed2a55 -.word 0xdc878029 -.word 0x24395e5c -.word 0x70810620 -.word 0x5cb08c1f -.word 0xd6257327 -.word 0x7da06abd -.word 0x3cbe931d -.word 0x1f3bec4f -.word 0xb727e7b8 -.word 0xd5140c67 -.word 0x772011fb -.word 0x8c509581 -.word 0xc6be6bbe -.word 0x98500779 -.word 0x50231b59 -.word 0xffc34d8e -.word 0xb738cfea -.word 0x18936cb7 -.word 0x207644b3 -.word 0x041c3380 -.word 0x0fdd76ab -.word 0x6f31f827 -.word 0x45cd454b -.word 0xb4a207b2 -.word 0xda8d60b9 -.word 0x9b0d7677 -.word 0x004357a7 -.word 0x3efd6748 -.word 0xf9260731 -.word 0x362471f0 -.word 0xd2ff1e6c -.word 0xfe0806c8 -.word 0x6c1ff95c -.word 0xef369d64 -.word 0x9091e6b6 -.word 0x60b07ac4 -.word 0x4d5d733d -.word 0x1aef1c43 -.word 0xe8ef1dd2 -.word 0xa2a294bd -.word 0x1ce25355 -.word 0xba4c14fd -.word 0xfb483131 -.word 0x97cf8396 -.word 0xfcc3c617 -.word 0xe814c775 -.word 0xab4c7e84 -.word 0x7cb06917 -.word 0x9db7563d -.word 0x153643b1 -.word 0xe0a66759 -.word 0x0f0e4ed3 -.word 0xc6b6149a -.word 0xa49607ad -.word 0xc25375d6 -.word 0x1cdf68cb -.word 0x1b340456 -.word 0x63287bdb -.word 0xd46f65c3 -.word 0x9f6212ec -.word 0x10683e4e -.word 0x7a4a6bdd -.word 0x4a8f3acf -.word 0x08fd2eb7 -.word 0x49cd1965 -.word 0xd7d062d7 -.word 0x39e708e6 -.word 0xad6e6600 -.word 0xfc34247b -.word 0xad000803 -.word 0xee656416 -.word 0x8f65765c -.word 0x1bf1abff -.word 0x12361606 -.word 0x50683356 -.word 0x552869c2 -.word 0xb38b0283 -.word 0xff498e68 -.word 0xb83b36c1 -.word 0x75fdf256 -.word 0x0218b07f -.word 0x0a69f557 -.word 0x5681917f -.word 0x1ae8e220 -.word 0xad07b259 -.word 0x966c7d7b -.word 0x285b1b95 -.word 0x6c0a7fe3 -.word 0xde8ff30c -.word 0xb765d982 -.word 0x9bb6d3c6 -.word 0xbc1973ba -.word 0x0fa1f741 -.word 0x90b6711c -.word 0x0c7f94e9 -.word 0x8ca7740a -.word 0x55b7542f -.word 0x5acb29a9 -.word 0x86fee1cb -.word 0x0861601d -.word 0x9dcb1a5e -.word 0xc6f8eed6 -.word 0xdbf3fbaf -.word 0xbfb5f3ef -.word 0xf1bcbf00 -.word 0xb549c9be -.word 0x72c586ba -.word 0x2e9e9e6e -.word 0xa1bc6384 -.word 0x3db59e57 -.word 0x8082259c -.word 0xf785bf95 -.word 0xafe442dd -.word 0xd806c15d -.word 0x90c31e2e -.word 0xc64f7841 -.word 0xad2aa960 -.word 0xd0a9208f -.word 0xa0dec1cc -.word 0x8e164a9d -.word 0x8081d538 -.word 0x7645a22d -.word 0xfb5a77fe -.word 0x46e5fcd6 -.word 0x455e8f9e -.word 0xd05a898e -.word 0xd67e216f -.word 0x5931f18f -.word 0x23c4e01a -.word 0x665bd494 -.word 0xcc5a09c4 -.word 0x09488794 -.word 0x25576022 -.word 0xfb4c49c1 -.word 0x7a9a65c0 -.word 0x7faa0013 -.word 0xd2e68df8 -.word 0x34aa9c08 -.word 0x71ef24c9 -.word 0x32ca0b2b -.word 0x82a6fd66 -.word 0xa7d5455e -.word 0x0db8df20 -.word 0xd37a2f5e -.word 0x8374fc83 -.word 0x3ee5db92 -.word 0x29e472ab -.word 0x4d9ababd -.word 0x768dbcd4 -.word 0x01bd7e8d -.word 0x81d195a3 -.word 0xf63183a3 -.word 0x7b37f602 -.word 0x73b15c94 -.word 0xd63f7b2d -.word 0xadf88f0d -.word 0x27319998 -.word 0xd1a82565 -.word 0x0bb35ece -.word 0x4ffefcbf -.word 0xd706c886 -.word 0x337ac8e2 -.word 0x6ef57d32 -.word 0xaf6a7529 -.word 0xbfaf99dd -.word 0xe4004e61 -.word 0x3a904f6e -.word 0xc6df5def -.word 0xbcb4a94e -.word 0xa6395d46 -.word 0xf23e792c -.word 0x1441d5e3 -.word 0x6f83f483 -.word 0x8f9029ef -.word 0xe16d5067 -.word 0xb5e4c23b -.word 0x841d22dc -.word 0x83b30014 -.word 0x2bdc4504 -.word 0xa215e5fe -.word 0xc68debee -.word 0xe35692fd -.word 0xd948946b -.word 0x1d87abb4 -.word 0xca10b739 -.word 0x672f52ff -.word 0xe9799087 -.word 0xda2368e3 -.word 0xf1d32949 -.word 0xbe96425b -.word 0xc61b7405 -.word 0x01f6e54a -.word 0x0dea47f9 -.word 0xea95f795 -.word 0x77e625bc -.word 0x49b55a54 -.word 0x50fc96c7 -.word 0x3a58db8e -.word 0x0bd0af83 -.word 0x162b462f -.word 0xbd72fb60 -.word 0xe7d76999 -.word 0x5d31b836 -.word 0x53f1ef1a -.word 0x83e6006e -.word 0x2ba6d631 -.word 0x43bb247d -.word 0x7654e59f -.word 0xc589aab3 -.word 0xc3dab54a -.word 0x170f8292 -.word 0x342e7575 -.word 0x12ace139 -.word 0xdedf621e -.word 0x2ae444fd -.word 0xa6d25d31 -.word 0x157cb7c5 -.word 0xc0c39ce8 -.word 0x3c7b1f49 -.word 0xab62b696 -.word 0xdfa0e011 -.word 0x3de264a9 -.word 0x067a45a7 -.word 0x8ffbdfeb -.word 0x486f51a5 -.word 0xba8cb0d5 -.word 0x58cd6dc4 -.word 0x0088329c -.word 0xb6a886c8 -.word 0xd3ccdcb9 -.word 0xfd38de08 -.word 0xc4a5b709 -.word 0x9ad822cd -.word 0x237cb254 -.word 0x0650c649 -.word 0x6f296d53 -.word 0x78796f5b -.word 0x5bf00af9 -.word 0x29fbddef -.word 0xb86313ce -.word 0xdc705276 -.word 0x15bf56db -.word 0xdac5a588 -.word 0x28943bad -.word 0x61ac13bd -.word 0xa15b42e4 -.word 0xa4964f65 -.word 0xbb4d4a74 -.word 0x34421fef -.word 0x5bc86933 -.word 0xaf6e28b0 -.word 0x9668fc2d -.word 0x82fb1616 -.word 0xf384acc0 -.word 0x34ac5d00 -.word 0xce9d483d -.word 0xf50ef9aa -.word 0x0437e07b -.word 0xdc559095 -.word 0xcf5e833e -.word 0x5901d907 -.word 0x5440e2f6 -.word 0x8ab18582 -.word 0xeef4eab5 -.word 0x23b9aa88 -.word 0xcf1850f0 -.word 0xa1a1c88a -.word 0x17a5bf60 -.word 0xf7ff1ae0 -.word 0x3e59d112 -.word 0x20b14370 -.word 0xd82d4062 -.word 0x728c4dd2 -.word 0x6b33e407 -.word 0x4550febe -.word 0x08d3cdc2 -.word 0x7cbaaa3b -.word 0x47efe216 -.word 0x69fd913a -.word 0xc2802d3a -.word 0xcef482e7 -.word 0x86797830 -.word 0x5c89dc42 -.word 0x4800302c -.word 0x0e4a5cad -.word 0x16b5cb4d -.word 0xef254093 -.word 0x65cd0571 -.word 0xd2f6c24c -.word 0x6dfcca48 -.word 0x2bfb18b7 -.word 0xd5048035 -.word 0xbc975854 -.word 0x6f1995e1 -.word 0x728e635d -.word 0xf743d3d8 -.word 0x840c44e1 -.word 0x7b184352 -.word 0x5411d608 -.word 0xd55c07d0 -.word 0x30915a3b -.word 0x25442093 -.word 0x6523d3c9 -.word 0xacf3193a -.word 0xeba4bd28 -.word 0xbb51eb70 -.word 0xae971033 -.word 0xbc1edc79 -.word 0x4fc4adf5 -.word 0xa8e6a782 -.word 0x2d9f378f -.word 0xa1fce012 -.word 0x28caff87 -.word 0x8c9ae531 -.word 0x4be35216 -.word 0x58c4217f -.word 0x866a382a -.word 0x4d94482c -.word 0x22cde961 -.word 0xf6a71e29 -.word 0x5e88bdd6 -.word 0x2bfdb58f -.word 0x5628f936 -.word 0x6f5bae1b -.word 0xf58ef967 -.word 0xad4724e6 -.word 0xd5ac3854 -.word 0xf033502b -.word 0x63f5fe7c -.word 0x9e5e2043 -.word 0x9a897924 -.word 0x1fb47994 -.word 0x8b536318 -.word 0x868ec499 -.word 0x02b86607 -.word 0x3058ec67 -.word 0xbe60f9a8 -.word 0xd24e9f71 -.word 0xcbc74c9e -.word 0x1c7ffdb8 -.word 0xe53eab42 -.word 0xd5707ced -.word 0x82c34831 -.word 0x060a4404 -.word 0xf149d9fe -.word 0x8dcda505 -.word 0xd866cc4e -.word 0x003c03e3 -.word 0x06e3e1da -.word 0xfcd84506 -.word 0xbc6dc4b7 -.word 0x028ec3fa -.word 0x9085a206 -.word 0xafc0e496 -.word 0x63c78c06 -.word 0xcab662d1 -.word 0x4181b1aa -.word 0xa7d1c978 -.word 0x87532c1f -.word 0x888d6b54 -.word 0x11933d4f -.word 0x7b065400 -.word 0xfc6b065b -.word 0xf1679afc -.word 0x14811963 -.word 0xc39c9287 -.word 0xa357cd9f -.word 0x463a71e6 -.word 0xa197d1d7 -.word 0x333fa7c0 -.word 0x9679905a -.word 0xcd9ec3d0 -.word 0xe2d9c846 -.word 0x7080fab0 -.word 0x3cbdea54 -.word 0xbeb225ac -.word 0x8048aab4 -.word 0x72cc3568 -.word 0x3a0699a9 -.word 0xc9bc55c1 -.word 0xaf2184c3 -.word 0x6541c57e -.word 0xec127bbf -.word 0xc3adb16d -.word 0x5fb7ac8f -.word 0xcde57356 -.word 0x4e0b48e9 -.word 0x771aa434 -.word 0x04ac5ca3 -.word 0x12c86cef -.word 0x9dae6e8b -.word 0x7eead0c0 -.word 0xcabf2f4a -.word 0x953e9a38 -.word 0xbe3fa786 -.word 0xa6bb2c75 -.word 0x18825f0b -.word 0x1c817c8f -.word 0xc1920c04 -.word 0x5317d2b8 -.word 0xb38bce29 -.word 0x29ccdd15 -.word 0x9ea8dc31 -.word 0xd9ab2864 -.word 0xbb12a2d3 -.word 0xc8d88573 -.word 0xb3d77bfc -.word 0x63c61315 -.word 0x59cea63d -.word 0x24abd802 -.word 0x1f8f3bd6 -.word 0x1a32cbdb -.word 0x21e23f3b -.word 0x104abbbe -.word 0x82ddafb6 -.word 0xe2ad9e5a -.word 0xb69757e4 -.word 0x0edc1bcf -.word 0x9fd36be6 -.word 0x6e358793 -.word 0x271e67a8 -.word 0xdec8e648 -.word 0x1f50f98b -.word 0xa5189f5e -.word 0x6c595c57 -.word 0x7fc103a7 -.word 0xa44e0d0b -.word 0x4571e91c -.word 0xa57c958d -.word 0xf67581d4 -.word 0x5778b379 -.word 0x89e3425d -.word 0x8447d8c3 -.word 0x176d6888 -.word 0x7dd6809a -.word 0x3813e480 -.word 0xdc85feae -.word 0xe12b3a93 -.word 0x4985fefb -.word 0x3c7a59d3 -.word 0x9db55b8d -.word 0xfb6f91a8 -.word 0xd5b5c41a -.word 0x11493bba -.word 0x9e0f4af7 -.word 0x42171b9f -.word 0x53d21dc8 -.word 0x97ec5eac -.word 0xa82865ea -.word 0x4eec2227 -.word 0x3207bf62 -.word 0xdd7f243c -.word 0x66b955ad -.word 0x9b16eb79 -.word 0x67f11cd5 -.word 0xaae08962 -.word 0xd7c6fce4 -.word 0xba7f8b2a -.word 0x433c6704 -.word 0x36a1ac3f -.word 0x85f959a0 -.word 0x14afe36c -.word 0x15f0a9b6 -.word 0x8792f4b0 -.word 0x4c78cafb -.word 0xef72a320 -.word 0xfe2d59de -.word 0x3c171847 -.word 0xd5626f29 -.word 0xc0776c33 -.word 0x23aabe05 -.word 0xa5d598db -.word 0xd00ae3b6 -.word 0x9ca79f78 -.word 0x41968de1 -.word 0xff585d7b -.word 0xc0f53bd7 -.word 0x840997cc -.word 0xb95e324c -.word 0x106664fe -.word 0xe66955cb -.word 0x64e0be27 -.word 0x5680256c -.word 0x2922b57a -.word 0xee7da687 -.word 0x0ca2cf8c -.word 0xc65f52c2 -.word 0xd08e3009 -.word 0x7e17a21d -.word 0x5005fa9a -.word 0x65034e95 -.word 0x7662bef0 -.word 0xd282a683 -.word 0xdd64be3c -.word 0xb6e9c038 -.word 0x1dfef410 -.word 0x12b64ae7 -.word 0x57f91bce -.word 0xaec254e0 -.word 0xe3e26d60 -.word 0x035831d1 -.word 0x7c066c6f -.word 0xa0928080 -.word 0x2e733b49 -.word 0x28a23828 -.word 0x68b31b1b -.word 0x21641754 -.word 0x4e9b8a8c -.word 0x16f1d72b -.word 0x1c98e8f5 -.word 0x3114d062 -.word 0xd4dbeb24 -.word 0x94a9c195 -.word 0x3649dc81 -.word 0x553422c9 -.word 0x49b8d64d -.word 0xebcff460 -.word 0xb2a90840 -.word 0x9040c497 -.word 0x223932a2 -.word 0xa0118c53 -.word 0x9b85fa31 -.word 0xca008a33 -.word 0x1b1c3e6f -.word 0xd4155950 -.word 0xd90e3b39 -.word 0xfbfb940c -.word 0xe28433e0 -.word 0x97927098 -.word 0x6c717001 -.word 0x423a8090 -.word 0xdd7621ed -.word 0xb25192d0 -.word 0xd231167c -.word 0x5c0245fe -.word 0x5655431f -.word 0xfd5103ea -.word 0x14590d2e -.word 0xeb7b0d65 -.word 0xfa501504 -.word 0x7bc44e75 -.word 0xc851b166 -.word 0xf68c34ee -.word 0xc79066df -.word 0xa802f81b -.word 0xa4bdafc9 -.word 0xdf4c506e -.word 0xbffa8f8c -.word 0x4fedb8c8 -.word 0x40c1fec0 -.word 0xba933a04 -.word 0x13be9cf7 -.word 0x2cdf9b25 -.word 0x04235eaf -.word 0xc578af23 -.word 0x5108529c -.word 0xf3894575 -.word 0xd3f603dc -.word 0xe4bf8971 -.word 0x98825fb0 -.word 0x33022d16 -.word 0xd2c8b5c1 -.word 0x9ec8fd8f -.word 0xdba05958 -.word 0x08db459d -.word 0xcefa5326 -.word 0x5e50e08a -.word 0x4841f11a -.word 0xd26f07a3 -.word 0x6c0cf4b6 -.word 0xe86131e5 -.word 0x5200b9ed -.word 0xfd1d0e53 -.word 0x5480d7b6 -.word 0x0f082697 -.word 0x79342bb0 -.word 0x6b4b5304 -.word 0x19692673 -.word 0x6c59b2f8 -.word 0x8a74e289 -.word 0x863a6b9f -.word 0x1a9cdf7f -.word 0xe86f1b49 -.word 0x6a16885b -.word 0x53e28aea -.word 0x25e0ea30 -.word 0xc8fc9975 -.word 0x4df2e805 -.word 0xf780512e -.word 0xd123bfaf -.word 0x16e27bea -.word 0x9d13d30a -.word 0x47fcaad3 -.word 0x8c47e322 -.word 0x8da26391 -.word 0xe0343cc7 -.word 0xb0f37b0e -.word 0x1440b4a5 -.word 0x6e73f30b -.word 0xd4ac8370 -.word 0x6d94e9a8 -.word 0x07479716 -.word 0xec520f14 -.word 0xd0007a87 -.word 0x4d837818 -.word 0x937243a1 -.word 0xf31c64fb -.word 0xe175471e -.word 0x5e0904f9 -.word 0x5fd92917 -.word 0xb5738f67 -.word 0x253f350c -.word 0xd91dd11b -.word 0x24b26b8e -.word 0x02284b1e -.word 0x5396649a -.word 0xb749b881 -.word 0xdbcdeb58 -.word 0xae553af1 -.word 0x00b69483 -.word 0x377e7797 -.word 0x3c5ff43d -.word 0xf300fba1 -.word 0x1b24332c -.word 0xb9db5458 -.word 0xec9103e6 -.word 0x569fb43d -.word 0xabfb1aae -.word 0x1fd80fcd -.word 0xd62df3f2 -.word 0x8b28507e -.word 0xfc23d4f1 -.word 0x756bb120 -.word 0x8a50b6b1 -.word 0x17a6f871 -.word 0xbecfd18d -.word 0x87a57736 -.word 0xbf6fc8c4 -.word 0x6319c5b8 -.word 0xa45c2b42 -.word 0x93e64f78 -.word 0x730ed797 -.word 0x0c7b2a76 -.word 0x609b7198 -.word 0x24523fe4 -.word 0x08f25697 -.word 0x801c60e2 -.word 0x45166ba8 -.word 0x34b289db -.word 0x94e90005 -.word 0x82c2d8e8 -.word 0x59e0080b -.word 0xb2c02ed4 -.word 0x87e214a3 -.word 0x4b1b27e2 -.word 0xe9b864e7 -.word 0x36a49a7c -.word 0xa295f00f -.word 0x34e1ba03 -.word 0x1997ff53 -.word 0x80445101 -.word 0xe7b72ff6 -.word 0x6e47d2a9 -.word 0xbd0a3f76 -.word 0xc2bb7ef5 -.word 0x38542ecd -.word 0x0e93b350 -.word 0x5a8c5402 -.word 0x272f0013 -.word 0x6932ea44 -.word 0x3c88f58d -.word 0xc0f19659 -.word 0xec4a2383 -.word 0x5145dfc1 -.word 0xc4ef81cc -.word 0x049b8814 -.word 0xe343d7b1 -.word 0x8664cf98 -.word 0xc22d35af -.word 0x6fabd46c -.word 0x098eda88 -.word 0xa9012c09 -.word 0x95f15300 -.word 0xdab12afe -.word 0x1c226713 -.word 0xc49a171e -.word 0x7c99782e -.word 0xbbe3cd1f -.word 0xb043102c -.word 0xf0c59ecb -.word 0x8dd8e7be -.word 0x80b725fa -.word 0x6a2c4708 -.word 0xee3a9d57 -.word 0xaab6f357 -.word 0x293263b3 -.word 0xf5d0ea46 -.word 0xaa96d7b7 -.word 0x18c068a5 -.word 0x3230dc12 -.word 0xdd3ff731 -.word 0x1abb4b5a -.word 0x07fd4fce -.word 0x647deabf -.word 0x066c1271 -.word 0x60e63cfc -.word 0x72aadcac -.word 0xf3fc639a -.word 0xff389a90 -.word 0x0b8a345a -.word 0x3adf7044 -.word 0xebf242b7 -.word 0x26e036b5 -.word 0x921f3b8e -.word 0x8b8bfc76 -.word 0xf1eba522 -.word 0xf3621cc1 -.word 0x40c1e30e -.word 0xcfd01012 -.word 0xa5ab6b0a -.word 0x39421da7 -.word 0xa74a6025 -.word 0x0c92fea2 -.word 0xfc6e24cb -.word 0x386a77e7 -.word 0x8775afea -.word 0xcae1d140 -.word 0xeefa7d72 -.word 0xe4643147 -.word 0x9424f217 -.word 0x81153946 -.word 0xf4e8898b -.word 0x7094bb55 -.word 0xb72067d9 -.word 0x97549c6d -.word 0x74848f35 -.word 0x2af318b0 -.word 0xd6177177 -.word 0x5559d912 -.word 0x2b0a562f -.word 0x9e1f73a0 -.word 0x518bd530 -.word 0xb9b7eae4 -.word 0x5fc9fdd7 -.word 0xca4fa276 -.word 0x2a62ad04 -.word 0x6f62c274 -.word 0x26be10a3 -.word 0x8dec50fb -.word 0x5c89e8b3 -.word 0xa7adb060 -.word 0xa2ad6aab -.word 0x30422772 -.word 0x0bd4fd41 -.word 0xdf175344 -.word 0x45ee0582 -.word 0xaee48495 -.word 0xe5cdf820 -.word 0x2a4c830c -.word 0xda8b26bf -.word 0x4eb85612 -.word 0xeabf2ac5 -.word 0x652600b0 -.word 0x81e7327b -.word 0xabbb2012 -.word 0x8af7baf6 -.word 0x7952a9cf -.word 0xc5d797e8 -.word 0xb1fa57ab -.word 0xb29c7679 -.word 0x8aa38631 -.word 0xbed3da64 -.word 0xfecfff31 -.word 0x096ec89e -.word 0x8fee22bc -.word 0x4fb4da3a -.word 0x54b42740 -.word 0xc025750b -.word 0x6d1fbd36 -.word 0x88e0c173 -.word 0x702f87e8 -.word 0x3574451c -.word 0x781fa21a -.word 0x5977c6e1 -.word 0x208114e1 -.word 0xa87441e0 -.word 0x4cf8f3aa -.word 0x7d6609c1 -.word 0xbe2b302e -.word 0xe100e476 -.word 0x505af964 -.word 0x6531fe6a -.word 0xb7d1c524 -.word 0x5c207049 -.word 0x837763ba -.word 0x380345d5 -.word 0x82dd0224 -.word 0x636906a3 -.word 0x5d0ed5ae -.word 0xdc91d3b1 -.word 0x2a9f013b -.word 0xc2e61deb -.word 0x09cc0977 -.word 0x25dfa05c -.word 0x04838415 -.word 0x6609d8d6 -.word 0x1a996307 -.word 0x41bcf4a8 -.word 0x88e9278e -.word 0x818b28a1 -.word 0x822c30aa -.word 0x5fac010b -.word 0x81385a68 -.word 0x06c1e17e -.word 0x9626a487 -.word 0xdff6dc54 -.word 0x62386e89 -.word 0x6ce165f3 -.word 0xe34b4aed -.word 0x0b0ecc05 -.word 0xf2addda4 -.word 0x4a296f76 -.word 0x9d49eb8c -.word 0xda1a9a20 -.word 0xad0a5b8a -.word 0x9b95bd4f -.word 0xb6213cdc -.word 0xf85fdf36 -.word 0x6093a201 -.word 0xa3c8d3fd -.word 0x9353955d -.word 0x7a051f84 -.word 0xb4d8b0f4 -.word 0xb63e8cb8 -.word 0x2919b0f6 -.word 0xa31901f6 -.word 0xca5a40c1 -.word 0x39b9b250 -.word 0x0083b51b -.word 0x8e78f1a0 -.word 0xcb6a6c22 -.word 0x7def1c57 -.word 0xff1f3ce8 -.word 0xa6668597 -.word 0x50a08a9a -.word 0xc42eeb8e -.word 0x68c4eb51 -.word 0x0b8064db -.word 0x529911e2 -.word 0xbe322067 -.word 0x86145ae7 -.word 0xbacdeb40 -.word 0x10ea07e1 -.word 0x14ad8aa1 -.word 0x65c08738 -.word 0x1c1c419f -.word 0x57b1ab5d -.word 0xac61b093 -.word 0xeb5acda4 -.word 0x4f4d6e59 -.word 0xf81c21b5 -.word 0xee0d70e8 -.word 0xa441d96b -.word 0x512ed574 -.word 0x4e222dcf -.word 0xd79641e2 -.word 0x9f1b3f8d -.word 0xdd8a9387 -.word 0x1d0b0f42 -.word 0xe9851fcd -.word 0xab38d848 -.word 0xed7a50d0 -.word 0x450395a2 -.word 0xecf1ad70 -.word 0xe470b4be -.word 0x78e7c22d -.word 0xac46ea39 -.word 0xc17e0955 -.word 0x7f48c918 -.word 0x6800be2b -.word 0xbf3c358c -.word 0x7e729a86 -.word 0x88d64847 -.word 0x5b9dfd53 -.word 0xed06128b -.word 0xbb536674 -.word 0x67b95a28 -.word 0xae887230 -.word 0x7869dd5c -.word 0xd44b9061 -.word 0x6f883328 -.word 0x74ad8040 -.word 0x4436c55e -.word 0xa43b8a1f -.word 0x2d8d0f94 -.word 0xa113b948 -.word 0x2c0a47bd -.word 0xb538b967 -.word 0x4e84d25d -.word 0xfbb507aa -.word 0xd4ae8243 -.word 0xc0fd3bc1 -.word 0xa25ab290 -.word 0x4ffa8b29 -.word 0x5142f4cc -.word 0x9ff35cb0 -.word 0xdde57077 -.word 0x09251b3f -.word 0x62932d44 -.word 0xdeb65e2b -.word 0x20181dc1 -.word 0xafa92d96 -.word 0x1e9d03bb -.word 0x4c4130b8 -.word 0x8b84ee46 -.word 0x43993d9c -.word 0x39604f1e -.word 0xdd0e2c63 -.word 0x456e36c6 -.word 0x496f1b03 -.word 0xee834a16 -.word 0x7dd26f97 -.word 0x3b71299a -.word 0x6bd6d843 -.word 0xc8e21329 -.word 0x83a3e88c -.word 0xfcf3b450 -.word 0x9a4dddf7 -.word 0x2ce6e2e8 -.word 0x836d7bd7 -.word 0x1687dd9f -.word 0x0305a9f7 -.word 0x7ae8592f -.word 0x98c86691 -.word 0x348e6246 -.word 0x7e4e883e -.word 0xb45b66b9 -.word 0x228ab330 -.word 0xf0e70b8d -.word 0x4d117e4e -.word 0x99e6e31e -.word 0xec708ba3 -.word 0xde00f241 -.word 0xe528e921 -.word 0xcfa2384b -.word 0x03431a05 -.word 0xa2f092f3 -.word 0xbe3f9925 -.word 0x421eceea -.word 0x39daf08f -.word 0xd9b4780a -.word 0xc7e1b3a6 -.word 0x896b231e -.word 0x64d1ec48 -.word 0xe0423734 -.word 0xd48074db -.word 0xdafd8eb2 -.word 0xc0b9a6ec -.word 0xd9a8acbd -.word 0xdd326815 -.word 0xe3095911 -.word 0x58e26bdb -.word 0xe48c8e69 -.word 0x04f4f5a0 -.word 0xf07a68ba -.word 0xa13966d5 -.word 0x2cce4b13 -.word 0x59ceec5f -.word 0x5fb46cd6 -.word 0x724a7c4e -.word 0x403b79e4 -.word 0x631c7110 -.word 0x1507e808 -.word 0xc1a1100b -.word 0xd6dc84b2 -.word 0x8da7b16c -.word 0x700a8607 -.word 0xbecbc9f3 -.word 0x83a36c31 -.word 0xb8fbac02 -.word 0x25938df6 -.word 0xd2251fc7 -.word 0x9c9677e5 -.word 0xc88d937d -.word 0xd57db319 -.word 0x76e014fc -.word 0x96cc05c1 -.word 0x7ed586ee -.word 0xd9b5d45f -.word 0x98af10f2 -.word 0x8cf4bc76 -.word 0x1ced686e -.word 0x24d06346 -.word 0x20259e6e -.word 0x58a4ccac -.word 0x0a169eb4 -.word 0x99948abf -.word 0xb6e06baa -.word 0xc39b5f4e -.word 0xf0bcd3a5 -.word 0x718c4523 -.word 0xbad2dd6c -.word 0x6854049a -.word 0x9a3bfd77 -.word 0xa5f943b6 -.word 0xa39c09c1 -.word 0xfe2d3113 -.word 0xcf348a4a -.word 0x9f0d647a -.word 0x1fb0b4c7 -.word 0xf55594c3 -.word 0x53e752c1 -.word 0x54cf64cc -.word 0x1cb06395 -.word 0xa1004381 -.word 0xb8e37b62 -.word 0xfc998071 -.word 0xa9f8e527 -.word 0x3cd5fd19 -.word 0xcfe600d9 -.word 0xd27bd6e2 -.word 0xe552f50a -.word 0x3ee035fa -.word 0x670141c2 -.word 0x91ff8f00 -.word 0x3c68ff8b -.word 0xe1c04d0a -.word 0xa9af0c5d -.word 0x4f71507e -.word 0xcbb66d01 -.word 0xe6c0850b -.word 0x5e373f91 -.word 0xe0d283b4 -.word 0x897b1119 -.word 0x7f2b05eb -.word 0x962cf88b -.word 0x1edc6f37 -.word 0xd8fe9c1b -.word 0x2bd4ad55 -.word 0xdf311053 -.word 0x5e906bb3 -.word 0x11ed4231 -.word 0x53125a5a -.word 0xac1fdc62 -.word 0x6a410bf6 -.word 0x2067493b -.word 0x8a1c958b -.word 0x57762431 -.word 0xd30d42b4 -.word 0xa78bbb53 -.word 0xce7d3760 -.word 0xac303946 -.word 0xc698498b -.word 0x8e748c21 -.word 0x424d2992 -.word 0x4412966e -.word 0x1b34fd54 -.word 0xa147a85e -.word 0x9585d052 -.word 0x457b2bb4 -.word 0x86c5c100 -.word 0x29ba876c -.word 0xefd2c469 -.word 0x76e9aa1a -.word 0xd5536f40 -.word 0x1dbcda52 -.word 0x7e7b0277 -.word 0x86d8e9a7 -.word 0xde697452 -.word 0x1fda92d5 -.word 0xb0eac8bb -.word 0xa25c24cc -.word 0x7326cb34 -.word 0x09b60515 -.word 0x3d42fac7 -.word 0x3c3802a5 -.word 0xe8be0b34 -.word 0x6b7df584 -.word 0x24c4a546 -.word 0x46462f97 -.word 0xdc6051fa -.word 0xb045a00f -.word 0x56792c04 -.word 0xc07fd1a3 -.word 0xd2ff0200 -.word 0x29554dfa -.word 0x4695cd2f -.word 0xf6475be7 -.word 0xf8b65cd5 -.word 0x019ca407 -.word 0x8805ff33 -.word 0xcd095608 -.word 0x49c6e8a5 -.word 0xdb20c213 -.word 0xdcbdebf3 -.word 0x1fce76bd -.word 0x8a4ee803 -.word 0x21cfc55a -.word 0x0ec07d01 -.word 0xf3e07be0 -.word 0x55ad3763 -.word 0xfff1e20e -.word 0x8335b3b2 -.word 0x260cdd27 -.word 0x1f1a18a7 -.word 0xf2177e9a -.word 0x2629424d -.word 0xeb8e1c2b -.word 0x4f5731ac -.word 0x98940400 -.word 0x00297dea -.word 0x63e051db -.word 0x1629b48b -.word 0x03c54d38 -.word 0x8160457b -.word 0x69873fa2 -.word 0xb58226de -.word 0xc8d42d37 -.word 0xd286dab8 -.word 0xd6f66b9d -.word 0xd551194e -.word 0x2ed5d18b -.word 0xa7a9a01a -.word 0x8c092f55 -.word 0xc00b6ca9 -.word 0xda1e11d9 -.word 0x37f8a242 -.word 0x915d88ff -.word 0x06e1878b -.word 0x9302a2e0 -.word 0xf08a97dd -.word 0xf20129b8 -.word 0xc3ea3257 -.word 0x7cf57960 -.word 0x6dcd3b12 -.word 0xf097a68e -.word 0x1f2e1a2c -.word 0x35b44034 -.word 0x81b35a96 -.word 0xbe438c5d -.word 0x1cbdf452 -.word 0x20192bd3 -.word 0x6d936066 -.word 0x4368614a -.word 0xadeacaf3 -.word 0x6bff134a -.word 0x65f1de19 -.word 0x382c2793 -.word 0xc08e8c29 -.word 0x9927bed2 -.word 0x929367e4 -.word 0x95dd1da5 -.word 0xe75d71b6 -.word 0xa50389c0 -.word 0x0e83fe73 -.word 0x5afc883a -.word 0x27814e36 -.word 0xb3a96dc8 -.word 0x8eb84b68 -.word 0xdcf97022 -.word 0xb65e75ff -.word 0x7dcf3ef5 -.word 0xcd5660ba -.word 0x7f37434a -.word 0x9bbae642 -.word 0x93f6c476 -.word 0x3e34af99 -.word 0x18fc2191 -.word 0x75d600d2 -.word 0xa3f76082 -.word 0x1facf037 -.word 0x5be7b913 -.word 0xc9f59fb1 -.word 0x7783386d -.word 0x0685c571 -.word 0x1c1f2b16 -.word 0xbbfb0879 -.word 0x6c3827ad -.word 0x3bf31d24 -.word 0x7c311aef -.word 0xde0ccf07 -.word 0x1faebc10 -.word 0x1ed7d82a -.word 0xaa6d431a -.word 0x28a4bd9a -.word 0xad678885 -.word 0x9878f5f7 -.word 0xfc5d40a2 -.word 0x42387adb -.word 0x5cb9de97 -.word 0x3ac49b1d -.word 0xa3997f2a -.word 0x528420c1 -.word 0xa38fa80d -.word 0x29a81a21 -.word 0xd67403fe -.word 0xca34e0c7 -.word 0x33d56c5e -.word 0xe72d9d44 -.word 0x1b0d38ca -.word 0x10047b15 -.word 0x94482904 -.word 0x153ea775 -.word 0x77ed0c97 -.word 0x27151be9 -.word 0x81f4a4c8 -.word 0x7dc3e312 -.word 0xdd44cd9a -.word 0x86beb118 -.word 0x4f19fe98 -.word 0x20de95a0 -.word 0x2abe1a4f -.word 0x8f951388 -.word 0xee119fb6 -.word 0x0ed53c2a -.word 0x97ac6a02 -.word 0xa23f74b2 -.word 0x88defb26 -.word 0x6a7975c4 -.word 0x63aae573 -.word 0x5fb22162 -.word 0x6eb475bb -.word 0xc1e4d4a0 -.word 0x13b3c2e9 -.word 0x1c1ff2f5 -.word 0x4d30bf45 -.word 0x92bf4ce0 -.word 0xd8187927 -.word 0xe0c94ad5 -.word 0x68e45f0f -.word 0xc739e3a6 -.word 0x9d2b5f01 -.word 0x0790ec48 -.word 0x57e8ff40 -.word 0x9b04862a -.word 0xae4853f0 -.word 0xf71f412b -.word 0x13f82bd7 -.word 0xf44ce537 -.word 0x6b80db3e -.word 0x7b10cf32 -.word 0xefa59bc4 -.word 0x925b15d0 -.word 0x4196a4ff -.word 0x76f87873 -.word 0xe41be33a -.word 0x741d216c -.word 0xa685cd81 -.word 0xe167e1fc -.word 0x4eaa4f3e -.word 0x8d6afbf6 -.word 0xe98591e4 -.word 0x67f35570 -.word 0x35606933 -.word 0x24471946 -.word 0x10bbe008 -.word 0x528134b9 -.word 0x05608f05 -.word 0xdc873b6d -.word 0x9c868a2c -.word 0x70fe42d2 -.word 0x040bf689 -.word 0x6a0b08bb -.word 0x7ed1acee -.word 0x3ee3dbef -.word 0xccb3d354 -.word 0xa944d7ac -.word 0x757df430 -.word 0x04ab8983 -.word 0xa613a14e -.word 0x09d43ef3 -.word 0x6d7f6b3c -.word 0xa97b7be0 -.word 0x1db3182b -.word 0x9c845245 -.word 0x992cc5dc -.word 0x10ce0eba -.word 0xf54e7a5f -.word 0x0dea1c41 -.word 0x297d5a2a -.word 0xb65f788f -.word 0x9237f261 -.word 0xaf0add56 -.word 0x2601ec65 -.word 0xab2fb591 -.word 0xe3b8a54c -.word 0x7007ef66 -.word 0xff979bb8 -.word 0xc495efc8 -.word 0xe2c3ea22 -.word 0x23a5a14b -.word 0x9b38f058 -.word 0x6e636de1 -.word 0xa2f9c573 -.word 0xa37f47e4 -.word 0xfed5b4eb -.word 0xefb2c5c6 -.word 0x65814807 -.word 0x2f2b31bd -.word 0x3d2ab62e -.word 0x2b7a607d -.word 0xc2ff0c00 -.word 0x1ee5223e -.word 0xbdd8be03 -.word 0xc4d21ce7 -.word 0x410f74c7 -.word 0x3d58a13b -.word 0x015ab32e -.word 0x0c7d50d6 -.word 0x6f7f6249 -.word 0x7bb7dc6c -.word 0xf780c5b5 -.word 0x7112b35e -.word 0xe21c4ffd -.word 0x7812e0e1 -.word 0x455a7295 -.word 0xbaf1efcf -.word 0x866ec656 -.word 0x3c78322b -.word 0x6a7b0d73 -.word 0x02298820 -.word 0x4a5154de -.word 0xcc7a2d8c -.word 0x349e793f -.word 0x9287b475 -.word 0x95bd108f -.word 0x73bf717d -.word 0x9a109423 -.word 0x0cec1865 -.word 0xfe5c1fe7 -.word 0x30d68f42 -.word 0x43fa24d0 -.word 0x6de756e4 -.word 0xc01ca8db -.word 0x948c1379 -.word 0xd1518ea9 -.word 0x2e343072 -.word 0x9165f94a -.word 0x83104eb5 -.word 0x19a1e91f -.word 0x318330cd -.word 0x6f5b7894 -.word 0x6e1c7b9e -.word 0x2f0f9c53 -.word 0x141f138a -.word 0x0f5053b0 -.word 0xe3e0ed8e -.word 0xb1e98b69 -.word 0xee77d46c -.word 0x1ed4a1f9 -.word 0x7a32d42f -.word 0xf01160a8 -.word 0xe1c6267e -.word 0x7ee6e02a -.word 0x49900939 -.word 0x892d0ea5 -.word 0xc17a6a6f -.word 0x36e58b13 -.word 0x345a332a -.word 0x684cd392 -.word 0x389f6e05 -.word 0x8379b0a7 -.word 0x6d10c09b -.word 0x04d91d86 -.word 0x90d05b39 -.word 0x9e73bb20 -.word 0x815b7801 -.word 0x7b14cb90 -.word 0x348b8a95 -.word 0x498b51b4 -.word 0x97519ca4 -.word 0x0a02e728 -.word 0x84e64eab -.word 0xd1415751 -.word 0xbf525856 -.word 0xeb04029a -.word 0x2ce1ee78 -.word 0x905ef1cb -.word 0x2f8ef99e -.word 0x6fb377c0 -.word 0x8570f3d1 -.word 0xbaf6e479 -.word 0x6308cdc6 -.word 0xa169315c -.word 0xda64b1b0 -.word 0x8fc40d41 -.word 0x64034262 -.word 0xf891f0a9 -.word 0x6f4bc801 -.word 0x301a29d3 -.word 0x97c79e56 -.word 0x0e069376 -.word 0x1e5e67e4 -.word 0x910ff787 -.word 0x007c4116 -.word 0xf5255f4a -.word 0xaeed4708 -.word 0x15d0e806 -.word 0x521fd0c3 -.word 0xaa1b0ac2 -.word 0x96e8cab9 -.word 0xf11fdd9f -.word 0x989ca786 -.word 0xaba9aa9b -.word 0xcfaddc49 -.word 0xd6d90b4f -.word 0xbc704702 -.word 0xf1eacd5a -.word 0xa7695036 -.word 0xcf548cba -.word 0x8af359d0 -.word 0xa4a20e27 -.word 0x64e14ed1 -.word 0x67e6eb87 -.word 0x66dc9cc5 -.word 0x374e9100 -.word 0xe1e3e59e -.word 0x7e090e89 -.word 0x95a87985 -.word 0xfad41732 -.word 0x767e98e0 -.word 0x07fb232a -.word 0xd4f9ad09 -.word 0x5577cb7c -.word 0x55b6721f -.word 0x52aee5ad -.word 0xb7e4eee5 -.word 0xdaff7fae -.word 0x333d3c02 -.word 0xa7355e37 -.word 0xf7615933 -.word 0x81d0ebf6 -.word 0x9d4a3911 -.word 0x1846fc62 -.word 0x8844d1d1 -.word 0x44f9df3a -.word 0xabdb7d87 -.word 0xfbc44fad -.word 0xf02c0076 -.word 0x903f1223 -.word 0xa41490b3 -.word 0xfb45c629 -.word 0x2dfb762c -.word 0xd482c50b -.word 0x2763d478 -.word 0x26625a4e -.word 0x50a455da -.word 0x58637d94 -.word 0x883a2769 -.word 0x79a57dc6 -.word 0x42652df5 -.word 0xb9a33bb0 -.word 0x99243598 -.word 0xabc4e080 -.word 0xb336796f -.word 0x44d492cf -.word 0x5875b4e9 -.word 0x2836b95e -.word 0x87868a12 -.word 0xc4911767 -.word 0xffa7ba66 -.word 0x6b8dcf94 -.word 0xb6d4237d -.word 0x20fe3887 -.word 0x5ab7f4f6 -.word 0x423406f7 -.word 0x7b567613 -.word 0x381d37ce -.word 0x19081e45 -.word 0x0e50dae8 -.word 0x09e33a28 -.word 0x3b873d2c -.word 0x556d0d89 -.word 0xc672901d -.word 0xdc2ea251 -.word 0xfb9aab35 -.word 0x0c01ab2a -.word 0x39d27258 -.word 0x84571a18 -.word 0xd846cced -.word 0x65171474 -.word 0x753e33e3 -.word 0xe9ec5459 -.word 0x68e16993 -.word 0x0fe29d49 -.word 0x4ddbfadf -.word 0x498954f5 -.word 0x025b0a02 -.word 0xc7ac5b79 -.word 0x305b9695 -.word 0xa4e7316d -.word 0x5c8ec35e -.word 0x9fead516 -.word 0x19514630 -.word 0x26002e7a -.word 0x920c9a6f -.word 0xed53826a -.word 0xd23aea4b -.word 0x1f6d40a9 -.word 0xcec1134e -.word 0xf3abf422 -.word 0x93e17ced -.word 0x69185d42 -.word 0xfde7eb91 -.word 0x5ae8e499 -.word 0x35b09118 -.word 0x7e3cfb83 -.word 0xb445a9b9 -.word 0x24ee4059 -.word 0xb99a53e0 -.word 0xc4f2596b -.word 0x5939b9e4 -.word 0x1bee7036 -.word 0xed4f4e9b -.word 0xc8067dba -.word 0x3dc0b0cf -.word 0x8dad00eb -.word 0xaf25d42e -.word 0xefcd45a6 -.word 0xad32ce06 -.word 0xf99baf6c -.word 0xe92ba623 -.word 0x43d04f0f -.word 0x51cd8811 -.word 0x17689773 -.word 0x628e8bca -.word 0x8dc1fe20 -.word 0xafd7a1ad -.word 0xca02551e -.word 0xc07f9eb7 -.word 0xd56faec3 -.word 0xed16545b -.word 0xd836502b -.word 0x95d302d8 -.word 0xdfbcdedc -.word 0x82e2e421 -.word 0x322769a8 -.word 0x0f777ff9 -.word 0xde15cb39 -.word 0x3d34a475 -.word 0x5a2a7156 -.word 0xe66518d7 -.word 0xd0f11b20 -.word 0xacc2f504 -.word 0xf5f5ca1a -.word 0xcc419f19 -.word 0xcd4d0356 -.word 0x43055f91 -.word 0xca9a46c2 -.word 0x2cee2daa -.word 0xdfcfbe2d -.word 0xece94a64 -.word 0x3313626d -.word 0x48695de3 -.word 0xbed2f780 -.word 0xcc74ade5 -.word 0x8d5248c9 -.word 0x59b61733 -.word 0x9953358b -.word 0x17691985 -.word 0x34487a30 -.word 0x961ed2b5 -.word 0x5516f6ca -.word 0x91c83434 -.word 0xd8e4c60b -.word 0x82776ae3 -.word 0xd544b4f7 -.word 0xcbbf9662 -.word 0xabb00f24 -.word 0xf3bbe421 -.word 0x85ac0d22 -.word 0xad2484ec -.word 0xf803de6e -.word 0x472fcfd6 -.word 0x8dde3e1c -.word 0x50653b9b -.word 0x83da765b -.word 0x44d2cd19 -.word 0x967f26fc -.word 0x020666c5 -.word 0xfa0da81a -.word 0xd74810ee -.word 0xec2299d0 -.word 0x04eec145 -.word 0x1b9c909d -.word 0x82e6fddb -.word 0xaf271f65 -.word 0x5c6a6e92 -.word 0x9bbd29ad -.word 0xfe80ec91 -.word 0x7fcda614 -.word 0xa4769328 -.word 0x22bd0c2c -.word 0x4beb0817 -.word 0x9d272979 -.word 0x8a1a891e -.word 0xf2b578f6 -.word 0x1d479147 -.word 0x6cc29919 -.word 0x6826923b -.word 0x97fd6483 -.word 0xddf11e5e -.word 0xab342bf8 -.word 0x8eb3e5fb -.word 0xca2da120 -.word 0xf7b39984 -.word 0x1786d5d3 -.word 0x5075aaae -.word 0x507b0adc -.word 0x64efd050 -.word 0xdf025fdb -.word 0x90718ffe -.word 0xb0168c3b -.word 0x99151af6 -.word 0x17a3d0b1 -.word 0x595ac4cd -.word 0xcd393113 -.word 0x776a0582 -.word 0xa4bc5371 -.word 0xd76cbc90 -.word 0xfa043069 -.word 0x44d71f93 -.word 0x2de007dd -.word 0x28b3a4a5 -.word 0xe95eebcc -.word 0x350d58c4 -.word 0x27a20498 -.word 0x48407d4f -.word 0xe1299d57 -.word 0x0a481b42 -.word 0x535db8d9 -.word 0x2eef2189 -.word 0xfcace390 -.word 0x788192e5 -.word 0xc6091e8b -.word 0xec954be3 -.word 0x28fd790d -.word 0x3b49ec48 -.word 0xa773817a -.word 0x2d05b259 -.word 0x6d224fb8 -.word 0x63816132 -.word 0x57875388 -.word 0xf0474f0e -.word 0x59b5eca2 -.word 0xa6133bfd -.word 0x1ca6afc0 -.word 0x94f50bcf -.word 0xc7af3943 -.word 0xbbf5bdfc -.word 0x6a9dd7c9 -.word 0x351ee114 -.word 0xd4009e75 -.word 0xb0da156e -.word 0x2efc1257 -.word 0xe22ef0c7 -.word 0xc11746dc -.word 0x56592283 -.word 0x04fdfcd5 -.word 0xd379e7ca -.word 0x7ba7d95c -.word 0xb483b711 -.word 0xf71f7786 -.word 0xaf12f858 -.word 0x7c02a8a6 -.word 0x6f7a3709 -.word 0xc6e16d05 -.word 0x5935650b -.word 0x8e50c91b -.word 0x378d082e -.word 0xf74bd85c -.word 0xa851fd7c -.word 0x1daee471 -.word 0x7efa51fd -.word 0x5423f815 -.word 0x0f181989 -.word 0x5d881c1d -.word 0xf0870296 -.word 0x34767587 -.word 0x0f29227f -.word 0x7bd16d99 -.word 0xfc45c3be -.word 0x69855a9d -.word 0x22670507 -.word 0xb15ba7b5 -.word 0x8f2b2c3b -.word 0x72ce5986 -.word 0xff03fb81 -.word 0xbacbccac -.word 0xfe716dd8 -.word 0xb5be635a -.word 0x47036ef0 -.word 0x05bc6620 -.word 0x37f11d09 -.word 0xdb48cf0f -.word 0xb3a31579 -.word 0x6b15c061 -.word 0xdd14a523 -.word 0xf4c44008 -.word 0xd7367504 -.word 0x57674c81 -.word 0xe28151b9 -.word 0xc6adf33c -.word 0xbe88dd37 -.word 0xb2967c10 -.word 0x43d665b7 -.word 0xefeca3b6 -.word 0x9fcabe72 -.word 0x96845464 -.word 0xec896ea1 -.word 0x820e1cd2 -.word 0xaf58acff -.word 0x2a5d50f9 -.word 0x90d10386 -.word 0x5a0d9308 -.word 0xab946abc -.word 0x3e6c30db -.word 0x591ae1e3 -.word 0x3255869c -.word 0x89007bf6 -.word 0x16d43817 -.word 0xd48f168f -.word 0xdd2b96dc -.word 0x0834ea6d -.word 0x40a3f62c -.word 0x5d45ec39 -.word 0x9fb7aad6 -.word 0xdc7675bd -.word 0x76385a9f -.word 0xa630f0ff -.word 0xda12e9e5 -.word 0x0396bb6c -.word 0x184a09ed -.word 0x5dd2e2a0 -.word 0xc5793d7b -.word 0x61cb6599 -.word 0x83c182b1 -.word 0x7ce4f7da -.word 0xf5524fe8 -.word 0x2581f2c5 -.word 0x6a8c3fe0 -.word 0x598039a6 -.word 0xcccf17a0 -.word 0x52f425f8 -.word 0xaf97b955 -.word 0x1e548261 -.word 0x0e90a4dc -.word 0x9a51ee38 -.word 0x5317542a -.word 0x03c0238a -.word 0xe6c75519 -.word 0x1fd4ef29 -.word 0x3242be80 -.word 0x52413443 -.word 0x3c86d76a -.word 0x30357e69 -.word 0x1e503f14 -.word 0xe804643c -.word 0x04328726 -.word 0x19faaabe -.word 0xa0a59160 -.word 0x4164a6cb -.word 0xe8a1554c -.word 0x8646ba6d -.word 0xbd09c26a -.word 0x03b763a2 -.word 0x6284b9c0 -.word 0x5e5887a7 -.word 0x9e689c43 -.word 0xe8b3ab4f -.word 0x65058396 -.word 0x24fbcaae -.word 0x6ce88455 -.word 0x741c3346 -.word 0x90a4bda3 -.word 0x1889ba81 -.word 0x478ecb2f -.word 0x40ddfe5b -.word 0x67151941 -.word 0x287ca022 -.word 0x7f99d606 -.word 0x23eccb04 -.word 0xab10b184 -.word 0xd01b1cde -.word 0x267c5864 -.word 0xa76238ac -.word 0x5c2490e0 -.word 0x39b60b4b -.word 0xce28a9c5 -.word 0x2cfb596c -.word 0xd104acef -.word 0x838cce44 -.word 0x6e3e96bd -.word 0xab93d490 -.word 0xa911251f -.word 0x8b15ad46 -.word 0xd9d230b9 -.word 0x2c980ead -.word 0x89ed1c32 -.word 0x3bb5e8b5 -.word 0x88ebe653 -.word 0xc599302a -.word 0xf4d8093f -.word 0xec660a53 -.word 0x3ba5a4f9 -.word 0x38e1f505 -.word 0x66d231f2 -.word 0xe9ff5bfe -.word 0xdd4bb89d -.word 0xd6fbaf0f -.word 0x8ceefe80 -.word 0x32e28ee8 -.word 0x0ab53673 -.word 0xb001671e -.word 0x4586ab7f -.word 0x652a9694 -.word 0x00472772 -.word 0xda749c22 -.word 0x001ab90b -.word 0xa395022d -.word 0xb0cff43b -.word 0xc30140b9 -.word 0x4cf2b707 -.word 0xc6dfea03 -.word 0x0e0282c3 -.word 0x649765cb -.word 0x622c9a4b -.word 0x26a7c0c3 -.word 0x7e3d4d54 -.word 0xdce80812 -.word 0x92248b00 -.word 0x5b8c3512 -.word 0x83126402 -.word 0xe8888f47 -.word 0x25e4a814 -.word 0xdb6d715b -.word 0x525162a2 -.word 0x7aa47972 -.word 0x184664d6 -.word 0xdfb282fb -.word 0xa5ecfb5f -.word 0xd632f908 -.word 0x22b32acd -.word 0x64664e0b -.word 0x4494469c -.word 0x745e5f76 -.word 0xabfec67a -.word 0xf2b455c5 -.word 0x7f4d2f1b -.word 0x1fe9107b -.word 0x738637df -.word 0xbbeb6f58 -.word 0x237ad5f3 -.word 0x84ed4019 -.word 0xb15710b9 -.word 0x04258a3a -.word 0x04542cd2 -.word 0xcd47765e -.word 0xa9d9469f -.word 0xb0ef6129 -.word 0xf3fba121 -.word 0xc6d0ebae -.word 0x9155b28d -.word 0xe3b8f11f -.word 0xfa906069 -.word 0xe3f1486a -.word 0xf3977039 -.word 0x32a04127 -.word 0xf6517e6a -.word 0x3236d089 -.word 0x67fa9e78 -.word 0x04569759 -.word 0x37b49cfd -.word 0x2ecb8e8b -.word 0x09b989ed -.word 0x2d048b21 -.word 0x64181fb9 -.word 0x1077da19 -.word 0xb2dd3ae9 -.word 0xab901fc8 -.word 0xb67639da -.word 0x489a932d -.word 0xcf7c84a8 -.word 0x6ebe79b7 -.word 0xa45db592 -.word 0xe421cdfe -.word 0xf3cdc11f -.word 0xc7844de7 -.word 0x3e5cbaf7 -.word 0x87c8d862 -.word 0x18a73725 -.word 0x8a0f6157 -.word 0xb9e57b57 -.word 0xedf3274d -.word 0x33dfb4cd -.word 0xc9081ae6 -.word 0x56ce0e41 -.word 0x31e5ae73 -.word 0x86624e2e -.word 0x92111250 -.word 0x7b0c406e -.word 0xdfdd85f3 -.word 0xef82ed5c -.word 0x31410406 -.word 0xf0cd3b96 -.word 0xd8fa6574 -.word 0xeb7ca123 -.word 0xb535601a -.word 0x8441ef8a -.word 0x712178b7 -.word 0x84574b0b -.word 0xce63d615 -.word 0xb344cf5d -.word 0x86f5cfe8 -.word 0xdd8992f5 -.word 0xc9fa8cc4 -.word 0x41f862ab -.word 0xf89f654c -.word 0xe334662d -.word 0xb9732d6f -.word 0xb4abe412 -.word 0xabb74bc2 -.word 0xdce43919 -.word 0x47fc8805 -.word 0x22ea161b -.word 0x13c46877 -.word 0x864c1cf9 -.word 0x44afc22d -.word 0x60257d4f -.word 0x49aeaf40 -.word 0x15b01901 -.word 0x023c1e0b -.word 0xcfbd0238 -.word 0x04253f8b -.word 0xb85bc43a -.word 0x684818e2 -.word 0xc30c6358 -.word 0xd84521a2 -.word 0xd70e259c -.word 0xc1f7cc39 -.word 0x8a8f7271 -.word 0x8e99f3be -.word 0x3822842a -.word 0x1cefd7c5 -.word 0x1bd4ad7f -.word 0x47f5c4a9 -.word 0x4d949944 -.word 0xbf88f55d -.word 0x3fb4a104 -.word 0x4f50a829 -.word 0x3182d347 -.word 0x4b9bebe4 -.word 0x0d963226 -.word 0x561136d2 -.word 0x6dfc5b67 -.word 0xf6e9e772 -.word 0x567efe90 -.word 0x30ced05b -.word 0x84182edf -.word 0xd365a09d -.word 0x9423fd6b -.word 0x5dcc0d7e -.word 0x93c0fb3b -.word 0xf3f40850 -.word 0x43287493 -.word 0x7781611c -.word 0x427cd735 -.word 0xba0cc0dc -.word 0x9136847e -.word 0x49f8996e -.word 0x98d02ac9 -.word 0x6843e73f -.word 0xa830d10a -.word 0x0ee60eab -.word 0x1297d7be -.word 0x3207d032 -.word 0x0d81dcdd -.word 0xb32f5c5f -.word 0x15453e77 -.word 0xd24384a6 -.word 0xc4d6e61e -.word 0xa52e721f -.word 0x8edaa297 -.word 0xbc6f8216 -.word 0x8c69cc5f -.word 0x74072fc4 -.word 0x6a9d68bb -.word 0xaf59578a -.word 0x1166cf06 -.word 0x62713924 -.word 0x0554e165 -.word 0xf3e0a746 -.word 0x194434d9 -.word 0x6db84cfa -.word 0x8fde4500 -.word 0x64f16e60 -.word 0x4062988d -.word 0x7ce39817 -.word 0x4161cbaf -.word 0x04616984 -.word 0xb279b7b7 -.word 0x443ffb89 -.word 0x6e3af38c -.word 0xb4251bb6 -.word 0xd321fe7c -.word 0x9f148ad4 -.word 0xe2fec18a -.word 0x3e122807 -.word 0x6b9f45c2 -.word 0xe698f520 -.word 0x1b9bcada -.word 0x4209bb07 -.word 0xaba73e55 -.word 0x37bea945 -.word 0x1c717271 -.word 0x0232c1e9 -.word 0xdfbac73a -.word 0xab5f3bcc -.word 0x4138f121 -.word 0xf031e921 -.word 0x8bfc685b -.word 0xcef4cff0 -.word 0x1dad54ad -.word 0xba371e0c -.word 0x45b3632d -.word 0xf43fe013 -.word 0x115ddbd9 -.word 0x43bab7bf -.word 0x46bb47a1 -.word 0xb504c25a -.word 0x89973583 -.word 0xe2e7cdf1 -.word 0x7e6dc4ea -.word 0x4e23a503 -.word 0x9a649b89 -.word 0x9ad43005 -.word 0xe3069ed2 -.word 0xeb539fca -.word 0x7110749d -.word 0x7cea9131 -.word 0x41b792a5 -.word 0x8300c36a -.word 0xc2faa377 -.word 0x882b734a -.word 0x320b6014 -.word 0x9ea6a268 -.word 0xe9c73ce8 -.word 0x03a498f5 -.word 0x9d3ba7e8 -.word 0xa3f4e96d -.word 0x9a212f74 -.word 0x5726cfd7 -.word 0x8dfdcedd -.word 0x45b0871b -.word 0x55a46cd2 -.word 0xb4627a5f -.word 0x9c2733f8 -.word 0x4edcd580 -.word 0xa53c63f4 -.word 0xa2633aba -.word 0xfa7fce57 -.word 0x47b4abe5 -.word 0x78e54ef2 -.word 0x6b3756da -.word 0x6bfd8dab -.word 0xfc79808a -.word 0xab1de0dc -.word 0xf390570e -.word 0x8efe601a -.word 0xde69c4ab -.word 0xbcb437b9 -.word 0xd43d22fa -.word 0xa7e2b049 -.word 0x4722720e -.word 0x30c2601e -.word 0x7a0ee517 -.word 0xce71191f -.word 0x3f803d03 -.word 0x8277d482 -.word 0x4779bd8d -.word 0x731f4673 -.word 0x5395d4a0 -.word 0xfc356beb -.word 0x38958d3b -.word 0x220b620d -.word 0x73f2309a -.word 0x90b26894 -.word 0xf9ed0e78 -.word 0x343d0b42 -.word 0x128d1e22 -.word 0x69b249b9 -.word 0x42025d30 -.word 0x551445d7 -.word 0xad29f149 -.word 0x143b9d9c -.word 0x9c09ad7c -.word 0xfa8e5c9e -.word 0x6ea1b4e5 -.word 0xba39511f -.word 0x2097f310 -.word 0x7ede5c42 -.word 0x2c341b0a -.word 0x0aeb2682 -.word 0x148717ad -.word 0xa3aefc4e -.word 0x0ad302e3 -.word 0xeaa8c525 -.word 0xae02cf1a -.word 0xd38dc221 -.word 0xc489cd1b -.word 0x0cd8e2b1 -.word 0x931c6e69 -.word 0x61b90497 -.word 0x47b971ce -.word 0x11c596bf -.word 0x19de1678 -.word 0x50e6abd0 -.word 0xac9250e1 -.word 0x97f3925b -.word 0xc81911b5 -.word 0x3cdfaa2a -.word 0x8ca3d22b -.word 0x90bcc93d -.word 0x78aebb62 -.word 0x12ebe7e5 -.word 0x1538b4af -.word 0x4cbb8a10 -.word 0x7f65288a -.word 0x75de1394 -.word 0x43473d72 -.word 0xf63840ab -.word 0xf5bdf155 -.word 0x475e5371 -.word 0xdefa7ada -.word 0x97729733 -.word 0x09fcc701 -.word 0x1b4e248e -.word 0x3096394a -.word 0xd485e5a4 -.word 0x06056754 -.word 0x64a2cb82 -.word 0x2082a769 -.word 0xa571746e -.word 0xc873fe48 -.word 0x9659010f -.word 0x2e408c2c -.word 0xde7d45fb -.word 0xdb3f8f19 -.word 0x78ed4c90 -.word 0xdc28c0e8 -.word 0x6608bb26 -.word 0x4852156b -.word 0xb0a6e923 -.word 0x778d4755 -.word 0x16db1b0d -.word 0x4b16e199 -.word 0x2fc2fd58 -.word 0x155e7897 -.word 0x3cc274c2 -.word 0xf37ed456 -.word 0xb72e40cb -.word 0xaad33021 -.word 0xa040dbc1 -.word 0xf20bf843 -.word 0x5c7f1210 -.word 0x138093ea -.word 0x43c0d934 -.word 0x4831bc32 -.word 0x1b923061 -.word 0x78675793 -.word 0x02d88f29 -.word 0xda589bd7 -.word 0xe2c03001 -.word 0x0a933208 -.word 0xf7013584 -.word 0x875d00d2 -.word 0x530fa8a8 -.word 0x99ca1595 -.word 0xae3aedc8 -.word 0x98d3546b -.word 0xf862d09f -.word 0xd8986914 -.word 0x04201347 -.word 0xb8f91657 -.word 0x37a02d4a -.word 0xa01d5096 -.word 0x75aa018b -.word 0x3048fc12 -.word 0xd3bfbd67 -.word 0x59976659 -.word 0x2b824f90 -.word 0x9943c7c0 -.word 0x7a60dbc7 -.word 0xb33eb994 -.word 0x87c928d0 -.word 0x85e7f5cb -.word 0xeddf04c2 -.word 0x31a21e15 -.word 0x0dc0f69e -.word 0x9f3953b8 -.word 0x4a42bfd8 -.word 0xf6f3e0ce -.word 0xadbe61df -.word 0x2edb6b55 -.word 0x5b99ad1b -.word 0x57f25c9b -.word 0xe0662e56 -.word 0x00f0739d -.word 0x985d90db -.word 0x8c4d34f0 -.word 0xa097cc26 -.word 0x2802e7af -.word 0x5e489296 -.word 0x5eae1cb6 -.word 0xbd2fe656 -.word 0x7987d9b5 -.word 0xfeec4cce -.word 0x18852938 -.word 0x01456555 -.word 0x8cd596f7 -.word 0x97c515c3 -.word 0x427f839b -.word 0x916ee664 -.word 0x14c3cb95 -.word 0x5ac8cd83 -.word 0xbd27ac27 -.word 0xa4cb6be3 -.word 0x6d69a7a4 -.word 0xa428fdcc -.word 0xf52cedc6 -.word 0xa9f87dd0 -.word 0xda78f421 -.word 0x1f8fc26b -.word 0x711fe680 -.word 0x59b641e8 -.word 0xf47390f9 -.word 0x0ac0d8ea -.word 0xf4aed11d -.word 0x674b84ef -.word 0x2052c96e -.word 0xe20743f1 -.word 0x2633b996 -.word 0x7b45fce6 -.word 0x4989f9db -.word 0x170d411d -.word 0x7a77a526 -.word 0x94685b84 -.word 0xa800c393 -.word 0xe4f58669 -.word 0xf0cf7451 -.word 0x15a534ee -.word 0x585e57dd -.word 0x671dc18d -.word 0x3fc722b7 -.word 0x112ceb96 -.word 0x948b4608 -.word 0xa315a4f0 -.word 0xa858f617 -.word 0x27903979 -.word 0xdfbd6abd -.word 0x5460c3fb -.word 0xc4cd6433 -.word 0x34b02e20 -.word 0x743277cf -.word 0x9b0d8570 -.word 0xb1dd1740 -.word 0xf9167663 -.word 0x5da16b05 -.word 0x6c8ce5cd -.word 0xf611d333 -.word 0x3a27565d -.word 0x24a32812 -.word 0xab5f89ef -.word 0x452ba4bf -.word 0x237b3ca3 -.word 0x96061b8d -.word 0x81e1afaa -.word 0x4c9b9307 -.word 0x24f0b75c -.word 0xacfed497 -.word 0x2ec508f4 -.word 0x7d5f0eec -.word 0xf5ae8895 -.word 0xbadc4b9b -.word 0x7c2cf115 -.word 0xfe57269c -.word 0xf8c90e96 -.word 0xb390e4ba -.word 0xc1c64feb -.word 0x875aab9c -.word 0x146c838a -.word 0xfe78d253 -.word 0x39ee6969 -.word 0x6c4c3d2a -.word 0x693fc8cf -.word 0xa2441d65 -.word 0x6407eefa -.word 0xa954917b -.word 0x2ac8d47e -.word 0x8b3e2ec6 -.word 0x1ccb65cd -.word 0x4459f46c -.word 0xbf888870 -.word 0xfe8509de -.word 0xb16fa2a6 -.word 0xe52a9f5d -.word 0xdfd5c12d -.word 0x432c6524 -.word 0x8c64f96e -.word 0x8d2b25cf -.word 0xcd0fccd2 -.word 0x0018133c -.word 0xf89b13bf -.word 0x31291fc4 -.word 0x7844e829 -.word 0x56fd4938 -.word 0xb2156477 -.word 0xde989928 -.word 0xa7f76832 -.word 0xea94130d -.word 0x8c040449 -.word 0xfb9835b0 -.word 0x0351dbb2 -.word 0x56723a2c -.word 0x2978b0fa -.word 0xf95d3dc2 -.word 0x06e84514 -.word 0x48ca5d0d -.word 0x2d970993 -.word 0x230ddea2 -.word 0x46e93faa -.word 0x302710aa -.word 0x63180145 -.word 0x303e68ee -.word 0x4adccc08 -.word 0xe9210e5c -.word 0x22a7fd7b -.word 0x6c7d164b -.word 0xb52e62a7 -.word 0x691d9f2a -.word 0x3a405061 -.word 0x26f6bae4 -.word 0xc268f5ec -.word 0x487a74f7 -.word 0x8bd55c6d -.word 0x89c3265e -.word 0xe2616c99 -.word 0x8950fdd5 -.word 0x333a0210 -.word 0x3e4e17ae -.word 0x2d647fbb -.word 0xf8ca8fb4 -.word 0xe5c9a8ba -.word 0x9cb3d133 -.word 0xc0302aa5 -.word 0xdd0876e6 -.word 0x27ac03e7 -.word 0xf7dad69c -.word 0xd729aa30 -.word 0xb0575159 -.word 0x00da7559 -.word 0x297c661d -.word 0x9ca98571 -.word 0xa46e58dd -.word 0x6aa7fde1 -.word 0xccf4a505 -.word 0x7dd8b7ce -.word 0xfeee5ed9 -.word 0x00ee4d06 -.word 0xaacd93c7 -.word 0x7cd0a17e -.word 0x571bafde -.word 0xa7fc7d69 -.word 0xf35a0d67 -.word 0x40404683 -.word 0x84c407e9 -.word 0x527fe7d3 -.word 0x2ca5dcbb -.word 0x38a0009b -.word 0x95692e46 -.word 0x6846d40d -.word 0x1a852fdb -.word 0xb54b3883 -.word 0xec592d5a -.word 0x4f278e33 -.word 0x1852eaa0 -.word 0x8dce3b65 -.word 0x66351ba7 -.word 0x89d5faf3 -.word 0x288d11b1 -.word 0x0546f4ff -.word 0x5b1fbc1c -.word 0x80111ddd -.word 0x82d6560d -.word 0x533b93d7 -.word 0xbd42bd1b -.word 0x5d9259dd -.word 0xbe438761 -.word 0xd0eaae8c -.word 0xc02cd84e -.word 0x2a5014fa -.word 0xbf882834 -.word 0x93e037b0 -.word 0xa8ec307f -.word 0xdada62f1 -.word 0xf86e123c -.word 0xb95dd8a5 -.word 0xe7205bf7 -.word 0x290488d9 -.word 0x44aeec35 -.word 0xaf8add41 -.word 0xf0257a0b -.word 0x6a7d793d -.word 0x1d536548 -.word 0x7913cf35 -.word 0x8e3b90a6 -.word 0xca872a64 -.word 0x36add0ea -.word 0xaa2a6680 -.word 0x7b6a41fe -.word 0x72e949a7 -.word 0xfc1a3aa2 -.word 0x5750b570 -.word 0x9c9f3fe4 -.word 0x43a2d91f -.word 0x2f53a9d8 -.word 0xd9e594a3 -.word 0xa5a4f54f -.word 0xfbba92dc -.word 0xd5bebb5d -.word 0xb2355520 -.word 0xf209f200 -.word 0xbba41646 -.word 0x88b55478 -.word 0x9b9d62a4 -.word 0x0447fbdd -.word 0xd4403005 -.word 0x8a04a6b2 -.word 0x7d5188d6 -.word 0x033d57f9 -.word 0xfea15f31 -.word 0x01b52b8a -.word 0x906366f6 -.word 0x658c139e -.word 0xb3b048a1 -.word 0xc7867346 -.word 0xceb433ad -.word 0x1009cdb2 -.word 0x80c4f6c2 -.word 0x141e3d7e -.word 0x0ceafcfa -.word 0x90e43cd7 -.word 0x46fd1c13 -.word 0xc8de43c7 -.word 0x88a80047 -.word 0x918cee30 -.word 0x043e2a9f -.word 0x0699f3f3 -.word 0x9df13623 -.word 0x8498a3c9 -.word 0x83e61a37 -.word 0xa0eb7154 -.word 0xebefee0c -.word 0x550c3721 -.word 0x7a31838f -.word 0xd9e5ba1e -.word 0x44c29f61 -.word 0x46c32847 -.word 0x9183dc14 -.word 0x8d74af37 -.word 0x2d152ecd -.word 0x329a49c1 -.word 0x7c38fb85 -.word 0x3635aca3 -.word 0x787b32ad -.word 0xe2e76871 -.word 0xc7ecf5a7 -.word 0x1e463a09 -.word 0xfd1c9c65 -.word 0xea86653e -.word 0xd13d52be -.word 0xa9a45fa5 -.word 0xebcd051f -.word 0x4971b826 -.word 0x5766be5e -.word 0xd4587aeb -.word 0x62b160da -.word 0xb1956f2d -.word 0xb1fa6bce -.word 0x699964c3 -.word 0x2af1675c -.word 0x142aee83 -.word 0x35cc9457 -.word 0x0c4fbf9c -.word 0xa39c2af6 -.word 0x57aa5796 -.word 0x61c94e6f -.word 0x7cefe98b -.word 0xbfe02ec7 -.word 0xe6dc0e4e -.word 0x9ad227db -.word 0x506526dc -.word 0xbe8edced -.word 0x7d22c3e2 -.word 0x0830baad -.word 0x59ea5d2e -.word 0x0175bebd -.word 0x35c530f9 -.word 0x23ba730b -.word 0xe31ee63e -.word 0xe5c10ffc -.word 0x7c18df61 -.word 0x8a55c6d3 -.word 0xc1de8320 -.word 0xcd0fabe0 -.word 0x23977bc1 -.word 0x9cbc26f2 -.word 0xb63f8412 -.word 0x5b947f97 -.word 0x37d5e2b2 -.word 0xd709ed0a -.word 0x678c06fc -.word 0xd665d8b7 -.word 0xd6380d0a -.word 0x2a3e1190 -.word 0x43c7b720 -.word 0xd4136d5e -.word 0xa0ce12ed -.word 0x86f65ca6 -.word 0x4787487b -.word 0xa4c34e26 -.word 0xc18d4e10 -.word 0x4f4a3892 -.word 0x2e72728f -.word 0x0f5901c4 -.word 0xe10e99cc -.word 0x3d62251d -.word 0xf92dbec2 -.word 0x109aa05c -.word 0x656ebf29 -.word 0x0d2f1ffb -.word 0x948a50f4 -.word 0x0242842a -.word 0x6e5afac4 -.word 0x0dc23b27 -.word 0xe80cf95f -.word 0x3748d675 -.word 0xb42a0cd3 -.word 0x6b585355 -.word 0x9bad30de -.word 0x777b1f77 -.word 0xc4134938 -.word 0x3a3b39bc -.word 0x0b1e9407 -.word 0x43f542b6 -.word 0x6b161bed -.word 0x10e4c8b9 -.word 0x32f001e3 -.word 0x4b45d508 -.word 0xaba9a7a1 -.word 0x13f0a6fc -.word 0x45230677 -.word 0x2d844ce8 -.word 0x42c9bdf4 -.word 0xad9dcbe8 -.word 0x94f05f33 -.word 0x2fd579bf -.word 0x4f2b7d2b -.word 0xcd696cb8 -.word 0x3600a85e -.word 0x4eaf583d -.word 0x6f015526 -.word 0xdce39ce0 -.word 0x1bab660f -.word 0xb7af185d -.word 0xe84bf503 -.word 0x3d4f1ea0 -.word 0x37a6e7a3 -.word 0x0401441c -.word 0x250fedc9 -.word 0x637cd74e -.word 0xbf0f7698 -.word 0xabad1a27 -.word 0x376aab28 -.word 0xc6d8d1d4 -.word 0x78d6799f -.word 0xdb7d85b2 -.word 0x917ad3e3 -.word 0x496ee228 -.word 0xf0b76311 -.word 0x65155dbe -.word 0xdd0322c3 -.word 0xda5c8eff -.word 0x283c62b3 -.word 0xe8fb6415 -.word 0x93b158a9 -.word 0xde451be8 -.word 0xf4a0e2fd -.word 0x3856cdbe -.word 0x02db7787 -.word 0x37ab2055 -.word 0x5d7cd6d1 -.word 0xf242bbec -.word 0x7d024024 -.word 0x75a945cf -.word 0x7fa3a471 -.word 0x727b3cc9 -.word 0x1d03e6c6 -.word 0xd5a484d0 -.word 0xfc413553 -.word 0xc92d7a09 -.word 0x1dec24dc -.word 0xec828b83 -.word 0x49e57dcf -.word 0x6f92e4c5 -.word 0x1447866a -.word 0x99f13200 -.word 0x8e74dade -.word 0xf6ba5fc5 -.word 0xbe4a6417 -.word 0xe1c076fd -.word 0xb9ad8af3 -.word 0x9d8075e0 -.word 0xa51b9564 -.word 0x6e6d1f93 -.word 0xf82b1c81 -.word 0xe1358450 -.word 0xa2c79da5 -.word 0x1b87b08a -.word 0x4f853261 -.word 0x3c328747 -.word 0xe776f86f -.word 0x8e74664d -.word 0xa2eca2e8 -.word 0xbb76a704 -.word 0xa4ade13a -.word 0x9caafdba -.word 0xf6770ea0 -.word 0xb7001890 -.word 0xb7a96b84 -.word 0xc888564e -.word 0x2e19797f -.word 0x6beacbc1 -.word 0x3a2b84db -.word 0x0edc22fb -.word 0x7e8e50d8 -.word 0x9a36ef7b -.word 0x6f999fef -.word 0x588bf3bb -.word 0x2aedd359 -.word 0xc18c162c -.word 0x3bf785db -.word 0xfcecf381 -.word 0x50b2a8f0 -.word 0xdb659a0d -.word 0x97f9a854 -.word 0xbb420f60 -.word 0xbcc7ba00 -.word 0x58dad36b -.word 0xf7a4edcf -.word 0x9d4323a0 -.word 0x6d454422 -.word 0x4820dd17 -.word 0x8edc8723 -.word 0x79e234c3 -.word 0x05a3ff91 -.word 0x75190800 -.word 0x3b18776b -.word 0x5b265e69 -.word 0x3b005651 -.word 0x3e3a3501 -.word 0x51d88675 -.word 0x5903a49f -.word 0xcedc3d55 -.word 0x2b14e09d -.word 0xf0a6938e -.word 0xdd08273a -.word 0x4aa62544 -.word 0xfea27d3f -.word 0x8c4b28a9 -.word 0x11aec522 -.word 0xb4a44ba4 -.word 0xea6ca233 -.word 0xc9bd7e01 -.word 0x8a4f31f0 -.word 0x88e2b10b -.word 0x470ccf8b -.word 0x023d4477 -.word 0x7ccc3244 -.word 0x29d2f966 -.word 0xe3b7d9b7 -.word 0x60801a4f -.word 0x03982aae -.word 0xb09e3f8d -.word 0xc8fe55cb -.word 0x335644b6 -.word 0x44a0dc43 -.word 0x5ce5aab3 -.word 0xe148d801 -.word 0x5660b50f -.word 0xe58114cf -.word 0xfd59f987 -.word 0xb7420259 -.word 0xb410bde3 -.word 0x37720ec0 -.word 0xec4954f6 -.word 0xd24ed313 -.word 0xcb7d4209 -.word 0x6f737cd1 -.word 0x2e8e28ef -.word 0x54fde437 -.word 0x43d06dae -.word 0x28acdaa4 -.word 0x1662683f -.word 0x98a1351b -.word 0xef6aab6e -.word 0x0c47c793 -.word 0xd5ace770 -.word 0x038ac8c5 -.word 0x9e4bfde7 -.word 0x83c2ee58 -.word 0x17ec80ce -.word 0x6c45e486 -.word 0x423a1be0 -.word 0x114dae34 -.word 0x9a60f8db -.word 0x44bf2dd3 -.word 0x61f47b4d -.word 0x48d57911 -.word 0xa767eaef -.word 0x4b31b473 -.word 0x4f7441ad -.word 0xf3381ffa -.word 0x74130250 -.word 0xfa5793ae -.word 0xbafdc426 -.word 0x8159a5ae -.word 0x402158e0 -.word 0xbf5d2418 -.word 0xea9c302b -.word 0xa4a91d6a -.word 0x805459e3 -.word 0xcb2a11ea -.word 0x12fb639f -.word 0xbf63f79a -.word 0x12c240f3 -.word 0xbd7ff186 -.word 0x2abda893 -.word 0x4df02233 -.word 0x69bd9db1 -.word 0xee7ed9c0 -.word 0xc0f17268 -.word 0x5855acc0 -.word 0xff9c211c -.word 0x7a2d0db7 -.word 0x6aa2a043 -.word 0x41a79424 -.word 0x32418532 -.word 0x66a41923 -.word 0x1a8df318 -.word 0xe07b0c55 -.word 0x17a5e932 -.word 0x2c5a2bc5 diff --git a/isa/rv64uv/fcvt.S b/isa/rv64uv/fcvt.S deleted file mode 100644 index 642ec35..0000000 --- a/isa/rv64uv/fcvt.S +++ /dev/null @@ -1,75 +0,0 @@ -# See LICENSE for license details. - -#***************************************************************************** -# fcvt.S -#----------------------------------------------------------------------------- -# -# Test fcvt instruction in a vf block. -# - -#include "riscv_test.h" -#include "test_macros.h" - -RVTEST_RV64UV -RVTEST_CODE_BEGIN - - vsetcfg 32,32 - li a3,4 - vsetvl a3,a3 - - la a3,src - vld vx2,a3 - lui a0,%hi(vtcode) - vf %lo(vtcode)(a0) - la a4,dest - vfsd vf0,a4 - fence - la a5,result - ld a1,0(a4) - ld a2,0(a5) - li TESTNUM,2 - bne a1,a2,fail - ld a1,8(a4) - ld a2,8(a5) - li TESTNUM,3 - bne a1,a2,fail - ld a1,16(a4) - ld a2,16(a5) - li TESTNUM,4 - bne a1,a2,fail - ld a1,24(a4) - ld a2,24(a5) - li TESTNUM,5 - bne a1,a2,fail - j pass - -vtcode: - fcvt.d.l f0,x2 - stop - - TEST_PASSFAIL - -RVTEST_CODE_END - - .data -RVTEST_DATA_BEGIN - - TEST_DATA - -src: - .dword 1 - .dword 2 - .dword 3 - .dword 4 -dest: - .dword 0xdeadbeefcafebabe - .dword 0xdeadbeefcafebabe - .dword 0xdeadbeefcafebabe - .dword 0xdeadbeefcafebabe -result: - .double 1.0 - .double 2.0 - .double 3.0 - .double 4.0 - -RVTEST_DATA_END diff --git a/isa/rv64uv/fence.S b/isa/rv64uv/fence.S deleted file mode 100644 index 1a50807..0000000 --- a/isa/rv64uv/fence.S +++ /dev/null @@ -1,61 +0,0 @@ -# See LICENSE for license details. - -#***************************************************************************** -# fence.S -#----------------------------------------------------------------------------- -# -# Test fence instruction in a vf block. -# - -#include "riscv_test.h" -#include "test_macros.h" - -RVTEST_RV64UV -RVTEST_CODE_BEGIN - - # make sure these don't choke at the beginning - fence - fence rw,io - fence io,rw - fence r,io - fence w,io - fence rw,i - fence rw,o - - li a0,1 - bne a0,x0,skip1 - fence -skip1: - - bne a0,x0,skip3 - fence -skip3: - - j pass - - TEST_PASSFAIL - -RVTEST_CODE_END - - .data -RVTEST_DATA_BEGIN - - TEST_DATA - -src1: - .dword 1 - .dword 2 - .dword 3 - .dword 4 -src2: - .dword 4 - .dword 3 - .dword 2 - .dword 1 -dest: - .dword 0xdeadbeefcafebabe - .dword 0xdeadbeefcafebabe - .dword 0xdeadbeefcafebabe - .dword 0xdeadbeefcafebabe - -RVTEST_DATA_END diff --git a/isa/rv64uv/fld.S b/isa/rv64uv/fld.S deleted file mode 100644 index 8c87387..0000000 --- a/isa/rv64uv/fld.S +++ /dev/null @@ -1,62 +0,0 @@ -# See LICENSE for license details. - -#***************************************************************************** -# fld.S -#----------------------------------------------------------------------------- -# -# Test fld instruction in a vf block. -# - -#include "riscv_test.h" -#include "test_macros.h" - -RVTEST_RV64UV -RVTEST_CODE_BEGIN - - vsetcfg 4,1 - li a4,512 - vsetvl a4,a4 - - la a5,src - vmsv vx2,a5 - lui a0,%hi(vtcode) - vf %lo(vtcode)(a0) - la a6,dest - vfsd vf0,a6 - fence - - li a2,0 -loop: - ld a0,0(a6) - addi TESTNUM,a2,2 - ld a1,0(a5) - bne a0,a1,fail - addi a6,a6,8 - addi a5,a5,8 - addi a2,a2,1 - bne a2,a4,loop - j pass - -vtcode: - utidx x3 - slli x3,x3,3 - add x2,x2,x3 - fld f0,0(x2) - stop - - TEST_PASSFAIL - -RVTEST_CODE_END - - .data -RVTEST_DATA_BEGIN - - TEST_DATA - -src: -#include "data_fd.h" - -dest: - .skip 16384 - -RVTEST_DATA_END diff --git a/isa/rv64uv/flw.S b/isa/rv64uv/flw.S deleted file mode 100644 index 6d6353c..0000000 --- a/isa/rv64uv/flw.S +++ /dev/null @@ -1,62 +0,0 @@ -# See LICENSE for license details. - -#***************************************************************************** -# flw.S -#----------------------------------------------------------------------------- -# -# Test flw instruction in a vf block. -# - -#include "riscv_test.h" -#include "test_macros.h" - -RVTEST_RV64UV -RVTEST_CODE_BEGIN - - vsetcfg 4,1 - li a4,2048 - vsetvl a4,a4 - - la a5,src - vmsv vx2,a5 - lui a0,%hi(vtcode) - vf %lo(vtcode)(a0) - la a6,dest - vfsw vf0,a6 - fence - - li a2,0 -loop: - lw a0,0(a6) - addi TESTNUM,a2,2 - lw a1,0(a5) - bne a0,a1,fail - addi a6,a6,4 - addi a5,a5,4 - addi a2,a2,1 - bne a2,a4,loop - j pass - -vtcode: - utidx x3 - slli x3,x3,2 - add x2,x2,x3 - flw f0,0(x2) - stop - - TEST_PASSFAIL - -RVTEST_CODE_END - - .data -RVTEST_DATA_BEGIN - - TEST_DATA - -src: -#include "data_fw.h" - -dest: - .skip 16384 - -RVTEST_DATA_END diff --git a/isa/rv64uv/fma.S b/isa/rv64uv/fma.S deleted file mode 100644 index 454d736..0000000 --- a/isa/rv64uv/fma.S +++ /dev/null @@ -1,81 +0,0 @@ -# See LICENSE for license details. - -#***************************************************************************** -# fma.S -#----------------------------------------------------------------------------- -# -# Test fma instruction in a vf block. -# - -#include "riscv_test.h" -#include "test_macros.h" - -RVTEST_RV64UV -RVTEST_CODE_BEGIN - - vsetcfg 3,2 - li a3,2048 - vsetvl a3,a3 - - la a4,src - fld f0,0(a4) - fld f1,8(a4) - fmv.x.d s0,f0 - fmv.x.d s1,f1 - vmsv vx1,s0 - vmsv vx2,s1 - lui a0,%hi(vtcode) - vf %lo(vtcode)(a0) - - li a7,0 - li a6,400 -wait: - addi a7,a7,1 - bne a7,a6,wait - - fadd.d f0,f0,f1 - fmv.x.d s2,f0 - - la a5,dest - vfsd vf0,a5 - fence - - la s3,result - ld s4,0(s3) - li TESTNUM,2 - bne s2,s4,fail - - li a2,0 -loop: - ld a0,0(a5) - addi TESTNUM,a2,3 - bne a0,s4,fail - addi a5,a5,8 - addi a2,a2,1 - bne a2,a3,loop - j pass - -vtcode: - fmv.d.x f0,x1 - fmv.d.x f1,x2 - fadd.d f0,f0,f1 - stop - - TEST_PASSFAIL - -RVTEST_CODE_END - - .data -RVTEST_DATA_BEGIN - - TEST_DATA - -src: - .double 1.0 - .double 2.0 -result: - .double 3.0 -dest: - .skip 16384 - -RVTEST_DATA_END diff --git a/isa/rv64uv/fma_many.S b/isa/rv64uv/fma_many.S deleted file mode 100644 index b72b670..0000000 --- a/isa/rv64uv/fma_many.S +++ /dev/null @@ -1,182 +0,0 @@ -# See LICENSE for license details. - -#***************************************************************************** -# fma.S -#----------------------------------------------------------------------------- -# -# Test fma instruction in a vf block. -# - -#include "riscv_test.h" -#include "test_macros.h" - -RVTEST_RV64UV -RVTEST_CODE_BEGIN - - vsetcfg 3,16 - li a3,2048 - vsetvl a3,a3 - - la a4,src - fld f0,0(a4) - fld f1,8(a4) - fmv.x.d s0,f0 - fmv.x.d s1,f1 - vmsv vx1,s0 - vmsv vx2,s1 - lui a0,%hi(vtcode) - vf %lo(vtcode)(a0) - - li a7,0 - li a6,400 -wait: - addi a7,a7,1 - bne a7,a6,wait - - fadd.d f0,f0,f1 - fmv.x.d s2,f0 - - la a5,dest - vfsd vf0,a5 - fence - - la s3,result - ld s4,0(s3) - li TESTNUM,2 - bne s2,s4,fail - -# verify 1st fadd - li a2,0 -loop1: - ld a0,0(a5) - addi TESTNUM,a2,3 - bne a0,s4,fail - addi a5,a5,8 - addi a2,a2,1 - bne a2,a3,loop1 - -# verify 2nd fmadd - la a5,dest - vfsd vf2,a5 - fence - ld s4,8(s3) - - li a2,0 -loop2: - ld a0,0(a5) - addi TESTNUM,a2,3 - bne a0,s4,fail - addi a5,a5,8 - addi a2,a2,1 - bne a2,a3,loop2 - -# verify 3rd fmul - la a5,dest - vfsd vf5,a5 - fence - ld s4,16(s3) - - li a2,0 -loop3: - ld a0,0(a5) - addi TESTNUM,a2,3 - bne a0,s4,fail - addi a5,a5,8 - addi a2,a2,1 - bne a2,a3,loop3 - -# verify 4th fmul - la a5,dest - vfsd vf8,a5 - fence - ld s4,24(s3) - - li a2,0 -loop4: - ld a0,0(a5) - addi TESTNUM,a2,3 - bne a0,s4,fail - addi a5,a5,8 - addi a2,a2,1 - bne a2,a3,loop4 - -# verify 5th fmadd - la a5,dest - vfsd vf9,a5 - fence - ld s4,32(s3) - - li a2,0 -loop5: - ld a0,0(a5) - addi TESTNUM,a2,3 - bne a0,s4,fail - addi a5,a5,8 - addi a2,a2,1 - bne a2,a3,loop5 - -# verify 6th fnmadd - la a5,dest - vfsd vf11,a5 - fence - ld s4,40(s3) - - li a2,0 -loop6: - ld a0,0(a5) - addi TESTNUM,a2,3 - bne a0,s4,fail - addi a5,a5,8 - addi a2,a2,1 - bne a2,a3,loop6 - - j pass - -vtcode: - fmv.d.x f0,x1 - fmv.d.x f1,x2 - fmv.d.x f2,x1 - fmv.d.x f3,x2 - fmv.d.x f4,x1 - fmv.d.x f5,x2 - fmv.d.x f6,x1 - fmv.d.x f7,x2 - fmv.d.x f8,x1 - fmv.d.x f9,x2 - fmv.d.x f10,x1 - fmv.d.x f11,x2 - fmv.d.x f12,x1 - fmv.d.x f13,x2 - fmv.d.x f14,x1 - fmv.d.x f15,x2 - fadd.d f0,f0,f1 - fmadd.d f2,f2,f3,f4 - fmul.d f5,f5,f6 - fmul.d f8,f5,f7 - fmadd.d f9,f9,f10,f9 - fnmadd.d f11,f12,f13,f14 - stop - - TEST_PASSFAIL - -RVTEST_CODE_END - - .data -RVTEST_DATA_BEGIN - - TEST_DATA - -src: - .double 1.0 - .double 2.0 -result: - .double 3.0 - .double 3.0 - .double 2.0 - .double 4.0 - .double 4.0 - .double -3.0 -dest: - .skip 16384 - -RVTEST_DATA_END diff --git a/isa/rv64uv/fmovn.S b/isa/rv64uv/fmovn.S deleted file mode 100644 index 4442370..0000000 --- a/isa/rv64uv/fmovn.S +++ /dev/null @@ -1,63 +0,0 @@ -# See LICENSE for license details. - -#***************************************************************************** -# fmovn.S -#----------------------------------------------------------------------------- -# -# Test fmovn instruction in a vf block. -# - -#include "riscv_test.h" -#include "test_macros.h" - -RVTEST_RV64UV -RVTEST_CODE_BEGIN - - vsetcfg 4,2 - li a6,2048 - vsetvl a6,a6 - - lui a0,%hi(vtcode) - vf %lo(vtcode)(a0) - la a7,dest - vfsd vf0,a7 - fence - - li a1,0 - li a2,-1 -loop: - ld a0,0(a7) - slti a4,a1,10 - slli a4,a4,63 - srai a4,a4,63 - and a5,a2,a4 - addi TESTNUM,a1,2 - bne a0,a5,fail - addi a7,a7,8 - addi a1,a1,1 - bne a1,a6,loop - j pass - -vtcode: - utidx x1 - slti x2,x1,10 - li x1,-1 - li x3,0 - fmv.d.x f0,x3 - fmv.d.x f1,x1 - fmovn f0,x2,f1 - stop - - TEST_PASSFAIL - -RVTEST_CODE_END - - .data -RVTEST_DATA_BEGIN - - TEST_DATA - -dest: - .skip 16384 - -RVTEST_DATA_END diff --git a/isa/rv64uv/fmovz.S b/isa/rv64uv/fmovz.S deleted file mode 100644 index 76583f5..0000000 --- a/isa/rv64uv/fmovz.S +++ /dev/null @@ -1,64 +0,0 @@ -# See LICENSE for license details. - -#***************************************************************************** -# fmovz.S -#----------------------------------------------------------------------------- -# -# Test fmovz instruction in a vf block. -# - -#include "riscv_test.h" -#include "test_macros.h" - -RVTEST_RV64UV -RVTEST_CODE_BEGIN - - vsetcfg 4,2 - li a6,2048 - vsetvl a6,a6 - - lui a0,%hi(vtcode) - vf %lo(vtcode)(a0) - la a7,dest - vfsd vf0,a7 - fence - - li a1,0 - li a2,-1 -loop: - ld a0,0(a7) - slti a4,a1,10 - slli a4,a4,63 - srai a4,a4,63 - xori a4,a4,-1 - and a5,a2,a4 - addi TESTNUM,a1,2 - bne a0,a5,fail - addi a7,a7,8 - addi a1,a1,1 - bne a1,a6,loop - j pass - -vtcode: - utidx x1 - slti x2,x1,10 - li x1,-1 - li x3,0 - fmv.d.x f0,x3 - fmv.d.x f1,x1 - fmovz f0,x2,f1 - stop - - TEST_PASSFAIL - -RVTEST_CODE_END - - .data -RVTEST_DATA_BEGIN - - TEST_DATA - -dest: - .skip 16384 - -RVTEST_DATA_END diff --git a/isa/rv64uv/fsd.S b/isa/rv64uv/fsd.S deleted file mode 100644 index c1dd229..0000000 --- a/isa/rv64uv/fsd.S +++ /dev/null @@ -1,62 +0,0 @@ -# See LICENSE for license details. - -#***************************************************************************** -# fsd.S -#----------------------------------------------------------------------------- -# -# Test fsd instruction in a vf block. -# - -#include "riscv_test.h" -#include "test_macros.h" - -RVTEST_RV64UV -RVTEST_CODE_BEGIN - - vsetcfg 4,1 - li a4,2048 - vsetvl a4,a4 - - la a5,src - vfld vf0,a5 - la a6,dest - vmsv vx2,a6 - lui a0,%hi(vtcode) - vf %lo(vtcode)(a0) - fence - - li a2,0 -loop: - ld a0,0(a6) - addi TESTNUM,a2,2 - ld a1,0(a5) - bne a0,a1,fail - addi a6,a6,8 - addi a5,a5,8 - addi a2,a2,1 - bne a2,a4,loop - j pass - -vtcode: - utidx x3 - slli x3,x3,3 - add x2,x2,x3 - fsd f0,0(x2) - stop - - TEST_PASSFAIL - -RVTEST_CODE_END - - .data -RVTEST_DATA_BEGIN - - TEST_DATA - -src: -#include "data_fd.h" - -dest: - .skip 16384 - -RVTEST_DATA_END diff --git a/isa/rv64uv/fsw.S b/isa/rv64uv/fsw.S deleted file mode 100644 index 9539a77..0000000 --- a/isa/rv64uv/fsw.S +++ /dev/null @@ -1,62 +0,0 @@ -# See LICENSE for license details. - -#***************************************************************************** -# fsw.S -#----------------------------------------------------------------------------- -# -# Test fsw instruction in a vf block. -# - -#include "riscv_test.h" -#include "test_macros.h" - -RVTEST_RV64UV -RVTEST_CODE_BEGIN - - vsetcfg 4,1 - li a4,2048 - vsetvl a4,a4 - - la a5,src - vflw vf0,a5 - la a6,dest - vmsv vx2,a6 - lui a0,%hi(vtcode) - vf %lo(vtcode)(a0) - fence - - li a2,0 -loop: - lw a0,0(a6) - addi TESTNUM,a2,2 - lw a1,0(a5) - bne a0,a1,fail - addi a6,a6,4 - addi a5,a5,4 - addi a2,a2,1 - bne a2,a4,loop - j pass - -vtcode: - utidx x3 - slli x3,x3,2 - add x2,x2,x3 - fsw f0,0(x2) - stop - - TEST_PASSFAIL - -RVTEST_CODE_END - - .data -RVTEST_DATA_BEGIN - - TEST_DATA - -src: -#include "data_fw.h" - -dest: - .skip 16384 - -RVTEST_DATA_END diff --git a/isa/rv64uv/imul.S b/isa/rv64uv/imul.S deleted file mode 100644 index ebfb77d..0000000 --- a/isa/rv64uv/imul.S +++ /dev/null @@ -1,85 +0,0 @@ -# See LICENSE for license details. - -#***************************************************************************** -# imul.S -#----------------------------------------------------------------------------- -# -# Test imul instruction in a vf block. -# - -#include "riscv_test.h" -#include "test_macros.h" - -RVTEST_RV64UV -RVTEST_CODE_BEGIN - - vsetcfg 3,0 - li a3,2048 - vsetvl a3,a3 - - li a4,20 - li s0,2 - vmsv vx1,a4 - lui a0,%hi(vtcode) - vf %lo(vtcode)(a0) - - nop - nop - nop - nop - nop - nop - nop - nop - nop - nop - nop - nop - nop - nop - nop - nop - nop - nop - nop - nop - mul s1,a4,s0 - - la a5,dest - vsd vx1,a5 - fence - - li s2,40 - li TESTNUM,2 - bne s1,s2,fail - - li a1,0 - li a2,0 -loop: - ld a0,0(a5) - addi TESTNUM,a2,3 - bne a0,a1,fail - addi a5,a5,8 - addi a1,a1,20 - addi a2,a2,1 - bne a2,a3,loop - j pass - -vtcode: - utidx x2 - mul x1,x2,x1 - stop - - TEST_PASSFAIL - -RVTEST_CODE_END - - .data -RVTEST_DATA_BEGIN - - TEST_DATA - -dest: - .skip 16384 - -RVTEST_DATA_END diff --git a/isa/rv64uv/keepcfg.S b/isa/rv64uv/keepcfg.S deleted file mode 100644 index 552b1c4..0000000 --- a/isa/rv64uv/keepcfg.S +++ /dev/null @@ -1,85 +0,0 @@ -# See LICENSE for license details. - -#***************************************************************************** -# utidx.S -#----------------------------------------------------------------------------- -# -# Test utidx instruction in a vf block. -# - -#include "riscv_test.h" -#include "test_macros.h" - -RVTEST_RV64UV -RVTEST_CODE_BEGIN - - vsetcfg 2,0 - li s0,2048 - vsetvl s0,s0 - - lui a0,%hi(vtcode1) - vf %lo(vtcode1)(a0) - la a4,dest1 - vsd vx1,a4 - - vsetcfg 3,0 - li s1,2048 - vsetvl s1,s1 - - lui a0,%hi(vtcode2) - vf %lo(vtcode2)(a0) - la a4,dest2 - vsd vx1,a4 - - fence - - la a4,dest1 - li a1,1 -loop1: - ld a0,0(a4) - addi TESTNUM,a1,2 - bne a0,a1,fail - addi a4,a4,8 - addi a1,a1,1 - bne a1,s0,loop1 - - la a4,dest2 - li a1,1024 - li a2,1 -loop2: - ld a0,0(a4) - addi TESTNUM,a1,2 - bne a0,a1,fail - addi a4,a4,8 - addi a1,a1,1 - addi a2,a2,1 - bne a2,s1,loop2 - - j pass - -vtcode1: - utidx x1 - addi x1,x1,1 - stop - -vtcode2: - utidx x1 - addi x1,x1,1024 - stop - - TEST_PASSFAIL - -RVTEST_CODE_END - - .data -RVTEST_DATA_BEGIN - - TEST_DATA - -dest1: - .skip 16384 - -dest2: - .skip 16384 - -RVTEST_DATA_END diff --git a/isa/rv64uv/lb.S b/isa/rv64uv/lb.S deleted file mode 100644 index 2e79c13..0000000 --- a/isa/rv64uv/lb.S +++ /dev/null @@ -1,64 +0,0 @@ -# See LICENSE for license details. - -#***************************************************************************** -# lb.S -#----------------------------------------------------------------------------- -# -# Test lb instruction in a vf block. -# - -#include "riscv_test.h" -#include "test_macros.h" - -RVTEST_RV64UV -RVTEST_CODE_BEGIN - - vsetcfg 16,0 - li a4,512 - vsetvl a4,a4 - - la a5,src - vmsv vx2,a5 - lui a0,%hi(vtcode) - vf %lo(vtcode)(a0) - la a6,dest - vsd vx1,a6 - fence - - li a2,0 -loop: - ld a0,0(a6) - ld a1,0(a5) - sll a3,a1,56 - sra a3,a3,56 - addi TESTNUM,a2,2 - bne a0,a3,fail - addi a6,a6,8 - addi a5,a5,8 - addi a2,a2,1 - bne a2,a4,loop - j pass - -vtcode: - utidx x3 - slli x3,x3,3 - add x2,x2,x3 - lb x1,0(x2) - stop - - TEST_PASSFAIL - -RVTEST_CODE_END - - .data -RVTEST_DATA_BEGIN - - TEST_DATA - -src: -#include "data_d.h" - -dest: - .skip 16384 - -RVTEST_DATA_END diff --git a/isa/rv64uv/lbu.S b/isa/rv64uv/lbu.S deleted file mode 100644 index fd04fdf..0000000 --- a/isa/rv64uv/lbu.S +++ /dev/null @@ -1,64 +0,0 @@ -# See LICENSE for license details. - -#***************************************************************************** -# lbu.S -#----------------------------------------------------------------------------- -# -# Test lby instruction in a vf block. -# - -#include "riscv_test.h" -#include "test_macros.h" - -RVTEST_RV64UV -RVTEST_CODE_BEGIN - - vsetcfg 16,0 - li a4,512 - vsetvl a4,a4 - - la a5,src - vmsv vx2,a5 - lui a0,%hi(vtcode) - vf %lo(vtcode)(a0) - la a6,dest - vsd vx1,a6 - fence - - li a2,0 -loop: - ld a0,0(a6) - ld a1,0(a5) - sll a3,a1,56 - srl a3,a3,56 - addi TESTNUM,a2,2 - bne a0,a3,fail - addi a6,a6,8 - addi a5,a5,8 - addi a2,a2,1 - bne a2,a4,loop - j pass - -vtcode: - utidx x3 - slli x3,x3,3 - add x2,x2,x3 - lbu x1,0(x2) - stop - - TEST_PASSFAIL - -RVTEST_CODE_END - - .data -RVTEST_DATA_BEGIN - - TEST_DATA - -src: -#include "data_d.h" - -dest: - .skip 16384 - -RVTEST_DATA_END diff --git a/isa/rv64uv/ld.S b/isa/rv64uv/ld.S deleted file mode 100644 index e0f12fd..0000000 --- a/isa/rv64uv/ld.S +++ /dev/null @@ -1,62 +0,0 @@ -# See LICENSE for license details. - -#***************************************************************************** -# ld.S -#----------------------------------------------------------------------------- -# -# Test ld instruction in a vf block. -# - -#include "riscv_test.h" -#include "test_macros.h" - -RVTEST_RV64UV -RVTEST_CODE_BEGIN - - vsetcfg 16,0 - li a4,512 - vsetvl a4,a4 - - la a5,src - vmsv vx2,a5 - lui a0,%hi(vtcode) - vf %lo(vtcode)(a0) - la a6,dest - vsd vx1,a6 - fence - - li a2,0 -loop: - ld a0,0(a6) - ld a1,0(a5) - addi TESTNUM,a2,2 - bne a0,a1,fail - addi a6,a6,8 - addi a5,a5,8 - addi a2,a2,1 - bne a2,a4,loop - j pass - -vtcode: - utidx x3 - slli x3,x3,3 - add x2,x2,x3 - ld x1,0(x2) - stop - - TEST_PASSFAIL - -RVTEST_CODE_END - - .data -RVTEST_DATA_BEGIN - - TEST_DATA - -src: -#include "data_d.h" - -dest: - .skip 16384 - -RVTEST_DATA_END diff --git a/isa/rv64uv/lh.S b/isa/rv64uv/lh.S deleted file mode 100644 index 62a1029..0000000 --- a/isa/rv64uv/lh.S +++ /dev/null @@ -1,64 +0,0 @@ -# See LICENSE for license details. - -#***************************************************************************** -# lh.S -#----------------------------------------------------------------------------- -# -# Test lh instruction in a vf block. -# - -#include "riscv_test.h" -#include "test_macros.h" - -RVTEST_RV64UV -RVTEST_CODE_BEGIN - - vsetcfg 16,0 - li a4,512 - vsetvl a4,a4 - - la a5,src - vmsv vx2,a5 - lui a0,%hi(vtcode) - vf %lo(vtcode)(a0) - la a6,dest - vsd vx1,a6 - fence - - li a2,0 -loop: - ld a0,0(a6) - ld a1,0(a5) - sll a3,a1,48 - sra a3,a3,48 - addi TESTNUM,a2,2 - bne a0,a3,fail - addi a6,a6,8 - addi a5,a5,8 - addi a2,a2,1 - bne a2,a4,loop - j pass - -vtcode: - utidx x3 - slli x3,x3,3 - add x2,x2,x3 - lh x1,0(x2) - stop - - TEST_PASSFAIL - -RVTEST_CODE_END - - .data -RVTEST_DATA_BEGIN - - TEST_DATA - -src: -#include "data_d.h" - -dest: - .skip 16384 - -RVTEST_DATA_END diff --git a/isa/rv64uv/lhu.S b/isa/rv64uv/lhu.S deleted file mode 100644 index a2de42b..0000000 --- a/isa/rv64uv/lhu.S +++ /dev/null @@ -1,64 +0,0 @@ -# See LICENSE for license details. - -#***************************************************************************** -# lhu.S -#----------------------------------------------------------------------------- -# -# Test lhu instruction in a vf block. -# - -#include "riscv_test.h" -#include "test_macros.h" - -RVTEST_RV64UV -RVTEST_CODE_BEGIN - - vsetcfg 16,0 - li a4,512 - vsetvl a4,a4 - - la a5,src - vmsv vx2,a5 - lui a0,%hi(vtcode) - vf %lo(vtcode)(a0) - la a6,dest - vsd vx1,a6 - fence - - li a2,0 -loop: - ld a0,0(a6) - ld a1,0(a5) - sll a3,a1,48 - srl a3,a3,48 - addi TESTNUM,a2,2 - bne a0,a3,fail - addi a6,a6,8 - addi a5,a5,8 - addi a2,a2,1 - bne a2,a4,loop - j pass - -vtcode: - utidx x3 - slli x3,x3,3 - add x2,x2,x3 - lhu x1,0(x2) - stop - - TEST_PASSFAIL - -RVTEST_CODE_END - - .data -RVTEST_DATA_BEGIN - - TEST_DATA - -src: -#include "data_d.h" - -dest: - .skip 16384 - -RVTEST_DATA_END diff --git a/isa/rv64uv/lw.S b/isa/rv64uv/lw.S deleted file mode 100644 index 4986984..0000000 --- a/isa/rv64uv/lw.S +++ /dev/null @@ -1,64 +0,0 @@ -# See LICENSE for license details. - -#***************************************************************************** -# lw.S -#----------------------------------------------------------------------------- -# -# Test lw instruction in a vf block. -# - -#include "riscv_test.h" -#include "test_macros.h" - -RVTEST_RV64UV -RVTEST_CODE_BEGIN - - vsetcfg 16,0 - li a4,512 - vsetvl a4,a4 - - la a5,src - vmsv vx2,a5 - lui a0,%hi(vtcode) - vf %lo(vtcode)(a0) - la a6,dest - vsd vx1,a6 - fence - - li a2,0 -loop: - ld a0,0(a6) - ld a1,0(a5) - sll a3,a1,32 - sra a3,a3,32 - addi TESTNUM,a2,2 - bne a0,a3,fail - addi a6,a6,8 - addi a5,a5,8 - addi a2,a2,1 - bne a2,a4,loop - j pass - -vtcode: - utidx x3 - slli x3,x3,3 - add x2,x2,x3 - lw x1,0(x2) - stop - - TEST_PASSFAIL - -RVTEST_CODE_END - - .data -RVTEST_DATA_BEGIN - - TEST_DATA - -src: -#include "data_d.h" - -dest: - .skip 16384 - -RVTEST_DATA_END diff --git a/isa/rv64uv/lwu.S b/isa/rv64uv/lwu.S deleted file mode 100644 index 502662a..0000000 --- a/isa/rv64uv/lwu.S +++ /dev/null @@ -1,64 +0,0 @@ -# See LICENSE for license details. - -#***************************************************************************** -# lwu.S -#----------------------------------------------------------------------------- -# -# Test lwu instruction in a vf block. -# - -#include "riscv_test.h" -#include "test_macros.h" - -RVTEST_RV64UV -RVTEST_CODE_BEGIN - - vsetcfg 16,0 - li a4,512 - vsetvl a4,a4 - - la a5,src - vmsv vx2,a5 - lui a0,%hi(vtcode) - vf %lo(vtcode)(a0) - la a6,dest - vsd vx1,a6 - fence - - li a2,0 -loop: - ld a0,0(a6) - ld a1,0(a5) - sll a3,a1,32 - srl a3,a3,32 - addi TESTNUM,a2,2 - bne a0,a3,fail - addi a6,a6,8 - addi a5,a5,8 - addi a2,a2,1 - bne a2,a4,loop - j pass - -vtcode: - utidx x3 - slli x3,x3,3 - add x2,x2,x3 - lwu x1,0(x2) - stop - - TEST_PASSFAIL - -RVTEST_CODE_END - - .data -RVTEST_DATA_BEGIN - - TEST_DATA - -src: -#include "data_d.h" - -dest: - .skip 16384 - -RVTEST_DATA_END diff --git a/isa/rv64uv/movn.S b/isa/rv64uv/movn.S deleted file mode 100644 index 97b6261..0000000 --- a/isa/rv64uv/movn.S +++ /dev/null @@ -1,61 +0,0 @@ -# See LICENSE for license details. - -#***************************************************************************** -# movn.S -#----------------------------------------------------------------------------- -# -# Test movn instruction in a vf block. -# - -#include "riscv_test.h" -#include "test_macros.h" - -RVTEST_RV64UV -RVTEST_CODE_BEGIN - - vsetcfg 4,0 - li a6,2048 - vsetvl a6,a6 - - lui a0,%hi(vtcode) - vf %lo(vtcode)(a0) - la a7,dest - vsd vx3,a7 - fence - - li a1,0 - li a2,-1 -loop: - ld a0,0(a7) - slt a4,a1,10 - slli a4,a4,63 - srai a4,a4,63 - and a5,a2,a4 - addi s8,a1,2 - bne a0,a5,fail - addi a7,a7,8 - addi a1,a1,1 - bne a1,a6,loop - j pass - -vtcode: - utidx x1 - slti x2,x1,10 - li x1,-1 - li x3,0 - movn x3,x2,x1 - stop - - TEST_PASSFAIL - -RVTEST_CODE_END - - .data -RVTEST_DATA_BEGIN - - TEST_DATA - -dest: - .skip 16384 - -RVTEST_DATA_END diff --git a/isa/rv64uv/movz.S b/isa/rv64uv/movz.S deleted file mode 100644 index 8680ac6..0000000 --- a/isa/rv64uv/movz.S +++ /dev/null @@ -1,62 +0,0 @@ -# See LICENSE for license details. - -#***************************************************************************** -# movz.S -#----------------------------------------------------------------------------- -# -# Test movz instruction in a vf block. -# - -#include "riscv_test.h" -#include "test_macros.h" - -RVTEST_RV64UV -RVTEST_CODE_BEGIN - - vsetcfg 4,0 - li a6,2048 - vsetvl a6,a6 - - lui a0,%hi(vtcode) - vf %lo(vtcode)(a0) - la a7,dest - vsd vx3,a7 - fence - - li a1,0 - li a2,-1 -loop: - ld a0,0(a7) - slti a4,a1,10 - slli a4,a4,63 - srai a4,a4,63 - xori a4,a4,-1 - and a5,a2,a4 - addi TESTNUM,a1,2 - bne a0,a5,fail - addi a7,a7,8 - addi a1,a1,1 - bne a1,a6,loop - j pass - -vtcode: - utidx x1 - slti x2,x1,10 - li x1,-1 - li x3,0 - movz x3,x2,x1 - stop - - TEST_PASSFAIL - -RVTEST_CODE_END - - .data -RVTEST_DATA_BEGIN - - TEST_DATA - -dest: - .skip 16384 - -RVTEST_DATA_END diff --git a/isa/rv64uv/sb.S b/isa/rv64uv/sb.S deleted file mode 100644 index 645da07..0000000 --- a/isa/rv64uv/sb.S +++ /dev/null @@ -1,74 +0,0 @@ -# See LICENSE for license details. - -#***************************************************************************** -# sb.S -#----------------------------------------------------------------------------- -# -# Test sb instruction in a vf block. -# - -#include "riscv_test.h" -#include "test_macros.h" - -RVTEST_RV64UV -RVTEST_CODE_BEGIN - - vsetcfg 16,0 - li a4,512 - vsetvl a4,a4 - - la a6,dest - li a2,0 - -initloop: - sd x0,0(a6) - addi a6,a6,8 - addi a2,a2,1 - bne a2,a4,initloop - fence - - la a5,src - vld vx1,a5 - la a6,dest - vmsv vx2,a6 - lui a0,%hi(vtcode) - vf %lo(vtcode)(a0) - fence - - li a2,0 -loop: - ld a0,0(a6) - ld a1,0(a5) - sll a3,a1,56 - srl a3,a3,56 - addi TESTNUM,a2,2 - bne a0,a3,fail - addi a6,a6,8 - addi a5,a5,8 - addi a2,a2,1 - bne a2,a4,loop - j pass - -vtcode: - utidx x3 - slli x3,x3,3 - add x2,x2,x3 - sb x1,0(x2) - stop - - TEST_PASSFAIL - -RVTEST_CODE_END - - .data -RVTEST_DATA_BEGIN - - TEST_DATA - -src: -#include "data_d.h" - -dest: - .skip 16384 - -RVTEST_DATA_END diff --git a/isa/rv64uv/sd.S b/isa/rv64uv/sd.S deleted file mode 100644 index 7fb0e8f..0000000 --- a/isa/rv64uv/sd.S +++ /dev/null @@ -1,62 +0,0 @@ -# See LICENSE for license details. - -#***************************************************************************** -# sd.S -#----------------------------------------------------------------------------- -# -# Test sd instruction in a vf block. -# - -#include "riscv_test.h" -#include "test_macros.h" - -RVTEST_RV64UV -RVTEST_CODE_BEGIN - - vsetcfg 16,0 - li a4,512 - vsetvl a4,a4 - - la a5,src - vld vx1,a5 - la a6,dest - vmsv vx2,a6 - lui a0,%hi(vtcode) - vf %lo(vtcode)(a0) - fence - - li a2,0 -loop: - ld a0,0(a6) - ld a1,0(a5) - addi TESTNUM,a2,2 - bne a0,a1,fail - addi a6,a6,8 - addi a5,a5,8 - addi a2,a2,1 - bne a2,a4,loop - j pass - -vtcode: - utidx x3 - slli x3,x3,3 - add x2,x2,x3 - sd x1,0(x2) - stop - - TEST_PASSFAIL - -RVTEST_CODE_END - - .data -RVTEST_DATA_BEGIN - - TEST_DATA - -src: -#include "data_d.h" - -dest: - .skip 16384 - -RVTEST_DATA_END diff --git a/isa/rv64uv/sh.S b/isa/rv64uv/sh.S deleted file mode 100644 index c87f070..0000000 --- a/isa/rv64uv/sh.S +++ /dev/null @@ -1,74 +0,0 @@ -# See LICENSE for license details. - -#***************************************************************************** -# sh.S -#----------------------------------------------------------------------------- -# -# Test sh instruction in a vf block. -# - -#include "riscv_test.h" -#include "test_macros.h" - -RVTEST_RV64UV -RVTEST_CODE_BEGIN - - vsetcfg 16,0 - li a4,512 - vsetvl a4,a4 - - la a6,dest - li a2,0 - -initloop: - sd x0,0(a6) - addi a6,a6,8 - addi a2,a2,1 - bne a2,a4,initloop - fence - - la a5,src - vld vx1,a5 - la a6,dest - vmsv vx2,a6 - lui a0,%hi(vtcode) - vf %lo(vtcode)(a0) - fence - - li a2,0 -loop: - ld a0,0(a6) - ld a1,0(a5) - sll a3,a1,48 - srl a3,a3,48 - addi TESTNUM,a2,2 - bne a0,a3,fail - addi a6,a6,8 - addi a5,a5,8 - addi a2,a2,1 - bne a2,a4,loop - j pass - -vtcode: - utidx x3 - slli x3,x3,3 - add x2,x2,x3 - sh x1,0(x2) - stop - - TEST_PASSFAIL - -RVTEST_CODE_END - - .data -RVTEST_DATA_BEGIN - - TEST_DATA - -src: -#include "data_d.h" - -dest: - .skip 16384 - -RVTEST_DATA_END diff --git a/isa/rv64uv/sw.S b/isa/rv64uv/sw.S deleted file mode 100644 index efad38c..0000000 --- a/isa/rv64uv/sw.S +++ /dev/null @@ -1,74 +0,0 @@ -# See LICENSE for license details. - -#***************************************************************************** -# sw.S -#----------------------------------------------------------------------------- -# -# Test sw instruction in a vf block. -# - -#include "riscv_test.h" -#include "test_macros.h" - -RVTEST_RV64UV -RVTEST_CODE_BEGIN - - vsetcfg 16,0 - li a4,512 - vsetvl a4,a4 - - la a6,dest - li a2,0 - -initloop: - sd x0,0(a6) - addi a6,a6,8 - addi a2,a2,1 - bne a2,a4,initloop - fence - - la a5,src - vld vx1,a5 - la a6,dest - vmsv vx2,a6 - lui a0,%hi(vtcode) - vf %lo(vtcode)(a0) - fence - - li a2,0 -loop: - ld a0,0(a6) - ld a1,0(a5) - sll a3,a1,32 - srl a3,a3,32 - addi TESTNUM,a2,2 - bne a0,a3,fail - addi a6,a6,8 - addi a5,a5,8 - addi a2,a2,1 - bne a2,a4,loop - j pass - -vtcode: - utidx x3 - slli x3,x3,3 - add x2,x2,x3 - sw x1,0(x2) - stop - - TEST_PASSFAIL - -RVTEST_CODE_END - - .data -RVTEST_DATA_BEGIN - - TEST_DATA - -src: -#include "data_d.h" - -dest: - .skip 16384 - -RVTEST_DATA_END diff --git a/isa/rv64uv/utidx.S b/isa/rv64uv/utidx.S deleted file mode 100644 index 564bf19..0000000 --- a/isa/rv64uv/utidx.S +++ /dev/null @@ -1,53 +0,0 @@ -# See LICENSE for license details. - -#***************************************************************************** -# utidx.S -#----------------------------------------------------------------------------- -# -# Test utidx instruction in a vf block. -# - -#include "riscv_test.h" -#include "test_macros.h" - -RVTEST_RV64UV -RVTEST_CODE_BEGIN - - vsetcfg 2,0 - li a2,2048 - vsetvl a2,a2 - - lui a0,%hi(vtcode) - vf %lo(vtcode)(a0) - la a4,dest - vsd vx1,a4 - fence - - li a1,1 -loop: - ld a0,0(a4) - addi TESTNUM,a1,2 - bne a0,a1,fail - addi a4,a4,8 - addi a1,a1,1 - bne a1,a2,loop - j pass - -vtcode: - utidx x1 - addi x1,x1,1 - stop - - TEST_PASSFAIL - -RVTEST_CODE_END - - .data -RVTEST_DATA_BEGIN - - TEST_DATA - -dest: - .skip 16384 - -RVTEST_DATA_END diff --git a/isa/rv64uv/vfmsv_d.S b/isa/rv64uv/vfmsv_d.S deleted file mode 100644 index 97a14e3..0000000 --- a/isa/rv64uv/vfmsv_d.S +++ /dev/null @@ -1,57 +0,0 @@ -# See LICENSE for license details. - -#***************************************************************************** -# vfmsv_d.S -#----------------------------------------------------------------------------- -# -# Test vfmsv.d instruction. -# - -#include "riscv_test.h" -#include "test_macros.h" - -RVTEST_RV64UV -RVTEST_CODE_BEGIN - - vsetcfg 3,1 - li a2,680 - vsetvl a2,a2 - - li a3,-1 - vfmsv.d vf0,a3 - lui a0,%hi(vtcode) - vf %lo(vtcode)(a0) - la a4,dest - vsd vx2,a4 - fence - - li a1,0 -loop: - ld a0,0(a4) - addi TESTNUM,a1,2 - bne a0,a1,fail - addi a4,a4,8 - addi a1,a1,1 - bne a1,a2,loop - j pass - -vtcode: - utidx x1 - addi x1,x1,1 - fmv.x.d x2, f0 - add x2,x1,x2 - stop - - TEST_PASSFAIL - -RVTEST_CODE_END - - .data -RVTEST_DATA_BEGIN - - TEST_DATA - -dest: - .skip 16384 - -RVTEST_DATA_END diff --git a/isa/rv64uv/vfmsv_s.S b/isa/rv64uv/vfmsv_s.S deleted file mode 100644 index cf5f881..0000000 --- a/isa/rv64uv/vfmsv_s.S +++ /dev/null @@ -1,57 +0,0 @@ -# See LICENSE for license details. - -#***************************************************************************** -# vfmsv_s.S -#----------------------------------------------------------------------------- -# -# Test vfmsv.s instruction. -# - -#include "riscv_test.h" -#include "test_macros.h" - -RVTEST_RV64UV -RVTEST_CODE_BEGIN - - vsetcfg 3,1 - li a2,680 - vsetvl a2,a2 - - li a3,-1 - vfmsv.s vf0,a3 - lui a0,%hi(vtcode) - vf %lo(vtcode)(a0) - la a4,dest - vsd vx2,a4 - fence - - li a1,0 -loop: - ld a0,0(a4) - addi TESTNUM,a1,2 - bne a0,a1,fail - addi a4,a4,8 - addi a1,a1,1 - bne a1,a2,loop - j pass - -vtcode: - utidx x1 - addi x1,x1,1 - fmv.x.s x2, f0 - add x2,x1,x2 - stop - - TEST_PASSFAIL - -RVTEST_CODE_END - - .data -RVTEST_DATA_BEGIN - - TEST_DATA - -dest: - .skip 16384 - -RVTEST_DATA_END diff --git a/isa/rv64uv/vfmvv.S b/isa/rv64uv/vfmvv.S deleted file mode 100644 index c1acfc4..0000000 --- a/isa/rv64uv/vfmvv.S +++ /dev/null @@ -1,55 +0,0 @@ -# See LICENSE for license details. - -#***************************************************************************** -# vfmvv.S -#----------------------------------------------------------------------------- -# -# Test vfmvv instruction. -# - -#include "riscv_test.h" -#include "test_macros.h" - -RVTEST_RV64UV -RVTEST_CODE_BEGIN - - vsetcfg 2,2 - li a2,2048 - vsetvl a2,a2 - - lui a0,%hi(vtcode) - vf %lo(vtcode)(a0) - vfmvv vf1,vf0 - la a3,dest - vfsd vf1,a3 - fence - - li a1,1 -loop: - ld a0,0(a3) - addi TESTNUM,a1,2 - bne a0,a1,fail - addi a3,a3,8 - addi a1,a1,1 - bne a1,a2,loop - j pass - -vtcode: - utidx x1 - addi x1,x1,1 - fmv.d.x f0,x1 - stop - - TEST_PASSFAIL - -RVTEST_CODE_END - - .data -RVTEST_DATA_BEGIN - - TEST_DATA - -dest: - .skip 16384 - -RVTEST_DATA_END diff --git a/isa/rv64uv/vmsv.S b/isa/rv64uv/vmsv.S deleted file mode 100644 index fe16651..0000000 --- a/isa/rv64uv/vmsv.S +++ /dev/null @@ -1,56 +0,0 @@ -# See LICENSE for license details. - -#***************************************************************************** -# vmsv.S -#----------------------------------------------------------------------------- -# -# Test vmsv instruction. -# - -#include "riscv_test.h" -#include "test_macros.h" - -RVTEST_RV64UV -RVTEST_CODE_BEGIN - - vsetcfg 3,0 - li a2,2048 - vsetvl a2,a2 - - li a3,-1 - vmsv vx2,a3 - lui a0,%hi(vtcode) - vf %lo(vtcode)(a0) - la a4,dest - vsd vx2,a4 - fence - - li a1,0 -loop: - ld a0,0(a4) - addi TESTNUM,a1,2 - bne a0,a1,fail - addi a4,a4,8 - addi a1,a1,1 - bne a1,a2,loop - j pass - -vtcode: - utidx x1 - addi x1,x1,1 - add x2,x1,x2 - stop - - TEST_PASSFAIL - -RVTEST_CODE_END - - .data -RVTEST_DATA_BEGIN - - TEST_DATA - -dest: - .skip 16384 - -RVTEST_DATA_END diff --git a/isa/rv64uv/vmvv.S b/isa/rv64uv/vmvv.S deleted file mode 100644 index c3529f1..0000000 --- a/isa/rv64uv/vmvv.S +++ /dev/null @@ -1,54 +0,0 @@ -# See LICENSE for license details. - -#***************************************************************************** -# vmvv.S -#----------------------------------------------------------------------------- -# -# Test vmvv instruction. -# - -#include "riscv_test.h" -#include "test_macros.h" - -RVTEST_RV64UV -RVTEST_CODE_BEGIN - - vsetcfg 3,0 - li a2,2048 - vsetvl a2,a2 - - lui a0,%hi(vtcode) - vf %lo(vtcode)(a0) - vmvv vx2,vx1 - la a4,dest - vsd vx2,a4 - fence - - li a1,1 -loop: - ld a0,0(a4) - addi TESTNUM,a1,2 - bne a0,a1,fail - addi a4,a4,8 - addi a1,a1,1 - bne a1,a2,loop - j pass - -vtcode: - utidx x1 - addi x1,x1,1 - stop - - TEST_PASSFAIL - -RVTEST_CODE_END - - .data -RVTEST_DATA_BEGIN - - TEST_DATA - -dest: - .skip 16384 - -RVTEST_DATA_END diff --git a/isa/rv64uv/vsetcfg.S b/isa/rv64uv/vsetcfg.S deleted file mode 100644 index 00ff1ac..0000000 --- a/isa/rv64uv/vsetcfg.S +++ /dev/null @@ -1,561 +0,0 @@ -# See LICENSE for license details. - -#***************************************************************************** -# vsetcfg.S -#----------------------------------------------------------------------------- -# -# Test vsetcfg instruction without immediates. -# - -#include "riscv_test.h" -#include "test_macros.h" - -RVTEST_RV64UV -RVTEST_CODE_BEGIN - - #------------------------------------------------------------- - # Arithmetic tests - #------------------------------------------------------------- - - #TEST_VVCFG( 2, 0, 0, 0xf8, 768, 768 ); - #TEST_VVCFG( 3, 0, 0, 0xf8, 769, 768 ); - #TEST_VVCFG( 4, 0, 0, 0xf8, 767, 767 ); - - TEST_VVCFG( 5, 0, 0, 0x00, 2048, 2048 ); - TEST_VVCFG( 6, 0, 0, 0x00, 2049, 2048 ); - TEST_VVCFG( 7, 0, 0, 0x00, 2047, 2047 ); - - #TEST_VVCFG( 8, 1, 0, 0xf8, 768, 768 ); - #TEST_VVCFG( 9, 1, 0, 0xf8, 769, 768 ); - #TEST_VVCFG( 10, 1, 0, 0xf8, 767, 767 ); - - TEST_VVCFG( 11, 1, 0, 0x00, 2048, 2048 ); - TEST_VVCFG( 12, 1, 0, 0x00, 2049, 2048 ); - TEST_VVCFG( 13, 1, 0, 0x00, 2047, 2047 ); - - #TEST_VVCFG( 14, 2, 0, 0xf8, 768, 768 ); - #TEST_VVCFG( 15, 2, 0, 0xf8, 769, 768 ); - #TEST_VVCFG( 16, 2, 0, 0xf8, 767, 767 ); - - TEST_VVCFG( 17, 2, 0, 0x00, 2048, 2048 ); - TEST_VVCFG( 18, 2, 0, 0x00, 2049, 2048 ); - TEST_VVCFG( 19, 2, 0, 0x00, 2047, 2047 ); - - #TEST_VVCFG( 20, 3, 0, 0xf8, 384, 384 ); - #TEST_VVCFG( 21, 3, 0, 0xf8, 385, 384 ); - #TEST_VVCFG( 22, 3, 0, 0xf8, 383, 383 ); - - TEST_VVCFG( 23, 3, 0, 0x00, 1024, 1024 ); - TEST_VVCFG( 24, 3, 0, 0x00, 1025, 1024 ); - TEST_VVCFG( 25, 3, 0, 0x00, 1023, 1023 ); - - #TEST_VVCFG( 26, 4, 0, 0xf8, 255, 255 ); - #TEST_VVCFG( 27, 4, 0, 0xf8, 256, 255 ); - #TEST_VVCFG( 28, 4, 0, 0xf8, 254, 254 ); - - TEST_VVCFG( 29, 4, 0, 0x00, 680, 680 ); - TEST_VVCFG( 30, 4, 0, 0x00, 681, 680 ); - TEST_VVCFG( 31, 4, 0, 0x00, 679, 679 ); - - #TEST_VVCFG( 32, 5, 0, 0xf8, 192, 192 ); - #TEST_VVCFG( 33, 5, 0, 0xf8, 193, 192 ); - #TEST_VVCFG( 34, 5, 0, 0xf8, 191, 191 ); - - TEST_VVCFG( 35, 5, 0, 0x00, 512, 512 ); - TEST_VVCFG( 36, 5, 0, 0x00, 513, 512 ); - TEST_VVCFG( 37, 5, 0, 0x00, 511, 511 ); - - #TEST_VVCFG( 38, 6, 0, 0xf8, 153, 153 ); - #TEST_VVCFG( 39, 6, 0, 0xf8, 154, 153 ); - #TEST_VVCFG( 40, 6, 0, 0xf8, 152, 152 ); - - TEST_VVCFG( 41, 6, 0, 0x00, 408, 408 ); - TEST_VVCFG( 42, 6, 0, 0x00, 409, 408 ); - TEST_VVCFG( 43, 6, 0, 0x00, 407, 407 ); - - #TEST_VVCFG( 44, 7, 0, 0xf8, 126, 126 ); - #TEST_VVCFG( 45, 7, 0, 0xf8, 127, 126 ); - #TEST_VVCFG( 46, 7, 0, 0xf8, 125, 125 ); - - TEST_VVCFG( 47, 7, 0, 0x00, 336, 336 ); - TEST_VVCFG( 48, 7, 0, 0x00, 337, 336 ); - TEST_VVCFG( 49, 7, 0, 0x00, 335, 335 ); - - #TEST_VVCFG( 50, 8, 0, 0xf8, 108, 108 ); - #TEST_VVCFG( 51, 8, 0, 0xf8, 109, 108 ); - #TEST_VVCFG( 52, 8, 0, 0xf8, 107, 107 ); - - TEST_VVCFG( 53, 8, 0, 0x00, 288, 288 ); - TEST_VVCFG( 54, 8, 0, 0x00, 289, 288 ); - TEST_VVCFG( 55, 8, 0, 0x00, 287, 287 ); - - #TEST_VVCFG( 56, 9, 0, 0xf8, 96, 96 ); - #TEST_VVCFG( 57, 9, 0, 0xf8, 97, 96 ); - #TEST_VVCFG( 58, 9, 0, 0xf8, 95, 95 ); - - TEST_VVCFG( 59, 9, 0, 0x00, 256, 256 ); - TEST_VVCFG( 60, 9, 0, 0x00, 257, 256 ); - TEST_VVCFG( 61, 9, 0, 0x00, 255, 255 ); - - #TEST_VVCFG( 62, 10, 0, 0xf8, 84, 84 ); - #TEST_VVCFG( 63, 10, 0, 0xf8, 85, 84 ); - #TEST_VVCFG( 64, 10, 0, 0xf8, 83, 83 ); - - TEST_VVCFG( 65, 10, 0, 0x00, 224, 224 ); - TEST_VVCFG( 66, 10, 0, 0x00, 225, 224 ); - TEST_VVCFG( 67, 10, 0, 0x00, 223, 223 ); - - #TEST_VVCFG( 68, 11, 0, 0xf8, 75, 75 ); - #TEST_VVCFG( 69, 11, 0, 0xf8, 76, 75 ); - #TEST_VVCFG( 70, 11, 0, 0xf8, 74, 74 ); - - TEST_VVCFG( 71, 11, 0, 0x00, 200, 200 ); - TEST_VVCFG( 72, 11, 0, 0x00, 201, 200 ); - TEST_VVCFG( 73, 11, 0, 0x00, 199, 199 ); - - #TEST_VVCFG( 74, 12, 0, 0xf8, 69, 69 ); - #TEST_VVCFG( 75, 12, 0, 0xf8, 70, 69 ); - #TEST_VVCFG( 76, 12, 0, 0xf8, 68, 68 ); - - TEST_VVCFG( 77, 12, 0, 0x00, 184, 184 ); - TEST_VVCFG( 78, 12, 0, 0x00, 185, 184 ); - TEST_VVCFG( 79, 12, 0, 0x00, 183, 183 ); - - #TEST_VVCFG( 80, 13, 0, 0xf8, 63, 63 ); - #TEST_VVCFG( 81, 13, 0, 0xf8, 64, 63 ); - #TEST_VVCFG( 82, 13, 0, 0xf8, 62, 62 ); - - TEST_VVCFG( 83, 13, 0, 0x00, 168, 168 ); - TEST_VVCFG( 84, 13, 0, 0x00, 169, 168 ); - TEST_VVCFG( 85, 13, 0, 0x00, 167, 167 ); - - #TEST_VVCFG( 86, 14, 0, 0xf8, 57, 57 ); - #TEST_VVCFG( 87, 14, 0, 0xf8, 58, 57 ); - #TEST_VVCFG( 88, 14, 0, 0xf8, 56, 56 ); - - TEST_VVCFG( 89, 14, 0, 0x00, 152, 152 ); - TEST_VVCFG( 90, 14, 0, 0x00, 153, 152 ); - TEST_VVCFG( 91, 14, 0, 0x00, 151, 151 ); - - #TEST_VVCFG( 92, 15, 0, 0xf8, 54, 54 ); - #TEST_VVCFG( 93, 15, 0, 0xf8, 55, 54 ); - #TEST_VVCFG( 94, 15, 0, 0xf8, 53, 53 ); - - TEST_VVCFG( 95, 15, 0, 0x00, 144, 144 ); - TEST_VVCFG( 96, 15, 0, 0x00, 145, 144 ); - TEST_VVCFG( 97, 15, 0, 0x00, 143, 143 ); - - #TEST_VVCFG( 98, 16, 0, 0xf8, 51, 51 ); - #TEST_VVCFG( 99, 16, 0, 0xf8, 52, 51 ); - #TEST_VVCFG( 100, 16, 0, 0xf8, 50, 50 ); - - TEST_VVCFG( 101, 16, 0, 0x00, 136, 136 ); - TEST_VVCFG( 102, 16, 0, 0x00, 137, 136 ); - TEST_VVCFG( 103, 16, 0, 0x00, 135, 135 ); - - #TEST_VVCFG( 104, 17, 0, 0xf8, 48, 48 ); - #TEST_VVCFG( 105, 17, 0, 0xf8, 49, 48 ); - #TEST_VVCFG( 106, 17, 0, 0xf8, 47, 47 ); - - TEST_VVCFG( 107, 17, 0, 0x00, 128, 128 ); - TEST_VVCFG( 108, 17, 0, 0x00, 129, 128 ); - TEST_VVCFG( 109, 17, 0, 0x00, 127, 127 ); - - #TEST_VVCFG( 110, 18, 0, 0xf8, 45, 45 ); - #TEST_VVCFG( 111, 18, 0, 0xf8, 46, 45 ); - #TEST_VVCFG( 112, 18, 0, 0xf8, 44, 44 ); - - TEST_VVCFG( 113, 18, 0, 0x00, 120, 120 ); - TEST_VVCFG( 114, 18, 0, 0x00, 121, 120 ); - TEST_VVCFG( 115, 18, 0, 0x00, 119, 119 ); - - #TEST_VVCFG( 116, 19, 0, 0xf8, 42, 42 ); - #TEST_VVCFG( 117, 19, 0, 0xf8, 43, 42 ); - #TEST_VVCFG( 118, 19, 0, 0xf8, 41, 41 ); - - TEST_VVCFG( 119, 19, 0, 0x00, 112, 112 ); - TEST_VVCFG( 120, 19, 0, 0x00, 113, 112 ); - TEST_VVCFG( 121, 19, 0, 0x00, 111, 111 ); - - #TEST_VVCFG( 122, 20, 0, 0xf8, 39, 39 ); - #TEST_VVCFG( 123, 20, 0, 0xf8, 40, 39 ); - #TEST_VVCFG( 124, 20, 0, 0xf8, 38, 38 ); - - TEST_VVCFG( 125, 20, 0, 0x00, 104, 104 ); - TEST_VVCFG( 126, 20, 0, 0x00, 105, 104 ); - TEST_VVCFG( 127, 20, 0, 0x00, 103, 103 ); - - #TEST_VVCFG( 128, 21, 0, 0xf8, 36, 36 ); - #TEST_VVCFG( 129, 21, 0, 0xf8, 37, 36 ); - #TEST_VVCFG( 130, 21, 0, 0xf8, 35, 35 ); - - TEST_VVCFG( 131, 21, 0, 0x00, 96, 96 ); - TEST_VVCFG( 132, 21, 0, 0x00, 97, 96 ); - TEST_VVCFG( 133, 21, 0, 0x00, 95, 95 ); - - #TEST_VVCFG( 134, 22, 0, 0xf8, 36, 36 ); - #TEST_VVCFG( 135, 22, 0, 0xf8, 37, 36 ); - #TEST_VVCFG( 136, 22, 0, 0xf8, 35, 35 ); - - TEST_VVCFG( 137, 22, 0, 0x00, 96, 96 ); - TEST_VVCFG( 138, 22, 0, 0x00, 97, 96 ); - TEST_VVCFG( 139, 22, 0, 0x00, 95, 95 ); - - #TEST_VVCFG( 140, 23, 0, 0xf8, 33, 33 ); - #TEST_VVCFG( 141, 23, 0, 0xf8, 34, 33 ); - #TEST_VVCFG( 142, 23, 0, 0xf8, 32, 32 ); - - TEST_VVCFG( 143, 23, 0, 0x00, 88, 88 ); - TEST_VVCFG( 144, 23, 0, 0x00, 89, 88 ); - TEST_VVCFG( 145, 23, 0, 0x00, 87, 87 ); - - #TEST_VVCFG( 146, 24, 0, 0xf8, 33, 33 ); - #TEST_VVCFG( 147, 24, 0, 0xf8, 34, 33 ); - #TEST_VVCFG( 148, 24, 0, 0xf8, 32, 32 ); - - TEST_VVCFG( 149, 24, 0, 0x00, 88, 88 ); - TEST_VVCFG( 150, 24, 0, 0x00, 89, 88 ); - TEST_VVCFG( 151, 24, 0, 0x00, 87, 87 ); - - #TEST_VVCFG( 152, 25, 0, 0xf8, 30, 30 ); - #TEST_VVCFG( 153, 25, 0, 0xf8, 31, 30 ); - #TEST_VVCFG( 154, 25, 0, 0xf8, 29, 29 ); - - TEST_VVCFG( 155, 25, 0, 0x00, 80, 80 ); - TEST_VVCFG( 156, 25, 0, 0x00, 81, 80 ); - TEST_VVCFG( 157, 25, 0, 0x00, 79, 79 ); - - #TEST_VVCFG( 158, 26, 0, 0xf8, 30, 30 ); - #TEST_VVCFG( 159, 26, 0, 0xf8, 31, 30 ); - #TEST_VVCFG( 160, 26, 0, 0xf8, 29, 29 ); - - TEST_VVCFG( 161, 26, 0, 0x00, 80, 80 ); - TEST_VVCFG( 162, 26, 0, 0x00, 81, 80 ); - TEST_VVCFG( 163, 26, 0, 0x00, 79, 79 ); - - #TEST_VVCFG( 164, 27, 0, 0xf8, 27, 27 ); - #TEST_VVCFG( 165, 27, 0, 0xf8, 28, 27 ); - #TEST_VVCFG( 166, 27, 0, 0xf8, 26, 26 ); - - TEST_VVCFG( 167, 27, 0, 0x00, 72, 72 ); - TEST_VVCFG( 168, 27, 0, 0x00, 73, 72 ); - TEST_VVCFG( 169, 27, 0, 0x00, 71, 71 ); - - #TEST_VVCFG( 170, 28, 0, 0xf8, 27, 27 ); - #TEST_VVCFG( 171, 28, 0, 0xf8, 28, 27 ); - #TEST_VVCFG( 172, 28, 0, 0xf8, 26, 26 ); - - TEST_VVCFG( 173, 28, 0, 0x00, 72, 72 ); - TEST_VVCFG( 174, 28, 0, 0x00, 73, 72 ); - TEST_VVCFG( 175, 28, 0, 0x00, 71, 71 ); - - #TEST_VVCFG( 176, 29, 0, 0xf8, 27, 27 ); - #TEST_VVCFG( 177, 29, 0, 0xf8, 28, 27 ); - #TEST_VVCFG( 178, 29, 0, 0xf8, 26, 26 ); - - TEST_VVCFG( 179, 29, 0, 0x00, 72, 72 ); - TEST_VVCFG( 180, 29, 0, 0x00, 73, 72 ); - TEST_VVCFG( 181, 29, 0, 0x00, 71, 71 ); - - #TEST_VVCFG( 182, 30, 0, 0xf8, 24, 24 ); - #TEST_VVCFG( 183, 30, 0, 0xf8, 25, 24 ); - #TEST_VVCFG( 184, 30, 0, 0xf8, 23, 23 ); - - TEST_VVCFG( 185, 30, 0, 0x00, 64, 64 ); - TEST_VVCFG( 186, 30, 0, 0x00, 65, 64 ); - TEST_VVCFG( 187, 30, 0, 0x00, 63, 63 ); - - #TEST_VVCFG( 188, 31, 0, 0xf8, 24, 24 ); - #TEST_VVCFG( 189, 31, 0, 0xf8, 25, 24 ); - #TEST_VVCFG( 190, 31, 0, 0xf8, 23, 23 ); - - TEST_VVCFG( 191, 31, 0, 0x00, 64, 64 ); - TEST_VVCFG( 192, 31, 0, 0x00, 65, 64 ); - TEST_VVCFG( 193, 31, 0, 0x00, 63, 63 ); - - #TEST_VVCFG( 194, 32, 0, 0xf8, 24, 24 ); - #TEST_VVCFG( 195, 32, 0, 0xf8, 25, 24 ); - #TEST_VVCFG( 196, 32, 0, 0xf8, 23, 23 ); - - TEST_VVCFG( 197, 32, 0, 0x00, 64, 64 ); - TEST_VVCFG( 198, 32, 0, 0x00, 65, 64 ); - TEST_VVCFG( 199, 32, 0, 0x00, 63, 63 ); - - #TEST_VVCFG( 200, 32, 0, 0xf8, 24, 24 ); - #TEST_VVCFG( 201, 32, 0, 0xf8, 25, 24 ); - #TEST_VVCFG( 202, 32, 0, 0xf8, 23, 23 ); - - TEST_VVCFG( 203, 32, 0, 0x00, 64, 64 ); - TEST_VVCFG( 204, 32, 0, 0x00, 65, 64 ); - TEST_VVCFG( 205, 32, 0, 0x00, 63, 63 ); - - #TEST_VVCFG( 206, 32, 1, 0xf8, 24, 24 ); - #TEST_VVCFG( 207, 32, 1, 0xf8, 25, 24 ); - #TEST_VVCFG( 208, 32, 1, 0xf8, 23, 23 ); - - TEST_VVCFG( 209, 32, 1, 0x00, 64, 64 ); - TEST_VVCFG( 210, 32, 1, 0x00, 65, 64 ); - TEST_VVCFG( 211, 32, 1, 0x00, 63, 63 ); - - #TEST_VVCFG( 212, 32, 2, 0xf8, 21, 21 ); - #TEST_VVCFG( 213, 32, 2, 0xf8, 22, 21 ); - #TEST_VVCFG( 214, 32, 2, 0xf8, 20, 20 ); - - TEST_VVCFG( 215, 32, 2, 0x00, 56, 56 ); - TEST_VVCFG( 216, 32, 2, 0x00, 57, 56 ); - TEST_VVCFG( 217, 32, 2, 0x00, 55, 55 ); - - #TEST_VVCFG( 218, 32, 3, 0xf8, 21, 21 ); - #TEST_VVCFG( 219, 32, 3, 0xf8, 22, 21 ); - #TEST_VVCFG( 220, 32, 3, 0xf8, 20, 20 ); - - TEST_VVCFG( 221, 32, 3, 0x00, 56, 56 ); - TEST_VVCFG( 222, 32, 3, 0x00, 57, 56 ); - TEST_VVCFG( 223, 32, 3, 0x00, 55, 55 ); - - #TEST_VVCFG( 224, 32, 4, 0xf8, 21, 21 ); - #TEST_VVCFG( 225, 32, 4, 0xf8, 22, 21 ); - #TEST_VVCFG( 226, 32, 4, 0xf8, 20, 20 ); - - TEST_VVCFG( 227, 32, 4, 0x00, 56, 56 ); - TEST_VVCFG( 228, 32, 4, 0x00, 57, 56 ); - TEST_VVCFG( 229, 32, 4, 0x00, 55, 55 ); - - #TEST_VVCFG( 230, 32, 5, 0xf8, 21, 21 ); - #TEST_VVCFG( 231, 32, 5, 0xf8, 22, 21 ); - #TEST_VVCFG( 232, 32, 5, 0xf8, 20, 20 ); - - TEST_VVCFG( 233, 32, 5, 0x00, 56, 56 ); - TEST_VVCFG( 234, 32, 5, 0x00, 57, 56 ); - TEST_VVCFG( 235, 32, 5, 0x00, 55, 55 ); - - #TEST_VVCFG( 236, 32, 6, 0xf8, 18, 18 ); - #TEST_VVCFG( 237, 32, 6, 0xf8, 19, 18 ); - #TEST_VVCFG( 238, 32, 6, 0xf8, 17, 17 ); - - TEST_VVCFG( 239, 32, 6, 0x00, 48, 48 ); - TEST_VVCFG( 240, 32, 6, 0x00, 49, 48 ); - TEST_VVCFG( 241, 32, 6, 0x00, 47, 47 ); - - #TEST_VVCFG( 242, 32, 7, 0xf8, 18, 18 ); - #TEST_VVCFG( 243, 32, 7, 0xf8, 19, 18 ); - #TEST_VVCFG( 244, 32, 7, 0xf8, 17, 17 ); - - TEST_VVCFG( 245, 32, 7, 0x00, 48, 48 ); - TEST_VVCFG( 246, 32, 7, 0x00, 49, 48 ); - TEST_VVCFG( 247, 32, 7, 0x00, 47, 47 ); - - #TEST_VVCFG( 248, 32, 8, 0xf8, 18, 18 ); - #TEST_VVCFG( 249, 32, 8, 0xf8, 19, 18 ); - #TEST_VVCFG( 250, 32, 8, 0xf8, 17, 17 ); - - TEST_VVCFG( 251, 32, 8, 0x00, 48, 48 ); - TEST_VVCFG( 252, 32, 8, 0x00, 49, 48 ); - TEST_VVCFG( 253, 32, 8, 0x00, 47, 47 ); - - #TEST_VVCFG( 254, 32, 9, 0xf8, 18, 18 ); - #TEST_VVCFG( 255, 32, 9, 0xf8, 19, 18 ); - #TEST_VVCFG( 256, 32, 9, 0xf8, 17, 17 ); - - TEST_VVCFG( 257, 32, 9, 0x00, 48, 48 ); - TEST_VVCFG( 258, 32, 9, 0x00, 49, 48 ); - TEST_VVCFG( 259, 32, 9, 0x00, 47, 47 ); - - #TEST_VVCFG( 260, 32, 10, 0xf8, 18, 18 ); - #TEST_VVCFG( 261, 32, 10, 0xf8, 19, 18 ); - #TEST_VVCFG( 262, 32, 10, 0xf8, 17, 17 ); - - TEST_VVCFG( 263, 32, 10, 0x00, 48, 48 ); - TEST_VVCFG( 264, 32, 10, 0x00, 49, 48 ); - TEST_VVCFG( 265, 32, 10, 0x00, 47, 47 ); - - #TEST_VVCFG( 266, 32, 11, 0xf8, 18, 18 ); - #TEST_VVCFG( 267, 32, 11, 0xf8, 19, 18 ); - #TEST_VVCFG( 268, 32, 11, 0xf8, 17, 17 ); - - TEST_VVCFG( 269, 32, 11, 0x00, 48, 48 ); - TEST_VVCFG( 270, 32, 11, 0x00, 49, 48 ); - TEST_VVCFG( 271, 32, 11, 0x00, 47, 47 ); - - #TEST_VVCFG( 272, 32, 12, 0xf8, 15, 15 ); - #TEST_VVCFG( 273, 32, 12, 0xf8, 16, 15 ); - #TEST_VVCFG( 274, 32, 12, 0xf8, 14, 14 ); - - TEST_VVCFG( 275, 32, 12, 0x00, 40, 40 ); - TEST_VVCFG( 276, 32, 12, 0x00, 41, 40 ); - TEST_VVCFG( 277, 32, 12, 0x00, 39, 39 ); - - #TEST_VVCFG( 278, 32, 13, 0xf8, 15, 15 ); - #TEST_VVCFG( 279, 32, 13, 0xf8, 16, 15 ); - #TEST_VVCFG( 280, 32, 13, 0xf8, 14, 14 ); - - TEST_VVCFG( 281, 32, 13, 0x00, 40, 40 ); - TEST_VVCFG( 282, 32, 13, 0x00, 41, 40 ); - TEST_VVCFG( 283, 32, 13, 0x00, 39, 39 ); - - #TEST_VVCFG( 284, 32, 14, 0xf8, 15, 15 ); - #TEST_VVCFG( 285, 32, 14, 0xf8, 16, 15 ); - #TEST_VVCFG( 286, 32, 14, 0xf8, 14, 14 ); - - TEST_VVCFG( 287, 32, 14, 0x00, 40, 40 ); - TEST_VVCFG( 288, 32, 14, 0x00, 41, 40 ); - TEST_VVCFG( 289, 32, 14, 0x00, 39, 39 ); - - #TEST_VVCFG( 290, 32, 15, 0xf8, 15, 15 ); - #TEST_VVCFG( 291, 32, 15, 0xf8, 16, 15 ); - #TEST_VVCFG( 292, 32, 15, 0xf8, 14, 14 ); - - TEST_VVCFG( 293, 32, 15, 0x00, 40, 40 ); - TEST_VVCFG( 294, 32, 15, 0x00, 41, 40 ); - TEST_VVCFG( 295, 32, 15, 0x00, 39, 39 ); - - #TEST_VVCFG( 296, 32, 16, 0xf8, 15, 15 ); - #TEST_VVCFG( 297, 32, 16, 0xf8, 16, 15 ); - #TEST_VVCFG( 298, 32, 16, 0xf8, 14, 14 ); - - TEST_VVCFG( 299, 32, 16, 0x00, 40, 40 ); - TEST_VVCFG( 300, 32, 16, 0x00, 41, 40 ); - TEST_VVCFG( 301, 32, 16, 0x00, 39, 39 ); - - #TEST_VVCFG( 302, 32, 17, 0xf8, 15, 15 ); - #TEST_VVCFG( 303, 32, 17, 0xf8, 16, 15 ); - #TEST_VVCFG( 304, 32, 17, 0xf8, 14, 14 ); - - TEST_VVCFG( 305, 32, 17, 0x00, 40, 40 ); - TEST_VVCFG( 306, 32, 17, 0x00, 41, 40 ); - TEST_VVCFG( 307, 32, 17, 0x00, 39, 39 ); - - #TEST_VVCFG( 308, 32, 18, 0xf8, 15, 15 ); - #TEST_VVCFG( 309, 32, 18, 0xf8, 16, 15 ); - #TEST_VVCFG( 310, 32, 18, 0xf8, 14, 14 ); - - TEST_VVCFG( 311, 32, 18, 0x00, 40, 40 ); - TEST_VVCFG( 312, 32, 18, 0x00, 41, 40 ); - TEST_VVCFG( 313, 32, 18, 0x00, 39, 39 ); - - #TEST_VVCFG( 314, 32, 19, 0xf8, 15, 15 ); - #TEST_VVCFG( 315, 32, 19, 0xf8, 16, 15 ); - #TEST_VVCFG( 316, 32, 19, 0xf8, 14, 14 ); - - TEST_VVCFG( 317, 32, 19, 0x00, 40, 40 ); - TEST_VVCFG( 318, 32, 19, 0x00, 41, 40 ); - TEST_VVCFG( 319, 32, 19, 0x00, 39, 39 ); - - #TEST_VVCFG( 320, 32, 20, 0xf8, 15, 15 ); - #TEST_VVCFG( 321, 32, 20, 0xf8, 16, 15 ); - #TEST_VVCFG( 322, 32, 20, 0xf8, 14, 14 ); - - TEST_VVCFG( 323, 32, 20, 0x00, 40, 40 ); - TEST_VVCFG( 324, 32, 20, 0x00, 41, 40 ); - TEST_VVCFG( 325, 32, 20, 0x00, 39, 39 ); - - #TEST_VVCFG( 326, 32, 21, 0xf8, 12, 12 ); - #TEST_VVCFG( 327, 32, 21, 0xf8, 13, 12 ); - #TEST_VVCFG( 328, 32, 21, 0xf8, 11, 11 ); - - TEST_VVCFG( 329, 32, 21, 0x00, 32, 32 ); - TEST_VVCFG( 330, 32, 21, 0x00, 33, 32 ); - TEST_VVCFG( 331, 32, 21, 0x00, 31, 31 ); - - #TEST_VVCFG( 332, 32, 22, 0xf8, 12, 12 ); - #TEST_VVCFG( 333, 32, 22, 0xf8, 13, 12 ); - #TEST_VVCFG( 334, 32, 22, 0xf8, 11, 11 ); - - TEST_VVCFG( 335, 32, 22, 0x00, 32, 32 ); - TEST_VVCFG( 336, 32, 22, 0x00, 33, 32 ); - TEST_VVCFG( 337, 32, 22, 0x00, 31, 31 ); - - #TEST_VVCFG( 338, 32, 23, 0xf8, 12, 12 ); - #TEST_VVCFG( 339, 32, 23, 0xf8, 13, 12 ); - #TEST_VVCFG( 340, 32, 23, 0xf8, 11, 11 ); - - TEST_VVCFG( 341, 32, 23, 0x00, 32, 32 ); - TEST_VVCFG( 342, 32, 23, 0x00, 33, 32 ); - TEST_VVCFG( 343, 32, 23, 0x00, 31, 31 ); - - #TEST_VVCFG( 344, 32, 24, 0xf8, 12, 12 ); - #TEST_VVCFG( 345, 32, 24, 0xf8, 13, 12 ); - #TEST_VVCFG( 346, 32, 24, 0xf8, 11, 11 ); - - TEST_VVCFG( 347, 32, 24, 0x00, 32, 32 ); - TEST_VVCFG( 348, 32, 24, 0x00, 33, 32 ); - TEST_VVCFG( 349, 32, 24, 0x00, 31, 31 ); - - #TEST_VVCFG( 350, 32, 25, 0xf8, 12, 12 ); - #TEST_VVCFG( 351, 32, 25, 0xf8, 13, 12 ); - #TEST_VVCFG( 352, 32, 25, 0xf8, 11, 11 ); - - TEST_VVCFG( 353, 32, 25, 0x00, 32, 32 ); - TEST_VVCFG( 354, 32, 25, 0x00, 33, 32 ); - TEST_VVCFG( 355, 32, 25, 0x00, 31, 31 ); - - #TEST_VVCFG( 356, 32, 26, 0xf8, 12, 12 ); - #TEST_VVCFG( 357, 32, 26, 0xf8, 13, 12 ); - #TEST_VVCFG( 358, 32, 26, 0xf8, 11, 11 ); - - TEST_VVCFG( 359, 32, 26, 0x00, 32, 32 ); - TEST_VVCFG( 360, 32, 26, 0x00, 33, 32 ); - TEST_VVCFG( 361, 32, 26, 0x00, 31, 31 ); - - #TEST_VVCFG( 362, 32, 27, 0xf8, 12, 12 ); - #TEST_VVCFG( 363, 32, 27, 0xf8, 13, 12 ); - #TEST_VVCFG( 364, 32, 27, 0xf8, 11, 11 ); - - TEST_VVCFG( 365, 32, 27, 0x00, 32, 32 ); - TEST_VVCFG( 366, 32, 27, 0x00, 33, 32 ); - TEST_VVCFG( 367, 32, 27, 0x00, 31, 31 ); - - #TEST_VVCFG( 368, 32, 28, 0xf8, 12, 12 ); - #TEST_VVCFG( 369, 32, 28, 0xf8, 13, 12 ); - #TEST_VVCFG( 370, 32, 28, 0xf8, 11, 11 ); - - TEST_VVCFG( 371, 32, 28, 0x00, 32, 32 ); - TEST_VVCFG( 372, 32, 28, 0x00, 33, 32 ); - TEST_VVCFG( 373, 32, 28, 0x00, 31, 31 ); - - #TEST_VVCFG( 374, 32, 29, 0xf8, 12, 12 ); - #TEST_VVCFG( 375, 32, 29, 0xf8, 13, 12 ); - #TEST_VVCFG( 376, 32, 29, 0xf8, 11, 11 ); - - TEST_VVCFG( 377, 32, 29, 0x00, 32, 32 ); - TEST_VVCFG( 378, 32, 29, 0x00, 33, 32 ); - TEST_VVCFG( 379, 32, 29, 0x00, 31, 31 ); - - #TEST_VVCFG( 380, 32, 30, 0xf8, 12, 12 ); - #TEST_VVCFG( 381, 32, 30, 0xf8, 13, 12 ); - #TEST_VVCFG( 382, 32, 30, 0xf8, 11, 11 ); - - TEST_VVCFG( 383, 32, 30, 0x00, 32, 32 ); - TEST_VVCFG( 384, 32, 30, 0x00, 33, 32 ); - TEST_VVCFG( 385, 32, 30, 0x00, 31, 31 ); - - #TEST_VVCFG( 386, 32, 31, 0xf8, 12, 12 ); - #TEST_VVCFG( 387, 32, 31, 0xf8, 13, 12 ); - #TEST_VVCFG( 388, 32, 31, 0xf8, 11, 11 ); - - TEST_VVCFG( 389, 32, 31, 0x00, 32, 32 ); - TEST_VVCFG( 390, 32, 31, 0x00, 33, 32 ); - TEST_VVCFG( 391, 32, 31, 0x00, 31, 31 ); - - #TEST_VVCFG( 392, 32, 32, 0xf8, 12, 12 ); - #TEST_VVCFG( 393, 32, 32, 0xf8, 13, 12 ); - #TEST_VVCFG( 394, 32, 32, 0xf8, 11, 11 ); - - TEST_VVCFG( 395, 32, 32, 0x00, 32, 32 ); - TEST_VVCFG( 396, 32, 32, 0x00, 33, 32 ); - TEST_VVCFG( 397, 32, 32, 0x00, 31, 31 ); - - #------------------------------------------------------------- - # Source/Destination tests - #------------------------------------------------------------- - - TEST_PASSFAIL - -RVTEST_CODE_END - - .data -RVTEST_DATA_BEGIN - - TEST_DATA - -RVTEST_DATA_END diff --git a/isa/rv64uv/vsetcfgi.S b/isa/rv64uv/vsetcfgi.S deleted file mode 100644 index bb9a9cc..0000000 --- a/isa/rv64uv/vsetcfgi.S +++ /dev/null @@ -1,561 +0,0 @@ -# See LICENSE for license details. - -#***************************************************************************** -# vsetcfgi.S -#----------------------------------------------------------------------------- -# -# Test vsetcfg instruction with immediates. -# - -#include "riscv_test.h" -#include "test_macros.h" - -RVTEST_RV64UV -RVTEST_CODE_BEGIN - - #------------------------------------------------------------- - # Arithmetic tests - #------------------------------------------------------------- - - #TEST_VSETCFGIVL( 2, 0, 0, 0xf8, 768, 768 ); - #TEST_VSETCFGIVL( 3, 0, 0, 0xf8, 769, 768 ); - #TEST_VSETCFGIVL( 4, 0, 0, 0xf8, 767, 767 ); - - TEST_VSETCFGIVL( 5, 0, 0, 0x00, 2048, 2048 ); - TEST_VSETCFGIVL( 6, 0, 0, 0x00, 2049, 2048 ); - TEST_VSETCFGIVL( 7, 0, 0, 0x00, 2047, 2047 ); - - #TEST_VSETCFGIVL( 8, 1, 0, 0xf8, 768, 768 ); - #TEST_VSETCFGIVL( 9, 1, 0, 0xf8, 769, 768 ); - #TEST_VSETCFGIVL( 10, 1, 0, 0xf8, 767, 767 ); - - TEST_VSETCFGIVL( 11, 1, 0, 0x00, 2048, 2048 ); - TEST_VSETCFGIVL( 12, 1, 0, 0x00, 2049, 2048 ); - TEST_VSETCFGIVL( 13, 1, 0, 0x00, 2047, 2047 ); - - #TEST_VSETCFGIVL( 14, 2, 0, 0xf8, 768, 768 ); - #TEST_VSETCFGIVL( 15, 2, 0, 0xf8, 769, 768 ); - #TEST_VSETCFGIVL( 16, 2, 0, 0xf8, 767, 767 ); - - TEST_VSETCFGIVL( 17, 2, 0, 0x00, 2048, 2048 ); - TEST_VSETCFGIVL( 18, 2, 0, 0x00, 2049, 2048 ); - TEST_VSETCFGIVL( 19, 2, 0, 0x00, 2047, 2047 ); - - #TEST_VSETCFGIVL( 20, 3, 0, 0xf8, 384, 384 ); - #TEST_VSETCFGIVL( 21, 3, 0, 0xf8, 385, 384 ); - #TEST_VSETCFGIVL( 22, 3, 0, 0xf8, 383, 383 ); - - TEST_VSETCFGIVL( 23, 3, 0, 0x00, 1024, 1024 ); - TEST_VSETCFGIVL( 24, 3, 0, 0x00, 1025, 1024 ); - TEST_VSETCFGIVL( 25, 3, 0, 0x00, 1023, 1023 ); - - #TEST_VSETCFGIVL( 26, 4, 0, 0xf8, 255, 255 ); - #TEST_VSETCFGIVL( 27, 4, 0, 0xf8, 256, 255 ); - #TEST_VSETCFGIVL( 28, 4, 0, 0xf8, 254, 254 ); - - TEST_VSETCFGIVL( 29, 4, 0, 0x00, 680, 680 ); - TEST_VSETCFGIVL( 30, 4, 0, 0x00, 681, 680 ); - TEST_VSETCFGIVL( 31, 4, 0, 0x00, 679, 679 ); - - #TEST_VSETCFGIVL( 32, 5, 0, 0xf8, 192, 192 ); - #TEST_VSETCFGIVL( 33, 5, 0, 0xf8, 193, 192 ); - #TEST_VSETCFGIVL( 34, 5, 0, 0xf8, 191, 191 ); - - TEST_VSETCFGIVL( 35, 5, 0, 0x00, 512, 512 ); - TEST_VSETCFGIVL( 36, 5, 0, 0x00, 513, 512 ); - TEST_VSETCFGIVL( 37, 5, 0, 0x00, 511, 511 ); - - #TEST_VSETCFGIVL( 38, 6, 0, 0xf8, 153, 153 ); - #TEST_VSETCFGIVL( 39, 6, 0, 0xf8, 154, 153 ); - #TEST_VSETCFGIVL( 40, 6, 0, 0xf8, 152, 152 ); - - TEST_VSETCFGIVL( 41, 6, 0, 0x00, 408, 408 ); - TEST_VSETCFGIVL( 42, 6, 0, 0x00, 409, 408 ); - TEST_VSETCFGIVL( 43, 6, 0, 0x00, 407, 407 ); - - #TEST_VSETCFGIVL( 44, 7, 0, 0xf8, 126, 126 ); - #TEST_VSETCFGIVL( 45, 7, 0, 0xf8, 127, 126 ); - #TEST_VSETCFGIVL( 46, 7, 0, 0xf8, 125, 125 ); - - TEST_VSETCFGIVL( 47, 7, 0, 0x00, 336, 336 ); - TEST_VSETCFGIVL( 48, 7, 0, 0x00, 337, 336 ); - TEST_VSETCFGIVL( 49, 7, 0, 0x00, 335, 335 ); - - #TEST_VSETCFGIVL( 50, 8, 0, 0xf8, 108, 108 ); - #TEST_VSETCFGIVL( 51, 8, 0, 0xf8, 109, 108 ); - #TEST_VSETCFGIVL( 52, 8, 0, 0xf8, 107, 107 ); - - TEST_VSETCFGIVL( 53, 8, 0, 0x00, 288, 288 ); - TEST_VSETCFGIVL( 54, 8, 0, 0x00, 289, 288 ); - TEST_VSETCFGIVL( 55, 8, 0, 0x00, 287, 287 ); - - #TEST_VSETCFGIVL( 56, 9, 0, 0xf8, 96, 96 ); - #TEST_VSETCFGIVL( 57, 9, 0, 0xf8, 97, 96 ); - #TEST_VSETCFGIVL( 58, 9, 0, 0xf8, 95, 95 ); - - TEST_VSETCFGIVL( 59, 9, 0, 0x00, 256, 256 ); - TEST_VSETCFGIVL( 60, 9, 0, 0x00, 257, 256 ); - TEST_VSETCFGIVL( 61, 9, 0, 0x00, 255, 255 ); - - #TEST_VSETCFGIVL( 62, 10, 0, 0xf8, 84, 84 ); - #TEST_VSETCFGIVL( 63, 10, 0, 0xf8, 85, 84 ); - #TEST_VSETCFGIVL( 64, 10, 0, 0xf8, 83, 83 ); - - TEST_VSETCFGIVL( 65, 10, 0, 0x00, 224, 224 ); - TEST_VSETCFGIVL( 66, 10, 0, 0x00, 225, 224 ); - TEST_VSETCFGIVL( 67, 10, 0, 0x00, 223, 223 ); - - #TEST_VSETCFGIVL( 68, 11, 0, 0xf8, 75, 75 ); - #TEST_VSETCFGIVL( 69, 11, 0, 0xf8, 76, 75 ); - #TEST_VSETCFGIVL( 70, 11, 0, 0xf8, 74, 74 ); - - TEST_VSETCFGIVL( 71, 11, 0, 0x00, 200, 200 ); - TEST_VSETCFGIVL( 72, 11, 0, 0x00, 201, 200 ); - TEST_VSETCFGIVL( 73, 11, 0, 0x00, 199, 199 ); - - #TEST_VSETCFGIVL( 74, 12, 0, 0xf8, 69, 69 ); - #TEST_VSETCFGIVL( 75, 12, 0, 0xf8, 70, 69 ); - #TEST_VSETCFGIVL( 76, 12, 0, 0xf8, 68, 68 ); - - TEST_VSETCFGIVL( 77, 12, 0, 0x00, 184, 184 ); - TEST_VSETCFGIVL( 78, 12, 0, 0x00, 185, 184 ); - TEST_VSETCFGIVL( 79, 12, 0, 0x00, 183, 183 ); - - #TEST_VSETCFGIVL( 80, 13, 0, 0xf8, 63, 63 ); - #TEST_VSETCFGIVL( 81, 13, 0, 0xf8, 64, 63 ); - #TEST_VSETCFGIVL( 82, 13, 0, 0xf8, 62, 62 ); - - TEST_VSETCFGIVL( 83, 13, 0, 0x00, 168, 168 ); - TEST_VSETCFGIVL( 84, 13, 0, 0x00, 169, 168 ); - TEST_VSETCFGIVL( 85, 13, 0, 0x00, 167, 167 ); - - #TEST_VSETCFGIVL( 86, 14, 0, 0xf8, 57, 57 ); - #TEST_VSETCFGIVL( 87, 14, 0, 0xf8, 58, 57 ); - #TEST_VSETCFGIVL( 88, 14, 0, 0xf8, 56, 56 ); - - TEST_VSETCFGIVL( 89, 14, 0, 0x00, 152, 152 ); - TEST_VSETCFGIVL( 90, 14, 0, 0x00, 153, 152 ); - TEST_VSETCFGIVL( 91, 14, 0, 0x00, 151, 151 ); - - #TEST_VSETCFGIVL( 92, 15, 0, 0xf8, 54, 54 ); - #TEST_VSETCFGIVL( 93, 15, 0, 0xf8, 55, 54 ); - #TEST_VSETCFGIVL( 94, 15, 0, 0xf8, 53, 53 ); - - TEST_VSETCFGIVL( 95, 15, 0, 0x00, 144, 144 ); - TEST_VSETCFGIVL( 96, 15, 0, 0x00, 145, 144 ); - TEST_VSETCFGIVL( 97, 15, 0, 0x00, 143, 143 ); - - #TEST_VSETCFGIVL( 98, 16, 0, 0xf8, 51, 51 ); - #TEST_VSETCFGIVL( 99, 16, 0, 0xf8, 52, 51 ); - #TEST_VSETCFGIVL( 100, 16, 0, 0xf8, 50, 50 ); - - TEST_VSETCFGIVL( 101, 16, 0, 0x00, 136, 136 ); - TEST_VSETCFGIVL( 102, 16, 0, 0x00, 137, 136 ); - TEST_VSETCFGIVL( 103, 16, 0, 0x00, 135, 135 ); - - #TEST_VSETCFGIVL( 104, 17, 0, 0xf8, 48, 48 ); - #TEST_VSETCFGIVL( 105, 17, 0, 0xf8, 49, 48 ); - #TEST_VSETCFGIVL( 106, 17, 0, 0xf8, 47, 47 ); - - TEST_VSETCFGIVL( 107, 17, 0, 0x00, 128, 128 ); - TEST_VSETCFGIVL( 108, 17, 0, 0x00, 129, 128 ); - TEST_VSETCFGIVL( 109, 17, 0, 0x00, 127, 127 ); - - #TEST_VSETCFGIVL( 110, 18, 0, 0xf8, 45, 45 ); - #TEST_VSETCFGIVL( 111, 18, 0, 0xf8, 46, 45 ); - #TEST_VSETCFGIVL( 112, 18, 0, 0xf8, 44, 44 ); - - TEST_VSETCFGIVL( 113, 18, 0, 0x00, 120, 120 ); - TEST_VSETCFGIVL( 114, 18, 0, 0x00, 121, 120 ); - TEST_VSETCFGIVL( 115, 18, 0, 0x00, 119, 119 ); - - #TEST_VSETCFGIVL( 116, 19, 0, 0xf8, 42, 42 ); - #TEST_VSETCFGIVL( 117, 19, 0, 0xf8, 43, 42 ); - #TEST_VSETCFGIVL( 118, 19, 0, 0xf8, 41, 41 ); - - TEST_VSETCFGIVL( 119, 19, 0, 0x00, 112, 112 ); - TEST_VSETCFGIVL( 120, 19, 0, 0x00, 113, 112 ); - TEST_VSETCFGIVL( 121, 19, 0, 0x00, 111, 111 ); - - #TEST_VSETCFGIVL( 122, 20, 0, 0xf8, 39, 39 ); - #TEST_VSETCFGIVL( 123, 20, 0, 0xf8, 40, 39 ); - #TEST_VSETCFGIVL( 124, 20, 0, 0xf8, 38, 38 ); - - TEST_VSETCFGIVL( 125, 20, 0, 0x00, 104, 104 ); - TEST_VSETCFGIVL( 126, 20, 0, 0x00, 105, 104 ); - TEST_VSETCFGIVL( 127, 20, 0, 0x00, 103, 103 ); - - #TEST_VSETCFGIVL( 128, 21, 0, 0xf8, 36, 36 ); - #TEST_VSETCFGIVL( 129, 21, 0, 0xf8, 37, 36 ); - #TEST_VSETCFGIVL( 130, 21, 0, 0xf8, 35, 35 ); - - TEST_VSETCFGIVL( 131, 21, 0, 0x00, 96, 96 ); - TEST_VSETCFGIVL( 132, 21, 0, 0x00, 97, 96 ); - TEST_VSETCFGIVL( 133, 21, 0, 0x00, 95, 95 ); - - #TEST_VSETCFGIVL( 134, 22, 0, 0xf8, 36, 36 ); - #TEST_VSETCFGIVL( 135, 22, 0, 0xf8, 37, 36 ); - #TEST_VSETCFGIVL( 136, 22, 0, 0xf8, 35, 35 ); - - TEST_VSETCFGIVL( 137, 22, 0, 0x00, 96, 96 ); - TEST_VSETCFGIVL( 138, 22, 0, 0x00, 97, 96 ); - TEST_VSETCFGIVL( 139, 22, 0, 0x00, 95, 95 ); - - #TEST_VSETCFGIVL( 140, 23, 0, 0xf8, 33, 33 ); - #TEST_VSETCFGIVL( 141, 23, 0, 0xf8, 34, 33 ); - #TEST_VSETCFGIVL( 142, 23, 0, 0xf8, 32, 32 ); - - TEST_VSETCFGIVL( 143, 23, 0, 0x00, 88, 88 ); - TEST_VSETCFGIVL( 144, 23, 0, 0x00, 89, 88 ); - TEST_VSETCFGIVL( 145, 23, 0, 0x00, 87, 87 ); - - #TEST_VSETCFGIVL( 146, 24, 0, 0xf8, 33, 33 ); - #TEST_VSETCFGIVL( 147, 24, 0, 0xf8, 34, 33 ); - #TEST_VSETCFGIVL( 148, 24, 0, 0xf8, 32, 32 ); - - TEST_VSETCFGIVL( 149, 24, 0, 0x00, 88, 88 ); - TEST_VSETCFGIVL( 150, 24, 0, 0x00, 89, 88 ); - TEST_VSETCFGIVL( 151, 24, 0, 0x00, 87, 87 ); - - #TEST_VSETCFGIVL( 152, 25, 0, 0xf8, 30, 30 ); - #TEST_VSETCFGIVL( 153, 25, 0, 0xf8, 31, 30 ); - #TEST_VSETCFGIVL( 154, 25, 0, 0xf8, 29, 29 ); - - TEST_VSETCFGIVL( 155, 25, 0, 0x00, 80, 80 ); - TEST_VSETCFGIVL( 156, 25, 0, 0x00, 81, 80 ); - TEST_VSETCFGIVL( 157, 25, 0, 0x00, 79, 79 ); - - #TEST_VSETCFGIVL( 158, 26, 0, 0xf8, 30, 30 ); - #TEST_VSETCFGIVL( 159, 26, 0, 0xf8, 31, 30 ); - #TEST_VSETCFGIVL( 160, 26, 0, 0xf8, 29, 29 ); - - TEST_VSETCFGIVL( 161, 26, 0, 0x00, 80, 80 ); - TEST_VSETCFGIVL( 162, 26, 0, 0x00, 81, 80 ); - TEST_VSETCFGIVL( 163, 26, 0, 0x00, 79, 79 ); - - #TEST_VSETCFGIVL( 164, 27, 0, 0xf8, 27, 27 ); - #TEST_VSETCFGIVL( 165, 27, 0, 0xf8, 28, 27 ); - #TEST_VSETCFGIVL( 166, 27, 0, 0xf8, 26, 26 ); - - TEST_VSETCFGIVL( 167, 27, 0, 0x00, 72, 72 ); - TEST_VSETCFGIVL( 168, 27, 0, 0x00, 73, 72 ); - TEST_VSETCFGIVL( 169, 27, 0, 0x00, 71, 71 ); - - #TEST_VSETCFGIVL( 170, 28, 0, 0xf8, 27, 27 ); - #TEST_VSETCFGIVL( 171, 28, 0, 0xf8, 28, 27 ); - #TEST_VSETCFGIVL( 172, 28, 0, 0xf8, 26, 26 ); - - TEST_VSETCFGIVL( 173, 28, 0, 0x00, 72, 72 ); - TEST_VSETCFGIVL( 174, 28, 0, 0x00, 73, 72 ); - TEST_VSETCFGIVL( 175, 28, 0, 0x00, 71, 71 ); - - #TEST_VSETCFGIVL( 176, 29, 0, 0xf8, 27, 27 ); - #TEST_VSETCFGIVL( 177, 29, 0, 0xf8, 28, 27 ); - #TEST_VSETCFGIVL( 178, 29, 0, 0xf8, 26, 26 ); - - TEST_VSETCFGIVL( 179, 29, 0, 0x00, 72, 72 ); - TEST_VSETCFGIVL( 180, 29, 0, 0x00, 73, 72 ); - TEST_VSETCFGIVL( 181, 29, 0, 0x00, 71, 71 ); - - #TEST_VSETCFGIVL( 182, 30, 0, 0xf8, 24, 24 ); - #TEST_VSETCFGIVL( 183, 30, 0, 0xf8, 25, 24 ); - #TEST_VSETCFGIVL( 184, 30, 0, 0xf8, 23, 23 ); - - TEST_VSETCFGIVL( 185, 30, 0, 0x00, 64, 64 ); - TEST_VSETCFGIVL( 186, 30, 0, 0x00, 65, 64 ); - TEST_VSETCFGIVL( 187, 30, 0, 0x00, 63, 63 ); - - #TEST_VSETCFGIVL( 188, 31, 0, 0xf8, 24, 24 ); - #TEST_VSETCFGIVL( 189, 31, 0, 0xf8, 25, 24 ); - #TEST_VSETCFGIVL( 190, 31, 0, 0xf8, 23, 23 ); - - TEST_VSETCFGIVL( 191, 31, 0, 0x00, 64, 64 ); - TEST_VSETCFGIVL( 192, 31, 0, 0x00, 65, 64 ); - TEST_VSETCFGIVL( 193, 31, 0, 0x00, 63, 63 ); - - #TEST_VSETCFGIVL( 194, 32, 0, 0xf8, 24, 24 ); - #TEST_VSETCFGIVL( 195, 32, 0, 0xf8, 25, 24 ); - #TEST_VSETCFGIVL( 196, 32, 0, 0xf8, 23, 23 ); - - TEST_VSETCFGIVL( 197, 32, 0, 0x00, 64, 64 ); - TEST_VSETCFGIVL( 198, 32, 0, 0x00, 65, 64 ); - TEST_VSETCFGIVL( 199, 32, 0, 0x00, 63, 63 ); - - #TEST_VSETCFGIVL( 200, 32, 0, 0xf8, 24, 24 ); - #TEST_VSETCFGIVL( 201, 32, 0, 0xf8, 25, 24 ); - #TEST_VSETCFGIVL( 202, 32, 0, 0xf8, 23, 23 ); - - TEST_VSETCFGIVL( 203, 32, 0, 0x00, 64, 64 ); - TEST_VSETCFGIVL( 204, 32, 0, 0x00, 65, 64 ); - TEST_VSETCFGIVL( 205, 32, 0, 0x00, 63, 63 ); - - #TEST_VSETCFGIVL( 206, 32, 1, 0xf8, 24, 24 ); - #TEST_VSETCFGIVL( 207, 32, 1, 0xf8, 25, 24 ); - #TEST_VSETCFGIVL( 208, 32, 1, 0xf8, 23, 23 ); - - TEST_VSETCFGIVL( 209, 32, 1, 0x00, 64, 64 ); - TEST_VSETCFGIVL( 210, 32, 1, 0x00, 65, 64 ); - TEST_VSETCFGIVL( 211, 32, 1, 0x00, 63, 63 ); - - #TEST_VSETCFGIVL( 212, 32, 2, 0xf8, 21, 21 ); - #TEST_VSETCFGIVL( 213, 32, 2, 0xf8, 22, 21 ); - #TEST_VSETCFGIVL( 214, 32, 2, 0xf8, 20, 20 ); - - TEST_VSETCFGIVL( 215, 32, 2, 0x00, 56, 56 ); - TEST_VSETCFGIVL( 216, 32, 2, 0x00, 57, 56 ); - TEST_VSETCFGIVL( 217, 32, 2, 0x00, 55, 55 ); - - #TEST_VSETCFGIVL( 218, 32, 3, 0xf8, 21, 21 ); - #TEST_VSETCFGIVL( 219, 32, 3, 0xf8, 22, 21 ); - #TEST_VSETCFGIVL( 220, 32, 3, 0xf8, 20, 20 ); - - TEST_VSETCFGIVL( 221, 32, 3, 0x00, 56, 56 ); - TEST_VSETCFGIVL( 222, 32, 3, 0x00, 57, 56 ); - TEST_VSETCFGIVL( 223, 32, 3, 0x00, 55, 55 ); - - #TEST_VSETCFGIVL( 224, 32, 4, 0xf8, 21, 21 ); - #TEST_VSETCFGIVL( 225, 32, 4, 0xf8, 22, 21 ); - #TEST_VSETCFGIVL( 226, 32, 4, 0xf8, 20, 20 ); - - TEST_VSETCFGIVL( 227, 32, 4, 0x00, 56, 56 ); - TEST_VSETCFGIVL( 228, 32, 4, 0x00, 57, 56 ); - TEST_VSETCFGIVL( 229, 32, 4, 0x00, 55, 55 ); - - #TEST_VSETCFGIVL( 230, 32, 5, 0xf8, 21, 21 ); - #TEST_VSETCFGIVL( 231, 32, 5, 0xf8, 22, 21 ); - #TEST_VSETCFGIVL( 232, 32, 5, 0xf8, 20, 20 ); - - TEST_VSETCFGIVL( 233, 32, 5, 0x00, 56, 56 ); - TEST_VSETCFGIVL( 234, 32, 5, 0x00, 57, 56 ); - TEST_VSETCFGIVL( 235, 32, 5, 0x00, 55, 55 ); - - #TEST_VSETCFGIVL( 236, 32, 6, 0xf8, 18, 18 ); - #TEST_VSETCFGIVL( 237, 32, 6, 0xf8, 19, 18 ); - #TEST_VSETCFGIVL( 238, 32, 6, 0xf8, 17, 17 ); - - TEST_VSETCFGIVL( 239, 32, 6, 0x00, 48, 48 ); - TEST_VSETCFGIVL( 240, 32, 6, 0x00, 49, 48 ); - TEST_VSETCFGIVL( 241, 32, 6, 0x00, 47, 47 ); - - #TEST_VSETCFGIVL( 242, 32, 7, 0xf8, 18, 18 ); - #TEST_VSETCFGIVL( 243, 32, 7, 0xf8, 19, 18 ); - #TEST_VSETCFGIVL( 244, 32, 7, 0xf8, 17, 17 ); - - TEST_VSETCFGIVL( 245, 32, 7, 0x00, 48, 48 ); - TEST_VSETCFGIVL( 246, 32, 7, 0x00, 49, 48 ); - TEST_VSETCFGIVL( 247, 32, 7, 0x00, 47, 47 ); - - #TEST_VSETCFGIVL( 248, 32, 8, 0xf8, 18, 18 ); - #TEST_VSETCFGIVL( 249, 32, 8, 0xf8, 19, 18 ); - #TEST_VSETCFGIVL( 250, 32, 8, 0xf8, 17, 17 ); - - TEST_VSETCFGIVL( 251, 32, 8, 0x00, 48, 48 ); - TEST_VSETCFGIVL( 252, 32, 8, 0x00, 49, 48 ); - TEST_VSETCFGIVL( 253, 32, 8, 0x00, 47, 47 ); - - #TEST_VSETCFGIVL( 254, 32, 9, 0xf8, 18, 18 ); - #TEST_VSETCFGIVL( 255, 32, 9, 0xf8, 19, 18 ); - #TEST_VSETCFGIVL( 256, 32, 9, 0xf8, 17, 17 ); - - TEST_VSETCFGIVL( 257, 32, 9, 0x00, 48, 48 ); - TEST_VSETCFGIVL( 258, 32, 9, 0x00, 49, 48 ); - TEST_VSETCFGIVL( 259, 32, 9, 0x00, 47, 47 ); - - #TEST_VSETCFGIVL( 260, 32, 10, 0xf8, 18, 18 ); - #TEST_VSETCFGIVL( 261, 32, 10, 0xf8, 19, 18 ); - #TEST_VSETCFGIVL( 262, 32, 10, 0xf8, 17, 17 ); - - TEST_VSETCFGIVL( 263, 32, 10, 0x00, 48, 48 ); - TEST_VSETCFGIVL( 264, 32, 10, 0x00, 49, 48 ); - TEST_VSETCFGIVL( 265, 32, 10, 0x00, 47, 47 ); - - #TEST_VSETCFGIVL( 266, 32, 11, 0xf8, 18, 18 ); - #TEST_VSETCFGIVL( 267, 32, 11, 0xf8, 19, 18 ); - #TEST_VSETCFGIVL( 268, 32, 11, 0xf8, 17, 17 ); - - TEST_VSETCFGIVL( 269, 32, 11, 0x00, 48, 48 ); - TEST_VSETCFGIVL( 270, 32, 11, 0x00, 49, 48 ); - TEST_VSETCFGIVL( 271, 32, 11, 0x00, 47, 47 ); - - #TEST_VSETCFGIVL( 272, 32, 12, 0xf8, 15, 15 ); - #TEST_VSETCFGIVL( 273, 32, 12, 0xf8, 16, 15 ); - #TEST_VSETCFGIVL( 274, 32, 12, 0xf8, 14, 14 ); - - TEST_VSETCFGIVL( 275, 32, 12, 0x00, 40, 40 ); - TEST_VSETCFGIVL( 276, 32, 12, 0x00, 41, 40 ); - TEST_VSETCFGIVL( 277, 32, 12, 0x00, 39, 39 ); - - #TEST_VSETCFGIVL( 278, 32, 13, 0xf8, 15, 15 ); - #TEST_VSETCFGIVL( 279, 32, 13, 0xf8, 16, 15 ); - #TEST_VSETCFGIVL( 280, 32, 13, 0xf8, 14, 14 ); - - TEST_VSETCFGIVL( 281, 32, 13, 0x00, 40, 40 ); - TEST_VSETCFGIVL( 282, 32, 13, 0x00, 41, 40 ); - TEST_VSETCFGIVL( 283, 32, 13, 0x00, 39, 39 ); - - #TEST_VSETCFGIVL( 284, 32, 14, 0xf8, 15, 15 ); - #TEST_VSETCFGIVL( 285, 32, 14, 0xf8, 16, 15 ); - #TEST_VSETCFGIVL( 286, 32, 14, 0xf8, 14, 14 ); - - TEST_VSETCFGIVL( 287, 32, 14, 0x00, 40, 40 ); - TEST_VSETCFGIVL( 288, 32, 14, 0x00, 41, 40 ); - TEST_VSETCFGIVL( 289, 32, 14, 0x00, 39, 39 ); - - #TEST_VSETCFGIVL( 290, 32, 15, 0xf8, 15, 15 ); - #TEST_VSETCFGIVL( 291, 32, 15, 0xf8, 16, 15 ); - #TEST_VSETCFGIVL( 292, 32, 15, 0xf8, 14, 14 ); - - TEST_VSETCFGIVL( 293, 32, 15, 0x00, 40, 40 ); - TEST_VSETCFGIVL( 294, 32, 15, 0x00, 41, 40 ); - TEST_VSETCFGIVL( 295, 32, 15, 0x00, 39, 39 ); - - #TEST_VSETCFGIVL( 296, 32, 16, 0xf8, 15, 15 ); - #TEST_VSETCFGIVL( 297, 32, 16, 0xf8, 16, 15 ); - #TEST_VSETCFGIVL( 298, 32, 16, 0xf8, 14, 14 ); - - TEST_VSETCFGIVL( 299, 32, 16, 0x00, 40, 40 ); - TEST_VSETCFGIVL( 300, 32, 16, 0x00, 41, 40 ); - TEST_VSETCFGIVL( 301, 32, 16, 0x00, 39, 39 ); - - #TEST_VSETCFGIVL( 302, 32, 17, 0xf8, 15, 15 ); - #TEST_VSETCFGIVL( 303, 32, 17, 0xf8, 16, 15 ); - #TEST_VSETCFGIVL( 304, 32, 17, 0xf8, 14, 14 ); - - TEST_VSETCFGIVL( 305, 32, 17, 0x00, 40, 40 ); - TEST_VSETCFGIVL( 306, 32, 17, 0x00, 41, 40 ); - TEST_VSETCFGIVL( 307, 32, 17, 0x00, 39, 39 ); - - #TEST_VSETCFGIVL( 308, 32, 18, 0xf8, 15, 15 ); - #TEST_VSETCFGIVL( 309, 32, 18, 0xf8, 16, 15 ); - #TEST_VSETCFGIVL( 310, 32, 18, 0xf8, 14, 14 ); - - TEST_VSETCFGIVL( 311, 32, 18, 0x00, 40, 40 ); - TEST_VSETCFGIVL( 312, 32, 18, 0x00, 41, 40 ); - TEST_VSETCFGIVL( 313, 32, 18, 0x00, 39, 39 ); - - #TEST_VSETCFGIVL( 314, 32, 19, 0xf8, 15, 15 ); - #TEST_VSETCFGIVL( 315, 32, 19, 0xf8, 16, 15 ); - #TEST_VSETCFGIVL( 316, 32, 19, 0xf8, 14, 14 ); - - TEST_VSETCFGIVL( 317, 32, 19, 0x00, 40, 40 ); - TEST_VSETCFGIVL( 318, 32, 19, 0x00, 41, 40 ); - TEST_VSETCFGIVL( 319, 32, 19, 0x00, 39, 39 ); - - #TEST_VSETCFGIVL( 320, 32, 20, 0xf8, 15, 15 ); - #TEST_VSETCFGIVL( 321, 32, 20, 0xf8, 16, 15 ); - #TEST_VSETCFGIVL( 322, 32, 20, 0xf8, 14, 14 ); - - TEST_VSETCFGIVL( 323, 32, 20, 0x00, 40, 40 ); - TEST_VSETCFGIVL( 324, 32, 20, 0x00, 41, 40 ); - TEST_VSETCFGIVL( 325, 32, 20, 0x00, 39, 39 ); - - #TEST_VSETCFGIVL( 326, 32, 21, 0xf8, 12, 12 ); - #TEST_VSETCFGIVL( 327, 32, 21, 0xf8, 13, 12 ); - #TEST_VSETCFGIVL( 328, 32, 21, 0xf8, 11, 11 ); - - TEST_VSETCFGIVL( 329, 32, 21, 0x00, 32, 32 ); - TEST_VSETCFGIVL( 330, 32, 21, 0x00, 33, 32 ); - TEST_VSETCFGIVL( 331, 32, 21, 0x00, 31, 31 ); - - #TEST_VSETCFGIVL( 332, 32, 22, 0xf8, 12, 12 ); - #TEST_VSETCFGIVL( 333, 32, 22, 0xf8, 13, 12 ); - #TEST_VSETCFGIVL( 334, 32, 22, 0xf8, 11, 11 ); - - TEST_VSETCFGIVL( 335, 32, 22, 0x00, 32, 32 ); - TEST_VSETCFGIVL( 336, 32, 22, 0x00, 33, 32 ); - TEST_VSETCFGIVL( 337, 32, 22, 0x00, 31, 31 ); - - #TEST_VSETCFGIVL( 338, 32, 23, 0xf8, 12, 12 ); - #TEST_VSETCFGIVL( 339, 32, 23, 0xf8, 13, 12 ); - #TEST_VSETCFGIVL( 340, 32, 23, 0xf8, 11, 11 ); - - TEST_VSETCFGIVL( 341, 32, 23, 0x00, 32, 32 ); - TEST_VSETCFGIVL( 342, 32, 23, 0x00, 33, 32 ); - TEST_VSETCFGIVL( 343, 32, 23, 0x00, 31, 31 ); - - #TEST_VSETCFGIVL( 344, 32, 24, 0xf8, 12, 12 ); - #TEST_VSETCFGIVL( 345, 32, 24, 0xf8, 13, 12 ); - #TEST_VSETCFGIVL( 346, 32, 24, 0xf8, 11, 11 ); - - TEST_VSETCFGIVL( 347, 32, 24, 0x00, 32, 32 ); - TEST_VSETCFGIVL( 348, 32, 24, 0x00, 33, 32 ); - TEST_VSETCFGIVL( 349, 32, 24, 0x00, 31, 31 ); - - #TEST_VSETCFGIVL( 350, 32, 25, 0xf8, 12, 12 ); - #TEST_VSETCFGIVL( 351, 32, 25, 0xf8, 13, 12 ); - #TEST_VSETCFGIVL( 352, 32, 25, 0xf8, 11, 11 ); - - TEST_VSETCFGIVL( 353, 32, 25, 0x00, 32, 32 ); - TEST_VSETCFGIVL( 354, 32, 25, 0x00, 33, 32 ); - TEST_VSETCFGIVL( 355, 32, 25, 0x00, 31, 31 ); - - #TEST_VSETCFGIVL( 356, 32, 26, 0xf8, 12, 12 ); - #TEST_VSETCFGIVL( 357, 32, 26, 0xf8, 13, 12 ); - #TEST_VSETCFGIVL( 358, 32, 26, 0xf8, 11, 11 ); - - TEST_VSETCFGIVL( 359, 32, 26, 0x00, 32, 32 ); - TEST_VSETCFGIVL( 360, 32, 26, 0x00, 33, 32 ); - TEST_VSETCFGIVL( 361, 32, 26, 0x00, 31, 31 ); - - #TEST_VSETCFGIVL( 362, 32, 27, 0xf8, 12, 12 ); - #TEST_VSETCFGIVL( 363, 32, 27, 0xf8, 13, 12 ); - #TEST_VSETCFGIVL( 364, 32, 27, 0xf8, 11, 11 ); - - TEST_VSETCFGIVL( 365, 32, 27, 0x00, 32, 32 ); - TEST_VSETCFGIVL( 366, 32, 27, 0x00, 33, 32 ); - TEST_VSETCFGIVL( 367, 32, 27, 0x00, 31, 31 ); - - #TEST_VSETCFGIVL( 368, 32, 28, 0xf8, 12, 12 ); - #TEST_VSETCFGIVL( 369, 32, 28, 0xf8, 13, 12 ); - #TEST_VSETCFGIVL( 370, 32, 28, 0xf8, 11, 11 ); - - TEST_VSETCFGIVL( 371, 32, 28, 0x00, 32, 32 ); - TEST_VSETCFGIVL( 372, 32, 28, 0x00, 33, 32 ); - TEST_VSETCFGIVL( 373, 32, 28, 0x00, 31, 31 ); - - #TEST_VSETCFGIVL( 374, 32, 29, 0xf8, 12, 12 ); - #TEST_VSETCFGIVL( 375, 32, 29, 0xf8, 13, 12 ); - #TEST_VSETCFGIVL( 376, 32, 29, 0xf8, 11, 11 ); - - TEST_VSETCFGIVL( 377, 32, 29, 0x00, 32, 32 ); - TEST_VSETCFGIVL( 378, 32, 29, 0x00, 33, 32 ); - TEST_VSETCFGIVL( 379, 32, 29, 0x00, 31, 31 ); - - #TEST_VSETCFGIVL( 380, 32, 30, 0xf8, 12, 12 ); - #TEST_VSETCFGIVL( 381, 32, 30, 0xf8, 13, 12 ); - #TEST_VSETCFGIVL( 382, 32, 30, 0xf8, 11, 11 ); - - TEST_VSETCFGIVL( 383, 32, 30, 0x00, 32, 32 ); - TEST_VSETCFGIVL( 384, 32, 30, 0x00, 33, 32 ); - TEST_VSETCFGIVL( 385, 32, 30, 0x00, 31, 31 ); - - #TEST_VSETCFGIVL( 386, 32, 31, 0xf8, 12, 12 ); - #TEST_VSETCFGIVL( 387, 32, 31, 0xf8, 13, 12 ); - #TEST_VSETCFGIVL( 388, 32, 31, 0xf8, 11, 11 ); - - TEST_VSETCFGIVL( 389, 32, 31, 0x00, 32, 32 ); - TEST_VSETCFGIVL( 390, 32, 31, 0x00, 33, 32 ); - TEST_VSETCFGIVL( 391, 32, 31, 0x00, 31, 31 ); - - #TEST_VSETCFGIVL( 392, 32, 32, 0xf8, 12, 12 ); - #TEST_VSETCFGIVL( 393, 32, 32, 0xf8, 13, 12 ); - #TEST_VSETCFGIVL( 394, 32, 32, 0xf8, 11, 11 ); - - TEST_VSETCFGIVL( 395, 32, 32, 0x00, 32, 32 ); - TEST_VSETCFGIVL( 396, 32, 32, 0x00, 33, 32 ); - TEST_VSETCFGIVL( 397, 32, 32, 0x00, 31, 31 ); - - #------------------------------------------------------------- - # Source/Destination tests - #------------------------------------------------------------- - - TEST_PASSFAIL - -RVTEST_CODE_END - - .data -RVTEST_DATA_BEGIN - - TEST_DATA - -RVTEST_DATA_END diff --git a/isa/rv64uv/vsetvl.S b/isa/rv64uv/vsetvl.S deleted file mode 100644 index e78020f..0000000 --- a/isa/rv64uv/vsetvl.S +++ /dev/null @@ -1,561 +0,0 @@ -# See LICENSE for license details. - -#***************************************************************************** -# vsetvl.S -#----------------------------------------------------------------------------- -# -# Test vsetvl instruction. -# - -#include "riscv_test.h" -#include "test_macros.h" - -RVTEST_RV64UV -RVTEST_CODE_BEGIN - - #------------------------------------------------------------- - # Arithmetic tests - #------------------------------------------------------------- - - #TEST_VSETVL( 2, 0, 0, 0xf8, 768, 768 ); - #TEST_VSETVL( 3, 0, 0, 0xf8, 769, 768 ); - #TEST_VSETVL( 4, 0, 0, 0xf8, 767, 767 ); - - TEST_VSETVL( 5, 0, 0, 0x00, 2048, 2048 ); - TEST_VSETVL( 6, 0, 0, 0x00, 2049, 2048 ); - TEST_VSETVL( 7, 0, 0, 0x00, 2047, 2047 ); - - #TEST_VSETVL( 8, 1, 0, 0xf8, 768, 768 ); - #TEST_VSETVL( 9, 1, 0, 0xf8, 769, 768 ); - #TEST_VSETVL( 10, 1, 0, 0xf8, 767, 767 ); - - TEST_VSETVL( 11, 1, 0, 0x00, 2048, 2048 ); - TEST_VSETVL( 12, 1, 0, 0x00, 2049, 2048 ); - TEST_VSETVL( 13, 1, 0, 0x00, 2047, 2047 ); - - #TEST_VSETVL( 14, 2, 0, 0xf8, 768, 768 ); - #TEST_VSETVL( 15, 2, 0, 0xf8, 769, 768 ); - #TEST_VSETVL( 16, 2, 0, 0xf8, 767, 767 ); - - TEST_VSETVL( 17, 2, 0, 0x00, 2048, 2048 ); - TEST_VSETVL( 18, 2, 0, 0x00, 2049, 2048 ); - TEST_VSETVL( 19, 2, 0, 0x00, 2047, 2047 ); - - #TEST_VSETVL( 20, 3, 0, 0xf8, 384, 384 ); - #TEST_VSETVL( 21, 3, 0, 0xf8, 385, 384 ); - #TEST_VSETVL( 22, 3, 0, 0xf8, 383, 383 ); - - TEST_VSETVL( 23, 3, 0, 0x00, 1024, 1024 ); - TEST_VSETVL( 24, 3, 0, 0x00, 1025, 1024 ); - TEST_VSETVL( 25, 3, 0, 0x00, 1023, 1023 ); - - #TEST_VSETVL( 26, 4, 0, 0xf8, 255, 255 ); - #TEST_VSETVL( 27, 4, 0, 0xf8, 256, 255 ); - #TEST_VSETVL( 28, 4, 0, 0xf8, 254, 254 ); - - TEST_VSETVL( 29, 4, 0, 0x00, 680, 680 ); - TEST_VSETVL( 30, 4, 0, 0x00, 681, 680 ); - TEST_VSETVL( 31, 4, 0, 0x00, 679, 679 ); - - #TEST_VSETVL( 32, 5, 0, 0xf8, 192, 192 ); - #TEST_VSETVL( 33, 5, 0, 0xf8, 193, 192 ); - #TEST_VSETVL( 34, 5, 0, 0xf8, 191, 191 ); - - TEST_VSETVL( 35, 5, 0, 0x00, 512, 512 ); - TEST_VSETVL( 36, 5, 0, 0x00, 513, 512 ); - TEST_VSETVL( 37, 5, 0, 0x00, 511, 511 ); - - #TEST_VSETVL( 38, 6, 0, 0xf8, 153, 153 ); - #TEST_VSETVL( 39, 6, 0, 0xf8, 154, 153 ); - #TEST_VSETVL( 40, 6, 0, 0xf8, 152, 152 ); - - TEST_VSETVL( 41, 6, 0, 0x00, 408, 408 ); - TEST_VSETVL( 42, 6, 0, 0x00, 409, 408 ); - TEST_VSETVL( 43, 6, 0, 0x00, 407, 407 ); - - #TEST_VSETVL( 44, 7, 0, 0xf8, 126, 126 ); - #TEST_VSETVL( 45, 7, 0, 0xf8, 127, 126 ); - #TEST_VSETVL( 46, 7, 0, 0xf8, 125, 125 ); - - TEST_VSETVL( 47, 7, 0, 0x00, 336, 336 ); - TEST_VSETVL( 48, 7, 0, 0x00, 337, 336 ); - TEST_VSETVL( 49, 7, 0, 0x00, 335, 335 ); - - #TEST_VSETVL( 50, 8, 0, 0xf8, 108, 108 ); - #TEST_VSETVL( 51, 8, 0, 0xf8, 109, 108 ); - #TEST_VSETVL( 52, 8, 0, 0xf8, 107, 107 ); - - TEST_VSETVL( 53, 8, 0, 0x00, 288, 288 ); - TEST_VSETVL( 54, 8, 0, 0x00, 289, 288 ); - TEST_VSETVL( 55, 8, 0, 0x00, 287, 287 ); - - #TEST_VSETVL( 56, 9, 0, 0xf8, 96, 96 ); - #TEST_VSETVL( 57, 9, 0, 0xf8, 97, 96 ); - #TEST_VSETVL( 58, 9, 0, 0xf8, 95, 95 ); - - TEST_VSETVL( 59, 9, 0, 0x00, 256, 256 ); - TEST_VSETVL( 60, 9, 0, 0x00, 257, 256 ); - TEST_VSETVL( 61, 9, 0, 0x00, 255, 255 ); - - #TEST_VSETVL( 62, 10, 0, 0xf8, 84, 84 ); - #TEST_VSETVL( 63, 10, 0, 0xf8, 85, 84 ); - #TEST_VSETVL( 64, 10, 0, 0xf8, 83, 83 ); - - TEST_VSETVL( 65, 10, 0, 0x00, 224, 224 ); - TEST_VSETVL( 66, 10, 0, 0x00, 225, 224 ); - TEST_VSETVL( 67, 10, 0, 0x00, 223, 223 ); - - #TEST_VSETVL( 68, 11, 0, 0xf8, 75, 75 ); - #TEST_VSETVL( 69, 11, 0, 0xf8, 76, 75 ); - #TEST_VSETVL( 70, 11, 0, 0xf8, 74, 74 ); - - TEST_VSETVL( 71, 11, 0, 0x00, 200, 200 ); - TEST_VSETVL( 72, 11, 0, 0x00, 201, 200 ); - TEST_VSETVL( 73, 11, 0, 0x00, 199, 199 ); - - #TEST_VSETVL( 74, 12, 0, 0xf8, 69, 69 ); - #TEST_VSETVL( 75, 12, 0, 0xf8, 70, 69 ); - #TEST_VSETVL( 76, 12, 0, 0xf8, 68, 68 ); - - TEST_VSETVL( 77, 12, 0, 0x00, 184, 184 ); - TEST_VSETVL( 78, 12, 0, 0x00, 185, 184 ); - TEST_VSETVL( 79, 12, 0, 0x00, 183, 183 ); - - #TEST_VSETVL( 80, 13, 0, 0xf8, 63, 63 ); - #TEST_VSETVL( 81, 13, 0, 0xf8, 64, 63 ); - #TEST_VSETVL( 82, 13, 0, 0xf8, 62, 62 ); - - TEST_VSETVL( 83, 13, 0, 0x00, 168, 168 ); - TEST_VSETVL( 84, 13, 0, 0x00, 169, 168 ); - TEST_VSETVL( 85, 13, 0, 0x00, 167, 167 ); - - #TEST_VSETVL( 86, 14, 0, 0xf8, 57, 57 ); - #TEST_VSETVL( 87, 14, 0, 0xf8, 58, 57 ); - #TEST_VSETVL( 88, 14, 0, 0xf8, 56, 56 ); - - TEST_VSETVL( 89, 14, 0, 0x00, 152, 152 ); - TEST_VSETVL( 90, 14, 0, 0x00, 153, 152 ); - TEST_VSETVL( 91, 14, 0, 0x00, 151, 151 ); - - #TEST_VSETVL( 92, 15, 0, 0xf8, 54, 54 ); - #TEST_VSETVL( 93, 15, 0, 0xf8, 55, 54 ); - #TEST_VSETVL( 94, 15, 0, 0xf8, 53, 53 ); - - TEST_VSETVL( 95, 15, 0, 0x00, 144, 144 ); - TEST_VSETVL( 96, 15, 0, 0x00, 145, 144 ); - TEST_VSETVL( 97, 15, 0, 0x00, 143, 143 ); - - #TEST_VSETVL( 98, 16, 0, 0xf8, 51, 51 ); - #TEST_VSETVL( 99, 16, 0, 0xf8, 52, 51 ); - #TEST_VSETVL( 100, 16, 0, 0xf8, 50, 50 ); - - TEST_VSETVL( 101, 16, 0, 0x00, 136, 136 ); - TEST_VSETVL( 102, 16, 0, 0x00, 137, 136 ); - TEST_VSETVL( 103, 16, 0, 0x00, 135, 135 ); - - #TEST_VSETVL( 104, 17, 0, 0xf8, 48, 48 ); - #TEST_VSETVL( 105, 17, 0, 0xf8, 49, 48 ); - #TEST_VSETVL( 106, 17, 0, 0xf8, 47, 47 ); - - TEST_VSETVL( 107, 17, 0, 0x00, 128, 128 ); - TEST_VSETVL( 108, 17, 0, 0x00, 129, 128 ); - TEST_VSETVL( 109, 17, 0, 0x00, 127, 127 ); - - #TEST_VSETVL( 110, 18, 0, 0xf8, 45, 45 ); - #TEST_VSETVL( 111, 18, 0, 0xf8, 46, 45 ); - #TEST_VSETVL( 112, 18, 0, 0xf8, 44, 44 ); - - TEST_VSETVL( 113, 18, 0, 0x00, 120, 120 ); - TEST_VSETVL( 114, 18, 0, 0x00, 121, 120 ); - TEST_VSETVL( 115, 18, 0, 0x00, 119, 119 ); - - #TEST_VSETVL( 116, 19, 0, 0xf8, 42, 42 ); - #TEST_VSETVL( 117, 19, 0, 0xf8, 43, 42 ); - #TEST_VSETVL( 118, 19, 0, 0xf8, 41, 41 ); - - TEST_VSETVL( 119, 19, 0, 0x00, 112, 112 ); - TEST_VSETVL( 120, 19, 0, 0x00, 113, 112 ); - TEST_VSETVL( 121, 19, 0, 0x00, 111, 111 ); - - #TEST_VSETVL( 122, 20, 0, 0xf8, 39, 39 ); - #TEST_VSETVL( 123, 20, 0, 0xf8, 40, 39 ); - #TEST_VSETVL( 124, 20, 0, 0xf8, 38, 38 ); - - TEST_VSETVL( 125, 20, 0, 0x00, 104, 104 ); - TEST_VSETVL( 126, 20, 0, 0x00, 105, 104 ); - TEST_VSETVL( 127, 20, 0, 0x00, 103, 103 ); - - #TEST_VSETVL( 128, 21, 0, 0xf8, 36, 36 ); - #TEST_VSETVL( 129, 21, 0, 0xf8, 37, 36 ); - #TEST_VSETVL( 130, 21, 0, 0xf8, 35, 35 ); - - TEST_VSETVL( 131, 21, 0, 0x00, 96, 96 ); - TEST_VSETVL( 132, 21, 0, 0x00, 97, 96 ); - TEST_VSETVL( 133, 21, 0, 0x00, 95, 95 ); - - #TEST_VSETVL( 134, 22, 0, 0xf8, 36, 36 ); - #TEST_VSETVL( 135, 22, 0, 0xf8, 37, 36 ); - #TEST_VSETVL( 136, 22, 0, 0xf8, 35, 35 ); - - TEST_VSETVL( 137, 22, 0, 0x00, 96, 96 ); - TEST_VSETVL( 138, 22, 0, 0x00, 97, 96 ); - TEST_VSETVL( 139, 22, 0, 0x00, 95, 95 ); - - #TEST_VSETVL( 140, 23, 0, 0xf8, 33, 33 ); - #TEST_VSETVL( 141, 23, 0, 0xf8, 34, 33 ); - #TEST_VSETVL( 142, 23, 0, 0xf8, 32, 32 ); - - TEST_VSETVL( 143, 23, 0, 0x00, 88, 88 ); - TEST_VSETVL( 144, 23, 0, 0x00, 89, 88 ); - TEST_VSETVL( 145, 23, 0, 0x00, 87, 87 ); - - #TEST_VSETVL( 146, 24, 0, 0xf8, 33, 33 ); - #TEST_VSETVL( 147, 24, 0, 0xf8, 34, 33 ); - #TEST_VSETVL( 148, 24, 0, 0xf8, 32, 32 ); - - TEST_VSETVL( 149, 24, 0, 0x00, 88, 88 ); - TEST_VSETVL( 150, 24, 0, 0x00, 89, 88 ); - TEST_VSETVL( 151, 24, 0, 0x00, 87, 87 ); - - #TEST_VSETVL( 152, 25, 0, 0xf8, 30, 30 ); - #TEST_VSETVL( 153, 25, 0, 0xf8, 31, 30 ); - #TEST_VSETVL( 154, 25, 0, 0xf8, 29, 29 ); - - TEST_VSETVL( 155, 25, 0, 0x00, 80, 80 ); - TEST_VSETVL( 156, 25, 0, 0x00, 81, 80 ); - TEST_VSETVL( 157, 25, 0, 0x00, 79, 79 ); - - #TEST_VSETVL( 158, 26, 0, 0xf8, 30, 30 ); - #TEST_VSETVL( 159, 26, 0, 0xf8, 31, 30 ); - #TEST_VSETVL( 160, 26, 0, 0xf8, 29, 29 ); - - TEST_VSETVL( 161, 26, 0, 0x00, 80, 80 ); - TEST_VSETVL( 162, 26, 0, 0x00, 81, 80 ); - TEST_VSETVL( 163, 26, 0, 0x00, 79, 79 ); - - #TEST_VSETVL( 164, 27, 0, 0xf8, 27, 27 ); - #TEST_VSETVL( 165, 27, 0, 0xf8, 28, 27 ); - #TEST_VSETVL( 166, 27, 0, 0xf8, 26, 26 ); - - TEST_VSETVL( 167, 27, 0, 0x00, 72, 72 ); - TEST_VSETVL( 168, 27, 0, 0x00, 73, 72 ); - TEST_VSETVL( 169, 27, 0, 0x00, 71, 71 ); - - #TEST_VSETVL( 170, 28, 0, 0xf8, 27, 27 ); - #TEST_VSETVL( 171, 28, 0, 0xf8, 28, 27 ); - #TEST_VSETVL( 172, 28, 0, 0xf8, 26, 26 ); - - TEST_VSETVL( 173, 28, 0, 0x00, 72, 72 ); - TEST_VSETVL( 174, 28, 0, 0x00, 73, 72 ); - TEST_VSETVL( 175, 28, 0, 0x00, 71, 71 ); - - #TEST_VSETVL( 176, 29, 0, 0xf8, 27, 27 ); - #TEST_VSETVL( 177, 29, 0, 0xf8, 28, 27 ); - #TEST_VSETVL( 178, 29, 0, 0xf8, 26, 26 ); - - TEST_VSETVL( 179, 29, 0, 0x00, 72, 72 ); - TEST_VSETVL( 180, 29, 0, 0x00, 73, 72 ); - TEST_VSETVL( 181, 29, 0, 0x00, 71, 71 ); - - #TEST_VSETVL( 182, 30, 0, 0xf8, 24, 24 ); - #TEST_VSETVL( 183, 30, 0, 0xf8, 25, 24 ); - #TEST_VSETVL( 184, 30, 0, 0xf8, 23, 23 ); - - TEST_VSETVL( 185, 30, 0, 0x00, 64, 64 ); - TEST_VSETVL( 186, 30, 0, 0x00, 65, 64 ); - TEST_VSETVL( 187, 30, 0, 0x00, 63, 63 ); - - #TEST_VSETVL( 188, 31, 0, 0xf8, 24, 24 ); - #TEST_VSETVL( 189, 31, 0, 0xf8, 25, 24 ); - #TEST_VSETVL( 190, 31, 0, 0xf8, 23, 23 ); - - TEST_VSETVL( 191, 31, 0, 0x00, 64, 64 ); - TEST_VSETVL( 192, 31, 0, 0x00, 65, 64 ); - TEST_VSETVL( 193, 31, 0, 0x00, 63, 63 ); - - #TEST_VSETVL( 194, 32, 0, 0xf8, 24, 24 ); - #TEST_VSETVL( 195, 32, 0, 0xf8, 25, 24 ); - #TEST_VSETVL( 196, 32, 0, 0xf8, 23, 23 ); - - TEST_VSETVL( 197, 32, 0, 0x00, 64, 64 ); - TEST_VSETVL( 198, 32, 0, 0x00, 65, 64 ); - TEST_VSETVL( 199, 32, 0, 0x00, 63, 63 ); - - #TEST_VSETVL( 200, 32, 0, 0xf8, 24, 24 ); - #TEST_VSETVL( 201, 32, 0, 0xf8, 25, 24 ); - #TEST_VSETVL( 202, 32, 0, 0xf8, 23, 23 ); - - TEST_VSETVL( 203, 32, 0, 0x00, 64, 64 ); - TEST_VSETVL( 204, 32, 0, 0x00, 65, 64 ); - TEST_VSETVL( 205, 32, 0, 0x00, 63, 63 ); - - #TEST_VSETVL( 206, 32, 1, 0xf8, 24, 24 ); - #TEST_VSETVL( 207, 32, 1, 0xf8, 25, 24 ); - #TEST_VSETVL( 208, 32, 1, 0xf8, 23, 23 ); - - TEST_VSETVL( 209, 32, 1, 0x00, 64, 64 ); - TEST_VSETVL( 210, 32, 1, 0x00, 65, 64 ); - TEST_VSETVL( 211, 32, 1, 0x00, 63, 63 ); - - #TEST_VSETVL( 212, 32, 2, 0xf8, 21, 21 ); - #TEST_VSETVL( 213, 32, 2, 0xf8, 22, 21 ); - #TEST_VSETVL( 214, 32, 2, 0xf8, 20, 20 ); - - TEST_VSETVL( 215, 32, 2, 0x00, 56, 56 ); - TEST_VSETVL( 216, 32, 2, 0x00, 57, 56 ); - TEST_VSETVL( 217, 32, 2, 0x00, 55, 55 ); - - #TEST_VSETVL( 218, 32, 3, 0xf8, 21, 21 ); - #TEST_VSETVL( 219, 32, 3, 0xf8, 22, 21 ); - #TEST_VSETVL( 220, 32, 3, 0xf8, 20, 20 ); - - TEST_VSETVL( 221, 32, 3, 0x00, 56, 56 ); - TEST_VSETVL( 222, 32, 3, 0x00, 57, 56 ); - TEST_VSETVL( 223, 32, 3, 0x00, 55, 55 ); - - #TEST_VSETVL( 224, 32, 4, 0xf8, 21, 21 ); - #TEST_VSETVL( 225, 32, 4, 0xf8, 22, 21 ); - #TEST_VSETVL( 226, 32, 4, 0xf8, 20, 20 ); - - TEST_VSETVL( 227, 32, 4, 0x00, 56, 56 ); - TEST_VSETVL( 228, 32, 4, 0x00, 57, 56 ); - TEST_VSETVL( 229, 32, 4, 0x00, 55, 55 ); - - #TEST_VSETVL( 230, 32, 5, 0xf8, 21, 21 ); - #TEST_VSETVL( 231, 32, 5, 0xf8, 22, 21 ); - #TEST_VSETVL( 232, 32, 5, 0xf8, 20, 20 ); - - TEST_VSETVL( 233, 32, 5, 0x00, 56, 56 ); - TEST_VSETVL( 234, 32, 5, 0x00, 57, 56 ); - TEST_VSETVL( 235, 32, 5, 0x00, 55, 55 ); - - #TEST_VSETVL( 236, 32, 6, 0xf8, 18, 18 ); - #TEST_VSETVL( 237, 32, 6, 0xf8, 19, 18 ); - #TEST_VSETVL( 238, 32, 6, 0xf8, 17, 17 ); - - TEST_VSETVL( 239, 32, 6, 0x00, 48, 48 ); - TEST_VSETVL( 240, 32, 6, 0x00, 49, 48 ); - TEST_VSETVL( 241, 32, 6, 0x00, 47, 47 ); - - #TEST_VSETVL( 242, 32, 7, 0xf8, 18, 18 ); - #TEST_VSETVL( 243, 32, 7, 0xf8, 19, 18 ); - #TEST_VSETVL( 244, 32, 7, 0xf8, 17, 17 ); - - TEST_VSETVL( 245, 32, 7, 0x00, 48, 48 ); - TEST_VSETVL( 246, 32, 7, 0x00, 49, 48 ); - TEST_VSETVL( 247, 32, 7, 0x00, 47, 47 ); - - #TEST_VSETVL( 248, 32, 8, 0xf8, 18, 18 ); - #TEST_VSETVL( 249, 32, 8, 0xf8, 19, 18 ); - #TEST_VSETVL( 250, 32, 8, 0xf8, 17, 17 ); - - TEST_VSETVL( 251, 32, 8, 0x00, 48, 48 ); - TEST_VSETVL( 252, 32, 8, 0x00, 49, 48 ); - TEST_VSETVL( 253, 32, 8, 0x00, 47, 47 ); - - #TEST_VSETVL( 254, 32, 9, 0xf8, 18, 18 ); - #TEST_VSETVL( 255, 32, 9, 0xf8, 19, 18 ); - #TEST_VSETVL( 256, 32, 9, 0xf8, 17, 17 ); - - TEST_VSETVL( 257, 32, 9, 0x00, 48, 48 ); - TEST_VSETVL( 258, 32, 9, 0x00, 49, 48 ); - TEST_VSETVL( 259, 32, 9, 0x00, 47, 47 ); - - #TEST_VSETVL( 260, 32, 10, 0xf8, 18, 18 ); - #TEST_VSETVL( 261, 32, 10, 0xf8, 19, 18 ); - #TEST_VSETVL( 262, 32, 10, 0xf8, 17, 17 ); - - TEST_VSETVL( 263, 32, 10, 0x00, 48, 48 ); - TEST_VSETVL( 264, 32, 10, 0x00, 49, 48 ); - TEST_VSETVL( 265, 32, 10, 0x00, 47, 47 ); - - #TEST_VSETVL( 266, 32, 11, 0xf8, 18, 18 ); - #TEST_VSETVL( 267, 32, 11, 0xf8, 19, 18 ); - #TEST_VSETVL( 268, 32, 11, 0xf8, 17, 17 ); - - TEST_VSETVL( 269, 32, 11, 0x00, 48, 48 ); - TEST_VSETVL( 270, 32, 11, 0x00, 49, 48 ); - TEST_VSETVL( 271, 32, 11, 0x00, 47, 47 ); - - #TEST_VSETVL( 272, 32, 12, 0xf8, 15, 15 ); - #TEST_VSETVL( 273, 32, 12, 0xf8, 16, 15 ); - #TEST_VSETVL( 274, 32, 12, 0xf8, 14, 14 ); - - TEST_VSETVL( 275, 32, 12, 0x00, 40, 40 ); - TEST_VSETVL( 276, 32, 12, 0x00, 41, 40 ); - TEST_VSETVL( 277, 32, 12, 0x00, 39, 39 ); - - #TEST_VSETVL( 278, 32, 13, 0xf8, 15, 15 ); - #TEST_VSETVL( 279, 32, 13, 0xf8, 16, 15 ); - #TEST_VSETVL( 280, 32, 13, 0xf8, 14, 14 ); - - TEST_VSETVL( 281, 32, 13, 0x00, 40, 40 ); - TEST_VSETVL( 282, 32, 13, 0x00, 41, 40 ); - TEST_VSETVL( 283, 32, 13, 0x00, 39, 39 ); - - #TEST_VSETVL( 284, 32, 14, 0xf8, 15, 15 ); - #TEST_VSETVL( 285, 32, 14, 0xf8, 16, 15 ); - #TEST_VSETVL( 286, 32, 14, 0xf8, 14, 14 ); - - TEST_VSETVL( 287, 32, 14, 0x00, 40, 40 ); - TEST_VSETVL( 288, 32, 14, 0x00, 41, 40 ); - TEST_VSETVL( 289, 32, 14, 0x00, 39, 39 ); - - #TEST_VSETVL( 290, 32, 15, 0xf8, 15, 15 ); - #TEST_VSETVL( 291, 32, 15, 0xf8, 16, 15 ); - #TEST_VSETVL( 292, 32, 15, 0xf8, 14, 14 ); - - TEST_VSETVL( 293, 32, 15, 0x00, 40, 40 ); - TEST_VSETVL( 294, 32, 15, 0x00, 41, 40 ); - TEST_VSETVL( 295, 32, 15, 0x00, 39, 39 ); - - #TEST_VSETVL( 296, 32, 16, 0xf8, 15, 15 ); - #TEST_VSETVL( 297, 32, 16, 0xf8, 16, 15 ); - #TEST_VSETVL( 298, 32, 16, 0xf8, 14, 14 ); - - TEST_VSETVL( 299, 32, 16, 0x00, 40, 40 ); - TEST_VSETVL( 300, 32, 16, 0x00, 41, 40 ); - TEST_VSETVL( 301, 32, 16, 0x00, 39, 39 ); - - #TEST_VSETVL( 302, 32, 17, 0xf8, 15, 15 ); - #TEST_VSETVL( 303, 32, 17, 0xf8, 16, 15 ); - #TEST_VSETVL( 304, 32, 17, 0xf8, 14, 14 ); - - TEST_VSETVL( 305, 32, 17, 0x00, 40, 40 ); - TEST_VSETVL( 306, 32, 17, 0x00, 41, 40 ); - TEST_VSETVL( 307, 32, 17, 0x00, 39, 39 ); - - #TEST_VSETVL( 308, 32, 18, 0xf8, 15, 15 ); - #TEST_VSETVL( 309, 32, 18, 0xf8, 16, 15 ); - #TEST_VSETVL( 310, 32, 18, 0xf8, 14, 14 ); - - TEST_VSETVL( 311, 32, 18, 0x00, 40, 40 ); - TEST_VSETVL( 312, 32, 18, 0x00, 41, 40 ); - TEST_VSETVL( 313, 32, 18, 0x00, 39, 39 ); - - #TEST_VSETVL( 314, 32, 19, 0xf8, 15, 15 ); - #TEST_VSETVL( 315, 32, 19, 0xf8, 16, 15 ); - #TEST_VSETVL( 316, 32, 19, 0xf8, 14, 14 ); - - TEST_VSETVL( 317, 32, 19, 0x00, 40, 40 ); - TEST_VSETVL( 318, 32, 19, 0x00, 41, 40 ); - TEST_VSETVL( 319, 32, 19, 0x00, 39, 39 ); - - #TEST_VSETVL( 320, 32, 20, 0xf8, 15, 15 ); - #TEST_VSETVL( 321, 32, 20, 0xf8, 16, 15 ); - #TEST_VSETVL( 322, 32, 20, 0xf8, 14, 14 ); - - TEST_VSETVL( 323, 32, 20, 0x00, 40, 40 ); - TEST_VSETVL( 324, 32, 20, 0x00, 41, 40 ); - TEST_VSETVL( 325, 32, 20, 0x00, 39, 39 ); - - #TEST_VSETVL( 326, 32, 21, 0xf8, 12, 12 ); - #TEST_VSETVL( 327, 32, 21, 0xf8, 13, 12 ); - #TEST_VSETVL( 328, 32, 21, 0xf8, 11, 11 ); - - TEST_VSETVL( 329, 32, 21, 0x00, 32, 32 ); - TEST_VSETVL( 330, 32, 21, 0x00, 33, 32 ); - TEST_VSETVL( 331, 32, 21, 0x00, 31, 31 ); - - #TEST_VSETVL( 332, 32, 22, 0xf8, 12, 12 ); - #TEST_VSETVL( 333, 32, 22, 0xf8, 13, 12 ); - #TEST_VSETVL( 334, 32, 22, 0xf8, 11, 11 ); - - TEST_VSETVL( 335, 32, 22, 0x00, 32, 32 ); - TEST_VSETVL( 336, 32, 22, 0x00, 33, 32 ); - TEST_VSETVL( 337, 32, 22, 0x00, 31, 31 ); - - #TEST_VSETVL( 338, 32, 23, 0xf8, 12, 12 ); - #TEST_VSETVL( 339, 32, 23, 0xf8, 13, 12 ); - #TEST_VSETVL( 340, 32, 23, 0xf8, 11, 11 ); - - TEST_VSETVL( 341, 32, 23, 0x00, 32, 32 ); - TEST_VSETVL( 342, 32, 23, 0x00, 33, 32 ); - TEST_VSETVL( 343, 32, 23, 0x00, 31, 31 ); - - #TEST_VSETVL( 344, 32, 24, 0xf8, 12, 12 ); - #TEST_VSETVL( 345, 32, 24, 0xf8, 13, 12 ); - #TEST_VSETVL( 346, 32, 24, 0xf8, 11, 11 ); - - TEST_VSETVL( 347, 32, 24, 0x00, 32, 32 ); - TEST_VSETVL( 348, 32, 24, 0x00, 33, 32 ); - TEST_VSETVL( 349, 32, 24, 0x00, 31, 31 ); - - #TEST_VSETVL( 350, 32, 25, 0xf8, 12, 12 ); - #TEST_VSETVL( 351, 32, 25, 0xf8, 13, 12 ); - #TEST_VSETVL( 352, 32, 25, 0xf8, 11, 11 ); - - TEST_VSETVL( 353, 32, 25, 0x00, 32, 32 ); - TEST_VSETVL( 354, 32, 25, 0x00, 33, 32 ); - TEST_VSETVL( 355, 32, 25, 0x00, 31, 31 ); - - #TEST_VSETVL( 356, 32, 26, 0xf8, 12, 12 ); - #TEST_VSETVL( 357, 32, 26, 0xf8, 13, 12 ); - #TEST_VSETVL( 358, 32, 26, 0xf8, 11, 11 ); - - TEST_VSETVL( 359, 32, 26, 0x00, 32, 32 ); - TEST_VSETVL( 360, 32, 26, 0x00, 33, 32 ); - TEST_VSETVL( 361, 32, 26, 0x00, 31, 31 ); - - #TEST_VSETVL( 362, 32, 27, 0xf8, 12, 12 ); - #TEST_VSETVL( 363, 32, 27, 0xf8, 13, 12 ); - #TEST_VSETVL( 364, 32, 27, 0xf8, 11, 11 ); - - TEST_VSETVL( 365, 32, 27, 0x00, 32, 32 ); - TEST_VSETVL( 366, 32, 27, 0x00, 33, 32 ); - TEST_VSETVL( 367, 32, 27, 0x00, 31, 31 ); - - #TEST_VSETVL( 368, 32, 28, 0xf8, 12, 12 ); - #TEST_VSETVL( 369, 32, 28, 0xf8, 13, 12 ); - #TEST_VSETVL( 370, 32, 28, 0xf8, 11, 11 ); - - TEST_VSETVL( 371, 32, 28, 0x00, 32, 32 ); - TEST_VSETVL( 372, 32, 28, 0x00, 33, 32 ); - TEST_VSETVL( 373, 32, 28, 0x00, 31, 31 ); - - #TEST_VSETVL( 374, 32, 29, 0xf8, 12, 12 ); - #TEST_VSETVL( 375, 32, 29, 0xf8, 13, 12 ); - #TEST_VSETVL( 376, 32, 29, 0xf8, 11, 11 ); - - TEST_VSETVL( 377, 32, 29, 0x00, 32, 32 ); - TEST_VSETVL( 378, 32, 29, 0x00, 33, 32 ); - TEST_VSETVL( 379, 32, 29, 0x00, 31, 31 ); - - #TEST_VSETVL( 380, 32, 30, 0xf8, 12, 12 ); - #TEST_VSETVL( 381, 32, 30, 0xf8, 13, 12 ); - #TEST_VSETVL( 382, 32, 30, 0xf8, 11, 11 ); - - TEST_VSETVL( 383, 32, 30, 0x00, 32, 32 ); - TEST_VSETVL( 384, 32, 30, 0x00, 33, 32 ); - TEST_VSETVL( 385, 32, 30, 0x00, 31, 31 ); - - #TEST_VSETVL( 386, 32, 31, 0xf8, 12, 12 ); - #TEST_VSETVL( 387, 32, 31, 0xf8, 13, 12 ); - #TEST_VSETVL( 388, 32, 31, 0xf8, 11, 11 ); - - TEST_VSETVL( 389, 32, 31, 0x00, 32, 32 ); - TEST_VSETVL( 390, 32, 31, 0x00, 33, 32 ); - TEST_VSETVL( 391, 32, 31, 0x00, 31, 31 ); - - #TEST_VSETVL( 392, 32, 32, 0xf8, 12, 12 ); - #TEST_VSETVL( 393, 32, 32, 0xf8, 13, 12 ); - #TEST_VSETVL( 394, 32, 32, 0xf8, 11, 11 ); - - TEST_VSETVL( 395, 32, 32, 0x00, 32, 32 ); - TEST_VSETVL( 396, 32, 32, 0x00, 33, 32 ); - TEST_VSETVL( 397, 32, 32, 0x00, 31, 31 ); - - #------------------------------------------------------------- - # Source/Destination tests - #------------------------------------------------------------- - - TEST_PASSFAIL - -RVTEST_CODE_END - - .data -RVTEST_DATA_BEGIN - - TEST_DATA - -RVTEST_DATA_END diff --git a/isa/rv64uv/vvadd_branch.S b/isa/rv64uv/vvadd_branch.S deleted file mode 100644 index e95dc82..0000000 --- a/isa/rv64uv/vvadd_branch.S +++ /dev/null @@ -1,144 +0,0 @@ -# See LICENSE for license details. - -#***************************************************************************** -# vvadd_branch.S -#----------------------------------------------------------------------------- -# -# Test vvadd branch. -# - -#include "riscv_test.h" -#include "test_macros.h" - -RVTEST_RV64UV -RVTEST_CODE_BEGIN - - vsetcfg 32,0 - li a3,4 - vsetvl a3,a3 - - la a3,src1 - la a4,src2 - vld vx2,a3 - vld vx3,a4 - lui a0,%hi(vtcode1) - vf %lo(vtcode1)(a0) - la a5,dest - vsd vx2,a5 - fence - - ld a1,0(a5) - li a2,8 - li TESTNUM,2 - bne a1,a2,fail - ld a1,8(a5) - li a2, 6 - li TESTNUM,3 - bne a1,a2,fail - ld a1,16(a5) - li a2, 4 - li TESTNUM,4 - bne a1,a2,fail - li a2, 2 - ld a1,24(a5) - li TESTNUM,5 - bne a1,a2,fail - - la a3,src1 - vld vx4,a3 - li a4, 3 - vmsv vx5,a4 - lui a0,%hi(vtcode2) - vf %lo(vtcode2)(a0) - la a5,dest - vsd vx4,a5 - fence - - ld a1,0(a5) - li a2,1 - li TESTNUM,6 - bne a1,a2,fail - ld a1,8(a5) - li a2,2 - li TESTNUM,7 - bne a1,a2,fail - ld a1,16(a5) - li a2,0 - li TESTNUM,8 - bne a1,a2,fail - ld a1,24(a5) - li a2,0 - li TESTNUM,9 - bne a1,a2,fail - - la a3,src2 - vld vx5,a3 - lui a0,%hi(vtcode3) - vf %lo(vtcode3)(a0) - la a5,dest - vsd vx5,a5 - fence - - ld a1,0(a5) - li a2,4 - li TESTNUM,6 - bne a1,a2,fail - ld a1,8(a5) - li a2,3 - li TESTNUM,7 - bne a1,a2,fail - ld a1,16(a5) - li a2,2 - li TESTNUM,8 - bne a1,a2,fail - ld a1,24(a5) - li a2,1 - li TESTNUM,9 - bne a1,a2,fail - - j pass - -vtcode1: - beq x2, x2, end - add x2,x2,x3 -end: add x2, x3, x3 - stop - -vtcode2: - blt x4, x5, end2 - add x4, x0, x0 -end2: add x4, x4, x0 - stop - -vtcode3: - bge x5, x0, end3 - add x5, x0, x0 -end3: add x5, x5,x0 - stop - - TEST_PASSFAIL - -RVTEST_CODE_END - - .data -RVTEST_DATA_BEGIN - - TEST_DATA - -src1: - .dword 1 - .dword 2 - .dword 3 - .dword 4 -src2: - .dword 4 - .dword 3 - .dword 2 - .dword 1 -dest: - .dword 0xdeadbeefcafebabe - .dword 0xdeadbeefcafebabe - .dword 0xdeadbeefcafebabe - .dword 0xdeadbeefcafebabe - -RVTEST_DATA_END diff --git a/isa/rv64uv/vvadd_d.S b/isa/rv64uv/vvadd_d.S deleted file mode 100644 index d17e6e0..0000000 --- a/isa/rv64uv/vvadd_d.S +++ /dev/null @@ -1,133 +0,0 @@ -# See LICENSE for license details. - -#***************************************************************************** -# vvadd_d.S -#----------------------------------------------------------------------------- -# -# Test vvadd d. -# - -#include "riscv_test.h" -#include "test_macros.h" - -RVTEST_RV64UV -RVTEST_CODE_BEGIN - - vsetcfg 32,0 - li a3,4 - vsetvl a3,a3 - - la a3,src1 - la a4,src2 - vld vx2,a3 - vld vx3,a4 - lui a0,%hi(vtcode1) - vf %lo(vtcode1)(a0) - la a5,dest - vsd vx2,a5 - fence - - ld a1,0(a5) - li a2,5 - li TESTNUM,2 - bne a1,a2,fail - ld a1,8(a5) - li TESTNUM,3 - bne a1,a2,fail - ld a1,16(a5) - li TESTNUM,4 - bne a1,a2,fail - ld a1,24(a5) - li TESTNUM,5 - bne a1,a2,fail - - la a3,src1 - vld vx4,a3 - lui a0,%hi(vtcode2) - vf %lo(vtcode2)(a0) - la a5,dest - vsd vx4,a5 - fence - - ld a1,0(a5) - li a2,1 - li TESTNUM,6 - bne a1,a2,fail - ld a1,8(a5) - li a2,2 - li TESTNUM,7 - bne a1,a2,fail - ld a1,16(a5) - li a2,3 - li TESTNUM,8 - bne a1,a2,fail - ld a1,24(a5) - li a2,4 - li TESTNUM,9 - bne a1,a2,fail - - la a3,src2 - vld vx5,a3 - lui a0,%hi(vtcode3) - vf %lo(vtcode3)(a0) - la a5,dest - vsd vx5,a5 - fence - - ld a1,0(a5) - li a2,4 - li TESTNUM,6 - bne a1,a2,fail - ld a1,8(a5) - li a2,3 - li TESTNUM,7 - bne a1,a2,fail - ld a1,16(a5) - li a2,2 - li TESTNUM,8 - bne a1,a2,fail - ld a1,24(a5) - li a2,1 - li TESTNUM,9 - bne a1,a2,fail - - j pass - -vtcode1: - add x2,x2,x3 - stop - -vtcode2: - add a0,a0,x0 - stop - -vtcode3: - add a1,a1,x0 - stop - - TEST_PASSFAIL - -RVTEST_CODE_END - - .data -RVTEST_DATA_BEGIN - - TEST_DATA - -src1: - .dword 1 - .dword 2 - .dword 3 - .dword 4 -src2: - .dword 4 - .dword 3 - .dword 2 - .dword 1 -dest: - .dword 0xdeadbeefcafebabe - .dword 0xdeadbeefcafebabe - .dword 0xdeadbeefcafebabe - .dword 0xdeadbeefcafebabe - -RVTEST_DATA_END diff --git a/isa/rv64uv/vvadd_fd.S b/isa/rv64uv/vvadd_fd.S deleted file mode 100644 index 6a7c4b2..0000000 --- a/isa/rv64uv/vvadd_fd.S +++ /dev/null @@ -1,79 +0,0 @@ -# See LICENSE for license details. - -#***************************************************************************** -# vvadd_fd.S -#----------------------------------------------------------------------------- -# -# Test vvadd fd. -# - -#include "riscv_test.h" -#include "test_macros.h" - -RVTEST_RV64UV -RVTEST_CODE_BEGIN - - vsetcfg 32,32 - li a3,4 - vsetvl a3,a3 - - la a3,src1 - la a4,src2 - vfld vf2,a3 - vfld vf3,a4 - lui a0,%hi(vtcode) - vf %lo(vtcode)(a0) - la a5,dest - vfsd vf2,a5 - fence - la a6,result - ld a1,0(a5) - ld a2,0(a6) - li TESTNUM,2 - bne a1,a2,fail - ld a1,8(a5) - li TESTNUM,3 - bne a1,a2,fail - ld a1,16(a5) - li TESTNUM,4 - bne a1,a2,fail - ld a1,24(a5) - li TESTNUM,5 - bne a1,a2,fail - j pass - -vtcode: - fadd.d f2,f2,f3 - stop - - TEST_PASSFAIL - -RVTEST_CODE_END - - .data -RVTEST_DATA_BEGIN - - TEST_DATA - -src1: - .double 0.1 - .double 0.2 - .double 0.3 - .double 0.4 -src2: - .double 0.4 - .double 0.3 - .double 0.2 - .double 0.1 -dest: - .dword 0xdeadbeefcafebabe - .dword 0xdeadbeefcafebabe - .dword 0xdeadbeefcafebabe - .dword 0xdeadbeefcafebabe -result: - .double 0.5 - .double 0.5 - .double 0.5 - .double 0.5 - -RVTEST_DATA_END diff --git a/isa/rv64uv/vvadd_fw.S b/isa/rv64uv/vvadd_fw.S deleted file mode 100644 index 2dcf9ff..0000000 --- a/isa/rv64uv/vvadd_fw.S +++ /dev/null @@ -1,79 +0,0 @@ -# See LICENSE for license details. - -#***************************************************************************** -# vvadd_fw.S -#----------------------------------------------------------------------------- -# -# Test vvadd fw. -# - -#include "riscv_test.h" -#include "test_macros.h" - -RVTEST_RV64UV -RVTEST_CODE_BEGIN - - vsetcfg 32,32 - li a3,4 - vsetvl a3,a3 - - la a3,src1 - la a4,src2 - vflw vf2,a3 - vflw vf3,a4 - lui a0,%hi(vtcode) - vf %lo(vtcode)(a0) - la a5,dest - vfsw vf2,a5 - fence - la a6,result - lw a1,0(a5) - lw a2,0(a6) - li TESTNUM,2 - bne a1,a2,fail - lw a1,4(a5) - li TESTNUM,3 - bne a1,a2,fail - lw a1,8(a5) - li TESTNUM,4 - bne a1,a2,fail - lw a1,12(a5) - li TESTNUM,5 - bne a1,a2,fail - j pass - -vtcode: - fadd.s f2,f2,f3 - stop - - TEST_PASSFAIL - -RVTEST_CODE_END - - .data -RVTEST_DATA_BEGIN - - TEST_DATA - -src1: - .single 0.1 - .single 0.2 - .single 0.3 - .single 0.4 -src2: - .single 0.4 - .single 0.3 - .single 0.2 - .single 0.1 -dest: - .word 0xdeadbeef - .word 0xdeadbeef - .word 0xdeadbeef - .word 0xdeadbeef -result: - .single 0.5 - .single 0.5 - .single 0.5 - .single 0.5 - -RVTEST_DATA_END diff --git a/isa/rv64uv/vvadd_packed.S b/isa/rv64uv/vvadd_packed.S deleted file mode 100644 index fb02a72..0000000 --- a/isa/rv64uv/vvadd_packed.S +++ /dev/null @@ -1,107 +0,0 @@ -# See LICENSE for license details. - -#***************************************************************************** -# vvadd_packed.S -#----------------------------------------------------------------------------- -# -# Test packed half-precision vvadd -# - -#include "riscv_test.h" -#include "test_macros.h" - -RVTEST_RV64UV -RVTEST_CODE_BEGIN - - li x1, 12 # number of test elements - move x10, x1 - vsetucfg x2, 0x2 - vsetcfg x2, 3, 1 -loop: - vsetvl x4, x1 - la x2, addr - vmsv vx1, x2 - la x3, test - vf 0(x3) - sub x1, x1, x4 - bnez x1, loop - fence - j check - -enable_accel: - csrr x2, status - ori x2, x2, 0x100 - csrw status, x2 - # test if set - csrr x2, status - andi x2, x2, 0x100 - beqz x2, fail - ret - -enable_fp: - csrr x2, status - ori x2, x2, 0x10 - csrw status, x2 - # test if set - csrr x2, status - andi x2, x2, 0x10 - beqz x2, fail - ret - -test: - utidx x2 - slli x2, x2, 2 - add x1, x1, x2 - flh f0, 0(x1) - fmul.h f0, f0, f0 - fsh f0, 0(x1) - stop - -check: - la x2, addr - la x4, expc - -check_loop: - lw x3, 0(x4) - lw x1, 0(x2) - bne x1, x3, fail - addi x10, x10, -1 - addi x4, x4, 0x4 - addi x2, x2, 0x4 - bnez x10, check_loop - j pass - - TEST_PASSFAIL - -.data -RVTEST_DATA_BEGIN - - TEST_DATA - -addr: .word 0x4000 - .word 0x4400 - .word 0x4800 - .word 0x5000 - .word 0x4001 - .word 0x4401 - .word 0x4801 - .word 0x5001 - .word 0x4002 - .word 0x4402 - .word 0x4802 - .word 0x5002 - -expc: .word 0x4400 - .word 0x4c00 - .word 0x5400 - .word 0x6400 - .word 0x4402 - .word 0x4c02 - .word 0x5402 - .word 0x6402 - .word 0x4404 - .word 0x4c04 - .word 0x5404 - .word 0x6404 - -RVTEST_DATA_END diff --git a/isa/rv64uv/vvadd_w.S b/isa/rv64uv/vvadd_w.S deleted file mode 100644 index 842f265..0000000 --- a/isa/rv64uv/vvadd_w.S +++ /dev/null @@ -1,88 +0,0 @@ -# See LICENSE for license details. - -#***************************************************************************** -# vvadd_w.S -#----------------------------------------------------------------------------- -# -# Test vvadd w. -# - -#include "riscv_test.h" -#include "test_macros.h" - -RVTEST_RV64UV -RVTEST_CODE_BEGIN - - vsetcfg 32,0 - li a3,9 - vsetvl a3,a3 - - la a3,src1 - la a4,src2 - vlw vx2,a3 - vlw vx3,a4 - lui a0,%hi(vtcode) - vf %lo(vtcode)(a0) - la a5,dest - vsw vx2,a5 - fence - lw a1,0(a5) - li a2,10 - li TESTNUM,2 - bne a1,a2,fail - lw a1,4(a5) - li TESTNUM,3 - bne a1,a2,fail - lw a1,8(a5) - li TESTNUM,4 - bne a1,a2,fail - lw a1,12(a5) - li TESTNUM,5 - bne a1,a2,fail - j pass - -vtcode: - addw x2,x2,x3 - stop - - TEST_PASSFAIL - -RVTEST_CODE_END - - .data -RVTEST_DATA_BEGIN - - TEST_DATA - -src1: - .word 1 - .word 2 - .word 3 - .word 4 - .word 5 - .word 6 - .word 7 - .word 8 - .word 9 -src2: - .word 9 - .word 8 - .word 7 - .word 6 - .word 5 - .word 4 - .word 3 - .word 2 - .word 1 -dest: - .word 0xdeadbeef - .word 0xdeadbeef - .word 0xdeadbeef - .word 0xdeadbeef - .word 0xdeadbeef - .word 0xdeadbeef - .word 0xdeadbeef - .word 0xdeadbeef - .word 0xdeadbeef - -RVTEST_DATA_END diff --git a/isa/rv64uv/vvmul_d.S b/isa/rv64uv/vvmul_d.S deleted file mode 100644 index 433b80e..0000000 --- a/isa/rv64uv/vvmul_d.S +++ /dev/null @@ -1,76 +0,0 @@ -# See LICENSE for license details. - -#***************************************************************************** -# vvmul_d.S -#----------------------------------------------------------------------------- -# -# Test vvmul d. -# - -#include "riscv_test.h" -#include "test_macros.h" - -RVTEST_RV64UV -RVTEST_CODE_BEGIN - - vsetcfg 32,0 - li a3,4 - vsetvl a3,a3 - - la a3,src1 - la a4,src2 - vld vx2,a3 - vld vx3,a4 - lui a0,%hi(vtcode) - vf %lo(vtcode)(a0) - la a5,dest - vsd vx2,a5 - fence - ld a1,0(a5) - li a2,4 - li TESTNUM,2 - bne a1,a2,fail - ld a1,8(a5) - li a2,6 - li TESTNUM,3 - bne a1,a2,fail - ld a1,16(a5) - li a2,6 - li TESTNUM,4 - bne a1,a2,fail - ld a1,24(a5) - li a2,4 - li TESTNUM,5 - bne a1,a2,fail - j pass - -vtcode: - mul x2,x2,x3 - stop - - TEST_PASSFAIL - -RVTEST_CODE_END - - .data -RVTEST_DATA_BEGIN - - TEST_DATA - -src1: - .dword 1 - .dword 2 - .dword 3 - .dword 4 -src2: - .dword 4 - .dword 3 - .dword 2 - .dword 1 -dest: - .dword 0xdeadbeefcafebabe - .dword 0xdeadbeefcafebabe - .dword 0xdeadbeefcafebabe - .dword 0xdeadbeefcafebabe - -RVTEST_DATA_END diff --git a/isa/rv64uv/wakeup.S b/isa/rv64uv/wakeup.S deleted file mode 100644 index 357682a..0000000 --- a/isa/rv64uv/wakeup.S +++ /dev/null @@ -1,160 +0,0 @@ -# See LICENSE for license details. - -#***************************************************************************** -# wakeup.S -#----------------------------------------------------------------------------- -# -# Test wakeup. -# - -#include "riscv_test.h" -#include "test_macros.h" - -RVTEST_RV64UV -RVTEST_CODE_BEGIN - - # make sure these don't choke at the beginning - fence - fence rw,io - fence io,rw - - # this shouldn't go through since app vl is zero - la a3,src1 - la a4,src2 - vld vx2,a3 - vld vx3,a4 - lui a0,%hi(vtcode1) - vf %lo(vtcode1)(a0) - la a5,dest - vsd vx2,a5 - fence - - ld a1,0(a5) - li a2,0xdeadbeefcafebabe - li TESTNUM,2 - bne a1,a2,fail - ld a1,8(a5) - li TESTNUM,3 - bne a1,a2,fail - ld a1,16(a5) - li TESTNUM,4 - bne a1,a2,fail - ld a1,24(a5) - li TESTNUM,5 - bne a1,a2,fail - - # check default hw vector length, which is 32 - li a3, 32 - vsetvl a3, a3 - li a0, 32 - li TESTNUM, 6 - bne a3, a0, fail - - li a3, 33 - vsetvl a3, a3 - li a0, 32 - li TESTNUM, 7 - bne a3, a0, fail - - li a3, 31 - vsetvl a3, a3 - li a0, 31 - li TESTNUM, 8 - bne a3, a0, fail - - # now do some vector stuff without vsetcfg - vsetvl x0, x0 - - li a3, 4 - la a4,src1 - la a5,src2 - vsetvl a3, a3 - vld vx2,a4 - vld vx3,a5 - lui a0,%hi(vtcode1) - vf %lo(vtcode1)(a0) - la a5,dest - vsd vx2,a5 - fence - - ld a1,0(a5) - li a2,5 - li TESTNUM,9 - bne a1,a2,fail - ld a1,8(a5) - li TESTNUM,10 - bne a1,a2,fail - ld a1,16(a5) - li TESTNUM,11 - bne a1,a2,fail - ld a1,24(a5) - li TESTNUM,12 - bne a1,a2,fail - - # initialize dest memory - li a3, 0xdeadbeefcafebabe - sd a3, 0(a5) - sd a3, 8(a5) - sd a3, 16(a5) - sd a3, 24(a5) - - # test app vl zero again - li a3, 0 - vsetvl a3, a3 - - la a3,src1 - la a4,src2 - vld vx2,a3 - vld vx3,a4 - lui a0,%hi(vtcode1) - vf %lo(vtcode1)(a0) - la a5,dest - vsd vx2,a5 - fence - - ld a1,0(a5) - li a2,0xdeadbeefcafebabe - li TESTNUM,13 - bne a1,a2,fail - ld a1,8(a5) - li TESTNUM,14 - bne a1,a2,fail - ld a1,16(a5) - li TESTNUM,15 - bne a1,a2,fail - ld a1,24(a5) - li TESTNUM,16 - bne a1,a2,fail - - j pass - -vtcode1: - add x2,x2,x3 - stop - - TEST_PASSFAIL - -RVTEST_CODE_END - - .data -RVTEST_DATA_BEGIN - - TEST_DATA - -src1: - .dword 1 - .dword 2 - .dword 3 - .dword 4 -src2: - .dword 4 - .dword 3 - .dword 2 - .dword 1 -dest: - .dword 0xdeadbeefcafebabe - .dword 0xdeadbeefcafebabe - .dword 0xdeadbeefcafebabe - .dword 0xdeadbeefcafebabe - -RVTEST_DATA_END diff --git a/mt/Makefile b/mt/Makefile index 9829927..e4a8bfd 100755 --- a/mt/Makefile +++ b/mt/Makefile @@ -77,7 +77,7 @@ bmarks = $(bmarks_vvadd) $(bmarks_matmul) RISCV_PREFIX=riscv64-unknown-elf- RISCV_GCC = $(RISCV_PREFIX)gcc -RISCV_GCC_OPTS = -Wa,-march=RVIMAFDXhwacha -std=gnu99 -O2 -ffast-math +RISCV_GCC_OPTS = -std=gnu99 -O2 -ffast-math RISCV_LINK = $(RISCV_GCC) -T $(common)/test.ld $(incs) RISCV_LINK_OPTS = -nostdlib -nostartfiles -ffast-math -lc RISCV_OBJDUMP = $(RISCV_PREFIX)objdump --disassemble-all --disassemble-zeroes --section=.text --section=.text.startup --section=.data |