about summary refs log tree commit diff
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
parentb7cdc2aeb16c07fd9e6ec59f96f862b7fe2d3fdd (diff)
downloadglibc-e70c17682518fab2fad164fecf73341443bc2ed3.tar.gz
glibc-e70c17682518fab2fad164fecf73341443bc2ed3.tar.xz
glibc-e70c17682518fab2fad164fecf73341443bc2ed3.zip
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.
-rw-r--r--NEWS2
-rw-r--r--math/Makefile4
-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
26 files changed, 885 insertions, 3672 deletions
diff --git a/NEWS b/NEWS
index 325157c0da..085325ab87 100644
--- a/NEWS
+++ b/NEWS
@@ -16,7 +16,7 @@ Major new features:
   to set the install root if you wish to install into a non-default
   configured location.
 
-* Optimized generic sinf, cosf, sincosf and tanf.
+* Optimized generic exp, exp2, sinf, cosf, sincosf and tanf.
 
 * The reallocarray function is now declared under _DEFAULT_SOURCE, not just
   for _GNU_SOURCE, to match BSD environments.
diff --git a/math/Makefile b/math/Makefile
index bff726fe81..f1ba1a0c36 100644
--- a/math/Makefile
+++ b/math/Makefile
@@ -42,7 +42,7 @@ extra-libs-others = $(extra-libs)
 libm-support = s_lib_version s_matherr s_signgam			\
 	       fclrexcpt fgetexcptflg fraiseexcpt fsetexcptflg		\
 	       ftestexcept fegetround fesetround fegetenv feholdexcpt	\
-	       fesetenv feupdateenv t_exp fedisblxcpt feenablxcpt	\
+	       fesetenv feupdateenv fedisblxcpt feenablxcpt	\
 	       fegetexcept fesetexcept fetestexceptflag fegetmode	\
 	       fesetmode
 
@@ -127,7 +127,7 @@ type-ldouble-yes := ldouble
 type-double-suffix :=
 type-double-routines := branred doasin dosincos mpa mpatan2	\
 		       k_rem_pio2 mpatan mpsqrt mptan sincos32	\
-		       sincostab
+		       sincostab math_err e_exp_data
 
 # float support
 type-float-suffix := f
diff --git a/sysdeps/aarch64/libm-test-ulps b/sysdeps/aarch64/libm-test-ulps
index 6a89028459..585e5bbce7 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 e62cca3e03..798e3c465c 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 0000000000..1cc8931700
--- /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 0000000000..1cc8931700
--- /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 fd37963b05..0000000000
--- 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 0000000000..1cc8931700
--- /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 0000000000..1cc8931700
--- /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 41254ae60a..0000000000
--- 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 7d8b414034..209f20b972 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 d07e787ec8..96afcf9c20 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 0000000000..ef02f848b0
--- /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 5577aa3f40..9bf29e5cb3 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 4ee6040638..0000000000
--- 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 0000000000..02d94fed3e
--- /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 0000000000..efd7ef0832
--- /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 555c4ff01b..0000000000
--- 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 1fd73338cf..0000000000
--- 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 64ab2c8fca..0000000000
--- 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 b1eff5253e..0000000000
--- 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 0000000000..1cc8931700
--- /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 0000000000..1cc8931700
--- /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 fd37963b05..0000000000
--- 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 f4c67c6423..1eec27c1dc 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 e26f9c1358..493ad8749d 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