diff --git a/Source/TransformFunctions/CMakeLists.txt b/Source/TransformFunctions/CMakeLists.txt index 194f6072..873453b0 100644 --- a/Source/TransformFunctions/CMakeLists.txt +++ b/Source/TransformFunctions/CMakeLists.txt @@ -110,7 +110,7 @@ target_sources(CMSISDSPTransform PRIVATE arm_cfft_q31.c) target_sources(CMSISDSPTransform PRIVATE arm_cfft_radix4_q31.c) endif() -# For scipy or or wrappers +# For scipy or wrappers or benchmarks if (WRAPPER) target_sources(CMSISDSPTransform PRIVATE arm_cfft_radix2_init_f32.c) endif() diff --git a/Testing/CMakeLists.txt b/Testing/CMakeLists.txt index 5bd3f204..de00fe25 100644 --- a/Testing/CMakeLists.txt +++ b/Testing/CMakeLists.txt @@ -118,6 +118,9 @@ set(TESTSRC Source/Benchmarks/BinaryF32.cpp Source/Benchmarks/BinaryQ31.cpp Source/Benchmarks/BinaryQ15.cpp + Source/Benchmarks/TransformF32.cpp + Source/Benchmarks/TransformQ31.cpp + Source/Benchmarks/TransformQ15.cpp Source/Benchmarks/FullyConnectedBench.cpp Source/Benchmarks/PoolingBench.cpp ) diff --git a/Testing/Include/Benchmarks/TransformF32.h b/Testing/Include/Benchmarks/TransformF32.h new file mode 100755 index 00000000..ce2906aa --- /dev/null +++ b/Testing/Include/Benchmarks/TransformF32.h @@ -0,0 +1,32 @@ +#include "Test.h" +#include "Pattern.h" +class TransformF32:public Client::Suite + { + public: + TransformF32(Testing::testID_t id); + void setUp(Testing::testID_t,std::vector& params,Client::PatternMgr *mgr); + void tearDown(Testing::testID_t,Client::PatternMgr *mgr); + private: + #include "TransformF32_decl.h" + Client::Pattern samples; + + Client::LocalPattern output; + Client::LocalPattern state; + + int nbSamples; + int ifft; + int bitRev; + + float32_t *pSrc; + float32_t *pDst; + float32_t *pState; + + const arm_cfft_instance_f32 *cfftInstance; + arm_rfft_fast_instance_f32 rfftFastInstance; + + arm_dct4_instance_f32 dct4Instance; + arm_rfft_instance_f32 rfftInstance; + arm_cfft_radix4_instance_f32 cfftRadix4Instance; + arm_cfft_radix2_instance_f32 cfftRadix2Instance; + + }; \ No newline at end of file diff --git a/Testing/Include/Benchmarks/TransformQ15.h b/Testing/Include/Benchmarks/TransformQ15.h new file mode 100755 index 00000000..cff7ff99 --- /dev/null +++ b/Testing/Include/Benchmarks/TransformQ15.h @@ -0,0 +1,31 @@ +#include "Test.h" +#include "Pattern.h" +class TransformQ15:public Client::Suite + { + public: + TransformQ15(Testing::testID_t id); + void setUp(Testing::testID_t,std::vector& params,Client::PatternMgr *mgr); + void tearDown(Testing::testID_t,Client::PatternMgr *mgr); + private: + #include "TransformQ15_decl.h" + Client::Pattern samples; + + Client::LocalPattern output; + Client::LocalPattern state; + + int nbSamples; + int ifft; + int bitRev; + + q15_t *pSrc; + q15_t *pDst; + q15_t *pState; + + arm_cfft_instance_q15 cfftInstance; + + arm_dct4_instance_q15 dct4Instance; + arm_rfft_instance_q15 rfftInstance; + arm_cfft_radix4_instance_q15 cfftRadix4Instance; + arm_cfft_radix2_instance_q15 cfftRadix2Instance; + + }; \ No newline at end of file diff --git a/Testing/Include/Benchmarks/TransformQ31.h b/Testing/Include/Benchmarks/TransformQ31.h new file mode 100755 index 00000000..71094851 --- /dev/null +++ b/Testing/Include/Benchmarks/TransformQ31.h @@ -0,0 +1,31 @@ +#include "Test.h" +#include "Pattern.h" +class TransformQ31:public Client::Suite + { + public: + TransformQ31(Testing::testID_t id); + void setUp(Testing::testID_t,std::vector& params,Client::PatternMgr *mgr); + void tearDown(Testing::testID_t,Client::PatternMgr *mgr); + private: + #include "TransformQ31_decl.h" + Client::Pattern samples; + + Client::LocalPattern output; + Client::LocalPattern state; + + int nbSamples; + int ifft; + int bitRev; + + q31_t *pSrc; + q31_t *pDst; + q31_t *pState; + + arm_cfft_instance_q31 cfftInstance; + + arm_dct4_instance_q31 dct4Instance; + arm_rfft_instance_q31 rfftInstance; + arm_cfft_radix4_instance_q31 cfftRadix4Instance; + arm_cfft_radix2_instance_q31 cfftRadix2Instance; + + }; \ No newline at end of file diff --git a/Testing/PatternGeneration/Transform.py b/Testing/PatternGeneration/Transform.py new file mode 100755 index 00000000..c2373188 --- /dev/null +++ b/Testing/PatternGeneration/Transform.py @@ -0,0 +1,51 @@ +import os.path +import numpy as np +import itertools +import Tools + + +# Those patterns are used for tests and benchmarks. +# For tests, there is the need to add tests for saturation + + + + + +def randComplex(nb): + data = np.random.randn(2*nb) + data = data/max(data) + data_comp = data.view(dtype=np.complex128) + return(data_comp) + +def asReal(a): + #return(a.view(dtype=np.float64)) + return(a.reshape(np.size(a)).view(dtype=np.float64)) + +def writeTests(config): + NBRSAMPLES=2048 + NBCSAMPLES=256 + + samples=np.random.randn(NBRSAMPLES) + samples = np.abs(samples/max(samples)) + + samplesC=randComplex(NBCSAMPLES) + + config.writeInput(1, samples,"RealSamples") + config.writeInput(1, asReal(samplesC),"ComplexSamples") + + +PATTERNDIR = os.path.join("Patterns","DSP","Transform","Transform") +PARAMDIR = os.path.join("Parameters","DSP","Transform","Transform") + +configf32=Tools.Config(PATTERNDIR,PARAMDIR,"f32") +configq31=Tools.Config(PATTERNDIR,PARAMDIR,"q31") +configq15=Tools.Config(PATTERNDIR,PARAMDIR,"q15") + + +writeTests(configf32) +writeTests(configq31) +writeTests(configq15) + + + + diff --git a/Testing/Patterns/DSP/Transform/TransformF32/ComplexSamples1_f32.txt b/Testing/Patterns/DSP/Transform/TransformF32/ComplexSamples1_f32.txt new file mode 100755 index 00000000..8891e7ec --- /dev/null +++ b/Testing/Patterns/DSP/Transform/TransformF32/ComplexSamples1_f32.txt @@ -0,0 +1,1026 @@ +W +512 +// -0.354520 +0xbeb58396 +// 0.245727 +0x3e7b9fec +// 0.068926 +0x3d8d293e +// 0.467736 +0x3eef7b21 +// -0.058103 +0xbd6dfda0 +// 0.057822 +0x3d6cd748 +// -0.046704 +0xbd3f4ca6 +// -0.001351 +0xbab10ee6 +// -0.087382 +0xbdb2f54b +// 0.566409 +0x3f110030 +// -0.189832 +0xbe426338 +// 0.050069 +0x3d4d14b5 +// 0.492519 +0x3efc2b6c +// -0.242233 +0xbe780c0e +// 0.264234 +0x3e8749a8 +// 0.086193 +0x3db08607 +// -0.251394 +0xbe80b6a7 +// 0.110923 +0x3de32b60 +// -0.743018 +0xbf3e3672 +// 0.087972 +0x3db42acd +// 0.212497 +0x3e5998e0 +// 1.000000 +0x3f800000 +// -0.127186 +0xbe023d0b +// -0.694017 +0xbf31ab1f +// -0.223453 +0xbe64d0cb +// 0.033342 +0x3d08920b +// -0.049767 +0xbd4bd863 +// 0.015212 +0x3c793aca +// -0.224649 +0xbe660a6f +// 0.008799 +0x3c10296c +// 0.378335 +0x3ec1b51d +// 0.305114 +0x3e9c37f4 +// -0.238048 +0xbe73c2fa +// 0.191035 +0x3e439ec3 +// 0.366252 +0x3ebb8566 +// -0.246660 +0xbe7c9479 +// 0.012038 +0x3c453a5c +// 0.253571 +0x3e81d410 +// -0.047094 +0xbd40e613 +// 0.252845 +0x3e8174e6 +// -0.230478 +0xbe6c0281 +// -0.197188 +0xbe49ebb0 +// 0.027266 +0x3cdf5bf9 +// 0.260306 +0x3e8546e3 +// 0.147183 +0x3e16b703 +// 0.177404 +0x3e35a94b +// -0.531340 +0xbf0805e7 +// -0.416760 +0xbed56196 +// -0.129750 +0xbe04dd25 +// -0.106037 +0xbdd929d3 +// -0.088985 +0xbdb63dc9 +// 0.504275 +0x3f011832 +// -0.063103 +0xbd813c52 +// -0.540994 +0xbf0a7e98 +// 0.321822 +0x3ea4c5cd +// -0.311237 +0xbe9f5a67 +// 0.048514 +0x3d46b6c0 +// -0.160759 +0xbe249df9 +// 0.104731 +0x3dd67d59 +// 0.228655 +0x3e6a2498 +// -0.518523 +0xbf04bde5 +// -0.219840 +0xbe611dbf +// 0.142571 +0x3e11fe02 +// 0.478335 +0x3ef4e84d +// -0.375508 +0xbec0429e +// 0.162801 +0x3e26b558 +// -0.055207 +0xbd622075 +// 0.050991 +0x3d50dc14 +// 0.153645 +0x3e1d550c +// -0.076484 +0xbd9ca39f +// 0.361301 +0x3eb8fc82 +// 0.516477 +0x3f0437d5 +// 0.080061 +0x3da3f73a +// 0.079389 +0x3da296de +// -0.257839 +0xbe84036d +// -0.379717 +0xbec26a41 +// -0.229341 +0xbe6ad84f +// -0.096199 +0xbdc50429 +// 0.004219 +0x3b8a3da5 +// 0.030386 +0x3cf8ec4d +// 0.108242 +0x3dddade3 +// -0.209632 +0xbe56a9c6 +// 0.180764 +0x3e391a52 +// -0.175506 +0xbe33b7da +// 0.054371 +0x3d5eb3b5 +// -0.236785 +0xbe7277b2 +// 0.511830 +0x3f03074a +// -0.239320 +0xbe75104a +// 0.030048 +0x3cf62735 +// -0.256901 +0xbe838887 +// -0.030255 +0xbcf7d9aa +// -0.520285 +0xbf053165 +// 0.060110 +0x3d7635a5 +// 0.009728 +0x3c1f61bd +// -0.394657 +0xbeca1080 +// -0.230710 +0xbe6c3f3b +// -0.416415 +0xbed53461 +// -0.113823 +0xbde91c42 +// 0.531046 +0x3f07f29b +// 0.237779 +0x3e737c77 +// -0.654383 +0xbf2785a2 +// -0.185760 +0xbe3e37e6 +// 0.243563 +0x3e796892 +// 0.832662 +0x3f55295e +// -0.033696 +0xbd0a0491 +// -0.463640 +0xbeed623a +// 0.112505 +0x3de668fd +// -0.053791 +0xbd5c5405 +// 0.298366 +0x3e98c377 +// -0.204788 +0xbe51b3d8 +// -0.054063 +0xbd5d715c +// 0.118953 +0x3df39d69 +// 0.238913 +0x3e74a5b1 +// -0.116284 +0xbdee265d +// 0.088747 +0x3db5c0f5 +// -0.140608 +0xbe0ffb72 +// -0.295870 +0xbe977c48 +// 0.219901 +0x3e612da3 +// -0.367867 +0xbebc5910 +// -0.220503 +0xbe61cb87 +// -0.431913 +0xbedd23b8 +// -0.077782 +0xbd9f4c41 +// -0.186015 +0xbe3e7ac0 +// -0.054914 +0xbd60ede5 +// -0.249995 +0xbe7ffe9b +// 0.310424 +0x3e9eefec +// -0.032126 +0xbd0396c2 +// 0.189185 +0x3e41b9aa +// 0.083775 +0x3dab9272 +// -0.199852 +0xbe4ca5eb +// -0.067218 +0xbd89a9d6 +// 0.009776 +0x3c202cd3 +// 0.387525 +0x3ec669a2 +// 0.241461 +0x3e774196 +// -0.378952 +0xbec205f4 +// -0.361412 +0xbeb90b01 +// -0.359272 +0xbeb7f277 +// 0.184472 +0x3e3ce634 +// -0.211215 +0xbe5848b3 +// 0.092442 +0x3dbd5260 +// 0.651984 +0x3f26e867 +// -0.234254 +0xbe6fe034 +// -0.040589 +0xbd26403d +// -0.023136 +0xbcbd883a +// -0.051340 +0xbd524a46 +// -0.062689 +0xbd80633e +// -0.188480 +0xbe4100d0 +// 0.004963 +0x3ba2a3f5 +// -0.009658 +0xbc1e3bcd +// -0.017466 +0xbc8f1508 +// 0.382234 +0x3ec3b430 +// 0.443213 +0x3ee2ecdc +// -0.246348 +0xbe7c42c8 +// -0.275379 +0xbe8cfe6e +// 0.047056 +0x3d40bd53 +// 0.207084 +0x3e540db3 +// -0.105701 +0xbdd879d8 +// 0.036872 +0x3d1706fb +// 0.337418 +0x3eacc208 +// -0.209717 +0xbe56bff4 +// 0.412260 +0x3ed313cd +// 0.043697 +0x3d32fb86 +// 0.461216 +0x3eec2471 +// 0.071585 +0x3d929b67 +// -0.024654 +0xbcc9f746 +// -0.106716 +0xbdda8deb +// -0.394221 +0xbec9d75d +// -0.236923 +0xbe729be0 +// 0.158452 +0x3e224151 +// 0.092375 +0x3dbd2ee2 +// -0.388471 +0xbec6e5bb +// -0.306436 +0xbe9ce535 +// -0.198471 +0xbe4b3bfd +// 0.331657 +0x3ea9ceee +// 0.413573 +0x3ed3bfdd +// -0.070578 +0xbd908b53 +// 0.182394 +0x3e3ac578 +// -0.071768 +0xbd92fb24 +// -0.155691 +0xbe1f6d58 +// -0.129008 +0xbe041aa5 +// 0.050207 +0x3d4da62b +// -0.088951 +0xbdb62bc3 +// -0.048212 +0xbd457973 +// 0.477804 +0x3ef4a2c4 +// -0.086412 +0xbdb0f8d3 +// 0.220051 +0x3e615501 +// -0.524851 +0xbf065ca3 +// -0.089042 +0xbdb65b78 +// -0.153521 +0xbe1d3485 +// -0.437737 +0xbee01f10 +// -0.027916 +0xbce4af3d +// 0.082410 +0x3da8c678 +// 0.097036 +0x3dc6bad9 +// 0.293256 +0x3e9625b2 +// -0.484970 +0xbef84e05 +// 0.069898 +0x3d8f26ab +// 0.184013 +0x3e3c6dd9 +// 0.074708 +0x3d990055 +// 0.302076 +0x3e9aa9ad +// -0.123622 +0xbdfd2d8a +// -0.026600 +0xbcd9e7cb +// 0.233563 +0x3e6f2b21 +// -0.566018 +0xbf10e686 +// -0.052037 +0xbd5524e2 +// -0.315267 +0xbea16aad +// -0.610172 +0xbf1c343c +// -0.105844 +0xbdd8c4bb +// -0.186189 +0xbe3ea842 +// 0.066560 +0x3d8850a5 +// 0.121159 +0x3df821fa +// 0.014461 +0x3c6cef28 +// 0.212331 +0x3e596d53 +// -0.616557 +0xbf1dd6b0 +// -0.146365 +0xbe15e0a1 +// 0.446041 +0x3ee45f80 +// -0.413977 +0xbed3f4dc +// -0.414039 +0xbed3fce2 +// 0.047827 +0x3d43e61f +// -0.349868 +0xbeb321d5 +// -0.287684 +0xbe934b60 +// 0.093471 +0x3dbf6d92 +// -0.110287 +0xbde1de50 +// -0.115992 +0xbded8d52 +// -0.216389 +0xbe5d9534 +// 0.460752 +0x3eebe7ba +// 0.102384 +0x3dd1ae7f +// -0.090720 +0xbdb9cb95 +// -0.039456 +0xbd219c6b +// -0.506091 +0xbf018f2c +// 0.170051 +0x3e2e21bb +// 0.559212 +0x3f0f2886 +// 0.042468 +0x3d2df2db +// 0.308191 +0x3e9dcb3e +// 0.074655 +0x3d98e49b +// 0.084673 +0x3dad68ce +// -0.209038 +0xbe560e07 +// -0.035340 +0xbd10c0f2 +// 0.401272 +0x3ecd7388 +// 0.075025 +0x3d99a694 +// 0.122559 +0x3dfb0079 +// 0.059595 +0x3d741976 +// -0.270351 +0xbe8a6b6d +// 0.401861 +0x3ecdc0b6 +// -0.194252 +0xbe46ea09 +// -0.050383 +0xbd4e5def +// -0.134595 +0xbe09d356 +// -0.490195 +0xbefafad7 +// 0.086634 +0x3db16cec +// -0.076191 +0xbd9c09cb +// -0.101436 +0xbdcfbdd2 +// -0.217995 +0xbe5f3a21 +// 0.015318 +0x3c7af8d7 +// -0.172510 +0xbe30a682 +// 0.195332 +0x3e48053b +// -0.658327 +0xbf28881a +// 0.031316 +0x3d0044fa +// -0.073609 +0xbd96c072 +// 0.038521 +0x3d1dc836 +// -0.321334 +0xbea485d9 +// -0.520732 +0xbf054eaa +// -0.468986 +0xbef01eeb +// 0.122353 +0x3dfa9429 +// 0.404434 +0x3ecf11f9 +// 0.282960 +0x3e90e027 +// 0.456291 +0x3ee99eef +// -0.090836 +0xbdba0820 +// -0.057253 +0xbd6a8254 +// -0.216708 +0xbe5de8ba +// -0.041313 +0xbd2937ea +// 0.106498 +0x3dda1bdd +// 0.246177 +0x3e7c15e1 +// -0.257320 +0xbe83bf65 +// -0.045683 +0xbd3b1db2 +// -0.207837 +0xbe54d32d +// -0.042636 +0xbd2ea36d +// -0.392605 +0xbec90389 +// 0.219133 +0x3e60644e +// -0.514948 +0xbf03d39e +// 0.135483 +0x3e0abc22 +// 0.215279 +0x3e5c71f9 +// -0.424693 +0xbed9716a +// -0.210734 +0xbe57cac9 +// 0.188589 +0x3e411d60 +// 0.002723 +0x3b327c0e +// 0.057747 +0x3d6c87d6 +// 0.023019 +0x3cbc934e +// -0.035909 +0xbd131590 +// 0.371924 +0x3ebe6cd4 +// 0.196472 +0x3e492fde +// 0.123721 +0x3dfd614a +// -0.172963 +0xbe311d32 +// -0.470819 +0xbef10f39 +// -0.033953 +0xbd0b1218 +// -0.086385 +0xbdb0ea65 +// -0.406344 +0xbed00c61 +// -0.428461 +0xbedb5f30 +// 0.343995 +0x3eb02018 +// 0.674092 +0x3f2c914c +// -0.262265 +0xbe8647a8 +// 0.233223 +0x3e6ed214 +// -0.291452 +0xbe953943 +// 0.470511 +0x3ef0e6cf +// 0.380014 +0x3ec29128 +// 0.374872 +0x3ebfef32 +// -0.115612 +0xbdecc5f0 +// 0.142112 +0x3e1185b0 +// -0.551653 +0xbf0d391a +// -0.036420 +0xbd152d25 +// 0.307512 +0x3e9d7244 +// 0.763007 +0x3f435475 +// 0.069372 +0x3d8e12ff +// -0.065974 +0xbd871d30 +// 0.186345 +0x3e3ed14a +// -0.299982 +0xbe99973c +// 0.291849 +0x3e956d42 +// -0.185525 +0xbe3dfa46 +// -0.592123 +0xbf179560 +// 0.211017 +0x3e5814f3 +// 0.086449 +0x3db10c34 +// -0.215325 +0xbe5c7e28 +// -0.139104 +0xbe0e715f +// 0.251523 +0x3e80c7a7 +// -0.316420 +0xbea201dd +// 0.367240 +0x3ebc06ef +// -0.184086 +0xbe3c80ee +// 0.722688 +0x3f390211 +// 0.490836 +0x3efb4ee7 +// 0.279276 +0x3e8efd3d +// 0.442165 +0x3ee26377 +// 0.103948 +0x3dd4e2df +// 0.102299 +0x3dd1821f +// -0.077558 +0xbd9ed6fd +// 0.109601 +0x3de076ad +// -0.386735 +0xbec6021a +// 0.320467 +0x3ea41443 +// -0.062760 +0xbd80880f +// 0.277533 +0x3e8e18c5 +// 0.351910 +0x3eb42d88 +// -0.354825 +0xbeb5abaa +// -0.016016 +0xbc833489 +// 0.114806 +0x3deb1f2e +// -0.139233 +0xbe0e9300 +// 0.164306 +0x3e283ff3 +// -0.093993 +0xbdc07f46 +// -0.530301 +0xbf07c1d2 +// -0.039850 +0xbd23396c +// -0.090774 +0xbdb9e778 +// -0.074155 +0xbd97debf +// 0.282763 +0x3e90c65b +// 0.421441 +0x3ed7c725 +// 0.731056 +0x3f3b2683 +// -0.453947 +0xbee86bc3 +// 0.617140 +0x3f1dfce5 +// 0.257260 +0x3e83b794 +// 0.482678 +0x3ef721a0 +// -0.140138 +0xbe0f8048 +// -0.320549 +0xbea41eef +// -0.260305 +0xbe8546a9 +// 0.577212 +0x3f13c430 +// 0.306731 +0x3e9d0be5 +// 0.018796 +0x3c99f9b9 +// -0.301272 +0xbe9a4047 +// -0.369299 +0xbebd14c2 +// 0.369312 +0x3ebd167e +// -0.236425 +0xbe721986 +// -0.263328 +0xbe86d2f0 +// 0.341663 +0x3eaeee7c +// -0.045025 +0xbd386bbb +// -0.099154 +0xbdcb114a +// 0.455284 +0x3ee91b00 +// -0.144306 +0xbe13c4da +// 0.195087 +0x3e47c503 +// -0.605938 +0xbf1b1ec1 +// 0.242950 +0x3e78c7fb +// -0.158456 +0xbe22422f +// 0.202569 +0x3e4f6e2e +// -0.114850 +0xbdeb3694 +// 0.277124 +0x3e8de326 +// 0.214588 +0x3e5bbcf1 +// 0.063224 +0x3d817b8a +// 0.260374 +0x3e854fb9 +// -0.272420 +0xbe8b7aa2 +// 0.076050 +0x3d9bbfeb +// 0.253100 +0x3e81965d +// 0.096066 +0x3dc4be54 +// 0.128985 +0x3e0414b6 +// -0.634282 +0xbf22604f +// 0.115708 +0x3decf851 +// -0.007706 +0xbbfc84ba +// 0.259072 +0x3e84a51a +// 0.172262 +0x3e306557 +// -0.962201 +0xbf7652c6 +// -0.227485 +0xbe68f1e2 +// 0.747901 +0x3f3f7672 +// 0.574368 +0x3f1309c1 +// 0.302432 +0x3e9ad85b +// -0.526858 +0xbf06e02e +// 0.041964 +0x3d2be215 +// -0.250027 +0xbe800381 +// -0.241339 +0xbe77217e +// -0.047009 +0xbd408c63 +// 0.221107 +0x3e6269ea +// 0.072857 +0x3d953627 +// 0.037387 +0x3d192325 +// -0.357788 +0xbeb72fef +// -0.462253 +0xbeecac66 +// 0.080365 +0x3da49679 +// 0.113605 +0x3de8a9ca +// 0.417264 +0x3ed5a395 +// 0.325530 +0x3ea6abda +// 0.060368 +0x3d7744a2 +// 0.338974 +0x3ead8df3 +// 0.052062 +0x3d553ea4 +// -0.009931 +0xbc22b79f +// 0.351721 +0x3eb414d6 +// -0.641906 +0xbf2453f5 +// -0.126547 +0xbe019583 +// -0.170901 +0xbe2f009b +// -0.321002 +0xbea45a59 +// 0.771716 +0x3f458f2c +// -0.170887 +0xbe2efcef +// -0.203609 +0xbe507ee3 +// 0.046784 +0x3d3fa041 +// -0.630037 +0xbf214a13 +// -0.375105 +0xbec00dd0 +// -0.859652 +0xbf5c1225 +// 0.273757 +0x3e8c29d6 +// -0.232754 +0xbe6e5715 +// 0.273793 +0x3e8c2e95 +// 0.304842 +0x3e9c144f +// 0.026110 +0x3cd5e3a7 +// 0.004333 +0x3b8df92c +// 0.125547 +0x3e008f71 +// -0.427315 +0xbedac915 +// 0.020634 +0x3ca908a7 +// 0.080553 +0x3da4f8c6 +// 0.243666 +0x3e7983ac +// 0.108364 +0x3dddede4 +// 0.338454 +0x3ead49ce +// -0.090928 +0xbdba385b +// 0.215401 +0x3e5c9227 +// 0.268992 +0x3e89b945 +// 0.074582 +0x3d98be5e +// -0.352558 +0xbeb4828b +// -0.036969 +0xbd176d1d +// 0.125137 +0x3e0023f7 +// 0.482455 +0x3ef7044b +// -0.332910 +0xbeaa732d +// 0.695445 +0x3f3208ad +// -0.099519 +0xbdcbd0a5 +// -0.381839 +0xbec38060 +// 0.430123 +0x3edc391c +// 0.166670 +0x3e2aab9f +// 0.211917 +0x3e5900d3 +// 0.165219 +0x3e292f28 +// 0.039688 +0x3d229054 +// -0.568401 +0xbf1182bc +// 0.108061 +0x3ddd4f46 +// -0.031662 +0xbd01afe9 +// -0.667916 +0xbf2afc8c +// 0.077363 +0x3d9e708a +// 0.473189 +0x3ef245d4 +// 0.041721 +0x3d2ae3d6 +// 0.034036 +0x3d0b68de +// 0.161885 +0x3e25c525 +// -0.012989 +0xbc54d1c1 +// -0.113932 +0xbde95530 +// 0.258893 +0x3e848d9f +// 0.000967 +0x3a7d9ac2 +// 0.004490 +0x3b931f66 +// -0.028866 +0xbcec794e +// 0.077626 +0x3d9efa76 +// 0.073038 +0x3d95951a +// 0.246281 +0x3e7c30fe +// 0.415838 +0x3ed4e8b9 +// 0.382579 +0x3ec3e16a +// 0.269739 +0x3e8a1b3a +// -0.161262 +0xbe2521f6 +// -0.040402 +0xbd257c30 +// 0.113906 +0x3de9475c +// 0.669422 +0x3f2b5f41 +// -0.233874 +0xbe6f7cc3 +// -0.621343 +0xbf1f1053 +// 0.571604 +0x3f12549e +// -0.067783 +0xbd8ad1f4 +// 0.292221 +0x3e959dfe +// 0.292587 +0x3e95cde6 +// -0.555465 +0xbf0e32ec +// -0.433958 +0xbede2fcc +// 0.111532 +0x3de46ac6 +// -0.261101 +0xbe85aefc +// -0.596128 +0xbf189be0 +// -0.155746 +0xbe1f7bc2 +// -0.027084 +0xbcdddfb4 +// -0.719987 +0xbf38510c +// 0.075870 +0x3d9b61a3 +// 0.176385 +0x3e349e57 +// 0.385065 +0x3ec52745 +// -0.231197 +0xbe6cbeea +// 0.128062 +0x3e03229e +// -0.138893 +0xbe0e3a0b +// 0.131964 +0x3e0721a2 +// -0.096642 +0xbdc5ec4c +// -0.122470 +0xbdfad15c +// -0.382105 +0xbec3a346 +// 0.524880 +0x3f065e89 +// -0.448682 +0xbee5b9a2 +// 0.473424 +0x3ef26494 +// -0.595195 +0xbf185eb3 +// -0.161031 +0xbe24e565 +// 0.369835 +0x3ebd5b0f +// -0.132195 +0xbe075e1c diff --git a/Testing/Patterns/DSP/Transform/TransformF32/RealSamples1_f32.txt b/Testing/Patterns/DSP/Transform/TransformF32/RealSamples1_f32.txt new file mode 100755 index 00000000..2f383e64 --- /dev/null +++ b/Testing/Patterns/DSP/Transform/TransformF32/RealSamples1_f32.txt @@ -0,0 +1,4098 @@ +W +2048 +// 0.012577 +0x3c4e0dcb +// 0.059384 +0x3d733c70 +// 0.011224 +0x3c37e36c +// 0.131825 +0x3e06fd09 +// 0.532436 +0x3f084db2 +// 0.828721 +0x3f542711 +// 0.085013 +0x3dae1b28 +// 0.026002 +0x3cd502ef +// 0.273311 +0x3e8bef76 +// 0.080243 +0x3da45652 +// 0.015423 +0x3c7caf14 +// 0.413643 +0x3ed3c908 +// 0.016651 +0x3c88681a +// 0.623397 +0x3f1f96ee +// 0.033756 +0x3d0a437e +// 0.153457 +0x3e1d23b9 +// 0.052458 +0x3d56de3e +// 0.361233 +0x3eb8f37d +// 0.018428 +0x3c96f694 +// 0.342087 +0x3eaf2601 +// 0.166094 +0x3e2a14a7 +// 0.694596 +0x3f31d10f +// 0.065218 +0x3d85910d +// 0.135181 +0x3e0a6ce6 +// 0.300913 +0x3e9a1136 +// 0.214683 +0x3e5bd5e7 +// 0.189711 +0x3e42438f +// 0.280900 +0x3e8fd21f +// 0.217330 +0x3e5e8bc9 +// 0.107697 +0x3ddc9065 +// 0.598667 +0x3f194243 +// 0.487370 +0x3ef98896 +// 0.057310 +0x3d6abe5b +// 0.020929 +0x3cab73c4 +// 0.115687 +0x3deced58 +// 0.076296 +0x3d9c414e +// 0.258849 +0x3e8487d9 +// 0.008816 +0x3c10727d +// 0.189433 +0x3e41fab9 +// 0.033278 +0x3d084ee1 +// 0.036823 +0x3d16d335 +// 0.148163 +0x3e17b803 +// 0.131598 +0x3e06c181 +// 0.418907 +0x3ed67aec +// 0.502195 +0x3f008fd9 +// 0.172310 +0x3e307201 +// 0.428051 +0x3edb2977 +// 0.029502 +0x3cf1ae28 +// 0.254096 +0x3e8218d9 +// 0.216732 +0x3e5def16 +// 0.398630 +0x3ecc1938 +// 0.487927 +0x3ef9d196 +// 0.262955 +0x3e86a214 +// 0.210244 +0x3e574a1e +// 0.223324 +0x3e64af0f +// 0.452794 +0x3ee7d4a1 +// 0.091009 +0x3dba62cc +// 0.522700 +0x3f05cfab +// 0.171245 +0x3e2f5ae0 +// 0.185842 +0x3e3e4d7d +// 0.622463 +0x3f1f59c4 +// 0.075677 +0x3d9afcb8 +// 0.463925 +0x3eed878d +// 0.463245 +0x3eed2e7e +// 0.034416 +0x3d0cf780 +// 0.383747 +0x3ec47a7f +// 0.399426 +0x3ecc8197 +// 0.019192 +0x3c9d37cd +// 0.338565 +0x3ead5855 +// 0.350136 +0x3eb3450d +// 0.208749 +0x3e55c25e +// 0.067345 +0x3d89ebf5 +// 0.068741 +0x3d8cc80d +// 0.219304 +0x3e60911b +// 0.217400 +0x3e5e9dfa +// 0.083833 +0x3dabb0b0 +// 0.145444 +0x3e14ef2c +// 0.725012 +0x3f399a66 +// 0.595198 +0x3f185eed +// 0.344181 +0x3eb0387f +// 0.131766 +0x3e06ed96 +// 0.095657 +0x3dc3e813 +// 0.092721 +0x3dbde4ac +// 0.132016 +0x3e072f24 +// 0.064398 +0x3d83e351 +// 0.006979 +0x3be4b307 +// 0.040387 +0x3d256d01 +// 0.012166 +0x3c475515 +// 0.256009 +0x3e8313a1 +// 0.387625 +0x3ec676d3 +// 0.410608 +0x3ed23b26 +// 0.379407 +0x3ec241a8 +// 0.164419 +0x3e285d53 +// 0.402587 +0x3ece1fdd +// 0.010316 +0x3c290472 +// 0.163965 +0x3e27e66f +// 0.125153 +0x3e002816 +// 0.258532 +0x3e845e48 +// 0.103702 +0x3dd461e4 +// 0.455192 +0x3ee90ee2 +// 0.269482 +0x3e89f98e +// 0.329453 +0x3ea8ae05 +// 0.344644 +0x3eb0753d +// 0.447911 +0x3ee5549c +// 0.231425 +0x3e6cfa8d +// 0.131830 +0x3e06fe51 +// 0.324526 +0x3ea6284a +// 0.425611 +0x3ed9e9a9 +// 0.094238 +0x3dc0ffe2 +// 0.387266 +0x3ec647c3 +// 0.156951 +0x3e20b7bb +// 0.613219 +0x3f1cfbe9 +// 0.248044 +0x3e7dff61 +// 0.286433 +0x3e92a756 +// 0.185911 +0x3e3e5f57 +// 0.510519 +0x3f02b161 +// 0.112578 +0x3de68f7c +// 0.212233 +0x3e5953a3 +// 0.393985 +0x3ec9b856 +// 0.194973 +0x3e47a6f6 +// 0.243336 +0x3e792d15 +// 0.342930 +0x3eaf9479 +// 0.233243 +0x3e6ed746 +// 0.069249 +0x3d8dd239 +// 0.224762 +0x3e662802 +// 0.417392 +0x3ed5b45e +// 0.568408 +0x3f118334 +// 0.041309 +0x3d2933d3 +// 0.151342 +0x3e1af949 +// 0.028998 +0x3ced8d1d +// 0.464513 +0x3eedd49c +// 0.461033 +0x3eec0c83 +// 0.147703 +0x3e173f8f +// 1.000000 +0x3f800000 +// 0.384930 +0x3ec51586 +// 0.078517 +0x3da0cd5f +// 0.305090 +0x3e9c34ba +// 0.052476 +0x3d56f106 +// 0.006276 +0x3bcda530 +// 0.557555 +0x3f0ebbea +// 0.369182 +0x3ebd0573 +// 0.384638 +0x3ec4ef3e +// 0.214267 +0x3e5b68ed +// 0.439439 +0x3ee0fe26 +// 0.256876 +0x3e838539 +// 0.149503 +0x3e191730 +// 0.088746 +0x3db5c047 +// 0.135346 +0x3e0a980d +// 0.377831 +0x3ec17306 +// 0.190383 +0x3e42f3ca +// 0.013937 +0x3c645888 +// 0.009646 +0x3c1e0c0c +// 0.211935 +0x3e590578 +// 0.044706 +0x3d371e20 +// 0.247079 +0x3e7d0254 +// 0.008266 +0x3c076efa +// 0.422702 +0x3ed86c70 +// 0.183928 +0x3e3c57a7 +// 0.179897 +0x3e3836f2 +// 0.305022 +0x3e9c2be9 +// 0.304713 +0x3e9c0361 +// 0.065651 +0x3d867411 +// 0.665678 +0x3f2a69d9 +// 0.298167 +0x3e98a95b +// 0.304530 +0x3e9beb58 +// 0.006279 +0x3bcdc277 +// 0.233657 +0x3e6f43ce +// 0.116433 +0x3dee742b +// 0.162237 +0x3e262196 +// 0.390869 +0x3ec8200a +// 0.551252 +0x3f0d1ee2 +// 0.127304 +0x3e025be6 +// 0.584821 +0x3f15b6d0 +// 0.067111 +0x3d897171 +// 0.529534 +0x3f078f8d +// 0.422755 +0x3ed87350 +// 0.300269 +0x3e99bcdf +// 0.219071 +0x3e605421 +// 0.033892 +0x3d0ad2bc +// 0.600953 +0x3f19d813 +// 0.465765 +0x3eee78c8 +// 0.589432 +0x3f16e500 +// 0.149691 +0x3e1948a4 +// 0.028528 +0x3ce9b45c +// 0.234912 +0x3e708ce4 +// 0.392931 +0x3ec92e4b +// 0.103199 +0x3dd359cd +// 0.115631 +0x3deccfe6 +// 0.514902 +0x3f03d099 +// 0.474417 +0x3ef2e6d7 +// 0.232606 +0x3e6e302a +// 0.116510 +0x3dee9d09 +// 0.009023 +0x3c13d38b +// 0.263311 +0x3e86d0c0 +// 0.102393 +0x3dd1b36e +// 0.267262 +0x3e88d695 +// 0.014998 +0x3c75bc29 +// 0.071377 +0x3d922e50 +// 0.210211 +0x3e5741af +// 0.133729 +0x3e08f042 +// 0.142061 +0x3e117881 +// 0.020701 +0x3ca995d3 +// 0.353926 +0x3eb535c3 +// 0.321204 +0x3ea474ce +// 0.089388 +0x3db710da +// 0.019534 +0x3ca00623 +// 0.051852 +0x3d546315 +// 0.525416 +0x3f0681ad +// 0.010026 +0x3c24462d +// 0.321601 +0x3ea4a8eb +// 0.427534 +0x3edae5ca +// 0.228360 +0x3e69d74f +// 0.035935 +0x3d1330b0 +// 0.046289 +0x3d3d9936 +// 0.441999 +0x3ee24db9 +// 0.235649 +0x3e714df6 +// 0.432931 +0x3edda913 +// 0.045035 +0x3d387672 +// 0.169740 +0x3e2dd06f +// 0.272700 +0x3e8b9f63 +// 0.240954 +0x3e76bca5 +// 0.029915 +0x3cf50faf +// 0.221568 +0x3e62e2d2 +// 0.185201 +0x3e3da570 +// 0.203232 +0x3e501c2c +// 0.214730 +0x3e5be21b +// 0.229590 +0x3e6b199f +// 0.457583 +0x3eea485b +// 0.144774 +0x3e143f90 +// 0.167070 +0x3e2b147b +// 0.148357 +0x3e17eb04 +// 0.488795 +0x3efa4364 +// 0.323601 +0x3ea5af11 +// 0.205564 +0x3e527f7c +// 0.437131 +0x3edfcfb0 +// 0.032839 +0x3d0681e3 +// 0.333128 +0x3eaa8fcd +// 0.014034 +0x3c65ed55 +// 0.027285 +0x3cdf84fb +// 0.074122 +0x3d97cd72 +// 0.476716 +0x3ef41425 +// 0.160515 +0x3e245dfc +// 0.133295 +0x3e087e89 +// 0.379443 +0x3ec24664 +// 0.395120 +0x3eca4d25 +// 0.529836 +0x3f07a34e +// 0.528211 +0x3f0738da +// 0.179004 +0x3e374ccd +// 0.122714 +0x3dfb5151 +// 0.229263 +0x3e6ac40b +// 0.058981 +0x3d7195a3 +// 0.377376 +0x3ec13776 +// 0.056319 +0x3d66ae58 +// 0.006048 +0x3bc62d44 +// 0.196334 +0x3e490ba9 +// 0.003160 +0x3b4f1b95 +// 0.212301 +0x3e596568 +// 0.413540 +0x3ed3bb7f +// 0.933057 +0x3f6edccd +// 0.360925 +0x3eb8cb35 +// 0.102020 +0x3dd0efb5 +// 0.336334 +0x3eac3406 +// 0.102720 +0x3dd25eab +// 0.348598 +0x3eb27b81 +// 0.769903 +0x3f45185f +// 0.574674 +0x3f131dd2 +// 0.594751 +0x3f18419c +// 0.099256 +0x3dcb46d9 +// 0.095938 +0x3dc47b1c +// 0.182863 +0x3e3b4070 +// 0.475507 +0x3ef375b7 +// 0.569949 +0x3f11e832 +// 0.025421 +0x3cd03eab +// 0.104978 +0x3dd6fea0 +// 0.267981 +0x3e8934cf +// 0.247236 +0x3e7d2b69 +// 0.377677 +0x3ec15ed3 +// 0.307320 +0x3e9d591a +// 0.073433 +0x3d9663dd +// 0.140123 +0x3e0f7c60 +// 0.133510 +0x3e08b6e0 +// 0.677511 +0x3f2d7157 +// 0.099846 +0x3dcc7c0f +// 0.369512 +0x3ebd30aa +// 0.039224 +0x3d20a9c1 +// 0.517243 +0x3f046a06 +// 0.350143 +0x3eb345f7 +// 0.140393 +0x3e0fc318 +// 0.344060 +0x3eb0289c +// 0.056021 +0x3d6576b8 +// 0.349281 +0x3eb2d4f6 +// 0.049768 +0x3d4bd981 +// 0.024248 +0x3cc6a432 +// 0.366299 +0x3ebb8b7d +// 0.262255 +0x3e864657 +// 0.334359 +0x3eab311d +// 0.283532 +0x3e912b0e +// 0.382291 +0x3ec3bba8 +// 0.171513 +0x3e2fa11e +// 0.116299 +0x3dee2e2d +// 0.338844 +0x3ead7cf0 +// 0.438092 +0x3ee04d95 +// 0.018715 +0x3c995017 +// 0.099918 +0x3dcca1ed +// 0.520812 +0x3f0553f4 +// 0.290533 +0x3e94c0cb +// 0.101732 +0x3dd058e6 +// 0.291235 +0x3e951cb1 +// 0.369815 +0x3ebd5867 +// 0.408646 +0x3ed13a00 +// 0.101524 +0x3dcfebcb +// 0.186459 +0x3e3eef3c +// 0.245617 +0x3e7b8313 +// 0.076802 +0x3d9d4a4b +// 0.006163 +0x3bc9efe2 +// 0.273594 +0x3e8c1474 +// 0.231247 +0x3e6ccbf3 +// 0.993768 +0x3f7e6798 +// 0.271405 +0x3e8af59a +// 0.566918 +0x3f11218a +// 0.450774 +0x3ee6cbdc +// 0.213583 +0x3e5ab588 +// 0.247097 +0x3e7d06fc +// 0.379142 +0x3ec21edb +// 0.631056 +0x3f218ce5 +// 0.001550 +0x3acb326e +// 0.226301 +0x3e67bb8a +// 0.375712 +0x3ec05d55 +// 0.139392 +0x3e0ebccb +// 0.142515 +0x3e11ef72 +// 0.440206 +0x3ee162a6 +// 0.257710 +0x3e83f29b +// 0.143708 +0x3e132830 +// 0.227774 +0x3e693d91 +// 0.306997 +0x3e9d2eaf +// 0.224069 +0x3e657253 +// 0.193736 +0x3e4662d2 +// 0.106560 +0x3dda3c1e +// 0.078476 +0x3da0b7c6 +// 0.364344 +0x3eba8b4e +// 0.300473 +0x3e99d79b +// 0.385553 +0x3ec56733 +// 0.211310 +0x3e5861b0 +// 0.625573 +0x3f202591 +// 0.061445 +0x3d7badba +// 0.169804 +0x3e2de115 +// 0.099337 +0x3dcb7107 +// 0.456284 +0x3ee99e17 +// 0.133552 +0x3e08c1ea +// 0.227652 +0x3e691da9 +// 0.532371 +0x3f084974 +// 0.027361 +0x3ce02445 +// 0.172244 +0x3e3060d4 +// 0.339663 +0x3eade847 +// 0.710106 +0x3f35c981 +// 0.195394 +0x3e481565 +// 0.263454 +0x3e86e381 +// 0.165787 +0x3e29c3fb +// 0.382703 +0x3ec3f197 +// 0.185991 +0x3e3e7477 +// 0.359452 +0x3eb80a19 +// 0.537261 +0x3f0989ec +// 0.133480 +0x3e08aedd +// 0.102324 +0x3dd18f6e +// 0.515286 +0x3f03e9d0 +// 0.433340 +0x3edddeb0 +// 0.262320 +0x3e864ed1 +// 0.377064 +0x3ec10e7f +// 0.182718 +0x3e3b1a85 +// 0.140721 +0x3e101928 +// 0.283031 +0x3e90e962 +// 0.267516 +0x3e88f7e9 +// 0.315283 +0x3ea16ccd +// 0.093423 +0x3dbf54b1 +// 0.564420 +0x3f107dd9 +// 0.417677 +0x3ed5d9b6 +// 0.267401 +0x3e88e8d8 +// 0.182007 +0x3e3a5ffc +// 0.233509 +0x3e6f1ce2 +// 0.152646 +0x3e1c4f43 +// 0.049412 +0x3d4a6431 +// 0.067418 +0x3d8a1295 +// 0.195097 +0x3e47c770 +// 0.134272 +0x3e097eb2 +// 0.092934 +0x3dbe543d +// 0.149905 +0x3e1980ca +// 0.150885 +0x3e1a81a2 +// 0.071977 +0x3d9368ee +// 0.328579 +0x3ea83b76 +// 0.126150 +0x3e012d8d +// 0.083898 +0x3dabd2e5 +// 0.050856 +0x3d504e13 +// 0.576063 +0x3f1378db +// 0.438631 +0x3ee09430 +// 0.137333 +0x3e0ca111 +// 0.385933 +0x3ec59912 +// 0.313552 +0x3ea089ea +// 0.216650 +0x3e5dd98a +// 0.082333 +0x3da89e37 +// 0.009479 +0x3c1b4cf8 +// 0.034050 +0x3d0b7802 +// 0.253069 +0x3e81924f +// 0.271239 +0x3e8adfd4 +// 0.271651 +0x3e8b15e5 +// 0.025257 +0x3ccee844 +// 0.017224 +0x3c8d1978 +// 0.141663 +0x3e11101a +// 0.297872 +0x3e9882aa +// 0.336698 +0x3eac63aa +// 0.317465 +0x3ea28abd +// 0.049116 +0x3d492da2 +// 0.670012 +0x3f2b85ed +// 0.101217 +0x3dcf4aeb +// 0.034413 +0x3d0cf450 +// 0.037920 +0x3d1b5250 +// 0.131271 +0x3e066c05 +// 0.245952 +0x3e7bdac8 +// 0.190474 +0x3e430b86 +// 0.102382 +0x3dd1ade0 +// 0.503173 +0x3f00cfee +// 0.456664 +0x3ee9cfd8 +// 0.640132 +0x3f23dfb2 +// 0.053726 +0x3d5c0fa1 +// 0.297542 +0x3e985768 +// 0.441475 +0x3ee2090a +// 0.538390 +0x3f09d3ed +// 0.401269 +0x3ecd7322 +// 0.387404 +0x3ec659db +// 0.099474 +0x3dcbb8d5 +// 0.410468 +0x3ed228e5 +// 0.247522 +0x3e7d764b +// 0.060235 +0x3d76b8bc +// 0.422132 +0x3ed821b2 +// 0.199653 +0x3e4c71f4 +// 0.625040 +0x3f20029e +// 0.189454 +0x3e420043 +// 0.471169 +0x3ef13d0b +// 0.019139 +0x3c9cc896 +// 0.051899 +0x3d5493d2 +// 0.119742 +0x3df53b5f +// 0.458600 +0x3eeacda6 +// 0.113884 +0x3de93c41 +// 0.071459 +0x3d925939 +// 0.198825 +0x3e4b98da +// 0.363411 +0x3eba1100 +// 0.007224 +0x3becb86f +// 0.086855 +0x3db1e144 +// 0.170103 +0x3e2e2f5e +// 0.306331 +0x3e9cd767 +// 0.074876 +0x3d99586f +// 0.062372 +0x3d7f7a45 +// 0.145559 +0x3e150d4f +// 0.093931 +0x3dc05ef1 +// 0.391939 +0x3ec8ac33 +// 0.224323 +0x3e65b4ea +// 0.161835 +0x3e25b828 +// 0.246375 +0x3e7c49a0 +// 0.505804 +0x3f017c61 +// 0.000764 +0x3a483bf8 +// 0.427955 +0x3edb1cee +// 0.069082 +0x3d8d7ac5 +// 0.324506 +0x3ea62597 +// 0.489573 +0x3efaa951 +// 0.049058 +0x3d48f0d6 +// 0.146518 +0x3e1608be +// 0.743510 +0x3f3e56af +// 0.694101 +0x3f31b0a2 +// 0.485673 +0x3ef8aa1c +// 0.196851 +0x3e499362 +// 0.396190 +0x3ecad968 +// 0.116277 +0x3dee2278 +// 0.025318 +0x3ccf671d +// 0.399688 +0x3ecca3da +// 0.013661 +0x3c5fd3c3 +// 0.125146 +0x3e002641 +// 0.547648 +0x3f0c32ad +// 0.096498 +0x3dc5a08f +// 0.118859 +0x3df36c8b +// 0.159160 +0x3e22facf +// 0.369893 +0x3ebd62a2 +// 0.075681 +0x3d9afeb1 +// 0.288824 +0x3e93e0b8 +// 0.665998 +0x3f2a7edf +// 0.481893 +0x3ef6bab9 +// 0.191613 +0x3e443650 +// 0.036434 +0x3d153c3f +// 0.599538 +0x3f197b53 +// 0.109215 +0x3ddfabf9 +// 0.259814 +0x3e85064f +// 0.328107 +0x3ea7fda5 +// 0.190277 +0x3e42d7f3 +// 0.000915 +0x3a6fc167 +// 0.454894 +0x3ee8e7e0 +// 1.034458 +0x3f84691c +// 0.162987 +0x3e26e605 +// 0.014083 +0x3c66bbe2 +// 0.297412 +0x3e98466b +// 0.235669 +0x3e715354 +// 0.290463 +0x3e94b783 +// 0.067674 +0x3d8a98c1 +// 0.254558 +0x3e825578 +// 0.167268 +0x3e2b484b +// 0.411194 +0x3ed28809 +// 0.104246 +0x3dd57ef0 +// 0.215008 +0x3e5c2b16 +// 0.420671 +0x3ed76223 +// 0.013850 +0x3c62ed08 +// 0.489369 +0x3efa8e9a +// 0.183171 +0x3e3b911a +// 0.270274 +0x3e8a616a +// 0.595463 +0x3f187048 +// 0.122239 +0x3dfa589f +// 0.218998 +0x3e60411f +// 0.273850 +0x3e8c360c +// 0.192311 +0x3e44ed1c +// 0.130927 +0x3e0611c1 +// 0.170334 +0x3e2e6c16 +// 0.692283 +0x3f313971 +// 0.166433 +0x3e2a6d73 +// 0.252325 +0x3e8130bc +// 0.121542 +0x3df8eb10 +// 0.164853 +0x3e28cf3e +// 0.371878 +0x3ebe66ba +// 0.060115 +0x3d763b28 +// 0.232621 +0x3e6e342f +// 0.083564 +0x3dab2358 +// 0.417829 +0x3ed5eda6 +// 0.201106 +0x3e4deec9 +// 0.445105 +0x3ee3e4cd +// 0.067430 +0x3d8a187f +// 0.297553 +0x3e9858db +// 0.196854 +0x3e499419 +// 0.209049 +0x3e561106 +// 0.097063 +0x3dc6c8e8 +// 0.247992 +0x3e7df18b +// 0.170141 +0x3e2e3959 +// 0.084005 +0x3dac0aaf +// 0.049194 +0x3d498002 +// 0.335687 +0x3eabdf23 +// 0.548952 +0x3f0c8823 +// 0.011214 +0x3c37b9b2 +// 0.584594 +0x3f15a7f8 +// 0.256507 +0x3e8354dc +// 0.296987 +0x3e980ebd +// 0.119326 +0x3df46109 +// 0.095933 +0x3dc47865 +// 0.270393 +0x3e8a70f5 +// 0.197956 +0x3e4ab4e7 +// 0.151097 +0x3e1ab91f +// 0.383309 +0x3ec44123 +// 0.224597 +0x3e65fcd6 +// 0.138283 +0x3e0d9a08 +// 0.465546 +0x3eee5c04 +// 0.033536 +0x3d095cae +// 0.104520 +0x3dd60ed2 +// 0.336340 +0x3eac34b4 +// 0.248638 +0x3e7e9aec +// 0.148680 +0x3e183f81 +// 0.008444 +0x3c0a56cb +// 0.256278 +0x3e8336ea +// 0.199513 +0x3e4c4d42 +// 0.379543 +0x3ec2537c +// 0.011243 +0x3c38337c +// 0.070866 +0x3d912233 +// 0.200069 +0x3e4cdefd +// 0.056851 +0x3d68dd11 +// 0.044276 +0x3d355b38 +// 0.451031 +0x3ee6ed79 +// 0.033432 +0x3d08efce +// 0.324807 +0x3ea64d0d +// 0.388540 +0x3ec6eeb1 +// 0.028352 +0x3ce84307 +// 0.422312 +0x3ed83941 +// 0.318144 +0x3ea2e3cf +// 0.155346 +0x3e1f130b +// 0.057029 +0x3d6996dc +// 0.203233 +0x3e501c4e +// 0.208334 +0x3e555581 +// 0.387550 +0x3ec66cfe +// 0.116836 +0x3def47ea +// 0.376587 +0x3ec0d000 +// 0.542193 +0x3f0acd29 +// 0.185758 +0x3e3e3756 +// 0.055660 +0x3d63fba3 +// 0.115570 +0x3decb00f +// 0.192796 +0x3e456c5c +// 0.067770 +0x3d8acb1f +// 0.553799 +0x3f0dc5c2 +// 0.014837 +0x3c731822 +// 0.105974 +0x3dd908bf +// 0.560519 +0x3f0f7e32 +// 0.551161 +0x3f0d18e8 +// 0.275877 +0x3e8d3fcf +// 0.396934 +0x3ecb3ae2 +// 0.588832 +0x3f16bdb3 +// 0.253341 +0x3e81b5e1 +// 0.205077 +0x3e51ffa5 +// 0.582437 +0x3f151a9a +// 0.087740 +0x3db3b0e9 +// 0.160096 +0x3e23f03b +// 0.075551 +0x3d9abab7 +// 0.032280 +0x3d0437b3 +// 0.182009 +0x3e3a608d +// 0.856042 +0x3f5b259a +// 0.043651 +0x3d32cb8b +// 0.198682 +0x3e4b7338 +// 0.143769 +0x3e13382c +// 0.174534 +0x3e32b90f +// 0.484178 +0x3ef7e635 +// 0.371492 +0x3ebe3434 +// 0.142801 +0x3e123a8b +// 0.248197 +0x3e7e2757 +// 0.406470 +0x3ed01ccd +// 0.192460 +0x3e45145b +// 0.590938 +0x3f1747ba +// 0.133494 +0x3e08b2b6 +// 0.020923 +0x3cab667b +// 0.021301 +0x3cae7f5a +// 0.135644 +0x3e0ae65a +// 0.222924 +0x3e644647 +// 0.223221 +0x3e649405 +// 0.382838 +0x3ec40357 +// 0.111232 +0x3de3cdbb +// 0.134127 +0x3e09588a +// 0.390961 +0x3ec82c07 +// 0.121101 +0x3df803a7 +// 0.434676 +0x3ede8dce +// 0.116362 +0x3dee4f67 +// 0.180854 +0x3e3931d6 +// 0.259017 +0x3e849dec +// 0.109328 +0x3ddfe71a +// 0.630656 +0x3f2172b3 +// 0.123287 +0x3dfc7dbd +// 0.231437 +0x3e6cfdef +// 0.156530 +0x3e204961 +// 0.150692 +0x3e1a4ef7 +// 0.738908 +0x3f3d291b +// 0.132652 +0x3e07d5e7 +// 0.050391 +0x3d4e6692 +// 0.577830 +0x3f13ecaf +// 0.088482 +0x3db5364a +// 0.292852 +0x3e95f0a2 +// 0.123728 +0x3dfd6541 +// 0.024355 +0x3cc78373 +// 0.399636 +0x3ecc9d1c +// 0.228778 +0x3e6a44ca +// 0.176224 +0x3e34741b +// 0.024970 +0x3ccc8cf8 +// 0.324448 +0x3ea61e16 +// 0.068481 +0x3d8c3fd7 +// 0.285752 +0x3e924e1e +// 0.640602 +0x3f23fe84 +// 0.311769 +0x3e9fa02c +// 0.243170 +0x3e79018d +// 0.519846 +0x3f05149f +// 0.229420 +0x3e6aed19 +// 0.108088 +0x3ddd5d62 +// 0.019284 +0x3c9df8ad +// 0.286559 +0x3e92b7d6 +// 0.548586 +0x3f0c701d +// 0.001741 +0x3ae43772 +// 0.507991 +0x3f020bbb +// 0.019544 +0x3ca01b61 +// 0.223456 +0x3e64d1af +// 0.044000 +0x3d34396e +// 0.697549 +0x3f32928c +// 0.024200 +0x3cc63f77 +// 1.316383 +0x3fa87f39 +// 0.138288 +0x3e0d9b77 +// 0.275407 +0x3e8d0215 +// 0.189651 +0x3e4233c9 +// 0.227205 +0x3e68a85d +// 0.293991 +0x3e9685fe +// 0.348466 +0x3eb26a30 +// 0.404463 +0x3ecf15b9 +// 0.050409 +0x3d4e79e6 +// 0.056526 +0x3d67879b +// 0.242089 +0x3e77e630 +// 0.230854 +0x3e6c6519 +// 0.215481 +0x3e5ca6f0 +// 0.368583 +0x3ebcb6ef +// 0.342214 +0x3eaf36a9 +// 0.173584 +0x3e31bfe9 +// 0.007216 +0x3bec70cb +// 0.097045 +0x3dc6bfb7 +// 0.079460 +0x3da2bbf4 +// 0.049200 +0x3d49856f +// 0.126141 +0x3e012b0f +// 0.084616 +0x3dad4b29 +// 0.496727 +0x3efe5308 +// 0.405571 +0x3ecfa70c +// 0.017709 +0x3c9112b4 +// 0.273276 +0x3e8beae3 +// 0.139224 +0x3e0e90da +// 0.164887 +0x3e28d82a +// 0.152181 +0x3e1bd557 +// 0.288765 +0x3e93d8fe +// 0.197276 +0x3e4a029e +// 0.317987 +0x3ea2cf36 +// 0.463670 +0x3eed662c +// 0.118211 +0x3df2187b +// 0.153677 +0x3e1d5d93 +// 0.248839 +0x3e7ecfc8 +// 0.330323 +0x3ea9200d +// 0.165826 +0x3e29ce2b +// 0.415228 +0x3ed498c5 +// 0.158095 +0x3e21e3ba +// 0.472084 +0x3ef1b4f2 +// 0.279680 +0x3e8f3234 +// 0.628403 +0x3f20df03 +// 0.173759 +0x3e31eddd +// 0.056944 +0x3d693e41 +// 0.112899 +0x3de73757 +// 0.433907 +0x3ede2915 +// 0.309010 +0x3e9e3688 +// 0.214534 +0x3e5baeba +// 0.266734 +0x3e889160 +// 0.109075 +0x3ddf6274 +// 0.157174 +0x3e20f25a +// 0.498087 +0x3eff053e +// 0.536493 +0x3f0957a0 +// 0.101802 +0x3dd07d6a +// 0.572870 +0x3f12a79a +// 0.510344 +0x3f02a5e2 +// 0.340883 +0x3eae8834 +// 0.031543 +0x3d0133aa +// 0.586610 +0x3f162c0b +// 0.114681 +0x3deaddf0 +// 0.253213 +0x3e81a51d +// 0.228779 +0x3e6a4504 +// 0.368888 +0x3ebcdef3 +// 0.089338 +0x3db6f6e6 +// 0.238781 +0x3e7482fc +// 0.280075 +0x3e8f6609 +// 0.132994 +0x3e082f78 +// 0.168203 +0x3e2c3d82 +// 0.326983 +0x3ea76a4a +// 0.087054 +0x3db24963 +// 0.102987 +0x3dd2eaa8 +// 0.733532 +0x3f3bc8be +// 0.131519 +0x3e06acec +// 0.068085 +0x3d8b700f +// 0.497160 +0x3efe8bb7 +// 0.316539 +0x3ea2115d +// 0.179847 +0x3e3829cc +// 0.203578 +0x3e5076a5 +// 0.238197 +0x3e73e9ea +// 0.327658 +0x3ea7c2c0 +// 0.235027 +0x3e70aaff +// 0.196300 +0x3e4902e6 +// 0.004836 +0x3b9e7545 +// 0.106209 +0x3dd9841e +// 0.346858 +0x3eb1974f +// 0.073027 +0x3d958f69 +// 0.143820 +0x3e13456c +// 0.475023 +0x3ef3363f +// 0.210918 +0x3e57fac4 +// 0.732795 +0x3f3b9870 +// 0.050873 +0x3d506029 +// 0.087496 +0x3db33128 +// 0.032714 +0x3d05ff62 +// 0.145312 +0x3e14ccb9 +// 0.148019 +0x3e17923c +// 0.282333 +0x3e908e00 +// 0.207128 +0x3e541969 +// 0.005527 +0x3bb51a2b +// 0.008649 +0x3c0db2fe +// 0.055195 +0x3d6213c7 +// 0.457391 +0x3eea2f32 +// 0.293554 +0x3e964cb9 +// 0.218085 +0x3e5f5198 +// 0.441497 +0x3ee20bdd +// 0.385100 +0x3ec52bdc +// 0.407505 +0x3ed0a481 +// 0.023368 +0x3cbf6d9e +// 0.063770 +0x3d8299f9 +// 0.171900 +0x3e3006ae +// 0.031179 +0x3cff6b51 +// 0.332655 +0x3eaa51c9 +// 0.054740 +0x3d6036fa +// 0.459369 +0x3eeb3270 +// 0.092545 +0x3dbd8833 +// 0.210032 +0x3e57128c +// 0.261183 +0x3e85b9ce +// 0.034925 +0x3d0f0d08 +// 0.519082 +0x3f04e296 +// 0.949902 +0x3f732cce +// 0.038272 +0x3d1cc337 +// 0.150292 +0x3e19e623 +// 0.172307 +0x3e30714a +// 0.285945 +0x3e926758 +// 0.163123 +0x3e2709d7 +// 0.637208 +0x3f232011 +// 0.042000 +0x3d2c0811 +// 0.094308 +0x3dc124a9 +// 0.124468 +0x3dfee8ed +// 0.483145 +0x3ef75ed8 +// 0.239784 +0x3e758a00 +// 0.163463 +0x3e2762c1 +// 0.016340 +0x3c85dbaa +// 0.008293 +0x3c07e084 +// 0.167529 +0x3e2b8cae +// 0.180521 +0x3e38da80 +// 0.237546 +0x3e733f2c +// 0.232725 +0x3e6e4f7c +// 0.585181 +0x3f15ce6e +// 0.401072 +0x3ecd594e +// 0.022235 +0x3cb6265f +// 0.071972 +0x3d9365ee +// 0.242845 +0x3e78ac52 +// 0.530415 +0x3f07c948 +// 0.181271 +0x3e399f27 +// 0.018653 +0x3c98cdfa +// 0.473275 +0x3ef25109 +// 0.367333 +0x3ebc1302 +// 0.056900 +0x3d690ff7 +// 0.023287 +0x3cbec37a +// 0.585490 +0x3f15e2b2 +// 0.553092 +0x3f0d976e +// 0.149280 +0x3e18dcdc +// 0.208651 +0x3e55a88c +// 0.470970 +0x3ef12307 +// 0.184639 +0x3e3d1213 +// 0.263446 +0x3e86e25c +// 0.083840 +0x3dabb484 +// 0.296058 +0x3e9794e9 +// 0.148411 +0x3e17f8f6 +// 0.091644 +0x3dbbb005 +// 0.625394 +0x3f2019ce +// 0.038174 +0x3d1c5c4e +// 0.180824 +0x3e392a03 +// 0.231363 +0x3e6cea5b +// 0.023836 +0x3cc34318 +// 0.252296 +0x3e812cef +// 0.034533 +0x3d0d72e0 +// 0.235685 +0x3e715751 +// 0.118689 +0x3df31323 +// 0.446217 +0x3ee4768b +// 0.249004 +0x3e7efacd +// 0.021871 +0x3cb32b04 +// 0.151937 +0x3e1b954c +// 0.144493 +0x3e13f603 +// 0.604821 +0x3f1ad592 +// 0.203764 +0x3e50a775 +// 0.055974 +0x3d6544f4 +// 0.252690 +0x3e81609a +// 0.238214 +0x3e73ee59 +// 0.063320 +0x3d81add2 +// 0.162674 +0x3e26941a +// 0.156974 +0x3e20bdd2 +// 0.296404 +0x3e97c236 +// 0.148668 +0x3e183c68 +// 0.070410 +0x3d90334e +// 0.567303 +0x3f113ac8 +// 0.143447 +0x3e12e3c0 +// 0.068353 +0x3d8bfc9e +// 0.344029 +0x3eb02491 +// 0.221923 +0x3e633faa +// 0.253547 +0x3e81d0e2 +// 0.261630 +0x3e85f45c +// 0.030864 +0x3cfcd5fd +// 0.061980 +0x3d7ddf16 +// 0.375324 +0x3ec02a81 +// 0.295349 +0x3e973807 +// 0.023583 +0x3cc131cb +// 0.231362 +0x3e6cea23 +// 0.018653 +0x3c98cd9b +// 0.052645 +0x3d57a250 +// 0.078542 +0x3da0dae0 +// 0.294765 +0x3e96eb71 +// 0.631949 +0x3f21c76d +// 0.115232 +0x3debfeae +// 0.125366 +0x3e005fee +// 0.234068 +0x3e6faf6e +// 0.237430 +0x3e7320ec +// 0.030079 +0x3cf667f5 +// 0.084284 +0x3dac9d4d +// 0.398294 +0x3ecbed42 +// 0.009132 +0x3c159c99 +// 0.099493 +0x3dcbc307 +// 0.389525 +0x3ec76fd1 +// 0.064398 +0x3d83e317 +// 0.453335 +0x3ee81b7f +// 0.186862 +0x3e3f58c9 +// 0.169695 +0x3e2dc492 +// 0.301683 +0x3e9a7636 +// 0.289977 +0x3e9477ed +// 0.209202 +0x3e563921 +// 0.079120 +0x3da209df +// 0.121575 +0x3df8fc28 +// 0.308909 +0x3e9e2949 +// 0.476547 +0x3ef3fdef +// 0.143194 +0x3e12a193 +// 0.273052 +0x3e8bcd84 +// 0.446564 +0x3ee4a409 +// 0.385852 +0x3ec58e61 +// 0.247334 +0x3e7d453c +// 0.161873 +0x3e25c1fe +// 0.233314 +0x3e6ee9d5 +// 0.005663 +0x3bb99076 +// 0.455244 +0x3ee915c2 +// 0.100073 +0x3dccf2ea +// 0.254908 +0x3e828349 +// 0.441114 +0x3ee1d9b3 +// 0.114552 +0x3dea9a0f +// 0.072351 +0x3d942cc4 +// 0.038147 +0x3d1c3fa4 +// 0.252447 +0x3e8140b8 +// 0.225852 +0x3e6745d8 +// 0.005333 +0x3baec410 +// 0.205294 +0x3e523893 +// 0.283980 +0x3e9165d2 +// 0.113932 +0x3de95541 +// 0.359356 +0x3eb7fd87 +// 0.059051 +0x3d71df9c +// 0.120583 +0x3df6f453 +// 0.500398 +0x3f001a12 +// 0.318175 +0x3ea2e7c8 +// 0.419861 +0x3ed6f806 +// 0.384806 +0x3ec5053d +// 0.106966 +0x3ddb1140 +// 0.185525 +0x3e3dfa41 +// 0.098531 +0x3dc9cad5 +// 0.054140 +0x3d5dc1d0 +// 0.464079 +0x3eed9bb4 +// 0.292147 +0x3e959451 +// 0.390875 +0x3ec820c7 +// 0.167905 +0x3e2bef31 +// 0.300035 +0x3e999e26 +// 0.274919 +0x3e8cc23d +// 0.265299 +0x3e87d546 +// 0.305477 +0x3e9c6775 +// 0.025831 +0x3cd39ba4 +// 0.296216 +0x3e97a994 +// 0.313885 +0x3ea0b593 +// 0.162621 +0x3e26861a +// 0.192011 +0x3e449e83 +// 0.592588 +0x3f17b3db +// 0.064208 +0x3d837fb8 +// 0.192713 +0x3e45567d +// 0.861285 +0x3f5c7d24 +// 0.102511 +0x3dd1f130 +// 0.057472 +0x3d6b67fd +// 0.158875 +0x3e22b021 +// 0.413780 +0x3ed3dafc +// 0.020195 +0x3ca5704b +// 0.347702 +0x3eb205fb +// 0.125248 +0x3e004116 +// 0.351025 +0x3eb3b99b +// 0.281591 +0x3e902cb7 +// 0.357097 +0x3eb6d562 +// 0.313232 +0x3ea05ffd +// 0.119822 +0x3df5654f +// 0.300676 +0x3e99f22b +// 0.421772 +0x3ed7f270 +// 0.004219 +0x3b8a3ee4 +// 0.154470 +0x3e1e2d4e +// 0.102620 +0x3dd22a56 +// 0.326760 +0x3ea74d1e +// 0.337389 +0x3eacbe48 +// 0.047388 +0x3d421995 +// 0.366911 +0x3ebbdbc4 +// 0.186376 +0x3e3ed959 +// 0.309077 +0x3e9e3f4d +// 0.332852 +0x3eaa6b85 +// 0.001639 +0x3ad6cacc +// 0.191293 +0x3e43e244 +// 0.152930 +0x3e1c99b3 +// 0.335372 +0x3eabb5f0 +// 0.180380 +0x3e38b56f +// 0.315125 +0x3ea15811 +// 0.185340 +0x3e3dc9d0 +// 0.002753 +0x3b34725b +// 0.429256 +0x3edbc769 +// 0.497147 +0x3efe8a03 +// 0.074123 +0x3d97cd8c +// 0.859569 +0x3f5c0cbd +// 0.179096 +0x3e376511 +// 0.161454 +0x3e25542f +// 0.128923 +0x3e040469 +// 0.207918 +0x3e54e858 +// 0.300751 +0x3e99fc0d +// 0.139128 +0x3e0e779f +// 0.455734 +0x3ee955ea +// 0.043433 +0x3d31e666 +// 0.010163 +0x3c268200 +// 0.247378 +0x3e7d50ac +// 0.108332 +0x3ddddd00 +// 0.521166 +0x3f056b28 +// 0.352713 +0x3eb496d9 +// 0.292384 +0x3e95b364 +// 0.170665 +0x3e2ec2de +// 0.194639 +0x3e474f73 +// 0.423266 +0x3ed8b659 +// 0.088768 +0x3db5cbcb +// 0.221187 +0x3e627ee3 +// 0.123774 +0x3dfd7d5b +// 0.425345 +0x3ed9c6da +// 0.297352 +0x3e983e82 +// 0.716338 +0x3f3761f4 +// 0.339050 +0x3ead97ec +// 0.117134 +0x3defe3cd +// 0.083198 +0x3daa63f7 +// 0.492418 +0x3efc1e2b +// 0.255304 +0x3e82b72d +// 0.076858 +0x3d9d67e4 +// 0.085216 +0x3dae85ac +// 0.066036 +0x3d873dfa +// 0.322745 +0x3ea53ee6 +// 0.454938 +0x3ee8eda1 +// 0.250711 +0x3e805d21 +// 0.376430 +0x3ec0bb6c +// 0.493592 +0x3efcb815 +// 0.151751 +0x3e1b6488 +// 0.146744 +0x3e1643fa +// 0.085710 +0x3daf88b0 +// 0.421884 +0x3ed8012f +// 0.105655 +0x3dd86193 +// 0.079864 +0x3da38f8f +// 0.119740 +0x3df53a36 +// 0.380954 +0x3ec30c5c +// 0.042093 +0x3d2c69b5 +// 0.384201 +0x3ec4b5f6 +// 0.340089 +0x3eae2015 +// 0.199251 +0x3e4c088f +// 0.199267 +0x3e4c0cbe +// 0.121078 +0x3df7f7be +// 0.180138 +0x3e38761f +// 0.112156 +0x3de5b219 +// 0.131728 +0x3e06e3bc +// 0.303013 +0x3e9b248f +// 0.319950 +0x3ea3d08d +// 0.037736 +0x3d1a9190 +// 0.112549 +0x3de6805a +// 0.548051 +0x3f0c4d18 +// 0.114340 +0x3dea2b18 +// 0.407986 +0x3ed0e39b +// 0.222031 +0x3e635c06 +// 0.365261 +0x3ebb0376 +// 0.216630 +0x3e5dd43c +// 0.342239 +0x3eaf39f5 +// 0.556500 +0x3f0e76c4 +// 0.300400 +0x3e99ce0b +// 0.173778 +0x3e31f2bb +// 0.053346 +0x3d5a8176 +// 0.227109 +0x3e688f2d +// 0.009019 +0x3c13c342 +// 0.152703 +0x3e1c5e42 +// 0.318268 +0x3ea2f40b +// 0.063473 +0x3d81fdf5 +// 0.099720 +0x3dcc39f6 +// 0.176788 +0x3e3507eb +// 0.234613 +0x3e703e64 +// 0.380979 +0x3ec30fa1 +// 0.300462 +0x3e99d62e +// 0.326439 +0x3ea72310 +// 0.413176 +0x3ed38bbf +// 0.571497 +0x3f124d9a +// 0.541330 +0x3f0a9492 +// 0.230224 +0x3e6bbfc8 +// 0.387816 +0x3ec68fcf +// 0.215919 +0x3e5d19be +// 0.534914 +0x3f08f022 +// 0.174055 +0x3e323b74 +// 0.306203 +0x3e9cc699 +// 0.243803 +0x3e79a79b +// 0.360041 +0x3eb85741 +// 0.254495 +0x3e824d39 +// 0.326766 +0x3ea74ded +// 0.556551 +0x3f0e7a20 +// 0.634323 +0x3f2262f9 +// 0.375376 +0x3ec03151 +// 0.433138 +0x3eddc454 +// 0.067708 +0x3d8aaa51 +// 0.402644 +0x3ece2752 +// 0.020789 +0x3caa4d2c +// 0.078698 +0x3da12c40 +// 0.094132 +0x3dc0c81e +// 0.500736 +0x3f003039 +// 0.242401 +0x3e7837ef +// 0.111229 +0x3de3cc1a +// 0.018931 +0x3c9b15f8 +// 0.136681 +0x3e0bf626 +// 0.595543 +0x3f18757f +// 0.298374 +0x3e98c488 +// 0.389114 +0x3ec739e6 +// 0.073217 +0x3d95f2c4 +// 0.097708 +0x3dc81b42 +// 0.485956 +0x3ef8cf3e +// 0.032261 +0x3d04249a +// 0.167561 +0x3e2b9514 +// 0.303293 +0x3e9b4936 +// 0.079768 +0x3da35d89 +// 0.261848 +0x3e8610fc +// 0.372837 +0x3ebee470 +// 0.420397 +0x3ed73e3d +// 0.374796 +0x3ebfe548 +// 0.376529 +0x3ec0c85f +// 0.512951 +0x3f0350c5 +// 0.266170 +0x3e884768 +// 0.540781 +0x3f0a709a +// 0.156736 +0x3e207f6d +// 0.274649 +0x3e8c9ed3 +// 0.283771 +0x3e914a6a +// 0.246255 +0x3e7c2a36 +// 0.492664 +0x3efc3e69 +// 0.085884 +0x3dafe3fc +// 0.599164 +0x3f1962cb +// 0.335847 +0x3eabf414 +// 0.348976 +0x3eb2acee +// 0.212534 +0x3e59a29d +// 0.514100 +0x3f039c0b +// 0.065660 +0x3d86789d +// 0.085705 +0x3daf864e +// 0.173263 +0x3e316bd1 +// 0.545565 +0x3f0baa25 +// 0.111795 +0x3de4f505 +// 0.140934 +0x3e1050e4 +// 0.836717 +0x3f56330f +// 0.205034 +0x3e51f486 +// 0.196967 +0x3e49b1d7 +// 0.026354 +0x3cd7e48c +// 0.056268 +0x3d667974 +// 0.075239 +0x3d9a1703 +// 0.029610 +0x3cf291b5 +// 0.166898 +0x3e2ae760 +// 0.510787 +0x3f02c2f6 +// 0.000148 +0x391ab077 +// 0.218095 +0x3e5f543b +// 0.485259 +0x3ef873e2 +// 0.040958 +0x3d27c347 +// 0.817991 +0x3f5167dd +// 0.009489 +0x3c1b772b +// 0.303369 +0x3e9b5333 +// 0.171086 +0x3e2f3111 +// 0.386180 +0x3ec5b967 +// 0.316857 +0x3ea23b0a +// 0.247227 +0x3e7d2906 +// 0.349471 +0x3eb2edcd +// 0.036446 +0x3d15481d +// 0.134953 +0x3e0a311c +// 0.193278 +0x3e45eaa9 +// 0.001100 +0x3a9034a4 +// 0.381361 +0x3ec341c4 +// 0.009756 +0x3c1fd5e2 +// 0.319198 +0x3ea36df8 +// 0.275602 +0x3e8d1ba8 +// 0.052633 +0x3d579546 +// 0.230758 +0x3e6c4bf1 +// 0.382342 +0x3ec3c24a +// 0.343471 +0x3eafdb70 +// 0.039098 +0x3d2024d7 +// 0.747744 +0x3f3f6c2b +// 0.367009 +0x3ebbe89b +// 0.250982 +0x3e8080c4 +// 0.793943 +0x3f4b3fde +// 0.255764 +0x3e82f389 +// 0.186677 +0x3e3f2826 +// 0.268505 +0x3e897974 +// 0.209880 +0x3e56eaae +// 0.283923 +0x3e915e5f +// 0.730451 +0x3f3afed6 +// 0.308762 +0x3e9e1609 +// 0.218745 +0x3e5ffec9 +// 0.026561 +0x3cd9964f +// 0.270613 +0x3e8a8dbc +// 0.233827 +0x3e6f706d +// 0.257746 +0x3e83f744 +// 0.371395 +0x3ebe278c +// 0.580549 +0x3f149edc +// 0.501821 +0x3f00775b +// 0.052688 +0x3d57cf38 +// 0.308733 +0x3e9e123f +// 0.160839 +0x3e24b2f0 +// 0.022828 +0x3cbb0267 +// 0.427128 +0x3edab08b +// 0.229685 +0x3e6b329d +// 0.256709 +0x3e836f53 +// 0.214911 +0x3e5c1190 +// 0.101640 +0x3dd028be +// 0.081669 +0x3da74244 +// 0.367098 +0x3ebbf43b +// 0.059535 +0x3d73db38 +// 0.040015 +0x3d23e699 +// 0.083474 +0x3daaf43f +// 0.245262 +0x3e7b260d +// 0.454200 +0x3ee88ce3 +// 0.416876 +0x3ed570bc +// 0.214927 +0x3e5c15f0 +// 0.281985 +0x3e906062 +// 0.240011 +0x3e75c58f +// 0.032867 +0x3d069f59 +// 0.258934 +0x3e84930d +// 0.128406 +0x3e037cd9 +// 0.187905 +0x3e406a10 +// 0.057798 +0x3d6cbd61 +// 0.264659 +0x3e878155 +// 0.136293 +0x3e0b9080 +// 0.210709 +0x3e57c406 +// 0.250576 +0x3e804b78 +// 0.418432 +0x3ed63cb6 +// 0.409157 +0x3ed17d08 +// 0.038430 +0x3d1d6908 +// 0.252196 +0x3e811fd6 +// 0.408058 +0x3ed0ecf1 +// 0.729815 +0x3f3ad52d +// 0.073841 +0x3d973a07 +// 0.084425 +0x3dace6d3 +// 0.261215 +0x3e85bdea +// 0.098205 +0x3dc91fcd +// 0.332421 +0x3eaa3316 +// 0.147976 +0x3e17870c +// 0.223659 +0x3e6506c5 +// 0.044721 +0x3d372d60 +// 0.097787 +0x3dc84488 +// 0.156168 +0x3e1fea91 +// 0.399272 +0x3ecc6d6d +// 0.332517 +0x3eaa3fb6 +// 0.219954 +0x3e613bb1 +// 0.136825 +0x3e0c1bbc +// 0.664777 +0x3f2a2ed4 +// 0.130915 +0x3e060e9c +// 0.491620 +0x3efbb594 +// 0.042259 +0x3d2d181c +// 0.255049 +0x3e8295d4 +// 0.186174 +0x3e3ea473 +// 0.314873 +0x3ea136fd +// 0.216271 +0x3e5d7610 +// 0.219046 +0x3e604d83 +// 0.109926 +0x3de120e8 +// 0.289650 +0x3e944d10 +// 0.093740 +0x3dbffaa5 +// 0.016400 +0x3c8659a6 +// 0.269791 +0x3e8a21fb +// 0.121057 +0x3df7ecb6 +// 0.302850 +0x3e9b0f31 +// 0.371206 +0x3ebe0ea9 +// 0.136031 +0x3e0b4b9b +// 0.282104 +0x3e906fe6 +// 0.214515 +0x3e5ba9e7 +// 0.066313 +0x3d87cf3d +// 0.524879 +0x3f065e75 +// 0.125985 +0x3e010221 +// 0.245640 +0x3e7b88ff +// 0.355805 +0x3eb62c02 +// 0.064727 +0x3d848f89 +// 0.190101 +0x3e42a9e9 +// 0.306330 +0x3e9cd74c +// 0.360062 +0x3eb859ff +// 0.903873 +0x3f67643a +// 0.170437 +0x3e2e86ea +// 0.407314 +0x3ed08b6b +// 0.153923 +0x3e1d9e11 +// 0.870259 +0x3f5ec949 +// 0.162750 +0x3e26a7fc +// 0.155593 +0x3e1f53d2 +// 0.356764 +0x3eb6a9bf +// 0.070908 +0x3d913841 +// 0.183177 +0x3e3b92d2 +// 0.323589 +0x3ea5ad7c +// 0.028712 +0x3ceb35fd +// 0.169873 +0x3e2df316 +// 0.077727 +0x3d9f2f51 +// 0.293218 +0x3e96209b +// 0.186267 +0x3e3ebce1 +// 0.507948 +0x3f0208e9 +// 0.174151 +0x3e3254c5 +// 0.363428 +0x3eba1349 +// 0.063158 +0x3d8158bd +// 0.026206 +0x3cd6aee9 +// 0.556723 +0x3f0e8569 +// 0.317461 +0x3ea28a43 +// 0.037110 +0x3d1800e8 +// 0.303298 +0x3e9b49db +// 0.446096 +0x3ee466ac +// 0.504278 +0x3f011859 +// 0.328081 +0x3ea7fa32 +// 0.403309 +0x3ece7e92 +// 0.295143 +0x3e971cef +// 0.087359 +0x3db2e969 +// 0.328029 +0x3ea7f36b +// 0.455438 +0x3ee92f20 +// 0.759598 +0x3f4274fb +// 0.191956 +0x3e44901b +// 0.127335 +0x3e02641a +// 0.302877 +0x3e9b12aa +// 0.500287 +0x3f0012d3 +// 0.243183 +0x3e790514 +// 0.427363 +0x3edacf55 +// 0.288626 +0x3e93c6cc +// 0.015122 +0x3c77c295 +// 0.027601 +0x3ce21c79 +// 0.034102 +0x3d0bae66 +// 0.544045 +0x3f0b468d +// 0.451600 +0x3ee73823 +// 0.029627 +0x3cf2b54f +// 0.545677 +0x3f0bb176 +// 0.191381 +0x3e43f958 +// 0.188696 +0x3e4139a0 +// 0.618232 +0x3f1e4476 +// 0.245826 +0x3e7bb9b8 +// 0.283656 +0x3e913b52 +// 0.246742 +0x3e7caa02 +// 0.545171 +0x3f0b9056 +// 0.089162 +0x3db69a81 +// 0.124343 +0x3dfea7c1 +// 0.147086 +0x3e169da8 +// 0.265841 +0x3e881c5e +// 0.275850 +0x3e8d3c3c +// 0.062817 +0x3d80a659 +// 0.178302 +0x3e3694d7 +// 0.442935 +0x3ee2c854 +// 0.031923 +0x3d02c1f5 +// 0.196474 +0x3e49309a +// 0.148156 +0x3e17b64d +// 0.050655 +0x3d4f7b35 +// 0.150237 +0x3e19d7b3 +// 0.436591 +0x3edf88cb +// 0.793930 +0x3f4b3ef8 +// 0.170910 +0x3e2f02f4 +// 0.357077 +0x3eb6d2c2 +// 0.117793 +0x3df13d6b +// 0.589458 +0x3f16e6bf +// 0.117834 +0x3df152c4 +// 0.347901 +0x3eb22024 +// 0.050470 +0x3d4eb9ef +// 0.147943 +0x3e177e5d +// 0.266259 +0x3e885314 +// 0.365886 +0x3ebb5577 +// 0.162933 +0x3e26d800 +// 0.636325 +0x3f22e632 +// 0.268932 +0x3e89b178 +// 0.381601 +0x3ec36126 +// 0.059650 +0x3d745395 +// 0.165244 +0x3e2935be +// 0.142281 +0x3e11b235 +// 0.233586 +0x3e6f311a +// 0.270345 +0x3e8a6aa5 +// 0.386771 +0x3ec606d3 +// 0.420413 +0x3ed74067 +// 0.286874 +0x3e92e11d +// 0.604622 +0x3f1ac87d +// 0.007727 +0x3bfd36cc +// 0.078261 +0x3da0476e +// 0.598540 +0x3f1939f0 +// 0.061557 +0x3d7c239e +// 0.102380 +0x3dd1acb7 +// 0.229607 +0x3e6b1e34 +// 0.111999 +0x3de55fd5 +// 0.154056 +0x3e1dc0c6 +// 0.553843 +0x3f0dc8aa +// 0.093887 +0x3dc047d0 +// 0.321386 +0x3ea48cb6 +// 0.289457 +0x3e9433c5 +// 0.471374 +0x3ef157f8 +// 0.212202 +0x3e594b5c +// 0.159028 +0x3e22d832 +// 0.058811 +0x3d70e3ac +// 0.269150 +0x3e89ce09 +// 0.217640 +0x3e5edce5 +// 0.391107 +0x3ec83f23 +// 0.348422 +0x3eb26468 +// 0.261824 +0x3e860dd2 +// 0.288727 +0x3e93d405 +// 0.375672 +0x3ec05813 +// 0.050390 +0x3d4e65c9 +// 0.022099 +0x3cb5088b +// 0.478320 +0x3ef4e665 +// 0.286025 +0x3e9271da +// 0.557764 +0x3f0ec99d +// 0.046046 +0x3d3c9a75 +// 0.346213 +0x3eb142cd +// 0.045260 +0x3d39628e +// 0.542625 +0x3f0ae972 +// 0.138977 +0x3e0e5018 +// 0.756336 +0x3f419f41 +// 0.266336 +0x3e885d27 +// 0.462758 +0x3eeceea8 +// 0.176909 +0x3e352782 +// 0.099892 +0x3dcc9446 +// 0.027507 +0x3ce15639 +// 0.082298 +0x3da88bb0 +// 0.271309 +0x3e8ae90f +// 0.300846 +0x3e9a0876 +// 0.188615 +0x3e412467 +// 0.527310 +0x3f06fdd0 +// 0.339104 +0x3ead9f12 +// 0.145179 +0x3e14a9de +// 0.436656 +0x3edf9163 +// 0.264338 +0x3e87574c +// 0.287603 +0x3e9340c3 +// 0.342166 +0x3eaf3052 +// 0.615674 +0x3f1d9cca +// 0.177382 +0x3e35a396 +// 0.124924 +0x3dffd7f2 +// 0.044551 +0x3d367ac7 +// 0.512385 +0x3f032bb2 +// 0.270095 +0x3e8a49d9 +// 0.154356 +0x3e1e0f69 +// 0.277405 +0x3e8e0805 +// 0.233661 +0x3e6f44c4 +// 0.182240 +0x3e3a9d18 +// 0.471526 +0x3ef16be1 +// 0.379162 +0x3ec2218e +// 0.638001 +0x3f235410 +// 0.187973 +0x3e407c1a +// 0.067088 +0x3d89659a +// 0.691135 +0x3f30ee33 +// 0.027698 +0x3ce2e6ab +// 0.461904 +0x3eec7ebd +// 0.175122 +0x3e335341 +// 0.349260 +0x3eb2d22d +// 0.491458 +0x3efba05b +// 0.357738 +0x3eb72964 +// 0.107338 +0x3ddbd3ef +// 0.185216 +0x3e3da925 +// 0.296976 +0x3e980d2d +// 0.115240 +0x3dec032b +// 0.099085 +0x3dcaed55 +// 0.056844 +0x3d68d533 +// 0.019413 +0x3c9f0703 +// 0.083746 +0x3dab8348 +// 0.648426 +0x3f25ff3e +// 0.311273 +0x3e9f5f2a +// 0.154659 +0x3e1e5f05 +// 0.299225 +0x3e993411 +// 0.013361 +0x3c5ae7a4 +// 0.116492 +0x3dee9387 +// 0.350716 +0x3eb39109 +// 0.154661 +0x3e1e5f81 +// 0.187944 +0x3e407454 +// 0.181152 +0x3e397fdc +// 0.026460 +0x3cd8c39e +// 0.168815 +0x3e2cddda +// 0.271462 +0x3e8afd06 +// 0.446489 +0x3ee49a3a +// 0.647615 +0x3f25ca16 +// 0.100259 +0x3dcd54b1 +// 0.001431 +0x3abb84a1 +// 0.074750 +0x3d9916a0 +// 0.684105 +0x3f2f2184 +// 0.031109 +0x3cfed90f +// 0.579194 +0x3f144613 +// 0.324556 +0x3ea62c27 +// 0.239078 +0x3e74d0bd +// 0.416895 +0x3ed57334 +// 0.477184 +0x3ef4517e +// 0.023993 +0x3cc48d3f +// 0.221086 +0x3e626442 +// 0.464792 +0x3eedf929 +// 0.090956 +0x3dba471e +// 0.027506 +0x3ce153f7 +// 0.251208 +0x3e809e62 +// 0.408166 +0x3ed0fb28 +// 0.138402 +0x3e0db921 +// 0.199878 +0x3e4cacbb +// 0.260202 +0x3e85393e +// 0.695987 +0x3f322c34 +// 0.039173 +0x3d207359 +// 0.247992 +0x3e7df1b8 +// 0.355917 +0x3eb63ac9 +// 0.634086 +0x3f22537e +// 0.159316 +0x3e23239c +// 0.110549 +0x3de26749 +// 0.314166 +0x3ea0da5e +// 0.065517 +0x3d862dc7 +// 0.116722 +0x3def0bfc +// 0.143291 +0x3e12bade +// 0.216436 +0x3e5da160 +// 0.256543 +0x3e8359a7 +// 0.079175 +0x3da226bc +// 0.424421 +0x3ed94dab +// 0.557967 +0x3f0ed6eb +// 0.364311 +0x3eba86ef +// 0.278530 +0x3e8e9b88 +// 0.208113 +0x3e551ba9 +// 0.490579 +0x3efb2d1d +// 0.005475 +0x3bb36b69 +// 0.445052 +0x3ee3dddb +// 0.109568 +0x3de0655f +// 0.254757 +0x3e826f75 +// 0.098271 +0x3dc94281 +// 0.067691 +0x3d8aa172 +// 0.639317 +0x3f23aa4e +// 0.475768 +0x3ef397eb +// 0.309145 +0x3e9e4834 +// 0.291549 +0x3e9545e6 +// 0.039318 +0x3d210c3e +// 0.360393 +0x3eb8856c +// 0.324084 +0x3ea5ee4a +// 0.184312 +0x3e3cbc31 +// 0.272994 +0x3e8bc5d5 +// 0.668613 +0x3f2b2a3b +// 0.025205 +0x3cce7b7f +// 0.113029 +0x3de77bb5 +// 0.315064 +0x3ea1500e +// 0.398160 +0x3ecbdbac +// 0.049589 +0x3d4b1d70 +// 0.134896 +0x3e0a2233 +// 0.136222 +0x3e0b7dbb +// 0.185797 +0x3e3e417c +// 0.088071 +0x3db45e94 +// 0.037459 +0x3d196f05 +// 0.025388 +0x3ccffa1c +// 0.235420 +0x3e7111f9 +// 0.513781 +0x3f038726 +// 0.320419 +0x3ea40dee +// 0.034386 +0x3d0cd86a +// 0.071456 +0x3d92575c +// 0.064400 +0x3d83e438 +// 0.366866 +0x3ebbd5de +// 0.011714 +0x3c3fea2c +// 0.389849 +0x3ec79a5a +// 0.597233 +0x3f18e444 +// 0.048598 +0x3d470f0f +// 0.530663 +0x3f07d988 +// 0.172892 +0x3e310a81 +// 0.084277 +0x3dac998d +// 0.381122 +0x3ec3226d +// 0.300410 +0x3e99cf4e +// 0.092248 +0x3dbcecbd +// 0.054375 +0x3d5eb7e5 +// 0.193229 +0x3e45ddc1 +// 0.114642 +0x3deac937 +// 0.243341 +0x3e792e72 +// 0.187434 +0x3e3feead +// 0.161510 +0x3e2562f9 +// 0.392998 +0x3ec93705 +// 0.160528 +0x3e24617d +// 0.080628 +0x3da52049 +// 0.495630 +0x3efdc33d +// 0.209096 +0x3e561d43 +// 0.164475 +0x3e286c38 +// 0.258359 +0x3e8447a9 +// 0.646628 +0x3f258970 +// 0.373632 +0x3ebf4cac +// 0.318414 +0x3ea3072d +// 0.267051 +0x3e88badc +// 0.142943 +0x3e125fbb +// 0.168884 +0x3e2cefcf +// 0.178710 +0x3e36ffda +// 0.038107 +0x3d1c1613 +// 0.227010 +0x3e687534 +// 0.336274 +0x3eac2c26 +// 0.370021 +0x3ebd7364 +// 0.041310 +0x3d29351b +// 0.059378 +0x3d7335e9 +// 0.166657 +0x3e2aa80b +// 0.113932 +0x3de9556f +// 0.263147 +0x3e86bb2d +// 0.309383 +0x3e9e6766 +// 0.102510 +0x3dd1f0c7 +// 0.330523 +0x3ea93a5b +// 0.337972 +0x3ead0aaf +// 0.400018 +0x3ecccf1d +// 0.100128 +0x3dcd1022 +// 0.385830 +0x3ec58b83 +// 0.214938 +0x3e5c189f +// 0.275529 +0x3e8d1226 +// 0.355518 +0x3eb6066b +// 0.284272 +0x3e918c11 +// 0.117601 +0x3df0d8ec +// 0.281817 +0x3e904a5d +// 0.153532 +0x3e1d3798 +// 0.251629 +0x3e80d585 +// 0.523750 +0x3f061473 +// 0.160440 +0x3e244a6e +// 0.089203 +0x3db6afd1 +// 0.285055 +0x3e91f2b6 +// 0.061107 +0x3d7a4b75 +// 0.154189 +0x3e1de39c +// 0.027413 +0x3ce09147 +// 0.208585 +0x3e559735 +// 0.259791 +0x3e850353 +// 0.267406 +0x3e88e960 +// 0.010625 +0x3c2e13e2 +// 0.443128 +0x3ee2e1bd +// 0.089782 +0x3db7df99 +// 0.103147 +0x3dd33e98 +// 0.710810 +0x3f35f7a1 +// 0.308583 +0x3e9dfe9d +// 0.227937 +0x3e696837 +// 0.248047 +0x3e7e001f +// 0.059337 +0x3d730b8f +// 0.258147 +0x3e842bd4 +// 0.173969 +0x3e322503 +// 0.057811 +0x3d6ccb86 +// 0.003438 +0x3b614f7b +// 0.215786 +0x3e5cf6ec +// 0.171720 +0x3e2fd75a +// 0.056920 +0x3d69250f +// 0.188786 +0x3e415101 +// 0.284111 +0x3e91770b +// 0.111823 +0x3de50382 +// 0.759675 +0x3f427a0a +// 0.149020 +0x3e1898b6 +// 0.140390 +0x3e0fc246 +// 0.138516 +0x3e0dd736 +// 0.406776 +0x3ed044eb +// 0.200533 +0x3e4d589e +// 0.275985 +0x3e8d4def +// 0.068357 +0x3d8bfe8b +// 0.075398 +0x3d9a6a6f +// 0.180833 +0x3e392c48 +// 0.139525 +0x3e0edfb5 +// 0.027878 +0x3ce46136 +// 0.078491 +0x3da0bfb4 +// 0.358741 +0x3eb7ace8 +// 0.215451 +0x3e5c9f18 +// 0.462895 +0x3eed0086 +// 0.267512 +0x3e88f74f +// 0.188376 +0x3e40e587 +// 0.260163 +0x3e853424 +// 0.425710 +0x3ed9f6a4 +// 0.509119 +0x3f0255a3 +// 0.118578 +0x3df2d918 +// 0.215326 +0x3e5c7e66 +// 0.175266 +0x3e3378d7 +// 0.176788 +0x3e3507e8 +// 0.460513 +0x3eebc868 +// 0.261886 +0x3e8615e0 +// 0.118644 +0x3df2fbba +// 0.449042 +0x3ee5e8e0 +// 0.298663 +0x3e98ea65 +// 0.483905 +0x3ef7c262 +// 0.131569 +0x3e06b9f6 +// 0.193479 +0x3e461f3f +// 0.131414 +0x3e06914c +// 0.476149 +0x3ef3c9dc +// 0.356284 +0x3eb66ade +// 0.704885 +0x3f347350 +// 0.034839 +0x3d0eb354 +// 0.260385 +0x3e855130 +// 0.528628 +0x3f07542c +// 0.000553 +0x3a10e8a5 +// 0.183634 +0x3e3c0a91 +// 0.121889 +0x3df9a12f +// 0.169131 +0x3e2d30a5 +// 0.272215 +0x3e8b5fd0 +// 0.016593 +0x3c87eefc +// 0.260177 +0x3e8535ec +// 0.348434 +0x3eb265ff +// 0.335149 +0x3eab98ac +// 0.241043 +0x3e76d3dc +// 0.362254 +0x3eb97956 +// 0.018128 +0x3c948078 +// 0.224426 +0x3e65cfe8 +// 0.083627 +0x3dab44e4 +// 0.038692 +0x3d1e7b3b +// 0.198722 +0x3e4b7de4 +// 0.006205 +0x3bcb4f56 +// 0.151971 +0x3e1b9e56 +// 0.003118 +0x3b4c59bc +// 0.099533 +0x3dcbd802 +// 0.439867 +0x3ee13635 +// 0.382049 +0x3ec39bf1 +// 0.092915 +0x3dbe4a16 +// 0.122443 +0x3dfac32e +// 0.055260 +0x3d625820 +// 0.190079 +0x3e42a421 +// 0.076001 +0x3d9ba678 +// 0.281863 +0x3e905055 +// 0.756154 +0x3f41934c +// 0.002406 +0x3b1daa3e +// 0.090720 +0x3db9cb30 +// 0.186736 +0x3e3f37c3 +// 0.811149 +0x3f4fa77c +// 0.244128 +0x3e79fca0 +// 0.118304 +0x3df24958 +// 0.495395 +0x3efda473 +// 0.373863 +0x3ebf6afe +// 0.151275 +0x3e1ae7c1 +// 0.034596 +0x3d0db4c0 +// 0.024156 +0x3cc5e3cb +// 0.165773 +0x3e29c081 +// 0.134528 +0x3e09c1a3 +// 0.219299 +0x3e608fce +// 0.001146 +0x3a9633f7 +// 0.569042 +0x3f11acbd +// 0.019801 +0x3ca23622 +// 0.135373 +0x3e0a9f31 +// 0.075563 +0x3d9ac09a +// 0.222669 +0x3e64034c +// 0.433102 +0x3eddbf9a +// 0.387482 +0x3ec66417 +// 0.369866 +0x3ebd5f16 +// 0.117085 +0x3defca85 +// 0.117186 +0x3defff63 +// 0.052618 +0x3d5785b1 +// 0.254436 +0x3e82456b +// 0.350491 +0x3eb37396 +// 0.307356 +0x3e9d5dd1 +// 0.327235 +0x3ea78b4a +// 0.362340 +0x3eb984a5 +// 0.152726 +0x3e1c641e +// 0.203350 +0x3e503af5 +// 0.393328 +0x3ec9624b +// 0.029692 +0x3cf33bce +// 0.153971 +0x3e1daa79 +// 0.161710 +0x3e259750 +// 0.158799 +0x3e229c47 +// 0.121331 +0x3df87c81 +// 0.231934 +0x3e6d8005 +// 0.095517 +0x3dc39e9d +// 0.211872 +0x3e58f50b +// 0.639205 +0x3f23a2f3 +// 0.224976 +0x3e666038 +// 0.264019 +0x3e872d86 +// 0.301007 +0x3e9a1da3 +// 0.233693 +0x3e6f4d37 +// 0.219525 +0x3e60cb26 +// 0.745405 +0x3f3ed2d4 +// 0.453416 +0x3ee82624 +// 0.737740 +0x3f3cdc86 +// 0.405804 +0x3ecfc58d +// 0.214421 +0x3e5b9120 +// 0.292693 +0x3e95dbdb +// 0.802659 +0x3f4d7b18 +// 0.234962 +0x3e7099e1 +// 0.222199 +0x3e638823 +// 0.111311 +0x3de3f6f9 +// 0.042867 +0x3d2f958b +// 0.144935 +0x3e1469e1 +// 0.042695 +0x3d2ee164 +// 0.189630 +0x3e422e53 +// 0.141988 +0x3e116567 +// 0.124485 +0x3dfef22f +// 0.476901 +0x3ef42c6a +// 0.238813 +0x3e748b73 +// 0.188334 +0x3e40da8d +// 0.317873 +0x3ea2c036 +// 0.188059 +0x3e409269 +// 0.039536 +0x3d21f068 +// 0.306073 +0x3e9cb58d +// 0.535797 +0x3f0929f7 +// 0.243463 +0x3e794e4b +// 0.435754 +0x3edf1b18 +// 0.208347 +0x3e5558e0 +// 0.007583 +0x3bf87a5f +// 0.070016 +0x3d8f64be +// 0.194863 +0x3e478a21 +// 0.031877 +0x3d02912a +// 0.237141 +0x3e72d519 +// 0.255807 +0x3e82f91c +// 0.054247 +0x3d5e31a4 +// 0.306448 +0x3e9ce6c5 +// 0.039130 +0x3d2046cd +// 0.239255 +0x3e74ff42 +// 0.517256 +0x3f046aeb +// 0.429500 +0x3edbe764 +// 0.101137 +0x3dcf20b6 +// 0.327492 +0x3ea7ad09 +// 0.240795 +0x3e769304 +// 0.112796 +0x3de7017a +// 0.268601 +0x3e898614 +// 0.327099 +0x3ea7797e +// 0.127906 +0x3e02f9ad +// 0.023457 +0x3cc02832 +// 0.221584 +0x3e62e6f6 +// 0.131095 +0x3e063dd3 +// 0.343416 +0x3eafd443 +// 0.031305 +0x3d00395a +// 0.972994 +0x3f79161b +// 0.466633 +0x3eeeea89 +// 0.110154 +0x3de19895 +// 0.180548 +0x3e38e1a4 +// 0.074390 +0x3d985a05 +// 0.444626 +0x3ee3a607 +// 0.023820 +0x3cc321fa +// 0.273485 +0x3e8c0643 +// 0.161124 +0x3e24fd95 +// 0.237337 +0x3e730881 +// 0.269595 +0x3e8a084f +// 0.058929 +0x3d715fb7 +// 0.078651 +0x3da113ab +// 0.341322 +0x3eaec1bb +// 0.164217 +0x3e282872 +// 0.121031 +0x3df7df18 +// 0.460204 +0x3eeb9fcd +// 0.185686 +0x3e3e2482 +// 0.129090 +0x3e04303c +// 0.378018 +0x3ec18b87 +// 0.389487 +0x3ec76ad6 +// 0.071457 +0x3d925812 +// 0.039814 +0x3d23145d +// 0.136578 +0x3e0bdb2a +// 0.445486 +0x3ee416bb +// 0.048864 +0x3d482574 +// 0.121217 +0x3df84063 +// 0.042335 +0x3d2d67ad +// 0.079518 +0x3da2da51 +// 0.286551 +0x3e92b6c8 +// 0.415090 +0x3ed486ac +// 0.527758 +0x3f071b28 +// 0.130344 +0x3e0578f8 +// 0.030844 +0x3cfcad5f +// 0.158860 +0x3e22ac50 +// 0.089336 +0x3db6f605 +// 0.253058 +0x3e8190cb +// 0.116715 +0x3def0869 +// 0.397490 +0x3ecb83e0 +// 0.201625 +0x3e4e76aa +// 0.132480 +0x3e07a8c5 +// 0.575502 +0x3f135415 +// 0.055301 +0x3d628364 +// 0.326252 +0x3ea70a89 +// 0.320484 +0x3ea41684 +// 0.191975 +0x3e449539 +// 0.121507 +0x3df8d8aa +// 0.389115 +0x3ec73a19 +// 0.183376 +0x3e3bc708 +// 0.300231 +0x3e99b7e9 +// 0.091469 +0x3dbb542a +// 0.152107 +0x3e1bc1f7 +// 0.307353 +0x3e9d5d5a +// 0.178820 +0x3e371cb0 +// 0.111698 +0x3de4c22a +// 0.116344 +0x3dee4583 +// 0.096167 +0x3dc4f36e +// 0.210319 +0x3e575dc5 +// 0.879232 +0x3f611551 +// 0.466084 +0x3eeea289 +// 0.048155 +0x3d453e34 +// 0.724368 +0x3f397029 +// 0.398611 +0x3ecc16cc +// 0.460072 +0x3eeb8e93 +// 0.190073 +0x3e42a262 +// 0.383843 +0x3ec48702 +// 0.456098 +0x3ee985a4 +// 0.009562 +0x3c1cab56 +// 0.009650 +0x3c1e19eb +// 0.283222 +0x3e910276 +// 0.294835 +0x3e96f48d +// 0.144841 +0x3e145129 +// 0.381842 +0x3ec380d1 +// 0.041400 +0x3d2992b3 +// 0.015403 +0x3c7c5ca6 +// 0.531407 +0x3f080a44 +// 0.265255 +0x3e87cf8a +// 0.228939 +0x3e6a6ee6 +// 0.011779 +0x3c40fe43 +// 0.382522 +0x3ec3d9f8 +// 0.712053 +0x3f364914 +// 0.628910 +0x3f21003b +// 0.210168 +0x3e57364a +// 0.348771 +0x3eb29214 +// 0.119306 +0x3df456f6 +// 0.017384 +0x3c8e67ef +// 0.340374 +0x3eae4582 +// 0.441157 +0x3ee1df46 +// 0.229008 +0x3e6a810a +// 0.037641 +0x3d1a2dd5 +// 0.081373 +0x3da6a6e7 +// 0.084095 +0x3dac3a37 +// 0.176172 +0x3e346689 +// 0.107530 +0x3ddc38e1 +// 0.191527 +0x3e441f8e +// 0.083583 +0x3dab2d95 +// 0.300358 +0x3e99c88d +// 0.219546 +0x3e60d0a0 +// 0.129983 +0x3e051a3f +// 0.584998 +0x3f15c26b +// 0.100133 +0x3dcd12bd +// 0.134522 +0x3e09c02e +// 0.046929 +0x3d403846 +// 0.471743 +0x3ef18851 +// 0.002383 +0x3b1c33c5 +// 0.254155 +0x3e82209c +// 0.189442 +0x3e41fd25 +// 0.109045 +0x3ddf5329 +// 0.080492 +0x3da4d909 +// 0.122848 +0x3dfb97c2 +// 0.324075 +0x3ea5ed27 +// 0.043155 +0x3d30c352 +// 0.200354 +0x3e4d29a6 +// 0.177219 +0x3e3578f4 +// 0.122803 +0x3dfb8003 +// 0.389540 +0x3ec771c0 +// 0.104105 +0x3dd53524 +// 0.089077 +0x3db66de5 +// 0.086445 +0x3db109db +// 0.102434 +0x3dd1c8b0 +// 0.019177 +0x3c9d1952 +// 0.060225 +0x3d76adfe +// 0.130973 +0x3e061dbf +// 0.260983 +0x3e859f8f +// 0.050156 +0x3d4d708b +// 0.001102 +0x3a907ae4 +// 0.017805 +0x3c91dc22 +// 0.023307 +0x3cbeede0 +// 0.170652 +0x3e2ebf79 +// 0.116311 +0x3dee3497 +// 0.210712 +0x3e57c4fe +// 0.057673 +0x3d6c3a5e +// 0.076677 +0x3d9d08cd +// 0.067945 +0x3d8b26ee +// 0.041755 +0x3d2b06dd +// 0.013859 +0x3c6311c8 +// 0.246720 +0x3e7ca443 +// 0.117659 +0x3df0f71d +// 0.298730 +0x3e98f319 +// 0.301883 +0x3e9a9067 +// 0.686543 +0x3f2fc14e +// 0.313398 +0x3ea075ac +// 0.049245 +0x3d49b54b +// 0.550993 +0x3f0d0ddc +// 0.534906 +0x3f08ef93 +// 0.629563 +0x3f212b10 +// 0.097014 +0x3dc6af54 +// 0.497477 +0x3efeb54b +// 0.291382 +0x3e952ffb +// 0.084888 +0x3dadd9ec +// 0.124689 +0x3dff5cf4 +// 0.239973 +0x3e75bb91 +// 0.182795 +0x3e3b2e7e +// 0.245163 +0x3e7b0c0b +// 0.107215 +0x3ddb937e +// 0.217329 +0x3e5e8b8c +// 0.004598 +0x3b96abfe +// 0.017227 +0x3c8d1f33 +// 0.547903 +0x3f0c4357 +// 0.428794 +0x3edb8ad9 +// 0.510240 +0x3f029f1b +// 0.401470 +0x3ecd8d7b +// 0.032675 +0x3d05d5cf +// 0.325416 +0x3ea69ce9 +// 0.404769 +0x3ecf3ddd +// 0.470748 +0x3ef105e6 +// 0.316641 +0x3ea21eca +// 0.745342 +0x3f3eceb4 +// 0.163246 +0x3e2729fb +// 0.278431 +0x3e8e8e90 +// 0.253989 +0x3e820ad6 +// 0.417236 +0x3ed59ff8 +// 0.251356 +0x3e80b1b4 +// 0.392844 +0x3ec922cc +// 0.544106 +0x3f0b4a88 +// 0.147184 +0x3e16b751 +// 0.319881 +0x3ea3c765 +// 0.231598 +0x3e6d2804 +// 0.777181 +0x3f46f54f +// 0.161233 +0x3e251a34 +// 0.155607 +0x3e1f577c +// 0.924147 +0x3f6c94e5 +// 0.385088 +0x3ec52a47 +// 0.033581 +0x3d098ca1 +// 0.294561 +0x3e96d0b8 +// 0.045084 +0x3d38aa49 +// 0.210269 +0x3e5750b1 +// 0.053712 +0x3d5c0193 +// 0.076842 +0x3d9d5f3b +// 0.227110 +0x3e688f98 +// 0.062100 +0x3d7e5c36 +// 0.109193 +0x3ddfa0b4 +// 0.042064 +0x3d2c4adf +// 0.084717 +0x3dad7feb +// 0.027630 +0x3ce25942 +// 0.286934 +0x3e92e914 +// 0.028555 +0x3ce9ecae +// 0.153983 +0x3e1dad9f +// 0.025493 +0x3cd0d79f +// 0.223585 +0x3e64f38f +// 0.130174 +0x3e054c47 +// 0.339004 +0x3ead91e7 +// 0.001298 +0x3aaa13af +// 0.262869 +0x3e8696cf +// 0.563629 +0x3f1049f7 +// 0.563654 +0x3f104b9d +// 0.127514 +0x3e0292fd +// 0.065531 +0x3d86352c +// 0.051843 +0x3d54598f +// 0.191826 +0x3e446e1a +// 0.454992 +0x3ee8f4c5 +// 0.150740 +0x3e1a5bb3 +// 0.045715 +0x3d3b4006 +// 0.607190 +0x3f1b70d0 +// 0.434084 +0x3ede403c +// 0.043814 +0x3d337654 +// 0.299019 +0x3e9918f7 +// 0.055091 +0x3d61a78a +// 0.313535 +0x3ea087b4 +// 0.395133 +0x3eca4ed5 +// 0.619807 +0x3f1eabb4 +// 0.102302 +0x3dd183bc +// 0.161639 +0x3e2584ab +// 0.030176 +0x3cf733ca +// 0.532647 +0x3f085b8f +// 0.379555 +0x3ec25507 +// 0.343633 +0x3eaff0b9 +// 0.079633 +0x3da31690 +// 0.258521 +0x3e845cd7 +// 0.186018 +0x3e3e7b75 +// 0.028456 +0x3ce91c55 +// 0.045829 +0x3d3bb756 +// 0.077438 +0x3d9e97d2 +// 0.049438 +0x3d4a7f34 +// 0.381138 +0x3ec32479 +// 0.265208 +0x3e87c967 +// 0.356873 +0x3eb6b80b +// 0.175746 +0x3e33f6a2 +// 0.065850 +0x3d86dc91 +// 0.594799 +0x3f1844c3 +// 0.424294 +0x3ed93d01 +// 0.238943 +0x3e74ad72 +// 0.003239 +0x3b5447e0 +// 0.021483 +0x3caffdf2 +// 0.577666 +0x3f13e1f2 +// 0.165227 +0x3e29313e +// 0.118271 +0x3df2384c +// 0.556532 +0x3f0e78e1 +// 0.223679 +0x3e650c30 +// 0.021074 +0x3caca2e2 +// 0.246734 +0x3e7ca7da +// 0.380044 +0x3ec29515 +// 0.664304 +0x3f2a0fd0 +// 0.129911 +0x3e05074f +// 0.301119 +0x3e9a2c53 +// 0.483937 +0x3ef7c69e +// 0.036230 +0x3d146630 +// 0.093577 +0x3dbfa535 +// 0.043926 +0x3d33eba2 +// 0.151670 +0x3e1b4f7a +// 0.034815 +0x3d0e9a67 +// 0.091731 +0x3dbbdd74 +// 0.225491 +0x3e66e6fd +// 0.191163 +0x3e43c02f +// 0.246111 +0x3e7c0472 +// 0.194258 +0x3e46eb7e +// 0.154743 +0x3e1e74e9 +// 0.280341 +0x3e8f88d4 +// 0.064338 +0x3d83c38a +// 0.270280 +0x3e8a6223 +// 0.030148 +0x3cf6f9e5 +// 0.357952 +0x3eb74580 +// 0.033880 +0x3d0ac56f +// 0.598562 +0x3f193b5c +// 0.241424 +0x3e7737f0 +// 0.181553 +0x3e39e917 +// 0.164368 +0x3e285014 +// 0.228636 +0x3e6a1fa9 +// 0.538142 +0x3f09c3aa +// 0.188367 +0x3e40e343 +// 0.262643 +0x3e86792c +// 0.297382 +0x3e984265 +// 0.229695 +0x3e6b3533 +// 0.022966 +0x3cbc2393 +// 0.665708 +0x3f2a6bd6 +// 0.162405 +0x3e264d73 diff --git a/Testing/Patterns/DSP/Transform/TransformQ15/ComplexSamples1_q15.txt b/Testing/Patterns/DSP/Transform/TransformQ15/ComplexSamples1_q15.txt new file mode 100755 index 00000000..87ea64bd --- /dev/null +++ b/Testing/Patterns/DSP/Transform/TransformQ15/ComplexSamples1_q15.txt @@ -0,0 +1,1026 @@ +H +512 +// -0.238229 +0xE182 +// 0.292645 +0x2575 +// -0.341377 +0xD44E +// -0.121991 +0xF063 +// -0.363911 +0xD16B +// -0.170407 +0xEA30 +// -0.058714 +0xF87C +// 0.303004 +0x26C9 +// 0.226174 +0x1CF3 +// -0.557866 +0xB898 +// -0.626635 +0xAFCA +// -0.233217 +0xE226 +// -0.800287 +0x9990 +// -0.005618 +0xFF48 +// -0.179370 +0xE90A +// 0.315267 +0x285B +// 0.372661 +0x2FB3 +// 0.157100 +0x141C +// 0.228078 +0x1D32 +// 0.594203 +0x4C0F +// -0.045906 +0xFA20 +// 0.232349 +0x1DBE +// -0.076927 +0xF627 +// -0.110099 +0xF1E8 +// 0.298793 +0x263F +// -0.041361 +0xFAB5 +// -0.083051 +0xF55F +// 0.262431 +0x2197 +// 0.600690 +0x4CE3 +// -0.206535 +0xE590 +// 0.442020 +0x3894 +// -0.243608 +0xE0D1 +// -0.492300 +0xC0FC +// 0.383943 +0x3125 +// -0.090050 +0xF479 +// 0.093973 +0x0C07 +// 0.571980 +0x4937 +// -0.026992 +0xFC8C +// 0.014850 +0x01E7 +// 0.623639 +0x4FD3 +// 0.282556 +0x242B +// -0.034488 +0xFB96 +// -0.015219 +0xFE0D +// 0.015010 +0x01EC +// -0.222425 +0xE388 +// -0.404918 +0xCC2C +// 0.086859 +0x0B1E +// -0.032999 +0xFBC7 +// 0.620184 +0x4F62 +// -0.191006 +0xE78D +// -0.176457 +0xE96A +// 0.124238 +0x0FE7 +// -0.096425 +0xF3A8 +// -0.722743 +0xA37D +// -0.262542 +0xDE65 +// -0.165214 +0xEADA +// 0.937805 +0x780A +// 0.269690 +0x2285 +// -0.129967 +0xEF5D +// 0.399353 +0x331E +// -0.051282 +0xF970 +// -0.239980 +0xE148 +// -0.168415 +0xEA71 +// -0.522775 +0xBD16 +// -0.319206 +0xD724 +// -0.267855 +0xDDB7 +// -0.318644 +0xD737 +// 0.032351 +0x0424 +// -0.317248 +0xD764 +// -0.543255 +0xBA77 +// 0.012264 +0x0192 +// -0.193276 +0xE743 +// -0.697056 +0xA6C7 +// 0.373498 +0x2FCF +// -0.559019 +0xB872 +// -0.436149 +0xC82C +// -0.064162 +0xF7CA +// 0.164978 +0x151E +// 0.077254 +0x09E3 +// -0.468634 +0xC404 +// 0.052578 +0x06BB +// -0.117866 +0xF0EA +// -0.430028 +0xC8F5 +// -0.610221 +0xB1E4 +// 0.033591 +0x044D +// -0.198964 +0xE688 +// -0.435324 +0xC847 +// 0.480720 +0x3D88 +// 0.173465 +0x1634 +// -0.029657 +0xFC34 +// 0.032975 +0x0439 +// -0.833274 +0x9557 +// -0.453524 +0xC5F3 +// -0.522784 +0xBD15 +// 0.268371 +0x225A +// 0.145099 +0x1293 +// 0.653298 +0x539F +// 0.347291 +0x2C74 +// -0.678561 +0xA925 +// 0.386554 +0x317B +// -0.140069 +0xEE12 +// -0.235308 +0xE1E1 +// 0.266834 +0x2228 +// 0.010247 +0x0150 +// 0.593832 +0x4C03 +// -0.667511 +0xAA8F +// 0.127792 +0x105B +// 0.389802 +0x31E5 +// 0.109867 +0x0E10 +// 0.443806 +0x38CF +// -0.481525 +0xC25D +// 0.058237 +0x0774 +// 0.492266 +0x3F03 +// 0.702203 +0x59E2 +// -0.177833 +0xE93D +// 0.591468 +0x4BB5 +// -0.036406 +0xFB57 +// -0.074518 +0xF676 +// 0.540547 +0x4531 +// 0.376452 +0x3030 +// -0.097764 +0xF37C +// -0.373269 +0xD039 +// -0.049086 +0xF9B8 +// -0.533458 +0xBBB8 +// -0.215057 +0xE479 +// -0.387948 +0xCE58 +// -0.562261 +0xB808 +// 0.194431 +0x18E3 +// -0.466952 +0xC43B +// -0.138802 +0xEE3C +// -0.025291 +0xFCC3 +// 0.457174 +0x3A85 +// -0.804510 +0x9906 +// -0.326850 +0xD62A +// -0.000548 +0xFFEE +// -0.318898 +0xD72E +// -0.619465 +0xB0B5 +// 0.162674 +0x14D3 +// -0.138146 +0xEE51 +// 0.388896 +0x31C7 +// 0.716285 +0x5BAF +// 0.264428 +0x21D9 +// 0.167099 +0x1564 +// 0.151754 +0x136D +// -0.823688 +0x9691 +// 0.080513 +0x0A4E +// 0.590706 +0x4B9C +// 0.418917 +0x359F +// -0.174857 +0xE99E +// 0.902222 +0x737C +// 0.170252 +0x15CB +// -0.096471 +0xF3A7 +// -0.308852 +0xD878 +// -0.145925 +0xED52 +// -0.268840 +0xDD97 +// 0.417988 +0x3581 +// 0.228324 +0x1D3A +// -0.348851 +0xD359 +// 0.701272 +0x59C3 +// 0.141191 +0x1213 +// 0.569598 +0x48E9 +// 0.076300 +0x09C4 +// -0.035604 +0xFB71 +// -0.018357 +0xFDA6 +// 0.136485 +0x1178 +// 0.598588 +0x4C9F +// -0.333636 +0xD54B +// -0.479544 +0xC29E +// -0.299995 +0xD99A +// 0.156448 +0x1406 +// -0.036054 +0xFB63 +// -0.286693 +0xDB4E +// -0.516193 +0xBDED +// -0.300177 +0xD994 +// -0.446153 +0xC6E4 +// -0.304211 +0xD910 +// 0.102859 +0x0D2A +// -0.217355 +0xE42E +// -0.713188 +0xA4B6 +// -0.514788 +0xBE1B +// 0.341161 +0x2BAB +// -0.422480 +0xC9EC +// -0.809970 +0x9853 +// 0.285981 +0x249B +// 0.045484 +0x05D2 +// -0.114252 +0xF160 +// 0.248133 +0x1FC3 +// -0.121961 +0xF064 +// 0.487606 +0x3E6A +// -0.578249 +0xB5FC +// 0.322488 +0x2947 +// 0.221514 +0x1C5B +// 0.030012 +0x03D7 +// -0.117945 +0xF0E7 +// -0.034231 +0xFB9E +// -0.209230 +0xE538 +// -0.375310 +0xCFF6 +// -0.087075 +0xF4DB +// 0.125229 +0x1007 +// 0.285672 +0x2491 +// 0.092161 +0x0BCC +// 0.094934 +0x0C27 +// 0.309181 +0x2793 +// -0.050972 +0xF97A +// 0.179563 +0x16FC +// 0.228056 +0x1D31 +// -0.026370 +0xFCA0 +// -0.189963 +0xE7AF +// -0.297147 +0xD9F7 +// 0.556747 +0x4743 +// -0.182995 +0xE894 +// 0.028398 +0x03A3 +// -0.411594 +0xCB51 +// 0.055854 +0x0726 +// 0.278749 +0x23AE +// -0.482639 +0xC239 +// 0.110966 +0x0E34 +// -0.213163 +0xE4B7 +// 0.471430 +0x3C58 +// 0.503576 +0x4075 +// 0.753765 +0x607B +// -0.123856 +0xF025 +// -0.491229 +0xC11F +// -0.083994 +0xF540 +// 0.294674 +0x25B8 +// -0.308131 +0xD88F +// 0.593793 +0x4C01 +// 0.598067 +0x4C8D +// -0.604735 +0xB298 +// 0.201429 +0x19C8 +// -0.863773 +0x9170 +// 0.343432 +0x2BF6 +// -0.015742 +0xFDFC +// -0.014330 +0xFE2A +// -0.246877 +0xE066 +// 0.278499 +0x23A6 +// -0.611811 +0xB1B0 +// -0.268200 +0xDDAC +// 0.566618 +0x4887 +// 0.167570 +0x1573 +// -0.247568 +0xE050 +// -0.055894 +0xF8D8 +// 0.009575 +0x013A +// -0.108263 +0xF224 +// 0.441787 +0x388C +// -0.081419 +0xF594 +// 0.232391 +0x1DBF +// -0.242654 +0xE0F1 +// -0.315063 +0xD7AC +// -0.082786 +0xF567 +// 0.552269 +0x46B1 +// -0.148502 +0xECFE +// -0.059536 +0xF861 +// 0.332695 +0x2A96 +// 0.059288 +0x0797 +// -0.018332 +0xFDA7 +// 0.292752 +0x2579 +// -0.034740 +0xFB8E +// 0.285545 +0x248D +// 0.395687 +0x32A6 +// 0.379319 +0x308E +// -0.307853 +0xD898 +// 0.401165 +0x3359 +// -0.335323 +0xD514 +// 0.214098 +0x1B68 +// -0.734955 +0xA1ED +// -0.071335 +0xF6DE +// -0.363690 +0xD173 +// 0.059053 +0x078F +// -0.170033 +0xEA3C +// 0.047783 +0x061E +// -0.145437 +0xED62 +// -0.421933 +0xC9FE +// -0.066811 +0xF773 +// -0.093366 +0xF40D +// 0.439421 +0x383F +// -0.353578 +0xD2BE +// 0.292867 +0x257D +// 0.215074 +0x1B88 +// -0.066977 +0xF76D +// 0.324765 +0x2992 +// 0.240254 +0x1EC1 +// -0.253478 +0xDF8E +// -0.117125 +0xF102 +// 0.093321 +0x0BF2 +// -0.424351 +0xC9AF +// -0.248835 +0xE026 +// -0.355941 +0xD271 +// -0.837191 +0x94D7 +// 0.426270 +0x3690 +// -0.483552 +0xC21B +// -0.264332 +0xDE2A +// -0.212950 +0xE4BE +// -0.140155 +0xEE0F +// -0.655565 +0xAC16 +// 0.174499 +0x1656 +// -0.193838 +0xE730 +// 0.867761 +0x6F13 +// -0.136336 +0xEE8D +// -0.386214 +0xCE91 +// -0.291285 +0xDAB7 +// -0.899515 +0x8CDD +// -0.821531 +0x96D8 +// 0.729525 +0x5D61 +// -0.510900 +0xBE9B +// 0.154726 +0x13CE +// -0.106099 +0xF26B +// -0.102691 +0xF2DB +// -0.153567 +0xEC58 +// 0.174537 +0x1657 +// -0.073167 +0xF6A2 +// 0.079109 +0x0A20 +// 0.835596 +0x6AF5 +// 0.484036 +0x3DF5 +// 0.367500 +0x2F0A +// -0.335772 +0xD505 +// -0.003446 +0xFF8F +// 0.091069 +0x0BA8 +// 0.068476 +0x08C4 +// 0.496946 +0x3F9C +// 0.090119 +0x0B89 +// -0.370751 +0xD08B +// -0.240333 +0xE13D +// -0.147851 +0xED13 +// 0.373393 +0x2FCB +// 0.188378 +0x181D +// 0.289210 +0x2505 +// 0.867558 +0x6F0C +// -0.106967 +0xF24F +// 0.642399 +0x523A +// 0.301279 +0x2690 +// 0.528636 +0x43AA +// -0.249209 +0xE01A +// -0.354133 +0xD2AC +// -0.052402 +0xF94B +// -0.031896 +0xFBEB +// -0.126183 +0xEFD9 +// -0.170500 +0xEA2D +// 0.293880 +0x259E +// 0.214057 +0x1B66 +// 0.030870 +0x03F4 +// -0.153679 +0xEC54 +// 0.276626 +0x2368 +// 0.101981 +0x0D0E +// 0.188634 +0x1825 +// 0.655502 +0x53E7 +// 0.195651 +0x190B +// 0.175444 +0x1675 +// 0.170187 +0x15C9 +// 0.860016 +0x6E15 +// -0.270112 +0xDD6D +// -0.231896 +0xE251 +// -0.061547 +0xF81F +// 0.751733 +0x6039 +// -0.424611 +0xC9A6 +// 0.595874 +0x4C46 +// -0.180821 +0xE8DB +// -0.339009 +0xD49B +// -0.595833 +0xB3BC +// -0.015107 +0xFE11 +// 0.215603 +0x1B99 +// -0.072489 +0xF6B9 +// 0.342938 +0x2BE5 +// -0.250442 +0xDFF2 +// -0.717406 +0xA42C +// -0.286031 +0xDB63 +// 0.101113 +0x0CF1 +// 0.485093 +0x3E18 +// 0.318648 +0x28C9 +// -0.535935 +0xBB66 +// -0.052379 +0xF94C +// -0.521031 +0xBD4F +// -0.378620 +0xCF89 +// -0.385961 +0xCE99 +// 0.111604 +0x0E49 +// 0.179696 +0x1700 +// 0.111068 +0x0E37 +// 0.082349 +0x0A8A +// 0.604758 +0x4D69 +// -0.126742 +0xEFC7 +// -0.406307 +0xCBFE +// -0.022094 +0xFD2C +// -0.001953 +0xFFC0 +// 0.323333 +0x2963 +// 1.000000 +0x7FFF +// 0.406718 +0x340F +// 0.152267 +0x137D +// 0.095229 +0x0C30 +// -0.061488 +0xF821 +// 0.197077 +0x193A +// 0.402631 +0x3389 +// 0.379813 +0x309E +// -0.439240 +0xC7C7 +// 0.652877 +0x5391 +// 0.473420 +0x3C99 +// 0.466186 +0x3BAC +// -0.313240 +0xD7E8 +// 0.525343 +0x433E +// -0.262803 +0xDE5C +// 0.168075 +0x1583 +// 0.221648 +0x1C5F +// 0.136861 +0x1185 +// -0.027241 +0xFC83 +// 0.530016 +0x43D8 +// -0.029542 +0xFC38 +// -0.042382 +0xFA93 +// 0.054664 +0x06FF +// 0.168089 +0x1584 +// -0.080134 +0xF5BE +// -0.039695 +0xFAEB +// -0.023422 +0xFD01 +// 0.073040 +0x0959 +// 0.102046 +0x0D10 +// 0.430383 +0x3717 +// -0.265205 +0xDE0E +// -0.319157 +0xD726 +// 0.354755 +0x2D69 +// 0.794328 +0x65AD +// 0.014250 +0x01D3 +// 0.275363 +0x233F +// 0.528452 +0x43A4 +// 0.695141 +0x58FA +// 0.311723 +0x27E7 +// -0.586209 +0xB4F7 +// 0.490044 +0x3EBA +// -0.679290 +0xA90D +// -0.687677 +0xA7FA +// -0.189262 +0xE7C6 +// 0.012357 +0x0195 +// -0.013981 +0xFE36 +// 0.230809 +0x1D8B +// 0.054324 +0x06F4 +// -0.141889 +0xEDD7 +// -0.470655 +0xC3C2 +// 0.326232 +0x29C2 +// 0.261878 +0x2185 +// 0.182292 +0x1755 +// 0.335592 +0x2AF5 +// -0.295909 +0xDA20 +// -0.384609 +0xCEC5 +// 0.035586 +0x048E +// 0.097539 +0x0C7C +// 0.967125 +0x7BCB +// 0.147955 +0x12F0 +// -0.787831 +0x9B28 +// 0.182381 +0x1758 +// -0.279878 +0xDC2D +// 0.136325 +0x1173 +// -0.543901 +0xBA61 +// 0.262097 +0x218C +// 0.055245 +0x0712 +// -0.510078 +0xBEB6 +// -0.427621 +0xC944 +// 0.471279 +0x3C53 +// -0.365824 +0xD12D +// 0.303027 +0x26CA +// -0.323298 +0xD69E +// 0.665281 +0x5528 +// 0.296697 +0x25FA +// 0.389045 +0x31CC +// 0.131510 +0x10D5 +// -0.330783 +0xD5A9 +// -0.342779 +0xD420 +// 0.491765 +0x3EF2 +// -0.408533 +0xCBB5 +// -0.196635 +0xE6D5 +// 0.444296 +0x38DF +// -0.178292 +0xE92E +// -0.123772 +0xF028 +// -0.327005 +0xD625 +// 0.148272 +0x12FB +// -0.087289 +0xF4D4 +// 0.280433 +0x23E5 +// 0.090710 +0x0B9C +// -0.386568 +0xCE85 +// -0.090486 +0xF46B +// -0.585481 +0xB50F +// -0.422208 +0xC9F5 +// 0.107632 +0x0DC7 +// 0.219874 +0x1C25 +// 0.011592 +0x017C +// 0.107385 +0x0DBF +// -0.147720 +0xED18 +// -0.179279 +0xE90D +// -0.180676 +0xE8E0 +// 0.494396 +0x3F48 +// 0.435868 +0x37CB +// 0.401451 +0x3363 +// -0.347373 +0xD389 +// -0.088508 +0xF4AC +// -0.259094 +0xDED6 +// 0.160111 +0x147F +// -0.316327 +0xD783 +// 0.912205 +0x74C3 +// 0.657574 +0x542B +// 0.083924 +0x0ABE +// 0.278427 +0x23A4 +// -0.438644 +0xC7DB +// -0.218508 +0xE408 +// 0.715937 +0x5BA4 +// -0.620225 +0xB09C +// 0.371858 +0x2F99 +// -0.064531 +0xF7BD +// -0.324467 +0xD678 +// -0.152450 +0xEC7D +// -0.278907 +0xDC4D +// 0.168120 +0x1585 +// -0.451154 +0xC641 +// -0.195956 +0xE6EB +// -0.723911 +0xA357 +// -0.189789 +0xE7B5 +// 0.168011 +0x1581 diff --git a/Testing/Patterns/DSP/Transform/TransformQ15/RealSamples1_q15.txt b/Testing/Patterns/DSP/Transform/TransformQ15/RealSamples1_q15.txt new file mode 100755 index 00000000..e6754e61 --- /dev/null +++ b/Testing/Patterns/DSP/Transform/TransformQ15/RealSamples1_q15.txt @@ -0,0 +1,4098 @@ +H +2048 +// 0.287714 +0x24D4 +// 0.007913 +0x0103 +// 0.322204 +0x293E +// 0.129485 +0x1093 +// 0.347438 +0x2C79 +// 0.349399 +0x2CB9 +// 0.280799 +0x23F1 +// 0.047370 +0x0610 +// 0.035920 +0x0499 +// 0.678173 +0x56CE +// 0.025420 +0x0341 +// 0.484866 +0x3E10 +// 0.257339 +0x20F0 +// 0.241371 +0x1EE5 +// 0.343999 +0x2C08 +// 0.173886 +0x1642 +// 0.291518 +0x2550 +// 0.134205 +0x112E +// 0.497337 +0x3FA9 +// 0.013490 +0x01BA +// 0.278736 +0x23AE +// 0.039834 +0x0519 +// 0.006586 +0x00D8 +// 0.065873 +0x086F +// 0.275923 +0x2351 +// 0.168755 +0x159A +// 0.007057 +0x00E7 +// 0.622525 +0x4FAF +// 0.050369 +0x0672 +// 0.782842 +0x6434 +// 0.155613 +0x13EB +// 0.195756 +0x190F +// 0.288166 +0x24E3 +// 0.048515 +0x0636 +// 0.373683 +0x2FD5 +// 0.164394 +0x150B +// 0.171832 +0x15FF +// 0.657980 +0x5439 +// 0.106965 +0x0DB1 +// 0.300207 +0x266D +// 0.098966 +0x0CAB +// 0.520920 +0x42AD +// 0.243174 +0x1F20 +// 0.221773 +0x1C63 +// 0.105076 +0x0D73 +// 0.281472 +0x2407 +// 0.200488 +0x19AA +// 0.252033 +0x2043 +// 0.091682 +0x0BBC +// 0.264667 +0x21E1 +// 0.461585 +0x3B15 +// 0.315910 +0x2870 +// 0.154865 +0x13D3 +// 0.209279 +0x1ACA +// 0.016072 +0x020F +// 0.516260 +0x4215 +// 0.424527 +0x3657 +// 0.113224 +0x0E7E +// 0.105801 +0x0D8B +// 0.064489 +0x0841 +// 0.370941 +0x2F7B +// 0.209893 +0x1ADE +// 0.137372 +0x1195 +// 0.300806 +0x2681 +// 0.141120 +0x1210 +// 0.401933 +0x3373 +// 0.551735 +0x469F +// 0.496608 +0x3F91 +// 0.154353 +0x13C2 +// 0.173565 +0x1637 +// 0.376959 +0x3040 +// 0.129796 +0x109D +// 0.143072 +0x1250 +// 0.484158 +0x3DF9 +// 0.027634 +0x0389 +// 0.094293 +0x0C12 +// 0.469579 +0x3C1B +// 0.296247 +0x25EB +// 0.009267 +0x0130 +// 0.063386 +0x081D +// 0.022761 +0x02EA +// 0.066417 +0x0880 +// 0.107906 +0x0DD0 +// 0.323699 +0x296F +// 0.268111 +0x2251 +// 0.469159 +0x3C0D +// 0.131569 +0x10D7 +// 0.525917 +0x4351 +// 0.352209 +0x2D15 +// 0.482427 +0x3DC0 +// 0.582771 +0x4A98 +// 0.008314 +0x0110 +// 0.425968 +0x3686 +// 0.175042 +0x1668 +// 0.185586 +0x17C1 +// 0.221744 +0x1C62 +// 0.506105 +0x40C8 +// 0.303107 +0x26CC +// 0.281815 +0x2412 +// 0.077270 +0x09E4 +// 0.048262 +0x062D +// 0.179252 +0x16F2 +// 0.085540 +0x0AF3 +// 0.419980 +0x35C2 +// 0.668304 +0x558B +// 0.202121 +0x19DF +// 0.110002 +0x0E15 +// 0.697166 +0x593D +// 0.382599 +0x30F9 +// 0.032577 +0x042B +// 0.293045 +0x2583 +// 0.276962 +0x2373 +// 0.079904 +0x0A3A +// 0.006309 +0x00CF +// 0.483353 +0x3DDF +// 0.266174 +0x2212 +// 0.409246 +0x3462 +// 0.175751 +0x167F +// 0.003220 +0x006A +// 0.196830 +0x1932 +// 0.159196 +0x1461 +// 0.016616 +0x0220 +// 0.045205 +0x05C9 +// 0.324366 +0x2985 +// 0.137069 +0x118B +// 0.144197 +0x1275 +// 0.421321 +0x35EE +// 0.390898 +0x3209 +// 0.578801 +0x4A16 +// 0.254154 +0x2088 +// 0.030111 +0x03DB +// 0.290919 +0x253D +// 0.447886 +0x3954 +// 0.508415 +0x4114 +// 0.098349 +0x0C97 +// 0.528394 +0x43A2 +// 0.332647 +0x2A94 +// 0.050898 +0x0684 +// 0.477775 +0x3D28 +// 0.136791 +0x1182 +// 0.167144 +0x1565 +// 0.178110 +0x16CC +// 0.021428 +0x02BE +// 0.301623 +0x269C +// 0.288551 +0x24EF +// 0.087814 +0x0B3E +// 0.029395 +0x03C3 +// 0.201934 +0x19D9 +// 0.346830 +0x2C65 +// 0.263628 +0x21BF +// 0.402190 +0x337B +// 0.317215 +0x289A +// 0.358772 +0x2DEC +// 0.331324 +0x2A69 +// 0.556228 +0x4732 +// 0.143219 +0x1255 +// 0.055217 +0x0711 +// 0.078635 +0x0A11 +// 0.236167 +0x1E3B +// 0.285834 +0x2496 +// 0.308568 +0x277F +// 0.190406 +0x185F +// 0.031411 +0x0405 +// 0.280921 +0x23F5 +// 0.266834 +0x2228 +// 0.334433 +0x2ACF +// 0.156596 +0x140B +// 0.332842 +0x2A9B +// 0.180452 +0x1719 +// 0.026321 +0x035F +// 0.387209 +0x3190 +// 0.448108 +0x395C +// 0.000556 +0x0012 +// 0.004149 +0x0088 +// 0.270145 +0x2294 +// 0.101142 +0x0CF2 +// 0.006351 +0x00D0 +// 0.431962 +0x374B +// 0.050077 +0x0669 +// 0.245661 +0x1F72 +// 0.140572 +0x11FE +// 0.571283 +0x4920 +// 0.394822 +0x328A +// 0.924202 +0x764C +// 0.624442 +0x4FEE +// 0.037470 +0x04CC +// 0.013688 +0x01C1 +// 0.500598 +0x4014 +// 0.029817 +0x03D1 +// 0.727290 +0x5D18 +// 0.175032 +0x1667 +// 0.049848 +0x0661 +// 0.208137 +0x1AA4 +// 0.515652 +0x4201 +// 0.183194 +0x1773 +// 0.789361 +0x650A +// 0.507411 +0x40F3 +// 0.194108 +0x18D9 +// 0.408922 +0x3458 +// 0.283182 +0x243F +// 0.031411 +0x0405 +// 0.089912 +0x0B82 +// 0.015248 +0x01F4 +// 0.116382 +0x0EE6 +// 0.466339 +0x3BB1 +// 0.328934 +0x2A1B +// 0.274675 +0x2329 +// 0.011820 +0x0183 +// 0.164987 +0x151E +// 0.515960 +0x420B +// 0.375952 +0x301F +// 0.128144 +0x1067 +// 0.345599 +0x2C3D +// 0.334841 +0x2ADC +// 0.089920 +0x0B82 +// 0.167359 +0x156C +// 0.331933 +0x2A7D +// 0.412023 +0x34BD +// 0.247197 +0x1FA4 +// 0.140640 +0x1200 +// 0.494008 +0x3F3C +// 0.093491 +0x0BF8 +// 0.947698 +0x794E +// 0.207183 +0x1A85 +// 0.343188 +0x2BEE +// 0.416767 +0x3559 +// 0.559599 +0x47A1 +// 0.046079 +0x05E6 +// 0.464336 +0x3B6F +// 0.592106 +0x4BCA +// 0.263646 +0x21BF +// 0.597355 +0x4C76 +// 0.291587 +0x2553 +// 0.349115 +0x2CB0 +// 0.291189 +0x2546 +// 0.196364 +0x1922 +// 0.445709 +0x390D +// 0.281133 +0x23FC +// 0.155492 +0x13E7 +// 0.159049 +0x145C +// 0.187906 +0x180D +// 0.244323 +0x1F46 +// 0.019190 +0x0275 +// 0.063603 +0x0824 +// 0.587278 +0x4B2C +// 0.364547 +0x2EA9 +// 0.249655 +0x1FF5 +// 0.636383 +0x5175 +// 0.070468 +0x0905 +// 0.381436 +0x30D3 +// 0.167516 +0x1571 +// 0.138512 +0x11BB +// 0.219989 +0x1C29 +// 0.558623 +0x4781 +// 0.148630 +0x1306 +// 0.878441 +0x7071 +// 0.479414 +0x3D5D +// 0.521549 +0x42C2 +// 0.640432 +0x51FA +// 0.120261 +0x0F65 +// 0.301768 +0x26A0 +// 0.063657 +0x0826 +// 0.117560 +0x0F0C +// 0.303045 +0x26CA +// 0.107017 +0x0DB3 +// 0.198385 +0x1965 +// 0.245173 +0x1F62 +// 0.232562 +0x1DC5 +// 0.362890 +0x2E73 +// 0.228111 +0x1D33 +// 0.106748 +0x0DAA +// 0.043454 +0x0590 +// 0.463118 +0x3B47 +// 0.012720 +0x01A1 +// 0.286661 +0x24B1 +// 0.054979 +0x070A +// 0.568699 +0x48CB +// 0.298266 +0x262E +// 0.441649 +0x3888 +// 0.153202 +0x139C +// 0.329335 +0x2A28 +// 0.163288 +0x14E7 +// 0.556974 +0x474B +// 0.230893 +0x1D8E +// 0.013268 +0x01B3 +// 0.327280 +0x29E4 +// 0.337650 +0x2B38 +// 0.220464 +0x1C38 +// 0.250206 +0x2007 +// 0.068137 +0x08B9 +// 0.256026 +0x20C5 +// 0.061795 +0x07E9 +// 0.116933 +0x0EF8 +// 0.094311 +0x0C12 +// 0.435996 +0x37CF +// 0.248657 +0x1FD4 +// 0.107230 +0x0DBA +// 0.166651 +0x1555 +// 0.116913 +0x0EF7 +// 0.623608 +0x4FD2 +// 0.254889 +0x20A0 +// 0.281923 +0x2416 +// 0.234101 +0x1DF7 +// 0.483989 +0x3DF3 +// 0.076523 +0x09CB +// 0.340102 +0x2B88 +// 0.128384 +0x106F +// 0.235047 +0x1E16 +// 0.116726 +0x0EF1 +// 0.218492 +0x1BF8 +// 0.383840 +0x3122 +// 0.553346 +0x46D4 +// 0.254973 +0x20A3 +// 0.273534 +0x2303 +// 0.251416 +0x202E +// 0.953125 +0x7A00 +// 0.609985 +0x4E14 +// 0.195444 +0x1904 +// 0.958402 +0x7AAD +// 0.315266 +0x285B +// 0.583926 +0x4ABE +// 0.361232 +0x2E3D +// 0.379198 +0x308A +// 0.681627 +0x5740 +// 0.841104 +0x6BA9 +// 0.012322 +0x0194 +// 0.398433 +0x3300 +// 0.236290 +0x1E3F +// 0.204595 +0x1A30 +// 0.186289 +0x17D8 +// 0.141407 +0x121A +// 0.156331 +0x1403 +// 0.248976 +0x1FDE +// 0.523581 +0x4305 +// 0.406251 +0x3400 +// 0.344725 +0x2C20 +// 0.235454 +0x1E23 +// 0.261381 +0x2175 +// 0.005038 +0x00A5 +// 0.424244 +0x364E +// 0.276407 +0x2361 +// 0.171672 +0x15F9 +// 0.407460 +0x3428 +// 0.366500 +0x2EE9 +// 0.174286 +0x164F +// 0.063430 +0x081E +// 0.063591 +0x0824 +// 0.079623 +0x0A31 +// 0.741947 +0x5EF8 +// 0.146981 +0x12D0 +// 0.148384 +0x12FE +// 0.404491 +0x33C6 +// 0.002672 +0x0058 +// 0.587398 +0x4B30 +// 0.275980 +0x2353 +// 0.014639 +0x01E0 +// 0.818795 +0x68CE +// 0.455624 +0x3A52 +// 0.104218 +0x0D57 +// 0.296889 +0x2600 +// 0.508505 +0x4117 +// 0.225340 +0x1CD8 +// 0.279498 +0x23C7 +// 0.772551 +0x62E3 +// 0.458197 +0x3AA6 +// 0.360001 +0x2E14 +// 0.140587 +0x11FF +// 0.261724 +0x2180 +// 0.276209 +0x235B +// 0.135574 +0x115A +// 0.024662 +0x0328 +// 0.014719 +0x01E2 +// 0.267787 +0x2247 +// 0.345970 +0x2C49 +// 0.005591 +0x00B7 +// 0.044471 +0x05B1 +// 0.375960 +0x301F +// 0.383603 +0x311A +// 0.378316 +0x306D +// 0.596334 +0x4C55 +// 0.005251 +0x00AC +// 0.394515 +0x327F +// 0.375369 +0x300C +// 0.163662 +0x14F3 +// 0.071600 +0x092A +// 0.916219 +0x7547 +// 0.271810 +0x22CB +// 0.028910 +0x03B3 +// 0.044344 +0x05AD +// 0.346038 +0x2C4B +// 0.550345 +0x4672 +// 0.168251 +0x1589 +// 0.350877 +0x2CEA +// 0.112249 +0x0E5E +// 0.092318 +0x0BD1 +// 0.044485 +0x05B2 +// 0.050476 +0x0676 +// 0.597941 +0x4C89 +// 0.147743 +0x12E9 +// 0.104001 +0x0D50 +// 0.863760 +0x6E90 +// 0.021036 +0x02B1 +// 0.501711 +0x4038 +// 0.230966 +0x1D90 +// 0.482987 +0x3DD3 +// 0.739278 +0x5EA1 +// 0.094405 +0x0C15 +// 0.145751 +0x12A8 +// 0.233706 +0x1DEA +// 0.038792 +0x04F7 +// 0.350980 +0x2CED +// 0.383181 +0x310C +// 0.944379 +0x78E1 +// 0.200456 +0x19A9 +// 0.219583 +0x1C1B +// 0.232208 +0x1DB9 +// 0.104525 +0x0D61 +// 0.607071 +0x4DB5 +// 0.178966 +0x16E8 +// 0.075319 +0x09A4 +// 0.201443 +0x19C9 +// 0.164138 +0x1502 +// 0.534490 +0x446A +// 0.424259 +0x364E +// 0.291849 +0x255B +// 0.915948 +0x753E +// 0.397405 +0x32DE +// 0.345838 +0x2C44 +// 0.011047 +0x016A +// 0.298979 +0x2645 +// 0.168953 +0x15A0 +// 0.265467 +0x21FB +// 0.050179 +0x066C +// 0.041563 +0x0552 +// 0.271179 +0x22B6 +// 0.146766 +0x12C9 +// 0.216713 +0x1BBD +// 0.559301 +0x4797 +// 0.581091 +0x4A61 +// 0.277989 +0x2395 +// 0.186481 +0x17DF +// 0.535854 +0x4497 +// 0.328088 +0x29FF +// 0.176669 +0x169D +// 0.740071 +0x5EBB +// 0.206452 +0x1A6D +// 0.357911 +0x2DD0 +// 0.313385 +0x281D +// 0.100649 +0x0CE2 +// 0.082611 +0x0A93 +// 0.013443 +0x01B9 +// 0.618031 +0x4F1C +// 0.282627 +0x242D +// 0.052427 +0x06B6 +// 0.082851 +0x0A9B +// 0.351266 +0x2CF6 +// 0.272124 +0x22D5 +// 0.182786 +0x1766 +// 0.026371 +0x0360 +// 0.109020 +0x0DF4 +// 0.539030 +0x44FF +// 0.191686 +0x1889 +// 0.068303 +0x08BE +// 0.059237 +0x0795 +// 0.267755 +0x2246 +// 0.264290 +0x21D4 +// 0.281554 +0x240A +// 0.118044 +0x0F1C +// 0.517511 +0x423E +// 0.184187 +0x1793 +// 0.257065 +0x20E7 +// 0.216518 +0x1BB7 +// 0.272943 +0x22F0 +// 0.274036 +0x2314 +// 0.243343 +0x1F26 +// 0.731284 +0x5D9B +// 0.204635 +0x1A31 +// 0.531473 +0x4407 +// 0.528015 +0x4396 +// 0.180460 +0x1719 +// 0.020582 +0x02A2 +// 0.211884 +0x1B1F +// 0.363195 +0x2E7D +// 0.442532 +0x38A5 +// 0.162902 +0x14DA +// 0.665815 +0x5539 +// 0.088811 +0x0B5E +// 0.629781 +0x509D +// 0.496235 +0x3F85 +// 0.193680 +0x18CA +// 0.297449 +0x2613 +// 0.162190 +0x14C3 +// 0.179097 +0x16ED +// 0.555888 +0x4727 +// 0.072336 +0x0942 +// 0.302093 +0x26AB +// 0.445154 +0x38FB +// 0.346229 +0x2C51 +// 0.024576 +0x0325 +// 0.230310 +0x1D7B +// 0.050307 +0x0670 +// 0.357157 +0x2DB7 +// 0.500648 +0x4015 +// 0.032685 +0x042F +// 0.104836 +0x0D6B +// 0.303462 +0x26D8 +// 0.223480 +0x1C9B +// 0.253358 +0x206E +// 0.505218 +0x40AB +// 0.176086 +0x168A +// 0.117419 +0x0F08 +// 0.329258 +0x2A25 +// 0.648495 +0x5302 +// 0.019428 +0x027D +// 0.274199 +0x2319 +// 0.358446 +0x2DE2 +// 0.287302 +0x24C6 +// 0.188435 +0x181F +// 0.289413 +0x250B +// 0.264385 +0x21D7 +// 0.596402 +0x4C57 +// 0.029724 +0x03CE +// 0.351766 +0x2D07 +// 0.221739 +0x1C62 +// 0.193294 +0x18BE +// 0.463914 +0x3B62 +// 0.206279 +0x1A67 +// 0.581706 +0x4A75 +// 0.433738 +0x3785 +// 0.055119 +0x070E +// 0.276765 +0x236D +// 0.384795 +0x3141 +// 0.420062 +0x35C5 +// 0.282390 +0x2425 +// 0.022017 +0x02D1 +// 0.240787 +0x1ED2 +// 0.128357 +0x106E +// 0.353138 +0x2D34 +// 0.047511 +0x0615 +// 0.257129 +0x20EA +// 1.043128 +0x7FFF +// 0.132814 +0x1100 +// 0.692764 +0x58AC +// 0.081024 +0x0A5F +// 0.121328 +0x0F88 +// 0.375195 +0x3006 +// 0.102693 +0x0D25 +// 0.029129 +0x03BA +// 0.656192 +0x53FE +// 0.217170 +0x1BCC +// 0.015412 +0x01F9 +// 0.337355 +0x2B2E +// 0.134911 +0x1145 +// 0.060924 +0x07CC +// 0.072464 +0x0946 +// 0.136976 +0x1188 +// 0.389560 +0x31DD +// 0.494185 +0x3F41 +// 0.002056 +0x0043 +// 0.322921 +0x2955 +// 0.024082 +0x0315 +// 0.331115 +0x2A62 +// 0.020161 +0x0295 +// 0.033866 +0x0456 +// 0.136456 +0x1177 +// 0.251351 +0x202C +// 0.144574 +0x1281 +// 0.071984 +0x0937 +// 0.271859 +0x22CC +// 0.618022 +0x4F1B +// 0.633109 +0x510A +// 0.292169 +0x2566 +// 0.013417 +0x01B8 +// 0.752103 +0x6045 +// 0.013516 +0x01BB +// 0.358429 +0x2DE1 +// 0.665158 +0x5524 +// 0.450152 +0x399F +// 0.087932 +0x0B41 +// 0.183707 +0x1784 +// 0.436559 +0x37E1 +// 0.167867 +0x157D +// 0.007914 +0x0103 +// 0.372122 +0x2FA2 +// 0.247408 +0x1FAB +// 0.115687 +0x0ECF +// 0.077989 +0x09FC +// 0.168139 +0x1586 +// 0.098278 +0x0C94 +// 0.175565 +0x1679 +// 0.197802 +0x1952 +// 0.153278 +0x139F +// 0.197977 +0x1957 +// 0.149159 +0x1318 +// 0.401470 +0x3363 +// 0.091024 +0x0BA7 +// 0.436788 +0x37E9 +// 0.017233 +0x0235 +// 0.102080 +0x0D11 +// 0.293229 +0x2589 +// 0.272337 +0x22DC +// 0.257176 +0x20EB +// 0.263800 +0x21C4 +// 0.202934 +0x19FA +// 0.414910 +0x351C +// 0.073530 +0x0969 +// 0.088567 +0x0B56 +// 0.243210 +0x1F22 +// 0.171342 +0x15EF +// 0.518861 +0x426A +// 0.044060 +0x05A4 +// 0.337653 +0x2B38 +// 0.045012 +0x05C3 +// 0.082984 +0x0A9F +// 0.102109 +0x0D12 +// 0.797588 +0x6617 +// 0.367306 +0x2F04 +// 0.110483 +0x0E24 +// 0.677932 +0x56C6 +// 0.492099 +0x3EFD +// 0.681288 +0x5734 +// 0.028106 +0x0399 +// 0.023731 +0x030A +// 0.671215 +0x55EA +// 0.326315 +0x29C5 +// 0.515313 +0x41F6 +// 0.557029 +0x474D +// 0.199177 +0x197F +// 0.313586 +0x2824 +// 0.034260 +0x0463 +// 0.284702 +0x2471 +// 0.261060 +0x216A +// 0.273359 +0x22FD +// 0.606875 +0x4DAE +// 0.047320 +0x060F +// 0.220592 +0x1C3C +// 0.180375 +0x1717 +// 0.164123 +0x1502 +// 0.151654 +0x1369 +// 0.128707 +0x1079 +// 0.273486 +0x2302 +// 0.472549 +0x3C7C +// 0.475849 +0x3CE9 +// 0.461087 +0x3B05 +// 0.345718 +0x2C40 +// 0.159109 +0x145E +// 0.710056 +0x5AE3 +// 0.543050 +0x4583 +// 0.013002 +0x01AA +// 0.561146 +0x47D4 +// 0.819438 +0x68E3 +// 0.332168 +0x2A84 +// 0.632966 +0x5105 +// 0.164327 +0x1509 +// 0.394232 +0x3276 +// 0.021795 +0x02CA +// 0.148809 +0x130C +// 0.386449 +0x3177 +// 0.643276 +0x5257 +// 0.017875 +0x024A +// 0.246272 +0x1F86 +// 0.563348 +0x481C +// 0.102539 +0x0D20 +// 0.188348 +0x181C +// 0.818380 +0x68C1 +// 0.401575 +0x3367 +// 0.246849 +0x1F99 +// 0.046612 +0x05F7 +// 0.244028 +0x1F3C +// 0.327520 +0x29EC +// 0.303780 +0x26E2 +// 0.044336 +0x05AD +// 0.114310 +0x0EA2 +// 0.406634 +0x340D +// 0.169565 +0x15B4 +// 0.191561 +0x1885 +// 0.221043 +0x1C4B +// 0.357792 +0x2DCC +// 0.714870 +0x5B81 +// 0.592153 +0x4BCC +// 0.510433 +0x4156 +// 0.317047 +0x2895 +// 0.511471 +0x4178 +// 0.640510 +0x51FC +// 0.181227 +0x1732 +// 0.008308 +0x0110 +// 0.153894 +0x13B3 +// 0.659417 +0x5468 +// 0.161269 +0x14A4 +// 0.474886 +0x3CC9 +// 0.659275 +0x5463 +// 0.413256 +0x34E6 +// 0.204685 +0x1A33 +// 0.048177 +0x062B +// 0.052215 +0x06AF +// 0.065893 +0x086F +// 0.154759 +0x13CF +// 0.324179 +0x297F +// 0.120963 +0x0F7C +// 0.016421 +0x021A +// 0.275053 +0x2335 +// 0.165313 +0x1529 +// 0.132639 +0x10FA +// 0.399855 +0x332E +// 0.039393 +0x050B +// 0.602478 +0x4D1E +// 0.014861 +0x01E7 +// 0.218888 +0x1C05 +// 0.020601 +0x02A3 +// 0.518744 +0x4266 +// 0.071682 +0x092D +// 0.072856 +0x0953 +// 0.303858 +0x26E5 +// 0.448799 +0x3972 +// 0.511451 +0x4177 +// 0.180403 +0x1717 +// 0.323845 +0x2974 +// 0.555267 +0x4713 +// 0.176991 +0x16A8 +// 0.248630 +0x1FD3 +// 0.137186 +0x118F +// 0.195763 +0x190F +// 0.087200 +0x0B29 +// 0.750419 +0x600E +// 0.397731 +0x32E9 +// 0.446041 +0x3918 +// 0.544586 +0x45B5 +// 0.121253 +0x0F85 +// 0.340215 +0x2B8C +// 0.037426 +0x04CA +// 0.467899 +0x3BE4 +// 0.140040 +0x11ED +// 0.273567 +0x2304 +// 0.171606 +0x15F7 +// 0.599447 +0x4CBB +// 0.167934 +0x157F +// 0.429725 +0x3701 +// 0.885968 +0x7167 +// 0.526349 +0x435F +// 0.041842 +0x055B +// 0.084380 +0x0ACD +// 0.398228 +0x32F9 +// 0.287693 +0x24D3 +// 0.011001 +0x0168 +// 0.268416 +0x225B +// 0.091137 +0x0BAA +// 0.924810 +0x7660 +// 0.093843 +0x0C03 +// 0.016316 +0x0217 +// 0.194725 +0x18ED +// 0.303764 +0x26E2 +// 0.363099 +0x2E7A +// 0.210187 +0x1AE7 +// 0.339719 +0x2B7C +// 0.553744 +0x46E1 +// 0.583016 +0x4AA0 +// 0.200025 +0x199A +// 0.686821 +0x57EA +// 0.474608 +0x3CC0 +// 0.059178 +0x0793 +// 0.045215 +0x05CA +// 0.450806 +0x39B4 +// 0.441297 +0x387C +// 0.242939 +0x1F19 +// 0.087835 +0x0B3E +// 0.589680 +0x4B7B +// 0.227397 +0x1D1B +// 0.115719 +0x0ED0 +// 0.604017 +0x4D50 +// 0.247514 +0x1FAF +// 0.404362 +0x33C2 +// 0.048900 +0x0642 +// 0.063227 +0x0818 +// 0.029758 +0x03CF +// 0.193367 +0x18C0 +// 0.447922 +0x3955 +// 0.051896 +0x06A5 +// 0.653320 +0x53A0 +// 0.069618 +0x08E9 +// 0.086348 +0x0B0D +// 0.178997 +0x16E9 +// 0.208591 +0x1AB3 +// 0.895135 +0x7294 +// 0.312748 +0x2808 +// 0.111390 +0x0E42 +// 0.317411 +0x28A1 +// 0.276115 +0x2358 +// 0.068031 +0x08B5 +// 0.235022 +0x1E15 +// 0.072694 +0x094E +// 0.471215 +0x3C51 +// 0.082409 +0x0A8C +// 0.144065 +0x1271 +// 0.138900 +0x11C7 +// 0.393513 +0x325F +// 0.082635 +0x0A94 +// 0.460627 +0x3AF6 +// 0.171043 +0x15E5 +// 0.491290 +0x3EE3 +// 0.209712 +0x1AD8 +// 0.443816 +0x38CF +// 0.022634 +0x02E6 +// 0.161641 +0x14B1 +// 0.213380 +0x1B50 +// 0.029872 +0x03D3 +// 0.380446 +0x30B2 +// 0.711136 +0x5B06 +// 0.092472 +0x0BD6 +// 0.082923 +0x0A9D +// 0.401671 +0x336A +// 0.654591 +0x53CA +// 0.173178 +0x162B +// 0.151698 +0x136B +// 0.139002 +0x11CB +// 0.699416 +0x5986 +// 0.187995 +0x1810 +// 0.077254 +0x09E3 +// 0.394812 +0x3289 +// 0.511115 +0x416C +// 0.514862 +0x41E7 +// 0.638299 +0x51B4 +// 0.216884 +0x1BC3 +// 0.261516 +0x2179 +// 0.005705 +0x00BB +// 0.603951 +0x4D4E +// 0.033579 +0x044C +// 0.382221 +0x30ED +// 0.063953 +0x0830 +// 0.569114 +0x48D9 +// 0.184112 +0x1791 +// 0.174719 +0x165D +// 0.269960 +0x228E +// 0.019188 +0x0275 +// 0.153484 +0x13A5 +// 0.424012 +0x3646 +// 0.447603 +0x394B +// 0.132366 +0x10F1 +// 0.112295 +0x0E60 +// 0.083091 +0x0AA3 +// 0.323116 +0x295C +// 0.352520 +0x2D1F +// 0.329763 +0x2A36 +// 0.435334 +0x37B9 +// 0.106705 +0x0DA9 +// 0.563860 +0x482D +// 0.723148 +0x5C90 +// 0.706106 +0x5A62 +// 0.134446 +0x1136 +// 0.220732 +0x1C41 +// 0.331202 +0x2A65 +// 0.076472 +0x09CA +// 0.452905 +0x39F9 +// 0.271097 +0x22B3 +// 0.373199 +0x2FC5 +// 0.306517 +0x273C +// 0.444119 +0x38D9 +// 0.003685 +0x0079 +// 0.082473 +0x0A8E +// 0.110805 +0x0E2F +// 0.640516 +0x51FC +// 0.231166 +0x1D97 +// 0.250204 +0x2007 +// 0.159188 +0x1460 +// 0.141438 +0x121B +// 0.165183 +0x1525 +// 0.087313 +0x0B2D +// 0.040773 +0x0538 +// 0.308844 +0x2788 +// 0.137517 +0x119A +// 0.265902 +0x2209 +// 0.307700 +0x2763 +// 0.211011 +0x1B02 +// 0.302176 +0x26AE +// 0.207338 +0x1A8A +// 0.440337 +0x385D +// 0.347784 +0x2C84 +// 0.033973 +0x0459 +// 0.156415 +0x1405 +// 0.245515 +0x1F6D +// 0.319397 +0x28E2 +// 0.158589 +0x144D +// 0.446669 +0x392C +// 0.138475 +0x11BA +// 0.198498 +0x1968 +// 0.140207 +0x11F2 +// 0.708774 +0x5AB9 +// 0.515272 +0x41F4 +// 0.135916 +0x1166 +// 0.283705 +0x2450 +// 0.338638 +0x2B58 +// 0.393192 +0x3254 +// 0.025394 +0x0340 +// 0.129773 +0x109C +// 0.428570 +0x36DB +// 0.426466 +0x3696 +// 0.182806 +0x1766 +// 0.222934 +0x1C89 +// 0.374029 +0x2FE0 +// 0.475379 +0x3CD9 +// 0.449000 +0x3979 +// 0.194877 +0x18F2 +// 0.411768 +0x34B5 +// 0.172390 +0x1611 +// 0.095027 +0x0C2A +// 0.353998 +0x2D50 +// 0.180892 +0x1727 +// 0.530592 +0x43EA +// 0.434246 +0x3795 +// 0.326787 +0x29D4 +// 0.133018 +0x1107 +// 0.604567 +0x4D62 +// 0.454421 +0x3A2A +// 0.277497 +0x2385 +// 0.478738 +0x3D47 +// 0.339861 +0x2B81 +// 0.497976 +0x3FBE +// 0.301022 +0x2688 +// 0.546423 +0x45F1 +// 0.120811 +0x0F77 +// 0.550344 +0x4672 +// 0.187770 +0x1809 +// 0.002919 +0x0060 +// 0.047884 +0x0621 +// 0.466540 +0x3BB8 +// 0.128560 +0x1075 +// 0.105057 +0x0D72 +// 0.565764 +0x486B +// 0.130311 +0x10AE +// 0.587429 +0x4B31 +// 0.435172 +0x37B4 +// 0.060940 +0x07CD +// 0.370055 +0x2F5E +// 0.073245 +0x0960 +// 0.008761 +0x011F +// 0.162328 +0x14C7 +// 0.091678 +0x0BBC +// 0.335690 +0x2AF8 +// 0.422059 +0x3606 +// 0.086279 +0x0B0B +// 0.343137 +0x2BEC +// 0.190680 +0x1868 +// 0.398221 +0x32F9 +// 0.317838 +0x28AF +// 0.343827 +0x2C03 +// 0.206803 +0x1A79 +// 0.076932 +0x09D9 +// 0.133889 +0x1123 +// 0.419893 +0x35BF +// 0.021846 +0x02CC +// 0.121506 +0x0F8D +// 0.280304 +0x23E1 +// 0.334969 +0x2AE0 +// 0.364468 +0x2EA7 +// 0.234065 +0x1DF6 +// 0.361867 +0x2E52 +// 0.194513 +0x18E6 +// 0.150074 +0x1336 +// 0.102537 +0x0D20 +// 0.049694 +0x065C +// 0.375947 +0x301F +// 0.074379 +0x0985 +// 0.456768 +0x3A77 +// 0.031544 +0x040A +// 0.114524 +0x0EA9 +// 0.592655 +0x4BDC +// 0.489667 +0x3EAD +// 0.174655 +0x165B +// 0.894111 +0x7272 +// 0.345618 +0x2C3D +// 0.167085 +0x1563 +// 0.214097 +0x1B68 +// 0.036321 +0x04A6 +// 0.403908 +0x33B3 +// 0.152872 +0x1391 +// 0.226107 +0x1CF1 +// 0.208006 +0x1AA0 +// 0.310169 +0x27B4 +// 0.126101 +0x1024 +// 0.203056 +0x19FE +// 0.481319 +0x3D9C +// 0.524946 +0x4331 +// 0.344012 +0x2C09 +// 0.546380 +0x45F0 +// 0.397145 +0x32D6 +// 0.753822 +0x607D +// 0.244779 +0x1F55 +// 0.240786 +0x1ED2 +// 0.060025 +0x07AF +// 0.060180 +0x07B4 +// 0.278964 +0x23B5 +// 0.055579 +0x071D +// 0.427371 +0x36B4 +// 0.151975 +0x1374 +// 0.386092 +0x316B +// 0.187122 +0x17F4 +// 0.206159 +0x1A63 +// 0.166706 +0x1557 +// 0.052368 +0x06B4 +// 0.271625 +0x22C5 +// 0.340973 +0x2BA5 +// 0.322939 +0x2956 +// 0.296452 +0x25F2 +// 0.636537 +0x517A +// 0.454836 +0x3A38 +// 0.133760 +0x111F +// 0.369094 +0x2F3E +// 0.024375 +0x031F +// 0.377012 +0x3042 +// 0.466802 +0x3BC0 +// 0.039531 +0x050F +// 0.271617 +0x22C4 +// 0.002828 +0x005D +// 0.161676 +0x14B2 +// 0.725808 +0x5CE7 +// 0.103473 +0x0D3F +// 0.582050 +0x4A81 +// 0.078440 +0x0A0A +// 0.346674 +0x2C60 +// 0.275899 +0x2351 +// 0.008784 +0x0120 +// 0.062718 +0x0807 +// 0.052857 +0x06C4 +// 0.471854 +0x3C66 +// 0.144325 +0x1279 +// 0.137221 +0x1190 +// 0.238686 +0x1E8D +// 0.388072 +0x31AC +// 0.009798 +0x0141 +// 0.433691 +0x3783 +// 0.421968 +0x3603 +// 0.181709 +0x1742 +// 0.077130 +0x09DF +// 0.434445 +0x379C +// 0.238301 +0x1E81 +// 0.036354 +0x04A7 +// 0.002413 +0x004F +// 1.000000 +0x7FFF +// 0.292466 +0x2570 +// 0.477138 +0x3D13 +// 0.029788 +0x03D0 +// 0.122233 +0x0FA5 +// 0.305749 +0x2723 +// 0.056850 +0x0747 +// 0.011544 +0x017A +// 0.485309 +0x3E1F +// 0.392447 +0x323C +// 0.024576 +0x0325 +// 0.049205 +0x064C +// 0.108763 +0x0DEC +// 0.002898 +0x005F +// 0.349074 +0x2CAE +// 0.324127 +0x297D +// 0.153590 +0x13A9 +// 0.612563 +0x4E68 +// 0.157526 +0x142A +// 0.050986 +0x0687 +// 0.302343 +0x26B3 +// 0.253856 +0x207E +// 0.159655 +0x1470 +// 0.066664 +0x0888 +// 0.000800 +0x001A +// 0.032568 +0x042B +// 0.421309 +0x35ED +// 0.371952 +0x2F9C +// 0.213371 +0x1B50 +// 0.092940 +0x0BE5 +// 0.334087 +0x2AC3 +// 0.551764 +0x46A0 +// 0.496481 +0x3F8D +// 0.062113 +0x07F3 +// 0.081416 +0x0A6C +// 0.487683 +0x3E6C +// 0.165601 +0x1532 +// 0.269857 +0x228B +// 0.414950 +0x351D +// 0.526498 +0x4364 +// 0.030828 +0x03F2 +// 0.941966 +0x7892 +// 0.166467 +0x154F +// 0.562406 +0x47FD +// 0.177921 +0x16C6 +// 0.298116 +0x2629 +// 0.559981 +0x47AD +// 0.579518 +0x4A2E +// 0.283386 +0x2446 +// 0.705985 +0x5A5E +// 0.180361 +0x1716 +// 0.265818 +0x2206 +// 0.523560 +0x4304 +// 0.312253 +0x27F8 +// 0.167613 +0x1574 +// 0.329325 +0x2A27 +// 0.465726 +0x3B9D +// 0.069463 +0x08E4 +// 0.038020 +0x04DE +// 0.256582 +0x20D8 +// 0.380737 +0x30BC +// 0.326332 +0x29C5 +// 0.499321 +0x3FEA +// 0.043346 +0x058C +// 0.759558 +0x6139 +// 0.037447 +0x04CB +// 0.435687 +0x37C5 +// 0.206477 +0x1A6E +// 0.271573 +0x22C3 +// 0.042238 +0x0568 +// 0.194650 +0x18EA +// 0.434438 +0x379C +// 0.152877 +0x1391 +// 0.054445 +0x06F8 +// 0.170276 +0x15CC +// 0.185138 +0x17B3 +// 0.313495 +0x2821 +// 0.024625 +0x0327 +// 0.084068 +0x0AC3 +// 0.067068 +0x0896 +// 0.417587 +0x3573 +// 0.314987 +0x2851 +// 0.419594 +0x35B5 +// 0.575789 +0x49B3 +// 0.101260 +0x0CF6 +// 0.225269 +0x1CD6 +// 0.174140 +0x164A +// 0.248561 +0x1FD1 +// 0.014957 +0x01EA +// 0.127200 +0x1048 +// 0.154054 +0x13B8 +// 0.212034 +0x1B24 +// 0.227238 +0x1D16 +// 0.052221 +0x06AF +// 0.307882 +0x2769 +// 0.799452 +0x6654 +// 1.068350 +0x7FFF +// 0.280320 +0x23E2 +// 0.485968 +0x3E34 +// 0.323413 +0x2966 +// 0.086789 +0x0B1C +// 0.318079 +0x28B7 +// 0.294359 +0x25AE +// 0.053588 +0x06DC +// 0.214822 +0x1B7F +// 0.288438 +0x24EC +// 0.298122 +0x2629 +// 0.379377 +0x308F +// 0.059276 +0x0796 +// 0.022122 +0x02D5 +// 0.287297 +0x24C6 +// 0.294088 +0x25A5 +// 0.303966 +0x26E8 +// 0.238154 +0x1E7C +// 0.023236 +0x02F9 +// 0.474122 +0x3CB0 +// 0.347387 +0x2C77 +// 0.641721 +0x5224 +// 0.359824 +0x2E0F +// 0.271073 +0x22B3 +// 0.341035 +0x2BA7 +// 0.318779 +0x28CE +// 0.439873 +0x384E +// 0.004541 +0x0095 +// 0.863960 +0x6E96 +// 0.460182 +0x3AE7 +// 0.210693 +0x1AF8 +// 0.126697 +0x1038 +// 0.102962 +0x0D2E +// 0.298653 +0x263A +// 0.543615 +0x4595 +// 0.321486 +0x2926 +// 0.556741 +0x4743 +// 0.062603 +0x0803 +// 0.152192 +0x137B +// 0.499522 +0x3FF0 +// 0.506090 +0x40C8 +// 0.303933 +0x26E7 +// 0.141234 +0x1214 +// 1.008907 +0x7FFF +// 0.123794 +0x0FD8 +// 0.443079 +0x38B7 +// 0.072806 +0x0952 +// 0.157681 +0x142F +// 0.064615 +0x0845 +// 0.182817 +0x1767 +// 0.229787 +0x1D6A +// 0.032679 +0x042F +// 0.214934 +0x1B83 +// 0.062738 +0x0808 +// 0.046972 +0x0603 +// 0.594032 +0x4C09 +// 0.258565 +0x2119 +// 0.976663 +0x7D03 +// 0.146348 +0x12BC +// 0.105439 +0x0D7F +// 0.107955 +0x0DD1 +// 0.265446 +0x21FA +// 0.143944 +0x126D +// 0.066231 +0x087A +// 0.518346 +0x4259 +// 0.248661 +0x1FD4 +// 0.274934 +0x2331 +// 0.137183 +0x118F +// 0.152354 +0x1380 +// 0.295914 +0x25E1 +// 0.010657 +0x015D +// 0.135757 +0x1160 +// 0.949402 +0x7986 +// 0.311734 +0x27E7 +// 1.094922 +0x7FFF +// 0.389637 +0x31E0 +// 0.012622 +0x019E +// 0.118367 +0x0F27 +// 0.151881 +0x1371 +// 0.077004 +0x09DB +// 0.091771 +0x0BBF +// 0.217147 +0x1BCB +// 0.718527 +0x5BF9 +// 0.159665 +0x1470 +// 0.292969 +0x2580 +// 0.083177 +0x0AA6 +// 0.127979 +0x1062 +// 0.074427 +0x0987 +// 0.643314 +0x5258 +// 0.384796 +0x3141 +// 0.058687 +0x0783 +// 0.479953 +0x3D6F +// 0.029212 +0x03BD +// 0.597669 +0x4C80 +// 0.139692 +0x11E1 +// 0.180835 +0x1726 +// 0.484038 +0x3DF5 +// 0.099890 +0x0CC9 +// 0.181177 +0x1731 +// 0.249642 +0x1FF4 +// 0.019287 +0x0278 +// 0.299914 +0x2664 +// 0.175624 +0x167B +// 0.560827 +0x47C9 +// 0.100975 +0x0CED +// 0.202700 +0x19F2 +// 0.462478 +0x3B32 +// 0.056867 +0x0747 +// 0.638576 +0x51BD +// 0.139547 +0x11DD +// 0.303204 +0x26CF +// 0.212733 +0x1B3B +// 0.177548 +0x16BA +// 0.365544 +0x2ECA +// 0.017903 +0x024B +// 0.009567 +0x0139 +// 0.488122 +0x3E7B +// 0.628779 +0x507C +// 0.580578 +0x4A50 +// 0.423466 +0x3634 +// 0.060766 +0x07C7 +// 0.255986 +0x20C4 +// 0.061675 +0x07E5 +// 0.640741 +0x5204 +// 0.183888 +0x178A +// 0.500251 +0x4008 +// 0.395580 +0x32A2 +// 0.352712 +0x2D26 +// 1.011698 +0x7FFF +// 0.674880 +0x5662 +// 0.102362 +0x0D1A +// 0.108475 +0x0DE3 +// 0.327960 +0x29FB +// 0.007864 +0x0102 +// 0.086745 +0x0B1A +// 0.558776 +0x4786 +// 0.072536 +0x0949 +// 0.521992 +0x42D1 +// 0.340455 +0x2B94 +// 0.243467 +0x1F2A +// 0.393120 +0x3252 +// 0.632452 +0x50F4 +// 0.252324 +0x204C +// 0.424304 +0x3650 +// 0.168803 +0x159B +// 0.303807 +0x26E3 +// 0.090618 +0x0B99 +// 0.306298 +0x2735 +// 0.298579 +0x2638 +// 0.120909 +0x0F7A +// 0.350184 +0x2CD3 +// 0.087967 +0x0B42 +// 0.177294 +0x16B2 +// 0.215849 +0x1BA1 +// 0.170055 +0x15C4 +// 0.162256 +0x14C5 +// 0.278967 +0x23B5 +// 0.005646 +0x00B9 +// 0.242501 +0x1F0A +// 0.318413 +0x28C2 +// 0.005277 +0x00AD +// 0.121283 +0x0F86 +// 0.225447 +0x1CDB +// 0.102541 +0x0D20 +// 0.422282 +0x360D +// 0.173209 +0x162C +// 0.434033 +0x378E +// 0.798941 +0x6644 +// 0.370158 +0x2F61 +// 0.425889 +0x3684 +// 0.109400 +0x0E01 +// 0.313888 +0x282D +// 0.054624 +0x06FE +// 0.573733 +0x4970 +// 0.031311 +0x0402 +// 0.266240 +0x2214 +// 0.099585 +0x0CBF +// 0.149292 +0x131C +// 0.325792 +0x29B4 +// 0.098745 +0x0CA4 +// 0.156462 +0x1407 +// 0.477459 +0x3D1D +// 0.213553 +0x1B56 +// 0.073389 +0x0965 +// 0.636507 +0x5179 +// 0.046265 +0x05EC +// 0.030009 +0x03D7 +// 0.318304 +0x28BE +// 0.154730 +0x13CE +// 0.253851 +0x207E +// 0.468822 +0x3C02 +// 0.348272 +0x2C94 +// 0.145450 +0x129E +// 0.029893 +0x03D4 +// 0.441152 +0x3878 +// 0.191458 +0x1882 +// 0.089405 +0x0B72 +// 0.068902 +0x08D2 +// 0.329570 +0x2A2F +// 0.110802 +0x0E2F +// 0.392254 +0x3235 +// 0.308729 +0x2784 +// 0.123581 +0x0FD2 +// 0.902540 +0x7386 +// 0.088886 +0x0B61 +// 0.286131 +0x24A0 +// 0.256644 +0x20DA +// 0.046575 +0x05F6 +// 0.034183 +0x0460 +// 0.423753 +0x363E +// 0.405671 +0x33ED +// 0.351964 +0x2D0D +// 0.222091 +0x1C6D +// 0.057188 +0x0752 +// 0.538542 +0x44EF +// 0.140302 +0x11F5 +// 0.018346 +0x0259 +// 0.103390 +0x0D3C +// 0.006195 +0x00CB +// 0.042978 +0x0580 +// 0.231988 +0x1DB2 +// 0.113704 +0x0E8E +// 0.086357 +0x0B0E +// 0.038767 +0x04F6 +// 0.254012 +0x2083 +// 0.120947 +0x0F7B +// 0.450835 +0x39B5 +// 0.174648 +0x165B +// 0.066828 +0x088E +// 0.137129 +0x118D +// 0.019902 +0x028C +// 0.037007 +0x04BD +// 0.399901 +0x3330 +// 0.556847 +0x4747 +// 0.275515 +0x2344 +// 0.670052 +0x55C4 +// 0.501394 +0x402E +// 0.025417 +0x0341 +// 0.045776 +0x05DC +// 0.581042 +0x4A60 +// 0.144207 +0x1275 +// 0.204912 +0x1A3B +// 0.461551 +0x3B14 +// 0.313733 +0x2828 +// 0.410100 +0x347E +// 0.036296 +0x04A5 +// 0.031820 +0x0413 +// 0.344654 +0x2C1E +// 0.458291 +0x3AA9 +// 0.856425 +0x6D9F +// 0.295045 +0x25C4 +// 0.425755 +0x367F +// 0.381044 +0x30C6 +// 0.166764 +0x1559 +// 0.040453 +0x052E +// 0.096587 +0x0C5D +// 0.302830 +0x26C3 +// 0.228459 +0x1D3E +// 0.125705 +0x1017 +// 0.006768 +0x00DE +// 0.170063 +0x15C5 +// 0.052790 +0x06C2 +// 0.229228 +0x1D57 +// 0.328993 +0x2A1C +// 0.899534 +0x7324 +// 0.460007 +0x3AE2 +// 0.215238 +0x1B8D +// 0.007139 +0x00EA +// 0.163529 +0x14EF +// 0.084549 +0x0AD2 +// 0.879300 +0x708D +// 0.262367 +0x2195 +// 0.540680 +0x4535 +// 0.005313 +0x00AE +// 0.392334 +0x3238 +// 0.013056 +0x01AC +// 0.031535 +0x0409 +// 0.246657 +0x1F92 +// 0.209875 +0x1ADD +// 0.755105 +0x60A7 +// 0.469882 +0x3C25 +// 0.040061 +0x0521 +// 0.090427 +0x0B93 +// 0.570723 +0x490D +// 0.228458 +0x1D3E +// 0.234944 +0x1E13 +// 0.293759 +0x259A +// 0.064729 +0x0849 +// 0.520925 +0x42AE +// 0.959025 +0x7AC1 +// 0.291191 +0x2546 +// 0.062935 +0x080E +// 0.014828 +0x01E6 +// 0.071148 +0x091B +// 0.351778 +0x2D07 +// 0.097876 +0x0C87 +// 0.054465 +0x06F9 +// 0.043208 +0x0588 +// 0.070895 +0x0913 +// 0.133868 +0x1123 +// 0.717188 +0x5BCD +// 0.175382 +0x1673 +// 0.068556 +0x08C6 +// 1.020182 +0x7FFF +// 0.395735 +0x32A7 +// 0.022838 +0x02EC +// 0.448647 +0x396D +// 0.291345 +0x254B +// 0.224895 +0x1CC9 +// 0.245388 +0x1F69 +// 0.657182 +0x541F +// 0.110449 +0x0E23 +// 0.266351 +0x2218 +// 0.283002 +0x2439 +// 0.911956 +0x74BB +// 0.008352 +0x0112 +// 0.206770 +0x1A77 +// 0.722978 +0x5C8B +// 0.215985 +0x1BA5 +// 0.186763 +0x17E8 +// 0.321558 +0x2929 +// 0.512162 +0x418F +// 0.016183 +0x0212 +// 0.733420 +0x5DE1 +// 0.076134 +0x09BF +// 0.322179 +0x293D +// 0.086813 +0x0B1D +// 0.441585 +0x3886 +// 0.243715 +0x1F32 +// 0.035687 +0x0491 +// 0.102504 +0x0D1F +// 0.104377 +0x0D5C +// 0.483443 +0x3DE1 +// 0.175664 +0x167C +// 0.879285 +0x708C +// 0.442328 +0x389E +// 0.405451 +0x33E6 +// 0.427488 +0x36B8 +// 0.141002 +0x120C +// 0.295796 +0x25DD +// 0.134738 +0x113F +// 0.004937 +0x00A2 +// 0.175626 +0x167B +// 0.256964 +0x20E4 +// 0.312954 +0x280F +// 0.074420 +0x0987 +// 0.520511 +0x42A0 +// 0.094208 +0x0C0F +// 0.321918 +0x2935 +// 0.077550 +0x09ED +// 0.018287 +0x0257 +// 0.104452 +0x0D5F +// 0.452591 +0x39EF +// 0.118558 +0x0F2D +// 0.016605 +0x0220 +// 0.754075 +0x6086 +// 0.320599 +0x2909 +// 0.527758 +0x438E +// 0.084234 +0x0AC8 +// 0.395908 +0x32AD +// 0.188445 +0x181F +// 0.327105 +0x29DF +// 0.325279 +0x29A3 +// 0.096337 +0x0C55 +// 0.227465 +0x1D1E +// 0.237768 +0x1E6F +// 0.223495 +0x1C9B +// 0.586065 +0x4B04 +// 0.170827 +0x15DE +// 0.013651 +0x01BF +// 0.645947 +0x52AE +// 0.077503 +0x09EC +// 0.524656 +0x4328 +// 0.060024 +0x07AF +// 0.211439 +0x1B10 +// 0.192930 +0x18B2 +// 0.274707 +0x232A +// 0.414005 +0x34FE +// 0.138125 +0x11AE +// 0.159859 +0x1476 +// 0.104639 +0x0D65 +// 0.008371 +0x0112 +// 0.069217 +0x08DC +// 0.143335 +0x1259 +// 0.695248 +0x58FE +// 0.512295 +0x4193 +// 0.255871 +0x20C0 +// 0.093198 +0x0BEE +// 0.468695 +0x3BFE +// 0.509139 +0x412B +// 0.428734 +0x36E1 +// 0.234649 +0x1E09 +// 0.272356 +0x22DD +// 0.018724 +0x0266 +// 0.586958 +0x4B21 +// 0.327856 +0x29F7 +// 0.604713 +0x4D67 +// 0.033617 +0x044E +// 0.438472 +0x3820 +// 0.626622 +0x5035 +// 0.400154 +0x3338 +// 0.360732 +0x2E2C +// 0.082392 +0x0A8C +// 0.466362 +0x3BB2 +// 0.280092 +0x23DA +// 0.720726 +0x5C41 +// 0.189562 +0x1844 +// 0.231661 +0x1DA7 +// 0.032858 +0x0435 +// 0.402656 +0x338A +// 0.483019 +0x3DD4 +// 0.213029 +0x1B45 +// 0.209791 +0x1ADA +// 0.241307 +0x1EE3 +// 0.386257 +0x3171 +// 0.735888 +0x5E32 +// 0.840996 +0x6BA6 +// 0.344311 +0x2C12 +// 0.354855 +0x2D6C +// 0.175718 +0x167E +// 0.392748 +0x3246 +// 0.661384 +0x54A8 +// 0.129450 +0x1092 +// 0.038304 +0x04E7 +// 0.001414 +0x002E +// 0.285035 +0x247C +// 0.037638 +0x04D1 +// 0.540998 +0x453F +// 0.031048 +0x03F9 +// 0.417319 +0x356B +// 0.382333 +0x30F0 +// 0.635365 +0x5154 +// 0.521241 +0x42B8 +// 0.228943 +0x1D4E +// 0.153892 +0x13B3 +// 0.303788 +0x26E3 +// 0.279381 +0x23C3 +// 0.280330 +0x23E2 +// 0.170995 +0x15E3 +// 0.160244 +0x1483 +// 0.097276 +0x0C74 +// 0.185698 +0x17C5 +// 0.139563 +0x11DD +// 0.333834 +0x2ABB +// 0.435689 +0x37C5 +// 0.212799 +0x1B3D +// 0.235457 +0x1E23 +// 0.303054 +0x26CA +// 0.358957 +0x2DF2 +// 0.304060 +0x26EB +// 0.029532 +0x03C8 +// 0.176705 +0x169E +// 0.903898 +0x73B3 +// 0.346468 +0x2C59 +// 0.348410 +0x2C99 +// 0.025089 +0x0336 +// 0.540510 +0x452F +// 0.555838 +0x4726 +// 0.006437 +0x00D3 +// 0.121955 +0x0F9C +// 0.148397 +0x12FF +// 0.058154 +0x0772 +// 0.559727 +0x47A5 +// 0.134097 +0x112A +// 0.685346 +0x57B9 +// 0.053597 +0x06DC +// 0.384621 +0x313B +// 0.042620 +0x0575 +// 0.257681 +0x20FC +// 0.007645 +0x00FB +// 0.191465 +0x1882 +// 0.744332 +0x5F46 +// 0.383507 +0x3117 +// 0.012328 +0x0194 +// 0.342353 +0x2BD2 +// 0.056354 +0x0737 +// 0.374227 +0x2FE7 +// 0.193179 +0x18BA +// 0.240195 +0x1EBF +// 0.390490 +0x31FC +// 0.443213 +0x38BB +// 0.149313 +0x131D +// 0.671696 +0x55FA +// 0.634266 +0x5130 +// 0.088369 +0x0B50 +// 0.021839 +0x02CC +// 0.298090 +0x2628 +// 0.439506 +0x3842 +// 0.377877 +0x305E +// 0.291342 +0x254B +// 0.154105 +0x13BA +// 0.385793 +0x3162 +// 0.530039 +0x43D8 +// 0.062818 +0x080A +// 0.241636 +0x1EEE +// 0.504575 +0x4096 +// 0.016826 +0x0227 +// 0.198190 +0x195E +// 0.584994 +0x4AE1 +// 0.152850 +0x1391 +// 0.014537 +0x01DC +// 0.511397 +0x4175 +// 0.486604 +0x3E49 +// 0.512967 +0x41A9 +// 0.270687 +0x22A6 +// 0.067115 +0x0897 +// 0.635722 +0x515F +// 0.237180 +0x1E5C +// 0.671623 +0x55F8 +// 0.352836 +0x2D2A +// 0.094467 +0x0C18 +// 0.003635 +0x0077 +// 0.148023 +0x12F2 +// 0.048702 +0x063C +// 0.503235 +0x406A +// 0.325850 +0x29B5 +// 0.469885 +0x3C25 +// 0.031213 +0x03FF +// 0.064651 +0x0846 +// 0.468068 +0x3BEA +// 0.077044 +0x09DD +// 0.511375 +0x4175 +// 0.068142 +0x08B9 +// 0.416412 +0x354D +// 0.423333 +0x3630 +// 0.173811 +0x163F +// 0.296506 +0x25F4 +// 0.581651 +0x4A74 +// 0.210903 +0x1AFF +// 0.237210 +0x1E5D +// 0.195750 +0x190E +// 0.383684 +0x311D +// 0.045980 +0x05E3 +// 0.184027 +0x178E +// 0.623672 +0x4FD4 +// 0.236584 +0x1E48 +// 0.391391 +0x3219 +// 0.125446 +0x100F +// 0.556975 +0x474B +// 0.304518 +0x26FA +// 0.045298 +0x05CC +// 0.300641 +0x267B +// 0.061690 +0x07E5 +// 0.431455 +0x373A +// 0.029357 +0x03C2 +// 0.105262 +0x0D79 +// 0.417379 +0x356D +// 0.084533 +0x0AD2 +// 0.630302 +0x50AE +// 0.369283 +0x2F45 +// 0.594717 +0x4C20 +// 0.006255 +0x00CD +// 0.481059 +0x3D93 +// 0.128246 +0x106A +// 0.035469 +0x048A +// 0.759986 +0x6147 +// 0.304358 +0x26F5 +// 0.591823 +0x4BC1 +// 0.042641 +0x0575 +// 0.718751 +0x5C00 +// 0.428881 +0x36E6 +// 0.096977 +0x0C6A +// 0.109656 +0x0E09 +// 0.121147 +0x0F82 +// 0.099364 +0x0CB8 +// 0.262333 +0x2194 +// 0.602975 +0x4D2E +// 0.067724 +0x08AB +// 0.233484 +0x1DE3 +// 0.674327 +0x5650 +// 0.077276 +0x09E4 +// 0.219266 +0x1C11 +// 0.025506 +0x0344 +// 0.299953 +0x2665 +// 0.571932 +0x4935 +// 0.131764 +0x10DE +// 0.095870 +0x0C45 +// 0.394192 +0x3275 +// 0.100542 +0x0CDF +// 0.106131 +0x0D96 +// 0.238530 +0x1E88 +// 0.152304 +0x137F +// 0.125721 +0x1018 +// 0.300038 +0x2668 +// 0.276313 +0x235E +// 0.128529 +0x1074 +// 0.065076 +0x0854 +// 0.367111 +0x2EFE +// 0.114033 +0x0E99 +// 0.190480 +0x1862 +// 0.233769 +0x1DEC +// 0.627587 +0x5055 +// 0.363637 +0x2E8C +// 0.054289 +0x06F3 +// 0.255376 +0x20B0 +// 0.360143 +0x2E19 +// 0.140727 +0x1203 +// 0.078826 +0x0A17 +// 0.267469 +0x223C +// 0.431494 +0x373B +// 0.307634 +0x2761 +// 0.005375 +0x00B0 +// 0.435527 +0x37BF +// 0.151740 +0x136C +// 0.698787 +0x5972 +// 0.312279 +0x27F9 +// 0.076495 +0x09CB +// 0.235928 +0x1E33 +// 0.040485 +0x052F +// 0.063115 +0x0814 +// 0.338978 +0x2B64 +// 0.181877 +0x1748 +// 0.865913 +0x6ED6 +// 0.220596 +0x1C3C +// 0.148693 +0x1308 +// 0.120837 +0x0F78 +// 0.294635 +0x25B7 +// 0.123168 +0x0FC4 +// 0.622632 +0x4FB2 +// 0.551867 +0x46A4 +// 0.068414 +0x08C2 +// 0.049879 +0x0662 +// 0.386227 +0x3170 +// 0.053948 +0x06E8 +// 0.430128 +0x370E +// 0.032118 +0x041C +// 0.306597 +0x273F +// 0.124042 +0x0FE1 +// 0.002775 +0x005B +// 0.155579 +0x13EA +// 0.377540 +0x3053 +// 0.033606 +0x044D +// 0.479635 +0x3D65 +// 0.154615 +0x13CA +// 0.594545 +0x4C1A +// 0.843838 +0x6C03 +// 0.208118 +0x1AA4 +// 0.185981 +0x17CE +// 0.368322 +0x2F25 +// 0.120956 +0x0F7B +// 0.410208 +0x3482 +// 0.258562 +0x2119 +// 0.218680 +0x1BFE +// 0.215712 +0x1B9C +// 0.483448 +0x3DE2 +// 0.113461 +0x0E86 +// 0.682092 +0x574F +// 0.454583 +0x3A30 +// 0.137530 +0x119B +// 0.151639 +0x1369 +// 0.035126 +0x047F +// 0.195855 +0x1912 +// 0.111106 +0x0E39 +// 0.504405 +0x4090 +// 0.050137 +0x066B +// 0.171995 +0x1604 +// 0.213995 +0x1B64 +// 0.097787 +0x0C84 +// 0.220840 +0x1C44 +// 0.250325 +0x200B +// 0.620713 +0x4F74 +// 0.453288 +0x3A05 +// 0.075640 +0x09AF +// 0.136000 +0x1168 +// 0.375987 +0x3020 +// 0.496873 +0x3F9A +// 0.485989 +0x3E35 +// 0.466330 +0x3BB1 +// 0.459211 +0x3AC7 +// 0.539710 +0x4515 +// 0.264955 +0x21EA +// 0.364161 +0x2E9D +// 0.454692 +0x3A33 +// 0.378151 +0x3067 +// 0.231365 +0x1D9D +// 0.026275 +0x035D +// 0.032671 +0x042F +// 0.048774 +0x063E +// 0.387100 +0x318C +// 0.025604 +0x0347 +// 0.173932 +0x1643 +// 0.246121 +0x1F81 +// 0.125487 +0x1010 +// 0.013312 +0x01B4 +// 0.518788 +0x4268 +// 0.196429 +0x1925 +// 0.045402 +0x05D0 +// 0.336001 +0x2B02 +// 0.377077 +0x3044 +// 0.557246 +0x4754 +// 0.003015 +0x0063 +// 0.137460 +0x1198 +// 0.278913 +0x23B3 +// 0.105906 +0x0D8E +// 0.367517 +0x2F0B +// 0.234757 +0x1E0D +// 0.250669 +0x2016 +// 0.447857 +0x3953 +// 0.361753 +0x2E4E +// 0.404704 +0x33CD +// 0.164134 +0x1502 +// 0.060814 +0x07C9 +// 0.261077 +0x216B +// 0.652097 +0x5378 +// 0.150196 +0x133A +// 0.015156 +0x01F1 +// 0.066602 +0x0886 +// 0.188541 +0x1822 +// 0.327805 +0x29F6 +// 0.164513 +0x150F +// 0.117672 +0x0F10 +// 0.460060 +0x3AE3 +// 0.655754 +0x53F0 +// 0.263215 +0x21B1 +// 0.347782 +0x2C84 +// 0.364204 +0x2E9E +// 0.026977 +0x0374 +// 0.238233 +0x1E7E +// 0.002732 +0x005A +// 0.312342 +0x27FB +// 0.055685 +0x0721 +// 0.295391 +0x25CF +// 0.084142 +0x0AC5 +// 0.122278 +0x0FA7 +// 0.126402 +0x102E +// 0.076970 +0x09DA +// 0.196771 +0x1930 +// 0.112014 +0x0E56 +// 0.413269 +0x34E6 +// 0.104954 +0x0D6F +// 0.670828 +0x55DE +// 0.181702 +0x1742 +// 0.304957 +0x2709 +// 0.183456 +0x177B +// 0.347447 +0x2C79 +// 0.250930 +0x201E +// 0.117059 +0x0EFC +// 0.154633 +0x13CB +// 0.450904 +0x39B7 +// 0.542077 +0x4563 +// 0.001290 +0x002A +// 0.045065 +0x05C5 +// 0.380641 +0x30B9 +// 0.536618 +0x44B0 +// 0.335671 +0x2AF7 +// 0.489230 +0x3E9F +// 0.037916 +0x04DA +// 0.251717 +0x2038 +// 0.282182 +0x241F +// 0.528094 +0x4399 +// 0.002517 +0x0052 +// 0.348618 +0x2CA0 +// 0.484880 +0x3E11 +// 0.401185 +0x335A +// 0.280646 +0x23EC +// 0.125560 +0x1012 +// 0.341223 +0x2BAD +// 0.325070 +0x299C +// 0.007781 +0x00FF +// 0.244358 +0x1F47 +// 0.179540 +0x16FB +// 0.139538 +0x11DC +// 0.016558 +0x021F +// 0.060567 +0x07C1 +// 0.218029 +0x1BE8 +// 0.189429 +0x183F +// 0.088961 +0x0B63 +// 0.645641 +0x52A4 +// 0.434040 +0x378F +// 0.441026 +0x3874 +// 0.534178 +0x4460 +// 0.573451 +0x4967 +// 0.209907 +0x1ADE +// 0.268090 +0x2251 +// 0.693379 +0x58C1 +// 0.370958 +0x2F7C +// 0.039303 +0x0508 +// 0.174994 +0x1666 +// 0.264811 +0x21E5 +// 0.104937 +0x0D6F +// 0.346732 +0x2C62 +// 0.062168 +0x07F5 +// 0.282404 +0x2426 +// 0.317419 +0x28A1 +// 0.397091 +0x32D4 +// 0.603684 +0x4D46 +// 0.424291 +0x364F +// 0.189391 +0x183E +// 0.260666 +0x215E +// 0.670258 +0x55CB +// 0.093223 +0x0BEF +// 0.118481 +0x0F2A +// 0.614059 +0x4E99 +// 0.270391 +0x229C +// 0.285423 +0x2489 +// 0.121743 +0x0F95 +// 0.115713 +0x0ED0 +// 0.004971 +0x00A3 +// 0.330300 +0x2A47 +// 0.203353 +0x1A07 +// 0.594076 +0x4C0B +// 0.294516 +0x25B3 +// 0.239880 +0x1EB4 +// 0.278200 +0x239C +// 0.280449 +0x23E6 +// 0.172145 +0x1609 +// 0.069734 +0x08ED +// 0.099119 +0x0CB0 +// 0.035695 +0x0492 +// 0.085371 +0x0AED +// 0.181056 +0x172D +// 0.278116 +0x2399 +// 0.342938 +0x2BE5 +// 0.581968 +0x4A7E +// 0.108074 +0x0DD5 +// 0.283638 +0x244E +// 0.547432 +0x4612 +// 0.393472 +0x325D +// 0.356907 +0x2DAF +// 0.100625 +0x0CE1 +// 0.052644 +0x06BD +// 0.073486 +0x0968 +// 0.397019 +0x32D2 +// 0.277905 +0x2392 +// 0.037005 +0x04BD +// 0.540348 +0x452A +// 0.460154 +0x3AE6 +// 0.186451 +0x17DE +// 0.360929 +0x2E33 +// 0.187691 +0x1806 +// 0.222537 +0x1C7C +// 0.305244 +0x2712 +// 0.277812 +0x238F +// 0.220784 +0x1C43 +// 0.184338 +0x1798 +// 0.519976 +0x428F +// 0.302583 +0x26BB +// 0.581685 +0x4A75 +// 0.404465 +0x33C6 +// 0.807663 +0x6761 +// 0.387438 +0x3198 +// 0.049547 +0x0658 +// 0.065420 +0x0860 +// 0.543623 +0x4595 +// 0.346832 +0x2C65 +// 0.026704 +0x036B +// 0.073796 +0x0972 +// 0.285818 +0x2496 +// 0.524988 +0x4333 +// 0.153304 +0x139F +// 0.317533 +0x28A5 +// 0.330769 +0x2A57 +// 0.435892 +0x37CB +// 0.416463 +0x354F +// 0.049177 +0x064B +// 0.291979 +0x2560 +// 0.586512 +0x4B13 +// 0.035516 +0x048C +// 0.168004 +0x1581 +// 0.011179 +0x016E +// 0.070454 +0x0905 +// 0.282666 +0x242E +// 0.170104 +0x15C6 +// 0.005295 +0x00AE +// 0.121226 +0x0F84 +// 0.580665 +0x4A53 +// 0.247256 +0x1FA6 +// 0.092322 +0x0BD1 +// 0.895591 +0x72A3 +// 0.239867 +0x1EB4 +// 0.121983 +0x0F9D +// 0.018239 +0x0256 +// 0.569315 +0x48DF +// 0.135747 +0x1160 +// 0.009636 +0x013C +// 0.131290 +0x10CE +// 0.787711 +0x64D4 +// 0.150571 +0x1346 +// 0.695967 +0x5915 +// 0.001292 +0x002A +// 0.294988 +0x25C2 +// 0.366422 +0x2EE7 +// 0.404203 +0x33BD +// 0.617318 +0x4F04 +// 0.335955 +0x2B01 +// 0.679489 +0x56FA +// 0.048756 +0x063E +// 0.265301 +0x21F5 +// 0.152493 +0x1385 +// 0.778023 +0x6396 +// 0.518284 +0x4257 +// 0.061498 +0x07DF +// 0.005398 +0x00B1 +// 0.141333 +0x1217 +// 0.059908 +0x07AB +// 0.225651 +0x1CE2 +// 0.178523 +0x16DA +// 0.281695 +0x240F +// 0.241211 +0x1EE0 +// 0.073234 +0x0960 +// 0.175125 +0x166A +// 0.173112 +0x1629 +// 0.137790 +0x11A3 +// 0.221077 +0x1C4C +// 0.058320 +0x0777 +// 0.047494 +0x0614 +// 0.028713 +0x03AD +// 0.091165 +0x0BAB +// 0.542645 +0x4575 +// 0.276298 +0x235E +// 0.099668 +0x0CC2 +// 0.633290 +0x5110 +// 0.527961 +0x4394 +// 0.155344 +0x13E2 +// 0.112667 +0x0E6C +// 0.113186 +0x0E7D diff --git a/Testing/Patterns/DSP/Transform/TransformQ31/ComplexSamples1_q31.txt b/Testing/Patterns/DSP/Transform/TransformQ31/ComplexSamples1_q31.txt new file mode 100755 index 00000000..6f58da3d --- /dev/null +++ b/Testing/Patterns/DSP/Transform/TransformQ31/ComplexSamples1_q31.txt @@ -0,0 +1,1026 @@ +W +512 +// -0.208453 +0xE55168F6 +// -0.167419 +0xEA9200D9 +// 0.077808 +0x09F59CFB +// -0.517764 +0xBDB9EBD7 +// -0.010005 +0xFEB82744 +// -0.466109 +0xC4568CC3 +// -0.036304 +0xFB5A6466 +// 0.333432 +0x2AADE983 +// 0.179443 +0x16F7F9EE +// -0.197007 +0xE6C87B79 +// 0.498098 +0x3FC1B0F3 +// 0.014079 +0x01CD5851 +// -0.235432 +0xE1DD5B4B +// 0.422933 +0x3622AEA5 +// 0.039296 +0x0507A88C +// 0.207370 +0x1A8B1C59 +// -0.103818 +0xF2B6149A +// -0.024327 +0xFCE2DCF2 +// -0.492008 +0xC105DE55 +// -0.283432 +0xDBB88076 +// -0.027409 +0xFC7DD883 +// -0.518168 +0xBDACAEFF +// 0.085301 +0x0AEB2131 +// -0.406767 +0xCBEF12A4 +// 0.006417 +0x00D2482A +// 0.336960 +0x2B218422 +// -0.383318 +0xCEEF71A9 +// -0.171701 +0xEA05B141 +// -0.100406 +0xF325E5EC +// -0.385378 +0xCEABF136 +// 0.081665 +0x0A73FC7A +// 0.202988 +0x19FB85EE +// 0.103520 +0x0D4022E9 +// 0.131549 +0x10D697DD +// 0.009997 +0x014798C3 +// 0.304496 +0x26F9BADC +// 0.074624 +0x098D4721 +// -0.409050 +0xCBA442B4 +// 0.272668 +0x22E6C4D3 +// 0.165878 +0x153B7DAE +// -0.105958 +0xF26FF46F +// 0.310281 +0x27B74CCE +// -0.011692 +0xFE80E437 +// 0.034829 +0x0475470F +// 0.321405 +0x2923CA66 +// 0.028665 +0x03AB4C2F +// -0.210636 +0xE509E0DD +// 0.035131 +0x047F2CEA +// 0.287034 +0x24BD8894 +// 0.258510 +0x2116DA96 +// -0.151256 +0xECA3A471 +// 0.375378 +0x300C6499 +// 0.335498 +0x2AF19956 +// 0.246787 +0x1F96B624 +// 0.155741 +0x13EF5259 +// 0.088577 +0x0B567E74 +// 0.273307 +0x22FBB798 +// -0.104666 +0xF29A4AC7 +// 0.535481 +0x448AA056 +// -0.121425 +0xF075296B +// 0.193866 +0x18D099D3 +// -0.350371 +0xD3270E0C +// -0.036652 +0xFB4EFE08 +// -0.525134 +0xBCC86508 +// -0.332248 +0xD578E919 +// -0.040087 +0xFADE6EA5 +// -0.145505 +0xED60145C +// -0.200677 +0xE6503AB6 +// -0.659203 +0xAB9F3A5A +// 0.213480 +0x1B53508E +// 0.381835 +0x30DFFB74 +// 0.446838 +0x3931FC62 +// -0.092702 +0xF422580E +// -0.123090 +0xF03E99F8 +// -0.448762 +0xC68EF372 +// 0.014389 +0x01D77BE7 +// -0.559958 +0xB8534D93 +// 0.340039 +0x2B8666CA +// 0.376458 +0x302FC7BF +// -0.633019 +0xAEF93EA9 +// 0.054071 +0x06EBC928 +// -0.231510 +0xE25DDF90 +// -0.125716 +0xEFE885DB +// 0.192053 +0x18953233 +// 0.332808 +0x2A99766E +// 0.495307 +0x3F663A7A +// -0.408083 +0xCBC3F043 +// 0.112767 +0x0E6F28DB +// 0.113974 +0x0E96B2AD +// 0.103225 +0x0D367940 +// -0.058667 +0xF87D971F +// -0.142583 +0xEDBFDB39 +// 0.356611 +0x2DA56FB0 +// -0.006860 +0xFF1F39FB +// -0.063865 +0xF7D34243 +// -0.211272 +0xE4F50930 +// -0.586606 +0xB4EA1506 +// 0.058019 +0x076D2C40 +// 0.377291 +0x304B0EF6 +// -0.237271 +0xE1A11811 +// 0.166041 +0x1540D334 +// 0.198986 +0x19786329 +// -0.117680 +0xF0EFDC38 +// 0.265216 +0x21F29CF6 +// -0.520691 +0xBD59FDED +// 0.442506 +0x38A40A85 +// -0.610467 +0xB1DC385B +// 0.485104 +0x3E17E3AB +// 0.041167 +0x0544F683 +// 0.177195 +0x16AE507B +// -0.335172 +0xD51911E9 +// 0.205769 +0x1A56A035 +// 0.090444 +0x0B93AEA9 +// -0.254978 +0xDF5CDD57 +// -0.282097 +0xDBE4420B +// 0.173096 +0x1628014C +// 0.101624 +0x0D0201FF +// -0.198071 +0xE6A59A9A +// 0.212124 +0x1B26E44A +// 0.519522 +0x427FAFFE +// -0.375571 +0xCFED4730 +// 0.168473 +0x1590831C +// 0.568692 +0x48CAE7A8 +// -0.231119 +0xE26AAFD3 +// 0.472540 +0x3C7C31D0 +// -0.053625 +0xF922D296 +// 0.105988 +0x0D910135 +// -0.046301 +0xFA12CC56 +// 0.239568 +0x1EAA2A29 +// -0.407103 +0xCBE41098 +// 0.266851 +0x22282DE3 +// -0.433666 +0xC87DA553 +// 0.115475 +0x0EC7E508 +// -0.180321 +0xE8EB3BCE +// 0.035685 +0x049155D4 +// 0.260514 +0x21588738 +// 0.577313 +0x49E5633F +// -0.083932 +0xF541B86B +// 0.216700 +0x1BBCD5C2 +// 0.430033 +0x370B5204 +// -0.042474 +0xFA903726 +// 0.140909 +0x12095179 +// 0.064854 +0x084D25EA +// 0.112341 +0x0E612C8E +// 0.518461 +0x425CEEC0 +// -0.068337 +0xF740B7D2 +// 0.010421 +0x01557703 +// 0.474382 +0x3CB88E85 +// -0.158429 +0xEBB89CEA +// -0.168689 +0xEA686A23 +// 0.045165 +0x05C7FAC8 +// 0.084883 +0x0ADD6F73 +// -0.433853 +0xC87784B4 +// -0.138789 +0xEE3C27FB +// -0.174155 +0xE9B54BDE +// -0.390737 +0xCDFC585D +// -0.200482 +0xE6569A47 +// -0.166884 +0xEAA38DF1 +// 0.381234 +0x30CC4868 +// -0.043888 +0xFA61DEF3 +// 0.021344 +0x02BB68A1 +// 0.315992 +0x28726B06 +// -0.041125 +0xFABC67BF +// -0.723608 +0xA360D1ED +// -0.119489 +0xF0B4972A +// -0.368019 +0xD0E4C3AB +// 0.451887 +0x39D76CC3 +// -0.356677 +0xD2586BC3 +// 0.373598 +0x2FD211C1 +// -0.230604 +0xE27B906A +// 0.293216 +0x25881B0D +// 0.087618 +0x0B371264 +// -0.650135 +0xACC85F0F +// -0.225481 +0xE3237432 +// -0.222711 +0xE37E33FB +// 0.096464 +0x0C58EC19 +// 0.022434 +0x02DF1ACE +// 0.538383 +0x44E9BB45 +// 0.070883 +0x0912AFCA +// -0.107456 +0xF23EE521 +// 0.137301 +0x119311E3 +// -0.316683 +0xD776EDF1 +// 0.204201 +0x1A23416E +// -0.408394 +0xCBB9BEC0 +// 0.110678 +0x0E2AB5B8 +// 0.563558 +0x4822AB80 +// -0.672747 +0xA9E369E7 +// -0.421101 +0xCA195C74 +// -0.401251 +0xCCA3CDFB +// 0.044385 +0x05AE6679 +// 0.015707 +0x0202AF39 +// 0.081324 +0x0A68D5BC +// -0.090767 +0xF461C1B7 +// -0.163315 +0xEB187E12 +// 0.276306 +0x235DFBA5 +// 0.502285 +0x404ADCFB +// -0.400803 +0xCCB27D71 +// 0.485947 +0x3E338639 +// -0.418668 +0xCA6913B5 +// 0.109156 +0x0DF8D09D +// -0.348042 +0xD3735E71 +// -0.211855 +0xE4E1EEE3 +// 0.257040 +0x20E6B209 +// -0.018803 +0xFD97DE6D +// -0.011544 +0xFE85B82E +// -0.154807 +0xEC2F46A2 +// 0.052774 +0x06C14E0B +// 0.399608 +0x33265AF4 +// -0.181513 +0xE8C430B9 +// 0.215203 +0x1B8BC4FD +// -0.401956 +0xCC8CB0F2 +// -0.213846 +0xE4A0B192 +// 0.466542 +0x3BB7A3D7 +// -0.127760 +0xEFA58F47 +// -0.054893 +0xF8F94736 +// -0.060857 +0xF835D8CB +// -0.060748 +0xF83968E3 +// 0.258028 +0x21071231 +// 0.261963 +0x2188019E +// 0.085877 +0x0AFE07B1 +// 0.245913 +0x1F7A14BC +// -0.282164 +0xDBE20EA2 +// -0.600877 +0xB3167240 +// -0.437189 +0xC80A3145 +// 0.232807 +0x1DCC9EB0 +// -0.450443 +0xC657E39F +// 0.161277 +0x14A4B758 +// -0.319627 +0xD7167405 +// 0.234958 +0x1E13192A +// 0.296925 +0x2601A74C +// -0.152605 +0xEC777324 +// 0.237265 +0x1E5EB364 +// 0.337422 +0x2B30A349 +// -0.085852 +0xF502D0EE +// 0.042672 +0x0576475E +// 0.399525 +0x3323A32D +// -0.786043 +0x9B62F517 +// -0.425974 +0xC979B290 +// -0.408510 +0xCBB5F07A +// 0.241844 +0x1EF4BADE +// -0.326295 +0xD63BF43B +// 0.590105 +0x4B888DCB +// 0.574102 +0x497C2F22 +// -0.437450 +0xC801A54A +// 0.161703 +0x14B2ADF7 +// -0.175182 +0xE993A46F +// -0.107663 +0xF2381BB0 +// -0.222315 +0xE38B2C26 +// 0.211514 +0x1B12E7C7 +// 0.110211 +0x0E1B6837 +// -0.310679 +0xD83BAE7D +// -0.085912 +0xF500D77E +// 0.016541 +0x021E0064 +// 0.386827 +0x31838B73 +// -0.559381 +0xB866303B +// 0.251706 +0x2037E71C +// 0.230037 +0x1D71DD34 +// -0.166058 +0xEABE9B36 +// -0.403811 +0xCC4FEE8E +// 0.154413 +0x13C3CCA2 +// -0.054523 +0xF90560EE +// -0.020586 +0xFD5D6D8C +// -0.465335 +0xC46FEAC6 +// -0.377716 +0xCFA7023C +// -0.266909 +0xDDD5EF4B +// 0.243458 +0x1F29A2BE +// -0.033800 +0xFBAC72C9 +// -0.010603 +0xFEA48EF7 +// 0.205095 +0x1A408DBD +// -0.028082 +0xFC67D22D +// 0.159486 +0x146A0573 +// -0.077613 +0xF610C91F +// 0.726235 +0x5CF5433E +// -0.020204 +0xFD69F67B +// 0.363566 +0x2E895873 +// -0.233295 +0xE223638F +// -0.108823 +0xF2121A47 +// -0.246292 +0xE0797D1D +// -0.321849 +0xD6CDA575 +// 0.044486 +0x05B1B653 +// -0.137952 +0xEE57993D +// -0.078209 +0xF5FD3DFF +// -0.194351 +0xE71F7E56 +// -0.643513 +0xADA15C34 +// -0.099359 +0xF348305F +// 0.059392 +0x079A25C4 +// 0.155523 +0x13E82B5F +// -0.808762 +0x987A7B9E +// 0.410415 +0x34887BEC +// 0.174419 +0x165359FA +// 0.314919 +0x284F44F3 +// 0.469718 +0x3C1FBA16 +// -0.007521 +0xFF098A20 +// -0.205221 +0xE5BB5281 +// 0.517602 +0x4240C6F1 +// -0.140812 +0xEDF9DC0D +// 0.532814 +0x44333D5E +// -0.096710 +0xF39F0007 +// -0.579426 +0xB5D560B0 +// -0.238729 +0xE1715751 +// -0.161557 +0xEB521CB1 +// -0.282484 +0xDBD79455 +// 0.613021 +0x4E777A8C +// -0.038632 +0xFB0E1A84 +// -0.440185 +0xC7A803DD +// -0.368466 +0xD0D6199A +// 0.142370 +0x12392D10 +// -0.133573 +0xEEE712B8 +// 0.219062 +0x1C0A39A9 +// 0.300817 +0x26812974 +// -0.376065 +0xCFDD1A80 +// 0.178237 +0x16D07981 +// 0.044754 +0x05BA7C1D +// 0.109314 +0x0DFE000B +// 0.403965 +0x33B52210 +// -0.308336 +0xD8887321 +// 0.218292 +0x1BF0FA63 +// 0.012069 +0x018B78D2 +// -0.171193 +0xEA165599 +// -0.106730 +0xF256A7EA +// -0.216296 +0xE45067FF +// 0.038774 +0x04F68D9C +// 0.513175 +0x41AFB763 +// 0.402501 +0x338527CC +// 0.224989 +0x1CCC6F22 +// -0.270692 +0xDD59F2F5 +// 0.097815 +0x0C85352B +// 0.450123 +0x399DA071 +// -0.049195 +0xF9B3FCAD +// -0.145191 +0xED6A6352 +// -0.101645 +0xF2FD4C70 +// 0.260003 +0x2147C97E +// -0.616817 +0xB10C244D +// -0.151685 +0xEC9599D6 +// 0.011747 +0x0180EF40 +// -0.196562 +0xE6D70E02 +// -0.009471 +0xFEC9AB03 +// 0.266825 +0x222754AB +// -0.285002 +0xDB85108F +// -0.407355 +0xCBDBCCC4 +// -0.204059 +0xE5E16936 +// -0.139337 +0xEE2A3849 +// -0.353457 +0xD2C1E8AB +// -0.220465 +0xE3C7CF45 +// 0.318676 +0x28CA60B4 +// -0.190358 +0xE7A25755 +// 0.230794 +0x1D8AA91F +// 0.459704 +0x3AD794A7 +// 0.296003 +0x25E36FE5 +// -0.158857 +0xEBAA96B8 +// 0.179146 +0x16EE4029 +// 0.453675 +0x3A1208DC +// -0.074622 +0xF672CCCE +// -0.671566 +0xAA0A1ED6 +// 0.214326 +0x1B6F075F +// -0.054205 +0xF90FD2AF +// 0.017032 +0x022E1AFE +// -0.879619 +0x8F68A661 +// 0.200843 +0x19B536E8 +// 0.011324 +0x0173116B +// 0.406760 +0x3410B64F +// 0.368224 +0x2F21F9FB +// 0.600276 +0x4CD5D4E1 +// 0.052604 +0x06BBB882 +// 0.434094 +0x379061B4 +// 0.000668 +0x0015E62E +// 0.705681 +0x5A53C19B +// 0.241823 +0x1EF40BD4 +// 0.109395 +0x0E00A541 +// 0.199713 +0x19903438 +// -0.364970 +0xD148ACC2 +// -0.175035 +0xE9987814 +// 0.278601 +0x23A93542 +// -0.314272 +0xD7C5F2FC +// 0.125194 +0x10065774 +// 0.422899 +0x36219106 +// -0.269734 +0xDD795A3C +// 0.223922 +0x1CA9791B +// 0.233702 +0x1DE9F331 +// -0.493575 +0xC0D286A8 +// 0.332853 +0x2A9AEB3B +// -0.069527 +0xF719B99F +// 0.718097 +0x5BEA9956 +// 0.480270 +0x3D797EC2 +// -0.199852 +0xE66B3C53 +// 0.525658 +0x4348C3BD +// -0.037789 +0xFB29B6C9 +// 0.457929 +0x3A9D6A79 +// 0.245226 +0x1F639207 +// 0.627995 +0x506227D2 +// 0.477951 +0x3D2D7F34 +// -0.039408 +0xFAF4AEBB +// 0.118170 +0x0F202F2C +// 0.165009 +0x151F0343 +// -0.336112 +0xD4FA463F +// 0.192870 +0x18AFF44A +// -0.436644 +0xC81C0DDE +// 0.168358 +0x158CC107 +// -0.701137 +0xA64124F9 +// -0.113060 +0xF1873D9C +// 0.041987 +0x055FD855 +// -0.310265 +0xD8493BD3 +// -0.168910 +0xEA612900 +// 0.251956 +0x204019B7 +// -0.962833 +0x84C1E2F8 +// 0.264725 +0x21E28622 +// -0.319277 +0xD721EE55 +// -0.180488 +0xE8E5C5CE +// -0.526422 +0xBC9E3174 +// -0.086750 +0xF4E562A4 +// -0.279543 +0xDC37EFBF +// 0.027172 +0x037A5C4E +// 0.389611 +0x31DEC1F3 +// -0.379050 +0xCF7B4D5D +// -0.427275 +0xC94F0CDB +// 0.356158 +0x2D9696FA +// -0.203367 +0xE5F811E4 +// -0.115129 +0xF1437092 +// 0.281189 +0x23FE0351 +// -0.469628 +0xC3E33940 +// 0.221062 +0x1C4BC1E2 +// -0.430762 +0xC8DCC7C3 +// -0.484600 +0xC1F8A2EC +// -0.075552 +0xF6545127 +// -0.127470 +0xEFAF0F36 +// 0.346313 +0x2C53F9F7 +// -0.644797 +0xAD774EE0 +// 0.096852 +0x0C65A5D4 +// 1.000000 +0x7FFFFFFF +// -0.008421 +0xFEEC10A1 +// 0.316948 +0x2891C3CC +// -0.101735 +0xF2FA5A2E +// -0.146018 +0xED4F4A50 +// -0.265478 +0xDE04CF73 +// -0.500179 +0xBFFA221D +// 0.437313 +0x37F9DB26 +// -0.127596 +0xEFAAF233 +// -0.387350 +0xCE6B4D03 +// 0.310929 +0x27CC8228 +// -0.085986 +0xF4FE6999 +// -0.081926 +0xF5837090 +// -0.006861 +0xFF1F2A15 +// 0.057396 +0x0758BE02 +// -0.014600 +0xFE21926C +// -0.133151 +0xEEF4E5A9 +// -0.124152 +0xF01BC6A4 +// -0.046414 +0xFA0F1A0C +// -0.213335 +0xE4B16F8C +// 0.092484 +0x0BD684C0 +// 0.062824 +0x080AA1B6 +// 0.721739 +0x5C61F58E +// 0.492455 +0x3F08C359 +// -0.281461 +0xDBF91357 +// -0.640461 +0xAE055C4D +// -0.355622 +0xD27AF823 +// 0.335842 +0x2AFCDCE5 +// 0.549021 +0x46465272 +// 0.537679 +0x44D2AE57 +// -0.207003 +0xE580EE69 +// 0.402436 +0x338309D7 +// 0.153567 +0x13A81807 +// -0.058206 +0xF88CB373 +// -0.259310 +0xDECEEA79 +// 0.474651 +0x3CC16061 +// -0.222550 +0xE3837CB8 +// 0.244245 +0x1F43683C +// -0.626540 +0xAFCD88EF +// -0.235304 +0xE1E18EB8 +// 0.110720 +0x0E2C12AB +// 0.057462 +0x075AE7BD +// -0.300482 +0xD989D169 +// -0.665629 +0xAACCA744 +// 0.138407 +0x11B75042 +// -0.374088 +0xD01DE0C2 +// 0.009843 +0x01428844 +// 0.069119 +0x08D8E008 +// -0.173210 +0xE9D43E20 +// 0.103895 +0x0D4C6FD0 +// 0.237539 +0x1E67A9E9 +// -0.102240 +0xF2E9CCC2 +// 0.330521 +0x2A4E867F +// -0.516067 +0xBDF18675 +// 0.334780 +0x2ADA15EA +// -0.151122 +0xECA80A77 +// -0.169699 +0xEA47499D +// -0.567269 +0xB763BD38 +// -0.797760 +0x99E300AA +// 0.267055 +0x222EDA99 +// 0.413312 +0x34E764AA +// 0.020853 +0x02AB4F79 +// 0.646381 +0x52BC9A8B +// 0.447448 +0x3945F8FE +// 0.354428 +0x2D5DE34B +// 0.308919 +0x278AA9E9 +// -0.125034 +0xEFFEDEFD +// -0.470499 +0xC3C6AD35 +// -0.157540 +0xEBD5BE3B +// 0.193832 +0x18CF78F5 +// -0.349452 +0xD345258A +// 0.112104 +0x0E596F05 +// 0.313317 +0x281AC3BE +// 0.463692 +0x3B5A43CC +// 0.155488 +0x13E709C0 +// 0.501596 +0x40344837 +// -0.078724 +0xF5EC60CC +// 0.160813 +0x149582A1 +// 0.368686 +0x2F31179E +// -0.482274 +0xC244D672 +// 0.333476 +0x2AAF5B88 +// -0.387470 +0xCE6760FF +// 0.143478 +0x125D795A +// 0.287590 +0x24CFBDF4 diff --git a/Testing/Patterns/DSP/Transform/TransformQ31/RealSamples1_q31.txt b/Testing/Patterns/DSP/Transform/TransformQ31/RealSamples1_q31.txt new file mode 100755 index 00000000..f689c015 --- /dev/null +++ b/Testing/Patterns/DSP/Transform/TransformQ31/RealSamples1_q31.txt @@ -0,0 +1,4098 @@ +W +2048 +// 0.721254 +0x5C520983 +// 0.028134 +0x0399E648 +// 0.016067 +0x020E7F16 +// 0.193742 +0x18CC8A37 +// 0.491422 +0x3EE6ED43 +// 0.127298 +0x104B4A7B +// 0.596085 +0x4C4C8780 +// 0.285406 +0x24882E97 +// 0.494950 +0x3F5A894F +// 0.064819 +0x084BFF8B +// 0.392273 +0x323600A6 +// 0.031935 +0x0416759C +// 0.153479 +0x13A5341A +// 0.255383 +0x20B06602 +// 0.120662 +0x0F71D649 +// 0.033267 +0x044213A9 +// 0.057058 +0x074DA924 +// 0.287746 +0x24D4DE3C +// 0.266452 +0x221B1589 +// 0.135443 +0x11563465 +// 0.059262 +0x0795E602 +// 0.184988 +0x17ADB057 +// 0.026966 +0x0373A268 +// 0.115476 +0x0EC7E96F +// 0.130610 +0x10B7D5C4 +// 0.174399 +0x1652B1D9 +// 0.243411 +0x1F281375 +// 0.327236 +0x29E2DEAB +// 0.526383 +0x43608877 +// 0.350366 +0x2CD8C859 +// 0.293262 +0x2589993C +// 0.049967 +0x066553D6 +// 0.178376 +0x16D50565 +// 0.220084 +0x1C2BB63C +// 0.097590 +0x0C7DD04F +// 0.026175 +0x0359B094 +// 0.069472 +0x08E4773E +// 0.139781 +0x11E4581A +// 0.015604 +0x01FF4F35 +// 0.319366 +0x28E0F917 +// 0.157343 +0x1423D0D5 +// 0.341222 +0x2BAD25E5 +// 0.285622 +0x248F454A +// 0.243177 +0x1F206E72 +// 0.021851 +0x02CC01CD +// 0.544809 +0x45BC496A +// 0.073972 +0x0977EE32 +// 0.256645 +0x20D9BEC7 +// 0.113497 +0x0E870DF8 +// 0.438654 +0x3825CECC +// 0.302901 +0x26C57412 +// 0.106842 +0x0DAD0274 +// 0.062730 +0x08078A69 +// 0.641225 +0x5213A753 +// 0.163092 +0x14E032DB +// 0.018728 +0x0265B184 +// 0.165253 +0x1526FF9F +// 0.543262 +0x45899CD4 +// 0.066160 +0x0877ECFC +// 0.000026 +0x0000DAD9 +// 0.317243 +0x289B6CDA +// 0.121076 +0x0F7F6DE0 +// 0.249007 +0x1FDF77D1 +// 0.050285 +0x066FBE9A +// 0.004435 +0x00914FDB +// 0.009366 +0x0132E4F1 +// 0.125288 +0x10096BCC +// 0.137308 +0x119351C2 +// 0.225039 +0x1CCE12DA +// 0.572509 +0x4947FD6E +// 0.188534 +0x1821DFA5 +// 0.038650 +0x04F27856 +// 0.108635 +0x0DE7C1EB +// 0.037603 +0x04D02E85 +// 0.105704 +0x0D87B3F0 +// 0.050997 +0x0687147B +// 0.311106 +0x27D2545B +// 0.061637 +0x07E3B6D4 +// 0.125237 +0x1007C1E7 +// 0.122104 +0x0FA11909 +// 0.234733 +0x1E0BBD19 +// 0.199129 +0x197D0D72 +// 0.031315 +0x04022414 +// 0.278454 +0x23A46350 +// 0.205740 +0x1A55B096 +// 0.276417 +0x23619E97 +// 0.094091 +0x0C0B2BFF +// 0.008829 +0x01214F54 +// 0.183241 +0x177473B7 +// 0.177297 +0x16B1ADD4 +// 0.109286 +0x0DFD18F7 +// 0.304900 +0x2706F26E +// 0.213647 +0x1B58C9CA +// 0.247163 +0x1FA30CDF +// 0.073251 +0x09604C37 +// 0.043291 +0x058A9176 +// 0.120043 +0x0F5D8FA0 +// 0.224745 +0x1CC46FBB +// 0.096155 +0x0C4ED17D +// 0.050382 +0x0672E967 +// 0.001653 +0x00362C73 +// 0.250956 +0x201F571B +// 0.126867 +0x103D30CF +// 0.058842 +0x07882313 +// 0.356861 +0x2DADA033 +// 0.299957 +0x2664FE9B +// 0.250507 +0x20109CB0 +// 0.123505 +0x0FCF0190 +// 0.370199 +0x2F62B021 +// 0.035449 +0x04899909 +// 0.141221 +0x121388E0 +// 0.037577 +0x04CF5689 +// 0.025347 +0x033E8E6D +// 0.049547 +0x06578F80 +// 0.075489 +0x09A9A21C +// 0.067525 +0x08A4A6D6 +// 0.109410 +0x0E0123C2 +// 0.155733 +0x13EF0C46 +// 0.464980 +0x3B847822 +// 0.311119 +0x27D2C2D9 +// 0.610354 +0x4E201686 +// 0.879397 +0x709017E4 +// 0.290600 +0x2532631C +// 0.638259 +0x51B277E1 +// 0.254193 +0x208968ED +// 0.430482 +0x371A0CE5 +// 0.137966 +0x11A8DD10 +// 0.571414 +0x49241898 +// 0.343764 +0x2C0075B1 +// 0.407978 +0x3438A161 +// 0.008234 +0x010DCEA8 +// 0.184629 +0x17A1EBFB +// 0.024709 +0x0329AADF +// 0.034389 +0x0466DA84 +// 0.069459 +0x08E40BA9 +// 0.320693 +0x290C7493 +// 0.395731 +0x32A74D27 +// 0.015324 +0x01F62370 +// 0.557718 +0x47634C65 +// 0.031629 +0x040C6E64 +// 0.205616 +0x1A519D32 +// 0.062917 +0x080DA601 +// 0.278693 +0x23AC377C +// 0.367795 +0x2F13E562 +// 0.404883 +0x33D33812 +// 0.111281 +0x0E3E719E +// 0.621193 +0x4F833FDD +// 0.006356 +0x00D044C1 +// 0.026747 +0x036C70B1 +// 0.200831 +0x19B4D3CC +// 0.468236 +0x3BEF2916 +// 0.011090 +0x016B629E +// 0.079556 +0x0A2EE23A +// 0.313116 +0x28142E0E +// 0.468777 +0x3C00E644 +// 0.310959 +0x27CD82EE +// 0.147993 +0x12F16B13 +// 0.056543 +0x073CC93C +// 0.302854 +0x26C3EA22 +// 0.217585 +0x1BD9D0A1 +// 0.038471 +0x04EC9CBE +// 0.240020 +0x1EB8FAE5 +// 0.439861 +0x384D5BE1 +// 0.104983 +0x0D701969 +// 0.275804 +0x234D8B3D +// 0.129732 +0x109B12A4 +// 0.063375 +0x081CA899 +// 0.050649 +0x067BAD53 +// 0.176271 +0x16901036 +// 0.027307 +0x037ECE99 +// 0.210043 +0x1AE2ACDF +// 0.123655 +0x0FD3EE8A +// 0.361988 +0x2E559FBF +// 0.359425 +0x2E01A1C4 +// 0.054723 +0x07012674 +// 0.038401 +0x04EA5505 +// 0.210213 +0x1AE83FE9 +// 0.340489 +0x2B952732 +// 0.217873 +0x1BE343D0 +// 0.087215 +0x0B29DCF6 +// 0.197132 +0x193B9C29 +// 0.248119 +0x1FC25BB1 +// 0.096400 +0x0C56D64D +// 0.153929 +0x13B3EEE4 +// 0.078379 +0x0A085542 +// 0.296454 +0x25F237B3 +// 0.092962 +0x0BE62F9B +// 0.108964 +0x0DF284BE +// 0.592428 +0x4BD4B0B9 +// 0.184320 +0x1797C976 +// 0.050088 +0x06694B50 +// 0.148927 +0x13100B49 +// 0.451780 +0x39D3ECF6 +// 0.083764 +0x0AB8C650 +// 0.240372 +0x1EC47E4C +// 0.071861 +0x0932C1A4 +// 0.219127 +0x1C0C5CF7 +// 0.129980 +0x10A33351 +// 0.162931 +0x14DAEB39 +// 0.184626 +0x17A1D407 +// 0.072157 +0x093C728A +// 0.005421 +0x00B1A5AD +// 0.266133 +0x2210A550 +// 0.197667 +0x194D2767 +// 0.144758 +0x12876F49 +// 0.088204 +0x0B4A41D6 +// 0.247293 +0x1FA74DD5 +// 0.118861 +0x0F36D93A +// 0.198406 +0x19655F16 +// 0.379137 +0x30879235 +// 0.095673 +0x0C3F05D1 +// 0.121013 +0x0F7D590A +// 0.470817 +0x3C43BB65 +// 0.341596 +0x2BB969CE +// 0.078505 +0x0A0C73EC +// 0.464494 +0x3B748B62 +// 0.024584 +0x0325901D +// 0.206140 +0x1A62CBF7 +// 0.460883 +0x3AFE3A46 +// 0.052119 +0x06ABD9E3 +// 0.063372 +0x081C8EFC +// 0.125170 +0x1005932D +// 0.364669 +0x2EAD7AC6 +// 0.222785 +0x1C843A09 +// 0.370770 +0x2F756137 +// 0.123256 +0x0FC6D7A8 +// 0.333506 +0x2AB05389 +// 0.046122 +0x05E75206 +// 0.203176 +0x1A01AD3B +// 0.084645 +0x0AD5A70D +// 0.084200 +0x0AC70CC8 +// 0.078154 +0x0A00F564 +// 0.131048 +0x10C62A21 +// 0.267434 +0x223B4878 +// 0.141351 +0x1217CD4A +// 0.393440 +0x325C4142 +// 0.194203 +0x18DBA588 +// 0.179726 +0x17014549 +// 0.096861 +0x0C65F208 +// 0.379101 +0x308665D4 +// 0.087409 +0x0B30347B +// 0.379191 +0x308952BE +// 0.450398 +0x39A6A300 +// 0.161074 +0x149E0F48 +// 0.139062 +0x11CCC8DA +// 0.228689 +0x1D45B1D8 +// 0.251209 +0x20279A40 +// 0.318615 +0x28C85EA1 +// 0.209511 +0x1AD14587 +// 0.123517 +0x0FCF6951 +// 0.252008 +0x2041CA9F +// 0.691858 +0x588ECED9 +// 0.525342 +0x433E6A09 +// 0.151506 +0x13648E33 +// 0.342770 +0x2BDFE73A +// 0.224158 +0x1CB135D0 +// 0.055023 +0x070AFCA1 +// 0.770875 +0x62AC06A9 +// 0.253795 +0x207C577B +// 0.332486 +0x2A8EEA63 +// 0.095492 +0x0C39120F +// 0.031860 +0x0413FBA7 +// 0.096093 +0x0C4CC9FB +// 0.296068 +0x25E58FCC +// 0.422660 +0x3619B5D3 +// 0.123685 +0x0FD4EC7E +// 0.237461 +0x1E6521E5 +// 0.016207 +0x02130ED6 +// 0.432434 +0x3759FD37 +// 0.019894 +0x028BE28A +// 0.317307 +0x289D8822 +// 0.382748 +0x30FDE39A +// 0.163234 +0x14E4DE05 +// 0.283102 +0x243CAD37 +// 0.271546 +0x22C201C9 +// 0.051693 +0x069DDD16 +// 0.360814 +0x2E2F2631 +// 0.077820 +0x09F600DC +// 0.438111 +0x38140828 +// 0.060808 +0x07C88DE9 +// 0.177880 +0x16C4C869 +// 0.092606 +0x0BDA8764 +// 0.052702 +0x06BEF2FA +// 0.198756 +0x1970D2BA +// 0.415394 +0x352B9E9D +// 0.004761 +0x009BFFD0 +// 0.449310 +0x3982FAA9 +// 0.120866 +0x0F7887EF +// 0.240000 +0x1EB85396 +// 0.139984 +0x11EB002E +// 0.196902 +0x193419C6 +// 0.243522 +0x1F2BBC73 +// 0.134820 +0x1141C8A8 +// 0.330107 +0x2A40F337 +// 0.126036 +0x1021F47D +// 0.278219 +0x239CACCA +// 0.247964 +0x1FBD470F +// 0.078490 +0x0A0BF711 +// 0.265346 +0x21F6D821 +// 0.188476 +0x181FFA14 +// 0.068394 +0x08C125BC +// 0.508304 +0x41101B0B +// 0.577553 +0x49ED3DFB +// 0.085428 +0x0AEF4CFE +// 0.456414 +0x3A6BCA0C +// 0.213419 +0x1B514DED +// 0.267452 +0x223BDDFF +// 0.271758 +0x22C8F58D +// 0.115380 +0x0EC4C4FA +// 0.349616 +0x2CC0369C +// 0.740241 +0x5EC0341B +// 0.505903 +0x40C171E1 +// 0.133798 +0x11204743 +// 0.011053 +0x016A314F +// 0.305473 +0x2719BBF8 +// 0.113370 +0x0E82EA3D +// 0.280460 +0x23E61E79 +// 0.055190 +0x07107365 +// 0.440813 +0x386C91E1 +// 0.361397 +0x2E424278 +// 0.233917 +0x1DF10156 +// 0.493202 +0x3F213B77 +// 0.323960 +0x29778442 +// 0.107161 +0x0DB771E4 +// 0.133911 +0x1123FD91 +// 0.371522 +0x2F8E05FD +// 0.457823 +0x3A99F105 +// 0.226941 +0x1D0C6AF0 +// 0.138108 +0x11AD8343 +// 0.064885 +0x084E2726 +// 0.038459 +0x04EC37C2 +// 0.242264 +0x1F028523 +// 0.167752 +0x1578E1BB +// 0.049286 +0x064F032F +// 0.348347 +0x2C96A670 +// 0.190442 +0x186066DC +// 0.223224 +0x1C9297CC +// 0.187306 +0x17F9A3BC +// 0.201423 +0x19C83CE6 +// 0.462744 +0x3B3B2F91 +// 0.362611 +0x2E6A094F +// 0.094719 +0x0C1FC01C +// 0.047338 +0x060F2BA8 +// 0.042840 +0x057BC416 +// 0.224494 +0x1CBC3A61 +// 0.461043 +0x3B037385 +// 0.041386 +0x054C26A6 +// 0.312618 +0x2803E04C +// 0.552361 +0x46B3C57D +// 0.203824 +0x1A16E9B8 +// 0.581852 +0x4A7A23D0 +// 0.109401 +0x0E00D7CE +// 0.083368 +0x0AABCED7 +// 0.312436 +0x27FDE50F +// 0.353198 +0x2D35943A +// 0.151784 +0x136DAB3B +// 0.674590 +0x5658F4DC +// 0.375467 +0x300F4E88 +// 0.033078 +0x043BE39E +// 0.435302 +0x37B7FB6B +// 0.044135 +0x05A63A0A +// 0.069267 +0x08DDBACA +// 0.002350 +0x004CFFA6 +// 0.174061 +0x1647A106 +// 0.116989 +0x0EF98198 +// 0.413565 +0x34EFB3B7 +// 0.252886 +0x205E9150 +// 0.165772 +0x15380666 +// 0.143844 +0x1269775F +// 0.085308 +0x0AEB623A +// 0.284862 +0x24765AA5 +// 0.353676 +0x2D45442D +// 0.087090 +0x0B25C56A +// 0.263402 +0x21B72647 +// 0.311721 +0x27E67D63 +// 0.256027 +0x20C57D7B +// 0.030895 +0x03F45A22 +// 0.088459 +0x0B52A08A +// 0.299456 +0x26548F6C +// 0.103534 +0x0D409CE8 +// 0.104538 +0x0D617CA9 +// 0.046400 +0x05F0733A +// 0.038226 +0x04E49834 +// 0.258934 +0x2124BBE4 +// 0.072568 +0x0949E975 +// 0.192896 +0x18B0D474 +// 0.083327 +0x0AAA7704 +// 0.085137 +0x0AE5C1FB +// 0.189075 +0x18339AED +// 0.556555 +0x473D3110 +// 0.086662 +0x0B17C195 +// 0.088751 +0x0B5C3255 +// 0.200169 +0x199F2412 +// 0.293926 +0x259F5D7A +// 0.024953 +0x0331AB0D +// 0.033011 +0x0439B0FD +// 0.106361 +0x0D9D3BDC +// 0.047877 +0x0620D5B0 +// 0.164410 +0x150B635A +// 0.271835 +0x22CB7B6D +// 0.108175 +0x0DD8AE77 +// 0.253032 +0x206357E2 +// 0.089192 +0x0B6AA453 +// 0.330872 +0x2A5A01F0 +// 0.335516 +0x2AF22FE1 +// 0.251979 +0x2040D7FC +// 0.106840 +0x0DACED3D +// 0.407830 +0x3433C7DF +// 0.100336 +0x0CD7D17D +// 0.050453 +0x06753A4E +// 0.272527 +0x22E22D59 +// 0.130663 +0x10B98F55 +// 0.427310 +0x36B2143B +// 0.017773 +0x0246632C +// 0.106171 +0x0D970057 +// 0.557647 +0x4760F936 +// 0.198382 +0x196491C1 +// 0.274233 +0x231A12F3 +// 0.475662 +0x3CE27FF6 +// 0.253897 +0x207FB5FD +// 0.268931 +0x226C5376 +// 0.409891 +0x34775112 +// 0.126120 +0x1024B132 +// 0.522533 +0x42E25EDD +// 0.118577 +0x0F2D89B0 +// 0.178987 +0x16E909DA +// 0.515679 +0x4201C27B +// 0.321079 +0x29192167 +// 0.523171 +0x42F742BA +// 0.102740 +0x0D2697B9 +// 0.177847 +0x16C3B279 +// 0.084065 +0x0AC2A5EF +// 0.216153 +0x1BAAE608 +// 0.070532 +0x09073209 +// 0.396716 +0x32C79348 +// 0.293348 +0x258C6DEC +// 0.412821 +0x34D74DF3 +// 0.105286 +0x0D7A04CE +// 0.303919 +0x26E6D075 +// 0.104646 +0x0D6509B5 +// 0.246678 +0x1F932444 +// 0.424674 +0x365BB7B8 +// 0.058303 +0x0776767B +// 0.104030 +0x0D50DE44 +// 0.131990 +0x10E50B20 +// 0.033112 +0x043D02BF +// 0.075633 +0x09AE5A5D +// 0.127571 +0x105442CC +// 0.078636 +0x0A10C240 +// 0.044946 +0x05C0C7EA +// 0.261454 +0x2177563A +// 0.366071 +0x2EDB6CCE +// 0.031320 +0x04024ABA +// 0.075039 +0x099AE2CA +// 0.107923 +0x0DD06FA5 +// 0.281280 +0x2400FD25 +// 0.154632 +0x13CAF855 +// 0.353043 +0x2D307FE1 +// 0.262944 +0x21A82402 +// 0.876323 +0x702B5D6D +// 0.180116 +0x170E0CC0 +// 0.041587 +0x0552BCA1 +// 0.061505 +0x07DF64E8 +// 0.295589 +0x25D5DEE8 +// 0.565142 +0x48569685 +// 0.206689 +0x1A74CC82 +// 0.227919 +0x1D2C71B9 +// 0.149201 +0x13190420 +// 0.535261 +0x44836E0D +// 0.513367 +0x41B602FA +// 0.216038 +0x1BA7208C +// 0.272517 +0x22E1D62D +// 0.299385 +0x26523CE7 +// 0.040646 +0x0533E681 +// 0.209255 +0x1AC8DBD5 +// 0.328328 +0x2A06A75E +// 0.034031 +0x045B24C4 +// 0.216402 +0x1BB30E76 +// 0.193476 +0x18C3D44E +// 0.208301 +0x1AA998A9 +// 0.383771 +0x311F6A83 +// 0.333226 +0x2AA7269E +// 0.155486 +0x13E6F3F6 +// 0.055361 +0x0716125F +// 0.084419 +0x0ACE4156 +// 0.059404 +0x079A8D0E +// 0.428666 +0x36DE85D0 +// 0.202637 +0x19F000A9 +// 0.448088 +0x395AF579 +// 0.075158 +0x099ECA07 +// 0.299343 +0x2650DCB0 +// 0.312268 +0x27F8662F +// 0.338835 +0x2B5EF2B4 +// 0.044041 +0x05A3211B +// 0.240918 +0x1ED6671D +// 0.158579 +0x144C5497 +// 0.330344 +0x2A48B42E +// 0.467623 +0x3BDB11C0 +// 0.178948 +0x16E7C0ED +// 0.151789 +0x136DD4C8 +// 0.253567 +0x2074E2F1 +// 0.048247 +0x062CF6DF +// 0.216448 +0x1BB48E83 +// 0.471964 +0x3C694D4F +// 0.584801 +0x4ADAC061 +// 0.082469 +0x0A8E5B19 +// 0.053645 +0x06DDD2FD +// 0.168192 +0x15874FDA +// 0.079832 +0x0A37EE91 +// 0.411780 +0x34B53872 +// 0.051728 +0x069F01D5 +// 0.247006 +0x1F9DE894 +// 0.249293 +0x1FE8D3A8 +// 0.120927 +0x0F7A8BF1 +// 0.092573 +0x0BD96E82 +// 0.257220 +0x20EC9832 +// 0.282321 +0x242317D9 +// 0.180851 +0x17261CD9 +// 0.187723 +0x18074D95 +// 0.290297 +0x252876A1 +// 0.188520 +0x18216FD5 +// 0.242073 +0x1EFC438D +// 0.227854 +0x1D2A53EE +// 0.449625 +0x398D52E0 +// 0.060853 +0x07CA0A2F +// 0.114484 +0x0EA767A5 +// 0.000110 +0x00039827 +// 0.191043 +0x187414AA +// 0.003955 +0x00819548 +// 0.080528 +0x0A4EBE9D +// 0.442886 +0x38B07C8C +// 0.081272 +0x0A671F8A +// 0.221712 +0x1C610F60 +// 0.127671 +0x10578730 +// 0.275845 +0x234EE7BE +// 0.220567 +0x1C3B8DAE +// 0.593312 +0x4BF1A658 +// 0.256524 +0x20D5C65F +// 0.207287 +0x1A886576 +// 0.034116 +0x045DE6CF +// 0.149289 +0x131BEADD +// 0.018264 +0x02567C0B +// 0.355558 +0x2D82EAA2 +// 0.350024 +0x2CCD97D1 +// 0.202654 +0x19F090F2 +// 0.152466 +0x1384035C +// 0.103203 +0x0D35BE02 +// 0.221702 +0x1C60BE9D +// 0.210682 +0x1AF79DD5 +// 0.559721 +0x47A4F137 +// 0.328160 +0x2A012751 +// 0.301623 +0x269B97A6 +// 0.019734 +0x0286A75E +// 0.256105 +0x20C80BBC +// 0.025395 +0x034026D1 +// 0.617918 +0x4F17EEB8 +// 0.286182 +0x24A19CCA +// 0.228816 +0x1D49D7DA +// 0.195288 +0x18FF353E +// 0.109660 +0x0E095667 +// 0.038451 +0x04EBF685 +// 0.261087 +0x216B4DFF +// 0.094320 +0x0C12AF42 +// 0.243016 +0x1F1B286C +// 0.218165 +0x1BECD31A +// 0.418965 +0x35A0A2D7 +// 0.290976 +0x253EB182 +// 0.030527 +0x03E84E9C +// 0.077646 +0x09F04CD8 +// 0.416775 +0x3558E535 +// 0.579172 +0x4A22504F +// 0.079515 +0x0A2D8E61 +// 0.270343 +0x229A9639 +// 0.116818 +0x0EF3E67A +// 0.335027 +0x2AE2284D +// 0.237254 +0x1E5E52E8 +// 0.263324 +0x21B49ACD +// 0.105853 +0x0D8C9B0F +// 0.132052 +0x10E71499 +// 0.259802 +0x2141329C +// 0.274323 +0x231D005F +// 0.452846 +0x39F6DCEF +// 0.005703 +0x00BAE07C +// 0.100370 +0x0CD8EFE5 +// 0.068583 +0x08C753F7 +// 0.282034 +0x2419B2E6 +// 0.394786 +0x328855F5 +// 0.357153 +0x2DB72ECB +// 0.086002 +0x0B021BE0 +// 0.173995 +0x164579D3 +// 0.221869 +0x1C663203 +// 0.029063 +0x03B858D5 +// 0.197692 +0x194DFAC4 +// 0.444394 +0x38E1E45E +// 0.247753 +0x1FB660D2 +// 0.007675 +0x00FB8072 +// 0.048385 +0x06317789 +// 0.059866 +0x07A9B381 +// 0.032178 +0x041E64A4 +// 0.080202 +0x0A440F7C +// 0.077404 +0x09E85F0F +// 0.167303 +0x156A2BE3 +// 0.078613 +0x0A0FFBFB +// 0.148126 +0x12F5CA3D +// 0.493761 +0x3F338B67 +// 0.054999 +0x070A36CD +// 0.021291 +0x02B9A5E9 +// 0.434929 +0x37ABC1DE +// 0.103128 +0x0D33485E +// 0.757046 +0x60E6E26D +// 0.004061 +0x00851592 +// 0.062053 +0x07F15D39 +// 0.360292 +0x2E1E0C2F +// 0.382516 +0x30F64BE1 +// 0.002515 +0x005268D1 +// 0.099091 +0x0CAF0772 +// 0.452436 +0x39E969FE +// 0.109001 +0x0DF3BB62 +// 0.179042 +0x16EAD6B0 +// 0.125652 +0x10155E12 +// 0.095831 +0x0C442FFD +// 0.042975 +0x058036FD +// 0.284893 +0x2477609C +// 0.051967 +0x06A6D73D +// 0.013930 +0x01C87739 +// 0.052276 +0x06B0F8C9 +// 0.487165 +0x3E5B6818 +// 0.054743 +0x0701D4B5 +// 0.277522 +0x2385D39A +// 0.259154 +0x212BF588 +// 0.106133 +0x0D95C4DA +// 0.210035 +0x1AE2701A +// 0.333001 +0x2A9FC90C +// 0.111837 +0x0E50A89F +// 0.209397 +0x1ACD81D7 +// 0.155196 +0x13DD76EE +// 0.538334 +0x44E82017 +// 0.093085 +0x0BEA344A +// 0.330917 +0x2A5B7F7A +// 0.351230 +0x2CF51E62 +// 0.533818 +0x445427DE +// 0.041490 +0x054F8AEA +// 0.268370 +0x2259EF01 +// 0.056334 +0x0735F43E +// 0.004971 +0x00A2E42F +// 0.368981 +0x2F3AC0D0 +// 0.373816 +0x2FD93011 +// 0.072908 +0x09550DF2 +// 0.154190 +0x13BC81B3 +// 0.340102 +0x2B8874A9 +// 0.024667 +0x03284B41 +// 0.431657 +0x37408854 +// 0.133629 +0x111AC233 +// 0.329181 +0x2A229DDF +// 0.335047 +0x2AE2D0AA +// 0.165224 +0x15260E76 +// 0.099772 +0x0CC55405 +// 0.517580 +0x42400EF6 +// 0.187898 +0x180D0D43 +// 0.003263 +0x006AE90E +// 0.037004 +0x04BC8BF8 +// 0.346412 +0x2C573E4A +// 0.036424 +0x04A98942 +// 0.262153 +0x218E3EAD +// 0.161522 +0x14ACC4B0 +// 0.071278 +0x091F9F0A +// 0.449675 +0x398EF5D7 +// 0.269038 +0x226FD228 +// 0.079610 +0x0A30ABD2 +// 0.266893 +0x22298F24 +// 0.419206 +0x35A88875 +// 0.121444 +0x0F8B78E3 +// 0.336088 +0x2B04EB02 +// 0.170610 +0x15D69091 +// 0.352817 +0x2D291985 +// 0.380167 +0x30A94E93 +// 0.117513 +0x0F0AA6E0 +// 0.023730 +0x03099966 +// 0.101387 +0x0CFA420D +// 0.159199 +0x1460A4C5 +// 0.108996 +0x0DF39472 +// 0.440226 +0x38595544 +// 0.223645 +0x1CA06875 +// 0.466282 +0x3BAF22F0 +// 0.238497 +0x1E871447 +// 0.185876 +0x17CAC8E1 +// 0.212595 +0x1B364FD2 +// 0.111130 +0x0E398023 +// 0.265989 +0x220BE944 +// 0.436037 +0x37D00C38 +// 0.304698 +0x270054E1 +// 0.085544 +0x0AF319B6 +// 0.316234 +0x287A5CD5 +// 0.102335 +0x0D1953C3 +// 0.475419 +0x3CDA86F8 +// 0.368011 +0x2F1AFDCE +// 0.207647 +0x1A942D56 +// 0.555912 +0x4728224A +// 0.189806 +0x184B8E75 +// 0.041921 +0x055DACB4 +// 0.268733 +0x2265D638 +// 0.375401 +0x300D2498 +// 0.478005 +0x3D2F471B +// 0.771246 +0x62B82F3E +// 0.048529 +0x063633CF +// 0.019790 +0x02887D29 +// 0.039515 +0x050ED3AB +// 0.309277 +0x279660D5 +// 0.047733 +0x061C2006 +// 0.225310 +0x1CD6F192 +// 0.082227 +0x0A8667C6 +// 0.319070 +0x28D74596 +// 0.217838 +0x1BE21EB8 +// 0.068415 +0x08C1D558 +// 0.257274 +0x20EE5E83 +// 0.077929 +0x09F9919E +// 0.147131 +0x12D53336 +// 0.109132 +0x0DF80A55 +// 0.255355 +0x20AF75A9 +// 0.001350 +0x002C3B38 +// 0.106187 +0x0D97890E +// 0.048020 +0x062587E8 +// 0.190701 +0x1868E157 +// 0.348075 +0x2C8DB724 +// 0.316867 +0x288F1D27 +// 0.209572 +0x1AD343EB +// 0.373534 +0x2FCFF877 +// 0.075224 +0x09A0F28D +// 0.049619 +0x0659EB8D +// 0.021031 +0x02B127F1 +// 0.315632 +0x2866A459 +// 0.121647 +0x0F92232C +// 0.273502 +0x23021A60 +// 0.008053 +0x0107E466 +// 0.177294 +0x16B19404 +// 0.152866 +0x139120BB +// 0.365140 +0x2EBCE7BF +// 0.214723 +0x1B7C0D96 +// 0.167556 +0x15727D77 +// 0.124773 +0x0FF88E7F +// 0.341673 +0x2BBBF242 +// 0.012704 +0x01A04600 +// 0.124972 +0x0FFF18D9 +// 0.403042 +0x3396DD65 +// 0.272070 +0x22D32D2E +// 0.240990 +0x1ED8C01C +// 0.291054 +0x2541453C +// 0.194781 +0x18EE9362 +// 0.378158 +0x30677A5D +// 0.361109 +0x2E38D08C +// 0.161248 +0x14A3C7AA +// 0.352647 +0x2D238D73 +// 0.099732 +0x0CC4025A +// 0.445310 +0x38FFECD5 +// 0.428328 +0x36D3709E +// 0.208104 +0x1AA327C7 +// 0.599986 +0x4CCC589E +// 0.099176 +0x0CB1CA98 +// 0.014305 +0x01D4BB05 +// 0.280312 +0x23E145A8 +// 0.152522 +0x1385D6AC +// 0.063529 +0x0821B84F +// 0.003812 +0x007CEAD9 +// 0.206107 +0x1A61B645 +// 0.114257 +0x0E9FFBBF +// 0.141339 +0x1217670D +// 0.160237 +0x1482A439 +// 0.314565 +0x2843A788 +// 0.143591 +0x12613239 +// 0.165200 +0x152549AA +// 0.682792 +0x5765BB66 +// 0.174833 +0x1660E9AA +// 0.196536 +0x1928181E +// 0.266151 +0x22113874 +// 0.196869 +0x1933033F +// 0.239228 +0x1E9F0433 +// 0.153025 +0x13965410 +// 0.260711 +0x215EF6C9 +// 0.129718 +0x109A96C2 +// 0.191907 +0x18906B94 +// 0.217268 +0x1BCF7337 +// 0.023208 +0x02F878E6 +// 0.352166 +0x2D13C84D +// 0.046942 +0x060234CD +// 0.034984 +0x047A5A9D +// 0.145841 +0x12AAE849 +// 0.290804 +0x2539122B +// 0.188751 +0x1828FBC7 +// 0.164399 +0x150B05A7 +// 0.293444 +0x258F94FC +// 0.210303 +0x1AEB31F2 +// 0.413697 +0x34F405FC +// 0.461564 +0x3B14853C +// 0.101479 +0x0CFD46A5 +// 0.225961 +0x1CEC4B16 +// 0.265266 +0x21F43F8B +// 0.399353 +0x331DFD39 +// 0.194446 +0x18E3985B +// 0.547841 +0x461FA458 +// 0.545318 +0x45CCF6D7 +// 0.115648 +0x0ECD916C +// 0.039096 +0x050117BF +// 0.255453 +0x20B2B033 +// 0.055477 +0x0719E041 +// 0.212415 +0x1B3066B0 +// 0.151650 +0x13694456 +// 0.369474 +0x2F4AEC83 +// 0.152628 +0x1389500C +// 0.255313 +0x20AE18A7 +// 0.173998 +0x164591FC +// 0.187549 +0x180198C9 +// 0.002512 +0x00524CD4 +// 0.018802 +0x02681912 +// 0.214309 +0x1B6E7A5A +// 0.302819 +0x26C2C570 +// 0.295142 +0x25C734F0 +// 0.194823 +0x18EFF26B +// 0.069605 +0x08E8D3D3 +// 0.096782 +0x0C6357B4 +// 0.033082 +0x043C0759 +// 0.114405 +0x0EA4CEE3 +// 0.160070 +0x147D2D7A +// 0.365893 +0x2ED5944D +// 0.208958 +0x1ABF20B8 +// 0.052909 +0x06C5B651 +// 0.108773 +0x0DEC493A +// 0.261028 +0x21695B50 +// 0.083542 +0x0AB18507 +// 0.168793 +0x159B0019 +// 0.341721 +0x2BBD8308 +// 0.561714 +0x47E640A2 +// 0.140826 +0x1206955F +// 0.001036 +0x0021EF48 +// 0.130625 +0x10B84E3B +// 0.080415 +0x0A4B067F +// 0.482758 +0x3DCB0310 +// 0.090991 +0x0BA59584 +// 0.185930 +0x17CC8BA5 +// 0.283233 +0x2440F728 +// 0.366490 +0x2EE9267F +// 0.074649 +0x098E1904 +// 0.293180 +0x2586ED86 +// 0.416691 +0x3556256F +// 0.034467 +0x04696AF0 +// 0.103099 +0x0D3258C9 +// 0.460872 +0x3AFDDB14 +// 0.014728 +0x01E29F27 +// 0.265659 +0x2201201A +// 0.236629 +0x1E49DFD2 +// 0.009825 +0x0141F3C3 +// 0.425321 +0x3670EC4A +// 0.015707 +0x0202AE29 +// 0.001686 +0x00373B5D +// 0.321715 +0x292DF5D1 +// 0.335826 +0x2AFC5B0C +// 0.341458 +0x2BB4E33F +// 0.007804 +0x00FFBB30 +// 0.051483 +0x0697003C +// 0.112788 +0x0E6FD4E0 +// 0.134874 +0x11438F6E +// 0.004708 +0x009A48E6 +// 0.314983 +0x28515B1F +// 0.313692 +0x28270E5C +// 0.345103 +0x2C2C5573 +// 0.199496 +0x1989181B +// 0.013968 +0x01C9B58E +// 0.023776 +0x030B1482 +// 0.191543 +0x18847C16 +// 0.103887 +0x0D4C2F11 +// 0.397466 +0x32E02905 +// 0.322147 +0x293C1B1A +// 0.002278 +0x004AA43D +// 0.521291 +0x42B9ABFF +// 0.004887 +0x00A02028 +// 0.102905 +0x0D2BFBDD +// 0.352994 +0x2D2EE522 +// 0.076785 +0x09D4193E +// 0.000984 +0x00204044 +// 0.038713 +0x04F48908 +// 0.077529 +0x09EC770F +// 0.083113 +0x0AA37537 +// 0.099397 +0x0CB90E48 +// 0.263015 +0x21AA7A75 +// 0.509606 +0x413AC358 +// 0.047490 +0x06142A24 +// 0.103776 +0x0D48871C +// 0.187668 +0x18057D74 +// 0.107450 +0x0DC0EF8E +// 0.242200 +0x1F006AD1 +// 0.319641 +0x28E9FBBD +// 0.246428 +0x1F8AF1B3 +// 0.044714 +0x05B931AC +// 0.025312 +0x033D6B8F +// 0.083571 +0x0AB27480 +// 0.054210 +0x06F059AA +// 0.096566 +0x0C5C4A23 +// 0.066998 +0x0893608D +// 0.345013 +0x2C29612E +// 0.168204 +0x1587B1CD +// 0.173300 +0x162EB272 +// 0.279972 +0x23D61F66 +// 0.203682 +0x1A1240B5 +// 0.070991 +0x09163D29 +// 0.197783 +0x1950F1E4 +// 0.171448 +0x15F2047A +// 0.220542 +0x1C3AB899 +// 0.146300 +0x12B9F2A9 +// 0.069785 +0x08EEB4F9 +// 0.237516 +0x1E66EE53 +// 0.638751 +0x51C29666 +// 0.297631 +0x2618C1E1 +// 0.238822 +0x1E91B77A +// 0.468233 +0x3BEF112F +// 0.167739 +0x157874F7 +// 0.147373 +0x12DD205F +// 0.051175 +0x068CE5CC +// 0.171989 +0x1603BE59 +// 0.006925 +0x00E2E885 +// 0.205597 +0x1A51016E +// 0.049883 +0x066294C6 +// 0.395934 +0x32ADF712 +// 0.193520 +0x18C54650 +// 0.263202 +0x21B09BA3 +// 0.089765 +0x0B7D6D97 +// 0.305318 +0x2714A9FE +// 0.042820 +0x057B1D64 +// 0.128412 +0x106FCE83 +// 0.300336 +0x26716C33 +// 0.237611 +0x1E6A0D81 +// 0.288043 +0x24DE94F8 +// 0.196610 +0x192A826D +// 0.278729 +0x23AD63C9 +// 0.001909 +0x003E8AC2 +// 0.029183 +0x03BC43A2 +// 0.211455 +0x1B10F3F2 +// 0.296650 +0x25F8A2BD +// 0.219380 +0x1C14A35C +// 0.705695 +0x5A543AC7 +// 0.068895 +0x08D18FBE +// 0.174434 +0x1653D761 +// 0.228557 +0x1D415B20 +// 0.211160 +0x1B07486E +// 0.016855 +0x02284C28 +// 0.273868 +0x230E1B60 +// 0.100773 +0x0CE623FB +// 0.065264 +0x085A8E20 +// 0.077613 +0x09EF3C31 +// 0.128993 +0x1082DADA +// 0.810260 +0x67B695E2 +// 0.927127 +0x76AC14F6 +// 0.264766 +0x21E3DC24 +// 0.092910 +0x0BE47D08 +// 0.023023 +0x02F26C93 +// 0.044312 +0x05AC03F1 +// 0.363364 +0x2E82B92E +// 0.040244 +0x0526B31B +// 0.183670 +0x17828358 +// 0.294856 +0x25BDDA7C +// 0.525334 +0x433E2393 +// 0.075703 +0x09B0A194 +// 0.272295 +0x22DA9209 +// 0.135984 +0x1167EA40 +// 0.206687 +0x1A74B9B8 +// 0.397936 +0x32EF9264 +// 0.010586 +0x015ADF63 +// 0.104646 +0x0D65066C +// 0.526581 +0x4367011A +// 0.371489 +0x2F8CF4A6 +// 0.241669 +0x1EEF01F5 +// 0.243090 +0x1F1D9245 +// 0.013380 +0x01B671C5 +// 0.172763 +0x161D17C5 +// 0.494906 +0x3F59118B +// 0.334435 +0x2ACEC553 +// 0.032893 +0x0435D3EE +// 0.034602 +0x046DD2C9 +// 0.194880 +0x18F1D732 +// 0.195420 +0x19038947 +// 0.095537 +0x0C3A8DA0 +// 0.264066 +0x21CCEA34 +// 0.301012 +0x268790D9 +// 0.044933 +0x05C05E32 +// 0.165524 +0x152FE106 +// 0.295647 +0x25D7BF78 +// 0.009854 +0x0142E53C +// 0.074198 +0x097F54B5 +// 0.254167 +0x20888D39 +// 0.037365 +0x04C8628F +// 0.014398 +0x01D7CD45 +// 0.228524 +0x1D40424D +// 0.287397 +0x24C96CE9 +// 0.085117 +0x0AE52154 +// 0.055973 +0x072A2005 +// 0.033364 +0x04454715 +// 0.304750 +0x27020A1B +// 0.125039 +0x10014934 +// 0.141402 +0x12197928 +// 0.329684 +0x2A331238 +// 0.244301 +0x1F4540C0 +// 0.527101 +0x43780B02 +// 0.406019 +0x33F86A2E +// 0.141914 +0x122A3CDB +// 0.102493 +0x0D1E7BEE +// 0.177375 +0x16B43C4E +// 0.240090 +0x1EBB42BB +// 0.138609 +0x11BDF485 +// 0.474558 +0x3CBE5117 +// 0.152156 +0x1379D562 +// 0.073638 +0x096CFB95 +// 0.010266 +0x01506859 +// 0.056764 +0x07440DCC +// 0.144996 +0x128F3C7E +// 0.042632 +0x0574F689 +// 0.068457 +0x08C33434 +// 0.010100 +0x014AF327 +// 0.225245 +0x1CD4D64B +// 0.251556 +0x2032F93B +// 0.240001 +0x1EB858EC +// 0.230312 +0x1D7ADB78 +// 0.143849 +0x1269A904 +// 0.297037 +0x26054C66 +// 0.139868 +0x11E73481 +// 0.203572 +0x1A0EA262 +// 0.090652 +0x0B9A8029 +// 0.351022 +0x2CEE48B8 +// 0.046684 +0x05F9C079 +// 0.168311 +0x158B3689 +// 0.105223 +0x0D77EF3D +// 0.476776 +0x3D07022C +// 0.018440 +0x025C3A35 +// 0.174724 +0x165D57B3 +// 0.275487 +0x23432A3B +// 0.172534 +0x16159784 +// 0.311349 +0x27DA44F6 +// 0.525948 +0x435242C2 +// 0.204607 +0x1A308BE2 +// 0.216395 +0x1BB2D203 +// 0.202581 +0x19EE308A +// 0.120698 +0x0F73067A +// 0.344700 +0x2C1F1E13 +// 0.469546 +0x3C1A146F +// 0.430084 +0x370CFC3D +// 0.050319 +0x0670D80A +// 0.043068 +0x058341A8 +// 0.005025 +0x00A4A99E +// 0.411021 +0x349C56F2 +// 0.096653 +0x0C5F2338 +// 0.153109 +0x13990F4E +// 0.436569 +0x37E17F95 +// 0.106777 +0x0DAAE222 +// 0.206518 +0x1A6F2E0B +// 0.487084 +0x3E58C6BE +// 0.616090 +0x4EDC0730 +// 0.504755 +0x409BD3C0 +// 0.114580 +0x0EAA8FE0 +// 0.058619 +0x0780D45A +// 0.182075 +0x174E3D9A +// 0.409318 +0x3464879B +// 0.393754 +0x32668588 +// 0.152040 +0x1376100C +// 0.122630 +0x0FB25824 +// 0.649765 +0x532B7CCD +// 0.150663 +0x1348EEAA +// 0.065007 +0x08522512 +// 0.411632 +0x34B05DC0 +// 0.003700 +0x00794099 +// 0.598893 +0x4CA8839E +// 0.016728 +0x022425D8 +// 0.333299 +0x2AA98E54 +// 0.138583 +0x11BD1806 +// 0.497977 +0x3FBDB9E9 +// 0.234793 +0x1E0DB237 +// 0.205363 +0x1A495777 +// 0.231464 +0x1DA09FDD +// 0.017897 +0x024A7387 +// 0.156622 +0x140C2EAD +// 0.230762 +0x1D899FDA +// 0.363811 +0x2E915C60 +// 0.155966 +0x13F6B1F5 +// 0.023434 +0x02FFE533 +// 0.023928 +0x0310116E +// 0.440667 +0x3867C8AF +// 0.314130 +0x28356806 +// 0.400263 +0x333BD37A +// 0.191713 +0x188A0B09 +// 0.182331 +0x17569F51 +// 0.175048 +0x1667FCE8 +// 0.225069 +0x1CCF0E3F +// 0.102360 +0x0D1A2081 +// 0.217151 +0x1BCB9BEA +// 0.572011 +0x4937AAC6 +// 0.411464 +0x34AAD97A +// 0.437826 +0x380AAAC7 +// 0.217093 +0x1BC9B7DC +// 0.275749 +0x234BBD2E +// 0.217257 +0x1BCF105E +// 0.413940 +0x34FC000E +// 0.344448 +0x2C16DF6C +// 0.187386 +0x17FC43C0 +// 0.128289 +0x106BC854 +// 0.281578 +0x240AC2B1 +// 0.455975 +0x3A5D630E +// 0.112480 +0x0E65BCC2 +// 0.787731 +0x64D45AF4 +// 0.220874 +0x1C45955B +// 0.215356 +0x1B90C7D9 +// 0.065054 +0x0853AFF6 +// 0.181992 +0x174B87B9 +// 0.169879 +0x15BE94CB +// 0.066087 +0x08758C73 +// 0.152790 +0x138EA19C +// 0.431747 +0x37437B0D +// 0.103062 +0x0D3121B3 +// 0.258515 +0x21170842 +// 0.053180 +0x06CE9DF1 +// 0.058287 +0x0775F4C8 +// 0.406516 +0x3408B3AD +// 0.200336 +0x19A49F47 +// 0.102265 +0x0D1708E1 +// 0.375928 +0x301E66DA +// 0.041064 +0x054198D7 +// 0.050663 +0x067C22FD +// 0.025883 +0x03501F52 +// 0.041141 +0x05441BCC +// 0.052255 +0x06B04C58 +// 0.155002 +0x13D71E8C +// 0.002832 +0x005CCC3A +// 0.048826 +0x063FEE41 +// 0.096475 +0x0C594E05 +// 0.211359 +0x1B0DD3A2 +// 0.255904 +0x20C1779B +// 0.103765 +0x0D482B65 +// 0.480858 +0x3D8CC343 +// 0.036930 +0x04BA1E18 +// 0.220841 +0x1C448545 +// 0.000661 +0x0015A549 +// 0.113990 +0x0E9735CD +// 0.111652 +0x0E4A99EE +// 0.512055 +0x418B0216 +// 0.334247 +0x2AC89897 +// 0.308358 +0x27784752 +// 0.103097 +0x0D324694 +// 0.069698 +0x08EBDDAB +// 0.178493 +0x16D8DA98 +// 0.212632 +0x1B37833E +// 0.194168 +0x18DA808E +// 0.213549 +0x1B55905B +// 0.279999 +0x23D6FF64 +// 0.238109 +0x1E7A5A5A +// 0.124887 +0x0FFC5044 +// 0.047461 +0x0613326D +// 0.177027 +0x16A8D130 +// 0.017000 +0x022D0F2A +// 0.411285 +0x34A4FECE +// 0.517905 +0x424AB4E3 +// 0.540927 +0x453D179B +// 0.479035 +0x3D510232 +// 0.153364 +0x13A16D90 +// 0.074964 +0x09986DBC +// 0.092243 +0x0BCE9DE2 +// 0.409507 +0x346AB8FE +// 0.012230 +0x0190C27B +// 0.131905 +0x10E2425E +// 0.016489 +0x021C5311 +// 0.222457 +0x1C7978F6 +// 0.559172 +0x4792F0F3 +// 0.453633 +0x3A10A38E +// 0.054934 +0x0708166F +// 0.150544 +0x134508A1 +// 0.001215 +0x0027CCD4 +// 0.395305 +0x32995D05 +// 0.267997 +0x224DBC83 +// 0.037410 +0x04C9D8F4 +// 0.107340 +0x0DBD4E1E +// 0.500761 +0x4018EBFD +// 0.218281 +0x1BF09E26 +// 0.117448 +0x0F0888EA +// 0.131773 +0x10DDEE65 +// 0.299977 +0x2665A574 +// 0.099101 +0x0CAF54F1 +// 0.467274 +0x3BCFA404 +// 0.199706 +0x198FF47A +// 0.613821 +0x4E91B2E0 +// 0.034255 +0x04627883 +// 0.567789 +0x48AD511E +// 0.264736 +0x21E2E26E +// 0.293105 +0x258473F4 +// 0.183514 +0x177D62C2 +// 0.110502 +0x0E24EC60 +// 0.231685 +0x1DA7DDC9 +// 0.320137 +0x28FA404D +// 0.170151 +0x15C782EF +// 0.571970 +0x49364F94 +// 0.120777 +0x0F759E09 +// 0.016814 +0x0226F1E2 +// 0.066738 +0x088AE0BA +// 0.363920 +0x2E94EE5F +// 0.066532 +0x08841BDE +// 0.028888 +0x03B29C4B +// 0.885010 +0x7147FFF1 +// 0.320996 +0x2916645B +// 0.214069 +0x1B669FA4 +// 0.038691 +0x04F3D4D1 +// 0.048701 +0x063BD2F3 +// 0.102891 +0x0D2B84C8 +// 0.160504 +0x148B68C6 +// 0.242914 +0x1F17CC46 +// 0.175675 +0x167C85BE +// 0.046039 +0x05E498A8 +// 0.398314 +0x32FBF389 +// 0.217434 +0x1BD4DFEB +// 0.001121 +0x0024B7A4 +// 0.096882 +0x0C66A179 +// 0.161160 +0x14A0E7D8 +// 0.093344 +0x0BF2AECA +// 0.563205 +0x48171AB2 +// 0.363074 +0x2E79335D +// 0.020217 +0x0296756F +// 0.298391 +0x2631AD6A +// 0.039368 +0x050A036E +// 0.195952 +0x1914F5DF +// 0.353448 +0x2D3DC66B +// 0.083651 +0x0AB51535 +// 0.278170 +0x239B1147 +// 0.408267 +0x34421AC4 +// 0.190497 +0x18623201 +// 0.534109 +0x445DB0F5 +// 0.426329 +0x3691EFD5 +// 0.115095 +0x0EBB71F8 +// 0.029808 +0x03D0BCE0 +// 0.235046 +0x1E15F8AD +// 0.035358 +0x04869C54 +// 0.108243 +0x0DDAE9D7 +// 0.116636 +0x0EEDF131 +// 0.344751 +0x2C20CC5D +// 0.419940 +0x35C09A41 +// 0.547023 +0x4604DBFC +// 0.266541 +0x221E01AC +// 0.129797 +0x109D310E +// 0.238393 +0x1E83A555 +// 0.744077 +0x5F3DEB9C +// 0.182003 +0x174BDEF1 +// 0.155214 +0x13DE0E18 +// 0.211766 +0x1B1B2756 +// 0.389938 +0x31E97A8F +// 0.001912 +0x003EA60A +// 0.229165 +0x1D5543F1 +// 0.304066 +0x26EBA4E7 +// 0.034879 +0x0476EBD4 +// 0.315732 +0x2869EB37 +// 0.219625 +0x1C1CAB58 +// 0.365659 +0x2ECDE84C +// 0.197033 +0x193860A9 +// 0.115902 +0x0ED5E0D3 +// 0.754723 +0x609AC205 +// 0.077975 +0x09FB1690 +// 0.030757 +0x03EFD576 +// 0.223253 +0x1C938C10 +// 0.262804 +0x21A38EC9 +// 0.351904 +0x2D0B31EC +// 0.105532 +0x0D821632 +// 0.562347 +0x47FAFEFF +// 0.097180 +0x0C706557 +// 0.258927 +0x212483B5 +// 0.021187 +0x02B63DEF +// 0.149660 +0x132810E7 +// 0.183234 +0x1774325E +// 0.097678 +0x0C80B870 +// 0.146379 +0x12BC8C03 +// 0.031572 +0x040A895F +// 0.330153 +0x2A42773F +// 0.077279 +0x09E4484B +// 0.201842 +0x19D5F831 +// 0.098221 +0x0C928312 +// 0.299290 +0x264F2569 +// 0.227197 +0x1D14C9AC +// 0.116382 +0x0EE596D8 +// 0.094770 +0x0C216C7E +// 0.056499 +0x073B5F42 +// 0.269713 +0x2285F09E +// 0.579819 +0x4A37803F +// 0.270499 +0x229FB3FA +// 0.112135 +0x0E5A6DDC +// 0.130911 +0x10C1AD57 +// 0.058538 +0x077E2AB6 +// 0.160691 +0x149181E0 +// 0.068518 +0x08C534FC +// 0.408826 +0x345467DC +// 0.496590 +0x3F9046CF +// 0.268332 +0x2258B613 +// 0.132377 +0x10F1BD15 +// 0.132476 +0x10F4F5F2 +// 0.214641 +0x1B795768 +// 0.414245 +0x3505F916 +// 0.080863 +0x0A59B9F5 +// 0.207599 +0x1A929CC0 +// 0.286411 +0x24A91ECC +// 0.126403 +0x102DF7D0 +// 0.234817 +0x1E0E7EF0 +// 0.665007 +0x551EF6C2 +// 0.236972 +0x1E5515C5 +// 0.056843 +0x0746A55B +// 0.081119 +0x0A621D80 +// 0.024230 +0x0319FA78 +// 0.412668 +0x34D24DAA +// 0.216955 +0x1BC52A69 +// 0.072025 +0x09381BCB +// 0.120016 +0x0F5CAB52 +// 0.164642 +0x1512FD09 +// 0.191695 +0x18897288 +// 0.384855 +0x3142EA6E +// 0.039595 +0x0511734E +// 0.112345 +0x0E6152DA +// 0.205926 +0x1A5BCB87 +// 0.270313 +0x22999DC6 +// 0.221261 +0x1C5247D0 +// 0.096810 +0x0C6442F9 +// 0.088905 +0x0B613F37 +// 0.071463 +0x0925B06F +// 0.140338 +0x11F694DB +// 0.167081 +0x1562E9B8 +// 0.214260 +0x1B6CE256 +// 0.262834 +0x21A48F44 +// 0.000771 +0x0019461C +// 0.087620 +0x0B372469 +// 0.449054 +0x397A9A0E +// 0.008302 +0x01100E22 +// 0.074421 +0x09869ECE +// 0.222104 +0x1C6DE6CE +// 0.514291 +0x41D44BE6 +// 0.382621 +0x30F9B986 +// 0.108683 +0x0DE953D9 +// 0.438902 +0x382DEDE7 +// 0.693689 +0x58CACE31 +// 0.241918 +0x1EF72B0D +// 0.032602 +0x042C4AC7 +// 0.171510 +0x15F409A2 +// 0.042228 +0x0567B755 +// 0.416723 +0x355729F6 +// 0.334275 +0x2AC985DF +// 0.000038 +0x00013E0A +// 0.429764 +0x37028314 +// 0.186963 +0x17EE65A4 +// 0.044796 +0x05BBE200 +// 0.200974 +0x19B98021 +// 0.052336 +0x06B2F1ED +// 0.228819 +0x1D49EEED +// 0.084070 +0x0AC2CDCD +// 0.080485 +0x0A4D58DE +// 0.161463 +0x14AACEE7 +// 0.250968 +0x201FB82D +// 0.576919 +0x49D87D1E +// 0.156043 +0x13F93A93 +// 0.121676 +0x0F9315F6 +// 0.241273 +0x1EE204F3 +// 0.085959 +0x0B00B7CA +// 0.522794 +0x42EAED0C +// 0.055605 +0x071E0D7C +// 0.654334 +0x53C136EA +// 0.018294 +0x0257765D +// 0.080337 +0x0A487905 +// 0.042216 +0x056758B2 +// 0.292471 +0x256FB4BA +// 0.016853 +0x02283938 +// 0.308869 +0x278904B5 +// 0.261961 +0x2187EC6E +// 0.695514 +0x590696C6 +// 0.181852 +0x1746EC3F +// 0.273522 +0x2302C1FA +// 0.202904 +0x19F8C346 +// 0.650575 +0x534608A5 +// 0.376703 +0x3037CEF5 +// 0.096473 +0x0C5939F8 +// 0.086831 +0x0B1D4A3F +// 0.019779 +0x028820EF +// 0.002019 +0x0042279E +// 0.069496 +0x08E53EDB +// 0.347411 +0x2C77F765 +// 0.086433 +0x0B103E3D +// 0.007822 +0x0100527F +// 0.039690 +0x05148D05 +// 0.001573 +0x00338EB0 +// 0.086738 +0x0B1A38CF +// 0.013022 +0x01AAB88F +// 0.067293 +0x089D0B9F +// 0.479342 +0x3D5B1450 +// 0.138289 +0x11B3784C +// 0.310449 +0x27BCCBD8 +// 0.261835 +0x2183D022 +// 0.082377 +0x0A8B55AE +// 0.142612 +0x12411B6E +// 0.370484 +0x2F6C0869 +// 0.322274 +0x29404A30 +// 0.179876 +0x17062C05 +// 0.371443 +0x2F8B703D +// 0.010021 +0x0148607F +// 0.402538 +0x33865BA7 +// 0.249145 +0x1FE3FE81 +// 0.402291 +0x337E449D +// 0.268468 +0x225D2ADB +// 0.160086 +0x147DAFBD +// 0.008462 +0x01154981 +// 0.101690 +0x0D042E05 +// 0.189820 +0x184C05A3 +// 0.419665 +0x35B79913 +// 0.586750 +0x4B1A9BE5 +// 0.370187 +0x2F624726 +// 0.076912 +0x09D83CF2 +// 0.242093 +0x1EFCE382 +// 0.159294 +0x1463C000 +// 0.588272 +0x4B4C7EFC +// 0.361868 +0x2E51ADF6 +// 0.018230 +0x02555DD5 +// 0.375453 +0x300ED972 +// 0.129389 +0x108FCE80 +// 0.347534 +0x2C7BFCAE +// 0.001068 +0x002301CD +// 0.417980 +0x35805BD9 +// 0.029330 +0x03C112E9 +// 0.029827 +0x03D15C07 +// 0.048170 +0x062A6B13 +// 0.219472 +0x1C17A914 +// 0.208752 +0x1AB8600B +// 0.081166 +0x0A63A6C6 +// 0.177222 +0x16AF37D2 +// 0.037634 +0x04D133E9 +// 0.165263 +0x15275998 +// 0.216541 +0x1BB79E68 +// 0.229642 +0x1D64E9D3 +// 0.179154 +0x16EE84D9 +// 0.230554 +0x1D82C965 +// 0.556258 +0x473376FB +// 0.267920 +0x224B33DF +// 0.143695 +0x12649B93 +// 0.219350 +0x1C13A4FC +// 0.350732 +0x2CE4C93C +// 0.642406 +0x523A5846 +// 0.055876 +0x0726EEE5 +// 0.064581 +0x08443010 +// 0.287478 +0x24CC113A +// 0.563529 +0x4821B536 +// 0.061545 +0x07E0B6F7 +// 0.149587 +0x1325AAA7 +// 0.016968 +0x022C020D +// 0.559989 +0x47ADB51F +// 0.339058 +0x2B663F73 +// 0.220366 +0x1C34F279 +// 0.235424 +0x1E2261EF +// 0.167849 +0x157C1450 +// 0.169290 +0x15AB492F +// 0.076414 +0x09C7F22F +// 0.113390 +0x0E83937A +// 0.088156 +0x0B48B26F +// 0.180393 +0x17171AA6 +// 0.154266 +0x13BEFAAC +// 0.224464 +0x1CBB3D2F +// 0.553176 +0x46CE7B78 +// 0.005436 +0x00B22282 +// 0.022750 +0x02E978FC +// 0.052009 +0x06A837E1 +// 0.068932 +0x08D2C344 +// 0.532512 +0x44295931 +// 0.280913 +0x23F4F663 +// 0.041548 +0x05517228 +// 0.102282 +0x0D17934D +// 0.052388 +0x06B4A472 +// 0.028186 +0x039B9C2D +// 0.462481 +0x3B3293FC +// 0.260422 +0x21558219 +// 0.114570 +0x0EAA3E91 +// 0.100195 +0x0CD32E57 +// 0.087162 +0x0B281E05 +// 0.065367 +0x085DEF3A +// 0.102661 +0x0D23FBB7 +// 0.365281 +0x2EC18357 +// 0.327767 +0x29F44755 +// 0.287223 +0x24C3B9FA +// 0.000184 +0x000603E0 +// 0.483770 +0x3DEC2C46 +// 0.151018 +0x13548C86 +// 0.327041 +0x29DC7C70 +// 0.023825 +0x030CB301 +// 0.180509 +0x171AEDE8 +// 0.349957 +0x2CCB6634 +// 0.218294 +0x1BF10C1D +// 0.142098 +0x123041D0 +// 0.105601 +0x0D84526A +// 0.221127 +0x1C4DE461 +// 0.329582 +0x2A2FC171 +// 0.140350 +0x11F6FD7E +// 0.225553 +0x1CDEE967 +// 0.169618 +0x15B60DCF +// 0.306574 +0x273DD440 +// 0.056309 +0x07351FE9 +// 0.093608 +0x0BFB5AD1 +// 0.107744 +0x0DCA920A +// 0.004464 +0x00924637 +// 0.154724 +0x13CDFDA4 +// 0.050784 +0x068015CD +// 0.182547 +0x175DB181 +// 0.228301 +0x1D38F52A +// 0.116534 +0x0EEA993B +// 0.011647 +0x017DA2FE +// 0.092054 +0x0BC8692B +// 0.106685 +0x0DA7DE98 +// 0.246455 +0x1F8BDA39 +// 0.157418 +0x142649CF +// 0.237196 +0x1E5C73A5 +// 0.475054 +0x3CCE8E27 +// 0.120139 +0x0F60B979 +// 0.058210 +0x07736F71 +// 0.006593 +0x00D80C32 +// 0.299345 +0x2650F107 +// 0.240962 +0x1ED7DBC3 +// 0.060543 +0x07BFE0D1 +// 0.059181 +0x07933D27 +// 0.285977 +0x249AE42B +// 0.042173 +0x0565F02A +// 0.029473 +0x03C5C612 +// 0.044023 +0x05A28979 +// 1.078262 +0x7FFFFFFF +// 0.048260 +0x062D5F95 +// 0.169009 +0x15A21800 +// 0.196512 +0x19274C4E +// 0.202006 +0x19DB5700 +// 0.440129 +0x38562939 +// 0.295253 +0x25CADB25 +// 0.184311 +0x179783BF +// 0.160669 +0x1490CF0F +// 0.375328 +0x300AC005 +// 0.327176 +0x29E0EA35 +// 0.374679 +0x2FF57E29 +// 0.322340 +0x29426FFB +// 0.147929 +0x12EF58A4 +// 0.241571 +0x1EEBCA64 +// 0.817618 +0x68A7B589 +// 0.411254 +0x34A3F4B4 +// 0.075973 +0x09B97F59 +// 0.175259 +0x166EE3C4 +// 0.530269 +0x43DFD822 +// 0.326047 +0x29BBE566 +// 0.192031 +0x189479DD +// 0.093191 +0x0BEDB296 +// 0.166429 +0x154D8D97 +// 0.216828 +0x1BC1065B +// 0.381802 +0x30DEE1FB +// 0.028877 +0x03B23C2E +// 0.577366 +0x49E7220C +// 0.444988 +0x38F55FDE +// 0.006070 +0x00C6E798 +// 0.127728 +0x105963B9 +// 0.297901 +0x2621A1C9 +// 0.091667 +0x0BBBBD91 +// 0.314704 +0x2848346D +// 0.544938 +0x45C08469 +// 0.053762 +0x06E1A906 +// 0.538865 +0x44F988DD +// 0.549716 +0x465D1710 +// 0.413133 +0x34E18C3B +// 0.003524 +0x00737AC1 +// 0.258882 +0x212307E4 +// 0.019170 +0x02742C1E +// 0.412349 +0x34C7D61A +// 0.225495 +0x1CDD06DB +// 0.301695 +0x269DF141 +// 0.113746 +0x0E8F39F5 +// 0.067667 +0x08A94CB4 +// 0.195813 +0x19106A20 +// 0.282931 +0x243718E3 +// 0.418688 +0x35978F9E +// 0.168889 +0x159E2825 +// 0.223866 +0x1CA7A791 +// 0.166940 +0x155E4C8E +// 0.175004 +0x166687F8 +// 0.348778 +0x2CA4BE1F +// 0.456134 +0x3A6296E5 +// 0.266218 +0x22136C4D +// 0.423223 +0x362C2A79 +// 0.378072 +0x3064A684 +// 0.256387 +0x20D14D0E +// 0.129698 +0x1099EE52 +// 0.000910 +0x001DCEC2 +// 0.449944 +0x3997C347 +// 0.159839 +0x1475996B +// 0.441449 +0x388166F5 +// 0.277000 +0x2374C00E +// 0.408176 +0x343F1EC3 +// 0.326613 +0x29CE721D +// 0.139054 +0x11CC8212 +// 0.615555 +0x4ECA8441 +// 0.618791 +0x4F348CF3 +// 0.161592 +0x14AF0AF1 +// 0.064280 +0x083A55BF +// 0.064235 +0x0838D6DF +// 0.525969 +0x4352F703 +// 0.071020 +0x09172BFF +// 0.402014 +0x33753074 +// 0.138726 +0x11C1C324 +// 0.034951 +0x047942F7 +// 0.226232 +0x1CF52F1D +// 0.121376 +0x0F893EB5 +// 0.628846 +0x507E0570 +// 0.047198 +0x060A9553 +// 0.037655 +0x04D1E0CA +// 0.096690 +0x0C605357 +// 0.019781 +0x028830F2 +// 0.060255 +0x07B672BE +// 0.169398 +0x15AED52D +// 0.253283 +0x206B902C +// 0.416064 +0x35419594 +// 0.006152 +0x00C99AA6 +// 0.074985 +0x09991D12 +// 0.023708 +0x0308D972 +// 0.311810 +0x27E9621C +// 0.617479 +0x4F098E0E +// 0.026556 +0x036630BE +// 0.412620 +0x34D0BD00 +// 0.556562 +0x473D6BF6 +// 0.348139 +0x2C8FD1E4 +// 0.244146 +0x1F402A62 +// 0.226884 +0x1D0A8565 +// 0.125210 +0x1006E5A8 +// 0.261558 +0x217ABD9C +// 0.363126 +0x2E7AE991 +// 0.046312 +0x05ED8FDC +// 0.329922 +0x2A3AE5CA +// 0.091784 +0x0BBF90C8 +// 0.141067 +0x120E7DDA +// 0.030738 +0x03EF3B54 +// 0.306096 +0x272E243A +// 0.057025 +0x074C99B3 +// 0.002071 +0x0043E0E7 +// 0.448997 +0x3978BE1D +// 0.315460 +0x2860FF5F +// 0.351914 +0x2D0B879C +// 0.225876 +0x1CE97DC0 +// 0.057300 +0x0755994C +// 0.034739 +0x04725617 +// 0.368735 +0x2F32B54A +// 0.143116 +0x12519C7A +// 0.043319 +0x058B7C09 +// 0.127640 +0x105680B5 +// 0.060064 +0x07B03150 +// 0.290854 +0x253AB1FC +// 0.064133 +0x0835865A +// 0.221263 +0x1C52574C +// 0.039602 +0x0511B042 +// 0.075874 +0x09B64110 +// 0.068106 +0x08B7B136 +// 0.324271 +0x2981BA19 +// 0.134173 +0x112C93CA +// 0.189597 +0x1844B9E0 +// 0.156665 +0x140D9D45 +// 0.002174 +0x00473915 +// 0.207123 +0x1A8300F7 +// 0.185193 +0x17B467F3 +// 0.249091 +0x1FE23600 +// 0.024594 +0x0325E91D +// 0.164784 +0x1517A774 +// 0.106478 +0x0DA11348 +// 0.754760 +0x609BFC8E +// 0.271488 +0x22C01BDC +// 0.421540 +0x35F50600 +// 0.016168 +0x0211CABF +// 0.300929 +0x2684D3CB +// 0.341615 +0x2BBA0D79 +// 0.069373 +0x08E13475 +// 0.429175 +0x36EF3162 +// 0.044808 +0x05BC4283 +// 0.026445 +0x03629094 +// 0.159180 +0x145FFED6 +// 0.017339 +0x023829ED +// 0.135553 +0x1159CB7C +// 0.401812 +0x336E93B9 +// 0.127360 +0x104D522D +// 0.164302 +0x1507D812 +// 0.125463 +0x100F2B96 +// 0.046612 +0x05F75E2F +// 0.024846 +0x032E2989 +// 0.229815 +0x1D6A920F +// 0.161004 +0x149BC55C +// 0.280361 +0x23E2DD05 +// 0.267777 +0x224683BB +// 0.146076 +0x12B29D33 +// 0.025783 +0x034CDB3F +// 0.176914 +0x16A51C66 +// 0.120361 +0x0F67FF0B +// 0.389177 +0x31D08B34 +// 0.260650 +0x215CFD77 +// 0.019618 +0x0282DB85 +// 1.000000 +0x7FFFFFFF +// 0.426909 +0x36A4F577 +// 0.130755 +0x10BC96BC +// 0.611191 +0x4E3B7F03 +// 0.250427 +0x200DFBF0 +// 0.256558 +0x20D6E2AF +// 0.094854 +0x0C242E17 +// 0.450034 +0x399AB6B5 +// 0.193895 +0x18D18C4D +// 0.007943 +0x010444A6 +// 0.490804 +0x3ED2AC6C +// 0.084827 +0x0ADB9C1D +// 0.183029 +0x176D7BC0 +// 0.217772 +0x1BDFF306 +// 0.011477 +0x01781822 +// 0.468548 +0x3BF95DF1 +// 0.113441 +0x0E853E44 +// 0.204537 +0x1A2E4369 +// 0.341965 +0x2BC58663 +// 0.388682 +0x31C058E2 +// 0.522764 +0x42E9EA52 +// 0.154797 +0x13D0637F +// 0.321064 +0x29189EB3 +// 0.226417 +0x1CFB3962 +// 0.212664 +0x1B389667 +// 0.178109 +0x16CC4687 +// 0.345405 +0x2C363E4E +// 0.337162 +0x2B281E93 +// 0.425576 +0x36794A59 +// 0.238624 +0x1E8B3F3C +// 0.039693 +0x0514A9E8 +// 0.175792 +0x16805A2D +// 0.429392 +0x36F654D6 +// 0.223909 +0x1CA910A8 +// 0.074453 +0x0987ACFB +// 0.239300 +0x1EA1644E +// 0.217327 +0x1BD15D6C +// 0.406900 +0x341549AE +// 0.006888 +0x00E1B236 +// 0.071894 +0x0933D390 +// 0.169380 +0x15AE3E72 +// 0.267977 +0x224D144D +// 0.026081 +0x03569D26 +// 0.205824 +0x1A58730B +// 0.196573 +0x19294F65 +// 0.442104 +0x3896DA99 +// 0.433941 +0x378B5D2B +// 0.176955 +0x16A67786 +// 0.246245 +0x1F84F893 +// 0.012274 +0x01922F09 +// 0.095613 +0x0C3D0F1F +// 0.026721 +0x036B9591 +// 0.098551 +0x0C9D4E71 +// 0.109087 +0x0DF68DA8 +// 0.107863 +0x0DCE767B +// 0.008483 +0x0115FBC1 +// 0.051204 +0x068DD642 +// 0.117542 +0x0F0B9D1C +// 0.698349 +0x59637E85 +// 0.003555 +0x00747B83 +// 0.072861 +0x0953835A +// 0.267117 +0x2230E5DD +// 0.436343 +0x37DA1245 +// 0.449229 +0x39805569 +// 0.240558 +0x1ECA98B6 +// 0.052844 +0x06C399C4 +// 0.156484 +0x1407A799 +// 0.001976 +0x0040BCAA +// 0.265907 +0x22093F24 +// 0.003831 +0x007D8723 +// 0.156105 +0x13FB431C +// 0.245580 +0x1F6F2E1D +// 0.201311 +0x19C492F8 +// 0.063051 +0x08120E01 +// 0.345472 +0x2C386F73 +// 0.078261 +0x0A0471F0 +// 0.248098 +0x1FC1AC9C +// 0.353404 +0x2D3C5688 +// 0.455049 +0x3A3F0C18 +// 0.319576 +0x28E7D9FF +// 0.496525 +0x3F8E226D +// 0.272691 +0x22E78626 +// 0.365084 +0x2EBB0F8F +// 0.137966 +0x11A8DBCD +// 0.023939 +0x03106EDA +// 0.036280 +0x04A4D1AE +// 0.426047 +0x3688B3F3 +// 0.149207 +0x131937E5 +// 0.043899 +0x059E7E54 +// 0.601673 +0x4D039EF4 +// 0.317208 +0x289A495F +// 0.389594 +0x31DE3594 +// 0.100990 +0x0CED3CD4 +// 0.067752 +0x08AC1AFF +// 0.155236 +0x13DEC67F +// 0.200102 +0x199CF115 +// 0.234405 +0x1E00FF00 +// 0.123699 +0x0FD55AD2 +// 0.153068 +0x1397BF30 +// 0.039082 +0x0500A504 +// 0.781199 +0x63FE530A +// 0.090448 +0x0B93CA69 +// 0.041777 +0x0558F519 +// 0.091298 +0x0BAFA3E0 +// 0.108812 +0x0DED90B5 +// 0.095322 +0x0C33854B +// 0.572474 +0x4946D21C +// 0.552079 +0x46AA8467 +// 0.357686 +0x2DC8A996 +// 0.119076 +0x0F3DDEEA +// 0.248823 +0x1FD96C5F +// 0.310564 +0x27C09386 +// 0.042132 +0x056494F5 +// 0.014910 +0x01E8919B +// 0.205142 +0x1A421876 +// 0.196230 +0x191E1484 +// 0.203863 +0x1A1832CB +// 0.035067 +0x047D16DB +// 0.071982 +0x0936B339 +// 0.026465 +0x0363342A +// 0.074263 +0x098174DE +// 0.044194 +0x05A82743 +// 0.161024 +0x149C6C52 +// 0.088788 +0x0B5D68A7 +// 0.198273 +0x19610197 +// 0.046495 +0x05F38D0C +// 0.031347 +0x04032F02 +// 0.129617 +0x10974C80 +// 0.010369 +0x0153C86F +// 0.090179 +0x0B8AFC07 +// 0.234427 +0x1E01B840 +// 0.089000 +0x0B6458B7 +// 0.319134 +0x28D962B1 +// 0.255598 +0x20B77252 +// 0.151107 +0x13577661 +// 0.135212 +0x114EA08C +// 0.197424 +0x19453154 +// 0.403313 +0x339FC6D9 +// 0.216981 +0x1BC60C0A +// 0.077828 +0x09F64770 +// 0.348582 +0x2C9E585F +// 0.173396 +0x1631D83E +// 0.228594 +0x1D428FE0 +// 0.042616 +0x057472B4 +// 0.288853 +0x24F922A7 +// 0.389675 +0x31E0DF7C +// 0.459952 +0x3ADFB29B +// 0.009209 +0x012DC5A1 +// 0.256949 +0x20E3B753 +// 0.008017 +0x0106B518 +// 0.099245 +0x0CB40E57 +// 0.390081 +0x31EE2CDA +// 0.563837 +0x482BD31B +// 0.016759 +0x02252877 +// 0.672490 +0x56142AC1 +// 0.308703 +0x278394D8 +// 0.157680 +0x142EDD97 +// 0.257046 +0x20E6E3F4 +// 0.319716 +0x28EC7210 +// 0.256171 +0x20CA37B1 +// 0.222822 +0x1C85711B +// 0.030122 +0x03DB06CF +// 0.614744 +0x4EAFF170 +// 0.274828 +0x232D8D6A +// 0.184471 +0x179CC1A6 +// 0.212309 +0x1B2CF519 +// 0.233130 +0x1DD73163 +// 0.023065 +0x02F3CE48 +// 0.516301 +0x421624D9 +// 0.016161 +0x02119036 +// 0.015002 +0x01EB98ED +// 0.114673 +0x0EAD9B68 +// 0.078705 +0x0A1304BA +// 0.145451 +0x129E2362 +// 0.412013 +0x34BCD5FD +// 0.027964 +0x039453DC +// 0.731588 +0x5DA4AC56 +// 0.167559 +0x1572956B +// 0.006283 +0x00CDE092 +// 0.314963 +0x2850B3F6 +// 0.249891 +0x1FFC6B8E +// 0.139065 +0x11CCE063 +// 0.210759 +0x1AFA23F5 +// 0.391927 +0x322AA823 +// 0.131353 +0x10D02EE0 +// 0.222675 +0x1C809F56 +// 0.138191 +0x11B03C2A +// 0.029213 +0x03BD3D83 +// 0.306967 +0x274AB123 +// 0.150813 +0x134DD566 +// 0.036925 +0x04B9F250 +// 0.432450 +0x375A8706 +// 0.082550 +0x0A90FBCF +// 0.527768 +0x438DE58E +// 0.297606 +0x2617F016 +// 0.679256 +0x56F1D9A6 +// 0.102752 +0x0D26F9DE +// 0.210981 +0x1B016E14 +// 0.024205 +0x031923B9 +// 0.066210 +0x08799010 +// 0.063794 +0x082A68F3 +// 0.233150 +0x1DD7DECD +// 0.073988 +0x09786D01 +// 0.153724 +0x13AD3BED +// 0.694248 +0x58DD202D +// 0.299668 +0x265B823B +// 0.176913 +0x16A5192C +// 0.528548 +0x43A77625 +// 0.136624 +0x117CE7F2 +// 0.247140 +0x1FA24858 +// 0.456616 +0x3A7261F9 +// 0.190859 +0x186E1100 +// 0.559986 +0x47ADA073 +// 0.258916 +0x21242BEC +// 0.291763 +0x25587B3D +// 0.078797 +0x0A1606FF +// 0.388986 +0x31CA4754 +// 0.321548 +0x29287903 +// 0.087797 +0x0B3CF151 +// 0.003490 +0x00725D93 +// 0.289358 +0x2509AE58 +// 0.510843 +0x41634B0F +// 0.167282 +0x15698146 +// 0.337941 +0x2B41A4FC +// 0.380978 +0x30C3E07F +// 0.080157 +0x0A4297B9 +// 0.219526 +0x1C196B88 +// 0.370454 +0x2F6B0A96 +// 0.098035 +0x0C8C6CA1 +// 0.227038 +0x1D0F94E7 +// 0.570006 +0x48F5F193 +// 0.227356 +0x1D19FF1D +// 0.169724 +0x15B9852C +// 0.072263 +0x093FE6AA +// 0.162360 +0x14C833DF +// 0.125161 +0x1005432D +// 0.621122 +0x4F80F076 +// 0.035680 +0x04912B81 +// 0.058522 +0x077DA7C5 +// 0.260213 +0x214EA678 +// 0.228819 +0x1D49F0DB +// 0.026095 +0x03571204 +// 0.400056 +0x33350C1B +// 0.160136 +0x147F5833 +// 0.230818 +0x1D8B6E2A +// 0.019030 +0x026F909F +// 0.197555 +0x19497BD1 +// 0.463421 +0x3B51608D +// 0.071727 +0x092E5713 +// 0.653733 +0x53AD84C9 +// 0.001500 +0x003124D1 +// 0.189394 +0x183E0D4E +// 0.150026 +0x13340C77 +// 0.287765 +0x24D57A7F +// 0.261863 +0x2184BA03 +// 0.392144 +0x3231C851 +// 0.034316 +0x0464782B +// 0.588594 +0x4B570D04 +// 0.257803 +0x20FFB1FB +// 0.268174 +0x22538580 +// 0.476386 +0x3CFA3A88 +// 0.005751 +0x00BC73C5 +// 0.209248 +0x1AC8A208 +// 0.210805 +0x1AFBA75E +// 0.518771 +0x42671910 +// 0.185558 +0x17C05971 +// 0.202617 +0x19EF5D73 +// 0.069522 +0x08E61961 +// 0.082404 +0x0A8C3962 +// 0.205971 +0x1A5D3E3A +// 0.199118 +0x197CB19E +// 0.145281 +0x12988E7F +// 0.034749 +0x0472A41E +// 0.305910 +0x27280D7E +// 0.044356 +0x05AD78C9 +// 0.118521 +0x0F2BB106 +// 0.103369 +0x0D3B3335 +// 0.067213 +0x089A6D17 +// 0.170333 +0x15CD74B0 +// 0.127207 +0x1048530D +// 0.253851 +0x207E32EE +// 0.674060 +0x56479BE8 +// 0.096070 +0x0C4C02E5 +// 0.394603 +0x3282584F +// 0.247090 +0x1FA0A35D +// 0.042376 +0x056C9380 +// 0.241937 +0x1EF7CBE5 +// 0.113713 +0x0E8E2200 +// 0.125576 +0x1012E33E +// 0.381545 +0x30D674BF +// 0.171167 +0x15E8D04D +// 0.091595 +0x0BB9605B +// 0.155612 +0x13EB17FD +// 0.005258 +0x00AC4EDC +// 0.061333 +0x07D9C4EA +// 0.279107 +0x23B9C8F2 +// 0.146590 +0x12C37820 +// 0.442982 +0x38B39ED5 +// 0.568359 +0x48BFFE09 +// 0.003647 +0x00777F42 +// 0.590247 +0x4B8D3642 +// 0.055894 +0x072785C7 +// 0.166464 +0x154EB0B0 +// 0.325949 +0x29B8B420 +// 0.302175 +0x26ADAAF3 +// 0.043442 +0x058F8555 +// 0.436734 +0x37E6E7F8 +// 0.525589 +0x43467D80 +// 0.329052 +0x2A1E6216 +// 0.378275 +0x306B5338 +// 0.253012 +0x2062B635 +// 0.165423 +0x152C9686 +// 0.168208 +0x1587D8B8 +// 0.404729 +0x33CE25F8 +// 0.090207 +0x0B8BEAA0 +// 0.105105 +0x0D74108B +// 0.282488 +0x2428945A +// 0.026593 +0x03676650 +// 0.090339 +0x0B903679 +// 0.127662 +0x10573E4F +// 0.124158 +0x0FE46AB3 +// 0.266291 +0x2215D0E5 +// 0.142806 +0x1247781A +// 0.162479 +0x14CC189D +// 0.220797 +0x1C430F53 +// 0.119598 +0x0F4EFB0C +// 0.080688 +0x0A53FD69 +// 0.302626 +0x26BC6FBB +// 0.339764 +0x2B7D6124 +// 0.285195 +0x248144F7 +// 0.085860 +0x0AFD7202 +// 0.006344 +0x00CFE515 +// 0.363443 +0x2E854B96 +// 0.219325 +0x1C12D50A +// 0.473782 +0x3CA4E676 +// 0.408535 +0x344ADEFB +// 0.363240 +0x2E7EA963 +// 0.247339 +0x1FA8CFDA +// 0.412053 +0x34BE2A04 +// 0.044933 +0x05C05F2A +// 0.354765 +0x2D68ECC3 +// 0.079117 +0x0A20857E +// 0.146813 +0x12CAC2B8 +// 0.149376 +0x131EBDB5 +// 0.163887 +0x14FA3CCD +// 0.522782 +0x42EA8779 +// 0.055405 +0x0717831D +// 0.059965 +0x07ACF0DA +// 0.034206 +0x0460DE68 +// 0.402683 +0x338B20D6 +// 0.274575 +0x232548C4 +// 0.045695 +0x05D9555C +// 0.262654 +0x219EA89C +// 0.359145 +0x2DF8732C +// 0.582455 +0x4A8DE414 +// 0.154917 +0x13D44E8E +// 0.278450 +0x23A43C7F +// 0.071868 +0x0932FA10 diff --git a/Testing/Source/Benchmarks/TransformF32.cpp b/Testing/Source/Benchmarks/TransformF32.cpp new file mode 100755 index 00000000..1547a401 --- /dev/null +++ b/Testing/Source/Benchmarks/TransformF32.cpp @@ -0,0 +1,166 @@ +#include "TransformF32.h" +#include "Error.h" +#include "arm_const_structs.h" + +const arm_cfft_instance_f32 *arm_cfft_get_instance_f32(uint16_t fftLen) +{ +switch (fftLen) { + case 16: + return(&arm_cfft_sR_f32_len16); + break; + case 32: + return(&arm_cfft_sR_f32_len32); + break; + case 64: + return(&arm_cfft_sR_f32_len64); + break; + case 128: + return(&arm_cfft_sR_f32_len128); + break; + case 256: + return(&arm_cfft_sR_f32_len256); + break; + case 512: + return(&arm_cfft_sR_f32_len512); + break; + case 1024: + return(&arm_cfft_sR_f32_len1024); + break; + case 2048: + return(&arm_cfft_sR_f32_len2048); + break; + case 4096: + return(&arm_cfft_sR_f32_len4096); + break; + } + return(NULL); +} + + void TransformF32::test_cfft_f32() + { + arm_cfft_f32(this->cfftInstance, this->pDst, this->ifft,this->bitRev); + } + + void TransformF32::test_rfft_f32() + { + arm_rfft_fast_f32(&this->rfftFastInstance, this->pSrc, this->pDst, this->ifft); + } + + void TransformF32::test_dct4_f32() + { + arm_dct4_f32( + &this->dct4Instance, + this->pState, + this->pDst); + } + + void TransformF32::test_cfft_radix4_f32() + { + arm_cfft_radix4_f32(&this->cfftRadix4Instance,this->pDst); + } + + void TransformF32::test_cfft_radix2_f32() + { + arm_cfft_radix2_f32(&this->cfftRadix2Instance,this->pDst); + } + + + void TransformF32::setUp(Testing::testID_t id,std::vector& params,Client::PatternMgr *mgr) + { + + float32_t normalize; + + std::vector::iterator it = params.begin(); + this->nbSamples = *it++; + this->ifft = *it++; + this->bitRev = *it; + + switch(id) + { + case TEST_CFFT_F32_1: + samples.reload(TransformF32::INPUTC_F32_ID,mgr,2*this->nbSamples); + output.create(2*this->nbSamples,TransformF32::OUT_F32_ID,mgr); + + this->pSrc=samples.ptr(); + this->pDst=output.ptr(); + + this->cfftInstance=arm_cfft_get_instance_f32(this->nbSamples); + memcpy(this->pDst,this->pSrc,2*sizeof(float32_t)*this->nbSamples); + break; + + case TEST_RFFT_F32_2: + samples.reload(TransformF32::INPUTR_F32_ID,mgr,this->nbSamples); + output.create(this->nbSamples,TransformF32::OUT_F32_ID,mgr); + + this->pSrc=samples.ptr(); + this->pDst=output.ptr(); + + arm_rfft_fast_init_f32(&this->rfftFastInstance, this->nbSamples); + break; + + case TEST_DCT4_F32_3: + samples.reload(TransformF32::INPUTR_F32_ID,mgr,this->nbSamples); + output.create(this->nbSamples,TransformF32::OUT_F32_ID,mgr); + state.create(2*this->nbSamples,TransformF32::STATE_F32_ID,mgr); + + + this->pSrc=samples.ptr(); + this->pDst=output.ptr(); + this->pState=state.ptr(); + + normalize = sqrt((2.0f/(float32_t)this->nbSamples)); + + memcpy(this->pDst,this->pSrc,sizeof(float32_t)*this->nbSamples); + + arm_dct4_init_f32( + &this->dct4Instance, + &this->rfftInstance, + &this->cfftRadix4Instance, + this->nbSamples, + this->nbSamples/2, + normalize); + break; + + case TEST_CFFT_RADIX4_F32_4: + samples.reload(TransformF32::INPUTC_F32_ID,mgr,2*this->nbSamples); + output.create(2*this->nbSamples,TransformF32::OUT_F32_ID,mgr); + + this->pSrc=samples.ptr(); + this->pDst=output.ptr(); + + + memcpy(this->pDst,this->pSrc,2*sizeof(float32_t)*this->nbSamples); + + arm_cfft_radix4_init_f32(&this->cfftRadix4Instance, + this->nbSamples, + this->ifft, + this->bitRev); + + break; + + case TEST_CFFT_RADIX2_F32_5: + samples.reload(TransformF32::INPUTC_F32_ID,mgr,2*this->nbSamples); + output.create(2*this->nbSamples,TransformF32::OUT_F32_ID,mgr); + + this->pSrc=samples.ptr(); + this->pDst=output.ptr(); + + + memcpy(this->pDst,this->pSrc,2*sizeof(float32_t)*this->nbSamples); + + arm_cfft_radix2_init_f32(&this->cfftRadix2Instance, + this->nbSamples, + this->ifft, + this->bitRev); + break; + + } + + + + + } + + void TransformF32::tearDown(Testing::testID_t id,Client::PatternMgr *mgr) + { + } diff --git a/Testing/Source/Benchmarks/TransformQ15.cpp b/Testing/Source/Benchmarks/TransformQ15.cpp new file mode 100755 index 00000000..6955bc46 --- /dev/null +++ b/Testing/Source/Benchmarks/TransformQ15.cpp @@ -0,0 +1,224 @@ +#include "TransformQ15.h" +#include "Error.h" +#include "arm_const_structs.h" + +#define CFFT_INIT(typ, suffix, S, fftLen) \ + \ +{ \ + \ + /* Initialise the default arm status */ \ + arm_status status = ARM_MATH_SUCCESS; \ + \ + /* Initialise the FFT length */ \ + S->fftLen = fftLen; \ + \ + /* Initialise the Twiddle coefficient pointer */ \ + S->pTwiddle = (typ *)twiddleCoef_4096_##suffix; \ + \ + \ + /* Initializations of Instance structure depending on the FFT length */\ + switch (S->fftLen) { \ + \ + \ + /* Initializations of structure parameters for 2048 point FFT */ \ + case 2048U: \ + /* Initialise the bit reversal table modifier */ \ + S->bitRevLength = ARMBITREVINDEXTABLE_FIXED_2048_TABLE_LENGTH; \ + S->pBitRevTable = (uint16_t *)armBitRevIndexTable_fixed_2048; \ + S->pTwiddle = (typ *)twiddleCoef_2048_##suffix; \ + break; \ + \ + /* Initializations of structure parameters for 1024 point FFT */ \ + case 1024U: \ + /* Initialise the bit reversal table modifier */ \ + S->bitRevLength = ARMBITREVINDEXTABLE_FIXED_1024_TABLE_LENGTH; \ + S->pBitRevTable = (uint16_t *)armBitRevIndexTable_fixed_1024; \ + S->pTwiddle = (typ *)twiddleCoef_1024_##suffix; \ + break; \ + \ + /* Initializations of structure parameters for 512 point FFT */ \ + case 512U: \ + /* Initialise the bit reversal table modifier */ \ + S->bitRevLength = ARMBITREVINDEXTABLE_FIXED_512_TABLE_LENGTH; \ + S->pBitRevTable = (uint16_t *)armBitRevIndexTable_fixed_512; \ + S->pTwiddle = (typ *)twiddleCoef_512_##suffix; \ + break; \ + \ + case 256U: \ + S->bitRevLength = ARMBITREVINDEXTABLE_FIXED_256_TABLE_LENGTH; \ + S->pBitRevTable = (uint16_t *)armBitRevIndexTable_fixed_256; \ + S->pTwiddle = (typ *)twiddleCoef_256_##suffix; \ + \ + break; \ + \ + case 128U: \ + S->bitRevLength = ARMBITREVINDEXTABLE_FIXED_128_TABLE_LENGTH; \ + S->pBitRevTable = (uint16_t *)armBitRevIndexTable_fixed_128; \ + S->pTwiddle = (typ *)twiddleCoef_128_##suffix; \ + \ + break; \ + \ + case 64U: \ + S->bitRevLength = ARMBITREVINDEXTABLE_FIXED_64_TABLE_LENGTH; \ + S->pBitRevTable = (uint16_t *)armBitRevIndexTable_fixed_64; \ + S->pTwiddle = (typ *)twiddleCoef_64_##suffix; \ + break; \ + \ + case 32U: \ + S->bitRevLength = ARMBITREVINDEXTABLE_FIXED_32_TABLE_LENGTH; \ + S->pBitRevTable = (uint16_t *)armBitRevIndexTable_fixed_32; \ + S->pTwiddle = (typ *)twiddleCoef_32_##suffix; \ + break; \ + \ + case 16U: \ + /* Initializations of structure parameters for 16 point FFT */ \ + S->bitRevLength = ARMBITREVINDEXTABLE_FIXED_16_TABLE_LENGTH; \ + S->pBitRevTable = (uint16_t *)armBitRevIndexTable_fixed_16; \ + S->pTwiddle = (typ *)twiddleCoef_16_##suffix; \ + break; \ + \ + \ + default: \ + /* Reporting argument error if fftSize is not valid value */ \ + status = ARM_MATH_ARGUMENT_ERROR; \ + break; \ + } \ + \ + \ + return (status); \ + \ +} + +arm_status arm_cfft_init_q15(arm_cfft_instance_q15 *S, uint16_t fftLen) +{ + CFFT_INIT(q15_t, q15, S, fftLen); +} + + void TransformQ15::test_cfft_q15() + { + arm_cfft_q15(&this->cfftInstance, this->pDst, this->ifft,this->bitRev); + } + + void TransformQ15::test_rfft_q15() + { + arm_rfft_q15(&this->rfftInstance, this->pSrc, this->pDst); + } + + void TransformQ15::test_dct4_q15() + { + arm_dct4_q15( + &this->dct4Instance, + this->pState, + this->pDst); + } + + void TransformQ15::test_cfft_radix4_q15() + { + arm_cfft_radix4_q15(&this->cfftRadix4Instance,this->pDst); + } + + void TransformQ15::test_cfft_radix2_q15() + { + arm_cfft_radix2_q15(&this->cfftRadix2Instance,this->pDst); + } + + + void TransformQ15::setUp(Testing::testID_t id,std::vector& params,Client::PatternMgr *mgr) + { + + float32_t normalize; + + std::vector::iterator it = params.begin(); + this->nbSamples = *it++; + this->ifft = *it++; + this->bitRev = *it; + + switch(id) + { + case TEST_CFFT_Q15_1: + samples.reload(TransformQ15::INPUTC_Q15_ID,mgr,2*this->nbSamples); + output.create(2*this->nbSamples,TransformQ15::OUT_Q15_ID,mgr); + + this->pSrc=samples.ptr(); + this->pDst=output.ptr(); + + arm_cfft_init_q15(&this->cfftInstance,this->nbSamples); + memcpy(this->pDst,this->pSrc,2*sizeof(q15_t)*this->nbSamples); + break; + + case TEST_RFFT_Q15_2: + samples.reload(TransformQ15::INPUTR_Q15_ID,mgr,this->nbSamples); + output.create(this->nbSamples,TransformQ15::OUT_Q15_ID,mgr); + + this->pSrc=samples.ptr(); + this->pDst=output.ptr(); + + arm_rfft_init_q15(&this->rfftInstance, this->nbSamples, this->ifft, this->bitRev); + break; + + case TEST_DCT4_Q15_3: + samples.reload(TransformQ15::INPUTR_Q15_ID,mgr,this->nbSamples); + output.create(this->nbSamples,TransformQ15::OUT_Q15_ID,mgr); + state.create(2*this->nbSamples,TransformQ15::STATE_Q15_ID,mgr); + + + this->pSrc=samples.ptr(); + this->pDst=output.ptr(); + this->pState=state.ptr(); + + normalize = sqrt((2.0f/(float32_t)this->nbSamples)); + + memcpy(this->pDst,this->pSrc,sizeof(q15_t)*this->nbSamples); + + arm_dct4_init_q15( + &this->dct4Instance, + &this->rfftInstance, + &this->cfftRadix4Instance, + this->nbSamples, + this->nbSamples/2, + normalize); + break; + + case TEST_CFFT_RADIX4_Q15_4: + samples.reload(TransformQ15::INPUTC_Q15_ID,mgr,2*this->nbSamples); + output.create(2*this->nbSamples,TransformQ15::OUT_Q15_ID,mgr); + + this->pSrc=samples.ptr(); + this->pDst=output.ptr(); + + + memcpy(this->pDst,this->pSrc,2*sizeof(q15_t)*this->nbSamples); + + arm_cfft_radix4_init_q15(&this->cfftRadix4Instance, + this->nbSamples, + this->ifft, + this->bitRev); + + break; + + case TEST_CFFT_RADIX2_Q15_5: + samples.reload(TransformQ15::INPUTC_Q15_ID,mgr,2*this->nbSamples); + output.create(2*this->nbSamples,TransformQ15::OUT_Q15_ID,mgr); + + this->pSrc=samples.ptr(); + this->pDst=output.ptr(); + + + memcpy(this->pDst,this->pSrc,2*sizeof(q15_t)*this->nbSamples); + + arm_cfft_radix2_init_q15(&this->cfftRadix2Instance, + this->nbSamples, + this->ifft, + this->bitRev); + break; + + } + + + + + } + + void TransformQ15::tearDown(Testing::testID_t id,Client::PatternMgr *mgr) + { + } diff --git a/Testing/Source/Benchmarks/TransformQ31.cpp b/Testing/Source/Benchmarks/TransformQ31.cpp new file mode 100755 index 00000000..34a5e0ea --- /dev/null +++ b/Testing/Source/Benchmarks/TransformQ31.cpp @@ -0,0 +1,223 @@ +#include "TransformQ31.h" +#include "Error.h" +#include "arm_const_structs.h" + +#define CFFT_INIT(typ, suffix, S, fftLen) \ + \ +{ \ + \ + /* Initialise the default arm status */ \ + arm_status status = ARM_MATH_SUCCESS; \ + \ + /* Initialise the FFT length */ \ + S->fftLen = fftLen; \ + \ + /* Initialise the Twiddle coefficient pointer */ \ + S->pTwiddle = (typ *)twiddleCoef_4096_##suffix; \ + \ + \ + /* Initializations of Instance structure depending on the FFT length */\ + switch (S->fftLen) { \ + \ + /* Initializations of structure parameters for 2048 point FFT */ \ + case 2048U: \ + /* Initialise the bit reversal table modifier */ \ + S->bitRevLength = ARMBITREVINDEXTABLE_FIXED_2048_TABLE_LENGTH; \ + S->pBitRevTable = (uint16_t *)armBitRevIndexTable_fixed_2048; \ + S->pTwiddle = (typ *)twiddleCoef_2048_##suffix; \ + break; \ + \ + /* Initializations of structure parameters for 1024 point FFT */ \ + case 1024U: \ + /* Initialise the bit reversal table modifier */ \ + S->bitRevLength = ARMBITREVINDEXTABLE_FIXED_1024_TABLE_LENGTH; \ + S->pBitRevTable = (uint16_t *)armBitRevIndexTable_fixed_1024; \ + S->pTwiddle = (typ *)twiddleCoef_1024_##suffix; \ + break; \ + \ + /* Initializations of structure parameters for 512 point FFT */ \ + case 512U: \ + /* Initialise the bit reversal table modifier */ \ + S->bitRevLength = ARMBITREVINDEXTABLE_FIXED_512_TABLE_LENGTH; \ + S->pBitRevTable = (uint16_t *)armBitRevIndexTable_fixed_512; \ + S->pTwiddle = (typ *)twiddleCoef_512_##suffix; \ + break; \ + \ + case 256U: \ + S->bitRevLength = ARMBITREVINDEXTABLE_FIXED_256_TABLE_LENGTH; \ + S->pBitRevTable = (uint16_t *)armBitRevIndexTable_fixed_256; \ + S->pTwiddle = (typ *)twiddleCoef_256_##suffix; \ + \ + break; \ + \ + case 128U: \ + S->bitRevLength = ARMBITREVINDEXTABLE_FIXED_128_TABLE_LENGTH; \ + S->pBitRevTable = (uint16_t *)armBitRevIndexTable_fixed_128; \ + S->pTwiddle = (typ *)twiddleCoef_128_##suffix; \ + \ + break; \ + \ + case 64U: \ + S->bitRevLength = ARMBITREVINDEXTABLE_FIXED_64_TABLE_LENGTH; \ + S->pBitRevTable = (uint16_t *)armBitRevIndexTable_fixed_64; \ + S->pTwiddle = (typ *)twiddleCoef_64_##suffix; \ + break; \ + \ + case 32U: \ + S->bitRevLength = ARMBITREVINDEXTABLE_FIXED_32_TABLE_LENGTH; \ + S->pBitRevTable = (uint16_t *)armBitRevIndexTable_fixed_32; \ + S->pTwiddle = (typ *)twiddleCoef_32_##suffix; \ + break; \ + \ + case 16U: \ + /* Initializations of structure parameters for 16 point FFT */ \ + S->bitRevLength = ARMBITREVINDEXTABLE_FIXED_16_TABLE_LENGTH; \ + S->pBitRevTable = (uint16_t *)armBitRevIndexTable_fixed_16; \ + S->pTwiddle = (typ *)twiddleCoef_16_##suffix; \ + break; \ + \ + \ + default: \ + /* Reporting argument error if fftSize is not valid value */ \ + status = ARM_MATH_ARGUMENT_ERROR; \ + break; \ + } \ + \ + \ + return (status); \ + \ +} + +arm_status arm_cfft_init_q31(arm_cfft_instance_q31 *S, uint16_t fftLen) +{ + CFFT_INIT(q31_t, q31, S, fftLen); +} + + void TransformQ31::test_cfft_q31() + { + arm_cfft_q31(&this->cfftInstance, this->pDst, this->ifft,this->bitRev); + } + + void TransformQ31::test_rfft_q31() + { + arm_rfft_q31(&this->rfftInstance, this->pSrc, this->pDst); + } + + void TransformQ31::test_dct4_q31() + { + arm_dct4_q31( + &this->dct4Instance, + this->pState, + this->pDst); + } + + void TransformQ31::test_cfft_radix4_q31() + { + arm_cfft_radix4_q31(&this->cfftRadix4Instance,this->pDst); + } + + void TransformQ31::test_cfft_radix2_q31() + { + arm_cfft_radix2_q31(&this->cfftRadix2Instance,this->pDst); + } + + + void TransformQ31::setUp(Testing::testID_t id,std::vector& params,Client::PatternMgr *mgr) + { + + float32_t normalize; + + std::vector::iterator it = params.begin(); + this->nbSamples = *it++; + this->ifft = *it++; + this->bitRev = *it; + + switch(id) + { + case TEST_CFFT_Q31_1: + samples.reload(TransformQ31::INPUTC_Q31_ID,mgr,2*this->nbSamples); + output.create(2*this->nbSamples,TransformQ31::OUT_Q31_ID,mgr); + + this->pSrc=samples.ptr(); + this->pDst=output.ptr(); + + arm_cfft_init_q31(&this->cfftInstance,this->nbSamples); + memcpy(this->pDst,this->pSrc,2*sizeof(q31_t)*this->nbSamples); + break; + + case TEST_RFFT_Q31_2: + samples.reload(TransformQ31::INPUTR_Q31_ID,mgr,this->nbSamples); + output.create(this->nbSamples,TransformQ31::OUT_Q31_ID,mgr); + + this->pSrc=samples.ptr(); + this->pDst=output.ptr(); + + arm_rfft_init_q31(&this->rfftInstance, this->nbSamples,this->ifft,this->bitRev); + break; + + case TEST_DCT4_Q31_3: + samples.reload(TransformQ31::INPUTR_Q31_ID,mgr,this->nbSamples); + output.create(this->nbSamples,TransformQ31::OUT_Q31_ID,mgr); + state.create(2*this->nbSamples,TransformQ31::STATE_Q31_ID,mgr); + + + this->pSrc=samples.ptr(); + this->pDst=output.ptr(); + this->pState=state.ptr(); + + normalize = sqrt((2.0f/(float32_t)this->nbSamples)); + + memcpy(this->pDst,this->pSrc,sizeof(q31_t)*this->nbSamples); + + arm_dct4_init_q31( + &this->dct4Instance, + &this->rfftInstance, + &this->cfftRadix4Instance, + this->nbSamples, + this->nbSamples/2, + normalize); + break; + + case TEST_CFFT_RADIX4_Q31_4: + samples.reload(TransformQ31::INPUTC_Q31_ID,mgr,2*this->nbSamples); + output.create(2*this->nbSamples,TransformQ31::OUT_Q31_ID,mgr); + + this->pSrc=samples.ptr(); + this->pDst=output.ptr(); + + + memcpy(this->pDst,this->pSrc,2*sizeof(q31_t)*this->nbSamples); + + arm_cfft_radix4_init_q31(&this->cfftRadix4Instance, + this->nbSamples, + this->ifft, + this->bitRev); + + break; + + case TEST_CFFT_RADIX2_Q31_5: + samples.reload(TransformQ31::INPUTC_Q31_ID,mgr,2*this->nbSamples); + output.create(2*this->nbSamples,TransformQ31::OUT_Q31_ID,mgr); + + this->pSrc=samples.ptr(); + this->pDst=output.ptr(); + + + memcpy(this->pDst,this->pSrc,2*sizeof(q31_t)*this->nbSamples); + + arm_cfft_radix2_init_q31(&this->cfftRadix2Instance, + this->nbSamples, + this->ifft, + this->bitRev); + break; + + } + + + + + } + + void TransformQ31::tearDown(Testing::testID_t id,Client::PatternMgr *mgr) + { + } diff --git a/Testing/addAllBenchToDatabase.bat b/Testing/addAllBenchToDatabase.bat index f56964a4..4534dc9f 100755 --- a/Testing/addAllBenchToDatabase.bat +++ b/Testing/addAllBenchToDatabase.bat @@ -21,4 +21,6 @@ python addToDB.py -f bench.txt Support echo "Unary Matrix" python addToDB.py -f bench.txt Unary echo "Binary Matrix" -python addToDB.py -f bench.txt Binary \ No newline at end of file +python addToDB.py -f bench.txt Binary +echo "Transform" +python addToDB.py -f bench.txt Transform \ No newline at end of file diff --git a/Testing/addAllBenchToRegressionDatabase.bat b/Testing/addAllBenchToRegressionDatabase.bat index c8e059f5..eee59703 100755 --- a/Testing/addAllBenchToRegressionDatabase.bat +++ b/Testing/addAllBenchToRegressionDatabase.bat @@ -21,4 +21,6 @@ python addToRegDB.py -f bench.txt Support echo "Unary Matrix" python addToRegDB.py -f bench.txt Unary echo "Binary Matrix" -python addToRegDB.py -f bench.txt Binary \ No newline at end of file +python addToRegDB.py -f bench.txt Binary +echo "Transform" +python addToRegDB.py -f bench.txt Transform \ No newline at end of file diff --git a/Testing/bench.txt b/Testing/bench.txt index 6fe42413..48e98d56 100755 --- a/Testing/bench.txt +++ b/Testing/bench.txt @@ -1270,6 +1270,143 @@ group Root { } } + group Transform { + class = Transform + folder = Transform + + suite Transform F32 { + class = TransformF32 + folder = TransformF32 + + ParamList { + NB,IFFT,BITREV + Summary NB + Names "Number of samples,Inverse FFT, Bit Reversal" + Formula "NB" + } + + Pattern INPUTR_F32_ID : RealSamples1_f32.txt + Pattern INPUTC_F32_ID : ComplexSamples1_f32.txt + Output OUT_F32_ID : Output + Output STATE_F32_ID : Output + + + Params CFFT_PARAM_ID = { + NB = [16,64,128,256] + IFFT = [0,1] + REV = [0,1] + } + + Params RFFT_PARAM_ID = { + NB = [32,64,128,256] + IFFT = [0,1] + REV = [1] + } + + Params DCT_PARAM_ID = { + NB = [128,512,2048] + IFFT = [0] + REV = [1] + } + + Functions { + test_cfft_f32:test_cfft_f32 -> CFFT_PARAM_ID + test_rfft_f32:test_rfft_f32 -> RFFT_PARAM_ID + test_dct4_f32:test_dct4_f32 -> DCT_PARAM_ID + test_cfft_radix4_f32:test_cfft_radix4_f32 -> CFFT_PARAM_ID + test_cfft_radix2_f32:test_cfft_radix2_f32 -> CFFT_PARAM_ID + } + } + + suite Transform Q31 { + class = TransformQ31 + folder = TransformQ31 + + ParamList { + NB,IFFT,BITREV + Summary NB + Names "Number of samples,Inverse FFT, Bit Reversal" + Formula "NB" + } + + Pattern INPUTR_Q31_ID : RealSamples1_q31.txt + Pattern INPUTC_Q31_ID : ComplexSamples1_q31.txt + Output OUT_Q31_ID : Output + Output STATE_Q31_ID : Output + + + Params CFFT_PARAM_ID = { + NB = [16,64,128,256] + IFFT = [0,1] + REV = [0,1] + } + + Params RFFT_PARAM_ID = { + NB = [32,64,128,256] + IFFT = [0,1] + REV = [0,1] + } + + Params DCT_PARAM_ID = { + NB = [128,512,2048] + IFFT = [0] + REV = [1] + } + + Functions { + test_cfft_q31:test_cfft_q31 -> CFFT_PARAM_ID + test_rfft_q31:test_rfft_q31 -> RFFT_PARAM_ID + test_dct4_q31:test_dct4_q31 -> DCT_PARAM_ID + test_cfft_radix4_q31:test_cfft_radix4_q31 -> CFFT_PARAM_ID + test_cfft_radix2_q31:test_cfft_radix2_q31 -> CFFT_PARAM_ID + } + } + + suite Transform Q15 { + class = TransformQ15 + folder = TransformQ15 + + ParamList { + NB,IFFT,BITREV + Summary NB + Names "Number of samples,Inverse FFT, Bit Reversal" + Formula "NB" + } + + Pattern INPUTR_Q15_ID : RealSamples1_q15.txt + Pattern INPUTC_Q15_ID : ComplexSamples1_q15.txt + Output OUT_Q15_ID : Output + Output STATE_Q15_ID : Output + + + Params CFFT_PARAM_ID = { + NB = [16,64,128,256] + IFFT = [0,1] + REV = [0,1] + } + + Params RFFT_PARAM_ID = { + NB = [32,64,128,256] + IFFT = [0,1] + REV = [1] + } + + Params DCT_PARAM_ID = { + NB = [128,512,2048] + IFFT = [0] + REV = [1] + } + + Functions { + test_cfft_q15:test_cfft_q15 -> CFFT_PARAM_ID + test_rfft_q15:test_rfft_q15 -> RFFT_PARAM_ID + test_dct4_q15:test_dct4_q15 -> DCT_PARAM_ID + test_cfft_radix4_q15:test_cfft_radix4_q15 -> CFFT_PARAM_ID + test_cfft_radix2_q15:test_cfft_radix2_q15 -> CFFT_PARAM_ID + } + } + } + } group NN Benchmarks diff --git a/Testing/generateAllRegressions.bat b/Testing/generateAllRegressions.bat index 0108a640..87485fdc 100755 --- a/Testing/generateAllRegressions.bat +++ b/Testing/generateAllRegressions.bat @@ -1,24 +1,26 @@ echo "Basic Maths" -python summaryBench.py -f bench.txt BasicBenchmarks +python summaryBench.py -f bench.txt -r build_m7\result.txt BasicBenchmarks echo "Complex Maths" -python summaryBench.py -f bench.txt ComplexBenchmarks +python summaryBench.py -f bench.txt -r build_m7\result.txt ComplexBenchmarks echo "FIR" -python summaryBench.py -f bench.txt FIR +python summaryBench.py -f bench.txt -r build_m7\result.txt FIR echo "Convolution / Correlation" -python summaryBench.py -f bench.txt MISC +python summaryBench.py -f bench.txt -r build_m7\result.txt MISC echo "Decimation / Interpolation" -python summaryBench.py -f bench.txt DECIM +python summaryBench.py -f bench.txt -r build_m7\result.txt DECIM echo "BiQuad" -python summaryBench.py -f bench.txt BIQUAD +python summaryBench.py -f bench.txt -r build_m7\result.txt BIQUAD echo "Controller" -python summaryBench.py -f bench.txt Controller +python summaryBench.py -f bench.txt -r build_m7\result.txt Controller echo "Fast Math" -python summaryBench.py -f bench.txt FastMath +python summaryBench.py -f bench.txt -r build_m7\result.txt FastMath echo "Barycenter" -python summaryBench.py -f bench.txt SupportBarF32 +python summaryBench.py -f bench.txt -r build_m7\result.txt SupportBarF32 echo "Support" -python summaryBench.py -f bench.txt Support +python summaryBench.py -f bench.txt -r build_m7\result.txt Support echo "Unary Matrix" -python summaryBench.py -f bench.txt Unary +python summaryBench.py -f bench.txt -r build_m7\result.txt Unary echo "Binary Matrix" -python summaryBench.py -f bench.txt Binary \ No newline at end of file +python summaryBench.py -f bench.txt -r build_m7\result.txt Binary +echo "Transform" +python summaryBench.py -f bench.txt -r build_m7\result.txt Transform \ No newline at end of file diff --git a/Testing/runAllBenchmarks.bat b/Testing/runAllBenchmarks.bat new file mode 100755 index 00000000..7438b765 --- /dev/null +++ b/Testing/runAllBenchmarks.bat @@ -0,0 +1,70 @@ +@ECHO OFF + +echo "Basic Maths" +python processTests.py -f bench.txt -e BasicBenchmarks +call:runBench + +echo "Complex Maths" +python processTests.py -f bench.txt -e ComplexBenchmarks +call:runBench + +echo "FIR" +python processTests.py -f bench.txt -e FIR +call:runBench + +echo "Convolution / Correlation" +python processTests.py -f bench.txt -e MISC +call:runBench + +echo "Decimation / Interpolation" +python processTests.py -f bench.txt -e DECIM +call:runBench + +echo "BiQuad" +python processTests.py -f bench.txt -e BIQUAD +call:runBench + +echo "Controller" +python processTests.py -f bench.txt -e Controller +call:runBench + +echo "Fast Math" +python processTests.py -f bench.txt -e FastMath +call:runBench + +echo "Barycenter" +python processTests.py -f bench.txt -e SupportBarF32 +call:runBench + +echo "Support" +python processTests.py -f bench.txt -e Support +call:runBench + +echo "Unary Matrix" +python processTests.py -f bench.txt -e Unary +call:runBench + +echo "Binary Matrix" +python processTests.py -f bench.txt -e Binary +call:runBench + +echo "Transform" +python processTests.py -f bench.txt -e Transform +call:runBench + +EXIT /B + +:runBench +REM pushd build_m7 +REM pushd build_m0 +pushd build_a5 +make +REM "C:\Program Files\ARM\Development Studio 2019.0\sw\models\bin\FVP_MPS2_Cortex-M7.exe" -a Testing > result.txt +REM "C:\Program Files\ARM\Development Studio 2019.0\sw\models\bin\FVP_MPS2_Cortex-M0.exe" -a Testing > result.txt +"C:\Program Files\ARM\Development Studio 2019.0\sw\models\bin\FVP_VE_Cortex-A5x1.exe" -a Testing > result.txt +popd +echo "Parse result" +REM python processResult.py -f bench.txt -e -r build_m7\result.txt +REM python processResult.py -f bench.txt -e -r build_m0\result.txt +python processResult.py -f bench.txt -e -r build_a5\result.txt +goto:eof \ No newline at end of file