diff --git a/Source/FilteringFunctions/FilteringFunctions.c b/Source/FilteringFunctions/FilteringFunctions.c index eef61ff2e..e1b456ab5 100644 --- a/Source/FilteringFunctions/FilteringFunctions.c +++ b/Source/FilteringFunctions/FilteringFunctions.c @@ -71,9 +71,11 @@ #include "arm_correlate_q31.c" #include "arm_correlate_q7.c" #include "arm_fir_decimate_f32.c" +#include "arm_fir_decimate_f64.c" #include "arm_fir_decimate_fast_q15.c" #include "arm_fir_decimate_fast_q31.c" #include "arm_fir_decimate_init_f32.c" +#include "arm_fir_decimate_init_f64.c" #include "arm_fir_decimate_init_q15.c" #include "arm_fir_decimate_init_q31.c" #include "arm_fir_decimate_q15.c" diff --git a/Source/FilteringFunctions/arm_fir_decimate_f64.c b/Source/FilteringFunctions/arm_fir_decimate_f64.c index 3dcb93206..62e621642 100644 --- a/Source/FilteringFunctions/arm_fir_decimate_f64.c +++ b/Source/FilteringFunctions/arm_fir_decimate_f64.c @@ -32,85 +32,6 @@ @ingroup groupFilters */ -/** - @defgroup FIR_decimate Finite Impulse Response (FIR) Decimator - - These functions combine an FIR filter together with a decimator. - They are used in multirate systems for reducing the sample rate of a signal without introducing aliasing distortion. - Conceptually, the functions are equivalent to the block diagram below: - \image html FIRDecimator.gif "Components included in the FIR Decimator functions" - When decimating by a factor of M, the signal should be prefiltered by a lowpass filter with a normalized - cutoff frequency of 1/M in order to prevent aliasing distortion. - The user of the function is responsible for providing the filter coefficients. - - The FIR decimator functions provided in the CMSIS DSP Library combine the FIR filter and the decimator in an efficient manner. - Instead of calculating all of the FIR filter outputs and discarding M-1 out of every M, only the - samples output by the decimator are computed. - The functions operate on blocks of input and output data. - pSrc points to an array of blockSize input values and - pDst points to an array of blockSize/M output values. - In order to have an integer number of output samples blockSize - must always be a multiple of the decimation factor M. - - The library provides separate functions for Q15, Q31 and floating-point data types. - - @par Algorithm: - The FIR portion of the algorithm uses the standard form filter: -
-      y[n] = b[0] * x[n] + b[1] * x[n-1] + b[2] * x[n-2] + ...+ b[numTaps-1] * x[n-numTaps+1]
-  
- where, b[n] are the filter coefficients. - @par - The pCoeffs points to a coefficient array of size numTaps. - Coefficients are stored in time reversed order. - @par -
-      {b[numTaps-1], b[numTaps-2], b[N-2], ..., b[1], b[0]}
-  
- @par - pState points to a state array of size numTaps + blockSize - 1. - Samples in the state buffer are stored in the order: - @par -
-      {x[n-numTaps+1], x[n-numTaps], x[n-numTaps-1], x[n-numTaps-2]....x[0], x[1], ..., x[blockSize-1]}
-  
- The state variables are updated after each block of data is processed, the coefficients are untouched. - - @par Instance Structure - The coefficients and state variables for a filter are stored together in an instance data structure. - A separate instance structure must be defined for each filter. - Coefficient arrays may be shared among several instances while state variable array should be allocated separately. - There are separate instance structure declarations for each of the 3 supported data types. - - @par Initialization Functions - There is also an associated initialization function for each data type. - The initialization function performs the following operations: - - Sets the values of the internal structure fields. - - Zeros out the values in the state buffer. - - Checks to make sure that the size of the input is a multiple of the decimation factor. - To do this manually without calling the init function, assign the follow subfields of the instance structure: - numTaps, pCoeffs, M (decimation factor), pState. Also set all of the values in pState to zero. - @par - Use of the initialization function is optional. - However, if the initialization function is used, then the instance structure cannot be placed into a const data section. - To place an instance structure into a const data section, the instance structure must be manually initialized. - The code below statically initializes each of the 3 different data type filter instance structures -
-      arm_fir_decimate_instance_f64 S = {M, numTaps, pCoeffs, pState};
-      arm_fir_decimate_instance_q31 S = {M, numTaps, pCoeffs, pState};
-      arm_fir_decimate_instance_q15 S = {M, numTaps, pCoeffs, pState};
-  
- where M is the decimation factor; numTaps is the number of filter coefficients in the filter; - pCoeffs is the address of the coefficient buffer; - pState is the address of the state buffer. - Be sure to set the values in the state buffer to zeros when doing static initialization. - - @par Fixed-Point Behavior - Care must be taken when using the fixed-point versions of the FIR decimate filter functions. - In particular, the overflow and saturation behavior of the accumulator used in each function must be considered. - Refer to the function specific documentation below for usage guidelines. - */ - /** @addtogroup FIR_decimate @{ @@ -168,10 +89,10 @@ void arm_fir_decimate_f64( } while (--i); /* Set accumulators to zero */ - acc0 = 0.0f; - acc1 = 0.0f; - acc2 = 0.0f; - acc3 = 0.0f; + acc0 = 0.0; + acc1 = 0.0; + acc2 = 0.0; + acc3 = 0.0; /* Initialize state pointer for all the samples */ px0 = pState; @@ -314,7 +235,7 @@ void arm_fir_decimate_f64( } while (--i); /* Set accumulator to zero */ - acc0 = 0.0f; + acc0 = 0.0; /* Initialize state pointer */ px0 = pState; diff --git a/Testing/Include/Tests/DECIMF64.h b/Testing/Include/Tests/DECIMF64.h new file mode 100644 index 000000000..a5805d706 --- /dev/null +++ b/Testing/Include/Tests/DECIMF64.h @@ -0,0 +1,34 @@ +#include "Test.h" +#include "Pattern.h" + +#include "dsp/filtering_functions.h" + +class DECIMF64:public Client::Suite + { + public: + DECIMF64(Testing::testID_t id); + virtual void setUp(Testing::testID_t,std::vector& params,Client::PatternMgr *mgr); + virtual void tearDown(Testing::testID_t,Client::PatternMgr *mgr); + private: + #include "DECIMF64_decl.h" + + Client::Pattern input; + Client::Pattern coefs; + Client::Pattern config; + + Client::LocalPattern output; + Client::LocalPattern state; + // Reference patterns are not loaded when we are in dump mode + Client::RefPattern ref; + + + arm_fir_decimate_instance_f64 S; + //arm_fir_interpolate_instance_f64 SI; + + int q; + int numTaps; + int blocksize; + int refsize; + + arm_status status; + }; diff --git a/Testing/PatternGeneration/Decimate.py b/Testing/PatternGeneration/Decimate.py index 7c48f92f4..619abd59b 100755 --- a/Testing/PatternGeneration/Decimate.py +++ b/Testing/PatternGeneration/Decimate.py @@ -46,6 +46,11 @@ def generateBenchmarkPatterns(): configq31=Tools.Config(PATTERNDIR,PARAMDIR,"q31") configq15=Tools.Config(PATTERNDIR,PARAMDIR,"q15") + configf32.setOverwrite(False) + configf16.setOverwrite(False) + configq31.setOverwrite(False) + configq15.setOverwrite(False) + writeBenchmarks(configf32) @@ -144,7 +149,6 @@ def writeDecimateTests(config,startNb,format): ref += [q,len(b),len(samples),len(output)] - config.writeInput(startNb, allsamples) config.writeInput(startNb, allcoefs,"Coefs") config.writeReference(startNb, alloutput) @@ -224,15 +228,23 @@ def generateTestPatterns(): PATTERNDIR = os.path.join("Patterns","DSP","Filtering","DECIM","DECIM") PARAMDIR = os.path.join("Parameters","DSP","Filtering","DECIM","DECIM") + configf64=Tools.Config(PATTERNDIR,PARAMDIR,"f64") configf32=Tools.Config(PATTERNDIR,PARAMDIR,"f32") configf16=Tools.Config(PATTERNDIR,PARAMDIR,"f16") configq31=Tools.Config(PATTERNDIR,PARAMDIR,"q31") configq15=Tools.Config(PATTERNDIR,PARAMDIR,"q15") - writeTests(configf32,0) - writeTests(configf16,16) - writeTests(configq31,31) - writeTests(configq15,15) + configf64.setOverwrite(False) + configf32.setOverwrite(False) + configf16.setOverwrite(False) + configq31.setOverwrite(False) + configq15.setOverwrite(False) + + writeTests(configf64,Tools.F64) + #writeTests(configf32,0) + #writeTests(configf16,16) + #writeTests(configq31,31) + #writeTests(configq15,15) if __name__ == '__main__': generateBenchmarkPatterns() diff --git a/Testing/PatternGeneration/FIR.py b/Testing/PatternGeneration/FIR.py index bfd0d7301..6c1451eb9 100755 --- a/Testing/PatternGeneration/FIR.py +++ b/Testing/PatternGeneration/FIR.py @@ -105,6 +105,7 @@ def generatePatterns(): configq15=Tools.Config(PATTERNDIR,PARAMDIR,"q15") configq7=Tools.Config(PATTERNDIR,PARAMDIR,"q7") + configf64.setOverwrite(False) configf32.setOverwrite(False) configf16.setOverwrite(False) configq31.setOverwrite(False) diff --git a/Testing/Patterns/DSP/Filtering/DECIM/DECIMF64/Coefs2_f64.txt b/Testing/Patterns/DSP/Filtering/DECIM/DECIMF64/Coefs2_f64.txt new file mode 100644 index 000000000..4f28eaf77 --- /dev/null +++ b/Testing/Patterns/DSP/Filtering/DECIM/DECIMF64/Coefs2_f64.txt @@ -0,0 +1,602 @@ +D +300 +// 0.166667 +0x3fc5555555555555 +// 0.083333 +0x3fb5555555555555 +// 0.222222 +0x3fcc71c71c71c71c +// 0.166667 +0x3fc5555555555555 +// 0.111111 +0x3fbc71c71c71c71c +// 0.055556 +0x3fac71c71c71c71c +// 0.238095 +0x3fce79e79e79e79e +// 0.190476 +0x3fc8618618618618 +// 0.142857 +0x3fc2492492492492 +// 0.095238 +0x3fb8618618618618 +// 0.047619 +0x3fa8618618618618 +// 0.200000 +0x3fc999999999999a +// 0.133333 +0x3fc1111111111111 +// 0.066667 +0x3fb1111111111111 +// 0.238095 +0x3fce79e79e79e79e +// 0.190476 +0x3fc8618618618618 +// 0.142857 +0x3fc2492492492492 +// 0.095238 +0x3fb8618618618618 +// 0.047619 +0x3fa8618618618618 +// 0.250000 +0x3fd0000000000000 +// 0.208333 +0x3fcaaaaaaaaaaaab +// 0.166667 +0x3fc5555555555555 +// 0.125000 +0x3fc0000000000000 +// 0.083333 +0x3fb5555555555555 +// 0.041667 +0x3fa5555555555555 +// 0.166667 +0x3fc5555555555555 +// 0.083333 +0x3fb5555555555555 +// 0.222222 +0x3fcc71c71c71c71c +// 0.166667 +0x3fc5555555555555 +// 0.111111 +0x3fbc71c71c71c71c +// 0.055556 +0x3fac71c71c71c71c +// 0.238095 +0x3fce79e79e79e79e +// 0.190476 +0x3fc8618618618618 +// 0.142857 +0x3fc2492492492492 +// 0.095238 +0x3fb8618618618618 +// 0.047619 +0x3fa8618618618618 +// 0.200000 +0x3fc999999999999a +// 0.133333 +0x3fc1111111111111 +// 0.066667 +0x3fb1111111111111 +// 0.238095 +0x3fce79e79e79e79e +// 0.190476 +0x3fc8618618618618 +// 0.142857 +0x3fc2492492492492 +// 0.095238 +0x3fb8618618618618 +// 0.047619 +0x3fa8618618618618 +// 0.250000 +0x3fd0000000000000 +// 0.208333 +0x3fcaaaaaaaaaaaab +// 0.166667 +0x3fc5555555555555 +// 0.125000 +0x3fc0000000000000 +// 0.083333 +0x3fb5555555555555 +// 0.041667 +0x3fa5555555555555 +// 0.166667 +0x3fc5555555555555 +// 0.083333 +0x3fb5555555555555 +// 0.222222 +0x3fcc71c71c71c71c +// 0.166667 +0x3fc5555555555555 +// 0.111111 +0x3fbc71c71c71c71c +// 0.055556 +0x3fac71c71c71c71c +// 0.238095 +0x3fce79e79e79e79e +// 0.190476 +0x3fc8618618618618 +// 0.142857 +0x3fc2492492492492 +// 0.095238 +0x3fb8618618618618 +// 0.047619 +0x3fa8618618618618 +// 0.200000 +0x3fc999999999999a +// 0.133333 +0x3fc1111111111111 +// 0.066667 +0x3fb1111111111111 +// 0.238095 +0x3fce79e79e79e79e +// 0.190476 +0x3fc8618618618618 +// 0.142857 +0x3fc2492492492492 +// 0.095238 +0x3fb8618618618618 +// 0.047619 +0x3fa8618618618618 +// 0.250000 +0x3fd0000000000000 +// 0.208333 +0x3fcaaaaaaaaaaaab +// 0.166667 +0x3fc5555555555555 +// 0.125000 +0x3fc0000000000000 +// 0.083333 +0x3fb5555555555555 +// 0.041667 +0x3fa5555555555555 +// 0.166667 +0x3fc5555555555555 +// 0.083333 +0x3fb5555555555555 +// 0.222222 +0x3fcc71c71c71c71c +// 0.166667 +0x3fc5555555555555 +// 0.111111 +0x3fbc71c71c71c71c +// 0.055556 +0x3fac71c71c71c71c +// 0.238095 +0x3fce79e79e79e79e +// 0.190476 +0x3fc8618618618618 +// 0.142857 +0x3fc2492492492492 +// 0.095238 +0x3fb8618618618618 +// 0.047619 +0x3fa8618618618618 +// 0.200000 +0x3fc999999999999a +// 0.133333 +0x3fc1111111111111 +// 0.066667 +0x3fb1111111111111 +// 0.238095 +0x3fce79e79e79e79e +// 0.190476 +0x3fc8618618618618 +// 0.142857 +0x3fc2492492492492 +// 0.095238 +0x3fb8618618618618 +// 0.047619 +0x3fa8618618618618 +// 0.250000 +0x3fd0000000000000 +// 0.208333 +0x3fcaaaaaaaaaaaab +// 0.166667 +0x3fc5555555555555 +// 0.125000 +0x3fc0000000000000 +// 0.083333 +0x3fb5555555555555 +// 0.041667 +0x3fa5555555555555 +// 0.166667 +0x3fc5555555555555 +// 0.083333 +0x3fb5555555555555 +// 0.222222 +0x3fcc71c71c71c71c +// 0.166667 +0x3fc5555555555555 +// 0.111111 +0x3fbc71c71c71c71c +// 0.055556 +0x3fac71c71c71c71c +// 0.238095 +0x3fce79e79e79e79e +// 0.190476 +0x3fc8618618618618 +// 0.142857 +0x3fc2492492492492 +// 0.095238 +0x3fb8618618618618 +// 0.047619 +0x3fa8618618618618 +// 0.200000 +0x3fc999999999999a +// 0.133333 +0x3fc1111111111111 +// 0.066667 +0x3fb1111111111111 +// 0.238095 +0x3fce79e79e79e79e +// 0.190476 +0x3fc8618618618618 +// 0.142857 +0x3fc2492492492492 +// 0.095238 +0x3fb8618618618618 +// 0.047619 +0x3fa8618618618618 +// 0.250000 +0x3fd0000000000000 +// 0.208333 +0x3fcaaaaaaaaaaaab +// 0.166667 +0x3fc5555555555555 +// 0.125000 +0x3fc0000000000000 +// 0.083333 +0x3fb5555555555555 +// 0.041667 +0x3fa5555555555555 +// 0.166667 +0x3fc5555555555555 +// 0.083333 +0x3fb5555555555555 +// 0.222222 +0x3fcc71c71c71c71c +// 0.166667 +0x3fc5555555555555 +// 0.111111 +0x3fbc71c71c71c71c +// 0.055556 +0x3fac71c71c71c71c +// 0.238095 +0x3fce79e79e79e79e +// 0.190476 +0x3fc8618618618618 +// 0.142857 +0x3fc2492492492492 +// 0.095238 +0x3fb8618618618618 +// 0.047619 +0x3fa8618618618618 +// 0.200000 +0x3fc999999999999a +// 0.133333 +0x3fc1111111111111 +// 0.066667 +0x3fb1111111111111 +// 0.238095 +0x3fce79e79e79e79e +// 0.190476 +0x3fc8618618618618 +// 0.142857 +0x3fc2492492492492 +// 0.095238 +0x3fb8618618618618 +// 0.047619 +0x3fa8618618618618 +// 0.250000 +0x3fd0000000000000 +// 0.208333 +0x3fcaaaaaaaaaaaab +// 0.166667 +0x3fc5555555555555 +// 0.125000 +0x3fc0000000000000 +// 0.083333 +0x3fb5555555555555 +// 0.041667 +0x3fa5555555555555 +// 0.166667 +0x3fc5555555555555 +// 0.083333 +0x3fb5555555555555 +// 0.222222 +0x3fcc71c71c71c71c +// 0.166667 +0x3fc5555555555555 +// 0.111111 +0x3fbc71c71c71c71c +// 0.055556 +0x3fac71c71c71c71c +// 0.238095 +0x3fce79e79e79e79e +// 0.190476 +0x3fc8618618618618 +// 0.142857 +0x3fc2492492492492 +// 0.095238 +0x3fb8618618618618 +// 0.047619 +0x3fa8618618618618 +// 0.200000 +0x3fc999999999999a +// 0.133333 +0x3fc1111111111111 +// 0.066667 +0x3fb1111111111111 +// 0.238095 +0x3fce79e79e79e79e +// 0.190476 +0x3fc8618618618618 +// 0.142857 +0x3fc2492492492492 +// 0.095238 +0x3fb8618618618618 +// 0.047619 +0x3fa8618618618618 +// 0.250000 +0x3fd0000000000000 +// 0.208333 +0x3fcaaaaaaaaaaaab +// 0.166667 +0x3fc5555555555555 +// 0.125000 +0x3fc0000000000000 +// 0.083333 +0x3fb5555555555555 +// 0.041667 +0x3fa5555555555555 +// 0.166667 +0x3fc5555555555555 +// 0.083333 +0x3fb5555555555555 +// 0.222222 +0x3fcc71c71c71c71c +// 0.166667 +0x3fc5555555555555 +// 0.111111 +0x3fbc71c71c71c71c +// 0.055556 +0x3fac71c71c71c71c +// 0.238095 +0x3fce79e79e79e79e +// 0.190476 +0x3fc8618618618618 +// 0.142857 +0x3fc2492492492492 +// 0.095238 +0x3fb8618618618618 +// 0.047619 +0x3fa8618618618618 +// 0.200000 +0x3fc999999999999a +// 0.133333 +0x3fc1111111111111 +// 0.066667 +0x3fb1111111111111 +// 0.238095 +0x3fce79e79e79e79e +// 0.190476 +0x3fc8618618618618 +// 0.142857 +0x3fc2492492492492 +// 0.095238 +0x3fb8618618618618 +// 0.047619 +0x3fa8618618618618 +// 0.250000 +0x3fd0000000000000 +// 0.208333 +0x3fcaaaaaaaaaaaab +// 0.166667 +0x3fc5555555555555 +// 0.125000 +0x3fc0000000000000 +// 0.083333 +0x3fb5555555555555 +// 0.041667 +0x3fa5555555555555 +// 0.166667 +0x3fc5555555555555 +// 0.083333 +0x3fb5555555555555 +// 0.222222 +0x3fcc71c71c71c71c +// 0.166667 +0x3fc5555555555555 +// 0.111111 +0x3fbc71c71c71c71c +// 0.055556 +0x3fac71c71c71c71c +// 0.238095 +0x3fce79e79e79e79e +// 0.190476 +0x3fc8618618618618 +// 0.142857 +0x3fc2492492492492 +// 0.095238 +0x3fb8618618618618 +// 0.047619 +0x3fa8618618618618 +// 0.200000 +0x3fc999999999999a +// 0.133333 +0x3fc1111111111111 +// 0.066667 +0x3fb1111111111111 +// 0.238095 +0x3fce79e79e79e79e +// 0.190476 +0x3fc8618618618618 +// 0.142857 +0x3fc2492492492492 +// 0.095238 +0x3fb8618618618618 +// 0.047619 +0x3fa8618618618618 +// 0.250000 +0x3fd0000000000000 +// 0.208333 +0x3fcaaaaaaaaaaaab +// 0.166667 +0x3fc5555555555555 +// 0.125000 +0x3fc0000000000000 +// 0.083333 +0x3fb5555555555555 +// 0.041667 +0x3fa5555555555555 +// 0.166667 +0x3fc5555555555555 +// 0.083333 +0x3fb5555555555555 +// 0.222222 +0x3fcc71c71c71c71c +// 0.166667 +0x3fc5555555555555 +// 0.111111 +0x3fbc71c71c71c71c +// 0.055556 +0x3fac71c71c71c71c +// 0.238095 +0x3fce79e79e79e79e +// 0.190476 +0x3fc8618618618618 +// 0.142857 +0x3fc2492492492492 +// 0.095238 +0x3fb8618618618618 +// 0.047619 +0x3fa8618618618618 +// 0.200000 +0x3fc999999999999a +// 0.133333 +0x3fc1111111111111 +// 0.066667 +0x3fb1111111111111 +// 0.238095 +0x3fce79e79e79e79e +// 0.190476 +0x3fc8618618618618 +// 0.142857 +0x3fc2492492492492 +// 0.095238 +0x3fb8618618618618 +// 0.047619 +0x3fa8618618618618 +// 0.250000 +0x3fd0000000000000 +// 0.208333 +0x3fcaaaaaaaaaaaab +// 0.166667 +0x3fc5555555555555 +// 0.125000 +0x3fc0000000000000 +// 0.083333 +0x3fb5555555555555 +// 0.041667 +0x3fa5555555555555 +// 0.166667 +0x3fc5555555555555 +// 0.083333 +0x3fb5555555555555 +// 0.222222 +0x3fcc71c71c71c71c +// 0.166667 +0x3fc5555555555555 +// 0.111111 +0x3fbc71c71c71c71c +// 0.055556 +0x3fac71c71c71c71c +// 0.238095 +0x3fce79e79e79e79e +// 0.190476 +0x3fc8618618618618 +// 0.142857 +0x3fc2492492492492 +// 0.095238 +0x3fb8618618618618 +// 0.047619 +0x3fa8618618618618 +// 0.200000 +0x3fc999999999999a +// 0.133333 +0x3fc1111111111111 +// 0.066667 +0x3fb1111111111111 +// 0.238095 +0x3fce79e79e79e79e +// 0.190476 +0x3fc8618618618618 +// 0.142857 +0x3fc2492492492492 +// 0.095238 +0x3fb8618618618618 +// 0.047619 +0x3fa8618618618618 +// 0.250000 +0x3fd0000000000000 +// 0.208333 +0x3fcaaaaaaaaaaaab +// 0.166667 +0x3fc5555555555555 +// 0.125000 +0x3fc0000000000000 +// 0.083333 +0x3fb5555555555555 +// 0.041667 +0x3fa5555555555555 +// 0.166667 +0x3fc5555555555555 +// 0.083333 +0x3fb5555555555555 +// 0.222222 +0x3fcc71c71c71c71c +// 0.166667 +0x3fc5555555555555 +// 0.111111 +0x3fbc71c71c71c71c +// 0.055556 +0x3fac71c71c71c71c +// 0.238095 +0x3fce79e79e79e79e +// 0.190476 +0x3fc8618618618618 +// 0.142857 +0x3fc2492492492492 +// 0.095238 +0x3fb8618618618618 +// 0.047619 +0x3fa8618618618618 +// 0.200000 +0x3fc999999999999a +// 0.133333 +0x3fc1111111111111 +// 0.066667 +0x3fb1111111111111 +// 0.238095 +0x3fce79e79e79e79e +// 0.190476 +0x3fc8618618618618 +// 0.142857 +0x3fc2492492492492 +// 0.095238 +0x3fb8618618618618 +// 0.047619 +0x3fa8618618618618 +// 0.250000 +0x3fd0000000000000 +// 0.208333 +0x3fcaaaaaaaaaaaab +// 0.166667 +0x3fc5555555555555 +// 0.125000 +0x3fc0000000000000 +// 0.083333 +0x3fb5555555555555 +// 0.041667 +0x3fa5555555555555 diff --git a/Testing/Patterns/DSP/Filtering/DECIM/DECIMF64/Coefs3_f64.txt b/Testing/Patterns/DSP/Filtering/DECIM/DECIMF64/Coefs3_f64.txt new file mode 100644 index 000000000..cf47cf945 --- /dev/null +++ b/Testing/Patterns/DSP/Filtering/DECIM/DECIMF64/Coefs3_f64.txt @@ -0,0 +1,2090 @@ +D +1044 +// 0.222222 +0x3fcc71c71c71c71c +// 0.166667 +0x3fc5555555555555 +// 0.111111 +0x3fbc71c71c71c71c +// 0.055556 +0x3fac71c71c71c71c +// 0.266667 +0x3fd1111111111111 +// 0.233333 +0x3fcdddddddddddde +// 0.200000 +0x3fc999999999999a +// 0.166667 +0x3fc5555555555555 +// 0.133333 +0x3fc1111111111111 +// 0.100000 +0x3fb999999999999a +// 0.066667 +0x3fb1111111111111 +// 0.033333 +0x3fa1111111111111 +// 0.222222 +0x3fcc71c71c71c71c +// 0.166667 +0x3fc5555555555555 +// 0.111111 +0x3fbc71c71c71c71c +// 0.055556 +0x3fac71c71c71c71c +// 0.266667 +0x3fd1111111111111 +// 0.233333 +0x3fcdddddddddddde +// 0.200000 +0x3fc999999999999a +// 0.166667 +0x3fc5555555555555 +// 0.133333 +0x3fc1111111111111 +// 0.100000 +0x3fb999999999999a +// 0.066667 +0x3fb1111111111111 +// 0.033333 +0x3fa1111111111111 +// 0.222222 +0x3fcc71c71c71c71c +// 0.166667 +0x3fc5555555555555 +// 0.111111 +0x3fbc71c71c71c71c +// 0.055556 +0x3fac71c71c71c71c +// 0.266667 +0x3fd1111111111111 +// 0.233333 +0x3fcdddddddddddde +// 0.200000 +0x3fc999999999999a +// 0.166667 +0x3fc5555555555555 +// 0.133333 +0x3fc1111111111111 +// 0.100000 +0x3fb999999999999a +// 0.066667 +0x3fb1111111111111 +// 0.033333 +0x3fa1111111111111 +// 0.266667 +0x3fd1111111111111 +// 0.233333 +0x3fcdddddddddddde +// 0.200000 +0x3fc999999999999a +// 0.166667 +0x3fc5555555555555 +// 0.133333 +0x3fc1111111111111 +// 0.100000 +0x3fb999999999999a +// 0.066667 +0x3fb1111111111111 +// 0.033333 +0x3fa1111111111111 +// 0.296296 +0x3fd2f684bda12f68 +// 0.277778 +0x3fd1c71c71c71c72 +// 0.259259 +0x3fd097b425ed097b +// 0.240741 +0x3fced097b425ed09 +// 0.222222 +0x3fcc71c71c71c71c +// 0.203704 +0x3fca12f684bda12f +// 0.185185 +0x3fc7b425ed097b42 +// 0.166667 +0x3fc5555555555555 +// 0.148148 +0x3fc2f684bda12f68 +// 0.129630 +0x3fc097b425ed097b +// 0.111111 +0x3fbc71c71c71c71c +// 0.092593 +0x3fb7b425ed097b42 +// 0.074074 +0x3fb2f684bda12f68 +// 0.055556 +0x3fac71c71c71c71c +// 0.037037 +0x3fa2f684bda12f68 +// 0.018519 +0x3f92f684bda12f68 +// 0.266667 +0x3fd1111111111111 +// 0.233333 +0x3fcdddddddddddde +// 0.200000 +0x3fc999999999999a +// 0.166667 +0x3fc5555555555555 +// 0.133333 +0x3fc1111111111111 +// 0.100000 +0x3fb999999999999a +// 0.066667 +0x3fb1111111111111 +// 0.033333 +0x3fa1111111111111 +// 0.296296 +0x3fd2f684bda12f68 +// 0.277778 +0x3fd1c71c71c71c72 +// 0.259259 +0x3fd097b425ed097b +// 0.240741 +0x3fced097b425ed09 +// 0.222222 +0x3fcc71c71c71c71c +// 0.203704 +0x3fca12f684bda12f +// 0.185185 +0x3fc7b425ed097b42 +// 0.166667 +0x3fc5555555555555 +// 0.148148 +0x3fc2f684bda12f68 +// 0.129630 +0x3fc097b425ed097b +// 0.111111 +0x3fbc71c71c71c71c +// 0.092593 +0x3fb7b425ed097b42 +// 0.074074 +0x3fb2f684bda12f68 +// 0.055556 +0x3fac71c71c71c71c +// 0.037037 +0x3fa2f684bda12f68 +// 0.018519 +0x3f92f684bda12f68 +// 0.266667 +0x3fd1111111111111 +// 0.233333 +0x3fcdddddddddddde +// 0.200000 +0x3fc999999999999a +// 0.166667 +0x3fc5555555555555 +// 0.133333 +0x3fc1111111111111 +// 0.100000 +0x3fb999999999999a +// 0.066667 +0x3fb1111111111111 +// 0.033333 +0x3fa1111111111111 +// 0.296296 +0x3fd2f684bda12f68 +// 0.277778 +0x3fd1c71c71c71c72 +// 0.259259 +0x3fd097b425ed097b +// 0.240741 +0x3fced097b425ed09 +// 0.222222 +0x3fcc71c71c71c71c +// 0.203704 +0x3fca12f684bda12f +// 0.185185 +0x3fc7b425ed097b42 +// 0.166667 +0x3fc5555555555555 +// 0.148148 +0x3fc2f684bda12f68 +// 0.129630 +0x3fc097b425ed097b +// 0.111111 +0x3fbc71c71c71c71c +// 0.092593 +0x3fb7b425ed097b42 +// 0.074074 +0x3fb2f684bda12f68 +// 0.055556 +0x3fac71c71c71c71c +// 0.037037 +0x3fa2f684bda12f68 +// 0.018519 +0x3f92f684bda12f68 +// 0.296296 +0x3fd2f684bda12f68 +// 0.277778 +0x3fd1c71c71c71c72 +// 0.259259 +0x3fd097b425ed097b +// 0.240741 +0x3fced097b425ed09 +// 0.222222 +0x3fcc71c71c71c71c +// 0.203704 +0x3fca12f684bda12f +// 0.185185 +0x3fc7b425ed097b42 +// 0.166667 +0x3fc5555555555555 +// 0.148148 +0x3fc2f684bda12f68 +// 0.129630 +0x3fc097b425ed097b +// 0.111111 +0x3fbc71c71c71c71c +// 0.092593 +0x3fb7b425ed097b42 +// 0.074074 +0x3fb2f684bda12f68 +// 0.055556 +0x3fac71c71c71c71c +// 0.037037 +0x3fa2f684bda12f68 +// 0.018519 +0x3f92f684bda12f68 +// 0.313725 +0x3fd4141414141414 +// 0.303922 +0x3fd3737373737373 +// 0.294118 +0x3fd2d2d2d2d2d2d3 +// 0.284314 +0x3fd2323232323232 +// 0.274510 +0x3fd1919191919192 +// 0.264706 +0x3fd0f0f0f0f0f0f1 +// 0.254902 +0x3fd0505050505050 +// 0.245098 +0x3fcf5f5f5f5f5f5f +// 0.235294 +0x3fce1e1e1e1e1e1e +// 0.225490 +0x3fccdcdcdcdcdcdd +// 0.215686 +0x3fcb9b9b9b9b9b9c +// 0.205882 +0x3fca5a5a5a5a5a5a +// 0.196078 +0x3fc9191919191919 +// 0.186275 +0x3fc7d7d7d7d7d7d8 +// 0.176471 +0x3fc6969696969697 +// 0.166667 +0x3fc5555555555555 +// 0.156863 +0x3fc4141414141414 +// 0.147059 +0x3fc2d2d2d2d2d2d3 +// 0.137255 +0x3fc1919191919192 +// 0.127451 +0x3fc0505050505050 +// 0.117647 +0x3fbe1e1e1e1e1e1e +// 0.107843 +0x3fbb9b9b9b9b9b9c +// 0.098039 +0x3fb9191919191919 +// 0.088235 +0x3fb6969696969697 +// 0.078431 +0x3fb4141414141414 +// 0.068627 +0x3fb1919191919192 +// 0.058824 +0x3fae1e1e1e1e1e1e +// 0.049020 +0x3fa9191919191919 +// 0.039216 +0x3fa4141414141414 +// 0.029412 +0x3f9e1e1e1e1e1e1e +// 0.019608 +0x3f94141414141414 +// 0.009804 +0x3f84141414141414 +// 0.296296 +0x3fd2f684bda12f68 +// 0.277778 +0x3fd1c71c71c71c72 +// 0.259259 +0x3fd097b425ed097b +// 0.240741 +0x3fced097b425ed09 +// 0.222222 +0x3fcc71c71c71c71c +// 0.203704 +0x3fca12f684bda12f +// 0.185185 +0x3fc7b425ed097b42 +// 0.166667 +0x3fc5555555555555 +// 0.148148 +0x3fc2f684bda12f68 +// 0.129630 +0x3fc097b425ed097b +// 0.111111 +0x3fbc71c71c71c71c +// 0.092593 +0x3fb7b425ed097b42 +// 0.074074 +0x3fb2f684bda12f68 +// 0.055556 +0x3fac71c71c71c71c +// 0.037037 +0x3fa2f684bda12f68 +// 0.018519 +0x3f92f684bda12f68 +// 0.313725 +0x3fd4141414141414 +// 0.303922 +0x3fd3737373737373 +// 0.294118 +0x3fd2d2d2d2d2d2d3 +// 0.284314 +0x3fd2323232323232 +// 0.274510 +0x3fd1919191919192 +// 0.264706 +0x3fd0f0f0f0f0f0f1 +// 0.254902 +0x3fd0505050505050 +// 0.245098 +0x3fcf5f5f5f5f5f5f +// 0.235294 +0x3fce1e1e1e1e1e1e +// 0.225490 +0x3fccdcdcdcdcdcdd +// 0.215686 +0x3fcb9b9b9b9b9b9c +// 0.205882 +0x3fca5a5a5a5a5a5a +// 0.196078 +0x3fc9191919191919 +// 0.186275 +0x3fc7d7d7d7d7d7d8 +// 0.176471 +0x3fc6969696969697 +// 0.166667 +0x3fc5555555555555 +// 0.156863 +0x3fc4141414141414 +// 0.147059 +0x3fc2d2d2d2d2d2d3 +// 0.137255 +0x3fc1919191919192 +// 0.127451 +0x3fc0505050505050 +// 0.117647 +0x3fbe1e1e1e1e1e1e +// 0.107843 +0x3fbb9b9b9b9b9b9c +// 0.098039 +0x3fb9191919191919 +// 0.088235 +0x3fb6969696969697 +// 0.078431 +0x3fb4141414141414 +// 0.068627 +0x3fb1919191919192 +// 0.058824 +0x3fae1e1e1e1e1e1e +// 0.049020 +0x3fa9191919191919 +// 0.039216 +0x3fa4141414141414 +// 0.029412 +0x3f9e1e1e1e1e1e1e +// 0.019608 +0x3f94141414141414 +// 0.009804 +0x3f84141414141414 +// 0.296296 +0x3fd2f684bda12f68 +// 0.277778 +0x3fd1c71c71c71c72 +// 0.259259 +0x3fd097b425ed097b +// 0.240741 +0x3fced097b425ed09 +// 0.222222 +0x3fcc71c71c71c71c +// 0.203704 +0x3fca12f684bda12f +// 0.185185 +0x3fc7b425ed097b42 +// 0.166667 +0x3fc5555555555555 +// 0.148148 +0x3fc2f684bda12f68 +// 0.129630 +0x3fc097b425ed097b +// 0.111111 +0x3fbc71c71c71c71c +// 0.092593 +0x3fb7b425ed097b42 +// 0.074074 +0x3fb2f684bda12f68 +// 0.055556 +0x3fac71c71c71c71c +// 0.037037 +0x3fa2f684bda12f68 +// 0.018519 +0x3f92f684bda12f68 +// 0.313725 +0x3fd4141414141414 +// 0.303922 +0x3fd3737373737373 +// 0.294118 +0x3fd2d2d2d2d2d2d3 +// 0.284314 +0x3fd2323232323232 +// 0.274510 +0x3fd1919191919192 +// 0.264706 +0x3fd0f0f0f0f0f0f1 +// 0.254902 +0x3fd0505050505050 +// 0.245098 +0x3fcf5f5f5f5f5f5f +// 0.235294 +0x3fce1e1e1e1e1e1e +// 0.225490 +0x3fccdcdcdcdcdcdd +// 0.215686 +0x3fcb9b9b9b9b9b9c +// 0.205882 +0x3fca5a5a5a5a5a5a +// 0.196078 +0x3fc9191919191919 +// 0.186275 +0x3fc7d7d7d7d7d7d8 +// 0.176471 +0x3fc6969696969697 +// 0.166667 +0x3fc5555555555555 +// 0.156863 +0x3fc4141414141414 +// 0.147059 +0x3fc2d2d2d2d2d2d3 +// 0.137255 +0x3fc1919191919192 +// 0.127451 +0x3fc0505050505050 +// 0.117647 +0x3fbe1e1e1e1e1e1e +// 0.107843 +0x3fbb9b9b9b9b9b9c +// 0.098039 +0x3fb9191919191919 +// 0.088235 +0x3fb6969696969697 +// 0.078431 +0x3fb4141414141414 +// 0.068627 +0x3fb1919191919192 +// 0.058824 +0x3fae1e1e1e1e1e1e +// 0.049020 +0x3fa9191919191919 +// 0.039216 +0x3fa4141414141414 +// 0.029412 +0x3f9e1e1e1e1e1e1e +// 0.019608 +0x3f94141414141414 +// 0.009804 +0x3f84141414141414 +// 0.303030 +0x3fd364d9364d9365 +// 0.287879 +0x3fd26c9b26c9b26d +// 0.272727 +0x3fd1745d1745d174 +// 0.257576 +0x3fd07c1f07c1f07c +// 0.242424 +0x3fcf07c1f07c1f08 +// 0.227273 +0x3fcd1745d1745d17 +// 0.212121 +0x3fcb26c9b26c9b27 +// 0.196970 +0x3fc9364d9364d936 +// 0.181818 +0x3fc745d1745d1746 +// 0.166667 +0x3fc5555555555555 +// 0.151515 +0x3fc364d9364d9365 +// 0.136364 +0x3fc1745d1745d174 +// 0.121212 +0x3fbf07c1f07c1f08 +// 0.106061 +0x3fbb26c9b26c9b27 +// 0.090909 +0x3fb745d1745d1746 +// 0.075758 +0x3fb364d9364d9365 +// 0.060606 +0x3faf07c1f07c1f08 +// 0.045455 +0x3fa745d1745d1746 +// 0.030303 +0x3f9f07c1f07c1f08 +// 0.015152 +0x3f8f07c1f07c1f08 +// 0.317460 +0x3fd4514514514514 +// 0.309524 +0x3fd3cf3cf3cf3cf4 +// 0.301587 +0x3fd34d34d34d34d3 +// 0.293651 +0x3fd2cb2cb2cb2cb3 +// 0.285714 +0x3fd2492492492492 +// 0.277778 +0x3fd1c71c71c71c72 +// 0.269841 +0x3fd1451451451451 +// 0.261905 +0x3fd0c30c30c30c31 +// 0.253968 +0x3fd0410410410410 +// 0.246032 +0x3fcf7df7df7df7df +// 0.238095 +0x3fce79e79e79e79e +// 0.230159 +0x3fcd75d75d75d75d +// 0.222222 +0x3fcc71c71c71c71c +// 0.214286 +0x3fcb6db6db6db6db +// 0.206349 +0x3fca69a69a69a69a +// 0.198413 +0x3fc9659659659659 +// 0.190476 +0x3fc8618618618618 +// 0.182540 +0x3fc75d75d75d75d7 +// 0.174603 +0x3fc6596596596596 +// 0.166667 +0x3fc5555555555555 +// 0.158730 +0x3fc4514514514514 +// 0.150794 +0x3fc34d34d34d34d3 +// 0.142857 +0x3fc2492492492492 +// 0.134921 +0x3fc1451451451451 +// 0.126984 +0x3fc0410410410410 +// 0.119048 +0x3fbe79e79e79e79e +// 0.111111 +0x3fbc71c71c71c71c +// 0.103175 +0x3fba69a69a69a69a +// 0.095238 +0x3fb8618618618618 +// 0.087302 +0x3fb6596596596596 +// 0.079365 +0x3fb4514514514514 +// 0.071429 +0x3fb2492492492492 +// 0.063492 +0x3fb0410410410410 +// 0.055556 +0x3fac71c71c71c71c +// 0.047619 +0x3fa8618618618618 +// 0.039683 +0x3fa4514514514514 +// 0.031746 +0x3fa0410410410410 +// 0.023810 +0x3f98618618618618 +// 0.015873 +0x3f90410410410410 +// 0.007937 +0x3f80410410410410 +// 0.303030 +0x3fd364d9364d9365 +// 0.287879 +0x3fd26c9b26c9b26d +// 0.272727 +0x3fd1745d1745d174 +// 0.257576 +0x3fd07c1f07c1f07c +// 0.242424 +0x3fcf07c1f07c1f08 +// 0.227273 +0x3fcd1745d1745d17 +// 0.212121 +0x3fcb26c9b26c9b27 +// 0.196970 +0x3fc9364d9364d936 +// 0.181818 +0x3fc745d1745d1746 +// 0.166667 +0x3fc5555555555555 +// 0.151515 +0x3fc364d9364d9365 +// 0.136364 +0x3fc1745d1745d174 +// 0.121212 +0x3fbf07c1f07c1f08 +// 0.106061 +0x3fbb26c9b26c9b27 +// 0.090909 +0x3fb745d1745d1746 +// 0.075758 +0x3fb364d9364d9365 +// 0.060606 +0x3faf07c1f07c1f08 +// 0.045455 +0x3fa745d1745d1746 +// 0.030303 +0x3f9f07c1f07c1f08 +// 0.015152 +0x3f8f07c1f07c1f08 +// 0.317460 +0x3fd4514514514514 +// 0.309524 +0x3fd3cf3cf3cf3cf4 +// 0.301587 +0x3fd34d34d34d34d3 +// 0.293651 +0x3fd2cb2cb2cb2cb3 +// 0.285714 +0x3fd2492492492492 +// 0.277778 +0x3fd1c71c71c71c72 +// 0.269841 +0x3fd1451451451451 +// 0.261905 +0x3fd0c30c30c30c31 +// 0.253968 +0x3fd0410410410410 +// 0.246032 +0x3fcf7df7df7df7df +// 0.238095 +0x3fce79e79e79e79e +// 0.230159 +0x3fcd75d75d75d75d +// 0.222222 +0x3fcc71c71c71c71c +// 0.214286 +0x3fcb6db6db6db6db +// 0.206349 +0x3fca69a69a69a69a +// 0.198413 +0x3fc9659659659659 +// 0.190476 +0x3fc8618618618618 +// 0.182540 +0x3fc75d75d75d75d7 +// 0.174603 +0x3fc6596596596596 +// 0.166667 +0x3fc5555555555555 +// 0.158730 +0x3fc4514514514514 +// 0.150794 +0x3fc34d34d34d34d3 +// 0.142857 +0x3fc2492492492492 +// 0.134921 +0x3fc1451451451451 +// 0.126984 +0x3fc0410410410410 +// 0.119048 +0x3fbe79e79e79e79e +// 0.111111 +0x3fbc71c71c71c71c +// 0.103175 +0x3fba69a69a69a69a +// 0.095238 +0x3fb8618618618618 +// 0.087302 +0x3fb6596596596596 +// 0.079365 +0x3fb4514514514514 +// 0.071429 +0x3fb2492492492492 +// 0.063492 +0x3fb0410410410410 +// 0.055556 +0x3fac71c71c71c71c +// 0.047619 +0x3fa8618618618618 +// 0.039683 +0x3fa4514514514514 +// 0.031746 +0x3fa0410410410410 +// 0.023810 +0x3f98618618618618 +// 0.015873 +0x3f90410410410410 +// 0.007937 +0x3f80410410410410 +// 0.303030 +0x3fd364d9364d9365 +// 0.287879 +0x3fd26c9b26c9b26d +// 0.272727 +0x3fd1745d1745d174 +// 0.257576 +0x3fd07c1f07c1f07c +// 0.242424 +0x3fcf07c1f07c1f08 +// 0.227273 +0x3fcd1745d1745d17 +// 0.212121 +0x3fcb26c9b26c9b27 +// 0.196970 +0x3fc9364d9364d936 +// 0.181818 +0x3fc745d1745d1746 +// 0.166667 +0x3fc5555555555555 +// 0.151515 +0x3fc364d9364d9365 +// 0.136364 +0x3fc1745d1745d174 +// 0.121212 +0x3fbf07c1f07c1f08 +// 0.106061 +0x3fbb26c9b26c9b27 +// 0.090909 +0x3fb745d1745d1746 +// 0.075758 +0x3fb364d9364d9365 +// 0.060606 +0x3faf07c1f07c1f08 +// 0.045455 +0x3fa745d1745d1746 +// 0.030303 +0x3f9f07c1f07c1f08 +// 0.015152 +0x3f8f07c1f07c1f08 +// 0.317460 +0x3fd4514514514514 +// 0.309524 +0x3fd3cf3cf3cf3cf4 +// 0.301587 +0x3fd34d34d34d34d3 +// 0.293651 +0x3fd2cb2cb2cb2cb3 +// 0.285714 +0x3fd2492492492492 +// 0.277778 +0x3fd1c71c71c71c72 +// 0.269841 +0x3fd1451451451451 +// 0.261905 +0x3fd0c30c30c30c31 +// 0.253968 +0x3fd0410410410410 +// 0.246032 +0x3fcf7df7df7df7df +// 0.238095 +0x3fce79e79e79e79e +// 0.230159 +0x3fcd75d75d75d75d +// 0.222222 +0x3fcc71c71c71c71c +// 0.214286 +0x3fcb6db6db6db6db +// 0.206349 +0x3fca69a69a69a69a +// 0.198413 +0x3fc9659659659659 +// 0.190476 +0x3fc8618618618618 +// 0.182540 +0x3fc75d75d75d75d7 +// 0.174603 +0x3fc6596596596596 +// 0.166667 +0x3fc5555555555555 +// 0.158730 +0x3fc4514514514514 +// 0.150794 +0x3fc34d34d34d34d3 +// 0.142857 +0x3fc2492492492492 +// 0.134921 +0x3fc1451451451451 +// 0.126984 +0x3fc0410410410410 +// 0.119048 +0x3fbe79e79e79e79e +// 0.111111 +0x3fbc71c71c71c71c +// 0.103175 +0x3fba69a69a69a69a +// 0.095238 +0x3fb8618618618618 +// 0.087302 +0x3fb6596596596596 +// 0.079365 +0x3fb4514514514514 +// 0.071429 +0x3fb2492492492492 +// 0.063492 +0x3fb0410410410410 +// 0.055556 +0x3fac71c71c71c71c +// 0.047619 +0x3fa8618618618618 +// 0.039683 +0x3fa4514514514514 +// 0.031746 +0x3fa0410410410410 +// 0.023810 +0x3f98618618618618 +// 0.015873 +0x3f90410410410410 +// 0.007937 +0x3f80410410410410 +// 0.313725 +0x3fd4141414141414 +// 0.303922 +0x3fd3737373737373 +// 0.294118 +0x3fd2d2d2d2d2d2d3 +// 0.284314 +0x3fd2323232323232 +// 0.274510 +0x3fd1919191919192 +// 0.264706 +0x3fd0f0f0f0f0f0f1 +// 0.254902 +0x3fd0505050505050 +// 0.245098 +0x3fcf5f5f5f5f5f5f +// 0.235294 +0x3fce1e1e1e1e1e1e +// 0.225490 +0x3fccdcdcdcdcdcdd +// 0.215686 +0x3fcb9b9b9b9b9b9c +// 0.205882 +0x3fca5a5a5a5a5a5a +// 0.196078 +0x3fc9191919191919 +// 0.186275 +0x3fc7d7d7d7d7d7d8 +// 0.176471 +0x3fc6969696969697 +// 0.166667 +0x3fc5555555555555 +// 0.156863 +0x3fc4141414141414 +// 0.147059 +0x3fc2d2d2d2d2d2d3 +// 0.137255 +0x3fc1919191919192 +// 0.127451 +0x3fc0505050505050 +// 0.117647 +0x3fbe1e1e1e1e1e1e +// 0.107843 +0x3fbb9b9b9b9b9b9c +// 0.098039 +0x3fb9191919191919 +// 0.088235 +0x3fb6969696969697 +// 0.078431 +0x3fb4141414141414 +// 0.068627 +0x3fb1919191919192 +// 0.058824 +0x3fae1e1e1e1e1e1e +// 0.049020 +0x3fa9191919191919 +// 0.039216 +0x3fa4141414141414 +// 0.029412 +0x3f9e1e1e1e1e1e1e +// 0.019608 +0x3f94141414141414 +// 0.009804 +0x3f84141414141414 +// 0.323232 +0x3fd4afd6a052bf5b +// 0.318182 +0x3fd45d1745d1745d +// 0.313131 +0x3fd40a57eb502960 +// 0.308081 +0x3fd3b79890cede62 +// 0.303030 +0x3fd364d9364d9365 +// 0.297980 +0x3fd31219dbcc4867 +// 0.292929 +0x3fd2bf5a814afd6a +// 0.287879 +0x3fd26c9b26c9b26d +// 0.282828 +0x3fd219dbcc48676f +// 0.277778 +0x3fd1c71c71c71c72 +// 0.272727 +0x3fd1745d1745d174 +// 0.267677 +0x3fd1219dbcc48677 +// 0.262626 +0x3fd0cede62433b7a +// 0.257576 +0x3fd07c1f07c1f07c +// 0.252525 +0x3fd0295fad40a57f +// 0.247475 +0x3fcfad40a57eb503 +// 0.242424 +0x3fcf07c1f07c1f08 +// 0.237374 +0x3fce62433b79890d +// 0.232323 +0x3fcdbcc48676f312 +// 0.227273 +0x3fcd1745d1745d17 +// 0.222222 +0x3fcc71c71c71c71c +// 0.217172 +0x3fcbcc48676f3122 +// 0.212121 +0x3fcb26c9b26c9b27 +// 0.207071 +0x3fca814afd6a052c +// 0.202020 +0x3fc9dbcc48676f31 +// 0.196970 +0x3fc9364d9364d936 +// 0.191919 +0x3fc890cede62433b +// 0.186869 +0x3fc7eb50295fad41 +// 0.181818 +0x3fc745d1745d1746 +// 0.176768 +0x3fc6a052bf5a814b +// 0.171717 +0x3fc5fad40a57eb50 +// 0.166667 +0x3fc5555555555555 +// 0.161616 +0x3fc4afd6a052bf5b +// 0.156566 +0x3fc40a57eb502960 +// 0.151515 +0x3fc364d9364d9365 +// 0.146465 +0x3fc2bf5a814afd6a +// 0.141414 +0x3fc219dbcc48676f +// 0.136364 +0x3fc1745d1745d174 +// 0.131313 +0x3fc0cede62433b7a +// 0.126263 +0x3fc0295fad40a57f +// 0.121212 +0x3fbf07c1f07c1f08 +// 0.116162 +0x3fbdbcc48676f312 +// 0.111111 +0x3fbc71c71c71c71c +// 0.106061 +0x3fbb26c9b26c9b27 +// 0.101010 +0x3fb9dbcc48676f31 +// 0.095960 +0x3fb890cede62433b +// 0.090909 +0x3fb745d1745d1746 +// 0.085859 +0x3fb5fad40a57eb50 +// 0.080808 +0x3fb4afd6a052bf5b +// 0.075758 +0x3fb364d9364d9365 +// 0.070707 +0x3fb219dbcc48676f +// 0.065657 +0x3fb0cede62433b7a +// 0.060606 +0x3faf07c1f07c1f08 +// 0.055556 +0x3fac71c71c71c71c +// 0.050505 +0x3fa9dbcc48676f31 +// 0.045455 +0x3fa745d1745d1746 +// 0.040404 +0x3fa4afd6a052bf5b +// 0.035354 +0x3fa219dbcc48676f +// 0.030303 +0x3f9f07c1f07c1f08 +// 0.025253 +0x3f99dbcc48676f31 +// 0.020202 +0x3f94afd6a052bf5b +// 0.015152 +0x3f8f07c1f07c1f08 +// 0.010101 +0x3f84afd6a052bf5b +// 0.005051 +0x3f74afd6a052bf5b +// 0.313725 +0x3fd4141414141414 +// 0.303922 +0x3fd3737373737373 +// 0.294118 +0x3fd2d2d2d2d2d2d3 +// 0.284314 +0x3fd2323232323232 +// 0.274510 +0x3fd1919191919192 +// 0.264706 +0x3fd0f0f0f0f0f0f1 +// 0.254902 +0x3fd0505050505050 +// 0.245098 +0x3fcf5f5f5f5f5f5f +// 0.235294 +0x3fce1e1e1e1e1e1e +// 0.225490 +0x3fccdcdcdcdcdcdd +// 0.215686 +0x3fcb9b9b9b9b9b9c +// 0.205882 +0x3fca5a5a5a5a5a5a +// 0.196078 +0x3fc9191919191919 +// 0.186275 +0x3fc7d7d7d7d7d7d8 +// 0.176471 +0x3fc6969696969697 +// 0.166667 +0x3fc5555555555555 +// 0.156863 +0x3fc4141414141414 +// 0.147059 +0x3fc2d2d2d2d2d2d3 +// 0.137255 +0x3fc1919191919192 +// 0.127451 +0x3fc0505050505050 +// 0.117647 +0x3fbe1e1e1e1e1e1e +// 0.107843 +0x3fbb9b9b9b9b9b9c +// 0.098039 +0x3fb9191919191919 +// 0.088235 +0x3fb6969696969697 +// 0.078431 +0x3fb4141414141414 +// 0.068627 +0x3fb1919191919192 +// 0.058824 +0x3fae1e1e1e1e1e1e +// 0.049020 +0x3fa9191919191919 +// 0.039216 +0x3fa4141414141414 +// 0.029412 +0x3f9e1e1e1e1e1e1e +// 0.019608 +0x3f94141414141414 +// 0.009804 +0x3f84141414141414 +// 0.323232 +0x3fd4afd6a052bf5b +// 0.318182 +0x3fd45d1745d1745d +// 0.313131 +0x3fd40a57eb502960 +// 0.308081 +0x3fd3b79890cede62 +// 0.303030 +0x3fd364d9364d9365 +// 0.297980 +0x3fd31219dbcc4867 +// 0.292929 +0x3fd2bf5a814afd6a +// 0.287879 +0x3fd26c9b26c9b26d +// 0.282828 +0x3fd219dbcc48676f +// 0.277778 +0x3fd1c71c71c71c72 +// 0.272727 +0x3fd1745d1745d174 +// 0.267677 +0x3fd1219dbcc48677 +// 0.262626 +0x3fd0cede62433b7a +// 0.257576 +0x3fd07c1f07c1f07c +// 0.252525 +0x3fd0295fad40a57f +// 0.247475 +0x3fcfad40a57eb503 +// 0.242424 +0x3fcf07c1f07c1f08 +// 0.237374 +0x3fce62433b79890d +// 0.232323 +0x3fcdbcc48676f312 +// 0.227273 +0x3fcd1745d1745d17 +// 0.222222 +0x3fcc71c71c71c71c +// 0.217172 +0x3fcbcc48676f3122 +// 0.212121 +0x3fcb26c9b26c9b27 +// 0.207071 +0x3fca814afd6a052c +// 0.202020 +0x3fc9dbcc48676f31 +// 0.196970 +0x3fc9364d9364d936 +// 0.191919 +0x3fc890cede62433b +// 0.186869 +0x3fc7eb50295fad41 +// 0.181818 +0x3fc745d1745d1746 +// 0.176768 +0x3fc6a052bf5a814b +// 0.171717 +0x3fc5fad40a57eb50 +// 0.166667 +0x3fc5555555555555 +// 0.161616 +0x3fc4afd6a052bf5b +// 0.156566 +0x3fc40a57eb502960 +// 0.151515 +0x3fc364d9364d9365 +// 0.146465 +0x3fc2bf5a814afd6a +// 0.141414 +0x3fc219dbcc48676f +// 0.136364 +0x3fc1745d1745d174 +// 0.131313 +0x3fc0cede62433b7a +// 0.126263 +0x3fc0295fad40a57f +// 0.121212 +0x3fbf07c1f07c1f08 +// 0.116162 +0x3fbdbcc48676f312 +// 0.111111 +0x3fbc71c71c71c71c +// 0.106061 +0x3fbb26c9b26c9b27 +// 0.101010 +0x3fb9dbcc48676f31 +// 0.095960 +0x3fb890cede62433b +// 0.090909 +0x3fb745d1745d1746 +// 0.085859 +0x3fb5fad40a57eb50 +// 0.080808 +0x3fb4afd6a052bf5b +// 0.075758 +0x3fb364d9364d9365 +// 0.070707 +0x3fb219dbcc48676f +// 0.065657 +0x3fb0cede62433b7a +// 0.060606 +0x3faf07c1f07c1f08 +// 0.055556 +0x3fac71c71c71c71c +// 0.050505 +0x3fa9dbcc48676f31 +// 0.045455 +0x3fa745d1745d1746 +// 0.040404 +0x3fa4afd6a052bf5b +// 0.035354 +0x3fa219dbcc48676f +// 0.030303 +0x3f9f07c1f07c1f08 +// 0.025253 +0x3f99dbcc48676f31 +// 0.020202 +0x3f94afd6a052bf5b +// 0.015152 +0x3f8f07c1f07c1f08 +// 0.010101 +0x3f84afd6a052bf5b +// 0.005051 +0x3f74afd6a052bf5b +// 0.313725 +0x3fd4141414141414 +// 0.303922 +0x3fd3737373737373 +// 0.294118 +0x3fd2d2d2d2d2d2d3 +// 0.284314 +0x3fd2323232323232 +// 0.274510 +0x3fd1919191919192 +// 0.264706 +0x3fd0f0f0f0f0f0f1 +// 0.254902 +0x3fd0505050505050 +// 0.245098 +0x3fcf5f5f5f5f5f5f +// 0.235294 +0x3fce1e1e1e1e1e1e +// 0.225490 +0x3fccdcdcdcdcdcdd +// 0.215686 +0x3fcb9b9b9b9b9b9c +// 0.205882 +0x3fca5a5a5a5a5a5a +// 0.196078 +0x3fc9191919191919 +// 0.186275 +0x3fc7d7d7d7d7d7d8 +// 0.176471 +0x3fc6969696969697 +// 0.166667 +0x3fc5555555555555 +// 0.156863 +0x3fc4141414141414 +// 0.147059 +0x3fc2d2d2d2d2d2d3 +// 0.137255 +0x3fc1919191919192 +// 0.127451 +0x3fc0505050505050 +// 0.117647 +0x3fbe1e1e1e1e1e1e +// 0.107843 +0x3fbb9b9b9b9b9b9c +// 0.098039 +0x3fb9191919191919 +// 0.088235 +0x3fb6969696969697 +// 0.078431 +0x3fb4141414141414 +// 0.068627 +0x3fb1919191919192 +// 0.058824 +0x3fae1e1e1e1e1e1e +// 0.049020 +0x3fa9191919191919 +// 0.039216 +0x3fa4141414141414 +// 0.029412 +0x3f9e1e1e1e1e1e1e +// 0.019608 +0x3f94141414141414 +// 0.009804 +0x3f84141414141414 +// 0.323232 +0x3fd4afd6a052bf5b +// 0.318182 +0x3fd45d1745d1745d +// 0.313131 +0x3fd40a57eb502960 +// 0.308081 +0x3fd3b79890cede62 +// 0.303030 +0x3fd364d9364d9365 +// 0.297980 +0x3fd31219dbcc4867 +// 0.292929 +0x3fd2bf5a814afd6a +// 0.287879 +0x3fd26c9b26c9b26d +// 0.282828 +0x3fd219dbcc48676f +// 0.277778 +0x3fd1c71c71c71c72 +// 0.272727 +0x3fd1745d1745d174 +// 0.267677 +0x3fd1219dbcc48677 +// 0.262626 +0x3fd0cede62433b7a +// 0.257576 +0x3fd07c1f07c1f07c +// 0.252525 +0x3fd0295fad40a57f +// 0.247475 +0x3fcfad40a57eb503 +// 0.242424 +0x3fcf07c1f07c1f08 +// 0.237374 +0x3fce62433b79890d +// 0.232323 +0x3fcdbcc48676f312 +// 0.227273 +0x3fcd1745d1745d17 +// 0.222222 +0x3fcc71c71c71c71c +// 0.217172 +0x3fcbcc48676f3122 +// 0.212121 +0x3fcb26c9b26c9b27 +// 0.207071 +0x3fca814afd6a052c +// 0.202020 +0x3fc9dbcc48676f31 +// 0.196970 +0x3fc9364d9364d936 +// 0.191919 +0x3fc890cede62433b +// 0.186869 +0x3fc7eb50295fad41 +// 0.181818 +0x3fc745d1745d1746 +// 0.176768 +0x3fc6a052bf5a814b +// 0.171717 +0x3fc5fad40a57eb50 +// 0.166667 +0x3fc5555555555555 +// 0.161616 +0x3fc4afd6a052bf5b +// 0.156566 +0x3fc40a57eb502960 +// 0.151515 +0x3fc364d9364d9365 +// 0.146465 +0x3fc2bf5a814afd6a +// 0.141414 +0x3fc219dbcc48676f +// 0.136364 +0x3fc1745d1745d174 +// 0.131313 +0x3fc0cede62433b7a +// 0.126263 +0x3fc0295fad40a57f +// 0.121212 +0x3fbf07c1f07c1f08 +// 0.116162 +0x3fbdbcc48676f312 +// 0.111111 +0x3fbc71c71c71c71c +// 0.106061 +0x3fbb26c9b26c9b27 +// 0.101010 +0x3fb9dbcc48676f31 +// 0.095960 +0x3fb890cede62433b +// 0.090909 +0x3fb745d1745d1746 +// 0.085859 +0x3fb5fad40a57eb50 +// 0.080808 +0x3fb4afd6a052bf5b +// 0.075758 +0x3fb364d9364d9365 +// 0.070707 +0x3fb219dbcc48676f +// 0.065657 +0x3fb0cede62433b7a +// 0.060606 +0x3faf07c1f07c1f08 +// 0.055556 +0x3fac71c71c71c71c +// 0.050505 +0x3fa9dbcc48676f31 +// 0.045455 +0x3fa745d1745d1746 +// 0.040404 +0x3fa4afd6a052bf5b +// 0.035354 +0x3fa219dbcc48676f +// 0.030303 +0x3f9f07c1f07c1f08 +// 0.025253 +0x3f99dbcc48676f31 +// 0.020202 +0x3f94afd6a052bf5b +// 0.015152 +0x3f8f07c1f07c1f08 +// 0.010101 +0x3f84afd6a052bf5b +// 0.005051 +0x3f74afd6a052bf5b +// 0.315789 +0x3fd435e50d79435e +// 0.307018 +0x3fd3a62ce98b3a63 +// 0.298246 +0x3fd31674c59d3167 +// 0.289474 +0x3fd286bca1af286c +// 0.280702 +0x3fd1f7047dc11f70 +// 0.271930 +0x3fd1674c59d31675 +// 0.263158 +0x3fd0d79435e50d79 +// 0.254386 +0x3fd047dc11f7047e +// 0.245614 +0x3fcf7047dc11f704 +// 0.236842 +0x3fce50d79435e50d +// 0.228070 +0x3fcd31674c59d316 +// 0.219298 +0x3fcc11f7047dc11f +// 0.210526 +0x3fcaf286bca1af28 +// 0.201754 +0x3fc9d31674c59d31 +// 0.192982 +0x3fc8b3a62ce98b3a +// 0.184211 +0x3fc79435e50d7943 +// 0.175439 +0x3fc674c59d31674c +// 0.166667 +0x3fc5555555555555 +// 0.157895 +0x3fc435e50d79435e +// 0.149123 +0x3fc31674c59d3167 +// 0.140351 +0x3fc1f7047dc11f70 +// 0.131579 +0x3fc0d79435e50d79 +// 0.122807 +0x3fbf7047dc11f704 +// 0.114035 +0x3fbd31674c59d316 +// 0.105263 +0x3fbaf286bca1af28 +// 0.096491 +0x3fb8b3a62ce98b3a +// 0.087719 +0x3fb674c59d31674c +// 0.078947 +0x3fb435e50d79435e +// 0.070175 +0x3fb1f7047dc11f70 +// 0.061404 +0x3faf7047dc11f704 +// 0.052632 +0x3faaf286bca1af28 +// 0.043860 +0x3fa674c59d31674c +// 0.035088 +0x3fa1f7047dc11f70 +// 0.026316 +0x3f9af286bca1af28 +// 0.017544 +0x3f91f7047dc11f70 +// 0.008772 +0x3f81f7047dc11f70 +// 0.324324 +0x3fd4c1bacf914c1c +// 0.319820 +0x3fd477ed8caf477f +// 0.315315 +0x3fd42e2049cd42e2 +// 0.310811 +0x3fd3e45306eb3e45 +// 0.306306 +0x3fd39a85c40939a8 +// 0.301802 +0x3fd350b88127350c +// 0.297297 +0x3fd306eb3e45306f +// 0.292793 +0x3fd2bd1dfb632bd2 +// 0.288288 +0x3fd27350b8812735 +// 0.283784 +0x3fd22983759f2298 +// 0.279279 +0x3fd1dfb632bd1dfb +// 0.274775 +0x3fd195e8efdb195f +// 0.270270 +0x3fd14c1bacf914c2 +// 0.265766 +0x3fd1024e6a171025 +// 0.261261 +0x3fd0b88127350b88 +// 0.256757 +0x3fd06eb3e45306eb +// 0.252252 +0x3fd024e6a171024e +// 0.247748 +0x3fcfb632bd1dfb63 +// 0.243243 +0x3fcf22983759f22a +// 0.238739 +0x3fce8efdb195e8f0 +// 0.234234 +0x3fcdfb632bd1dfb6 +// 0.229730 +0x3fcd67c8a60dd67d +// 0.225225 +0x3fccd42e2049cd43 +// 0.220721 +0x3fcc40939a85c409 +// 0.216216 +0x3fcbacf914c1bad0 +// 0.211712 +0x3fcb195e8efdb196 +// 0.207207 +0x3fca85c40939a85c +// 0.202703 +0x3fc9f22983759f23 +// 0.198198 +0x3fc95e8efdb195e9 +// 0.193694 +0x3fc8caf477ed8caf +// 0.189189 +0x3fc83759f2298376 +// 0.184685 +0x3fc7a3bf6c657a3c +// 0.180180 +0x3fc71024e6a17102 +// 0.175676 +0x3fc67c8a60dd67c9 +// 0.171171 +0x3fc5e8efdb195e8f +// 0.166667 +0x3fc5555555555555 +// 0.162162 +0x3fc4c1bacf914c1c +// 0.157658 +0x3fc42e2049cd42e2 +// 0.153153 +0x3fc39a85c40939a8 +// 0.148649 +0x3fc306eb3e45306f +// 0.144144 +0x3fc27350b8812735 +// 0.139640 +0x3fc1dfb632bd1dfb +// 0.135135 +0x3fc14c1bacf914c2 +// 0.130631 +0x3fc0b88127350b88 +// 0.126126 +0x3fc024e6a171024e +// 0.121622 +0x3fbf22983759f22a +// 0.117117 +0x3fbdfb632bd1dfb6 +// 0.112613 +0x3fbcd42e2049cd43 +// 0.108108 +0x3fbbacf914c1bad0 +// 0.103604 +0x3fba85c40939a85c +// 0.099099 +0x3fb95e8efdb195e9 +// 0.094595 +0x3fb83759f2298376 +// 0.090090 +0x3fb71024e6a17102 +// 0.085586 +0x3fb5e8efdb195e8f +// 0.081081 +0x3fb4c1bacf914c1c +// 0.076577 +0x3fb39a85c40939a8 +// 0.072072 +0x3fb27350b8812735 +// 0.067568 +0x3fb14c1bacf914c2 +// 0.063063 +0x3fb024e6a171024e +// 0.058559 +0x3fadfb632bd1dfb6 +// 0.054054 +0x3fabacf914c1bad0 +// 0.049550 +0x3fa95e8efdb195e9 +// 0.045045 +0x3fa71024e6a17102 +// 0.040541 +0x3fa4c1bacf914c1c +// 0.036036 +0x3fa27350b8812735 +// 0.031532 +0x3fa024e6a171024e +// 0.027027 +0x3f9bacf914c1bad0 +// 0.022523 +0x3f971024e6a17102 +// 0.018018 +0x3f927350b8812735 +// 0.013514 +0x3f8bacf914c1bad0 +// 0.009009 +0x3f827350b8812735 +// 0.004505 +0x3f727350b8812735 +// 0.315789 +0x3fd435e50d79435e +// 0.307018 +0x3fd3a62ce98b3a63 +// 0.298246 +0x3fd31674c59d3167 +// 0.289474 +0x3fd286bca1af286c +// 0.280702 +0x3fd1f7047dc11f70 +// 0.271930 +0x3fd1674c59d31675 +// 0.263158 +0x3fd0d79435e50d79 +// 0.254386 +0x3fd047dc11f7047e +// 0.245614 +0x3fcf7047dc11f704 +// 0.236842 +0x3fce50d79435e50d +// 0.228070 +0x3fcd31674c59d316 +// 0.219298 +0x3fcc11f7047dc11f +// 0.210526 +0x3fcaf286bca1af28 +// 0.201754 +0x3fc9d31674c59d31 +// 0.192982 +0x3fc8b3a62ce98b3a +// 0.184211 +0x3fc79435e50d7943 +// 0.175439 +0x3fc674c59d31674c +// 0.166667 +0x3fc5555555555555 +// 0.157895 +0x3fc435e50d79435e +// 0.149123 +0x3fc31674c59d3167 +// 0.140351 +0x3fc1f7047dc11f70 +// 0.131579 +0x3fc0d79435e50d79 +// 0.122807 +0x3fbf7047dc11f704 +// 0.114035 +0x3fbd31674c59d316 +// 0.105263 +0x3fbaf286bca1af28 +// 0.096491 +0x3fb8b3a62ce98b3a +// 0.087719 +0x3fb674c59d31674c +// 0.078947 +0x3fb435e50d79435e +// 0.070175 +0x3fb1f7047dc11f70 +// 0.061404 +0x3faf7047dc11f704 +// 0.052632 +0x3faaf286bca1af28 +// 0.043860 +0x3fa674c59d31674c +// 0.035088 +0x3fa1f7047dc11f70 +// 0.026316 +0x3f9af286bca1af28 +// 0.017544 +0x3f91f7047dc11f70 +// 0.008772 +0x3f81f7047dc11f70 +// 0.324324 +0x3fd4c1bacf914c1c +// 0.319820 +0x3fd477ed8caf477f +// 0.315315 +0x3fd42e2049cd42e2 +// 0.310811 +0x3fd3e45306eb3e45 +// 0.306306 +0x3fd39a85c40939a8 +// 0.301802 +0x3fd350b88127350c +// 0.297297 +0x3fd306eb3e45306f +// 0.292793 +0x3fd2bd1dfb632bd2 +// 0.288288 +0x3fd27350b8812735 +// 0.283784 +0x3fd22983759f2298 +// 0.279279 +0x3fd1dfb632bd1dfb +// 0.274775 +0x3fd195e8efdb195f +// 0.270270 +0x3fd14c1bacf914c2 +// 0.265766 +0x3fd1024e6a171025 +// 0.261261 +0x3fd0b88127350b88 +// 0.256757 +0x3fd06eb3e45306eb +// 0.252252 +0x3fd024e6a171024e +// 0.247748 +0x3fcfb632bd1dfb63 +// 0.243243 +0x3fcf22983759f22a +// 0.238739 +0x3fce8efdb195e8f0 +// 0.234234 +0x3fcdfb632bd1dfb6 +// 0.229730 +0x3fcd67c8a60dd67d +// 0.225225 +0x3fccd42e2049cd43 +// 0.220721 +0x3fcc40939a85c409 +// 0.216216 +0x3fcbacf914c1bad0 +// 0.211712 +0x3fcb195e8efdb196 +// 0.207207 +0x3fca85c40939a85c +// 0.202703 +0x3fc9f22983759f23 +// 0.198198 +0x3fc95e8efdb195e9 +// 0.193694 +0x3fc8caf477ed8caf +// 0.189189 +0x3fc83759f2298376 +// 0.184685 +0x3fc7a3bf6c657a3c +// 0.180180 +0x3fc71024e6a17102 +// 0.175676 +0x3fc67c8a60dd67c9 +// 0.171171 +0x3fc5e8efdb195e8f +// 0.166667 +0x3fc5555555555555 +// 0.162162 +0x3fc4c1bacf914c1c +// 0.157658 +0x3fc42e2049cd42e2 +// 0.153153 +0x3fc39a85c40939a8 +// 0.148649 +0x3fc306eb3e45306f +// 0.144144 +0x3fc27350b8812735 +// 0.139640 +0x3fc1dfb632bd1dfb +// 0.135135 +0x3fc14c1bacf914c2 +// 0.130631 +0x3fc0b88127350b88 +// 0.126126 +0x3fc024e6a171024e +// 0.121622 +0x3fbf22983759f22a +// 0.117117 +0x3fbdfb632bd1dfb6 +// 0.112613 +0x3fbcd42e2049cd43 +// 0.108108 +0x3fbbacf914c1bad0 +// 0.103604 +0x3fba85c40939a85c +// 0.099099 +0x3fb95e8efdb195e9 +// 0.094595 +0x3fb83759f2298376 +// 0.090090 +0x3fb71024e6a17102 +// 0.085586 +0x3fb5e8efdb195e8f +// 0.081081 +0x3fb4c1bacf914c1c +// 0.076577 +0x3fb39a85c40939a8 +// 0.072072 +0x3fb27350b8812735 +// 0.067568 +0x3fb14c1bacf914c2 +// 0.063063 +0x3fb024e6a171024e +// 0.058559 +0x3fadfb632bd1dfb6 +// 0.054054 +0x3fabacf914c1bad0 +// 0.049550 +0x3fa95e8efdb195e9 +// 0.045045 +0x3fa71024e6a17102 +// 0.040541 +0x3fa4c1bacf914c1c +// 0.036036 +0x3fa27350b8812735 +// 0.031532 +0x3fa024e6a171024e +// 0.027027 +0x3f9bacf914c1bad0 +// 0.022523 +0x3f971024e6a17102 +// 0.018018 +0x3f927350b8812735 +// 0.013514 +0x3f8bacf914c1bad0 +// 0.009009 +0x3f827350b8812735 +// 0.004505 +0x3f727350b8812735 +// 0.315789 +0x3fd435e50d79435e +// 0.307018 +0x3fd3a62ce98b3a63 +// 0.298246 +0x3fd31674c59d3167 +// 0.289474 +0x3fd286bca1af286c +// 0.280702 +0x3fd1f7047dc11f70 +// 0.271930 +0x3fd1674c59d31675 +// 0.263158 +0x3fd0d79435e50d79 +// 0.254386 +0x3fd047dc11f7047e +// 0.245614 +0x3fcf7047dc11f704 +// 0.236842 +0x3fce50d79435e50d +// 0.228070 +0x3fcd31674c59d316 +// 0.219298 +0x3fcc11f7047dc11f +// 0.210526 +0x3fcaf286bca1af28 +// 0.201754 +0x3fc9d31674c59d31 +// 0.192982 +0x3fc8b3a62ce98b3a +// 0.184211 +0x3fc79435e50d7943 +// 0.175439 +0x3fc674c59d31674c +// 0.166667 +0x3fc5555555555555 +// 0.157895 +0x3fc435e50d79435e +// 0.149123 +0x3fc31674c59d3167 +// 0.140351 +0x3fc1f7047dc11f70 +// 0.131579 +0x3fc0d79435e50d79 +// 0.122807 +0x3fbf7047dc11f704 +// 0.114035 +0x3fbd31674c59d316 +// 0.105263 +0x3fbaf286bca1af28 +// 0.096491 +0x3fb8b3a62ce98b3a +// 0.087719 +0x3fb674c59d31674c +// 0.078947 +0x3fb435e50d79435e +// 0.070175 +0x3fb1f7047dc11f70 +// 0.061404 +0x3faf7047dc11f704 +// 0.052632 +0x3faaf286bca1af28 +// 0.043860 +0x3fa674c59d31674c +// 0.035088 +0x3fa1f7047dc11f70 +// 0.026316 +0x3f9af286bca1af28 +// 0.017544 +0x3f91f7047dc11f70 +// 0.008772 +0x3f81f7047dc11f70 +// 0.324324 +0x3fd4c1bacf914c1c +// 0.319820 +0x3fd477ed8caf477f +// 0.315315 +0x3fd42e2049cd42e2 +// 0.310811 +0x3fd3e45306eb3e45 +// 0.306306 +0x3fd39a85c40939a8 +// 0.301802 +0x3fd350b88127350c +// 0.297297 +0x3fd306eb3e45306f +// 0.292793 +0x3fd2bd1dfb632bd2 +// 0.288288 +0x3fd27350b8812735 +// 0.283784 +0x3fd22983759f2298 +// 0.279279 +0x3fd1dfb632bd1dfb +// 0.274775 +0x3fd195e8efdb195f +// 0.270270 +0x3fd14c1bacf914c2 +// 0.265766 +0x3fd1024e6a171025 +// 0.261261 +0x3fd0b88127350b88 +// 0.256757 +0x3fd06eb3e45306eb +// 0.252252 +0x3fd024e6a171024e +// 0.247748 +0x3fcfb632bd1dfb63 +// 0.243243 +0x3fcf22983759f22a +// 0.238739 +0x3fce8efdb195e8f0 +// 0.234234 +0x3fcdfb632bd1dfb6 +// 0.229730 +0x3fcd67c8a60dd67d +// 0.225225 +0x3fccd42e2049cd43 +// 0.220721 +0x3fcc40939a85c409 +// 0.216216 +0x3fcbacf914c1bad0 +// 0.211712 +0x3fcb195e8efdb196 +// 0.207207 +0x3fca85c40939a85c +// 0.202703 +0x3fc9f22983759f23 +// 0.198198 +0x3fc95e8efdb195e9 +// 0.193694 +0x3fc8caf477ed8caf +// 0.189189 +0x3fc83759f2298376 +// 0.184685 +0x3fc7a3bf6c657a3c +// 0.180180 +0x3fc71024e6a17102 +// 0.175676 +0x3fc67c8a60dd67c9 +// 0.171171 +0x3fc5e8efdb195e8f +// 0.166667 +0x3fc5555555555555 +// 0.162162 +0x3fc4c1bacf914c1c +// 0.157658 +0x3fc42e2049cd42e2 +// 0.153153 +0x3fc39a85c40939a8 +// 0.148649 +0x3fc306eb3e45306f +// 0.144144 +0x3fc27350b8812735 +// 0.139640 +0x3fc1dfb632bd1dfb +// 0.135135 +0x3fc14c1bacf914c2 +// 0.130631 +0x3fc0b88127350b88 +// 0.126126 +0x3fc024e6a171024e +// 0.121622 +0x3fbf22983759f22a +// 0.117117 +0x3fbdfb632bd1dfb6 +// 0.112613 +0x3fbcd42e2049cd43 +// 0.108108 +0x3fbbacf914c1bad0 +// 0.103604 +0x3fba85c40939a85c +// 0.099099 +0x3fb95e8efdb195e9 +// 0.094595 +0x3fb83759f2298376 +// 0.090090 +0x3fb71024e6a17102 +// 0.085586 +0x3fb5e8efdb195e8f +// 0.081081 +0x3fb4c1bacf914c1c +// 0.076577 +0x3fb39a85c40939a8 +// 0.072072 +0x3fb27350b8812735 +// 0.067568 +0x3fb14c1bacf914c2 +// 0.063063 +0x3fb024e6a171024e +// 0.058559 +0x3fadfb632bd1dfb6 +// 0.054054 +0x3fabacf914c1bad0 +// 0.049550 +0x3fa95e8efdb195e9 +// 0.045045 +0x3fa71024e6a17102 +// 0.040541 +0x3fa4c1bacf914c1c +// 0.036036 +0x3fa27350b8812735 +// 0.031532 +0x3fa024e6a171024e +// 0.027027 +0x3f9bacf914c1bad0 +// 0.022523 +0x3f971024e6a17102 +// 0.018018 +0x3f927350b8812735 +// 0.013514 +0x3f8bacf914c1bad0 +// 0.009009 +0x3f827350b8812735 +// 0.004505 +0x3f727350b8812735 diff --git a/Testing/Patterns/DSP/Filtering/DECIM/DECIMF64/Configs2_u32.txt b/Testing/Patterns/DSP/Filtering/DECIM/DECIMF64/Configs2_u32.txt new file mode 100644 index 000000000..014aee59e --- /dev/null +++ b/Testing/Patterns/DSP/Filtering/DECIM/DECIMF64/Configs2_u32.txt @@ -0,0 +1,578 @@ +W +288 +// 1 +0x00000001 +// 2 +0x00000002 +// 2 +0x00000002 +// 2 +0x00000002 +// 1 +0x00000001 +// 4 +0x00000004 +// 2 +0x00000002 +// 2 +0x00000002 +// 1 +0x00000001 +// 5 +0x00000005 +// 2 +0x00000002 +// 2 +0x00000002 +// 1 +0x00000001 +// 3 +0x00000003 +// 2 +0x00000002 +// 2 +0x00000002 +// 1 +0x00000001 +// 5 +0x00000005 +// 2 +0x00000002 +// 2 +0x00000002 +// 1 +0x00000001 +// 6 +0x00000006 +// 2 +0x00000002 +// 2 +0x00000002 +// 1 +0x00000001 +// 2 +0x00000002 +// 4 +0x00000004 +// 4 +0x00000004 +// 1 +0x00000001 +// 4 +0x00000004 +// 4 +0x00000004 +// 4 +0x00000004 +// 1 +0x00000001 +// 5 +0x00000005 +// 4 +0x00000004 +// 4 +0x00000004 +// 1 +0x00000001 +// 3 +0x00000003 +// 4 +0x00000004 +// 4 +0x00000004 +// 1 +0x00000001 +// 5 +0x00000005 +// 4 +0x00000004 +// 4 +0x00000004 +// 1 +0x00000001 +// 6 +0x00000006 +// 4 +0x00000004 +// 4 +0x00000004 +// 1 +0x00000001 +// 2 +0x00000002 +// 5 +0x00000005 +// 5 +0x00000005 +// 1 +0x00000001 +// 4 +0x00000004 +// 5 +0x00000005 +// 5 +0x00000005 +// 1 +0x00000001 +// 5 +0x00000005 +// 5 +0x00000005 +// 5 +0x00000005 +// 1 +0x00000001 +// 3 +0x00000003 +// 5 +0x00000005 +// 5 +0x00000005 +// 1 +0x00000001 +// 5 +0x00000005 +// 5 +0x00000005 +// 5 +0x00000005 +// 1 +0x00000001 +// 6 +0x00000006 +// 5 +0x00000005 +// 5 +0x00000005 +// 2 +0x00000002 +// 2 +0x00000002 +// 4 +0x00000004 +// 2 +0x00000002 +// 2 +0x00000002 +// 4 +0x00000004 +// 4 +0x00000004 +// 2 +0x00000002 +// 2 +0x00000002 +// 5 +0x00000005 +// 4 +0x00000004 +// 2 +0x00000002 +// 2 +0x00000002 +// 3 +0x00000003 +// 4 +0x00000004 +// 2 +0x00000002 +// 2 +0x00000002 +// 5 +0x00000005 +// 4 +0x00000004 +// 2 +0x00000002 +// 2 +0x00000002 +// 6 +0x00000006 +// 4 +0x00000004 +// 2 +0x00000002 +// 2 +0x00000002 +// 2 +0x00000002 +// 8 +0x00000008 +// 4 +0x00000004 +// 2 +0x00000002 +// 4 +0x00000004 +// 8 +0x00000008 +// 4 +0x00000004 +// 2 +0x00000002 +// 5 +0x00000005 +// 8 +0x00000008 +// 4 +0x00000004 +// 2 +0x00000002 +// 3 +0x00000003 +// 8 +0x00000008 +// 4 +0x00000004 +// 2 +0x00000002 +// 5 +0x00000005 +// 8 +0x00000008 +// 4 +0x00000004 +// 2 +0x00000002 +// 6 +0x00000006 +// 8 +0x00000008 +// 4 +0x00000004 +// 2 +0x00000002 +// 2 +0x00000002 +// 10 +0x0000000A +// 5 +0x00000005 +// 2 +0x00000002 +// 4 +0x00000004 +// 10 +0x0000000A +// 5 +0x00000005 +// 2 +0x00000002 +// 5 +0x00000005 +// 10 +0x0000000A +// 5 +0x00000005 +// 2 +0x00000002 +// 3 +0x00000003 +// 10 +0x0000000A +// 5 +0x00000005 +// 2 +0x00000002 +// 5 +0x00000005 +// 10 +0x0000000A +// 5 +0x00000005 +// 2 +0x00000002 +// 6 +0x00000006 +// 10 +0x0000000A +// 5 +0x00000005 +// 4 +0x00000004 +// 2 +0x00000002 +// 8 +0x00000008 +// 2 +0x00000002 +// 4 +0x00000004 +// 4 +0x00000004 +// 8 +0x00000008 +// 2 +0x00000002 +// 4 +0x00000004 +// 5 +0x00000005 +// 8 +0x00000008 +// 2 +0x00000002 +// 4 +0x00000004 +// 3 +0x00000003 +// 8 +0x00000008 +// 2 +0x00000002 +// 4 +0x00000004 +// 5 +0x00000005 +// 8 +0x00000008 +// 2 +0x00000002 +// 4 +0x00000004 +// 6 +0x00000006 +// 8 +0x00000008 +// 2 +0x00000002 +// 4 +0x00000004 +// 2 +0x00000002 +// 16 +0x00000010 +// 4 +0x00000004 +// 4 +0x00000004 +// 4 +0x00000004 +// 16 +0x00000010 +// 4 +0x00000004 +// 4 +0x00000004 +// 5 +0x00000005 +// 16 +0x00000010 +// 4 +0x00000004 +// 4 +0x00000004 +// 3 +0x00000003 +// 16 +0x00000010 +// 4 +0x00000004 +// 4 +0x00000004 +// 5 +0x00000005 +// 16 +0x00000010 +// 4 +0x00000004 +// 4 +0x00000004 +// 6 +0x00000006 +// 16 +0x00000010 +// 4 +0x00000004 +// 4 +0x00000004 +// 2 +0x00000002 +// 20 +0x00000014 +// 5 +0x00000005 +// 4 +0x00000004 +// 4 +0x00000004 +// 20 +0x00000014 +// 5 +0x00000005 +// 4 +0x00000004 +// 5 +0x00000005 +// 20 +0x00000014 +// 5 +0x00000005 +// 4 +0x00000004 +// 3 +0x00000003 +// 20 +0x00000014 +// 5 +0x00000005 +// 4 +0x00000004 +// 5 +0x00000005 +// 20 +0x00000014 +// 5 +0x00000005 +// 4 +0x00000004 +// 6 +0x00000006 +// 20 +0x00000014 +// 5 +0x00000005 +// 8 +0x00000008 +// 2 +0x00000002 +// 16 +0x00000010 +// 2 +0x00000002 +// 8 +0x00000008 +// 4 +0x00000004 +// 16 +0x00000010 +// 2 +0x00000002 +// 8 +0x00000008 +// 5 +0x00000005 +// 16 +0x00000010 +// 2 +0x00000002 +// 8 +0x00000008 +// 3 +0x00000003 +// 16 +0x00000010 +// 2 +0x00000002 +// 8 +0x00000008 +// 5 +0x00000005 +// 16 +0x00000010 +// 2 +0x00000002 +// 8 +0x00000008 +// 6 +0x00000006 +// 16 +0x00000010 +// 2 +0x00000002 +// 8 +0x00000008 +// 2 +0x00000002 +// 32 +0x00000020 +// 4 +0x00000004 +// 8 +0x00000008 +// 4 +0x00000004 +// 32 +0x00000020 +// 4 +0x00000004 +// 8 +0x00000008 +// 5 +0x00000005 +// 32 +0x00000020 +// 4 +0x00000004 +// 8 +0x00000008 +// 3 +0x00000003 +// 32 +0x00000020 +// 4 +0x00000004 +// 8 +0x00000008 +// 5 +0x00000005 +// 32 +0x00000020 +// 4 +0x00000004 +// 8 +0x00000008 +// 6 +0x00000006 +// 32 +0x00000020 +// 4 +0x00000004 +// 8 +0x00000008 +// 2 +0x00000002 +// 40 +0x00000028 +// 5 +0x00000005 +// 8 +0x00000008 +// 4 +0x00000004 +// 40 +0x00000028 +// 5 +0x00000005 +// 8 +0x00000008 +// 5 +0x00000005 +// 40 +0x00000028 +// 5 +0x00000005 +// 8 +0x00000008 +// 3 +0x00000003 +// 40 +0x00000028 +// 5 +0x00000005 +// 8 +0x00000008 +// 5 +0x00000005 +// 40 +0x00000028 +// 5 +0x00000005 +// 8 +0x00000008 +// 6 +0x00000006 +// 40 +0x00000028 +// 5 +0x00000005 diff --git a/Testing/Patterns/DSP/Filtering/DECIM/DECIMF64/Configs3_u32.txt b/Testing/Patterns/DSP/Filtering/DECIM/DECIMF64/Configs3_u32.txt new file mode 100644 index 000000000..11b1d93bc --- /dev/null +++ b/Testing/Patterns/DSP/Filtering/DECIM/DECIMF64/Configs3_u32.txt @@ -0,0 +1,290 @@ +W +144 +// 1 +0x00000001 +// 4 +0x00000004 +// 2 +0x00000002 +// 2 +0x00000002 +// 1 +0x00000001 +// 8 +0x00000008 +// 2 +0x00000002 +// 2 +0x00000002 +// 1 +0x00000001 +// 4 +0x00000004 +// 4 +0x00000004 +// 4 +0x00000004 +// 1 +0x00000001 +// 8 +0x00000008 +// 4 +0x00000004 +// 4 +0x00000004 +// 1 +0x00000001 +// 4 +0x00000004 +// 5 +0x00000005 +// 5 +0x00000005 +// 1 +0x00000001 +// 8 +0x00000008 +// 5 +0x00000005 +// 5 +0x00000005 +// 2 +0x00000002 +// 8 +0x00000008 +// 2 +0x00000002 +// 4 +0x00000004 +// 2 +0x00000002 +// 16 +0x00000010 +// 2 +0x00000002 +// 4 +0x00000004 +// 2 +0x00000002 +// 8 +0x00000008 +// 4 +0x00000004 +// 8 +0x00000008 +// 2 +0x00000002 +// 16 +0x00000010 +// 4 +0x00000004 +// 8 +0x00000008 +// 2 +0x00000002 +// 8 +0x00000008 +// 5 +0x00000005 +// 10 +0x0000000A +// 2 +0x00000002 +// 16 +0x00000010 +// 5 +0x00000005 +// 10 +0x0000000A +// 4 +0x00000004 +// 16 +0x00000010 +// 2 +0x00000002 +// 8 +0x00000008 +// 4 +0x00000004 +// 32 +0x00000020 +// 2 +0x00000002 +// 8 +0x00000008 +// 4 +0x00000004 +// 16 +0x00000010 +// 4 +0x00000004 +// 16 +0x00000010 +// 4 +0x00000004 +// 32 +0x00000020 +// 4 +0x00000004 +// 16 +0x00000010 +// 4 +0x00000004 +// 16 +0x00000010 +// 5 +0x00000005 +// 20 +0x00000014 +// 4 +0x00000004 +// 32 +0x00000020 +// 5 +0x00000005 +// 20 +0x00000014 +// 5 +0x00000005 +// 20 +0x00000014 +// 2 +0x00000002 +// 10 +0x0000000A +// 5 +0x00000005 +// 40 +0x00000028 +// 2 +0x00000002 +// 10 +0x0000000A +// 5 +0x00000005 +// 20 +0x00000014 +// 4 +0x00000004 +// 20 +0x00000014 +// 5 +0x00000005 +// 40 +0x00000028 +// 4 +0x00000004 +// 20 +0x00000014 +// 5 +0x00000005 +// 20 +0x00000014 +// 5 +0x00000005 +// 25 +0x00000019 +// 5 +0x00000005 +// 40 +0x00000028 +// 5 +0x00000005 +// 25 +0x00000019 +// 8 +0x00000008 +// 32 +0x00000020 +// 2 +0x00000002 +// 16 +0x00000010 +// 8 +0x00000008 +// 64 +0x00000040 +// 2 +0x00000002 +// 16 +0x00000010 +// 8 +0x00000008 +// 32 +0x00000020 +// 4 +0x00000004 +// 32 +0x00000020 +// 8 +0x00000008 +// 64 +0x00000040 +// 4 +0x00000004 +// 32 +0x00000020 +// 8 +0x00000008 +// 32 +0x00000020 +// 5 +0x00000005 +// 40 +0x00000028 +// 8 +0x00000008 +// 64 +0x00000040 +// 5 +0x00000005 +// 40 +0x00000028 +// 9 +0x00000009 +// 36 +0x00000024 +// 2 +0x00000002 +// 18 +0x00000012 +// 9 +0x00000009 +// 72 +0x00000048 +// 2 +0x00000002 +// 18 +0x00000012 +// 9 +0x00000009 +// 36 +0x00000024 +// 4 +0x00000004 +// 36 +0x00000024 +// 9 +0x00000009 +// 72 +0x00000048 +// 4 +0x00000004 +// 36 +0x00000024 +// 9 +0x00000009 +// 36 +0x00000024 +// 5 +0x00000005 +// 45 +0x0000002D +// 9 +0x00000009 +// 72 +0x00000048 +// 5 +0x00000005 +// 45 +0x0000002D diff --git a/Testing/Patterns/DSP/Filtering/DECIM/DECIMF64/Input2_f64.txt b/Testing/Patterns/DSP/Filtering/DECIM/DECIMF64/Input2_f64.txt new file mode 100644 index 000000000..19cbebe06 --- /dev/null +++ b/Testing/Patterns/DSP/Filtering/DECIM/DECIMF64/Input2_f64.txt @@ -0,0 +1,1982 @@ +D +990 +// -1.000000 +0xbff0000000000000 +// 0.091615 +0x3fb77417f92ed353 +// 0.245660 +0x3fcf71ca30a854d6 +// -1.000000 +0xbff0000000000000 +// 1.000000 +0x3ff0000000000000 +// 0.206561 +0x3fca7095b786f6ab +// -1.000000 +0xbff0000000000000 +// -0.151852 +0xbfc36fe44ca905db +// 1.000000 +0x3ff0000000000000 +// 0.285768 +0x3fd24a03dd6107fb +// -0.292136 +0xbfd2b25b1083cad7 +// -1.000000 +0xbff0000000000000 +// 1.000000 +0x3ff0000000000000 +// 0.797556 +0x3fe9859362f4428a +// 0.205195 +0x3fca43d7a08eb72c +// 0.677530 +0x3fe5ae537556d731 +// -1.000000 +0xbff0000000000000 +// 0.230739 +0x3fcd88dce9745e57 +// -0.661063 +0xbfe5276e6bfac911 +// -0.024552 +0xbf9924348385ace3 +// -0.733891 +0xbfe77c084a6bccd7 +// -0.689524 +0xbfe6109426aee323 +// -1.000000 +0xbff0000000000000 +// 0.209539 +0x3fcad2305b0e40b9 +// 0.142182 +0x3fc2330785a1d530 +// 1.000000 +0x3ff0000000000000 +// 0.796362 +0x3fe97bcc9124297e +// 0.268334 +0x3fd12c634595b159 +// -0.485840 +0xbfdf17fef1cabc5d +// 1.000000 +0x3ff0000000000000 +// 0.458522 +0x3fdd586c491d4540 +// 0.559771 +0x3fe1e9a548bfccff +// 0.313071 +0x3fd4095c6b14fec0 +// -1.000000 +0xbff0000000000000 +// 0.050408 +0x3fa9cf11c9674ea6 +// -0.204406 +0xbfca29f654a45ebf +// 1.000000 +0x3ff0000000000000 +// -0.516248 +0xbfe0851b7902e53b +// 0.562349 +0x3fe1fec26790d991 +// 0.449671 +0x3fdcc768c732b0ec +// -0.002391 +0xbf6396a647a8445a +// 0.046775 +0x3fa7f2e399865594 +// -0.457840 +0xbfdd4d40d5fc2d55 +// 1.000000 +0x3ff0000000000000 +// 0.708327 +0x3fe6aa9ce97c2295 +// -0.722115 +0xbfe71b9121e3d0fe +// 0.496506 +0x3fdfc6c0b5609b44 +// -0.045193 +0xbfa723842bdd8345 +// -0.002488 +0xbf6462ba1c3b38d8 +// 1.000000 +0x3ff0000000000000 +// 0.196746 +0x3fc92efc49b61104 +// -0.522389 +0xbfe0b769927890eb +// 0.675515 +0x3fe59dd2028f5942 +// -0.891207 +0xbfec84c4918209d7 +// -1.000000 +0xbff0000000000000 +// 0.226499 +0x3fccfde7d04994cf +// 0.386006 +0x3fd8b45077365a55 +// -1.000000 +0xbff0000000000000 +// -0.190357 +0xbfc85da01e9e2b6b +// -0.244561 +0xbfcf4dc635a1f0c4 +// 0.181884 +0x3fc747fb028d3511 +// -1.000000 +0xbff0000000000000 +// 0.750110 +0x3fe800e666069d7e +// -0.365362 +0xbfd762157aafc61a +// -0.485552 +0xbfdf1347860c1f18 +// -0.351788 +0xbfd683b1adb47375 +// -1.000000 +0xbff0000000000000 +// 0.864484 +0x3feba9db4c037511 +// -0.165850 +0xbfc53a93deecb620 +// 0.048976 +0x3fa913598d9e1625 +// -0.440325 +0xbfdc2e491f083110 +// -1.000000 +0xbff0000000000000 +// -0.560661 +0xbfe1f0f05ed31d92 +// -0.559457 +0xbfe1e7115a66d34e +// -0.027409 +0xbf9c1101e7ab910c +// 0.933974 +0x3fede31c8a7a3968 +// -1.000000 +0xbff0000000000000 +// 0.757627 +0x3fe83e7ae861f15b +// -0.383806 +0xbfd89045a9788b58 +// 1.000000 +0x3ff0000000000000 +// -0.199620 +0xbfc98d26db98b153 +// 0.432510 +0x3fdbae3f22479e5c +// 1.000000 +0x3ff0000000000000 +// -0.110989 +0xbfbc69c4485b52dd +// -0.564885 +0xbfe213891cab9fe6 +// 0.713573 +0x3fe6d596c34032c4 +// 1.000000 +0x3ff0000000000000 +// 0.345269 +0x3fd618e283e0548a +// 0.196657 +0x3fc92c11fd5c2594 +// -0.273276 +0xbfd17d5a0c889755 +// 1.000000 +0x3ff0000000000000 +// -0.698946 +0xbfe65dc2f481b53d +// -0.038561 +0xbfa3be3df783ae38 +// -0.614585 +0xbfe3aaae04000f3f +// -0.589488 +0xbfe2dd16c91e3246 +// 0.703971 +0x3fe686ee8a86cf81 +// 0.137613 +0x3fc19d4cf01aa95a +// 0.143016 +0x3fc24e590bb9972a +// -0.236660 +0xbfce4ae1bcd0ae9a +// -0.061512 +0xbfaf7e8c5734f183 +// 0.402287 +0x3fd9bf133d7caa49 +// -1.000000 +0xbff0000000000000 +// -0.223699 +0xbfcca22b61d8bf43 +// -0.386871 +0xbfd8c27f4de1cc46 +// -0.182254 +0xbfc754155f934e27 +// -0.066672 +0xbfb111656bf2f883 +// 0.486397 +0x3fdf21205b6ef2e3 +// -0.572013 +0xbfe24dedb671abfc +// 0.066551 +0x3fb109810352e36d +// 0.436841 +0x3fdbf533e83d2d7a +// -0.091612 +0xbfb773e103310cba +// 0.262427 +0x3fd0cb9974b8177b +// 1.000000 +0x3ff0000000000000 +// -0.343683 +0xbfd5fee6be5bcc37 +// -0.152056 +0xbfc37695b6607243 +// 0.099887 +0x3fb9922f02681801 +// -0.537700 +0xbfe134d59ebc8985 +// 0.390450 +0x3fd8fd226026b0ff +// -1.000000 +0xbff0000000000000 +// -0.510459 +0xbfe055af18ed3241 +// -0.020406 +0xbf94e535f5b2bd85 +// 0.335698 +0x3fd57c1587133e2a +// 1.000000 +0x3ff0000000000000 +// 0.004182 +0x3f712174c4d8a481 +// -0.328764 +0xbfd50a77cac9b62a +// -0.055097 +0xbfac35aa56bef719 +// -0.557066 +0xbfe1d37c1e02c49c +// 0.223310 +0x3fcc956f6de04021 +// -0.766529 +0xbfe8876826524114 +// 0.500092 +0x3fe000c0a45c216c +// -0.869255 +0xbfebd0efff8cbc18 +// 0.096194 +0x3fb8a0283a73349b +// 0.106258 +0x3fbb33b98659454f +// -1.000000 +0xbff0000000000000 +// -0.824806 +0xbfea64cfc1554164 +// 0.687077 +0x3fe5fc89293e27e5 +// 0.105469 +0x3fbafffc6d62c308 +// -0.552557 +0xbfe1ae8cdb953097 +// -1.000000 +0xbff0000000000000 +// -0.167096 +0xbfc563642456c72a +// 0.464525 +0x3fddbac7022b6c62 +// 0.126030 +0x3fc021bd42bd4383 +// 0.147809 +0x3fc2eb67349cd8ae +// 0.024853 +0x3f99731bed894e91 +// 0.627019 +0x3fe41089372b47cb +// -0.478768 +0xbfdea42164e2dd89 +// 0.069722 +0x3fb1d9480d789340 +// 0.379428 +0x3fd8488bfd4ac4ff +// 0.710627 +0x3fe6bd741616dd31 +// -0.145490 +0xbfc29f66c10f277e +// -0.257159 +0xbfd0754a226eeafb +// -1.000000 +0xbff0000000000000 +// -0.155277 +0xbfc3e021dc1f5d08 +// -0.020016 +0xbf947f198468a254 +// -0.255582 +0xbfd05b762e48ecb7 +// 0.174923 +0x3fc663e348f42ebc +// -0.633466 +0xbfe4455a2046ee71 +// -0.049217 +0xbfa932f2eb497e32 +// -0.055505 +0xbfac6b233867d054 +// 0.407806 +0x3fda197e9a3372e5 +// 0.295007 +0x3fd2e1637f789e22 +// 0.260183 +0x3fd0a6d71c7defaf +// -0.163319 +0xbfc4e7a551ce7afa +// -0.303613 +0xbfd36e64ed50e3de +// -0.032828 +0xbfa0cee55b17bf3a +// 1.000000 +0x3ff0000000000000 +// 0.533394 +0x3fe11190fd515a1d +// 0.666388 +0x3fe5530c4e8a336b +// 1.000000 +0x3ff0000000000000 +// -0.076529 +0xbfb39761e0e8432e +// -0.643328 +0xbfe4962429a1ced5 +// -0.409071 +0xbfda2e37612df922 +// 0.331553 +0x3fd53828a22964ef +// -0.195949 +0xbfc914db4e5edcdc +// 0.399987 +0x3fd999644fb5f0f0 +// 0.949426 +0x3fee61b320aaae60 +// 0.316585 +0x3fd442ec3b23fcd8 +// 0.256407 +0x3fd068faddc96662 +// -0.091866 +0xbfb7848b7dbf362f +// -0.288250 +0xbfd272b057941010 +// 0.197123 +0x3fc93b567b7e6207 +// -0.113064 +0xbfbcf1ca80011c8e +// 0.731793 +0x3fe76ad9aba165e6 +// -0.716610 +0xbfe6ee78509264b6 +// 0.896068 +0x3fecac9646f0199d +// 0.268393 +0x3fd12d5a298db756 +// -0.498653 +0xbfdfe9ef2c073b27 +// -1.000000 +0xbff0000000000000 +// -0.544844 +0xbfe16f5bb08a752b +// -0.399919 +0xbfd9984708412ea7 +// 0.664099 +0x3fe5404d347d3706 +// -0.453792 +0xbfdd0aec176c158a +// -0.067719 +0xbfb15604f0eeea19 +// -0.666709 +0xbfe555ad4cbb33ea +// -0.395603 +0xbfd9518e5b5cbbd3 +// 0.130488 +0x3fc0b3d357f1ccbe +// -1.000000 +0xbff0000000000000 +// 0.037136 +0x3fa3036c9fbed7dd +// -1.000000 +0xbff0000000000000 +// 0.611317 +0x3fe38fe8eb418826 +// -0.995700 +0xbfefdcc6d6a7219b +// -0.021111 +0xbf959e0fc107bb4e +// -0.041948 +0xbfa57a2d0b40e809 +// 0.469212 +0x3fde0792bdd2f627 +// -0.500401 +0xbfe00349e87560ef +// 0.685117 +0x3fe5ec7b6b65ffaa +// 0.502672 +0x3fe015e48e675885 +// 0.000621 +0x3f445928259cd140 +// -0.154189 +0xbfc3bc7b00ea7d62 +// 0.035161 +0x3fa200a7cdd81ef6 +// 1.000000 +0x3ff0000000000000 +// 0.343105 +0x3fd5f56fbc6fd6f9 +// -0.091369 +0xbfb763fc57322a65 +// 0.707946 +0x3fe6a77f4e1508d0 +// -0.079897 +0xbfb474244daa87aa +// -0.284703 +0xbfd23892916c94bf +// 0.167237 +0x3fc5680512194ba9 +// 0.207347 +0x3fca8a5b051141e7 +// -0.078868 +0xbfb430b741e41db8 +// -1.000000 +0xbff0000000000000 +// 0.673680 +0x3fe58ec9afa8cc1a +// 0.013918 +0x3f8c810bcfbac72c +// 1.000000 +0x3ff0000000000000 +// -0.398582 +0xbfd9825fc58d4644 +// 0.188633 +0x3fc82524557639b6 +// 0.970956 +0x3fef121315be1932 +// -0.467839 +0xbfddf1135d379023 +// 0.283967 +0x3fd22c84d6c30ff9 +// 0.821854 +0x3fea4ca163b784f1 +// -0.968795 +0xbfef005f5c37615f +// -0.270969 +0xbfd1578d4087b829 +// 0.723800 +0x3fe7295e1abd7c33 +// 1.000000 +0x3ff0000000000000 +// 0.614751 +0x3fe3ac0b1a2222bb +// -0.172002 +0xbfc6042d6424d941 +// 0.211874 +0x3fcb1eafddb93b44 +// -0.489438 +0xbfdf52f420248699 +// -0.179804 +0xbfc703d331a6c41c +// 1.000000 +0x3ff0000000000000 +// -0.477384 +0xbfde8d7777026f16 +// 0.102948 +0x3fba5acf2112eee1 +// -0.472280 +0xbfde39d548c5ef46 +// -0.885968 +0xbfec59d8a96cc5a9 +// -0.077445 +0xbfb3d3703714714d +// -0.076577 +0xbfb39a88bc3a0540 +// -0.467082 +0xbfdde4ab797798a9 +// 0.526072 +0x3fe0d5942f0c6fbf +// 0.844520 +0x3feb064ed6df10dd +// 0.189881 +0x3fc84e016e7fb938 +// -1.000000 +0xbff0000000000000 +// 0.251064 +0x3fd0116f6631faef +// 0.050984 +0x3faa1aa02ab83a93 +// 0.160803 +0x3fc49531c50000aa +// -0.092075 +0xbfb7923434083238 +// 0.182948 +0x3fc76ad65833336d +// -0.659502 +0xbfe51aa46be1ac1c +// 0.665647 +0x3fe54cfbd81977c9 +// -0.560123 +0xbfe1ec863eed03a1 +// 0.139420 +0x3fc1d88705dcfbc9 +// 0.539217 +0x3fe14144613b78ae +// -0.348469 +0xbfd64d52d50766da +// -0.446434 +0xbfdc926003f3a7e8 +// -0.716454 +0xbfe6ed3029a70b3d +// -0.575153 +0xbfe267a79fd9810f +// 0.161935 +0x3fc4ba47ed0315f9 +// -1.000000 +0xbff0000000000000 +// 0.470081 +0x3fde15d0b531d868 +// 0.024367 +0x3f98f3b3a4db70b2 +// 0.408346 +0x3fda22583b1cb8ba +// 0.543112 +0x3fe1612ccfce9adf +// 0.118766 +0x3fbe6771f4626989 +// 0.187014 +0x3fc7f01726e18bea +// -0.033011 +0xbfa0e6d79dd95eb4 +// 0.538255 +0x3fe13961cc516d6a +// 0.263194 +0x3fd0d82d32d1cfd7 +// -0.148123 +0xbfc2f5b4ebcc7e53 +// -0.267351 +0xbfd11c4697345c3e +// 0.392882 +0x3fd924fb0621f38c +// -0.417725 +0xbfdabc020e2af5f6 +// 0.007936 +0x3f8040dd0320f7e3 +// 0.463362 +0x3fdda7b8afd8d4c9 +// -0.002398 +0xbf63a4c0b18be826 +// -0.559040 +0xbfe1e3a75420fa30 +// 0.391166 +0x3fd908de25a319f2 +// 0.081777 +0x3fb4ef54d7bdbb5c +// 0.672924 +0x3fe58898df391051 +// 0.651134 +0x3fe4d616a286a818 +// -0.463301 +0xbfdda6ba3a4bead3 +// -1.000000 +0xbff0000000000000 +// 0.195036 +0x3fc8f6eef7958f2f +// 0.288816 +0x3fd27bf5b159b56f +// 0.246919 +0x3fcf9b070e19cf3d +// -0.812359 +0xbfe9fed8f604b20c +// -0.435008 +0xbfdbd72c444c396c +// 0.402821 +0x3fd9c7d04f6c5030 +// -0.498760 +0xbfdfebafb81d655c +// 0.078604 +0x3fb41f5f0e87d395 +// -0.785474 +0xbfe9229b3fd2aa0f +// -0.367721 +0xbfd788bb93b80fac +// 0.102552 +0x3fba40d7fe88aacf +// 0.711139 +0x3fe6c1a6f79ef5e4 +// -0.274207 +0xbfd18c9adc0250bf +// 0.487797 +0x3fdf380fd16ed5a4 +// -0.292611 +0xbfd2ba21d219675c +// 0.440849 +0x3fdc36dfff21b527 +// 0.289299 +0x3fd283dffa435d9b +// -0.367025 +0xbfd77d5821378ad3 +// -0.661252 +0xbfe528fa851f3efa +// 0.236856 +0x3fce5148ee5ece84 +// 1.000000 +0x3ff0000000000000 +// -0.480588 +0xbfdec1f4301285d6 +// -1.000000 +0xbff0000000000000 +// -0.844426 +0xbfeb05899694ea7a +// -0.146435 +0xbfc2be60c082c840 +// 0.132310 +0x3fc0ef8c7e7a701c +// 0.294918 +0x3fd2dfef9f523e90 +// -0.082954 +0xbfb53c7539a62d16 +// 0.369406 +0x3fd7a45ad5fb2456 +// -0.923444 +0xbfed8cd9ba90a8c5 +// 0.372518 +0x3fd7d75673d4cfab +// -0.106231 +0xbfbb31f97dd8a73b +// -0.258185 +0xbfd08618fa591cd4 +// -0.211324 +0xbfcb0ca9a34195ff +// 0.201788 +0x3fc9d43228e5cf8e +// 0.435607 +0x3fdbe0fde18c4ee1 +// -0.245762 +0xbfcf752201a296d8 +// 0.116360 +0x3fbdc9c20a918440 +// -1.000000 +0xbff0000000000000 +// 0.392354 +0x3fd91c52f1893a29 +// -0.023781 +0xbf985a2363195552 +// -0.094010 +0xbfb811042e0ccdfa +// -0.174938 +0xbfc6646093b19307 +// 0.018320 +0x3f92c26028f44ed3 +// 0.200747 +0x3fc9b21200525b4e +// 0.125715 +0x3fc017700cabd71c +// 0.537190 +0x3fe130aa1545c5d4 +// -0.550690 +0xbfe19f41ad7af6fb +// 0.225326 +0x3fccd77e7082cfb9 +// -0.074735 +0xbfb321d487c80422 +// 0.408122 +0x3fda1eadcbdfb5b2 +// 0.572849 +0x3fe254c6dcdd91a9 +// -0.444138 +0xbfdc6cc03a62566e +// -0.739353 +0xbfe7a8c80af3fcc4 +// -0.391209 +0xbfd9099259a388da +// 0.190457 +0x3fc860e555bf6e90 +// -0.570253 +0xbfe23f837226da79 +// 1.000000 +0x3ff0000000000000 +// -0.126821 +0xbfc03ba9d073454b +// -0.821289 +0xbfea47ff23816495 +// -0.427494 +0xbfdb5c0f6ea0e1e8 +// 0.203994 +0x3fca1c783d993938 +// -0.460815 +0xbfdd7dff8f89176e +// -0.552465 +0xbfe1adca0b5b8d62 +// -0.211439 +0xbfcb106cf174c7d0 +// 0.338784 +0x3fd5aea16117f959 +// 0.145740 +0x3fc2a79f97d44bdc +// -0.600972 +0xbfe33b2a9968cdf9 +// -0.356835 +0xbfd6d661a7a55a55 +// 0.436373 +0x3fdbed8aa65f97ff +// 0.370854 +0x3fd7bc12e9f8e099 +// 0.166113 +0x3fc54331ce31718b +// 0.437783 +0x3fdc04a3747252cd +// -0.276614 +0xbfd1b40c91616489 +// -0.683286 +0xbfe5dd79e8258fb0 +// -0.919340 +0xbfed6b3c8d96dff4 +// 0.015462 +0x3f8faa4927746fb1 +// -0.259656 +0xbfd09e3428286fad +// 0.888295 +0x3fec6ce8af223cfd +// 0.338789 +0x3fd5aeb821bb85db +// -0.862379 +0xbfeb989bc3d57d5c +// 0.113848 +0x3fbd25296803faa0 +// 0.852130 +0x3feb44a64f873de8 +// -0.797175 +0xbfe98275c5a39b08 +// -0.260584 +0xbfd0ad67db0abfb2 +// 1.000000 +0x3ff0000000000000 +// -0.115862 +0xbfbda91a9e7da18a +// -0.095548 +0xbfb875d344845512 +// 0.238975 +0x3fce96bf839e3c9e +// 0.022118 +0x3f96a62ebb4af809 +// 0.255771 +0x3fd05e8cc5fd7db8 +// -0.634060 +0xbfe44a390db0cfcc +// -0.582790 +0xbfe2a63697bf14e9 +// -1.000000 +0xbff0000000000000 +// -0.011373 +0xbf874ac9e714c259 +// 0.423367 +0x3fdb18716c8a475d +// -0.471629 +0xbfde2f2b17afb5ed +// -0.525729 +0xbfe0d2c632e56096 +// 0.225441 +0x3fccdb3d62ead3a3 +// 0.490384 +0x3fdf6272fa521df8 +// -0.223637 +0xbfcca022a524180d +// 0.169739 +0x3fc5ba04b42a5030 +// -0.213657 +0xbfcb5920e54b433d +// 0.485936 +0x3fdf1994fdeff464 +// 0.131816 +0x3fc0df54d2d7e69d +// -0.733052 +0xbfe775289795c102 +// 0.840636 +0x3feae67d5b9e2762 +// 0.192031 +0x3fc89476e8227c72 +// 0.271504 +0x3fd16050d4600ddb +// -0.769222 +0xbfe89d77355ba794 +// 0.545175 +0x3fe17213995a83c1 +// -0.540316 +0xbfe14a4551bf2d3a +// -0.379001 +0xbfd8418bc425a3ad +// 0.923134 +0x3fed8a5146afa105 +// 1.000000 +0x3ff0000000000000 +// -0.114882 +0xbfbd68e443dd36aa +// 0.581679 +0x3fe29d1cf6df2cd7 +// -0.243045 +0xbfcf1c1593908f7c +// 0.245173 +0x3fcf61d05944bfa0 +// -0.856568 +0xbfeb69006ff65257 +// -0.759106 +0xbfe84a98d1214ed8 +// -0.291484 +0xbfd2a7ae25652f08 +// -0.123811 +0xbfbfb214e34e5cc7 +// -0.498638 +0xbfdfe9b16d0b2ea2 +// -0.479106 +0xbfdea9aa89ec2bac +// 0.004301 +0x3f719d6e5c1c4f47 +// 0.111116 +0x3fbc721fbc1b5e9c +// 0.725914 +0x3fe73aaff9cc26b1 +// -0.331954 +0xbfd53ebc985bfc0d +// -0.018356 +0xbf92cbffa89f4b9f +// -0.048792 +0xbfa8fb51ac38fc60 +// 0.339211 +0x3fd5b5a0185fae5c +// -0.695117 +0xbfe63e663564e9f4 +// -0.408888 +0xbfda2b37a3517095 +// -0.173594 +0xbfc638573f8ccee0 +// -0.629084 +0xbfe42174d2eeaf66 +// 0.373343 +0x3fd7e4d94ed6e0c4 +// -0.887956 +0xbfec6a22fcba8697 +// 1.000000 +0x3ff0000000000000 +// 0.402315 +0x3fd9bf892b5ac28e +// 0.794898 +0x3fe96fcd533b8ad3 +// -0.398954 +0xbfd988785234a198 +// 0.097254 +0x3fb8e5a4c335390b +// 0.028733 +0x3f9d6c40650a1fb1 +// -0.451109 +0xbfdcdef73a147f46 +// -0.143500 +0xbfc25e39603887a0 +// 0.229755 +0x3fcd689958c8a8cb +// -0.148576 +0xbfc30489993affec +// 0.066974 +0x3fb12533a8d20b55 +// -0.347333 +0xbfd63ab4d8f44c49 +// -0.280609 +0xbfd1f580b78ab59a +// -0.174632 +0xbfc65a54babce630 +// -0.158746 +0xbfc451c7af18c84d +// -0.394482 +0xbfd93f3131084adf +// 0.610742 +0x3fe38b32d48fb986 +// 0.941908 +0x3fee241baea071f5 +// 0.094418 +0x3fb82bcf0159207f +// -0.337783 +0xbfd59e3d48e09e41 +// 0.571527 +0x3fe249f2fd469aa5 +// 0.726367 +0x3fe73e66375f3db2 +// 0.088599 +0x3fb6ae65c5f35139 +// 0.323405 +0x3fd4b2ace8595e10 +// -0.654396 +0xbfe4f0cf6bcd1555 +// -0.085562 +0xbfb5e75f608448ba +// 0.427580 +0x3fdb5d79264135b5 +// -0.091363 +0xbfb76391f5310fca +// 0.114785 +0x3fbd628635108c69 +// 0.330627 +0x3fd528fdd0da952d +// 0.713511 +0x3fe6d514202abeff +// -1.000000 +0xbff0000000000000 +// 0.157745 +0x3fc430feacb489d6 +// 0.001864 +0x3f5e8ac1c4e3c1a3 +// -0.108163 +0xbfbbb08effdd39c8 +// -0.466291 +0xbfddd7b51f9680bc +// -0.907780 +0xbfed0c8980cfc567 +// 1.000000 +0x3ff0000000000000 +// 0.010160 +0x3f84cf03267a37c6 +// 0.530045 +0x3fe0f620d2dec559 +// 0.810767 +0x3fe9f1cd7b8e1c4c +// -0.470533 +0xbfde1d3809c5186c +// -0.051534 +0xbfaa62a9a6020a09 +// 0.576790 +0x3fe2751064c21f7c +// 0.517248 +0x3fe08d4c2cb484fe +// -0.017902 +0xbf9254de07ee8d45 +// 0.258962 +0x3fd092d58119f894 +// -0.736019 +0xbfe78d78b4d08d48 +// -0.627195 +0xbfe411fa65a88f3a +// -0.107489 +0xbfbb846b699fa06f +// 0.748791 +0x3fe7f61794d484cc +// -0.788436 +0xbfe93adda076fd19 +// -1.000000 +0xbff0000000000000 +// -0.357508 +0xbfd6e16773ff0bb3 +// -0.517531 +0xbfe08f9d8f3b6e98 +// -0.260985 +0xbfd0b3fa0f7d61c8 +// -0.364685 +0xbfd756fe64f7a5c4 +// 0.804567 +0x3fe9bf029aba0b3b +// 0.821152 +0x3fea46dffd6bb3f3 +// -0.170647 +0xbfc5d7c5232afb70 +// 0.872447 +0x3febeb160c984ce7 +// -0.024445 +0xbf99081b04cf6325 +// 0.171954 +0x3fc6029ac23a6997 +// 0.141187 +0x3fc2126a59c394d4 +// -0.180916 +0xbfc72842ddcf46a4 +// 0.501050 +0x3fe00899274d4c71 +// -0.037788 +0xbfa358f7b8c4f934 +// -0.927487 +0xbfedadf920003f82 +// 0.693774 +0x3fe6336660e42cf6 +// 1.000000 +0x3ff0000000000000 +// -0.289126 +0xbfd281099bcc0284 +// -0.653697 +0xbfe4eb165f3a7fdf +// -0.310871 +0xbfd3e54fbb1d0d4b +// -0.144795 +0xbfc288a0ea531417 +// -0.882088 +0xbfec3a108706b5c3 +// 0.167683 +0x3fc5769f7aa5099d +// 0.126115 +0x3fc0248971fb9952 +// 0.286216 +0x3fd2515d5a601e37 +// -0.086327 +0xbfb6198630a9511c +// 0.132927 +0x3fc103c1bdcc9624 +// -0.146876 +0xbfc2ccd5b8dd73df +// -0.652652 +0xbfe4e285fe9e1b20 +// -0.896410 +0xbfecaf62fd73b790 +// -0.955604 +0xbfee944f55f1c2b0 +// 0.154305 +0x3fc3c04493322948 +// 0.427113 +0x3fdb55d1e21b584f +// 0.190876 +0x3fc86e9cb6a33a40 +// 0.083501 +0x3fb56055137fe1a5 +// 0.454284 +0x3fdd12fbd8f3b672 +// -1.000000 +0xbff0000000000000 +// 0.932265 +0x3fedd51dd7d5a38c +// 0.630542 +0x3fe42d66cc557afa +// -0.442829 +0xbfdc574f7cc637ea +// -0.384558 +0xbfd89c98fa57cf88 +// -0.541392 +0xbfe1531646313ae7 +// -0.808473 +0xbfe9df029098a738 +// 0.661056 +0x3fe5275f1bf2bf2e +// -0.051742 +0xbfaa7dfd74745620 +// 0.192915 +0x3fc8b16f3bd2eee8 +// -1.000000 +0xbff0000000000000 +// 0.446781 +0x3fdc980e1500d536 +// -0.155545 +0xbfc3e8e3bd25dee0 +// 0.008131 +0x3f80a70a12f4a5c4 +// -0.069731 +0xbfb1d9e0de1fcd7b +// -0.248374 +0xbfcfcabb0f1c0a08 +// -0.115684 +0xbfbd9d79a26e38aa +// 0.312500 +0x3fd3ffffc0bc4a54 +// -0.067555 +0xbfb14b5129d02964 +// -0.164896 +0xbfc51b53d8aab438 +// -0.334679 +0xbfd56b61d09e913b +// -0.574300 +0xbfe260aa08900605 +// 0.222458 +0x3fcc79843a038e7c +// 0.722956 +0x3fe722741db2bb20 +// 0.308687 +0x3fd3c1888929bd6b +// 0.063273 +0x3fb032a85b40a6da +// -0.759954 +0xbfe8518adbcc9347 +// -0.766530 +0xbfe887695da17730 +// 0.049675 +0x3fa96efba08a0159 +// -1.000000 +0xbff0000000000000 +// -0.819460 +0xbfea390506a5c7e5 +// 0.473815 +0x3fde52fc325c6ff5 +// -0.412210 +0xbfda61a67b79400a +// 0.792268 +0x3fe95a4217e5ad6e +// -0.880150 +0xbfec2a2f7c3b325c +// -0.120399 +0xbfbed2794db50b4f +// -0.051121 +0xbfaa2c865a481296 +// 0.044547 +0x3fa6ced75782d097 +// 0.466601 +0x3fdddcc8a4c51bf8 +// -0.088134 +0xbfb68fec698ef609 +// 0.310377 +0x3fd3dd383165650e +// 0.545705 +0x3fe17669c3933aee +// 0.283686 +0x3fd227e8350b12e6 +// 0.159170 +0x3fc45fae174fec33 +// -0.116833 +0xbfbde8bda32351a1 +// -0.079423 +0xbfb455143989e3db +// -0.448003 +0xbfdcac142adf8afd +// 0.238149 +0x3fce7bac017b1798 +// -0.232347 +0xbfcdbd8c9db3c39d +// 0.114314 +0x3fbd43ac4d8acde2 +// 0.410705 +0x3fda48ff6875b30b +// -0.112798 +0xbfbce052235a71a1 +// 0.410973 +0x3fda4d60b343d3ed +// -0.293071 +0xbfd2c1ac32c49485 +// -0.195418 +0xbfc90377609c4b1c +// 0.482471 +0x3fdee0cd59c1306f +// 0.533247 +0x3fe1105cae9cfd50 +// -0.309394 +0xbfd3cd1b7fb824c4 +// 0.655184 +0x3fe4f7439f85ca5b +// 0.781131 +0x3fe8ff069a916d5a +// 1.000000 +0x3ff0000000000000 +// -0.599914 +0xbfe3327dd7dbe490 +// 0.222390 +0x3fcc77461895d5de +// 0.818918 +0x3fea34930dd94baf +// 0.252063 +0x3fd021cc4fce57c3 +// -0.043519 +0xbfa64821f8b6cd7a +// 0.095324 +0x3fb8671f42ed97b1 +// 0.110032 +0x3fbc2b0f4cf08143 +// 0.143397 +0x3fc25ad2c5ce07d7 +// -0.267527 +0xbfd11f2a6af4713e +// 0.884487 +0x3fec4db760e22dc1 +// 0.515077 +0x3fe07b8307bcd594 +// -0.348916 +0xbfd654a34e08fbfc +// 0.479605 +0x3fdeb1d803b21b6e +// 0.336212 +0x3fd5847d3f1019d7 +// -0.692964 +0xbfe62cc3d20a796a +// -0.264871 +0xbfd0f3a6550763d4 +// -0.552580 +0xbfe1aebba3800bc9 +// -0.325957 +0xbfd4dc7ba41da8c6 +// -0.161948 +0xbfc4bab50236cb3f +// -0.093951 +0xbfb80d2c7ca9e839 +// -0.509227 +0xbfe04b96fcb8af3a +// -0.550965 +0xbfe1a18201d929ba +// 0.190202 +0x3fc85889ead28592 +// 0.017074 +0x3f917bc2f624c0d2 +// 0.494850 +0x3fdfaba07eb6b0aa +// 0.760073 +0x3fe85283b409a982 +// -0.527649 +0xbfe0e27f54d6c4bc +// 0.523618 +0x3fe0c17aacfa6334 +// -0.131591 +0xbfc0d7fa91b852e5 +// -0.201113 +0xbfc9be15f06da29e +// -0.288534 +0xbfd277566a9287ad +// 0.014596 +0x3f8de4553fa57117 +// -0.130156 +0xbfc0a8f67032e966 +// 0.357003 +0x3fd6d9225f092b06 +// 0.315049 +0x3fd429c53b9818e1 +// -0.129221 +0xbfc08a50447268e8 +// 0.107275 +0x3fbb765cd0801b60 +// 0.444477 +0x3fdc724e705eb5c1 +// -0.044720 +0xbfa6e59a796f5e7a +// -0.525413 +0xbfe0d02e25acfc0d +// 0.211874 +0x3fcb1eaed71355ca +// 1.000000 +0x3ff0000000000000 +// 0.291011 +0x3fd29feb38ce08d2 +// 0.322277 +0x3fd4a031289bb70b +// -0.021226 +0xbf95bc467b74f124 +// -0.217919 +0xbfcbe4c196d7b2f6 +// 0.059776 +0x3fae9afd040389f5 +// -0.012712 +0xbf8a08f3a790e3ad +// -0.003101 +0xbf69673120a8daf7 +// 0.252035 +0x3fd02158bf305fe1 +// 0.437123 +0x3fdbf9d467118986 +// -0.541800 +0xbfe1566c02605550 +// 0.446577 +0x3fdc94b7617d5b76 +// -0.477642 +0xbfde91b1528deaa5 +// 0.282953 +0x3fd21be8e0645202 +// -0.512200 +0xbfe063f0dc367c0d +// 0.221225 +0x3fcc511ba80042c9 +// 0.220809 +0x3fcc437a85ceb680 +// 0.737045 +0x3fe795e04862f41c +// 0.204313 +0x3fca26eb24367941 +// -0.445933 +0xbfdc8a290c36ed1b +// -0.239256 +0xbfce9feef43e95f1 +// 1.000000 +0x3ff0000000000000 +// -0.182535 +0xbfc75d4c5a3493ae +// 0.550253 +0x3fe19babf27d9681 +// 0.539198 +0x3fe1411d0767d18f +// -0.525152 +0xbfe0ce0c4195bb35 +// 0.545980 +0x3fe178aaaa4a9cd5 +// 0.480466 +0x3fdebff5fd0ea697 +// -0.112781 +0xbfbcdf36811d6244 +// 0.502304 +0x3fe012df5608c9a7 +// 0.398942 +0x3fd9884499899e9a +// 0.293017 +0x3fd2c0c9947f2573 +// 0.931198 +0x3fedcc5fbf5eb484 +// -0.617380 +0xbfe3c1949cb94cdd +// -0.181223 +0xbfc73254483de8fb +// -0.156463 +0xbfc406fdb7203367 +// -0.046398 +0xbfa7c17edb0a7cd7 +// -0.588022 +0xbfe2d113a5abcfad +// 0.164733 +0x3fc515f719b2d1d2 +// 0.185639 +0x3fc7c3035c950739 +// 0.367876 +0x3fd78b47ef004cf0 +// 0.213969 +0x3fcb635660d2d3c1 +// -0.175601 +0xbfc67a15dd3a75ca +// -0.127773 +0xbfc05ae0cf4f7977 +// -0.028229 +0xbf9ce81617e37713 +// -0.114572 +0xbfbd549924ae442f +// -0.428243 +0xbfdb68546d4a9502 +// -0.577237 +0xbfe278b9b3e99700 +// -0.206120 +0xbfca6224fa0929b0 +// -0.538384 +0xbfe13a70adbac091 +// -0.046251 +0xbfa7ae456b30f27f +// 1.000000 +0x3ff0000000000000 +// -0.761464 +0xbfe85dea676a7ae4 +// -0.722666 +0xbfe72013f4120363 +// 0.576208 +0x3fe2704be3bfba1b +// -0.316990 +0xbfd4498fc992b266 +// 0.594149 +0x3fe303454edc70ae +// 0.094075 +0x3fb8154b2a571d1f +// -0.367947 +0xbfd78c710c66319d +// 0.145097 +0x3fc29288f919debd +// -0.195821 +0xbfc910ad6909453d +// 0.098501 +0x3fb9375dc4d8e957 +// 0.855722 +0x3feb6213a616c223 +// -0.093779 +0xbfb801dea369f4a6 +// -0.102497 +0xbfba3d40d845b257 +// -0.036785 +0xbfa2d56e4b2f0d4b +// -0.730161 +0xbfe75d7a599dedea +// -0.373512 +0xbfd7e79ce3fee71e +// -0.228693 +0xbfcd45cd73159e71 +// -0.314883 +0xbfd4270be92c3a49 +// 0.108370 +0x3fbbbe2654e9807a +// 0.542237 +0x3fe15a00c7434a72 +// 0.473460 +0x3fde4d2cd7f5b196 +// 0.035457 +0x3fa22765295b91f8 +// 0.268214 +0x3fd12a68fa78c74c +// -0.138743 +0xbfc1c253b1254110 +// 0.579806 +0x3fe28dc4b8efa35b +// 0.260837 +0x3fd0b18bb9b301b5 +// -0.257133 +0xbfd074dce36d0994 +// 0.308245 +0x3fd3ba4a1fa1881e +// -0.337382 +0xbfd597ab4e342db0 +// 1.000000 +0x3ff0000000000000 +// -0.465267 +0xbfddc6ee8b406d87 +// -0.801524 +0xbfe9a6163c2599d0 +// 0.451986 +0x3fdced549bbe420a +// -0.532719 +0xbfe10c09ab736820 +// -0.106716 +0xbfbb51bf503092e8 +// 0.422857 +0x3fdb1014f913241e +// -0.000995 +0xbf504cb000afef75 +// 0.442791 +0x3fdc56af30128d6e +// -0.195890 +0xbfc912edea43b131 +// -0.139162 +0xbfc1d010340ffd9c +// 0.007732 +0x3f7fabaa93650c31 +// 0.065160 +0x3fb0ae4f5e4e2b5e +// 0.439849 +0x3fdc267acd913281 +// -0.010844 +0xbf86356de2818646 +// 0.145690 +0x3fc2a5fa7f3ed4aa +// 0.051478 +0x3faa5b48c1ff9c32 +// 0.438066 +0x3fdc0945f42b94c3 +// -0.205356 +0xbfca4919dd1620f2 +// 0.913830 +0x3fed3e187bcacbed +// -0.626360 +0xbfe40b244a358741 +// 0.757484 +0x3fe83d4fcfaca0f0 +// -1.000000 +0xbff0000000000000 +// 0.027841 +0x3f9c8272b615160e +// 0.391947 +0x3fd915a7574be361 +// -0.518618 +0xbfe098850c5085ce +// -0.734580 +0xbfe781addf13f4b4 +// 0.454875 +0x3fdd1cac994a6f3f +// -0.042480 +0xbfa5bffc816aeabd +// -0.468449 +0xbfddfb0f6c1e26ed +// 0.387455 +0x3fd8cc0e19511185 +// -0.254929 +0xbfd050c0d5db3865 +// -0.920654 +0xbfed75fea28690e7 +// -0.613616 +0xbfe3a2bd547b7bd7 +// -0.338468 +0xbfd5a9779a6b4bc0 +// -0.337721 +0xbfd59d3744ff3275 +// -0.198844 +0xbfc973b545d5e1d3 +// 0.110266 +0x3fbc3a63658ddb30 +// -0.336525 +0xbfd589a11ee144c2 +// -0.318811 +0xbfd46766e4237d50 +// 0.093625 +0x3fb7f7cb01749b94 +// 0.296999 +0x3fd30207b77b828e +// -0.285973 +0xbfd24d616b8df42a +// -0.529594 +0xbfe0f26f9b486ebc +// 0.507025 +0x3fe0398d50c3e325 +// -0.263381 +0xbfd0db3b3f224bdc +// 0.458218 +0x3fdd5372b4bb182e +// -0.391650 +0xbfd910cb3a938f80 +// 0.269161 +0x3fd139f101e4efff +// 0.732573 +0x3fe7713c0d23950e +// -0.182226 +0xbfc7532bb9c644d9 +// 0.626616 +0x3fe40d3c47087f38 +// 0.002343 +0x3f633123ca0628a8 +// -0.033331 +0xbfa110b470c766e2 +// -0.351493 +0xbfd67edafbe1f2df +// -0.449986 +0xbfdccc925955faf4 +// 0.049606 +0x3fa965f35dbb826f +// 0.531792 +0x3fe104714ce06867 +// -0.913635 +0xbfed3c7e8a125fd6 +// -0.541996 +0xbfe1580849e266c6 +// 0.432124 +0x3fdba7e95bd1a343 +// 0.373693 +0x3fd7ea97e5ca0b33 +// -0.168757 +0xbfc599d625200af7 +// 0.511629 +0x3fe05f43554a8e17 +// 0.351791 +0x3fd683bedda65c17 +// 0.014705 +0x3f8e1de2d96bf5af +// -0.526036 +0xbfe0d54a1c073c9b +// -0.183083 +0xbfc76f4412f223db +// 0.131029 +0x3fc0c591df411416 +// -0.106399 +0xbfbb3cf15f36b8a0 +// -0.279959 +0xbfd1ead96c487a69 +// -0.400020 +0xbfd999eca0138906 +// 0.413338 +0x3fda7422a1d0fffb +// 0.095647 +0x3fb87c588b7067ff +// -0.363676 +0xbfd746784ba18053 +// -0.168233 +0xbfc588a9104b4b53 +// -0.296942 +0xbfd301189b5a52d4 +// -1.000000 +0xbff0000000000000 +// 0.281271 +0x3fd200583d27b2c2 +// 0.165582 +0x3fc531ca86d55b54 +// 0.275867 +0x3fd1a7cc4e5d94e9 +// 0.093959 +0x3fb80daeef6deeb0 +// -0.130071 +0xbfc0a62dcf17c481 +// -0.270429 +0xbfd14eb4e75cd6fb +// -0.046438 +0xbfa7c6c96f09e421 +// 0.457142 +0x3fdd41d13a717504 +// 0.403665 +0x3fd9d5a59dcafe86 +// 0.154479 +0x3fc3c5f62aa7469a +// -0.217238 +0xbfcbce779f3aa310 +// -0.510680 +0xbfe0577d85bd2d7d +// 0.326496 +0x3fd4e54efa2b29ff +// 0.409486 +0x3fda3503ebfba2ca +// 0.090472 +0x3fb7292e4b61aebb +// 0.213110 +0x3fcb472efe39c38e +// 0.005725 +0x3f7772e15c667c93 +// -0.176399 +0xbfc6943b8d45cfa5 +// 0.736131 +0x3fe78e632ccdd9af +// -0.309120 +0xbfd3c89f4c59d5ff +// 0.483393 +0x3fdeefeacac2c905 +// 0.277561 +0x3fd1c38e503aa9a6 +// -0.339138 +0xbfd5b46eaccb0e21 +// 0.311076 +0x3fd3e8ac0909de28 +// -0.105188 +0xbfbaed97d836ff6d +// 0.492599 +0x3fdf86bf11008671 +// -1.000000 +0xbff0000000000000 +// 0.048709 +0x3fa8f065f4dcb119 +// 0.286220 +0x3fd2516e73b58589 +// 0.248734 +0x3fcfd6837b90552f +// 0.619020 +0x3fe3cf03aaf1d3b1 +// 0.422923 +0x3fdb112a3350eef3 +// 0.074999 +0x3fb333228367e6ac +// 0.264032 +0x3fd0e5e76b33f7ee +// -0.341978 +0xbfd5e2f91d393425 +// -0.022999 +0xbf978cecb5323295 +// 0.540449 +0x3fe14b5b2c99630b +// -0.328999 +0xbfd50e50a8c83893 +// -0.078747 +0xbfb428c228f041a5 +// -0.584100 +0xbfe2b0f197cc298d +// -0.101633 +0xbfba04a312450f71 +// -0.241241 +0xbfcee0fc0388ccc2 +// -0.009005 +0xbf82712e4c6d6342 +// -0.352481 +0xbfd68f0ca787b957 +// -0.248577 +0xbfcfd15d44a6305a +// -0.045389 +0xbfa73d3088fa97b5 +// 0.528537 +0x3fe0e9c7593a6dd8 +// 0.008164 +0x3f80b8190d90180c +// -0.148975 +0xbfc311a015ac2b56 +// 0.307444 +0x3fd3ad282415e40e +// 0.024479 +0x3f9910edd60555e2 +// -0.211361 +0xbfcb0de1d5fbd266 +// -0.275826 +0xbfd1a7210846c632 +// 0.087883 +0x3fb67f7ea3695b1b +// 0.283657 +0x3fd2276eb2937bf3 +// 0.233969 +0x3fcdf2b43e703917 +// -0.476489 +0xbfde7ecc76f9f946 +// 0.576199 +0x3fe27038f5a1c75d +// 0.642670 +0x3fe490c156411473 +// -0.000587 +0xbf4339128e3d86a4 +// -0.443450 +0xbfdc617c2084b0ea +// -0.800071 +0xbfe99a2f5dfa8d45 +// -0.088025 +0xbfb688d14e351b01 +// -0.068542 +0xbfb18bfdf07b9d10 +// 0.274891 +0x3fd197d0f2b6f727 +// -0.428560 +0xbfdb6d880f1a96b9 +// -0.507357 +0xbfe03c43c85a3784 +// -0.918647 +0xbfed658e6273b8b6 +// 0.442503 +0x3fdc51f873513bee +// -0.787896 +0xbfe936720f27b1db +// 0.267118 +0x3fd118779ac68f4f +// -0.015460 +0xbf8fa9be41cb4fab +// -0.146091 +0xbfc2b3180cf464ab +// -0.919614 +0xbfed6d7a33120884 +// -0.113865 +0xbfbd263c933829a2 +// -0.488130 +0xbfdf3d87948f31a4 +// 1.000000 +0x3ff0000000000000 +// -0.355992 +0xbfd6c892e88caea9 +// 0.054072 +0x3fabaf597747f615 +// 0.386666 +0x3fd8bf21bb80f5cd +// 0.290528 +0x3fd298038ac106c2 +// 0.298740 +0x3fd31e8f8debdad0 +// 0.504433 +0x3fe02450a07644ed +// 0.474996 +0x3fde665392cfb3f9 +// 0.081926 +0x3fb4f9150f8071b5 +// -0.508804 +0xbfe048204315ae4d +// 0.148304 +0x3fc2fba3adf149b1 +// -0.191295 +0xbfc87c594235708a +// -0.189531 +0xbfc8428da3bfa5cb +// -0.793063 +0xbfe960c60ac3c366 +// 0.363728 +0x3fd7475025cc5923 +// 0.654243 +0x3fe4ef8e0ea6d942 +// -0.948756 +0xbfee5c34b0e9d43f +// -0.221117 +0xbfcc4d93b3855684 +// 0.478603 +0x3fdea16f886c9321 +// -0.507426 +0xbfe03cd66a3a074b +// -0.076999 +0xbfb3b63b365967dc +// -0.431147 +0xbfdb97ea03d6d23b +// 0.052130 +0x3faab0b96c5ade1b +// 0.355359 +0x3fd6be34f827174a +// 0.287031 +0x3fd25eb8a753ed2e +// -0.257295 +0xbfd0778555af96f9 +// -0.232958 +0xbfcdd191c330661f +// 0.307740 +0x3fd3b201cc70acf1 +// 0.059918 +0x3faead88922361fb +// -0.002907 +0xbf67d121829e775e +// -0.066496 +0xbfb105e93c912016 +// -0.205052 +0xbfca3f24d0b23cf0 +// -0.421794 +0xbfdafeac44ff71d0 +// -0.224386 +0xbfccb8aaf51cbba5 +// -0.060333 +0xbfaee3edac4f0171 +// -0.696051 +0xbfe6460dc2610b0b +// -0.080052 +0xbfb47e4f62c3395a +// 0.047279 +0x3fa834fbfd87c9df +// -0.321467 +0xbfd492ea0d2e61f6 +// -0.204168 +0xbfca222e61dfce14 +// 0.104109 +0x3fbaa6e2c6b4ab3b +// -0.744817 +0xbfe7d58a2f9dc085 +// -0.149118 +0xbfc3164e1225337e +// -0.612220 +0xbfe3974f4b55b210 +// 0.162642 +0x3fc4d171b78f5666 +// 0.392132 +0x3fd918b22ed085a7 +// -0.044949 +0xbfa7038571f6718c +// 0.443438 +0x3fdc614910240bdd +// 0.206522 +0x3fca6f4c618d1223 +// 0.518088 +0x3fe0942d0d01124b +// -1.000000 +0xbff0000000000000 +// -0.397613 +0xbfd9727bb9916483 +// 0.550526 +0x3fe19de8aff169c6 +// 0.819631 +0x3fea3a6bb1670c0a +// 0.083424 +0x3fb55b42665935f9 +// -0.040108 +0xbfa4890c9674bf83 +// 0.073374 +0x3fb2c89d0b332a61 +// -1.000000 +0xbff0000000000000 +// -0.249379 +0xbfcfeba6f94b50e3 +// -0.258547 +0xbfd08c07efdaa21b +// 0.265543 +0x3fd0fea8e89036ef +// -0.311533 +0xbfd3f029f5a69999 +// -0.206479 +0xbfca6de765ff365b +// -0.052581 +0xbfaaebdf6c8954be +// 0.315369 +0x3fd42f00211018a5 +// 0.112076 +0x3fbcb10378423867 +// 0.043494 +0x3fa644d60b9084dc +// 0.470977 +0x3fde247e3a937a6e +// -0.520271 +0xbfe0a60f85ae38a8 +// -0.169426 +0xbfc5afc08faff10c +// -0.439802 +0xbfdc25b78dfa572a +// -0.158980 +0xbfc4597450989f9e +// 0.090969 +0x3fb749c666a5deab +// -0.534908 +0xbfe11df6b9365b87 +// 0.190717 +0x3fc86966307fba34 +// 0.541284 +0x3fe15231d41e1c0a +// -0.029936 +0xbf9ea76f8cf345f5 +// 0.303802 +0x3fd3717d41527358 +// -0.150352 +0xbfc33ebdf94bb52b +// -0.270694 +0xbfd1530af4872553 +// -0.045461 +0xbfa746b50c26819c +// 0.260872 +0x3fd0b21edd89df02 +// -0.099820 +0xbfb98dcd991175ec +// 0.321841 +0x3fd4990943cd6734 +// 0.395067 +0x3fd948c5860ef125 +// -0.339716 +0xbfd5bde88c2ad21e +// -0.178580 +0xbfc6dbb320af6402 +// 0.081681 +0x3fb4e90b0a125821 +// -0.200000 +0xbfc99998b2dc7084 +// 0.366032 +0x3fd76d10429754e7 +// 0.467906 +0x3fddf22c9f87ece6 +// 0.269057 +0x3fd13839da58f66e +// 0.201812 +0x3fc9d4f5cc727a85 +// -0.398782 +0xbfd985a54ebacf11 +// 0.114838 +0x3fbd66098deb87ba +// -0.120688 +0xbfbee56de4ae2227 +// 0.374236 +0x3fd7f37aa0e73393 +// -0.665721 +0xbfe54d956d7dbf20 +// 0.598590 +0x3fe327a5cbe40f68 +// 0.596757 +0x3fe318a2a1389fad +// 0.737335 +0x3fe79840292e1543 +// -1.000000 +0xbff0000000000000 +// -0.327634 +0xbfd4f7f465c62d07 +// 0.114360 +0x3fbd46b24d7599a8 +// 0.882026 +0x3fec398e838282df +// 0.017230 +0x3f91a4de21a53c83 +// -0.338381 +0xbfd5a8084affe301 +// -0.234878 +0xbfce107c3fc5074e +// -0.382764 +0xbfd87f3550ba6803 +// 0.272875 +0x3fd176c994417b31 +// -0.106431 +0xbfbb3f0c593711d7 +// -0.034301 +0xbfa18fe20111c82e +// -0.166378 +0xbfc54be09187d2b6 +// 0.056649 +0x3fad010b9ead7cc1 +// -0.354819 +0xbfd6b55c284bc499 +// 0.512705 +0x3fe06813d95a4f09 +// -0.442309 +0xbfdc4ecb09ed9f42 +// 0.595521 +0x3fe30e8277b8e76d +// -0.560773 +0xbfe1f1db0c95a9b1 +// -0.506507 +0xbfe0354d4d2560f3 +// 0.367404 +0x3fd7838be10d43f7 +// -0.041915 +0xbfa575d20ee70c83 +// 0.220352 +0x3fcc347b47aa2045 +// 0.088737 +0x3fb6b7750146d58a +// 0.246762 +0x3fcf95e2826bca4d +// 0.594539 +0x3fe306768178744a +// 0.524509 +0x3fe0c8c72c68a2d6 +// 0.013324 +0x3f8b49762faeb650 +// 0.586073 +0x3fe2c11c99f792a8 +// -0.405591 +0xbfd9f535b82bc66a +// 0.259347 +0x3fd099251ff33bc9 +// -0.106312 +0xbfbb373b4db0e591 +// -0.465873 +0xbfddd0dd846c4851 +// 0.053833 +0x3fab8ff337fe49f1 +// 0.477713 +0x3fde92da274c2fa6 +// 0.068126 +0x3fb170ba810a3563 +// 0.029229 +0x3f9dee4d73736302 diff --git a/Testing/Patterns/DSP/Filtering/DECIM/DECIMF64/Input3_f64.txt b/Testing/Patterns/DSP/Filtering/DECIM/DECIMF64/Input3_f64.txt new file mode 100644 index 000000000..1aa013fc8 --- /dev/null +++ b/Testing/Patterns/DSP/Filtering/DECIM/DECIMF64/Input3_f64.txt @@ -0,0 +1,266 @@ +D +132 +// 1.000000 +0x3ff0000000000000 +// -0.520412 +0xbfe0a737e782e25e +// 1.000000 +0x3ff0000000000000 +// 0.188984 +0x3fc830a2318cde64 +// 0.608879 +0x3fe37bf082496b22 +// -1.000000 +0xbff0000000000000 +// -0.016745 +0xbf9125979d155692 +// -0.810495 +0xbfe9ef9258e0a93e +// -0.087322 +0xbfb65abb240db184 +// -0.304024 +0xbfd3752219b788b5 +// -0.046401 +0xbfa7c1d3230bdb31 +// -1.000000 +0xbff0000000000000 +// 0.398126 +0x3fd97ae3d83c3d4d +// 0.658593 +0x3fe51331035b27cc +// -0.133533 +0xbfc1179f21308856 +// 0.126775 +0x3fc03a2bfd62abe6 +// -1.000000 +0xbff0000000000000 +// 1.000000 +0x3ff0000000000000 +// -0.280437 +0xbfd1f2afeea2b741 +// 0.575815 +0x3fe26d134fda1d37 +// -0.525492 +0xbfe0d0d557e4d6ae +// -0.832069 +0xbfeaa050125887c8 +// 1.000000 +0x3ff0000000000000 +// -0.233220 +0xbfcdda26225497ec +// 1.000000 +0x3ff0000000000000 +// -0.936015 +0xbfedf3d5c274bd33 +// 0.248383 +0x3fcfcb01650e2c58 +// 0.238380 +0x3fce8338ff3409eb +// -0.769100 +0xbfe89c76c46d5b52 +// -1.000000 +0xbff0000000000000 +// -0.151459 +0xbfc36302fc07f65a +// 0.652740 +0x3fe4e33ecd92c167 +// 1.000000 +0x3ff0000000000000 +// -0.247852 +0xbfcfb99c6303a9f9 +// -0.934491 +0xbfede759c276ad89 +// -0.492010 +0xbfdf7d167b584333 +// 0.161495 +0x3fc4abde2474dae8 +// 0.226072 +0x3fccefed057e918f +// 1.000000 +0x3ff0000000000000 +// 0.050132 +0x3fa9aaf6d26d840b +// -0.061846 +0xbfafaa43d1e7fb0f +// 0.082452 +0x3fb51b940f2df3a1 +// -1.000000 +0xbff0000000000000 +// 0.212021 +0x3fcb23802458e431 +// 1.000000 +0x3ff0000000000000 +// 0.312720 +0x3fd40398f07b47f3 +// 0.242753 +0x3fcf128afc27e3e4 +// -1.000000 +0xbff0000000000000 +// -0.312123 +0xbfd3f9d2694b9025 +// 1.000000 +0x3ff0000000000000 +// -0.096143 +0xbfb89cd8440c1ec6 +// 0.239664 +0x3fcead4eb1ad6afc +// 0.948806 +0x3fee5c9ef55d9d4f +// 1.000000 +0x3ff0000000000000 +// 0.639718 +0x3fe47890f3600470 +// -0.944294 +0xbfee37a8d5f4974e +// -0.522532 +0xbfe0b894dd8d5621 +// -0.616196 +0xbfe3b7e17359643b +// -0.806162 +0xbfe9cc13e856e911 +// 1.000000 +0x3ff0000000000000 +// -0.394164 +0xbfd939fc9cccbb44 +// 0.631402 +0x3fe43471dc6ea7e0 +// 0.118589 +0x3fbe5bdacd0b89cd +// 1.000000 +0x3ff0000000000000 +// 0.395985 +0x3fd957d2cbf4ad8f +// 0.204826 +0x3fca37ba0bc93519 +// 0.758218 +0x3fe84351c2899d6e +// -1.000000 +0xbff0000000000000 +// -1.000000 +0xbff0000000000000 +// 0.260056 +0x3fd0a4c10e517d50 +// 0.155803 +0x3fc3f1594dece130 +// -0.163446 +0xbfc4ebd07b7e9873 +// -1.000000 +0xbff0000000000000 +// -0.233058 +0xbfcdd4d45a23cb32 +// 0.096252 +0x3fb8a3fcbac9fd8d +// -1.000000 +0xbff0000000000000 +// -0.653197 +0xbfe4e6fcd97f2dce +// -0.175753 +0xbfc67f110aaf28f5 +// 1.000000 +0x3ff0000000000000 +// -0.552246 +0xbfe1abfefd379f33 +// -0.370946 +0xbfd7bd960fd0ce36 +// -0.062857 +0xbfb0176ad01bd36a +// -0.123468 +0xbfbf9b93b8e14b2f +// -0.074470 +0xbfb31073ca785fe8 +// -0.053263 +0xbfab454ee770e40b +// -0.685909 +0xbfe5f2f782340cba +// -0.023738 +0xbf984ebf045bd4d2 +// -1.000000 +0xbff0000000000000 +// 0.876046 +0x3fec089273c68b3d +// -1.000000 +0xbff0000000000000 +// -1.000000 +0xbff0000000000000 +// -0.130308 +0xbfc0aded9b07d680 +// 0.732186 +0x3fe76e1246f2942c +// -0.494913 +0xbfdfaca685111a17 +// 1.000000 +0x3ff0000000000000 +// -0.823834 +0xbfea5cd99214f10d +// -0.310828 +0xbfd3e499301a1e1b +// -0.498392 +0xbfdfe5a6d93f1ae9 +// -1.000000 +0xbff0000000000000 +// 0.923354 +0x3fed8c1dd9d2604d +// -1.000000 +0xbff0000000000000 +// -0.233467 +0xbfcde23bfe951f6b +// -0.190656 +0xbfc86768646faf39 +// -0.214762 +0xbfcb7d524a92154f +// -0.299101 +0xbfd32478d522c243 +// 0.039793 +0x3fa45fc087f92cb7 +// 0.488838 +0x3fdf491f2fa06b8a +// -0.659808 +0xbfe51d25598a94ac +// -1.000000 +0xbff0000000000000 +// -0.086666 +0xbfb62fb5ea89e6e6 +// -1.000000 +0xbff0000000000000 +// 0.207991 +0x3fca9f70fa058311 +// -0.010786 +0xbf8617025fe8d39e +// -1.000000 +0xbff0000000000000 +// 0.407109 +0x3fda0e13c6180503 +// -0.877082 +0xbfec110dd0fc2081 +// 1.000000 +0x3ff0000000000000 +// -0.233138 +0xbfcdd7766f9d2114 +// 0.736267 +0x3fe78f7fb1b425de +// 0.027202 +0x3f9bdacabfbebbdc +// -1.000000 +0xbff0000000000000 +// 0.022788 +0x3f9755c52935a9a1 +// -0.185843 +0xbfc7c9b6871503fa +// 0.291056 +0x3fd2a0aad792acf9 +// -0.576073 +0xbfe26f30d0d8759f +// 1.000000 +0x3ff0000000000000 +// -0.212251 +0xbfcb2b08bea1f343 +// -0.034383 +0xbfa19a9f300795c6 +// -0.125182 +0xbfc005f7a0e117c2 +// 0.392711 +0x3fd9222d25beab9d +// -0.084091 +0xbfb5870315582fb3 +// 1.000000 +0x3ff0000000000000 diff --git a/Testing/Patterns/DSP/Filtering/DECIM/DECIMF64/Reference2_f64.txt b/Testing/Patterns/DSP/Filtering/DECIM/DECIMF64/Reference2_f64.txt new file mode 100644 index 000000000..cd4b8f131 --- /dev/null +++ b/Testing/Patterns/DSP/Filtering/DECIM/DECIMF64/Reference2_f64.txt @@ -0,0 +1,530 @@ +D +264 +// -0.083333 +0xbfb5555555555555 +// -0.159032 +0xbfc45b29aaf361dc +// 0.013648 +0x3f8bf35e6423d9a1 +// -0.028260 +0xbf9cf02fd4bfb497 +// 0.047619 +0x3fa8618618618618 +// 0.105074 +0x3fbae626a3c3b5f8 +// -0.066667 +0xbfb1111111111111 +// -0.143457 +0xbfc25ccaf40b44a8 +// 0.047619 +0x3fa8618618618618 +// 0.108846 +0x3fbbdd5611c956da +// -0.012172 +0xbf88edcec0afb91e +// -0.066011 +0xbfb0e61e5ad698f2 +// 0.083333 +0x3fb5555555555555 +// 0.233130 +0x3fcdd73120fc162e +// 0.150026 +0x3fc334098f59664a +// 0.090660 +0x3fb7357f83becc84 +// -0.055556 +0xbfac71c71c71c71c +// -0.098292 +0xbfb929ae90ba2e68 +// -0.177755 +0xbfc6c0aaa8b905c1 +// -0.258581 +0xbfd08c9816c67f32 +// -0.034947 +0xbfa1e4989a39c0a4 +// -0.102729 +0xbfba4c6f8463feca +// -0.218130 +0xbfcbebaae3edf026 +// -0.323552 +0xbfd4b513f4792bdd +// 0.009479 +0x3f8369a19f9b8e11 +// 0.085624 +0x3fb5eb7978f7f495 +// 0.214861 +0x3fcb808d639068e7 +// 0.324071 +0x3fd4bd9280ad3906 +// -0.023135 +0xbf97b0c23e515290 +// 0.001349 +0x3f56187b42067100 +// 0.047667 +0x3fa867c8ef2373de +// 0.120641 +0x3fbee250a3ea83a0 +// 0.013045 +0x3f8ab725e41bfe55 +// -0.015577 +0xbf8fe7098d1d58aa +// -0.042099 +0xbfa58e02d7315df8 +// -0.077138 +0xbfb3bf4b81f0bac9 +// 0.083333 +0x3fb5555555555555 +// 0.123646 +0x3fbfa74304a8bc83 +// -0.039179 +0xbfa40f460df14130 +// 0.131197 +0x3fc0cb1310e903dd +// 0.074746 +0x3fb3228c15f205c5 +// 0.002599 +0x3f6549adddccbdd9 +// -0.020238 +0xbf94b95c63341547 +// 0.012480 +0x3f898f3f6d8397e0 +// 0.084550 +0x3fb5a5175bf34ffd +// 0.103510 +0x3fba7f9f907e4438 +// 0.023643 +0x3f9835e828ab20f6 +// 0.045134 +0x3fa71bd5acacc560 +// 0.066507 +0x3fb106978c5eda63 +// 0.135498 +0x3fc15803a74c0a90 +// 0.213859 +0x3fcb5fbb5b282ed8 +// -0.034826 +0xbfa1d4b4e0809a94 +// -0.024618 +0xbf993557c0d09ad4 +// -0.073823 +0xbfb2e60f9ba08de9 +// -0.050391 +0xbfa9cce12e39a206 +// -0.296475 +0xbfd2f97191207ef9 +// 0.018381 +0x3f92d28673359a28 +// -0.010857 +0xbf863bfe94afafc0 +// -0.049159 +0xbfa92b6103af3f82 +// -0.099107 +0xbfb95f18a3ebc1fe +// -0.140394 +0xbfc1f87162e0d736 +// -0.041667 +0xbfa5555555555555 +// -0.052079 +0xbfaaaa111150ec56 +// -0.077714 +0xbfb3e514a5c38d5b +// -0.123581 +0xbfbfa30203e0a9b8 +// -0.184106 +0xbfc790c67f789756 +// -0.083333 +0xbfb5555555555555 +// 0.130260 +0x3fc0ac5b356e9433 +// -0.024463 +0xbf990cb2c6402b9c +// -0.215646 +0xbfcb9a4dca15335e +// -0.001305 +0xbf55624a9821318f +// 0.037415 +0x3fa3281911b41642 +// -0.025587 +0xbf9a337d8191a5b3 +// 0.043264 +0x3fa626b960f44717 +// 0.047619 +0x3fa8618618618618 +// 0.105388 +0x3fbafaace1ff1086 +// 0.041667 +0x3fa5555555555555 +// 0.161966 +0x3fc4bb512b33e4fd +// 0.083333 +0x3fb5555555555555 +// -0.119704 +0xbfbea4f130526e3e +// -0.151555 +0xbfc3662645b4c596 +// 0.128796 +0x3fc07c65705c1873 +// -0.013148 +0xbf8aed3a6ef26250 +// -0.023929 +0xbf9880c94a416aa9 +// -0.070160 +0xbfb1f607963ca21e +// -0.312616 +0xbfd401e7afe821b2 +// 0.023162 +0x3f97b7b72117947c +// 0.018177 +0x3f929cfbca2cdca1 +// 0.053603 +0x3fab71d0ea95f427 +// 0.158578 +0x3fc44c48abd3054b +// -0.010137 +0xbf84c2c1d39a137b +// -0.052940 +0xbfab1ae8b20b925d +// -0.122147 +0xbfbf44ff3119062b +// -0.269422 +0xbfd13e3440344386 +// 0.047619 +0x3fa8618618618618 +// 0.127600 +0x3fc05532a72d6f24 +// 0.160151 +0x3fc47fd694c8adc9 +// -0.183586 +0xbfc77fc211281619 +// -0.036219 +0xbfa28b4aaa5dd2ba +// -0.096213 +0xbfb8a16f9514bf7d +// -0.269481 +0xbfd13f2b2bf4d222 +// -0.161931 +0xbfc4ba2736017c35 +// -0.083333 +0xbfb5555555555555 +// 0.010861 +0x3f863e5cfa370dea +// 0.033322 +0x3fa10fa0935d1fe6 +// 0.056394 +0x3facdfa3f2afd0ef +// -0.073984 +0xbfb2f0a59777dcc0 +// 0.039479 +0x3fa436a013a28bb9 +// 0.087986 +0x3fb6863a9590b109 +// -0.194928 +0xbfc8f36a50d4bfd3 +// -0.264525 +0xbfd0edf9908047cf +// -0.062802 +0xbfb013c5c0ca5bc0 +// -0.002643 +0xbf65a6f6435b4964 +// 0.044957 +0x3fa704a5e721bf28 +// 0.123608 +0x3fbfa4c509e9ca37 +// 0.065988 +0x3fb0e49b5204a40e +// 0.019231 +0x3f93b169e087a5cb +// 0.066667 +0x3fb1111111111111 +// 0.146908 +0x3fc2cddec3c55df8 +// -0.161105 +0xbfc49f1536aa51e9 +// 0.066850 +0x3fb11d11d76b894d +// 0.227693 +0x3fcd250d8e8678b0 +// -0.004375 +0xbf71eb14f217c7c2 +// -0.031189 +0xbf9ff016e767e155 +// -0.024538 +0xbf992079d79e0ece +// 0.104361 +0x3fbab76b3e1d4e87 +// 0.167565 +0x3fc572c3e7a91ba9 +// -0.022702 +0xbf973f24eb6346e4 +// -0.073761 +0xbfb2e2044c767261 +// -0.137787 +0xbfc1a304ef36d37b +// -0.117765 +0xbfbe25da4b8d55ce +// -0.318917 +0xbfd469235e6761d5 +// -0.083333 +0xbfb5555555555555 +// -0.007014 +0xbf7cbad332db178f +// 0.027926 +0x3f9c98b2c445f2b3 +// 0.033902 +0x3fa15b9e1d80ad06 +// -0.003805 +0xbf6f2ae1fc7191c6 +// -0.033370 +0xbfa115d051eb2ae6 +// 0.066667 +0x3fb1111111111111 +// 0.135998 +0x3fc1686432648e4c +// -0.012903 +0xbf8a6d0800cecf7b +// 0.266565 +0x3fd10f64c68f04e8 +// 0.041667 +0x3fa5555555555555 +// 0.065366 +0x3fb0bbd0440fd780 +// 0.043839 +0x3fa6721ae965ea54 +// -0.145745 +0xbfc2a7c2c44d00d8 +// -0.000100 +0xbf1a3e928dff3200 +// -0.081735 +0xbfb4ec9c7d973035 +// -0.039803 +0xbfa4610e5de9d119 +// -0.185818 +0xbfc7c8e399909e1f +// 0.140417 +0x3fc1f92b428aac06 +// 0.110485 +0x3fbc48bcda5e7784 +// -0.019892 +0xbf945e7b7882417e +// -0.058601 +0xbfae010262432c5e +// 0.048180 +0x3fa8ab0c12ab9e6e +// -0.043745 +0xbfa665c3c5b60847 +// 0.026855 +0x3f9b7fcd218499cd +// -0.113524 +0xbfbd0fe6bde58f42 +// 0.138187 +0x3fc1b01a1ed19877 +// 0.102275 +0x3fba2eacc030154a +// -0.022885 +0xbf976f33f3dd59c7 +// -0.433180 +0xbfdbb9380bdcefd1 +// 0.067035 +0x3fb129324a1c13c8 +// -0.198740 +0xbfc9704d153dcbb9 +// 0.004848 +0x3f73dbd6b1b6582a +// -0.099280 +0xbfb96a645903770f +// -0.030430 +0xbf9f290fba846143 +// 0.112736 +0x3fbcdc45016afa84 +// -0.061613 +0xbfaf8bb563effbb0 +// -0.011709 +0xbf87facf6c491a60 +// -0.054250 +0xbfabc69729a36f78 +// -0.007008 +0xbf7cb43dac99a27c +// -0.023108 +0xbf97a9a0e1397b90 +// -0.015367 +0xbf8f78f9e60279d7 +// -0.317772 +0xbfd4566090777e8c +// 0.164369 +0x3fc50a0820fe2af8 +// 0.083101 +0x3fb54623964a6696 +// -0.013890 +0xbf8c726120fc5e9c +// -0.047619 +0xbfa8618618618618 +// -0.249732 +0xbfcff73a9fa8f235 +// -0.025394 +0xbf9a00cb1ad5def4 +// 0.046784 +0x3fa7f404cb2a7b57 +// 0.002246 +0x3f6265f7207b3e40 +// 0.061542 +0x3faf8278d3ee899f +// 0.038378 +0x3fa3a643217f3498 +// -0.291960 +0xbfd2af78cd722808 +// -0.163322 +0xbfc4e7ba1589caef +// 0.099698 +0x3fb985d71dbd9859 +// -0.019471 +0xbf93f02a640d4996 +// -0.227016 +0xbfcd0edd6d6f425a +// 0.093238 +0x3fb7de78e10c4c16 +// -0.122156 +0xbfbf459c2c68a0a3 +// -0.021790 +0xbf96503574db4307 +// -0.016437 +0xbf90d4cb7605873f +// 0.131139 +0x3fc0c9296a92e9a1 +// 0.160142 +0x3fc47f8817487df5 +// 0.001589 +0x3f5a0ad67640eef6 +// 0.166113 +0x3fc5432eb79c6f34 +// -0.038858 +0xbfa3e5236a6455d2 +// 0.039477 +0x3fa4364eeaad284e +// -0.043802 +0xbfa66d36c786364f +// 0.134812 +0x3fc14185b72d38b5 +// -0.044166 +0xbfa69cee924954f5 +// -0.311564 +0xbfd3f0aac7c3264d +// -0.063707 +0xbfb04f193ee756c4 +// -0.033662 +0xbfa13c1f7bbaecbb +// -0.047619 +0xbfa8618618618618 +// -0.053893 +0xbfab97e751c85d5f +// -0.031665 +0xbfa0365c9288622f +// -0.363929 +0xbfd74a9b25837a98 +// 0.023640 +0x3f9835359c0ec3dd +// 0.053278 +0x3fab47390a2766a8 +// 0.003033 +0x3f68d8ad512321f0 +// 0.000690 +0x3f469fe3179dc250 +// 0.018678 +0x3f93206f548016f8 +// -0.138837 +0xbfc1c5685f2ae5e4 +// -0.055780 +0xbfac8f2aba1f8a29 +// 0.085087 +0x3fb5c83e872f0222 +// -0.010377 +0xbf8540937f1e3f35 +// 0.085656 +0x3fb5ed92ce2b342c +// 0.168288 +0x3fc58a74ecb3e707 +// 0.146737 +0x3fc2c845f5ce4856 +// -0.003093 +0xbf6956edb671963b +// -0.054039 +0xbfabaaf086be9a74 +// 0.073319 +0x3fb2c50493758412 +// -0.067298 +0xbfb13a6f2ad4a031 +// -0.010890 +0xbf864d9057aef29f +// 0.172195 +0x3fc60a7a3ca1643b +// -0.011132 +0xbf86cc6e764695ae +// 0.043235 +0x3fa622d7f685a5a5 +// 0.038076 +0x3fa37ebafd31dd48 +// -0.285964 +0xbfd24d3daa48c415 +// -0.228668 +0xbfcd44ff97dc136c +// -0.143719 +0xbfc26560c1a53978 +// 0.052218 +0x3faabc505eb5fef5 +// -0.197439 +0xbfc945ac74ad0cd0 +// -0.102930 +0xbfba5998d3320173 +// -0.074632 +0xbfb31b170a783770 +// -0.044214 +0xbfa6a341cef867a8 +// 0.022749 +0x3f974b91b5517441 +// 0.181195 +0x3fc731670b7580cb +// -0.168483 +0xbfc590dbe6ff5636 +// -0.038056 +0xbfa37c1777ab1118 +// -0.090889 +0xbfb744835a341463 +// 0.004185 +0x3f71242fb974d7b3 +// 0.179188 +0x3fc6efa0bb92e994 +// -0.325289 +0xbfd4d186dc6a60a8 +// -0.232091 +0xbfcdb528c8653714 +// 0.218641 +0x3fcbfc6ff420220f +// -0.014741 +0xbf8e309d8c49f5e2 +// 0.092190 +0x3fb799bea2839c12 +// -0.112209 +0xbfbcb9b498f57f29 +// -0.076607 +0xbfb39c82482f2ad0 +// 0.150763 +0x3fc34c336c43a5a4 +// -0.047619 +0xbfa8618618618618 +// -0.085643 +0xbfb5ecba863d5dec +// -0.163631 +0xbfc4f1dab2f6d9c1 +// 0.013118 +0x3f8add6019ceb24e +// -0.104849 +0xbfbad75eb2149dbc +// -0.027738 +0xbf9c6771e752542a +// 0.009910 +0x3f844ba801bbd208 +// -0.072373 +0xbfb28702b3bbd15b +// -0.114415 +0xbfbd4a536046c505 +// 0.306576 +0x3fd39ef167e4543d diff --git a/Testing/Patterns/DSP/Filtering/DECIM/DECIMF64/Reference3_f64.txt b/Testing/Patterns/DSP/Filtering/DECIM/DECIMF64/Reference3_f64.txt new file mode 100644 index 000000000..32ec6514b --- /dev/null +++ b/Testing/Patterns/DSP/Filtering/DECIM/DECIMF64/Reference3_f64.txt @@ -0,0 +1,1278 @@ +D +638 +// 0.055556 +0x3fac71c71c71c71c +// 0.082199 +0x3fb50b03991b299d +// 0.033333 +0x3fa1111111111111 +// 0.072966 +0x3fb2ade8adf85318 +// 0.033827 +0x3fa151b9575db490 +// 0.012098 +0x3f88c6ae49268810 +// -0.010561 +0xbf85a1444e6504a2 +// -0.078248 +0xbfb40812927740f0 +// -0.002911 +0xbf67d83f1563f08d +// -0.015956 +0xbf9056aa7dbadea6 +// -0.030547 +0xbf9f47c19296d65f +// -0.078472 +0xbfb416beb2653c0e +// 0.022118 +0x3f96a61fdca752ef +// 0.080825 +0x3fb4b0ecd35fbb28 +// 0.132113 +0x3fc0e911c7b9e5a9 +// 0.190444 +0x3fc86076b3d7a1f5 +// 0.082629 +0x3fb5272bdde0b148 +// 0.033333 +0x3fa1111111111111 +// 0.057319 +0x3fad58e226c38ade +// 0.100498 +0x3fb9ba3ca2752c42 +// 0.126161 +0x3fc02609c8c7e8a6 +// 0.124088 +0x3fbfc43b8cd71eee +// 0.033333 +0x3fa1111111111111 +// 0.066667 +0x3fb1111111111111 +// 0.092226 +0x3fb79c1f974fb19b +// 0.117785 +0x3fbe272e1d8e5225 +// 0.018519 +0x3f92f684bda12f68 +// 0.037037 +0x3fa2f684bda12f68 +// 0.038222 +0x3fa391d3a0751d46 +// 0.039407 +0x3fa42d2283490b24 +// 0.008279 +0x3f80f4cd8b3ac251 +// 0.016559 +0x3f90f4cd8b3ac251 +// 0.032784 +0x3fa0c9193961f0ee +// 0.049010 +0x3fa917cbad2680b2 +// 0.039598 +0x3fa4463ec9394628 +// 0.030187 +0x3f9ee963ca981740 +// -0.012557 +0xbf89b7b03ec8ffec +// -0.055302 +0xbfac508a04b08b96 +// -0.002805 +0xbf66fa1680096fd3 +// -0.005610 +0xbf76fa1680096fd3 +// 0.003673 +0x3f6e17a3dcae61d8 +// 0.012956 +0x3f8a88dd2e5be8d5 +// 0.040758 +0x3fa4de36b833a601 +// 0.068559 +0x3fb18d1b126828e6 +// 0.091771 +0x3fb77e4de17d7880 +// 0.114983 +0x3fbd6f80b092c81b +// -0.031150 +0xbf9fe5b513b1ca2c +// -0.062299 +0xbfafe5b513b1ca2c +// -0.109849 +0xbfbc1f179af33e74 +// -0.157399 +0xbfc425aa5606cbea +// -0.199566 +0xbfc98b6399189bf7 +// -0.241733 +0xbfcef11cdc2a6c05 +// -0.276364 +0xbfd1aff3e9204648 +// -0.310995 +0xbfd3e759642b568c +// -0.031946 +0xbfa05b37100217ad +// -0.002094 +0xbf612774d70a3aa0 +// 0.000928 +0x3f4e6bcf3248e858 +// 0.001857 +0x3f5e6bcf3248e858 +// 0.001640 +0x3f5ade00620055f7 +// 0.001423 +0x3f57503191b7c396 +// 0.002733 +0x3f6663503a4e1602 +// 0.004043 +0x3f708f43d5e0251e +// -0.013166 +0xbf8af699b3f5bf34 +// -0.030374 +0xbf9f1a6aa96dc87b +// -0.043656 +0xbfa65a230a56cc84 +// -0.056939 +0xbfad2710bff6b4cb +// 0.018519 +0x3f92f684bda12f68 +// 0.037037 +0x3fa2f684bda12f68 +// 0.055556 +0x3fac71c71c71c71c +// 0.074074 +0x3fb2f684bda12f68 +// 0.098384 +0x3fb92fac83975aa9 +// 0.122693 +0x3fbf68d4498d85eb +// 0.147003 +0x3fc2d0fe07c1d896 +// 0.171313 +0x3fc5ed91eabcee37 +// 0.002380 +0x3f637f15f38c7ae9 +// 0.004760 +0x3f737f15f38c7ae9 +// 0.007140 +0x3f7d3ea0ed52b85e +// 0.009520 +0x3f837f15f38c7ae9 +// 0.002096 +0x3f612b1d716e1640 +// -0.005328 +0xbf75d30e75aadf94 +// -0.012752 +0xbf8a1dd5d2066522 +// -0.020176 +0xbf94a912349bad3f +// -0.005780 +0xbf77acd373501322 +// -0.011560 +0xbf87acd373501322 +// -0.017340 +0xbf91c19e967c0e5a +// -0.023120 +0xbf97acd373501322 +// -0.010382 +0xbf8543072505d106 +// 0.002357 +0x3f634e62725210e0 +// 0.015095 +0x3f8eea385e2ed978 +// 0.027834 +0x3f9c806c0fe4975c +// 0.038792 +0x3fa3dc80a07e5b1d +// 0.049750 +0x3fa978cb390a6a8a +// 0.060708 +0x3faf1515d19679fa +// 0.071666 +0x3fb258b0351144b3 +// 0.087062 +0x3fb649b27e70af31 +// 0.102458 +0x3fba3ab4c7d019b0 +// 0.117855 +0x3fbe2bb7112f842e +// 0.133251 +0x3fc10e5cad477756 +// 0.009302 +0x3f830cf049a42678 +// 0.018604 +0x3f930cf049a42678 +// 0.027906 +0x3f9c93686e7639b4 +// 0.037208 +0x3fa30cf049a42678 +// 0.056314 +0x3facd5316112351b +// 0.075420 +0x3fb34eb93c4021df +// 0.094526 +0x3fb832d9c7f72930 +// 0.113632 +0x3fbd16fa53ae3082 +// 0.139010 +0x3fc1cb109c610a85 +// 0.164387 +0x3fc50aa40eeafcc8 +// 0.189765 +0x3fc84a378174ef0d +// 0.215143 +0x3fcb89caf3fee150 +// 0.231262 +0x3fcd9a027238f5cc +// 0.247382 +0x3fcfaa39f0730a4a +// 0.263502 +0x3fd0dd38b7568f64 +// 0.279622 +0x3fd1e554767399a2 +// -0.009677 +0xbf83d1482306531d +// -0.019353 +0xbf93d1482306531d +// -0.029030 +0xbf9db9ec34897cac +// -0.038706 +0xbfa3d1482306531d +// -0.059794 +0xbfae9d45447a188e +// -0.080881 +0xbfb4b4a132f6eeff +// -0.101969 +0xbfba1a9fc3b0d1b8 +// -0.123056 +0xbfbf809e546ab46f +// -0.159073 +0xbfc45c7f545fd81a +// -0.195089 +0xbfc8f8af7e8a55fc +// -0.231106 +0xbfcd94dfa8b4d3de +// -0.267122 +0xbfd11887e96fa8e0 +// -0.284620 +0xbfd23737b2aad4da +// -0.302118 +0xbfd355e77be600d5 +// -0.319616 +0xbfd4749745212cd0 +// -0.337114 +0xbfd593470e5c58ca +// -0.197411 +0xbfc944c05225d36d +// -0.212531 +0xbfcb343aaa994862 +// -0.227652 +0xbfcd23b5030cbd57 +// -0.242773 +0xbfcf132f5b80324c +// 0.006190 +0x3f795ae93cc718f1 +// 0.012380 +0x3f895ae93cc718f1 +// 0.018571 +0x3f93042eed9552b5 +// 0.024761 +0x3f995ae93cc718f1 +// 0.032114 +0x3fa071356fa7542c +// 0.039467 +0x3fa434f640eb1be0 +// 0.046819 +0x3fa7f8b7122ee394 +// 0.054172 +0x3fabbc77e372ab47 +// 0.071329 +0x3fb2429edcddbc00 +// 0.088486 +0x3fb6a701c802225c +// 0.105643 +0x3fbb0b64b32688ba +// 0.122799 +0x3fbf6fc79e4aef15 +// 0.143838 +0x3fc2694b9907c233 +// 0.164877 +0x3fc51ab362ea0cde +// 0.185916 +0x3fc7cc1b2ccc5788 +// 0.206955 +0x3fca7d82f6aea230 +// 0.230002 +0x3fcd70b7decc9f91 +// 0.253049 +0x3fd031f663754e79 +// 0.276097 +0x3fd1ab90d7844d29 +// 0.299144 +0x3fd3252b4b934bda +// 0.011488 +0x3f878718fab3fd82 +// 0.022976 +0x3f978718fab3fd82 +// 0.034464 +0x3fa1a552bc06fe22 +// 0.045953 +0x3fa78718fab3fd82 +// 0.057441 +0x3fad68df3960fce3 +// 0.053777 +0x3fab88b4fbeef482 +// 0.050114 +0x3fa9a88abe7cec20 +// 0.046451 +0x3fa7c860810ae3be +// 0.042787 +0x3fa5e8364398db5c +// 0.039124 +0x3fa4080c0626d2fc +// -0.007937 +0xbf80410410410410 +// -0.015873 +0xbf90410410410410 +// -0.023810 +0xbf98618618618618 +// -0.031746 +0xbfa0410410410410 +// -0.039683 +0xbfa4514514514514 +// -0.045555 +0xbfa752ffeed6412f +// -0.051428 +0xbfaa54bac95b3d4b +// -0.057300 +0xbfad5675a3e03966 +// -0.063173 +0xbfb02c183f329ac1 +// -0.069045 +0xbfb1acf5ac7518ce +// 0.002361 +0x3f6356a42c889c4e +// 0.004721 +0x3f7356a42c889c4e +// 0.007082 +0x3f7d01f642ccea75 +// 0.009443 +0x3f8356a42c889c4e +// 0.011803 +0x3f882c4d37aac361 +// 0.011687 +0x3f87ef952c9eb5fc +// 0.011572 +0x3f87b2dd2192a896 +// 0.011456 +0x3f87762516869b31 +// 0.011340 +0x3f87396d0b7a8dca +// 0.011224 +0x3f86fcb5006e8065 +// -0.004043 +0xbf708f89f6335814 +// -0.019310 +0xbf93c61f7b50ec3b +// -0.034578 +0xbfa1b42e3c8a8139 +// -0.049845 +0xbfa9854cbb6c8c54 +// -0.065112 +0xbfb0ab359d274bb8 +// -0.083911 +0xbfb57b30252509da +// -0.102709 +0xbfba4b2aad22c7fe +// -0.121508 +0xbfbf1b2535208620 +// -0.140306 +0xbfc1f58fde8f2221 +// -0.159105 +0xbfc45d8d228e0132 +// 0.000764 +0x3f49081d2f881e05 +// 0.001528 +0x3f59081d2f881e05 +// 0.002292 +0x3f62c615e3a61684 +// 0.003056 +0x3f69081d2f881e05 +// 0.003820 +0x3f6f4a247b6a2586 +// -0.003353 +0xbf6b77e479b7e338 +// -0.010526 +0xbf858e7b5bb67afe +// -0.017698 +0xbf921f7ecc7f7e97 +// -0.024871 +0xbf9977bfeb23bfaf +// -0.032043 +0xbfa0680084e40063 +// -0.044400 +0xbfa6bb9ea5abdd9b +// -0.056757 +0xbfad0f3cc673bad4 +// -0.069114 +0xbfb1b16d739dcc06 +// -0.081470 +0xbfb4db3c8401baa2 +// -0.093827 +0xbfb8050b9465a93f +// -0.107579 +0xbfbb8a4490a3bd13 +// -0.121330 +0xbfbf0f7d8ce1d0e7 +// -0.135082 +0xbfc14a5b448ff25e +// -0.148833 +0xbfc30cf7c2aefc49 +// -0.162585 +0xbfc4cf9440ce0634 +// 0.015152 +0x3f8f07c1f07c1f08 +// 0.030303 +0x3f9f07c1f07c1f08 +// 0.045455 +0x3fa745d1745d1746 +// 0.060606 +0x3faf07c1f07c1f08 +// 0.075758 +0x3fb364d9364d9365 +// 0.082542 +0x3fb521747c756111 +// 0.089326 +0x3fb6de0fc29d2ebe +// 0.096110 +0x3fb89aab08c4fc6a +// 0.102894 +0x3fba57464eecca15 +// 0.109678 +0x3fbc13e1951497c2 +// 0.110842 +0x3fbc60262f9c58ef +// 0.112006 +0x3fbcac6aca241a1c +// 0.113170 +0x3fbcf8af64abdb48 +// 0.114333 +0x3fbd44f3ff339c76 +// 0.115497 +0x3fbd913899bb5da3 +// 0.115709 +0x3fbd9f12dbc693da +// 0.115920 +0x3fbdaced1dd1ca10 +// 0.116131 +0x3fbdbac75fdd0047 +// 0.116343 +0x3fbdc8a1a1e83680 +// 0.116554 +0x3fbdd67be3f36cb6 +// -0.203287 +0xbfca05503a0a2569 +// -0.220098 +0xbfcc2c2bf972da63 +// -0.236909 +0xbfce5307b8db8f5e +// -0.253720 +0xbfd03cf1bc22222c +// -0.270531 +0xbfd1505f9bd67ca9 +// -0.000591 +0xbf435deb7859c704 +// -0.001182 +0xbf535deb7859c704 +// -0.001773 +0xbf5d0ce13486aa86 +// -0.002364 +0xbf635deb7859c704 +// -0.002955 +0xbf683566567038c5 +// -0.003969 +0xbf7041b29093a4c2 +// -0.004983 +0xbf7468b1f5ef2d20 +// -0.005996 +0xbf788fb15b4ab580 +// -0.007010 +0xbf7cb6b0c0a63dde +// -0.008024 +0xbf806ed81300e31f +// -0.014481 +0xbf8da86bd70e2bbc +// -0.020939 +0xbf9570ffcd8dba2e +// -0.027396 +0xbf9c0dc9af945e7d +// -0.033854 +0xbfa15549c8cd8166 +// -0.040311 +0xbfa4a3aeb9d0d38d +// -0.046957 +0xbfa80ac52fece485 +// -0.053603 +0xbfab71dba608f57c +// -0.060249 +0xbfaed8f21c250674 +// -0.066895 +0xbfb1200449208bb6 +// -0.073541 +0xbfb2d38f842e9432 +// -0.088123 +0xbfb68f3b4144bd2f +// -0.102705 +0xbfba4ae6fe5ae62d +// -0.117288 +0xbfbe0692bb710f2b +// -0.131870 +0xbfc0e11f3c439c14 +// -0.146453 +0xbfc2bef51aceb093 +// 0.008589 +0x3f8196f27ad6edf4 +// 0.017177 +0x3f9196f27ad6edf4 +// 0.025766 +0x3f9a626bb84264ee +// 0.034355 +0x3fa196f27ad6edf4 +// 0.042943 +0x3fa5fcaf198ca971 +// 0.051532 +0x3faa626bb84264ee +// 0.060121 +0x3faec82856f8206c +// 0.068710 +0x3fb196f27ad6edf4 +// 0.067494 +0x3fb1474e47af4930 +// 0.066279 +0x3fb0f7aa1487a46c +// 0.065064 +0x3fb0a805e15fffa8 +// 0.063849 +0x3fb05861ae385ae4 +// 0.062633 +0x3fb008bd7b10b620 +// 0.061418 +0x3faf72328fd222ba +// 0.060203 +0x3faed2ea2982d930 +// 0.058988 +0x3fae33a1c3338fa8 +// -0.005051 +0xbf74afd6a052bf5b +// -0.010101 +0xbf84afd6a052bf5b +// -0.015152 +0xbf8f07c1f07c1f08 +// -0.020202 +0xbf94afd6a052bf5b +// -0.025253 +0xbf99dbcc48676f31 +// -0.030303 +0xbf9f07c1f07c1f08 +// -0.035354 +0xbfa219dbcc48676f +// -0.040404 +0xbfa4afd6a052bf5b +// -0.046113 +0xbfa79c1450b52b1f +// -0.051821 +0xbfaa8852011796e3 +// -0.057530 +0xbfad748fb17a02a8 +// -0.063239 +0xbfb03066b0ee3736 +// -0.068947 +0xbfb1a685891f6d19 +// -0.074656 +0xbfb31ca46150a2fb +// -0.080364 +0xbfb492c33981d8dd +// -0.086073 +0xbfb608e211b30ec0 +// 0.007178 +0x3f7d66fdd685bef6 +// 0.014357 +0x3f8d66fdd685bef6 +// 0.021535 +0x3f960d3e60e44f38 +// 0.028713 +0x3f9d66fdd685bef6 +// 0.035891 +0x3fa2605ea613975a +// 0.043070 +0x3fa60d3e60e44f38 +// 0.050248 +0x3fa9ba1e1bb50718 +// 0.057426 +0x3fad66fdd685bef6 +// 0.059753 +0x3fae97e495f5c016 +// 0.062079 +0x3fafc8cb5565c133 +// 0.064405 +0x3fb07cd90a6ae128 +// 0.066731 +0x3fb1154c6a22e1b7 +// 0.069057 +0x3fb1adbfc9dae246 +// 0.071384 +0x3fb246332992e2d6 +// 0.073710 +0x3fb2dea6894ae365 +// 0.076036 +0x3fb37719e902e3f4 +// 0.088166 +0x3fb6920fcb3d6704 +// 0.100296 +0x3fb9ad05ad77ea19 +// 0.112426 +0x3fbcc7fb8fb26d28 +// 0.124557 +0x3fbfe2f171ecf03b +// 0.136687 +0x3fc17ef3aa13b9a6 +// 0.148817 +0x3fc30c6e9b30fb2e +// 0.160947 +0x3fc499e98c4e3cb8 +// 0.173077 +0x3fc627647d6b7e40 +// 0.177130 +0x3fc6ac3645ab10b0 +// 0.181184 +0x3fc731080deaa31e +// 0.185237 +0x3fc7b5d9d62a358f +// 0.189290 +0x3fc83aab9e69c7fe +// 0.193344 +0x3fc8bf7d66a95a6c +// 0.197397 +0x3fc9444f2ee8ecdc +// 0.201450 +0x3fc9c920f7287f4a +// 0.205504 +0x3fca4df2bf6811bb +// -0.001570 +0xbf59b85ea0748404 +// -0.003140 +0xbf69b85ea0748404 +// -0.004710 +0xbf734a46f8576303 +// -0.006279 +0xbf79b85ea0748404 +// -0.007849 +0xbf80133b2448d282 +// -0.009419 +0xbf834a46f8576303 +// -0.010989 +0xbf868152cc65f383 +// -0.012559 +0xbf89b85ea0748404 +// -0.016646 +0xbf910b8efe3c4bca +// -0.020733 +0xbf953aeeac3e5590 +// -0.024820 +0xbf996a4e5a405f58 +// -0.028907 +0xbf9d99ae08426920 +// -0.032994 +0xbfa0e486db223974 +// -0.037080 +0xbfa2fc36b2233e57 +// -0.041167 +0xbfa513e68924433b +// -0.045254 +0xbfa72b966025481f +// -0.054392 +0xbfabd9410b30a4ed +// -0.063529 +0xbfb04375db1e00de +// -0.072667 +0xbfb29a4b30a3af46 +// -0.081804 +0xbfb4f12086295dae +// -0.090942 +0xbfb747f5dbaf0c15 +// -0.100079 +0xbfb99ecb3134ba7c +// -0.109217 +0xbfbbf5a086ba68e4 +// -0.118354 +0xbfbe4c75dc40174c +// -0.122828 +0xbfbf71ac403e90ae +// -0.127302 +0xbfc04b71521e8507 +// -0.131776 +0xbfc0de0c841dc1b8 +// -0.136250 +0xbfc170a7b61cfe6a +// -0.140725 +0xbfc20342e81c3b1b +// -0.145199 +0xbfc295de1a1b77cb +// -0.149673 +0xbfc328794c1ab47c +// -0.154147 +0xbfc3bb147e19f12d +// -0.009804 +0xbf84141414141414 +// -0.019608 +0xbf94141414141414 +// -0.029412 +0xbf9e1e1e1e1e1e1e +// -0.039216 +0xbfa4141414141414 +// -0.049020 +0xbfa9191919191919 +// -0.058824 +0xbfae1e1e1e1e1e1e +// -0.068627 +0xbfb1919191919192 +// -0.078431 +0xbfb4141414141414 +// -0.090524 +0xbfb72c97c3bca644 +// -0.102617 +0xbfba451b73653872 +// -0.114710 +0xbfbd5d9f230dcaa2 +// -0.126803 +0xbfc03b11695b2e68 +// -0.138895 +0xbfc1c753412f7780 +// -0.150988 +0xbfc353951903c098 +// -0.163081 +0xbfc4dfd6f0d809b0 +// -0.175174 +0xbfc66c18c8ac52c7 +// -0.189136 +0xbfc8359a654072eb +// -0.203098 +0xbfc9ff1c01d49311 +// -0.217060 +0xbfcbc89d9e68b335 +// -0.231022 +0xbfcd921f3afcd35a +// -0.244984 +0xbfcf5ba0d790f37f +// -0.258946 +0xbfd092913a1289d2 +// -0.272908 +0xbfd17752085c99e4 +// -0.286870 +0xbfd25c12d6a6a9f6 +// -0.302937 +0xbfd36352caf3f3dd +// -0.319005 +0xbfd46a92bf413dc5 +// -0.335072 +0xbfd571d2b38e87ab +// -0.351140 +0xbfd67912a7dbd193 +// -0.367207 +0xbfd780529c291b78 +// -0.383275 +0xbfd8879290766560 +// -0.399342 +0xbfd98ed284c3af45 +// -0.415410 +0xbfda96127910f92e +// -0.110880 +0xbfbc62a3c7decda8 +// -0.120076 +0xbfbebd4dfbca06ec +// -0.129272 +0xbfc08bfc17daa017 +// -0.138468 +0xbfc1b95131d03cba +// -0.147664 +0xbfc2e6a64bc5d95b +// -0.156860 +0xbfc413fb65bb75fd +// -0.166056 +0xbfc541507fb1129f +// -0.175252 +0xbfc66ea599a6af41 +// 0.000201 +0x3f2a5799409cab98 +// 0.000402 +0x3f3a5799409cab98 +// 0.000603 +0x3f43c1b2f07580b2 +// 0.000804 +0x3f4a5799409cab98 +// 0.001005 +0x3f5076bfc861eb3e +// 0.001206 +0x3f53c1b2f07580b2 +// 0.001407 +0x3f570ca618891624 +// 0.001608 +0x3f5a5799409cab98 +// 0.004278 +0x3f718571b533f4f6 +// 0.006948 +0x3f7c74fd1a40bf06 +// 0.009617 +0x3f83b2443fa6c48a +// 0.012287 +0x3f892a09f22d2994 +// 0.014957 +0x3f8ea1cfa4b38e9b +// 0.017627 +0x3f920ccaab9cf9d1 +// 0.020297 +0x3f94c8ad84e02c55 +// 0.022967 +0x3f9784905e235eda +// 0.022304 +0x3f96d6e4212bf80b +// 0.021642 +0x3f962937e434913d +// 0.020979 +0x3f957b8ba73d2a6e +// 0.020317 +0x3f94cddf6a45c3a0 +// 0.019654 +0x3f9420332d4e5cd2 +// 0.018992 +0x3f937286f056f603 +// 0.018329 +0x3f92c4dab35f8f38 +// 0.017667 +0x3f92172e76682869 +// 0.011954 +0x3f887b1922b82384 +// 0.006241 +0x3f798faab13fec7a +// 0.000528 +0x3f414918e87c8f40 +// -0.005186 +0xbf753d647720c8b4 +// -0.010899 +0xbf8651f605a891a2 +// -0.016612 +0xbf91029ce7e05f74 +// -0.022325 +0xbf96dc3eccec761a +// -0.028038 +0xbf9cb5e0b1f88cc0 +// -0.034188 +0xbfa181203930f6f0 +// -0.040339 +0xbfa4a7501965a780 +// -0.046490 +0xbfa7cd7ff99a580f +// -0.052640 +0xbfaaf3afd9cf089f +// -0.058791 +0xbfae19dfba03b931 +// -0.064942 +0xbfb0a007cd1c34df +// -0.071093 +0xbfb2331fbd368d28 +// -0.077243 +0xbfb3c637ad50e570 +// -0.008772 +0xbf81f7047dc11f70 +// -0.017544 +0xbf91f7047dc11f70 +// -0.026316 +0xbf9af286bca1af28 +// -0.035088 +0xbfa1f7047dc11f70 +// -0.043860 +0xbfa674c59d31674c +// -0.052632 +0xbfaaf286bca1af28 +// -0.061404 +0xbfaf7047dc11f704 +// -0.070175 +0xbfb1f7047dc11f70 +// -0.078947 +0xbfb435e50d79435e +// -0.085895 +0xbfb5fd33e9a61428 +// -0.092842 +0xbfb7c482c5d2e4f2 +// -0.099790 +0xbfb98bd1a1ffb5bb +// -0.106737 +0xbfbb53207e2c8685 +// -0.113685 +0xbfbd1a6f5a59574f +// -0.120632 +0xbfbee1be36862819 +// -0.127580 +0xbfc0548689597c71 +// -0.134527 +0xbfc1382df76fe4d6 +// -0.141474 +0xbfc21bd565864d3b +// -0.000049 +0xbf0979177ebe1202 +// -0.000097 +0xbf1979177ebe1202 +// -0.000146 +0xbf231ad19f0e8d82 +// -0.000194 +0xbf2979177ebe1202 +// -0.000243 +0xbf2fd75d5e6d9682 +// -0.000292 +0xbf331ad19f0e8d82 +// -0.000340 +0xbf3649f48ee64fc1 +// -0.000389 +0xbf3979177ebe1202 +// -0.000437 +0xbf3ca83a6e95d443 +// -0.004990 +0xbf7470c68e68009d +// -0.009543 +0xbf838b84baf351fb +// -0.014097 +0xbf8cdea62eb2a3a8 +// -0.018650 +0xbf9318e3d138faaa +// -0.023203 +0xbf97c2748b18a380 +// -0.027756 +0xbf9c6c0544f84c57 +// -0.032309 +0xbfa08acaff6bfa96 +// -0.036862 +0xbfa2df935c5bcf02 +// -0.041415 +0xbfa5345bb94ba36d +// 0.003571 +0x3f6d4135a4090122 +// 0.007142 +0x3f7d4135a4090122 +// 0.010713 +0x3f85f0e83b06c0da +// 0.014285 +0x3f8d4135a4090122 +// 0.017856 +0x3f9248c18685a0b5 +// 0.021427 +0x3f95f0e83b06c0da +// 0.024998 +0x3f99990eef87e0fe +// 0.028569 +0x3f9d4135a4090122 +// 0.032140 +0x3fa074ae2c4510a3 +// 0.028018 +0x3f9cb0a797fede77 +// 0.023895 +0x3f9877f2d7739baa +// 0.019773 +0x3f943f3e16e858dc +// 0.015650 +0x3f900689565d160d +// 0.011527 +0x3f879ba92ba3a67c +// 0.007405 +0x3f7e547f551a41c0 +// 0.003282 +0x3f6ae358a5da6d10 +// -0.000840 +0xbf4b893579fea5c0 +// -0.004963 +0xbf7453f9b16cdff0 +// -0.000314 +0xbf348c3b817ac500 +// 0.004336 +0x3f71c272413d8760 +// 0.008985 +0x3f8266d41d495d88 +// 0.013635 +0x3f8bec6f19f3f758 +// 0.018284 +0x3f92b9050b4f4898 +// 0.022933 +0x3f977bd289a49580 +// 0.027583 +0x3f9c3ea007f9e268 +// 0.032232 +0x3fa080b6c32797a8 +// 0.036881 +0x3fa2e21d82523e1e +// 0.039486 +0x3fa437771e220bd7 +// 0.042090 +0x3fa58cd0b9f1d98d +// 0.044694 +0x3fa6e22a55c1a744 +// 0.047299 +0x3fa83783f19174ff +// 0.049903 +0x3fa98cdd8d6142b2 +// 0.052507 +0x3faae2372931106c +// 0.055111 +0x3fac3790c500de23 +// 0.057716 +0x3fad8cea60d0abda +// 0.060320 +0x3faee243fca07990 +// 0.003317 +0x3f6b2b3deae6cd1c +// 0.006633 +0x3f7b2b3deae6cd1c +// 0.009950 +0x3f84606e702d19d5 +// 0.013266 +0x3f8b2b3deae6cd1c +// 0.016583 +0x3f90fb06b2d04031 +// 0.019899 +0x3f94606e702d19d5 +// 0.023216 +0x3f97c5d62d89f378 +// 0.026532 +0x3f9b2b3deae6cd1c +// 0.029849 +0x3f9e90a5a843a6c0 +// 0.033288 +0x3fa10b16256851e9 +// 0.036727 +0x3fa2cdd976aed074 +// 0.040166 +0x3fa4909cc7f54efe +// 0.043605 +0x3fa65360193bcd88 +// 0.047044 +0x3fa816236a824c12 +// 0.050483 +0x3fa9d8e6bbc8ca9d +// 0.053922 +0x3fab9baa0d0f4927 +// 0.057361 +0x3fad5e6d5e55c7b0 +// 0.060800 +0x3faf2130af9c463c +// 0.059735 +0x3fae9589e9d29fdd +// 0.058669 +0x3fae09e32408f981 +// 0.057604 +0x3fad7e3c5e3f5326 +// 0.056538 +0x3facf2959875acca +// 0.055473 +0x3fac66eed2ac066d +// 0.054407 +0x3fabdb480ce26010 +// 0.053342 +0x3fab4fa14718b9b4 +// 0.052276 +0x3faac3fa814f1357 +// 0.051211 +0x3faa3853bb856cfc +// 0.050248 +0x3fa9ba214bbc7929 +// 0.049285 +0x3fa93beedbf38558 +// 0.048323 +0x3fa8bdbc6c2a9186 +// 0.047360 +0x3fa83f89fc619db5 +// 0.046397 +0x3fa7c1578c98a9e7 +// 0.045434 +0x3fa743251ccfb614 +// 0.044471 +0x3fa6c4f2ad06c241 +// 0.043509 +0x3fa646c03d3dce73 +// 0.042546 +0x3fa5c88dcd74daa2 +// -0.001630 +0xbf5ab5928eb04c53 +// -0.003260 +0xbf6ab5928eb04c53 +// -0.004891 +0xbf74082deb04393e +// -0.006521 +0xbf7ab5928eb04c53 +// -0.008151 +0xbf80b17b992e2fb4 +// -0.009781 +0xbf84082deb04393e +// -0.011411 +0xbf875ee03cda42c8 +// -0.013042 +0xbf8ab5928eb04c53 +// -0.014672 +0xbf8e0c44e08655dd +// -0.013749 +0xbf8c28646f1cbe92 +// -0.012826 +0xbf8a4483fdb32747 +// -0.011903 +0xbf8860a38c498ffc +// -0.010980 +0xbf867cc31adff8b0 +// -0.010057 +0xbf8498e2a9766164 +// -0.009134 +0xbf82b502380cca1b +// -0.008211 +0xbf80d121c6a332d0 +// -0.007288 +0xbf7dda82aa733708 +// -0.006366 +0xbf7a12c1c7a00870 +// -0.010496 +0xbf857edf387d23ba +// -0.014626 +0xbf8df45d8d2a4340 +// -0.018757 +0xbf9334edf0ebb160 +// -0.022887 +0xbf976fad1b424122 +// -0.027017 +0xbf9baa6c4598d0e3 +// -0.031148 +0xbf9fe52b6fef60a4 +// -0.035278 +0xbfa20ff54d22f833 +// -0.039408 +0xbfa42d54e24e4013 +// -0.043539 +0xbfa64ab4777987f4 +// -0.038897 +0xbfa3ea52ed3487f9 +// -0.034256 +0xbfa189f162ef87fe +// -0.029614 +0xbf9e531fb1551006 +// -0.024972 +0xbf99925c9ccb1012 +// -0.020331 +0xbf94d19988411018 +// -0.015689 +0xbf9010d673b71020 +// -0.011048 +0xbf86a026be5a2058 +// -0.006406 +0xbf7a3d412a8c40c0 +// -0.001764 +0xbf5ce8d361910380 +// 0.061333 +0x3faf67031a25a5e4 +// 0.065743 +0x3fb0d483f768bf06 +// 0.070153 +0x3fb1f58661beab19 +// 0.074563 +0x3fb31688cc14972c +// 0.078973 +0x3fb4378b366a833d +// 0.083382 +0x3fb5588da0c06f50 +// 0.087792 +0x3fb679900b165b63 +// 0.092202 +0x3fb79a92756c4776 +// 0.096612 +0x3fb8bb94dfc2338a +// -0.000155 +0xbf244cd33e4def98 +// -0.000310 +0xbf344cd33e4def98 +// -0.000465 +0xbf3e733cdd74e765 +// -0.000620 +0xbf444cd33e4def98 +// -0.000774 +0xbf4960080de16b7e +// -0.000929 +0xbf4e733cdd74e765 +// -0.001084 +0xbf51c338d68431a5 +// -0.001239 +0xbf544cd33e4def98 +// -0.001394 +0xbf56d66da617ad8c +// -0.002113 +0xbf614e909acc1fc4 +// -0.002831 +0xbf6731ea628c68c3 +// -0.003550 +0xbf6d15442a4cb1c2 +// -0.004269 +0xbf717c4ef9067d60 +// -0.004988 +0xbf746dfbdce6a1e0 +// -0.005706 +0xbf775fa8c0c6c660 +// -0.006425 +0xbf7a5155a4a6eade +// -0.007144 +0xbf7d430288870f5e +// -0.007863 +0xbf801a57b63399ef +// -0.006813 +0xbf7be776815c7c38 +// -0.005762 +0xbf779a3d9651c494 +// -0.004712 +0xbf734d04ab470cf0 +// -0.003662 +0xbf6dff978078aa94 +// -0.002612 +0xbf656525aa633b4c +// -0.001561 +0xbf599567a89b9808 +// -0.000511 +0xbf40c107f8e172f0 +// 0.000539 +0x3f41a8bf5f744a40 +// 0.001589 +0x3f5a09435be503b0 +// 0.002261 +0x3f6284b234d8a2c1 +// 0.002932 +0x3f6804c2bbbec3aa +// 0.003603 +0x3f6d84d342a4e493 +// 0.004275 +0x3f718271e4c582c2 +// 0.004946 +0x3f74427a28389333 +// 0.005618 +0x3f7702826baba3af +// 0.006289 +0x3f79c28aaf1eb420 +// 0.006960 +0x3f7c8292f291c498 +// 0.007632 +0x3f7f429b3604d508 +// 0.012808 +0x3f8a3afa18fc865e +// 0.017984 +0x3f926a534b7b5118 +// 0.023160 +0x3f97b7298a785f04 +// 0.028336 +0x3f9d03ffc9756ced +// 0.033511 +0x3fa1286b04393d6b +// 0.038687 +0x3fa3ced623b7c461 +// 0.043863 +0x3fa6754143364b56 +// 0.049039 +0x3fa91bac62b4d24c +// 0.054215 +0x3fabc21782335941 diff --git a/Testing/Source/Tests/DECIMF64.cpp b/Testing/Source/Tests/DECIMF64.cpp new file mode 100644 index 000000000..685875d7d --- /dev/null +++ b/Testing/Source/Tests/DECIMF64.cpp @@ -0,0 +1,172 @@ +#include "DECIMF64.h" +#include +#include "Error.h" + +#define SNR_THRESHOLD 120 + +/* + +Reference patterns are generated with +a double precision computation. + +*/ +#define REL_ERROR (8.0e-4) + + + void DECIMF64::test_fir_decimate_f64() + { + int nbTests; + int nb; + uint32_t *pConfig = config.ptr(); + + const float64_t * pSrc = input.ptr(); + float64_t * pDst = output.ptr(); + float64_t * pCoefs = coefs.ptr(); + + nbTests=config.nbSamples() / 4; + + for(nb=0;nb < nbTests; nb++) + { + + this->q = pConfig[0]; + this->numTaps = pConfig[1]; + this->blocksize = pConfig[2]; + this->refsize = pConfig[3]; + + + pConfig += 4; + + this->status=arm_fir_decimate_init_f64(&(this->S), + this->numTaps, + this->q, + pCoefs, + state.ptr(), + this->blocksize); + + + + ASSERT_TRUE(this->status == ARM_MATH_SUCCESS); + + arm_fir_decimate_f64( + &(this->S), + pSrc, + pDst, + this->blocksize); + + pSrc += this->blocksize; + pDst += this->refsize; + + pCoefs += this->numTaps; + } + + + ASSERT_EMPTY_TAIL(output); + + ASSERT_SNR(output,ref,(float64_t)SNR_THRESHOLD); + + ASSERT_REL_ERROR(output,ref,REL_ERROR); + + } + +#if 0 + void DECIMF64::test_fir_interpolate_f64() + { + int nbTests; + int nb; + uint64_t *pConfig = config.ptr(); + + const float64_t * pSrc = input.ptr(); + float64_t * pDst = output.ptr(); + float64_t * pCoefs = coefs.ptr(); + + nbTests=config.nbSamples() / 4; + + for(nb=0;nb < nbTests; nb++) + { + + this->q = pConfig[0]; + this->numTaps = pConfig[1]; + this->blocksize = pConfig[2]; + this->refsize = pConfig[3]; + + + + pConfig += 4; + + this->status=arm_fir_interpolate_init_f64(&(this->SI), + this->q, + this->numTaps, + pCoefs, + state.ptr(), + this->blocksize); + + + + ASSERT_TRUE(this->status == ARM_MATH_SUCCESS); + + arm_fir_interpolate_f64( + &(this->SI), + pSrc, + pDst, + this->blocksize); + + pSrc += this->blocksize; + pDst += this->refsize; + + pCoefs += this->numTaps; + } + + + ASSERT_EMPTY_TAIL(output); + + ASSERT_SNR(output,ref,(float64_t)SNR_THRESHOLD); + + ASSERT_REL_ERROR(output,ref,REL_ERROR); + + } + +#endif + void DECIMF64::setUp(Testing::testID_t id,std::vector& params,Client::PatternMgr *mgr) + { + + (void)params; + + switch(id) + { + case DECIMF64::TEST_FIR_DECIMATE_F64_1: + config.reload(DECIMF64::CONFIGSDECIMF64_ID,mgr); + + input.reload(DECIMF64::INPUT1_F64_ID,mgr); + coefs.reload(DECIMF64::COEFS1_F64_ID,mgr); + + ref.reload(DECIMF64::REF1_DECIM_F64_ID,mgr); + state.create(16 + 768 - 1,DECIMF64::STATE_F64_ID,mgr); + + break; + +#if 0 + case DECIMF64::TEST_FIR_INTERPOLATE_F64_2: + config.reload(DECIMF64::CONFIGSINTERPF64_ID,mgr); + + input.reload(DECIMF64::INPUT2_F64_ID,mgr); + coefs.reload(DECIMF64::COEFS2_F64_ID,mgr); + + ref.reload(DECIMF64::REF2_INTERP_F64_ID,mgr); + state.create(16 + 768 - 1,DECIMF64::STATE_F64_ID,mgr); + + break; +#endif + + } + + + + + output.create(ref.nbSamples(),DECIMF64::OUT_F64_ID,mgr); + } + + void DECIMF64::tearDown(Testing::testID_t id,Client::PatternMgr *mgr) + { + (void)id; + output.dump(mgr); + } diff --git a/Testing/desc.txt b/Testing/desc.txt index 2986012da..4d9239712 100644 --- a/Testing/desc.txt +++ b/Testing/desc.txt @@ -2172,6 +2172,29 @@ group Root { class = DECIM folder = DECIM + suite DECIM F64 { + class = DECIMF64 + folder = DECIMF64 + + Pattern INPUT1_F64_ID : Input2_f64.txt + Pattern INPUT2_F64_ID : Input3_f64.txt + Pattern COEFS1_F64_ID : Coefs2_f64.txt + Pattern COEFS2_F64_ID : Coefs3_f64.txt + + Pattern CONFIGSDECIMF64_ID : Configs2_u32.txt + Pattern CONFIGSINTERPF64_ID : Configs3_u32.txt + + Pattern REF1_DECIM_F64_ID : Reference2_f64.txt + Pattern REF2_INTERP_F64_ID : Reference3_f64.txt + + Output OUT_F64_ID : Output + Output STATE_F64_ID : State + + Functions { + test_fir_decimate_f64:test_fir_decimate_f64 + } + } + suite DECIM F32 { class = DECIMF32 folder = DECIMF32