aboutsummaryrefslogtreecommitdiff
path: root/sysdeps
diff options
context:
space:
mode:
authorSzabolcs Nagy <szabolcs.nagy@arm.com>2018-02-12 18:16:03 +0000
committerSzabolcs Nagy <szabolcs.nagy@arm.com>2018-09-05 16:22:00 +0100
commite70c17682518fab2fad164fecf73341443bc2ed3 (patch)
treeb51780512cbcf9b0ded12c313b7e034bf7162273 /sysdeps
parentb7cdc2aeb16c07fd9e6ec59f96f862b7fe2d3fdd (diff)
downloadglibc-e70c17682518fab2fad164fecf73341443bc2ed3.zip
glibc-e70c17682518fab2fad164fecf73341443bc2ed3.tar.gz
glibc-e70c17682518fab2fad164fecf73341443bc2ed3.tar.bz2
Add new exp and exp2 implementations
Optimized exp and exp2 implementations using a lookup table for fractional powers of 2. There are several variants, see e_exp_data.c, they can be selected by modifying math_config.h allowing different tradeoffs. The default selection should be acceptable as generic libm code. Worst case error is 0.509 ULP for exp and 0.507 ULP for exp2, on aarch64 the rodata size is 2160 bytes, shared between exp and exp2. On aarch64 .text + .rodata size decreased by 24912 bytes. The non-nearest rounding error is less than 1 ULP even on targets without efficient round implementation (although the error rate is higher in that case). Targets with single instruction, rounding mode independent, to nearest integer rounding and conversion can use them by setting TOINT_INTRINSICS and adding the necessary code to their math_private.h. The __exp1 code uses the same algorithm, so the error bound of pow increased a bit. New double precision error handling code was added following the style of the single precision error handling code. Improvements on Cortex-A72 compared to current glibc master: exp thruput: 1.61x in [-9.9 9.9] exp latency: 1.53x in [-9.9 9.9] exp thruput: 1.13x in [0.5 1] exp latency: 1.30x in [0.5 1] exp2 thruput: 2.03x in [-9.9 9.9] exp2 latency: 1.64x in [-9.9 9.9] For small (< 1) inputs the current exp code uses a separate algorithm so the speed up there is less. Was tested on aarch64-linux-gnu (TOINT_INTRINSICS, fma contraction) and arm-linux-gnueabihf (!TOINT_INTRINSICS, no fma contraction) and x86_64-linux-gnu (!TOINT_INTRINSICS, no fma contraction) and powerpc64le-linux-gnu (!TOINT_INTRINSICS, fma contraction) targets, only non-nearest rounding ulp errors increase and they are within acceptable bounds (ulp updates are in separate patches). * NEWS: Mention exp and exp2 improvements. * math/Makefile (libm-support): Remove t_exp. (type-double-routines): Add math_err and e_exp_data. * sysdeps/aarch64/libm-test-ulps: Update. * sysdeps/arm/libm-test-ulps: Update. * sysdeps/i386/fpu/e_exp_data.c: New file. * sysdeps/i386/fpu/math_err.c: New file. * sysdeps/i386/fpu/t_exp.c: Remove. * sysdeps/ia64/fpu/e_exp_data.c: New file. * sysdeps/ia64/fpu/math_err.c: New file. * sysdeps/ia64/fpu/t_exp.c: Remove. * sysdeps/ieee754/dbl-64/e_exp.c: Rewrite. * sysdeps/ieee754/dbl-64/e_exp2.c: Rewrite. * sysdeps/ieee754/dbl-64/e_exp_data.c: New file. * sysdeps/ieee754/dbl-64/e_pow.c (__ieee754_pow): Update error bound. * sysdeps/ieee754/dbl-64/eexp.tbl: Remove. * sysdeps/ieee754/dbl-64/math_config.h: New file. * sysdeps/ieee754/dbl-64/math_err.c: New file. * sysdeps/ieee754/dbl-64/t_exp.c: Remove. * sysdeps/ieee754/dbl-64/t_exp2.h: Remove. * sysdeps/ieee754/dbl-64/uexp.h: Remove. * sysdeps/ieee754/dbl-64/uexp.tbl: Remove. * sysdeps/m68k/m680x0/fpu/e_exp_data.c: New file. * sysdeps/m68k/m680x0/fpu/math_err.c: New file. * sysdeps/m68k/m680x0/fpu/t_exp.c: Remove. * sysdeps/powerpc/fpu/libm-test-ulps: Update. * sysdeps/x86_64/fpu/libm-test-ulps: Update.
Diffstat (limited to 'sysdeps')
-rw-r--r--sysdeps/aarch64/libm-test-ulps88
-rw-r--r--sysdeps/arm/libm-test-ulps88
-rw-r--r--sysdeps/i386/fpu/e_exp_data.c1
-rw-r--r--sysdeps/i386/fpu/math_err.c1
-rw-r--r--sysdeps/i386/fpu/t_exp.c1
-rw-r--r--sysdeps/ia64/fpu/e_exp_data.c1
-rw-r--r--sysdeps/ia64/fpu/math_err.c1
-rw-r--r--sysdeps/ia64/fpu/t_exp.c1
-rw-r--r--sysdeps/ieee754/dbl-64/e_exp.c485
-rw-r--r--sysdeps/ieee754/dbl-64/e_exp2.c221
-rw-r--r--sysdeps/ieee754/dbl-64/e_exp_data.c196
-rw-r--r--sysdeps/ieee754/dbl-64/e_pow.c6
-rw-r--r--sysdeps/ieee754/dbl-64/eexp.tbl172
-rw-r--r--sysdeps/ieee754/dbl-64/math_config.h136
-rw-r--r--sysdeps/ieee754/dbl-64/math_err.c92
-rw-r--r--sysdeps/ieee754/dbl-64/t_exp.c435
-rw-r--r--sysdeps/ieee754/dbl-64/t_exp2.h585
-rw-r--r--sysdeps/ieee754/dbl-64/uexp.h68
-rw-r--r--sysdeps/ieee754/dbl-64/uexp.tbl1786
-rw-r--r--sysdeps/m68k/m680x0/fpu/e_exp_data.c1
-rw-r--r--sysdeps/m68k/m680x0/fpu/math_err.c1
-rw-r--r--sysdeps/m68k/m680x0/fpu/t_exp.c1
-rw-r--r--sysdeps/powerpc/fpu/libm-test-ulps96
-rw-r--r--sysdeps/x86_64/fpu/libm-test-ulps88
24 files changed, 882 insertions, 3669 deletions
diff --git a/sysdeps/aarch64/libm-test-ulps b/sysdeps/aarch64/libm-test-ulps
index 6a89028..585e5bb 100644
--- a/sysdeps/aarch64/libm-test-ulps
+++ b/sysdeps/aarch64/libm-test-ulps
@@ -716,9 +716,9 @@ ildouble: 2
ldouble: 2
Function: Imaginary part of "ccos_downward":
-double: 2
+double: 3
float: 3
-idouble: 2
+idouble: 3
ifloat: 3
ildouble: 2
ldouble: 2
@@ -732,9 +732,9 @@ ildouble: 2
ldouble: 2
Function: Imaginary part of "ccos_towardzero":
-double: 2
+double: 3
float: 3
-idouble: 2
+idouble: 3
ifloat: 3
ildouble: 2
ldouble: 2
@@ -772,33 +772,33 @@ ildouble: 1
ldouble: 1
Function: Real part of "ccosh_downward":
-double: 1
+double: 2
float: 3
-idouble: 1
+idouble: 2
ifloat: 3
ildouble: 2
ldouble: 2
Function: Imaginary part of "ccosh_downward":
-double: 2
+double: 3
float: 3
-idouble: 2
+idouble: 3
ifloat: 3
ildouble: 2
ldouble: 2
Function: Real part of "ccosh_towardzero":
-double: 1
+double: 2
float: 3
-idouble: 1
+idouble: 2
ifloat: 3
ildouble: 2
ldouble: 2
Function: Imaginary part of "ccosh_towardzero":
-double: 2
+double: 3
float: 3
-idouble: 2
+idouble: 3
ifloat: 3
ildouble: 2
ldouble: 2
@@ -836,33 +836,33 @@ ildouble: 1
ldouble: 1
Function: Real part of "cexp_downward":
-double: 1
+double: 2
float: 2
-idouble: 1
+idouble: 2
ifloat: 2
ildouble: 2
ldouble: 2
Function: Imaginary part of "cexp_downward":
-double: 1
+double: 3
float: 3
-idouble: 1
+idouble: 3
ifloat: 3
ildouble: 2
ldouble: 2
Function: Real part of "cexp_towardzero":
-double: 1
+double: 2
float: 2
-idouble: 1
+idouble: 2
ifloat: 2
ildouble: 2
ldouble: 2
Function: Imaginary part of "cexp_towardzero":
-double: 1
+double: 3
float: 3
-idouble: 1
+idouble: 3
ifloat: 3
ildouble: 2
ldouble: 2
@@ -876,9 +876,9 @@ ildouble: 3
ldouble: 3
Function: Imaginary part of "cexp_upward":
-double: 1
+double: 3
float: 2
-idouble: 1
+idouble: 3
ifloat: 2
ildouble: 3
ldouble: 3
@@ -1052,25 +1052,25 @@ ildouble: 1
ldouble: 1
Function: "cosh_downward":
-double: 1
+double: 2
float: 1
-idouble: 1
+idouble: 2
ifloat: 1
ildouble: 1
ldouble: 2
Function: "cosh_towardzero":
-double: 1
+double: 2
float: 1
-idouble: 1
+idouble: 2
ifloat: 1
ildouble: 1
ldouble: 2
Function: "cosh_upward":
-double: 1
+double: 2
float: 2
-idouble: 1
+idouble: 2
ifloat: 2
ildouble: 1
ldouble: 3
@@ -1090,9 +1090,9 @@ ildouble: 1
ldouble: 1
Function: Real part of "cpow_downward":
-double: 4
+double: 5
float: 8
-idouble: 4
+idouble: 5
ifloat: 8
ildouble: 6
ldouble: 6
@@ -1106,9 +1106,9 @@ ildouble: 2
ldouble: 2
Function: Real part of "cpow_towardzero":
-double: 4
+double: 5
float: 8
-idouble: 4
+idouble: 5
ifloat: 8
ildouble: 6
ldouble: 6
@@ -1150,9 +1150,9 @@ ildouble: 1
ldouble: 1
Function: Real part of "csin_downward":
-double: 2
+double: 3
float: 3
-idouble: 2
+idouble: 3
ifloat: 3
ildouble: 2
ldouble: 2
@@ -1166,9 +1166,9 @@ ildouble: 2
ldouble: 2
Function: Real part of "csin_towardzero":
-double: 2
+double: 3
float: 3
-idouble: 2
+idouble: 3
ifloat: 3
ildouble: 2
ldouble: 2
@@ -1220,9 +1220,9 @@ ildouble: 2
ldouble: 2
Function: Imaginary part of "csinh_downward":
-double: 2
+double: 3
float: 3
-idouble: 2
+idouble: 3
ifloat: 3
ildouble: 2
ldouble: 2
@@ -1236,9 +1236,9 @@ ildouble: 2
ldouble: 2
Function: Imaginary part of "csinh_towardzero":
-double: 2
+double: 3
float: 3
-idouble: 2
+idouble: 3
ifloat: 3
ildouble: 2
ldouble: 2
@@ -1492,9 +1492,9 @@ ildouble: 2
ldouble: 2
Function: "erfc_downward":
-double: 3
+double: 4
float: 4
-idouble: 3
+idouble: 4
ifloat: 4
ildouble: 5
ldouble: 5
@@ -1508,9 +1508,9 @@ ildouble: 4
ldouble: 4
Function: "erfc_upward":
-double: 3
+double: 4
float: 4
-idouble: 3
+idouble: 4
ifloat: 4
ildouble: 5
ldouble: 5
diff --git a/sysdeps/arm/libm-test-ulps b/sysdeps/arm/libm-test-ulps
index e62cca3..798e3c4 100644
--- a/sysdeps/arm/libm-test-ulps
+++ b/sysdeps/arm/libm-test-ulps
@@ -530,9 +530,9 @@ idouble: 1
ifloat: 1
Function: Imaginary part of "ccos_downward":
-double: 2
+double: 3
float: 3
-idouble: 2
+idouble: 3
ifloat: 3
Function: Real part of "ccos_towardzero":
@@ -542,9 +542,9 @@ idouble: 1
ifloat: 2
Function: Imaginary part of "ccos_towardzero":
-double: 2
+double: 3
float: 3
-idouble: 2
+idouble: 3
ifloat: 3
Function: Real part of "ccos_upward":
@@ -572,27 +572,27 @@ idouble: 1
ifloat: 1
Function: Real part of "ccosh_downward":
-double: 1
+double: 2
float: 3
-idouble: 1
+idouble: 2
ifloat: 3
Function: Imaginary part of "ccosh_downward":
-double: 2
+double: 3
float: 3
-idouble: 2
+idouble: 3
ifloat: 3
Function: Real part of "ccosh_towardzero":
-double: 1
+double: 2
float: 3
-idouble: 1
+idouble: 2
ifloat: 3
Function: Imaginary part of "ccosh_towardzero":
-double: 2
+double: 3
float: 3
-idouble: 2
+idouble: 3
ifloat: 3
Function: Real part of "ccosh_upward":
@@ -620,27 +620,27 @@ idouble: 1
ifloat: 2
Function: Real part of "cexp_downward":
-double: 1
+double: 2
float: 2
-idouble: 1
+idouble: 2
ifloat: 2
Function: Imaginary part of "cexp_downward":
-double: 1
+double: 3
float: 3
-idouble: 1
+idouble: 3
ifloat: 3
Function: Real part of "cexp_towardzero":
-double: 1
+double: 2
float: 2
-idouble: 1
+idouble: 2
ifloat: 2
Function: Imaginary part of "cexp_towardzero":
-double: 1
+double: 3
float: 3
-idouble: 1
+idouble: 3
ifloat: 3
Function: Real part of "cexp_upward":
@@ -650,9 +650,9 @@ idouble: 1
ifloat: 2
Function: Imaginary part of "cexp_upward":
-double: 1
+double: 3
float: 2
-idouble: 1
+idouble: 3
ifloat: 2
Function: Real part of "clog":
@@ -780,21 +780,21 @@ idouble: 1
ifloat: 1
Function: "cosh_downward":
-double: 1
+double: 2
float: 1
-idouble: 1
+idouble: 2
ifloat: 1
Function: "cosh_towardzero":
-double: 1
+double: 2
float: 1
-idouble: 1
+idouble: 2
ifloat: 1
Function: "cosh_upward":
-double: 1
+double: 2
float: 2
-idouble: 1
+idouble: 2
ifloat: 2
Function: Real part of "cpow":
@@ -808,9 +808,9 @@ float: 2
ifloat: 2
Function: Real part of "cpow_downward":
-double: 4
+double: 5
float: 8
-idouble: 4
+idouble: 5
ifloat: 8
Function: Imaginary part of "cpow_downward":
@@ -820,9 +820,9 @@ idouble: 1
ifloat: 2
Function: Real part of "cpow_towardzero":
-double: 4
+double: 5
float: 8
-idouble: 4
+idouble: 5
ifloat: 8
Function: Imaginary part of "cpow_towardzero":
@@ -850,9 +850,9 @@ idouble: 1
ifloat: 1
Function: Real part of "csin_downward":
-double: 2
+double: 3
float: 3
-idouble: 2
+idouble: 3
ifloat: 3
Function: Imaginary part of "csin_downward":
@@ -862,9 +862,9 @@ idouble: 1
ifloat: 1
Function: Real part of "csin_towardzero":
-double: 2
+double: 3
float: 3
-idouble: 2
+idouble: 3
ifloat: 3
Function: Imaginary part of "csin_towardzero":
@@ -902,9 +902,9 @@ idouble: 2
ifloat: 2
Function: Imaginary part of "csinh_downward":
-double: 2
+double: 3
float: 3
-idouble: 2
+idouble: 3
ifloat: 3
Function: Real part of "csinh_towardzero":
@@ -914,9 +914,9 @@ idouble: 2
ifloat: 2
Function: Imaginary part of "csinh_towardzero":
-double: 2
+double: 3
float: 3
-idouble: 2
+idouble: 3
ifloat: 3
Function: Real part of "csinh_upward":
@@ -1132,15 +1132,15 @@ double: 2
idouble: 2
Function: "exp10_downward":
-double: 2
+double: 3
float: 1
-idouble: 2
+idouble: 3
ifloat: 1
Function: "exp10_towardzero":
-double: 2
+double: 3
float: 1
-idouble: 2
+idouble: 3
ifloat: 1
Function: "exp10_upward":
diff --git a/sysdeps/i386/fpu/e_exp_data.c b/sysdeps/i386/fpu/e_exp_data.c
new file mode 100644
index 0000000..1cc8931
--- /dev/null
+++ b/sysdeps/i386/fpu/e_exp_data.c
@@ -0,0 +1 @@
+/* Not needed. */
diff --git a/sysdeps/i386/fpu/math_err.c b/sysdeps/i386/fpu/math_err.c
new file mode 100644
index 0000000..1cc8931
--- /dev/null
+++ b/sysdeps/i386/fpu/math_err.c
@@ -0,0 +1 @@
+/* Not needed. */
diff --git a/sysdeps/i386/fpu/t_exp.c b/sysdeps/i386/fpu/t_exp.c
deleted file mode 100644
index fd37963..0000000
--- a/sysdeps/i386/fpu/t_exp.c
+++ /dev/null
@@ -1 +0,0 @@
-/* Empty. Not needed. */
diff --git a/sysdeps/ia64/fpu/e_exp_data.c b/sysdeps/ia64/fpu/e_exp_data.c
new file mode 100644
index 0000000..1cc8931
--- /dev/null
+++ b/sysdeps/ia64/fpu/e_exp_data.c
@@ -0,0 +1 @@
+/* Not needed. */
diff --git a/sysdeps/ia64/fpu/math_err.c b/sysdeps/ia64/fpu/math_err.c
new file mode 100644
index 0000000..1cc8931
--- /dev/null
+++ b/sysdeps/ia64/fpu/math_err.c
@@ -0,0 +1 @@
+/* Not needed. */
diff --git a/sysdeps/ia64/fpu/t_exp.c b/sysdeps/ia64/fpu/t_exp.c
deleted file mode 100644
index 41254ae..0000000
--- a/sysdeps/ia64/fpu/t_exp.c
+++ /dev/null
@@ -1 +0,0 @@
-/* Not needed. */
diff --git a/sysdeps/ieee754/dbl-64/e_exp.c b/sysdeps/ieee754/dbl-64/e_exp.c
index 7d8b414..209f20b 100644
--- a/sysdeps/ieee754/dbl-64/e_exp.c
+++ b/sysdeps/ieee754/dbl-64/e_exp.c
@@ -1,48 +1,158 @@
-/*
- * IBM Accurate Mathematical Library
- * written by International Business Machines Corp.
- * Copyright (C) 2001-2018 Free Software Foundation, Inc.
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License as published by
- * the Free Software Foundation; either version 2.1 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public License
- * along with this program; if not, see <http://www.gnu.org/licenses/>.
- */
-/***************************************************************************/
-/* MODULE_NAME:uexp.c */
-/* */
-/* FUNCTION:uexp */
-/* exp1 */
-/* */
-/* FILES NEEDED:dla.h endian.h mpa.h mydefs.h uexp.h */
-/* */
-/* An ultimate exp routine. Given an IEEE double machine number x */
-/* it computes an almost correctly rounded (to nearest) value of e^x */
-/* Assumption: Machine arithmetic operations are performed in */
-/* round to nearest mode of IEEE 754 standard. */
-/* */
-/***************************************************************************/
+/* Double-precision e^x function.
+ Copyright (C) 2018 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
#include <math.h>
-#include "endian.h"
-#include "uexp.h"
-#include "mydefs.h"
-#include "MathLib.h"
-#include "uexp.tbl"
+#include <stdint.h>
#include <math-barriers.h>
-#include <math_private.h>
-#include <fenv_private.h>
-#include <fenv.h>
-#include <float.h>
-#include "eexp.tbl"
+#include <math-narrow-eval.h>
+#include "math_config.h"
+
+#define N (1 << EXP_TABLE_BITS)
+#define InvLn2N __exp_data.invln2N
+#define NegLn2hiN __exp_data.negln2hiN
+#define NegLn2loN __exp_data.negln2loN
+#define Shift __exp_data.shift
+#define T __exp_data.tab
+#define C2 __exp_data.poly[5 - EXP_POLY_ORDER]
+#define C3 __exp_data.poly[6 - EXP_POLY_ORDER]
+#define C4 __exp_data.poly[7 - EXP_POLY_ORDER]
+#define C5 __exp_data.poly[8 - EXP_POLY_ORDER]
+
+/* Handle cases that may overflow or underflow when computing the result that
+ is scale*(1+TMP) without intermediate rounding. The bit representation of
+ scale is in SBITS, however it has a computed exponent that may have
+ overflown into the sign bit so that needs to be adjusted before using it as
+ a double. (int32_t)KI is the k used in the argument reduction and exponent
+ adjustment of scale, positive k here means the result may overflow and
+ negative k means the result may underflow. */
+static inline double
+specialcase (double_t tmp, uint64_t sbits, uint64_t ki)
+{
+ double_t scale, y;
+
+ if ((ki & 0x80000000) == 0)
+ {
+ /* k > 0, the exponent of scale might have overflowed by <= 460. */
+ sbits -= 1009ull << 52;
+ scale = asdouble (sbits);
+ y = 0x1p1009 * (scale + scale * tmp);
+ return check_oflow (y);
+ }
+ /* k < 0, need special care in the subnormal range. */
+ sbits += 1022ull << 52;
+ scale = asdouble (sbits);
+ y = scale + scale * tmp;
+ if (y < 1.0)
+ {
+ /* Round y to the right precision before scaling it into the subnormal
+ range to avoid double rounding that can cause 0.5+E/2 ulp error where
+ E is the worst-case ulp error outside the subnormal range. So this
+ is only useful if the goal is better than 1 ulp worst-case error. */
+ double_t hi, lo;
+ lo = scale - y + scale * tmp;
+ hi = 1.0 + y;
+ lo = 1.0 - hi + y + lo;
+ y = math_narrow_eval (hi + lo) - 1.0;
+ /* Avoid -0.0 with downward rounding. */
+ if (WANT_ROUNDING && y == 0.0)
+ y = 0.0;
+ /* The underflow exception needs to be signaled explicitly. */
+ math_force_eval (math_opt_barrier (0x1p-1022) * 0x1p-1022);
+ }
+ y = 0x1p-1022 * y;
+ return check_uflow (y);
+}
+
+/* Top 12 bits of a double (sign and exponent bits). */
+static inline uint32_t
+top12 (double x)
+{
+ return asuint64 (x) >> 52;
+}
+
+/* Computes exp(x+xtail) where |xtail| < 2^-8/N and |xtail| <= |x|.
+ If hastail is 0 then xtail is assumed to be 0 too. */
+static inline double
+exp_inline (double x, double xtail, int hastail)
+{
+ uint32_t abstop;
+ uint64_t ki, idx, top, sbits;
+ /* double_t for better performance on targets with FLT_EVAL_METHOD==2. */
+ double_t kd, z, r, r2, scale, tail, tmp;
+
+ abstop = top12 (x) & 0x7ff;
+ if (__glibc_unlikely (abstop - top12 (0x1p-54)
+ >= top12 (512.0) - top12 (0x1p-54)))
+ {
+ if (abstop - top12 (0x1p-54) >= 0x80000000)
+ /* Avoid spurious underflow for tiny x. */
+ /* Note: 0 is common input. */
+ return WANT_ROUNDING ? 1.0 + x : 1.0;
+ if (abstop >= top12 (1024.0))
+ {
+ if (asuint64 (x) == asuint64 (-INFINITY))
+ return 0.0;
+ if (abstop >= top12 (INFINITY))
+ return 1.0 + x;
+ if (asuint64 (x) >> 63)
+ return __math_uflow (0);
+ else
+ return __math_oflow (0);
+ }
+ /* Large x is special cased below. */
+ abstop = 0;
+ }
+
+ /* exp(x) = 2^(k/N) * exp(r), with exp(r) in [2^(-1/2N),2^(1/2N)]. */
+ /* x = ln2/N*k + r, with int k and r in [-ln2/2N, ln2/2N]. */
+ z = InvLn2N * x;
+#if TOINT_INTRINSICS
+ kd = roundtoint (z);
+ ki = converttoint (z);
+#else
+ /* z - kd is in [-1, 1] in non-nearest rounding modes. */
+ kd = math_narrow_eval (z + Shift);
+ ki = asuint64 (kd);
+ kd -= Shift;
+#endif
+ r = x + kd * NegLn2hiN + kd * NegLn2loN;
+ /* The code assumes 2^-200 < |xtail| < 2^-8/N. */
+ if (hastail)
+ r += xtail;
+ /* 2^(k/N) ~= scale * (1 + tail). */
+ idx = 2 * (ki % N);
+ top = ki << (52 - EXP_TABLE_BITS);
+ tail = asdouble (T[idx]);
+ /* This is only a valid scale when -1023*N < k < 1024*N. */
+ sbits = T[idx + 1] + top;
+ /* exp(x) = 2^(k/N) * exp(r) ~= scale + scale * (tail + exp(r) - 1). */
+ /* Evaluation is optimized assuming superscalar pipelined execution. */
+ r2 = r * r;
+ /* Without fma the worst case error is 0.25/N ulp larger. */
+ /* Worst case error is less than 0.5+1.11/N+(abs poly error * 2^53) ulp. */
+ tmp = tail + r + r2 * (C2 + r * C3) + r2 * r2 * (C4 + r * C5);
+ if (__glibc_unlikely (abstop == 0))
+ return specialcase (tmp, sbits, ki);
+ scale = asdouble (sbits);
+ /* Note: tmp == 0 or |tmp| > 2^-200 and scale > 2^-739, so there
+ is no spurious underflow here even without fma. */
+ return scale + scale * tmp;
+}
#ifndef SECTION
# define SECTION
@@ -52,187 +162,7 @@ double
SECTION
__ieee754_exp (double x)
{
- double bexp, t, eps, del, base, y, al, bet, res, rem, cor;
- double z;
- mynumber junk1, junk2, binexp = {{0, 0}};
- int4 i, j, m, n, ex;
- int4 k;
- double retval;
-
- {
- SET_RESTORE_ROUND (FE_TONEAREST);
-
- junk1.x = x;
- m = junk1.i[HIGH_HALF];
- n = m & hugeint;
-
- if (n < 0x3ff0a2b2) /* |x| < 1.03972053527832 */
- {
- if (n < 0x3f862e42) /* |x| < 3/2 ln 2 */
- {
- if (n < 0x3ed00000) /* |x| < 1/64 ln 2 */
- {
- if (n < 0x3e300000) /* |x| < 2^18 */
- {
- retval = one + junk1.x;
- goto ret;
- }
- retval = one + junk1.x * (one + half * junk1.x);
- goto ret;
- }
- t = junk1.x * junk1.x;
- retval = junk1.x + (t * (half + junk1.x * t2) +
- (t * t) * (t3 + junk1.x * t4 + t * t5));
- retval = one + retval;
- goto ret;
- }
-
- /* Find the multiple of 2^-6 nearest x. */
- k = n >> 20;
- j = (0x00100000 | (n & 0x000fffff)) >> (0x40c - k);
- j = (j - 1) & ~1;
- if (m < 0)
- j += 134;
- z = junk1.x - TBL2[j];
- t = z * z;
- retval = z + (t * (half + (z * t2))
- + (t * t) * (t3 + z * t4 + t * t5));
- retval = TBL2[j + 1] + TBL2[j + 1] * retval;
- goto ret;
- }
-
- if (n < bigint) /* && |x| >= 1.03972053527832 */
- {
- y = x * log2e.x + three51.x;
- bexp = y - three51.x; /* multiply the result by 2**bexp */
-
- junk1.x = y;
-
- eps = bexp * ln_two2.x; /* x = bexp*ln(2) + t - eps */
- t = x - bexp * ln_two1.x;
-
- y = t + three33.x;
- base = y - three33.x; /* t rounded to a multiple of 2**-18 */
- junk2.x = y;
- del = (t - base) - eps; /* x = bexp*ln(2) + base + del */
- eps = del + del * del * (p3.x * del + p2.x);
-
- binexp.i[HIGH_HALF] = (junk1.i[LOW_HALF] + 1023) << 20;
-
- i = ((junk2.i[LOW_HALF] >> 8) & 0xfffffffe) + 356;
- j = (junk2.i[LOW_HALF] & 511) << 1;
-
- al = coar.x[i] * fine.x[j];
- bet = ((coar.x[i] * fine.x[j + 1] + coar.x[i + 1] * fine.x[j])
- + coar.x[i + 1] * fine.x[j + 1]);
-
- rem = (bet + bet * eps) + al * eps;
- res = al + rem;
- /* Maximum relative error is 7.8e-22 (70.1 bits).
- Maximum ULP error is 0.500007. */
- retval = res * binexp.x;
- goto ret;
- }
-
- if (n >= badint)
- {
- if (n > infint)
- {
- retval = x + x;
- goto ret;
- } /* x is NaN */
- if (n < infint)
- {
- if (x > 0)
- goto ret_huge;
- else
- goto ret_tiny;
- }
- /* x is finite, cause either overflow or underflow */
- if (junk1.i[LOW_HALF] != 0)
- {
- retval = x + x;
- goto ret;
- } /* x is NaN */
- retval = (x > 0) ? inf.x : zero; /* |x| = inf; return either inf or 0 */
- goto ret;
- }
-
- y = x * log2e.x + three51.x;
- bexp = y - three51.x;
- junk1.x = y;
- eps = bexp * ln_two2.x;
- t = x - bexp * ln_two1.x;
- y = t + three33.x;
- base = y - three33.x;
- junk2.x = y;
- del = (t - base) - eps;
- eps = del + del * del * (p3.x * del + p2.x);
- i = ((junk2.i[LOW_HALF] >> 8) & 0xfffffffe) + 356;
- j = (junk2.i[LOW_HALF] & 511) << 1;
- al = coar.x[i] * fine.x[j];
- bet = ((coar.x[i] * fine.x[j + 1] + coar.x[i + 1] * fine.x[j])
- + coar.x[i + 1] * fine.x[j + 1]);
- rem = (bet + bet * eps) + al * eps;
- res = al + rem;
- cor = (al - res) + rem;
- if (m >> 31)
- {
- ex = junk1.i[LOW_HALF];
- if (res < 1.0)
- {
- res += res;
- cor += cor;
- ex -= 1;
- }
- if (ex >= -1022)
- {
- binexp.i[HIGH_HALF] = (1023 + ex) << 20;
- /* Does not underflow: res >= 1.0, binexp >= 0x1p-1022
- Maximum relative error is 7.8e-22 (70.1 bits).
- Maximum ULP error is 0.500007. */
- retval = res * binexp.x;
- goto ret;
- }
- ex = -(1022 + ex);
- binexp.i[HIGH_HALF] = (1023 - ex) << 20;
- res *= binexp.x;
- cor *= binexp.x;
- t = 1.0 + res;
- y = ((1.0 - t) + res) + cor;
- res = t + y;
- /* Maximum ULP error is 0.5000035. */
- binexp.i[HIGH_HALF] = 0x00100000;
- retval = (res - 1.0) * binexp.x;
- if (retval < DBL_MIN)
- {
- double force_underflow = tiny * tiny;
- math_force_eval (force_underflow);
- }
- if (retval == 0)
- goto ret_tiny;
- goto ret;
- }
- else
- {
- binexp.i[HIGH_HALF] = (junk1.i[LOW_HALF] + 767) << 20;
- /* Maximum relative error is 7.8e-22 (70.1 bits).
- Maximum ULP error is 0.500007. */
- retval = res * binexp.x * t256.x;
- if (isinf (retval))
- goto ret_huge;
- else
- goto ret;
- }
- }
-ret:
- return retval;
-
- ret_huge:
- return hhuge * hhuge;
-
- ret_tiny:
- return tiny * tiny;
+ return exp_inline (x, 0, 0);
}
#ifndef __ieee754_exp
strong_alias (__ieee754_exp, __exp_finite)
@@ -243,112 +173,5 @@ double
SECTION
__exp1 (double x, double xx)
{
- double bexp, t, eps, del, base, y, al, bet, res, rem, cor;
- mynumber junk1, junk2, binexp = {{0, 0}};
- int4 i, j, m, n, ex;
-
- junk1.x = x;
- m = junk1.i[HIGH_HALF];
- n = m & hugeint; /* no sign */
-
- /* fabs (x) > 5.551112e-17 and fabs (x) < 7.080010e+02. */
- if (n > smallint && n < bigint)
- {
- y = x * log2e.x + three51.x;
- bexp = y - three51.x; /* multiply the result by 2**bexp */
-
- junk1.x = y;
-
- eps = bexp * ln_two2.x; /* x = bexp*ln(2) + t - eps */
- t = x - bexp * ln_two1.x;
-
- y = t + three33.x;
- base = y - three33.x; /* t rounded to a multiple of 2**-18 */
- junk2.x = y;
- del = (t - base) + (xx - eps); /* x = bexp*ln(2) + base + del */
- eps = del + del * del * (p3.x * del + p2.x);
-
- binexp.i[HIGH_HALF] = (junk1.i[LOW_HALF] + 1023) << 20;
-
- i = ((junk2.i[LOW_HALF] >> 8) & 0xfffffffe) + 356;
- j = (junk2.i[LOW_HALF] & 511) << 1;
-
- al = coar.x[i] * fine.x[j];
- bet = ((coar.x[i] * fine.x[j + 1] + coar.x[i + 1] * fine.x[j])
- + coar.x[i + 1] * fine.x[j + 1]);
-
- rem = (bet + bet * eps) + al * eps;
- res = al + rem;
- /* Maximum relative error before rounding is 8.8e-22 (69.9 bits).
- Maximum ULP error is 0.500008. */
- return res * binexp.x;
- }
-
- if (n <= smallint)
- return 1.0; /* if x->0 e^x=1 */
-
- if (n >= badint)
- {
- if (n > infint)
- return (zero / zero); /* x is NaN, return invalid */
- if (n < infint)
- return ((x > 0) ? (hhuge * hhuge) : (tiny * tiny));
- /* x is finite, cause either overflow or underflow */
- if (junk1.i[LOW_HALF] != 0)
- return (zero / zero); /* x is NaN */
- return ((x > 0) ? inf.x : zero); /* |x| = inf; return either inf or 0 */
- }
-
- y = x * log2e.x + three51.x;
- bexp = y - three51.x;
- junk1.x = y;
- eps = bexp * ln_two2.x;
- t = x - bexp * ln_two1.x;
- y = t + three33.x;
- base = y - three33.x;
- junk2.x = y;
- del = (t - base) + (xx - eps);
- eps = del + del * del * (p3.x * del + p2.x);
- i = ((junk2.i[LOW_HALF] >> 8) & 0xfffffffe) + 356;
- j = (junk2.i[LOW_HALF] & 511) << 1;
- al = coar.x[i] * fine.x[j];
- bet = ((coar.x[i] * fine.x[j + 1] + coar.x[i + 1] * fine.x[j])
- + coar.x[i + 1] * fine.x[j + 1]);
- rem = (bet + bet * eps) + al * eps;
- res = al + rem;
- cor = (al - res) + rem;
- if (m >> 31)
- {
- /* x < 0. */
- ex = junk1.i[LOW_HALF];
- if (res < 1.0)
- {
- res += res;
- cor += cor;
- ex -= 1;
- }
- if (ex >= -1022)
- {
- binexp.i[HIGH_HALF] = (1023 + ex) << 20;
- /* Maximum ULP error is 0.500008. */
- return res * binexp.x;
- }
- /* Denormal case - ex < -1022. */
- ex = -(1022 + ex);
- binexp.i[HIGH_HALF] = (1023 - ex) << 20;
- res *= binexp.x;
- cor *= binexp.x;
- t = 1.0 + res;
- y = ((1.0 - t) + res) + cor;
- res = t + y;
- binexp.i[HIGH_HALF] = 0x00100000;
- /* Maximum ULP error is 0.500004. */
- return (res - 1.0) * binexp.x;
- }
- else
- {
- binexp.i[HIGH_HALF] = (junk1.i[LOW_HALF] + 767) << 20;
- /* Maximum ULP error is 0.500008. */
- return res * binexp.x * t256.x;
- }
+ return exp_inline (x, xx, 1);
}
diff --git a/sysdeps/ieee754/dbl-64/e_exp2.c b/sysdeps/ieee754/dbl-64/e_exp2.c
index d07e787..96afcf9 100644
--- a/sysdeps/ieee754/dbl-64/e_exp2.c
+++ b/sysdeps/ieee754/dbl-64/e_exp2.c
@@ -1,7 +1,6 @@
-/* Double-precision floating point 2^x.
- Copyright (C) 1997-2018 Free Software Foundation, Inc.
+/* Double-precision 2^x function.
+ Copyright (C) 2018 Free Software Foundation, Inc.
This file is part of the GNU C Library.
- Contributed by Geoffrey Keating <geoffk@ozemail.com.au>
The GNU C Library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public
@@ -17,120 +16,130 @@
License along with the GNU C Library; if not, see
<http://www.gnu.org/licenses/>. */
-/* The basic design here is from
- Shmuel Gal and Boris Bachelis, "An Accurate Elementary Mathematical
- Library for the IEEE Floating Point Standard", ACM Trans. Math. Soft.,
- 17 (1), March 1991, pp. 26-45.
- It has been slightly modified to compute 2^x instead of e^x.
- */
-#include <stdlib.h>
-#include <float.h>
-#include <ieee754.h>
#include <math.h>
-#include <fenv.h>
-#include <inttypes.h>
+#include <stdint.h>
#include <math-barriers.h>
-#include <math_private.h>
-#include <fenv_private.h>
-#include <math-underflow.h>
+#include <math-narrow-eval.h>
+#include "math_config.h"
+
+#define N (1 << EXP_TABLE_BITS)
+#define Shift __exp_data.exp2_shift
+#define T __exp_data.tab
+#define C1 __exp_data.exp2_poly[0]
+#define C2 __exp_data.exp2_poly[1]
+#define C3 __exp_data.exp2_poly[2]
+#define C4 __exp_data.exp2_poly[3]
+#define C5 __exp_data.exp2_poly[4]
+
+/* Handle cases that may overflow or underflow when computing the result that
+ is scale*(1+TMP) without intermediate rounding. The bit representation of
+ scale is in SBITS, however it has a computed exponent that may have
+ overflown into the sign bit so that needs to be adjusted before using it as
+ a double. (int32_t)KI is the k used in the argument reduction and exponent
+ adjustment of scale, positive k here means the result may overflow and
+ negative k means the result may underflow. */
+static inline double
+specialcase (double_t tmp, uint64_t sbits, uint64_t ki)
+{
+ double_t scale, y;
-#include "t_exp2.h"
+ if ((ki & 0x80000000) == 0)
+ {
+ /* k > 0, the exponent of scale might have overflowed by 1. */
+ sbits -= 1ull << 52;
+ scale = asdouble (sbits);
+ y = 2 * (scale + scale * tmp);
+ return check_oflow (y);
+ }
+ /* k < 0, need special care in the subnormal range. */
+ sbits += 1022ull << 52;
+ scale = asdouble (sbits);
+ y = scale + scale * tmp;
+ if (y < 1.0)
+ {
+ /* Round y to the right precision before scaling it into the subnormal
+ range to avoid double rounding that can cause 0.5+E/2 ulp error where
+ E is the worst-case ulp error outside the subnormal range. So this
+ is only useful if the goal is better than 1 ulp worst-case error. */
+ double_t hi, lo;
+ lo = scale - y + scale * tmp;
+ hi = 1.0 + y;
+ lo = 1.0 - hi + y + lo;
+ y = math_narrow_eval (hi + lo) - 1.0;
+ /* Avoid -0.0 with downward rounding. */
+ if (WANT_ROUNDING && y == 0.0)
+ y = 0.0;
+ /* The underflow exception needs to be signaled explicitly. */
+ math_force_eval (math_opt_barrier (0x1p-1022) * 0x1p-1022);
+ }
+ y = 0x1p-1022 * y;
+ return check_uflow (y);
+}
-static const double TWO1023 = 8.988465674311579539e+307;
-static const double TWOM1000 = 9.3326361850321887899e-302;
+/* Top 12 bits of a double (sign and exponent bits). */
+static inline uint32_t
+top12 (double x)
+{
+ return asuint64 (x) >> 52;
+}
double
__ieee754_exp2 (double x)
{
- static const double himark = (double) DBL_MAX_EXP;
- static const double lomark = (double) (DBL_MIN_EXP - DBL_MANT_DIG - 1);
-
- /* Check for usual case. */
- if (__glibc_likely (isless (x, himark)))
+ uint32_t abstop;
+ uint64_t ki, idx, top, sbits;
+ /* double_t for better performance on targets with FLT_EVAL_METHOD==2. */
+ double_t kd, r, r2, scale, tail, tmp;
+
+ abstop = top12 (x) & 0x7ff;
+ if (__glibc_unlikely (abstop - top12 (0x1p-54)
+ >= top12 (512.0) - top12 (0x1p-54)))
{
- /* Exceptional cases: */
- if (__glibc_unlikely (!isgreaterequal (x, lomark)))
- {
- if (isinf (x))
- /* e^-inf == 0, with no error. */
- return 0;
- else
- /* Underflow */
- return TWOM1000 * TWOM1000;
- }
-
- static const double THREEp42 = 13194139533312.0;
- int tval, unsafe;
- double rx, x22, result;
- union ieee754_double ex2_u, scale_u;
-
- if (fabs (x) < DBL_EPSILON / 4.0)
- return 1.0 + x;
-
- {
- SET_RESTORE_ROUND_NOEX (FE_TONEAREST);
-
- /* 1. Argument reduction.
- Choose integers ex, -256 <= t < 256, and some real
- -1/1024 <= x1 <= 1024 so that
- x = ex + t/512 + x1.
-
- First, calculate rx = ex + t/512. */
- rx = x + THREEp42;
- rx -= THREEp42;
- x -= rx; /* Compute x=x1. */
- /* Compute tval = (ex*512 + t)+256.
- Now, t = (tval mod 512)-256 and ex=tval/512 [that's mod, NOT %;
- and /-round-to-nearest not the usual c integer /]. */
- tval = (int) (rx * 512.0 + 256.0);
-
- /* 2. Adjust for accurate table entry.
- Find e so that
- x = ex + t/512 + e + x2
- where -1e6 < e < 1e6, and
- (double)(2^(t/512+e))
- is accurate to one part in 2^-64. */
-
- /* 'tval & 511' is the same as 'tval%512' except that it's always
- positive.
- Compute x = x2. */
- x -= exp2_deltatable[tval & 511];
-
- /* 3. Compute ex2 = 2^(t/512+e+ex). */
- ex2_u.d = exp2_accuratetable[tval & 511];
- tval >>= 9;
- /* x2 is an integer multiple of 2^-54; avoid intermediate
- underflow from the calculation of x22 * x. */
- unsafe = abs (tval) >= -DBL_MIN_EXP - 56;
- ex2_u.ieee.exponent += tval >> unsafe;
- scale_u.d = 1.0;
- scale_u.ieee.exponent += tval - (tval >> unsafe);
-
- /* 4. Approximate 2^x2 - 1, using a fourth-degree polynomial,
- with maximum error in [-2^-10-2^-30,2^-10+2^-30]
- less than 10^-19. */
-
- x22 = (((.0096181293647031180
- * x + .055504110254308625)
- * x + .240226506959100583)
- * x + .69314718055994495) * ex2_u.d;
- math_opt_barrier (x22);
- }
-
- /* 5. Return (2^x2-1) * 2^(t/512+e+ex) + 2^(t/512+e+ex). */
- result = x22 * x + ex2_u.d;
-
- if (!unsafe)
- return result;
- else
+ if (abstop - top12 (0x1p-54) >= 0x80000000)
+ /* Avoid spurious underflow for tiny x. */
+ /* Note: 0 is common input. */
+ return WANT_ROUNDING ? 1.0 + x : 1.0;
+ if (abstop >= top12 (1024.0))
{
- result *= scale_u.d;
- math_check_force_underflow_nonneg (result);
- return result;
+ if (asuint64 (x) == asuint64 (-INFINITY))
+ return 0.0;
+ if (abstop >= top12 (INFINITY))
+ return 1.0 + x;
+ if (!(asuint64 (x) >> 63))
+ return __math_oflow (0);
+ else if (asuint64 (x) >= asuint64 (-1075.0))
+ return __math_uflow (0);
}
+ if (2 * asuint64 (x) > 2 * asuint64 (928.0))
+ /* Large x is special cased below. */
+ abstop = 0;
}
- else
- /* Return x, if x is a NaN or Inf; or overflow, otherwise. */
- return TWO1023 * x;
+
+ /* exp2(x) = 2^(k/N) * 2^r, with 2^r in [2^(-1/2N),2^(1/2N)]. */
+ /* x = k/N + r, with int k and r in [-1/2N, 1/2N]. */
+ kd = math_narrow_eval (x + Shift);
+ ki = asuint64 (kd); /* k. */
+ kd -= Shift; /* k/N for int k. */
+ r = x - kd;
+ /* 2^(k/N) ~= scale * (1 + tail). */
+ idx = 2 * (ki % N);
+ top = ki << (52 - EXP_TABLE_BITS);
+ tail = asdouble (T[idx]);
+ /* This is only a valid scale when -1023*N < k < 1024*N. */
+ sbits = T[idx + 1] + top;
+ /* exp2(x) = 2^(k/N) * 2^r ~= scale + scale * (tail + 2^r - 1). */
+ /* Evaluation is optimized assuming superscalar pipelined execution. */
+ r2 = r * r;
+ /* Without fma the worst case error is 0.5/N ulp larger. */
+ /* Worst case error is less than 0.5+0.86/N+(abs poly error * 2^53) ulp. */
+ tmp = tail + r * C1 + r2 * (C2 + r * C3) + r2 * r2 * (C4 + r * C5);
+ if (__glibc_unlikely (abstop == 0))
+ return specialcase (tmp, sbits, ki);
+ scale = asdouble (sbits);
+ /* Note: tmp == 0 or |tmp| > 2^-65 and scale > 2^-928, so there
+ is no spurious underflow here even without fma. */
+ return scale + scale * tmp;
}
+#ifndef __ieee754_exp2
strong_alias (__ieee754_exp2, __exp2_finite)
+#endif
diff --git a/sysdeps/ieee754/dbl-64/e_exp_data.c b/sysdeps/ieee754/dbl-64/e_exp_data.c
new file mode 100644
index 0000000..ef02f84
--- /dev/null
+++ b/sysdeps/ieee754/dbl-64/e_exp_data.c
@@ -0,0 +1,196 @@
+/* Shared data between exp, exp2 and pow.
+ Copyright (C) 2018 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include "math_config.h"
+
+#define N (1 << EXP_TABLE_BITS)
+
+const struct exp_data __exp_data = {
+// N/ln2
+.invln2N = 0x1.71547652b82fep0 * N,
+// -ln2/N
+#if N == 128
+.negln2hiN = -0x1.62e42fefa0000p-8,
+.negln2loN = -0x1.cf79abc9e3b3ap-47,
+#endif
+// Used for rounding when !TOINT_INTRINSICS
+.shift = 0x1.8p52,
+// exp polynomial coefficients.
+.poly = {
+#if N == 128 && EXP_POLY_ORDER == 5
+// abs error: 1.555*2^-66
+// ulp error: 0.509 (0.511 without fma)
+// if |x| < ln2/256+eps
+// abs error if |x| < ln2/128: 1.7145*2^-56
+0x1.ffffffffffdbdp-2,
+0x1.555555555543cp-3,
+0x1.55555cf172b91p-5,
+0x1.1111167a4d017p-7,
+#endif
+},
+.exp2_shift = 0x1.8p52 / N,
+// exp2 polynomial coefficients.
+.exp2_poly = {
+#if N == 128 && EXP2_POLY_ORDER == 5
+// abs error: 1.2195*2^-65
+// ulp error: 0.507 (0.511 without fma)
+// if |x| < 1/256
+// abs error if |x| < 1/128: 1.9941*2^-56
+0x1.62e42fefa39efp-1,
+0x1.ebfbdff82c424p-3,
+0x1.c6b08d70cf4b5p-5,
+0x1.3b2abd24650ccp-7,
+0x1.5d7e09b4e3a84p-10,
+#endif
+},
+// 2^(k/N) ~= H[k]*(1 + T[k]) for int k in [0,N)
+// tab[2*k] = asuint64(T[k])
+// tab[2*k+1] = asuint64(H[k]) - (k << 52)/N
+.tab = {
+#if N == 128
+0x0, 0x3ff0000000000000,
+0x3c9b3b4f1a88bf6e, 0x3feff63da9fb3335,
+0xbc7160139cd8dc5d, 0x3fefec9a3e778061,
+0xbc905e7a108766d1, 0x3fefe315e86e7f85,
+0x3c8cd2523567f613, 0x3fefd9b0d3158574,
+0xbc8bce8023f98efa, 0x3fefd06b29ddf6de,
+0x3c60f74e61e6c861, 0x3fefc74518759bc8,
+0x3c90a3e45b33d399, 0x3fefbe3ecac6f383,
+0x3c979aa65d837b6d, 0x3fefb5586cf9890f,
+0x3c8eb51a92fdeffc, 0x3fefac922b7247f7,
+0x3c3ebe3d702f9cd1, 0x3fefa3ec32d3d1a2,
+0xbc6a033489906e0b, 0x3fef9b66affed31b,
+0xbc9556522a2fbd0e, 0x3fef9301d0125b51,
+0xbc5080ef8c4eea55, 0x3fef8abdc06c31cc,
+0xbc91c923b9d5f416, 0x3fef829aaea92de0,
+0x3c80d3e3e95c55af, 0x3fef7a98c8a58e51,
+0xbc801b15eaa59348, 0x3fef72b83c7d517b,
+0xbc8f1ff055de323d, 0x3fef6af9388c8dea,
+0x3c8b898c3f1353bf, 0x3fef635beb6fcb75,
+0xbc96d99c7611eb26, 0x3fef5be084045cd4,
+0x3c9aecf73e3a2f60, 0x3fef54873168b9aa,
+0xbc8fe782cb86389d, 0x3fef4d5022fcd91d,
+0x3c8a6f4144a6c38d, 0x3fef463b88628cd6,
+0x3c807a05b0e4047d, 0x3fef3f49917ddc96,
+0x3c968efde3a8a894, 0x3fef387a6e756238,
+0x3c875e18f274487d, 0x3fef31ce4fb2a63f,
+0x3c80472b981fe7f2, 0x3fef2b4565e27cdd,
+0xbc96b87b3f71085e, 0x3fef24dfe1f56381,
+0x3c82f7e16d09ab31, 0x3fef1e9df51fdee1,
+0xbc3d219b1a6fbffa, 0x3fef187fd0dad990,
+0x3c8b3782720c0ab4, 0x3fef1285a6e4030b,
+0x3c6e149289cecb8f, 0x3fef0cafa93e2f56,
+0x3c834d754db0abb6, 0x3fef06fe0a31b715,
+0x3c864201e2ac744c, 0x3fef0170fc4cd831,
+0x3c8fdd395dd3f84a, 0x3feefc08b26416ff,
+0xbc86a3803b8e5b04, 0x3feef6c55f929ff1,
+0xbc924aedcc4b5068, 0x3feef1a7373aa9cb,
+0xbc9907f81b512d8e, 0x3feeecae6d05d866,
+0xbc71d1e83e9436d2, 0x3feee7db34e59ff7,
+0xbc991919b3ce1b15, 0x3feee32dc313a8e5,
+0x3c859f48a72a4c6d, 0x3feedea64c123422,
+0xbc9312607a28698a, 0x3feeda4504ac801c,
+0xbc58a78f4817895b, 0x3feed60a21f72e2a,
+0xbc7c2c9b67499a1b, 0x3feed1f5d950a897,
+0x3c4363ed60c2ac11, 0x3feece086061892d,
+0x3c9666093b0664ef, 0x3feeca41ed1d0057,
+0x3c6ecce1daa10379, 0x3feec6a2b5c13cd0,
+0x3c93ff8e3f0f1230, 0x3feec32af0d7d3de,
+0x3c7690cebb7aafb0, 0x3feebfdad5362a27,
+0x3c931dbdeb54e077, 0x3feebcb299fddd0d,
+0xbc8f94340071a38e, 0x3feeb9b2769d2ca7,
+0xbc87deccdc93a349, 0x3feeb6daa2cf6642,
+0xbc78dec6bd0f385f, 0x3feeb42b569d4f82,
+0xbc861246ec7b5cf6, 0x3feeb1a4ca5d920f,
+0x3c93350518fdd78e, 0x3feeaf4736b527da,
+0x3c7b98b72f8a9b05, 0x3feead12d497c7fd,
+0x3c9063e1e21c5409, 0x3feeab07dd485429,
+0x3c34c7855019c6ea, 0x3feea9268a5946b7,
+0x3c9432e62b64c035, 0x3feea76f15ad2148,
+0xbc8ce44a6199769f, 0x3feea5e1b976dc09,
+0xbc8c33c53bef4da8, 0x3feea47eb03a5585,
+0xbc845378892be9ae, 0x3feea34634ccc320,
+0xbc93cedd78565858, 0x3feea23882552225,
+0x3c5710aa807e1964, 0x3feea155d44ca973,
+0xbc93b3efbf5e2228, 0x3feea09e667f3bcd,
+0xbc6a12ad8734b982, 0x3feea012750bdabf,
+0xbc6367efb86da9ee, 0x3fee9fb23c651a2f,
+0xbc80dc3d54e08851, 0x3fee9f7df9519484,
+0xbc781f647e5a3ecf, 0x3fee9f75e8ec5f74,
+0xbc86ee4ac08b7db0, 0x3fee9f9a48a58174,
+0xbc8619321e55e68a, 0x3fee9feb564267c9,
+0x3c909ccb5e09d4d3, 0x3feea0694fde5d3f,
+0xbc7b32dcb94da51d, 0x3feea11473eb0187,
+0x3c94ecfd5467c06b, 0x3feea1ed0130c132,
+0x3c65ebe1abd66c55, 0x3feea2f336cf4e62,
+0xbc88a1c52fb3cf42, 0x3feea427543e1a12,
+0xbc9369b6f13b3734, 0x3feea589994cce13,
+0xbc805e843a19ff1e, 0x3feea71a4623c7ad,
+0xbc94d450d872576e, 0x3feea8d99b4492ed,
+0x3c90ad675b0e8a00, 0x3feeaac7d98a6699,
+0x3c8db72fc1f0eab4, 0x3feeace5422aa0db,
+0xbc65b6609cc5e7ff, 0x3feeaf3216b5448c,
+0x3c7bf68359f35f44, 0x3feeb1ae99157736,
+0xbc93091fa71e3d83, 0x3feeb45b0b91ffc6,
+0xbc5da9b88b6c1e29, 0x3feeb737b0cdc5e5,
+0xbc6c23f97c90b959, 0x3feeba44cbc8520f,
+0xbc92434322f4f9aa, 0x3feebd829fde4e50,
+0xbc85ca6cd7668e4b, 0x3feec0f170ca07ba,
+0x3c71affc2b91ce27, 0x3feec49182a3f090,
+0x3c6dd235e10a73bb, 0x3feec86319e32323,
+0xbc87c50422622263, 0x3feecc667b5de565,
+0x3c8b1c86e3e231d5, 0x3feed09bec4a2d33,
+0xbc91bbd1d3bcbb15, 0x3feed503b23e255d,
+0x3c90cc319cee31d2, 0x3feed99e1330b358,
+0x3c8469846e735ab3, 0x3feede6b5579fdbf,
+0xbc82dfcd978e9db4, 0x3feee36bbfd3f37a,
+0x3c8c1a7792cb3387, 0x3feee89f995ad3ad,
+0xbc907b8f4ad1d9fa, 0x3feeee07298db666,
+0xbc55c3d956dcaeba, 0x3feef3a2b84f15fb,
+0xbc90a40e3da6f640, 0x3feef9728de5593a,
+0xbc68d6f438ad9334, 0x3feeff76f2fb5e47,
+0xbc91eee26b588a35, 0x3fef05b030a1064a,
+0x3c74ffd70a5fddcd, 0x3fef0c1e904bc1d2,
+0xbc91bdfbfa9298ac, 0x3fef12c25bd71e09,
+0x3c736eae30af0cb3, 0x3fef199bdd85529c,
+0x3c8ee3325c9ffd94, 0x3fef20ab5fffd07a,
+0x3c84e08fd10959ac, 0x3fef27f12e57d14b,
+0x3c63cdaf384e1a67, 0x3fef2f6d9406e7b5,
+0x3c676b2c6c921968, 0x3fef3720dcef9069,
+0xbc808a1883ccb5d2, 0x3fef3f0b555dc3fa,
+0xbc8fad5d3ffffa6f, 0x3fef472d4a07897c,
+0xbc900dae3875a949, 0x3fef4f87080d89f2,
+0x3c74a385a63d07a7, 0x3fef5818dcfba487,
+0xbc82919e2040220f, 0x3fef60e316c98398,
+0x3c8e5a50d5c192ac, 0x3fef69e603db3285,
+0x3c843a59ac016b4b, 0x3fef7321f301b460,
+0xbc82d52107b43e1f, 0x3fef7c97337b9b5f,
+0xbc892ab93b470dc9, 0x3fef864614f5a129,
+0x3c74b604603a88d3, 0x3fef902ee78b3ff6,
+0x3c83c5ec519d7271, 0x3fef9a51fbc74c83,
+0xbc8ff7128fd391f0, 0x3fefa4afa2a490da,
+0xbc8dae98e223747d, 0x3fefaf482d8e67f1,
+0x3c8ec3bc41aa2008, 0x3fefba1bee615a27,
+0x3c842b94c3a9eb32, 0x3fefc52b376bba97,
+0x3c8a64a931d185ee, 0x3fefd0765b6e4540,
+0xbc8e37bae43be3ed, 0x3fefdbfdad9cbe14,
+0x3c77893b4d91cd9d, 0x3fefe7c1819e90d8,
+0x3c5305c14160cc89, 0x3feff3c22b8f71f1,
+#endif
+},
+};
diff --git a/sysdeps/ieee754/dbl-64/e_pow.c b/sysdeps/ieee754/dbl-64/e_pow.c
index 5577aa3..9bf29e5 100644
--- a/sysdeps/ieee754/dbl-64/e_pow.c
+++ b/sysdeps/ieee754/dbl-64/e_pow.c
@@ -108,12 +108,12 @@ __ieee754_pow (double x, double y)
a2 = (a - a1) + aa;
/* Maximum relative error RElog of log1 is 1.0e-21 (69.7 bits).
- Maximum relative error REexp of __exp1 is 8.8e-22 (69.9 bits).
+ Maximum relative error REexp of __exp1 is 1.0e-18 (59.8 bits).
We actually compute exp ((1 + RElog) * log (x) * y) * (1 + REexp).
Since RElog/REexp are tiny and log (x) * y is at most log (DBL_MAX),
this is equivalent to pow (x, y) * (1 + 710 * RElog + REexp).
- So the relative error is 710 * 1.0e-21 + 8.8e-22 = 7.1e-19
- (60.2 bits). The worst-case ULP error is 0.5064. */
+ So the relative error is 710 * 1.0e-21 + 1.0e-18 = 1.7e-18
+ (59 bits). The worst-case ULP error is 0.515. */
retval = __exp1 (a1, a2);
}
diff --git a/sysdeps/ieee754/dbl-64/eexp.tbl b/sysdeps/ieee754/dbl-64/eexp.tbl
deleted file mode 100644
index 4ee6040..0000000
--- a/sysdeps/ieee754/dbl-64/eexp.tbl
+++ /dev/null
@@ -1,172 +0,0 @@
-/* EXP function tables - for use in computing double precision exponential
- Copyright (C) 2018 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, see
- <http://www.gnu.org/licenses/>. */
-
-/* For i = 0, ..., 66,
- TBL2[2*i] is a double precision number near (i+1)*2^-6, and
- TBL2[2*i+1] = exp(TBL2[2*i]) to within a relative error less
- than 2^-60.
-
- For i = 67, ..., 133,
- TBL2[2*i] is a double precision number near -(i+1)*2^-6, and
- TBL2[2*i+1] = exp(TBL2[2*i]) to within a relative error less
- than 2^-60. */
-
-static const double TBL2[268] = {
- 0x1.ffffffffffc82p-7, 0x1.04080ab55de32p+0,
- 0x1.fffffffffffdbp-6, 0x1.08205601127ecp+0,
- 0x1.80000000000a0p-5, 0x1.0c49236829e91p+0,
- 0x1.fffffffffff79p-5, 0x1.1082b577d34e9p+0,
- 0x1.3fffffffffffcp-4, 0x1.14cd4fc989cd6p+0,
- 0x1.8000000000060p-4, 0x1.192937074e0d4p+0,
- 0x1.c000000000061p-4, 0x1.1d96b0eff0e80p+0,
- 0x1.fffffffffffd6p-4, 0x1.2216045b6f5cap+0,
- 0x1.1ffffffffff58p-3, 0x1.26a7793f6014cp+0,
- 0x1.3ffffffffff75p-3, 0x1.2b4b58b372c65p+0,
- 0x1.5ffffffffff00p-3, 0x1.3001ecf601ad1p+0,
- 0x1.8000000000020p-3, 0x1.34cb8170b583ap+0,
- 0x1.9ffffffffa629p-3, 0x1.39a862bd3b344p+0,
- 0x1.c00000000000fp-3, 0x1.3e98deaa11dcep+0,
- 0x1.e00000000007fp-3, 0x1.439d443f5f16dp+0,
- 0x1.0000000000072p-2, 0x1.48b5e3c3e81abp+0,
- 0x1.0fffffffffecap-2, 0x1.4de30ec211dfbp+0,
- 0x1.1ffffffffff8fp-2, 0x1.5325180cfacd2p+0,
- 0x1.300000000003bp-2, 0x1.587c53c5a7b04p+0,
- 0x1.4000000000034p-2, 0x1.5de9176046007p+0,
- 0x1.4ffffffffff89p-2, 0x1.636bb9a98322fp+0,
- 0x1.5ffffffffffe7p-2, 0x1.690492cbf942ap+0,
- 0x1.6ffffffffff78p-2, 0x1.6eb3fc55b1e45p+0,
- 0x1.7ffffffffff65p-2, 0x1.747a513dbef32p+0,
- 0x1.8ffffffffffd5p-2, 0x1.7a57ede9ea22ep+0,
- 0x1.9ffffffffff6ep-2, 0x1.804d30347b50fp+0,
- 0x1.affffffffffc3p-2, 0x1.865a7772164aep+0,
- 0x1.c000000000053p-2, 0x1.8c802477b0030p+0,
- 0x1.d00000000004dp-2, 0x1.92be99a09bf1ep+0,
- 0x1.e000000000096p-2, 0x1.99163ad4b1e08p+0,
- 0x1.efffffffffefap-2, 0x1.9f876d8e8c4fcp+0,
- 0x1.fffffffffffd0p-2, 0x1.a61298e1e0688p+0,
- 0x1.0800000000002p-1, 0x1.acb82581eee56p+0,
- 0x1.100000000001fp-1, 0x1.b3787dc80f979p+0,
- 0x1.17ffffffffff8p-1, 0x1.ba540dba56e4fp+0,
- 0x1.1fffffffffffap-1, 0x1.c14b431256441p+0,
- 0x1.27fffffffffc4p-1, 0x1.c85e8d43f7c9bp+0,
- 0x1.2fffffffffffdp-1, 0x1.cf8e5d84758a6p+0,
- 0x1.380000000001fp-1, 0x1.d6db26d16cd84p+0,
- 0x1.3ffffffffffd8p-1, 0x1.de455df80e39bp+0,
- 0x1.4800000000052p-1, 0x1.e5cd799c6a59cp+0,
- 0x1.4ffffffffffc8p-1, 0x1.ed73f240dc10cp+0,
- 0x1.5800000000013p-1, 0x1.f539424d90f71p+0,
- 0x1.5ffffffffffbcp-1, 0x1.fd1de6182f885p+0,
- 0x1.680000000002dp-1, 0x1.02912df5ce741p+1,
- 0x1.7000000000040p-1, 0x1.06a39207f0a2ap+1,
- 0x1.780000000004fp-1, 0x1.0ac660691652ap+1,
- 0x1.7ffffffffff6fp-1, 0x1.0ef9db467dcabp+1,
- 0x1.87fffffffffe5p-1, 0x1.133e45d82e943p+1,
- 0x1.9000000000035p-1, 0x1.1793e4652cc6dp+1,
- 0x1.97fffffffffb3p-1, 0x1.1bfafc47bda48p+1,
- 0x1.a000000000000p-1, 0x1.2073d3f1bd518p+1,
- 0x1.a80000000004ap-1, 0x1.24feb2f105ce2p+1,
- 0x1.affffffffffedp-1, 0x1.299be1f3e7f11p+1,
- 0x1.b7ffffffffffbp-1, 0x1.2e4baacdb6611p+1,
- 0x1.c00000000001dp-1, 0x1.330e587b62b39p+1,
- 0x1.c800000000079p-1, 0x1.37e437282d538p+1,
- 0x1.cffffffffff51p-1, 0x1.3ccd943268248p+1,
- 0x1.d7fffffffff74p-1, 0x1.41cabe304cadcp+1,
- 0x1.e000000000011p-1, 0x1.46dc04f4e5343p+1,
- 0x1.e80000000001ep-1, 0x1.4c01b9950a124p+1,
- 0x1.effffffffff9ep-1, 0x1.513c2e6c73196p+1,
- 0x1.f7fffffffffedp-1, 0x1.568bb722dd586p+1,
- 0x1.0000000000034p+0, 0x1.5bf0a8b1457b0p+1,
- 0x1.03fffffffffe2p+0, 0x1.616b5967376dfp+1,
- 0x1.07fffffffff4bp+0, 0x1.66fc20f0337a9p+1,
- 0x1.0bffffffffffdp+0, 0x1.6ca35859290f5p+1,
- -0x1.fffffffffffe4p-7, 0x1.f80feabfeefa5p-1,
- -0x1.ffffffffffb0bp-6, 0x1.f03f56a88b5fep-1,
- -0x1.7ffffffffffa7p-5, 0x1.e88dc6afecfc5p-1,
- -0x1.ffffffffffea8p-5, 0x1.e0fabfbc702b8p-1,
- -0x1.3ffffffffffb3p-4, 0x1.d985c89d041acp-1,
- -0x1.7ffffffffffe3p-4, 0x1.d22e6a0197c06p-1,
- -0x1.bffffffffff9ap-4, 0x1.caf42e73a4c89p-1,
- -0x1.fffffffffff98p-4, 0x1.c3d6a24ed822dp-1,
- -0x1.1ffffffffffe9p-3, 0x1.bcd553b9d7b67p-1,
- -0x1.3ffffffffffe0p-3, 0x1.b5efd29f24c2dp-1,
- -0x1.5fffffffff553p-3, 0x1.af25b0a61a9f4p-1,
- -0x1.7ffffffffff8bp-3, 0x1.a876812c08794p-1,
- -0x1.9fffffffffe51p-3, 0x1.a1e1d93d68828p-1,
- -0x1.bffffffffff6ep-3, 0x1.9b674f8f2f3f5p-1,
- -0x1.dffffffffff7fp-3, 0x1.95067c7837a0cp-1,
- -0x1.fffffffffff7ap-3, 0x1.8ebef9eac8225p-1,
- -0x1.0fffffffffffep-2, 0x1.8890636e31f55p-1,
- -0x1.1ffffffffff41p-2, 0x1.827a56188975ep-1,
- -0x1.2ffffffffffbap-2, 0x1.7c7c708877656p-1,
- -0x1.3fffffffffff8p-2, 0x1.769652df22f81p-1,
- -0x1.4ffffffffff90p-2, 0x1.70c79eba33c2fp-1,
- -0x1.5ffffffffffdbp-2, 0x1.6b0ff72deb8aap-1,
- -0x1.6ffffffffff9ap-2, 0x1.656f00bf5798ep-1,
- -0x1.7ffffffffff9fp-2, 0x1.5fe4615e98eb0p-1,
- -0x1.8ffffffffffeep-2, 0x1.5a6fc061433cep-1,
- -0x1.9fffffffffc4ap-2, 0x1.5510c67cd26cdp-1,
- -0x1.affffffffff30p-2, 0x1.4fc71dc13566bp-1,
- -0x1.bfffffffffff0p-2, 0x1.4a9271936fd0ep-1,
- -0x1.cfffffffffff3p-2, 0x1.45726ea84fb8cp-1,
- -0x1.dfffffffffff3p-2, 0x1.4066c2ff3912bp-1,
- -0x1.effffffffff80p-2, 0x1.3b6f1ddd05ab9p-1,
- -0x1.fffffffffffdfp-2, 0x1.368b2fc6f9614p-1,
- -0x1.0800000000000p-1, 0x1.31baaa7dca843p-1,
- -0x1.0ffffffffffa4p-1, 0x1.2cfd40f8bdce4p-1,
- -0x1.17fffffffff0ap-1, 0x1.2852a760d5ce7p-1,
- -0x1.2000000000000p-1, 0x1.23ba930c1568bp-1,
- -0x1.27fffffffffbbp-1, 0x1.1f34ba78d568dp-1,
- -0x1.2fffffffffe32p-1, 0x1.1ac0d5492c1dbp-1,
- -0x1.37ffffffff042p-1, 0x1.165e9c3e67ef2p-1,
- -0x1.3ffffffffff77p-1, 0x1.120dc93499431p-1,
- -0x1.47fffffffff6bp-1, 0x1.0dce171e34ecep-1,
- -0x1.4fffffffffff1p-1, 0x1.099f41ffbe588p-1,
- -0x1.57ffffffffe02p-1, 0x1.058106eb8a7aep-1,
- -0x1.5ffffffffffe5p-1, 0x1.017323fd9002ep-1,
- -0x1.67fffffffffb0p-1, 0x1.faeab0ae9386cp-2,
- -0x1.6ffffffffffb2p-1, 0x1.f30ec837503d7p-2,
- -0x1.77fffffffff7fp-1, 0x1.eb5210d627133p-2,
- -0x1.7ffffffffffe8p-1, 0x1.e3b40ebefcd95p-2,
- -0x1.87fffffffffc8p-1, 0x1.dc3448110dae2p-2,
- -0x1.8fffffffffb30p-1, 0x1.d4d244cf4ef06p-2,
- -0x1.97fffffffffefp-1, 0x1.cd8d8ed8ee395p-2,
- -0x1.9ffffffffffa7p-1, 0x1.c665b1e1f1e5cp-2,
- -0x1.a7fffffffffdcp-1, 0x1.bf5a3b6bf18d6p-2,
- -0x1.affffffffff95p-1, 0x1.b86ababeef93bp-2,
- -0x1.b7fffffffffcbp-1, 0x1.b196c0e24d256p-2,
- -0x1.bffffffffff32p-1, 0x1.aadde095dadf7p-2,
- -0x1.c7fffffffff6ap-1, 0x1.a43fae4b047c9p-2,
- -0x1.cffffffffffb6p-1, 0x1.9dbbc01e182a4p-2,
- -0x1.d7fffffffffcap-1, 0x1.9751adcfa81ecp-2,
- -0x1.dffffffffffcdp-1, 0x1.910110be0699ep-2,
- -0x1.e7ffffffffffbp-1, 0x1.8ac983dedbc69p-2,
- -0x1.effffffffff88p-1, 0x1.84aaa3b8d51a9p-2,
- -0x1.f7fffffffffbbp-1, 0x1.7ea40e5d6d92ep-2,
- -0x1.fffffffffffdbp-1, 0x1.78b56362cef53p-2,
- -0x1.03fffffffff00p+0, 0x1.72de43ddcb1f2p-2,
- -0x1.07ffffffffe6fp+0, 0x1.6d1e525bed085p-2,
- -0x1.0bfffffffffd6p+0, 0x1.677532dda1c57p-2};
-
-static const double
- half = 0.5,
- one = 1.0,
-/* t2-t5 terms used for polynomial computation. */
- t2 = 0x1.5555555555555p-3, /* 1.6666666666666665741e-1 */
- t3 = 0x1.5555555555555p-5, /* 4.1666666666666664354e-2 */
- t4 = 0x1.1111111111111p-7, /* 8.3333333333333332177e-3 */
- t5 = 0x1.6c16c16c16c17p-10; /* 1.3888888888888889419e-3 */
diff --git a/sysdeps/ieee754/dbl-64/math_config.h b/sysdeps/ieee754/dbl-64/math_config.h
new file mode 100644
index 0000000..02d94fe
--- /dev/null
+++ b/sysdeps/ieee754/dbl-64/math_config.h
@@ -0,0 +1,136 @@
+/* Configuration for double precision math routines.
+ Copyright (C) 2018 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#ifndef _MATH_CONFIG_H
+#define _MATH_CONFIG_H
+
+#include <math.h>
+#include <math_private.h>
+#include <stdint.h>
+
+#ifndef WANT_ROUNDING
+/* Correct special case results in non-nearest rounding modes. */
+# define WANT_ROUNDING 1
+#endif
+#ifndef WANT_ERRNO
+/* Set errno according to ISO C with (math_errhandling & MATH_ERRNO) != 0. */
+# define WANT_ERRNO 1
+#endif
+#ifndef WANT_ERRNO_UFLOW
+/* Set errno to ERANGE if result underflows to 0 (in all rounding modes). */
+# define WANT_ERRNO_UFLOW (WANT_ROUNDING && WANT_ERRNO)
+#endif
+
+#ifndef TOINT_INTRINSICS
+/* When set, the roundtoint and converttoint functions are provided with
+ the semantics documented below. */
+# define TOINT_INTRINSICS 0
+#endif
+
+#if TOINT_INTRINSICS
+/* Round x to nearest int in all rounding modes, ties have to be rounded
+ consistently with converttoint so the results match. If the result
+ would be outside of [-2^31, 2^31-1] then the semantics is unspecified. */
+static inline double_t
+roundtoint (double_t x);
+
+/* Convert x to nearest int in all rounding modes, ties have to be rounded
+ consistently with roundtoint. If the result is not representible in an
+ int32_t then the semantics is unspecified. */
+static inline int32_t
+converttoint (double_t x);
+#endif
+
+static inline uint64_t
+asuint64 (double f)
+{
+ union
+ {
+ double f;
+ uint64_t i;
+ } u = {f};
+ return u.i;
+}
+
+static inline double
+asdouble (uint64_t i)
+{
+ union
+ {
+ uint64_t i;
+ double f;
+ } u = {i};
+ return u.f;
+}
+
+#define NOINLINE __attribute__ ((noinline))
+
+/* Error handling tail calls for special cases, with a sign argument.
+ The sign of the return value is set if the argument is non-zero. */
+
+/* The result overflows. */
+attribute_hidden double __math_oflow (uint32_t);
+/* The result underflows to 0 in nearest rounding mode. */
+attribute_hidden double __math_uflow (uint32_t);
+/* The result underflows to 0 in some directed rounding mode only. */
+attribute_hidden double __math_may_uflow (uint32_t);
+/* Division by zero. */
+attribute_hidden double __math_divzero (uint32_t);
+
+/* Error handling using input checking. */
+
+/* Invalid input unless it is a quiet NaN. */
+attribute_hidden double __math_invalid (double);
+
+/* Error handling using output checking, only for errno setting. */
+
+/* Check if the result overflowed to infinity. */
+attribute_hidden double __math_check_oflow (double);
+/* Check if the result underflowed to 0. */
+attribute_hidden double __math_check_uflow (double);
+
+/* Check if the result overflowed to infinity. */
+static inline double
+check_oflow (double x)
+{
+ return WANT_ERRNO ? __math_check_oflow (x) : x;
+}
+
+/* Check if the result underflowed to 0. */
+static inline double
+check_uflow (double x)
+{
+ return WANT_ERRNO ? __math_check_uflow (x) : x;
+}
+
+#define EXP_TABLE_BITS 7
+#define EXP_POLY_ORDER 5
+#define EXP2_POLY_ORDER 5
+extern const struct exp_data
+{
+ double invln2N;
+ double shift;
+ double negln2hiN;
+ double negln2loN;
+ double poly[4]; /* Last four coefficients. */
+ double exp2_shift;
+ double exp2_poly[EXP2_POLY_ORDER];
+ uint64_t tab[2*(1 << EXP_TABLE_BITS)];
+} __exp_data attribute_hidden;
+
+#endif
diff --git a/sysdeps/ieee754/dbl-64/math_err.c b/sysdeps/ieee754/dbl-64/math_err.c
new file mode 100644
index 0000000..efd7ef0
--- /dev/null
+++ b/sysdeps/ieee754/dbl-64/math_err.c
@@ -0,0 +1,92 @@
+/* Double-precision math error handling.
+ Copyright (C) 2018 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <math-barriers.h>
+#include "math_config.h"
+
+#if WANT_ERRNO
+#include <errno.h>
+/* NOINLINE reduces code size and avoids making math functions non-leaf
+ when the error handling is inlined. */
+NOINLINE static double
+with_errno (double y, int e)
+{
+ errno = e;
+ return y;
+}
+#else
+#define with_errno(x, e) (x)
+#endif
+
+/* NOINLINE reduces code size. */
+NOINLINE static double
+xflow (uint32_t sign, double y)
+{
+ y = math_opt_barrier (sign ? -y : y) * y;
+ return with_errno (y, ERANGE);
+}
+
+attribute_hidden double
+__math_uflow (uint32_t sign)
+{
+ return xflow (sign, 0x1p-767);
+}
+
+#if WANT_ERRNO_UFLOW
+/* Underflows to zero in some non-nearest rounding mode, setting errno
+ is valid even if the result is non-zero, but in the subnormal range. */
+attribute_hidden double
+__math_may_uflow (uint32_t sign)
+{
+ return xflow (sign, 0x1.8p-538);
+}
+#endif
+
+attribute_hidden double
+__math_oflow (uint32_t sign)
+{
+ return xflow (sign, 0x1p769);
+}
+
+attribute_hidden double
+__math_divzero (uint32_t sign)
+{
+ double y = math_opt_barrier (sign ? -1.0 : 1.0) / 0.0;
+ return with_errno (y, ERANGE);
+}
+
+attribute_hidden double
+__math_invalid (double x)
+{
+ double y = (x - x) / (x - x);
+ return isnan (x) ? y : with_errno (y, EDOM);
+}
+
+/* Check result and set errno if necessary. */
+
+attribute_hidden double
+__math_check_uflow (double y)
+{
+ return y == 0.0 ? with_errno (y, ERANGE) : y;
+}
+
+attribute_hidden double
+__math_check_oflow (double y)
+{
+ return isinf (y) ? with_errno (y, ERANGE) : y;
+}
diff --git a/sysdeps/ieee754/dbl-64/t_exp.c b/sysdeps/ieee754/dbl-64/t_exp.c
deleted file mode 100644
index 555c4ff..0000000
--- a/sysdeps/ieee754/dbl-64/t_exp.c
+++ /dev/null
@@ -1,435 +0,0 @@
-/* Accurate tables for exp().
- Copyright (C) 1998-2018 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
- Contributed by Geoffrey Keating <geoffk@ozemail.com.au>
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, see
- <http://www.gnu.org/licenses/>. */
-
-/* This table has the property that, for all integers -177 <= i <= 177,
- exp(i/512.0 + __exp_deltatable[abs(i)]) == __exp_atable[i+177] + r
- for some -2^-64 < r < 2^-64 (abs(r) < 2^-65 if i <= 0); and that
- __exp_deltatable[abs(i)] == t * 2^-60
- for integer t so that abs(t) <= 8847927 * 2^8. */
-
-#define W52 (2.22044605e-16)
-#define W55 (2.77555756e-17)
-#define W58 (3.46944695e-18)
-#define W59 (1.73472348e-18)
-#define W60 (8.67361738e-19)
-const float __exp_deltatable[178] = {
- 0*W60, 16558714*W60, -10672149*W59, 1441652*W60,
- -15787963*W55, 462888*W60, 7291806*W60, 1698880*W60,
- -14375103*W58, -2021016*W60, 728829*W60, -3759654*W60,
- 3202123*W60, -10916019*W58, -251570*W60, -1043086*W60,
- 8207536*W60, -409964*W60, -5993931*W60, -475500*W60,
- 2237522*W60, 324170*W60, -244117*W60, 32077*W60,
- 123907*W60, -1019734*W60, -143*W60, 813077*W60,
- 743345*W60, 462461*W60, 629794*W60, 2125066*W60,
- -2339121*W60, -337951*W60, 9922067*W60, -648704*W60,
- 149407*W60, -2687209*W60, -631608*W60, 2128280*W60,
- -4882082*W60, 2001360*W60, 175074*W60, 2923216*W60,
- -538947*W60, -1212193*W60, -1920926*W60, -1080577*W60,
- 3690196*W60, 2643367*W60, 2911937*W60, 671455*W60,
- -1128674*W60, 593282*W60, -5219347*W60, -1941490*W60,
- 11007953*W60, 239609*W60, -2969658*W60, -1183650*W60,
- 942998*W60, 699063*W60, 450569*W60, -329250*W60,
- -7257875*W60, -312436*W60, 51626*W60, 555877*W60,
- -641761*W60, 1565666*W60, 884327*W60, -10960035*W60,
- -2004679*W60, -995793*W60, -2229051*W60, -146179*W60,
- -510327*W60, 1453482*W60, -3778852*W60, -2238056*W60,
- -4895983*W60, 3398883*W60, -252738*W60, 1230155*W60,
- 346918*W60, 1109352*W60, 268941*W60, -2930483*W60,
- -1036263*W60, -1159280*W60, 1328176*W60, 2937642*W60,
- -9371420*W60, -6902650*W60, -1419134*W60, 1442904*W60,
- -1319056*W60, -16369*W60, 696555*W60, -279987*W60,
- -7919763*W60, 252741*W60, 459711*W60, -1709645*W60,
- 354913*W60, 6025867*W60, -421460*W60, -853103*W60,
- -338649*W60, 962151*W60, 955965*W60, 784419*W60,
- -3633653*W60, 2277133*W60, -8847927*W52, 1223028*W60,
- 5907079*W60, 623167*W60, 5142888*W60, 2599099*W60,
- 1214280*W60, 4870359*W60, 593349*W60, -57705*W60,
- 7761209*W60, -5564097*W60, 2051261*W60, 6216869*W60,
- 4692163*W60, 601691*W60, -5264906*W60, 1077872*W60,
- -3205949*W60, 1833082*W60, 2081746*W60, -987363*W60,
- -1049535*W60, 2015244*W60, 874230*W60, 2168259*W60,
- -1740124*W60, -10068269*W60, -18242*W60, -3013583*W60,
- 580601*W60, -2547161*W60, -535689*W60, 2220815*W60,
- 1285067*W60, 2806933*W60, -983086*W60, -1729097*W60,
- -1162985*W60, -2561904*W60, 801988*W60, 244351*W60,
- 1441893*W60, -7517981*W60, 271781*W60, -15021588*W60,
- -2341588*W60, -919198*W60, 1642232*W60, 4771771*W60,
- -1220099*W60, -3062372*W60, 628624*W60, 1278114*W60,
- 13083513*W60, -10521925*W60, 3180310*W60, -1659307*W60,
- 3543773*W60, 2501203*W60, 4151*W60, -340748*W60,
- -2285625*W60, 2495202*W60
-};
-
-const double __exp_atable[355] /* __attribute__((mode(DF))) */ = {
- 0.707722561055888932371, /* 0x0.b52d4e46605c27ffd */
- 0.709106182438804188967, /* 0x0.b587fb96f75097ffb */
- 0.710492508843861281234, /* 0x0.b5e2d649899167ffd */
- 0.711881545564593931623, /* 0x0.b63dde74d36bdfffe */
- 0.713273297897442870573, /* 0x0.b699142f945f87ffc */
- 0.714667771153751463236, /* 0x0.b6f477909c4ea0001 */
- 0.716064970655995725059, /* 0x0.b75008aec758f8004 */
- 0.717464901723956938193, /* 0x0.b7abc7a0eea7e0002 */
- 0.718867569715736398602, /* 0x0.b807b47e1586c7ff8 */
- 0.720272979947266023271, /* 0x0.b863cf5d10e380003 */
- 0.721681137825144314297, /* 0x0.b8c01855195c37ffb */
- 0.723092048691992950199, /* 0x0.b91c8f7d213740004 */
- 0.724505717938892290800, /* 0x0.b97934ec5002d0007 */
- 0.725922150953176470431, /* 0x0.b9d608b9c92ea7ffc */
- 0.727341353138962865022, /* 0x0.ba330afcc29e98003 */
- 0.728763329918453162104, /* 0x0.ba903bcc8618b7ffc */
- 0.730188086709957051568, /* 0x0.baed9b40591ba0000 */
- 0.731615628948127705309, /* 0x0.bb4b296f931e30002 */
- 0.733045962086486091436, /* 0x0.bba8e671a05617ff9 */
- 0.734479091556371366251, /* 0x0.bc06d25dd49568001 */
- 0.735915022857225542529, /* 0x0.bc64ed4bce8f6fff9 */
- 0.737353761441304711410, /* 0x0.bcc33752f915d7ff9 */
- 0.738795312814142124419, /* 0x0.bd21b08af98e78005 */
- 0.740239682467211168593, /* 0x0.bd80590b65e9a8000 */
- 0.741686875913991849885, /* 0x0.bddf30ebec4a10000 */
- 0.743136898669507939299, /* 0x0.be3e38443c84e0007 */
- 0.744589756269486091620, /* 0x0.be9d6f2c1d32a0002 */
- 0.746045454254026796384, /* 0x0.befcd5bb59baf8004 */
- 0.747503998175051087583, /* 0x0.bf5c6c09ca84c0003 */
- 0.748965393601880857739, /* 0x0.bfbc322f5b18b7ff8 */
- 0.750429646104262104698, /* 0x0.c01c2843f776fffff */
- 0.751896761271877989160, /* 0x0.c07c4e5fa18b88002 */
- 0.753366744698445112140, /* 0x0.c0dca49a5fb18fffd */
- 0.754839601988627206827, /* 0x0.c13d2b0c444db0005 */
- 0.756315338768691947122, /* 0x0.c19de1cd798578006 */
- 0.757793960659406629066, /* 0x0.c1fec8f623723fffd */
- 0.759275473314173443536, /* 0x0.c25fe09e8a0f47ff8 */
- 0.760759882363831851927, /* 0x0.c2c128dedc88f8000 */
- 0.762247193485956486805, /* 0x0.c322a1cf7d6e7fffa */
- 0.763737412354726363781, /* 0x0.c3844b88cb9347ffc */
- 0.765230544649828092739, /* 0x0.c3e626232bd8f7ffc */
- 0.766726596071518051729, /* 0x0.c44831b719bf18002 */
- 0.768225572321911687194, /* 0x0.c4aa6e5d12d078001 */
- 0.769727479119219348810, /* 0x0.c50cdc2da64a37ffb */
- 0.771232322196981678892, /* 0x0.c56f7b41744490001 */
- 0.772740107296721268087, /* 0x0.c5d24bb1259e70004 */
- 0.774250840160724651565, /* 0x0.c6354d95640dd0007 */
- 0.775764526565368872643, /* 0x0.c6988106fec447fff */
- 0.777281172269557396602, /* 0x0.c6fbe61eb1bd0ffff */
- 0.778800783068235302750, /* 0x0.c75f7cf560942fffc */
- 0.780323364758801041312, /* 0x0.c7c345a3f1983fffe */
- 0.781848923151573727006, /* 0x0.c8274043594cb0002 */
- 0.783377464064598849602, /* 0x0.c88b6cec94b3b7ff9 */
- 0.784908993312207869935, /* 0x0.c8efcbb89cba27ffe */
- 0.786443516765346961618, /* 0x0.c9545cc0a88c70003 */
- 0.787981040257604625744, /* 0x0.c9b9201dc643bfffa */
- 0.789521569657452682047, /* 0x0.ca1e15e92a5410007 */
- 0.791065110849462849192, /* 0x0.ca833e3c1ae510005 */
- 0.792611669712891875319, /* 0x0.cae8992fd84667ffd */
- 0.794161252150049179450, /* 0x0.cb4e26ddbc207fff8 */
- 0.795713864077794763584, /* 0x0.cbb3e75f301b60003 */
- 0.797269511407239561694, /* 0x0.cc19dacd978cd8002 */
- 0.798828200086368567220, /* 0x0.cc8001427e55d7ffb */
- 0.800389937624300440456, /* 0x0.cce65ade24d360006 */
- 0.801954725261124767840, /* 0x0.cd4ce7a5de839fffb */
- 0.803522573691593189330, /* 0x0.cdb3a7c79a678fffd */
- 0.805093487311204114563, /* 0x0.ce1a9b563965ffffc */
- 0.806667472122675088819, /* 0x0.ce81c26b838db8000 */
- 0.808244534127439906441, /* 0x0.cee91d213f8428002 */
- 0.809824679342317166307, /* 0x0.cf50ab9144d92fff9 */
- 0.811407913793616542005, /* 0x0.cfb86dd5758c2ffff */
- 0.812994243520784198882, /* 0x0.d0206407c20e20005 */
- 0.814583674571603966162, /* 0x0.d0888e4223facfff9 */
- 0.816176213022088536960, /* 0x0.d0f0ec9eb3f7c8002 */
- 0.817771864936188586101, /* 0x0.d1597f377d6768002 */
- 0.819370636400374108252, /* 0x0.d1c24626a46eafff8 */
- 0.820972533518165570298, /* 0x0.d22b41865ff1e7ff9 */
- 0.822577562404315121269, /* 0x0.d2947170f32ec7ff9 */
- 0.824185729164559344159, /* 0x0.d2fdd60097795fff8 */
- 0.825797039949601741075, /* 0x0.d3676f4fb796d0001 */
- 0.827411500902565544264, /* 0x0.d3d13d78b5f68fffb */
- 0.829029118181348834154, /* 0x0.d43b40960546d8001 */
- 0.830649897953322891022, /* 0x0.d4a578c222a058000 */
- 0.832273846408250750368, /* 0x0.d50fe617a3ba78005 */
- 0.833900969738858188772, /* 0x0.d57a88b1218e90002 */
- 0.835531274148056613016, /* 0x0.d5e560a94048f8006 */
- 0.837164765846411529371, /* 0x0.d6506e1aac8078003 */
- 0.838801451086016225394, /* 0x0.d6bbb1204074e0001 */
- 0.840441336100884561780, /* 0x0.d72729d4c28518004 */
- 0.842084427144139224814, /* 0x0.d792d8530e12b0001 */
- 0.843730730487052604790, /* 0x0.d7febcb61273e7fff */
- 0.845380252404570153833, /* 0x0.d86ad718c308dfff9 */
- 0.847032999194574087728, /* 0x0.d8d727962c69d7fff */
- 0.848688977161248581090, /* 0x0.d943ae49621ce7ffb */
- 0.850348192619261200615, /* 0x0.d9b06b4d832ef8005 */
- 0.852010651900976245816, /* 0x0.da1d5ebdc22220005 */
- 0.853676361342631029337, /* 0x0.da8a88b555baa0006 */
- 0.855345327311054837175, /* 0x0.daf7e94f965f98004 */
- 0.857017556155879489641, /* 0x0.db6580a7c98f7fff8 */
- 0.858693054267390953857, /* 0x0.dbd34ed9617befff8 */
- 0.860371828028939855647, /* 0x0.dc4153ffc8b65fff9 */
- 0.862053883854957292436, /* 0x0.dcaf90368bfca8004 */
- 0.863739228154875360306, /* 0x0.dd1e0399328d87ffe */
- 0.865427867361348468455, /* 0x0.dd8cae435d303fff9 */
- 0.867119807911702289458, /* 0x0.ddfb9050b1cee8006 */
- 0.868815056264353846599, /* 0x0.de6aa9dced8448001 */
- 0.870513618890481399881, /* 0x0.ded9fb03db7320006 */
- 0.872215502247877139094, /* 0x0.df4983e1380657ff8 */
- 0.873920712852848668986, /* 0x0.dfb94490ffff77ffd */
- 0.875629257204025623884, /* 0x0.e0293d2f1cb01fff9 */
- 0.877341141814212965880, /* 0x0.e0996dd786fff0007 */
- 0.879056373217612985183, /* 0x0.e109d6a64f5d57ffc */
- 0.880774957955916648615, /* 0x0.e17a77b78e72a7ffe */
- 0.882496902590150900078, /* 0x0.e1eb5127722cc7ff8 */
- 0.884222213673356738383, /* 0x0.e25c63121fb0c8006 */
- 0.885950897802399772740, /* 0x0.e2cdad93ec5340003 */
- 0.887682961567391237685, /* 0x0.e33f30c925fb97ffb */
- 0.889418411575228162725, /* 0x0.e3b0ecce2d05ffff9 */
- 0.891157254447957902797, /* 0x0.e422e1bf727718006 */
- 0.892899496816652704641, /* 0x0.e4950fb9713fc7ffe */
- 0.894645145323828439008, /* 0x0.e50776d8b0e60fff8 */
- 0.896394206626591749641, /* 0x0.e57a1739c8fadfffc */
- 0.898146687421414902124, /* 0x0.e5ecf0f97c5798007 */
- 0.899902594367530173098, /* 0x0.e660043464e378005 */
- 0.901661934163603406867, /* 0x0.e6d3510747e150006 */
- 0.903424713533971135418, /* 0x0.e746d78f06cd97ffd */
- 0.905190939194458810123, /* 0x0.e7ba97e879c91fffc */
- 0.906960617885092856864, /* 0x0.e82e92309390b0007 */
- 0.908733756358986566306, /* 0x0.e8a2c6845544afffa */
- 0.910510361377119825629, /* 0x0.e9173500c8abc7ff8 */
- 0.912290439722343249336, /* 0x0.e98bddc30f98b0002 */
- 0.914073998177417412765, /* 0x0.ea00c0e84bc4c7fff */
- 0.915861043547953501680, /* 0x0.ea75de8db8094fffe */
- 0.917651582652244779397, /* 0x0.eaeb36d09d3137ffe */
- 0.919445622318405764159, /* 0x0.eb60c9ce4ed3dffff */
- 0.921243169397334638073, /* 0x0.ebd697a43995b0007 */
- 0.923044230737526172328, /* 0x0.ec4ca06fc7768fffa */
- 0.924848813220121135342, /* 0x0.ecc2e44e865b6fffb */
- 0.926656923710931002014, /* 0x0.ed39635df34e70006 */
- 0.928468569126343790092, /* 0x0.edb01dbbc2f5b7ffa */
- 0.930283756368834757725, /* 0x0.ee2713859aab57ffa */
- 0.932102492359406786818, /* 0x0.ee9e44d9342870004 */
- 0.933924784042873379360, /* 0x0.ef15b1d4635438005 */
- 0.935750638358567643520, /* 0x0.ef8d5a94f60f50007 */
- 0.937580062297704630580, /* 0x0.f0053f38f345cffff */
- 0.939413062815381727516, /* 0x0.f07d5fde3a2d98001 */
- 0.941249646905368053689, /* 0x0.f0f5bca2d481a8004 */
- 0.943089821583810716806, /* 0x0.f16e55a4e497d7ffe */
- 0.944933593864477061592, /* 0x0.f1e72b028a2827ffb */
- 0.946780970781518460559, /* 0x0.f2603cd9fb5430001 */
- 0.948631959382661205081, /* 0x0.f2d98b497d2a87ff9 */
- 0.950486566729423554277, /* 0x0.f353166f63e3dffff */
- 0.952344799896018723290, /* 0x0.f3ccde6a11ae37ffe */
- 0.954206665969085765512, /* 0x0.f446e357f66120000 */
- 0.956072172053890279009, /* 0x0.f4c12557964f0fff9 */
- 0.957941325265908139014, /* 0x0.f53ba48781046fffb */
- 0.959814132734539637840, /* 0x0.f5b66106555d07ffa */
- 0.961690601603558903308, /* 0x0.f6315af2c2027fffc */
- 0.963570739036113010927, /* 0x0.f6ac926b8aeb80004 */
- 0.965454552202857141381, /* 0x0.f728078f7c5008002 */
- 0.967342048278315158608, /* 0x0.f7a3ba7d66a908001 */
- 0.969233234469444204768, /* 0x0.f81fab543e1897ffb */
- 0.971128118008140250896, /* 0x0.f89bda33122c78007 */
- 0.973026706099345495256, /* 0x0.f9184738d4cf97ff8 */
- 0.974929006031422851235, /* 0x0.f994f284d3a5c0008 */
- 0.976835024947348973265, /* 0x0.fa11dc35bc7820002 */
- 0.978744770239899142285, /* 0x0.fa8f046b4fb7f8007 */
- 0.980658249138918636210, /* 0x0.fb0c6b449ab1cfff9 */
- 0.982575468959622777535, /* 0x0.fb8a10e1088fb7ffa */
- 0.984496437054508843888, /* 0x0.fc07f5602d79afffc */
- 0.986421160608523028820, /* 0x0.fc8618e0e55e47ffb */
- 0.988349647107594098099, /* 0x0.fd047b83571b1fffa */
- 0.990281903873210800357, /* 0x0.fd831d66f4c018002 */
- 0.992217938695037382475, /* 0x0.fe01fead3320bfff8 */
- 0.994157757657894713987, /* 0x0.fe811f703491e8006 */
- 0.996101369488558541238, /* 0x0.ff007fd5744490005 */
- 0.998048781093141101932, /* 0x0.ff801ffa9b9280007 */
- 1.000000000000000000000, /* 0x1.00000000000000000 */
- 1.001955033605393285965, /* 0x1.0080200565d29ffff */
- 1.003913889319761887310, /* 0x1.0100802aa0e80fff0 */
- 1.005876574715736104818, /* 0x1.01812090377240007 */
- 1.007843096764807100351, /* 0x1.020201541aad7fff6 */
- 1.009813464316352327214, /* 0x1.0283229c4c9820007 */
- 1.011787683565730677817, /* 0x1.030484836910a000e */
- 1.013765762469146736174, /* 0x1.0386272b9c077fffe */
- 1.015747708536026694351, /* 0x1.04080ab526304fff0 */
- 1.017733529475172815584, /* 0x1.048a2f412375ffff0 */
- 1.019723232714418781378, /* 0x1.050c94ef7ad5e000a */
- 1.021716825883923762690, /* 0x1.058f3be0f1c2d0004 */
- 1.023714316605201180057, /* 0x1.06122436442e2000e */
- 1.025715712440059545995, /* 0x1.06954e0fec63afff2 */
- 1.027721021151397406936, /* 0x1.0718b98f41c92fff6 */
- 1.029730250269221158939, /* 0x1.079c66d49bb2ffff1 */
- 1.031743407506447551857, /* 0x1.082056011a9230009 */
- 1.033760500517691527387, /* 0x1.08a487359ebd50002 */
- 1.035781537016238873464, /* 0x1.0928fa93490d4fff3 */
- 1.037806524719013578963, /* 0x1.09adb03b3e5b3000d */
- 1.039835471338248051878, /* 0x1.0a32a84e9e5760004 */
- 1.041868384612101516848, /* 0x1.0ab7e2eea5340ffff */
- 1.043905272300907460835, /* 0x1.0b3d603ca784f0009 */
- 1.045946142174331239262, /* 0x1.0bc3205a042060000 */
- 1.047991002016745332165, /* 0x1.0c4923682a086fffe */
- 1.050039859627715177527, /* 0x1.0ccf698898f3a000d */
- 1.052092722826109660856, /* 0x1.0d55f2dce5d1dfffb */
- 1.054149599440827866881, /* 0x1.0ddcbf86b09a5fff6 */
- 1.056210497317612961855, /* 0x1.0e63cfa7abc97fffd */
- 1.058275424318780855142, /* 0x1.0eeb23619c146fffb */
- 1.060344388322010722446, /* 0x1.0f72bad65714bffff */
- 1.062417397220589476718, /* 0x1.0ffa9627c38d30004 */
- 1.064494458915699715017, /* 0x1.1082b577d0eef0003 */
- 1.066575581342167566880, /* 0x1.110b18e893a90000a */
- 1.068660772440545025953, /* 0x1.1193c09c267610006 */
- 1.070750040138235936705, /* 0x1.121cacb4959befff6 */
- 1.072843392435016474095, /* 0x1.12a5dd543cf36ffff */
- 1.074940837302467588937, /* 0x1.132f529d59552000b */
- 1.077042382749654914030, /* 0x1.13b90cb250d08fff5 */
- 1.079148036789447484528, /* 0x1.14430bb58da3dfff9 */
- 1.081257807444460983297, /* 0x1.14cd4fc984c4a000e */
- 1.083371702785017154417, /* 0x1.1557d910df9c7000e */
- 1.085489730853784307038, /* 0x1.15e2a7ae292d30002 */
- 1.087611899742884524772, /* 0x1.166dbbc422d8c0004 */
- 1.089738217537583819804, /* 0x1.16f9157586772ffff */
- 1.091868692357631731528, /* 0x1.1784b4e533cacfff0 */
- 1.094003332327482702577, /* 0x1.18109a360fc23fff2 */
- 1.096142145591650907149, /* 0x1.189cc58b155a70008 */
- 1.098285140311341168136, /* 0x1.1929370751ea50002 */
- 1.100432324652149906842, /* 0x1.19b5eecdd79cefff0 */
- 1.102583706811727015711, /* 0x1.1a42ed01dbdba000e */
- 1.104739294993289488947, /* 0x1.1ad031c69a2eafff0 */
- 1.106899097422573863281, /* 0x1.1b5dbd3f66e120003 */
- 1.109063122341542140286, /* 0x1.1beb8f8fa8150000b */
- 1.111231377994659874592, /* 0x1.1c79a8dac6ad0fff4 */
- 1.113403872669181282605, /* 0x1.1d0809445a97ffffc */
- 1.115580614653132185460, /* 0x1.1d96b0effc9db000e */
- 1.117761612217810673898, /* 0x1.1e25a001332190000 */
- 1.119946873713312474002, /* 0x1.1eb4d69bdb2a9fff1 */
- 1.122136407473298902480, /* 0x1.1f4454e3bfae00006 */
- 1.124330221845670330058, /* 0x1.1fd41afcbb48bfff8 */
- 1.126528325196519908506, /* 0x1.2064290abc98c0001 */
- 1.128730725913251964394, /* 0x1.20f47f31c9aa7000f */
- 1.130937432396844410880, /* 0x1.21851d95f776dfff0 */
- 1.133148453059692917203, /* 0x1.2216045b6784efffa */
- 1.135363796355857157764, /* 0x1.22a733a6692ae0004 */
- 1.137583470716100553249, /* 0x1.2338ab9b3221a0004 */
- 1.139807484614418608939, /* 0x1.23ca6c5e27aadfff7 */
- 1.142035846532929888057, /* 0x1.245c7613b7f6c0004 */
- 1.144268564977221958089, /* 0x1.24eec8e06b035000c */
- 1.146505648458203463465, /* 0x1.258164e8cea85fff8 */
- 1.148747105501412235671, /* 0x1.26144a5180d380009 */
- 1.150992944689175123667, /* 0x1.26a7793f5de2efffa */
- 1.153243174560058870217, /* 0x1.273af1d712179000d */
- 1.155497803703682491111, /* 0x1.27ceb43d81d42fff1 */
- 1.157756840726344771440, /* 0x1.2862c097a3d29000c */
- 1.160020294239811677834, /* 0x1.28f7170a74cf4fff1 */
- 1.162288172883275239058, /* 0x1.298bb7bb0faed0004 */
- 1.164560485298402170388, /* 0x1.2a20a2ce920dffff4 */
- 1.166837240167474476460, /* 0x1.2ab5d86a4631ffff6 */
- 1.169118446164539637555, /* 0x1.2b4b58b36d5220009 */
- 1.171404112007080167155, /* 0x1.2be123cf786790002 */
- 1.173694246390975415341, /* 0x1.2c7739e3c0aac000d */
- 1.175988858069749065617, /* 0x1.2d0d9b15deb58fff6 */
- 1.178287955789017793514, /* 0x1.2da4478b627040002 */
- 1.180591548323240091978, /* 0x1.2e3b3f69fb794fffc */
- 1.182899644456603782686, /* 0x1.2ed282d76421d0004 */
- 1.185212252993012693694, /* 0x1.2f6a11f96c685fff3 */
- 1.187529382762033236513, /* 0x1.3001ecf60082ffffa */
- 1.189851042595508889847, /* 0x1.309a13f30f28a0004 */
- 1.192177241354644978669, /* 0x1.31328716a758cfff7 */
- 1.194507987909589896687, /* 0x1.31cb4686e1e85fffb */
- 1.196843291137896336843, /* 0x1.32645269dfd04000a */
- 1.199183159977805113226, /* 0x1.32fdaae604c39000f */
- 1.201527603343041317132, /* 0x1.339750219980dfff3 */
- 1.203876630171082595692, /* 0x1.3431424300e480007 */
- 1.206230249419600664189, /* 0x1.34cb8170b3fee000e */
- 1.208588470077065268869, /* 0x1.35660dd14dbd4fffc */
- 1.210951301134513435915, /* 0x1.3600e78b6bdfc0005 */
- 1.213318751604272271958, /* 0x1.369c0ec5c38ebfff2 */
- 1.215690830512196507537, /* 0x1.373783a718d29000f */
- 1.218067546930756250870, /* 0x1.37d3465662f480007 */
- 1.220448909901335365929, /* 0x1.386f56fa770fe0008 */
- 1.222834928513994334780, /* 0x1.390bb5ba5fc540004 */
- 1.225225611877684750397, /* 0x1.39a862bd3c7a8fff3 */
- 1.227620969111500981433, /* 0x1.3a455e2a37bcafffd */
- 1.230021009336254911271, /* 0x1.3ae2a8287dfbefff6 */
- 1.232425741726685064472, /* 0x1.3b8040df76f39fffa */
- 1.234835175450728295084, /* 0x1.3c1e287682e48fff1 */
- 1.237249319699482263931, /* 0x1.3cbc5f151b86bfff8 */
- 1.239668183679933477545, /* 0x1.3d5ae4e2cc0a8000f */
- 1.242091776620540377629, /* 0x1.3df9ba07373bf0006 */
- 1.244520107762172811399, /* 0x1.3e98deaa0d8cafffe */
- 1.246953186383919165383, /* 0x1.3f3852f32973efff0 */
- 1.249391019292643401078, /* 0x1.3fd816ffc72b90001 */
- 1.251833623164381181797, /* 0x1.40782b17863250005 */
- 1.254280999953110153911, /* 0x1.41188f42caf400000 */
- 1.256733161434815393410, /* 0x1.41b943b42945bfffd */
- 1.259190116985283935980, /* 0x1.425a4893e5f10000a */
- 1.261651875958665236542, /* 0x1.42fb9e0a2df4c0009 */
- 1.264118447754797758244, /* 0x1.439d443f608c4fff9 */
- 1.266589841787181258708, /* 0x1.443f3b5bebf850008 */
- 1.269066067469190262045, /* 0x1.44e183883e561fff7 */
- 1.271547134259576328224, /* 0x1.45841cecf7a7a0001 */
- 1.274033051628237434048, /* 0x1.462707b2c43020009 */
- 1.276523829025464573684, /* 0x1.46ca44023aa410007 */
- 1.279019475999373156531, /* 0x1.476dd2045d46ffff0 */
- 1.281520002043128991825, /* 0x1.4811b1e1f1f19000b */
- 1.284025416692967214122, /* 0x1.48b5e3c3edd74fff4 */
- 1.286535729509738823464, /* 0x1.495a67d3613c8fff7 */
- 1.289050950070396384145, /* 0x1.49ff3e396e19d000b */
- 1.291571087985403654081, /* 0x1.4aa4671f5b401fff1 */
- 1.294096152842774794011, /* 0x1.4b49e2ae56d19000d */
- 1.296626154297237043484, /* 0x1.4befb10fd84a3fff4 */
- 1.299161101984141142272, /* 0x1.4c95d26d41d84fff8 */
- 1.301701005575179204100, /* 0x1.4d3c46f01d9f0fff3 */
- 1.304245874766450485904, /* 0x1.4de30ec21097d0003 */
- 1.306795719266019562007, /* 0x1.4e8a2a0ccce3d0002 */
- 1.309350548792467483458, /* 0x1.4f3198fa10346fff5 */
- 1.311910373099227200545, /* 0x1.4fd95bb3be8cffffd */
- 1.314475201942565174546, /* 0x1.50817263bf0e5fffb */
- 1.317045045107389400535, /* 0x1.5129dd3418575000e */
- 1.319619912422941299109, /* 0x1.51d29c4f01c54ffff */
- 1.322199813675649204855, /* 0x1.527bafde83a310009 */
- 1.324784758729532718739, /* 0x1.5325180cfb8b3fffd */
- 1.327374757430096474625, /* 0x1.53ced504b2bd0fff4 */
- 1.329969819671041886272, /* 0x1.5478e6f02775e0001 */
- 1.332569955346704748651, /* 0x1.55234df9d8a59fff8 */
- 1.335175174370685002822, /* 0x1.55ce0a4c5a6a9fff6 */
- 1.337785486688218616860, /* 0x1.56791c1263abefff7 */
- 1.340400902247843806217, /* 0x1.57248376aef21fffa */
- 1.343021431036279800211, /* 0x1.57d040a420c0bfff3 */
- 1.345647083048053138662, /* 0x1.587c53c5a630f0002 */
- 1.348277868295411074918, /* 0x1.5928bd063fd7bfff9 */
- 1.350913796821875845231, /* 0x1.59d57c9110ad60006 */
- 1.353554878672557082439, /* 0x1.5a8292913d68cfffc */
- 1.356201123929036356254, /* 0x1.5b2fff3212db00007 */
- 1.358852542671913132777, /* 0x1.5bddc29edcc06fff3 */
- 1.361509145047255398051, /* 0x1.5c8bdd032ed16000f */
- 1.364170941142184734180, /* 0x1.5d3a4e8a5bf61fff4 */
- 1.366837941171020309735, /* 0x1.5de9176042f1effff */
- 1.369510155261156381121, /* 0x1.5e9837b062f4e0005 */
- 1.372187593620959988833, /* 0x1.5f47afa69436cfff1 */
- 1.374870266463378287715, /* 0x1.5ff77f6eb3f8cfffd */
- 1.377558184010425845733, /* 0x1.60a7a734a9742fff9 */
- 1.380251356531521533853, /* 0x1.6158272490016000c */
- 1.382949794301995272203, /* 0x1.6208ff6a8978a000f */
- 1.385653507605306700170, /* 0x1.62ba3032c0a280004 */
- 1.388362506772382154503, /* 0x1.636bb9a994784000f */
- 1.391076802081129493127, /* 0x1.641d9bfb29a7bfff6 */
- 1.393796403973427855412, /* 0x1.64cfd7545928b0002 */
- 1.396521322756352656542, /* 0x1.65826be167badfff8 */
- 1.399251568859207761660, /* 0x1.663559cf20826000c */
- 1.401987152677323100733, /* 0x1.66e8a14a29486fffc */
- 1.404728084651919228815, /* 0x1.679c427f5a4b6000b */
- 1.407474375243217723560, /* 0x1.68503d9ba0add000f */
- 1.410226034922914983815, /* 0x1.690492cbf6303fff9 */
- 1.412983074197955213304, /* 0x1.69b9423d7b548fff6 */
-};
diff --git a/sysdeps/ieee754/dbl-64/t_exp2.h b/sysdeps/ieee754/dbl-64/t_exp2.h
deleted file mode 100644
index 1fd7333..0000000
--- a/sysdeps/ieee754/dbl-64/t_exp2.h
+++ /dev/null
@@ -1,585 +0,0 @@
-/* These values are accurate to 52+12 bits when represented as
- a double. */
-static const double exp2_accuratetable[512] = {
-0.707106781187802013759 /* 0x0.b504f333fb3f80007 */,
-0.708064712808760599040 /* 0x0.b543baa0f71b38000 */,
-0.709023942160304065938 /* 0x0.b58297d3a8d518002 */,
-0.709984470998547667624 /* 0x0.b5c18ad39b4ba0001 */,
-0.710946301084324217006 /* 0x0.b60093a85e8d30001 */,
-0.711909434180505784637 /* 0x0.b63fb25984e628005 */,
-0.712873872052760648733 /* 0x0.b67ee6eea3b5f8003 */,
-0.713839616467838999908 /* 0x0.b6be316f518c98001 */,
-0.714806669195984345523 /* 0x0.b6fd91e328d148007 */,
-0.715775032009894562898 /* 0x0.b73d0851c69e20002 */,
-0.716744706683768884058 /* 0x0.b77c94c2c9b3d0003 */,
-0.717715694995770148178 /* 0x0.b7bc373dd52eb0003 */,
-0.718687998724665488852 /* 0x0.b7fbefca8cd530004 */,
-0.719661619652575468291 /* 0x0.b83bbe70981da8001 */,
-0.720636559564428180758 /* 0x0.b87ba337a194b0006 */,
-0.721612820246623098989 /* 0x0.b8bb9e27556508004 */,
-0.722590403488338473025 /* 0x0.b8fbaf4762c798006 */,
-0.723569311081411870036 /* 0x0.b93bd69f7be1d0000 */,
-0.724549544820974333906 /* 0x0.b97c1437567828007 */,
-0.725531106502312561633 /* 0x0.b9bc6816a87ae8002 */,
-0.726513997924421062181 /* 0x0.b9fcd2452bee00000 */,
-0.727498220889519875430 /* 0x0.ba3d52ca9e6148002 */,
-0.728483777200401694265 /* 0x0.ba7de9aebe05c8003 */,
-0.729470668664712662563 /* 0x0.babe96f94e62a8002 */,
-0.730458897090379144517 /* 0x0.baff5ab2134df0004 */,
-0.731448464287988597833 /* 0x0.bb4034e0d38ab0000 */,
-0.732439372072965166897 /* 0x0.bb81258d5b2d60001 */,
-0.733431622260458326859 /* 0x0.bbc22cbf75fd28001 */,
-0.734425216668725511232 /* 0x0.bc034a7ef32c00001 */,
-0.735420157118880535324 /* 0x0.bc447ed3a50fe0005 */,
-0.736416445434497690674 /* 0x0.bc85c9c560b350001 */,
-0.737414083433310718618 /* 0x0.bcc72b5bf4b4e0000 */,
-0.738413072966152328496 /* 0x0.bd08a39f5417a8007 */,
-0.739413415848264365956 /* 0x0.bd4a32974abcd0002 */,
-0.740415113911250699637 /* 0x0.bd8bd84bb68300002 */,
-0.741418168994518067562 /* 0x0.bdcd94c47ddd30003 */,
-0.742422582936659858376 /* 0x0.be0f6809865968006 */,
-0.743428357577745613238 /* 0x0.be515222b72530003 */,
-0.744435494762383687126 /* 0x0.be935317fc6ba0002 */,
-0.745443996335090397492 /* 0x0.bed56af1423de8001 */,
-0.746453864145572798553 /* 0x0.bf1799b67a6248007 */,
-0.747465100043933849969 /* 0x0.bf59df6f970e70002 */,
-0.748477705883256683178 /* 0x0.bf9c3c248dbee8001 */,
-0.749491683518965001732 /* 0x0.bfdeafdd568308000 */,
-0.750507034813367890373 /* 0x0.c0213aa1f0fc38004 */,
-0.751523761622240105153 /* 0x0.c063dc7a559ca0003 */,
-0.752541865811731880422 /* 0x0.c0a6956e883ed8000 */,
-0.753561349247157341600 /* 0x0.c0e965868bd220006 */,
-0.754582213796583967110 /* 0x0.c12c4cca664cb8002 */,
-0.755604461332336940791 /* 0x0.c16f4b42225350006 */,
-0.756628093726406381068 /* 0x0.c1b260f5ca2c48002 */,
-0.757653112855631305506 /* 0x0.c1f58ded6d72d8001 */,
-0.758679520599333412360 /* 0x0.c238d2311e7d08001 */,
-0.759707318837184453227 /* 0x0.c27c2dc8f00368005 */,
-0.760736509456435783249 /* 0x0.c2bfa0bcfd1400000 */,
-0.761767094336480043995 /* 0x0.c3032b155818d0000 */,
-0.762799075372231349951 /* 0x0.c346ccda248cc0001 */,
-0.763832454453522768941 /* 0x0.c38a8613805488005 */,
-0.764867233473625618441 /* 0x0.c3ce56c98d1ca8005 */,
-0.765903414329434539816 /* 0x0.c4123f04708d80002 */,
-0.766940998920452976510 /* 0x0.c4563ecc532dc0001 */,
-0.767979989148100838946 /* 0x0.c49a56295f9f88006 */,
-0.769020386915772125040 /* 0x0.c4de8523c2b0a0001 */,
-0.770062194131770905170 /* 0x0.c522cbc3ae94e0003 */,
-0.771105412703856241146 /* 0x0.c5672a1154e6b8004 */,
-0.772150044545352520777 /* 0x0.c5aba014ed5f18003 */,
-0.773196091570364285606 /* 0x0.c5f02dd6b09288003 */,
-0.774243555696622731700 /* 0x0.c634d35edb1260003 */,
-0.775292438842697939641 /* 0x0.c67990b5aa5c18004 */,
-0.776342742931542928455 /* 0x0.c6be65e360bed8000 */,
-0.777394469888802008854 /* 0x0.c70352f0437f50004 */,
-0.778447621641124243320 /* 0x0.c74857e498fd00006 */,
-0.779502200118583399303 /* 0x0.c78d74c8ab5b60000 */,
-0.780558207255445668515 /* 0x0.c7d2a9a4c959f8000 */,
-0.781615644985491186966 /* 0x0.c817f681412f80002 */,
-0.782674515247667956808 /* 0x0.c85d5b6666c150006 */,
-0.783734819983036512536 /* 0x0.c8a2d85c904760003 */,
-0.784796561133562109454 /* 0x0.c8e86d6c14f850002 */,
-0.785859740645942328471 /* 0x0.c92e1a9d513ec8002 */,
-0.786924360469767103536 /* 0x0.c973dff8a4b390007 */,
-0.787990422552312885808 /* 0x0.c9b9bd866c6440007 */,
-0.789057928854407064640 /* 0x0.c9ffb34f1444b0001 */,
-0.790126881326406182996 /* 0x0.ca45c15afcc570001 */,
-0.791197281930050233534 /* 0x0.ca8be7b292db38000 */,
-0.792269132620954885659 /* 0x0.cad2265e3cbee8000 */,
-0.793342435380726906957 /* 0x0.cb187d667d3d38006 */,
-0.794417192158282659010 /* 0x0.cb5eecd3b33158006 */,
-0.795493404931386649540 /* 0x0.cba574ae5d2e80001 */,
-0.796571075671306805268 /* 0x0.cbec14fef2a348004 */,
-0.797650206352955137846 /* 0x0.cc32cdcdef0000000 */,
-0.798730798954342069432 /* 0x0.cc799f23d11d18000 */,
-0.799812855456121796232 /* 0x0.ccc089091abb28004 */,
-0.800896377841454287795 /* 0x0.cd078b86505c18003 */,
-0.801981368096190028208 /* 0x0.cd4ea6a3f97720007 */,
-0.803067828208752554378 /* 0x0.cd95da6aa057b8007 */,
-0.804155760170129796375 /* 0x0.cddd26e2d21b28001 */,
-0.805245165974338261710 /* 0x0.ce248c151f3330001 */,
-0.806336047619038653883 /* 0x0.ce6c0a0a1c1350001 */,
-0.807428407102107836855 /* 0x0.ceb3a0ca5d6be0006 */,
-0.808522246427078927792 /* 0x0.cefb505e7e2550007 */,
-0.809617567597010201484 /* 0x0.cf4318cf18a268002 */,
-0.810714372621179513182 /* 0x0.cf8afa24ce1c98004 */,
-0.811812663508675536069 /* 0x0.cfd2f4683f9810005 */,
-0.812912442272482604912 /* 0x0.d01b07a2126188003 */,
-0.814013710929394895825 /* 0x0.d06333daeff618001 */,
-0.815116471495287542325 /* 0x0.d0ab791b80d028006 */,
-0.816220725993571205593 /* 0x0.d0f3d76c75b330000 */,
-0.817326476447408967199 /* 0x0.d13c4ed67f1cf8000 */,
-0.818433724883006474832 /* 0x0.d184df6250e3b0001 */,
-0.819542473330909460055 /* 0x0.d1cd8918a3a328004 */,
-0.820652723822034690935 /* 0x0.d2164c02305fa0002 */,
-0.821764478391968422618 /* 0x0.d25f2827b53fb0005 */,
-0.822877739077315761840 /* 0x0.d2a81d91f188b8000 */,
-0.823992507918612782109 /* 0x0.d2f12c49a8d290005 */,
-0.825108786960634610365 /* 0x0.d33a5457a35e40003 */,
-0.826226578247117093869 /* 0x0.d38395c4a84848007 */,
-0.827345883828319528258 /* 0x0.d3ccf09985d958004 */,
-0.828466705754248966560 /* 0x0.d41664df0a1320005 */,
-0.829589046080638992111 /* 0x0.d45ff29e094330000 */,
-0.830712906863802391671 /* 0x0.d4a999df585a20005 */,
-0.831838290163696481037 /* 0x0.d4f35aabd04a60006 */,
-0.832965198041969556729 /* 0x0.d53d350c4be258002 */,
-0.834093632565442222342 /* 0x0.d5872909aba050007 */,
-0.835223595802037643865 /* 0x0.d5d136acd138e8006 */,
-0.836355089820669306292 /* 0x0.d61b5dfe9f7780004 */,
-0.837488116698010487424 /* 0x0.d6659f0801afa8005 */,
-0.838622678508982644113 /* 0x0.d6aff9d1e147d8004 */,
-0.839758777333464490056 /* 0x0.d6fa6e652d19e0000 */,
-0.840896415254110962690 /* 0x0.d744fccad70d00003 */,
-0.842035594355151628676 /* 0x0.d78fa50bd2c3b0000 */,
-0.843176316724478125433 /* 0x0.d7da673117e730007 */,
-0.844318584453106590905 /* 0x0.d8254343a19038003 */,
-0.845462399634695271912 /* 0x0.d870394c6dbf30003 */,
-0.846607764365415071965 /* 0x0.d8bb49547d37c0004 */,
-0.847754680744707056494 /* 0x0.d9067364d45608003 */,
-0.848903150873708822763 /* 0x0.d951b7867953b0006 */,
-0.850053176859071113491 /* 0x0.d99d15c2787a30006 */,
-0.851204760807439786431 /* 0x0.d9e88e21de11a0003 */,
-0.852357904828824897169 /* 0x0.da3420adba1508003 */,
-0.853512611037803181642 /* 0x0.da7fcd6f2184d8005 */,
-0.854668881550406100980 /* 0x0.dacb946f2afaf8000 */,
-0.855826718478671755185 /* 0x0.db1775b6e8ad48000 */,
-0.856986123964844970247 /* 0x0.db63714f8e0818006 */,
-0.858147100114499461478 /* 0x0.dbaf87422625b8000 */,
-0.859309649060962410524 /* 0x0.dbfbb797daa460002 */,
-0.860473772936213743282 /* 0x0.dc480259d3a710001 */,
-0.861639473872910177676 /* 0x0.dc9467913a0f48006 */,
-0.862806754008130227807 /* 0x0.dce0e7473b9b28003 */,
-0.863975615481124226159 /* 0x0.dd2d8185086c20006 */,
-0.865146060433749419813 /* 0x0.dd7a3653d38168005 */,
-0.866318091005120138881 /* 0x0.ddc705bcccd628000 */,
-0.867491709362415264210 /* 0x0.de13efc9434100004 */,
-0.868666917636779056818 /* 0x0.de60f4825df9b8005 */,
-0.869843717989716047624 /* 0x0.deae13f16599c0003 */,
-0.871022112578215268471 /* 0x0.defb4e1f9dc388002 */,
-0.872202103559697183859 /* 0x0.df48a3164a92f0001 */,
-0.873383693097737778847 /* 0x0.df9612deb6e878007 */,
-0.874566883362160263365 /* 0x0.dfe39d82348310001 */,
-0.875751676517234511901 /* 0x0.e031430a0f0688000 */,
-0.876938074732511840819 /* 0x0.e07f037f97e548001 */,
-0.878126080186539592654 /* 0x0.e0ccdeec2a75e0006 */,
-0.879315695055312818168 /* 0x0.e11ad5591f4078001 */,
-0.880506921518618312932 /* 0x0.e168e6cfd2f880004 */,
-0.881699761760385225541 /* 0x0.e1b71359a6df60003 */,
-0.882894217964411143207 /* 0x0.e2055afffc1178000 */,
-0.884090292325693805080 /* 0x0.e253bdcc3ffbb8001 */,
-0.885287987031581180559 /* 0x0.e2a23bc7d7a1d8002 */,
-0.886487304278189114386 /* 0x0.e2f0d4fc31ab80004 */,
-0.887688246263368285778 /* 0x0.e33f8972bea8a8005 */,
-0.888890815189881999840 /* 0x0.e38e5934f49010007 */,
-0.890095013257492739835 /* 0x0.e3dd444c460bd0007 */,
-0.891300842677948068626 /* 0x0.e42c4ac232f380000 */,
-0.892508305659222567226 /* 0x0.e47b6ca036f8b8005 */,
-0.893717404414979710310 /* 0x0.e4caa9efd40e58002 */,
-0.894928141160697743242 /* 0x0.e51a02ba8e2610007 */,
-0.896140518115016826430 /* 0x0.e5697709ecab90000 */,
-0.897354537501434679237 /* 0x0.e5b906e77c61d0006 */,
-0.898570201543732793877 /* 0x0.e608b25cca5ba8005 */,
-0.899787512470129891014 /* 0x0.e6587973688ce8002 */,
-0.901006472512270728537 /* 0x0.e6a85c34ecadb8000 */,
-0.902227083902570559127 /* 0x0.e6f85aaaed4f20006 */,
-0.903449348881299796343 /* 0x0.e74874df09a530003 */,
-0.904673269686823378091 /* 0x0.e798aadadecba0007 */,
-0.905898848559668845585 /* 0x0.e7e8fca80c3ee0001 */,
-0.907126087750156795426 /* 0x0.e8396a503c3fe0005 */,
-0.908354989505901100354 /* 0x0.e889f3dd1615b0002 */,
-0.909585556079328783087 /* 0x0.e8da9958465228007 */,
-0.910817789726044213523 /* 0x0.e92b5acb7d0578001 */,
-0.912051692703457872481 /* 0x0.e97c38406c3c30003 */,
-0.913287267274154990210 /* 0x0.e9cd31c0cbb370001 */,
-0.914524515702244578108 /* 0x0.ea1e475654d540000 */,
-0.915763440256158633982 /* 0x0.ea6f790ac5cc78001 */,
-0.917004043205012497909 /* 0x0.eac0c6e7dd8448007 */,
-0.918246326823137892807 /* 0x0.eb1230f760a428007 */,
-0.919490293387826285200 /* 0x0.eb63b7431714a8007 */,
-0.920735945178816406225 /* 0x0.ebb559d4cb6f30007 */,
-0.921983284479243714322 /* 0x0.ec0718b64c0940002 */,
-0.923232313574974705626 /* 0x0.ec58f3f16a3910002 */,
-0.924483034755387955725 /* 0x0.ecaaeb8ffb3168005 */,
-0.925735450311948926408 /* 0x0.ecfcff9bd67078000 */,
-0.926989562542820610982 /* 0x0.ed4f301edad1a0007 */,
-0.928245373740515189457 /* 0x0.eda17d22e0f9b0001 */,
-0.929502886213858126045 /* 0x0.edf3e6b1d37d40001 */,
-0.930762102264245716494 /* 0x0.ee466cd594c5c8005 */,
-0.932023024199046146183 /* 0x0.ee990f980dcdb0005 */,
-0.933285654329454095216 /* 0x0.eeebcf032bc470007 */,
-0.934549994971191289044 /* 0x0.ef3eab20e0d3c0001 */,
-0.935816048439005676599 /* 0x0.ef91a3fb1e1340004 */,
-0.937083817055075818404 /* 0x0.efe4b99bdcc618006 */,
-0.938353303143720007819 /* 0x0.f037ec0d1889b8000 */,
-0.939624509028518128972 /* 0x0.f08b3b58cc2bb8006 */,
-0.940897437041863904384 /* 0x0.f0dea788fc2a90000 */,
-0.942172089516254085427 /* 0x0.f13230a7ad21b8003 */,
-0.943448468787511540534 /* 0x0.f185d6bee754e0006 */,
-0.944726577195256100890 /* 0x0.f1d999d8b73478005 */,
-0.946006417082291717338 /* 0x0.f22d79ff2cb130000 */,
-0.947287990793413858827 /* 0x0.f281773c59ec48007 */,
-0.948571300678290207925 /* 0x0.f2d5919a566268001 */,
-0.949856349088629370320 /* 0x0.f329c9233bceb0001 */,
-0.951143138379053731954 /* 0x0.f37e1de1272068002 */,
-0.952431670908847949364 /* 0x0.f3d28fde3a6728006 */,
-0.953721949039916472305 /* 0x0.f4271f249a93f0001 */,
-0.955013975135367898520 /* 0x0.f47bcbbe6deab0001 */,
-0.956307751564417496418 /* 0x0.f4d095b5e16638004 */,
-0.957603280698967163097 /* 0x0.f5257d1524f590006 */,
-0.958900564911197350604 /* 0x0.f57a81e668d628000 */,
-0.960199606581278120057 /* 0x0.f5cfa433e60e50007 */,
-0.961500408088936442422 /* 0x0.f624e407d527a0007 */,
-0.962802971817578789903 /* 0x0.f67a416c72b760006 */,
-0.964107300155846558292 /* 0x0.f6cfbc6c011458004 */,
-0.965413395493874504368 /* 0x0.f7255510c439a8002 */,
-0.966721260225105960572 /* 0x0.f77b0b6503c5b8006 */,
-0.968030896745834645873 /* 0x0.f7d0df730a7940005 */,
-0.969342307458006424716 /* 0x0.f826d145294be8003 */,
-0.970655494764855020231 /* 0x0.f87ce0e5b29fd8000 */,
-0.971970461071268720958 /* 0x0.f8d30e5efaa8f0004 */,
-0.973287208789983648852 /* 0x0.f92959bb5e3c08001 */,
-0.974605740331924708124 /* 0x0.f97fc305383028004 */,
-0.975926058115625383329 /* 0x0.f9d64a46ebb9f8004 */,
-0.977248164559556209435 /* 0x0.fa2cef8adbfc68004 */,
-0.978572062087848637573 /* 0x0.fa83b2db7253d0007 */,
-0.979897753126343307191 /* 0x0.fada944319fda0005 */,
-0.981225240104636631254 /* 0x0.fb3193cc425870002 */,
-0.982554525455618277276 /* 0x0.fb88b1815e61d0003 */,
-0.983885611617111077747 /* 0x0.fbdfed6ce683e0007 */,
-0.985218501026348891812 /* 0x0.fc3747995282f8006 */,
-0.986553196127724962867 /* 0x0.fc8ec0112202a0005 */,
-0.987889699367056062238 /* 0x0.fce656ded63710002 */,
-0.989228013193998778636 /* 0x0.fd3e0c0cf48d50005 */,
-0.990568140061241164686 /* 0x0.fd95dfa605c7b0003 */,
-0.991910082424819927754 /* 0x0.fdedd1b4965710004 */,
-0.993253842749249660216 /* 0x0.fe45e2433bfea0000 */,
-0.994599423484053835071 /* 0x0.fe9e115c7c05f0005 */,
-0.995946827107488830167 /* 0x0.fef65f0afb4c28006 */,
-0.997296056085008264529 /* 0x0.ff4ecb59509cc8001 */,
-0.998647112892057764479 /* 0x0.ffa756521dbfd0007 */,
-1.000000000000000000000 /* 0x1.00000000000000000 */,
-1.001354719891689004659 /* 0x1.0058c86da14aa0005 */,
-1.002711275050312211844 /* 0x1.00b1afa5abead0003 */,
-1.004069667960743483835 /* 0x1.010ab5b2cc0660009 */,
-1.005429901112333324093 /* 0x1.0163da9fb2af30008 */,
-1.006791976999887428009 /* 0x1.01bd1e7716f6a0008 */,
-1.008155898118476168101 /* 0x1.02168143b03890006 */,
-1.009521666967782227439 /* 0x1.027003103ae320002 */,
-1.010889286051850133326 /* 0x1.02c9a3e7783030002 */,
-1.012258757875921233497 /* 0x1.032363d42aaa8000e */,
-1.013630084952214405194 /* 0x1.037d42e11c88d0000 */,
-1.015003269791313389451 /* 0x1.03d741191635a0001 */,
-1.016378314911229763267 /* 0x1.04315e86e84630008 */,
-1.017755222831652872635 /* 0x1.048b9b35652800002 */,
-1.019133996077934645224 /* 0x1.04e5f72f65827000b */,
-1.020514637175266248212 /* 0x1.0540727fc1cfa0006 */,
-1.021897148653734488385 /* 0x1.059b0d3157ebb0002 */,
-1.023281533050062419584 /* 0x1.05f5c74f0cfeb0002 */,
-1.024667792897328677539 /* 0x1.0650a0e3c22ee0003 */,
-1.026055930738840826806 /* 0x1.06ab99fa63e1b0008 */,
-1.027445949118511947550 /* 0x1.0706b29ddf2700009 */,
-1.028837850584049418178 /* 0x1.0761ead9253ab0009 */,
-1.030231637685799839262 /* 0x1.07bd42b72a3f80008 */,
-1.031627312979383592802 /* 0x1.0818ba42e824a000c */,
-1.033024879021186448496 /* 0x1.0874518759b0b0008 */,
-1.034424338374263729911 /* 0x1.08d0088f80ffa0006 */,
-1.035825693601787333992 /* 0x1.092bdf66604e30005 */,
-1.037228947273990842283 /* 0x1.0987d617019cd000a */,
-1.038634101961269928846 /* 0x1.09e3ecac6f199000f */,
-1.040041160239590700707 /* 0x1.0a402331b91270002 */,
-1.041450124688240164200 /* 0x1.0a9c79b1f37c3000b */,
-1.042860997889083929381 /* 0x1.0af8f038352160000 */,
-1.044273782427270314011 /* 0x1.0b5586cf986890006 */,
-1.045688480893644856116 /* 0x1.0bb23d833dfbf0006 */,
-1.047105095879385272564 /* 0x1.0c0f145e46e330007 */,
-1.048523629981608529302 /* 0x1.0c6c0b6bdaadc000f */,
-1.049944085800634585634 /* 0x1.0cc922b72470a000f */,
-1.051366465939483019223 /* 0x1.0d265a4b5238b0007 */,
-1.052790773004648849929 /* 0x1.0d83b23395e510002 */,
-1.054217009607077093512 /* 0x1.0de12a7b263970006 */,
-1.055645178360430591625 /* 0x1.0e3ec32d3cf680000 */,
-1.057075281882416506511 /* 0x1.0e9c7c55184f5000e */,
-1.058507322794714378170 /* 0x1.0efa55fdfad51000a */,
-1.059941303721639416236 /* 0x1.0f58503329fed0003 */,
-1.061377227289284297385 /* 0x1.0fb66affed37f0000 */,
-1.062815096132297298980 /* 0x1.1014a66f95540000c */,
-1.064254912884593951029 /* 0x1.1073028d725850007 */,
-1.065696680185205469411 /* 0x1.10d17f64d9ea2000b */,
-1.067140400676658718053 /* 0x1.11301d012586a0007 */,
-1.068586077004890055886 /* 0x1.118edb6db26ab0003 */,
-1.070033711820396415998 /* 0x1.11edbab5e2d6e000b */,
-1.071483307775789262099 /* 0x1.124cbae51b5ef0001 */,
-1.072934867526001312439 /* 0x1.12abdc06c3240000c */,
-1.074388393734249103080 /* 0x1.130b1e264a62e0005 */,
-1.075843889063253344684 /* 0x1.136a814f20ccd0003 */,
-1.077301356179926061823 /* 0x1.13ca058cbaaed000b */,
-1.078760797756675327056 /* 0x1.1429aaea9260e000e */,
-1.080222216468626150775 /* 0x1.148971742537c0009 */,
-1.081685614993597610617 /* 0x1.14e95934f37e8000b */,
-1.083150996013011013776 /* 0x1.1549623881762000d */,
-1.084618362213087383633 /* 0x1.15a98c8a58a6a000b */,
-1.086087716284427351384 /* 0x1.1609d8360768c0008 */,
-1.087559060917626885283 /* 0x1.166a45471c13f0008 */,
-1.089032398810997337465 /* 0x1.16cad3c92d7b50009 */,
-1.090507732647478578212 /* 0x1.172b83c7c18b5000f */,
-1.091985065182095926460 /* 0x1.178c554ead72a000c */,
-1.093464399073070136880 /* 0x1.17ed48695befe000c */,
-1.094945737045367906172 /* 0x1.184e5d23812500007 */,
-1.096429081816546080591 /* 0x1.18af9388c90e40005 */,
-1.097914436104650892651 /* 0x1.1910eba4e031a0001 */,
-1.099401802629782043408 /* 0x1.19726583755720003 */,
-1.100891184121537858001 /* 0x1.19d4013041b860007 */,
-1.102382583308144647940 /* 0x1.1a35beb6fd0cd0007 */,
-1.103876002922312915544 /* 0x1.1a979e2363fa10000 */,
-1.105371445702084232160 /* 0x1.1af99f8139025000e */,
-1.106868914387219016199 /* 0x1.1b5bc2dc408b9000e */,
-1.108368411723785085252 /* 0x1.1bbe084045eb30002 */,
-1.109869940458469095340 /* 0x1.1c206fb91524c000e */,
-1.111373503344554869449 /* 0x1.1c82f952817cc0001 */,
-1.112879103137133007859 /* 0x1.1ce5a51860344000f */,
-1.114386742595953938610 /* 0x1.1d4873168babf000e */,
-1.115896424484008608911 /* 0x1.1dab6358e1d4a000f */,
-1.117408151567338414664 /* 0x1.1e0e75eb43f9c000c */,
-1.118921926613465345265 /* 0x1.1e71aad995078000f */,
-1.120437752409564780022 /* 0x1.1ed5022fcd8600003 */,
-1.121955631720569668277 /* 0x1.1f387bf9cd88b0000 */,
-1.123475567332998359439 /* 0x1.1f9c18438cdec000a */,
-1.124997562033035469759 /* 0x1.1fffd71902f970002 */,
-1.126521618608448571713 /* 0x1.2063b88629079000e */,
-1.128047739853580200284 /* 0x1.20c7bc96ff72a0002 */,
-1.129575928566289189112 /* 0x1.212be3578a81e0006 */,
-1.131106187546149888259 /* 0x1.21902cd3d05f70007 */,
-1.132638519598779369743 /* 0x1.21f49917ddda5000c */,
-1.134172927531616359481 /* 0x1.2259282fc1c24000e */,
-1.135709414157753949251 /* 0x1.22bdda27911e90007 */,
-1.137247982292643566662 /* 0x1.2322af0b638e60007 */,
-1.138788634756517259562 /* 0x1.2387a6e755f270000 */,
-1.140331374372893558110 /* 0x1.23ecc1c788c890006 */,
-1.141876203969685699176 /* 0x1.2451ffb821639000c */,
-1.143423126377846266197 /* 0x1.24b760c5486dc0009 */,
-1.144972144431494420774 /* 0x1.251ce4fb2a0cc0005 */,
-1.146523260971646252006 /* 0x1.25828c65f9fb8000d */,
-1.148076478839068270690 /* 0x1.25e85711ebaeb0000 */,
-1.149631800883562204903 /* 0x1.264e450b3c8a30008 */,
-1.151189229953253789786 /* 0x1.26b4565e281a20003 */,
-1.152748768902654319399 /* 0x1.271a8b16f0f000002 */,
-1.154310420590433317050 /* 0x1.2780e341de2fc0001 */,
-1.155874187878668246681 /* 0x1.27e75eeb3abc90007 */,
-1.157440073633736243899 /* 0x1.284dfe1f5633e000a */,
-1.159008080725518974322 /* 0x1.28b4c0ea840d90001 */,
-1.160578212048386514965 /* 0x1.291ba75932ae60000 */,
-1.162150470417516290340 /* 0x1.2982b177796850008 */,
-1.163724858777502646494 /* 0x1.29e9df51fdd900001 */,
-1.165301379991388053320 /* 0x1.2a5130f50bf34000e */,
-1.166880036952526289469 /* 0x1.2ab8a66d10fdc0008 */,
-1.168460832550151540268 /* 0x1.2b203fc675b7a000a */,
-1.170043769683112966389 /* 0x1.2b87fd0dad7260008 */,
-1.171628851252754177681 /* 0x1.2befde4f2e3da000d */,
-1.173216080163546060084 /* 0x1.2c57e397719940002 */,
-1.174805459325657830448 /* 0x1.2cc00cf2f7491000c */,
-1.176396991650083379037 /* 0x1.2d285a6e3ff90000b */,
-1.177990680055698513602 /* 0x1.2d90cc15d4ff90005 */,
-1.179586527463262646306 /* 0x1.2df961f641c57000c */,
-1.181184536796979545103 /* 0x1.2e621c1c157cd000d */,
-1.182784710984701836994 /* 0x1.2ecafa93e35af0004 */,
-1.184387052960675701386 /* 0x1.2f33fd6a459cb0000 */,
-1.185991565661414393112 /* 0x1.2f9d24abd8fd1000e */,
-1.187598252026902612178 /* 0x1.300670653e083000a */,
-1.189207115003001469262 /* 0x1.306fe0a31bc040008 */,
-1.190818157535919796833 /* 0x1.30d9757219895000e */,
-1.192431382587621380206 /* 0x1.31432edef01a1000f */,
-1.194046793097208292195 /* 0x1.31ad0cf63f0630008 */,
-1.195664392040319823392 /* 0x1.32170fc4ce0db000c */,
-1.197284182375793593084 /* 0x1.32813757527750005 */,
-1.198906167074650808198 /* 0x1.32eb83ba8eef3000f */,
-1.200530349107333139048 /* 0x1.3355f4fb457e5000d */,
-1.202156731453099647353 /* 0x1.33c08b2641df9000c */,
-1.203785317090505513368 /* 0x1.342b46484f07b0005 */,
-1.205416109005122526928 /* 0x1.3496266e3fa270005 */,
-1.207049110184904572310 /* 0x1.35012ba4e8fa10000 */,
-1.208684323627194912036 /* 0x1.356c55f92aabb0004 */,
-1.210321752322854882437 /* 0x1.35d7a577dd33f0004 */,
-1.211961399276747286580 /* 0x1.36431a2de8748000d */,
-1.213603267492579629347 /* 0x1.36aeb4283309e000c */,
-1.215247359985374142610 /* 0x1.371a7373b00160000 */,
-1.216893679753690671322 /* 0x1.3786581d404e90000 */,
-1.218542229828181611183 /* 0x1.37f26231e82e4000c */,
-1.220193013225231215567 /* 0x1.385e91be9c2d20002 */,
-1.221846032973555429280 /* 0x1.38cae6d05e66f0000 */,
-1.223501292099485437962 /* 0x1.393761742e5830001 */,
-1.225158793636904830441 /* 0x1.39a401b713cb3000e */,
-1.226818540625497444577 /* 0x1.3a10c7a61ceae0007 */,
-1.228480536107136034131 /* 0x1.3a7db34e5a4a50003 */,
-1.230144783126481566885 /* 0x1.3aeac4bcdf8d60001 */,
-1.231811284734168454619 /* 0x1.3b57fbfec6e950008 */,
-1.233480043984379381835 /* 0x1.3bc559212e7a2000f */,
-1.235151063936380300149 /* 0x1.3c32dc3139f2a0004 */,
-1.236824347652524913647 /* 0x1.3ca0853c106ac000e */,
-1.238499898199571624970 /* 0x1.3d0e544eddd240003 */,
-1.240177718649636107175 /* 0x1.3d7c4976d3fcd0000 */,
-1.241857812073360767273 /* 0x1.3dea64c1231f70004 */,
-1.243540181554270152039 /* 0x1.3e58a63b099920005 */,
-1.245224830175077013244 /* 0x1.3ec70df1c4e46000e */,
-1.246911761022835740725 /* 0x1.3f359bf29741c000e */,
-1.248600977188942806639 /* 0x1.3fa4504ac7b800009 */,
-1.250292481770148400634 /* 0x1.40132b07a330d000a */,
-1.251986277866492969263 /* 0x1.40822c367a340000b */,
-1.253682368581898742876 /* 0x1.40f153e4a18e0000d */,
-1.255380757024939564249 /* 0x1.4160a21f73289000d */,
-1.257081446308726757662 /* 0x1.41d016f44deaa000c */,
-1.258784439550028944083 /* 0x1.423fb27094c090008 */,
-1.260489739869405489991 /* 0x1.42af74a1aec1c0006 */,
-1.262197350394008266193 /* 0x1.431f5d950a453000c */,
-1.263907274252603851764 /* 0x1.438f6d58176860004 */,
-1.265619514578811388761 /* 0x1.43ffa3f84b9eb000d */,
-1.267334074511444086425 /* 0x1.44700183221180008 */,
-1.269050957191869555296 /* 0x1.44e0860618b930006 */,
-1.270770165768063009230 /* 0x1.4551318eb4d20000e */,
-1.272491703389059036805 /* 0x1.45c2042a7cc26000b */,
-1.274215573211836316547 /* 0x1.4632fde6ffacd000d */,
-1.275941778396075143580 /* 0x1.46a41ed1cfac40001 */,
-1.277670322103555911043 /* 0x1.471566f8812ac0000 */,
-1.279401207505722393185 /* 0x1.4786d668b33260005 */,
-1.281134437771823675369 /* 0x1.47f86d3002637000a */,
-1.282870016078732078362 /* 0x1.486a2b5c13c00000e */,
-1.284607945607987078432 /* 0x1.48dc10fa916bd0004 */,
-1.286348229545787758022 /* 0x1.494e1e192aaa30007 */,
-1.288090871080605159846 /* 0x1.49c052c5913df000c */,
-1.289835873406902644341 /* 0x1.4a32af0d7d8090002 */,
-1.291583239722392528754 /* 0x1.4aa532feab5e10002 */,
-1.293332973229098792374 /* 0x1.4b17dea6db8010008 */,
-1.295085077135345708087 /* 0x1.4b8ab213d57d9000d */,
-1.296839554650994097442 /* 0x1.4bfdad53629e10003 */,
-1.298596408992440220988 /* 0x1.4c70d0735358a000d */,
-1.300355643380135983739 /* 0x1.4ce41b817c99e0001 */,
-1.302117261036232376282 /* 0x1.4d578e8bb52cb0003 */,
-1.303881265192249561154 /* 0x1.4dcb299fde2920008 */,
-1.305647659079073541490 /* 0x1.4e3eeccbd7f4c0003 */,
-1.307416445934474813521 /* 0x1.4eb2d81d8a86f000b */,
-1.309187629001237640529 /* 0x1.4f26eba2e35a5000e */,
-1.310961211525240921493 /* 0x1.4f9b2769d35090009 */,
-1.312737196755087820678 /* 0x1.500f8b804e4a30000 */,
-1.314515587949291131086 /* 0x1.508417f4530d00009 */,
-1.316296388365203462468 /* 0x1.50f8ccd3df1840003 */,
-1.318079601265708777911 /* 0x1.516daa2cf60020002 */,
-1.319865229921343141607 /* 0x1.51e2b00da3c2b0007 */,
-1.321653277603506371251 /* 0x1.5257de83f5512000d */,
-1.323443747588034513690 /* 0x1.52cd359dfc7d5000e */,
-1.325236643161341820781 /* 0x1.5342b569d6baa000f */,
-1.327031967602244177939 /* 0x1.53b85df59921b0000 */,
-1.328829724206201046165 /* 0x1.542e2f4f6b17e0006 */,
-1.330629916266568235675 /* 0x1.54a4298571b27000e */,
-1.332432547083447937938 /* 0x1.551a4ca5d97190009 */,
-1.334237619959296017340 /* 0x1.559098bed16bf0008 */,
-1.336045138203900251029 /* 0x1.56070dde90c800000 */,
-1.337855105129210686631 /* 0x1.567dac13510cd0009 */,
-1.339667524053662184301 /* 0x1.56f4736b52e2c000c */,
-1.341482398296830025383 /* 0x1.576b63f4d8333000f */,
-1.343299731186792467254 /* 0x1.57e27dbe2c40e0003 */,
-1.345119526053918823702 /* 0x1.5859c0d59cd37000f */,
-1.346941786233264881662 /* 0x1.58d12d497cd9a0005 */,
-1.348766515064854010261 /* 0x1.5948c32824b87000c */,
-1.350593715891792223641 /* 0x1.59c0827ff03890007 */,
-1.352423392064920459908 /* 0x1.5a386b5f43a3e0006 */,
-1.354255546937278120764 /* 0x1.5ab07dd485af1000c */,
-1.356090183865519494030 /* 0x1.5b28b9ee21085000f */,
-1.357927306213322804534 /* 0x1.5ba11fba8816e000b */,
-1.359766917346459269620 /* 0x1.5c19af482f8f2000f */,
-1.361609020638567812980 /* 0x1.5c9268a594cc00004 */,
-1.363453619463660171403 /* 0x1.5d0b4be135916000c */,
-1.365300717204201985683 /* 0x1.5d84590998eeb0005 */,
-1.367150317245710233754 /* 0x1.5dfd902d494e40001 */,
-1.369002422974674892971 /* 0x1.5e76f15ad22c40008 */,
-1.370857037789471544224 /* 0x1.5ef07ca0cc166000b */,
-1.372714165088220639199 /* 0x1.5f6a320dcf5280006 */,
-1.374573808273481745378 /* 0x1.5fe411b0790800009 */,
-1.376435970755022220096 /* 0x1.605e1b976e4b1000e */,
-1.378300655944092456600 /* 0x1.60d84fd155d15000e */,
-1.380167867259843417228 /* 0x1.6152ae6cdf0030003 */,
-1.382037608124419003675 /* 0x1.61cd3778bc879000d */,
-1.383909881963391264069 /* 0x1.6247eb03a4dc40009 */,
-1.385784692209972801544 /* 0x1.62c2c91c56d9b0002 */,
-1.387662042298923203992 /* 0x1.633dd1d1930ec0001 */,
-1.389541935670444372533 /* 0x1.63b90532200630004 */,
-1.391424375772021271329 /* 0x1.6434634ccc4cc0007 */,
-1.393309366052102982208 /* 0x1.64afec30677e90008 */,
-1.395196909966106124701 /* 0x1.652b9febc8e0f000d */,
-1.397087010973788290271 /* 0x1.65a77e8dcc7f10004 */,
-1.398979672539331309267 /* 0x1.66238825534170000 */,
-1.400874898129892187656 /* 0x1.669fbcc1415600008 */,
-1.402772691220124823310 /* 0x1.671c1c708328e000a */,
-1.404673055288671035301 /* 0x1.6798a7420988b000d */,
-1.406575993818903302975 /* 0x1.68155d44ca77a000f */,
-1.408481510297352468121 /* 0x1.68923e87bf70e000a */,
-1.410389608216942924956 /* 0x1.690f4b19e8f74000c */,
-1.412300291075172076232 /* 0x1.698c830a4c94c0008 */
-};
-#define S (1.0/4503599627370496.0) /* 2^-52 */
-static const float exp2_deltatable[512] = {
- 11527*S, -963*S, 884*S, -781*S, -2363*S, -3441*S, 123*S, 526*S,
- -6*S, 1254*S, -1138*S, 1519*S, 1576*S, -65*S, 1040*S, 793*S,
- -1662*S, -5063*S, -387*S, 968*S, -941*S, 984*S, -2856*S, -545*S,
- 495*S, -5246*S, -2109*S, 1281*S, 2075*S, 909*S, -1642*S,-78233*S,
--31653*S, -265*S, 130*S, 430*S, 2482*S, -742*S, 1616*S, -2213*S,
- -519*S, 20*S, -3134*S,-13981*S, 1343*S, -1740*S, 247*S, 1679*S,
- -1097*S, 3131*S, 871*S, -1480*S, 1936*S, -1827*S, 17325*S, 528*S,
- -322*S, 1404*S, -152*S, -1845*S, -212*S, 2639*S, -476*S, 2960*S,
- -962*S, -1012*S, -1231*S, 3030*S, 1659*S, -486*S, 2154*S, 1728*S,
- -2793*S, 699*S, -1560*S, -2125*S, 2156*S, 142*S, -1888*S, 4426*S,
--13443*S, 1970*S, -50*S, 1771*S,-43399*S, 4979*S, -2448*S, -370*S,
- 1414*S, 1075*S, 232*S, 206*S, 873*S, 2141*S, 2970*S, 1279*S,
- -2331*S, 336*S, -2595*S, 753*S, -3384*S, -616*S, 89*S, -818*S,
- 5755*S, -241*S, -528*S, -661*S, -3777*S, -354*S, 250*S, 3881*S,
- 2632*S, -2131*S, 2565*S, -316*S, 1746*S, -2541*S, -1324*S, -50*S,
- 2564*S, -782*S, 1176*S, 6452*S, -1002*S, 1288*S, 336*S, -185*S,
- 3063*S, 3784*S, 2169*S, 686*S, 328*S, -400*S, 312*S, -4517*S,
- -1457*S, 1046*S, -1530*S, -685*S, 1328*S,-49815*S, -895*S, 1063*S,
- -2091*S, -672*S, -1710*S, -665*S, 1545*S, 1819*S,-45265*S, 3548*S,
- -554*S, -568*S, 4752*S, -1907*S,-13738*S, 675*S, 9611*S, -1115*S,
- -815*S, 408*S, -1281*S, -937*S,-16376*S, -4772*S, -1440*S, 992*S,
- 788*S, 10364*S, -1602*S, -661*S, -1783*S, -265*S, -20*S, -3781*S,
- -861*S, -345*S, -994*S, 1364*S, -5339*S, 1620*S, 9390*S, -1066*S,
- -305*S, -170*S, 175*S, 2461*S, -490*S, -769*S, -1450*S, 3315*S,
- 2418*S, -45*S, -852*S, -1295*S, -488*S, -96*S, 1142*S, -2639*S,
- 7905*S, -9306*S, -3859*S, 760*S, 1057*S, -1570*S, 3977*S, 209*S,
- -514*S, 7151*S, 1646*S, 627*S, 599*S, -774*S, -1468*S, 633*S,
- -473*S, 851*S, 2406*S, 143*S, 74*S, 4260*S, 1177*S, -913*S,
- 2670*S, -3298*S, -1662*S, -120*S, -3264*S, -2148*S, 410*S, 2078*S,
- -2098*S, -926*S, 3580*S, -1289*S, 2450*S, -1158*S, 907*S, -590*S,
- 986*S, 1801*S, 1145*S, -1677*S, 3455*S, 956*S, 710*S, 144*S,
- 153*S, -255*S, -1898*S, 28102*S, 2748*S, 1194*S, -3009*S, 7076*S,
- 0*S, -2720*S, 711*S, 1225*S, -3034*S, -473*S, 378*S, -1046*S,
- 962*S, -2006*S, 4647*S, 3206*S, 1769*S, -2665*S, 1254*S, 2025*S,
- -2430*S, 6193*S, 1224*S, -856*S, -1592*S, -325*S, -1521*S, 1827*S,
- -264*S, 2403*S, -1065*S, 967*S, -681*S, -2106*S, -474*S, 1333*S,
- -893*S, 2296*S, 592*S, -1220*S, -326*S, 990*S, 139*S, 206*S,
- -779*S, -1683*S, 1238*S, 6098*S, 136*S, 1197*S, 790*S, -107*S,
- -1004*S, -2449*S, 939*S, 5568*S, 156*S, 1812*S, 2792*S, -1094*S,
- -2677*S, -251*S, 2297*S, 943*S, -1329*S, 2883*S, -853*S, -2626*S,
--105929*S, -6552*S, 1095*S, -1508*S, 1003*S, 5039*S, -2600*S, -749*S,
- 1790*S, 890*S, 2016*S, -1073*S, 624*S, -2084*S, -1536*S, -1330*S,
- 358*S, 2444*S, -179*S,-25759*S, -243*S, -552*S, -124*S, 3766*S,
- 1192*S, -1614*S, 6*S, -1227*S, 345*S, -981*S, -295*S, -1006*S,
- -995*S, -1195*S, 706*S, 2512*S, -1758*S, -734*S, -6286*S, -922*S,
- 1530*S, 1542*S, 1223*S, 61*S, -83*S, 522*S,116937*S, -914*S,
- -418*S, -7339*S, 249*S, -520*S, -762*S, 426*S, -505*S, 2664*S,
- -1093*S, -1035*S, 2130*S, 4878*S, 1982*S, 1551*S, 2304*S, 193*S,
- 1532*S, -7268*S, 24357*S, 531*S, 2676*S, -1170*S, 1465*S, -1917*S,
- 2143*S, 1466*S, -7*S, -7300*S, 3297*S, -1197*S, -289*S, -1548*S,
- 26226*S, 4401*S, 4123*S, -1588*S, 4243*S, 4069*S, -1276*S, -2010*S,
- 1407*S, 1478*S, 488*S, -2366*S, -2909*S, -2534*S, -1285*S, 7095*S,
- -645*S, -2089*S, -944*S, -40*S, -1363*S, -833*S, 917*S, 1609*S,
- 1286*S, 1677*S, 1613*S, -2295*S, -1248*S, 40*S, 26*S, 2038*S,
- 698*S, 2675*S, -1755*S, -3522*S, -1614*S, -6111*S, 270*S, 1822*S,
- -234*S, -2844*S, -1201*S, -830*S, 1193*S, 2354*S, 47*S, 1522*S,
- -78*S, -640*S, 2425*S, -1596*S, 1563*S, 1169*S, -1006*S, -83*S,
- 2362*S, -3521*S, -314*S, 1814*S, -1751*S, 305*S, 1715*S, -3741*S,
- 7847*S, 1291*S, 1206*S, 36*S, 1397*S, -1419*S, -1194*S, -2014*S,
- 1742*S, -578*S, -207*S, 875*S, 1539*S, 2826*S, -1165*S, -909*S,
- 1849*S, 927*S, 2018*S, -981*S, 1637*S, -463*S, 905*S, 6618*S,
- 400*S, 630*S, 2614*S, 900*S, 2323*S, -1094*S, -1858*S, -212*S,
- -2069*S, 747*S, 1845*S, -1450*S, 444*S, -213*S, -438*S, 1158*S,
- 4738*S, 2497*S, -370*S, -2016*S, -518*S, -1160*S, -1510*S, 123*S
-};
-/* Maximum magnitude in above table: 116937 */
-#undef S
diff --git a/sysdeps/ieee754/dbl-64/uexp.h b/sysdeps/ieee754/dbl-64/uexp.h
deleted file mode 100644
index 64ab2c8..0000000
--- a/sysdeps/ieee754/dbl-64/uexp.h
+++ /dev/null
@@ -1,68 +0,0 @@
-/*
- * IBM Accurate Mathematical Library
- * Written by International Business Machines Corp.
- * Copyright (C) 2001-2018 Free Software Foundation, Inc.
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License as published by
- * the Free Software Foundation; either version 2.1 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public License
- * along with this program; if not, see <http://www.gnu.org/licenses/>.
- */
-
-/******************************************************************/
-/* */
-/* MODULE_NAME:uexp.h */
-/* */
-/* common data and variables prototype and definition */
-/******************************************************************/
-
-#ifndef UEXP_H
-#define UEXP_H
-
-#include "mydefs.h"
-
-const static double zero = 0.0, hhuge = 1.0e300, tiny = 1.0e-300;
-const static int4 bigint = 0x40862002,
- badint = 0x40876000,smallint = 0x3C8fffff;
-const static int4 hugeint = 0x7FFFFFFF, infint = 0x7ff00000;
-
-#ifdef BIG_ENDI
-const static mynumber inf = {{0x7FF00000, 0}}; /* inf */
-const static mynumber t256 = {{0x4ff00000, 0}}; /* 2^256 */
-
-const static mynumber ln_two1 = {{0x3FE62E42, 0xFEFA3800}};/*0.69314718055989033 */
-const static mynumber ln_two2 = {{0x3D2EF357, 0x93C76730}};/*5.4979230187083712e-14*/
-const static mynumber log2e = {{0x3FF71547, 0x652B82FE}};/* 1.4426950408889634 */
-
-const static mynumber p2 = {{0x3FE00000, 0x000004DC}};/* 0.50000000000013811 */
-const static mynumber p3 = {{0x3FC55555, 0x55555A0F}};/* 0.16666666666670024 */
-
-const static mynumber three33 = {{0x42180000, 0}}; /* 25769803776 */
-const static mynumber three51 = {{0x43380000, 0}}; /* 6755399441055744 */
-
-#else
-#ifdef LITTLE_ENDI
- const static mynumber inf = {{0, 0x7FF00000}}; /* inf */
- const static mynumber t256 = {{0, 0x4ff00000}}; /* 2^256 */
-
- const static mynumber ln_two1 = {{0xFEFA3800, 0x3FE62E42}};/*0.69314718055989033 */
- const static mynumber ln_two2 = {{0x93C76730, 0x3D2EF357}};/*5.4979230187083712e-14*/
- const static mynumber log2e = {{0x652B82FE, 0x3FF71547}};/* 1.4426950408889634 */
-
- const static mynumber p2 = {{0x000004DC, 0x3FE00000}};/* 0.50000000000013811 */
- const static mynumber p3 = {{0x55555A0F, 0x3FC55555}};/* 0.16666666666670024 */
-
- const static mynumber three33 = {{0, 0x42180000}}; /* 25769803776 */
- const static mynumber three51 = {{0, 0x43380000}}; /* 6755399441055744 */
-
-#endif
-#endif
-#endif
diff --git a/sysdeps/ieee754/dbl-64/uexp.tbl b/sysdeps/ieee754/dbl-64/uexp.tbl
deleted file mode 100644
index b1eff52..0000000
--- a/sysdeps/ieee754/dbl-64/uexp.tbl
+++ /dev/null
@@ -1,1786 +0,0 @@
-/*
- * IBM Accurate Mathematical Library
- * Written by International Business Machines Corp.
- * Copyright (C) 2001-2018 Free Software Foundation, Inc.
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License as published by
- * the Free Software Foundation; either version 2.1 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public License
- * along with this program; if not, see <http://www.gnu.org/licenses/>.
- */
-
-/****************************************************************/
-/* TABLES FOR THE ulog() FUNCTION */
-/****************************************************************/
-
-#ifdef BIG_ENDI
-
-static const union {
- int i[1424];
- double x[712];
-} coar = { .i = {
- 0x3FE69A59, 0xC8000000, 0x3DF22D4D, 0x6079C9F7,
- 0x3FE6A5A9, 0xC8000000, 0x3E19882D, 0x25AF6823,
- 0x3FE6B0FF, 0x74000000, 0xBE221476, 0x31DABF59,
- 0x3FE6BC5A, 0xC8000000, 0x3E2312AC, 0x99A2DC0A,
- 0x3FE6C7BB, 0xD0000000, 0xBE265926, 0xCE9F9355,
- 0x3FE6D322, 0x84000000, 0x3E2F2C26, 0x2D298DED,
- 0x3FE6DE8E, 0xF4000000, 0xBE2EC28E, 0x1E748D2F,
- 0x3FE6EA01, 0x14000000, 0x3E2D8C6D, 0xC68CB7E5,
- 0x3FE6F578, 0xF4000000, 0x3DEE1A9E, 0x419FE2F0,
- 0x3FE700F6, 0x90000000, 0xBDFF1AFD, 0xDEAEAE34,
- 0x3FE70C79, 0xEC000000, 0xBE0730FE, 0x558B7122,
- 0x3FE71803, 0x0C000000, 0xBE25CB85, 0x2D280C3B,
- 0x3FE72391, 0xF0000000, 0xBE06F2CE, 0x337B7B54,
- 0x3FE72F26, 0x9C000000, 0x3E289BCA, 0x45C02B72,
- 0x3FE73AC1, 0x18000000, 0xBE18DEA6, 0x5039F1CA,
- 0x3FE74661, 0x60000000, 0xBE09D090, 0x86CE0538,
- 0x3FE75207, 0x78000000, 0x3E290E79, 0xCFCE5DDB,
- 0x3FE75DB3, 0x68000000, 0x3DD61DF0, 0xB249A17C,
- 0x3FE76965, 0x2C000000, 0x3E2F22F7, 0xE13445F7,
- 0x3FE7751C, 0xD0000000, 0xBE2CD454, 0x874E75CE,
- 0x3FE780DA, 0x4C000000, 0xBE0159CE, 0xDF43E3BC,
- 0x3FE78C9D, 0xA8000000, 0x3E279291, 0x699A1332,
- 0x3FE79866, 0xEC000000, 0xBE2A0BCD, 0x2DD98C6C,
- 0x3FE7A436, 0x10000000, 0x3E25F375, 0x15AC979E,
- 0x3FE7B00B, 0x20000000, 0x3E26CCF5, 0x2FEAFCF6,
- 0x3FE7BBE6, 0x1C000000, 0x3E27D4F4, 0x53ADAD67,
- 0x3FE7C7C7, 0x08000000, 0x3E10EEC7, 0x7FBD9566,
- 0x3FE7D3AD, 0xE4000000, 0x3E2837F0, 0x9A831D86,
- 0x3FE7DF9A, 0xB8000000, 0xBE129BE0, 0x5CB4C35B,
- 0x3FE7EB8D, 0x80000000, 0x3E23990A, 0x0234F04D,
- 0x3FE7F786, 0x44000000, 0x3E2EB807, 0x64D5C842,
- 0x3FE80385, 0x08000000, 0x3E0FC86F, 0x02B4E9E8,
- 0x3FE80F89, 0xCC000000, 0xBDD7B5B3, 0x7B4274BF,
- 0x3FE81B94, 0x94000000, 0xBE16888B, 0xB899B00F,
- 0x3FE827A5, 0x60000000, 0x3E288971, 0x5E94D155,
- 0x3FE833BC, 0x38000000, 0x3E2AEEB2, 0x099F3E5E,
- 0x3FE83FD9, 0x20000000, 0xBE23B922, 0x3FF60B7C,
- 0x3FE84BFC, 0x14000000, 0xBDF7D3B1, 0x2DBD8012,
- 0x3FE85825, 0x1C000000, 0xBDF24BA3, 0xA8872BEB,
- 0x3FE86454, 0x38000000, 0x3E2EFE04, 0x01AA18A7,
- 0x3FE87089, 0x70000000, 0x3E21986C, 0x944496A2,
- 0x3FE87CC4, 0xC4000000, 0x3E096A8B, 0xB71FFAFF,
- 0x3FE88906, 0x38000000, 0xBE21CE0A, 0xBC4C7AC5,
- 0x3FE8954D, 0xCC000000, 0xBE076F45, 0xBAC02491,
- 0x3FE8A19B, 0x84000000, 0x3E2B4FA2, 0xD922B925,
- 0x3FE8ADEF, 0x68000000, 0x3DF759DB, 0x641863AF,
- 0x3FE8BA49, 0x78000000, 0xBE2DB97C, 0xC6AB5E04,
- 0x3FE8C6A9, 0xB4000000, 0xBE25364C, 0xE2156713,
- 0x3FE8D310, 0x20000000, 0x3E1BEB7C, 0x862BEFF7,
- 0x3FE8DF7C, 0xC4000000, 0xBDF4DD0C, 0x1CEA33A5,
- 0x3FE8EBEF, 0xA0000000, 0xBE2537DF, 0x51797D47,
- 0x3FE8F868, 0xB4000000, 0x3E0FB1C4, 0xF0107B28,
- 0x3FE904E8, 0x08000000, 0x3E0AD6A1, 0xE01B68BD,
- 0x3FE9116D, 0x9C000000, 0x3E292117, 0x1F78D9D9,
- 0x3FE91DF9, 0x78000000, 0xBE1D75DA, 0x4F50E5CF,
- 0x3FE92A8B, 0x98000000, 0x3DE5102B, 0x74959E58,
- 0x3FE93724, 0x04000000, 0xBE01CA50, 0xD2216C35,
- 0x3FE943C2, 0xBC000000, 0x3E225BFD, 0xB0B05884,
- 0x3FE95067, 0xC8000000, 0xBE0F2183, 0x60B7C5C1,
- 0x3FE95D13, 0x24000000, 0x3E2FB47A, 0xB5860441,
- 0x3FE969C4, 0xDC000000, 0xBE01FFD2, 0xE2D4059E,
- 0x3FE9767C, 0xEC000000, 0xBDE9ED72, 0x12BB6A8D,
- 0x3FE9833B, 0x58000000, 0x3E2B3815, 0x43BFFB24,
- 0x3FE99000, 0x28000000, 0x3E03FA22, 0xEE9EAD1E,
- 0x3FE99CCB, 0x5C000000, 0xBE213841, 0x377138F7,
- 0x3FE9A99C, 0xF4000000, 0x3E178105, 0xDB636C94,
- 0x3FE9B674, 0xF8000000, 0x3E1E5E7A, 0xF5720122,
- 0x3FE9C353, 0x6C000000, 0xBE238BFF, 0xA2AC5AAE,
- 0x3FE9D038, 0x4C000000, 0x3E270893, 0xF93BDBD8,
- 0x3FE9DD23, 0xA4000000, 0x3DF40420, 0x354B86CF,
- 0x3FE9EA15, 0x74000000, 0xBE2D76D3, 0x88CB06B7,
- 0x3FE9F70D, 0xBC000000, 0xBE251639, 0x9ED0EC60,
- 0x3FEA040C, 0x80000000, 0x3E1F06E9, 0xE2DDE506,
- 0x3FEA1111, 0xC8000000, 0x3E014549, 0x8E6DB477,
- 0x3FEA1E1D, 0x94000000, 0xBDF4BC17, 0xF8716509,
- 0x3FEA2B2F, 0xE8000000, 0xBE2107DB, 0xDA723A49,
- 0x3FEA3848, 0xC4000000, 0x3E1A932A, 0x986AA369,
- 0x3FEA4568, 0x30000000, 0x3E198092, 0x41592CDB,
- 0x3FEA528E, 0x30000000, 0xBE2E260F, 0x676BCAB8,
- 0x3FEA5FBA, 0xC0000000, 0x3DE2E821, 0x2D5D5610,
- 0x3FEA6CED, 0xE8000000, 0x3E2F7046, 0x7DA20167,
- 0x3FEA7A27, 0xB0000000, 0xBE1D2832, 0xF9FAAD30,
- 0x3FEA8768, 0x14000000, 0xBE23F788, 0x43FA6C45,
- 0x3FEA94AF, 0x18000000, 0x3E011E27, 0xAA082732,
- 0x3FEAA1FC, 0xC4000000, 0xBE20BACB, 0xC682F0BF,
- 0x3FEAAF51, 0x18000000, 0xBE2DC7DD, 0x7BD08C78,
- 0x3FEABCAC, 0x14000000, 0x3E2271A2, 0xA3B10F9A,
- 0x3FEACA0D, 0xC4000000, 0xBE15449C, 0x7966F94C,
- 0x3FEAD776, 0x24000000, 0x3DD06137, 0x6FD8F3EE,
- 0x3FEAE4E5, 0x3C000000, 0xBE267CD1, 0x8C5A144A,
- 0x3FEAF25B, 0x0C000000, 0xBE29E584, 0xB59DA94B,
- 0x3FEAFFD7, 0x98000000, 0xBE23DFCF, 0x7B52192F,
- 0x3FEB0D5A, 0xE4000000, 0xBE1CF2FE, 0x78A76B45,
- 0x3FEB1AE4, 0xF4000000, 0xBE23A561, 0x7EC80FF6,
- 0x3FEB2875, 0xC8000000, 0x3E22C4C9, 0x932EED68,
- 0x3FEB360D, 0x68000000, 0x3E2B085C, 0xB5833C97,
- 0x3FEB43AB, 0xD8000000, 0xBE01F093, 0x93B9319A,
- 0x3FEB5151, 0x18000000, 0xBE254F01, 0xFABCE670,
- 0x3FEB5EFD, 0x28000000, 0x3E2F24C2, 0x627ABFB0,
- 0x3FEB6CB0, 0x14000000, 0x3E1F1EEC, 0xE6AC0B48,
- 0x3FEB7A69, 0xDC000000, 0xBE1A8671, 0x127F9ABC,
- 0x3FEB882A, 0x80000000, 0xBDCB0C28, 0xC87C73B3,
- 0x3FEB95F2, 0x08000000, 0xBE22E8DD, 0x7F2B5A97,
- 0x3FEBA3C0, 0x74000000, 0xBE1B3645, 0x2D22A9D5,
- 0x3FEBB195, 0xC8000000, 0x3E0ADACA, 0x428F8B88,
- 0x3FEBBF72, 0x0C000000, 0xBE2E9E07, 0xCDF9F681,
- 0x3FEBCD55, 0x3C000000, 0xBE08A127, 0x7FA54ACF,
- 0x3FEBDB3F, 0x60000000, 0x3E0E92CE, 0x8225B385,
- 0x3FEBE930, 0x7C000000, 0x3DF38C2A, 0x7BB09485,
- 0x3FEBF728, 0x94000000, 0xBE2DFD64, 0xF681FA5F,
- 0x3FEC0527, 0xA4000000, 0x3E2E384D, 0xDCE88BD2,
- 0x3FEC132D, 0xBC000000, 0xBE20F111, 0xFE46A893,
- 0x3FEC213A, 0xD4000000, 0x3E193DA1, 0xB189BFDA,
- 0x3FEC2F4E, 0xF8000000, 0xBE20E3A1, 0x0E39FB00,
- 0x3FEC3D6A, 0x24000000, 0x3E1DB044, 0x30F0FAC5,
- 0x3FEC4B8C, 0x64000000, 0xBE2BC12C, 0x97446B17,
- 0x3FEC59B5, 0xB4000000, 0xBE282696, 0x963F4150,
- 0x3FEC67E6, 0x18000000, 0x3E224D26, 0x3049824B,
- 0x3FEC761D, 0x98000000, 0x3E2C5BA5, 0x87F84C7D,
- 0x3FEC845C, 0x38000000, 0xBDE1D14D, 0xC4852339,
- 0x3FEC92A1, 0xF8000000, 0xBE1A451E, 0x5588D9E1,
- 0x3FECA0EE, 0xDC000000, 0xBE1D3B96, 0x68BFF457,
- 0x3FECAF42, 0xE8000000, 0xBE18B670, 0x4DADF774,
- 0x3FECBD9E, 0x20000000, 0xBE1A1548, 0x7FB1FC01,
- 0x3FECCC00, 0x88000000, 0xBE273F2E, 0x78FC5AF0,
- 0x3FECDA6A, 0x20000000, 0x3E1D218F, 0xA6F4A841,
- 0x3FECE8DA, 0xF0000000, 0x3E2E0BA9, 0x4D002CA0,
- 0x3FECF752, 0xFC000000, 0x3E20F4BB, 0x065EF979,
- 0x3FED05D2, 0x48000000, 0xBE2ED3D5, 0x11793B33,
- 0x3FED1458, 0xD0000000, 0x3E115E3C, 0x913341B3,
- 0x3FED22E6, 0xA0000000, 0x3DE97C02, 0xB3546109,
- 0x3FED317B, 0xB8000000, 0x3E087540, 0x1BF898EF,
- 0x3FED4018, 0x1C000000, 0x3E209430, 0x346F9641,
- 0x3FED4EBB, 0xD0000000, 0x3E2B6DF4, 0x88F4B20B,
- 0x3FED5D66, 0xDC000000, 0xBE2EC68F, 0x0CB26035,
- 0x3FED6C19, 0x38000000, 0x3E2CA2C8, 0x1F44D9C3,
- 0x3FED7AD2, 0xF4000000, 0x3E10E6F4, 0x41704EE0,
- 0x3FED8994, 0x0C000000, 0x3E2F9273, 0x25F8F0E2,
- 0x3FED985C, 0x88000000, 0x3E2D041A, 0x318798DE,
- 0x3FEDA72C, 0x6C000000, 0xBE005680, 0x9349CF58,
- 0x3FEDB603, 0xB8000000, 0xBE10F665, 0xCF0C934D,
- 0x3FEDC4E2, 0x70000000, 0x3E166124, 0x19461C64,
- 0x3FEDD3C8, 0x9C000000, 0xBE1B2ED6, 0x405624C8,
- 0x3FEDE2B6, 0x3C000000, 0xBE273A7F, 0x62171501,
- 0x3FEDF1AB, 0x54000000, 0xBE26022B, 0xE36E1450,
- 0x3FEE00A7, 0xE8000000, 0xBE1C341E, 0x2E07AE15,
- 0x3FEE0FAB, 0xFC000000, 0xBDFC7EAE, 0x18D0E701,
- 0x3FEE1EB7, 0x94000000, 0x3E06B34F, 0xECD1FF8B,
- 0x3FEE2DCA, 0xB4000000, 0x3E1394A3, 0x6813A649,
- 0x3FEE3CE5, 0x60000000, 0x3E045496, 0xC1754D14,
- 0x3FEE4C07, 0x9C000000, 0xBE180FFF, 0xF5C6087C,
- 0x3FEE5B31, 0x68000000, 0x3E22FBCD, 0xADD9A300,
- 0x3FEE6A62, 0xCC000000, 0x3E2EC7C7, 0xAF0289E5,
- 0x3FEE799B, 0xCC000000, 0x3E242182, 0x3FB3EDD4,
- 0x3FEE88DC, 0x6C000000, 0xBE201304, 0x04E39885,
- 0x3FEE9824, 0xAC000000, 0xBE20D352, 0xE6831D31,
- 0x3FEEA774, 0x90000000, 0x3E1E032D, 0x618DFCEB,
- 0x3FEEB6CC, 0x20000000, 0x3E1956A3, 0xF9BB457E,
- 0x3FEEC62B, 0x60000000, 0xBE2A77E0, 0x50845DB2,
- 0x3FEED592, 0x4C000000, 0x3E2714F7, 0x47C43858,
- 0x3FEEE500, 0xF0000000, 0x3E2EED96, 0x71813A66,
- 0x3FEEF477, 0x50000000, 0xBE04CDBE, 0x4FB4AA34,
- 0x3FEF03F5, 0x6C000000, 0xBE2774A2, 0x86EB4FF5,
- 0x3FEF137B, 0x48000000, 0xBE29DD95, 0xAD43B2D2,
- 0x3FEF2308, 0xE8000000, 0xBE1CADB0, 0xAC16E506,
- 0x3FEF329E, 0x50000000, 0x3E12AC33, 0x58745C7B,
- 0x3FEF423B, 0x88000000, 0xBE248118, 0x6EC2D854,
- 0x3FEF51E0, 0x8C000000, 0x3E26986B, 0x304ACE08,
- 0x3FEF618D, 0x68000000, 0x3E126D81, 0x3B09354E,
- 0x3FEF7142, 0x1C000000, 0x3DF06AAE, 0x773C23B3,
- 0x3FEF80FE, 0xAC000000, 0xBDA105B6, 0xD82EF423,
- 0x3FEF90C3, 0x1C000000, 0x3DECDEED, 0x465499B8,
- 0x3FEFA08F, 0x70000000, 0x3E0AEFD4, 0xE2EF03AE,
- 0x3FEFB063, 0xAC000000, 0x3E1BD4C0, 0x0567B2E7,
- 0x3FEFC03F, 0xD4000000, 0x3E26AA22, 0x4F97FCBF,
- 0x3FEFD023, 0xF0000000, 0xBE2F9420, 0x5E4E88D1,
- 0x3FEFE00F, 0xFC000000, 0xBE254004, 0x438E52E2,
- 0x3FEFF004, 0x00000000, 0xBE1552AA, 0xEEE93EFC,
- 0x3FF00000, 0x00000000, 0x00000000, 0x00000000,
- 0x3FF00802, 0x00000000, 0x3E155800, 0x4449F507,
- 0x3FF01008, 0x04000000, 0xBE354AA8, 0x882D75D6,
- 0x3FF01812, 0x08000000, 0x3E303610, 0x3740DE56,
- 0x3FF02020, 0x14000000, 0x3E360044, 0x5B0C3264,
- 0x3FF02832, 0x28000000, 0x3E3C4C26, 0x0197EDC3,
- 0x3FF03048, 0x48000000, 0x3E0B103B, 0x5046CA09,
- 0x3FF03862, 0x74000000, 0xBE34659C, 0xF9A62624,
- 0x3FF04080, 0xAC000000, 0xBE254438, 0xDD0A8F37,
- 0x3FF048A2, 0xF4000000, 0x3DF256C2, 0x97AFB6E2,
- 0x3FF050C9, 0x50000000, 0xBE3085DF, 0x923D25E1,
- 0x3FF058F3, 0xC0000000, 0xBE3F0A93, 0x5EA3B091,
- 0x3FF06122, 0x44000000, 0xBE237DE4, 0x5D63534C,
- 0x3FF06954, 0xE0000000, 0x3E301719, 0xFF0C58B7,
- 0x3FF0718B, 0x98000000, 0x3E2E8410, 0x9DF7B665,
- 0x3FF079C6, 0x6C000000, 0x3E349CB9, 0x3B127222,
- 0x3FF08205, 0x60000000, 0x3DF127EC, 0x98E0BD08,
- 0x3FF08A48, 0x74000000, 0xBE24C1B6, 0x706CC41F,
- 0x3FF0928F, 0xA8000000, 0x3E334EF9, 0x093044EF,
- 0x3FF09ADB, 0x04000000, 0xBE1304B1, 0x56BC6C83,
- 0x3FF0A32A, 0x84000000, 0x3E2D383E, 0xB028B984,
- 0x3FF0AB7E, 0x30000000, 0xBE315B1E, 0x64E7A202,
- 0x3FF0B3D6, 0x04000000, 0xBE0AC1E6, 0xC678291E,
- 0x3FF0BC32, 0x04000000, 0x3E3A0418, 0x2F12FFE2,
- 0x3FF0C492, 0x38000000, 0xBE37D617, 0x43D6D302,
- 0x3FF0CCF6, 0x98000000, 0x3E2133F2, 0x152CC8FA,
- 0x3FF0D55F, 0x2C000000, 0x3E3CE5D1, 0xE966E6B7,
- 0x3FF0DDCB, 0xF8000000, 0x3E1ABF24, 0x7BCACA64,
- 0x3FF0E63C, 0xFC000000, 0xBE3854F6, 0x2E8CDBED,
- 0x3FF0EEB2, 0x38000000, 0xBE3E6463, 0x0C32156B,
- 0x3FF0F72B, 0xAC000000, 0x3E365671, 0xB69772CC,
- 0x3FF0FFA9, 0x64000000, 0xBE383E9A, 0x02B1201A,
- 0x3FF1082B, 0x58000000, 0xBE205962, 0x50549CC0,
- 0x3FF110B1, 0x90000000, 0xBE376BFE, 0xFFDACA72,
- 0x3FF1193C, 0x08000000, 0x3E3C1C59, 0x5C43E2F3,
- 0x3FF121CA, 0xCC000000, 0xBE26D374, 0xF7067C8B,
- 0x3FF12A5D, 0xD4000000, 0x3E343CCC, 0x4DDAFE1D,
- 0x3FF132F5, 0x28000000, 0x3E3D5C16, 0x58EBCB7F,
- 0x3FF13B90, 0xCC000000, 0xBE2B5D12, 0xB66E8B53,
- 0x3FF14430, 0xBC000000, 0xBE24E919, 0xB326B482,
- 0x3FF14CD4, 0xFC000000, 0x3E23139A, 0xC8AABD43,
- 0x3FF1557D, 0x90000000, 0x3E30DD8B, 0x16743B55,
- 0x3FF15E2A, 0x7C000000, 0xBE31D701, 0x35904C50,
- 0x3FF166DB, 0xBC000000, 0x3E107F42, 0x30E0CA83,
- 0x3FF16F91, 0x58000000, 0xBE24F1F2, 0xDA1B7123,
- 0x3FF1784B, 0x50000000, 0xBE3ACAF2, 0x0DC79E23,
- 0x3FF18109, 0xA4000000, 0xBE23DC79, 0x609374EE,
- 0x3FF189CC, 0x58000000, 0x3E262CF7, 0x3A40C3B7,
- 0x3FF19293, 0x70000000, 0x3E1D3833, 0x5A24F463,
- 0x3FF19B5E, 0xEC000000, 0x3E2BA9AD, 0x8A2E4440,
- 0x3FF1A42E, 0xD0000000, 0x3DFD8CBC, 0x61C41828,
- 0x3FF1AD03, 0x1C000000, 0x3E1A65E6, 0x5A4DDF0D,
- 0x3FF1B5DB, 0xD4000000, 0xBDE2FDBB, 0x9F828DB5,
- 0x3FF1BEB8, 0xF8000000, 0x3E2F4EE8, 0xB79B700F,
- 0x3FF1C79A, 0x8C000000, 0x3E3ACC35, 0x0DE1D7E8,
- 0x3FF1D080, 0x94000000, 0x3E11729E, 0xFF9E20A0,
- 0x3FF1D96B, 0x10000000, 0xBE300F18, 0x6C2EA70B,
- 0x3FF1E25A, 0x00000000, 0x3DF32E02, 0xCE425A35,
- 0x3FF1EB4D, 0x68000000, 0x3E3BDE56, 0x9A322D12,
- 0x3FF1F445, 0x50000000, 0xBE3C3F0D, 0xBA737AEF,
- 0x3FF1FD41, 0xB0000000, 0xBE0A2DD0, 0xC896DB7A,
- 0x3FF20642, 0x90000000, 0x3E2577B0, 0xF8B782F6,
- 0x3FF20F47, 0xF4000000, 0xBE2C6DA3, 0x73607FC8,
- 0x3FF21851, 0xD8000000, 0x3E35F7D1, 0xC8917348,
- 0x3FF22160, 0x44000000, 0x3E3B6F5C, 0xCF9CED69,
- 0x3FF22A73, 0x3C000000, 0xBE39967E, 0x85775C2E,
- 0x3FF2338A, 0xB8000000, 0x3E3B3213, 0x497226D4,
- 0x3FF23CA6, 0xC4000000, 0x3E3E2710, 0x30733227,
- 0x3FF245C7, 0x60000000, 0x3E33B8A9, 0xAF215A72,
- 0x3FF24EEC, 0x90000000, 0xBE3F96B2, 0x1365623F,
- 0x3FF25816, 0x50000000, 0xBE37324F, 0x27DEE202,
- 0x3FF26144, 0xA4000000, 0x3E318CD5, 0x4E484D87,
- 0x3FF26A77, 0x94000000, 0xBDE3FD37, 0xA94519E8,
- 0x3FF273AF, 0x1C000000, 0x3E37132F, 0xEE788C29,
- 0x3FF27CEB, 0x44000000, 0xBE03DDB7, 0xE842E5C0,
- 0x3FF2862C, 0x08000000, 0x3E37A3FB, 0xE17C9693,
- 0x3FF28F71, 0x70000000, 0x3E24EABF, 0xAEB3D9A0,
- 0x3FF298BB, 0x7C000000, 0xBE13C7B6, 0x853B0733,
- 0x3FF2A20A, 0x2C000000, 0x3E2D2C80, 0xC7B588B5,
- 0x3FF2AB5D, 0x88000000, 0xBE35B750, 0x708F3912,
- 0x3FF2B4B5, 0x8C000000, 0xBE291A70, 0xD5FD9130,
- 0x3FF2BE12, 0x3C000000, 0x3E2EE937, 0x0CCF9F73,
- 0x3FF2C773, 0xA0000000, 0xBE3C3F0C, 0xD42CF76C,
- 0x3FF2D0D9, 0xB0000000, 0x3E35DD54, 0x60763D61,
- 0x3FF2DA44, 0x78000000, 0x3E26C418, 0xE7D6AA3B,
- 0x3FF2E3B3, 0xF8000000, 0xBE3605C6, 0x6FB9B7A8,
- 0x3FF2ED28, 0x2C000000, 0x3E3763D4, 0x24DCDDF5,
- 0x3FF2F6A1, 0x20000000, 0xBE1A411E, 0xA8EC1AA8,
- 0x3FF3001E, 0xD0000000, 0xBE23FCA1, 0x1FE8546F,
- 0x3FF309A1, 0x40000000, 0xBE29DF0D, 0x3AAEE75E,
- 0x3FF31328, 0x70000000, 0x3E36A5D6, 0x3C2C4206,
- 0x3FF31CB4, 0x68000000, 0x3E1B7A3E, 0xB4C979B0,
- 0x3FF32645, 0x28000000, 0xBE36157D, 0x706CD593,
- 0x3FF32FDA, 0xB0000000, 0xBE39F357, 0x8DA4C646,
- 0x3FF33975, 0x04000000, 0xBE3E64DE, 0xD575FE6F,
- 0x3FF34314, 0x24000000, 0x3E07F9E3, 0x44D008E0,
- 0x3FF34CB8, 0x18000000, 0xBE2E94F9, 0x5A563E77,
- 0x3FF35660, 0xDC000000, 0x3E314DC2, 0x2475EF19,
- 0x3FF3600E, 0x78000000, 0x3E26D623, 0xA33AC606,
- 0x3FF369C0, 0xEC000000, 0x3E170F86, 0xC05B3160,
- 0x3FF37378, 0x3C000000, 0xBE38DDFE, 0xDB0AE31A,
- 0x3FF37D34, 0x64000000, 0x3E3662A9, 0x5706B570,
- 0x3FF386F5, 0x70000000, 0xBE1625E4, 0x6770731E,
- 0x3FF390BB, 0x5C000000, 0xBE1678F1, 0x62971091,
- 0x3FF39A86, 0x2C000000, 0xBE061F7C, 0xD045CB0C,
- 0x3FF3A455, 0xE4000000, 0xBE35CF51, 0x568B1CA2,
- 0x3FF3AE2A, 0x84000000, 0xBE378185, 0x7FB61F58,
- 0x3FF3B804, 0x0C000000, 0x3E3F77F4, 0x4FA133AF,
- 0x3FF3C1E2, 0x88000000, 0xBE22F96A, 0xB00B73FE,
- 0x3FF3CBC5, 0xF0000000, 0x3E351A64, 0x1EB4CE2F,
- 0x3FF3D5AE, 0x50000000, 0xBE3D3516, 0xD3755639,
- 0x3FF3DF9B, 0xA0000000, 0x3E1CD938, 0x43E8C10E,
- 0x3FF3E98D, 0xEC000000, 0xBE35EE23, 0x455C8842,
- 0x3FF3F385, 0x30000000, 0xBE29B282, 0x96C9F4ED,
- 0x3FF3FD81, 0x70000000, 0x3E24A40E, 0x3168CC0B,
- 0x3FF40782, 0xB0000000, 0x3E3784BC, 0x86C72839,
- 0x3FF41188, 0xF4000000, 0x3E061F19, 0x0785D847,
- 0x3FF41B94, 0x3C000000, 0xBE27AEF2, 0xE654A9C9,
- 0x3FF425A4, 0x88000000, 0x3E33DFC3, 0xF9E4C1BA,
- 0x3FF42FB9, 0xE0000000, 0x3E2455A8, 0x593D0C75,
- 0x3FF439D4, 0x44000000, 0xBDE41D4E, 0x238B65D1,
- 0x3FF443F3, 0xB4000000, 0x3E3BE616, 0x454CBECB,
- 0x3FF44E18, 0x38000000, 0x3E207B3C, 0x931C5332,
- 0x3FF45841, 0xD0000000, 0xBE330846, 0x7615DCC9,
- 0x3FF46270, 0x7C000000, 0xBE2A8A7B, 0xE497F84E,
- 0x3FF46CA4, 0x40000000, 0x3E020B50, 0xF737AF78,
- 0x3FF476DD, 0x20000000, 0x3E116B19, 0xE34AFBD3,
- 0x3FF4811B, 0x20000000, 0xBE3E15A7, 0x841EDB52,
- 0x3FF48B5E, 0x3C000000, 0x3E0F40C3, 0x33B3DE1E,
- 0x3FF495A6, 0x7C000000, 0x3E33607F, 0x92EFEE02,
- 0x3FF49FF3, 0xE4000000, 0xBE1A2DB5, 0x14F7E168,
- 0x3FF4AA46, 0x70000000, 0x3E3F59EC, 0x3EBA1C94,
- 0x3FF4B49E, 0x2C000000, 0xBE31A539, 0x8B9AE885,
- 0x3FF4BEFB, 0x10000000, 0x3E2FAC0B, 0xF13C8C95,
- 0x3FF4C95D, 0x28000000, 0xBE32C0BB, 0xF8B74775,
- 0x3FF4D3C4, 0x70000000, 0xBE2FC24E, 0x4F9474BB,
- 0x3FF4DE30, 0xEC000000, 0x3E008F30, 0x09DA911F,
- 0x3FF4E8A2, 0xA0000000, 0x3E2994C1, 0xBAF8D98B,
- 0x3FF4F319, 0x90000000, 0xBE17C38C, 0x18648D0A,
- 0x3FF4FD95, 0xBC000000, 0xBE288852, 0xF22F8698,
- 0x3FF50817, 0x28000000, 0xBE3C3EC3, 0x30A2C153,
- 0x3FF5129D, 0xD4000000, 0xBE27B606, 0x968492AA,
- 0x3FF51D29, 0xC4000000, 0x3E2E0396, 0x61101629,
- 0x3FF527BA, 0xFC000000, 0x3E3E876F, 0xDAEEAB38,
- 0x3FF53251, 0x80000000, 0x3E29F59E, 0xED945B30,
- 0x3FF53CED, 0x50000000, 0x3E12D7DA, 0x0B4AE3F1,
- 0x3FF5478E, 0x70000000, 0xBE2FAFB8, 0x5FB946D0,
- 0x3FF55234, 0xE0000000, 0xBE18A8B3, 0x87D80C66,
- 0x3FF55CE0, 0xA4000000, 0x3E28B18F, 0x764CF85C,
- 0x3FF56791, 0xC0000000, 0x3E326017, 0x2BDBC6F4,
- 0x3FF57248, 0x38000000, 0xBE229F98, 0x53D523FE,
- 0x3FF57D04, 0x0C000000, 0xBE3BDD08, 0x4D9B8720,
- 0x3FF587C5, 0x3C000000, 0x3E169EBC, 0x09D8749E,
- 0x3FF5928B, 0xD0000000, 0x3E190C8C, 0x339C2080,
- 0x3FF59D57, 0xC8000000, 0x3E310FA4, 0xDE75E9CA,
- 0x3FF5A829, 0x28000000, 0x3E313D18, 0x1097F186,
- 0x3FF5B2FF, 0xF4000000, 0xBE2BDE04, 0xD51C23F6,
- 0x3FF5BDDC, 0x28000000, 0x3E3EE67E, 0x8938C386,
- 0x3FF5C8BD, 0xD0000000, 0x3E0973B8, 0x47DF6575,
- 0x3FF5D3A4, 0xE8000000, 0x3E24DF02, 0x1DB97781,
- 0x3FF5DE91, 0x78000000, 0xBE3FBA00, 0xAC4AECDC,
- 0x3FF5E983, 0x7C000000, 0xBE2F37AF, 0x939F646A,
- 0x3FF5F47A, 0xFC000000, 0xBE396DEF, 0x58A6EEE9,
- 0x3FF5FF77, 0xF8000000, 0xBE315248, 0xE3613C7B,
- 0x3FF60A7A, 0x74000000, 0xBE26A9E2, 0xF1553706,
- 0x3FF61582, 0x74000000, 0xBE3B6BF6, 0xAE4D7CB6,
- 0x3FF6208F, 0xF8000000, 0xBE35775B, 0x9EB5EBA5,
- 0x3FF62BA3, 0x04000000, 0xBE2A821B, 0xC1E43506,
- 0x3FF636BB, 0x9C000000, 0xBE367CDA, 0x7B2D8CF4,
- 0x3FF641D9, 0xC0000000, 0xBE13218B, 0x3E907A1D,
- 0x3FF64CFD, 0x74000000, 0x3E3454EE, 0x7BF5DFE4,
- 0x3FF65826, 0xC0000000, 0xBE3E960F, 0x6366C5FD,
- 0x3FF66355, 0x9C000000, 0x3E2E378F, 0x8B43C17E,
- 0x3FF66E8A, 0x14000000, 0x3E244BE0, 0xA4306535,
- 0x3FF679C4, 0x28000000, 0xBDE4B6C1, 0x8DF63D6E,
- 0x3FF68503, 0xD8000000, 0x3E3BA122, 0xE6A239CF,
- 0x3FF69049, 0x2C000000, 0x3E27F286, 0x59FB5F30,
- 0x3FF69B94, 0x24000000, 0xBE044041, 0x971D3970 } };
-
-static const union {
- int4 i[2048];
- double x[1024];
-} fine = { .i = {
- 0x3FF00000, 0x00000000, 0x00000000, 0x00000000,
- 0x3FF00004, 0x00000000, 0x3DA00001, 0x55556AAB,
- 0x3FF00008, 0x00000000, 0x3DC00002, 0xAAAB0000,
- 0x3FF0000C, 0x00000000, 0x3DD20004, 0x8000D800,
- 0x3FF00010, 0x00000000, 0x3DE00005, 0x5556AAAB,
- 0x3FF00014, 0x00000000, 0x3DE9000A, 0x6AADEC01,
- 0x3FF00018, 0x00000000, 0x3DF20009, 0x00036001,
- 0x3FF0001C, 0x00000000, 0x3DF8800E, 0x4AB0EB58,
- 0x3FF00020, 0x00000000, 0x3E00000A, 0xAAB00002,
- 0x3FF00024, 0x00000000, 0x3E04400F, 0x30088B04,
- 0x3FF00028, 0x00000000, 0x3E090014, 0xD5625AB1,
- 0x3FF0002C, 0x00000000, 0x3E0E401B, 0xBABDBB0A,
- 0x3FF00030, 0x00000000, 0x3E120012, 0x000D8008,
- 0x3FF00034, 0x00000000, 0x3E152016, 0xE2BD42E1,
- 0x3FF00038, 0x00000000, 0x3E18801C, 0x956E5812,
- 0x3FF0003C, 0x00000000, 0x3E1C2023, 0x2820F599,
- 0x3FF00040, 0x00000000, 0x3E200015, 0x556AAABC,
- 0x3FF00044, 0x00000000, 0x3E221019, 0x96C5DAD7,
- 0x3FF00048, 0x00000000, 0x3E24401E, 0x60222C1F,
- 0x3FF0004C, 0x00000000, 0x3E269023, 0xB97FC193,
- 0x3FF00050, 0x00000000, 0x3E290029, 0xAADEC034,
- 0x3FF00054, 0x00000000, 0x3E2B9030, 0x3C3F4F02,
- 0x3FF00058, 0x00000000, 0x3E2E4037, 0x75A196FF,
- 0x3FF0005C, 0x00000000, 0x3E30881F, 0xAF82E194,
- 0x3FF00060, 0x00000000, 0x3E320024, 0x00360041,
- 0x3FF00064, 0x00000000, 0x3E338828, 0xB0EA3F05,
- 0x3FF00068, 0x00000000, 0x3E35202D, 0xC59FB661,
- 0x3FF0006C, 0x00000000, 0x3E36C833, 0x42567FD5,
- 0x3FF00070, 0x00000000, 0x3E388039, 0x2B0EB5E1,
- 0x3FF00074, 0x00000000, 0x3E3A483F, 0x83C87407,
- 0x3FF00078, 0x00000000, 0x3E3C2046, 0x5083D6C6,
- 0x3FF0007C, 0x00000000, 0x3E3E084D, 0x9540FB9E,
- 0x3FF00080, 0x04000000, 0xBE3FFFAA, 0xA9FFFEEF,
- 0x3FF00084, 0x04000000, 0xBE3DF7A2, 0x693EF962,
- 0x3FF00088, 0x04000000, 0xBE3BDF99, 0xA47BD339,
- 0x3FF0008C, 0x04000000, 0xBE39B790, 0x57B66AF5,
- 0x3FF00090, 0x04000000, 0xBE377F86, 0x7EEE9E14,
- 0x3FF00094, 0x04000000, 0xBE35377C, 0x16244916,
- 0x3FF00098, 0x04000000, 0xBE32DF71, 0x1957477B,
- 0x3FF0009C, 0x04000000, 0xBE307765, 0x848773C2,
- 0x3FF000A0, 0x04000000, 0xBE2BFEB2, 0xA7694ED3,
- 0x3FF000A4, 0x04000000, 0xBE26EE99, 0x05BD75E2,
- 0x3FF000A8, 0x04000000, 0xBE21BE7E, 0x1C0B0BB1,
- 0x3FF000AC, 0x04000000, 0xBE18DCC3, 0xC4A37A79,
- 0x3FF000B0, 0x04000000, 0xBE0BF911, 0x4244D60F,
- 0x3FF000B4, 0x04000000, 0xBDE6E255, 0xEC91D848,
- 0x3FF000B8, 0x04000000, 0x3E0107EB, 0xEC1B8F0C,
- 0x3FF000BC, 0x04000000, 0x3E142439, 0x89BE52AA,
- 0x3FF000C0, 0x04000000, 0x3E200240, 0x06C01033,
- 0x3FF000C4, 0x04000000, 0x3E261264, 0xC8A9F760,
- 0x3FF000C8, 0x04000000, 0x3E2C428B, 0x129D3FDE,
- 0x3FF000CC, 0x04000000, 0x3E314959, 0x764D2658,
- 0x3FF000D0, 0x04000000, 0x3E34816E, 0x2F50C16C,
- 0x3FF000D4, 0x04000000, 0x3E37C983, 0xB859A4AB,
- 0x3FF000D8, 0x04000000, 0x3E3B219A, 0x15680499,
- 0x3FF000DC, 0x04000000, 0x3E3E89B1, 0x4A7C16B5,
- 0x3FF000E0, 0x08000000, 0xBE3DFE36, 0xA469EE7E,
- 0x3FF000E4, 0x08000000, 0xBE3A761D, 0xB349D37F,
- 0x3FF000E8, 0x08000000, 0xBE36DE03, 0xDE235FCD,
- 0x3FF000EC, 0x08000000, 0xBE3335E9, 0x20F659E6,
- 0x3FF000F0, 0x08000000, 0xBE2EFB9A, 0xEF850E8F,
- 0x3FF000F4, 0x08000000, 0xBE276B61, 0xBD0F58E2,
- 0x3FF000F8, 0x08000000, 0xBE1F764D, 0x45163381,
- 0x3FF000FC, 0x08000000, 0xBE0FABA6, 0x5FDF589A,
- 0x3FF00100, 0x08000000, 0x3D8555AA, 0xABBBBE94,
- 0x3FF00104, 0x08000000, 0x3E102B2C, 0xDABB690B,
- 0x3FF00108, 0x08000000, 0x3E2045D9, 0x7820FBA0,
- 0x3FF0010C, 0x08000000, 0x3E28961E, 0x92F54742,
- 0x3FF00110, 0x08000000, 0x3E308332, 0xE2ED8E39,
- 0x3FF00114, 0x08000000, 0x3E34CB57, 0x8C698119,
- 0x3FF00118, 0x08000000, 0x3E39237D, 0x49EEC0C4,
- 0x3FF0011C, 0x08000000, 0x3E3D8BA4, 0x1F7D92BC,
- 0x3FF00120, 0x0C000000, 0xBE3DFC33, 0xEEE9C27D,
- 0x3FF00124, 0x0C000000, 0xBE39740A, 0xDD46F763,
- 0x3FF00128, 0x0C000000, 0xBE34DBE0, 0xA799C375,
- 0x3FF0012C, 0x0C000000, 0xBE3033B5, 0x49E1DD2F,
- 0x3FF00130, 0x0C000000, 0xBE26F711, 0x803DF41F,
- 0x3FF00134, 0x0C000000, 0xBE1ACD6C, 0x19433A4C,
- 0x3FF00138, 0x0C000000, 0xBDFDB2C1, 0x8770E36F,
- 0x3FF0013C, 0x0C000000, 0x3E086820, 0x6B74A43E,
- 0x3FF00140, 0x0C000000, 0x3E200A6A, 0xDEC0D058,
- 0x3FF00144, 0x0C000000, 0x3E2A1AD0, 0x22BD7872,
- 0x3FF00148, 0x0C000000, 0x3E32259B, 0xF769E132,
- 0x3FF0014C, 0x0C000000, 0x3E374DD1, 0x2582289A,
- 0x3FF00150, 0x0C000000, 0x3E3C8607, 0x9FA7E4F4,
- 0x3FF00154, 0x10000000, 0xBE3E31C0, 0x9624963C,
- 0x3FF00158, 0x10000000, 0xBE38D987, 0x77E2F472,
- 0x3FF0015C, 0x10000000, 0xBE33714D, 0x0192E02C,
- 0x3FF00160, 0x10000000, 0xBE2BF222, 0x5E6805CB,
- 0x3FF00164, 0x10000000, 0xBE20E1A7, 0xF98C0A34,
- 0x3FF00168, 0x10000000, 0xBE06C4AB, 0x32447238,
- 0x3FF0016C, 0x10000000, 0x3E067D54, 0xC225D8C1,
- 0x3FF00170, 0x10000000, 0x3E210FD8, 0x05C4630F,
- 0x3FF00174, 0x10000000, 0x3E2CA05D, 0xBB206115,
- 0x3FF00178, 0x10000000, 0x3E342873, 0x2C4F14A6,
- 0x3FF0017C, 0x10000000, 0x3E3A10B8, 0xF31F3B5E,
- 0x3FF00180, 0x14000000, 0xBE3FF6FF, 0xC9FEFCC9,
- 0x3FF00184, 0x14000000, 0xBE39EEB7, 0x070B344A,
- 0x3FF00188, 0x14000000, 0xBE33D66C, 0xC0050AA2,
- 0x3FF0018C, 0x14000000, 0xBE2B5C41, 0xE1D83C97,
- 0x3FF00190, 0x14000000, 0xBE1DD74E, 0x57003305,
- 0x3FF00194, 0x14000000, 0xBDF2D84A, 0xA80727F1,
- 0x3FF00198, 0x14000000, 0x3E14AB2F, 0x534C5401,
- 0x3FF0019C, 0x14000000, 0x3E27263B, 0xD875DE83,
- 0x3FF001A0, 0x14000000, 0x3E320B71, 0x9FB782CA,
- 0x3FF001A4, 0x14000000, 0x3E3893C6, 0xF349371F,
- 0x3FF001A8, 0x14000000, 0x3E3F2C1D, 0xEAF074C6,
- 0x3FF001AC, 0x18000000, 0xBE3A2B89, 0x75525ABC,
- 0x3FF001B0, 0x18000000, 0xBE33732F, 0x297ECCE2,
- 0x3FF001B4, 0x18000000, 0xBE2955A6, 0x5B28EC49,
- 0x3FF001B8, 0x18000000, 0xBE1749D5, 0xF64BA7FD,
- 0x3FF001BC, 0x18000000, 0x3DF15E9E, 0xA8645141,
- 0x3FF001C0, 0x18000000, 0x3E201C96, 0x1D6F0B37,
- 0x3FF001C4, 0x18000000, 0x3E2E2D5B, 0xE6028E39,
- 0x3FF001C8, 0x18000000, 0x3E362F12, 0x9B63FA1E,
- 0x3FF001CC, 0x18000000, 0x3E3D5779, 0x0BE01026,
- 0x3FF001D0, 0x1C000000, 0xBE3B701E, 0xB78A0445,
- 0x3FF001D4, 0x1C000000, 0xBE3427B4, 0xAAD9CF9D,
- 0x3FF001D8, 0x1C000000, 0xBE299E91, 0x941DBAB5,
- 0x3FF001DC, 0x1C000000, 0xBE159B6C, 0x44A2DFDD,
- 0x3FF001E0, 0x1C000000, 0x3E008CA4, 0x1EC8B89C,
- 0x3FF001E4, 0x1C000000, 0x3E23340B, 0xF1EE0E9A,
- 0x3FF001E8, 0x1C000000, 0x3E313279, 0x5231913C,
- 0x3FF001EC, 0x1C000000, 0x3E38DAEE, 0x93892E68,
- 0x3FF001F0, 0x20000000, 0xBE3F6C9A, 0x3F01A6A8,
- 0x3FF001F4, 0x20000000, 0xBE37A421, 0x216E726C,
- 0x3FF001F8, 0x20000000, 0xBE2F974C, 0x1F7970B9,
- 0x3FF001FC, 0x20000000, 0xBE1F8CA4, 0x17AFEBC8,
- 0x3FF00200, 0x20000000, 0x3DB55600, 0x04445B06,
- 0x3FF00204, 0x20000000, 0x3E203BAE, 0x0C290A26,
- 0x3FF00208, 0x20000000, 0x3E30365A, 0x104547BD,
- 0x3FF0020C, 0x20000000, 0x3E385EDF, 0x22970DE3,
- 0x3FF00210, 0x24000000, 0xBE3F6899, 0xBEF5A5F4,
- 0x3FF00214, 0x24000000, 0xBE372010, 0x90605040,
- 0x3FF00218, 0x24000000, 0xBE2D8F0A, 0x9B50D8EE,
- 0x3FF0021C, 0x24000000, 0xBE197BDF, 0xCB35D444,
- 0x3FF00220, 0x24000000, 0x3E00CCBC, 0x2188E3D5,
- 0x3FF00224, 0x24000000, 0x3E254452, 0x36A79F6A,
- 0x3FF00228, 0x24000000, 0x3E333ABC, 0xD69B2D28,
- 0x3FF0022C, 0x24000000, 0x3E3BE352, 0xBA07BE5B,
- 0x3FF00230, 0x28000000, 0xBE3B6415, 0x3665F227,
- 0x3FF00234, 0x28000000, 0xBE329B7A, 0xF6AD58D5,
- 0x3FF00238, 0x28000000, 0xBE2385BD, 0x059BD24A,
- 0x3FF0023C, 0x28000000, 0xBDEB47FA, 0xD8E2B1B4,
- 0x3FF00240, 0x28000000, 0x3E203CC2, 0x22CF60F6,
- 0x3FF00244, 0x28000000, 0x3E312704, 0x39BEF87F,
- 0x3FF00248, 0x28000000, 0x3E3A3FA9, 0xA63F5309,
- 0x3FF0024C, 0x2C000000, 0xBE3C97AE, 0xA516AE5E,
- 0x3FF00250, 0x2C000000, 0xBE335F04, 0xA442792A,
- 0x3FF00254, 0x2C000000, 0xBE242CB0, 0xA686F3A2,
- 0x3FF00258, 0x2C000000, 0xBDE7B535, 0xC3237903,
- 0x3FF0025C, 0x2C000000, 0x3E21560E, 0x9E7A6CF7,
- 0x3FF00260, 0x2C000000, 0x3E3223BA, 0xA8C01385,
- 0x3FF00264, 0x2C000000, 0x3E3BAC70, 0x627012DF,
- 0x3FF00268, 0x30000000, 0xBE3ABAD7, 0x7FB232EA,
- 0x3FF0026C, 0x30000000, 0xBE31121C, 0xF9A6244B,
- 0x3FF00270, 0x30000000, 0xBE1D6580, 0x1DAC9AE4,
- 0x3FF00274, 0x30000000, 0x3E037AFA, 0xD7FB0AC3,
- 0x3FF00278, 0x30000000, 0x3E289042, 0x633420EB,
- 0x3FF0027C, 0x30000000, 0x3E3630E5, 0x8065842A,
- 0x3FF00280, 0x34000000, 0xBE3FD653, 0xB49DA4FF,
- 0x3FF00284, 0x34000000, 0xBE35CD8A, 0x696ECB76,
- 0x3FF00288, 0x34000000, 0xBE27697D, 0x341A9D63,
- 0x3FF0028C, 0x34000000, 0xBDF8BF04, 0x2788D238,
- 0x3FF00290, 0x34000000, 0x3E2159C1, 0x42A03782,
- 0x3FF00294, 0x34000000, 0x3E32F5B4, 0x154D4F89,
- 0x3FF00298, 0x34000000, 0x3E3D4E8A, 0x1D7FB2C1,
- 0x3FF0029C, 0x38000000, 0xBE38489D, 0x42181508,
- 0x3FF002A0, 0x38000000, 0xBE2B9F84, 0x0AF2C28C,
- 0x3FF002A4, 0x38000000, 0xBE0A3721, 0x451C5357,
- 0x3FF002A8, 0x38000000, 0x3E1D47F1, 0x61A8605E,
- 0x3FF002AC, 0x38000000, 0x3E31FADF, 0x81B02FCF,
- 0x3FF002B0, 0x38000000, 0x3E3CB3C5, 0x572F674A,
- 0x3FF002B4, 0x3C000000, 0xBE388352, 0x231795EA,
- 0x3FF002B8, 0x3C000000, 0xBE2B54CD, 0xD248367A,
- 0x3FF002BC, 0x3C000000, 0xBE060BC7, 0xB7ABD90D,
- 0x3FF002C0, 0x3C000000, 0x3E206EEF, 0x6EE9F1EF,
- 0x3FF002C4, 0x3C000000, 0x3E33406B, 0x261BF09E,
- 0x3FF002C8, 0x3C000000, 0x3E3E5961, 0x59001C60,
- 0x3FF002CC, 0x40000000, 0xBE367DA5, 0xABDDD232,
- 0x3FF002D0, 0x40000000, 0xBE268953, 0xC8FA5113,
- 0x3FF002D4, 0x40000000, 0x3D9152CC, 0x8B33A701,
- 0x3FF002D8, 0x40000000, 0x3E26BAAC, 0x3E058570,
- 0x3FF002DC, 0x40000000, 0x3E36C65A, 0x63236E71,
- 0x3FF002E0, 0x44000000, 0xBE3DC09E, 0x7C7A795C,
- 0x3FF002E4, 0x44000000, 0xBE323794, 0x7BD63D1D,
- 0x3FF002E8, 0x44000000, 0xBE1A7A1E, 0x5BBC9105,
- 0x3FF002EC, 0x44000000, 0x3E142A20, 0xD8EE2B1B,
- 0x3FF002F0, 0x44000000, 0x3E30C39A, 0xEFAA8A8D,
- 0x3FF002F4, 0x44000000, 0x3E3C8CB0, 0x995E96A2,
- 0x3FF002F8, 0x48000000, 0xBE379A36, 0xC8A79469,
- 0x3FF002FC, 0x48000000, 0xBE276236, 0x64CE7203,
- 0x3FF00300, 0x48000000, 0x3DD200D8, 0x0819DA68,
- 0x3FF00304, 0x48000000, 0x3E28A249, 0xE5E018D4,
- 0x3FF00308, 0x48000000, 0x3E386A49, 0x8A087692,
- 0x3FF0030C, 0x4C000000, 0xBE3B6C8E, 0xD695988B,
- 0x3FF00310, 0x4C000000, 0xBE2E66C8, 0x55D2BCBA,
- 0x3FF00314, 0x4C000000, 0xBE0751B3, 0x7790BA7A,
- 0x3FF00318, 0x4C000000, 0x3E22DDF4, 0xC2A20261,
- 0x3FF0031C, 0x4C000000, 0x3E35D82E, 0x49E0B0B5,
- 0x3FF00320, 0x50000000, 0xBE3DAE9A, 0xB142422E,
- 0x3FF00324, 0x50000000, 0xBE312560, 0x8C170FE6,
- 0x3FF00328, 0x50000000, 0xBE12308D, 0x0A73BF77,
- 0x3FF0032C, 0x50000000, 0x3E203A3A, 0x5E59CEFA,
- 0x3FF00330, 0x50000000, 0x3E34D660, 0xCD4740BF,
- 0x3FF00334, 0x54000000, 0xBE3E6058, 0x644D1883,
- 0x3FF00338, 0x54000000, 0xBE31870E, 0x618F57B6,
- 0x3FF0033C, 0x54000000, 0xBE127704, 0x99FABD0F,
- 0x3FF00340, 0x54000000, 0x3E20B71E, 0xA1CB5ECF,
- 0x3FF00344, 0x54000000, 0x3E3564E3, 0x089E93E1,
- 0x3FF00348, 0x58000000, 0xBE3D81C5, 0xFB533142,
- 0x3FF0034C, 0x58000000, 0xBE30586B, 0xB6EECE6C,
- 0x3FF00350, 0x58000000, 0xBE08F871, 0x319B883E,
- 0x3FF00354, 0x58000000, 0x3E2454A5, 0x75BF7503,
- 0x3FF00358, 0x58000000, 0x3E3783B6, 0xF04B88C5,
- 0x3FF0035C, 0x5C000000, 0xBE3B12E1, 0x81EF30A7,
- 0x3FF00360, 0x5C000000, 0xBE2B32ED, 0x2F9F3657,
- 0x3FF00364, 0x5C000000, 0xBDB0084D, 0x54DF31BC,
- 0x3FF00368, 0x5C000000, 0x3E2B12D2, 0xC303B7B9,
- 0x3FF0036C, 0x5C000000, 0x3E3B32DE, 0x78B56F97,
- 0x3FF00370, 0x60000000, 0xBE3713A9, 0x03B9496C,
- 0x3FF00374, 0x60000000, 0xBE22945A, 0x1F92E726,
- 0x3FF00378, 0x60000000, 0x3E123D49, 0x621736DF,
- 0x3FF0037C, 0x60000000, 0x3E3278D5, 0x3935580D,
- 0x3FF00380, 0x64000000, 0xBE3F8DA4, 0x69B9F5FB,
- 0x3FF00384, 0x64000000, 0xBE31841A, 0x8C473CC8,
- 0x3FF00388, 0x64000000, 0xBE0B5469, 0x538CDE07,
- 0x3FF0038C, 0x64000000, 0x3E257E07, 0x7F8F9D65,
- 0x3FF00390, 0x64000000, 0x3E38F898, 0x3665E52B,
- 0x3FF00394, 0x68000000, 0xBE38BDCF, 0xC29674BD,
- 0x3FF00398, 0x68000000, 0xBE24C868, 0x4E58B4D9,
- 0x3FF0039C, 0x68000000, 0x3E1015AC, 0x329466D7,
- 0x3FF003A0, 0x68000000, 0x3E327F0D, 0xDCDECE44,
- 0x3FF003A4, 0x6C000000, 0xBE3EF74B, 0xB27E5528,
- 0x3FF003A8, 0x6C000000, 0xBE305DA1, 0x9D7167F2,
- 0x3FF003AC, 0x6C000000, 0xBDFB3F3D, 0xFF980820,
- 0x3FF003B0, 0x6C000000, 0x3E2A0B7B, 0x13D49789,
- 0x3FF003B4, 0x6C000000, 0x3E3BCF72, 0xA43AE87C,
- 0x3FF003B8, 0x70000000, 0xBE3556D4, 0x8D06BDC0,
- 0x3FF003BC, 0x70000000, 0xBE19B460, 0x1766E54D,
- 0x3FF003C0, 0x70000000, 0x3E211950, 0x7B85C8BA,
- 0x3FF003C4, 0x70000000, 0x3E37966C, 0x41D00AED,
- 0x3FF003C8, 0x74000000, 0xBE394FCB, 0xF5B15507,
- 0x3FF003CC, 0x74000000, 0xBE244C00, 0xC98093C4,
- 0x3FF003D0, 0x74000000, 0x3E144F3B, 0xE2907BDF,
- 0x3FF003D4, 0x74000000, 0x3E345DA2, 0x267CD924,
- 0x3FF003D8, 0x78000000, 0xBE3C4886, 0xD73526C0,
- 0x3FF003DC, 0x78000000, 0xBE29BD57, 0xF8E1D62E,
- 0x3FF003E0, 0x78000000, 0x3E04D995, 0xD65415E1,
- 0x3FF003E4, 0x78000000, 0x3E322515, 0x527E1A58,
- 0x3FF003E8, 0x7C000000, 0xBE3E4104, 0x31552BA5,
- 0x3FF003EC, 0x7C000000, 0xBE2D2E33, 0x995CAB3B,
- 0x3FF003F0, 0x7C000000, 0x3DF22D48, 0x473970DC,
- 0x3FF003F4, 0x7C000000, 0x3E30ECC6, 0xC61195FC,
- 0x3FF003F8, 0x80000000, 0xBE3F3943, 0x03D35C34,
- 0x3FF003FC, 0x80000000, 0xBE2E9E91, 0xAA7483C7,
- 0x3FF00400, 0x80000000, 0x3DE556AA, 0xBBBC71CE,
- 0x3FF00404, 0x80000000, 0x3E30B4B7, 0x817613C1,
- 0x3FF00408, 0x84000000, 0xBE3F3142, 0x4E70B0AC,
- 0x3FF0040C, 0x84000000, 0xBE2E0E70, 0x2BAAD02F,
- 0x3FF00410, 0x84000000, 0x3DF32D62, 0xF48F01F2,
- 0x3FF00414, 0x84000000, 0x3E317CE8, 0x84EB5B98,
- 0x3FF00418, 0x88000000, 0xBE3E2901, 0x10ED210B,
- 0x3FF0041C, 0x88000000, 0xBE2B7DCD, 0x1C7F0051,
- 0x3FF00420, 0x88000000, 0x3E05D9C0, 0x87AA2706,
- 0x3FF00424, 0x88000000, 0x3E33455A, 0xD0B235B3,
- 0x3FF00428, 0x8C000000, 0xBE3C207E, 0x4B07A510,
- 0x3FF0042C, 0x8C000000, 0xBE26ECA6, 0x7C6E838B,
- 0x3FF00430, 0x8C000000, 0x3E150F6F, 0xEC91A8D5,
- 0x3FF00434, 0x8C000000, 0x3E360E0F, 0x650C6A83,
- 0x3FF00438, 0x90000000, 0xBE3917B8, 0xFC7E3439,
- 0x3FF0043C, 0x90000000, 0xBE205AFA, 0x4AF4C8B6,
- 0x3FF00440, 0x90000000, 0x3E219985, 0xDC31D181,
- 0x3FF00444, 0x90000000, 0x3E39D707, 0x423CC2BE,
- 0x3FF00448, 0x94000000, 0xBE350EB0, 0x250DC5BF,
- 0x3FF0044C, 0x94000000, 0xBE0F231A, 0x1E2CF893,
- 0x3FF00450, 0x94000000, 0x3E2AABDB, 0xD42C92D4,
- 0x3FF00454, 0x94000000, 0x3E3EA043, 0x6887075B,
- 0x3FF00458, 0x98000000, 0xBE300562, 0xC472509B,
- 0x3FF0045C, 0x98000000, 0x3DF64FB6, 0x72B572E0,
- 0x3FF00460, 0x98000000, 0x3E32DF5D, 0xEF61155C,
- 0x3FF00464, 0x9C000000, 0xBE3B963B, 0x27CFFE6A,
- 0x3FF00468, 0x9C000000, 0xBE23F79F, 0xB4CD96FE,
- 0x3FF0046C, 0x9C000000, 0x3E1EBA7F, 0x6E771F13,
- 0x3FF00470, 0x9C000000, 0x3E396913, 0xFE3ED608,
- 0x3FF00474, 0xA0000000, 0xBE34CC73, 0x6E82850F,
- 0x3FF00478, 0xA0000000, 0xBE078FB3, 0x352966B7,
- 0x3FF0047C, 0xA0000000, 0x3E2DF116, 0x33AFF8AE,
- 0x3FF00480, 0xA4000000, 0xBE3F0CEE, 0xE909EADD,
- 0x3FF00484, 0xA4000000, 0xBE2A04C8, 0xD6938597,
- 0x3FF00488, 0xA4000000, 0x3E1460AA, 0x5C6654D8,
- 0x3FF0048C, 0xA4000000, 0x3E3742BE, 0x22213ECF,
- 0x3FF00490, 0xA8000000, 0xBE3682A9, 0xC631A356,
- 0x3FF00494, 0xA8000000, 0xBE10E034, 0x7777B644,
- 0x3FF00498, 0xA8000000, 0x3E2C4528, 0x3E3B0991,
- 0x3FF0049C, 0xAC000000, 0xBE3F72C6, 0x0B3E269F,
- 0x3FF004A0, 0xAC000000, 0xBE29F037, 0x31DF923B,
- 0x3FF004A4, 0xAC000000, 0x3E164A4D, 0xE82713DE,
- 0x3FF004A8, 0xAC000000, 0x3E382D47, 0x31AFAC4B,
- 0x3FF004AC, 0xB0000000, 0xBE352800, 0x6DFCE978,
- 0x3FF004B0, 0xB0000000, 0xBE036A1B, 0x07D68D27,
- 0x3FF004B4, 0xB0000000, 0x3E305D7E, 0x5CB71F6F,
- 0x3FF004B8, 0xB4000000, 0xBE3CC7BB, 0x30E5E990,
- 0x3FF004BC, 0xB4000000, 0xBE23B9E0, 0x0BA17DEA,
- 0x3FF004C0, 0xB4000000, 0x3E223BBF, 0xC3EF9BD8,
- 0x3FF004C4, 0xB4000000, 0x3E3C28B4, 0x8A74ECC0,
- 0x3FF004C8, 0xB8000000, 0xBE30BC72, 0x085831CA,
- 0x3FF004CC, 0xB8000000, 0x3E037361, 0x6C8D1FC8,
- 0x3FF004D0, 0xB8000000, 0x3E35A94F, 0x3033A0B8,
- 0x3FF004D4, 0xBC000000, 0xBE370BC8, 0xFC7107DE,
- 0x3FF004D8, 0xBC000000, 0xBE0D86E2, 0xA2D908DA,
- 0x3FF004DC, 0xBC000000, 0x3E2F742A, 0x58ED155E,
- 0x3FF004E0, 0xC0000000, 0xBE3CCAF4, 0x75FACDD0,
- 0x3FF004E4, 0xC0000000, 0xBE227FF2, 0x6F5BE5D3,
- 0x3FF004E8, 0xC0000000, 0x3E24B60D, 0xD6BCA827,
- 0x3FF004EC, 0xC0000000, 0x3E3E060B, 0xF72B40D6,
- 0x3FF004F0, 0xC4000000, 0xBE2C7DD4, 0x208BE3E3,
- 0x3FF004F4, 0xC4000000, 0x3E163093, 0x642FDDB8,
- 0x3FF004F8, 0xC4000000, 0x3E396738, 0xB72239A5,
- 0x3FF004FC, 0xC8000000, 0xBE32ADAE, 0x7201ED9B,
- 0x3FF00500, 0xC8000000, 0x3DF4D6F6, 0x1A0C05F3,
- 0x3FF00504, 0xC8000000, 0x3E355892, 0x360B8346,
- 0x3FF00508, 0xCC000000, 0xBE368C45, 0xF0C06435,
- 0x3FF0050C, 0xCC000000, 0xBE0308C8, 0x760DA2F6,
- 0x3FF00510, 0xCC000000, 0x3E31DA18, 0xE008D57B,
- 0x3FF00514, 0xD0000000, 0xBE39DAB0, 0x205F82F4,
- 0x3FF00518, 0xD0000000, 0xBE15FDD0, 0x2FE5E3E3,
- 0x3FF0051C, 0xD0000000, 0x3E2DD79A, 0x42787241,
- 0x3FF00520, 0xD4000000, 0xBE3C98EC, 0x94BD25F4,
- 0x3FF00524, 0xD4000000, 0xBE201B42, 0x53C89D03,
- 0x3FF00528, 0xD4000000, 0x3E291B5E, 0xCB901057,
- 0x3FF0052C, 0xD8000000, 0xBE3EC6FA, 0xE1B6D837,
- 0x3FF00530, 0xD8000000, 0xBE24173F, 0xF8BF49E7,
- 0x3FF00534, 0xD8000000, 0x3E257F80, 0x339DDB57,
- 0x3FF00538, 0xD8000000, 0x3E3F9B25, 0x64D62C5C,
- 0x3FF0053C, 0xDC000000, 0xBE26F2E0, 0x2E913659,
- 0x3FF00540, 0xDC000000, 0x3E2303FF, 0x52E7CB93,
- 0x3FF00544, 0xDC000000, 0x3E3E8D74, 0xAB0CFEF5,
- 0x3FF00548, 0xE0000000, 0xBE28AE22, 0x1CF7FDE6,
- 0x3FF0054C, 0xE0000000, 0x3E21A8DD, 0x01B47B93,
- 0x3FF00550, 0xE0000000, 0x3E3E0FF3, 0x5D1107E2,
- 0x3FF00554, 0xE4000000, 0xBE294904, 0xEBAC99E1,
- 0x3FF00558, 0xE4000000, 0x3E216E1A, 0x184B2814,
- 0x3FF0055C, 0xE4000000, 0x3E3E22A1, 0xE706008B,
- 0x3FF00560, 0xE8000000, 0xBE28C387, 0xC267616A,
- 0x3FF00564, 0xE8000000, 0x3E2253B7, 0x6EF3B008,
- 0x3FF00568, 0xE8000000, 0x3E3EC580, 0xB50FF371,
- 0x3FF0056C, 0xEC000000, 0xBE271DA9, 0xC8E0096B,
- 0x3FF00570, 0xEC000000, 0x3E2459B5, 0xDDF69498,
- 0x3FF00574, 0xEC000000, 0x3E3FF890, 0x33533C31,
- 0x3FF00578, 0xF0000000, 0xBE24576A, 0x26CDA497,
- 0x3FF0057C, 0xF0000000, 0x3E278016, 0x3D9CF923,
- 0x3FF00580, 0xF4000000, 0xBE3E442F, 0x320B787B,
- 0x3FF00584, 0xF4000000, 0xBE2070C8, 0x03E6A36B,
- 0x3FF00588, 0xF4000000, 0x3E2BC6D9, 0x6630A33F,
- 0x3FF0058C, 0xF8000000, 0xBE3BF0BD, 0x0EE72CBF,
- 0x3FF00590, 0xF8000000, 0xBE16D385, 0x0FC1A853,
- 0x3FF00594, 0xF8000000, 0x3E309700, 0x17FDFD5D,
- 0x3FF00598, 0xFC000000, 0xBE390D18, 0xF71A91AC,
- 0x3FF0059C, 0xFC000000, 0xBE050963, 0x69C58B86,
- 0x3FF005A0, 0xFC000000, 0x3E33DAC5, 0xB9A504CD,
- 0x3FF005A5, 0x00000000, 0xBE359942, 0x7E800734,
- 0x3FF005A9, 0x00000000, 0x3DF02BAE, 0xE59934CD,
- 0x3FF005AD, 0x00000000, 0x3E37AEBE, 0x04333E0E,
- 0x3FF005B1, 0x04000000, 0xBE319539, 0x38F19C2F,
- 0x3FF005B5, 0x04000000, 0x3E14DB54, 0xEBB1C157,
- 0x3FF005B9, 0x04000000, 0x3E3C12E9, 0x63CED05D,
- 0x3FF005BD, 0x08000000, 0xBE2A01F9, 0x74921CAF,
- 0x3FF005C1, 0x08000000, 0x3E23F645, 0xC94C85F2,
- 0x3FF005C5, 0x0C000000, 0xBE3EF8B7, 0xBB61CBEE,
- 0x3FF005C9, 0x0C000000, 0xBE1F7232, 0x597F2931,
- 0x3FF005CD, 0x0C000000, 0x3E2E9F48, 0xAF5B7345,
- 0x3FF005D1, 0x10000000, 0xBE397424, 0xED37CD5F,
- 0x3FF005D5, 0x10000000, 0xBE013F43, 0x08775C6B,
- 0x3FF005D9, 0x10000000, 0x3E35345A, 0x0029D3DB,
- 0x3FF005DD, 0x14000000, 0xBE335F5D, 0xC58C1962,
- 0x3FF005E1, 0x14000000, 0x3E1073C1, 0x47430E04,
- 0x3FF005E5, 0x14000000, 0x3E3BA944, 0x4A41E248,
- 0x3FF005E9, 0x18000000, 0xBE2974C3, 0xB06E888E,
- 0x3FF005ED, 0x18000000, 0x3E25E3FB, 0xDCCD9333,
- 0x3FF005F1, 0x1C000000, 0xBE3D519C, 0x5DE27951,
- 0x3FF005F5, 0x1C000000, 0xBE1614C2, 0xE4464502,
- 0x3FF005F9, 0x1C000000, 0x3E325740, 0xE0DAFE93,
- 0x3FF005FD, 0x20000000, 0xBE35BC47, 0x8C1B4C10,
- 0x3FF00601, 0x20000000, 0x3E0201B0, 0x20686CE9,
- 0x3FF00605, 0x20000000, 0x3E3A4CB9, 0x95558B63,
- 0x3FF00609, 0x24000000, 0xBE2B2D79, 0xA880A3EB,
- 0x3FF0060D, 0x24000000, 0x3E252BA5, 0x9699EEB7,
- 0x3FF00611, 0x28000000, 0xBE3D2D97, 0x880115E1,
- 0x3FF00615, 0x28000000, 0xBE1383EF, 0x28A3D788,
- 0x3FF00619, 0x28000000, 0x3E337BA6, 0x08D6DC23,
- 0x3FF0061D, 0x2C000000, 0xBE3417B2, 0x0B001A08,
- 0x3FF00621, 0x2C000000, 0x3E1193EF, 0xF94EB99A,
- 0x3FF00625, 0x2C000000, 0x3E3CF1B0, 0x28D3BD3B,
- 0x3FF00629, 0x30000000, 0xBE24E32B, 0x0EFCC982,
- 0x3FF0062D, 0x30000000, 0x3E2C7655, 0xE2BDA47F,
- 0x3FF00631, 0x34000000, 0xBE39080E, 0x689312F8,
- 0x3FF00635, 0x34000000, 0xBDCDA0C8, 0xA9444DB4,
- 0x3FF00639, 0x34000000, 0x3E38A191, 0x7B21FE23,
- 0x3FF0063D, 0x38000000, 0xBE2CE32A, 0x7E67E1E1,
- 0x3FF00641, 0x38000000, 0x3E251694, 0x875A71F0,
- 0x3FF00645, 0x3C000000, 0xBE3C67CF, 0xF838F455,
- 0x3FF00649, 0x3C000000, 0xBE0A571F, 0x77274052,
- 0x3FF0064D, 0x3C000000, 0x3E35E20E, 0x63AAEFA8,
- 0x3FF00651, 0x40000000, 0xBE30E0F8, 0xFC87DA70,
- 0x3FF00655, 0x40000000, 0x3E20D80B, 0xE9089AFD,
- 0x3FF00659, 0x44000000, 0xBE3E36F4, 0xC52F03BD,
- 0x3FF0065D, 0x44000000, 0xBE1327A4, 0x9680E14E,
- 0x3FF00661, 0x44000000, 0x3E34B328, 0xD732468D,
- 0x3FF00665, 0x48000000, 0xBE31BFBE, 0xCAB5EF4A,
- 0x3FF00669, 0x48000000, 0x3E1F757F, 0xE2A2FBE1,
- 0x3FF0066D, 0x4C000000, 0xBE3E757A, 0xDAB014DA,
- 0x3FF00671, 0x4C000000, 0xBE12E13D, 0x02FB3FBB,
- 0x3FF00675, 0x4C000000, 0x3E3514E2, 0xCA7E298D,
- 0x3FF00679, 0x50000000, 0xBE310DE4, 0xB4F78B94,
- 0x3FF0067D, 0x50000000, 0x3E21BEB4, 0x89C35D05,
- 0x3FF00681, 0x54000000, 0xBE3D2360, 0x43F4895C,
- 0x3FF00685, 0x54000000, 0xBE08B0A2, 0x5BC49ADF,
- 0x3FF00689, 0x54000000, 0x3E37073E, 0x32573159,
- 0x3FF0068D, 0x58000000, 0xBE2D96D1, 0x8D0732D2,
- 0x3FF00691, 0x58000000, 0x3E26E3ED, 0x9BF15E67,
- 0x3FF00695, 0x5C000000, 0xBE3A40A3, 0x0C3250FB,
- 0x3FF00699, 0x5C000000, 0x3DBCC9AE, 0xFD0AE214,
- 0x3FF0069D, 0x5C000000, 0x3E3A8A3D, 0x038868A1,
- 0x3FF006A1, 0x60000000, 0xBE25F092, 0x151D21CE,
- 0x3FF006A5, 0x60000000, 0x3E2F2A6F, 0x11738C43,
- 0x3FF006A9, 0x64000000, 0xBE35CD41, 0x3E9CE96D,
- 0x3FF006AD, 0x64000000, 0x3E138132, 0x8DBC2918,
- 0x3FF006B1, 0x64000000, 0x3E3F9DE1, 0x32DF4C13,
- 0x3FF006B5, 0x68000000, 0xBE16520E, 0x3129E0B2,
- 0x3FF006B9, 0x68000000, 0x3E35491E, 0x69F36A61,
- 0x3FF006BD, 0x6C000000, 0xBE2F9271, 0xCCCABCD4,
- 0x3FF006C1, 0x6C000000, 0x3E2668ED, 0x0D59B899,
- 0x3FF006C5, 0x70000000, 0xBE39BDD3, 0x4AD435A0,
- 0x3FF006C9, 0x70000000, 0x3DF5FE9A, 0x9191CABB,
- 0x3FF006CD, 0x70000000, 0x3E3C8DAD, 0x6676850B,
- 0x3FF006D1, 0x74000000, 0xBE206910, 0x1D74934A,
- 0x3FF006D5, 0x74000000, 0x3E331949, 0x4D886478,
- 0x3FF006D9, 0x78000000, 0xBE3188DE, 0x80BFBBC2,
- 0x3FF006DD, 0x78000000, 0x3E23CA01, 0x14DE1719,
- 0x3FF006E1, 0x7C000000, 0xBE3A9D19, 0x8CE98EC0,
- 0x3FF006E5, 0x7C000000, 0x3DEE1A67, 0xA705A6E7,
- 0x3FF006E9, 0x7C000000, 0x3E3C8EC6, 0xECD5F851,
- 0x3FF006ED, 0x80000000, 0xBE1F0CF9, 0xE839CE4D,
- 0x3FF006F1, 0x80000000, 0x3E33FAC3, 0x0C8CA46A,
- 0x3FF006F5, 0x84000000, 0xBE303734, 0x7B5703D8,
- 0x3FF006F9, 0x84000000, 0x3E274DB5, 0xE490A112,
- 0x3FF006FD, 0x88000000, 0xBE386B0E, 0xA693A093,
- 0x3FF00701, 0x88000000, 0x3E0C9875, 0xF0B73DAA,
- 0x3FF00705, 0x88000000, 0x3E3FA133, 0x2449A944,
- 0x3FF00709, 0x8C000000, 0xBE110285, 0xBFE66C14,
- 0x3FF0070D, 0x8C000000, 0x3E37ED91, 0x054EDCBD,
- 0x3FF00711, 0x90000000, 0xBE27A86A, 0xEFB65924,
- 0x3FF00715, 0x90000000, 0x3E307A0B, 0x1C8A0CF1,
- 0x3FF00719, 0x94000000, 0xBE3327AD, 0x397FB1D6,
- 0x3FF0071D, 0x94000000, 0x3E228D43, 0x1412B9FB,
- 0x3FF00721, 0x98000000, 0xBE3A3B08, 0x94D8FFB0,
- 0x3FF00725, 0x98000000, 0x3E029AA3, 0x6ED80040,
- 0x3FF00729, 0x98000000, 0x3E3EF1B8, 0x9627250A,
- 0x3FF0072D, 0x9C000000, 0xBE117F70, 0x5FCB1B09,
- 0x3FF00731, 0x9C000000, 0x3E385E96, 0x678F0789,
- 0x3FF00735, 0xA0000000, 0xBE25A5DF, 0xCEA3485B,
- 0x3FF00739, 0xA0000000, 0x3E320B90, 0xFF6D0303,
- 0x3FF0073D, 0xA4000000, 0xBE3105E6, 0xE03334FF,
- 0x3FF00741, 0xA4000000, 0x3E27F150, 0xFB9F056D,
- 0x3FF00745, 0xA8000000, 0xBE36F8C0, 0xE28905F4,
- 0x3FF00749, 0xA8000000, 0x3E189774, 0x0B1407AA,
- 0x3FF0074D, 0xAC000000, 0xBE3CAB7D, 0xCE4493C4,
- 0x3FF00751, 0xAC000000, 0x3DE265D5, 0xCB817D78,
- 0x3FF00755, 0xAC000000, 0x3E3DE1E2, 0x7CA8B4E3,
- 0x3FF00759, 0xB0000000, 0xBE12FD89, 0x7D730FC6,
- 0x3FF0075D, 0xB0000000, 0x3E38AF60, 0x1E4D7759,
- 0x3FF00761, 0xB4000000, 0xBE23A3AC, 0x0CAD84A2,
- 0x3FF00765, 0xB4000000, 0x3E33BCFB, 0x36B866FD,
- 0x3FF00769, 0xB8000000, 0xBE2D4858, 0x4D0667A1,
- 0x3FF0076D, 0xB8000000, 0x3E2E1567, 0xCBF08E6A,
- 0x3FF00771, 0xBC000000, 0xBE333664, 0x9FD34D05,
- 0x3FF00775, 0xBC000000, 0x3E253114, 0x9837D6E0,
- 0x3FF00779, 0xC0000000, 0xBE37887F, 0x5238327D,
- 0x3FF0077D, 0xC0000000, 0x3E1999FA, 0x24C8DC90,
- 0x3FF00781, 0xC4000000, 0xBE3B9A7C, 0x1DA2F8BE,
- 0x3FF00785, 0xC4000000, 0x3E03A485, 0xEA50EE6A,
- 0x3FF00789, 0xC8000000, 0xBE3F6C5A, 0xE204A449,
- 0x3FF0078D, 0xC8000000, 0xBDF3D3EF, 0x78D5D0F3,
- 0x3FF00791, 0xC8000000, 0x3E3D01E4, 0x80B1D66C,
- 0x3FF00795, 0xCC000000, 0xBE12BBC1, 0xD5149796,
- 0x3FF00799, 0xCC000000, 0x3E39B042, 0x2A8F92F0,
- 0x3FF0079D, 0xD0000000, 0xBE1F820E, 0x6F386487,
- 0x3FF007A1, 0xD0000000, 0x3E369EBE, 0x3BA3BCDA,
- 0x3FF007A5, 0xD4000000, 0xBE25A3F0, 0x96320652,
- 0x3FF007A9, 0xD4000000, 0x3E33CD58, 0xD3FD8FCA,
- 0x3FF007AD, 0xD8000000, 0xBE2B069C, 0xC62D40B1,
- 0x3FF007B1, 0xD8000000, 0x3E313C12, 0x13AC5766,
- 0x3FF007B5, 0xDC000000, 0xBE2FE90B, 0x876F3A0B,
- 0x3FF007B9, 0xDC000000, 0x3E2DD5D4, 0x357EDEB8,
- 0x3FF007BD, 0xE0000000, 0xBE32259E, 0x4CEC957E,
- 0x3FF007C1, 0xE0000000, 0x3E29B3C2, 0x128C86C6,
- 0x3FF007C5, 0xE4000000, 0xBE341697, 0xDEA61608,
- 0x3FF007C9, 0xE4000000, 0x3E2611ED, 0xFEA09E70,
- 0x3FF007CD, 0xE8000000, 0xBE35C772, 0x58D49AE3,
- 0x3FF007D1, 0xE8000000, 0x3E22F058, 0x39DA3D42,
- 0x3FF007D5, 0xEC000000, 0xBE37382D, 0x9B689043,
- 0x3FF007D9, 0xEC000000, 0x3E204F01, 0x04589AD6,
- 0x3FF007DD, 0xF0000000, 0xBE3868C9, 0x86525259,
- 0x3FF007E1, 0xF0000000, 0x3E1C5BD1, 0x3C761DAC,
- 0x3FF007E5, 0xF4000000, 0xBE395945, 0xF9822D4C,
- 0x3FF007E9, 0xF4000000, 0x3E191A1E, 0x8F4221F9,
- 0x3FF007ED, 0xF8000000, 0xBE3A09A2, 0xD4E85D3A,
- 0x3FF007F1, 0xF8000000, 0x3E16D8EA, 0x81547225,
- 0x3FF007F5, 0xFC000000, 0xBE3A79DF, 0xF8750E3B,
- 0x3FF007F9, 0xFC000000, 0x3E159835, 0x92EC7DE3,
- 0x3FF007FE, 0x00000000, 0xBE3AA9FD, 0x44185C5D } };
-
-#else
-#ifdef LITTLE_ENDI
-
-static const union {
- int i[1424];
- double x[712];
-} coar = { .i = {
- 0xC8000000, 0x3FE69A59, 0x6079C9F7, 0x3DF22D4D,
- 0xC8000000, 0x3FE6A5A9, 0x25AF6823, 0x3E19882D,
- 0x74000000, 0x3FE6B0FF, 0x31DABF59, 0xBE221476,
- 0xC8000000, 0x3FE6BC5A, 0x99A2DC0A, 0x3E2312AC,
- 0xD0000000, 0x3FE6C7BB, 0xCE9F9355, 0xBE265926,
- 0x84000000, 0x3FE6D322, 0x2D298DED, 0x3E2F2C26,
- 0xF4000000, 0x3FE6DE8E, 0x1E748D2F, 0xBE2EC28E,
- 0x14000000, 0x3FE6EA01, 0xC68CB7E5, 0x3E2D8C6D,
- 0xF4000000, 0x3FE6F578, 0x419FE2F0, 0x3DEE1A9E,
- 0x90000000, 0x3FE700F6, 0xDEAEAE34, 0xBDFF1AFD,
- 0xEC000000, 0x3FE70C79, 0x558B7122, 0xBE0730FE,
- 0x0C000000, 0x3FE71803, 0x2D280C3B, 0xBE25CB85,
- 0xF0000000, 0x3FE72391, 0x337B7B54, 0xBE06F2CE,
- 0x9C000000, 0x3FE72F26, 0x45C02B72, 0x3E289BCA,
- 0x18000000, 0x3FE73AC1, 0x5039F1CA, 0xBE18DEA6,
- 0x60000000, 0x3FE74661, 0x86CE0538, 0xBE09D090,
- 0x78000000, 0x3FE75207, 0xCFCE5DDB, 0x3E290E79,
- 0x68000000, 0x3FE75DB3, 0xB249A17C, 0x3DD61DF0,
- 0x2C000000, 0x3FE76965, 0xE13445F7, 0x3E2F22F7,
- 0xD0000000, 0x3FE7751C, 0x874E75CE, 0xBE2CD454,
- 0x4C000000, 0x3FE780DA, 0xDF43E3BC, 0xBE0159CE,
- 0xA8000000, 0x3FE78C9D, 0x699A1332, 0x3E279291,
- 0xEC000000, 0x3FE79866, 0x2DD98C6C, 0xBE2A0BCD,
- 0x10000000, 0x3FE7A436, 0x15AC979E, 0x3E25F375,
- 0x20000000, 0x3FE7B00B, 0x2FEAFCF6, 0x3E26CCF5,
- 0x1C000000, 0x3FE7BBE6, 0x53ADAD67, 0x3E27D4F4,
- 0x08000000, 0x3FE7C7C7, 0x7FBD9566, 0x3E10EEC7,
- 0xE4000000, 0x3FE7D3AD, 0x9A831D86, 0x3E2837F0,
- 0xB8000000, 0x3FE7DF9A, 0x5CB4C35B, 0xBE129BE0,
- 0x80000000, 0x3FE7EB8D, 0x0234F04D, 0x3E23990A,
- 0x44000000, 0x3FE7F786, 0x64D5C842, 0x3E2EB807,
- 0x08000000, 0x3FE80385, 0x02B4E9E8, 0x3E0FC86F,
- 0xCC000000, 0x3FE80F89, 0x7B4274BF, 0xBDD7B5B3,
- 0x94000000, 0x3FE81B94, 0xB899B00F, 0xBE16888B,
- 0x60000000, 0x3FE827A5, 0x5E94D155, 0x3E288971,
- 0x38000000, 0x3FE833BC, 0x099F3E5E, 0x3E2AEEB2,
- 0x20000000, 0x3FE83FD9, 0x3FF60B7C, 0xBE23B922,
- 0x14000000, 0x3FE84BFC, 0x2DBD8012, 0xBDF7D3B1,
- 0x1C000000, 0x3FE85825, 0xA8872BEB, 0xBDF24BA3,
- 0x38000000, 0x3FE86454, 0x01AA18A7, 0x3E2EFE04,
- 0x70000000, 0x3FE87089, 0x944496A2, 0x3E21986C,
- 0xC4000000, 0x3FE87CC4, 0xB71FFAFF, 0x3E096A8B,
- 0x38000000, 0x3FE88906, 0xBC4C7AC5, 0xBE21CE0A,
- 0xCC000000, 0x3FE8954D, 0xBAC02491, 0xBE076F45,
- 0x84000000, 0x3FE8A19B, 0xD922B925, 0x3E2B4FA2,
- 0x68000000, 0x3FE8ADEF, 0x641863AF, 0x3DF759DB,
- 0x78000000, 0x3FE8BA49, 0xC6AB5E04, 0xBE2DB97C,
- 0xB4000000, 0x3FE8C6A9, 0xE2156713, 0xBE25364C,
- 0x20000000, 0x3FE8D310, 0x862BEFF7, 0x3E1BEB7C,
- 0xC4000000, 0x3FE8DF7C, 0x1CEA33A5, 0xBDF4DD0C,
- 0xA0000000, 0x3FE8EBEF, 0x51797D47, 0xBE2537DF,
- 0xB4000000, 0x3FE8F868, 0xF0107B28, 0x3E0FB1C4,
- 0x08000000, 0x3FE904E8, 0xE01B68BD, 0x3E0AD6A1,
- 0x9C000000, 0x3FE9116D, 0x1F78D9D9, 0x3E292117,
- 0x78000000, 0x3FE91DF9, 0x4F50E5CF, 0xBE1D75DA,
- 0x98000000, 0x3FE92A8B, 0x74959E58, 0x3DE5102B,
- 0x04000000, 0x3FE93724, 0xD2216C35, 0xBE01CA50,
- 0xBC000000, 0x3FE943C2, 0xB0B05884, 0x3E225BFD,
- 0xC8000000, 0x3FE95067, 0x60B7C5C1, 0xBE0F2183,
- 0x24000000, 0x3FE95D13, 0xB5860441, 0x3E2FB47A,
- 0xDC000000, 0x3FE969C4, 0xE2D4059E, 0xBE01FFD2,
- 0xEC000000, 0x3FE9767C, 0x12BB6A8D, 0xBDE9ED72,
- 0x58000000, 0x3FE9833B, 0x43BFFB24, 0x3E2B3815,
- 0x28000000, 0x3FE99000, 0xEE9EAD1E, 0x3E03FA22,
- 0x5C000000, 0x3FE99CCB, 0x377138F7, 0xBE213841,
- 0xF4000000, 0x3FE9A99C, 0xDB636C94, 0x3E178105,
- 0xF8000000, 0x3FE9B674, 0xF5720122, 0x3E1E5E7A,
- 0x6C000000, 0x3FE9C353, 0xA2AC5AAE, 0xBE238BFF,
- 0x4C000000, 0x3FE9D038, 0xF93BDBD8, 0x3E270893,
- 0xA4000000, 0x3FE9DD23, 0x354B86CF, 0x3DF40420,
- 0x74000000, 0x3FE9EA15, 0x88CB06B7, 0xBE2D76D3,
- 0xBC000000, 0x3FE9F70D, 0x9ED0EC60, 0xBE251639,
- 0x80000000, 0x3FEA040C, 0xE2DDE506, 0x3E1F06E9,
- 0xC8000000, 0x3FEA1111, 0x8E6DB477, 0x3E014549,
- 0x94000000, 0x3FEA1E1D, 0xF8716509, 0xBDF4BC17,
- 0xE8000000, 0x3FEA2B2F, 0xDA723A49, 0xBE2107DB,
- 0xC4000000, 0x3FEA3848, 0x986AA369, 0x3E1A932A,
- 0x30000000, 0x3FEA4568, 0x41592CDB, 0x3E198092,
- 0x30000000, 0x3FEA528E, 0x676BCAB8, 0xBE2E260F,
- 0xC0000000, 0x3FEA5FBA, 0x2D5D5610, 0x3DE2E821,
- 0xE8000000, 0x3FEA6CED, 0x7DA20167, 0x3E2F7046,
- 0xB0000000, 0x3FEA7A27, 0xF9FAAD30, 0xBE1D2832,
- 0x14000000, 0x3FEA8768, 0x43FA6C45, 0xBE23F788,
- 0x18000000, 0x3FEA94AF, 0xAA082732, 0x3E011E27,
- 0xC4000000, 0x3FEAA1FC, 0xC682F0BF, 0xBE20BACB,
- 0x18000000, 0x3FEAAF51, 0x7BD08C78, 0xBE2DC7DD,
- 0x14000000, 0x3FEABCAC, 0xA3B10F9A, 0x3E2271A2,
- 0xC4000000, 0x3FEACA0D, 0x7966F94C, 0xBE15449C,
- 0x24000000, 0x3FEAD776, 0x6FD8F3EE, 0x3DD06137,
- 0x3C000000, 0x3FEAE4E5, 0x8C5A144A, 0xBE267CD1,
- 0x0C000000, 0x3FEAF25B, 0xB59DA94B, 0xBE29E584,
- 0x98000000, 0x3FEAFFD7, 0x7B52192F, 0xBE23DFCF,
- 0xE4000000, 0x3FEB0D5A, 0x78A76B45, 0xBE1CF2FE,
- 0xF4000000, 0x3FEB1AE4, 0x7EC80FF6, 0xBE23A561,
- 0xC8000000, 0x3FEB2875, 0x932EED68, 0x3E22C4C9,
- 0x68000000, 0x3FEB360D, 0xB5833C97, 0x3E2B085C,
- 0xD8000000, 0x3FEB43AB, 0x93B9319A, 0xBE01F093,
- 0x18000000, 0x3FEB5151, 0xFABCE670, 0xBE254F01,
- 0x28000000, 0x3FEB5EFD, 0x627ABFB0, 0x3E2F24C2,
- 0x14000000, 0x3FEB6CB0, 0xE6AC0B48, 0x3E1F1EEC,
- 0xDC000000, 0x3FEB7A69, 0x127F9ABC, 0xBE1A8671,
- 0x80000000, 0x3FEB882A, 0xC87C73B3, 0xBDCB0C28,
- 0x08000000, 0x3FEB95F2, 0x7F2B5A97, 0xBE22E8DD,
- 0x74000000, 0x3FEBA3C0, 0x2D22A9D5, 0xBE1B3645,
- 0xC8000000, 0x3FEBB195, 0x428F8B88, 0x3E0ADACA,
- 0x0C000000, 0x3FEBBF72, 0xCDF9F681, 0xBE2E9E07,
- 0x3C000000, 0x3FEBCD55, 0x7FA54ACF, 0xBE08A127,
- 0x60000000, 0x3FEBDB3F, 0x8225B385, 0x3E0E92CE,
- 0x7C000000, 0x3FEBE930, 0x7BB09485, 0x3DF38C2A,
- 0x94000000, 0x3FEBF728, 0xF681FA5F, 0xBE2DFD64,
- 0xA4000000, 0x3FEC0527, 0xDCE88BD2, 0x3E2E384D,
- 0xBC000000, 0x3FEC132D, 0xFE46A893, 0xBE20F111,
- 0xD4000000, 0x3FEC213A, 0xB189BFDA, 0x3E193DA1,
- 0xF8000000, 0x3FEC2F4E, 0x0E39FB00, 0xBE20E3A1,
- 0x24000000, 0x3FEC3D6A, 0x30F0FAC5, 0x3E1DB044,
- 0x64000000, 0x3FEC4B8C, 0x97446B17, 0xBE2BC12C,
- 0xB4000000, 0x3FEC59B5, 0x963F4150, 0xBE282696,
- 0x18000000, 0x3FEC67E6, 0x3049824B, 0x3E224D26,
- 0x98000000, 0x3FEC761D, 0x87F84C7D, 0x3E2C5BA5,
- 0x38000000, 0x3FEC845C, 0xC4852339, 0xBDE1D14D,
- 0xF8000000, 0x3FEC92A1, 0x5588D9E1, 0xBE1A451E,
- 0xDC000000, 0x3FECA0EE, 0x68BFF457, 0xBE1D3B96,
- 0xE8000000, 0x3FECAF42, 0x4DADF774, 0xBE18B670,
- 0x20000000, 0x3FECBD9E, 0x7FB1FC01, 0xBE1A1548,
- 0x88000000, 0x3FECCC00, 0x78FC5AF0, 0xBE273F2E,
- 0x20000000, 0x3FECDA6A, 0xA6F4A841, 0x3E1D218F,
- 0xF0000000, 0x3FECE8DA, 0x4D002CA0, 0x3E2E0BA9,
- 0xFC000000, 0x3FECF752, 0x065EF979, 0x3E20F4BB,
- 0x48000000, 0x3FED05D2, 0x11793B33, 0xBE2ED3D5,
- 0xD0000000, 0x3FED1458, 0x913341B3, 0x3E115E3C,
- 0xA0000000, 0x3FED22E6, 0xB3546109, 0x3DE97C02,
- 0xB8000000, 0x3FED317B, 0x1BF898EF, 0x3E087540,
- 0x1C000000, 0x3FED4018, 0x346F9641, 0x3E209430,
- 0xD0000000, 0x3FED4EBB, 0x88F4B20B, 0x3E2B6DF4,
- 0xDC000000, 0x3FED5D66, 0x0CB26035, 0xBE2EC68F,
- 0x38000000, 0x3FED6C19, 0x1F44D9C3, 0x3E2CA2C8,
- 0xF4000000, 0x3FED7AD2, 0x41704EE0, 0x3E10E6F4,
- 0x0C000000, 0x3FED8994, 0x25F8F0E2, 0x3E2F9273,
- 0x88000000, 0x3FED985C, 0x318798DE, 0x3E2D041A,
- 0x6C000000, 0x3FEDA72C, 0x9349CF58, 0xBE005680,
- 0xB8000000, 0x3FEDB603, 0xCF0C934D, 0xBE10F665,
- 0x70000000, 0x3FEDC4E2, 0x19461C64, 0x3E166124,
- 0x9C000000, 0x3FEDD3C8, 0x405624C8, 0xBE1B2ED6,
- 0x3C000000, 0x3FEDE2B6, 0x62171501, 0xBE273A7F,
- 0x54000000, 0x3FEDF1AB, 0xE36E1450, 0xBE26022B,
- 0xE8000000, 0x3FEE00A7, 0x2E07AE15, 0xBE1C341E,
- 0xFC000000, 0x3FEE0FAB, 0x18D0E701, 0xBDFC7EAE,
- 0x94000000, 0x3FEE1EB7, 0xECD1FF8B, 0x3E06B34F,
- 0xB4000000, 0x3FEE2DCA, 0x6813A649, 0x3E1394A3,
- 0x60000000, 0x3FEE3CE5, 0xC1754D14, 0x3E045496,
- 0x9C000000, 0x3FEE4C07, 0xF5C6087C, 0xBE180FFF,
- 0x68000000, 0x3FEE5B31, 0xADD9A300, 0x3E22FBCD,
- 0xCC000000, 0x3FEE6A62, 0xAF0289E5, 0x3E2EC7C7,
- 0xCC000000, 0x3FEE799B, 0x3FB3EDD4, 0x3E242182,
- 0x6C000000, 0x3FEE88DC, 0x04E39885, 0xBE201304,
- 0xAC000000, 0x3FEE9824, 0xE6831D31, 0xBE20D352,
- 0x90000000, 0x3FEEA774, 0x618DFCEB, 0x3E1E032D,
- 0x20000000, 0x3FEEB6CC, 0xF9BB457E, 0x3E1956A3,
- 0x60000000, 0x3FEEC62B, 0x50845DB2, 0xBE2A77E0,
- 0x4C000000, 0x3FEED592, 0x47C43858, 0x3E2714F7,
- 0xF0000000, 0x3FEEE500, 0x71813A66, 0x3E2EED96,
- 0x50000000, 0x3FEEF477, 0x4FB4AA34, 0xBE04CDBE,
- 0x6C000000, 0x3FEF03F5, 0x86EB4FF5, 0xBE2774A2,
- 0x48000000, 0x3FEF137B, 0xAD43B2D2, 0xBE29DD95,
- 0xE8000000, 0x3FEF2308, 0xAC16E506, 0xBE1CADB0,
- 0x50000000, 0x3FEF329E, 0x58745C7B, 0x3E12AC33,
- 0x88000000, 0x3FEF423B, 0x6EC2D854, 0xBE248118,
- 0x8C000000, 0x3FEF51E0, 0x304ACE08, 0x3E26986B,
- 0x68000000, 0x3FEF618D, 0x3B09354E, 0x3E126D81,
- 0x1C000000, 0x3FEF7142, 0x773C23B3, 0x3DF06AAE,
- 0xAC000000, 0x3FEF80FE, 0xD82EF423, 0xBDA105B6,
- 0x1C000000, 0x3FEF90C3, 0x465499B8, 0x3DECDEED,
- 0x70000000, 0x3FEFA08F, 0xE2EF03AE, 0x3E0AEFD4,
- 0xAC000000, 0x3FEFB063, 0x0567B2E7, 0x3E1BD4C0,
- 0xD4000000, 0x3FEFC03F, 0x4F97FCBF, 0x3E26AA22,
- 0xF0000000, 0x3FEFD023, 0x5E4E88D1, 0xBE2F9420,
- 0xFC000000, 0x3FEFE00F, 0x438E52E2, 0xBE254004,
- 0x00000000, 0x3FEFF004, 0xEEE93EFC, 0xBE1552AA,
- 0x00000000, 0x3FF00000, 0x00000000, 0x00000000,
- 0x00000000, 0x3FF00802, 0x4449F507, 0x3E155800,
- 0x04000000, 0x3FF01008, 0x882D75D6, 0xBE354AA8,
- 0x08000000, 0x3FF01812, 0x3740DE56, 0x3E303610,
- 0x14000000, 0x3FF02020, 0x5B0C3264, 0x3E360044,
- 0x28000000, 0x3FF02832, 0x0197EDC3, 0x3E3C4C26,
- 0x48000000, 0x3FF03048, 0x5046CA09, 0x3E0B103B,
- 0x74000000, 0x3FF03862, 0xF9A62624, 0xBE34659C,
- 0xAC000000, 0x3FF04080, 0xDD0A8F37, 0xBE254438,
- 0xF4000000, 0x3FF048A2, 0x97AFB6E2, 0x3DF256C2,
- 0x50000000, 0x3FF050C9, 0x923D25E1, 0xBE3085DF,
- 0xC0000000, 0x3FF058F3, 0x5EA3B091, 0xBE3F0A93,
- 0x44000000, 0x3FF06122, 0x5D63534C, 0xBE237DE4,
- 0xE0000000, 0x3FF06954, 0xFF0C58B7, 0x3E301719,
- 0x98000000, 0x3FF0718B, 0x9DF7B665, 0x3E2E8410,
- 0x6C000000, 0x3FF079C6, 0x3B127222, 0x3E349CB9,
- 0x60000000, 0x3FF08205, 0x98E0BD08, 0x3DF127EC,
- 0x74000000, 0x3FF08A48, 0x706CC41F, 0xBE24C1B6,
- 0xA8000000, 0x3FF0928F, 0x093044EF, 0x3E334EF9,
- 0x04000000, 0x3FF09ADB, 0x56BC6C83, 0xBE1304B1,
- 0x84000000, 0x3FF0A32A, 0xB028B984, 0x3E2D383E,
- 0x30000000, 0x3FF0AB7E, 0x64E7A202, 0xBE315B1E,
- 0x04000000, 0x3FF0B3D6, 0xC678291E, 0xBE0AC1E6,
- 0x04000000, 0x3FF0BC32, 0x2F12FFE2, 0x3E3A0418,
- 0x38000000, 0x3FF0C492, 0x43D6D302, 0xBE37D617,
- 0x98000000, 0x3FF0CCF6, 0x152CC8FA, 0x3E2133F2,
- 0x2C000000, 0x3FF0D55F, 0xE966E6B7, 0x3E3CE5D1,
- 0xF8000000, 0x3FF0DDCB, 0x7BCACA64, 0x3E1ABF24,
- 0xFC000000, 0x3FF0E63C, 0x2E8CDBED, 0xBE3854F6,
- 0x38000000, 0x3FF0EEB2, 0x0C32156B, 0xBE3E6463,
- 0xAC000000, 0x3FF0F72B, 0xB69772CC, 0x3E365671,
- 0x64000000, 0x3FF0FFA9, 0x02B1201A, 0xBE383E9A,
- 0x58000000, 0x3FF1082B, 0x50549CC0, 0xBE205962,
- 0x90000000, 0x3FF110B1, 0xFFDACA72, 0xBE376BFE,
- 0x08000000, 0x3FF1193C, 0x5C43E2F3, 0x3E3C1C59,
- 0xCC000000, 0x3FF121CA, 0xF7067C8B, 0xBE26D374,
- 0xD4000000, 0x3FF12A5D, 0x4DDAFE1D, 0x3E343CCC,
- 0x28000000, 0x3FF132F5, 0x58EBCB7F, 0x3E3D5C16,
- 0xCC000000, 0x3FF13B90, 0xB66E8B53, 0xBE2B5D12,
- 0xBC000000, 0x3FF14430, 0xB326B482, 0xBE24E919,
- 0xFC000000, 0x3FF14CD4, 0xC8AABD43, 0x3E23139A,
- 0x90000000, 0x3FF1557D, 0x16743B55, 0x3E30DD8B,
- 0x7C000000, 0x3FF15E2A, 0x35904C50, 0xBE31D701,
- 0xBC000000, 0x3FF166DB, 0x30E0CA83, 0x3E107F42,
- 0x58000000, 0x3FF16F91, 0xDA1B7123, 0xBE24F1F2,
- 0x50000000, 0x3FF1784B, 0x0DC79E23, 0xBE3ACAF2,
- 0xA4000000, 0x3FF18109, 0x609374EE, 0xBE23DC79,
- 0x58000000, 0x3FF189CC, 0x3A40C3B7, 0x3E262CF7,
- 0x70000000, 0x3FF19293, 0x5A24F463, 0x3E1D3833,
- 0xEC000000, 0x3FF19B5E, 0x8A2E4440, 0x3E2BA9AD,
- 0xD0000000, 0x3FF1A42E, 0x61C41828, 0x3DFD8CBC,
- 0x1C000000, 0x3FF1AD03, 0x5A4DDF0D, 0x3E1A65E6,
- 0xD4000000, 0x3FF1B5DB, 0x9F828DB5, 0xBDE2FDBB,
- 0xF8000000, 0x3FF1BEB8, 0xB79B700F, 0x3E2F4EE8,
- 0x8C000000, 0x3FF1C79A, 0x0DE1D7E8, 0x3E3ACC35,
- 0x94000000, 0x3FF1D080, 0xFF9E20A0, 0x3E11729E,
- 0x10000000, 0x3FF1D96B, 0x6C2EA70B, 0xBE300F18,
- 0x00000000, 0x3FF1E25A, 0xCE425A35, 0x3DF32E02,
- 0x68000000, 0x3FF1EB4D, 0x9A322D12, 0x3E3BDE56,
- 0x50000000, 0x3FF1F445, 0xBA737AEF, 0xBE3C3F0D,
- 0xB0000000, 0x3FF1FD41, 0xC896DB7A, 0xBE0A2DD0,
- 0x90000000, 0x3FF20642, 0xF8B782F6, 0x3E2577B0,
- 0xF4000000, 0x3FF20F47, 0x73607FC8, 0xBE2C6DA3,
- 0xD8000000, 0x3FF21851, 0xC8917348, 0x3E35F7D1,
- 0x44000000, 0x3FF22160, 0xCF9CED69, 0x3E3B6F5C,
- 0x3C000000, 0x3FF22A73, 0x85775C2E, 0xBE39967E,
- 0xB8000000, 0x3FF2338A, 0x497226D4, 0x3E3B3213,
- 0xC4000000, 0x3FF23CA6, 0x30733227, 0x3E3E2710,
- 0x60000000, 0x3FF245C7, 0xAF215A72, 0x3E33B8A9,
- 0x90000000, 0x3FF24EEC, 0x1365623F, 0xBE3F96B2,
- 0x50000000, 0x3FF25816, 0x27DEE202, 0xBE37324F,
- 0xA4000000, 0x3FF26144, 0x4E484D87, 0x3E318CD5,
- 0x94000000, 0x3FF26A77, 0xA94519E8, 0xBDE3FD37,
- 0x1C000000, 0x3FF273AF, 0xEE788C29, 0x3E37132F,
- 0x44000000, 0x3FF27CEB, 0xE842E5C0, 0xBE03DDB7,
- 0x08000000, 0x3FF2862C, 0xE17C9693, 0x3E37A3FB,
- 0x70000000, 0x3FF28F71, 0xAEB3D9A0, 0x3E24EABF,
- 0x7C000000, 0x3FF298BB, 0x853B0733, 0xBE13C7B6,
- 0x2C000000, 0x3FF2A20A, 0xC7B588B5, 0x3E2D2C80,
- 0x88000000, 0x3FF2AB5D, 0x708F3912, 0xBE35B750,
- 0x8C000000, 0x3FF2B4B5, 0xD5FD9130, 0xBE291A70,
- 0x3C000000, 0x3FF2BE12, 0x0CCF9F73, 0x3E2EE937,
- 0xA0000000, 0x3FF2C773, 0xD42CF76C, 0xBE3C3F0C,
- 0xB0000000, 0x3FF2D0D9, 0x60763D61, 0x3E35DD54,
- 0x78000000, 0x3FF2DA44, 0xE7D6AA3B, 0x3E26C418,
- 0xF8000000, 0x3FF2E3B3, 0x6FB9B7A8, 0xBE3605C6,
- 0x2C000000, 0x3FF2ED28, 0x24DCDDF5, 0x3E3763D4,
- 0x20000000, 0x3FF2F6A1, 0xA8EC1AA8, 0xBE1A411E,
- 0xD0000000, 0x3FF3001E, 0x1FE8546F, 0xBE23FCA1,
- 0x40000000, 0x3FF309A1, 0x3AAEE75E, 0xBE29DF0D,
- 0x70000000, 0x3FF31328, 0x3C2C4206, 0x3E36A5D6,
- 0x68000000, 0x3FF31CB4, 0xB4C979B0, 0x3E1B7A3E,
- 0x28000000, 0x3FF32645, 0x706CD593, 0xBE36157D,
- 0xB0000000, 0x3FF32FDA, 0x8DA4C646, 0xBE39F357,
- 0x04000000, 0x3FF33975, 0xD575FE6F, 0xBE3E64DE,
- 0x24000000, 0x3FF34314, 0x44D008E0, 0x3E07F9E3,
- 0x18000000, 0x3FF34CB8, 0x5A563E77, 0xBE2E94F9,
- 0xDC000000, 0x3FF35660, 0x2475EF19, 0x3E314DC2,
- 0x78000000, 0x3FF3600E, 0xA33AC606, 0x3E26D623,
- 0xEC000000, 0x3FF369C0, 0xC05B3160, 0x3E170F86,
- 0x3C000000, 0x3FF37378, 0xDB0AE31A, 0xBE38DDFE,
- 0x64000000, 0x3FF37D34, 0x5706B570, 0x3E3662A9,
- 0x70000000, 0x3FF386F5, 0x6770731E, 0xBE1625E4,
- 0x5C000000, 0x3FF390BB, 0x62971091, 0xBE1678F1,
- 0x2C000000, 0x3FF39A86, 0xD045CB0C, 0xBE061F7C,
- 0xE4000000, 0x3FF3A455, 0x568B1CA2, 0xBE35CF51,
- 0x84000000, 0x3FF3AE2A, 0x7FB61F58, 0xBE378185,
- 0x0C000000, 0x3FF3B804, 0x4FA133AF, 0x3E3F77F4,
- 0x88000000, 0x3FF3C1E2, 0xB00B73FE, 0xBE22F96A,
- 0xF0000000, 0x3FF3CBC5, 0x1EB4CE2F, 0x3E351A64,
- 0x50000000, 0x3FF3D5AE, 0xD3755639, 0xBE3D3516,
- 0xA0000000, 0x3FF3DF9B, 0x43E8C10E, 0x3E1CD938,
- 0xEC000000, 0x3FF3E98D, 0x455C8842, 0xBE35EE23,
- 0x30000000, 0x3FF3F385, 0x96C9F4ED, 0xBE29B282,
- 0x70000000, 0x3FF3FD81, 0x3168CC0B, 0x3E24A40E,
- 0xB0000000, 0x3FF40782, 0x86C72839, 0x3E3784BC,
- 0xF4000000, 0x3FF41188, 0x0785D847, 0x3E061F19,
- 0x3C000000, 0x3FF41B94, 0xE654A9C9, 0xBE27AEF2,
- 0x88000000, 0x3FF425A4, 0xF9E4C1BA, 0x3E33DFC3,
- 0xE0000000, 0x3FF42FB9, 0x593D0C75, 0x3E2455A8,
- 0x44000000, 0x3FF439D4, 0x238B65D1, 0xBDE41D4E,
- 0xB4000000, 0x3FF443F3, 0x454CBECB, 0x3E3BE616,
- 0x38000000, 0x3FF44E18, 0x931C5332, 0x3E207B3C,
- 0xD0000000, 0x3FF45841, 0x7615DCC9, 0xBE330846,
- 0x7C000000, 0x3FF46270, 0xE497F84E, 0xBE2A8A7B,
- 0x40000000, 0x3FF46CA4, 0xF737AF78, 0x3E020B50,
- 0x20000000, 0x3FF476DD, 0xE34AFBD3, 0x3E116B19,
- 0x20000000, 0x3FF4811B, 0x841EDB52, 0xBE3E15A7,
- 0x3C000000, 0x3FF48B5E, 0x33B3DE1E, 0x3E0F40C3,
- 0x7C000000, 0x3FF495A6, 0x92EFEE02, 0x3E33607F,
- 0xE4000000, 0x3FF49FF3, 0x14F7E168, 0xBE1A2DB5,
- 0x70000000, 0x3FF4AA46, 0x3EBA1C94, 0x3E3F59EC,
- 0x2C000000, 0x3FF4B49E, 0x8B9AE885, 0xBE31A539,
- 0x10000000, 0x3FF4BEFB, 0xF13C8C95, 0x3E2FAC0B,
- 0x28000000, 0x3FF4C95D, 0xF8B74775, 0xBE32C0BB,
- 0x70000000, 0x3FF4D3C4, 0x4F9474BB, 0xBE2FC24E,
- 0xEC000000, 0x3FF4DE30, 0x09DA911F, 0x3E008F30,
- 0xA0000000, 0x3FF4E8A2, 0xBAF8D98B, 0x3E2994C1,
- 0x90000000, 0x3FF4F319, 0x18648D0A, 0xBE17C38C,
- 0xBC000000, 0x3FF4FD95, 0xF22F8698, 0xBE288852,
- 0x28000000, 0x3FF50817, 0x30A2C153, 0xBE3C3EC3,
- 0xD4000000, 0x3FF5129D, 0x968492AA, 0xBE27B606,
- 0xC4000000, 0x3FF51D29, 0x61101629, 0x3E2E0396,
- 0xFC000000, 0x3FF527BA, 0xDAEEAB38, 0x3E3E876F,
- 0x80000000, 0x3FF53251, 0xED945B30, 0x3E29F59E,
- 0x50000000, 0x3FF53CED, 0x0B4AE3F1, 0x3E12D7DA,
- 0x70000000, 0x3FF5478E, 0x5FB946D0, 0xBE2FAFB8,
- 0xE0000000, 0x3FF55234, 0x87D80C66, 0xBE18A8B3,
- 0xA4000000, 0x3FF55CE0, 0x764CF85C, 0x3E28B18F,
- 0xC0000000, 0x3FF56791, 0x2BDBC6F4, 0x3E326017,
- 0x38000000, 0x3FF57248, 0x53D523FE, 0xBE229F98,
- 0x0C000000, 0x3FF57D04, 0x4D9B8720, 0xBE3BDD08,
- 0x3C000000, 0x3FF587C5, 0x09D8749E, 0x3E169EBC,
- 0xD0000000, 0x3FF5928B, 0x339C2080, 0x3E190C8C,
- 0xC8000000, 0x3FF59D57, 0xDE75E9CA, 0x3E310FA4,
- 0x28000000, 0x3FF5A829, 0x1097F186, 0x3E313D18,
- 0xF4000000, 0x3FF5B2FF, 0xD51C23F6, 0xBE2BDE04,
- 0x28000000, 0x3FF5BDDC, 0x8938C386, 0x3E3EE67E,
- 0xD0000000, 0x3FF5C8BD, 0x47DF6575, 0x3E0973B8,
- 0xE8000000, 0x3FF5D3A4, 0x1DB97781, 0x3E24DF02,
- 0x78000000, 0x3FF5DE91, 0xAC4AECDC, 0xBE3FBA00,
- 0x7C000000, 0x3FF5E983, 0x939F646A, 0xBE2F37AF,
- 0xFC000000, 0x3FF5F47A, 0x58A6EEE9, 0xBE396DEF,
- 0xF8000000, 0x3FF5FF77, 0xE3613C7B, 0xBE315248,
- 0x74000000, 0x3FF60A7A, 0xF1553706, 0xBE26A9E2,
- 0x74000000, 0x3FF61582, 0xAE4D7CB6, 0xBE3B6BF6,
- 0xF8000000, 0x3FF6208F, 0x9EB5EBA5, 0xBE35775B,
- 0x04000000, 0x3FF62BA3, 0xC1E43506, 0xBE2A821B,
- 0x9C000000, 0x3FF636BB, 0x7B2D8CF4, 0xBE367CDA,
- 0xC0000000, 0x3FF641D9, 0x3E907A1D, 0xBE13218B,
- 0x74000000, 0x3FF64CFD, 0x7BF5DFE4, 0x3E3454EE,
- 0xC0000000, 0x3FF65826, 0x6366C5FD, 0xBE3E960F,
- 0x9C000000, 0x3FF66355, 0x8B43C17E, 0x3E2E378F,
- 0x14000000, 0x3FF66E8A, 0xA4306535, 0x3E244BE0,
- 0x28000000, 0x3FF679C4, 0x8DF63D6E, 0xBDE4B6C1,
- 0xD8000000, 0x3FF68503, 0xE6A239CF, 0x3E3BA122,
- 0x2C000000, 0x3FF69049, 0x59FB5F30, 0x3E27F286,
- 0x24000000, 0x3FF69B94, 0x971D3970, 0xBE044041 } };
-
-static const union {
- int4 i[2048];
- double x[1024];
-} fine = { .i = {
- 0x00000000, 0x3FF00000, 0x00000000, 0x00000000,
- 0x00000000, 0x3FF00004, 0x55556AAB, 0x3DA00001,
- 0x00000000, 0x3FF00008, 0xAAAB0000, 0x3DC00002,
- 0x00000000, 0x3FF0000C, 0x8000D800, 0x3DD20004,
- 0x00000000, 0x3FF00010, 0x5556AAAB, 0x3DE00005,
- 0x00000000, 0x3FF00014, 0x6AADEC01, 0x3DE9000A,
- 0x00000000, 0x3FF00018, 0x00036001, 0x3DF20009,
- 0x00000000, 0x3FF0001C, 0x4AB0EB58, 0x3DF8800E,
- 0x00000000, 0x3FF00020, 0xAAB00002, 0x3E00000A,
- 0x00000000, 0x3FF00024, 0x30088B04, 0x3E04400F,
- 0x00000000, 0x3FF00028, 0xD5625AB1, 0x3E090014,
- 0x00000000, 0x3FF0002C, 0xBABDBB0A, 0x3E0E401B,
- 0x00000000, 0x3FF00030, 0x000D8008, 0x3E120012,
- 0x00000000, 0x3FF00034, 0xE2BD42E1, 0x3E152016,
- 0x00000000, 0x3FF00038, 0x956E5812, 0x3E18801C,
- 0x00000000, 0x3FF0003C, 0x2820F599, 0x3E1C2023,
- 0x00000000, 0x3FF00040, 0x556AAABC, 0x3E200015,
- 0x00000000, 0x3FF00044, 0x96C5DAD7, 0x3E221019,
- 0x00000000, 0x3FF00048, 0x60222C1F, 0x3E24401E,
- 0x00000000, 0x3FF0004C, 0xB97FC193, 0x3E269023,
- 0x00000000, 0x3FF00050, 0xAADEC034, 0x3E290029,
- 0x00000000, 0x3FF00054, 0x3C3F4F02, 0x3E2B9030,
- 0x00000000, 0x3FF00058, 0x75A196FF, 0x3E2E4037,
- 0x00000000, 0x3FF0005C, 0xAF82E194, 0x3E30881F,
- 0x00000000, 0x3FF00060, 0x00360041, 0x3E320024,
- 0x00000000, 0x3FF00064, 0xB0EA3F05, 0x3E338828,
- 0x00000000, 0x3FF00068, 0xC59FB661, 0x3E35202D,
- 0x00000000, 0x3FF0006C, 0x42567FD5, 0x3E36C833,
- 0x00000000, 0x3FF00070, 0x2B0EB5E1, 0x3E388039,
- 0x00000000, 0x3FF00074, 0x83C87407, 0x3E3A483F,
- 0x00000000, 0x3FF00078, 0x5083D6C6, 0x3E3C2046,
- 0x00000000, 0x3FF0007C, 0x9540FB9E, 0x3E3E084D,
- 0x04000000, 0x3FF00080, 0xA9FFFEEF, 0xBE3FFFAA,
- 0x04000000, 0x3FF00084, 0x693EF962, 0xBE3DF7A2,
- 0x04000000, 0x3FF00088, 0xA47BD339, 0xBE3BDF99,
- 0x04000000, 0x3FF0008C, 0x57B66AF5, 0xBE39B790,
- 0x04000000, 0x3FF00090, 0x7EEE9E14, 0xBE377F86,
- 0x04000000, 0x3FF00094, 0x16244916, 0xBE35377C,
- 0x04000000, 0x3FF00098, 0x1957477B, 0xBE32DF71,
- 0x04000000, 0x3FF0009C, 0x848773C2, 0xBE307765,
- 0x04000000, 0x3FF000A0, 0xA7694ED3, 0xBE2BFEB2,
- 0x04000000, 0x3FF000A4, 0x05BD75E2, 0xBE26EE99,
- 0x04000000, 0x3FF000A8, 0x1C0B0BB1, 0xBE21BE7E,
- 0x04000000, 0x3FF000AC, 0xC4A37A79, 0xBE18DCC3,
- 0x04000000, 0x3FF000B0, 0x4244D60F, 0xBE0BF911,
- 0x04000000, 0x3FF000B4, 0xEC91D848, 0xBDE6E255,
- 0x04000000, 0x3FF000B8, 0xEC1B8F0C, 0x3E0107EB,
- 0x04000000, 0x3FF000BC, 0x89BE52AA, 0x3E142439,
- 0x04000000, 0x3FF000C0, 0x06C01033, 0x3E200240,
- 0x04000000, 0x3FF000C4, 0xC8A9F760, 0x3E261264,
- 0x04000000, 0x3FF000C8, 0x129D3FDE, 0x3E2C428B,
- 0x04000000, 0x3FF000CC, 0x764D2658, 0x3E314959,
- 0x04000000, 0x3FF000D0, 0x2F50C16C, 0x3E34816E,
- 0x04000000, 0x3FF000D4, 0xB859A4AB, 0x3E37C983,
- 0x04000000, 0x3FF000D8, 0x15680499, 0x3E3B219A,
- 0x04000000, 0x3FF000DC, 0x4A7C16B5, 0x3E3E89B1,
- 0x08000000, 0x3FF000E0, 0xA469EE7E, 0xBE3DFE36,
- 0x08000000, 0x3FF000E4, 0xB349D37F, 0xBE3A761D,
- 0x08000000, 0x3FF000E8, 0xDE235FCD, 0xBE36DE03,
- 0x08000000, 0x3FF000EC, 0x20F659E6, 0xBE3335E9,
- 0x08000000, 0x3FF000F0, 0xEF850E8F, 0xBE2EFB9A,
- 0x08000000, 0x3FF000F4, 0xBD0F58E2, 0xBE276B61,
- 0x08000000, 0x3FF000F8, 0x45163381, 0xBE1F764D,
- 0x08000000, 0x3FF000FC, 0x5FDF589A, 0xBE0FABA6,
- 0x08000000, 0x3FF00100, 0xABBBBE94, 0x3D8555AA,
- 0x08000000, 0x3FF00104, 0xDABB690B, 0x3E102B2C,
- 0x08000000, 0x3FF00108, 0x7820FBA0, 0x3E2045D9,
- 0x08000000, 0x3FF0010C, 0x92F54742, 0x3E28961E,
- 0x08000000, 0x3FF00110, 0xE2ED8E39, 0x3E308332,
- 0x08000000, 0x3FF00114, 0x8C698119, 0x3E34CB57,
- 0x08000000, 0x3FF00118, 0x49EEC0C4, 0x3E39237D,
- 0x08000000, 0x3FF0011C, 0x1F7D92BC, 0x3E3D8BA4,
- 0x0C000000, 0x3FF00120, 0xEEE9C27D, 0xBE3DFC33,
- 0x0C000000, 0x3FF00124, 0xDD46F763, 0xBE39740A,
- 0x0C000000, 0x3FF00128, 0xA799C375, 0xBE34DBE0,
- 0x0C000000, 0x3FF0012C, 0x49E1DD2F, 0xBE3033B5,
- 0x0C000000, 0x3FF00130, 0x803DF41F, 0xBE26F711,
- 0x0C000000, 0x3FF00134, 0x19433A4C, 0xBE1ACD6C,
- 0x0C000000, 0x3FF00138, 0x8770E36F, 0xBDFDB2C1,
- 0x0C000000, 0x3FF0013C, 0x6B74A43E, 0x3E086820,
- 0x0C000000, 0x3FF00140, 0xDEC0D058, 0x3E200A6A,
- 0x0C000000, 0x3FF00144, 0x22BD7872, 0x3E2A1AD0,
- 0x0C000000, 0x3FF00148, 0xF769E132, 0x3E32259B,
- 0x0C000000, 0x3FF0014C, 0x2582289A, 0x3E374DD1,
- 0x0C000000, 0x3FF00150, 0x9FA7E4F4, 0x3E3C8607,
- 0x10000000, 0x3FF00154, 0x9624963C, 0xBE3E31C0,
- 0x10000000, 0x3FF00158, 0x77E2F472, 0xBE38D987,
- 0x10000000, 0x3FF0015C, 0x0192E02C, 0xBE33714D,
- 0x10000000, 0x3FF00160, 0x5E6805CB, 0xBE2BF222,
- 0x10000000, 0x3FF00164, 0xF98C0A34, 0xBE20E1A7,
- 0x10000000, 0x3FF00168, 0x32447238, 0xBE06C4AB,
- 0x10000000, 0x3FF0016C, 0xC225D8C1, 0x3E067D54,
- 0x10000000, 0x3FF00170, 0x05C4630F, 0x3E210FD8,
- 0x10000000, 0x3FF00174, 0xBB206115, 0x3E2CA05D,
- 0x10000000, 0x3FF00178, 0x2C4F14A6, 0x3E342873,
- 0x10000000, 0x3FF0017C, 0xF31F3B5E, 0x3E3A10B8,
- 0x14000000, 0x3FF00180, 0xC9FEFCC9, 0xBE3FF6FF,
- 0x14000000, 0x3FF00184, 0x070B344A, 0xBE39EEB7,
- 0x14000000, 0x3FF00188, 0xC0050AA2, 0xBE33D66C,
- 0x14000000, 0x3FF0018C, 0xE1D83C97, 0xBE2B5C41,
- 0x14000000, 0x3FF00190, 0x57003305, 0xBE1DD74E,
- 0x14000000, 0x3FF00194, 0xA80727F1, 0xBDF2D84A,
- 0x14000000, 0x3FF00198, 0x534C5401, 0x3E14AB2F,
- 0x14000000, 0x3FF0019C, 0xD875DE83, 0x3E27263B,
- 0x14000000, 0x3FF001A0, 0x9FB782CA, 0x3E320B71,
- 0x14000000, 0x3FF001A4, 0xF349371F, 0x3E3893C6,
- 0x14000000, 0x3FF001A8, 0xEAF074C6, 0x3E3F2C1D,
- 0x18000000, 0x3FF001AC, 0x75525ABC, 0xBE3A2B89,
- 0x18000000, 0x3FF001B0, 0x297ECCE2, 0xBE33732F,
- 0x18000000, 0x3FF001B4, 0x5B28EC49, 0xBE2955A6,
- 0x18000000, 0x3FF001B8, 0xF64BA7FD, 0xBE1749D5,
- 0x18000000, 0x3FF001BC, 0xA8645141, 0x3DF15E9E,
- 0x18000000, 0x3FF001C0, 0x1D6F0B37, 0x3E201C96,
- 0x18000000, 0x3FF001C4, 0xE6028E39, 0x3E2E2D5B,
- 0x18000000, 0x3FF001C8, 0x9B63FA1E, 0x3E362F12,
- 0x18000000, 0x3FF001CC, 0x0BE01026, 0x3E3D5779,
- 0x1C000000, 0x3FF001D0, 0xB78A0445, 0xBE3B701E,
- 0x1C000000, 0x3FF001D4, 0xAAD9CF9D, 0xBE3427B4,
- 0x1C000000, 0x3FF001D8, 0x941DBAB5, 0xBE299E91,
- 0x1C000000, 0x3FF001DC, 0x44A2DFDD, 0xBE159B6C,
- 0x1C000000, 0x3FF001E0, 0x1EC8B89C, 0x3E008CA4,
- 0x1C000000, 0x3FF001E4, 0xF1EE0E9A, 0x3E23340B,
- 0x1C000000, 0x3FF001E8, 0x5231913C, 0x3E313279,
- 0x1C000000, 0x3FF001EC, 0x93892E68, 0x3E38DAEE,
- 0x20000000, 0x3FF001F0, 0x3F01A6A8, 0xBE3F6C9A,
- 0x20000000, 0x3FF001F4, 0x216E726C, 0xBE37A421,
- 0x20000000, 0x3FF001F8, 0x1F7970B9, 0xBE2F974C,
- 0x20000000, 0x3FF001FC, 0x17AFEBC8, 0xBE1F8CA4,
- 0x20000000, 0x3FF00200, 0x04445B06, 0x3DB55600,
- 0x20000000, 0x3FF00204, 0x0C290A26, 0x3E203BAE,
- 0x20000000, 0x3FF00208, 0x104547BD, 0x3E30365A,
- 0x20000000, 0x3FF0020C, 0x22970DE3, 0x3E385EDF,
- 0x24000000, 0x3FF00210, 0xBEF5A5F4, 0xBE3F6899,
- 0x24000000, 0x3FF00214, 0x90605040, 0xBE372010,
- 0x24000000, 0x3FF00218, 0x9B50D8EE, 0xBE2D8F0A,
- 0x24000000, 0x3FF0021C, 0xCB35D444, 0xBE197BDF,
- 0x24000000, 0x3FF00220, 0x2188E3D5, 0x3E00CCBC,
- 0x24000000, 0x3FF00224, 0x36A79F6A, 0x3E254452,
- 0x24000000, 0x3FF00228, 0xD69B2D28, 0x3E333ABC,
- 0x24000000, 0x3FF0022C, 0xBA07BE5B, 0x3E3BE352,
- 0x28000000, 0x3FF00230, 0x3665F227, 0xBE3B6415,
- 0x28000000, 0x3FF00234, 0xF6AD58D5, 0xBE329B7A,
- 0x28000000, 0x3FF00238, 0x059BD24A, 0xBE2385BD,
- 0x28000000, 0x3FF0023C, 0xD8E2B1B4, 0xBDEB47FA,
- 0x28000000, 0x3FF00240, 0x22CF60F6, 0x3E203CC2,
- 0x28000000, 0x3FF00244, 0x39BEF87F, 0x3E312704,
- 0x28000000, 0x3FF00248, 0xA63F5309, 0x3E3A3FA9,
- 0x2C000000, 0x3FF0024C, 0xA516AE5E, 0xBE3C97AE,
- 0x2C000000, 0x3FF00250, 0xA442792A, 0xBE335F04,
- 0x2C000000, 0x3FF00254, 0xA686F3A2, 0xBE242CB0,
- 0x2C000000, 0x3FF00258, 0xC3237903, 0xBDE7B535,
- 0x2C000000, 0x3FF0025C, 0x9E7A6CF7, 0x3E21560E,
- 0x2C000000, 0x3FF00260, 0xA8C01385, 0x3E3223BA,
- 0x2C000000, 0x3FF00264, 0x627012DF, 0x3E3BAC70,
- 0x30000000, 0x3FF00268, 0x7FB232EA, 0xBE3ABAD7,
- 0x30000000, 0x3FF0026C, 0xF9A6244B, 0xBE31121C,
- 0x30000000, 0x3FF00270, 0x1DAC9AE4, 0xBE1D6580,
- 0x30000000, 0x3FF00274, 0xD7FB0AC3, 0x3E037AFA,
- 0x30000000, 0x3FF00278, 0x633420EB, 0x3E289042,
- 0x30000000, 0x3FF0027C, 0x8065842A, 0x3E3630E5,
- 0x34000000, 0x3FF00280, 0xB49DA4FF, 0xBE3FD653,
- 0x34000000, 0x3FF00284, 0x696ECB76, 0xBE35CD8A,
- 0x34000000, 0x3FF00288, 0x341A9D63, 0xBE27697D,
- 0x34000000, 0x3FF0028C, 0x2788D238, 0xBDF8BF04,
- 0x34000000, 0x3FF00290, 0x42A03782, 0x3E2159C1,
- 0x34000000, 0x3FF00294, 0x154D4F89, 0x3E32F5B4,
- 0x34000000, 0x3FF00298, 0x1D7FB2C1, 0x3E3D4E8A,
- 0x38000000, 0x3FF0029C, 0x42181508, 0xBE38489D,
- 0x38000000, 0x3FF002A0, 0x0AF2C28C, 0xBE2B9F84,
- 0x38000000, 0x3FF002A4, 0x451C5357, 0xBE0A3721,
- 0x38000000, 0x3FF002A8, 0x61A8605E, 0x3E1D47F1,
- 0x38000000, 0x3FF002AC, 0x81B02FCF, 0x3E31FADF,
- 0x38000000, 0x3FF002B0, 0x572F674A, 0x3E3CB3C5,
- 0x3C000000, 0x3FF002B4, 0x231795EA, 0xBE388352,
- 0x3C000000, 0x3FF002B8, 0xD248367A, 0xBE2B54CD,
- 0x3C000000, 0x3FF002BC, 0xB7ABD90D, 0xBE060BC7,
- 0x3C000000, 0x3FF002C0, 0x6EE9F1EF, 0x3E206EEF,
- 0x3C000000, 0x3FF002C4, 0x261BF09E, 0x3E33406B,
- 0x3C000000, 0x3FF002C8, 0x59001C60, 0x3E3E5961,
- 0x40000000, 0x3FF002CC, 0xABDDD232, 0xBE367DA5,
- 0x40000000, 0x3FF002D0, 0xC8FA5113, 0xBE268953,
- 0x40000000, 0x3FF002D4, 0x8B33A701, 0x3D9152CC,
- 0x40000000, 0x3FF002D8, 0x3E058570, 0x3E26BAAC,
- 0x40000000, 0x3FF002DC, 0x63236E71, 0x3E36C65A,
- 0x44000000, 0x3FF002E0, 0x7C7A795C, 0xBE3DC09E,
- 0x44000000, 0x3FF002E4, 0x7BD63D1D, 0xBE323794,
- 0x44000000, 0x3FF002E8, 0x5BBC9105, 0xBE1A7A1E,
- 0x44000000, 0x3FF002EC, 0xD8EE2B1B, 0x3E142A20,
- 0x44000000, 0x3FF002F0, 0xEFAA8A8D, 0x3E30C39A,
- 0x44000000, 0x3FF002F4, 0x995E96A2, 0x3E3C8CB0,
- 0x48000000, 0x3FF002F8, 0xC8A79469, 0xBE379A36,
- 0x48000000, 0x3FF002FC, 0x64CE7203, 0xBE276236,
- 0x48000000, 0x3FF00300, 0x0819DA68, 0x3DD200D8,
- 0x48000000, 0x3FF00304, 0xE5E018D4, 0x3E28A249,
- 0x48000000, 0x3FF00308, 0x8A087692, 0x3E386A49,
- 0x4C000000, 0x3FF0030C, 0xD695988B, 0xBE3B6C8E,
- 0x4C000000, 0x3FF00310, 0x55D2BCBA, 0xBE2E66C8,
- 0x4C000000, 0x3FF00314, 0x7790BA7A, 0xBE0751B3,
- 0x4C000000, 0x3FF00318, 0xC2A20261, 0x3E22DDF4,
- 0x4C000000, 0x3FF0031C, 0x49E0B0B5, 0x3E35D82E,
- 0x50000000, 0x3FF00320, 0xB142422E, 0xBE3DAE9A,
- 0x50000000, 0x3FF00324, 0x8C170FE6, 0xBE312560,
- 0x50000000, 0x3FF00328, 0x0A73BF77, 0xBE12308D,
- 0x50000000, 0x3FF0032C, 0x5E59CEFA, 0x3E203A3A,
- 0x50000000, 0x3FF00330, 0xCD4740BF, 0x3E34D660,
- 0x54000000, 0x3FF00334, 0x644D1883, 0xBE3E6058,
- 0x54000000, 0x3FF00338, 0x618F57B6, 0xBE31870E,
- 0x54000000, 0x3FF0033C, 0x99FABD0F, 0xBE127704,
- 0x54000000, 0x3FF00340, 0xA1CB5ECF, 0x3E20B71E,
- 0x54000000, 0x3FF00344, 0x089E93E1, 0x3E3564E3,
- 0x58000000, 0x3FF00348, 0xFB533142, 0xBE3D81C5,
- 0x58000000, 0x3FF0034C, 0xB6EECE6C, 0xBE30586B,
- 0x58000000, 0x3FF00350, 0x319B883E, 0xBE08F871,
- 0x58000000, 0x3FF00354, 0x75BF7503, 0x3E2454A5,
- 0x58000000, 0x3FF00358, 0xF04B88C5, 0x3E3783B6,
- 0x5C000000, 0x3FF0035C, 0x81EF30A7, 0xBE3B12E1,
- 0x5C000000, 0x3FF00360, 0x2F9F3657, 0xBE2B32ED,
- 0x5C000000, 0x3FF00364, 0x54DF31BC, 0xBDB0084D,
- 0x5C000000, 0x3FF00368, 0xC303B7B9, 0x3E2B12D2,
- 0x5C000000, 0x3FF0036C, 0x78B56F97, 0x3E3B32DE,
- 0x60000000, 0x3FF00370, 0x03B9496C, 0xBE3713A9,
- 0x60000000, 0x3FF00374, 0x1F92E726, 0xBE22945A,
- 0x60000000, 0x3FF00378, 0x621736DF, 0x3E123D49,
- 0x60000000, 0x3FF0037C, 0x3935580D, 0x3E3278D5,
- 0x64000000, 0x3FF00380, 0x69B9F5FB, 0xBE3F8DA4,
- 0x64000000, 0x3FF00384, 0x8C473CC8, 0xBE31841A,
- 0x64000000, 0x3FF00388, 0x538CDE07, 0xBE0B5469,
- 0x64000000, 0x3FF0038C, 0x7F8F9D65, 0x3E257E07,
- 0x64000000, 0x3FF00390, 0x3665E52B, 0x3E38F898,
- 0x68000000, 0x3FF00394, 0xC29674BD, 0xBE38BDCF,
- 0x68000000, 0x3FF00398, 0x4E58B4D9, 0xBE24C868,
- 0x68000000, 0x3FF0039C, 0x329466D7, 0x3E1015AC,
- 0x68000000, 0x3FF003A0, 0xDCDECE44, 0x3E327F0D,
- 0x6C000000, 0x3FF003A4, 0xB27E5528, 0xBE3EF74B,
- 0x6C000000, 0x3FF003A8, 0x9D7167F2, 0xBE305DA1,
- 0x6C000000, 0x3FF003AC, 0xFF980820, 0xBDFB3F3D,
- 0x6C000000, 0x3FF003B0, 0x13D49789, 0x3E2A0B7B,
- 0x6C000000, 0x3FF003B4, 0xA43AE87C, 0x3E3BCF72,
- 0x70000000, 0x3FF003B8, 0x8D06BDC0, 0xBE3556D4,
- 0x70000000, 0x3FF003BC, 0x1766E54D, 0xBE19B460,
- 0x70000000, 0x3FF003C0, 0x7B85C8BA, 0x3E211950,
- 0x70000000, 0x3FF003C4, 0x41D00AED, 0x3E37966C,
- 0x74000000, 0x3FF003C8, 0xF5B15507, 0xBE394FCB,
- 0x74000000, 0x3FF003CC, 0xC98093C4, 0xBE244C00,
- 0x74000000, 0x3FF003D0, 0xE2907BDF, 0x3E144F3B,
- 0x74000000, 0x3FF003D4, 0x267CD924, 0x3E345DA2,
- 0x78000000, 0x3FF003D8, 0xD73526C0, 0xBE3C4886,
- 0x78000000, 0x3FF003DC, 0xF8E1D62E, 0xBE29BD57,
- 0x78000000, 0x3FF003E0, 0xD65415E1, 0x3E04D995,
- 0x78000000, 0x3FF003E4, 0x527E1A58, 0x3E322515,
- 0x7C000000, 0x3FF003E8, 0x31552BA5, 0xBE3E4104,
- 0x7C000000, 0x3FF003EC, 0x995CAB3B, 0xBE2D2E33,
- 0x7C000000, 0x3FF003F0, 0x473970DC, 0x3DF22D48,
- 0x7C000000, 0x3FF003F4, 0xC61195FC, 0x3E30ECC6,
- 0x80000000, 0x3FF003F8, 0x03D35C34, 0xBE3F3943,
- 0x80000000, 0x3FF003FC, 0xAA7483C7, 0xBE2E9E91,
- 0x80000000, 0x3FF00400, 0xBBBC71CE, 0x3DE556AA,
- 0x80000000, 0x3FF00404, 0x817613C1, 0x3E30B4B7,
- 0x84000000, 0x3FF00408, 0x4E70B0AC, 0xBE3F3142,
- 0x84000000, 0x3FF0040C, 0x2BAAD02F, 0xBE2E0E70,
- 0x84000000, 0x3FF00410, 0xF48F01F2, 0x3DF32D62,
- 0x84000000, 0x3FF00414, 0x84EB5B98, 0x3E317CE8,
- 0x88000000, 0x3FF00418, 0x10ED210B, 0xBE3E2901,
- 0x88000000, 0x3FF0041C, 0x1C7F0051, 0xBE2B7DCD,
- 0x88000000, 0x3FF00420, 0x87AA2706, 0x3E05D9C0,
- 0x88000000, 0x3FF00424, 0xD0B235B3, 0x3E33455A,
- 0x8C000000, 0x3FF00428, 0x4B07A510, 0xBE3C207E,
- 0x8C000000, 0x3FF0042C, 0x7C6E838B, 0xBE26ECA6,
- 0x8C000000, 0x3FF00430, 0xEC91A8D5, 0x3E150F6F,
- 0x8C000000, 0x3FF00434, 0x650C6A83, 0x3E360E0F,
- 0x90000000, 0x3FF00438, 0xFC7E3439, 0xBE3917B8,
- 0x90000000, 0x3FF0043C, 0x4AF4C8B6, 0xBE205AFA,
- 0x90000000, 0x3FF00440, 0xDC31D181, 0x3E219985,
- 0x90000000, 0x3FF00444, 0x423CC2BE, 0x3E39D707,
- 0x94000000, 0x3FF00448, 0x250DC5BF, 0xBE350EB0,
- 0x94000000, 0x3FF0044C, 0x1E2CF893, 0xBE0F231A,
- 0x94000000, 0x3FF00450, 0xD42C92D4, 0x3E2AABDB,
- 0x94000000, 0x3FF00454, 0x6887075B, 0x3E3EA043,
- 0x98000000, 0x3FF00458, 0xC472509B, 0xBE300562,
- 0x98000000, 0x3FF0045C, 0x72B572E0, 0x3DF64FB6,
- 0x98000000, 0x3FF00460, 0xEF61155C, 0x3E32DF5D,
- 0x9C000000, 0x3FF00464, 0x27CFFE6A, 0xBE3B963B,
- 0x9C000000, 0x3FF00468, 0xB4CD96FE, 0xBE23F79F,
- 0x9C000000, 0x3FF0046C, 0x6E771F13, 0x3E1EBA7F,
- 0x9C000000, 0x3FF00470, 0xFE3ED608, 0x3E396913,
- 0xA0000000, 0x3FF00474, 0x6E82850F, 0xBE34CC73,
- 0xA0000000, 0x3FF00478, 0x352966B7, 0xBE078FB3,
- 0xA0000000, 0x3FF0047C, 0x33AFF8AE, 0x3E2DF116,
- 0xA4000000, 0x3FF00480, 0xE909EADD, 0xBE3F0CEE,
- 0xA4000000, 0x3FF00484, 0xD6938597, 0xBE2A04C8,
- 0xA4000000, 0x3FF00488, 0x5C6654D8, 0x3E1460AA,
- 0xA4000000, 0x3FF0048C, 0x22213ECF, 0x3E3742BE,
- 0xA8000000, 0x3FF00490, 0xC631A356, 0xBE3682A9,
- 0xA8000000, 0x3FF00494, 0x7777B644, 0xBE10E034,
- 0xA8000000, 0x3FF00498, 0x3E3B0991, 0x3E2C4528,
- 0xAC000000, 0x3FF0049C, 0x0B3E269F, 0xBE3F72C6,
- 0xAC000000, 0x3FF004A0, 0x31DF923B, 0xBE29F037,
- 0xAC000000, 0x3FF004A4, 0xE82713DE, 0x3E164A4D,
- 0xAC000000, 0x3FF004A8, 0x31AFAC4B, 0x3E382D47,
- 0xB0000000, 0x3FF004AC, 0x6DFCE978, 0xBE352800,
- 0xB0000000, 0x3FF004B0, 0x07D68D27, 0xBE036A1B,
- 0xB0000000, 0x3FF004B4, 0x5CB71F6F, 0x3E305D7E,
- 0xB4000000, 0x3FF004B8, 0x30E5E990, 0xBE3CC7BB,
- 0xB4000000, 0x3FF004BC, 0x0BA17DEA, 0xBE23B9E0,
- 0xB4000000, 0x3FF004C0, 0xC3EF9BD8, 0x3E223BBF,
- 0xB4000000, 0x3FF004C4, 0x8A74ECC0, 0x3E3C28B4,
- 0xB8000000, 0x3FF004C8, 0x085831CA, 0xBE30BC72,
- 0xB8000000, 0x3FF004CC, 0x6C8D1FC8, 0x3E037361,
- 0xB8000000, 0x3FF004D0, 0x3033A0B8, 0x3E35A94F,
- 0xBC000000, 0x3FF004D4, 0xFC7107DE, 0xBE370BC8,
- 0xBC000000, 0x3FF004D8, 0xA2D908DA, 0xBE0D86E2,
- 0xBC000000, 0x3FF004DC, 0x58ED155E, 0x3E2F742A,
- 0xC0000000, 0x3FF004E0, 0x75FACDD0, 0xBE3CCAF4,
- 0xC0000000, 0x3FF004E4, 0x6F5BE5D3, 0xBE227FF2,
- 0xC0000000, 0x3FF004E8, 0xD6BCA827, 0x3E24B60D,
- 0xC0000000, 0x3FF004EC, 0xF72B40D6, 0x3E3E060B,
- 0xC4000000, 0x3FF004F0, 0x208BE3E3, 0xBE2C7DD4,
- 0xC4000000, 0x3FF004F4, 0x642FDDB8, 0x3E163093,
- 0xC4000000, 0x3FF004F8, 0xB72239A5, 0x3E396738,
- 0xC8000000, 0x3FF004FC, 0x7201ED9B, 0xBE32ADAE,
- 0xC8000000, 0x3FF00500, 0x1A0C05F3, 0x3DF4D6F6,
- 0xC8000000, 0x3FF00504, 0x360B8346, 0x3E355892,
- 0xCC000000, 0x3FF00508, 0xF0C06435, 0xBE368C45,
- 0xCC000000, 0x3FF0050C, 0x760DA2F6, 0xBE0308C8,
- 0xCC000000, 0x3FF00510, 0xE008D57B, 0x3E31DA18,
- 0xD0000000, 0x3FF00514, 0x205F82F4, 0xBE39DAB0,
- 0xD0000000, 0x3FF00518, 0x2FE5E3E3, 0xBE15FDD0,
- 0xD0000000, 0x3FF0051C, 0x42787241, 0x3E2DD79A,
- 0xD4000000, 0x3FF00520, 0x94BD25F4, 0xBE3C98EC,
- 0xD4000000, 0x3FF00524, 0x53C89D03, 0xBE201B42,
- 0xD4000000, 0x3FF00528, 0xCB901057, 0x3E291B5E,
- 0xD8000000, 0x3FF0052C, 0xE1B6D837, 0xBE3EC6FA,
- 0xD8000000, 0x3FF00530, 0xF8BF49E7, 0xBE24173F,
- 0xD8000000, 0x3FF00534, 0x339DDB57, 0x3E257F80,
- 0xD8000000, 0x3FF00538, 0x64D62C5C, 0x3E3F9B25,
- 0xDC000000, 0x3FF0053C, 0x2E913659, 0xBE26F2E0,
- 0xDC000000, 0x3FF00540, 0x52E7CB93, 0x3E2303FF,
- 0xDC000000, 0x3FF00544, 0xAB0CFEF5, 0x3E3E8D74,
- 0xE0000000, 0x3FF00548, 0x1CF7FDE6, 0xBE28AE22,
- 0xE0000000, 0x3FF0054C, 0x01B47B93, 0x3E21A8DD,
- 0xE0000000, 0x3FF00550, 0x5D1107E2, 0x3E3E0FF3,
- 0xE4000000, 0x3FF00554, 0xEBAC99E1, 0xBE294904,
- 0xE4000000, 0x3FF00558, 0x184B2814, 0x3E216E1A,
- 0xE4000000, 0x3FF0055C, 0xE706008B, 0x3E3E22A1,
- 0xE8000000, 0x3FF00560, 0xC267616A, 0xBE28C387,
- 0xE8000000, 0x3FF00564, 0x6EF3B008, 0x3E2253B7,
- 0xE8000000, 0x3FF00568, 0xB50FF371, 0x3E3EC580,
- 0xEC000000, 0x3FF0056C, 0xC8E0096B, 0xBE271DA9,
- 0xEC000000, 0x3FF00570, 0xDDF69498, 0x3E2459B5,
- 0xEC000000, 0x3FF00574, 0x33533C31, 0x3E3FF890,
- 0xF0000000, 0x3FF00578, 0x26CDA497, 0xBE24576A,
- 0xF0000000, 0x3FF0057C, 0x3D9CF923, 0x3E278016,
- 0xF4000000, 0x3FF00580, 0x320B787B, 0xBE3E442F,
- 0xF4000000, 0x3FF00584, 0x03E6A36B, 0xBE2070C8,
- 0xF4000000, 0x3FF00588, 0x6630A33F, 0x3E2BC6D9,
- 0xF8000000, 0x3FF0058C, 0x0EE72CBF, 0xBE3BF0BD,
- 0xF8000000, 0x3FF00590, 0x0FC1A853, 0xBE16D385,
- 0xF8000000, 0x3FF00594, 0x17FDFD5D, 0x3E309700,
- 0xFC000000, 0x3FF00598, 0xF71A91AC, 0xBE390D18,
- 0xFC000000, 0x3FF0059C, 0x69C58B86, 0xBE050963,
- 0xFC000000, 0x3FF005A0, 0xB9A504CD, 0x3E33DAC5,
- 0x00000000, 0x3FF005A5, 0x7E800734, 0xBE359942,
- 0x00000000, 0x3FF005A9, 0xE59934CD, 0x3DF02BAE,
- 0x00000000, 0x3FF005AD, 0x04333E0E, 0x3E37AEBE,
- 0x04000000, 0x3FF005B1, 0x38F19C2F, 0xBE319539,
- 0x04000000, 0x3FF005B5, 0xEBB1C157, 0x3E14DB54,
- 0x04000000, 0x3FF005B9, 0x63CED05D, 0x3E3C12E9,
- 0x08000000, 0x3FF005BD, 0x74921CAF, 0xBE2A01F9,
- 0x08000000, 0x3FF005C1, 0xC94C85F2, 0x3E23F645,
- 0x0C000000, 0x3FF005C5, 0xBB61CBEE, 0xBE3EF8B7,
- 0x0C000000, 0x3FF005C9, 0x597F2931, 0xBE1F7232,
- 0x0C000000, 0x3FF005CD, 0xAF5B7345, 0x3E2E9F48,
- 0x10000000, 0x3FF005D1, 0xED37CD5F, 0xBE397424,
- 0x10000000, 0x3FF005D5, 0x08775C6B, 0xBE013F43,
- 0x10000000, 0x3FF005D9, 0x0029D3DB, 0x3E35345A,
- 0x14000000, 0x3FF005DD, 0xC58C1962, 0xBE335F5D,
- 0x14000000, 0x3FF005E1, 0x47430E04, 0x3E1073C1,
- 0x14000000, 0x3FF005E5, 0x4A41E248, 0x3E3BA944,
- 0x18000000, 0x3FF005E9, 0xB06E888E, 0xBE2974C3,
- 0x18000000, 0x3FF005ED, 0xDCCD9333, 0x3E25E3FB,
- 0x1C000000, 0x3FF005F1, 0x5DE27951, 0xBE3D519C,
- 0x1C000000, 0x3FF005F5, 0xE4464502, 0xBE1614C2,
- 0x1C000000, 0x3FF005F9, 0xE0DAFE93, 0x3E325740,
- 0x20000000, 0x3FF005FD, 0x8C1B4C10, 0xBE35BC47,
- 0x20000000, 0x3FF00601, 0x20686CE9, 0x3E0201B0,
- 0x20000000, 0x3FF00605, 0x95558B63, 0x3E3A4CB9,
- 0x24000000, 0x3FF00609, 0xA880A3EB, 0xBE2B2D79,
- 0x24000000, 0x3FF0060D, 0x9699EEB7, 0x3E252BA5,
- 0x28000000, 0x3FF00611, 0x880115E1, 0xBE3D2D97,
- 0x28000000, 0x3FF00615, 0x28A3D788, 0xBE1383EF,
- 0x28000000, 0x3FF00619, 0x08D6DC23, 0x3E337BA6,
- 0x2C000000, 0x3FF0061D, 0x0B001A08, 0xBE3417B2,
- 0x2C000000, 0x3FF00621, 0xF94EB99A, 0x3E1193EF,
- 0x2C000000, 0x3FF00625, 0x28D3BD3B, 0x3E3CF1B0,
- 0x30000000, 0x3FF00629, 0x0EFCC982, 0xBE24E32B,
- 0x30000000, 0x3FF0062D, 0xE2BDA47F, 0x3E2C7655,
- 0x34000000, 0x3FF00631, 0x689312F8, 0xBE39080E,
- 0x34000000, 0x3FF00635, 0xA9444DB4, 0xBDCDA0C8,
- 0x34000000, 0x3FF00639, 0x7B21FE23, 0x3E38A191,
- 0x38000000, 0x3FF0063D, 0x7E67E1E1, 0xBE2CE32A,
- 0x38000000, 0x3FF00641, 0x875A71F0, 0x3E251694,
- 0x3C000000, 0x3FF00645, 0xF838F455, 0xBE3C67CF,
- 0x3C000000, 0x3FF00649, 0x77274052, 0xBE0A571F,
- 0x3C000000, 0x3FF0064D, 0x63AAEFA8, 0x3E35E20E,
- 0x40000000, 0x3FF00651, 0xFC87DA70, 0xBE30E0F8,
- 0x40000000, 0x3FF00655, 0xE9089AFD, 0x3E20D80B,
- 0x44000000, 0x3FF00659, 0xC52F03BD, 0xBE3E36F4,
- 0x44000000, 0x3FF0065D, 0x9680E14E, 0xBE1327A4,
- 0x44000000, 0x3FF00661, 0xD732468D, 0x3E34B328,
- 0x48000000, 0x3FF00665, 0xCAB5EF4A, 0xBE31BFBE,
- 0x48000000, 0x3FF00669, 0xE2A2FBE1, 0x3E1F757F,
- 0x4C000000, 0x3FF0066D, 0xDAB014DA, 0xBE3E757A,
- 0x4C000000, 0x3FF00671, 0x02FB3FBB, 0xBE12E13D,
- 0x4C000000, 0x3FF00675, 0xCA7E298D, 0x3E3514E2,
- 0x50000000, 0x3FF00679, 0xB4F78B94, 0xBE310DE4,
- 0x50000000, 0x3FF0067D, 0x89C35D05, 0x3E21BEB4,
- 0x54000000, 0x3FF00681, 0x43F4895C, 0xBE3D2360,
- 0x54000000, 0x3FF00685, 0x5BC49ADF, 0xBE08B0A2,
- 0x54000000, 0x3FF00689, 0x32573159, 0x3E37073E,
- 0x58000000, 0x3FF0068D, 0x8D0732D2, 0xBE2D96D1,
- 0x58000000, 0x3FF00691, 0x9BF15E67, 0x3E26E3ED,
- 0x5C000000, 0x3FF00695, 0x0C3250FB, 0xBE3A40A3,
- 0x5C000000, 0x3FF00699, 0xFD0AE214, 0x3DBCC9AE,
- 0x5C000000, 0x3FF0069D, 0x038868A1, 0x3E3A8A3D,
- 0x60000000, 0x3FF006A1, 0x151D21CE, 0xBE25F092,
- 0x60000000, 0x3FF006A5, 0x11738C43, 0x3E2F2A6F,
- 0x64000000, 0x3FF006A9, 0x3E9CE96D, 0xBE35CD41,
- 0x64000000, 0x3FF006AD, 0x8DBC2918, 0x3E138132,
- 0x64000000, 0x3FF006B1, 0x32DF4C13, 0x3E3F9DE1,
- 0x68000000, 0x3FF006B5, 0x3129E0B2, 0xBE16520E,
- 0x68000000, 0x3FF006B9, 0x69F36A61, 0x3E35491E,
- 0x6C000000, 0x3FF006BD, 0xCCCABCD4, 0xBE2F9271,
- 0x6C000000, 0x3FF006C1, 0x0D59B899, 0x3E2668ED,
- 0x70000000, 0x3FF006C5, 0x4AD435A0, 0xBE39BDD3,
- 0x70000000, 0x3FF006C9, 0x9191CABB, 0x3DF5FE9A,
- 0x70000000, 0x3FF006CD, 0x6676850B, 0x3E3C8DAD,
- 0x74000000, 0x3FF006D1, 0x1D74934A, 0xBE206910,
- 0x74000000, 0x3FF006D5, 0x4D886478, 0x3E331949,
- 0x78000000, 0x3FF006D9, 0x80BFBBC2, 0xBE3188DE,
- 0x78000000, 0x3FF006DD, 0x14DE1719, 0x3E23CA01,
- 0x7C000000, 0x3FF006E1, 0x8CE98EC0, 0xBE3A9D19,
- 0x7C000000, 0x3FF006E5, 0xA705A6E7, 0x3DEE1A67,
- 0x7C000000, 0x3FF006E9, 0xECD5F851, 0x3E3C8EC6,
- 0x80000000, 0x3FF006ED, 0xE839CE4D, 0xBE1F0CF9,
- 0x80000000, 0x3FF006F1, 0x0C8CA46A, 0x3E33FAC3,
- 0x84000000, 0x3FF006F5, 0x7B5703D8, 0xBE303734,
- 0x84000000, 0x3FF006F9, 0xE490A112, 0x3E274DB5,
- 0x88000000, 0x3FF006FD, 0xA693A093, 0xBE386B0E,
- 0x88000000, 0x3FF00701, 0xF0B73DAA, 0x3E0C9875,
- 0x88000000, 0x3FF00705, 0x2449A944, 0x3E3FA133,
- 0x8C000000, 0x3FF00709, 0xBFE66C14, 0xBE110285,
- 0x8C000000, 0x3FF0070D, 0x054EDCBD, 0x3E37ED91,
- 0x90000000, 0x3FF00711, 0xEFB65924, 0xBE27A86A,
- 0x90000000, 0x3FF00715, 0x1C8A0CF1, 0x3E307A0B,
- 0x94000000, 0x3FF00719, 0x397FB1D6, 0xBE3327AD,
- 0x94000000, 0x3FF0071D, 0x1412B9FB, 0x3E228D43,
- 0x98000000, 0x3FF00721, 0x94D8FFB0, 0xBE3A3B08,
- 0x98000000, 0x3FF00725, 0x6ED80040, 0x3E029AA3,
- 0x98000000, 0x3FF00729, 0x9627250A, 0x3E3EF1B8,
- 0x9C000000, 0x3FF0072D, 0x5FCB1B09, 0xBE117F70,
- 0x9C000000, 0x3FF00731, 0x678F0789, 0x3E385E96,
- 0xA0000000, 0x3FF00735, 0xCEA3485B, 0xBE25A5DF,
- 0xA0000000, 0x3FF00739, 0xFF6D0303, 0x3E320B90,
- 0xA4000000, 0x3FF0073D, 0xE03334FF, 0xBE3105E6,
- 0xA4000000, 0x3FF00741, 0xFB9F056D, 0x3E27F150,
- 0xA8000000, 0x3FF00745, 0xE28905F4, 0xBE36F8C0,
- 0xA8000000, 0x3FF00749, 0x0B1407AA, 0x3E189774,
- 0xAC000000, 0x3FF0074D, 0xCE4493C4, 0xBE3CAB7D,
- 0xAC000000, 0x3FF00751, 0xCB817D78, 0x3DE265D5,
- 0xAC000000, 0x3FF00755, 0x7CA8B4E3, 0x3E3DE1E2,
- 0xB0000000, 0x3FF00759, 0x7D730FC6, 0xBE12FD89,
- 0xB0000000, 0x3FF0075D, 0x1E4D7759, 0x3E38AF60,
- 0xB4000000, 0x3FF00761, 0x0CAD84A2, 0xBE23A3AC,
- 0xB4000000, 0x3FF00765, 0x36B866FD, 0x3E33BCFB,
- 0xB8000000, 0x3FF00769, 0x4D0667A1, 0xBE2D4858,
- 0xB8000000, 0x3FF0076D, 0xCBF08E6A, 0x3E2E1567,
- 0xBC000000, 0x3FF00771, 0x9FD34D05, 0xBE333664,
- 0xBC000000, 0x3FF00775, 0x9837D6E0, 0x3E253114,
- 0xC0000000, 0x3FF00779, 0x5238327D, 0xBE37887F,
- 0xC0000000, 0x3FF0077D, 0x24C8DC90, 0x3E1999FA,
- 0xC4000000, 0x3FF00781, 0x1DA2F8BE, 0xBE3B9A7C,
- 0xC4000000, 0x3FF00785, 0xEA50EE6A, 0x3E03A485,
- 0xC8000000, 0x3FF00789, 0xE204A449, 0xBE3F6C5A,
- 0xC8000000, 0x3FF0078D, 0x78D5D0F3, 0xBDF3D3EF,
- 0xC8000000, 0x3FF00791, 0x80B1D66C, 0x3E3D01E4,
- 0xCC000000, 0x3FF00795, 0xD5149796, 0xBE12BBC1,
- 0xCC000000, 0x3FF00799, 0x2A8F92F0, 0x3E39B042,
- 0xD0000000, 0x3FF0079D, 0x6F386487, 0xBE1F820E,
- 0xD0000000, 0x3FF007A1, 0x3BA3BCDA, 0x3E369EBE,
- 0xD4000000, 0x3FF007A5, 0x96320652, 0xBE25A3F0,
- 0xD4000000, 0x3FF007A9, 0xD3FD8FCA, 0x3E33CD58,
- 0xD8000000, 0x3FF007AD, 0xC62D40B1, 0xBE2B069C,
- 0xD8000000, 0x3FF007B1, 0x13AC5766, 0x3E313C12,
- 0xDC000000, 0x3FF007B5, 0x876F3A0B, 0xBE2FE90B,
- 0xDC000000, 0x3FF007B9, 0x357EDEB8, 0x3E2DD5D4,
- 0xE0000000, 0x3FF007BD, 0x4CEC957E, 0xBE32259E,
- 0xE0000000, 0x3FF007C1, 0x128C86C6, 0x3E29B3C2,
- 0xE4000000, 0x3FF007C5, 0xDEA61608, 0xBE341697,
- 0xE4000000, 0x3FF007C9, 0xFEA09E70, 0x3E2611ED,
- 0xE8000000, 0x3FF007CD, 0x58D49AE3, 0xBE35C772,
- 0xE8000000, 0x3FF007D1, 0x39DA3D42, 0x3E22F058,
- 0xEC000000, 0x3FF007D5, 0x9B689043, 0xBE37382D,
- 0xEC000000, 0x3FF007D9, 0x04589AD6, 0x3E204F01,
- 0xF0000000, 0x3FF007DD, 0x86525259, 0xBE3868C9,
- 0xF0000000, 0x3FF007E1, 0x3C761DAC, 0x3E1C5BD1,
- 0xF4000000, 0x3FF007E5, 0xF9822D4C, 0xBE395945,
- 0xF4000000, 0x3FF007E9, 0x8F4221F9, 0x3E191A1E,
- 0xF8000000, 0x3FF007ED, 0xD4E85D3A, 0xBE3A09A2,
- 0xF8000000, 0x3FF007F1, 0x81547225, 0x3E16D8EA,
- 0xFC000000, 0x3FF007F5, 0xF8750E3B, 0xBE3A79DF,
- 0xFC000000, 0x3FF007F9, 0x92EC7DE3, 0x3E159835,
- 0x00000000, 0x3FF007FE, 0x44185C5D, 0xBE3AA9FD } };
-
-#endif
-#endif
diff --git a/sysdeps/m68k/m680x0/fpu/e_exp_data.c b/sysdeps/m68k/m680x0/fpu/e_exp_data.c
new file mode 100644
index 0000000..1cc8931
--- /dev/null
+++ b/sysdeps/m68k/m680x0/fpu/e_exp_data.c
@@ -0,0 +1 @@
+/* Not needed. */
diff --git a/sysdeps/m68k/m680x0/fpu/math_err.c b/sysdeps/m68k/m680x0/fpu/math_err.c
new file mode 100644
index 0000000..1cc8931
--- /dev/null
+++ b/sysdeps/m68k/m680x0/fpu/math_err.c
@@ -0,0 +1 @@
+/* Not needed. */
diff --git a/sysdeps/m68k/m680x0/fpu/t_exp.c b/sysdeps/m68k/m680x0/fpu/t_exp.c
deleted file mode 100644
index fd37963..0000000
--- a/sysdeps/m68k/m680x0/fpu/t_exp.c
+++ /dev/null
@@ -1 +0,0 @@
-/* Empty. Not needed. */
diff --git a/sysdeps/powerpc/fpu/libm-test-ulps b/sysdeps/powerpc/fpu/libm-test-ulps
index f4c67c6..1eec27c 100644
--- a/sysdeps/powerpc/fpu/libm-test-ulps
+++ b/sysdeps/powerpc/fpu/libm-test-ulps
@@ -902,10 +902,10 @@ ildouble: 6
ldouble: 6
Function: Imaginary part of "ccos_downward":
-double: 2
+double: 3
float: 3
float128: 2
-idouble: 2
+idouble: 3
ifloat: 3
ifloat128: 2
ildouble: 6
@@ -922,10 +922,10 @@ ildouble: 6
ldouble: 6
Function: Imaginary part of "ccos_towardzero":
-double: 2
+double: 3
float: 3
float128: 2
-idouble: 2
+idouble: 3
ifloat: 3
ifloat128: 2
ildouble: 6
@@ -972,40 +972,40 @@ ildouble: 2
ldouble: 2
Function: Real part of "ccosh_downward":
-double: 1
+double: 2
float: 3
float128: 2
-idouble: 1
+idouble: 2
ifloat: 3
ifloat128: 2
ildouble: 6
ldouble: 6
Function: Imaginary part of "ccosh_downward":
-double: 2
+double: 3
float: 3
float128: 2
-idouble: 2
+idouble: 3
ifloat: 3
ifloat128: 2
ildouble: 6
ldouble: 6
Function: Real part of "ccosh_towardzero":
-double: 1
+double: 2
float: 3
float128: 2
-idouble: 1
+idouble: 2
ifloat: 3
ifloat128: 2
ildouble: 6
ldouble: 6
Function: Imaginary part of "ccosh_towardzero":
-double: 2
+double: 3
float: 3
float128: 2
-idouble: 2
+idouble: 3
ifloat: 3
ifloat128: 2
ildouble: 6
@@ -1052,40 +1052,40 @@ ildouble: 2
ldouble: 2
Function: Real part of "cexp_downward":
-double: 1
+double: 2
float: 2
float128: 2
-idouble: 1
+idouble: 2
ifloat: 2
ifloat128: 2
ildouble: 11
ldouble: 11
Function: Imaginary part of "cexp_downward":
-double: 1
+double: 3
float: 3
float128: 2
-idouble: 1
+idouble: 3
ifloat: 3
ifloat128: 2
ildouble: 11
ldouble: 11
Function: Real part of "cexp_towardzero":
-double: 1
+double: 2
float: 2
float128: 2
-idouble: 1
+idouble: 2
ifloat: 2
ifloat128: 2
ildouble: 11
ldouble: 11
Function: Imaginary part of "cexp_towardzero":
-double: 1
+double: 3
float: 3
float128: 2
-idouble: 1
+idouble: 3
ifloat: 3
ifloat128: 2
ildouble: 11
@@ -1102,10 +1102,10 @@ ildouble: 3
ldouble: 3
Function: Imaginary part of "cexp_upward":
-double: 1
+double: 3
float: 2
float128: 3
-idouble: 1
+idouble: 3
ifloat: 2
ifloat128: 3
ildouble: 3
@@ -1322,30 +1322,30 @@ ildouble: 3
ldouble: 3
Function: "cosh_downward":
-double: 1
+double: 2
float: 1
float128: 2
-idouble: 1
+idouble: 2
ifloat: 1
ifloat128: 1
ildouble: 2
ldouble: 2
Function: "cosh_towardzero":
-double: 1
+double: 2
float: 1
float128: 2
-idouble: 1
+idouble: 2
ifloat: 1
ifloat128: 1
ildouble: 2
ldouble: 2
Function: "cosh_upward":
-double: 1
+double: 2
float: 2
float128: 3
-idouble: 1
+idouble: 2
ifloat: 2
ifloat128: 1
ildouble: 2
@@ -1370,10 +1370,10 @@ ildouble: 2
ldouble: 2
Function: Real part of "cpow_downward":
-double: 4
+double: 5
float: 8
float128: 6
-idouble: 4
+idouble: 5
ifloat: 8
ifloat128: 6
ildouble: 7
@@ -1390,10 +1390,10 @@ ildouble: 4
ldouble: 4
Function: Real part of "cpow_towardzero":
-double: 4
+double: 5
float: 8
float128: 6
-idouble: 4
+idouble: 5
ifloat: 8
ifloat128: 6
ildouble: 8
@@ -1446,10 +1446,10 @@ ildouble: 1
ldouble: 1
Function: Real part of "csin_downward":
-double: 2
+double: 3
float: 3
float128: 2
-idouble: 2
+idouble: 3
ifloat: 3
ifloat128: 2
ildouble: 6
@@ -1466,10 +1466,10 @@ ildouble: 6
ldouble: 6
Function: Real part of "csin_towardzero":
-double: 2
+double: 3
float: 3
float128: 2
-idouble: 2
+idouble: 3
ifloat: 3
ifloat128: 2
ildouble: 6
@@ -1534,10 +1534,10 @@ ildouble: 6
ldouble: 6
Function: Imaginary part of "csinh_downward":
-double: 2
+double: 3
float: 3
float128: 2
-idouble: 2
+idouble: 3
ifloat: 3
ifloat128: 2
ildouble: 6
@@ -1554,10 +1554,10 @@ ildouble: 6
ldouble: 6
Function: Imaginary part of "csinh_towardzero":
-double: 2
+double: 3
float: 3
float128: 2
-idouble: 2
+idouble: 3
ifloat: 3
ifloat128: 2
ildouble: 6
@@ -1877,10 +1877,10 @@ ildouble: 3
ldouble: 3
Function: "erfc_downward":
-double: 3
+double: 4
float: 4
float128: 5
-idouble: 3
+idouble: 4
ifloat: 4
ifloat128: 5
ildouble: 10
@@ -1897,10 +1897,10 @@ ildouble: 9
ldouble: 9
Function: "erfc_upward":
-double: 3
+double: 4
float: 4
float128: 5
-idouble: 3
+idouble: 4
ifloat: 4
ifloat128: 5
ildouble: 7
@@ -1923,20 +1923,20 @@ ildouble: 1
ldouble: 1
Function: "exp10_downward":
-double: 2
+double: 3
float: 1
float128: 3
-idouble: 2
+idouble: 3
ifloat: 1
ifloat128: 3
ildouble: 9
ldouble: 9
Function: "exp10_towardzero":
-double: 2
+double: 3
float: 1
float128: 3
-idouble: 2
+idouble: 3
ifloat: 1
ifloat128: 3
ildouble: 9
diff --git a/sysdeps/x86_64/fpu/libm-test-ulps b/sysdeps/x86_64/fpu/libm-test-ulps
index e26f9c1..493ad87 100644
--- a/sysdeps/x86_64/fpu/libm-test-ulps
+++ b/sysdeps/x86_64/fpu/libm-test-ulps
@@ -894,10 +894,10 @@ ildouble: 3
ldouble: 3
Function: Imaginary part of "ccos_downward":
-double: 2
+double: 3
float: 3
float128: 2
-idouble: 2
+idouble: 3
ifloat: 3
ifloat128: 2
ildouble: 3
@@ -914,10 +914,10 @@ ildouble: 3
ldouble: 3
Function: Imaginary part of "ccos_towardzero":
-double: 2
+double: 3
float: 3
float128: 2
-idouble: 2
+idouble: 3
ifloat: 3
ifloat128: 2
ildouble: 3
@@ -964,40 +964,40 @@ ildouble: 1
ldouble: 1
Function: Real part of "ccosh_downward":
-double: 1
+double: 2
float: 2
float128: 2
-idouble: 1
+idouble: 2
ifloat: 2
ifloat128: 2
ildouble: 3
ldouble: 3
Function: Imaginary part of "ccosh_downward":
-double: 2
+double: 3
float: 3
float128: 2
-idouble: 2
+idouble: 3
ifloat: 3
ifloat128: 2
ildouble: 3
ldouble: 3
Function: Real part of "ccosh_towardzero":
-double: 1
+double: 2
float: 3
float128: 2
-idouble: 1
+idouble: 2
ifloat: 3
ifloat128: 2
ildouble: 3
ldouble: 3
Function: Imaginary part of "ccosh_towardzero":
-double: 2
+double: 3
float: 3
float128: 2
-idouble: 2
+idouble: 3
ifloat: 3
ifloat128: 2
ildouble: 3
@@ -1044,40 +1044,40 @@ ildouble: 1
ldouble: 1
Function: Real part of "cexp_downward":
-double: 1
+double: 2
float: 2
float128: 2
-idouble: 1
+idouble: 2
ifloat: 2
ifloat128: 2
ildouble: 3
ldouble: 3
Function: Imaginary part of "cexp_downward":
-double: 1
+double: 3
float: 3
float128: 2
-idouble: 1
+idouble: 3
ifloat: 3
ifloat128: 2
ildouble: 3
ldouble: 3
Function: Real part of "cexp_towardzero":
-double: 1
+double: 2
float: 2
float128: 2
-idouble: 1
+idouble: 2
ifloat: 2
ifloat128: 2
ildouble: 3
ldouble: 3
Function: Imaginary part of "cexp_towardzero":
-double: 1
+double: 3
float: 3
float128: 2
-idouble: 1
+idouble: 3
ifloat: 3
ifloat128: 2
ildouble: 3
@@ -1094,10 +1094,10 @@ ildouble: 2
ldouble: 2
Function: Imaginary part of "cexp_upward":
-double: 1
+double: 3
float: 2
float128: 3
-idouble: 1
+idouble: 3
ifloat: 2
ifloat128: 3
ildouble: 3
@@ -1330,30 +1330,30 @@ ildouble: 2
ldouble: 2
Function: "cosh_downward":
-double: 1
+double: 2
float: 1
float128: 2
-idouble: 1
+idouble: 2
ifloat: 1
ifloat128: 1
ildouble: 2
ldouble: 3
Function: "cosh_towardzero":
-double: 1
+double: 2
float: 1
float128: 2
-idouble: 1
+idouble: 2
ifloat: 1
ifloat128: 1
ildouble: 2
ldouble: 2
Function: "cosh_upward":
-double: 1
+double: 2
float: 2
float128: 3
-idouble: 1
+idouble: 2
ifloat: 2
ifloat128: 1
ildouble: 2
@@ -1378,10 +1378,10 @@ ildouble: 4
ldouble: 4
Function: Real part of "cpow_downward":
-double: 4
+double: 5
float: 8
float128: 6
-idouble: 4
+idouble: 5
ifloat: 8
ifloat128: 6
ildouble: 7
@@ -1398,10 +1398,10 @@ ildouble: 2
ldouble: 2
Function: Real part of "cpow_towardzero":
-double: 4
+double: 5
float: 8
float128: 6
-idouble: 4
+idouble: 5
ifloat: 8
ifloat128: 6
ildouble: 7
@@ -1452,10 +1452,10 @@ float128: 1
ifloat128: 1
Function: Real part of "csin_downward":
-double: 2
+double: 3
float: 3
float128: 2
-idouble: 2
+idouble: 3
ifloat: 3
ifloat128: 2
ildouble: 3
@@ -1472,10 +1472,10 @@ ildouble: 3
ldouble: 3
Function: Real part of "csin_towardzero":
-double: 2
+double: 3
float: 3
float128: 2
-idouble: 2
+idouble: 3
ifloat: 3
ifloat128: 2
ildouble: 3
@@ -1540,10 +1540,10 @@ ildouble: 3
ldouble: 3
Function: Imaginary part of "csinh_downward":
-double: 2
+double: 3
float: 3
float128: 2
-idouble: 2
+idouble: 3
ifloat: 3
ifloat128: 2
ildouble: 3
@@ -1560,10 +1560,10 @@ ildouble: 3
ldouble: 3
Function: Imaginary part of "csinh_towardzero":
-double: 2
+double: 3
float: 3
float128: 2
-idouble: 2
+idouble: 3
ifloat: 3
ifloat128: 2
ildouble: 3
@@ -1924,20 +1924,20 @@ ildouble: 1
ldouble: 1
Function: "exp10_downward":
-double: 2
+double: 3
float: 1
float128: 3
-idouble: 2
+idouble: 3
ifloat: 1
ifloat128: 3
ildouble: 2
ldouble: 2
Function: "exp10_towardzero":
-double: 2
+double: 3
float: 1
float128: 3
-idouble: 2
+idouble: 3
ifloat: 1
ifloat128: 3
ildouble: 2