CMSIS-DSP: Initial F64 CFFT/RFFT implementation
diff --git a/CMSIS/DSP/Include/arm_common_tables.h b/CMSIS/DSP/Include/arm_common_tables.h
index bff7a46..721b18d 100644
--- a/CMSIS/DSP/Include/arm_common_tables.h
+++ b/CMSIS/DSP/Include/arm_common_tables.h
@@ -31,243 +31,360 @@
#include "arm_math.h"
-#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_FFT_ALLOW_TABLES)
-
+#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_FFT_ALLOW_TABLES)
+ /* Double Precision Float CFFT twiddles */
#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || defined(ARM_TABLE_BITREV_1024)
extern const uint16_t armBitRevTable[1024];
#endif /* !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) */
+ #if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || defined(ARM_TABLE_TWIDDLECOEF_F64_16)
+ extern const uint64_t twiddleCoefF64_16[32];
+ #endif /* !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) */
+
+ #if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || defined(ARM_TABLE_TWIDDLECOEF_F64_32)
+ extern const uint64_t twiddleCoefF64_32[64];
+ #endif /* !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) */
+
+ #if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || defined(ARM_TABLE_TWIDDLECOEF_F64_64)
+ extern const uint64_t twiddleCoefF64_64[128];
+ #endif /* !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) */
+
+ #if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || defined(ARM_TABLE_TWIDDLECOEF_F64_128)
+ extern const uint64_t twiddleCoefF64_128[256];
+ #endif /* !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) */
+
+ #if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || defined(ARM_TABLE_TWIDDLECOEF_F64_256)
+ extern const uint64_t twiddleCoefF64_256[512];
+ #endif /* !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) */
+
+ #if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || defined(ARM_TABLE_TWIDDLECOEF_F64_512)
+ extern const uint64_t twiddleCoefF64_512[1024];
+ #endif /* !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) */
+
+ #if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || defined(ARM_TABLE_TWIDDLECOEF_F64_1024)
+ extern const uint64_t twiddleCoefF64_1024[2048];
+ #endif /* !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) */
+
+ #if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || defined(ARM_TABLE_TWIDDLECOEF_F64_2048)
+ extern const uint64_t twiddleCoefF64_2048[4096];
+ #endif /* !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) */
+
+ #if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || defined(ARM_TABLE_TWIDDLECOEF_F64_4096)
+ extern const uint64_t twiddleCoefF64_4096[8192];
+ #endif /* !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) */
+
#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || defined(ARM_TABLE_TWIDDLECOEF_F32_16)
extern const float32_t twiddleCoef_16[32];
#endif /* !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) */
-
+
#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || defined(ARM_TABLE_TWIDDLECOEF_F32_32)
extern const float32_t twiddleCoef_32[64];
#endif /* !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) */
-
+
#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || defined(ARM_TABLE_TWIDDLECOEF_F32_64)
extern const float32_t twiddleCoef_64[128];
#endif /* !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) */
-
+
#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || defined(ARM_TABLE_TWIDDLECOEF_F32_128)
extern const float32_t twiddleCoef_128[256];
#endif /* !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) */
-
+
#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || defined(ARM_TABLE_TWIDDLECOEF_F32_256)
extern const float32_t twiddleCoef_256[512];
#endif /* !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) */
-
+
#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || defined(ARM_TABLE_TWIDDLECOEF_F32_512)
extern const float32_t twiddleCoef_512[1024];
#endif /* !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) */
-
+
#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || defined(ARM_TABLE_TWIDDLECOEF_F32_1024)
extern const float32_t twiddleCoef_1024[2048];
#endif /* !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) */
-
+
#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || defined(ARM_TABLE_TWIDDLECOEF_F32_2048)
extern const float32_t twiddleCoef_2048[4096];
#endif /* !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) */
-
+
#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || defined(ARM_TABLE_TWIDDLECOEF_F32_4096)
extern const float32_t twiddleCoef_4096[8192];
#define twiddleCoef twiddleCoef_4096
#endif /* !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) */
-
+
#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || defined(ARM_TABLE_TWIDDLECOEF_Q31_16)
extern const q31_t twiddleCoef_16_q31[24];
#endif /* !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) */
-
+
#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || defined(ARM_TABLE_TWIDDLECOEF_Q31_32)
extern const q31_t twiddleCoef_32_q31[48];
#endif /* !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) */
-
+
#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || defined(ARM_TABLE_TWIDDLECOEF_Q31_64)
extern const q31_t twiddleCoef_64_q31[96];
#endif /* !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) */
-
+
#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || defined(ARM_TABLE_TWIDDLECOEF_Q31_128)
extern const q31_t twiddleCoef_128_q31[192];
#endif /* !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) */
-
+
#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || defined(ARM_TABLE_TWIDDLECOEF_Q31_256)
extern const q31_t twiddleCoef_256_q31[384];
#endif /* !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) */
-
+
#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || defined(ARM_TABLE_TWIDDLECOEF_Q31_512)
extern const q31_t twiddleCoef_512_q31[768];
#endif /* !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) */
-
+
#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || defined(ARM_TABLE_TWIDDLECOEF_Q31_1024)
extern const q31_t twiddleCoef_1024_q31[1536];
#endif /* !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) */
-
+
#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || defined(ARM_TABLE_TWIDDLECOEF_Q31_2048)
extern const q31_t twiddleCoef_2048_q31[3072];
#endif /* !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) */
-
+
#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || defined(ARM_TABLE_TWIDDLECOEF_Q31_4096)
extern const q31_t twiddleCoef_4096_q31[6144];
#endif /* !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) */
-
+
#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || defined(ARM_TABLE_TWIDDLECOEF_Q15_16)
extern const q15_t twiddleCoef_16_q15[24];
#endif /* !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) */
-
+
#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || defined(ARM_TABLE_TWIDDLECOEF_Q15_32)
extern const q15_t twiddleCoef_32_q15[48];
#endif /* !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) */
-
+
#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || defined(ARM_TABLE_TWIDDLECOEF_Q15_64)
extern const q15_t twiddleCoef_64_q15[96];
#endif /* !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) */
-
+
#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || defined(ARM_TABLE_TWIDDLECOEF_Q15_128)
extern const q15_t twiddleCoef_128_q15[192];
#endif /* !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) */
-
+
#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || defined(ARM_TABLE_TWIDDLECOEF_Q15_256)
extern const q15_t twiddleCoef_256_q15[384];
#endif /* !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) */
-
+
#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || defined(ARM_TABLE_TWIDDLECOEF_Q15_512)
extern const q15_t twiddleCoef_512_q15[768];
#endif /* !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) */
-
+
#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || defined(ARM_TABLE_TWIDDLECOEF_Q15_1024)
extern const q15_t twiddleCoef_1024_q15[1536];
#endif /* !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) */
-
+
#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || defined(ARM_TABLE_TWIDDLECOEF_Q15_2048)
extern const q15_t twiddleCoef_2048_q15[3072];
#endif /* !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) */
-
+
#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || defined(ARM_TABLE_TWIDDLECOEF_Q15_4096)
extern const q15_t twiddleCoef_4096_q15[6144];
#endif /* !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) */
-
+
+ /* Double Precision Float RFFT twiddles */
+ #if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || defined(ARM_TABLE_TWIDDLECOEF_RFFT_F64_32)
+ extern const uint64_t twiddleCoefF64_rfft_32[32];
+ #endif /* !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) */
+
+ #if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || defined(ARM_TABLE_TWIDDLECOEF_RFFT_F64_64)
+ extern const uint64_t twiddleCoefF64_rfft_64[64];
+ #endif /* !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) */
+
+ #if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || defined(ARM_TABLE_TWIDDLECOEF_RFFT_F64_128)
+ extern const uint64_t twiddleCoefF64_rfft_128[128];
+ #endif /* !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) */
+
+ #if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || defined(ARM_TABLE_TWIDDLECOEF_RFFT_F64_256)
+ extern const uint64_t twiddleCoefF64_rfft_256[256];
+ #endif /* !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) */
+
+ #if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || defined(ARM_TABLE_TWIDDLECOEF_RFFT_F64_512)
+ extern const uint64_t twiddleCoefF64_rfft_512[512];
+ #endif /* !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) */
+
+ #if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || defined(ARM_TABLE_TWIDDLECOEF_RFFT_F64_1024)
+ extern const uint64_t twiddleCoefF64_rfft_1024[1024];
+ #endif /* !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) */
+
+ #if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || defined(ARM_TABLE_TWIDDLECOEF_RFFT_F64_2048)
+ extern const uint64_t twiddleCoefF64_rfft_2048[2048];
+ #endif /* !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) */
+
+ #if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || defined(ARM_TABLE_TWIDDLECOEF_RFFT_F64_4096)
+ extern const uint64_t twiddleCoefF64_rfft_4096[4096];
+ #endif /* !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) */
+
+
#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || defined(ARM_TABLE_TWIDDLECOEF_RFFT_F32_32)
extern const float32_t twiddleCoef_rfft_32[32];
#endif /* !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) */
-
+
#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || defined(ARM_TABLE_TWIDDLECOEF_RFFT_F32_64)
extern const float32_t twiddleCoef_rfft_64[64];
#endif /* !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) */
-
+
#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || defined(ARM_TABLE_TWIDDLECOEF_RFFT_F32_128)
extern const float32_t twiddleCoef_rfft_128[128];
#endif /* !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) */
-
+
#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || defined(ARM_TABLE_TWIDDLECOEF_RFFT_F32_256)
extern const float32_t twiddleCoef_rfft_256[256];
#endif /* !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) */
-
+
#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || defined(ARM_TABLE_TWIDDLECOEF_RFFT_F32_512)
extern const float32_t twiddleCoef_rfft_512[512];
#endif /* !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) */
-
+
#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || defined(ARM_TABLE_TWIDDLECOEF_RFFT_F32_1024)
extern const float32_t twiddleCoef_rfft_1024[1024];
#endif /* !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) */
-
+
#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || defined(ARM_TABLE_TWIDDLECOEF_RFFT_F32_2048)
extern const float32_t twiddleCoef_rfft_2048[2048];
#endif /* !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) */
-
+
#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || defined(ARM_TABLE_TWIDDLECOEF_RFFT_F32_4096)
extern const float32_t twiddleCoef_rfft_4096[4096];
#endif /* !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) */
-
+
+
+ /* Double precision floating-point bit reversal tables */
+
+ #if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || defined(ARM_TABLE_BITREVIDX_FLT64_16)
+ #define ARMBITREVINDEXTABLEF64_16_TABLE_LENGTH ((uint16_t)12)
+ extern const uint16_t armBitRevIndexTableF64_16[ARMBITREVINDEXTABLEF64_16_TABLE_LENGTH];
+ #endif /* !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) */
+
+ #if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || defined(ARM_TABLE_BITREVIDX_FLT64_32)
+ #define ARMBITREVINDEXTABLEF64_32_TABLE_LENGTH ((uint16_t)24)
+ extern const uint16_t armBitRevIndexTableF64_32[ARMBITREVINDEXTABLEF64_32_TABLE_LENGTH];
+ #endif /* !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) */
+
+ #if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || defined(ARM_TABLE_BITREVIDX_FLT64_64)
+ #define ARMBITREVINDEXTABLEF64_64_TABLE_LENGTH ((uint16_t)56)
+ extern const uint16_t armBitRevIndexTableF64_64[ARMBITREVINDEXTABLEF64_64_TABLE_LENGTH];
+ #endif /* !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) */
+
+ #if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || defined(ARM_TABLE_BITREVIDX_FLT64_128)
+ #define ARMBITREVINDEXTABLEF64_128_TABLE_LENGTH ((uint16_t)112)
+ extern const uint16_t armBitRevIndexTableF64_128[ARMBITREVINDEXTABLEF64_128_TABLE_LENGTH];
+ #endif /* !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) */
+
+ #if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || defined(ARM_TABLE_BITREVIDX_FLT64_256)
+ #define ARMBITREVINDEXTABLEF64_256_TABLE_LENGTH ((uint16_t)240)
+ extern const uint16_t armBitRevIndexTableF64_256[ARMBITREVINDEXTABLEF64_256_TABLE_LENGTH];
+ #endif /* !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) */
+
+ #if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || defined(ARM_TABLE_BITREVIDX_FLT64_512)
+ #define ARMBITREVINDEXTABLEF64_512_TABLE_LENGTH ((uint16_t)480)
+ extern const uint16_t armBitRevIndexTableF64_512[ARMBITREVINDEXTABLEF64_512_TABLE_LENGTH];
+ #endif /* !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) */
+
+ #if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || defined(ARM_TABLE_BITREVIDX_FLT64_1024)
+ #define ARMBITREVINDEXTABLEF64_1024_TABLE_LENGTH ((uint16_t)992)
+ extern const uint16_t armBitRevIndexTableF64_1024[ARMBITREVINDEXTABLEF64_1024_TABLE_LENGTH];
+ #endif /* !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) */
+
+ #if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || defined(ARM_TABLE_BITREVIDX_FLT64_2048)
+ #define ARMBITREVINDEXTABLEF64_2048_TABLE_LENGTH ((uint16_t)1984)
+ extern const uint16_t armBitRevIndexTableF64_2048[ARMBITREVINDEXTABLEF64_2048_TABLE_LENGTH];
+ #endif /* !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) */
+
+ #if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || defined(ARM_TABLE_BITREVIDX_FLT64_4096)
+ #define ARMBITREVINDEXTABLEF64_4096_TABLE_LENGTH ((uint16_t)4032)
+ extern const uint16_t armBitRevIndexTableF64_4096[ARMBITREVINDEXTABLEF64_4096_TABLE_LENGTH];
+ #endif /* !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) */
/* floating-point bit reversal tables */
-
+
#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || defined(ARM_TABLE_BITREVIDX_FLT_16)
#define ARMBITREVINDEXTABLE_16_TABLE_LENGTH ((uint16_t)20)
extern const uint16_t armBitRevIndexTable16[ARMBITREVINDEXTABLE_16_TABLE_LENGTH];
#endif /* !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) */
-
+
#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || defined(ARM_TABLE_BITREVIDX_FLT_32)
#define ARMBITREVINDEXTABLE_32_TABLE_LENGTH ((uint16_t)48)
extern const uint16_t armBitRevIndexTable32[ARMBITREVINDEXTABLE_32_TABLE_LENGTH];
#endif /* !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) */
-
+
#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || defined(ARM_TABLE_BITREVIDX_FLT_64)
#define ARMBITREVINDEXTABLE_64_TABLE_LENGTH ((uint16_t)56)
extern const uint16_t armBitRevIndexTable64[ARMBITREVINDEXTABLE_64_TABLE_LENGTH];
#endif /* !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) */
-
+
#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || defined(ARM_TABLE_BITREVIDX_FLT_128)
#define ARMBITREVINDEXTABLE_128_TABLE_LENGTH ((uint16_t)208)
extern const uint16_t armBitRevIndexTable128[ARMBITREVINDEXTABLE_128_TABLE_LENGTH];
#endif /* !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) */
-
+
#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || defined(ARM_TABLE_BITREVIDX_FLT_256)
#define ARMBITREVINDEXTABLE_256_TABLE_LENGTH ((uint16_t)440)
extern const uint16_t armBitRevIndexTable256[ARMBITREVINDEXTABLE_256_TABLE_LENGTH];
#endif /* !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) */
-
+
#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || defined(ARM_TABLE_BITREVIDX_FLT_512)
#define ARMBITREVINDEXTABLE_512_TABLE_LENGTH ((uint16_t)448)
extern const uint16_t armBitRevIndexTable512[ARMBITREVINDEXTABLE_512_TABLE_LENGTH];
#endif /* !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) */
-
+
#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || defined(ARM_TABLE_BITREVIDX_FLT_1024)
#define ARMBITREVINDEXTABLE_1024_TABLE_LENGTH ((uint16_t)1800)
extern const uint16_t armBitRevIndexTable1024[ARMBITREVINDEXTABLE_1024_TABLE_LENGTH];
#endif /* !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) */
-
+
#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || defined(ARM_TABLE_BITREVIDX_FLT_2048)
#define ARMBITREVINDEXTABLE_2048_TABLE_LENGTH ((uint16_t)3808)
extern const uint16_t armBitRevIndexTable2048[ARMBITREVINDEXTABLE_2048_TABLE_LENGTH];
#endif /* !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) */
-
+
#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || defined(ARM_TABLE_BITREVIDX_FLT_4096)
#define ARMBITREVINDEXTABLE_4096_TABLE_LENGTH ((uint16_t)4032)
extern const uint16_t armBitRevIndexTable4096[ARMBITREVINDEXTABLE_4096_TABLE_LENGTH];
#endif /* !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) */
-
-
+
+
/* fixed-point bit reversal tables */
-
+
#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || defined(ARM_TABLE_BITREVIDX_FXT_16)
#define ARMBITREVINDEXTABLE_FIXED_16_TABLE_LENGTH ((uint16_t)12)
extern const uint16_t armBitRevIndexTable_fixed_16[ARMBITREVINDEXTABLE_FIXED_16_TABLE_LENGTH];
#endif /* !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) */
-
+
#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || defined(ARM_TABLE_BITREVIDX_FXT_32)
#define ARMBITREVINDEXTABLE_FIXED_32_TABLE_LENGTH ((uint16_t)24)
extern const uint16_t armBitRevIndexTable_fixed_32[ARMBITREVINDEXTABLE_FIXED_32_TABLE_LENGTH];
#endif /* !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) */
-
+
#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || defined(ARM_TABLE_BITREVIDX_FXT_64)
#define ARMBITREVINDEXTABLE_FIXED_64_TABLE_LENGTH ((uint16_t)56)
extern const uint16_t armBitRevIndexTable_fixed_64[ARMBITREVINDEXTABLE_FIXED_64_TABLE_LENGTH];
#endif /* !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) */
-
+
#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || defined(ARM_TABLE_BITREVIDX_FXT_128)
#define ARMBITREVINDEXTABLE_FIXED_128_TABLE_LENGTH ((uint16_t)112)
extern const uint16_t armBitRevIndexTable_fixed_128[ARMBITREVINDEXTABLE_FIXED_128_TABLE_LENGTH];
#endif /* !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) */
-
+
#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || defined(ARM_TABLE_BITREVIDX_FXT_256)
#define ARMBITREVINDEXTABLE_FIXED_256_TABLE_LENGTH ((uint16_t)240)
extern const uint16_t armBitRevIndexTable_fixed_256[ARMBITREVINDEXTABLE_FIXED_256_TABLE_LENGTH];
#endif /* !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) */
-
+
#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || defined(ARM_TABLE_BITREVIDX_FXT_512)
#define ARMBITREVINDEXTABLE_FIXED_512_TABLE_LENGTH ((uint16_t)480)
extern const uint16_t armBitRevIndexTable_fixed_512[ARMBITREVINDEXTABLE_FIXED_512_TABLE_LENGTH];
#endif /* !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) */
-
+
#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || defined(ARM_TABLE_BITREVIDX_FXT_1024)
#define ARMBITREVINDEXTABLE_FIXED_1024_TABLE_LENGTH ((uint16_t)992)
extern const uint16_t armBitRevIndexTable_fixed_1024[ARMBITREVINDEXTABLE_FIXED_1024_TABLE_LENGTH];
#endif /* !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) */
-
+
#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || defined(ARM_TABLE_BITREVIDX_FXT_2048)
#define ARMBITREVINDEXTABLE_FIXED_2048_TABLE_LENGTH ((uint16_t)1984)
extern const uint16_t armBitRevIndexTable_fixed_2048[ARMBITREVINDEXTABLE_FIXED_2048_TABLE_LENGTH];
#endif /* !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) */
-
+
#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || defined(ARM_TABLE_BITREVIDX_FXT_4096)
#define ARMBITREVINDEXTABLE_FIXED_4096_TABLE_LENGTH ((uint16_t)4032)
extern const uint16_t armBitRevIndexTable_fixed_4096[ARMBITREVINDEXTABLE_FIXED_4096_TABLE_LENGTH];
@@ -328,26 +445,26 @@
extern const q15_t cos_factorsQ15_8192[8192];
#endif
- #if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || defined(ARM_TABLE_DCT4_Q31_128)
+ #if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || defined(ARM_TABLE_DCT4_Q31_128)
extern const q31_t WeightsQ31_128[256];
extern const q31_t cos_factorsQ31_128[128];
#endif
- #if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || defined(ARM_TABLE_DCT4_Q31_512)
+ #if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || defined(ARM_TABLE_DCT4_Q31_512)
extern const q31_t WeightsQ31_512[1024];
extern const q31_t cos_factorsQ31_512[512];
#endif
- #if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || defined(ARM_TABLE_DCT4_Q31_2048)
+ #if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || defined(ARM_TABLE_DCT4_Q31_2048)
extern const q31_t WeightsQ31_2048[4096];
extern const q31_t cos_factorsQ31_2048[2048];
#endif
- #if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || defined(ARM_TABLE_DCT4_Q31_8192)
+ #if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || defined(ARM_TABLE_DCT4_Q31_8192)
extern const q31_t WeightsQ31_8192[16384];
extern const q31_t cos_factorsQ31_8192[8192];
#endif
-
+
#endif /* if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_FFT_TABLES) */
#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_FAST_ALLOW_TABLES)
@@ -355,20 +472,20 @@
#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FAST_TABLES) || defined(ARM_TABLE_RECIP_Q15)
extern const q15_t armRecipTableQ15[64];
#endif /* !defined(ARM_DSP_CONFIG_TABLES) defined(ARM_ALL_FAST_TABLES) */
-
+
#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FAST_TABLES) || defined(ARM_TABLE_RECIP_Q31)
extern const q31_t armRecipTableQ31[64];
#endif /* !defined(ARM_DSP_CONFIG_TABLES) defined(ARM_ALL_FAST_TABLES) */
-
+
/* Tables for Fast Math Sine and Cosine */
#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FAST_TABLES) || defined(ARM_TABLE_SIN_F32)
extern const float32_t sinTable_f32[FAST_MATH_TABLE_SIZE + 1];
#endif /* !defined(ARM_DSP_CONFIG_TABLES) defined(ARM_ALL_FAST_TABLES) */
-
+
#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FAST_TABLES) || defined(ARM_TABLE_SIN_Q31)
extern const q31_t sinTable_q31[FAST_MATH_TABLE_SIZE + 1];
#endif /* !defined(ARM_DSP_CONFIG_TABLES) defined(ARM_ALL_FAST_TABLES) */
-
+
#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FAST_TABLES) || defined(ARM_TABLE_SIN_Q15)
extern const q15_t sinTable_q15[FAST_MATH_TABLE_SIZE + 1];
#endif /* !defined(ARM_DSP_CONFIG_TABLES) defined(ARM_ALL_FAST_TABLES) */
diff --git a/CMSIS/DSP/Include/arm_const_structs.h b/CMSIS/DSP/Include/arm_const_structs.h
index 80a3e8b..83984c4 100644
--- a/CMSIS/DSP/Include/arm_const_structs.h
+++ b/CMSIS/DSP/Include/arm_const_structs.h
@@ -33,6 +33,16 @@
#include "arm_math.h"
#include "arm_common_tables.h"
+ extern const arm_cfft_instance_f64 arm_cfft_sR_f64_len16;
+ extern const arm_cfft_instance_f64 arm_cfft_sR_f64_len32;
+ extern const arm_cfft_instance_f64 arm_cfft_sR_f64_len64;
+ extern const arm_cfft_instance_f64 arm_cfft_sR_f64_len128;
+ extern const arm_cfft_instance_f64 arm_cfft_sR_f64_len256;
+ extern const arm_cfft_instance_f64 arm_cfft_sR_f64_len512;
+ extern const arm_cfft_instance_f64 arm_cfft_sR_f64_len1024;
+ extern const arm_cfft_instance_f64 arm_cfft_sR_f64_len2048;
+ extern const arm_cfft_instance_f64 arm_cfft_sR_f64_len4096;
+
extern const arm_cfft_instance_f32 arm_cfft_sR_f32_len16;
extern const arm_cfft_instance_f32 arm_cfft_sR_f32_len32;
extern const arm_cfft_instance_f32 arm_cfft_sR_f32_len64;
diff --git a/CMSIS/DSP/Include/arm_math.h b/CMSIS/DSP/Include/arm_math.h
index c925b24..d07fc9b 100644
--- a/CMSIS/DSP/Include/arm_math.h
+++ b/CMSIS/DSP/Include/arm_math.h
@@ -2777,6 +2777,24 @@
uint8_t ifftFlag,
uint8_t bitReverseFlag);
+
+ /**
+ * @brief Instance structure for the Double Precision Floating-point CFFT/CIFFT function.
+ */
+ typedef struct
+ {
+ uint16_t fftLen; /**< length of the FFT. */
+ const float64_t *pTwiddle; /**< points to the Twiddle factor table. */
+ const uint16_t *pBitRevTable; /**< points to the bit reversal table. */
+ uint16_t bitRevLength; /**< bit reversal table length. */
+ } arm_cfft_instance_f64;
+
+ void arm_cfft_f64(
+ const arm_cfft_instance_f64 * S,
+ float64_t * p1,
+ uint8_t ifftFlag,
+ uint8_t bitReverseFlag);
+
/**
* @brief Instance structure for the Q15 RFFT/RIFFT function.
*/
@@ -2855,6 +2873,42 @@
float32_t * pDst);
/**
+ * @brief Instance structure for the Double Precision Floating-point RFFT/RIFFT function.
+ */
+typedef struct
+ {
+ arm_cfft_instance_f64 Sint; /**< Internal CFFT structure. */
+ uint16_t fftLenRFFT; /**< length of the real sequence */
+ const float64_t * pTwiddleRFFT; /**< Twiddle factors real stage */
+ } arm_rfft_fast_instance_f64 ;
+
+arm_status arm_rfft_fast_init_f64 (
+ arm_rfft_fast_instance_f64 * S,
+ uint16_t fftLen);
+
+arm_status arm_rfft_32_fast_init_f64 ( arm_rfft_fast_instance_f64 * S );
+
+arm_status arm_rfft_64_fast_init_f64 ( arm_rfft_fast_instance_f64 * S );
+
+arm_status arm_rfft_128_fast_init_f64 ( arm_rfft_fast_instance_f64 * S );
+
+arm_status arm_rfft_256_fast_init_f64 ( arm_rfft_fast_instance_f64 * S );
+
+arm_status arm_rfft_512_fast_init_f64 ( arm_rfft_fast_instance_f64 * S );
+
+arm_status arm_rfft_1024_fast_init_f64 ( arm_rfft_fast_instance_f64 * S );
+
+arm_status arm_rfft_2048_fast_init_f64 ( arm_rfft_fast_instance_f64 * S );
+
+arm_status arm_rfft_4096_fast_init_f64 ( arm_rfft_fast_instance_f64 * S );
+
+void arm_rfft_fast_f64(
+ arm_rfft_fast_instance_f64 * S,
+ float64_t * p, float64_t * pOut,
+ uint8_t ifftFlag);
+
+
+ /**
* @brief Instance structure for the floating-point RFFT/RIFFT function.
*/
typedef struct
diff --git a/CMSIS/DSP/PythonWrapper/cmsisdsp_pkg/src/cmsismodule.h b/CMSIS/DSP/PythonWrapper/cmsisdsp_pkg/src/cmsismodule.h
index c7c7943..8074f21 100644
--- a/CMSIS/DSP/PythonWrapper/cmsisdsp_pkg/src/cmsismodule.h
+++ b/CMSIS/DSP/PythonWrapper/cmsisdsp_pkg/src/cmsismodule.h
@@ -75,8 +75,8 @@
self->instance->pCoeffs = NULL;
}
-
-
+
+
return (PyObject *)self;
}
@@ -163,8 +163,8 @@
self->instance->pCoeffs = NULL;
}
-
-
+
+
return (PyObject *)self;
}
@@ -251,8 +251,8 @@
self->instance->pCoeffs = NULL;
}
-
-
+
+
return (PyObject *)self;
}
@@ -339,8 +339,8 @@
self->instance->pCoeffs = NULL;
}
-
-
+
+
return (PyObject *)self;
}
@@ -427,8 +427,8 @@
self->instance->pCoeffs = NULL;
}
-
-
+
+
return (PyObject *)self;
}
@@ -518,8 +518,8 @@
self->instance->pCoeffs = NULL;
}
-
-
+
+
return (PyObject *)self;
}
@@ -609,8 +609,8 @@
self->instance->pCoeffs = NULL;
}
-
-
+
+
return (PyObject *)self;
}
@@ -690,8 +690,8 @@
self->instance->pData = NULL;
}
-
-
+
+
return (PyObject *)self;
}
@@ -775,8 +775,8 @@
self->instance->pData = NULL;
}
-
-
+
+
return (PyObject *)self;
}
@@ -860,8 +860,8 @@
self->instance->pData = NULL;
}
-
-
+
+
return (PyObject *)self;
}
@@ -945,8 +945,8 @@
self->instance->pData = NULL;
}
-
-
+
+
return (PyObject *)self;
}
@@ -1023,8 +1023,8 @@
}
-
-
+
+
return (PyObject *)self;
}
@@ -1113,8 +1113,8 @@
}
-
-
+
+
return (PyObject *)self;
}
@@ -1203,8 +1203,8 @@
}
-
-
+
+
return (PyObject *)self;
}
@@ -1300,8 +1300,8 @@
self->instance->pYData = NULL;
}
-
-
+
+
return (PyObject *)self;
}
@@ -1388,8 +1388,8 @@
self->instance->pData = NULL;
}
-
-
+
+
return (PyObject *)self;
}
@@ -1473,8 +1473,8 @@
self->instance->pData = NULL;
}
-
-
+
+
return (PyObject *)self;
}
@@ -1558,8 +1558,8 @@
self->instance->pData = NULL;
}
-
-
+
+
return (PyObject *)self;
}
@@ -1643,8 +1643,8 @@
self->instance->pData = NULL;
}
-
-
+
+
return (PyObject *)self;
}
@@ -1723,8 +1723,8 @@
self->instance->pBitRevTable = NULL;
}
-
-
+
+
return (PyObject *)self;
}
@@ -1811,8 +1811,8 @@
self->instance->pBitRevTable = NULL;
}
-
-
+
+
return (PyObject *)self;
}
@@ -1899,8 +1899,8 @@
self->instance->pBitRevTable = NULL;
}
-
-
+
+
return (PyObject *)self;
}
@@ -1987,8 +1987,8 @@
self->instance->pBitRevTable = NULL;
}
-
-
+
+
return (PyObject *)self;
}
@@ -2075,8 +2075,8 @@
self->instance->pBitRevTable = NULL;
}
-
-
+
+
return (PyObject *)self;
}
@@ -2166,8 +2166,8 @@
self->instance->pBitRevTable = NULL;
}
-
-
+
+
return (PyObject *)self;
}
@@ -2257,8 +2257,8 @@
self->instance->pBitRevTable = NULL;
}
-
-
+
+
return (PyObject *)self;
}
@@ -2336,8 +2336,8 @@
self->instance->pBitRevTable = NULL;
}
-
-
+
+
return (PyObject *)self;
}
@@ -2376,6 +2376,83 @@
MLTYPE(arm_cfft_instance_q31,arm_cfft_instance_q31_new,arm_cfft_instance_q31_dealloc,arm_cfft_instance_q31_init,arm_cfft_instance_q31_methods);
+typedef struct {
+ PyObject_HEAD
+ arm_cfft_instance_f64 *instance;
+} ml_arm_cfft_instance_f64Object;
+
+
+static void
+arm_cfft_instance_f64_dealloc(ml_arm_cfft_instance_f64Object* self)
+{
+ //printf("Dealloc called\n");
+ if (self->instance)
+ {
+
+
+ PyMem_Free(self->instance);
+ }
+
+ Py_TYPE(self)->tp_free((PyObject*)self);
+}
+
+
+static PyObject *
+arm_cfft_instance_f64_new(PyTypeObject *type, PyObject *args, PyObject *kwds)
+{
+ ml_arm_cfft_instance_f64Object *self;
+ //printf("New called\n");
+
+ self = (ml_arm_cfft_instance_f64Object *)type->tp_alloc(type, 0);
+ //printf("alloc called\n");
+
+ if (self != NULL) {
+
+ self->instance = PyMem_Malloc(sizeof(arm_cfft_instance_f64));
+
+ self->instance->pTwiddle = NULL;
+ self->instance->pBitRevTable = NULL;
+
+ }
+
+ return (PyObject *)self;
+}
+
+static int
+arm_cfft_instance_f64_init(ml_arm_cfft_instance_f64Object *self, PyObject *args, PyObject *kwds)
+{
+
+ PyObject *pTwiddle=NULL;
+ PyObject *pBitRevTable=NULL;
+ char *kwlist[] = {
+ "fftLen","bitRevLength",NULL
+};
+
+if (PyArg_ParseTupleAndKeywords(args, kwds, "|hh", kwlist,&self->instance->fftLen
+,&self->instance->bitRevLength
+))
+ {
+
+
+ }
+ return 0;
+}
+
+GETFIELD(arm_cfft_instance_f64,fftLen,"h");
+GETFIELD(arm_cfft_instance_f64,bitRevLength,"h");
+
+
+static PyMethodDef arm_cfft_instance_f64_methods[] = {
+
+ {"fftLen", (PyCFunction) Method_arm_cfft_instance_f64_fftLen,METH_NOARGS,"fftLen"},
+ {"bitRevLength", (PyCFunction) Method_arm_cfft_instance_f64_bitRevLength,METH_NOARGS,"bitRevLength"},
+
+ {NULL} /* Sentinel */
+};
+
+
+MLTYPE(arm_cfft_instance_f64,arm_cfft_instance_f64_new,arm_cfft_instance_f64_dealloc,arm_cfft_instance_f64_init,arm_cfft_instance_f64_methods);
+
typedef struct {
PyObject_HEAD
@@ -2415,8 +2492,8 @@
self->instance->pBitRevTable = NULL;
}
-
-
+
+
return (PyObject *)self;
}
@@ -2495,8 +2572,8 @@
self->instance->pCfft = NULL;
}
-
-
+
+
return (PyObject *)self;
}
@@ -2582,8 +2659,8 @@
self->instance->pCfft = NULL;
}
-
-
+
+
return (PyObject *)self;
}
@@ -2669,8 +2746,8 @@
self->instance->pCfft = NULL;
}
-
-
+
+
return (PyObject *)self;
}
@@ -2722,6 +2799,83 @@
typedef struct {
PyObject_HEAD
+ arm_rfft_fast_instance_f64 *instance;
+} ml_arm_rfft_fast_instance_f64Object;
+
+
+static void
+arm_rfft_fast_instance_f64_dealloc(ml_arm_rfft_fast_instance_f64Object* self)
+{
+ //printf("Dealloc called\n");
+ if (self->instance)
+ {
+
+
+ PyMem_Free(self->instance);
+ }
+
+ Py_TYPE(self)->tp_free((PyObject*)self);
+}
+
+
+static PyObject *
+arm_rfft_fast_instance_f64_new(PyTypeObject *type, PyObject *args, PyObject *kwds)
+{
+ ml_arm_rfft_fast_instance_f64Object *self;
+ //printf("New called\n");
+
+ self = (ml_arm_rfft_fast_instance_f64Object *)type->tp_alloc(type, 0);
+ //printf("alloc called\n");
+
+ if (self != NULL) {
+
+ self->instance = PyMem_Malloc(sizeof(arm_rfft_fast_instance_f64));
+
+ self->instance->pTwiddleRFFT = NULL;
+
+ }
+
+
+ return (PyObject *)self;
+}
+
+static int
+arm_rfft_fast_instance_f64_init(ml_arm_rfft_fast_instance_f64Object *self, PyObject *args, PyObject *kwds)
+{
+
+ PyObject *pTwiddleRFFT=NULL;
+char *kwlist[] = {
+"Sint","fftLenRFFT",NULL
+};
+
+if (PyArg_ParseTupleAndKeywords(args, kwds, "|?h", kwlist,&self->instance->Sint
+,&self->instance->fftLenRFFT
+))
+ {
+
+
+ }
+ return 0;
+}
+
+GETFIELD(arm_rfft_fast_instance_f64,Sint,"?");
+GETFIELD(arm_rfft_fast_instance_f64,fftLenRFFT,"h");
+
+
+static PyMethodDef arm_rfft_fast_instance_f64_methods[] = {
+
+ {"Sint", (PyCFunction) Method_arm_rfft_fast_instance_f64_Sint,METH_NOARGS,"Sint"},
+ {"fftLenRFFT", (PyCFunction) Method_arm_rfft_fast_instance_f64_fftLenRFFT,METH_NOARGS,"fftLenRFFT"},
+
+ {NULL} /* Sentinel */
+};
+
+
+MLTYPE(arm_rfft_fast_instance_f64,arm_rfft_fast_instance_f64_new,arm_rfft_fast_instance_f64_dealloc,arm_rfft_fast_instance_f64_init,arm_rfft_fast_instance_f64_methods);
+
+
+typedef struct {
+ PyObject_HEAD
arm_rfft_fast_instance_f32 *instance;
} ml_arm_rfft_fast_instance_f32Object;
@@ -2757,8 +2911,8 @@
self->instance->pTwiddleRFFT = NULL;
}
-
-
+
+
return (PyObject *)self;
}
@@ -2837,8 +2991,8 @@
self->instance->pCfft = NULL;
}
-
-
+
+
return (PyObject *)self;
}
@@ -2923,8 +3077,8 @@
self->instance->pCfft = NULL;
}
-
-
+
+
return (PyObject *)self;
}
@@ -3009,8 +3163,8 @@
self->instance->pCfft = NULL;
}
-
-
+
+
return (PyObject *)self;
}
@@ -3105,8 +3259,8 @@
self->instance->pState = NULL;
}
-
-
+
+
return (PyObject *)self;
}
@@ -3196,8 +3350,8 @@
self->instance->pState = NULL;
}
-
-
+
+
return (PyObject *)self;
}
@@ -3287,8 +3441,8 @@
self->instance->pState = NULL;
}
-
-
+
+
return (PyObject *)self;
}
@@ -3378,8 +3532,8 @@
self->instance->pState = NULL;
}
-
-
+
+
return (PyObject *)self;
}
@@ -3469,8 +3623,8 @@
self->instance->pState = NULL;
}
-
-
+
+
return (PyObject *)self;
}
@@ -3560,8 +3714,8 @@
self->instance->pState = NULL;
}
-
-
+
+
return (PyObject *)self;
}
@@ -3651,8 +3805,8 @@
self->instance->pCoeffs = NULL;
}
-
-
+
+
return (PyObject *)self;
}
@@ -3742,8 +3896,8 @@
self->instance->pCoeffs = NULL;
}
-
-
+
+
return (PyObject *)self;
}
@@ -3830,8 +3984,8 @@
self->instance->pCoeffs = NULL;
}
-
-
+
+
return (PyObject *)self;
}
@@ -3918,8 +4072,8 @@
self->instance->pCoeffs = NULL;
}
-
-
+
+
return (PyObject *)self;
}
@@ -4006,8 +4160,8 @@
self->instance->pCoeffs = NULL;
}
-
-
+
+
return (PyObject *)self;
}
@@ -4094,8 +4248,8 @@
self->instance->pCoeffs = NULL;
}
-
-
+
+
return (PyObject *)self;
}
@@ -4182,8 +4336,8 @@
self->instance->pCoeffs = NULL;
}
-
-
+
+
return (PyObject *)self;
}
@@ -4277,8 +4431,8 @@
self->instance->pvCoeffs = NULL;
}
-
-
+
+
return (PyObject *)self;
}
@@ -4377,8 +4531,8 @@
self->instance->pvCoeffs = NULL;
}
-
-
+
+
return (PyObject *)self;
}
@@ -4477,8 +4631,8 @@
self->instance->pvCoeffs = NULL;
}
-
-
+
+
return (PyObject *)self;
}
@@ -4570,8 +4724,8 @@
self->instance->pCoeffs = NULL;
}
-
-
+
+
return (PyObject *)self;
}
@@ -4661,8 +4815,8 @@
self->instance->pCoeffs = NULL;
}
-
-
+
+
return (PyObject *)self;
}
@@ -4755,8 +4909,8 @@
self->instance->pCoeffs = NULL;
}
-
-
+
+
return (PyObject *)self;
}
@@ -4849,8 +5003,8 @@
self->instance->pCoeffs = NULL;
}
-
-
+
+
return (PyObject *)self;
}
@@ -4948,8 +5102,8 @@
self->instance->recipTable = NULL;
}
-
-
+
+
return (PyObject *)self;
}
@@ -5050,8 +5204,8 @@
self->instance->recipTable = NULL;
}
-
-
+
+
return (PyObject *)self;
}
@@ -5158,8 +5312,8 @@
self->instance->pTapDelay = NULL;
}
-
-
+
+
return (PyObject *)self;
}
@@ -5262,8 +5416,8 @@
self->instance->pTapDelay = NULL;
}
-
-
+
+
return (PyObject *)self;
}
@@ -5366,8 +5520,8 @@
self->instance->pTapDelay = NULL;
}
-
-
+
+
return (PyObject *)self;
}
@@ -5470,8 +5624,8 @@
self->instance->pTapDelay = NULL;
}
-
-
+
+
return (PyObject *)self;
}
@@ -5597,7 +5751,7 @@
{
GETARGUMENT(pRecipTable,NPY_INT32,int32_t,int32_t);
-
+
dst=PyMem_Malloc(sizeof(q31_t)*1);
@@ -5630,7 +5784,7 @@
{
GETARGUMENT(pRecipTable,NPY_INT16,int16_t,int16_t);
-
+
dst=PyMem_Malloc(sizeof(q15_t)*1);
@@ -5666,7 +5820,7 @@
ml_arm_fir_instance_q7Object *selfS = (ml_arm_fir_instance_q7Object *)S;
GETARGUMENT(pSrc,NPY_BYTE,int8_t,q7_t);
blockSize = arraySizepSrc ;
-
+
pDst=PyMem_Malloc(sizeof(q7_t)*blockSize);
@@ -5728,7 +5882,7 @@
ml_arm_fir_instance_q15Object *selfS = (ml_arm_fir_instance_q15Object *)S;
GETARGUMENT(pSrc,NPY_INT16,int16_t,int16_t);
blockSize = arraySizepSrc ;
-
+
pDst=PyMem_Malloc(sizeof(q15_t)*blockSize);
@@ -5762,7 +5916,7 @@
ml_arm_fir_instance_q15Object *selfS = (ml_arm_fir_instance_q15Object *)S;
GETARGUMENT(pSrc,NPY_INT16,int16_t,int16_t);
blockSize = arraySizepSrc ;
-
+
pDst=PyMem_Malloc(sizeof(q15_t)*blockSize);
@@ -5829,7 +5983,7 @@
ml_arm_fir_instance_q31Object *selfS = (ml_arm_fir_instance_q31Object *)S;
GETARGUMENT(pSrc,NPY_INT32,int32_t,int32_t);
blockSize = arraySizepSrc ;
-
+
pDst=PyMem_Malloc(sizeof(q31_t)*blockSize);
@@ -5863,7 +6017,7 @@
ml_arm_fir_instance_q31Object *selfS = (ml_arm_fir_instance_q31Object *)S;
GETARGUMENT(pSrc,NPY_INT32,int32_t,int32_t);
blockSize = arraySizepSrc ;
-
+
pDst=PyMem_Malloc(sizeof(q31_t)*blockSize);
@@ -5925,7 +6079,7 @@
ml_arm_fir_instance_f32Object *selfS = (ml_arm_fir_instance_f32Object *)S;
GETARGUMENT(pSrc,NPY_DOUBLE,double,float32_t);
blockSize = arraySizepSrc ;
-
+
pDst=PyMem_Malloc(sizeof(float32_t)*blockSize);
@@ -5987,7 +6141,7 @@
ml_arm_biquad_casd_df1_inst_q15Object *selfS = (ml_arm_biquad_casd_df1_inst_q15Object *)S;
GETARGUMENT(pSrc,NPY_INT16,int16_t,int16_t);
blockSize = arraySizepSrc ;
-
+
pDst=PyMem_Malloc(sizeof(q15_t)*blockSize);
@@ -6048,7 +6202,7 @@
ml_arm_biquad_casd_df1_inst_q15Object *selfS = (ml_arm_biquad_casd_df1_inst_q15Object *)S;
GETARGUMENT(pSrc,NPY_INT16,int16_t,int16_t);
blockSize = arraySizepSrc ;
-
+
pDst=PyMem_Malloc(sizeof(q15_t)*blockSize);
@@ -6082,7 +6236,7 @@
ml_arm_biquad_casd_df1_inst_q31Object *selfS = (ml_arm_biquad_casd_df1_inst_q31Object *)S;
GETARGUMENT(pSrc,NPY_INT32,int32_t,int32_t);
blockSize = arraySizepSrc ;
-
+
pDst=PyMem_Malloc(sizeof(q31_t)*blockSize);
@@ -6116,7 +6270,7 @@
ml_arm_biquad_casd_df1_inst_q31Object *selfS = (ml_arm_biquad_casd_df1_inst_q31Object *)S;
GETARGUMENT(pSrc,NPY_INT32,int32_t,int32_t);
blockSize = arraySizepSrc ;
-
+
pDst=PyMem_Malloc(sizeof(q31_t)*blockSize);
@@ -6177,7 +6331,7 @@
ml_arm_biquad_casd_df1_inst_f32Object *selfS = (ml_arm_biquad_casd_df1_inst_f32Object *)S;
GETARGUMENT(pSrc,NPY_DOUBLE,double,float32_t);
blockSize = arraySizepSrc ;
-
+
pDst=PyMem_Malloc(sizeof(float32_t)*blockSize);
@@ -7054,7 +7208,7 @@
GETARGUMENT(pSrcA,NPY_BYTE,int8_t,q7_t);
GETARGUMENT(pSrcB,NPY_BYTE,int8_t,q7_t);
blockSize = arraySizepSrcA ;
-
+
pDst=PyMem_Malloc(sizeof(q7_t)*blockSize);
@@ -7090,7 +7244,7 @@
GETARGUMENT(pSrcA,NPY_INT16,int16_t,int16_t);
GETARGUMENT(pSrcB,NPY_INT16,int16_t,int16_t);
blockSize = arraySizepSrcA ;
-
+
pDst=PyMem_Malloc(sizeof(q15_t)*blockSize);
@@ -7126,7 +7280,7 @@
GETARGUMENT(pSrcA,NPY_INT32,int32_t,int32_t);
GETARGUMENT(pSrcB,NPY_INT32,int32_t,int32_t);
blockSize = arraySizepSrcA ;
-
+
pDst=PyMem_Malloc(sizeof(q31_t)*blockSize);
@@ -7162,7 +7316,7 @@
GETARGUMENT(pSrcA,NPY_DOUBLE,double,float32_t);
GETARGUMENT(pSrcB,NPY_DOUBLE,double,float32_t);
blockSize = arraySizepSrcA ;
-
+
pDst=PyMem_Malloc(sizeof(float32_t)*blockSize);
@@ -7537,6 +7691,35 @@
}
+
+static PyObject *
+cmsis_arm_cfft_f64(PyObject *obj, PyObject *args)
+{
+
+ PyObject *S=NULL; // input
+ PyObject *p1=NULL; // input
+ float64_t *p1_converted=NULL; // input
+ uint32_t ifftFlag; // input
+ uint32_t bitReverseFlag; // input
+
+ if (PyArg_ParseTuple(args,"OOii",&S,&p1,&ifftFlag,&bitReverseFlag))
+ {
+
+ ml_arm_cfft_instance_f64Object *selfS = (ml_arm_cfft_instance_f64Object *)S;
+ GETARGUMENT(p1,NPY_DOUBLE,double,float64_t);
+
+ arm_cfft_f64(selfS->instance,p1_converted,(uint8_t)ifftFlag,(uint8_t)bitReverseFlag);
+ FLOATARRAY1(p1OBJ,2*selfS->instance->fftLen,p1_converted);
+
+ PyObject *pythonResult = Py_BuildValue("O",p1OBJ);
+
+ return(pythonResult);
+
+ }
+ return(NULL);
+}
+
+
static PyObject *
cmsis_arm_cfft_f32(PyObject *obj, PyObject *args)
{
@@ -7606,7 +7789,7 @@
ml_arm_rfft_instance_q15Object *selfS = (ml_arm_rfft_instance_q15Object *)S;
GETARGUMENT(pSrc,NPY_INT16,int16_t,int16_t);
-
+
pDst=PyMem_Malloc(sizeof(q15_t)*2*selfS->instance->fftLenReal);
@@ -7665,7 +7848,7 @@
ml_arm_rfft_instance_q31Object *selfS = (ml_arm_rfft_instance_q31Object *)S;
GETARGUMENT(pSrc,NPY_INT32,int32_t,int32_t);
-
+
pDst=PyMem_Malloc(sizeof(q31_t)*2*selfS->instance->fftLenReal);
@@ -7726,7 +7909,7 @@
ml_arm_rfft_instance_f32Object *selfS = (ml_arm_rfft_instance_f32Object *)S;
GETARGUMENT(pSrc,NPY_DOUBLE,double,float32_t);
-
+
pDst=PyMem_Malloc(sizeof(float32_t)*2*selfS->instance->fftLenReal);
@@ -7743,6 +7926,256 @@
return(NULL);
}
+static PyObject *
+cmsis_arm_rfft_fast_init_f64(PyObject *obj, PyObject *args)
+{
+
+ PyObject *S=NULL; // input
+ uint16_t fftLen; // input
+
+ if (PyArg_ParseTuple(args,"Oh",&S,&fftLen))
+ {
+
+ ml_arm_rfft_fast_instance_f64Object *selfS = (ml_arm_rfft_fast_instance_f64Object *)S;
+
+ arm_status returnValue = arm_rfft_fast_init_f64(selfS->instance,fftLen);
+ PyObject* theReturnOBJ=Py_BuildValue("i",returnValue);
+
+ PyObject *pythonResult = Py_BuildValue("O",theReturnOBJ);
+
+ Py_DECREF(theReturnOBJ);
+ return(pythonResult);
+
+ }
+ return(NULL);
+}
+
+
+static PyObject *
+cmsis_arm_rfft_32_fast_init_f64(PyObject *obj, PyObject *args)
+{
+
+ PyObject *S=NULL; // input
+
+ if (PyArg_ParseTuple(args,"O",&S))
+ {
+
+ ml_arm_rfft_fast_instance_f64Object *selfS = (ml_arm_rfft_fast_instance_f64Object *)S;
+
+ arm_status returnValue = arm_rfft_32_fast_init_f64(selfS->instance);
+ PyObject* theReturnOBJ=Py_BuildValue("i",returnValue);
+
+ PyObject *pythonResult = Py_BuildValue("O",theReturnOBJ);
+
+ Py_DECREF(theReturnOBJ);
+ return(pythonResult);
+
+ }
+ return(NULL);
+}
+
+
+static PyObject *
+cmsis_arm_rfft_64_fast_init_f64(PyObject *obj, PyObject *args)
+{
+
+ PyObject *S=NULL; // input
+
+ if (PyArg_ParseTuple(args,"O",&S))
+ {
+
+ ml_arm_rfft_fast_instance_f64Object *selfS = (ml_arm_rfft_fast_instance_f64Object *)S;
+
+ arm_status returnValue = arm_rfft_64_fast_init_f64(selfS->instance);
+ PyObject* theReturnOBJ=Py_BuildValue("i",returnValue);
+
+ PyObject *pythonResult = Py_BuildValue("O",theReturnOBJ);
+
+ Py_DECREF(theReturnOBJ);
+ return(pythonResult);
+
+ }
+ return(NULL);
+}
+
+
+static PyObject *
+cmsis_arm_rfft_128_fast_init_f64(PyObject *obj, PyObject *args)
+{
+
+ PyObject *S=NULL; // input
+
+ if (PyArg_ParseTuple(args,"O",&S))
+ {
+
+ ml_arm_rfft_fast_instance_f64Object *selfS = (ml_arm_rfft_fast_instance_f64Object *)S;
+
+ arm_status returnValue = arm_rfft_128_fast_init_f64(selfS->instance);
+ PyObject* theReturnOBJ=Py_BuildValue("i",returnValue);
+
+ PyObject *pythonResult = Py_BuildValue("O",theReturnOBJ);
+
+ Py_DECREF(theReturnOBJ);
+ return(pythonResult);
+
+ }
+ return(NULL);
+}
+
+
+static PyObject *
+cmsis_arm_rfft_256_fast_init_f64(PyObject *obj, PyObject *args)
+{
+
+ PyObject *S=NULL; // input
+
+ if (PyArg_ParseTuple(args,"O",&S))
+ {
+
+ ml_arm_rfft_fast_instance_f64Object *selfS = (ml_arm_rfft_fast_instance_f64Object *)S;
+
+ arm_status returnValue = arm_rfft_256_fast_init_f64(selfS->instance);
+ PyObject* theReturnOBJ=Py_BuildValue("i",returnValue);
+
+ PyObject *pythonResult = Py_BuildValue("O",theReturnOBJ);
+
+ Py_DECREF(theReturnOBJ);
+ return(pythonResult);
+
+ }
+ return(NULL);
+}
+
+
+static PyObject *
+cmsis_arm_rfft_512_fast_init_f64(PyObject *obj, PyObject *args)
+{
+
+ PyObject *S=NULL; // input
+
+ if (PyArg_ParseTuple(args,"O",&S))
+ {
+
+ ml_arm_rfft_fast_instance_f64Object *selfS = (ml_arm_rfft_fast_instance_f64Object *)S;
+
+ arm_status returnValue = arm_rfft_512_fast_init_f64(selfS->instance);
+ PyObject* theReturnOBJ=Py_BuildValue("i",returnValue);
+
+ PyObject *pythonResult = Py_BuildValue("O",theReturnOBJ);
+
+ Py_DECREF(theReturnOBJ);
+ return(pythonResult);
+
+ }
+ return(NULL);
+}
+
+
+static PyObject *
+cmsis_arm_rfft_1024_fast_init_f64(PyObject *obj, PyObject *args)
+{
+
+ PyObject *S=NULL; // input
+
+ if (PyArg_ParseTuple(args,"O",&S))
+ {
+
+ ml_arm_rfft_fast_instance_f64Object *selfS = (ml_arm_rfft_fast_instance_f64Object *)S;
+
+ arm_status returnValue = arm_rfft_1024_fast_init_f64(selfS->instance);
+ PyObject* theReturnOBJ=Py_BuildValue("i",returnValue);
+
+ PyObject *pythonResult = Py_BuildValue("O",theReturnOBJ);
+
+ Py_DECREF(theReturnOBJ);
+ return(pythonResult);
+
+ }
+ return(NULL);
+}
+
+
+static PyObject *
+cmsis_arm_rfft_2048_fast_init_f64(PyObject *obj, PyObject *args)
+{
+
+ PyObject *S=NULL; // input
+
+ if (PyArg_ParseTuple(args,"O",&S))
+ {
+
+ ml_arm_rfft_fast_instance_f64Object *selfS = (ml_arm_rfft_fast_instance_f64Object *)S;
+
+ arm_status returnValue = arm_rfft_2048_fast_init_f64(selfS->instance);
+ PyObject* theReturnOBJ=Py_BuildValue("i",returnValue);
+
+ PyObject *pythonResult = Py_BuildValue("O",theReturnOBJ);
+
+ Py_DECREF(theReturnOBJ);
+ return(pythonResult);
+
+ }
+ return(NULL);
+}
+
+
+static PyObject *
+cmsis_arm_rfft_4096_fast_init_f64(PyObject *obj, PyObject *args)
+{
+
+ PyObject *S=NULL; // input
+
+ if (PyArg_ParseTuple(args,"O",&S))
+ {
+
+ ml_arm_rfft_fast_instance_f64Object *selfS = (ml_arm_rfft_fast_instance_f64Object *)S;
+
+ arm_status returnValue = arm_rfft_4096_fast_init_f64(selfS->instance);
+ PyObject* theReturnOBJ=Py_BuildValue("i",returnValue);
+
+ PyObject *pythonResult = Py_BuildValue("O",theReturnOBJ);
+
+ Py_DECREF(theReturnOBJ);
+ return(pythonResult);
+
+ }
+ return(NULL);
+}
+
+
+static PyObject *
+cmsis_arm_rfft_fast_f64(PyObject *obj, PyObject *args)
+{
+
+ PyObject *S=NULL; // input
+ PyObject *p=NULL; // input
+ float64_t *p_converted=NULL; // input
+ float64_t *pOut=NULL; // output
+ uint32_t ifftFlag; // input
+
+ if (PyArg_ParseTuple(args,"OOi",&S,&p,&ifftFlag))
+ {
+
+ ml_arm_rfft_fast_instance_f64Object *selfS = (ml_arm_rfft_fast_instance_f64Object *)S;
+ GETARGUMENT(p,NPY_DOUBLE,double,float64_t);
+
+ pOut=PyMem_Malloc(sizeof(float64_t)*2*selfS->instance->fftLenRFFT);
+
+
+ arm_rfft_fast_f64(selfS->instance,p_converted,pOut,(uint8_t)ifftFlag);
+ FLOATARRAY1(pOutOBJ,2*selfS->instance->fftLenRFFT,pOut);
+
+ PyObject *pythonResult = Py_BuildValue("O",pOutOBJ);
+
+ FREEARGUMENT(p_converted);
+ Py_DECREF(pOutOBJ);
+ return(pythonResult);
+
+ }
+ return(NULL);
+}
+
+
static PyObject *
cmsis_arm_rfft_fast_init_f32(PyObject *obj, PyObject *args)
@@ -7976,7 +8409,7 @@
ml_arm_rfft_fast_instance_f32Object *selfS = (ml_arm_rfft_fast_instance_f32Object *)S;
GETARGUMENT(p,NPY_DOUBLE,double,float32_t);
-
+
pOut=PyMem_Malloc(sizeof(float32_t)*2*selfS->instance->fftLenRFFT);
@@ -8200,7 +8633,7 @@
GETARGUMENT(pSrcA,NPY_DOUBLE,double,float32_t);
GETARGUMENT(pSrcB,NPY_DOUBLE,double,float32_t);
blockSize = arraySizepSrcA ;
-
+
pDst=PyMem_Malloc(sizeof(float32_t)*blockSize);
@@ -8236,7 +8669,7 @@
GETARGUMENT(pSrcA,NPY_BYTE,int8_t,q7_t);
GETARGUMENT(pSrcB,NPY_BYTE,int8_t,q7_t);
blockSize = arraySizepSrcA ;
-
+
pDst=PyMem_Malloc(sizeof(q7_t)*blockSize);
@@ -8272,7 +8705,7 @@
GETARGUMENT(pSrcA,NPY_INT16,int16_t,int16_t);
GETARGUMENT(pSrcB,NPY_INT16,int16_t,int16_t);
blockSize = arraySizepSrcA ;
-
+
pDst=PyMem_Malloc(sizeof(q15_t)*blockSize);
@@ -8308,7 +8741,7 @@
GETARGUMENT(pSrcA,NPY_INT32,int32_t,int32_t);
GETARGUMENT(pSrcB,NPY_INT32,int32_t,int32_t);
blockSize = arraySizepSrcA ;
-
+
pDst=PyMem_Malloc(sizeof(q31_t)*blockSize);
@@ -8344,7 +8777,7 @@
GETARGUMENT(pSrcA,NPY_DOUBLE,double,float32_t);
GETARGUMENT(pSrcB,NPY_DOUBLE,double,float32_t);
blockSize = arraySizepSrcA ;
-
+
pDst=PyMem_Malloc(sizeof(float32_t)*blockSize);
@@ -8380,7 +8813,7 @@
GETARGUMENT(pSrcA,NPY_BYTE,int8_t,q7_t);
GETARGUMENT(pSrcB,NPY_BYTE,int8_t,q7_t);
blockSize = arraySizepSrcA ;
-
+
pDst=PyMem_Malloc(sizeof(q7_t)*blockSize);
@@ -8416,7 +8849,7 @@
GETARGUMENT(pSrcA,NPY_INT16,int16_t,int16_t);
GETARGUMENT(pSrcB,NPY_INT16,int16_t,int16_t);
blockSize = arraySizepSrcA ;
-
+
pDst=PyMem_Malloc(sizeof(q15_t)*blockSize);
@@ -8452,7 +8885,7 @@
GETARGUMENT(pSrcA,NPY_INT32,int32_t,int32_t);
GETARGUMENT(pSrcB,NPY_INT32,int32_t,int32_t);
blockSize = arraySizepSrcA ;
-
+
pDst=PyMem_Malloc(sizeof(q31_t)*blockSize);
@@ -8486,7 +8919,7 @@
GETARGUMENT(pSrc,NPY_DOUBLE,double,float32_t);
blockSize = arraySizepSrc ;
-
+
pDst=PyMem_Malloc(sizeof(float32_t)*blockSize);
@@ -8520,7 +8953,7 @@
GETARGUMENT(pSrc,NPY_BYTE,int8_t,q7_t);
blockSize = arraySizepSrc ;
-
+
pDst=PyMem_Malloc(sizeof(q7_t)*blockSize);
@@ -8554,7 +8987,7 @@
GETARGUMENT(pSrc,NPY_INT16,int16_t,int16_t);
blockSize = arraySizepSrc ;
-
+
pDst=PyMem_Malloc(sizeof(q15_t)*blockSize);
@@ -8588,7 +9021,7 @@
GETARGUMENT(pSrc,NPY_INT32,int32_t,int32_t);
blockSize = arraySizepSrc ;
-
+
pDst=PyMem_Malloc(sizeof(q31_t)*blockSize);
@@ -8620,7 +9053,7 @@
GETARGUMENT(pSrc,NPY_BYTE,int8_t,q7_t);
blockSize = arraySizepSrc ;
-
+
pDst=PyMem_Malloc(sizeof(q7_t)*blockSize);
@@ -8652,7 +9085,7 @@
GETARGUMENT(pSrc,NPY_DOUBLE,double,float32_t);
blockSize = arraySizepSrc ;
-
+
pDst=PyMem_Malloc(sizeof(float32_t)*blockSize);
@@ -8684,7 +9117,7 @@
GETARGUMENT(pSrc,NPY_INT16,int16_t,int16_t);
blockSize = arraySizepSrc ;
-
+
pDst=PyMem_Malloc(sizeof(q15_t)*blockSize);
@@ -8716,7 +9149,7 @@
GETARGUMENT(pSrc,NPY_INT32,int32_t,int32_t);
blockSize = arraySizepSrc ;
-
+
pDst=PyMem_Malloc(sizeof(q31_t)*blockSize);
@@ -8751,7 +9184,7 @@
GETARGUMENT(pSrcA,NPY_DOUBLE,double,float32_t);
GETARGUMENT(pSrcB,NPY_DOUBLE,double,float32_t);
blockSize = arraySizepSrcA ;
-
+
result=PyMem_Malloc(sizeof(float32_t)*1);
@@ -8787,7 +9220,7 @@
GETARGUMENT(pSrcA,NPY_BYTE,int8_t,q7_t);
GETARGUMENT(pSrcB,NPY_BYTE,int8_t,q7_t);
blockSize = arraySizepSrcA ;
-
+
result=PyMem_Malloc(sizeof(q31_t)*1);
@@ -8823,7 +9256,7 @@
GETARGUMENT(pSrcA,NPY_INT16,int16_t,int16_t);
GETARGUMENT(pSrcB,NPY_INT16,int16_t,int16_t);
blockSize = arraySizepSrcA ;
-
+
result=PyMem_Malloc(sizeof(q63_t)*1);
@@ -8859,7 +9292,7 @@
GETARGUMENT(pSrcA,NPY_INT32,int32_t,int32_t);
GETARGUMENT(pSrcB,NPY_INT32,int32_t,int32_t);
blockSize = arraySizepSrcA ;
-
+
result=PyMem_Malloc(sizeof(q63_t)*1);
@@ -8893,7 +9326,7 @@
GETARGUMENT(pSrc,NPY_BYTE,int8_t,q7_t);
blockSize = arraySizepSrc ;
-
+
pDst=PyMem_Malloc(sizeof(q7_t)*blockSize);
@@ -8926,7 +9359,7 @@
GETARGUMENT(pSrc,NPY_INT16,int16_t,int16_t);
blockSize = arraySizepSrc ;
-
+
pDst=PyMem_Malloc(sizeof(q15_t)*blockSize);
@@ -8959,7 +9392,7 @@
GETARGUMENT(pSrc,NPY_INT32,int32_t,int32_t);
blockSize = arraySizepSrc ;
-
+
pDst=PyMem_Malloc(sizeof(q31_t)*blockSize);
@@ -8992,7 +9425,7 @@
GETARGUMENT(pSrc,NPY_DOUBLE,double,float32_t);
blockSize = arraySizepSrc ;
-
+
pDst=PyMem_Malloc(sizeof(float32_t)*blockSize);
@@ -9025,7 +9458,7 @@
GETARGUMENT(pSrc,NPY_BYTE,int8_t,q7_t);
blockSize = arraySizepSrc ;
-
+
pDst=PyMem_Malloc(sizeof(q7_t)*blockSize);
@@ -9058,7 +9491,7 @@
GETARGUMENT(pSrc,NPY_INT16,int16_t,int16_t);
blockSize = arraySizepSrc ;
-
+
pDst=PyMem_Malloc(sizeof(q15_t)*blockSize);
@@ -9091,7 +9524,7 @@
GETARGUMENT(pSrc,NPY_INT32,int32_t,int32_t);
blockSize = arraySizepSrc ;
-
+
pDst=PyMem_Malloc(sizeof(q31_t)*blockSize);
@@ -9123,7 +9556,7 @@
GETARGUMENT(pSrc,NPY_DOUBLE,double,float32_t);
blockSize = arraySizepSrc ;
-
+
pDst=PyMem_Malloc(sizeof(float32_t)*blockSize);
@@ -9155,7 +9588,7 @@
GETARGUMENT(pSrc,NPY_BYTE,int8_t,q7_t);
blockSize = arraySizepSrc ;
-
+
pDst=PyMem_Malloc(sizeof(q7_t)*blockSize);
@@ -9187,7 +9620,7 @@
GETARGUMENT(pSrc,NPY_INT16,int16_t,int16_t);
blockSize = arraySizepSrc ;
-
+
pDst=PyMem_Malloc(sizeof(q15_t)*blockSize);
@@ -9219,7 +9652,7 @@
GETARGUMENT(pSrc,NPY_INT32,int32_t,int32_t);
blockSize = arraySizepSrc ;
-
+
pDst=PyMem_Malloc(sizeof(q31_t)*blockSize);
@@ -9251,7 +9684,7 @@
GETARGUMENT(pSrc,NPY_DOUBLE,double,float32_t);
blockSize = arraySizepSrc ;
-
+
pDst=PyMem_Malloc(sizeof(float32_t)*blockSize);
@@ -9283,7 +9716,7 @@
GETARGUMENT(pSrc,NPY_BYTE,int8_t,q7_t);
blockSize = arraySizepSrc ;
-
+
pDst=PyMem_Malloc(sizeof(q7_t)*blockSize);
@@ -9315,7 +9748,7 @@
GETARGUMENT(pSrc,NPY_INT16,int16_t,int16_t);
blockSize = arraySizepSrc ;
-
+
pDst=PyMem_Malloc(sizeof(q15_t)*blockSize);
@@ -9347,7 +9780,7 @@
GETARGUMENT(pSrc,NPY_INT32,int32_t,int32_t);
blockSize = arraySizepSrc ;
-
+
pDst=PyMem_Malloc(sizeof(q31_t)*blockSize);
@@ -9383,7 +9816,7 @@
GETARGUMENT(pSrcA,NPY_DOUBLE,double,float32_t);
GETARGUMENT(pSrcB,NPY_DOUBLE,double,float32_t);
uint32_t outputLength = srcALen + srcBLen - 1 ;
-
+
pDst=PyMem_Malloc(sizeof(float32_t)*outputLength);
@@ -9426,7 +9859,7 @@
GETARGUMENT(pScratch1,NPY_INT16,int16_t,int16_t);
GETARGUMENT(pScratch2,NPY_INT16,int16_t,int16_t);
uint32_t outputLength = srcALen + srcBLen - 1 ;
-
+
pDst=PyMem_Malloc(sizeof(q15_t)*outputLength);
@@ -9465,7 +9898,7 @@
GETARGUMENT(pSrcA,NPY_INT16,int16_t,int16_t);
GETARGUMENT(pSrcB,NPY_INT16,int16_t,int16_t);
uint32_t outputLength = srcALen + srcBLen - 1 ;
-
+
pDst=PyMem_Malloc(sizeof(q15_t)*outputLength);
@@ -9502,7 +9935,7 @@
GETARGUMENT(pSrcA,NPY_INT16,int16_t,int16_t);
GETARGUMENT(pSrcB,NPY_INT16,int16_t,int16_t);
uint32_t outputLength = srcALen + srcBLen - 1 ;
-
+
pDst=PyMem_Malloc(sizeof(q15_t)*outputLength);
@@ -9545,7 +9978,7 @@
GETARGUMENT(pScratch1,NPY_INT16,int16_t,int16_t);
GETARGUMENT(pScratch2,NPY_INT16,int16_t,int16_t);
uint32_t outputLength = srcALen + srcBLen - 1 ;
-
+
pDst=PyMem_Malloc(sizeof(q15_t)*outputLength);
@@ -9584,7 +10017,7 @@
GETARGUMENT(pSrcA,NPY_INT32,int32_t,int32_t);
GETARGUMENT(pSrcB,NPY_INT32,int32_t,int32_t);
uint32_t outputLength = srcALen + srcBLen - 1 ;
-
+
pDst=PyMem_Malloc(sizeof(q31_t)*outputLength);
@@ -9621,7 +10054,7 @@
GETARGUMENT(pSrcA,NPY_INT32,int32_t,int32_t);
GETARGUMENT(pSrcB,NPY_INT32,int32_t,int32_t);
uint32_t outputLength = srcALen + srcBLen - 1 ;
-
+
pDst=PyMem_Malloc(sizeof(q31_t)*outputLength);
@@ -9664,7 +10097,7 @@
GETARGUMENT(pScratch1,NPY_INT16,int16_t,int16_t);
GETARGUMENT(pScratch2,NPY_INT16,int16_t,int16_t);
uint32_t outputLength = srcALen + srcBLen - 1 ;
-
+
pDst=PyMem_Malloc(sizeof(q7_t)*outputLength);
@@ -9703,7 +10136,7 @@
GETARGUMENT(pSrcA,NPY_BYTE,int8_t,q7_t);
GETARGUMENT(pSrcB,NPY_BYTE,int8_t,q7_t);
uint32_t outputLength = srcALen + srcBLen - 1 ;
-
+
pDst=PyMem_Malloc(sizeof(q7_t)*outputLength);
@@ -9742,7 +10175,7 @@
GETARGUMENT(pSrcA,NPY_DOUBLE,double,float32_t);
GETARGUMENT(pSrcB,NPY_DOUBLE,double,float32_t);
uint32_t outputLength = srcALen + srcBLen - 1 ;
-
+
pDst=PyMem_Malloc(sizeof(float32_t)*outputLength);
@@ -9789,7 +10222,7 @@
GETARGUMENT(pScratch1,NPY_INT16,int16_t,int16_t);
GETARGUMENT(pScratch2,NPY_INT16,int16_t,int16_t);
uint32_t outputLength = srcALen + srcBLen - 1 ;
-
+
pDst=PyMem_Malloc(sizeof(q15_t)*outputLength);
@@ -9832,7 +10265,7 @@
GETARGUMENT(pSrcA,NPY_INT16,int16_t,int16_t);
GETARGUMENT(pSrcB,NPY_INT16,int16_t,int16_t);
uint32_t outputLength = srcALen + srcBLen - 1 ;
-
+
pDst=PyMem_Malloc(sizeof(q15_t)*outputLength);
@@ -9873,7 +10306,7 @@
GETARGUMENT(pSrcA,NPY_INT16,int16_t,int16_t);
GETARGUMENT(pSrcB,NPY_INT16,int16_t,int16_t);
uint32_t outputLength = srcALen + srcBLen - 1 ;
-
+
pDst=PyMem_Malloc(sizeof(q15_t)*outputLength);
@@ -9920,7 +10353,7 @@
GETARGUMENT(pScratch1,NPY_INT16,int16_t,int16_t);
GETARGUMENT(pScratch2,NPY_INT16,int16_t,int16_t);
uint32_t outputLength = srcALen + srcBLen - 1 ;
-
+
pDst=PyMem_Malloc(sizeof(q15_t)*outputLength);
@@ -9963,7 +10396,7 @@
GETARGUMENT(pSrcA,NPY_INT32,int32_t,int32_t);
GETARGUMENT(pSrcB,NPY_INT32,int32_t,int32_t);
uint32_t outputLength = srcALen + srcBLen - 1 ;
-
+
pDst=PyMem_Malloc(sizeof(q31_t)*outputLength);
@@ -10004,7 +10437,7 @@
GETARGUMENT(pSrcA,NPY_INT32,int32_t,int32_t);
GETARGUMENT(pSrcB,NPY_INT32,int32_t,int32_t);
uint32_t outputLength = srcALen + srcBLen - 1 ;
-
+
pDst=PyMem_Malloc(sizeof(q31_t)*outputLength);
@@ -10051,7 +10484,7 @@
GETARGUMENT(pScratch1,NPY_INT16,int16_t,int16_t);
GETARGUMENT(pScratch2,NPY_INT16,int16_t,int16_t);
uint32_t outputLength = srcALen + srcBLen - 1 ;
-
+
pDst=PyMem_Malloc(sizeof(q7_t)*outputLength);
@@ -10094,7 +10527,7 @@
GETARGUMENT(pSrcA,NPY_BYTE,int8_t,q7_t);
GETARGUMENT(pSrcB,NPY_BYTE,int8_t,q7_t);
uint32_t outputLength = srcALen + srcBLen - 1 ;
-
+
pDst=PyMem_Malloc(sizeof(q7_t)*outputLength);
@@ -10131,7 +10564,7 @@
ml_arm_fir_decimate_instance_f32Object *selfS = (ml_arm_fir_decimate_instance_f32Object *)S;
GETARGUMENT(pSrc,NPY_DOUBLE,double,float32_t);
blockSize = arraySizepSrc ;
-
+
pDst=PyMem_Malloc(sizeof(float32_t)*blockSize);
@@ -10199,7 +10632,7 @@
ml_arm_fir_decimate_instance_q15Object *selfS = (ml_arm_fir_decimate_instance_q15Object *)S;
GETARGUMENT(pSrc,NPY_INT16,int16_t,int16_t);
blockSize = arraySizepSrc ;
-
+
pDst=PyMem_Malloc(sizeof(q15_t)*blockSize);
@@ -10233,7 +10666,7 @@
ml_arm_fir_decimate_instance_q15Object *selfS = (ml_arm_fir_decimate_instance_q15Object *)S;
GETARGUMENT(pSrc,NPY_INT16,int16_t,int16_t);
blockSize = arraySizepSrc ;
-
+
pDst=PyMem_Malloc(sizeof(q15_t)*blockSize);
@@ -10301,7 +10734,7 @@
ml_arm_fir_decimate_instance_q31Object *selfS = (ml_arm_fir_decimate_instance_q31Object *)S;
GETARGUMENT(pSrc,NPY_INT32,int32_t,int32_t);
blockSize = arraySizepSrc ;
-
+
pDst=PyMem_Malloc(sizeof(q31_t)*blockSize);
@@ -10335,7 +10768,7 @@
ml_arm_fir_decimate_instance_q31Object *selfS = (ml_arm_fir_decimate_instance_q31Object *)S;
GETARGUMENT(pSrc,NPY_INT32,int32_t,int32_t);
blockSize = arraySizepSrc ;
-
+
pDst=PyMem_Malloc(sizeof(q31_t)*blockSize);
@@ -10403,7 +10836,7 @@
ml_arm_fir_interpolate_instance_q15Object *selfS = (ml_arm_fir_interpolate_instance_q15Object *)S;
GETARGUMENT(pSrc,NPY_INT16,int16_t,int16_t);
blockSize = arraySizepSrc ;
-
+
pDst=PyMem_Malloc(sizeof(q15_t)*blockSize);
@@ -10471,7 +10904,7 @@
ml_arm_fir_interpolate_instance_q31Object *selfS = (ml_arm_fir_interpolate_instance_q31Object *)S;
GETARGUMENT(pSrc,NPY_INT32,int32_t,int32_t);
blockSize = arraySizepSrc ;
-
+
pDst=PyMem_Malloc(sizeof(q31_t)*blockSize);
@@ -10539,7 +10972,7 @@
ml_arm_fir_interpolate_instance_f32Object *selfS = (ml_arm_fir_interpolate_instance_f32Object *)S;
GETARGUMENT(pSrc,NPY_DOUBLE,double,float32_t);
blockSize = arraySizepSrc ;
-
+
pDst=PyMem_Malloc(sizeof(float32_t)*blockSize);
@@ -10607,7 +11040,7 @@
GETARGUMENT(pSrc,NPY_INT32,int32_t,int32_t);
blockSize = arraySizepSrc ;
-
+
pDst=PyMem_Malloc(sizeof(q31_t)*blockSize);
@@ -10668,7 +11101,7 @@
ml_arm_biquad_cascade_df2T_instance_f32Object *selfS = (ml_arm_biquad_cascade_df2T_instance_f32Object *)S;
GETARGUMENT(pSrc,NPY_DOUBLE,double,float32_t);
blockSize = arraySizepSrc ;
-
+
pDst=PyMem_Malloc(sizeof(float32_t)*blockSize);
@@ -10702,7 +11135,7 @@
ml_arm_biquad_cascade_stereo_df2T_instance_f32Object *selfS = (ml_arm_biquad_cascade_stereo_df2T_instance_f32Object *)S;
GETARGUMENT(pSrc,NPY_DOUBLE,double,float32_t);
blockSize = arraySizepSrc ;
-
+
pDst=PyMem_Malloc(sizeof(float32_t)*blockSize);
@@ -10736,7 +11169,7 @@
ml_arm_biquad_cascade_df2T_instance_f64Object *selfS = (ml_arm_biquad_cascade_df2T_instance_f64Object *)S;
GETARGUMENT(pSrc,NPY_FLOAT64,float64_t,float64_t);
blockSize = arraySizepSrc ;
-
+
pDst=PyMem_Malloc(sizeof(float64_t)*blockSize);
@@ -10874,7 +11307,7 @@
ml_arm_fir_lattice_instance_q15Object *selfS = (ml_arm_fir_lattice_instance_q15Object *)S;
GETARGUMENT(pSrc,NPY_INT16,int16_t,int16_t);
blockSize = arraySizepSrc ;
-
+
pDst=PyMem_Malloc(sizeof(q15_t)*blockSize);
@@ -10934,7 +11367,7 @@
ml_arm_fir_lattice_instance_q31Object *selfS = (ml_arm_fir_lattice_instance_q31Object *)S;
GETARGUMENT(pSrc,NPY_INT32,int32_t,int32_t);
blockSize = arraySizepSrc ;
-
+
pDst=PyMem_Malloc(sizeof(q31_t)*blockSize);
@@ -10994,7 +11427,7 @@
ml_arm_fir_lattice_instance_f32Object *selfS = (ml_arm_fir_lattice_instance_f32Object *)S;
GETARGUMENT(pSrc,NPY_DOUBLE,double,float32_t);
blockSize = arraySizepSrc ;
-
+
pDst=PyMem_Malloc(sizeof(float32_t)*blockSize);
@@ -11028,7 +11461,7 @@
ml_arm_iir_lattice_instance_f32Object *selfS = (ml_arm_iir_lattice_instance_f32Object *)S;
GETARGUMENT(pSrc,NPY_DOUBLE,double,float32_t);
blockSize = arraySizepSrc ;
-
+
pDst=PyMem_Malloc(sizeof(float32_t)*blockSize);
@@ -11093,7 +11526,7 @@
ml_arm_iir_lattice_instance_q31Object *selfS = (ml_arm_iir_lattice_instance_q31Object *)S;
GETARGUMENT(pSrc,NPY_INT32,int32_t,int32_t);
blockSize = arraySizepSrc ;
-
+
pDst=PyMem_Malloc(sizeof(q31_t)*blockSize);
@@ -11158,7 +11591,7 @@
ml_arm_iir_lattice_instance_q15Object *selfS = (ml_arm_iir_lattice_instance_q15Object *)S;
GETARGUMENT(pSrc,NPY_INT16,int16_t,int16_t);
blockSize = arraySizepSrc ;
-
+
pDst=PyMem_Malloc(sizeof(q15_t)*blockSize);
@@ -11231,6 +11664,29 @@
return(NULL);
}
+static PyObject *
+cmsis_arm_cfft_init_f64(PyObject *obj, PyObject *args)
+{
+
+ PyObject *S=NULL; // input
+ uint16_t fftLen; // input
+
+ if (PyArg_ParseTuple(args,"Oh",&S,&fftLen))
+ {
+
+ ml_arm_cfft_instance_f64Object *selfS = (ml_arm_cfft_instance_f64Object *)S;
+
+ arm_status returnValue = arm_cfft_init_f64(selfS->instance,fftLen);
+ PyObject* theReturnOBJ=Py_BuildValue("i",returnValue);
+
+ PyObject *pythonResult = Py_BuildValue("O",theReturnOBJ);
+
+ Py_DECREF(theReturnOBJ);
+ return(pythonResult);
+
+ }
+ return(NULL);
+}
static PyObject *
cmsis_arm_cfft_init_q31(PyObject *obj, PyObject *args)
@@ -11304,7 +11760,7 @@
GETARGUMENT(pRef,NPY_DOUBLE,double,float32_t);
GETARGUMENT(pErr,NPY_DOUBLE,double,float32_t);
blockSize = arraySizepSrc ;
-
+
pOut=PyMem_Malloc(sizeof(float32_t)*blockSize);
@@ -11405,7 +11861,7 @@
GETARGUMENT(pRef,NPY_INT16,int16_t,int16_t);
GETARGUMENT(pErr,NPY_INT16,int16_t,int16_t);
blockSize = arraySizepSrc ;
-
+
pOut=PyMem_Malloc(sizeof(q15_t)*blockSize);
@@ -11447,7 +11903,7 @@
GETARGUMENT(pRef,NPY_INT32,int32_t,int32_t);
GETARGUMENT(pErr,NPY_INT32,int32_t,int32_t);
blockSize = arraySizepSrc ;
-
+
pOut=PyMem_Malloc(sizeof(q31_t)*blockSize);
@@ -11519,7 +11975,7 @@
GETARGUMENT(pRef,NPY_DOUBLE,double,float32_t);
GETARGUMENT(pErr,NPY_DOUBLE,double,float32_t);
blockSize = arraySizepSrc ;
-
+
pOut=PyMem_Malloc(sizeof(float32_t)*blockSize);
@@ -11590,7 +12046,7 @@
GETARGUMENT(pRef,NPY_INT32,int32_t,int32_t);
GETARGUMENT(pErr,NPY_INT32,int32_t,int32_t);
blockSize = arraySizepSrc ;
-
+
pOut=PyMem_Malloc(sizeof(q31_t)*blockSize);
@@ -11662,7 +12118,7 @@
GETARGUMENT(pRef,NPY_INT16,int16_t,int16_t);
GETARGUMENT(pErr,NPY_INT16,int16_t,int16_t);
blockSize = arraySizepSrc ;
-
+
pOut=PyMem_Malloc(sizeof(q15_t)*blockSize);
@@ -11730,7 +12186,7 @@
GETARGUMENT(pSrcA,NPY_DOUBLE,double,float32_t);
GETARGUMENT(pSrcB,NPY_DOUBLE,double,float32_t);
uint32_t outputLength = 2*MAX(srcALen,srcBLen) - 1 ;
-
+
pDst=PyMem_Malloc(sizeof(float32_t)*outputLength);
@@ -11770,7 +12226,7 @@
GETARGUMENT(pSrcB,NPY_INT16,int16_t,int16_t);
GETARGUMENT(pScratch,NPY_INT16,int16_t,int16_t);
uint32_t outputLength = 2*MAX(srcALen,srcBLen) - 1 ;
-
+
pDst=PyMem_Malloc(sizeof(q15_t)*outputLength);
@@ -11808,7 +12264,7 @@
GETARGUMENT(pSrcA,NPY_INT16,int16_t,int16_t);
GETARGUMENT(pSrcB,NPY_INT16,int16_t,int16_t);
uint32_t outputLength = 2*MAX(srcALen,srcBLen) - 1 ;
-
+
pDst=PyMem_Malloc(sizeof(q15_t)*outputLength);
@@ -11845,7 +12301,7 @@
GETARGUMENT(pSrcA,NPY_INT16,int16_t,int16_t);
GETARGUMENT(pSrcB,NPY_INT16,int16_t,int16_t);
uint32_t outputLength = 2*MAX(srcALen,srcBLen) - 1 ;
-
+
pDst=PyMem_Malloc(sizeof(q15_t)*outputLength);
@@ -11885,7 +12341,7 @@
GETARGUMENT(pSrcB,NPY_INT16,int16_t,int16_t);
GETARGUMENT(pScratch,NPY_INT16,int16_t,int16_t);
uint32_t outputLength = 2*MAX(srcALen,srcBLen) - 1 ;
-
+
pDst=PyMem_Malloc(sizeof(q15_t)*outputLength);
@@ -11923,7 +12379,7 @@
GETARGUMENT(pSrcA,NPY_INT32,int32_t,int32_t);
GETARGUMENT(pSrcB,NPY_INT32,int32_t,int32_t);
uint32_t outputLength = 2*MAX(srcALen,srcBLen) - 1 ;
-
+
pDst=PyMem_Malloc(sizeof(q31_t)*outputLength);
@@ -11960,7 +12416,7 @@
GETARGUMENT(pSrcA,NPY_INT32,int32_t,int32_t);
GETARGUMENT(pSrcB,NPY_INT32,int32_t,int32_t);
uint32_t outputLength = 2*MAX(srcALen,srcBLen) - 1 ;
-
+
pDst=PyMem_Malloc(sizeof(q31_t)*outputLength);
@@ -12003,7 +12459,7 @@
GETARGUMENT(pScratch1,NPY_INT16,int16_t,int16_t);
GETARGUMENT(pScratch2,NPY_INT16,int16_t,int16_t);
uint32_t outputLength = 2*MAX(srcALen,srcBLen) - 1 ;
-
+
pDst=PyMem_Malloc(sizeof(q7_t)*outputLength);
@@ -12042,7 +12498,7 @@
GETARGUMENT(pSrcA,NPY_BYTE,int8_t,q7_t);
GETARGUMENT(pSrcB,NPY_BYTE,int8_t,q7_t);
uint32_t outputLength = 2*MAX(srcALen,srcBLen) - 1 ;
-
+
pDst=PyMem_Malloc(sizeof(q7_t)*outputLength);
@@ -12080,7 +12536,7 @@
GETARGUMENT(pSrc,NPY_DOUBLE,double,float32_t);
GETARGUMENT(pScratchIn,NPY_DOUBLE,double,float32_t);
blockSize = arraySizepSrc ;
-
+
pDst=PyMem_Malloc(sizeof(float32_t)*blockSize);
@@ -12294,7 +12750,7 @@
GETARGUMENT(pSrc,NPY_DOUBLE,double,float32_t);
numSamples = arraySizepSrc ;
numSamples = numSamples / 2;
-
+
pDst=PyMem_Malloc(sizeof(float32_t)*2*numSamples);
@@ -12327,7 +12783,7 @@
GETARGUMENT(pSrc,NPY_INT32,int32_t,int32_t);
numSamples = arraySizepSrc ;
numSamples = numSamples / 2;
-
+
pDst=PyMem_Malloc(sizeof(q31_t)*2*numSamples);
@@ -12360,7 +12816,7 @@
GETARGUMENT(pSrc,NPY_INT16,int16_t,int16_t);
numSamples = arraySizepSrc ;
numSamples = numSamples / 2;
-
+
pDst=PyMem_Malloc(sizeof(q15_t)*2*numSamples);
@@ -12393,7 +12849,7 @@
GETARGUMENT(pSrc,NPY_DOUBLE,double,float32_t);
numSamples = arraySizepSrc ;
numSamples = numSamples / 2;
-
+
pDst=PyMem_Malloc(sizeof(float32_t)*2*numSamples);
@@ -12426,7 +12882,7 @@
GETARGUMENT(pSrc,NPY_INT32,int32_t,int32_t);
numSamples = arraySizepSrc ;
numSamples = numSamples / 2;
-
+
pDst=PyMem_Malloc(sizeof(q31_t)*2*numSamples);
@@ -12459,7 +12915,7 @@
GETARGUMENT(pSrc,NPY_INT16,int16_t,int16_t);
numSamples = arraySizepSrc ;
numSamples = numSamples / 2;
-
+
pDst=PyMem_Malloc(sizeof(q15_t)*2*numSamples);
@@ -12682,7 +13138,7 @@
GETARGUMENT(pSrc,NPY_BYTE,int8_t,q7_t);
blockSize = arraySizepSrc ;
-
+
pDst=PyMem_Malloc(sizeof(q31_t)*blockSize);
@@ -12768,7 +13224,7 @@
GETARGUMENT(pSrc,NPY_BYTE,int8_t,q7_t);
blockSize = arraySizepSrc ;
-
+
pDst=PyMem_Malloc(sizeof(q15_t)*blockSize);
@@ -12858,7 +13314,7 @@
GETARGUMENT(pSrc,NPY_BYTE,int8_t,q7_t);
blockSize = arraySizepSrc ;
-
+
pDst=PyMem_Malloc(sizeof(float32_t)*blockSize);
@@ -12948,7 +13404,7 @@
GETARGUMENT(pSrc,NPY_INT32,int32_t,int32_t);
blockSize = arraySizepSrc ;
-
+
pDst=PyMem_Malloc(sizeof(float32_t)*blockSize);
@@ -13223,7 +13679,7 @@
if (PyArg_ParseTuple(args,"f",&in))
{
-
+
pOut=PyMem_Malloc(sizeof(float32_t)*1);
@@ -13252,7 +13708,7 @@
if (PyArg_ParseTuple(args,"i",&in))
{
-
+
pOut=PyMem_Malloc(sizeof(q31_t)*1);
@@ -13281,7 +13737,7 @@
if (PyArg_ParseTuple(args,"h",&in))
{
-
+
pOut=PyMem_Malloc(sizeof(q15_t)*1);
@@ -13416,7 +13872,7 @@
GETARGUMENT(pSrc,NPY_INT32,int32_t,int32_t);
blockSize = arraySizepSrc ;
-
+
pResult=PyMem_Malloc(sizeof(q63_t)*1);
@@ -13448,7 +13904,7 @@
GETARGUMENT(pSrc,NPY_DOUBLE,double,float32_t);
blockSize = arraySizepSrc ;
-
+
pResult=PyMem_Malloc(sizeof(float32_t)*1);
@@ -13480,7 +13936,7 @@
GETARGUMENT(pSrc,NPY_INT16,int16_t,int16_t);
blockSize = arraySizepSrc ;
-
+
pResult=PyMem_Malloc(sizeof(q63_t)*1);
@@ -13512,7 +13968,7 @@
GETARGUMENT(pSrc,NPY_BYTE,int8_t,q7_t);
blockSize = arraySizepSrc ;
-
+
pResult=PyMem_Malloc(sizeof(q31_t)*1);
@@ -13544,7 +14000,7 @@
GETARGUMENT(pSrc,NPY_BYTE,int8_t,q7_t);
blockSize = arraySizepSrc ;
-
+
pResult=PyMem_Malloc(sizeof(q7_t)*1);
@@ -13576,7 +14032,7 @@
GETARGUMENT(pSrc,NPY_INT16,int16_t,int16_t);
blockSize = arraySizepSrc ;
-
+
pResult=PyMem_Malloc(sizeof(q15_t)*1);
@@ -13608,7 +14064,7 @@
GETARGUMENT(pSrc,NPY_INT32,int32_t,int32_t);
blockSize = arraySizepSrc ;
-
+
pResult=PyMem_Malloc(sizeof(q31_t)*1);
@@ -13640,7 +14096,7 @@
GETARGUMENT(pSrc,NPY_DOUBLE,double,float32_t);
blockSize = arraySizepSrc ;
-
+
pResult=PyMem_Malloc(sizeof(float32_t)*1);
@@ -13672,7 +14128,7 @@
GETARGUMENT(pSrc,NPY_DOUBLE,double,float32_t);
blockSize = arraySizepSrc ;
-
+
pResult=PyMem_Malloc(sizeof(float32_t)*1);
@@ -13704,7 +14160,7 @@
GETARGUMENT(pSrc,NPY_INT32,int32_t,int32_t);
blockSize = arraySizepSrc ;
-
+
pResult=PyMem_Malloc(sizeof(q31_t)*1);
@@ -13736,7 +14192,7 @@
GETARGUMENT(pSrc,NPY_INT16,int16_t,int16_t);
blockSize = arraySizepSrc ;
-
+
pResult=PyMem_Malloc(sizeof(q15_t)*1);
@@ -13768,7 +14224,7 @@
GETARGUMENT(pSrc,NPY_DOUBLE,double,float32_t);
blockSize = arraySizepSrc ;
-
+
pResult=PyMem_Malloc(sizeof(float32_t)*1);
@@ -13800,7 +14256,7 @@
GETARGUMENT(pSrc,NPY_INT32,int32_t,int32_t);
blockSize = arraySizepSrc ;
-
+
pResult=PyMem_Malloc(sizeof(q31_t)*1);
@@ -13832,7 +14288,7 @@
GETARGUMENT(pSrc,NPY_INT16,int16_t,int16_t);
blockSize = arraySizepSrc ;
-
+
pResult=PyMem_Malloc(sizeof(q15_t)*1);
@@ -13864,7 +14320,7 @@
GETARGUMENT(pSrc,NPY_DOUBLE,double,float32_t);
blockSize = arraySizepSrc ;
-
+
pResult=PyMem_Malloc(sizeof(float32_t)*1);
@@ -13896,7 +14352,7 @@
GETARGUMENT(pSrc,NPY_INT32,int32_t,int32_t);
blockSize = arraySizepSrc ;
-
+
pResult=PyMem_Malloc(sizeof(q31_t)*1);
@@ -13928,7 +14384,7 @@
GETARGUMENT(pSrc,NPY_INT16,int16_t,int16_t);
blockSize = arraySizepSrc ;
-
+
pResult=PyMem_Malloc(sizeof(q15_t)*1);
@@ -13961,7 +14417,7 @@
GETARGUMENT(pSrc,NPY_DOUBLE,double,float32_t);
numSamples = arraySizepSrc ;
numSamples = numSamples / 2;
-
+
pDst=PyMem_Malloc(sizeof(float32_t)*2*numSamples);
@@ -13994,7 +14450,7 @@
GETARGUMENT(pSrc,NPY_INT32,int32_t,int32_t);
numSamples = arraySizepSrc ;
numSamples = numSamples / 2;
-
+
pDst=PyMem_Malloc(sizeof(q31_t)*2*numSamples);
@@ -14027,7 +14483,7 @@
GETARGUMENT(pSrc,NPY_INT16,int16_t,int16_t);
numSamples = arraySizepSrc ;
numSamples = numSamples / 2;
-
+
pDst=PyMem_Malloc(sizeof(q15_t)*2*numSamples);
@@ -14064,10 +14520,10 @@
GETARGUMENT(pSrcB,NPY_INT16,int16_t,int16_t);
numSamples = arraySizepSrcA ;
numSamples = numSamples / 2;
-
+
realResult=PyMem_Malloc(sizeof(q31_t)*1);
-
+
imagResult=PyMem_Malloc(sizeof(q31_t)*1);
@@ -14107,10 +14563,10 @@
GETARGUMENT(pSrcB,NPY_INT32,int32_t,int32_t);
numSamples = arraySizepSrcA ;
numSamples = numSamples / 2;
-
+
realResult=PyMem_Malloc(sizeof(q63_t)*1);
-
+
imagResult=PyMem_Malloc(sizeof(q63_t)*1);
@@ -14150,10 +14606,10 @@
GETARGUMENT(pSrcB,NPY_DOUBLE,double,float32_t);
numSamples = arraySizepSrcA ;
numSamples = numSamples / 2;
-
+
realResult=PyMem_Malloc(sizeof(float32_t)*1);
-
+
imagResult=PyMem_Malloc(sizeof(float32_t)*1);
@@ -14192,7 +14648,7 @@
GETARGUMENT(pSrcReal,NPY_INT16,int16_t,int16_t);
numSamples = arraySizepSrcCmplx ;
numSamples = numSamples / 2;
-
+
pCmplxDst=PyMem_Malloc(sizeof(q15_t)*2*numSamples);
@@ -14229,7 +14685,7 @@
GETARGUMENT(pSrcReal,NPY_INT32,int32_t,int32_t);
numSamples = arraySizepSrcCmplx ;
numSamples = numSamples / 2;
-
+
pCmplxDst=PyMem_Malloc(sizeof(q31_t)*2*numSamples);
@@ -14266,7 +14722,7 @@
GETARGUMENT(pSrcReal,NPY_DOUBLE,double,float32_t);
numSamples = arraySizepSrcCmplx ;
numSamples = numSamples / 2;
-
+
pCmplxDst=PyMem_Malloc(sizeof(float32_t)*2*numSamples);
@@ -14302,7 +14758,7 @@
GETARGUMENT(pSrc,NPY_BYTE,int8_t,q7_t);
GETARGUMENT(index,NPY_UINT32,uint32_t,uint32_t);
blockSize = arraySizepSrc ;
-
+
result=PyMem_Malloc(sizeof(q7_t)*1);
@@ -14336,10 +14792,10 @@
GETARGUMENT(pSrc,NPY_INT16,int16_t,int16_t);
blockSize = arraySizepSrc ;
-
+
pResult=PyMem_Malloc(sizeof(q15_t)*1);
-
+
pIndex=PyMem_Malloc(sizeof(uint32_t)*1);
@@ -14374,10 +14830,10 @@
GETARGUMENT(pSrc,NPY_INT32,int32_t,int32_t);
blockSize = arraySizepSrc ;
-
+
pResult=PyMem_Malloc(sizeof(q31_t)*1);
-
+
pIndex=PyMem_Malloc(sizeof(uint32_t)*1);
@@ -14412,10 +14868,10 @@
GETARGUMENT(pSrc,NPY_DOUBLE,double,float32_t);
blockSize = arraySizepSrc ;
-
+
pResult=PyMem_Malloc(sizeof(float32_t)*1);
-
+
pIndex=PyMem_Malloc(sizeof(uint32_t)*1);
@@ -14450,10 +14906,10 @@
GETARGUMENT(pSrc,NPY_BYTE,int8_t,q7_t);
blockSize = arraySizepSrc ;
-
+
pResult=PyMem_Malloc(sizeof(q7_t)*1);
-
+
pIndex=PyMem_Malloc(sizeof(uint32_t)*1);
@@ -14488,10 +14944,10 @@
GETARGUMENT(pSrc,NPY_INT16,int16_t,int16_t);
blockSize = arraySizepSrc ;
-
+
pResult=PyMem_Malloc(sizeof(q15_t)*1);
-
+
pIndex=PyMem_Malloc(sizeof(uint32_t)*1);
@@ -14526,10 +14982,10 @@
GETARGUMENT(pSrc,NPY_INT32,int32_t,int32_t);
blockSize = arraySizepSrc ;
-
+
pResult=PyMem_Malloc(sizeof(q31_t)*1);
-
+
pIndex=PyMem_Malloc(sizeof(uint32_t)*1);
@@ -14564,10 +15020,10 @@
GETARGUMENT(pSrc,NPY_DOUBLE,double,float32_t);
blockSize = arraySizepSrc ;
-
+
pResult=PyMem_Malloc(sizeof(float32_t)*1);
-
+
pIndex=PyMem_Malloc(sizeof(uint32_t)*1);
@@ -14605,7 +15061,7 @@
GETARGUMENT(pSrcB,NPY_INT16,int16_t,int16_t);
numSamples = arraySizepSrcA ;
numSamples = numSamples / 2;
-
+
pDst=PyMem_Malloc(sizeof(q15_t)*2*numSamples);
@@ -14642,7 +15098,7 @@
GETARGUMENT(pSrcB,NPY_INT32,int32_t,int32_t);
numSamples = arraySizepSrcA ;
numSamples = numSamples / 2;
-
+
pDst=PyMem_Malloc(sizeof(q31_t)*2*numSamples);
@@ -14679,7 +15135,7 @@
GETARGUMENT(pSrcB,NPY_DOUBLE,double,float32_t);
numSamples = arraySizepSrcA ;
numSamples = numSamples / 2;
-
+
pDst=PyMem_Malloc(sizeof(float32_t)*2*numSamples);
@@ -14712,7 +15168,7 @@
GETARGUMENT(pSrc,NPY_DOUBLE,double,float32_t);
blockSize = arraySizepSrc ;
-
+
pDst=PyMem_Malloc(sizeof(q31_t)*blockSize);
@@ -14744,7 +15200,7 @@
GETARGUMENT(pSrc,NPY_DOUBLE,double,float32_t);
blockSize = arraySizepSrc ;
-
+
pDst=PyMem_Malloc(sizeof(q15_t)*blockSize);
@@ -14776,7 +15232,7 @@
GETARGUMENT(pSrc,NPY_DOUBLE,double,float32_t);
blockSize = arraySizepSrc ;
-
+
pDst=PyMem_Malloc(sizeof(q7_t)*blockSize);
@@ -14808,7 +15264,7 @@
GETARGUMENT(pSrc,NPY_INT32,int32_t,int32_t);
blockSize = arraySizepSrc ;
-
+
pDst=PyMem_Malloc(sizeof(q15_t)*blockSize);
@@ -14840,7 +15296,7 @@
GETARGUMENT(pSrc,NPY_INT32,int32_t,int32_t);
blockSize = arraySizepSrc ;
-
+
pDst=PyMem_Malloc(sizeof(q7_t)*blockSize);
@@ -14872,7 +15328,7 @@
GETARGUMENT(pSrc,NPY_INT16,int16_t,int16_t);
blockSize = arraySizepSrc ;
-
+
pDst=PyMem_Malloc(sizeof(float32_t)*blockSize);
@@ -14904,7 +15360,7 @@
GETARGUMENT(pSrc,NPY_INT16,int16_t,int16_t);
blockSize = arraySizepSrc ;
-
+
pDst=PyMem_Malloc(sizeof(q31_t)*blockSize);
@@ -14936,7 +15392,7 @@
GETARGUMENT(pSrc,NPY_INT16,int16_t,int16_t);
blockSize = arraySizepSrc ;
-
+
pDst=PyMem_Malloc(sizeof(q7_t)*blockSize);
@@ -15124,6 +15580,7 @@
{"arm_cfft_radix4_f32", cmsis_arm_cfft_radix4_f32, METH_VARARGS,""},
{"arm_cfft_q15", cmsis_arm_cfft_q15, METH_VARARGS,""},
{"arm_cfft_q31", cmsis_arm_cfft_q31, METH_VARARGS,""},
+{"arm_cfft_f64", cmsis_arm_cfft_f64, METH_VARARGS,""},
{"arm_cfft_f32", cmsis_arm_cfft_f32, METH_VARARGS,""},
{"arm_rfft_init_q15", cmsis_arm_rfft_init_q15, METH_VARARGS,""},
{"arm_rfft_q15", cmsis_arm_rfft_q15, METH_VARARGS,""},
@@ -15131,6 +15588,16 @@
{"arm_rfft_q31", cmsis_arm_rfft_q31, METH_VARARGS,""},
{"arm_rfft_init_f32", cmsis_arm_rfft_init_f32, METH_VARARGS,""},
{"arm_rfft_f32", cmsis_arm_rfft_f32, METH_VARARGS,""},
+{"arm_rfft_fast_init_f64", cmsis_arm_rfft_fast_init_f64, METH_VARARGS,""},
+{"arm_rfft_32_fast_init_f64", cmsis_arm_rfft_32_fast_init_f64, METH_VARARGS,""},
+{"arm_rfft_64_fast_init_f64", cmsis_arm_rfft_64_fast_init_f64, METH_VARARGS,""},
+{"arm_rfft_128_fast_init_f64", cmsis_arm_rfft_128_fast_init_f64, METH_VARARGS,""},
+{"arm_rfft_256_fast_init_f64", cmsis_arm_rfft_256_fast_init_f64, METH_VARARGS,""},
+{"arm_rfft_512_fast_init_f64", cmsis_arm_rfft_512_fast_init_f64, METH_VARARGS,""},
+{"arm_rfft_1024_fast_init_f64", cmsis_arm_rfft_1024_fast_init_f64, METH_VARARGS,""},
+{"arm_rfft_2048_fast_init_f64", cmsis_arm_rfft_2048_fast_init_f64, METH_VARARGS,""},
+{"arm_rfft_4096_fast_init_f64", cmsis_arm_rfft_4096_fast_init_f64, METH_VARARGS,""},
+{"arm_rfft_fast_f32", cmsis_arm_rfft_fast_f32, METH_VARARGS,""},
{"arm_rfft_fast_init_f32", cmsis_arm_rfft_fast_init_f32, METH_VARARGS,""},
{"arm_rfft_32_fast_init_f32", cmsis_arm_rfft_32_fast_init_f32, METH_VARARGS,""},
{"arm_rfft_64_fast_init_f32", cmsis_arm_rfft_64_fast_init_f32, METH_VARARGS,""},
@@ -15235,6 +15702,7 @@
{"arm_iir_lattice_q15", cmsis_arm_iir_lattice_q15, METH_VARARGS,""},
{"arm_iir_lattice_init_q15", cmsis_arm_iir_lattice_init_q15, METH_VARARGS,""},
{"arm_cfft_init_f32", cmsis_arm_cfft_init_f32, METH_VARARGS,""},
+{"arm_cfft_init_f64", cmsis_arm_cfft_init_f64, METH_VARARGS,""},
{"arm_cfft_init_q31", cmsis_arm_cfft_init_q31, METH_VARARGS,""},
{"arm_cfft_init_q15", cmsis_arm_cfft_init_q15, METH_VARARGS,""},
{"arm_lms_f32", cmsis_arm_lms_f32, METH_VARARGS,""},
diff --git a/CMSIS/DSP/PythonWrapper/cmsisdsp_pkg/src/fftinit.c b/CMSIS/DSP/PythonWrapper/cmsisdsp_pkg/src/fftinit.c
index 9845a05..497cee5 100644
--- a/CMSIS/DSP/PythonWrapper/cmsisdsp_pkg/src/fftinit.c
+++ b/CMSIS/DSP/PythonWrapper/cmsisdsp_pkg/src/fftinit.c
@@ -29,234 +29,309 @@
#include "arm_common_tables.h"
#include "arm_const_structs.h"
-#define FFTINIT(SIZE) \
- S->bitRevLength = arm_cfft_sR_f32_len##SIZE.bitRevLength; \
- S->pBitRevTable = arm_cfft_sR_f32_len##SIZE.pBitRevTable; \
- S->pTwiddle = arm_cfft_sR_f32_len##SIZE.pTwiddle;
+#define FFTINIT(EXT,SIZE) \
+ S->bitRevLength = arm_cfft_sR_##EXT##_len##SIZE.bitRevLength; \
+ S->pBitRevTable = arm_cfft_sR_##EXT##_len##SIZE.pBitRevTable; \
+ S->pTwiddle = arm_cfft_sR_##EXT##_len##SIZE.pTwiddle;
#define FFTFXTINIT(EXT,SIZE) \
S->bitRevLength = arm_cfft_sR_##EXT##_len##SIZE.bitRevLength; \
S->pBitRevTable = arm_cfft_sR_##EXT##_len##SIZE.pBitRevTable; \
S->pTwiddle = arm_cfft_sR_##EXT##_len##SIZE.pTwiddle;
+
+
+arm_status arm_cfft_init_f64(
+ arm_cfft_instance_f64 * S,
+ uint16_t 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 = (float64_t *)twiddleCoefF64_4096;
+
+
+ /* Initializations of Instance structure depending on the FFT length */
+ switch (S->fftLen) {
+ /* Initializations of structure parameters for 4096 point FFT */
+ case 4096U:
+ /* Initialise the bit reversal table modifier */
+ FFTINIT(f64,4096);
+ break;
+
+ /* Initializations of structure parameters for 2048 point FFT */
+ case 2048U:
+ /* Initialise the bit reversal table modifier */
+ FFTINIT(f64,2048);
+
+ break;
+
+ /* Initializations of structure parameters for 1024 point FFT */
+ case 1024U:
+ /* Initialise the bit reversal table modifier */
+ FFTINIT(f64,1024);
+
+ break;
+
+ /* Initializations of structure parameters for 512 point FFT */
+ case 512U:
+ /* Initialise the bit reversal table modifier */
+ FFTINIT(f64,512);
+ break;
+
+ case 256U:
+ FFTINIT(f64,256);
+ break;
+
+ case 128U:
+ FFTINIT(f64,128);
+ break;
+
+ case 64U:
+ FFTINIT(f64,64);
+ break;
+
+ case 32U:
+ FFTINIT(f64,32);
+ break;
+
+ case 16U:
+ /* Initializations of structure parameters for 16 point FFT */
+ FFTINIT(f64,16);
+ break;
+
+
+ default:
+ /* Reporting argument error if fftSize is not valid value */
+ status = ARM_MATH_ARGUMENT_ERROR;
+ break;
+ }
+
+ return (status);
+}
+
arm_status arm_cfft_init_f32(
arm_cfft_instance_f32 * S,
uint16_t 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 = (float32_t *)twiddleCoef_4096;
-
-
+ /* 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 = (float32_t *)twiddleCoef_4096;
+
+
/* Initializations of Instance structure depending on the FFT length */
- switch (S->fftLen) {
- /* Initializations of structure parameters for 4096 point FFT */
- case 4096U:
- /* Initialise the bit reversal table modifier */
- FFTINIT(4096);
- break;
-
- /* Initializations of structure parameters for 2048 point FFT */
- case 2048U:
- /* Initialise the bit reversal table modifier */
- FFTINIT(2048);
-
- break;
-
- /* Initializations of structure parameters for 1024 point FFT */
- case 1024U:
- /* Initialise the bit reversal table modifier */
- FFTINIT(1024);
-
- break;
-
- /* Initializations of structure parameters for 512 point FFT */
- case 512U:
- /* Initialise the bit reversal table modifier */
- FFTINIT(512);
- break;
-
- case 256U:
- FFTINIT(256);
- break;
-
- case 128U:
- FFTINIT(128);
- break;
-
- case 64U:
- FFTINIT(64);
- break;
-
- case 32U:
- FFTINIT(32);
- break;
-
- case 16U:
- /* Initializations of structure parameters for 16 point FFT */
- FFTINIT(16);
- break;
-
-
- default:
- /* Reporting argument error if fftSize is not valid value */
- status = ARM_MATH_ARGUMENT_ERROR;
- break;
- }
-
-
- return (status);
+ switch (S->fftLen) {
+ /* Initializations of structure parameters for 4096 point FFT */
+ case 4096U:
+ /* Initialise the bit reversal table modifier */
+ FFTINIT(f32,4096);
+ break;
+
+ /* Initializations of structure parameters for 2048 point FFT */
+ case 2048U:
+ /* Initialise the bit reversal table modifier */
+ FFTINIT(f32,2048);
+
+ break;
+
+ /* Initializations of structure parameters for 1024 point FFT */
+ case 1024U:
+ /* Initialise the bit reversal table modifier */
+ FFTINIT(f32,1024);
+
+ break;
+
+ /* Initializations of structure parameters for 512 point FFT */
+ case 512U:
+ /* Initialise the bit reversal table modifier */
+ FFTINIT(f32,512);
+ break;
+
+ case 256U:
+ FFTINIT(f32,256);
+ break;
+
+ case 128U:
+ FFTINIT(f32,128);
+ break;
+
+ case 64U:
+ FFTINIT(f32,64);
+ break;
+
+ case 32U:
+ FFTINIT(f32,32);
+ break;
+
+ case 16U:
+ /* Initializations of structure parameters for 16 point FFT */
+ FFTINIT(f32,16);
+ 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)
{
- /* 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 = (float32_t *)twiddleCoef_4096;
-
-
+ /* 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 = (float32_t *)twiddleCoef_4096;
+
+
/* Initializations of Instance structure depending on the FFT length */
- switch (S->fftLen) {
- /* Initializations of structure parameters for 4096 point FFT */
- case 4096U:
- /* Initialise the bit reversal table modifier */
- FFTFXTINIT(q31,4096);
- break;
-
- /* Initializations of structure parameters for 2048 point FFT */
- case 2048U:
- /* Initialise the bit reversal table modifier */
- FFTFXTINIT(q31,2048);
-
- break;
-
- /* Initializations of structure parameters for 1024 point FFT */
- case 1024U:
- /* Initialise the bit reversal table modifier */
- FFTFXTINIT(q31,1024);
-
- break;
-
- /* Initializations of structure parameters for 512 point FFT */
- case 512U:
- /* Initialise the bit reversal table modifier */
- FFTFXTINIT(q31,512);
- break;
-
- case 256U:
- FFTFXTINIT(q31,256);
- break;
-
- case 128U:
- FFTFXTINIT(q31,128);
- break;
-
- case 64U:
- FFTFXTINIT(q31,64);
- break;
-
- case 32U:
- FFTFXTINIT(q31,32);
- break;
-
- case 16U:
- /* Initializations of structure parameters for 16 point FFT */
- FFTFXTINIT(q31,16);
- break;
-
-
- default:
- /* Reporting argument error if fftSize is not valid value */
- status = ARM_MATH_ARGUMENT_ERROR;
- break;
- }
-
-
- return (status);
+ switch (S->fftLen) {
+ /* Initializations of structure parameters for 4096 point FFT */
+ case 4096U:
+ /* Initialise the bit reversal table modifier */
+ FFTFXTINIT(q31,4096);
+ break;
+
+ /* Initializations of structure parameters for 2048 point FFT */
+ case 2048U:
+ /* Initialise the bit reversal table modifier */
+ FFTFXTINIT(q31,2048);
+
+ break;
+
+ /* Initializations of structure parameters for 1024 point FFT */
+ case 1024U:
+ /* Initialise the bit reversal table modifier */
+ FFTFXTINIT(q31,1024);
+
+ break;
+
+ /* Initializations of structure parameters for 512 point FFT */
+ case 512U:
+ /* Initialise the bit reversal table modifier */
+ FFTFXTINIT(q31,512);
+ break;
+
+ case 256U:
+ FFTFXTINIT(q31,256);
+ break;
+
+ case 128U:
+ FFTFXTINIT(q31,128);
+ break;
+
+ case 64U:
+ FFTFXTINIT(q31,64);
+ break;
+
+ case 32U:
+ FFTFXTINIT(q31,32);
+ break;
+
+ case 16U:
+ /* Initializations of structure parameters for 16 point FFT */
+ FFTFXTINIT(q31,16);
+ 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)
{
- /* 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 = (float32_t *)twiddleCoef_4096;
-
-
+ /* 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 = (float32_t *)twiddleCoef_4096;
+
+
/* Initializations of Instance structure depending on the FFT length */
- switch (S->fftLen) {
- /* Initializations of structure parameters for 4096 point FFT */
- case 4096U:
- /* Initialise the bit reversal table modifier */
- FFTFXTINIT(q15,4096);
- break;
-
- /* Initializations of structure parameters for 2048 point FFT */
- case 2048U:
- /* Initialise the bit reversal table modifier */
- FFTFXTINIT(q15,2048);
-
- break;
-
- /* Initializations of structure parameters for 1024 point FFT */
- case 1024U:
- /* Initialise the bit reversal table modifier */
- FFTFXTINIT(q15,1024);
-
- break;
-
- /* Initializations of structure parameters for 512 point FFT */
- case 512U:
- /* Initialise the bit reversal table modifier */
- FFTFXTINIT(q15,512);
- break;
-
- case 256U:
- FFTFXTINIT(q15,256);
- break;
-
- case 128U:
- FFTFXTINIT(q15,128);
- break;
-
- case 64U:
- FFTFXTINIT(q15,64);
- break;
-
- case 32U:
- FFTFXTINIT(q15,32);
- break;
-
- case 16U:
- /* Initializations of structure parameters for 16 point FFT */
- FFTFXTINIT(q15,16);
- break;
-
-
- default:
- /* Reporting argument error if fftSize is not valid value */
- status = ARM_MATH_ARGUMENT_ERROR;
- break;
- }
-
-
- return (status);
-}
\ No newline at end of file
+ switch (S->fftLen) {
+ /* Initializations of structure parameters for 4096 point FFT */
+ case 4096U:
+ /* Initialise the bit reversal table modifier */
+ FFTFXTINIT(q15,4096);
+ break;
+
+ /* Initializations of structure parameters for 2048 point FFT */
+ case 2048U:
+ /* Initialise the bit reversal table modifier */
+ FFTFXTINIT(q15,2048);
+
+ break;
+
+ /* Initializations of structure parameters for 1024 point FFT */
+ case 1024U:
+ /* Initialise the bit reversal table modifier */
+ FFTFXTINIT(q15,1024);
+
+ break;
+
+ /* Initializations of structure parameters for 512 point FFT */
+ case 512U:
+ /* Initialise the bit reversal table modifier */
+ FFTFXTINIT(q15,512);
+ break;
+
+ case 256U:
+ FFTFXTINIT(q15,256);
+ break;
+
+ case 128U:
+ FFTFXTINIT(q15,128);
+ break;
+
+ case 64U:
+ FFTFXTINIT(q15,64);
+ break;
+
+ case 32U:
+ FFTFXTINIT(q15,32);
+ break;
+
+ case 16U:
+ /* Initializations of structure parameters for 16 point FFT */
+ FFTFXTINIT(q15,16);
+ break;
+
+
+ default:
+ /* Reporting argument error if fftSize is not valid value */
+ status = ARM_MATH_ARGUMENT_ERROR;
+ break;
+ }
+
+
+ return (status);
+}
diff --git a/CMSIS/DSP/Source/CMakeLists.txt b/CMSIS/DSP/Source/CMakeLists.txt
index 7cfdb5b..5f70a45 100755
--- a/CMSIS/DSP/Source/CMakeLists.txt
+++ b/CMSIS/DSP/Source/CMakeLists.txt
@@ -58,10 +58,20 @@
option(ARM_SIN_Q15 "sin q15" OFF)
option(ARM_SIN_COS_F32 "sin cos f32" OFF)
option(ARM_SIN_COS_Q31 "sin cos q31" OFF)
-
+
option(ARM_LMS_NORM_Q31 "lms norm q31" OFF)
option(ARM_LMS_NORM_Q15 "lms norm q15" OFF)
-
+
+option(CFFT_F64_16 "cfft f64 16" OFF)
+option(CFFT_F64_32 "cfft f64 32" OFF)
+option(CFFT_F64_64 "cfft f64 64" OFF)
+option(CFFT_F64_128 "cfft f64 128" OFF)
+option(CFFT_F64_256 "cfft f64 256" OFF)
+option(CFFT_F64_512 "cfft f64 512" OFF)
+option(CFFT_F64_1024 "cfft f64 1024" OFF)
+option(CFFT_F64_2048 "cfft f64 2048" OFF)
+option(CFFT_F64_4096 "cfft f64 4096" OFF)
+
option(CFFT_F32_16 "cfft f32 16" OFF)
option(CFFT_F32_32 "cfft f32 32" OFF)
option(CFFT_F32_64 "cfft f32 64" OFF)
@@ -71,7 +81,7 @@
option(CFFT_F32_1024 "cfft f32 1024" OFF)
option(CFFT_F32_2048 "cfft f32 2048" OFF)
option(CFFT_F32_4096 "cfft f32 4096" OFF)
-
+
option(CFFT_Q31_16 "cfft q31 16" OFF)
option(CFFT_Q31_32 "cfft q31 32" OFF)
option(CFFT_Q31_64 "cfft q31 64" OFF)
@@ -81,7 +91,7 @@
option(CFFT_Q31_1024 "cfft q31 1024" OFF)
option(CFFT_Q31_2048 "cfft q31 2048" OFF)
option(CFFT_Q31_4096 "cfft q31 4096" OFF)
-
+
option(CFFT_Q15_16 "cfft q15 16" OFF)
option(CFFT_Q15_32 "cfft q15 32" OFF)
option(CFFT_Q15_64 "cfft q15 64" OFF)
@@ -91,7 +101,7 @@
option(CFFT_Q15_1024 "cfft q15 1024" OFF)
option(CFFT_Q15_2048 "cfft q15 2048" OFF)
option(CFFT_Q15_4096 "cfft q15 4096" OFF)
-
+
option(RFFT_FAST_F32_32 "rfft fast f32 32" OFF)
option(RFFT_FAST_F32_64 "rfft fast f32 64" OFF)
option(RFFT_FAST_F32_128 "rfft fast f32 128" OFF)
@@ -100,13 +110,28 @@
option(RFFT_FAST_F32_1024 "rfft fast f32 1024" OFF)
option(RFFT_FAST_F32_2048 "rfft fast f32 2048" OFF)
option(RFFT_FAST_F32_4096 "rfft fast f32 4096" OFF)
-
-
+
+
option(RFFT_F32_128 "rfft f32 128" OFF)
option(RFFT_F32_512 "rfft f32 512" OFF)
option(RFFT_F32_2048 "rfft f32 2048" OFF)
option(RFFT_F32_8192 "rfft f32 8192" OFF)
-
+
+option(RFFT_FAST_F64_32 "rfft fast f64 32" OFF)
+option(RFFT_FAST_F64_64 "rfft fast f64 64" OFF)
+option(RFFT_FAST_F64_128 "rfft fast f64 128" OFF)
+option(RFFT_FAST_F64_256 "rfft fast f64 256" OFF)
+option(RFFT_FAST_F64_512 "rfft fast f64 512" OFF)
+option(RFFT_FAST_F64_1024 "rfft fast f64 1024" OFF)
+option(RFFT_FAST_F64_2048 "rfft fast f64 2048" OFF)
+option(RFFT_FAST_F64_4096 "rfft fast f64 4096" OFF)
+
+
+option(RFFT_F64_128 "rfft f64 128" OFF)
+option(RFFT_F64_512 "rfft f64 512" OFF)
+option(RFFT_F64_2048 "rfft f64 2048" OFF)
+option(RFFT_F64_8192 "rfft f64 8192" OFF)
+
option(RFFT_Q31_32 "rfft q31 32" OFF)
option(RFFT_Q31_64 "rfft q31 64" OFF)
option(RFFT_Q31_128 "rfft q31 128" OFF)
@@ -116,7 +141,7 @@
option(RFFT_Q31_2048 "rfft q31 2048" OFF)
option(RFFT_Q31_4096 "rfft q31 4096" OFF)
option(RFFT_Q31_8192 "rfft q31 8192" OFF)
-
+
option(RFFT_Q15_32 "rfft q15 32" OFF)
option(RFFT_Q15_64 "rfft q15 64" OFF)
option(RFFT_Q15_128 "rfft q15 128" OFF)
@@ -126,17 +151,17 @@
option(RFFT_Q15_2048 "rfft q15 2048" OFF)
option(RFFT_Q15_4096 "rfft q15 4096" OFF)
option(RFFT_Q15_8192 "rfft q15 8192" OFF)
-
+
option(DCT4_F32_128 "dct4 f32 128" OFF)
option(DCT4_F32_512 "dct4 f32 512" OFF)
option(DCT4_F32_2048 "dct4 f32 2048" OFF)
option(DCT4_F32_8192 "dct4 f32 8192" OFF)
-
+
option(DCT4_Q31_128 "dct4 q31 128" OFF)
option(DCT4_Q31_512 "dct4 q31 512" OFF)
option(DCT4_Q31_2048 "dct4 q31 2048" OFF)
option(DCT4_Q31_8192 "dct4 q31 8192" OFF)
-
+
option(DCT4_Q15_128 "dct4 q15 128" OFF)
option(DCT4_Q15_512 "dct4 q15 512" OFF)
option(DCT4_Q15_2048 "dct4 q15 2048" OFF)
@@ -167,7 +192,7 @@
add_subdirectory(ControllerFunctions)
# Fast tables inclusion is allowed
if (CONFIGTABLE)
- target_compile_definitions(CMSISDSPController PUBLIC ARM_FAST_ALLOW_TABLES)
+ target_compile_definitions(CMSISDSPController PUBLIC ARM_FAST_ALLOW_TABLES)
endif()
target_link_libraries(CMSISDSP INTERFACE CMSISDSPController)
endif()
@@ -176,7 +201,7 @@
add_subdirectory(FastMathFunctions)
# Fast tables inclusion is allowed
if (CONFIGTABLE)
- target_compile_definitions(CMSISDSPFastMath PUBLIC ARM_FAST_ALLOW_TABLES)
+ target_compile_definitions(CMSISDSPFastMath PUBLIC ARM_FAST_ALLOW_TABLES)
endif()
target_link_libraries(CMSISDSP INTERFACE CMSISDSPFastMath)
endif()
@@ -186,7 +211,7 @@
# Fast tables inclusion is allowed
if (CONFIGTABLE)
target_compile_definitions(CMSISDSPFiltering PUBLIC ARM_FAST_ALLOW_TABLES)
- endif()
+ endif()
target_link_libraries(CMSISDSP INTERFACE CMSISDSPFiltering)
endif()
@@ -219,13 +244,13 @@
if (TRANSFORM)
# FFT tables inclusion is allowed
if (CONFIGTABLE)
- target_compile_definitions(CMSISDSPCommon PUBLIC ARM_FFT_ALLOW_TABLES)
+ target_compile_definitions(CMSISDSPCommon PUBLIC ARM_FFT_ALLOW_TABLES)
endif()
endif()
if (FILTERING OR CONTROLLER OR FASTMATH)
# Select which tables to include
if (CONFIGTABLE)
- target_compile_definitions(CMSISDSPCommon PUBLIC ARM_FAST_ALLOW_TABLES)
+ target_compile_definitions(CMSISDSPCommon PUBLIC ARM_FAST_ALLOW_TABLES)
endif()
endif()
target_link_libraries(CMSISDSP INTERFACE CMSISDSPCommon)
diff --git a/CMSIS/DSP/Source/CommonTables/arm_common_tables.c b/CMSIS/DSP/Source/CommonTables/arm_common_tables.c
index 9c9cccf..140e263 100644
--- a/CMSIS/DSP/Source/CommonTables/arm_common_tables.c
+++ b/CMSIS/DSP/Source/CommonTables/arm_common_tables.c
@@ -173,6 +173,8371 @@
0x5fe, 0x3fe, 0x7fe, 0x001
};
#endif
+
+/**
+ @brief Double Precision Floating-point Twiddle factors Table Generation
+*/
+
+#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || defined(ARM_TABLE_TWIDDLECOEF_F64_16)
+/**
+ @par
+ Example code for Double Precision Floating-point Twiddle factors Generation:
+ @par
+ <pre>for (i = 0; i < N/; i++)
+ {
+ twiddleCoef[2*i] = cos(i * 2*PI/(double)N);
+ twiddleCoef[2*i+1] = sin(i * 2*PI/(double)N);
+ } </pre>
+ @par
+ where N = 16, PI = 3.14159265358979
+ @par
+ Cos and Sin values are in interleaved fashion
+*/
+const uint64_t twiddleCoefF64_16[32] = {
+ 0x3ff0000000000000, 0x0000000000000000, // 1, 0'
+ 0x3fed906bcf328d46, 0x3fd87de2a6aea963, // 0.92388, 0.38268'
+ 0x3fe6a09e667f3bcc, 0x3fe6a09e667f3bcc, // 0.70711, 0.70711'
+ 0x3fd87de2a6aea963, 0x3fed906bcf328d46, // 0.38268, 0.92388'
+ 0x0000000000000000, 0x3ff0000000000000, // 0, 1'
+ 0xbfd87de2a6aea963, 0x3fed906bcf328d46, //-0.38268, 0.92388'
+ 0xbfe6a09e667f3bcc, 0x3fe6a09e667f3bcc, //-0.70711, 0.70711'
+ 0xbfed906bcf328d46, 0x3fd87de2a6aea963, //-0.92388, 0.38268'
+ 0xbff0000000000000, 0x0000000000000000, // -1, 0'
+ 0xbfed906bcf328d46, 0xbfd87de2a6aea963, //-0.92388,-0.38268'
+ 0xbfe6a09e667f3bcc, 0xbfe6a09e667f3bcc, //-0.70711,-0.70711'
+ 0xbfd87de2a6aea963, 0xbfed906bcf328d46, //-0.38268,-0.92388'
+ 0x0000000000000000, 0xbff0000000000000, // 0, -1'
+ 0x3fd87de2a6aea963, 0xbfed906bcf328d46, // 0.38268,-0.92388'
+ 0x3fe6a09e667f3bcc, 0xbfe6a09e667f3bcc, // 0.70711,-0.70711'
+ 0x3fed906bcf328d46, 0xbfd87de2a6aea963, // 0.92388,-0.38268'
+};
+
+#endif /* !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) */
+
+#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || defined(ARM_TABLE_TWIDDLECOEF_F64_32)
+
+/**
+ @par
+ Example code for Double Precision Floating-point Twiddle factors Generation:
+ @par
+ <pre>for (i = 0; i< N/; i++)
+ {
+ twiddleCoef[2*i] = cos(i * 2*PI/N);
+ twiddleCoef[2*i+1] = sin(i * 2*PI/N);
+ } </pre>
+ @par
+ where N = 32, PI = 3.14159265358979
+ @par
+ Cos and Sin values are in interleaved fashion
+*/
+const uint64_t twiddleCoefF64_32[64] = {
+ 0x3ff0000000000000, 0x0000000000000000, // 1, 0'
+ 0x3fef6297cff75cb0, 0x3fc8f8b83c69a60a, // 0.98079, 0.19509'
+ 0x3fed906bcf328d46, 0x3fd87de2a6aea963, // 0.92388, 0.38268'
+ 0x3fea9b66290ea1a3, 0x3fe1c73b39ae68c8, // 0.83147, 0.55557'
+ 0x3fe6a09e667f3bcc, 0x3fe6a09e667f3bcc, // 0.70711, 0.70711'
+ 0x3fe1c73b39ae68c8, 0x3fea9b66290ea1a3, // 0.55557, 0.83147'
+ 0x3fd87de2a6aea963, 0x3fed906bcf328d46, // 0.38268, 0.92388'
+ 0x3fc8f8b83c69a60a, 0x3fef6297cff75cb0, // 0.19509, 0.98079'
+ 0x0000000000000000, 0x3ff0000000000000, // 0, 1'
+ 0xbfc8f8b83c69a60a, 0x3fef6297cff75cb0, //-0.19509, 0.98079'
+ 0xbfd87de2a6aea963, 0x3fed906bcf328d46, //-0.38268, 0.92388'
+ 0xbfe1c73b39ae68c8, 0x3fea9b66290ea1a3, //-0.55557, 0.83147'
+ 0xbfe6a09e667f3bcc, 0x3fe6a09e667f3bcc, //-0.70711, 0.70711'
+ 0xbfea9b66290ea1a3, 0x3fe1c73b39ae68c8, //-0.83147, 0.55557'
+ 0xbfed906bcf328d46, 0x3fd87de2a6aea963, //-0.92388, 0.38268'
+ 0xbfef6297cff75cb0, 0x3fc8f8b83c69a60a, //-0.98079, 0.19509'
+ 0xbff0000000000000, 0x0000000000000000, // -1, 0'
+ 0xbfef6297cff75cb0, 0xbfc8f8b83c69a60a, //-0.98079,-0.19509'
+ 0xbfed906bcf328d46, 0xbfd87de2a6aea963, //-0.92388,-0.38268'
+ 0xbfea9b66290ea1a3, 0xbfe1c73b39ae68c8, //-0.83147,-0.55557'
+ 0xbfe6a09e667f3bcc, 0xbfe6a09e667f3bcc, //-0.70711,-0.70711'
+ 0xbfe1c73b39ae68c8, 0xbfea9b66290ea1a3, //-0.55557,-0.83147'
+ 0xbfd87de2a6aea963, 0xbfed906bcf328d46, //-0.38268,-0.92388'
+ 0xbfc8f8b83c69a60a, 0xbfef6297cff75cb0, //-0.19509,-0.98079'
+ 0x0000000000000000, 0xbff0000000000000, // 0, -1'
+ 0x3fc8f8b83c69a60a, 0xbfef6297cff75cb0, // 0.19509,-0.98079'
+ 0x3fd87de2a6aea963, 0xbfed906bcf328d46, // 0.38268,-0.92388'
+ 0x3fe1c73b39ae68c8, 0xbfea9b66290ea1a3, // 0.55557,-0.83147'
+ 0x3fe6a09e667f3bcc, 0xbfe6a09e667f3bcc, // 0.70711,-0.70711'
+ 0x3fea9b66290ea1a3, 0xbfe1c73b39ae68c8, // 0.83147,-0.55557'
+ 0x3fed906bcf328d46, 0xbfd87de2a6aea963, // 0.92388,-0.38268'
+ 0x3fef6297cff75cb0, 0xbfc8f8b83c69a60a, // 0.98079,-0.19509'
+};
+
+#endif /* !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) */
+
+#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || defined(ARM_TABLE_TWIDDLECOEF_F64_64)
+/**
+ @par
+ Example code for Double Precision Floating-point Twiddle factors Generation:
+ @par
+ <pre>for(i = 0; i < N/; i++)
+ {
+ twiddleCoef[2*i] = cos(i * 2*PI/(float)N);
+ twiddleCoef[2*i+1] = sin(i * 2*PI/(float)N);
+ } </pre>
+ @par
+ where N = 64, PI = 3.14159265358979
+ @par
+ Cos and Sin values are in interleaved fashion
+*/
+const uint64_t twiddleCoefF64_64[128] = {
+ 0x3ff0000000000000, 0x0000000000000000, // 1, 0'
+ 0x3fefd88da3d12526, 0x3fb917a6bc29b42c, // 0.99518, 0.098017'
+ 0x3fef6297cff75cb0, 0x3fc8f8b83c69a60a, // 0.98079, 0.19509'
+ 0x3fee9f4156c62dda, 0x3fd294062ed59f05, // 0.95694, 0.29028'
+ 0x3fed906bcf328d46, 0x3fd87de2a6aea963, // 0.92388, 0.38268'
+ 0x3fec38b2f180bdb1, 0x3fde2b5d3806f63b, // 0.88192, 0.4714'
+ 0x3fea9b66290ea1a3, 0x3fe1c73b39ae68c8, // 0.83147, 0.55557'
+ 0x3fe8bc806b151741, 0x3fe44cf325091dd6, // 0.77301, 0.63439'
+ 0x3fe6a09e667f3bcc, 0x3fe6a09e667f3bcc, // 0.70711, 0.70711'
+ 0x3fe44cf325091dd6, 0x3fe8bc806b151741, // 0.63439, 0.77301'
+ 0x3fe1c73b39ae68c8, 0x3fea9b66290ea1a3, // 0.55557, 0.83147'
+ 0x3fde2b5d3806f63b, 0x3fec38b2f180bdb1, // 0.4714, 0.88192'
+ 0x3fd87de2a6aea963, 0x3fed906bcf328d46, // 0.38268, 0.92388'
+ 0x3fd294062ed59f05, 0x3fee9f4156c62dda, // 0.29028, 0.95694'
+ 0x3fc8f8b83c69a60a, 0x3fef6297cff75cb0, // 0.19509, 0.98079'
+ 0x3fb917a6bc29b42c, 0x3fefd88da3d12526, // 0.098017, 0.99518'
+ 0x0000000000000000, 0x3ff0000000000000, // 0, 1'
+ 0xbfb917a6bc29b42c, 0x3fefd88da3d12526, //-0.098017, 0.99518'
+ 0xbfc8f8b83c69a60a, 0x3fef6297cff75cb0, // -0.19509, 0.98079'
+ 0xbfd294062ed59f05, 0x3fee9f4156c62dda, // -0.29028, 0.95694'
+ 0xbfd87de2a6aea963, 0x3fed906bcf328d46, // -0.38268, 0.92388'
+ 0xbfde2b5d3806f63b, 0x3fec38b2f180bdb1, // -0.4714, 0.88192'
+ 0xbfe1c73b39ae68c8, 0x3fea9b66290ea1a3, // -0.55557, 0.83147'
+ 0xbfe44cf325091dd6, 0x3fe8bc806b151741, // -0.63439, 0.77301'
+ 0xbfe6a09e667f3bcc, 0x3fe6a09e667f3bcc, // -0.70711, 0.70711'
+ 0xbfe8bc806b151741, 0x3fe44cf325091dd6, // -0.77301, 0.63439'
+ 0xbfea9b66290ea1a3, 0x3fe1c73b39ae68c8, // -0.83147, 0.55557'
+ 0xbfec38b2f180bdb1, 0x3fde2b5d3806f63b, // -0.88192, 0.4714'
+ 0xbfed906bcf328d46, 0x3fd87de2a6aea963, // -0.92388, 0.38268'
+ 0xbfee9f4156c62dda, 0x3fd294062ed59f05, // -0.95694, 0.29028'
+ 0xbfef6297cff75cb0, 0x3fc8f8b83c69a60a, // -0.98079, 0.19509'
+ 0xbfefd88da3d12526, 0x3fb917a6bc29b42c, // -0.99518, 0.098017'
+ 0xbff0000000000000, 0x0000000000000000, // -1, 0'
+ 0xbfefd88da3d12526, 0xbfb917a6bc29b42c, // -0.99518,-0.098017'
+ 0xbfef6297cff75cb0, 0xbfc8f8b83c69a60a, // -0.98079, -0.19509'
+ 0xbfee9f4156c62dda, 0xbfd294062ed59f05, // -0.95694, -0.29028'
+ 0xbfed906bcf328d46, 0xbfd87de2a6aea963, // -0.92388, -0.38268'
+ 0xbfec38b2f180bdb1, 0xbfde2b5d3806f63b, // -0.88192, -0.4714'
+ 0xbfea9b66290ea1a3, 0xbfe1c73b39ae68c8, // -0.83147, -0.55557'
+ 0xbfe8bc806b151741, 0xbfe44cf325091dd6, // -0.77301, -0.63439'
+ 0xbfe6a09e667f3bcc, 0xbfe6a09e667f3bcc, // -0.70711, -0.70711'
+ 0xbfe44cf325091dd6, 0xbfe8bc806b151741, // -0.63439, -0.77301'
+ 0xbfe1c73b39ae68c8, 0xbfea9b66290ea1a3, // -0.55557, -0.83147'
+ 0xbfde2b5d3806f63b, 0xbfec38b2f180bdb1, // -0.4714, -0.88192'
+ 0xbfd87de2a6aea963, 0xbfed906bcf328d46, // -0.38268, -0.92388'
+ 0xbfd294062ed59f05, 0xbfee9f4156c62dda, // -0.29028, -0.95694'
+ 0xbfc8f8b83c69a60a, 0xbfef6297cff75cb0, // -0.19509, -0.98079'
+ 0xbfb917a6bc29b42c, 0xbfefd88da3d12526, //-0.098017, -0.99518'
+ 0x0000000000000000, 0xbff0000000000000, // 0, -1'
+ 0x3fb917a6bc29b42c, 0xbfefd88da3d12526, // 0.098017, -0.99518'
+ 0x3fc8f8b83c69a60a, 0xbfef6297cff75cb0, // 0.19509, -0.98079'
+ 0x3fd294062ed59f05, 0xbfee9f4156c62dda, // 0.29028, -0.95694'
+ 0x3fd87de2a6aea963, 0xbfed906bcf328d46, // 0.38268, -0.92388'
+ 0x3fde2b5d3806f63b, 0xbfec38b2f180bdb1, // 0.4714, -0.88192'
+ 0x3fe1c73b39ae68c8, 0xbfea9b66290ea1a3, // 0.55557, -0.83147'
+ 0x3fe44cf325091dd6, 0xbfe8bc806b151741, // 0.63439, -0.77301'
+ 0x3fe6a09e667f3bcc, 0xbfe6a09e667f3bcc, // 0.70711, -0.70711'
+ 0x3fe8bc806b151741, 0xbfe44cf325091dd6, // 0.77301, -0.63439'
+ 0x3fea9b66290ea1a3, 0xbfe1c73b39ae68c8, // 0.83147, -0.55557'
+ 0x3fec38b2f180bdb1, 0xbfde2b5d3806f63b, // 0.88192, -0.4714'
+ 0x3fed906bcf328d46, 0xbfd87de2a6aea963, // 0.92388, -0.38268'
+ 0x3fee9f4156c62dda, 0xbfd294062ed59f05, // 0.95694, -0.29028'
+ 0x3fef6297cff75cb0, 0xbfc8f8b83c69a60a, // 0.98079, -0.19509'
+ 0x3fefd88da3d12526, 0xbfb917a6bc29b42c, // 0.99518,-0.098017'
+ };
+
+#endif /* !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) */
+
+#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || defined(ARM_TABLE_TWIDDLECOEF_F64_128)
+/**
+ @par
+ Example code for Double Precision Floating-point Twiddle factors Generation:
+ @par
+ <pre>for (i = 0; i< N/; i++)
+ {
+ twiddleCoef[2*i] = cos(i * 2*PI/(float)N);
+ twiddleCoef[2*i+1] = sin(i * 2*PI/(float)N);
+ } </pre>
+ @par
+ where N = 128, PI = 3.14159265358979
+ @par
+ Cos and Sin values are in interleaved fashion
+*/
+const uint64_t twiddleCoefF64_128[256] = {
+ 0x3ff0000000000000, 0x0000000000000000, // 1, 0'
+ 0x3feff621e3796d7e, 0x3fa91f65f10dd814, // 0.9988, 0.049068'
+ 0x3fefd88da3d12526, 0x3fb917a6bc29b42c, // 0.99518, 0.098017'
+ 0x3fefa7557f08a517, 0x3fc2c8106e8e613a, // 0.98918, 0.14673'
+ 0x3fef6297cff75cb0, 0x3fc8f8b83c69a60a, // 0.98079, 0.19509'
+ 0x3fef0a7efb9230d7, 0x3fcf19f97b215f1a, // 0.97003, 0.24298'
+ 0x3fee9f4156c62dda, 0x3fd294062ed59f05, // 0.95694, 0.29028'
+ 0x3fee212104f686e5, 0x3fd58f9a75ab1fdd, // 0.94154, 0.33689'
+ 0x3fed906bcf328d46, 0x3fd87de2a6aea963, // 0.92388, 0.38268'
+ 0x3feced7af43cc773, 0x3fdb5d1009e15cc0, // 0.90399, 0.42756'
+ 0x3fec38b2f180bdb1, 0x3fde2b5d3806f63b, // 0.88192, 0.4714'
+ 0x3feb728345196e3e, 0x3fe073879922ffed, // 0.85773, 0.5141'
+ 0x3fea9b66290ea1a3, 0x3fe1c73b39ae68c8, // 0.83147, 0.55557'
+ 0x3fe9b3e047f38741, 0x3fe30ff7fce17035, // 0.80321, 0.5957'
+ 0x3fe8bc806b151741, 0x3fe44cf325091dd6, // 0.77301, 0.63439'
+ 0x3fe7b5df226aafb0, 0x3fe57d69348cec9f, // 0.74095, 0.67156'
+ 0x3fe6a09e667f3bcc, 0x3fe6a09e667f3bcc, // 0.70711, 0.70711'
+ 0x3fe57d69348cec9f, 0x3fe7b5df226aafb0, // 0.67156, 0.74095'
+ 0x3fe44cf325091dd6, 0x3fe8bc806b151741, // 0.63439, 0.77301'
+ 0x3fe30ff7fce17035, 0x3fe9b3e047f38741, // 0.5957, 0.80321'
+ 0x3fe1c73b39ae68c8, 0x3fea9b66290ea1a3, // 0.55557, 0.83147'
+ 0x3fe073879922ffed, 0x3feb728345196e3e, // 0.5141, 0.85773'
+ 0x3fde2b5d3806f63b, 0x3fec38b2f180bdb1, // 0.4714, 0.88192'
+ 0x3fdb5d1009e15cc0, 0x3feced7af43cc773, // 0.42756, 0.90399'
+ 0x3fd87de2a6aea963, 0x3fed906bcf328d46, // 0.38268, 0.92388'
+ 0x3fd58f9a75ab1fdd, 0x3fee212104f686e5, // 0.33689, 0.94154'
+ 0x3fd294062ed59f05, 0x3fee9f4156c62dda, // 0.29028, 0.95694'
+ 0x3fcf19f97b215f1a, 0x3fef0a7efb9230d7, // 0.24298, 0.97003'
+ 0x3fc8f8b83c69a60a, 0x3fef6297cff75cb0, // 0.19509, 0.98079'
+ 0x3fc2c8106e8e613a, 0x3fefa7557f08a517, // 0.14673, 0.98918'
+ 0x3fb917a6bc29b42c, 0x3fefd88da3d12526, // 0.098017, 0.99518'
+ 0x3fa91f65f10dd814, 0x3feff621e3796d7e, // 0.049068, 0.9988'
+ 0x0000000000000000, 0x3ff0000000000000, // 0, 1'
+ 0xbfa91f65f10dd814, 0x3feff621e3796d7e, //-0.049068, 0.9988'
+ 0xbfb917a6bc29b42c, 0x3fefd88da3d12526, //-0.098017, 0.99518'
+ 0xbfc2c8106e8e613a, 0x3fefa7557f08a517, // -0.14673, 0.98918'
+ 0xbfc8f8b83c69a60a, 0x3fef6297cff75cb0, // -0.19509, 0.98079'
+ 0xbfcf19f97b215f1a, 0x3fef0a7efb9230d7, // -0.24298, 0.97003'
+ 0xbfd294062ed59f05, 0x3fee9f4156c62dda, // -0.29028, 0.95694'
+ 0xbfd58f9a75ab1fdd, 0x3fee212104f686e5, // -0.33689, 0.94154'
+ 0xbfd87de2a6aea963, 0x3fed906bcf328d46, // -0.38268, 0.92388'
+ 0xbfdb5d1009e15cc0, 0x3feced7af43cc773, // -0.42756, 0.90399'
+ 0xbfde2b5d3806f63b, 0x3fec38b2f180bdb1, // -0.4714, 0.88192'
+ 0xbfe073879922ffed, 0x3feb728345196e3e, // -0.5141, 0.85773'
+ 0xbfe1c73b39ae68c8, 0x3fea9b66290ea1a3, // -0.55557, 0.83147'
+ 0xbfe30ff7fce17035, 0x3fe9b3e047f38741, // -0.5957, 0.80321'
+ 0xbfe44cf325091dd6, 0x3fe8bc806b151741, // -0.63439, 0.77301'
+ 0xbfe57d69348cec9f, 0x3fe7b5df226aafb0, // -0.67156, 0.74095'
+ 0xbfe6a09e667f3bcc, 0x3fe6a09e667f3bcc, // -0.70711, 0.70711'
+ 0xbfe7b5df226aafb0, 0x3fe57d69348cec9f, // -0.74095, 0.67156'
+ 0xbfe8bc806b151741, 0x3fe44cf325091dd6, // -0.77301, 0.63439'
+ 0xbfe9b3e047f38741, 0x3fe30ff7fce17035, // -0.80321, 0.5957'
+ 0xbfea9b66290ea1a3, 0x3fe1c73b39ae68c8, // -0.83147, 0.55557'
+ 0xbfeb728345196e3e, 0x3fe073879922ffed, // -0.85773, 0.5141'
+ 0xbfec38b2f180bdb1, 0x3fde2b5d3806f63b, // -0.88192, 0.4714'
+ 0xbfeced7af43cc773, 0x3fdb5d1009e15cc0, // -0.90399, 0.42756'
+ 0xbfed906bcf328d46, 0x3fd87de2a6aea963, // -0.92388, 0.38268'
+ 0xbfee212104f686e5, 0x3fd58f9a75ab1fdd, // -0.94154, 0.33689'
+ 0xbfee9f4156c62dda, 0x3fd294062ed59f05, // -0.95694, 0.29028'
+ 0xbfef0a7efb9230d7, 0x3fcf19f97b215f1a, // -0.97003, 0.24298'
+ 0xbfef6297cff75cb0, 0x3fc8f8b83c69a60a, // -0.98079, 0.19509'
+ 0xbfefa7557f08a517, 0x3fc2c8106e8e613a, // -0.98918, 0.14673'
+ 0xbfefd88da3d12526, 0x3fb917a6bc29b42c, // -0.99518, 0.098017'
+ 0xbfeff621e3796d7e, 0x3fa91f65f10dd814, // -0.9988, 0.049068'
+ 0xbff0000000000000, 0x0000000000000000, // -1, 0'
+ 0xbfeff621e3796d7e, 0xbfa91f65f10dd814, // -0.9988,-0.049068'
+ 0xbfefd88da3d12526, 0xbfb917a6bc29b42c, // -0.99518,-0.098017'
+ 0xbfefa7557f08a517, 0xbfc2c8106e8e613a, // -0.98918, -0.14673'
+ 0xbfef6297cff75cb0, 0xbfc8f8b83c69a60a, // -0.98079, -0.19509'
+ 0xbfef0a7efb9230d7, 0xbfcf19f97b215f1a, // -0.97003, -0.24298'
+ 0xbfee9f4156c62dda, 0xbfd294062ed59f05, // -0.95694, -0.29028'
+ 0xbfee212104f686e5, 0xbfd58f9a75ab1fdd, // -0.94154, -0.33689'
+ 0xbfed906bcf328d46, 0xbfd87de2a6aea963, // -0.92388, -0.38268'
+ 0xbfeced7af43cc773, 0xbfdb5d1009e15cc0, // -0.90399, -0.42756'
+ 0xbfec38b2f180bdb1, 0xbfde2b5d3806f63b, // -0.88192, -0.4714'
+ 0xbfeb728345196e3e, 0xbfe073879922ffed, // -0.85773, -0.5141'
+ 0xbfea9b66290ea1a3, 0xbfe1c73b39ae68c8, // -0.83147, -0.55557'
+ 0xbfe9b3e047f38741, 0xbfe30ff7fce17035, // -0.80321, -0.5957'
+ 0xbfe8bc806b151741, 0xbfe44cf325091dd6, // -0.77301, -0.63439'
+ 0xbfe7b5df226aafb0, 0xbfe57d69348cec9f, // -0.74095, -0.67156'
+ 0xbfe6a09e667f3bcc, 0xbfe6a09e667f3bcc, // -0.70711, -0.70711'
+ 0xbfe57d69348cec9f, 0xbfe7b5df226aafb0, // -0.67156, -0.74095'
+ 0xbfe44cf325091dd6, 0xbfe8bc806b151741, // -0.63439, -0.77301'
+ 0xbfe30ff7fce17035, 0xbfe9b3e047f38741, // -0.5957, -0.80321'
+ 0xbfe1c73b39ae68c8, 0xbfea9b66290ea1a3, // -0.55557, -0.83147'
+ 0xbfe073879922ffed, 0xbfeb728345196e3e, // -0.5141, -0.85773'
+ 0xbfde2b5d3806f63b, 0xbfec38b2f180bdb1, // -0.4714, -0.88192'
+ 0xbfdb5d1009e15cc0, 0xbfeced7af43cc773, // -0.42756, -0.90399'
+ 0xbfd87de2a6aea963, 0xbfed906bcf328d46, // -0.38268, -0.92388'
+ 0xbfd58f9a75ab1fdd, 0xbfee212104f686e5, // -0.33689, -0.94154'
+ 0xbfd294062ed59f05, 0xbfee9f4156c62dda, // -0.29028, -0.95694'
+ 0xbfcf19f97b215f1a, 0xbfef0a7efb9230d7, // -0.24298, -0.97003'
+ 0xbfc8f8b83c69a60a, 0xbfef6297cff75cb0, // -0.19509, -0.98079'
+ 0xbfc2c8106e8e613a, 0xbfefa7557f08a517, // -0.14673, -0.98918'
+ 0xbfb917a6bc29b42c, 0xbfefd88da3d12526, //-0.098017, -0.99518'
+ 0xbfa91f65f10dd814, 0xbfeff621e3796d7e, //-0.049068, -0.9988'
+ 0x0000000000000000, 0xbff0000000000000, // 0, -1'
+ 0x3fa91f65f10dd814, 0xbfeff621e3796d7e, // 0.049068, -0.9988'
+ 0x3fb917a6bc29b42c, 0xbfefd88da3d12526, // 0.098017, -0.99518'
+ 0x3fc2c8106e8e613a, 0xbfefa7557f08a517, // 0.14673, -0.98918'
+ 0x3fc8f8b83c69a60a, 0xbfef6297cff75cb0, // 0.19509, -0.98079'
+ 0x3fcf19f97b215f1a, 0xbfef0a7efb9230d7, // 0.24298, -0.97003'
+ 0x3fd294062ed59f05, 0xbfee9f4156c62dda, // 0.29028, -0.95694'
+ 0x3fd58f9a75ab1fdd, 0xbfee212104f686e5, // 0.33689, -0.94154'
+ 0x3fd87de2a6aea963, 0xbfed906bcf328d46, // 0.38268, -0.92388'
+ 0x3fdb5d1009e15cc0, 0xbfeced7af43cc773, // 0.42756, -0.90399'
+ 0x3fde2b5d3806f63b, 0xbfec38b2f180bdb1, // 0.4714, -0.88192'
+ 0x3fe073879922ffed, 0xbfeb728345196e3e, // 0.5141, -0.85773'
+ 0x3fe1c73b39ae68c8, 0xbfea9b66290ea1a3, // 0.55557, -0.83147'
+ 0x3fe30ff7fce17035, 0xbfe9b3e047f38741, // 0.5957, -0.80321'
+ 0x3fe44cf325091dd6, 0xbfe8bc806b151741, // 0.63439, -0.77301'
+ 0x3fe57d69348cec9f, 0xbfe7b5df226aafb0, // 0.67156, -0.74095'
+ 0x3fe6a09e667f3bcc, 0xbfe6a09e667f3bcc, // 0.70711, -0.70711'
+ 0x3fe7b5df226aafb0, 0xbfe57d69348cec9f, // 0.74095, -0.67156'
+ 0x3fe8bc806b151741, 0xbfe44cf325091dd6, // 0.77301, -0.63439'
+ 0x3fe9b3e047f38741, 0xbfe30ff7fce17035, // 0.80321, -0.5957'
+ 0x3fea9b66290ea1a3, 0xbfe1c73b39ae68c8, // 0.83147, -0.55557'
+ 0x3feb728345196e3e, 0xbfe073879922ffed, // 0.85773, -0.5141'
+ 0x3fec38b2f180bdb1, 0xbfde2b5d3806f63b, // 0.88192, -0.4714'
+ 0x3feced7af43cc773, 0xbfdb5d1009e15cc0, // 0.90399, -0.42756'
+ 0x3fed906bcf328d46, 0xbfd87de2a6aea963, // 0.92388, -0.38268'
+ 0x3fee212104f686e5, 0xbfd58f9a75ab1fdd, // 0.94154, -0.33689'
+ 0x3fee9f4156c62dda, 0xbfd294062ed59f05, // 0.95694, -0.29028'
+ 0x3fef0a7efb9230d7, 0xbfcf19f97b215f1a, // 0.97003, -0.24298'
+ 0x3fef6297cff75cb0, 0xbfc8f8b83c69a60a, // 0.98079, -0.19509'
+ 0x3fefa7557f08a517, 0xbfc2c8106e8e613a, // 0.98918, -0.14673'
+ 0x3fefd88da3d12526, 0xbfb917a6bc29b42c, // 0.99518,-0.098017'
+ 0x3feff621e3796d7e, 0xbfa91f65f10dd814, // 0.9988,-0.049068'
+};
+
+#endif /* !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) */
+
+#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || defined(ARM_TABLE_TWIDDLECOEF_F64_256)
+/**
+ @par
+ Example code for Double Precision Floating-point Twiddle factors Generation:
+ @par
+ <pre>for(i = 0; i< N/; i++)
+ {
+ twiddleCoef[2*i] = cos(i * 2*PI/(float)N);
+ twiddleCoef[2*i+1] = sin(i * 2*PI/(float)N);
+ } </pre>
+ @par
+ where N = 256, PI = 3.14159265358979
+ @par
+ Cos and Sin values are in interleaved fashion
+*/
+const uint64_t twiddleCoefF64_256[512] = {
+ 0x3ff0000000000000, 0x0000000000000000, // 1, 0
+ 0x3feffd886084cd0d, 0x3f992155f7a3667e, // 0.9997, 0.024541
+ 0x3feff621e3796d7e, 0x3fa91f65f10dd814, // 0.9988, 0.049068
+ 0x3fefe9cdad01883a, 0x3fb2d52092ce19f6, // 0.99729, 0.073565
+ 0x3fefd88da3d12526, 0x3fb917a6bc29b42c, // 0.99518, 0.098017
+ 0x3fefc26470e19fd3, 0x3fbf564e56a9730e, // 0.99248, 0.12241
+ 0x3fefa7557f08a517, 0x3fc2c8106e8e613a, // 0.98918, 0.14673
+ 0x3fef8764fa714ba9, 0x3fc5e214448b3fc6, // 0.98528, 0.17096
+ 0x3fef6297cff75cb0, 0x3fc8f8b83c69a60a, // 0.98079, 0.19509
+ 0x3fef38f3ac64e589, 0x3fcc0b826a7e4f63, // 0.9757, 0.2191
+ 0x3fef0a7efb9230d7, 0x3fcf19f97b215f1a, // 0.97003, 0.24298
+ 0x3feed740e7684963, 0x3fd111d262b1f677, // 0.96378, 0.26671
+ 0x3fee9f4156c62dda, 0x3fd294062ed59f05, // 0.95694, 0.29028
+ 0x3fee6288ec48e112, 0x3fd4135c94176602, // 0.94953, 0.31368
+ 0x3fee212104f686e5, 0x3fd58f9a75ab1fdd, // 0.94154, 0.33689
+ 0x3feddb13b6ccc23d, 0x3fd7088530fa459e, // 0.93299, 0.3599
+ 0x3fed906bcf328d46, 0x3fd87de2a6aea963, // 0.92388, 0.38268
+ 0x3fed4134d14dc93a, 0x3fd9ef7943a8ed8a, // 0.91421, 0.40524
+ 0x3feced7af43cc773, 0x3fdb5d1009e15cc0, // 0.90399, 0.42756
+ 0x3fec954b213411f5, 0x3fdcc66e9931c45d, // 0.89322, 0.44961
+ 0x3fec38b2f180bdb1, 0x3fde2b5d3806f63b, // 0.88192, 0.4714
+ 0x3febd7c0ac6f952a, 0x3fdf8ba4dbf89aba, // 0.87009, 0.4929
+ 0x3feb728345196e3e, 0x3fe073879922ffed, // 0.85773, 0.5141
+ 0x3feb090a58150200, 0x3fe11eb3541b4b22, // 0.84485, 0.535
+ 0x3fea9b66290ea1a3, 0x3fe1c73b39ae68c8, // 0.83147, 0.55557
+ 0x3fea29a7a0462782, 0x3fe26d054cdd12df, // 0.81758, 0.57581
+ 0x3fe9b3e047f38741, 0x3fe30ff7fce17035, // 0.80321, 0.5957
+ 0x3fe93a22499263fc, 0x3fe3affa292050b9, // 0.78835, 0.61523
+ 0x3fe8bc806b151741, 0x3fe44cf325091dd6, // 0.77301, 0.63439
+ 0x3fe83b0e0bff976e, 0x3fe4e6cabbe3e5e9, // 0.75721, 0.65317
+ 0x3fe7b5df226aafb0, 0x3fe57d69348cec9f, // 0.74095, 0.67156
+ 0x3fe72d0837efff97, 0x3fe610b7551d2cde, // 0.72425, 0.68954
+ 0x3fe6a09e667f3bcc, 0x3fe6a09e667f3bcc, // 0.70711, 0.70711
+ 0x3fe610b7551d2cde, 0x3fe72d0837efff97, // 0.68954, 0.72425
+ 0x3fe57d69348cec9f, 0x3fe7b5df226aafb0, // 0.67156, 0.74095
+ 0x3fe4e6cabbe3e5e9, 0x3fe83b0e0bff976e, // 0.65317, 0.75721
+ 0x3fe44cf325091dd6, 0x3fe8bc806b151741, // 0.63439, 0.77301
+ 0x3fe3affa292050b9, 0x3fe93a22499263fc, // 0.61523, 0.78835
+ 0x3fe30ff7fce17035, 0x3fe9b3e047f38741, // 0.5957, 0.80321
+ 0x3fe26d054cdd12df, 0x3fea29a7a0462782, // 0.57581, 0.81758
+ 0x3fe1c73b39ae68c8, 0x3fea9b66290ea1a3, // 0.55557, 0.83147
+ 0x3fe11eb3541b4b22, 0x3feb090a58150200, // 0.535, 0.84485
+ 0x3fe073879922ffed, 0x3feb728345196e3e, // 0.5141, 0.85773
+ 0x3fdf8ba4dbf89aba, 0x3febd7c0ac6f952a, // 0.4929, 0.87009
+ 0x3fde2b5d3806f63b, 0x3fec38b2f180bdb1, // 0.4714, 0.88192
+ 0x3fdcc66e9931c45d, 0x3fec954b213411f5, // 0.44961, 0.89322
+ 0x3fdb5d1009e15cc0, 0x3feced7af43cc773, // 0.42756, 0.90399
+ 0x3fd9ef7943a8ed8a, 0x3fed4134d14dc93a, // 0.40524, 0.91421
+ 0x3fd87de2a6aea963, 0x3fed906bcf328d46, // 0.38268, 0.92388
+ 0x3fd7088530fa459e, 0x3feddb13b6ccc23d, // 0.3599, 0.93299
+ 0x3fd58f9a75ab1fdd, 0x3fee212104f686e5, // 0.33689, 0.94154
+ 0x3fd4135c94176602, 0x3fee6288ec48e112, // 0.31368, 0.94953
+ 0x3fd294062ed59f05, 0x3fee9f4156c62dda, // 0.29028, 0.95694
+ 0x3fd111d262b1f677, 0x3feed740e7684963, // 0.26671, 0.96378
+ 0x3fcf19f97b215f1a, 0x3fef0a7efb9230d7, // 0.24298, 0.97003
+ 0x3fcc0b826a7e4f63, 0x3fef38f3ac64e589, // 0.2191, 0.9757
+ 0x3fc8f8b83c69a60a, 0x3fef6297cff75cb0, // 0.19509, 0.98079
+ 0x3fc5e214448b3fc6, 0x3fef8764fa714ba9, // 0.17096, 0.98528
+ 0x3fc2c8106e8e613a, 0x3fefa7557f08a517, // 0.14673, 0.98918
+ 0x3fbf564e56a9730e, 0x3fefc26470e19fd3, // 0.12241, 0.99248
+ 0x3fb917a6bc29b42c, 0x3fefd88da3d12526, // 0.098017, 0.99518
+ 0x3fb2d52092ce19f6, 0x3fefe9cdad01883a, // 0.073565, 0.99729
+ 0x3fa91f65f10dd814, 0x3feff621e3796d7e, // 0.049068, 0.9988
+ 0x3f992155f7a3667e, 0x3feffd886084cd0d, // 0.024541, 0.9997
+ 0x0000000000000000, 0x3ff0000000000000, // 0, 1
+ 0xbf992155f7a3667e, 0x3feffd886084cd0d, //-0.024541, 0.9997
+ 0xbfa91f65f10dd814, 0x3feff621e3796d7e, //-0.049068, 0.9988
+ 0xbfb2d52092ce19f6, 0x3fefe9cdad01883a, //-0.073565, 0.99729
+ 0xbfb917a6bc29b42c, 0x3fefd88da3d12526, //-0.098017, 0.99518
+ 0xbfbf564e56a9730e, 0x3fefc26470e19fd3, // -0.12241, 0.99248
+ 0xbfc2c8106e8e613a, 0x3fefa7557f08a517, // -0.14673, 0.98918
+ 0xbfc5e214448b3fc6, 0x3fef8764fa714ba9, // -0.17096, 0.98528
+ 0xbfc8f8b83c69a60a, 0x3fef6297cff75cb0, // -0.19509, 0.98079
+ 0xbfcc0b826a7e4f63, 0x3fef38f3ac64e589, // -0.2191, 0.9757
+ 0xbfcf19f97b215f1a, 0x3fef0a7efb9230d7, // -0.24298, 0.97003
+ 0xbfd111d262b1f677, 0x3feed740e7684963, // -0.26671, 0.96378
+ 0xbfd294062ed59f05, 0x3fee9f4156c62dda, // -0.29028, 0.95694
+ 0xbfd4135c94176602, 0x3fee6288ec48e112, // -0.31368, 0.94953
+ 0xbfd58f9a75ab1fdd, 0x3fee212104f686e5, // -0.33689, 0.94154
+ 0xbfd7088530fa459e, 0x3feddb13b6ccc23d, // -0.3599, 0.93299
+ 0xbfd87de2a6aea963, 0x3fed906bcf328d46, // -0.38268, 0.92388
+ 0xbfd9ef7943a8ed8a, 0x3fed4134d14dc93a, // -0.40524, 0.91421
+ 0xbfdb5d1009e15cc0, 0x3feced7af43cc773, // -0.42756, 0.90399
+ 0xbfdcc66e9931c45d, 0x3fec954b213411f5, // -0.44961, 0.89322
+ 0xbfde2b5d3806f63b, 0x3fec38b2f180bdb1, // -0.4714, 0.88192
+ 0xbfdf8ba4dbf89aba, 0x3febd7c0ac6f952a, // -0.4929, 0.87009
+ 0xbfe073879922ffed, 0x3feb728345196e3e, // -0.5141, 0.85773
+ 0xbfe11eb3541b4b22, 0x3feb090a58150200, // -0.535, 0.84485
+ 0xbfe1c73b39ae68c8, 0x3fea9b66290ea1a3, // -0.55557, 0.83147
+ 0xbfe26d054cdd12df, 0x3fea29a7a0462782, // -0.57581, 0.81758
+ 0xbfe30ff7fce17035, 0x3fe9b3e047f38741, // -0.5957, 0.80321
+ 0xbfe3affa292050b9, 0x3fe93a22499263fc, // -0.61523, 0.78835
+ 0xbfe44cf325091dd6, 0x3fe8bc806b151741, // -0.63439, 0.77301
+ 0xbfe4e6cabbe3e5e9, 0x3fe83b0e0bff976e, // -0.65317, 0.75721
+ 0xbfe57d69348cec9f, 0x3fe7b5df226aafb0, // -0.67156, 0.74095
+ 0xbfe610b7551d2cde, 0x3fe72d0837efff97, // -0.68954, 0.72425
+ 0xbfe6a09e667f3bcc, 0x3fe6a09e667f3bcc, // -0.70711, 0.70711
+ 0xbfe72d0837efff97, 0x3fe610b7551d2cde, // -0.72425, 0.68954
+ 0xbfe7b5df226aafb0, 0x3fe57d69348cec9f, // -0.74095, 0.67156
+ 0xbfe83b0e0bff976e, 0x3fe4e6cabbe3e5e9, // -0.75721, 0.65317
+ 0xbfe8bc806b151741, 0x3fe44cf325091dd6, // -0.77301, 0.63439
+ 0xbfe93a22499263fc, 0x3fe3affa292050b9, // -0.78835, 0.61523
+ 0xbfe9b3e047f38741, 0x3fe30ff7fce17035, // -0.80321, 0.5957
+ 0xbfea29a7a0462782, 0x3fe26d054cdd12df, // -0.81758, 0.57581
+ 0xbfea9b66290ea1a3, 0x3fe1c73b39ae68c8, // -0.83147, 0.55557
+ 0xbfeb090a58150200, 0x3fe11eb3541b4b22, // -0.84485, 0.535
+ 0xbfeb728345196e3e, 0x3fe073879922ffed, // -0.85773, 0.5141
+ 0xbfebd7c0ac6f952a, 0x3fdf8ba4dbf89aba, // -0.87009, 0.4929
+ 0xbfec38b2f180bdb1, 0x3fde2b5d3806f63b, // -0.88192, 0.4714
+ 0xbfec954b213411f5, 0x3fdcc66e9931c45d, // -0.89322, 0.44961
+ 0xbfeced7af43cc773, 0x3fdb5d1009e15cc0, // -0.90399, 0.42756
+ 0xbfed4134d14dc93a, 0x3fd9ef7943a8ed8a, // -0.91421, 0.40524
+ 0xbfed906bcf328d46, 0x3fd87de2a6aea963, // -0.92388, 0.38268
+ 0xbfeddb13b6ccc23d, 0x3fd7088530fa459e, // -0.93299, 0.3599
+ 0xbfee212104f686e5, 0x3fd58f9a75ab1fdd, // -0.94154, 0.33689
+ 0xbfee6288ec48e112, 0x3fd4135c94176602, // -0.94953, 0.31368
+ 0xbfee9f4156c62dda, 0x3fd294062ed59f05, // -0.95694, 0.29028
+ 0xbfeed740e7684963, 0x3fd111d262b1f677, // -0.96378, 0.26671
+ 0xbfef0a7efb9230d7, 0x3fcf19f97b215f1a, // -0.97003, 0.24298
+ 0xbfef38f3ac64e589, 0x3fcc0b826a7e4f63, // -0.9757, 0.2191
+ 0xbfef6297cff75cb0, 0x3fc8f8b83c69a60a, // -0.98079, 0.19509
+ 0xbfef8764fa714ba9, 0x3fc5e214448b3fc6, // -0.98528, 0.17096
+ 0xbfefa7557f08a517, 0x3fc2c8106e8e613a, // -0.98918, 0.14673
+ 0xbfefc26470e19fd3, 0x3fbf564e56a9730e, // -0.99248, 0.12241
+ 0xbfefd88da3d12526, 0x3fb917a6bc29b42c, // -0.99518, 0.098017
+ 0xbfefe9cdad01883a, 0x3fb2d52092ce19f6, // -0.99729, 0.073565
+ 0xbfeff621e3796d7e, 0x3fa91f65f10dd814, // -0.9988, 0.049068
+ 0xbfeffd886084cd0d, 0x3f992155f7a3667e, // -0.9997, 0.024541
+ 0xbff0000000000000, 0x0000000000000000, // -1, 0
+ 0xbfeffd886084cd0d, 0xbf992155f7a3667e, // -0.9997,-0.024541
+ 0xbfeff621e3796d7e, 0xbfa91f65f10dd814, // -0.9988,-0.049068
+ 0xbfefe9cdad01883a, 0xbfb2d52092ce19f6, // -0.99729,-0.073565
+ 0xbfefd88da3d12526, 0xbfb917a6bc29b42c, // -0.99518,-0.098017
+ 0xbfefc26470e19fd3, 0xbfbf564e56a9730e, // -0.99248, -0.12241
+ 0xbfefa7557f08a517, 0xbfc2c8106e8e613a, // -0.98918, -0.14673
+ 0xbfef8764fa714ba9, 0xbfc5e214448b3fc6, // -0.98528, -0.17096
+ 0xbfef6297cff75cb0, 0xbfc8f8b83c69a60a, // -0.98079, -0.19509
+ 0xbfef38f3ac64e589, 0xbfcc0b826a7e4f63, // -0.9757, -0.2191
+ 0xbfef0a7efb9230d7, 0xbfcf19f97b215f1a, // -0.97003, -0.24298
+ 0xbfeed740e7684963, 0xbfd111d262b1f677, // -0.96378, -0.26671
+ 0xbfee9f4156c62dda, 0xbfd294062ed59f05, // -0.95694, -0.29028
+ 0xbfee6288ec48e112, 0xbfd4135c94176602, // -0.94953, -0.31368
+ 0xbfee212104f686e5, 0xbfd58f9a75ab1fdd, // -0.94154, -0.33689
+ 0xbfeddb13b6ccc23d, 0xbfd7088530fa459e, // -0.93299, -0.3599
+ 0xbfed906bcf328d46, 0xbfd87de2a6aea963, // -0.92388, -0.38268
+ 0xbfed4134d14dc93a, 0xbfd9ef7943a8ed8a, // -0.91421, -0.40524
+ 0xbfeced7af43cc773, 0xbfdb5d1009e15cc0, // -0.90399, -0.42756
+ 0xbfec954b213411f5, 0xbfdcc66e9931c45d, // -0.89322, -0.44961
+ 0xbfec38b2f180bdb1, 0xbfde2b5d3806f63b, // -0.88192, -0.4714
+ 0xbfebd7c0ac6f952a, 0xbfdf8ba4dbf89aba, // -0.87009, -0.4929
+ 0xbfeb728345196e3e, 0xbfe073879922ffed, // -0.85773, -0.5141
+ 0xbfeb090a58150200, 0xbfe11eb3541b4b22, // -0.84485, -0.535
+ 0xbfea9b66290ea1a3, 0xbfe1c73b39ae68c8, // -0.83147, -0.55557
+ 0xbfea29a7a0462782, 0xbfe26d054cdd12df, // -0.81758, -0.57581
+ 0xbfe9b3e047f38741, 0xbfe30ff7fce17035, // -0.80321, -0.5957
+ 0xbfe93a22499263fc, 0xbfe3affa292050b9, // -0.78835, -0.61523
+ 0xbfe8bc806b151741, 0xbfe44cf325091dd6, // -0.77301, -0.63439
+ 0xbfe83b0e0bff976e, 0xbfe4e6cabbe3e5e9, // -0.75721, -0.65317
+ 0xbfe7b5df226aafb0, 0xbfe57d69348cec9f, // -0.74095, -0.67156
+ 0xbfe72d0837efff97, 0xbfe610b7551d2cde, // -0.72425, -0.68954
+ 0xbfe6a09e667f3bcc, 0xbfe6a09e667f3bcc, // -0.70711, -0.70711
+ 0xbfe610b7551d2cde, 0xbfe72d0837efff97, // -0.68954, -0.72425
+ 0xbfe57d69348cec9f, 0xbfe7b5df226aafb0, // -0.67156, -0.74095
+ 0xbfe4e6cabbe3e5e9, 0xbfe83b0e0bff976e, // -0.65317, -0.75721
+ 0xbfe44cf325091dd6, 0xbfe8bc806b151741, // -0.63439, -0.77301
+ 0xbfe3affa292050b9, 0xbfe93a22499263fc, // -0.61523, -0.78835
+ 0xbfe30ff7fce17035, 0xbfe9b3e047f38741, // -0.5957, -0.80321
+ 0xbfe26d054cdd12df, 0xbfea29a7a0462782, // -0.57581, -0.81758
+ 0xbfe1c73b39ae68c8, 0xbfea9b66290ea1a3, // -0.55557, -0.83147
+ 0xbfe11eb3541b4b22, 0xbfeb090a58150200, // -0.535, -0.84485
+ 0xbfe073879922ffed, 0xbfeb728345196e3e, // -0.5141, -0.85773
+ 0xbfdf8ba4dbf89aba, 0xbfebd7c0ac6f952a, // -0.4929, -0.87009
+ 0xbfde2b5d3806f63b, 0xbfec38b2f180bdb1, // -0.4714, -0.88192
+ 0xbfdcc66e9931c45d, 0xbfec954b213411f5, // -0.44961, -0.89322
+ 0xbfdb5d1009e15cc0, 0xbfeced7af43cc773, // -0.42756, -0.90399
+ 0xbfd9ef7943a8ed8a, 0xbfed4134d14dc93a, // -0.40524, -0.91421
+ 0xbfd87de2a6aea963, 0xbfed906bcf328d46, // -0.38268, -0.92388
+ 0xbfd7088530fa459e, 0xbfeddb13b6ccc23d, // -0.3599, -0.93299
+ 0xbfd58f9a75ab1fdd, 0xbfee212104f686e5, // -0.33689, -0.94154
+ 0xbfd4135c94176602, 0xbfee6288ec48e112, // -0.31368, -0.94953
+ 0xbfd294062ed59f05, 0xbfee9f4156c62dda, // -0.29028, -0.95694
+ 0xbfd111d262b1f677, 0xbfeed740e7684963, // -0.26671, -0.96378
+ 0xbfcf19f97b215f1a, 0xbfef0a7efb9230d7, // -0.24298, -0.97003
+ 0xbfcc0b826a7e4f63, 0xbfef38f3ac64e589, // -0.2191, -0.9757
+ 0xbfc8f8b83c69a60a, 0xbfef6297cff75cb0, // -0.19509, -0.98079
+ 0xbfc5e214448b3fc6, 0xbfef8764fa714ba9, // -0.17096, -0.98528
+ 0xbfc2c8106e8e613a, 0xbfefa7557f08a517, // -0.14673, -0.98918
+ 0xbfbf564e56a9730e, 0xbfefc26470e19fd3, // -0.12241, -0.99248
+ 0xbfb917a6bc29b42c, 0xbfefd88da3d12526, //-0.098017, -0.99518
+ 0xbfb2d52092ce19f6, 0xbfefe9cdad01883a, //-0.073565, -0.99729
+ 0xbfa91f65f10dd814, 0xbfeff621e3796d7e, //-0.049068, -0.9988
+ 0xbf992155f7a3667e, 0xbfeffd886084cd0d, //-0.024541, -0.9997
+ 0x0000000000000000, 0xbff0000000000000, // 0, -1
+ 0x3f992155f7a3667e, 0xbfeffd886084cd0d, // 0.024541, -0.9997
+ 0x3fa91f65f10dd814, 0xbfeff621e3796d7e, // 0.049068, -0.9988
+ 0x3fb2d52092ce19f6, 0xbfefe9cdad01883a, // 0.073565, -0.99729
+ 0x3fb917a6bc29b42c, 0xbfefd88da3d12526, // 0.098017, -0.99518
+ 0x3fbf564e56a9730e, 0xbfefc26470e19fd3, // 0.12241, -0.99248
+ 0x3fc2c8106e8e613a, 0xbfefa7557f08a517, // 0.14673, -0.98918
+ 0x3fc5e214448b3fc6, 0xbfef8764fa714ba9, // 0.17096, -0.98528
+ 0x3fc8f8b83c69a60a, 0xbfef6297cff75cb0, // 0.19509, -0.98079
+ 0x3fcc0b826a7e4f63, 0xbfef38f3ac64e589, // 0.2191, -0.9757
+ 0x3fcf19f97b215f1a, 0xbfef0a7efb9230d7, // 0.24298, -0.97003
+ 0x3fd111d262b1f677, 0xbfeed740e7684963, // 0.26671, -0.96378
+ 0x3fd294062ed59f05, 0xbfee9f4156c62dda, // 0.29028, -0.95694
+ 0x3fd4135c94176602, 0xbfee6288ec48e112, // 0.31368, -0.94953
+ 0x3fd58f9a75ab1fdd, 0xbfee212104f686e5, // 0.33689, -0.94154
+ 0x3fd7088530fa459e, 0xbfeddb13b6ccc23d, // 0.3599, -0.93299
+ 0x3fd87de2a6aea963, 0xbfed906bcf328d46, // 0.38268, -0.92388
+ 0x3fd9ef7943a8ed8a, 0xbfed4134d14dc93a, // 0.40524, -0.91421
+ 0x3fdb5d1009e15cc0, 0xbfeced7af43cc773, // 0.42756, -0.90399
+ 0x3fdcc66e9931c45d, 0xbfec954b213411f5, // 0.44961, -0.89322
+ 0x3fde2b5d3806f63b, 0xbfec38b2f180bdb1, // 0.4714, -0.88192
+ 0x3fdf8ba4dbf89aba, 0xbfebd7c0ac6f952a, // 0.4929, -0.87009
+ 0x3fe073879922ffed, 0xbfeb728345196e3e, // 0.5141, -0.85773
+ 0x3fe11eb3541b4b22, 0xbfeb090a58150200, // 0.535, -0.84485
+ 0x3fe1c73b39ae68c8, 0xbfea9b66290ea1a3, // 0.55557, -0.83147
+ 0x3fe26d054cdd12df, 0xbfea29a7a0462782, // 0.57581, -0.81758
+ 0x3fe30ff7fce17035, 0xbfe9b3e047f38741, // 0.5957, -0.80321
+ 0x3fe3affa292050b9, 0xbfe93a22499263fc, // 0.61523, -0.78835
+ 0x3fe44cf325091dd6, 0xbfe8bc806b151741, // 0.63439, -0.77301
+ 0x3fe4e6cabbe3e5e9, 0xbfe83b0e0bff976e, // 0.65317, -0.75721
+ 0x3fe57d69348cec9f, 0xbfe7b5df226aafb0, // 0.67156, -0.74095
+ 0x3fe610b7551d2cde, 0xbfe72d0837efff97, // 0.68954, -0.72425
+ 0x3fe6a09e667f3bcc, 0xbfe6a09e667f3bcc, // 0.70711, -0.70711
+ 0x3fe72d0837efff97, 0xbfe610b7551d2cde, // 0.72425, -0.68954
+ 0x3fe7b5df226aafb0, 0xbfe57d69348cec9f, // 0.74095, -0.67156
+ 0x3fe83b0e0bff976e, 0xbfe4e6cabbe3e5e9, // 0.75721, -0.65317
+ 0x3fe8bc806b151741, 0xbfe44cf325091dd6, // 0.77301, -0.63439
+ 0x3fe93a22499263fc, 0xbfe3affa292050b9, // 0.78835, -0.61523
+ 0x3fe9b3e047f38741, 0xbfe30ff7fce17035, // 0.80321, -0.5957
+ 0x3fea29a7a0462782, 0xbfe26d054cdd12df, // 0.81758, -0.57581
+ 0x3fea9b66290ea1a3, 0xbfe1c73b39ae68c8, // 0.83147, -0.55557
+ 0x3feb090a58150200, 0xbfe11eb3541b4b22, // 0.84485, -0.535
+ 0x3feb728345196e3e, 0xbfe073879922ffed, // 0.85773, -0.5141
+ 0x3febd7c0ac6f952a, 0xbfdf8ba4dbf89aba, // 0.87009, -0.4929
+ 0x3fec38b2f180bdb1, 0xbfde2b5d3806f63b, // 0.88192, -0.4714
+ 0x3fec954b213411f5, 0xbfdcc66e9931c45d, // 0.89322, -0.44961
+ 0x3feced7af43cc773, 0xbfdb5d1009e15cc0, // 0.90399, -0.42756
+ 0x3fed4134d14dc93a, 0xbfd9ef7943a8ed8a, // 0.91421, -0.40524
+ 0x3fed906bcf328d46, 0xbfd87de2a6aea963, // 0.92388, -0.38268
+ 0x3feddb13b6ccc23d, 0xbfd7088530fa459e, // 0.93299, -0.3599
+ 0x3fee212104f686e5, 0xbfd58f9a75ab1fdd, // 0.94154, -0.33689
+ 0x3fee6288ec48e112, 0xbfd4135c94176602, // 0.94953, -0.31368
+ 0x3fee9f4156c62dda, 0xbfd294062ed59f05, // 0.95694, -0.29028
+ 0x3feed740e7684963, 0xbfd111d262b1f677, // 0.96378, -0.26671
+ 0x3fef0a7efb9230d7, 0xbfcf19f97b215f1a, // 0.97003, -0.24298
+ 0x3fef38f3ac64e589, 0xbfcc0b826a7e4f63, // 0.9757, -0.2191
+ 0x3fef6297cff75cb0, 0xbfc8f8b83c69a60a, // 0.98079, -0.19509
+ 0x3fef8764fa714ba9, 0xbfc5e214448b3fc6, // 0.98528, -0.17096
+ 0x3fefa7557f08a517, 0xbfc2c8106e8e613a, // 0.98918, -0.14673
+ 0x3fefc26470e19fd3, 0xbfbf564e56a9730e, // 0.99248, -0.12241
+ 0x3fefd88da3d12526, 0xbfb917a6bc29b42c, // 0.99518,-0.098017
+ 0x3fefe9cdad01883a, 0xbfb2d52092ce19f6, // 0.99729,-0.073565
+ 0x3feff621e3796d7e, 0xbfa91f65f10dd814, // 0.9988,-0.049068
+ 0x3feffd886084cd0d, 0xbf992155f7a3667e, // 0.9997,-0.024541
+};
+
+#endif /* !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) */
+
+#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || defined(ARM_TABLE_TWIDDLECOEF_F64_512)
+/**
+ @par
+ Example code for Double Precision Floating-point Twiddle factors Generation:
+ @par
+ <pre>for (i = 0; i< N/; i++)
+ {
+ twiddleCoef[2*i] = cos(i * 2*PI/(float)N);
+ twiddleCoef[2*i+1] = sin(i * 2*PI/(float)N);
+ } </pre>
+ @par
+ where N = 512, PI = 3.14159265358979
+ @par
+ Cos and Sin values are in interleaved fashion
+*/
+const uint64_t twiddleCoefF64_512[1024] = {
+ 0x3ff0000000000000, 0x0000000000000000, // 1, 0
+ 0x3fefff62169b92db, 0x3f8921d1fcdec784, // 0.99992, 0.012272
+ 0x3feffd886084cd0d, 0x3f992155f7a3667e, // 0.9997, 0.024541
+ 0x3feffa72effef75d, 0x3fa2d865759455cd, // 0.99932, 0.036807
+ 0x3feff621e3796d7e, 0x3fa91f65f10dd814, // 0.9988, 0.049068
+ 0x3feff095658e71ad, 0x3faf656e79f820e0, // 0.99812, 0.061321
+ 0x3fefe9cdad01883a, 0x3fb2d52092ce19f6, // 0.99729, 0.073565
+ 0x3fefe1cafcbd5b09, 0x3fb5f6d00a9aa419, // 0.99631, 0.085797
+ 0x3fefd88da3d12526, 0x3fb917a6bc29b42c, // 0.99518, 0.098017
+ 0x3fefce15fd6da67b, 0x3fbc3785c79ec2d5, // 0.99391, 0.11022
+ 0x3fefc26470e19fd3, 0x3fbf564e56a9730e, // 0.99248, 0.12241
+ 0x3fefb5797195d741, 0x3fc139f0cedaf576, // 0.9909, 0.13458
+ 0x3fefa7557f08a517, 0x3fc2c8106e8e613a, // 0.98918, 0.14673
+ 0x3fef97f924c9099b, 0x3fc45576b1293e5a, // 0.9873, 0.15886
+ 0x3fef8764fa714ba9, 0x3fc5e214448b3fc6, // 0.98528, 0.17096
+ 0x3fef7599a3a12077, 0x3fc76dd9de50bf31, // 0.98311, 0.18304
+ 0x3fef6297cff75cb0, 0x3fc8f8b83c69a60a, // 0.98079, 0.19509
+ 0x3fef4e603b0b2f2d, 0x3fca82a025b00451, // 0.97832, 0.20711
+ 0x3fef38f3ac64e589, 0x3fcc0b826a7e4f63, // 0.9757, 0.2191
+ 0x3fef2252f7763ada, 0x3fcd934fe5454311, // 0.97294, 0.23106
+ 0x3fef0a7efb9230d7, 0x3fcf19f97b215f1a, // 0.97003, 0.24298
+ 0x3feef178a3e473c2, 0x3fd04fb80e37fdae, // 0.96698, 0.25487
+ 0x3feed740e7684963, 0x3fd111d262b1f677, // 0.96378, 0.26671
+ 0x3feebbd8c8df0b74, 0x3fd1d3443f4cdb3d, // 0.96043, 0.27852
+ 0x3fee9f4156c62dda, 0x3fd294062ed59f05, // 0.95694, 0.29028
+ 0x3fee817bab4cd10d, 0x3fd35410c2e18152, // 0.95331, 0.30201
+ 0x3fee6288ec48e112, 0x3fd4135c94176602, // 0.94953, 0.31368
+ 0x3fee426a4b2bc17e, 0x3fd4d1e24278e76a, // 0.94561, 0.32531
+ 0x3fee212104f686e5, 0x3fd58f9a75ab1fdd, // 0.94154, 0.33689
+ 0x3fedfeae622dbe2b, 0x3fd64c7ddd3f27c6, // 0.93734, 0.34842
+ 0x3feddb13b6ccc23d, 0x3fd7088530fa459e, // 0.93299, 0.3599
+ 0x3fedb6526238a09b, 0x3fd7c3a9311dcce7, // 0.92851, 0.37132
+ 0x3fed906bcf328d46, 0x3fd87de2a6aea963, // 0.92388, 0.38268
+ 0x3fed696173c9e68b, 0x3fd9372a63bc93d7, // 0.91911, 0.39399
+ 0x3fed4134d14dc93a, 0x3fd9ef7943a8ed8a, // 0.91421, 0.40524
+ 0x3fed17e7743e35dc, 0x3fdaa6c82b6d3fc9, // 0.90917, 0.41643
+ 0x3feced7af43cc773, 0x3fdb5d1009e15cc0, // 0.90399, 0.42756
+ 0x3fecc1f0f3fcfc5c, 0x3fdc1249d8011ee7, // 0.89867, 0.43862
+ 0x3fec954b213411f5, 0x3fdcc66e9931c45d, // 0.89322, 0.44961
+ 0x3fec678b3488739b, 0x3fdd79775b86e389, // 0.88764, 0.46054
+ 0x3fec38b2f180bdb1, 0x3fde2b5d3806f63b, // 0.88192, 0.4714
+ 0x3fec08c426725549, 0x3fdedc1952ef78d5, // 0.87607, 0.48218
+ 0x3febd7c0ac6f952a, 0x3fdf8ba4dbf89aba, // 0.87009, 0.4929
+ 0x3feba5aa673590d2, 0x3fe01cfc874c3eb7, // 0.86397, 0.50354
+ 0x3feb728345196e3e, 0x3fe073879922ffed, // 0.85773, 0.5141
+ 0x3feb3e4d3ef55712, 0x3fe0c9704d5d898f, // 0.85136, 0.52459
+ 0x3feb090a58150200, 0x3fe11eb3541b4b22, // 0.84485, 0.535
+ 0x3fead2bc9e21d511, 0x3fe1734d63dedb49, // 0.83822, 0.54532
+ 0x3fea9b66290ea1a3, 0x3fe1c73b39ae68c8, // 0.83147, 0.55557
+ 0x3fea63091b02fae2, 0x3fe21a799933eb58, // 0.82459, 0.56573
+ 0x3fea29a7a0462782, 0x3fe26d054cdd12df, // 0.81758, 0.57581
+ 0x3fe9ef43ef29af94, 0x3fe2bedb25faf3ea, // 0.81046, 0.5858
+ 0x3fe9b3e047f38741, 0x3fe30ff7fce17035, // 0.80321, 0.5957
+ 0x3fe9777ef4c7d742, 0x3fe36058b10659f3, // 0.79584, 0.60551
+ 0x3fe93a22499263fc, 0x3fe3affa292050b9, // 0.78835, 0.61523
+ 0x3fe8fbcca3ef940d, 0x3fe3fed9534556d4, // 0.78074, 0.62486
+ 0x3fe8bc806b151741, 0x3fe44cf325091dd6, // 0.77301, 0.63439
+ 0x3fe87c400fba2ebf, 0x3fe49a449b9b0938, // 0.76517, 0.64383
+ 0x3fe83b0e0bff976e, 0x3fe4e6cabbe3e5e9, // 0.75721, 0.65317
+ 0x3fe7f8ece3571771, 0x3fe5328292a35596, // 0.74914, 0.66242
+ 0x3fe7b5df226aafb0, 0x3fe57d69348cec9f, // 0.74095, 0.67156
+ 0x3fe771e75f037261, 0x3fe5c77bbe65018c, // 0.73265, 0.6806
+ 0x3fe72d0837efff97, 0x3fe610b7551d2cde, // 0.72425, 0.68954
+ 0x3fe6e74454eaa8ae, 0x3fe6591925f0783e, // 0.71573, 0.69838
+ 0x3fe6a09e667f3bcc, 0x3fe6a09e667f3bcc, // 0.70711, 0.70711
+ 0x3fe6591925f0783e, 0x3fe6e74454eaa8ae, // 0.69838, 0.71573
+ 0x3fe610b7551d2cde, 0x3fe72d0837efff97, // 0.68954, 0.72425
+ 0x3fe5c77bbe65018c, 0x3fe771e75f037261, // 0.6806, 0.73265
+ 0x3fe57d69348cec9f, 0x3fe7b5df226aafb0, // 0.67156, 0.74095
+ 0x3fe5328292a35596, 0x3fe7f8ece3571771, // 0.66242, 0.74914
+ 0x3fe4e6cabbe3e5e9, 0x3fe83b0e0bff976e, // 0.65317, 0.75721
+ 0x3fe49a449b9b0938, 0x3fe87c400fba2ebf, // 0.64383, 0.76517
+ 0x3fe44cf325091dd6, 0x3fe8bc806b151741, // 0.63439, 0.77301
+ 0x3fe3fed9534556d4, 0x3fe8fbcca3ef940d, // 0.62486, 0.78074
+ 0x3fe3affa292050b9, 0x3fe93a22499263fc, // 0.61523, 0.78835
+ 0x3fe36058b10659f3, 0x3fe9777ef4c7d742, // 0.60551, 0.79584
+ 0x3fe30ff7fce17035, 0x3fe9b3e047f38741, // 0.5957, 0.80321
+ 0x3fe2bedb25faf3ea, 0x3fe9ef43ef29af94, // 0.5858, 0.81046
+ 0x3fe26d054cdd12df, 0x3fea29a7a0462782, // 0.57581, 0.81758
+ 0x3fe21a799933eb58, 0x3fea63091b02fae2, // 0.56573, 0.82459
+ 0x3fe1c73b39ae68c8, 0x3fea9b66290ea1a3, // 0.55557, 0.83147
+ 0x3fe1734d63dedb49, 0x3fead2bc9e21d511, // 0.54532, 0.83822
+ 0x3fe11eb3541b4b22, 0x3feb090a58150200, // 0.535, 0.84485
+ 0x3fe0c9704d5d898f, 0x3feb3e4d3ef55712, // 0.52459, 0.85136
+ 0x3fe073879922ffed, 0x3feb728345196e3e, // 0.5141, 0.85773
+ 0x3fe01cfc874c3eb7, 0x3feba5aa673590d2, // 0.50354, 0.86397
+ 0x3fdf8ba4dbf89aba, 0x3febd7c0ac6f952a, // 0.4929, 0.87009
+ 0x3fdedc1952ef78d5, 0x3fec08c426725549, // 0.48218, 0.87607
+ 0x3fde2b5d3806f63b, 0x3fec38b2f180bdb1, // 0.4714, 0.88192
+ 0x3fdd79775b86e389, 0x3fec678b3488739b, // 0.46054, 0.88764
+ 0x3fdcc66e9931c45d, 0x3fec954b213411f5, // 0.44961, 0.89322
+ 0x3fdc1249d8011ee7, 0x3fecc1f0f3fcfc5c, // 0.43862, 0.89867
+ 0x3fdb5d1009e15cc0, 0x3feced7af43cc773, // 0.42756, 0.90399
+ 0x3fdaa6c82b6d3fc9, 0x3fed17e7743e35dc, // 0.41643, 0.90917
+ 0x3fd9ef7943a8ed8a, 0x3fed4134d14dc93a, // 0.40524, 0.91421
+ 0x3fd9372a63bc93d7, 0x3fed696173c9e68b, // 0.39399, 0.91911
+ 0x3fd87de2a6aea963, 0x3fed906bcf328d46, // 0.38268, 0.92388
+ 0x3fd7c3a9311dcce7, 0x3fedb6526238a09b, // 0.37132, 0.92851
+ 0x3fd7088530fa459e, 0x3feddb13b6ccc23d, // 0.3599, 0.93299
+ 0x3fd64c7ddd3f27c6, 0x3fedfeae622dbe2b, // 0.34842, 0.93734
+ 0x3fd58f9a75ab1fdd, 0x3fee212104f686e5, // 0.33689, 0.94154
+ 0x3fd4d1e24278e76a, 0x3fee426a4b2bc17e, // 0.32531, 0.94561
+ 0x3fd4135c94176602, 0x3fee6288ec48e112, // 0.31368, 0.94953
+ 0x3fd35410c2e18152, 0x3fee817bab4cd10d, // 0.30201, 0.95331
+ 0x3fd294062ed59f05, 0x3fee9f4156c62dda, // 0.29028, 0.95694
+ 0x3fd1d3443f4cdb3d, 0x3feebbd8c8df0b74, // 0.27852, 0.96043
+ 0x3fd111d262b1f677, 0x3feed740e7684963, // 0.26671, 0.96378
+ 0x3fd04fb80e37fdae, 0x3feef178a3e473c2, // 0.25487, 0.96698
+ 0x3fcf19f97b215f1a, 0x3fef0a7efb9230d7, // 0.24298, 0.97003
+ 0x3fcd934fe5454311, 0x3fef2252f7763ada, // 0.23106, 0.97294
+ 0x3fcc0b826a7e4f63, 0x3fef38f3ac64e589, // 0.2191, 0.9757
+ 0x3fca82a025b00451, 0x3fef4e603b0b2f2d, // 0.20711, 0.97832
+ 0x3fc8f8b83c69a60a, 0x3fef6297cff75cb0, // 0.19509, 0.98079
+ 0x3fc76dd9de50bf31, 0x3fef7599a3a12077, // 0.18304, 0.98311
+ 0x3fc5e214448b3fc6, 0x3fef8764fa714ba9, // 0.17096, 0.98528
+ 0x3fc45576b1293e5a, 0x3fef97f924c9099b, // 0.15886, 0.9873
+ 0x3fc2c8106e8e613a, 0x3fefa7557f08a517, // 0.14673, 0.98918
+ 0x3fc139f0cedaf576, 0x3fefb5797195d741, // 0.13458, 0.9909
+ 0x3fbf564e56a9730e, 0x3fefc26470e19fd3, // 0.12241, 0.99248
+ 0x3fbc3785c79ec2d5, 0x3fefce15fd6da67b, // 0.11022, 0.99391
+ 0x3fb917a6bc29b42c, 0x3fefd88da3d12526, // 0.098017, 0.99518
+ 0x3fb5f6d00a9aa419, 0x3fefe1cafcbd5b09, // 0.085797, 0.99631
+ 0x3fb2d52092ce19f6, 0x3fefe9cdad01883a, // 0.073565, 0.99729
+ 0x3faf656e79f820e0, 0x3feff095658e71ad, // 0.061321, 0.99812
+ 0x3fa91f65f10dd814, 0x3feff621e3796d7e, // 0.049068, 0.9988
+ 0x3fa2d865759455cd, 0x3feffa72effef75d, // 0.036807, 0.99932
+ 0x3f992155f7a3667e, 0x3feffd886084cd0d, // 0.024541, 0.9997
+ 0x3f8921d1fcdec784, 0x3fefff62169b92db, // 0.012272, 0.99992
+ 0x0000000000000000, 0x3ff0000000000000, // 0, 1
+ 0xbf8921d1fcdec784, 0x3fefff62169b92db, //-0.012272, 0.99992
+ 0xbf992155f7a3667e, 0x3feffd886084cd0d, //-0.024541, 0.9997
+ 0xbfa2d865759455cd, 0x3feffa72effef75d, //-0.036807, 0.99932
+ 0xbfa91f65f10dd814, 0x3feff621e3796d7e, //-0.049068, 0.9988
+ 0xbfaf656e79f820e0, 0x3feff095658e71ad, //-0.061321, 0.99812
+ 0xbfb2d52092ce19f6, 0x3fefe9cdad01883a, //-0.073565, 0.99729
+ 0xbfb5f6d00a9aa419, 0x3fefe1cafcbd5b09, //-0.085797, 0.99631
+ 0xbfb917a6bc29b42c, 0x3fefd88da3d12526, //-0.098017, 0.99518
+ 0xbfbc3785c79ec2d5, 0x3fefce15fd6da67b, // -0.11022, 0.99391
+ 0xbfbf564e56a9730e, 0x3fefc26470e19fd3, // -0.12241, 0.99248
+ 0xbfc139f0cedaf576, 0x3fefb5797195d741, // -0.13458, 0.9909
+ 0xbfc2c8106e8e613a, 0x3fefa7557f08a517, // -0.14673, 0.98918
+ 0xbfc45576b1293e5a, 0x3fef97f924c9099b, // -0.15886, 0.9873
+ 0xbfc5e214448b3fc6, 0x3fef8764fa714ba9, // -0.17096, 0.98528
+ 0xbfc76dd9de50bf31, 0x3fef7599a3a12077, // -0.18304, 0.98311
+ 0xbfc8f8b83c69a60a, 0x3fef6297cff75cb0, // -0.19509, 0.98079
+ 0xbfca82a025b00451, 0x3fef4e603b0b2f2d, // -0.20711, 0.97832
+ 0xbfcc0b826a7e4f63, 0x3fef38f3ac64e589, // -0.2191, 0.9757
+ 0xbfcd934fe5454311, 0x3fef2252f7763ada, // -0.23106, 0.97294
+ 0xbfcf19f97b215f1a, 0x3fef0a7efb9230d7, // -0.24298, 0.97003
+ 0xbfd04fb80e37fdae, 0x3feef178a3e473c2, // -0.25487, 0.96698
+ 0xbfd111d262b1f677, 0x3feed740e7684963, // -0.26671, 0.96378
+ 0xbfd1d3443f4cdb3d, 0x3feebbd8c8df0b74, // -0.27852, 0.96043
+ 0xbfd294062ed59f05, 0x3fee9f4156c62dda, // -0.29028, 0.95694
+ 0xbfd35410c2e18152, 0x3fee817bab4cd10d, // -0.30201, 0.95331
+ 0xbfd4135c94176602, 0x3fee6288ec48e112, // -0.31368, 0.94953
+ 0xbfd4d1e24278e76a, 0x3fee426a4b2bc17e, // -0.32531, 0.94561
+ 0xbfd58f9a75ab1fdd, 0x3fee212104f686e5, // -0.33689, 0.94154
+ 0xbfd64c7ddd3f27c6, 0x3fedfeae622dbe2b, // -0.34842, 0.93734
+ 0xbfd7088530fa459e, 0x3feddb13b6ccc23d, // -0.3599, 0.93299
+ 0xbfd7c3a9311dcce7, 0x3fedb6526238a09b, // -0.37132, 0.92851
+ 0xbfd87de2a6aea963, 0x3fed906bcf328d46, // -0.38268, 0.92388
+ 0xbfd9372a63bc93d7, 0x3fed696173c9e68b, // -0.39399, 0.91911
+ 0xbfd9ef7943a8ed8a, 0x3fed4134d14dc93a, // -0.40524, 0.91421
+ 0xbfdaa6c82b6d3fc9, 0x3fed17e7743e35dc, // -0.41643, 0.90917
+ 0xbfdb5d1009e15cc0, 0x3feced7af43cc773, // -0.42756, 0.90399
+ 0xbfdc1249d8011ee7, 0x3fecc1f0f3fcfc5c, // -0.43862, 0.89867
+ 0xbfdcc66e9931c45d, 0x3fec954b213411f5, // -0.44961, 0.89322
+ 0xbfdd79775b86e389, 0x3fec678b3488739b, // -0.46054, 0.88764
+ 0xbfde2b5d3806f63b, 0x3fec38b2f180bdb1, // -0.4714, 0.88192
+ 0xbfdedc1952ef78d5, 0x3fec08c426725549, // -0.48218, 0.87607
+ 0xbfdf8ba4dbf89aba, 0x3febd7c0ac6f952a, // -0.4929, 0.87009
+ 0xbfe01cfc874c3eb7, 0x3feba5aa673590d2, // -0.50354, 0.86397
+ 0xbfe073879922ffed, 0x3feb728345196e3e, // -0.5141, 0.85773
+ 0xbfe0c9704d5d898f, 0x3feb3e4d3ef55712, // -0.52459, 0.85136
+ 0xbfe11eb3541b4b22, 0x3feb090a58150200, // -0.535, 0.84485
+ 0xbfe1734d63dedb49, 0x3fead2bc9e21d511, // -0.54532, 0.83822
+ 0xbfe1c73b39ae68c8, 0x3fea9b66290ea1a3, // -0.55557, 0.83147
+ 0xbfe21a799933eb58, 0x3fea63091b02fae2, // -0.56573, 0.82459
+ 0xbfe26d054cdd12df, 0x3fea29a7a0462782, // -0.57581, 0.81758
+ 0xbfe2bedb25faf3ea, 0x3fe9ef43ef29af94, // -0.5858, 0.81046
+ 0xbfe30ff7fce17035, 0x3fe9b3e047f38741, // -0.5957, 0.80321
+ 0xbfe36058b10659f3, 0x3fe9777ef4c7d742, // -0.60551, 0.79584
+ 0xbfe3affa292050b9, 0x3fe93a22499263fc, // -0.61523, 0.78835
+ 0xbfe3fed9534556d4, 0x3fe8fbcca3ef940d, // -0.62486, 0.78074
+ 0xbfe44cf325091dd6, 0x3fe8bc806b151741, // -0.63439, 0.77301
+ 0xbfe49a449b9b0938, 0x3fe87c400fba2ebf, // -0.64383, 0.76517
+ 0xbfe4e6cabbe3e5e9, 0x3fe83b0e0bff976e, // -0.65317, 0.75721
+ 0xbfe5328292a35596, 0x3fe7f8ece3571771, // -0.66242, 0.74914
+ 0xbfe57d69348cec9f, 0x3fe7b5df226aafb0, // -0.67156, 0.74095
+ 0xbfe5c77bbe65018c, 0x3fe771e75f037261, // -0.6806, 0.73265
+ 0xbfe610b7551d2cde, 0x3fe72d0837efff97, // -0.68954, 0.72425
+ 0xbfe6591925f0783e, 0x3fe6e74454eaa8ae, // -0.69838, 0.71573
+ 0xbfe6a09e667f3bcc, 0x3fe6a09e667f3bcc, // -0.70711, 0.70711
+ 0xbfe6e74454eaa8ae, 0x3fe6591925f0783e, // -0.71573, 0.69838
+ 0xbfe72d0837efff97, 0x3fe610b7551d2cde, // -0.72425, 0.68954
+ 0xbfe771e75f037261, 0x3fe5c77bbe65018c, // -0.73265, 0.6806
+ 0xbfe7b5df226aafb0, 0x3fe57d69348cec9f, // -0.74095, 0.67156
+ 0xbfe7f8ece3571771, 0x3fe5328292a35596, // -0.74914, 0.66242
+ 0xbfe83b0e0bff976e, 0x3fe4e6cabbe3e5e9, // -0.75721, 0.65317
+ 0xbfe87c400fba2ebf, 0x3fe49a449b9b0938, // -0.76517, 0.64383
+ 0xbfe8bc806b151741, 0x3fe44cf325091dd6, // -0.77301, 0.63439
+ 0xbfe8fbcca3ef940d, 0x3fe3fed9534556d4, // -0.78074, 0.62486
+ 0xbfe93a22499263fc, 0x3fe3affa292050b9, // -0.78835, 0.61523
+ 0xbfe9777ef4c7d742, 0x3fe36058b10659f3, // -0.79584, 0.60551
+ 0xbfe9b3e047f38741, 0x3fe30ff7fce17035, // -0.80321, 0.5957
+ 0xbfe9ef43ef29af94, 0x3fe2bedb25faf3ea, // -0.81046, 0.5858
+ 0xbfea29a7a0462782, 0x3fe26d054cdd12df, // -0.81758, 0.57581
+ 0xbfea63091b02fae2, 0x3fe21a799933eb58, // -0.82459, 0.56573
+ 0xbfea9b66290ea1a3, 0x3fe1c73b39ae68c8, // -0.83147, 0.55557
+ 0xbfead2bc9e21d511, 0x3fe1734d63dedb49, // -0.83822, 0.54532
+ 0xbfeb090a58150200, 0x3fe11eb3541b4b22, // -0.84485, 0.535
+ 0xbfeb3e4d3ef55712, 0x3fe0c9704d5d898f, // -0.85136, 0.52459
+ 0xbfeb728345196e3e, 0x3fe073879922ffed, // -0.85773, 0.5141
+ 0xbfeba5aa673590d2, 0x3fe01cfc874c3eb7, // -0.86397, 0.50354
+ 0xbfebd7c0ac6f952a, 0x3fdf8ba4dbf89aba, // -0.87009, 0.4929
+ 0xbfec08c426725549, 0x3fdedc1952ef78d5, // -0.87607, 0.48218
+ 0xbfec38b2f180bdb1, 0x3fde2b5d3806f63b, // -0.88192, 0.4714
+ 0xbfec678b3488739b, 0x3fdd79775b86e389, // -0.88764, 0.46054
+ 0xbfec954b213411f5, 0x3fdcc66e9931c45d, // -0.89322, 0.44961
+ 0xbfecc1f0f3fcfc5c, 0x3fdc1249d8011ee7, // -0.89867, 0.43862
+ 0xbfeced7af43cc773, 0x3fdb5d1009e15cc0, // -0.90399, 0.42756
+ 0xbfed17e7743e35dc, 0x3fdaa6c82b6d3fc9, // -0.90917, 0.41643
+ 0xbfed4134d14dc93a, 0x3fd9ef7943a8ed8a, // -0.91421, 0.40524
+ 0xbfed696173c9e68b, 0x3fd9372a63bc93d7, // -0.91911, 0.39399
+ 0xbfed906bcf328d46, 0x3fd87de2a6aea963, // -0.92388, 0.38268
+ 0xbfedb6526238a09b, 0x3fd7c3a9311dcce7, // -0.92851, 0.37132
+ 0xbfeddb13b6ccc23d, 0x3fd7088530fa459e, // -0.93299, 0.3599
+ 0xbfedfeae622dbe2b, 0x3fd64c7ddd3f27c6, // -0.93734, 0.34842
+ 0xbfee212104f686e5, 0x3fd58f9a75ab1fdd, // -0.94154, 0.33689
+ 0xbfee426a4b2bc17e, 0x3fd4d1e24278e76a, // -0.94561, 0.32531
+ 0xbfee6288ec48e112, 0x3fd4135c94176602, // -0.94953, 0.31368
+ 0xbfee817bab4cd10d, 0x3fd35410c2e18152, // -0.95331, 0.30201
+ 0xbfee9f4156c62dda, 0x3fd294062ed59f05, // -0.95694, 0.29028
+ 0xbfeebbd8c8df0b74, 0x3fd1d3443f4cdb3d, // -0.96043, 0.27852
+ 0xbfeed740e7684963, 0x3fd111d262b1f677, // -0.96378, 0.26671
+ 0xbfeef178a3e473c2, 0x3fd04fb80e37fdae, // -0.96698, 0.25487
+ 0xbfef0a7efb9230d7, 0x3fcf19f97b215f1a, // -0.97003, 0.24298
+ 0xbfef2252f7763ada, 0x3fcd934fe5454311, // -0.97294, 0.23106
+ 0xbfef38f3ac64e589, 0x3fcc0b826a7e4f63, // -0.9757, 0.2191
+ 0xbfef4e603b0b2f2d, 0x3fca82a025b00451, // -0.97832, 0.20711
+ 0xbfef6297cff75cb0, 0x3fc8f8b83c69a60a, // -0.98079, 0.19509
+ 0xbfef7599a3a12077, 0x3fc76dd9de50bf31, // -0.98311, 0.18304
+ 0xbfef8764fa714ba9, 0x3fc5e214448b3fc6, // -0.98528, 0.17096
+ 0xbfef97f924c9099b, 0x3fc45576b1293e5a, // -0.9873, 0.15886
+ 0xbfefa7557f08a517, 0x3fc2c8106e8e613a, // -0.98918, 0.14673
+ 0xbfefb5797195d741, 0x3fc139f0cedaf576, // -0.9909, 0.13458
+ 0xbfefc26470e19fd3, 0x3fbf564e56a9730e, // -0.99248, 0.12241
+ 0xbfefce15fd6da67b, 0x3fbc3785c79ec2d5, // -0.99391, 0.11022
+ 0xbfefd88da3d12526, 0x3fb917a6bc29b42c, // -0.99518, 0.098017
+ 0xbfefe1cafcbd5b09, 0x3fb5f6d00a9aa419, // -0.99631, 0.085797
+ 0xbfefe9cdad01883a, 0x3fb2d52092ce19f6, // -0.99729, 0.073565
+ 0xbfeff095658e71ad, 0x3faf656e79f820e0, // -0.99812, 0.061321
+ 0xbfeff621e3796d7e, 0x3fa91f65f10dd814, // -0.9988, 0.049068
+ 0xbfeffa72effef75d, 0x3fa2d865759455cd, // -0.99932, 0.036807
+ 0xbfeffd886084cd0d, 0x3f992155f7a3667e, // -0.9997, 0.024541
+ 0xbfefff62169b92db, 0x3f8921d1fcdec784, // -0.99992, 0.012272
+ 0xbff0000000000000, 0x0000000000000000, // -1, 0
+ 0xbfefff62169b92db, 0xbf8921d1fcdec784, // -0.99992,-0.012272
+ 0xbfeffd886084cd0d, 0xbf992155f7a3667e, // -0.9997,-0.024541
+ 0xbfeffa72effef75d, 0xbfa2d865759455cd, // -0.99932,-0.036807
+ 0xbfeff621e3796d7e, 0xbfa91f65f10dd814, // -0.9988,-0.049068
+ 0xbfeff095658e71ad, 0xbfaf656e79f820e0, // -0.99812,-0.061321
+ 0xbfefe9cdad01883a, 0xbfb2d52092ce19f6, // -0.99729,-0.073565
+ 0xbfefe1cafcbd5b09, 0xbfb5f6d00a9aa419, // -0.99631,-0.085797
+ 0xbfefd88da3d12526, 0xbfb917a6bc29b42c, // -0.99518,-0.098017
+ 0xbfefce15fd6da67b, 0xbfbc3785c79ec2d5, // -0.99391, -0.11022
+ 0xbfefc26470e19fd3, 0xbfbf564e56a9730e, // -0.99248, -0.12241
+ 0xbfefb5797195d741, 0xbfc139f0cedaf576, // -0.9909, -0.13458
+ 0xbfefa7557f08a517, 0xbfc2c8106e8e613a, // -0.98918, -0.14673
+ 0xbfef97f924c9099b, 0xbfc45576b1293e5a, // -0.9873, -0.15886
+ 0xbfef8764fa714ba9, 0xbfc5e214448b3fc6, // -0.98528, -0.17096
+ 0xbfef7599a3a12077, 0xbfc76dd9de50bf31, // -0.98311, -0.18304
+ 0xbfef6297cff75cb0, 0xbfc8f8b83c69a60a, // -0.98079, -0.19509
+ 0xbfef4e603b0b2f2d, 0xbfca82a025b00451, // -0.97832, -0.20711
+ 0xbfef38f3ac64e589, 0xbfcc0b826a7e4f63, // -0.9757, -0.2191
+ 0xbfef2252f7763ada, 0xbfcd934fe5454311, // -0.97294, -0.23106
+ 0xbfef0a7efb9230d7, 0xbfcf19f97b215f1a, // -0.97003, -0.24298
+ 0xbfeef178a3e473c2, 0xbfd04fb80e37fdae, // -0.96698, -0.25487
+ 0xbfeed740e7684963, 0xbfd111d262b1f677, // -0.96378, -0.26671
+ 0xbfeebbd8c8df0b74, 0xbfd1d3443f4cdb3d, // -0.96043, -0.27852
+ 0xbfee9f4156c62dda, 0xbfd294062ed59f05, // -0.95694, -0.29028
+ 0xbfee817bab4cd10d, 0xbfd35410c2e18152, // -0.95331, -0.30201
+ 0xbfee6288ec48e112, 0xbfd4135c94176602, // -0.94953, -0.31368
+ 0xbfee426a4b2bc17e, 0xbfd4d1e24278e76a, // -0.94561, -0.32531
+ 0xbfee212104f686e5, 0xbfd58f9a75ab1fdd, // -0.94154, -0.33689
+ 0xbfedfeae622dbe2b, 0xbfd64c7ddd3f27c6, // -0.93734, -0.34842
+ 0xbfeddb13b6ccc23d, 0xbfd7088530fa459e, // -0.93299, -0.3599
+ 0xbfedb6526238a09b, 0xbfd7c3a9311dcce7, // -0.92851, -0.37132
+ 0xbfed906bcf328d46, 0xbfd87de2a6aea963, // -0.92388, -0.38268
+ 0xbfed696173c9e68b, 0xbfd9372a63bc93d7, // -0.91911, -0.39399
+ 0xbfed4134d14dc93a, 0xbfd9ef7943a8ed8a, // -0.91421, -0.40524
+ 0xbfed17e7743e35dc, 0xbfdaa6c82b6d3fc9, // -0.90917, -0.41643
+ 0xbfeced7af43cc773, 0xbfdb5d1009e15cc0, // -0.90399, -0.42756
+ 0xbfecc1f0f3fcfc5c, 0xbfdc1249d8011ee7, // -0.89867, -0.43862
+ 0xbfec954b213411f5, 0xbfdcc66e9931c45d, // -0.89322, -0.44961
+ 0xbfec678b3488739b, 0xbfdd79775b86e389, // -0.88764, -0.46054
+ 0xbfec38b2f180bdb1, 0xbfde2b5d3806f63b, // -0.88192, -0.4714
+ 0xbfec08c426725549, 0xbfdedc1952ef78d5, // -0.87607, -0.48218
+ 0xbfebd7c0ac6f952a, 0xbfdf8ba4dbf89aba, // -0.87009, -0.4929
+ 0xbfeba5aa673590d2, 0xbfe01cfc874c3eb7, // -0.86397, -0.50354
+ 0xbfeb728345196e3e, 0xbfe073879922ffed, // -0.85773, -0.5141
+ 0xbfeb3e4d3ef55712, 0xbfe0c9704d5d898f, // -0.85136, -0.52459
+ 0xbfeb090a58150200, 0xbfe11eb3541b4b22, // -0.84485, -0.535
+ 0xbfead2bc9e21d511, 0xbfe1734d63dedb49, // -0.83822, -0.54532
+ 0xbfea9b66290ea1a3, 0xbfe1c73b39ae68c8, // -0.83147, -0.55557
+ 0xbfea63091b02fae2, 0xbfe21a799933eb58, // -0.82459, -0.56573
+ 0xbfea29a7a0462782, 0xbfe26d054cdd12df, // -0.81758, -0.57581
+ 0xbfe9ef43ef29af94, 0xbfe2bedb25faf3ea, // -0.81046, -0.5858
+ 0xbfe9b3e047f38741, 0xbfe30ff7fce17035, // -0.80321, -0.5957
+ 0xbfe9777ef4c7d742, 0xbfe36058b10659f3, // -0.79584, -0.60551
+ 0xbfe93a22499263fc, 0xbfe3affa292050b9, // -0.78835, -0.61523
+ 0xbfe8fbcca3ef940d, 0xbfe3fed9534556d4, // -0.78074, -0.62486
+ 0xbfe8bc806b151741, 0xbfe44cf325091dd6, // -0.77301, -0.63439
+ 0xbfe87c400fba2ebf, 0xbfe49a449b9b0938, // -0.76517, -0.64383
+ 0xbfe83b0e0bff976e, 0xbfe4e6cabbe3e5e9, // -0.75721, -0.65317
+ 0xbfe7f8ece3571771, 0xbfe5328292a35596, // -0.74914, -0.66242
+ 0xbfe7b5df226aafb0, 0xbfe57d69348cec9f, // -0.74095, -0.67156
+ 0xbfe771e75f037261, 0xbfe5c77bbe65018c, // -0.73265, -0.6806
+ 0xbfe72d0837efff97, 0xbfe610b7551d2cde, // -0.72425, -0.68954
+ 0xbfe6e74454eaa8ae, 0xbfe6591925f0783e, // -0.71573, -0.69838
+ 0xbfe6a09e667f3bcc, 0xbfe6a09e667f3bcc, // -0.70711, -0.70711
+ 0xbfe6591925f0783e, 0xbfe6e74454eaa8ae, // -0.69838, -0.71573
+ 0xbfe610b7551d2cde, 0xbfe72d0837efff97, // -0.68954, -0.72425
+ 0xbfe5c77bbe65018c, 0xbfe771e75f037261, // -0.6806, -0.73265
+ 0xbfe57d69348cec9f, 0xbfe7b5df226aafb0, // -0.67156, -0.74095
+ 0xbfe5328292a35596, 0xbfe7f8ece3571771, // -0.66242, -0.74914
+ 0xbfe4e6cabbe3e5e9, 0xbfe83b0e0bff976e, // -0.65317, -0.75721
+ 0xbfe49a449b9b0938, 0xbfe87c400fba2ebf, // -0.64383, -0.76517
+ 0xbfe44cf325091dd6, 0xbfe8bc806b151741, // -0.63439, -0.77301
+ 0xbfe3fed9534556d4, 0xbfe8fbcca3ef940d, // -0.62486, -0.78074
+ 0xbfe3affa292050b9, 0xbfe93a22499263fc, // -0.61523, -0.78835
+ 0xbfe36058b10659f3, 0xbfe9777ef4c7d742, // -0.60551, -0.79584
+ 0xbfe30ff7fce17035, 0xbfe9b3e047f38741, // -0.5957, -0.80321
+ 0xbfe2bedb25faf3ea, 0xbfe9ef43ef29af94, // -0.5858, -0.81046
+ 0xbfe26d054cdd12df, 0xbfea29a7a0462782, // -0.57581, -0.81758
+ 0xbfe21a799933eb58, 0xbfea63091b02fae2, // -0.56573, -0.82459
+ 0xbfe1c73b39ae68c8, 0xbfea9b66290ea1a3, // -0.55557, -0.83147
+ 0xbfe1734d63dedb49, 0xbfead2bc9e21d511, // -0.54532, -0.83822
+ 0xbfe11eb3541b4b22, 0xbfeb090a58150200, // -0.535, -0.84485
+ 0xbfe0c9704d5d898f, 0xbfeb3e4d3ef55712, // -0.52459, -0.85136
+ 0xbfe073879922ffed, 0xbfeb728345196e3e, // -0.5141, -0.85773
+ 0xbfe01cfc874c3eb7, 0xbfeba5aa673590d2, // -0.50354, -0.86397
+ 0xbfdf8ba4dbf89aba, 0xbfebd7c0ac6f952a, // -0.4929, -0.87009
+ 0xbfdedc1952ef78d5, 0xbfec08c426725549, // -0.48218, -0.87607
+ 0xbfde2b5d3806f63b, 0xbfec38b2f180bdb1, // -0.4714, -0.88192
+ 0xbfdd79775b86e389, 0xbfec678b3488739b, // -0.46054, -0.88764
+ 0xbfdcc66e9931c45d, 0xbfec954b213411f5, // -0.44961, -0.89322
+ 0xbfdc1249d8011ee7, 0xbfecc1f0f3fcfc5c, // -0.43862, -0.89867
+ 0xbfdb5d1009e15cc0, 0xbfeced7af43cc773, // -0.42756, -0.90399
+ 0xbfdaa6c82b6d3fc9, 0xbfed17e7743e35dc, // -0.41643, -0.90917
+ 0xbfd9ef7943a8ed8a, 0xbfed4134d14dc93a, // -0.40524, -0.91421
+ 0xbfd9372a63bc93d7, 0xbfed696173c9e68b, // -0.39399, -0.91911
+ 0xbfd87de2a6aea963, 0xbfed906bcf328d46, // -0.38268, -0.92388
+ 0xbfd7c3a9311dcce7, 0xbfedb6526238a09b, // -0.37132, -0.92851
+ 0xbfd7088530fa459e, 0xbfeddb13b6ccc23d, // -0.3599, -0.93299
+ 0xbfd64c7ddd3f27c6, 0xbfedfeae622dbe2b, // -0.34842, -0.93734
+ 0xbfd58f9a75ab1fdd, 0xbfee212104f686e5, // -0.33689, -0.94154
+ 0xbfd4d1e24278e76a, 0xbfee426a4b2bc17e, // -0.32531, -0.94561
+ 0xbfd4135c94176602, 0xbfee6288ec48e112, // -0.31368, -0.94953
+ 0xbfd35410c2e18152, 0xbfee817bab4cd10d, // -0.30201, -0.95331
+ 0xbfd294062ed59f05, 0xbfee9f4156c62dda, // -0.29028, -0.95694
+ 0xbfd1d3443f4cdb3d, 0xbfeebbd8c8df0b74, // -0.27852, -0.96043
+ 0xbfd111d262b1f677, 0xbfeed740e7684963, // -0.26671, -0.96378
+ 0xbfd04fb80e37fdae, 0xbfeef178a3e473c2, // -0.25487, -0.96698
+ 0xbfcf19f97b215f1a, 0xbfef0a7efb9230d7, // -0.24298, -0.97003
+ 0xbfcd934fe5454311, 0xbfef2252f7763ada, // -0.23106, -0.97294
+ 0xbfcc0b826a7e4f63, 0xbfef38f3ac64e589, // -0.2191, -0.9757
+ 0xbfca82a025b00451, 0xbfef4e603b0b2f2d, // -0.20711, -0.97832
+ 0xbfc8f8b83c69a60a, 0xbfef6297cff75cb0, // -0.19509, -0.98079
+ 0xbfc76dd9de50bf31, 0xbfef7599a3a12077, // -0.18304, -0.98311
+ 0xbfc5e214448b3fc6, 0xbfef8764fa714ba9, // -0.17096, -0.98528
+ 0xbfc45576b1293e5a, 0xbfef97f924c9099b, // -0.15886, -0.9873
+ 0xbfc2c8106e8e613a, 0xbfefa7557f08a517, // -0.14673, -0.98918
+ 0xbfc139f0cedaf576, 0xbfefb5797195d741, // -0.13458, -0.9909
+ 0xbfbf564e56a9730e, 0xbfefc26470e19fd3, // -0.12241, -0.99248
+ 0xbfbc3785c79ec2d5, 0xbfefce15fd6da67b, // -0.11022, -0.99391
+ 0xbfb917a6bc29b42c, 0xbfefd88da3d12526, //-0.098017, -0.99518
+ 0xbfb5f6d00a9aa419, 0xbfefe1cafcbd5b09, //-0.085797, -0.99631
+ 0xbfb2d52092ce19f6, 0xbfefe9cdad01883a, //-0.073565, -0.99729
+ 0xbfaf656e79f820e0, 0xbfeff095658e71ad, //-0.061321, -0.99812
+ 0xbfa91f65f10dd814, 0xbfeff621e3796d7e, //-0.049068, -0.9988
+ 0xbfa2d865759455cd, 0xbfeffa72effef75d, //-0.036807, -0.99932
+ 0xbf992155f7a3667e, 0xbfeffd886084cd0d, //-0.024541, -0.9997
+ 0xbf8921d1fcdec784, 0xbfefff62169b92db, //-0.012272, -0.99992
+ 0x0000000000000000, 0xbff0000000000000, // 0, -1
+ 0x3f8921d1fcdec784, 0xbfefff62169b92db, // 0.012272, -0.99992
+ 0x3f992155f7a3667e, 0xbfeffd886084cd0d, // 0.024541, -0.9997
+ 0x3fa2d865759455cd, 0xbfeffa72effef75d, // 0.036807, -0.99932
+ 0x3fa91f65f10dd814, 0xbfeff621e3796d7e, // 0.049068, -0.9988
+ 0x3faf656e79f820e0, 0xbfeff095658e71ad, // 0.061321, -0.99812
+ 0x3fb2d52092ce19f6, 0xbfefe9cdad01883a, // 0.073565, -0.99729
+ 0x3fb5f6d00a9aa419, 0xbfefe1cafcbd5b09, // 0.085797, -0.99631
+ 0x3fb917a6bc29b42c, 0xbfefd88da3d12526, // 0.098017, -0.99518
+ 0x3fbc3785c79ec2d5, 0xbfefce15fd6da67b, // 0.11022, -0.99391
+ 0x3fbf564e56a9730e, 0xbfefc26470e19fd3, // 0.12241, -0.99248
+ 0x3fc139f0cedaf576, 0xbfefb5797195d741, // 0.13458, -0.9909
+ 0x3fc2c8106e8e613a, 0xbfefa7557f08a517, // 0.14673, -0.98918
+ 0x3fc45576b1293e5a, 0xbfef97f924c9099b, // 0.15886, -0.9873
+ 0x3fc5e214448b3fc6, 0xbfef8764fa714ba9, // 0.17096, -0.98528
+ 0x3fc76dd9de50bf31, 0xbfef7599a3a12077, // 0.18304, -0.98311
+ 0x3fc8f8b83c69a60a, 0xbfef6297cff75cb0, // 0.19509, -0.98079
+ 0x3fca82a025b00451, 0xbfef4e603b0b2f2d, // 0.20711, -0.97832
+ 0x3fcc0b826a7e4f63, 0xbfef38f3ac64e589, // 0.2191, -0.9757
+ 0x3fcd934fe5454311, 0xbfef2252f7763ada, // 0.23106, -0.97294
+ 0x3fcf19f97b215f1a, 0xbfef0a7efb9230d7, // 0.24298, -0.97003
+ 0x3fd04fb80e37fdae, 0xbfeef178a3e473c2, // 0.25487, -0.96698
+ 0x3fd111d262b1f677, 0xbfeed740e7684963, // 0.26671, -0.96378
+ 0x3fd1d3443f4cdb3d, 0xbfeebbd8c8df0b74, // 0.27852, -0.96043
+ 0x3fd294062ed59f05, 0xbfee9f4156c62dda, // 0.29028, -0.95694
+ 0x3fd35410c2e18152, 0xbfee817bab4cd10d, // 0.30201, -0.95331
+ 0x3fd4135c94176602, 0xbfee6288ec48e112, // 0.31368, -0.94953
+ 0x3fd4d1e24278e76a, 0xbfee426a4b2bc17e, // 0.32531, -0.94561
+ 0x3fd58f9a75ab1fdd, 0xbfee212104f686e5, // 0.33689, -0.94154
+ 0x3fd64c7ddd3f27c6, 0xbfedfeae622dbe2b, // 0.34842, -0.93734
+ 0x3fd7088530fa459e, 0xbfeddb13b6ccc23d, // 0.3599, -0.93299
+ 0x3fd7c3a9311dcce7, 0xbfedb6526238a09b, // 0.37132, -0.92851
+ 0x3fd87de2a6aea963, 0xbfed906bcf328d46, // 0.38268, -0.92388
+ 0x3fd9372a63bc93d7, 0xbfed696173c9e68b, // 0.39399, -0.91911
+ 0x3fd9ef7943a8ed8a, 0xbfed4134d14dc93a, // 0.40524, -0.91421
+ 0x3fdaa6c82b6d3fc9, 0xbfed17e7743e35dc, // 0.41643, -0.90917
+ 0x3fdb5d1009e15cc0, 0xbfeced7af43cc773, // 0.42756, -0.90399
+ 0x3fdc1249d8011ee7, 0xbfecc1f0f3fcfc5c, // 0.43862, -0.89867
+ 0x3fdcc66e9931c45d, 0xbfec954b213411f5, // 0.44961, -0.89322
+ 0x3fdd79775b86e389, 0xbfec678b3488739b, // 0.46054, -0.88764
+ 0x3fde2b5d3806f63b, 0xbfec38b2f180bdb1, // 0.4714, -0.88192
+ 0x3fdedc1952ef78d5, 0xbfec08c426725549, // 0.48218, -0.87607
+ 0x3fdf8ba4dbf89aba, 0xbfebd7c0ac6f952a, // 0.4929, -0.87009
+ 0x3fe01cfc874c3eb7, 0xbfeba5aa673590d2, // 0.50354, -0.86397
+ 0x3fe073879922ffed, 0xbfeb728345196e3e, // 0.5141, -0.85773
+ 0x3fe0c9704d5d898f, 0xbfeb3e4d3ef55712, // 0.52459, -0.85136
+ 0x3fe11eb3541b4b22, 0xbfeb090a58150200, // 0.535, -0.84485
+ 0x3fe1734d63dedb49, 0xbfead2bc9e21d511, // 0.54532, -0.83822
+ 0x3fe1c73b39ae68c8, 0xbfea9b66290ea1a3, // 0.55557, -0.83147
+ 0x3fe21a799933eb58, 0xbfea63091b02fae2, // 0.56573, -0.82459
+ 0x3fe26d054cdd12df, 0xbfea29a7a0462782, // 0.57581, -0.81758
+ 0x3fe2bedb25faf3ea, 0xbfe9ef43ef29af94, // 0.5858, -0.81046
+ 0x3fe30ff7fce17035, 0xbfe9b3e047f38741, // 0.5957, -0.80321
+ 0x3fe36058b10659f3, 0xbfe9777ef4c7d742, // 0.60551, -0.79584
+ 0x3fe3affa292050b9, 0xbfe93a22499263fc, // 0.61523, -0.78835
+ 0x3fe3fed9534556d4, 0xbfe8fbcca3ef940d, // 0.62486, -0.78074
+ 0x3fe44cf325091dd6, 0xbfe8bc806b151741, // 0.63439, -0.77301
+ 0x3fe49a449b9b0938, 0xbfe87c400fba2ebf, // 0.64383, -0.76517
+ 0x3fe4e6cabbe3e5e9, 0xbfe83b0e0bff976e, // 0.65317, -0.75721
+ 0x3fe5328292a35596, 0xbfe7f8ece3571771, // 0.66242, -0.74914
+ 0x3fe57d69348cec9f, 0xbfe7b5df226aafb0, // 0.67156, -0.74095
+ 0x3fe5c77bbe65018c, 0xbfe771e75f037261, // 0.6806, -0.73265
+ 0x3fe610b7551d2cde, 0xbfe72d0837efff97, // 0.68954, -0.72425
+ 0x3fe6591925f0783e, 0xbfe6e74454eaa8ae, // 0.69838, -0.71573
+ 0x3fe6a09e667f3bcc, 0xbfe6a09e667f3bcc, // 0.70711, -0.70711
+ 0x3fe6e74454eaa8ae, 0xbfe6591925f0783e, // 0.71573, -0.69838
+ 0x3fe72d0837efff97, 0xbfe610b7551d2cde, // 0.72425, -0.68954
+ 0x3fe771e75f037261, 0xbfe5c77bbe65018c, // 0.73265, -0.6806
+ 0x3fe7b5df226aafb0, 0xbfe57d69348cec9f, // 0.74095, -0.67156
+ 0x3fe7f8ece3571771, 0xbfe5328292a35596, // 0.74914, -0.66242
+ 0x3fe83b0e0bff976e, 0xbfe4e6cabbe3e5e9, // 0.75721, -0.65317
+ 0x3fe87c400fba2ebf, 0xbfe49a449b9b0938, // 0.76517, -0.64383
+ 0x3fe8bc806b151741, 0xbfe44cf325091dd6, // 0.77301, -0.63439
+ 0x3fe8fbcca3ef940d, 0xbfe3fed9534556d4, // 0.78074, -0.62486
+ 0x3fe93a22499263fc, 0xbfe3affa292050b9, // 0.78835, -0.61523
+ 0x3fe9777ef4c7d742, 0xbfe36058b10659f3, // 0.79584, -0.60551
+ 0x3fe9b3e047f38741, 0xbfe30ff7fce17035, // 0.80321, -0.5957
+ 0x3fe9ef43ef29af94, 0xbfe2bedb25faf3ea, // 0.81046, -0.5858
+ 0x3fea29a7a0462782, 0xbfe26d054cdd12df, // 0.81758, -0.57581
+ 0x3fea63091b02fae2, 0xbfe21a799933eb58, // 0.82459, -0.56573
+ 0x3fea9b66290ea1a3, 0xbfe1c73b39ae68c8, // 0.83147, -0.55557
+ 0x3fead2bc9e21d511, 0xbfe1734d63dedb49, // 0.83822, -0.54532
+ 0x3feb090a58150200, 0xbfe11eb3541b4b22, // 0.84485, -0.535
+ 0x3feb3e4d3ef55712, 0xbfe0c9704d5d898f, // 0.85136, -0.52459
+ 0x3feb728345196e3e, 0xbfe073879922ffed, // 0.85773, -0.5141
+ 0x3feba5aa673590d2, 0xbfe01cfc874c3eb7, // 0.86397, -0.50354
+ 0x3febd7c0ac6f952a, 0xbfdf8ba4dbf89aba, // 0.87009, -0.4929
+ 0x3fec08c426725549, 0xbfdedc1952ef78d5, // 0.87607, -0.48218
+ 0x3fec38b2f180bdb1, 0xbfde2b5d3806f63b, // 0.88192, -0.4714
+ 0x3fec678b3488739b, 0xbfdd79775b86e389, // 0.88764, -0.46054
+ 0x3fec954b213411f5, 0xbfdcc66e9931c45d, // 0.89322, -0.44961
+ 0x3fecc1f0f3fcfc5c, 0xbfdc1249d8011ee7, // 0.89867, -0.43862
+ 0x3feced7af43cc773, 0xbfdb5d1009e15cc0, // 0.90399, -0.42756
+ 0x3fed17e7743e35dc, 0xbfdaa6c82b6d3fc9, // 0.90917, -0.41643
+ 0x3fed4134d14dc93a, 0xbfd9ef7943a8ed8a, // 0.91421, -0.40524
+ 0x3fed696173c9e68b, 0xbfd9372a63bc93d7, // 0.91911, -0.39399
+ 0x3fed906bcf328d46, 0xbfd87de2a6aea963, // 0.92388, -0.38268
+ 0x3fedb6526238a09b, 0xbfd7c3a9311dcce7, // 0.92851, -0.37132
+ 0x3feddb13b6ccc23d, 0xbfd7088530fa459e, // 0.93299, -0.3599
+ 0x3fedfeae622dbe2b, 0xbfd64c7ddd3f27c6, // 0.93734, -0.34842
+ 0x3fee212104f686e5, 0xbfd58f9a75ab1fdd, // 0.94154, -0.33689
+ 0x3fee426a4b2bc17e, 0xbfd4d1e24278e76a, // 0.94561, -0.32531
+ 0x3fee6288ec48e112, 0xbfd4135c94176602, // 0.94953, -0.31368
+ 0x3fee817bab4cd10d, 0xbfd35410c2e18152, // 0.95331, -0.30201
+ 0x3fee9f4156c62dda, 0xbfd294062ed59f05, // 0.95694, -0.29028
+ 0x3feebbd8c8df0b74, 0xbfd1d3443f4cdb3d, // 0.96043, -0.27852
+ 0x3feed740e7684963, 0xbfd111d262b1f677, // 0.96378, -0.26671
+ 0x3feef178a3e473c2, 0xbfd04fb80e37fdae, // 0.96698, -0.25487
+ 0x3fef0a7efb9230d7, 0xbfcf19f97b215f1a, // 0.97003, -0.24298
+ 0x3fef2252f7763ada, 0xbfcd934fe5454311, // 0.97294, -0.23106
+ 0x3fef38f3ac64e589, 0xbfcc0b826a7e4f63, // 0.9757, -0.2191
+ 0x3fef4e603b0b2f2d, 0xbfca82a025b00451, // 0.97832, -0.20711
+ 0x3fef6297cff75cb0, 0xbfc8f8b83c69a60a, // 0.98079, -0.19509
+ 0x3fef7599a3a12077, 0xbfc76dd9de50bf31, // 0.98311, -0.18304
+ 0x3fef8764fa714ba9, 0xbfc5e214448b3fc6, // 0.98528, -0.17096
+ 0x3fef97f924c9099b, 0xbfc45576b1293e5a, // 0.9873, -0.15886
+ 0x3fefa7557f08a517, 0xbfc2c8106e8e613a, // 0.98918, -0.14673
+ 0x3fefb5797195d741, 0xbfc139f0cedaf576, // 0.9909, -0.13458
+ 0x3fefc26470e19fd3, 0xbfbf564e56a9730e, // 0.99248, -0.12241
+ 0x3fefce15fd6da67b, 0xbfbc3785c79ec2d5, // 0.99391, -0.11022
+ 0x3fefd88da3d12526, 0xbfb917a6bc29b42c, // 0.99518,-0.098017
+ 0x3fefe1cafcbd5b09, 0xbfb5f6d00a9aa419, // 0.99631,-0.085797
+ 0x3fefe9cdad01883a, 0xbfb2d52092ce19f6, // 0.99729,-0.073565
+ 0x3feff095658e71ad, 0xbfaf656e79f820e0, // 0.99812,-0.061321
+ 0x3feff621e3796d7e, 0xbfa91f65f10dd814, // 0.9988,-0.049068
+ 0x3feffa72effef75d, 0xbfa2d865759455cd, // 0.99932,-0.036807
+ 0x3feffd886084cd0d, 0xbf992155f7a3667e, // 0.9997,-0.024541
+ 0x3fefff62169b92db, 0xbf8921d1fcdec784, // 0.99992,-0.012272
+};
+
+#endif /* !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) */
+
+#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || defined(ARM_TABLE_TWIDDLECOEF_F64_1024)
+/**
+ @par
+ Example code for Double Precision Floating-point Twiddle factors Generation:
+ @par
+ <pre>for (i = 0; i< N/; i++)
+ {
+ twiddleCoef[2*i] = cos(i * 2*PI/(float)N);
+ twiddleCoef[2*i+1] = sin(i * 2*PI/(float)N);
+ } </pre>
+ @par
+ where N = 1024, PI = 3.14159265358979
+ @par
+ Cos and Sin values are in interleaved fashion
+*/
+const uint64_t twiddleCoefF64_1024[2048] = {
+ 0x3ff0000000000000, 0x0000000000000000, // 1, 0
+ 0x3fefffd8858e8a92, 0x3f7921f0fe670071, // 0.99998, 0.0061359
+ 0x3fefff62169b92db, 0x3f8921d1fcdec784, // 0.99992, 0.012272
+ 0x3feffe9cb44b51a1, 0x3f92d936bbe30efd, // 0.99983, 0.018407
+ 0x3feffd886084cd0d, 0x3f992155f7a3667e, // 0.9997, 0.024541
+ 0x3feffc251df1d3f8, 0x3f9f693731d1cf01, // 0.99953, 0.030675
+ 0x3feffa72effef75d, 0x3fa2d865759455cd, // 0.99932, 0.036807
+ 0x3feff871dadb81df, 0x3fa5fc00d290cd43, // 0.99908, 0.042938
+ 0x3feff621e3796d7e, 0x3fa91f65f10dd814, // 0.9988, 0.049068
+ 0x3feff3830f8d575c, 0x3fac428d12c0d7e3, // 0.99848, 0.055195
+ 0x3feff095658e71ad, 0x3faf656e79f820e0, // 0.99812, 0.061321
+ 0x3fefed58ecb673c4, 0x3fb1440134d709b2, // 0.99772, 0.067444
+ 0x3fefe9cdad01883a, 0x3fb2d52092ce19f6, // 0.99729, 0.073565
+ 0x3fefe5f3af2e3940, 0x3fb4661179272096, // 0.99682, 0.079682
+ 0x3fefe1cafcbd5b09, 0x3fb5f6d00a9aa419, // 0.99631, 0.085797
+ 0x3fefdd539ff1f456, 0x3fb787586a5d5b21, // 0.99577, 0.091909
+ 0x3fefd88da3d12526, 0x3fb917a6bc29b42c, // 0.99518, 0.098017
+ 0x3fefd37914220b84, 0x3fbaa7b724495c04, // 0.99456, 0.10412
+ 0x3fefce15fd6da67b, 0x3fbc3785c79ec2d5, // 0.99391, 0.11022
+ 0x3fefc8646cfeb721, 0x3fbdc70ecbae9fc8, // 0.99321, 0.11632
+ 0x3fefc26470e19fd3, 0x3fbf564e56a9730e, // 0.99248, 0.12241
+ 0x3fefbc1617e44186, 0x3fc072a047ba831d, // 0.99171, 0.1285
+ 0x3fefb5797195d741, 0x3fc139f0cedaf576, // 0.9909, 0.13458
+ 0x3fefae8e8e46cfbb, 0x3fc20116d4ec7bce, // 0.99006, 0.14066
+ 0x3fefa7557f08a517, 0x3fc2c8106e8e613a, // 0.98918, 0.14673
+ 0x3fef9fce55adb2c8, 0x3fc38edbb0cd8d14, // 0.98826, 0.1528
+ 0x3fef97f924c9099b, 0x3fc45576b1293e5a, // 0.9873, 0.15886
+ 0x3fef8fd5ffae41db, 0x3fc51bdf8597c5f2, // 0.98631, 0.16491
+ 0x3fef8764fa714ba9, 0x3fc5e214448b3fc6, // 0.98528, 0.17096
+ 0x3fef7ea629e63d6e, 0x3fc6a81304f64ab2, // 0.98421, 0.177
+ 0x3fef7599a3a12077, 0x3fc76dd9de50bf31, // 0.98311, 0.18304
+ 0x3fef6c3f7df5bbb7, 0x3fc83366e89c64c5, // 0.98196, 0.18907
+ 0x3fef6297cff75cb0, 0x3fc8f8b83c69a60a, // 0.98079, 0.19509
+ 0x3fef58a2b1789e84, 0x3fc9bdcbf2dc4366, // 0.97957, 0.2011
+ 0x3fef4e603b0b2f2d, 0x3fca82a025b00451, // 0.97832, 0.20711
+ 0x3fef43d085ff92dd, 0x3fcb4732ef3d6722, // 0.97703, 0.21311
+ 0x3fef38f3ac64e589, 0x3fcc0b826a7e4f63, // 0.9757, 0.2191
+ 0x3fef2dc9c9089a9d, 0x3fcccf8cb312b286, // 0.97434, 0.22508
+ 0x3fef2252f7763ada, 0x3fcd934fe5454311, // 0.97294, 0.23106
+ 0x3fef168f53f7205d, 0x3fce56ca1e101a1b, // 0.9715, 0.23702
+ 0x3fef0a7efb9230d7, 0x3fcf19f97b215f1a, // 0.97003, 0.24298
+ 0x3feefe220c0b95ec, 0x3fcfdcdc1adfedf8, // 0.96852, 0.24893
+ 0x3feef178a3e473c2, 0x3fd04fb80e37fdae, // 0.96698, 0.25487
+ 0x3feee482e25a9dbc, 0x3fd0b0d9cfdbdb90, // 0.96539, 0.26079
+ 0x3feed740e7684963, 0x3fd111d262b1f677, // 0.96378, 0.26671
+ 0x3feec9b2d3c3bf84, 0x3fd172a0d7765177, // 0.96212, 0.27262
+ 0x3feebbd8c8df0b74, 0x3fd1d3443f4cdb3d, // 0.96043, 0.27852
+ 0x3feeadb2e8e7a88e, 0x3fd233bbabc3bb72, // 0.9587, 0.28441
+ 0x3fee9f4156c62dda, 0x3fd294062ed59f05, // 0.95694, 0.29028
+ 0x3fee9084361df7f3, 0x3fd2f422daec0386, // 0.95514, 0.29615
+ 0x3fee817bab4cd10d, 0x3fd35410c2e18152, // 0.95331, 0.30201
+ 0x3fee7227db6a9744, 0x3fd3b3cefa0414b7, // 0.95144, 0.30785
+ 0x3fee6288ec48e112, 0x3fd4135c94176602, // 0.94953, 0.31368
+ 0x3fee529f04729ffc, 0x3fd472b8a5571054, // 0.94759, 0.3195
+ 0x3fee426a4b2bc17e, 0x3fd4d1e24278e76a, // 0.94561, 0.32531
+ 0x3fee31eae870ce25, 0x3fd530d880af3c24, // 0.94359, 0.33111
+ 0x3fee212104f686e5, 0x3fd58f9a75ab1fdd, // 0.94154, 0.33689
+ 0x3fee100cca2980ac, 0x3fd5ee27379ea693, // 0.93946, 0.34266
+ 0x3fedfeae622dbe2b, 0x3fd64c7ddd3f27c6, // 0.93734, 0.34842
+ 0x3feded05f7de47da, 0x3fd6aa9d7dc77e16, // 0.93518, 0.35416
+ 0x3feddb13b6ccc23d, 0x3fd7088530fa459e, // 0.93299, 0.3599
+ 0x3fedc8d7cb410260, 0x3fd766340f2418f6, // 0.93077, 0.36561
+ 0x3fedb6526238a09b, 0x3fd7c3a9311dcce7, // 0.92851, 0.37132
+ 0x3feda383a9668988, 0x3fd820e3b04eaac4, // 0.92621, 0.37701
+ 0x3fed906bcf328d46, 0x3fd87de2a6aea963, // 0.92388, 0.38268
+ 0x3fed7d0b02b8ecf9, 0x3fd8daa52ec8a4af, // 0.92151, 0.38835
+ 0x3fed696173c9e68b, 0x3fd9372a63bc93d7, // 0.91911, 0.39399
+ 0x3fed556f52e93eb1, 0x3fd993716141bdfe, // 0.91668, 0.39962
+ 0x3fed4134d14dc93a, 0x3fd9ef7943a8ed8a, // 0.91421, 0.40524
+ 0x3fed2cb220e0ef9f, 0x3fda4b4127dea1e4, // 0.91171, 0.41084
+ 0x3fed17e7743e35dc, 0x3fdaa6c82b6d3fc9, // 0.90917, 0.41643
+ 0x3fed02d4feb2bd92, 0x3fdb020d6c7f4009, // 0.9066, 0.422
+ 0x3feced7af43cc773, 0x3fdb5d1009e15cc0, // 0.90399, 0.42756
+ 0x3fecd7d9898b32f6, 0x3fdbb7cf2304bd01, // 0.90135, 0.43309
+ 0x3fecc1f0f3fcfc5c, 0x3fdc1249d8011ee7, // 0.89867, 0.43862
+ 0x3fecabc169a0b901, 0x3fdc6c7f4997000a, // 0.89597, 0.44412
+ 0x3fec954b213411f5, 0x3fdcc66e9931c45d, // 0.89322, 0.44961
+ 0x3fec7e8e52233cf3, 0x3fdd2016e8e9db5b, // 0.89045, 0.45508
+ 0x3fec678b3488739b, 0x3fdd79775b86e389, // 0.88764, 0.46054
+ 0x3fec5042012b6907, 0x3fddd28f1481cc58, // 0.8848, 0.46598
+ 0x3fec38b2f180bdb1, 0x3fde2b5d3806f63b, // 0.88192, 0.4714
+ 0x3fec20de3fa971b0, 0x3fde83e0eaf85113, // 0.87901, 0.4768
+ 0x3fec08c426725549, 0x3fdedc1952ef78d5, // 0.87607, 0.48218
+ 0x3febf064e15377dd, 0x3fdf3405963fd068, // 0.87309, 0.48755
+ 0x3febd7c0ac6f952a, 0x3fdf8ba4dbf89aba, // 0.87009, 0.4929
+ 0x3febbed7c49380ea, 0x3fdfe2f64be7120f, // 0.86705, 0.49823
+ 0x3feba5aa673590d2, 0x3fe01cfc874c3eb7, // 0.86397, 0.50354
+ 0x3feb8c38d27504e9, 0x3fe0485626ae221a, // 0.86087, 0.50883
+ 0x3feb728345196e3e, 0x3fe073879922ffed, // 0.85773, 0.5141
+ 0x3feb5889fe921405, 0x3fe09e907417c5e1, // 0.85456, 0.51936
+ 0x3feb3e4d3ef55712, 0x3fe0c9704d5d898f, // 0.85136, 0.52459
+ 0x3feb23cd470013b4, 0x3fe0f426bb2a8e7d, // 0.84812, 0.5298
+ 0x3feb090a58150200, 0x3fe11eb3541b4b22, // 0.84485, 0.535
+ 0x3feaee04b43c1474, 0x3fe14915af336ceb, // 0.84155, 0.54017
+ 0x3fead2bc9e21d511, 0x3fe1734d63dedb49, // 0.83822, 0.54532
+ 0x3feab7325916c0d4, 0x3fe19d5a09f2b9b8, // 0.83486, 0.55046
+ 0x3fea9b66290ea1a3, 0x3fe1c73b39ae68c8, // 0.83147, 0.55557
+ 0x3fea7f58529fe69d, 0x3fe1f0f08bbc861b, // 0.82805, 0.56066
+ 0x3fea63091b02fae2, 0x3fe21a799933eb58, // 0.82459, 0.56573
+ 0x3fea4678c8119ac8, 0x3fe243d5fb98ac1f, // 0.8211, 0.57078
+ 0x3fea29a7a0462782, 0x3fe26d054cdd12df, // 0.81758, 0.57581
+ 0x3fea0c95eabaf937, 0x3fe2960727629ca8, // 0.81404, 0.58081
+ 0x3fe9ef43ef29af94, 0x3fe2bedb25faf3ea, // 0.81046, 0.5858
+ 0x3fe9d1b1f5ea80d6, 0x3fe2e780e3e8ea16, // 0.80685, 0.59076
+ 0x3fe9b3e047f38741, 0x3fe30ff7fce17035, // 0.80321, 0.5957
+ 0x3fe995cf2ed80d22, 0x3fe338400d0c8e57, // 0.79954, 0.60062
+ 0x3fe9777ef4c7d742, 0x3fe36058b10659f3, // 0.79584, 0.60551
+ 0x3fe958efe48e6dd7, 0x3fe3884185dfeb22, // 0.79211, 0.61038
+ 0x3fe93a22499263fc, 0x3fe3affa292050b9, // 0.78835, 0.61523
+ 0x3fe91b166fd49da2, 0x3fe3d78238c58343, // 0.78456, 0.62006
+ 0x3fe8fbcca3ef940d, 0x3fe3fed9534556d4, // 0.78074, 0.62486
+ 0x3fe8dc45331698cc, 0x3fe425ff178e6bb1, // 0.77689, 0.62964
+ 0x3fe8bc806b151741, 0x3fe44cf325091dd6, // 0.77301, 0.63439
+ 0x3fe89c7e9a4dd4ab, 0x3fe473b51b987347, // 0.7691, 0.63912
+ 0x3fe87c400fba2ebf, 0x3fe49a449b9b0938, // 0.76517, 0.64383
+ 0x3fe85bc51ae958cc, 0x3fe4c0a145ec0004, // 0.7612, 0.64851
+ 0x3fe83b0e0bff976e, 0x3fe4e6cabbe3e5e9, // 0.75721, 0.65317
+ 0x3fe81a1b33b57acc, 0x3fe50cc09f59a09b, // 0.75319, 0.65781
+ 0x3fe7f8ece3571771, 0x3fe5328292a35596, // 0.74914, 0.66242
+ 0x3fe7d7836cc33db2, 0x3fe5581038975137, // 0.74506, 0.667
+ 0x3fe7b5df226aafb0, 0x3fe57d69348cec9f, // 0.74095, 0.67156
+ 0x3fe79400574f55e4, 0x3fe5a28d2a5d7250, // 0.73682, 0.67609
+ 0x3fe771e75f037261, 0x3fe5c77bbe65018c, // 0.73265, 0.6806
+ 0x3fe74f948da8d28d, 0x3fe5ec3495837074, // 0.72846, 0.68508
+ 0x3fe72d0837efff97, 0x3fe610b7551d2cde, // 0.72425, 0.68954
+ 0x3fe70a42b3176d7a, 0x3fe63503a31c1be8, // 0.72, 0.69397
+ 0x3fe6e74454eaa8ae, 0x3fe6591925f0783e, // 0.71573, 0.69838
+ 0x3fe6c40d73c18275, 0x3fe67cf78491af10, // 0.71143, 0.70275
+ 0x3fe6a09e667f3bcc, 0x3fe6a09e667f3bcc, // 0.70711, 0.70711
+ 0x3fe67cf78491af10, 0x3fe6c40d73c18275, // 0.70275, 0.71143
+ 0x3fe6591925f0783e, 0x3fe6e74454eaa8ae, // 0.69838, 0.71573
+ 0x3fe63503a31c1be8, 0x3fe70a42b3176d7a, // 0.69397, 0.72
+ 0x3fe610b7551d2cde, 0x3fe72d0837efff97, // 0.68954, 0.72425
+ 0x3fe5ec3495837074, 0x3fe74f948da8d28d, // 0.68508, 0.72846
+ 0x3fe5c77bbe65018c, 0x3fe771e75f037261, // 0.6806, 0.73265
+ 0x3fe5a28d2a5d7250, 0x3fe79400574f55e4, // 0.67609, 0.73682
+ 0x3fe57d69348cec9f, 0x3fe7b5df226aafb0, // 0.67156, 0.74095
+ 0x3fe5581038975137, 0x3fe7d7836cc33db2, // 0.667, 0.74506
+ 0x3fe5328292a35596, 0x3fe7f8ece3571771, // 0.66242, 0.74914
+ 0x3fe50cc09f59a09b, 0x3fe81a1b33b57acc, // 0.65781, 0.75319
+ 0x3fe4e6cabbe3e5e9, 0x3fe83b0e0bff976e, // 0.65317, 0.75721
+ 0x3fe4c0a145ec0004, 0x3fe85bc51ae958cc, // 0.64851, 0.7612
+ 0x3fe49a449b9b0938, 0x3fe87c400fba2ebf, // 0.64383, 0.76517
+ 0x3fe473b51b987347, 0x3fe89c7e9a4dd4ab, // 0.63912, 0.7691
+ 0x3fe44cf325091dd6, 0x3fe8bc806b151741, // 0.63439, 0.77301
+ 0x3fe425ff178e6bb1, 0x3fe8dc45331698cc, // 0.62964, 0.77689
+ 0x3fe3fed9534556d4, 0x3fe8fbcca3ef940d, // 0.62486, 0.78074
+ 0x3fe3d78238c58343, 0x3fe91b166fd49da2, // 0.62006, 0.78456
+ 0x3fe3affa292050b9, 0x3fe93a22499263fc, // 0.61523, 0.78835
+ 0x3fe3884185dfeb22, 0x3fe958efe48e6dd7, // 0.61038, 0.79211
+ 0x3fe36058b10659f3, 0x3fe9777ef4c7d742, // 0.60551, 0.79584
+ 0x3fe338400d0c8e57, 0x3fe995cf2ed80d22, // 0.60062, 0.79954
+ 0x3fe30ff7fce17035, 0x3fe9b3e047f38741, // 0.5957, 0.80321
+ 0x3fe2e780e3e8ea16, 0x3fe9d1b1f5ea80d6, // 0.59076, 0.80685
+ 0x3fe2bedb25faf3ea, 0x3fe9ef43ef29af94, // 0.5858, 0.81046
+ 0x3fe2960727629ca8, 0x3fea0c95eabaf937, // 0.58081, 0.81404
+ 0x3fe26d054cdd12df, 0x3fea29a7a0462782, // 0.57581, 0.81758
+ 0x3fe243d5fb98ac1f, 0x3fea4678c8119ac8, // 0.57078, 0.8211
+ 0x3fe21a799933eb58, 0x3fea63091b02fae2, // 0.56573, 0.82459
+ 0x3fe1f0f08bbc861b, 0x3fea7f58529fe69d, // 0.56066, 0.82805
+ 0x3fe1c73b39ae68c8, 0x3fea9b66290ea1a3, // 0.55557, 0.83147
+ 0x3fe19d5a09f2b9b8, 0x3feab7325916c0d4, // 0.55046, 0.83486
+ 0x3fe1734d63dedb49, 0x3fead2bc9e21d511, // 0.54532, 0.83822
+ 0x3fe14915af336ceb, 0x3feaee04b43c1474, // 0.54017, 0.84155
+ 0x3fe11eb3541b4b22, 0x3feb090a58150200, // 0.535, 0.84485
+ 0x3fe0f426bb2a8e7d, 0x3feb23cd470013b4, // 0.5298, 0.84812
+ 0x3fe0c9704d5d898f, 0x3feb3e4d3ef55712, // 0.52459, 0.85136
+ 0x3fe09e907417c5e1, 0x3feb5889fe921405, // 0.51936, 0.85456
+ 0x3fe073879922ffed, 0x3feb728345196e3e, // 0.5141, 0.85773
+ 0x3fe0485626ae221a, 0x3feb8c38d27504e9, // 0.50883, 0.86087
+ 0x3fe01cfc874c3eb7, 0x3feba5aa673590d2, // 0.50354, 0.86397
+ 0x3fdfe2f64be7120f, 0x3febbed7c49380ea, // 0.49823, 0.86705
+ 0x3fdf8ba4dbf89aba, 0x3febd7c0ac6f952a, // 0.4929, 0.87009
+ 0x3fdf3405963fd068, 0x3febf064e15377dd, // 0.48755, 0.87309
+ 0x3fdedc1952ef78d5, 0x3fec08c426725549, // 0.48218, 0.87607
+ 0x3fde83e0eaf85113, 0x3fec20de3fa971b0, // 0.4768, 0.87901
+ 0x3fde2b5d3806f63b, 0x3fec38b2f180bdb1, // 0.4714, 0.88192
+ 0x3fddd28f1481cc58, 0x3fec5042012b6907, // 0.46598, 0.8848
+ 0x3fdd79775b86e389, 0x3fec678b3488739b, // 0.46054, 0.88764
+ 0x3fdd2016e8e9db5b, 0x3fec7e8e52233cf3, // 0.45508, 0.89045
+ 0x3fdcc66e9931c45d, 0x3fec954b213411f5, // 0.44961, 0.89322
+ 0x3fdc6c7f4997000a, 0x3fecabc169a0b901, // 0.44412, 0.89597
+ 0x3fdc1249d8011ee7, 0x3fecc1f0f3fcfc5c, // 0.43862, 0.89867
+ 0x3fdbb7cf2304bd01, 0x3fecd7d9898b32f6, // 0.43309, 0.90135
+ 0x3fdb5d1009e15cc0, 0x3feced7af43cc773, // 0.42756, 0.90399
+ 0x3fdb020d6c7f4009, 0x3fed02d4feb2bd92, // 0.422, 0.9066
+ 0x3fdaa6c82b6d3fc9, 0x3fed17e7743e35dc, // 0.41643, 0.90917
+ 0x3fda4b4127dea1e4, 0x3fed2cb220e0ef9f, // 0.41084, 0.91171
+ 0x3fd9ef7943a8ed8a, 0x3fed4134d14dc93a, // 0.40524, 0.91421
+ 0x3fd993716141bdfe, 0x3fed556f52e93eb1, // 0.39962, 0.91668
+ 0x3fd9372a63bc93d7, 0x3fed696173c9e68b, // 0.39399, 0.91911
+ 0x3fd8daa52ec8a4af, 0x3fed7d0b02b8ecf9, // 0.38835, 0.92151
+ 0x3fd87de2a6aea963, 0x3fed906bcf328d46, // 0.38268, 0.92388
+ 0x3fd820e3b04eaac4, 0x3feda383a9668988, // 0.37701, 0.92621
+ 0x3fd7c3a9311dcce7, 0x3fedb6526238a09b, // 0.37132, 0.92851
+ 0x3fd766340f2418f6, 0x3fedc8d7cb410260, // 0.36561, 0.93077
+ 0x3fd7088530fa459e, 0x3feddb13b6ccc23d, // 0.3599, 0.93299
+ 0x3fd6aa9d7dc77e16, 0x3feded05f7de47da, // 0.35416, 0.93518
+ 0x3fd64c7ddd3f27c6, 0x3fedfeae622dbe2b, // 0.34842, 0.93734
+ 0x3fd5ee27379ea693, 0x3fee100cca2980ac, // 0.34266, 0.93946
+ 0x3fd58f9a75ab1fdd, 0x3fee212104f686e5, // 0.33689, 0.94154
+ 0x3fd530d880af3c24, 0x3fee31eae870ce25, // 0.33111, 0.94359
+ 0x3fd4d1e24278e76a, 0x3fee426a4b2bc17e, // 0.32531, 0.94561
+ 0x3fd472b8a5571054, 0x3fee529f04729ffc, // 0.3195, 0.94759
+ 0x3fd4135c94176602, 0x3fee6288ec48e112, // 0.31368, 0.94953
+ 0x3fd3b3cefa0414b7, 0x3fee7227db6a9744, // 0.30785, 0.95144
+ 0x3fd35410c2e18152, 0x3fee817bab4cd10d, // 0.30201, 0.95331
+ 0x3fd2f422daec0386, 0x3fee9084361df7f3, // 0.29615, 0.95514
+ 0x3fd294062ed59f05, 0x3fee9f4156c62dda, // 0.29028, 0.95694
+ 0x3fd233bbabc3bb72, 0x3feeadb2e8e7a88e, // 0.28441, 0.9587
+ 0x3fd1d3443f4cdb3d, 0x3feebbd8c8df0b74, // 0.27852, 0.96043
+ 0x3fd172a0d7765177, 0x3feec9b2d3c3bf84, // 0.27262, 0.96212
+ 0x3fd111d262b1f677, 0x3feed740e7684963, // 0.26671, 0.96378
+ 0x3fd0b0d9cfdbdb90, 0x3feee482e25a9dbc, // 0.26079, 0.96539
+ 0x3fd04fb80e37fdae, 0x3feef178a3e473c2, // 0.25487, 0.96698
+ 0x3fcfdcdc1adfedf8, 0x3feefe220c0b95ec, // 0.24893, 0.96852
+ 0x3fcf19f97b215f1a, 0x3fef0a7efb9230d7, // 0.24298, 0.97003
+ 0x3fce56ca1e101a1b, 0x3fef168f53f7205d, // 0.23702, 0.9715
+ 0x3fcd934fe5454311, 0x3fef2252f7763ada, // 0.23106, 0.97294
+ 0x3fcccf8cb312b286, 0x3fef2dc9c9089a9d, // 0.22508, 0.97434
+ 0x3fcc0b826a7e4f63, 0x3fef38f3ac64e589, // 0.2191, 0.9757
+ 0x3fcb4732ef3d6722, 0x3fef43d085ff92dd, // 0.21311, 0.97703
+ 0x3fca82a025b00451, 0x3fef4e603b0b2f2d, // 0.20711, 0.97832
+ 0x3fc9bdcbf2dc4366, 0x3fef58a2b1789e84, // 0.2011, 0.97957
+ 0x3fc8f8b83c69a60a, 0x3fef6297cff75cb0, // 0.19509, 0.98079
+ 0x3fc83366e89c64c5, 0x3fef6c3f7df5bbb7, // 0.18907, 0.98196
+ 0x3fc76dd9de50bf31, 0x3fef7599a3a12077, // 0.18304, 0.98311
+ 0x3fc6a81304f64ab2, 0x3fef7ea629e63d6e, // 0.177, 0.98421
+ 0x3fc5e214448b3fc6, 0x3fef8764fa714ba9, // 0.17096, 0.98528
+ 0x3fc51bdf8597c5f2, 0x3fef8fd5ffae41db, // 0.16491, 0.98631
+ 0x3fc45576b1293e5a, 0x3fef97f924c9099b, // 0.15886, 0.9873
+ 0x3fc38edbb0cd8d14, 0x3fef9fce55adb2c8, // 0.1528, 0.98826
+ 0x3fc2c8106e8e613a, 0x3fefa7557f08a517, // 0.14673, 0.98918
+ 0x3fc20116d4ec7bce, 0x3fefae8e8e46cfbb, // 0.14066, 0.99006
+ 0x3fc139f0cedaf576, 0x3fefb5797195d741, // 0.13458, 0.9909
+ 0x3fc072a047ba831d, 0x3fefbc1617e44186, // 0.1285, 0.99171
+ 0x3fbf564e56a9730e, 0x3fefc26470e19fd3, // 0.12241, 0.99248
+ 0x3fbdc70ecbae9fc8, 0x3fefc8646cfeb721, // 0.11632, 0.99321
+ 0x3fbc3785c79ec2d5, 0x3fefce15fd6da67b, // 0.11022, 0.99391
+ 0x3fbaa7b724495c04, 0x3fefd37914220b84, // 0.10412, 0.99456
+ 0x3fb917a6bc29b42c, 0x3fefd88da3d12526, // 0.098017, 0.99518
+ 0x3fb787586a5d5b21, 0x3fefdd539ff1f456, // 0.091909, 0.99577
+ 0x3fb5f6d00a9aa419, 0x3fefe1cafcbd5b09, // 0.085797, 0.99631
+ 0x3fb4661179272096, 0x3fefe5f3af2e3940, // 0.079682, 0.99682
+ 0x3fb2d52092ce19f6, 0x3fefe9cdad01883a, // 0.073565, 0.99729
+ 0x3fb1440134d709b2, 0x3fefed58ecb673c4, // 0.067444, 0.99772
+ 0x3faf656e79f820e0, 0x3feff095658e71ad, // 0.061321, 0.99812
+ 0x3fac428d12c0d7e3, 0x3feff3830f8d575c, // 0.055195, 0.99848
+ 0x3fa91f65f10dd814, 0x3feff621e3796d7e, // 0.049068, 0.9988
+ 0x3fa5fc00d290cd43, 0x3feff871dadb81df, // 0.042938, 0.99908
+ 0x3fa2d865759455cd, 0x3feffa72effef75d, // 0.036807, 0.99932
+ 0x3f9f693731d1cf01, 0x3feffc251df1d3f8, // 0.030675, 0.99953
+ 0x3f992155f7a3667e, 0x3feffd886084cd0d, // 0.024541, 0.9997
+ 0x3f92d936bbe30efd, 0x3feffe9cb44b51a1, // 0.018407, 0.99983
+ 0x3f8921d1fcdec784, 0x3fefff62169b92db, // 0.012272, 0.99992
+ 0x3f7921f0fe670071, 0x3fefffd8858e8a92, // 0.0061359, 0.99998
+ 0x0000000000000000, 0x3ff0000000000000, // 0, 1
+ 0xbf7921f0fe670071, 0x3fefffd8858e8a92, //-0.0061359, 0.99998
+ 0xbf8921d1fcdec784, 0x3fefff62169b92db, // -0.012272, 0.99992
+ 0xbf92d936bbe30efd, 0x3feffe9cb44b51a1, // -0.018407, 0.99983
+ 0xbf992155f7a3667e, 0x3feffd886084cd0d, // -0.024541, 0.9997
+ 0xbf9f693731d1cf01, 0x3feffc251df1d3f8, // -0.030675, 0.99953
+ 0xbfa2d865759455cd, 0x3feffa72effef75d, // -0.036807, 0.99932
+ 0xbfa5fc00d290cd43, 0x3feff871dadb81df, // -0.042938, 0.99908
+ 0xbfa91f65f10dd814, 0x3feff621e3796d7e, // -0.049068, 0.9988
+ 0xbfac428d12c0d7e3, 0x3feff3830f8d575c, // -0.055195, 0.99848
+ 0xbfaf656e79f820e0, 0x3feff095658e71ad, // -0.061321, 0.99812
+ 0xbfb1440134d709b2, 0x3fefed58ecb673c4, // -0.067444, 0.99772
+ 0xbfb2d52092ce19f6, 0x3fefe9cdad01883a, // -0.073565, 0.99729
+ 0xbfb4661179272096, 0x3fefe5f3af2e3940, // -0.079682, 0.99682
+ 0xbfb5f6d00a9aa419, 0x3fefe1cafcbd5b09, // -0.085797, 0.99631
+ 0xbfb787586a5d5b21, 0x3fefdd539ff1f456, // -0.091909, 0.99577
+ 0xbfb917a6bc29b42c, 0x3fefd88da3d12526, // -0.098017, 0.99518
+ 0xbfbaa7b724495c04, 0x3fefd37914220b84, // -0.10412, 0.99456
+ 0xbfbc3785c79ec2d5, 0x3fefce15fd6da67b, // -0.11022, 0.99391
+ 0xbfbdc70ecbae9fc8, 0x3fefc8646cfeb721, // -0.11632, 0.99321
+ 0xbfbf564e56a9730e, 0x3fefc26470e19fd3, // -0.12241, 0.99248
+ 0xbfc072a047ba831d, 0x3fefbc1617e44186, // -0.1285, 0.99171
+ 0xbfc139f0cedaf576, 0x3fefb5797195d741, // -0.13458, 0.9909
+ 0xbfc20116d4ec7bce, 0x3fefae8e8e46cfbb, // -0.14066, 0.99006
+ 0xbfc2c8106e8e613a, 0x3fefa7557f08a517, // -0.14673, 0.98918
+ 0xbfc38edbb0cd8d14, 0x3fef9fce55adb2c8, // -0.1528, 0.98826
+ 0xbfc45576b1293e5a, 0x3fef97f924c9099b, // -0.15886, 0.9873
+ 0xbfc51bdf8597c5f2, 0x3fef8fd5ffae41db, // -0.16491, 0.98631
+ 0xbfc5e214448b3fc6, 0x3fef8764fa714ba9, // -0.17096, 0.98528
+ 0xbfc6a81304f64ab2, 0x3fef7ea629e63d6e, // -0.177, 0.98421
+ 0xbfc76dd9de50bf31, 0x3fef7599a3a12077, // -0.18304, 0.98311
+ 0xbfc83366e89c64c5, 0x3fef6c3f7df5bbb7, // -0.18907, 0.98196
+ 0xbfc8f8b83c69a60a, 0x3fef6297cff75cb0, // -0.19509, 0.98079
+ 0xbfc9bdcbf2dc4366, 0x3fef58a2b1789e84, // -0.2011, 0.97957
+ 0xbfca82a025b00451, 0x3fef4e603b0b2f2d, // -0.20711, 0.97832
+ 0xbfcb4732ef3d6722, 0x3fef43d085ff92dd, // -0.21311, 0.97703
+ 0xbfcc0b826a7e4f63, 0x3fef38f3ac64e589, // -0.2191, 0.9757
+ 0xbfcccf8cb312b286, 0x3fef2dc9c9089a9d, // -0.22508, 0.97434
+ 0xbfcd934fe5454311, 0x3fef2252f7763ada, // -0.23106, 0.97294
+ 0xbfce56ca1e101a1b, 0x3fef168f53f7205d, // -0.23702, 0.9715
+ 0xbfcf19f97b215f1a, 0x3fef0a7efb9230d7, // -0.24298, 0.97003
+ 0xbfcfdcdc1adfedf8, 0x3feefe220c0b95ec, // -0.24893, 0.96852
+ 0xbfd04fb80e37fdae, 0x3feef178a3e473c2, // -0.25487, 0.96698
+ 0xbfd0b0d9cfdbdb90, 0x3feee482e25a9dbc, // -0.26079, 0.96539
+ 0xbfd111d262b1f677, 0x3feed740e7684963, // -0.26671, 0.96378
+ 0xbfd172a0d7765177, 0x3feec9b2d3c3bf84, // -0.27262, 0.96212
+ 0xbfd1d3443f4cdb3d, 0x3feebbd8c8df0b74, // -0.27852, 0.96043
+ 0xbfd233bbabc3bb72, 0x3feeadb2e8e7a88e, // -0.28441, 0.9587
+ 0xbfd294062ed59f05, 0x3fee9f4156c62dda, // -0.29028, 0.95694
+ 0xbfd2f422daec0386, 0x3fee9084361df7f3, // -0.29615, 0.95514
+ 0xbfd35410c2e18152, 0x3fee817bab4cd10d, // -0.30201, 0.95331
+ 0xbfd3b3cefa0414b7, 0x3fee7227db6a9744, // -0.30785, 0.95144
+ 0xbfd4135c94176602, 0x3fee6288ec48e112, // -0.31368, 0.94953
+ 0xbfd472b8a5571054, 0x3fee529f04729ffc, // -0.3195, 0.94759
+ 0xbfd4d1e24278e76a, 0x3fee426a4b2bc17e, // -0.32531, 0.94561
+ 0xbfd530d880af3c24, 0x3fee31eae870ce25, // -0.33111, 0.94359
+ 0xbfd58f9a75ab1fdd, 0x3fee212104f686e5, // -0.33689, 0.94154
+ 0xbfd5ee27379ea693, 0x3fee100cca2980ac, // -0.34266, 0.93946
+ 0xbfd64c7ddd3f27c6, 0x3fedfeae622dbe2b, // -0.34842, 0.93734
+ 0xbfd6aa9d7dc77e16, 0x3feded05f7de47da, // -0.35416, 0.93518
+ 0xbfd7088530fa459e, 0x3feddb13b6ccc23d, // -0.3599, 0.93299
+ 0xbfd766340f2418f6, 0x3fedc8d7cb410260, // -0.36561, 0.93077
+ 0xbfd7c3a9311dcce7, 0x3fedb6526238a09b, // -0.37132, 0.92851
+ 0xbfd820e3b04eaac4, 0x3feda383a9668988, // -0.37701, 0.92621
+ 0xbfd87de2a6aea963, 0x3fed906bcf328d46, // -0.38268, 0.92388
+ 0xbfd8daa52ec8a4af, 0x3fed7d0b02b8ecf9, // -0.38835, 0.92151
+ 0xbfd9372a63bc93d7, 0x3fed696173c9e68b, // -0.39399, 0.91911
+ 0xbfd993716141bdfe, 0x3fed556f52e93eb1, // -0.39962, 0.91668
+ 0xbfd9ef7943a8ed8a, 0x3fed4134d14dc93a, // -0.40524, 0.91421
+ 0xbfda4b4127dea1e4, 0x3fed2cb220e0ef9f, // -0.41084, 0.91171
+ 0xbfdaa6c82b6d3fc9, 0x3fed17e7743e35dc, // -0.41643, 0.90917
+ 0xbfdb020d6c7f4009, 0x3fed02d4feb2bd92, // -0.422, 0.9066
+ 0xbfdb5d1009e15cc0, 0x3feced7af43cc773, // -0.42756, 0.90399
+ 0xbfdbb7cf2304bd01, 0x3fecd7d9898b32f6, // -0.43309, 0.90135
+ 0xbfdc1249d8011ee7, 0x3fecc1f0f3fcfc5c, // -0.43862, 0.89867
+ 0xbfdc6c7f4997000a, 0x3fecabc169a0b901, // -0.44412, 0.89597
+ 0xbfdcc66e9931c45d, 0x3fec954b213411f5, // -0.44961, 0.89322
+ 0xbfdd2016e8e9db5b, 0x3fec7e8e52233cf3, // -0.45508, 0.89045
+ 0xbfdd79775b86e389, 0x3fec678b3488739b, // -0.46054, 0.88764
+ 0xbfddd28f1481cc58, 0x3fec5042012b6907, // -0.46598, 0.8848
+ 0xbfde2b5d3806f63b, 0x3fec38b2f180bdb1, // -0.4714, 0.88192
+ 0xbfde83e0eaf85113, 0x3fec20de3fa971b0, // -0.4768, 0.87901
+ 0xbfdedc1952ef78d5, 0x3fec08c426725549, // -0.48218, 0.87607
+ 0xbfdf3405963fd068, 0x3febf064e15377dd, // -0.48755, 0.87309
+ 0xbfdf8ba4dbf89aba, 0x3febd7c0ac6f952a, // -0.4929, 0.87009
+ 0xbfdfe2f64be7120f, 0x3febbed7c49380ea, // -0.49823, 0.86705
+ 0xbfe01cfc874c3eb7, 0x3feba5aa673590d2, // -0.50354, 0.86397
+ 0xbfe0485626ae221a, 0x3feb8c38d27504e9, // -0.50883, 0.86087
+ 0xbfe073879922ffed, 0x3feb728345196e3e, // -0.5141, 0.85773
+ 0xbfe09e907417c5e1, 0x3feb5889fe921405, // -0.51936, 0.85456
+ 0xbfe0c9704d5d898f, 0x3feb3e4d3ef55712, // -0.52459, 0.85136
+ 0xbfe0f426bb2a8e7d, 0x3feb23cd470013b4, // -0.5298, 0.84812
+ 0xbfe11eb3541b4b22, 0x3feb090a58150200, // -0.535, 0.84485
+ 0xbfe14915af336ceb, 0x3feaee04b43c1474, // -0.54017, 0.84155
+ 0xbfe1734d63dedb49, 0x3fead2bc9e21d511, // -0.54532, 0.83822
+ 0xbfe19d5a09f2b9b8, 0x3feab7325916c0d4, // -0.55046, 0.83486
+ 0xbfe1c73b39ae68c8, 0x3fea9b66290ea1a3, // -0.55557, 0.83147
+ 0xbfe1f0f08bbc861b, 0x3fea7f58529fe69d, // -0.56066, 0.82805
+ 0xbfe21a799933eb58, 0x3fea63091b02fae2, // -0.56573, 0.82459
+ 0xbfe243d5fb98ac1f, 0x3fea4678c8119ac8, // -0.57078, 0.8211
+ 0xbfe26d054cdd12df, 0x3fea29a7a0462782, // -0.57581, 0.81758
+ 0xbfe2960727629ca8, 0x3fea0c95eabaf937, // -0.58081, 0.81404
+ 0xbfe2bedb25faf3ea, 0x3fe9ef43ef29af94, // -0.5858, 0.81046
+ 0xbfe2e780e3e8ea16, 0x3fe9d1b1f5ea80d6, // -0.59076, 0.80685
+ 0xbfe30ff7fce17035, 0x3fe9b3e047f38741, // -0.5957, 0.80321
+ 0xbfe338400d0c8e57, 0x3fe995cf2ed80d22, // -0.60062, 0.79954
+ 0xbfe36058b10659f3, 0x3fe9777ef4c7d742, // -0.60551, 0.79584
+ 0xbfe3884185dfeb22, 0x3fe958efe48e6dd7, // -0.61038, 0.79211
+ 0xbfe3affa292050b9, 0x3fe93a22499263fc, // -0.61523, 0.78835
+ 0xbfe3d78238c58343, 0x3fe91b166fd49da2, // -0.62006, 0.78456
+ 0xbfe3fed9534556d4, 0x3fe8fbcca3ef940d, // -0.62486, 0.78074
+ 0xbfe425ff178e6bb1, 0x3fe8dc45331698cc, // -0.62964, 0.77689
+ 0xbfe44cf325091dd6, 0x3fe8bc806b151741, // -0.63439, 0.77301
+ 0xbfe473b51b987347, 0x3fe89c7e9a4dd4ab, // -0.63912, 0.7691
+ 0xbfe49a449b9b0938, 0x3fe87c400fba2ebf, // -0.64383, 0.76517
+ 0xbfe4c0a145ec0004, 0x3fe85bc51ae958cc, // -0.64851, 0.7612
+ 0xbfe4e6cabbe3e5e9, 0x3fe83b0e0bff976e, // -0.65317, 0.75721
+ 0xbfe50cc09f59a09b, 0x3fe81a1b33b57acc, // -0.65781, 0.75319
+ 0xbfe5328292a35596, 0x3fe7f8ece3571771, // -0.66242, 0.74914
+ 0xbfe5581038975137, 0x3fe7d7836cc33db2, // -0.667, 0.74506
+ 0xbfe57d69348cec9f, 0x3fe7b5df226aafb0, // -0.67156, 0.74095
+ 0xbfe5a28d2a5d7250, 0x3fe79400574f55e4, // -0.67609, 0.73682
+ 0xbfe5c77bbe65018c, 0x3fe771e75f037261, // -0.6806, 0.73265
+ 0xbfe5ec3495837074, 0x3fe74f948da8d28d, // -0.68508, 0.72846
+ 0xbfe610b7551d2cde, 0x3fe72d0837efff97, // -0.68954, 0.72425
+ 0xbfe63503a31c1be8, 0x3fe70a42b3176d7a, // -0.69397, 0.72
+ 0xbfe6591925f0783e, 0x3fe6e74454eaa8ae, // -0.69838, 0.71573
+ 0xbfe67cf78491af10, 0x3fe6c40d73c18275, // -0.70275, 0.71143
+ 0xbfe6a09e667f3bcc, 0x3fe6a09e667f3bcc, // -0.70711, 0.70711
+ 0xbfe6c40d73c18275, 0x3fe67cf78491af10, // -0.71143, 0.70275
+ 0xbfe6e74454eaa8ae, 0x3fe6591925f0783e, // -0.71573, 0.69838
+ 0xbfe70a42b3176d7a, 0x3fe63503a31c1be8, // -0.72, 0.69397
+ 0xbfe72d0837efff97, 0x3fe610b7551d2cde, // -0.72425, 0.68954
+ 0xbfe74f948da8d28d, 0x3fe5ec3495837074, // -0.72846, 0.68508
+ 0xbfe771e75f037261, 0x3fe5c77bbe65018c, // -0.73265, 0.6806
+ 0xbfe79400574f55e4, 0x3fe5a28d2a5d7250, // -0.73682, 0.67609
+ 0xbfe7b5df226aafb0, 0x3fe57d69348cec9f, // -0.74095, 0.67156
+ 0xbfe7d7836cc33db2, 0x3fe5581038975137, // -0.74506, 0.667
+ 0xbfe7f8ece3571771, 0x3fe5328292a35596, // -0.74914, 0.66242
+ 0xbfe81a1b33b57acc, 0x3fe50cc09f59a09b, // -0.75319, 0.65781
+ 0xbfe83b0e0bff976e, 0x3fe4e6cabbe3e5e9, // -0.75721, 0.65317
+ 0xbfe85bc51ae958cc, 0x3fe4c0a145ec0004, // -0.7612, 0.64851
+ 0xbfe87c400fba2ebf, 0x3fe49a449b9b0938, // -0.76517, 0.64383
+ 0xbfe89c7e9a4dd4ab, 0x3fe473b51b987347, // -0.7691, 0.63912
+ 0xbfe8bc806b151741, 0x3fe44cf325091dd6, // -0.77301, 0.63439
+ 0xbfe8dc45331698cc, 0x3fe425ff178e6bb1, // -0.77689, 0.62964
+ 0xbfe8fbcca3ef940d, 0x3fe3fed9534556d4, // -0.78074, 0.62486
+ 0xbfe91b166fd49da2, 0x3fe3d78238c58343, // -0.78456, 0.62006
+ 0xbfe93a22499263fc, 0x3fe3affa292050b9, // -0.78835, 0.61523
+ 0xbfe958efe48e6dd7, 0x3fe3884185dfeb22, // -0.79211, 0.61038
+ 0xbfe9777ef4c7d742, 0x3fe36058b10659f3, // -0.79584, 0.60551
+ 0xbfe995cf2ed80d22, 0x3fe338400d0c8e57, // -0.79954, 0.60062
+ 0xbfe9b3e047f38741, 0x3fe30ff7fce17035, // -0.80321, 0.5957
+ 0xbfe9d1b1f5ea80d6, 0x3fe2e780e3e8ea16, // -0.80685, 0.59076
+ 0xbfe9ef43ef29af94, 0x3fe2bedb25faf3ea, // -0.81046, 0.5858
+ 0xbfea0c95eabaf937, 0x3fe2960727629ca8, // -0.81404, 0.58081
+ 0xbfea29a7a0462782, 0x3fe26d054cdd12df, // -0.81758, 0.57581
+ 0xbfea4678c8119ac8, 0x3fe243d5fb98ac1f, // -0.8211, 0.57078
+ 0xbfea63091b02fae2, 0x3fe21a799933eb58, // -0.82459, 0.56573
+ 0xbfea7f58529fe69d, 0x3fe1f0f08bbc861b, // -0.82805, 0.56066
+ 0xbfea9b66290ea1a3, 0x3fe1c73b39ae68c8, // -0.83147, 0.55557
+ 0xbfeab7325916c0d4, 0x3fe19d5a09f2b9b8, // -0.83486, 0.55046
+ 0xbfead2bc9e21d511, 0x3fe1734d63dedb49, // -0.83822, 0.54532
+ 0xbfeaee04b43c1474, 0x3fe14915af336ceb, // -0.84155, 0.54017
+ 0xbfeb090a58150200, 0x3fe11eb3541b4b22, // -0.84485, 0.535
+ 0xbfeb23cd470013b4, 0x3fe0f426bb2a8e7d, // -0.84812, 0.5298
+ 0xbfeb3e4d3ef55712, 0x3fe0c9704d5d898f, // -0.85136, 0.52459
+ 0xbfeb5889fe921405, 0x3fe09e907417c5e1, // -0.85456, 0.51936
+ 0xbfeb728345196e3e, 0x3fe073879922ffed, // -0.85773, 0.5141
+ 0xbfeb8c38d27504e9, 0x3fe0485626ae221a, // -0.86087, 0.50883
+ 0xbfeba5aa673590d2, 0x3fe01cfc874c3eb7, // -0.86397, 0.50354
+ 0xbfebbed7c49380ea, 0x3fdfe2f64be7120f, // -0.86705, 0.49823
+ 0xbfebd7c0ac6f952a, 0x3fdf8ba4dbf89aba, // -0.87009, 0.4929
+ 0xbfebf064e15377dd, 0x3fdf3405963fd068, // -0.87309, 0.48755
+ 0xbfec08c426725549, 0x3fdedc1952ef78d5, // -0.87607, 0.48218
+ 0xbfec20de3fa971b0, 0x3fde83e0eaf85113, // -0.87901, 0.4768
+ 0xbfec38b2f180bdb1, 0x3fde2b5d3806f63b, // -0.88192, 0.4714
+ 0xbfec5042012b6907, 0x3fddd28f1481cc58, // -0.8848, 0.46598
+ 0xbfec678b3488739b, 0x3fdd79775b86e389, // -0.88764, 0.46054
+ 0xbfec7e8e52233cf3, 0x3fdd2016e8e9db5b, // -0.89045, 0.45508
+ 0xbfec954b213411f5, 0x3fdcc66e9931c45d, // -0.89322, 0.44961
+ 0xbfecabc169a0b901, 0x3fdc6c7f4997000a, // -0.89597, 0.44412
+ 0xbfecc1f0f3fcfc5c, 0x3fdc1249d8011ee7, // -0.89867, 0.43862
+ 0xbfecd7d9898b32f6, 0x3fdbb7cf2304bd01, // -0.90135, 0.43309
+ 0xbfeced7af43cc773, 0x3fdb5d1009e15cc0, // -0.90399, 0.42756
+ 0xbfed02d4feb2bd92, 0x3fdb020d6c7f4009, // -0.9066, 0.422
+ 0xbfed17e7743e35dc, 0x3fdaa6c82b6d3fc9, // -0.90917, 0.41643
+ 0xbfed2cb220e0ef9f, 0x3fda4b4127dea1e4, // -0.91171, 0.41084
+ 0xbfed4134d14dc93a, 0x3fd9ef7943a8ed8a, // -0.91421, 0.40524
+ 0xbfed556f52e93eb1, 0x3fd993716141bdfe, // -0.91668, 0.39962
+ 0xbfed696173c9e68b, 0x3fd9372a63bc93d7, // -0.91911, 0.39399
+ 0xbfed7d0b02b8ecf9, 0x3fd8daa52ec8a4af, // -0.92151, 0.38835
+ 0xbfed906bcf328d46, 0x3fd87de2a6aea963, // -0.92388, 0.38268
+ 0xbfeda383a9668988, 0x3fd820e3b04eaac4, // -0.92621, 0.37701
+ 0xbfedb6526238a09b, 0x3fd7c3a9311dcce7, // -0.92851, 0.37132
+ 0xbfedc8d7cb410260, 0x3fd766340f2418f6, // -0.93077, 0.36561
+ 0xbfeddb13b6ccc23d, 0x3fd7088530fa459e, // -0.93299, 0.3599
+ 0xbfeded05f7de47da, 0x3fd6aa9d7dc77e16, // -0.93518, 0.35416
+ 0xbfedfeae622dbe2b, 0x3fd64c7ddd3f27c6, // -0.93734, 0.34842
+ 0xbfee100cca2980ac, 0x3fd5ee27379ea693, // -0.93946, 0.34266
+ 0xbfee212104f686e5, 0x3fd58f9a75ab1fdd, // -0.94154, 0.33689
+ 0xbfee31eae870ce25, 0x3fd530d880af3c24, // -0.94359, 0.33111
+ 0xbfee426a4b2bc17e, 0x3fd4d1e24278e76a, // -0.94561, 0.32531
+ 0xbfee529f04729ffc, 0x3fd472b8a5571054, // -0.94759, 0.3195
+ 0xbfee6288ec48e112, 0x3fd4135c94176602, // -0.94953, 0.31368
+ 0xbfee7227db6a9744, 0x3fd3b3cefa0414b7, // -0.95144, 0.30785
+ 0xbfee817bab4cd10d, 0x3fd35410c2e18152, // -0.95331, 0.30201
+ 0xbfee9084361df7f3, 0x3fd2f422daec0386, // -0.95514, 0.29615
+ 0xbfee9f4156c62dda, 0x3fd294062ed59f05, // -0.95694, 0.29028
+ 0xbfeeadb2e8e7a88e, 0x3fd233bbabc3bb72, // -0.9587, 0.28441
+ 0xbfeebbd8c8df0b74, 0x3fd1d3443f4cdb3d, // -0.96043, 0.27852
+ 0xbfeec9b2d3c3bf84, 0x3fd172a0d7765177, // -0.96212, 0.27262
+ 0xbfeed740e7684963, 0x3fd111d262b1f677, // -0.96378, 0.26671
+ 0xbfeee482e25a9dbc, 0x3fd0b0d9cfdbdb90, // -0.96539, 0.26079
+ 0xbfeef178a3e473c2, 0x3fd04fb80e37fdae, // -0.96698, 0.25487
+ 0xbfeefe220c0b95ec, 0x3fcfdcdc1adfedf8, // -0.96852, 0.24893
+ 0xbfef0a7efb9230d7, 0x3fcf19f97b215f1a, // -0.97003, 0.24298
+ 0xbfef168f53f7205d, 0x3fce56ca1e101a1b, // -0.9715, 0.23702
+ 0xbfef2252f7763ada, 0x3fcd934fe5454311, // -0.97294, 0.23106
+ 0xbfef2dc9c9089a9d, 0x3fcccf8cb312b286, // -0.97434, 0.22508
+ 0xbfef38f3ac64e589, 0x3fcc0b826a7e4f63, // -0.9757, 0.2191
+ 0xbfef43d085ff92dd, 0x3fcb4732ef3d6722, // -0.97703, 0.21311
+ 0xbfef4e603b0b2f2d, 0x3fca82a025b00451, // -0.97832, 0.20711
+ 0xbfef58a2b1789e84, 0x3fc9bdcbf2dc4366, // -0.97957, 0.2011
+ 0xbfef6297cff75cb0, 0x3fc8f8b83c69a60a, // -0.98079, 0.19509
+ 0xbfef6c3f7df5bbb7, 0x3fc83366e89c64c5, // -0.98196, 0.18907
+ 0xbfef7599a3a12077, 0x3fc76dd9de50bf31, // -0.98311, 0.18304
+ 0xbfef7ea629e63d6e, 0x3fc6a81304f64ab2, // -0.98421, 0.177
+ 0xbfef8764fa714ba9, 0x3fc5e214448b3fc6, // -0.98528, 0.17096
+ 0xbfef8fd5ffae41db, 0x3fc51bdf8597c5f2, // -0.98631, 0.16491
+ 0xbfef97f924c9099b, 0x3fc45576b1293e5a, // -0.9873, 0.15886
+ 0xbfef9fce55adb2c8, 0x3fc38edbb0cd8d14, // -0.98826, 0.1528
+ 0xbfefa7557f08a517, 0x3fc2c8106e8e613a, // -0.98918, 0.14673
+ 0xbfefae8e8e46cfbb, 0x3fc20116d4ec7bce, // -0.99006, 0.14066
+ 0xbfefb5797195d741, 0x3fc139f0cedaf576, // -0.9909, 0.13458
+ 0xbfefbc1617e44186, 0x3fc072a047ba831d, // -0.99171, 0.1285
+ 0xbfefc26470e19fd3, 0x3fbf564e56a9730e, // -0.99248, 0.12241
+ 0xbfefc8646cfeb721, 0x3fbdc70ecbae9fc8, // -0.99321, 0.11632
+ 0xbfefce15fd6da67b, 0x3fbc3785c79ec2d5, // -0.99391, 0.11022
+ 0xbfefd37914220b84, 0x3fbaa7b724495c04, // -0.99456, 0.10412
+ 0xbfefd88da3d12526, 0x3fb917a6bc29b42c, // -0.99518, 0.098017
+ 0xbfefdd539ff1f456, 0x3fb787586a5d5b21, // -0.99577, 0.091909
+ 0xbfefe1cafcbd5b09, 0x3fb5f6d00a9aa419, // -0.99631, 0.085797
+ 0xbfefe5f3af2e3940, 0x3fb4661179272096, // -0.99682, 0.079682
+ 0xbfefe9cdad01883a, 0x3fb2d52092ce19f6, // -0.99729, 0.073565
+ 0xbfefed58ecb673c4, 0x3fb1440134d709b2, // -0.99772, 0.067444
+ 0xbfeff095658e71ad, 0x3faf656e79f820e0, // -0.99812, 0.061321
+ 0xbfeff3830f8d575c, 0x3fac428d12c0d7e3, // -0.99848, 0.055195
+ 0xbfeff621e3796d7e, 0x3fa91f65f10dd814, // -0.9988, 0.049068
+ 0xbfeff871dadb81df, 0x3fa5fc00d290cd43, // -0.99908, 0.042938
+ 0xbfeffa72effef75d, 0x3fa2d865759455cd, // -0.99932, 0.036807
+ 0xbfeffc251df1d3f8, 0x3f9f693731d1cf01, // -0.99953, 0.030675
+ 0xbfeffd886084cd0d, 0x3f992155f7a3667e, // -0.9997, 0.024541
+ 0xbfeffe9cb44b51a1, 0x3f92d936bbe30efd, // -0.99983, 0.018407
+ 0xbfefff62169b92db, 0x3f8921d1fcdec784, // -0.99992, 0.012272
+ 0xbfefffd8858e8a92, 0x3f7921f0fe670071, // -0.99998, 0.0061359
+ 0xbff0000000000000, 0x0000000000000000, // -1, 0
+ 0xbfefffd8858e8a92, 0xbf7921f0fe670071, // -0.99998,-0.0061359
+ 0xbfefff62169b92db, 0xbf8921d1fcdec784, // -0.99992, -0.012272
+ 0xbfeffe9cb44b51a1, 0xbf92d936bbe30efd, // -0.99983, -0.018407
+ 0xbfeffd886084cd0d, 0xbf992155f7a3667e, // -0.9997, -0.024541
+ 0xbfeffc251df1d3f8, 0xbf9f693731d1cf01, // -0.99953, -0.030675
+ 0xbfeffa72effef75d, 0xbfa2d865759455cd, // -0.99932, -0.036807
+ 0xbfeff871dadb81df, 0xbfa5fc00d290cd43, // -0.99908, -0.042938
+ 0xbfeff621e3796d7e, 0xbfa91f65f10dd814, // -0.9988, -0.049068
+ 0xbfeff3830f8d575c, 0xbfac428d12c0d7e3, // -0.99848, -0.055195
+ 0xbfeff095658e71ad, 0xbfaf656e79f820e0, // -0.99812, -0.061321
+ 0xbfefed58ecb673c4, 0xbfb1440134d709b2, // -0.99772, -0.067444
+ 0xbfefe9cdad01883a, 0xbfb2d52092ce19f6, // -0.99729, -0.073565
+ 0xbfefe5f3af2e3940, 0xbfb4661179272096, // -0.99682, -0.079682
+ 0xbfefe1cafcbd5b09, 0xbfb5f6d00a9aa419, // -0.99631, -0.085797
+ 0xbfefdd539ff1f456, 0xbfb787586a5d5b21, // -0.99577, -0.091909
+ 0xbfefd88da3d12526, 0xbfb917a6bc29b42c, // -0.99518, -0.098017
+ 0xbfefd37914220b84, 0xbfbaa7b724495c04, // -0.99456, -0.10412
+ 0xbfefce15fd6da67b, 0xbfbc3785c79ec2d5, // -0.99391, -0.11022
+ 0xbfefc8646cfeb721, 0xbfbdc70ecbae9fc8, // -0.99321, -0.11632
+ 0xbfefc26470e19fd3, 0xbfbf564e56a9730e, // -0.99248, -0.12241
+ 0xbfefbc1617e44186, 0xbfc072a047ba831d, // -0.99171, -0.1285
+ 0xbfefb5797195d741, 0xbfc139f0cedaf576, // -0.9909, -0.13458
+ 0xbfefae8e8e46cfbb, 0xbfc20116d4ec7bce, // -0.99006, -0.14066
+ 0xbfefa7557f08a517, 0xbfc2c8106e8e613a, // -0.98918, -0.14673
+ 0xbfef9fce55adb2c8, 0xbfc38edbb0cd8d14, // -0.98826, -0.1528
+ 0xbfef97f924c9099b, 0xbfc45576b1293e5a, // -0.9873, -0.15886
+ 0xbfef8fd5ffae41db, 0xbfc51bdf8597c5f2, // -0.98631, -0.16491
+ 0xbfef8764fa714ba9, 0xbfc5e214448b3fc6, // -0.98528, -0.17096
+ 0xbfef7ea629e63d6e, 0xbfc6a81304f64ab2, // -0.98421, -0.177
+ 0xbfef7599a3a12077, 0xbfc76dd9de50bf31, // -0.98311, -0.18304
+ 0xbfef6c3f7df5bbb7, 0xbfc83366e89c64c5, // -0.98196, -0.18907
+ 0xbfef6297cff75cb0, 0xbfc8f8b83c69a60a, // -0.98079, -0.19509
+ 0xbfef58a2b1789e84, 0xbfc9bdcbf2dc4366, // -0.97957, -0.2011
+ 0xbfef4e603b0b2f2d, 0xbfca82a025b00451, // -0.97832, -0.20711
+ 0xbfef43d085ff92dd, 0xbfcb4732ef3d6722, // -0.97703, -0.21311
+ 0xbfef38f3ac64e589, 0xbfcc0b826a7e4f63, // -0.9757, -0.2191
+ 0xbfef2dc9c9089a9d, 0xbfcccf8cb312b286, // -0.97434, -0.22508
+ 0xbfef2252f7763ada, 0xbfcd934fe5454311, // -0.97294, -0.23106
+ 0xbfef168f53f7205d, 0xbfce56ca1e101a1b, // -0.9715, -0.23702
+ 0xbfef0a7efb9230d7, 0xbfcf19f97b215f1a, // -0.97003, -0.24298
+ 0xbfeefe220c0b95ec, 0xbfcfdcdc1adfedf8, // -0.96852, -0.24893
+ 0xbfeef178a3e473c2, 0xbfd04fb80e37fdae, // -0.96698, -0.25487
+ 0xbfeee482e25a9dbc, 0xbfd0b0d9cfdbdb90, // -0.96539, -0.26079
+ 0xbfeed740e7684963, 0xbfd111d262b1f677, // -0.96378, -0.26671
+ 0xbfeec9b2d3c3bf84, 0xbfd172a0d7765177, // -0.96212, -0.27262
+ 0xbfeebbd8c8df0b74, 0xbfd1d3443f4cdb3d, // -0.96043, -0.27852
+ 0xbfeeadb2e8e7a88e, 0xbfd233bbabc3bb72, // -0.9587, -0.28441
+ 0xbfee9f4156c62dda, 0xbfd294062ed59f05, // -0.95694, -0.29028
+ 0xbfee9084361df7f3, 0xbfd2f422daec0386, // -0.95514, -0.29615
+ 0xbfee817bab4cd10d, 0xbfd35410c2e18152, // -0.95331, -0.30201
+ 0xbfee7227db6a9744, 0xbfd3b3cefa0414b7, // -0.95144, -0.30785
+ 0xbfee6288ec48e112, 0xbfd4135c94176602, // -0.94953, -0.31368
+ 0xbfee529f04729ffc, 0xbfd472b8a5571054, // -0.94759, -0.3195
+ 0xbfee426a4b2bc17e, 0xbfd4d1e24278e76a, // -0.94561, -0.32531
+ 0xbfee31eae870ce25, 0xbfd530d880af3c24, // -0.94359, -0.33111
+ 0xbfee212104f686e5, 0xbfd58f9a75ab1fdd, // -0.94154, -0.33689
+ 0xbfee100cca2980ac, 0xbfd5ee27379ea693, // -0.93946, -0.34266
+ 0xbfedfeae622dbe2b, 0xbfd64c7ddd3f27c6, // -0.93734, -0.34842
+ 0xbfeded05f7de47da, 0xbfd6aa9d7dc77e16, // -0.93518, -0.35416
+ 0xbfeddb13b6ccc23d, 0xbfd7088530fa459e, // -0.93299, -0.3599
+ 0xbfedc8d7cb410260, 0xbfd766340f2418f6, // -0.93077, -0.36561
+ 0xbfedb6526238a09b, 0xbfd7c3a9311dcce7, // -0.92851, -0.37132
+ 0xbfeda383a9668988, 0xbfd820e3b04eaac4, // -0.92621, -0.37701
+ 0xbfed906bcf328d46, 0xbfd87de2a6aea963, // -0.92388, -0.38268
+ 0xbfed7d0b02b8ecf9, 0xbfd8daa52ec8a4af, // -0.92151, -0.38835
+ 0xbfed696173c9e68b, 0xbfd9372a63bc93d7, // -0.91911, -0.39399
+ 0xbfed556f52e93eb1, 0xbfd993716141bdfe, // -0.91668, -0.39962
+ 0xbfed4134d14dc93a, 0xbfd9ef7943a8ed8a, // -0.91421, -0.40524
+ 0xbfed2cb220e0ef9f, 0xbfda4b4127dea1e4, // -0.91171, -0.41084
+ 0xbfed17e7743e35dc, 0xbfdaa6c82b6d3fc9, // -0.90917, -0.41643
+ 0xbfed02d4feb2bd92, 0xbfdb020d6c7f4009, // -0.9066, -0.422
+ 0xbfeced7af43cc773, 0xbfdb5d1009e15cc0, // -0.90399, -0.42756
+ 0xbfecd7d9898b32f6, 0xbfdbb7cf2304bd01, // -0.90135, -0.43309
+ 0xbfecc1f0f3fcfc5c, 0xbfdc1249d8011ee7, // -0.89867, -0.43862
+ 0xbfecabc169a0b901, 0xbfdc6c7f4997000a, // -0.89597, -0.44412
+ 0xbfec954b213411f5, 0xbfdcc66e9931c45d, // -0.89322, -0.44961
+ 0xbfec7e8e52233cf3, 0xbfdd2016e8e9db5b, // -0.89045, -0.45508
+ 0xbfec678b3488739b, 0xbfdd79775b86e389, // -0.88764, -0.46054
+ 0xbfec5042012b6907, 0xbfddd28f1481cc58, // -0.8848, -0.46598
+ 0xbfec38b2f180bdb1, 0xbfde2b5d3806f63b, // -0.88192, -0.4714
+ 0xbfec20de3fa971b0, 0xbfde83e0eaf85113, // -0.87901, -0.4768
+ 0xbfec08c426725549, 0xbfdedc1952ef78d5, // -0.87607, -0.48218
+ 0xbfebf064e15377dd, 0xbfdf3405963fd068, // -0.87309, -0.48755
+ 0xbfebd7c0ac6f952a, 0xbfdf8ba4dbf89aba, // -0.87009, -0.4929
+ 0xbfebbed7c49380ea, 0xbfdfe2f64be7120f, // -0.86705, -0.49823
+ 0xbfeba5aa673590d2, 0xbfe01cfc874c3eb7, // -0.86397, -0.50354
+ 0xbfeb8c38d27504e9, 0xbfe0485626ae221a, // -0.86087, -0.50883
+ 0xbfeb728345196e3e, 0xbfe073879922ffed, // -0.85773, -0.5141
+ 0xbfeb5889fe921405, 0xbfe09e907417c5e1, // -0.85456, -0.51936
+ 0xbfeb3e4d3ef55712, 0xbfe0c9704d5d898f, // -0.85136, -0.52459
+ 0xbfeb23cd470013b4, 0xbfe0f426bb2a8e7d, // -0.84812, -0.5298
+ 0xbfeb090a58150200, 0xbfe11eb3541b4b22, // -0.84485, -0.535
+ 0xbfeaee04b43c1474, 0xbfe14915af336ceb, // -0.84155, -0.54017
+ 0xbfead2bc9e21d511, 0xbfe1734d63dedb49, // -0.83822, -0.54532
+ 0xbfeab7325916c0d4, 0xbfe19d5a09f2b9b8, // -0.83486, -0.55046
+ 0xbfea9b66290ea1a3, 0xbfe1c73b39ae68c8, // -0.83147, -0.55557
+ 0xbfea7f58529fe69d, 0xbfe1f0f08bbc861b, // -0.82805, -0.56066
+ 0xbfea63091b02fae2, 0xbfe21a799933eb58, // -0.82459, -0.56573
+ 0xbfea4678c8119ac8, 0xbfe243d5fb98ac1f, // -0.8211, -0.57078
+ 0xbfea29a7a0462782, 0xbfe26d054cdd12df, // -0.81758, -0.57581
+ 0xbfea0c95eabaf937, 0xbfe2960727629ca8, // -0.81404, -0.58081
+ 0xbfe9ef43ef29af94, 0xbfe2bedb25faf3ea, // -0.81046, -0.5858
+ 0xbfe9d1b1f5ea80d6, 0xbfe2e780e3e8ea16, // -0.80685, -0.59076
+ 0xbfe9b3e047f38741, 0xbfe30ff7fce17035, // -0.80321, -0.5957
+ 0xbfe995cf2ed80d22, 0xbfe338400d0c8e57, // -0.79954, -0.60062
+ 0xbfe9777ef4c7d742, 0xbfe36058b10659f3, // -0.79584, -0.60551
+ 0xbfe958efe48e6dd7, 0xbfe3884185dfeb22, // -0.79211, -0.61038
+ 0xbfe93a22499263fc, 0xbfe3affa292050b9, // -0.78835, -0.61523
+ 0xbfe91b166fd49da2, 0xbfe3d78238c58343, // -0.78456, -0.62006
+ 0xbfe8fbcca3ef940d, 0xbfe3fed9534556d4, // -0.78074, -0.62486
+ 0xbfe8dc45331698cc, 0xbfe425ff178e6bb1, // -0.77689, -0.62964
+ 0xbfe8bc806b151741, 0xbfe44cf325091dd6, // -0.77301, -0.63439
+ 0xbfe89c7e9a4dd4ab, 0xbfe473b51b987347, // -0.7691, -0.63912
+ 0xbfe87c400fba2ebf, 0xbfe49a449b9b0938, // -0.76517, -0.64383
+ 0xbfe85bc51ae958cc, 0xbfe4c0a145ec0004, // -0.7612, -0.64851
+ 0xbfe83b0e0bff976e, 0xbfe4e6cabbe3e5e9, // -0.75721, -0.65317
+ 0xbfe81a1b33b57acc, 0xbfe50cc09f59a09b, // -0.75319, -0.65781
+ 0xbfe7f8ece3571771, 0xbfe5328292a35596, // -0.74914, -0.66242
+ 0xbfe7d7836cc33db2, 0xbfe5581038975137, // -0.74506, -0.667
+ 0xbfe7b5df226aafb0, 0xbfe57d69348cec9f, // -0.74095, -0.67156
+ 0xbfe79400574f55e4, 0xbfe5a28d2a5d7250, // -0.73682, -0.67609
+ 0xbfe771e75f037261, 0xbfe5c77bbe65018c, // -0.73265, -0.6806
+ 0xbfe74f948da8d28d, 0xbfe5ec3495837074, // -0.72846, -0.68508
+ 0xbfe72d0837efff97, 0xbfe610b7551d2cde, // -0.72425, -0.68954
+ 0xbfe70a42b3176d7a, 0xbfe63503a31c1be8, // -0.72, -0.69397
+ 0xbfe6e74454eaa8ae, 0xbfe6591925f0783e, // -0.71573, -0.69838
+ 0xbfe6c40d73c18275, 0xbfe67cf78491af10, // -0.71143, -0.70275
+ 0xbfe6a09e667f3bcc, 0xbfe6a09e667f3bcc, // -0.70711, -0.70711
+ 0xbfe67cf78491af10, 0xbfe6c40d73c18275, // -0.70275, -0.71143
+ 0xbfe6591925f0783e, 0xbfe6e74454eaa8ae, // -0.69838, -0.71573
+ 0xbfe63503a31c1be8, 0xbfe70a42b3176d7a, // -0.69397, -0.72
+ 0xbfe610b7551d2cde, 0xbfe72d0837efff97, // -0.68954, -0.72425
+ 0xbfe5ec3495837074, 0xbfe74f948da8d28d, // -0.68508, -0.72846
+ 0xbfe5c77bbe65018c, 0xbfe771e75f037261, // -0.6806, -0.73265
+ 0xbfe5a28d2a5d7250, 0xbfe79400574f55e4, // -0.67609, -0.73682
+ 0xbfe57d69348cec9f, 0xbfe7b5df226aafb0, // -0.67156, -0.74095
+ 0xbfe5581038975137, 0xbfe7d7836cc33db2, // -0.667, -0.74506
+ 0xbfe5328292a35596, 0xbfe7f8ece3571771, // -0.66242, -0.74914
+ 0xbfe50cc09f59a09b, 0xbfe81a1b33b57acc, // -0.65781, -0.75319
+ 0xbfe4e6cabbe3e5e9, 0xbfe83b0e0bff976e, // -0.65317, -0.75721
+ 0xbfe4c0a145ec0004, 0xbfe85bc51ae958cc, // -0.64851, -0.7612
+ 0xbfe49a449b9b0938, 0xbfe87c400fba2ebf, // -0.64383, -0.76517
+ 0xbfe473b51b987347, 0xbfe89c7e9a4dd4ab, // -0.63912, -0.7691
+ 0xbfe44cf325091dd6, 0xbfe8bc806b151741, // -0.63439, -0.77301
+ 0xbfe425ff178e6bb1, 0xbfe8dc45331698cc, // -0.62964, -0.77689
+ 0xbfe3fed9534556d4, 0xbfe8fbcca3ef940d, // -0.62486, -0.78074
+ 0xbfe3d78238c58343, 0xbfe91b166fd49da2, // -0.62006, -0.78456
+ 0xbfe3affa292050b9, 0xbfe93a22499263fc, // -0.61523, -0.78835
+ 0xbfe3884185dfeb22, 0xbfe958efe48e6dd7, // -0.61038, -0.79211
+ 0xbfe36058b10659f3, 0xbfe9777ef4c7d742, // -0.60551, -0.79584
+ 0xbfe338400d0c8e57, 0xbfe995cf2ed80d22, // -0.60062, -0.79954
+ 0xbfe30ff7fce17035, 0xbfe9b3e047f38741, // -0.5957, -0.80321
+ 0xbfe2e780e3e8ea16, 0xbfe9d1b1f5ea80d6, // -0.59076, -0.80685
+ 0xbfe2bedb25faf3ea, 0xbfe9ef43ef29af94, // -0.5858, -0.81046
+ 0xbfe2960727629ca8, 0xbfea0c95eabaf937, // -0.58081, -0.81404
+ 0xbfe26d054cdd12df, 0xbfea29a7a0462782, // -0.57581, -0.81758
+ 0xbfe243d5fb98ac1f, 0xbfea4678c8119ac8, // -0.57078, -0.8211
+ 0xbfe21a799933eb58, 0xbfea63091b02fae2, // -0.56573, -0.82459
+ 0xbfe1f0f08bbc861b, 0xbfea7f58529fe69d, // -0.56066, -0.82805
+ 0xbfe1c73b39ae68c8, 0xbfea9b66290ea1a3, // -0.55557, -0.83147
+ 0xbfe19d5a09f2b9b8, 0xbfeab7325916c0d4, // -0.55046, -0.83486
+ 0xbfe1734d63dedb49, 0xbfead2bc9e21d511, // -0.54532, -0.83822
+ 0xbfe14915af336ceb, 0xbfeaee04b43c1474, // -0.54017, -0.84155
+ 0xbfe11eb3541b4b22, 0xbfeb090a58150200, // -0.535, -0.84485
+ 0xbfe0f426bb2a8e7d, 0xbfeb23cd470013b4, // -0.5298, -0.84812
+ 0xbfe0c9704d5d898f, 0xbfeb3e4d3ef55712, // -0.52459, -0.85136
+ 0xbfe09e907417c5e1, 0xbfeb5889fe921405, // -0.51936, -0.85456
+ 0xbfe073879922ffed, 0xbfeb728345196e3e, // -0.5141, -0.85773
+ 0xbfe0485626ae221a, 0xbfeb8c38d27504e9, // -0.50883, -0.86087
+ 0xbfe01cfc874c3eb7, 0xbfeba5aa673590d2, // -0.50354, -0.86397
+ 0xbfdfe2f64be7120f, 0xbfebbed7c49380ea, // -0.49823, -0.86705
+ 0xbfdf8ba4dbf89aba, 0xbfebd7c0ac6f952a, // -0.4929, -0.87009
+ 0xbfdf3405963fd068, 0xbfebf064e15377dd, // -0.48755, -0.87309
+ 0xbfdedc1952ef78d5, 0xbfec08c426725549, // -0.48218, -0.87607
+ 0xbfde83e0eaf85113, 0xbfec20de3fa971b0, // -0.4768, -0.87901
+ 0xbfde2b5d3806f63b, 0xbfec38b2f180bdb1, // -0.4714, -0.88192
+ 0xbfddd28f1481cc58, 0xbfec5042012b6907, // -0.46598, -0.8848
+ 0xbfdd79775b86e389, 0xbfec678b3488739b, // -0.46054, -0.88764
+ 0xbfdd2016e8e9db5b, 0xbfec7e8e52233cf3, // -0.45508, -0.89045
+ 0xbfdcc66e9931c45d, 0xbfec954b213411f5, // -0.44961, -0.89322
+ 0xbfdc6c7f4997000a, 0xbfecabc169a0b901, // -0.44412, -0.89597
+ 0xbfdc1249d8011ee7, 0xbfecc1f0f3fcfc5c, // -0.43862, -0.89867
+ 0xbfdbb7cf2304bd01, 0xbfecd7d9898b32f6, // -0.43309, -0.90135
+ 0xbfdb5d1009e15cc0, 0xbfeced7af43cc773, // -0.42756, -0.90399
+ 0xbfdb020d6c7f4009, 0xbfed02d4feb2bd92, // -0.422, -0.9066
+ 0xbfdaa6c82b6d3fc9, 0xbfed17e7743e35dc, // -0.41643, -0.90917
+ 0xbfda4b4127dea1e4, 0xbfed2cb220e0ef9f, // -0.41084, -0.91171
+ 0xbfd9ef7943a8ed8a, 0xbfed4134d14dc93a, // -0.40524, -0.91421
+ 0xbfd993716141bdfe, 0xbfed556f52e93eb1, // -0.39962, -0.91668
+ 0xbfd9372a63bc93d7, 0xbfed696173c9e68b, // -0.39399, -0.91911
+ 0xbfd8daa52ec8a4af, 0xbfed7d0b02b8ecf9, // -0.38835, -0.92151
+ 0xbfd87de2a6aea963, 0xbfed906bcf328d46, // -0.38268, -0.92388
+ 0xbfd820e3b04eaac4, 0xbfeda383a9668988, // -0.37701, -0.92621
+ 0xbfd7c3a9311dcce7, 0xbfedb6526238a09b, // -0.37132, -0.92851
+ 0xbfd766340f2418f6, 0xbfedc8d7cb410260, // -0.36561, -0.93077
+ 0xbfd7088530fa459e, 0xbfeddb13b6ccc23d, // -0.3599, -0.93299
+ 0xbfd6aa9d7dc77e16, 0xbfeded05f7de47da, // -0.35416, -0.93518
+ 0xbfd64c7ddd3f27c6, 0xbfedfeae622dbe2b, // -0.34842, -0.93734
+ 0xbfd5ee27379ea693, 0xbfee100cca2980ac, // -0.34266, -0.93946
+ 0xbfd58f9a75ab1fdd, 0xbfee212104f686e5, // -0.33689, -0.94154
+ 0xbfd530d880af3c24, 0xbfee31eae870ce25, // -0.33111, -0.94359
+ 0xbfd4d1e24278e76a, 0xbfee426a4b2bc17e, // -0.32531, -0.94561
+ 0xbfd472b8a5571054, 0xbfee529f04729ffc, // -0.3195, -0.94759
+ 0xbfd4135c94176602, 0xbfee6288ec48e112, // -0.31368, -0.94953
+ 0xbfd3b3cefa0414b7, 0xbfee7227db6a9744, // -0.30785, -0.95144
+ 0xbfd35410c2e18152, 0xbfee817bab4cd10d, // -0.30201, -0.95331
+ 0xbfd2f422daec0386, 0xbfee9084361df7f3, // -0.29615, -0.95514
+ 0xbfd294062ed59f05, 0xbfee9f4156c62dda, // -0.29028, -0.95694
+ 0xbfd233bbabc3bb72, 0xbfeeadb2e8e7a88e, // -0.28441, -0.9587
+ 0xbfd1d3443f4cdb3d, 0xbfeebbd8c8df0b74, // -0.27852, -0.96043
+ 0xbfd172a0d7765177, 0xbfeec9b2d3c3bf84, // -0.27262, -0.96212
+ 0xbfd111d262b1f677, 0xbfeed740e7684963, // -0.26671, -0.96378
+ 0xbfd0b0d9cfdbdb90, 0xbfeee482e25a9dbc, // -0.26079, -0.96539
+ 0xbfd04fb80e37fdae, 0xbfeef178a3e473c2, // -0.25487, -0.96698
+ 0xbfcfdcdc1adfedf8, 0xbfeefe220c0b95ec, // -0.24893, -0.96852
+ 0xbfcf19f97b215f1a, 0xbfef0a7efb9230d7, // -0.24298, -0.97003
+ 0xbfce56ca1e101a1b, 0xbfef168f53f7205d, // -0.23702, -0.9715
+ 0xbfcd934fe5454311, 0xbfef2252f7763ada, // -0.23106, -0.97294
+ 0xbfcccf8cb312b286, 0xbfef2dc9c9089a9d, // -0.22508, -0.97434
+ 0xbfcc0b826a7e4f63, 0xbfef38f3ac64e589, // -0.2191, -0.9757
+ 0xbfcb4732ef3d6722, 0xbfef43d085ff92dd, // -0.21311, -0.97703
+ 0xbfca82a025b00451, 0xbfef4e603b0b2f2d, // -0.20711, -0.97832
+ 0xbfc9bdcbf2dc4366, 0xbfef58a2b1789e84, // -0.2011, -0.97957
+ 0xbfc8f8b83c69a60a, 0xbfef6297cff75cb0, // -0.19509, -0.98079
+ 0xbfc83366e89c64c5, 0xbfef6c3f7df5bbb7, // -0.18907, -0.98196
+ 0xbfc76dd9de50bf31, 0xbfef7599a3a12077, // -0.18304, -0.98311
+ 0xbfc6a81304f64ab2, 0xbfef7ea629e63d6e, // -0.177, -0.98421
+ 0xbfc5e214448b3fc6, 0xbfef8764fa714ba9, // -0.17096, -0.98528
+ 0xbfc51bdf8597c5f2, 0xbfef8fd5ffae41db, // -0.16491, -0.98631
+ 0xbfc45576b1293e5a, 0xbfef97f924c9099b, // -0.15886, -0.9873
+ 0xbfc38edbb0cd8d14, 0xbfef9fce55adb2c8, // -0.1528, -0.98826
+ 0xbfc2c8106e8e613a, 0xbfefa7557f08a517, // -0.14673, -0.98918
+ 0xbfc20116d4ec7bce, 0xbfefae8e8e46cfbb, // -0.14066, -0.99006
+ 0xbfc139f0cedaf576, 0xbfefb5797195d741, // -0.13458, -0.9909
+ 0xbfc072a047ba831d, 0xbfefbc1617e44186, // -0.1285, -0.99171
+ 0xbfbf564e56a9730e, 0xbfefc26470e19fd3, // -0.12241, -0.99248
+ 0xbfbdc70ecbae9fc8, 0xbfefc8646cfeb721, // -0.11632, -0.99321
+ 0xbfbc3785c79ec2d5, 0xbfefce15fd6da67b, // -0.11022, -0.99391
+ 0xbfbaa7b724495c04, 0xbfefd37914220b84, // -0.10412, -0.99456
+ 0xbfb917a6bc29b42c, 0xbfefd88da3d12526, // -0.098017, -0.99518
+ 0xbfb787586a5d5b21, 0xbfefdd539ff1f456, // -0.091909, -0.99577
+ 0xbfb5f6d00a9aa419, 0xbfefe1cafcbd5b09, // -0.085797, -0.99631
+ 0xbfb4661179272096, 0xbfefe5f3af2e3940, // -0.079682, -0.99682
+ 0xbfb2d52092ce19f6, 0xbfefe9cdad01883a, // -0.073565, -0.99729
+ 0xbfb1440134d709b2, 0xbfefed58ecb673c4, // -0.067444, -0.99772
+ 0xbfaf656e79f820e0, 0xbfeff095658e71ad, // -0.061321, -0.99812
+ 0xbfac428d12c0d7e3, 0xbfeff3830f8d575c, // -0.055195, -0.99848
+ 0xbfa91f65f10dd814, 0xbfeff621e3796d7e, // -0.049068, -0.9988
+ 0xbfa5fc00d290cd43, 0xbfeff871dadb81df, // -0.042938, -0.99908
+ 0xbfa2d865759455cd, 0xbfeffa72effef75d, // -0.036807, -0.99932
+ 0xbf9f693731d1cf01, 0xbfeffc251df1d3f8, // -0.030675, -0.99953
+ 0xbf992155f7a3667e, 0xbfeffd886084cd0d, // -0.024541, -0.9997
+ 0xbf92d936bbe30efd, 0xbfeffe9cb44b51a1, // -0.018407, -0.99983
+ 0xbf8921d1fcdec784, 0xbfefff62169b92db, // -0.012272, -0.99992
+ 0xbf7921f0fe670071, 0xbfefffd8858e8a92, //-0.0061359, -0.99998
+ 0x0000000000000000, 0xbff0000000000000, // 0, -1
+ 0x3f7921f0fe670071, 0xbfefffd8858e8a92, // 0.0061359, -0.99998
+ 0x3f8921d1fcdec784, 0xbfefff62169b92db, // 0.012272, -0.99992
+ 0x3f92d936bbe30efd, 0xbfeffe9cb44b51a1, // 0.018407, -0.99983
+ 0x3f992155f7a3667e, 0xbfeffd886084cd0d, // 0.024541, -0.9997
+ 0x3f9f693731d1cf01, 0xbfeffc251df1d3f8, // 0.030675, -0.99953
+ 0x3fa2d865759455cd, 0xbfeffa72effef75d, // 0.036807, -0.99932
+ 0x3fa5fc00d290cd43, 0xbfeff871dadb81df, // 0.042938, -0.99908
+ 0x3fa91f65f10dd814, 0xbfeff621e3796d7e, // 0.049068, -0.9988
+ 0x3fac428d12c0d7e3, 0xbfeff3830f8d575c, // 0.055195, -0.99848
+ 0x3faf656e79f820e0, 0xbfeff095658e71ad, // 0.061321, -0.99812
+ 0x3fb1440134d709b2, 0xbfefed58ecb673c4, // 0.067444, -0.99772
+ 0x3fb2d52092ce19f6, 0xbfefe9cdad01883a, // 0.073565, -0.99729
+ 0x3fb4661179272096, 0xbfefe5f3af2e3940, // 0.079682, -0.99682
+ 0x3fb5f6d00a9aa419, 0xbfefe1cafcbd5b09, // 0.085797, -0.99631
+ 0x3fb787586a5d5b21, 0xbfefdd539ff1f456, // 0.091909, -0.99577
+ 0x3fb917a6bc29b42c, 0xbfefd88da3d12526, // 0.098017, -0.99518
+ 0x3fbaa7b724495c04, 0xbfefd37914220b84, // 0.10412, -0.99456
+ 0x3fbc3785c79ec2d5, 0xbfefce15fd6da67b, // 0.11022, -0.99391
+ 0x3fbdc70ecbae9fc8, 0xbfefc8646cfeb721, // 0.11632, -0.99321
+ 0x3fbf564e56a9730e, 0xbfefc26470e19fd3, // 0.12241, -0.99248
+ 0x3fc072a047ba831d, 0xbfefbc1617e44186, // 0.1285, -0.99171
+ 0x3fc139f0cedaf576, 0xbfefb5797195d741, // 0.13458, -0.9909
+ 0x3fc20116d4ec7bce, 0xbfefae8e8e46cfbb, // 0.14066, -0.99006
+ 0x3fc2c8106e8e613a, 0xbfefa7557f08a517, // 0.14673, -0.98918
+ 0x3fc38edbb0cd8d14, 0xbfef9fce55adb2c8, // 0.1528, -0.98826
+ 0x3fc45576b1293e5a, 0xbfef97f924c9099b, // 0.15886, -0.9873
+ 0x3fc51bdf8597c5f2, 0xbfef8fd5ffae41db, // 0.16491, -0.98631
+ 0x3fc5e214448b3fc6, 0xbfef8764fa714ba9, // 0.17096, -0.98528
+ 0x3fc6a81304f64ab2, 0xbfef7ea629e63d6e, // 0.177, -0.98421
+ 0x3fc76dd9de50bf31, 0xbfef7599a3a12077, // 0.18304, -0.98311
+ 0x3fc83366e89c64c5, 0xbfef6c3f7df5bbb7, // 0.18907, -0.98196
+ 0x3fc8f8b83c69a60a, 0xbfef6297cff75cb0, // 0.19509, -0.98079
+ 0x3fc9bdcbf2dc4366, 0xbfef58a2b1789e84, // 0.2011, -0.97957
+ 0x3fca82a025b00451, 0xbfef4e603b0b2f2d, // 0.20711, -0.97832
+ 0x3fcb4732ef3d6722, 0xbfef43d085ff92dd, // 0.21311, -0.97703
+ 0x3fcc0b826a7e4f63, 0xbfef38f3ac64e589, // 0.2191, -0.9757
+ 0x3fcccf8cb312b286, 0xbfef2dc9c9089a9d, // 0.22508, -0.97434
+ 0x3fcd934fe5454311, 0xbfef2252f7763ada, // 0.23106, -0.97294
+ 0x3fce56ca1e101a1b, 0xbfef168f53f7205d, // 0.23702, -0.9715
+ 0x3fcf19f97b215f1a, 0xbfef0a7efb9230d7, // 0.24298, -0.97003
+ 0x3fcfdcdc1adfedf8, 0xbfeefe220c0b95ec, // 0.24893, -0.96852
+ 0x3fd04fb80e37fdae, 0xbfeef178a3e473c2, // 0.25487, -0.96698
+ 0x3fd0b0d9cfdbdb90, 0xbfeee482e25a9dbc, // 0.26079, -0.96539
+ 0x3fd111d262b1f677, 0xbfeed740e7684963, // 0.26671, -0.96378
+ 0x3fd172a0d7765177, 0xbfeec9b2d3c3bf84, // 0.27262, -0.96212
+ 0x3fd1d3443f4cdb3d, 0xbfeebbd8c8df0b74, // 0.27852, -0.96043
+ 0x3fd233bbabc3bb72, 0xbfeeadb2e8e7a88e, // 0.28441, -0.9587
+ 0x3fd294062ed59f05, 0xbfee9f4156c62dda, // 0.29028, -0.95694
+ 0x3fd2f422daec0386, 0xbfee9084361df7f3, // 0.29615, -0.95514
+ 0x3fd35410c2e18152, 0xbfee817bab4cd10d, // 0.30201, -0.95331
+ 0x3fd3b3cefa0414b7, 0xbfee7227db6a9744, // 0.30785, -0.95144
+ 0x3fd4135c94176602, 0xbfee6288ec48e112, // 0.31368, -0.94953
+ 0x3fd472b8a5571054, 0xbfee529f04729ffc, // 0.3195, -0.94759
+ 0x3fd4d1e24278e76a, 0xbfee426a4b2bc17e, // 0.32531, -0.94561
+ 0x3fd530d880af3c24, 0xbfee31eae870ce25, // 0.33111, -0.94359
+ 0x3fd58f9a75ab1fdd, 0xbfee212104f686e5, // 0.33689, -0.94154
+ 0x3fd5ee27379ea693, 0xbfee100cca2980ac, // 0.34266, -0.93946
+ 0x3fd64c7ddd3f27c6, 0xbfedfeae622dbe2b, // 0.34842, -0.93734
+ 0x3fd6aa9d7dc77e16, 0xbfeded05f7de47da, // 0.35416, -0.93518
+ 0x3fd7088530fa459e, 0xbfeddb13b6ccc23d, // 0.3599, -0.93299
+ 0x3fd766340f2418f6, 0xbfedc8d7cb410260, // 0.36561, -0.93077
+ 0x3fd7c3a9311dcce7, 0xbfedb6526238a09b, // 0.37132, -0.92851
+ 0x3fd820e3b04eaac4, 0xbfeda383a9668988, // 0.37701, -0.92621
+ 0x3fd87de2a6aea963, 0xbfed906bcf328d46, // 0.38268, -0.92388
+ 0x3fd8daa52ec8a4af, 0xbfed7d0b02b8ecf9, // 0.38835, -0.92151
+ 0x3fd9372a63bc93d7, 0xbfed696173c9e68b, // 0.39399, -0.91911
+ 0x3fd993716141bdfe, 0xbfed556f52e93eb1, // 0.39962, -0.91668
+ 0x3fd9ef7943a8ed8a, 0xbfed4134d14dc93a, // 0.40524, -0.91421
+ 0x3fda4b4127dea1e4, 0xbfed2cb220e0ef9f, // 0.41084, -0.91171
+ 0x3fdaa6c82b6d3fc9, 0xbfed17e7743e35dc, // 0.41643, -0.90917
+ 0x3fdb020d6c7f4009, 0xbfed02d4feb2bd92, // 0.422, -0.9066
+ 0x3fdb5d1009e15cc0, 0xbfeced7af43cc773, // 0.42756, -0.90399
+ 0x3fdbb7cf2304bd01, 0xbfecd7d9898b32f6, // 0.43309, -0.90135
+ 0x3fdc1249d8011ee7, 0xbfecc1f0f3fcfc5c, // 0.43862, -0.89867
+ 0x3fdc6c7f4997000a, 0xbfecabc169a0b901, // 0.44412, -0.89597
+ 0x3fdcc66e9931c45d, 0xbfec954b213411f5, // 0.44961, -0.89322
+ 0x3fdd2016e8e9db5b, 0xbfec7e8e52233cf3, // 0.45508, -0.89045
+ 0x3fdd79775b86e389, 0xbfec678b3488739b, // 0.46054, -0.88764
+ 0x3fddd28f1481cc58, 0xbfec5042012b6907, // 0.46598, -0.8848
+ 0x3fde2b5d3806f63b, 0xbfec38b2f180bdb1, // 0.4714, -0.88192
+ 0x3fde83e0eaf85113, 0xbfec20de3fa971b0, // 0.4768, -0.87901
+ 0x3fdedc1952ef78d5, 0xbfec08c426725549, // 0.48218, -0.87607
+ 0x3fdf3405963fd068, 0xbfebf064e15377dd, // 0.48755, -0.87309
+ 0x3fdf8ba4dbf89aba, 0xbfebd7c0ac6f952a, // 0.4929, -0.87009
+ 0x3fdfe2f64be7120f, 0xbfebbed7c49380ea, // 0.49823, -0.86705
+ 0x3fe01cfc874c3eb7, 0xbfeba5aa673590d2, // 0.50354, -0.86397
+ 0x3fe0485626ae221a, 0xbfeb8c38d27504e9, // 0.50883, -0.86087
+ 0x3fe073879922ffed, 0xbfeb728345196e3e, // 0.5141, -0.85773
+ 0x3fe09e907417c5e1, 0xbfeb5889fe921405, // 0.51936, -0.85456
+ 0x3fe0c9704d5d898f, 0xbfeb3e4d3ef55712, // 0.52459, -0.85136
+ 0x3fe0f426bb2a8e7d, 0xbfeb23cd470013b4, // 0.5298, -0.84812
+ 0x3fe11eb3541b4b22, 0xbfeb090a58150200, // 0.535, -0.84485
+ 0x3fe14915af336ceb, 0xbfeaee04b43c1474, // 0.54017, -0.84155
+ 0x3fe1734d63dedb49, 0xbfead2bc9e21d511, // 0.54532, -0.83822
+ 0x3fe19d5a09f2b9b8, 0xbfeab7325916c0d4, // 0.55046, -0.83486
+ 0x3fe1c73b39ae68c8, 0xbfea9b66290ea1a3, // 0.55557, -0.83147
+ 0x3fe1f0f08bbc861b, 0xbfea7f58529fe69d, // 0.56066, -0.82805
+ 0x3fe21a799933eb58, 0xbfea63091b02fae2, // 0.56573, -0.82459
+ 0x3fe243d5fb98ac1f, 0xbfea4678c8119ac8, // 0.57078, -0.8211
+ 0x3fe26d054cdd12df, 0xbfea29a7a0462782, // 0.57581, -0.81758
+ 0x3fe2960727629ca8, 0xbfea0c95eabaf937, // 0.58081, -0.81404
+ 0x3fe2bedb25faf3ea, 0xbfe9ef43ef29af94, // 0.5858, -0.81046
+ 0x3fe2e780e3e8ea16, 0xbfe9d1b1f5ea80d6, // 0.59076, -0.80685
+ 0x3fe30ff7fce17035, 0xbfe9b3e047f38741, // 0.5957, -0.80321
+ 0x3fe338400d0c8e57, 0xbfe995cf2ed80d22, // 0.60062, -0.79954
+ 0x3fe36058b10659f3, 0xbfe9777ef4c7d742, // 0.60551, -0.79584
+ 0x3fe3884185dfeb22, 0xbfe958efe48e6dd7, // 0.61038, -0.79211
+ 0x3fe3affa292050b9, 0xbfe93a22499263fc, // 0.61523, -0.78835
+ 0x3fe3d78238c58343, 0xbfe91b166fd49da2, // 0.62006, -0.78456
+ 0x3fe3fed9534556d4, 0xbfe8fbcca3ef940d, // 0.62486, -0.78074
+ 0x3fe425ff178e6bb1, 0xbfe8dc45331698cc, // 0.62964, -0.77689
+ 0x3fe44cf325091dd6, 0xbfe8bc806b151741, // 0.63439, -0.77301
+ 0x3fe473b51b987347, 0xbfe89c7e9a4dd4ab, // 0.63912, -0.7691
+ 0x3fe49a449b9b0938, 0xbfe87c400fba2ebf, // 0.64383, -0.76517
+ 0x3fe4c0a145ec0004, 0xbfe85bc51ae958cc, // 0.64851, -0.7612
+ 0x3fe4e6cabbe3e5e9, 0xbfe83b0e0bff976e, // 0.65317, -0.75721
+ 0x3fe50cc09f59a09b, 0xbfe81a1b33b57acc, // 0.65781, -0.75319
+ 0x3fe5328292a35596, 0xbfe7f8ece3571771, // 0.66242, -0.74914
+ 0x3fe5581038975137, 0xbfe7d7836cc33db2, // 0.667, -0.74506
+ 0x3fe57d69348cec9f, 0xbfe7b5df226aafb0, // 0.67156, -0.74095
+ 0x3fe5a28d2a5d7250, 0xbfe79400574f55e4, // 0.67609, -0.73682
+ 0x3fe5c77bbe65018c, 0xbfe771e75f037261, // 0.6806, -0.73265
+ 0x3fe5ec3495837074, 0xbfe74f948da8d28d, // 0.68508, -0.72846
+ 0x3fe610b7551d2cde, 0xbfe72d0837efff97, // 0.68954, -0.72425
+ 0x3fe63503a31c1be8, 0xbfe70a42b3176d7a, // 0.69397, -0.72
+ 0x3fe6591925f0783e, 0xbfe6e74454eaa8ae, // 0.69838, -0.71573
+ 0x3fe67cf78491af10, 0xbfe6c40d73c18275, // 0.70275, -0.71143
+ 0x3fe6a09e667f3bcc, 0xbfe6a09e667f3bcc, // 0.70711, -0.70711
+ 0x3fe6c40d73c18275, 0xbfe67cf78491af10, // 0.71143, -0.70275
+ 0x3fe6e74454eaa8ae, 0xbfe6591925f0783e, // 0.71573, -0.69838
+ 0x3fe70a42b3176d7a, 0xbfe63503a31c1be8, // 0.72, -0.69397
+ 0x3fe72d0837efff97, 0xbfe610b7551d2cde, // 0.72425, -0.68954
+ 0x3fe74f948da8d28d, 0xbfe5ec3495837074, // 0.72846, -0.68508
+ 0x3fe771e75f037261, 0xbfe5c77bbe65018c, // 0.73265, -0.6806
+ 0x3fe79400574f55e4, 0xbfe5a28d2a5d7250, // 0.73682, -0.67609
+ 0x3fe7b5df226aafb0, 0xbfe57d69348cec9f, // 0.74095, -0.67156
+ 0x3fe7d7836cc33db2, 0xbfe5581038975137, // 0.74506, -0.667
+ 0x3fe7f8ece3571771, 0xbfe5328292a35596, // 0.74914, -0.66242
+ 0x3fe81a1b33b57acc, 0xbfe50cc09f59a09b, // 0.75319, -0.65781
+ 0x3fe83b0e0bff976e, 0xbfe4e6cabbe3e5e9, // 0.75721, -0.65317
+ 0x3fe85bc51ae958cc, 0xbfe4c0a145ec0004, // 0.7612, -0.64851
+ 0x3fe87c400fba2ebf, 0xbfe49a449b9b0938, // 0.76517, -0.64383
+ 0x3fe89c7e9a4dd4ab, 0xbfe473b51b987347, // 0.7691, -0.63912
+ 0x3fe8bc806b151741, 0xbfe44cf325091dd6, // 0.77301, -0.63439
+ 0x3fe8dc45331698cc, 0xbfe425ff178e6bb1, // 0.77689, -0.62964
+ 0x3fe8fbcca3ef940d, 0xbfe3fed9534556d4, // 0.78074, -0.62486
+ 0x3fe91b166fd49da2, 0xbfe3d78238c58343, // 0.78456, -0.62006
+ 0x3fe93a22499263fc, 0xbfe3affa292050b9, // 0.78835, -0.61523
+ 0x3fe958efe48e6dd7, 0xbfe3884185dfeb22, // 0.79211, -0.61038
+ 0x3fe9777ef4c7d742, 0xbfe36058b10659f3, // 0.79584, -0.60551
+ 0x3fe995cf2ed80d22, 0xbfe338400d0c8e57, // 0.79954, -0.60062
+ 0x3fe9b3e047f38741, 0xbfe30ff7fce17035, // 0.80321, -0.5957
+ 0x3fe9d1b1f5ea80d6, 0xbfe2e780e3e8ea16, // 0.80685, -0.59076
+ 0x3fe9ef43ef29af94, 0xbfe2bedb25faf3ea, // 0.81046, -0.5858
+ 0x3fea0c95eabaf937, 0xbfe2960727629ca8, // 0.81404, -0.58081
+ 0x3fea29a7a0462782, 0xbfe26d054cdd12df, // 0.81758, -0.57581
+ 0x3fea4678c8119ac8, 0xbfe243d5fb98ac1f, // 0.8211, -0.57078
+ 0x3fea63091b02fae2, 0xbfe21a799933eb58, // 0.82459, -0.56573
+ 0x3fea7f58529fe69d, 0xbfe1f0f08bbc861b, // 0.82805, -0.56066
+ 0x3fea9b66290ea1a3, 0xbfe1c73b39ae68c8, // 0.83147, -0.55557
+ 0x3feab7325916c0d4, 0xbfe19d5a09f2b9b8, // 0.83486, -0.55046
+ 0x3fead2bc9e21d511, 0xbfe1734d63dedb49, // 0.83822, -0.54532
+ 0x3feaee04b43c1474, 0xbfe14915af336ceb, // 0.84155, -0.54017
+ 0x3feb090a58150200, 0xbfe11eb3541b4b22, // 0.84485, -0.535
+ 0x3feb23cd470013b4, 0xbfe0f426bb2a8e7d, // 0.84812, -0.5298
+ 0x3feb3e4d3ef55712, 0xbfe0c9704d5d898f, // 0.85136, -0.52459
+ 0x3feb5889fe921405, 0xbfe09e907417c5e1, // 0.85456, -0.51936
+ 0x3feb728345196e3e, 0xbfe073879922ffed, // 0.85773, -0.5141
+ 0x3feb8c38d27504e9, 0xbfe0485626ae221a, // 0.86087, -0.50883
+ 0x3feba5aa673590d2, 0xbfe01cfc874c3eb7, // 0.86397, -0.50354
+ 0x3febbed7c49380ea, 0xbfdfe2f64be7120f, // 0.86705, -0.49823
+ 0x3febd7c0ac6f952a, 0xbfdf8ba4dbf89aba, // 0.87009, -0.4929
+ 0x3febf064e15377dd, 0xbfdf3405963fd068, // 0.87309, -0.48755
+ 0x3fec08c426725549, 0xbfdedc1952ef78d5, // 0.87607, -0.48218
+ 0x3fec20de3fa971b0, 0xbfde83e0eaf85113, // 0.87901, -0.4768
+ 0x3fec38b2f180bdb1, 0xbfde2b5d3806f63b, // 0.88192, -0.4714
+ 0x3fec5042012b6907, 0xbfddd28f1481cc58, // 0.8848, -0.46598
+ 0x3fec678b3488739b, 0xbfdd79775b86e389, // 0.88764, -0.46054
+ 0x3fec7e8e52233cf3, 0xbfdd2016e8e9db5b, // 0.89045, -0.45508
+ 0x3fec954b213411f5, 0xbfdcc66e9931c45d, // 0.89322, -0.44961
+ 0x3fecabc169a0b901, 0xbfdc6c7f4997000a, // 0.89597, -0.44412
+ 0x3fecc1f0f3fcfc5c, 0xbfdc1249d8011ee7, // 0.89867, -0.43862
+ 0x3fecd7d9898b32f6, 0xbfdbb7cf2304bd01, // 0.90135, -0.43309
+ 0x3feced7af43cc773, 0xbfdb5d1009e15cc0, // 0.90399, -0.42756
+ 0x3fed02d4feb2bd92, 0xbfdb020d6c7f4009, // 0.9066, -0.422
+ 0x3fed17e7743e35dc, 0xbfdaa6c82b6d3fc9, // 0.90917, -0.41643
+ 0x3fed2cb220e0ef9f, 0xbfda4b4127dea1e4, // 0.91171, -0.41084
+ 0x3fed4134d14dc93a, 0xbfd9ef7943a8ed8a, // 0.91421, -0.40524
+ 0x3fed556f52e93eb1, 0xbfd993716141bdfe, // 0.91668, -0.39962
+ 0x3fed696173c9e68b, 0xbfd9372a63bc93d7, // 0.91911, -0.39399
+ 0x3fed7d0b02b8ecf9, 0xbfd8daa52ec8a4af, // 0.92151, -0.38835
+ 0x3fed906bcf328d46, 0xbfd87de2a6aea963, // 0.92388, -0.38268
+ 0x3feda383a9668988, 0xbfd820e3b04eaac4, // 0.92621, -0.37701
+ 0x3fedb6526238a09b, 0xbfd7c3a9311dcce7, // 0.92851, -0.37132
+ 0x3fedc8d7cb410260, 0xbfd766340f2418f6, // 0.93077, -0.36561
+ 0x3feddb13b6ccc23d, 0xbfd7088530fa459e, // 0.93299, -0.3599
+ 0x3feded05f7de47da, 0xbfd6aa9d7dc77e16, // 0.93518, -0.35416
+ 0x3fedfeae622dbe2b, 0xbfd64c7ddd3f27c6, // 0.93734, -0.34842
+ 0x3fee100cca2980ac, 0xbfd5ee27379ea693, // 0.93946, -0.34266
+ 0x3fee212104f686e5, 0xbfd58f9a75ab1fdd, // 0.94154, -0.33689
+ 0x3fee31eae870ce25, 0xbfd530d880af3c24, // 0.94359, -0.33111
+ 0x3fee426a4b2bc17e, 0xbfd4d1e24278e76a, // 0.94561, -0.32531
+ 0x3fee529f04729ffc, 0xbfd472b8a5571054, // 0.94759, -0.3195
+ 0x3fee6288ec48e112, 0xbfd4135c94176602, // 0.94953, -0.31368
+ 0x3fee7227db6a9744, 0xbfd3b3cefa0414b7, // 0.95144, -0.30785
+ 0x3fee817bab4cd10d, 0xbfd35410c2e18152, // 0.95331, -0.30201
+ 0x3fee9084361df7f3, 0xbfd2f422daec0386, // 0.95514, -0.29615
+ 0x3fee9f4156c62dda, 0xbfd294062ed59f05, // 0.95694, -0.29028
+ 0x3feeadb2e8e7a88e, 0xbfd233bbabc3bb72, // 0.9587, -0.28441
+ 0x3feebbd8c8df0b74, 0xbfd1d3443f4cdb3d, // 0.96043, -0.27852
+ 0x3feec9b2d3c3bf84, 0xbfd172a0d7765177, // 0.96212, -0.27262
+ 0x3feed740e7684963, 0xbfd111d262b1f677, // 0.96378, -0.26671
+ 0x3feee482e25a9dbc, 0xbfd0b0d9cfdbdb90, // 0.96539, -0.26079
+ 0x3feef178a3e473c2, 0xbfd04fb80e37fdae, // 0.96698, -0.25487
+ 0x3feefe220c0b95ec, 0xbfcfdcdc1adfedf8, // 0.96852, -0.24893
+ 0x3fef0a7efb9230d7, 0xbfcf19f97b215f1a, // 0.97003, -0.24298
+ 0x3fef168f53f7205d, 0xbfce56ca1e101a1b, // 0.9715, -0.23702
+ 0x3fef2252f7763ada, 0xbfcd934fe5454311, // 0.97294, -0.23106
+ 0x3fef2dc9c9089a9d, 0xbfcccf8cb312b286, // 0.97434, -0.22508
+ 0x3fef38f3ac64e589, 0xbfcc0b826a7e4f63, // 0.9757, -0.2191
+ 0x3fef43d085ff92dd, 0xbfcb4732ef3d6722, // 0.97703, -0.21311
+ 0x3fef4e603b0b2f2d, 0xbfca82a025b00451, // 0.97832, -0.20711
+ 0x3fef58a2b1789e84, 0xbfc9bdcbf2dc4366, // 0.97957, -0.2011
+ 0x3fef6297cff75cb0, 0xbfc8f8b83c69a60a, // 0.98079, -0.19509
+ 0x3fef6c3f7df5bbb7, 0xbfc83366e89c64c5, // 0.98196, -0.18907
+ 0x3fef7599a3a12077, 0xbfc76dd9de50bf31, // 0.98311, -0.18304
+ 0x3fef7ea629e63d6e, 0xbfc6a81304f64ab2, // 0.98421, -0.177
+ 0x3fef8764fa714ba9, 0xbfc5e214448b3fc6, // 0.98528, -0.17096
+ 0x3fef8fd5ffae41db, 0xbfc51bdf8597c5f2, // 0.98631, -0.16491
+ 0x3fef97f924c9099b, 0xbfc45576b1293e5a, // 0.9873, -0.15886
+ 0x3fef9fce55adb2c8, 0xbfc38edbb0cd8d14, // 0.98826, -0.1528
+ 0x3fefa7557f08a517, 0xbfc2c8106e8e613a, // 0.98918, -0.14673
+ 0x3fefae8e8e46cfbb, 0xbfc20116d4ec7bce, // 0.99006, -0.14066
+ 0x3fefb5797195d741, 0xbfc139f0cedaf576, // 0.9909, -0.13458
+ 0x3fefbc1617e44186, 0xbfc072a047ba831d, // 0.99171, -0.1285
+ 0x3fefc26470e19fd3, 0xbfbf564e56a9730e, // 0.99248, -0.12241
+ 0x3fefc8646cfeb721, 0xbfbdc70ecbae9fc8, // 0.99321, -0.11632
+ 0x3fefce15fd6da67b, 0xbfbc3785c79ec2d5, // 0.99391, -0.11022
+ 0x3fefd37914220b84, 0xbfbaa7b724495c04, // 0.99456, -0.10412
+ 0x3fefd88da3d12526, 0xbfb917a6bc29b42c, // 0.99518, -0.098017
+ 0x3fefdd539ff1f456, 0xbfb787586a5d5b21, // 0.99577, -0.091909
+ 0x3fefe1cafcbd5b09, 0xbfb5f6d00a9aa419, // 0.99631, -0.085797
+ 0x3fefe5f3af2e3940, 0xbfb4661179272096, // 0.99682, -0.079682
+ 0x3fefe9cdad01883a, 0xbfb2d52092ce19f6, // 0.99729, -0.073565
+ 0x3fefed58ecb673c4, 0xbfb1440134d709b2, // 0.99772, -0.067444
+ 0x3feff095658e71ad, 0xbfaf656e79f820e0, // 0.99812, -0.061321
+ 0x3feff3830f8d575c, 0xbfac428d12c0d7e3, // 0.99848, -0.055195
+ 0x3feff621e3796d7e, 0xbfa91f65f10dd814, // 0.9988, -0.049068
+ 0x3feff871dadb81df, 0xbfa5fc00d290cd43, // 0.99908, -0.042938
+ 0x3feffa72effef75d, 0xbfa2d865759455cd, // 0.99932, -0.036807
+ 0x3feffc251df1d3f8, 0xbf9f693731d1cf01, // 0.99953, -0.030675
+ 0x3feffd886084cd0d, 0xbf992155f7a3667e, // 0.9997, -0.024541
+ 0x3feffe9cb44b51a1, 0xbf92d936bbe30efd, // 0.99983, -0.018407
+ 0x3fefff62169b92db, 0xbf8921d1fcdec784, // 0.99992, -0.012272
+ 0x3fefffd8858e8a92, 0xbf7921f0fe670071, // 0.99998,-0.0061359
+};
+
+#endif /* !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) */
+
+#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || defined(ARM_TABLE_TWIDDLECOEF_F64_2048)
+/**
+ @par
+ Example code for Double Precision Floating-point Twiddle factors Generation:
+ @par
+ <pre>for (i = 0; i< N/; i++)
+ {
+ twiddleCoef[2*i] = cos(i * 2*PI/(float)N);
+ twiddleCoef[2*i+1] = sin(i * 2*PI/(float)N);
+ } </pre>
+ @par
+ where N = 2048, PI = 3.14159265358979
+ @par
+ Cos and Sin values are in interleaved fashion
+*/
+const uint64_t twiddleCoefF64_2048[4096] = {
+ 0x3ff0000000000000, 0x0000000000000000, // 1, 0
+ 0x3feffff621621d02, 0x3f6921f8becca4ba, // 1, 0.003068
+ 0x3fefffd8858e8a92, 0x3f7921f0fe670071, // 0.99998, 0.0061359
+ 0x3fefffa72c978c4f, 0x3f82d96b0e509703, // 0.99996, 0.0092038
+ 0x3fefff62169b92db, 0x3f8921d1fcdec784, // 0.99992, 0.012272
+ 0x3fefff0943c53bd1, 0x3f8f6a296ab997ca, // 0.99988, 0.015339
+ 0x3feffe9cb44b51a1, 0x3f92d936bbe30efd, // 0.99983, 0.018407
+ 0x3feffe1c6870cb77, 0x3f95fd4d21fab226, // 0.99977, 0.021474
+ 0x3feffd886084cd0d, 0x3f992155f7a3667e, // 0.9997, 0.024541
+ 0x3feffce09ce2a679, 0x3f9c454f4ce53b1c, // 0.99962, 0.027608
+ 0x3feffc251df1d3f8, 0x3f9f693731d1cf01, // 0.99953, 0.030675
+ 0x3feffb55e425fdae, 0x3fa14685db42c17e, // 0.99943, 0.033741
+ 0x3feffa72effef75d, 0x3fa2d865759455cd, // 0.99932, 0.036807
+ 0x3feff97c4208c014, 0x3fa46a396ff86179, // 0.9992, 0.039873
+ 0x3feff871dadb81df, 0x3fa5fc00d290cd43, // 0.99908, 0.042938
+ 0x3feff753bb1b9164, 0x3fa78dbaa5874685, // 0.99894, 0.046003
+ 0x3feff621e3796d7e, 0x3fa91f65f10dd814, // 0.9988, 0.049068
+ 0x3feff4dc54b1bed3, 0x3faab101bd5f8317, // 0.99864, 0.052132
+ 0x3feff3830f8d575c, 0x3fac428d12c0d7e3, // 0.99848, 0.055195
+ 0x3feff21614e131ed, 0x3fadd406f9808ec8, // 0.9983, 0.058258
+ 0x3feff095658e71ad, 0x3faf656e79f820e0, // 0.99812, 0.061321
+ 0x3fefef0102826191, 0x3fb07b614e463064, // 0.99793, 0.064383
+ 0x3fefed58ecb673c4, 0x3fb1440134d709b2, // 0.99772, 0.067444
+ 0x3fefeb9d2530410f, 0x3fb20c9674ed444c, // 0.99751, 0.070505
+ 0x3fefe9cdad01883a, 0x3fb2d52092ce19f6, // 0.99729, 0.073565
+ 0x3fefe7ea85482d60, 0x3fb39d9f12c5a299, // 0.99706, 0.076624
+ 0x3fefe5f3af2e3940, 0x3fb4661179272096, // 0.99682, 0.079682
+ 0x3fefe3e92be9d886, 0x3fb52e774a4d4d0a, // 0.99657, 0.08274
+ 0x3fefe1cafcbd5b09, 0x3fb5f6d00a9aa419, // 0.99631, 0.085797
+ 0x3fefdf9922f73307, 0x3fb6bf1b3e79b129, // 0.99604, 0.088854
+ 0x3fefdd539ff1f456, 0x3fb787586a5d5b21, // 0.99577, 0.091909
+ 0x3fefdafa7514538c, 0x3fb84f8712c130a0, // 0.99548, 0.094963
+ 0x3fefd88da3d12526, 0x3fb917a6bc29b42c, // 0.99518, 0.098017
+ 0x3fefd60d2da75c9e, 0x3fb9dfb6eb24a85c, // 0.99488, 0.10107
+ 0x3fefd37914220b84, 0x3fbaa7b724495c04, // 0.99456, 0.10412
+ 0x3fefd0d158d86087, 0x3fbb6fa6ec38f64c, // 0.99424, 0.10717
+ 0x3fefce15fd6da67b, 0x3fbc3785c79ec2d5, // 0.99391, 0.11022
+ 0x3fefcb4703914354, 0x3fbcff533b307dc1, // 0.99356, 0.11327
+ 0x3fefc8646cfeb721, 0x3fbdc70ecbae9fc8, // 0.99321, 0.11632
+ 0x3fefc56e3b7d9af6, 0x3fbe8eb7fde4aa3e, // 0.99285, 0.11937
+ 0x3fefc26470e19fd3, 0x3fbf564e56a9730e, // 0.99248, 0.12241
+ 0x3fefbf470f0a8d88, 0x3fc00ee8ad6fb85b, // 0.9921, 0.12545
+ 0x3fefbc1617e44186, 0x3fc072a047ba831d, // 0.99171, 0.1285
+ 0x3fefb8d18d66adb7, 0x3fc0d64dbcb26786, // 0.99131, 0.13154
+ 0x3fefb5797195d741, 0x3fc139f0cedaf576, // 0.9909, 0.13458
+ 0x3fefb20dc681d54d, 0x3fc19d8940be24e7, // 0.99049, 0.13762
+ 0x3fefae8e8e46cfbb, 0x3fc20116d4ec7bce, // 0.99006, 0.14066
+ 0x3fefaafbcb0cfddc, 0x3fc264994dfd340a, // 0.98962, 0.1437
+ 0x3fefa7557f08a517, 0x3fc2c8106e8e613a, // 0.98918, 0.14673
+ 0x3fefa39bac7a1791, 0x3fc32b7bf94516a7, // 0.98872, 0.14976
+ 0x3fef9fce55adb2c8, 0x3fc38edbb0cd8d14, // 0.98826, 0.1528
+ 0x3fef9bed7cfbde29, 0x3fc3f22f57db4893, // 0.98778, 0.15583
+ 0x3fef97f924c9099b, 0x3fc45576b1293e5a, // 0.9873, 0.15886
+ 0x3fef93f14f85ac08, 0x3fc4b8b17f79fa88, // 0.98681, 0.16189
+ 0x3fef8fd5ffae41db, 0x3fc51bdf8597c5f2, // 0.98631, 0.16491
+ 0x3fef8ba737cb4b78, 0x3fc57f008654cbde, // 0.9858, 0.16794
+ 0x3fef8764fa714ba9, 0x3fc5e214448b3fc6, // 0.98528, 0.17096
+ 0x3fef830f4a40c60c, 0x3fc6451a831d830d, // 0.98475, 0.17398
+ 0x3fef7ea629e63d6e, 0x3fc6a81304f64ab2, // 0.98421, 0.177
+ 0x3fef7a299c1a322a, 0x3fc70afd8d08c4ff, // 0.98366, 0.18002
+ 0x3fef7599a3a12077, 0x3fc76dd9de50bf31, // 0.98311, 0.18304
+ 0x3fef70f6434b7eb7, 0x3fc7d0a7bbd2cb1b, // 0.98254, 0.18606
+ 0x3fef6c3f7df5bbb7, 0x3fc83366e89c64c5, // 0.98196, 0.18907
+ 0x3fef677556883cee, 0x3fc8961727c41804, // 0.98138, 0.19208
+ 0x3fef6297cff75cb0, 0x3fc8f8b83c69a60a, // 0.98079, 0.19509
+ 0x3fef5da6ed43685d, 0x3fc95b49e9b62af9, // 0.98018, 0.1981
+ 0x3fef58a2b1789e84, 0x3fc9bdcbf2dc4366, // 0.97957, 0.2011
+ 0x3fef538b1faf2d07, 0x3fca203e1b1831da, // 0.97895, 0.20411
+ 0x3fef4e603b0b2f2d, 0x3fca82a025b00451, // 0.97832, 0.20711
+ 0x3fef492206bcabb4, 0x3fcae4f1d5f3b9ab, // 0.97768, 0.21011
+ 0x3fef43d085ff92dd, 0x3fcb4732ef3d6722, // 0.97703, 0.21311
+ 0x3fef3e6bbc1bbc65, 0x3fcba96334f15dad, // 0.97637, 0.21611
+ 0x3fef38f3ac64e589, 0x3fcc0b826a7e4f63, // 0.9757, 0.2191
+ 0x3fef33685a3aaef0, 0x3fcc6d90535d74dc, // 0.97503, 0.22209
+ 0x3fef2dc9c9089a9d, 0x3fcccf8cb312b286, // 0.97434, 0.22508
+ 0x3fef2817fc4609ce, 0x3fcd31774d2cbdee, // 0.97364, 0.22807
+ 0x3fef2252f7763ada, 0x3fcd934fe5454311, // 0.97294, 0.23106
+ 0x3fef1c7abe284708, 0x3fcdf5163f01099a, // 0.97223, 0.23404
+ 0x3fef168f53f7205d, 0x3fce56ca1e101a1b, // 0.9715, 0.23702
+ 0x3fef1090bc898f5f, 0x3fceb86b462de348, // 0.97077, 0.24
+ 0x3fef0a7efb9230d7, 0x3fcf19f97b215f1a, // 0.97003, 0.24298
+ 0x3fef045a14cf738c, 0x3fcf7b7480bd3801, // 0.96928, 0.24596
+ 0x3feefe220c0b95ec, 0x3fcfdcdc1adfedf8, // 0.96852, 0.24893
+ 0x3feef7d6e51ca3c0, 0x3fd01f1806b9fdd2, // 0.96775, 0.2519
+ 0x3feef178a3e473c2, 0x3fd04fb80e37fdae, // 0.96698, 0.25487
+ 0x3feeeb074c50a544, 0x3fd0804e05eb661e, // 0.96619, 0.25783
+ 0x3feee482e25a9dbc, 0x3fd0b0d9cfdbdb90, // 0.96539, 0.26079
+ 0x3feeddeb6a078651, 0x3fd0e15b4e1749cd, // 0.96459, 0.26375
+ 0x3feed740e7684963, 0x3fd111d262b1f677, // 0.96378, 0.26671
+ 0x3feed0835e999009, 0x3fd1423eefc69378, // 0.96295, 0.26967
+ 0x3feec9b2d3c3bf84, 0x3fd172a0d7765177, // 0.96212, 0.27262
+ 0x3feec2cf4b1af6b2, 0x3fd1a2f7fbe8f243, // 0.96128, 0.27557
+ 0x3feebbd8c8df0b74, 0x3fd1d3443f4cdb3d, // 0.96043, 0.27852
+ 0x3feeb4cf515b8811, 0x3fd2038583d727bd, // 0.95957, 0.28146
+ 0x3feeadb2e8e7a88e, 0x3fd233bbabc3bb72, // 0.9587, 0.28441
+ 0x3feea68393e65800, 0x3fd263e6995554ba, // 0.95783, 0.28735
+ 0x3fee9f4156c62dda, 0x3fd294062ed59f05, // 0.95694, 0.29028
+ 0x3fee97ec36016b30, 0x3fd2c41a4e954520, // 0.95605, 0.29322
+ 0x3fee9084361df7f3, 0x3fd2f422daec0386, // 0.95514, 0.29615
+ 0x3fee89095bad6025, 0x3fd3241fb638baaf, // 0.95423, 0.29908
+ 0x3fee817bab4cd10d, 0x3fd35410c2e18152, // 0.95331, 0.30201
+ 0x3fee79db29a5165a, 0x3fd383f5e353b6aa, // 0.95238, 0.30493
+ 0x3fee7227db6a9744, 0x3fd3b3cefa0414b7, // 0.95144, 0.30785
+ 0x3fee6a61c55d53a7, 0x3fd3e39be96ec271, // 0.95049, 0.31077
+ 0x3fee6288ec48e112, 0x3fd4135c94176602, // 0.94953, 0.31368
+ 0x3fee5a9d550467d3, 0x3fd44310dc8936f0, // 0.94856, 0.31659
+ 0x3fee529f04729ffc, 0x3fd472b8a5571054, // 0.94759, 0.3195
+ 0x3fee4a8dff81ce5e, 0x3fd4a253d11b82f3, // 0.9466, 0.32241
+ 0x3fee426a4b2bc17e, 0x3fd4d1e24278e76a, // 0.94561, 0.32531
+ 0x3fee3a33ec75ce85, 0x3fd50163dc197047, // 0.9446, 0.32821
+ 0x3fee31eae870ce25, 0x3fd530d880af3c24, // 0.94359, 0.33111
+ 0x3fee298f4439197a, 0x3fd5604012f467b4, // 0.94257, 0.334
+ 0x3fee212104f686e5, 0x3fd58f9a75ab1fdd, // 0.94154, 0.33689
+ 0x3fee18a02fdc66d9, 0x3fd5bee78b9db3b6, // 0.94051, 0.33978
+ 0x3fee100cca2980ac, 0x3fd5ee27379ea693, // 0.93946, 0.34266
+ 0x3fee0766d9280f54, 0x3fd61d595c88c203, // 0.9384, 0.34554
+ 0x3fedfeae622dbe2b, 0x3fd64c7ddd3f27c6, // 0.93734, 0.34842
+ 0x3fedf5e36a9ba59c, 0x3fd67b949cad63ca, // 0.93627, 0.35129
+ 0x3feded05f7de47da, 0x3fd6aa9d7dc77e16, // 0.93518, 0.35416
+ 0x3fede4160f6d8d81, 0x3fd6d998638a0cb5, // 0.93409, 0.35703
+ 0x3feddb13b6ccc23d, 0x3fd7088530fa459e, // 0.93299, 0.3599
+ 0x3fedd1fef38a915a, 0x3fd73763c9261092, // 0.93188, 0.36276
+ 0x3fedc8d7cb410260, 0x3fd766340f2418f6, // 0.93077, 0.36561
+ 0x3fedbf9e4395759a, 0x3fd794f5e613dfae, // 0.92964, 0.36847
+ 0x3fedb6526238a09b, 0x3fd7c3a9311dcce7, // 0.92851, 0.37132
+ 0x3fedacf42ce68ab9, 0x3fd7f24dd37341e3, // 0.92736, 0.37416
+ 0x3feda383a9668988, 0x3fd820e3b04eaac4, // 0.92621, 0.37701
+ 0x3fed9a00dd8b3d46, 0x3fd84f6aaaf3903f, // 0.92505, 0.37985
+ 0x3fed906bcf328d46, 0x3fd87de2a6aea963, // 0.92388, 0.38268
+ 0x3fed86c48445a450, 0x3fd8ac4b86d5ed44, // 0.9227, 0.38552
+ 0x3fed7d0b02b8ecf9, 0x3fd8daa52ec8a4af, // 0.92151, 0.38835
+ 0x3fed733f508c0dff, 0x3fd908ef81ef7bd1, // 0.92032, 0.39117
+ 0x3fed696173c9e68b, 0x3fd9372a63bc93d7, // 0.91911, 0.39399
+ 0x3fed5f7172888a7f, 0x3fd96555b7ab948f, // 0.9179, 0.39681
+ 0x3fed556f52e93eb1, 0x3fd993716141bdfe, // 0.91668, 0.39962
+ 0x3fed4b5b1b187524, 0x3fd9c17d440df9f2, // 0.91545, 0.40243
+ 0x3fed4134d14dc93a, 0x3fd9ef7943a8ed8a, // 0.91421, 0.40524
+ 0x3fed36fc7bcbfbdc, 0x3fda1d6543b50ac0, // 0.91296, 0.40804
+ 0x3fed2cb220e0ef9f, 0x3fda4b4127dea1e4, // 0.91171, 0.41084
+ 0x3fed2255c6e5a4e1, 0x3fda790cd3dbf31a, // 0.91044, 0.41364
+ 0x3fed17e7743e35dc, 0x3fdaa6c82b6d3fc9, // 0.90917, 0.41643
+ 0x3fed0d672f59d2b9, 0x3fdad473125cdc08, // 0.90789, 0.41922
+ 0x3fed02d4feb2bd92, 0x3fdb020d6c7f4009, // 0.9066, 0.422
+ 0x3fecf830e8ce467b, 0x3fdb2f971db31972, // 0.9053, 0.42478
+ 0x3feced7af43cc773, 0x3fdb5d1009e15cc0, // 0.90399, 0.42756
+ 0x3fece2b32799a060, 0x3fdb8a7814fd5693, // 0.90267, 0.43033
+ 0x3fecd7d9898b32f6, 0x3fdbb7cf2304bd01, // 0.90135, 0.43309
+ 0x3fecccee20c2de9f, 0x3fdbe51517ffc0d9, // 0.90002, 0.43586
+ 0x3fecc1f0f3fcfc5c, 0x3fdc1249d8011ee7, // 0.89867, 0.43862
+ 0x3fecb6e20a00da99, 0x3fdc3f6d47263129, // 0.89732, 0.44137
+ 0x3fecabc169a0b901, 0x3fdc6c7f4997000a, // 0.89597, 0.44412
+ 0x3feca08f19b9c449, 0x3fdc997fc3865388, // 0.8946, 0.44687
+ 0x3fec954b213411f5, 0x3fdcc66e9931c45d, // 0.89322, 0.44961
+ 0x3fec89f587029c13, 0x3fdcf34baee1cd21, // 0.89184, 0.45235
+ 0x3fec7e8e52233cf3, 0x3fdd2016e8e9db5b, // 0.89045, 0.45508
+ 0x3fec7315899eaad7, 0x3fdd4cd02ba8609c, // 0.88905, 0.45781
+ 0x3fec678b3488739b, 0x3fdd79775b86e389, // 0.88764, 0.46054
+ 0x3fec5bef59fef85a, 0x3fdda60c5cfa10d8, // 0.88622, 0.46326
+ 0x3fec5042012b6907, 0x3fddd28f1481cc58, // 0.8848, 0.46598
+ 0x3fec44833141c004, 0x3fddfeff66a941de, // 0.88336, 0.46869
+ 0x3fec38b2f180bdb1, 0x3fde2b5d3806f63b, // 0.88192, 0.4714
+ 0x3fec2cd14931e3f1, 0x3fde57a86d3cd824, // 0.88047, 0.4741
+ 0x3fec20de3fa971b0, 0x3fde83e0eaf85113, // 0.87901, 0.4768
+ 0x3fec14d9dc465e58, 0x3fdeb00695f25620, // 0.87755, 0.47949
+ 0x3fec08c426725549, 0x3fdedc1952ef78d5, // 0.87607, 0.48218
+ 0x3febfc9d25a1b147, 0x3fdf081906bff7fd, // 0.87459, 0.48487
+ 0x3febf064e15377dd, 0x3fdf3405963fd068, // 0.87309, 0.48755
+ 0x3febe41b611154c1, 0x3fdf5fdee656cda3, // 0.8716, 0.49023
+ 0x3febd7c0ac6f952a, 0x3fdf8ba4dbf89aba, // 0.87009, 0.4929
+ 0x3febcb54cb0d2327, 0x3fdfb7575c24d2de, // 0.86857, 0.49557
+ 0x3febbed7c49380ea, 0x3fdfe2f64be7120f, // 0.86705, 0.49823
+ 0x3febb249a0b6c40d, 0x3fe00740c82b82e0, // 0.86551, 0.50089
+ 0x3feba5aa673590d2, 0x3fe01cfc874c3eb7, // 0.86397, 0.50354
+ 0x3feb98fa1fd9155e, 0x3fe032ae55edbd95, // 0.86242, 0.50619
+ 0x3feb8c38d27504e9, 0x3fe0485626ae221a, // 0.86087, 0.50883
+ 0x3feb7f6686e792ea, 0x3fe05df3ec31b8b6, // 0.8593, 0.51147
+ 0x3feb728345196e3e, 0x3fe073879922ffed, // 0.85773, 0.5141
+ 0x3feb658f14fdbc47, 0x3fe089112032b08c, // 0.85615, 0.51673
+ 0x3feb5889fe921405, 0x3fe09e907417c5e1, // 0.85456, 0.51936
+ 0x3feb4b7409de7925, 0x3fe0b405878f85ec, // 0.85296, 0.52198
+ 0x3feb3e4d3ef55712, 0x3fe0c9704d5d898f, // 0.85136, 0.52459
+ 0x3feb3115a5f37bf4, 0x3fe0ded0b84bc4b5, // 0.84974, 0.5272
+ 0x3feb23cd470013b4, 0x3fe0f426bb2a8e7d, // 0.84812, 0.5298
+ 0x3feb16742a4ca2f5, 0x3fe1097248d0a956, // 0.84649, 0.5324
+ 0x3feb090a58150200, 0x3fe11eb3541b4b22, // 0.84485, 0.535
+ 0x3feafb8fd89f57b6, 0x3fe133e9cfee254e, // 0.84321, 0.53759
+ 0x3feaee04b43c1474, 0x3fe14915af336ceb, // 0.84155, 0.54017
+ 0x3feae068f345ecef, 0x3fe15e36e4dbe2bc, // 0.83989, 0.54275
+ 0x3fead2bc9e21d511, 0x3fe1734d63dedb49, // 0.83822, 0.54532
+ 0x3feac4ffbd3efac8, 0x3fe188591f3a46e5, // 0.83655, 0.54789
+ 0x3feab7325916c0d4, 0x3fe19d5a09f2b9b8, // 0.83486, 0.55046
+ 0x3feaa9547a2cb98e, 0x3fe1b250171373be, // 0.83317, 0.55302
+ 0x3fea9b66290ea1a3, 0x3fe1c73b39ae68c8, // 0.83147, 0.55557
+ 0x3fea8d676e545ad2, 0x3fe1dc1b64dc4872, // 0.82976, 0.55812
+ 0x3fea7f58529fe69d, 0x3fe1f0f08bbc861b, // 0.82805, 0.56066
+ 0x3fea7138de9d60f5, 0x3fe205baa17560d6, // 0.82632, 0.5632
+ 0x3fea63091b02fae2, 0x3fe21a799933eb58, // 0.82459, 0.56573
+ 0x3fea54c91090f524, 0x3fe22f2d662c13e1, // 0.82285, 0.56826
+ 0x3fea4678c8119ac8, 0x3fe243d5fb98ac1f, // 0.8211, 0.57078
+ 0x3fea38184a593bc6, 0x3fe258734cbb7110, // 0.81935, 0.5733
+ 0x3fea29a7a0462782, 0x3fe26d054cdd12df, // 0.81758, 0.57581
+ 0x3fea1b26d2c0a75e, 0x3fe2818bef4d3cba, // 0.81581, 0.57831
+ 0x3fea0c95eabaf937, 0x3fe2960727629ca8, // 0.81404, 0.58081
+ 0x3fe9fdf4f13149de, 0x3fe2aa76e87aeb58, // 0.81225, 0.58331
+ 0x3fe9ef43ef29af94, 0x3fe2bedb25faf3ea, // 0.81046, 0.5858
+ 0x3fe9e082edb42472, 0x3fe2d333d34e9bb7, // 0.80866, 0.58828
+ 0x3fe9d1b1f5ea80d6, 0x3fe2e780e3e8ea16, // 0.80685, 0.59076
+ 0x3fe9c2d110f075c3, 0x3fe2fbc24b441015, // 0.80503, 0.59323
+ 0x3fe9b3e047f38741, 0x3fe30ff7fce17035, // 0.80321, 0.5957
+ 0x3fe9a4dfa42b06b2, 0x3fe32421ec49a620, // 0.80138, 0.59816
+ 0x3fe995cf2ed80d22, 0x3fe338400d0c8e57, // 0.79954, 0.60062
+ 0x3fe986aef1457594, 0x3fe34c5252c14de1, // 0.79769, 0.60307
+ 0x3fe9777ef4c7d742, 0x3fe36058b10659f3, // 0.79584, 0.60551
+ 0x3fe9683f42bd7fe1, 0x3fe374531b817f8d, // 0.79398, 0.60795
+ 0x3fe958efe48e6dd7, 0x3fe3884185dfeb22, // 0.79211, 0.61038
+ 0x3fe94990e3ac4a6c, 0x3fe39c23e3d63029, // 0.79023, 0.61281
+ 0x3fe93a22499263fc, 0x3fe3affa292050b9, // 0.78835, 0.61523
+ 0x3fe92aa41fc5a815, 0x3fe3c3c44981c517, // 0.78646, 0.61765
+ 0x3fe91b166fd49da2, 0x3fe3d78238c58343, // 0.78456, 0.62006
+ 0x3fe90b7943575efe, 0x3fe3eb33eabe0680, // 0.78265, 0.62246
+ 0x3fe8fbcca3ef940d, 0x3fe3fed9534556d4, // 0.78074, 0.62486
+ 0x3fe8ec109b486c49, 0x3fe41272663d108c, // 0.77882, 0.62725
+ 0x3fe8dc45331698cc, 0x3fe425ff178e6bb1, // 0.77689, 0.62964
+ 0x3fe8cc6a75184655, 0x3fe4397f5b2a4380, // 0.77495, 0.63202
+ 0x3fe8bc806b151741, 0x3fe44cf325091dd6, // 0.77301, 0.63439
+ 0x3fe8ac871ede1d88, 0x3fe4605a692b32a2, // 0.77106, 0.63676
+ 0x3fe89c7e9a4dd4ab, 0x3fe473b51b987347, // 0.7691, 0.63912
+ 0x3fe88c66e7481ba1, 0x3fe48703306091fe, // 0.76714, 0.64148
+ 0x3fe87c400fba2ebf, 0x3fe49a449b9b0938, // 0.76517, 0.64383
+ 0x3fe86c0a1d9aa195, 0x3fe4ad79516722f0, // 0.76319, 0.64618
+ 0x3fe85bc51ae958cc, 0x3fe4c0a145ec0004, // 0.7612, 0.64851
+ 0x3fe84b7111af83f9, 0x3fe4d3bc6d589f80, // 0.75921, 0.65085
+ 0x3fe83b0e0bff976e, 0x3fe4e6cabbe3e5e9, // 0.75721, 0.65317
+ 0x3fe82a9c13f545ff, 0x3fe4f9cc25cca486, // 0.7552, 0.65549
+ 0x3fe81a1b33b57acc, 0x3fe50cc09f59a09b, // 0.75319, 0.65781
+ 0x3fe8098b756e52fa, 0x3fe51fa81cd99aa6, // 0.75117, 0.66011
+ 0x3fe7f8ece3571771, 0x3fe5328292a35596, // 0.74914, 0.66242
+ 0x3fe7e83f87b03686, 0x3fe5454ff5159dfb, // 0.7471, 0.66471
+ 0x3fe7d7836cc33db2, 0x3fe5581038975137, // 0.74506, 0.667
+ 0x3fe7c6b89ce2d333, 0x3fe56ac35197649e, // 0.74301, 0.66928
+ 0x3fe7b5df226aafb0, 0x3fe57d69348cec9f, // 0.74095, 0.67156
+ 0x3fe7a4f707bf97d2, 0x3fe59001d5f723df, // 0.73889, 0.67383
+ 0x3fe79400574f55e4, 0x3fe5a28d2a5d7250, // 0.73682, 0.67609
+ 0x3fe782fb1b90b35b, 0x3fe5b50b264f7448, // 0.73474, 0.67835
+ 0x3fe771e75f037261, 0x3fe5c77bbe65018c, // 0.73265, 0.6806
+ 0x3fe760c52c304764, 0x3fe5d9dee73e345c, // 0.73056, 0.68285
+ 0x3fe74f948da8d28d, 0x3fe5ec3495837074, // 0.72846, 0.68508
+ 0x3fe73e558e079942, 0x3fe5fe7cbde56a0f, // 0.72636, 0.68732
+ 0x3fe72d0837efff97, 0x3fe610b7551d2cde, // 0.72425, 0.68954
+ 0x3fe71bac960e41bf, 0x3fe622e44fec22ff, // 0.72213, 0.69176
+ 0x3fe70a42b3176d7a, 0x3fe63503a31c1be8, // 0.72, 0.69397
+ 0x3fe6f8ca99c95b75, 0x3fe64715437f535b, // 0.71787, 0.69618
+ 0x3fe6e74454eaa8ae, 0x3fe6591925f0783e, // 0.71573, 0.69838
+ 0x3fe6d5afef4aafcc, 0x3fe66b0f3f52b386, // 0.71358, 0.70057
+ 0x3fe6c40d73c18275, 0x3fe67cf78491af10, // 0.71143, 0.70275
+ 0x3fe6b25ced2fe29c, 0x3fe68ed1eaa19c71, // 0.70927, 0.70493
+ 0x3fe6a09e667f3bcc, 0x3fe6a09e667f3bcc, // 0.70711, 0.70711
+ 0x3fe68ed1eaa19c71, 0x3fe6b25ced2fe29c, // 0.70493, 0.70927
+ 0x3fe67cf78491af10, 0x3fe6c40d73c18275, // 0.70275, 0.71143
+ 0x3fe66b0f3f52b386, 0x3fe6d5afef4aafcc, // 0.70057, 0.71358
+ 0x3fe6591925f0783e, 0x3fe6e74454eaa8ae, // 0.69838, 0.71573
+ 0x3fe64715437f535b, 0x3fe6f8ca99c95b75, // 0.69618, 0.71787
+ 0x3fe63503a31c1be8, 0x3fe70a42b3176d7a, // 0.69397, 0.72
+ 0x3fe622e44fec22ff, 0x3fe71bac960e41bf, // 0.69176, 0.72213
+ 0x3fe610b7551d2cde, 0x3fe72d0837efff97, // 0.68954, 0.72425
+ 0x3fe5fe7cbde56a0f, 0x3fe73e558e079942, // 0.68732, 0.72636
+ 0x3fe5ec3495837074, 0x3fe74f948da8d28d, // 0.68508, 0.72846
+ 0x3fe5d9dee73e345c, 0x3fe760c52c304764, // 0.68285, 0.73056
+ 0x3fe5c77bbe65018c, 0x3fe771e75f037261, // 0.6806, 0.73265
+ 0x3fe5b50b264f7448, 0x3fe782fb1b90b35b, // 0.67835, 0.73474
+ 0x3fe5a28d2a5d7250, 0x3fe79400574f55e4, // 0.67609, 0.73682
+ 0x3fe59001d5f723df, 0x3fe7a4f707bf97d2, // 0.67383, 0.73889
+ 0x3fe57d69348cec9f, 0x3fe7b5df226aafb0, // 0.67156, 0.74095
+ 0x3fe56ac35197649e, 0x3fe7c6b89ce2d333, // 0.66928, 0.74301
+ 0x3fe5581038975137, 0x3fe7d7836cc33db2, // 0.667, 0.74506
+ 0x3fe5454ff5159dfb, 0x3fe7e83f87b03686, // 0.66471, 0.7471
+ 0x3fe5328292a35596, 0x3fe7f8ece3571771, // 0.66242, 0.74914
+ 0x3fe51fa81cd99aa6, 0x3fe8098b756e52fa, // 0.66011, 0.75117
+ 0x3fe50cc09f59a09b, 0x3fe81a1b33b57acc, // 0.65781, 0.75319
+ 0x3fe4f9cc25cca486, 0x3fe82a9c13f545ff, // 0.65549, 0.7552
+ 0x3fe4e6cabbe3e5e9, 0x3fe83b0e0bff976e, // 0.65317, 0.75721
+ 0x3fe4d3bc6d589f80, 0x3fe84b7111af83f9, // 0.65085, 0.75921
+ 0x3fe4c0a145ec0004, 0x3fe85bc51ae958cc, // 0.64851, 0.7612
+ 0x3fe4ad79516722f0, 0x3fe86c0a1d9aa195, // 0.64618, 0.76319
+ 0x3fe49a449b9b0938, 0x3fe87c400fba2ebf, // 0.64383, 0.76517
+ 0x3fe48703306091fe, 0x3fe88c66e7481ba1, // 0.64148, 0.76714
+ 0x3fe473b51b987347, 0x3fe89c7e9a4dd4ab, // 0.63912, 0.7691
+ 0x3fe4605a692b32a2, 0x3fe8ac871ede1d88, // 0.63676, 0.77106
+ 0x3fe44cf325091dd6, 0x3fe8bc806b151741, // 0.63439, 0.77301
+ 0x3fe4397f5b2a4380, 0x3fe8cc6a75184655, // 0.63202, 0.77495
+ 0x3fe425ff178e6bb1, 0x3fe8dc45331698cc, // 0.62964, 0.77689
+ 0x3fe41272663d108c, 0x3fe8ec109b486c49, // 0.62725, 0.77882
+ 0x3fe3fed9534556d4, 0x3fe8fbcca3ef940d, // 0.62486, 0.78074
+ 0x3fe3eb33eabe0680, 0x3fe90b7943575efe, // 0.62246, 0.78265
+ 0x3fe3d78238c58343, 0x3fe91b166fd49da2, // 0.62006, 0.78456
+ 0x3fe3c3c44981c517, 0x3fe92aa41fc5a815, // 0.61765, 0.78646
+ 0x3fe3affa292050b9, 0x3fe93a22499263fc, // 0.61523, 0.78835
+ 0x3fe39c23e3d63029, 0x3fe94990e3ac4a6c, // 0.61281, 0.79023
+ 0x3fe3884185dfeb22, 0x3fe958efe48e6dd7, // 0.61038, 0.79211
+ 0x3fe374531b817f8d, 0x3fe9683f42bd7fe1, // 0.60795, 0.79398
+ 0x3fe36058b10659f3, 0x3fe9777ef4c7d742, // 0.60551, 0.79584
+ 0x3fe34c5252c14de1, 0x3fe986aef1457594, // 0.60307, 0.79769
+ 0x3fe338400d0c8e57, 0x3fe995cf2ed80d22, // 0.60062, 0.79954
+ 0x3fe32421ec49a620, 0x3fe9a4dfa42b06b2, // 0.59816, 0.80138
+ 0x3fe30ff7fce17035, 0x3fe9b3e047f38741, // 0.5957, 0.80321
+ 0x3fe2fbc24b441015, 0x3fe9c2d110f075c3, // 0.59323, 0.80503
+ 0x3fe2e780e3e8ea16, 0x3fe9d1b1f5ea80d6, // 0.59076, 0.80685
+ 0x3fe2d333d34e9bb7, 0x3fe9e082edb42472, // 0.58828, 0.80866
+ 0x3fe2bedb25faf3ea, 0x3fe9ef43ef29af94, // 0.5858, 0.81046
+ 0x3fe2aa76e87aeb58, 0x3fe9fdf4f13149de, // 0.58331, 0.81225
+ 0x3fe2960727629ca8, 0x3fea0c95eabaf937, // 0.58081, 0.81404
+ 0x3fe2818bef4d3cba, 0x3fea1b26d2c0a75e, // 0.57831, 0.81581
+ 0x3fe26d054cdd12df, 0x3fea29a7a0462782, // 0.57581, 0.81758
+ 0x3fe258734cbb7110, 0x3fea38184a593bc6, // 0.5733, 0.81935
+ 0x3fe243d5fb98ac1f, 0x3fea4678c8119ac8, // 0.57078, 0.8211
+ 0x3fe22f2d662c13e1, 0x3fea54c91090f524, // 0.56826, 0.82285
+ 0x3fe21a799933eb58, 0x3fea63091b02fae2, // 0.56573, 0.82459
+ 0x3fe205baa17560d6, 0x3fea7138de9d60f5, // 0.5632, 0.82632
+ 0x3fe1f0f08bbc861b, 0x3fea7f58529fe69d, // 0.56066, 0.82805
+ 0x3fe1dc1b64dc4872, 0x3fea8d676e545ad2, // 0.55812, 0.82976
+ 0x3fe1c73b39ae68c8, 0x3fea9b66290ea1a3, // 0.55557, 0.83147
+ 0x3fe1b250171373be, 0x3feaa9547a2cb98e, // 0.55302, 0.83317
+ 0x3fe19d5a09f2b9b8, 0x3feab7325916c0d4, // 0.55046, 0.83486
+ 0x3fe188591f3a46e5, 0x3feac4ffbd3efac8, // 0.54789, 0.83655
+ 0x3fe1734d63dedb49, 0x3fead2bc9e21d511, // 0.54532, 0.83822
+ 0x3fe15e36e4dbe2bc, 0x3feae068f345ecef, // 0.54275, 0.83989
+ 0x3fe14915af336ceb, 0x3feaee04b43c1474, // 0.54017, 0.84155
+ 0x3fe133e9cfee254e, 0x3feafb8fd89f57b6, // 0.53759, 0.84321
+ 0x3fe11eb3541b4b22, 0x3feb090a58150200, // 0.535, 0.84485
+ 0x3fe1097248d0a956, 0x3feb16742a4ca2f5, // 0.5324, 0.84649
+ 0x3fe0f426bb2a8e7d, 0x3feb23cd470013b4, // 0.5298, 0.84812
+ 0x3fe0ded0b84bc4b5, 0x3feb3115a5f37bf4, // 0.5272, 0.84974
+ 0x3fe0c9704d5d898f, 0x3feb3e4d3ef55712, // 0.52459, 0.85136
+ 0x3fe0b405878f85ec, 0x3feb4b7409de7925, // 0.52198, 0.85296
+ 0x3fe09e907417c5e1, 0x3feb5889fe921405, // 0.51936, 0.85456
+ 0x3fe089112032b08c, 0x3feb658f14fdbc47, // 0.51673, 0.85615
+ 0x3fe073879922ffed, 0x3feb728345196e3e, // 0.5141, 0.85773
+ 0x3fe05df3ec31b8b6, 0x3feb7f6686e792ea, // 0.51147, 0.8593
+ 0x3fe0485626ae221a, 0x3feb8c38d27504e9, // 0.50883, 0.86087
+ 0x3fe032ae55edbd95, 0x3feb98fa1fd9155e, // 0.50619, 0.86242
+ 0x3fe01cfc874c3eb7, 0x3feba5aa673590d2, // 0.50354, 0.86397
+ 0x3fe00740c82b82e0, 0x3febb249a0b6c40d, // 0.50089, 0.86551
+ 0x3fdfe2f64be7120f, 0x3febbed7c49380ea, // 0.49823, 0.86705
+ 0x3fdfb7575c24d2de, 0x3febcb54cb0d2327, // 0.49557, 0.86857
+ 0x3fdf8ba4dbf89aba, 0x3febd7c0ac6f952a, // 0.4929, 0.87009
+ 0x3fdf5fdee656cda3, 0x3febe41b611154c1, // 0.49023, 0.8716
+ 0x3fdf3405963fd068, 0x3febf064e15377dd, // 0.48755, 0.87309
+ 0x3fdf081906bff7fd, 0x3febfc9d25a1b147, // 0.48487, 0.87459
+ 0x3fdedc1952ef78d5, 0x3fec08c426725549, // 0.48218, 0.87607
+ 0x3fdeb00695f25620, 0x3fec14d9dc465e58, // 0.47949, 0.87755
+ 0x3fde83e0eaf85113, 0x3fec20de3fa971b0, // 0.4768, 0.87901
+ 0x3fde57a86d3cd824, 0x3fec2cd14931e3f1, // 0.4741, 0.88047
+ 0x3fde2b5d3806f63b, 0x3fec38b2f180bdb1, // 0.4714, 0.88192
+ 0x3fddfeff66a941de, 0x3fec44833141c004, // 0.46869, 0.88336
+ 0x3fddd28f1481cc58, 0x3fec5042012b6907, // 0.46598, 0.8848
+ 0x3fdda60c5cfa10d8, 0x3fec5bef59fef85a, // 0.46326, 0.88622
+ 0x3fdd79775b86e389, 0x3fec678b3488739b, // 0.46054, 0.88764
+ 0x3fdd4cd02ba8609c, 0x3fec7315899eaad7, // 0.45781, 0.88905
+ 0x3fdd2016e8e9db5b, 0x3fec7e8e52233cf3, // 0.45508, 0.89045
+ 0x3fdcf34baee1cd21, 0x3fec89f587029c13, // 0.45235, 0.89184
+ 0x3fdcc66e9931c45d, 0x3fec954b213411f5, // 0.44961, 0.89322
+ 0x3fdc997fc3865388, 0x3feca08f19b9c449, // 0.44687, 0.8946
+ 0x3fdc6c7f4997000a, 0x3fecabc169a0b901, // 0.44412, 0.89597
+ 0x3fdc3f6d47263129, 0x3fecb6e20a00da99, // 0.44137, 0.89732
+ 0x3fdc1249d8011ee7, 0x3fecc1f0f3fcfc5c, // 0.43862, 0.89867
+ 0x3fdbe51517ffc0d9, 0x3fecccee20c2de9f, // 0.43586, 0.90002
+ 0x3fdbb7cf2304bd01, 0x3fecd7d9898b32f6, // 0.43309, 0.90135
+ 0x3fdb8a7814fd5693, 0x3fece2b32799a060, // 0.43033, 0.90267
+ 0x3fdb5d1009e15cc0, 0x3feced7af43cc773, // 0.42756, 0.90399
+ 0x3fdb2f971db31972, 0x3fecf830e8ce467b, // 0.42478, 0.9053
+ 0x3fdb020d6c7f4009, 0x3fed02d4feb2bd92, // 0.422, 0.9066
+ 0x3fdad473125cdc08, 0x3fed0d672f59d2b9, // 0.41922, 0.90789
+ 0x3fdaa6c82b6d3fc9, 0x3fed17e7743e35dc, // 0.41643, 0.90917
+ 0x3fda790cd3dbf31a, 0x3fed2255c6e5a4e1, // 0.41364, 0.91044
+ 0x3fda4b4127dea1e4, 0x3fed2cb220e0ef9f, // 0.41084, 0.91171
+ 0x3fda1d6543b50ac0, 0x3fed36fc7bcbfbdc, // 0.40804, 0.91296
+ 0x3fd9ef7943a8ed8a, 0x3fed4134d14dc93a, // 0.40524, 0.91421
+ 0x3fd9c17d440df9f2, 0x3fed4b5b1b187524, // 0.40243, 0.91545
+ 0x3fd993716141bdfe, 0x3fed556f52e93eb1, // 0.39962, 0.91668
+ 0x3fd96555b7ab948f, 0x3fed5f7172888a7f, // 0.39681, 0.9179
+ 0x3fd9372a63bc93d7, 0x3fed696173c9e68b, // 0.39399, 0.91911
+ 0x3fd908ef81ef7bd1, 0x3fed733f508c0dff, // 0.39117, 0.92032
+ 0x3fd8daa52ec8a4af, 0x3fed7d0b02b8ecf9, // 0.38835, 0.92151
+ 0x3fd8ac4b86d5ed44, 0x3fed86c48445a450, // 0.38552, 0.9227
+ 0x3fd87de2a6aea963, 0x3fed906bcf328d46, // 0.38268, 0.92388
+ 0x3fd84f6aaaf3903f, 0x3fed9a00dd8b3d46, // 0.37985, 0.92505
+ 0x3fd820e3b04eaac4, 0x3feda383a9668988, // 0.37701, 0.92621
+ 0x3fd7f24dd37341e3, 0x3fedacf42ce68ab9, // 0.37416, 0.92736
+ 0x3fd7c3a9311dcce7, 0x3fedb6526238a09b, // 0.37132, 0.92851
+ 0x3fd794f5e613dfae, 0x3fedbf9e4395759a, // 0.36847, 0.92964
+ 0x3fd766340f2418f6, 0x3fedc8d7cb410260, // 0.36561, 0.93077
+ 0x3fd73763c9261092, 0x3fedd1fef38a915a, // 0.36276, 0.93188
+ 0x3fd7088530fa459e, 0x3feddb13b6ccc23d, // 0.3599, 0.93299
+ 0x3fd6d998638a0cb5, 0x3fede4160f6d8d81, // 0.35703, 0.93409
+ 0x3fd6aa9d7dc77e16, 0x3feded05f7de47da, // 0.35416, 0.93518
+ 0x3fd67b949cad63ca, 0x3fedf5e36a9ba59c, // 0.35129, 0.93627
+ 0x3fd64c7ddd3f27c6, 0x3fedfeae622dbe2b, // 0.34842, 0.93734
+ 0x3fd61d595c88c203, 0x3fee0766d9280f54, // 0.34554, 0.9384
+ 0x3fd5ee27379ea693, 0x3fee100cca2980ac, // 0.34266, 0.93946
+ 0x3fd5bee78b9db3b6, 0x3fee18a02fdc66d9, // 0.33978, 0.94051
+ 0x3fd58f9a75ab1fdd, 0x3fee212104f686e5, // 0.33689, 0.94154
+ 0x3fd5604012f467b4, 0x3fee298f4439197a, // 0.334, 0.94257
+ 0x3fd530d880af3c24, 0x3fee31eae870ce25, // 0.33111, 0.94359
+ 0x3fd50163dc197047, 0x3fee3a33ec75ce85, // 0.32821, 0.9446
+ 0x3fd4d1e24278e76a, 0x3fee426a4b2bc17e, // 0.32531, 0.94561
+ 0x3fd4a253d11b82f3, 0x3fee4a8dff81ce5e, // 0.32241, 0.9466
+ 0x3fd472b8a5571054, 0x3fee529f04729ffc, // 0.3195, 0.94759
+ 0x3fd44310dc8936f0, 0x3fee5a9d550467d3, // 0.31659, 0.94856
+ 0x3fd4135c94176602, 0x3fee6288ec48e112, // 0.31368, 0.94953
+ 0x3fd3e39be96ec271, 0x3fee6a61c55d53a7, // 0.31077, 0.95049
+ 0x3fd3b3cefa0414b7, 0x3fee7227db6a9744, // 0.30785, 0.95144
+ 0x3fd383f5e353b6aa, 0x3fee79db29a5165a, // 0.30493, 0.95238
+ 0x3fd35410c2e18152, 0x3fee817bab4cd10d, // 0.30201, 0.95331
+ 0x3fd3241fb638baaf, 0x3fee89095bad6025, // 0.29908, 0.95423
+ 0x3fd2f422daec0386, 0x3fee9084361df7f3, // 0.29615, 0.95514
+ 0x3fd2c41a4e954520, 0x3fee97ec36016b30, // 0.29322, 0.95605
+ 0x3fd294062ed59f05, 0x3fee9f4156c62dda, // 0.29028, 0.95694
+ 0x3fd263e6995554ba, 0x3feea68393e65800, // 0.28735, 0.95783
+ 0x3fd233bbabc3bb72, 0x3feeadb2e8e7a88e, // 0.28441, 0.9587
+ 0x3fd2038583d727bd, 0x3feeb4cf515b8811, // 0.28146, 0.95957
+ 0x3fd1d3443f4cdb3d, 0x3feebbd8c8df0b74, // 0.27852, 0.96043
+ 0x3fd1a2f7fbe8f243, 0x3feec2cf4b1af6b2, // 0.27557, 0.96128
+ 0x3fd172a0d7765177, 0x3feec9b2d3c3bf84, // 0.27262, 0.96212
+ 0x3fd1423eefc69378, 0x3feed0835e999009, // 0.26967, 0.96295
+ 0x3fd111d262b1f677, 0x3feed740e7684963, // 0.26671, 0.96378
+ 0x3fd0e15b4e1749cd, 0x3feeddeb6a078651, // 0.26375, 0.96459
+ 0x3fd0b0d9cfdbdb90, 0x3feee482e25a9dbc, // 0.26079, 0.96539
+ 0x3fd0804e05eb661e, 0x3feeeb074c50a544, // 0.25783, 0.96619
+ 0x3fd04fb80e37fdae, 0x3feef178a3e473c2, // 0.25487, 0.96698
+ 0x3fd01f1806b9fdd2, 0x3feef7d6e51ca3c0, // 0.2519, 0.96775
+ 0x3fcfdcdc1adfedf8, 0x3feefe220c0b95ec, // 0.24893, 0.96852
+ 0x3fcf7b7480bd3801, 0x3fef045a14cf738c, // 0.24596, 0.96928
+ 0x3fcf19f97b215f1a, 0x3fef0a7efb9230d7, // 0.24298, 0.97003
+ 0x3fceb86b462de348, 0x3fef1090bc898f5f, // 0.24, 0.97077
+ 0x3fce56ca1e101a1b, 0x3fef168f53f7205d, // 0.23702, 0.9715
+ 0x3fcdf5163f01099a, 0x3fef1c7abe284708, // 0.23404, 0.97223
+ 0x3fcd934fe5454311, 0x3fef2252f7763ada, // 0.23106, 0.97294
+ 0x3fcd31774d2cbdee, 0x3fef2817fc4609ce, // 0.22807, 0.97364
+ 0x3fcccf8cb312b286, 0x3fef2dc9c9089a9d, // 0.22508, 0.97434
+ 0x3fcc6d90535d74dc, 0x3fef33685a3aaef0, // 0.22209, 0.97503
+ 0x3fcc0b826a7e4f63, 0x3fef38f3ac64e589, // 0.2191, 0.9757
+ 0x3fcba96334f15dad, 0x3fef3e6bbc1bbc65, // 0.21611, 0.97637
+ 0x3fcb4732ef3d6722, 0x3fef43d085ff92dd, // 0.21311, 0.97703
+ 0x3fcae4f1d5f3b9ab, 0x3fef492206bcabb4, // 0.21011, 0.97768
+ 0x3fca82a025b00451, 0x3fef4e603b0b2f2d, // 0.20711, 0.97832
+ 0x3fca203e1b1831da, 0x3fef538b1faf2d07, // 0.20411, 0.97895
+ 0x3fc9bdcbf2dc4366, 0x3fef58a2b1789e84, // 0.2011, 0.97957
+ 0x3fc95b49e9b62af9, 0x3fef5da6ed43685d, // 0.1981, 0.98018
+ 0x3fc8f8b83c69a60a, 0x3fef6297cff75cb0, // 0.19509, 0.98079
+ 0x3fc8961727c41804, 0x3fef677556883cee, // 0.19208, 0.98138
+ 0x3fc83366e89c64c5, 0x3fef6c3f7df5bbb7, // 0.18907, 0.98196
+ 0x3fc7d0a7bbd2cb1b, 0x3fef70f6434b7eb7, // 0.18606, 0.98254
+ 0x3fc76dd9de50bf31, 0x3fef7599a3a12077, // 0.18304, 0.98311
+ 0x3fc70afd8d08c4ff, 0x3fef7a299c1a322a, // 0.18002, 0.98366
+ 0x3fc6a81304f64ab2, 0x3fef7ea629e63d6e, // 0.177, 0.98421
+ 0x3fc6451a831d830d, 0x3fef830f4a40c60c, // 0.17398, 0.98475
+ 0x3fc5e214448b3fc6, 0x3fef8764fa714ba9, // 0.17096, 0.98528
+ 0x3fc57f008654cbde, 0x3fef8ba737cb4b78, // 0.16794, 0.9858
+ 0x3fc51bdf8597c5f2, 0x3fef8fd5ffae41db, // 0.16491, 0.98631
+ 0x3fc4b8b17f79fa88, 0x3fef93f14f85ac08, // 0.16189, 0.98681
+ 0x3fc45576b1293e5a, 0x3fef97f924c9099b, // 0.15886, 0.9873
+ 0x3fc3f22f57db4893, 0x3fef9bed7cfbde29, // 0.15583, 0.98778
+ 0x3fc38edbb0cd8d14, 0x3fef9fce55adb2c8, // 0.1528, 0.98826
+ 0x3fc32b7bf94516a7, 0x3fefa39bac7a1791, // 0.14976, 0.98872
+ 0x3fc2c8106e8e613a, 0x3fefa7557f08a517, // 0.14673, 0.98918
+ 0x3fc264994dfd340a, 0x3fefaafbcb0cfddc, // 0.1437, 0.98962
+ 0x3fc20116d4ec7bce, 0x3fefae8e8e46cfbb, // 0.14066, 0.99006
+ 0x3fc19d8940be24e7, 0x3fefb20dc681d54d, // 0.13762, 0.99049
+ 0x3fc139f0cedaf576, 0x3fefb5797195d741, // 0.13458, 0.9909
+ 0x3fc0d64dbcb26786, 0x3fefb8d18d66adb7, // 0.13154, 0.99131
+ 0x3fc072a047ba831d, 0x3fefbc1617e44186, // 0.1285, 0.99171
+ 0x3fc00ee8ad6fb85b, 0x3fefbf470f0a8d88, // 0.12545, 0.9921
+ 0x3fbf564e56a9730e, 0x3fefc26470e19fd3, // 0.12241, 0.99248
+ 0x3fbe8eb7fde4aa3e, 0x3fefc56e3b7d9af6, // 0.11937, 0.99285
+ 0x3fbdc70ecbae9fc8, 0x3fefc8646cfeb721, // 0.11632, 0.99321
+ 0x3fbcff533b307dc1, 0x3fefcb4703914354, // 0.11327, 0.99356
+ 0x3fbc3785c79ec2d5, 0x3fefce15fd6da67b, // 0.11022, 0.99391
+ 0x3fbb6fa6ec38f64c, 0x3fefd0d158d86087, // 0.10717, 0.99424
+ 0x3fbaa7b724495c04, 0x3fefd37914220b84, // 0.10412, 0.99456
+ 0x3fb9dfb6eb24a85c, 0x3fefd60d2da75c9e, // 0.10107, 0.99488
+ 0x3fb917a6bc29b42c, 0x3fefd88da3d12526, // 0.098017, 0.99518
+ 0x3fb84f8712c130a0, 0x3fefdafa7514538c, // 0.094963, 0.99548
+ 0x3fb787586a5d5b21, 0x3fefdd539ff1f456, // 0.091909, 0.99577
+ 0x3fb6bf1b3e79b129, 0x3fefdf9922f73307, // 0.088854, 0.99604
+ 0x3fb5f6d00a9aa419, 0x3fefe1cafcbd5b09, // 0.085797, 0.99631
+ 0x3fb52e774a4d4d0a, 0x3fefe3e92be9d886, // 0.08274, 0.99657
+ 0x3fb4661179272096, 0x3fefe5f3af2e3940, // 0.079682, 0.99682
+ 0x3fb39d9f12c5a299, 0x3fefe7ea85482d60, // 0.076624, 0.99706
+ 0x3fb2d52092ce19f6, 0x3fefe9cdad01883a, // 0.073565, 0.99729
+ 0x3fb20c9674ed444c, 0x3fefeb9d2530410f, // 0.070505, 0.99751
+ 0x3fb1440134d709b2, 0x3fefed58ecb673c4, // 0.067444, 0.99772
+ 0x3fb07b614e463064, 0x3fefef0102826191, // 0.064383, 0.99793
+ 0x3faf656e79f820e0, 0x3feff095658e71ad, // 0.061321, 0.99812
+ 0x3fadd406f9808ec8, 0x3feff21614e131ed, // 0.058258, 0.9983
+ 0x3fac428d12c0d7e3, 0x3feff3830f8d575c, // 0.055195, 0.99848
+ 0x3faab101bd5f8317, 0x3feff4dc54b1bed3, // 0.052132, 0.99864
+ 0x3fa91f65f10dd814, 0x3feff621e3796d7e, // 0.049068, 0.9988
+ 0x3fa78dbaa5874685, 0x3feff753bb1b9164, // 0.046003, 0.99894
+ 0x3fa5fc00d290cd43, 0x3feff871dadb81df, // 0.042938, 0.99908
+ 0x3fa46a396ff86179, 0x3feff97c4208c014, // 0.039873, 0.9992
+ 0x3fa2d865759455cd, 0x3feffa72effef75d, // 0.036807, 0.99932
+ 0x3fa14685db42c17e, 0x3feffb55e425fdae, // 0.033741, 0.99943
+ 0x3f9f693731d1cf01, 0x3feffc251df1d3f8, // 0.030675, 0.99953
+ 0x3f9c454f4ce53b1c, 0x3feffce09ce2a679, // 0.027608, 0.99962
+ 0x3f992155f7a3667e, 0x3feffd886084cd0d, // 0.024541, 0.9997
+ 0x3f95fd4d21fab226, 0x3feffe1c6870cb77, // 0.021474, 0.99977
+ 0x3f92d936bbe30efd, 0x3feffe9cb44b51a1, // 0.018407, 0.99983
+ 0x3f8f6a296ab997ca, 0x3fefff0943c53bd1, // 0.015339, 0.99988
+ 0x3f8921d1fcdec784, 0x3fefff62169b92db, // 0.012272, 0.99992
+ 0x3f82d96b0e509703, 0x3fefffa72c978c4f, // 0.0092038, 0.99996
+ 0x3f7921f0fe670071, 0x3fefffd8858e8a92, // 0.0061359, 0.99998
+ 0x3f6921f8becca4ba, 0x3feffff621621d02, // 0.003068, 1
+ 0x0000000000000000, 0x3ff0000000000000, // 0, 1
+ 0xbf6921f8becca4ba, 0x3feffff621621d02, // -0.003068, 1
+ 0xbf7921f0fe670071, 0x3fefffd8858e8a92, //-0.0061359, 0.99998
+ 0xbf82d96b0e509703, 0x3fefffa72c978c4f, //-0.0092038, 0.99996
+ 0xbf8921d1fcdec784, 0x3fefff62169b92db, // -0.012272, 0.99992
+ 0xbf8f6a296ab997ca, 0x3fefff0943c53bd1, // -0.015339, 0.99988
+ 0xbf92d936bbe30efd, 0x3feffe9cb44b51a1, // -0.018407, 0.99983
+ 0xbf95fd4d21fab226, 0x3feffe1c6870cb77, // -0.021474, 0.99977
+ 0xbf992155f7a3667e, 0x3feffd886084cd0d, // -0.024541, 0.9997
+ 0xbf9c454f4ce53b1c, 0x3feffce09ce2a679, // -0.027608, 0.99962
+ 0xbf9f693731d1cf01, 0x3feffc251df1d3f8, // -0.030675, 0.99953
+ 0xbfa14685db42c17e, 0x3feffb55e425fdae, // -0.033741, 0.99943
+ 0xbfa2d865759455cd, 0x3feffa72effef75d, // -0.036807, 0.99932
+ 0xbfa46a396ff86179, 0x3feff97c4208c014, // -0.039873, 0.9992
+ 0xbfa5fc00d290cd43, 0x3feff871dadb81df, // -0.042938, 0.99908
+ 0xbfa78dbaa5874685, 0x3feff753bb1b9164, // -0.046003, 0.99894
+ 0xbfa91f65f10dd814, 0x3feff621e3796d7e, // -0.049068, 0.9988
+ 0xbfaab101bd5f8317, 0x3feff4dc54b1bed3, // -0.052132, 0.99864
+ 0xbfac428d12c0d7e3, 0x3feff3830f8d575c, // -0.055195, 0.99848
+ 0xbfadd406f9808ec8, 0x3feff21614e131ed, // -0.058258, 0.9983
+ 0xbfaf656e79f820e0, 0x3feff095658e71ad, // -0.061321, 0.99812
+ 0xbfb07b614e463064, 0x3fefef0102826191, // -0.064383, 0.99793
+ 0xbfb1440134d709b2, 0x3fefed58ecb673c4, // -0.067444, 0.99772
+ 0xbfb20c9674ed444c, 0x3fefeb9d2530410f, // -0.070505, 0.99751
+ 0xbfb2d52092ce19f6, 0x3fefe9cdad01883a, // -0.073565, 0.99729
+ 0xbfb39d9f12c5a299, 0x3fefe7ea85482d60, // -0.076624, 0.99706
+ 0xbfb4661179272096, 0x3fefe5f3af2e3940, // -0.079682, 0.99682
+ 0xbfb52e774a4d4d0a, 0x3fefe3e92be9d886, // -0.08274, 0.99657
+ 0xbfb5f6d00a9aa419, 0x3fefe1cafcbd5b09, // -0.085797, 0.99631
+ 0xbfb6bf1b3e79b129, 0x3fefdf9922f73307, // -0.088854, 0.99604
+ 0xbfb787586a5d5b21, 0x3fefdd539ff1f456, // -0.091909, 0.99577
+ 0xbfb84f8712c130a0, 0x3fefdafa7514538c, // -0.094963, 0.99548
+ 0xbfb917a6bc29b42c, 0x3fefd88da3d12526, // -0.098017, 0.99518
+ 0xbfb9dfb6eb24a85c, 0x3fefd60d2da75c9e, // -0.10107, 0.99488
+ 0xbfbaa7b724495c04, 0x3fefd37914220b84, // -0.10412, 0.99456
+ 0xbfbb6fa6ec38f64c, 0x3fefd0d158d86087, // -0.10717, 0.99424
+ 0xbfbc3785c79ec2d5, 0x3fefce15fd6da67b, // -0.11022, 0.99391
+ 0xbfbcff533b307dc1, 0x3fefcb4703914354, // -0.11327, 0.99356
+ 0xbfbdc70ecbae9fc8, 0x3fefc8646cfeb721, // -0.11632, 0.99321
+ 0xbfbe8eb7fde4aa3e, 0x3fefc56e3b7d9af6, // -0.11937, 0.99285
+ 0xbfbf564e56a9730e, 0x3fefc26470e19fd3, // -0.12241, 0.99248
+ 0xbfc00ee8ad6fb85b, 0x3fefbf470f0a8d88, // -0.12545, 0.9921
+ 0xbfc072a047ba831d, 0x3fefbc1617e44186, // -0.1285, 0.99171
+ 0xbfc0d64dbcb26786, 0x3fefb8d18d66adb7, // -0.13154, 0.99131
+ 0xbfc139f0cedaf576, 0x3fefb5797195d741, // -0.13458, 0.9909
+ 0xbfc19d8940be24e7, 0x3fefb20dc681d54d, // -0.13762, 0.99049
+ 0xbfc20116d4ec7bce, 0x3fefae8e8e46cfbb, // -0.14066, 0.99006
+ 0xbfc264994dfd340a, 0x3fefaafbcb0cfddc, // -0.1437, 0.98962
+ 0xbfc2c8106e8e613a, 0x3fefa7557f08a517, // -0.14673, 0.98918
+ 0xbfc32b7bf94516a7, 0x3fefa39bac7a1791, // -0.14976, 0.98872
+ 0xbfc38edbb0cd8d14, 0x3fef9fce55adb2c8, // -0.1528, 0.98826
+ 0xbfc3f22f57db4893, 0x3fef9bed7cfbde29, // -0.15583, 0.98778
+ 0xbfc45576b1293e5a, 0x3fef97f924c9099b, // -0.15886, 0.9873
+ 0xbfc4b8b17f79fa88, 0x3fef93f14f85ac08, // -0.16189, 0.98681
+ 0xbfc51bdf8597c5f2, 0x3fef8fd5ffae41db, // -0.16491, 0.98631
+ 0xbfc57f008654cbde, 0x3fef8ba737cb4b78, // -0.16794, 0.9858
+ 0xbfc5e214448b3fc6, 0x3fef8764fa714ba9, // -0.17096, 0.98528
+ 0xbfc6451a831d830d, 0x3fef830f4a40c60c, // -0.17398, 0.98475
+ 0xbfc6a81304f64ab2, 0x3fef7ea629e63d6e, // -0.177, 0.98421
+ 0xbfc70afd8d08c4ff, 0x3fef7a299c1a322a, // -0.18002, 0.98366
+ 0xbfc76dd9de50bf31, 0x3fef7599a3a12077, // -0.18304, 0.98311
+ 0xbfc7d0a7bbd2cb1b, 0x3fef70f6434b7eb7, // -0.18606, 0.98254
+ 0xbfc83366e89c64c5, 0x3fef6c3f7df5bbb7, // -0.18907, 0.98196
+ 0xbfc8961727c41804, 0x3fef677556883cee, // -0.19208, 0.98138
+ 0xbfc8f8b83c69a60a, 0x3fef6297cff75cb0, // -0.19509, 0.98079
+ 0xbfc95b49e9b62af9, 0x3fef5da6ed43685d, // -0.1981, 0.98018
+ 0xbfc9bdcbf2dc4366, 0x3fef58a2b1789e84, // -0.2011, 0.97957
+ 0xbfca203e1b1831da, 0x3fef538b1faf2d07, // -0.20411, 0.97895
+ 0xbfca82a025b00451, 0x3fef4e603b0b2f2d, // -0.20711, 0.97832
+ 0xbfcae4f1d5f3b9ab, 0x3fef492206bcabb4, // -0.21011, 0.97768
+ 0xbfcb4732ef3d6722, 0x3fef43d085ff92dd, // -0.21311, 0.97703
+ 0xbfcba96334f15dad, 0x3fef3e6bbc1bbc65, // -0.21611, 0.97637
+ 0xbfcc0b826a7e4f63, 0x3fef38f3ac64e589, // -0.2191, 0.9757
+ 0xbfcc6d90535d74dc, 0x3fef33685a3aaef0, // -0.22209, 0.97503
+ 0xbfcccf8cb312b286, 0x3fef2dc9c9089a9d, // -0.22508, 0.97434
+ 0xbfcd31774d2cbdee, 0x3fef2817fc4609ce, // -0.22807, 0.97364
+ 0xbfcd934fe5454311, 0x3fef2252f7763ada, // -0.23106, 0.97294
+ 0xbfcdf5163f01099a, 0x3fef1c7abe284708, // -0.23404, 0.97223
+ 0xbfce56ca1e101a1b, 0x3fef168f53f7205d, // -0.23702, 0.9715
+ 0xbfceb86b462de348, 0x3fef1090bc898f5f, // -0.24, 0.97077
+ 0xbfcf19f97b215f1a, 0x3fef0a7efb9230d7, // -0.24298, 0.97003
+ 0xbfcf7b7480bd3801, 0x3fef045a14cf738c, // -0.24596, 0.96928
+ 0xbfcfdcdc1adfedf8, 0x3feefe220c0b95ec, // -0.24893, 0.96852
+ 0xbfd01f1806b9fdd2, 0x3feef7d6e51ca3c0, // -0.2519, 0.96775
+ 0xbfd04fb80e37fdae, 0x3feef178a3e473c2, // -0.25487, 0.96698
+ 0xbfd0804e05eb661e, 0x3feeeb074c50a544, // -0.25783, 0.96619
+ 0xbfd0b0d9cfdbdb90, 0x3feee482e25a9dbc, // -0.26079, 0.96539
+ 0xbfd0e15b4e1749cd, 0x3feeddeb6a078651, // -0.26375, 0.96459
+ 0xbfd111d262b1f677, 0x3feed740e7684963, // -0.26671, 0.96378
+ 0xbfd1423eefc69378, 0x3feed0835e999009, // -0.26967, 0.96295
+ 0xbfd172a0d7765177, 0x3feec9b2d3c3bf84, // -0.27262, 0.96212
+ 0xbfd1a2f7fbe8f243, 0x3feec2cf4b1af6b2, // -0.27557, 0.96128
+ 0xbfd1d3443f4cdb3d, 0x3feebbd8c8df0b74, // -0.27852, 0.96043
+ 0xbfd2038583d727bd, 0x3feeb4cf515b8811, // -0.28146, 0.95957
+ 0xbfd233bbabc3bb72, 0x3feeadb2e8e7a88e, // -0.28441, 0.9587
+ 0xbfd263e6995554ba, 0x3feea68393e65800, // -0.28735, 0.95783
+ 0xbfd294062ed59f05, 0x3fee9f4156c62dda, // -0.29028, 0.95694
+ 0xbfd2c41a4e954520, 0x3fee97ec36016b30, // -0.29322, 0.95605
+ 0xbfd2f422daec0386, 0x3fee9084361df7f3, // -0.29615, 0.95514
+ 0xbfd3241fb638baaf, 0x3fee89095bad6025, // -0.29908, 0.95423
+ 0xbfd35410c2e18152, 0x3fee817bab4cd10d, // -0.30201, 0.95331
+ 0xbfd383f5e353b6aa, 0x3fee79db29a5165a, // -0.30493, 0.95238
+ 0xbfd3b3cefa0414b7, 0x3fee7227db6a9744, // -0.30785, 0.95144
+ 0xbfd3e39be96ec271, 0x3fee6a61c55d53a7, // -0.31077, 0.95049
+ 0xbfd4135c94176602, 0x3fee6288ec48e112, // -0.31368, 0.94953
+ 0xbfd44310dc8936f0, 0x3fee5a9d550467d3, // -0.31659, 0.94856
+ 0xbfd472b8a5571054, 0x3fee529f04729ffc, // -0.3195, 0.94759
+ 0xbfd4a253d11b82f3, 0x3fee4a8dff81ce5e, // -0.32241, 0.9466
+ 0xbfd4d1e24278e76a, 0x3fee426a4b2bc17e, // -0.32531, 0.94561
+ 0xbfd50163dc197047, 0x3fee3a33ec75ce85, // -0.32821, 0.9446
+ 0xbfd530d880af3c24, 0x3fee31eae870ce25, // -0.33111, 0.94359
+ 0xbfd5604012f467b4, 0x3fee298f4439197a, // -0.334, 0.94257
+ 0xbfd58f9a75ab1fdd, 0x3fee212104f686e5, // -0.33689, 0.94154
+ 0xbfd5bee78b9db3b6, 0x3fee18a02fdc66d9, // -0.33978, 0.94051
+ 0xbfd5ee27379ea693, 0x3fee100cca2980ac, // -0.34266, 0.93946
+ 0xbfd61d595c88c203, 0x3fee0766d9280f54, // -0.34554, 0.9384
+ 0xbfd64c7ddd3f27c6, 0x3fedfeae622dbe2b, // -0.34842, 0.93734
+ 0xbfd67b949cad63ca, 0x3fedf5e36a9ba59c, // -0.35129, 0.93627
+ 0xbfd6aa9d7dc77e16, 0x3feded05f7de47da, // -0.35416, 0.93518
+ 0xbfd6d998638a0cb5, 0x3fede4160f6d8d81, // -0.35703, 0.93409
+ 0xbfd7088530fa459e, 0x3feddb13b6ccc23d, // -0.3599, 0.93299
+ 0xbfd73763c9261092, 0x3fedd1fef38a915a, // -0.36276, 0.93188
+ 0xbfd766340f2418f6, 0x3fedc8d7cb410260, // -0.36561, 0.93077
+ 0xbfd794f5e613dfae, 0x3fedbf9e4395759a, // -0.36847, 0.92964
+ 0xbfd7c3a9311dcce7, 0x3fedb6526238a09b, // -0.37132, 0.92851
+ 0xbfd7f24dd37341e3, 0x3fedacf42ce68ab9, // -0.37416, 0.92736
+ 0xbfd820e3b04eaac4, 0x3feda383a9668988, // -0.37701, 0.92621
+ 0xbfd84f6aaaf3903f, 0x3fed9a00dd8b3d46, // -0.37985, 0.92505
+ 0xbfd87de2a6aea963, 0x3fed906bcf328d46, // -0.38268, 0.92388
+ 0xbfd8ac4b86d5ed44, 0x3fed86c48445a450, // -0.38552, 0.9227
+ 0xbfd8daa52ec8a4af, 0x3fed7d0b02b8ecf9, // -0.38835, 0.92151
+ 0xbfd908ef81ef7bd1, 0x3fed733f508c0dff, // -0.39117, 0.92032
+ 0xbfd9372a63bc93d7, 0x3fed696173c9e68b, // -0.39399, 0.91911
+ 0xbfd96555b7ab948f, 0x3fed5f7172888a7f, // -0.39681, 0.9179
+ 0xbfd993716141bdfe, 0x3fed556f52e93eb1, // -0.39962, 0.91668
+ 0xbfd9c17d440df9f2, 0x3fed4b5b1b187524, // -0.40243, 0.91545
+ 0xbfd9ef7943a8ed8a, 0x3fed4134d14dc93a, // -0.40524, 0.91421
+ 0xbfda1d6543b50ac0, 0x3fed36fc7bcbfbdc, // -0.40804, 0.91296
+ 0xbfda4b4127dea1e4, 0x3fed2cb220e0ef9f, // -0.41084, 0.91171
+ 0xbfda790cd3dbf31a, 0x3fed2255c6e5a4e1, // -0.41364, 0.91044
+ 0xbfdaa6c82b6d3fc9, 0x3fed17e7743e35dc, // -0.41643, 0.90917
+ 0xbfdad473125cdc08, 0x3fed0d672f59d2b9, // -0.41922, 0.90789
+ 0xbfdb020d6c7f4009, 0x3fed02d4feb2bd92, // -0.422, 0.9066
+ 0xbfdb2f971db31972, 0x3fecf830e8ce467b, // -0.42478, 0.9053
+ 0xbfdb5d1009e15cc0, 0x3feced7af43cc773, // -0.42756, 0.90399
+ 0xbfdb8a7814fd5693, 0x3fece2b32799a060, // -0.43033, 0.90267
+ 0xbfdbb7cf2304bd01, 0x3fecd7d9898b32f6, // -0.43309, 0.90135
+ 0xbfdbe51517ffc0d9, 0x3fecccee20c2de9f, // -0.43586, 0.90002
+ 0xbfdc1249d8011ee7, 0x3fecc1f0f3fcfc5c, // -0.43862, 0.89867
+ 0xbfdc3f6d47263129, 0x3fecb6e20a00da99, // -0.44137, 0.89732
+ 0xbfdc6c7f4997000a, 0x3fecabc169a0b901, // -0.44412, 0.89597
+ 0xbfdc997fc3865388, 0x3feca08f19b9c449, // -0.44687, 0.8946
+ 0xbfdcc66e9931c45d, 0x3fec954b213411f5, // -0.44961, 0.89322
+ 0xbfdcf34baee1cd21, 0x3fec89f587029c13, // -0.45235, 0.89184
+ 0xbfdd2016e8e9db5b, 0x3fec7e8e52233cf3, // -0.45508, 0.89045
+ 0xbfdd4cd02ba8609c, 0x3fec7315899eaad7, // -0.45781, 0.88905
+ 0xbfdd79775b86e389, 0x3fec678b3488739b, // -0.46054, 0.88764
+ 0xbfdda60c5cfa10d8, 0x3fec5bef59fef85a, // -0.46326, 0.88622
+ 0xbfddd28f1481cc58, 0x3fec5042012b6907, // -0.46598, 0.8848
+ 0xbfddfeff66a941de, 0x3fec44833141c004, // -0.46869, 0.88336
+ 0xbfde2b5d3806f63b, 0x3fec38b2f180bdb1, // -0.4714, 0.88192
+ 0xbfde57a86d3cd824, 0x3fec2cd14931e3f1, // -0.4741, 0.88047
+ 0xbfde83e0eaf85113, 0x3fec20de3fa971b0, // -0.4768, 0.87901
+ 0xbfdeb00695f25620, 0x3fec14d9dc465e58, // -0.47949, 0.87755
+ 0xbfdedc1952ef78d5, 0x3fec08c426725549, // -0.48218, 0.87607
+ 0xbfdf081906bff7fd, 0x3febfc9d25a1b147, // -0.48487, 0.87459
+ 0xbfdf3405963fd068, 0x3febf064e15377dd, // -0.48755, 0.87309
+ 0xbfdf5fdee656cda3, 0x3febe41b611154c1, // -0.49023, 0.8716
+ 0xbfdf8ba4dbf89aba, 0x3febd7c0ac6f952a, // -0.4929, 0.87009
+ 0xbfdfb7575c24d2de, 0x3febcb54cb0d2327, // -0.49557, 0.86857
+ 0xbfdfe2f64be7120f, 0x3febbed7c49380ea, // -0.49823, 0.86705
+ 0xbfe00740c82b82e0, 0x3febb249a0b6c40d, // -0.50089, 0.86551
+ 0xbfe01cfc874c3eb7, 0x3feba5aa673590d2, // -0.50354, 0.86397
+ 0xbfe032ae55edbd95, 0x3feb98fa1fd9155e, // -0.50619, 0.86242
+ 0xbfe0485626ae221a, 0x3feb8c38d27504e9, // -0.50883, 0.86087
+ 0xbfe05df3ec31b8b6, 0x3feb7f6686e792ea, // -0.51147, 0.8593
+ 0xbfe073879922ffed, 0x3feb728345196e3e, // -0.5141, 0.85773
+ 0xbfe089112032b08c, 0x3feb658f14fdbc47, // -0.51673, 0.85615
+ 0xbfe09e907417c5e1, 0x3feb5889fe921405, // -0.51936, 0.85456
+ 0xbfe0b405878f85ec, 0x3feb4b7409de7925, // -0.52198, 0.85296
+ 0xbfe0c9704d5d898f, 0x3feb3e4d3ef55712, // -0.52459, 0.85136
+ 0xbfe0ded0b84bc4b5, 0x3feb3115a5f37bf4, // -0.5272, 0.84974
+ 0xbfe0f426bb2a8e7d, 0x3feb23cd470013b4, // -0.5298, 0.84812
+ 0xbfe1097248d0a956, 0x3feb16742a4ca2f5, // -0.5324, 0.84649
+ 0xbfe11eb3541b4b22, 0x3feb090a58150200, // -0.535, 0.84485
+ 0xbfe133e9cfee254e, 0x3feafb8fd89f57b6, // -0.53759, 0.84321
+ 0xbfe14915af336ceb, 0x3feaee04b43c1474, // -0.54017, 0.84155
+ 0xbfe15e36e4dbe2bc, 0x3feae068f345ecef, // -0.54275, 0.83989
+ 0xbfe1734d63dedb49, 0x3fead2bc9e21d511, // -0.54532, 0.83822
+ 0xbfe188591f3a46e5, 0x3feac4ffbd3efac8, // -0.54789, 0.83655
+ 0xbfe19d5a09f2b9b8, 0x3feab7325916c0d4, // -0.55046, 0.83486
+ 0xbfe1b250171373be, 0x3feaa9547a2cb98e, // -0.55302, 0.83317
+ 0xbfe1c73b39ae68c8, 0x3fea9b66290ea1a3, // -0.55557, 0.83147
+ 0xbfe1dc1b64dc4872, 0x3fea8d676e545ad2, // -0.55812, 0.82976
+ 0xbfe1f0f08bbc861b, 0x3fea7f58529fe69d, // -0.56066, 0.82805
+ 0xbfe205baa17560d6, 0x3fea7138de9d60f5, // -0.5632, 0.82632
+ 0xbfe21a799933eb58, 0x3fea63091b02fae2, // -0.56573, 0.82459
+ 0xbfe22f2d662c13e1, 0x3fea54c91090f524, // -0.56826, 0.82285
+ 0xbfe243d5fb98ac1f, 0x3fea4678c8119ac8, // -0.57078, 0.8211
+ 0xbfe258734cbb7110, 0x3fea38184a593bc6, // -0.5733, 0.81935
+ 0xbfe26d054cdd12df, 0x3fea29a7a0462782, // -0.57581, 0.81758
+ 0xbfe2818bef4d3cba, 0x3fea1b26d2c0a75e, // -0.57831, 0.81581
+ 0xbfe2960727629ca8, 0x3fea0c95eabaf937, // -0.58081, 0.81404
+ 0xbfe2aa76e87aeb58, 0x3fe9fdf4f13149de, // -0.58331, 0.81225
+ 0xbfe2bedb25faf3ea, 0x3fe9ef43ef29af94, // -0.5858, 0.81046
+ 0xbfe2d333d34e9bb7, 0x3fe9e082edb42472, // -0.58828, 0.80866
+ 0xbfe2e780e3e8ea16, 0x3fe9d1b1f5ea80d6, // -0.59076, 0.80685
+ 0xbfe2fbc24b441015, 0x3fe9c2d110f075c3, // -0.59323, 0.80503
+ 0xbfe30ff7fce17035, 0x3fe9b3e047f38741, // -0.5957, 0.80321
+ 0xbfe32421ec49a620, 0x3fe9a4dfa42b06b2, // -0.59816, 0.80138
+ 0xbfe338400d0c8e57, 0x3fe995cf2ed80d22, // -0.60062, 0.79954
+ 0xbfe34c5252c14de1, 0x3fe986aef1457594, // -0.60307, 0.79769
+ 0xbfe36058b10659f3, 0x3fe9777ef4c7d742, // -0.60551, 0.79584
+ 0xbfe374531b817f8d, 0x3fe9683f42bd7fe1, // -0.60795, 0.79398
+ 0xbfe3884185dfeb22, 0x3fe958efe48e6dd7, // -0.61038, 0.79211
+ 0xbfe39c23e3d63029, 0x3fe94990e3ac4a6c, // -0.61281, 0.79023
+ 0xbfe3affa292050b9, 0x3fe93a22499263fc, // -0.61523, 0.78835
+ 0xbfe3c3c44981c517, 0x3fe92aa41fc5a815, // -0.61765, 0.78646
+ 0xbfe3d78238c58343, 0x3fe91b166fd49da2, // -0.62006, 0.78456
+ 0xbfe3eb33eabe0680, 0x3fe90b7943575efe, // -0.62246, 0.78265
+ 0xbfe3fed9534556d4, 0x3fe8fbcca3ef940d, // -0.62486, 0.78074
+ 0xbfe41272663d108c, 0x3fe8ec109b486c49, // -0.62725, 0.77882
+ 0xbfe425ff178e6bb1, 0x3fe8dc45331698cc, // -0.62964, 0.77689
+ 0xbfe4397f5b2a4380, 0x3fe8cc6a75184655, // -0.63202, 0.77495
+ 0xbfe44cf325091dd6, 0x3fe8bc806b151741, // -0.63439, 0.77301
+ 0xbfe4605a692b32a2, 0x3fe8ac871ede1d88, // -0.63676, 0.77106
+ 0xbfe473b51b987347, 0x3fe89c7e9a4dd4ab, // -0.63912, 0.7691
+ 0xbfe48703306091fe, 0x3fe88c66e7481ba1, // -0.64148, 0.76714
+ 0xbfe49a449b9b0938, 0x3fe87c400fba2ebf, // -0.64383, 0.76517
+ 0xbfe4ad79516722f0, 0x3fe86c0a1d9aa195, // -0.64618, 0.76319
+ 0xbfe4c0a145ec0004, 0x3fe85bc51ae958cc, // -0.64851, 0.7612
+ 0xbfe4d3bc6d589f80, 0x3fe84b7111af83f9, // -0.65085, 0.75921
+ 0xbfe4e6cabbe3e5e9, 0x3fe83b0e0bff976e, // -0.65317, 0.75721
+ 0xbfe4f9cc25cca486, 0x3fe82a9c13f545ff, // -0.65549, 0.7552
+ 0xbfe50cc09f59a09b, 0x3fe81a1b33b57acc, // -0.65781, 0.75319
+ 0xbfe51fa81cd99aa6, 0x3fe8098b756e52fa, // -0.66011, 0.75117
+ 0xbfe5328292a35596, 0x3fe7f8ece3571771, // -0.66242, 0.74914
+ 0xbfe5454ff5159dfb, 0x3fe7e83f87b03686, // -0.66471, 0.7471
+ 0xbfe5581038975137, 0x3fe7d7836cc33db2, // -0.667, 0.74506
+ 0xbfe56ac35197649e, 0x3fe7c6b89ce2d333, // -0.66928, 0.74301
+ 0xbfe57d69348cec9f, 0x3fe7b5df226aafb0, // -0.67156, 0.74095
+ 0xbfe59001d5f723df, 0x3fe7a4f707bf97d2, // -0.67383, 0.73889
+ 0xbfe5a28d2a5d7250, 0x3fe79400574f55e4, // -0.67609, 0.73682
+ 0xbfe5b50b264f7448, 0x3fe782fb1b90b35b, // -0.67835, 0.73474
+ 0xbfe5c77bbe65018c, 0x3fe771e75f037261, // -0.6806, 0.73265
+ 0xbfe5d9dee73e345c, 0x3fe760c52c304764, // -0.68285, 0.73056
+ 0xbfe5ec3495837074, 0x3fe74f948da8d28d, // -0.68508, 0.72846
+ 0xbfe5fe7cbde56a0f, 0x3fe73e558e079942, // -0.68732, 0.72636
+ 0xbfe610b7551d2cde, 0x3fe72d0837efff97, // -0.68954, 0.72425
+ 0xbfe622e44fec22ff, 0x3fe71bac960e41bf, // -0.69176, 0.72213
+ 0xbfe63503a31c1be8, 0x3fe70a42b3176d7a, // -0.69397, 0.72
+ 0xbfe64715437f535b, 0x3fe6f8ca99c95b75, // -0.69618, 0.71787
+ 0xbfe6591925f0783e, 0x3fe6e74454eaa8ae, // -0.69838, 0.71573
+ 0xbfe66b0f3f52b386, 0x3fe6d5afef4aafcc, // -0.70057, 0.71358
+ 0xbfe67cf78491af10, 0x3fe6c40d73c18275, // -0.70275, 0.71143
+ 0xbfe68ed1eaa19c71, 0x3fe6b25ced2fe29c, // -0.70493, 0.70927
+ 0xbfe6a09e667f3bcc, 0x3fe6a09e667f3bcc, // -0.70711, 0.70711
+ 0xbfe6b25ced2fe29c, 0x3fe68ed1eaa19c71, // -0.70927, 0.70493
+ 0xbfe6c40d73c18275, 0x3fe67cf78491af10, // -0.71143, 0.70275
+ 0xbfe6d5afef4aafcc, 0x3fe66b0f3f52b386, // -0.71358, 0.70057
+ 0xbfe6e74454eaa8ae, 0x3fe6591925f0783e, // -0.71573, 0.69838
+ 0xbfe6f8ca99c95b75, 0x3fe64715437f535b, // -0.71787, 0.69618
+ 0xbfe70a42b3176d7a, 0x3fe63503a31c1be8, // -0.72, 0.69397
+ 0xbfe71bac960e41bf, 0x3fe622e44fec22ff, // -0.72213, 0.69176
+ 0xbfe72d0837efff97, 0x3fe610b7551d2cde, // -0.72425, 0.68954
+ 0xbfe73e558e079942, 0x3fe5fe7cbde56a0f, // -0.72636, 0.68732
+ 0xbfe74f948da8d28d, 0x3fe5ec3495837074, // -0.72846, 0.68508
+ 0xbfe760c52c304764, 0x3fe5d9dee73e345c, // -0.73056, 0.68285
+ 0xbfe771e75f037261, 0x3fe5c77bbe65018c, // -0.73265, 0.6806
+ 0xbfe782fb1b90b35b, 0x3fe5b50b264f7448, // -0.73474, 0.67835
+ 0xbfe79400574f55e4, 0x3fe5a28d2a5d7250, // -0.73682, 0.67609
+ 0xbfe7a4f707bf97d2, 0x3fe59001d5f723df, // -0.73889, 0.67383
+ 0xbfe7b5df226aafb0, 0x3fe57d69348cec9f, // -0.74095, 0.67156
+ 0xbfe7c6b89ce2d333, 0x3fe56ac35197649e, // -0.74301, 0.66928
+ 0xbfe7d7836cc33db2, 0x3fe5581038975137, // -0.74506, 0.667
+ 0xbfe7e83f87b03686, 0x3fe5454ff5159dfb, // -0.7471, 0.66471
+ 0xbfe7f8ece3571771, 0x3fe5328292a35596, // -0.74914, 0.66242
+ 0xbfe8098b756e52fa, 0x3fe51fa81cd99aa6, // -0.75117, 0.66011
+ 0xbfe81a1b33b57acc, 0x3fe50cc09f59a09b, // -0.75319, 0.65781
+ 0xbfe82a9c13f545ff, 0x3fe4f9cc25cca486, // -0.7552, 0.65549
+ 0xbfe83b0e0bff976e, 0x3fe4e6cabbe3e5e9, // -0.75721, 0.65317
+ 0xbfe84b7111af83f9, 0x3fe4d3bc6d589f80, // -0.75921, 0.65085
+ 0xbfe85bc51ae958cc, 0x3fe4c0a145ec0004, // -0.7612, 0.64851
+ 0xbfe86c0a1d9aa195, 0x3fe4ad79516722f0, // -0.76319, 0.64618
+ 0xbfe87c400fba2ebf, 0x3fe49a449b9b0938, // -0.76517, 0.64383
+ 0xbfe88c66e7481ba1, 0x3fe48703306091fe, // -0.76714, 0.64148
+ 0xbfe89c7e9a4dd4ab, 0x3fe473b51b987347, // -0.7691, 0.63912
+ 0xbfe8ac871ede1d88, 0x3fe4605a692b32a2, // -0.77106, 0.63676
+ 0xbfe8bc806b151741, 0x3fe44cf325091dd6, // -0.77301, 0.63439
+ 0xbfe8cc6a75184655, 0x3fe4397f5b2a4380, // -0.77495, 0.63202
+ 0xbfe8dc45331698cc, 0x3fe425ff178e6bb1, // -0.77689, 0.62964
+ 0xbfe8ec109b486c49, 0x3fe41272663d108c, // -0.77882, 0.62725
+ 0xbfe8fbcca3ef940d, 0x3fe3fed9534556d4, // -0.78074, 0.62486
+ 0xbfe90b7943575efe, 0x3fe3eb33eabe0680, // -0.78265, 0.62246
+ 0xbfe91b166fd49da2, 0x3fe3d78238c58343, // -0.78456, 0.62006
+ 0xbfe92aa41fc5a815, 0x3fe3c3c44981c517, // -0.78646, 0.61765
+ 0xbfe93a22499263fc, 0x3fe3affa292050b9, // -0.78835, 0.61523
+ 0xbfe94990e3ac4a6c, 0x3fe39c23e3d63029, // -0.79023, 0.61281
+ 0xbfe958efe48e6dd7, 0x3fe3884185dfeb22, // -0.79211, 0.61038
+ 0xbfe9683f42bd7fe1, 0x3fe374531b817f8d, // -0.79398, 0.60795
+ 0xbfe9777ef4c7d742, 0x3fe36058b10659f3, // -0.79584, 0.60551
+ 0xbfe986aef1457594, 0x3fe34c5252c14de1, // -0.79769, 0.60307
+ 0xbfe995cf2ed80d22, 0x3fe338400d0c8e57, // -0.79954, 0.60062
+ 0xbfe9a4dfa42b06b2, 0x3fe32421ec49a620, // -0.80138, 0.59816
+ 0xbfe9b3e047f38741, 0x3fe30ff7fce17035, // -0.80321, 0.5957
+ 0xbfe9c2d110f075c3, 0x3fe2fbc24b441015, // -0.80503, 0.59323
+ 0xbfe9d1b1f5ea80d6, 0x3fe2e780e3e8ea16, // -0.80685, 0.59076
+ 0xbfe9e082edb42472, 0x3fe2d333d34e9bb7, // -0.80866, 0.58828
+ 0xbfe9ef43ef29af94, 0x3fe2bedb25faf3ea, // -0.81046, 0.5858
+ 0xbfe9fdf4f13149de, 0x3fe2aa76e87aeb58, // -0.81225, 0.58331
+ 0xbfea0c95eabaf937, 0x3fe2960727629ca8, // -0.81404, 0.58081
+ 0xbfea1b26d2c0a75e, 0x3fe2818bef4d3cba, // -0.81581, 0.57831
+ 0xbfea29a7a0462782, 0x3fe26d054cdd12df, // -0.81758, 0.57581
+ 0xbfea38184a593bc6, 0x3fe258734cbb7110, // -0.81935, 0.5733
+ 0xbfea4678c8119ac8, 0x3fe243d5fb98ac1f, // -0.8211, 0.57078
+ 0xbfea54c91090f524, 0x3fe22f2d662c13e1, // -0.82285, 0.56826
+ 0xbfea63091b02fae2, 0x3fe21a799933eb58, // -0.82459, 0.56573
+ 0xbfea7138de9d60f5, 0x3fe205baa17560d6, // -0.82632, 0.5632
+ 0xbfea7f58529fe69d, 0x3fe1f0f08bbc861b, // -0.82805, 0.56066
+ 0xbfea8d676e545ad2, 0x3fe1dc1b64dc4872, // -0.82976, 0.55812
+ 0xbfea9b66290ea1a3, 0x3fe1c73b39ae68c8, // -0.83147, 0.55557
+ 0xbfeaa9547a2cb98e, 0x3fe1b250171373be, // -0.83317, 0.55302
+ 0xbfeab7325916c0d4, 0x3fe19d5a09f2b9b8, // -0.83486, 0.55046
+ 0xbfeac4ffbd3efac8, 0x3fe188591f3a46e5, // -0.83655, 0.54789
+ 0xbfead2bc9e21d511, 0x3fe1734d63dedb49, // -0.83822, 0.54532
+ 0xbfeae068f345ecef, 0x3fe15e36e4dbe2bc, // -0.83989, 0.54275
+ 0xbfeaee04b43c1474, 0x3fe14915af336ceb, // -0.84155, 0.54017
+ 0xbfeafb8fd89f57b6, 0x3fe133e9cfee254e, // -0.84321, 0.53759
+ 0xbfeb090a58150200, 0x3fe11eb3541b4b22, // -0.84485, 0.535
+ 0xbfeb16742a4ca2f5, 0x3fe1097248d0a956, // -0.84649, 0.5324
+ 0xbfeb23cd470013b4, 0x3fe0f426bb2a8e7d, // -0.84812, 0.5298
+ 0xbfeb3115a5f37bf4, 0x3fe0ded0b84bc4b5, // -0.84974, 0.5272
+ 0xbfeb3e4d3ef55712, 0x3fe0c9704d5d898f, // -0.85136, 0.52459
+ 0xbfeb4b7409de7925, 0x3fe0b405878f85ec, // -0.85296, 0.52198
+ 0xbfeb5889fe921405, 0x3fe09e907417c5e1, // -0.85456, 0.51936
+ 0xbfeb658f14fdbc47, 0x3fe089112032b08c, // -0.85615, 0.51673
+ 0xbfeb728345196e3e, 0x3fe073879922ffed, // -0.85773, 0.5141
+ 0xbfeb7f6686e792ea, 0x3fe05df3ec31b8b6, // -0.8593, 0.51147
+ 0xbfeb8c38d27504e9, 0x3fe0485626ae221a, // -0.86087, 0.50883
+ 0xbfeb98fa1fd9155e, 0x3fe032ae55edbd95, // -0.86242, 0.50619
+ 0xbfeba5aa673590d2, 0x3fe01cfc874c3eb7, // -0.86397, 0.50354
+ 0xbfebb249a0b6c40d, 0x3fe00740c82b82e0, // -0.86551, 0.50089
+ 0xbfebbed7c49380ea, 0x3fdfe2f64be7120f, // -0.86705, 0.49823
+ 0xbfebcb54cb0d2327, 0x3fdfb7575c24d2de, // -0.86857, 0.49557
+ 0xbfebd7c0ac6f952a, 0x3fdf8ba4dbf89aba, // -0.87009, 0.4929
+ 0xbfebe41b611154c1, 0x3fdf5fdee656cda3, // -0.8716, 0.49023
+ 0xbfebf064e15377dd, 0x3fdf3405963fd068, // -0.87309, 0.48755
+ 0xbfebfc9d25a1b147, 0x3fdf081906bff7fd, // -0.87459, 0.48487
+ 0xbfec08c426725549, 0x3fdedc1952ef78d5, // -0.87607, 0.48218
+ 0xbfec14d9dc465e58, 0x3fdeb00695f25620, // -0.87755, 0.47949
+ 0xbfec20de3fa971b0, 0x3fde83e0eaf85113, // -0.87901, 0.4768
+ 0xbfec2cd14931e3f1, 0x3fde57a86d3cd824, // -0.88047, 0.4741
+ 0xbfec38b2f180bdb1, 0x3fde2b5d3806f63b, // -0.88192, 0.4714
+ 0xbfec44833141c004, 0x3fddfeff66a941de, // -0.88336, 0.46869
+ 0xbfec5042012b6907, 0x3fddd28f1481cc58, // -0.8848, 0.46598
+ 0xbfec5bef59fef85a, 0x3fdda60c5cfa10d8, // -0.88622, 0.46326
+ 0xbfec678b3488739b, 0x3fdd79775b86e389, // -0.88764, 0.46054
+ 0xbfec7315899eaad7, 0x3fdd4cd02ba8609c, // -0.88905, 0.45781
+ 0xbfec7e8e52233cf3, 0x3fdd2016e8e9db5b, // -0.89045, 0.45508
+ 0xbfec89f587029c13, 0x3fdcf34baee1cd21, // -0.89184, 0.45235
+ 0xbfec954b213411f5, 0x3fdcc66e9931c45d, // -0.89322, 0.44961
+ 0xbfeca08f19b9c449, 0x3fdc997fc3865388, // -0.8946, 0.44687
+ 0xbfecabc169a0b901, 0x3fdc6c7f4997000a, // -0.89597, 0.44412
+ 0xbfecb6e20a00da99, 0x3fdc3f6d47263129, // -0.89732, 0.44137
+ 0xbfecc1f0f3fcfc5c, 0x3fdc1249d8011ee7, // -0.89867, 0.43862
+ 0xbfecccee20c2de9f, 0x3fdbe51517ffc0d9, // -0.90002, 0.43586
+ 0xbfecd7d9898b32f6, 0x3fdbb7cf2304bd01, // -0.90135, 0.43309
+ 0xbfece2b32799a060, 0x3fdb8a7814fd5693, // -0.90267, 0.43033
+ 0xbfeced7af43cc773, 0x3fdb5d1009e15cc0, // -0.90399, 0.42756
+ 0xbfecf830e8ce467b, 0x3fdb2f971db31972, // -0.9053, 0.42478
+ 0xbfed02d4feb2bd92, 0x3fdb020d6c7f4009, // -0.9066, 0.422
+ 0xbfed0d672f59d2b9, 0x3fdad473125cdc08, // -0.90789, 0.41922
+ 0xbfed17e7743e35dc, 0x3fdaa6c82b6d3fc9, // -0.90917, 0.41643
+ 0xbfed2255c6e5a4e1, 0x3fda790cd3dbf31a, // -0.91044, 0.41364
+ 0xbfed2cb220e0ef9f, 0x3fda4b4127dea1e4, // -0.91171, 0.41084
+ 0xbfed36fc7bcbfbdc, 0x3fda1d6543b50ac0, // -0.91296, 0.40804
+ 0xbfed4134d14dc93a, 0x3fd9ef7943a8ed8a, // -0.91421, 0.40524
+ 0xbfed4b5b1b187524, 0x3fd9c17d440df9f2, // -0.91545, 0.40243
+ 0xbfed556f52e93eb1, 0x3fd993716141bdfe, // -0.91668, 0.39962
+ 0xbfed5f7172888a7f, 0x3fd96555b7ab948f, // -0.9179, 0.39681
+ 0xbfed696173c9e68b, 0x3fd9372a63bc93d7, // -0.91911, 0.39399
+ 0xbfed733f508c0dff, 0x3fd908ef81ef7bd1, // -0.92032, 0.39117
+ 0xbfed7d0b02b8ecf9, 0x3fd8daa52ec8a4af, // -0.92151, 0.38835
+ 0xbfed86c48445a450, 0x3fd8ac4b86d5ed44, // -0.9227, 0.38552
+ 0xbfed906bcf328d46, 0x3fd87de2a6aea963, // -0.92388, 0.38268
+ 0xbfed9a00dd8b3d46, 0x3fd84f6aaaf3903f, // -0.92505, 0.37985
+ 0xbfeda383a9668988, 0x3fd820e3b04eaac4, // -0.92621, 0.37701
+ 0xbfedacf42ce68ab9, 0x3fd7f24dd37341e3, // -0.92736, 0.37416
+ 0xbfedb6526238a09b, 0x3fd7c3a9311dcce7, // -0.92851, 0.37132
+ 0xbfedbf9e4395759a, 0x3fd794f5e613dfae, // -0.92964, 0.36847
+ 0xbfedc8d7cb410260, 0x3fd766340f2418f6, // -0.93077, 0.36561
+ 0xbfedd1fef38a915a, 0x3fd73763c9261092, // -0.93188, 0.36276
+ 0xbfeddb13b6ccc23d, 0x3fd7088530fa459e, // -0.93299, 0.3599
+ 0xbfede4160f6d8d81, 0x3fd6d998638a0cb5, // -0.93409, 0.35703
+ 0xbfeded05f7de47da, 0x3fd6aa9d7dc77e16, // -0.93518, 0.35416
+ 0xbfedf5e36a9ba59c, 0x3fd67b949cad63ca, // -0.93627, 0.35129
+ 0xbfedfeae622dbe2b, 0x3fd64c7ddd3f27c6, // -0.93734, 0.34842
+ 0xbfee0766d9280f54, 0x3fd61d595c88c203, // -0.9384, 0.34554
+ 0xbfee100cca2980ac, 0x3fd5ee27379ea693, // -0.93946, 0.34266
+ 0xbfee18a02fdc66d9, 0x3fd5bee78b9db3b6, // -0.94051, 0.33978
+ 0xbfee212104f686e5, 0x3fd58f9a75ab1fdd, // -0.94154, 0.33689
+ 0xbfee298f4439197a, 0x3fd5604012f467b4, // -0.94257, 0.334
+ 0xbfee31eae870ce25, 0x3fd530d880af3c24, // -0.94359, 0.33111
+ 0xbfee3a33ec75ce85, 0x3fd50163dc197047, // -0.9446, 0.32821
+ 0xbfee426a4b2bc17e, 0x3fd4d1e24278e76a, // -0.94561, 0.32531
+ 0xbfee4a8dff81ce5e, 0x3fd4a253d11b82f3, // -0.9466, 0.32241
+ 0xbfee529f04729ffc, 0x3fd472b8a5571054, // -0.94759, 0.3195
+ 0xbfee5a9d550467d3, 0x3fd44310dc8936f0, // -0.94856, 0.31659
+ 0xbfee6288ec48e112, 0x3fd4135c94176602, // -0.94953, 0.31368
+ 0xbfee6a61c55d53a7, 0x3fd3e39be96ec271, // -0.95049, 0.31077
+ 0xbfee7227db6a9744, 0x3fd3b3cefa0414b7, // -0.95144, 0.30785
+ 0xbfee79db29a5165a, 0x3fd383f5e353b6aa, // -0.95238, 0.30493
+ 0xbfee817bab4cd10d, 0x3fd35410c2e18152, // -0.95331, 0.30201
+ 0xbfee89095bad6025, 0x3fd3241fb638baaf, // -0.95423, 0.29908
+ 0xbfee9084361df7f3, 0x3fd2f422daec0386, // -0.95514, 0.29615
+ 0xbfee97ec36016b30, 0x3fd2c41a4e954520, // -0.95605, 0.29322
+ 0xbfee9f4156c62dda, 0x3fd294062ed59f05, // -0.95694, 0.29028
+ 0xbfeea68393e65800, 0x3fd263e6995554ba, // -0.95783, 0.28735
+ 0xbfeeadb2e8e7a88e, 0x3fd233bbabc3bb72, // -0.9587, 0.28441
+ 0xbfeeb4cf515b8811, 0x3fd2038583d727bd, // -0.95957, 0.28146
+ 0xbfeebbd8c8df0b74, 0x3fd1d3443f4cdb3d, // -0.96043, 0.27852
+ 0xbfeec2cf4b1af6b2, 0x3fd1a2f7fbe8f243, // -0.96128, 0.27557
+ 0xbfeec9b2d3c3bf84, 0x3fd172a0d7765177, // -0.96212, 0.27262
+ 0xbfeed0835e999009, 0x3fd1423eefc69378, // -0.96295, 0.26967
+ 0xbfeed740e7684963, 0x3fd111d262b1f677, // -0.96378, 0.26671
+ 0xbfeeddeb6a078651, 0x3fd0e15b4e1749cd, // -0.96459, 0.26375
+ 0xbfeee482e25a9dbc, 0x3fd0b0d9cfdbdb90, // -0.96539, 0.26079
+ 0xbfeeeb074c50a544, 0x3fd0804e05eb661e, // -0.96619, 0.25783
+ 0xbfeef178a3e473c2, 0x3fd04fb80e37fdae, // -0.96698, 0.25487
+ 0xbfeef7d6e51ca3c0, 0x3fd01f1806b9fdd2, // -0.96775, 0.2519
+ 0xbfeefe220c0b95ec, 0x3fcfdcdc1adfedf8, // -0.96852, 0.24893
+ 0xbfef045a14cf738c, 0x3fcf7b7480bd3801, // -0.96928, 0.24596
+ 0xbfef0a7efb9230d7, 0x3fcf19f97b215f1a, // -0.97003, 0.24298
+ 0xbfef1090bc898f5f, 0x3fceb86b462de348, // -0.97077, 0.24
+ 0xbfef168f53f7205d, 0x3fce56ca1e101a1b, // -0.9715, 0.23702
+ 0xbfef1c7abe284708, 0x3fcdf5163f01099a, // -0.97223, 0.23404
+ 0xbfef2252f7763ada, 0x3fcd934fe5454311, // -0.97294, 0.23106
+ 0xbfef2817fc4609ce, 0x3fcd31774d2cbdee, // -0.97364, 0.22807
+ 0xbfef2dc9c9089a9d, 0x3fcccf8cb312b286, // -0.97434, 0.22508
+ 0xbfef33685a3aaef0, 0x3fcc6d90535d74dc, // -0.97503, 0.22209
+ 0xbfef38f3ac64e589, 0x3fcc0b826a7e4f63, // -0.9757, 0.2191
+ 0xbfef3e6bbc1bbc65, 0x3fcba96334f15dad, // -0.97637, 0.21611
+ 0xbfef43d085ff92dd, 0x3fcb4732ef3d6722, // -0.97703, 0.21311
+ 0xbfef492206bcabb4, 0x3fcae4f1d5f3b9ab, // -0.97768, 0.21011
+ 0xbfef4e603b0b2f2d, 0x3fca82a025b00451, // -0.97832, 0.20711
+ 0xbfef538b1faf2d07, 0x3fca203e1b1831da, // -0.97895, 0.20411
+ 0xbfef58a2b1789e84, 0x3fc9bdcbf2dc4366, // -0.97957, 0.2011
+ 0xbfef5da6ed43685d, 0x3fc95b49e9b62af9, // -0.98018, 0.1981
+ 0xbfef6297cff75cb0, 0x3fc8f8b83c69a60a, // -0.98079, 0.19509
+ 0xbfef677556883cee, 0x3fc8961727c41804, // -0.98138, 0.19208
+ 0xbfef6c3f7df5bbb7, 0x3fc83366e89c64c5, // -0.98196, 0.18907
+ 0xbfef70f6434b7eb7, 0x3fc7d0a7bbd2cb1b, // -0.98254, 0.18606
+ 0xbfef7599a3a12077, 0x3fc76dd9de50bf31, // -0.98311, 0.18304
+ 0xbfef7a299c1a322a, 0x3fc70afd8d08c4ff, // -0.98366, 0.18002
+ 0xbfef7ea629e63d6e, 0x3fc6a81304f64ab2, // -0.98421, 0.177
+ 0xbfef830f4a40c60c, 0x3fc6451a831d830d, // -0.98475, 0.17398
+ 0xbfef8764fa714ba9, 0x3fc5e214448b3fc6, // -0.98528, 0.17096
+ 0xbfef8ba737cb4b78, 0x3fc57f008654cbde, // -0.9858, 0.16794
+ 0xbfef8fd5ffae41db, 0x3fc51bdf8597c5f2, // -0.98631, 0.16491
+ 0xbfef93f14f85ac08, 0x3fc4b8b17f79fa88, // -0.98681, 0.16189
+ 0xbfef97f924c9099b, 0x3fc45576b1293e5a, // -0.9873, 0.15886
+ 0xbfef9bed7cfbde29, 0x3fc3f22f57db4893, // -0.98778, 0.15583
+ 0xbfef9fce55adb2c8, 0x3fc38edbb0cd8d14, // -0.98826, 0.1528
+ 0xbfefa39bac7a1791, 0x3fc32b7bf94516a7, // -0.98872, 0.14976
+ 0xbfefa7557f08a517, 0x3fc2c8106e8e613a, // -0.98918, 0.14673
+ 0xbfefaafbcb0cfddc, 0x3fc264994dfd340a, // -0.98962, 0.1437
+ 0xbfefae8e8e46cfbb, 0x3fc20116d4ec7bce, // -0.99006, 0.14066
+ 0xbfefb20dc681d54d, 0x3fc19d8940be24e7, // -0.99049, 0.13762
+ 0xbfefb5797195d741, 0x3fc139f0cedaf576, // -0.9909, 0.13458
+ 0xbfefb8d18d66adb7, 0x3fc0d64dbcb26786, // -0.99131, 0.13154
+ 0xbfefbc1617e44186, 0x3fc072a047ba831d, // -0.99171, 0.1285
+ 0xbfefbf470f0a8d88, 0x3fc00ee8ad6fb85b, // -0.9921, 0.12545
+ 0xbfefc26470e19fd3, 0x3fbf564e56a9730e, // -0.99248, 0.12241
+ 0xbfefc56e3b7d9af6, 0x3fbe8eb7fde4aa3e, // -0.99285, 0.11937
+ 0xbfefc8646cfeb721, 0x3fbdc70ecbae9fc8, // -0.99321, 0.11632
+ 0xbfefcb4703914354, 0x3fbcff533b307dc1, // -0.99356, 0.11327
+ 0xbfefce15fd6da67b, 0x3fbc3785c79ec2d5, // -0.99391, 0.11022
+ 0xbfefd0d158d86087, 0x3fbb6fa6ec38f64c, // -0.99424, 0.10717
+ 0xbfefd37914220b84, 0x3fbaa7b724495c04, // -0.99456, 0.10412
+ 0xbfefd60d2da75c9e, 0x3fb9dfb6eb24a85c, // -0.99488, 0.10107
+ 0xbfefd88da3d12526, 0x3fb917a6bc29b42c, // -0.99518, 0.098017
+ 0xbfefdafa7514538c, 0x3fb84f8712c130a0, // -0.99548, 0.094963
+ 0xbfefdd539ff1f456, 0x3fb787586a5d5b21, // -0.99577, 0.091909
+ 0xbfefdf9922f73307, 0x3fb6bf1b3e79b129, // -0.99604, 0.088854
+ 0xbfefe1cafcbd5b09, 0x3fb5f6d00a9aa419, // -0.99631, 0.085797
+ 0xbfefe3e92be9d886, 0x3fb52e774a4d4d0a, // -0.99657, 0.08274
+ 0xbfefe5f3af2e3940, 0x3fb4661179272096, // -0.99682, 0.079682
+ 0xbfefe7ea85482d60, 0x3fb39d9f12c5a299, // -0.99706, 0.076624
+ 0xbfefe9cdad01883a, 0x3fb2d52092ce19f6, // -0.99729, 0.073565
+ 0xbfefeb9d2530410f, 0x3fb20c9674ed444c, // -0.99751, 0.070505
+ 0xbfefed58ecb673c4, 0x3fb1440134d709b2, // -0.99772, 0.067444
+ 0xbfefef0102826191, 0x3fb07b614e463064, // -0.99793, 0.064383
+ 0xbfeff095658e71ad, 0x3faf656e79f820e0, // -0.99812, 0.061321
+ 0xbfeff21614e131ed, 0x3fadd406f9808ec8, // -0.9983, 0.058258
+ 0xbfeff3830f8d575c, 0x3fac428d12c0d7e3, // -0.99848, 0.055195
+ 0xbfeff4dc54b1bed3, 0x3faab101bd5f8317, // -0.99864, 0.052132
+ 0xbfeff621e3796d7e, 0x3fa91f65f10dd814, // -0.9988, 0.049068
+ 0xbfeff753bb1b9164, 0x3fa78dbaa5874685, // -0.99894, 0.046003
+ 0xbfeff871dadb81df, 0x3fa5fc00d290cd43, // -0.99908, 0.042938
+ 0xbfeff97c4208c014, 0x3fa46a396ff86179, // -0.9992, 0.039873
+ 0xbfeffa72effef75d, 0x3fa2d865759455cd, // -0.99932, 0.036807
+ 0xbfeffb55e425fdae, 0x3fa14685db42c17e, // -0.99943, 0.033741
+ 0xbfeffc251df1d3f8, 0x3f9f693731d1cf01, // -0.99953, 0.030675
+ 0xbfeffce09ce2a679, 0x3f9c454f4ce53b1c, // -0.99962, 0.027608
+ 0xbfeffd886084cd0d, 0x3f992155f7a3667e, // -0.9997, 0.024541
+ 0xbfeffe1c6870cb77, 0x3f95fd4d21fab226, // -0.99977, 0.021474
+ 0xbfeffe9cb44b51a1, 0x3f92d936bbe30efd, // -0.99983, 0.018407
+ 0xbfefff0943c53bd1, 0x3f8f6a296ab997ca, // -0.99988, 0.015339
+ 0xbfefff62169b92db, 0x3f8921d1fcdec784, // -0.99992, 0.012272
+ 0xbfefffa72c978c4f, 0x3f82d96b0e509703, // -0.99996, 0.0092038
+ 0xbfefffd8858e8a92, 0x3f7921f0fe670071, // -0.99998, 0.0061359
+ 0xbfeffff621621d02, 0x3f6921f8becca4ba, // -1, 0.003068
+ 0xbff0000000000000, 0x0000000000000000, // -1, 0
+ 0xbfeffff621621d02, 0xbf6921f8becca4ba, // -1, -0.003068
+ 0xbfefffd8858e8a92, 0xbf7921f0fe670071, // -0.99998,-0.0061359
+ 0xbfefffa72c978c4f, 0xbf82d96b0e509703, // -0.99996,-0.0092038
+ 0xbfefff62169b92db, 0xbf8921d1fcdec784, // -0.99992, -0.012272
+ 0xbfefff0943c53bd1, 0xbf8f6a296ab997ca, // -0.99988, -0.015339
+ 0xbfeffe9cb44b51a1, 0xbf92d936bbe30efd, // -0.99983, -0.018407
+ 0xbfeffe1c6870cb77, 0xbf95fd4d21fab226, // -0.99977, -0.021474
+ 0xbfeffd886084cd0d, 0xbf992155f7a3667e, // -0.9997, -0.024541
+ 0xbfeffce09ce2a679, 0xbf9c454f4ce53b1c, // -0.99962, -0.027608
+ 0xbfeffc251df1d3f8, 0xbf9f693731d1cf01, // -0.99953, -0.030675
+ 0xbfeffb55e425fdae, 0xbfa14685db42c17e, // -0.99943, -0.033741
+ 0xbfeffa72effef75d, 0xbfa2d865759455cd, // -0.99932, -0.036807
+ 0xbfeff97c4208c014, 0xbfa46a396ff86179, // -0.9992, -0.039873
+ 0xbfeff871dadb81df, 0xbfa5fc00d290cd43, // -0.99908, -0.042938
+ 0xbfeff753bb1b9164, 0xbfa78dbaa5874685, // -0.99894, -0.046003
+ 0xbfeff621e3796d7e, 0xbfa91f65f10dd814, // -0.9988, -0.049068
+ 0xbfeff4dc54b1bed3, 0xbfaab101bd5f8317, // -0.99864, -0.052132
+ 0xbfeff3830f8d575c, 0xbfac428d12c0d7e3, // -0.99848, -0.055195
+ 0xbfeff21614e131ed, 0xbfadd406f9808ec8, // -0.9983, -0.058258
+ 0xbfeff095658e71ad, 0xbfaf656e79f820e0, // -0.99812, -0.061321
+ 0xbfefef0102826191, 0xbfb07b614e463064, // -0.99793, -0.064383
+ 0xbfefed58ecb673c4, 0xbfb1440134d709b2, // -0.99772, -0.067444
+ 0xbfefeb9d2530410f, 0xbfb20c9674ed444c, // -0.99751, -0.070505
+ 0xbfefe9cdad01883a, 0xbfb2d52092ce19f6, // -0.99729, -0.073565
+ 0xbfefe7ea85482d60, 0xbfb39d9f12c5a299, // -0.99706, -0.076624
+ 0xbfefe5f3af2e3940, 0xbfb4661179272096, // -0.99682, -0.079682
+ 0xbfefe3e92be9d886, 0xbfb52e774a4d4d0a, // -0.99657, -0.08274
+ 0xbfefe1cafcbd5b09, 0xbfb5f6d00a9aa419, // -0.99631, -0.085797
+ 0xbfefdf9922f73307, 0xbfb6bf1b3e79b129, // -0.99604, -0.088854
+ 0xbfefdd539ff1f456, 0xbfb787586a5d5b21, // -0.99577, -0.091909
+ 0xbfefdafa7514538c, 0xbfb84f8712c130a0, // -0.99548, -0.094963
+ 0xbfefd88da3d12526, 0xbfb917a6bc29b42c, // -0.99518, -0.098017
+ 0xbfefd60d2da75c9e, 0xbfb9dfb6eb24a85c, // -0.99488, -0.10107
+ 0xbfefd37914220b84, 0xbfbaa7b724495c04, // -0.99456, -0.10412
+ 0xbfefd0d158d86087, 0xbfbb6fa6ec38f64c, // -0.99424, -0.10717
+ 0xbfefce15fd6da67b, 0xbfbc3785c79ec2d5, // -0.99391, -0.11022
+ 0xbfefcb4703914354, 0xbfbcff533b307dc1, // -0.99356, -0.11327
+ 0xbfefc8646cfeb721, 0xbfbdc70ecbae9fc8, // -0.99321, -0.11632
+ 0xbfefc56e3b7d9af6, 0xbfbe8eb7fde4aa3e, // -0.99285, -0.11937
+ 0xbfefc26470e19fd3, 0xbfbf564e56a9730e, // -0.99248, -0.12241
+ 0xbfefbf470f0a8d88, 0xbfc00ee8ad6fb85b, // -0.9921, -0.12545
+ 0xbfefbc1617e44186, 0xbfc072a047ba831d, // -0.99171, -0.1285
+ 0xbfefb8d18d66adb7, 0xbfc0d64dbcb26786, // -0.99131, -0.13154
+ 0xbfefb5797195d741, 0xbfc139f0cedaf576, // -0.9909, -0.13458
+ 0xbfefb20dc681d54d, 0xbfc19d8940be24e7, // -0.99049, -0.13762
+ 0xbfefae8e8e46cfbb, 0xbfc20116d4ec7bce, // -0.99006, -0.14066
+ 0xbfefaafbcb0cfddc, 0xbfc264994dfd340a, // -0.98962, -0.1437
+ 0xbfefa7557f08a517, 0xbfc2c8106e8e613a, // -0.98918, -0.14673
+ 0xbfefa39bac7a1791, 0xbfc32b7bf94516a7, // -0.98872, -0.14976
+ 0xbfef9fce55adb2c8, 0xbfc38edbb0cd8d14, // -0.98826, -0.1528
+ 0xbfef9bed7cfbde29, 0xbfc3f22f57db4893, // -0.98778, -0.15583
+ 0xbfef97f924c9099b, 0xbfc45576b1293e5a, // -0.9873, -0.15886
+ 0xbfef93f14f85ac08, 0xbfc4b8b17f79fa88, // -0.98681, -0.16189
+ 0xbfef8fd5ffae41db, 0xbfc51bdf8597c5f2, // -0.98631, -0.16491
+ 0xbfef8ba737cb4b78, 0xbfc57f008654cbde, // -0.9858, -0.16794
+ 0xbfef8764fa714ba9, 0xbfc5e214448b3fc6, // -0.98528, -0.17096
+ 0xbfef830f4a40c60c, 0xbfc6451a831d830d, // -0.98475, -0.17398
+ 0xbfef7ea629e63d6e, 0xbfc6a81304f64ab2, // -0.98421, -0.177
+ 0xbfef7a299c1a322a, 0xbfc70afd8d08c4ff, // -0.98366, -0.18002
+ 0xbfef7599a3a12077, 0xbfc76dd9de50bf31, // -0.98311, -0.18304
+ 0xbfef70f6434b7eb7, 0xbfc7d0a7bbd2cb1b, // -0.98254, -0.18606
+ 0xbfef6c3f7df5bbb7, 0xbfc83366e89c64c5, // -0.98196, -0.18907
+ 0xbfef677556883cee, 0xbfc8961727c41804, // -0.98138, -0.19208
+ 0xbfef6297cff75cb0, 0xbfc8f8b83c69a60a, // -0.98079, -0.19509
+ 0xbfef5da6ed43685d, 0xbfc95b49e9b62af9, // -0.98018, -0.1981
+ 0xbfef58a2b1789e84, 0xbfc9bdcbf2dc4366, // -0.97957, -0.2011
+ 0xbfef538b1faf2d07, 0xbfca203e1b1831da, // -0.97895, -0.20411
+ 0xbfef4e603b0b2f2d, 0xbfca82a025b00451, // -0.97832, -0.20711
+ 0xbfef492206bcabb4, 0xbfcae4f1d5f3b9ab, // -0.97768, -0.21011
+ 0xbfef43d085ff92dd, 0xbfcb4732ef3d6722, // -0.97703, -0.21311
+ 0xbfef3e6bbc1bbc65, 0xbfcba96334f15dad, // -0.97637, -0.21611
+ 0xbfef38f3ac64e589, 0xbfcc0b826a7e4f63, // -0.9757, -0.2191
+ 0xbfef33685a3aaef0, 0xbfcc6d90535d74dc, // -0.97503, -0.22209
+ 0xbfef2dc9c9089a9d, 0xbfcccf8cb312b286, // -0.97434, -0.22508
+ 0xbfef2817fc4609ce, 0xbfcd31774d2cbdee, // -0.97364, -0.22807
+ 0xbfef2252f7763ada, 0xbfcd934fe5454311, // -0.97294, -0.23106
+ 0xbfef1c7abe284708, 0xbfcdf5163f01099a, // -0.97223, -0.23404
+ 0xbfef168f53f7205d, 0xbfce56ca1e101a1b, // -0.9715, -0.23702
+ 0xbfef1090bc898f5f, 0xbfceb86b462de348, // -0.97077, -0.24
+ 0xbfef0a7efb9230d7, 0xbfcf19f97b215f1a, // -0.97003, -0.24298
+ 0xbfef045a14cf738c, 0xbfcf7b7480bd3801, // -0.96928, -0.24596
+ 0xbfeefe220c0b95ec, 0xbfcfdcdc1adfedf8, // -0.96852, -0.24893
+ 0xbfeef7d6e51ca3c0, 0xbfd01f1806b9fdd2, // -0.96775, -0.2519
+ 0xbfeef178a3e473c2, 0xbfd04fb80e37fdae, // -0.96698, -0.25487
+ 0xbfeeeb074c50a544, 0xbfd0804e05eb661e, // -0.96619, -0.25783
+ 0xbfeee482e25a9dbc, 0xbfd0b0d9cfdbdb90, // -0.96539, -0.26079
+ 0xbfeeddeb6a078651, 0xbfd0e15b4e1749cd, // -0.96459, -0.26375
+ 0xbfeed740e7684963, 0xbfd111d262b1f677, // -0.96378, -0.26671
+ 0xbfeed0835e999009, 0xbfd1423eefc69378, // -0.96295, -0.26967
+ 0xbfeec9b2d3c3bf84, 0xbfd172a0d7765177, // -0.96212, -0.27262
+ 0xbfeec2cf4b1af6b2, 0xbfd1a2f7fbe8f243, // -0.96128, -0.27557
+ 0xbfeebbd8c8df0b74, 0xbfd1d3443f4cdb3d, // -0.96043, -0.27852
+ 0xbfeeb4cf515b8811, 0xbfd2038583d727bd, // -0.95957, -0.28146
+ 0xbfeeadb2e8e7a88e, 0xbfd233bbabc3bb72, // -0.9587, -0.28441
+ 0xbfeea68393e65800, 0xbfd263e6995554ba, // -0.95783, -0.28735
+ 0xbfee9f4156c62dda, 0xbfd294062ed59f05, // -0.95694, -0.29028
+ 0xbfee97ec36016b30, 0xbfd2c41a4e954520, // -0.95605, -0.29322
+ 0xbfee9084361df7f3, 0xbfd2f422daec0386, // -0.95514, -0.29615
+ 0xbfee89095bad6025, 0xbfd3241fb638baaf, // -0.95423, -0.29908
+ 0xbfee817bab4cd10d, 0xbfd35410c2e18152, // -0.95331, -0.30201
+ 0xbfee79db29a5165a, 0xbfd383f5e353b6aa, // -0.95238, -0.30493
+ 0xbfee7227db6a9744, 0xbfd3b3cefa0414b7, // -0.95144, -0.30785
+ 0xbfee6a61c55d53a7, 0xbfd3e39be96ec271, // -0.95049, -0.31077
+ 0xbfee6288ec48e112, 0xbfd4135c94176602, // -0.94953, -0.31368
+ 0xbfee5a9d550467d3, 0xbfd44310dc8936f0, // -0.94856, -0.31659
+ 0xbfee529f04729ffc, 0xbfd472b8a5571054, // -0.94759, -0.3195
+ 0xbfee4a8dff81ce5e, 0xbfd4a253d11b82f3, // -0.9466, -0.32241
+ 0xbfee426a4b2bc17e, 0xbfd4d1e24278e76a, // -0.94561, -0.32531
+ 0xbfee3a33ec75ce85, 0xbfd50163dc197047, // -0.9446, -0.32821
+ 0xbfee31eae870ce25, 0xbfd530d880af3c24, // -0.94359, -0.33111
+ 0xbfee298f4439197a, 0xbfd5604012f467b4, // -0.94257, -0.334
+ 0xbfee212104f686e5, 0xbfd58f9a75ab1fdd, // -0.94154, -0.33689
+ 0xbfee18a02fdc66d9, 0xbfd5bee78b9db3b6, // -0.94051, -0.33978
+ 0xbfee100cca2980ac, 0xbfd5ee27379ea693, // -0.93946, -0.34266
+ 0xbfee0766d9280f54, 0xbfd61d595c88c203, // -0.9384, -0.34554
+ 0xbfedfeae622dbe2b, 0xbfd64c7ddd3f27c6, // -0.93734, -0.34842
+ 0xbfedf5e36a9ba59c, 0xbfd67b949cad63ca, // -0.93627, -0.35129
+ 0xbfeded05f7de47da, 0xbfd6aa9d7dc77e16, // -0.93518, -0.35416
+ 0xbfede4160f6d8d81, 0xbfd6d998638a0cb5, // -0.93409, -0.35703
+ 0xbfeddb13b6ccc23d, 0xbfd7088530fa459e, // -0.93299, -0.3599
+ 0xbfedd1fef38a915a, 0xbfd73763c9261092, // -0.93188, -0.36276
+ 0xbfedc8d7cb410260, 0xbfd766340f2418f6, // -0.93077, -0.36561
+ 0xbfedbf9e4395759a, 0xbfd794f5e613dfae, // -0.92964, -0.36847
+ 0xbfedb6526238a09b, 0xbfd7c3a9311dcce7, // -0.92851, -0.37132
+ 0xbfedacf42ce68ab9, 0xbfd7f24dd37341e3, // -0.92736, -0.37416
+ 0xbfeda383a9668988, 0xbfd820e3b04eaac4, // -0.92621, -0.37701
+ 0xbfed9a00dd8b3d46, 0xbfd84f6aaaf3903f, // -0.92505, -0.37985
+ 0xbfed906bcf328d46, 0xbfd87de2a6aea963, // -0.92388, -0.38268
+ 0xbfed86c48445a450, 0xbfd8ac4b86d5ed44, // -0.9227, -0.38552
+ 0xbfed7d0b02b8ecf9, 0xbfd8daa52ec8a4af, // -0.92151, -0.38835
+ 0xbfed733f508c0dff, 0xbfd908ef81ef7bd1, // -0.92032, -0.39117
+ 0xbfed696173c9e68b, 0xbfd9372a63bc93d7, // -0.91911, -0.39399
+ 0xbfed5f7172888a7f, 0xbfd96555b7ab948f, // -0.9179, -0.39681
+ 0xbfed556f52e93eb1, 0xbfd993716141bdfe, // -0.91668, -0.39962
+ 0xbfed4b5b1b187524, 0xbfd9c17d440df9f2, // -0.91545, -0.40243
+ 0xbfed4134d14dc93a, 0xbfd9ef7943a8ed8a, // -0.91421, -0.40524
+ 0xbfed36fc7bcbfbdc, 0xbfda1d6543b50ac0, // -0.91296, -0.40804
+ 0xbfed2cb220e0ef9f, 0xbfda4b4127dea1e4, // -0.91171, -0.41084
+ 0xbfed2255c6e5a4e1, 0xbfda790cd3dbf31a, // -0.91044, -0.41364
+ 0xbfed17e7743e35dc, 0xbfdaa6c82b6d3fc9, // -0.90917, -0.41643
+ 0xbfed0d672f59d2b9, 0xbfdad473125cdc08, // -0.90789, -0.41922
+ 0xbfed02d4feb2bd92, 0xbfdb020d6c7f4009, // -0.9066, -0.422
+ 0xbfecf830e8ce467b, 0xbfdb2f971db31972, // -0.9053, -0.42478
+ 0xbfeced7af43cc773, 0xbfdb5d1009e15cc0, // -0.90399, -0.42756
+ 0xbfece2b32799a060, 0xbfdb8a7814fd5693, // -0.90267, -0.43033
+ 0xbfecd7d9898b32f6, 0xbfdbb7cf2304bd01, // -0.90135, -0.43309
+ 0xbfecccee20c2de9f, 0xbfdbe51517ffc0d9, // -0.90002, -0.43586
+ 0xbfecc1f0f3fcfc5c, 0xbfdc1249d8011ee7, // -0.89867, -0.43862
+ 0xbfecb6e20a00da99, 0xbfdc3f6d47263129, // -0.89732, -0.44137
+ 0xbfecabc169a0b901, 0xbfdc6c7f4997000a, // -0.89597, -0.44412
+ 0xbfeca08f19b9c449, 0xbfdc997fc3865388, // -0.8946, -0.44687
+ 0xbfec954b213411f5, 0xbfdcc66e9931c45d, // -0.89322, -0.44961
+ 0xbfec89f587029c13, 0xbfdcf34baee1cd21, // -0.89184, -0.45235
+ 0xbfec7e8e52233cf3, 0xbfdd2016e8e9db5b, // -0.89045, -0.45508
+ 0xbfec7315899eaad7, 0xbfdd4cd02ba8609c, // -0.88905, -0.45781
+ 0xbfec678b3488739b, 0xbfdd79775b86e389, // -0.88764, -0.46054
+ 0xbfec5bef59fef85a, 0xbfdda60c5cfa10d8, // -0.88622, -0.46326
+ 0xbfec5042012b6907, 0xbfddd28f1481cc58, // -0.8848, -0.46598
+ 0xbfec44833141c004, 0xbfddfeff66a941de, // -0.88336, -0.46869
+ 0xbfec38b2f180bdb1, 0xbfde2b5d3806f63b, // -0.88192, -0.4714
+ 0xbfec2cd14931e3f1, 0xbfde57a86d3cd824, // -0.88047, -0.4741
+ 0xbfec20de3fa971b0, 0xbfde83e0eaf85113, // -0.87901, -0.4768
+ 0xbfec14d9dc465e58, 0xbfdeb00695f25620, // -0.87755, -0.47949
+ 0xbfec08c426725549, 0xbfdedc1952ef78d5, // -0.87607, -0.48218
+ 0xbfebfc9d25a1b147, 0xbfdf081906bff7fd, // -0.87459, -0.48487
+ 0xbfebf064e15377dd, 0xbfdf3405963fd068, // -0.87309, -0.48755
+ 0xbfebe41b611154c1, 0xbfdf5fdee656cda3, // -0.8716, -0.49023
+ 0xbfebd7c0ac6f952a, 0xbfdf8ba4dbf89aba, // -0.87009, -0.4929
+ 0xbfebcb54cb0d2327, 0xbfdfb7575c24d2de, // -0.86857, -0.49557
+ 0xbfebbed7c49380ea, 0xbfdfe2f64be7120f, // -0.86705, -0.49823
+ 0xbfebb249a0b6c40d, 0xbfe00740c82b82e0, // -0.86551, -0.50089
+ 0xbfeba5aa673590d2, 0xbfe01cfc874c3eb7, // -0.86397, -0.50354
+ 0xbfeb98fa1fd9155e, 0xbfe032ae55edbd95, // -0.86242, -0.50619
+ 0xbfeb8c38d27504e9, 0xbfe0485626ae221a, // -0.86087, -0.50883
+ 0xbfeb7f6686e792ea, 0xbfe05df3ec31b8b6, // -0.8593, -0.51147
+ 0xbfeb728345196e3e, 0xbfe073879922ffed, // -0.85773, -0.5141
+ 0xbfeb658f14fdbc47, 0xbfe089112032b08c, // -0.85615, -0.51673
+ 0xbfeb5889fe921405, 0xbfe09e907417c5e1, // -0.85456, -0.51936
+ 0xbfeb4b7409de7925, 0xbfe0b405878f85ec, // -0.85296, -0.52198
+ 0xbfeb3e4d3ef55712, 0xbfe0c9704d5d898f, // -0.85136, -0.52459
+ 0xbfeb3115a5f37bf4, 0xbfe0ded0b84bc4b5, // -0.84974, -0.5272
+ 0xbfeb23cd470013b4, 0xbfe0f426bb2a8e7d, // -0.84812, -0.5298
+ 0xbfeb16742a4ca2f5, 0xbfe1097248d0a956, // -0.84649, -0.5324
+ 0xbfeb090a58150200, 0xbfe11eb3541b4b22, // -0.84485, -0.535
+ 0xbfeafb8fd89f57b6, 0xbfe133e9cfee254e, // -0.84321, -0.53759
+ 0xbfeaee04b43c1474, 0xbfe14915af336ceb, // -0.84155, -0.54017
+ 0xbfeae068f345ecef, 0xbfe15e36e4dbe2bc, // -0.83989, -0.54275
+ 0xbfead2bc9e21d511, 0xbfe1734d63dedb49, // -0.83822, -0.54532
+ 0xbfeac4ffbd3efac8, 0xbfe188591f3a46e5, // -0.83655, -0.54789
+ 0xbfeab7325916c0d4, 0xbfe19d5a09f2b9b8, // -0.83486, -0.55046
+ 0xbfeaa9547a2cb98e, 0xbfe1b250171373be, // -0.83317, -0.55302
+ 0xbfea9b66290ea1a3, 0xbfe1c73b39ae68c8, // -0.83147, -0.55557
+ 0xbfea8d676e545ad2, 0xbfe1dc1b64dc4872, // -0.82976, -0.55812
+ 0xbfea7f58529fe69d, 0xbfe1f0f08bbc861b, // -0.82805, -0.56066
+ 0xbfea7138de9d60f5, 0xbfe205baa17560d6, // -0.82632, -0.5632
+ 0xbfea63091b02fae2, 0xbfe21a799933eb58, // -0.82459, -0.56573
+ 0xbfea54c91090f524, 0xbfe22f2d662c13e1, // -0.82285, -0.56826
+ 0xbfea4678c8119ac8, 0xbfe243d5fb98ac1f, // -0.8211, -0.57078
+ 0xbfea38184a593bc6, 0xbfe258734cbb7110, // -0.81935, -0.5733
+ 0xbfea29a7a0462782, 0xbfe26d054cdd12df, // -0.81758, -0.57581
+ 0xbfea1b26d2c0a75e, 0xbfe2818bef4d3cba, // -0.81581, -0.57831
+ 0xbfea0c95eabaf937, 0xbfe2960727629ca8, // -0.81404, -0.58081
+ 0xbfe9fdf4f13149de, 0xbfe2aa76e87aeb58, // -0.81225, -0.58331
+ 0xbfe9ef43ef29af94, 0xbfe2bedb25faf3ea, // -0.81046, -0.5858
+ 0xbfe9e082edb42472, 0xbfe2d333d34e9bb7, // -0.80866, -0.58828
+ 0xbfe9d1b1f5ea80d6, 0xbfe2e780e3e8ea16, // -0.80685, -0.59076
+ 0xbfe9c2d110f075c3, 0xbfe2fbc24b441015, // -0.80503, -0.59323
+ 0xbfe9b3e047f38741, 0xbfe30ff7fce17035, // -0.80321, -0.5957
+ 0xbfe9a4dfa42b06b2, 0xbfe32421ec49a620, // -0.80138, -0.59816
+ 0xbfe995cf2ed80d22, 0xbfe338400d0c8e57, // -0.79954, -0.60062
+ 0xbfe986aef1457594, 0xbfe34c5252c14de1, // -0.79769, -0.60307
+ 0xbfe9777ef4c7d742, 0xbfe36058b10659f3, // -0.79584, -0.60551
+ 0xbfe9683f42bd7fe1, 0xbfe374531b817f8d, // -0.79398, -0.60795
+ 0xbfe958efe48e6dd7, 0xbfe3884185dfeb22, // -0.79211, -0.61038
+ 0xbfe94990e3ac4a6c, 0xbfe39c23e3d63029, // -0.79023, -0.61281
+ 0xbfe93a22499263fc, 0xbfe3affa292050b9, // -0.78835, -0.61523
+ 0xbfe92aa41fc5a815, 0xbfe3c3c44981c517, // -0.78646, -0.61765
+ 0xbfe91b166fd49da2, 0xbfe3d78238c58343, // -0.78456, -0.62006
+ 0xbfe90b7943575efe, 0xbfe3eb33eabe0680, // -0.78265, -0.62246
+ 0xbfe8fbcca3ef940d, 0xbfe3fed9534556d4, // -0.78074, -0.62486
+ 0xbfe8ec109b486c49, 0xbfe41272663d108c, // -0.77882, -0.62725
+ 0xbfe8dc45331698cc, 0xbfe425ff178e6bb1, // -0.77689, -0.62964
+ 0xbfe8cc6a75184655, 0xbfe4397f5b2a4380, // -0.77495, -0.63202
+ 0xbfe8bc806b151741, 0xbfe44cf325091dd6, // -0.77301, -0.63439
+ 0xbfe8ac871ede1d88, 0xbfe4605a692b32a2, // -0.77106, -0.63676
+ 0xbfe89c7e9a4dd4ab, 0xbfe473b51b987347, // -0.7691, -0.63912
+ 0xbfe88c66e7481ba1, 0xbfe48703306091fe, // -0.76714, -0.64148
+ 0xbfe87c400fba2ebf, 0xbfe49a449b9b0938, // -0.76517, -0.64383
+ 0xbfe86c0a1d9aa195, 0xbfe4ad79516722f0, // -0.76319, -0.64618
+ 0xbfe85bc51ae958cc, 0xbfe4c0a145ec0004, // -0.7612, -0.64851
+ 0xbfe84b7111af83f9, 0xbfe4d3bc6d589f80, // -0.75921, -0.65085
+ 0xbfe83b0e0bff976e, 0xbfe4e6cabbe3e5e9, // -0.75721, -0.65317
+ 0xbfe82a9c13f545ff, 0xbfe4f9cc25cca486, // -0.7552, -0.65549
+ 0xbfe81a1b33b57acc, 0xbfe50cc09f59a09b, // -0.75319, -0.65781
+ 0xbfe8098b756e52fa, 0xbfe51fa81cd99aa6, // -0.75117, -0.66011
+ 0xbfe7f8ece3571771, 0xbfe5328292a35596, // -0.74914, -0.66242
+ 0xbfe7e83f87b03686, 0xbfe5454ff5159dfb, // -0.7471, -0.66471
+ 0xbfe7d7836cc33db2, 0xbfe5581038975137, // -0.74506, -0.667
+ 0xbfe7c6b89ce2d333, 0xbfe56ac35197649e, // -0.74301, -0.66928
+ 0xbfe7b5df226aafb0, 0xbfe57d69348cec9f, // -0.74095, -0.67156
+ 0xbfe7a4f707bf97d2, 0xbfe59001d5f723df, // -0.73889, -0.67383
+ 0xbfe79400574f55e4, 0xbfe5a28d2a5d7250, // -0.73682, -0.67609
+ 0xbfe782fb1b90b35b, 0xbfe5b50b264f7448, // -0.73474, -0.67835
+ 0xbfe771e75f037261, 0xbfe5c77bbe65018c, // -0.73265, -0.6806
+ 0xbfe760c52c304764, 0xbfe5d9dee73e345c, // -0.73056, -0.68285
+ 0xbfe74f948da8d28d, 0xbfe5ec3495837074, // -0.72846, -0.68508
+ 0xbfe73e558e079942, 0xbfe5fe7cbde56a0f, // -0.72636, -0.68732
+ 0xbfe72d0837efff97, 0xbfe610b7551d2cde, // -0.72425, -0.68954
+ 0xbfe71bac960e41bf, 0xbfe622e44fec22ff, // -0.72213, -0.69176
+ 0xbfe70a42b3176d7a, 0xbfe63503a31c1be8, // -0.72, -0.69397
+ 0xbfe6f8ca99c95b75, 0xbfe64715437f535b, // -0.71787, -0.69618
+ 0xbfe6e74454eaa8ae, 0xbfe6591925f0783e, // -0.71573, -0.69838
+ 0xbfe6d5afef4aafcc, 0xbfe66b0f3f52b386, // -0.71358, -0.70057
+ 0xbfe6c40d73c18275, 0xbfe67cf78491af10, // -0.71143, -0.70275
+ 0xbfe6b25ced2fe29c, 0xbfe68ed1eaa19c71, // -0.70927, -0.70493
+ 0xbfe6a09e667f3bcc, 0xbfe6a09e667f3bcc, // -0.70711, -0.70711
+ 0xbfe68ed1eaa19c71, 0xbfe6b25ced2fe29c, // -0.70493, -0.70927
+ 0xbfe67cf78491af10, 0xbfe6c40d73c18275, // -0.70275, -0.71143
+ 0xbfe66b0f3f52b386, 0xbfe6d5afef4aafcc, // -0.70057, -0.71358
+ 0xbfe6591925f0783e, 0xbfe6e74454eaa8ae, // -0.69838, -0.71573
+ 0xbfe64715437f535b, 0xbfe6f8ca99c95b75, // -0.69618, -0.71787
+ 0xbfe63503a31c1be8, 0xbfe70a42b3176d7a, // -0.69397, -0.72
+ 0xbfe622e44fec22ff, 0xbfe71bac960e41bf, // -0.69176, -0.72213
+ 0xbfe610b7551d2cde, 0xbfe72d0837efff97, // -0.68954, -0.72425
+ 0xbfe5fe7cbde56a0f, 0xbfe73e558e079942, // -0.68732, -0.72636
+ 0xbfe5ec3495837074, 0xbfe74f948da8d28d, // -0.68508, -0.72846
+ 0xbfe5d9dee73e345c, 0xbfe760c52c304764, // -0.68285, -0.73056
+ 0xbfe5c77bbe65018c, 0xbfe771e75f037261, // -0.6806, -0.73265
+ 0xbfe5b50b264f7448, 0xbfe782fb1b90b35b, // -0.67835, -0.73474
+ 0xbfe5a28d2a5d7250, 0xbfe79400574f55e4, // -0.67609, -0.73682
+ 0xbfe59001d5f723df, 0xbfe7a4f707bf97d2, // -0.67383, -0.73889
+ 0xbfe57d69348cec9f, 0xbfe7b5df226aafb0, // -0.67156, -0.74095
+ 0xbfe56ac35197649e, 0xbfe7c6b89ce2d333, // -0.66928, -0.74301
+ 0xbfe5581038975137, 0xbfe7d7836cc33db2, // -0.667, -0.74506
+ 0xbfe5454ff5159dfb, 0xbfe7e83f87b03686, // -0.66471, -0.7471
+ 0xbfe5328292a35596, 0xbfe7f8ece3571771, // -0.66242, -0.74914
+ 0xbfe51fa81cd99aa6, 0xbfe8098b756e52fa, // -0.66011, -0.75117
+ 0xbfe50cc09f59a09b, 0xbfe81a1b33b57acc, // -0.65781, -0.75319
+ 0xbfe4f9cc25cca486, 0xbfe82a9c13f545ff, // -0.65549, -0.7552
+ 0xbfe4e6cabbe3e5e9, 0xbfe83b0e0bff976e, // -0.65317, -0.75721
+ 0xbfe4d3bc6d589f80, 0xbfe84b7111af83f9, // -0.65085, -0.75921
+ 0xbfe4c0a145ec0004, 0xbfe85bc51ae958cc, // -0.64851, -0.7612
+ 0xbfe4ad79516722f0, 0xbfe86c0a1d9aa195, // -0.64618, -0.76319
+ 0xbfe49a449b9b0938, 0xbfe87c400fba2ebf, // -0.64383, -0.76517
+ 0xbfe48703306091fe, 0xbfe88c66e7481ba1, // -0.64148, -0.76714
+ 0xbfe473b51b987347, 0xbfe89c7e9a4dd4ab, // -0.63912, -0.7691
+ 0xbfe4605a692b32a2, 0xbfe8ac871ede1d88, // -0.63676, -0.77106
+ 0xbfe44cf325091dd6, 0xbfe8bc806b151741, // -0.63439, -0.77301
+ 0xbfe4397f5b2a4380, 0xbfe8cc6a75184655, // -0.63202, -0.77495
+ 0xbfe425ff178e6bb1, 0xbfe8dc45331698cc, // -0.62964, -0.77689
+ 0xbfe41272663d108c, 0xbfe8ec109b486c49, // -0.62725, -0.77882
+ 0xbfe3fed9534556d4, 0xbfe8fbcca3ef940d, // -0.62486, -0.78074
+ 0xbfe3eb33eabe0680, 0xbfe90b7943575efe, // -0.62246, -0.78265
+ 0xbfe3d78238c58343, 0xbfe91b166fd49da2, // -0.62006, -0.78456
+ 0xbfe3c3c44981c517, 0xbfe92aa41fc5a815, // -0.61765, -0.78646
+ 0xbfe3affa292050b9, 0xbfe93a22499263fc, // -0.61523, -0.78835
+ 0xbfe39c23e3d63029, 0xbfe94990e3ac4a6c, // -0.61281, -0.79023
+ 0xbfe3884185dfeb22, 0xbfe958efe48e6dd7, // -0.61038, -0.79211
+ 0xbfe374531b817f8d, 0xbfe9683f42bd7fe1, // -0.60795, -0.79398
+ 0xbfe36058b10659f3, 0xbfe9777ef4c7d742, // -0.60551, -0.79584
+ 0xbfe34c5252c14de1, 0xbfe986aef1457594, // -0.60307, -0.79769
+ 0xbfe338400d0c8e57, 0xbfe995cf2ed80d22, // -0.60062, -0.79954
+ 0xbfe32421ec49a620, 0xbfe9a4dfa42b06b2, // -0.59816, -0.80138
+ 0xbfe30ff7fce17035, 0xbfe9b3e047f38741, // -0.5957, -0.80321
+ 0xbfe2fbc24b441015, 0xbfe9c2d110f075c3, // -0.59323, -0.80503
+ 0xbfe2e780e3e8ea16, 0xbfe9d1b1f5ea80d6, // -0.59076, -0.80685
+ 0xbfe2d333d34e9bb7, 0xbfe9e082edb42472, // -0.58828, -0.80866
+ 0xbfe2bedb25faf3ea, 0xbfe9ef43ef29af94, // -0.5858, -0.81046
+ 0xbfe2aa76e87aeb58, 0xbfe9fdf4f13149de, // -0.58331, -0.81225
+ 0xbfe2960727629ca8, 0xbfea0c95eabaf937, // -0.58081, -0.81404
+ 0xbfe2818bef4d3cba, 0xbfea1b26d2c0a75e, // -0.57831, -0.81581
+ 0xbfe26d054cdd12df, 0xbfea29a7a0462782, // -0.57581, -0.81758
+ 0xbfe258734cbb7110, 0xbfea38184a593bc6, // -0.5733, -0.81935
+ 0xbfe243d5fb98ac1f, 0xbfea4678c8119ac8, // -0.57078, -0.8211
+ 0xbfe22f2d662c13e1, 0xbfea54c91090f524, // -0.56826, -0.82285
+ 0xbfe21a799933eb58, 0xbfea63091b02fae2, // -0.56573, -0.82459
+ 0xbfe205baa17560d6, 0xbfea7138de9d60f5, // -0.5632, -0.82632
+ 0xbfe1f0f08bbc861b, 0xbfea7f58529fe69d, // -0.56066, -0.82805
+ 0xbfe1dc1b64dc4872, 0xbfea8d676e545ad2, // -0.55812, -0.82976
+ 0xbfe1c73b39ae68c8, 0xbfea9b66290ea1a3, // -0.55557, -0.83147
+ 0xbfe1b250171373be, 0xbfeaa9547a2cb98e, // -0.55302, -0.83317
+ 0xbfe19d5a09f2b9b8, 0xbfeab7325916c0d4, // -0.55046, -0.83486
+ 0xbfe188591f3a46e5, 0xbfeac4ffbd3efac8, // -0.54789, -0.83655
+ 0xbfe1734d63dedb49, 0xbfead2bc9e21d511, // -0.54532, -0.83822
+ 0xbfe15e36e4dbe2bc, 0xbfeae068f345ecef, // -0.54275, -0.83989
+ 0xbfe14915af336ceb, 0xbfeaee04b43c1474, // -0.54017, -0.84155
+ 0xbfe133e9cfee254e, 0xbfeafb8fd89f57b6, // -0.53759, -0.84321
+ 0xbfe11eb3541b4b22, 0xbfeb090a58150200, // -0.535, -0.84485
+ 0xbfe1097248d0a956, 0xbfeb16742a4ca2f5, // -0.5324, -0.84649
+ 0xbfe0f426bb2a8e7d, 0xbfeb23cd470013b4, // -0.5298, -0.84812
+ 0xbfe0ded0b84bc4b5, 0xbfeb3115a5f37bf4, // -0.5272, -0.84974
+ 0xbfe0c9704d5d898f, 0xbfeb3e4d3ef55712, // -0.52459, -0.85136
+ 0xbfe0b405878f85ec, 0xbfeb4b7409de7925, // -0.52198, -0.85296
+ 0xbfe09e907417c5e1, 0xbfeb5889fe921405, // -0.51936, -0.85456
+ 0xbfe089112032b08c, 0xbfeb658f14fdbc47, // -0.51673, -0.85615
+ 0xbfe073879922ffed, 0xbfeb728345196e3e, // -0.5141, -0.85773
+ 0xbfe05df3ec31b8b6, 0xbfeb7f6686e792ea, // -0.51147, -0.8593
+ 0xbfe0485626ae221a, 0xbfeb8c38d27504e9, // -0.50883, -0.86087
+ 0xbfe032ae55edbd95, 0xbfeb98fa1fd9155e, // -0.50619, -0.86242
+ 0xbfe01cfc874c3eb7, 0xbfeba5aa673590d2, // -0.50354, -0.86397
+ 0xbfe00740c82b82e0, 0xbfebb249a0b6c40d, // -0.50089, -0.86551
+ 0xbfdfe2f64be7120f, 0xbfebbed7c49380ea, // -0.49823, -0.86705
+ 0xbfdfb7575c24d2de, 0xbfebcb54cb0d2327, // -0.49557, -0.86857
+ 0xbfdf8ba4dbf89aba, 0xbfebd7c0ac6f952a, // -0.4929, -0.87009
+ 0xbfdf5fdee656cda3, 0xbfebe41b611154c1, // -0.49023, -0.8716
+ 0xbfdf3405963fd068, 0xbfebf064e15377dd, // -0.48755, -0.87309
+ 0xbfdf081906bff7fd, 0xbfebfc9d25a1b147, // -0.48487, -0.87459
+ 0xbfdedc1952ef78d5, 0xbfec08c426725549, // -0.48218, -0.87607
+ 0xbfdeb00695f25620, 0xbfec14d9dc465e58, // -0.47949, -0.87755
+ 0xbfde83e0eaf85113, 0xbfec20de3fa971b0, // -0.4768, -0.87901
+ 0xbfde57a86d3cd824, 0xbfec2cd14931e3f1, // -0.4741, -0.88047
+ 0xbfde2b5d3806f63b, 0xbfec38b2f180bdb1, // -0.4714, -0.88192
+ 0xbfddfeff66a941de, 0xbfec44833141c004, // -0.46869, -0.88336
+ 0xbfddd28f1481cc58, 0xbfec5042012b6907, // -0.46598, -0.8848
+ 0xbfdda60c5cfa10d8, 0xbfec5bef59fef85a, // -0.46326, -0.88622
+ 0xbfdd79775b86e389, 0xbfec678b3488739b, // -0.46054, -0.88764
+ 0xbfdd4cd02ba8609c, 0xbfec7315899eaad7, // -0.45781, -0.88905
+ 0xbfdd2016e8e9db5b, 0xbfec7e8e52233cf3, // -0.45508, -0.89045
+ 0xbfdcf34baee1cd21, 0xbfec89f587029c13, // -0.45235, -0.89184
+ 0xbfdcc66e9931c45d, 0xbfec954b213411f5, // -0.44961, -0.89322
+ 0xbfdc997fc3865388, 0xbfeca08f19b9c449, // -0.44687, -0.8946
+ 0xbfdc6c7f4997000a, 0xbfecabc169a0b901, // -0.44412, -0.89597
+ 0xbfdc3f6d47263129, 0xbfecb6e20a00da99, // -0.44137, -0.89732
+ 0xbfdc1249d8011ee7, 0xbfecc1f0f3fcfc5c, // -0.43862, -0.89867
+ 0xbfdbe51517ffc0d9, 0xbfecccee20c2de9f, // -0.43586, -0.90002
+ 0xbfdbb7cf2304bd01, 0xbfecd7d9898b32f6, // -0.43309, -0.90135
+ 0xbfdb8a7814fd5693, 0xbfece2b32799a060, // -0.43033, -0.90267
+ 0xbfdb5d1009e15cc0, 0xbfeced7af43cc773, // -0.42756, -0.90399
+ 0xbfdb2f971db31972, 0xbfecf830e8ce467b, // -0.42478, -0.9053
+ 0xbfdb020d6c7f4009, 0xbfed02d4feb2bd92, // -0.422, -0.9066
+ 0xbfdad473125cdc08, 0xbfed0d672f59d2b9, // -0.41922, -0.90789
+ 0xbfdaa6c82b6d3fc9, 0xbfed17e7743e35dc, // -0.41643, -0.90917
+ 0xbfda790cd3dbf31a, 0xbfed2255c6e5a4e1, // -0.41364, -0.91044
+ 0xbfda4b4127dea1e4, 0xbfed2cb220e0ef9f, // -0.41084, -0.91171
+ 0xbfda1d6543b50ac0, 0xbfed36fc7bcbfbdc, // -0.40804, -0.91296
+ 0xbfd9ef7943a8ed8a, 0xbfed4134d14dc93a, // -0.40524, -0.91421
+ 0xbfd9c17d440df9f2, 0xbfed4b5b1b187524, // -0.40243, -0.91545
+ 0xbfd993716141bdfe, 0xbfed556f52e93eb1, // -0.39962, -0.91668
+ 0xbfd96555b7ab948f, 0xbfed5f7172888a7f, // -0.39681, -0.9179
+ 0xbfd9372a63bc93d7, 0xbfed696173c9e68b, // -0.39399, -0.91911
+ 0xbfd908ef81ef7bd1, 0xbfed733f508c0dff, // -0.39117, -0.92032
+ 0xbfd8daa52ec8a4af, 0xbfed7d0b02b8ecf9, // -0.38835, -0.92151
+ 0xbfd8ac4b86d5ed44, 0xbfed86c48445a450, // -0.38552, -0.9227
+ 0xbfd87de2a6aea963, 0xbfed906bcf328d46, // -0.38268, -0.92388
+ 0xbfd84f6aaaf3903f, 0xbfed9a00dd8b3d46, // -0.37985, -0.92505
+ 0xbfd820e3b04eaac4, 0xbfeda383a9668988, // -0.37701, -0.92621
+ 0xbfd7f24dd37341e3, 0xbfedacf42ce68ab9, // -0.37416, -0.92736
+ 0xbfd7c3a9311dcce7, 0xbfedb6526238a09b, // -0.37132, -0.92851
+ 0xbfd794f5e613dfae, 0xbfedbf9e4395759a, // -0.36847, -0.92964
+ 0xbfd766340f2418f6, 0xbfedc8d7cb410260, // -0.36561, -0.93077
+ 0xbfd73763c9261092, 0xbfedd1fef38a915a, // -0.36276, -0.93188
+ 0xbfd7088530fa459e, 0xbfeddb13b6ccc23d, // -0.3599, -0.93299
+ 0xbfd6d998638a0cb5, 0xbfede4160f6d8d81, // -0.35703, -0.93409
+ 0xbfd6aa9d7dc77e16, 0xbfeded05f7de47da, // -0.35416, -0.93518
+ 0xbfd67b949cad63ca, 0xbfedf5e36a9ba59c, // -0.35129, -0.93627
+ 0xbfd64c7ddd3f27c6, 0xbfedfeae622dbe2b, // -0.34842, -0.93734
+ 0xbfd61d595c88c203, 0xbfee0766d9280f54, // -0.34554, -0.9384
+ 0xbfd5ee27379ea693, 0xbfee100cca2980ac, // -0.34266, -0.93946
+ 0xbfd5bee78b9db3b6, 0xbfee18a02fdc66d9, // -0.33978, -0.94051
+ 0xbfd58f9a75ab1fdd, 0xbfee212104f686e5, // -0.33689, -0.94154
+ 0xbfd5604012f467b4, 0xbfee298f4439197a, // -0.334, -0.94257
+ 0xbfd530d880af3c24, 0xbfee31eae870ce25, // -0.33111, -0.94359
+ 0xbfd50163dc197047, 0xbfee3a33ec75ce85, // -0.32821, -0.9446
+ 0xbfd4d1e24278e76a, 0xbfee426a4b2bc17e, // -0.32531, -0.94561
+ 0xbfd4a253d11b82f3, 0xbfee4a8dff81ce5e, // -0.32241, -0.9466
+ 0xbfd472b8a5571054, 0xbfee529f04729ffc, // -0.3195, -0.94759
+ 0xbfd44310dc8936f0, 0xbfee5a9d550467d3, // -0.31659, -0.94856
+ 0xbfd4135c94176602, 0xbfee6288ec48e112, // -0.31368, -0.94953
+ 0xbfd3e39be96ec271, 0xbfee6a61c55d53a7, // -0.31077, -0.95049
+ 0xbfd3b3cefa0414b7, 0xbfee7227db6a9744, // -0.30785, -0.95144
+ 0xbfd383f5e353b6aa, 0xbfee79db29a5165a, // -0.30493, -0.95238
+ 0xbfd35410c2e18152, 0xbfee817bab4cd10d, // -0.30201, -0.95331
+ 0xbfd3241fb638baaf, 0xbfee89095bad6025, // -0.29908, -0.95423
+ 0xbfd2f422daec0386, 0xbfee9084361df7f3, // -0.29615, -0.95514
+ 0xbfd2c41a4e954520, 0xbfee97ec36016b30, // -0.29322, -0.95605
+ 0xbfd294062ed59f05, 0xbfee9f4156c62dda, // -0.29028, -0.95694
+ 0xbfd263e6995554ba, 0xbfeea68393e65800, // -0.28735, -0.95783
+ 0xbfd233bbabc3bb72, 0xbfeeadb2e8e7a88e, // -0.28441, -0.9587
+ 0xbfd2038583d727bd, 0xbfeeb4cf515b8811, // -0.28146, -0.95957
+ 0xbfd1d3443f4cdb3d, 0xbfeebbd8c8df0b74, // -0.27852, -0.96043
+ 0xbfd1a2f7fbe8f243, 0xbfeec2cf4b1af6b2, // -0.27557, -0.96128
+ 0xbfd172a0d7765177, 0xbfeec9b2d3c3bf84, // -0.27262, -0.96212
+ 0xbfd1423eefc69378, 0xbfeed0835e999009, // -0.26967, -0.96295
+ 0xbfd111d262b1f677, 0xbfeed740e7684963, // -0.26671, -0.96378
+ 0xbfd0e15b4e1749cd, 0xbfeeddeb6a078651, // -0.26375, -0.96459
+ 0xbfd0b0d9cfdbdb90, 0xbfeee482e25a9dbc, // -0.26079, -0.96539
+ 0xbfd0804e05eb661e, 0xbfeeeb074c50a544, // -0.25783, -0.96619
+ 0xbfd04fb80e37fdae, 0xbfeef178a3e473c2, // -0.25487, -0.96698
+ 0xbfd01f1806b9fdd2, 0xbfeef7d6e51ca3c0, // -0.2519, -0.96775
+ 0xbfcfdcdc1adfedf8, 0xbfeefe220c0b95ec, // -0.24893, -0.96852
+ 0xbfcf7b7480bd3801, 0xbfef045a14cf738c, // -0.24596, -0.96928
+ 0xbfcf19f97b215f1a, 0xbfef0a7efb9230d7, // -0.24298, -0.97003
+ 0xbfceb86b462de348, 0xbfef1090bc898f5f, // -0.24, -0.97077
+ 0xbfce56ca1e101a1b, 0xbfef168f53f7205d, // -0.23702, -0.9715
+ 0xbfcdf5163f01099a, 0xbfef1c7abe284708, // -0.23404, -0.97223
+ 0xbfcd934fe5454311, 0xbfef2252f7763ada, // -0.23106, -0.97294
+ 0xbfcd31774d2cbdee, 0xbfef2817fc4609ce, // -0.22807, -0.97364
+ 0xbfcccf8cb312b286, 0xbfef2dc9c9089a9d, // -0.22508, -0.97434
+ 0xbfcc6d90535d74dc, 0xbfef33685a3aaef0, // -0.22209, -0.97503
+ 0xbfcc0b826a7e4f63, 0xbfef38f3ac64e589, // -0.2191, -0.9757
+ 0xbfcba96334f15dad, 0xbfef3e6bbc1bbc65, // -0.21611, -0.97637
+ 0xbfcb4732ef3d6722, 0xbfef43d085ff92dd, // -0.21311, -0.97703
+ 0xbfcae4f1d5f3b9ab, 0xbfef492206bcabb4, // -0.21011, -0.97768
+ 0xbfca82a025b00451, 0xbfef4e603b0b2f2d, // -0.20711, -0.97832
+ 0xbfca203e1b1831da, 0xbfef538b1faf2d07, // -0.20411, -0.97895
+ 0xbfc9bdcbf2dc4366, 0xbfef58a2b1789e84, // -0.2011, -0.97957
+ 0xbfc95b49e9b62af9, 0xbfef5da6ed43685d, // -0.1981, -0.98018
+ 0xbfc8f8b83c69a60a, 0xbfef6297cff75cb0, // -0.19509, -0.98079
+ 0xbfc8961727c41804, 0xbfef677556883cee, // -0.19208, -0.98138
+ 0xbfc83366e89c64c5, 0xbfef6c3f7df5bbb7, // -0.18907, -0.98196
+ 0xbfc7d0a7bbd2cb1b, 0xbfef70f6434b7eb7, // -0.18606, -0.98254
+ 0xbfc76dd9de50bf31, 0xbfef7599a3a12077, // -0.18304, -0.98311
+ 0xbfc70afd8d08c4ff, 0xbfef7a299c1a322a, // -0.18002, -0.98366
+ 0xbfc6a81304f64ab2, 0xbfef7ea629e63d6e, // -0.177, -0.98421
+ 0xbfc6451a831d830d, 0xbfef830f4a40c60c, // -0.17398, -0.98475
+ 0xbfc5e214448b3fc6, 0xbfef8764fa714ba9, // -0.17096, -0.98528
+ 0xbfc57f008654cbde, 0xbfef8ba737cb4b78, // -0.16794, -0.9858
+ 0xbfc51bdf8597c5f2, 0xbfef8fd5ffae41db, // -0.16491, -0.98631
+ 0xbfc4b8b17f79fa88, 0xbfef93f14f85ac08, // -0.16189, -0.98681
+ 0xbfc45576b1293e5a, 0xbfef97f924c9099b, // -0.15886, -0.9873
+ 0xbfc3f22f57db4893, 0xbfef9bed7cfbde29, // -0.15583, -0.98778
+ 0xbfc38edbb0cd8d14, 0xbfef9fce55adb2c8, // -0.1528, -0.98826
+ 0xbfc32b7bf94516a7, 0xbfefa39bac7a1791, // -0.14976, -0.98872
+ 0xbfc2c8106e8e613a, 0xbfefa7557f08a517, // -0.14673, -0.98918
+ 0xbfc264994dfd340a, 0xbfefaafbcb0cfddc, // -0.1437, -0.98962
+ 0xbfc20116d4ec7bce, 0xbfefae8e8e46cfbb, // -0.14066, -0.99006
+ 0xbfc19d8940be24e7, 0xbfefb20dc681d54d, // -0.13762, -0.99049
+ 0xbfc139f0cedaf576, 0xbfefb5797195d741, // -0.13458, -0.9909
+ 0xbfc0d64dbcb26786, 0xbfefb8d18d66adb7, // -0.13154, -0.99131
+ 0xbfc072a047ba831d, 0xbfefbc1617e44186, // -0.1285, -0.99171
+ 0xbfc00ee8ad6fb85b, 0xbfefbf470f0a8d88, // -0.12545, -0.9921
+ 0xbfbf564e56a9730e, 0xbfefc26470e19fd3, // -0.12241, -0.99248
+ 0xbfbe8eb7fde4aa3e, 0xbfefc56e3b7d9af6, // -0.11937, -0.99285
+ 0xbfbdc70ecbae9fc8, 0xbfefc8646cfeb721, // -0.11632, -0.99321
+ 0xbfbcff533b307dc1, 0xbfefcb4703914354, // -0.11327, -0.99356
+ 0xbfbc3785c79ec2d5, 0xbfefce15fd6da67b, // -0.11022, -0.99391
+ 0xbfbb6fa6ec38f64c, 0xbfefd0d158d86087, // -0.10717, -0.99424
+ 0xbfbaa7b724495c04, 0xbfefd37914220b84, // -0.10412, -0.99456
+ 0xbfb9dfb6eb24a85c, 0xbfefd60d2da75c9e, // -0.10107, -0.99488
+ 0xbfb917a6bc29b42c, 0xbfefd88da3d12526, // -0.098017, -0.99518
+ 0xbfb84f8712c130a0, 0xbfefdafa7514538c, // -0.094963, -0.99548
+ 0xbfb787586a5d5b21, 0xbfefdd539ff1f456, // -0.091909, -0.99577
+ 0xbfb6bf1b3e79b129, 0xbfefdf9922f73307, // -0.088854, -0.99604
+ 0xbfb5f6d00a9aa419, 0xbfefe1cafcbd5b09, // -0.085797, -0.99631
+ 0xbfb52e774a4d4d0a, 0xbfefe3e92be9d886, // -0.08274, -0.99657
+ 0xbfb4661179272096, 0xbfefe5f3af2e3940, // -0.079682, -0.99682
+ 0xbfb39d9f12c5a299, 0xbfefe7ea85482d60, // -0.076624, -0.99706
+ 0xbfb2d52092ce19f6, 0xbfefe9cdad01883a, // -0.073565, -0.99729
+ 0xbfb20c9674ed444c, 0xbfefeb9d2530410f, // -0.070505, -0.99751
+ 0xbfb1440134d709b2, 0xbfefed58ecb673c4, // -0.067444, -0.99772
+ 0xbfb07b614e463064, 0xbfefef0102826191, // -0.064383, -0.99793
+ 0xbfaf656e79f820e0, 0xbfeff095658e71ad, // -0.061321, -0.99812
+ 0xbfadd406f9808ec8, 0xbfeff21614e131ed, // -0.058258, -0.9983
+ 0xbfac428d12c0d7e3, 0xbfeff3830f8d575c, // -0.055195, -0.99848
+ 0xbfaab101bd5f8317, 0xbfeff4dc54b1bed3, // -0.052132, -0.99864
+ 0xbfa91f65f10dd814, 0xbfeff621e3796d7e, // -0.049068, -0.9988
+ 0xbfa78dbaa5874685, 0xbfeff753bb1b9164, // -0.046003, -0.99894
+ 0xbfa5fc00d290cd43, 0xbfeff871dadb81df, // -0.042938, -0.99908
+ 0xbfa46a396ff86179, 0xbfeff97c4208c014, // -0.039873, -0.9992
+ 0xbfa2d865759455cd, 0xbfeffa72effef75d, // -0.036807, -0.99932
+ 0xbfa14685db42c17e, 0xbfeffb55e425fdae, // -0.033741, -0.99943
+ 0xbf9f693731d1cf01, 0xbfeffc251df1d3f8, // -0.030675, -0.99953
+ 0xbf9c454f4ce53b1c, 0xbfeffce09ce2a679, // -0.027608, -0.99962
+ 0xbf992155f7a3667e, 0xbfeffd886084cd0d, // -0.024541, -0.9997
+ 0xbf95fd4d21fab226, 0xbfeffe1c6870cb77, // -0.021474, -0.99977
+ 0xbf92d936bbe30efd, 0xbfeffe9cb44b51a1, // -0.018407, -0.99983
+ 0xbf8f6a296ab997ca, 0xbfefff0943c53bd1, // -0.015339, -0.99988
+ 0xbf8921d1fcdec784, 0xbfefff62169b92db, // -0.012272, -0.99992
+ 0xbf82d96b0e509703, 0xbfefffa72c978c4f, //-0.0092038, -0.99996
+ 0xbf7921f0fe670071, 0xbfefffd8858e8a92, //-0.0061359, -0.99998
+ 0xbf6921f8becca4ba, 0xbfeffff621621d02, // -0.003068, -1
+ 0x0000000000000000, 0xbff0000000000000, // 0, -1
+ 0x3f6921f8becca4ba, 0xbfeffff621621d02, // 0.003068, -1
+ 0x3f7921f0fe670071, 0xbfefffd8858e8a92, // 0.0061359, -0.99998
+ 0x3f82d96b0e509703, 0xbfefffa72c978c4f, // 0.0092038, -0.99996
+ 0x3f8921d1fcdec784, 0xbfefff62169b92db, // 0.012272, -0.99992
+ 0x3f8f6a296ab997ca, 0xbfefff0943c53bd1, // 0.015339, -0.99988
+ 0x3f92d936bbe30efd, 0xbfeffe9cb44b51a1, // 0.018407, -0.99983
+ 0x3f95fd4d21fab226, 0xbfeffe1c6870cb77, // 0.021474, -0.99977
+ 0x3f992155f7a3667e, 0xbfeffd886084cd0d, // 0.024541, -0.9997
+ 0x3f9c454f4ce53b1c, 0xbfeffce09ce2a679, // 0.027608, -0.99962
+ 0x3f9f693731d1cf01, 0xbfeffc251df1d3f8, // 0.030675, -0.99953
+ 0x3fa14685db42c17e, 0xbfeffb55e425fdae, // 0.033741, -0.99943
+ 0x3fa2d865759455cd, 0xbfeffa72effef75d, // 0.036807, -0.99932
+ 0x3fa46a396ff86179, 0xbfeff97c4208c014, // 0.039873, -0.9992
+ 0x3fa5fc00d290cd43, 0xbfeff871dadb81df, // 0.042938, -0.99908
+ 0x3fa78dbaa5874685, 0xbfeff753bb1b9164, // 0.046003, -0.99894
+ 0x3fa91f65f10dd814, 0xbfeff621e3796d7e, // 0.049068, -0.9988
+ 0x3faab101bd5f8317, 0xbfeff4dc54b1bed3, // 0.052132, -0.99864
+ 0x3fac428d12c0d7e3, 0xbfeff3830f8d575c, // 0.055195, -0.99848
+ 0x3fadd406f9808ec8, 0xbfeff21614e131ed, // 0.058258, -0.9983
+ 0x3faf656e79f820e0, 0xbfeff095658e71ad, // 0.061321, -0.99812
+ 0x3fb07b614e463064, 0xbfefef0102826191, // 0.064383, -0.99793
+ 0x3fb1440134d709b2, 0xbfefed58ecb673c4, // 0.067444, -0.99772
+ 0x3fb20c9674ed444c, 0xbfefeb9d2530410f, // 0.070505, -0.99751
+ 0x3fb2d52092ce19f6, 0xbfefe9cdad01883a, // 0.073565, -0.99729
+ 0x3fb39d9f12c5a299, 0xbfefe7ea85482d60, // 0.076624, -0.99706
+ 0x3fb4661179272096, 0xbfefe5f3af2e3940, // 0.079682, -0.99682
+ 0x3fb52e774a4d4d0a, 0xbfefe3e92be9d886, // 0.08274, -0.99657
+ 0x3fb5f6d00a9aa419, 0xbfefe1cafcbd5b09, // 0.085797, -0.99631
+ 0x3fb6bf1b3e79b129, 0xbfefdf9922f73307, // 0.088854, -0.99604
+ 0x3fb787586a5d5b21, 0xbfefdd539ff1f456, // 0.091909, -0.99577
+ 0x3fb84f8712c130a0, 0xbfefdafa7514538c, // 0.094963, -0.99548
+ 0x3fb917a6bc29b42c, 0xbfefd88da3d12526, // 0.098017, -0.99518
+ 0x3fb9dfb6eb24a85c, 0xbfefd60d2da75c9e, // 0.10107, -0.99488
+ 0x3fbaa7b724495c04, 0xbfefd37914220b84, // 0.10412, -0.99456
+ 0x3fbb6fa6ec38f64c, 0xbfefd0d158d86087, // 0.10717, -0.99424
+ 0x3fbc3785c79ec2d5, 0xbfefce15fd6da67b, // 0.11022, -0.99391
+ 0x3fbcff533b307dc1, 0xbfefcb4703914354, // 0.11327, -0.99356
+ 0x3fbdc70ecbae9fc8, 0xbfefc8646cfeb721, // 0.11632, -0.99321
+ 0x3fbe8eb7fde4aa3e, 0xbfefc56e3b7d9af6, // 0.11937, -0.99285
+ 0x3fbf564e56a9730e, 0xbfefc26470e19fd3, // 0.12241, -0.99248
+ 0x3fc00ee8ad6fb85b, 0xbfefbf470f0a8d88, // 0.12545, -0.9921
+ 0x3fc072a047ba831d, 0xbfefbc1617e44186, // 0.1285, -0.99171
+ 0x3fc0d64dbcb26786, 0xbfefb8d18d66adb7, // 0.13154, -0.99131
+ 0x3fc139f0cedaf576, 0xbfefb5797195d741, // 0.13458, -0.9909
+ 0x3fc19d8940be24e7, 0xbfefb20dc681d54d, // 0.13762, -0.99049
+ 0x3fc20116d4ec7bce, 0xbfefae8e8e46cfbb, // 0.14066, -0.99006
+ 0x3fc264994dfd340a, 0xbfefaafbcb0cfddc, // 0.1437, -0.98962
+ 0x3fc2c8106e8e613a, 0xbfefa7557f08a517, // 0.14673, -0.98918
+ 0x3fc32b7bf94516a7, 0xbfefa39bac7a1791, // 0.14976, -0.98872
+ 0x3fc38edbb0cd8d14, 0xbfef9fce55adb2c8, // 0.1528, -0.98826
+ 0x3fc3f22f57db4893, 0xbfef9bed7cfbde29, // 0.15583, -0.98778
+ 0x3fc45576b1293e5a, 0xbfef97f924c9099b, // 0.15886, -0.9873
+ 0x3fc4b8b17f79fa88, 0xbfef93f14f85ac08, // 0.16189, -0.98681
+ 0x3fc51bdf8597c5f2, 0xbfef8fd5ffae41db, // 0.16491, -0.98631
+ 0x3fc57f008654cbde, 0xbfef8ba737cb4b78, // 0.16794, -0.9858
+ 0x3fc5e214448b3fc6, 0xbfef8764fa714ba9, // 0.17096, -0.98528
+ 0x3fc6451a831d830d, 0xbfef830f4a40c60c, // 0.17398, -0.98475
+ 0x3fc6a81304f64ab2, 0xbfef7ea629e63d6e, // 0.177, -0.98421
+ 0x3fc70afd8d08c4ff, 0xbfef7a299c1a322a, // 0.18002, -0.98366
+ 0x3fc76dd9de50bf31, 0xbfef7599a3a12077, // 0.18304, -0.98311
+ 0x3fc7d0a7bbd2cb1b, 0xbfef70f6434b7eb7, // 0.18606, -0.98254
+ 0x3fc83366e89c64c5, 0xbfef6c3f7df5bbb7, // 0.18907, -0.98196
+ 0x3fc8961727c41804, 0xbfef677556883cee, // 0.19208, -0.98138
+ 0x3fc8f8b83c69a60a, 0xbfef6297cff75cb0, // 0.19509, -0.98079
+ 0x3fc95b49e9b62af9, 0xbfef5da6ed43685d, // 0.1981, -0.98018
+ 0x3fc9bdcbf2dc4366, 0xbfef58a2b1789e84, // 0.2011, -0.97957
+ 0x3fca203e1b1831da, 0xbfef538b1faf2d07, // 0.20411, -0.97895
+ 0x3fca82a025b00451, 0xbfef4e603b0b2f2d, // 0.20711, -0.97832
+ 0x3fcae4f1d5f3b9ab, 0xbfef492206bcabb4, // 0.21011, -0.97768
+ 0x3fcb4732ef3d6722, 0xbfef43d085ff92dd, // 0.21311, -0.97703
+ 0x3fcba96334f15dad, 0xbfef3e6bbc1bbc65, // 0.21611, -0.97637
+ 0x3fcc0b826a7e4f63, 0xbfef38f3ac64e589, // 0.2191, -0.9757
+ 0x3fcc6d90535d74dc, 0xbfef33685a3aaef0, // 0.22209, -0.97503
+ 0x3fcccf8cb312b286, 0xbfef2dc9c9089a9d, // 0.22508, -0.97434
+ 0x3fcd31774d2cbdee, 0xbfef2817fc4609ce, // 0.22807, -0.97364
+ 0x3fcd934fe5454311, 0xbfef2252f7763ada, // 0.23106, -0.97294
+ 0x3fcdf5163f01099a, 0xbfef1c7abe284708, // 0.23404, -0.97223
+ 0x3fce56ca1e101a1b, 0xbfef168f53f7205d, // 0.23702, -0.9715
+ 0x3fceb86b462de348, 0xbfef1090bc898f5f, // 0.24, -0.97077
+ 0x3fcf19f97b215f1a, 0xbfef0a7efb9230d7, // 0.24298, -0.97003
+ 0x3fcf7b7480bd3801, 0xbfef045a14cf738c, // 0.24596, -0.96928
+ 0x3fcfdcdc1adfedf8, 0xbfeefe220c0b95ec, // 0.24893, -0.96852
+ 0x3fd01f1806b9fdd2, 0xbfeef7d6e51ca3c0, // 0.2519, -0.96775
+ 0x3fd04fb80e37fdae, 0xbfeef178a3e473c2, // 0.25487, -0.96698
+ 0x3fd0804e05eb661e, 0xbfeeeb074c50a544, // 0.25783, -0.96619
+ 0x3fd0b0d9cfdbdb90, 0xbfeee482e25a9dbc, // 0.26079, -0.96539
+ 0x3fd0e15b4e1749cd, 0xbfeeddeb6a078651, // 0.26375, -0.96459
+ 0x3fd111d262b1f677, 0xbfeed740e7684963, // 0.26671, -0.96378
+ 0x3fd1423eefc69378, 0xbfeed0835e999009, // 0.26967, -0.96295
+ 0x3fd172a0d7765177, 0xbfeec9b2d3c3bf84, // 0.27262, -0.96212
+ 0x3fd1a2f7fbe8f243, 0xbfeec2cf4b1af6b2, // 0.27557, -0.96128
+ 0x3fd1d3443f4cdb3d, 0xbfeebbd8c8df0b74, // 0.27852, -0.96043
+ 0x3fd2038583d727bd, 0xbfeeb4cf515b8811, // 0.28146, -0.95957
+ 0x3fd233bbabc3bb72, 0xbfeeadb2e8e7a88e, // 0.28441, -0.9587
+ 0x3fd263e6995554ba, 0xbfeea68393e65800, // 0.28735, -0.95783
+ 0x3fd294062ed59f05, 0xbfee9f4156c62dda, // 0.29028, -0.95694
+ 0x3fd2c41a4e954520, 0xbfee97ec36016b30, // 0.29322, -0.95605
+ 0x3fd2f422daec0386, 0xbfee9084361df7f3, // 0.29615, -0.95514
+ 0x3fd3241fb638baaf, 0xbfee89095bad6025, // 0.29908, -0.95423
+ 0x3fd35410c2e18152, 0xbfee817bab4cd10d, // 0.30201, -0.95331
+ 0x3fd383f5e353b6aa, 0xbfee79db29a5165a, // 0.30493, -0.95238
+ 0x3fd3b3cefa0414b7, 0xbfee7227db6a9744, // 0.30785, -0.95144
+ 0x3fd3e39be96ec271, 0xbfee6a61c55d53a7, // 0.31077, -0.95049
+ 0x3fd4135c94176602, 0xbfee6288ec48e112, // 0.31368, -0.94953
+ 0x3fd44310dc8936f0, 0xbfee5a9d550467d3, // 0.31659, -0.94856
+ 0x3fd472b8a5571054, 0xbfee529f04729ffc, // 0.3195, -0.94759
+ 0x3fd4a253d11b82f3, 0xbfee4a8dff81ce5e, // 0.32241, -0.9466
+ 0x3fd4d1e24278e76a, 0xbfee426a4b2bc17e, // 0.32531, -0.94561
+ 0x3fd50163dc197047, 0xbfee3a33ec75ce85, // 0.32821, -0.9446
+ 0x3fd530d880af3c24, 0xbfee31eae870ce25, // 0.33111, -0.94359
+ 0x3fd5604012f467b4, 0xbfee298f4439197a, // 0.334, -0.94257
+ 0x3fd58f9a75ab1fdd, 0xbfee212104f686e5, // 0.33689, -0.94154
+ 0x3fd5bee78b9db3b6, 0xbfee18a02fdc66d9, // 0.33978, -0.94051
+ 0x3fd5ee27379ea693, 0xbfee100cca2980ac, // 0.34266, -0.93946
+ 0x3fd61d595c88c203, 0xbfee0766d9280f54, // 0.34554, -0.9384
+ 0x3fd64c7ddd3f27c6, 0xbfedfeae622dbe2b, // 0.34842, -0.93734
+ 0x3fd67b949cad63ca, 0xbfedf5e36a9ba59c, // 0.35129, -0.93627
+ 0x3fd6aa9d7dc77e16, 0xbfeded05f7de47da, // 0.35416, -0.93518
+ 0x3fd6d998638a0cb5, 0xbfede4160f6d8d81, // 0.35703, -0.93409
+ 0x3fd7088530fa459e, 0xbfeddb13b6ccc23d, // 0.3599, -0.93299
+ 0x3fd73763c9261092, 0xbfedd1fef38a915a, // 0.36276, -0.93188
+ 0x3fd766340f2418f6, 0xbfedc8d7cb410260, // 0.36561, -0.93077
+ 0x3fd794f5e613dfae, 0xbfedbf9e4395759a, // 0.36847, -0.92964
+ 0x3fd7c3a9311dcce7, 0xbfedb6526238a09b, // 0.37132, -0.92851
+ 0x3fd7f24dd37341e3, 0xbfedacf42ce68ab9, // 0.37416, -0.92736
+ 0x3fd820e3b04eaac4, 0xbfeda383a9668988, // 0.37701, -0.92621
+ 0x3fd84f6aaaf3903f, 0xbfed9a00dd8b3d46, // 0.37985, -0.92505
+ 0x3fd87de2a6aea963, 0xbfed906bcf328d46, // 0.38268, -0.92388
+ 0x3fd8ac4b86d5ed44, 0xbfed86c48445a450, // 0.38552, -0.9227
+ 0x3fd8daa52ec8a4af, 0xbfed7d0b02b8ecf9, // 0.38835, -0.92151
+ 0x3fd908ef81ef7bd1, 0xbfed733f508c0dff, // 0.39117, -0.92032
+ 0x3fd9372a63bc93d7, 0xbfed696173c9e68b, // 0.39399, -0.91911
+ 0x3fd96555b7ab948f, 0xbfed5f7172888a7f, // 0.39681, -0.9179
+ 0x3fd993716141bdfe, 0xbfed556f52e93eb1, // 0.39962, -0.91668
+ 0x3fd9c17d440df9f2, 0xbfed4b5b1b187524, // 0.40243, -0.91545
+ 0x3fd9ef7943a8ed8a, 0xbfed4134d14dc93a, // 0.40524, -0.91421
+ 0x3fda1d6543b50ac0, 0xbfed36fc7bcbfbdc, // 0.40804, -0.91296
+ 0x3fda4b4127dea1e4, 0xbfed2cb220e0ef9f, // 0.41084, -0.91171
+ 0x3fda790cd3dbf31a, 0xbfed2255c6e5a4e1, // 0.41364, -0.91044
+ 0x3fdaa6c82b6d3fc9, 0xbfed17e7743e35dc, // 0.41643, -0.90917
+ 0x3fdad473125cdc08, 0xbfed0d672f59d2b9, // 0.41922, -0.90789
+ 0x3fdb020d6c7f4009, 0xbfed02d4feb2bd92, // 0.422, -0.9066
+ 0x3fdb2f971db31972, 0xbfecf830e8ce467b, // 0.42478, -0.9053
+ 0x3fdb5d1009e15cc0, 0xbfeced7af43cc773, // 0.42756, -0.90399
+ 0x3fdb8a7814fd5693, 0xbfece2b32799a060, // 0.43033, -0.90267
+ 0x3fdbb7cf2304bd01, 0xbfecd7d9898b32f6, // 0.43309, -0.90135
+ 0x3fdbe51517ffc0d9, 0xbfecccee20c2de9f, // 0.43586, -0.90002
+ 0x3fdc1249d8011ee7, 0xbfecc1f0f3fcfc5c, // 0.43862, -0.89867
+ 0x3fdc3f6d47263129, 0xbfecb6e20a00da99, // 0.44137, -0.89732
+ 0x3fdc6c7f4997000a, 0xbfecabc169a0b901, // 0.44412, -0.89597
+ 0x3fdc997fc3865388, 0xbfeca08f19b9c449, // 0.44687, -0.8946
+ 0x3fdcc66e9931c45d, 0xbfec954b213411f5, // 0.44961, -0.89322
+ 0x3fdcf34baee1cd21, 0xbfec89f587029c13, // 0.45235, -0.89184
+ 0x3fdd2016e8e9db5b, 0xbfec7e8e52233cf3, // 0.45508, -0.89045
+ 0x3fdd4cd02ba8609c, 0xbfec7315899eaad7, // 0.45781, -0.88905
+ 0x3fdd79775b86e389, 0xbfec678b3488739b, // 0.46054, -0.88764
+ 0x3fdda60c5cfa10d8, 0xbfec5bef59fef85a, // 0.46326, -0.88622
+ 0x3fddd28f1481cc58, 0xbfec5042012b6907, // 0.46598, -0.8848
+ 0x3fddfeff66a941de, 0xbfec44833141c004, // 0.46869, -0.88336
+ 0x3fde2b5d3806f63b, 0xbfec38b2f180bdb1, // 0.4714, -0.88192
+ 0x3fde57a86d3cd824, 0xbfec2cd14931e3f1, // 0.4741, -0.88047
+ 0x3fde83e0eaf85113, 0xbfec20de3fa971b0, // 0.4768, -0.87901
+ 0x3fdeb00695f25620, 0xbfec14d9dc465e58, // 0.47949, -0.87755
+ 0x3fdedc1952ef78d5, 0xbfec08c426725549, // 0.48218, -0.87607
+ 0x3fdf081906bff7fd, 0xbfebfc9d25a1b147, // 0.48487, -0.87459
+ 0x3fdf3405963fd068, 0xbfebf064e15377dd, // 0.48755, -0.87309
+ 0x3fdf5fdee656cda3, 0xbfebe41b611154c1, // 0.49023, -0.8716
+ 0x3fdf8ba4dbf89aba, 0xbfebd7c0ac6f952a, // 0.4929, -0.87009
+ 0x3fdfb7575c24d2de, 0xbfebcb54cb0d2327, // 0.49557, -0.86857
+ 0x3fdfe2f64be7120f, 0xbfebbed7c49380ea, // 0.49823, -0.86705
+ 0x3fe00740c82b82e0, 0xbfebb249a0b6c40d, // 0.50089, -0.86551
+ 0x3fe01cfc874c3eb7, 0xbfeba5aa673590d2, // 0.50354, -0.86397
+ 0x3fe032ae55edbd95, 0xbfeb98fa1fd9155e, // 0.50619, -0.86242
+ 0x3fe0485626ae221a, 0xbfeb8c38d27504e9, // 0.50883, -0.86087
+ 0x3fe05df3ec31b8b6, 0xbfeb7f6686e792ea, // 0.51147, -0.8593
+ 0x3fe073879922ffed, 0xbfeb728345196e3e, // 0.5141, -0.85773
+ 0x3fe089112032b08c, 0xbfeb658f14fdbc47, // 0.51673, -0.85615
+ 0x3fe09e907417c5e1, 0xbfeb5889fe921405, // 0.51936, -0.85456
+ 0x3fe0b405878f85ec, 0xbfeb4b7409de7925, // 0.52198, -0.85296
+ 0x3fe0c9704d5d898f, 0xbfeb3e4d3ef55712, // 0.52459, -0.85136
+ 0x3fe0ded0b84bc4b5, 0xbfeb3115a5f37bf4, // 0.5272, -0.84974
+ 0x3fe0f426bb2a8e7d, 0xbfeb23cd470013b4, // 0.5298, -0.84812
+ 0x3fe1097248d0a956, 0xbfeb16742a4ca2f5, // 0.5324, -0.84649
+ 0x3fe11eb3541b4b22, 0xbfeb090a58150200, // 0.535, -0.84485
+ 0x3fe133e9cfee254e, 0xbfeafb8fd89f57b6, // 0.53759, -0.84321
+ 0x3fe14915af336ceb, 0xbfeaee04b43c1474, // 0.54017, -0.84155
+ 0x3fe15e36e4dbe2bc, 0xbfeae068f345ecef, // 0.54275, -0.83989
+ 0x3fe1734d63dedb49, 0xbfead2bc9e21d511, // 0.54532, -0.83822
+ 0x3fe188591f3a46e5, 0xbfeac4ffbd3efac8, // 0.54789, -0.83655
+ 0x3fe19d5a09f2b9b8, 0xbfeab7325916c0d4, // 0.55046, -0.83486
+ 0x3fe1b250171373be, 0xbfeaa9547a2cb98e, // 0.55302, -0.83317
+ 0x3fe1c73b39ae68c8, 0xbfea9b66290ea1a3, // 0.55557, -0.83147
+ 0x3fe1dc1b64dc4872, 0xbfea8d676e545ad2, // 0.55812, -0.82976
+ 0x3fe1f0f08bbc861b, 0xbfea7f58529fe69d, // 0.56066, -0.82805
+ 0x3fe205baa17560d6, 0xbfea7138de9d60f5, // 0.5632, -0.82632
+ 0x3fe21a799933eb58, 0xbfea63091b02fae2, // 0.56573, -0.82459
+ 0x3fe22f2d662c13e1, 0xbfea54c91090f524, // 0.56826, -0.82285
+ 0x3fe243d5fb98ac1f, 0xbfea4678c8119ac8, // 0.57078, -0.8211
+ 0x3fe258734cbb7110, 0xbfea38184a593bc6, // 0.5733, -0.81935
+ 0x3fe26d054cdd12df, 0xbfea29a7a0462782, // 0.57581, -0.81758
+ 0x3fe2818bef4d3cba, 0xbfea1b26d2c0a75e, // 0.57831, -0.81581
+ 0x3fe2960727629ca8, 0xbfea0c95eabaf937, // 0.58081, -0.81404
+ 0x3fe2aa76e87aeb58, 0xbfe9fdf4f13149de, // 0.58331, -0.81225
+ 0x3fe2bedb25faf3ea, 0xbfe9ef43ef29af94, // 0.5858, -0.81046
+ 0x3fe2d333d34e9bb7, 0xbfe9e082edb42472, // 0.58828, -0.80866
+ 0x3fe2e780e3e8ea16, 0xbfe9d1b1f5ea80d6, // 0.59076, -0.80685
+ 0x3fe2fbc24b441015, 0xbfe9c2d110f075c3, // 0.59323, -0.80503
+ 0x3fe30ff7fce17035, 0xbfe9b3e047f38741, // 0.5957, -0.80321
+ 0x3fe32421ec49a620, 0xbfe9a4dfa42b06b2, // 0.59816, -0.80138
+ 0x3fe338400d0c8e57, 0xbfe995cf2ed80d22, // 0.60062, -0.79954
+ 0x3fe34c5252c14de1, 0xbfe986aef1457594, // 0.60307, -0.79769
+ 0x3fe36058b10659f3, 0xbfe9777ef4c7d742, // 0.60551, -0.79584
+ 0x3fe374531b817f8d, 0xbfe9683f42bd7fe1, // 0.60795, -0.79398
+ 0x3fe3884185dfeb22, 0xbfe958efe48e6dd7, // 0.61038, -0.79211
+ 0x3fe39c23e3d63029, 0xbfe94990e3ac4a6c, // 0.61281, -0.79023
+ 0x3fe3affa292050b9, 0xbfe93a22499263fc, // 0.61523, -0.78835
+ 0x3fe3c3c44981c517, 0xbfe92aa41fc5a815, // 0.61765, -0.78646
+ 0x3fe3d78238c58343, 0xbfe91b166fd49da2, // 0.62006, -0.78456
+ 0x3fe3eb33eabe0680, 0xbfe90b7943575efe, // 0.62246, -0.78265
+ 0x3fe3fed9534556d4, 0xbfe8fbcca3ef940d, // 0.62486, -0.78074
+ 0x3fe41272663d108c, 0xbfe8ec109b486c49, // 0.62725, -0.77882
+ 0x3fe425ff178e6bb1, 0xbfe8dc45331698cc, // 0.62964, -0.77689
+ 0x3fe4397f5b2a4380, 0xbfe8cc6a75184655, // 0.63202, -0.77495
+ 0x3fe44cf325091dd6, 0xbfe8bc806b151741, // 0.63439, -0.77301
+ 0x3fe4605a692b32a2, 0xbfe8ac871ede1d88, // 0.63676, -0.77106
+ 0x3fe473b51b987347, 0xbfe89c7e9a4dd4ab, // 0.63912, -0.7691
+ 0x3fe48703306091fe, 0xbfe88c66e7481ba1, // 0.64148, -0.76714
+ 0x3fe49a449b9b0938, 0xbfe87c400fba2ebf, // 0.64383, -0.76517
+ 0x3fe4ad79516722f0, 0xbfe86c0a1d9aa195, // 0.64618, -0.76319
+ 0x3fe4c0a145ec0004, 0xbfe85bc51ae958cc, // 0.64851, -0.7612
+ 0x3fe4d3bc6d589f80, 0xbfe84b7111af83f9, // 0.65085, -0.75921
+ 0x3fe4e6cabbe3e5e9, 0xbfe83b0e0bff976e, // 0.65317, -0.75721
+ 0x3fe4f9cc25cca486, 0xbfe82a9c13f545ff, // 0.65549, -0.7552
+ 0x3fe50cc09f59a09b, 0xbfe81a1b33b57acc, // 0.65781, -0.75319
+ 0x3fe51fa81cd99aa6, 0xbfe8098b756e52fa, // 0.66011, -0.75117
+ 0x3fe5328292a35596, 0xbfe7f8ece3571771, // 0.66242, -0.74914
+ 0x3fe5454ff5159dfb, 0xbfe7e83f87b03686, // 0.66471, -0.7471
+ 0x3fe5581038975137, 0xbfe7d7836cc33db2, // 0.667, -0.74506
+ 0x3fe56ac35197649e, 0xbfe7c6b89ce2d333, // 0.66928, -0.74301
+ 0x3fe57d69348cec9f, 0xbfe7b5df226aafb0, // 0.67156, -0.74095
+ 0x3fe59001d5f723df, 0xbfe7a4f707bf97d2, // 0.67383, -0.73889
+ 0x3fe5a28d2a5d7250, 0xbfe79400574f55e4, // 0.67609, -0.73682
+ 0x3fe5b50b264f7448, 0xbfe782fb1b90b35b, // 0.67835, -0.73474
+ 0x3fe5c77bbe65018c, 0xbfe771e75f037261, // 0.6806, -0.73265
+ 0x3fe5d9dee73e345c, 0xbfe760c52c304764, // 0.68285, -0.73056
+ 0x3fe5ec3495837074, 0xbfe74f948da8d28d, // 0.68508, -0.72846
+ 0x3fe5fe7cbde56a0f, 0xbfe73e558e079942, // 0.68732, -0.72636
+ 0x3fe610b7551d2cde, 0xbfe72d0837efff97, // 0.68954, -0.72425
+ 0x3fe622e44fec22ff, 0xbfe71bac960e41bf, // 0.69176, -0.72213
+ 0x3fe63503a31c1be8, 0xbfe70a42b3176d7a, // 0.69397, -0.72
+ 0x3fe64715437f535b, 0xbfe6f8ca99c95b75, // 0.69618, -0.71787
+ 0x3fe6591925f0783e, 0xbfe6e74454eaa8ae, // 0.69838, -0.71573
+ 0x3fe66b0f3f52b386, 0xbfe6d5afef4aafcc, // 0.70057, -0.71358
+ 0x3fe67cf78491af10, 0xbfe6c40d73c18275, // 0.70275, -0.71143
+ 0x3fe68ed1eaa19c71, 0xbfe6b25ced2fe29c, // 0.70493, -0.70927
+ 0x3fe6a09e667f3bcc, 0xbfe6a09e667f3bcc, // 0.70711, -0.70711
+ 0x3fe6b25ced2fe29c, 0xbfe68ed1eaa19c71, // 0.70927, -0.70493
+ 0x3fe6c40d73c18275, 0xbfe67cf78491af10, // 0.71143, -0.70275
+ 0x3fe6d5afef4aafcc, 0xbfe66b0f3f52b386, // 0.71358, -0.70057
+ 0x3fe6e74454eaa8ae, 0xbfe6591925f0783e, // 0.71573, -0.69838
+ 0x3fe6f8ca99c95b75, 0xbfe64715437f535b, // 0.71787, -0.69618
+ 0x3fe70a42b3176d7a, 0xbfe63503a31c1be8, // 0.72, -0.69397
+ 0x3fe71bac960e41bf, 0xbfe622e44fec22ff, // 0.72213, -0.69176
+ 0x3fe72d0837efff97, 0xbfe610b7551d2cde, // 0.72425, -0.68954
+ 0x3fe73e558e079942, 0xbfe5fe7cbde56a0f, // 0.72636, -0.68732
+ 0x3fe74f948da8d28d, 0xbfe5ec3495837074, // 0.72846, -0.68508
+ 0x3fe760c52c304764, 0xbfe5d9dee73e345c, // 0.73056, -0.68285
+ 0x3fe771e75f037261, 0xbfe5c77bbe65018c, // 0.73265, -0.6806
+ 0x3fe782fb1b90b35b, 0xbfe5b50b264f7448, // 0.73474, -0.67835
+ 0x3fe79400574f55e4, 0xbfe5a28d2a5d7250, // 0.73682, -0.67609
+ 0x3fe7a4f707bf97d2, 0xbfe59001d5f723df, // 0.73889, -0.67383
+ 0x3fe7b5df226aafb0, 0xbfe57d69348cec9f, // 0.74095, -0.67156
+ 0x3fe7c6b89ce2d333, 0xbfe56ac35197649e, // 0.74301, -0.66928
+ 0x3fe7d7836cc33db2, 0xbfe5581038975137, // 0.74506, -0.667
+ 0x3fe7e83f87b03686, 0xbfe5454ff5159dfb, // 0.7471, -0.66471
+ 0x3fe7f8ece3571771, 0xbfe5328292a35596, // 0.74914, -0.66242
+ 0x3fe8098b756e52fa, 0xbfe51fa81cd99aa6, // 0.75117, -0.66011
+ 0x3fe81a1b33b57acc, 0xbfe50cc09f59a09b, // 0.75319, -0.65781
+ 0x3fe82a9c13f545ff, 0xbfe4f9cc25cca486, // 0.7552, -0.65549
+ 0x3fe83b0e0bff976e, 0xbfe4e6cabbe3e5e9, // 0.75721, -0.65317
+ 0x3fe84b7111af83f9, 0xbfe4d3bc6d589f80, // 0.75921, -0.65085
+ 0x3fe85bc51ae958cc, 0xbfe4c0a145ec0004, // 0.7612, -0.64851
+ 0x3fe86c0a1d9aa195, 0xbfe4ad79516722f0, // 0.76319, -0.64618
+ 0x3fe87c400fba2ebf, 0xbfe49a449b9b0938, // 0.76517, -0.64383
+ 0x3fe88c66e7481ba1, 0xbfe48703306091fe, // 0.76714, -0.64148
+ 0x3fe89c7e9a4dd4ab, 0xbfe473b51b987347, // 0.7691, -0.63912
+ 0x3fe8ac871ede1d88, 0xbfe4605a692b32a2, // 0.77106, -0.63676
+ 0x3fe8bc806b151741, 0xbfe44cf325091dd6, // 0.77301, -0.63439
+ 0x3fe8cc6a75184655, 0xbfe4397f5b2a4380, // 0.77495, -0.63202
+ 0x3fe8dc45331698cc, 0xbfe425ff178e6bb1, // 0.77689, -0.62964
+ 0x3fe8ec109b486c49, 0xbfe41272663d108c, // 0.77882, -0.62725
+ 0x3fe8fbcca3ef940d, 0xbfe3fed9534556d4, // 0.78074, -0.62486
+ 0x3fe90b7943575efe, 0xbfe3eb33eabe0680, // 0.78265, -0.62246
+ 0x3fe91b166fd49da2, 0xbfe3d78238c58343, // 0.78456, -0.62006
+ 0x3fe92aa41fc5a815, 0xbfe3c3c44981c517, // 0.78646, -0.61765
+ 0x3fe93a22499263fc, 0xbfe3affa292050b9, // 0.78835, -0.61523
+ 0x3fe94990e3ac4a6c, 0xbfe39c23e3d63029, // 0.79023, -0.61281
+ 0x3fe958efe48e6dd7, 0xbfe3884185dfeb22, // 0.79211, -0.61038
+ 0x3fe9683f42bd7fe1, 0xbfe374531b817f8d, // 0.79398, -0.60795
+ 0x3fe9777ef4c7d742, 0xbfe36058b10659f3, // 0.79584, -0.60551
+ 0x3fe986aef1457594, 0xbfe34c5252c14de1, // 0.79769, -0.60307
+ 0x3fe995cf2ed80d22, 0xbfe338400d0c8e57, // 0.79954, -0.60062
+ 0x3fe9a4dfa42b06b2, 0xbfe32421ec49a620, // 0.80138, -0.59816
+ 0x3fe9b3e047f38741, 0xbfe30ff7fce17035, // 0.80321, -0.5957
+ 0x3fe9c2d110f075c3, 0xbfe2fbc24b441015, // 0.80503, -0.59323
+ 0x3fe9d1b1f5ea80d6, 0xbfe2e780e3e8ea16, // 0.80685, -0.59076
+ 0x3fe9e082edb42472, 0xbfe2d333d34e9bb7, // 0.80866, -0.58828
+ 0x3fe9ef43ef29af94, 0xbfe2bedb25faf3ea, // 0.81046, -0.5858
+ 0x3fe9fdf4f13149de, 0xbfe2aa76e87aeb58, // 0.81225, -0.58331
+ 0x3fea0c95eabaf937, 0xbfe2960727629ca8, // 0.81404, -0.58081
+ 0x3fea1b26d2c0a75e, 0xbfe2818bef4d3cba, // 0.81581, -0.57831
+ 0x3fea29a7a0462782, 0xbfe26d054cdd12df, // 0.81758, -0.57581
+ 0x3fea38184a593bc6, 0xbfe258734cbb7110, // 0.81935, -0.5733
+ 0x3fea4678c8119ac8, 0xbfe243d5fb98ac1f, // 0.8211, -0.57078
+ 0x3fea54c91090f524, 0xbfe22f2d662c13e1, // 0.82285, -0.56826
+ 0x3fea63091b02fae2, 0xbfe21a799933eb58, // 0.82459, -0.56573
+ 0x3fea7138de9d60f5, 0xbfe205baa17560d6, // 0.82632, -0.5632
+ 0x3fea7f58529fe69d, 0xbfe1f0f08bbc861b, // 0.82805, -0.56066
+ 0x3fea8d676e545ad2, 0xbfe1dc1b64dc4872, // 0.82976, -0.55812
+ 0x3fea9b66290ea1a3, 0xbfe1c73b39ae68c8, // 0.83147, -0.55557
+ 0x3feaa9547a2cb98e, 0xbfe1b250171373be, // 0.83317, -0.55302
+ 0x3feab7325916c0d4, 0xbfe19d5a09f2b9b8, // 0.83486, -0.55046
+ 0x3feac4ffbd3efac8, 0xbfe188591f3a46e5, // 0.83655, -0.54789
+ 0x3fead2bc9e21d511, 0xbfe1734d63dedb49, // 0.83822, -0.54532
+ 0x3feae068f345ecef, 0xbfe15e36e4dbe2bc, // 0.83989, -0.54275
+ 0x3feaee04b43c1474, 0xbfe14915af336ceb, // 0.84155, -0.54017
+ 0x3feafb8fd89f57b6, 0xbfe133e9cfee254e, // 0.84321, -0.53759
+ 0x3feb090a58150200, 0xbfe11eb3541b4b22, // 0.84485, -0.535
+ 0x3feb16742a4ca2f5, 0xbfe1097248d0a956, // 0.84649, -0.5324
+ 0x3feb23cd470013b4, 0xbfe0f426bb2a8e7d, // 0.84812, -0.5298
+ 0x3feb3115a5f37bf4, 0xbfe0ded0b84bc4b5, // 0.84974, -0.5272
+ 0x3feb3e4d3ef55712, 0xbfe0c9704d5d898f, // 0.85136, -0.52459
+ 0x3feb4b7409de7925, 0xbfe0b405878f85ec, // 0.85296, -0.52198
+ 0x3feb5889fe921405, 0xbfe09e907417c5e1, // 0.85456, -0.51936
+ 0x3feb658f14fdbc47, 0xbfe089112032b08c, // 0.85615, -0.51673
+ 0x3feb728345196e3e, 0xbfe073879922ffed, // 0.85773, -0.5141
+ 0x3feb7f6686e792ea, 0xbfe05df3ec31b8b6, // 0.8593, -0.51147
+ 0x3feb8c38d27504e9, 0xbfe0485626ae221a, // 0.86087, -0.50883
+ 0x3feb98fa1fd9155e, 0xbfe032ae55edbd95, // 0.86242, -0.50619
+ 0x3feba5aa673590d2, 0xbfe01cfc874c3eb7, // 0.86397, -0.50354
+ 0x3febb249a0b6c40d, 0xbfe00740c82b82e0, // 0.86551, -0.50089
+ 0x3febbed7c49380ea, 0xbfdfe2f64be7120f, // 0.86705, -0.49823
+ 0x3febcb54cb0d2327, 0xbfdfb7575c24d2de, // 0.86857, -0.49557
+ 0x3febd7c0ac6f952a, 0xbfdf8ba4dbf89aba, // 0.87009, -0.4929
+ 0x3febe41b611154c1, 0xbfdf5fdee656cda3, // 0.8716, -0.49023
+ 0x3febf064e15377dd, 0xbfdf3405963fd068, // 0.87309, -0.48755
+ 0x3febfc9d25a1b147, 0xbfdf081906bff7fd, // 0.87459, -0.48487
+ 0x3fec08c426725549, 0xbfdedc1952ef78d5, // 0.87607, -0.48218
+ 0x3fec14d9dc465e58, 0xbfdeb00695f25620, // 0.87755, -0.47949
+ 0x3fec20de3fa971b0, 0xbfde83e0eaf85113, // 0.87901, -0.4768
+ 0x3fec2cd14931e3f1, 0xbfde57a86d3cd824, // 0.88047, -0.4741
+ 0x3fec38b2f180bdb1, 0xbfde2b5d3806f63b, // 0.88192, -0.4714
+ 0x3fec44833141c004, 0xbfddfeff66a941de, // 0.88336, -0.46869
+ 0x3fec5042012b6907, 0xbfddd28f1481cc58, // 0.8848, -0.46598
+ 0x3fec5bef59fef85a, 0xbfdda60c5cfa10d8, // 0.88622, -0.46326
+ 0x3fec678b3488739b, 0xbfdd79775b86e389, // 0.88764, -0.46054
+ 0x3fec7315899eaad7, 0xbfdd4cd02ba8609c, // 0.88905, -0.45781
+ 0x3fec7e8e52233cf3, 0xbfdd2016e8e9db5b, // 0.89045, -0.45508
+ 0x3fec89f587029c13, 0xbfdcf34baee1cd21, // 0.89184, -0.45235
+ 0x3fec954b213411f5, 0xbfdcc66e9931c45d, // 0.89322, -0.44961
+ 0x3feca08f19b9c449, 0xbfdc997fc3865388, // 0.8946, -0.44687
+ 0x3fecabc169a0b901, 0xbfdc6c7f4997000a, // 0.89597, -0.44412
+ 0x3fecb6e20a00da99, 0xbfdc3f6d47263129, // 0.89732, -0.44137
+ 0x3fecc1f0f3fcfc5c, 0xbfdc1249d8011ee7, // 0.89867, -0.43862
+ 0x3fecccee20c2de9f, 0xbfdbe51517ffc0d9, // 0.90002, -0.43586
+ 0x3fecd7d9898b32f6, 0xbfdbb7cf2304bd01, // 0.90135, -0.43309
+ 0x3fece2b32799a060, 0xbfdb8a7814fd5693, // 0.90267, -0.43033
+ 0x3feced7af43cc773, 0xbfdb5d1009e15cc0, // 0.90399, -0.42756
+ 0x3fecf830e8ce467b, 0xbfdb2f971db31972, // 0.9053, -0.42478
+ 0x3fed02d4feb2bd92, 0xbfdb020d6c7f4009, // 0.9066, -0.422
+ 0x3fed0d672f59d2b9, 0xbfdad473125cdc08, // 0.90789, -0.41922
+ 0x3fed17e7743e35dc, 0xbfdaa6c82b6d3fc9, // 0.90917, -0.41643
+ 0x3fed2255c6e5a4e1, 0xbfda790cd3dbf31a, // 0.91044, -0.41364
+ 0x3fed2cb220e0ef9f, 0xbfda4b4127dea1e4, // 0.91171, -0.41084
+ 0x3fed36fc7bcbfbdc, 0xbfda1d6543b50ac0, // 0.91296, -0.40804
+ 0x3fed4134d14dc93a, 0xbfd9ef7943a8ed8a, // 0.91421, -0.40524
+ 0x3fed4b5b1b187524, 0xbfd9c17d440df9f2, // 0.91545, -0.40243
+ 0x3fed556f52e93eb1, 0xbfd993716141bdfe, // 0.91668, -0.39962
+ 0x3fed5f7172888a7f, 0xbfd96555b7ab948f, // 0.9179, -0.39681
+ 0x3fed696173c9e68b, 0xbfd9372a63bc93d7, // 0.91911, -0.39399
+ 0x3fed733f508c0dff, 0xbfd908ef81ef7bd1, // 0.92032, -0.39117
+ 0x3fed7d0b02b8ecf9, 0xbfd8daa52ec8a4af, // 0.92151, -0.38835
+ 0x3fed86c48445a450, 0xbfd8ac4b86d5ed44, // 0.9227, -0.38552
+ 0x3fed906bcf328d46, 0xbfd87de2a6aea963, // 0.92388, -0.38268
+ 0x3fed9a00dd8b3d46, 0xbfd84f6aaaf3903f, // 0.92505, -0.37985
+ 0x3feda383a9668988, 0xbfd820e3b04eaac4, // 0.92621, -0.37701
+ 0x3fedacf42ce68ab9, 0xbfd7f24dd37341e3, // 0.92736, -0.37416
+ 0x3fedb6526238a09b, 0xbfd7c3a9311dcce7, // 0.92851, -0.37132
+ 0x3fedbf9e4395759a, 0xbfd794f5e613dfae, // 0.92964, -0.36847
+ 0x3fedc8d7cb410260, 0xbfd766340f2418f6, // 0.93077, -0.36561
+ 0x3fedd1fef38a915a, 0xbfd73763c9261092, // 0.93188, -0.36276
+ 0x3feddb13b6ccc23d, 0xbfd7088530fa459e, // 0.93299, -0.3599
+ 0x3fede4160f6d8d81, 0xbfd6d998638a0cb5, // 0.93409, -0.35703
+ 0x3feded05f7de47da, 0xbfd6aa9d7dc77e16, // 0.93518, -0.35416
+ 0x3fedf5e36a9ba59c, 0xbfd67b949cad63ca, // 0.93627, -0.35129
+ 0x3fedfeae622dbe2b, 0xbfd64c7ddd3f27c6, // 0.93734, -0.34842
+ 0x3fee0766d9280f54, 0xbfd61d595c88c203, // 0.9384, -0.34554
+ 0x3fee100cca2980ac, 0xbfd5ee27379ea693, // 0.93946, -0.34266
+ 0x3fee18a02fdc66d9, 0xbfd5bee78b9db3b6, // 0.94051, -0.33978
+ 0x3fee212104f686e5, 0xbfd58f9a75ab1fdd, // 0.94154, -0.33689
+ 0x3fee298f4439197a, 0xbfd5604012f467b4, // 0.94257, -0.334
+ 0x3fee31eae870ce25, 0xbfd530d880af3c24, // 0.94359, -0.33111
+ 0x3fee3a33ec75ce85, 0xbfd50163dc197047, // 0.9446, -0.32821
+ 0x3fee426a4b2bc17e, 0xbfd4d1e24278e76a, // 0.94561, -0.32531
+ 0x3fee4a8dff81ce5e, 0xbfd4a253d11b82f3, // 0.9466, -0.32241
+ 0x3fee529f04729ffc, 0xbfd472b8a5571054, // 0.94759, -0.3195
+ 0x3fee5a9d550467d3, 0xbfd44310dc8936f0, // 0.94856, -0.31659
+ 0x3fee6288ec48e112, 0xbfd4135c94176602, // 0.94953, -0.31368
+ 0x3fee6a61c55d53a7, 0xbfd3e39be96ec271, // 0.95049, -0.31077
+ 0x3fee7227db6a9744, 0xbfd3b3cefa0414b7, // 0.95144, -0.30785
+ 0x3fee79db29a5165a, 0xbfd383f5e353b6aa, // 0.95238, -0.30493
+ 0x3fee817bab4cd10d, 0xbfd35410c2e18152, // 0.95331, -0.30201
+ 0x3fee89095bad6025, 0xbfd3241fb638baaf, // 0.95423, -0.29908
+ 0x3fee9084361df7f3, 0xbfd2f422daec0386, // 0.95514, -0.29615
+ 0x3fee97ec36016b30, 0xbfd2c41a4e954520, // 0.95605, -0.29322
+ 0x3fee9f4156c62dda, 0xbfd294062ed59f05, // 0.95694, -0.29028
+ 0x3feea68393e65800, 0xbfd263e6995554ba, // 0.95783, -0.28735
+ 0x3feeadb2e8e7a88e, 0xbfd233bbabc3bb72, // 0.9587, -0.28441
+ 0x3feeb4cf515b8811, 0xbfd2038583d727bd, // 0.95957, -0.28146
+ 0x3feebbd8c8df0b74, 0xbfd1d3443f4cdb3d, // 0.96043, -0.27852
+ 0x3feec2cf4b1af6b2, 0xbfd1a2f7fbe8f243, // 0.96128, -0.27557
+ 0x3feec9b2d3c3bf84, 0xbfd172a0d7765177, // 0.96212, -0.27262
+ 0x3feed0835e999009, 0xbfd1423eefc69378, // 0.96295, -0.26967
+ 0x3feed740e7684963, 0xbfd111d262b1f677, // 0.96378, -0.26671
+ 0x3feeddeb6a078651, 0xbfd0e15b4e1749cd, // 0.96459, -0.26375
+ 0x3feee482e25a9dbc, 0xbfd0b0d9cfdbdb90, // 0.96539, -0.26079
+ 0x3feeeb074c50a544, 0xbfd0804e05eb661e, // 0.96619, -0.25783
+ 0x3feef178a3e473c2, 0xbfd04fb80e37fdae, // 0.96698, -0.25487
+ 0x3feef7d6e51ca3c0, 0xbfd01f1806b9fdd2, // 0.96775, -0.2519
+ 0x3feefe220c0b95ec, 0xbfcfdcdc1adfedf8, // 0.96852, -0.24893
+ 0x3fef045a14cf738c, 0xbfcf7b7480bd3801, // 0.96928, -0.24596
+ 0x3fef0a7efb9230d7, 0xbfcf19f97b215f1a, // 0.97003, -0.24298
+ 0x3fef1090bc898f5f, 0xbfceb86b462de348, // 0.97077, -0.24
+ 0x3fef168f53f7205d, 0xbfce56ca1e101a1b, // 0.9715, -0.23702
+ 0x3fef1c7abe284708, 0xbfcdf5163f01099a, // 0.97223, -0.23404
+ 0x3fef2252f7763ada, 0xbfcd934fe5454311, // 0.97294, -0.23106
+ 0x3fef2817fc4609ce, 0xbfcd31774d2cbdee, // 0.97364, -0.22807
+ 0x3fef2dc9c9089a9d, 0xbfcccf8cb312b286, // 0.97434, -0.22508
+ 0x3fef33685a3aaef0, 0xbfcc6d90535d74dc, // 0.97503, -0.22209
+ 0x3fef38f3ac64e589, 0xbfcc0b826a7e4f63, // 0.9757, -0.2191
+ 0x3fef3e6bbc1bbc65, 0xbfcba96334f15dad, // 0.97637, -0.21611
+ 0x3fef43d085ff92dd, 0xbfcb4732ef3d6722, // 0.97703, -0.21311
+ 0x3fef492206bcabb4, 0xbfcae4f1d5f3b9ab, // 0.97768, -0.21011
+ 0x3fef4e603b0b2f2d, 0xbfca82a025b00451, // 0.97832, -0.20711
+ 0x3fef538b1faf2d07, 0xbfca203e1b1831da, // 0.97895, -0.20411
+ 0x3fef58a2b1789e84, 0xbfc9bdcbf2dc4366, // 0.97957, -0.2011
+ 0x3fef5da6ed43685d, 0xbfc95b49e9b62af9, // 0.98018, -0.1981
+ 0x3fef6297cff75cb0, 0xbfc8f8b83c69a60a, // 0.98079, -0.19509
+ 0x3fef677556883cee, 0xbfc8961727c41804, // 0.98138, -0.19208
+ 0x3fef6c3f7df5bbb7, 0xbfc83366e89c64c5, // 0.98196, -0.18907
+ 0x3fef70f6434b7eb7, 0xbfc7d0a7bbd2cb1b, // 0.98254, -0.18606
+ 0x3fef7599a3a12077, 0xbfc76dd9de50bf31, // 0.98311, -0.18304
+ 0x3fef7a299c1a322a, 0xbfc70afd8d08c4ff, // 0.98366, -0.18002
+ 0x3fef7ea629e63d6e, 0xbfc6a81304f64ab2, // 0.98421, -0.177
+ 0x3fef830f4a40c60c, 0xbfc6451a831d830d, // 0.98475, -0.17398
+ 0x3fef8764fa714ba9, 0xbfc5e214448b3fc6, // 0.98528, -0.17096
+ 0x3fef8ba737cb4b78, 0xbfc57f008654cbde, // 0.9858, -0.16794
+ 0x3fef8fd5ffae41db, 0xbfc51bdf8597c5f2, // 0.98631, -0.16491
+ 0x3fef93f14f85ac08, 0xbfc4b8b17f79fa88, // 0.98681, -0.16189
+ 0x3fef97f924c9099b, 0xbfc45576b1293e5a, // 0.9873, -0.15886
+ 0x3fef9bed7cfbde29, 0xbfc3f22f57db4893, // 0.98778, -0.15583
+ 0x3fef9fce55adb2c8, 0xbfc38edbb0cd8d14, // 0.98826, -0.1528
+ 0x3fefa39bac7a1791, 0xbfc32b7bf94516a7, // 0.98872, -0.14976
+ 0x3fefa7557f08a517, 0xbfc2c8106e8e613a, // 0.98918, -0.14673
+ 0x3fefaafbcb0cfddc, 0xbfc264994dfd340a, // 0.98962, -0.1437
+ 0x3fefae8e8e46cfbb, 0xbfc20116d4ec7bce, // 0.99006, -0.14066
+ 0x3fefb20dc681d54d, 0xbfc19d8940be24e7, // 0.99049, -0.13762
+ 0x3fefb5797195d741, 0xbfc139f0cedaf576, // 0.9909, -0.13458
+ 0x3fefb8d18d66adb7, 0xbfc0d64dbcb26786, // 0.99131, -0.13154
+ 0x3fefbc1617e44186, 0xbfc072a047ba831d, // 0.99171, -0.1285
+ 0x3fefbf470f0a8d88, 0xbfc00ee8ad6fb85b, // 0.9921, -0.12545
+ 0x3fefc26470e19fd3, 0xbfbf564e56a9730e, // 0.99248, -0.12241
+ 0x3fefc56e3b7d9af6, 0xbfbe8eb7fde4aa3e, // 0.99285, -0.11937
+ 0x3fefc8646cfeb721, 0xbfbdc70ecbae9fc8, // 0.99321, -0.11632
+ 0x3fefcb4703914354, 0xbfbcff533b307dc1, // 0.99356, -0.11327
+ 0x3fefce15fd6da67b, 0xbfbc3785c79ec2d5, // 0.99391, -0.11022
+ 0x3fefd0d158d86087, 0xbfbb6fa6ec38f64c, // 0.99424, -0.10717
+ 0x3fefd37914220b84, 0xbfbaa7b724495c04, // 0.99456, -0.10412
+ 0x3fefd60d2da75c9e, 0xbfb9dfb6eb24a85c, // 0.99488, -0.10107
+ 0x3fefd88da3d12526, 0xbfb917a6bc29b42c, // 0.99518, -0.098017
+ 0x3fefdafa7514538c, 0xbfb84f8712c130a0, // 0.99548, -0.094963
+ 0x3fefdd539ff1f456, 0xbfb787586a5d5b21, // 0.99577, -0.091909
+ 0x3fefdf9922f73307, 0xbfb6bf1b3e79b129, // 0.99604, -0.088854
+ 0x3fefe1cafcbd5b09, 0xbfb5f6d00a9aa419, // 0.99631, -0.085797
+ 0x3fefe3e92be9d886, 0xbfb52e774a4d4d0a, // 0.99657, -0.08274
+ 0x3fefe5f3af2e3940, 0xbfb4661179272096, // 0.99682, -0.079682
+ 0x3fefe7ea85482d60, 0xbfb39d9f12c5a299, // 0.99706, -0.076624
+ 0x3fefe9cdad01883a, 0xbfb2d52092ce19f6, // 0.99729, -0.073565
+ 0x3fefeb9d2530410f, 0xbfb20c9674ed444c, // 0.99751, -0.070505
+ 0x3fefed58ecb673c4, 0xbfb1440134d709b2, // 0.99772, -0.067444
+ 0x3fefef0102826191, 0xbfb07b614e463064, // 0.99793, -0.064383
+ 0x3feff095658e71ad, 0xbfaf656e79f820e0, // 0.99812, -0.061321
+ 0x3feff21614e131ed, 0xbfadd406f9808ec8, // 0.9983, -0.058258
+ 0x3feff3830f8d575c, 0xbfac428d12c0d7e3, // 0.99848, -0.055195
+ 0x3feff4dc54b1bed3, 0xbfaab101bd5f8317, // 0.99864, -0.052132
+ 0x3feff621e3796d7e, 0xbfa91f65f10dd814, // 0.9988, -0.049068
+ 0x3feff753bb1b9164, 0xbfa78dbaa5874685, // 0.99894, -0.046003
+ 0x3feff871dadb81df, 0xbfa5fc00d290cd43, // 0.99908, -0.042938
+ 0x3feff97c4208c014, 0xbfa46a396ff86179, // 0.9992, -0.039873
+ 0x3feffa72effef75d, 0xbfa2d865759455cd, // 0.99932, -0.036807
+ 0x3feffb55e425fdae, 0xbfa14685db42c17e, // 0.99943, -0.033741
+ 0x3feffc251df1d3f8, 0xbf9f693731d1cf01, // 0.99953, -0.030675
+ 0x3feffce09ce2a679, 0xbf9c454f4ce53b1c, // 0.99962, -0.027608
+ 0x3feffd886084cd0d, 0xbf992155f7a3667e, // 0.9997, -0.024541
+ 0x3feffe1c6870cb77, 0xbf95fd4d21fab226, // 0.99977, -0.021474
+ 0x3feffe9cb44b51a1, 0xbf92d936bbe30efd, // 0.99983, -0.018407
+ 0x3fefff0943c53bd1, 0xbf8f6a296ab997ca, // 0.99988, -0.015339
+ 0x3fefff62169b92db, 0xbf8921d1fcdec784, // 0.99992, -0.012272
+ 0x3fefffa72c978c4f, 0xbf82d96b0e509703, // 0.99996,-0.0092038
+ 0x3fefffd8858e8a92, 0xbf7921f0fe670071, // 0.99998,-0.0061359
+ 0x3feffff621621d02, 0xbf6921f8becca4ba, // 1, -0.003068
+
+};
+
+#endif /* !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) */
+
+#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || defined(ARM_TABLE_TWIDDLECOEF_F64_4096)
+/**
+ @par
+ Example code for Double Precision Floating-point Twiddle factors Generation:
+ @par
+ <pre>for (i = 0; i< N/; i++)
+ {
+ twiddleCoef[2*i] = cos(i * 2*PI/(float)N);
+ twiddleCoef[2*i+1] = sin(i * 2*PI/(float)N);
+ } </pre>
+ @par
+ where N = 4096, PI = 3.14159265358979
+ @par
+ Cos and Sin values are in interleaved fashion
+*/
+const uint64_t twiddleCoefF64_4096[8192] = {
+ 0x3ff0000000000000, 0x0000000000000000, // 1, 0
+ 0x3feffffd88586ee6, 0x3f5921faaee6472d, // 1, 0.001534
+ 0x3feffff621621d02, 0x3f6921f8becca4ba, // 1, 0.003068
+ 0x3fefffe9cb1e2e8d, 0x3f72d97822f996bc, // 0.99999, 0.0046019
+ 0x3fefffd8858e8a92, 0x3f7921f0fe670071, // 0.99998, 0.0061359
+ 0x3fefffc250b5daef, 0x3f7f6a65f9a2a3c5, // 0.99997, 0.0076698
+ 0x3fefffa72c978c4f, 0x3f82d96b0e509703, // 0.99996, 0.0092038
+ 0x3fefff871937ce2f, 0x3f85fda037ac05e0, // 0.99994, 0.010738
+ 0x3fefff62169b92db, 0x3f8921d1fcdec784, // 0.99992, 0.012272
+ 0x3fefff3824c88f6f, 0x3f8c45ffe1e48ad9, // 0.9999, 0.013805
+ 0x3fefff0943c53bd1, 0x3f8f6a296ab997ca, // 0.99988, 0.015339
+ 0x3feffed57398d2b7, 0x3f9147270dad7132, // 0.99986, 0.016873
+ 0x3feffe9cb44b51a1, 0x3f92d936bbe30efd, // 0.99983, 0.018407
+ 0x3feffe5f05e578db, 0x3f946b4381fce81c, // 0.9998, 0.01994
+ 0x3feffe1c6870cb77, 0x3f95fd4d21fab226, // 0.99977, 0.021474
+ 0x3feffdd4dbf78f52, 0x3f978f535ddc9f03, // 0.99974, 0.023008
+ 0x3feffd886084cd0d, 0x3f992155f7a3667e, // 0.9997, 0.024541
+ 0x3feffd36f624500c, 0x3f9ab354b1504fca, // 0.99966, 0.026075
+ 0x3feffce09ce2a679, 0x3f9c454f4ce53b1c, // 0.99962, 0.027608
+ 0x3feffc8554cd213a, 0x3f9dd7458c64ab39, // 0.99958, 0.029142
+ 0x3feffc251df1d3f8, 0x3f9f693731d1cf01, // 0.99953, 0.030675
+ 0x3feffbbff85f9515, 0x3fa07d91ff984580, // 0.99948, 0.032208
+ 0x3feffb55e425fdae, 0x3fa14685db42c17e, // 0.99943, 0.033741
+ 0x3feffae6e1556998, 0x3fa20f770ceb11c6, // 0.99938, 0.035274
+ 0x3feffa72effef75d, 0x3fa2d865759455cd, // 0.99932, 0.036807
+ 0x3feff9fa10348837, 0x3fa3a150f6421afc, // 0.99926, 0.03834
+ 0x3feff97c4208c014, 0x3fa46a396ff86179, // 0.9992, 0.039873
+ 0x3feff8f9858f058b, 0x3fa5331ec3bba0eb, // 0.99914, 0.041406
+ 0x3feff871dadb81df, 0x3fa5fc00d290cd43, // 0.99908, 0.042938
+ 0x3feff7e5420320f9, 0x3fa6c4df7d7d5b84, // 0.99901, 0.044471
+ 0x3feff753bb1b9164, 0x3fa78dbaa5874685, // 0.99894, 0.046003
+ 0x3feff6bd463b444d, 0x3fa856922bb513c1, // 0.99887, 0.047535
+ 0x3feff621e3796d7e, 0x3fa91f65f10dd814, // 0.9988, 0.049068
+ 0x3feff58192ee0358, 0x3fa9e835d6993c87, // 0.99872, 0.0506
+ 0x3feff4dc54b1bed3, 0x3faab101bd5f8317, // 0.99864, 0.052132
+ 0x3feff43228de1b77, 0x3fab79c986698b78, // 0.99856, 0.053664
+ 0x3feff3830f8d575c, 0x3fac428d12c0d7e3, // 0.99848, 0.055195
+ 0x3feff2cf08da7321, 0x3fad0b4c436f91d0, // 0.99839, 0.056727
+ 0x3feff21614e131ed, 0x3fadd406f9808ec8, // 0.9983, 0.058258
+ 0x3feff15833be1965, 0x3fae9cbd15ff5527, // 0.99821, 0.05979
+ 0x3feff095658e71ad, 0x3faf656e79f820e0, // 0.99812, 0.061321
+ 0x3fefefcdaa704562, 0x3fb0170d833bf421, // 0.99802, 0.062852
+ 0x3fefef0102826191, 0x3fb07b614e463064, // 0.99793, 0.064383
+ 0x3fefee2f6de455ba, 0x3fb0dfb28ea201e6, // 0.99783, 0.065913
+ 0x3fefed58ecb673c4, 0x3fb1440134d709b2, // 0.99772, 0.067444
+ 0x3fefec7d7f19cffc, 0x3fb1a84d316d4f8a, // 0.99762, 0.068974
+ 0x3fefeb9d2530410f, 0x3fb20c9674ed444c, // 0.99751, 0.070505
+ 0x3fefeab7df1c6005, 0x3fb270dcefdfc45b, // 0.9974, 0.072035
+ 0x3fefe9cdad01883a, 0x3fb2d52092ce19f6, // 0.99729, 0.073565
+ 0x3fefe8de8f03d75c, 0x3fb339614e41ffa5, // 0.99718, 0.075094
+ 0x3fefe7ea85482d60, 0x3fb39d9f12c5a299, // 0.99706, 0.076624
+ 0x3fefe6f18ff42c84, 0x3fb401d9d0e3a507, // 0.99694, 0.078153
+ 0x3fefe5f3af2e3940, 0x3fb4661179272096, // 0.99682, 0.079682
+ 0x3fefe4f0e31d7a4a, 0x3fb4ca45fc1ba8b6, // 0.9967, 0.081211
+ 0x3fefe3e92be9d886, 0x3fb52e774a4d4d0a, // 0.99657, 0.08274
+ 0x3fefe2dc89bbff08, 0x3fb592a554489bc8, // 0.99644, 0.084269
+ 0x3fefe1cafcbd5b09, 0x3fb5f6d00a9aa419, // 0.99631, 0.085797
+ 0x3fefe0b485181be3, 0x3fb65af75dd0f87b, // 0.99618, 0.087326
+ 0x3fefdf9922f73307, 0x3fb6bf1b3e79b129, // 0.99604, 0.088854
+ 0x3fefde78d68653fd, 0x3fb7233b9d236e71, // 0.99591, 0.090381
+ 0x3fefdd539ff1f456, 0x3fb787586a5d5b21, // 0.99577, 0.091909
+ 0x3fefdc297f674ba9, 0x3fb7eb7196b72ee4, // 0.99563, 0.093436
+ 0x3fefdafa7514538c, 0x3fb84f8712c130a0, // 0.99548, 0.094963
+ 0x3fefd9c68127c78c, 0x3fb8b398cf0c38e0, // 0.99533, 0.09649
+ 0x3fefd88da3d12526, 0x3fb917a6bc29b42c, // 0.99518, 0.098017
+ 0x3fefd74fdd40abbf, 0x3fb97bb0caaba56f, // 0.99503, 0.099544
+ 0x3fefd60d2da75c9e, 0x3fb9dfb6eb24a85c, // 0.99488, 0.10107
+ 0x3fefd4c59536fae4, 0x3fba43b90e27f3c4, // 0.99472, 0.1026
+ 0x3fefd37914220b84, 0x3fbaa7b724495c04, // 0.99456, 0.10412
+ 0x3fefd227aa9bd53b, 0x3fbb0bb11e1d5559, // 0.9944, 0.10565
+ 0x3fefd0d158d86087, 0x3fbb6fa6ec38f64c, // 0.99424, 0.10717
+ 0x3fefcf761f0c77a3, 0x3fbbd3987f31fa0e, // 0.99407, 0.1087
+ 0x3fefce15fd6da67b, 0x3fbc3785c79ec2d5, // 0.99391, 0.11022
+ 0x3fefccb0f4323aa3, 0x3fbc9b6eb6165c42, // 0.99374, 0.11175
+ 0x3fefcb4703914354, 0x3fbcff533b307dc1, // 0.99356, 0.11327
+ 0x3fefc9d82bc2915e, 0x3fbd633347858ce4, // 0.99339, 0.11479
+ 0x3fefc8646cfeb721, 0x3fbdc70ecbae9fc8, // 0.99321, 0.11632
+ 0x3fefc6ebc77f0887, 0x3fbe2ae5b8457f77, // 0.99303, 0.11784
+ 0x3fefc56e3b7d9af6, 0x3fbe8eb7fde4aa3e, // 0.99285, 0.11937
+ 0x3fefc3ebc935454c, 0x3fbef2858d27561b, // 0.99267, 0.12089
+ 0x3fefc26470e19fd3, 0x3fbf564e56a9730e, // 0.99248, 0.12241
+ 0x3fefc0d832bf043a, 0x3fbfba124b07ad85, // 0.99229, 0.12393
+ 0x3fefbf470f0a8d88, 0x3fc00ee8ad6fb85b, // 0.9921, 0.12545
+ 0x3fefbdb106021816, 0x3fc040c5bb67747e, // 0.99191, 0.12698
+ 0x3fefbc1617e44186, 0x3fc072a047ba831d, // 0.99171, 0.1285
+ 0x3fefba7644f068b5, 0x3fc0a4784ab8bf1d, // 0.99151, 0.13002
+ 0x3fefb8d18d66adb7, 0x3fc0d64dbcb26786, // 0.99131, 0.13154
+ 0x3fefb727f187f1c7, 0x3fc1082095f820b0, // 0.99111, 0.13306
+ 0x3fefb5797195d741, 0x3fc139f0cedaf576, // 0.9909, 0.13458
+ 0x3fefb3c60dd2c199, 0x3fc16bbe5fac5865, // 0.9907, 0.1361
+ 0x3fefb20dc681d54d, 0x3fc19d8940be24e7, // 0.99049, 0.13762
+ 0x3fefb0509be6f7db, 0x3fc1cf516a62a077, // 0.99027, 0.13914
+ 0x3fefae8e8e46cfbb, 0x3fc20116d4ec7bce, // 0.99006, 0.14066
+ 0x3fefacc79de6c44f, 0x3fc232d978aed413, // 0.98984, 0.14218
+ 0x3fefaafbcb0cfddc, 0x3fc264994dfd340a, // 0.98962, 0.1437
+ 0x3fefa92b1600657c, 0x3fc296564d2b953e, // 0.9894, 0.14521
+ 0x3fefa7557f08a517, 0x3fc2c8106e8e613a, // 0.98918, 0.14673
+ 0x3fefa57b066e2754, 0x3fc2f9c7aa7a72af, // 0.98895, 0.14825
+ 0x3fefa39bac7a1791, 0x3fc32b7bf94516a7, // 0.98872, 0.14976
+ 0x3fefa1b7717661d5, 0x3fc35d2d53440db2, // 0.98849, 0.15128
+ 0x3fef9fce55adb2c8, 0x3fc38edbb0cd8d14, // 0.98826, 0.1528
+ 0x3fef9de0596b77a3, 0x3fc3c0870a383ff6, // 0.98802, 0.15431
+ 0x3fef9bed7cfbde29, 0x3fc3f22f57db4893, // 0.98778, 0.15583
+ 0x3fef99f5c0abd496, 0x3fc423d4920e4166, // 0.98754, 0.15734
+ 0x3fef97f924c9099b, 0x3fc45576b1293e5a, // 0.9873, 0.15886
+ 0x3fef95f7a9a1ec47, 0x3fc48715ad84cdf5, // 0.98706, 0.16037
+ 0x3fef93f14f85ac08, 0x3fc4b8b17f79fa88, // 0.98681, 0.16189
+ 0x3fef91e616c43891, 0x3fc4ea4a1f624b61, // 0.98656, 0.1634
+ 0x3fef8fd5ffae41db, 0x3fc51bdf8597c5f2, // 0.98631, 0.16491
+ 0x3fef8dc10a95380d, 0x3fc54d71aa74ef02, // 0.98605, 0.16643
+ 0x3fef8ba737cb4b78, 0x3fc57f008654cbde, // 0.9858, 0.16794
+ 0x3fef898887a36c84, 0x3fc5b08c1192e381, // 0.98554, 0.16945
+ 0x3fef8764fa714ba9, 0x3fc5e214448b3fc6, // 0.98528, 0.17096
+ 0x3fef853c9089595e, 0x3fc61399179a6e94, // 0.98501, 0.17247
+ 0x3fef830f4a40c60c, 0x3fc6451a831d830d, // 0.98475, 0.17398
+ 0x3fef80dd27ed8204, 0x3fc676987f7216b8, // 0.98448, 0.17549
+ 0x3fef7ea629e63d6e, 0x3fc6a81304f64ab2, // 0.98421, 0.177
+ 0x3fef7c6a50826840, 0x3fc6d98a0c08c8da, // 0.98394, 0.17851
+ 0x3fef7a299c1a322a, 0x3fc70afd8d08c4ff, // 0.98366, 0.18002
+ 0x3fef77e40d068a90, 0x3fc73c6d8055fe0a, // 0.98339, 0.18153
+ 0x3fef7599a3a12077, 0x3fc76dd9de50bf31, // 0.98311, 0.18304
+ 0x3fef734a60446279, 0x3fc79f429f59e11d, // 0.98282, 0.18455
+ 0x3fef70f6434b7eb7, 0x3fc7d0a7bbd2cb1b, // 0.98254, 0.18606
+ 0x3fef6e9d4d1262ca, 0x3fc802092c1d744b, // 0.98225, 0.18756
+ 0x3fef6c3f7df5bbb7, 0x3fc83366e89c64c5, // 0.98196, 0.18907
+ 0x3fef69dcd652f5de, 0x3fc864c0e9b2b6cf, // 0.98167, 0.19057
+ 0x3fef677556883cee, 0x3fc8961727c41804, // 0.98138, 0.19208
+ 0x3fef6508fef47bd5, 0x3fc8c7699b34ca7e, // 0.98108, 0.19359
+ 0x3fef6297cff75cb0, 0x3fc8f8b83c69a60a, // 0.98079, 0.19509
+ 0x3fef6021c9f148c2, 0x3fc92a0303c8194f, // 0.98048, 0.19659
+ 0x3fef5da6ed43685d, 0x3fc95b49e9b62af9, // 0.98018, 0.1981
+ 0x3fef5b273a4fa2d9, 0x3fc98c8ce69a7aec, // 0.97988, 0.1996
+ 0x3fef58a2b1789e84, 0x3fc9bdcbf2dc4366, // 0.97957, 0.2011
+ 0x3fef56195321c090, 0x3fc9ef0706e35a35, // 0.97926, 0.20261
+ 0x3fef538b1faf2d07, 0x3fca203e1b1831da, // 0.97895, 0.20411
+ 0x3fef50f81785c6b9, 0x3fca517127e3dabc, // 0.97863, 0.20561
+ 0x3fef4e603b0b2f2d, 0x3fca82a025b00451, // 0.97832, 0.20711
+ 0x3fef4bc38aa5c694, 0x3fcab3cb0ce6fe44, // 0.978, 0.20861
+ 0x3fef492206bcabb4, 0x3fcae4f1d5f3b9ab, // 0.97768, 0.21011
+ 0x3fef467bafb7bbe0, 0x3fcb16147941ca2a, // 0.97735, 0.21161
+ 0x3fef43d085ff92dd, 0x3fcb4732ef3d6722, // 0.97703, 0.21311
+ 0x3fef412089fd8adc, 0x3fcb784d30536cda, // 0.9767, 0.21461
+ 0x3fef3e6bbc1bbc65, 0x3fcba96334f15dad, // 0.97637, 0.21611
+ 0x3fef3bb21cc4fe47, 0x3fcbda74f5856330, // 0.97604, 0.2176
+ 0x3fef38f3ac64e589, 0x3fcc0b826a7e4f63, // 0.9757, 0.2191
+ 0x3fef36306b67c556, 0x3fcc3c8b8c4b9dd7, // 0.97536, 0.2206
+ 0x3fef33685a3aaef0, 0x3fcc6d90535d74dc, // 0.97503, 0.22209
+ 0x3fef309b794b719f, 0x3fcc9e90b824a6a9, // 0.97468, 0.22359
+ 0x3fef2dc9c9089a9d, 0x3fcccf8cb312b286, // 0.97434, 0.22508
+ 0x3fef2af349e17507, 0x3fcd00843c99c5f9, // 0.97399, 0.22658
+ 0x3fef2817fc4609ce, 0x3fcd31774d2cbdee, // 0.97364, 0.22807
+ 0x3fef2537e0a71f9f, 0x3fcd6265dd3f27e3, // 0.97329, 0.22957
+ 0x3fef2252f7763ada, 0x3fcd934fe5454311, // 0.97294, 0.23106
+ 0x3fef1f6941259d7a, 0x3fcdc4355db40195, // 0.97258, 0.23255
+ 0x3fef1c7abe284708, 0x3fcdf5163f01099a, // 0.97223, 0.23404
+ 0x3fef19876ef1f486, 0x3fce25f281a2b684, // 0.97187, 0.23553
+ 0x3fef168f53f7205d, 0x3fce56ca1e101a1b, // 0.9715, 0.23702
+ 0x3fef13926dad024e, 0x3fce879d0cc0fdaf, // 0.97114, 0.23851
+ 0x3fef1090bc898f5f, 0x3fceb86b462de348, // 0.97077, 0.24
+ 0x3fef0d8a410379c5, 0x3fcee934c2d006c7, // 0.9704, 0.24149
+ 0x3fef0a7efb9230d7, 0x3fcf19f97b215f1a, // 0.97003, 0.24298
+ 0x3fef076eecade0fa, 0x3fcf4ab9679c9f5c, // 0.96966, 0.24447
+ 0x3fef045a14cf738c, 0x3fcf7b7480bd3801, // 0.96928, 0.24596
+ 0x3fef014074708ed3, 0x3fcfac2abeff57ff, // 0.9689, 0.24744
+ 0x3feefe220c0b95ec, 0x3fcfdcdc1adfedf8, // 0.96852, 0.24893
+ 0x3feefafedc1ba8b7, 0x3fd006c4466e54af, // 0.96814, 0.25041
+ 0x3feef7d6e51ca3c0, 0x3fd01f1806b9fdd2, // 0.96775, 0.2519
+ 0x3feef4aa278b2032, 0x3fd037694a928cac, // 0.96737, 0.25338
+ 0x3feef178a3e473c2, 0x3fd04fb80e37fdae, // 0.96698, 0.25487
+ 0x3feeee425aa6b09a, 0x3fd068044deab002, // 0.96658, 0.25635
+ 0x3feeeb074c50a544, 0x3fd0804e05eb661e, // 0.96619, 0.25783
+ 0x3feee7c77961dc9e, 0x3fd09895327b465e, // 0.96579, 0.25931
+ 0x3feee482e25a9dbc, 0x3fd0b0d9cfdbdb90, // 0.96539, 0.26079
+ 0x3feee13987bbebdc, 0x3fd0c91bda4f158d, // 0.96499, 0.26227
+ 0x3feeddeb6a078651, 0x3fd0e15b4e1749cd, // 0.96459, 0.26375
+ 0x3feeda9889bfe86a, 0x3fd0f998277733f7, // 0.96418, 0.26523
+ 0x3feed740e7684963, 0x3fd111d262b1f677, // 0.96378, 0.26671
+ 0x3feed3e483849c51, 0x3fd12a09fc0b1b12, // 0.96337, 0.26819
+ 0x3feed0835e999009, 0x3fd1423eefc69378, // 0.96295, 0.26967
+ 0x3feecd1d792c8f10, 0x3fd15a713a28b9d9, // 0.96254, 0.27115
+ 0x3feec9b2d3c3bf84, 0x3fd172a0d7765177, // 0.96212, 0.27262
+ 0x3feec6436ee60309, 0x3fd18acdc3f4873a, // 0.9617, 0.2741
+ 0x3feec2cf4b1af6b2, 0x3fd1a2f7fbe8f243, // 0.96128, 0.27557
+ 0x3feebf5668eaf2ef, 0x3fd1bb1f7b999480, // 0.96086, 0.27705
+ 0x3feebbd8c8df0b74, 0x3fd1d3443f4cdb3d, // 0.96043, 0.27852
+ 0x3feeb8566b810f2a, 0x3fd1eb6643499fbb, // 0.96, 0.27999
+ 0x3feeb4cf515b8811, 0x3fd2038583d727bd, // 0.95957, 0.28146
+ 0x3feeb1437af9bb34, 0x3fd21ba1fd3d2623, // 0.95914, 0.28294
+ 0x3feeadb2e8e7a88e, 0x3fd233bbabc3bb72, // 0.9587, 0.28441
+ 0x3feeaa1d9bb20af3, 0x3fd24bd28bb37672, // 0.95827, 0.28588
+ 0x3feea68393e65800, 0x3fd263e6995554ba, // 0.95783, 0.28735
+ 0x3feea2e4d212c000, 0x3fd27bf7d0f2c346, // 0.95738, 0.28882
+ 0x3fee9f4156c62dda, 0x3fd294062ed59f05, // 0.95694, 0.29028
+ 0x3fee9b99229046f8, 0x3fd2ac11af483572, // 0.95649, 0.29175
+ 0x3fee97ec36016b30, 0x3fd2c41a4e954520, // 0.95605, 0.29322
+ 0x3fee943a91aab4b4, 0x3fd2dc200907fe51, // 0.95559, 0.29469
+ 0x3fee9084361df7f3, 0x3fd2f422daec0386, // 0.95514, 0.29615
+ 0x3fee8cc923edc388, 0x3fd30c22c08d6a13, // 0.95469, 0.29762
+ 0x3fee89095bad6025, 0x3fd3241fb638baaf, // 0.95423, 0.29908
+ 0x3fee8544ddf0d075, 0x3fd33c19b83af207, // 0.95377, 0.30054
+ 0x3fee817bab4cd10d, 0x3fd35410c2e18152, // 0.95331, 0.30201
+ 0x3fee7dadc456d850, 0x3fd36c04d27a4edf, // 0.95284, 0.30347
+ 0x3fee79db29a5165a, 0x3fd383f5e353b6aa, // 0.95238, 0.30493
+ 0x3fee7603dbce74e9, 0x3fd39be3f1bc8aef, // 0.95191, 0.30639
+ 0x3fee7227db6a9744, 0x3fd3b3cefa0414b7, // 0.95144, 0.30785
+ 0x3fee6e472911da27, 0x3fd3cbb6f87a146e, // 0.95096, 0.30931
+ 0x3fee6a61c55d53a7, 0x3fd3e39be96ec271, // 0.95049, 0.31077
+ 0x3fee6677b0e6d31e, 0x3fd3fb7dc932cfa4, // 0.95001, 0.31222
+ 0x3fee6288ec48e112, 0x3fd4135c94176602, // 0.94953, 0.31368
+ 0x3fee5e95781ebf1c, 0x3fd42b38466e2928, // 0.94905, 0.31514
+ 0x3fee5a9d550467d3, 0x3fd44310dc8936f0, // 0.94856, 0.31659
+ 0x3fee56a083968eb1, 0x3fd45ae652bb2800, // 0.94807, 0.31805
+ 0x3fee529f04729ffc, 0x3fd472b8a5571054, // 0.94759, 0.3195
+ 0x3fee4e98d836c0af, 0x3fd48a87d0b07fd7, // 0.94709, 0.32096
+ 0x3fee4a8dff81ce5e, 0x3fd4a253d11b82f3, // 0.9466, 0.32241
+ 0x3fee467e7af35f23, 0x3fd4ba1ca2eca31c, // 0.94611, 0.32386
+ 0x3fee426a4b2bc17e, 0x3fd4d1e24278e76a, // 0.94561, 0.32531
+ 0x3fee3e5170cbfc46, 0x3fd4e9a4ac15d520, // 0.94511, 0.32676
+ 0x3fee3a33ec75ce85, 0x3fd50163dc197047, // 0.9446, 0.32821
+ 0x3fee3611becbaf69, 0x3fd5191fceda3c35, // 0.9441, 0.32966
+ 0x3fee31eae870ce25, 0x3fd530d880af3c24, // 0.94359, 0.33111
+ 0x3fee2dbf6a0911d9, 0x3fd5488dedeff3be, // 0.94308, 0.33255
+ 0x3fee298f4439197a, 0x3fd5604012f467b4, // 0.94257, 0.334
+ 0x3fee255a77a63bb8, 0x3fd577eeec151e47, // 0.94206, 0.33545
+ 0x3fee212104f686e5, 0x3fd58f9a75ab1fdd, // 0.94154, 0.33689
+ 0x3fee1ce2ecd0c0d8, 0x3fd5a742ac0ff78d, // 0.94103, 0.33833
+ 0x3fee18a02fdc66d9, 0x3fd5bee78b9db3b6, // 0.94051, 0.33978
+ 0x3fee1458cec1ad83, 0x3fd5d68910aee686, // 0.93998, 0.34122
+ 0x3fee100cca2980ac, 0x3fd5ee27379ea693, // 0.93946, 0.34266
+ 0x3fee0bbc22bd8349, 0x3fd605c1fcc88f63, // 0.93893, 0.3441
+ 0x3fee0766d9280f54, 0x3fd61d595c88c203, // 0.9384, 0.34554
+ 0x3fee030cee1435b8, 0x3fd634ed533be58e, // 0.93787, 0.34698
+ 0x3fedfeae622dbe2b, 0x3fd64c7ddd3f27c6, // 0.93734, 0.34842
+ 0x3fedfa4b3621271d, 0x3fd6640af6f03d9e, // 0.9368, 0.34986
+ 0x3fedf5e36a9ba59c, 0x3fd67b949cad63ca, // 0.93627, 0.35129
+ 0x3fedf177004b2534, 0x3fd6931acad55f51, // 0.93573, 0.35273
+ 0x3feded05f7de47da, 0x3fd6aa9d7dc77e16, // 0.93518, 0.35416
+ 0x3fede890520465ce, 0x3fd6c21cb1e39771, // 0.93464, 0.3556
+ 0x3fede4160f6d8d81, 0x3fd6d998638a0cb5, // 0.93409, 0.35703
+ 0x3feddf9730ca837b, 0x3fd6f1108f1bc9c5, // 0.93354, 0.35846
+ 0x3feddb13b6ccc23d, 0x3fd7088530fa459e, // 0.93299, 0.3599
+ 0x3fedd68ba2267a25, 0x3fd71ff6458782ec, // 0.93244, 0.36133
+ 0x3fedd1fef38a915a, 0x3fd73763c9261092, // 0.93188, 0.36276
+ 0x3fedcd6dabaca3a5, 0x3fd74ecdb8390a3e, // 0.93133, 0.36418
+ 0x3fedc8d7cb410260, 0x3fd766340f2418f6, // 0.93077, 0.36561
+ 0x3fedc43d52fcb453, 0x3fd77d96ca4b73a6, // 0.93021, 0.36704
+ 0x3fedbf9e4395759a, 0x3fd794f5e613dfae, // 0.92964, 0.36847
+ 0x3fedbafa9dc1b78d, 0x3fd7ac515ee2b172, // 0.92907, 0.36989
+ 0x3fedb6526238a09b, 0x3fd7c3a9311dcce7, // 0.92851, 0.37132
+ 0x3fedb1a591b20c38, 0x3fd7dafd592ba621, // 0.92794, 0.37274
+ 0x3fedacf42ce68ab9, 0x3fd7f24dd37341e3, // 0.92736, 0.37416
+ 0x3feda83e348f613b, 0x3fd8099a9c5c362d, // 0.92679, 0.37559
+ 0x3feda383a9668988, 0x3fd820e3b04eaac4, // 0.92621, 0.37701
+ 0x3fed9ec48c26b1f3, 0x3fd838290bb359c8, // 0.92563, 0.37843
+ 0x3fed9a00dd8b3d46, 0x3fd84f6aaaf3903f, // 0.92505, 0.37985
+ 0x3fed95389e50429b, 0x3fd866a88a792ea0, // 0.92447, 0.38127
+ 0x3fed906bcf328d46, 0x3fd87de2a6aea963, // 0.92388, 0.38268
+ 0x3fed8b9a70ef9cb4, 0x3fd89518fbff098e, // 0.92329, 0.3841
+ 0x3fed86c48445a450, 0x3fd8ac4b86d5ed44, // 0.9227, 0.38552
+ 0x3fed81ea09f38b63, 0x3fd8c37a439f884f, // 0.92211, 0.38693
+ 0x3fed7d0b02b8ecf9, 0x3fd8daa52ec8a4af, // 0.92151, 0.38835
+ 0x3fed78276f5617c6, 0x3fd8f1cc44bea329, // 0.92092, 0.38976
+ 0x3fed733f508c0dff, 0x3fd908ef81ef7bd1, // 0.92032, 0.39117
+ 0x3fed6e52a71c8547, 0x3fd9200ee2c9be97, // 0.91972, 0.39258
+ 0x3fed696173c9e68b, 0x3fd9372a63bc93d7, // 0.91911, 0.39399
+ 0x3fed646bb7574de5, 0x3fd94e420137bce3, // 0.91851, 0.3954
+ 0x3fed5f7172888a7f, 0x3fd96555b7ab948f, // 0.9179, 0.39681
+ 0x3fed5a72a6221e73, 0x3fd97c6583890fc2, // 0.91729, 0.39822
+ 0x3fed556f52e93eb1, 0x3fd993716141bdfe, // 0.91668, 0.39962
+ 0x3fed506779a3d2d9, 0x3fd9aa794d47c9ee, // 0.91606, 0.40103
+ 0x3fed4b5b1b187524, 0x3fd9c17d440df9f2, // 0.91545, 0.40243
+ 0x3fed464a380e7242, 0x3fd9d87d4207b0ab, // 0.91483, 0.40384
+ 0x3fed4134d14dc93a, 0x3fd9ef7943a8ed8a, // 0.91421, 0.40524
+ 0x3fed3c1ae79f2b4e, 0x3fda067145664d57, // 0.91359, 0.40664
+ 0x3fed36fc7bcbfbdc, 0x3fda1d6543b50ac0, // 0.91296, 0.40804
+ 0x3fed31d98e9e503a, 0x3fda34553b0afee5, // 0.91234, 0.40944
+ 0x3fed2cb220e0ef9f, 0x3fda4b4127dea1e4, // 0.91171, 0.41084
+ 0x3fed2786335f52fc, 0x3fda622906a70b63, // 0.91107, 0.41224
+ 0x3fed2255c6e5a4e1, 0x3fda790cd3dbf31a, // 0.91044, 0.41364
+ 0x3fed1d20dc40c15c, 0x3fda8fec8bf5b166, // 0.90981, 0.41503
+ 0x3fed17e7743e35dc, 0x3fdaa6c82b6d3fc9, // 0.90917, 0.41643
+ 0x3fed12a98fac410c, 0x3fdabd9faebc3980, // 0.90853, 0.41782
+ 0x3fed0d672f59d2b9, 0x3fdad473125cdc08, // 0.90789, 0.41922
+ 0x3fed082054168bac, 0x3fdaeb4252ca07ab, // 0.90724, 0.42061
+ 0x3fed02d4feb2bd92, 0x3fdb020d6c7f4009, // 0.9066, 0.422
+ 0x3fecfd852fff6ad4, 0x3fdb18d45bf8aca6, // 0.90595, 0.42339
+ 0x3fecf830e8ce467b, 0x3fdb2f971db31972, // 0.9053, 0.42478
+ 0x3fecf2d829f1b40e, 0x3fdb4655ae2bf757, // 0.90464, 0.42617
+ 0x3feced7af43cc773, 0x3fdb5d1009e15cc0, // 0.90399, 0.42756
+ 0x3fece819488344ce, 0x3fdb73c62d520624, // 0.90333, 0.42894
+ 0x3fece2b32799a060, 0x3fdb8a7814fd5693, // 0.90267, 0.43033
+ 0x3fecdd489254fe65, 0x3fdba125bd63583e, // 0.90201, 0.43171
+ 0x3fecd7d9898b32f6, 0x3fdbb7cf2304bd01, // 0.90135, 0.43309
+ 0x3fecd2660e12c1e6, 0x3fdbce744262deee, // 0.90068, 0.43448
+ 0x3fecccee20c2de9f, 0x3fdbe51517ffc0d9, // 0.90002, 0.43586
+ 0x3fecc771c2736c09, 0x3fdbfbb1a05e0edc, // 0.89935, 0.43724
+ 0x3fecc1f0f3fcfc5c, 0x3fdc1249d8011ee7, // 0.89867, 0.43862
+ 0x3fecbc6bb638d10b, 0x3fdc28ddbb6cf145, // 0.898, 0.43999
+ 0x3fecb6e20a00da99, 0x3fdc3f6d47263129, // 0.89732, 0.44137
+ 0x3fecb153f02fb87d, 0x3fdc55f877b23537, // 0.89665, 0.44275
+ 0x3fecabc169a0b901, 0x3fdc6c7f4997000a, // 0.89597, 0.44412
+ 0x3feca62a772fd919, 0x3fdc8301b95b40c2, // 0.89528, 0.4455
+ 0x3feca08f19b9c449, 0x3fdc997fc3865388, // 0.8946, 0.44687
+ 0x3fec9aef521bd480, 0x3fdcaff964a0421d, // 0.89391, 0.44824
+ 0x3fec954b213411f5, 0x3fdcc66e9931c45d, // 0.89322, 0.44961
+ 0x3fec8fa287e13305, 0x3fdcdcdf5dc440ce, // 0.89253, 0.45098
+ 0x3fec89f587029c13, 0x3fdcf34baee1cd21, // 0.89184, 0.45235
+ 0x3fec84441f785f61, 0x3fdd09b389152ec1, // 0.89115, 0.45372
+ 0x3fec7e8e52233cf3, 0x3fdd2016e8e9db5b, // 0.89045, 0.45508
+ 0x3fec78d41fe4a267, 0x3fdd3675caebf962, // 0.88975, 0.45645
+ 0x3fec7315899eaad7, 0x3fdd4cd02ba8609c, // 0.88905, 0.45781
+ 0x3fec6d5290341eb2, 0x3fdd632607ac9aa9, // 0.88835, 0.45918
+ 0x3fec678b3488739b, 0x3fdd79775b86e389, // 0.88764, 0.46054
+ 0x3fec61bf777fcc48, 0x3fdd8fc423c62a25, // 0.88693, 0.4619
+ 0x3fec5bef59fef85a, 0x3fdda60c5cfa10d8, // 0.88622, 0.46326
+ 0x3fec561adceb743e, 0x3fddbc5003b2edf8, // 0.88551, 0.46462
+ 0x3fec5042012b6907, 0x3fddd28f1481cc58, // 0.8848, 0.46598
+ 0x3fec4a64c7a5ac4c, 0x3fdde8c98bf86bd6, // 0.88408, 0.46733
+ 0x3fec44833141c004, 0x3fddfeff66a941de, // 0.88336, 0.46869
+ 0x3fec3e9d3ee7d262, 0x3fde1530a12779f4, // 0.88264, 0.47004
+ 0x3fec38b2f180bdb1, 0x3fde2b5d3806f63b, // 0.88192, 0.4714
+ 0x3fec32c449f60831, 0x3fde418527dc4ffa, // 0.8812, 0.47275
+ 0x3fec2cd14931e3f1, 0x3fde57a86d3cd824, // 0.88047, 0.4741
+ 0x3fec26d9f01f2eaf, 0x3fde6dc704be97e2, // 0.87974, 0.47545
+ 0x3fec20de3fa971b0, 0x3fde83e0eaf85113, // 0.87901, 0.4768
+ 0x3fec1ade38bce19b, 0x3fde99f61c817eda, // 0.87828, 0.47815
+ 0x3fec14d9dc465e58, 0x3fdeb00695f25620, // 0.87755, 0.47949
+ 0x3fec0ed12b3372e9, 0x3fdec61253e3c61b, // 0.87681, 0.48084
+ 0x3fec08c426725549, 0x3fdedc1952ef78d5, // 0.87607, 0.48218
+ 0x3fec02b2cef1e641, 0x3fdef21b8fafd3b5, // 0.87533, 0.48353
+ 0x3febfc9d25a1b147, 0x3fdf081906bff7fd, // 0.87459, 0.48487
+ 0x3febf6832b71ec5b, 0x3fdf1e11b4bbc35c, // 0.87384, 0.48621
+ 0x3febf064e15377dd, 0x3fdf3405963fd068, // 0.87309, 0.48755
+ 0x3febea424837de6d, 0x3fdf49f4a7e97729, // 0.87235, 0.48889
+ 0x3febe41b611154c1, 0x3fdf5fdee656cda3, // 0.8716, 0.49023
+ 0x3febddf02cd2b983, 0x3fdf75c44e26a852, // 0.87084, 0.49156
+ 0x3febd7c0ac6f952a, 0x3fdf8ba4dbf89aba, // 0.87009, 0.4929
+ 0x3febd18ce0dc19d6, 0x3fdfa1808c6cf7e0, // 0.86933, 0.49423
+ 0x3febcb54cb0d2327, 0x3fdfb7575c24d2de, // 0.86857, 0.49557
+ 0x3febc5186bf8361d, 0x3fdfcd2947c1ff57, // 0.86781, 0.4969
+ 0x3febbed7c49380ea, 0x3fdfe2f64be7120f, // 0.86705, 0.49823
+ 0x3febb892d5d5dad5, 0x3fdff8be6537615e, // 0.86628, 0.49956
+ 0x3febb249a0b6c40d, 0x3fe00740c82b82e0, // 0.86551, 0.50089
+ 0x3febabfc262e6586, 0x3fe0121fe4f56d2c, // 0.86474, 0.50221
+ 0x3feba5aa673590d2, 0x3fe01cfc874c3eb7, // 0.86397, 0.50354
+ 0x3feb9f5464c5bffc, 0x3fe027d6ad83287e, // 0.8632, 0.50486
+ 0x3feb98fa1fd9155e, 0x3fe032ae55edbd95, // 0.86242, 0.50619
+ 0x3feb929b996a5b7f, 0x3fe03d837edff370, // 0.86165, 0.50751
+ 0x3feb8c38d27504e9, 0x3fe0485626ae221a, // 0.86087, 0.50883
+ 0x3feb85d1cbf52c02, 0x3fe053264bad0483, // 0.86009, 0.51015
+ 0x3feb7f6686e792ea, 0x3fe05df3ec31b8b6, // 0.8593, 0.51147
+ 0x3feb78f70449a34b, 0x3fe068bf0691c028, // 0.85852, 0.51279
+ 0x3feb728345196e3e, 0x3fe073879922ffed, // 0.85773, 0.5141
+ 0x3feb6c0b4a55ac17, 0x3fe07e4da23bc102, // 0.85694, 0.51542
+ 0x3feb658f14fdbc47, 0x3fe089112032b08c, // 0.85615, 0.51673
+ 0x3feb5f0ea611a532, 0x3fe093d2115ee018, // 0.85535, 0.51804
+ 0x3feb5889fe921405, 0x3fe09e907417c5e1, // 0.85456, 0.51936
+ 0x3feb52011f805c92, 0x3fe0a94c46b53d0b, // 0.85376, 0.52067
+ 0x3feb4b7409de7925, 0x3fe0b405878f85ec, // 0.85296, 0.52198
+ 0x3feb44e2beaf0a61, 0x3fe0bebc34ff4646, // 0.85216, 0.52328
+ 0x3feb3e4d3ef55712, 0x3fe0c9704d5d898f, // 0.85136, 0.52459
+ 0x3feb37b38bb54c09, 0x3fe0d421cf03c12b, // 0.85055, 0.5259
+ 0x3feb3115a5f37bf4, 0x3fe0ded0b84bc4b5, // 0.84974, 0.5272
+ 0x3feb2a738eb51f33, 0x3fe0e97d078fd23b, // 0.84893, 0.5285
+ 0x3feb23cd470013b4, 0x3fe0f426bb2a8e7d, // 0.84812, 0.5298
+ 0x3feb1d22cfdadcc6, 0x3fe0fecdd1770537, // 0.84731, 0.5311
+ 0x3feb16742a4ca2f5, 0x3fe1097248d0a956, // 0.84649, 0.5324
+ 0x3feb0fc1575d33db, 0x3fe114141f935545, // 0.84567, 0.5337
+ 0x3feb090a58150200, 0x3fe11eb3541b4b22, // 0.84485, 0.535
+ 0x3feb024f2d7d24a9, 0x3fe1294fe4c5350a, // 0.84403, 0.53629
+ 0x3feafb8fd89f57b6, 0x3fe133e9cfee254e, // 0.84321, 0.53759
+ 0x3feaf4cc5a85fb73, 0x3fe13e8113f396c1, // 0.84238, 0.53888
+ 0x3feaee04b43c1474, 0x3fe14915af336ceb, // 0.84155, 0.54017
+ 0x3feae738e6cd4b67, 0x3fe153a7a00bf453, // 0.84073, 0.54146
+ 0x3feae068f345ecef, 0x3fe15e36e4dbe2bc, // 0.83989, 0.54275
+ 0x3fead994dab2e979, 0x3fe168c37c025764, // 0.83906, 0.54404
+ 0x3fead2bc9e21d511, 0x3fe1734d63dedb49, // 0.83822, 0.54532
+ 0x3feacbe03ea0e73b, 0x3fe17dd49ad16161, // 0.83739, 0.54661
+ 0x3feac4ffbd3efac8, 0x3fe188591f3a46e5, // 0.83655, 0.54789
+ 0x3feabe1b1b0b8dac, 0x3fe192daef7a5386, // 0.83571, 0.54918
+ 0x3feab7325916c0d4, 0x3fe19d5a09f2b9b8, // 0.83486, 0.55046
+ 0x3feab045787157ff, 0x3fe1a7d66d0516e6, // 0.83402, 0.55174
+ 0x3feaa9547a2cb98e, 0x3fe1b250171373be, // 0.83317, 0.55302
+ 0x3feaa25f5f5aee60, 0x3fe1bcc706804467, // 0.83232, 0.55429
+ 0x3fea9b66290ea1a3, 0x3fe1c73b39ae68c8, // 0.83147, 0.55557
+ 0x3fea9468d85b20ae, 0x3fe1d1acaf012cc2, // 0.83062, 0.55685
+ 0x3fea8d676e545ad2, 0x3fe1dc1b64dc4872, // 0.82976, 0.55812
+ 0x3fea8661ec0ee133, 0x3fe1e68759a3e074, // 0.8289, 0.55939
+ 0x3fea7f58529fe69d, 0x3fe1f0f08bbc861b, // 0.82805, 0.56066
+ 0x3fea784aa31d3f55, 0x3fe1fb56f98b37b8, // 0.82718, 0.56193
+ 0x3fea7138de9d60f5, 0x3fe205baa17560d6, // 0.82632, 0.5632
+ 0x3fea6a230637623b, 0x3fe2101b81e0da78, // 0.82546, 0.56447
+ 0x3fea63091b02fae2, 0x3fe21a799933eb58, // 0.82459, 0.56573
+ 0x3fea5beb1e188375, 0x3fe224d4e5d5482e, // 0.82372, 0.567
+ 0x3fea54c91090f524, 0x3fe22f2d662c13e1, // 0.82285, 0.56826
+ 0x3fea4da2f385e997, 0x3fe23983189fdfd5, // 0.82198, 0.56952
+ 0x3fea4678c8119ac8, 0x3fe243d5fb98ac1f, // 0.8211, 0.57078
+ 0x3fea3f4a8f4ee2d2, 0x3fe24e260d7ee7c9, // 0.82023, 0.57204
+ 0x3fea38184a593bc6, 0x3fe258734cbb7110, // 0.81935, 0.5733
+ 0x3fea30e1fa4cbf81, 0x3fe262bdb7b795a2, // 0.81847, 0.57455
+ 0x3fea29a7a0462782, 0x3fe26d054cdd12df, // 0.81758, 0.57581
+ 0x3fea22693d62ccb9, 0x3fe2774a0a961612, // 0.8167, 0.57706
+ 0x3fea1b26d2c0a75e, 0x3fe2818bef4d3cba, // 0.81581, 0.57831
+ 0x3fea13e0617e4ec7, 0x3fe28bcaf96d94ba, // 0.81493, 0.57956
+ 0x3fea0c95eabaf937, 0x3fe2960727629ca8, // 0.81404, 0.58081
+ 0x3fea05476f967bb5, 0x3fe2a040779843fb, // 0.81314, 0.58206
+ 0x3fe9fdf4f13149de, 0x3fe2aa76e87aeb58, // 0.81225, 0.58331
+ 0x3fe9f69e70ac75bc, 0x3fe2b4aa787764c4, // 0.81135, 0.58455
+ 0x3fe9ef43ef29af94, 0x3fe2bedb25faf3ea, // 0.81046, 0.5858
+ 0x3fe9e7e56dcb45bd, 0x3fe2c908ef734e57, // 0.80956, 0.58704
+ 0x3fe9e082edb42472, 0x3fe2d333d34e9bb7, // 0.80866, 0.58828
+ 0x3fe9d91c7007d5a6, 0x3fe2dd5bcffb7616, // 0.80775, 0.58952
+ 0x3fe9d1b1f5ea80d6, 0x3fe2e780e3e8ea16, // 0.80685, 0.59076
+ 0x3fe9ca438080eadb, 0x3fe2f1a30d86773a, // 0.80594, 0.592
+ 0x3fe9c2d110f075c3, 0x3fe2fbc24b441015, // 0.80503, 0.59323
+ 0x3fe9bb5aa85f2098, 0x3fe305de9b921a94, // 0.80412, 0.59447
+ 0x3fe9b3e047f38741, 0x3fe30ff7fce17035, // 0.80321, 0.5957
+ 0x3fe9ac61f0d4e247, 0x3fe31a0e6da35e44, // 0.80229, 0.59693
+ 0x3fe9a4dfa42b06b2, 0x3fe32421ec49a620, // 0.80138, 0.59816
+ 0x3fe99d59631e65d5, 0x3fe32e3277467d6b, // 0.80046, 0.59939
+ 0x3fe995cf2ed80d22, 0x3fe338400d0c8e57, // 0.79954, 0.60062
+ 0x3fe98e410881a600, 0x3fe3424aac0ef7d6, // 0.79861, 0.60184
+ 0x3fe986aef1457594, 0x3fe34c5252c14de1, // 0.79769, 0.60307
+ 0x3fe97f18ea4e5c9e, 0x3fe35656ff9799ae, // 0.79676, 0.60429
+ 0x3fe9777ef4c7d742, 0x3fe36058b10659f3, // 0.79584, 0.60551
+ 0x3fe96fe111ddfce0, 0x3fe36a576582831b, // 0.79491, 0.60673
+ 0x3fe9683f42bd7fe1, 0x3fe374531b817f8d, // 0.79398, 0.60795
+ 0x3fe960998893ad8c, 0x3fe37e4bd1792fe2, // 0.79304, 0.60917
+ 0x3fe958efe48e6dd7, 0x3fe3884185dfeb22, // 0.79211, 0.61038
+ 0x3fe9514257dc4335, 0x3fe39234372c7f04, // 0.79117, 0.6116
+ 0x3fe94990e3ac4a6c, 0x3fe39c23e3d63029, // 0.79023, 0.61281
+ 0x3fe941db892e3a65, 0x3fe3a6108a54ba58, // 0.78929, 0.61402
+ 0x3fe93a22499263fc, 0x3fe3affa292050b9, // 0.78835, 0.61523
+ 0x3fe932652609b1cf, 0x3fe3b9e0beb19e18, // 0.7874, 0.61644
+ 0x3fe92aa41fc5a815, 0x3fe3c3c44981c517, // 0.78646, 0.61765
+ 0x3fe922df37f8646a, 0x3fe3cda4c80a6076, // 0.78551, 0.61885
+ 0x3fe91b166fd49da2, 0x3fe3d78238c58343, // 0.78456, 0.62006
+ 0x3fe91349c88da398, 0x3fe3e15c9a2db922, // 0.7836, 0.62126
+ 0x3fe90b7943575efe, 0x3fe3eb33eabe0680, // 0.78265, 0.62246
+ 0x3fe903a4e1665133, 0x3fe3f50828f1e8d2, // 0.78169, 0.62366
+ 0x3fe8fbcca3ef940d, 0x3fe3fed9534556d4, // 0.78074, 0.62486
+ 0x3fe8f3f08c28d9ac, 0x3fe408a76834c0c0, // 0.77978, 0.62606
+ 0x3fe8ec109b486c49, 0x3fe41272663d108c, // 0.77882, 0.62725
+ 0x3fe8e42cd2852e0a, 0x3fe41c3a4bdbaa26, // 0.77785, 0.62845
+ 0x3fe8dc45331698cc, 0x3fe425ff178e6bb1, // 0.77689, 0.62964
+ 0x3fe8d459be34bdfa, 0x3fe42fc0c7d3adbb, // 0.77592, 0.63083
+ 0x3fe8cc6a75184655, 0x3fe4397f5b2a4380, // 0.77495, 0.63202
+ 0x3fe8c47758fa71cb, 0x3fe4433ad0117b1d, // 0.77398, 0.63321
+ 0x3fe8bc806b151741, 0x3fe44cf325091dd6, // 0.77301, 0.63439
+ 0x3fe8b485aca2a468, 0x3fe456a858917046, // 0.77204, 0.63558
+ 0x3fe8ac871ede1d88, 0x3fe4605a692b32a2, // 0.77106, 0.63676
+ 0x3fe8a484c3031d50, 0x3fe46a095557a0f1, // 0.77008, 0.63794
+ 0x3fe89c7e9a4dd4ab, 0x3fe473b51b987347, // 0.7691, 0.63912
+ 0x3fe89474a5fb0a84, 0x3fe47d5dba6fde01, // 0.76812, 0.6403
+ 0x3fe88c66e7481ba1, 0x3fe48703306091fe, // 0.76714, 0.64148
+ 0x3fe884555f72fa6b, 0x3fe490a57bedbcdf, // 0.76615, 0.64266
+ 0x3fe87c400fba2ebf, 0x3fe49a449b9b0938, // 0.76517, 0.64383
+ 0x3fe87426f95cd5bd, 0x3fe4a3e08dec9ed6, // 0.76418, 0.645
+ 0x3fe86c0a1d9aa195, 0x3fe4ad79516722f0, // 0.76319, 0.64618
+ 0x3fe863e97db3d95a, 0x3fe4b70ee48fb869, // 0.7622, 0.64735
+ 0x3fe85bc51ae958cc, 0x3fe4c0a145ec0004, // 0.7612, 0.64851
+ 0x3fe8539cf67c9029, 0x3fe4ca30740218a3, // 0.76021, 0.64968
+ 0x3fe84b7111af83f9, 0x3fe4d3bc6d589f80, // 0.75921, 0.65085
+ 0x3fe843416dc4cce2, 0x3fe4dd453076b064, // 0.75821, 0.65201
+ 0x3fe83b0e0bff976e, 0x3fe4e6cabbe3e5e9, // 0.75721, 0.65317
+ 0x3fe832d6eda3a3e0, 0x3fe4f04d0e2859aa, // 0.75621, 0.65433
+ 0x3fe82a9c13f545ff, 0x3fe4f9cc25cca486, // 0.7552, 0.65549
+ 0x3fe8225d803964e5, 0x3fe503480159ded2, // 0.75419, 0.65665
+ 0x3fe81a1b33b57acc, 0x3fe50cc09f59a09b, // 0.75319, 0.65781
+ 0x3fe811d52faf94dc, 0x3fe51635fe5601d7, // 0.75218, 0.65896
+ 0x3fe8098b756e52fa, 0x3fe51fa81cd99aa6, // 0.75117, 0.66011
+ 0x3fe8013e0638e795, 0x3fe52916f96f8388, // 0.75015, 0.66127
+ 0x3fe7f8ece3571771, 0x3fe5328292a35596, // 0.74914, 0.66242
+ 0x3fe7f0980e113978, 0x3fe53beae7012abe, // 0.74812, 0.66356
+ 0x3fe7e83f87b03686, 0x3fe5454ff5159dfb, // 0.7471, 0.66471
+ 0x3fe7dfe3517d8937, 0x3fe54eb1bb6dcb8f, // 0.74608, 0.66586
+ 0x3fe7d7836cc33db2, 0x3fe5581038975137, // 0.74506, 0.667
+ 0x3fe7cf1fdacbf179, 0x3fe5616b6b204e6e, // 0.74403, 0.66814
+ 0x3fe7c6b89ce2d333, 0x3fe56ac35197649e, // 0.74301, 0.66928
+ 0x3fe7be4db453a27c, 0x3fe57417ea8bb75c, // 0.74198, 0.67042
+ 0x3fe7b5df226aafb0, 0x3fe57d69348cec9f, // 0.74095, 0.67156
+ 0x3fe7ad6ce874dbb6, 0x3fe586b72e2b2cfd, // 0.73992, 0.67269
+ 0x3fe7a4f707bf97d2, 0x3fe59001d5f723df, // 0.73889, 0.67383
+ 0x3fe79c7d8198e56e, 0x3fe599492a81ffbc, // 0.73785, 0.67496
+ 0x3fe79400574f55e4, 0x3fe5a28d2a5d7250, // 0.73682, 0.67609
+ 0x3fe78b7f8a320a52, 0x3fe5abcdd41bb0d8, // 0.73578, 0.67722
+ 0x3fe782fb1b90b35b, 0x3fe5b50b264f7448, // 0.73474, 0.67835
+ 0x3fe77a730cbb9100, 0x3fe5be451f8bf980, // 0.7337, 0.67948
+ 0x3fe771e75f037261, 0x3fe5c77bbe65018c, // 0.73265, 0.6806
+ 0x3fe7695813b9b594, 0x3fe5d0af016ed1d4, // 0.73161, 0.68172
+ 0x3fe760c52c304764, 0x3fe5d9dee73e345c, // 0.73056, 0.68285
+ 0x3fe7582ea9b9a329, 0x3fe5e30b6e6877f3, // 0.72951, 0.68397
+ 0x3fe74f948da8d28d, 0x3fe5ec3495837074, // 0.72846, 0.68508
+ 0x3fe746f6d9516d59, 0x3fe5f55a5b2576f8, // 0.72741, 0.6862
+ 0x3fe73e558e079942, 0x3fe5fe7cbde56a0f, // 0.72636, 0.68732
+ 0x3fe735b0ad2009b2, 0x3fe6079bbc5aadfa, // 0.7253, 0.68843
+ 0x3fe72d0837efff97, 0x3fe610b7551d2cde, // 0.72425, 0.68954
+ 0x3fe7245c2fcd492a, 0x3fe619cf86c55702, // 0.72319, 0.69065
+ 0x3fe71bac960e41bf, 0x3fe622e44fec22ff, // 0.72213, 0.69176
+ 0x3fe712f96c09d18d, 0x3fe62bf5af2b0dfd, // 0.72107, 0.69287
+ 0x3fe70a42b3176d7a, 0x3fe63503a31c1be8, // 0.72, 0.69397
+ 0x3fe701886c8f16e6, 0x3fe63e0e2a59d7aa, // 0.71894, 0.69508
+ 0x3fe6f8ca99c95b75, 0x3fe64715437f535b, // 0.71787, 0.69618
+ 0x3fe6f0093c1f54de, 0x3fe65018ed28287f, // 0.7168, 0.69728
+ 0x3fe6e74454eaa8ae, 0x3fe6591925f0783e, // 0.71573, 0.69838
+ 0x3fe6de7be585881d, 0x3fe66215ec74eb91, // 0.71466, 0.69947
+ 0x3fe6d5afef4aafcc, 0x3fe66b0f3f52b386, // 0.71358, 0.70057
+ 0x3fe6cce07395679f, 0x3fe674051d27896c, // 0.71251, 0.70166
+ 0x3fe6c40d73c18275, 0x3fe67cf78491af10, // 0.71143, 0.70275
+ 0x3fe6bb36f12b5e06, 0x3fe685e6742feeef, // 0.71035, 0.70385
+ 0x3fe6b25ced2fe29c, 0x3fe68ed1eaa19c71, // 0.70927, 0.70493
+ 0x3fe6a97f692c82ea, 0x3fe697b9e686941c, // 0.70819, 0.70602
+ 0x3fe6a09e667f3bcc, 0x3fe6a09e667f3bcc, // 0.70711, 0.70711
+ 0x3fe697b9e686941c, 0x3fe6a97f692c82ea, // 0.70602, 0.70819
+ 0x3fe68ed1eaa19c71, 0x3fe6b25ced2fe29c, // 0.70493, 0.70927
+ 0x3fe685e6742feeef, 0x3fe6bb36f12b5e06, // 0.70385, 0.71035
+ 0x3fe67cf78491af10, 0x3fe6c40d73c18275, // 0.70275, 0.71143
+ 0x3fe674051d27896c, 0x3fe6cce07395679f, // 0.70166, 0.71251
+ 0x3fe66b0f3f52b386, 0x3fe6d5afef4aafcc, // 0.70057, 0.71358
+ 0x3fe66215ec74eb91, 0x3fe6de7be585881d, // 0.69947, 0.71466
+ 0x3fe6591925f0783e, 0x3fe6e74454eaa8ae, // 0.69838, 0.71573
+ 0x3fe65018ed28287f, 0x3fe6f0093c1f54de, // 0.69728, 0.7168
+ 0x3fe64715437f535b, 0x3fe6f8ca99c95b75, // 0.69618, 0.71787
+ 0x3fe63e0e2a59d7aa, 0x3fe701886c8f16e6, // 0.69508, 0.71894
+ 0x3fe63503a31c1be8, 0x3fe70a42b3176d7a, // 0.69397, 0.72
+ 0x3fe62bf5af2b0dfd, 0x3fe712f96c09d18d, // 0.69287, 0.72107
+ 0x3fe622e44fec22ff, 0x3fe71bac960e41bf, // 0.69176, 0.72213
+ 0x3fe619cf86c55702, 0x3fe7245c2fcd492a, // 0.69065, 0.72319
+ 0x3fe610b7551d2cde, 0x3fe72d0837efff97, // 0.68954, 0.72425
+ 0x3fe6079bbc5aadfa, 0x3fe735b0ad2009b2, // 0.68843, 0.7253
+ 0x3fe5fe7cbde56a0f, 0x3fe73e558e079942, // 0.68732, 0.72636
+ 0x3fe5f55a5b2576f8, 0x3fe746f6d9516d59, // 0.6862, 0.72741
+ 0x3fe5ec3495837074, 0x3fe74f948da8d28d, // 0.68508, 0.72846
+ 0x3fe5e30b6e6877f3, 0x3fe7582ea9b9a329, // 0.68397, 0.72951
+ 0x3fe5d9dee73e345c, 0x3fe760c52c304764, // 0.68285, 0.73056
+ 0x3fe5d0af016ed1d4, 0x3fe7695813b9b594, // 0.68172, 0.73161
+ 0x3fe5c77bbe65018c, 0x3fe771e75f037261, // 0.6806, 0.73265
+ 0x3fe5be451f8bf980, 0x3fe77a730cbb9100, // 0.67948, 0.7337
+ 0x3fe5b50b264f7448, 0x3fe782fb1b90b35b, // 0.67835, 0.73474
+ 0x3fe5abcdd41bb0d8, 0x3fe78b7f8a320a52, // 0.67722, 0.73578
+ 0x3fe5a28d2a5d7250, 0x3fe79400574f55e4, // 0.67609, 0.73682
+ 0x3fe599492a81ffbc, 0x3fe79c7d8198e56e, // 0.67496, 0.73785
+ 0x3fe59001d5f723df, 0x3fe7a4f707bf97d2, // 0.67383, 0.73889
+ 0x3fe586b72e2b2cfd, 0x3fe7ad6ce874dbb6, // 0.67269, 0.73992
+ 0x3fe57d69348cec9f, 0x3fe7b5df226aafb0, // 0.67156, 0.74095
+ 0x3fe57417ea8bb75c, 0x3fe7be4db453a27c, // 0.67042, 0.74198
+ 0x3fe56ac35197649e, 0x3fe7c6b89ce2d333, // 0.66928, 0.74301
+ 0x3fe5616b6b204e6e, 0x3fe7cf1fdacbf179, // 0.66814, 0.74403
+ 0x3fe5581038975137, 0x3fe7d7836cc33db2, // 0.667, 0.74506
+ 0x3fe54eb1bb6dcb8f, 0x3fe7dfe3517d8937, // 0.66586, 0.74608
+ 0x3fe5454ff5159dfb, 0x3fe7e83f87b03686, // 0.66471, 0.7471
+ 0x3fe53beae7012abe, 0x3fe7f0980e113978, // 0.66356, 0.74812
+ 0x3fe5328292a35596, 0x3fe7f8ece3571771, // 0.66242, 0.74914
+ 0x3fe52916f96f8388, 0x3fe8013e0638e795, // 0.66127, 0.75015
+ 0x3fe51fa81cd99aa6, 0x3fe8098b756e52fa, // 0.66011, 0.75117
+ 0x3fe51635fe5601d7, 0x3fe811d52faf94dc, // 0.65896, 0.75218
+ 0x3fe50cc09f59a09b, 0x3fe81a1b33b57acc, // 0.65781, 0.75319
+ 0x3fe503480159ded2, 0x3fe8225d803964e5, // 0.65665, 0.75419
+ 0x3fe4f9cc25cca486, 0x3fe82a9c13f545ff, // 0.65549, 0.7552
+ 0x3fe4f04d0e2859aa, 0x3fe832d6eda3a3e0, // 0.65433, 0.75621
+ 0x3fe4e6cabbe3e5e9, 0x3fe83b0e0bff976e, // 0.65317, 0.75721
+ 0x3fe4dd453076b064, 0x3fe843416dc4cce2, // 0.65201, 0.75821
+ 0x3fe4d3bc6d589f80, 0x3fe84b7111af83f9, // 0.65085, 0.75921
+ 0x3fe4ca30740218a3, 0x3fe8539cf67c9029, // 0.64968, 0.76021
+ 0x3fe4c0a145ec0004, 0x3fe85bc51ae958cc, // 0.64851, 0.7612
+ 0x3fe4b70ee48fb869, 0x3fe863e97db3d95a, // 0.64735, 0.7622
+ 0x3fe4ad79516722f0, 0x3fe86c0a1d9aa195, // 0.64618, 0.76319
+ 0x3fe4a3e08dec9ed6, 0x3fe87426f95cd5bd, // 0.645, 0.76418
+ 0x3fe49a449b9b0938, 0x3fe87c400fba2ebf, // 0.64383, 0.76517
+ 0x3fe490a57bedbcdf, 0x3fe884555f72fa6b, // 0.64266, 0.76615
+ 0x3fe48703306091fe, 0x3fe88c66e7481ba1, // 0.64148, 0.76714
+ 0x3fe47d5dba6fde01, 0x3fe89474a5fb0a84, // 0.6403, 0.76812
+ 0x3fe473b51b987347, 0x3fe89c7e9a4dd4ab, // 0.63912, 0.7691
+ 0x3fe46a095557a0f1, 0x3fe8a484c3031d50, // 0.63794, 0.77008
+ 0x3fe4605a692b32a2, 0x3fe8ac871ede1d88, // 0.63676, 0.77106
+ 0x3fe456a858917046, 0x3fe8b485aca2a468, // 0.63558, 0.77204
+ 0x3fe44cf325091dd6, 0x3fe8bc806b151741, // 0.63439, 0.77301
+ 0x3fe4433ad0117b1d, 0x3fe8c47758fa71cb, // 0.63321, 0.77398
+ 0x3fe4397f5b2a4380, 0x3fe8cc6a75184655, // 0.63202, 0.77495
+ 0x3fe42fc0c7d3adbb, 0x3fe8d459be34bdfa, // 0.63083, 0.77592
+ 0x3fe425ff178e6bb1, 0x3fe8dc45331698cc, // 0.62964, 0.77689
+ 0x3fe41c3a4bdbaa26, 0x3fe8e42cd2852e0a, // 0.62845, 0.77785
+ 0x3fe41272663d108c, 0x3fe8ec109b486c49, // 0.62725, 0.77882
+ 0x3fe408a76834c0c0, 0x3fe8f3f08c28d9ac, // 0.62606, 0.77978
+ 0x3fe3fed9534556d4, 0x3fe8fbcca3ef940d, // 0.62486, 0.78074
+ 0x3fe3f50828f1e8d2, 0x3fe903a4e1665133, // 0.62366, 0.78169
+ 0x3fe3eb33eabe0680, 0x3fe90b7943575efe, // 0.62246, 0.78265
+ 0x3fe3e15c9a2db922, 0x3fe91349c88da398, // 0.62126, 0.7836
+ 0x3fe3d78238c58343, 0x3fe91b166fd49da2, // 0.62006, 0.78456
+ 0x3fe3cda4c80a6076, 0x3fe922df37f8646a, // 0.61885, 0.78551
+ 0x3fe3c3c44981c517, 0x3fe92aa41fc5a815, // 0.61765, 0.78646
+ 0x3fe3b9e0beb19e18, 0x3fe932652609b1cf, // 0.61644, 0.7874
+ 0x3fe3affa292050b9, 0x3fe93a22499263fc, // 0.61523, 0.78835
+ 0x3fe3a6108a54ba58, 0x3fe941db892e3a65, // 0.61402, 0.78929
+ 0x3fe39c23e3d63029, 0x3fe94990e3ac4a6c, // 0.61281, 0.79023
+ 0x3fe39234372c7f04, 0x3fe9514257dc4335, // 0.6116, 0.79117
+ 0x3fe3884185dfeb22, 0x3fe958efe48e6dd7, // 0.61038, 0.79211
+ 0x3fe37e4bd1792fe2, 0x3fe960998893ad8c, // 0.60917, 0.79304
+ 0x3fe374531b817f8d, 0x3fe9683f42bd7fe1, // 0.60795, 0.79398
+ 0x3fe36a576582831b, 0x3fe96fe111ddfce0, // 0.60673, 0.79491
+ 0x3fe36058b10659f3, 0x3fe9777ef4c7d742, // 0.60551, 0.79584
+ 0x3fe35656ff9799ae, 0x3fe97f18ea4e5c9e, // 0.60429, 0.79676
+ 0x3fe34c5252c14de1, 0x3fe986aef1457594, // 0.60307, 0.79769
+ 0x3fe3424aac0ef7d6, 0x3fe98e410881a600, // 0.60184, 0.79861
+ 0x3fe338400d0c8e57, 0x3fe995cf2ed80d22, // 0.60062, 0.79954
+ 0x3fe32e3277467d6b, 0x3fe99d59631e65d5, // 0.59939, 0.80046
+ 0x3fe32421ec49a620, 0x3fe9a4dfa42b06b2, // 0.59816, 0.80138
+ 0x3fe31a0e6da35e44, 0x3fe9ac61f0d4e247, // 0.59693, 0.80229
+ 0x3fe30ff7fce17035, 0x3fe9b3e047f38741, // 0.5957, 0.80321
+ 0x3fe305de9b921a94, 0x3fe9bb5aa85f2098, // 0.59447, 0.80412
+ 0x3fe2fbc24b441015, 0x3fe9c2d110f075c3, // 0.59323, 0.80503
+ 0x3fe2f1a30d86773a, 0x3fe9ca438080eadb, // 0.592, 0.80594
+ 0x3fe2e780e3e8ea16, 0x3fe9d1b1f5ea80d6, // 0.59076, 0.80685
+ 0x3fe2dd5bcffb7616, 0x3fe9d91c7007d5a6, // 0.58952, 0.80775
+ 0x3fe2d333d34e9bb7, 0x3fe9e082edb42472, // 0.58828, 0.80866
+ 0x3fe2c908ef734e57, 0x3fe9e7e56dcb45bd, // 0.58704, 0.80956
+ 0x3fe2bedb25faf3ea, 0x3fe9ef43ef29af94, // 0.5858, 0.81046
+ 0x3fe2b4aa787764c4, 0x3fe9f69e70ac75bc, // 0.58455, 0.81135
+ 0x3fe2aa76e87aeb58, 0x3fe9fdf4f13149de, // 0.58331, 0.81225
+ 0x3fe2a040779843fb, 0x3fea05476f967bb5, // 0.58206, 0.81314
+ 0x3fe2960727629ca8, 0x3fea0c95eabaf937, // 0.58081, 0.81404
+ 0x3fe28bcaf96d94ba, 0x3fea13e0617e4ec7, // 0.57956, 0.81493
+ 0x3fe2818bef4d3cba, 0x3fea1b26d2c0a75e, // 0.57831, 0.81581
+ 0x3fe2774a0a961612, 0x3fea22693d62ccb9, // 0.57706, 0.8167
+ 0x3fe26d054cdd12df, 0x3fea29a7a0462782, // 0.57581, 0.81758
+ 0x3fe262bdb7b795a2, 0x3fea30e1fa4cbf81, // 0.57455, 0.81847
+ 0x3fe258734cbb7110, 0x3fea38184a593bc6, // 0.5733, 0.81935
+ 0x3fe24e260d7ee7c9, 0x3fea3f4a8f4ee2d2, // 0.57204, 0.82023
+ 0x3fe243d5fb98ac1f, 0x3fea4678c8119ac8, // 0.57078, 0.8211
+ 0x3fe23983189fdfd5, 0x3fea4da2f385e997, // 0.56952, 0.82198
+ 0x3fe22f2d662c13e1, 0x3fea54c91090f524, // 0.56826, 0.82285
+ 0x3fe224d4e5d5482e, 0x3fea5beb1e188375, // 0.567, 0.82372
+ 0x3fe21a799933eb58, 0x3fea63091b02fae2, // 0.56573, 0.82459
+ 0x3fe2101b81e0da78, 0x3fea6a230637623b, // 0.56447, 0.82546
+ 0x3fe205baa17560d6, 0x3fea7138de9d60f5, // 0.5632, 0.82632
+ 0x3fe1fb56f98b37b8, 0x3fea784aa31d3f55, // 0.56193, 0.82718
+ 0x3fe1f0f08bbc861b, 0x3fea7f58529fe69d, // 0.56066, 0.82805
+ 0x3fe1e68759a3e074, 0x3fea8661ec0ee133, // 0.55939, 0.8289
+ 0x3fe1dc1b64dc4872, 0x3fea8d676e545ad2, // 0.55812, 0.82976
+ 0x3fe1d1acaf012cc2, 0x3fea9468d85b20ae, // 0.55685, 0.83062
+ 0x3fe1c73b39ae68c8, 0x3fea9b66290ea1a3, // 0.55557, 0.83147
+ 0x3fe1bcc706804467, 0x3feaa25f5f5aee60, // 0.55429, 0.83232
+ 0x3fe1b250171373be, 0x3feaa9547a2cb98e, // 0.55302, 0.83317
+ 0x3fe1a7d66d0516e6, 0x3feab045787157ff, // 0.55174, 0.83402
+ 0x3fe19d5a09f2b9b8, 0x3feab7325916c0d4, // 0.55046, 0.83486
+ 0x3fe192daef7a5386, 0x3feabe1b1b0b8dac, // 0.54918, 0.83571
+ 0x3fe188591f3a46e5, 0x3feac4ffbd3efac8, // 0.54789, 0.83655
+ 0x3fe17dd49ad16161, 0x3feacbe03ea0e73b, // 0.54661, 0.83739
+ 0x3fe1734d63dedb49, 0x3fead2bc9e21d511, // 0.54532, 0.83822
+ 0x3fe168c37c025764, 0x3fead994dab2e979, // 0.54404, 0.83906
+ 0x3fe15e36e4dbe2bc, 0x3feae068f345ecef, // 0.54275, 0.83989
+ 0x3fe153a7a00bf453, 0x3feae738e6cd4b67, // 0.54146, 0.84073
+ 0x3fe14915af336ceb, 0x3feaee04b43c1474, // 0.54017, 0.84155
+ 0x3fe13e8113f396c1, 0x3feaf4cc5a85fb73, // 0.53888, 0.84238
+ 0x3fe133e9cfee254e, 0x3feafb8fd89f57b6, // 0.53759, 0.84321
+ 0x3fe1294fe4c5350a, 0x3feb024f2d7d24a9, // 0.53629, 0.84403
+ 0x3fe11eb3541b4b22, 0x3feb090a58150200, // 0.535, 0.84485
+ 0x3fe114141f935545, 0x3feb0fc1575d33db, // 0.5337, 0.84567
+ 0x3fe1097248d0a956, 0x3feb16742a4ca2f5, // 0.5324, 0.84649
+ 0x3fe0fecdd1770537, 0x3feb1d22cfdadcc6, // 0.5311, 0.84731
+ 0x3fe0f426bb2a8e7d, 0x3feb23cd470013b4, // 0.5298, 0.84812
+ 0x3fe0e97d078fd23b, 0x3feb2a738eb51f33, // 0.5285, 0.84893
+ 0x3fe0ded0b84bc4b5, 0x3feb3115a5f37bf4, // 0.5272, 0.84974
+ 0x3fe0d421cf03c12b, 0x3feb37b38bb54c09, // 0.5259, 0.85055
+ 0x3fe0c9704d5d898f, 0x3feb3e4d3ef55712, // 0.52459, 0.85136
+ 0x3fe0bebc34ff4646, 0x3feb44e2beaf0a61, // 0.52328, 0.85216
+ 0x3fe0b405878f85ec, 0x3feb4b7409de7925, // 0.52198, 0.85296
+ 0x3fe0a94c46b53d0b, 0x3feb52011f805c92, // 0.52067, 0.85376
+ 0x3fe09e907417c5e1, 0x3feb5889fe921405, // 0.51936, 0.85456
+ 0x3fe093d2115ee018, 0x3feb5f0ea611a532, // 0.51804, 0.85535
+ 0x3fe089112032b08c, 0x3feb658f14fdbc47, // 0.51673, 0.85615
+ 0x3fe07e4da23bc102, 0x3feb6c0b4a55ac17, // 0.51542, 0.85694
+ 0x3fe073879922ffed, 0x3feb728345196e3e, // 0.5141, 0.85773
+ 0x3fe068bf0691c028, 0x3feb78f70449a34b, // 0.51279, 0.85852
+ 0x3fe05df3ec31b8b6, 0x3feb7f6686e792ea, // 0.51147, 0.8593
+ 0x3fe053264bad0483, 0x3feb85d1cbf52c02, // 0.51015, 0.86009
+ 0x3fe0485626ae221a, 0x3feb8c38d27504e9, // 0.50883, 0.86087
+ 0x3fe03d837edff370, 0x3feb929b996a5b7f, // 0.50751, 0.86165
+ 0x3fe032ae55edbd95, 0x3feb98fa1fd9155e, // 0.50619, 0.86242
+ 0x3fe027d6ad83287e, 0x3feb9f5464c5bffc, // 0.50486, 0.8632
+ 0x3fe01cfc874c3eb7, 0x3feba5aa673590d2, // 0.50354, 0.86397
+ 0x3fe0121fe4f56d2c, 0x3febabfc262e6586, // 0.50221, 0.86474
+ 0x3fe00740c82b82e0, 0x3febb249a0b6c40d, // 0.50089, 0.86551
+ 0x3fdff8be6537615e, 0x3febb892d5d5dad5, // 0.49956, 0.86628
+ 0x3fdfe2f64be7120f, 0x3febbed7c49380ea, // 0.49823, 0.86705
+ 0x3fdfcd2947c1ff57, 0x3febc5186bf8361d, // 0.4969, 0.86781
+ 0x3fdfb7575c24d2de, 0x3febcb54cb0d2327, // 0.49557, 0.86857
+ 0x3fdfa1808c6cf7e0, 0x3febd18ce0dc19d6, // 0.49423, 0.86933
+ 0x3fdf8ba4dbf89aba, 0x3febd7c0ac6f952a, // 0.4929, 0.87009
+ 0x3fdf75c44e26a852, 0x3febddf02cd2b983, // 0.49156, 0.87084
+ 0x3fdf5fdee656cda3, 0x3febe41b611154c1, // 0.49023, 0.8716
+ 0x3fdf49f4a7e97729, 0x3febea424837de6d, // 0.48889, 0.87235
+ 0x3fdf3405963fd068, 0x3febf064e15377dd, // 0.48755, 0.87309
+ 0x3fdf1e11b4bbc35c, 0x3febf6832b71ec5b, // 0.48621, 0.87384
+ 0x3fdf081906bff7fd, 0x3febfc9d25a1b147, // 0.48487, 0.87459
+ 0x3fdef21b8fafd3b5, 0x3fec02b2cef1e641, // 0.48353, 0.87533
+ 0x3fdedc1952ef78d5, 0x3fec08c426725549, // 0.48218, 0.87607
+ 0x3fdec61253e3c61b, 0x3fec0ed12b3372e9, // 0.48084, 0.87681
+ 0x3fdeb00695f25620, 0x3fec14d9dc465e58, // 0.47949, 0.87755
+ 0x3fde99f61c817eda, 0x3fec1ade38bce19b, // 0.47815, 0.87828
+ 0x3fde83e0eaf85113, 0x3fec20de3fa971b0, // 0.4768, 0.87901
+ 0x3fde6dc704be97e2, 0x3fec26d9f01f2eaf, // 0.47545, 0.87974
+ 0x3fde57a86d3cd824, 0x3fec2cd14931e3f1, // 0.4741, 0.88047
+ 0x3fde418527dc4ffa, 0x3fec32c449f60831, // 0.47275, 0.8812
+ 0x3fde2b5d3806f63b, 0x3fec38b2f180bdb1, // 0.4714, 0.88192
+ 0x3fde1530a12779f4, 0x3fec3e9d3ee7d262, // 0.47004, 0.88264
+ 0x3fddfeff66a941de, 0x3fec44833141c004, // 0.46869, 0.88336
+ 0x3fdde8c98bf86bd6, 0x3fec4a64c7a5ac4c, // 0.46733, 0.88408
+ 0x3fddd28f1481cc58, 0x3fec5042012b6907, // 0.46598, 0.8848
+ 0x3fddbc5003b2edf8, 0x3fec561adceb743e, // 0.46462, 0.88551
+ 0x3fdda60c5cfa10d8, 0x3fec5bef59fef85a, // 0.46326, 0.88622
+ 0x3fdd8fc423c62a25, 0x3fec61bf777fcc48, // 0.4619, 0.88693
+ 0x3fdd79775b86e389, 0x3fec678b3488739b, // 0.46054, 0.88764
+ 0x3fdd632607ac9aa9, 0x3fec6d5290341eb2, // 0.45918, 0.88835
+ 0x3fdd4cd02ba8609c, 0x3fec7315899eaad7, // 0.45781, 0.88905
+ 0x3fdd3675caebf962, 0x3fec78d41fe4a267, // 0.45645, 0.88975
+ 0x3fdd2016e8e9db5b, 0x3fec7e8e52233cf3, // 0.45508, 0.89045
+ 0x3fdd09b389152ec1, 0x3fec84441f785f61, // 0.45372, 0.89115
+ 0x3fdcf34baee1cd21, 0x3fec89f587029c13, // 0.45235, 0.89184
+ 0x3fdcdcdf5dc440ce, 0x3fec8fa287e13305, // 0.45098, 0.89253
+ 0x3fdcc66e9931c45d, 0x3fec954b213411f5, // 0.44961, 0.89322
+ 0x3fdcaff964a0421d, 0x3fec9aef521bd480, // 0.44824, 0.89391
+ 0x3fdc997fc3865388, 0x3feca08f19b9c449, // 0.44687, 0.8946
+ 0x3fdc8301b95b40c2, 0x3feca62a772fd919, // 0.4455, 0.89528
+ 0x3fdc6c7f4997000a, 0x3fecabc169a0b901, // 0.44412, 0.89597
+ 0x3fdc55f877b23537, 0x3fecb153f02fb87d, // 0.44275, 0.89665
+ 0x3fdc3f6d47263129, 0x3fecb6e20a00da99, // 0.44137, 0.89732
+ 0x3fdc28ddbb6cf145, 0x3fecbc6bb638d10b, // 0.43999, 0.898
+ 0x3fdc1249d8011ee7, 0x3fecc1f0f3fcfc5c, // 0.43862, 0.89867
+ 0x3fdbfbb1a05e0edc, 0x3fecc771c2736c09, // 0.43724, 0.89935
+ 0x3fdbe51517ffc0d9, 0x3fecccee20c2de9f, // 0.43586, 0.90002
+ 0x3fdbce744262deee, 0x3fecd2660e12c1e6, // 0.43448, 0.90068
+ 0x3fdbb7cf2304bd01, 0x3fecd7d9898b32f6, // 0.43309, 0.90135
+ 0x3fdba125bd63583e, 0x3fecdd489254fe65, // 0.43171, 0.90201
+ 0x3fdb8a7814fd5693, 0x3fece2b32799a060, // 0.43033, 0.90267
+ 0x3fdb73c62d520624, 0x3fece819488344ce, // 0.42894, 0.90333
+ 0x3fdb5d1009e15cc0, 0x3feced7af43cc773, // 0.42756, 0.90399
+ 0x3fdb4655ae2bf757, 0x3fecf2d829f1b40e, // 0.42617, 0.90464
+ 0x3fdb2f971db31972, 0x3fecf830e8ce467b, // 0.42478, 0.9053
+ 0x3fdb18d45bf8aca6, 0x3fecfd852fff6ad4, // 0.42339, 0.90595
+ 0x3fdb020d6c7f4009, 0x3fed02d4feb2bd92, // 0.422, 0.9066
+ 0x3fdaeb4252ca07ab, 0x3fed082054168bac, // 0.42061, 0.90724
+ 0x3fdad473125cdc08, 0x3fed0d672f59d2b9, // 0.41922, 0.90789
+ 0x3fdabd9faebc3980, 0x3fed12a98fac410c, // 0.41782, 0.90853
+ 0x3fdaa6c82b6d3fc9, 0x3fed17e7743e35dc, // 0.41643, 0.90917
+ 0x3fda8fec8bf5b166, 0x3fed1d20dc40c15c, // 0.41503, 0.90981
+ 0x3fda790cd3dbf31a, 0x3fed2255c6e5a4e1, // 0.41364, 0.91044
+ 0x3fda622906a70b63, 0x3fed2786335f52fc, // 0.41224, 0.91107
+ 0x3fda4b4127dea1e4, 0x3fed2cb220e0ef9f, // 0.41084, 0.91171
+ 0x3fda34553b0afee5, 0x3fed31d98e9e503a, // 0.40944, 0.91234
+ 0x3fda1d6543b50ac0, 0x3fed36fc7bcbfbdc, // 0.40804, 0.91296
+ 0x3fda067145664d57, 0x3fed3c1ae79f2b4e, // 0.40664, 0.91359
+ 0x3fd9ef7943a8ed8a, 0x3fed4134d14dc93a, // 0.40524, 0.91421
+ 0x3fd9d87d4207b0ab, 0x3fed464a380e7242, // 0.40384, 0.91483
+ 0x3fd9c17d440df9f2, 0x3fed4b5b1b187524, // 0.40243, 0.91545
+ 0x3fd9aa794d47c9ee, 0x3fed506779a3d2d9, // 0.40103, 0.91606
+ 0x3fd993716141bdfe, 0x3fed556f52e93eb1, // 0.39962, 0.91668
+ 0x3fd97c6583890fc2, 0x3fed5a72a6221e73, // 0.39822, 0.91729
+ 0x3fd96555b7ab948f, 0x3fed5f7172888a7f, // 0.39681, 0.9179
+ 0x3fd94e420137bce3, 0x3fed646bb7574de5, // 0.3954, 0.91851
+ 0x3fd9372a63bc93d7, 0x3fed696173c9e68b, // 0.39399, 0.91911
+ 0x3fd9200ee2c9be97, 0x3fed6e52a71c8547, // 0.39258, 0.91972
+ 0x3fd908ef81ef7bd1, 0x3fed733f508c0dff, // 0.39117, 0.92032
+ 0x3fd8f1cc44bea329, 0x3fed78276f5617c6, // 0.38976, 0.92092
+ 0x3fd8daa52ec8a4af, 0x3fed7d0b02b8ecf9, // 0.38835, 0.92151
+ 0x3fd8c37a439f884f, 0x3fed81ea09f38b63, // 0.38693, 0.92211
+ 0x3fd8ac4b86d5ed44, 0x3fed86c48445a450, // 0.38552, 0.9227
+ 0x3fd89518fbff098e, 0x3fed8b9a70ef9cb4, // 0.3841, 0.92329
+ 0x3fd87de2a6aea963, 0x3fed906bcf328d46, // 0.38268, 0.92388
+ 0x3fd866a88a792ea0, 0x3fed95389e50429b, // 0.38127, 0.92447
+ 0x3fd84f6aaaf3903f, 0x3fed9a00dd8b3d46, // 0.37985, 0.92505
+ 0x3fd838290bb359c8, 0x3fed9ec48c26b1f3, // 0.37843, 0.92563
+ 0x3fd820e3b04eaac4, 0x3feda383a9668988, // 0.37701, 0.92621
+ 0x3fd8099a9c5c362d, 0x3feda83e348f613b, // 0.37559, 0.92679
+ 0x3fd7f24dd37341e3, 0x3fedacf42ce68ab9, // 0.37416, 0.92736
+ 0x3fd7dafd592ba621, 0x3fedb1a591b20c38, // 0.37274, 0.92794
+ 0x3fd7c3a9311dcce7, 0x3fedb6526238a09b, // 0.37132, 0.92851
+ 0x3fd7ac515ee2b172, 0x3fedbafa9dc1b78d, // 0.36989, 0.92907
+ 0x3fd794f5e613dfae, 0x3fedbf9e4395759a, // 0.36847, 0.92964
+ 0x3fd77d96ca4b73a6, 0x3fedc43d52fcb453, // 0.36704, 0.93021
+ 0x3fd766340f2418f6, 0x3fedc8d7cb410260, // 0.36561, 0.93077
+ 0x3fd74ecdb8390a3e, 0x3fedcd6dabaca3a5, // 0.36418, 0.93133
+ 0x3fd73763c9261092, 0x3fedd1fef38a915a, // 0.36276, 0.93188
+ 0x3fd71ff6458782ec, 0x3fedd68ba2267a25, // 0.36133, 0.93244
+ 0x3fd7088530fa459e, 0x3feddb13b6ccc23d, // 0.3599, 0.93299
+ 0x3fd6f1108f1bc9c5, 0x3feddf9730ca837b, // 0.35846, 0.93354
+ 0x3fd6d998638a0cb5, 0x3fede4160f6d8d81, // 0.35703, 0.93409
+ 0x3fd6c21cb1e39771, 0x3fede890520465ce, // 0.3556, 0.93464
+ 0x3fd6aa9d7dc77e16, 0x3feded05f7de47da, // 0.35416, 0.93518
+ 0x3fd6931acad55f51, 0x3fedf177004b2534, // 0.35273, 0.93573
+ 0x3fd67b949cad63ca, 0x3fedf5e36a9ba59c, // 0.35129, 0.93627
+ 0x3fd6640af6f03d9e, 0x3fedfa4b3621271d, // 0.34986, 0.9368
+ 0x3fd64c7ddd3f27c6, 0x3fedfeae622dbe2b, // 0.34842, 0.93734
+ 0x3fd634ed533be58e, 0x3fee030cee1435b8, // 0.34698, 0.93787
+ 0x3fd61d595c88c203, 0x3fee0766d9280f54, // 0.34554, 0.9384
+ 0x3fd605c1fcc88f63, 0x3fee0bbc22bd8349, // 0.3441, 0.93893
+ 0x3fd5ee27379ea693, 0x3fee100cca2980ac, // 0.34266, 0.93946
+ 0x3fd5d68910aee686, 0x3fee1458cec1ad83, // 0.34122, 0.93998
+ 0x3fd5bee78b9db3b6, 0x3fee18a02fdc66d9, // 0.33978, 0.94051
+ 0x3fd5a742ac0ff78d, 0x3fee1ce2ecd0c0d8, // 0.33833, 0.94103
+ 0x3fd58f9a75ab1fdd, 0x3fee212104f686e5, // 0.33689, 0.94154
+ 0x3fd577eeec151e47, 0x3fee255a77a63bb8, // 0.33545, 0.94206
+ 0x3fd5604012f467b4, 0x3fee298f4439197a, // 0.334, 0.94257
+ 0x3fd5488dedeff3be, 0x3fee2dbf6a0911d9, // 0.33255, 0.94308
+ 0x3fd530d880af3c24, 0x3fee31eae870ce25, // 0.33111, 0.94359
+ 0x3fd5191fceda3c35, 0x3fee3611becbaf69, // 0.32966, 0.9441
+ 0x3fd50163dc197047, 0x3fee3a33ec75ce85, // 0.32821, 0.9446
+ 0x3fd4e9a4ac15d520, 0x3fee3e5170cbfc46, // 0.32676, 0.94511
+ 0x3fd4d1e24278e76a, 0x3fee426a4b2bc17e, // 0.32531, 0.94561
+ 0x3fd4ba1ca2eca31c, 0x3fee467e7af35f23, // 0.32386, 0.94611
+ 0x3fd4a253d11b82f3, 0x3fee4a8dff81ce5e, // 0.32241, 0.9466
+ 0x3fd48a87d0b07fd7, 0x3fee4e98d836c0af, // 0.32096, 0.94709
+ 0x3fd472b8a5571054, 0x3fee529f04729ffc, // 0.3195, 0.94759
+ 0x3fd45ae652bb2800, 0x3fee56a083968eb1, // 0.31805, 0.94807
+ 0x3fd44310dc8936f0, 0x3fee5a9d550467d3, // 0.31659, 0.94856
+ 0x3fd42b38466e2928, 0x3fee5e95781ebf1c, // 0.31514, 0.94905
+ 0x3fd4135c94176602, 0x3fee6288ec48e112, // 0.31368, 0.94953
+ 0x3fd3fb7dc932cfa4, 0x3fee6677b0e6d31e, // 0.31222, 0.95001
+ 0x3fd3e39be96ec271, 0x3fee6a61c55d53a7, // 0.31077, 0.95049
+ 0x3fd3cbb6f87a146e, 0x3fee6e472911da27, // 0.30931, 0.95096
+ 0x3fd3b3cefa0414b7, 0x3fee7227db6a9744, // 0.30785, 0.95144
+ 0x3fd39be3f1bc8aef, 0x3fee7603dbce74e9, // 0.30639, 0.95191
+ 0x3fd383f5e353b6aa, 0x3fee79db29a5165a, // 0.30493, 0.95238
+ 0x3fd36c04d27a4edf, 0x3fee7dadc456d850, // 0.30347, 0.95284
+ 0x3fd35410c2e18152, 0x3fee817bab4cd10d, // 0.30201, 0.95331
+ 0x3fd33c19b83af207, 0x3fee8544ddf0d075, // 0.30054, 0.95377
+ 0x3fd3241fb638baaf, 0x3fee89095bad6025, // 0.29908, 0.95423
+ 0x3fd30c22c08d6a13, 0x3fee8cc923edc388, // 0.29762, 0.95469
+ 0x3fd2f422daec0386, 0x3fee9084361df7f3, // 0.29615, 0.95514
+ 0x3fd2dc200907fe51, 0x3fee943a91aab4b4, // 0.29469, 0.95559
+ 0x3fd2c41a4e954520, 0x3fee97ec36016b30, // 0.29322, 0.95605
+ 0x3fd2ac11af483572, 0x3fee9b99229046f8, // 0.29175, 0.95649
+ 0x3fd294062ed59f05, 0x3fee9f4156c62dda, // 0.29028, 0.95694
+ 0x3fd27bf7d0f2c346, 0x3feea2e4d212c000, // 0.28882, 0.95738
+ 0x3fd263e6995554ba, 0x3feea68393e65800, // 0.28735, 0.95783
+ 0x3fd24bd28bb37672, 0x3feeaa1d9bb20af3, // 0.28588, 0.95827
+ 0x3fd233bbabc3bb72, 0x3feeadb2e8e7a88e, // 0.28441, 0.9587
+ 0x3fd21ba1fd3d2623, 0x3feeb1437af9bb34, // 0.28294, 0.95914
+ 0x3fd2038583d727bd, 0x3feeb4cf515b8811, // 0.28146, 0.95957
+ 0x3fd1eb6643499fbb, 0x3feeb8566b810f2a, // 0.27999, 0.96
+ 0x3fd1d3443f4cdb3d, 0x3feebbd8c8df0b74, // 0.27852, 0.96043
+ 0x3fd1bb1f7b999480, 0x3feebf5668eaf2ef, // 0.27705, 0.96086
+ 0x3fd1a2f7fbe8f243, 0x3feec2cf4b1af6b2, // 0.27557, 0.96128
+ 0x3fd18acdc3f4873a, 0x3feec6436ee60309, // 0.2741, 0.9617
+ 0x3fd172a0d7765177, 0x3feec9b2d3c3bf84, // 0.27262, 0.96212
+ 0x3fd15a713a28b9d9, 0x3feecd1d792c8f10, // 0.27115, 0.96254
+ 0x3fd1423eefc69378, 0x3feed0835e999009, // 0.26967, 0.96295
+ 0x3fd12a09fc0b1b12, 0x3feed3e483849c51, // 0.26819, 0.96337
+ 0x3fd111d262b1f677, 0x3feed740e7684963, // 0.26671, 0.96378
+ 0x3fd0f998277733f7, 0x3feeda9889bfe86a, // 0.26523, 0.96418
+ 0x3fd0e15b4e1749cd, 0x3feeddeb6a078651, // 0.26375, 0.96459
+ 0x3fd0c91bda4f158d, 0x3feee13987bbebdc, // 0.26227, 0.96499
+ 0x3fd0b0d9cfdbdb90, 0x3feee482e25a9dbc, // 0.26079, 0.96539
+ 0x3fd09895327b465e, 0x3feee7c77961dc9e, // 0.25931, 0.96579
+ 0x3fd0804e05eb661e, 0x3feeeb074c50a544, // 0.25783, 0.96619
+ 0x3fd068044deab002, 0x3feeee425aa6b09a, // 0.25635, 0.96658
+ 0x3fd04fb80e37fdae, 0x3feef178a3e473c2, // 0.25487, 0.96698
+ 0x3fd037694a928cac, 0x3feef4aa278b2032, // 0.25338, 0.96737
+ 0x3fd01f1806b9fdd2, 0x3feef7d6e51ca3c0, // 0.2519, 0.96775
+ 0x3fd006c4466e54af, 0x3feefafedc1ba8b7, // 0.25041, 0.96814
+ 0x3fcfdcdc1adfedf8, 0x3feefe220c0b95ec, // 0.24893, 0.96852
+ 0x3fcfac2abeff57ff, 0x3fef014074708ed3, // 0.24744, 0.9689
+ 0x3fcf7b7480bd3801, 0x3fef045a14cf738c, // 0.24596, 0.96928
+ 0x3fcf4ab9679c9f5c, 0x3fef076eecade0fa, // 0.24447, 0.96966
+ 0x3fcf19f97b215f1a, 0x3fef0a7efb9230d7, // 0.24298, 0.97003
+ 0x3fcee934c2d006c7, 0x3fef0d8a410379c5, // 0.24149, 0.9704
+ 0x3fceb86b462de348, 0x3fef1090bc898f5f, // 0.24, 0.97077
+ 0x3fce879d0cc0fdaf, 0x3fef13926dad024e, // 0.23851, 0.97114
+ 0x3fce56ca1e101a1b, 0x3fef168f53f7205d, // 0.23702, 0.9715
+ 0x3fce25f281a2b684, 0x3fef19876ef1f486, // 0.23553, 0.97187
+ 0x3fcdf5163f01099a, 0x3fef1c7abe284708, // 0.23404, 0.97223
+ 0x3fcdc4355db40195, 0x3fef1f6941259d7a, // 0.23255, 0.97258
+ 0x3fcd934fe5454311, 0x3fef2252f7763ada, // 0.23106, 0.97294
+ 0x3fcd6265dd3f27e3, 0x3fef2537e0a71f9f, // 0.22957, 0.97329
+ 0x3fcd31774d2cbdee, 0x3fef2817fc4609ce, // 0.22807, 0.97364
+ 0x3fcd00843c99c5f9, 0x3fef2af349e17507, // 0.22658, 0.97399
+ 0x3fcccf8cb312b286, 0x3fef2dc9c9089a9d, // 0.22508, 0.97434
+ 0x3fcc9e90b824a6a9, 0x3fef309b794b719f, // 0.22359, 0.97468
+ 0x3fcc6d90535d74dc, 0x3fef33685a3aaef0, // 0.22209, 0.97503
+ 0x3fcc3c8b8c4b9dd7, 0x3fef36306b67c556, // 0.2206, 0.97536
+ 0x3fcc0b826a7e4f63, 0x3fef38f3ac64e589, // 0.2191, 0.9757
+ 0x3fcbda74f5856330, 0x3fef3bb21cc4fe47, // 0.2176, 0.97604
+ 0x3fcba96334f15dad, 0x3fef3e6bbc1bbc65, // 0.21611, 0.97637
+ 0x3fcb784d30536cda, 0x3fef412089fd8adc, // 0.21461, 0.9767
+ 0x3fcb4732ef3d6722, 0x3fef43d085ff92dd, // 0.21311, 0.97703
+ 0x3fcb16147941ca2a, 0x3fef467bafb7bbe0, // 0.21161, 0.97735
+ 0x3fcae4f1d5f3b9ab, 0x3fef492206bcabb4, // 0.21011, 0.97768
+ 0x3fcab3cb0ce6fe44, 0x3fef4bc38aa5c694, // 0.20861, 0.978
+ 0x3fca82a025b00451, 0x3fef4e603b0b2f2d, // 0.20711, 0.97832
+ 0x3fca517127e3dabc, 0x3fef50f81785c6b9, // 0.20561, 0.97863
+ 0x3fca203e1b1831da, 0x3fef538b1faf2d07, // 0.20411, 0.97895
+ 0x3fc9ef0706e35a35, 0x3fef56195321c090, // 0.20261, 0.97926
+ 0x3fc9bdcbf2dc4366, 0x3fef58a2b1789e84, // 0.2011, 0.97957
+ 0x3fc98c8ce69a7aec, 0x3fef5b273a4fa2d9, // 0.1996, 0.97988
+ 0x3fc95b49e9b62af9, 0x3fef5da6ed43685d, // 0.1981, 0.98018
+ 0x3fc92a0303c8194f, 0x3fef6021c9f148c2, // 0.19659, 0.98048
+ 0x3fc8f8b83c69a60a, 0x3fef6297cff75cb0, // 0.19509, 0.98079
+ 0x3fc8c7699b34ca7e, 0x3fef6508fef47bd5, // 0.19359, 0.98108
+ 0x3fc8961727c41804, 0x3fef677556883cee, // 0.19208, 0.98138
+ 0x3fc864c0e9b2b6cf, 0x3fef69dcd652f5de, // 0.19057, 0.98167
+ 0x3fc83366e89c64c5, 0x3fef6c3f7df5bbb7, // 0.18907, 0.98196
+ 0x3fc802092c1d744b, 0x3fef6e9d4d1262ca, // 0.18756, 0.98225
+ 0x3fc7d0a7bbd2cb1b, 0x3fef70f6434b7eb7, // 0.18606, 0.98254
+ 0x3fc79f429f59e11d, 0x3fef734a60446279, // 0.18455, 0.98282
+ 0x3fc76dd9de50bf31, 0x3fef7599a3a12077, // 0.18304, 0.98311
+ 0x3fc73c6d8055fe0a, 0x3fef77e40d068a90, // 0.18153, 0.98339
+ 0x3fc70afd8d08c4ff, 0x3fef7a299c1a322a, // 0.18002, 0.98366
+ 0x3fc6d98a0c08c8da, 0x3fef7c6a50826840, // 0.17851, 0.98394
+ 0x3fc6a81304f64ab2, 0x3fef7ea629e63d6e, // 0.177, 0.98421
+ 0x3fc676987f7216b8, 0x3fef80dd27ed8204, // 0.17549, 0.98448
+ 0x3fc6451a831d830d, 0x3fef830f4a40c60c, // 0.17398, 0.98475
+ 0x3fc61399179a6e94, 0x3fef853c9089595e, // 0.17247, 0.98501
+ 0x3fc5e214448b3fc6, 0x3fef8764fa714ba9, // 0.17096, 0.98528
+ 0x3fc5b08c1192e381, 0x3fef898887a36c84, // 0.16945, 0.98554
+ 0x3fc57f008654cbde, 0x3fef8ba737cb4b78, // 0.16794, 0.9858
+ 0x3fc54d71aa74ef02, 0x3fef8dc10a95380d, // 0.16643, 0.98605
+ 0x3fc51bdf8597c5f2, 0x3fef8fd5ffae41db, // 0.16491, 0.98631
+ 0x3fc4ea4a1f624b61, 0x3fef91e616c43891, // 0.1634, 0.98656
+ 0x3fc4b8b17f79fa88, 0x3fef93f14f85ac08, // 0.16189, 0.98681
+ 0x3fc48715ad84cdf5, 0x3fef95f7a9a1ec47, // 0.16037, 0.98706
+ 0x3fc45576b1293e5a, 0x3fef97f924c9099b, // 0.15886, 0.9873
+ 0x3fc423d4920e4166, 0x3fef99f5c0abd496, // 0.15734, 0.98754
+ 0x3fc3f22f57db4893, 0x3fef9bed7cfbde29, // 0.15583, 0.98778
+ 0x3fc3c0870a383ff6, 0x3fef9de0596b77a3, // 0.15431, 0.98802
+ 0x3fc38edbb0cd8d14, 0x3fef9fce55adb2c8, // 0.1528, 0.98826
+ 0x3fc35d2d53440db2, 0x3fefa1b7717661d5, // 0.15128, 0.98849
+ 0x3fc32b7bf94516a7, 0x3fefa39bac7a1791, // 0.14976, 0.98872
+ 0x3fc2f9c7aa7a72af, 0x3fefa57b066e2754, // 0.14825, 0.98895
+ 0x3fc2c8106e8e613a, 0x3fefa7557f08a517, // 0.14673, 0.98918
+ 0x3fc296564d2b953e, 0x3fefa92b1600657c, // 0.14521, 0.9894
+ 0x3fc264994dfd340a, 0x3fefaafbcb0cfddc, // 0.1437, 0.98962
+ 0x3fc232d978aed413, 0x3fefacc79de6c44f, // 0.14218, 0.98984
+ 0x3fc20116d4ec7bce, 0x3fefae8e8e46cfbb, // 0.14066, 0.99006
+ 0x3fc1cf516a62a077, 0x3fefb0509be6f7db, // 0.13914, 0.99027
+ 0x3fc19d8940be24e7, 0x3fefb20dc681d54d, // 0.13762, 0.99049
+ 0x3fc16bbe5fac5865, 0x3fefb3c60dd2c199, // 0.1361, 0.9907
+ 0x3fc139f0cedaf576, 0x3fefb5797195d741, // 0.13458, 0.9909
+ 0x3fc1082095f820b0, 0x3fefb727f187f1c7, // 0.13306, 0.99111
+ 0x3fc0d64dbcb26786, 0x3fefb8d18d66adb7, // 0.13154, 0.99131
+ 0x3fc0a4784ab8bf1d, 0x3fefba7644f068b5, // 0.13002, 0.99151
+ 0x3fc072a047ba831d, 0x3fefbc1617e44186, // 0.1285, 0.99171
+ 0x3fc040c5bb67747e, 0x3fefbdb106021816, // 0.12698, 0.99191
+ 0x3fc00ee8ad6fb85b, 0x3fefbf470f0a8d88, // 0.12545, 0.9921
+ 0x3fbfba124b07ad85, 0x3fefc0d832bf043a, // 0.12393, 0.99229
+ 0x3fbf564e56a9730e, 0x3fefc26470e19fd3, // 0.12241, 0.99248
+ 0x3fbef2858d27561b, 0x3fefc3ebc935454c, // 0.12089, 0.99267
+ 0x3fbe8eb7fde4aa3e, 0x3fefc56e3b7d9af6, // 0.11937, 0.99285
+ 0x3fbe2ae5b8457f77, 0x3fefc6ebc77f0887, // 0.11784, 0.99303
+ 0x3fbdc70ecbae9fc8, 0x3fefc8646cfeb721, // 0.11632, 0.99321
+ 0x3fbd633347858ce4, 0x3fefc9d82bc2915e, // 0.11479, 0.99339
+ 0x3fbcff533b307dc1, 0x3fefcb4703914354, // 0.11327, 0.99356
+ 0x3fbc9b6eb6165c42, 0x3fefccb0f4323aa3, // 0.11175, 0.99374
+ 0x3fbc3785c79ec2d5, 0x3fefce15fd6da67b, // 0.11022, 0.99391
+ 0x3fbbd3987f31fa0e, 0x3fefcf761f0c77a3, // 0.1087, 0.99407
+ 0x3fbb6fa6ec38f64c, 0x3fefd0d158d86087, // 0.10717, 0.99424
+ 0x3fbb0bb11e1d5559, 0x3fefd227aa9bd53b, // 0.10565, 0.9944
+ 0x3fbaa7b724495c04, 0x3fefd37914220b84, // 0.10412, 0.99456
+ 0x3fba43b90e27f3c4, 0x3fefd4c59536fae4, // 0.1026, 0.99472
+ 0x3fb9dfb6eb24a85c, 0x3fefd60d2da75c9e, // 0.10107, 0.99488
+ 0x3fb97bb0caaba56f, 0x3fefd74fdd40abbf, // 0.099544, 0.99503
+ 0x3fb917a6bc29b42c, 0x3fefd88da3d12526, // 0.098017, 0.99518
+ 0x3fb8b398cf0c38e0, 0x3fefd9c68127c78c, // 0.09649, 0.99533
+ 0x3fb84f8712c130a0, 0x3fefdafa7514538c, // 0.094963, 0.99548
+ 0x3fb7eb7196b72ee4, 0x3fefdc297f674ba9, // 0.093436, 0.99563
+ 0x3fb787586a5d5b21, 0x3fefdd539ff1f456, // 0.091909, 0.99577
+ 0x3fb7233b9d236e71, 0x3fefde78d68653fd, // 0.090381, 0.99591
+ 0x3fb6bf1b3e79b129, 0x3fefdf9922f73307, // 0.088854, 0.99604
+ 0x3fb65af75dd0f87b, 0x3fefe0b485181be3, // 0.087326, 0.99618
+ 0x3fb5f6d00a9aa419, 0x3fefe1cafcbd5b09, // 0.085797, 0.99631
+ 0x3fb592a554489bc8, 0x3fefe2dc89bbff08, // 0.084269, 0.99644
+ 0x3fb52e774a4d4d0a, 0x3fefe3e92be9d886, // 0.08274, 0.99657
+ 0x3fb4ca45fc1ba8b6, 0x3fefe4f0e31d7a4a, // 0.081211, 0.9967
+ 0x3fb4661179272096, 0x3fefe5f3af2e3940, // 0.079682, 0.99682
+ 0x3fb401d9d0e3a507, 0x3fefe6f18ff42c84, // 0.078153, 0.99694
+ 0x3fb39d9f12c5a299, 0x3fefe7ea85482d60, // 0.076624, 0.99706
+ 0x3fb339614e41ffa5, 0x3fefe8de8f03d75c, // 0.075094, 0.99718
+ 0x3fb2d52092ce19f6, 0x3fefe9cdad01883a, // 0.073565, 0.99729
+ 0x3fb270dcefdfc45b, 0x3fefeab7df1c6005, // 0.072035, 0.9974
+ 0x3fb20c9674ed444c, 0x3fefeb9d2530410f, // 0.070505, 0.99751
+ 0x3fb1a84d316d4f8a, 0x3fefec7d7f19cffc, // 0.068974, 0.99762
+ 0x3fb1440134d709b2, 0x3fefed58ecb673c4, // 0.067444, 0.99772
+ 0x3fb0dfb28ea201e6, 0x3fefee2f6de455ba, // 0.065913, 0.99783
+ 0x3fb07b614e463064, 0x3fefef0102826191, // 0.064383, 0.99793
+ 0x3fb0170d833bf421, 0x3fefefcdaa704562, // 0.062852, 0.99802
+ 0x3faf656e79f820e0, 0x3feff095658e71ad, // 0.061321, 0.99812
+ 0x3fae9cbd15ff5527, 0x3feff15833be1965, // 0.05979, 0.99821
+ 0x3fadd406f9808ec8, 0x3feff21614e131ed, // 0.058258, 0.9983
+ 0x3fad0b4c436f91d0, 0x3feff2cf08da7321, // 0.056727, 0.99839
+ 0x3fac428d12c0d7e3, 0x3feff3830f8d575c, // 0.055195, 0.99848
+ 0x3fab79c986698b78, 0x3feff43228de1b77, // 0.053664, 0.99856
+ 0x3faab101bd5f8317, 0x3feff4dc54b1bed3, // 0.052132, 0.99864
+ 0x3fa9e835d6993c87, 0x3feff58192ee0358, // 0.0506, 0.99872
+ 0x3fa91f65f10dd814, 0x3feff621e3796d7e, // 0.049068, 0.9988
+ 0x3fa856922bb513c1, 0x3feff6bd463b444d, // 0.047535, 0.99887
+ 0x3fa78dbaa5874685, 0x3feff753bb1b9164, // 0.046003, 0.99894
+ 0x3fa6c4df7d7d5b84, 0x3feff7e5420320f9, // 0.044471, 0.99901
+ 0x3fa5fc00d290cd43, 0x3feff871dadb81df, // 0.042938, 0.99908
+ 0x3fa5331ec3bba0eb, 0x3feff8f9858f058b, // 0.041406, 0.99914
+ 0x3fa46a396ff86179, 0x3feff97c4208c014, // 0.039873, 0.9992
+ 0x3fa3a150f6421afc, 0x3feff9fa10348837, // 0.03834, 0.99926
+ 0x3fa2d865759455cd, 0x3feffa72effef75d, // 0.036807, 0.99932
+ 0x3fa20f770ceb11c6, 0x3feffae6e1556998, // 0.035274, 0.99938
+ 0x3fa14685db42c17e, 0x3feffb55e425fdae, // 0.033741, 0.99943
+ 0x3fa07d91ff984580, 0x3feffbbff85f9515, // 0.032208, 0.99948
+ 0x3f9f693731d1cf01, 0x3feffc251df1d3f8, // 0.030675, 0.99953
+ 0x3f9dd7458c64ab39, 0x3feffc8554cd213a, // 0.029142, 0.99958
+ 0x3f9c454f4ce53b1c, 0x3feffce09ce2a679, // 0.027608, 0.99962
+ 0x3f9ab354b1504fca, 0x3feffd36f624500c, // 0.026075, 0.99966
+ 0x3f992155f7a3667e, 0x3feffd886084cd0d, // 0.024541, 0.9997
+ 0x3f978f535ddc9f03, 0x3feffdd4dbf78f52, // 0.023008, 0.99974
+ 0x3f95fd4d21fab226, 0x3feffe1c6870cb77, // 0.021474, 0.99977
+ 0x3f946b4381fce81c, 0x3feffe5f05e578db, // 0.01994, 0.9998
+ 0x3f92d936bbe30efd, 0x3feffe9cb44b51a1, // 0.018407, 0.99983
+ 0x3f9147270dad7132, 0x3feffed57398d2b7, // 0.016873, 0.99986
+ 0x3f8f6a296ab997ca, 0x3fefff0943c53bd1, // 0.015339, 0.99988
+ 0x3f8c45ffe1e48ad9, 0x3fefff3824c88f6f, // 0.013805, 0.9999
+ 0x3f8921d1fcdec784, 0x3fefff62169b92db, // 0.012272, 0.99992
+ 0x3f85fda037ac05e0, 0x3fefff871937ce2f, // 0.010738, 0.99994
+ 0x3f82d96b0e509703, 0x3fefffa72c978c4f, // 0.0092038, 0.99996
+ 0x3f7f6a65f9a2a3c5, 0x3fefffc250b5daef, // 0.0076698, 0.99997
+ 0x3f7921f0fe670071, 0x3fefffd8858e8a92, // 0.0061359, 0.99998
+ 0x3f72d97822f996bc, 0x3fefffe9cb1e2e8d, // 0.0046019, 0.99999
+ 0x3f6921f8becca4ba, 0x3feffff621621d02, // 0.003068, 1
+ 0x3f5921faaee6472d, 0x3feffffd88586ee6, // 0.001534, 1
+ 0x0000000000000000, 0x3ff0000000000000, // 0, 1
+ 0xbf5921faaee6472d, 0x3feffffd88586ee6, // -0.001534, 1
+ 0xbf6921f8becca4ba, 0x3feffff621621d02, // -0.003068, 1
+ 0xbf72d97822f996bc, 0x3fefffe9cb1e2e8d, //-0.0046019, 0.99999
+ 0xbf7921f0fe670071, 0x3fefffd8858e8a92, //-0.0061359, 0.99998
+ 0xbf7f6a65f9a2a3c5, 0x3fefffc250b5daef, //-0.0076698, 0.99997
+ 0xbf82d96b0e509703, 0x3fefffa72c978c4f, //-0.0092038, 0.99996
+ 0xbf85fda037ac05e0, 0x3fefff871937ce2f, // -0.010738, 0.99994
+ 0xbf8921d1fcdec784, 0x3fefff62169b92db, // -0.012272, 0.99992
+ 0xbf8c45ffe1e48ad9, 0x3fefff3824c88f6f, // -0.013805, 0.9999
+ 0xbf8f6a296ab997ca, 0x3fefff0943c53bd1, // -0.015339, 0.99988
+ 0xbf9147270dad7132, 0x3feffed57398d2b7, // -0.016873, 0.99986
+ 0xbf92d936bbe30efd, 0x3feffe9cb44b51a1, // -0.018407, 0.99983
+ 0xbf946b4381fce81c, 0x3feffe5f05e578db, // -0.01994, 0.9998
+ 0xbf95fd4d21fab226, 0x3feffe1c6870cb77, // -0.021474, 0.99977
+ 0xbf978f535ddc9f03, 0x3feffdd4dbf78f52, // -0.023008, 0.99974
+ 0xbf992155f7a3667e, 0x3feffd886084cd0d, // -0.024541, 0.9997
+ 0xbf9ab354b1504fca, 0x3feffd36f624500c, // -0.026075, 0.99966
+ 0xbf9c454f4ce53b1c, 0x3feffce09ce2a679, // -0.027608, 0.99962
+ 0xbf9dd7458c64ab39, 0x3feffc8554cd213a, // -0.029142, 0.99958
+ 0xbf9f693731d1cf01, 0x3feffc251df1d3f8, // -0.030675, 0.99953
+ 0xbfa07d91ff984580, 0x3feffbbff85f9515, // -0.032208, 0.99948
+ 0xbfa14685db42c17e, 0x3feffb55e425fdae, // -0.033741, 0.99943
+ 0xbfa20f770ceb11c6, 0x3feffae6e1556998, // -0.035274, 0.99938
+ 0xbfa2d865759455cd, 0x3feffa72effef75d, // -0.036807, 0.99932
+ 0xbfa3a150f6421afc, 0x3feff9fa10348837, // -0.03834, 0.99926
+ 0xbfa46a396ff86179, 0x3feff97c4208c014, // -0.039873, 0.9992
+ 0xbfa5331ec3bba0eb, 0x3feff8f9858f058b, // -0.041406, 0.99914
+ 0xbfa5fc00d290cd43, 0x3feff871dadb81df, // -0.042938, 0.99908
+ 0xbfa6c4df7d7d5b84, 0x3feff7e5420320f9, // -0.044471, 0.99901
+ 0xbfa78dbaa5874685, 0x3feff753bb1b9164, // -0.046003, 0.99894
+ 0xbfa856922bb513c1, 0x3feff6bd463b444d, // -0.047535, 0.99887
+ 0xbfa91f65f10dd814, 0x3feff621e3796d7e, // -0.049068, 0.9988
+ 0xbfa9e835d6993c87, 0x3feff58192ee0358, // -0.0506, 0.99872
+ 0xbfaab101bd5f8317, 0x3feff4dc54b1bed3, // -0.052132, 0.99864
+ 0xbfab79c986698b78, 0x3feff43228de1b77, // -0.053664, 0.99856
+ 0xbfac428d12c0d7e3, 0x3feff3830f8d575c, // -0.055195, 0.99848
+ 0xbfad0b4c436f91d0, 0x3feff2cf08da7321, // -0.056727, 0.99839
+ 0xbfadd406f9808ec8, 0x3feff21614e131ed, // -0.058258, 0.9983
+ 0xbfae9cbd15ff5527, 0x3feff15833be1965, // -0.05979, 0.99821
+ 0xbfaf656e79f820e0, 0x3feff095658e71ad, // -0.061321, 0.99812
+ 0xbfb0170d833bf421, 0x3fefefcdaa704562, // -0.062852, 0.99802
+ 0xbfb07b614e463064, 0x3fefef0102826191, // -0.064383, 0.99793
+ 0xbfb0dfb28ea201e6, 0x3fefee2f6de455ba, // -0.065913, 0.99783
+ 0xbfb1440134d709b2, 0x3fefed58ecb673c4, // -0.067444, 0.99772
+ 0xbfb1a84d316d4f8a, 0x3fefec7d7f19cffc, // -0.068974, 0.99762
+ 0xbfb20c9674ed444c, 0x3fefeb9d2530410f, // -0.070505, 0.99751
+ 0xbfb270dcefdfc45b, 0x3fefeab7df1c6005, // -0.072035, 0.9974
+ 0xbfb2d52092ce19f6, 0x3fefe9cdad01883a, // -0.073565, 0.99729
+ 0xbfb339614e41ffa5, 0x3fefe8de8f03d75c, // -0.075094, 0.99718
+ 0xbfb39d9f12c5a299, 0x3fefe7ea85482d60, // -0.076624, 0.99706
+ 0xbfb401d9d0e3a507, 0x3fefe6f18ff42c84, // -0.078153, 0.99694
+ 0xbfb4661179272096, 0x3fefe5f3af2e3940, // -0.079682, 0.99682
+ 0xbfb4ca45fc1ba8b6, 0x3fefe4f0e31d7a4a, // -0.081211, 0.9967
+ 0xbfb52e774a4d4d0a, 0x3fefe3e92be9d886, // -0.08274, 0.99657
+ 0xbfb592a554489bc8, 0x3fefe2dc89bbff08, // -0.084269, 0.99644
+ 0xbfb5f6d00a9aa419, 0x3fefe1cafcbd5b09, // -0.085797, 0.99631
+ 0xbfb65af75dd0f87b, 0x3fefe0b485181be3, // -0.087326, 0.99618
+ 0xbfb6bf1b3e79b129, 0x3fefdf9922f73307, // -0.088854, 0.99604
+ 0xbfb7233b9d236e71, 0x3fefde78d68653fd, // -0.090381, 0.99591
+ 0xbfb787586a5d5b21, 0x3fefdd539ff1f456, // -0.091909, 0.99577
+ 0xbfb7eb7196b72ee4, 0x3fefdc297f674ba9, // -0.093436, 0.99563
+ 0xbfb84f8712c130a0, 0x3fefdafa7514538c, // -0.094963, 0.99548
+ 0xbfb8b398cf0c38e0, 0x3fefd9c68127c78c, // -0.09649, 0.99533
+ 0xbfb917a6bc29b42c, 0x3fefd88da3d12526, // -0.098017, 0.99518
+ 0xbfb97bb0caaba56f, 0x3fefd74fdd40abbf, // -0.099544, 0.99503
+ 0xbfb9dfb6eb24a85c, 0x3fefd60d2da75c9e, // -0.10107, 0.99488
+ 0xbfba43b90e27f3c4, 0x3fefd4c59536fae4, // -0.1026, 0.99472
+ 0xbfbaa7b724495c04, 0x3fefd37914220b84, // -0.10412, 0.99456
+ 0xbfbb0bb11e1d5559, 0x3fefd227aa9bd53b, // -0.10565, 0.9944
+ 0xbfbb6fa6ec38f64c, 0x3fefd0d158d86087, // -0.10717, 0.99424
+ 0xbfbbd3987f31fa0e, 0x3fefcf761f0c77a3, // -0.1087, 0.99407
+ 0xbfbc3785c79ec2d5, 0x3fefce15fd6da67b, // -0.11022, 0.99391
+ 0xbfbc9b6eb6165c42, 0x3fefccb0f4323aa3, // -0.11175, 0.99374
+ 0xbfbcff533b307dc1, 0x3fefcb4703914354, // -0.11327, 0.99356
+ 0xbfbd633347858ce4, 0x3fefc9d82bc2915e, // -0.11479, 0.99339
+ 0xbfbdc70ecbae9fc8, 0x3fefc8646cfeb721, // -0.11632, 0.99321
+ 0xbfbe2ae5b8457f77, 0x3fefc6ebc77f0887, // -0.11784, 0.99303
+ 0xbfbe8eb7fde4aa3e, 0x3fefc56e3b7d9af6, // -0.11937, 0.99285
+ 0xbfbef2858d27561b, 0x3fefc3ebc935454c, // -0.12089, 0.99267
+ 0xbfbf564e56a9730e, 0x3fefc26470e19fd3, // -0.12241, 0.99248
+ 0xbfbfba124b07ad85, 0x3fefc0d832bf043a, // -0.12393, 0.99229
+ 0xbfc00ee8ad6fb85b, 0x3fefbf470f0a8d88, // -0.12545, 0.9921
+ 0xbfc040c5bb67747e, 0x3fefbdb106021816, // -0.12698, 0.99191
+ 0xbfc072a047ba831d, 0x3fefbc1617e44186, // -0.1285, 0.99171
+ 0xbfc0a4784ab8bf1d, 0x3fefba7644f068b5, // -0.13002, 0.99151
+ 0xbfc0d64dbcb26786, 0x3fefb8d18d66adb7, // -0.13154, 0.99131
+ 0xbfc1082095f820b0, 0x3fefb727f187f1c7, // -0.13306, 0.99111
+ 0xbfc139f0cedaf576, 0x3fefb5797195d741, // -0.13458, 0.9909
+ 0xbfc16bbe5fac5865, 0x3fefb3c60dd2c199, // -0.1361, 0.9907
+ 0xbfc19d8940be24e7, 0x3fefb20dc681d54d, // -0.13762, 0.99049
+ 0xbfc1cf516a62a077, 0x3fefb0509be6f7db, // -0.13914, 0.99027
+ 0xbfc20116d4ec7bce, 0x3fefae8e8e46cfbb, // -0.14066, 0.99006
+ 0xbfc232d978aed413, 0x3fefacc79de6c44f, // -0.14218, 0.98984
+ 0xbfc264994dfd340a, 0x3fefaafbcb0cfddc, // -0.1437, 0.98962
+ 0xbfc296564d2b953e, 0x3fefa92b1600657c, // -0.14521, 0.9894
+ 0xbfc2c8106e8e613a, 0x3fefa7557f08a517, // -0.14673, 0.98918
+ 0xbfc2f9c7aa7a72af, 0x3fefa57b066e2754, // -0.14825, 0.98895
+ 0xbfc32b7bf94516a7, 0x3fefa39bac7a1791, // -0.14976, 0.98872
+ 0xbfc35d2d53440db2, 0x3fefa1b7717661d5, // -0.15128, 0.98849
+ 0xbfc38edbb0cd8d14, 0x3fef9fce55adb2c8, // -0.1528, 0.98826
+ 0xbfc3c0870a383ff6, 0x3fef9de0596b77a3, // -0.15431, 0.98802
+ 0xbfc3f22f57db4893, 0x3fef9bed7cfbde29, // -0.15583, 0.98778
+ 0xbfc423d4920e4166, 0x3fef99f5c0abd496, // -0.15734, 0.98754
+ 0xbfc45576b1293e5a, 0x3fef97f924c9099b, // -0.15886, 0.9873
+ 0xbfc48715ad84cdf5, 0x3fef95f7a9a1ec47, // -0.16037, 0.98706
+ 0xbfc4b8b17f79fa88, 0x3fef93f14f85ac08, // -0.16189, 0.98681
+ 0xbfc4ea4a1f624b61, 0x3fef91e616c43891, // -0.1634, 0.98656
+ 0xbfc51bdf8597c5f2, 0x3fef8fd5ffae41db, // -0.16491, 0.98631
+ 0xbfc54d71aa74ef02, 0x3fef8dc10a95380d, // -0.16643, 0.98605
+ 0xbfc57f008654cbde, 0x3fef8ba737cb4b78, // -0.16794, 0.9858
+ 0xbfc5b08c1192e381, 0x3fef898887a36c84, // -0.16945, 0.98554
+ 0xbfc5e214448b3fc6, 0x3fef8764fa714ba9, // -0.17096, 0.98528
+ 0xbfc61399179a6e94, 0x3fef853c9089595e, // -0.17247, 0.98501
+ 0xbfc6451a831d830d, 0x3fef830f4a40c60c, // -0.17398, 0.98475
+ 0xbfc676987f7216b8, 0x3fef80dd27ed8204, // -0.17549, 0.98448
+ 0xbfc6a81304f64ab2, 0x3fef7ea629e63d6e, // -0.177, 0.98421
+ 0xbfc6d98a0c08c8da, 0x3fef7c6a50826840, // -0.17851, 0.98394
+ 0xbfc70afd8d08c4ff, 0x3fef7a299c1a322a, // -0.18002, 0.98366
+ 0xbfc73c6d8055fe0a, 0x3fef77e40d068a90, // -0.18153, 0.98339
+ 0xbfc76dd9de50bf31, 0x3fef7599a3a12077, // -0.18304, 0.98311
+ 0xbfc79f429f59e11d, 0x3fef734a60446279, // -0.18455, 0.98282
+ 0xbfc7d0a7bbd2cb1b, 0x3fef70f6434b7eb7, // -0.18606, 0.98254
+ 0xbfc802092c1d744b, 0x3fef6e9d4d1262ca, // -0.18756, 0.98225
+ 0xbfc83366e89c64c5, 0x3fef6c3f7df5bbb7, // -0.18907, 0.98196
+ 0xbfc864c0e9b2b6cf, 0x3fef69dcd652f5de, // -0.19057, 0.98167
+ 0xbfc8961727c41804, 0x3fef677556883cee, // -0.19208, 0.98138
+ 0xbfc8c7699b34ca7e, 0x3fef6508fef47bd5, // -0.19359, 0.98108
+ 0xbfc8f8b83c69a60a, 0x3fef6297cff75cb0, // -0.19509, 0.98079
+ 0xbfc92a0303c8194f, 0x3fef6021c9f148c2, // -0.19659, 0.98048
+ 0xbfc95b49e9b62af9, 0x3fef5da6ed43685d, // -0.1981, 0.98018
+ 0xbfc98c8ce69a7aec, 0x3fef5b273a4fa2d9, // -0.1996, 0.97988
+ 0xbfc9bdcbf2dc4366, 0x3fef58a2b1789e84, // -0.2011, 0.97957
+ 0xbfc9ef0706e35a35, 0x3fef56195321c090, // -0.20261, 0.97926
+ 0xbfca203e1b1831da, 0x3fef538b1faf2d07, // -0.20411, 0.97895
+ 0xbfca517127e3dabc, 0x3fef50f81785c6b9, // -0.20561, 0.97863
+ 0xbfca82a025b00451, 0x3fef4e603b0b2f2d, // -0.20711, 0.97832
+ 0xbfcab3cb0ce6fe44, 0x3fef4bc38aa5c694, // -0.20861, 0.978
+ 0xbfcae4f1d5f3b9ab, 0x3fef492206bcabb4, // -0.21011, 0.97768
+ 0xbfcb16147941ca2a, 0x3fef467bafb7bbe0, // -0.21161, 0.97735
+ 0xbfcb4732ef3d6722, 0x3fef43d085ff92dd, // -0.21311, 0.97703
+ 0xbfcb784d30536cda, 0x3fef412089fd8adc, // -0.21461, 0.9767
+ 0xbfcba96334f15dad, 0x3fef3e6bbc1bbc65, // -0.21611, 0.97637
+ 0xbfcbda74f5856330, 0x3fef3bb21cc4fe47, // -0.2176, 0.97604
+ 0xbfcc0b826a7e4f63, 0x3fef38f3ac64e589, // -0.2191, 0.9757
+ 0xbfcc3c8b8c4b9dd7, 0x3fef36306b67c556, // -0.2206, 0.97536
+ 0xbfcc6d90535d74dc, 0x3fef33685a3aaef0, // -0.22209, 0.97503
+ 0xbfcc9e90b824a6a9, 0x3fef309b794b719f, // -0.22359, 0.97468
+ 0xbfcccf8cb312b286, 0x3fef2dc9c9089a9d, // -0.22508, 0.97434
+ 0xbfcd00843c99c5f9, 0x3fef2af349e17507, // -0.22658, 0.97399
+ 0xbfcd31774d2cbdee, 0x3fef2817fc4609ce, // -0.22807, 0.97364
+ 0xbfcd6265dd3f27e3, 0x3fef2537e0a71f9f, // -0.22957, 0.97329
+ 0xbfcd934fe5454311, 0x3fef2252f7763ada, // -0.23106, 0.97294
+ 0xbfcdc4355db40195, 0x3fef1f6941259d7a, // -0.23255, 0.97258
+ 0xbfcdf5163f01099a, 0x3fef1c7abe284708, // -0.23404, 0.97223
+ 0xbfce25f281a2b684, 0x3fef19876ef1f486, // -0.23553, 0.97187
+ 0xbfce56ca1e101a1b, 0x3fef168f53f7205d, // -0.23702, 0.9715
+ 0xbfce879d0cc0fdaf, 0x3fef13926dad024e, // -0.23851, 0.97114
+ 0xbfceb86b462de348, 0x3fef1090bc898f5f, // -0.24, 0.97077
+ 0xbfcee934c2d006c7, 0x3fef0d8a410379c5, // -0.24149, 0.9704
+ 0xbfcf19f97b215f1a, 0x3fef0a7efb9230d7, // -0.24298, 0.97003
+ 0xbfcf4ab9679c9f5c, 0x3fef076eecade0fa, // -0.24447, 0.96966
+ 0xbfcf7b7480bd3801, 0x3fef045a14cf738c, // -0.24596, 0.96928
+ 0xbfcfac2abeff57ff, 0x3fef014074708ed3, // -0.24744, 0.9689
+ 0xbfcfdcdc1adfedf8, 0x3feefe220c0b95ec, // -0.24893, 0.96852
+ 0xbfd006c4466e54af, 0x3feefafedc1ba8b7, // -0.25041, 0.96814
+ 0xbfd01f1806b9fdd2, 0x3feef7d6e51ca3c0, // -0.2519, 0.96775
+ 0xbfd037694a928cac, 0x3feef4aa278b2032, // -0.25338, 0.96737
+ 0xbfd04fb80e37fdae, 0x3feef178a3e473c2, // -0.25487, 0.96698
+ 0xbfd068044deab002, 0x3feeee425aa6b09a, // -0.25635, 0.96658
+ 0xbfd0804e05eb661e, 0x3feeeb074c50a544, // -0.25783, 0.96619
+ 0xbfd09895327b465e, 0x3feee7c77961dc9e, // -0.25931, 0.96579
+ 0xbfd0b0d9cfdbdb90, 0x3feee482e25a9dbc, // -0.26079, 0.96539
+ 0xbfd0c91bda4f158d, 0x3feee13987bbebdc, // -0.26227, 0.96499
+ 0xbfd0e15b4e1749cd, 0x3feeddeb6a078651, // -0.26375, 0.96459
+ 0xbfd0f998277733f7, 0x3feeda9889bfe86a, // -0.26523, 0.96418
+ 0xbfd111d262b1f677, 0x3feed740e7684963, // -0.26671, 0.96378
+ 0xbfd12a09fc0b1b12, 0x3feed3e483849c51, // -0.26819, 0.96337
+ 0xbfd1423eefc69378, 0x3feed0835e999009, // -0.26967, 0.96295
+ 0xbfd15a713a28b9d9, 0x3feecd1d792c8f10, // -0.27115, 0.96254
+ 0xbfd172a0d7765177, 0x3feec9b2d3c3bf84, // -0.27262, 0.96212
+ 0xbfd18acdc3f4873a, 0x3feec6436ee60309, // -0.2741, 0.9617
+ 0xbfd1a2f7fbe8f243, 0x3feec2cf4b1af6b2, // -0.27557, 0.96128
+ 0xbfd1bb1f7b999480, 0x3feebf5668eaf2ef, // -0.27705, 0.96086
+ 0xbfd1d3443f4cdb3d, 0x3feebbd8c8df0b74, // -0.27852, 0.96043
+ 0xbfd1eb6643499fbb, 0x3feeb8566b810f2a, // -0.27999, 0.96
+ 0xbfd2038583d727bd, 0x3feeb4cf515b8811, // -0.28146, 0.95957
+ 0xbfd21ba1fd3d2623, 0x3feeb1437af9bb34, // -0.28294, 0.95914
+ 0xbfd233bbabc3bb72, 0x3feeadb2e8e7a88e, // -0.28441, 0.9587
+ 0xbfd24bd28bb37672, 0x3feeaa1d9bb20af3, // -0.28588, 0.95827
+ 0xbfd263e6995554ba, 0x3feea68393e65800, // -0.28735, 0.95783
+ 0xbfd27bf7d0f2c346, 0x3feea2e4d212c000, // -0.28882, 0.95738
+ 0xbfd294062ed59f05, 0x3fee9f4156c62dda, // -0.29028, 0.95694
+ 0xbfd2ac11af483572, 0x3fee9b99229046f8, // -0.29175, 0.95649
+ 0xbfd2c41a4e954520, 0x3fee97ec36016b30, // -0.29322, 0.95605
+ 0xbfd2dc200907fe51, 0x3fee943a91aab4b4, // -0.29469, 0.95559
+ 0xbfd2f422daec0386, 0x3fee9084361df7f3, // -0.29615, 0.95514
+ 0xbfd30c22c08d6a13, 0x3fee8cc923edc388, // -0.29762, 0.95469
+ 0xbfd3241fb638baaf, 0x3fee89095bad6025, // -0.29908, 0.95423
+ 0xbfd33c19b83af207, 0x3fee8544ddf0d075, // -0.30054, 0.95377
+ 0xbfd35410c2e18152, 0x3fee817bab4cd10d, // -0.30201, 0.95331
+ 0xbfd36c04d27a4edf, 0x3fee7dadc456d850, // -0.30347, 0.95284
+ 0xbfd383f5e353b6aa, 0x3fee79db29a5165a, // -0.30493, 0.95238
+ 0xbfd39be3f1bc8aef, 0x3fee7603dbce74e9, // -0.30639, 0.95191
+ 0xbfd3b3cefa0414b7, 0x3fee7227db6a9744, // -0.30785, 0.95144
+ 0xbfd3cbb6f87a146e, 0x3fee6e472911da27, // -0.30931, 0.95096
+ 0xbfd3e39be96ec271, 0x3fee6a61c55d53a7, // -0.31077, 0.95049
+ 0xbfd3fb7dc932cfa4, 0x3fee6677b0e6d31e, // -0.31222, 0.95001
+ 0xbfd4135c94176602, 0x3fee6288ec48e112, // -0.31368, 0.94953
+ 0xbfd42b38466e2928, 0x3fee5e95781ebf1c, // -0.31514, 0.94905
+ 0xbfd44310dc8936f0, 0x3fee5a9d550467d3, // -0.31659, 0.94856
+ 0xbfd45ae652bb2800, 0x3fee56a083968eb1, // -0.31805, 0.94807
+ 0xbfd472b8a5571054, 0x3fee529f04729ffc, // -0.3195, 0.94759
+ 0xbfd48a87d0b07fd7, 0x3fee4e98d836c0af, // -0.32096, 0.94709
+ 0xbfd4a253d11b82f3, 0x3fee4a8dff81ce5e, // -0.32241, 0.9466
+ 0xbfd4ba1ca2eca31c, 0x3fee467e7af35f23, // -0.32386, 0.94611
+ 0xbfd4d1e24278e76a, 0x3fee426a4b2bc17e, // -0.32531, 0.94561
+ 0xbfd4e9a4ac15d520, 0x3fee3e5170cbfc46, // -0.32676, 0.94511
+ 0xbfd50163dc197047, 0x3fee3a33ec75ce85, // -0.32821, 0.9446
+ 0xbfd5191fceda3c35, 0x3fee3611becbaf69, // -0.32966, 0.9441
+ 0xbfd530d880af3c24, 0x3fee31eae870ce25, // -0.33111, 0.94359
+ 0xbfd5488dedeff3be, 0x3fee2dbf6a0911d9, // -0.33255, 0.94308
+ 0xbfd5604012f467b4, 0x3fee298f4439197a, // -0.334, 0.94257
+ 0xbfd577eeec151e47, 0x3fee255a77a63bb8, // -0.33545, 0.94206
+ 0xbfd58f9a75ab1fdd, 0x3fee212104f686e5, // -0.33689, 0.94154
+ 0xbfd5a742ac0ff78d, 0x3fee1ce2ecd0c0d8, // -0.33833, 0.94103
+ 0xbfd5bee78b9db3b6, 0x3fee18a02fdc66d9, // -0.33978, 0.94051
+ 0xbfd5d68910aee686, 0x3fee1458cec1ad83, // -0.34122, 0.93998
+ 0xbfd5ee27379ea693, 0x3fee100cca2980ac, // -0.34266, 0.93946
+ 0xbfd605c1fcc88f63, 0x3fee0bbc22bd8349, // -0.3441, 0.93893
+ 0xbfd61d595c88c203, 0x3fee0766d9280f54, // -0.34554, 0.9384
+ 0xbfd634ed533be58e, 0x3fee030cee1435b8, // -0.34698, 0.93787
+ 0xbfd64c7ddd3f27c6, 0x3fedfeae622dbe2b, // -0.34842, 0.93734
+ 0xbfd6640af6f03d9e, 0x3fedfa4b3621271d, // -0.34986, 0.9368
+ 0xbfd67b949cad63ca, 0x3fedf5e36a9ba59c, // -0.35129, 0.93627
+ 0xbfd6931acad55f51, 0x3fedf177004b2534, // -0.35273, 0.93573
+ 0xbfd6aa9d7dc77e16, 0x3feded05f7de47da, // -0.35416, 0.93518
+ 0xbfd6c21cb1e39771, 0x3fede890520465ce, // -0.3556, 0.93464
+ 0xbfd6d998638a0cb5, 0x3fede4160f6d8d81, // -0.35703, 0.93409
+ 0xbfd6f1108f1bc9c5, 0x3feddf9730ca837b, // -0.35846, 0.93354
+ 0xbfd7088530fa459e, 0x3feddb13b6ccc23d, // -0.3599, 0.93299
+ 0xbfd71ff6458782ec, 0x3fedd68ba2267a25, // -0.36133, 0.93244
+ 0xbfd73763c9261092, 0x3fedd1fef38a915a, // -0.36276, 0.93188
+ 0xbfd74ecdb8390a3e, 0x3fedcd6dabaca3a5, // -0.36418, 0.93133
+ 0xbfd766340f2418f6, 0x3fedc8d7cb410260, // -0.36561, 0.93077
+ 0xbfd77d96ca4b73a6, 0x3fedc43d52fcb453, // -0.36704, 0.93021
+ 0xbfd794f5e613dfae, 0x3fedbf9e4395759a, // -0.36847, 0.92964
+ 0xbfd7ac515ee2b172, 0x3fedbafa9dc1b78d, // -0.36989, 0.92907
+ 0xbfd7c3a9311dcce7, 0x3fedb6526238a09b, // -0.37132, 0.92851
+ 0xbfd7dafd592ba621, 0x3fedb1a591b20c38, // -0.37274, 0.92794
+ 0xbfd7f24dd37341e3, 0x3fedacf42ce68ab9, // -0.37416, 0.92736
+ 0xbfd8099a9c5c362d, 0x3feda83e348f613b, // -0.37559, 0.92679
+ 0xbfd820e3b04eaac4, 0x3feda383a9668988, // -0.37701, 0.92621
+ 0xbfd838290bb359c8, 0x3fed9ec48c26b1f3, // -0.37843, 0.92563
+ 0xbfd84f6aaaf3903f, 0x3fed9a00dd8b3d46, // -0.37985, 0.92505
+ 0xbfd866a88a792ea0, 0x3fed95389e50429b, // -0.38127, 0.92447
+ 0xbfd87de2a6aea963, 0x3fed906bcf328d46, // -0.38268, 0.92388
+ 0xbfd89518fbff098e, 0x3fed8b9a70ef9cb4, // -0.3841, 0.92329
+ 0xbfd8ac4b86d5ed44, 0x3fed86c48445a450, // -0.38552, 0.9227
+ 0xbfd8c37a439f884f, 0x3fed81ea09f38b63, // -0.38693, 0.92211
+ 0xbfd8daa52ec8a4af, 0x3fed7d0b02b8ecf9, // -0.38835, 0.92151
+ 0xbfd8f1cc44bea329, 0x3fed78276f5617c6, // -0.38976, 0.92092
+ 0xbfd908ef81ef7bd1, 0x3fed733f508c0dff, // -0.39117, 0.92032
+ 0xbfd9200ee2c9be97, 0x3fed6e52a71c8547, // -0.39258, 0.91972
+ 0xbfd9372a63bc93d7, 0x3fed696173c9e68b, // -0.39399, 0.91911
+ 0xbfd94e420137bce3, 0x3fed646bb7574de5, // -0.3954, 0.91851
+ 0xbfd96555b7ab948f, 0x3fed5f7172888a7f, // -0.39681, 0.9179
+ 0xbfd97c6583890fc2, 0x3fed5a72a6221e73, // -0.39822, 0.91729
+ 0xbfd993716141bdfe, 0x3fed556f52e93eb1, // -0.39962, 0.91668
+ 0xbfd9aa794d47c9ee, 0x3fed506779a3d2d9, // -0.40103, 0.91606
+ 0xbfd9c17d440df9f2, 0x3fed4b5b1b187524, // -0.40243, 0.91545
+ 0xbfd9d87d4207b0ab, 0x3fed464a380e7242, // -0.40384, 0.91483
+ 0xbfd9ef7943a8ed8a, 0x3fed4134d14dc93a, // -0.40524, 0.91421
+ 0xbfda067145664d57, 0x3fed3c1ae79f2b4e, // -0.40664, 0.91359
+ 0xbfda1d6543b50ac0, 0x3fed36fc7bcbfbdc, // -0.40804, 0.91296
+ 0xbfda34553b0afee5, 0x3fed31d98e9e503a, // -0.40944, 0.91234
+ 0xbfda4b4127dea1e4, 0x3fed2cb220e0ef9f, // -0.41084, 0.91171
+ 0xbfda622906a70b63, 0x3fed2786335f52fc, // -0.41224, 0.91107
+ 0xbfda790cd3dbf31a, 0x3fed2255c6e5a4e1, // -0.41364, 0.91044
+ 0xbfda8fec8bf5b166, 0x3fed1d20dc40c15c, // -0.41503, 0.90981
+ 0xbfdaa6c82b6d3fc9, 0x3fed17e7743e35dc, // -0.41643, 0.90917
+ 0xbfdabd9faebc3980, 0x3fed12a98fac410c, // -0.41782, 0.90853
+ 0xbfdad473125cdc08, 0x3fed0d672f59d2b9, // -0.41922, 0.90789
+ 0xbfdaeb4252ca07ab, 0x3fed082054168bac, // -0.42061, 0.90724
+ 0xbfdb020d6c7f4009, 0x3fed02d4feb2bd92, // -0.422, 0.9066
+ 0xbfdb18d45bf8aca6, 0x3fecfd852fff6ad4, // -0.42339, 0.90595
+ 0xbfdb2f971db31972, 0x3fecf830e8ce467b, // -0.42478, 0.9053
+ 0xbfdb4655ae2bf757, 0x3fecf2d829f1b40e, // -0.42617, 0.90464
+ 0xbfdb5d1009e15cc0, 0x3feced7af43cc773, // -0.42756, 0.90399
+ 0xbfdb73c62d520624, 0x3fece819488344ce, // -0.42894, 0.90333
+ 0xbfdb8a7814fd5693, 0x3fece2b32799a060, // -0.43033, 0.90267
+ 0xbfdba125bd63583e, 0x3fecdd489254fe65, // -0.43171, 0.90201
+ 0xbfdbb7cf2304bd01, 0x3fecd7d9898b32f6, // -0.43309, 0.90135
+ 0xbfdbce744262deee, 0x3fecd2660e12c1e6, // -0.43448, 0.90068
+ 0xbfdbe51517ffc0d9, 0x3fecccee20c2de9f, // -0.43586, 0.90002
+ 0xbfdbfbb1a05e0edc, 0x3fecc771c2736c09, // -0.43724, 0.89935
+ 0xbfdc1249d8011ee7, 0x3fecc1f0f3fcfc5c, // -0.43862, 0.89867
+ 0xbfdc28ddbb6cf145, 0x3fecbc6bb638d10b, // -0.43999, 0.898
+ 0xbfdc3f6d47263129, 0x3fecb6e20a00da99, // -0.44137, 0.89732
+ 0xbfdc55f877b23537, 0x3fecb153f02fb87d, // -0.44275, 0.89665
+ 0xbfdc6c7f4997000a, 0x3fecabc169a0b901, // -0.44412, 0.89597
+ 0xbfdc8301b95b40c2, 0x3feca62a772fd919, // -0.4455, 0.89528
+ 0xbfdc997fc3865388, 0x3feca08f19b9c449, // -0.44687, 0.8946
+ 0xbfdcaff964a0421d, 0x3fec9aef521bd480, // -0.44824, 0.89391
+ 0xbfdcc66e9931c45d, 0x3fec954b213411f5, // -0.44961, 0.89322
+ 0xbfdcdcdf5dc440ce, 0x3fec8fa287e13305, // -0.45098, 0.89253
+ 0xbfdcf34baee1cd21, 0x3fec89f587029c13, // -0.45235, 0.89184
+ 0xbfdd09b389152ec1, 0x3fec84441f785f61, // -0.45372, 0.89115
+ 0xbfdd2016e8e9db5b, 0x3fec7e8e52233cf3, // -0.45508, 0.89045
+ 0xbfdd3675caebf962, 0x3fec78d41fe4a267, // -0.45645, 0.88975
+ 0xbfdd4cd02ba8609c, 0x3fec7315899eaad7, // -0.45781, 0.88905
+ 0xbfdd632607ac9aa9, 0x3fec6d5290341eb2, // -0.45918, 0.88835
+ 0xbfdd79775b86e389, 0x3fec678b3488739b, // -0.46054, 0.88764
+ 0xbfdd8fc423c62a25, 0x3fec61bf777fcc48, // -0.4619, 0.88693
+ 0xbfdda60c5cfa10d8, 0x3fec5bef59fef85a, // -0.46326, 0.88622
+ 0xbfddbc5003b2edf8, 0x3fec561adceb743e, // -0.46462, 0.88551
+ 0xbfddd28f1481cc58, 0x3fec5042012b6907, // -0.46598, 0.8848
+ 0xbfdde8c98bf86bd6, 0x3fec4a64c7a5ac4c, // -0.46733, 0.88408
+ 0xbfddfeff66a941de, 0x3fec44833141c004, // -0.46869, 0.88336
+ 0xbfde1530a12779f4, 0x3fec3e9d3ee7d262, // -0.47004, 0.88264
+ 0xbfde2b5d3806f63b, 0x3fec38b2f180bdb1, // -0.4714, 0.88192
+ 0xbfde418527dc4ffa, 0x3fec32c449f60831, // -0.47275, 0.8812
+ 0xbfde57a86d3cd824, 0x3fec2cd14931e3f1, // -0.4741, 0.88047
+ 0xbfde6dc704be97e2, 0x3fec26d9f01f2eaf, // -0.47545, 0.87974
+ 0xbfde83e0eaf85113, 0x3fec20de3fa971b0, // -0.4768, 0.87901
+ 0xbfde99f61c817eda, 0x3fec1ade38bce19b, // -0.47815, 0.87828
+ 0xbfdeb00695f25620, 0x3fec14d9dc465e58, // -0.47949, 0.87755
+ 0xbfdec61253e3c61b, 0x3fec0ed12b3372e9, // -0.48084, 0.87681
+ 0xbfdedc1952ef78d5, 0x3fec08c426725549, // -0.48218, 0.87607
+ 0xbfdef21b8fafd3b5, 0x3fec02b2cef1e641, // -0.48353, 0.87533
+ 0xbfdf081906bff7fd, 0x3febfc9d25a1b147, // -0.48487, 0.87459
+ 0xbfdf1e11b4bbc35c, 0x3febf6832b71ec5b, // -0.48621, 0.87384
+ 0xbfdf3405963fd068, 0x3febf064e15377dd, // -0.48755, 0.87309
+ 0xbfdf49f4a7e97729, 0x3febea424837de6d, // -0.48889, 0.87235
+ 0xbfdf5fdee656cda3, 0x3febe41b611154c1, // -0.49023, 0.8716
+ 0xbfdf75c44e26a852, 0x3febddf02cd2b983, // -0.49156, 0.87084
+ 0xbfdf8ba4dbf89aba, 0x3febd7c0ac6f952a, // -0.4929, 0.87009
+ 0xbfdfa1808c6cf7e0, 0x3febd18ce0dc19d6, // -0.49423, 0.86933
+ 0xbfdfb7575c24d2de, 0x3febcb54cb0d2327, // -0.49557, 0.86857
+ 0xbfdfcd2947c1ff57, 0x3febc5186bf8361d, // -0.4969, 0.86781
+ 0xbfdfe2f64be7120f, 0x3febbed7c49380ea, // -0.49823, 0.86705
+ 0xbfdff8be6537615e, 0x3febb892d5d5dad5, // -0.49956, 0.86628
+ 0xbfe00740c82b82e0, 0x3febb249a0b6c40d, // -0.50089, 0.86551
+ 0xbfe0121fe4f56d2c, 0x3febabfc262e6586, // -0.50221, 0.86474
+ 0xbfe01cfc874c3eb7, 0x3feba5aa673590d2, // -0.50354, 0.86397
+ 0xbfe027d6ad83287e, 0x3feb9f5464c5bffc, // -0.50486, 0.8632
+ 0xbfe032ae55edbd95, 0x3feb98fa1fd9155e, // -0.50619, 0.86242
+ 0xbfe03d837edff370, 0x3feb929b996a5b7f, // -0.50751, 0.86165
+ 0xbfe0485626ae221a, 0x3feb8c38d27504e9, // -0.50883, 0.86087
+ 0xbfe053264bad0483, 0x3feb85d1cbf52c02, // -0.51015, 0.86009
+ 0xbfe05df3ec31b8b6, 0x3feb7f6686e792ea, // -0.51147, 0.8593
+ 0xbfe068bf0691c028, 0x3feb78f70449a34b, // -0.51279, 0.85852
+ 0xbfe073879922ffed, 0x3feb728345196e3e, // -0.5141, 0.85773
+ 0xbfe07e4da23bc102, 0x3feb6c0b4a55ac17, // -0.51542, 0.85694
+ 0xbfe089112032b08c, 0x3feb658f14fdbc47, // -0.51673, 0.85615
+ 0xbfe093d2115ee018, 0x3feb5f0ea611a532, // -0.51804, 0.85535
+ 0xbfe09e907417c5e1, 0x3feb5889fe921405, // -0.51936, 0.85456
+ 0xbfe0a94c46b53d0b, 0x3feb52011f805c92, // -0.52067, 0.85376
+ 0xbfe0b405878f85ec, 0x3feb4b7409de7925, // -0.52198, 0.85296
+ 0xbfe0bebc34ff4646, 0x3feb44e2beaf0a61, // -0.52328, 0.85216
+ 0xbfe0c9704d5d898f, 0x3feb3e4d3ef55712, // -0.52459, 0.85136
+ 0xbfe0d421cf03c12b, 0x3feb37b38bb54c09, // -0.5259, 0.85055
+ 0xbfe0ded0b84bc4b5, 0x3feb3115a5f37bf4, // -0.5272, 0.84974
+ 0xbfe0e97d078fd23b, 0x3feb2a738eb51f33, // -0.5285, 0.84893
+ 0xbfe0f426bb2a8e7d, 0x3feb23cd470013b4, // -0.5298, 0.84812
+ 0xbfe0fecdd1770537, 0x3feb1d22cfdadcc6, // -0.5311, 0.84731
+ 0xbfe1097248d0a956, 0x3feb16742a4ca2f5, // -0.5324, 0.84649
+ 0xbfe114141f935545, 0x3feb0fc1575d33db, // -0.5337, 0.84567
+ 0xbfe11eb3541b4b22, 0x3feb090a58150200, // -0.535, 0.84485
+ 0xbfe1294fe4c5350a, 0x3feb024f2d7d24a9, // -0.53629, 0.84403
+ 0xbfe133e9cfee254e, 0x3feafb8fd89f57b6, // -0.53759, 0.84321
+ 0xbfe13e8113f396c1, 0x3feaf4cc5a85fb73, // -0.53888, 0.84238
+ 0xbfe14915af336ceb, 0x3feaee04b43c1474, // -0.54017, 0.84155
+ 0xbfe153a7a00bf453, 0x3feae738e6cd4b67, // -0.54146, 0.84073
+ 0xbfe15e36e4dbe2bc, 0x3feae068f345ecef, // -0.54275, 0.83989
+ 0xbfe168c37c025764, 0x3fead994dab2e979, // -0.54404, 0.83906
+ 0xbfe1734d63dedb49, 0x3fead2bc9e21d511, // -0.54532, 0.83822
+ 0xbfe17dd49ad16161, 0x3feacbe03ea0e73b, // -0.54661, 0.83739
+ 0xbfe188591f3a46e5, 0x3feac4ffbd3efac8, // -0.54789, 0.83655
+ 0xbfe192daef7a5386, 0x3feabe1b1b0b8dac, // -0.54918, 0.83571
+ 0xbfe19d5a09f2b9b8, 0x3feab7325916c0d4, // -0.55046, 0.83486
+ 0xbfe1a7d66d0516e6, 0x3feab045787157ff, // -0.55174, 0.83402
+ 0xbfe1b250171373be, 0x3feaa9547a2cb98e, // -0.55302, 0.83317
+ 0xbfe1bcc706804467, 0x3feaa25f5f5aee60, // -0.55429, 0.83232
+ 0xbfe1c73b39ae68c8, 0x3fea9b66290ea1a3, // -0.55557, 0.83147
+ 0xbfe1d1acaf012cc2, 0x3fea9468d85b20ae, // -0.55685, 0.83062
+ 0xbfe1dc1b64dc4872, 0x3fea8d676e545ad2, // -0.55812, 0.82976
+ 0xbfe1e68759a3e074, 0x3fea8661ec0ee133, // -0.55939, 0.8289
+ 0xbfe1f0f08bbc861b, 0x3fea7f58529fe69d, // -0.56066, 0.82805
+ 0xbfe1fb56f98b37b8, 0x3fea784aa31d3f55, // -0.56193, 0.82718
+ 0xbfe205baa17560d6, 0x3fea7138de9d60f5, // -0.5632, 0.82632
+ 0xbfe2101b81e0da78, 0x3fea6a230637623b, // -0.56447, 0.82546
+ 0xbfe21a799933eb58, 0x3fea63091b02fae2, // -0.56573, 0.82459
+ 0xbfe224d4e5d5482e, 0x3fea5beb1e188375, // -0.567, 0.82372
+ 0xbfe22f2d662c13e1, 0x3fea54c91090f524, // -0.56826, 0.82285
+ 0xbfe23983189fdfd5, 0x3fea4da2f385e997, // -0.56952, 0.82198
+ 0xbfe243d5fb98ac1f, 0x3fea4678c8119ac8, // -0.57078, 0.8211
+ 0xbfe24e260d7ee7c9, 0x3fea3f4a8f4ee2d2, // -0.57204, 0.82023
+ 0xbfe258734cbb7110, 0x3fea38184a593bc6, // -0.5733, 0.81935
+ 0xbfe262bdb7b795a2, 0x3fea30e1fa4cbf81, // -0.57455, 0.81847
+ 0xbfe26d054cdd12df, 0x3fea29a7a0462782, // -0.57581, 0.81758
+ 0xbfe2774a0a961612, 0x3fea22693d62ccb9, // -0.57706, 0.8167
+ 0xbfe2818bef4d3cba, 0x3fea1b26d2c0a75e, // -0.57831, 0.81581
+ 0xbfe28bcaf96d94ba, 0x3fea13e0617e4ec7, // -0.57956, 0.81493
+ 0xbfe2960727629ca8, 0x3fea0c95eabaf937, // -0.58081, 0.81404
+ 0xbfe2a040779843fb, 0x3fea05476f967bb5, // -0.58206, 0.81314
+ 0xbfe2aa76e87aeb58, 0x3fe9fdf4f13149de, // -0.58331, 0.81225
+ 0xbfe2b4aa787764c4, 0x3fe9f69e70ac75bc, // -0.58455, 0.81135
+ 0xbfe2bedb25faf3ea, 0x3fe9ef43ef29af94, // -0.5858, 0.81046
+ 0xbfe2c908ef734e57, 0x3fe9e7e56dcb45bd, // -0.58704, 0.80956
+ 0xbfe2d333d34e9bb7, 0x3fe9e082edb42472, // -0.58828, 0.80866
+ 0xbfe2dd5bcffb7616, 0x3fe9d91c7007d5a6, // -0.58952, 0.80775
+ 0xbfe2e780e3e8ea16, 0x3fe9d1b1f5ea80d6, // -0.59076, 0.80685
+ 0xbfe2f1a30d86773a, 0x3fe9ca438080eadb, // -0.592, 0.80594
+ 0xbfe2fbc24b441015, 0x3fe9c2d110f075c3, // -0.59323, 0.80503
+ 0xbfe305de9b921a94, 0x3fe9bb5aa85f2098, // -0.59447, 0.80412
+ 0xbfe30ff7fce17035, 0x3fe9b3e047f38741, // -0.5957, 0.80321
+ 0xbfe31a0e6da35e44, 0x3fe9ac61f0d4e247, // -0.59693, 0.80229
+ 0xbfe32421ec49a620, 0x3fe9a4dfa42b06b2, // -0.59816, 0.80138
+ 0xbfe32e3277467d6b, 0x3fe99d59631e65d5, // -0.59939, 0.80046
+ 0xbfe338400d0c8e57, 0x3fe995cf2ed80d22, // -0.60062, 0.79954
+ 0xbfe3424aac0ef7d6, 0x3fe98e410881a600, // -0.60184, 0.79861
+ 0xbfe34c5252c14de1, 0x3fe986aef1457594, // -0.60307, 0.79769
+ 0xbfe35656ff9799ae, 0x3fe97f18ea4e5c9e, // -0.60429, 0.79676
+ 0xbfe36058b10659f3, 0x3fe9777ef4c7d742, // -0.60551, 0.79584
+ 0xbfe36a576582831b, 0x3fe96fe111ddfce0, // -0.60673, 0.79491
+ 0xbfe374531b817f8d, 0x3fe9683f42bd7fe1, // -0.60795, 0.79398
+ 0xbfe37e4bd1792fe2, 0x3fe960998893ad8c, // -0.60917, 0.79304
+ 0xbfe3884185dfeb22, 0x3fe958efe48e6dd7, // -0.61038, 0.79211
+ 0xbfe39234372c7f04, 0x3fe9514257dc4335, // -0.6116, 0.79117
+ 0xbfe39c23e3d63029, 0x3fe94990e3ac4a6c, // -0.61281, 0.79023
+ 0xbfe3a6108a54ba58, 0x3fe941db892e3a65, // -0.61402, 0.78929
+ 0xbfe3affa292050b9, 0x3fe93a22499263fc, // -0.61523, 0.78835
+ 0xbfe3b9e0beb19e18, 0x3fe932652609b1cf, // -0.61644, 0.7874
+ 0xbfe3c3c44981c517, 0x3fe92aa41fc5a815, // -0.61765, 0.78646
+ 0xbfe3cda4c80a6076, 0x3fe922df37f8646a, // -0.61885, 0.78551
+ 0xbfe3d78238c58343, 0x3fe91b166fd49da2, // -0.62006, 0.78456
+ 0xbfe3e15c9a2db922, 0x3fe91349c88da398, // -0.62126, 0.7836
+ 0xbfe3eb33eabe0680, 0x3fe90b7943575efe, // -0.62246, 0.78265
+ 0xbfe3f50828f1e8d2, 0x3fe903a4e1665133, // -0.62366, 0.78169
+ 0xbfe3fed9534556d4, 0x3fe8fbcca3ef940d, // -0.62486, 0.78074
+ 0xbfe408a76834c0c0, 0x3fe8f3f08c28d9ac, // -0.62606, 0.77978
+ 0xbfe41272663d108c, 0x3fe8ec109b486c49, // -0.62725, 0.77882
+ 0xbfe41c3a4bdbaa26, 0x3fe8e42cd2852e0a, // -0.62845, 0.77785
+ 0xbfe425ff178e6bb1, 0x3fe8dc45331698cc, // -0.62964, 0.77689
+ 0xbfe42fc0c7d3adbb, 0x3fe8d459be34bdfa, // -0.63083, 0.77592
+ 0xbfe4397f5b2a4380, 0x3fe8cc6a75184655, // -0.63202, 0.77495
+ 0xbfe4433ad0117b1d, 0x3fe8c47758fa71cb, // -0.63321, 0.77398
+ 0xbfe44cf325091dd6, 0x3fe8bc806b151741, // -0.63439, 0.77301
+ 0xbfe456a858917046, 0x3fe8b485aca2a468, // -0.63558, 0.77204
+ 0xbfe4605a692b32a2, 0x3fe8ac871ede1d88, // -0.63676, 0.77106
+ 0xbfe46a095557a0f1, 0x3fe8a484c3031d50, // -0.63794, 0.77008
+ 0xbfe473b51b987347, 0x3fe89c7e9a4dd4ab, // -0.63912, 0.7691
+ 0xbfe47d5dba6fde01, 0x3fe89474a5fb0a84, // -0.6403, 0.76812
+ 0xbfe48703306091fe, 0x3fe88c66e7481ba1, // -0.64148, 0.76714
+ 0xbfe490a57bedbcdf, 0x3fe884555f72fa6b, // -0.64266, 0.76615
+ 0xbfe49a449b9b0938, 0x3fe87c400fba2ebf, // -0.64383, 0.76517
+ 0xbfe4a3e08dec9ed6, 0x3fe87426f95cd5bd, // -0.645, 0.76418
+ 0xbfe4ad79516722f0, 0x3fe86c0a1d9aa195, // -0.64618, 0.76319
+ 0xbfe4b70ee48fb869, 0x3fe863e97db3d95a, // -0.64735, 0.7622
+ 0xbfe4c0a145ec0004, 0x3fe85bc51ae958cc, // -0.64851, 0.7612
+ 0xbfe4ca30740218a3, 0x3fe8539cf67c9029, // -0.64968, 0.76021
+ 0xbfe4d3bc6d589f80, 0x3fe84b7111af83f9, // -0.65085, 0.75921
+ 0xbfe4dd453076b064, 0x3fe843416dc4cce2, // -0.65201, 0.75821
+ 0xbfe4e6cabbe3e5e9, 0x3fe83b0e0bff976e, // -0.65317, 0.75721
+ 0xbfe4f04d0e2859aa, 0x3fe832d6eda3a3e0, // -0.65433, 0.75621
+ 0xbfe4f9cc25cca486, 0x3fe82a9c13f545ff, // -0.65549, 0.7552
+ 0xbfe503480159ded2, 0x3fe8225d803964e5, // -0.65665, 0.75419
+ 0xbfe50cc09f59a09b, 0x3fe81a1b33b57acc, // -0.65781, 0.75319
+ 0xbfe51635fe5601d7, 0x3fe811d52faf94dc, // -0.65896, 0.75218
+ 0xbfe51fa81cd99aa6, 0x3fe8098b756e52fa, // -0.66011, 0.75117
+ 0xbfe52916f96f8388, 0x3fe8013e0638e795, // -0.66127, 0.75015
+ 0xbfe5328292a35596, 0x3fe7f8ece3571771, // -0.66242, 0.74914
+ 0xbfe53beae7012abe, 0x3fe7f0980e113978, // -0.66356, 0.74812
+ 0xbfe5454ff5159dfb, 0x3fe7e83f87b03686, // -0.66471, 0.7471
+ 0xbfe54eb1bb6dcb8f, 0x3fe7dfe3517d8937, // -0.66586, 0.74608
+ 0xbfe5581038975137, 0x3fe7d7836cc33db2, // -0.667, 0.74506
+ 0xbfe5616b6b204e6e, 0x3fe7cf1fdacbf179, // -0.66814, 0.74403
+ 0xbfe56ac35197649e, 0x3fe7c6b89ce2d333, // -0.66928, 0.74301
+ 0xbfe57417ea8bb75c, 0x3fe7be4db453a27c, // -0.67042, 0.74198
+ 0xbfe57d69348cec9f, 0x3fe7b5df226aafb0, // -0.67156, 0.74095
+ 0xbfe586b72e2b2cfd, 0x3fe7ad6ce874dbb6, // -0.67269, 0.73992
+ 0xbfe59001d5f723df, 0x3fe7a4f707bf97d2, // -0.67383, 0.73889
+ 0xbfe599492a81ffbc, 0x3fe79c7d8198e56e, // -0.67496, 0.73785
+ 0xbfe5a28d2a5d7250, 0x3fe79400574f55e4, // -0.67609, 0.73682
+ 0xbfe5abcdd41bb0d8, 0x3fe78b7f8a320a52, // -0.67722, 0.73578
+ 0xbfe5b50b264f7448, 0x3fe782fb1b90b35b, // -0.67835, 0.73474
+ 0xbfe5be451f8bf980, 0x3fe77a730cbb9100, // -0.67948, 0.7337
+ 0xbfe5c77bbe65018c, 0x3fe771e75f037261, // -0.6806, 0.73265
+ 0xbfe5d0af016ed1d4, 0x3fe7695813b9b594, // -0.68172, 0.73161
+ 0xbfe5d9dee73e345c, 0x3fe760c52c304764, // -0.68285, 0.73056
+ 0xbfe5e30b6e6877f3, 0x3fe7582ea9b9a329, // -0.68397, 0.72951
+ 0xbfe5ec3495837074, 0x3fe74f948da8d28d, // -0.68508, 0.72846
+ 0xbfe5f55a5b2576f8, 0x3fe746f6d9516d59, // -0.6862, 0.72741
+ 0xbfe5fe7cbde56a0f, 0x3fe73e558e079942, // -0.68732, 0.72636
+ 0xbfe6079bbc5aadfa, 0x3fe735b0ad2009b2, // -0.68843, 0.7253
+ 0xbfe610b7551d2cde, 0x3fe72d0837efff97, // -0.68954, 0.72425
+ 0xbfe619cf86c55702, 0x3fe7245c2fcd492a, // -0.69065, 0.72319
+ 0xbfe622e44fec22ff, 0x3fe71bac960e41bf, // -0.69176, 0.72213
+ 0xbfe62bf5af2b0dfd, 0x3fe712f96c09d18d, // -0.69287, 0.72107
+ 0xbfe63503a31c1be8, 0x3fe70a42b3176d7a, // -0.69397, 0.72
+ 0xbfe63e0e2a59d7aa, 0x3fe701886c8f16e6, // -0.69508, 0.71894
+ 0xbfe64715437f535b, 0x3fe6f8ca99c95b75, // -0.69618, 0.71787
+ 0xbfe65018ed28287f, 0x3fe6f0093c1f54de, // -0.69728, 0.7168
+ 0xbfe6591925f0783e, 0x3fe6e74454eaa8ae, // -0.69838, 0.71573
+ 0xbfe66215ec74eb91, 0x3fe6de7be585881d, // -0.69947, 0.71466
+ 0xbfe66b0f3f52b386, 0x3fe6d5afef4aafcc, // -0.70057, 0.71358
+ 0xbfe674051d27896c, 0x3fe6cce07395679f, // -0.70166, 0.71251
+ 0xbfe67cf78491af10, 0x3fe6c40d73c18275, // -0.70275, 0.71143
+ 0xbfe685e6742feeef, 0x3fe6bb36f12b5e06, // -0.70385, 0.71035
+ 0xbfe68ed1eaa19c71, 0x3fe6b25ced2fe29c, // -0.70493, 0.70927
+ 0xbfe697b9e686941c, 0x3fe6a97f692c82ea, // -0.70602, 0.70819
+ 0xbfe6a09e667f3bcc, 0x3fe6a09e667f3bcc, // -0.70711, 0.70711
+ 0xbfe6a97f692c82ea, 0x3fe697b9e686941c, // -0.70819, 0.70602
+ 0xbfe6b25ced2fe29c, 0x3fe68ed1eaa19c71, // -0.70927, 0.70493
+ 0xbfe6bb36f12b5e06, 0x3fe685e6742feeef, // -0.71035, 0.70385
+ 0xbfe6c40d73c18275, 0x3fe67cf78491af10, // -0.71143, 0.70275
+ 0xbfe6cce07395679f, 0x3fe674051d27896c, // -0.71251, 0.70166
+ 0xbfe6d5afef4aafcc, 0x3fe66b0f3f52b386, // -0.71358, 0.70057
+ 0xbfe6de7be585881d, 0x3fe66215ec74eb91, // -0.71466, 0.69947
+ 0xbfe6e74454eaa8ae, 0x3fe6591925f0783e, // -0.71573, 0.69838
+ 0xbfe6f0093c1f54de, 0x3fe65018ed28287f, // -0.7168, 0.69728
+ 0xbfe6f8ca99c95b75, 0x3fe64715437f535b, // -0.71787, 0.69618
+ 0xbfe701886c8f16e6, 0x3fe63e0e2a59d7aa, // -0.71894, 0.69508
+ 0xbfe70a42b3176d7a, 0x3fe63503a31c1be8, // -0.72, 0.69397
+ 0xbfe712f96c09d18d, 0x3fe62bf5af2b0dfd, // -0.72107, 0.69287
+ 0xbfe71bac960e41bf, 0x3fe622e44fec22ff, // -0.72213, 0.69176
+ 0xbfe7245c2fcd492a, 0x3fe619cf86c55702, // -0.72319, 0.69065
+ 0xbfe72d0837efff97, 0x3fe610b7551d2cde, // -0.72425, 0.68954
+ 0xbfe735b0ad2009b2, 0x3fe6079bbc5aadfa, // -0.7253, 0.68843
+ 0xbfe73e558e079942, 0x3fe5fe7cbde56a0f, // -0.72636, 0.68732
+ 0xbfe746f6d9516d59, 0x3fe5f55a5b2576f8, // -0.72741, 0.6862
+ 0xbfe74f948da8d28d, 0x3fe5ec3495837074, // -0.72846, 0.68508
+ 0xbfe7582ea9b9a329, 0x3fe5e30b6e6877f3, // -0.72951, 0.68397
+ 0xbfe760c52c304764, 0x3fe5d9dee73e345c, // -0.73056, 0.68285
+ 0xbfe7695813b9b594, 0x3fe5d0af016ed1d4, // -0.73161, 0.68172
+ 0xbfe771e75f037261, 0x3fe5c77bbe65018c, // -0.73265, 0.6806
+ 0xbfe77a730cbb9100, 0x3fe5be451f8bf980, // -0.7337, 0.67948
+ 0xbfe782fb1b90b35b, 0x3fe5b50b264f7448, // -0.73474, 0.67835
+ 0xbfe78b7f8a320a52, 0x3fe5abcdd41bb0d8, // -0.73578, 0.67722
+ 0xbfe79400574f55e4, 0x3fe5a28d2a5d7250, // -0.73682, 0.67609
+ 0xbfe79c7d8198e56e, 0x3fe599492a81ffbc, // -0.73785, 0.67496
+ 0xbfe7a4f707bf97d2, 0x3fe59001d5f723df, // -0.73889, 0.67383
+ 0xbfe7ad6ce874dbb6, 0x3fe586b72e2b2cfd, // -0.73992, 0.67269
+ 0xbfe7b5df226aafb0, 0x3fe57d69348cec9f, // -0.74095, 0.67156
+ 0xbfe7be4db453a27c, 0x3fe57417ea8bb75c, // -0.74198, 0.67042
+ 0xbfe7c6b89ce2d333, 0x3fe56ac35197649e, // -0.74301, 0.66928
+ 0xbfe7cf1fdacbf179, 0x3fe5616b6b204e6e, // -0.74403, 0.66814
+ 0xbfe7d7836cc33db2, 0x3fe5581038975137, // -0.74506, 0.667
+ 0xbfe7dfe3517d8937, 0x3fe54eb1bb6dcb8f, // -0.74608, 0.66586
+ 0xbfe7e83f87b03686, 0x3fe5454ff5159dfb, // -0.7471, 0.66471
+ 0xbfe7f0980e113978, 0x3fe53beae7012abe, // -0.74812, 0.66356
+ 0xbfe7f8ece3571771, 0x3fe5328292a35596, // -0.74914, 0.66242
+ 0xbfe8013e0638e795, 0x3fe52916f96f8388, // -0.75015, 0.66127
+ 0xbfe8098b756e52fa, 0x3fe51fa81cd99aa6, // -0.75117, 0.66011
+ 0xbfe811d52faf94dc, 0x3fe51635fe5601d7, // -0.75218, 0.65896
+ 0xbfe81a1b33b57acc, 0x3fe50cc09f59a09b, // -0.75319, 0.65781
+ 0xbfe8225d803964e5, 0x3fe503480159ded2, // -0.75419, 0.65665
+ 0xbfe82a9c13f545ff, 0x3fe4f9cc25cca486, // -0.7552, 0.65549
+ 0xbfe832d6eda3a3e0, 0x3fe4f04d0e2859aa, // -0.75621, 0.65433
+ 0xbfe83b0e0bff976e, 0x3fe4e6cabbe3e5e9, // -0.75721, 0.65317
+ 0xbfe843416dc4cce2, 0x3fe4dd453076b064, // -0.75821, 0.65201
+ 0xbfe84b7111af83f9, 0x3fe4d3bc6d589f80, // -0.75921, 0.65085
+ 0xbfe8539cf67c9029, 0x3fe4ca30740218a3, // -0.76021, 0.64968
+ 0xbfe85bc51ae958cc, 0x3fe4c0a145ec0004, // -0.7612, 0.64851
+ 0xbfe863e97db3d95a, 0x3fe4b70ee48fb869, // -0.7622, 0.64735
+ 0xbfe86c0a1d9aa195, 0x3fe4ad79516722f0, // -0.76319, 0.64618
+ 0xbfe87426f95cd5bd, 0x3fe4a3e08dec9ed6, // -0.76418, 0.645
+ 0xbfe87c400fba2ebf, 0x3fe49a449b9b0938, // -0.76517, 0.64383
+ 0xbfe884555f72fa6b, 0x3fe490a57bedbcdf, // -0.76615, 0.64266
+ 0xbfe88c66e7481ba1, 0x3fe48703306091fe, // -0.76714, 0.64148
+ 0xbfe89474a5fb0a84, 0x3fe47d5dba6fde01, // -0.76812, 0.6403
+ 0xbfe89c7e9a4dd4ab, 0x3fe473b51b987347, // -0.7691, 0.63912
+ 0xbfe8a484c3031d50, 0x3fe46a095557a0f1, // -0.77008, 0.63794
+ 0xbfe8ac871ede1d88, 0x3fe4605a692b32a2, // -0.77106, 0.63676
+ 0xbfe8b485aca2a468, 0x3fe456a858917046, // -0.77204, 0.63558
+ 0xbfe8bc806b151741, 0x3fe44cf325091dd6, // -0.77301, 0.63439
+ 0xbfe8c47758fa71cb, 0x3fe4433ad0117b1d, // -0.77398, 0.63321
+ 0xbfe8cc6a75184655, 0x3fe4397f5b2a4380, // -0.77495, 0.63202
+ 0xbfe8d459be34bdfa, 0x3fe42fc0c7d3adbb, // -0.77592, 0.63083
+ 0xbfe8dc45331698cc, 0x3fe425ff178e6bb1, // -0.77689, 0.62964
+ 0xbfe8e42cd2852e0a, 0x3fe41c3a4bdbaa26, // -0.77785, 0.62845
+ 0xbfe8ec109b486c49, 0x3fe41272663d108c, // -0.77882, 0.62725
+ 0xbfe8f3f08c28d9ac, 0x3fe408a76834c0c0, // -0.77978, 0.62606
+ 0xbfe8fbcca3ef940d, 0x3fe3fed9534556d4, // -0.78074, 0.62486
+ 0xbfe903a4e1665133, 0x3fe3f50828f1e8d2, // -0.78169, 0.62366
+ 0xbfe90b7943575efe, 0x3fe3eb33eabe0680, // -0.78265, 0.62246
+ 0xbfe91349c88da398, 0x3fe3e15c9a2db922, // -0.7836, 0.62126
+ 0xbfe91b166fd49da2, 0x3fe3d78238c58343, // -0.78456, 0.62006
+ 0xbfe922df37f8646a, 0x3fe3cda4c80a6076, // -0.78551, 0.61885
+ 0xbfe92aa41fc5a815, 0x3fe3c3c44981c517, // -0.78646, 0.61765
+ 0xbfe932652609b1cf, 0x3fe3b9e0beb19e18, // -0.7874, 0.61644
+ 0xbfe93a22499263fc, 0x3fe3affa292050b9, // -0.78835, 0.61523
+ 0xbfe941db892e3a65, 0x3fe3a6108a54ba58, // -0.78929, 0.61402
+ 0xbfe94990e3ac4a6c, 0x3fe39c23e3d63029, // -0.79023, 0.61281
+ 0xbfe9514257dc4335, 0x3fe39234372c7f04, // -0.79117, 0.6116
+ 0xbfe958efe48e6dd7, 0x3fe3884185dfeb22, // -0.79211, 0.61038
+ 0xbfe960998893ad8c, 0x3fe37e4bd1792fe2, // -0.79304, 0.60917
+ 0xbfe9683f42bd7fe1, 0x3fe374531b817f8d, // -0.79398, 0.60795
+ 0xbfe96fe111ddfce0, 0x3fe36a576582831b, // -0.79491, 0.60673
+ 0xbfe9777ef4c7d742, 0x3fe36058b10659f3, // -0.79584, 0.60551
+ 0xbfe97f18ea4e5c9e, 0x3fe35656ff9799ae, // -0.79676, 0.60429
+ 0xbfe986aef1457594, 0x3fe34c5252c14de1, // -0.79769, 0.60307
+ 0xbfe98e410881a600, 0x3fe3424aac0ef7d6, // -0.79861, 0.60184
+ 0xbfe995cf2ed80d22, 0x3fe338400d0c8e57, // -0.79954, 0.60062
+ 0xbfe99d59631e65d5, 0x3fe32e3277467d6b, // -0.80046, 0.59939
+ 0xbfe9a4dfa42b06b2, 0x3fe32421ec49a620, // -0.80138, 0.59816
+ 0xbfe9ac61f0d4e247, 0x3fe31a0e6da35e44, // -0.80229, 0.59693
+ 0xbfe9b3e047f38741, 0x3fe30ff7fce17035, // -0.80321, 0.5957
+ 0xbfe9bb5aa85f2098, 0x3fe305de9b921a94, // -0.80412, 0.59447
+ 0xbfe9c2d110f075c3, 0x3fe2fbc24b441015, // -0.80503, 0.59323
+ 0xbfe9ca438080eadb, 0x3fe2f1a30d86773a, // -0.80594, 0.592
+ 0xbfe9d1b1f5ea80d6, 0x3fe2e780e3e8ea16, // -0.80685, 0.59076
+ 0xbfe9d91c7007d5a6, 0x3fe2dd5bcffb7616, // -0.80775, 0.58952
+ 0xbfe9e082edb42472, 0x3fe2d333d34e9bb7, // -0.80866, 0.58828
+ 0xbfe9e7e56dcb45bd, 0x3fe2c908ef734e57, // -0.80956, 0.58704
+ 0xbfe9ef43ef29af94, 0x3fe2bedb25faf3ea, // -0.81046, 0.5858
+ 0xbfe9f69e70ac75bc, 0x3fe2b4aa787764c4, // -0.81135, 0.58455
+ 0xbfe9fdf4f13149de, 0x3fe2aa76e87aeb58, // -0.81225, 0.58331
+ 0xbfea05476f967bb5, 0x3fe2a040779843fb, // -0.81314, 0.58206
+ 0xbfea0c95eabaf937, 0x3fe2960727629ca8, // -0.81404, 0.58081
+ 0xbfea13e0617e4ec7, 0x3fe28bcaf96d94ba, // -0.81493, 0.57956
+ 0xbfea1b26d2c0a75e, 0x3fe2818bef4d3cba, // -0.81581, 0.57831
+ 0xbfea22693d62ccb9, 0x3fe2774a0a961612, // -0.8167, 0.57706
+ 0xbfea29a7a0462782, 0x3fe26d054cdd12df, // -0.81758, 0.57581
+ 0xbfea30e1fa4cbf81, 0x3fe262bdb7b795a2, // -0.81847, 0.57455
+ 0xbfea38184a593bc6, 0x3fe258734cbb7110, // -0.81935, 0.5733
+ 0xbfea3f4a8f4ee2d2, 0x3fe24e260d7ee7c9, // -0.82023, 0.57204
+ 0xbfea4678c8119ac8, 0x3fe243d5fb98ac1f, // -0.8211, 0.57078
+ 0xbfea4da2f385e997, 0x3fe23983189fdfd5, // -0.82198, 0.56952
+ 0xbfea54c91090f524, 0x3fe22f2d662c13e1, // -0.82285, 0.56826
+ 0xbfea5beb1e188375, 0x3fe224d4e5d5482e, // -0.82372, 0.567
+ 0xbfea63091b02fae2, 0x3fe21a799933eb58, // -0.82459, 0.56573
+ 0xbfea6a230637623b, 0x3fe2101b81e0da78, // -0.82546, 0.56447
+ 0xbfea7138de9d60f5, 0x3fe205baa17560d6, // -0.82632, 0.5632
+ 0xbfea784aa31d3f55, 0x3fe1fb56f98b37b8, // -0.82718, 0.56193
+ 0xbfea7f58529fe69d, 0x3fe1f0f08bbc861b, // -0.82805, 0.56066
+ 0xbfea8661ec0ee133, 0x3fe1e68759a3e074, // -0.8289, 0.55939
+ 0xbfea8d676e545ad2, 0x3fe1dc1b64dc4872, // -0.82976, 0.55812
+ 0xbfea9468d85b20ae, 0x3fe1d1acaf012cc2, // -0.83062, 0.55685
+ 0xbfea9b66290ea1a3, 0x3fe1c73b39ae68c8, // -0.83147, 0.55557
+ 0xbfeaa25f5f5aee60, 0x3fe1bcc706804467, // -0.83232, 0.55429
+ 0xbfeaa9547a2cb98e, 0x3fe1b250171373be, // -0.83317, 0.55302
+ 0xbfeab045787157ff, 0x3fe1a7d66d0516e6, // -0.83402, 0.55174
+ 0xbfeab7325916c0d4, 0x3fe19d5a09f2b9b8, // -0.83486, 0.55046
+ 0xbfeabe1b1b0b8dac, 0x3fe192daef7a5386, // -0.83571, 0.54918
+ 0xbfeac4ffbd3efac8, 0x3fe188591f3a46e5, // -0.83655, 0.54789
+ 0xbfeacbe03ea0e73b, 0x3fe17dd49ad16161, // -0.83739, 0.54661
+ 0xbfead2bc9e21d511, 0x3fe1734d63dedb49, // -0.83822, 0.54532
+ 0xbfead994dab2e979, 0x3fe168c37c025764, // -0.83906, 0.54404
+ 0xbfeae068f345ecef, 0x3fe15e36e4dbe2bc, // -0.83989, 0.54275
+ 0xbfeae738e6cd4b67, 0x3fe153a7a00bf453, // -0.84073, 0.54146
+ 0xbfeaee04b43c1474, 0x3fe14915af336ceb, // -0.84155, 0.54017
+ 0xbfeaf4cc5a85fb73, 0x3fe13e8113f396c1, // -0.84238, 0.53888
+ 0xbfeafb8fd89f57b6, 0x3fe133e9cfee254e, // -0.84321, 0.53759
+ 0xbfeb024f2d7d24a9, 0x3fe1294fe4c5350a, // -0.84403, 0.53629
+ 0xbfeb090a58150200, 0x3fe11eb3541b4b22, // -0.84485, 0.535
+ 0xbfeb0fc1575d33db, 0x3fe114141f935545, // -0.84567, 0.5337
+ 0xbfeb16742a4ca2f5, 0x3fe1097248d0a956, // -0.84649, 0.5324
+ 0xbfeb1d22cfdadcc6, 0x3fe0fecdd1770537, // -0.84731, 0.5311
+ 0xbfeb23cd470013b4, 0x3fe0f426bb2a8e7d, // -0.84812, 0.5298
+ 0xbfeb2a738eb51f33, 0x3fe0e97d078fd23b, // -0.84893, 0.5285
+ 0xbfeb3115a5f37bf4, 0x3fe0ded0b84bc4b5, // -0.84974, 0.5272
+ 0xbfeb37b38bb54c09, 0x3fe0d421cf03c12b, // -0.85055, 0.5259
+ 0xbfeb3e4d3ef55712, 0x3fe0c9704d5d898f, // -0.85136, 0.52459
+ 0xbfeb44e2beaf0a61, 0x3fe0bebc34ff4646, // -0.85216, 0.52328
+ 0xbfeb4b7409de7925, 0x3fe0b405878f85ec, // -0.85296, 0.52198
+ 0xbfeb52011f805c92, 0x3fe0a94c46b53d0b, // -0.85376, 0.52067
+ 0xbfeb5889fe921405, 0x3fe09e907417c5e1, // -0.85456, 0.51936
+ 0xbfeb5f0ea611a532, 0x3fe093d2115ee018, // -0.85535, 0.51804
+ 0xbfeb658f14fdbc47, 0x3fe089112032b08c, // -0.85615, 0.51673
+ 0xbfeb6c0b4a55ac17, 0x3fe07e4da23bc102, // -0.85694, 0.51542
+ 0xbfeb728345196e3e, 0x3fe073879922ffed, // -0.85773, 0.5141
+ 0xbfeb78f70449a34b, 0x3fe068bf0691c028, // -0.85852, 0.51279
+ 0xbfeb7f6686e792ea, 0x3fe05df3ec31b8b6, // -0.8593, 0.51147
+ 0xbfeb85d1cbf52c02, 0x3fe053264bad0483, // -0.86009, 0.51015
+ 0xbfeb8c38d27504e9, 0x3fe0485626ae221a, // -0.86087, 0.50883
+ 0xbfeb929b996a5b7f, 0x3fe03d837edff370, // -0.86165, 0.50751
+ 0xbfeb98fa1fd9155e, 0x3fe032ae55edbd95, // -0.86242, 0.50619
+ 0xbfeb9f5464c5bffc, 0x3fe027d6ad83287e, // -0.8632, 0.50486
+ 0xbfeba5aa673590d2, 0x3fe01cfc874c3eb7, // -0.86397, 0.50354
+ 0xbfebabfc262e6586, 0x3fe0121fe4f56d2c, // -0.86474, 0.50221
+ 0xbfebb249a0b6c40d, 0x3fe00740c82b82e0, // -0.86551, 0.50089
+ 0xbfebb892d5d5dad5, 0x3fdff8be6537615e, // -0.86628, 0.49956
+ 0xbfebbed7c49380ea, 0x3fdfe2f64be7120f, // -0.86705, 0.49823
+ 0xbfebc5186bf8361d, 0x3fdfcd2947c1ff57, // -0.86781, 0.4969
+ 0xbfebcb54cb0d2327, 0x3fdfb7575c24d2de, // -0.86857, 0.49557
+ 0xbfebd18ce0dc19d6, 0x3fdfa1808c6cf7e0, // -0.86933, 0.49423
+ 0xbfebd7c0ac6f952a, 0x3fdf8ba4dbf89aba, // -0.87009, 0.4929
+ 0xbfebddf02cd2b983, 0x3fdf75c44e26a852, // -0.87084, 0.49156
+ 0xbfebe41b611154c1, 0x3fdf5fdee656cda3, // -0.8716, 0.49023
+ 0xbfebea424837de6d, 0x3fdf49f4a7e97729, // -0.87235, 0.48889
+ 0xbfebf064e15377dd, 0x3fdf3405963fd068, // -0.87309, 0.48755
+ 0xbfebf6832b71ec5b, 0x3fdf1e11b4bbc35c, // -0.87384, 0.48621
+ 0xbfebfc9d25a1b147, 0x3fdf081906bff7fd, // -0.87459, 0.48487
+ 0xbfec02b2cef1e641, 0x3fdef21b8fafd3b5, // -0.87533, 0.48353
+ 0xbfec08c426725549, 0x3fdedc1952ef78d5, // -0.87607, 0.48218
+ 0xbfec0ed12b3372e9, 0x3fdec61253e3c61b, // -0.87681, 0.48084
+ 0xbfec14d9dc465e58, 0x3fdeb00695f25620, // -0.87755, 0.47949
+ 0xbfec1ade38bce19b, 0x3fde99f61c817eda, // -0.87828, 0.47815
+ 0xbfec20de3fa971b0, 0x3fde83e0eaf85113, // -0.87901, 0.4768
+ 0xbfec26d9f01f2eaf, 0x3fde6dc704be97e2, // -0.87974, 0.47545
+ 0xbfec2cd14931e3f1, 0x3fde57a86d3cd824, // -0.88047, 0.4741
+ 0xbfec32c449f60831, 0x3fde418527dc4ffa, // -0.8812, 0.47275
+ 0xbfec38b2f180bdb1, 0x3fde2b5d3806f63b, // -0.88192, 0.4714
+ 0xbfec3e9d3ee7d262, 0x3fde1530a12779f4, // -0.88264, 0.47004
+ 0xbfec44833141c004, 0x3fddfeff66a941de, // -0.88336, 0.46869
+ 0xbfec4a64c7a5ac4c, 0x3fdde8c98bf86bd6, // -0.88408, 0.46733
+ 0xbfec5042012b6907, 0x3fddd28f1481cc58, // -0.8848, 0.46598
+ 0xbfec561adceb743e, 0x3fddbc5003b2edf8, // -0.88551, 0.46462
+ 0xbfec5bef59fef85a, 0x3fdda60c5cfa10d8, // -0.88622, 0.46326
+ 0xbfec61bf777fcc48, 0x3fdd8fc423c62a25, // -0.88693, 0.4619
+ 0xbfec678b3488739b, 0x3fdd79775b86e389, // -0.88764, 0.46054
+ 0xbfec6d5290341eb2, 0x3fdd632607ac9aa9, // -0.88835, 0.45918
+ 0xbfec7315899eaad7, 0x3fdd4cd02ba8609c, // -0.88905, 0.45781
+ 0xbfec78d41fe4a267, 0x3fdd3675caebf962, // -0.88975, 0.45645
+ 0xbfec7e8e52233cf3, 0x3fdd2016e8e9db5b, // -0.89045, 0.45508
+ 0xbfec84441f785f61, 0x3fdd09b389152ec1, // -0.89115, 0.45372
+ 0xbfec89f587029c13, 0x3fdcf34baee1cd21, // -0.89184, 0.45235
+ 0xbfec8fa287e13305, 0x3fdcdcdf5dc440ce, // -0.89253, 0.45098
+ 0xbfec954b213411f5, 0x3fdcc66e9931c45d, // -0.89322, 0.44961
+ 0xbfec9aef521bd480, 0x3fdcaff964a0421d, // -0.89391, 0.44824
+ 0xbfeca08f19b9c449, 0x3fdc997fc3865388, // -0.8946, 0.44687
+ 0xbfeca62a772fd919, 0x3fdc8301b95b40c2, // -0.89528, 0.4455
+ 0xbfecabc169a0b901, 0x3fdc6c7f4997000a, // -0.89597, 0.44412
+ 0xbfecb153f02fb87d, 0x3fdc55f877b23537, // -0.89665, 0.44275
+ 0xbfecb6e20a00da99, 0x3fdc3f6d47263129, // -0.89732, 0.44137
+ 0xbfecbc6bb638d10b, 0x3fdc28ddbb6cf145, // -0.898, 0.43999
+ 0xbfecc1f0f3fcfc5c, 0x3fdc1249d8011ee7, // -0.89867, 0.43862
+ 0xbfecc771c2736c09, 0x3fdbfbb1a05e0edc, // -0.89935, 0.43724
+ 0xbfecccee20c2de9f, 0x3fdbe51517ffc0d9, // -0.90002, 0.43586
+ 0xbfecd2660e12c1e6, 0x3fdbce744262deee, // -0.90068, 0.43448
+ 0xbfecd7d9898b32f6, 0x3fdbb7cf2304bd01, // -0.90135, 0.43309
+ 0xbfecdd489254fe65, 0x3fdba125bd63583e, // -0.90201, 0.43171
+ 0xbfece2b32799a060, 0x3fdb8a7814fd5693, // -0.90267, 0.43033
+ 0xbfece819488344ce, 0x3fdb73c62d520624, // -0.90333, 0.42894
+ 0xbfeced7af43cc773, 0x3fdb5d1009e15cc0, // -0.90399, 0.42756
+ 0xbfecf2d829f1b40e, 0x3fdb4655ae2bf757, // -0.90464, 0.42617
+ 0xbfecf830e8ce467b, 0x3fdb2f971db31972, // -0.9053, 0.42478
+ 0xbfecfd852fff6ad4, 0x3fdb18d45bf8aca6, // -0.90595, 0.42339
+ 0xbfed02d4feb2bd92, 0x3fdb020d6c7f4009, // -0.9066, 0.422
+ 0xbfed082054168bac, 0x3fdaeb4252ca07ab, // -0.90724, 0.42061
+ 0xbfed0d672f59d2b9, 0x3fdad473125cdc08, // -0.90789, 0.41922
+ 0xbfed12a98fac410c, 0x3fdabd9faebc3980, // -0.90853, 0.41782
+ 0xbfed17e7743e35dc, 0x3fdaa6c82b6d3fc9, // -0.90917, 0.41643
+ 0xbfed1d20dc40c15c, 0x3fda8fec8bf5b166, // -0.90981, 0.41503
+ 0xbfed2255c6e5a4e1, 0x3fda790cd3dbf31a, // -0.91044, 0.41364
+ 0xbfed2786335f52fc, 0x3fda622906a70b63, // -0.91107, 0.41224
+ 0xbfed2cb220e0ef9f, 0x3fda4b4127dea1e4, // -0.91171, 0.41084
+ 0xbfed31d98e9e503a, 0x3fda34553b0afee5, // -0.91234, 0.40944
+ 0xbfed36fc7bcbfbdc, 0x3fda1d6543b50ac0, // -0.91296, 0.40804
+ 0xbfed3c1ae79f2b4e, 0x3fda067145664d57, // -0.91359, 0.40664
+ 0xbfed4134d14dc93a, 0x3fd9ef7943a8ed8a, // -0.91421, 0.40524
+ 0xbfed464a380e7242, 0x3fd9d87d4207b0ab, // -0.91483, 0.40384
+ 0xbfed4b5b1b187524, 0x3fd9c17d440df9f2, // -0.91545, 0.40243
+ 0xbfed506779a3d2d9, 0x3fd9aa794d47c9ee, // -0.91606, 0.40103
+ 0xbfed556f52e93eb1, 0x3fd993716141bdfe, // -0.91668, 0.39962
+ 0xbfed5a72a6221e73, 0x3fd97c6583890fc2, // -0.91729, 0.39822
+ 0xbfed5f7172888a7f, 0x3fd96555b7ab948f, // -0.9179, 0.39681
+ 0xbfed646bb7574de5, 0x3fd94e420137bce3, // -0.91851, 0.3954
+ 0xbfed696173c9e68b, 0x3fd9372a63bc93d7, // -0.91911, 0.39399
+ 0xbfed6e52a71c8547, 0x3fd9200ee2c9be97, // -0.91972, 0.39258
+ 0xbfed733f508c0dff, 0x3fd908ef81ef7bd1, // -0.92032, 0.39117
+ 0xbfed78276f5617c6, 0x3fd8f1cc44bea329, // -0.92092, 0.38976
+ 0xbfed7d0b02b8ecf9, 0x3fd8daa52ec8a4af, // -0.92151, 0.38835
+ 0xbfed81ea09f38b63, 0x3fd8c37a439f884f, // -0.92211, 0.38693
+ 0xbfed86c48445a450, 0x3fd8ac4b86d5ed44, // -0.9227, 0.38552
+ 0xbfed8b9a70ef9cb4, 0x3fd89518fbff098e, // -0.92329, 0.3841
+ 0xbfed906bcf328d46, 0x3fd87de2a6aea963, // -0.92388, 0.38268
+ 0xbfed95389e50429b, 0x3fd866a88a792ea0, // -0.92447, 0.38127
+ 0xbfed9a00dd8b3d46, 0x3fd84f6aaaf3903f, // -0.92505, 0.37985
+ 0xbfed9ec48c26b1f3, 0x3fd838290bb359c8, // -0.92563, 0.37843
+ 0xbfeda383a9668988, 0x3fd820e3b04eaac4, // -0.92621, 0.37701
+ 0xbfeda83e348f613b, 0x3fd8099a9c5c362d, // -0.92679, 0.37559
+ 0xbfedacf42ce68ab9, 0x3fd7f24dd37341e3, // -0.92736, 0.37416
+ 0xbfedb1a591b20c38, 0x3fd7dafd592ba621, // -0.92794, 0.37274
+ 0xbfedb6526238a09b, 0x3fd7c3a9311dcce7, // -0.92851, 0.37132
+ 0xbfedbafa9dc1b78d, 0x3fd7ac515ee2b172, // -0.92907, 0.36989
+ 0xbfedbf9e4395759a, 0x3fd794f5e613dfae, // -0.92964, 0.36847
+ 0xbfedc43d52fcb453, 0x3fd77d96ca4b73a6, // -0.93021, 0.36704
+ 0xbfedc8d7cb410260, 0x3fd766340f2418f6, // -0.93077, 0.36561
+ 0xbfedcd6dabaca3a5, 0x3fd74ecdb8390a3e, // -0.93133, 0.36418
+ 0xbfedd1fef38a915a, 0x3fd73763c9261092, // -0.93188, 0.36276
+ 0xbfedd68ba2267a25, 0x3fd71ff6458782ec, // -0.93244, 0.36133
+ 0xbfeddb13b6ccc23d, 0x3fd7088530fa459e, // -0.93299, 0.3599
+ 0xbfeddf9730ca837b, 0x3fd6f1108f1bc9c5, // -0.93354, 0.35846
+ 0xbfede4160f6d8d81, 0x3fd6d998638a0cb5, // -0.93409, 0.35703
+ 0xbfede890520465ce, 0x3fd6c21cb1e39771, // -0.93464, 0.3556
+ 0xbfeded05f7de47da, 0x3fd6aa9d7dc77e16, // -0.93518, 0.35416
+ 0xbfedf177004b2534, 0x3fd6931acad55f51, // -0.93573, 0.35273
+ 0xbfedf5e36a9ba59c, 0x3fd67b949cad63ca, // -0.93627, 0.35129
+ 0xbfedfa4b3621271d, 0x3fd6640af6f03d9e, // -0.9368, 0.34986
+ 0xbfedfeae622dbe2b, 0x3fd64c7ddd3f27c6, // -0.93734, 0.34842
+ 0xbfee030cee1435b8, 0x3fd634ed533be58e, // -0.93787, 0.34698
+ 0xbfee0766d9280f54, 0x3fd61d595c88c203, // -0.9384, 0.34554
+ 0xbfee0bbc22bd8349, 0x3fd605c1fcc88f63, // -0.93893, 0.3441
+ 0xbfee100cca2980ac, 0x3fd5ee27379ea693, // -0.93946, 0.34266
+ 0xbfee1458cec1ad83, 0x3fd5d68910aee686, // -0.93998, 0.34122
+ 0xbfee18a02fdc66d9, 0x3fd5bee78b9db3b6, // -0.94051, 0.33978
+ 0xbfee1ce2ecd0c0d8, 0x3fd5a742ac0ff78d, // -0.94103, 0.33833
+ 0xbfee212104f686e5, 0x3fd58f9a75ab1fdd, // -0.94154, 0.33689
+ 0xbfee255a77a63bb8, 0x3fd577eeec151e47, // -0.94206, 0.33545
+ 0xbfee298f4439197a, 0x3fd5604012f467b4, // -0.94257, 0.334
+ 0xbfee2dbf6a0911d9, 0x3fd5488dedeff3be, // -0.94308, 0.33255
+ 0xbfee31eae870ce25, 0x3fd530d880af3c24, // -0.94359, 0.33111
+ 0xbfee3611becbaf69, 0x3fd5191fceda3c35, // -0.9441, 0.32966
+ 0xbfee3a33ec75ce85, 0x3fd50163dc197047, // -0.9446, 0.32821
+ 0xbfee3e5170cbfc46, 0x3fd4e9a4ac15d520, // -0.94511, 0.32676
+ 0xbfee426a4b2bc17e, 0x3fd4d1e24278e76a, // -0.94561, 0.32531
+ 0xbfee467e7af35f23, 0x3fd4ba1ca2eca31c, // -0.94611, 0.32386
+ 0xbfee4a8dff81ce5e, 0x3fd4a253d11b82f3, // -0.9466, 0.32241
+ 0xbfee4e98d836c0af, 0x3fd48a87d0b07fd7, // -0.94709, 0.32096
+ 0xbfee529f04729ffc, 0x3fd472b8a5571054, // -0.94759, 0.3195
+ 0xbfee56a083968eb1, 0x3fd45ae652bb2800, // -0.94807, 0.31805
+ 0xbfee5a9d550467d3, 0x3fd44310dc8936f0, // -0.94856, 0.31659
+ 0xbfee5e95781ebf1c, 0x3fd42b38466e2928, // -0.94905, 0.31514
+ 0xbfee6288ec48e112, 0x3fd4135c94176602, // -0.94953, 0.31368
+ 0xbfee6677b0e6d31e, 0x3fd3fb7dc932cfa4, // -0.95001, 0.31222
+ 0xbfee6a61c55d53a7, 0x3fd3e39be96ec271, // -0.95049, 0.31077
+ 0xbfee6e472911da27, 0x3fd3cbb6f87a146e, // -0.95096, 0.30931
+ 0xbfee7227db6a9744, 0x3fd3b3cefa0414b7, // -0.95144, 0.30785
+ 0xbfee7603dbce74e9, 0x3fd39be3f1bc8aef, // -0.95191, 0.30639
+ 0xbfee79db29a5165a, 0x3fd383f5e353b6aa, // -0.95238, 0.30493
+ 0xbfee7dadc456d850, 0x3fd36c04d27a4edf, // -0.95284, 0.30347
+ 0xbfee817bab4cd10d, 0x3fd35410c2e18152, // -0.95331, 0.30201
+ 0xbfee8544ddf0d075, 0x3fd33c19b83af207, // -0.95377, 0.30054
+ 0xbfee89095bad6025, 0x3fd3241fb638baaf, // -0.95423, 0.29908
+ 0xbfee8cc923edc388, 0x3fd30c22c08d6a13, // -0.95469, 0.29762
+ 0xbfee9084361df7f3, 0x3fd2f422daec0386, // -0.95514, 0.29615
+ 0xbfee943a91aab4b4, 0x3fd2dc200907fe51, // -0.95559, 0.29469
+ 0xbfee97ec36016b30, 0x3fd2c41a4e954520, // -0.95605, 0.29322
+ 0xbfee9b99229046f8, 0x3fd2ac11af483572, // -0.95649, 0.29175
+ 0xbfee9f4156c62dda, 0x3fd294062ed59f05, // -0.95694, 0.29028
+ 0xbfeea2e4d212c000, 0x3fd27bf7d0f2c346, // -0.95738, 0.28882
+ 0xbfeea68393e65800, 0x3fd263e6995554ba, // -0.95783, 0.28735
+ 0xbfeeaa1d9bb20af3, 0x3fd24bd28bb37672, // -0.95827, 0.28588
+ 0xbfeeadb2e8e7a88e, 0x3fd233bbabc3bb72, // -0.9587, 0.28441
+ 0xbfeeb1437af9bb34, 0x3fd21ba1fd3d2623, // -0.95914, 0.28294
+ 0xbfeeb4cf515b8811, 0x3fd2038583d727bd, // -0.95957, 0.28146
+ 0xbfeeb8566b810f2a, 0x3fd1eb6643499fbb, // -0.96, 0.27999
+ 0xbfeebbd8c8df0b74, 0x3fd1d3443f4cdb3d, // -0.96043, 0.27852
+ 0xbfeebf5668eaf2ef, 0x3fd1bb1f7b999480, // -0.96086, 0.27705
+ 0xbfeec2cf4b1af6b2, 0x3fd1a2f7fbe8f243, // -0.96128, 0.27557
+ 0xbfeec6436ee60309, 0x3fd18acdc3f4873a, // -0.9617, 0.2741
+ 0xbfeec9b2d3c3bf84, 0x3fd172a0d7765177, // -0.96212, 0.27262
+ 0xbfeecd1d792c8f10, 0x3fd15a713a28b9d9, // -0.96254, 0.27115
+ 0xbfeed0835e999009, 0x3fd1423eefc69378, // -0.96295, 0.26967
+ 0xbfeed3e483849c51, 0x3fd12a09fc0b1b12, // -0.96337, 0.26819
+ 0xbfeed740e7684963, 0x3fd111d262b1f677, // -0.96378, 0.26671
+ 0xbfeeda9889bfe86a, 0x3fd0f998277733f7, // -0.96418, 0.26523
+ 0xbfeeddeb6a078651, 0x3fd0e15b4e1749cd, // -0.96459, 0.26375
+ 0xbfeee13987bbebdc, 0x3fd0c91bda4f158d, // -0.96499, 0.26227
+ 0xbfeee482e25a9dbc, 0x3fd0b0d9cfdbdb90, // -0.96539, 0.26079
+ 0xbfeee7c77961dc9e, 0x3fd09895327b465e, // -0.96579, 0.25931
+ 0xbfeeeb074c50a544, 0x3fd0804e05eb661e, // -0.96619, 0.25783
+ 0xbfeeee425aa6b09a, 0x3fd068044deab002, // -0.96658, 0.25635
+ 0xbfeef178a3e473c2, 0x3fd04fb80e37fdae, // -0.96698, 0.25487
+ 0xbfeef4aa278b2032, 0x3fd037694a928cac, // -0.96737, 0.25338
+ 0xbfeef7d6e51ca3c0, 0x3fd01f1806b9fdd2, // -0.96775, 0.2519
+ 0xbfeefafedc1ba8b7, 0x3fd006c4466e54af, // -0.96814, 0.25041
+ 0xbfeefe220c0b95ec, 0x3fcfdcdc1adfedf8, // -0.96852, 0.24893
+ 0xbfef014074708ed3, 0x3fcfac2abeff57ff, // -0.9689, 0.24744
+ 0xbfef045a14cf738c, 0x3fcf7b7480bd3801, // -0.96928, 0.24596
+ 0xbfef076eecade0fa, 0x3fcf4ab9679c9f5c, // -0.96966, 0.24447
+ 0xbfef0a7efb9230d7, 0x3fcf19f97b215f1a, // -0.97003, 0.24298
+ 0xbfef0d8a410379c5, 0x3fcee934c2d006c7, // -0.9704, 0.24149
+ 0xbfef1090bc898f5f, 0x3fceb86b462de348, // -0.97077, 0.24
+ 0xbfef13926dad024e, 0x3fce879d0cc0fdaf, // -0.97114, 0.23851
+ 0xbfef168f53f7205d, 0x3fce56ca1e101a1b, // -0.9715, 0.23702
+ 0xbfef19876ef1f486, 0x3fce25f281a2b684, // -0.97187, 0.23553
+ 0xbfef1c7abe284708, 0x3fcdf5163f01099a, // -0.97223, 0.23404
+ 0xbfef1f6941259d7a, 0x3fcdc4355db40195, // -0.97258, 0.23255
+ 0xbfef2252f7763ada, 0x3fcd934fe5454311, // -0.97294, 0.23106
+ 0xbfef2537e0a71f9f, 0x3fcd6265dd3f27e3, // -0.97329, 0.22957
+ 0xbfef2817fc4609ce, 0x3fcd31774d2cbdee, // -0.97364, 0.22807
+ 0xbfef2af349e17507, 0x3fcd00843c99c5f9, // -0.97399, 0.22658
+ 0xbfef2dc9c9089a9d, 0x3fcccf8cb312b286, // -0.97434, 0.22508
+ 0xbfef309b794b719f, 0x3fcc9e90b824a6a9, // -0.97468, 0.22359
+ 0xbfef33685a3aaef0, 0x3fcc6d90535d74dc, // -0.97503, 0.22209
+ 0xbfef36306b67c556, 0x3fcc3c8b8c4b9dd7, // -0.97536, 0.2206
+ 0xbfef38f3ac64e589, 0x3fcc0b826a7e4f63, // -0.9757, 0.2191
+ 0xbfef3bb21cc4fe47, 0x3fcbda74f5856330, // -0.97604, 0.2176
+ 0xbfef3e6bbc1bbc65, 0x3fcba96334f15dad, // -0.97637, 0.21611
+ 0xbfef412089fd8adc, 0x3fcb784d30536cda, // -0.9767, 0.21461
+ 0xbfef43d085ff92dd, 0x3fcb4732ef3d6722, // -0.97703, 0.21311
+ 0xbfef467bafb7bbe0, 0x3fcb16147941ca2a, // -0.97735, 0.21161
+ 0xbfef492206bcabb4, 0x3fcae4f1d5f3b9ab, // -0.97768, 0.21011
+ 0xbfef4bc38aa5c694, 0x3fcab3cb0ce6fe44, // -0.978, 0.20861
+ 0xbfef4e603b0b2f2d, 0x3fca82a025b00451, // -0.97832, 0.20711
+ 0xbfef50f81785c6b9, 0x3fca517127e3dabc, // -0.97863, 0.20561
+ 0xbfef538b1faf2d07, 0x3fca203e1b1831da, // -0.97895, 0.20411
+ 0xbfef56195321c090, 0x3fc9ef0706e35a35, // -0.97926, 0.20261
+ 0xbfef58a2b1789e84, 0x3fc9bdcbf2dc4366, // -0.97957, 0.2011
+ 0xbfef5b273a4fa2d9, 0x3fc98c8ce69a7aec, // -0.97988, 0.1996
+ 0xbfef5da6ed43685d, 0x3fc95b49e9b62af9, // -0.98018, 0.1981
+ 0xbfef6021c9f148c2, 0x3fc92a0303c8194f, // -0.98048, 0.19659
+ 0xbfef6297cff75cb0, 0x3fc8f8b83c69a60a, // -0.98079, 0.19509
+ 0xbfef6508fef47bd5, 0x3fc8c7699b34ca7e, // -0.98108, 0.19359
+ 0xbfef677556883cee, 0x3fc8961727c41804, // -0.98138, 0.19208
+ 0xbfef69dcd652f5de, 0x3fc864c0e9b2b6cf, // -0.98167, 0.19057
+ 0xbfef6c3f7df5bbb7, 0x3fc83366e89c64c5, // -0.98196, 0.18907
+ 0xbfef6e9d4d1262ca, 0x3fc802092c1d744b, // -0.98225, 0.18756
+ 0xbfef70f6434b7eb7, 0x3fc7d0a7bbd2cb1b, // -0.98254, 0.18606
+ 0xbfef734a60446279, 0x3fc79f429f59e11d, // -0.98282, 0.18455
+ 0xbfef7599a3a12077, 0x3fc76dd9de50bf31, // -0.98311, 0.18304
+ 0xbfef77e40d068a90, 0x3fc73c6d8055fe0a, // -0.98339, 0.18153
+ 0xbfef7a299c1a322a, 0x3fc70afd8d08c4ff, // -0.98366, 0.18002
+ 0xbfef7c6a50826840, 0x3fc6d98a0c08c8da, // -0.98394, 0.17851
+ 0xbfef7ea629e63d6e, 0x3fc6a81304f64ab2, // -0.98421, 0.177
+ 0xbfef80dd27ed8204, 0x3fc676987f7216b8, // -0.98448, 0.17549
+ 0xbfef830f4a40c60c, 0x3fc6451a831d830d, // -0.98475, 0.17398
+ 0xbfef853c9089595e, 0x3fc61399179a6e94, // -0.98501, 0.17247
+ 0xbfef8764fa714ba9, 0x3fc5e214448b3fc6, // -0.98528, 0.17096
+ 0xbfef898887a36c84, 0x3fc5b08c1192e381, // -0.98554, 0.16945
+ 0xbfef8ba737cb4b78, 0x3fc57f008654cbde, // -0.9858, 0.16794
+ 0xbfef8dc10a95380d, 0x3fc54d71aa74ef02, // -0.98605, 0.16643
+ 0xbfef8fd5ffae41db, 0x3fc51bdf8597c5f2, // -0.98631, 0.16491
+ 0xbfef91e616c43891, 0x3fc4ea4a1f624b61, // -0.98656, 0.1634
+ 0xbfef93f14f85ac08, 0x3fc4b8b17f79fa88, // -0.98681, 0.16189
+ 0xbfef95f7a9a1ec47, 0x3fc48715ad84cdf5, // -0.98706, 0.16037
+ 0xbfef97f924c9099b, 0x3fc45576b1293e5a, // -0.9873, 0.15886
+ 0xbfef99f5c0abd496, 0x3fc423d4920e4166, // -0.98754, 0.15734
+ 0xbfef9bed7cfbde29, 0x3fc3f22f57db4893, // -0.98778, 0.15583
+ 0xbfef9de0596b77a3, 0x3fc3c0870a383ff6, // -0.98802, 0.15431
+ 0xbfef9fce55adb2c8, 0x3fc38edbb0cd8d14, // -0.98826, 0.1528
+ 0xbfefa1b7717661d5, 0x3fc35d2d53440db2, // -0.98849, 0.15128
+ 0xbfefa39bac7a1791, 0x3fc32b7bf94516a7, // -0.98872, 0.14976
+ 0xbfefa57b066e2754, 0x3fc2f9c7aa7a72af, // -0.98895, 0.14825
+ 0xbfefa7557f08a517, 0x3fc2c8106e8e613a, // -0.98918, 0.14673
+ 0xbfefa92b1600657c, 0x3fc296564d2b953e, // -0.9894, 0.14521
+ 0xbfefaafbcb0cfddc, 0x3fc264994dfd340a, // -0.98962, 0.1437
+ 0xbfefacc79de6c44f, 0x3fc232d978aed413, // -0.98984, 0.14218
+ 0xbfefae8e8e46cfbb, 0x3fc20116d4ec7bce, // -0.99006, 0.14066
+ 0xbfefb0509be6f7db, 0x3fc1cf516a62a077, // -0.99027, 0.13914
+ 0xbfefb20dc681d54d, 0x3fc19d8940be24e7, // -0.99049, 0.13762
+ 0xbfefb3c60dd2c199, 0x3fc16bbe5fac5865, // -0.9907, 0.1361
+ 0xbfefb5797195d741, 0x3fc139f0cedaf576, // -0.9909, 0.13458
+ 0xbfefb727f187f1c7, 0x3fc1082095f820b0, // -0.99111, 0.13306
+ 0xbfefb8d18d66adb7, 0x3fc0d64dbcb26786, // -0.99131, 0.13154
+ 0xbfefba7644f068b5, 0x3fc0a4784ab8bf1d, // -0.99151, 0.13002
+ 0xbfefbc1617e44186, 0x3fc072a047ba831d, // -0.99171, 0.1285
+ 0xbfefbdb106021816, 0x3fc040c5bb67747e, // -0.99191, 0.12698
+ 0xbfefbf470f0a8d88, 0x3fc00ee8ad6fb85b, // -0.9921, 0.12545
+ 0xbfefc0d832bf043a, 0x3fbfba124b07ad85, // -0.99229, 0.12393
+ 0xbfefc26470e19fd3, 0x3fbf564e56a9730e, // -0.99248, 0.12241
+ 0xbfefc3ebc935454c, 0x3fbef2858d27561b, // -0.99267, 0.12089
+ 0xbfefc56e3b7d9af6, 0x3fbe8eb7fde4aa3e, // -0.99285, 0.11937
+ 0xbfefc6ebc77f0887, 0x3fbe2ae5b8457f77, // -0.99303, 0.11784
+ 0xbfefc8646cfeb721, 0x3fbdc70ecbae9fc8, // -0.99321, 0.11632
+ 0xbfefc9d82bc2915e, 0x3fbd633347858ce4, // -0.99339, 0.11479
+ 0xbfefcb4703914354, 0x3fbcff533b307dc1, // -0.99356, 0.11327
+ 0xbfefccb0f4323aa3, 0x3fbc9b6eb6165c42, // -0.99374, 0.11175
+ 0xbfefce15fd6da67b, 0x3fbc3785c79ec2d5, // -0.99391, 0.11022
+ 0xbfefcf761f0c77a3, 0x3fbbd3987f31fa0e, // -0.99407, 0.1087
+ 0xbfefd0d158d86087, 0x3fbb6fa6ec38f64c, // -0.99424, 0.10717
+ 0xbfefd227aa9bd53b, 0x3fbb0bb11e1d5559, // -0.9944, 0.10565
+ 0xbfefd37914220b84, 0x3fbaa7b724495c04, // -0.99456, 0.10412
+ 0xbfefd4c59536fae4, 0x3fba43b90e27f3c4, // -0.99472, 0.1026
+ 0xbfefd60d2da75c9e, 0x3fb9dfb6eb24a85c, // -0.99488, 0.10107
+ 0xbfefd74fdd40abbf, 0x3fb97bb0caaba56f, // -0.99503, 0.099544
+ 0xbfefd88da3d12526, 0x3fb917a6bc29b42c, // -0.99518, 0.098017
+ 0xbfefd9c68127c78c, 0x3fb8b398cf0c38e0, // -0.99533, 0.09649
+ 0xbfefdafa7514538c, 0x3fb84f8712c130a0, // -0.99548, 0.094963
+ 0xbfefdc297f674ba9, 0x3fb7eb7196b72ee4, // -0.99563, 0.093436
+ 0xbfefdd539ff1f456, 0x3fb787586a5d5b21, // -0.99577, 0.091909
+ 0xbfefde78d68653fd, 0x3fb7233b9d236e71, // -0.99591, 0.090381
+ 0xbfefdf9922f73307, 0x3fb6bf1b3e79b129, // -0.99604, 0.088854
+ 0xbfefe0b485181be3, 0x3fb65af75dd0f87b, // -0.99618, 0.087326
+ 0xbfefe1cafcbd5b09, 0x3fb5f6d00a9aa419, // -0.99631, 0.085797
+ 0xbfefe2dc89bbff08, 0x3fb592a554489bc8, // -0.99644, 0.084269
+ 0xbfefe3e92be9d886, 0x3fb52e774a4d4d0a, // -0.99657, 0.08274
+ 0xbfefe4f0e31d7a4a, 0x3fb4ca45fc1ba8b6, // -0.9967, 0.081211
+ 0xbfefe5f3af2e3940, 0x3fb4661179272096, // -0.99682, 0.079682
+ 0xbfefe6f18ff42c84, 0x3fb401d9d0e3a507, // -0.99694, 0.078153
+ 0xbfefe7ea85482d60, 0x3fb39d9f12c5a299, // -0.99706, 0.076624
+ 0xbfefe8de8f03d75c, 0x3fb339614e41ffa5, // -0.99718, 0.075094
+ 0xbfefe9cdad01883a, 0x3fb2d52092ce19f6, // -0.99729, 0.073565
+ 0xbfefeab7df1c6005, 0x3fb270dcefdfc45b, // -0.9974, 0.072035
+ 0xbfefeb9d2530410f, 0x3fb20c9674ed444c, // -0.99751, 0.070505
+ 0xbfefec7d7f19cffc, 0x3fb1a84d316d4f8a, // -0.99762, 0.068974
+ 0xbfefed58ecb673c4, 0x3fb1440134d709b2, // -0.99772, 0.067444
+ 0xbfefee2f6de455ba, 0x3fb0dfb28ea201e6, // -0.99783, 0.065913
+ 0xbfefef0102826191, 0x3fb07b614e463064, // -0.99793, 0.064383
+ 0xbfefefcdaa704562, 0x3fb0170d833bf421, // -0.99802, 0.062852
+ 0xbfeff095658e71ad, 0x3faf656e79f820e0, // -0.99812, 0.061321
+ 0xbfeff15833be1965, 0x3fae9cbd15ff5527, // -0.99821, 0.05979
+ 0xbfeff21614e131ed, 0x3fadd406f9808ec8, // -0.9983, 0.058258
+ 0xbfeff2cf08da7321, 0x3fad0b4c436f91d0, // -0.99839, 0.056727
+ 0xbfeff3830f8d575c, 0x3fac428d12c0d7e3, // -0.99848, 0.055195
+ 0xbfeff43228de1b77, 0x3fab79c986698b78, // -0.99856, 0.053664
+ 0xbfeff4dc54b1bed3, 0x3faab101bd5f8317, // -0.99864, 0.052132
+ 0xbfeff58192ee0358, 0x3fa9e835d6993c87, // -0.99872, 0.0506
+ 0xbfeff621e3796d7e, 0x3fa91f65f10dd814, // -0.9988, 0.049068
+ 0xbfeff6bd463b444d, 0x3fa856922bb513c1, // -0.99887, 0.047535
+ 0xbfeff753bb1b9164, 0x3fa78dbaa5874685, // -0.99894, 0.046003
+ 0xbfeff7e5420320f9, 0x3fa6c4df7d7d5b84, // -0.99901, 0.044471
+ 0xbfeff871dadb81df, 0x3fa5fc00d290cd43, // -0.99908, 0.042938
+ 0xbfeff8f9858f058b, 0x3fa5331ec3bba0eb, // -0.99914, 0.041406
+ 0xbfeff97c4208c014, 0x3fa46a396ff86179, // -0.9992, 0.039873
+ 0xbfeff9fa10348837, 0x3fa3a150f6421afc, // -0.99926, 0.03834
+ 0xbfeffa72effef75d, 0x3fa2d865759455cd, // -0.99932, 0.036807
+ 0xbfeffae6e1556998, 0x3fa20f770ceb11c6, // -0.99938, 0.035274
+ 0xbfeffb55e425fdae, 0x3fa14685db42c17e, // -0.99943, 0.033741
+ 0xbfeffbbff85f9515, 0x3fa07d91ff984580, // -0.99948, 0.032208
+ 0xbfeffc251df1d3f8, 0x3f9f693731d1cf01, // -0.99953, 0.030675
+ 0xbfeffc8554cd213a, 0x3f9dd7458c64ab39, // -0.99958, 0.029142
+ 0xbfeffce09ce2a679, 0x3f9c454f4ce53b1c, // -0.99962, 0.027608
+ 0xbfeffd36f624500c, 0x3f9ab354b1504fca, // -0.99966, 0.026075
+ 0xbfeffd886084cd0d, 0x3f992155f7a3667e, // -0.9997, 0.024541
+ 0xbfeffdd4dbf78f52, 0x3f978f535ddc9f03, // -0.99974, 0.023008
+ 0xbfeffe1c6870cb77, 0x3f95fd4d21fab226, // -0.99977, 0.021474
+ 0xbfeffe5f05e578db, 0x3f946b4381fce81c, // -0.9998, 0.01994
+ 0xbfeffe9cb44b51a1, 0x3f92d936bbe30efd, // -0.99983, 0.018407
+ 0xbfeffed57398d2b7, 0x3f9147270dad7132, // -0.99986, 0.016873
+ 0xbfefff0943c53bd1, 0x3f8f6a296ab997ca, // -0.99988, 0.015339
+ 0xbfefff3824c88f6f, 0x3f8c45ffe1e48ad9, // -0.9999, 0.013805
+ 0xbfefff62169b92db, 0x3f8921d1fcdec784, // -0.99992, 0.012272
+ 0xbfefff871937ce2f, 0x3f85fda037ac05e0, // -0.99994, 0.010738
+ 0xbfefffa72c978c4f, 0x3f82d96b0e509703, // -0.99996, 0.0092038
+ 0xbfefffc250b5daef, 0x3f7f6a65f9a2a3c5, // -0.99997, 0.0076698
+ 0xbfefffd8858e8a92, 0x3f7921f0fe670071, // -0.99998, 0.0061359
+ 0xbfefffe9cb1e2e8d, 0x3f72d97822f996bc, // -0.99999, 0.0046019
+ 0xbfeffff621621d02, 0x3f6921f8becca4ba, // -1, 0.003068
+ 0xbfeffffd88586ee6, 0x3f5921faaee6472d, // -1, 0.001534
+ 0xbff0000000000000, 0x0000000000000000, // -1, 0
+ 0xbfeffffd88586ee6, 0xbf5921faaee6472d, // -1, -0.001534
+ 0xbfeffff621621d02, 0xbf6921f8becca4ba, // -1, -0.003068
+ 0xbfefffe9cb1e2e8d, 0xbf72d97822f996bc, // -0.99999,-0.0046019
+ 0xbfefffd8858e8a92, 0xbf7921f0fe670071, // -0.99998,-0.0061359
+ 0xbfefffc250b5daef, 0xbf7f6a65f9a2a3c5, // -0.99997,-0.0076698
+ 0xbfefffa72c978c4f, 0xbf82d96b0e509703, // -0.99996,-0.0092038
+ 0xbfefff871937ce2f, 0xbf85fda037ac05e0, // -0.99994, -0.010738
+ 0xbfefff62169b92db, 0xbf8921d1fcdec784, // -0.99992, -0.012272
+ 0xbfefff3824c88f6f, 0xbf8c45ffe1e48ad9, // -0.9999, -0.013805
+ 0xbfefff0943c53bd1, 0xbf8f6a296ab997ca, // -0.99988, -0.015339
+ 0xbfeffed57398d2b7, 0xbf9147270dad7132, // -0.99986, -0.016873
+ 0xbfeffe9cb44b51a1, 0xbf92d936bbe30efd, // -0.99983, -0.018407
+ 0xbfeffe5f05e578db, 0xbf946b4381fce81c, // -0.9998, -0.01994
+ 0xbfeffe1c6870cb77, 0xbf95fd4d21fab226, // -0.99977, -0.021474
+ 0xbfeffdd4dbf78f52, 0xbf978f535ddc9f03, // -0.99974, -0.023008
+ 0xbfeffd886084cd0d, 0xbf992155f7a3667e, // -0.9997, -0.024541
+ 0xbfeffd36f624500c, 0xbf9ab354b1504fca, // -0.99966, -0.026075
+ 0xbfeffce09ce2a679, 0xbf9c454f4ce53b1c, // -0.99962, -0.027608
+ 0xbfeffc8554cd213a, 0xbf9dd7458c64ab39, // -0.99958, -0.029142
+ 0xbfeffc251df1d3f8, 0xbf9f693731d1cf01, // -0.99953, -0.030675
+ 0xbfeffbbff85f9515, 0xbfa07d91ff984580, // -0.99948, -0.032208
+ 0xbfeffb55e425fdae, 0xbfa14685db42c17e, // -0.99943, -0.033741
+ 0xbfeffae6e1556998, 0xbfa20f770ceb11c6, // -0.99938, -0.035274
+ 0xbfeffa72effef75d, 0xbfa2d865759455cd, // -0.99932, -0.036807
+ 0xbfeff9fa10348837, 0xbfa3a150f6421afc, // -0.99926, -0.03834
+ 0xbfeff97c4208c014, 0xbfa46a396ff86179, // -0.9992, -0.039873
+ 0xbfeff8f9858f058b, 0xbfa5331ec3bba0eb, // -0.99914, -0.041406
+ 0xbfeff871dadb81df, 0xbfa5fc00d290cd43, // -0.99908, -0.042938
+ 0xbfeff7e5420320f9, 0xbfa6c4df7d7d5b84, // -0.99901, -0.044471
+ 0xbfeff753bb1b9164, 0xbfa78dbaa5874685, // -0.99894, -0.046003
+ 0xbfeff6bd463b444d, 0xbfa856922bb513c1, // -0.99887, -0.047535
+ 0xbfeff621e3796d7e, 0xbfa91f65f10dd814, // -0.9988, -0.049068
+ 0xbfeff58192ee0358, 0xbfa9e835d6993c87, // -0.99872, -0.0506
+ 0xbfeff4dc54b1bed3, 0xbfaab101bd5f8317, // -0.99864, -0.052132
+ 0xbfeff43228de1b77, 0xbfab79c986698b78, // -0.99856, -0.053664
+ 0xbfeff3830f8d575c, 0xbfac428d12c0d7e3, // -0.99848, -0.055195
+ 0xbfeff2cf08da7321, 0xbfad0b4c436f91d0, // -0.99839, -0.056727
+ 0xbfeff21614e131ed, 0xbfadd406f9808ec8, // -0.9983, -0.058258
+ 0xbfeff15833be1965, 0xbfae9cbd15ff5527, // -0.99821, -0.05979
+ 0xbfeff095658e71ad, 0xbfaf656e79f820e0, // -0.99812, -0.061321
+ 0xbfefefcdaa704562, 0xbfb0170d833bf421, // -0.99802, -0.062852
+ 0xbfefef0102826191, 0xbfb07b614e463064, // -0.99793, -0.064383
+ 0xbfefee2f6de455ba, 0xbfb0dfb28ea201e6, // -0.99783, -0.065913
+ 0xbfefed58ecb673c4, 0xbfb1440134d709b2, // -0.99772, -0.067444
+ 0xbfefec7d7f19cffc, 0xbfb1a84d316d4f8a, // -0.99762, -0.068974
+ 0xbfefeb9d2530410f, 0xbfb20c9674ed444c, // -0.99751, -0.070505
+ 0xbfefeab7df1c6005, 0xbfb270dcefdfc45b, // -0.9974, -0.072035
+ 0xbfefe9cdad01883a, 0xbfb2d52092ce19f6, // -0.99729, -0.073565
+ 0xbfefe8de8f03d75c, 0xbfb339614e41ffa5, // -0.99718, -0.075094
+ 0xbfefe7ea85482d60, 0xbfb39d9f12c5a299, // -0.99706, -0.076624
+ 0xbfefe6f18ff42c84, 0xbfb401d9d0e3a507, // -0.99694, -0.078153
+ 0xbfefe5f3af2e3940, 0xbfb4661179272096, // -0.99682, -0.079682
+ 0xbfefe4f0e31d7a4a, 0xbfb4ca45fc1ba8b6, // -0.9967, -0.081211
+ 0xbfefe3e92be9d886, 0xbfb52e774a4d4d0a, // -0.99657, -0.08274
+ 0xbfefe2dc89bbff08, 0xbfb592a554489bc8, // -0.99644, -0.084269
+ 0xbfefe1cafcbd5b09, 0xbfb5f6d00a9aa419, // -0.99631, -0.085797
+ 0xbfefe0b485181be3, 0xbfb65af75dd0f87b, // -0.99618, -0.087326
+ 0xbfefdf9922f73307, 0xbfb6bf1b3e79b129, // -0.99604, -0.088854
+ 0xbfefde78d68653fd, 0xbfb7233b9d236e71, // -0.99591, -0.090381
+ 0xbfefdd539ff1f456, 0xbfb787586a5d5b21, // -0.99577, -0.091909
+ 0xbfefdc297f674ba9, 0xbfb7eb7196b72ee4, // -0.99563, -0.093436
+ 0xbfefdafa7514538c, 0xbfb84f8712c130a0, // -0.99548, -0.094963
+ 0xbfefd9c68127c78c, 0xbfb8b398cf0c38e0, // -0.99533, -0.09649
+ 0xbfefd88da3d12526, 0xbfb917a6bc29b42c, // -0.99518, -0.098017
+ 0xbfefd74fdd40abbf, 0xbfb97bb0caaba56f, // -0.99503, -0.099544
+ 0xbfefd60d2da75c9e, 0xbfb9dfb6eb24a85c, // -0.99488, -0.10107
+ 0xbfefd4c59536fae4, 0xbfba43b90e27f3c4, // -0.99472, -0.1026
+ 0xbfefd37914220b84, 0xbfbaa7b724495c04, // -0.99456, -0.10412
+ 0xbfefd227aa9bd53b, 0xbfbb0bb11e1d5559, // -0.9944, -0.10565
+ 0xbfefd0d158d86087, 0xbfbb6fa6ec38f64c, // -0.99424, -0.10717
+ 0xbfefcf761f0c77a3, 0xbfbbd3987f31fa0e, // -0.99407, -0.1087
+ 0xbfefce15fd6da67b, 0xbfbc3785c79ec2d5, // -0.99391, -0.11022
+ 0xbfefccb0f4323aa3, 0xbfbc9b6eb6165c42, // -0.99374, -0.11175
+ 0xbfefcb4703914354, 0xbfbcff533b307dc1, // -0.99356, -0.11327
+ 0xbfefc9d82bc2915e, 0xbfbd633347858ce4, // -0.99339, -0.11479
+ 0xbfefc8646cfeb721, 0xbfbdc70ecbae9fc8, // -0.99321, -0.11632
+ 0xbfefc6ebc77f0887, 0xbfbe2ae5b8457f77, // -0.99303, -0.11784
+ 0xbfefc56e3b7d9af6, 0xbfbe8eb7fde4aa3e, // -0.99285, -0.11937
+ 0xbfefc3ebc935454c, 0xbfbef2858d27561b, // -0.99267, -0.12089
+ 0xbfefc26470e19fd3, 0xbfbf564e56a9730e, // -0.99248, -0.12241
+ 0xbfefc0d832bf043a, 0xbfbfba124b07ad85, // -0.99229, -0.12393
+ 0xbfefbf470f0a8d88, 0xbfc00ee8ad6fb85b, // -0.9921, -0.12545
+ 0xbfefbdb106021816, 0xbfc040c5bb67747e, // -0.99191, -0.12698
+ 0xbfefbc1617e44186, 0xbfc072a047ba831d, // -0.99171, -0.1285
+ 0xbfefba7644f068b5, 0xbfc0a4784ab8bf1d, // -0.99151, -0.13002
+ 0xbfefb8d18d66adb7, 0xbfc0d64dbcb26786, // -0.99131, -0.13154
+ 0xbfefb727f187f1c7, 0xbfc1082095f820b0, // -0.99111, -0.13306
+ 0xbfefb5797195d741, 0xbfc139f0cedaf576, // -0.9909, -0.13458
+ 0xbfefb3c60dd2c199, 0xbfc16bbe5fac5865, // -0.9907, -0.1361
+ 0xbfefb20dc681d54d, 0xbfc19d8940be24e7, // -0.99049, -0.13762
+ 0xbfefb0509be6f7db, 0xbfc1cf516a62a077, // -0.99027, -0.13914
+ 0xbfefae8e8e46cfbb, 0xbfc20116d4ec7bce, // -0.99006, -0.14066
+ 0xbfefacc79de6c44f, 0xbfc232d978aed413, // -0.98984, -0.14218
+ 0xbfefaafbcb0cfddc, 0xbfc264994dfd340a, // -0.98962, -0.1437
+ 0xbfefa92b1600657c, 0xbfc296564d2b953e, // -0.9894, -0.14521
+ 0xbfefa7557f08a517, 0xbfc2c8106e8e613a, // -0.98918, -0.14673
+ 0xbfefa57b066e2754, 0xbfc2f9c7aa7a72af, // -0.98895, -0.14825
+ 0xbfefa39bac7a1791, 0xbfc32b7bf94516a7, // -0.98872, -0.14976
+ 0xbfefa1b7717661d5, 0xbfc35d2d53440db2, // -0.98849, -0.15128
+ 0xbfef9fce55adb2c8, 0xbfc38edbb0cd8d14, // -0.98826, -0.1528
+ 0xbfef9de0596b77a3, 0xbfc3c0870a383ff6, // -0.98802, -0.15431
+ 0xbfef9bed7cfbde29, 0xbfc3f22f57db4893, // -0.98778, -0.15583
+ 0xbfef99f5c0abd496, 0xbfc423d4920e4166, // -0.98754, -0.15734
+ 0xbfef97f924c9099b, 0xbfc45576b1293e5a, // -0.9873, -0.15886
+ 0xbfef95f7a9a1ec47, 0xbfc48715ad84cdf5, // -0.98706, -0.16037
+ 0xbfef93f14f85ac08, 0xbfc4b8b17f79fa88, // -0.98681, -0.16189
+ 0xbfef91e616c43891, 0xbfc4ea4a1f624b61, // -0.98656, -0.1634
+ 0xbfef8fd5ffae41db, 0xbfc51bdf8597c5f2, // -0.98631, -0.16491
+ 0xbfef8dc10a95380d, 0xbfc54d71aa74ef02, // -0.98605, -0.16643
+ 0xbfef8ba737cb4b78, 0xbfc57f008654cbde, // -0.9858, -0.16794
+ 0xbfef898887a36c84, 0xbfc5b08c1192e381, // -0.98554, -0.16945
+ 0xbfef8764fa714ba9, 0xbfc5e214448b3fc6, // -0.98528, -0.17096
+ 0xbfef853c9089595e, 0xbfc61399179a6e94, // -0.98501, -0.17247
+ 0xbfef830f4a40c60c, 0xbfc6451a831d830d, // -0.98475, -0.17398
+ 0xbfef80dd27ed8204, 0xbfc676987f7216b8, // -0.98448, -0.17549
+ 0xbfef7ea629e63d6e, 0xbfc6a81304f64ab2, // -0.98421, -0.177
+ 0xbfef7c6a50826840, 0xbfc6d98a0c08c8da, // -0.98394, -0.17851
+ 0xbfef7a299c1a322a, 0xbfc70afd8d08c4ff, // -0.98366, -0.18002
+ 0xbfef77e40d068a90, 0xbfc73c6d8055fe0a, // -0.98339, -0.18153
+ 0xbfef7599a3a12077, 0xbfc76dd9de50bf31, // -0.98311, -0.18304
+ 0xbfef734a60446279, 0xbfc79f429f59e11d, // -0.98282, -0.18455
+ 0xbfef70f6434b7eb7, 0xbfc7d0a7bbd2cb1b, // -0.98254, -0.18606
+ 0xbfef6e9d4d1262ca, 0xbfc802092c1d744b, // -0.98225, -0.18756
+ 0xbfef6c3f7df5bbb7, 0xbfc83366e89c64c5, // -0.98196, -0.18907
+ 0xbfef69dcd652f5de, 0xbfc864c0e9b2b6cf, // -0.98167, -0.19057
+ 0xbfef677556883cee, 0xbfc8961727c41804, // -0.98138, -0.19208
+ 0xbfef6508fef47bd5, 0xbfc8c7699b34ca7e, // -0.98108, -0.19359
+ 0xbfef6297cff75cb0, 0xbfc8f8b83c69a60a, // -0.98079, -0.19509
+ 0xbfef6021c9f148c2, 0xbfc92a0303c8194f, // -0.98048, -0.19659
+ 0xbfef5da6ed43685d, 0xbfc95b49e9b62af9, // -0.98018, -0.1981
+ 0xbfef5b273a4fa2d9, 0xbfc98c8ce69a7aec, // -0.97988, -0.1996
+ 0xbfef58a2b1789e84, 0xbfc9bdcbf2dc4366, // -0.97957, -0.2011
+ 0xbfef56195321c090, 0xbfc9ef0706e35a35, // -0.97926, -0.20261
+ 0xbfef538b1faf2d07, 0xbfca203e1b1831da, // -0.97895, -0.20411
+ 0xbfef50f81785c6b9, 0xbfca517127e3dabc, // -0.97863, -0.20561
+ 0xbfef4e603b0b2f2d, 0xbfca82a025b00451, // -0.97832, -0.20711
+ 0xbfef4bc38aa5c694, 0xbfcab3cb0ce6fe44, // -0.978, -0.20861
+ 0xbfef492206bcabb4, 0xbfcae4f1d5f3b9ab, // -0.97768, -0.21011
+ 0xbfef467bafb7bbe0, 0xbfcb16147941ca2a, // -0.97735, -0.21161
+ 0xbfef43d085ff92dd, 0xbfcb4732ef3d6722, // -0.97703, -0.21311
+ 0xbfef412089fd8adc, 0xbfcb784d30536cda, // -0.9767, -0.21461
+ 0xbfef3e6bbc1bbc65, 0xbfcba96334f15dad, // -0.97637, -0.21611
+ 0xbfef3bb21cc4fe47, 0xbfcbda74f5856330, // -0.97604, -0.2176
+ 0xbfef38f3ac64e589, 0xbfcc0b826a7e4f63, // -0.9757, -0.2191
+ 0xbfef36306b67c556, 0xbfcc3c8b8c4b9dd7, // -0.97536, -0.2206
+ 0xbfef33685a3aaef0, 0xbfcc6d90535d74dc, // -0.97503, -0.22209
+ 0xbfef309b794b719f, 0xbfcc9e90b824a6a9, // -0.97468, -0.22359
+ 0xbfef2dc9c9089a9d, 0xbfcccf8cb312b286, // -0.97434, -0.22508
+ 0xbfef2af349e17507, 0xbfcd00843c99c5f9, // -0.97399, -0.22658
+ 0xbfef2817fc4609ce, 0xbfcd31774d2cbdee, // -0.97364, -0.22807
+ 0xbfef2537e0a71f9f, 0xbfcd6265dd3f27e3, // -0.97329, -0.22957
+ 0xbfef2252f7763ada, 0xbfcd934fe5454311, // -0.97294, -0.23106
+ 0xbfef1f6941259d7a, 0xbfcdc4355db40195, // -0.97258, -0.23255
+ 0xbfef1c7abe284708, 0xbfcdf5163f01099a, // -0.97223, -0.23404
+ 0xbfef19876ef1f486, 0xbfce25f281a2b684, // -0.97187, -0.23553
+ 0xbfef168f53f7205d, 0xbfce56ca1e101a1b, // -0.9715, -0.23702
+ 0xbfef13926dad024e, 0xbfce879d0cc0fdaf, // -0.97114, -0.23851
+ 0xbfef1090bc898f5f, 0xbfceb86b462de348, // -0.97077, -0.24
+ 0xbfef0d8a410379c5, 0xbfcee934c2d006c7, // -0.9704, -0.24149
+ 0xbfef0a7efb9230d7, 0xbfcf19f97b215f1a, // -0.97003, -0.24298
+ 0xbfef076eecade0fa, 0xbfcf4ab9679c9f5c, // -0.96966, -0.24447
+ 0xbfef045a14cf738c, 0xbfcf7b7480bd3801, // -0.96928, -0.24596
+ 0xbfef014074708ed3, 0xbfcfac2abeff57ff, // -0.9689, -0.24744
+ 0xbfeefe220c0b95ec, 0xbfcfdcdc1adfedf8, // -0.96852, -0.24893
+ 0xbfeefafedc1ba8b7, 0xbfd006c4466e54af, // -0.96814, -0.25041
+ 0xbfeef7d6e51ca3c0, 0xbfd01f1806b9fdd2, // -0.96775, -0.2519
+ 0xbfeef4aa278b2032, 0xbfd037694a928cac, // -0.96737, -0.25338
+ 0xbfeef178a3e473c2, 0xbfd04fb80e37fdae, // -0.96698, -0.25487
+ 0xbfeeee425aa6b09a, 0xbfd068044deab002, // -0.96658, -0.25635
+ 0xbfeeeb074c50a544, 0xbfd0804e05eb661e, // -0.96619, -0.25783
+ 0xbfeee7c77961dc9e, 0xbfd09895327b465e, // -0.96579, -0.25931
+ 0xbfeee482e25a9dbc, 0xbfd0b0d9cfdbdb90, // -0.96539, -0.26079
+ 0xbfeee13987bbebdc, 0xbfd0c91bda4f158d, // -0.96499, -0.26227
+ 0xbfeeddeb6a078651, 0xbfd0e15b4e1749cd, // -0.96459, -0.26375
+ 0xbfeeda9889bfe86a, 0xbfd0f998277733f7, // -0.96418, -0.26523
+ 0xbfeed740e7684963, 0xbfd111d262b1f677, // -0.96378, -0.26671
+ 0xbfeed3e483849c51, 0xbfd12a09fc0b1b12, // -0.96337, -0.26819
+ 0xbfeed0835e999009, 0xbfd1423eefc69378, // -0.96295, -0.26967
+ 0xbfeecd1d792c8f10, 0xbfd15a713a28b9d9, // -0.96254, -0.27115
+ 0xbfeec9b2d3c3bf84, 0xbfd172a0d7765177, // -0.96212, -0.27262
+ 0xbfeec6436ee60309, 0xbfd18acdc3f4873a, // -0.9617, -0.2741
+ 0xbfeec2cf4b1af6b2, 0xbfd1a2f7fbe8f243, // -0.96128, -0.27557
+ 0xbfeebf5668eaf2ef, 0xbfd1bb1f7b999480, // -0.96086, -0.27705
+ 0xbfeebbd8c8df0b74, 0xbfd1d3443f4cdb3d, // -0.96043, -0.27852
+ 0xbfeeb8566b810f2a, 0xbfd1eb6643499fbb, // -0.96, -0.27999
+ 0xbfeeb4cf515b8811, 0xbfd2038583d727bd, // -0.95957, -0.28146
+ 0xbfeeb1437af9bb34, 0xbfd21ba1fd3d2623, // -0.95914, -0.28294
+ 0xbfeeadb2e8e7a88e, 0xbfd233bbabc3bb72, // -0.9587, -0.28441
+ 0xbfeeaa1d9bb20af3, 0xbfd24bd28bb37672, // -0.95827, -0.28588
+ 0xbfeea68393e65800, 0xbfd263e6995554ba, // -0.95783, -0.28735
+ 0xbfeea2e4d212c000, 0xbfd27bf7d0f2c346, // -0.95738, -0.28882
+ 0xbfee9f4156c62dda, 0xbfd294062ed59f05, // -0.95694, -0.29028
+ 0xbfee9b99229046f8, 0xbfd2ac11af483572, // -0.95649, -0.29175
+ 0xbfee97ec36016b30, 0xbfd2c41a4e954520, // -0.95605, -0.29322
+ 0xbfee943a91aab4b4, 0xbfd2dc200907fe51, // -0.95559, -0.29469
+ 0xbfee9084361df7f3, 0xbfd2f422daec0386, // -0.95514, -0.29615
+ 0xbfee8cc923edc388, 0xbfd30c22c08d6a13, // -0.95469, -0.29762
+ 0xbfee89095bad6025, 0xbfd3241fb638baaf, // -0.95423, -0.29908
+ 0xbfee8544ddf0d075, 0xbfd33c19b83af207, // -0.95377, -0.30054
+ 0xbfee817bab4cd10d, 0xbfd35410c2e18152, // -0.95331, -0.30201
+ 0xbfee7dadc456d850, 0xbfd36c04d27a4edf, // -0.95284, -0.30347
+ 0xbfee79db29a5165a, 0xbfd383f5e353b6aa, // -0.95238, -0.30493
+ 0xbfee7603dbce74e9, 0xbfd39be3f1bc8aef, // -0.95191, -0.30639
+ 0xbfee7227db6a9744, 0xbfd3b3cefa0414b7, // -0.95144, -0.30785
+ 0xbfee6e472911da27, 0xbfd3cbb6f87a146e, // -0.95096, -0.30931
+ 0xbfee6a61c55d53a7, 0xbfd3e39be96ec271, // -0.95049, -0.31077
+ 0xbfee6677b0e6d31e, 0xbfd3fb7dc932cfa4, // -0.95001, -0.31222
+ 0xbfee6288ec48e112, 0xbfd4135c94176602, // -0.94953, -0.31368
+ 0xbfee5e95781ebf1c, 0xbfd42b38466e2928, // -0.94905, -0.31514
+ 0xbfee5a9d550467d3, 0xbfd44310dc8936f0, // -0.94856, -0.31659
+ 0xbfee56a083968eb1, 0xbfd45ae652bb2800, // -0.94807, -0.31805
+ 0xbfee529f04729ffc, 0xbfd472b8a5571054, // -0.94759, -0.3195
+ 0xbfee4e98d836c0af, 0xbfd48a87d0b07fd7, // -0.94709, -0.32096
+ 0xbfee4a8dff81ce5e, 0xbfd4a253d11b82f3, // -0.9466, -0.32241
+ 0xbfee467e7af35f23, 0xbfd4ba1ca2eca31c, // -0.94611, -0.32386
+ 0xbfee426a4b2bc17e, 0xbfd4d1e24278e76a, // -0.94561, -0.32531
+ 0xbfee3e5170cbfc46, 0xbfd4e9a4ac15d520, // -0.94511, -0.32676
+ 0xbfee3a33ec75ce85, 0xbfd50163dc197047, // -0.9446, -0.32821
+ 0xbfee3611becbaf69, 0xbfd5191fceda3c35, // -0.9441, -0.32966
+ 0xbfee31eae870ce25, 0xbfd530d880af3c24, // -0.94359, -0.33111
+ 0xbfee2dbf6a0911d9, 0xbfd5488dedeff3be, // -0.94308, -0.33255
+ 0xbfee298f4439197a, 0xbfd5604012f467b4, // -0.94257, -0.334
+ 0xbfee255a77a63bb8, 0xbfd577eeec151e47, // -0.94206, -0.33545
+ 0xbfee212104f686e5, 0xbfd58f9a75ab1fdd, // -0.94154, -0.33689
+ 0xbfee1ce2ecd0c0d8, 0xbfd5a742ac0ff78d, // -0.94103, -0.33833
+ 0xbfee18a02fdc66d9, 0xbfd5bee78b9db3b6, // -0.94051, -0.33978
+ 0xbfee1458cec1ad83, 0xbfd5d68910aee686, // -0.93998, -0.34122
+ 0xbfee100cca2980ac, 0xbfd5ee27379ea693, // -0.93946, -0.34266
+ 0xbfee0bbc22bd8349, 0xbfd605c1fcc88f63, // -0.93893, -0.3441
+ 0xbfee0766d9280f54, 0xbfd61d595c88c203, // -0.9384, -0.34554
+ 0xbfee030cee1435b8, 0xbfd634ed533be58e, // -0.93787, -0.34698
+ 0xbfedfeae622dbe2b, 0xbfd64c7ddd3f27c6, // -0.93734, -0.34842
+ 0xbfedfa4b3621271d, 0xbfd6640af6f03d9e, // -0.9368, -0.34986
+ 0xbfedf5e36a9ba59c, 0xbfd67b949cad63ca, // -0.93627, -0.35129
+ 0xbfedf177004b2534, 0xbfd6931acad55f51, // -0.93573, -0.35273
+ 0xbfeded05f7de47da, 0xbfd6aa9d7dc77e16, // -0.93518, -0.35416
+ 0xbfede890520465ce, 0xbfd6c21cb1e39771, // -0.93464, -0.3556
+ 0xbfede4160f6d8d81, 0xbfd6d998638a0cb5, // -0.93409, -0.35703
+ 0xbfeddf9730ca837b, 0xbfd6f1108f1bc9c5, // -0.93354, -0.35846
+ 0xbfeddb13b6ccc23d, 0xbfd7088530fa459e, // -0.93299, -0.3599
+ 0xbfedd68ba2267a25, 0xbfd71ff6458782ec, // -0.93244, -0.36133
+ 0xbfedd1fef38a915a, 0xbfd73763c9261092, // -0.93188, -0.36276
+ 0xbfedcd6dabaca3a5, 0xbfd74ecdb8390a3e, // -0.93133, -0.36418
+ 0xbfedc8d7cb410260, 0xbfd766340f2418f6, // -0.93077, -0.36561
+ 0xbfedc43d52fcb453, 0xbfd77d96ca4b73a6, // -0.93021, -0.36704
+ 0xbfedbf9e4395759a, 0xbfd794f5e613dfae, // -0.92964, -0.36847
+ 0xbfedbafa9dc1b78d, 0xbfd7ac515ee2b172, // -0.92907, -0.36989
+ 0xbfedb6526238a09b, 0xbfd7c3a9311dcce7, // -0.92851, -0.37132
+ 0xbfedb1a591b20c38, 0xbfd7dafd592ba621, // -0.92794, -0.37274
+ 0xbfedacf42ce68ab9, 0xbfd7f24dd37341e3, // -0.92736, -0.37416
+ 0xbfeda83e348f613b, 0xbfd8099a9c5c362d, // -0.92679, -0.37559
+ 0xbfeda383a9668988, 0xbfd820e3b04eaac4, // -0.92621, -0.37701
+ 0xbfed9ec48c26b1f3, 0xbfd838290bb359c8, // -0.92563, -0.37843
+ 0xbfed9a00dd8b3d46, 0xbfd84f6aaaf3903f, // -0.92505, -0.37985
+ 0xbfed95389e50429b, 0xbfd866a88a792ea0, // -0.92447, -0.38127
+ 0xbfed906bcf328d46, 0xbfd87de2a6aea963, // -0.92388, -0.38268
+ 0xbfed8b9a70ef9cb4, 0xbfd89518fbff098e, // -0.92329, -0.3841
+ 0xbfed86c48445a450, 0xbfd8ac4b86d5ed44, // -0.9227, -0.38552
+ 0xbfed81ea09f38b63, 0xbfd8c37a439f884f, // -0.92211, -0.38693
+ 0xbfed7d0b02b8ecf9, 0xbfd8daa52ec8a4af, // -0.92151, -0.38835
+ 0xbfed78276f5617c6, 0xbfd8f1cc44bea329, // -0.92092, -0.38976
+ 0xbfed733f508c0dff, 0xbfd908ef81ef7bd1, // -0.92032, -0.39117
+ 0xbfed6e52a71c8547, 0xbfd9200ee2c9be97, // -0.91972, -0.39258
+ 0xbfed696173c9e68b, 0xbfd9372a63bc93d7, // -0.91911, -0.39399
+ 0xbfed646bb7574de5, 0xbfd94e420137bce3, // -0.91851, -0.3954
+ 0xbfed5f7172888a7f, 0xbfd96555b7ab948f, // -0.9179, -0.39681
+ 0xbfed5a72a6221e73, 0xbfd97c6583890fc2, // -0.91729, -0.39822
+ 0xbfed556f52e93eb1, 0xbfd993716141bdfe, // -0.91668, -0.39962
+ 0xbfed506779a3d2d9, 0xbfd9aa794d47c9ee, // -0.91606, -0.40103
+ 0xbfed4b5b1b187524, 0xbfd9c17d440df9f2, // -0.91545, -0.40243
+ 0xbfed464a380e7242, 0xbfd9d87d4207b0ab, // -0.91483, -0.40384
+ 0xbfed4134d14dc93a, 0xbfd9ef7943a8ed8a, // -0.91421, -0.40524
+ 0xbfed3c1ae79f2b4e, 0xbfda067145664d57, // -0.91359, -0.40664
+ 0xbfed36fc7bcbfbdc, 0xbfda1d6543b50ac0, // -0.91296, -0.40804
+ 0xbfed31d98e9e503a, 0xbfda34553b0afee5, // -0.91234, -0.40944
+ 0xbfed2cb220e0ef9f, 0xbfda4b4127dea1e4, // -0.91171, -0.41084
+ 0xbfed2786335f52fc, 0xbfda622906a70b63, // -0.91107, -0.41224
+ 0xbfed2255c6e5a4e1, 0xbfda790cd3dbf31a, // -0.91044, -0.41364
+ 0xbfed1d20dc40c15c, 0xbfda8fec8bf5b166, // -0.90981, -0.41503
+ 0xbfed17e7743e35dc, 0xbfdaa6c82b6d3fc9, // -0.90917, -0.41643
+ 0xbfed12a98fac410c, 0xbfdabd9faebc3980, // -0.90853, -0.41782
+ 0xbfed0d672f59d2b9, 0xbfdad473125cdc08, // -0.90789, -0.41922
+ 0xbfed082054168bac, 0xbfdaeb4252ca07ab, // -0.90724, -0.42061
+ 0xbfed02d4feb2bd92, 0xbfdb020d6c7f4009, // -0.9066, -0.422
+ 0xbfecfd852fff6ad4, 0xbfdb18d45bf8aca6, // -0.90595, -0.42339
+ 0xbfecf830e8ce467b, 0xbfdb2f971db31972, // -0.9053, -0.42478
+ 0xbfecf2d829f1b40e, 0xbfdb4655ae2bf757, // -0.90464, -0.42617
+ 0xbfeced7af43cc773, 0xbfdb5d1009e15cc0, // -0.90399, -0.42756
+ 0xbfece819488344ce, 0xbfdb73c62d520624, // -0.90333, -0.42894
+ 0xbfece2b32799a060, 0xbfdb8a7814fd5693, // -0.90267, -0.43033
+ 0xbfecdd489254fe65, 0xbfdba125bd63583e, // -0.90201, -0.43171
+ 0xbfecd7d9898b32f6, 0xbfdbb7cf2304bd01, // -0.90135, -0.43309
+ 0xbfecd2660e12c1e6, 0xbfdbce744262deee, // -0.90068, -0.43448
+ 0xbfecccee20c2de9f, 0xbfdbe51517ffc0d9, // -0.90002, -0.43586
+ 0xbfecc771c2736c09, 0xbfdbfbb1a05e0edc, // -0.89935, -0.43724
+ 0xbfecc1f0f3fcfc5c, 0xbfdc1249d8011ee7, // -0.89867, -0.43862
+ 0xbfecbc6bb638d10b, 0xbfdc28ddbb6cf145, // -0.898, -0.43999
+ 0xbfecb6e20a00da99, 0xbfdc3f6d47263129, // -0.89732, -0.44137
+ 0xbfecb153f02fb87d, 0xbfdc55f877b23537, // -0.89665, -0.44275
+ 0xbfecabc169a0b901, 0xbfdc6c7f4997000a, // -0.89597, -0.44412
+ 0xbfeca62a772fd919, 0xbfdc8301b95b40c2, // -0.89528, -0.4455
+ 0xbfeca08f19b9c449, 0xbfdc997fc3865388, // -0.8946, -0.44687
+ 0xbfec9aef521bd480, 0xbfdcaff964a0421d, // -0.89391, -0.44824
+ 0xbfec954b213411f5, 0xbfdcc66e9931c45d, // -0.89322, -0.44961
+ 0xbfec8fa287e13305, 0xbfdcdcdf5dc440ce, // -0.89253, -0.45098
+ 0xbfec89f587029c13, 0xbfdcf34baee1cd21, // -0.89184, -0.45235
+ 0xbfec84441f785f61, 0xbfdd09b389152ec1, // -0.89115, -0.45372
+ 0xbfec7e8e52233cf3, 0xbfdd2016e8e9db5b, // -0.89045, -0.45508
+ 0xbfec78d41fe4a267, 0xbfdd3675caebf962, // -0.88975, -0.45645
+ 0xbfec7315899eaad7, 0xbfdd4cd02ba8609c, // -0.88905, -0.45781
+ 0xbfec6d5290341eb2, 0xbfdd632607ac9aa9, // -0.88835, -0.45918
+ 0xbfec678b3488739b, 0xbfdd79775b86e389, // -0.88764, -0.46054
+ 0xbfec61bf777fcc48, 0xbfdd8fc423c62a25, // -0.88693, -0.4619
+ 0xbfec5bef59fef85a, 0xbfdda60c5cfa10d8, // -0.88622, -0.46326
+ 0xbfec561adceb743e, 0xbfddbc5003b2edf8, // -0.88551, -0.46462
+ 0xbfec5042012b6907, 0xbfddd28f1481cc58, // -0.8848, -0.46598
+ 0xbfec4a64c7a5ac4c, 0xbfdde8c98bf86bd6, // -0.88408, -0.46733
+ 0xbfec44833141c004, 0xbfddfeff66a941de, // -0.88336, -0.46869
+ 0xbfec3e9d3ee7d262, 0xbfde1530a12779f4, // -0.88264, -0.47004
+ 0xbfec38b2f180bdb1, 0xbfde2b5d3806f63b, // -0.88192, -0.4714
+ 0xbfec32c449f60831, 0xbfde418527dc4ffa, // -0.8812, -0.47275
+ 0xbfec2cd14931e3f1, 0xbfde57a86d3cd824, // -0.88047, -0.4741
+ 0xbfec26d9f01f2eaf, 0xbfde6dc704be97e2, // -0.87974, -0.47545
+ 0xbfec20de3fa971b0, 0xbfde83e0eaf85113, // -0.87901, -0.4768
+ 0xbfec1ade38bce19b, 0xbfde99f61c817eda, // -0.87828, -0.47815
+ 0xbfec14d9dc465e58, 0xbfdeb00695f25620, // -0.87755, -0.47949
+ 0xbfec0ed12b3372e9, 0xbfdec61253e3c61b, // -0.87681, -0.48084
+ 0xbfec08c426725549, 0xbfdedc1952ef78d5, // -0.87607, -0.48218
+ 0xbfec02b2cef1e641, 0xbfdef21b8fafd3b5, // -0.87533, -0.48353
+ 0xbfebfc9d25a1b147, 0xbfdf081906bff7fd, // -0.87459, -0.48487
+ 0xbfebf6832b71ec5b, 0xbfdf1e11b4bbc35c, // -0.87384, -0.48621
+ 0xbfebf064e15377dd, 0xbfdf3405963fd068, // -0.87309, -0.48755
+ 0xbfebea424837de6d, 0xbfdf49f4a7e97729, // -0.87235, -0.48889
+ 0xbfebe41b611154c1, 0xbfdf5fdee656cda3, // -0.8716, -0.49023
+ 0xbfebddf02cd2b983, 0xbfdf75c44e26a852, // -0.87084, -0.49156
+ 0xbfebd7c0ac6f952a, 0xbfdf8ba4dbf89aba, // -0.87009, -0.4929
+ 0xbfebd18ce0dc19d6, 0xbfdfa1808c6cf7e0, // -0.86933, -0.49423
+ 0xbfebcb54cb0d2327, 0xbfdfb7575c24d2de, // -0.86857, -0.49557
+ 0xbfebc5186bf8361d, 0xbfdfcd2947c1ff57, // -0.86781, -0.4969
+ 0xbfebbed7c49380ea, 0xbfdfe2f64be7120f, // -0.86705, -0.49823
+ 0xbfebb892d5d5dad5, 0xbfdff8be6537615e, // -0.86628, -0.49956
+ 0xbfebb249a0b6c40d, 0xbfe00740c82b82e0, // -0.86551, -0.50089
+ 0xbfebabfc262e6586, 0xbfe0121fe4f56d2c, // -0.86474, -0.50221
+ 0xbfeba5aa673590d2, 0xbfe01cfc874c3eb7, // -0.86397, -0.50354
+ 0xbfeb9f5464c5bffc, 0xbfe027d6ad83287e, // -0.8632, -0.50486
+ 0xbfeb98fa1fd9155e, 0xbfe032ae55edbd95, // -0.86242, -0.50619
+ 0xbfeb929b996a5b7f, 0xbfe03d837edff370, // -0.86165, -0.50751
+ 0xbfeb8c38d27504e9, 0xbfe0485626ae221a, // -0.86087, -0.50883
+ 0xbfeb85d1cbf52c02, 0xbfe053264bad0483, // -0.86009, -0.51015
+ 0xbfeb7f6686e792ea, 0xbfe05df3ec31b8b6, // -0.8593, -0.51147
+ 0xbfeb78f70449a34b, 0xbfe068bf0691c028, // -0.85852, -0.51279
+ 0xbfeb728345196e3e, 0xbfe073879922ffed, // -0.85773, -0.5141
+ 0xbfeb6c0b4a55ac17, 0xbfe07e4da23bc102, // -0.85694, -0.51542
+ 0xbfeb658f14fdbc47, 0xbfe089112032b08c, // -0.85615, -0.51673
+ 0xbfeb5f0ea611a532, 0xbfe093d2115ee018, // -0.85535, -0.51804
+ 0xbfeb5889fe921405, 0xbfe09e907417c5e1, // -0.85456, -0.51936
+ 0xbfeb52011f805c92, 0xbfe0a94c46b53d0b, // -0.85376, -0.52067
+ 0xbfeb4b7409de7925, 0xbfe0b405878f85ec, // -0.85296, -0.52198
+ 0xbfeb44e2beaf0a61, 0xbfe0bebc34ff4646, // -0.85216, -0.52328
+ 0xbfeb3e4d3ef55712, 0xbfe0c9704d5d898f, // -0.85136, -0.52459
+ 0xbfeb37b38bb54c09, 0xbfe0d421cf03c12b, // -0.85055, -0.5259
+ 0xbfeb3115a5f37bf4, 0xbfe0ded0b84bc4b5, // -0.84974, -0.5272
+ 0xbfeb2a738eb51f33, 0xbfe0e97d078fd23b, // -0.84893, -0.5285
+ 0xbfeb23cd470013b4, 0xbfe0f426bb2a8e7d, // -0.84812, -0.5298
+ 0xbfeb1d22cfdadcc6, 0xbfe0fecdd1770537, // -0.84731, -0.5311
+ 0xbfeb16742a4ca2f5, 0xbfe1097248d0a956, // -0.84649, -0.5324
+ 0xbfeb0fc1575d33db, 0xbfe114141f935545, // -0.84567, -0.5337
+ 0xbfeb090a58150200, 0xbfe11eb3541b4b22, // -0.84485, -0.535
+ 0xbfeb024f2d7d24a9, 0xbfe1294fe4c5350a, // -0.84403, -0.53629
+ 0xbfeafb8fd89f57b6, 0xbfe133e9cfee254e, // -0.84321, -0.53759
+ 0xbfeaf4cc5a85fb73, 0xbfe13e8113f396c1, // -0.84238, -0.53888
+ 0xbfeaee04b43c1474, 0xbfe14915af336ceb, // -0.84155, -0.54017
+ 0xbfeae738e6cd4b67, 0xbfe153a7a00bf453, // -0.84073, -0.54146
+ 0xbfeae068f345ecef, 0xbfe15e36e4dbe2bc, // -0.83989, -0.54275
+ 0xbfead994dab2e979, 0xbfe168c37c025764, // -0.83906, -0.54404
+ 0xbfead2bc9e21d511, 0xbfe1734d63dedb49, // -0.83822, -0.54532
+ 0xbfeacbe03ea0e73b, 0xbfe17dd49ad16161, // -0.83739, -0.54661
+ 0xbfeac4ffbd3efac8, 0xbfe188591f3a46e5, // -0.83655, -0.54789
+ 0xbfeabe1b1b0b8dac, 0xbfe192daef7a5386, // -0.83571, -0.54918
+ 0xbfeab7325916c0d4, 0xbfe19d5a09f2b9b8, // -0.83486, -0.55046
+ 0xbfeab045787157ff, 0xbfe1a7d66d0516e6, // -0.83402, -0.55174
+ 0xbfeaa9547a2cb98e, 0xbfe1b250171373be, // -0.83317, -0.55302
+ 0xbfeaa25f5f5aee60, 0xbfe1bcc706804467, // -0.83232, -0.55429
+ 0xbfea9b66290ea1a3, 0xbfe1c73b39ae68c8, // -0.83147, -0.55557
+ 0xbfea9468d85b20ae, 0xbfe1d1acaf012cc2, // -0.83062, -0.55685
+ 0xbfea8d676e545ad2, 0xbfe1dc1b64dc4872, // -0.82976, -0.55812
+ 0xbfea8661ec0ee133, 0xbfe1e68759a3e074, // -0.8289, -0.55939
+ 0xbfea7f58529fe69d, 0xbfe1f0f08bbc861b, // -0.82805, -0.56066
+ 0xbfea784aa31d3f55, 0xbfe1fb56f98b37b8, // -0.82718, -0.56193
+ 0xbfea7138de9d60f5, 0xbfe205baa17560d6, // -0.82632, -0.5632
+ 0xbfea6a230637623b, 0xbfe2101b81e0da78, // -0.82546, -0.56447
+ 0xbfea63091b02fae2, 0xbfe21a799933eb58, // -0.82459, -0.56573
+ 0xbfea5beb1e188375, 0xbfe224d4e5d5482e, // -0.82372, -0.567
+ 0xbfea54c91090f524, 0xbfe22f2d662c13e1, // -0.82285, -0.56826
+ 0xbfea4da2f385e997, 0xbfe23983189fdfd5, // -0.82198, -0.56952
+ 0xbfea4678c8119ac8, 0xbfe243d5fb98ac1f, // -0.8211, -0.57078
+ 0xbfea3f4a8f4ee2d2, 0xbfe24e260d7ee7c9, // -0.82023, -0.57204
+ 0xbfea38184a593bc6, 0xbfe258734cbb7110, // -0.81935, -0.5733
+ 0xbfea30e1fa4cbf81, 0xbfe262bdb7b795a2, // -0.81847, -0.57455
+ 0xbfea29a7a0462782, 0xbfe26d054cdd12df, // -0.81758, -0.57581
+ 0xbfea22693d62ccb9, 0xbfe2774a0a961612, // -0.8167, -0.57706
+ 0xbfea1b26d2c0a75e, 0xbfe2818bef4d3cba, // -0.81581, -0.57831
+ 0xbfea13e0617e4ec7, 0xbfe28bcaf96d94ba, // -0.81493, -0.57956
+ 0xbfea0c95eabaf937, 0xbfe2960727629ca8, // -0.81404, -0.58081
+ 0xbfea05476f967bb5, 0xbfe2a040779843fb, // -0.81314, -0.58206
+ 0xbfe9fdf4f13149de, 0xbfe2aa76e87aeb58, // -0.81225, -0.58331
+ 0xbfe9f69e70ac75bc, 0xbfe2b4aa787764c4, // -0.81135, -0.58455
+ 0xbfe9ef43ef29af94, 0xbfe2bedb25faf3ea, // -0.81046, -0.5858
+ 0xbfe9e7e56dcb45bd, 0xbfe2c908ef734e57, // -0.80956, -0.58704
+ 0xbfe9e082edb42472, 0xbfe2d333d34e9bb7, // -0.80866, -0.58828
+ 0xbfe9d91c7007d5a6, 0xbfe2dd5bcffb7616, // -0.80775, -0.58952
+ 0xbfe9d1b1f5ea80d6, 0xbfe2e780e3e8ea16, // -0.80685, -0.59076
+ 0xbfe9ca438080eadb, 0xbfe2f1a30d86773a, // -0.80594, -0.592
+ 0xbfe9c2d110f075c3, 0xbfe2fbc24b441015, // -0.80503, -0.59323
+ 0xbfe9bb5aa85f2098, 0xbfe305de9b921a94, // -0.80412, -0.59447
+ 0xbfe9b3e047f38741, 0xbfe30ff7fce17035, // -0.80321, -0.5957
+ 0xbfe9ac61f0d4e247, 0xbfe31a0e6da35e44, // -0.80229, -0.59693
+ 0xbfe9a4dfa42b06b2, 0xbfe32421ec49a620, // -0.80138, -0.59816
+ 0xbfe99d59631e65d5, 0xbfe32e3277467d6b, // -0.80046, -0.59939
+ 0xbfe995cf2ed80d22, 0xbfe338400d0c8e57, // -0.79954, -0.60062
+ 0xbfe98e410881a600, 0xbfe3424aac0ef7d6, // -0.79861, -0.60184
+ 0xbfe986aef1457594, 0xbfe34c5252c14de1, // -0.79769, -0.60307
+ 0xbfe97f18ea4e5c9e, 0xbfe35656ff9799ae, // -0.79676, -0.60429
+ 0xbfe9777ef4c7d742, 0xbfe36058b10659f3, // -0.79584, -0.60551
+ 0xbfe96fe111ddfce0, 0xbfe36a576582831b, // -0.79491, -0.60673
+ 0xbfe9683f42bd7fe1, 0xbfe374531b817f8d, // -0.79398, -0.60795
+ 0xbfe960998893ad8c, 0xbfe37e4bd1792fe2, // -0.79304, -0.60917
+ 0xbfe958efe48e6dd7, 0xbfe3884185dfeb22, // -0.79211, -0.61038
+ 0xbfe9514257dc4335, 0xbfe39234372c7f04, // -0.79117, -0.6116
+ 0xbfe94990e3ac4a6c, 0xbfe39c23e3d63029, // -0.79023, -0.61281
+ 0xbfe941db892e3a65, 0xbfe3a6108a54ba58, // -0.78929, -0.61402
+ 0xbfe93a22499263fc, 0xbfe3affa292050b9, // -0.78835, -0.61523
+ 0xbfe932652609b1cf, 0xbfe3b9e0beb19e18, // -0.7874, -0.61644
+ 0xbfe92aa41fc5a815, 0xbfe3c3c44981c517, // -0.78646, -0.61765
+ 0xbfe922df37f8646a, 0xbfe3cda4c80a6076, // -0.78551, -0.61885
+ 0xbfe91b166fd49da2, 0xbfe3d78238c58343, // -0.78456, -0.62006
+ 0xbfe91349c88da398, 0xbfe3e15c9a2db922, // -0.7836, -0.62126
+ 0xbfe90b7943575efe, 0xbfe3eb33eabe0680, // -0.78265, -0.62246
+ 0xbfe903a4e1665133, 0xbfe3f50828f1e8d2, // -0.78169, -0.62366
+ 0xbfe8fbcca3ef940d, 0xbfe3fed9534556d4, // -0.78074, -0.62486
+ 0xbfe8f3f08c28d9ac, 0xbfe408a76834c0c0, // -0.77978, -0.62606
+ 0xbfe8ec109b486c49, 0xbfe41272663d108c, // -0.77882, -0.62725
+ 0xbfe8e42cd2852e0a, 0xbfe41c3a4bdbaa26, // -0.77785, -0.62845
+ 0xbfe8dc45331698cc, 0xbfe425ff178e6bb1, // -0.77689, -0.62964
+ 0xbfe8d459be34bdfa, 0xbfe42fc0c7d3adbb, // -0.77592, -0.63083
+ 0xbfe8cc6a75184655, 0xbfe4397f5b2a4380, // -0.77495, -0.63202
+ 0xbfe8c47758fa71cb, 0xbfe4433ad0117b1d, // -0.77398, -0.63321
+ 0xbfe8bc806b151741, 0xbfe44cf325091dd6, // -0.77301, -0.63439
+ 0xbfe8b485aca2a468, 0xbfe456a858917046, // -0.77204, -0.63558
+ 0xbfe8ac871ede1d88, 0xbfe4605a692b32a2, // -0.77106, -0.63676
+ 0xbfe8a484c3031d50, 0xbfe46a095557a0f1, // -0.77008, -0.63794
+ 0xbfe89c7e9a4dd4ab, 0xbfe473b51b987347, // -0.7691, -0.63912
+ 0xbfe89474a5fb0a84, 0xbfe47d5dba6fde01, // -0.76812, -0.6403
+ 0xbfe88c66e7481ba1, 0xbfe48703306091fe, // -0.76714, -0.64148
+ 0xbfe884555f72fa6b, 0xbfe490a57bedbcdf, // -0.76615, -0.64266
+ 0xbfe87c400fba2ebf, 0xbfe49a449b9b0938, // -0.76517, -0.64383
+ 0xbfe87426f95cd5bd, 0xbfe4a3e08dec9ed6, // -0.76418, -0.645
+ 0xbfe86c0a1d9aa195, 0xbfe4ad79516722f0, // -0.76319, -0.64618
+ 0xbfe863e97db3d95a, 0xbfe4b70ee48fb869, // -0.7622, -0.64735
+ 0xbfe85bc51ae958cc, 0xbfe4c0a145ec0004, // -0.7612, -0.64851
+ 0xbfe8539cf67c9029, 0xbfe4ca30740218a3, // -0.76021, -0.64968
+ 0xbfe84b7111af83f9, 0xbfe4d3bc6d589f80, // -0.75921, -0.65085
+ 0xbfe843416dc4cce2, 0xbfe4dd453076b064, // -0.75821, -0.65201
+ 0xbfe83b0e0bff976e, 0xbfe4e6cabbe3e5e9, // -0.75721, -0.65317
+ 0xbfe832d6eda3a3e0, 0xbfe4f04d0e2859aa, // -0.75621, -0.65433
+ 0xbfe82a9c13f545ff, 0xbfe4f9cc25cca486, // -0.7552, -0.65549
+ 0xbfe8225d803964e5, 0xbfe503480159ded2, // -0.75419, -0.65665
+ 0xbfe81a1b33b57acc, 0xbfe50cc09f59a09b, // -0.75319, -0.65781
+ 0xbfe811d52faf94dc, 0xbfe51635fe5601d7, // -0.75218, -0.65896
+ 0xbfe8098b756e52fa, 0xbfe51fa81cd99aa6, // -0.75117, -0.66011
+ 0xbfe8013e0638e795, 0xbfe52916f96f8388, // -0.75015, -0.66127
+ 0xbfe7f8ece3571771, 0xbfe5328292a35596, // -0.74914, -0.66242
+ 0xbfe7f0980e113978, 0xbfe53beae7012abe, // -0.74812, -0.66356
+ 0xbfe7e83f87b03686, 0xbfe5454ff5159dfb, // -0.7471, -0.66471
+ 0xbfe7dfe3517d8937, 0xbfe54eb1bb6dcb8f, // -0.74608, -0.66586
+ 0xbfe7d7836cc33db2, 0xbfe5581038975137, // -0.74506, -0.667
+ 0xbfe7cf1fdacbf179, 0xbfe5616b6b204e6e, // -0.74403, -0.66814
+ 0xbfe7c6b89ce2d333, 0xbfe56ac35197649e, // -0.74301, -0.66928
+ 0xbfe7be4db453a27c, 0xbfe57417ea8bb75c, // -0.74198, -0.67042
+ 0xbfe7b5df226aafb0, 0xbfe57d69348cec9f, // -0.74095, -0.67156
+ 0xbfe7ad6ce874dbb6, 0xbfe586b72e2b2cfd, // -0.73992, -0.67269
+ 0xbfe7a4f707bf97d2, 0xbfe59001d5f723df, // -0.73889, -0.67383
+ 0xbfe79c7d8198e56e, 0xbfe599492a81ffbc, // -0.73785, -0.67496
+ 0xbfe79400574f55e4, 0xbfe5a28d2a5d7250, // -0.73682, -0.67609
+ 0xbfe78b7f8a320a52, 0xbfe5abcdd41bb0d8, // -0.73578, -0.67722
+ 0xbfe782fb1b90b35b, 0xbfe5b50b264f7448, // -0.73474, -0.67835
+ 0xbfe77a730cbb9100, 0xbfe5be451f8bf980, // -0.7337, -0.67948
+ 0xbfe771e75f037261, 0xbfe5c77bbe65018c, // -0.73265, -0.6806
+ 0xbfe7695813b9b594, 0xbfe5d0af016ed1d4, // -0.73161, -0.68172
+ 0xbfe760c52c304764, 0xbfe5d9dee73e345c, // -0.73056, -0.68285
+ 0xbfe7582ea9b9a329, 0xbfe5e30b6e6877f3, // -0.72951, -0.68397
+ 0xbfe74f948da8d28d, 0xbfe5ec3495837074, // -0.72846, -0.68508
+ 0xbfe746f6d9516d59, 0xbfe5f55a5b2576f8, // -0.72741, -0.6862
+ 0xbfe73e558e079942, 0xbfe5fe7cbde56a0f, // -0.72636, -0.68732
+ 0xbfe735b0ad2009b2, 0xbfe6079bbc5aadfa, // -0.7253, -0.68843
+ 0xbfe72d0837efff97, 0xbfe610b7551d2cde, // -0.72425, -0.68954
+ 0xbfe7245c2fcd492a, 0xbfe619cf86c55702, // -0.72319, -0.69065
+ 0xbfe71bac960e41bf, 0xbfe622e44fec22ff, // -0.72213, -0.69176
+ 0xbfe712f96c09d18d, 0xbfe62bf5af2b0dfd, // -0.72107, -0.69287
+ 0xbfe70a42b3176d7a, 0xbfe63503a31c1be8, // -0.72, -0.69397
+ 0xbfe701886c8f16e6, 0xbfe63e0e2a59d7aa, // -0.71894, -0.69508
+ 0xbfe6f8ca99c95b75, 0xbfe64715437f535b, // -0.71787, -0.69618
+ 0xbfe6f0093c1f54de, 0xbfe65018ed28287f, // -0.7168, -0.69728
+ 0xbfe6e74454eaa8ae, 0xbfe6591925f0783e, // -0.71573, -0.69838
+ 0xbfe6de7be585881d, 0xbfe66215ec74eb91, // -0.71466, -0.69947
+ 0xbfe6d5afef4aafcc, 0xbfe66b0f3f52b386, // -0.71358, -0.70057
+ 0xbfe6cce07395679f, 0xbfe674051d27896c, // -0.71251, -0.70166
+ 0xbfe6c40d73c18275, 0xbfe67cf78491af10, // -0.71143, -0.70275
+ 0xbfe6bb36f12b5e06, 0xbfe685e6742feeef, // -0.71035, -0.70385
+ 0xbfe6b25ced2fe29c, 0xbfe68ed1eaa19c71, // -0.70927, -0.70493
+ 0xbfe6a97f692c82ea, 0xbfe697b9e686941c, // -0.70819, -0.70602
+ 0xbfe6a09e667f3bcc, 0xbfe6a09e667f3bcc, // -0.70711, -0.70711
+ 0xbfe697b9e686941c, 0xbfe6a97f692c82ea, // -0.70602, -0.70819
+ 0xbfe68ed1eaa19c71, 0xbfe6b25ced2fe29c, // -0.70493, -0.70927
+ 0xbfe685e6742feeef, 0xbfe6bb36f12b5e06, // -0.70385, -0.71035
+ 0xbfe67cf78491af10, 0xbfe6c40d73c18275, // -0.70275, -0.71143
+ 0xbfe674051d27896c, 0xbfe6cce07395679f, // -0.70166, -0.71251
+ 0xbfe66b0f3f52b386, 0xbfe6d5afef4aafcc, // -0.70057, -0.71358
+ 0xbfe66215ec74eb91, 0xbfe6de7be585881d, // -0.69947, -0.71466
+ 0xbfe6591925f0783e, 0xbfe6e74454eaa8ae, // -0.69838, -0.71573
+ 0xbfe65018ed28287f, 0xbfe6f0093c1f54de, // -0.69728, -0.7168
+ 0xbfe64715437f535b, 0xbfe6f8ca99c95b75, // -0.69618, -0.71787
+ 0xbfe63e0e2a59d7aa, 0xbfe701886c8f16e6, // -0.69508, -0.71894
+ 0xbfe63503a31c1be8, 0xbfe70a42b3176d7a, // -0.69397, -0.72
+ 0xbfe62bf5af2b0dfd, 0xbfe712f96c09d18d, // -0.69287, -0.72107
+ 0xbfe622e44fec22ff, 0xbfe71bac960e41bf, // -0.69176, -0.72213
+ 0xbfe619cf86c55702, 0xbfe7245c2fcd492a, // -0.69065, -0.72319
+ 0xbfe610b7551d2cde, 0xbfe72d0837efff97, // -0.68954, -0.72425
+ 0xbfe6079bbc5aadfa, 0xbfe735b0ad2009b2, // -0.68843, -0.7253
+ 0xbfe5fe7cbde56a0f, 0xbfe73e558e079942, // -0.68732, -0.72636
+ 0xbfe5f55a5b2576f8, 0xbfe746f6d9516d59, // -0.6862, -0.72741
+ 0xbfe5ec3495837074, 0xbfe74f948da8d28d, // -0.68508, -0.72846
+ 0xbfe5e30b6e6877f3, 0xbfe7582ea9b9a329, // -0.68397, -0.72951
+ 0xbfe5d9dee73e345c, 0xbfe760c52c304764, // -0.68285, -0.73056
+ 0xbfe5d0af016ed1d4, 0xbfe7695813b9b594, // -0.68172, -0.73161
+ 0xbfe5c77bbe65018c, 0xbfe771e75f037261, // -0.6806, -0.73265
+ 0xbfe5be451f8bf980, 0xbfe77a730cbb9100, // -0.67948, -0.7337
+ 0xbfe5b50b264f7448, 0xbfe782fb1b90b35b, // -0.67835, -0.73474
+ 0xbfe5abcdd41bb0d8, 0xbfe78b7f8a320a52, // -0.67722, -0.73578
+ 0xbfe5a28d2a5d7250, 0xbfe79400574f55e4, // -0.67609, -0.73682
+ 0xbfe599492a81ffbc, 0xbfe79c7d8198e56e, // -0.67496, -0.73785
+ 0xbfe59001d5f723df, 0xbfe7a4f707bf97d2, // -0.67383, -0.73889
+ 0xbfe586b72e2b2cfd, 0xbfe7ad6ce874dbb6, // -0.67269, -0.73992
+ 0xbfe57d69348cec9f, 0xbfe7b5df226aafb0, // -0.67156, -0.74095
+ 0xbfe57417ea8bb75c, 0xbfe7be4db453a27c, // -0.67042, -0.74198
+ 0xbfe56ac35197649e, 0xbfe7c6b89ce2d333, // -0.66928, -0.74301
+ 0xbfe5616b6b204e6e, 0xbfe7cf1fdacbf179, // -0.66814, -0.74403
+ 0xbfe5581038975137, 0xbfe7d7836cc33db2, // -0.667, -0.74506
+ 0xbfe54eb1bb6dcb8f, 0xbfe7dfe3517d8937, // -0.66586, -0.74608
+ 0xbfe5454ff5159dfb, 0xbfe7e83f87b03686, // -0.66471, -0.7471
+ 0xbfe53beae7012abe, 0xbfe7f0980e113978, // -0.66356, -0.74812
+ 0xbfe5328292a35596, 0xbfe7f8ece3571771, // -0.66242, -0.74914
+ 0xbfe52916f96f8388, 0xbfe8013e0638e795, // -0.66127, -0.75015
+ 0xbfe51fa81cd99aa6, 0xbfe8098b756e52fa, // -0.66011, -0.75117
+ 0xbfe51635fe5601d7, 0xbfe811d52faf94dc, // -0.65896, -0.75218
+ 0xbfe50cc09f59a09b, 0xbfe81a1b33b57acc, // -0.65781, -0.75319
+ 0xbfe503480159ded2, 0xbfe8225d803964e5, // -0.65665, -0.75419
+ 0xbfe4f9cc25cca486, 0xbfe82a9c13f545ff, // -0.65549, -0.7552
+ 0xbfe4f04d0e2859aa, 0xbfe832d6eda3a3e0, // -0.65433, -0.75621
+ 0xbfe4e6cabbe3e5e9, 0xbfe83b0e0bff976e, // -0.65317, -0.75721
+ 0xbfe4dd453076b064, 0xbfe843416dc4cce2, // -0.65201, -0.75821
+ 0xbfe4d3bc6d589f80, 0xbfe84b7111af83f9, // -0.65085, -0.75921
+ 0xbfe4ca30740218a3, 0xbfe8539cf67c9029, // -0.64968, -0.76021
+ 0xbfe4c0a145ec0004, 0xbfe85bc51ae958cc, // -0.64851, -0.7612
+ 0xbfe4b70ee48fb869, 0xbfe863e97db3d95a, // -0.64735, -0.7622
+ 0xbfe4ad79516722f0, 0xbfe86c0a1d9aa195, // -0.64618, -0.76319
+ 0xbfe4a3e08dec9ed6, 0xbfe87426f95cd5bd, // -0.645, -0.76418
+ 0xbfe49a449b9b0938, 0xbfe87c400fba2ebf, // -0.64383, -0.76517
+ 0xbfe490a57bedbcdf, 0xbfe884555f72fa6b, // -0.64266, -0.76615
+ 0xbfe48703306091fe, 0xbfe88c66e7481ba1, // -0.64148, -0.76714
+ 0xbfe47d5dba6fde01, 0xbfe89474a5fb0a84, // -0.6403, -0.76812
+ 0xbfe473b51b987347, 0xbfe89c7e9a4dd4ab, // -0.63912, -0.7691
+ 0xbfe46a095557a0f1, 0xbfe8a484c3031d50, // -0.63794, -0.77008
+ 0xbfe4605a692b32a2, 0xbfe8ac871ede1d88, // -0.63676, -0.77106
+ 0xbfe456a858917046, 0xbfe8b485aca2a468, // -0.63558, -0.77204
+ 0xbfe44cf325091dd6, 0xbfe8bc806b151741, // -0.63439, -0.77301
+ 0xbfe4433ad0117b1d, 0xbfe8c47758fa71cb, // -0.63321, -0.77398
+ 0xbfe4397f5b2a4380, 0xbfe8cc6a75184655, // -0.63202, -0.77495
+ 0xbfe42fc0c7d3adbb, 0xbfe8d459be34bdfa, // -0.63083, -0.77592
+ 0xbfe425ff178e6bb1, 0xbfe8dc45331698cc, // -0.62964, -0.77689
+ 0xbfe41c3a4bdbaa26, 0xbfe8e42cd2852e0a, // -0.62845, -0.77785
+ 0xbfe41272663d108c, 0xbfe8ec109b486c49, // -0.62725, -0.77882
+ 0xbfe408a76834c0c0, 0xbfe8f3f08c28d9ac, // -0.62606, -0.77978
+ 0xbfe3fed9534556d4, 0xbfe8fbcca3ef940d, // -0.62486, -0.78074
+ 0xbfe3f50828f1e8d2, 0xbfe903a4e1665133, // -0.62366, -0.78169
+ 0xbfe3eb33eabe0680, 0xbfe90b7943575efe, // -0.62246, -0.78265
+ 0xbfe3e15c9a2db922, 0xbfe91349c88da398, // -0.62126, -0.7836
+ 0xbfe3d78238c58343, 0xbfe91b166fd49da2, // -0.62006, -0.78456
+ 0xbfe3cda4c80a6076, 0xbfe922df37f8646a, // -0.61885, -0.78551
+ 0xbfe3c3c44981c517, 0xbfe92aa41fc5a815, // -0.61765, -0.78646
+ 0xbfe3b9e0beb19e18, 0xbfe932652609b1cf, // -0.61644, -0.7874
+ 0xbfe3affa292050b9, 0xbfe93a22499263fc, // -0.61523, -0.78835
+ 0xbfe3a6108a54ba58, 0xbfe941db892e3a65, // -0.61402, -0.78929
+ 0xbfe39c23e3d63029, 0xbfe94990e3ac4a6c, // -0.61281, -0.79023
+ 0xbfe39234372c7f04, 0xbfe9514257dc4335, // -0.6116, -0.79117
+ 0xbfe3884185dfeb22, 0xbfe958efe48e6dd7, // -0.61038, -0.79211
+ 0xbfe37e4bd1792fe2, 0xbfe960998893ad8c, // -0.60917, -0.79304
+ 0xbfe374531b817f8d, 0xbfe9683f42bd7fe1, // -0.60795, -0.79398
+ 0xbfe36a576582831b, 0xbfe96fe111ddfce0, // -0.60673, -0.79491
+ 0xbfe36058b10659f3, 0xbfe9777ef4c7d742, // -0.60551, -0.79584
+ 0xbfe35656ff9799ae, 0xbfe97f18ea4e5c9e, // -0.60429, -0.79676
+ 0xbfe34c5252c14de1, 0xbfe986aef1457594, // -0.60307, -0.79769
+ 0xbfe3424aac0ef7d6, 0xbfe98e410881a600, // -0.60184, -0.79861
+ 0xbfe338400d0c8e57, 0xbfe995cf2ed80d22, // -0.60062, -0.79954
+ 0xbfe32e3277467d6b, 0xbfe99d59631e65d5, // -0.59939, -0.80046
+ 0xbfe32421ec49a620, 0xbfe9a4dfa42b06b2, // -0.59816, -0.80138
+ 0xbfe31a0e6da35e44, 0xbfe9ac61f0d4e247, // -0.59693, -0.80229
+ 0xbfe30ff7fce17035, 0xbfe9b3e047f38741, // -0.5957, -0.80321
+ 0xbfe305de9b921a94, 0xbfe9bb5aa85f2098, // -0.59447, -0.80412
+ 0xbfe2fbc24b441015, 0xbfe9c2d110f075c3, // -0.59323, -0.80503
+ 0xbfe2f1a30d86773a, 0xbfe9ca438080eadb, // -0.592, -0.80594
+ 0xbfe2e780e3e8ea16, 0xbfe9d1b1f5ea80d6, // -0.59076, -0.80685
+ 0xbfe2dd5bcffb7616, 0xbfe9d91c7007d5a6, // -0.58952, -0.80775
+ 0xbfe2d333d34e9bb7, 0xbfe9e082edb42472, // -0.58828, -0.80866
+ 0xbfe2c908ef734e57, 0xbfe9e7e56dcb45bd, // -0.58704, -0.80956
+ 0xbfe2bedb25faf3ea, 0xbfe9ef43ef29af94, // -0.5858, -0.81046
+ 0xbfe2b4aa787764c4, 0xbfe9f69e70ac75bc, // -0.58455, -0.81135
+ 0xbfe2aa76e87aeb58, 0xbfe9fdf4f13149de, // -0.58331, -0.81225
+ 0xbfe2a040779843fb, 0xbfea05476f967bb5, // -0.58206, -0.81314
+ 0xbfe2960727629ca8, 0xbfea0c95eabaf937, // -0.58081, -0.81404
+ 0xbfe28bcaf96d94ba, 0xbfea13e0617e4ec7, // -0.57956, -0.81493
+ 0xbfe2818bef4d3cba, 0xbfea1b26d2c0a75e, // -0.57831, -0.81581
+ 0xbfe2774a0a961612, 0xbfea22693d62ccb9, // -0.57706, -0.8167
+ 0xbfe26d054cdd12df, 0xbfea29a7a0462782, // -0.57581, -0.81758
+ 0xbfe262bdb7b795a2, 0xbfea30e1fa4cbf81, // -0.57455, -0.81847
+ 0xbfe258734cbb7110, 0xbfea38184a593bc6, // -0.5733, -0.81935
+ 0xbfe24e260d7ee7c9, 0xbfea3f4a8f4ee2d2, // -0.57204, -0.82023
+ 0xbfe243d5fb98ac1f, 0xbfea4678c8119ac8, // -0.57078, -0.8211
+ 0xbfe23983189fdfd5, 0xbfea4da2f385e997, // -0.56952, -0.82198
+ 0xbfe22f2d662c13e1, 0xbfea54c91090f524, // -0.56826, -0.82285
+ 0xbfe224d4e5d5482e, 0xbfea5beb1e188375, // -0.567, -0.82372
+ 0xbfe21a799933eb58, 0xbfea63091b02fae2, // -0.56573, -0.82459
+ 0xbfe2101b81e0da78, 0xbfea6a230637623b, // -0.56447, -0.82546
+ 0xbfe205baa17560d6, 0xbfea7138de9d60f5, // -0.5632, -0.82632
+ 0xbfe1fb56f98b37b8, 0xbfea784aa31d3f55, // -0.56193, -0.82718
+ 0xbfe1f0f08bbc861b, 0xbfea7f58529fe69d, // -0.56066, -0.82805
+ 0xbfe1e68759a3e074, 0xbfea8661ec0ee133, // -0.55939, -0.8289
+ 0xbfe1dc1b64dc4872, 0xbfea8d676e545ad2, // -0.55812, -0.82976
+ 0xbfe1d1acaf012cc2, 0xbfea9468d85b20ae, // -0.55685, -0.83062
+ 0xbfe1c73b39ae68c8, 0xbfea9b66290ea1a3, // -0.55557, -0.83147
+ 0xbfe1bcc706804467, 0xbfeaa25f5f5aee60, // -0.55429, -0.83232
+ 0xbfe1b250171373be, 0xbfeaa9547a2cb98e, // -0.55302, -0.83317
+ 0xbfe1a7d66d0516e6, 0xbfeab045787157ff, // -0.55174, -0.83402
+ 0xbfe19d5a09f2b9b8, 0xbfeab7325916c0d4, // -0.55046, -0.83486
+ 0xbfe192daef7a5386, 0xbfeabe1b1b0b8dac, // -0.54918, -0.83571
+ 0xbfe188591f3a46e5, 0xbfeac4ffbd3efac8, // -0.54789, -0.83655
+ 0xbfe17dd49ad16161, 0xbfeacbe03ea0e73b, // -0.54661, -0.83739
+ 0xbfe1734d63dedb49, 0xbfead2bc9e21d511, // -0.54532, -0.83822
+ 0xbfe168c37c025764, 0xbfead994dab2e979, // -0.54404, -0.83906
+ 0xbfe15e36e4dbe2bc, 0xbfeae068f345ecef, // -0.54275, -0.83989
+ 0xbfe153a7a00bf453, 0xbfeae738e6cd4b67, // -0.54146, -0.84073
+ 0xbfe14915af336ceb, 0xbfeaee04b43c1474, // -0.54017, -0.84155
+ 0xbfe13e8113f396c1, 0xbfeaf4cc5a85fb73, // -0.53888, -0.84238
+ 0xbfe133e9cfee254e, 0xbfeafb8fd89f57b6, // -0.53759, -0.84321
+ 0xbfe1294fe4c5350a, 0xbfeb024f2d7d24a9, // -0.53629, -0.84403
+ 0xbfe11eb3541b4b22, 0xbfeb090a58150200, // -0.535, -0.84485
+ 0xbfe114141f935545, 0xbfeb0fc1575d33db, // -0.5337, -0.84567
+ 0xbfe1097248d0a956, 0xbfeb16742a4ca2f5, // -0.5324, -0.84649
+ 0xbfe0fecdd1770537, 0xbfeb1d22cfdadcc6, // -0.5311, -0.84731
+ 0xbfe0f426bb2a8e7d, 0xbfeb23cd470013b4, // -0.5298, -0.84812
+ 0xbfe0e97d078fd23b, 0xbfeb2a738eb51f33, // -0.5285, -0.84893
+ 0xbfe0ded0b84bc4b5, 0xbfeb3115a5f37bf4, // -0.5272, -0.84974
+ 0xbfe0d421cf03c12b, 0xbfeb37b38bb54c09, // -0.5259, -0.85055
+ 0xbfe0c9704d5d898f, 0xbfeb3e4d3ef55712, // -0.52459, -0.85136
+ 0xbfe0bebc34ff4646, 0xbfeb44e2beaf0a61, // -0.52328, -0.85216
+ 0xbfe0b405878f85ec, 0xbfeb4b7409de7925, // -0.52198, -0.85296
+ 0xbfe0a94c46b53d0b, 0xbfeb52011f805c92, // -0.52067, -0.85376
+ 0xbfe09e907417c5e1, 0xbfeb5889fe921405, // -0.51936, -0.85456
+ 0xbfe093d2115ee018, 0xbfeb5f0ea611a532, // -0.51804, -0.85535
+ 0xbfe089112032b08c, 0xbfeb658f14fdbc47, // -0.51673, -0.85615
+ 0xbfe07e4da23bc102, 0xbfeb6c0b4a55ac17, // -0.51542, -0.85694
+ 0xbfe073879922ffed, 0xbfeb728345196e3e, // -0.5141, -0.85773
+ 0xbfe068bf0691c028, 0xbfeb78f70449a34b, // -0.51279, -0.85852
+ 0xbfe05df3ec31b8b6, 0xbfeb7f6686e792ea, // -0.51147, -0.8593
+ 0xbfe053264bad0483, 0xbfeb85d1cbf52c02, // -0.51015, -0.86009
+ 0xbfe0485626ae221a, 0xbfeb8c38d27504e9, // -0.50883, -0.86087
+ 0xbfe03d837edff370, 0xbfeb929b996a5b7f, // -0.50751, -0.86165
+ 0xbfe032ae55edbd95, 0xbfeb98fa1fd9155e, // -0.50619, -0.86242
+ 0xbfe027d6ad83287e, 0xbfeb9f5464c5bffc, // -0.50486, -0.8632
+ 0xbfe01cfc874c3eb7, 0xbfeba5aa673590d2, // -0.50354, -0.86397
+ 0xbfe0121fe4f56d2c, 0xbfebabfc262e6586, // -0.50221, -0.86474
+ 0xbfe00740c82b82e0, 0xbfebb249a0b6c40d, // -0.50089, -0.86551
+ 0xbfdff8be6537615e, 0xbfebb892d5d5dad5, // -0.49956, -0.86628
+ 0xbfdfe2f64be7120f, 0xbfebbed7c49380ea, // -0.49823, -0.86705
+ 0xbfdfcd2947c1ff57, 0xbfebc5186bf8361d, // -0.4969, -0.86781
+ 0xbfdfb7575c24d2de, 0xbfebcb54cb0d2327, // -0.49557, -0.86857
+ 0xbfdfa1808c6cf7e0, 0xbfebd18ce0dc19d6, // -0.49423, -0.86933
+ 0xbfdf8ba4dbf89aba, 0xbfebd7c0ac6f952a, // -0.4929, -0.87009
+ 0xbfdf75c44e26a852, 0xbfebddf02cd2b983, // -0.49156, -0.87084
+ 0xbfdf5fdee656cda3, 0xbfebe41b611154c1, // -0.49023, -0.8716
+ 0xbfdf49f4a7e97729, 0xbfebea424837de6d, // -0.48889, -0.87235
+ 0xbfdf3405963fd068, 0xbfebf064e15377dd, // -0.48755, -0.87309
+ 0xbfdf1e11b4bbc35c, 0xbfebf6832b71ec5b, // -0.48621, -0.87384
+ 0xbfdf081906bff7fd, 0xbfebfc9d25a1b147, // -0.48487, -0.87459
+ 0xbfdef21b8fafd3b5, 0xbfec02b2cef1e641, // -0.48353, -0.87533
+ 0xbfdedc1952ef78d5, 0xbfec08c426725549, // -0.48218, -0.87607
+ 0xbfdec61253e3c61b, 0xbfec0ed12b3372e9, // -0.48084, -0.87681
+ 0xbfdeb00695f25620, 0xbfec14d9dc465e58, // -0.47949, -0.87755
+ 0xbfde99f61c817eda, 0xbfec1ade38bce19b, // -0.47815, -0.87828
+ 0xbfde83e0eaf85113, 0xbfec20de3fa971b0, // -0.4768, -0.87901
+ 0xbfde6dc704be97e2, 0xbfec26d9f01f2eaf, // -0.47545, -0.87974
+ 0xbfde57a86d3cd824, 0xbfec2cd14931e3f1, // -0.4741, -0.88047
+ 0xbfde418527dc4ffa, 0xbfec32c449f60831, // -0.47275, -0.8812
+ 0xbfde2b5d3806f63b, 0xbfec38b2f180bdb1, // -0.4714, -0.88192
+ 0xbfde1530a12779f4, 0xbfec3e9d3ee7d262, // -0.47004, -0.88264
+ 0xbfddfeff66a941de, 0xbfec44833141c004, // -0.46869, -0.88336
+ 0xbfdde8c98bf86bd6, 0xbfec4a64c7a5ac4c, // -0.46733, -0.88408
+ 0xbfddd28f1481cc58, 0xbfec5042012b6907, // -0.46598, -0.8848
+ 0xbfddbc5003b2edf8, 0xbfec561adceb743e, // -0.46462, -0.88551
+ 0xbfdda60c5cfa10d8, 0xbfec5bef59fef85a, // -0.46326, -0.88622
+ 0xbfdd8fc423c62a25, 0xbfec61bf777fcc48, // -0.4619, -0.88693
+ 0xbfdd79775b86e389, 0xbfec678b3488739b, // -0.46054, -0.88764
+ 0xbfdd632607ac9aa9, 0xbfec6d5290341eb2, // -0.45918, -0.88835
+ 0xbfdd4cd02ba8609c, 0xbfec7315899eaad7, // -0.45781, -0.88905
+ 0xbfdd3675caebf962, 0xbfec78d41fe4a267, // -0.45645, -0.88975
+ 0xbfdd2016e8e9db5b, 0xbfec7e8e52233cf3, // -0.45508, -0.89045
+ 0xbfdd09b389152ec1, 0xbfec84441f785f61, // -0.45372, -0.89115
+ 0xbfdcf34baee1cd21, 0xbfec89f587029c13, // -0.45235, -0.89184
+ 0xbfdcdcdf5dc440ce, 0xbfec8fa287e13305, // -0.45098, -0.89253
+ 0xbfdcc66e9931c45d, 0xbfec954b213411f5, // -0.44961, -0.89322
+ 0xbfdcaff964a0421d, 0xbfec9aef521bd480, // -0.44824, -0.89391
+ 0xbfdc997fc3865388, 0xbfeca08f19b9c449, // -0.44687, -0.8946
+ 0xbfdc8301b95b40c2, 0xbfeca62a772fd919, // -0.4455, -0.89528
+ 0xbfdc6c7f4997000a, 0xbfecabc169a0b901, // -0.44412, -0.89597
+ 0xbfdc55f877b23537, 0xbfecb153f02fb87d, // -0.44275, -0.89665
+ 0xbfdc3f6d47263129, 0xbfecb6e20a00da99, // -0.44137, -0.89732
+ 0xbfdc28ddbb6cf145, 0xbfecbc6bb638d10b, // -0.43999, -0.898
+ 0xbfdc1249d8011ee7, 0xbfecc1f0f3fcfc5c, // -0.43862, -0.89867
+ 0xbfdbfbb1a05e0edc, 0xbfecc771c2736c09, // -0.43724, -0.89935
+ 0xbfdbe51517ffc0d9, 0xbfecccee20c2de9f, // -0.43586, -0.90002
+ 0xbfdbce744262deee, 0xbfecd2660e12c1e6, // -0.43448, -0.90068
+ 0xbfdbb7cf2304bd01, 0xbfecd7d9898b32f6, // -0.43309, -0.90135
+ 0xbfdba125bd63583e, 0xbfecdd489254fe65, // -0.43171, -0.90201
+ 0xbfdb8a7814fd5693, 0xbfece2b32799a060, // -0.43033, -0.90267
+ 0xbfdb73c62d520624, 0xbfece819488344ce, // -0.42894, -0.90333
+ 0xbfdb5d1009e15cc0, 0xbfeced7af43cc773, // -0.42756, -0.90399
+ 0xbfdb4655ae2bf757, 0xbfecf2d829f1b40e, // -0.42617, -0.90464
+ 0xbfdb2f971db31972, 0xbfecf830e8ce467b, // -0.42478, -0.9053
+ 0xbfdb18d45bf8aca6, 0xbfecfd852fff6ad4, // -0.42339, -0.90595
+ 0xbfdb020d6c7f4009, 0xbfed02d4feb2bd92, // -0.422, -0.9066
+ 0xbfdaeb4252ca07ab, 0xbfed082054168bac, // -0.42061, -0.90724
+ 0xbfdad473125cdc08, 0xbfed0d672f59d2b9, // -0.41922, -0.90789
+ 0xbfdabd9faebc3980, 0xbfed12a98fac410c, // -0.41782, -0.90853
+ 0xbfdaa6c82b6d3fc9, 0xbfed17e7743e35dc, // -0.41643, -0.90917
+ 0xbfda8fec8bf5b166, 0xbfed1d20dc40c15c, // -0.41503, -0.90981
+ 0xbfda790cd3dbf31a, 0xbfed2255c6e5a4e1, // -0.41364, -0.91044
+ 0xbfda622906a70b63, 0xbfed2786335f52fc, // -0.41224, -0.91107
+ 0xbfda4b4127dea1e4, 0xbfed2cb220e0ef9f, // -0.41084, -0.91171
+ 0xbfda34553b0afee5, 0xbfed31d98e9e503a, // -0.40944, -0.91234
+ 0xbfda1d6543b50ac0, 0xbfed36fc7bcbfbdc, // -0.40804, -0.91296
+ 0xbfda067145664d57, 0xbfed3c1ae79f2b4e, // -0.40664, -0.91359
+ 0xbfd9ef7943a8ed8a, 0xbfed4134d14dc93a, // -0.40524, -0.91421
+ 0xbfd9d87d4207b0ab, 0xbfed464a380e7242, // -0.40384, -0.91483
+ 0xbfd9c17d440df9f2, 0xbfed4b5b1b187524, // -0.40243, -0.91545
+ 0xbfd9aa794d47c9ee, 0xbfed506779a3d2d9, // -0.40103, -0.91606
+ 0xbfd993716141bdfe, 0xbfed556f52e93eb1, // -0.39962, -0.91668
+ 0xbfd97c6583890fc2, 0xbfed5a72a6221e73, // -0.39822, -0.91729
+ 0xbfd96555b7ab948f, 0xbfed5f7172888a7f, // -0.39681, -0.9179
+ 0xbfd94e420137bce3, 0xbfed646bb7574de5, // -0.3954, -0.91851
+ 0xbfd9372a63bc93d7, 0xbfed696173c9e68b, // -0.39399, -0.91911
+ 0xbfd9200ee2c9be97, 0xbfed6e52a71c8547, // -0.39258, -0.91972
+ 0xbfd908ef81ef7bd1, 0xbfed733f508c0dff, // -0.39117, -0.92032
+ 0xbfd8f1cc44bea329, 0xbfed78276f5617c6, // -0.38976, -0.92092
+ 0xbfd8daa52ec8a4af, 0xbfed7d0b02b8ecf9, // -0.38835, -0.92151
+ 0xbfd8c37a439f884f, 0xbfed81ea09f38b63, // -0.38693, -0.92211
+ 0xbfd8ac4b86d5ed44, 0xbfed86c48445a450, // -0.38552, -0.9227
+ 0xbfd89518fbff098e, 0xbfed8b9a70ef9cb4, // -0.3841, -0.92329
+ 0xbfd87de2a6aea963, 0xbfed906bcf328d46, // -0.38268, -0.92388
+ 0xbfd866a88a792ea0, 0xbfed95389e50429b, // -0.38127, -0.92447
+ 0xbfd84f6aaaf3903f, 0xbfed9a00dd8b3d46, // -0.37985, -0.92505
+ 0xbfd838290bb359c8, 0xbfed9ec48c26b1f3, // -0.37843, -0.92563
+ 0xbfd820e3b04eaac4, 0xbfeda383a9668988, // -0.37701, -0.92621
+ 0xbfd8099a9c5c362d, 0xbfeda83e348f613b, // -0.37559, -0.92679
+ 0xbfd7f24dd37341e3, 0xbfedacf42ce68ab9, // -0.37416, -0.92736
+ 0xbfd7dafd592ba621, 0xbfedb1a591b20c38, // -0.37274, -0.92794
+ 0xbfd7c3a9311dcce7, 0xbfedb6526238a09b, // -0.37132, -0.92851
+ 0xbfd7ac515ee2b172, 0xbfedbafa9dc1b78d, // -0.36989, -0.92907
+ 0xbfd794f5e613dfae, 0xbfedbf9e4395759a, // -0.36847, -0.92964
+ 0xbfd77d96ca4b73a6, 0xbfedc43d52fcb453, // -0.36704, -0.93021
+ 0xbfd766340f2418f6, 0xbfedc8d7cb410260, // -0.36561, -0.93077
+ 0xbfd74ecdb8390a3e, 0xbfedcd6dabaca3a5, // -0.36418, -0.93133
+ 0xbfd73763c9261092, 0xbfedd1fef38a915a, // -0.36276, -0.93188
+ 0xbfd71ff6458782ec, 0xbfedd68ba2267a25, // -0.36133, -0.93244
+ 0xbfd7088530fa459e, 0xbfeddb13b6ccc23d, // -0.3599, -0.93299
+ 0xbfd6f1108f1bc9c5, 0xbfeddf9730ca837b, // -0.35846, -0.93354
+ 0xbfd6d998638a0cb5, 0xbfede4160f6d8d81, // -0.35703, -0.93409
+ 0xbfd6c21cb1e39771, 0xbfede890520465ce, // -0.3556, -0.93464
+ 0xbfd6aa9d7dc77e16, 0xbfeded05f7de47da, // -0.35416, -0.93518
+ 0xbfd6931acad55f51, 0xbfedf177004b2534, // -0.35273, -0.93573
+ 0xbfd67b949cad63ca, 0xbfedf5e36a9ba59c, // -0.35129, -0.93627
+ 0xbfd6640af6f03d9e, 0xbfedfa4b3621271d, // -0.34986, -0.9368
+ 0xbfd64c7ddd3f27c6, 0xbfedfeae622dbe2b, // -0.34842, -0.93734
+ 0xbfd634ed533be58e, 0xbfee030cee1435b8, // -0.34698, -0.93787
+ 0xbfd61d595c88c203, 0xbfee0766d9280f54, // -0.34554, -0.9384
+ 0xbfd605c1fcc88f63, 0xbfee0bbc22bd8349, // -0.3441, -0.93893
+ 0xbfd5ee27379ea693, 0xbfee100cca2980ac, // -0.34266, -0.93946
+ 0xbfd5d68910aee686, 0xbfee1458cec1ad83, // -0.34122, -0.93998
+ 0xbfd5bee78b9db3b6, 0xbfee18a02fdc66d9, // -0.33978, -0.94051
+ 0xbfd5a742ac0ff78d, 0xbfee1ce2ecd0c0d8, // -0.33833, -0.94103
+ 0xbfd58f9a75ab1fdd, 0xbfee212104f686e5, // -0.33689, -0.94154
+ 0xbfd577eeec151e47, 0xbfee255a77a63bb8, // -0.33545, -0.94206
+ 0xbfd5604012f467b4, 0xbfee298f4439197a, // -0.334, -0.94257
+ 0xbfd5488dedeff3be, 0xbfee2dbf6a0911d9, // -0.33255, -0.94308
+ 0xbfd530d880af3c24, 0xbfee31eae870ce25, // -0.33111, -0.94359
+ 0xbfd5191fceda3c35, 0xbfee3611becbaf69, // -0.32966, -0.9441
+ 0xbfd50163dc197047, 0xbfee3a33ec75ce85, // -0.32821, -0.9446
+ 0xbfd4e9a4ac15d520, 0xbfee3e5170cbfc46, // -0.32676, -0.94511
+ 0xbfd4d1e24278e76a, 0xbfee426a4b2bc17e, // -0.32531, -0.94561
+ 0xbfd4ba1ca2eca31c, 0xbfee467e7af35f23, // -0.32386, -0.94611
+ 0xbfd4a253d11b82f3, 0xbfee4a8dff81ce5e, // -0.32241, -0.9466
+ 0xbfd48a87d0b07fd7, 0xbfee4e98d836c0af, // -0.32096, -0.94709
+ 0xbfd472b8a5571054, 0xbfee529f04729ffc, // -0.3195, -0.94759
+ 0xbfd45ae652bb2800, 0xbfee56a083968eb1, // -0.31805, -0.94807
+ 0xbfd44310dc8936f0, 0xbfee5a9d550467d3, // -0.31659, -0.94856
+ 0xbfd42b38466e2928, 0xbfee5e95781ebf1c, // -0.31514, -0.94905
+ 0xbfd4135c94176602, 0xbfee6288ec48e112, // -0.31368, -0.94953
+ 0xbfd3fb7dc932cfa4, 0xbfee6677b0e6d31e, // -0.31222, -0.95001
+ 0xbfd3e39be96ec271, 0xbfee6a61c55d53a7, // -0.31077, -0.95049
+ 0xbfd3cbb6f87a146e, 0xbfee6e472911da27, // -0.30931, -0.95096
+ 0xbfd3b3cefa0414b7, 0xbfee7227db6a9744, // -0.30785, -0.95144
+ 0xbfd39be3f1bc8aef, 0xbfee7603dbce74e9, // -0.30639, -0.95191
+ 0xbfd383f5e353b6aa, 0xbfee79db29a5165a, // -0.30493, -0.95238
+ 0xbfd36c04d27a4edf, 0xbfee7dadc456d850, // -0.30347, -0.95284
+ 0xbfd35410c2e18152, 0xbfee817bab4cd10d, // -0.30201, -0.95331
+ 0xbfd33c19b83af207, 0xbfee8544ddf0d075, // -0.30054, -0.95377
+ 0xbfd3241fb638baaf, 0xbfee89095bad6025, // -0.29908, -0.95423
+ 0xbfd30c22c08d6a13, 0xbfee8cc923edc388, // -0.29762, -0.95469
+ 0xbfd2f422daec0386, 0xbfee9084361df7f3, // -0.29615, -0.95514
+ 0xbfd2dc200907fe51, 0xbfee943a91aab4b4, // -0.29469, -0.95559
+ 0xbfd2c41a4e954520, 0xbfee97ec36016b30, // -0.29322, -0.95605
+ 0xbfd2ac11af483572, 0xbfee9b99229046f8, // -0.29175, -0.95649
+ 0xbfd294062ed59f05, 0xbfee9f4156c62dda, // -0.29028, -0.95694
+ 0xbfd27bf7d0f2c346, 0xbfeea2e4d212c000, // -0.28882, -0.95738
+ 0xbfd263e6995554ba, 0xbfeea68393e65800, // -0.28735, -0.95783
+ 0xbfd24bd28bb37672, 0xbfeeaa1d9bb20af3, // -0.28588, -0.95827
+ 0xbfd233bbabc3bb72, 0xbfeeadb2e8e7a88e, // -0.28441, -0.9587
+ 0xbfd21ba1fd3d2623, 0xbfeeb1437af9bb34, // -0.28294, -0.95914
+ 0xbfd2038583d727bd, 0xbfeeb4cf515b8811, // -0.28146, -0.95957
+ 0xbfd1eb6643499fbb, 0xbfeeb8566b810f2a, // -0.27999, -0.96
+ 0xbfd1d3443f4cdb3d, 0xbfeebbd8c8df0b74, // -0.27852, -0.96043
+ 0xbfd1bb1f7b999480, 0xbfeebf5668eaf2ef, // -0.27705, -0.96086
+ 0xbfd1a2f7fbe8f243, 0xbfeec2cf4b1af6b2, // -0.27557, -0.96128
+ 0xbfd18acdc3f4873a, 0xbfeec6436ee60309, // -0.2741, -0.9617
+ 0xbfd172a0d7765177, 0xbfeec9b2d3c3bf84, // -0.27262, -0.96212
+ 0xbfd15a713a28b9d9, 0xbfeecd1d792c8f10, // -0.27115, -0.96254
+ 0xbfd1423eefc69378, 0xbfeed0835e999009, // -0.26967, -0.96295
+ 0xbfd12a09fc0b1b12, 0xbfeed3e483849c51, // -0.26819, -0.96337
+ 0xbfd111d262b1f677, 0xbfeed740e7684963, // -0.26671, -0.96378
+ 0xbfd0f998277733f7, 0xbfeeda9889bfe86a, // -0.26523, -0.96418
+ 0xbfd0e15b4e1749cd, 0xbfeeddeb6a078651, // -0.26375, -0.96459
+ 0xbfd0c91bda4f158d, 0xbfeee13987bbebdc, // -0.26227, -0.96499
+ 0xbfd0b0d9cfdbdb90, 0xbfeee482e25a9dbc, // -0.26079, -0.96539
+ 0xbfd09895327b465e, 0xbfeee7c77961dc9e, // -0.25931, -0.96579
+ 0xbfd0804e05eb661e, 0xbfeeeb074c50a544, // -0.25783, -0.96619
+ 0xbfd068044deab002, 0xbfeeee425aa6b09a, // -0.25635, -0.96658
+ 0xbfd04fb80e37fdae, 0xbfeef178a3e473c2, // -0.25487, -0.96698
+ 0xbfd037694a928cac, 0xbfeef4aa278b2032, // -0.25338, -0.96737
+ 0xbfd01f1806b9fdd2, 0xbfeef7d6e51ca3c0, // -0.2519, -0.96775
+ 0xbfd006c4466e54af, 0xbfeefafedc1ba8b7, // -0.25041, -0.96814
+ 0xbfcfdcdc1adfedf8, 0xbfeefe220c0b95ec, // -0.24893, -0.96852
+ 0xbfcfac2abeff57ff, 0xbfef014074708ed3, // -0.24744, -0.9689
+ 0xbfcf7b7480bd3801, 0xbfef045a14cf738c, // -0.24596, -0.96928
+ 0xbfcf4ab9679c9f5c, 0xbfef076eecade0fa, // -0.24447, -0.96966
+ 0xbfcf19f97b215f1a, 0xbfef0a7efb9230d7, // -0.24298, -0.97003
+ 0xbfcee934c2d006c7, 0xbfef0d8a410379c5, // -0.24149, -0.9704
+ 0xbfceb86b462de348, 0xbfef1090bc898f5f, // -0.24, -0.97077
+ 0xbfce879d0cc0fdaf, 0xbfef13926dad024e, // -0.23851, -0.97114
+ 0xbfce56ca1e101a1b, 0xbfef168f53f7205d, // -0.23702, -0.9715
+ 0xbfce25f281a2b684, 0xbfef19876ef1f486, // -0.23553, -0.97187
+ 0xbfcdf5163f01099a, 0xbfef1c7abe284708, // -0.23404, -0.97223
+ 0xbfcdc4355db40195, 0xbfef1f6941259d7a, // -0.23255, -0.97258
+ 0xbfcd934fe5454311, 0xbfef2252f7763ada, // -0.23106, -0.97294
+ 0xbfcd6265dd3f27e3, 0xbfef2537e0a71f9f, // -0.22957, -0.97329
+ 0xbfcd31774d2cbdee, 0xbfef2817fc4609ce, // -0.22807, -0.97364
+ 0xbfcd00843c99c5f9, 0xbfef2af349e17507, // -0.22658, -0.97399
+ 0xbfcccf8cb312b286, 0xbfef2dc9c9089a9d, // -0.22508, -0.97434
+ 0xbfcc9e90b824a6a9, 0xbfef309b794b719f, // -0.22359, -0.97468
+ 0xbfcc6d90535d74dc, 0xbfef33685a3aaef0, // -0.22209, -0.97503
+ 0xbfcc3c8b8c4b9dd7, 0xbfef36306b67c556, // -0.2206, -0.97536
+ 0xbfcc0b826a7e4f63, 0xbfef38f3ac64e589, // -0.2191, -0.9757
+ 0xbfcbda74f5856330, 0xbfef3bb21cc4fe47, // -0.2176, -0.97604
+ 0xbfcba96334f15dad, 0xbfef3e6bbc1bbc65, // -0.21611, -0.97637
+ 0xbfcb784d30536cda, 0xbfef412089fd8adc, // -0.21461, -0.9767
+ 0xbfcb4732ef3d6722, 0xbfef43d085ff92dd, // -0.21311, -0.97703
+ 0xbfcb16147941ca2a, 0xbfef467bafb7bbe0, // -0.21161, -0.97735
+ 0xbfcae4f1d5f3b9ab, 0xbfef492206bcabb4, // -0.21011, -0.97768
+ 0xbfcab3cb0ce6fe44, 0xbfef4bc38aa5c694, // -0.20861, -0.978
+ 0xbfca82a025b00451, 0xbfef4e603b0b2f2d, // -0.20711, -0.97832
+ 0xbfca517127e3dabc, 0xbfef50f81785c6b9, // -0.20561, -0.97863
+ 0xbfca203e1b1831da, 0xbfef538b1faf2d07, // -0.20411, -0.97895
+ 0xbfc9ef0706e35a35, 0xbfef56195321c090, // -0.20261, -0.97926
+ 0xbfc9bdcbf2dc4366, 0xbfef58a2b1789e84, // -0.2011, -0.97957
+ 0xbfc98c8ce69a7aec, 0xbfef5b273a4fa2d9, // -0.1996, -0.97988
+ 0xbfc95b49e9b62af9, 0xbfef5da6ed43685d, // -0.1981, -0.98018
+ 0xbfc92a0303c8194f, 0xbfef6021c9f148c2, // -0.19659, -0.98048
+ 0xbfc8f8b83c69a60a, 0xbfef6297cff75cb0, // -0.19509, -0.98079
+ 0xbfc8c7699b34ca7e, 0xbfef6508fef47bd5, // -0.19359, -0.98108
+ 0xbfc8961727c41804, 0xbfef677556883cee, // -0.19208, -0.98138
+ 0xbfc864c0e9b2b6cf, 0xbfef69dcd652f5de, // -0.19057, -0.98167
+ 0xbfc83366e89c64c5, 0xbfef6c3f7df5bbb7, // -0.18907, -0.98196
+ 0xbfc802092c1d744b, 0xbfef6e9d4d1262ca, // -0.18756, -0.98225
+ 0xbfc7d0a7bbd2cb1b, 0xbfef70f6434b7eb7, // -0.18606, -0.98254
+ 0xbfc79f429f59e11d, 0xbfef734a60446279, // -0.18455, -0.98282
+ 0xbfc76dd9de50bf31, 0xbfef7599a3a12077, // -0.18304, -0.98311
+ 0xbfc73c6d8055fe0a, 0xbfef77e40d068a90, // -0.18153, -0.98339
+ 0xbfc70afd8d08c4ff, 0xbfef7a299c1a322a, // -0.18002, -0.98366
+ 0xbfc6d98a0c08c8da, 0xbfef7c6a50826840, // -0.17851, -0.98394
+ 0xbfc6a81304f64ab2, 0xbfef7ea629e63d6e, // -0.177, -0.98421
+ 0xbfc676987f7216b8, 0xbfef80dd27ed8204, // -0.17549, -0.98448
+ 0xbfc6451a831d830d, 0xbfef830f4a40c60c, // -0.17398, -0.98475
+ 0xbfc61399179a6e94, 0xbfef853c9089595e, // -0.17247, -0.98501
+ 0xbfc5e214448b3fc6, 0xbfef8764fa714ba9, // -0.17096, -0.98528
+ 0xbfc5b08c1192e381, 0xbfef898887a36c84, // -0.16945, -0.98554
+ 0xbfc57f008654cbde, 0xbfef8ba737cb4b78, // -0.16794, -0.9858
+ 0xbfc54d71aa74ef02, 0xbfef8dc10a95380d, // -0.16643, -0.98605
+ 0xbfc51bdf8597c5f2, 0xbfef8fd5ffae41db, // -0.16491, -0.98631
+ 0xbfc4ea4a1f624b61, 0xbfef91e616c43891, // -0.1634, -0.98656
+ 0xbfc4b8b17f79fa88, 0xbfef93f14f85ac08, // -0.16189, -0.98681
+ 0xbfc48715ad84cdf5, 0xbfef95f7a9a1ec47, // -0.16037, -0.98706
+ 0xbfc45576b1293e5a, 0xbfef97f924c9099b, // -0.15886, -0.9873
+ 0xbfc423d4920e4166, 0xbfef99f5c0abd496, // -0.15734, -0.98754
+ 0xbfc3f22f57db4893, 0xbfef9bed7cfbde29, // -0.15583, -0.98778
+ 0xbfc3c0870a383ff6, 0xbfef9de0596b77a3, // -0.15431, -0.98802
+ 0xbfc38edbb0cd8d14, 0xbfef9fce55adb2c8, // -0.1528, -0.98826
+ 0xbfc35d2d53440db2, 0xbfefa1b7717661d5, // -0.15128, -0.98849
+ 0xbfc32b7bf94516a7, 0xbfefa39bac7a1791, // -0.14976, -0.98872
+ 0xbfc2f9c7aa7a72af, 0xbfefa57b066e2754, // -0.14825, -0.98895
+ 0xbfc2c8106e8e613a, 0xbfefa7557f08a517, // -0.14673, -0.98918
+ 0xbfc296564d2b953e, 0xbfefa92b1600657c, // -0.14521, -0.9894
+ 0xbfc264994dfd340a, 0xbfefaafbcb0cfddc, // -0.1437, -0.98962
+ 0xbfc232d978aed413, 0xbfefacc79de6c44f, // -0.14218, -0.98984
+ 0xbfc20116d4ec7bce, 0xbfefae8e8e46cfbb, // -0.14066, -0.99006
+ 0xbfc1cf516a62a077, 0xbfefb0509be6f7db, // -0.13914, -0.99027
+ 0xbfc19d8940be24e7, 0xbfefb20dc681d54d, // -0.13762, -0.99049
+ 0xbfc16bbe5fac5865, 0xbfefb3c60dd2c199, // -0.1361, -0.9907
+ 0xbfc139f0cedaf576, 0xbfefb5797195d741, // -0.13458, -0.9909
+ 0xbfc1082095f820b0, 0xbfefb727f187f1c7, // -0.13306, -0.99111
+ 0xbfc0d64dbcb26786, 0xbfefb8d18d66adb7, // -0.13154, -0.99131
+ 0xbfc0a4784ab8bf1d, 0xbfefba7644f068b5, // -0.13002, -0.99151
+ 0xbfc072a047ba831d, 0xbfefbc1617e44186, // -0.1285, -0.99171
+ 0xbfc040c5bb67747e, 0xbfefbdb106021816, // -0.12698, -0.99191
+ 0xbfc00ee8ad6fb85b, 0xbfefbf470f0a8d88, // -0.12545, -0.9921
+ 0xbfbfba124b07ad85, 0xbfefc0d832bf043a, // -0.12393, -0.99229
+ 0xbfbf564e56a9730e, 0xbfefc26470e19fd3, // -0.12241, -0.99248
+ 0xbfbef2858d27561b, 0xbfefc3ebc935454c, // -0.12089, -0.99267
+ 0xbfbe8eb7fde4aa3e, 0xbfefc56e3b7d9af6, // -0.11937, -0.99285
+ 0xbfbe2ae5b8457f77, 0xbfefc6ebc77f0887, // -0.11784, -0.99303
+ 0xbfbdc70ecbae9fc8, 0xbfefc8646cfeb721, // -0.11632, -0.99321
+ 0xbfbd633347858ce4, 0xbfefc9d82bc2915e, // -0.11479, -0.99339
+ 0xbfbcff533b307dc1, 0xbfefcb4703914354, // -0.11327, -0.99356
+ 0xbfbc9b6eb6165c42, 0xbfefccb0f4323aa3, // -0.11175, -0.99374
+ 0xbfbc3785c79ec2d5, 0xbfefce15fd6da67b, // -0.11022, -0.99391
+ 0xbfbbd3987f31fa0e, 0xbfefcf761f0c77a3, // -0.1087, -0.99407
+ 0xbfbb6fa6ec38f64c, 0xbfefd0d158d86087, // -0.10717, -0.99424
+ 0xbfbb0bb11e1d5559, 0xbfefd227aa9bd53b, // -0.10565, -0.9944
+ 0xbfbaa7b724495c04, 0xbfefd37914220b84, // -0.10412, -0.99456
+ 0xbfba43b90e27f3c4, 0xbfefd4c59536fae4, // -0.1026, -0.99472
+ 0xbfb9dfb6eb24a85c, 0xbfefd60d2da75c9e, // -0.10107, -0.99488
+ 0xbfb97bb0caaba56f, 0xbfefd74fdd40abbf, // -0.099544, -0.99503
+ 0xbfb917a6bc29b42c, 0xbfefd88da3d12526, // -0.098017, -0.99518
+ 0xbfb8b398cf0c38e0, 0xbfefd9c68127c78c, // -0.09649, -0.99533
+ 0xbfb84f8712c130a0, 0xbfefdafa7514538c, // -0.094963, -0.99548
+ 0xbfb7eb7196b72ee4, 0xbfefdc297f674ba9, // -0.093436, -0.99563
+ 0xbfb787586a5d5b21, 0xbfefdd539ff1f456, // -0.091909, -0.99577
+ 0xbfb7233b9d236e71, 0xbfefde78d68653fd, // -0.090381, -0.99591
+ 0xbfb6bf1b3e79b129, 0xbfefdf9922f73307, // -0.088854, -0.99604
+ 0xbfb65af75dd0f87b, 0xbfefe0b485181be3, // -0.087326, -0.99618
+ 0xbfb5f6d00a9aa419, 0xbfefe1cafcbd5b09, // -0.085797, -0.99631
+ 0xbfb592a554489bc8, 0xbfefe2dc89bbff08, // -0.084269, -0.99644
+ 0xbfb52e774a4d4d0a, 0xbfefe3e92be9d886, // -0.08274, -0.99657
+ 0xbfb4ca45fc1ba8b6, 0xbfefe4f0e31d7a4a, // -0.081211, -0.9967
+ 0xbfb4661179272096, 0xbfefe5f3af2e3940, // -0.079682, -0.99682
+ 0xbfb401d9d0e3a507, 0xbfefe6f18ff42c84, // -0.078153, -0.99694
+ 0xbfb39d9f12c5a299, 0xbfefe7ea85482d60, // -0.076624, -0.99706
+ 0xbfb339614e41ffa5, 0xbfefe8de8f03d75c, // -0.075094, -0.99718
+ 0xbfb2d52092ce19f6, 0xbfefe9cdad01883a, // -0.073565, -0.99729
+ 0xbfb270dcefdfc45b, 0xbfefeab7df1c6005, // -0.072035, -0.9974
+ 0xbfb20c9674ed444c, 0xbfefeb9d2530410f, // -0.070505, -0.99751
+ 0xbfb1a84d316d4f8a, 0xbfefec7d7f19cffc, // -0.068974, -0.99762
+ 0xbfb1440134d709b2, 0xbfefed58ecb673c4, // -0.067444, -0.99772
+ 0xbfb0dfb28ea201e6, 0xbfefee2f6de455ba, // -0.065913, -0.99783
+ 0xbfb07b614e463064, 0xbfefef0102826191, // -0.064383, -0.99793
+ 0xbfb0170d833bf421, 0xbfefefcdaa704562, // -0.062852, -0.99802
+ 0xbfaf656e79f820e0, 0xbfeff095658e71ad, // -0.061321, -0.99812
+ 0xbfae9cbd15ff5527, 0xbfeff15833be1965, // -0.05979, -0.99821
+ 0xbfadd406f9808ec8, 0xbfeff21614e131ed, // -0.058258, -0.9983
+ 0xbfad0b4c436f91d0, 0xbfeff2cf08da7321, // -0.056727, -0.99839
+ 0xbfac428d12c0d7e3, 0xbfeff3830f8d575c, // -0.055195, -0.99848
+ 0xbfab79c986698b78, 0xbfeff43228de1b77, // -0.053664, -0.99856
+ 0xbfaab101bd5f8317, 0xbfeff4dc54b1bed3, // -0.052132, -0.99864
+ 0xbfa9e835d6993c87, 0xbfeff58192ee0358, // -0.0506, -0.99872
+ 0xbfa91f65f10dd814, 0xbfeff621e3796d7e, // -0.049068, -0.9988
+ 0xbfa856922bb513c1, 0xbfeff6bd463b444d, // -0.047535, -0.99887
+ 0xbfa78dbaa5874685, 0xbfeff753bb1b9164, // -0.046003, -0.99894
+ 0xbfa6c4df7d7d5b84, 0xbfeff7e5420320f9, // -0.044471, -0.99901
+ 0xbfa5fc00d290cd43, 0xbfeff871dadb81df, // -0.042938, -0.99908
+ 0xbfa5331ec3bba0eb, 0xbfeff8f9858f058b, // -0.041406, -0.99914
+ 0xbfa46a396ff86179, 0xbfeff97c4208c014, // -0.039873, -0.9992
+ 0xbfa3a150f6421afc, 0xbfeff9fa10348837, // -0.03834, -0.99926
+ 0xbfa2d865759455cd, 0xbfeffa72effef75d, // -0.036807, -0.99932
+ 0xbfa20f770ceb11c6, 0xbfeffae6e1556998, // -0.035274, -0.99938
+ 0xbfa14685db42c17e, 0xbfeffb55e425fdae, // -0.033741, -0.99943
+ 0xbfa07d91ff984580, 0xbfeffbbff85f9515, // -0.032208, -0.99948
+ 0xbf9f693731d1cf01, 0xbfeffc251df1d3f8, // -0.030675, -0.99953
+ 0xbf9dd7458c64ab39, 0xbfeffc8554cd213a, // -0.029142, -0.99958
+ 0xbf9c454f4ce53b1c, 0xbfeffce09ce2a679, // -0.027608, -0.99962
+ 0xbf9ab354b1504fca, 0xbfeffd36f624500c, // -0.026075, -0.99966
+ 0xbf992155f7a3667e, 0xbfeffd886084cd0d, // -0.024541, -0.9997
+ 0xbf978f535ddc9f03, 0xbfeffdd4dbf78f52, // -0.023008, -0.99974
+ 0xbf95fd4d21fab226, 0xbfeffe1c6870cb77, // -0.021474, -0.99977
+ 0xbf946b4381fce81c, 0xbfeffe5f05e578db, // -0.01994, -0.9998
+ 0xbf92d936bbe30efd, 0xbfeffe9cb44b51a1, // -0.018407, -0.99983
+ 0xbf9147270dad7132, 0xbfeffed57398d2b7, // -0.016873, -0.99986
+ 0xbf8f6a296ab997ca, 0xbfefff0943c53bd1, // -0.015339, -0.99988
+ 0xbf8c45ffe1e48ad9, 0xbfefff3824c88f6f, // -0.013805, -0.9999
+ 0xbf8921d1fcdec784, 0xbfefff62169b92db, // -0.012272, -0.99992
+ 0xbf85fda037ac05e0, 0xbfefff871937ce2f, // -0.010738, -0.99994
+ 0xbf82d96b0e509703, 0xbfefffa72c978c4f, //-0.0092038, -0.99996
+ 0xbf7f6a65f9a2a3c5, 0xbfefffc250b5daef, //-0.0076698, -0.99997
+ 0xbf7921f0fe670071, 0xbfefffd8858e8a92, //-0.0061359, -0.99998
+ 0xbf72d97822f996bc, 0xbfefffe9cb1e2e8d, //-0.0046019, -0.99999
+ 0xbf6921f8becca4ba, 0xbfeffff621621d02, // -0.003068, -1
+ 0xbf5921faaee6472d, 0xbfeffffd88586ee6, // -0.001534, -1
+ 0x0000000000000000, 0xbff0000000000000, // 0, -1
+ 0x3f5921faaee6472d, 0xbfeffffd88586ee6, // 0.001534, -1
+ 0x3f6921f8becca4ba, 0xbfeffff621621d02, // 0.003068, -1
+ 0x3f72d97822f996bc, 0xbfefffe9cb1e2e8d, // 0.0046019, -0.99999
+ 0x3f7921f0fe670071, 0xbfefffd8858e8a92, // 0.0061359, -0.99998
+ 0x3f7f6a65f9a2a3c5, 0xbfefffc250b5daef, // 0.0076698, -0.99997
+ 0x3f82d96b0e509703, 0xbfefffa72c978c4f, // 0.0092038, -0.99996
+ 0x3f85fda037ac05e0, 0xbfefff871937ce2f, // 0.010738, -0.99994
+ 0x3f8921d1fcdec784, 0xbfefff62169b92db, // 0.012272, -0.99992
+ 0x3f8c45ffe1e48ad9, 0xbfefff3824c88f6f, // 0.013805, -0.9999
+ 0x3f8f6a296ab997ca, 0xbfefff0943c53bd1, // 0.015339, -0.99988
+ 0x3f9147270dad7132, 0xbfeffed57398d2b7, // 0.016873, -0.99986
+ 0x3f92d936bbe30efd, 0xbfeffe9cb44b51a1, // 0.018407, -0.99983
+ 0x3f946b4381fce81c, 0xbfeffe5f05e578db, // 0.01994, -0.9998
+ 0x3f95fd4d21fab226, 0xbfeffe1c6870cb77, // 0.021474, -0.99977
+ 0x3f978f535ddc9f03, 0xbfeffdd4dbf78f52, // 0.023008, -0.99974
+ 0x3f992155f7a3667e, 0xbfeffd886084cd0d, // 0.024541, -0.9997
+ 0x3f9ab354b1504fca, 0xbfeffd36f624500c, // 0.026075, -0.99966
+ 0x3f9c454f4ce53b1c, 0xbfeffce09ce2a679, // 0.027608, -0.99962
+ 0x3f9dd7458c64ab39, 0xbfeffc8554cd213a, // 0.029142, -0.99958
+ 0x3f9f693731d1cf01, 0xbfeffc251df1d3f8, // 0.030675, -0.99953
+ 0x3fa07d91ff984580, 0xbfeffbbff85f9515, // 0.032208, -0.99948
+ 0x3fa14685db42c17e, 0xbfeffb55e425fdae, // 0.033741, -0.99943
+ 0x3fa20f770ceb11c6, 0xbfeffae6e1556998, // 0.035274, -0.99938
+ 0x3fa2d865759455cd, 0xbfeffa72effef75d, // 0.036807, -0.99932
+ 0x3fa3a150f6421afc, 0xbfeff9fa10348837, // 0.03834, -0.99926
+ 0x3fa46a396ff86179, 0xbfeff97c4208c014, // 0.039873, -0.9992
+ 0x3fa5331ec3bba0eb, 0xbfeff8f9858f058b, // 0.041406, -0.99914
+ 0x3fa5fc00d290cd43, 0xbfeff871dadb81df, // 0.042938, -0.99908
+ 0x3fa6c4df7d7d5b84, 0xbfeff7e5420320f9, // 0.044471, -0.99901
+ 0x3fa78dbaa5874685, 0xbfeff753bb1b9164, // 0.046003, -0.99894
+ 0x3fa856922bb513c1, 0xbfeff6bd463b444d, // 0.047535, -0.99887
+ 0x3fa91f65f10dd814, 0xbfeff621e3796d7e, // 0.049068, -0.9988
+ 0x3fa9e835d6993c87, 0xbfeff58192ee0358, // 0.0506, -0.99872
+ 0x3faab101bd5f8317, 0xbfeff4dc54b1bed3, // 0.052132, -0.99864
+ 0x3fab79c986698b78, 0xbfeff43228de1b77, // 0.053664, -0.99856
+ 0x3fac428d12c0d7e3, 0xbfeff3830f8d575c, // 0.055195, -0.99848
+ 0x3fad0b4c436f91d0, 0xbfeff2cf08da7321, // 0.056727, -0.99839
+ 0x3fadd406f9808ec8, 0xbfeff21614e131ed, // 0.058258, -0.9983
+ 0x3fae9cbd15ff5527, 0xbfeff15833be1965, // 0.05979, -0.99821
+ 0x3faf656e79f820e0, 0xbfeff095658e71ad, // 0.061321, -0.99812
+ 0x3fb0170d833bf421, 0xbfefefcdaa704562, // 0.062852, -0.99802
+ 0x3fb07b614e463064, 0xbfefef0102826191, // 0.064383, -0.99793
+ 0x3fb0dfb28ea201e6, 0xbfefee2f6de455ba, // 0.065913, -0.99783
+ 0x3fb1440134d709b2, 0xbfefed58ecb673c4, // 0.067444, -0.99772
+ 0x3fb1a84d316d4f8a, 0xbfefec7d7f19cffc, // 0.068974, -0.99762
+ 0x3fb20c9674ed444c, 0xbfefeb9d2530410f, // 0.070505, -0.99751
+ 0x3fb270dcefdfc45b, 0xbfefeab7df1c6005, // 0.072035, -0.9974
+ 0x3fb2d52092ce19f6, 0xbfefe9cdad01883a, // 0.073565, -0.99729
+ 0x3fb339614e41ffa5, 0xbfefe8de8f03d75c, // 0.075094, -0.99718
+ 0x3fb39d9f12c5a299, 0xbfefe7ea85482d60, // 0.076624, -0.99706
+ 0x3fb401d9d0e3a507, 0xbfefe6f18ff42c84, // 0.078153, -0.99694
+ 0x3fb4661179272096, 0xbfefe5f3af2e3940, // 0.079682, -0.99682
+ 0x3fb4ca45fc1ba8b6, 0xbfefe4f0e31d7a4a, // 0.081211, -0.9967
+ 0x3fb52e774a4d4d0a, 0xbfefe3e92be9d886, // 0.08274, -0.99657
+ 0x3fb592a554489bc8, 0xbfefe2dc89bbff08, // 0.084269, -0.99644
+ 0x3fb5f6d00a9aa419, 0xbfefe1cafcbd5b09, // 0.085797, -0.99631
+ 0x3fb65af75dd0f87b, 0xbfefe0b485181be3, // 0.087326, -0.99618
+ 0x3fb6bf1b3e79b129, 0xbfefdf9922f73307, // 0.088854, -0.99604
+ 0x3fb7233b9d236e71, 0xbfefde78d68653fd, // 0.090381, -0.99591
+ 0x3fb787586a5d5b21, 0xbfefdd539ff1f456, // 0.091909, -0.99577
+ 0x3fb7eb7196b72ee4, 0xbfefdc297f674ba9, // 0.093436, -0.99563
+ 0x3fb84f8712c130a0, 0xbfefdafa7514538c, // 0.094963, -0.99548
+ 0x3fb8b398cf0c38e0, 0xbfefd9c68127c78c, // 0.09649, -0.99533
+ 0x3fb917a6bc29b42c, 0xbfefd88da3d12526, // 0.098017, -0.99518
+ 0x3fb97bb0caaba56f, 0xbfefd74fdd40abbf, // 0.099544, -0.99503
+ 0x3fb9dfb6eb24a85c, 0xbfefd60d2da75c9e, // 0.10107, -0.99488
+ 0x3fba43b90e27f3c4, 0xbfefd4c59536fae4, // 0.1026, -0.99472
+ 0x3fbaa7b724495c04, 0xbfefd37914220b84, // 0.10412, -0.99456
+ 0x3fbb0bb11e1d5559, 0xbfefd227aa9bd53b, // 0.10565, -0.9944
+ 0x3fbb6fa6ec38f64c, 0xbfefd0d158d86087, // 0.10717, -0.99424
+ 0x3fbbd3987f31fa0e, 0xbfefcf761f0c77a3, // 0.1087, -0.99407
+ 0x3fbc3785c79ec2d5, 0xbfefce15fd6da67b, // 0.11022, -0.99391
+ 0x3fbc9b6eb6165c42, 0xbfefccb0f4323aa3, // 0.11175, -0.99374
+ 0x3fbcff533b307dc1, 0xbfefcb4703914354, // 0.11327, -0.99356
+ 0x3fbd633347858ce4, 0xbfefc9d82bc2915e, // 0.11479, -0.99339
+ 0x3fbdc70ecbae9fc8, 0xbfefc8646cfeb721, // 0.11632, -0.99321
+ 0x3fbe2ae5b8457f77, 0xbfefc6ebc77f0887, // 0.11784, -0.99303
+ 0x3fbe8eb7fde4aa3e, 0xbfefc56e3b7d9af6, // 0.11937, -0.99285
+ 0x3fbef2858d27561b, 0xbfefc3ebc935454c, // 0.12089, -0.99267
+ 0x3fbf564e56a9730e, 0xbfefc26470e19fd3, // 0.12241, -0.99248
+ 0x3fbfba124b07ad85, 0xbfefc0d832bf043a, // 0.12393, -0.99229
+ 0x3fc00ee8ad6fb85b, 0xbfefbf470f0a8d88, // 0.12545, -0.9921
+ 0x3fc040c5bb67747e, 0xbfefbdb106021816, // 0.12698, -0.99191
+ 0x3fc072a047ba831d, 0xbfefbc1617e44186, // 0.1285, -0.99171
+ 0x3fc0a4784ab8bf1d, 0xbfefba7644f068b5, // 0.13002, -0.99151
+ 0x3fc0d64dbcb26786, 0xbfefb8d18d66adb7, // 0.13154, -0.99131
+ 0x3fc1082095f820b0, 0xbfefb727f187f1c7, // 0.13306, -0.99111
+ 0x3fc139f0cedaf576, 0xbfefb5797195d741, // 0.13458, -0.9909
+ 0x3fc16bbe5fac5865, 0xbfefb3c60dd2c199, // 0.1361, -0.9907
+ 0x3fc19d8940be24e7, 0xbfefb20dc681d54d, // 0.13762, -0.99049
+ 0x3fc1cf516a62a077, 0xbfefb0509be6f7db, // 0.13914, -0.99027
+ 0x3fc20116d4ec7bce, 0xbfefae8e8e46cfbb, // 0.14066, -0.99006
+ 0x3fc232d978aed413, 0xbfefacc79de6c44f, // 0.14218, -0.98984
+ 0x3fc264994dfd340a, 0xbfefaafbcb0cfddc, // 0.1437, -0.98962
+ 0x3fc296564d2b953e, 0xbfefa92b1600657c, // 0.14521, -0.9894
+ 0x3fc2c8106e8e613a, 0xbfefa7557f08a517, // 0.14673, -0.98918
+ 0x3fc2f9c7aa7a72af, 0xbfefa57b066e2754, // 0.14825, -0.98895
+ 0x3fc32b7bf94516a7, 0xbfefa39bac7a1791, // 0.14976, -0.98872
+ 0x3fc35d2d53440db2, 0xbfefa1b7717661d5, // 0.15128, -0.98849
+ 0x3fc38edbb0cd8d14, 0xbfef9fce55adb2c8, // 0.1528, -0.98826
+ 0x3fc3c0870a383ff6, 0xbfef9de0596b77a3, // 0.15431, -0.98802
+ 0x3fc3f22f57db4893, 0xbfef9bed7cfbde29, // 0.15583, -0.98778
+ 0x3fc423d4920e4166, 0xbfef99f5c0abd496, // 0.15734, -0.98754
+ 0x3fc45576b1293e5a, 0xbfef97f924c9099b, // 0.15886, -0.9873
+ 0x3fc48715ad84cdf5, 0xbfef95f7a9a1ec47, // 0.16037, -0.98706
+ 0x3fc4b8b17f79fa88, 0xbfef93f14f85ac08, // 0.16189, -0.98681
+ 0x3fc4ea4a1f624b61, 0xbfef91e616c43891, // 0.1634, -0.98656
+ 0x3fc51bdf8597c5f2, 0xbfef8fd5ffae41db, // 0.16491, -0.98631
+ 0x3fc54d71aa74ef02, 0xbfef8dc10a95380d, // 0.16643, -0.98605
+ 0x3fc57f008654cbde, 0xbfef8ba737cb4b78, // 0.16794, -0.9858
+ 0x3fc5b08c1192e381, 0xbfef898887a36c84, // 0.16945, -0.98554
+ 0x3fc5e214448b3fc6, 0xbfef8764fa714ba9, // 0.17096, -0.98528
+ 0x3fc61399179a6e94, 0xbfef853c9089595e, // 0.17247, -0.98501
+ 0x3fc6451a831d830d, 0xbfef830f4a40c60c, // 0.17398, -0.98475
+ 0x3fc676987f7216b8, 0xbfef80dd27ed8204, // 0.17549, -0.98448
+ 0x3fc6a81304f64ab2, 0xbfef7ea629e63d6e, // 0.177, -0.98421
+ 0x3fc6d98a0c08c8da, 0xbfef7c6a50826840, // 0.17851, -0.98394
+ 0x3fc70afd8d08c4ff, 0xbfef7a299c1a322a, // 0.18002, -0.98366
+ 0x3fc73c6d8055fe0a, 0xbfef77e40d068a90, // 0.18153, -0.98339
+ 0x3fc76dd9de50bf31, 0xbfef7599a3a12077, // 0.18304, -0.98311
+ 0x3fc79f429f59e11d, 0xbfef734a60446279, // 0.18455, -0.98282
+ 0x3fc7d0a7bbd2cb1b, 0xbfef70f6434b7eb7, // 0.18606, -0.98254
+ 0x3fc802092c1d744b, 0xbfef6e9d4d1262ca, // 0.18756, -0.98225
+ 0x3fc83366e89c64c5, 0xbfef6c3f7df5bbb7, // 0.18907, -0.98196
+ 0x3fc864c0e9b2b6cf, 0xbfef69dcd652f5de, // 0.19057, -0.98167
+ 0x3fc8961727c41804, 0xbfef677556883cee, // 0.19208, -0.98138
+ 0x3fc8c7699b34ca7e, 0xbfef6508fef47bd5, // 0.19359, -0.98108
+ 0x3fc8f8b83c69a60a, 0xbfef6297cff75cb0, // 0.19509, -0.98079
+ 0x3fc92a0303c8194f, 0xbfef6021c9f148c2, // 0.19659, -0.98048
+ 0x3fc95b49e9b62af9, 0xbfef5da6ed43685d, // 0.1981, -0.98018
+ 0x3fc98c8ce69a7aec, 0xbfef5b273a4fa2d9, // 0.1996, -0.97988
+ 0x3fc9bdcbf2dc4366, 0xbfef58a2b1789e84, // 0.2011, -0.97957
+ 0x3fc9ef0706e35a35, 0xbfef56195321c090, // 0.20261, -0.97926
+ 0x3fca203e1b1831da, 0xbfef538b1faf2d07, // 0.20411, -0.97895
+ 0x3fca517127e3dabc, 0xbfef50f81785c6b9, // 0.20561, -0.97863
+ 0x3fca82a025b00451, 0xbfef4e603b0b2f2d, // 0.20711, -0.97832
+ 0x3fcab3cb0ce6fe44, 0xbfef4bc38aa5c694, // 0.20861, -0.978
+ 0x3fcae4f1d5f3b9ab, 0xbfef492206bcabb4, // 0.21011, -0.97768
+ 0x3fcb16147941ca2a, 0xbfef467bafb7bbe0, // 0.21161, -0.97735
+ 0x3fcb4732ef3d6722, 0xbfef43d085ff92dd, // 0.21311, -0.97703
+ 0x3fcb784d30536cda, 0xbfef412089fd8adc, // 0.21461, -0.9767
+ 0x3fcba96334f15dad, 0xbfef3e6bbc1bbc65, // 0.21611, -0.97637
+ 0x3fcbda74f5856330, 0xbfef3bb21cc4fe47, // 0.2176, -0.97604
+ 0x3fcc0b826a7e4f63, 0xbfef38f3ac64e589, // 0.2191, -0.9757
+ 0x3fcc3c8b8c4b9dd7, 0xbfef36306b67c556, // 0.2206, -0.97536
+ 0x3fcc6d90535d74dc, 0xbfef33685a3aaef0, // 0.22209, -0.97503
+ 0x3fcc9e90b824a6a9, 0xbfef309b794b719f, // 0.22359, -0.97468
+ 0x3fcccf8cb312b286, 0xbfef2dc9c9089a9d, // 0.22508, -0.97434
+ 0x3fcd00843c99c5f9, 0xbfef2af349e17507, // 0.22658, -0.97399
+ 0x3fcd31774d2cbdee, 0xbfef2817fc4609ce, // 0.22807, -0.97364
+ 0x3fcd6265dd3f27e3, 0xbfef2537e0a71f9f, // 0.22957, -0.97329
+ 0x3fcd934fe5454311, 0xbfef2252f7763ada, // 0.23106, -0.97294
+ 0x3fcdc4355db40195, 0xbfef1f6941259d7a, // 0.23255, -0.97258
+ 0x3fcdf5163f01099a, 0xbfef1c7abe284708, // 0.23404, -0.97223
+ 0x3fce25f281a2b684, 0xbfef19876ef1f486, // 0.23553, -0.97187
+ 0x3fce56ca1e101a1b, 0xbfef168f53f7205d, // 0.23702, -0.9715
+ 0x3fce879d0cc0fdaf, 0xbfef13926dad024e, // 0.23851, -0.97114
+ 0x3fceb86b462de348, 0xbfef1090bc898f5f, // 0.24, -0.97077
+ 0x3fcee934c2d006c7, 0xbfef0d8a410379c5, // 0.24149, -0.9704
+ 0x3fcf19f97b215f1a, 0xbfef0a7efb9230d7, // 0.24298, -0.97003
+ 0x3fcf4ab9679c9f5c, 0xbfef076eecade0fa, // 0.24447, -0.96966
+ 0x3fcf7b7480bd3801, 0xbfef045a14cf738c, // 0.24596, -0.96928
+ 0x3fcfac2abeff57ff, 0xbfef014074708ed3, // 0.24744, -0.9689
+ 0x3fcfdcdc1adfedf8, 0xbfeefe220c0b95ec, // 0.24893, -0.96852
+ 0x3fd006c4466e54af, 0xbfeefafedc1ba8b7, // 0.25041, -0.96814
+ 0x3fd01f1806b9fdd2, 0xbfeef7d6e51ca3c0, // 0.2519, -0.96775
+ 0x3fd037694a928cac, 0xbfeef4aa278b2032, // 0.25338, -0.96737
+ 0x3fd04fb80e37fdae, 0xbfeef178a3e473c2, // 0.25487, -0.96698
+ 0x3fd068044deab002, 0xbfeeee425aa6b09a, // 0.25635, -0.96658
+ 0x3fd0804e05eb661e, 0xbfeeeb074c50a544, // 0.25783, -0.96619
+ 0x3fd09895327b465e, 0xbfeee7c77961dc9e, // 0.25931, -0.96579
+ 0x3fd0b0d9cfdbdb90, 0xbfeee482e25a9dbc, // 0.26079, -0.96539
+ 0x3fd0c91bda4f158d, 0xbfeee13987bbebdc, // 0.26227, -0.96499
+ 0x3fd0e15b4e1749cd, 0xbfeeddeb6a078651, // 0.26375, -0.96459
+ 0x3fd0f998277733f7, 0xbfeeda9889bfe86a, // 0.26523, -0.96418
+ 0x3fd111d262b1f677, 0xbfeed740e7684963, // 0.26671, -0.96378
+ 0x3fd12a09fc0b1b12, 0xbfeed3e483849c51, // 0.26819, -0.96337
+ 0x3fd1423eefc69378, 0xbfeed0835e999009, // 0.26967, -0.96295
+ 0x3fd15a713a28b9d9, 0xbfeecd1d792c8f10, // 0.27115, -0.96254
+ 0x3fd172a0d7765177, 0xbfeec9b2d3c3bf84, // 0.27262, -0.96212
+ 0x3fd18acdc3f4873a, 0xbfeec6436ee60309, // 0.2741, -0.9617
+ 0x3fd1a2f7fbe8f243, 0xbfeec2cf4b1af6b2, // 0.27557, -0.96128
+ 0x3fd1bb1f7b999480, 0xbfeebf5668eaf2ef, // 0.27705, -0.96086
+ 0x3fd1d3443f4cdb3d, 0xbfeebbd8c8df0b74, // 0.27852, -0.96043
+ 0x3fd1eb6643499fbb, 0xbfeeb8566b810f2a, // 0.27999, -0.96
+ 0x3fd2038583d727bd, 0xbfeeb4cf515b8811, // 0.28146, -0.95957
+ 0x3fd21ba1fd3d2623, 0xbfeeb1437af9bb34, // 0.28294, -0.95914
+ 0x3fd233bbabc3bb72, 0xbfeeadb2e8e7a88e, // 0.28441, -0.9587
+ 0x3fd24bd28bb37672, 0xbfeeaa1d9bb20af3, // 0.28588, -0.95827
+ 0x3fd263e6995554ba, 0xbfeea68393e65800, // 0.28735, -0.95783
+ 0x3fd27bf7d0f2c346, 0xbfeea2e4d212c000, // 0.28882, -0.95738
+ 0x3fd294062ed59f05, 0xbfee9f4156c62dda, // 0.29028, -0.95694
+ 0x3fd2ac11af483572, 0xbfee9b99229046f8, // 0.29175, -0.95649
+ 0x3fd2c41a4e954520, 0xbfee97ec36016b30, // 0.29322, -0.95605
+ 0x3fd2dc200907fe51, 0xbfee943a91aab4b4, // 0.29469, -0.95559
+ 0x3fd2f422daec0386, 0xbfee9084361df7f3, // 0.29615, -0.95514
+ 0x3fd30c22c08d6a13, 0xbfee8cc923edc388, // 0.29762, -0.95469
+ 0x3fd3241fb638baaf, 0xbfee89095bad6025, // 0.29908, -0.95423
+ 0x3fd33c19b83af207, 0xbfee8544ddf0d075, // 0.30054, -0.95377
+ 0x3fd35410c2e18152, 0xbfee817bab4cd10d, // 0.30201, -0.95331
+ 0x3fd36c04d27a4edf, 0xbfee7dadc456d850, // 0.30347, -0.95284
+ 0x3fd383f5e353b6aa, 0xbfee79db29a5165a, // 0.30493, -0.95238
+ 0x3fd39be3f1bc8aef, 0xbfee7603dbce74e9, // 0.30639, -0.95191
+ 0x3fd3b3cefa0414b7, 0xbfee7227db6a9744, // 0.30785, -0.95144
+ 0x3fd3cbb6f87a146e, 0xbfee6e472911da27, // 0.30931, -0.95096
+ 0x3fd3e39be96ec271, 0xbfee6a61c55d53a7, // 0.31077, -0.95049
+ 0x3fd3fb7dc932cfa4, 0xbfee6677b0e6d31e, // 0.31222, -0.95001
+ 0x3fd4135c94176602, 0xbfee6288ec48e112, // 0.31368, -0.94953
+ 0x3fd42b38466e2928, 0xbfee5e95781ebf1c, // 0.31514, -0.94905
+ 0x3fd44310dc8936f0, 0xbfee5a9d550467d3, // 0.31659, -0.94856
+ 0x3fd45ae652bb2800, 0xbfee56a083968eb1, // 0.31805, -0.94807
+ 0x3fd472b8a5571054, 0xbfee529f04729ffc, // 0.3195, -0.94759
+ 0x3fd48a87d0b07fd7, 0xbfee4e98d836c0af, // 0.32096, -0.94709
+ 0x3fd4a253d11b82f3, 0xbfee4a8dff81ce5e, // 0.32241, -0.9466
+ 0x3fd4ba1ca2eca31c, 0xbfee467e7af35f23, // 0.32386, -0.94611
+ 0x3fd4d1e24278e76a, 0xbfee426a4b2bc17e, // 0.32531, -0.94561
+ 0x3fd4e9a4ac15d520, 0xbfee3e5170cbfc46, // 0.32676, -0.94511
+ 0x3fd50163dc197047, 0xbfee3a33ec75ce85, // 0.32821, -0.9446
+ 0x3fd5191fceda3c35, 0xbfee3611becbaf69, // 0.32966, -0.9441
+ 0x3fd530d880af3c24, 0xbfee31eae870ce25, // 0.33111, -0.94359
+ 0x3fd5488dedeff3be, 0xbfee2dbf6a0911d9, // 0.33255, -0.94308
+ 0x3fd5604012f467b4, 0xbfee298f4439197a, // 0.334, -0.94257
+ 0x3fd577eeec151e47, 0xbfee255a77a63bb8, // 0.33545, -0.94206
+ 0x3fd58f9a75ab1fdd, 0xbfee212104f686e5, // 0.33689, -0.94154
+ 0x3fd5a742ac0ff78d, 0xbfee1ce2ecd0c0d8, // 0.33833, -0.94103
+ 0x3fd5bee78b9db3b6, 0xbfee18a02fdc66d9, // 0.33978, -0.94051
+ 0x3fd5d68910aee686, 0xbfee1458cec1ad83, // 0.34122, -0.93998
+ 0x3fd5ee27379ea693, 0xbfee100cca2980ac, // 0.34266, -0.93946
+ 0x3fd605c1fcc88f63, 0xbfee0bbc22bd8349, // 0.3441, -0.93893
+ 0x3fd61d595c88c203, 0xbfee0766d9280f54, // 0.34554, -0.9384
+ 0x3fd634ed533be58e, 0xbfee030cee1435b8, // 0.34698, -0.93787
+ 0x3fd64c7ddd3f27c6, 0xbfedfeae622dbe2b, // 0.34842, -0.93734
+ 0x3fd6640af6f03d9e, 0xbfedfa4b3621271d, // 0.34986, -0.9368
+ 0x3fd67b949cad63ca, 0xbfedf5e36a9ba59c, // 0.35129, -0.93627
+ 0x3fd6931acad55f51, 0xbfedf177004b2534, // 0.35273, -0.93573
+ 0x3fd6aa9d7dc77e16, 0xbfeded05f7de47da, // 0.35416, -0.93518
+ 0x3fd6c21cb1e39771, 0xbfede890520465ce, // 0.3556, -0.93464
+ 0x3fd6d998638a0cb5, 0xbfede4160f6d8d81, // 0.35703, -0.93409
+ 0x3fd6f1108f1bc9c5, 0xbfeddf9730ca837b, // 0.35846, -0.93354
+ 0x3fd7088530fa459e, 0xbfeddb13b6ccc23d, // 0.3599, -0.93299
+ 0x3fd71ff6458782ec, 0xbfedd68ba2267a25, // 0.36133, -0.93244
+ 0x3fd73763c9261092, 0xbfedd1fef38a915a, // 0.36276, -0.93188
+ 0x3fd74ecdb8390a3e, 0xbfedcd6dabaca3a5, // 0.36418, -0.93133
+ 0x3fd766340f2418f6, 0xbfedc8d7cb410260, // 0.36561, -0.93077
+ 0x3fd77d96ca4b73a6, 0xbfedc43d52fcb453, // 0.36704, -0.93021
+ 0x3fd794f5e613dfae, 0xbfedbf9e4395759a, // 0.36847, -0.92964
+ 0x3fd7ac515ee2b172, 0xbfedbafa9dc1b78d, // 0.36989, -0.92907
+ 0x3fd7c3a9311dcce7, 0xbfedb6526238a09b, // 0.37132, -0.92851
+ 0x3fd7dafd592ba621, 0xbfedb1a591b20c38, // 0.37274, -0.92794
+ 0x3fd7f24dd37341e3, 0xbfedacf42ce68ab9, // 0.37416, -0.92736
+ 0x3fd8099a9c5c362d, 0xbfeda83e348f613b, // 0.37559, -0.92679
+ 0x3fd820e3b04eaac4, 0xbfeda383a9668988, // 0.37701, -0.92621
+ 0x3fd838290bb359c8, 0xbfed9ec48c26b1f3, // 0.37843, -0.92563
+ 0x3fd84f6aaaf3903f, 0xbfed9a00dd8b3d46, // 0.37985, -0.92505
+ 0x3fd866a88a792ea0, 0xbfed95389e50429b, // 0.38127, -0.92447
+ 0x3fd87de2a6aea963, 0xbfed906bcf328d46, // 0.38268, -0.92388
+ 0x3fd89518fbff098e, 0xbfed8b9a70ef9cb4, // 0.3841, -0.92329
+ 0x3fd8ac4b86d5ed44, 0xbfed86c48445a450, // 0.38552, -0.9227
+ 0x3fd8c37a439f884f, 0xbfed81ea09f38b63, // 0.38693, -0.92211
+ 0x3fd8daa52ec8a4af, 0xbfed7d0b02b8ecf9, // 0.38835, -0.92151
+ 0x3fd8f1cc44bea329, 0xbfed78276f5617c6, // 0.38976, -0.92092
+ 0x3fd908ef81ef7bd1, 0xbfed733f508c0dff, // 0.39117, -0.92032
+ 0x3fd9200ee2c9be97, 0xbfed6e52a71c8547, // 0.39258, -0.91972
+ 0x3fd9372a63bc93d7, 0xbfed696173c9e68b, // 0.39399, -0.91911
+ 0x3fd94e420137bce3, 0xbfed646bb7574de5, // 0.3954, -0.91851
+ 0x3fd96555b7ab948f, 0xbfed5f7172888a7f, // 0.39681, -0.9179
+ 0x3fd97c6583890fc2, 0xbfed5a72a6221e73, // 0.39822, -0.91729
+ 0x3fd993716141bdfe, 0xbfed556f52e93eb1, // 0.39962, -0.91668
+ 0x3fd9aa794d47c9ee, 0xbfed506779a3d2d9, // 0.40103, -0.91606
+ 0x3fd9c17d440df9f2, 0xbfed4b5b1b187524, // 0.40243, -0.91545
+ 0x3fd9d87d4207b0ab, 0xbfed464a380e7242, // 0.40384, -0.91483
+ 0x3fd9ef7943a8ed8a, 0xbfed4134d14dc93a, // 0.40524, -0.91421
+ 0x3fda067145664d57, 0xbfed3c1ae79f2b4e, // 0.40664, -0.91359
+ 0x3fda1d6543b50ac0, 0xbfed36fc7bcbfbdc, // 0.40804, -0.91296
+ 0x3fda34553b0afee5, 0xbfed31d98e9e503a, // 0.40944, -0.91234
+ 0x3fda4b4127dea1e4, 0xbfed2cb220e0ef9f, // 0.41084, -0.91171
+ 0x3fda622906a70b63, 0xbfed2786335f52fc, // 0.41224, -0.91107
+ 0x3fda790cd3dbf31a, 0xbfed2255c6e5a4e1, // 0.41364, -0.91044
+ 0x3fda8fec8bf5b166, 0xbfed1d20dc40c15c, // 0.41503, -0.90981
+ 0x3fdaa6c82b6d3fc9, 0xbfed17e7743e35dc, // 0.41643, -0.90917
+ 0x3fdabd9faebc3980, 0xbfed12a98fac410c, // 0.41782, -0.90853
+ 0x3fdad473125cdc08, 0xbfed0d672f59d2b9, // 0.41922, -0.90789
+ 0x3fdaeb4252ca07ab, 0xbfed082054168bac, // 0.42061, -0.90724
+ 0x3fdb020d6c7f4009, 0xbfed02d4feb2bd92, // 0.422, -0.9066
+ 0x3fdb18d45bf8aca6, 0xbfecfd852fff6ad4, // 0.42339, -0.90595
+ 0x3fdb2f971db31972, 0xbfecf830e8ce467b, // 0.42478, -0.9053
+ 0x3fdb4655ae2bf757, 0xbfecf2d829f1b40e, // 0.42617, -0.90464
+ 0x3fdb5d1009e15cc0, 0xbfeced7af43cc773, // 0.42756, -0.90399
+ 0x3fdb73c62d520624, 0xbfece819488344ce, // 0.42894, -0.90333
+ 0x3fdb8a7814fd5693, 0xbfece2b32799a060, // 0.43033, -0.90267
+ 0x3fdba125bd63583e, 0xbfecdd489254fe65, // 0.43171, -0.90201
+ 0x3fdbb7cf2304bd01, 0xbfecd7d9898b32f6, // 0.43309, -0.90135
+ 0x3fdbce744262deee, 0xbfecd2660e12c1e6, // 0.43448, -0.90068
+ 0x3fdbe51517ffc0d9, 0xbfecccee20c2de9f, // 0.43586, -0.90002
+ 0x3fdbfbb1a05e0edc, 0xbfecc771c2736c09, // 0.43724, -0.89935
+ 0x3fdc1249d8011ee7, 0xbfecc1f0f3fcfc5c, // 0.43862, -0.89867
+ 0x3fdc28ddbb6cf145, 0xbfecbc6bb638d10b, // 0.43999, -0.898
+ 0x3fdc3f6d47263129, 0xbfecb6e20a00da99, // 0.44137, -0.89732
+ 0x3fdc55f877b23537, 0xbfecb153f02fb87d, // 0.44275, -0.89665
+ 0x3fdc6c7f4997000a, 0xbfecabc169a0b901, // 0.44412, -0.89597
+ 0x3fdc8301b95b40c2, 0xbfeca62a772fd919, // 0.4455, -0.89528
+ 0x3fdc997fc3865388, 0xbfeca08f19b9c449, // 0.44687, -0.8946
+ 0x3fdcaff964a0421d, 0xbfec9aef521bd480, // 0.44824, -0.89391
+ 0x3fdcc66e9931c45d, 0xbfec954b213411f5, // 0.44961, -0.89322
+ 0x3fdcdcdf5dc440ce, 0xbfec8fa287e13305, // 0.45098, -0.89253
+ 0x3fdcf34baee1cd21, 0xbfec89f587029c13, // 0.45235, -0.89184
+ 0x3fdd09b389152ec1, 0xbfec84441f785f61, // 0.45372, -0.89115
+ 0x3fdd2016e8e9db5b, 0xbfec7e8e52233cf3, // 0.45508, -0.89045
+ 0x3fdd3675caebf962, 0xbfec78d41fe4a267, // 0.45645, -0.88975
+ 0x3fdd4cd02ba8609c, 0xbfec7315899eaad7, // 0.45781, -0.88905
+ 0x3fdd632607ac9aa9, 0xbfec6d5290341eb2, // 0.45918, -0.88835
+ 0x3fdd79775b86e389, 0xbfec678b3488739b, // 0.46054, -0.88764
+ 0x3fdd8fc423c62a25, 0xbfec61bf777fcc48, // 0.4619, -0.88693
+ 0x3fdda60c5cfa10d8, 0xbfec5bef59fef85a, // 0.46326, -0.88622
+ 0x3fddbc5003b2edf8, 0xbfec561adceb743e, // 0.46462, -0.88551
+ 0x3fddd28f1481cc58, 0xbfec5042012b6907, // 0.46598, -0.8848
+ 0x3fdde8c98bf86bd6, 0xbfec4a64c7a5ac4c, // 0.46733, -0.88408
+ 0x3fddfeff66a941de, 0xbfec44833141c004, // 0.46869, -0.88336
+ 0x3fde1530a12779f4, 0xbfec3e9d3ee7d262, // 0.47004, -0.88264
+ 0x3fde2b5d3806f63b, 0xbfec38b2f180bdb1, // 0.4714, -0.88192
+ 0x3fde418527dc4ffa, 0xbfec32c449f60831, // 0.47275, -0.8812
+ 0x3fde57a86d3cd824, 0xbfec2cd14931e3f1, // 0.4741, -0.88047
+ 0x3fde6dc704be97e2, 0xbfec26d9f01f2eaf, // 0.47545, -0.87974
+ 0x3fde83e0eaf85113, 0xbfec20de3fa971b0, // 0.4768, -0.87901
+ 0x3fde99f61c817eda, 0xbfec1ade38bce19b, // 0.47815, -0.87828
+ 0x3fdeb00695f25620, 0xbfec14d9dc465e58, // 0.47949, -0.87755
+ 0x3fdec61253e3c61b, 0xbfec0ed12b3372e9, // 0.48084, -0.87681
+ 0x3fdedc1952ef78d5, 0xbfec08c426725549, // 0.48218, -0.87607
+ 0x3fdef21b8fafd3b5, 0xbfec02b2cef1e641, // 0.48353, -0.87533
+ 0x3fdf081906bff7fd, 0xbfebfc9d25a1b147, // 0.48487, -0.87459
+ 0x3fdf1e11b4bbc35c, 0xbfebf6832b71ec5b, // 0.48621, -0.87384
+ 0x3fdf3405963fd068, 0xbfebf064e15377dd, // 0.48755, -0.87309
+ 0x3fdf49f4a7e97729, 0xbfebea424837de6d, // 0.48889, -0.87235
+ 0x3fdf5fdee656cda3, 0xbfebe41b611154c1, // 0.49023, -0.8716
+ 0x3fdf75c44e26a852, 0xbfebddf02cd2b983, // 0.49156, -0.87084
+ 0x3fdf8ba4dbf89aba, 0xbfebd7c0ac6f952a, // 0.4929, -0.87009
+ 0x3fdfa1808c6cf7e0, 0xbfebd18ce0dc19d6, // 0.49423, -0.86933
+ 0x3fdfb7575c24d2de, 0xbfebcb54cb0d2327, // 0.49557, -0.86857
+ 0x3fdfcd2947c1ff57, 0xbfebc5186bf8361d, // 0.4969, -0.86781
+ 0x3fdfe2f64be7120f, 0xbfebbed7c49380ea, // 0.49823, -0.86705
+ 0x3fdff8be6537615e, 0xbfebb892d5d5dad5, // 0.49956, -0.86628
+ 0x3fe00740c82b82e0, 0xbfebb249a0b6c40d, // 0.50089, -0.86551
+ 0x3fe0121fe4f56d2c, 0xbfebabfc262e6586, // 0.50221, -0.86474
+ 0x3fe01cfc874c3eb7, 0xbfeba5aa673590d2, // 0.50354, -0.86397
+ 0x3fe027d6ad83287e, 0xbfeb9f5464c5bffc, // 0.50486, -0.8632
+ 0x3fe032ae55edbd95, 0xbfeb98fa1fd9155e, // 0.50619, -0.86242
+ 0x3fe03d837edff370, 0xbfeb929b996a5b7f, // 0.50751, -0.86165
+ 0x3fe0485626ae221a, 0xbfeb8c38d27504e9, // 0.50883, -0.86087
+ 0x3fe053264bad0483, 0xbfeb85d1cbf52c02, // 0.51015, -0.86009
+ 0x3fe05df3ec31b8b6, 0xbfeb7f6686e792ea, // 0.51147, -0.8593
+ 0x3fe068bf0691c028, 0xbfeb78f70449a34b, // 0.51279, -0.85852
+ 0x3fe073879922ffed, 0xbfeb728345196e3e, // 0.5141, -0.85773
+ 0x3fe07e4da23bc102, 0xbfeb6c0b4a55ac17, // 0.51542, -0.85694
+ 0x3fe089112032b08c, 0xbfeb658f14fdbc47, // 0.51673, -0.85615
+ 0x3fe093d2115ee018, 0xbfeb5f0ea611a532, // 0.51804, -0.85535
+ 0x3fe09e907417c5e1, 0xbfeb5889fe921405, // 0.51936, -0.85456
+ 0x3fe0a94c46b53d0b, 0xbfeb52011f805c92, // 0.52067, -0.85376
+ 0x3fe0b405878f85ec, 0xbfeb4b7409de7925, // 0.52198, -0.85296
+ 0x3fe0bebc34ff4646, 0xbfeb44e2beaf0a61, // 0.52328, -0.85216
+ 0x3fe0c9704d5d898f, 0xbfeb3e4d3ef55712, // 0.52459, -0.85136
+ 0x3fe0d421cf03c12b, 0xbfeb37b38bb54c09, // 0.5259, -0.85055
+ 0x3fe0ded0b84bc4b5, 0xbfeb3115a5f37bf4, // 0.5272, -0.84974
+ 0x3fe0e97d078fd23b, 0xbfeb2a738eb51f33, // 0.5285, -0.84893
+ 0x3fe0f426bb2a8e7d, 0xbfeb23cd470013b4, // 0.5298, -0.84812
+ 0x3fe0fecdd1770537, 0xbfeb1d22cfdadcc6, // 0.5311, -0.84731
+ 0x3fe1097248d0a956, 0xbfeb16742a4ca2f5, // 0.5324, -0.84649
+ 0x3fe114141f935545, 0xbfeb0fc1575d33db, // 0.5337, -0.84567
+ 0x3fe11eb3541b4b22, 0xbfeb090a58150200, // 0.535, -0.84485
+ 0x3fe1294fe4c5350a, 0xbfeb024f2d7d24a9, // 0.53629, -0.84403
+ 0x3fe133e9cfee254e, 0xbfeafb8fd89f57b6, // 0.53759, -0.84321
+ 0x3fe13e8113f396c1, 0xbfeaf4cc5a85fb73, // 0.53888, -0.84238
+ 0x3fe14915af336ceb, 0xbfeaee04b43c1474, // 0.54017, -0.84155
+ 0x3fe153a7a00bf453, 0xbfeae738e6cd4b67, // 0.54146, -0.84073
+ 0x3fe15e36e4dbe2bc, 0xbfeae068f345ecef, // 0.54275, -0.83989
+ 0x3fe168c37c025764, 0xbfead994dab2e979, // 0.54404, -0.83906
+ 0x3fe1734d63dedb49, 0xbfead2bc9e21d511, // 0.54532, -0.83822
+ 0x3fe17dd49ad16161, 0xbfeacbe03ea0e73b, // 0.54661, -0.83739
+ 0x3fe188591f3a46e5, 0xbfeac4ffbd3efac8, // 0.54789, -0.83655
+ 0x3fe192daef7a5386, 0xbfeabe1b1b0b8dac, // 0.54918, -0.83571
+ 0x3fe19d5a09f2b9b8, 0xbfeab7325916c0d4, // 0.55046, -0.83486
+ 0x3fe1a7d66d0516e6, 0xbfeab045787157ff, // 0.55174, -0.83402
+ 0x3fe1b250171373be, 0xbfeaa9547a2cb98e, // 0.55302, -0.83317
+ 0x3fe1bcc706804467, 0xbfeaa25f5f5aee60, // 0.55429, -0.83232
+ 0x3fe1c73b39ae68c8, 0xbfea9b66290ea1a3, // 0.55557, -0.83147
+ 0x3fe1d1acaf012cc2, 0xbfea9468d85b20ae, // 0.55685, -0.83062
+ 0x3fe1dc1b64dc4872, 0xbfea8d676e545ad2, // 0.55812, -0.82976
+ 0x3fe1e68759a3e074, 0xbfea8661ec0ee133, // 0.55939, -0.8289
+ 0x3fe1f0f08bbc861b, 0xbfea7f58529fe69d, // 0.56066, -0.82805
+ 0x3fe1fb56f98b37b8, 0xbfea784aa31d3f55, // 0.56193, -0.82718
+ 0x3fe205baa17560d6, 0xbfea7138de9d60f5, // 0.5632, -0.82632
+ 0x3fe2101b81e0da78, 0xbfea6a230637623b, // 0.56447, -0.82546
+ 0x3fe21a799933eb58, 0xbfea63091b02fae2, // 0.56573, -0.82459
+ 0x3fe224d4e5d5482e, 0xbfea5beb1e188375, // 0.567, -0.82372
+ 0x3fe22f2d662c13e1, 0xbfea54c91090f524, // 0.56826, -0.82285
+ 0x3fe23983189fdfd5, 0xbfea4da2f385e997, // 0.56952, -0.82198
+ 0x3fe243d5fb98ac1f, 0xbfea4678c8119ac8, // 0.57078, -0.8211
+ 0x3fe24e260d7ee7c9, 0xbfea3f4a8f4ee2d2, // 0.57204, -0.82023
+ 0x3fe258734cbb7110, 0xbfea38184a593bc6, // 0.5733, -0.81935
+ 0x3fe262bdb7b795a2, 0xbfea30e1fa4cbf81, // 0.57455, -0.81847
+ 0x3fe26d054cdd12df, 0xbfea29a7a0462782, // 0.57581, -0.81758
+ 0x3fe2774a0a961612, 0xbfea22693d62ccb9, // 0.57706, -0.8167
+ 0x3fe2818bef4d3cba, 0xbfea1b26d2c0a75e, // 0.57831, -0.81581
+ 0x3fe28bcaf96d94ba, 0xbfea13e0617e4ec7, // 0.57956, -0.81493
+ 0x3fe2960727629ca8, 0xbfea0c95eabaf937, // 0.58081, -0.81404
+ 0x3fe2a040779843fb, 0xbfea05476f967bb5, // 0.58206, -0.81314
+ 0x3fe2aa76e87aeb58, 0xbfe9fdf4f13149de, // 0.58331, -0.81225
+ 0x3fe2b4aa787764c4, 0xbfe9f69e70ac75bc, // 0.58455, -0.81135
+ 0x3fe2bedb25faf3ea, 0xbfe9ef43ef29af94, // 0.5858, -0.81046
+ 0x3fe2c908ef734e57, 0xbfe9e7e56dcb45bd, // 0.58704, -0.80956
+ 0x3fe2d333d34e9bb7, 0xbfe9e082edb42472, // 0.58828, -0.80866
+ 0x3fe2dd5bcffb7616, 0xbfe9d91c7007d5a6, // 0.58952, -0.80775
+ 0x3fe2e780e3e8ea16, 0xbfe9d1b1f5ea80d6, // 0.59076, -0.80685
+ 0x3fe2f1a30d86773a, 0xbfe9ca438080eadb, // 0.592, -0.80594
+ 0x3fe2fbc24b441015, 0xbfe9c2d110f075c3, // 0.59323, -0.80503
+ 0x3fe305de9b921a94, 0xbfe9bb5aa85f2098, // 0.59447, -0.80412
+ 0x3fe30ff7fce17035, 0xbfe9b3e047f38741, // 0.5957, -0.80321
+ 0x3fe31a0e6da35e44, 0xbfe9ac61f0d4e247, // 0.59693, -0.80229
+ 0x3fe32421ec49a620, 0xbfe9a4dfa42b06b2, // 0.59816, -0.80138
+ 0x3fe32e3277467d6b, 0xbfe99d59631e65d5, // 0.59939, -0.80046
+ 0x3fe338400d0c8e57, 0xbfe995cf2ed80d22, // 0.60062, -0.79954
+ 0x3fe3424aac0ef7d6, 0xbfe98e410881a600, // 0.60184, -0.79861
+ 0x3fe34c5252c14de1, 0xbfe986aef1457594, // 0.60307, -0.79769
+ 0x3fe35656ff9799ae, 0xbfe97f18ea4e5c9e, // 0.60429, -0.79676
+ 0x3fe36058b10659f3, 0xbfe9777ef4c7d742, // 0.60551, -0.79584
+ 0x3fe36a576582831b, 0xbfe96fe111ddfce0, // 0.60673, -0.79491
+ 0x3fe374531b817f8d, 0xbfe9683f42bd7fe1, // 0.60795, -0.79398
+ 0x3fe37e4bd1792fe2, 0xbfe960998893ad8c, // 0.60917, -0.79304
+ 0x3fe3884185dfeb22, 0xbfe958efe48e6dd7, // 0.61038, -0.79211
+ 0x3fe39234372c7f04, 0xbfe9514257dc4335, // 0.6116, -0.79117
+ 0x3fe39c23e3d63029, 0xbfe94990e3ac4a6c, // 0.61281, -0.79023
+ 0x3fe3a6108a54ba58, 0xbfe941db892e3a65, // 0.61402, -0.78929
+ 0x3fe3affa292050b9, 0xbfe93a22499263fc, // 0.61523, -0.78835
+ 0x3fe3b9e0beb19e18, 0xbfe932652609b1cf, // 0.61644, -0.7874
+ 0x3fe3c3c44981c517, 0xbfe92aa41fc5a815, // 0.61765, -0.78646
+ 0x3fe3cda4c80a6076, 0xbfe922df37f8646a, // 0.61885, -0.78551
+ 0x3fe3d78238c58343, 0xbfe91b166fd49da2, // 0.62006, -0.78456
+ 0x3fe3e15c9a2db922, 0xbfe91349c88da398, // 0.62126, -0.7836
+ 0x3fe3eb33eabe0680, 0xbfe90b7943575efe, // 0.62246, -0.78265
+ 0x3fe3f50828f1e8d2, 0xbfe903a4e1665133, // 0.62366, -0.78169
+ 0x3fe3fed9534556d4, 0xbfe8fbcca3ef940d, // 0.62486, -0.78074
+ 0x3fe408a76834c0c0, 0xbfe8f3f08c28d9ac, // 0.62606, -0.77978
+ 0x3fe41272663d108c, 0xbfe8ec109b486c49, // 0.62725, -0.77882
+ 0x3fe41c3a4bdbaa26, 0xbfe8e42cd2852e0a, // 0.62845, -0.77785
+ 0x3fe425ff178e6bb1, 0xbfe8dc45331698cc, // 0.62964, -0.77689
+ 0x3fe42fc0c7d3adbb, 0xbfe8d459be34bdfa, // 0.63083, -0.77592
+ 0x3fe4397f5b2a4380, 0xbfe8cc6a75184655, // 0.63202, -0.77495
+ 0x3fe4433ad0117b1d, 0xbfe8c47758fa71cb, // 0.63321, -0.77398
+ 0x3fe44cf325091dd6, 0xbfe8bc806b151741, // 0.63439, -0.77301
+ 0x3fe456a858917046, 0xbfe8b485aca2a468, // 0.63558, -0.77204
+ 0x3fe4605a692b32a2, 0xbfe8ac871ede1d88, // 0.63676, -0.77106
+ 0x3fe46a095557a0f1, 0xbfe8a484c3031d50, // 0.63794, -0.77008
+ 0x3fe473b51b987347, 0xbfe89c7e9a4dd4ab, // 0.63912, -0.7691
+ 0x3fe47d5dba6fde01, 0xbfe89474a5fb0a84, // 0.6403, -0.76812
+ 0x3fe48703306091fe, 0xbfe88c66e7481ba1, // 0.64148, -0.76714
+ 0x3fe490a57bedbcdf, 0xbfe884555f72fa6b, // 0.64266, -0.76615
+ 0x3fe49a449b9b0938, 0xbfe87c400fba2ebf, // 0.64383, -0.76517
+ 0x3fe4a3e08dec9ed6, 0xbfe87426f95cd5bd, // 0.645, -0.76418
+ 0x3fe4ad79516722f0, 0xbfe86c0a1d9aa195, // 0.64618, -0.76319
+ 0x3fe4b70ee48fb869, 0xbfe863e97db3d95a, // 0.64735, -0.7622
+ 0x3fe4c0a145ec0004, 0xbfe85bc51ae958cc, // 0.64851, -0.7612
+ 0x3fe4ca30740218a3, 0xbfe8539cf67c9029, // 0.64968, -0.76021
+ 0x3fe4d3bc6d589f80, 0xbfe84b7111af83f9, // 0.65085, -0.75921
+ 0x3fe4dd453076b064, 0xbfe843416dc4cce2, // 0.65201, -0.75821
+ 0x3fe4e6cabbe3e5e9, 0xbfe83b0e0bff976e, // 0.65317, -0.75721
+ 0x3fe4f04d0e2859aa, 0xbfe832d6eda3a3e0, // 0.65433, -0.75621
+ 0x3fe4f9cc25cca486, 0xbfe82a9c13f545ff, // 0.65549, -0.7552
+ 0x3fe503480159ded2, 0xbfe8225d803964e5, // 0.65665, -0.75419
+ 0x3fe50cc09f59a09b, 0xbfe81a1b33b57acc, // 0.65781, -0.75319
+ 0x3fe51635fe5601d7, 0xbfe811d52faf94dc, // 0.65896, -0.75218
+ 0x3fe51fa81cd99aa6, 0xbfe8098b756e52fa, // 0.66011, -0.75117
+ 0x3fe52916f96f8388, 0xbfe8013e0638e795, // 0.66127, -0.75015
+ 0x3fe5328292a35596, 0xbfe7f8ece3571771, // 0.66242, -0.74914
+ 0x3fe53beae7012abe, 0xbfe7f0980e113978, // 0.66356, -0.74812
+ 0x3fe5454ff5159dfb, 0xbfe7e83f87b03686, // 0.66471, -0.7471
+ 0x3fe54eb1bb6dcb8f, 0xbfe7dfe3517d8937, // 0.66586, -0.74608
+ 0x3fe5581038975137, 0xbfe7d7836cc33db2, // 0.667, -0.74506
+ 0x3fe5616b6b204e6e, 0xbfe7cf1fdacbf179, // 0.66814, -0.74403
+ 0x3fe56ac35197649e, 0xbfe7c6b89ce2d333, // 0.66928, -0.74301
+ 0x3fe57417ea8bb75c, 0xbfe7be4db453a27c, // 0.67042, -0.74198
+ 0x3fe57d69348cec9f, 0xbfe7b5df226aafb0, // 0.67156, -0.74095
+ 0x3fe586b72e2b2cfd, 0xbfe7ad6ce874dbb6, // 0.67269, -0.73992
+ 0x3fe59001d5f723df, 0xbfe7a4f707bf97d2, // 0.67383, -0.73889
+ 0x3fe599492a81ffbc, 0xbfe79c7d8198e56e, // 0.67496, -0.73785
+ 0x3fe5a28d2a5d7250, 0xbfe79400574f55e4, // 0.67609, -0.73682
+ 0x3fe5abcdd41bb0d8, 0xbfe78b7f8a320a52, // 0.67722, -0.73578
+ 0x3fe5b50b264f7448, 0xbfe782fb1b90b35b, // 0.67835, -0.73474
+ 0x3fe5be451f8bf980, 0xbfe77a730cbb9100, // 0.67948, -0.7337
+ 0x3fe5c77bbe65018c, 0xbfe771e75f037261, // 0.6806, -0.73265
+ 0x3fe5d0af016ed1d4, 0xbfe7695813b9b594, // 0.68172, -0.73161
+ 0x3fe5d9dee73e345c, 0xbfe760c52c304764, // 0.68285, -0.73056
+ 0x3fe5e30b6e6877f3, 0xbfe7582ea9b9a329, // 0.68397, -0.72951
+ 0x3fe5ec3495837074, 0xbfe74f948da8d28d, // 0.68508, -0.72846
+ 0x3fe5f55a5b2576f8, 0xbfe746f6d9516d59, // 0.6862, -0.72741
+ 0x3fe5fe7cbde56a0f, 0xbfe73e558e079942, // 0.68732, -0.72636
+ 0x3fe6079bbc5aadfa, 0xbfe735b0ad2009b2, // 0.68843, -0.7253
+ 0x3fe610b7551d2cde, 0xbfe72d0837efff97, // 0.68954, -0.72425
+ 0x3fe619cf86c55702, 0xbfe7245c2fcd492a, // 0.69065, -0.72319
+ 0x3fe622e44fec22ff, 0xbfe71bac960e41bf, // 0.69176, -0.72213
+ 0x3fe62bf5af2b0dfd, 0xbfe712f96c09d18d, // 0.69287, -0.72107
+ 0x3fe63503a31c1be8, 0xbfe70a42b3176d7a, // 0.69397, -0.72
+ 0x3fe63e0e2a59d7aa, 0xbfe701886c8f16e6, // 0.69508, -0.71894
+ 0x3fe64715437f535b, 0xbfe6f8ca99c95b75, // 0.69618, -0.71787
+ 0x3fe65018ed28287f, 0xbfe6f0093c1f54de, // 0.69728, -0.7168
+ 0x3fe6591925f0783e, 0xbfe6e74454eaa8ae, // 0.69838, -0.71573
+ 0x3fe66215ec74eb91, 0xbfe6de7be585881d, // 0.69947, -0.71466
+ 0x3fe66b0f3f52b386, 0xbfe6d5afef4aafcc, // 0.70057, -0.71358
+ 0x3fe674051d27896c, 0xbfe6cce07395679f, // 0.70166, -0.71251
+ 0x3fe67cf78491af10, 0xbfe6c40d73c18275, // 0.70275, -0.71143
+ 0x3fe685e6742feeef, 0xbfe6bb36f12b5e06, // 0.70385, -0.71035
+ 0x3fe68ed1eaa19c71, 0xbfe6b25ced2fe29c, // 0.70493, -0.70927
+ 0x3fe697b9e686941c, 0xbfe6a97f692c82ea, // 0.70602, -0.70819
+ 0x3fe6a09e667f3bcc, 0xbfe6a09e667f3bcc, // 0.70711, -0.70711
+ 0x3fe6a97f692c82ea, 0xbfe697b9e686941c, // 0.70819, -0.70602
+ 0x3fe6b25ced2fe29c, 0xbfe68ed1eaa19c71, // 0.70927, -0.70493
+ 0x3fe6bb36f12b5e06, 0xbfe685e6742feeef, // 0.71035, -0.70385
+ 0x3fe6c40d73c18275, 0xbfe67cf78491af10, // 0.71143, -0.70275
+ 0x3fe6cce07395679f, 0xbfe674051d27896c, // 0.71251, -0.70166
+ 0x3fe6d5afef4aafcc, 0xbfe66b0f3f52b386, // 0.71358, -0.70057
+ 0x3fe6de7be585881d, 0xbfe66215ec74eb91, // 0.71466, -0.69947
+ 0x3fe6e74454eaa8ae, 0xbfe6591925f0783e, // 0.71573, -0.69838
+ 0x3fe6f0093c1f54de, 0xbfe65018ed28287f, // 0.7168, -0.69728
+ 0x3fe6f8ca99c95b75, 0xbfe64715437f535b, // 0.71787, -0.69618
+ 0x3fe701886c8f16e6, 0xbfe63e0e2a59d7aa, // 0.71894, -0.69508
+ 0x3fe70a42b3176d7a, 0xbfe63503a31c1be8, // 0.72, -0.69397
+ 0x3fe712f96c09d18d, 0xbfe62bf5af2b0dfd, // 0.72107, -0.69287
+ 0x3fe71bac960e41bf, 0xbfe622e44fec22ff, // 0.72213, -0.69176
+ 0x3fe7245c2fcd492a, 0xbfe619cf86c55702, // 0.72319, -0.69065
+ 0x3fe72d0837efff97, 0xbfe610b7551d2cde, // 0.72425, -0.68954
+ 0x3fe735b0ad2009b2, 0xbfe6079bbc5aadfa, // 0.7253, -0.68843
+ 0x3fe73e558e079942, 0xbfe5fe7cbde56a0f, // 0.72636, -0.68732
+ 0x3fe746f6d9516d59, 0xbfe5f55a5b2576f8, // 0.72741, -0.6862
+ 0x3fe74f948da8d28d, 0xbfe5ec3495837074, // 0.72846, -0.68508
+ 0x3fe7582ea9b9a329, 0xbfe5e30b6e6877f3, // 0.72951, -0.68397
+ 0x3fe760c52c304764, 0xbfe5d9dee73e345c, // 0.73056, -0.68285
+ 0x3fe7695813b9b594, 0xbfe5d0af016ed1d4, // 0.73161, -0.68172
+ 0x3fe771e75f037261, 0xbfe5c77bbe65018c, // 0.73265, -0.6806
+ 0x3fe77a730cbb9100, 0xbfe5be451f8bf980, // 0.7337, -0.67948
+ 0x3fe782fb1b90b35b, 0xbfe5b50b264f7448, // 0.73474, -0.67835
+ 0x3fe78b7f8a320a52, 0xbfe5abcdd41bb0d8, // 0.73578, -0.67722
+ 0x3fe79400574f55e4, 0xbfe5a28d2a5d7250, // 0.73682, -0.67609
+ 0x3fe79c7d8198e56e, 0xbfe599492a81ffbc, // 0.73785, -0.67496
+ 0x3fe7a4f707bf97d2, 0xbfe59001d5f723df, // 0.73889, -0.67383
+ 0x3fe7ad6ce874dbb6, 0xbfe586b72e2b2cfd, // 0.73992, -0.67269
+ 0x3fe7b5df226aafb0, 0xbfe57d69348cec9f, // 0.74095, -0.67156
+ 0x3fe7be4db453a27c, 0xbfe57417ea8bb75c, // 0.74198, -0.67042
+ 0x3fe7c6b89ce2d333, 0xbfe56ac35197649e, // 0.74301, -0.66928
+ 0x3fe7cf1fdacbf179, 0xbfe5616b6b204e6e, // 0.74403, -0.66814
+ 0x3fe7d7836cc33db2, 0xbfe5581038975137, // 0.74506, -0.667
+ 0x3fe7dfe3517d8937, 0xbfe54eb1bb6dcb8f, // 0.74608, -0.66586
+ 0x3fe7e83f87b03686, 0xbfe5454ff5159dfb, // 0.7471, -0.66471
+ 0x3fe7f0980e113978, 0xbfe53beae7012abe, // 0.74812, -0.66356
+ 0x3fe7f8ece3571771, 0xbfe5328292a35596, // 0.74914, -0.66242
+ 0x3fe8013e0638e795, 0xbfe52916f96f8388, // 0.75015, -0.66127
+ 0x3fe8098b756e52fa, 0xbfe51fa81cd99aa6, // 0.75117, -0.66011
+ 0x3fe811d52faf94dc, 0xbfe51635fe5601d7, // 0.75218, -0.65896
+ 0x3fe81a1b33b57acc, 0xbfe50cc09f59a09b, // 0.75319, -0.65781
+ 0x3fe8225d803964e5, 0xbfe503480159ded2, // 0.75419, -0.65665
+ 0x3fe82a9c13f545ff, 0xbfe4f9cc25cca486, // 0.7552, -0.65549
+ 0x3fe832d6eda3a3e0, 0xbfe4f04d0e2859aa, // 0.75621, -0.65433
+ 0x3fe83b0e0bff976e, 0xbfe4e6cabbe3e5e9, // 0.75721, -0.65317
+ 0x3fe843416dc4cce2, 0xbfe4dd453076b064, // 0.75821, -0.65201
+ 0x3fe84b7111af83f9, 0xbfe4d3bc6d589f80, // 0.75921, -0.65085
+ 0x3fe8539cf67c9029, 0xbfe4ca30740218a3, // 0.76021, -0.64968
+ 0x3fe85bc51ae958cc, 0xbfe4c0a145ec0004, // 0.7612, -0.64851
+ 0x3fe863e97db3d95a, 0xbfe4b70ee48fb869, // 0.7622, -0.64735
+ 0x3fe86c0a1d9aa195, 0xbfe4ad79516722f0, // 0.76319, -0.64618
+ 0x3fe87426f95cd5bd, 0xbfe4a3e08dec9ed6, // 0.76418, -0.645
+ 0x3fe87c400fba2ebf, 0xbfe49a449b9b0938, // 0.76517, -0.64383
+ 0x3fe884555f72fa6b, 0xbfe490a57bedbcdf, // 0.76615, -0.64266
+ 0x3fe88c66e7481ba1, 0xbfe48703306091fe, // 0.76714, -0.64148
+ 0x3fe89474a5fb0a84, 0xbfe47d5dba6fde01, // 0.76812, -0.6403
+ 0x3fe89c7e9a4dd4ab, 0xbfe473b51b987347, // 0.7691, -0.63912
+ 0x3fe8a484c3031d50, 0xbfe46a095557a0f1, // 0.77008, -0.63794
+ 0x3fe8ac871ede1d88, 0xbfe4605a692b32a2, // 0.77106, -0.63676
+ 0x3fe8b485aca2a468, 0xbfe456a858917046, // 0.77204, -0.63558
+ 0x3fe8bc806b151741, 0xbfe44cf325091dd6, // 0.77301, -0.63439
+ 0x3fe8c47758fa71cb, 0xbfe4433ad0117b1d, // 0.77398, -0.63321
+ 0x3fe8cc6a75184655, 0xbfe4397f5b2a4380, // 0.77495, -0.63202
+ 0x3fe8d459be34bdfa, 0xbfe42fc0c7d3adbb, // 0.77592, -0.63083
+ 0x3fe8dc45331698cc, 0xbfe425ff178e6bb1, // 0.77689, -0.62964
+ 0x3fe8e42cd2852e0a, 0xbfe41c3a4bdbaa26, // 0.77785, -0.62845
+ 0x3fe8ec109b486c49, 0xbfe41272663d108c, // 0.77882, -0.62725
+ 0x3fe8f3f08c28d9ac, 0xbfe408a76834c0c0, // 0.77978, -0.62606
+ 0x3fe8fbcca3ef940d, 0xbfe3fed9534556d4, // 0.78074, -0.62486
+ 0x3fe903a4e1665133, 0xbfe3f50828f1e8d2, // 0.78169, -0.62366
+ 0x3fe90b7943575efe, 0xbfe3eb33eabe0680, // 0.78265, -0.62246
+ 0x3fe91349c88da398, 0xbfe3e15c9a2db922, // 0.7836, -0.62126
+ 0x3fe91b166fd49da2, 0xbfe3d78238c58343, // 0.78456, -0.62006
+ 0x3fe922df37f8646a, 0xbfe3cda4c80a6076, // 0.78551, -0.61885
+ 0x3fe92aa41fc5a815, 0xbfe3c3c44981c517, // 0.78646, -0.61765
+ 0x3fe932652609b1cf, 0xbfe3b9e0beb19e18, // 0.7874, -0.61644
+ 0x3fe93a22499263fc, 0xbfe3affa292050b9, // 0.78835, -0.61523
+ 0x3fe941db892e3a65, 0xbfe3a6108a54ba58, // 0.78929, -0.61402
+ 0x3fe94990e3ac4a6c, 0xbfe39c23e3d63029, // 0.79023, -0.61281
+ 0x3fe9514257dc4335, 0xbfe39234372c7f04, // 0.79117, -0.6116
+ 0x3fe958efe48e6dd7, 0xbfe3884185dfeb22, // 0.79211, -0.61038
+ 0x3fe960998893ad8c, 0xbfe37e4bd1792fe2, // 0.79304, -0.60917
+ 0x3fe9683f42bd7fe1, 0xbfe374531b817f8d, // 0.79398, -0.60795
+ 0x3fe96fe111ddfce0, 0xbfe36a576582831b, // 0.79491, -0.60673
+ 0x3fe9777ef4c7d742, 0xbfe36058b10659f3, // 0.79584, -0.60551
+ 0x3fe97f18ea4e5c9e, 0xbfe35656ff9799ae, // 0.79676, -0.60429
+ 0x3fe986aef1457594, 0xbfe34c5252c14de1, // 0.79769, -0.60307
+ 0x3fe98e410881a600, 0xbfe3424aac0ef7d6, // 0.79861, -0.60184
+ 0x3fe995cf2ed80d22, 0xbfe338400d0c8e57, // 0.79954, -0.60062
+ 0x3fe99d59631e65d5, 0xbfe32e3277467d6b, // 0.80046, -0.59939
+ 0x3fe9a4dfa42b06b2, 0xbfe32421ec49a620, // 0.80138, -0.59816
+ 0x3fe9ac61f0d4e247, 0xbfe31a0e6da35e44, // 0.80229, -0.59693
+ 0x3fe9b3e047f38741, 0xbfe30ff7fce17035, // 0.80321, -0.5957
+ 0x3fe9bb5aa85f2098, 0xbfe305de9b921a94, // 0.80412, -0.59447
+ 0x3fe9c2d110f075c3, 0xbfe2fbc24b441015, // 0.80503, -0.59323
+ 0x3fe9ca438080eadb, 0xbfe2f1a30d86773a, // 0.80594, -0.592
+ 0x3fe9d1b1f5ea80d6, 0xbfe2e780e3e8ea16, // 0.80685, -0.59076
+ 0x3fe9d91c7007d5a6, 0xbfe2dd5bcffb7616, // 0.80775, -0.58952
+ 0x3fe9e082edb42472, 0xbfe2d333d34e9bb7, // 0.80866, -0.58828
+ 0x3fe9e7e56dcb45bd, 0xbfe2c908ef734e57, // 0.80956, -0.58704
+ 0x3fe9ef43ef29af94, 0xbfe2bedb25faf3ea, // 0.81046, -0.5858
+ 0x3fe9f69e70ac75bc, 0xbfe2b4aa787764c4, // 0.81135, -0.58455
+ 0x3fe9fdf4f13149de, 0xbfe2aa76e87aeb58, // 0.81225, -0.58331
+ 0x3fea05476f967bb5, 0xbfe2a040779843fb, // 0.81314, -0.58206
+ 0x3fea0c95eabaf937, 0xbfe2960727629ca8, // 0.81404, -0.58081
+ 0x3fea13e0617e4ec7, 0xbfe28bcaf96d94ba, // 0.81493, -0.57956
+ 0x3fea1b26d2c0a75e, 0xbfe2818bef4d3cba, // 0.81581, -0.57831
+ 0x3fea22693d62ccb9, 0xbfe2774a0a961612, // 0.8167, -0.57706
+ 0x3fea29a7a0462782, 0xbfe26d054cdd12df, // 0.81758, -0.57581
+ 0x3fea30e1fa4cbf81, 0xbfe262bdb7b795a2, // 0.81847, -0.57455
+ 0x3fea38184a593bc6, 0xbfe258734cbb7110, // 0.81935, -0.5733
+ 0x3fea3f4a8f4ee2d2, 0xbfe24e260d7ee7c9, // 0.82023, -0.57204
+ 0x3fea4678c8119ac8, 0xbfe243d5fb98ac1f, // 0.8211, -0.57078
+ 0x3fea4da2f385e997, 0xbfe23983189fdfd5, // 0.82198, -0.56952
+ 0x3fea54c91090f524, 0xbfe22f2d662c13e1, // 0.82285, -0.56826
+ 0x3fea5beb1e188375, 0xbfe224d4e5d5482e, // 0.82372, -0.567
+ 0x3fea63091b02fae2, 0xbfe21a799933eb58, // 0.82459, -0.56573
+ 0x3fea6a230637623b, 0xbfe2101b81e0da78, // 0.82546, -0.56447
+ 0x3fea7138de9d60f5, 0xbfe205baa17560d6, // 0.82632, -0.5632
+ 0x3fea784aa31d3f55, 0xbfe1fb56f98b37b8, // 0.82718, -0.56193
+ 0x3fea7f58529fe69d, 0xbfe1f0f08bbc861b, // 0.82805, -0.56066
+ 0x3fea8661ec0ee133, 0xbfe1e68759a3e074, // 0.8289, -0.55939
+ 0x3fea8d676e545ad2, 0xbfe1dc1b64dc4872, // 0.82976, -0.55812
+ 0x3fea9468d85b20ae, 0xbfe1d1acaf012cc2, // 0.83062, -0.55685
+ 0x3fea9b66290ea1a3, 0xbfe1c73b39ae68c8, // 0.83147, -0.55557
+ 0x3feaa25f5f5aee60, 0xbfe1bcc706804467, // 0.83232, -0.55429
+ 0x3feaa9547a2cb98e, 0xbfe1b250171373be, // 0.83317, -0.55302
+ 0x3feab045787157ff, 0xbfe1a7d66d0516e6, // 0.83402, -0.55174
+ 0x3feab7325916c0d4, 0xbfe19d5a09f2b9b8, // 0.83486, -0.55046
+ 0x3feabe1b1b0b8dac, 0xbfe192daef7a5386, // 0.83571, -0.54918
+ 0x3feac4ffbd3efac8, 0xbfe188591f3a46e5, // 0.83655, -0.54789
+ 0x3feacbe03ea0e73b, 0xbfe17dd49ad16161, // 0.83739, -0.54661
+ 0x3fead2bc9e21d511, 0xbfe1734d63dedb49, // 0.83822, -0.54532
+ 0x3fead994dab2e979, 0xbfe168c37c025764, // 0.83906, -0.54404
+ 0x3feae068f345ecef, 0xbfe15e36e4dbe2bc, // 0.83989, -0.54275
+ 0x3feae738e6cd4b67, 0xbfe153a7a00bf453, // 0.84073, -0.54146
+ 0x3feaee04b43c1474, 0xbfe14915af336ceb, // 0.84155, -0.54017
+ 0x3feaf4cc5a85fb73, 0xbfe13e8113f396c1, // 0.84238, -0.53888
+ 0x3feafb8fd89f57b6, 0xbfe133e9cfee254e, // 0.84321, -0.53759
+ 0x3feb024f2d7d24a9, 0xbfe1294fe4c5350a, // 0.84403, -0.53629
+ 0x3feb090a58150200, 0xbfe11eb3541b4b22, // 0.84485, -0.535
+ 0x3feb0fc1575d33db, 0xbfe114141f935545, // 0.84567, -0.5337
+ 0x3feb16742a4ca2f5, 0xbfe1097248d0a956, // 0.84649, -0.5324
+ 0x3feb1d22cfdadcc6, 0xbfe0fecdd1770537, // 0.84731, -0.5311
+ 0x3feb23cd470013b4, 0xbfe0f426bb2a8e7d, // 0.84812, -0.5298
+ 0x3feb2a738eb51f33, 0xbfe0e97d078fd23b, // 0.84893, -0.5285
+ 0x3feb3115a5f37bf4, 0xbfe0ded0b84bc4b5, // 0.84974, -0.5272
+ 0x3feb37b38bb54c09, 0xbfe0d421cf03c12b, // 0.85055, -0.5259
+ 0x3feb3e4d3ef55712, 0xbfe0c9704d5d898f, // 0.85136, -0.52459
+ 0x3feb44e2beaf0a61, 0xbfe0bebc34ff4646, // 0.85216, -0.52328
+ 0x3feb4b7409de7925, 0xbfe0b405878f85ec, // 0.85296, -0.52198
+ 0x3feb52011f805c92, 0xbfe0a94c46b53d0b, // 0.85376, -0.52067
+ 0x3feb5889fe921405, 0xbfe09e907417c5e1, // 0.85456, -0.51936
+ 0x3feb5f0ea611a532, 0xbfe093d2115ee018, // 0.85535, -0.51804
+ 0x3feb658f14fdbc47, 0xbfe089112032b08c, // 0.85615, -0.51673
+ 0x3feb6c0b4a55ac17, 0xbfe07e4da23bc102, // 0.85694, -0.51542
+ 0x3feb728345196e3e, 0xbfe073879922ffed, // 0.85773, -0.5141
+ 0x3feb78f70449a34b, 0xbfe068bf0691c028, // 0.85852, -0.51279
+ 0x3feb7f6686e792ea, 0xbfe05df3ec31b8b6, // 0.8593, -0.51147
+ 0x3feb85d1cbf52c02, 0xbfe053264bad0483, // 0.86009, -0.51015
+ 0x3feb8c38d27504e9, 0xbfe0485626ae221a, // 0.86087, -0.50883
+ 0x3feb929b996a5b7f, 0xbfe03d837edff370, // 0.86165, -0.50751
+ 0x3feb98fa1fd9155e, 0xbfe032ae55edbd95, // 0.86242, -0.50619
+ 0x3feb9f5464c5bffc, 0xbfe027d6ad83287e, // 0.8632, -0.50486
+ 0x3feba5aa673590d2, 0xbfe01cfc874c3eb7, // 0.86397, -0.50354
+ 0x3febabfc262e6586, 0xbfe0121fe4f56d2c, // 0.86474, -0.50221
+ 0x3febb249a0b6c40d, 0xbfe00740c82b82e0, // 0.86551, -0.50089
+ 0x3febb892d5d5dad5, 0xbfdff8be6537615e, // 0.86628, -0.49956
+ 0x3febbed7c49380ea, 0xbfdfe2f64be7120f, // 0.86705, -0.49823
+ 0x3febc5186bf8361d, 0xbfdfcd2947c1ff57, // 0.86781, -0.4969
+ 0x3febcb54cb0d2327, 0xbfdfb7575c24d2de, // 0.86857, -0.49557
+ 0x3febd18ce0dc19d6, 0xbfdfa1808c6cf7e0, // 0.86933, -0.49423
+ 0x3febd7c0ac6f952a, 0xbfdf8ba4dbf89aba, // 0.87009, -0.4929
+ 0x3febddf02cd2b983, 0xbfdf75c44e26a852, // 0.87084, -0.49156
+ 0x3febe41b611154c1, 0xbfdf5fdee656cda3, // 0.8716, -0.49023
+ 0x3febea424837de6d, 0xbfdf49f4a7e97729, // 0.87235, -0.48889
+ 0x3febf064e15377dd, 0xbfdf3405963fd068, // 0.87309, -0.48755
+ 0x3febf6832b71ec5b, 0xbfdf1e11b4bbc35c, // 0.87384, -0.48621
+ 0x3febfc9d25a1b147, 0xbfdf081906bff7fd, // 0.87459, -0.48487
+ 0x3fec02b2cef1e641, 0xbfdef21b8fafd3b5, // 0.87533, -0.48353
+ 0x3fec08c426725549, 0xbfdedc1952ef78d5, // 0.87607, -0.48218
+ 0x3fec0ed12b3372e9, 0xbfdec61253e3c61b, // 0.87681, -0.48084
+ 0x3fec14d9dc465e58, 0xbfdeb00695f25620, // 0.87755, -0.47949
+ 0x3fec1ade38bce19b, 0xbfde99f61c817eda, // 0.87828, -0.47815
+ 0x3fec20de3fa971b0, 0xbfde83e0eaf85113, // 0.87901, -0.4768
+ 0x3fec26d9f01f2eaf, 0xbfde6dc704be97e2, // 0.87974, -0.47545
+ 0x3fec2cd14931e3f1, 0xbfde57a86d3cd824, // 0.88047, -0.4741
+ 0x3fec32c449f60831, 0xbfde418527dc4ffa, // 0.8812, -0.47275
+ 0x3fec38b2f180bdb1, 0xbfde2b5d3806f63b, // 0.88192, -0.4714
+ 0x3fec3e9d3ee7d262, 0xbfde1530a12779f4, // 0.88264, -0.47004
+ 0x3fec44833141c004, 0xbfddfeff66a941de, // 0.88336, -0.46869
+ 0x3fec4a64c7a5ac4c, 0xbfdde8c98bf86bd6, // 0.88408, -0.46733
+ 0x3fec5042012b6907, 0xbfddd28f1481cc58, // 0.8848, -0.46598
+ 0x3fec561adceb743e, 0xbfddbc5003b2edf8, // 0.88551, -0.46462
+ 0x3fec5bef59fef85a, 0xbfdda60c5cfa10d8, // 0.88622, -0.46326
+ 0x3fec61bf777fcc48, 0xbfdd8fc423c62a25, // 0.88693, -0.4619
+ 0x3fec678b3488739b, 0xbfdd79775b86e389, // 0.88764, -0.46054
+ 0x3fec6d5290341eb2, 0xbfdd632607ac9aa9, // 0.88835, -0.45918
+ 0x3fec7315899eaad7, 0xbfdd4cd02ba8609c, // 0.88905, -0.45781
+ 0x3fec78d41fe4a267, 0xbfdd3675caebf962, // 0.88975, -0.45645
+ 0x3fec7e8e52233cf3, 0xbfdd2016e8e9db5b, // 0.89045, -0.45508
+ 0x3fec84441f785f61, 0xbfdd09b389152ec1, // 0.89115, -0.45372
+ 0x3fec89f587029c13, 0xbfdcf34baee1cd21, // 0.89184, -0.45235
+ 0x3fec8fa287e13305, 0xbfdcdcdf5dc440ce, // 0.89253, -0.45098
+ 0x3fec954b213411f5, 0xbfdcc66e9931c45d, // 0.89322, -0.44961
+ 0x3fec9aef521bd480, 0xbfdcaff964a0421d, // 0.89391, -0.44824
+ 0x3feca08f19b9c449, 0xbfdc997fc3865388, // 0.8946, -0.44687
+ 0x3feca62a772fd919, 0xbfdc8301b95b40c2, // 0.89528, -0.4455
+ 0x3fecabc169a0b901, 0xbfdc6c7f4997000a, // 0.89597, -0.44412
+ 0x3fecb153f02fb87d, 0xbfdc55f877b23537, // 0.89665, -0.44275
+ 0x3fecb6e20a00da99, 0xbfdc3f6d47263129, // 0.89732, -0.44137
+ 0x3fecbc6bb638d10b, 0xbfdc28ddbb6cf145, // 0.898, -0.43999
+ 0x3fecc1f0f3fcfc5c, 0xbfdc1249d8011ee7, // 0.89867, -0.43862
+ 0x3fecc771c2736c09, 0xbfdbfbb1a05e0edc, // 0.89935, -0.43724
+ 0x3fecccee20c2de9f, 0xbfdbe51517ffc0d9, // 0.90002, -0.43586
+ 0x3fecd2660e12c1e6, 0xbfdbce744262deee, // 0.90068, -0.43448
+ 0x3fecd7d9898b32f6, 0xbfdbb7cf2304bd01, // 0.90135, -0.43309
+ 0x3fecdd489254fe65, 0xbfdba125bd63583e, // 0.90201, -0.43171
+ 0x3fece2b32799a060, 0xbfdb8a7814fd5693, // 0.90267, -0.43033
+ 0x3fece819488344ce, 0xbfdb73c62d520624, // 0.90333, -0.42894
+ 0x3feced7af43cc773, 0xbfdb5d1009e15cc0, // 0.90399, -0.42756
+ 0x3fecf2d829f1b40e, 0xbfdb4655ae2bf757, // 0.90464, -0.42617
+ 0x3fecf830e8ce467b, 0xbfdb2f971db31972, // 0.9053, -0.42478
+ 0x3fecfd852fff6ad4, 0xbfdb18d45bf8aca6, // 0.90595, -0.42339
+ 0x3fed02d4feb2bd92, 0xbfdb020d6c7f4009, // 0.9066, -0.422
+ 0x3fed082054168bac, 0xbfdaeb4252ca07ab, // 0.90724, -0.42061
+ 0x3fed0d672f59d2b9, 0xbfdad473125cdc08, // 0.90789, -0.41922
+ 0x3fed12a98fac410c, 0xbfdabd9faebc3980, // 0.90853, -0.41782
+ 0x3fed17e7743e35dc, 0xbfdaa6c82b6d3fc9, // 0.90917, -0.41643
+ 0x3fed1d20dc40c15c, 0xbfda8fec8bf5b166, // 0.90981, -0.41503
+ 0x3fed2255c6e5a4e1, 0xbfda790cd3dbf31a, // 0.91044, -0.41364
+ 0x3fed2786335f52fc, 0xbfda622906a70b63, // 0.91107, -0.41224
+ 0x3fed2cb220e0ef9f, 0xbfda4b4127dea1e4, // 0.91171, -0.41084
+ 0x3fed31d98e9e503a, 0xbfda34553b0afee5, // 0.91234, -0.40944
+ 0x3fed36fc7bcbfbdc, 0xbfda1d6543b50ac0, // 0.91296, -0.40804
+ 0x3fed3c1ae79f2b4e, 0xbfda067145664d57, // 0.91359, -0.40664
+ 0x3fed4134d14dc93a, 0xbfd9ef7943a8ed8a, // 0.91421, -0.40524
+ 0x3fed464a380e7242, 0xbfd9d87d4207b0ab, // 0.91483, -0.40384
+ 0x3fed4b5b1b187524, 0xbfd9c17d440df9f2, // 0.91545, -0.40243
+ 0x3fed506779a3d2d9, 0xbfd9aa794d47c9ee, // 0.91606, -0.40103
+ 0x3fed556f52e93eb1, 0xbfd993716141bdfe, // 0.91668, -0.39962
+ 0x3fed5a72a6221e73, 0xbfd97c6583890fc2, // 0.91729, -0.39822
+ 0x3fed5f7172888a7f, 0xbfd96555b7ab948f, // 0.9179, -0.39681
+ 0x3fed646bb7574de5, 0xbfd94e420137bce3, // 0.91851, -0.3954
+ 0x3fed696173c9e68b, 0xbfd9372a63bc93d7, // 0.91911, -0.39399
+ 0x3fed6e52a71c8547, 0xbfd9200ee2c9be97, // 0.91972, -0.39258
+ 0x3fed733f508c0dff, 0xbfd908ef81ef7bd1, // 0.92032, -0.39117
+ 0x3fed78276f5617c6, 0xbfd8f1cc44bea329, // 0.92092, -0.38976
+ 0x3fed7d0b02b8ecf9, 0xbfd8daa52ec8a4af, // 0.92151, -0.38835
+ 0x3fed81ea09f38b63, 0xbfd8c37a439f884f, // 0.92211, -0.38693
+ 0x3fed86c48445a450, 0xbfd8ac4b86d5ed44, // 0.9227, -0.38552
+ 0x3fed8b9a70ef9cb4, 0xbfd89518fbff098e, // 0.92329, -0.3841
+ 0x3fed906bcf328d46, 0xbfd87de2a6aea963, // 0.92388, -0.38268
+ 0x3fed95389e50429b, 0xbfd866a88a792ea0, // 0.92447, -0.38127
+ 0x3fed9a00dd8b3d46, 0xbfd84f6aaaf3903f, // 0.92505, -0.37985
+ 0x3fed9ec48c26b1f3, 0xbfd838290bb359c8, // 0.92563, -0.37843
+ 0x3feda383a9668988, 0xbfd820e3b04eaac4, // 0.92621, -0.37701
+ 0x3feda83e348f613b, 0xbfd8099a9c5c362d, // 0.92679, -0.37559
+ 0x3fedacf42ce68ab9, 0xbfd7f24dd37341e3, // 0.92736, -0.37416
+ 0x3fedb1a591b20c38, 0xbfd7dafd592ba621, // 0.92794, -0.37274
+ 0x3fedb6526238a09b, 0xbfd7c3a9311dcce7, // 0.92851, -0.37132
+ 0x3fedbafa9dc1b78d, 0xbfd7ac515ee2b172, // 0.92907, -0.36989
+ 0x3fedbf9e4395759a, 0xbfd794f5e613dfae, // 0.92964, -0.36847
+ 0x3fedc43d52fcb453, 0xbfd77d96ca4b73a6, // 0.93021, -0.36704
+ 0x3fedc8d7cb410260, 0xbfd766340f2418f6, // 0.93077, -0.36561
+ 0x3fedcd6dabaca3a5, 0xbfd74ecdb8390a3e, // 0.93133, -0.36418
+ 0x3fedd1fef38a915a, 0xbfd73763c9261092, // 0.93188, -0.36276
+ 0x3fedd68ba2267a25, 0xbfd71ff6458782ec, // 0.93244, -0.36133
+ 0x3feddb13b6ccc23d, 0xbfd7088530fa459e, // 0.93299, -0.3599
+ 0x3feddf9730ca837b, 0xbfd6f1108f1bc9c5, // 0.93354, -0.35846
+ 0x3fede4160f6d8d81, 0xbfd6d998638a0cb5, // 0.93409, -0.35703
+ 0x3fede890520465ce, 0xbfd6c21cb1e39771, // 0.93464, -0.3556
+ 0x3feded05f7de47da, 0xbfd6aa9d7dc77e16, // 0.93518, -0.35416
+ 0x3fedf177004b2534, 0xbfd6931acad55f51, // 0.93573, -0.35273
+ 0x3fedf5e36a9ba59c, 0xbfd67b949cad63ca, // 0.93627, -0.35129
+ 0x3fedfa4b3621271d, 0xbfd6640af6f03d9e, // 0.9368, -0.34986
+ 0x3fedfeae622dbe2b, 0xbfd64c7ddd3f27c6, // 0.93734, -0.34842
+ 0x3fee030cee1435b8, 0xbfd634ed533be58e, // 0.93787, -0.34698
+ 0x3fee0766d9280f54, 0xbfd61d595c88c203, // 0.9384, -0.34554
+ 0x3fee0bbc22bd8349, 0xbfd605c1fcc88f63, // 0.93893, -0.3441
+ 0x3fee100cca2980ac, 0xbfd5ee27379ea693, // 0.93946, -0.34266
+ 0x3fee1458cec1ad83, 0xbfd5d68910aee686, // 0.93998, -0.34122
+ 0x3fee18a02fdc66d9, 0xbfd5bee78b9db3b6, // 0.94051, -0.33978
+ 0x3fee1ce2ecd0c0d8, 0xbfd5a742ac0ff78d, // 0.94103, -0.33833
+ 0x3fee212104f686e5, 0xbfd58f9a75ab1fdd, // 0.94154, -0.33689
+ 0x3fee255a77a63bb8, 0xbfd577eeec151e47, // 0.94206, -0.33545
+ 0x3fee298f4439197a, 0xbfd5604012f467b4, // 0.94257, -0.334
+ 0x3fee2dbf6a0911d9, 0xbfd5488dedeff3be, // 0.94308, -0.33255
+ 0x3fee31eae870ce25, 0xbfd530d880af3c24, // 0.94359, -0.33111
+ 0x3fee3611becbaf69, 0xbfd5191fceda3c35, // 0.9441, -0.32966
+ 0x3fee3a33ec75ce85, 0xbfd50163dc197047, // 0.9446, -0.32821
+ 0x3fee3e5170cbfc46, 0xbfd4e9a4ac15d520, // 0.94511, -0.32676
+ 0x3fee426a4b2bc17e, 0xbfd4d1e24278e76a, // 0.94561, -0.32531
+ 0x3fee467e7af35f23, 0xbfd4ba1ca2eca31c, // 0.94611, -0.32386
+ 0x3fee4a8dff81ce5e, 0xbfd4a253d11b82f3, // 0.9466, -0.32241
+ 0x3fee4e98d836c0af, 0xbfd48a87d0b07fd7, // 0.94709, -0.32096
+ 0x3fee529f04729ffc, 0xbfd472b8a5571054, // 0.94759, -0.3195
+ 0x3fee56a083968eb1, 0xbfd45ae652bb2800, // 0.94807, -0.31805
+ 0x3fee5a9d550467d3, 0xbfd44310dc8936f0, // 0.94856, -0.31659
+ 0x3fee5e95781ebf1c, 0xbfd42b38466e2928, // 0.94905, -0.31514
+ 0x3fee6288ec48e112, 0xbfd4135c94176602, // 0.94953, -0.31368
+ 0x3fee6677b0e6d31e, 0xbfd3fb7dc932cfa4, // 0.95001, -0.31222
+ 0x3fee6a61c55d53a7, 0xbfd3e39be96ec271, // 0.95049, -0.31077
+ 0x3fee6e472911da27, 0xbfd3cbb6f87a146e, // 0.95096, -0.30931
+ 0x3fee7227db6a9744, 0xbfd3b3cefa0414b7, // 0.95144, -0.30785
+ 0x3fee7603dbce74e9, 0xbfd39be3f1bc8aef, // 0.95191, -0.30639
+ 0x3fee79db29a5165a, 0xbfd383f5e353b6aa, // 0.95238, -0.30493
+ 0x3fee7dadc456d850, 0xbfd36c04d27a4edf, // 0.95284, -0.30347
+ 0x3fee817bab4cd10d, 0xbfd35410c2e18152, // 0.95331, -0.30201
+ 0x3fee8544ddf0d075, 0xbfd33c19b83af207, // 0.95377, -0.30054
+ 0x3fee89095bad6025, 0xbfd3241fb638baaf, // 0.95423, -0.29908
+ 0x3fee8cc923edc388, 0xbfd30c22c08d6a13, // 0.95469, -0.29762
+ 0x3fee9084361df7f3, 0xbfd2f422daec0386, // 0.95514, -0.29615
+ 0x3fee943a91aab4b4, 0xbfd2dc200907fe51, // 0.95559, -0.29469
+ 0x3fee97ec36016b30, 0xbfd2c41a4e954520, // 0.95605, -0.29322
+ 0x3fee9b99229046f8, 0xbfd2ac11af483572, // 0.95649, -0.29175
+ 0x3fee9f4156c62dda, 0xbfd294062ed59f05, // 0.95694, -0.29028
+ 0x3feea2e4d212c000, 0xbfd27bf7d0f2c346, // 0.95738, -0.28882
+ 0x3feea68393e65800, 0xbfd263e6995554ba, // 0.95783, -0.28735
+ 0x3feeaa1d9bb20af3, 0xbfd24bd28bb37672, // 0.95827, -0.28588
+ 0x3feeadb2e8e7a88e, 0xbfd233bbabc3bb72, // 0.9587, -0.28441
+ 0x3feeb1437af9bb34, 0xbfd21ba1fd3d2623, // 0.95914, -0.28294
+ 0x3feeb4cf515b8811, 0xbfd2038583d727bd, // 0.95957, -0.28146
+ 0x3feeb8566b810f2a, 0xbfd1eb6643499fbb, // 0.96, -0.27999
+ 0x3feebbd8c8df0b74, 0xbfd1d3443f4cdb3d, // 0.96043, -0.27852
+ 0x3feebf5668eaf2ef, 0xbfd1bb1f7b999480, // 0.96086, -0.27705
+ 0x3feec2cf4b1af6b2, 0xbfd1a2f7fbe8f243, // 0.96128, -0.27557
+ 0x3feec6436ee60309, 0xbfd18acdc3f4873a, // 0.9617, -0.2741
+ 0x3feec9b2d3c3bf84, 0xbfd172a0d7765177, // 0.96212, -0.27262
+ 0x3feecd1d792c8f10, 0xbfd15a713a28b9d9, // 0.96254, -0.27115
+ 0x3feed0835e999009, 0xbfd1423eefc69378, // 0.96295, -0.26967
+ 0x3feed3e483849c51, 0xbfd12a09fc0b1b12, // 0.96337, -0.26819
+ 0x3feed740e7684963, 0xbfd111d262b1f677, // 0.96378, -0.26671
+ 0x3feeda9889bfe86a, 0xbfd0f998277733f7, // 0.96418, -0.26523
+ 0x3feeddeb6a078651, 0xbfd0e15b4e1749cd, // 0.96459, -0.26375
+ 0x3feee13987bbebdc, 0xbfd0c91bda4f158d, // 0.96499, -0.26227
+ 0x3feee482e25a9dbc, 0xbfd0b0d9cfdbdb90, // 0.96539, -0.26079
+ 0x3feee7c77961dc9e, 0xbfd09895327b465e, // 0.96579, -0.25931
+ 0x3feeeb074c50a544, 0xbfd0804e05eb661e, // 0.96619, -0.25783
+ 0x3feeee425aa6b09a, 0xbfd068044deab002, // 0.96658, -0.25635
+ 0x3feef178a3e473c2, 0xbfd04fb80e37fdae, // 0.96698, -0.25487
+ 0x3feef4aa278b2032, 0xbfd037694a928cac, // 0.96737, -0.25338
+ 0x3feef7d6e51ca3c0, 0xbfd01f1806b9fdd2, // 0.96775, -0.2519
+ 0x3feefafedc1ba8b7, 0xbfd006c4466e54af, // 0.96814, -0.25041
+ 0x3feefe220c0b95ec, 0xbfcfdcdc1adfedf8, // 0.96852, -0.24893
+ 0x3fef014074708ed3, 0xbfcfac2abeff57ff, // 0.9689, -0.24744
+ 0x3fef045a14cf738c, 0xbfcf7b7480bd3801, // 0.96928, -0.24596
+ 0x3fef076eecade0fa, 0xbfcf4ab9679c9f5c, // 0.96966, -0.24447
+ 0x3fef0a7efb9230d7, 0xbfcf19f97b215f1a, // 0.97003, -0.24298
+ 0x3fef0d8a410379c5, 0xbfcee934c2d006c7, // 0.9704, -0.24149
+ 0x3fef1090bc898f5f, 0xbfceb86b462de348, // 0.97077, -0.24
+ 0x3fef13926dad024e, 0xbfce879d0cc0fdaf, // 0.97114, -0.23851
+ 0x3fef168f53f7205d, 0xbfce56ca1e101a1b, // 0.9715, -0.23702
+ 0x3fef19876ef1f486, 0xbfce25f281a2b684, // 0.97187, -0.23553
+ 0x3fef1c7abe284708, 0xbfcdf5163f01099a, // 0.97223, -0.23404
+ 0x3fef1f6941259d7a, 0xbfcdc4355db40195, // 0.97258, -0.23255
+ 0x3fef2252f7763ada, 0xbfcd934fe5454311, // 0.97294, -0.23106
+ 0x3fef2537e0a71f9f, 0xbfcd6265dd3f27e3, // 0.97329, -0.22957
+ 0x3fef2817fc4609ce, 0xbfcd31774d2cbdee, // 0.97364, -0.22807
+ 0x3fef2af349e17507, 0xbfcd00843c99c5f9, // 0.97399, -0.22658
+ 0x3fef2dc9c9089a9d, 0xbfcccf8cb312b286, // 0.97434, -0.22508
+ 0x3fef309b794b719f, 0xbfcc9e90b824a6a9, // 0.97468, -0.22359
+ 0x3fef33685a3aaef0, 0xbfcc6d90535d74dc, // 0.97503, -0.22209
+ 0x3fef36306b67c556, 0xbfcc3c8b8c4b9dd7, // 0.97536, -0.2206
+ 0x3fef38f3ac64e589, 0xbfcc0b826a7e4f63, // 0.9757, -0.2191
+ 0x3fef3bb21cc4fe47, 0xbfcbda74f5856330, // 0.97604, -0.2176
+ 0x3fef3e6bbc1bbc65, 0xbfcba96334f15dad, // 0.97637, -0.21611
+ 0x3fef412089fd8adc, 0xbfcb784d30536cda, // 0.9767, -0.21461
+ 0x3fef43d085ff92dd, 0xbfcb4732ef3d6722, // 0.97703, -0.21311
+ 0x3fef467bafb7bbe0, 0xbfcb16147941ca2a, // 0.97735, -0.21161
+ 0x3fef492206bcabb4, 0xbfcae4f1d5f3b9ab, // 0.97768, -0.21011
+ 0x3fef4bc38aa5c694, 0xbfcab3cb0ce6fe44, // 0.978, -0.20861
+ 0x3fef4e603b0b2f2d, 0xbfca82a025b00451, // 0.97832, -0.20711
+ 0x3fef50f81785c6b9, 0xbfca517127e3dabc, // 0.97863, -0.20561
+ 0x3fef538b1faf2d07, 0xbfca203e1b1831da, // 0.97895, -0.20411
+ 0x3fef56195321c090, 0xbfc9ef0706e35a35, // 0.97926, -0.20261
+ 0x3fef58a2b1789e84, 0xbfc9bdcbf2dc4366, // 0.97957, -0.2011
+ 0x3fef5b273a4fa2d9, 0xbfc98c8ce69a7aec, // 0.97988, -0.1996
+ 0x3fef5da6ed43685d, 0xbfc95b49e9b62af9, // 0.98018, -0.1981
+ 0x3fef6021c9f148c2, 0xbfc92a0303c8194f, // 0.98048, -0.19659
+ 0x3fef6297cff75cb0, 0xbfc8f8b83c69a60a, // 0.98079, -0.19509
+ 0x3fef6508fef47bd5, 0xbfc8c7699b34ca7e, // 0.98108, -0.19359
+ 0x3fef677556883cee, 0xbfc8961727c41804, // 0.98138, -0.19208
+ 0x3fef69dcd652f5de, 0xbfc864c0e9b2b6cf, // 0.98167, -0.19057
+ 0x3fef6c3f7df5bbb7, 0xbfc83366e89c64c5, // 0.98196, -0.18907
+ 0x3fef6e9d4d1262ca, 0xbfc802092c1d744b, // 0.98225, -0.18756
+ 0x3fef70f6434b7eb7, 0xbfc7d0a7bbd2cb1b, // 0.98254, -0.18606
+ 0x3fef734a60446279, 0xbfc79f429f59e11d, // 0.98282, -0.18455
+ 0x3fef7599a3a12077, 0xbfc76dd9de50bf31, // 0.98311, -0.18304
+ 0x3fef77e40d068a90, 0xbfc73c6d8055fe0a, // 0.98339, -0.18153
+ 0x3fef7a299c1a322a, 0xbfc70afd8d08c4ff, // 0.98366, -0.18002
+ 0x3fef7c6a50826840, 0xbfc6d98a0c08c8da, // 0.98394, -0.17851
+ 0x3fef7ea629e63d6e, 0xbfc6a81304f64ab2, // 0.98421, -0.177
+ 0x3fef80dd27ed8204, 0xbfc676987f7216b8, // 0.98448, -0.17549
+ 0x3fef830f4a40c60c, 0xbfc6451a831d830d, // 0.98475, -0.17398
+ 0x3fef853c9089595e, 0xbfc61399179a6e94, // 0.98501, -0.17247
+ 0x3fef8764fa714ba9, 0xbfc5e214448b3fc6, // 0.98528, -0.17096
+ 0x3fef898887a36c84, 0xbfc5b08c1192e381, // 0.98554, -0.16945
+ 0x3fef8ba737cb4b78, 0xbfc57f008654cbde, // 0.9858, -0.16794
+ 0x3fef8dc10a95380d, 0xbfc54d71aa74ef02, // 0.98605, -0.16643
+ 0x3fef8fd5ffae41db, 0xbfc51bdf8597c5f2, // 0.98631, -0.16491
+ 0x3fef91e616c43891, 0xbfc4ea4a1f624b61, // 0.98656, -0.1634
+ 0x3fef93f14f85ac08, 0xbfc4b8b17f79fa88, // 0.98681, -0.16189
+ 0x3fef95f7a9a1ec47, 0xbfc48715ad84cdf5, // 0.98706, -0.16037
+ 0x3fef97f924c9099b, 0xbfc45576b1293e5a, // 0.9873, -0.15886
+ 0x3fef99f5c0abd496, 0xbfc423d4920e4166, // 0.98754, -0.15734
+ 0x3fef9bed7cfbde29, 0xbfc3f22f57db4893, // 0.98778, -0.15583
+ 0x3fef9de0596b77a3, 0xbfc3c0870a383ff6, // 0.98802, -0.15431
+ 0x3fef9fce55adb2c8, 0xbfc38edbb0cd8d14, // 0.98826, -0.1528
+ 0x3fefa1b7717661d5, 0xbfc35d2d53440db2, // 0.98849, -0.15128
+ 0x3fefa39bac7a1791, 0xbfc32b7bf94516a7, // 0.98872, -0.14976
+ 0x3fefa57b066e2754, 0xbfc2f9c7aa7a72af, // 0.98895, -0.14825
+ 0x3fefa7557f08a517, 0xbfc2c8106e8e613a, // 0.98918, -0.14673
+ 0x3fefa92b1600657c, 0xbfc296564d2b953e, // 0.9894, -0.14521
+ 0x3fefaafbcb0cfddc, 0xbfc264994dfd340a, // 0.98962, -0.1437
+ 0x3fefacc79de6c44f, 0xbfc232d978aed413, // 0.98984, -0.14218
+ 0x3fefae8e8e46cfbb, 0xbfc20116d4ec7bce, // 0.99006, -0.14066
+ 0x3fefb0509be6f7db, 0xbfc1cf516a62a077, // 0.99027, -0.13914
+ 0x3fefb20dc681d54d, 0xbfc19d8940be24e7, // 0.99049, -0.13762
+ 0x3fefb3c60dd2c199, 0xbfc16bbe5fac5865, // 0.9907, -0.1361
+ 0x3fefb5797195d741, 0xbfc139f0cedaf576, // 0.9909, -0.13458
+ 0x3fefb727f187f1c7, 0xbfc1082095f820b0, // 0.99111, -0.13306
+ 0x3fefb8d18d66adb7, 0xbfc0d64dbcb26786, // 0.99131, -0.13154
+ 0x3fefba7644f068b5, 0xbfc0a4784ab8bf1d, // 0.99151, -0.13002
+ 0x3fefbc1617e44186, 0xbfc072a047ba831d, // 0.99171, -0.1285
+ 0x3fefbdb106021816, 0xbfc040c5bb67747e, // 0.99191, -0.12698
+ 0x3fefbf470f0a8d88, 0xbfc00ee8ad6fb85b, // 0.9921, -0.12545
+ 0x3fefc0d832bf043a, 0xbfbfba124b07ad85, // 0.99229, -0.12393
+ 0x3fefc26470e19fd3, 0xbfbf564e56a9730e, // 0.99248, -0.12241
+ 0x3fefc3ebc935454c, 0xbfbef2858d27561b, // 0.99267, -0.12089
+ 0x3fefc56e3b7d9af6, 0xbfbe8eb7fde4aa3e, // 0.99285, -0.11937
+ 0x3fefc6ebc77f0887, 0xbfbe2ae5b8457f77, // 0.99303, -0.11784
+ 0x3fefc8646cfeb721, 0xbfbdc70ecbae9fc8, // 0.99321, -0.11632
+ 0x3fefc9d82bc2915e, 0xbfbd633347858ce4, // 0.99339, -0.11479
+ 0x3fefcb4703914354, 0xbfbcff533b307dc1, // 0.99356, -0.11327
+ 0x3fefccb0f4323aa3, 0xbfbc9b6eb6165c42, // 0.99374, -0.11175
+ 0x3fefce15fd6da67b, 0xbfbc3785c79ec2d5, // 0.99391, -0.11022
+ 0x3fefcf761f0c77a3, 0xbfbbd3987f31fa0e, // 0.99407, -0.1087
+ 0x3fefd0d158d86087, 0xbfbb6fa6ec38f64c, // 0.99424, -0.10717
+ 0x3fefd227aa9bd53b, 0xbfbb0bb11e1d5559, // 0.9944, -0.10565
+ 0x3fefd37914220b84, 0xbfbaa7b724495c04, // 0.99456, -0.10412
+ 0x3fefd4c59536fae4, 0xbfba43b90e27f3c4, // 0.99472, -0.1026
+ 0x3fefd60d2da75c9e, 0xbfb9dfb6eb24a85c, // 0.99488, -0.10107
+ 0x3fefd74fdd40abbf, 0xbfb97bb0caaba56f, // 0.99503, -0.099544
+ 0x3fefd88da3d12526, 0xbfb917a6bc29b42c, // 0.99518, -0.098017
+ 0x3fefd9c68127c78c, 0xbfb8b398cf0c38e0, // 0.99533, -0.09649
+ 0x3fefdafa7514538c, 0xbfb84f8712c130a0, // 0.99548, -0.094963
+ 0x3fefdc297f674ba9, 0xbfb7eb7196b72ee4, // 0.99563, -0.093436
+ 0x3fefdd539ff1f456, 0xbfb787586a5d5b21, // 0.99577, -0.091909
+ 0x3fefde78d68653fd, 0xbfb7233b9d236e71, // 0.99591, -0.090381
+ 0x3fefdf9922f73307, 0xbfb6bf1b3e79b129, // 0.99604, -0.088854
+ 0x3fefe0b485181be3, 0xbfb65af75dd0f87b, // 0.99618, -0.087326
+ 0x3fefe1cafcbd5b09, 0xbfb5f6d00a9aa419, // 0.99631, -0.085797
+ 0x3fefe2dc89bbff08, 0xbfb592a554489bc8, // 0.99644, -0.084269
+ 0x3fefe3e92be9d886, 0xbfb52e774a4d4d0a, // 0.99657, -0.08274
+ 0x3fefe4f0e31d7a4a, 0xbfb4ca45fc1ba8b6, // 0.9967, -0.081211
+ 0x3fefe5f3af2e3940, 0xbfb4661179272096, // 0.99682, -0.079682
+ 0x3fefe6f18ff42c84, 0xbfb401d9d0e3a507, // 0.99694, -0.078153
+ 0x3fefe7ea85482d60, 0xbfb39d9f12c5a299, // 0.99706, -0.076624
+ 0x3fefe8de8f03d75c, 0xbfb339614e41ffa5, // 0.99718, -0.075094
+ 0x3fefe9cdad01883a, 0xbfb2d52092ce19f6, // 0.99729, -0.073565
+ 0x3fefeab7df1c6005, 0xbfb270dcefdfc45b, // 0.9974, -0.072035
+ 0x3fefeb9d2530410f, 0xbfb20c9674ed444c, // 0.99751, -0.070505
+ 0x3fefec7d7f19cffc, 0xbfb1a84d316d4f8a, // 0.99762, -0.068974
+ 0x3fefed58ecb673c4, 0xbfb1440134d709b2, // 0.99772, -0.067444
+ 0x3fefee2f6de455ba, 0xbfb0dfb28ea201e6, // 0.99783, -0.065913
+ 0x3fefef0102826191, 0xbfb07b614e463064, // 0.99793, -0.064383
+ 0x3fefefcdaa704562, 0xbfb0170d833bf421, // 0.99802, -0.062852
+ 0x3feff095658e71ad, 0xbfaf656e79f820e0, // 0.99812, -0.061321
+ 0x3feff15833be1965, 0xbfae9cbd15ff5527, // 0.99821, -0.05979
+ 0x3feff21614e131ed, 0xbfadd406f9808ec8, // 0.9983, -0.058258
+ 0x3feff2cf08da7321, 0xbfad0b4c436f91d0, // 0.99839, -0.056727
+ 0x3feff3830f8d575c, 0xbfac428d12c0d7e3, // 0.99848, -0.055195
+ 0x3feff43228de1b77, 0xbfab79c986698b78, // 0.99856, -0.053664
+ 0x3feff4dc54b1bed3, 0xbfaab101bd5f8317, // 0.99864, -0.052132
+ 0x3feff58192ee0358, 0xbfa9e835d6993c87, // 0.99872, -0.0506
+ 0x3feff621e3796d7e, 0xbfa91f65f10dd814, // 0.9988, -0.049068
+ 0x3feff6bd463b444d, 0xbfa856922bb513c1, // 0.99887, -0.047535
+ 0x3feff753bb1b9164, 0xbfa78dbaa5874685, // 0.99894, -0.046003
+ 0x3feff7e5420320f9, 0xbfa6c4df7d7d5b84, // 0.99901, -0.044471
+ 0x3feff871dadb81df, 0xbfa5fc00d290cd43, // 0.99908, -0.042938
+ 0x3feff8f9858f058b, 0xbfa5331ec3bba0eb, // 0.99914, -0.041406
+ 0x3feff97c4208c014, 0xbfa46a396ff86179, // 0.9992, -0.039873
+ 0x3feff9fa10348837, 0xbfa3a150f6421afc, // 0.99926, -0.03834
+ 0x3feffa72effef75d, 0xbfa2d865759455cd, // 0.99932, -0.036807
+ 0x3feffae6e1556998, 0xbfa20f770ceb11c6, // 0.99938, -0.035274
+ 0x3feffb55e425fdae, 0xbfa14685db42c17e, // 0.99943, -0.033741
+ 0x3feffbbff85f9515, 0xbfa07d91ff984580, // 0.99948, -0.032208
+ 0x3feffc251df1d3f8, 0xbf9f693731d1cf01, // 0.99953, -0.030675
+ 0x3feffc8554cd213a, 0xbf9dd7458c64ab39, // 0.99958, -0.029142
+ 0x3feffce09ce2a679, 0xbf9c454f4ce53b1c, // 0.99962, -0.027608
+ 0x3feffd36f624500c, 0xbf9ab354b1504fca, // 0.99966, -0.026075
+ 0x3feffd886084cd0d, 0xbf992155f7a3667e, // 0.9997, -0.024541
+ 0x3feffdd4dbf78f52, 0xbf978f535ddc9f03, // 0.99974, -0.023008
+ 0x3feffe1c6870cb77, 0xbf95fd4d21fab226, // 0.99977, -0.021474
+ 0x3feffe5f05e578db, 0xbf946b4381fce81c, // 0.9998, -0.01994
+ 0x3feffe9cb44b51a1, 0xbf92d936bbe30efd, // 0.99983, -0.018407
+ 0x3feffed57398d2b7, 0xbf9147270dad7132, // 0.99986, -0.016873
+ 0x3fefff0943c53bd1, 0xbf8f6a296ab997ca, // 0.99988, -0.015339
+ 0x3fefff3824c88f6f, 0xbf8c45ffe1e48ad9, // 0.9999, -0.013805
+ 0x3fefff62169b92db, 0xbf8921d1fcdec784, // 0.99992, -0.012272
+ 0x3fefff871937ce2f, 0xbf85fda037ac05e0, // 0.99994, -0.010738
+ 0x3fefffa72c978c4f, 0xbf82d96b0e509703, // 0.99996,-0.0092038
+ 0x3fefffc250b5daef, 0xbf7f6a65f9a2a3c5, // 0.99997,-0.0076698
+ 0x3fefffd8858e8a92, 0xbf7921f0fe670071, // 0.99998,-0.0061359
+ 0x3fefffe9cb1e2e8d, 0xbf72d97822f996bc, // 0.99999,-0.0046019
+ 0x3feffff621621d02, 0xbf6921f8becca4ba, // 1, -0.003068
+ 0x3feffffd88586ee6, 0xbf5921faaee6472d, // 1, -0.001534
+
+
+};
+
+#endif /* !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) */
+
/**
@brief Floating-point Twiddle factors Table Generation
*/
@@ -8534,6 +16899,8 @@
#endif /* !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) */
+
+
/**
@brief Q31 Twiddle factors Table
*/
@@ -16142,6 +24509,678 @@
@} end of CFFT_CIFFT group
*/
+#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || defined(ARM_TABLE_BITREVIDX_FLT64_16)
+
+const uint16_t armBitRevIndexTableF64_16[ARMBITREVINDEXTABLEF64_16_TABLE_LENGTH] =
+{
+ /* radix 4, size 12 */
+ 8,64, 16,32, 24,96, 40,80, 56,112, 88,104
+};
+#endif /* !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) */
+
+#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || defined(ARM_TABLE_BITREVIDX_FLT64_32)
+const uint16_t armBitRevIndexTableF64_32[ARMBITREVINDEXTABLEF64_32_TABLE_LENGTH] =
+{
+ /* 4x2, size 24 */
+ 8,128, 16,64, 24,192, 40,160, 48,96, 56,224, 72,144,
+ 88,208, 104,176, 120,240, 152,200, 184,232
+};
+#endif /* !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) */
+
+#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || defined(ARM_TABLE_BITREVIDX_FLT64_64)
+const uint16_t armBitRevIndexTableF64_64[ARMBITREVINDEXTABLEF64_64_TABLE_LENGTH] =
+{
+ /* radix 4, size 56 */
+ 8,256, 16,128, 24,384, 32,64, 40,320, 48,192, 56,448, 72,288, 80,160, 88,416, 104,352,
+ 112,224, 120,480, 136,272, 152,400, 168,336, 176,208, 184,464, 200,304, 216,432,
+ 232,368, 248,496, 280,392, 296,328, 312,456, 344,424, 376,488, 440,472
+};
+#endif /* !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) */
+
+#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || defined(ARM_TABLE_BITREVIDX_FLT64_128)
+const uint16_t armBitRevIndexTableF64_128[ARMBITREVINDEXTABLEF64_128_TABLE_LENGTH] =
+{
+ /* 4x2, size 112 */
+ 8,512, 16,256, 24,768, 32,128, 40,640, 48,384, 56,896, 72,576, 80,320, 88,832, 96,192,
+ 104,704, 112,448, 120,960, 136,544, 144,288, 152,800, 168,672, 176,416, 184,928, 200,608,
+ 208,352, 216,864, 232,736, 240,480, 248,992, 264,528, 280,784, 296,656, 304,400, 312,912,
+ 328,592, 344,848, 360,720, 368,464, 376,976, 392,560, 408,816, 424,688, 440,944, 456,624,
+ 472,880, 488,752, 504,1008, 536,776, 552,648, 568,904, 600,840, 616,712, 632,968,
+ 664,808, 696,936, 728,872, 760,1000, 824,920, 888,984
+};
+#endif /* !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) */
+
+#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || defined(ARM_TABLE_BITREVIDX_FLT64_256)
+const uint16_t armBitRevIndexTableF64_256[ARMBITREVINDEXTABLEF64_256_TABLE_LENGTH] =
+{
+ /* radix 4, size 240 */
+ 8,1024, 16,512, 24,1536, 32,256, 40,1280, 48,768, 56,1792, 64,128, 72,1152, 80,640,
+ 88,1664, 96,384, 104,1408, 112,896, 120,1920, 136,1088, 144,576, 152,1600, 160,320,
+ 168,1344, 176,832, 184,1856, 200,1216, 208,704, 216,1728, 224,448, 232,1472, 240,960,
+ 248,1984, 264,1056, 272,544, 280,1568, 296,1312, 304,800, 312,1824, 328,1184, 336,672,
+ 344,1696, 352,416, 360,1440, 368,928, 376,1952, 392,1120, 400,608, 408,1632, 424,1376,
+ 432,864, 440,1888, 456,1248, 464,736, 472,1760, 488,1504, 496,992, 504,2016, 520,1040,
+ 536,1552, 552,1296, 560,784, 568,1808, 584,1168, 592,656, 600,1680, 616,1424, 624,912,
+ 632,1936, 648,1104, 664,1616, 680,1360, 688,848, 696,1872, 712,1232, 728,1744, 744,1488,
+ 752,976, 760,2000, 776,1072, 792,1584, 808,1328, 824,1840, 840,1200, 856,1712, 872,1456,
+ 880,944, 888,1968, 904,1136, 920,1648, 936,1392, 952,1904, 968,1264, 984,1776, 1000,1520,
+ 1016,2032, 1048,1544, 1064,1288, 1080,1800, 1096,1160, 1112,1672, 1128,1416, 1144,1928,
+ 1176,1608, 1192,1352, 1208,1864, 1240,1736, 1256,1480, 1272,1992, 1304,1576, 1336,1832,
+ 1368,1704, 1384,1448, 1400,1960, 1432,1640, 1464,1896, 1496,1768, 1528,2024, 1592,1816,
+ 1624,1688, 1656,1944, 1720,1880, 1784,2008, 1912,1976
+};
+#endif /* !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) */
+
+#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || defined(ARM_TABLE_BITREVIDX_FLT64_512)
+const uint16_t armBitRevIndexTableF64_512[ARMBITREVINDEXTABLEF64_512_TABLE_LENGTH] =
+{
+ /* 4x2, size 480 */
+ 8,2048, 16,1024, 24,3072, 32,512, 40,2560, 48,1536, 56,3584, 64,256, 72,2304, 80,1280,
+ 88,3328, 96,768, 104,2816, 112,1792, 120,3840, 136,2176, 144,1152, 152,3200, 160,640,
+ 168,2688, 176,1664, 184,3712, 192,384, 200,2432, 208,1408, 216,3456, 224,896, 232,2944,
+ 240,1920, 248,3968, 264,2112, 272,1088, 280,3136, 288,576, 296,2624, 304,1600, 312,3648,
+ 328,2368, 336,1344, 344,3392, 352,832, 360,2880, 368,1856, 376,3904, 392,2240, 400,1216,
+ 408,3264, 416,704, 424,2752, 432,1728, 440,3776, 456,2496, 464,1472, 472,3520, 480,960,
+ 488,3008, 496,1984, 504,4032, 520,2080, 528,1056, 536,3104, 552,2592, 560,1568, 568,3616,
+ 584,2336, 592,1312, 600,3360, 608,800, 616,2848, 624,1824, 632,3872, 648,2208, 656,1184,
+ 664,3232, 680,2720, 688,1696, 696,3744, 712,2464, 720,1440, 728,3488, 736,928, 744,2976,
+ 752,1952, 760,4000, 776,2144, 784,1120, 792,3168, 808,2656, 816,1632, 824,3680, 840,2400,
+ 848,1376, 856,3424, 872,2912, 880,1888, 888,3936, 904,2272, 912,1248, 920,3296, 936,2784,
+ 944,1760, 952,3808, 968,2528, 976,1504, 984,3552, 1000,3040, 1008,2016, 1016,4064,
+ 1032,2064, 1048,3088, 1064,2576, 1072,1552, 1080,3600, 1096,2320, 1104,1296, 1112,3344,
+ 1128,2832, 1136,1808, 1144,3856, 1160,2192, 1176,3216, 1192,2704, 1200,1680, 1208,3728,
+ 1224,2448, 1232,1424, 1240,3472, 1256,2960, 1264,1936, 1272,3984, 1288,2128, 1304,3152,
+ 1320,2640, 1328,1616, 1336,3664, 1352,2384, 1368,3408, 1384,2896, 1392,1872, 1400,3920,
+ 1416,2256, 1432,3280, 1448,2768, 1456,1744, 1464,3792, 1480,2512, 1496,3536, 1512,3024,
+ 1520,2000, 1528,4048, 1544,2096, 1560,3120, 1576,2608, 1592,3632, 1608,2352, 1624,3376,
+ 1640,2864, 1648,1840, 1656,3888, 1672,2224, 1688,3248, 1704,2736, 1720,3760, 1736,2480,
+ 1752,3504, 1768,2992, 1776,1968, 1784,4016, 1800,2160, 1816,3184, 1832,2672, 1848,3696,
+ 1864,2416, 1880,3440, 1896,2928, 1912,3952, 1928,2288, 1944,3312, 1960,2800, 1976,3824,
+ 1992,2544, 2008,3568, 2024,3056, 2040,4080, 2072,3080, 2088,2568, 2104,3592, 2120,2312,
+ 2136,3336, 2152,2824, 2168,3848, 2200,3208, 2216,2696, 2232,3720, 2248,2440, 2264,3464,
+ 2280,2952, 2296,3976, 2328,3144, 2344,2632, 2360,3656, 2392,3400, 2408,2888, 2424,3912,
+ 2456,3272, 2472,2760, 2488,3784, 2520,3528, 2536,3016, 2552,4040, 2584,3112, 2616,3624,
+ 2648,3368, 2664,2856, 2680,3880, 2712,3240, 2744,3752, 2776,3496, 2792,2984, 2808,4008,
+ 2840,3176, 2872,3688, 2904,3432, 2936,3944, 2968,3304, 3000,3816, 3032,3560, 3064,4072,
+ 3128,3608, 3160,3352, 3192,3864, 3256,3736, 3288,3480, 3320,3992, 3384,3672, 3448,3928,
+ 3512,3800, 3576,4056, 3704,3896, 3832,4024
+};
+#endif /* !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) */
+
+#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || defined(ARM_TABLE_BITREVIDX_FLT64_1024)
+const uint16_t armBitRevIndexTableF64_1024[ARMBITREVINDEXTABLEF64_1024_TABLE_LENGTH] =
+{
+ /* radix 4, size 992 */
+ 8,4096, 16,2048, 24,6144, 32,1024, 40,5120, 48,3072, 56,7168, 64,512, 72,4608,
+ 80,2560, 88,6656, 96,1536, 104,5632, 112,3584, 120,7680, 128,256, 136,4352,
+ 144,2304, 152,6400, 160,1280, 168,5376, 176,3328, 184,7424, 192,768, 200,4864,
+ 208,2816, 216,6912, 224,1792, 232,5888, 240,3840, 248,7936, 264,4224, 272,2176,
+ 280,6272, 288,1152, 296,5248, 304,3200, 312,7296, 320,640, 328,4736, 336,2688,
+ 344,6784, 352,1664, 360,5760, 368,3712, 376,7808, 392,4480, 400,2432, 408,6528,
+ 416,1408, 424,5504, 432,3456, 440,7552, 448,896, 456,4992, 464,2944, 472,7040,
+ 480,1920, 488,6016, 496,3968, 504,8064, 520,4160, 528,2112, 536,6208, 544,1088,
+ 552,5184, 560,3136, 568,7232, 584,4672, 592,2624, 600,6720, 608,1600, 616,5696,
+ 624,3648, 632,7744, 648,4416, 656,2368, 664,6464, 672,1344, 680,5440, 688,3392,
+ 696,7488, 704,832, 712,4928, 720,2880, 728,6976, 736,1856, 744,5952, 752,3904,
+ 760,8000, 776,4288, 784,2240, 792,6336, 800,1216, 808,5312, 816,3264, 824,7360,
+ 840,4800, 848,2752, 856,6848, 864,1728, 872,5824, 880,3776, 888,7872, 904,4544,
+ 912,2496, 920,6592, 928,1472, 936,5568, 944,3520, 952,7616, 968,5056, 976,3008,
+ 984,7104, 992,1984, 1000,6080, 1008,4032, 1016,8128, 1032,4128, 1040,2080,
+ 1048,6176, 1064,5152, 1072,3104, 1080,7200, 1096,4640, 1104,2592, 1112,6688,
+ 1120,1568, 1128,5664, 1136,3616, 1144,7712, 1160,4384, 1168,2336, 1176,6432,
+ 1184,1312, 1192,5408, 1200,3360, 1208,7456, 1224,4896, 1232,2848, 1240,6944,
+ 1248,1824, 1256,5920, 1264,3872, 1272,7968, 1288,4256, 1296,2208, 1304,6304,
+ 1320,5280, 1328,3232, 1336,7328, 1352,4768, 1360,2720, 1368,6816, 1376,1696,
+ 1384,5792, 1392,3744, 1400,7840, 1416,4512, 1424,2464, 1432,6560, 1448,5536,
+ 1456,3488, 1464,7584, 1480,5024, 1488,2976, 1496,7072, 1504,1952, 1512,6048,
+ 1520,4000, 1528,8096, 1544,4192, 1552,2144, 1560,6240, 1576,5216, 1584,3168,
+ 1592,7264, 1608,4704, 1616,2656, 1624,6752, 1640,5728, 1648,3680, 1656,7776,
+ 1672,4448, 1680,2400, 1688,6496, 1704,5472, 1712,3424, 1720,7520, 1736,4960,
+ 1744,2912, 1752,7008, 1760,1888, 1768,5984, 1776,3936, 1784,8032, 1800,4320,
+ 1808,2272, 1816,6368, 1832,5344, 1840,3296, 1848,7392, 1864,4832, 1872,2784,
+ 1880,6880, 1896,5856, 1904,3808, 1912,7904, 1928,4576, 1936,2528, 1944,6624,
+ 1960,5600, 1968,3552, 1976,7648, 1992,5088, 2000,3040, 2008,7136, 2024,6112,
+ 2032,4064, 2040,8160, 2056,4112, 2072,6160, 2088,5136, 2096,3088, 2104,7184,
+ 2120,4624, 2128,2576, 2136,6672, 2152,5648, 2160,3600, 2168,7696, 2184,4368,
+ 2192,2320, 2200,6416, 2216,5392, 2224,3344, 2232,7440, 2248,4880, 2256,2832,
+ 2264,6928, 2280,5904, 2288,3856, 2296,7952, 2312,4240, 2328,6288, 2344,5264,
+ 2352,3216, 2360,7312, 2376,4752, 2384,2704, 2392,6800, 2408,5776, 2416,3728,
+ 2424,7824, 2440,4496, 2456,6544, 2472,5520, 2480,3472, 2488,7568, 2504,5008,
+ 2512,2960, 2520,7056, 2536,6032, 2544,3984, 2552,8080, 2568,4176, 2584,6224,
+ 2600,5200, 2608,3152, 2616,7248, 2632,4688, 2648,6736, 2664,5712, 2672,3664,
+ 2680,7760, 2696,4432, 2712,6480, 2728,5456, 2736,3408, 2744,7504, 2760,4944,
+ 2768,2896, 2776,6992, 2792,5968, 2800,3920, 2808,8016, 2824,4304, 2840,6352,
+ 2856,5328, 2864,3280, 2872,7376, 2888,4816, 2904,6864, 2920,5840, 2928,3792,
+ 2936,7888, 2952,4560, 2968,6608, 2984,5584, 2992,3536, 3000,7632, 3016,5072,
+ 3032,7120, 3048,6096, 3056,4048, 3064,8144, 3080,4144, 3096,6192, 3112,5168,
+ 3128,7216, 3144,4656, 3160,6704, 3176,5680, 3184,3632, 3192,7728, 3208,4400,
+ 3224,6448, 3240,5424, 3248,3376, 3256,7472, 3272,4912, 3288,6960, 3304,5936,
+ 3312,3888, 3320,7984, 3336,4272, 3352,6320, 3368,5296, 3384,7344, 3400,4784,
+ 3416,6832, 3432,5808, 3440,3760, 3448,7856, 3464,4528, 3480,6576, 3496,5552,
+ 3512,7600, 3528,5040, 3544,7088, 3560,6064, 3568,4016, 3576,8112, 3592,4208,
+ 3608,6256, 3624,5232, 3640,7280, 3656,4720, 3672,6768, 3688,5744, 3704,7792,
+ 3720,4464, 3736,6512, 3752,5488, 3768,7536, 3784,4976, 3800,7024, 3816,6000,
+ 3824,3952, 3832,8048, 3848,4336, 3864,6384, 3880,5360, 3896,7408, 3912,4848,
+ 3928,6896, 3944,5872, 3960,7920, 3976,4592, 3992,6640, 4008,5616, 4024,7664,
+ 4040,5104, 4056,7152, 4072,6128, 4088,8176, 4120,6152, 4136,5128, 4152,7176,
+ 4168,4616, 4184,6664, 4200,5640, 4216,7688, 4232,4360, 4248,6408, 4264,5384,
+ 4280,7432, 4296,4872, 4312,6920, 4328,5896, 4344,7944, 4376,6280, 4392,5256,
+ 4408,7304, 4424,4744, 4440,6792, 4456,5768, 4472,7816, 4504,6536, 4520,5512,
+ 4536,7560, 4552,5000, 4568,7048, 4584,6024, 4600,8072, 4632,6216, 4648,5192,
+ 4664,7240, 4696,6728, 4712,5704, 4728,7752, 4760,6472, 4776,5448, 4792,7496,
+ 4808,4936, 4824,6984, 4840,5960, 4856,8008, 4888,6344, 4904,5320, 4920,7368,
+ 4952,6856, 4968,5832, 4984,7880, 5016,6600, 5032,5576, 5048,7624, 5080,7112,
+ 5096,6088, 5112,8136, 5144,6184, 5176,7208, 5208,6696, 5224,5672, 5240,7720,
+ 5272,6440, 5288,5416, 5304,7464, 5336,6952, 5352,5928, 5368,7976, 5400,6312,
+ 5432,7336, 5464,6824, 5480,5800, 5496,7848, 5528,6568, 5560,7592, 5592,7080,
+ 5608,6056, 5624,8104, 5656,6248, 5688,7272, 5720,6760, 5752,7784, 5784,6504,
+ 5816,7528, 5848,7016, 5864,5992, 5880,8040, 5912,6376, 5944,7400, 5976,6888,
+ 6008,7912, 6040,6632, 6072,7656, 6104,7144, 6136,8168, 6200,7192, 6232,6680,
+ 6264,7704, 6296,6424, 6328,7448, 6360,6936, 6392,7960, 6456,7320, 6488,6808,
+ 6520,7832, 6584,7576, 6616,7064, 6648,8088, 6712,7256, 6776,7768, 6840,7512,
+ 6872,7000, 6904,8024, 6968,7384, 7032,7896, 7096,7640, 7160,8152, 7288,7736,
+ 7352,7480, 7416,7992, 7544,7864, 7672,8120, 7928,8056
+};
+#endif /* !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) */
+
+#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || defined(ARM_TABLE_BITREVIDX_FLT64_2048)
+const uint16_t armBitRevIndexTableF64_2048[ARMBITREVINDEXTABLEF64_2048_TABLE_LENGTH] =
+{
+ /* 4x2, size 1984 */
+ 8,8192, 16,4096, 24,12288, 32,2048, 40,10240, 48,6144, 56,14336, 64,1024,
+ 72,9216, 80,5120, 88,13312, 96,3072, 104,11264, 112,7168, 120,15360, 128,512,
+ 136,8704, 144,4608, 152,12800, 160,2560, 168,10752, 176,6656, 184,14848,
+ 192,1536, 200,9728, 208,5632, 216,13824, 224,3584, 232,11776, 240,7680,
+ 248,15872, 264,8448, 272,4352, 280,12544, 288,2304, 296,10496, 304,6400,
+ 312,14592, 320,1280, 328,9472, 336,5376, 344,13568, 352,3328, 360,11520,
+ 368,7424, 376,15616, 384,768, 392,8960, 400,4864, 408,13056, 416,2816,
+ 424,11008, 432,6912, 440,15104, 448,1792, 456,9984, 464,5888, 472,14080,
+ 480,3840, 488,12032, 496,7936, 504,16128, 520,8320, 528,4224, 536,12416,
+ 544,2176, 552,10368, 560,6272, 568,14464, 576,1152, 584,9344, 592,5248,
+ 600,13440, 608,3200, 616,11392, 624,7296, 632,15488, 648,8832, 656,4736,
+ 664,12928, 672,2688, 680,10880, 688,6784, 696,14976, 704,1664, 712,9856,
+ 720,5760, 728,13952, 736,3712, 744,11904, 752,7808, 760,16000, 776,8576,
+ 784,4480, 792,12672, 800,2432, 808,10624, 816,6528, 824,14720, 832,1408,
+ 840,9600, 848,5504, 856,13696, 864,3456, 872,11648, 880,7552, 888,15744,
+ 904,9088, 912,4992, 920,13184, 928,2944, 936,11136, 944,7040, 952,15232,
+ 960,1920, 968,10112, 976,6016, 984,14208, 992,3968, 1000,12160, 1008,8064,
+ 1016,16256, 1032,8256, 1040,4160, 1048,12352, 1056,2112, 1064,10304, 1072,6208,
+ 1080,14400, 1096,9280, 1104,5184, 1112,13376, 1120,3136, 1128,11328, 1136,7232,
+ 1144,15424, 1160,8768, 1168,4672, 1176,12864, 1184,2624, 1192,10816, 1200,6720,
+ 1208,14912, 1216,1600, 1224,9792, 1232,5696, 1240,13888, 1248,3648, 1256,11840,
+ 1264,7744, 1272,15936, 1288,8512, 1296,4416, 1304,12608, 1312,2368, 1320,10560,
+ 1328,6464, 1336,14656, 1352,9536, 1360,5440, 1368,13632, 1376,3392, 1384,11584,
+ 1392,7488, 1400,15680, 1416,9024, 1424,4928, 1432,13120, 1440,2880, 1448,11072,
+ 1456,6976, 1464,15168, 1472,1856, 1480,10048, 1488,5952, 1496,14144, 1504,3904,
+ 1512,12096, 1520,8000, 1528,16192, 1544,8384, 1552,4288, 1560,12480, 1568,2240,
+ 1576,10432, 1584,6336, 1592,14528, 1608,9408, 1616,5312, 1624,13504, 1632,3264,
+ 1640,11456, 1648,7360, 1656,15552, 1672,8896, 1680,4800, 1688,12992, 1696,2752,
+ 1704,10944, 1712,6848, 1720,15040, 1736,9920, 1744,5824, 1752,14016, 1760,3776,
+ 1768,11968, 1776,7872, 1784,16064, 1800,8640, 1808,4544, 1816,12736, 1824,2496,
+ 1832,10688, 1840,6592, 1848,14784, 1864,9664, 1872,5568, 1880,13760, 1888,3520,
+ 1896,11712, 1904,7616, 1912,15808, 1928,9152, 1936,5056, 1944,13248, 1952,3008,
+ 1960,11200, 1968,7104, 1976,15296, 1992,10176, 2000,6080, 2008,14272, 2016,4032,
+ 2024,12224, 2032,8128, 2040,16320, 2056,8224, 2064,4128, 2072,12320, 2088,10272,
+ 2096,6176, 2104,14368, 2120,9248, 2128,5152, 2136,13344, 2144,3104, 2152,11296,
+ 2160,7200, 2168,15392, 2184,8736, 2192,4640, 2200,12832, 2208,2592, 2216,10784,
+ 2224,6688, 2232,14880, 2248,9760, 2256,5664, 2264,13856, 2272,3616, 2280,11808,
+ 2288,7712, 2296,15904, 2312,8480, 2320,4384, 2328,12576, 2344,10528, 2352,6432,
+ 2360,14624, 2376,9504, 2384,5408, 2392,13600, 2400,3360, 2408,11552, 2416,7456,
+ 2424,15648, 2440,8992, 2448,4896, 2456,13088, 2464,2848, 2472,11040, 2480,6944,
+ 2488,15136, 2504,10016, 2512,5920, 2520,14112, 2528,3872, 2536,12064, 2544,7968,
+ 2552,16160, 2568,8352, 2576,4256, 2584,12448, 2600,10400, 2608,6304, 2616,14496,
+ 2632,9376, 2640,5280, 2648,13472, 2656,3232, 2664,11424, 2672,7328, 2680,15520,
+ 2696,8864, 2704,4768, 2712,12960, 2728,10912, 2736,6816, 2744,15008, 2760,9888,
+ 2768,5792, 2776,13984, 2784,3744, 2792,11936, 2800,7840, 2808,16032, 2824,8608,
+ 2832,4512, 2840,12704, 2856,10656, 2864,6560, 2872,14752, 2888,9632, 2896,5536,
+ 2904,13728, 2912,3488, 2920,11680, 2928,7584, 2936,15776, 2952,9120, 2960,5024,
+ 2968,13216, 2984,11168, 2992,7072, 3000,15264, 3016,10144, 3024,6048,
+ 3032,14240, 3040,4000, 3048,12192, 3056,8096, 3064,16288, 3080,8288, 3088,4192,
+ 3096,12384, 3112,10336, 3120,6240, 3128,14432, 3144,9312, 3152,5216, 3160,13408,
+ 3176,11360, 3184,7264, 3192,15456, 3208,8800, 3216,4704, 3224,12896, 3240,10848,
+ 3248,6752, 3256,14944, 3272,9824, 3280,5728, 3288,13920, 3296,3680, 3304,11872,
+ 3312,7776, 3320,15968, 3336,8544, 3344,4448, 3352,12640, 3368,10592, 3376,6496,
+ 3384,14688, 3400,9568, 3408,5472, 3416,13664, 3432,11616, 3440,7520, 3448,15712,
+ 3464,9056, 3472,4960, 3480,13152, 3496,11104, 3504,7008, 3512,15200, 3528,10080,
+ 3536,5984, 3544,14176, 3552,3936, 3560,12128, 3568,8032, 3576,16224, 3592,8416,
+ 3600,4320, 3608,12512, 3624,10464, 3632,6368, 3640,14560, 3656,9440, 3664,5344,
+ 3672,13536, 3688,11488, 3696,7392, 3704,15584, 3720,8928, 3728,4832, 3736,13024,
+ 3752,10976, 3760,6880, 3768,15072, 3784,9952, 3792,5856, 3800,14048, 3816,12000,
+ 3824,7904, 3832,16096, 3848,8672, 3856,4576, 3864,12768, 3880,10720, 3888,6624,
+ 3896,14816, 3912,9696, 3920,5600, 3928,13792, 3944,11744, 3952,7648, 3960,15840,
+ 3976,9184, 3984,5088, 3992,13280, 4008,11232, 4016,7136, 4024,15328, 4040,10208,
+ 4048,6112, 4056,14304, 4072,12256, 4080,8160, 4088,16352, 4104,8208, 4120,12304,
+ 4136,10256, 4144,6160, 4152,14352, 4168,9232, 4176,5136, 4184,13328, 4200,11280,
+ 4208,7184, 4216,15376, 4232,8720, 4240,4624, 4248,12816, 4264,10768, 4272,6672,
+ 4280,14864, 4296,9744, 4304,5648, 4312,13840, 4328,11792, 4336,7696, 4344,15888,
+ 4360,8464, 4376,12560, 4392,10512, 4400,6416, 4408,14608, 4424,9488, 4432,5392,
+ 4440,13584, 4456,11536, 4464,7440, 4472,15632, 4488,8976, 4496,4880, 4504,13072,
+ 4520,11024, 4528,6928, 4536,15120, 4552,10000, 4560,5904, 4568,14096,
+ 4584,12048, 4592,7952, 4600,16144, 4616,8336, 4632,12432, 4648,10384, 4656,6288,
+ 4664,14480, 4680,9360, 4688,5264, 4696,13456, 4712,11408, 4720,7312, 4728,15504,
+ 4744,8848, 4760,12944, 4776,10896, 4784,6800, 4792,14992, 4808,9872, 4816,5776,
+ 4824,13968, 4840,11920, 4848,7824, 4856,16016, 4872,8592, 4888,12688,
+ 4904,10640, 4912,6544, 4920,14736, 4936,9616, 4944,5520, 4952,13712, 4968,11664,
+ 4976,7568, 4984,15760, 5000,9104, 5016,13200, 5032,11152, 5040,7056, 5048,15248,
+ 5064,10128, 5072,6032, 5080,14224, 5096,12176, 5104,8080, 5112,16272, 5128,8272,
+ 5144,12368, 5160,10320, 5168,6224, 5176,14416, 5192,9296, 5208,13392,
+ 5224,11344, 5232,7248, 5240,15440, 5256,8784, 5272,12880, 5288,10832, 5296,6736,
+ 5304,14928, 5320,9808, 5328,5712, 5336,13904, 5352,11856, 5360,7760, 5368,15952,
+ 5384,8528, 5400,12624, 5416,10576, 5424,6480, 5432,14672, 5448,9552, 5464,13648,
+ 5480,11600, 5488,7504, 5496,15696, 5512,9040, 5528,13136, 5544,11088, 5552,6992,
+ 5560,15184, 5576,10064, 5584,5968, 5592,14160, 5608,12112, 5616,8016,
+ 5624,16208, 5640,8400, 5656,12496, 5672,10448, 5680,6352, 5688,14544, 5704,9424,
+ 5720,13520, 5736,11472, 5744,7376, 5752,15568, 5768,8912, 5784,13008,
+ 5800,10960, 5808,6864, 5816,15056, 5832,9936, 5848,14032, 5864,11984, 5872,7888,
+ 5880,16080, 5896,8656, 5912,12752, 5928,10704, 5936,6608, 5944,14800, 5960,9680,
+ 5976,13776, 5992,11728, 6000,7632, 6008,15824, 6024,9168, 6040,13264,
+ 6056,11216, 6064,7120, 6072,15312, 6088,10192, 6104,14288, 6120,12240,
+ 6128,8144, 6136,16336, 6152,8240, 6168,12336, 6184,10288, 6200,14384, 6216,9264,
+ 6232,13360, 6248,11312, 6256,7216, 6264,15408, 6280,8752, 6296,12848,
+ 6312,10800, 6320,6704, 6328,14896, 6344,9776, 6360,13872, 6376,11824, 6384,7728,
+ 6392,15920, 6408,8496, 6424,12592, 6440,10544, 6456,14640, 6472,9520,
+ 6488,13616, 6504,11568, 6512,7472, 6520,15664, 6536,9008, 6552,13104,
+ 6568,11056, 6576,6960, 6584,15152, 6600,10032, 6616,14128, 6632,12080,
+ 6640,7984, 6648,16176, 6664,8368, 6680,12464, 6696,10416, 6712,14512, 6728,9392,
+ 6744,13488, 6760,11440, 6768,7344, 6776,15536, 6792,8880, 6808,12976,
+ 6824,10928, 6840,15024, 6856,9904, 6872,14000, 6888,11952, 6896,7856,
+ 6904,16048, 6920,8624, 6936,12720, 6952,10672, 6968,14768, 6984,9648,
+ 7000,13744, 7016,11696, 7024,7600, 7032,15792, 7048,9136, 7064,13232,
+ 7080,11184, 7096,15280, 7112,10160, 7128,14256, 7144,12208, 7152,8112,
+ 7160,16304, 7176,8304, 7192,12400, 7208,10352, 7224,14448, 7240,9328,
+ 7256,13424, 7272,11376, 7288,15472, 7304,8816, 7320,12912, 7336,10864,
+ 7352,14960, 7368,9840, 7384,13936, 7400,11888, 7408,7792, 7416,15984, 7432,8560,
+ 7448,12656, 7464,10608, 7480,14704, 7496,9584, 7512,13680, 7528,11632,
+ 7544,15728, 7560,9072, 7576,13168, 7592,11120, 7608,15216, 7624,10096,
+ 7640,14192, 7656,12144, 7664,8048, 7672,16240, 7688,8432, 7704,12528,
+ 7720,10480, 7736,14576, 7752,9456, 7768,13552, 7784,11504, 7800,15600,
+ 7816,8944, 7832,13040, 7848,10992, 7864,15088, 7880,9968, 7896,14064,
+ 7912,12016, 7928,16112, 7944,8688, 7960,12784, 7976,10736, 7992,14832,
+ 8008,9712, 8024,13808, 8040,11760, 8056,15856, 8072,9200, 8088,13296,
+ 8104,11248, 8120,15344, 8136,10224, 8152,14320, 8168,12272, 8184,16368,
+ 8216,12296, 8232,10248, 8248,14344, 8264,9224, 8280,13320, 8296,11272,
+ 8312,15368, 8328,8712, 8344,12808, 8360,10760, 8376,14856, 8392,9736,
+ 8408,13832, 8424,11784, 8440,15880, 8472,12552, 8488,10504, 8504,14600,
+ 8520,9480, 8536,13576, 8552,11528, 8568,15624, 8584,8968, 8600,13064,
+ 8616,11016, 8632,15112, 8648,9992, 8664,14088, 8680,12040, 8696,16136,
+ 8728,12424, 8744,10376, 8760,14472, 8776,9352, 8792,13448, 8808,11400,
+ 8824,15496, 8856,12936, 8872,10888, 8888,14984, 8904,9864, 8920,13960,
+ 8936,11912, 8952,16008, 8984,12680, 9000,10632, 9016,14728, 9032,9608,
+ 9048,13704, 9064,11656, 9080,15752, 9112,13192, 9128,11144, 9144,15240,
+ 9160,10120, 9176,14216, 9192,12168, 9208,16264, 9240,12360, 9256,10312,
+ 9272,14408, 9304,13384, 9320,11336, 9336,15432, 9368,12872, 9384,10824,
+ 9400,14920, 9416,9800, 9432,13896, 9448,11848, 9464,15944, 9496,12616,
+ 9512,10568, 9528,14664, 9560,13640, 9576,11592, 9592,15688, 9624,13128,
+ 9640,11080, 9656,15176, 9672,10056, 9688,14152, 9704,12104, 9720,16200,
+ 9752,12488, 9768,10440, 9784,14536, 9816,13512, 9832,11464, 9848,15560,
+ 9880,13000, 9896,10952, 9912,15048, 9944,14024, 9960,11976, 9976,16072,
+ 10008,12744, 10024,10696, 10040,14792, 10072,13768, 10088,11720, 10104,15816,
+ 10136,13256, 10152,11208, 10168,15304, 10200,14280, 10216,12232, 10232,16328,
+ 10264,12328, 10296,14376, 10328,13352, 10344,11304, 10360,15400, 10392,12840,
+ 10408,10792, 10424,14888, 10456,13864, 10472,11816, 10488,15912, 10520,12584,
+ 10552,14632, 10584,13608, 10600,11560, 10616,15656, 10648,13096, 10664,11048,
+ 10680,15144, 10712,14120, 10728,12072, 10744,16168, 10776,12456, 10808,14504,
+ 10840,13480, 10856,11432, 10872,15528, 10904,12968, 10936,15016, 10968,13992,
+ 10984,11944, 11000,16040, 11032,12712, 11064,14760, 11096,13736, 11112,11688,
+ 11128,15784, 11160,13224, 11192,15272, 11224,14248, 11240,12200, 11256,16296,
+ 11288,12392, 11320,14440, 11352,13416, 11384,15464, 11416,12904, 11448,14952,
+ 11480,13928, 11496,11880, 11512,15976, 11544,12648, 11576,14696, 11608,13672,
+ 11640,15720, 11672,13160, 11704,15208, 11736,14184, 11752,12136, 11768,16232,
+ 11800,12520, 11832,14568, 11864,13544, 11896,15592, 11928,13032, 11960,15080,
+ 11992,14056, 12024,16104, 12056,12776, 12088,14824, 12120,13800, 12152,15848,
+ 12184,13288, 12216,15336, 12248,14312, 12280,16360, 12344,14360, 12376,13336,
+ 12408,15384, 12440,12824, 12472,14872, 12504,13848, 12536,15896, 12600,14616,
+ 12632,13592, 12664,15640, 12696,13080, 12728,15128, 12760,14104, 12792,16152,
+ 12856,14488, 12888,13464, 12920,15512, 12984,15000, 13016,13976, 13048,16024,
+ 13112,14744, 13144,13720, 13176,15768, 13240,15256, 13272,14232, 13304,16280,
+ 13368,14424, 13432,15448, 13496,14936, 13528,13912, 13560,15960, 13624,14680,
+ 13688,15704, 13752,15192, 13784,14168, 13816,16216, 13880,14552, 13944,15576,
+ 14008,15064, 14072,16088, 14136,14808, 14200,15832, 14264,15320, 14328,16344,
+ 14456,15416, 14520,14904, 14584,15928, 14712,15672, 14776,15160, 14840,16184,
+ 14968,15544, 15096,16056, 15224,15800, 15352,16312, 15608,15992, 15864,16248
+};
+#endif /* !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) */
+
+#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || defined(ARM_TABLE_BITREVIDX_FLT64_4096)
+const uint16_t armBitRevIndexTableF64_4096[ARMBITREVINDEXTABLEF64_4096_TABLE_LENGTH] =
+{
+ /* radix 4, size 4032 */
+ 8,16384, 16,8192, 24,24576, 32,4096, 40,20480, 48,12288, 56,28672, 64,2048,
+ 72,18432, 80,10240, 88,26624, 96,6144, 104,22528, 112,14336, 120,30720,
+ 128,1024, 136,17408, 144,9216, 152,25600, 160,5120, 168,21504, 176,13312,
+ 184,29696, 192,3072, 200,19456, 208,11264, 216,27648, 224,7168, 232,23552,
+ 240,15360, 248,31744, 256,512, 264,16896, 272,8704, 280,25088, 288,4608,
+ 296,20992, 304,12800, 312,29184, 320,2560, 328,18944, 336,10752, 344,27136,
+ 352,6656, 360,23040, 368,14848, 376,31232, 384,1536, 392,17920, 400,9728,
+ 408,26112, 416,5632, 424,22016, 432,13824, 440,30208, 448,3584, 456,19968,
+ 464,11776, 472,28160, 480,7680, 488,24064, 496,15872, 504,32256, 520,16640,
+ 528,8448, 536,24832, 544,4352, 552,20736, 560,12544, 568,28928, 576,2304,
+ 584,18688, 592,10496, 600,26880, 608,6400, 616,22784, 624,14592, 632,30976,
+ 640,1280, 648,17664, 656,9472, 664,25856, 672,5376, 680,21760, 688,13568,
+ 696,29952, 704,3328, 712,19712, 720,11520, 728,27904, 736,7424, 744,23808,
+ 752,15616, 760,32000, 776,17152, 784,8960, 792,25344, 800,4864, 808,21248,
+ 816,13056, 824,29440, 832,2816, 840,19200, 848,11008, 856,27392, 864,6912,
+ 872,23296, 880,15104, 888,31488, 896,1792, 904,18176, 912,9984, 920,26368,
+ 928,5888, 936,22272, 944,14080, 952,30464, 960,3840, 968,20224, 976,12032,
+ 984,28416, 992,7936, 1000,24320, 1008,16128, 1016,32512, 1032,16512, 1040,8320,
+ 1048,24704, 1056,4224, 1064,20608, 1072,12416, 1080,28800, 1088,2176,
+ 1096,18560, 1104,10368, 1112,26752, 1120,6272, 1128,22656, 1136,14464,
+ 1144,30848, 1160,17536, 1168,9344, 1176,25728, 1184,5248, 1192,21632,
+ 1200,13440, 1208,29824, 1216,3200, 1224,19584, 1232,11392, 1240,27776,
+ 1248,7296, 1256,23680, 1264,15488, 1272,31872, 1288,17024, 1296,8832,
+ 1304,25216, 1312,4736, 1320,21120, 1328,12928, 1336,29312, 1344,2688,
+ 1352,19072, 1360,10880, 1368,27264, 1376,6784, 1384,23168, 1392,14976,
+ 1400,31360, 1408,1664, 1416,18048, 1424,9856, 1432,26240, 1440,5760, 1448,22144,
+ 1456,13952, 1464,30336, 1472,3712, 1480,20096, 1488,11904, 1496,28288,
+ 1504,7808, 1512,24192, 1520,16000, 1528,32384, 1544,16768, 1552,8576,
+ 1560,24960, 1568,4480, 1576,20864, 1584,12672, 1592,29056, 1600,2432,
+ 1608,18816, 1616,10624, 1624,27008, 1632,6528, 1640,22912, 1648,14720,
+ 1656,31104, 1672,17792, 1680,9600, 1688,25984, 1696,5504, 1704,21888,
+ 1712,13696, 1720,30080, 1728,3456, 1736,19840, 1744,11648, 1752,28032,
+ 1760,7552, 1768,23936, 1776,15744, 1784,32128, 1800,17280, 1808,9088,
+ 1816,25472, 1824,4992, 1832,21376, 1840,13184, 1848,29568, 1856,2944,
+ 1864,19328, 1872,11136, 1880,27520, 1888,7040, 1896,23424, 1904,15232,
+ 1912,31616, 1928,18304, 1936,10112, 1944,26496, 1952,6016, 1960,22400,
+ 1968,14208, 1976,30592, 1984,3968, 1992,20352, 2000,12160, 2008,28544,
+ 2016,8064, 2024,24448, 2032,16256, 2040,32640, 2056,16448, 2064,8256,
+ 2072,24640, 2080,4160, 2088,20544, 2096,12352, 2104,28736, 2120,18496,
+ 2128,10304, 2136,26688, 2144,6208, 2152,22592, 2160,14400, 2168,30784,
+ 2184,17472, 2192,9280, 2200,25664, 2208,5184, 2216,21568, 2224,13376,
+ 2232,29760, 2240,3136, 2248,19520, 2256,11328, 2264,27712, 2272,7232,
+ 2280,23616, 2288,15424, 2296,31808, 2312,16960, 2320,8768, 2328,25152,
+ 2336,4672, 2344,21056, 2352,12864, 2360,29248, 2368,2624, 2376,19008,
+ 2384,10816, 2392,27200, 2400,6720, 2408,23104, 2416,14912, 2424,31296,
+ 2440,17984, 2448,9792, 2456,26176, 2464,5696, 2472,22080, 2480,13888,
+ 2488,30272, 2496,3648, 2504,20032, 2512,11840, 2520,28224, 2528,7744,
+ 2536,24128, 2544,15936, 2552,32320, 2568,16704, 2576,8512, 2584,24896,
+ 2592,4416, 2600,20800, 2608,12608, 2616,28992, 2632,18752, 2640,10560,
+ 2648,26944, 2656,6464, 2664,22848, 2672,14656, 2680,31040, 2696,17728,
+ 2704,9536, 2712,25920, 2720,5440, 2728,21824, 2736,13632, 2744,30016, 2752,3392,
+ 2760,19776, 2768,11584, 2776,27968, 2784,7488, 2792,23872, 2800,15680,
+ 2808,32064, 2824,17216, 2832,9024, 2840,25408, 2848,4928, 2856,21312,
+ 2864,13120, 2872,29504, 2888,19264, 2896,11072, 2904,27456, 2912,6976,
+ 2920,23360, 2928,15168, 2936,31552, 2952,18240, 2960,10048, 2968,26432,
+ 2976,5952, 2984,22336, 2992,14144, 3000,30528, 3008,3904, 3016,20288,
+ 3024,12096, 3032,28480, 3040,8000, 3048,24384, 3056,16192, 3064,32576,
+ 3080,16576, 3088,8384, 3096,24768, 3104,4288, 3112,20672, 3120,12480,
+ 3128,28864, 3144,18624, 3152,10432, 3160,26816, 3168,6336, 3176,22720,
+ 3184,14528, 3192,30912, 3208,17600, 3216,9408, 3224,25792, 3232,5312,
+ 3240,21696, 3248,13504, 3256,29888, 3272,19648, 3280,11456, 3288,27840,
+ 3296,7360, 3304,23744, 3312,15552, 3320,31936, 3336,17088, 3344,8896,
+ 3352,25280, 3360,4800, 3368,21184, 3376,12992, 3384,29376, 3400,19136,
+ 3408,10944, 3416,27328, 3424,6848, 3432,23232, 3440,15040, 3448,31424,
+ 3464,18112, 3472,9920, 3480,26304, 3488,5824, 3496,22208, 3504,14016,
+ 3512,30400, 3520,3776, 3528,20160, 3536,11968, 3544,28352, 3552,7872,
+ 3560,24256, 3568,16064, 3576,32448, 3592,16832, 3600,8640, 3608,25024,
+ 3616,4544, 3624,20928, 3632,12736, 3640,29120, 3656,18880, 3664,10688,
+ 3672,27072, 3680,6592, 3688,22976, 3696,14784, 3704,31168, 3720,17856,
+ 3728,9664, 3736,26048, 3744,5568, 3752,21952, 3760,13760, 3768,30144,
+ 3784,19904, 3792,11712, 3800,28096, 3808,7616, 3816,24000, 3824,15808,
+ 3832,32192, 3848,17344, 3856,9152, 3864,25536, 3872,5056, 3880,21440,
+ 3888,13248, 3896,29632, 3912,19392, 3920,11200, 3928,27584, 3936,7104,
+ 3944,23488, 3952,15296, 3960,31680, 3976,18368, 3984,10176, 3992,26560,
+ 4000,6080, 4008,22464, 4016,14272, 4024,30656, 4040,20416, 4048,12224,
+ 4056,28608, 4064,8128, 4072,24512, 4080,16320, 4088,32704, 4104,16416,
+ 4112,8224, 4120,24608, 4136,20512, 4144,12320, 4152,28704, 4168,18464,
+ 4176,10272, 4184,26656, 4192,6176, 4200,22560, 4208,14368, 4216,30752,
+ 4232,17440, 4240,9248, 4248,25632, 4256,5152, 4264,21536, 4272,13344,
+ 4280,29728, 4296,19488, 4304,11296, 4312,27680, 4320,7200, 4328,23584,
+ 4336,15392, 4344,31776, 4360,16928, 4368,8736, 4376,25120, 4384,4640,
+ 4392,21024, 4400,12832, 4408,29216, 4424,18976, 4432,10784, 4440,27168,
+ 4448,6688, 4456,23072, 4464,14880, 4472,31264, 4488,17952, 4496,9760,
+ 4504,26144, 4512,5664, 4520,22048, 4528,13856, 4536,30240, 4552,20000,
+ 4560,11808, 4568,28192, 4576,7712, 4584,24096, 4592,15904, 4600,32288,
+ 4616,16672, 4624,8480, 4632,24864, 4648,20768, 4656,12576, 4664,28960,
+ 4680,18720, 4688,10528, 4696,26912, 4704,6432, 4712,22816, 4720,14624,
+ 4728,31008, 4744,17696, 4752,9504, 4760,25888, 4768,5408, 4776,21792,
+ 4784,13600, 4792,29984, 4808,19744, 4816,11552, 4824,27936, 4832,7456,
+ 4840,23840, 4848,15648, 4856,32032, 4872,17184, 4880,8992, 4888,25376,
+ 4904,21280, 4912,13088, 4920,29472, 4936,19232, 4944,11040, 4952,27424,
+ 4960,6944, 4968,23328, 4976,15136, 4984,31520, 5000,18208, 5008,10016,
+ 5016,26400, 5024,5920, 5032,22304, 5040,14112, 5048,30496, 5064,20256,
+ 5072,12064, 5080,28448, 5088,7968, 5096,24352, 5104,16160, 5112,32544,
+ 5128,16544, 5136,8352, 5144,24736, 5160,20640, 5168,12448, 5176,28832,
+ 5192,18592, 5200,10400, 5208,26784, 5216,6304, 5224,22688, 5232,14496,
+ 5240,30880, 5256,17568, 5264,9376, 5272,25760, 5288,21664, 5296,13472,
+ 5304,29856, 5320,19616, 5328,11424, 5336,27808, 5344,7328, 5352,23712,
+ 5360,15520, 5368,31904, 5384,17056, 5392,8864, 5400,25248, 5416,21152,
+ 5424,12960, 5432,29344, 5448,19104, 5456,10912, 5464,27296, 5472,6816,
+ 5480,23200, 5488,15008, 5496,31392, 5512,18080, 5520,9888, 5528,26272,
+ 5536,5792, 5544,22176, 5552,13984, 5560,30368, 5576,20128, 5584,11936,
+ 5592,28320, 5600,7840, 5608,24224, 5616,16032, 5624,32416, 5640,16800,
+ 5648,8608, 5656,24992, 5672,20896, 5680,12704, 5688,29088, 5704,18848,
+ 5712,10656, 5720,27040, 5728,6560, 5736,22944, 5744,14752, 5752,31136,
+ 5768,17824, 5776,9632, 5784,26016, 5800,21920, 5808,13728, 5816,30112,
+ 5832,19872, 5840,11680, 5848,28064, 5856,7584, 5864,23968, 5872,15776,
+ 5880,32160, 5896,17312, 5904,9120, 5912,25504, 5928,21408, 5936,13216,
+ 5944,29600, 5960,19360, 5968,11168, 5976,27552, 5984,7072, 5992,23456,
+ 6000,15264, 6008,31648, 6024,18336, 6032,10144, 6040,26528, 6056,22432,
+ 6064,14240, 6072,30624, 6088,20384, 6096,12192, 6104,28576, 6112,8096,
+ 6120,24480, 6128,16288, 6136,32672, 6152,16480, 6160,8288, 6168,24672,
+ 6184,20576, 6192,12384, 6200,28768, 6216,18528, 6224,10336, 6232,26720,
+ 6248,22624, 6256,14432, 6264,30816, 6280,17504, 6288,9312, 6296,25696,
+ 6312,21600, 6320,13408, 6328,29792, 6344,19552, 6352,11360, 6360,27744,
+ 6368,7264, 6376,23648, 6384,15456, 6392,31840, 6408,16992, 6416,8800,
+ 6424,25184, 6440,21088, 6448,12896, 6456,29280, 6472,19040, 6480,10848,
+ 6488,27232, 6496,6752, 6504,23136, 6512,14944, 6520,31328, 6536,18016,
+ 6544,9824, 6552,26208, 6568,22112, 6576,13920, 6584,30304, 6600,20064,
+ 6608,11872, 6616,28256, 6624,7776, 6632,24160, 6640,15968, 6648,32352,
+ 6664,16736, 6672,8544, 6680,24928, 6696,20832, 6704,12640, 6712,29024,
+ 6728,18784, 6736,10592, 6744,26976, 6760,22880, 6768,14688, 6776,31072,
+ 6792,17760, 6800,9568, 6808,25952, 6824,21856, 6832,13664, 6840,30048,
+ 6856,19808, 6864,11616, 6872,28000, 6880,7520, 6888,23904, 6896,15712,
+ 6904,32096, 6920,17248, 6928,9056, 6936,25440, 6952,21344, 6960,13152,
+ 6968,29536, 6984,19296, 6992,11104, 7000,27488, 7016,23392, 7024,15200,
+ 7032,31584, 7048,18272, 7056,10080, 7064,26464, 7080,22368, 7088,14176,
+ 7096,30560, 7112,20320, 7120,12128, 7128,28512, 7136,8032, 7144,24416,
+ 7152,16224, 7160,32608, 7176,16608, 7184,8416, 7192,24800, 7208,20704,
+ 7216,12512, 7224,28896, 7240,18656, 7248,10464, 7256,26848, 7272,22752,
+ 7280,14560, 7288,30944, 7304,17632, 7312,9440, 7320,25824, 7336,21728,
+ 7344,13536, 7352,29920, 7368,19680, 7376,11488, 7384,27872, 7400,23776,
+ 7408,15584, 7416,31968, 7432,17120, 7440,8928, 7448,25312, 7464,21216,
+ 7472,13024, 7480,29408, 7496,19168, 7504,10976, 7512,27360, 7528,23264,
+ 7536,15072, 7544,31456, 7560,18144, 7568,9952, 7576,26336, 7592,22240,
+ 7600,14048, 7608,30432, 7624,20192, 7632,12000, 7640,28384, 7648,7904,
+ 7656,24288, 7664,16096, 7672,32480, 7688,16864, 7696,8672, 7704,25056,
+ 7720,20960, 7728,12768, 7736,29152, 7752,18912, 7760,10720, 7768,27104,
+ 7784,23008, 7792,14816, 7800,31200, 7816,17888, 7824,9696, 7832,26080,
+ 7848,21984, 7856,13792, 7864,30176, 7880,19936, 7888,11744, 7896,28128,
+ 7912,24032, 7920,15840, 7928,32224, 7944,17376, 7952,9184, 7960,25568,
+ 7976,21472, 7984,13280, 7992,29664, 8008,19424, 8016,11232, 8024,27616,
+ 8040,23520, 8048,15328, 8056,31712, 8072,18400, 8080,10208, 8088,26592,
+ 8104,22496, 8112,14304, 8120,30688, 8136,20448, 8144,12256, 8152,28640,
+ 8168,24544, 8176,16352, 8184,32736, 8200,16400, 8216,24592, 8232,20496,
+ 8240,12304, 8248,28688, 8264,18448, 8272,10256, 8280,26640, 8296,22544,
+ 8304,14352, 8312,30736, 8328,17424, 8336,9232, 8344,25616, 8360,21520,
+ 8368,13328, 8376,29712, 8392,19472, 8400,11280, 8408,27664, 8424,23568,
+ 8432,15376, 8440,31760, 8456,16912, 8464,8720, 8472,25104, 8488,21008,
+ 8496,12816, 8504,29200, 8520,18960, 8528,10768, 8536,27152, 8552,23056,
+ 8560,14864, 8568,31248, 8584,17936, 8592,9744, 8600,26128, 8616,22032,
+ 8624,13840, 8632,30224, 8648,19984, 8656,11792, 8664,28176, 8680,24080,
+ 8688,15888, 8696,32272, 8712,16656, 8728,24848, 8744,20752, 8752,12560,
+ 8760,28944, 8776,18704, 8784,10512, 8792,26896, 8808,22800, 8816,14608,
+ 8824,30992, 8840,17680, 8848,9488, 8856,25872, 8872,21776, 8880,13584,
+ 8888,29968, 8904,19728, 8912,11536, 8920,27920, 8936,23824, 8944,15632,
+ 8952,32016, 8968,17168, 8984,25360, 9000,21264, 9008,13072, 9016,29456,
+ 9032,19216, 9040,11024, 9048,27408, 9064,23312, 9072,15120, 9080,31504,
+ 9096,18192, 9104,10000, 9112,26384, 9128,22288, 9136,14096, 9144,30480,
+ 9160,20240, 9168,12048, 9176,28432, 9192,24336, 9200,16144, 9208,32528,
+ 9224,16528, 9240,24720, 9256,20624, 9264,12432, 9272,28816, 9288,18576,
+ 9296,10384, 9304,26768, 9320,22672, 9328,14480, 9336,30864, 9352,17552,
+ 9368,25744, 9384,21648, 9392,13456, 9400,29840, 9416,19600, 9424,11408,
+ 9432,27792, 9448,23696, 9456,15504, 9464,31888, 9480,17040, 9496,25232,
+ 9512,21136, 9520,12944, 9528,29328, 9544,19088, 9552,10896, 9560,27280,
+ 9576,23184, 9584,14992, 9592,31376, 9608,18064, 9616,9872, 9624,26256,
+ 9640,22160, 9648,13968, 9656,30352, 9672,20112, 9680,11920, 9688,28304,
+ 9704,24208, 9712,16016, 9720,32400, 9736,16784, 9752,24976, 9768,20880,
+ 9776,12688, 9784,29072, 9800,18832, 9808,10640, 9816,27024, 9832,22928,
+ 9840,14736, 9848,31120, 9864,17808, 9880,26000, 9896,21904, 9904,13712,
+ 9912,30096, 9928,19856, 9936,11664, 9944,28048, 9960,23952, 9968,15760,
+ 9976,32144, 9992,17296, 10008,25488, 10024,21392, 10032,13200, 10040,29584,
+ 10056,19344, 10064,11152, 10072,27536, 10088,23440, 10096,15248, 10104,31632,
+ 10120,18320, 10136,26512, 10152,22416, 10160,14224, 10168,30608, 10184,20368,
+ 10192,12176, 10200,28560, 10216,24464, 10224,16272, 10232,32656, 10248,16464,
+ 10264,24656, 10280,20560, 10288,12368, 10296,28752, 10312,18512, 10328,26704,
+ 10344,22608, 10352,14416, 10360,30800, 10376,17488, 10392,25680, 10408,21584,
+ 10416,13392, 10424,29776, 10440,19536, 10448,11344, 10456,27728, 10472,23632,
+ 10480,15440, 10488,31824, 10504,16976, 10520,25168, 10536,21072, 10544,12880,
+ 10552,29264, 10568,19024, 10576,10832, 10584,27216, 10600,23120, 10608,14928,
+ 10616,31312, 10632,18000, 10648,26192, 10664,22096, 10672,13904, 10680,30288,
+ 10696,20048, 10704,11856, 10712,28240, 10728,24144, 10736,15952, 10744,32336,
+ 10760,16720, 10776,24912, 10792,20816, 10800,12624, 10808,29008, 10824,18768,
+ 10840,26960, 10856,22864, 10864,14672, 10872,31056, 10888,17744, 10904,25936,
+ 10920,21840, 10928,13648, 10936,30032, 10952,19792, 10960,11600, 10968,27984,
+ 10984,23888, 10992,15696, 11000,32080, 11016,17232, 11032,25424, 11048,21328,
+ 11056,13136, 11064,29520, 11080,19280, 11096,27472, 11112,23376, 11120,15184,
+ 11128,31568, 11144,18256, 11160,26448, 11176,22352, 11184,14160, 11192,30544,
+ 11208,20304, 11216,12112, 11224,28496, 11240,24400, 11248,16208, 11256,32592,
+ 11272,16592, 11288,24784, 11304,20688, 11312,12496, 11320,28880, 11336,18640,
+ 11352,26832, 11368,22736, 11376,14544, 11384,30928, 11400,17616, 11416,25808,
+ 11432,21712, 11440,13520, 11448,29904, 11464,19664, 11480,27856, 11496,23760,
+ 11504,15568, 11512,31952, 11528,17104, 11544,25296, 11560,21200, 11568,13008,
+ 11576,29392, 11592,19152, 11608,27344, 11624,23248, 11632,15056, 11640,31440,
+ 11656,18128, 11672,26320, 11688,22224, 11696,14032, 11704,30416, 11720,20176,
+ 11728,11984, 11736,28368, 11752,24272, 11760,16080, 11768,32464, 11784,16848,
+ 11800,25040, 11816,20944, 11824,12752, 11832,29136, 11848,18896, 11864,27088,
+ 11880,22992, 11888,14800, 11896,31184, 11912,17872, 11928,26064, 11944,21968,
+ 11952,13776, 11960,30160, 11976,19920, 11992,28112, 12008,24016, 12016,15824,
+ 12024,32208, 12040,17360, 12056,25552, 12072,21456, 12080,13264, 12088,29648,
+ 12104,19408, 12120,27600, 12136,23504, 12144,15312, 12152,31696, 12168,18384,
+ 12184,26576, 12200,22480, 12208,14288, 12216,30672, 12232,20432, 12248,28624,
+ 12264,24528, 12272,16336, 12280,32720, 12296,16432, 12312,24624, 12328,20528,
+ 12344,28720, 12360,18480, 12376,26672, 12392,22576, 12400,14384, 12408,30768,
+ 12424,17456, 12440,25648, 12456,21552, 12464,13360, 12472,29744, 12488,19504,
+ 12504,27696, 12520,23600, 12528,15408, 12536,31792, 12552,16944, 12568,25136,
+ 12584,21040, 12592,12848, 12600,29232, 12616,18992, 12632,27184, 12648,23088,
+ 12656,14896, 12664,31280, 12680,17968, 12696,26160, 12712,22064, 12720,13872,
+ 12728,30256, 12744,20016, 12760,28208, 12776,24112, 12784,15920, 12792,32304,
+ 12808,16688, 12824,24880, 12840,20784, 12856,28976, 12872,18736, 12888,26928,
+ 12904,22832, 12912,14640, 12920,31024, 12936,17712, 12952,25904, 12968,21808,
+ 12976,13616, 12984,30000, 13000,19760, 13016,27952, 13032,23856, 13040,15664,
+ 13048,32048, 13064,17200, 13080,25392, 13096,21296, 13112,29488, 13128,19248,
+ 13144,27440, 13160,23344, 13168,15152, 13176,31536, 13192,18224, 13208,26416,
+ 13224,22320, 13232,14128, 13240,30512, 13256,20272, 13272,28464, 13288,24368,
+ 13296,16176, 13304,32560, 13320,16560, 13336,24752, 13352,20656, 13368,28848,
+ 13384,18608, 13400,26800, 13416,22704, 13424,14512, 13432,30896, 13448,17584,
+ 13464,25776, 13480,21680, 13496,29872, 13512,19632, 13528,27824, 13544,23728,
+ 13552,15536, 13560,31920, 13576,17072, 13592,25264, 13608,21168, 13624,29360,
+ 13640,19120, 13656,27312, 13672,23216, 13680,15024, 13688,31408, 13704,18096,
+ 13720,26288, 13736,22192, 13744,14000, 13752,30384, 13768,20144, 13784,28336,
+ 13800,24240, 13808,16048, 13816,32432, 13832,16816, 13848,25008, 13864,20912,
+ 13880,29104, 13896,18864, 13912,27056, 13928,22960, 13936,14768, 13944,31152,
+ 13960,17840, 13976,26032, 13992,21936, 14008,30128, 14024,19888, 14040,28080,
+ 14056,23984, 14064,15792, 14072,32176, 14088,17328, 14104,25520, 14120,21424,
+ 14136,29616, 14152,19376, 14168,27568, 14184,23472, 14192,15280, 14200,31664,
+ 14216,18352, 14232,26544, 14248,22448, 14264,30640, 14280,20400, 14296,28592,
+ 14312,24496, 14320,16304, 14328,32688, 14344,16496, 14360,24688, 14376,20592,
+ 14392,28784, 14408,18544, 14424,26736, 14440,22640, 14456,30832, 14472,17520,
+ 14488,25712, 14504,21616, 14520,29808, 14536,19568, 14552,27760, 14568,23664,
+ 14576,15472, 14584,31856, 14600,17008, 14616,25200, 14632,21104, 14648,29296,
+ 14664,19056, 14680,27248, 14696,23152, 14704,14960, 14712,31344, 14728,18032,
+ 14744,26224, 14760,22128, 14776,30320, 14792,20080, 14808,28272, 14824,24176,
+ 14832,15984, 14840,32368, 14856,16752, 14872,24944, 14888,20848, 14904,29040,
+ 14920,18800, 14936,26992, 14952,22896, 14968,31088, 14984,17776, 15000,25968,
+ 15016,21872, 15032,30064, 15048,19824, 15064,28016, 15080,23920, 15088,15728,
+ 15096,32112, 15112,17264, 15128,25456, 15144,21360, 15160,29552, 15176,19312,
+ 15192,27504, 15208,23408, 15224,31600, 15240,18288, 15256,26480, 15272,22384,
+ 15288,30576, 15304,20336, 15320,28528, 15336,24432, 15344,16240, 15352,32624,
+ 15368,16624, 15384,24816, 15400,20720, 15416,28912, 15432,18672, 15448,26864,
+ 15464,22768, 15480,30960, 15496,17648, 15512,25840, 15528,21744, 15544,29936,
+ 15560,19696, 15576,27888, 15592,23792, 15608,31984, 15624,17136, 15640,25328,
+ 15656,21232, 15672,29424, 15688,19184, 15704,27376, 15720,23280, 15736,31472,
+ 15752,18160, 15768,26352, 15784,22256, 15800,30448, 15816,20208, 15832,28400,
+ 15848,24304, 15856,16112, 15864,32496, 15880,16880, 15896,25072, 15912,20976,
+ 15928,29168, 15944,18928, 15960,27120, 15976,23024, 15992,31216, 16008,17904,
+ 16024,26096, 16040,22000, 16056,30192, 16072,19952, 16088,28144, 16104,24048,
+ 16120,32240, 16136,17392, 16152,25584, 16168,21488, 16184,29680, 16200,19440,
+ 16216,27632, 16232,23536, 16248,31728, 16264,18416, 16280,26608, 16296,22512,
+ 16312,30704, 16328,20464, 16344,28656, 16360,24560, 16376,32752, 16408,24584,
+ 16424,20488, 16440,28680, 16456,18440, 16472,26632, 16488,22536, 16504,30728,
+ 16520,17416, 16536,25608, 16552,21512, 16568,29704, 16584,19464, 16600,27656,
+ 16616,23560, 16632,31752, 16648,16904, 16664,25096, 16680,21000, 16696,29192,
+ 16712,18952, 16728,27144, 16744,23048, 16760,31240, 16776,17928, 16792,26120,
+ 16808,22024, 16824,30216, 16840,19976, 16856,28168, 16872,24072, 16888,32264,
+ 16920,24840, 16936,20744, 16952,28936, 16968,18696, 16984,26888, 17000,22792,
+ 17016,30984, 17032,17672, 17048,25864, 17064,21768, 17080,29960, 17096,19720,
+ 17112,27912, 17128,23816, 17144,32008, 17176,25352, 17192,21256, 17208,29448,
+ 17224,19208, 17240,27400, 17256,23304, 17272,31496, 17288,18184, 17304,26376,
+ 17320,22280, 17336,30472, 17352,20232, 17368,28424, 17384,24328, 17400,32520,
+ 17432,24712, 17448,20616, 17464,28808, 17480,18568, 17496,26760, 17512,22664,
+ 17528,30856, 17560,25736, 17576,21640, 17592,29832, 17608,19592, 17624,27784,
+ 17640,23688, 17656,31880, 17688,25224, 17704,21128, 17720,29320, 17736,19080,
+ 17752,27272, 17768,23176, 17784,31368, 17800,18056, 17816,26248, 17832,22152,
+ 17848,30344, 17864,20104, 17880,28296, 17896,24200, 17912,32392, 17944,24968,
+ 17960,20872, 17976,29064, 17992,18824, 18008,27016, 18024,22920, 18040,31112,
+ 18072,25992, 18088,21896, 18104,30088, 18120,19848, 18136,28040, 18152,23944,
+ 18168,32136, 18200,25480, 18216,21384, 18232,29576, 18248,19336, 18264,27528,
+ 18280,23432, 18296,31624, 18328,26504, 18344,22408, 18360,30600, 18376,20360,
+ 18392,28552, 18408,24456, 18424,32648, 18456,24648, 18472,20552, 18488,28744,
+ 18520,26696, 18536,22600, 18552,30792, 18584,25672, 18600,21576, 18616,29768,
+ 18632,19528, 18648,27720, 18664,23624, 18680,31816, 18712,25160, 18728,21064,
+ 18744,29256, 18760,19016, 18776,27208, 18792,23112, 18808,31304, 18840,26184,
+ 18856,22088, 18872,30280, 18888,20040, 18904,28232, 18920,24136, 18936,32328,
+ 18968,24904, 18984,20808, 19000,29000, 19032,26952, 19048,22856, 19064,31048,
+ 19096,25928, 19112,21832, 19128,30024, 19144,19784, 19160,27976, 19176,23880,
+ 19192,32072, 19224,25416, 19240,21320, 19256,29512, 19288,27464, 19304,23368,
+ 19320,31560, 19352,26440, 19368,22344, 19384,30536, 19400,20296, 19416,28488,
+ 19432,24392, 19448,32584, 19480,24776, 19496,20680, 19512,28872, 19544,26824,
+ 19560,22728, 19576,30920, 19608,25800, 19624,21704, 19640,29896, 19672,27848,
+ 19688,23752, 19704,31944, 19736,25288, 19752,21192, 19768,29384, 19800,27336,
+ 19816,23240, 19832,31432, 19864,26312, 19880,22216, 19896,30408, 19912,20168,
+ 19928,28360, 19944,24264, 19960,32456, 19992,25032, 20008,20936, 20024,29128,
+ 20056,27080, 20072,22984, 20088,31176, 20120,26056, 20136,21960, 20152,30152,
+ 20184,28104, 20200,24008, 20216,32200, 20248,25544, 20264,21448, 20280,29640,
+ 20312,27592, 20328,23496, 20344,31688, 20376,26568, 20392,22472, 20408,30664,
+ 20440,28616, 20456,24520, 20472,32712, 20504,24616, 20536,28712, 20568,26664,
+ 20584,22568, 20600,30760, 20632,25640, 20648,21544, 20664,29736, 20696,27688,
+ 20712,23592, 20728,31784, 20760,25128, 20776,21032, 20792,29224, 20824,27176,
+ 20840,23080, 20856,31272, 20888,26152, 20904,22056, 20920,30248, 20952,28200,
+ 20968,24104, 20984,32296, 21016,24872, 21048,28968, 21080,26920, 21096,22824,
+ 21112,31016, 21144,25896, 21160,21800, 21176,29992, 21208,27944, 21224,23848,
+ 21240,32040, 21272,25384, 21304,29480, 21336,27432, 21352,23336, 21368,31528,
+ 21400,26408, 21416,22312, 21432,30504, 21464,28456, 21480,24360, 21496,32552,
+ 21528,24744, 21560,28840, 21592,26792, 21608,22696, 21624,30888, 21656,25768,
+ 21688,29864, 21720,27816, 21736,23720, 21752,31912, 21784,25256, 21816,29352,
+ 21848,27304, 21864,23208, 21880,31400, 21912,26280, 21928,22184, 21944,30376,
+ 21976,28328, 21992,24232, 22008,32424, 22040,25000, 22072,29096, 22104,27048,
+ 22120,22952, 22136,31144, 22168,26024, 22200,30120, 22232,28072, 22248,23976,
+ 22264,32168, 22296,25512, 22328,29608, 22360,27560, 22376,23464, 22392,31656,
+ 22424,26536, 22456,30632, 22488,28584, 22504,24488, 22520,32680, 22552,24680,
+ 22584,28776, 22616,26728, 22648,30824, 22680,25704, 22712,29800, 22744,27752,
+ 22760,23656, 22776,31848, 22808,25192, 22840,29288, 22872,27240, 22888,23144,
+ 22904,31336, 22936,26216, 22968,30312, 23000,28264, 23016,24168, 23032,32360,
+ 23064,24936, 23096,29032, 23128,26984, 23160,31080, 23192,25960, 23224,30056,
+ 23256,28008, 23272,23912, 23288,32104, 23320,25448, 23352,29544, 23384,27496,
+ 23416,31592, 23448,26472, 23480,30568, 23512,28520, 23528,24424, 23544,32616,
+ 23576,24808, 23608,28904, 23640,26856, 23672,30952, 23704,25832, 23736,29928,
+ 23768,27880, 23800,31976, 23832,25320, 23864,29416, 23896,27368, 23928,31464,
+ 23960,26344, 23992,30440, 24024,28392, 24040,24296, 24056,32488, 24088,25064,
+ 24120,29160, 24152,27112, 24184,31208, 24216,26088, 24248,30184, 24280,28136,
+ 24312,32232, 24344,25576, 24376,29672, 24408,27624, 24440,31720, 24472,26600,
+ 24504,30696, 24536,28648, 24568,32744, 24632,28696, 24664,26648, 24696,30744,
+ 24728,25624, 24760,29720, 24792,27672, 24824,31768, 24856,25112, 24888,29208,
+ 24920,27160, 24952,31256, 24984,26136, 25016,30232, 25048,28184, 25080,32280,
+ 25144,28952, 25176,26904, 25208,31000, 25240,25880, 25272,29976, 25304,27928,
+ 25336,32024, 25400,29464, 25432,27416, 25464,31512, 25496,26392, 25528,30488,
+ 25560,28440, 25592,32536, 25656,28824, 25688,26776, 25720,30872, 25784,29848,
+ 25816,27800, 25848,31896, 25912,29336, 25944,27288, 25976,31384, 26008,26264,
+ 26040,30360, 26072,28312, 26104,32408, 26168,29080, 26200,27032, 26232,31128,
+ 26296,30104, 26328,28056, 26360,32152, 26424,29592, 26456,27544, 26488,31640,
+ 26552,30616, 26584,28568, 26616,32664, 26680,28760, 26744,30808, 26808,29784,
+ 26840,27736, 26872,31832, 26936,29272, 26968,27224, 27000,31320, 27064,30296,
+ 27096,28248, 27128,32344, 27192,29016, 27256,31064, 27320,30040, 27352,27992,
+ 27384,32088, 27448,29528, 27512,31576, 27576,30552, 27608,28504, 27640,32600,
+ 27704,28888, 27768,30936, 27832,29912, 27896,31960, 27960,29400, 28024,31448,
+ 28088,30424, 28120,28376, 28152,32472, 28216,29144, 28280,31192, 28344,30168,
+ 28408,32216, 28472,29656, 28536,31704, 28600,30680, 28664,32728, 28792,30776,
+ 28856,29752, 28920,31800, 28984,29240, 29048,31288, 29112,30264, 29176,32312,
+ 29304,31032, 29368,30008, 29432,32056, 29560,31544, 29624,30520, 29688,32568,
+ 29816,30904, 29944,31928, 30072,31416, 30136,30392, 30200,32440, 30328,31160,
+ 30456,32184, 30584,31672, 30712,32696, 30968,31864, 31096,31352, 31224,32376,
+ 31480,32120, 31736,32632, 32248,32504
+};
+#endif /* !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) */
+
#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || defined(ARM_TABLE_BITREVIDX_FLT_16)
@@ -17833,6 +26872,4141 @@
};
#endif /* !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) */
+#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || defined(ARM_TABLE_TWIDDLECOEF_RFFT_F64_32)
+/**
+ @par
+ Example code for Double Precision Floating-point RFFT Twiddle factors Generation:
+ @par
+ <pre>TW = exp(pi/2*i-2*pi*i*[0:L/2-1]/L).' </pre>
+ @par
+ Real and Imag values are in interleaved fashion
+*/
+const uint64_t twiddleCoefF64_rfft_32[32] = {
+ 0x0000000000000000, 0x3ff0000000000000, // 0, 1
+ 0x3fc8f8b83c69a60a, 0x3fef6297cff75cb0, //0.19509, 0.98079
+ 0x3fd87de2a6aea963, 0x3fed906bcf328d46, //0.38268, 0.92388
+ 0x3fe1c73b39ae68c8, 0x3fea9b66290ea1a3, //0.55557, 0.83147
+ 0x3fe6a09e667f3bcc, 0x3fe6a09e667f3bcc, //0.70711, 0.70711
+ 0x3fea9b66290ea1a3, 0x3fe1c73b39ae68c8, //0.83147, 0.55557
+ 0x3fed906bcf328d46, 0x3fd87de2a6aea963, //0.92388, 0.38268
+ 0x3fef6297cff75cb0, 0x3fc8f8b83c69a60a, //0.98079, 0.19509
+ 0x3ff0000000000000, 0x0000000000000000, // 1, 0
+ 0x3fef6297cff75cb0, 0xbfc8f8b83c69a60a, //0.98079,-0.19509
+ 0x3fed906bcf328d46, 0xbfd87de2a6aea963, //0.92388,-0.38268
+ 0x3fea9b66290ea1a3, 0xbfe1c73b39ae68c8, //0.83147,-0.55557
+ 0x3fe6a09e667f3bcc, 0xbfe6a09e667f3bcc, //0.70711,-0.70711
+ 0x3fe1c73b39ae68c8, 0xbfea9b66290ea1a3, //0.55557,-0.83147
+ 0x3fd87de2a6aea963, 0xbfed906bcf328d46, //0.38268,-0.92388
+ 0x3fc8f8b83c69a60a, 0xbfef6297cff75cb0, //0.19509,-0.98079
+};
+#endif /* !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) */
+
+#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || defined(ARM_TABLE_TWIDDLECOEF_RFFT_F64_64)
+const uint64_t twiddleCoefF64_rfft_64[64] = {
+ 0x0000000000000000, 0x3ff0000000000000, // 0, 1'
+ 0x3fb917a6bc29b42c, 0x3fefd88da3d12526, //0.098017, 0.99518'
+ 0x3fc8f8b83c69a60a, 0x3fef6297cff75cb0, // 0.19509, 0.98079'
+ 0x3fd294062ed59f05, 0x3fee9f4156c62dda, // 0.29028, 0.95694'
+ 0x3fd87de2a6aea963, 0x3fed906bcf328d46, // 0.38268, 0.92388'
+ 0x3fde2b5d3806f63b, 0x3fec38b2f180bdb1, // 0.4714, 0.88192'
+ 0x3fe1c73b39ae68c8, 0x3fea9b66290ea1a3, // 0.55557, 0.83147'
+ 0x3fe44cf325091dd6, 0x3fe8bc806b151741, // 0.63439, 0.77301'
+ 0x3fe6a09e667f3bcc, 0x3fe6a09e667f3bcc, // 0.70711, 0.70711'
+ 0x3fe8bc806b151741, 0x3fe44cf325091dd6, // 0.77301, 0.63439'
+ 0x3fea9b66290ea1a3, 0x3fe1c73b39ae68c8, // 0.83147, 0.55557'
+ 0x3fec38b2f180bdb1, 0x3fde2b5d3806f63b, // 0.88192, 0.4714'
+ 0x3fed906bcf328d46, 0x3fd87de2a6aea963, // 0.92388, 0.38268'
+ 0x3fee9f4156c62dda, 0x3fd294062ed59f05, // 0.95694, 0.29028'
+ 0x3fef6297cff75cb0, 0x3fc8f8b83c69a60a, // 0.98079, 0.19509'
+ 0x3fefd88da3d12526, 0x3fb917a6bc29b42c, // 0.99518, 0.098017'
+ 0x3ff0000000000000, 0x0000000000000000, // 1, 0'
+ 0x3fefd88da3d12526, 0xbfb917a6bc29b42c, // 0.99518,-0.098017'
+ 0x3fef6297cff75cb0, 0xbfc8f8b83c69a60a, // 0.98079, -0.19509'
+ 0x3fee9f4156c62dda, 0xbfd294062ed59f05, // 0.95694, -0.29028'
+ 0x3fed906bcf328d46, 0xbfd87de2a6aea963, // 0.92388, -0.38268'
+ 0x3fec38b2f180bdb1, 0xbfde2b5d3806f63b, // 0.88192, -0.4714'
+ 0x3fea9b66290ea1a3, 0xbfe1c73b39ae68c8, // 0.83147, -0.55557'
+ 0x3fe8bc806b151741, 0xbfe44cf325091dd6, // 0.77301, -0.63439'
+ 0x3fe6a09e667f3bcc, 0xbfe6a09e667f3bcc, // 0.70711, -0.70711'
+ 0x3fe44cf325091dd6, 0xbfe8bc806b151741, // 0.63439, -0.77301'
+ 0x3fe1c73b39ae68c8, 0xbfea9b66290ea1a3, // 0.55557, -0.83147'
+ 0x3fde2b5d3806f63b, 0xbfec38b2f180bdb1, // 0.4714, -0.88192'
+ 0x3fd87de2a6aea963, 0xbfed906bcf328d46, // 0.38268, -0.92388'
+ 0x3fd294062ed59f05, 0xbfee9f4156c62dda, // 0.29028, -0.95694'
+ 0x3fc8f8b83c69a60a, 0xbfef6297cff75cb0, // 0.19509, -0.98079'
+ 0x3fb917a6bc29b42c, 0xbfefd88da3d12526, //0.098017, -0.99518'
+};
+#endif /* !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) */
+
+#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || defined(ARM_TABLE_TWIDDLECOEF_RFFT_F64_128)
+const uint64_t twiddleCoefF64_rfft_128[128] = {
+ 0x0000000000000000, 0x3ff0000000000000, // 0, 1'
+ 0x3fa91f65f10dd814, 0x3feff621e3796d7e, //0.049068, 0.9988'
+ 0x3fb917a6bc29b42c, 0x3fefd88da3d12526, //0.098017, 0.99518'
+ 0x3fc2c8106e8e613a, 0x3fefa7557f08a517, // 0.14673, 0.98918'
+ 0x3fc8f8b83c69a60a, 0x3fef6297cff75cb0, // 0.19509, 0.98079'
+ 0x3fcf19f97b215f1a, 0x3fef0a7efb9230d7, // 0.24298, 0.97003'
+ 0x3fd294062ed59f05, 0x3fee9f4156c62dda, // 0.29028, 0.95694'
+ 0x3fd58f9a75ab1fdd, 0x3fee212104f686e5, // 0.33689, 0.94154'
+ 0x3fd87de2a6aea963, 0x3fed906bcf328d46, // 0.38268, 0.92388'
+ 0x3fdb5d1009e15cc0, 0x3feced7af43cc773, // 0.42756, 0.90399'
+ 0x3fde2b5d3806f63b, 0x3fec38b2f180bdb1, // 0.4714, 0.88192'
+ 0x3fe073879922ffed, 0x3feb728345196e3e, // 0.5141, 0.85773'
+ 0x3fe1c73b39ae68c8, 0x3fea9b66290ea1a3, // 0.55557, 0.83147'
+ 0x3fe30ff7fce17035, 0x3fe9b3e047f38741, // 0.5957, 0.80321'
+ 0x3fe44cf325091dd6, 0x3fe8bc806b151741, // 0.63439, 0.77301'
+ 0x3fe57d69348cec9f, 0x3fe7b5df226aafb0, // 0.67156, 0.74095'
+ 0x3fe6a09e667f3bcc, 0x3fe6a09e667f3bcc, // 0.70711, 0.70711'
+ 0x3fe7b5df226aafb0, 0x3fe57d69348cec9f, // 0.74095, 0.67156'
+ 0x3fe8bc806b151741, 0x3fe44cf325091dd6, // 0.77301, 0.63439'
+ 0x3fe9b3e047f38741, 0x3fe30ff7fce17035, // 0.80321, 0.5957'
+ 0x3fea9b66290ea1a3, 0x3fe1c73b39ae68c8, // 0.83147, 0.55557'
+ 0x3feb728345196e3e, 0x3fe073879922ffed, // 0.85773, 0.5141'
+ 0x3fec38b2f180bdb1, 0x3fde2b5d3806f63b, // 0.88192, 0.4714'
+ 0x3feced7af43cc773, 0x3fdb5d1009e15cc0, // 0.90399, 0.42756'
+ 0x3fed906bcf328d46, 0x3fd87de2a6aea963, // 0.92388, 0.38268'
+ 0x3fee212104f686e5, 0x3fd58f9a75ab1fdd, // 0.94154, 0.33689'
+ 0x3fee9f4156c62dda, 0x3fd294062ed59f05, // 0.95694, 0.29028'
+ 0x3fef0a7efb9230d7, 0x3fcf19f97b215f1a, // 0.97003, 0.24298'
+ 0x3fef6297cff75cb0, 0x3fc8f8b83c69a60a, // 0.98079, 0.19509'
+ 0x3fefa7557f08a517, 0x3fc2c8106e8e613a, // 0.98918, 0.14673'
+ 0x3fefd88da3d12526, 0x3fb917a6bc29b42c, // 0.99518, 0.098017'
+ 0x3feff621e3796d7e, 0x3fa91f65f10dd814, // 0.9988, 0.049068'
+ 0x3ff0000000000000, 0x0000000000000000, // 1, 0'
+ 0x3feff621e3796d7e, 0xbfa91f65f10dd814, // 0.9988,-0.049068'
+ 0x3fefd88da3d12526, 0xbfb917a6bc29b42c, // 0.99518,-0.098017'
+ 0x3fefa7557f08a517, 0xbfc2c8106e8e613a, // 0.98918, -0.14673'
+ 0x3fef6297cff75cb0, 0xbfc8f8b83c69a60a, // 0.98079, -0.19509'
+ 0x3fef0a7efb9230d7, 0xbfcf19f97b215f1a, // 0.97003, -0.24298'
+ 0x3fee9f4156c62dda, 0xbfd294062ed59f05, // 0.95694, -0.29028'
+ 0x3fee212104f686e5, 0xbfd58f9a75ab1fdd, // 0.94154, -0.33689'
+ 0x3fed906bcf328d46, 0xbfd87de2a6aea963, // 0.92388, -0.38268'
+ 0x3feced7af43cc773, 0xbfdb5d1009e15cc0, // 0.90399, -0.42756'
+ 0x3fec38b2f180bdb1, 0xbfde2b5d3806f63b, // 0.88192, -0.4714'
+ 0x3feb728345196e3e, 0xbfe073879922ffed, // 0.85773, -0.5141'
+ 0x3fea9b66290ea1a3, 0xbfe1c73b39ae68c8, // 0.83147, -0.55557'
+ 0x3fe9b3e047f38741, 0xbfe30ff7fce17035, // 0.80321, -0.5957'
+ 0x3fe8bc806b151741, 0xbfe44cf325091dd6, // 0.77301, -0.63439'
+ 0x3fe7b5df226aafb0, 0xbfe57d69348cec9f, // 0.74095, -0.67156'
+ 0x3fe6a09e667f3bcc, 0xbfe6a09e667f3bcc, // 0.70711, -0.70711'
+ 0x3fe57d69348cec9f, 0xbfe7b5df226aafb0, // 0.67156, -0.74095'
+ 0x3fe44cf325091dd6, 0xbfe8bc806b151741, // 0.63439, -0.77301'
+ 0x3fe30ff7fce17035, 0xbfe9b3e047f38741, // 0.5957, -0.80321'
+ 0x3fe1c73b39ae68c8, 0xbfea9b66290ea1a3, // 0.55557, -0.83147'
+ 0x3fe073879922ffed, 0xbfeb728345196e3e, // 0.5141, -0.85773'
+ 0x3fde2b5d3806f63b, 0xbfec38b2f180bdb1, // 0.4714, -0.88192'
+ 0x3fdb5d1009e15cc0, 0xbfeced7af43cc773, // 0.42756, -0.90399'
+ 0x3fd87de2a6aea963, 0xbfed906bcf328d46, // 0.38268, -0.92388'
+ 0x3fd58f9a75ab1fdd, 0xbfee212104f686e5, // 0.33689, -0.94154'
+ 0x3fd294062ed59f05, 0xbfee9f4156c62dda, // 0.29028, -0.95694'
+ 0x3fcf19f97b215f1a, 0xbfef0a7efb9230d7, // 0.24298, -0.97003'
+ 0x3fc8f8b83c69a60a, 0xbfef6297cff75cb0, // 0.19509, -0.98079'
+ 0x3fc2c8106e8e613a, 0xbfefa7557f08a517, // 0.14673, -0.98918'
+ 0x3fb917a6bc29b42c, 0xbfefd88da3d12526, //0.098017, -0.99518'
+ 0x3fa91f65f10dd814, 0xbfeff621e3796d7e, //0.049068, -0.9988'
+};
+#endif /* !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) */
+
+#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || defined(ARM_TABLE_TWIDDLECOEF_RFFT_F64_256)
+const uint64_t twiddleCoefF64_rfft_256[256] = {
+ 0x0000000000000000, 0x3ff0000000000000, // 0, 1
+ 0x3f992155f7a3667e, 0x3feffd886084cd0d, //0.024541, 0.9997
+ 0x3fa91f65f10dd814, 0x3feff621e3796d7e, //0.049068, 0.9988
+ 0x3fb2d52092ce19f6, 0x3fefe9cdad01883a, //0.073565, 0.99729
+ 0x3fb917a6bc29b42c, 0x3fefd88da3d12526, //0.098017, 0.99518
+ 0x3fbf564e56a9730e, 0x3fefc26470e19fd3, // 0.12241, 0.99248
+ 0x3fc2c8106e8e613a, 0x3fefa7557f08a517, // 0.14673, 0.98918
+ 0x3fc5e214448b3fc6, 0x3fef8764fa714ba9, // 0.17096, 0.98528
+ 0x3fc8f8b83c69a60a, 0x3fef6297cff75cb0, // 0.19509, 0.98079
+ 0x3fcc0b826a7e4f63, 0x3fef38f3ac64e589, // 0.2191, 0.9757
+ 0x3fcf19f97b215f1a, 0x3fef0a7efb9230d7, // 0.24298, 0.97003
+ 0x3fd111d262b1f677, 0x3feed740e7684963, // 0.26671, 0.96378
+ 0x3fd294062ed59f05, 0x3fee9f4156c62dda, // 0.29028, 0.95694
+ 0x3fd4135c94176602, 0x3fee6288ec48e112, // 0.31368, 0.94953
+ 0x3fd58f9a75ab1fdd, 0x3fee212104f686e5, // 0.33689, 0.94154
+ 0x3fd7088530fa459e, 0x3feddb13b6ccc23d, // 0.3599, 0.93299
+ 0x3fd87de2a6aea963, 0x3fed906bcf328d46, // 0.38268, 0.92388
+ 0x3fd9ef7943a8ed8a, 0x3fed4134d14dc93a, // 0.40524, 0.91421
+ 0x3fdb5d1009e15cc0, 0x3feced7af43cc773, // 0.42756, 0.90399
+ 0x3fdcc66e9931c45d, 0x3fec954b213411f5, // 0.44961, 0.89322
+ 0x3fde2b5d3806f63b, 0x3fec38b2f180bdb1, // 0.4714, 0.88192
+ 0x3fdf8ba4dbf89aba, 0x3febd7c0ac6f952a, // 0.4929, 0.87009
+ 0x3fe073879922ffed, 0x3feb728345196e3e, // 0.5141, 0.85773
+ 0x3fe11eb3541b4b22, 0x3feb090a58150200, // 0.535, 0.84485
+ 0x3fe1c73b39ae68c8, 0x3fea9b66290ea1a3, // 0.55557, 0.83147
+ 0x3fe26d054cdd12df, 0x3fea29a7a0462782, // 0.57581, 0.81758
+ 0x3fe30ff7fce17035, 0x3fe9b3e047f38741, // 0.5957, 0.80321
+ 0x3fe3affa292050b9, 0x3fe93a22499263fc, // 0.61523, 0.78835
+ 0x3fe44cf325091dd6, 0x3fe8bc806b151741, // 0.63439, 0.77301
+ 0x3fe4e6cabbe3e5e9, 0x3fe83b0e0bff976e, // 0.65317, 0.75721
+ 0x3fe57d69348cec9f, 0x3fe7b5df226aafb0, // 0.67156, 0.74095
+ 0x3fe610b7551d2cde, 0x3fe72d0837efff97, // 0.68954, 0.72425
+ 0x3fe6a09e667f3bcc, 0x3fe6a09e667f3bcc, // 0.70711, 0.70711
+ 0x3fe72d0837efff97, 0x3fe610b7551d2cde, // 0.72425, 0.68954
+ 0x3fe7b5df226aafb0, 0x3fe57d69348cec9f, // 0.74095, 0.67156
+ 0x3fe83b0e0bff976e, 0x3fe4e6cabbe3e5e9, // 0.75721, 0.65317
+ 0x3fe8bc806b151741, 0x3fe44cf325091dd6, // 0.77301, 0.63439
+ 0x3fe93a22499263fc, 0x3fe3affa292050b9, // 0.78835, 0.61523
+ 0x3fe9b3e047f38741, 0x3fe30ff7fce17035, // 0.80321, 0.5957
+ 0x3fea29a7a0462782, 0x3fe26d054cdd12df, // 0.81758, 0.57581
+ 0x3fea9b66290ea1a3, 0x3fe1c73b39ae68c8, // 0.83147, 0.55557
+ 0x3feb090a58150200, 0x3fe11eb3541b4b22, // 0.84485, 0.535
+ 0x3feb728345196e3e, 0x3fe073879922ffed, // 0.85773, 0.5141
+ 0x3febd7c0ac6f952a, 0x3fdf8ba4dbf89aba, // 0.87009, 0.4929
+ 0x3fec38b2f180bdb1, 0x3fde2b5d3806f63b, // 0.88192, 0.4714
+ 0x3fec954b213411f5, 0x3fdcc66e9931c45d, // 0.89322, 0.44961
+ 0x3feced7af43cc773, 0x3fdb5d1009e15cc0, // 0.90399, 0.42756
+ 0x3fed4134d14dc93a, 0x3fd9ef7943a8ed8a, // 0.91421, 0.40524
+ 0x3fed906bcf328d46, 0x3fd87de2a6aea963, // 0.92388, 0.38268
+ 0x3feddb13b6ccc23d, 0x3fd7088530fa459e, // 0.93299, 0.3599
+ 0x3fee212104f686e5, 0x3fd58f9a75ab1fdd, // 0.94154, 0.33689
+ 0x3fee6288ec48e112, 0x3fd4135c94176602, // 0.94953, 0.31368
+ 0x3fee9f4156c62dda, 0x3fd294062ed59f05, // 0.95694, 0.29028
+ 0x3feed740e7684963, 0x3fd111d262b1f677, // 0.96378, 0.26671
+ 0x3fef0a7efb9230d7, 0x3fcf19f97b215f1a, // 0.97003, 0.24298
+ 0x3fef38f3ac64e589, 0x3fcc0b826a7e4f63, // 0.9757, 0.2191
+ 0x3fef6297cff75cb0, 0x3fc8f8b83c69a60a, // 0.98079, 0.19509
+ 0x3fef8764fa714ba9, 0x3fc5e214448b3fc6, // 0.98528, 0.17096
+ 0x3fefa7557f08a517, 0x3fc2c8106e8e613a, // 0.98918, 0.14673
+ 0x3fefc26470e19fd3, 0x3fbf564e56a9730e, // 0.99248, 0.12241
+ 0x3fefd88da3d12526, 0x3fb917a6bc29b42c, // 0.99518, 0.098017
+ 0x3fefe9cdad01883a, 0x3fb2d52092ce19f6, // 0.99729, 0.073565
+ 0x3feff621e3796d7e, 0x3fa91f65f10dd814, // 0.9988, 0.049068
+ 0x3feffd886084cd0d, 0x3f992155f7a3667e, // 0.9997, 0.024541
+ 0x3ff0000000000000, 0x0000000000000000, // 1, 0
+ 0x3feffd886084cd0d, 0xbf992155f7a3667e, // 0.9997,-0.024541
+ 0x3feff621e3796d7e, 0xbfa91f65f10dd814, // 0.9988,-0.049068
+ 0x3fefe9cdad01883a, 0xbfb2d52092ce19f6, // 0.99729,-0.073565
+ 0x3fefd88da3d12526, 0xbfb917a6bc29b42c, // 0.99518,-0.098017
+ 0x3fefc26470e19fd3, 0xbfbf564e56a9730e, // 0.99248, -0.12241
+ 0x3fefa7557f08a517, 0xbfc2c8106e8e613a, // 0.98918, -0.14673
+ 0x3fef8764fa714ba9, 0xbfc5e214448b3fc6, // 0.98528, -0.17096
+ 0x3fef6297cff75cb0, 0xbfc8f8b83c69a60a, // 0.98079, -0.19509
+ 0x3fef38f3ac64e589, 0xbfcc0b826a7e4f63, // 0.9757, -0.2191
+ 0x3fef0a7efb9230d7, 0xbfcf19f97b215f1a, // 0.97003, -0.24298
+ 0x3feed740e7684963, 0xbfd111d262b1f677, // 0.96378, -0.26671
+ 0x3fee9f4156c62dda, 0xbfd294062ed59f05, // 0.95694, -0.29028
+ 0x3fee6288ec48e112, 0xbfd4135c94176602, // 0.94953, -0.31368
+ 0x3fee212104f686e5, 0xbfd58f9a75ab1fdd, // 0.94154, -0.33689
+ 0x3feddb13b6ccc23d, 0xbfd7088530fa459e, // 0.93299, -0.3599
+ 0x3fed906bcf328d46, 0xbfd87de2a6aea963, // 0.92388, -0.38268
+ 0x3fed4134d14dc93a, 0xbfd9ef7943a8ed8a, // 0.91421, -0.40524
+ 0x3feced7af43cc773, 0xbfdb5d1009e15cc0, // 0.90399, -0.42756
+ 0x3fec954b213411f5, 0xbfdcc66e9931c45d, // 0.89322, -0.44961
+ 0x3fec38b2f180bdb1, 0xbfde2b5d3806f63b, // 0.88192, -0.4714
+ 0x3febd7c0ac6f952a, 0xbfdf8ba4dbf89aba, // 0.87009, -0.4929
+ 0x3feb728345196e3e, 0xbfe073879922ffed, // 0.85773, -0.5141
+ 0x3feb090a58150200, 0xbfe11eb3541b4b22, // 0.84485, -0.535
+ 0x3fea9b66290ea1a3, 0xbfe1c73b39ae68c8, // 0.83147, -0.55557
+ 0x3fea29a7a0462782, 0xbfe26d054cdd12df, // 0.81758, -0.57581
+ 0x3fe9b3e047f38741, 0xbfe30ff7fce17035, // 0.80321, -0.5957
+ 0x3fe93a22499263fc, 0xbfe3affa292050b9, // 0.78835, -0.61523
+ 0x3fe8bc806b151741, 0xbfe44cf325091dd6, // 0.77301, -0.63439
+ 0x3fe83b0e0bff976e, 0xbfe4e6cabbe3e5e9, // 0.75721, -0.65317
+ 0x3fe7b5df226aafb0, 0xbfe57d69348cec9f, // 0.74095, -0.67156
+ 0x3fe72d0837efff97, 0xbfe610b7551d2cde, // 0.72425, -0.68954
+ 0x3fe6a09e667f3bcc, 0xbfe6a09e667f3bcc, // 0.70711, -0.70711
+ 0x3fe610b7551d2cde, 0xbfe72d0837efff97, // 0.68954, -0.72425
+ 0x3fe57d69348cec9f, 0xbfe7b5df226aafb0, // 0.67156, -0.74095
+ 0x3fe4e6cabbe3e5e9, 0xbfe83b0e0bff976e, // 0.65317, -0.75721
+ 0x3fe44cf325091dd6, 0xbfe8bc806b151741, // 0.63439, -0.77301
+ 0x3fe3affa292050b9, 0xbfe93a22499263fc, // 0.61523, -0.78835
+ 0x3fe30ff7fce17035, 0xbfe9b3e047f38741, // 0.5957, -0.80321
+ 0x3fe26d054cdd12df, 0xbfea29a7a0462782, // 0.57581, -0.81758
+ 0x3fe1c73b39ae68c8, 0xbfea9b66290ea1a3, // 0.55557, -0.83147
+ 0x3fe11eb3541b4b22, 0xbfeb090a58150200, // 0.535, -0.84485
+ 0x3fe073879922ffed, 0xbfeb728345196e3e, // 0.5141, -0.85773
+ 0x3fdf8ba4dbf89aba, 0xbfebd7c0ac6f952a, // 0.4929, -0.87009
+ 0x3fde2b5d3806f63b, 0xbfec38b2f180bdb1, // 0.4714, -0.88192
+ 0x3fdcc66e9931c45d, 0xbfec954b213411f5, // 0.44961, -0.89322
+ 0x3fdb5d1009e15cc0, 0xbfeced7af43cc773, // 0.42756, -0.90399
+ 0x3fd9ef7943a8ed8a, 0xbfed4134d14dc93a, // 0.40524, -0.91421
+ 0x3fd87de2a6aea963, 0xbfed906bcf328d46, // 0.38268, -0.92388
+ 0x3fd7088530fa459e, 0xbfeddb13b6ccc23d, // 0.3599, -0.93299
+ 0x3fd58f9a75ab1fdd, 0xbfee212104f686e5, // 0.33689, -0.94154
+ 0x3fd4135c94176602, 0xbfee6288ec48e112, // 0.31368, -0.94953
+ 0x3fd294062ed59f05, 0xbfee9f4156c62dda, // 0.29028, -0.95694
+ 0x3fd111d262b1f677, 0xbfeed740e7684963, // 0.26671, -0.96378
+ 0x3fcf19f97b215f1a, 0xbfef0a7efb9230d7, // 0.24298, -0.97003
+ 0x3fcc0b826a7e4f63, 0xbfef38f3ac64e589, // 0.2191, -0.9757
+ 0x3fc8f8b83c69a60a, 0xbfef6297cff75cb0, // 0.19509, -0.98079
+ 0x3fc5e214448b3fc6, 0xbfef8764fa714ba9, // 0.17096, -0.98528
+ 0x3fc2c8106e8e613a, 0xbfefa7557f08a517, // 0.14673, -0.98918
+ 0x3fbf564e56a9730e, 0xbfefc26470e19fd3, // 0.12241, -0.99248
+ 0x3fb917a6bc29b42c, 0xbfefd88da3d12526, //0.098017, -0.99518
+ 0x3fb2d52092ce19f6, 0xbfefe9cdad01883a, //0.073565, -0.99729
+ 0x3fa91f65f10dd814, 0xbfeff621e3796d7e, //0.049068, -0.9988'
+ 0x3f992155f7a3667e, 0xbfeffd886084cd0d, //0.024541, -0.9997
+
+
+};
+#endif /* !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) */
+
+#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || defined(ARM_TABLE_TWIDDLECOEF_RFFT_F64_512)
+const uint64_t twiddleCoefF64_rfft_512[512] = {
+ 0x0000000000000000, 0x3ff0000000000000, // 0, 1'
+ 0x3f8921d1fcdec784, 0x3fefff62169b92db, //0.012272, 0.99992'
+ 0x3f992155f7a3667e, 0x3feffd886084cd0d, //0.024541, 0.9997'
+ 0x3fa2d865759455cd, 0x3feffa72effef75d, //0.036807, 0.99932'
+ 0x3fa91f65f10dd814, 0x3feff621e3796d7e, //0.049068, 0.9988'
+ 0x3faf656e79f820e0, 0x3feff095658e71ad, //0.061321, 0.99812'
+ 0x3fb2d52092ce19f6, 0x3fefe9cdad01883a, //0.073565, 0.99729'
+ 0x3fb5f6d00a9aa419, 0x3fefe1cafcbd5b09, //0.085797, 0.99631'
+ 0x3fb917a6bc29b42c, 0x3fefd88da3d12526, //0.098017, 0.99518'
+ 0x3fbc3785c79ec2d5, 0x3fefce15fd6da67b, // 0.11022, 0.99391'
+ 0x3fbf564e56a9730e, 0x3fefc26470e19fd3, // 0.12241, 0.99248'
+ 0x3fc139f0cedaf576, 0x3fefb5797195d741, // 0.13458, 0.9909'
+ 0x3fc2c8106e8e613a, 0x3fefa7557f08a517, // 0.14673, 0.98918'
+ 0x3fc45576b1293e5a, 0x3fef97f924c9099b, // 0.15886, 0.9873'
+ 0x3fc5e214448b3fc6, 0x3fef8764fa714ba9, // 0.17096, 0.98528'
+ 0x3fc76dd9de50bf31, 0x3fef7599a3a12077, // 0.18304, 0.98311'
+ 0x3fc8f8b83c69a60a, 0x3fef6297cff75cb0, // 0.19509, 0.98079'
+ 0x3fca82a025b00451, 0x3fef4e603b0b2f2d, // 0.20711, 0.97832'
+ 0x3fcc0b826a7e4f63, 0x3fef38f3ac64e589, // 0.2191, 0.9757'
+ 0x3fcd934fe5454311, 0x3fef2252f7763ada, // 0.23106, 0.97294'
+ 0x3fcf19f97b215f1a, 0x3fef0a7efb9230d7, // 0.24298, 0.97003'
+ 0x3fd04fb80e37fdae, 0x3feef178a3e473c2, // 0.25487, 0.96698'
+ 0x3fd111d262b1f677, 0x3feed740e7684963, // 0.26671, 0.96378'
+ 0x3fd1d3443f4cdb3d, 0x3feebbd8c8df0b74, // 0.27852, 0.96043'
+ 0x3fd294062ed59f05, 0x3fee9f4156c62dda, // 0.29028, 0.95694'
+ 0x3fd35410c2e18152, 0x3fee817bab4cd10d, // 0.30201, 0.95331'
+ 0x3fd4135c94176602, 0x3fee6288ec48e112, // 0.31368, 0.94953'
+ 0x3fd4d1e24278e76a, 0x3fee426a4b2bc17e, // 0.32531, 0.94561'
+ 0x3fd58f9a75ab1fdd, 0x3fee212104f686e5, // 0.33689, 0.94154'
+ 0x3fd64c7ddd3f27c6, 0x3fedfeae622dbe2b, // 0.34842, 0.93734'
+ 0x3fd7088530fa459e, 0x3feddb13b6ccc23d, // 0.3599, 0.93299'
+ 0x3fd7c3a9311dcce7, 0x3fedb6526238a09b, // 0.37132, 0.92851'
+ 0x3fd87de2a6aea963, 0x3fed906bcf328d46, // 0.38268, 0.92388'
+ 0x3fd9372a63bc93d7, 0x3fed696173c9e68b, // 0.39399, 0.91911'
+ 0x3fd9ef7943a8ed8a, 0x3fed4134d14dc93a, // 0.40524, 0.91421'
+ 0x3fdaa6c82b6d3fc9, 0x3fed17e7743e35dc, // 0.41643, 0.90917'
+ 0x3fdb5d1009e15cc0, 0x3feced7af43cc773, // 0.42756, 0.90399'
+ 0x3fdc1249d8011ee7, 0x3fecc1f0f3fcfc5c, // 0.43862, 0.89867'
+ 0x3fdcc66e9931c45d, 0x3fec954b213411f5, // 0.44961, 0.89322'
+ 0x3fdd79775b86e389, 0x3fec678b3488739b, // 0.46054, 0.88764'
+ 0x3fde2b5d3806f63b, 0x3fec38b2f180bdb1, // 0.4714, 0.88192'
+ 0x3fdedc1952ef78d5, 0x3fec08c426725549, // 0.48218, 0.87607'
+ 0x3fdf8ba4dbf89aba, 0x3febd7c0ac6f952a, // 0.4929, 0.87009'
+ 0x3fe01cfc874c3eb7, 0x3feba5aa673590d2, // 0.50354, 0.86397'
+ 0x3fe073879922ffed, 0x3feb728345196e3e, // 0.5141, 0.85773'
+ 0x3fe0c9704d5d898f, 0x3feb3e4d3ef55712, // 0.52459, 0.85136'
+ 0x3fe11eb3541b4b22, 0x3feb090a58150200, // 0.535, 0.84485'
+ 0x3fe1734d63dedb49, 0x3fead2bc9e21d511, // 0.54532, 0.83822'
+ 0x3fe1c73b39ae68c8, 0x3fea9b66290ea1a3, // 0.55557, 0.83147'
+ 0x3fe21a799933eb58, 0x3fea63091b02fae2, // 0.56573, 0.82459'
+ 0x3fe26d054cdd12df, 0x3fea29a7a0462782, // 0.57581, 0.81758'
+ 0x3fe2bedb25faf3ea, 0x3fe9ef43ef29af94, // 0.5858, 0.81046'
+ 0x3fe30ff7fce17035, 0x3fe9b3e047f38741, // 0.5957, 0.80321'
+ 0x3fe36058b10659f3, 0x3fe9777ef4c7d742, // 0.60551, 0.79584'
+ 0x3fe3affa292050b9, 0x3fe93a22499263fc, // 0.61523, 0.78835'
+ 0x3fe3fed9534556d4, 0x3fe8fbcca3ef940d, // 0.62486, 0.78074'
+ 0x3fe44cf325091dd6, 0x3fe8bc806b151741, // 0.63439, 0.77301'
+ 0x3fe49a449b9b0938, 0x3fe87c400fba2ebf, // 0.64383, 0.76517'
+ 0x3fe4e6cabbe3e5e9, 0x3fe83b0e0bff976e, // 0.65317, 0.75721'
+ 0x3fe5328292a35596, 0x3fe7f8ece3571771, // 0.66242, 0.74914'
+ 0x3fe57d69348cec9f, 0x3fe7b5df226aafb0, // 0.67156, 0.74095'
+ 0x3fe5c77bbe65018c, 0x3fe771e75f037261, // 0.6806, 0.73265'
+ 0x3fe610b7551d2cde, 0x3fe72d0837efff97, // 0.68954, 0.72425'
+ 0x3fe6591925f0783e, 0x3fe6e74454eaa8ae, // 0.69838, 0.71573'
+ 0x3fe6a09e667f3bcc, 0x3fe6a09e667f3bcc, // 0.70711, 0.70711'
+ 0x3fe6e74454eaa8ae, 0x3fe6591925f0783e, // 0.71573, 0.69838'
+ 0x3fe72d0837efff97, 0x3fe610b7551d2cde, // 0.72425, 0.68954'
+ 0x3fe771e75f037261, 0x3fe5c77bbe65018c, // 0.73265, 0.6806'
+ 0x3fe7b5df226aafb0, 0x3fe57d69348cec9f, // 0.74095, 0.67156'
+ 0x3fe7f8ece3571771, 0x3fe5328292a35596, // 0.74914, 0.66242'
+ 0x3fe83b0e0bff976e, 0x3fe4e6cabbe3e5e9, // 0.75721, 0.65317'
+ 0x3fe87c400fba2ebf, 0x3fe49a449b9b0938, // 0.76517, 0.64383'
+ 0x3fe8bc806b151741, 0x3fe44cf325091dd6, // 0.77301, 0.63439'
+ 0x3fe8fbcca3ef940d, 0x3fe3fed9534556d4, // 0.78074, 0.62486'
+ 0x3fe93a22499263fc, 0x3fe3affa292050b9, // 0.78835, 0.61523'
+ 0x3fe9777ef4c7d742, 0x3fe36058b10659f3, // 0.79584, 0.60551'
+ 0x3fe9b3e047f38741, 0x3fe30ff7fce17035, // 0.80321, 0.5957'
+ 0x3fe9ef43ef29af94, 0x3fe2bedb25faf3ea, // 0.81046, 0.5858'
+ 0x3fea29a7a0462782, 0x3fe26d054cdd12df, // 0.81758, 0.57581'
+ 0x3fea63091b02fae2, 0x3fe21a799933eb58, // 0.82459, 0.56573'
+ 0x3fea9b66290ea1a3, 0x3fe1c73b39ae68c8, // 0.83147, 0.55557'
+ 0x3fead2bc9e21d511, 0x3fe1734d63dedb49, // 0.83822, 0.54532'
+ 0x3feb090a58150200, 0x3fe11eb3541b4b22, // 0.84485, 0.535'
+ 0x3feb3e4d3ef55712, 0x3fe0c9704d5d898f, // 0.85136, 0.52459'
+ 0x3feb728345196e3e, 0x3fe073879922ffed, // 0.85773, 0.5141'
+ 0x3feba5aa673590d2, 0x3fe01cfc874c3eb7, // 0.86397, 0.50354'
+ 0x3febd7c0ac6f952a, 0x3fdf8ba4dbf89aba, // 0.87009, 0.4929'
+ 0x3fec08c426725549, 0x3fdedc1952ef78d5, // 0.87607, 0.48218'
+ 0x3fec38b2f180bdb1, 0x3fde2b5d3806f63b, // 0.88192, 0.4714'
+ 0x3fec678b3488739b, 0x3fdd79775b86e389, // 0.88764, 0.46054'
+ 0x3fec954b213411f5, 0x3fdcc66e9931c45d, // 0.89322, 0.44961'
+ 0x3fecc1f0f3fcfc5c, 0x3fdc1249d8011ee7, // 0.89867, 0.43862'
+ 0x3feced7af43cc773, 0x3fdb5d1009e15cc0, // 0.90399, 0.42756'
+ 0x3fed17e7743e35dc, 0x3fdaa6c82b6d3fc9, // 0.90917, 0.41643'
+ 0x3fed4134d14dc93a, 0x3fd9ef7943a8ed8a, // 0.91421, 0.40524'
+ 0x3fed696173c9e68b, 0x3fd9372a63bc93d7, // 0.91911, 0.39399'
+ 0x3fed906bcf328d46, 0x3fd87de2a6aea963, // 0.92388, 0.38268'
+ 0x3fedb6526238a09b, 0x3fd7c3a9311dcce7, // 0.92851, 0.37132'
+ 0x3feddb13b6ccc23d, 0x3fd7088530fa459e, // 0.93299, 0.3599'
+ 0x3fedfeae622dbe2b, 0x3fd64c7ddd3f27c6, // 0.93734, 0.34842'
+ 0x3fee212104f686e5, 0x3fd58f9a75ab1fdd, // 0.94154, 0.33689'
+ 0x3fee426a4b2bc17e, 0x3fd4d1e24278e76a, // 0.94561, 0.32531'
+ 0x3fee6288ec48e112, 0x3fd4135c94176602, // 0.94953, 0.31368'
+ 0x3fee817bab4cd10d, 0x3fd35410c2e18152, // 0.95331, 0.30201'
+ 0x3fee9f4156c62dda, 0x3fd294062ed59f05, // 0.95694, 0.29028'
+ 0x3feebbd8c8df0b74, 0x3fd1d3443f4cdb3d, // 0.96043, 0.27852'
+ 0x3feed740e7684963, 0x3fd111d262b1f677, // 0.96378, 0.26671'
+ 0x3feef178a3e473c2, 0x3fd04fb80e37fdae, // 0.96698, 0.25487'
+ 0x3fef0a7efb9230d7, 0x3fcf19f97b215f1a, // 0.97003, 0.24298'
+ 0x3fef2252f7763ada, 0x3fcd934fe5454311, // 0.97294, 0.23106'
+ 0x3fef38f3ac64e589, 0x3fcc0b826a7e4f63, // 0.9757, 0.2191'
+ 0x3fef4e603b0b2f2d, 0x3fca82a025b00451, // 0.97832, 0.20711'
+ 0x3fef6297cff75cb0, 0x3fc8f8b83c69a60a, // 0.98079, 0.19509'
+ 0x3fef7599a3a12077, 0x3fc76dd9de50bf31, // 0.98311, 0.18304'
+ 0x3fef8764fa714ba9, 0x3fc5e214448b3fc6, // 0.98528, 0.17096'
+ 0x3fef97f924c9099b, 0x3fc45576b1293e5a, // 0.9873, 0.15886'
+ 0x3fefa7557f08a517, 0x3fc2c8106e8e613a, // 0.98918, 0.14673'
+ 0x3fefb5797195d741, 0x3fc139f0cedaf576, // 0.9909, 0.13458'
+ 0x3fefc26470e19fd3, 0x3fbf564e56a9730e, // 0.99248, 0.12241'
+ 0x3fefce15fd6da67b, 0x3fbc3785c79ec2d5, // 0.99391, 0.11022'
+ 0x3fefd88da3d12526, 0x3fb917a6bc29b42c, // 0.99518, 0.098017'
+ 0x3fefe1cafcbd5b09, 0x3fb5f6d00a9aa419, // 0.99631, 0.085797'
+ 0x3fefe9cdad01883a, 0x3fb2d52092ce19f6, // 0.99729, 0.073565'
+ 0x3feff095658e71ad, 0x3faf656e79f820e0, // 0.99812, 0.061321'
+ 0x3feff621e3796d7e, 0x3fa91f65f10dd814, // 0.9988, 0.049068'
+ 0x3feffa72effef75d, 0x3fa2d865759455cd, // 0.99932, 0.036807'
+ 0x3feffd886084cd0d, 0x3f992155f7a3667e, // 0.9997, 0.024541'
+ 0x3fefff62169b92db, 0x3f8921d1fcdec784, // 0.99992, 0.012272'
+ 0x3ff0000000000000, 0x0000000000000000, // 1, 0'
+ 0x3fefff62169b92db, 0xbf8921d1fcdec784, // 0.99992,-0.012272'
+ 0x3feffd886084cd0d, 0xbf992155f7a3667e, // 0.9997,-0.024541'
+ 0x3feffa72effef75d, 0xbfa2d865759455cd, // 0.99932,-0.036807'
+ 0x3feff621e3796d7e, 0xbfa91f65f10dd814, // 0.9988,-0.049068'
+ 0x3feff095658e71ad, 0xbfaf656e79f820e0, // 0.99812,-0.061321'
+ 0x3fefe9cdad01883a, 0xbfb2d52092ce19f6, // 0.99729,-0.073565'
+ 0x3fefe1cafcbd5b09, 0xbfb5f6d00a9aa419, // 0.99631,-0.085797'
+ 0x3fefd88da3d12526, 0xbfb917a6bc29b42c, // 0.99518,-0.098017'
+ 0x3fefce15fd6da67b, 0xbfbc3785c79ec2d5, // 0.99391, -0.11022'
+ 0x3fefc26470e19fd3, 0xbfbf564e56a9730e, // 0.99248, -0.12241'
+ 0x3fefb5797195d741, 0xbfc139f0cedaf576, // 0.9909, -0.13458'
+ 0x3fefa7557f08a517, 0xbfc2c8106e8e613a, // 0.98918, -0.14673'
+ 0x3fef97f924c9099b, 0xbfc45576b1293e5a, // 0.9873, -0.15886'
+ 0x3fef8764fa714ba9, 0xbfc5e214448b3fc6, // 0.98528, -0.17096'
+ 0x3fef7599a3a12077, 0xbfc76dd9de50bf31, // 0.98311, -0.18304'
+ 0x3fef6297cff75cb0, 0xbfc8f8b83c69a60a, // 0.98079, -0.19509'
+ 0x3fef4e603b0b2f2d, 0xbfca82a025b00451, // 0.97832, -0.20711'
+ 0x3fef38f3ac64e589, 0xbfcc0b826a7e4f63, // 0.9757, -0.2191'
+ 0x3fef2252f7763ada, 0xbfcd934fe5454311, // 0.97294, -0.23106'
+ 0x3fef0a7efb9230d7, 0xbfcf19f97b215f1a, // 0.97003, -0.24298'
+ 0x3feef178a3e473c2, 0xbfd04fb80e37fdae, // 0.96698, -0.25487'
+ 0x3feed740e7684963, 0xbfd111d262b1f677, // 0.96378, -0.26671'
+ 0x3feebbd8c8df0b74, 0xbfd1d3443f4cdb3d, // 0.96043, -0.27852'
+ 0x3fee9f4156c62dda, 0xbfd294062ed59f05, // 0.95694, -0.29028'
+ 0x3fee817bab4cd10d, 0xbfd35410c2e18152, // 0.95331, -0.30201'
+ 0x3fee6288ec48e112, 0xbfd4135c94176602, // 0.94953, -0.31368'
+ 0x3fee426a4b2bc17e, 0xbfd4d1e24278e76a, // 0.94561, -0.32531'
+ 0x3fee212104f686e5, 0xbfd58f9a75ab1fdd, // 0.94154, -0.33689'
+ 0x3fedfeae622dbe2b, 0xbfd64c7ddd3f27c6, // 0.93734, -0.34842'
+ 0x3feddb13b6ccc23d, 0xbfd7088530fa459e, // 0.93299, -0.3599'
+ 0x3fedb6526238a09b, 0xbfd7c3a9311dcce7, // 0.92851, -0.37132'
+ 0x3fed906bcf328d46, 0xbfd87de2a6aea963, // 0.92388, -0.38268'
+ 0x3fed696173c9e68b, 0xbfd9372a63bc93d7, // 0.91911, -0.39399'
+ 0x3fed4134d14dc93a, 0xbfd9ef7943a8ed8a, // 0.91421, -0.40524'
+ 0x3fed17e7743e35dc, 0xbfdaa6c82b6d3fc9, // 0.90917, -0.41643'
+ 0x3feced7af43cc773, 0xbfdb5d1009e15cc0, // 0.90399, -0.42756'
+ 0x3fecc1f0f3fcfc5c, 0xbfdc1249d8011ee7, // 0.89867, -0.43862'
+ 0x3fec954b213411f5, 0xbfdcc66e9931c45d, // 0.89322, -0.44961'
+ 0x3fec678b3488739b, 0xbfdd79775b86e389, // 0.88764, -0.46054'
+ 0x3fec38b2f180bdb1, 0xbfde2b5d3806f63b, // 0.88192, -0.4714'
+ 0x3fec08c426725549, 0xbfdedc1952ef78d5, // 0.87607, -0.48218'
+ 0x3febd7c0ac6f952a, 0xbfdf8ba4dbf89aba, // 0.87009, -0.4929'
+ 0x3feba5aa673590d2, 0xbfe01cfc874c3eb7, // 0.86397, -0.50354'
+ 0x3feb728345196e3e, 0xbfe073879922ffed, // 0.85773, -0.5141'
+ 0x3feb3e4d3ef55712, 0xbfe0c9704d5d898f, // 0.85136, -0.52459'
+ 0x3feb090a58150200, 0xbfe11eb3541b4b22, // 0.84485, -0.535'
+ 0x3fead2bc9e21d511, 0xbfe1734d63dedb49, // 0.83822, -0.54532'
+ 0x3fea9b66290ea1a3, 0xbfe1c73b39ae68c8, // 0.83147, -0.55557'
+ 0x3fea63091b02fae2, 0xbfe21a799933eb58, // 0.82459, -0.56573'
+ 0x3fea29a7a0462782, 0xbfe26d054cdd12df, // 0.81758, -0.57581'
+ 0x3fe9ef43ef29af94, 0xbfe2bedb25faf3ea, // 0.81046, -0.5858'
+ 0x3fe9b3e047f38741, 0xbfe30ff7fce17035, // 0.80321, -0.5957'
+ 0x3fe9777ef4c7d742, 0xbfe36058b10659f3, // 0.79584, -0.60551'
+ 0x3fe93a22499263fc, 0xbfe3affa292050b9, // 0.78835, -0.61523'
+ 0x3fe8fbcca3ef940d, 0xbfe3fed9534556d4, // 0.78074, -0.62486'
+ 0x3fe8bc806b151741, 0xbfe44cf325091dd6, // 0.77301, -0.63439'
+ 0x3fe87c400fba2ebf, 0xbfe49a449b9b0938, // 0.76517, -0.64383'
+ 0x3fe83b0e0bff976e, 0xbfe4e6cabbe3e5e9, // 0.75721, -0.65317'
+ 0x3fe7f8ece3571771, 0xbfe5328292a35596, // 0.74914, -0.66242'
+ 0x3fe7b5df226aafb0, 0xbfe57d69348cec9f, // 0.74095, -0.67156'
+ 0x3fe771e75f037261, 0xbfe5c77bbe65018c, // 0.73265, -0.6806'
+ 0x3fe72d0837efff97, 0xbfe610b7551d2cde, // 0.72425, -0.68954'
+ 0x3fe6e74454eaa8ae, 0xbfe6591925f0783e, // 0.71573, -0.69838'
+ 0x3fe6a09e667f3bcc, 0xbfe6a09e667f3bcc, // 0.70711, -0.70711'
+ 0x3fe6591925f0783e, 0xbfe6e74454eaa8ae, // 0.69838, -0.71573'
+ 0x3fe610b7551d2cde, 0xbfe72d0837efff97, // 0.68954, -0.72425'
+ 0x3fe5c77bbe65018c, 0xbfe771e75f037261, // 0.6806, -0.73265'
+ 0x3fe57d69348cec9f, 0xbfe7b5df226aafb0, // 0.67156, -0.74095'
+ 0x3fe5328292a35596, 0xbfe7f8ece3571771, // 0.66242, -0.74914'
+ 0x3fe4e6cabbe3e5e9, 0xbfe83b0e0bff976e, // 0.65317, -0.75721'
+ 0x3fe49a449b9b0938, 0xbfe87c400fba2ebf, // 0.64383, -0.76517'
+ 0x3fe44cf325091dd6, 0xbfe8bc806b151741, // 0.63439, -0.77301'
+ 0x3fe3fed9534556d4, 0xbfe8fbcca3ef940d, // 0.62486, -0.78074'
+ 0x3fe3affa292050b9, 0xbfe93a22499263fc, // 0.61523, -0.78835'
+ 0x3fe36058b10659f3, 0xbfe9777ef4c7d742, // 0.60551, -0.79584'
+ 0x3fe30ff7fce17035, 0xbfe9b3e047f38741, // 0.5957, -0.80321'
+ 0x3fe2bedb25faf3ea, 0xbfe9ef43ef29af94, // 0.5858, -0.81046'
+ 0x3fe26d054cdd12df, 0xbfea29a7a0462782, // 0.57581, -0.81758'
+ 0x3fe21a799933eb58, 0xbfea63091b02fae2, // 0.56573, -0.82459'
+ 0x3fe1c73b39ae68c8, 0xbfea9b66290ea1a3, // 0.55557, -0.83147'
+ 0x3fe1734d63dedb49, 0xbfead2bc9e21d511, // 0.54532, -0.83822'
+ 0x3fe11eb3541b4b22, 0xbfeb090a58150200, // 0.535, -0.84485'
+ 0x3fe0c9704d5d898f, 0xbfeb3e4d3ef55712, // 0.52459, -0.85136'
+ 0x3fe073879922ffed, 0xbfeb728345196e3e, // 0.5141, -0.85773'
+ 0x3fe01cfc874c3eb7, 0xbfeba5aa673590d2, // 0.50354, -0.86397'
+ 0x3fdf8ba4dbf89aba, 0xbfebd7c0ac6f952a, // 0.4929, -0.87009'
+ 0x3fdedc1952ef78d5, 0xbfec08c426725549, // 0.48218, -0.87607'
+ 0x3fde2b5d3806f63b, 0xbfec38b2f180bdb1, // 0.4714, -0.88192'
+ 0x3fdd79775b86e389, 0xbfec678b3488739b, // 0.46054, -0.88764'
+ 0x3fdcc66e9931c45d, 0xbfec954b213411f5, // 0.44961, -0.89322'
+ 0x3fdc1249d8011ee7, 0xbfecc1f0f3fcfc5c, // 0.43862, -0.89867'
+ 0x3fdb5d1009e15cc0, 0xbfeced7af43cc773, // 0.42756, -0.90399'
+ 0x3fdaa6c82b6d3fc9, 0xbfed17e7743e35dc, // 0.41643, -0.90917'
+ 0x3fd9ef7943a8ed8a, 0xbfed4134d14dc93a, // 0.40524, -0.91421'
+ 0x3fd9372a63bc93d7, 0xbfed696173c9e68b, // 0.39399, -0.91911'
+ 0x3fd87de2a6aea963, 0xbfed906bcf328d46, // 0.38268, -0.92388'
+ 0x3fd7c3a9311dcce7, 0xbfedb6526238a09b, // 0.37132, -0.92851'
+ 0x3fd7088530fa459e, 0xbfeddb13b6ccc23d, // 0.3599, -0.93299'
+ 0x3fd64c7ddd3f27c6, 0xbfedfeae622dbe2b, // 0.34842, -0.93734'
+ 0x3fd58f9a75ab1fdd, 0xbfee212104f686e5, // 0.33689, -0.94154'
+ 0x3fd4d1e24278e76a, 0xbfee426a4b2bc17e, // 0.32531, -0.94561'
+ 0x3fd4135c94176602, 0xbfee6288ec48e112, // 0.31368, -0.94953'
+ 0x3fd35410c2e18152, 0xbfee817bab4cd10d, // 0.30201, -0.95331'
+ 0x3fd294062ed59f05, 0xbfee9f4156c62dda, // 0.29028, -0.95694'
+ 0x3fd1d3443f4cdb3d, 0xbfeebbd8c8df0b74, // 0.27852, -0.96043'
+ 0x3fd111d262b1f677, 0xbfeed740e7684963, // 0.26671, -0.96378'
+ 0x3fd04fb80e37fdae, 0xbfeef178a3e473c2, // 0.25487, -0.96698'
+ 0x3fcf19f97b215f1a, 0xbfef0a7efb9230d7, // 0.24298, -0.97003'
+ 0x3fcd934fe5454311, 0xbfef2252f7763ada, // 0.23106, -0.97294'
+ 0x3fcc0b826a7e4f63, 0xbfef38f3ac64e589, // 0.2191, -0.9757'
+ 0x3fca82a025b00451, 0xbfef4e603b0b2f2d, // 0.20711, -0.97832'
+ 0x3fc8f8b83c69a60a, 0xbfef6297cff75cb0, // 0.19509, -0.98079'
+ 0x3fc76dd9de50bf31, 0xbfef7599a3a12077, // 0.18304, -0.98311'
+ 0x3fc5e214448b3fc6, 0xbfef8764fa714ba9, // 0.17096, -0.98528'
+ 0x3fc45576b1293e5a, 0xbfef97f924c9099b, // 0.15886, -0.9873'
+ 0x3fc2c8106e8e613a, 0xbfefa7557f08a517, // 0.14673, -0.98918'
+ 0x3fc139f0cedaf576, 0xbfefb5797195d741, // 0.13458, -0.9909'
+ 0x3fbf564e56a9730e, 0xbfefc26470e19fd3, // 0.12241, -0.99248'
+ 0x3fbc3785c79ec2d5, 0xbfefce15fd6da67b, // 0.11022, -0.99391'
+ 0x3fb917a6bc29b42c, 0xbfefd88da3d12526, //0.098017, -0.99518'
+ 0x3fb5f6d00a9aa419, 0xbfefe1cafcbd5b09, //0.085797, -0.99631'
+ 0x3fb2d52092ce19f6, 0xbfefe9cdad01883a, //0.073565, -0.99729'
+ 0x3faf656e79f820e0, 0xbfeff095658e71ad, //0.061321, -0.99812'
+ 0x3fa91f65f10dd814, 0xbfeff621e3796d7e, //0.049068, -0.9988'
+ 0x3fa2d865759455cd, 0xbfeffa72effef75d, //0.036807, -0.99932'
+ 0x3f992155f7a3667e, 0xbfeffd886084cd0d, //0.024541, -0.9997'
+ 0x3f8921d1fcdec784, 0xbfefff62169b92db, //0.012272, -0.99992'
+
+
+};
+#endif /* !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) */
+
+#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || defined(ARM_TABLE_TWIDDLECOEF_RFFT_F64_1024)
+const uint64_t twiddleCoefF64_rfft_1024[1024] = {
+ 0x0000000000000000, 0x3ff0000000000000, // 0, 1'
+ 0x3f7921f0fe670071, 0x3fefffd8858e8a92, //0.0061359, 0.99998'
+ 0x3f8921d1fcdec784, 0x3fefff62169b92db, // 0.012272, 0.99992'
+ 0x3f92d936bbe30efd, 0x3feffe9cb44b51a1, // 0.018407, 0.99983'
+ 0x3f992155f7a3667e, 0x3feffd886084cd0d, // 0.024541, 0.9997'
+ 0x3f9f693731d1cf01, 0x3feffc251df1d3f8, // 0.030675, 0.99953'
+ 0x3fa2d865759455cd, 0x3feffa72effef75d, // 0.036807, 0.99932'
+ 0x3fa5fc00d290cd43, 0x3feff871dadb81df, // 0.042938, 0.99908'
+ 0x3fa91f65f10dd814, 0x3feff621e3796d7e, // 0.049068, 0.9988'
+ 0x3fac428d12c0d7e3, 0x3feff3830f8d575c, // 0.055195, 0.99848'
+ 0x3faf656e79f820e0, 0x3feff095658e71ad, // 0.061321, 0.99812'
+ 0x3fb1440134d709b2, 0x3fefed58ecb673c4, // 0.067444, 0.99772'
+ 0x3fb2d52092ce19f6, 0x3fefe9cdad01883a, // 0.073565, 0.99729'
+ 0x3fb4661179272096, 0x3fefe5f3af2e3940, // 0.079682, 0.99682'
+ 0x3fb5f6d00a9aa419, 0x3fefe1cafcbd5b09, // 0.085797, 0.99631'
+ 0x3fb787586a5d5b21, 0x3fefdd539ff1f456, // 0.091909, 0.99577'
+ 0x3fb917a6bc29b42c, 0x3fefd88da3d12526, // 0.098017, 0.99518'
+ 0x3fbaa7b724495c04, 0x3fefd37914220b84, // 0.10412, 0.99456'
+ 0x3fbc3785c79ec2d5, 0x3fefce15fd6da67b, // 0.11022, 0.99391'
+ 0x3fbdc70ecbae9fc8, 0x3fefc8646cfeb721, // 0.11632, 0.99321'
+ 0x3fbf564e56a9730e, 0x3fefc26470e19fd3, // 0.12241, 0.99248'
+ 0x3fc072a047ba831d, 0x3fefbc1617e44186, // 0.1285, 0.99171'
+ 0x3fc139f0cedaf576, 0x3fefb5797195d741, // 0.13458, 0.9909'
+ 0x3fc20116d4ec7bce, 0x3fefae8e8e46cfbb, // 0.14066, 0.99006'
+ 0x3fc2c8106e8e613a, 0x3fefa7557f08a517, // 0.14673, 0.98918'
+ 0x3fc38edbb0cd8d14, 0x3fef9fce55adb2c8, // 0.1528, 0.98826'
+ 0x3fc45576b1293e5a, 0x3fef97f924c9099b, // 0.15886, 0.9873'
+ 0x3fc51bdf8597c5f2, 0x3fef8fd5ffae41db, // 0.16491, 0.98631'
+ 0x3fc5e214448b3fc6, 0x3fef8764fa714ba9, // 0.17096, 0.98528'
+ 0x3fc6a81304f64ab2, 0x3fef7ea629e63d6e, // 0.177, 0.98421'
+ 0x3fc76dd9de50bf31, 0x3fef7599a3a12077, // 0.18304, 0.98311'
+ 0x3fc83366e89c64c5, 0x3fef6c3f7df5bbb7, // 0.18907, 0.98196'
+ 0x3fc8f8b83c69a60a, 0x3fef6297cff75cb0, // 0.19509, 0.98079'
+ 0x3fc9bdcbf2dc4366, 0x3fef58a2b1789e84, // 0.2011, 0.97957'
+ 0x3fca82a025b00451, 0x3fef4e603b0b2f2d, // 0.20711, 0.97832'
+ 0x3fcb4732ef3d6722, 0x3fef43d085ff92dd, // 0.21311, 0.97703'
+ 0x3fcc0b826a7e4f63, 0x3fef38f3ac64e589, // 0.2191, 0.9757'
+ 0x3fcccf8cb312b286, 0x3fef2dc9c9089a9d, // 0.22508, 0.97434'
+ 0x3fcd934fe5454311, 0x3fef2252f7763ada, // 0.23106, 0.97294'
+ 0x3fce56ca1e101a1b, 0x3fef168f53f7205d, // 0.23702, 0.9715'
+ 0x3fcf19f97b215f1a, 0x3fef0a7efb9230d7, // 0.24298, 0.97003'
+ 0x3fcfdcdc1adfedf8, 0x3feefe220c0b95ec, // 0.24893, 0.96852'
+ 0x3fd04fb80e37fdae, 0x3feef178a3e473c2, // 0.25487, 0.96698'
+ 0x3fd0b0d9cfdbdb90, 0x3feee482e25a9dbc, // 0.26079, 0.96539'
+ 0x3fd111d262b1f677, 0x3feed740e7684963, // 0.26671, 0.96378'
+ 0x3fd172a0d7765177, 0x3feec9b2d3c3bf84, // 0.27262, 0.96212'
+ 0x3fd1d3443f4cdb3d, 0x3feebbd8c8df0b74, // 0.27852, 0.96043'
+ 0x3fd233bbabc3bb72, 0x3feeadb2e8e7a88e, // 0.28441, 0.9587'
+ 0x3fd294062ed59f05, 0x3fee9f4156c62dda, // 0.29028, 0.95694'
+ 0x3fd2f422daec0386, 0x3fee9084361df7f3, // 0.29615, 0.95514'
+ 0x3fd35410c2e18152, 0x3fee817bab4cd10d, // 0.30201, 0.95331'
+ 0x3fd3b3cefa0414b7, 0x3fee7227db6a9744, // 0.30785, 0.95144'
+ 0x3fd4135c94176602, 0x3fee6288ec48e112, // 0.31368, 0.94953'
+ 0x3fd472b8a5571054, 0x3fee529f04729ffc, // 0.3195, 0.94759'
+ 0x3fd4d1e24278e76a, 0x3fee426a4b2bc17e, // 0.32531, 0.94561'
+ 0x3fd530d880af3c24, 0x3fee31eae870ce25, // 0.33111, 0.94359'
+ 0x3fd58f9a75ab1fdd, 0x3fee212104f686e5, // 0.33689, 0.94154'
+ 0x3fd5ee27379ea693, 0x3fee100cca2980ac, // 0.34266, 0.93946'
+ 0x3fd64c7ddd3f27c6, 0x3fedfeae622dbe2b, // 0.34842, 0.93734'
+ 0x3fd6aa9d7dc77e16, 0x3feded05f7de47da, // 0.35416, 0.93518'
+ 0x3fd7088530fa459e, 0x3feddb13b6ccc23d, // 0.3599, 0.93299'
+ 0x3fd766340f2418f6, 0x3fedc8d7cb410260, // 0.36561, 0.93077'
+ 0x3fd7c3a9311dcce7, 0x3fedb6526238a09b, // 0.37132, 0.92851'
+ 0x3fd820e3b04eaac4, 0x3feda383a9668988, // 0.37701, 0.92621'
+ 0x3fd87de2a6aea963, 0x3fed906bcf328d46, // 0.38268, 0.92388'
+ 0x3fd8daa52ec8a4af, 0x3fed7d0b02b8ecf9, // 0.38835, 0.92151'
+ 0x3fd9372a63bc93d7, 0x3fed696173c9e68b, // 0.39399, 0.91911'
+ 0x3fd993716141bdfe, 0x3fed556f52e93eb1, // 0.39962, 0.91668'
+ 0x3fd9ef7943a8ed8a, 0x3fed4134d14dc93a, // 0.40524, 0.91421'
+ 0x3fda4b4127dea1e4, 0x3fed2cb220e0ef9f, // 0.41084, 0.91171'
+ 0x3fdaa6c82b6d3fc9, 0x3fed17e7743e35dc, // 0.41643, 0.90917'
+ 0x3fdb020d6c7f4009, 0x3fed02d4feb2bd92, // 0.422, 0.9066'
+ 0x3fdb5d1009e15cc0, 0x3feced7af43cc773, // 0.42756, 0.90399'
+ 0x3fdbb7cf2304bd01, 0x3fecd7d9898b32f6, // 0.43309, 0.90135'
+ 0x3fdc1249d8011ee7, 0x3fecc1f0f3fcfc5c, // 0.43862, 0.89867'
+ 0x3fdc6c7f4997000a, 0x3fecabc169a0b901, // 0.44412, 0.89597'
+ 0x3fdcc66e9931c45d, 0x3fec954b213411f5, // 0.44961, 0.89322'
+ 0x3fdd2016e8e9db5b, 0x3fec7e8e52233cf3, // 0.45508, 0.89045'
+ 0x3fdd79775b86e389, 0x3fec678b3488739b, // 0.46054, 0.88764'
+ 0x3fddd28f1481cc58, 0x3fec5042012b6907, // 0.46598, 0.8848'
+ 0x3fde2b5d3806f63b, 0x3fec38b2f180bdb1, // 0.4714, 0.88192'
+ 0x3fde83e0eaf85113, 0x3fec20de3fa971b0, // 0.4768, 0.87901'
+ 0x3fdedc1952ef78d5, 0x3fec08c426725549, // 0.48218, 0.87607'
+ 0x3fdf3405963fd068, 0x3febf064e15377dd, // 0.48755, 0.87309'
+ 0x3fdf8ba4dbf89aba, 0x3febd7c0ac6f952a, // 0.4929, 0.87009'
+ 0x3fdfe2f64be7120f, 0x3febbed7c49380ea, // 0.49823, 0.86705'
+ 0x3fe01cfc874c3eb7, 0x3feba5aa673590d2, // 0.50354, 0.86397'
+ 0x3fe0485626ae221a, 0x3feb8c38d27504e9, // 0.50883, 0.86087'
+ 0x3fe073879922ffed, 0x3feb728345196e3e, // 0.5141, 0.85773'
+ 0x3fe09e907417c5e1, 0x3feb5889fe921405, // 0.51936, 0.85456'
+ 0x3fe0c9704d5d898f, 0x3feb3e4d3ef55712, // 0.52459, 0.85136'
+ 0x3fe0f426bb2a8e7d, 0x3feb23cd470013b4, // 0.5298, 0.84812'
+ 0x3fe11eb3541b4b22, 0x3feb090a58150200, // 0.535, 0.84485'
+ 0x3fe14915af336ceb, 0x3feaee04b43c1474, // 0.54017, 0.84155'
+ 0x3fe1734d63dedb49, 0x3fead2bc9e21d511, // 0.54532, 0.83822'
+ 0x3fe19d5a09f2b9b8, 0x3feab7325916c0d4, // 0.55046, 0.83486'
+ 0x3fe1c73b39ae68c8, 0x3fea9b66290ea1a3, // 0.55557, 0.83147'
+ 0x3fe1f0f08bbc861b, 0x3fea7f58529fe69d, // 0.56066, 0.82805'
+ 0x3fe21a799933eb58, 0x3fea63091b02fae2, // 0.56573, 0.82459'
+ 0x3fe243d5fb98ac1f, 0x3fea4678c8119ac8, // 0.57078, 0.8211'
+ 0x3fe26d054cdd12df, 0x3fea29a7a0462782, // 0.57581, 0.81758'
+ 0x3fe2960727629ca8, 0x3fea0c95eabaf937, // 0.58081, 0.81404'
+ 0x3fe2bedb25faf3ea, 0x3fe9ef43ef29af94, // 0.5858, 0.81046'
+ 0x3fe2e780e3e8ea16, 0x3fe9d1b1f5ea80d6, // 0.59076, 0.80685'
+ 0x3fe30ff7fce17035, 0x3fe9b3e047f38741, // 0.5957, 0.80321'
+ 0x3fe338400d0c8e57, 0x3fe995cf2ed80d22, // 0.60062, 0.79954'
+ 0x3fe36058b10659f3, 0x3fe9777ef4c7d742, // 0.60551, 0.79584'
+ 0x3fe3884185dfeb22, 0x3fe958efe48e6dd7, // 0.61038, 0.79211'
+ 0x3fe3affa292050b9, 0x3fe93a22499263fc, // 0.61523, 0.78835'
+ 0x3fe3d78238c58343, 0x3fe91b166fd49da2, // 0.62006, 0.78456'
+ 0x3fe3fed9534556d4, 0x3fe8fbcca3ef940d, // 0.62486, 0.78074'
+ 0x3fe425ff178e6bb1, 0x3fe8dc45331698cc, // 0.62964, 0.77689'
+ 0x3fe44cf325091dd6, 0x3fe8bc806b151741, // 0.63439, 0.77301'
+ 0x3fe473b51b987347, 0x3fe89c7e9a4dd4ab, // 0.63912, 0.7691'
+ 0x3fe49a449b9b0938, 0x3fe87c400fba2ebf, // 0.64383, 0.76517'
+ 0x3fe4c0a145ec0004, 0x3fe85bc51ae958cc, // 0.64851, 0.7612'
+ 0x3fe4e6cabbe3e5e9, 0x3fe83b0e0bff976e, // 0.65317, 0.75721'
+ 0x3fe50cc09f59a09b, 0x3fe81a1b33b57acc, // 0.65781, 0.75319'
+ 0x3fe5328292a35596, 0x3fe7f8ece3571771, // 0.66242, 0.74914'
+ 0x3fe5581038975137, 0x3fe7d7836cc33db2, // 0.667, 0.74506'
+ 0x3fe57d69348cec9f, 0x3fe7b5df226aafb0, // 0.67156, 0.74095'
+ 0x3fe5a28d2a5d7250, 0x3fe79400574f55e4, // 0.67609, 0.73682'
+ 0x3fe5c77bbe65018c, 0x3fe771e75f037261, // 0.6806, 0.73265'
+ 0x3fe5ec3495837074, 0x3fe74f948da8d28d, // 0.68508, 0.72846'
+ 0x3fe610b7551d2cde, 0x3fe72d0837efff97, // 0.68954, 0.72425'
+ 0x3fe63503a31c1be8, 0x3fe70a42b3176d7a, // 0.69397, 0.72'
+ 0x3fe6591925f0783e, 0x3fe6e74454eaa8ae, // 0.69838, 0.71573'
+ 0x3fe67cf78491af10, 0x3fe6c40d73c18275, // 0.70275, 0.71143'
+ 0x3fe6a09e667f3bcc, 0x3fe6a09e667f3bcc, // 0.70711, 0.70711'
+ 0x3fe6c40d73c18275, 0x3fe67cf78491af10, // 0.71143, 0.70275'
+ 0x3fe6e74454eaa8ae, 0x3fe6591925f0783e, // 0.71573, 0.69838'
+ 0x3fe70a42b3176d7a, 0x3fe63503a31c1be8, // 0.72, 0.69397'
+ 0x3fe72d0837efff97, 0x3fe610b7551d2cde, // 0.72425, 0.68954'
+ 0x3fe74f948da8d28d, 0x3fe5ec3495837074, // 0.72846, 0.68508'
+ 0x3fe771e75f037261, 0x3fe5c77bbe65018c, // 0.73265, 0.6806'
+ 0x3fe79400574f55e4, 0x3fe5a28d2a5d7250, // 0.73682, 0.67609'
+ 0x3fe7b5df226aafb0, 0x3fe57d69348cec9f, // 0.74095, 0.67156'
+ 0x3fe7d7836cc33db2, 0x3fe5581038975137, // 0.74506, 0.667'
+ 0x3fe7f8ece3571771, 0x3fe5328292a35596, // 0.74914, 0.66242'
+ 0x3fe81a1b33b57acc, 0x3fe50cc09f59a09b, // 0.75319, 0.65781'
+ 0x3fe83b0e0bff976e, 0x3fe4e6cabbe3e5e9, // 0.75721, 0.65317'
+ 0x3fe85bc51ae958cc, 0x3fe4c0a145ec0004, // 0.7612, 0.64851'
+ 0x3fe87c400fba2ebf, 0x3fe49a449b9b0938, // 0.76517, 0.64383'
+ 0x3fe89c7e9a4dd4ab, 0x3fe473b51b987347, // 0.7691, 0.63912'
+ 0x3fe8bc806b151741, 0x3fe44cf325091dd6, // 0.77301, 0.63439'
+ 0x3fe8dc45331698cc, 0x3fe425ff178e6bb1, // 0.77689, 0.62964'
+ 0x3fe8fbcca3ef940d, 0x3fe3fed9534556d4, // 0.78074, 0.62486'
+ 0x3fe91b166fd49da2, 0x3fe3d78238c58343, // 0.78456, 0.62006'
+ 0x3fe93a22499263fc, 0x3fe3affa292050b9, // 0.78835, 0.61523'
+ 0x3fe958efe48e6dd7, 0x3fe3884185dfeb22, // 0.79211, 0.61038'
+ 0x3fe9777ef4c7d742, 0x3fe36058b10659f3, // 0.79584, 0.60551'
+ 0x3fe995cf2ed80d22, 0x3fe338400d0c8e57, // 0.79954, 0.60062'
+ 0x3fe9b3e047f38741, 0x3fe30ff7fce17035, // 0.80321, 0.5957'
+ 0x3fe9d1b1f5ea80d6, 0x3fe2e780e3e8ea16, // 0.80685, 0.59076'
+ 0x3fe9ef43ef29af94, 0x3fe2bedb25faf3ea, // 0.81046, 0.5858'
+ 0x3fea0c95eabaf937, 0x3fe2960727629ca8, // 0.81404, 0.58081'
+ 0x3fea29a7a0462782, 0x3fe26d054cdd12df, // 0.81758, 0.57581'
+ 0x3fea4678c8119ac8, 0x3fe243d5fb98ac1f, // 0.8211, 0.57078'
+ 0x3fea63091b02fae2, 0x3fe21a799933eb58, // 0.82459, 0.56573'
+ 0x3fea7f58529fe69d, 0x3fe1f0f08bbc861b, // 0.82805, 0.56066'
+ 0x3fea9b66290ea1a3, 0x3fe1c73b39ae68c8, // 0.83147, 0.55557'
+ 0x3feab7325916c0d4, 0x3fe19d5a09f2b9b8, // 0.83486, 0.55046'
+ 0x3fead2bc9e21d511, 0x3fe1734d63dedb49, // 0.83822, 0.54532'
+ 0x3feaee04b43c1474, 0x3fe14915af336ceb, // 0.84155, 0.54017'
+ 0x3feb090a58150200, 0x3fe11eb3541b4b22, // 0.84485, 0.535'
+ 0x3feb23cd470013b4, 0x3fe0f426bb2a8e7d, // 0.84812, 0.5298'
+ 0x3feb3e4d3ef55712, 0x3fe0c9704d5d898f, // 0.85136, 0.52459'
+ 0x3feb5889fe921405, 0x3fe09e907417c5e1, // 0.85456, 0.51936'
+ 0x3feb728345196e3e, 0x3fe073879922ffed, // 0.85773, 0.5141'
+ 0x3feb8c38d27504e9, 0x3fe0485626ae221a, // 0.86087, 0.50883'
+ 0x3feba5aa673590d2, 0x3fe01cfc874c3eb7, // 0.86397, 0.50354'
+ 0x3febbed7c49380ea, 0x3fdfe2f64be7120f, // 0.86705, 0.49823'
+ 0x3febd7c0ac6f952a, 0x3fdf8ba4dbf89aba, // 0.87009, 0.4929'
+ 0x3febf064e15377dd, 0x3fdf3405963fd068, // 0.87309, 0.48755'
+ 0x3fec08c426725549, 0x3fdedc1952ef78d5, // 0.87607, 0.48218'
+ 0x3fec20de3fa971b0, 0x3fde83e0eaf85113, // 0.87901, 0.4768'
+ 0x3fec38b2f180bdb1, 0x3fde2b5d3806f63b, // 0.88192, 0.4714'
+ 0x3fec5042012b6907, 0x3fddd28f1481cc58, // 0.8848, 0.46598'
+ 0x3fec678b3488739b, 0x3fdd79775b86e389, // 0.88764, 0.46054'
+ 0x3fec7e8e52233cf3, 0x3fdd2016e8e9db5b, // 0.89045, 0.45508'
+ 0x3fec954b213411f5, 0x3fdcc66e9931c45d, // 0.89322, 0.44961'
+ 0x3fecabc169a0b901, 0x3fdc6c7f4997000a, // 0.89597, 0.44412'
+ 0x3fecc1f0f3fcfc5c, 0x3fdc1249d8011ee7, // 0.89867, 0.43862'
+ 0x3fecd7d9898b32f6, 0x3fdbb7cf2304bd01, // 0.90135, 0.43309'
+ 0x3feced7af43cc773, 0x3fdb5d1009e15cc0, // 0.90399, 0.42756'
+ 0x3fed02d4feb2bd92, 0x3fdb020d6c7f4009, // 0.9066, 0.422'
+ 0x3fed17e7743e35dc, 0x3fdaa6c82b6d3fc9, // 0.90917, 0.41643'
+ 0x3fed2cb220e0ef9f, 0x3fda4b4127dea1e4, // 0.91171, 0.41084'
+ 0x3fed4134d14dc93a, 0x3fd9ef7943a8ed8a, // 0.91421, 0.40524'
+ 0x3fed556f52e93eb1, 0x3fd993716141bdfe, // 0.91668, 0.39962'
+ 0x3fed696173c9e68b, 0x3fd9372a63bc93d7, // 0.91911, 0.39399'
+ 0x3fed7d0b02b8ecf9, 0x3fd8daa52ec8a4af, // 0.92151, 0.38835'
+ 0x3fed906bcf328d46, 0x3fd87de2a6aea963, // 0.92388, 0.38268'
+ 0x3feda383a9668988, 0x3fd820e3b04eaac4, // 0.92621, 0.37701'
+ 0x3fedb6526238a09b, 0x3fd7c3a9311dcce7, // 0.92851, 0.37132'
+ 0x3fedc8d7cb410260, 0x3fd766340f2418f6, // 0.93077, 0.36561'
+ 0x3feddb13b6ccc23d, 0x3fd7088530fa459e, // 0.93299, 0.3599'
+ 0x3feded05f7de47da, 0x3fd6aa9d7dc77e16, // 0.93518, 0.35416'
+ 0x3fedfeae622dbe2b, 0x3fd64c7ddd3f27c6, // 0.93734, 0.34842'
+ 0x3fee100cca2980ac, 0x3fd5ee27379ea693, // 0.93946, 0.34266'
+ 0x3fee212104f686e5, 0x3fd58f9a75ab1fdd, // 0.94154, 0.33689'
+ 0x3fee31eae870ce25, 0x3fd530d880af3c24, // 0.94359, 0.33111'
+ 0x3fee426a4b2bc17e, 0x3fd4d1e24278e76a, // 0.94561, 0.32531'
+ 0x3fee529f04729ffc, 0x3fd472b8a5571054, // 0.94759, 0.3195'
+ 0x3fee6288ec48e112, 0x3fd4135c94176602, // 0.94953, 0.31368'
+ 0x3fee7227db6a9744, 0x3fd3b3cefa0414b7, // 0.95144, 0.30785'
+ 0x3fee817bab4cd10d, 0x3fd35410c2e18152, // 0.95331, 0.30201'
+ 0x3fee9084361df7f3, 0x3fd2f422daec0386, // 0.95514, 0.29615'
+ 0x3fee9f4156c62dda, 0x3fd294062ed59f05, // 0.95694, 0.29028'
+ 0x3feeadb2e8e7a88e, 0x3fd233bbabc3bb72, // 0.9587, 0.28441'
+ 0x3feebbd8c8df0b74, 0x3fd1d3443f4cdb3d, // 0.96043, 0.27852'
+ 0x3feec9b2d3c3bf84, 0x3fd172a0d7765177, // 0.96212, 0.27262'
+ 0x3feed740e7684963, 0x3fd111d262b1f677, // 0.96378, 0.26671'
+ 0x3feee482e25a9dbc, 0x3fd0b0d9cfdbdb90, // 0.96539, 0.26079'
+ 0x3feef178a3e473c2, 0x3fd04fb80e37fdae, // 0.96698, 0.25487'
+ 0x3feefe220c0b95ec, 0x3fcfdcdc1adfedf8, // 0.96852, 0.24893'
+ 0x3fef0a7efb9230d7, 0x3fcf19f97b215f1a, // 0.97003, 0.24298'
+ 0x3fef168f53f7205d, 0x3fce56ca1e101a1b, // 0.9715, 0.23702'
+ 0x3fef2252f7763ada, 0x3fcd934fe5454311, // 0.97294, 0.23106'
+ 0x3fef2dc9c9089a9d, 0x3fcccf8cb312b286, // 0.97434, 0.22508'
+ 0x3fef38f3ac64e589, 0x3fcc0b826a7e4f63, // 0.9757, 0.2191'
+ 0x3fef43d085ff92dd, 0x3fcb4732ef3d6722, // 0.97703, 0.21311'
+ 0x3fef4e603b0b2f2d, 0x3fca82a025b00451, // 0.97832, 0.20711'
+ 0x3fef58a2b1789e84, 0x3fc9bdcbf2dc4366, // 0.97957, 0.2011'
+ 0x3fef6297cff75cb0, 0x3fc8f8b83c69a60a, // 0.98079, 0.19509'
+ 0x3fef6c3f7df5bbb7, 0x3fc83366e89c64c5, // 0.98196, 0.18907'
+ 0x3fef7599a3a12077, 0x3fc76dd9de50bf31, // 0.98311, 0.18304'
+ 0x3fef7ea629e63d6e, 0x3fc6a81304f64ab2, // 0.98421, 0.177'
+ 0x3fef8764fa714ba9, 0x3fc5e214448b3fc6, // 0.98528, 0.17096'
+ 0x3fef8fd5ffae41db, 0x3fc51bdf8597c5f2, // 0.98631, 0.16491'
+ 0x3fef97f924c9099b, 0x3fc45576b1293e5a, // 0.9873, 0.15886'
+ 0x3fef9fce55adb2c8, 0x3fc38edbb0cd8d14, // 0.98826, 0.1528'
+ 0x3fefa7557f08a517, 0x3fc2c8106e8e613a, // 0.98918, 0.14673'
+ 0x3fefae8e8e46cfbb, 0x3fc20116d4ec7bce, // 0.99006, 0.14066'
+ 0x3fefb5797195d741, 0x3fc139f0cedaf576, // 0.9909, 0.13458'
+ 0x3fefbc1617e44186, 0x3fc072a047ba831d, // 0.99171, 0.1285'
+ 0x3fefc26470e19fd3, 0x3fbf564e56a9730e, // 0.99248, 0.12241'
+ 0x3fefc8646cfeb721, 0x3fbdc70ecbae9fc8, // 0.99321, 0.11632'
+ 0x3fefce15fd6da67b, 0x3fbc3785c79ec2d5, // 0.99391, 0.11022'
+ 0x3fefd37914220b84, 0x3fbaa7b724495c04, // 0.99456, 0.10412'
+ 0x3fefd88da3d12526, 0x3fb917a6bc29b42c, // 0.99518, 0.098017'
+ 0x3fefdd539ff1f456, 0x3fb787586a5d5b21, // 0.99577, 0.091909'
+ 0x3fefe1cafcbd5b09, 0x3fb5f6d00a9aa419, // 0.99631, 0.085797'
+ 0x3fefe5f3af2e3940, 0x3fb4661179272096, // 0.99682, 0.079682'
+ 0x3fefe9cdad01883a, 0x3fb2d52092ce19f6, // 0.99729, 0.073565'
+ 0x3fefed58ecb673c4, 0x3fb1440134d709b2, // 0.99772, 0.067444'
+ 0x3feff095658e71ad, 0x3faf656e79f820e0, // 0.99812, 0.061321'
+ 0x3feff3830f8d575c, 0x3fac428d12c0d7e3, // 0.99848, 0.055195'
+ 0x3feff621e3796d7e, 0x3fa91f65f10dd814, // 0.9988, 0.049068'
+ 0x3feff871dadb81df, 0x3fa5fc00d290cd43, // 0.99908, 0.042938'
+ 0x3feffa72effef75d, 0x3fa2d865759455cd, // 0.99932, 0.036807'
+ 0x3feffc251df1d3f8, 0x3f9f693731d1cf01, // 0.99953, 0.030675'
+ 0x3feffd886084cd0d, 0x3f992155f7a3667e, // 0.9997, 0.024541'
+ 0x3feffe9cb44b51a1, 0x3f92d936bbe30efd, // 0.99983, 0.018407'
+ 0x3fefff62169b92db, 0x3f8921d1fcdec784, // 0.99992, 0.012272'
+ 0x3fefffd8858e8a92, 0x3f7921f0fe670071, // 0.99998, 0.0061359'
+ 0x3ff0000000000000, 0x0000000000000000, // 1, 0'
+ 0x3fefffd8858e8a92, 0xbf7921f0fe670071, // 0.99998,-0.0061359'
+ 0x3fefff62169b92db, 0xbf8921d1fcdec784, // 0.99992, -0.012272'
+ 0x3feffe9cb44b51a1, 0xbf92d936bbe30efd, // 0.99983, -0.018407'
+ 0x3feffd886084cd0d, 0xbf992155f7a3667e, // 0.9997, -0.024541'
+ 0x3feffc251df1d3f8, 0xbf9f693731d1cf01, // 0.99953, -0.030675'
+ 0x3feffa72effef75d, 0xbfa2d865759455cd, // 0.99932, -0.036807'
+ 0x3feff871dadb81df, 0xbfa5fc00d290cd43, // 0.99908, -0.042938'
+ 0x3feff621e3796d7e, 0xbfa91f65f10dd814, // 0.9988, -0.049068'
+ 0x3feff3830f8d575c, 0xbfac428d12c0d7e3, // 0.99848, -0.055195'
+ 0x3feff095658e71ad, 0xbfaf656e79f820e0, // 0.99812, -0.061321'
+ 0x3fefed58ecb673c4, 0xbfb1440134d709b2, // 0.99772, -0.067444'
+ 0x3fefe9cdad01883a, 0xbfb2d52092ce19f6, // 0.99729, -0.073565'
+ 0x3fefe5f3af2e3940, 0xbfb4661179272096, // 0.99682, -0.079682'
+ 0x3fefe1cafcbd5b09, 0xbfb5f6d00a9aa419, // 0.99631, -0.085797'
+ 0x3fefdd539ff1f456, 0xbfb787586a5d5b21, // 0.99577, -0.091909'
+ 0x3fefd88da3d12526, 0xbfb917a6bc29b42c, // 0.99518, -0.098017'
+ 0x3fefd37914220b84, 0xbfbaa7b724495c04, // 0.99456, -0.10412'
+ 0x3fefce15fd6da67b, 0xbfbc3785c79ec2d5, // 0.99391, -0.11022'
+ 0x3fefc8646cfeb721, 0xbfbdc70ecbae9fc8, // 0.99321, -0.11632'
+ 0x3fefc26470e19fd3, 0xbfbf564e56a9730e, // 0.99248, -0.12241'
+ 0x3fefbc1617e44186, 0xbfc072a047ba831d, // 0.99171, -0.1285'
+ 0x3fefb5797195d741, 0xbfc139f0cedaf576, // 0.9909, -0.13458'
+ 0x3fefae8e8e46cfbb, 0xbfc20116d4ec7bce, // 0.99006, -0.14066'
+ 0x3fefa7557f08a517, 0xbfc2c8106e8e613a, // 0.98918, -0.14673'
+ 0x3fef9fce55adb2c8, 0xbfc38edbb0cd8d14, // 0.98826, -0.1528'
+ 0x3fef97f924c9099b, 0xbfc45576b1293e5a, // 0.9873, -0.15886'
+ 0x3fef8fd5ffae41db, 0xbfc51bdf8597c5f2, // 0.98631, -0.16491'
+ 0x3fef8764fa714ba9, 0xbfc5e214448b3fc6, // 0.98528, -0.17096'
+ 0x3fef7ea629e63d6e, 0xbfc6a81304f64ab2, // 0.98421, -0.177'
+ 0x3fef7599a3a12077, 0xbfc76dd9de50bf31, // 0.98311, -0.18304'
+ 0x3fef6c3f7df5bbb7, 0xbfc83366e89c64c5, // 0.98196, -0.18907'
+ 0x3fef6297cff75cb0, 0xbfc8f8b83c69a60a, // 0.98079, -0.19509'
+ 0x3fef58a2b1789e84, 0xbfc9bdcbf2dc4366, // 0.97957, -0.2011'
+ 0x3fef4e603b0b2f2d, 0xbfca82a025b00451, // 0.97832, -0.20711'
+ 0x3fef43d085ff92dd, 0xbfcb4732ef3d6722, // 0.97703, -0.21311'
+ 0x3fef38f3ac64e589, 0xbfcc0b826a7e4f63, // 0.9757, -0.2191'
+ 0x3fef2dc9c9089a9d, 0xbfcccf8cb312b286, // 0.97434, -0.22508'
+ 0x3fef2252f7763ada, 0xbfcd934fe5454311, // 0.97294, -0.23106'
+ 0x3fef168f53f7205d, 0xbfce56ca1e101a1b, // 0.9715, -0.23702'
+ 0x3fef0a7efb9230d7, 0xbfcf19f97b215f1a, // 0.97003, -0.24298'
+ 0x3feefe220c0b95ec, 0xbfcfdcdc1adfedf8, // 0.96852, -0.24893'
+ 0x3feef178a3e473c2, 0xbfd04fb80e37fdae, // 0.96698, -0.25487'
+ 0x3feee482e25a9dbc, 0xbfd0b0d9cfdbdb90, // 0.96539, -0.26079'
+ 0x3feed740e7684963, 0xbfd111d262b1f677, // 0.96378, -0.26671'
+ 0x3feec9b2d3c3bf84, 0xbfd172a0d7765177, // 0.96212, -0.27262'
+ 0x3feebbd8c8df0b74, 0xbfd1d3443f4cdb3d, // 0.96043, -0.27852'
+ 0x3feeadb2e8e7a88e, 0xbfd233bbabc3bb72, // 0.9587, -0.28441'
+ 0x3fee9f4156c62dda, 0xbfd294062ed59f05, // 0.95694, -0.29028'
+ 0x3fee9084361df7f3, 0xbfd2f422daec0386, // 0.95514, -0.29615'
+ 0x3fee817bab4cd10d, 0xbfd35410c2e18152, // 0.95331, -0.30201'
+ 0x3fee7227db6a9744, 0xbfd3b3cefa0414b7, // 0.95144, -0.30785'
+ 0x3fee6288ec48e112, 0xbfd4135c94176602, // 0.94953, -0.31368'
+ 0x3fee529f04729ffc, 0xbfd472b8a5571054, // 0.94759, -0.3195'
+ 0x3fee426a4b2bc17e, 0xbfd4d1e24278e76a, // 0.94561, -0.32531'
+ 0x3fee31eae870ce25, 0xbfd530d880af3c24, // 0.94359, -0.33111'
+ 0x3fee212104f686e5, 0xbfd58f9a75ab1fdd, // 0.94154, -0.33689'
+ 0x3fee100cca2980ac, 0xbfd5ee27379ea693, // 0.93946, -0.34266'
+ 0x3fedfeae622dbe2b, 0xbfd64c7ddd3f27c6, // 0.93734, -0.34842'
+ 0x3feded05f7de47da, 0xbfd6aa9d7dc77e16, // 0.93518, -0.35416'
+ 0x3feddb13b6ccc23d, 0xbfd7088530fa459e, // 0.93299, -0.3599'
+ 0x3fedc8d7cb410260, 0xbfd766340f2418f6, // 0.93077, -0.36561'
+ 0x3fedb6526238a09b, 0xbfd7c3a9311dcce7, // 0.92851, -0.37132'
+ 0x3feda383a9668988, 0xbfd820e3b04eaac4, // 0.92621, -0.37701'
+ 0x3fed906bcf328d46, 0xbfd87de2a6aea963, // 0.92388, -0.38268'
+ 0x3fed7d0b02b8ecf9, 0xbfd8daa52ec8a4af, // 0.92151, -0.38835'
+ 0x3fed696173c9e68b, 0xbfd9372a63bc93d7, // 0.91911, -0.39399'
+ 0x3fed556f52e93eb1, 0xbfd993716141bdfe, // 0.91668, -0.39962'
+ 0x3fed4134d14dc93a, 0xbfd9ef7943a8ed8a, // 0.91421, -0.40524'
+ 0x3fed2cb220e0ef9f, 0xbfda4b4127dea1e4, // 0.91171, -0.41084'
+ 0x3fed17e7743e35dc, 0xbfdaa6c82b6d3fc9, // 0.90917, -0.41643'
+ 0x3fed02d4feb2bd92, 0xbfdb020d6c7f4009, // 0.9066, -0.422'
+ 0x3feced7af43cc773, 0xbfdb5d1009e15cc0, // 0.90399, -0.42756'
+ 0x3fecd7d9898b32f6, 0xbfdbb7cf2304bd01, // 0.90135, -0.43309'
+ 0x3fecc1f0f3fcfc5c, 0xbfdc1249d8011ee7, // 0.89867, -0.43862'
+ 0x3fecabc169a0b901, 0xbfdc6c7f4997000a, // 0.89597, -0.44412'
+ 0x3fec954b213411f5, 0xbfdcc66e9931c45d, // 0.89322, -0.44961'
+ 0x3fec7e8e52233cf3, 0xbfdd2016e8e9db5b, // 0.89045, -0.45508'
+ 0x3fec678b3488739b, 0xbfdd79775b86e389, // 0.88764, -0.46054'
+ 0x3fec5042012b6907, 0xbfddd28f1481cc58, // 0.8848, -0.46598'
+ 0x3fec38b2f180bdb1, 0xbfde2b5d3806f63b, // 0.88192, -0.4714'
+ 0x3fec20de3fa971b0, 0xbfde83e0eaf85113, // 0.87901, -0.4768'
+ 0x3fec08c426725549, 0xbfdedc1952ef78d5, // 0.87607, -0.48218'
+ 0x3febf064e15377dd, 0xbfdf3405963fd068, // 0.87309, -0.48755'
+ 0x3febd7c0ac6f952a, 0xbfdf8ba4dbf89aba, // 0.87009, -0.4929'
+ 0x3febbed7c49380ea, 0xbfdfe2f64be7120f, // 0.86705, -0.49823'
+ 0x3feba5aa673590d2, 0xbfe01cfc874c3eb7, // 0.86397, -0.50354'
+ 0x3feb8c38d27504e9, 0xbfe0485626ae221a, // 0.86087, -0.50883'
+ 0x3feb728345196e3e, 0xbfe073879922ffed, // 0.85773, -0.5141'
+ 0x3feb5889fe921405, 0xbfe09e907417c5e1, // 0.85456, -0.51936'
+ 0x3feb3e4d3ef55712, 0xbfe0c9704d5d898f, // 0.85136, -0.52459'
+ 0x3feb23cd470013b4, 0xbfe0f426bb2a8e7d, // 0.84812, -0.5298'
+ 0x3feb090a58150200, 0xbfe11eb3541b4b22, // 0.84485, -0.535'
+ 0x3feaee04b43c1474, 0xbfe14915af336ceb, // 0.84155, -0.54017'
+ 0x3fead2bc9e21d511, 0xbfe1734d63dedb49, // 0.83822, -0.54532'
+ 0x3feab7325916c0d4, 0xbfe19d5a09f2b9b8, // 0.83486, -0.55046'
+ 0x3fea9b66290ea1a3, 0xbfe1c73b39ae68c8, // 0.83147, -0.55557'
+ 0x3fea7f58529fe69d, 0xbfe1f0f08bbc861b, // 0.82805, -0.56066'
+ 0x3fea63091b02fae2, 0xbfe21a799933eb58, // 0.82459, -0.56573'
+ 0x3fea4678c8119ac8, 0xbfe243d5fb98ac1f, // 0.8211, -0.57078'
+ 0x3fea29a7a0462782, 0xbfe26d054cdd12df, // 0.81758, -0.57581'
+ 0x3fea0c95eabaf937, 0xbfe2960727629ca8, // 0.81404, -0.58081'
+ 0x3fe9ef43ef29af94, 0xbfe2bedb25faf3ea, // 0.81046, -0.5858'
+ 0x3fe9d1b1f5ea80d6, 0xbfe2e780e3e8ea16, // 0.80685, -0.59076'
+ 0x3fe9b3e047f38741, 0xbfe30ff7fce17035, // 0.80321, -0.5957'
+ 0x3fe995cf2ed80d22, 0xbfe338400d0c8e57, // 0.79954, -0.60062'
+ 0x3fe9777ef4c7d742, 0xbfe36058b10659f3, // 0.79584, -0.60551'
+ 0x3fe958efe48e6dd7, 0xbfe3884185dfeb22, // 0.79211, -0.61038'
+ 0x3fe93a22499263fc, 0xbfe3affa292050b9, // 0.78835, -0.61523'
+ 0x3fe91b166fd49da2, 0xbfe3d78238c58343, // 0.78456, -0.62006'
+ 0x3fe8fbcca3ef940d, 0xbfe3fed9534556d4, // 0.78074, -0.62486'
+ 0x3fe8dc45331698cc, 0xbfe425ff178e6bb1, // 0.77689, -0.62964'
+ 0x3fe8bc806b151741, 0xbfe44cf325091dd6, // 0.77301, -0.63439'
+ 0x3fe89c7e9a4dd4ab, 0xbfe473b51b987347, // 0.7691, -0.63912'
+ 0x3fe87c400fba2ebf, 0xbfe49a449b9b0938, // 0.76517, -0.64383'
+ 0x3fe85bc51ae958cc, 0xbfe4c0a145ec0004, // 0.7612, -0.64851'
+ 0x3fe83b0e0bff976e, 0xbfe4e6cabbe3e5e9, // 0.75721, -0.65317'
+ 0x3fe81a1b33b57acc, 0xbfe50cc09f59a09b, // 0.75319, -0.65781'
+ 0x3fe7f8ece3571771, 0xbfe5328292a35596, // 0.74914, -0.66242'
+ 0x3fe7d7836cc33db2, 0xbfe5581038975137, // 0.74506, -0.667'
+ 0x3fe7b5df226aafb0, 0xbfe57d69348cec9f, // 0.74095, -0.67156'
+ 0x3fe79400574f55e4, 0xbfe5a28d2a5d7250, // 0.73682, -0.67609'
+ 0x3fe771e75f037261, 0xbfe5c77bbe65018c, // 0.73265, -0.6806'
+ 0x3fe74f948da8d28d, 0xbfe5ec3495837074, // 0.72846, -0.68508'
+ 0x3fe72d0837efff97, 0xbfe610b7551d2cde, // 0.72425, -0.68954'
+ 0x3fe70a42b3176d7a, 0xbfe63503a31c1be8, // 0.72, -0.69397'
+ 0x3fe6e74454eaa8ae, 0xbfe6591925f0783e, // 0.71573, -0.69838'
+ 0x3fe6c40d73c18275, 0xbfe67cf78491af10, // 0.71143, -0.70275'
+ 0x3fe6a09e667f3bcc, 0xbfe6a09e667f3bcc, // 0.70711, -0.70711'
+ 0x3fe67cf78491af10, 0xbfe6c40d73c18275, // 0.70275, -0.71143'
+ 0x3fe6591925f0783e, 0xbfe6e74454eaa8ae, // 0.69838, -0.71573'
+ 0x3fe63503a31c1be8, 0xbfe70a42b3176d7a, // 0.69397, -0.72'
+ 0x3fe610b7551d2cde, 0xbfe72d0837efff97, // 0.68954, -0.72425'
+ 0x3fe5ec3495837074, 0xbfe74f948da8d28d, // 0.68508, -0.72846'
+ 0x3fe5c77bbe65018c, 0xbfe771e75f037261, // 0.6806, -0.73265'
+ 0x3fe5a28d2a5d7250, 0xbfe79400574f55e4, // 0.67609, -0.73682'
+ 0x3fe57d69348cec9f, 0xbfe7b5df226aafb0, // 0.67156, -0.74095'
+ 0x3fe5581038975137, 0xbfe7d7836cc33db2, // 0.667, -0.74506'
+ 0x3fe5328292a35596, 0xbfe7f8ece3571771, // 0.66242, -0.74914'
+ 0x3fe50cc09f59a09b, 0xbfe81a1b33b57acc, // 0.65781, -0.75319'
+ 0x3fe4e6cabbe3e5e9, 0xbfe83b0e0bff976e, // 0.65317, -0.75721'
+ 0x3fe4c0a145ec0004, 0xbfe85bc51ae958cc, // 0.64851, -0.7612'
+ 0x3fe49a449b9b0938, 0xbfe87c400fba2ebf, // 0.64383, -0.76517'
+ 0x3fe473b51b987347, 0xbfe89c7e9a4dd4ab, // 0.63912, -0.7691'
+ 0x3fe44cf325091dd6, 0xbfe8bc806b151741, // 0.63439, -0.77301'
+ 0x3fe425ff178e6bb1, 0xbfe8dc45331698cc, // 0.62964, -0.77689'
+ 0x3fe3fed9534556d4, 0xbfe8fbcca3ef940d, // 0.62486, -0.78074'
+ 0x3fe3d78238c58343, 0xbfe91b166fd49da2, // 0.62006, -0.78456'
+ 0x3fe3affa292050b9, 0xbfe93a22499263fc, // 0.61523, -0.78835'
+ 0x3fe3884185dfeb22, 0xbfe958efe48e6dd7, // 0.61038, -0.79211'
+ 0x3fe36058b10659f3, 0xbfe9777ef4c7d742, // 0.60551, -0.79584'
+ 0x3fe338400d0c8e57, 0xbfe995cf2ed80d22, // 0.60062, -0.79954'
+ 0x3fe30ff7fce17035, 0xbfe9b3e047f38741, // 0.5957, -0.80321'
+ 0x3fe2e780e3e8ea16, 0xbfe9d1b1f5ea80d6, // 0.59076, -0.80685'
+ 0x3fe2bedb25faf3ea, 0xbfe9ef43ef29af94, // 0.5858, -0.81046'
+ 0x3fe2960727629ca8, 0xbfea0c95eabaf937, // 0.58081, -0.81404'
+ 0x3fe26d054cdd12df, 0xbfea29a7a0462782, // 0.57581, -0.81758'
+ 0x3fe243d5fb98ac1f, 0xbfea4678c8119ac8, // 0.57078, -0.8211'
+ 0x3fe21a799933eb58, 0xbfea63091b02fae2, // 0.56573, -0.82459'
+ 0x3fe1f0f08bbc861b, 0xbfea7f58529fe69d, // 0.56066, -0.82805'
+ 0x3fe1c73b39ae68c8, 0xbfea9b66290ea1a3, // 0.55557, -0.83147'
+ 0x3fe19d5a09f2b9b8, 0xbfeab7325916c0d4, // 0.55046, -0.83486'
+ 0x3fe1734d63dedb49, 0xbfead2bc9e21d511, // 0.54532, -0.83822'
+ 0x3fe14915af336ceb, 0xbfeaee04b43c1474, // 0.54017, -0.84155'
+ 0x3fe11eb3541b4b22, 0xbfeb090a58150200, // 0.535, -0.84485'
+ 0x3fe0f426bb2a8e7d, 0xbfeb23cd470013b4, // 0.5298, -0.84812'
+ 0x3fe0c9704d5d898f, 0xbfeb3e4d3ef55712, // 0.52459, -0.85136'
+ 0x3fe09e907417c5e1, 0xbfeb5889fe921405, // 0.51936, -0.85456'
+ 0x3fe073879922ffed, 0xbfeb728345196e3e, // 0.5141, -0.85773'
+ 0x3fe0485626ae221a, 0xbfeb8c38d27504e9, // 0.50883, -0.86087'
+ 0x3fe01cfc874c3eb7, 0xbfeba5aa673590d2, // 0.50354, -0.86397'
+ 0x3fdfe2f64be7120f, 0xbfebbed7c49380ea, // 0.49823, -0.86705'
+ 0x3fdf8ba4dbf89aba, 0xbfebd7c0ac6f952a, // 0.4929, -0.87009'
+ 0x3fdf3405963fd068, 0xbfebf064e15377dd, // 0.48755, -0.87309'
+ 0x3fdedc1952ef78d5, 0xbfec08c426725549, // 0.48218, -0.87607'
+ 0x3fde83e0eaf85113, 0xbfec20de3fa971b0, // 0.4768, -0.87901'
+ 0x3fde2b5d3806f63b, 0xbfec38b2f180bdb1, // 0.4714, -0.88192'
+ 0x3fddd28f1481cc58, 0xbfec5042012b6907, // 0.46598, -0.8848'
+ 0x3fdd79775b86e389, 0xbfec678b3488739b, // 0.46054, -0.88764'
+ 0x3fdd2016e8e9db5b, 0xbfec7e8e52233cf3, // 0.45508, -0.89045'
+ 0x3fdcc66e9931c45d, 0xbfec954b213411f5, // 0.44961, -0.89322'
+ 0x3fdc6c7f4997000a, 0xbfecabc169a0b901, // 0.44412, -0.89597'
+ 0x3fdc1249d8011ee7, 0xbfecc1f0f3fcfc5c, // 0.43862, -0.89867'
+ 0x3fdbb7cf2304bd01, 0xbfecd7d9898b32f6, // 0.43309, -0.90135'
+ 0x3fdb5d1009e15cc0, 0xbfeced7af43cc773, // 0.42756, -0.90399'
+ 0x3fdb020d6c7f4009, 0xbfed02d4feb2bd92, // 0.422, -0.9066'
+ 0x3fdaa6c82b6d3fc9, 0xbfed17e7743e35dc, // 0.41643, -0.90917'
+ 0x3fda4b4127dea1e4, 0xbfed2cb220e0ef9f, // 0.41084, -0.91171'
+ 0x3fd9ef7943a8ed8a, 0xbfed4134d14dc93a, // 0.40524, -0.91421'
+ 0x3fd993716141bdfe, 0xbfed556f52e93eb1, // 0.39962, -0.91668'
+ 0x3fd9372a63bc93d7, 0xbfed696173c9e68b, // 0.39399, -0.91911'
+ 0x3fd8daa52ec8a4af, 0xbfed7d0b02b8ecf9, // 0.38835, -0.92151'
+ 0x3fd87de2a6aea963, 0xbfed906bcf328d46, // 0.38268, -0.92388'
+ 0x3fd820e3b04eaac4, 0xbfeda383a9668988, // 0.37701, -0.92621'
+ 0x3fd7c3a9311dcce7, 0xbfedb6526238a09b, // 0.37132, -0.92851'
+ 0x3fd766340f2418f6, 0xbfedc8d7cb410260, // 0.36561, -0.93077'
+ 0x3fd7088530fa459e, 0xbfeddb13b6ccc23d, // 0.3599, -0.93299'
+ 0x3fd6aa9d7dc77e16, 0xbfeded05f7de47da, // 0.35416, -0.93518'
+ 0x3fd64c7ddd3f27c6, 0xbfedfeae622dbe2b, // 0.34842, -0.93734'
+ 0x3fd5ee27379ea693, 0xbfee100cca2980ac, // 0.34266, -0.93946'
+ 0x3fd58f9a75ab1fdd, 0xbfee212104f686e5, // 0.33689, -0.94154'
+ 0x3fd530d880af3c24, 0xbfee31eae870ce25, // 0.33111, -0.94359'
+ 0x3fd4d1e24278e76a, 0xbfee426a4b2bc17e, // 0.32531, -0.94561'
+ 0x3fd472b8a5571054, 0xbfee529f04729ffc, // 0.3195, -0.94759'
+ 0x3fd4135c94176602, 0xbfee6288ec48e112, // 0.31368, -0.94953'
+ 0x3fd3b3cefa0414b7, 0xbfee7227db6a9744, // 0.30785, -0.95144'
+ 0x3fd35410c2e18152, 0xbfee817bab4cd10d, // 0.30201, -0.95331'
+ 0x3fd2f422daec0386, 0xbfee9084361df7f3, // 0.29615, -0.95514'
+ 0x3fd294062ed59f05, 0xbfee9f4156c62dda, // 0.29028, -0.95694'
+ 0x3fd233bbabc3bb72, 0xbfeeadb2e8e7a88e, // 0.28441, -0.9587'
+ 0x3fd1d3443f4cdb3d, 0xbfeebbd8c8df0b74, // 0.27852, -0.96043'
+ 0x3fd172a0d7765177, 0xbfeec9b2d3c3bf84, // 0.27262, -0.96212'
+ 0x3fd111d262b1f677, 0xbfeed740e7684963, // 0.26671, -0.96378'
+ 0x3fd0b0d9cfdbdb90, 0xbfeee482e25a9dbc, // 0.26079, -0.96539'
+ 0x3fd04fb80e37fdae, 0xbfeef178a3e473c2, // 0.25487, -0.96698'
+ 0x3fcfdcdc1adfedf8, 0xbfeefe220c0b95ec, // 0.24893, -0.96852'
+ 0x3fcf19f97b215f1a, 0xbfef0a7efb9230d7, // 0.24298, -0.97003'
+ 0x3fce56ca1e101a1b, 0xbfef168f53f7205d, // 0.23702, -0.9715'
+ 0x3fcd934fe5454311, 0xbfef2252f7763ada, // 0.23106, -0.97294'
+ 0x3fcccf8cb312b286, 0xbfef2dc9c9089a9d, // 0.22508, -0.97434'
+ 0x3fcc0b826a7e4f63, 0xbfef38f3ac64e589, // 0.2191, -0.9757'
+ 0x3fcb4732ef3d6722, 0xbfef43d085ff92dd, // 0.21311, -0.97703'
+ 0x3fca82a025b00451, 0xbfef4e603b0b2f2d, // 0.20711, -0.97832'
+ 0x3fc9bdcbf2dc4366, 0xbfef58a2b1789e84, // 0.2011, -0.97957'
+ 0x3fc8f8b83c69a60a, 0xbfef6297cff75cb0, // 0.19509, -0.98079'
+ 0x3fc83366e89c64c5, 0xbfef6c3f7df5bbb7, // 0.18907, -0.98196'
+ 0x3fc76dd9de50bf31, 0xbfef7599a3a12077, // 0.18304, -0.98311'
+ 0x3fc6a81304f64ab2, 0xbfef7ea629e63d6e, // 0.177, -0.98421'
+ 0x3fc5e214448b3fc6, 0xbfef8764fa714ba9, // 0.17096, -0.98528'
+ 0x3fc51bdf8597c5f2, 0xbfef8fd5ffae41db, // 0.16491, -0.98631'
+ 0x3fc45576b1293e5a, 0xbfef97f924c9099b, // 0.15886, -0.9873'
+ 0x3fc38edbb0cd8d14, 0xbfef9fce55adb2c8, // 0.1528, -0.98826'
+ 0x3fc2c8106e8e613a, 0xbfefa7557f08a517, // 0.14673, -0.98918'
+ 0x3fc20116d4ec7bce, 0xbfefae8e8e46cfbb, // 0.14066, -0.99006'
+ 0x3fc139f0cedaf576, 0xbfefb5797195d741, // 0.13458, -0.9909'
+ 0x3fc072a047ba831d, 0xbfefbc1617e44186, // 0.1285, -0.99171'
+ 0x3fbf564e56a9730e, 0xbfefc26470e19fd3, // 0.12241, -0.99248'
+ 0x3fbdc70ecbae9fc8, 0xbfefc8646cfeb721, // 0.11632, -0.99321'
+ 0x3fbc3785c79ec2d5, 0xbfefce15fd6da67b, // 0.11022, -0.99391'
+ 0x3fbaa7b724495c04, 0xbfefd37914220b84, // 0.10412, -0.99456'
+ 0x3fb917a6bc29b42c, 0xbfefd88da3d12526, // 0.098017, -0.99518'
+ 0x3fb787586a5d5b21, 0xbfefdd539ff1f456, // 0.091909, -0.99577'
+ 0x3fb5f6d00a9aa419, 0xbfefe1cafcbd5b09, // 0.085797, -0.99631'
+ 0x3fb4661179272096, 0xbfefe5f3af2e3940, // 0.079682, -0.99682'
+ 0x3fb2d52092ce19f6, 0xbfefe9cdad01883a, // 0.073565, -0.99729'
+ 0x3fb1440134d709b2, 0xbfefed58ecb673c4, // 0.067444, -0.99772'
+ 0x3faf656e79f820e0, 0xbfeff095658e71ad, // 0.061321, -0.99812'
+ 0x3fac428d12c0d7e3, 0xbfeff3830f8d575c, // 0.055195, -0.99848'
+ 0x3fa91f65f10dd814, 0xbfeff621e3796d7e, // 0.049068, -0.9988'
+ 0x3fa5fc00d290cd43, 0xbfeff871dadb81df, // 0.042938, -0.99908'
+ 0x3fa2d865759455cd, 0xbfeffa72effef75d, // 0.036807, -0.99932'
+ 0x3f9f693731d1cf01, 0xbfeffc251df1d3f8, // 0.030675, -0.99953'
+ 0x3f992155f7a3667e, 0xbfeffd886084cd0d, // 0.024541, -0.9997'
+ 0x3f92d936bbe30efd, 0xbfeffe9cb44b51a1, // 0.018407, -0.99983'
+ 0x3f8921d1fcdec784, 0xbfefff62169b92db, // 0.012272, -0.99992'
+ 0x3f7921f0fe670071, 0xbfefffd8858e8a92, //0.0061359, -0.99998'
+};
+
+#endif /* !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) */
+
+#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || defined(ARM_TABLE_TWIDDLECOEF_RFFT_F64_2048)
+const uint64_t twiddleCoefF64_rfft_2048[2048] = {
+ 0x0000000000000000, 0x3ff0000000000000, // 0, 1
+ 0x3f6921f8becca4ba, 0x3feffff621621d02, // 0.003068, 1
+ 0x3f7921f0fe670071, 0x3fefffd8858e8a92, //0.0061359, 0.99998
+ 0x3f82d96b0e509703, 0x3fefffa72c978c4f, //0.0092038, 0.99996
+ 0x3f8921d1fcdec784, 0x3fefff62169b92db, // 0.012272, 0.99992
+ 0x3f8f6a296ab997ca, 0x3fefff0943c53bd1, // 0.015339, 0.99988
+ 0x3f92d936bbe30efd, 0x3feffe9cb44b51a1, // 0.018407, 0.99983
+ 0x3f95fd4d21fab226, 0x3feffe1c6870cb77, // 0.021474, 0.99977
+ 0x3f992155f7a3667e, 0x3feffd886084cd0d, // 0.024541, 0.9997
+ 0x3f9c454f4ce53b1c, 0x3feffce09ce2a679, // 0.027608, 0.99962
+ 0x3f9f693731d1cf01, 0x3feffc251df1d3f8, // 0.030675, 0.99953
+ 0x3fa14685db42c17e, 0x3feffb55e425fdae, // 0.033741, 0.99943
+ 0x3fa2d865759455cd, 0x3feffa72effef75d, // 0.036807, 0.99932
+ 0x3fa46a396ff86179, 0x3feff97c4208c014, // 0.039873, 0.9992
+ 0x3fa5fc00d290cd43, 0x3feff871dadb81df, // 0.042938, 0.99908
+ 0x3fa78dbaa5874685, 0x3feff753bb1b9164, // 0.046003, 0.99894
+ 0x3fa91f65f10dd814, 0x3feff621e3796d7e, // 0.049068, 0.9988
+ 0x3faab101bd5f8317, 0x3feff4dc54b1bed3, // 0.052132, 0.99864
+ 0x3fac428d12c0d7e3, 0x3feff3830f8d575c, // 0.055195, 0.99848
+ 0x3fadd406f9808ec8, 0x3feff21614e131ed, // 0.058258, 0.9983
+ 0x3faf656e79f820e0, 0x3feff095658e71ad, // 0.061321, 0.99812
+ 0x3fb07b614e463064, 0x3fefef0102826191, // 0.064383, 0.99793
+ 0x3fb1440134d709b2, 0x3fefed58ecb673c4, // 0.067444, 0.99772
+ 0x3fb20c9674ed444c, 0x3fefeb9d2530410f, // 0.070505, 0.99751
+ 0x3fb2d52092ce19f6, 0x3fefe9cdad01883a, // 0.073565, 0.99729
+ 0x3fb39d9f12c5a299, 0x3fefe7ea85482d60, // 0.076624, 0.99706
+ 0x3fb4661179272096, 0x3fefe5f3af2e3940, // 0.079682, 0.99682
+ 0x3fb52e774a4d4d0a, 0x3fefe3e92be9d886, // 0.08274, 0.99657
+ 0x3fb5f6d00a9aa419, 0x3fefe1cafcbd5b09, // 0.085797, 0.99631
+ 0x3fb6bf1b3e79b129, 0x3fefdf9922f73307, // 0.088854, 0.99604
+ 0x3fb787586a5d5b21, 0x3fefdd539ff1f456, // 0.091909, 0.99577
+ 0x3fb84f8712c130a0, 0x3fefdafa7514538c, // 0.094963, 0.99548
+ 0x3fb917a6bc29b42c, 0x3fefd88da3d12526, // 0.098017, 0.99518
+ 0x3fb9dfb6eb24a85c, 0x3fefd60d2da75c9e, // 0.10107, 0.99488
+ 0x3fbaa7b724495c04, 0x3fefd37914220b84, // 0.10412, 0.99456
+ 0x3fbb6fa6ec38f64c, 0x3fefd0d158d86087, // 0.10717, 0.99424
+ 0x3fbc3785c79ec2d5, 0x3fefce15fd6da67b, // 0.11022, 0.99391
+ 0x3fbcff533b307dc1, 0x3fefcb4703914354, // 0.11327, 0.99356
+ 0x3fbdc70ecbae9fc8, 0x3fefc8646cfeb721, // 0.11632, 0.99321
+ 0x3fbe8eb7fde4aa3e, 0x3fefc56e3b7d9af6, // 0.11937, 0.99285
+ 0x3fbf564e56a9730e, 0x3fefc26470e19fd3, // 0.12241, 0.99248
+ 0x3fc00ee8ad6fb85b, 0x3fefbf470f0a8d88, // 0.12545, 0.9921
+ 0x3fc072a047ba831d, 0x3fefbc1617e44186, // 0.1285, 0.99171
+ 0x3fc0d64dbcb26786, 0x3fefb8d18d66adb7, // 0.13154, 0.99131
+ 0x3fc139f0cedaf576, 0x3fefb5797195d741, // 0.13458, 0.9909
+ 0x3fc19d8940be24e7, 0x3fefb20dc681d54d, // 0.13762, 0.99049
+ 0x3fc20116d4ec7bce, 0x3fefae8e8e46cfbb, // 0.14066, 0.99006
+ 0x3fc264994dfd340a, 0x3fefaafbcb0cfddc, // 0.1437, 0.98962
+ 0x3fc2c8106e8e613a, 0x3fefa7557f08a517, // 0.14673, 0.98918
+ 0x3fc32b7bf94516a7, 0x3fefa39bac7a1791, // 0.14976, 0.98872
+ 0x3fc38edbb0cd8d14, 0x3fef9fce55adb2c8, // 0.1528, 0.98826
+ 0x3fc3f22f57db4893, 0x3fef9bed7cfbde29, // 0.15583, 0.98778
+ 0x3fc45576b1293e5a, 0x3fef97f924c9099b, // 0.15886, 0.9873
+ 0x3fc4b8b17f79fa88, 0x3fef93f14f85ac08, // 0.16189, 0.98681
+ 0x3fc51bdf8597c5f2, 0x3fef8fd5ffae41db, // 0.16491, 0.98631
+ 0x3fc57f008654cbde, 0x3fef8ba737cb4b78, // 0.16794, 0.9858
+ 0x3fc5e214448b3fc6, 0x3fef8764fa714ba9, // 0.17096, 0.98528
+ 0x3fc6451a831d830d, 0x3fef830f4a40c60c, // 0.17398, 0.98475
+ 0x3fc6a81304f64ab2, 0x3fef7ea629e63d6e, // 0.177, 0.98421
+ 0x3fc70afd8d08c4ff, 0x3fef7a299c1a322a, // 0.18002, 0.98366
+ 0x3fc76dd9de50bf31, 0x3fef7599a3a12077, // 0.18304, 0.98311
+ 0x3fc7d0a7bbd2cb1b, 0x3fef70f6434b7eb7, // 0.18606, 0.98254
+ 0x3fc83366e89c64c5, 0x3fef6c3f7df5bbb7, // 0.18907, 0.98196
+ 0x3fc8961727c41804, 0x3fef677556883cee, // 0.19208, 0.98138
+ 0x3fc8f8b83c69a60a, 0x3fef6297cff75cb0, // 0.19509, 0.98079
+ 0x3fc95b49e9b62af9, 0x3fef5da6ed43685d, // 0.1981, 0.98018
+ 0x3fc9bdcbf2dc4366, 0x3fef58a2b1789e84, // 0.2011, 0.97957
+ 0x3fca203e1b1831da, 0x3fef538b1faf2d07, // 0.20411, 0.97895
+ 0x3fca82a025b00451, 0x3fef4e603b0b2f2d, // 0.20711, 0.97832
+ 0x3fcae4f1d5f3b9ab, 0x3fef492206bcabb4, // 0.21011, 0.97768
+ 0x3fcb4732ef3d6722, 0x3fef43d085ff92dd, // 0.21311, 0.97703
+ 0x3fcba96334f15dad, 0x3fef3e6bbc1bbc65, // 0.21611, 0.97637
+ 0x3fcc0b826a7e4f63, 0x3fef38f3ac64e589, // 0.2191, 0.9757
+ 0x3fcc6d90535d74dc, 0x3fef33685a3aaef0, // 0.22209, 0.97503
+ 0x3fcccf8cb312b286, 0x3fef2dc9c9089a9d, // 0.22508, 0.97434
+ 0x3fcd31774d2cbdee, 0x3fef2817fc4609ce, // 0.22807, 0.97364
+ 0x3fcd934fe5454311, 0x3fef2252f7763ada, // 0.23106, 0.97294
+ 0x3fcdf5163f01099a, 0x3fef1c7abe284708, // 0.23404, 0.97223
+ 0x3fce56ca1e101a1b, 0x3fef168f53f7205d, // 0.23702, 0.9715
+ 0x3fceb86b462de348, 0x3fef1090bc898f5f, // 0.24, 0.97077
+ 0x3fcf19f97b215f1a, 0x3fef0a7efb9230d7, // 0.24298, 0.97003
+ 0x3fcf7b7480bd3801, 0x3fef045a14cf738c, // 0.24596, 0.96928
+ 0x3fcfdcdc1adfedf8, 0x3feefe220c0b95ec, // 0.24893, 0.96852
+ 0x3fd01f1806b9fdd2, 0x3feef7d6e51ca3c0, // 0.2519, 0.96775
+ 0x3fd04fb80e37fdae, 0x3feef178a3e473c2, // 0.25487, 0.96698
+ 0x3fd0804e05eb661e, 0x3feeeb074c50a544, // 0.25783, 0.96619
+ 0x3fd0b0d9cfdbdb90, 0x3feee482e25a9dbc, // 0.26079, 0.96539
+ 0x3fd0e15b4e1749cd, 0x3feeddeb6a078651, // 0.26375, 0.96459
+ 0x3fd111d262b1f677, 0x3feed740e7684963, // 0.26671, 0.96378
+ 0x3fd1423eefc69378, 0x3feed0835e999009, // 0.26967, 0.96295
+ 0x3fd172a0d7765177, 0x3feec9b2d3c3bf84, // 0.27262, 0.96212
+ 0x3fd1a2f7fbe8f243, 0x3feec2cf4b1af6b2, // 0.27557, 0.96128
+ 0x3fd1d3443f4cdb3d, 0x3feebbd8c8df0b74, // 0.27852, 0.96043
+ 0x3fd2038583d727bd, 0x3feeb4cf515b8811, // 0.28146, 0.95957
+ 0x3fd233bbabc3bb72, 0x3feeadb2e8e7a88e, // 0.28441, 0.9587
+ 0x3fd263e6995554ba, 0x3feea68393e65800, // 0.28735, 0.95783
+ 0x3fd294062ed59f05, 0x3fee9f4156c62dda, // 0.29028, 0.95694
+ 0x3fd2c41a4e954520, 0x3fee97ec36016b30, // 0.29322, 0.95605
+ 0x3fd2f422daec0386, 0x3fee9084361df7f3, // 0.29615, 0.95514
+ 0x3fd3241fb638baaf, 0x3fee89095bad6025, // 0.29908, 0.95423
+ 0x3fd35410c2e18152, 0x3fee817bab4cd10d, // 0.30201, 0.95331
+ 0x3fd383f5e353b6aa, 0x3fee79db29a5165a, // 0.30493, 0.95238
+ 0x3fd3b3cefa0414b7, 0x3fee7227db6a9744, // 0.30785, 0.95144
+ 0x3fd3e39be96ec271, 0x3fee6a61c55d53a7, // 0.31077, 0.95049
+ 0x3fd4135c94176602, 0x3fee6288ec48e112, // 0.31368, 0.94953
+ 0x3fd44310dc8936f0, 0x3fee5a9d550467d3, // 0.31659, 0.94856
+ 0x3fd472b8a5571054, 0x3fee529f04729ffc, // 0.3195, 0.94759
+ 0x3fd4a253d11b82f3, 0x3fee4a8dff81ce5e, // 0.32241, 0.9466
+ 0x3fd4d1e24278e76a, 0x3fee426a4b2bc17e, // 0.32531, 0.94561
+ 0x3fd50163dc197047, 0x3fee3a33ec75ce85, // 0.32821, 0.9446
+ 0x3fd530d880af3c24, 0x3fee31eae870ce25, // 0.33111, 0.94359
+ 0x3fd5604012f467b4, 0x3fee298f4439197a, // 0.334, 0.94257
+ 0x3fd58f9a75ab1fdd, 0x3fee212104f686e5, // 0.33689, 0.94154
+ 0x3fd5bee78b9db3b6, 0x3fee18a02fdc66d9, // 0.33978, 0.94051
+ 0x3fd5ee27379ea693, 0x3fee100cca2980ac, // 0.34266, 0.93946
+ 0x3fd61d595c88c203, 0x3fee0766d9280f54, // 0.34554, 0.9384
+ 0x3fd64c7ddd3f27c6, 0x3fedfeae622dbe2b, // 0.34842, 0.93734
+ 0x3fd67b949cad63ca, 0x3fedf5e36a9ba59c, // 0.35129, 0.93627
+ 0x3fd6aa9d7dc77e16, 0x3feded05f7de47da, // 0.35416, 0.93518
+ 0x3fd6d998638a0cb5, 0x3fede4160f6d8d81, // 0.35703, 0.93409
+ 0x3fd7088530fa459e, 0x3feddb13b6ccc23d, // 0.3599, 0.93299
+ 0x3fd73763c9261092, 0x3fedd1fef38a915a, // 0.36276, 0.93188
+ 0x3fd766340f2418f6, 0x3fedc8d7cb410260, // 0.36561, 0.93077
+ 0x3fd794f5e613dfae, 0x3fedbf9e4395759a, // 0.36847, 0.92964
+ 0x3fd7c3a9311dcce7, 0x3fedb6526238a09b, // 0.37132, 0.92851
+ 0x3fd7f24dd37341e3, 0x3fedacf42ce68ab9, // 0.37416, 0.92736
+ 0x3fd820e3b04eaac4, 0x3feda383a9668988, // 0.37701, 0.92621
+ 0x3fd84f6aaaf3903f, 0x3fed9a00dd8b3d46, // 0.37985, 0.92505
+ 0x3fd87de2a6aea963, 0x3fed906bcf328d46, // 0.38268, 0.92388
+ 0x3fd8ac4b86d5ed44, 0x3fed86c48445a450, // 0.38552, 0.9227
+ 0x3fd8daa52ec8a4af, 0x3fed7d0b02b8ecf9, // 0.38835, 0.92151
+ 0x3fd908ef81ef7bd1, 0x3fed733f508c0dff, // 0.39117, 0.92032
+ 0x3fd9372a63bc93d7, 0x3fed696173c9e68b, // 0.39399, 0.91911
+ 0x3fd96555b7ab948f, 0x3fed5f7172888a7f, // 0.39681, 0.9179
+ 0x3fd993716141bdfe, 0x3fed556f52e93eb1, // 0.39962, 0.91668
+ 0x3fd9c17d440df9f2, 0x3fed4b5b1b187524, // 0.40243, 0.91545
+ 0x3fd9ef7943a8ed8a, 0x3fed4134d14dc93a, // 0.40524, 0.91421
+ 0x3fda1d6543b50ac0, 0x3fed36fc7bcbfbdc, // 0.40804, 0.91296
+ 0x3fda4b4127dea1e4, 0x3fed2cb220e0ef9f, // 0.41084, 0.91171
+ 0x3fda790cd3dbf31a, 0x3fed2255c6e5a4e1, // 0.41364, 0.91044
+ 0x3fdaa6c82b6d3fc9, 0x3fed17e7743e35dc, // 0.41643, 0.90917
+ 0x3fdad473125cdc08, 0x3fed0d672f59d2b9, // 0.41922, 0.90789
+ 0x3fdb020d6c7f4009, 0x3fed02d4feb2bd92, // 0.422, 0.9066
+ 0x3fdb2f971db31972, 0x3fecf830e8ce467b, // 0.42478, 0.9053
+ 0x3fdb5d1009e15cc0, 0x3feced7af43cc773, // 0.42756, 0.90399
+ 0x3fdb8a7814fd5693, 0x3fece2b32799a060, // 0.43033, 0.90267
+ 0x3fdbb7cf2304bd01, 0x3fecd7d9898b32f6, // 0.43309, 0.90135
+ 0x3fdbe51517ffc0d9, 0x3fecccee20c2de9f, // 0.43586, 0.90002
+ 0x3fdc1249d8011ee7, 0x3fecc1f0f3fcfc5c, // 0.43862, 0.89867
+ 0x3fdc3f6d47263129, 0x3fecb6e20a00da99, // 0.44137, 0.89732
+ 0x3fdc6c7f4997000a, 0x3fecabc169a0b901, // 0.44412, 0.89597
+ 0x3fdc997fc3865388, 0x3feca08f19b9c449, // 0.44687, 0.8946
+ 0x3fdcc66e9931c45d, 0x3fec954b213411f5, // 0.44961, 0.89322
+ 0x3fdcf34baee1cd21, 0x3fec89f587029c13, // 0.45235, 0.89184
+ 0x3fdd2016e8e9db5b, 0x3fec7e8e52233cf3, // 0.45508, 0.89045
+ 0x3fdd4cd02ba8609c, 0x3fec7315899eaad7, // 0.45781, 0.88905
+ 0x3fdd79775b86e389, 0x3fec678b3488739b, // 0.46054, 0.88764
+ 0x3fdda60c5cfa10d8, 0x3fec5bef59fef85a, // 0.46326, 0.88622
+ 0x3fddd28f1481cc58, 0x3fec5042012b6907, // 0.46598, 0.8848
+ 0x3fddfeff66a941de, 0x3fec44833141c004, // 0.46869, 0.88336
+ 0x3fde2b5d3806f63b, 0x3fec38b2f180bdb1, // 0.4714, 0.88192
+ 0x3fde57a86d3cd824, 0x3fec2cd14931e3f1, // 0.4741, 0.88047
+ 0x3fde83e0eaf85113, 0x3fec20de3fa971b0, // 0.4768, 0.87901
+ 0x3fdeb00695f25620, 0x3fec14d9dc465e58, // 0.47949, 0.87755
+ 0x3fdedc1952ef78d5, 0x3fec08c426725549, // 0.48218, 0.87607
+ 0x3fdf081906bff7fd, 0x3febfc9d25a1b147, // 0.48487, 0.87459
+ 0x3fdf3405963fd068, 0x3febf064e15377dd, // 0.48755, 0.87309
+ 0x3fdf5fdee656cda3, 0x3febe41b611154c1, // 0.49023, 0.8716
+ 0x3fdf8ba4dbf89aba, 0x3febd7c0ac6f952a, // 0.4929, 0.87009
+ 0x3fdfb7575c24d2de, 0x3febcb54cb0d2327, // 0.49557, 0.86857
+ 0x3fdfe2f64be7120f, 0x3febbed7c49380ea, // 0.49823, 0.86705
+ 0x3fe00740c82b82e0, 0x3febb249a0b6c40d, // 0.50089, 0.86551
+ 0x3fe01cfc874c3eb7, 0x3feba5aa673590d2, // 0.50354, 0.86397
+ 0x3fe032ae55edbd95, 0x3feb98fa1fd9155e, // 0.50619, 0.86242
+ 0x3fe0485626ae221a, 0x3feb8c38d27504e9, // 0.50883, 0.86087
+ 0x3fe05df3ec31b8b6, 0x3feb7f6686e792ea, // 0.51147, 0.8593
+ 0x3fe073879922ffed, 0x3feb728345196e3e, // 0.5141, 0.85773
+ 0x3fe089112032b08c, 0x3feb658f14fdbc47, // 0.51673, 0.85615
+ 0x3fe09e907417c5e1, 0x3feb5889fe921405, // 0.51936, 0.85456
+ 0x3fe0b405878f85ec, 0x3feb4b7409de7925, // 0.52198, 0.85296
+ 0x3fe0c9704d5d898f, 0x3feb3e4d3ef55712, // 0.52459, 0.85136
+ 0x3fe0ded0b84bc4b5, 0x3feb3115a5f37bf4, // 0.5272, 0.84974
+ 0x3fe0f426bb2a8e7d, 0x3feb23cd470013b4, // 0.5298, 0.84812
+ 0x3fe1097248d0a956, 0x3feb16742a4ca2f5, // 0.5324, 0.84649
+ 0x3fe11eb3541b4b22, 0x3feb090a58150200, // 0.535, 0.84485
+ 0x3fe133e9cfee254e, 0x3feafb8fd89f57b6, // 0.53759, 0.84321
+ 0x3fe14915af336ceb, 0x3feaee04b43c1474, // 0.54017, 0.84155
+ 0x3fe15e36e4dbe2bc, 0x3feae068f345ecef, // 0.54275, 0.83989
+ 0x3fe1734d63dedb49, 0x3fead2bc9e21d511, // 0.54532, 0.83822
+ 0x3fe188591f3a46e5, 0x3feac4ffbd3efac8, // 0.54789, 0.83655
+ 0x3fe19d5a09f2b9b8, 0x3feab7325916c0d4, // 0.55046, 0.83486
+ 0x3fe1b250171373be, 0x3feaa9547a2cb98e, // 0.55302, 0.83317
+ 0x3fe1c73b39ae68c8, 0x3fea9b66290ea1a3, // 0.55557, 0.83147
+ 0x3fe1dc1b64dc4872, 0x3fea8d676e545ad2, // 0.55812, 0.82976
+ 0x3fe1f0f08bbc861b, 0x3fea7f58529fe69d, // 0.56066, 0.82805
+ 0x3fe205baa17560d6, 0x3fea7138de9d60f5, // 0.5632, 0.82632
+ 0x3fe21a799933eb58, 0x3fea63091b02fae2, // 0.56573, 0.82459
+ 0x3fe22f2d662c13e1, 0x3fea54c91090f524, // 0.56826, 0.82285
+ 0x3fe243d5fb98ac1f, 0x3fea4678c8119ac8, // 0.57078, 0.8211
+ 0x3fe258734cbb7110, 0x3fea38184a593bc6, // 0.5733, 0.81935
+ 0x3fe26d054cdd12df, 0x3fea29a7a0462782, // 0.57581, 0.81758
+ 0x3fe2818bef4d3cba, 0x3fea1b26d2c0a75e, // 0.57831, 0.81581
+ 0x3fe2960727629ca8, 0x3fea0c95eabaf937, // 0.58081, 0.81404
+ 0x3fe2aa76e87aeb58, 0x3fe9fdf4f13149de, // 0.58331, 0.81225
+ 0x3fe2bedb25faf3ea, 0x3fe9ef43ef29af94, // 0.5858, 0.81046
+ 0x3fe2d333d34e9bb7, 0x3fe9e082edb42472, // 0.58828, 0.80866
+ 0x3fe2e780e3e8ea16, 0x3fe9d1b1f5ea80d6, // 0.59076, 0.80685
+ 0x3fe2fbc24b441015, 0x3fe9c2d110f075c3, // 0.59323, 0.80503
+ 0x3fe30ff7fce17035, 0x3fe9b3e047f38741, // 0.5957, 0.80321
+ 0x3fe32421ec49a620, 0x3fe9a4dfa42b06b2, // 0.59816, 0.80138
+ 0x3fe338400d0c8e57, 0x3fe995cf2ed80d22, // 0.60062, 0.79954
+ 0x3fe34c5252c14de1, 0x3fe986aef1457594, // 0.60307, 0.79769
+ 0x3fe36058b10659f3, 0x3fe9777ef4c7d742, // 0.60551, 0.79584
+ 0x3fe374531b817f8d, 0x3fe9683f42bd7fe1, // 0.60795, 0.79398
+ 0x3fe3884185dfeb22, 0x3fe958efe48e6dd7, // 0.61038, 0.79211
+ 0x3fe39c23e3d63029, 0x3fe94990e3ac4a6c, // 0.61281, 0.79023
+ 0x3fe3affa292050b9, 0x3fe93a22499263fc, // 0.61523, 0.78835
+ 0x3fe3c3c44981c517, 0x3fe92aa41fc5a815, // 0.61765, 0.78646
+ 0x3fe3d78238c58343, 0x3fe91b166fd49da2, // 0.62006, 0.78456
+ 0x3fe3eb33eabe0680, 0x3fe90b7943575efe, // 0.62246, 0.78265
+ 0x3fe3fed9534556d4, 0x3fe8fbcca3ef940d, // 0.62486, 0.78074
+ 0x3fe41272663d108c, 0x3fe8ec109b486c49, // 0.62725, 0.77882
+ 0x3fe425ff178e6bb1, 0x3fe8dc45331698cc, // 0.62964, 0.77689
+ 0x3fe4397f5b2a4380, 0x3fe8cc6a75184655, // 0.63202, 0.77495
+ 0x3fe44cf325091dd6, 0x3fe8bc806b151741, // 0.63439, 0.77301
+ 0x3fe4605a692b32a2, 0x3fe8ac871ede1d88, // 0.63676, 0.77106
+ 0x3fe473b51b987347, 0x3fe89c7e9a4dd4ab, // 0.63912, 0.7691
+ 0x3fe48703306091fe, 0x3fe88c66e7481ba1, // 0.64148, 0.76714
+ 0x3fe49a449b9b0938, 0x3fe87c400fba2ebf, // 0.64383, 0.76517
+ 0x3fe4ad79516722f0, 0x3fe86c0a1d9aa195, // 0.64618, 0.76319
+ 0x3fe4c0a145ec0004, 0x3fe85bc51ae958cc, // 0.64851, 0.7612
+ 0x3fe4d3bc6d589f80, 0x3fe84b7111af83f9, // 0.65085, 0.75921
+ 0x3fe4e6cabbe3e5e9, 0x3fe83b0e0bff976e, // 0.65317, 0.75721
+ 0x3fe4f9cc25cca486, 0x3fe82a9c13f545ff, // 0.65549, 0.7552
+ 0x3fe50cc09f59a09b, 0x3fe81a1b33b57acc, // 0.65781, 0.75319
+ 0x3fe51fa81cd99aa6, 0x3fe8098b756e52fa, // 0.66011, 0.75117
+ 0x3fe5328292a35596, 0x3fe7f8ece3571771, // 0.66242, 0.74914
+ 0x3fe5454ff5159dfb, 0x3fe7e83f87b03686, // 0.66471, 0.7471
+ 0x3fe5581038975137, 0x3fe7d7836cc33db2, // 0.667, 0.74506
+ 0x3fe56ac35197649e, 0x3fe7c6b89ce2d333, // 0.66928, 0.74301
+ 0x3fe57d69348cec9f, 0x3fe7b5df226aafb0, // 0.67156, 0.74095
+ 0x3fe59001d5f723df, 0x3fe7a4f707bf97d2, // 0.67383, 0.73889
+ 0x3fe5a28d2a5d7250, 0x3fe79400574f55e4, // 0.67609, 0.73682
+ 0x3fe5b50b264f7448, 0x3fe782fb1b90b35b, // 0.67835, 0.73474
+ 0x3fe5c77bbe65018c, 0x3fe771e75f037261, // 0.6806, 0.73265
+ 0x3fe5d9dee73e345c, 0x3fe760c52c304764, // 0.68285, 0.73056
+ 0x3fe5ec3495837074, 0x3fe74f948da8d28d, // 0.68508, 0.72846
+ 0x3fe5fe7cbde56a0f, 0x3fe73e558e079942, // 0.68732, 0.72636
+ 0x3fe610b7551d2cde, 0x3fe72d0837efff97, // 0.68954, 0.72425
+ 0x3fe622e44fec22ff, 0x3fe71bac960e41bf, // 0.69176, 0.72213
+ 0x3fe63503a31c1be8, 0x3fe70a42b3176d7a, // 0.69397, 0.72
+ 0x3fe64715437f535b, 0x3fe6f8ca99c95b75, // 0.69618, 0.71787
+ 0x3fe6591925f0783e, 0x3fe6e74454eaa8ae, // 0.69838, 0.71573
+ 0x3fe66b0f3f52b386, 0x3fe6d5afef4aafcc, // 0.70057, 0.71358
+ 0x3fe67cf78491af10, 0x3fe6c40d73c18275, // 0.70275, 0.71143
+ 0x3fe68ed1eaa19c71, 0x3fe6b25ced2fe29c, // 0.70493, 0.70927
+ 0x3fe6a09e667f3bcc, 0x3fe6a09e667f3bcc, // 0.70711, 0.70711
+ 0x3fe6b25ced2fe29c, 0x3fe68ed1eaa19c71, // 0.70927, 0.70493
+ 0x3fe6c40d73c18275, 0x3fe67cf78491af10, // 0.71143, 0.70275
+ 0x3fe6d5afef4aafcc, 0x3fe66b0f3f52b386, // 0.71358, 0.70057
+ 0x3fe6e74454eaa8ae, 0x3fe6591925f0783e, // 0.71573, 0.69838
+ 0x3fe6f8ca99c95b75, 0x3fe64715437f535b, // 0.71787, 0.69618
+ 0x3fe70a42b3176d7a, 0x3fe63503a31c1be8, // 0.72, 0.69397
+ 0x3fe71bac960e41bf, 0x3fe622e44fec22ff, // 0.72213, 0.69176
+ 0x3fe72d0837efff97, 0x3fe610b7551d2cde, // 0.72425, 0.68954
+ 0x3fe73e558e079942, 0x3fe5fe7cbde56a0f, // 0.72636, 0.68732
+ 0x3fe74f948da8d28d, 0x3fe5ec3495837074, // 0.72846, 0.68508
+ 0x3fe760c52c304764, 0x3fe5d9dee73e345c, // 0.73056, 0.68285
+ 0x3fe771e75f037261, 0x3fe5c77bbe65018c, // 0.73265, 0.6806
+ 0x3fe782fb1b90b35b, 0x3fe5b50b264f7448, // 0.73474, 0.67835
+ 0x3fe79400574f55e4, 0x3fe5a28d2a5d7250, // 0.73682, 0.67609
+ 0x3fe7a4f707bf97d2, 0x3fe59001d5f723df, // 0.73889, 0.67383
+ 0x3fe7b5df226aafb0, 0x3fe57d69348cec9f, // 0.74095, 0.67156
+ 0x3fe7c6b89ce2d333, 0x3fe56ac35197649e, // 0.74301, 0.66928
+ 0x3fe7d7836cc33db2, 0x3fe5581038975137, // 0.74506, 0.667
+ 0x3fe7e83f87b03686, 0x3fe5454ff5159dfb, // 0.7471, 0.66471
+ 0x3fe7f8ece3571771, 0x3fe5328292a35596, // 0.74914, 0.66242
+ 0x3fe8098b756e52fa, 0x3fe51fa81cd99aa6, // 0.75117, 0.66011
+ 0x3fe81a1b33b57acc, 0x3fe50cc09f59a09b, // 0.75319, 0.65781
+ 0x3fe82a9c13f545ff, 0x3fe4f9cc25cca486, // 0.7552, 0.65549
+ 0x3fe83b0e0bff976e, 0x3fe4e6cabbe3e5e9, // 0.75721, 0.65317
+ 0x3fe84b7111af83f9, 0x3fe4d3bc6d589f80, // 0.75921, 0.65085
+ 0x3fe85bc51ae958cc, 0x3fe4c0a145ec0004, // 0.7612, 0.64851
+ 0x3fe86c0a1d9aa195, 0x3fe4ad79516722f0, // 0.76319, 0.64618
+ 0x3fe87c400fba2ebf, 0x3fe49a449b9b0938, // 0.76517, 0.64383
+ 0x3fe88c66e7481ba1, 0x3fe48703306091fe, // 0.76714, 0.64148
+ 0x3fe89c7e9a4dd4ab, 0x3fe473b51b987347, // 0.7691, 0.63912
+ 0x3fe8ac871ede1d88, 0x3fe4605a692b32a2, // 0.77106, 0.63676
+ 0x3fe8bc806b151741, 0x3fe44cf325091dd6, // 0.77301, 0.63439
+ 0x3fe8cc6a75184655, 0x3fe4397f5b2a4380, // 0.77495, 0.63202
+ 0x3fe8dc45331698cc, 0x3fe425ff178e6bb1, // 0.77689, 0.62964
+ 0x3fe8ec109b486c49, 0x3fe41272663d108c, // 0.77882, 0.62725
+ 0x3fe8fbcca3ef940d, 0x3fe3fed9534556d4, // 0.78074, 0.62486
+ 0x3fe90b7943575efe, 0x3fe3eb33eabe0680, // 0.78265, 0.62246
+ 0x3fe91b166fd49da2, 0x3fe3d78238c58343, // 0.78456, 0.62006
+ 0x3fe92aa41fc5a815, 0x3fe3c3c44981c517, // 0.78646, 0.61765
+ 0x3fe93a22499263fc, 0x3fe3affa292050b9, // 0.78835, 0.61523
+ 0x3fe94990e3ac4a6c, 0x3fe39c23e3d63029, // 0.79023, 0.61281
+ 0x3fe958efe48e6dd7, 0x3fe3884185dfeb22, // 0.79211, 0.61038
+ 0x3fe9683f42bd7fe1, 0x3fe374531b817f8d, // 0.79398, 0.60795
+ 0x3fe9777ef4c7d742, 0x3fe36058b10659f3, // 0.79584, 0.60551
+ 0x3fe986aef1457594, 0x3fe34c5252c14de1, // 0.79769, 0.60307
+ 0x3fe995cf2ed80d22, 0x3fe338400d0c8e57, // 0.79954, 0.60062
+ 0x3fe9a4dfa42b06b2, 0x3fe32421ec49a620, // 0.80138, 0.59816
+ 0x3fe9b3e047f38741, 0x3fe30ff7fce17035, // 0.80321, 0.5957
+ 0x3fe9c2d110f075c3, 0x3fe2fbc24b441015, // 0.80503, 0.59323
+ 0x3fe9d1b1f5ea80d6, 0x3fe2e780e3e8ea16, // 0.80685, 0.59076
+ 0x3fe9e082edb42472, 0x3fe2d333d34e9bb7, // 0.80866, 0.58828
+ 0x3fe9ef43ef29af94, 0x3fe2bedb25faf3ea, // 0.81046, 0.5858
+ 0x3fe9fdf4f13149de, 0x3fe2aa76e87aeb58, // 0.81225, 0.58331
+ 0x3fea0c95eabaf937, 0x3fe2960727629ca8, // 0.81404, 0.58081
+ 0x3fea1b26d2c0a75e, 0x3fe2818bef4d3cba, // 0.81581, 0.57831
+ 0x3fea29a7a0462782, 0x3fe26d054cdd12df, // 0.81758, 0.57581
+ 0x3fea38184a593bc6, 0x3fe258734cbb7110, // 0.81935, 0.5733
+ 0x3fea4678c8119ac8, 0x3fe243d5fb98ac1f, // 0.8211, 0.57078
+ 0x3fea54c91090f524, 0x3fe22f2d662c13e1, // 0.82285, 0.56826
+ 0x3fea63091b02fae2, 0x3fe21a799933eb58, // 0.82459, 0.56573
+ 0x3fea7138de9d60f5, 0x3fe205baa17560d6, // 0.82632, 0.5632
+ 0x3fea7f58529fe69d, 0x3fe1f0f08bbc861b, // 0.82805, 0.56066
+ 0x3fea8d676e545ad2, 0x3fe1dc1b64dc4872, // 0.82976, 0.55812
+ 0x3fea9b66290ea1a3, 0x3fe1c73b39ae68c8, // 0.83147, 0.55557
+ 0x3feaa9547a2cb98e, 0x3fe1b250171373be, // 0.83317, 0.55302
+ 0x3feab7325916c0d4, 0x3fe19d5a09f2b9b8, // 0.83486, 0.55046
+ 0x3feac4ffbd3efac8, 0x3fe188591f3a46e5, // 0.83655, 0.54789
+ 0x3fead2bc9e21d511, 0x3fe1734d63dedb49, // 0.83822, 0.54532
+ 0x3feae068f345ecef, 0x3fe15e36e4dbe2bc, // 0.83989, 0.54275
+ 0x3feaee04b43c1474, 0x3fe14915af336ceb, // 0.84155, 0.54017
+ 0x3feafb8fd89f57b6, 0x3fe133e9cfee254e, // 0.84321, 0.53759
+ 0x3feb090a58150200, 0x3fe11eb3541b4b22, // 0.84485, 0.535
+ 0x3feb16742a4ca2f5, 0x3fe1097248d0a956, // 0.84649, 0.5324
+ 0x3feb23cd470013b4, 0x3fe0f426bb2a8e7d, // 0.84812, 0.5298
+ 0x3feb3115a5f37bf4, 0x3fe0ded0b84bc4b5, // 0.84974, 0.5272
+ 0x3feb3e4d3ef55712, 0x3fe0c9704d5d898f, // 0.85136, 0.52459
+ 0x3feb4b7409de7925, 0x3fe0b405878f85ec, // 0.85296, 0.52198
+ 0x3feb5889fe921405, 0x3fe09e907417c5e1, // 0.85456, 0.51936
+ 0x3feb658f14fdbc47, 0x3fe089112032b08c, // 0.85615, 0.51673
+ 0x3feb728345196e3e, 0x3fe073879922ffed, // 0.85773, 0.5141
+ 0x3feb7f6686e792ea, 0x3fe05df3ec31b8b6, // 0.8593, 0.51147
+ 0x3feb8c38d27504e9, 0x3fe0485626ae221a, // 0.86087, 0.50883
+ 0x3feb98fa1fd9155e, 0x3fe032ae55edbd95, // 0.86242, 0.50619
+ 0x3feba5aa673590d2, 0x3fe01cfc874c3eb7, // 0.86397, 0.50354
+ 0x3febb249a0b6c40d, 0x3fe00740c82b82e0, // 0.86551, 0.50089
+ 0x3febbed7c49380ea, 0x3fdfe2f64be7120f, // 0.86705, 0.49823
+ 0x3febcb54cb0d2327, 0x3fdfb7575c24d2de, // 0.86857, 0.49557
+ 0x3febd7c0ac6f952a, 0x3fdf8ba4dbf89aba, // 0.87009, 0.4929
+ 0x3febe41b611154c1, 0x3fdf5fdee656cda3, // 0.8716, 0.49023
+ 0x3febf064e15377dd, 0x3fdf3405963fd068, // 0.87309, 0.48755
+ 0x3febfc9d25a1b147, 0x3fdf081906bff7fd, // 0.87459, 0.48487
+ 0x3fec08c426725549, 0x3fdedc1952ef78d5, // 0.87607, 0.48218
+ 0x3fec14d9dc465e58, 0x3fdeb00695f25620, // 0.87755, 0.47949
+ 0x3fec20de3fa971b0, 0x3fde83e0eaf85113, // 0.87901, 0.4768
+ 0x3fec2cd14931e3f1, 0x3fde57a86d3cd824, // 0.88047, 0.4741
+ 0x3fec38b2f180bdb1, 0x3fde2b5d3806f63b, // 0.88192, 0.4714
+ 0x3fec44833141c004, 0x3fddfeff66a941de, // 0.88336, 0.46869
+ 0x3fec5042012b6907, 0x3fddd28f1481cc58, // 0.8848, 0.46598
+ 0x3fec5bef59fef85a, 0x3fdda60c5cfa10d8, // 0.88622, 0.46326
+ 0x3fec678b3488739b, 0x3fdd79775b86e389, // 0.88764, 0.46054
+ 0x3fec7315899eaad7, 0x3fdd4cd02ba8609c, // 0.88905, 0.45781
+ 0x3fec7e8e52233cf3, 0x3fdd2016e8e9db5b, // 0.89045, 0.45508
+ 0x3fec89f587029c13, 0x3fdcf34baee1cd21, // 0.89184, 0.45235
+ 0x3fec954b213411f5, 0x3fdcc66e9931c45d, // 0.89322, 0.44961
+ 0x3feca08f19b9c449, 0x3fdc997fc3865388, // 0.8946, 0.44687
+ 0x3fecabc169a0b901, 0x3fdc6c7f4997000a, // 0.89597, 0.44412
+ 0x3fecb6e20a00da99, 0x3fdc3f6d47263129, // 0.89732, 0.44137
+ 0x3fecc1f0f3fcfc5c, 0x3fdc1249d8011ee7, // 0.89867, 0.43862
+ 0x3fecccee20c2de9f, 0x3fdbe51517ffc0d9, // 0.90002, 0.43586
+ 0x3fecd7d9898b32f6, 0x3fdbb7cf2304bd01, // 0.90135, 0.43309
+ 0x3fece2b32799a060, 0x3fdb8a7814fd5693, // 0.90267, 0.43033
+ 0x3feced7af43cc773, 0x3fdb5d1009e15cc0, // 0.90399, 0.42756
+ 0x3fecf830e8ce467b, 0x3fdb2f971db31972, // 0.9053, 0.42478
+ 0x3fed02d4feb2bd92, 0x3fdb020d6c7f4009, // 0.9066, 0.422
+ 0x3fed0d672f59d2b9, 0x3fdad473125cdc08, // 0.90789, 0.41922
+ 0x3fed17e7743e35dc, 0x3fdaa6c82b6d3fc9, // 0.90917, 0.41643
+ 0x3fed2255c6e5a4e1, 0x3fda790cd3dbf31a, // 0.91044, 0.41364
+ 0x3fed2cb220e0ef9f, 0x3fda4b4127dea1e4, // 0.91171, 0.41084
+ 0x3fed36fc7bcbfbdc, 0x3fda1d6543b50ac0, // 0.91296, 0.40804
+ 0x3fed4134d14dc93a, 0x3fd9ef7943a8ed8a, // 0.91421, 0.40524
+ 0x3fed4b5b1b187524, 0x3fd9c17d440df9f2, // 0.91545, 0.40243
+ 0x3fed556f52e93eb1, 0x3fd993716141bdfe, // 0.91668, 0.39962
+ 0x3fed5f7172888a7f, 0x3fd96555b7ab948f, // 0.9179, 0.39681
+ 0x3fed696173c9e68b, 0x3fd9372a63bc93d7, // 0.91911, 0.39399
+ 0x3fed733f508c0dff, 0x3fd908ef81ef7bd1, // 0.92032, 0.39117
+ 0x3fed7d0b02b8ecf9, 0x3fd8daa52ec8a4af, // 0.92151, 0.38835
+ 0x3fed86c48445a450, 0x3fd8ac4b86d5ed44, // 0.9227, 0.38552
+ 0x3fed906bcf328d46, 0x3fd87de2a6aea963, // 0.92388, 0.38268
+ 0x3fed9a00dd8b3d46, 0x3fd84f6aaaf3903f, // 0.92505, 0.37985
+ 0x3feda383a9668988, 0x3fd820e3b04eaac4, // 0.92621, 0.37701
+ 0x3fedacf42ce68ab9, 0x3fd7f24dd37341e3, // 0.92736, 0.37416
+ 0x3fedb6526238a09b, 0x3fd7c3a9311dcce7, // 0.92851, 0.37132
+ 0x3fedbf9e4395759a, 0x3fd794f5e613dfae, // 0.92964, 0.36847
+ 0x3fedc8d7cb410260, 0x3fd766340f2418f6, // 0.93077, 0.36561
+ 0x3fedd1fef38a915a, 0x3fd73763c9261092, // 0.93188, 0.36276
+ 0x3feddb13b6ccc23d, 0x3fd7088530fa459e, // 0.93299, 0.3599
+ 0x3fede4160f6d8d81, 0x3fd6d998638a0cb5, // 0.93409, 0.35703
+ 0x3feded05f7de47da, 0x3fd6aa9d7dc77e16, // 0.93518, 0.35416
+ 0x3fedf5e36a9ba59c, 0x3fd67b949cad63ca, // 0.93627, 0.35129
+ 0x3fedfeae622dbe2b, 0x3fd64c7ddd3f27c6, // 0.93734, 0.34842
+ 0x3fee0766d9280f54, 0x3fd61d595c88c203, // 0.9384, 0.34554
+ 0x3fee100cca2980ac, 0x3fd5ee27379ea693, // 0.93946, 0.34266
+ 0x3fee18a02fdc66d9, 0x3fd5bee78b9db3b6, // 0.94051, 0.33978
+ 0x3fee212104f686e5, 0x3fd58f9a75ab1fdd, // 0.94154, 0.33689
+ 0x3fee298f4439197a, 0x3fd5604012f467b4, // 0.94257, 0.334
+ 0x3fee31eae870ce25, 0x3fd530d880af3c24, // 0.94359, 0.33111
+ 0x3fee3a33ec75ce85, 0x3fd50163dc197047, // 0.9446, 0.32821
+ 0x3fee426a4b2bc17e, 0x3fd4d1e24278e76a, // 0.94561, 0.32531
+ 0x3fee4a8dff81ce5e, 0x3fd4a253d11b82f3, // 0.9466, 0.32241
+ 0x3fee529f04729ffc, 0x3fd472b8a5571054, // 0.94759, 0.3195
+ 0x3fee5a9d550467d3, 0x3fd44310dc8936f0, // 0.94856, 0.31659
+ 0x3fee6288ec48e112, 0x3fd4135c94176602, // 0.94953, 0.31368
+ 0x3fee6a61c55d53a7, 0x3fd3e39be96ec271, // 0.95049, 0.31077
+ 0x3fee7227db6a9744, 0x3fd3b3cefa0414b7, // 0.95144, 0.30785
+ 0x3fee79db29a5165a, 0x3fd383f5e353b6aa, // 0.95238, 0.30493
+ 0x3fee817bab4cd10d, 0x3fd35410c2e18152, // 0.95331, 0.30201
+ 0x3fee89095bad6025, 0x3fd3241fb638baaf, // 0.95423, 0.29908
+ 0x3fee9084361df7f3, 0x3fd2f422daec0386, // 0.95514, 0.29615
+ 0x3fee97ec36016b30, 0x3fd2c41a4e954520, // 0.95605, 0.29322
+ 0x3fee9f4156c62dda, 0x3fd294062ed59f05, // 0.95694, 0.29028
+ 0x3feea68393e65800, 0x3fd263e6995554ba, // 0.95783, 0.28735
+ 0x3feeadb2e8e7a88e, 0x3fd233bbabc3bb72, // 0.9587, 0.28441
+ 0x3feeb4cf515b8811, 0x3fd2038583d727bd, // 0.95957, 0.28146
+ 0x3feebbd8c8df0b74, 0x3fd1d3443f4cdb3d, // 0.96043, 0.27852
+ 0x3feec2cf4b1af6b2, 0x3fd1a2f7fbe8f243, // 0.96128, 0.27557
+ 0x3feec9b2d3c3bf84, 0x3fd172a0d7765177, // 0.96212, 0.27262
+ 0x3feed0835e999009, 0x3fd1423eefc69378, // 0.96295, 0.26967
+ 0x3feed740e7684963, 0x3fd111d262b1f677, // 0.96378, 0.26671
+ 0x3feeddeb6a078651, 0x3fd0e15b4e1749cd, // 0.96459, 0.26375
+ 0x3feee482e25a9dbc, 0x3fd0b0d9cfdbdb90, // 0.96539, 0.26079
+ 0x3feeeb074c50a544, 0x3fd0804e05eb661e, // 0.96619, 0.25783
+ 0x3feef178a3e473c2, 0x3fd04fb80e37fdae, // 0.96698, 0.25487
+ 0x3feef7d6e51ca3c0, 0x3fd01f1806b9fdd2, // 0.96775, 0.2519
+ 0x3feefe220c0b95ec, 0x3fcfdcdc1adfedf8, // 0.96852, 0.24893
+ 0x3fef045a14cf738c, 0x3fcf7b7480bd3801, // 0.96928, 0.24596
+ 0x3fef0a7efb9230d7, 0x3fcf19f97b215f1a, // 0.97003, 0.24298
+ 0x3fef1090bc898f5f, 0x3fceb86b462de348, // 0.97077, 0.24
+ 0x3fef168f53f7205d, 0x3fce56ca1e101a1b, // 0.9715, 0.23702
+ 0x3fef1c7abe284708, 0x3fcdf5163f01099a, // 0.97223, 0.23404
+ 0x3fef2252f7763ada, 0x3fcd934fe5454311, // 0.97294, 0.23106
+ 0x3fef2817fc4609ce, 0x3fcd31774d2cbdee, // 0.97364, 0.22807
+ 0x3fef2dc9c9089a9d, 0x3fcccf8cb312b286, // 0.97434, 0.22508
+ 0x3fef33685a3aaef0, 0x3fcc6d90535d74dc, // 0.97503, 0.22209
+ 0x3fef38f3ac64e589, 0x3fcc0b826a7e4f63, // 0.9757, 0.2191
+ 0x3fef3e6bbc1bbc65, 0x3fcba96334f15dad, // 0.97637, 0.21611
+ 0x3fef43d085ff92dd, 0x3fcb4732ef3d6722, // 0.97703, 0.21311
+ 0x3fef492206bcabb4, 0x3fcae4f1d5f3b9ab, // 0.97768, 0.21011
+ 0x3fef4e603b0b2f2d, 0x3fca82a025b00451, // 0.97832, 0.20711
+ 0x3fef538b1faf2d07, 0x3fca203e1b1831da, // 0.97895, 0.20411
+ 0x3fef58a2b1789e84, 0x3fc9bdcbf2dc4366, // 0.97957, 0.2011
+ 0x3fef5da6ed43685d, 0x3fc95b49e9b62af9, // 0.98018, 0.1981
+ 0x3fef6297cff75cb0, 0x3fc8f8b83c69a60a, // 0.98079, 0.19509
+ 0x3fef677556883cee, 0x3fc8961727c41804, // 0.98138, 0.19208
+ 0x3fef6c3f7df5bbb7, 0x3fc83366e89c64c5, // 0.98196, 0.18907
+ 0x3fef70f6434b7eb7, 0x3fc7d0a7bbd2cb1b, // 0.98254, 0.18606
+ 0x3fef7599a3a12077, 0x3fc76dd9de50bf31, // 0.98311, 0.18304
+ 0x3fef7a299c1a322a, 0x3fc70afd8d08c4ff, // 0.98366, 0.18002
+ 0x3fef7ea629e63d6e, 0x3fc6a81304f64ab2, // 0.98421, 0.177
+ 0x3fef830f4a40c60c, 0x3fc6451a831d830d, // 0.98475, 0.17398
+ 0x3fef8764fa714ba9, 0x3fc5e214448b3fc6, // 0.98528, 0.17096
+ 0x3fef8ba737cb4b78, 0x3fc57f008654cbde, // 0.9858, 0.16794
+ 0x3fef8fd5ffae41db, 0x3fc51bdf8597c5f2, // 0.98631, 0.16491
+ 0x3fef93f14f85ac08, 0x3fc4b8b17f79fa88, // 0.98681, 0.16189
+ 0x3fef97f924c9099b, 0x3fc45576b1293e5a, // 0.9873, 0.15886
+ 0x3fef9bed7cfbde29, 0x3fc3f22f57db4893, // 0.98778, 0.15583
+ 0x3fef9fce55adb2c8, 0x3fc38edbb0cd8d14, // 0.98826, 0.1528
+ 0x3fefa39bac7a1791, 0x3fc32b7bf94516a7, // 0.98872, 0.14976
+ 0x3fefa7557f08a517, 0x3fc2c8106e8e613a, // 0.98918, 0.14673
+ 0x3fefaafbcb0cfddc, 0x3fc264994dfd340a, // 0.98962, 0.1437
+ 0x3fefae8e8e46cfbb, 0x3fc20116d4ec7bce, // 0.99006, 0.14066
+ 0x3fefb20dc681d54d, 0x3fc19d8940be24e7, // 0.99049, 0.13762
+ 0x3fefb5797195d741, 0x3fc139f0cedaf576, // 0.9909, 0.13458
+ 0x3fefb8d18d66adb7, 0x3fc0d64dbcb26786, // 0.99131, 0.13154
+ 0x3fefbc1617e44186, 0x3fc072a047ba831d, // 0.99171, 0.1285
+ 0x3fefbf470f0a8d88, 0x3fc00ee8ad6fb85b, // 0.9921, 0.12545
+ 0x3fefc26470e19fd3, 0x3fbf564e56a9730e, // 0.99248, 0.12241
+ 0x3fefc56e3b7d9af6, 0x3fbe8eb7fde4aa3e, // 0.99285, 0.11937
+ 0x3fefc8646cfeb721, 0x3fbdc70ecbae9fc8, // 0.99321, 0.11632
+ 0x3fefcb4703914354, 0x3fbcff533b307dc1, // 0.99356, 0.11327
+ 0x3fefce15fd6da67b, 0x3fbc3785c79ec2d5, // 0.99391, 0.11022
+ 0x3fefd0d158d86087, 0x3fbb6fa6ec38f64c, // 0.99424, 0.10717
+ 0x3fefd37914220b84, 0x3fbaa7b724495c04, // 0.99456, 0.10412
+ 0x3fefd60d2da75c9e, 0x3fb9dfb6eb24a85c, // 0.99488, 0.10107
+ 0x3fefd88da3d12526, 0x3fb917a6bc29b42c, // 0.99518, 0.098017
+ 0x3fefdafa7514538c, 0x3fb84f8712c130a0, // 0.99548, 0.094963
+ 0x3fefdd539ff1f456, 0x3fb787586a5d5b21, // 0.99577, 0.091909
+ 0x3fefdf9922f73307, 0x3fb6bf1b3e79b129, // 0.99604, 0.088854
+ 0x3fefe1cafcbd5b09, 0x3fb5f6d00a9aa419, // 0.99631, 0.085797
+ 0x3fefe3e92be9d886, 0x3fb52e774a4d4d0a, // 0.99657, 0.08274
+ 0x3fefe5f3af2e3940, 0x3fb4661179272096, // 0.99682, 0.079682
+ 0x3fefe7ea85482d60, 0x3fb39d9f12c5a299, // 0.99706, 0.076624
+ 0x3fefe9cdad01883a, 0x3fb2d52092ce19f6, // 0.99729, 0.073565
+ 0x3fefeb9d2530410f, 0x3fb20c9674ed444c, // 0.99751, 0.070505
+ 0x3fefed58ecb673c4, 0x3fb1440134d709b2, // 0.99772, 0.067444
+ 0x3fefef0102826191, 0x3fb07b614e463064, // 0.99793, 0.064383
+ 0x3feff095658e71ad, 0x3faf656e79f820e0, // 0.99812, 0.061321
+ 0x3feff21614e131ed, 0x3fadd406f9808ec8, // 0.9983, 0.058258
+ 0x3feff3830f8d575c, 0x3fac428d12c0d7e3, // 0.99848, 0.055195
+ 0x3feff4dc54b1bed3, 0x3faab101bd5f8317, // 0.99864, 0.052132
+ 0x3feff621e3796d7e, 0x3fa91f65f10dd814, // 0.9988, 0.049068
+ 0x3feff753bb1b9164, 0x3fa78dbaa5874685, // 0.99894, 0.046003
+ 0x3feff871dadb81df, 0x3fa5fc00d290cd43, // 0.99908, 0.042938
+ 0x3feff97c4208c014, 0x3fa46a396ff86179, // 0.9992, 0.039873
+ 0x3feffa72effef75d, 0x3fa2d865759455cd, // 0.99932, 0.036807
+ 0x3feffb55e425fdae, 0x3fa14685db42c17e, // 0.99943, 0.033741
+ 0x3feffc251df1d3f8, 0x3f9f693731d1cf01, // 0.99953, 0.030675
+ 0x3feffce09ce2a679, 0x3f9c454f4ce53b1c, // 0.99962, 0.027608
+ 0x3feffd886084cd0d, 0x3f992155f7a3667e, // 0.9997, 0.024541
+ 0x3feffe1c6870cb77, 0x3f95fd4d21fab226, // 0.99977, 0.021474
+ 0x3feffe9cb44b51a1, 0x3f92d936bbe30efd, // 0.99983, 0.018407
+ 0x3fefff0943c53bd1, 0x3f8f6a296ab997ca, // 0.99988, 0.015339
+ 0x3fefff62169b92db, 0x3f8921d1fcdec784, // 0.99992, 0.012272
+ 0x3fefffa72c978c4f, 0x3f82d96b0e509703, // 0.99996, 0.0092038
+ 0x3fefffd8858e8a92, 0x3f7921f0fe670071, // 0.99998, 0.0061359
+ 0x3feffff621621d02, 0x3f6921f8becca4ba, // 1, 0.003068
+ 0x3ff0000000000000, 0x0000000000000000, // 1, 0
+ 0x3feffff621621d02, 0xbf6921f8becca4ba, // 1, -0.003068
+ 0x3fefffd8858e8a92, 0xbf7921f0fe670071, // 0.99998,-0.0061359
+ 0x3fefffa72c978c4f, 0xbf82d96b0e509703, // 0.99996,-0.0092038
+ 0x3fefff62169b92db, 0xbf8921d1fcdec784, // 0.99992, -0.012272
+ 0x3fefff0943c53bd1, 0xbf8f6a296ab997ca, // 0.99988, -0.015339
+ 0x3feffe9cb44b51a1, 0xbf92d936bbe30efd, // 0.99983, -0.018407
+ 0x3feffe1c6870cb77, 0xbf95fd4d21fab226, // 0.99977, -0.021474
+ 0x3feffd886084cd0d, 0xbf992155f7a3667e, // 0.9997, -0.024541
+ 0x3feffce09ce2a679, 0xbf9c454f4ce53b1c, // 0.99962, -0.027608
+ 0x3feffc251df1d3f8, 0xbf9f693731d1cf01, // 0.99953, -0.030675
+ 0x3feffb55e425fdae, 0xbfa14685db42c17e, // 0.99943, -0.033741
+ 0x3feffa72effef75d, 0xbfa2d865759455cd, // 0.99932, -0.036807
+ 0x3feff97c4208c014, 0xbfa46a396ff86179, // 0.9992, -0.039873
+ 0x3feff871dadb81df, 0xbfa5fc00d290cd43, // 0.99908, -0.042938
+ 0x3feff753bb1b9164, 0xbfa78dbaa5874685, // 0.99894, -0.046003
+ 0x3feff621e3796d7e, 0xbfa91f65f10dd814, // 0.9988, -0.049068
+ 0x3feff4dc54b1bed3, 0xbfaab101bd5f8317, // 0.99864, -0.052132
+ 0x3feff3830f8d575c, 0xbfac428d12c0d7e3, // 0.99848, -0.055195
+ 0x3feff21614e131ed, 0xbfadd406f9808ec8, // 0.9983, -0.058258
+ 0x3feff095658e71ad, 0xbfaf656e79f820e0, // 0.99812, -0.061321
+ 0x3fefef0102826191, 0xbfb07b614e463064, // 0.99793, -0.064383
+ 0x3fefed58ecb673c4, 0xbfb1440134d709b2, // 0.99772, -0.067444
+ 0x3fefeb9d2530410f, 0xbfb20c9674ed444c, // 0.99751, -0.070505
+ 0x3fefe9cdad01883a, 0xbfb2d52092ce19f6, // 0.99729, -0.073565
+ 0x3fefe7ea85482d60, 0xbfb39d9f12c5a299, // 0.99706, -0.076624
+ 0x3fefe5f3af2e3940, 0xbfb4661179272096, // 0.99682, -0.079682
+ 0x3fefe3e92be9d886, 0xbfb52e774a4d4d0a, // 0.99657, -0.08274
+ 0x3fefe1cafcbd5b09, 0xbfb5f6d00a9aa419, // 0.99631, -0.085797
+ 0x3fefdf9922f73307, 0xbfb6bf1b3e79b129, // 0.99604, -0.088854
+ 0x3fefdd539ff1f456, 0xbfb787586a5d5b21, // 0.99577, -0.091909
+ 0x3fefdafa7514538c, 0xbfb84f8712c130a0, // 0.99548, -0.094963
+ 0x3fefd88da3d12526, 0xbfb917a6bc29b42c, // 0.99518, -0.098017
+ 0x3fefd60d2da75c9e, 0xbfb9dfb6eb24a85c, // 0.99488, -0.10107
+ 0x3fefd37914220b84, 0xbfbaa7b724495c04, // 0.99456, -0.10412
+ 0x3fefd0d158d86087, 0xbfbb6fa6ec38f64c, // 0.99424, -0.10717
+ 0x3fefce15fd6da67b, 0xbfbc3785c79ec2d5, // 0.99391, -0.11022
+ 0x3fefcb4703914354, 0xbfbcff533b307dc1, // 0.99356, -0.11327
+ 0x3fefc8646cfeb721, 0xbfbdc70ecbae9fc8, // 0.99321, -0.11632
+ 0x3fefc56e3b7d9af6, 0xbfbe8eb7fde4aa3e, // 0.99285, -0.11937
+ 0x3fefc26470e19fd3, 0xbfbf564e56a9730e, // 0.99248, -0.12241
+ 0x3fefbf470f0a8d88, 0xbfc00ee8ad6fb85b, // 0.9921, -0.12545
+ 0x3fefbc1617e44186, 0xbfc072a047ba831d, // 0.99171, -0.1285
+ 0x3fefb8d18d66adb7, 0xbfc0d64dbcb26786, // 0.99131, -0.13154
+ 0x3fefb5797195d741, 0xbfc139f0cedaf576, // 0.9909, -0.13458
+ 0x3fefb20dc681d54d, 0xbfc19d8940be24e7, // 0.99049, -0.13762
+ 0x3fefae8e8e46cfbb, 0xbfc20116d4ec7bce, // 0.99006, -0.14066
+ 0x3fefaafbcb0cfddc, 0xbfc264994dfd340a, // 0.98962, -0.1437
+ 0x3fefa7557f08a517, 0xbfc2c8106e8e613a, // 0.98918, -0.14673
+ 0x3fefa39bac7a1791, 0xbfc32b7bf94516a7, // 0.98872, -0.14976
+ 0x3fef9fce55adb2c8, 0xbfc38edbb0cd8d14, // 0.98826, -0.1528
+ 0x3fef9bed7cfbde29, 0xbfc3f22f57db4893, // 0.98778, -0.15583
+ 0x3fef97f924c9099b, 0xbfc45576b1293e5a, // 0.9873, -0.15886
+ 0x3fef93f14f85ac08, 0xbfc4b8b17f79fa88, // 0.98681, -0.16189
+ 0x3fef8fd5ffae41db, 0xbfc51bdf8597c5f2, // 0.98631, -0.16491
+ 0x3fef8ba737cb4b78, 0xbfc57f008654cbde, // 0.9858, -0.16794
+ 0x3fef8764fa714ba9, 0xbfc5e214448b3fc6, // 0.98528, -0.17096
+ 0x3fef830f4a40c60c, 0xbfc6451a831d830d, // 0.98475, -0.17398
+ 0x3fef7ea629e63d6e, 0xbfc6a81304f64ab2, // 0.98421, -0.177
+ 0x3fef7a299c1a322a, 0xbfc70afd8d08c4ff, // 0.98366, -0.18002
+ 0x3fef7599a3a12077, 0xbfc76dd9de50bf31, // 0.98311, -0.18304
+ 0x3fef70f6434b7eb7, 0xbfc7d0a7bbd2cb1b, // 0.98254, -0.18606
+ 0x3fef6c3f7df5bbb7, 0xbfc83366e89c64c5, // 0.98196, -0.18907
+ 0x3fef677556883cee, 0xbfc8961727c41804, // 0.98138, -0.19208
+ 0x3fef6297cff75cb0, 0xbfc8f8b83c69a60a, // 0.98079, -0.19509
+ 0x3fef5da6ed43685d, 0xbfc95b49e9b62af9, // 0.98018, -0.1981
+ 0x3fef58a2b1789e84, 0xbfc9bdcbf2dc4366, // 0.97957, -0.2011
+ 0x3fef538b1faf2d07, 0xbfca203e1b1831da, // 0.97895, -0.20411
+ 0x3fef4e603b0b2f2d, 0xbfca82a025b00451, // 0.97832, -0.20711
+ 0x3fef492206bcabb4, 0xbfcae4f1d5f3b9ab, // 0.97768, -0.21011
+ 0x3fef43d085ff92dd, 0xbfcb4732ef3d6722, // 0.97703, -0.21311
+ 0x3fef3e6bbc1bbc65, 0xbfcba96334f15dad, // 0.97637, -0.21611
+ 0x3fef38f3ac64e589, 0xbfcc0b826a7e4f63, // 0.9757, -0.2191
+ 0x3fef33685a3aaef0, 0xbfcc6d90535d74dc, // 0.97503, -0.22209
+ 0x3fef2dc9c9089a9d, 0xbfcccf8cb312b286, // 0.97434, -0.22508
+ 0x3fef2817fc4609ce, 0xbfcd31774d2cbdee, // 0.97364, -0.22807
+ 0x3fef2252f7763ada, 0xbfcd934fe5454311, // 0.97294, -0.23106
+ 0x3fef1c7abe284708, 0xbfcdf5163f01099a, // 0.97223, -0.23404
+ 0x3fef168f53f7205d, 0xbfce56ca1e101a1b, // 0.9715, -0.23702
+ 0x3fef1090bc898f5f, 0xbfceb86b462de348, // 0.97077, -0.24
+ 0x3fef0a7efb9230d7, 0xbfcf19f97b215f1a, // 0.97003, -0.24298
+ 0x3fef045a14cf738c, 0xbfcf7b7480bd3801, // 0.96928, -0.24596
+ 0x3feefe220c0b95ec, 0xbfcfdcdc1adfedf8, // 0.96852, -0.24893
+ 0x3feef7d6e51ca3c0, 0xbfd01f1806b9fdd2, // 0.96775, -0.2519
+ 0x3feef178a3e473c2, 0xbfd04fb80e37fdae, // 0.96698, -0.25487
+ 0x3feeeb074c50a544, 0xbfd0804e05eb661e, // 0.96619, -0.25783
+ 0x3feee482e25a9dbc, 0xbfd0b0d9cfdbdb90, // 0.96539, -0.26079
+ 0x3feeddeb6a078651, 0xbfd0e15b4e1749cd, // 0.96459, -0.26375
+ 0x3feed740e7684963, 0xbfd111d262b1f677, // 0.96378, -0.26671
+ 0x3feed0835e999009, 0xbfd1423eefc69378, // 0.96295, -0.26967
+ 0x3feec9b2d3c3bf84, 0xbfd172a0d7765177, // 0.96212, -0.27262
+ 0x3feec2cf4b1af6b2, 0xbfd1a2f7fbe8f243, // 0.96128, -0.27557
+ 0x3feebbd8c8df0b74, 0xbfd1d3443f4cdb3d, // 0.96043, -0.27852
+ 0x3feeb4cf515b8811, 0xbfd2038583d727bd, // 0.95957, -0.28146
+ 0x3feeadb2e8e7a88e, 0xbfd233bbabc3bb72, // 0.9587, -0.28441
+ 0x3feea68393e65800, 0xbfd263e6995554ba, // 0.95783, -0.28735
+ 0x3fee9f4156c62dda, 0xbfd294062ed59f05, // 0.95694, -0.29028
+ 0x3fee97ec36016b30, 0xbfd2c41a4e954520, // 0.95605, -0.29322
+ 0x3fee9084361df7f3, 0xbfd2f422daec0386, // 0.95514, -0.29615
+ 0x3fee89095bad6025, 0xbfd3241fb638baaf, // 0.95423, -0.29908
+ 0x3fee817bab4cd10d, 0xbfd35410c2e18152, // 0.95331, -0.30201
+ 0x3fee79db29a5165a, 0xbfd383f5e353b6aa, // 0.95238, -0.30493
+ 0x3fee7227db6a9744, 0xbfd3b3cefa0414b7, // 0.95144, -0.30785
+ 0x3fee6a61c55d53a7, 0xbfd3e39be96ec271, // 0.95049, -0.31077
+ 0x3fee6288ec48e112, 0xbfd4135c94176602, // 0.94953, -0.31368
+ 0x3fee5a9d550467d3, 0xbfd44310dc8936f0, // 0.94856, -0.31659
+ 0x3fee529f04729ffc, 0xbfd472b8a5571054, // 0.94759, -0.3195
+ 0x3fee4a8dff81ce5e, 0xbfd4a253d11b82f3, // 0.9466, -0.32241
+ 0x3fee426a4b2bc17e, 0xbfd4d1e24278e76a, // 0.94561, -0.32531
+ 0x3fee3a33ec75ce85, 0xbfd50163dc197047, // 0.9446, -0.32821
+ 0x3fee31eae870ce25, 0xbfd530d880af3c24, // 0.94359, -0.33111
+ 0x3fee298f4439197a, 0xbfd5604012f467b4, // 0.94257, -0.334
+ 0x3fee212104f686e5, 0xbfd58f9a75ab1fdd, // 0.94154, -0.33689
+ 0x3fee18a02fdc66d9, 0xbfd5bee78b9db3b6, // 0.94051, -0.33978
+ 0x3fee100cca2980ac, 0xbfd5ee27379ea693, // 0.93946, -0.34266
+ 0x3fee0766d9280f54, 0xbfd61d595c88c203, // 0.9384, -0.34554
+ 0x3fedfeae622dbe2b, 0xbfd64c7ddd3f27c6, // 0.93734, -0.34842
+ 0x3fedf5e36a9ba59c, 0xbfd67b949cad63ca, // 0.93627, -0.35129
+ 0x3feded05f7de47da, 0xbfd6aa9d7dc77e16, // 0.93518, -0.35416
+ 0x3fede4160f6d8d81, 0xbfd6d998638a0cb5, // 0.93409, -0.35703
+ 0x3feddb13b6ccc23d, 0xbfd7088530fa459e, // 0.93299, -0.3599
+ 0x3fedd1fef38a915a, 0xbfd73763c9261092, // 0.93188, -0.36276
+ 0x3fedc8d7cb410260, 0xbfd766340f2418f6, // 0.93077, -0.36561
+ 0x3fedbf9e4395759a, 0xbfd794f5e613dfae, // 0.92964, -0.36847
+ 0x3fedb6526238a09b, 0xbfd7c3a9311dcce7, // 0.92851, -0.37132
+ 0x3fedacf42ce68ab9, 0xbfd7f24dd37341e3, // 0.92736, -0.37416
+ 0x3feda383a9668988, 0xbfd820e3b04eaac4, // 0.92621, -0.37701
+ 0x3fed9a00dd8b3d46, 0xbfd84f6aaaf3903f, // 0.92505, -0.37985
+ 0x3fed906bcf328d46, 0xbfd87de2a6aea963, // 0.92388, -0.38268
+ 0x3fed86c48445a450, 0xbfd8ac4b86d5ed44, // 0.9227, -0.38552
+ 0x3fed7d0b02b8ecf9, 0xbfd8daa52ec8a4af, // 0.92151, -0.38835
+ 0x3fed733f508c0dff, 0xbfd908ef81ef7bd1, // 0.92032, -0.39117
+ 0x3fed696173c9e68b, 0xbfd9372a63bc93d7, // 0.91911, -0.39399
+ 0x3fed5f7172888a7f, 0xbfd96555b7ab948f, // 0.9179, -0.39681
+ 0x3fed556f52e93eb1, 0xbfd993716141bdfe, // 0.91668, -0.39962
+ 0x3fed4b5b1b187524, 0xbfd9c17d440df9f2, // 0.91545, -0.40243
+ 0x3fed4134d14dc93a, 0xbfd9ef7943a8ed8a, // 0.91421, -0.40524
+ 0x3fed36fc7bcbfbdc, 0xbfda1d6543b50ac0, // 0.91296, -0.40804
+ 0x3fed2cb220e0ef9f, 0xbfda4b4127dea1e4, // 0.91171, -0.41084
+ 0x3fed2255c6e5a4e1, 0xbfda790cd3dbf31a, // 0.91044, -0.41364
+ 0x3fed17e7743e35dc, 0xbfdaa6c82b6d3fc9, // 0.90917, -0.41643
+ 0x3fed0d672f59d2b9, 0xbfdad473125cdc08, // 0.90789, -0.41922
+ 0x3fed02d4feb2bd92, 0xbfdb020d6c7f4009, // 0.9066, -0.422
+ 0x3fecf830e8ce467b, 0xbfdb2f971db31972, // 0.9053, -0.42478
+ 0x3feced7af43cc773, 0xbfdb5d1009e15cc0, // 0.90399, -0.42756
+ 0x3fece2b32799a060, 0xbfdb8a7814fd5693, // 0.90267, -0.43033
+ 0x3fecd7d9898b32f6, 0xbfdbb7cf2304bd01, // 0.90135, -0.43309
+ 0x3fecccee20c2de9f, 0xbfdbe51517ffc0d9, // 0.90002, -0.43586
+ 0x3fecc1f0f3fcfc5c, 0xbfdc1249d8011ee7, // 0.89867, -0.43862
+ 0x3fecb6e20a00da99, 0xbfdc3f6d47263129, // 0.89732, -0.44137
+ 0x3fecabc169a0b901, 0xbfdc6c7f4997000a, // 0.89597, -0.44412
+ 0x3feca08f19b9c449, 0xbfdc997fc3865388, // 0.8946, -0.44687
+ 0x3fec954b213411f5, 0xbfdcc66e9931c45d, // 0.89322, -0.44961
+ 0x3fec89f587029c13, 0xbfdcf34baee1cd21, // 0.89184, -0.45235
+ 0x3fec7e8e52233cf3, 0xbfdd2016e8e9db5b, // 0.89045, -0.45508
+ 0x3fec7315899eaad7, 0xbfdd4cd02ba8609c, // 0.88905, -0.45781
+ 0x3fec678b3488739b, 0xbfdd79775b86e389, // 0.88764, -0.46054
+ 0x3fec5bef59fef85a, 0xbfdda60c5cfa10d8, // 0.88622, -0.46326
+ 0x3fec5042012b6907, 0xbfddd28f1481cc58, // 0.8848, -0.46598
+ 0x3fec44833141c004, 0xbfddfeff66a941de, // 0.88336, -0.46869
+ 0x3fec38b2f180bdb1, 0xbfde2b5d3806f63b, // 0.88192, -0.4714
+ 0x3fec2cd14931e3f1, 0xbfde57a86d3cd824, // 0.88047, -0.4741
+ 0x3fec20de3fa971b0, 0xbfde83e0eaf85113, // 0.87901, -0.4768
+ 0x3fec14d9dc465e58, 0xbfdeb00695f25620, // 0.87755, -0.47949
+ 0x3fec08c426725549, 0xbfdedc1952ef78d5, // 0.87607, -0.48218
+ 0x3febfc9d25a1b147, 0xbfdf081906bff7fd, // 0.87459, -0.48487
+ 0x3febf064e15377dd, 0xbfdf3405963fd068, // 0.87309, -0.48755
+ 0x3febe41b611154c1, 0xbfdf5fdee656cda3, // 0.8716, -0.49023
+ 0x3febd7c0ac6f952a, 0xbfdf8ba4dbf89aba, // 0.87009, -0.4929
+ 0x3febcb54cb0d2327, 0xbfdfb7575c24d2de, // 0.86857, -0.49557
+ 0x3febbed7c49380ea, 0xbfdfe2f64be7120f, // 0.86705, -0.49823
+ 0x3febb249a0b6c40d, 0xbfe00740c82b82e0, // 0.86551, -0.50089
+ 0x3feba5aa673590d2, 0xbfe01cfc874c3eb7, // 0.86397, -0.50354
+ 0x3feb98fa1fd9155e, 0xbfe032ae55edbd95, // 0.86242, -0.50619
+ 0x3feb8c38d27504e9, 0xbfe0485626ae221a, // 0.86087, -0.50883
+ 0x3feb7f6686e792ea, 0xbfe05df3ec31b8b6, // 0.8593, -0.51147
+ 0x3feb728345196e3e, 0xbfe073879922ffed, // 0.85773, -0.5141
+ 0x3feb658f14fdbc47, 0xbfe089112032b08c, // 0.85615, -0.51673
+ 0x3feb5889fe921405, 0xbfe09e907417c5e1, // 0.85456, -0.51936
+ 0x3feb4b7409de7925, 0xbfe0b405878f85ec, // 0.85296, -0.52198
+ 0x3feb3e4d3ef55712, 0xbfe0c9704d5d898f, // 0.85136, -0.52459
+ 0x3feb3115a5f37bf4, 0xbfe0ded0b84bc4b5, // 0.84974, -0.5272
+ 0x3feb23cd470013b4, 0xbfe0f426bb2a8e7d, // 0.84812, -0.5298
+ 0x3feb16742a4ca2f5, 0xbfe1097248d0a956, // 0.84649, -0.5324
+ 0x3feb090a58150200, 0xbfe11eb3541b4b22, // 0.84485, -0.535
+ 0x3feafb8fd89f57b6, 0xbfe133e9cfee254e, // 0.84321, -0.53759
+ 0x3feaee04b43c1474, 0xbfe14915af336ceb, // 0.84155, -0.54017
+ 0x3feae068f345ecef, 0xbfe15e36e4dbe2bc, // 0.83989, -0.54275
+ 0x3fead2bc9e21d511, 0xbfe1734d63dedb49, // 0.83822, -0.54532
+ 0x3feac4ffbd3efac8, 0xbfe188591f3a46e5, // 0.83655, -0.54789
+ 0x3feab7325916c0d4, 0xbfe19d5a09f2b9b8, // 0.83486, -0.55046
+ 0x3feaa9547a2cb98e, 0xbfe1b250171373be, // 0.83317, -0.55302
+ 0x3fea9b66290ea1a3, 0xbfe1c73b39ae68c8, // 0.83147, -0.55557
+ 0x3fea8d676e545ad2, 0xbfe1dc1b64dc4872, // 0.82976, -0.55812
+ 0x3fea7f58529fe69d, 0xbfe1f0f08bbc861b, // 0.82805, -0.56066
+ 0x3fea7138de9d60f5, 0xbfe205baa17560d6, // 0.82632, -0.5632
+ 0x3fea63091b02fae2, 0xbfe21a799933eb58, // 0.82459, -0.56573
+ 0x3fea54c91090f524, 0xbfe22f2d662c13e1, // 0.82285, -0.56826
+ 0x3fea4678c8119ac8, 0xbfe243d5fb98ac1f, // 0.8211, -0.57078
+ 0x3fea38184a593bc6, 0xbfe258734cbb7110, // 0.81935, -0.5733
+ 0x3fea29a7a0462782, 0xbfe26d054cdd12df, // 0.81758, -0.57581
+ 0x3fea1b26d2c0a75e, 0xbfe2818bef4d3cba, // 0.81581, -0.57831
+ 0x3fea0c95eabaf937, 0xbfe2960727629ca8, // 0.81404, -0.58081
+ 0x3fe9fdf4f13149de, 0xbfe2aa76e87aeb58, // 0.81225, -0.58331
+ 0x3fe9ef43ef29af94, 0xbfe2bedb25faf3ea, // 0.81046, -0.5858
+ 0x3fe9e082edb42472, 0xbfe2d333d34e9bb7, // 0.80866, -0.58828
+ 0x3fe9d1b1f5ea80d6, 0xbfe2e780e3e8ea16, // 0.80685, -0.59076
+ 0x3fe9c2d110f075c3, 0xbfe2fbc24b441015, // 0.80503, -0.59323
+ 0x3fe9b3e047f38741, 0xbfe30ff7fce17035, // 0.80321, -0.5957
+ 0x3fe9a4dfa42b06b2, 0xbfe32421ec49a620, // 0.80138, -0.59816
+ 0x3fe995cf2ed80d22, 0xbfe338400d0c8e57, // 0.79954, -0.60062
+ 0x3fe986aef1457594, 0xbfe34c5252c14de1, // 0.79769, -0.60307
+ 0x3fe9777ef4c7d742, 0xbfe36058b10659f3, // 0.79584, -0.60551
+ 0x3fe9683f42bd7fe1, 0xbfe374531b817f8d, // 0.79398, -0.60795
+ 0x3fe958efe48e6dd7, 0xbfe3884185dfeb22, // 0.79211, -0.61038
+ 0x3fe94990e3ac4a6c, 0xbfe39c23e3d63029, // 0.79023, -0.61281
+ 0x3fe93a22499263fc, 0xbfe3affa292050b9, // 0.78835, -0.61523
+ 0x3fe92aa41fc5a815, 0xbfe3c3c44981c517, // 0.78646, -0.61765
+ 0x3fe91b166fd49da2, 0xbfe3d78238c58343, // 0.78456, -0.62006
+ 0x3fe90b7943575efe, 0xbfe3eb33eabe0680, // 0.78265, -0.62246
+ 0x3fe8fbcca3ef940d, 0xbfe3fed9534556d4, // 0.78074, -0.62486
+ 0x3fe8ec109b486c49, 0xbfe41272663d108c, // 0.77882, -0.62725
+ 0x3fe8dc45331698cc, 0xbfe425ff178e6bb1, // 0.77689, -0.62964
+ 0x3fe8cc6a75184655, 0xbfe4397f5b2a4380, // 0.77495, -0.63202
+ 0x3fe8bc806b151741, 0xbfe44cf325091dd6, // 0.77301, -0.63439
+ 0x3fe8ac871ede1d88, 0xbfe4605a692b32a2, // 0.77106, -0.63676
+ 0x3fe89c7e9a4dd4ab, 0xbfe473b51b987347, // 0.7691, -0.63912
+ 0x3fe88c66e7481ba1, 0xbfe48703306091fe, // 0.76714, -0.64148
+ 0x3fe87c400fba2ebf, 0xbfe49a449b9b0938, // 0.76517, -0.64383
+ 0x3fe86c0a1d9aa195, 0xbfe4ad79516722f0, // 0.76319, -0.64618
+ 0x3fe85bc51ae958cc, 0xbfe4c0a145ec0004, // 0.7612, -0.64851
+ 0x3fe84b7111af83f9, 0xbfe4d3bc6d589f80, // 0.75921, -0.65085
+ 0x3fe83b0e0bff976e, 0xbfe4e6cabbe3e5e9, // 0.75721, -0.65317
+ 0x3fe82a9c13f545ff, 0xbfe4f9cc25cca486, // 0.7552, -0.65549
+ 0x3fe81a1b33b57acc, 0xbfe50cc09f59a09b, // 0.75319, -0.65781
+ 0x3fe8098b756e52fa, 0xbfe51fa81cd99aa6, // 0.75117, -0.66011
+ 0x3fe7f8ece3571771, 0xbfe5328292a35596, // 0.74914, -0.66242
+ 0x3fe7e83f87b03686, 0xbfe5454ff5159dfb, // 0.7471, -0.66471
+ 0x3fe7d7836cc33db2, 0xbfe5581038975137, // 0.74506, -0.667
+ 0x3fe7c6b89ce2d333, 0xbfe56ac35197649e, // 0.74301, -0.66928
+ 0x3fe7b5df226aafb0, 0xbfe57d69348cec9f, // 0.74095, -0.67156
+ 0x3fe7a4f707bf97d2, 0xbfe59001d5f723df, // 0.73889, -0.67383
+ 0x3fe79400574f55e4, 0xbfe5a28d2a5d7250, // 0.73682, -0.67609
+ 0x3fe782fb1b90b35b, 0xbfe5b50b264f7448, // 0.73474, -0.67835
+ 0x3fe771e75f037261, 0xbfe5c77bbe65018c, // 0.73265, -0.6806
+ 0x3fe760c52c304764, 0xbfe5d9dee73e345c, // 0.73056, -0.68285
+ 0x3fe74f948da8d28d, 0xbfe5ec3495837074, // 0.72846, -0.68508
+ 0x3fe73e558e079942, 0xbfe5fe7cbde56a0f, // 0.72636, -0.68732
+ 0x3fe72d0837efff97, 0xbfe610b7551d2cde, // 0.72425, -0.68954
+ 0x3fe71bac960e41bf, 0xbfe622e44fec22ff, // 0.72213, -0.69176
+ 0x3fe70a42b3176d7a, 0xbfe63503a31c1be8, // 0.72, -0.69397
+ 0x3fe6f8ca99c95b75, 0xbfe64715437f535b, // 0.71787, -0.69618
+ 0x3fe6e74454eaa8ae, 0xbfe6591925f0783e, // 0.71573, -0.69838
+ 0x3fe6d5afef4aafcc, 0xbfe66b0f3f52b386, // 0.71358, -0.70057
+ 0x3fe6c40d73c18275, 0xbfe67cf78491af10, // 0.71143, -0.70275
+ 0x3fe6b25ced2fe29c, 0xbfe68ed1eaa19c71, // 0.70927, -0.70493
+ 0x3fe6a09e667f3bcc, 0xbfe6a09e667f3bcc, // 0.70711, -0.70711
+ 0x3fe68ed1eaa19c71, 0xbfe6b25ced2fe29c, // 0.70493, -0.70927
+ 0x3fe67cf78491af10, 0xbfe6c40d73c18275, // 0.70275, -0.71143
+ 0x3fe66b0f3f52b386, 0xbfe6d5afef4aafcc, // 0.70057, -0.71358
+ 0x3fe6591925f0783e, 0xbfe6e74454eaa8ae, // 0.69838, -0.71573
+ 0x3fe64715437f535b, 0xbfe6f8ca99c95b75, // 0.69618, -0.71787
+ 0x3fe63503a31c1be8, 0xbfe70a42b3176d7a, // 0.69397, -0.72
+ 0x3fe622e44fec22ff, 0xbfe71bac960e41bf, // 0.69176, -0.72213
+ 0x3fe610b7551d2cde, 0xbfe72d0837efff97, // 0.68954, -0.72425
+ 0x3fe5fe7cbde56a0f, 0xbfe73e558e079942, // 0.68732, -0.72636
+ 0x3fe5ec3495837074, 0xbfe74f948da8d28d, // 0.68508, -0.72846
+ 0x3fe5d9dee73e345c, 0xbfe760c52c304764, // 0.68285, -0.73056
+ 0x3fe5c77bbe65018c, 0xbfe771e75f037261, // 0.6806, -0.73265
+ 0x3fe5b50b264f7448, 0xbfe782fb1b90b35b, // 0.67835, -0.73474
+ 0x3fe5a28d2a5d7250, 0xbfe79400574f55e4, // 0.67609, -0.73682
+ 0x3fe59001d5f723df, 0xbfe7a4f707bf97d2, // 0.67383, -0.73889
+ 0x3fe57d69348cec9f, 0xbfe7b5df226aafb0, // 0.67156, -0.74095
+ 0x3fe56ac35197649e, 0xbfe7c6b89ce2d333, // 0.66928, -0.74301
+ 0x3fe5581038975137, 0xbfe7d7836cc33db2, // 0.667, -0.74506
+ 0x3fe5454ff5159dfb, 0xbfe7e83f87b03686, // 0.66471, -0.7471
+ 0x3fe5328292a35596, 0xbfe7f8ece3571771, // 0.66242, -0.74914
+ 0x3fe51fa81cd99aa6, 0xbfe8098b756e52fa, // 0.66011, -0.75117
+ 0x3fe50cc09f59a09b, 0xbfe81a1b33b57acc, // 0.65781, -0.75319
+ 0x3fe4f9cc25cca486, 0xbfe82a9c13f545ff, // 0.65549, -0.7552
+ 0x3fe4e6cabbe3e5e9, 0xbfe83b0e0bff976e, // 0.65317, -0.75721
+ 0x3fe4d3bc6d589f80, 0xbfe84b7111af83f9, // 0.65085, -0.75921
+ 0x3fe4c0a145ec0004, 0xbfe85bc51ae958cc, // 0.64851, -0.7612
+ 0x3fe4ad79516722f0, 0xbfe86c0a1d9aa195, // 0.64618, -0.76319
+ 0x3fe49a449b9b0938, 0xbfe87c400fba2ebf, // 0.64383, -0.76517
+ 0x3fe48703306091fe, 0xbfe88c66e7481ba1, // 0.64148, -0.76714
+ 0x3fe473b51b987347, 0xbfe89c7e9a4dd4ab, // 0.63912, -0.7691
+ 0x3fe4605a692b32a2, 0xbfe8ac871ede1d88, // 0.63676, -0.77106
+ 0x3fe44cf325091dd6, 0xbfe8bc806b151741, // 0.63439, -0.77301
+ 0x3fe4397f5b2a4380, 0xbfe8cc6a75184655, // 0.63202, -0.77495
+ 0x3fe425ff178e6bb1, 0xbfe8dc45331698cc, // 0.62964, -0.77689
+ 0x3fe41272663d108c, 0xbfe8ec109b486c49, // 0.62725, -0.77882
+ 0x3fe3fed9534556d4, 0xbfe8fbcca3ef940d, // 0.62486, -0.78074
+ 0x3fe3eb33eabe0680, 0xbfe90b7943575efe, // 0.62246, -0.78265
+ 0x3fe3d78238c58343, 0xbfe91b166fd49da2, // 0.62006, -0.78456
+ 0x3fe3c3c44981c517, 0xbfe92aa41fc5a815, // 0.61765, -0.78646
+ 0x3fe3affa292050b9, 0xbfe93a22499263fc, // 0.61523, -0.78835
+ 0x3fe39c23e3d63029, 0xbfe94990e3ac4a6c, // 0.61281, -0.79023
+ 0x3fe3884185dfeb22, 0xbfe958efe48e6dd7, // 0.61038, -0.79211
+ 0x3fe374531b817f8d, 0xbfe9683f42bd7fe1, // 0.60795, -0.79398
+ 0x3fe36058b10659f3, 0xbfe9777ef4c7d742, // 0.60551, -0.79584
+ 0x3fe34c5252c14de1, 0xbfe986aef1457594, // 0.60307, -0.79769
+ 0x3fe338400d0c8e57, 0xbfe995cf2ed80d22, // 0.60062, -0.79954
+ 0x3fe32421ec49a620, 0xbfe9a4dfa42b06b2, // 0.59816, -0.80138
+ 0x3fe30ff7fce17035, 0xbfe9b3e047f38741, // 0.5957, -0.80321
+ 0x3fe2fbc24b441015, 0xbfe9c2d110f075c3, // 0.59323, -0.80503
+ 0x3fe2e780e3e8ea16, 0xbfe9d1b1f5ea80d6, // 0.59076, -0.80685
+ 0x3fe2d333d34e9bb7, 0xbfe9e082edb42472, // 0.58828, -0.80866
+ 0x3fe2bedb25faf3ea, 0xbfe9ef43ef29af94, // 0.5858, -0.81046
+ 0x3fe2aa76e87aeb58, 0xbfe9fdf4f13149de, // 0.58331, -0.81225
+ 0x3fe2960727629ca8, 0xbfea0c95eabaf937, // 0.58081, -0.81404
+ 0x3fe2818bef4d3cba, 0xbfea1b26d2c0a75e, // 0.57831, -0.81581
+ 0x3fe26d054cdd12df, 0xbfea29a7a0462782, // 0.57581, -0.81758
+ 0x3fe258734cbb7110, 0xbfea38184a593bc6, // 0.5733, -0.81935
+ 0x3fe243d5fb98ac1f, 0xbfea4678c8119ac8, // 0.57078, -0.8211
+ 0x3fe22f2d662c13e1, 0xbfea54c91090f524, // 0.56826, -0.82285
+ 0x3fe21a799933eb58, 0xbfea63091b02fae2, // 0.56573, -0.82459
+ 0x3fe205baa17560d6, 0xbfea7138de9d60f5, // 0.5632, -0.82632
+ 0x3fe1f0f08bbc861b, 0xbfea7f58529fe69d, // 0.56066, -0.82805
+ 0x3fe1dc1b64dc4872, 0xbfea8d676e545ad2, // 0.55812, -0.82976
+ 0x3fe1c73b39ae68c8, 0xbfea9b66290ea1a3, // 0.55557, -0.83147
+ 0x3fe1b250171373be, 0xbfeaa9547a2cb98e, // 0.55302, -0.83317
+ 0x3fe19d5a09f2b9b8, 0xbfeab7325916c0d4, // 0.55046, -0.83486
+ 0x3fe188591f3a46e5, 0xbfeac4ffbd3efac8, // 0.54789, -0.83655
+ 0x3fe1734d63dedb49, 0xbfead2bc9e21d511, // 0.54532, -0.83822
+ 0x3fe15e36e4dbe2bc, 0xbfeae068f345ecef, // 0.54275, -0.83989
+ 0x3fe14915af336ceb, 0xbfeaee04b43c1474, // 0.54017, -0.84155
+ 0x3fe133e9cfee254e, 0xbfeafb8fd89f57b6, // 0.53759, -0.84321
+ 0x3fe11eb3541b4b22, 0xbfeb090a58150200, // 0.535, -0.84485
+ 0x3fe1097248d0a956, 0xbfeb16742a4ca2f5, // 0.5324, -0.84649
+ 0x3fe0f426bb2a8e7d, 0xbfeb23cd470013b4, // 0.5298, -0.84812
+ 0x3fe0ded0b84bc4b5, 0xbfeb3115a5f37bf4, // 0.5272, -0.84974
+ 0x3fe0c9704d5d898f, 0xbfeb3e4d3ef55712, // 0.52459, -0.85136
+ 0x3fe0b405878f85ec, 0xbfeb4b7409de7925, // 0.52198, -0.85296
+ 0x3fe09e907417c5e1, 0xbfeb5889fe921405, // 0.51936, -0.85456
+ 0x3fe089112032b08c, 0xbfeb658f14fdbc47, // 0.51673, -0.85615
+ 0x3fe073879922ffed, 0xbfeb728345196e3e, // 0.5141, -0.85773
+ 0x3fe05df3ec31b8b6, 0xbfeb7f6686e792ea, // 0.51147, -0.8593
+ 0x3fe0485626ae221a, 0xbfeb8c38d27504e9, // 0.50883, -0.86087
+ 0x3fe032ae55edbd95, 0xbfeb98fa1fd9155e, // 0.50619, -0.86242
+ 0x3fe01cfc874c3eb7, 0xbfeba5aa673590d2, // 0.50354, -0.86397
+ 0x3fe00740c82b82e0, 0xbfebb249a0b6c40d, // 0.50089, -0.86551
+ 0x3fdfe2f64be7120f, 0xbfebbed7c49380ea, // 0.49823, -0.86705
+ 0x3fdfb7575c24d2de, 0xbfebcb54cb0d2327, // 0.49557, -0.86857
+ 0x3fdf8ba4dbf89aba, 0xbfebd7c0ac6f952a, // 0.4929, -0.87009
+ 0x3fdf5fdee656cda3, 0xbfebe41b611154c1, // 0.49023, -0.8716
+ 0x3fdf3405963fd068, 0xbfebf064e15377dd, // 0.48755, -0.87309
+ 0x3fdf081906bff7fd, 0xbfebfc9d25a1b147, // 0.48487, -0.87459
+ 0x3fdedc1952ef78d5, 0xbfec08c426725549, // 0.48218, -0.87607
+ 0x3fdeb00695f25620, 0xbfec14d9dc465e58, // 0.47949, -0.87755
+ 0x3fde83e0eaf85113, 0xbfec20de3fa971b0, // 0.4768, -0.87901
+ 0x3fde57a86d3cd824, 0xbfec2cd14931e3f1, // 0.4741, -0.88047
+ 0x3fde2b5d3806f63b, 0xbfec38b2f180bdb1, // 0.4714, -0.88192
+ 0x3fddfeff66a941de, 0xbfec44833141c004, // 0.46869, -0.88336
+ 0x3fddd28f1481cc58, 0xbfec5042012b6907, // 0.46598, -0.8848
+ 0x3fdda60c5cfa10d8, 0xbfec5bef59fef85a, // 0.46326, -0.88622
+ 0x3fdd79775b86e389, 0xbfec678b3488739b, // 0.46054, -0.88764
+ 0x3fdd4cd02ba8609c, 0xbfec7315899eaad7, // 0.45781, -0.88905
+ 0x3fdd2016e8e9db5b, 0xbfec7e8e52233cf3, // 0.45508, -0.89045
+ 0x3fdcf34baee1cd21, 0xbfec89f587029c13, // 0.45235, -0.89184
+ 0x3fdcc66e9931c45d, 0xbfec954b213411f5, // 0.44961, -0.89322
+ 0x3fdc997fc3865388, 0xbfeca08f19b9c449, // 0.44687, -0.8946
+ 0x3fdc6c7f4997000a, 0xbfecabc169a0b901, // 0.44412, -0.89597
+ 0x3fdc3f6d47263129, 0xbfecb6e20a00da99, // 0.44137, -0.89732
+ 0x3fdc1249d8011ee7, 0xbfecc1f0f3fcfc5c, // 0.43862, -0.89867
+ 0x3fdbe51517ffc0d9, 0xbfecccee20c2de9f, // 0.43586, -0.90002
+ 0x3fdbb7cf2304bd01, 0xbfecd7d9898b32f6, // 0.43309, -0.90135
+ 0x3fdb8a7814fd5693, 0xbfece2b32799a060, // 0.43033, -0.90267
+ 0x3fdb5d1009e15cc0, 0xbfeced7af43cc773, // 0.42756, -0.90399
+ 0x3fdb2f971db31972, 0xbfecf830e8ce467b, // 0.42478, -0.9053
+ 0x3fdb020d6c7f4009, 0xbfed02d4feb2bd92, // 0.422, -0.9066
+ 0x3fdad473125cdc08, 0xbfed0d672f59d2b9, // 0.41922, -0.90789
+ 0x3fdaa6c82b6d3fc9, 0xbfed17e7743e35dc, // 0.41643, -0.90917
+ 0x3fda790cd3dbf31a, 0xbfed2255c6e5a4e1, // 0.41364, -0.91044
+ 0x3fda4b4127dea1e4, 0xbfed2cb220e0ef9f, // 0.41084, -0.91171
+ 0x3fda1d6543b50ac0, 0xbfed36fc7bcbfbdc, // 0.40804, -0.91296
+ 0x3fd9ef7943a8ed8a, 0xbfed4134d14dc93a, // 0.40524, -0.91421
+ 0x3fd9c17d440df9f2, 0xbfed4b5b1b187524, // 0.40243, -0.91545
+ 0x3fd993716141bdfe, 0xbfed556f52e93eb1, // 0.39962, -0.91668
+ 0x3fd96555b7ab948f, 0xbfed5f7172888a7f, // 0.39681, -0.9179
+ 0x3fd9372a63bc93d7, 0xbfed696173c9e68b, // 0.39399, -0.91911
+ 0x3fd908ef81ef7bd1, 0xbfed733f508c0dff, // 0.39117, -0.92032
+ 0x3fd8daa52ec8a4af, 0xbfed7d0b02b8ecf9, // 0.38835, -0.92151
+ 0x3fd8ac4b86d5ed44, 0xbfed86c48445a450, // 0.38552, -0.9227
+ 0x3fd87de2a6aea963, 0xbfed906bcf328d46, // 0.38268, -0.92388
+ 0x3fd84f6aaaf3903f, 0xbfed9a00dd8b3d46, // 0.37985, -0.92505
+ 0x3fd820e3b04eaac4, 0xbfeda383a9668988, // 0.37701, -0.92621
+ 0x3fd7f24dd37341e3, 0xbfedacf42ce68ab9, // 0.37416, -0.92736
+ 0x3fd7c3a9311dcce7, 0xbfedb6526238a09b, // 0.37132, -0.92851
+ 0x3fd794f5e613dfae, 0xbfedbf9e4395759a, // 0.36847, -0.92964
+ 0x3fd766340f2418f6, 0xbfedc8d7cb410260, // 0.36561, -0.93077
+ 0x3fd73763c9261092, 0xbfedd1fef38a915a, // 0.36276, -0.93188
+ 0x3fd7088530fa459e, 0xbfeddb13b6ccc23d, // 0.3599, -0.93299
+ 0x3fd6d998638a0cb5, 0xbfede4160f6d8d81, // 0.35703, -0.93409
+ 0x3fd6aa9d7dc77e16, 0xbfeded05f7de47da, // 0.35416, -0.93518
+ 0x3fd67b949cad63ca, 0xbfedf5e36a9ba59c, // 0.35129, -0.93627
+ 0x3fd64c7ddd3f27c6, 0xbfedfeae622dbe2b, // 0.34842, -0.93734
+ 0x3fd61d595c88c203, 0xbfee0766d9280f54, // 0.34554, -0.9384
+ 0x3fd5ee27379ea693, 0xbfee100cca2980ac, // 0.34266, -0.93946
+ 0x3fd5bee78b9db3b6, 0xbfee18a02fdc66d9, // 0.33978, -0.94051
+ 0x3fd58f9a75ab1fdd, 0xbfee212104f686e5, // 0.33689, -0.94154
+ 0x3fd5604012f467b4, 0xbfee298f4439197a, // 0.334, -0.94257
+ 0x3fd530d880af3c24, 0xbfee31eae870ce25, // 0.33111, -0.94359
+ 0x3fd50163dc197047, 0xbfee3a33ec75ce85, // 0.32821, -0.9446
+ 0x3fd4d1e24278e76a, 0xbfee426a4b2bc17e, // 0.32531, -0.94561
+ 0x3fd4a253d11b82f3, 0xbfee4a8dff81ce5e, // 0.32241, -0.9466
+ 0x3fd472b8a5571054, 0xbfee529f04729ffc, // 0.3195, -0.94759
+ 0x3fd44310dc8936f0, 0xbfee5a9d550467d3, // 0.31659, -0.94856
+ 0x3fd4135c94176602, 0xbfee6288ec48e112, // 0.31368, -0.94953
+ 0x3fd3e39be96ec271, 0xbfee6a61c55d53a7, // 0.31077, -0.95049
+ 0x3fd3b3cefa0414b7, 0xbfee7227db6a9744, // 0.30785, -0.95144
+ 0x3fd383f5e353b6aa, 0xbfee79db29a5165a, // 0.30493, -0.95238
+ 0x3fd35410c2e18152, 0xbfee817bab4cd10d, // 0.30201, -0.95331
+ 0x3fd3241fb638baaf, 0xbfee89095bad6025, // 0.29908, -0.95423
+ 0x3fd2f422daec0386, 0xbfee9084361df7f3, // 0.29615, -0.95514
+ 0x3fd2c41a4e954520, 0xbfee97ec36016b30, // 0.29322, -0.95605
+ 0x3fd294062ed59f05, 0xbfee9f4156c62dda, // 0.29028, -0.95694
+ 0x3fd263e6995554ba, 0xbfeea68393e65800, // 0.28735, -0.95783
+ 0x3fd233bbabc3bb72, 0xbfeeadb2e8e7a88e, // 0.28441, -0.9587
+ 0x3fd2038583d727bd, 0xbfeeb4cf515b8811, // 0.28146, -0.95957
+ 0x3fd1d3443f4cdb3d, 0xbfeebbd8c8df0b74, // 0.27852, -0.96043
+ 0x3fd1a2f7fbe8f243, 0xbfeec2cf4b1af6b2, // 0.27557, -0.96128
+ 0x3fd172a0d7765177, 0xbfeec9b2d3c3bf84, // 0.27262, -0.96212
+ 0x3fd1423eefc69378, 0xbfeed0835e999009, // 0.26967, -0.96295
+ 0x3fd111d262b1f677, 0xbfeed740e7684963, // 0.26671, -0.96378
+ 0x3fd0e15b4e1749cd, 0xbfeeddeb6a078651, // 0.26375, -0.96459
+ 0x3fd0b0d9cfdbdb90, 0xbfeee482e25a9dbc, // 0.26079, -0.96539
+ 0x3fd0804e05eb661e, 0xbfeeeb074c50a544, // 0.25783, -0.96619
+ 0x3fd04fb80e37fdae, 0xbfeef178a3e473c2, // 0.25487, -0.96698
+ 0x3fd01f1806b9fdd2, 0xbfeef7d6e51ca3c0, // 0.2519, -0.96775
+ 0x3fcfdcdc1adfedf8, 0xbfeefe220c0b95ec, // 0.24893, -0.96852
+ 0x3fcf7b7480bd3801, 0xbfef045a14cf738c, // 0.24596, -0.96928
+ 0x3fcf19f97b215f1a, 0xbfef0a7efb9230d7, // 0.24298, -0.97003
+ 0x3fceb86b462de348, 0xbfef1090bc898f5f, // 0.24, -0.97077
+ 0x3fce56ca1e101a1b, 0xbfef168f53f7205d, // 0.23702, -0.9715
+ 0x3fcdf5163f01099a, 0xbfef1c7abe284708, // 0.23404, -0.97223
+ 0x3fcd934fe5454311, 0xbfef2252f7763ada, // 0.23106, -0.97294
+ 0x3fcd31774d2cbdee, 0xbfef2817fc4609ce, // 0.22807, -0.97364
+ 0x3fcccf8cb312b286, 0xbfef2dc9c9089a9d, // 0.22508, -0.97434
+ 0x3fcc6d90535d74dc, 0xbfef33685a3aaef0, // 0.22209, -0.97503
+ 0x3fcc0b826a7e4f63, 0xbfef38f3ac64e589, // 0.2191, -0.9757
+ 0x3fcba96334f15dad, 0xbfef3e6bbc1bbc65, // 0.21611, -0.97637
+ 0x3fcb4732ef3d6722, 0xbfef43d085ff92dd, // 0.21311, -0.97703
+ 0x3fcae4f1d5f3b9ab, 0xbfef492206bcabb4, // 0.21011, -0.97768
+ 0x3fca82a025b00451, 0xbfef4e603b0b2f2d, // 0.20711, -0.97832
+ 0x3fca203e1b1831da, 0xbfef538b1faf2d07, // 0.20411, -0.97895
+ 0x3fc9bdcbf2dc4366, 0xbfef58a2b1789e84, // 0.2011, -0.97957
+ 0x3fc95b49e9b62af9, 0xbfef5da6ed43685d, // 0.1981, -0.98018
+ 0x3fc8f8b83c69a60a, 0xbfef6297cff75cb0, // 0.19509, -0.98079
+ 0x3fc8961727c41804, 0xbfef677556883cee, // 0.19208, -0.98138
+ 0x3fc83366e89c64c5, 0xbfef6c3f7df5bbb7, // 0.18907, -0.98196
+ 0x3fc7d0a7bbd2cb1b, 0xbfef70f6434b7eb7, // 0.18606, -0.98254
+ 0x3fc76dd9de50bf31, 0xbfef7599a3a12077, // 0.18304, -0.98311
+ 0x3fc70afd8d08c4ff, 0xbfef7a299c1a322a, // 0.18002, -0.98366
+ 0x3fc6a81304f64ab2, 0xbfef7ea629e63d6e, // 0.177, -0.98421
+ 0x3fc6451a831d830d, 0xbfef830f4a40c60c, // 0.17398, -0.98475
+ 0x3fc5e214448b3fc6, 0xbfef8764fa714ba9, // 0.17096, -0.98528
+ 0x3fc57f008654cbde, 0xbfef8ba737cb4b78, // 0.16794, -0.9858
+ 0x3fc51bdf8597c5f2, 0xbfef8fd5ffae41db, // 0.16491, -0.98631
+ 0x3fc4b8b17f79fa88, 0xbfef93f14f85ac08, // 0.16189, -0.98681
+ 0x3fc45576b1293e5a, 0xbfef97f924c9099b, // 0.15886, -0.9873
+ 0x3fc3f22f57db4893, 0xbfef9bed7cfbde29, // 0.15583, -0.98778
+ 0x3fc38edbb0cd8d14, 0xbfef9fce55adb2c8, // 0.1528, -0.98826
+ 0x3fc32b7bf94516a7, 0xbfefa39bac7a1791, // 0.14976, -0.98872
+ 0x3fc2c8106e8e613a, 0xbfefa7557f08a517, // 0.14673, -0.98918
+ 0x3fc264994dfd340a, 0xbfefaafbcb0cfddc, // 0.1437, -0.98962
+ 0x3fc20116d4ec7bce, 0xbfefae8e8e46cfbb, // 0.14066, -0.99006
+ 0x3fc19d8940be24e7, 0xbfefb20dc681d54d, // 0.13762, -0.99049
+ 0x3fc139f0cedaf576, 0xbfefb5797195d741, // 0.13458, -0.9909
+ 0x3fc0d64dbcb26786, 0xbfefb8d18d66adb7, // 0.13154, -0.99131
+ 0x3fc072a047ba831d, 0xbfefbc1617e44186, // 0.1285, -0.99171
+ 0x3fc00ee8ad6fb85b, 0xbfefbf470f0a8d88, // 0.12545, -0.9921
+ 0x3fbf564e56a9730e, 0xbfefc26470e19fd3, // 0.12241, -0.99248
+ 0x3fbe8eb7fde4aa3e, 0xbfefc56e3b7d9af6, // 0.11937, -0.99285
+ 0x3fbdc70ecbae9fc8, 0xbfefc8646cfeb721, // 0.11632, -0.99321
+ 0x3fbcff533b307dc1, 0xbfefcb4703914354, // 0.11327, -0.99356
+ 0x3fbc3785c79ec2d5, 0xbfefce15fd6da67b, // 0.11022, -0.99391
+ 0x3fbb6fa6ec38f64c, 0xbfefd0d158d86087, // 0.10717, -0.99424
+ 0x3fbaa7b724495c04, 0xbfefd37914220b84, // 0.10412, -0.99456
+ 0x3fb9dfb6eb24a85c, 0xbfefd60d2da75c9e, // 0.10107, -0.99488
+ 0x3fb917a6bc29b42c, 0xbfefd88da3d12526, // 0.098017, -0.99518
+ 0x3fb84f8712c130a0, 0xbfefdafa7514538c, // 0.094963, -0.99548
+ 0x3fb787586a5d5b21, 0xbfefdd539ff1f456, // 0.091909, -0.99577
+ 0x3fb6bf1b3e79b129, 0xbfefdf9922f73307, // 0.088854, -0.99604
+ 0x3fb5f6d00a9aa419, 0xbfefe1cafcbd5b09, // 0.085797, -0.99631
+ 0x3fb52e774a4d4d0a, 0xbfefe3e92be9d886, // 0.08274, -0.99657
+ 0x3fb4661179272096, 0xbfefe5f3af2e3940, // 0.079682, -0.99682
+ 0x3fb39d9f12c5a299, 0xbfefe7ea85482d60, // 0.076624, -0.99706
+ 0x3fb2d52092ce19f6, 0xbfefe9cdad01883a, // 0.073565, -0.99729
+ 0x3fb20c9674ed444c, 0xbfefeb9d2530410f, // 0.070505, -0.99751
+ 0x3fb1440134d709b2, 0xbfefed58ecb673c4, // 0.067444, -0.99772
+ 0x3fb07b614e463064, 0xbfefef0102826191, // 0.064383, -0.99793
+ 0x3faf656e79f820e0, 0xbfeff095658e71ad, // 0.061321, -0.99812
+ 0x3fadd406f9808ec8, 0xbfeff21614e131ed, // 0.058258, -0.9983
+ 0x3fac428d12c0d7e3, 0xbfeff3830f8d575c, // 0.055195, -0.99848
+ 0x3faab101bd5f8317, 0xbfeff4dc54b1bed3, // 0.052132, -0.99864
+ 0x3fa91f65f10dd814, 0xbfeff621e3796d7e, // 0.049068, -0.9988
+ 0x3fa78dbaa5874685, 0xbfeff753bb1b9164, // 0.046003, -0.99894
+ 0x3fa5fc00d290cd43, 0xbfeff871dadb81df, // 0.042938, -0.99908
+ 0x3fa46a396ff86179, 0xbfeff97c4208c014, // 0.039873, -0.9992
+ 0x3fa2d865759455cd, 0xbfeffa72effef75d, // 0.036807, -0.99932
+ 0x3fa14685db42c17e, 0xbfeffb55e425fdae, // 0.033741, -0.99943
+ 0x3f9f693731d1cf01, 0xbfeffc251df1d3f8, // 0.030675, -0.99953
+ 0x3f9c454f4ce53b1c, 0xbfeffce09ce2a679, // 0.027608, -0.99962
+ 0x3f992155f7a3667e, 0xbfeffd886084cd0d, // 0.024541, -0.9997
+ 0x3f95fd4d21fab226, 0xbfeffe1c6870cb77, // 0.021474, -0.99977
+ 0x3f92d936bbe30efd, 0xbfeffe9cb44b51a1, // 0.018407, -0.99983
+ 0x3f8f6a296ab997ca, 0xbfefff0943c53bd1, // 0.015339, -0.99988
+ 0x3f8921d1fcdec784, 0xbfefff62169b92db, // 0.012272, -0.99992
+ 0x3f82d96b0e509703, 0xbfefffa72c978c4f, //0.0092038, -0.99996
+ 0x3f7921f0fe670071, 0xbfefffd8858e8a92, //0.0061359, -0.99998
+ 0x3f6921f8becca4ba, 0xbfeffff621621d02, // 0.003068, -1
+};
+#endif /* !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) */
+
+#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || defined(ARM_TABLE_TWIDDLECOEF_RFFT_F64_4096)
+const uint64_t twiddleCoefF64_rfft_4096[4096] = {
+ 0x0000000000000000, 0x3ff0000000000000, // 0, 1
+ 0x3f5921faaee6472d, 0x3feffffd88586ee6, // 0.001534, 1
+ 0x3f6921f8becca4ba, 0x3feffff621621d02, // 0.003068, 1
+ 0x3f72d97822f996bc, 0x3fefffe9cb1e2e8d, //0.0046019, 0.99999
+ 0x3f7921f0fe670071, 0x3fefffd8858e8a92, //0.0061359, 0.99998
+ 0x3f7f6a65f9a2a3c5, 0x3fefffc250b5daef, //0.0076698, 0.99997
+ 0x3f82d96b0e509703, 0x3fefffa72c978c4f, //0.0092038, 0.99996
+ 0x3f85fda037ac05e0, 0x3fefff871937ce2f, // 0.010738, 0.99994
+ 0x3f8921d1fcdec784, 0x3fefff62169b92db, // 0.012272, 0.99992
+ 0x3f8c45ffe1e48ad9, 0x3fefff3824c88f6f, // 0.013805, 0.9999
+ 0x3f8f6a296ab997ca, 0x3fefff0943c53bd1, // 0.015339, 0.99988
+ 0x3f9147270dad7132, 0x3feffed57398d2b7, // 0.016873, 0.99986
+ 0x3f92d936bbe30efd, 0x3feffe9cb44b51a1, // 0.018407, 0.99983
+ 0x3f946b4381fce81c, 0x3feffe5f05e578db, // 0.01994, 0.9998
+ 0x3f95fd4d21fab226, 0x3feffe1c6870cb77, // 0.021474, 0.99977
+ 0x3f978f535ddc9f03, 0x3feffdd4dbf78f52, // 0.023008, 0.99974
+ 0x3f992155f7a3667e, 0x3feffd886084cd0d, // 0.024541, 0.9997
+ 0x3f9ab354b1504fca, 0x3feffd36f624500c, // 0.026075, 0.99966
+ 0x3f9c454f4ce53b1c, 0x3feffce09ce2a679, // 0.027608, 0.99962
+ 0x3f9dd7458c64ab39, 0x3feffc8554cd213a, // 0.029142, 0.99958
+ 0x3f9f693731d1cf01, 0x3feffc251df1d3f8, // 0.030675, 0.99953
+ 0x3fa07d91ff984580, 0x3feffbbff85f9515, // 0.032208, 0.99948
+ 0x3fa14685db42c17e, 0x3feffb55e425fdae, // 0.033741, 0.99943
+ 0x3fa20f770ceb11c6, 0x3feffae6e1556998, // 0.035274, 0.99938
+ 0x3fa2d865759455cd, 0x3feffa72effef75d, // 0.036807, 0.99932
+ 0x3fa3a150f6421afc, 0x3feff9fa10348837, // 0.03834, 0.99926
+ 0x3fa46a396ff86179, 0x3feff97c4208c014, // 0.039873, 0.9992
+ 0x3fa5331ec3bba0eb, 0x3feff8f9858f058b, // 0.041406, 0.99914
+ 0x3fa5fc00d290cd43, 0x3feff871dadb81df, // 0.042938, 0.99908
+ 0x3fa6c4df7d7d5b84, 0x3feff7e5420320f9, // 0.044471, 0.99901
+ 0x3fa78dbaa5874685, 0x3feff753bb1b9164, // 0.046003, 0.99894
+ 0x3fa856922bb513c1, 0x3feff6bd463b444d, // 0.047535, 0.99887
+ 0x3fa91f65f10dd814, 0x3feff621e3796d7e, // 0.049068, 0.9988
+ 0x3fa9e835d6993c87, 0x3feff58192ee0358, // 0.0506, 0.99872
+ 0x3faab101bd5f8317, 0x3feff4dc54b1bed3, // 0.052132, 0.99864
+ 0x3fab79c986698b78, 0x3feff43228de1b77, // 0.053664, 0.99856
+ 0x3fac428d12c0d7e3, 0x3feff3830f8d575c, // 0.055195, 0.99848
+ 0x3fad0b4c436f91d0, 0x3feff2cf08da7321, // 0.056727, 0.99839
+ 0x3fadd406f9808ec8, 0x3feff21614e131ed, // 0.058258, 0.9983
+ 0x3fae9cbd15ff5527, 0x3feff15833be1965, // 0.05979, 0.99821
+ 0x3faf656e79f820e0, 0x3feff095658e71ad, // 0.061321, 0.99812
+ 0x3fb0170d833bf421, 0x3fefefcdaa704562, // 0.062852, 0.99802
+ 0x3fb07b614e463064, 0x3fefef0102826191, // 0.064383, 0.99793
+ 0x3fb0dfb28ea201e6, 0x3fefee2f6de455ba, // 0.065913, 0.99783
+ 0x3fb1440134d709b2, 0x3fefed58ecb673c4, // 0.067444, 0.99772
+ 0x3fb1a84d316d4f8a, 0x3fefec7d7f19cffc, // 0.068974, 0.99762
+ 0x3fb20c9674ed444c, 0x3fefeb9d2530410f, // 0.070505, 0.99751
+ 0x3fb270dcefdfc45b, 0x3fefeab7df1c6005, // 0.072035, 0.9974
+ 0x3fb2d52092ce19f6, 0x3fefe9cdad01883a, // 0.073565, 0.99729
+ 0x3fb339614e41ffa5, 0x3fefe8de8f03d75c, // 0.075094, 0.99718
+ 0x3fb39d9f12c5a299, 0x3fefe7ea85482d60, // 0.076624, 0.99706
+ 0x3fb401d9d0e3a507, 0x3fefe6f18ff42c84, // 0.078153, 0.99694
+ 0x3fb4661179272096, 0x3fefe5f3af2e3940, // 0.079682, 0.99682
+ 0x3fb4ca45fc1ba8b6, 0x3fefe4f0e31d7a4a, // 0.081211, 0.9967
+ 0x3fb52e774a4d4d0a, 0x3fefe3e92be9d886, // 0.08274, 0.99657
+ 0x3fb592a554489bc8, 0x3fefe2dc89bbff08, // 0.084269, 0.99644
+ 0x3fb5f6d00a9aa419, 0x3fefe1cafcbd5b09, // 0.085797, 0.99631
+ 0x3fb65af75dd0f87b, 0x3fefe0b485181be3, // 0.087326, 0.99618
+ 0x3fb6bf1b3e79b129, 0x3fefdf9922f73307, // 0.088854, 0.99604
+ 0x3fb7233b9d236e71, 0x3fefde78d68653fd, // 0.090381, 0.99591
+ 0x3fb787586a5d5b21, 0x3fefdd539ff1f456, // 0.091909, 0.99577
+ 0x3fb7eb7196b72ee4, 0x3fefdc297f674ba9, // 0.093436, 0.99563
+ 0x3fb84f8712c130a0, 0x3fefdafa7514538c, // 0.094963, 0.99548
+ 0x3fb8b398cf0c38e0, 0x3fefd9c68127c78c, // 0.09649, 0.99533
+ 0x3fb917a6bc29b42c, 0x3fefd88da3d12526, // 0.098017, 0.99518
+ 0x3fb97bb0caaba56f, 0x3fefd74fdd40abbf, // 0.099544, 0.99503
+ 0x3fb9dfb6eb24a85c, 0x3fefd60d2da75c9e, // 0.10107, 0.99488
+ 0x3fba43b90e27f3c4, 0x3fefd4c59536fae4, // 0.1026, 0.99472
+ 0x3fbaa7b724495c04, 0x3fefd37914220b84, // 0.10412, 0.99456
+ 0x3fbb0bb11e1d5559, 0x3fefd227aa9bd53b, // 0.10565, 0.9944
+ 0x3fbb6fa6ec38f64c, 0x3fefd0d158d86087, // 0.10717, 0.99424
+ 0x3fbbd3987f31fa0e, 0x3fefcf761f0c77a3, // 0.1087, 0.99407
+ 0x3fbc3785c79ec2d5, 0x3fefce15fd6da67b, // 0.11022, 0.99391
+ 0x3fbc9b6eb6165c42, 0x3fefccb0f4323aa3, // 0.11175, 0.99374
+ 0x3fbcff533b307dc1, 0x3fefcb4703914354, // 0.11327, 0.99356
+ 0x3fbd633347858ce4, 0x3fefc9d82bc2915e, // 0.11479, 0.99339
+ 0x3fbdc70ecbae9fc8, 0x3fefc8646cfeb721, // 0.11632, 0.99321
+ 0x3fbe2ae5b8457f77, 0x3fefc6ebc77f0887, // 0.11784, 0.99303
+ 0x3fbe8eb7fde4aa3e, 0x3fefc56e3b7d9af6, // 0.11937, 0.99285
+ 0x3fbef2858d27561b, 0x3fefc3ebc935454c, // 0.12089, 0.99267
+ 0x3fbf564e56a9730e, 0x3fefc26470e19fd3, // 0.12241, 0.99248
+ 0x3fbfba124b07ad85, 0x3fefc0d832bf043a, // 0.12393, 0.99229
+ 0x3fc00ee8ad6fb85b, 0x3fefbf470f0a8d88, // 0.12545, 0.9921
+ 0x3fc040c5bb67747e, 0x3fefbdb106021816, // 0.12698, 0.99191
+ 0x3fc072a047ba831d, 0x3fefbc1617e44186, // 0.1285, 0.99171
+ 0x3fc0a4784ab8bf1d, 0x3fefba7644f068b5, // 0.13002, 0.99151
+ 0x3fc0d64dbcb26786, 0x3fefb8d18d66adb7, // 0.13154, 0.99131
+ 0x3fc1082095f820b0, 0x3fefb727f187f1c7, // 0.13306, 0.99111
+ 0x3fc139f0cedaf576, 0x3fefb5797195d741, // 0.13458, 0.9909
+ 0x3fc16bbe5fac5865, 0x3fefb3c60dd2c199, // 0.1361, 0.9907
+ 0x3fc19d8940be24e7, 0x3fefb20dc681d54d, // 0.13762, 0.99049
+ 0x3fc1cf516a62a077, 0x3fefb0509be6f7db, // 0.13914, 0.99027
+ 0x3fc20116d4ec7bce, 0x3fefae8e8e46cfbb, // 0.14066, 0.99006
+ 0x3fc232d978aed413, 0x3fefacc79de6c44f, // 0.14218, 0.98984
+ 0x3fc264994dfd340a, 0x3fefaafbcb0cfddc, // 0.1437, 0.98962
+ 0x3fc296564d2b953e, 0x3fefa92b1600657c, // 0.14521, 0.9894
+ 0x3fc2c8106e8e613a, 0x3fefa7557f08a517, // 0.14673, 0.98918
+ 0x3fc2f9c7aa7a72af, 0x3fefa57b066e2754, // 0.14825, 0.98895
+ 0x3fc32b7bf94516a7, 0x3fefa39bac7a1791, // 0.14976, 0.98872
+ 0x3fc35d2d53440db2, 0x3fefa1b7717661d5, // 0.15128, 0.98849
+ 0x3fc38edbb0cd8d14, 0x3fef9fce55adb2c8, // 0.1528, 0.98826
+ 0x3fc3c0870a383ff6, 0x3fef9de0596b77a3, // 0.15431, 0.98802
+ 0x3fc3f22f57db4893, 0x3fef9bed7cfbde29, // 0.15583, 0.98778
+ 0x3fc423d4920e4166, 0x3fef99f5c0abd496, // 0.15734, 0.98754
+ 0x3fc45576b1293e5a, 0x3fef97f924c9099b, // 0.15886, 0.9873
+ 0x3fc48715ad84cdf5, 0x3fef95f7a9a1ec47, // 0.16037, 0.98706
+ 0x3fc4b8b17f79fa88, 0x3fef93f14f85ac08, // 0.16189, 0.98681
+ 0x3fc4ea4a1f624b61, 0x3fef91e616c43891, // 0.1634, 0.98656
+ 0x3fc51bdf8597c5f2, 0x3fef8fd5ffae41db, // 0.16491, 0.98631
+ 0x3fc54d71aa74ef02, 0x3fef8dc10a95380d, // 0.16643, 0.98605
+ 0x3fc57f008654cbde, 0x3fef8ba737cb4b78, // 0.16794, 0.9858
+ 0x3fc5b08c1192e381, 0x3fef898887a36c84, // 0.16945, 0.98554
+ 0x3fc5e214448b3fc6, 0x3fef8764fa714ba9, // 0.17096, 0.98528
+ 0x3fc61399179a6e94, 0x3fef853c9089595e, // 0.17247, 0.98501
+ 0x3fc6451a831d830d, 0x3fef830f4a40c60c, // 0.17398, 0.98475
+ 0x3fc676987f7216b8, 0x3fef80dd27ed8204, // 0.17549, 0.98448
+ 0x3fc6a81304f64ab2, 0x3fef7ea629e63d6e, // 0.177, 0.98421
+ 0x3fc6d98a0c08c8da, 0x3fef7c6a50826840, // 0.17851, 0.98394
+ 0x3fc70afd8d08c4ff, 0x3fef7a299c1a322a, // 0.18002, 0.98366
+ 0x3fc73c6d8055fe0a, 0x3fef77e40d068a90, // 0.18153, 0.98339
+ 0x3fc76dd9de50bf31, 0x3fef7599a3a12077, // 0.18304, 0.98311
+ 0x3fc79f429f59e11d, 0x3fef734a60446279, // 0.18455, 0.98282
+ 0x3fc7d0a7bbd2cb1b, 0x3fef70f6434b7eb7, // 0.18606, 0.98254
+ 0x3fc802092c1d744b, 0x3fef6e9d4d1262ca, // 0.18756, 0.98225
+ 0x3fc83366e89c64c5, 0x3fef6c3f7df5bbb7, // 0.18907, 0.98196
+ 0x3fc864c0e9b2b6cf, 0x3fef69dcd652f5de, // 0.19057, 0.98167
+ 0x3fc8961727c41804, 0x3fef677556883cee, // 0.19208, 0.98138
+ 0x3fc8c7699b34ca7e, 0x3fef6508fef47bd5, // 0.19359, 0.98108
+ 0x3fc8f8b83c69a60a, 0x3fef6297cff75cb0, // 0.19509, 0.98079
+ 0x3fc92a0303c8194f, 0x3fef6021c9f148c2, // 0.19659, 0.98048
+ 0x3fc95b49e9b62af9, 0x3fef5da6ed43685d, // 0.1981, 0.98018
+ 0x3fc98c8ce69a7aec, 0x3fef5b273a4fa2d9, // 0.1996, 0.97988
+ 0x3fc9bdcbf2dc4366, 0x3fef58a2b1789e84, // 0.2011, 0.97957
+ 0x3fc9ef0706e35a35, 0x3fef56195321c090, // 0.20261, 0.97926
+ 0x3fca203e1b1831da, 0x3fef538b1faf2d07, // 0.20411, 0.97895
+ 0x3fca517127e3dabc, 0x3fef50f81785c6b9, // 0.20561, 0.97863
+ 0x3fca82a025b00451, 0x3fef4e603b0b2f2d, // 0.20711, 0.97832
+ 0x3fcab3cb0ce6fe44, 0x3fef4bc38aa5c694, // 0.20861, 0.978
+ 0x3fcae4f1d5f3b9ab, 0x3fef492206bcabb4, // 0.21011, 0.97768
+ 0x3fcb16147941ca2a, 0x3fef467bafb7bbe0, // 0.21161, 0.97735
+ 0x3fcb4732ef3d6722, 0x3fef43d085ff92dd, // 0.21311, 0.97703
+ 0x3fcb784d30536cda, 0x3fef412089fd8adc, // 0.21461, 0.9767
+ 0x3fcba96334f15dad, 0x3fef3e6bbc1bbc65, // 0.21611, 0.97637
+ 0x3fcbda74f5856330, 0x3fef3bb21cc4fe47, // 0.2176, 0.97604
+ 0x3fcc0b826a7e4f63, 0x3fef38f3ac64e589, // 0.2191, 0.9757
+ 0x3fcc3c8b8c4b9dd7, 0x3fef36306b67c556, // 0.2206, 0.97536
+ 0x3fcc6d90535d74dc, 0x3fef33685a3aaef0, // 0.22209, 0.97503
+ 0x3fcc9e90b824a6a9, 0x3fef309b794b719f, // 0.22359, 0.97468
+ 0x3fcccf8cb312b286, 0x3fef2dc9c9089a9d, // 0.22508, 0.97434
+ 0x3fcd00843c99c5f9, 0x3fef2af349e17507, // 0.22658, 0.97399
+ 0x3fcd31774d2cbdee, 0x3fef2817fc4609ce, // 0.22807, 0.97364
+ 0x3fcd6265dd3f27e3, 0x3fef2537e0a71f9f, // 0.22957, 0.97329
+ 0x3fcd934fe5454311, 0x3fef2252f7763ada, // 0.23106, 0.97294
+ 0x3fcdc4355db40195, 0x3fef1f6941259d7a, // 0.23255, 0.97258
+ 0x3fcdf5163f01099a, 0x3fef1c7abe284708, // 0.23404, 0.97223
+ 0x3fce25f281a2b684, 0x3fef19876ef1f486, // 0.23553, 0.97187
+ 0x3fce56ca1e101a1b, 0x3fef168f53f7205d, // 0.23702, 0.9715
+ 0x3fce879d0cc0fdaf, 0x3fef13926dad024e, // 0.23851, 0.97114
+ 0x3fceb86b462de348, 0x3fef1090bc898f5f, // 0.24, 0.97077
+ 0x3fcee934c2d006c7, 0x3fef0d8a410379c5, // 0.24149, 0.9704
+ 0x3fcf19f97b215f1a, 0x3fef0a7efb9230d7, // 0.24298, 0.97003
+ 0x3fcf4ab9679c9f5c, 0x3fef076eecade0fa, // 0.24447, 0.96966
+ 0x3fcf7b7480bd3801, 0x3fef045a14cf738c, // 0.24596, 0.96928
+ 0x3fcfac2abeff57ff, 0x3fef014074708ed3, // 0.24744, 0.9689
+ 0x3fcfdcdc1adfedf8, 0x3feefe220c0b95ec, // 0.24893, 0.96852
+ 0x3fd006c4466e54af, 0x3feefafedc1ba8b7, // 0.25041, 0.96814
+ 0x3fd01f1806b9fdd2, 0x3feef7d6e51ca3c0, // 0.2519, 0.96775
+ 0x3fd037694a928cac, 0x3feef4aa278b2032, // 0.25338, 0.96737
+ 0x3fd04fb80e37fdae, 0x3feef178a3e473c2, // 0.25487, 0.96698
+ 0x3fd068044deab002, 0x3feeee425aa6b09a, // 0.25635, 0.96658
+ 0x3fd0804e05eb661e, 0x3feeeb074c50a544, // 0.25783, 0.96619
+ 0x3fd09895327b465e, 0x3feee7c77961dc9e, // 0.25931, 0.96579
+ 0x3fd0b0d9cfdbdb90, 0x3feee482e25a9dbc, // 0.26079, 0.96539
+ 0x3fd0c91bda4f158d, 0x3feee13987bbebdc, // 0.26227, 0.96499
+ 0x3fd0e15b4e1749cd, 0x3feeddeb6a078651, // 0.26375, 0.96459
+ 0x3fd0f998277733f7, 0x3feeda9889bfe86a, // 0.26523, 0.96418
+ 0x3fd111d262b1f677, 0x3feed740e7684963, // 0.26671, 0.96378
+ 0x3fd12a09fc0b1b12, 0x3feed3e483849c51, // 0.26819, 0.96337
+ 0x3fd1423eefc69378, 0x3feed0835e999009, // 0.26967, 0.96295
+ 0x3fd15a713a28b9d9, 0x3feecd1d792c8f10, // 0.27115, 0.96254
+ 0x3fd172a0d7765177, 0x3feec9b2d3c3bf84, // 0.27262, 0.96212
+ 0x3fd18acdc3f4873a, 0x3feec6436ee60309, // 0.2741, 0.9617
+ 0x3fd1a2f7fbe8f243, 0x3feec2cf4b1af6b2, // 0.27557, 0.96128
+ 0x3fd1bb1f7b999480, 0x3feebf5668eaf2ef, // 0.27705, 0.96086
+ 0x3fd1d3443f4cdb3d, 0x3feebbd8c8df0b74, // 0.27852, 0.96043
+ 0x3fd1eb6643499fbb, 0x3feeb8566b810f2a, // 0.27999, 0.96
+ 0x3fd2038583d727bd, 0x3feeb4cf515b8811, // 0.28146, 0.95957
+ 0x3fd21ba1fd3d2623, 0x3feeb1437af9bb34, // 0.28294, 0.95914
+ 0x3fd233bbabc3bb72, 0x3feeadb2e8e7a88e, // 0.28441, 0.9587
+ 0x3fd24bd28bb37672, 0x3feeaa1d9bb20af3, // 0.28588, 0.95827
+ 0x3fd263e6995554ba, 0x3feea68393e65800, // 0.28735, 0.95783
+ 0x3fd27bf7d0f2c346, 0x3feea2e4d212c000, // 0.28882, 0.95738
+ 0x3fd294062ed59f05, 0x3fee9f4156c62dda, // 0.29028, 0.95694
+ 0x3fd2ac11af483572, 0x3fee9b99229046f8, // 0.29175, 0.95649
+ 0x3fd2c41a4e954520, 0x3fee97ec36016b30, // 0.29322, 0.95605
+ 0x3fd2dc200907fe51, 0x3fee943a91aab4b4, // 0.29469, 0.95559
+ 0x3fd2f422daec0386, 0x3fee9084361df7f3, // 0.29615, 0.95514
+ 0x3fd30c22c08d6a13, 0x3fee8cc923edc388, // 0.29762, 0.95469
+ 0x3fd3241fb638baaf, 0x3fee89095bad6025, // 0.29908, 0.95423
+ 0x3fd33c19b83af207, 0x3fee8544ddf0d075, // 0.30054, 0.95377
+ 0x3fd35410c2e18152, 0x3fee817bab4cd10d, // 0.30201, 0.95331
+ 0x3fd36c04d27a4edf, 0x3fee7dadc456d850, // 0.30347, 0.95284
+ 0x3fd383f5e353b6aa, 0x3fee79db29a5165a, // 0.30493, 0.95238
+ 0x3fd39be3f1bc8aef, 0x3fee7603dbce74e9, // 0.30639, 0.95191
+ 0x3fd3b3cefa0414b7, 0x3fee7227db6a9744, // 0.30785, 0.95144
+ 0x3fd3cbb6f87a146e, 0x3fee6e472911da27, // 0.30931, 0.95096
+ 0x3fd3e39be96ec271, 0x3fee6a61c55d53a7, // 0.31077, 0.95049
+ 0x3fd3fb7dc932cfa4, 0x3fee6677b0e6d31e, // 0.31222, 0.95001
+ 0x3fd4135c94176602, 0x3fee6288ec48e112, // 0.31368, 0.94953
+ 0x3fd42b38466e2928, 0x3fee5e95781ebf1c, // 0.31514, 0.94905
+ 0x3fd44310dc8936f0, 0x3fee5a9d550467d3, // 0.31659, 0.94856
+ 0x3fd45ae652bb2800, 0x3fee56a083968eb1, // 0.31805, 0.94807
+ 0x3fd472b8a5571054, 0x3fee529f04729ffc, // 0.3195, 0.94759
+ 0x3fd48a87d0b07fd7, 0x3fee4e98d836c0af, // 0.32096, 0.94709
+ 0x3fd4a253d11b82f3, 0x3fee4a8dff81ce5e, // 0.32241, 0.9466
+ 0x3fd4ba1ca2eca31c, 0x3fee467e7af35f23, // 0.32386, 0.94611
+ 0x3fd4d1e24278e76a, 0x3fee426a4b2bc17e, // 0.32531, 0.94561
+ 0x3fd4e9a4ac15d520, 0x3fee3e5170cbfc46, // 0.32676, 0.94511
+ 0x3fd50163dc197047, 0x3fee3a33ec75ce85, // 0.32821, 0.9446
+ 0x3fd5191fceda3c35, 0x3fee3611becbaf69, // 0.32966, 0.9441
+ 0x3fd530d880af3c24, 0x3fee31eae870ce25, // 0.33111, 0.94359
+ 0x3fd5488dedeff3be, 0x3fee2dbf6a0911d9, // 0.33255, 0.94308
+ 0x3fd5604012f467b4, 0x3fee298f4439197a, // 0.334, 0.94257
+ 0x3fd577eeec151e47, 0x3fee255a77a63bb8, // 0.33545, 0.94206
+ 0x3fd58f9a75ab1fdd, 0x3fee212104f686e5, // 0.33689, 0.94154
+ 0x3fd5a742ac0ff78d, 0x3fee1ce2ecd0c0d8, // 0.33833, 0.94103
+ 0x3fd5bee78b9db3b6, 0x3fee18a02fdc66d9, // 0.33978, 0.94051
+ 0x3fd5d68910aee686, 0x3fee1458cec1ad83, // 0.34122, 0.93998
+ 0x3fd5ee27379ea693, 0x3fee100cca2980ac, // 0.34266, 0.93946
+ 0x3fd605c1fcc88f63, 0x3fee0bbc22bd8349, // 0.3441, 0.93893
+ 0x3fd61d595c88c203, 0x3fee0766d9280f54, // 0.34554, 0.9384
+ 0x3fd634ed533be58e, 0x3fee030cee1435b8, // 0.34698, 0.93787
+ 0x3fd64c7ddd3f27c6, 0x3fedfeae622dbe2b, // 0.34842, 0.93734
+ 0x3fd6640af6f03d9e, 0x3fedfa4b3621271d, // 0.34986, 0.9368
+ 0x3fd67b949cad63ca, 0x3fedf5e36a9ba59c, // 0.35129, 0.93627
+ 0x3fd6931acad55f51, 0x3fedf177004b2534, // 0.35273, 0.93573
+ 0x3fd6aa9d7dc77e16, 0x3feded05f7de47da, // 0.35416, 0.93518
+ 0x3fd6c21cb1e39771, 0x3fede890520465ce, // 0.3556, 0.93464
+ 0x3fd6d998638a0cb5, 0x3fede4160f6d8d81, // 0.35703, 0.93409
+ 0x3fd6f1108f1bc9c5, 0x3feddf9730ca837b, // 0.35846, 0.93354
+ 0x3fd7088530fa459e, 0x3feddb13b6ccc23d, // 0.3599, 0.93299
+ 0x3fd71ff6458782ec, 0x3fedd68ba2267a25, // 0.36133, 0.93244
+ 0x3fd73763c9261092, 0x3fedd1fef38a915a, // 0.36276, 0.93188
+ 0x3fd74ecdb8390a3e, 0x3fedcd6dabaca3a5, // 0.36418, 0.93133
+ 0x3fd766340f2418f6, 0x3fedc8d7cb410260, // 0.36561, 0.93077
+ 0x3fd77d96ca4b73a6, 0x3fedc43d52fcb453, // 0.36704, 0.93021
+ 0x3fd794f5e613dfae, 0x3fedbf9e4395759a, // 0.36847, 0.92964
+ 0x3fd7ac515ee2b172, 0x3fedbafa9dc1b78d, // 0.36989, 0.92907
+ 0x3fd7c3a9311dcce7, 0x3fedb6526238a09b, // 0.37132, 0.92851
+ 0x3fd7dafd592ba621, 0x3fedb1a591b20c38, // 0.37274, 0.92794
+ 0x3fd7f24dd37341e3, 0x3fedacf42ce68ab9, // 0.37416, 0.92736
+ 0x3fd8099a9c5c362d, 0x3feda83e348f613b, // 0.37559, 0.92679
+ 0x3fd820e3b04eaac4, 0x3feda383a9668988, // 0.37701, 0.92621
+ 0x3fd838290bb359c8, 0x3fed9ec48c26b1f3, // 0.37843, 0.92563
+ 0x3fd84f6aaaf3903f, 0x3fed9a00dd8b3d46, // 0.37985, 0.92505
+ 0x3fd866a88a792ea0, 0x3fed95389e50429b, // 0.38127, 0.92447
+ 0x3fd87de2a6aea963, 0x3fed906bcf328d46, // 0.38268, 0.92388
+ 0x3fd89518fbff098e, 0x3fed8b9a70ef9cb4, // 0.3841, 0.92329
+ 0x3fd8ac4b86d5ed44, 0x3fed86c48445a450, // 0.38552, 0.9227
+ 0x3fd8c37a439f884f, 0x3fed81ea09f38b63, // 0.38693, 0.92211
+ 0x3fd8daa52ec8a4af, 0x3fed7d0b02b8ecf9, // 0.38835, 0.92151
+ 0x3fd8f1cc44bea329, 0x3fed78276f5617c6, // 0.38976, 0.92092
+ 0x3fd908ef81ef7bd1, 0x3fed733f508c0dff, // 0.39117, 0.92032
+ 0x3fd9200ee2c9be97, 0x3fed6e52a71c8547, // 0.39258, 0.91972
+ 0x3fd9372a63bc93d7, 0x3fed696173c9e68b, // 0.39399, 0.91911
+ 0x3fd94e420137bce3, 0x3fed646bb7574de5, // 0.3954, 0.91851
+ 0x3fd96555b7ab948f, 0x3fed5f7172888a7f, // 0.39681, 0.9179
+ 0x3fd97c6583890fc2, 0x3fed5a72a6221e73, // 0.39822, 0.91729
+ 0x3fd993716141bdfe, 0x3fed556f52e93eb1, // 0.39962, 0.91668
+ 0x3fd9aa794d47c9ee, 0x3fed506779a3d2d9, // 0.40103, 0.91606
+ 0x3fd9c17d440df9f2, 0x3fed4b5b1b187524, // 0.40243, 0.91545
+ 0x3fd9d87d4207b0ab, 0x3fed464a380e7242, // 0.40384, 0.91483
+ 0x3fd9ef7943a8ed8a, 0x3fed4134d14dc93a, // 0.40524, 0.91421
+ 0x3fda067145664d57, 0x3fed3c1ae79f2b4e, // 0.40664, 0.91359
+ 0x3fda1d6543b50ac0, 0x3fed36fc7bcbfbdc, // 0.40804, 0.91296
+ 0x3fda34553b0afee5, 0x3fed31d98e9e503a, // 0.40944, 0.91234
+ 0x3fda4b4127dea1e4, 0x3fed2cb220e0ef9f, // 0.41084, 0.91171
+ 0x3fda622906a70b63, 0x3fed2786335f52fc, // 0.41224, 0.91107
+ 0x3fda790cd3dbf31a, 0x3fed2255c6e5a4e1, // 0.41364, 0.91044
+ 0x3fda8fec8bf5b166, 0x3fed1d20dc40c15c, // 0.41503, 0.90981
+ 0x3fdaa6c82b6d3fc9, 0x3fed17e7743e35dc, // 0.41643, 0.90917
+ 0x3fdabd9faebc3980, 0x3fed12a98fac410c, // 0.41782, 0.90853
+ 0x3fdad473125cdc08, 0x3fed0d672f59d2b9, // 0.41922, 0.90789
+ 0x3fdaeb4252ca07ab, 0x3fed082054168bac, // 0.42061, 0.90724
+ 0x3fdb020d6c7f4009, 0x3fed02d4feb2bd92, // 0.422, 0.9066
+ 0x3fdb18d45bf8aca6, 0x3fecfd852fff6ad4, // 0.42339, 0.90595
+ 0x3fdb2f971db31972, 0x3fecf830e8ce467b, // 0.42478, 0.9053
+ 0x3fdb4655ae2bf757, 0x3fecf2d829f1b40e, // 0.42617, 0.90464
+ 0x3fdb5d1009e15cc0, 0x3feced7af43cc773, // 0.42756, 0.90399
+ 0x3fdb73c62d520624, 0x3fece819488344ce, // 0.42894, 0.90333
+ 0x3fdb8a7814fd5693, 0x3fece2b32799a060, // 0.43033, 0.90267
+ 0x3fdba125bd63583e, 0x3fecdd489254fe65, // 0.43171, 0.90201
+ 0x3fdbb7cf2304bd01, 0x3fecd7d9898b32f6, // 0.43309, 0.90135
+ 0x3fdbce744262deee, 0x3fecd2660e12c1e6, // 0.43448, 0.90068
+ 0x3fdbe51517ffc0d9, 0x3fecccee20c2de9f, // 0.43586, 0.90002
+ 0x3fdbfbb1a05e0edc, 0x3fecc771c2736c09, // 0.43724, 0.89935
+ 0x3fdc1249d8011ee7, 0x3fecc1f0f3fcfc5c, // 0.43862, 0.89867
+ 0x3fdc28ddbb6cf145, 0x3fecbc6bb638d10b, // 0.43999, 0.898
+ 0x3fdc3f6d47263129, 0x3fecb6e20a00da99, // 0.44137, 0.89732
+ 0x3fdc55f877b23537, 0x3fecb153f02fb87d, // 0.44275, 0.89665
+ 0x3fdc6c7f4997000a, 0x3fecabc169a0b901, // 0.44412, 0.89597
+ 0x3fdc8301b95b40c2, 0x3feca62a772fd919, // 0.4455, 0.89528
+ 0x3fdc997fc3865388, 0x3feca08f19b9c449, // 0.44687, 0.8946
+ 0x3fdcaff964a0421d, 0x3fec9aef521bd480, // 0.44824, 0.89391
+ 0x3fdcc66e9931c45d, 0x3fec954b213411f5, // 0.44961, 0.89322
+ 0x3fdcdcdf5dc440ce, 0x3fec8fa287e13305, // 0.45098, 0.89253
+ 0x3fdcf34baee1cd21, 0x3fec89f587029c13, // 0.45235, 0.89184
+ 0x3fdd09b389152ec1, 0x3fec84441f785f61, // 0.45372, 0.89115
+ 0x3fdd2016e8e9db5b, 0x3fec7e8e52233cf3, // 0.45508, 0.89045
+ 0x3fdd3675caebf962, 0x3fec78d41fe4a267, // 0.45645, 0.88975
+ 0x3fdd4cd02ba8609c, 0x3fec7315899eaad7, // 0.45781, 0.88905
+ 0x3fdd632607ac9aa9, 0x3fec6d5290341eb2, // 0.45918, 0.88835
+ 0x3fdd79775b86e389, 0x3fec678b3488739b, // 0.46054, 0.88764
+ 0x3fdd8fc423c62a25, 0x3fec61bf777fcc48, // 0.4619, 0.88693
+ 0x3fdda60c5cfa10d8, 0x3fec5bef59fef85a, // 0.46326, 0.88622
+ 0x3fddbc5003b2edf8, 0x3fec561adceb743e, // 0.46462, 0.88551
+ 0x3fddd28f1481cc58, 0x3fec5042012b6907, // 0.46598, 0.8848
+ 0x3fdde8c98bf86bd6, 0x3fec4a64c7a5ac4c, // 0.46733, 0.88408
+ 0x3fddfeff66a941de, 0x3fec44833141c004, // 0.46869, 0.88336
+ 0x3fde1530a12779f4, 0x3fec3e9d3ee7d262, // 0.47004, 0.88264
+ 0x3fde2b5d3806f63b, 0x3fec38b2f180bdb1, // 0.4714, 0.88192
+ 0x3fde418527dc4ffa, 0x3fec32c449f60831, // 0.47275, 0.8812
+ 0x3fde57a86d3cd824, 0x3fec2cd14931e3f1, // 0.4741, 0.88047
+ 0x3fde6dc704be97e2, 0x3fec26d9f01f2eaf, // 0.47545, 0.87974
+ 0x3fde83e0eaf85113, 0x3fec20de3fa971b0, // 0.4768, 0.87901
+ 0x3fde99f61c817eda, 0x3fec1ade38bce19b, // 0.47815, 0.87828
+ 0x3fdeb00695f25620, 0x3fec14d9dc465e58, // 0.47949, 0.87755
+ 0x3fdec61253e3c61b, 0x3fec0ed12b3372e9, // 0.48084, 0.87681
+ 0x3fdedc1952ef78d5, 0x3fec08c426725549, // 0.48218, 0.87607
+ 0x3fdef21b8fafd3b5, 0x3fec02b2cef1e641, // 0.48353, 0.87533
+ 0x3fdf081906bff7fd, 0x3febfc9d25a1b147, // 0.48487, 0.87459
+ 0x3fdf1e11b4bbc35c, 0x3febf6832b71ec5b, // 0.48621, 0.87384
+ 0x3fdf3405963fd068, 0x3febf064e15377dd, // 0.48755, 0.87309
+ 0x3fdf49f4a7e97729, 0x3febea424837de6d, // 0.48889, 0.87235
+ 0x3fdf5fdee656cda3, 0x3febe41b611154c1, // 0.49023, 0.8716
+ 0x3fdf75c44e26a852, 0x3febddf02cd2b983, // 0.49156, 0.87084
+ 0x3fdf8ba4dbf89aba, 0x3febd7c0ac6f952a, // 0.4929, 0.87009
+ 0x3fdfa1808c6cf7e0, 0x3febd18ce0dc19d6, // 0.49423, 0.86933
+ 0x3fdfb7575c24d2de, 0x3febcb54cb0d2327, // 0.49557, 0.86857
+ 0x3fdfcd2947c1ff57, 0x3febc5186bf8361d, // 0.4969, 0.86781
+ 0x3fdfe2f64be7120f, 0x3febbed7c49380ea, // 0.49823, 0.86705
+ 0x3fdff8be6537615e, 0x3febb892d5d5dad5, // 0.49956, 0.86628
+ 0x3fe00740c82b82e0, 0x3febb249a0b6c40d, // 0.50089, 0.86551
+ 0x3fe0121fe4f56d2c, 0x3febabfc262e6586, // 0.50221, 0.86474
+ 0x3fe01cfc874c3eb7, 0x3feba5aa673590d2, // 0.50354, 0.86397
+ 0x3fe027d6ad83287e, 0x3feb9f5464c5bffc, // 0.50486, 0.8632
+ 0x3fe032ae55edbd95, 0x3feb98fa1fd9155e, // 0.50619, 0.86242
+ 0x3fe03d837edff370, 0x3feb929b996a5b7f, // 0.50751, 0.86165
+ 0x3fe0485626ae221a, 0x3feb8c38d27504e9, // 0.50883, 0.86087
+ 0x3fe053264bad0483, 0x3feb85d1cbf52c02, // 0.51015, 0.86009
+ 0x3fe05df3ec31b8b6, 0x3feb7f6686e792ea, // 0.51147, 0.8593
+ 0x3fe068bf0691c028, 0x3feb78f70449a34b, // 0.51279, 0.85852
+ 0x3fe073879922ffed, 0x3feb728345196e3e, // 0.5141, 0.85773
+ 0x3fe07e4da23bc102, 0x3feb6c0b4a55ac17, // 0.51542, 0.85694
+ 0x3fe089112032b08c, 0x3feb658f14fdbc47, // 0.51673, 0.85615
+ 0x3fe093d2115ee018, 0x3feb5f0ea611a532, // 0.51804, 0.85535
+ 0x3fe09e907417c5e1, 0x3feb5889fe921405, // 0.51936, 0.85456
+ 0x3fe0a94c46b53d0b, 0x3feb52011f805c92, // 0.52067, 0.85376
+ 0x3fe0b405878f85ec, 0x3feb4b7409de7925, // 0.52198, 0.85296
+ 0x3fe0bebc34ff4646, 0x3feb44e2beaf0a61, // 0.52328, 0.85216
+ 0x3fe0c9704d5d898f, 0x3feb3e4d3ef55712, // 0.52459, 0.85136
+ 0x3fe0d421cf03c12b, 0x3feb37b38bb54c09, // 0.5259, 0.85055
+ 0x3fe0ded0b84bc4b5, 0x3feb3115a5f37bf4, // 0.5272, 0.84974
+ 0x3fe0e97d078fd23b, 0x3feb2a738eb51f33, // 0.5285, 0.84893
+ 0x3fe0f426bb2a8e7d, 0x3feb23cd470013b4, // 0.5298, 0.84812
+ 0x3fe0fecdd1770537, 0x3feb1d22cfdadcc6, // 0.5311, 0.84731
+ 0x3fe1097248d0a956, 0x3feb16742a4ca2f5, // 0.5324, 0.84649
+ 0x3fe114141f935545, 0x3feb0fc1575d33db, // 0.5337, 0.84567
+ 0x3fe11eb3541b4b22, 0x3feb090a58150200, // 0.535, 0.84485
+ 0x3fe1294fe4c5350a, 0x3feb024f2d7d24a9, // 0.53629, 0.84403
+ 0x3fe133e9cfee254e, 0x3feafb8fd89f57b6, // 0.53759, 0.84321
+ 0x3fe13e8113f396c1, 0x3feaf4cc5a85fb73, // 0.53888, 0.84238
+ 0x3fe14915af336ceb, 0x3feaee04b43c1474, // 0.54017, 0.84155
+ 0x3fe153a7a00bf453, 0x3feae738e6cd4b67, // 0.54146, 0.84073
+ 0x3fe15e36e4dbe2bc, 0x3feae068f345ecef, // 0.54275, 0.83989
+ 0x3fe168c37c025764, 0x3fead994dab2e979, // 0.54404, 0.83906
+ 0x3fe1734d63dedb49, 0x3fead2bc9e21d511, // 0.54532, 0.83822
+ 0x3fe17dd49ad16161, 0x3feacbe03ea0e73b, // 0.54661, 0.83739
+ 0x3fe188591f3a46e5, 0x3feac4ffbd3efac8, // 0.54789, 0.83655
+ 0x3fe192daef7a5386, 0x3feabe1b1b0b8dac, // 0.54918, 0.83571
+ 0x3fe19d5a09f2b9b8, 0x3feab7325916c0d4, // 0.55046, 0.83486
+ 0x3fe1a7d66d0516e6, 0x3feab045787157ff, // 0.55174, 0.83402
+ 0x3fe1b250171373be, 0x3feaa9547a2cb98e, // 0.55302, 0.83317
+ 0x3fe1bcc706804467, 0x3feaa25f5f5aee60, // 0.55429, 0.83232
+ 0x3fe1c73b39ae68c8, 0x3fea9b66290ea1a3, // 0.55557, 0.83147
+ 0x3fe1d1acaf012cc2, 0x3fea9468d85b20ae, // 0.55685, 0.83062
+ 0x3fe1dc1b64dc4872, 0x3fea8d676e545ad2, // 0.55812, 0.82976
+ 0x3fe1e68759a3e074, 0x3fea8661ec0ee133, // 0.55939, 0.8289
+ 0x3fe1f0f08bbc861b, 0x3fea7f58529fe69d, // 0.56066, 0.82805
+ 0x3fe1fb56f98b37b8, 0x3fea784aa31d3f55, // 0.56193, 0.82718
+ 0x3fe205baa17560d6, 0x3fea7138de9d60f5, // 0.5632, 0.82632
+ 0x3fe2101b81e0da78, 0x3fea6a230637623b, // 0.56447, 0.82546
+ 0x3fe21a799933eb58, 0x3fea63091b02fae2, // 0.56573, 0.82459
+ 0x3fe224d4e5d5482e, 0x3fea5beb1e188375, // 0.567, 0.82372
+ 0x3fe22f2d662c13e1, 0x3fea54c91090f524, // 0.56826, 0.82285
+ 0x3fe23983189fdfd5, 0x3fea4da2f385e997, // 0.56952, 0.82198
+ 0x3fe243d5fb98ac1f, 0x3fea4678c8119ac8, // 0.57078, 0.8211
+ 0x3fe24e260d7ee7c9, 0x3fea3f4a8f4ee2d2, // 0.57204, 0.82023
+ 0x3fe258734cbb7110, 0x3fea38184a593bc6, // 0.5733, 0.81935
+ 0x3fe262bdb7b795a2, 0x3fea30e1fa4cbf81, // 0.57455, 0.81847
+ 0x3fe26d054cdd12df, 0x3fea29a7a0462782, // 0.57581, 0.81758
+ 0x3fe2774a0a961612, 0x3fea22693d62ccb9, // 0.57706, 0.8167
+ 0x3fe2818bef4d3cba, 0x3fea1b26d2c0a75e, // 0.57831, 0.81581
+ 0x3fe28bcaf96d94ba, 0x3fea13e0617e4ec7, // 0.57956, 0.81493
+ 0x3fe2960727629ca8, 0x3fea0c95eabaf937, // 0.58081, 0.81404
+ 0x3fe2a040779843fb, 0x3fea05476f967bb5, // 0.58206, 0.81314
+ 0x3fe2aa76e87aeb58, 0x3fe9fdf4f13149de, // 0.58331, 0.81225
+ 0x3fe2b4aa787764c4, 0x3fe9f69e70ac75bc, // 0.58455, 0.81135
+ 0x3fe2bedb25faf3ea, 0x3fe9ef43ef29af94, // 0.5858, 0.81046
+ 0x3fe2c908ef734e57, 0x3fe9e7e56dcb45bd, // 0.58704, 0.80956
+ 0x3fe2d333d34e9bb7, 0x3fe9e082edb42472, // 0.58828, 0.80866
+ 0x3fe2dd5bcffb7616, 0x3fe9d91c7007d5a6, // 0.58952, 0.80775
+ 0x3fe2e780e3e8ea16, 0x3fe9d1b1f5ea80d6, // 0.59076, 0.80685
+ 0x3fe2f1a30d86773a, 0x3fe9ca438080eadb, // 0.592, 0.80594
+ 0x3fe2fbc24b441015, 0x3fe9c2d110f075c3, // 0.59323, 0.80503
+ 0x3fe305de9b921a94, 0x3fe9bb5aa85f2098, // 0.59447, 0.80412
+ 0x3fe30ff7fce17035, 0x3fe9b3e047f38741, // 0.5957, 0.80321
+ 0x3fe31a0e6da35e44, 0x3fe9ac61f0d4e247, // 0.59693, 0.80229
+ 0x3fe32421ec49a620, 0x3fe9a4dfa42b06b2, // 0.59816, 0.80138
+ 0x3fe32e3277467d6b, 0x3fe99d59631e65d5, // 0.59939, 0.80046
+ 0x3fe338400d0c8e57, 0x3fe995cf2ed80d22, // 0.60062, 0.79954
+ 0x3fe3424aac0ef7d6, 0x3fe98e410881a600, // 0.60184, 0.79861
+ 0x3fe34c5252c14de1, 0x3fe986aef1457594, // 0.60307, 0.79769
+ 0x3fe35656ff9799ae, 0x3fe97f18ea4e5c9e, // 0.60429, 0.79676
+ 0x3fe36058b10659f3, 0x3fe9777ef4c7d742, // 0.60551, 0.79584
+ 0x3fe36a576582831b, 0x3fe96fe111ddfce0, // 0.60673, 0.79491
+ 0x3fe374531b817f8d, 0x3fe9683f42bd7fe1, // 0.60795, 0.79398
+ 0x3fe37e4bd1792fe2, 0x3fe960998893ad8c, // 0.60917, 0.79304
+ 0x3fe3884185dfeb22, 0x3fe958efe48e6dd7, // 0.61038, 0.79211
+ 0x3fe39234372c7f04, 0x3fe9514257dc4335, // 0.6116, 0.79117
+ 0x3fe39c23e3d63029, 0x3fe94990e3ac4a6c, // 0.61281, 0.79023
+ 0x3fe3a6108a54ba58, 0x3fe941db892e3a65, // 0.61402, 0.78929
+ 0x3fe3affa292050b9, 0x3fe93a22499263fc, // 0.61523, 0.78835
+ 0x3fe3b9e0beb19e18, 0x3fe932652609b1cf, // 0.61644, 0.7874
+ 0x3fe3c3c44981c517, 0x3fe92aa41fc5a815, // 0.61765, 0.78646
+ 0x3fe3cda4c80a6076, 0x3fe922df37f8646a, // 0.61885, 0.78551
+ 0x3fe3d78238c58343, 0x3fe91b166fd49da2, // 0.62006, 0.78456
+ 0x3fe3e15c9a2db922, 0x3fe91349c88da398, // 0.62126, 0.7836
+ 0x3fe3eb33eabe0680, 0x3fe90b7943575efe, // 0.62246, 0.78265
+ 0x3fe3f50828f1e8d2, 0x3fe903a4e1665133, // 0.62366, 0.78169
+ 0x3fe3fed9534556d4, 0x3fe8fbcca3ef940d, // 0.62486, 0.78074
+ 0x3fe408a76834c0c0, 0x3fe8f3f08c28d9ac, // 0.62606, 0.77978
+ 0x3fe41272663d108c, 0x3fe8ec109b486c49, // 0.62725, 0.77882
+ 0x3fe41c3a4bdbaa26, 0x3fe8e42cd2852e0a, // 0.62845, 0.77785
+ 0x3fe425ff178e6bb1, 0x3fe8dc45331698cc, // 0.62964, 0.77689
+ 0x3fe42fc0c7d3adbb, 0x3fe8d459be34bdfa, // 0.63083, 0.77592
+ 0x3fe4397f5b2a4380, 0x3fe8cc6a75184655, // 0.63202, 0.77495
+ 0x3fe4433ad0117b1d, 0x3fe8c47758fa71cb, // 0.63321, 0.77398
+ 0x3fe44cf325091dd6, 0x3fe8bc806b151741, // 0.63439, 0.77301
+ 0x3fe456a858917046, 0x3fe8b485aca2a468, // 0.63558, 0.77204
+ 0x3fe4605a692b32a2, 0x3fe8ac871ede1d88, // 0.63676, 0.77106
+ 0x3fe46a095557a0f1, 0x3fe8a484c3031d50, // 0.63794, 0.77008
+ 0x3fe473b51b987347, 0x3fe89c7e9a4dd4ab, // 0.63912, 0.7691
+ 0x3fe47d5dba6fde01, 0x3fe89474a5fb0a84, // 0.6403, 0.76812
+ 0x3fe48703306091fe, 0x3fe88c66e7481ba1, // 0.64148, 0.76714
+ 0x3fe490a57bedbcdf, 0x3fe884555f72fa6b, // 0.64266, 0.76615
+ 0x3fe49a449b9b0938, 0x3fe87c400fba2ebf, // 0.64383, 0.76517
+ 0x3fe4a3e08dec9ed6, 0x3fe87426f95cd5bd, // 0.645, 0.76418
+ 0x3fe4ad79516722f0, 0x3fe86c0a1d9aa195, // 0.64618, 0.76319
+ 0x3fe4b70ee48fb869, 0x3fe863e97db3d95a, // 0.64735, 0.7622
+ 0x3fe4c0a145ec0004, 0x3fe85bc51ae958cc, // 0.64851, 0.7612
+ 0x3fe4ca30740218a3, 0x3fe8539cf67c9029, // 0.64968, 0.76021
+ 0x3fe4d3bc6d589f80, 0x3fe84b7111af83f9, // 0.65085, 0.75921
+ 0x3fe4dd453076b064, 0x3fe843416dc4cce2, // 0.65201, 0.75821
+ 0x3fe4e6cabbe3e5e9, 0x3fe83b0e0bff976e, // 0.65317, 0.75721
+ 0x3fe4f04d0e2859aa, 0x3fe832d6eda3a3e0, // 0.65433, 0.75621
+ 0x3fe4f9cc25cca486, 0x3fe82a9c13f545ff, // 0.65549, 0.7552
+ 0x3fe503480159ded2, 0x3fe8225d803964e5, // 0.65665, 0.75419
+ 0x3fe50cc09f59a09b, 0x3fe81a1b33b57acc, // 0.65781, 0.75319
+ 0x3fe51635fe5601d7, 0x3fe811d52faf94dc, // 0.65896, 0.75218
+ 0x3fe51fa81cd99aa6, 0x3fe8098b756e52fa, // 0.66011, 0.75117
+ 0x3fe52916f96f8388, 0x3fe8013e0638e795, // 0.66127, 0.75015
+ 0x3fe5328292a35596, 0x3fe7f8ece3571771, // 0.66242, 0.74914
+ 0x3fe53beae7012abe, 0x3fe7f0980e113978, // 0.66356, 0.74812
+ 0x3fe5454ff5159dfb, 0x3fe7e83f87b03686, // 0.66471, 0.7471
+ 0x3fe54eb1bb6dcb8f, 0x3fe7dfe3517d8937, // 0.66586, 0.74608
+ 0x3fe5581038975137, 0x3fe7d7836cc33db2, // 0.667, 0.74506
+ 0x3fe5616b6b204e6e, 0x3fe7cf1fdacbf179, // 0.66814, 0.74403
+ 0x3fe56ac35197649e, 0x3fe7c6b89ce2d333, // 0.66928, 0.74301
+ 0x3fe57417ea8bb75c, 0x3fe7be4db453a27c, // 0.67042, 0.74198
+ 0x3fe57d69348cec9f, 0x3fe7b5df226aafb0, // 0.67156, 0.74095
+ 0x3fe586b72e2b2cfd, 0x3fe7ad6ce874dbb6, // 0.67269, 0.73992
+ 0x3fe59001d5f723df, 0x3fe7a4f707bf97d2, // 0.67383, 0.73889
+ 0x3fe599492a81ffbc, 0x3fe79c7d8198e56e, // 0.67496, 0.73785
+ 0x3fe5a28d2a5d7250, 0x3fe79400574f55e4, // 0.67609, 0.73682
+ 0x3fe5abcdd41bb0d8, 0x3fe78b7f8a320a52, // 0.67722, 0.73578
+ 0x3fe5b50b264f7448, 0x3fe782fb1b90b35b, // 0.67835, 0.73474
+ 0x3fe5be451f8bf980, 0x3fe77a730cbb9100, // 0.67948, 0.7337
+ 0x3fe5c77bbe65018c, 0x3fe771e75f037261, // 0.6806, 0.73265
+ 0x3fe5d0af016ed1d4, 0x3fe7695813b9b594, // 0.68172, 0.73161
+ 0x3fe5d9dee73e345c, 0x3fe760c52c304764, // 0.68285, 0.73056
+ 0x3fe5e30b6e6877f3, 0x3fe7582ea9b9a329, // 0.68397, 0.72951
+ 0x3fe5ec3495837074, 0x3fe74f948da8d28d, // 0.68508, 0.72846
+ 0x3fe5f55a5b2576f8, 0x3fe746f6d9516d59, // 0.6862, 0.72741
+ 0x3fe5fe7cbde56a0f, 0x3fe73e558e079942, // 0.68732, 0.72636
+ 0x3fe6079bbc5aadfa, 0x3fe735b0ad2009b2, // 0.68843, 0.7253
+ 0x3fe610b7551d2cde, 0x3fe72d0837efff97, // 0.68954, 0.72425
+ 0x3fe619cf86c55702, 0x3fe7245c2fcd492a, // 0.69065, 0.72319
+ 0x3fe622e44fec22ff, 0x3fe71bac960e41bf, // 0.69176, 0.72213
+ 0x3fe62bf5af2b0dfd, 0x3fe712f96c09d18d, // 0.69287, 0.72107
+ 0x3fe63503a31c1be8, 0x3fe70a42b3176d7a, // 0.69397, 0.72
+ 0x3fe63e0e2a59d7aa, 0x3fe701886c8f16e6, // 0.69508, 0.71894
+ 0x3fe64715437f535b, 0x3fe6f8ca99c95b75, // 0.69618, 0.71787
+ 0x3fe65018ed28287f, 0x3fe6f0093c1f54de, // 0.69728, 0.7168
+ 0x3fe6591925f0783e, 0x3fe6e74454eaa8ae, // 0.69838, 0.71573
+ 0x3fe66215ec74eb91, 0x3fe6de7be585881d, // 0.69947, 0.71466
+ 0x3fe66b0f3f52b386, 0x3fe6d5afef4aafcc, // 0.70057, 0.71358
+ 0x3fe674051d27896c, 0x3fe6cce07395679f, // 0.70166, 0.71251
+ 0x3fe67cf78491af10, 0x3fe6c40d73c18275, // 0.70275, 0.71143
+ 0x3fe685e6742feeef, 0x3fe6bb36f12b5e06, // 0.70385, 0.71035
+ 0x3fe68ed1eaa19c71, 0x3fe6b25ced2fe29c, // 0.70493, 0.70927
+ 0x3fe697b9e686941c, 0x3fe6a97f692c82ea, // 0.70602, 0.70819
+ 0x3fe6a09e667f3bcc, 0x3fe6a09e667f3bcc, // 0.70711, 0.70711
+ 0x3fe6a97f692c82ea, 0x3fe697b9e686941c, // 0.70819, 0.70602
+ 0x3fe6b25ced2fe29c, 0x3fe68ed1eaa19c71, // 0.70927, 0.70493
+ 0x3fe6bb36f12b5e06, 0x3fe685e6742feeef, // 0.71035, 0.70385
+ 0x3fe6c40d73c18275, 0x3fe67cf78491af10, // 0.71143, 0.70275
+ 0x3fe6cce07395679f, 0x3fe674051d27896c, // 0.71251, 0.70166
+ 0x3fe6d5afef4aafcc, 0x3fe66b0f3f52b386, // 0.71358, 0.70057
+ 0x3fe6de7be585881d, 0x3fe66215ec74eb91, // 0.71466, 0.69947
+ 0x3fe6e74454eaa8ae, 0x3fe6591925f0783e, // 0.71573, 0.69838
+ 0x3fe6f0093c1f54de, 0x3fe65018ed28287f, // 0.7168, 0.69728
+ 0x3fe6f8ca99c95b75, 0x3fe64715437f535b, // 0.71787, 0.69618
+ 0x3fe701886c8f16e6, 0x3fe63e0e2a59d7aa, // 0.71894, 0.69508
+ 0x3fe70a42b3176d7a, 0x3fe63503a31c1be8, // 0.72, 0.69397
+ 0x3fe712f96c09d18d, 0x3fe62bf5af2b0dfd, // 0.72107, 0.69287
+ 0x3fe71bac960e41bf, 0x3fe622e44fec22ff, // 0.72213, 0.69176
+ 0x3fe7245c2fcd492a, 0x3fe619cf86c55702, // 0.72319, 0.69065
+ 0x3fe72d0837efff97, 0x3fe610b7551d2cde, // 0.72425, 0.68954
+ 0x3fe735b0ad2009b2, 0x3fe6079bbc5aadfa, // 0.7253, 0.68843
+ 0x3fe73e558e079942, 0x3fe5fe7cbde56a0f, // 0.72636, 0.68732
+ 0x3fe746f6d9516d59, 0x3fe5f55a5b2576f8, // 0.72741, 0.6862
+ 0x3fe74f948da8d28d, 0x3fe5ec3495837074, // 0.72846, 0.68508
+ 0x3fe7582ea9b9a329, 0x3fe5e30b6e6877f3, // 0.72951, 0.68397
+ 0x3fe760c52c304764, 0x3fe5d9dee73e345c, // 0.73056, 0.68285
+ 0x3fe7695813b9b594, 0x3fe5d0af016ed1d4, // 0.73161, 0.68172
+ 0x3fe771e75f037261, 0x3fe5c77bbe65018c, // 0.73265, 0.6806
+ 0x3fe77a730cbb9100, 0x3fe5be451f8bf980, // 0.7337, 0.67948
+ 0x3fe782fb1b90b35b, 0x3fe5b50b264f7448, // 0.73474, 0.67835
+ 0x3fe78b7f8a320a52, 0x3fe5abcdd41bb0d8, // 0.73578, 0.67722
+ 0x3fe79400574f55e4, 0x3fe5a28d2a5d7250, // 0.73682, 0.67609
+ 0x3fe79c7d8198e56e, 0x3fe599492a81ffbc, // 0.73785, 0.67496
+ 0x3fe7a4f707bf97d2, 0x3fe59001d5f723df, // 0.73889, 0.67383
+ 0x3fe7ad6ce874dbb6, 0x3fe586b72e2b2cfd, // 0.73992, 0.67269
+ 0x3fe7b5df226aafb0, 0x3fe57d69348cec9f, // 0.74095, 0.67156
+ 0x3fe7be4db453a27c, 0x3fe57417ea8bb75c, // 0.74198, 0.67042
+ 0x3fe7c6b89ce2d333, 0x3fe56ac35197649e, // 0.74301, 0.66928
+ 0x3fe7cf1fdacbf179, 0x3fe5616b6b204e6e, // 0.74403, 0.66814
+ 0x3fe7d7836cc33db2, 0x3fe5581038975137, // 0.74506, 0.667
+ 0x3fe7dfe3517d8937, 0x3fe54eb1bb6dcb8f, // 0.74608, 0.66586
+ 0x3fe7e83f87b03686, 0x3fe5454ff5159dfb, // 0.7471, 0.66471
+ 0x3fe7f0980e113978, 0x3fe53beae7012abe, // 0.74812, 0.66356
+ 0x3fe7f8ece3571771, 0x3fe5328292a35596, // 0.74914, 0.66242
+ 0x3fe8013e0638e795, 0x3fe52916f96f8388, // 0.75015, 0.66127
+ 0x3fe8098b756e52fa, 0x3fe51fa81cd99aa6, // 0.75117, 0.66011
+ 0x3fe811d52faf94dc, 0x3fe51635fe5601d7, // 0.75218, 0.65896
+ 0x3fe81a1b33b57acc, 0x3fe50cc09f59a09b, // 0.75319, 0.65781
+ 0x3fe8225d803964e5, 0x3fe503480159ded2, // 0.75419, 0.65665
+ 0x3fe82a9c13f545ff, 0x3fe4f9cc25cca486, // 0.7552, 0.65549
+ 0x3fe832d6eda3a3e0, 0x3fe4f04d0e2859aa, // 0.75621, 0.65433
+ 0x3fe83b0e0bff976e, 0x3fe4e6cabbe3e5e9, // 0.75721, 0.65317
+ 0x3fe843416dc4cce2, 0x3fe4dd453076b064, // 0.75821, 0.65201
+ 0x3fe84b7111af83f9, 0x3fe4d3bc6d589f80, // 0.75921, 0.65085
+ 0x3fe8539cf67c9029, 0x3fe4ca30740218a3, // 0.76021, 0.64968
+ 0x3fe85bc51ae958cc, 0x3fe4c0a145ec0004, // 0.7612, 0.64851
+ 0x3fe863e97db3d95a, 0x3fe4b70ee48fb869, // 0.7622, 0.64735
+ 0x3fe86c0a1d9aa195, 0x3fe4ad79516722f0, // 0.76319, 0.64618
+ 0x3fe87426f95cd5bd, 0x3fe4a3e08dec9ed6, // 0.76418, 0.645
+ 0x3fe87c400fba2ebf, 0x3fe49a449b9b0938, // 0.76517, 0.64383
+ 0x3fe884555f72fa6b, 0x3fe490a57bedbcdf, // 0.76615, 0.64266
+ 0x3fe88c66e7481ba1, 0x3fe48703306091fe, // 0.76714, 0.64148
+ 0x3fe89474a5fb0a84, 0x3fe47d5dba6fde01, // 0.76812, 0.6403
+ 0x3fe89c7e9a4dd4ab, 0x3fe473b51b987347, // 0.7691, 0.63912
+ 0x3fe8a484c3031d50, 0x3fe46a095557a0f1, // 0.77008, 0.63794
+ 0x3fe8ac871ede1d88, 0x3fe4605a692b32a2, // 0.77106, 0.63676
+ 0x3fe8b485aca2a468, 0x3fe456a858917046, // 0.77204, 0.63558
+ 0x3fe8bc806b151741, 0x3fe44cf325091dd6, // 0.77301, 0.63439
+ 0x3fe8c47758fa71cb, 0x3fe4433ad0117b1d, // 0.77398, 0.63321
+ 0x3fe8cc6a75184655, 0x3fe4397f5b2a4380, // 0.77495, 0.63202
+ 0x3fe8d459be34bdfa, 0x3fe42fc0c7d3adbb, // 0.77592, 0.63083
+ 0x3fe8dc45331698cc, 0x3fe425ff178e6bb1, // 0.77689, 0.62964
+ 0x3fe8e42cd2852e0a, 0x3fe41c3a4bdbaa26, // 0.77785, 0.62845
+ 0x3fe8ec109b486c49, 0x3fe41272663d108c, // 0.77882, 0.62725
+ 0x3fe8f3f08c28d9ac, 0x3fe408a76834c0c0, // 0.77978, 0.62606
+ 0x3fe8fbcca3ef940d, 0x3fe3fed9534556d4, // 0.78074, 0.62486
+ 0x3fe903a4e1665133, 0x3fe3f50828f1e8d2, // 0.78169, 0.62366
+ 0x3fe90b7943575efe, 0x3fe3eb33eabe0680, // 0.78265, 0.62246
+ 0x3fe91349c88da398, 0x3fe3e15c9a2db922, // 0.7836, 0.62126
+ 0x3fe91b166fd49da2, 0x3fe3d78238c58343, // 0.78456, 0.62006
+ 0x3fe922df37f8646a, 0x3fe3cda4c80a6076, // 0.78551, 0.61885
+ 0x3fe92aa41fc5a815, 0x3fe3c3c44981c517, // 0.78646, 0.61765
+ 0x3fe932652609b1cf, 0x3fe3b9e0beb19e18, // 0.7874, 0.61644
+ 0x3fe93a22499263fc, 0x3fe3affa292050b9, // 0.78835, 0.61523
+ 0x3fe941db892e3a65, 0x3fe3a6108a54ba58, // 0.78929, 0.61402
+ 0x3fe94990e3ac4a6c, 0x3fe39c23e3d63029, // 0.79023, 0.61281
+ 0x3fe9514257dc4335, 0x3fe39234372c7f04, // 0.79117, 0.6116
+ 0x3fe958efe48e6dd7, 0x3fe3884185dfeb22, // 0.79211, 0.61038
+ 0x3fe960998893ad8c, 0x3fe37e4bd1792fe2, // 0.79304, 0.60917
+ 0x3fe9683f42bd7fe1, 0x3fe374531b817f8d, // 0.79398, 0.60795
+ 0x3fe96fe111ddfce0, 0x3fe36a576582831b, // 0.79491, 0.60673
+ 0x3fe9777ef4c7d742, 0x3fe36058b10659f3, // 0.79584, 0.60551
+ 0x3fe97f18ea4e5c9e, 0x3fe35656ff9799ae, // 0.79676, 0.60429
+ 0x3fe986aef1457594, 0x3fe34c5252c14de1, // 0.79769, 0.60307
+ 0x3fe98e410881a600, 0x3fe3424aac0ef7d6, // 0.79861, 0.60184
+ 0x3fe995cf2ed80d22, 0x3fe338400d0c8e57, // 0.79954, 0.60062
+ 0x3fe99d59631e65d5, 0x3fe32e3277467d6b, // 0.80046, 0.59939
+ 0x3fe9a4dfa42b06b2, 0x3fe32421ec49a620, // 0.80138, 0.59816
+ 0x3fe9ac61f0d4e247, 0x3fe31a0e6da35e44, // 0.80229, 0.59693
+ 0x3fe9b3e047f38741, 0x3fe30ff7fce17035, // 0.80321, 0.5957
+ 0x3fe9bb5aa85f2098, 0x3fe305de9b921a94, // 0.80412, 0.59447
+ 0x3fe9c2d110f075c3, 0x3fe2fbc24b441015, // 0.80503, 0.59323
+ 0x3fe9ca438080eadb, 0x3fe2f1a30d86773a, // 0.80594, 0.592
+ 0x3fe9d1b1f5ea80d6, 0x3fe2e780e3e8ea16, // 0.80685, 0.59076
+ 0x3fe9d91c7007d5a6, 0x3fe2dd5bcffb7616, // 0.80775, 0.58952
+ 0x3fe9e082edb42472, 0x3fe2d333d34e9bb7, // 0.80866, 0.58828
+ 0x3fe9e7e56dcb45bd, 0x3fe2c908ef734e57, // 0.80956, 0.58704
+ 0x3fe9ef43ef29af94, 0x3fe2bedb25faf3ea, // 0.81046, 0.5858
+ 0x3fe9f69e70ac75bc, 0x3fe2b4aa787764c4, // 0.81135, 0.58455
+ 0x3fe9fdf4f13149de, 0x3fe2aa76e87aeb58, // 0.81225, 0.58331
+ 0x3fea05476f967bb5, 0x3fe2a040779843fb, // 0.81314, 0.58206
+ 0x3fea0c95eabaf937, 0x3fe2960727629ca8, // 0.81404, 0.58081
+ 0x3fea13e0617e4ec7, 0x3fe28bcaf96d94ba, // 0.81493, 0.57956
+ 0x3fea1b26d2c0a75e, 0x3fe2818bef4d3cba, // 0.81581, 0.57831
+ 0x3fea22693d62ccb9, 0x3fe2774a0a961612, // 0.8167, 0.57706
+ 0x3fea29a7a0462782, 0x3fe26d054cdd12df, // 0.81758, 0.57581
+ 0x3fea30e1fa4cbf81, 0x3fe262bdb7b795a2, // 0.81847, 0.57455
+ 0x3fea38184a593bc6, 0x3fe258734cbb7110, // 0.81935, 0.5733
+ 0x3fea3f4a8f4ee2d2, 0x3fe24e260d7ee7c9, // 0.82023, 0.57204
+ 0x3fea4678c8119ac8, 0x3fe243d5fb98ac1f, // 0.8211, 0.57078
+ 0x3fea4da2f385e997, 0x3fe23983189fdfd5, // 0.82198, 0.56952
+ 0x3fea54c91090f524, 0x3fe22f2d662c13e1, // 0.82285, 0.56826
+ 0x3fea5beb1e188375, 0x3fe224d4e5d5482e, // 0.82372, 0.567
+ 0x3fea63091b02fae2, 0x3fe21a799933eb58, // 0.82459, 0.56573
+ 0x3fea6a230637623b, 0x3fe2101b81e0da78, // 0.82546, 0.56447
+ 0x3fea7138de9d60f5, 0x3fe205baa17560d6, // 0.82632, 0.5632
+ 0x3fea784aa31d3f55, 0x3fe1fb56f98b37b8, // 0.82718, 0.56193
+ 0x3fea7f58529fe69d, 0x3fe1f0f08bbc861b, // 0.82805, 0.56066
+ 0x3fea8661ec0ee133, 0x3fe1e68759a3e074, // 0.8289, 0.55939
+ 0x3fea8d676e545ad2, 0x3fe1dc1b64dc4872, // 0.82976, 0.55812
+ 0x3fea9468d85b20ae, 0x3fe1d1acaf012cc2, // 0.83062, 0.55685
+ 0x3fea9b66290ea1a3, 0x3fe1c73b39ae68c8, // 0.83147, 0.55557
+ 0x3feaa25f5f5aee60, 0x3fe1bcc706804467, // 0.83232, 0.55429
+ 0x3feaa9547a2cb98e, 0x3fe1b250171373be, // 0.83317, 0.55302
+ 0x3feab045787157ff, 0x3fe1a7d66d0516e6, // 0.83402, 0.55174
+ 0x3feab7325916c0d4, 0x3fe19d5a09f2b9b8, // 0.83486, 0.55046
+ 0x3feabe1b1b0b8dac, 0x3fe192daef7a5386, // 0.83571, 0.54918
+ 0x3feac4ffbd3efac8, 0x3fe188591f3a46e5, // 0.83655, 0.54789
+ 0x3feacbe03ea0e73b, 0x3fe17dd49ad16161, // 0.83739, 0.54661
+ 0x3fead2bc9e21d511, 0x3fe1734d63dedb49, // 0.83822, 0.54532
+ 0x3fead994dab2e979, 0x3fe168c37c025764, // 0.83906, 0.54404
+ 0x3feae068f345ecef, 0x3fe15e36e4dbe2bc, // 0.83989, 0.54275
+ 0x3feae738e6cd4b67, 0x3fe153a7a00bf453, // 0.84073, 0.54146
+ 0x3feaee04b43c1474, 0x3fe14915af336ceb, // 0.84155, 0.54017
+ 0x3feaf4cc5a85fb73, 0x3fe13e8113f396c1, // 0.84238, 0.53888
+ 0x3feafb8fd89f57b6, 0x3fe133e9cfee254e, // 0.84321, 0.53759
+ 0x3feb024f2d7d24a9, 0x3fe1294fe4c5350a, // 0.84403, 0.53629
+ 0x3feb090a58150200, 0x3fe11eb3541b4b22, // 0.84485, 0.535
+ 0x3feb0fc1575d33db, 0x3fe114141f935545, // 0.84567, 0.5337
+ 0x3feb16742a4ca2f5, 0x3fe1097248d0a956, // 0.84649, 0.5324
+ 0x3feb1d22cfdadcc6, 0x3fe0fecdd1770537, // 0.84731, 0.5311
+ 0x3feb23cd470013b4, 0x3fe0f426bb2a8e7d, // 0.84812, 0.5298
+ 0x3feb2a738eb51f33, 0x3fe0e97d078fd23b, // 0.84893, 0.5285
+ 0x3feb3115a5f37bf4, 0x3fe0ded0b84bc4b5, // 0.84974, 0.5272
+ 0x3feb37b38bb54c09, 0x3fe0d421cf03c12b, // 0.85055, 0.5259
+ 0x3feb3e4d3ef55712, 0x3fe0c9704d5d898f, // 0.85136, 0.52459
+ 0x3feb44e2beaf0a61, 0x3fe0bebc34ff4646, // 0.85216, 0.52328
+ 0x3feb4b7409de7925, 0x3fe0b405878f85ec, // 0.85296, 0.52198
+ 0x3feb52011f805c92, 0x3fe0a94c46b53d0b, // 0.85376, 0.52067
+ 0x3feb5889fe921405, 0x3fe09e907417c5e1, // 0.85456, 0.51936
+ 0x3feb5f0ea611a532, 0x3fe093d2115ee018, // 0.85535, 0.51804
+ 0x3feb658f14fdbc47, 0x3fe089112032b08c, // 0.85615, 0.51673
+ 0x3feb6c0b4a55ac17, 0x3fe07e4da23bc102, // 0.85694, 0.51542
+ 0x3feb728345196e3e, 0x3fe073879922ffed, // 0.85773, 0.5141
+ 0x3feb78f70449a34b, 0x3fe068bf0691c028, // 0.85852, 0.51279
+ 0x3feb7f6686e792ea, 0x3fe05df3ec31b8b6, // 0.8593, 0.51147
+ 0x3feb85d1cbf52c02, 0x3fe053264bad0483, // 0.86009, 0.51015
+ 0x3feb8c38d27504e9, 0x3fe0485626ae221a, // 0.86087, 0.50883
+ 0x3feb929b996a5b7f, 0x3fe03d837edff370, // 0.86165, 0.50751
+ 0x3feb98fa1fd9155e, 0x3fe032ae55edbd95, // 0.86242, 0.50619
+ 0x3feb9f5464c5bffc, 0x3fe027d6ad83287e, // 0.8632, 0.50486
+ 0x3feba5aa673590d2, 0x3fe01cfc874c3eb7, // 0.86397, 0.50354
+ 0x3febabfc262e6586, 0x3fe0121fe4f56d2c, // 0.86474, 0.50221
+ 0x3febb249a0b6c40d, 0x3fe00740c82b82e0, // 0.86551, 0.50089
+ 0x3febb892d5d5dad5, 0x3fdff8be6537615e, // 0.86628, 0.49956
+ 0x3febbed7c49380ea, 0x3fdfe2f64be7120f, // 0.86705, 0.49823
+ 0x3febc5186bf8361d, 0x3fdfcd2947c1ff57, // 0.86781, 0.4969
+ 0x3febcb54cb0d2327, 0x3fdfb7575c24d2de, // 0.86857, 0.49557
+ 0x3febd18ce0dc19d6, 0x3fdfa1808c6cf7e0, // 0.86933, 0.49423
+ 0x3febd7c0ac6f952a, 0x3fdf8ba4dbf89aba, // 0.87009, 0.4929
+ 0x3febddf02cd2b983, 0x3fdf75c44e26a852, // 0.87084, 0.49156
+ 0x3febe41b611154c1, 0x3fdf5fdee656cda3, // 0.8716, 0.49023
+ 0x3febea424837de6d, 0x3fdf49f4a7e97729, // 0.87235, 0.48889
+ 0x3febf064e15377dd, 0x3fdf3405963fd068, // 0.87309, 0.48755
+ 0x3febf6832b71ec5b, 0x3fdf1e11b4bbc35c, // 0.87384, 0.48621
+ 0x3febfc9d25a1b147, 0x3fdf081906bff7fd, // 0.87459, 0.48487
+ 0x3fec02b2cef1e641, 0x3fdef21b8fafd3b5, // 0.87533, 0.48353
+ 0x3fec08c426725549, 0x3fdedc1952ef78d5, // 0.87607, 0.48218
+ 0x3fec0ed12b3372e9, 0x3fdec61253e3c61b, // 0.87681, 0.48084
+ 0x3fec14d9dc465e58, 0x3fdeb00695f25620, // 0.87755, 0.47949
+ 0x3fec1ade38bce19b, 0x3fde99f61c817eda, // 0.87828, 0.47815
+ 0x3fec20de3fa971b0, 0x3fde83e0eaf85113, // 0.87901, 0.4768
+ 0x3fec26d9f01f2eaf, 0x3fde6dc704be97e2, // 0.87974, 0.47545
+ 0x3fec2cd14931e3f1, 0x3fde57a86d3cd824, // 0.88047, 0.4741
+ 0x3fec32c449f60831, 0x3fde418527dc4ffa, // 0.8812, 0.47275
+ 0x3fec38b2f180bdb1, 0x3fde2b5d3806f63b, // 0.88192, 0.4714
+ 0x3fec3e9d3ee7d262, 0x3fde1530a12779f4, // 0.88264, 0.47004
+ 0x3fec44833141c004, 0x3fddfeff66a941de, // 0.88336, 0.46869
+ 0x3fec4a64c7a5ac4c, 0x3fdde8c98bf86bd6, // 0.88408, 0.46733
+ 0x3fec5042012b6907, 0x3fddd28f1481cc58, // 0.8848, 0.46598
+ 0x3fec561adceb743e, 0x3fddbc5003b2edf8, // 0.88551, 0.46462
+ 0x3fec5bef59fef85a, 0x3fdda60c5cfa10d8, // 0.88622, 0.46326
+ 0x3fec61bf777fcc48, 0x3fdd8fc423c62a25, // 0.88693, 0.4619
+ 0x3fec678b3488739b, 0x3fdd79775b86e389, // 0.88764, 0.46054
+ 0x3fec6d5290341eb2, 0x3fdd632607ac9aa9, // 0.88835, 0.45918
+ 0x3fec7315899eaad7, 0x3fdd4cd02ba8609c, // 0.88905, 0.45781
+ 0x3fec78d41fe4a267, 0x3fdd3675caebf962, // 0.88975, 0.45645
+ 0x3fec7e8e52233cf3, 0x3fdd2016e8e9db5b, // 0.89045, 0.45508
+ 0x3fec84441f785f61, 0x3fdd09b389152ec1, // 0.89115, 0.45372
+ 0x3fec89f587029c13, 0x3fdcf34baee1cd21, // 0.89184, 0.45235
+ 0x3fec8fa287e13305, 0x3fdcdcdf5dc440ce, // 0.89253, 0.45098
+ 0x3fec954b213411f5, 0x3fdcc66e9931c45d, // 0.89322, 0.44961
+ 0x3fec9aef521bd480, 0x3fdcaff964a0421d, // 0.89391, 0.44824
+ 0x3feca08f19b9c449, 0x3fdc997fc3865388, // 0.8946, 0.44687
+ 0x3feca62a772fd919, 0x3fdc8301b95b40c2, // 0.89528, 0.4455
+ 0x3fecabc169a0b901, 0x3fdc6c7f4997000a, // 0.89597, 0.44412
+ 0x3fecb153f02fb87d, 0x3fdc55f877b23537, // 0.89665, 0.44275
+ 0x3fecb6e20a00da99, 0x3fdc3f6d47263129, // 0.89732, 0.44137
+ 0x3fecbc6bb638d10b, 0x3fdc28ddbb6cf145, // 0.898, 0.43999
+ 0x3fecc1f0f3fcfc5c, 0x3fdc1249d8011ee7, // 0.89867, 0.43862
+ 0x3fecc771c2736c09, 0x3fdbfbb1a05e0edc, // 0.89935, 0.43724
+ 0x3fecccee20c2de9f, 0x3fdbe51517ffc0d9, // 0.90002, 0.43586
+ 0x3fecd2660e12c1e6, 0x3fdbce744262deee, // 0.90068, 0.43448
+ 0x3fecd7d9898b32f6, 0x3fdbb7cf2304bd01, // 0.90135, 0.43309
+ 0x3fecdd489254fe65, 0x3fdba125bd63583e, // 0.90201, 0.43171
+ 0x3fece2b32799a060, 0x3fdb8a7814fd5693, // 0.90267, 0.43033
+ 0x3fece819488344ce, 0x3fdb73c62d520624, // 0.90333, 0.42894
+ 0x3feced7af43cc773, 0x3fdb5d1009e15cc0, // 0.90399, 0.42756
+ 0x3fecf2d829f1b40e, 0x3fdb4655ae2bf757, // 0.90464, 0.42617
+ 0x3fecf830e8ce467b, 0x3fdb2f971db31972, // 0.9053, 0.42478
+ 0x3fecfd852fff6ad4, 0x3fdb18d45bf8aca6, // 0.90595, 0.42339
+ 0x3fed02d4feb2bd92, 0x3fdb020d6c7f4009, // 0.9066, 0.422
+ 0x3fed082054168bac, 0x3fdaeb4252ca07ab, // 0.90724, 0.42061
+ 0x3fed0d672f59d2b9, 0x3fdad473125cdc08, // 0.90789, 0.41922
+ 0x3fed12a98fac410c, 0x3fdabd9faebc3980, // 0.90853, 0.41782
+ 0x3fed17e7743e35dc, 0x3fdaa6c82b6d3fc9, // 0.90917, 0.41643
+ 0x3fed1d20dc40c15c, 0x3fda8fec8bf5b166, // 0.90981, 0.41503
+ 0x3fed2255c6e5a4e1, 0x3fda790cd3dbf31a, // 0.91044, 0.41364
+ 0x3fed2786335f52fc, 0x3fda622906a70b63, // 0.91107, 0.41224
+ 0x3fed2cb220e0ef9f, 0x3fda4b4127dea1e4, // 0.91171, 0.41084
+ 0x3fed31d98e9e503a, 0x3fda34553b0afee5, // 0.91234, 0.40944
+ 0x3fed36fc7bcbfbdc, 0x3fda1d6543b50ac0, // 0.91296, 0.40804
+ 0x3fed3c1ae79f2b4e, 0x3fda067145664d57, // 0.91359, 0.40664
+ 0x3fed4134d14dc93a, 0x3fd9ef7943a8ed8a, // 0.91421, 0.40524
+ 0x3fed464a380e7242, 0x3fd9d87d4207b0ab, // 0.91483, 0.40384
+ 0x3fed4b5b1b187524, 0x3fd9c17d440df9f2, // 0.91545, 0.40243
+ 0x3fed506779a3d2d9, 0x3fd9aa794d47c9ee, // 0.91606, 0.40103
+ 0x3fed556f52e93eb1, 0x3fd993716141bdfe, // 0.91668, 0.39962
+ 0x3fed5a72a6221e73, 0x3fd97c6583890fc2, // 0.91729, 0.39822
+ 0x3fed5f7172888a7f, 0x3fd96555b7ab948f, // 0.9179, 0.39681
+ 0x3fed646bb7574de5, 0x3fd94e420137bce3, // 0.91851, 0.3954
+ 0x3fed696173c9e68b, 0x3fd9372a63bc93d7, // 0.91911, 0.39399
+ 0x3fed6e52a71c8547, 0x3fd9200ee2c9be97, // 0.91972, 0.39258
+ 0x3fed733f508c0dff, 0x3fd908ef81ef7bd1, // 0.92032, 0.39117
+ 0x3fed78276f5617c6, 0x3fd8f1cc44bea329, // 0.92092, 0.38976
+ 0x3fed7d0b02b8ecf9, 0x3fd8daa52ec8a4af, // 0.92151, 0.38835
+ 0x3fed81ea09f38b63, 0x3fd8c37a439f884f, // 0.92211, 0.38693
+ 0x3fed86c48445a450, 0x3fd8ac4b86d5ed44, // 0.9227, 0.38552
+ 0x3fed8b9a70ef9cb4, 0x3fd89518fbff098e, // 0.92329, 0.3841
+ 0x3fed906bcf328d46, 0x3fd87de2a6aea963, // 0.92388, 0.38268
+ 0x3fed95389e50429b, 0x3fd866a88a792ea0, // 0.92447, 0.38127
+ 0x3fed9a00dd8b3d46, 0x3fd84f6aaaf3903f, // 0.92505, 0.37985
+ 0x3fed9ec48c26b1f3, 0x3fd838290bb359c8, // 0.92563, 0.37843
+ 0x3feda383a9668988, 0x3fd820e3b04eaac4, // 0.92621, 0.37701
+ 0x3feda83e348f613b, 0x3fd8099a9c5c362d, // 0.92679, 0.37559
+ 0x3fedacf42ce68ab9, 0x3fd7f24dd37341e3, // 0.92736, 0.37416
+ 0x3fedb1a591b20c38, 0x3fd7dafd592ba621, // 0.92794, 0.37274
+ 0x3fedb6526238a09b, 0x3fd7c3a9311dcce7, // 0.92851, 0.37132
+ 0x3fedbafa9dc1b78d, 0x3fd7ac515ee2b172, // 0.92907, 0.36989
+ 0x3fedbf9e4395759a, 0x3fd794f5e613dfae, // 0.92964, 0.36847
+ 0x3fedc43d52fcb453, 0x3fd77d96ca4b73a6, // 0.93021, 0.36704
+ 0x3fedc8d7cb410260, 0x3fd766340f2418f6, // 0.93077, 0.36561
+ 0x3fedcd6dabaca3a5, 0x3fd74ecdb8390a3e, // 0.93133, 0.36418
+ 0x3fedd1fef38a915a, 0x3fd73763c9261092, // 0.93188, 0.36276
+ 0x3fedd68ba2267a25, 0x3fd71ff6458782ec, // 0.93244, 0.36133
+ 0x3feddb13b6ccc23d, 0x3fd7088530fa459e, // 0.93299, 0.3599
+ 0x3feddf9730ca837b, 0x3fd6f1108f1bc9c5, // 0.93354, 0.35846
+ 0x3fede4160f6d8d81, 0x3fd6d998638a0cb5, // 0.93409, 0.35703
+ 0x3fede890520465ce, 0x3fd6c21cb1e39771, // 0.93464, 0.3556
+ 0x3feded05f7de47da, 0x3fd6aa9d7dc77e16, // 0.93518, 0.35416
+ 0x3fedf177004b2534, 0x3fd6931acad55f51, // 0.93573, 0.35273
+ 0x3fedf5e36a9ba59c, 0x3fd67b949cad63ca, // 0.93627, 0.35129
+ 0x3fedfa4b3621271d, 0x3fd6640af6f03d9e, // 0.9368, 0.34986
+ 0x3fedfeae622dbe2b, 0x3fd64c7ddd3f27c6, // 0.93734, 0.34842
+ 0x3fee030cee1435b8, 0x3fd634ed533be58e, // 0.93787, 0.34698
+ 0x3fee0766d9280f54, 0x3fd61d595c88c203, // 0.9384, 0.34554
+ 0x3fee0bbc22bd8349, 0x3fd605c1fcc88f63, // 0.93893, 0.3441
+ 0x3fee100cca2980ac, 0x3fd5ee27379ea693, // 0.93946, 0.34266
+ 0x3fee1458cec1ad83, 0x3fd5d68910aee686, // 0.93998, 0.34122
+ 0x3fee18a02fdc66d9, 0x3fd5bee78b9db3b6, // 0.94051, 0.33978
+ 0x3fee1ce2ecd0c0d8, 0x3fd5a742ac0ff78d, // 0.94103, 0.33833
+ 0x3fee212104f686e5, 0x3fd58f9a75ab1fdd, // 0.94154, 0.33689
+ 0x3fee255a77a63bb8, 0x3fd577eeec151e47, // 0.94206, 0.33545
+ 0x3fee298f4439197a, 0x3fd5604012f467b4, // 0.94257, 0.334
+ 0x3fee2dbf6a0911d9, 0x3fd5488dedeff3be, // 0.94308, 0.33255
+ 0x3fee31eae870ce25, 0x3fd530d880af3c24, // 0.94359, 0.33111
+ 0x3fee3611becbaf69, 0x3fd5191fceda3c35, // 0.9441, 0.32966
+ 0x3fee3a33ec75ce85, 0x3fd50163dc197047, // 0.9446, 0.32821
+ 0x3fee3e5170cbfc46, 0x3fd4e9a4ac15d520, // 0.94511, 0.32676
+ 0x3fee426a4b2bc17e, 0x3fd4d1e24278e76a, // 0.94561, 0.32531
+ 0x3fee467e7af35f23, 0x3fd4ba1ca2eca31c, // 0.94611, 0.32386
+ 0x3fee4a8dff81ce5e, 0x3fd4a253d11b82f3, // 0.9466, 0.32241
+ 0x3fee4e98d836c0af, 0x3fd48a87d0b07fd7, // 0.94709, 0.32096
+ 0x3fee529f04729ffc, 0x3fd472b8a5571054, // 0.94759, 0.3195
+ 0x3fee56a083968eb1, 0x3fd45ae652bb2800, // 0.94807, 0.31805
+ 0x3fee5a9d550467d3, 0x3fd44310dc8936f0, // 0.94856, 0.31659
+ 0x3fee5e95781ebf1c, 0x3fd42b38466e2928, // 0.94905, 0.31514
+ 0x3fee6288ec48e112, 0x3fd4135c94176602, // 0.94953, 0.31368
+ 0x3fee6677b0e6d31e, 0x3fd3fb7dc932cfa4, // 0.95001, 0.31222
+ 0x3fee6a61c55d53a7, 0x3fd3e39be96ec271, // 0.95049, 0.31077
+ 0x3fee6e472911da27, 0x3fd3cbb6f87a146e, // 0.95096, 0.30931
+ 0x3fee7227db6a9744, 0x3fd3b3cefa0414b7, // 0.95144, 0.30785
+ 0x3fee7603dbce74e9, 0x3fd39be3f1bc8aef, // 0.95191, 0.30639
+ 0x3fee79db29a5165a, 0x3fd383f5e353b6aa, // 0.95238, 0.30493
+ 0x3fee7dadc456d850, 0x3fd36c04d27a4edf, // 0.95284, 0.30347
+ 0x3fee817bab4cd10d, 0x3fd35410c2e18152, // 0.95331, 0.30201
+ 0x3fee8544ddf0d075, 0x3fd33c19b83af207, // 0.95377, 0.30054
+ 0x3fee89095bad6025, 0x3fd3241fb638baaf, // 0.95423, 0.29908
+ 0x3fee8cc923edc388, 0x3fd30c22c08d6a13, // 0.95469, 0.29762
+ 0x3fee9084361df7f3, 0x3fd2f422daec0386, // 0.95514, 0.29615
+ 0x3fee943a91aab4b4, 0x3fd2dc200907fe51, // 0.95559, 0.29469
+ 0x3fee97ec36016b30, 0x3fd2c41a4e954520, // 0.95605, 0.29322
+ 0x3fee9b99229046f8, 0x3fd2ac11af483572, // 0.95649, 0.29175
+ 0x3fee9f4156c62dda, 0x3fd294062ed59f05, // 0.95694, 0.29028
+ 0x3feea2e4d212c000, 0x3fd27bf7d0f2c346, // 0.95738, 0.28882
+ 0x3feea68393e65800, 0x3fd263e6995554ba, // 0.95783, 0.28735
+ 0x3feeaa1d9bb20af3, 0x3fd24bd28bb37672, // 0.95827, 0.28588
+ 0x3feeadb2e8e7a88e, 0x3fd233bbabc3bb72, // 0.9587, 0.28441
+ 0x3feeb1437af9bb34, 0x3fd21ba1fd3d2623, // 0.95914, 0.28294
+ 0x3feeb4cf515b8811, 0x3fd2038583d727bd, // 0.95957, 0.28146
+ 0x3feeb8566b810f2a, 0x3fd1eb6643499fbb, // 0.96, 0.27999
+ 0x3feebbd8c8df0b74, 0x3fd1d3443f4cdb3d, // 0.96043, 0.27852
+ 0x3feebf5668eaf2ef, 0x3fd1bb1f7b999480, // 0.96086, 0.27705
+ 0x3feec2cf4b1af6b2, 0x3fd1a2f7fbe8f243, // 0.96128, 0.27557
+ 0x3feec6436ee60309, 0x3fd18acdc3f4873a, // 0.9617, 0.2741
+ 0x3feec9b2d3c3bf84, 0x3fd172a0d7765177, // 0.96212, 0.27262
+ 0x3feecd1d792c8f10, 0x3fd15a713a28b9d9, // 0.96254, 0.27115
+ 0x3feed0835e999009, 0x3fd1423eefc69378, // 0.96295, 0.26967
+ 0x3feed3e483849c51, 0x3fd12a09fc0b1b12, // 0.96337, 0.26819
+ 0x3feed740e7684963, 0x3fd111d262b1f677, // 0.96378, 0.26671
+ 0x3feeda9889bfe86a, 0x3fd0f998277733f7, // 0.96418, 0.26523
+ 0x3feeddeb6a078651, 0x3fd0e15b4e1749cd, // 0.96459, 0.26375
+ 0x3feee13987bbebdc, 0x3fd0c91bda4f158d, // 0.96499, 0.26227
+ 0x3feee482e25a9dbc, 0x3fd0b0d9cfdbdb90, // 0.96539, 0.26079
+ 0x3feee7c77961dc9e, 0x3fd09895327b465e, // 0.96579, 0.25931
+ 0x3feeeb074c50a544, 0x3fd0804e05eb661e, // 0.96619, 0.25783
+ 0x3feeee425aa6b09a, 0x3fd068044deab002, // 0.96658, 0.25635
+ 0x3feef178a3e473c2, 0x3fd04fb80e37fdae, // 0.96698, 0.25487
+ 0x3feef4aa278b2032, 0x3fd037694a928cac, // 0.96737, 0.25338
+ 0x3feef7d6e51ca3c0, 0x3fd01f1806b9fdd2, // 0.96775, 0.2519
+ 0x3feefafedc1ba8b7, 0x3fd006c4466e54af, // 0.96814, 0.25041
+ 0x3feefe220c0b95ec, 0x3fcfdcdc1adfedf8, // 0.96852, 0.24893
+ 0x3fef014074708ed3, 0x3fcfac2abeff57ff, // 0.9689, 0.24744
+ 0x3fef045a14cf738c, 0x3fcf7b7480bd3801, // 0.96928, 0.24596
+ 0x3fef076eecade0fa, 0x3fcf4ab9679c9f5c, // 0.96966, 0.24447
+ 0x3fef0a7efb9230d7, 0x3fcf19f97b215f1a, // 0.97003, 0.24298
+ 0x3fef0d8a410379c5, 0x3fcee934c2d006c7, // 0.9704, 0.24149
+ 0x3fef1090bc898f5f, 0x3fceb86b462de348, // 0.97077, 0.24
+ 0x3fef13926dad024e, 0x3fce879d0cc0fdaf, // 0.97114, 0.23851
+ 0x3fef168f53f7205d, 0x3fce56ca1e101a1b, // 0.9715, 0.23702
+ 0x3fef19876ef1f486, 0x3fce25f281a2b684, // 0.97187, 0.23553
+ 0x3fef1c7abe284708, 0x3fcdf5163f01099a, // 0.97223, 0.23404
+ 0x3fef1f6941259d7a, 0x3fcdc4355db40195, // 0.97258, 0.23255
+ 0x3fef2252f7763ada, 0x3fcd934fe5454311, // 0.97294, 0.23106
+ 0x3fef2537e0a71f9f, 0x3fcd6265dd3f27e3, // 0.97329, 0.22957
+ 0x3fef2817fc4609ce, 0x3fcd31774d2cbdee, // 0.97364, 0.22807
+ 0x3fef2af349e17507, 0x3fcd00843c99c5f9, // 0.97399, 0.22658
+ 0x3fef2dc9c9089a9d, 0x3fcccf8cb312b286, // 0.97434, 0.22508
+ 0x3fef309b794b719f, 0x3fcc9e90b824a6a9, // 0.97468, 0.22359
+ 0x3fef33685a3aaef0, 0x3fcc6d90535d74dc, // 0.97503, 0.22209
+ 0x3fef36306b67c556, 0x3fcc3c8b8c4b9dd7, // 0.97536, 0.2206
+ 0x3fef38f3ac64e589, 0x3fcc0b826a7e4f63, // 0.9757, 0.2191
+ 0x3fef3bb21cc4fe47, 0x3fcbda74f5856330, // 0.97604, 0.2176
+ 0x3fef3e6bbc1bbc65, 0x3fcba96334f15dad, // 0.97637, 0.21611
+ 0x3fef412089fd8adc, 0x3fcb784d30536cda, // 0.9767, 0.21461
+ 0x3fef43d085ff92dd, 0x3fcb4732ef3d6722, // 0.97703, 0.21311
+ 0x3fef467bafb7bbe0, 0x3fcb16147941ca2a, // 0.97735, 0.21161
+ 0x3fef492206bcabb4, 0x3fcae4f1d5f3b9ab, // 0.97768, 0.21011
+ 0x3fef4bc38aa5c694, 0x3fcab3cb0ce6fe44, // 0.978, 0.20861
+ 0x3fef4e603b0b2f2d, 0x3fca82a025b00451, // 0.97832, 0.20711
+ 0x3fef50f81785c6b9, 0x3fca517127e3dabc, // 0.97863, 0.20561
+ 0x3fef538b1faf2d07, 0x3fca203e1b1831da, // 0.97895, 0.20411
+ 0x3fef56195321c090, 0x3fc9ef0706e35a35, // 0.97926, 0.20261
+ 0x3fef58a2b1789e84, 0x3fc9bdcbf2dc4366, // 0.97957, 0.2011
+ 0x3fef5b273a4fa2d9, 0x3fc98c8ce69a7aec, // 0.97988, 0.1996
+ 0x3fef5da6ed43685d, 0x3fc95b49e9b62af9, // 0.98018, 0.1981
+ 0x3fef6021c9f148c2, 0x3fc92a0303c8194f, // 0.98048, 0.19659
+ 0x3fef6297cff75cb0, 0x3fc8f8b83c69a60a, // 0.98079, 0.19509
+ 0x3fef6508fef47bd5, 0x3fc8c7699b34ca7e, // 0.98108, 0.19359
+ 0x3fef677556883cee, 0x3fc8961727c41804, // 0.98138, 0.19208
+ 0x3fef69dcd652f5de, 0x3fc864c0e9b2b6cf, // 0.98167, 0.19057
+ 0x3fef6c3f7df5bbb7, 0x3fc83366e89c64c5, // 0.98196, 0.18907
+ 0x3fef6e9d4d1262ca, 0x3fc802092c1d744b, // 0.98225, 0.18756
+ 0x3fef70f6434b7eb7, 0x3fc7d0a7bbd2cb1b, // 0.98254, 0.18606
+ 0x3fef734a60446279, 0x3fc79f429f59e11d, // 0.98282, 0.18455
+ 0x3fef7599a3a12077, 0x3fc76dd9de50bf31, // 0.98311, 0.18304
+ 0x3fef77e40d068a90, 0x3fc73c6d8055fe0a, // 0.98339, 0.18153
+ 0x3fef7a299c1a322a, 0x3fc70afd8d08c4ff, // 0.98366, 0.18002
+ 0x3fef7c6a50826840, 0x3fc6d98a0c08c8da, // 0.98394, 0.17851
+ 0x3fef7ea629e63d6e, 0x3fc6a81304f64ab2, // 0.98421, 0.177
+ 0x3fef80dd27ed8204, 0x3fc676987f7216b8, // 0.98448, 0.17549
+ 0x3fef830f4a40c60c, 0x3fc6451a831d830d, // 0.98475, 0.17398
+ 0x3fef853c9089595e, 0x3fc61399179a6e94, // 0.98501, 0.17247
+ 0x3fef8764fa714ba9, 0x3fc5e214448b3fc6, // 0.98528, 0.17096
+ 0x3fef898887a36c84, 0x3fc5b08c1192e381, // 0.98554, 0.16945
+ 0x3fef8ba737cb4b78, 0x3fc57f008654cbde, // 0.9858, 0.16794
+ 0x3fef8dc10a95380d, 0x3fc54d71aa74ef02, // 0.98605, 0.16643
+ 0x3fef8fd5ffae41db, 0x3fc51bdf8597c5f2, // 0.98631, 0.16491
+ 0x3fef91e616c43891, 0x3fc4ea4a1f624b61, // 0.98656, 0.1634
+ 0x3fef93f14f85ac08, 0x3fc4b8b17f79fa88, // 0.98681, 0.16189
+ 0x3fef95f7a9a1ec47, 0x3fc48715ad84cdf5, // 0.98706, 0.16037
+ 0x3fef97f924c9099b, 0x3fc45576b1293e5a, // 0.9873, 0.15886
+ 0x3fef99f5c0abd496, 0x3fc423d4920e4166, // 0.98754, 0.15734
+ 0x3fef9bed7cfbde29, 0x3fc3f22f57db4893, // 0.98778, 0.15583
+ 0x3fef9de0596b77a3, 0x3fc3c0870a383ff6, // 0.98802, 0.15431
+ 0x3fef9fce55adb2c8, 0x3fc38edbb0cd8d14, // 0.98826, 0.1528
+ 0x3fefa1b7717661d5, 0x3fc35d2d53440db2, // 0.98849, 0.15128
+ 0x3fefa39bac7a1791, 0x3fc32b7bf94516a7, // 0.98872, 0.14976
+ 0x3fefa57b066e2754, 0x3fc2f9c7aa7a72af, // 0.98895, 0.14825
+ 0x3fefa7557f08a517, 0x3fc2c8106e8e613a, // 0.98918, 0.14673
+ 0x3fefa92b1600657c, 0x3fc296564d2b953e, // 0.9894, 0.14521
+ 0x3fefaafbcb0cfddc, 0x3fc264994dfd340a, // 0.98962, 0.1437
+ 0x3fefacc79de6c44f, 0x3fc232d978aed413, // 0.98984, 0.14218
+ 0x3fefae8e8e46cfbb, 0x3fc20116d4ec7bce, // 0.99006, 0.14066
+ 0x3fefb0509be6f7db, 0x3fc1cf516a62a077, // 0.99027, 0.13914
+ 0x3fefb20dc681d54d, 0x3fc19d8940be24e7, // 0.99049, 0.13762
+ 0x3fefb3c60dd2c199, 0x3fc16bbe5fac5865, // 0.9907, 0.1361
+ 0x3fefb5797195d741, 0x3fc139f0cedaf576, // 0.9909, 0.13458
+ 0x3fefb727f187f1c7, 0x3fc1082095f820b0, // 0.99111, 0.13306
+ 0x3fefb8d18d66adb7, 0x3fc0d64dbcb26786, // 0.99131, 0.13154
+ 0x3fefba7644f068b5, 0x3fc0a4784ab8bf1d, // 0.99151, 0.13002
+ 0x3fefbc1617e44186, 0x3fc072a047ba831d, // 0.99171, 0.1285
+ 0x3fefbdb106021816, 0x3fc040c5bb67747e, // 0.99191, 0.12698
+ 0x3fefbf470f0a8d88, 0x3fc00ee8ad6fb85b, // 0.9921, 0.12545
+ 0x3fefc0d832bf043a, 0x3fbfba124b07ad85, // 0.99229, 0.12393
+ 0x3fefc26470e19fd3, 0x3fbf564e56a9730e, // 0.99248, 0.12241
+ 0x3fefc3ebc935454c, 0x3fbef2858d27561b, // 0.99267, 0.12089
+ 0x3fefc56e3b7d9af6, 0x3fbe8eb7fde4aa3e, // 0.99285, 0.11937
+ 0x3fefc6ebc77f0887, 0x3fbe2ae5b8457f77, // 0.99303, 0.11784
+ 0x3fefc8646cfeb721, 0x3fbdc70ecbae9fc8, // 0.99321, 0.11632
+ 0x3fefc9d82bc2915e, 0x3fbd633347858ce4, // 0.99339, 0.11479
+ 0x3fefcb4703914354, 0x3fbcff533b307dc1, // 0.99356, 0.11327
+ 0x3fefccb0f4323aa3, 0x3fbc9b6eb6165c42, // 0.99374, 0.11175
+ 0x3fefce15fd6da67b, 0x3fbc3785c79ec2d5, // 0.99391, 0.11022
+ 0x3fefcf761f0c77a3, 0x3fbbd3987f31fa0e, // 0.99407, 0.1087
+ 0x3fefd0d158d86087, 0x3fbb6fa6ec38f64c, // 0.99424, 0.10717
+ 0x3fefd227aa9bd53b, 0x3fbb0bb11e1d5559, // 0.9944, 0.10565
+ 0x3fefd37914220b84, 0x3fbaa7b724495c04, // 0.99456, 0.10412
+ 0x3fefd4c59536fae4, 0x3fba43b90e27f3c4, // 0.99472, 0.1026
+ 0x3fefd60d2da75c9e, 0x3fb9dfb6eb24a85c, // 0.99488, 0.10107
+ 0x3fefd74fdd40abbf, 0x3fb97bb0caaba56f, // 0.99503, 0.099544
+ 0x3fefd88da3d12526, 0x3fb917a6bc29b42c, // 0.99518, 0.098017
+ 0x3fefd9c68127c78c, 0x3fb8b398cf0c38e0, // 0.99533, 0.09649
+ 0x3fefdafa7514538c, 0x3fb84f8712c130a0, // 0.99548, 0.094963
+ 0x3fefdc297f674ba9, 0x3fb7eb7196b72ee4, // 0.99563, 0.093436
+ 0x3fefdd539ff1f456, 0x3fb787586a5d5b21, // 0.99577, 0.091909
+ 0x3fefde78d68653fd, 0x3fb7233b9d236e71, // 0.99591, 0.090381
+ 0x3fefdf9922f73307, 0x3fb6bf1b3e79b129, // 0.99604, 0.088854
+ 0x3fefe0b485181be3, 0x3fb65af75dd0f87b, // 0.99618, 0.087326
+ 0x3fefe1cafcbd5b09, 0x3fb5f6d00a9aa419, // 0.99631, 0.085797
+ 0x3fefe2dc89bbff08, 0x3fb592a554489bc8, // 0.99644, 0.084269
+ 0x3fefe3e92be9d886, 0x3fb52e774a4d4d0a, // 0.99657, 0.08274
+ 0x3fefe4f0e31d7a4a, 0x3fb4ca45fc1ba8b6, // 0.9967, 0.081211
+ 0x3fefe5f3af2e3940, 0x3fb4661179272096, // 0.99682, 0.079682
+ 0x3fefe6f18ff42c84, 0x3fb401d9d0e3a507, // 0.99694, 0.078153
+ 0x3fefe7ea85482d60, 0x3fb39d9f12c5a299, // 0.99706, 0.076624
+ 0x3fefe8de8f03d75c, 0x3fb339614e41ffa5, // 0.99718, 0.075094
+ 0x3fefe9cdad01883a, 0x3fb2d52092ce19f6, // 0.99729, 0.073565
+ 0x3fefeab7df1c6005, 0x3fb270dcefdfc45b, // 0.9974, 0.072035
+ 0x3fefeb9d2530410f, 0x3fb20c9674ed444c, // 0.99751, 0.070505
+ 0x3fefec7d7f19cffc, 0x3fb1a84d316d4f8a, // 0.99762, 0.068974
+ 0x3fefed58ecb673c4, 0x3fb1440134d709b2, // 0.99772, 0.067444
+ 0x3fefee2f6de455ba, 0x3fb0dfb28ea201e6, // 0.99783, 0.065913
+ 0x3fefef0102826191, 0x3fb07b614e463064, // 0.99793, 0.064383
+ 0x3fefefcdaa704562, 0x3fb0170d833bf421, // 0.99802, 0.062852
+ 0x3feff095658e71ad, 0x3faf656e79f820e0, // 0.99812, 0.061321
+ 0x3feff15833be1965, 0x3fae9cbd15ff5527, // 0.99821, 0.05979
+ 0x3feff21614e131ed, 0x3fadd406f9808ec8, // 0.9983, 0.058258
+ 0x3feff2cf08da7321, 0x3fad0b4c436f91d0, // 0.99839, 0.056727
+ 0x3feff3830f8d575c, 0x3fac428d12c0d7e3, // 0.99848, 0.055195
+ 0x3feff43228de1b77, 0x3fab79c986698b78, // 0.99856, 0.053664
+ 0x3feff4dc54b1bed3, 0x3faab101bd5f8317, // 0.99864, 0.052132
+ 0x3feff58192ee0358, 0x3fa9e835d6993c87, // 0.99872, 0.0506
+ 0x3feff621e3796d7e, 0x3fa91f65f10dd814, // 0.9988, 0.049068
+ 0x3feff6bd463b444d, 0x3fa856922bb513c1, // 0.99887, 0.047535
+ 0x3feff753bb1b9164, 0x3fa78dbaa5874685, // 0.99894, 0.046003
+ 0x3feff7e5420320f9, 0x3fa6c4df7d7d5b84, // 0.99901, 0.044471
+ 0x3feff871dadb81df, 0x3fa5fc00d290cd43, // 0.99908, 0.042938
+ 0x3feff8f9858f058b, 0x3fa5331ec3bba0eb, // 0.99914, 0.041406
+ 0x3feff97c4208c014, 0x3fa46a396ff86179, // 0.9992, 0.039873
+ 0x3feff9fa10348837, 0x3fa3a150f6421afc, // 0.99926, 0.03834
+ 0x3feffa72effef75d, 0x3fa2d865759455cd, // 0.99932, 0.036807
+ 0x3feffae6e1556998, 0x3fa20f770ceb11c6, // 0.99938, 0.035274
+ 0x3feffb55e425fdae, 0x3fa14685db42c17e, // 0.99943, 0.033741
+ 0x3feffbbff85f9515, 0x3fa07d91ff984580, // 0.99948, 0.032208
+ 0x3feffc251df1d3f8, 0x3f9f693731d1cf01, // 0.99953, 0.030675
+ 0x3feffc8554cd213a, 0x3f9dd7458c64ab39, // 0.99958, 0.029142
+ 0x3feffce09ce2a679, 0x3f9c454f4ce53b1c, // 0.99962, 0.027608
+ 0x3feffd36f624500c, 0x3f9ab354b1504fca, // 0.99966, 0.026075
+ 0x3feffd886084cd0d, 0x3f992155f7a3667e, // 0.9997, 0.024541
+ 0x3feffdd4dbf78f52, 0x3f978f535ddc9f03, // 0.99974, 0.023008
+ 0x3feffe1c6870cb77, 0x3f95fd4d21fab226, // 0.99977, 0.021474
+ 0x3feffe5f05e578db, 0x3f946b4381fce81c, // 0.9998, 0.01994
+ 0x3feffe9cb44b51a1, 0x3f92d936bbe30efd, // 0.99983, 0.018407
+ 0x3feffed57398d2b7, 0x3f9147270dad7132, // 0.99986, 0.016873
+ 0x3fefff0943c53bd1, 0x3f8f6a296ab997ca, // 0.99988, 0.015339
+ 0x3fefff3824c88f6f, 0x3f8c45ffe1e48ad9, // 0.9999, 0.013805
+ 0x3fefff62169b92db, 0x3f8921d1fcdec784, // 0.99992, 0.012272
+ 0x3fefff871937ce2f, 0x3f85fda037ac05e0, // 0.99994, 0.010738
+ 0x3fefffa72c978c4f, 0x3f82d96b0e509703, // 0.99996, 0.0092038
+ 0x3fefffc250b5daef, 0x3f7f6a65f9a2a3c5, // 0.99997, 0.0076698
+ 0x3fefffd8858e8a92, 0x3f7921f0fe670071, // 0.99998, 0.0061359
+ 0x3fefffe9cb1e2e8d, 0x3f72d97822f996bc, // 0.99999, 0.0046019
+ 0x3feffff621621d02, 0x3f6921f8becca4ba, // 1, 0.003068
+ 0x3feffffd88586ee6, 0x3f5921faaee6472d, // 1, 0.001534
+ 0x3ff0000000000000, 0x0000000000000000, // 1, 0
+ 0x3feffffd88586ee6, 0xbf5921faaee6472d, // 1, -0.001534
+ 0x3feffff621621d02, 0xbf6921f8becca4ba, // 1, -0.003068
+ 0x3fefffe9cb1e2e8d, 0xbf72d97822f996bc, // 0.99999,-0.0046019
+ 0x3fefffd8858e8a92, 0xbf7921f0fe670071, // 0.99998,-0.0061359
+ 0x3fefffc250b5daef, 0xbf7f6a65f9a2a3c5, // 0.99997,-0.0076698
+ 0x3fefffa72c978c4f, 0xbf82d96b0e509703, // 0.99996,-0.0092038
+ 0x3fefff871937ce2f, 0xbf85fda037ac05e0, // 0.99994, -0.010738
+ 0x3fefff62169b92db, 0xbf8921d1fcdec784, // 0.99992, -0.012272
+ 0x3fefff3824c88f6f, 0xbf8c45ffe1e48ad9, // 0.9999, -0.013805
+ 0x3fefff0943c53bd1, 0xbf8f6a296ab997ca, // 0.99988, -0.015339
+ 0x3feffed57398d2b7, 0xbf9147270dad7132, // 0.99986, -0.016873
+ 0x3feffe9cb44b51a1, 0xbf92d936bbe30efd, // 0.99983, -0.018407
+ 0x3feffe5f05e578db, 0xbf946b4381fce81c, // 0.9998, -0.01994
+ 0x3feffe1c6870cb77, 0xbf95fd4d21fab226, // 0.99977, -0.021474
+ 0x3feffdd4dbf78f52, 0xbf978f535ddc9f03, // 0.99974, -0.023008
+ 0x3feffd886084cd0d, 0xbf992155f7a3667e, // 0.9997, -0.024541
+ 0x3feffd36f624500c, 0xbf9ab354b1504fca, // 0.99966, -0.026075
+ 0x3feffce09ce2a679, 0xbf9c454f4ce53b1c, // 0.99962, -0.027608
+ 0x3feffc8554cd213a, 0xbf9dd7458c64ab39, // 0.99958, -0.029142
+ 0x3feffc251df1d3f8, 0xbf9f693731d1cf01, // 0.99953, -0.030675
+ 0x3feffbbff85f9515, 0xbfa07d91ff984580, // 0.99948, -0.032208
+ 0x3feffb55e425fdae, 0xbfa14685db42c17e, // 0.99943, -0.033741
+ 0x3feffae6e1556998, 0xbfa20f770ceb11c6, // 0.99938, -0.035274
+ 0x3feffa72effef75d, 0xbfa2d865759455cd, // 0.99932, -0.036807
+ 0x3feff9fa10348837, 0xbfa3a150f6421afc, // 0.99926, -0.03834
+ 0x3feff97c4208c014, 0xbfa46a396ff86179, // 0.9992, -0.039873
+ 0x3feff8f9858f058b, 0xbfa5331ec3bba0eb, // 0.99914, -0.041406
+ 0x3feff871dadb81df, 0xbfa5fc00d290cd43, // 0.99908, -0.042938
+ 0x3feff7e5420320f9, 0xbfa6c4df7d7d5b84, // 0.99901, -0.044471
+ 0x3feff753bb1b9164, 0xbfa78dbaa5874685, // 0.99894, -0.046003
+ 0x3feff6bd463b444d, 0xbfa856922bb513c1, // 0.99887, -0.047535
+ 0x3feff621e3796d7e, 0xbfa91f65f10dd814, // 0.9988, -0.049068
+ 0x3feff58192ee0358, 0xbfa9e835d6993c87, // 0.99872, -0.0506
+ 0x3feff4dc54b1bed3, 0xbfaab101bd5f8317, // 0.99864, -0.052132
+ 0x3feff43228de1b77, 0xbfab79c986698b78, // 0.99856, -0.053664
+ 0x3feff3830f8d575c, 0xbfac428d12c0d7e3, // 0.99848, -0.055195
+ 0x3feff2cf08da7321, 0xbfad0b4c436f91d0, // 0.99839, -0.056727
+ 0x3feff21614e131ed, 0xbfadd406f9808ec8, // 0.9983, -0.058258
+ 0x3feff15833be1965, 0xbfae9cbd15ff5527, // 0.99821, -0.05979
+ 0x3feff095658e71ad, 0xbfaf656e79f820e0, // 0.99812, -0.061321
+ 0x3fefefcdaa704562, 0xbfb0170d833bf421, // 0.99802, -0.062852
+ 0x3fefef0102826191, 0xbfb07b614e463064, // 0.99793, -0.064383
+ 0x3fefee2f6de455ba, 0xbfb0dfb28ea201e6, // 0.99783, -0.065913
+ 0x3fefed58ecb673c4, 0xbfb1440134d709b2, // 0.99772, -0.067444
+ 0x3fefec7d7f19cffc, 0xbfb1a84d316d4f8a, // 0.99762, -0.068974
+ 0x3fefeb9d2530410f, 0xbfb20c9674ed444c, // 0.99751, -0.070505
+ 0x3fefeab7df1c6005, 0xbfb270dcefdfc45b, // 0.9974, -0.072035
+ 0x3fefe9cdad01883a, 0xbfb2d52092ce19f6, // 0.99729, -0.073565
+ 0x3fefe8de8f03d75c, 0xbfb339614e41ffa5, // 0.99718, -0.075094
+ 0x3fefe7ea85482d60, 0xbfb39d9f12c5a299, // 0.99706, -0.076624
+ 0x3fefe6f18ff42c84, 0xbfb401d9d0e3a507, // 0.99694, -0.078153
+ 0x3fefe5f3af2e3940, 0xbfb4661179272096, // 0.99682, -0.079682
+ 0x3fefe4f0e31d7a4a, 0xbfb4ca45fc1ba8b6, // 0.9967, -0.081211
+ 0x3fefe3e92be9d886, 0xbfb52e774a4d4d0a, // 0.99657, -0.08274
+ 0x3fefe2dc89bbff08, 0xbfb592a554489bc8, // 0.99644, -0.084269
+ 0x3fefe1cafcbd5b09, 0xbfb5f6d00a9aa419, // 0.99631, -0.085797
+ 0x3fefe0b485181be3, 0xbfb65af75dd0f87b, // 0.99618, -0.087326
+ 0x3fefdf9922f73307, 0xbfb6bf1b3e79b129, // 0.99604, -0.088854
+ 0x3fefde78d68653fd, 0xbfb7233b9d236e71, // 0.99591, -0.090381
+ 0x3fefdd539ff1f456, 0xbfb787586a5d5b21, // 0.99577, -0.091909
+ 0x3fefdc297f674ba9, 0xbfb7eb7196b72ee4, // 0.99563, -0.093436
+ 0x3fefdafa7514538c, 0xbfb84f8712c130a0, // 0.99548, -0.094963
+ 0x3fefd9c68127c78c, 0xbfb8b398cf0c38e0, // 0.99533, -0.09649
+ 0x3fefd88da3d12526, 0xbfb917a6bc29b42c, // 0.99518, -0.098017
+ 0x3fefd74fdd40abbf, 0xbfb97bb0caaba56f, // 0.99503, -0.099544
+ 0x3fefd60d2da75c9e, 0xbfb9dfb6eb24a85c, // 0.99488, -0.10107
+ 0x3fefd4c59536fae4, 0xbfba43b90e27f3c4, // 0.99472, -0.1026
+ 0x3fefd37914220b84, 0xbfbaa7b724495c04, // 0.99456, -0.10412
+ 0x3fefd227aa9bd53b, 0xbfbb0bb11e1d5559, // 0.9944, -0.10565
+ 0x3fefd0d158d86087, 0xbfbb6fa6ec38f64c, // 0.99424, -0.10717
+ 0x3fefcf761f0c77a3, 0xbfbbd3987f31fa0e, // 0.99407, -0.1087
+ 0x3fefce15fd6da67b, 0xbfbc3785c79ec2d5, // 0.99391, -0.11022
+ 0x3fefccb0f4323aa3, 0xbfbc9b6eb6165c42, // 0.99374, -0.11175
+ 0x3fefcb4703914354, 0xbfbcff533b307dc1, // 0.99356, -0.11327
+ 0x3fefc9d82bc2915e, 0xbfbd633347858ce4, // 0.99339, -0.11479
+ 0x3fefc8646cfeb721, 0xbfbdc70ecbae9fc8, // 0.99321, -0.11632
+ 0x3fefc6ebc77f0887, 0xbfbe2ae5b8457f77, // 0.99303, -0.11784
+ 0x3fefc56e3b7d9af6, 0xbfbe8eb7fde4aa3e, // 0.99285, -0.11937
+ 0x3fefc3ebc935454c, 0xbfbef2858d27561b, // 0.99267, -0.12089
+ 0x3fefc26470e19fd3, 0xbfbf564e56a9730e, // 0.99248, -0.12241
+ 0x3fefc0d832bf043a, 0xbfbfba124b07ad85, // 0.99229, -0.12393
+ 0x3fefbf470f0a8d88, 0xbfc00ee8ad6fb85b, // 0.9921, -0.12545
+ 0x3fefbdb106021816, 0xbfc040c5bb67747e, // 0.99191, -0.12698
+ 0x3fefbc1617e44186, 0xbfc072a047ba831d, // 0.99171, -0.1285
+ 0x3fefba7644f068b5, 0xbfc0a4784ab8bf1d, // 0.99151, -0.13002
+ 0x3fefb8d18d66adb7, 0xbfc0d64dbcb26786, // 0.99131, -0.13154
+ 0x3fefb727f187f1c7, 0xbfc1082095f820b0, // 0.99111, -0.13306
+ 0x3fefb5797195d741, 0xbfc139f0cedaf576, // 0.9909, -0.13458
+ 0x3fefb3c60dd2c199, 0xbfc16bbe5fac5865, // 0.9907, -0.1361
+ 0x3fefb20dc681d54d, 0xbfc19d8940be24e7, // 0.99049, -0.13762
+ 0x3fefb0509be6f7db, 0xbfc1cf516a62a077, // 0.99027, -0.13914
+ 0x3fefae8e8e46cfbb, 0xbfc20116d4ec7bce, // 0.99006, -0.14066
+ 0x3fefacc79de6c44f, 0xbfc232d978aed413, // 0.98984, -0.14218
+ 0x3fefaafbcb0cfddc, 0xbfc264994dfd340a, // 0.98962, -0.1437
+ 0x3fefa92b1600657c, 0xbfc296564d2b953e, // 0.9894, -0.14521
+ 0x3fefa7557f08a517, 0xbfc2c8106e8e613a, // 0.98918, -0.14673
+ 0x3fefa57b066e2754, 0xbfc2f9c7aa7a72af, // 0.98895, -0.14825
+ 0x3fefa39bac7a1791, 0xbfc32b7bf94516a7, // 0.98872, -0.14976
+ 0x3fefa1b7717661d5, 0xbfc35d2d53440db2, // 0.98849, -0.15128
+ 0x3fef9fce55adb2c8, 0xbfc38edbb0cd8d14, // 0.98826, -0.1528
+ 0x3fef9de0596b77a3, 0xbfc3c0870a383ff6, // 0.98802, -0.15431
+ 0x3fef9bed7cfbde29, 0xbfc3f22f57db4893, // 0.98778, -0.15583
+ 0x3fef99f5c0abd496, 0xbfc423d4920e4166, // 0.98754, -0.15734
+ 0x3fef97f924c9099b, 0xbfc45576b1293e5a, // 0.9873, -0.15886
+ 0x3fef95f7a9a1ec47, 0xbfc48715ad84cdf5, // 0.98706, -0.16037
+ 0x3fef93f14f85ac08, 0xbfc4b8b17f79fa88, // 0.98681, -0.16189
+ 0x3fef91e616c43891, 0xbfc4ea4a1f624b61, // 0.98656, -0.1634
+ 0x3fef8fd5ffae41db, 0xbfc51bdf8597c5f2, // 0.98631, -0.16491
+ 0x3fef8dc10a95380d, 0xbfc54d71aa74ef02, // 0.98605, -0.16643
+ 0x3fef8ba737cb4b78, 0xbfc57f008654cbde, // 0.9858, -0.16794
+ 0x3fef898887a36c84, 0xbfc5b08c1192e381, // 0.98554, -0.16945
+ 0x3fef8764fa714ba9, 0xbfc5e214448b3fc6, // 0.98528, -0.17096
+ 0x3fef853c9089595e, 0xbfc61399179a6e94, // 0.98501, -0.17247
+ 0x3fef830f4a40c60c, 0xbfc6451a831d830d, // 0.98475, -0.17398
+ 0x3fef80dd27ed8204, 0xbfc676987f7216b8, // 0.98448, -0.17549
+ 0x3fef7ea629e63d6e, 0xbfc6a81304f64ab2, // 0.98421, -0.177
+ 0x3fef7c6a50826840, 0xbfc6d98a0c08c8da, // 0.98394, -0.17851
+ 0x3fef7a299c1a322a, 0xbfc70afd8d08c4ff, // 0.98366, -0.18002
+ 0x3fef77e40d068a90, 0xbfc73c6d8055fe0a, // 0.98339, -0.18153
+ 0x3fef7599a3a12077, 0xbfc76dd9de50bf31, // 0.98311, -0.18304
+ 0x3fef734a60446279, 0xbfc79f429f59e11d, // 0.98282, -0.18455
+ 0x3fef70f6434b7eb7, 0xbfc7d0a7bbd2cb1b, // 0.98254, -0.18606
+ 0x3fef6e9d4d1262ca, 0xbfc802092c1d744b, // 0.98225, -0.18756
+ 0x3fef6c3f7df5bbb7, 0xbfc83366e89c64c5, // 0.98196, -0.18907
+ 0x3fef69dcd652f5de, 0xbfc864c0e9b2b6cf, // 0.98167, -0.19057
+ 0x3fef677556883cee, 0xbfc8961727c41804, // 0.98138, -0.19208
+ 0x3fef6508fef47bd5, 0xbfc8c7699b34ca7e, // 0.98108, -0.19359
+ 0x3fef6297cff75cb0, 0xbfc8f8b83c69a60a, // 0.98079, -0.19509
+ 0x3fef6021c9f148c2, 0xbfc92a0303c8194f, // 0.98048, -0.19659
+ 0x3fef5da6ed43685d, 0xbfc95b49e9b62af9, // 0.98018, -0.1981
+ 0x3fef5b273a4fa2d9, 0xbfc98c8ce69a7aec, // 0.97988, -0.1996
+ 0x3fef58a2b1789e84, 0xbfc9bdcbf2dc4366, // 0.97957, -0.2011
+ 0x3fef56195321c090, 0xbfc9ef0706e35a35, // 0.97926, -0.20261
+ 0x3fef538b1faf2d07, 0xbfca203e1b1831da, // 0.97895, -0.20411
+ 0x3fef50f81785c6b9, 0xbfca517127e3dabc, // 0.97863, -0.20561
+ 0x3fef4e603b0b2f2d, 0xbfca82a025b00451, // 0.97832, -0.20711
+ 0x3fef4bc38aa5c694, 0xbfcab3cb0ce6fe44, // 0.978, -0.20861
+ 0x3fef492206bcabb4, 0xbfcae4f1d5f3b9ab, // 0.97768, -0.21011
+ 0x3fef467bafb7bbe0, 0xbfcb16147941ca2a, // 0.97735, -0.21161
+ 0x3fef43d085ff92dd, 0xbfcb4732ef3d6722, // 0.97703, -0.21311
+ 0x3fef412089fd8adc, 0xbfcb784d30536cda, // 0.9767, -0.21461
+ 0x3fef3e6bbc1bbc65, 0xbfcba96334f15dad, // 0.97637, -0.21611
+ 0x3fef3bb21cc4fe47, 0xbfcbda74f5856330, // 0.97604, -0.2176
+ 0x3fef38f3ac64e589, 0xbfcc0b826a7e4f63, // 0.9757, -0.2191
+ 0x3fef36306b67c556, 0xbfcc3c8b8c4b9dd7, // 0.97536, -0.2206
+ 0x3fef33685a3aaef0, 0xbfcc6d90535d74dc, // 0.97503, -0.22209
+ 0x3fef309b794b719f, 0xbfcc9e90b824a6a9, // 0.97468, -0.22359
+ 0x3fef2dc9c9089a9d, 0xbfcccf8cb312b286, // 0.97434, -0.22508
+ 0x3fef2af349e17507, 0xbfcd00843c99c5f9, // 0.97399, -0.22658
+ 0x3fef2817fc4609ce, 0xbfcd31774d2cbdee, // 0.97364, -0.22807
+ 0x3fef2537e0a71f9f, 0xbfcd6265dd3f27e3, // 0.97329, -0.22957
+ 0x3fef2252f7763ada, 0xbfcd934fe5454311, // 0.97294, -0.23106
+ 0x3fef1f6941259d7a, 0xbfcdc4355db40195, // 0.97258, -0.23255
+ 0x3fef1c7abe284708, 0xbfcdf5163f01099a, // 0.97223, -0.23404
+ 0x3fef19876ef1f486, 0xbfce25f281a2b684, // 0.97187, -0.23553
+ 0x3fef168f53f7205d, 0xbfce56ca1e101a1b, // 0.9715, -0.23702
+ 0x3fef13926dad024e, 0xbfce879d0cc0fdaf, // 0.97114, -0.23851
+ 0x3fef1090bc898f5f, 0xbfceb86b462de348, // 0.97077, -0.24
+ 0x3fef0d8a410379c5, 0xbfcee934c2d006c7, // 0.9704, -0.24149
+ 0x3fef0a7efb9230d7, 0xbfcf19f97b215f1a, // 0.97003, -0.24298
+ 0x3fef076eecade0fa, 0xbfcf4ab9679c9f5c, // 0.96966, -0.24447
+ 0x3fef045a14cf738c, 0xbfcf7b7480bd3801, // 0.96928, -0.24596
+ 0x3fef014074708ed3, 0xbfcfac2abeff57ff, // 0.9689, -0.24744
+ 0x3feefe220c0b95ec, 0xbfcfdcdc1adfedf8, // 0.96852, -0.24893
+ 0x3feefafedc1ba8b7, 0xbfd006c4466e54af, // 0.96814, -0.25041
+ 0x3feef7d6e51ca3c0, 0xbfd01f1806b9fdd2, // 0.96775, -0.2519
+ 0x3feef4aa278b2032, 0xbfd037694a928cac, // 0.96737, -0.25338
+ 0x3feef178a3e473c2, 0xbfd04fb80e37fdae, // 0.96698, -0.25487
+ 0x3feeee425aa6b09a, 0xbfd068044deab002, // 0.96658, -0.25635
+ 0x3feeeb074c50a544, 0xbfd0804e05eb661e, // 0.96619, -0.25783
+ 0x3feee7c77961dc9e, 0xbfd09895327b465e, // 0.96579, -0.25931
+ 0x3feee482e25a9dbc, 0xbfd0b0d9cfdbdb90, // 0.96539, -0.26079
+ 0x3feee13987bbebdc, 0xbfd0c91bda4f158d, // 0.96499, -0.26227
+ 0x3feeddeb6a078651, 0xbfd0e15b4e1749cd, // 0.96459, -0.26375
+ 0x3feeda9889bfe86a, 0xbfd0f998277733f7, // 0.96418, -0.26523
+ 0x3feed740e7684963, 0xbfd111d262b1f677, // 0.96378, -0.26671
+ 0x3feed3e483849c51, 0xbfd12a09fc0b1b12, // 0.96337, -0.26819
+ 0x3feed0835e999009, 0xbfd1423eefc69378, // 0.96295, -0.26967
+ 0x3feecd1d792c8f10, 0xbfd15a713a28b9d9, // 0.96254, -0.27115
+ 0x3feec9b2d3c3bf84, 0xbfd172a0d7765177, // 0.96212, -0.27262
+ 0x3feec6436ee60309, 0xbfd18acdc3f4873a, // 0.9617, -0.2741
+ 0x3feec2cf4b1af6b2, 0xbfd1a2f7fbe8f243, // 0.96128, -0.27557
+ 0x3feebf5668eaf2ef, 0xbfd1bb1f7b999480, // 0.96086, -0.27705
+ 0x3feebbd8c8df0b74, 0xbfd1d3443f4cdb3d, // 0.96043, -0.27852
+ 0x3feeb8566b810f2a, 0xbfd1eb6643499fbb, // 0.96, -0.27999
+ 0x3feeb4cf515b8811, 0xbfd2038583d727bd, // 0.95957, -0.28146
+ 0x3feeb1437af9bb34, 0xbfd21ba1fd3d2623, // 0.95914, -0.28294
+ 0x3feeadb2e8e7a88e, 0xbfd233bbabc3bb72, // 0.9587, -0.28441
+ 0x3feeaa1d9bb20af3, 0xbfd24bd28bb37672, // 0.95827, -0.28588
+ 0x3feea68393e65800, 0xbfd263e6995554ba, // 0.95783, -0.28735
+ 0x3feea2e4d212c000, 0xbfd27bf7d0f2c346, // 0.95738, -0.28882
+ 0x3fee9f4156c62dda, 0xbfd294062ed59f05, // 0.95694, -0.29028
+ 0x3fee9b99229046f8, 0xbfd2ac11af483572, // 0.95649, -0.29175
+ 0x3fee97ec36016b30, 0xbfd2c41a4e954520, // 0.95605, -0.29322
+ 0x3fee943a91aab4b4, 0xbfd2dc200907fe51, // 0.95559, -0.29469
+ 0x3fee9084361df7f3, 0xbfd2f422daec0386, // 0.95514, -0.29615
+ 0x3fee8cc923edc388, 0xbfd30c22c08d6a13, // 0.95469, -0.29762
+ 0x3fee89095bad6025, 0xbfd3241fb638baaf, // 0.95423, -0.29908
+ 0x3fee8544ddf0d075, 0xbfd33c19b83af207, // 0.95377, -0.30054
+ 0x3fee817bab4cd10d, 0xbfd35410c2e18152, // 0.95331, -0.30201
+ 0x3fee7dadc456d850, 0xbfd36c04d27a4edf, // 0.95284, -0.30347
+ 0x3fee79db29a5165a, 0xbfd383f5e353b6aa, // 0.95238, -0.30493
+ 0x3fee7603dbce74e9, 0xbfd39be3f1bc8aef, // 0.95191, -0.30639
+ 0x3fee7227db6a9744, 0xbfd3b3cefa0414b7, // 0.95144, -0.30785
+ 0x3fee6e472911da27, 0xbfd3cbb6f87a146e, // 0.95096, -0.30931
+ 0x3fee6a61c55d53a7, 0xbfd3e39be96ec271, // 0.95049, -0.31077
+ 0x3fee6677b0e6d31e, 0xbfd3fb7dc932cfa4, // 0.95001, -0.31222
+ 0x3fee6288ec48e112, 0xbfd4135c94176602, // 0.94953, -0.31368
+ 0x3fee5e95781ebf1c, 0xbfd42b38466e2928, // 0.94905, -0.31514
+ 0x3fee5a9d550467d3, 0xbfd44310dc8936f0, // 0.94856, -0.31659
+ 0x3fee56a083968eb1, 0xbfd45ae652bb2800, // 0.94807, -0.31805
+ 0x3fee529f04729ffc, 0xbfd472b8a5571054, // 0.94759, -0.3195
+ 0x3fee4e98d836c0af, 0xbfd48a87d0b07fd7, // 0.94709, -0.32096
+ 0x3fee4a8dff81ce5e, 0xbfd4a253d11b82f3, // 0.9466, -0.32241
+ 0x3fee467e7af35f23, 0xbfd4ba1ca2eca31c, // 0.94611, -0.32386
+ 0x3fee426a4b2bc17e, 0xbfd4d1e24278e76a, // 0.94561, -0.32531
+ 0x3fee3e5170cbfc46, 0xbfd4e9a4ac15d520, // 0.94511, -0.32676
+ 0x3fee3a33ec75ce85, 0xbfd50163dc197047, // 0.9446, -0.32821
+ 0x3fee3611becbaf69, 0xbfd5191fceda3c35, // 0.9441, -0.32966
+ 0x3fee31eae870ce25, 0xbfd530d880af3c24, // 0.94359, -0.33111
+ 0x3fee2dbf6a0911d9, 0xbfd5488dedeff3be, // 0.94308, -0.33255
+ 0x3fee298f4439197a, 0xbfd5604012f467b4, // 0.94257, -0.334
+ 0x3fee255a77a63bb8, 0xbfd577eeec151e47, // 0.94206, -0.33545
+ 0x3fee212104f686e5, 0xbfd58f9a75ab1fdd, // 0.94154, -0.33689
+ 0x3fee1ce2ecd0c0d8, 0xbfd5a742ac0ff78d, // 0.94103, -0.33833
+ 0x3fee18a02fdc66d9, 0xbfd5bee78b9db3b6, // 0.94051, -0.33978
+ 0x3fee1458cec1ad83, 0xbfd5d68910aee686, // 0.93998, -0.34122
+ 0x3fee100cca2980ac, 0xbfd5ee27379ea693, // 0.93946, -0.34266
+ 0x3fee0bbc22bd8349, 0xbfd605c1fcc88f63, // 0.93893, -0.3441
+ 0x3fee0766d9280f54, 0xbfd61d595c88c203, // 0.9384, -0.34554
+ 0x3fee030cee1435b8, 0xbfd634ed533be58e, // 0.93787, -0.34698
+ 0x3fedfeae622dbe2b, 0xbfd64c7ddd3f27c6, // 0.93734, -0.34842
+ 0x3fedfa4b3621271d, 0xbfd6640af6f03d9e, // 0.9368, -0.34986
+ 0x3fedf5e36a9ba59c, 0xbfd67b949cad63ca, // 0.93627, -0.35129
+ 0x3fedf177004b2534, 0xbfd6931acad55f51, // 0.93573, -0.35273
+ 0x3feded05f7de47da, 0xbfd6aa9d7dc77e16, // 0.93518, -0.35416
+ 0x3fede890520465ce, 0xbfd6c21cb1e39771, // 0.93464, -0.3556
+ 0x3fede4160f6d8d81, 0xbfd6d998638a0cb5, // 0.93409, -0.35703
+ 0x3feddf9730ca837b, 0xbfd6f1108f1bc9c5, // 0.93354, -0.35846
+ 0x3feddb13b6ccc23d, 0xbfd7088530fa459e, // 0.93299, -0.3599
+ 0x3fedd68ba2267a25, 0xbfd71ff6458782ec, // 0.93244, -0.36133
+ 0x3fedd1fef38a915a, 0xbfd73763c9261092, // 0.93188, -0.36276
+ 0x3fedcd6dabaca3a5, 0xbfd74ecdb8390a3e, // 0.93133, -0.36418
+ 0x3fedc8d7cb410260, 0xbfd766340f2418f6, // 0.93077, -0.36561
+ 0x3fedc43d52fcb453, 0xbfd77d96ca4b73a6, // 0.93021, -0.36704
+ 0x3fedbf9e4395759a, 0xbfd794f5e613dfae, // 0.92964, -0.36847
+ 0x3fedbafa9dc1b78d, 0xbfd7ac515ee2b172, // 0.92907, -0.36989
+ 0x3fedb6526238a09b, 0xbfd7c3a9311dcce7, // 0.92851, -0.37132
+ 0x3fedb1a591b20c38, 0xbfd7dafd592ba621, // 0.92794, -0.37274
+ 0x3fedacf42ce68ab9, 0xbfd7f24dd37341e3, // 0.92736, -0.37416
+ 0x3feda83e348f613b, 0xbfd8099a9c5c362d, // 0.92679, -0.37559
+ 0x3feda383a9668988, 0xbfd820e3b04eaac4, // 0.92621, -0.37701
+ 0x3fed9ec48c26b1f3, 0xbfd838290bb359c8, // 0.92563, -0.37843
+ 0x3fed9a00dd8b3d46, 0xbfd84f6aaaf3903f, // 0.92505, -0.37985
+ 0x3fed95389e50429b, 0xbfd866a88a792ea0, // 0.92447, -0.38127
+ 0x3fed906bcf328d46, 0xbfd87de2a6aea963, // 0.92388, -0.38268
+ 0x3fed8b9a70ef9cb4, 0xbfd89518fbff098e, // 0.92329, -0.3841
+ 0x3fed86c48445a450, 0xbfd8ac4b86d5ed44, // 0.9227, -0.38552
+ 0x3fed81ea09f38b63, 0xbfd8c37a439f884f, // 0.92211, -0.38693
+ 0x3fed7d0b02b8ecf9, 0xbfd8daa52ec8a4af, // 0.92151, -0.38835
+ 0x3fed78276f5617c6, 0xbfd8f1cc44bea329, // 0.92092, -0.38976
+ 0x3fed733f508c0dff, 0xbfd908ef81ef7bd1, // 0.92032, -0.39117
+ 0x3fed6e52a71c8547, 0xbfd9200ee2c9be97, // 0.91972, -0.39258
+ 0x3fed696173c9e68b, 0xbfd9372a63bc93d7, // 0.91911, -0.39399
+ 0x3fed646bb7574de5, 0xbfd94e420137bce3, // 0.91851, -0.3954
+ 0x3fed5f7172888a7f, 0xbfd96555b7ab948f, // 0.9179, -0.39681
+ 0x3fed5a72a6221e73, 0xbfd97c6583890fc2, // 0.91729, -0.39822
+ 0x3fed556f52e93eb1, 0xbfd993716141bdfe, // 0.91668, -0.39962
+ 0x3fed506779a3d2d9, 0xbfd9aa794d47c9ee, // 0.91606, -0.40103
+ 0x3fed4b5b1b187524, 0xbfd9c17d440df9f2, // 0.91545, -0.40243
+ 0x3fed464a380e7242, 0xbfd9d87d4207b0ab, // 0.91483, -0.40384
+ 0x3fed4134d14dc93a, 0xbfd9ef7943a8ed8a, // 0.91421, -0.40524
+ 0x3fed3c1ae79f2b4e, 0xbfda067145664d57, // 0.91359, -0.40664
+ 0x3fed36fc7bcbfbdc, 0xbfda1d6543b50ac0, // 0.91296, -0.40804
+ 0x3fed31d98e9e503a, 0xbfda34553b0afee5, // 0.91234, -0.40944
+ 0x3fed2cb220e0ef9f, 0xbfda4b4127dea1e4, // 0.91171, -0.41084
+ 0x3fed2786335f52fc, 0xbfda622906a70b63, // 0.91107, -0.41224
+ 0x3fed2255c6e5a4e1, 0xbfda790cd3dbf31a, // 0.91044, -0.41364
+ 0x3fed1d20dc40c15c, 0xbfda8fec8bf5b166, // 0.90981, -0.41503
+ 0x3fed17e7743e35dc, 0xbfdaa6c82b6d3fc9, // 0.90917, -0.41643
+ 0x3fed12a98fac410c, 0xbfdabd9faebc3980, // 0.90853, -0.41782
+ 0x3fed0d672f59d2b9, 0xbfdad473125cdc08, // 0.90789, -0.41922
+ 0x3fed082054168bac, 0xbfdaeb4252ca07ab, // 0.90724, -0.42061
+ 0x3fed02d4feb2bd92, 0xbfdb020d6c7f4009, // 0.9066, -0.422
+ 0x3fecfd852fff6ad4, 0xbfdb18d45bf8aca6, // 0.90595, -0.42339
+ 0x3fecf830e8ce467b, 0xbfdb2f971db31972, // 0.9053, -0.42478
+ 0x3fecf2d829f1b40e, 0xbfdb4655ae2bf757, // 0.90464, -0.42617
+ 0x3feced7af43cc773, 0xbfdb5d1009e15cc0, // 0.90399, -0.42756
+ 0x3fece819488344ce, 0xbfdb73c62d520624, // 0.90333, -0.42894
+ 0x3fece2b32799a060, 0xbfdb8a7814fd5693, // 0.90267, -0.43033
+ 0x3fecdd489254fe65, 0xbfdba125bd63583e, // 0.90201, -0.43171
+ 0x3fecd7d9898b32f6, 0xbfdbb7cf2304bd01, // 0.90135, -0.43309
+ 0x3fecd2660e12c1e6, 0xbfdbce744262deee, // 0.90068, -0.43448
+ 0x3fecccee20c2de9f, 0xbfdbe51517ffc0d9, // 0.90002, -0.43586
+ 0x3fecc771c2736c09, 0xbfdbfbb1a05e0edc, // 0.89935, -0.43724
+ 0x3fecc1f0f3fcfc5c, 0xbfdc1249d8011ee7, // 0.89867, -0.43862
+ 0x3fecbc6bb638d10b, 0xbfdc28ddbb6cf145, // 0.898, -0.43999
+ 0x3fecb6e20a00da99, 0xbfdc3f6d47263129, // 0.89732, -0.44137
+ 0x3fecb153f02fb87d, 0xbfdc55f877b23537, // 0.89665, -0.44275
+ 0x3fecabc169a0b901, 0xbfdc6c7f4997000a, // 0.89597, -0.44412
+ 0x3feca62a772fd919, 0xbfdc8301b95b40c2, // 0.89528, -0.4455
+ 0x3feca08f19b9c449, 0xbfdc997fc3865388, // 0.8946, -0.44687
+ 0x3fec9aef521bd480, 0xbfdcaff964a0421d, // 0.89391, -0.44824
+ 0x3fec954b213411f5, 0xbfdcc66e9931c45d, // 0.89322, -0.44961
+ 0x3fec8fa287e13305, 0xbfdcdcdf5dc440ce, // 0.89253, -0.45098
+ 0x3fec89f587029c13, 0xbfdcf34baee1cd21, // 0.89184, -0.45235
+ 0x3fec84441f785f61, 0xbfdd09b389152ec1, // 0.89115, -0.45372
+ 0x3fec7e8e52233cf3, 0xbfdd2016e8e9db5b, // 0.89045, -0.45508
+ 0x3fec78d41fe4a267, 0xbfdd3675caebf962, // 0.88975, -0.45645
+ 0x3fec7315899eaad7, 0xbfdd4cd02ba8609c, // 0.88905, -0.45781
+ 0x3fec6d5290341eb2, 0xbfdd632607ac9aa9, // 0.88835, -0.45918
+ 0x3fec678b3488739b, 0xbfdd79775b86e389, // 0.88764, -0.46054
+ 0x3fec61bf777fcc48, 0xbfdd8fc423c62a25, // 0.88693, -0.4619
+ 0x3fec5bef59fef85a, 0xbfdda60c5cfa10d8, // 0.88622, -0.46326
+ 0x3fec561adceb743e, 0xbfddbc5003b2edf8, // 0.88551, -0.46462
+ 0x3fec5042012b6907, 0xbfddd28f1481cc58, // 0.8848, -0.46598
+ 0x3fec4a64c7a5ac4c, 0xbfdde8c98bf86bd6, // 0.88408, -0.46733
+ 0x3fec44833141c004, 0xbfddfeff66a941de, // 0.88336, -0.46869
+ 0x3fec3e9d3ee7d262, 0xbfde1530a12779f4, // 0.88264, -0.47004
+ 0x3fec38b2f180bdb1, 0xbfde2b5d3806f63b, // 0.88192, -0.4714
+ 0x3fec32c449f60831, 0xbfde418527dc4ffa, // 0.8812, -0.47275
+ 0x3fec2cd14931e3f1, 0xbfde57a86d3cd824, // 0.88047, -0.4741
+ 0x3fec26d9f01f2eaf, 0xbfde6dc704be97e2, // 0.87974, -0.47545
+ 0x3fec20de3fa971b0, 0xbfde83e0eaf85113, // 0.87901, -0.4768
+ 0x3fec1ade38bce19b, 0xbfde99f61c817eda, // 0.87828, -0.47815
+ 0x3fec14d9dc465e58, 0xbfdeb00695f25620, // 0.87755, -0.47949
+ 0x3fec0ed12b3372e9, 0xbfdec61253e3c61b, // 0.87681, -0.48084
+ 0x3fec08c426725549, 0xbfdedc1952ef78d5, // 0.87607, -0.48218
+ 0x3fec02b2cef1e641, 0xbfdef21b8fafd3b5, // 0.87533, -0.48353
+ 0x3febfc9d25a1b147, 0xbfdf081906bff7fd, // 0.87459, -0.48487
+ 0x3febf6832b71ec5b, 0xbfdf1e11b4bbc35c, // 0.87384, -0.48621
+ 0x3febf064e15377dd, 0xbfdf3405963fd068, // 0.87309, -0.48755
+ 0x3febea424837de6d, 0xbfdf49f4a7e97729, // 0.87235, -0.48889
+ 0x3febe41b611154c1, 0xbfdf5fdee656cda3, // 0.8716, -0.49023
+ 0x3febddf02cd2b983, 0xbfdf75c44e26a852, // 0.87084, -0.49156
+ 0x3febd7c0ac6f952a, 0xbfdf8ba4dbf89aba, // 0.87009, -0.4929
+ 0x3febd18ce0dc19d6, 0xbfdfa1808c6cf7e0, // 0.86933, -0.49423
+ 0x3febcb54cb0d2327, 0xbfdfb7575c24d2de, // 0.86857, -0.49557
+ 0x3febc5186bf8361d, 0xbfdfcd2947c1ff57, // 0.86781, -0.4969
+ 0x3febbed7c49380ea, 0xbfdfe2f64be7120f, // 0.86705, -0.49823
+ 0x3febb892d5d5dad5, 0xbfdff8be6537615e, // 0.86628, -0.49956
+ 0x3febb249a0b6c40d, 0xbfe00740c82b82e0, // 0.86551, -0.50089
+ 0x3febabfc262e6586, 0xbfe0121fe4f56d2c, // 0.86474, -0.50221
+ 0x3feba5aa673590d2, 0xbfe01cfc874c3eb7, // 0.86397, -0.50354
+ 0x3feb9f5464c5bffc, 0xbfe027d6ad83287e, // 0.8632, -0.50486
+ 0x3feb98fa1fd9155e, 0xbfe032ae55edbd95, // 0.86242, -0.50619
+ 0x3feb929b996a5b7f, 0xbfe03d837edff370, // 0.86165, -0.50751
+ 0x3feb8c38d27504e9, 0xbfe0485626ae221a, // 0.86087, -0.50883
+ 0x3feb85d1cbf52c02, 0xbfe053264bad0483, // 0.86009, -0.51015
+ 0x3feb7f6686e792ea, 0xbfe05df3ec31b8b6, // 0.8593, -0.51147
+ 0x3feb78f70449a34b, 0xbfe068bf0691c028, // 0.85852, -0.51279
+ 0x3feb728345196e3e, 0xbfe073879922ffed, // 0.85773, -0.5141
+ 0x3feb6c0b4a55ac17, 0xbfe07e4da23bc102, // 0.85694, -0.51542
+ 0x3feb658f14fdbc47, 0xbfe089112032b08c, // 0.85615, -0.51673
+ 0x3feb5f0ea611a532, 0xbfe093d2115ee018, // 0.85535, -0.51804
+ 0x3feb5889fe921405, 0xbfe09e907417c5e1, // 0.85456, -0.51936
+ 0x3feb52011f805c92, 0xbfe0a94c46b53d0b, // 0.85376, -0.52067
+ 0x3feb4b7409de7925, 0xbfe0b405878f85ec, // 0.85296, -0.52198
+ 0x3feb44e2beaf0a61, 0xbfe0bebc34ff4646, // 0.85216, -0.52328
+ 0x3feb3e4d3ef55712, 0xbfe0c9704d5d898f, // 0.85136, -0.52459
+ 0x3feb37b38bb54c09, 0xbfe0d421cf03c12b, // 0.85055, -0.5259
+ 0x3feb3115a5f37bf4, 0xbfe0ded0b84bc4b5, // 0.84974, -0.5272
+ 0x3feb2a738eb51f33, 0xbfe0e97d078fd23b, // 0.84893, -0.5285
+ 0x3feb23cd470013b4, 0xbfe0f426bb2a8e7d, // 0.84812, -0.5298
+ 0x3feb1d22cfdadcc6, 0xbfe0fecdd1770537, // 0.84731, -0.5311
+ 0x3feb16742a4ca2f5, 0xbfe1097248d0a956, // 0.84649, -0.5324
+ 0x3feb0fc1575d33db, 0xbfe114141f935545, // 0.84567, -0.5337
+ 0x3feb090a58150200, 0xbfe11eb3541b4b22, // 0.84485, -0.535
+ 0x3feb024f2d7d24a9, 0xbfe1294fe4c5350a, // 0.84403, -0.53629
+ 0x3feafb8fd89f57b6, 0xbfe133e9cfee254e, // 0.84321, -0.53759
+ 0x3feaf4cc5a85fb73, 0xbfe13e8113f396c1, // 0.84238, -0.53888
+ 0x3feaee04b43c1474, 0xbfe14915af336ceb, // 0.84155, -0.54017
+ 0x3feae738e6cd4b67, 0xbfe153a7a00bf453, // 0.84073, -0.54146
+ 0x3feae068f345ecef, 0xbfe15e36e4dbe2bc, // 0.83989, -0.54275
+ 0x3fead994dab2e979, 0xbfe168c37c025764, // 0.83906, -0.54404
+ 0x3fead2bc9e21d511, 0xbfe1734d63dedb49, // 0.83822, -0.54532
+ 0x3feacbe03ea0e73b, 0xbfe17dd49ad16161, // 0.83739, -0.54661
+ 0x3feac4ffbd3efac8, 0xbfe188591f3a46e5, // 0.83655, -0.54789
+ 0x3feabe1b1b0b8dac, 0xbfe192daef7a5386, // 0.83571, -0.54918
+ 0x3feab7325916c0d4, 0xbfe19d5a09f2b9b8, // 0.83486, -0.55046
+ 0x3feab045787157ff, 0xbfe1a7d66d0516e6, // 0.83402, -0.55174
+ 0x3feaa9547a2cb98e, 0xbfe1b250171373be, // 0.83317, -0.55302
+ 0x3feaa25f5f5aee60, 0xbfe1bcc706804467, // 0.83232, -0.55429
+ 0x3fea9b66290ea1a3, 0xbfe1c73b39ae68c8, // 0.83147, -0.55557
+ 0x3fea9468d85b20ae, 0xbfe1d1acaf012cc2, // 0.83062, -0.55685
+ 0x3fea8d676e545ad2, 0xbfe1dc1b64dc4872, // 0.82976, -0.55812
+ 0x3fea8661ec0ee133, 0xbfe1e68759a3e074, // 0.8289, -0.55939
+ 0x3fea7f58529fe69d, 0xbfe1f0f08bbc861b, // 0.82805, -0.56066
+ 0x3fea784aa31d3f55, 0xbfe1fb56f98b37b8, // 0.82718, -0.56193
+ 0x3fea7138de9d60f5, 0xbfe205baa17560d6, // 0.82632, -0.5632
+ 0x3fea6a230637623b, 0xbfe2101b81e0da78, // 0.82546, -0.56447
+ 0x3fea63091b02fae2, 0xbfe21a799933eb58, // 0.82459, -0.56573
+ 0x3fea5beb1e188375, 0xbfe224d4e5d5482e, // 0.82372, -0.567
+ 0x3fea54c91090f524, 0xbfe22f2d662c13e1, // 0.82285, -0.56826
+ 0x3fea4da2f385e997, 0xbfe23983189fdfd5, // 0.82198, -0.56952
+ 0x3fea4678c8119ac8, 0xbfe243d5fb98ac1f, // 0.8211, -0.57078
+ 0x3fea3f4a8f4ee2d2, 0xbfe24e260d7ee7c9, // 0.82023, -0.57204
+ 0x3fea38184a593bc6, 0xbfe258734cbb7110, // 0.81935, -0.5733
+ 0x3fea30e1fa4cbf81, 0xbfe262bdb7b795a2, // 0.81847, -0.57455
+ 0x3fea29a7a0462782, 0xbfe26d054cdd12df, // 0.81758, -0.57581
+ 0x3fea22693d62ccb9, 0xbfe2774a0a961612, // 0.8167, -0.57706
+ 0x3fea1b26d2c0a75e, 0xbfe2818bef4d3cba, // 0.81581, -0.57831
+ 0x3fea13e0617e4ec7, 0xbfe28bcaf96d94ba, // 0.81493, -0.57956
+ 0x3fea0c95eabaf937, 0xbfe2960727629ca8, // 0.81404, -0.58081
+ 0x3fea05476f967bb5, 0xbfe2a040779843fb, // 0.81314, -0.58206
+ 0x3fe9fdf4f13149de, 0xbfe2aa76e87aeb58, // 0.81225, -0.58331
+ 0x3fe9f69e70ac75bc, 0xbfe2b4aa787764c4, // 0.81135, -0.58455
+ 0x3fe9ef43ef29af94, 0xbfe2bedb25faf3ea, // 0.81046, -0.5858
+ 0x3fe9e7e56dcb45bd, 0xbfe2c908ef734e57, // 0.80956, -0.58704
+ 0x3fe9e082edb42472, 0xbfe2d333d34e9bb7, // 0.80866, -0.58828
+ 0x3fe9d91c7007d5a6, 0xbfe2dd5bcffb7616, // 0.80775, -0.58952
+ 0x3fe9d1b1f5ea80d6, 0xbfe2e780e3e8ea16, // 0.80685, -0.59076
+ 0x3fe9ca438080eadb, 0xbfe2f1a30d86773a, // 0.80594, -0.592
+ 0x3fe9c2d110f075c3, 0xbfe2fbc24b441015, // 0.80503, -0.59323
+ 0x3fe9bb5aa85f2098, 0xbfe305de9b921a94, // 0.80412, -0.59447
+ 0x3fe9b3e047f38741, 0xbfe30ff7fce17035, // 0.80321, -0.5957
+ 0x3fe9ac61f0d4e247, 0xbfe31a0e6da35e44, // 0.80229, -0.59693
+ 0x3fe9a4dfa42b06b2, 0xbfe32421ec49a620, // 0.80138, -0.59816
+ 0x3fe99d59631e65d5, 0xbfe32e3277467d6b, // 0.80046, -0.59939
+ 0x3fe995cf2ed80d22, 0xbfe338400d0c8e57, // 0.79954, -0.60062
+ 0x3fe98e410881a600, 0xbfe3424aac0ef7d6, // 0.79861, -0.60184
+ 0x3fe986aef1457594, 0xbfe34c5252c14de1, // 0.79769, -0.60307
+ 0x3fe97f18ea4e5c9e, 0xbfe35656ff9799ae, // 0.79676, -0.60429
+ 0x3fe9777ef4c7d742, 0xbfe36058b10659f3, // 0.79584, -0.60551
+ 0x3fe96fe111ddfce0, 0xbfe36a576582831b, // 0.79491, -0.60673
+ 0x3fe9683f42bd7fe1, 0xbfe374531b817f8d, // 0.79398, -0.60795
+ 0x3fe960998893ad8c, 0xbfe37e4bd1792fe2, // 0.79304, -0.60917
+ 0x3fe958efe48e6dd7, 0xbfe3884185dfeb22, // 0.79211, -0.61038
+ 0x3fe9514257dc4335, 0xbfe39234372c7f04, // 0.79117, -0.6116
+ 0x3fe94990e3ac4a6c, 0xbfe39c23e3d63029, // 0.79023, -0.61281
+ 0x3fe941db892e3a65, 0xbfe3a6108a54ba58, // 0.78929, -0.61402
+ 0x3fe93a22499263fc, 0xbfe3affa292050b9, // 0.78835, -0.61523
+ 0x3fe932652609b1cf, 0xbfe3b9e0beb19e18, // 0.7874, -0.61644
+ 0x3fe92aa41fc5a815, 0xbfe3c3c44981c517, // 0.78646, -0.61765
+ 0x3fe922df37f8646a, 0xbfe3cda4c80a6076, // 0.78551, -0.61885
+ 0x3fe91b166fd49da2, 0xbfe3d78238c58343, // 0.78456, -0.62006
+ 0x3fe91349c88da398, 0xbfe3e15c9a2db922, // 0.7836, -0.62126
+ 0x3fe90b7943575efe, 0xbfe3eb33eabe0680, // 0.78265, -0.62246
+ 0x3fe903a4e1665133, 0xbfe3f50828f1e8d2, // 0.78169, -0.62366
+ 0x3fe8fbcca3ef940d, 0xbfe3fed9534556d4, // 0.78074, -0.62486
+ 0x3fe8f3f08c28d9ac, 0xbfe408a76834c0c0, // 0.77978, -0.62606
+ 0x3fe8ec109b486c49, 0xbfe41272663d108c, // 0.77882, -0.62725
+ 0x3fe8e42cd2852e0a, 0xbfe41c3a4bdbaa26, // 0.77785, -0.62845
+ 0x3fe8dc45331698cc, 0xbfe425ff178e6bb1, // 0.77689, -0.62964
+ 0x3fe8d459be34bdfa, 0xbfe42fc0c7d3adbb, // 0.77592, -0.63083
+ 0x3fe8cc6a75184655, 0xbfe4397f5b2a4380, // 0.77495, -0.63202
+ 0x3fe8c47758fa71cb, 0xbfe4433ad0117b1d, // 0.77398, -0.63321
+ 0x3fe8bc806b151741, 0xbfe44cf325091dd6, // 0.77301, -0.63439
+ 0x3fe8b485aca2a468, 0xbfe456a858917046, // 0.77204, -0.63558
+ 0x3fe8ac871ede1d88, 0xbfe4605a692b32a2, // 0.77106, -0.63676
+ 0x3fe8a484c3031d50, 0xbfe46a095557a0f1, // 0.77008, -0.63794
+ 0x3fe89c7e9a4dd4ab, 0xbfe473b51b987347, // 0.7691, -0.63912
+ 0x3fe89474a5fb0a84, 0xbfe47d5dba6fde01, // 0.76812, -0.6403
+ 0x3fe88c66e7481ba1, 0xbfe48703306091fe, // 0.76714, -0.64148
+ 0x3fe884555f72fa6b, 0xbfe490a57bedbcdf, // 0.76615, -0.64266
+ 0x3fe87c400fba2ebf, 0xbfe49a449b9b0938, // 0.76517, -0.64383
+ 0x3fe87426f95cd5bd, 0xbfe4a3e08dec9ed6, // 0.76418, -0.645
+ 0x3fe86c0a1d9aa195, 0xbfe4ad79516722f0, // 0.76319, -0.64618
+ 0x3fe863e97db3d95a, 0xbfe4b70ee48fb869, // 0.7622, -0.64735
+ 0x3fe85bc51ae958cc, 0xbfe4c0a145ec0004, // 0.7612, -0.64851
+ 0x3fe8539cf67c9029, 0xbfe4ca30740218a3, // 0.76021, -0.64968
+ 0x3fe84b7111af83f9, 0xbfe4d3bc6d589f80, // 0.75921, -0.65085
+ 0x3fe843416dc4cce2, 0xbfe4dd453076b064, // 0.75821, -0.65201
+ 0x3fe83b0e0bff976e, 0xbfe4e6cabbe3e5e9, // 0.75721, -0.65317
+ 0x3fe832d6eda3a3e0, 0xbfe4f04d0e2859aa, // 0.75621, -0.65433
+ 0x3fe82a9c13f545ff, 0xbfe4f9cc25cca486, // 0.7552, -0.65549
+ 0x3fe8225d803964e5, 0xbfe503480159ded2, // 0.75419, -0.65665
+ 0x3fe81a1b33b57acc, 0xbfe50cc09f59a09b, // 0.75319, -0.65781
+ 0x3fe811d52faf94dc, 0xbfe51635fe5601d7, // 0.75218, -0.65896
+ 0x3fe8098b756e52fa, 0xbfe51fa81cd99aa6, // 0.75117, -0.66011
+ 0x3fe8013e0638e795, 0xbfe52916f96f8388, // 0.75015, -0.66127
+ 0x3fe7f8ece3571771, 0xbfe5328292a35596, // 0.74914, -0.66242
+ 0x3fe7f0980e113978, 0xbfe53beae7012abe, // 0.74812, -0.66356
+ 0x3fe7e83f87b03686, 0xbfe5454ff5159dfb, // 0.7471, -0.66471
+ 0x3fe7dfe3517d8937, 0xbfe54eb1bb6dcb8f, // 0.74608, -0.66586
+ 0x3fe7d7836cc33db2, 0xbfe5581038975137, // 0.74506, -0.667
+ 0x3fe7cf1fdacbf179, 0xbfe5616b6b204e6e, // 0.74403, -0.66814
+ 0x3fe7c6b89ce2d333, 0xbfe56ac35197649e, // 0.74301, -0.66928
+ 0x3fe7be4db453a27c, 0xbfe57417ea8bb75c, // 0.74198, -0.67042
+ 0x3fe7b5df226aafb0, 0xbfe57d69348cec9f, // 0.74095, -0.67156
+ 0x3fe7ad6ce874dbb6, 0xbfe586b72e2b2cfd, // 0.73992, -0.67269
+ 0x3fe7a4f707bf97d2, 0xbfe59001d5f723df, // 0.73889, -0.67383
+ 0x3fe79c7d8198e56e, 0xbfe599492a81ffbc, // 0.73785, -0.67496
+ 0x3fe79400574f55e4, 0xbfe5a28d2a5d7250, // 0.73682, -0.67609
+ 0x3fe78b7f8a320a52, 0xbfe5abcdd41bb0d8, // 0.73578, -0.67722
+ 0x3fe782fb1b90b35b, 0xbfe5b50b264f7448, // 0.73474, -0.67835
+ 0x3fe77a730cbb9100, 0xbfe5be451f8bf980, // 0.7337, -0.67948
+ 0x3fe771e75f037261, 0xbfe5c77bbe65018c, // 0.73265, -0.6806
+ 0x3fe7695813b9b594, 0xbfe5d0af016ed1d4, // 0.73161, -0.68172
+ 0x3fe760c52c304764, 0xbfe5d9dee73e345c, // 0.73056, -0.68285
+ 0x3fe7582ea9b9a329, 0xbfe5e30b6e6877f3, // 0.72951, -0.68397
+ 0x3fe74f948da8d28d, 0xbfe5ec3495837074, // 0.72846, -0.68508
+ 0x3fe746f6d9516d59, 0xbfe5f55a5b2576f8, // 0.72741, -0.6862
+ 0x3fe73e558e079942, 0xbfe5fe7cbde56a0f, // 0.72636, -0.68732
+ 0x3fe735b0ad2009b2, 0xbfe6079bbc5aadfa, // 0.7253, -0.68843
+ 0x3fe72d0837efff97, 0xbfe610b7551d2cde, // 0.72425, -0.68954
+ 0x3fe7245c2fcd492a, 0xbfe619cf86c55702, // 0.72319, -0.69065
+ 0x3fe71bac960e41bf, 0xbfe622e44fec22ff, // 0.72213, -0.69176
+ 0x3fe712f96c09d18d, 0xbfe62bf5af2b0dfd, // 0.72107, -0.69287
+ 0x3fe70a42b3176d7a, 0xbfe63503a31c1be8, // 0.72, -0.69397
+ 0x3fe701886c8f16e6, 0xbfe63e0e2a59d7aa, // 0.71894, -0.69508
+ 0x3fe6f8ca99c95b75, 0xbfe64715437f535b, // 0.71787, -0.69618
+ 0x3fe6f0093c1f54de, 0xbfe65018ed28287f, // 0.7168, -0.69728
+ 0x3fe6e74454eaa8ae, 0xbfe6591925f0783e, // 0.71573, -0.69838
+ 0x3fe6de7be585881d, 0xbfe66215ec74eb91, // 0.71466, -0.69947
+ 0x3fe6d5afef4aafcc, 0xbfe66b0f3f52b386, // 0.71358, -0.70057
+ 0x3fe6cce07395679f, 0xbfe674051d27896c, // 0.71251, -0.70166
+ 0x3fe6c40d73c18275, 0xbfe67cf78491af10, // 0.71143, -0.70275
+ 0x3fe6bb36f12b5e06, 0xbfe685e6742feeef, // 0.71035, -0.70385
+ 0x3fe6b25ced2fe29c, 0xbfe68ed1eaa19c71, // 0.70927, -0.70493
+ 0x3fe6a97f692c82ea, 0xbfe697b9e686941c, // 0.70819, -0.70602
+ 0x3fe6a09e667f3bcc, 0xbfe6a09e667f3bcc, // 0.70711, -0.70711
+ 0x3fe697b9e686941c, 0xbfe6a97f692c82ea, // 0.70602, -0.70819
+ 0x3fe68ed1eaa19c71, 0xbfe6b25ced2fe29c, // 0.70493, -0.70927
+ 0x3fe685e6742feeef, 0xbfe6bb36f12b5e06, // 0.70385, -0.71035
+ 0x3fe67cf78491af10, 0xbfe6c40d73c18275, // 0.70275, -0.71143
+ 0x3fe674051d27896c, 0xbfe6cce07395679f, // 0.70166, -0.71251
+ 0x3fe66b0f3f52b386, 0xbfe6d5afef4aafcc, // 0.70057, -0.71358
+ 0x3fe66215ec74eb91, 0xbfe6de7be585881d, // 0.69947, -0.71466
+ 0x3fe6591925f0783e, 0xbfe6e74454eaa8ae, // 0.69838, -0.71573
+ 0x3fe65018ed28287f, 0xbfe6f0093c1f54de, // 0.69728, -0.7168
+ 0x3fe64715437f535b, 0xbfe6f8ca99c95b75, // 0.69618, -0.71787
+ 0x3fe63e0e2a59d7aa, 0xbfe701886c8f16e6, // 0.69508, -0.71894
+ 0x3fe63503a31c1be8, 0xbfe70a42b3176d7a, // 0.69397, -0.72
+ 0x3fe62bf5af2b0dfd, 0xbfe712f96c09d18d, // 0.69287, -0.72107
+ 0x3fe622e44fec22ff, 0xbfe71bac960e41bf, // 0.69176, -0.72213
+ 0x3fe619cf86c55702, 0xbfe7245c2fcd492a, // 0.69065, -0.72319
+ 0x3fe610b7551d2cde, 0xbfe72d0837efff97, // 0.68954, -0.72425
+ 0x3fe6079bbc5aadfa, 0xbfe735b0ad2009b2, // 0.68843, -0.7253
+ 0x3fe5fe7cbde56a0f, 0xbfe73e558e079942, // 0.68732, -0.72636
+ 0x3fe5f55a5b2576f8, 0xbfe746f6d9516d59, // 0.6862, -0.72741
+ 0x3fe5ec3495837074, 0xbfe74f948da8d28d, // 0.68508, -0.72846
+ 0x3fe5e30b6e6877f3, 0xbfe7582ea9b9a329, // 0.68397, -0.72951
+ 0x3fe5d9dee73e345c, 0xbfe760c52c304764, // 0.68285, -0.73056
+ 0x3fe5d0af016ed1d4, 0xbfe7695813b9b594, // 0.68172, -0.73161
+ 0x3fe5c77bbe65018c, 0xbfe771e75f037261, // 0.6806, -0.73265
+ 0x3fe5be451f8bf980, 0xbfe77a730cbb9100, // 0.67948, -0.7337
+ 0x3fe5b50b264f7448, 0xbfe782fb1b90b35b, // 0.67835, -0.73474
+ 0x3fe5abcdd41bb0d8, 0xbfe78b7f8a320a52, // 0.67722, -0.73578
+ 0x3fe5a28d2a5d7250, 0xbfe79400574f55e4, // 0.67609, -0.73682
+ 0x3fe599492a81ffbc, 0xbfe79c7d8198e56e, // 0.67496, -0.73785
+ 0x3fe59001d5f723df, 0xbfe7a4f707bf97d2, // 0.67383, -0.73889
+ 0x3fe586b72e2b2cfd, 0xbfe7ad6ce874dbb6, // 0.67269, -0.73992
+ 0x3fe57d69348cec9f, 0xbfe7b5df226aafb0, // 0.67156, -0.74095
+ 0x3fe57417ea8bb75c, 0xbfe7be4db453a27c, // 0.67042, -0.74198
+ 0x3fe56ac35197649e, 0xbfe7c6b89ce2d333, // 0.66928, -0.74301
+ 0x3fe5616b6b204e6e, 0xbfe7cf1fdacbf179, // 0.66814, -0.74403
+ 0x3fe5581038975137, 0xbfe7d7836cc33db2, // 0.667, -0.74506
+ 0x3fe54eb1bb6dcb8f, 0xbfe7dfe3517d8937, // 0.66586, -0.74608
+ 0x3fe5454ff5159dfb, 0xbfe7e83f87b03686, // 0.66471, -0.7471
+ 0x3fe53beae7012abe, 0xbfe7f0980e113978, // 0.66356, -0.74812
+ 0x3fe5328292a35596, 0xbfe7f8ece3571771, // 0.66242, -0.74914
+ 0x3fe52916f96f8388, 0xbfe8013e0638e795, // 0.66127, -0.75015
+ 0x3fe51fa81cd99aa6, 0xbfe8098b756e52fa, // 0.66011, -0.75117
+ 0x3fe51635fe5601d7, 0xbfe811d52faf94dc, // 0.65896, -0.75218
+ 0x3fe50cc09f59a09b, 0xbfe81a1b33b57acc, // 0.65781, -0.75319
+ 0x3fe503480159ded2, 0xbfe8225d803964e5, // 0.65665, -0.75419
+ 0x3fe4f9cc25cca486, 0xbfe82a9c13f545ff, // 0.65549, -0.7552
+ 0x3fe4f04d0e2859aa, 0xbfe832d6eda3a3e0, // 0.65433, -0.75621
+ 0x3fe4e6cabbe3e5e9, 0xbfe83b0e0bff976e, // 0.65317, -0.75721
+ 0x3fe4dd453076b064, 0xbfe843416dc4cce2, // 0.65201, -0.75821
+ 0x3fe4d3bc6d589f80, 0xbfe84b7111af83f9, // 0.65085, -0.75921
+ 0x3fe4ca30740218a3, 0xbfe8539cf67c9029, // 0.64968, -0.76021
+ 0x3fe4c0a145ec0004, 0xbfe85bc51ae958cc, // 0.64851, -0.7612
+ 0x3fe4b70ee48fb869, 0xbfe863e97db3d95a, // 0.64735, -0.7622
+ 0x3fe4ad79516722f0, 0xbfe86c0a1d9aa195, // 0.64618, -0.76319
+ 0x3fe4a3e08dec9ed6, 0xbfe87426f95cd5bd, // 0.645, -0.76418
+ 0x3fe49a449b9b0938, 0xbfe87c400fba2ebf, // 0.64383, -0.76517
+ 0x3fe490a57bedbcdf, 0xbfe884555f72fa6b, // 0.64266, -0.76615
+ 0x3fe48703306091fe, 0xbfe88c66e7481ba1, // 0.64148, -0.76714
+ 0x3fe47d5dba6fde01, 0xbfe89474a5fb0a84, // 0.6403, -0.76812
+ 0x3fe473b51b987347, 0xbfe89c7e9a4dd4ab, // 0.63912, -0.7691
+ 0x3fe46a095557a0f1, 0xbfe8a484c3031d50, // 0.63794, -0.77008
+ 0x3fe4605a692b32a2, 0xbfe8ac871ede1d88, // 0.63676, -0.77106
+ 0x3fe456a858917046, 0xbfe8b485aca2a468, // 0.63558, -0.77204
+ 0x3fe44cf325091dd6, 0xbfe8bc806b151741, // 0.63439, -0.77301
+ 0x3fe4433ad0117b1d, 0xbfe8c47758fa71cb, // 0.63321, -0.77398
+ 0x3fe4397f5b2a4380, 0xbfe8cc6a75184655, // 0.63202, -0.77495
+ 0x3fe42fc0c7d3adbb, 0xbfe8d459be34bdfa, // 0.63083, -0.77592
+ 0x3fe425ff178e6bb1, 0xbfe8dc45331698cc, // 0.62964, -0.77689
+ 0x3fe41c3a4bdbaa26, 0xbfe8e42cd2852e0a, // 0.62845, -0.77785
+ 0x3fe41272663d108c, 0xbfe8ec109b486c49, // 0.62725, -0.77882
+ 0x3fe408a76834c0c0, 0xbfe8f3f08c28d9ac, // 0.62606, -0.77978
+ 0x3fe3fed9534556d4, 0xbfe8fbcca3ef940d, // 0.62486, -0.78074
+ 0x3fe3f50828f1e8d2, 0xbfe903a4e1665133, // 0.62366, -0.78169
+ 0x3fe3eb33eabe0680, 0xbfe90b7943575efe, // 0.62246, -0.78265
+ 0x3fe3e15c9a2db922, 0xbfe91349c88da398, // 0.62126, -0.7836
+ 0x3fe3d78238c58343, 0xbfe91b166fd49da2, // 0.62006, -0.78456
+ 0x3fe3cda4c80a6076, 0xbfe922df37f8646a, // 0.61885, -0.78551
+ 0x3fe3c3c44981c517, 0xbfe92aa41fc5a815, // 0.61765, -0.78646
+ 0x3fe3b9e0beb19e18, 0xbfe932652609b1cf, // 0.61644, -0.7874
+ 0x3fe3affa292050b9, 0xbfe93a22499263fc, // 0.61523, -0.78835
+ 0x3fe3a6108a54ba58, 0xbfe941db892e3a65, // 0.61402, -0.78929
+ 0x3fe39c23e3d63029, 0xbfe94990e3ac4a6c, // 0.61281, -0.79023
+ 0x3fe39234372c7f04, 0xbfe9514257dc4335, // 0.6116, -0.79117
+ 0x3fe3884185dfeb22, 0xbfe958efe48e6dd7, // 0.61038, -0.79211
+ 0x3fe37e4bd1792fe2, 0xbfe960998893ad8c, // 0.60917, -0.79304
+ 0x3fe374531b817f8d, 0xbfe9683f42bd7fe1, // 0.60795, -0.79398
+ 0x3fe36a576582831b, 0xbfe96fe111ddfce0, // 0.60673, -0.79491
+ 0x3fe36058b10659f3, 0xbfe9777ef4c7d742, // 0.60551, -0.79584
+ 0x3fe35656ff9799ae, 0xbfe97f18ea4e5c9e, // 0.60429, -0.79676
+ 0x3fe34c5252c14de1, 0xbfe986aef1457594, // 0.60307, -0.79769
+ 0x3fe3424aac0ef7d6, 0xbfe98e410881a600, // 0.60184, -0.79861
+ 0x3fe338400d0c8e57, 0xbfe995cf2ed80d22, // 0.60062, -0.79954
+ 0x3fe32e3277467d6b, 0xbfe99d59631e65d5, // 0.59939, -0.80046
+ 0x3fe32421ec49a620, 0xbfe9a4dfa42b06b2, // 0.59816, -0.80138
+ 0x3fe31a0e6da35e44, 0xbfe9ac61f0d4e247, // 0.59693, -0.80229
+ 0x3fe30ff7fce17035, 0xbfe9b3e047f38741, // 0.5957, -0.80321
+ 0x3fe305de9b921a94, 0xbfe9bb5aa85f2098, // 0.59447, -0.80412
+ 0x3fe2fbc24b441015, 0xbfe9c2d110f075c3, // 0.59323, -0.80503
+ 0x3fe2f1a30d86773a, 0xbfe9ca438080eadb, // 0.592, -0.80594
+ 0x3fe2e780e3e8ea16, 0xbfe9d1b1f5ea80d6, // 0.59076, -0.80685
+ 0x3fe2dd5bcffb7616, 0xbfe9d91c7007d5a6, // 0.58952, -0.80775
+ 0x3fe2d333d34e9bb7, 0xbfe9e082edb42472, // 0.58828, -0.80866
+ 0x3fe2c908ef734e57, 0xbfe9e7e56dcb45bd, // 0.58704, -0.80956
+ 0x3fe2bedb25faf3ea, 0xbfe9ef43ef29af94, // 0.5858, -0.81046
+ 0x3fe2b4aa787764c4, 0xbfe9f69e70ac75bc, // 0.58455, -0.81135
+ 0x3fe2aa76e87aeb58, 0xbfe9fdf4f13149de, // 0.58331, -0.81225
+ 0x3fe2a040779843fb, 0xbfea05476f967bb5, // 0.58206, -0.81314
+ 0x3fe2960727629ca8, 0xbfea0c95eabaf937, // 0.58081, -0.81404
+ 0x3fe28bcaf96d94ba, 0xbfea13e0617e4ec7, // 0.57956, -0.81493
+ 0x3fe2818bef4d3cba, 0xbfea1b26d2c0a75e, // 0.57831, -0.81581
+ 0x3fe2774a0a961612, 0xbfea22693d62ccb9, // 0.57706, -0.8167
+ 0x3fe26d054cdd12df, 0xbfea29a7a0462782, // 0.57581, -0.81758
+ 0x3fe262bdb7b795a2, 0xbfea30e1fa4cbf81, // 0.57455, -0.81847
+ 0x3fe258734cbb7110, 0xbfea38184a593bc6, // 0.5733, -0.81935
+ 0x3fe24e260d7ee7c9, 0xbfea3f4a8f4ee2d2, // 0.57204, -0.82023
+ 0x3fe243d5fb98ac1f, 0xbfea4678c8119ac8, // 0.57078, -0.8211
+ 0x3fe23983189fdfd5, 0xbfea4da2f385e997, // 0.56952, -0.82198
+ 0x3fe22f2d662c13e1, 0xbfea54c91090f524, // 0.56826, -0.82285
+ 0x3fe224d4e5d5482e, 0xbfea5beb1e188375, // 0.567, -0.82372
+ 0x3fe21a799933eb58, 0xbfea63091b02fae2, // 0.56573, -0.82459
+ 0x3fe2101b81e0da78, 0xbfea6a230637623b, // 0.56447, -0.82546
+ 0x3fe205baa17560d6, 0xbfea7138de9d60f5, // 0.5632, -0.82632
+ 0x3fe1fb56f98b37b8, 0xbfea784aa31d3f55, // 0.56193, -0.82718
+ 0x3fe1f0f08bbc861b, 0xbfea7f58529fe69d, // 0.56066, -0.82805
+ 0x3fe1e68759a3e074, 0xbfea8661ec0ee133, // 0.55939, -0.8289
+ 0x3fe1dc1b64dc4872, 0xbfea8d676e545ad2, // 0.55812, -0.82976
+ 0x3fe1d1acaf012cc2, 0xbfea9468d85b20ae, // 0.55685, -0.83062
+ 0x3fe1c73b39ae68c8, 0xbfea9b66290ea1a3, // 0.55557, -0.83147
+ 0x3fe1bcc706804467, 0xbfeaa25f5f5aee60, // 0.55429, -0.83232
+ 0x3fe1b250171373be, 0xbfeaa9547a2cb98e, // 0.55302, -0.83317
+ 0x3fe1a7d66d0516e6, 0xbfeab045787157ff, // 0.55174, -0.83402
+ 0x3fe19d5a09f2b9b8, 0xbfeab7325916c0d4, // 0.55046, -0.83486
+ 0x3fe192daef7a5386, 0xbfeabe1b1b0b8dac, // 0.54918, -0.83571
+ 0x3fe188591f3a46e5, 0xbfeac4ffbd3efac8, // 0.54789, -0.83655
+ 0x3fe17dd49ad16161, 0xbfeacbe03ea0e73b, // 0.54661, -0.83739
+ 0x3fe1734d63dedb49, 0xbfead2bc9e21d511, // 0.54532, -0.83822
+ 0x3fe168c37c025764, 0xbfead994dab2e979, // 0.54404, -0.83906
+ 0x3fe15e36e4dbe2bc, 0xbfeae068f345ecef, // 0.54275, -0.83989
+ 0x3fe153a7a00bf453, 0xbfeae738e6cd4b67, // 0.54146, -0.84073
+ 0x3fe14915af336ceb, 0xbfeaee04b43c1474, // 0.54017, -0.84155
+ 0x3fe13e8113f396c1, 0xbfeaf4cc5a85fb73, // 0.53888, -0.84238
+ 0x3fe133e9cfee254e, 0xbfeafb8fd89f57b6, // 0.53759, -0.84321
+ 0x3fe1294fe4c5350a, 0xbfeb024f2d7d24a9, // 0.53629, -0.84403
+ 0x3fe11eb3541b4b22, 0xbfeb090a58150200, // 0.535, -0.84485
+ 0x3fe114141f935545, 0xbfeb0fc1575d33db, // 0.5337, -0.84567
+ 0x3fe1097248d0a956, 0xbfeb16742a4ca2f5, // 0.5324, -0.84649
+ 0x3fe0fecdd1770537, 0xbfeb1d22cfdadcc6, // 0.5311, -0.84731
+ 0x3fe0f426bb2a8e7d, 0xbfeb23cd470013b4, // 0.5298, -0.84812
+ 0x3fe0e97d078fd23b, 0xbfeb2a738eb51f33, // 0.5285, -0.84893
+ 0x3fe0ded0b84bc4b5, 0xbfeb3115a5f37bf4, // 0.5272, -0.84974
+ 0x3fe0d421cf03c12b, 0xbfeb37b38bb54c09, // 0.5259, -0.85055
+ 0x3fe0c9704d5d898f, 0xbfeb3e4d3ef55712, // 0.52459, -0.85136
+ 0x3fe0bebc34ff4646, 0xbfeb44e2beaf0a61, // 0.52328, -0.85216
+ 0x3fe0b405878f85ec, 0xbfeb4b7409de7925, // 0.52198, -0.85296
+ 0x3fe0a94c46b53d0b, 0xbfeb52011f805c92, // 0.52067, -0.85376
+ 0x3fe09e907417c5e1, 0xbfeb5889fe921405, // 0.51936, -0.85456
+ 0x3fe093d2115ee018, 0xbfeb5f0ea611a532, // 0.51804, -0.85535
+ 0x3fe089112032b08c, 0xbfeb658f14fdbc47, // 0.51673, -0.85615
+ 0x3fe07e4da23bc102, 0xbfeb6c0b4a55ac17, // 0.51542, -0.85694
+ 0x3fe073879922ffed, 0xbfeb728345196e3e, // 0.5141, -0.85773
+ 0x3fe068bf0691c028, 0xbfeb78f70449a34b, // 0.51279, -0.85852
+ 0x3fe05df3ec31b8b6, 0xbfeb7f6686e792ea, // 0.51147, -0.8593
+ 0x3fe053264bad0483, 0xbfeb85d1cbf52c02, // 0.51015, -0.86009
+ 0x3fe0485626ae221a, 0xbfeb8c38d27504e9, // 0.50883, -0.86087
+ 0x3fe03d837edff370, 0xbfeb929b996a5b7f, // 0.50751, -0.86165
+ 0x3fe032ae55edbd95, 0xbfeb98fa1fd9155e, // 0.50619, -0.86242
+ 0x3fe027d6ad83287e, 0xbfeb9f5464c5bffc, // 0.50486, -0.8632
+ 0x3fe01cfc874c3eb7, 0xbfeba5aa673590d2, // 0.50354, -0.86397
+ 0x3fe0121fe4f56d2c, 0xbfebabfc262e6586, // 0.50221, -0.86474
+ 0x3fe00740c82b82e0, 0xbfebb249a0b6c40d, // 0.50089, -0.86551
+ 0x3fdff8be6537615e, 0xbfebb892d5d5dad5, // 0.49956, -0.86628
+ 0x3fdfe2f64be7120f, 0xbfebbed7c49380ea, // 0.49823, -0.86705
+ 0x3fdfcd2947c1ff57, 0xbfebc5186bf8361d, // 0.4969, -0.86781
+ 0x3fdfb7575c24d2de, 0xbfebcb54cb0d2327, // 0.49557, -0.86857
+ 0x3fdfa1808c6cf7e0, 0xbfebd18ce0dc19d6, // 0.49423, -0.86933
+ 0x3fdf8ba4dbf89aba, 0xbfebd7c0ac6f952a, // 0.4929, -0.87009
+ 0x3fdf75c44e26a852, 0xbfebddf02cd2b983, // 0.49156, -0.87084
+ 0x3fdf5fdee656cda3, 0xbfebe41b611154c1, // 0.49023, -0.8716
+ 0x3fdf49f4a7e97729, 0xbfebea424837de6d, // 0.48889, -0.87235
+ 0x3fdf3405963fd068, 0xbfebf064e15377dd, // 0.48755, -0.87309
+ 0x3fdf1e11b4bbc35c, 0xbfebf6832b71ec5b, // 0.48621, -0.87384
+ 0x3fdf081906bff7fd, 0xbfebfc9d25a1b147, // 0.48487, -0.87459
+ 0x3fdef21b8fafd3b5, 0xbfec02b2cef1e641, // 0.48353, -0.87533
+ 0x3fdedc1952ef78d5, 0xbfec08c426725549, // 0.48218, -0.87607
+ 0x3fdec61253e3c61b, 0xbfec0ed12b3372e9, // 0.48084, -0.87681
+ 0x3fdeb00695f25620, 0xbfec14d9dc465e58, // 0.47949, -0.87755
+ 0x3fde99f61c817eda, 0xbfec1ade38bce19b, // 0.47815, -0.87828
+ 0x3fde83e0eaf85113, 0xbfec20de3fa971b0, // 0.4768, -0.87901
+ 0x3fde6dc704be97e2, 0xbfec26d9f01f2eaf, // 0.47545, -0.87974
+ 0x3fde57a86d3cd824, 0xbfec2cd14931e3f1, // 0.4741, -0.88047
+ 0x3fde418527dc4ffa, 0xbfec32c449f60831, // 0.47275, -0.8812
+ 0x3fde2b5d3806f63b, 0xbfec38b2f180bdb1, // 0.4714, -0.88192
+ 0x3fde1530a12779f4, 0xbfec3e9d3ee7d262, // 0.47004, -0.88264
+ 0x3fddfeff66a941de, 0xbfec44833141c004, // 0.46869, -0.88336
+ 0x3fdde8c98bf86bd6, 0xbfec4a64c7a5ac4c, // 0.46733, -0.88408
+ 0x3fddd28f1481cc58, 0xbfec5042012b6907, // 0.46598, -0.8848
+ 0x3fddbc5003b2edf8, 0xbfec561adceb743e, // 0.46462, -0.88551
+ 0x3fdda60c5cfa10d8, 0xbfec5bef59fef85a, // 0.46326, -0.88622
+ 0x3fdd8fc423c62a25, 0xbfec61bf777fcc48, // 0.4619, -0.88693
+ 0x3fdd79775b86e389, 0xbfec678b3488739b, // 0.46054, -0.88764
+ 0x3fdd632607ac9aa9, 0xbfec6d5290341eb2, // 0.45918, -0.88835
+ 0x3fdd4cd02ba8609c, 0xbfec7315899eaad7, // 0.45781, -0.88905
+ 0x3fdd3675caebf962, 0xbfec78d41fe4a267, // 0.45645, -0.88975
+ 0x3fdd2016e8e9db5b, 0xbfec7e8e52233cf3, // 0.45508, -0.89045
+ 0x3fdd09b389152ec1, 0xbfec84441f785f61, // 0.45372, -0.89115
+ 0x3fdcf34baee1cd21, 0xbfec89f587029c13, // 0.45235, -0.89184
+ 0x3fdcdcdf5dc440ce, 0xbfec8fa287e13305, // 0.45098, -0.89253
+ 0x3fdcc66e9931c45d, 0xbfec954b213411f5, // 0.44961, -0.89322
+ 0x3fdcaff964a0421d, 0xbfec9aef521bd480, // 0.44824, -0.89391
+ 0x3fdc997fc3865388, 0xbfeca08f19b9c449, // 0.44687, -0.8946
+ 0x3fdc8301b95b40c2, 0xbfeca62a772fd919, // 0.4455, -0.89528
+ 0x3fdc6c7f4997000a, 0xbfecabc169a0b901, // 0.44412, -0.89597
+ 0x3fdc55f877b23537, 0xbfecb153f02fb87d, // 0.44275, -0.89665
+ 0x3fdc3f6d47263129, 0xbfecb6e20a00da99, // 0.44137, -0.89732
+ 0x3fdc28ddbb6cf145, 0xbfecbc6bb638d10b, // 0.43999, -0.898
+ 0x3fdc1249d8011ee7, 0xbfecc1f0f3fcfc5c, // 0.43862, -0.89867
+ 0x3fdbfbb1a05e0edc, 0xbfecc771c2736c09, // 0.43724, -0.89935
+ 0x3fdbe51517ffc0d9, 0xbfecccee20c2de9f, // 0.43586, -0.90002
+ 0x3fdbce744262deee, 0xbfecd2660e12c1e6, // 0.43448, -0.90068
+ 0x3fdbb7cf2304bd01, 0xbfecd7d9898b32f6, // 0.43309, -0.90135
+ 0x3fdba125bd63583e, 0xbfecdd489254fe65, // 0.43171, -0.90201
+ 0x3fdb8a7814fd5693, 0xbfece2b32799a060, // 0.43033, -0.90267
+ 0x3fdb73c62d520624, 0xbfece819488344ce, // 0.42894, -0.90333
+ 0x3fdb5d1009e15cc0, 0xbfeced7af43cc773, // 0.42756, -0.90399
+ 0x3fdb4655ae2bf757, 0xbfecf2d829f1b40e, // 0.42617, -0.90464
+ 0x3fdb2f971db31972, 0xbfecf830e8ce467b, // 0.42478, -0.9053
+ 0x3fdb18d45bf8aca6, 0xbfecfd852fff6ad4, // 0.42339, -0.90595
+ 0x3fdb020d6c7f4009, 0xbfed02d4feb2bd92, // 0.422, -0.9066
+ 0x3fdaeb4252ca07ab, 0xbfed082054168bac, // 0.42061, -0.90724
+ 0x3fdad473125cdc08, 0xbfed0d672f59d2b9, // 0.41922, -0.90789
+ 0x3fdabd9faebc3980, 0xbfed12a98fac410c, // 0.41782, -0.90853
+ 0x3fdaa6c82b6d3fc9, 0xbfed17e7743e35dc, // 0.41643, -0.90917
+ 0x3fda8fec8bf5b166, 0xbfed1d20dc40c15c, // 0.41503, -0.90981
+ 0x3fda790cd3dbf31a, 0xbfed2255c6e5a4e1, // 0.41364, -0.91044
+ 0x3fda622906a70b63, 0xbfed2786335f52fc, // 0.41224, -0.91107
+ 0x3fda4b4127dea1e4, 0xbfed2cb220e0ef9f, // 0.41084, -0.91171
+ 0x3fda34553b0afee5, 0xbfed31d98e9e503a, // 0.40944, -0.91234
+ 0x3fda1d6543b50ac0, 0xbfed36fc7bcbfbdc, // 0.40804, -0.91296
+ 0x3fda067145664d57, 0xbfed3c1ae79f2b4e, // 0.40664, -0.91359
+ 0x3fd9ef7943a8ed8a, 0xbfed4134d14dc93a, // 0.40524, -0.91421
+ 0x3fd9d87d4207b0ab, 0xbfed464a380e7242, // 0.40384, -0.91483
+ 0x3fd9c17d440df9f2, 0xbfed4b5b1b187524, // 0.40243, -0.91545
+ 0x3fd9aa794d47c9ee, 0xbfed506779a3d2d9, // 0.40103, -0.91606
+ 0x3fd993716141bdfe, 0xbfed556f52e93eb1, // 0.39962, -0.91668
+ 0x3fd97c6583890fc2, 0xbfed5a72a6221e73, // 0.39822, -0.91729
+ 0x3fd96555b7ab948f, 0xbfed5f7172888a7f, // 0.39681, -0.9179
+ 0x3fd94e420137bce3, 0xbfed646bb7574de5, // 0.3954, -0.91851
+ 0x3fd9372a63bc93d7, 0xbfed696173c9e68b, // 0.39399, -0.91911
+ 0x3fd9200ee2c9be97, 0xbfed6e52a71c8547, // 0.39258, -0.91972
+ 0x3fd908ef81ef7bd1, 0xbfed733f508c0dff, // 0.39117, -0.92032
+ 0x3fd8f1cc44bea329, 0xbfed78276f5617c6, // 0.38976, -0.92092
+ 0x3fd8daa52ec8a4af, 0xbfed7d0b02b8ecf9, // 0.38835, -0.92151
+ 0x3fd8c37a439f884f, 0xbfed81ea09f38b63, // 0.38693, -0.92211
+ 0x3fd8ac4b86d5ed44, 0xbfed86c48445a450, // 0.38552, -0.9227
+ 0x3fd89518fbff098e, 0xbfed8b9a70ef9cb4, // 0.3841, -0.92329
+ 0x3fd87de2a6aea963, 0xbfed906bcf328d46, // 0.38268, -0.92388
+ 0x3fd866a88a792ea0, 0xbfed95389e50429b, // 0.38127, -0.92447
+ 0x3fd84f6aaaf3903f, 0xbfed9a00dd8b3d46, // 0.37985, -0.92505
+ 0x3fd838290bb359c8, 0xbfed9ec48c26b1f3, // 0.37843, -0.92563
+ 0x3fd820e3b04eaac4, 0xbfeda383a9668988, // 0.37701, -0.92621
+ 0x3fd8099a9c5c362d, 0xbfeda83e348f613b, // 0.37559, -0.92679
+ 0x3fd7f24dd37341e3, 0xbfedacf42ce68ab9, // 0.37416, -0.92736
+ 0x3fd7dafd592ba621, 0xbfedb1a591b20c38, // 0.37274, -0.92794
+ 0x3fd7c3a9311dcce7, 0xbfedb6526238a09b, // 0.37132, -0.92851
+ 0x3fd7ac515ee2b172, 0xbfedbafa9dc1b78d, // 0.36989, -0.92907
+ 0x3fd794f5e613dfae, 0xbfedbf9e4395759a, // 0.36847, -0.92964
+ 0x3fd77d96ca4b73a6, 0xbfedc43d52fcb453, // 0.36704, -0.93021
+ 0x3fd766340f2418f6, 0xbfedc8d7cb410260, // 0.36561, -0.93077
+ 0x3fd74ecdb8390a3e, 0xbfedcd6dabaca3a5, // 0.36418, -0.93133
+ 0x3fd73763c9261092, 0xbfedd1fef38a915a, // 0.36276, -0.93188
+ 0x3fd71ff6458782ec, 0xbfedd68ba2267a25, // 0.36133, -0.93244
+ 0x3fd7088530fa459e, 0xbfeddb13b6ccc23d, // 0.3599, -0.93299
+ 0x3fd6f1108f1bc9c5, 0xbfeddf9730ca837b, // 0.35846, -0.93354
+ 0x3fd6d998638a0cb5, 0xbfede4160f6d8d81, // 0.35703, -0.93409
+ 0x3fd6c21cb1e39771, 0xbfede890520465ce, // 0.3556, -0.93464
+ 0x3fd6aa9d7dc77e16, 0xbfeded05f7de47da, // 0.35416, -0.93518
+ 0x3fd6931acad55f51, 0xbfedf177004b2534, // 0.35273, -0.93573
+ 0x3fd67b949cad63ca, 0xbfedf5e36a9ba59c, // 0.35129, -0.93627
+ 0x3fd6640af6f03d9e, 0xbfedfa4b3621271d, // 0.34986, -0.9368
+ 0x3fd64c7ddd3f27c6, 0xbfedfeae622dbe2b, // 0.34842, -0.93734
+ 0x3fd634ed533be58e, 0xbfee030cee1435b8, // 0.34698, -0.93787
+ 0x3fd61d595c88c203, 0xbfee0766d9280f54, // 0.34554, -0.9384
+ 0x3fd605c1fcc88f63, 0xbfee0bbc22bd8349, // 0.3441, -0.93893
+ 0x3fd5ee27379ea693, 0xbfee100cca2980ac, // 0.34266, -0.93946
+ 0x3fd5d68910aee686, 0xbfee1458cec1ad83, // 0.34122, -0.93998
+ 0x3fd5bee78b9db3b6, 0xbfee18a02fdc66d9, // 0.33978, -0.94051
+ 0x3fd5a742ac0ff78d, 0xbfee1ce2ecd0c0d8, // 0.33833, -0.94103
+ 0x3fd58f9a75ab1fdd, 0xbfee212104f686e5, // 0.33689, -0.94154
+ 0x3fd577eeec151e47, 0xbfee255a77a63bb8, // 0.33545, -0.94206
+ 0x3fd5604012f467b4, 0xbfee298f4439197a, // 0.334, -0.94257
+ 0x3fd5488dedeff3be, 0xbfee2dbf6a0911d9, // 0.33255, -0.94308
+ 0x3fd530d880af3c24, 0xbfee31eae870ce25, // 0.33111, -0.94359
+ 0x3fd5191fceda3c35, 0xbfee3611becbaf69, // 0.32966, -0.9441
+ 0x3fd50163dc197047, 0xbfee3a33ec75ce85, // 0.32821, -0.9446
+ 0x3fd4e9a4ac15d520, 0xbfee3e5170cbfc46, // 0.32676, -0.94511
+ 0x3fd4d1e24278e76a, 0xbfee426a4b2bc17e, // 0.32531, -0.94561
+ 0x3fd4ba1ca2eca31c, 0xbfee467e7af35f23, // 0.32386, -0.94611
+ 0x3fd4a253d11b82f3, 0xbfee4a8dff81ce5e, // 0.32241, -0.9466
+ 0x3fd48a87d0b07fd7, 0xbfee4e98d836c0af, // 0.32096, -0.94709
+ 0x3fd472b8a5571054, 0xbfee529f04729ffc, // 0.3195, -0.94759
+ 0x3fd45ae652bb2800, 0xbfee56a083968eb1, // 0.31805, -0.94807
+ 0x3fd44310dc8936f0, 0xbfee5a9d550467d3, // 0.31659, -0.94856
+ 0x3fd42b38466e2928, 0xbfee5e95781ebf1c, // 0.31514, -0.94905
+ 0x3fd4135c94176602, 0xbfee6288ec48e112, // 0.31368, -0.94953
+ 0x3fd3fb7dc932cfa4, 0xbfee6677b0e6d31e, // 0.31222, -0.95001
+ 0x3fd3e39be96ec271, 0xbfee6a61c55d53a7, // 0.31077, -0.95049
+ 0x3fd3cbb6f87a146e, 0xbfee6e472911da27, // 0.30931, -0.95096
+ 0x3fd3b3cefa0414b7, 0xbfee7227db6a9744, // 0.30785, -0.95144
+ 0x3fd39be3f1bc8aef, 0xbfee7603dbce74e9, // 0.30639, -0.95191
+ 0x3fd383f5e353b6aa, 0xbfee79db29a5165a, // 0.30493, -0.95238
+ 0x3fd36c04d27a4edf, 0xbfee7dadc456d850, // 0.30347, -0.95284
+ 0x3fd35410c2e18152, 0xbfee817bab4cd10d, // 0.30201, -0.95331
+ 0x3fd33c19b83af207, 0xbfee8544ddf0d075, // 0.30054, -0.95377
+ 0x3fd3241fb638baaf, 0xbfee89095bad6025, // 0.29908, -0.95423
+ 0x3fd30c22c08d6a13, 0xbfee8cc923edc388, // 0.29762, -0.95469
+ 0x3fd2f422daec0386, 0xbfee9084361df7f3, // 0.29615, -0.95514
+ 0x3fd2dc200907fe51, 0xbfee943a91aab4b4, // 0.29469, -0.95559
+ 0x3fd2c41a4e954520, 0xbfee97ec36016b30, // 0.29322, -0.95605
+ 0x3fd2ac11af483572, 0xbfee9b99229046f8, // 0.29175, -0.95649
+ 0x3fd294062ed59f05, 0xbfee9f4156c62dda, // 0.29028, -0.95694
+ 0x3fd27bf7d0f2c346, 0xbfeea2e4d212c000, // 0.28882, -0.95738
+ 0x3fd263e6995554ba, 0xbfeea68393e65800, // 0.28735, -0.95783
+ 0x3fd24bd28bb37672, 0xbfeeaa1d9bb20af3, // 0.28588, -0.95827
+ 0x3fd233bbabc3bb72, 0xbfeeadb2e8e7a88e, // 0.28441, -0.9587
+ 0x3fd21ba1fd3d2623, 0xbfeeb1437af9bb34, // 0.28294, -0.95914
+ 0x3fd2038583d727bd, 0xbfeeb4cf515b8811, // 0.28146, -0.95957
+ 0x3fd1eb6643499fbb, 0xbfeeb8566b810f2a, // 0.27999, -0.96
+ 0x3fd1d3443f4cdb3d, 0xbfeebbd8c8df0b74, // 0.27852, -0.96043
+ 0x3fd1bb1f7b999480, 0xbfeebf5668eaf2ef, // 0.27705, -0.96086
+ 0x3fd1a2f7fbe8f243, 0xbfeec2cf4b1af6b2, // 0.27557, -0.96128
+ 0x3fd18acdc3f4873a, 0xbfeec6436ee60309, // 0.2741, -0.9617
+ 0x3fd172a0d7765177, 0xbfeec9b2d3c3bf84, // 0.27262, -0.96212
+ 0x3fd15a713a28b9d9, 0xbfeecd1d792c8f10, // 0.27115, -0.96254
+ 0x3fd1423eefc69378, 0xbfeed0835e999009, // 0.26967, -0.96295
+ 0x3fd12a09fc0b1b12, 0xbfeed3e483849c51, // 0.26819, -0.96337
+ 0x3fd111d262b1f677, 0xbfeed740e7684963, // 0.26671, -0.96378
+ 0x3fd0f998277733f7, 0xbfeeda9889bfe86a, // 0.26523, -0.96418
+ 0x3fd0e15b4e1749cd, 0xbfeeddeb6a078651, // 0.26375, -0.96459
+ 0x3fd0c91bda4f158d, 0xbfeee13987bbebdc, // 0.26227, -0.96499
+ 0x3fd0b0d9cfdbdb90, 0xbfeee482e25a9dbc, // 0.26079, -0.96539
+ 0x3fd09895327b465e, 0xbfeee7c77961dc9e, // 0.25931, -0.96579
+ 0x3fd0804e05eb661e, 0xbfeeeb074c50a544, // 0.25783, -0.96619
+ 0x3fd068044deab002, 0xbfeeee425aa6b09a, // 0.25635, -0.96658
+ 0x3fd04fb80e37fdae, 0xbfeef178a3e473c2, // 0.25487, -0.96698
+ 0x3fd037694a928cac, 0xbfeef4aa278b2032, // 0.25338, -0.96737
+ 0x3fd01f1806b9fdd2, 0xbfeef7d6e51ca3c0, // 0.2519, -0.96775
+ 0x3fd006c4466e54af, 0xbfeefafedc1ba8b7, // 0.25041, -0.96814
+ 0x3fcfdcdc1adfedf8, 0xbfeefe220c0b95ec, // 0.24893, -0.96852
+ 0x3fcfac2abeff57ff, 0xbfef014074708ed3, // 0.24744, -0.9689
+ 0x3fcf7b7480bd3801, 0xbfef045a14cf738c, // 0.24596, -0.96928
+ 0x3fcf4ab9679c9f5c, 0xbfef076eecade0fa, // 0.24447, -0.96966
+ 0x3fcf19f97b215f1a, 0xbfef0a7efb9230d7, // 0.24298, -0.97003
+ 0x3fcee934c2d006c7, 0xbfef0d8a410379c5, // 0.24149, -0.9704
+ 0x3fceb86b462de348, 0xbfef1090bc898f5f, // 0.24, -0.97077
+ 0x3fce879d0cc0fdaf, 0xbfef13926dad024e, // 0.23851, -0.97114
+ 0x3fce56ca1e101a1b, 0xbfef168f53f7205d, // 0.23702, -0.9715
+ 0x3fce25f281a2b684, 0xbfef19876ef1f486, // 0.23553, -0.97187
+ 0x3fcdf5163f01099a, 0xbfef1c7abe284708, // 0.23404, -0.97223
+ 0x3fcdc4355db40195, 0xbfef1f6941259d7a, // 0.23255, -0.97258
+ 0x3fcd934fe5454311, 0xbfef2252f7763ada, // 0.23106, -0.97294
+ 0x3fcd6265dd3f27e3, 0xbfef2537e0a71f9f, // 0.22957, -0.97329
+ 0x3fcd31774d2cbdee, 0xbfef2817fc4609ce, // 0.22807, -0.97364
+ 0x3fcd00843c99c5f9, 0xbfef2af349e17507, // 0.22658, -0.97399
+ 0x3fcccf8cb312b286, 0xbfef2dc9c9089a9d, // 0.22508, -0.97434
+ 0x3fcc9e90b824a6a9, 0xbfef309b794b719f, // 0.22359, -0.97468
+ 0x3fcc6d90535d74dc, 0xbfef33685a3aaef0, // 0.22209, -0.97503
+ 0x3fcc3c8b8c4b9dd7, 0xbfef36306b67c556, // 0.2206, -0.97536
+ 0x3fcc0b826a7e4f63, 0xbfef38f3ac64e589, // 0.2191, -0.9757
+ 0x3fcbda74f5856330, 0xbfef3bb21cc4fe47, // 0.2176, -0.97604
+ 0x3fcba96334f15dad, 0xbfef3e6bbc1bbc65, // 0.21611, -0.97637
+ 0x3fcb784d30536cda, 0xbfef412089fd8adc, // 0.21461, -0.9767
+ 0x3fcb4732ef3d6722, 0xbfef43d085ff92dd, // 0.21311, -0.97703
+ 0x3fcb16147941ca2a, 0xbfef467bafb7bbe0, // 0.21161, -0.97735
+ 0x3fcae4f1d5f3b9ab, 0xbfef492206bcabb4, // 0.21011, -0.97768
+ 0x3fcab3cb0ce6fe44, 0xbfef4bc38aa5c694, // 0.20861, -0.978
+ 0x3fca82a025b00451, 0xbfef4e603b0b2f2d, // 0.20711, -0.97832
+ 0x3fca517127e3dabc, 0xbfef50f81785c6b9, // 0.20561, -0.97863
+ 0x3fca203e1b1831da, 0xbfef538b1faf2d07, // 0.20411, -0.97895
+ 0x3fc9ef0706e35a35, 0xbfef56195321c090, // 0.20261, -0.97926
+ 0x3fc9bdcbf2dc4366, 0xbfef58a2b1789e84, // 0.2011, -0.97957
+ 0x3fc98c8ce69a7aec, 0xbfef5b273a4fa2d9, // 0.1996, -0.97988
+ 0x3fc95b49e9b62af9, 0xbfef5da6ed43685d, // 0.1981, -0.98018
+ 0x3fc92a0303c8194f, 0xbfef6021c9f148c2, // 0.19659, -0.98048
+ 0x3fc8f8b83c69a60a, 0xbfef6297cff75cb0, // 0.19509, -0.98079
+ 0x3fc8c7699b34ca7e, 0xbfef6508fef47bd5, // 0.19359, -0.98108
+ 0x3fc8961727c41804, 0xbfef677556883cee, // 0.19208, -0.98138
+ 0x3fc864c0e9b2b6cf, 0xbfef69dcd652f5de, // 0.19057, -0.98167
+ 0x3fc83366e89c64c5, 0xbfef6c3f7df5bbb7, // 0.18907, -0.98196
+ 0x3fc802092c1d744b, 0xbfef6e9d4d1262ca, // 0.18756, -0.98225
+ 0x3fc7d0a7bbd2cb1b, 0xbfef70f6434b7eb7, // 0.18606, -0.98254
+ 0x3fc79f429f59e11d, 0xbfef734a60446279, // 0.18455, -0.98282
+ 0x3fc76dd9de50bf31, 0xbfef7599a3a12077, // 0.18304, -0.98311
+ 0x3fc73c6d8055fe0a, 0xbfef77e40d068a90, // 0.18153, -0.98339
+ 0x3fc70afd8d08c4ff, 0xbfef7a299c1a322a, // 0.18002, -0.98366
+ 0x3fc6d98a0c08c8da, 0xbfef7c6a50826840, // 0.17851, -0.98394
+ 0x3fc6a81304f64ab2, 0xbfef7ea629e63d6e, // 0.177, -0.98421
+ 0x3fc676987f7216b8, 0xbfef80dd27ed8204, // 0.17549, -0.98448
+ 0x3fc6451a831d830d, 0xbfef830f4a40c60c, // 0.17398, -0.98475
+ 0x3fc61399179a6e94, 0xbfef853c9089595e, // 0.17247, -0.98501
+ 0x3fc5e214448b3fc6, 0xbfef8764fa714ba9, // 0.17096, -0.98528
+ 0x3fc5b08c1192e381, 0xbfef898887a36c84, // 0.16945, -0.98554
+ 0x3fc57f008654cbde, 0xbfef8ba737cb4b78, // 0.16794, -0.9858
+ 0x3fc54d71aa74ef02, 0xbfef8dc10a95380d, // 0.16643, -0.98605
+ 0x3fc51bdf8597c5f2, 0xbfef8fd5ffae41db, // 0.16491, -0.98631
+ 0x3fc4ea4a1f624b61, 0xbfef91e616c43891, // 0.1634, -0.98656
+ 0x3fc4b8b17f79fa88, 0xbfef93f14f85ac08, // 0.16189, -0.98681
+ 0x3fc48715ad84cdf5, 0xbfef95f7a9a1ec47, // 0.16037, -0.98706
+ 0x3fc45576b1293e5a, 0xbfef97f924c9099b, // 0.15886, -0.9873
+ 0x3fc423d4920e4166, 0xbfef99f5c0abd496, // 0.15734, -0.98754
+ 0x3fc3f22f57db4893, 0xbfef9bed7cfbde29, // 0.15583, -0.98778
+ 0x3fc3c0870a383ff6, 0xbfef9de0596b77a3, // 0.15431, -0.98802
+ 0x3fc38edbb0cd8d14, 0xbfef9fce55adb2c8, // 0.1528, -0.98826
+ 0x3fc35d2d53440db2, 0xbfefa1b7717661d5, // 0.15128, -0.98849
+ 0x3fc32b7bf94516a7, 0xbfefa39bac7a1791, // 0.14976, -0.98872
+ 0x3fc2f9c7aa7a72af, 0xbfefa57b066e2754, // 0.14825, -0.98895
+ 0x3fc2c8106e8e613a, 0xbfefa7557f08a517, // 0.14673, -0.98918
+ 0x3fc296564d2b953e, 0xbfefa92b1600657c, // 0.14521, -0.9894
+ 0x3fc264994dfd340a, 0xbfefaafbcb0cfddc, // 0.1437, -0.98962
+ 0x3fc232d978aed413, 0xbfefacc79de6c44f, // 0.14218, -0.98984
+ 0x3fc20116d4ec7bce, 0xbfefae8e8e46cfbb, // 0.14066, -0.99006
+ 0x3fc1cf516a62a077, 0xbfefb0509be6f7db, // 0.13914, -0.99027
+ 0x3fc19d8940be24e7, 0xbfefb20dc681d54d, // 0.13762, -0.99049
+ 0x3fc16bbe5fac5865, 0xbfefb3c60dd2c199, // 0.1361, -0.9907
+ 0x3fc139f0cedaf576, 0xbfefb5797195d741, // 0.13458, -0.9909
+ 0x3fc1082095f820b0, 0xbfefb727f187f1c7, // 0.13306, -0.99111
+ 0x3fc0d64dbcb26786, 0xbfefb8d18d66adb7, // 0.13154, -0.99131
+ 0x3fc0a4784ab8bf1d, 0xbfefba7644f068b5, // 0.13002, -0.99151
+ 0x3fc072a047ba831d, 0xbfefbc1617e44186, // 0.1285, -0.99171
+ 0x3fc040c5bb67747e, 0xbfefbdb106021816, // 0.12698, -0.99191
+ 0x3fc00ee8ad6fb85b, 0xbfefbf470f0a8d88, // 0.12545, -0.9921
+ 0x3fbfba124b07ad85, 0xbfefc0d832bf043a, // 0.12393, -0.99229
+ 0x3fbf564e56a9730e, 0xbfefc26470e19fd3, // 0.12241, -0.99248
+ 0x3fbef2858d27561b, 0xbfefc3ebc935454c, // 0.12089, -0.99267
+ 0x3fbe8eb7fde4aa3e, 0xbfefc56e3b7d9af6, // 0.11937, -0.99285
+ 0x3fbe2ae5b8457f77, 0xbfefc6ebc77f0887, // 0.11784, -0.99303
+ 0x3fbdc70ecbae9fc8, 0xbfefc8646cfeb721, // 0.11632, -0.99321
+ 0x3fbd633347858ce4, 0xbfefc9d82bc2915e, // 0.11479, -0.99339
+ 0x3fbcff533b307dc1, 0xbfefcb4703914354, // 0.11327, -0.99356
+ 0x3fbc9b6eb6165c42, 0xbfefccb0f4323aa3, // 0.11175, -0.99374
+ 0x3fbc3785c79ec2d5, 0xbfefce15fd6da67b, // 0.11022, -0.99391
+ 0x3fbbd3987f31fa0e, 0xbfefcf761f0c77a3, // 0.1087, -0.99407
+ 0x3fbb6fa6ec38f64c, 0xbfefd0d158d86087, // 0.10717, -0.99424
+ 0x3fbb0bb11e1d5559, 0xbfefd227aa9bd53b, // 0.10565, -0.9944
+ 0x3fbaa7b724495c04, 0xbfefd37914220b84, // 0.10412, -0.99456
+ 0x3fba43b90e27f3c4, 0xbfefd4c59536fae4, // 0.1026, -0.99472
+ 0x3fb9dfb6eb24a85c, 0xbfefd60d2da75c9e, // 0.10107, -0.99488
+ 0x3fb97bb0caaba56f, 0xbfefd74fdd40abbf, // 0.099544, -0.99503
+ 0x3fb917a6bc29b42c, 0xbfefd88da3d12526, // 0.098017, -0.99518
+ 0x3fb8b398cf0c38e0, 0xbfefd9c68127c78c, // 0.09649, -0.99533
+ 0x3fb84f8712c130a0, 0xbfefdafa7514538c, // 0.094963, -0.99548
+ 0x3fb7eb7196b72ee4, 0xbfefdc297f674ba9, // 0.093436, -0.99563
+ 0x3fb787586a5d5b21, 0xbfefdd539ff1f456, // 0.091909, -0.99577
+ 0x3fb7233b9d236e71, 0xbfefde78d68653fd, // 0.090381, -0.99591
+ 0x3fb6bf1b3e79b129, 0xbfefdf9922f73307, // 0.088854, -0.99604
+ 0x3fb65af75dd0f87b, 0xbfefe0b485181be3, // 0.087326, -0.99618
+ 0x3fb5f6d00a9aa419, 0xbfefe1cafcbd5b09, // 0.085797, -0.99631
+ 0x3fb592a554489bc8, 0xbfefe2dc89bbff08, // 0.084269, -0.99644
+ 0x3fb52e774a4d4d0a, 0xbfefe3e92be9d886, // 0.08274, -0.99657
+ 0x3fb4ca45fc1ba8b6, 0xbfefe4f0e31d7a4a, // 0.081211, -0.9967
+ 0x3fb4661179272096, 0xbfefe5f3af2e3940, // 0.079682, -0.99682
+ 0x3fb401d9d0e3a507, 0xbfefe6f18ff42c84, // 0.078153, -0.99694
+ 0x3fb39d9f12c5a299, 0xbfefe7ea85482d60, // 0.076624, -0.99706
+ 0x3fb339614e41ffa5, 0xbfefe8de8f03d75c, // 0.075094, -0.99718
+ 0x3fb2d52092ce19f6, 0xbfefe9cdad01883a, // 0.073565, -0.99729
+ 0x3fb270dcefdfc45b, 0xbfefeab7df1c6005, // 0.072035, -0.9974
+ 0x3fb20c9674ed444c, 0xbfefeb9d2530410f, // 0.070505, -0.99751
+ 0x3fb1a84d316d4f8a, 0xbfefec7d7f19cffc, // 0.068974, -0.99762
+ 0x3fb1440134d709b2, 0xbfefed58ecb673c4, // 0.067444, -0.99772
+ 0x3fb0dfb28ea201e6, 0xbfefee2f6de455ba, // 0.065913, -0.99783
+ 0x3fb07b614e463064, 0xbfefef0102826191, // 0.064383, -0.99793
+ 0x3fb0170d833bf421, 0xbfefefcdaa704562, // 0.062852, -0.99802
+ 0x3faf656e79f820e0, 0xbfeff095658e71ad, // 0.061321, -0.99812
+ 0x3fae9cbd15ff5527, 0xbfeff15833be1965, // 0.05979, -0.99821
+ 0x3fadd406f9808ec8, 0xbfeff21614e131ed, // 0.058258, -0.9983
+ 0x3fad0b4c436f91d0, 0xbfeff2cf08da7321, // 0.056727, -0.99839
+ 0x3fac428d12c0d7e3, 0xbfeff3830f8d575c, // 0.055195, -0.99848
+ 0x3fab79c986698b78, 0xbfeff43228de1b77, // 0.053664, -0.99856
+ 0x3faab101bd5f8317, 0xbfeff4dc54b1bed3, // 0.052132, -0.99864
+ 0x3fa9e835d6993c87, 0xbfeff58192ee0358, // 0.0506, -0.99872
+ 0x3fa91f65f10dd814, 0xbfeff621e3796d7e, // 0.049068, -0.9988
+ 0x3fa856922bb513c1, 0xbfeff6bd463b444d, // 0.047535, -0.99887
+ 0x3fa78dbaa5874685, 0xbfeff753bb1b9164, // 0.046003, -0.99894
+ 0x3fa6c4df7d7d5b84, 0xbfeff7e5420320f9, // 0.044471, -0.99901
+ 0x3fa5fc00d290cd43, 0xbfeff871dadb81df, // 0.042938, -0.99908
+ 0x3fa5331ec3bba0eb, 0xbfeff8f9858f058b, // 0.041406, -0.99914
+ 0x3fa46a396ff86179, 0xbfeff97c4208c014, // 0.039873, -0.9992
+ 0x3fa3a150f6421afc, 0xbfeff9fa10348837, // 0.03834, -0.99926
+ 0x3fa2d865759455cd, 0xbfeffa72effef75d, // 0.036807, -0.99932
+ 0x3fa20f770ceb11c6, 0xbfeffae6e1556998, // 0.035274, -0.99938
+ 0x3fa14685db42c17e, 0xbfeffb55e425fdae, // 0.033741, -0.99943
+ 0x3fa07d91ff984580, 0xbfeffbbff85f9515, // 0.032208, -0.99948
+ 0x3f9f693731d1cf01, 0xbfeffc251df1d3f8, // 0.030675, -0.99953
+ 0x3f9dd7458c64ab39, 0xbfeffc8554cd213a, // 0.029142, -0.99958
+ 0x3f9c454f4ce53b1c, 0xbfeffce09ce2a679, // 0.027608, -0.99962
+ 0x3f9ab354b1504fca, 0xbfeffd36f624500c, // 0.026075, -0.99966
+ 0x3f992155f7a3667e, 0xbfeffd886084cd0d, // 0.024541, -0.9997
+ 0x3f978f535ddc9f03, 0xbfeffdd4dbf78f52, // 0.023008, -0.99974
+ 0x3f95fd4d21fab226, 0xbfeffe1c6870cb77, // 0.021474, -0.99977
+ 0x3f946b4381fce81c, 0xbfeffe5f05e578db, // 0.01994, -0.9998
+ 0x3f92d936bbe30efd, 0xbfeffe9cb44b51a1, // 0.018407, -0.99983
+ 0x3f9147270dad7132, 0xbfeffed57398d2b7, // 0.016873, -0.99986
+ 0x3f8f6a296ab997ca, 0xbfefff0943c53bd1, // 0.015339, -0.99988
+ 0x3f8c45ffe1e48ad9, 0xbfefff3824c88f6f, // 0.013805, -0.9999
+ 0x3f8921d1fcdec784, 0xbfefff62169b92db, // 0.012272, -0.99992
+ 0x3f85fda037ac05e0, 0xbfefff871937ce2f, // 0.010738, -0.99994
+ 0x3f82d96b0e509703, 0xbfefffa72c978c4f, //0.0092038, -0.99996
+ 0x3f7f6a65f9a2a3c5, 0xbfefffc250b5daef, //0.0076698, -0.99997
+ 0x3f7921f0fe670071, 0xbfefffd8858e8a92, //0.0061359, -0.99998
+ 0x3f72d97822f996bc, 0xbfefffe9cb1e2e8d, //0.0046019, -0.99999
+ 0x3f6921f8becca4ba, 0xbfeffff621621d02, // 0.003068, -1
+ 0x3f5921faaee6472d, 0xbfeffffd88586ee6, // 0.001534, -1
+};
+
+#endif
+
+
#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || defined(ARM_TABLE_TWIDDLECOEF_RFFT_F32_32)
/**
@par
diff --git a/CMSIS/DSP/Source/CommonTables/arm_const_structs.c b/CMSIS/DSP/Source/CommonTables/arm_const_structs.c
index 6887da4..75a57dc 100644
--- a/CMSIS/DSP/Source/CommonTables/arm_const_structs.c
+++ b/CMSIS/DSP/Source/CommonTables/arm_const_structs.c
@@ -29,7 +29,62 @@
#include "arm_const_structs.h"
-#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_FFT_ALLOW_TABLES)
+#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_FFT_ALLOW_TABLES)
+
+/* Floating-point structs */
+#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || (defined(ARM_TABLE_TWIDDLECOEF_F64_16) && defined(ARM_TABLE_BITREVIDX_FLT64_16))
+const arm_cfft_instance_f64 arm_cfft_sR_f64_len16 = {
+ 16, (const float64_t *)twiddleCoefF64_16, armBitRevIndexTableF64_16, ARMBITREVINDEXTABLEF64_16_TABLE_LENGTH
+};
+#endif
+
+#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || (defined(ARM_TABLE_TWIDDLECOEF_F64_32) && defined(ARM_TABLE_BITREVIDX_FLT64_32))
+const arm_cfft_instance_f64 arm_cfft_sR_f64_len32 = {
+ 32, (const float64_t *)twiddleCoefF64_32, armBitRevIndexTableF64_32, ARMBITREVINDEXTABLEF64_32_TABLE_LENGTH
+};
+#endif
+
+#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || (defined(ARM_TABLE_TWIDDLECOEF_F64_64) && defined(ARM_TABLE_BITREVIDX_FLT64_64))
+const arm_cfft_instance_f64 arm_cfft_sR_f64_len64 = {
+ 64, (const float64_t *)twiddleCoefF64_64, armBitRevIndexTableF64_64, ARMBITREVINDEXTABLEF64_64_TABLE_LENGTH
+};
+#endif
+
+#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || (defined(ARM_TABLE_TWIDDLECOEF_F64_128) && defined(ARM_TABLE_BITREVIDX_FLT64_128))
+const arm_cfft_instance_f64 arm_cfft_sR_f64_len128 = {
+ 128, (const float64_t *)twiddleCoefF64_128, armBitRevIndexTableF64_128, ARMBITREVINDEXTABLEF64_128_TABLE_LENGTH
+};
+#endif
+
+#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || (defined(ARM_TABLE_TWIDDLECOEF_F64_256) && defined(ARM_TABLE_BITREVIDX_FLT64_256))
+const arm_cfft_instance_f64 arm_cfft_sR_f64_len256 = {
+ 256, (const float64_t *)twiddleCoefF64_256, armBitRevIndexTableF64_256, ARMBITREVINDEXTABLEF64_256_TABLE_LENGTH
+};
+#endif
+
+#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || (defined(ARM_TABLE_TWIDDLECOEF_F64_512) && defined(ARM_TABLE_BITREVIDX_FLT64_512))
+const arm_cfft_instance_f64 arm_cfft_sR_f64_len512 = {
+ 512, (const float64_t *)twiddleCoefF64_512, armBitRevIndexTableF64_512, ARMBITREVINDEXTABLEF64_512_TABLE_LENGTH
+};
+#endif
+
+#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || (defined(ARM_TABLE_TWIDDLECOEF_F64_1024) && defined(ARM_TABLE_BITREVIDX_FLT64_1024))
+const arm_cfft_instance_f64 arm_cfft_sR_f64_len1024 = {
+ 1024, (const float64_t *)twiddleCoefF64_1024, armBitRevIndexTableF64_1024, ARMBITREVINDEXTABLEF64_1024_TABLE_LENGTH
+};
+#endif
+
+#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || (defined(ARM_TABLE_TWIDDLECOEF_F64_2048) && defined(ARM_TABLE_BITREVIDX_FLT64_2048))
+const arm_cfft_instance_f64 arm_cfft_sR_f64_len2048 = {
+ 2048, (const float64_t *)twiddleCoefF64_2048, armBitRevIndexTableF64_2048, ARMBITREVINDEXTABLEF64_2048_TABLE_LENGTH
+};
+#endif
+
+#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || (defined(ARM_TABLE_TWIDDLECOEF_F64_4096) && defined(ARM_TABLE_BITREVIDX_FLT64_4096))
+const arm_cfft_instance_f64 arm_cfft_sR_f64_len4096 = {
+ 4096, (const float64_t *)twiddleCoefF64_4096, armBitRevIndexTableF64_4096, ARMBITREVINDEXTABLEF64_4096_TABLE_LENGTH
+};
+#endif
/* Floating-point structs */
#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || (defined(ARM_TABLE_TWIDDLECOEF_F32_16) && defined(ARM_TABLE_BITREVIDX_FLT_16))
@@ -92,103 +147,103 @@
const arm_cfft_instance_q31 arm_cfft_sR_q31_len16 = {
16, twiddleCoef_16_q31, armBitRevIndexTable_fixed_16, ARMBITREVINDEXTABLE_FIXED_16_TABLE_LENGTH
};
-#endif
+#endif
#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || (defined(ARM_TABLE_TWIDDLECOEF_Q31_32) && defined(ARM_TABLE_BITREVIDX_FXT_32))
const arm_cfft_instance_q31 arm_cfft_sR_q31_len32 = {
32, twiddleCoef_32_q31, armBitRevIndexTable_fixed_32, ARMBITREVINDEXTABLE_FIXED_32_TABLE_LENGTH
};
-#endif
+#endif
#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || (defined(ARM_TABLE_TWIDDLECOEF_Q31_64) && defined(ARM_TABLE_BITREVIDX_FXT_64))
const arm_cfft_instance_q31 arm_cfft_sR_q31_len64 = {
64, twiddleCoef_64_q31, armBitRevIndexTable_fixed_64, ARMBITREVINDEXTABLE_FIXED_64_TABLE_LENGTH
};
-#endif
+#endif
#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || (defined(ARM_TABLE_TWIDDLECOEF_Q31_128) && defined(ARM_TABLE_BITREVIDX_FXT_128))
const arm_cfft_instance_q31 arm_cfft_sR_q31_len128 = {
128, twiddleCoef_128_q31, armBitRevIndexTable_fixed_128, ARMBITREVINDEXTABLE_FIXED_128_TABLE_LENGTH
};
-#endif
+#endif
#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || (defined(ARM_TABLE_TWIDDLECOEF_Q31_256) && defined(ARM_TABLE_BITREVIDX_FXT_256))
const arm_cfft_instance_q31 arm_cfft_sR_q31_len256 = {
256, twiddleCoef_256_q31, armBitRevIndexTable_fixed_256, ARMBITREVINDEXTABLE_FIXED_256_TABLE_LENGTH
};
-#endif
+#endif
#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || (defined(ARM_TABLE_TWIDDLECOEF_Q31_512) && defined(ARM_TABLE_BITREVIDX_FXT_512))
const arm_cfft_instance_q31 arm_cfft_sR_q31_len512 = {
512, twiddleCoef_512_q31, armBitRevIndexTable_fixed_512, ARMBITREVINDEXTABLE_FIXED_512_TABLE_LENGTH
};
-#endif
+#endif
#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || (defined(ARM_TABLE_TWIDDLECOEF_Q31_1024) && defined(ARM_TABLE_BITREVIDX_FXT_1024))
const arm_cfft_instance_q31 arm_cfft_sR_q31_len1024 = {
1024, twiddleCoef_1024_q31, armBitRevIndexTable_fixed_1024, ARMBITREVINDEXTABLE_FIXED_1024_TABLE_LENGTH
};
-#endif
+#endif
#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || (defined(ARM_TABLE_TWIDDLECOEF_Q31_2048) && defined(ARM_TABLE_BITREVIDX_FXT_2048))
const arm_cfft_instance_q31 arm_cfft_sR_q31_len2048 = {
2048, twiddleCoef_2048_q31, armBitRevIndexTable_fixed_2048, ARMBITREVINDEXTABLE_FIXED_2048_TABLE_LENGTH
};
-#endif
+#endif
#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || (defined(ARM_TABLE_TWIDDLECOEF_Q31_4096) && defined(ARM_TABLE_BITREVIDX_FXT_4096))
const arm_cfft_instance_q31 arm_cfft_sR_q31_len4096 = {
4096, twiddleCoef_4096_q31, armBitRevIndexTable_fixed_4096, ARMBITREVINDEXTABLE_FIXED_4096_TABLE_LENGTH
};
-#endif
+#endif
#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || (defined(ARM_TABLE_TWIDDLECOEF_Q15_16) && defined(ARM_TABLE_BITREVIDX_FXT_16))
const arm_cfft_instance_q15 arm_cfft_sR_q15_len16 = {
16, twiddleCoef_16_q15, armBitRevIndexTable_fixed_16, ARMBITREVINDEXTABLE_FIXED_16_TABLE_LENGTH
};
-#endif
+#endif
#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || (defined(ARM_TABLE_TWIDDLECOEF_Q15_32) && defined(ARM_TABLE_BITREVIDX_FXT_32))
const arm_cfft_instance_q15 arm_cfft_sR_q15_len32 = {
32, twiddleCoef_32_q15, armBitRevIndexTable_fixed_32, ARMBITREVINDEXTABLE_FIXED_32_TABLE_LENGTH
};
-#endif
+#endif
#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || (defined(ARM_TABLE_TWIDDLECOEF_Q15_64) && defined(ARM_TABLE_BITREVIDX_FXT_64))
const arm_cfft_instance_q15 arm_cfft_sR_q15_len64 = {
64, twiddleCoef_64_q15, armBitRevIndexTable_fixed_64, ARMBITREVINDEXTABLE_FIXED_64_TABLE_LENGTH
};
-#endif
+#endif
#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || (defined(ARM_TABLE_TWIDDLECOEF_Q15_128) && defined(ARM_TABLE_BITREVIDX_FXT_128))
const arm_cfft_instance_q15 arm_cfft_sR_q15_len128 = {
128, twiddleCoef_128_q15, armBitRevIndexTable_fixed_128, ARMBITREVINDEXTABLE_FIXED_128_TABLE_LENGTH
};
-#endif
+#endif
#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || (defined(ARM_TABLE_TWIDDLECOEF_Q15_256) && defined(ARM_TABLE_BITREVIDX_FXT_256))
const arm_cfft_instance_q15 arm_cfft_sR_q15_len256 = {
256, twiddleCoef_256_q15, armBitRevIndexTable_fixed_256, ARMBITREVINDEXTABLE_FIXED_256_TABLE_LENGTH
};
-#endif
+#endif
#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || (defined(ARM_TABLE_TWIDDLECOEF_Q15_512) && defined(ARM_TABLE_BITREVIDX_FXT_512))
const arm_cfft_instance_q15 arm_cfft_sR_q15_len512 = {
512, twiddleCoef_512_q15, armBitRevIndexTable_fixed_512, ARMBITREVINDEXTABLE_FIXED_512_TABLE_LENGTH
};
-#endif
+#endif
#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || (defined(ARM_TABLE_TWIDDLECOEF_Q15_1024) && defined(ARM_TABLE_BITREVIDX_FXT_1024))
const arm_cfft_instance_q15 arm_cfft_sR_q15_len1024 = {
1024, twiddleCoef_1024_q15, armBitRevIndexTable_fixed_1024, ARMBITREVINDEXTABLE_FIXED_1024_TABLE_LENGTH
};
-#endif
+#endif
#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || (defined(ARM_TABLE_TWIDDLECOEF_Q15_2048) && defined(ARM_TABLE_BITREVIDX_FXT_2048))
const arm_cfft_instance_q15 arm_cfft_sR_q15_len2048 = {
2048, twiddleCoef_2048_q15, armBitRevIndexTable_fixed_2048, ARMBITREVINDEXTABLE_FIXED_2048_TABLE_LENGTH
};
-#endif
+#endif
#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || (defined(ARM_TABLE_TWIDDLECOEF_Q15_4096) && defined(ARM_TABLE_BITREVIDX_FXT_4096))
const arm_cfft_instance_q15 arm_cfft_sR_q15_len4096 = {
@@ -197,6 +252,72 @@
#endif
/* Structure for real-value inputs */
+/* Double precision strucs */
+
+#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || (defined(ARM_TABLE_TWIDDLECOEF_F64_32) && defined(ARM_TABLE_BITREVIDX_FLT64_32) && defined(ARM_TABLE_TWIDDLECOEF_RFFT_F64_32))
+const arm_rfft_fast_instance_f64 arm_rfft_fast_sR_f64_len32 = {
+ { 16, (const float64_t *)twiddleCoefF64_32, armBitRevIndexTableF64_32, ARMBITREVINDEXTABLEF64_16_TABLE_LENGTH },
+ 32U,
+ (float64_t *)twiddleCoefF64_rfft_32
+};
+#endif
+
+#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || (defined(ARM_TABLE_TWIDDLECOEF_F64_64) && defined(ARM_TABLE_BITREVIDX_FLT64_64) && defined(ARM_TABLE_TWIDDLECOEF_RFFT_F64_64))
+const arm_rfft_fast_instance_f64 arm_rfft_fast_sR_f64_len64 = {
+ { 32, (const float64_t *)twiddleCoefF64_32, armBitRevIndexTableF64_32, ARMBITREVINDEXTABLEF64_32_TABLE_LENGTH },
+ 64U,
+ (float64_t *)twiddleCoefF64_rfft_64
+};
+#endif
+
+#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || (defined(ARM_TABLE_TWIDDLECOEF_F64_128) && defined(ARM_TABLE_BITREVIDX_FLT64_128) && defined(ARM_TABLE_TWIDDLECOEF_RFFT_F64_128))
+const arm_rfft_fast_instance_f64 arm_rfft_fast_sR_f64_len128 = {
+ { 64, (const float64_t *)twiddleCoefF64_64, armBitRevIndexTableF64_64, ARMBITREVINDEXTABLEF64_64_TABLE_LENGTH },
+ 128U,
+ (float64_t *)twiddleCoefF64_rfft_128
+};
+#endif
+
+#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || (defined(ARM_TABLE_TWIDDLECOEF_F64_256) && defined(ARM_TABLE_BITREVIDX_FLT64_256) && defined(ARM_TABLE_TWIDDLECOEF_RFFT_F64_256))
+const arm_rfft_fast_instance_f64 arm_rfft_fast_sR_f64_len256 = {
+ { 128, (const float64_t *)twiddleCoefF64_128, armBitRevIndexTableF64_128, ARMBITREVINDEXTABLEF64_128_TABLE_LENGTH },
+ 256U,
+ (float64_t *)twiddleCoefF64_rfft_256
+};
+#endif
+
+#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || (defined(ARM_TABLE_TWIDDLECOEF_F64_512) && defined(ARM_TABLE_BITREVIDX_FLT64_512) && defined(ARM_TABLE_TWIDDLECOEF_RFFT_F64_512))
+const arm_rfft_fast_instance_f64 arm_rfft_fast_sR_f64_len512 = {
+ { 256, (const float64_t *)twiddleCoefF64_256, armBitRevIndexTableF64_256, ARMBITREVINDEXTABLEF64_256_TABLE_LENGTH },
+ 512U,
+ (float64_t *)twiddleCoefF64_rfft_512
+};
+#endif
+
+#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || (defined(ARM_TABLE_TWIDDLECOEF_F64_1024) && defined(ARM_TABLE_BITREVIDX_FLT64_1024) && defined(ARM_TABLE_TWIDDLECOEF_RFFT_F64_1024))
+const arm_rfft_fast_instance_f64 arm_rfft_fast_sR_f64_len1024 = {
+ { 512, (const float64_t *)twiddleCoefF64_512, armBitRevIndexTableF64_512, ARMBITREVINDEXTABLEF64_512_TABLE_LENGTH },
+ 1024U,
+ (float64_t *)twiddleCoefF64_rfft_1024
+};
+#endif
+
+#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || (defined(ARM_TABLE_TWIDDLECOEF_F64_2048) && defined(ARM_TABLE_BITREVIDX_FLT64_2048) && defined(ARM_TABLE_TWIDDLECOEF_RFFT_F64_2048))
+const arm_rfft_fast_instance_f64 arm_rfft_fast_sR_f64_len2048 = {
+ { 1024, (const float64_t *)twiddleCoefF64_1024, armBitRevIndexTableF64_1024, ARMBITREVINDEXTABLEF64_1024_TABLE_LENGTH },
+ 2048U,
+ (float64_t *)twiddleCoefF64_rfft_2048
+};
+#endif
+
+#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || (defined(ARM_TABLE_TWIDDLECOEF_F64_4096) && defined(ARM_TABLE_BITREVIDX_FLT64_4096) && defined(ARM_TABLE_TWIDDLECOEF_RFFT_F64_4096))
+const arm_rfft_fast_instance_f64 arm_rfft_fast_sR_f64_len4096 = {
+ { 2048, (const float64_t *)twiddleCoefF64_2048, armBitRevIndexTableF64_2048, ARMBITREVINDEXTABLEF64_2048_TABLE_LENGTH },
+ 4096U,
+ (float64_t *)twiddleCoefF64_rfft_4096
+};
+#endif
+
/* Floating-point structs */
#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || (defined(ARM_TABLE_TWIDDLECOEF_F32_32) && defined(ARM_TABLE_BITREVIDX_FLT_32) && defined(ARM_TABLE_TWIDDLECOEF_RFFT_F32_32))
@@ -205,7 +326,7 @@
32U,
(float32_t *)twiddleCoef_rfft_32
};
-#endif
+#endif
#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || (defined(ARM_TABLE_TWIDDLECOEF_F32_64) && defined(ARM_TABLE_BITREVIDX_FLT_64) && defined(ARM_TABLE_TWIDDLECOEF_RFFT_F32_64))
const arm_rfft_fast_instance_f32 arm_rfft_fast_sR_f32_len64 = {
@@ -213,7 +334,7 @@
64U,
(float32_t *)twiddleCoef_rfft_64
};
-#endif
+#endif
#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || (defined(ARM_TABLE_TWIDDLECOEF_F32_128) && defined(ARM_TABLE_BITREVIDX_FLT_128) && defined(ARM_TABLE_TWIDDLECOEF_RFFT_F32_128))
const arm_rfft_fast_instance_f32 arm_rfft_fast_sR_f32_len128 = {
@@ -221,7 +342,7 @@
128U,
(float32_t *)twiddleCoef_rfft_128
};
-#endif
+#endif
#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || (defined(ARM_TABLE_TWIDDLECOEF_F32_256) && defined(ARM_TABLE_BITREVIDX_FLT_256) && defined(ARM_TABLE_TWIDDLECOEF_RFFT_F32_256))
const arm_rfft_fast_instance_f32 arm_rfft_fast_sR_f32_len256 = {
@@ -229,7 +350,7 @@
256U,
(float32_t *)twiddleCoef_rfft_256
};
-#endif
+#endif
#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || (defined(ARM_TABLE_TWIDDLECOEF_F32_512) && defined(ARM_TABLE_BITREVIDX_FLT_512) && defined(ARM_TABLE_TWIDDLECOEF_RFFT_F32_512))
const arm_rfft_fast_instance_f32 arm_rfft_fast_sR_f32_len512 = {
@@ -237,7 +358,7 @@
512U,
(float32_t *)twiddleCoef_rfft_512
};
-#endif
+#endif
#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || (defined(ARM_TABLE_TWIDDLECOEF_F32_1024) && defined(ARM_TABLE_BITREVIDX_FLT_1024) && defined(ARM_TABLE_TWIDDLECOEF_RFFT_F32_1024))
const arm_rfft_fast_instance_f32 arm_rfft_fast_sR_f32_len1024 = {
@@ -245,7 +366,7 @@
1024U,
(float32_t *)twiddleCoef_rfft_1024
};
-#endif
+#endif
#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || (defined(ARM_TABLE_TWIDDLECOEF_F32_2048) && defined(ARM_TABLE_BITREVIDX_FLT_2048) && defined(ARM_TABLE_TWIDDLECOEF_RFFT_F32_2048))
const arm_rfft_fast_instance_f32 arm_rfft_fast_sR_f32_len2048 = {
@@ -253,7 +374,7 @@
2048U,
(float32_t *)twiddleCoef_rfft_2048
};
-#endif
+#endif
#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || (defined(ARM_TABLE_TWIDDLECOEF_F32_4096) && defined(ARM_TABLE_BITREVIDX_FLT_4096) && defined(ARM_TABLE_TWIDDLECOEF_RFFT_F32_4096))
const arm_rfft_fast_instance_f32 arm_rfft_fast_sR_f32_len4096 = {
diff --git a/CMSIS/DSP/Source/TransformFunctions/CMakeLists.txt b/CMSIS/DSP/Source/TransformFunctions/CMakeLists.txt
index 47efca4..f29df7c 100644
--- a/CMSIS/DSP/Source/TransformFunctions/CMakeLists.txt
+++ b/CMSIS/DSP/Source/TransformFunctions/CMakeLists.txt
@@ -27,6 +27,11 @@
target_sources(CMSISDSPTransform PRIVATE arm_cfft_f32.c)
endif()
+if (NOT CONFIGTABLE OR ALLFFT OR CFFT_F64_16 OR CFFT_F64_32 OR CFFT_F64_64 OR CFFT_F64_128 OR CFFT_F64_256 OR CFFT_F64_512
+ OR CFFT_F64_1024 OR CFFT_F64_2048 OR CFFT_F64_4096)
+target_sources(CMSISDSPTransform PRIVATE arm_cfft_f64.c)
+endif()
+
if (NOT CONFIGTABLE OR ALLFFT OR CFFT_Q15_16 OR CFFT_Q15_32 OR CFFT_Q15_64 OR CFFT_Q15_128 OR CFFT_Q15_256 OR CFFT_Q15_512
OR CFFT_Q15_1024 OR CFFT_Q15_2048 OR CFFT_Q15_4096)
target_sources(CMSISDSPTransform PRIVATE arm_cfft_radix2_q15.c)
@@ -87,6 +92,15 @@
target_sources(CMSISDSPTransform PRIVATE arm_cfft_radix8_f32.c)
endif()
+if (NOT CONFIGTABLE OR ALLFFT OR RFFT_FAST_F64_32 OR RFFT_FAST_F64_64 OR RFFT_FAST_F64_128
+ OR RFFT_FAST_F64_256 OR RFFT_FAST_F64_512 OR RFFT_FAST_F64_1024 OR RFFT_FAST_F64_2048
+ OR RFFT_FAST_F64_4096 )
+target_sources(CMSISDSPTransform PRIVATE arm_rfft_fast_f64.c)
+target_sources(CMSISDSPTransform PRIVATE arm_rfft_fast_init_f64.c)
+endif()
+
+
+
if (NOT CONFIGTABLE OR ALLFFT OR RFFT_F32_128 OR RFFT_F32_512 OR RFFT_F32_2048 OR RFFT_F32_8192)
target_sources(CMSISDSPTransform PRIVATE arm_rfft_init_f32.c)
target_sources(CMSISDSPTransform PRIVATE arm_rfft_f32.c)
diff --git a/CMSIS/DSP/Source/TransformFunctions/arm_bitreversal2.c b/CMSIS/DSP/Source/TransformFunctions/arm_bitreversal2.c
index c5fe60f..802129d 100644
--- a/CMSIS/DSP/Source/TransformFunctions/arm_bitreversal2.c
+++ b/CMSIS/DSP/Source/TransformFunctions/arm_bitreversal2.c
@@ -29,6 +29,41 @@
#include "arm_math.h"
#include "arm_common_tables.h"
+
+/**
+ @brief In-place 64 bit reversal function.
+ @param[in,out] pSrc points to in-place buffer of unknown 64-bit data type
+ @param[in] bitRevLen bit reversal table length
+ @param[in] pBitRevTab points to bit reversal table
+ @return none
+*/
+
+void arm_bitreversal_64(
+ uint64_t *pSrc,
+ const uint16_t bitRevLen,
+ const uint16_t *pBitRevTab)
+{
+ uint64_t a, b, i, tmp;
+
+ for (i = 0; i < bitRevLen; )
+ {
+ a = pBitRevTab[i ] >> 2;
+ b = pBitRevTab[i + 1] >> 2;
+
+ //real
+ tmp = pSrc[a];
+ pSrc[a] = pSrc[b];
+ pSrc[b] = tmp;
+
+ //complex
+ tmp = pSrc[a+1];
+ pSrc[a+1] = pSrc[b+1];
+ pSrc[b+1] = tmp;
+
+ i += 2;
+ }
+}
+
/**
@brief In-place 32 bit reversal function.
@param[in,out] pSrc points to in-place buffer of unknown 32-bit data type
@@ -38,8 +73,8 @@
*/
void arm_bitreversal_32(
- uint32_t *pSrc,
- const uint16_t bitRevLen,
+ uint32_t *pSrc,
+ const uint16_t bitRevLen,
const uint16_t *pBitRevTab)
{
uint32_t a, b, i, tmp;
@@ -73,8 +108,8 @@
*/
void arm_bitreversal_16(
- uint16_t *pSrc,
- const uint16_t bitRevLen,
+ uint16_t *pSrc,
+ const uint16_t bitRevLen,
const uint16_t *pBitRevTab)
{
uint16_t a, b, i, tmp;
diff --git a/CMSIS/DSP/Source/TransformFunctions/arm_cfft_f64.c b/CMSIS/DSP/Source/TransformFunctions/arm_cfft_f64.c
new file mode 100644
index 0000000..8c6d3e6
--- /dev/null
+++ b/CMSIS/DSP/Source/TransformFunctions/arm_cfft_f64.c
@@ -0,0 +1,318 @@
+/* ----------------------------------------------------------------------
+ * Project: CMSIS DSP Library
+ * Title: arm_cfft_f64.c
+ * Description: Combined Radix Decimation in Frequency CFFT Double Precision Floating point processing function
+ *
+ * $Date: 29. November 2019
+ * $Revision: V1.0.0
+ *
+ * Target Processor: Cortex-M cores
+ * -------------------------------------------------------------------- */
+/*
+ * Copyright (C) 2010-2019 ARM Limited or its affiliates. All rights reserved.
+ *
+ * SPDX-License-Identifier: Apache-2.0
+ *
+ * Licensed under the Apache License, Version 2.0 (the License); you may
+ * not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an AS IS BASIS, WITHOUT
+ * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include "arm_math.h"
+#include "arm_common_tables.h"
+
+
+extern void arm_radix4_butterfly_f64(
+ float64_t * pSrc,
+ uint16_t fftLen,
+ const float64_t * pCoef,
+ uint16_t twidCoefModifier);
+
+extern void arm_bitreversal_64(
+ uint64_t * pSrc,
+ const uint16_t bitRevLen,
+ const uint16_t * pBitRevTable);
+
+/**
+* @} end of ComplexFFT group
+*/
+
+/* ----------------------------------------------------------------------
+ * Internal helper function used by the FFTs
+ * ---------------------------------------------------------------------- */
+
+/*
+* @brief Core function for the Double Precision floating-point CFFT butterfly process.
+* @param[in, out] *pSrc points to the in-place buffer of F64 data type.
+* @param[in] fftLen length of the FFT.
+* @param[in] *pCoef points to the twiddle coefficient buffer.
+* @param[in] twidCoefModifier twiddle coefficient modifier that supports different size FFTs with the same twiddle factor table.
+* @return none.
+*/
+
+void arm_radix4_butterfly_f64(
+ float64_t * pSrc,
+ uint16_t fftLen,
+ const float64_t * pCoef,
+ uint16_t twidCoefModifier)
+{
+
+ float64_t co1, co2, co3, si1, si2, si3;
+ uint32_t ia1, ia2, ia3;
+ uint32_t i0, i1, i2, i3;
+ uint32_t n1, n2, j, k;
+
+ float64_t t1, t2, r1, r2, s1, s2;
+
+
+ /* Initializations for the fft calculation */
+ n2 = fftLen;
+ n1 = n2;
+ for (k = fftLen; k > 1U; k >>= 2U)
+ {
+ /* Initializations for the fft calculation */
+ n1 = n2;
+ n2 >>= 2U;
+ ia1 = 0U;
+
+ /* FFT Calculation */
+ j = 0;
+ do
+ {
+ /* index calculation for the coefficients */
+ ia2 = ia1 + ia1;
+ ia3 = ia2 + ia1;
+ co1 = pCoef[ia1 * 2U];
+ si1 = pCoef[(ia1 * 2U) + 1U];
+ co2 = pCoef[ia2 * 2U];
+ si2 = pCoef[(ia2 * 2U) + 1U];
+ co3 = pCoef[ia3 * 2U];
+ si3 = pCoef[(ia3 * 2U) + 1U];
+
+ /* Twiddle coefficients index modifier */
+ ia1 = ia1 + twidCoefModifier;
+
+ i0 = j;
+ do
+ {
+ /* index calculation for the input as, */
+ /* pSrc[i0 + 0], pSrc[i0 + fftLen/4], pSrc[i0 + fftLen/2], pSrc[i0 + 3fftLen/4] */
+ i1 = i0 + n2;
+ i2 = i1 + n2;
+ i3 = i2 + n2;
+
+ /* xa + xc */
+ r1 = pSrc[(2U * i0)] + pSrc[(2U * i2)];
+
+ /* xa - xc */
+ r2 = pSrc[(2U * i0)] - pSrc[(2U * i2)];
+
+ /* ya + yc */
+ s1 = pSrc[(2U * i0) + 1U] + pSrc[(2U * i2) + 1U];
+
+ /* ya - yc */
+ s2 = pSrc[(2U * i0) + 1U] - pSrc[(2U * i2) + 1U];
+
+ /* xb + xd */
+ t1 = pSrc[2U * i1] + pSrc[2U * i3];
+
+ /* xa' = xa + xb + xc + xd */
+ pSrc[2U * i0] = r1 + t1;
+
+ /* xa + xc -(xb + xd) */
+ r1 = r1 - t1;
+
+ /* yb + yd */
+ t2 = pSrc[(2U * i1) + 1U] + pSrc[(2U * i3) + 1U];
+
+ /* ya' = ya + yb + yc + yd */
+ pSrc[(2U * i0) + 1U] = s1 + t2;
+
+ /* (ya + yc) - (yb + yd) */
+ s1 = s1 - t2;
+
+ /* (yb - yd) */
+ t1 = pSrc[(2U * i1) + 1U] - pSrc[(2U * i3) + 1U];
+
+ /* (xb - xd) */
+ t2 = pSrc[2U * i1] - pSrc[2U * i3];
+
+ /* xc' = (xa-xb+xc-xd)co2 + (ya-yb+yc-yd)(si2) */
+ pSrc[2U * i1] = (r1 * co2) + (s1 * si2);
+
+ /* yc' = (ya-yb+yc-yd)co2 - (xa-xb+xc-xd)(si2) */
+ pSrc[(2U * i1) + 1U] = (s1 * co2) - (r1 * si2);
+
+ /* (xa - xc) + (yb - yd) */
+ r1 = r2 + t1;
+
+ /* (xa - xc) - (yb - yd) */
+ r2 = r2 - t1;
+
+ /* (ya - yc) - (xb - xd) */
+ s1 = s2 - t2;
+
+ /* (ya - yc) + (xb - xd) */
+ s2 = s2 + t2;
+
+ /* xb' = (xa+yb-xc-yd)co1 + (ya-xb-yc+xd)(si1) */
+ pSrc[2U * i2] = (r1 * co1) + (s1 * si1);
+
+ /* yb' = (ya-xb-yc+xd)co1 - (xa+yb-xc-yd)(si1) */
+ pSrc[(2U * i2) + 1U] = (s1 * co1) - (r1 * si1);
+
+ /* xd' = (xa-yb-xc+yd)co3 + (ya+xb-yc-xd)(si3) */
+ pSrc[2U * i3] = (r2 * co3) + (s2 * si3);
+
+ /* yd' = (ya+xb-yc-xd)co3 - (xa-yb-xc+yd)(si3) */
+ pSrc[(2U * i3) + 1U] = (s2 * co3) - (r2 * si3);
+
+ i0 += n1;
+ } while ( i0 < fftLen);
+ j++;
+ } while (j <= (n2 - 1U));
+ twidCoefModifier <<= 2U;
+ }
+}
+
+/*
+* @brief Core function for the Double Precision floating-point CFFT butterfly process.
+* @param[in, out] *pSrc points to the in-place buffer of F64 data type.
+* @param[in] fftLen length of the FFT.
+* @param[in] *pCoef points to the twiddle coefficient buffer.
+* @param[in] twidCoefModifier twiddle coefficient modifier that supports different size FFTs with the same twiddle factor table.
+* @return none.
+*/
+
+void arm_cfft_radix4by2_f64(
+ float64_t * pSrc,
+ uint32_t fftLen,
+ const float64_t * pCoef)
+{
+ uint32_t i, l;
+ uint32_t n2, ia;
+ float64_t xt, yt, cosVal, sinVal;
+ float64_t p0, p1,p2,p3,a0,a1;
+
+ n2 = fftLen >> 1;
+ ia = 0;
+ for (i = 0; i < n2; i++)
+ {
+ cosVal = pCoef[2*ia];
+ sinVal = pCoef[2*ia + 1];
+ ia++;
+
+ l = i + n2;
+
+ /* Butterfly implementation */
+ a0 = pSrc[2 * i] + pSrc[2 * l];
+ xt = pSrc[2 * i] - pSrc[2 * l];
+
+ yt = pSrc[2 * i + 1] - pSrc[2 * l + 1];
+ a1 = pSrc[2 * l + 1] + pSrc[2 * i + 1];
+
+ p0 = xt * cosVal;
+ p1 = yt * sinVal;
+ p2 = yt * cosVal;
+ p3 = xt * sinVal;
+
+ pSrc[2 * i] = a0;
+ pSrc[2 * i + 1] = a1;
+
+ pSrc[2 * l] = p0 + p1;
+ pSrc[2 * l + 1] = p2 - p3;
+
+ }
+
+ // first col
+ arm_radix4_butterfly_f64( pSrc, n2, (float64_t*)pCoef, 2U);
+ // second col
+ arm_radix4_butterfly_f64( pSrc + fftLen, n2, (float64_t*)pCoef, 2U);
+
+}
+
+/**
+ @addtogroup ComplexFFT
+ @{
+ */
+
+/**
+ @brief Processing function for the Double Precision floating-point complex FFT.
+ @param[in] S points to an instance of the Double Precision floating-point CFFT structure
+ @param[in,out] p1 points to the complex data buffer of size <code>2*fftLen</code>. Processing occurs in-place
+ @param[in] ifftFlag flag that selects transform direction
+ - value = 0: forward transform
+ - value = 1: inverse transform
+ @param[in] bitReverseFlag flag that enables / disables bit reversal of output
+ - value = 0: disables bit reversal of output
+ - value = 1: enables bit reversal of output
+ @return none
+ */
+
+void arm_cfft_f64(
+ const arm_cfft_instance_f64 * S,
+ float64_t * p1,
+ uint8_t ifftFlag,
+ uint8_t bitReverseFlag)
+{
+ uint32_t L = S->fftLen, l;
+ float64_t invL, * pSrc;
+
+ if (ifftFlag == 1U)
+ {
+ /* Conjugate input data */
+ pSrc = p1 + 1;
+ for(l=0; l<L; l++)
+ {
+ *pSrc = -*pSrc;
+ pSrc += 2;
+ }
+ }
+
+ switch (L)
+ {
+ case 16:
+ case 64:
+ case 256:
+ case 1024:
+ case 4096:
+ arm_radix4_butterfly_f64 (p1, L, (float64_t*)S->pTwiddle, 1U);
+ break;
+
+ case 32:
+ case 128:
+ case 512:
+ case 2048:
+ arm_cfft_radix4by2_f64 ( p1, L, (float64_t*)S->pTwiddle);
+ break;
+
+ }
+
+ if ( bitReverseFlag )
+ arm_bitreversal_64((uint64_t*)p1, S->bitRevLength,S->pBitRevTable);
+
+ if (ifftFlag == 1U)
+ {
+ invL = 1.0 / (float64_t)L;
+ /* Conjugate and scale output data */
+ pSrc = p1;
+ for(l=0; l<L; l++)
+ {
+ *pSrc++ *= invL ;
+ *pSrc = -(*pSrc) * invL;
+ pSrc++;
+ }
+ }
+}
+
+/**
+ @} end of ComplexFFT group
+ */
diff --git a/CMSIS/DSP/Source/TransformFunctions/arm_rfft_fast_f64.c b/CMSIS/DSP/Source/TransformFunctions/arm_rfft_fast_f64.c
new file mode 100755
index 0000000..16a7a03
--- /dev/null
+++ b/CMSIS/DSP/Source/TransformFunctions/arm_rfft_fast_f64.c
@@ -0,0 +1,228 @@
+/* ----------------------------------------------------------------------
+ * Project: CMSIS DSP Library
+ * Title: arm_rfft_f64.c
+ * Description: RFFT & RIFFT Double precision Floating point process function
+ *
+ * $Date: 29. November 2019
+ * $Revision: V1.0.0
+ *
+ * Target Processor: Cortex-M cores
+ * -------------------------------------------------------------------- */
+/*
+ * Copyright (C) 2010-2019 ARM Limited or its affiliates. All rights reserved.
+ *
+ * SPDX-License-Identifier: Apache-2.0
+ *
+ * Licensed under the Apache License, Version 2.0 (the License); you may
+ * not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an AS IS BASIS, WITHOUT
+ * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include "arm_math.h"
+
+void stage_rfft_f64(
+ const arm_rfft_fast_instance_f64 * S,
+ float64_t * p,
+ float64_t * pOut)
+{
+ uint32_t k; /* Loop Counter */
+ float64_t twR, twI; /* RFFT Twiddle coefficients */
+ const float64_t * pCoeff = S->pTwiddleRFFT; /* Points to RFFT Twiddle factors */
+ float64_t *pA = p; /* increasing pointer */
+ float64_t *pB = p; /* decreasing pointer */
+ float64_t xAR, xAI, xBR, xBI; /* temporary variables */
+ float64_t t1a, t1b; /* temporary variables */
+ float64_t p0, p1, p2, p3; /* temporary variables */
+
+
+ k = (S->Sint).fftLen - 1;
+
+ /* Pack first and last sample of the frequency domain together */
+
+ xBR = pB[0];
+ xBI = pB[1];
+ xAR = pA[0];
+ xAI = pA[1];
+
+ twR = *pCoeff++ ;
+ twI = *pCoeff++ ;
+
+ // U1 = XA(1) + XB(1); % It is real
+ t1a = xBR + xAR ;
+
+ // U2 = XB(1) - XA(1); % It is imaginary
+ t1b = xBI + xAI ;
+
+ // real(tw * (xB - xA)) = twR * (xBR - xAR) - twI * (xBI - xAI);
+ // imag(tw * (xB - xA)) = twI * (xBR - xAR) + twR * (xBI - xAI);
+ *pOut++ = 0.5 * ( t1a + t1b );
+ *pOut++ = 0.5 * ( t1a - t1b );
+
+ // XA(1) = 1/2*( U1 - imag(U2) + i*( U1 +imag(U2) ));
+ pB = p + 2*k;
+ pA += 2;
+
+ do
+ {
+ /*
+ function X = my_split_rfft(X, ifftFlag)
+ % X is a series of real numbers
+ L = length(X);
+ XC = X(1:2:end) +i*X(2:2:end);
+ XA = fft(XC);
+ XB = conj(XA([1 end:-1:2]));
+ TW = i*exp(-2*pi*i*[0:L/2-1]/L).';
+ for l = 2:L/2
+ XA(l) = 1/2 * (XA(l) + XB(l) + TW(l) * (XB(l) - XA(l)));
+ end
+ XA(1) = 1/2* (XA(1) + XB(1) + TW(1) * (XB(1) - XA(1))) + i*( 1/2*( XA(1) + XB(1) + i*( XA(1) - XB(1))));
+ X = XA;
+ */
+
+ xBI = pB[1];
+ xBR = pB[0];
+ xAR = pA[0];
+ xAI = pA[1];
+
+ twR = *pCoeff++;
+ twI = *pCoeff++;
+
+ t1a = xBR - xAR ;
+ t1b = xBI + xAI ;
+
+ // real(tw * (xB - xA)) = twR * (xBR - xAR) - twI * (xBI - xAI);
+ // imag(tw * (xB - xA)) = twI * (xBR - xAR) + twR * (xBI - xAI);
+ p0 = twR * t1a;
+ p1 = twI * t1a;
+ p2 = twR * t1b;
+ p3 = twI * t1b;
+
+ *pOut++ = 0.5 * (xAR + xBR + p0 + p3 ); //xAR
+ *pOut++ = 0.5 * (xAI - xBI + p1 - p2 ); //xAI
+
+ pA += 2;
+ pB -= 2;
+ k--;
+ } while (k > 0U);
+}
+
+/* Prepares data for inverse cfft */
+void merge_rfft_f64(
+ const arm_rfft_fast_instance_f64 * S,
+ float64_t * p,
+ float64_t * pOut)
+{
+ uint32_t k; /* Loop Counter */
+ float64_t twR, twI; /* RFFT Twiddle coefficients */
+ const float64_t *pCoeff = S->pTwiddleRFFT; /* Points to RFFT Twiddle factors */
+ float64_t *pA = p; /* increasing pointer */
+ float64_t *pB = p; /* decreasing pointer */
+ float64_t xAR, xAI, xBR, xBI; /* temporary variables */
+ float64_t t1a, t1b, r, s, t, u; /* temporary variables */
+
+ k = (S->Sint).fftLen - 1;
+
+ xAR = pA[0];
+ xAI = pA[1];
+
+ pCoeff += 2 ;
+
+ *pOut++ = 0.5 * ( xAR + xAI );
+ *pOut++ = 0.5 * ( xAR - xAI );
+
+ pB = p + 2*k ;
+ pA += 2 ;
+
+ while (k > 0U)
+ {
+ /* G is half of the frequency complex spectrum */
+ //for k = 2:N
+ // Xk(k) = 1/2 * (G(k) + conj(G(N-k+2)) + Tw(k)*( G(k) - conj(G(N-k+2))));
+ xBI = pB[1] ;
+ xBR = pB[0] ;
+ xAR = pA[0];
+ xAI = pA[1];
+
+ twR = *pCoeff++;
+ twI = *pCoeff++;
+
+ t1a = xAR - xBR ;
+ t1b = xAI + xBI ;
+
+ r = twR * t1a;
+ s = twI * t1b;
+ t = twI * t1a;
+ u = twR * t1b;
+
+ // real(tw * (xA - xB)) = twR * (xAR - xBR) - twI * (xAI - xBI);
+ // imag(tw * (xA - xB)) = twI * (xAR - xBR) + twR * (xAI - xBI);
+ *pOut++ = 0.5 * (xAR + xBR - r - s ); //xAR
+ *pOut++ = 0.5 * (xAI - xBI + t - u ); //xAI
+
+ pA += 2;
+ pB -= 2;
+ k--;
+ }
+
+}
+
+/**
+ @ingroup groupTransforms
+*/
+
+
+/**
+ @addtogroup RealFFT
+ @{
+*/
+
+/**
+ @brief Processing function for the Double Precision floating-point real FFT.
+ @param[in] S points to an arm_rfft_fast_instance_f64 structure
+ @param[in] p points to input buffer (Source buffer is modified by this function.)
+ @param[in] pOut points to output buffer
+ @param[in] ifftFlag
+ - value = 0: RFFT
+ - value = 1: RIFFT
+ @return none
+*/
+
+void arm_rfft_fast_f64(
+ arm_rfft_fast_instance_f64 * S,
+ float64_t * p,
+ float64_t * pOut,
+ uint8_t ifftFlag)
+{
+ arm_cfft_instance_f64 * Sint = &(S->Sint);
+ Sint->fftLen = S->fftLenRFFT / 2;
+
+ /* Calculation of Real FFT */
+ if (ifftFlag)
+ {
+ /* Real FFT compression */
+ merge_rfft_f64(S, p, pOut);
+
+ /* Complex radix-4 IFFT process */
+ arm_cfft_f64( Sint, pOut, ifftFlag, 1);
+ }
+ else
+ {
+ /* Calculation of RFFT of input */
+ arm_cfft_f64( Sint, p, ifftFlag, 1);
+
+ /* Real FFT extraction */
+ stage_rfft_f64(S, p, pOut);
+ }
+}
+
+/**
+* @} end of RealFFT group
+*/
diff --git a/CMSIS/DSP/Source/TransformFunctions/arm_rfft_fast_init_f64.c b/CMSIS/DSP/Source/TransformFunctions/arm_rfft_fast_init_f64.c
new file mode 100755
index 0000000..84b6fab
--- /dev/null
+++ b/CMSIS/DSP/Source/TransformFunctions/arm_rfft_fast_init_f64.c
@@ -0,0 +1,344 @@
+/* ----------------------------------------------------------------------
+ * Project: CMSIS DSP Library
+ * Title: arm_cfft_init_f64.c
+ * Description: Split Radix Decimation in Frequency CFFT Double Precision Floating point processing function
+ *
+ * $Date: 29. November 2019
+ * $Revision: V1.0.0
+ *
+ * Target Processor: Cortex-M cores
+ * -------------------------------------------------------------------- */
+/*
+ * Copyright (C) 2010-2019 ARM Limited or its affiliates. All rights reserved.
+ *
+ * SPDX-License-Identifier: Apache-2.0
+ *
+ * Licensed under the Apache License, Version 2.0 (the License); you may
+ * not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an AS IS BASIS, WITHOUT
+ * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include "arm_math.h"
+#include "arm_common_tables.h"
+
+/**
+ @ingroup groupTransforms
+ */
+
+/**
+ @addtogroup RealFFT
+ @{
+ */
+
+#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || (defined(ARM_TABLE_TWIDDLECOEF_F64_16) && defined(ARM_TABLE_BITREVIDX_FLT64_16) && defined(ARM_TABLE_TWIDDLECOEF_F64_16) && defined(ARM_TABLE_TWIDDLECOEF_RFFT_F64_32))
+
+/**
+ @brief Initialization function for the 32pt double precision floating-point real FFT.
+ @param[in,out] S points to an arm_rfft_fast_instance_f64 structure
+ @return execution status
+ - \ref ARM_MATH_SUCCESS : Operation successful
+ - \ref ARM_MATH_ARGUMENT_ERROR : an error is detected
+ */
+
+arm_status arm_rfft_32_fast_init_f64( arm_rfft_fast_instance_f64 * S ) {
+
+ arm_cfft_instance_f64 * Sint;
+
+ if( !S ) return ARM_MATH_ARGUMENT_ERROR;
+
+ Sint = &(S->Sint);
+ Sint->fftLen = 16U;
+ S->fftLenRFFT = 32U;
+
+ Sint->bitRevLength = ARMBITREVINDEXTABLEF64_16_TABLE_LENGTH;
+ Sint->pBitRevTable = (uint16_t *)armBitRevIndexTableF64_16;
+ Sint->pTwiddle = (float64_t *) twiddleCoefF64_16;
+ S->pTwiddleRFFT = (float64_t *) twiddleCoefF64_rfft_32;
+
+ return ARM_MATH_SUCCESS;
+}
+#endif
+
+#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || (defined(ARM_TABLE_TWIDDLECOEF_F64_32) && defined(ARM_TABLE_BITREVIDX_FLT64_32) && defined(ARM_TABLE_TWIDDLECOEF_F64_32) && defined(ARM_TABLE_TWIDDLECOEF_RFFT_F64_64))
+
+/**
+ @brief Initialization function for the 64pt Double Precision floating-point real FFT.
+ @param[in,out] S points to an arm_rfft_fast_instance_f64 structure
+ @return execution status
+ - \ref ARM_MATH_SUCCESS : Operation successful
+ - \ref ARM_MATH_ARGUMENT_ERROR : an error is detected
+ */
+
+arm_status arm_rfft_64_fast_init_f64( arm_rfft_fast_instance_f64 * S ) {
+
+ arm_cfft_instance_f64 * Sint;
+
+ if( !S ) return ARM_MATH_ARGUMENT_ERROR;
+
+ Sint = &(S->Sint);
+ Sint->fftLen = 32U;
+ S->fftLenRFFT = 64U;
+
+ Sint->bitRevLength = ARMBITREVINDEXTABLEF64_32_TABLE_LENGTH;
+ Sint->pBitRevTable = (uint16_t *)armBitRevIndexTableF64_32;
+ Sint->pTwiddle = (float64_t *) twiddleCoefF64_32;
+ S->pTwiddleRFFT = (float64_t *) twiddleCoefF64_rfft_64;
+
+ return ARM_MATH_SUCCESS;
+}
+#endif
+
+#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || (defined(ARM_TABLE_TWIDDLECOEF_F64_64) && defined(ARM_TABLE_BITREVIDX_FLT64_64) && defined(ARM_TABLE_TWIDDLECOEF_F64_64) && defined(ARM_TABLE_TWIDDLECOEF_RFFT_F64_128))
+
+/**
+ @brief Initialization function for the 128pt Double Precision floating-point real FFT.
+ @param[in,out] S points to an arm_rfft_fast_instance_f64 structure
+ @return execution status
+ - \ref ARM_MATH_SUCCESS : Operation successful
+ - \ref ARM_MATH_ARGUMENT_ERROR : an error is detected
+ */
+
+arm_status arm_rfft_128_fast_init_f64( arm_rfft_fast_instance_f64 * S ) {
+
+ arm_cfft_instance_f64 * Sint;
+
+ if( !S ) return ARM_MATH_ARGUMENT_ERROR;
+
+ Sint = &(S->Sint);
+ Sint->fftLen = 64U;
+ S->fftLenRFFT = 128U;
+
+ Sint->bitRevLength = ARMBITREVINDEXTABLEF64_64_TABLE_LENGTH;
+ Sint->pBitRevTable = (uint16_t *)armBitRevIndexTableF64_64;
+ Sint->pTwiddle = (float64_t *) twiddleCoefF64_64;
+ S->pTwiddleRFFT = (float64_t *) twiddleCoefF64_rfft_128;
+
+ return ARM_MATH_SUCCESS;
+}
+#endif
+
+#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || (defined(ARM_TABLE_TWIDDLECOEF_F64_128) && defined(ARM_TABLE_BITREVIDX_FLT64_128) && defined(ARM_TABLE_TWIDDLECOEF_F64_128) && defined(ARM_TABLE_TWIDDLECOEF_RFFT_F64_256))
+
+/**
+ @brief Initialization function for the 256pt Double Precision floating-point real FFT.
+ @param[in,out] S points to an arm_rfft_fast_instance_f64 structure
+ @return execution status
+ - \ref ARM_MATH_SUCCESS : Operation successful
+ - \ref ARM_MATH_ARGUMENT_ERROR : an error is detected
+*/
+
+arm_status arm_rfft_256_fast_init_f64( arm_rfft_fast_instance_f64 * S ) {
+
+ arm_cfft_instance_f64 * Sint;
+
+ if( !S ) return ARM_MATH_ARGUMENT_ERROR;
+
+ Sint = &(S->Sint);
+ Sint->fftLen = 128U;
+ S->fftLenRFFT = 256U;
+
+ Sint->bitRevLength = ARMBITREVINDEXTABLEF64_128_TABLE_LENGTH;
+ Sint->pBitRevTable = (uint16_t *)armBitRevIndexTableF64_128;
+ Sint->pTwiddle = (float64_t *) twiddleCoefF64_128;
+ S->pTwiddleRFFT = (float64_t *) twiddleCoefF64_rfft_256;
+
+ return ARM_MATH_SUCCESS;
+}
+#endif
+
+#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || (defined(ARM_TABLE_TWIDDLECOEF_F64_256) && defined(ARM_TABLE_BITREVIDX_FLT64_256) && defined(ARM_TABLE_TWIDDLECOEF_F64_256) && defined(ARM_TABLE_TWIDDLECOEF_RFFT_F64_512))
+
+/**
+ @brief Initialization function for the 512pt Double Precision floating-point real FFT.
+ @param[in,out] S points to an arm_rfft_fast_instance_f64 structure
+ @return execution status
+ - \ref ARM_MATH_SUCCESS : Operation successful
+ - \ref ARM_MATH_ARGUMENT_ERROR : an error is detected
+ */
+
+arm_status arm_rfft_512_fast_init_f64( arm_rfft_fast_instance_f64 * S ) {
+
+ arm_cfft_instance_f64 * Sint;
+
+ if( !S ) return ARM_MATH_ARGUMENT_ERROR;
+
+ Sint = &(S->Sint);
+ Sint->fftLen = 256U;
+ S->fftLenRFFT = 512U;
+
+ Sint->bitRevLength = ARMBITREVINDEXTABLEF64_256_TABLE_LENGTH;
+ Sint->pBitRevTable = (uint16_t *)armBitRevIndexTableF64_256;
+ Sint->pTwiddle = (float64_t *) twiddleCoefF64_256;
+ S->pTwiddleRFFT = (float64_t *) twiddleCoefF64_rfft_512;
+
+ return ARM_MATH_SUCCESS;
+}
+#endif
+
+#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || (defined(ARM_TABLE_TWIDDLECOEF_F64_512) && defined(ARM_TABLE_BITREVIDX_FLT64_512) && defined(ARM_TABLE_TWIDDLECOEF_F64_512) && defined(ARM_TABLE_TWIDDLECOEF_RFFT_F64_1024))
+/**
+ @brief Initialization function for the 1024pt Double Precision floating-point real FFT.
+ @param[in,out] S points to an arm_rfft_fast_instance_f64 structure
+ @return execution status
+ - \ref ARM_MATH_SUCCESS : Operation successful
+ - \ref ARM_MATH_ARGUMENT_ERROR : an error is detected
+ */
+
+arm_status arm_rfft_1024_fast_init_f64( arm_rfft_fast_instance_f64 * S ) {
+
+ arm_cfft_instance_f64 * Sint;
+
+ if( !S ) return ARM_MATH_ARGUMENT_ERROR;
+
+ Sint = &(S->Sint);
+ Sint->fftLen = 512U;
+ S->fftLenRFFT = 1024U;
+
+ Sint->bitRevLength = ARMBITREVINDEXTABLEF64_512_TABLE_LENGTH;
+ Sint->pBitRevTable = (uint16_t *)armBitRevIndexTableF64_512;
+ Sint->pTwiddle = (float64_t *) twiddleCoefF64_512;
+ S->pTwiddleRFFT = (float64_t *) twiddleCoefF64_rfft_1024;
+
+ return ARM_MATH_SUCCESS;
+}
+#endif
+
+#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || (defined(ARM_TABLE_TWIDDLECOEF_F64_1024) && defined(ARM_TABLE_BITREVIDX_FLT64_1024) && defined(ARM_TABLE_TWIDDLECOEF_F64_1024) && defined(ARM_TABLE_TWIDDLECOEF_RFFT_F64_2048))
+/**
+ @brief Initialization function for the 2048pt Double Precision floating-point real FFT.
+ @param[in,out] S points to an arm_rfft_fast_instance_f64 structure
+ @return execution status
+ - \ref ARM_MATH_SUCCESS : Operation successful
+ - \ref ARM_MATH_ARGUMENT_ERROR : an error is detected
+ */
+arm_status arm_rfft_2048_fast_init_f64( arm_rfft_fast_instance_f64 * S ) {
+
+ arm_cfft_instance_f64 * Sint;
+
+ if( !S ) return ARM_MATH_ARGUMENT_ERROR;
+
+ Sint = &(S->Sint);
+ Sint->fftLen = 1024U;
+ S->fftLenRFFT = 2048U;
+
+ Sint->bitRevLength = ARMBITREVINDEXTABLEF64_1024_TABLE_LENGTH;
+ Sint->pBitRevTable = (uint16_t *)armBitRevIndexTableF64_1024;
+ Sint->pTwiddle = (float64_t *) twiddleCoefF64_1024;
+ S->pTwiddleRFFT = (float64_t *) twiddleCoefF64_rfft_2048;
+
+ return ARM_MATH_SUCCESS;
+}
+#endif
+
+#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || (defined(ARM_TABLE_TWIDDLECOEF_F64_2048) && defined(ARM_TABLE_BITREVIDX_FLT64_2048) && defined(ARM_TABLE_TWIDDLECOEF_F64_2048) && defined(ARM_TABLE_TWIDDLECOEF_RFFT_F64_4096))
+/**
+* @brief Initialization function for the 4096pt Double Precision floating-point real FFT.
+* @param[in,out] S points to an arm_rfft_fast_instance_f64 structure
+ @return execution status
+ - \ref ARM_MATH_SUCCESS : Operation successful
+ - \ref ARM_MATH_ARGUMENT_ERROR : an error is detected
+ */
+
+arm_status arm_rfft_4096_fast_init_f64( arm_rfft_fast_instance_f64 * S ) {
+
+ arm_cfft_instance_f64 * Sint;
+
+ if( !S ) return ARM_MATH_ARGUMENT_ERROR;
+
+ Sint = &(S->Sint);
+ Sint->fftLen = 2048U;
+ S->fftLenRFFT = 4096U;
+
+ Sint->bitRevLength = ARMBITREVINDEXTABLEF64_2048_TABLE_LENGTH;
+ Sint->pBitRevTable = (uint16_t *)armBitRevIndexTableF64_2048;
+ Sint->pTwiddle = (float64_t *) twiddleCoefF64_2048;
+ S->pTwiddleRFFT = (float64_t *) twiddleCoefF64_rfft_4096;
+
+ return ARM_MATH_SUCCESS;
+}
+#endif
+
+/**
+ @brief Initialization function for the Double Precision floating-point real FFT.
+ @param[in,out] S points to an arm_rfft_fast_instance_f64 structure
+ @param[in] fftLen length of the Real Sequence
+ @return execution status
+ - \ref ARM_MATH_SUCCESS : Operation successful
+ - \ref ARM_MATH_ARGUMENT_ERROR : <code>fftLen</code> is not a supported length
+
+ @par Description
+ The parameter <code>fftLen</code> specifies the length of RFFT/CIFFT process.
+ Supported FFT Lengths are 32, 64, 128, 256, 512, 1024, 2048, 4096.
+ @par
+ This Function also initializes Twiddle factor table pointer and Bit reversal table pointer.
+ */
+
+arm_status arm_rfft_fast_init_f64(
+ arm_rfft_fast_instance_f64 * S,
+ uint16_t fftLen)
+{
+ typedef arm_status(*fft_init_ptr)( arm_rfft_fast_instance_f64 *);
+ fft_init_ptr fptr = 0x0;
+
+ switch (fftLen)
+ {
+#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || (defined(ARM_TABLE_TWIDDLECOEF_F64_2048) && defined(ARM_TABLE_BITREVIDX_FLT64_2048) && defined(ARM_TABLE_TWIDDLECOEF_F64_2048) && defined(ARM_TABLE_TWIDDLECOEF_RFFT_F64_4096))
+ case 4096U:
+ fptr = arm_rfft_4096_fast_init_f64;
+ break;
+#endif
+#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || (defined(ARM_TABLE_TWIDDLECOEF_F64_1024) && defined(ARM_TABLE_BITREVIDX_FLT64_1024) && defined(ARM_TABLE_TWIDDLECOEF_F64_1024) && defined(ARM_TABLE_TWIDDLECOEF_RFFT_F64_2048))
+ case 2048U:
+ fptr = arm_rfft_2048_fast_init_f64;
+ break;
+#endif
+#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || (defined(ARM_TABLE_TWIDDLECOEF_F64_512) && defined(ARM_TABLE_BITREVIDX_FLT64_512) && defined(ARM_TABLE_TWIDDLECOEF_F64_512) && defined(ARM_TABLE_TWIDDLECOEF_RFFT_F64_1024))
+ case 1024U:
+ fptr = arm_rfft_1024_fast_init_f64;
+ break;
+#endif
+#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || (defined(ARM_TABLE_TWIDDLECOEF_F64_256) && defined(ARM_TABLE_BITREVIDX_FLT64_256) && defined(ARM_TABLE_TWIDDLECOEF_F64_256) && defined(ARM_TABLE_TWIDDLECOEF_RFFT_F64_512))
+ case 512U:
+ fptr = arm_rfft_512_fast_init_f64;
+ break;
+#endif
+#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || (defined(ARM_TABLE_TWIDDLECOEF_F64_128) && defined(ARM_TABLE_BITREVIDX_FLT64_128) && defined(ARM_TABLE_TWIDDLECOEF_F64_128) && defined(ARM_TABLE_TWIDDLECOEF_RFFT_F64_256))
+ case 256U:
+ fptr = arm_rfft_256_fast_init_f64;
+ break;
+#endif
+#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || (defined(ARM_TABLE_TWIDDLECOEF_F64_64) && defined(ARM_TABLE_BITREVIDX_FLT64_64) && defined(ARM_TABLE_TWIDDLECOEF_F64_64) && defined(ARM_TABLE_TWIDDLECOEF_RFFT_F64_128))
+ case 128U:
+ fptr = arm_rfft_128_fast_init_f64;
+ break;
+#endif
+#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || (defined(ARM_TABLE_TWIDDLECOEF_F64_32) && defined(ARM_TABLE_BITREVIDX_FLT64_32) && defined(ARM_TABLE_TWIDDLECOEF_F64_32) && defined(ARM_TABLE_TWIDDLECOEF_RFFT_F64_64))
+ case 64U:
+ fptr = arm_rfft_64_fast_init_f64;
+ break;
+#endif
+#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || (defined(ARM_TABLE_TWIDDLECOEF_F64_16) && defined(ARM_TABLE_BITREVIDX_FLT64_16) && defined(ARM_TABLE_TWIDDLECOEF_F64_16) && defined(ARM_TABLE_TWIDDLECOEF_RFFT_F64_32))
+ case 32U:
+ fptr = arm_rfft_32_fast_init_f64;
+ break;
+#endif
+ default:
+ return ARM_MATH_ARGUMENT_ERROR;
+ }
+
+ if( ! fptr ) return ARM_MATH_ARGUMENT_ERROR;
+ return fptr( S );
+
+}
+
+/**
+ @} end of RealFFT group
+ */
diff --git a/CMSIS/DSP/Source/fft.cmake b/CMSIS/DSP/Source/fft.cmake
index cbf7fac..b4df288 100644
--- a/CMSIS/DSP/Source/fft.cmake
+++ b/CMSIS/DSP/Source/fft.cmake
@@ -50,6 +50,58 @@
target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_BITREVIDX_FLT_4096)
endif()
+
+#######################################
+#
+# CFFT F64
+#
+
+
+if (CONFIGTABLE AND CFFT_F64_16)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_TWIDDLECOEF_F64_16)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_BITREVIDX_FLT64_16)
+endif()
+
+if (CONFIGTABLE AND CFFT_F64_32)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_TWIDDLECOEF_F64_32)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_BITREVIDX_FLT64_64)
+endif()
+
+if (CONFIGTABLE AND CFFT_F64_64)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_TWIDDLECOEF_F64_64)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_BITREVIDX_FLT64_64)
+endif()
+
+if (CONFIGTABLE AND CFFT_F64_128)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_TWIDDLECOEF_F64_128)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_BITREVIDX_FLT64_128)
+endif()
+
+if (CONFIGTABLE AND CFFT_F64_256)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_TWIDDLECOEF_F64_256)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_BITREVIDX_FLT64_256)
+endif()
+
+if (CONFIGTABLE AND CFFT_F64_512)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_TWIDDLECOEF_F64_512)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_BITREVIDX_FLT64_512)
+endif()
+
+if (CONFIGTABLE AND CFFT_F64_1024)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_TWIDDLECOEF_F64_1024)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_BITREVIDX_FLT64_1024)
+endif()
+
+if (CONFIGTABLE AND CFFT_F64_2048)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_TWIDDLECOEF_F64_2048)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_BITREVIDX_FLT64_2048)
+endif()
+
+if (CONFIGTABLE AND CFFT_F64_4096)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_TWIDDLECOEF_F64_4096)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_BITREVIDX_FLT64_4096)
+endif()
+
#######################################
#
# CFFT Q31
@@ -152,63 +204,124 @@
#######################################
#
+# RFFT FAST F64
+#
+
+if (CONFIGTABLE AND RFFT_FAST_F64_32)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_TWIDDLECOEF_F64_16)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_BITREVIDX_FLT64_16)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_TWIDDLECOEF_RFFT_F64_32)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_TWIDDLECOEF_F64_16)
+endif()
+
+if (CONFIGTABLE AND RFFT_FAST_F64_64)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_TWIDDLECOEF_F64_32)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_BITREVIDX_FLT64_32)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_TWIDDLECOEF_RFFT_F64_64)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_TWIDDLECOEF_F64_32)
+endif()
+
+if (CONFIGTABLE AND RFFT_FAST_F64_128)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_TWIDDLECOEF_F64_64)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_BITREVIDX_FLT64_64)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_TWIDDLECOEF_RFFT_F64_128)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_TWIDDLECOEF_F64_64)
+endif()
+
+if (CONFIGTABLE AND RFFT_FAST_F64_256)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_TWIDDLECOEF_F64_128)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_BITREVIDX_FLT64_128)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_TWIDDLECOEF_RFFT_F64_256)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_TWIDDLECOEF_F64_128)
+endif()
+
+if (CONFIGTABLE AND RFFT_FAST_F64_512)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_TWIDDLECOEF_F64_256)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_BITREVIDX_FLT64_256)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_TWIDDLECOEF_RFFT_F64_512)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_TWIDDLECOEF_F64_256)
+endif()
+
+if (CONFIGTABLE AND RFFT_FAST_F64_1024)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_TWIDDLECOEF_F64_512)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_BITREVIDX_FLT64_512)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_TWIDDLECOEF_RFFT_F64_1024)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_TWIDDLECOEF_F64_512)
+endif()
+
+if (CONFIGTABLE AND RFFT_FAST_F64_2048)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_TWIDDLECOEF_F64_1024)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_BITREVIDX_FLT64_1024)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_TWIDDLECOEF_RFFT_F64_2048)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_TWIDDLECOEF_F64_1024)
+endif()
+
+if (CONFIGTABLE AND RFFT_FAST_F64_4096)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_TWIDDLECOEF_F64_2048)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_BITREVIDX_FLT64_2048)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_TWIDDLECOEF_RFFT_F64_4096)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_TWIDDLECOEF_F64_2048)
+endif()
+
+#######################################
+#
# RFFT FAST F32
#
if (CONFIGTABLE AND RFFT_FAST_F32_32)
- target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_TWIDDLECOEF_F32_16)
- target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_BITREVIDX_FLT_16)
- target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_TWIDDLECOEF_RFFT_F32_32)
- target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_TWIDDLECOEF_F32_16)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_TWIDDLECOEF_F32_16)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_BITREVIDX_FLT_16)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_TWIDDLECOEF_RFFT_F32_32)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_TWIDDLECOEF_F32_16)
endif()
if (CONFIGTABLE AND RFFT_FAST_F32_64)
- target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_TWIDDLECOEF_F32_32)
- target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_BITREVIDX_FLT_32)
- target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_TWIDDLECOEF_RFFT_F32_64)
- target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_TWIDDLECOEF_F32_32)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_TWIDDLECOEF_F32_32)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_BITREVIDX_FLT_32)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_TWIDDLECOEF_RFFT_F32_64)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_TWIDDLECOEF_F32_32)
endif()
if (CONFIGTABLE AND RFFT_FAST_F32_128)
- target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_TWIDDLECOEF_F32_64)
- target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_BITREVIDX_FLT_64)
- target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_TWIDDLECOEF_RFFT_F32_128)
- target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_TWIDDLECOEF_F32_64)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_TWIDDLECOEF_F32_64)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_BITREVIDX_FLT_64)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_TWIDDLECOEF_RFFT_F32_128)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_TWIDDLECOEF_F32_64)
endif()
if (CONFIGTABLE AND RFFT_FAST_F32_256)
- target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_TWIDDLECOEF_F32_128)
- target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_BITREVIDX_FLT_128)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_TWIDDLECOEF_F32_128)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_BITREVIDX_FLT_128)
target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_TWIDDLECOEF_RFFT_F32_256)
- target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_TWIDDLECOEF_F32_128)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_TWIDDLECOEF_F32_128)
endif()
if (CONFIGTABLE AND RFFT_FAST_F32_512)
- target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_TWIDDLECOEF_F32_256)
- target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_BITREVIDX_FLT_256)
- target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_TWIDDLECOEF_RFFT_F32_512)
- target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_TWIDDLECOEF_F32_256)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_TWIDDLECOEF_F32_256)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_BITREVIDX_FLT_256)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_TWIDDLECOEF_RFFT_F32_512)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_TWIDDLECOEF_F32_256)
endif()
if (CONFIGTABLE AND RFFT_FAST_F32_1024)
- target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_TWIDDLECOEF_F32_512)
- target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_BITREVIDX_FLT_512)
- target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_TWIDDLECOEF_RFFT_F32_1024)
- target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_TWIDDLECOEF_F32_512)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_TWIDDLECOEF_F32_512)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_BITREVIDX_FLT_512)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_TWIDDLECOEF_RFFT_F32_1024)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_TWIDDLECOEF_F32_512)
endif()
if (CONFIGTABLE AND RFFT_FAST_F32_2048)
- target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_TWIDDLECOEF_F32_1024)
- target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_BITREVIDX_FLT_1024)
- target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_TWIDDLECOEF_RFFT_F32_2048)
- target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_TWIDDLECOEF_F32_1024)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_TWIDDLECOEF_F32_1024)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_BITREVIDX_FLT_1024)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_TWIDDLECOEF_RFFT_F32_2048)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_TWIDDLECOEF_F32_1024)
endif()
if (CONFIGTABLE AND RFFT_FAST_F32_4096)
- target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_TWIDDLECOEF_F32_2048)
- target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_BITREVIDX_FLT_2048)
- target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_TWIDDLECOEF_RFFT_F32_4096)
- target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_TWIDDLECOEF_F32_2048)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_TWIDDLECOEF_F32_2048)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_BITREVIDX_FLT_2048)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_TWIDDLECOEF_RFFT_F32_4096)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_TWIDDLECOEF_F32_2048)
endif()
#######################################
@@ -217,66 +330,66 @@
#
if (CONFIGTABLE AND RFFT_F32_32)
- target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_REALCOEF_F32)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_REALCOEF_F32)
# For cfft_radix4_init
- target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_BITREV_1024)
- target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_TWIDDLECOEF_F32_4096)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_BITREV_1024)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_TWIDDLECOEF_F32_4096)
endif()
if (CONFIGTABLE AND RFFT_F32_64)
- target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_REALCOEF_F32)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_REALCOEF_F32)
# For cfft_radix4_init
- target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_BITREV_1024)
- target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_TWIDDLECOEF_F32_4096)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_BITREV_1024)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_TWIDDLECOEF_F32_4096)
endif()
if (CONFIGTABLE AND RFFT_F32_128)
target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_REALCOEF_F32)
# For cfft_radix4_init
- target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_BITREV_1024)
- target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_TWIDDLECOEF_F32_4096)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_BITREV_1024)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_TWIDDLECOEF_F32_4096)
endif()
if (CONFIGTABLE AND RFFT_F32_256)
- target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_REALCOEF_F32)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_REALCOEF_F32)
# For cfft_radix4_init
- target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_BITREV_1024)
- target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_TWIDDLECOEF_F32_4096)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_BITREV_1024)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_TWIDDLECOEF_F32_4096)
endif()
if (CONFIGTABLE AND RFFT_F32_512)
target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_REALCOEF_F32)
# For cfft_radix4_init
- target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_BITREV_1024)
- target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_TWIDDLECOEF_F32_4096)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_BITREV_1024)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_TWIDDLECOEF_F32_4096)
endif()
if (CONFIGTABLE AND RFFT_F32_1024)
target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_REALCOEF_F32)
# For cfft_radix4_init
- target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_BITREV_1024)
- target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_TWIDDLECOEF_F32_4096)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_BITREV_1024)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_TWIDDLECOEF_F32_4096)
endif()
if (CONFIGTABLE AND RFFT_F32_2048)
- target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_REALCOEF_F32)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_REALCOEF_F32)
# For cfft_radix4_init
- target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_BITREV_1024)
- target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_TWIDDLECOEF_F32_4096)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_BITREV_1024)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_TWIDDLECOEF_F32_4096)
endif()
if (CONFIGTABLE AND RFFT_F32_4096)
target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_REALCOEF_F32)
# For cfft_radix4_init
- target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_BITREV_1024)
- target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_TWIDDLECOEF_F32_4096)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_BITREV_1024)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_TWIDDLECOEF_F32_4096)
endif()
if (CONFIGTABLE AND RFFT_F32_8192)
- target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_REALCOEF_F32)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_REALCOEF_F32)
# For cfft_radix4_init
- target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_BITREV_1024)
- target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_TWIDDLECOEF_F32_4096)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_BITREV_1024)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_TWIDDLECOEF_F32_4096)
endif()
#######################################
@@ -285,55 +398,55 @@
#
if (CONFIGTABLE AND RFFT_Q31_32)
- target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_REALCOEF_Q31)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_REALCOEF_Q31)
target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_TWIDDLECOEF_Q31_16)
target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_BITREVIDX_FXT_16)
endif()
if (CONFIGTABLE AND RFFT_Q31_64)
- target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_REALCOEF_Q31)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_REALCOEF_Q31)
target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_TWIDDLECOEF_Q31_32)
target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_BITREVIDX_FXT_32)
endif()
if (CONFIGTABLE AND RFFT_Q31_128)
- target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_REALCOEF_Q31)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_REALCOEF_Q31)
target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_TWIDDLECOEF_Q31_64)
target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_BITREVIDX_FXT_64)
endif()
if (CONFIGTABLE AND RFFT_Q31_256)
- target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_REALCOEF_Q31)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_REALCOEF_Q31)
target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_TWIDDLECOEF_Q31_128)
target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_BITREVIDX_FXT_128)
endif()
if (CONFIGTABLE AND RFFT_Q31_512)
- target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_REALCOEF_Q31)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_REALCOEF_Q31)
target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_TWIDDLECOEF_Q31_256)
target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_BITREVIDX_FXT_256)
endif()
if (CONFIGTABLE AND RFFT_Q31_1024)
- target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_REALCOEF_Q31)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_REALCOEF_Q31)
target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_TWIDDLECOEF_Q31_512)
target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_BITREVIDX_FXT_512)
endif()
if (CONFIGTABLE AND RFFT_Q31_2048)
- target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_REALCOEF_Q31)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_REALCOEF_Q31)
target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_TWIDDLECOEF_Q31_1024)
target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_BITREVIDX_FXT_1024)
endif()
if (CONFIGTABLE AND RFFT_Q31_4096)
- target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_REALCOEF_Q31)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_REALCOEF_Q31)
target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_TWIDDLECOEF_Q31_2048)
target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_BITREVIDX_FXT_2048)
endif()
if (CONFIGTABLE AND RFFT_Q31_8192)
- target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_REALCOEF_Q31)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_REALCOEF_Q31)
target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_TWIDDLECOEF_Q31_4096)
target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_BITREVIDX_FXT_4096)
endif()
@@ -346,35 +459,35 @@
if (CONFIGTABLE AND RFFT_Q15_32)
target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_REALCOEF_Q15)
target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_TWIDDLECOEF_Q15_16)
- target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_BITREVIDX_FXT_16)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_BITREVIDX_FXT_16)
endif()
if (CONFIGTABLE AND RFFT_Q15_64)
- target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_REALCOEF_Q15)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_REALCOEF_Q15)
target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_TWIDDLECOEF_Q15_32)
target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_BITREVIDX_FXT_32)
endif()
if (CONFIGTABLE AND RFFT_Q15_128)
- target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_REALCOEF_Q15)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_REALCOEF_Q15)
target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_TWIDDLECOEF_Q15_64)
target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_BITREVIDX_FXT_64)
endif()
if (CONFIGTABLE AND RFFT_Q15_256)
- target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_REALCOEF_Q15)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_REALCOEF_Q15)
target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_TWIDDLECOEF_Q15_128)
target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_BITREVIDX_FXT_128)
endif()
if (CONFIGTABLE AND RFFT_Q15_512)
- target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_REALCOEF_Q15)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_REALCOEF_Q15)
target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_TWIDDLECOEF_Q15_256)
target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_BITREVIDX_FXT_256)
endif()
if (CONFIGTABLE AND RFFT_Q15_1024)
- target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_REALCOEF_Q15)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_REALCOEF_Q15)
target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_TWIDDLECOEF_Q15_512)
target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_BITREVIDX_FXT_512)
endif()
@@ -382,17 +495,17 @@
if (CONFIGTABLE AND RFFT_Q15_2048)
target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_REALCOEF_Q15)
target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_TWIDDLECOEF_Q15_1024)
- target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_BITREVIDX_FXT_1024)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_BITREVIDX_FXT_1024)
endif()
if (CONFIGTABLE AND RFFT_Q15_4096)
- target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_REALCOEF_Q15)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_REALCOEF_Q15)
target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_TWIDDLECOEF_Q15_2048)
target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_BITREVIDX_FXT_2048)
endif()
if (CONFIGTABLE AND RFFT_Q15_8192)
- target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_REALCOEF_Q15)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_REALCOEF_Q15)
target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_TWIDDLECOEF_Q15_4096)
target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_BITREVIDX_FXT_4096)
endif()
@@ -403,38 +516,38 @@
#
if (CONFIGTABLE AND DCT4_F32_128)
- target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_DCT4_F32_128)
- target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_REALCOEF_F32)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_DCT4_F32_128)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_REALCOEF_F32)
# For cfft_radix4_init
- target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_BITREV_1024)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_BITREV_1024)
target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_TWIDDLECOEF_F32_4096)
endif()
if (CONFIGTABLE AND DCT4_F32_512)
target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_DCT4_F32_512)
- target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_REALCOEF_F32)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_REALCOEF_F32)
# For cfft_radix4_init
- target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_BITREV_1024)
- target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_TWIDDLECOEF_F32_4096)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_BITREV_1024)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_TWIDDLECOEF_F32_4096)
endif()
if (CONFIGTABLE AND DCT4_F32_2048)
- target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_DCT4_F32_2048)
- target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_REALCOEF_F32)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_DCT4_F32_2048)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_REALCOEF_F32)
# For cfft_radix4_init
- target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_BITREV_1024)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_BITREV_1024)
target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_TWIDDLECOEF_F32_4096)
endif()
if (CONFIGTABLE AND DCT4_F32_8192)
- target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_DCT4_F32_8192)
- target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_REALCOEF_F32)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_DCT4_F32_8192)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_REALCOEF_F32)
# For cfft_radix4_init
- target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_BITREV_1024)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_BITREV_1024)
target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_TWIDDLECOEF_F32_4096)
endif()
@@ -444,39 +557,39 @@
#
if (CONFIGTABLE AND DCT4_Q31_128)
- target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_DCT4_Q31_128)
- target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_REALCOEF_Q31)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_DCT4_Q31_128)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_REALCOEF_Q31)
# For cfft_radix4_init
- target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_BITREV_1024)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_BITREV_1024)
target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_TWIDDLECOEF_Q31_4096)
endif()
-if (CONFIGTABLE AND DCT4_Q31_512)
+if (CONFIGTABLE AND DCT4_Q31_512)
target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_DCT4_Q31_512)
target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_REALCOEF_Q31)
# For cfft_radix4_init
- target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_BITREV_1024)
- target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_TWIDDLECOEF_Q31_4096)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_BITREV_1024)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_TWIDDLECOEF_Q31_4096)
endif()
if (CONFIGTABLE AND DCT4_Q31_2048)
target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_DCT4_Q31_2048)
- target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_REALCOEF_Q31)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_REALCOEF_Q31)
# For cfft_radix4_init
- target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_BITREV_1024)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_BITREV_1024)
target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_TWIDDLECOEF_Q31_4096)
endif()
if (CONFIGTABLE AND DCT4_Q31_8192)
target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_DCT4_Q31_8192)
- target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_REALCOEF_Q31)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_REALCOEF_Q31)
# For cfft_radix4_init
- target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_BITREV_1024)
- target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_TWIDDLECOEF_Q31_4096)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_BITREV_1024)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_TWIDDLECOEF_Q31_4096)
endif()
#######################################
@@ -484,39 +597,39 @@
# DCT4 Q15
#
-if (CONFIGTABLE AND DCT4_Q15_128)
- target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_DCT4_Q15_128)
- target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_REALCOEF_Q15)
+if (CONFIGTABLE AND DCT4_Q15_128)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_DCT4_Q15_128)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_REALCOEF_Q15)
# For cfft_radix4_init
- target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_BITREV_1024)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_BITREV_1024)
target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_TWIDDLECOEF_Q15_4096)
endif()
-if (CONFIGTABLE AND DCT4_Q15_512)
+if (CONFIGTABLE AND DCT4_Q15_512)
target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_DCT4_Q15_512)
- target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_REALCOEF_Q15)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_REALCOEF_Q15)
# For cfft_radix4_init
- target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_BITREV_1024)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_BITREV_1024)
target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_TWIDDLECOEF_Q15_4096)
endif()
if (CONFIGTABLE AND DCT4_Q15_2048)
- target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_DCT4_Q15_2048)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_DCT4_Q15_2048)
target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_REALCOEF_Q15)
# For cfft_radix4_init
- target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_BITREV_1024)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_BITREV_1024)
target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_TWIDDLECOEF_Q15_4096)
endif()
if (CONFIGTABLE AND DCT4_Q15_8192)
- target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_DCT4_Q15_8192)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_DCT4_Q15_8192)
target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_REALCOEF_Q15)
# For cfft_radix4_init
- target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_BITREV_1024)
+ target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_BITREV_1024)
target_compile_definitions(${PROJECT} PUBLIC ARM_TABLE_TWIDDLECOEF_Q15_4096)
endif()
diff --git a/CMSIS/DSP/Testing/Include/Tests/TransformCF64.h b/CMSIS/DSP/Testing/Include/Tests/TransformCF64.h
index 250b667..066ced1 100755
--- a/CMSIS/DSP/Testing/Include/Tests/TransformCF64.h
+++ b/CMSIS/DSP/Testing/Include/Tests/TransformCF64.h
@@ -14,7 +14,7 @@
Client::RefPattern<float64_t> ref;
- //const arm_cfft_instance_f64 *instCfftF64;
+ const arm_cfft_instance_f64 *instCfftF64;
int ifft;
diff --git a/CMSIS/DSP/Testing/Include/Tests/TransformRF64.h b/CMSIS/DSP/Testing/Include/Tests/TransformRF64.h
index 388c343..92f4121 100755
--- a/CMSIS/DSP/Testing/Include/Tests/TransformRF64.h
+++ b/CMSIS/DSP/Testing/Include/Tests/TransformRF64.h
@@ -15,7 +15,7 @@
Client::RefPattern<float64_t> ref;
- //arm_rfft_fast_instance_f64 instRfftF64;
+ arm_rfft_fast_instance_f64 instRfftF64;
int ifft;
diff --git a/CMSIS/DSP/Testing/Source/Tests/TransformCF64.cpp b/CMSIS/DSP/Testing/Source/Tests/TransformCF64.cpp
index c3f7f99..05c542b 100755
--- a/CMSIS/DSP/Testing/Source/Tests/TransformCF64.cpp
+++ b/CMSIS/DSP/Testing/Source/Tests/TransformCF64.cpp
@@ -6,7 +6,7 @@
#include <cstdio>
-#define SNR_THRESHOLD 120
+#define SNR_THRESHOLD 250
void TransformCF64::test_cfft_f64()
{
@@ -16,13 +16,12 @@
memcpy(outfftp,inp,sizeof(float64_t)*input.nbSamples());
- /*
arm_cfft_f64(
this->instCfftF64,
outfftp,
this->ifft,
1);
- */
+
ASSERT_SNR(outputfft,ref,(float64_t)SNR_THRESHOLD);
ASSERT_EMPTY_TAIL(outputfft);
@@ -43,7 +42,7 @@
input.reload(TransformCF64::INPUTS_CFFT_NOISY_16_F64_ID,mgr);
ref.reload( TransformCF64::REF_CFFT_NOISY_16_F64_ID,mgr);
- //instCfftF64 = &arm_cfft_sR_f64_len16;
+ instCfftF64 = &arm_cfft_sR_f64_len16;
this->ifft=0;
@@ -54,7 +53,7 @@
input.reload(TransformCF64::INPUTS_CIFFT_NOISY_16_F64_ID,mgr);
ref.reload( TransformCF64::INPUTS_CFFT_NOISY_16_F64_ID,mgr);
- //instCfftF64 = &arm_cfft_sR_f64_len16;
+ instCfftF64 = &arm_cfft_sR_f64_len16;
this->ifft=1;
@@ -65,7 +64,7 @@
input.reload(TransformCF64::INPUTS_CFFT_NOISY_32_F64_ID,mgr);
ref.reload( TransformCF64::REF_CFFT_NOISY_32_F64_ID,mgr);
- //instCfftF64 = &arm_cfft_sR_f64_len32;
+ instCfftF64 = &arm_cfft_sR_f64_len32;
this->ifft=0;
@@ -76,7 +75,7 @@
input.reload(TransformCF64::INPUTS_CIFFT_NOISY_32_F64_ID,mgr);
ref.reload( TransformCF64::INPUTS_CFFT_NOISY_32_F64_ID,mgr);
- //instCfftF64 = &arm_cfft_sR_f64_len32;
+ instCfftF64 = &arm_cfft_sR_f64_len32;
this->ifft=1;
@@ -87,7 +86,7 @@
input.reload(TransformCF64::INPUTS_CFFT_NOISY_64_F64_ID,mgr);
ref.reload( TransformCF64::REF_CFFT_NOISY_64_F64_ID,mgr);
- //instCfftF64 = &arm_cfft_sR_f64_len64;
+ instCfftF64 = &arm_cfft_sR_f64_len64;
this->ifft=0;
@@ -98,7 +97,7 @@
input.reload(TransformCF64::INPUTS_CIFFT_NOISY_64_F64_ID,mgr);
ref.reload( TransformCF64::INPUTS_CFFT_NOISY_64_F64_ID,mgr);
- //instCfftF64 = &arm_cfft_sR_f64_len64;
+ instCfftF64 = &arm_cfft_sR_f64_len64;
this->ifft=1;
@@ -109,7 +108,7 @@
input.reload(TransformCF64::INPUTS_CFFT_NOISY_128_F64_ID,mgr);
ref.reload( TransformCF64::REF_CFFT_NOISY_128_F64_ID,mgr);
- //instCfftF64 = &arm_cfft_sR_f64_len128;
+ instCfftF64 = &arm_cfft_sR_f64_len128;
this->ifft=0;
@@ -120,7 +119,7 @@
input.reload(TransformCF64::INPUTS_CIFFT_NOISY_128_F64_ID,mgr);
ref.reload( TransformCF64::INPUTS_CFFT_NOISY_128_F64_ID,mgr);
- //instCfftF64 = &arm_cfft_sR_f64_len128;
+ instCfftF64 = &arm_cfft_sR_f64_len128;
this->ifft=1;
@@ -131,7 +130,7 @@
input.reload(TransformCF64::INPUTS_CFFT_NOISY_256_F64_ID,mgr);
ref.reload( TransformCF64::REF_CFFT_NOISY_256_F64_ID,mgr);
- //instCfftF64 = &arm_cfft_sR_f64_len256;
+ instCfftF64 = &arm_cfft_sR_f64_len256;
this->ifft=0;
@@ -142,7 +141,7 @@
input.reload(TransformCF64::INPUTS_CIFFT_NOISY_256_F64_ID,mgr);
ref.reload( TransformCF64::INPUTS_CFFT_NOISY_256_F64_ID,mgr);
- //instCfftF64 = &arm_cfft_sR_f64_len256;
+ instCfftF64 = &arm_cfft_sR_f64_len256;
this->ifft=1;
@@ -153,7 +152,7 @@
input.reload(TransformCF64::INPUTS_CFFT_NOISY_512_F64_ID,mgr);
ref.reload( TransformCF64::REF_CFFT_NOISY_512_F64_ID,mgr);
- //instCfftF64 = &arm_cfft_sR_f64_len512;
+ instCfftF64 = &arm_cfft_sR_f64_len512;
this->ifft=0;
@@ -164,7 +163,7 @@
input.reload(TransformCF64::INPUTS_CIFFT_NOISY_512_F64_ID,mgr);
ref.reload( TransformCF64::INPUTS_CFFT_NOISY_512_F64_ID,mgr);
- //instCfftF64 = &arm_cfft_sR_f64_len512;
+ instCfftF64 = &arm_cfft_sR_f64_len512;
this->ifft=1;
@@ -175,7 +174,7 @@
input.reload(TransformCF64::INPUTS_CFFT_NOISY_1024_F64_ID,mgr);
ref.reload( TransformCF64::REF_CFFT_NOISY_1024_F64_ID,mgr);
- //instCfftF64 = &arm_cfft_sR_f64_len1024;
+ instCfftF64 = &arm_cfft_sR_f64_len1024;
this->ifft=0;
@@ -186,7 +185,7 @@
input.reload(TransformCF64::INPUTS_CIFFT_NOISY_1024_F64_ID,mgr);
ref.reload( TransformCF64::INPUTS_CFFT_NOISY_1024_F64_ID,mgr);
- //instCfftF64 = &arm_cfft_sR_f64_len1024;
+ instCfftF64 = &arm_cfft_sR_f64_len1024;
this->ifft=1;
@@ -197,7 +196,7 @@
input.reload(TransformCF64::INPUTS_CFFT_NOISY_2048_F64_ID,mgr);
ref.reload( TransformCF64::REF_CFFT_NOISY_2048_F64_ID,mgr);
- //instCfftF64 = &arm_cfft_sR_f64_len2048;
+ instCfftF64 = &arm_cfft_sR_f64_len2048;
this->ifft=0;
@@ -208,7 +207,7 @@
input.reload(TransformCF64::INPUTS_CIFFT_NOISY_2048_F64_ID,mgr);
ref.reload( TransformCF64::INPUTS_CFFT_NOISY_2048_F64_ID,mgr);
- //instCfftF64 = &arm_cfft_sR_f64_len2048;
+ instCfftF64 = &arm_cfft_sR_f64_len2048;
this->ifft=1;
@@ -219,7 +218,7 @@
input.reload(TransformCF64::INPUTS_CFFT_NOISY_4096_F64_ID,mgr);
ref.reload( TransformCF64::REF_CFFT_NOISY_4096_F64_ID,mgr);
- //instCfftF64 = &arm_cfft_sR_f64_len4096;
+ instCfftF64 = &arm_cfft_sR_f64_len4096;
this->ifft=0;
@@ -230,7 +229,7 @@
input.reload(TransformCF64::INPUTS_CIFFT_NOISY_4096_F64_ID,mgr);
ref.reload( TransformCF64::INPUTS_CFFT_NOISY_4096_F64_ID,mgr);
- //instCfftF64 = &arm_cfft_sR_f64_len4096;
+ instCfftF64 = &arm_cfft_sR_f64_len4096;
this->ifft=1;
@@ -243,7 +242,7 @@
input.reload(TransformCF64::INPUTS_CFFT_STEP_16_F64_ID,mgr);
ref.reload( TransformCF64::REF_CFFT_STEP_16_F64_ID,mgr);
- //instCfftF64 = &arm_cfft_sR_f64_len16;
+ instCfftF64 = &arm_cfft_sR_f64_len16;
this->ifft=0;
@@ -254,7 +253,7 @@
input.reload(TransformCF64::INPUTS_CIFFT_STEP_16_F64_ID,mgr);
ref.reload( TransformCF64::INPUTS_CFFT_STEP_16_F64_ID,mgr);
- //instCfftF64 = &arm_cfft_sR_f64_len16;
+ instCfftF64 = &arm_cfft_sR_f64_len16;
this->ifft=1;
@@ -265,7 +264,7 @@
input.reload(TransformCF64::INPUTS_CFFT_STEP_32_F64_ID,mgr);
ref.reload( TransformCF64::REF_CFFT_STEP_32_F64_ID,mgr);
- //instCfftF64 = &arm_cfft_sR_f64_len32;
+ instCfftF64 = &arm_cfft_sR_f64_len32;
this->ifft=0;
@@ -276,7 +275,7 @@
input.reload(TransformCF64::INPUTS_CIFFT_STEP_32_F64_ID,mgr);
ref.reload( TransformCF64::INPUTS_CFFT_STEP_32_F64_ID,mgr);
- //instCfftF64 = &arm_cfft_sR_f64_len32;
+ instCfftF64 = &arm_cfft_sR_f64_len32;
this->ifft=1;
@@ -287,7 +286,7 @@
input.reload(TransformCF64::INPUTS_CFFT_STEP_64_F64_ID,mgr);
ref.reload( TransformCF64::REF_CFFT_STEP_64_F64_ID,mgr);
- //instCfftF64 = &arm_cfft_sR_f64_len64;
+ instCfftF64 = &arm_cfft_sR_f64_len64;
this->ifft=0;
@@ -298,7 +297,7 @@
input.reload(TransformCF64::INPUTS_CIFFT_STEP_64_F64_ID,mgr);
ref.reload( TransformCF64::INPUTS_CFFT_STEP_64_F64_ID,mgr);
- //instCfftF64 = &arm_cfft_sR_f64_len64;
+ instCfftF64 = &arm_cfft_sR_f64_len64;
this->ifft=1;
@@ -309,7 +308,7 @@
input.reload(TransformCF64::INPUTS_CFFT_STEP_128_F64_ID,mgr);
ref.reload( TransformCF64::REF_CFFT_STEP_128_F64_ID,mgr);
- //instCfftF64 = &arm_cfft_sR_f64_len128;
+ instCfftF64 = &arm_cfft_sR_f64_len128;
this->ifft=0;
@@ -320,7 +319,7 @@
input.reload(TransformCF64::INPUTS_CIFFT_STEP_128_F64_ID,mgr);
ref.reload( TransformCF64::INPUTS_CFFT_STEP_128_F64_ID,mgr);
- //instCfftF64 = &arm_cfft_sR_f64_len128;
+ instCfftF64 = &arm_cfft_sR_f64_len128;
this->ifft=1;
@@ -331,7 +330,7 @@
input.reload(TransformCF64::INPUTS_CFFT_STEP_256_F64_ID,mgr);
ref.reload( TransformCF64::REF_CFFT_STEP_256_F64_ID,mgr);
- //instCfftF64 = &arm_cfft_sR_f64_len256;
+ instCfftF64 = &arm_cfft_sR_f64_len256;
this->ifft=0;
@@ -342,7 +341,7 @@
input.reload(TransformCF64::INPUTS_CIFFT_STEP_256_F64_ID,mgr);
ref.reload( TransformCF64::INPUTS_CFFT_STEP_256_F64_ID,mgr);
- //instCfftF64 = &arm_cfft_sR_f64_len256;
+ instCfftF64 = &arm_cfft_sR_f64_len256;
this->ifft=1;
@@ -353,7 +352,7 @@
input.reload(TransformCF64::INPUTS_CFFT_STEP_512_F64_ID,mgr);
ref.reload( TransformCF64::REF_CFFT_STEP_512_F64_ID,mgr);
- //instCfftF64 = &arm_cfft_sR_f64_len512;
+ instCfftF64 = &arm_cfft_sR_f64_len512;
this->ifft=0;
@@ -364,7 +363,7 @@
input.reload(TransformCF64::INPUTS_CIFFT_STEP_512_F64_ID,mgr);
ref.reload( TransformCF64::INPUTS_CFFT_STEP_512_F64_ID,mgr);
- //instCfftF64 = &arm_cfft_sR_f64_len512;
+ instCfftF64 = &arm_cfft_sR_f64_len512;
this->ifft=1;
@@ -375,7 +374,7 @@
input.reload(TransformCF64::INPUTS_CFFT_STEP_1024_F64_ID,mgr);
ref.reload( TransformCF64::REF_CFFT_STEP_1024_F64_ID,mgr);
- //instCfftF64 = &arm_cfft_sR_f64_len1024;
+ instCfftF64 = &arm_cfft_sR_f64_len1024;
this->ifft=0;
@@ -386,7 +385,7 @@
input.reload(TransformCF64::INPUTS_CIFFT_STEP_1024_F64_ID,mgr);
ref.reload( TransformCF64::INPUTS_CFFT_STEP_1024_F64_ID,mgr);
- //instCfftF64 = &arm_cfft_sR_f64_len1024;
+ instCfftF64 = &arm_cfft_sR_f64_len1024;
this->ifft=1;
@@ -397,7 +396,7 @@
input.reload(TransformCF64::INPUTS_CFFT_STEP_2048_F64_ID,mgr);
ref.reload( TransformCF64::REF_CFFT_STEP_2048_F64_ID,mgr);
- //instCfftF64 = &arm_cfft_sR_f64_len2048;
+ instCfftF64 = &arm_cfft_sR_f64_len2048;
this->ifft=0;
@@ -408,7 +407,7 @@
input.reload(TransformCF64::INPUTS_CIFFT_STEP_2048_F64_ID,mgr);
ref.reload( TransformCF64::INPUTS_CFFT_STEP_2048_F64_ID,mgr);
- //instCfftF64 = &arm_cfft_sR_f64_len2048;
+ instCfftF64 = &arm_cfft_sR_f64_len2048;
this->ifft=1;
@@ -419,7 +418,7 @@
input.reload(TransformCF64::INPUTS_CFFT_STEP_4096_F64_ID,mgr);
ref.reload( TransformCF64::REF_CFFT_STEP_4096_F64_ID,mgr);
- //instCfftF64 = &arm_cfft_sR_f64_len4096;
+ instCfftF64 = &arm_cfft_sR_f64_len4096;
this->ifft=0;
@@ -430,7 +429,7 @@
input.reload(TransformCF64::INPUTS_CIFFT_STEP_4096_F64_ID,mgr);
ref.reload( TransformCF64::INPUTS_CFFT_STEP_4096_F64_ID,mgr);
- //instCfftF64 = &arm_cfft_sR_f64_len4096;
+ instCfftF64 = &arm_cfft_sR_f64_len4096;
this->ifft=1;
diff --git a/CMSIS/DSP/Testing/Source/Tests/TransformRF64.cpp b/CMSIS/DSP/Testing/Source/Tests/TransformRF64.cpp
index 0e6f05b..cb19870 100755
--- a/CMSIS/DSP/Testing/Source/Tests/TransformRF64.cpp
+++ b/CMSIS/DSP/Testing/Source/Tests/TransformRF64.cpp
@@ -6,7 +6,7 @@
#include <cstdio>
-#define SNR_THRESHOLD 120
+#define SNR_THRESHOLD 250
@@ -19,24 +19,24 @@
float64_t *outp = outputfft.ptr();
memcpy(tmp,inp,sizeof(float64_t)*input.nbSamples());
- /*
+
arm_rfft_fast_f64(
&this->instRfftF64,
tmp,
outp,
this->ifft);
- */
+
ASSERT_SNR(outputfft,ref,(float64_t)SNR_THRESHOLD);
ASSERT_EMPTY_TAIL(outputfft);
-
- }
-
+ }
+
+
void TransformRF64::setUp(Testing::testID_t id,std::vector<Testing::param_t>& paramsArgs,Client::PatternMgr *mgr)
{
-
+
switch(id)
{
@@ -46,7 +46,7 @@
input.reload(TransformRF64::INPUTS_RFFT_NOISY_32_F64_ID,mgr);
ref.reload( TransformRF64::REF_RFFT_NOISY_32_F64_ID,mgr);
- //arm_rfft_fast_init_f64(&this->instRfftF64 ,32);
+ arm_rfft_fast_init_f64(&this->instRfftF64 ,32);
inputchanged.create(input.nbSamples(),TransformRF64::TEMP_F64_ID,mgr);
@@ -59,7 +59,7 @@
input.reload(TransformRF64::INPUTS_RIFFT_NOISY_64_F64_ID,mgr);
ref.reload( TransformRF64::INPUTS_RFFT_NOISY_64_F64_ID,mgr);
- //arm_rfft_fast_init_f64(&this->instRfftF64 ,64);
+ arm_rfft_fast_init_f64(&this->instRfftF64 ,64);
inputchanged.create(input.nbSamples(),TransformRF64::TEMP_F64_ID,mgr);
@@ -72,7 +72,7 @@
input.reload(TransformRF64::INPUTS_RFFT_NOISY_64_F64_ID,mgr);
ref.reload( TransformRF64::REF_RFFT_NOISY_64_F64_ID,mgr);
- //arm_rfft_fast_init_f64(&this->instRfftF64 ,64);
+ arm_rfft_fast_init_f64(&this->instRfftF64 ,64);
inputchanged.create(input.nbSamples(),TransformRF64::TEMP_F64_ID,mgr);
@@ -85,7 +85,7 @@
input.reload(TransformRF64::INPUTS_RIFFT_NOISY_64_F64_ID,mgr);
ref.reload( TransformRF64::INPUTS_RFFT_NOISY_64_F64_ID,mgr);
- //arm_rfft_fast_init_f64(&this->instRfftF64 ,64);
+ arm_rfft_fast_init_f64(&this->instRfftF64 ,64);
inputchanged.create(input.nbSamples(),TransformRF64::TEMP_F64_ID,mgr);
@@ -98,7 +98,7 @@
input.reload(TransformRF64::INPUTS_RFFT_NOISY_128_F64_ID,mgr);
ref.reload( TransformRF64::REF_RFFT_NOISY_128_F64_ID,mgr);
- //arm_rfft_fast_init_f64(&this->instRfftF64 ,128);
+ arm_rfft_fast_init_f64(&this->instRfftF64 ,128);
inputchanged.create(input.nbSamples(),TransformRF64::TEMP_F64_ID,mgr);
@@ -111,7 +111,7 @@
input.reload(TransformRF64::INPUTS_RIFFT_NOISY_128_F64_ID,mgr);
ref.reload( TransformRF64::INPUTS_RFFT_NOISY_128_F64_ID,mgr);
- //arm_rfft_fast_init_f64(&this->instRfftF64 ,128);
+ arm_rfft_fast_init_f64(&this->instRfftF64 ,128);
inputchanged.create(input.nbSamples(),TransformRF64::TEMP_F64_ID,mgr);
@@ -124,7 +124,7 @@
input.reload(TransformRF64::INPUTS_RFFT_NOISY_256_F64_ID,mgr);
ref.reload( TransformRF64::REF_RFFT_NOISY_256_F64_ID,mgr);
- //arm_rfft_fast_init_f64(&this->instRfftF64 ,256);
+ arm_rfft_fast_init_f64(&this->instRfftF64 ,256);
inputchanged.create(input.nbSamples(),TransformRF64::TEMP_F64_ID,mgr);
@@ -137,7 +137,7 @@
input.reload(TransformRF64::INPUTS_RIFFT_NOISY_256_F64_ID,mgr);
ref.reload( TransformRF64::INPUTS_RFFT_NOISY_256_F64_ID,mgr);
- //arm_rfft_fast_init_f64(&this->instRfftF64 ,256);
+ arm_rfft_fast_init_f64(&this->instRfftF64 ,256);
inputchanged.create(input.nbSamples(),TransformRF64::TEMP_F64_ID,mgr);
@@ -150,7 +150,7 @@
input.reload(TransformRF64::INPUTS_RFFT_NOISY_512_F64_ID,mgr);
ref.reload( TransformRF64::REF_RFFT_NOISY_512_F64_ID,mgr);
- //arm_rfft_fast_init_f64(&this->instRfftF64 ,512);
+ arm_rfft_fast_init_f64(&this->instRfftF64 ,512);
inputchanged.create(input.nbSamples(),TransformRF64::TEMP_F64_ID,mgr);
@@ -163,7 +163,7 @@
input.reload(TransformRF64::INPUTS_RIFFT_NOISY_512_F64_ID,mgr);
ref.reload( TransformRF64::INPUTS_RFFT_NOISY_512_F64_ID,mgr);
- //arm_rfft_fast_init_f64(&this->instRfftF64 ,512);
+ arm_rfft_fast_init_f64(&this->instRfftF64 ,512);
inputchanged.create(input.nbSamples(),TransformRF64::TEMP_F64_ID,mgr);
@@ -176,7 +176,7 @@
input.reload(TransformRF64::INPUTS_RFFT_NOISY_1024_F64_ID,mgr);
ref.reload( TransformRF64::REF_RFFT_NOISY_1024_F64_ID,mgr);
- //arm_rfft_fast_init_f64(&this->instRfftF64 ,1024);
+ arm_rfft_fast_init_f64(&this->instRfftF64 ,1024);
inputchanged.create(input.nbSamples(),TransformRF64::TEMP_F64_ID,mgr);
@@ -189,7 +189,7 @@
input.reload(TransformRF64::INPUTS_RIFFT_NOISY_1024_F64_ID,mgr);
ref.reload( TransformRF64::INPUTS_RFFT_NOISY_1024_F64_ID,mgr);
- //arm_rfft_fast_init_f64(&this->instRfftF64 ,1024);
+ arm_rfft_fast_init_f64(&this->instRfftF64 ,1024);
inputchanged.create(input.nbSamples(),TransformRF64::TEMP_F64_ID,mgr);
@@ -202,7 +202,7 @@
input.reload(TransformRF64::INPUTS_RFFT_NOISY_2048_F64_ID,mgr);
ref.reload( TransformRF64::REF_RFFT_NOISY_2048_F64_ID,mgr);
- //arm_rfft_fast_init_f64(&this->instRfftF64 ,2048);
+ arm_rfft_fast_init_f64(&this->instRfftF64 ,2048);
inputchanged.create(input.nbSamples(),TransformRF64::TEMP_F64_ID,mgr);
@@ -215,7 +215,7 @@
input.reload(TransformRF64::INPUTS_RIFFT_NOISY_2048_F64_ID,mgr);
ref.reload( TransformRF64::INPUTS_RFFT_NOISY_2048_F64_ID,mgr);
- //arm_rfft_fast_init_f64(&this->instRfftF64 ,2048);
+ arm_rfft_fast_init_f64(&this->instRfftF64 ,2048);
inputchanged.create(input.nbSamples(),TransformRF64::TEMP_F64_ID,mgr);
@@ -228,7 +228,7 @@
input.reload(TransformRF64::INPUTS_RFFT_NOISY_4096_F64_ID,mgr);
ref.reload( TransformRF64::REF_RFFT_NOISY_4096_F64_ID,mgr);
- //arm_rfft_fast_init_f64(&this->instRfftF64 ,4096);
+ arm_rfft_fast_init_f64(&this->instRfftF64 ,4096);
inputchanged.create(input.nbSamples(),TransformRF64::TEMP_F64_ID,mgr);
@@ -241,7 +241,7 @@
input.reload(TransformRF64::INPUTS_RIFFT_NOISY_4096_F64_ID,mgr);
ref.reload( TransformRF64::INPUTS_RFFT_NOISY_4096_F64_ID,mgr);
- //arm_rfft_fast_init_f64(&this->instRfftF64 ,4096);
+ arm_rfft_fast_init_f64(&this->instRfftF64 ,4096);
inputchanged.create(input.nbSamples(),TransformRF64::TEMP_F64_ID,mgr);
@@ -256,7 +256,7 @@
input.reload(TransformRF64::INPUTS_RFFT_STEP_32_F64_ID,mgr);
ref.reload( TransformRF64::REF_RFFT_STEP_32_F64_ID,mgr);
- //arm_rfft_fast_init_f64(&this->instRfftF64 ,32);
+ arm_rfft_fast_init_f64(&this->instRfftF64 ,32);
inputchanged.create(input.nbSamples(),TransformRF64::TEMP_F64_ID,mgr);
@@ -269,7 +269,7 @@
input.reload(TransformRF64::INPUTS_RIFFT_STEP_64_F64_ID,mgr);
ref.reload( TransformRF64::INPUTS_RFFT_STEP_64_F64_ID,mgr);
- //arm_rfft_fast_init_f64(&this->instRfftF64 ,64);
+ arm_rfft_fast_init_f64(&this->instRfftF64 ,64);
inputchanged.create(input.nbSamples(),TransformRF64::TEMP_F64_ID,mgr);
@@ -282,7 +282,7 @@
input.reload(TransformRF64::INPUTS_RFFT_STEP_64_F64_ID,mgr);
ref.reload( TransformRF64::REF_RFFT_STEP_64_F64_ID,mgr);
- //arm_rfft_fast_init_f64(&this->instRfftF64 ,64);
+ arm_rfft_fast_init_f64(&this->instRfftF64 ,64);
inputchanged.create(input.nbSamples(),TransformRF64::TEMP_F64_ID,mgr);
@@ -295,7 +295,7 @@
input.reload(TransformRF64::INPUTS_RIFFT_STEP_64_F64_ID,mgr);
ref.reload( TransformRF64::INPUTS_RFFT_STEP_64_F64_ID,mgr);
- //arm_rfft_fast_init_f64(&this->instRfftF64 ,64);
+ arm_rfft_fast_init_f64(&this->instRfftF64 ,64);
inputchanged.create(input.nbSamples(),TransformRF64::TEMP_F64_ID,mgr);
@@ -308,7 +308,7 @@
input.reload(TransformRF64::INPUTS_RFFT_STEP_128_F64_ID,mgr);
ref.reload( TransformRF64::REF_RFFT_STEP_128_F64_ID,mgr);
- //arm_rfft_fast_init_f64(&this->instRfftF64 ,128);
+ arm_rfft_fast_init_f64(&this->instRfftF64 ,128);
inputchanged.create(input.nbSamples(),TransformRF64::TEMP_F64_ID,mgr);
this->ifft=0;
@@ -320,7 +320,7 @@
input.reload(TransformRF64::INPUTS_RIFFT_STEP_128_F64_ID,mgr);
ref.reload( TransformRF64::INPUTS_RFFT_STEP_128_F64_ID,mgr);
- //arm_rfft_fast_init_f64(&this->instRfftF64 ,128);
+ arm_rfft_fast_init_f64(&this->instRfftF64 ,128);
inputchanged.create(input.nbSamples(),TransformRF64::TEMP_F64_ID,mgr);
@@ -333,7 +333,7 @@
input.reload(TransformRF64::INPUTS_RFFT_STEP_256_F64_ID,mgr);
ref.reload( TransformRF64::REF_RFFT_STEP_256_F64_ID,mgr);
- //arm_rfft_fast_init_f64(&this->instRfftF64 ,256);
+ arm_rfft_fast_init_f64(&this->instRfftF64 ,256);
inputchanged.create(input.nbSamples(),TransformRF64::TEMP_F64_ID,mgr);
@@ -346,7 +346,7 @@
input.reload(TransformRF64::INPUTS_RIFFT_STEP_256_F64_ID,mgr);
ref.reload( TransformRF64::INPUTS_RFFT_STEP_256_F64_ID,mgr);
- //arm_rfft_fast_init_f64(&this->instRfftF64 ,256);
+ arm_rfft_fast_init_f64(&this->instRfftF64 ,256);
inputchanged.create(input.nbSamples(),TransformRF64::TEMP_F64_ID,mgr);
@@ -359,7 +359,7 @@
input.reload(TransformRF64::INPUTS_RFFT_STEP_512_F64_ID,mgr);
ref.reload( TransformRF64::REF_RFFT_STEP_512_F64_ID,mgr);
- //arm_rfft_fast_init_f64(&this->instRfftF64 ,512);
+ arm_rfft_fast_init_f64(&this->instRfftF64 ,512);
inputchanged.create(input.nbSamples(),TransformRF64::TEMP_F64_ID,mgr);
@@ -372,7 +372,7 @@
input.reload(TransformRF64::INPUTS_RIFFT_STEP_512_F64_ID,mgr);
ref.reload( TransformRF64::INPUTS_RFFT_STEP_512_F64_ID,mgr);
- //arm_rfft_fast_init_f64(&this->instRfftF64 ,512);
+ arm_rfft_fast_init_f64(&this->instRfftF64 ,512);
inputchanged.create(input.nbSamples(),TransformRF64::TEMP_F64_ID,mgr);
@@ -385,7 +385,7 @@
input.reload(TransformRF64::INPUTS_RFFT_STEP_1024_F64_ID,mgr);
ref.reload( TransformRF64::REF_RFFT_STEP_1024_F64_ID,mgr);
- //arm_rfft_fast_init_f64(&this->instRfftF64 ,1024);
+ arm_rfft_fast_init_f64(&this->instRfftF64 ,1024);
inputchanged.create(input.nbSamples(),TransformRF64::TEMP_F64_ID,mgr);
@@ -398,7 +398,7 @@
input.reload(TransformRF64::INPUTS_RIFFT_STEP_1024_F64_ID,mgr);
ref.reload( TransformRF64::INPUTS_RFFT_STEP_1024_F64_ID,mgr);
- //arm_rfft_fast_init_f64(&this->instRfftF64 ,1024);
+ arm_rfft_fast_init_f64(&this->instRfftF64 ,1024);
inputchanged.create(input.nbSamples(),TransformRF64::TEMP_F64_ID,mgr);
@@ -411,7 +411,7 @@
input.reload(TransformRF64::INPUTS_RFFT_STEP_2048_F64_ID,mgr);
ref.reload( TransformRF64::REF_RFFT_STEP_2048_F64_ID,mgr);
- //arm_rfft_fast_init_f64(&this->instRfftF64 ,2048);
+ arm_rfft_fast_init_f64(&this->instRfftF64 ,2048);
inputchanged.create(input.nbSamples(),TransformRF64::TEMP_F64_ID,mgr);
@@ -424,7 +424,7 @@
input.reload(TransformRF64::INPUTS_RIFFT_STEP_2048_F64_ID,mgr);
ref.reload( TransformRF64::INPUTS_RFFT_STEP_2048_F64_ID,mgr);
- //arm_rfft_fast_init_f64(&this->instRfftF64 ,2048);
+ arm_rfft_fast_init_f64(&this->instRfftF64 ,2048);
inputchanged.create(input.nbSamples(),TransformRF64::TEMP_F64_ID,mgr);
@@ -437,7 +437,7 @@
input.reload(TransformRF64::INPUTS_RFFT_STEP_4096_F64_ID,mgr);
ref.reload( TransformRF64::REF_RFFT_STEP_4096_F64_ID,mgr);
- //arm_rfft_fast_init_f64(&this->instRfftF64 ,4096);
+ arm_rfft_fast_init_f64(&this->instRfftF64 ,4096);
inputchanged.create(input.nbSamples(),TransformRF64::TEMP_F64_ID,mgr);
@@ -450,7 +450,7 @@
input.reload(TransformRF64::INPUTS_RIFFT_STEP_4096_F64_ID,mgr);
ref.reload( TransformRF64::INPUTS_RFFT_STEP_4096_F64_ID,mgr);
- //arm_rfft_fast_init_f64(&this->instRfftF64 ,4096);
+ arm_rfft_fast_init_f64(&this->instRfftF64 ,4096);
inputchanged.create(input.nbSamples(),TransformRF64::TEMP_F64_ID,mgr);
@@ -462,9 +462,9 @@
}
-
+
outputfft.create(ref.nbSamples(),TransformRF64::OUTPUT_RFFT_F64_ID,mgr);
-
+
}