Fix issue #597 for 32bit ARM

Fix issue #597 for 32bit ARM

/*
 * Copyright (c) 2014 Advanced Micro Devices, Inc.
 *
 * Copyright (c) 2017 Michal Babej / Tampere University of Technology
 *
 * Permission is hereby granted, free of charge, to any person obtaining a copy
 * of this software and associated documentation files (the "Software"), to deal
 * in the Software without restriction, including without limitation the rights
 * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 * copies of the Software, and to permit persons to whom the Software is
 * furnished to do so, subject to the following conditions:
 *
 * The above copyright notice and this permission notice shall be included in
 * all copies or substantial portions of the Software.
 *
 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
 * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
 * THE SOFTWARE.
 */

#include "misc.h"
#include "vtables.h"
#include "vtables_macros.h"

#ifdef cl_khr_fp64

DECLARE_VTABLE(double2, LN_TBL, 65) = {
    (double2)(0x0.0000000000000p+0, 0x0.0000000000000p+0),
    (double2)(0x1.fc0a800000000p-7, 0x1.61f807c79f3dbp-28),
    (double2)(0x1.f829800000000p-6, 0x1.873c1980267c8p-25),
    (double2)(0x1.7745800000000p-5, 0x1.ec65b9f88c69ep-26),
    (double2)(0x1.f0a3000000000p-5, 0x1.8022c54cc2f99p-26),
    (double2)(0x1.341d700000000p-4, 0x1.2c37a3a125330p-25),
    (double2)(0x1.6f0d200000000p-4, 0x1.15cad69737c93p-25),
    (double2)(0x1.a926d00000000p-4, 0x1.d256ab1b285e9p-27),
    (double2)(0x1.e270700000000p-4, 0x1.b8abcb97a7aa2p-26),
    (double2)(0x1.0d77e00000000p-3, 0x1.f34239659a5dcp-25),
    (double2)(0x1.2955280000000p-3, 0x1.e07fd48d30177p-25),
    (double2)(0x1.44d2b00000000p-3, 0x1.b32df4799f4f6p-25),
    (double2)(0x1.5ff3000000000p-3, 0x1.c29e4f4f21cf8p-25),
    (double2)(0x1.7ab8900000000p-3, 0x1.086c848df1b59p-30),
    (double2)(0x1.9525a80000000p-3, 0x1.cf456b4764130p-27),
    (double2)(0x1.af3c900000000p-3, 0x1.3a02ffcb63398p-25),
    (double2)(0x1.c8ff780000000p-3, 0x1.1e6a6886b0976p-25),
    (double2)(0x1.e270700000000p-3, 0x1.b8abcb97a7aa2p-25),
    (double2)(0x1.fb91800000000p-3, 0x1.b578f8aa35552p-25),
    (double2)(0x1.0a324c0000000p-2, 0x1.139c871afb9fcp-25),
    (double2)(0x1.1675c80000000p-2, 0x1.5d5d30701ce64p-25),
    (double2)(0x1.22941c0000000p-2, 0x1.de7bcb2d12142p-25),
    (double2)(0x1.2e8e280000000p-2, 0x1.d708e984e1664p-25),
    (double2)(0x1.3a64c40000000p-2, 0x1.56945e9c72f36p-26),
    (double2)(0x1.4618bc0000000p-2, 0x1.0e2f613e85bdap-29),
    (double2)(0x1.51aad80000000p-2, 0x1.cb7e0b42724f6p-28),
    (double2)(0x1.5d1bd80000000p-2, 0x1.fac04e52846c7p-25),
    (double2)(0x1.686c800000000p-2, 0x1.e9b14aec442bep-26),
    (double2)(0x1.739d7c0000000p-2, 0x1.b5de8034e7126p-25),
    (double2)(0x1.7eaf800000000p-2, 0x1.dc157e1b259d3p-25),
    (double2)(0x1.89a3380000000p-2, 0x1.b05096ad69c62p-28),
    (double2)(0x1.9479400000000p-2, 0x1.c2116faba4cddp-26),
    (double2)(0x1.9f323c0000000p-2, 0x1.65fcc25f95b47p-25),
    (double2)(0x1.a9cec80000000p-2, 0x1.a9a08498d4850p-26),
    (double2)(0x1.b44f740000000p-2, 0x1.de647b1465f77p-25),
    (double2)(0x1.beb4d80000000p-2, 0x1.da71b7bf7861dp-26),
    (double2)(0x1.c8ff7c0000000p-2, 0x1.e6a6886b09760p-28),
    (double2)(0x1.d32fe40000000p-2, 0x1.f0075eab0ef64p-25),
    (double2)(0x1.dd46a00000000p-2, 0x1.3071282fb989bp-28),
    (double2)(0x1.e744240000000p-2, 0x1.0eb43c3f1bed2p-25),
    (double2)(0x1.f128f40000000p-2, 0x1.faf06ecb35c84p-26),
    (double2)(0x1.faf5880000000p-2, 0x1.ef1e63db35f68p-27),
    (double2)(0x1.02552a0000000p-1, 0x1.69743fb1a71a5p-27),
    (double2)(0x1.0723e40000000p-1, 0x1.c1cdf404e5796p-25),
    (double2)(0x1.0be72e0000000p-1, 0x1.094aa0ada625ep-27),
    (double2)(0x1.109f380000000p-1, 0x1.e2d4c96fde3ecp-25),
    (double2)(0x1.154c3c0000000p-1, 0x1.2f4d5e9a98f34p-25),
    (double2)(0x1.19ee6a0000000p-1, 0x1.467c96ecc5cbep-25),
    (double2)(0x1.1e85f40000000p-1, 0x1.e7040d03dec5ap-25),
    (double2)(0x1.23130c0000000p-1, 0x1.7bebf4282de36p-25),
    (double2)(0x1.2795e00000000p-1, 0x1.289b11aeb783fp-25),
    (double2)(0x1.2c0e9e0000000p-1, 0x1.a891d1772f538p-26),
    (double2)(0x1.307d720000000p-1, 0x1.34f10be1fb591p-25),
    (double2)(0x1.34e2880000000p-1, 0x1.d9ce1d316eb93p-25),
    (double2)(0x1.393e0c0000000p-1, 0x1.3562a19a9c442p-25),
    (double2)(0x1.3d90260000000p-1, 0x1.4e2adf548084cp-26),
    (double2)(0x1.41d8fe0000000p-1, 0x1.08ce55cc8c97ap-26),
    (double2)(0x1.4618bc0000000p-1, 0x1.0e2f613e85bdap-28),
    (double2)(0x1.4a4f840000000p-1, 0x1.db03ebb0227bfp-25),
    (double2)(0x1.4e7d800000000p-1, 0x1.1b75bb09cb098p-25),
    (double2)(0x1.52a2d20000000p-1, 0x1.96f16abb9df22p-27),
    (double2)(0x1.56bf9c0000000p-1, 0x1.5b3f399411c62p-25),
    (double2)(0x1.5ad4040000000p-1, 0x1.86b3e59f65355p-26),
    (double2)(0x1.5ee02a0000000p-1, 0x1.2482ceae1ac12p-26),
    (double2)(0x1.62e42e0000000p-1, 0x1.efa39ef35793cp-25),
};

// Arrays atan_jby256_lead and atan_jby256_tail contain
// leading and trailing parts respectively of precomputed
// values of atan(j/256), for j = 16, 17, ..., 256.
// atan_jby256_lead contains the first 21 bits of precision,
// and atan_jby256_tail contains a further 53 bits precision.

DECLARE_VTABLE(double2, ATAN_JBY256_TBL, 241) = {
    (double2)(0x1.ff55b00000000p-5, 0x1.6e59fbd38db2cp-26),
    (double2)(0x1.0f99e00000000p-4, 0x1.4e3aa54dedf96p-25),
    (double2)(0x1.1f86d00000000p-4, 0x1.7e105ab1bda88p-25),
    (double2)(0x1.2f71900000000p-4, 0x1.8c5254d013fd0p-27),
    (double2)(0x1.3f59f00000000p-4, 0x1.cf8ab3ad62670p-29),
    (double2)(0x1.4f3fd00000000p-4, 0x1.9dca4bec80468p-26),
    (double2)(0x1.5f23200000000p-4, 0x1.3f4b5ec98a8dap-26),
    (double2)(0x1.6f03b00000000p-4, 0x1.b9d49619d81fep-25),
    (double2)(0x1.7ee1800000000p-4, 0x1.3017887460934p-27),
    (double2)(0x1.8ebc500000000p-4, 0x1.11e3eca0b9944p-26),
    (double2)(0x1.9e94100000000p-4, 0x1.4f3f73c5a332ep-26),
    (double2)(0x1.ae68a00000000p-4, 0x1.c71c8ae0e00a6p-26),
    (double2)(0x1.be39e00000000p-4, 0x1.7cde0f86fbdc7p-25),
    (double2)(0x1.ce07c00000000p-4, 0x1.70f328c889c72p-26),
    (double2)(0x1.ddd2100000000p-4, 0x1.c07ae9b994efep-26),
    (double2)(0x1.ed98c00000000p-4, 0x1.0c8021d7b1698p-27),
    (double2)(0x1.fd5ba00000000p-4, 0x1.35585edb8cb22p-25),
    (double2)(0x1.068d500000000p-3, 0x1.0842567b30e96p-24),
    (double2)(0x1.0e6ad00000000p-3, 0x1.99e811031472ep-24),
    (double2)(0x1.1646500000000p-3, 0x1.041821416bceep-25),
    (double2)(0x1.1e1fa00000000p-3, 0x1.f6086e4dc96f4p-24),
    (double2)(0x1.25f6e00000000p-3, 0x1.71a535c5f1b58p-27),
    (double2)(0x1.2dcbd00000000p-3, 0x1.65f743fe63ca1p-24),
    (double2)(0x1.359e800000000p-3, 0x1.dbd733472d014p-24),
    (double2)(0x1.3d6ee00000000p-3, 0x1.d18cc4d8b0d1dp-24),
    (double2)(0x1.453ce00000000p-3, 0x1.8c12553c8fb29p-24),
    (double2)(0x1.4d08700000000p-3, 0x1.53b49e2e8f991p-24),
    (double2)(0x1.54d1800000000p-3, 0x1.7422ae148c141p-24),
    (double2)(0x1.5c98100000000p-3, 0x1.e3ec269df56a8p-27),
    (double2)(0x1.645bf00000000p-3, 0x1.ff6754e7e0ac9p-24),
    (double2)(0x1.6c1d400000000p-3, 0x1.131267b1b5aadp-24),
    (double2)(0x1.73dbd00000000p-3, 0x1.d14fa403a94bcp-24),
    (double2)(0x1.7b97b00000000p-3, 0x1.2f396c089a3d8p-25),
    (double2)(0x1.8350b00000000p-3, 0x1.c731d78fa95bbp-24),
    (double2)(0x1.8b06e00000000p-3, 0x1.c50f385177399p-24),
    (double2)(0x1.92ba300000000p-3, 0x1.f41409c6f2c20p-25),
    (double2)(0x1.9a6a800000000p-3, 0x1.d2d90c4c39ec0p-24),
    (double2)(0x1.a217e00000000p-3, 0x1.80420696f2106p-25),
    (double2)(0x1.a9c2300000000p-3, 0x1.b40327943a2e8p-27),
    (double2)(0x1.b169600000000p-3, 0x1.5d35e02f3d2a2p-25),
    (double2)(0x1.b90d700000000p-3, 0x1.4a498288117b0p-25),
    (double2)(0x1.c0ae500000000p-3, 0x1.35da119afb324p-25),
    (double2)(0x1.c84bf00000000p-3, 0x1.14e85cdb9a908p-24),
    (double2)(0x1.cfe6500000000p-3, 0x1.38754e5547b9ap-25),
    (double2)(0x1.d77d500000000p-3, 0x1.be40ae6ce3246p-24),
    (double2)(0x1.df11000000000p-3, 0x1.0c993b3bea7e7p-24),
    (double2)(0x1.e6a1400000000p-3, 0x1.1d2dd89ac3359p-24),
    (double2)(0x1.ee2e100000000p-3, 0x1.1476603332c46p-25),
    (double2)(0x1.f5b7500000000p-3, 0x1.f25901bac55b7p-24),
    (double2)(0x1.fd3d100000000p-3, 0x1.f881b7c826e28p-24),
    (double2)(0x1.025fa00000000p-2, 0x1.441996d698d20p-24),
    (double2)(0x1.061ee00000000p-2, 0x1.407ac521ea089p-23),
    (double2)(0x1.09dc500000000p-2, 0x1.2fb0c6c4b1723p-23),
    (double2)(0x1.0d97e00000000p-2, 0x1.ca135966a3e18p-23),
    (double2)(0x1.1151a00000000p-2, 0x1.b1218e4d646e4p-25),
    (double2)(0x1.1509700000000p-2, 0x1.d4e72a350d288p-25),
    (double2)(0x1.18bf500000000p-2, 0x1.4617e2f04c329p-23),
    (double2)(0x1.1c73500000000p-2, 0x1.096ec41e82650p-25),
    (double2)(0x1.2025500000000p-2, 0x1.9f91f25773e6ep-24),
    (double2)(0x1.23d5600000000p-2, 0x1.59c0820f1d674p-25),
    (double2)(0x1.2783700000000p-2, 0x1.02bf7a2df1064p-25),
    (double2)(0x1.2b2f700000000p-2, 0x1.fb36bfc40508fp-23),
    (double2)(0x1.2ed9800000000p-2, 0x1.ea08f3f8dc892p-24),
    (double2)(0x1.3281800000000p-2, 0x1.3ed6254656a0ep-24),
    (double2)(0x1.3627700000000p-2, 0x1.b83f5e5e69c58p-25),
    (double2)(0x1.39cb400000000p-2, 0x1.d6ec2af768592p-23),
    (double2)(0x1.3d6d100000000p-2, 0x1.493889a226f94p-25),
    (double2)(0x1.410cb00000000p-2, 0x1.5ad8fa65279bap-23),
    (double2)(0x1.44aa400000000p-2, 0x1.b615784d45434p-25),
    (double2)(0x1.4845a00000000p-2, 0x1.09a184368f145p-23),
    (double2)(0x1.4bdee00000000p-2, 0x1.61a2439b0d91cp-24),
    (double2)(0x1.4f75f00000000p-2, 0x1.ce1a65e39a978p-24),
    (double2)(0x1.530ad00000000p-2, 0x1.32a39a93b6a66p-23),
    (double2)(0x1.569d800000000p-2, 0x1.1c3699af804e7p-23),
    (double2)(0x1.5a2e000000000p-2, 0x1.75e0f4e44ede8p-26),
    (double2)(0x1.5dbc300000000p-2, 0x1.f77ced1a7a83bp-23),
    (double2)(0x1.6148400000000p-2, 0x1.84e7f0cb1b500p-29),
    (double2)(0x1.64d1f00000000p-2, 0x1.ec6b838b02dfep-23),
    (double2)(0x1.6859700000000p-2, 0x1.3ebf4dfbeda87p-23),
    (double2)(0x1.6bdea00000000p-2, 0x1.9397aed9cb475p-23),
    (double2)(0x1.6f61900000000p-2, 0x1.07937bc239c54p-24),
    (double2)(0x1.72e2200000000p-2, 0x1.aa754553131b6p-23),
    (double2)(0x1.7660700000000p-2, 0x1.4a05d407c45dcp-24),
    (double2)(0x1.79dc600000000p-2, 0x1.132231a206dd0p-23),
    (double2)(0x1.7d56000000000p-2, 0x1.2d8ecfdd69c88p-24),
    (double2)(0x1.80cd400000000p-2, 0x1.a852c74218606p-24),
    (double2)(0x1.8442200000000p-2, 0x1.71bf2baeebb50p-23),
    (double2)(0x1.87b4b00000000p-2, 0x1.83d7db7491820p-27),
    (double2)(0x1.8b24d00000000p-2, 0x1.ca50d92b6da14p-25),
    (double2)(0x1.8e92900000000p-2, 0x1.6f5cde8530298p-26),
    (double2)(0x1.91fde00000000p-2, 0x1.f343198910740p-24),
    (double2)(0x1.9566d00000000p-2, 0x1.0e8d241ccd80ap-24),
    (double2)(0x1.98cd500000000p-2, 0x1.1535ac619e6c8p-24),
    (double2)(0x1.9c31600000000p-2, 0x1.7316041c36cd2p-24),
    (double2)(0x1.9f93000000000p-2, 0x1.985a000637d8ep-24),
    (double2)(0x1.a2f2300000000p-2, 0x1.f2f29858c0a68p-25),
    (double2)(0x1.a64ee00000000p-2, 0x1.879847f96d909p-23),
    (double2)(0x1.a9a9200000000p-2, 0x1.ab3d319e12e42p-23),
    (double2)(0x1.ad00f00000000p-2, 0x1.5088162dfc4c2p-24),
    (double2)(0x1.b056400000000p-2, 0x1.05749a1cd9d8cp-25),
    (double2)(0x1.b3a9100000000p-2, 0x1.da65c6c6b8618p-26),
    (double2)(0x1.b6f9600000000p-2, 0x1.739bf7df1ad64p-25),
    (double2)(0x1.ba47300000000p-2, 0x1.bc31252aa3340p-25),
    (double2)(0x1.bd92800000000p-2, 0x1.e528191ad3aa8p-26),
    (double2)(0x1.c0db400000000p-2, 0x1.929d93df19f18p-23),
    (double2)(0x1.c421900000000p-2, 0x1.ff11eb693a080p-26),
    (double2)(0x1.c765500000000p-2, 0x1.55ae3f145a3a0p-27),
    (double2)(0x1.caa6800000000p-2, 0x1.cbcd8c6c0ca82p-24),
    (double2)(0x1.cde5300000000p-2, 0x1.0cb04d425d304p-24),
    (double2)(0x1.d121500000000p-2, 0x1.9adfcab5be678p-24),
    (double2)(0x1.d45ae00000000p-2, 0x1.93d90c5662508p-23),
    (double2)(0x1.d791f00000000p-2, 0x1.68489bd35ff40p-24),
    (double2)(0x1.dac6700000000p-2, 0x1.586ed3da2b7e0p-28),
    (double2)(0x1.ddf8500000000p-2, 0x1.7604d2e850eeep-23),
    (double2)(0x1.e127b00000000p-2, 0x1.ac1d12bfb53d8p-24),
    (double2)(0x1.e454800000000p-2, 0x1.9b3d468274740p-28),
    (double2)(0x1.e77eb00000000p-2, 0x1.fc5d68d10e53cp-24),
    (double2)(0x1.eaa6500000000p-2, 0x1.8f9e51884becbp-23),
    (double2)(0x1.edcb600000000p-2, 0x1.a87f0869c06d1p-23),
    (double2)(0x1.f0ede00000000p-2, 0x1.31e7279f685fap-23),
    (double2)(0x1.f40dd00000000p-2, 0x1.6a8282f9719b0p-27),
    (double2)(0x1.f72b200000000p-2, 0x1.0d2724a8a44e0p-25),
    (double2)(0x1.fa45d00000000p-2, 0x1.a60524b11ad4ep-23),
    (double2)(0x1.fd5e000000000p-2, 0x1.75fdf832750f0p-26),
    (double2)(0x1.0039c00000000p-1, 0x1.cf06902e4cd36p-23),
    (double2)(0x1.01c3400000000p-1, 0x1.e82422d4f6d10p-25),
    (double2)(0x1.034b700000000p-1, 0x1.24a091063e6c0p-26),
    (double2)(0x1.04d2500000000p-1, 0x1.8a1a172dc6f38p-24),
    (double2)(0x1.0657e00000000p-1, 0x1.29b6619f8a92dp-22),
    (double2)(0x1.07dc300000000p-1, 0x1.9274d9c1b70c8p-24),
    (double2)(0x1.095f300000000p-1, 0x1.0c34b1fbb7930p-26),
    (double2)(0x1.0ae0e00000000p-1, 0x1.639866c20eb50p-25),
    (double2)(0x1.0c61400000000p-1, 0x1.6d6d0f6832e9ep-23),
    (double2)(0x1.0de0500000000p-1, 0x1.af54def99f25ep-22),
    (double2)(0x1.0f5e200000000p-1, 0x1.16cfc52a00262p-22),
    (double2)(0x1.10daa00000000p-1, 0x1.dcc1e83569c32p-23),
    (double2)(0x1.1255d00000000p-1, 0x1.37f7a551ed425p-22),
    (double2)(0x1.13cfb00000000p-1, 0x1.f6360adc98887p-22),
    (double2)(0x1.1548500000000p-1, 0x1.2c6ec8d35a2c1p-22),
    (double2)(0x1.16bfa00000000p-1, 0x1.bd44df84cb036p-23),
    (double2)(0x1.1835a00000000p-1, 0x1.117cf826e310ep-22),
    (double2)(0x1.19aa500000000p-1, 0x1.ca533f332cfc9p-22),
    (double2)(0x1.1b1dc00000000p-1, 0x1.0f208509dbc2ep-22),
    (double2)(0x1.1c8fe00000000p-1, 0x1.cd07d93c945dep-23),
    (double2)(0x1.1e00b00000000p-1, 0x1.57bdfd67e6d72p-22),
    (double2)(0x1.1f70400000000p-1, 0x1.aab89c516c658p-24),
    (double2)(0x1.20de800000000p-1, 0x1.3e823b1a1b8a0p-25),
    (double2)(0x1.224b700000000p-1, 0x1.307464a9d6d3cp-23),
    (double2)(0x1.23b7100000000p-1, 0x1.c5993cd438843p-22),
    (double2)(0x1.2521700000000p-1, 0x1.ba2fca02ab554p-22),
    (double2)(0x1.268a900000000p-1, 0x1.01a5b6983a268p-23),
    (double2)(0x1.27f2600000000p-1, 0x1.273d1b350efc8p-25),
    (double2)(0x1.2958e00000000p-1, 0x1.64c238c37b0c6p-23),
    (double2)(0x1.2abe200000000p-1, 0x1.aded07370a300p-25),
    (double2)(0x1.2c22100000000p-1, 0x1.78091197eb47ep-23),
    (double2)(0x1.2d84c00000000p-1, 0x1.4b0f245e0dabcp-24),
    (double2)(0x1.2ee6200000000p-1, 0x1.080d9794e2eafp-22),
    (double2)(0x1.3046400000000p-1, 0x1.d4ec242b60c76p-23),
    (double2)(0x1.31a5200000000p-1, 0x1.221d2f940caa0p-27),
    (double2)(0x1.3302b00000000p-1, 0x1.cdbc42b2bba5cp-24),
    (double2)(0x1.345f000000000p-1, 0x1.cce37bb440840p-25),
    (double2)(0x1.35ba000000000p-1, 0x1.6c1d999cf1dd0p-22),
    (double2)(0x1.3713d00000000p-1, 0x1.bed8a07eb0870p-26),
    (double2)(0x1.386c500000000p-1, 0x1.69ed88f490e3cp-24),
    (double2)(0x1.39c3900000000p-1, 0x1.cd41719b73ef0p-25),
    (double2)(0x1.3b19800000000p-1, 0x1.cbc4ac95b41b7p-22),
    (double2)(0x1.3c6e400000000p-1, 0x1.238f1b890f5d7p-22),
    (double2)(0x1.3dc1c00000000p-1, 0x1.50c4282259cc4p-24),
    (double2)(0x1.3f13f00000000p-1, 0x1.713d2de87b3e2p-22),
    (double2)(0x1.4064f00000000p-1, 0x1.1d5a7d2255276p-23),
    (double2)(0x1.41b4a00000000p-1, 0x1.c0dfd48227ac1p-22),
    (double2)(0x1.4303200000000p-1, 0x1.1c964dab76753p-22),
    (double2)(0x1.4450600000000p-1, 0x1.6de56d5704496p-23),
    (double2)(0x1.459c600000000p-1, 0x1.4aeb71fd19968p-23),
    (double2)(0x1.46e7200000000p-1, 0x1.fbf91c57b1918p-23),
    (double2)(0x1.4830a00000000p-1, 0x1.d6bef7fbe5d9ap-22),
    (double2)(0x1.4978f00000000p-1, 0x1.464d3dc249066p-22),
    (double2)(0x1.4ac0000000000p-1, 0x1.638e2ec4d9073p-22),
    (double2)(0x1.4c05e00000000p-1, 0x1.16f4a7247ea7cp-24),
    (double2)(0x1.4d4a800000000p-1, 0x1.1a0a740f1d440p-28),
    (double2)(0x1.4e8de00000000p-1, 0x1.6edbb0114a33cp-23),
    (double2)(0x1.4fd0100000000p-1, 0x1.dbee8bf1d513cp-24),
    (double2)(0x1.5111000000000p-1, 0x1.5b8bdb0248f73p-22),
    (double2)(0x1.5250c00000000p-1, 0x1.7de3d3f5eac64p-22),
    (double2)(0x1.538f500000000p-1, 0x1.ee24187ae448ap-23),
    (double2)(0x1.54cca00000000p-1, 0x1.e06c591ec5192p-22),
    (double2)(0x1.5608d00000000p-1, 0x1.4e3861a332738p-24),
    (double2)(0x1.5743c00000000p-1, 0x1.a9599dcc2bfe4p-24),
    (double2)(0x1.587d800000000p-1, 0x1.f732fbad43468p-25),
    (double2)(0x1.59b6000000000p-1, 0x1.eb9f573b727d9p-22),
    (double2)(0x1.5aed600000000p-1, 0x1.8b212a2eb9897p-22),
    (double2)(0x1.5c23900000000p-1, 0x1.384884c167215p-22),
    (double2)(0x1.5d58900000000p-1, 0x1.0e2d363020051p-22),
    (double2)(0x1.5e8c600000000p-1, 0x1.2820879fbd022p-22),
    (double2)(0x1.5fbf000000000p-1, 0x1.a1ab9893e4b30p-22),
    (double2)(0x1.60f0800000000p-1, 0x1.2d1b817a24478p-23),
    (double2)(0x1.6220d00000000p-1, 0x1.15d7b8ded4878p-25),
    (double2)(0x1.634ff00000000p-1, 0x1.8968f9db3a5e4p-24),
    (double2)(0x1.647de00000000p-1, 0x1.71c4171fe135fp-22),
    (double2)(0x1.65aab00000000p-1, 0x1.6d80f605d0d8cp-22),
    (double2)(0x1.66d6600000000p-1, 0x1.c91f043691590p-24),
    (double2)(0x1.6800e00000000p-1, 0x1.39f8a15fce2b2p-23),
    (double2)(0x1.692a400000000p-1, 0x1.55beda9d94b80p-27),
    (double2)(0x1.6a52700000000p-1, 0x1.b12c15d60949ap-23),
    (double2)(0x1.6b79800000000p-1, 0x1.24167b312bfe3p-22),
    (double2)(0x1.6c9f700000000p-1, 0x1.0ab8633070277p-22),
    (double2)(0x1.6dc4400000000p-1, 0x1.54554ebbc80eep-23),
    (double2)(0x1.6ee7f00000000p-1, 0x1.0204aef5a4bb8p-25),
    (double2)(0x1.700a700000000p-1, 0x1.8af08c679cf2cp-22),
    (double2)(0x1.712be00000000p-1, 0x1.0852a330ae6c8p-22),
    (double2)(0x1.724c300000000p-1, 0x1.6d3eb9ec32916p-23),
    (double2)(0x1.736b600000000p-1, 0x1.685cb7fcbbafep-23),
    (double2)(0x1.7489700000000p-1, 0x1.1f751c1e0bd95p-22),
    (double2)(0x1.75a6700000000p-1, 0x1.705b1b0f72560p-26),
    (double2)(0x1.76c2400000000p-1, 0x1.b98d8d808ca92p-22),
    (double2)(0x1.77dd100000000p-1, 0x1.2ea22c75cc980p-25),
    (double2)(0x1.78f6b00000000p-1, 0x1.7aba62bca0350p-22),
    (double2)(0x1.7a0f400000000p-1, 0x1.d73833442278cp-22),
    (double2)(0x1.7b26c00000000p-1, 0x1.5a5ca1fb18bf9p-22),
    (double2)(0x1.7c3d300000000p-1, 0x1.1a6092b6ecf28p-25),
    (double2)(0x1.7d52800000000p-1, 0x1.44fd049aac104p-24),
    (double2)(0x1.7e66c00000000p-1, 0x1.c114fd8df5180p-29),
    (double2)(0x1.7f79e00000000p-1, 0x1.5972f130feae5p-22),
    (double2)(0x1.808c000000000p-1, 0x1.ca034a55fe198p-24),
    (double2)(0x1.819d000000000p-1, 0x1.6e2b149990227p-22),
    (double2)(0x1.82ad000000000p-1, 0x1.b00000294592cp-24),
    (double2)(0x1.83bbe00000000p-1, 0x1.8b9bdc442620ep-22),
    (double2)(0x1.84c9c00000000p-1, 0x1.d94fdfabf3e4ep-23),
    (double2)(0x1.85d6900000000p-1, 0x1.5db30b145ad9ap-23),
    (double2)(0x1.86e2500000000p-1, 0x1.e3e1eb95022b0p-23),
    (double2)(0x1.87ed000000000p-1, 0x1.d5b8b45442bd6p-22),
    (double2)(0x1.88f6b00000000p-1, 0x1.7a046231ecd2ep-22),
    (double2)(0x1.89ff500000000p-1, 0x1.feafe3ef55232p-22),
    (double2)(0x1.8b06f00000000p-1, 0x1.839e7bfd78267p-22),
    (double2)(0x1.8c0d900000000p-1, 0x1.45cf49d6fa900p-25),
    (double2)(0x1.8d13200000000p-1, 0x1.be3132b27f380p-27),
    (double2)(0x1.8e17a00000000p-1, 0x1.533980bb84f9fp-22),
    (double2)(0x1.8f1b300000000p-1, 0x1.889e2ce3ba390p-26),
    (double2)(0x1.901db00000000p-1, 0x1.f7778c3ad0cc8p-24),
    (double2)(0x1.911f300000000p-1, 0x1.46660cec4eba2p-23),
    (double2)(0x1.921fb00000000p-1, 0x1.5110b4611a626p-23),
};

DECLARE_VTABLE(double2, TWO_TO_JBY64_EP, 64) = {
    (double2)(0x1.0000000000000p+0, 0x0.0000000000000p+0),
    (double2)(0x1.02c9a30000000p+0, 0x1.cef00c1dcdef9p-25),
    (double2)(0x1.059b0d0000000p+0, 0x1.8ac2ba1d73e2ap-27),
    (double2)(0x1.0874510000000p+0, 0x1.0eb37901186bep-25),
    (double2)(0x1.0b55860000000p+0, 0x1.9f3121ec53172p-25),
    (double2)(0x1.0e3ec30000000p+0, 0x1.69e8d10103a17p-27),
    (double2)(0x1.11301d0000000p+0, 0x1.25b50a4ebbf1ap-32),
    (double2)(0x1.1429aa0000000p+0, 0x1.d525bbf668203p-25),
    (double2)(0x1.172b830000000p+0, 0x1.8faa2f5b9bef9p-25),
    (double2)(0x1.1a35be0000000p+0, 0x1.6df96ea796d31p-25),
    (double2)(0x1.1d48730000000p+0, 0x1.68b9aa7805b80p-28),
    (double2)(0x1.2063b80000000p+0, 0x1.0c519ac771dd6p-25),
    (double2)(0x1.2387a60000000p+0, 0x1.ceac470cd83f5p-25),
    (double2)(0x1.26b4560000000p+0, 0x1.789f37495e99cp-26),
    (double2)(0x1.29e9df0000000p+0, 0x1.47f7b84b09745p-26),
    (double2)(0x1.2d285a0000000p+0, 0x1.b900c2d002475p-26),
    (double2)(0x1.306fe00000000p+0, 0x1.4636e2a5bd1abp-25),
    (double2)(0x1.33c08b0000000p+0, 0x1.320b7fa64e430p-27),
    (double2)(0x1.371a730000000p+0, 0x1.ceaa72a9c5154p-26),
    (double2)(0x1.3a7db30000000p+0, 0x1.3967fdba86f24p-26),
    (double2)(0x1.3dea640000000p+0, 0x1.82468446b6824p-25),
    (double2)(0x1.4160a20000000p+0, 0x1.f72e29f84325bp-28),
    (double2)(0x1.44e0860000000p+0, 0x1.8624b40c4dbd0p-30),
    (double2)(0x1.486a2b0000000p+0, 0x1.704f3404f068ep-26),
    (double2)(0x1.4bfdad0000000p+0, 0x1.4d8a89c750e5ep-26),
    (double2)(0x1.4f9b270000000p+0, 0x1.a74b29ab4cf62p-26),
    (double2)(0x1.5342b50000000p+0, 0x1.a753e077c2a0fp-26),
    (double2)(0x1.56f4730000000p+0, 0x1.ad49f699bb2c0p-26),
    (double2)(0x1.5ab07d0000000p+0, 0x1.a90a852b19260p-25),
    (double2)(0x1.5e76f10000000p+0, 0x1.6b48521ba6f93p-26),
    (double2)(0x1.6247eb0000000p+0, 0x1.d2ac258f87d03p-31),
    (double2)(0x1.6623880000000p+0, 0x1.2a91124893ecfp-27),
    (double2)(0x1.6a09e60000000p+0, 0x1.9fcef32422cbep-26),
    (double2)(0x1.6dfb230000000p+0, 0x1.8ca345de441c5p-25),
    (double2)(0x1.71f75e0000000p+0, 0x1.1d8bee7ba46e1p-25),
    (double2)(0x1.75feb50000000p+0, 0x1.9099f22fdba6ap-26),
    (double2)(0x1.7a11470000000p+0, 0x1.f580c36bea881p-27),
    (double2)(0x1.7e2f330000000p+0, 0x1.b3d398841740ap-26),
    (double2)(0x1.8258990000000p+0, 0x1.2999c25159f11p-25),
    (double2)(0x1.868d990000000p+0, 0x1.68925d901c83bp-25),
    (double2)(0x1.8ace540000000p+0, 0x1.15506dadd3e2ap-27),
    (double2)(0x1.8f1ae90000000p+0, 0x1.22aee6c57304ep-25),
    (double2)(0x1.93737b0000000p+0, 0x1.9b8bc9e8a0387p-29),
    (double2)(0x1.97d8290000000p+0, 0x1.fbc9c9f173d24p-25),
    (double2)(0x1.9c49180000000p+0, 0x1.51f8480e3e235p-27),
    (double2)(0x1.a0c6670000000p+0, 0x1.6bbcac96535b5p-25),
    (double2)(0x1.a5503b0000000p+0, 0x1.1f12ae45a1224p-27),
    (double2)(0x1.a9e6b50000000p+0, 0x1.5e7f6fd0fac90p-26),
    (double2)(0x1.ae89f90000000p+0, 0x1.2b5a75abd0e69p-25),
    (double2)(0x1.b33a2b0000000p+0, 0x1.09e2bf5ed7fa1p-25),
    (double2)(0x1.b7f76f0000000p+0, 0x1.7daf237553d84p-27),
    (double2)(0x1.bcc1e90000000p+0, 0x1.2f074891ee83dp-30),
    (double2)(0x1.c199bd0000000p+0, 0x1.b0aa538444196p-25),
    (double2)(0x1.c67f120000000p+0, 0x1.cafa29694426fp-25),
    (double2)(0x1.cb720d0000000p+0, 0x1.9df20d22a0797p-25),
    (double2)(0x1.d072d40000000p+0, 0x1.40f12f71a1e45p-25),
    (double2)(0x1.d5818d0000000p+0, 0x1.9f7490e4bb40bp-25),
    (double2)(0x1.da9e600000000p+0, 0x1.ed9942b84600dp-27),
    (double2)(0x1.dfc9730000000p+0, 0x1.bdcdaf5cb4656p-27),
    (double2)(0x1.e502ee0000000p+0, 0x1.e2cffd89cf44cp-26),
    (double2)(0x1.ea4afa0000000p+0, 0x1.52486cc2c7b9dp-27),
    (double2)(0x1.efa1be0000000p+0, 0x1.cc2b44eee3fa4p-25),
    (double2)(0x1.f507650000000p+0, 0x1.6dc8a80ce9f09p-25),
    (double2)(0x1.fa7c180000000p+0, 0x1.9e90d82e90a7ep-28)
};

DECLARE_VTABLE(double2, SINH_TBL, 37) = {
    (double2)(0x0.0000000000000p+0, 0x0.0000000000000p+0),
    (double2)(0x1.2cd9fc0000000p+0, 0x1.13ae6096a0092p-26),
    (double2)(0x1.d03cf60000000p+1, 0x1.db70cfb79a640p-26),
    (double2)(0x1.40926e0000000p+3, 0x1.c2526b66dc067p-23),
    (double2)(0x1.b4a3800000000p+4, 0x1.b81b18647f380p-23),
    (double2)(0x1.28d0160000000p+6, 0x1.bc1cdd1e1eb08p-20),
    (double2)(0x1.936d228000000p+7, 0x1.d9f201534fb09p-19),
    (double2)(0x1.1228768000000p+9, 0x1.d1c064a4e9954p-18),
    (double2)(0x1.749ea50000000p+10, 0x1.4eca65d06ea74p-18),
    (double2)(0x1.fa71570000000p+11, 0x1.0c259bcc0ecc5p-15),
    (double2)(0x1.5829dc8000000p+13, 0x1.b5a6647cf9016p-13),
    (double2)(0x1.d3c4488000000p+14, 0x1.9691adefb0870p-15),
    (double2)(0x1.3de1650000000p+16, 0x1.3410fc29cde38p-10),
    (double2)(0x1.b00b590000000p+17, 0x1.6a31a50b6fb3cp-11),
    (double2)(0x1.259ac48000000p+19, 0x1.7defc71805c40p-10),
    (double2)(0x1.8f0cca8000000p+20, 0x1.eb49fd80e0babp-6),
    (double2)(0x1.0f2ebd0000000p+22, 0x1.4fffc7bcd5920p-7),
    (double2)(0x1.7093488000000p+23, 0x1.03a93b6c63435p-3),
    (double2)(0x1.f4f2208000000p+24, 0x1.1940bb255fd1cp-4),
    (double2)(0x1.546d8f8000000p+26, 0x1.ed26e14260b50p-2),
    (double2)(0x1.ceb0888000000p+27, 0x1.b47401fc9f2a2p+0),
    (double2)(0x1.3a6e1f8000000p+29, 0x1.67bb3f55634f1p+3),
    (double2)(0x1.ab5adb8000000p+30, 0x1.c435ff8194ddcp+2),
    (double2)(0x1.226af30000000p+32, 0x1.d8fee052ba63ap+5),
    (double2)(0x1.8ab7fb0000000p+33, 0x1.51d7edccde3f6p+7),
    (double2)(0x1.0c3d390000000p+35, 0x1.04b1644557d1ap+8),
    (double2)(0x1.6c93268000000p+36, 0x1.6a6b5ca0a9dc4p+8),
    (double2)(0x1.ef822f0000000p+37, 0x1.fd9cc72249abap+11),
    (double2)(0x1.50bba30000000p+39, 0x1.e58de693edab5p+13),
    (double2)(0x1.c9aae40000000p+40, 0x1.8c70158ac6363p+14),
    (double2)(0x1.3704708000000p+42, 0x1.7614764f43e20p+15),
    (double2)(0x1.a6b7658000000p+43, 0x1.6337db36fc718p+17),
    (double2)(0x1.1f43fc8000000p+45, 0x1.12d98b1f611e2p+19),
    (double2)(0x1.866f348000000p+46, 0x1.392bc108b37ccp+19),
    (double2)(0x1.0953e28000000p+48, 0x1.ce87bdc3473dcp+22),
    (double2)(0x1.689e220000000p+49, 0x1.bc8d5ae99ad14p+21),
    (double2)(0x1.ea215a0000000p+50, 0x1.d20d76744835cp+22),
};

DECLARE_VTABLE(double2, COSH_TBL, 37) = {
    (double2)(0x1.0000000000000p+0, 0x0.0000000000000p+0),
    (double2)(0x1.8b07550000000p+0, 0x1.d9f5504c2bd28p-28),
    (double2)(0x1.e18fa08000000p+1, 0x1.7cb66f0a4c9fdp-25),
    (double2)(0x1.422a490000000p+3, 0x1.f58617928e588p-23),
    (double2)(0x1.b4ee858000000p+4, 0x1.bc7d000c38d48p-25),
    (double2)(0x1.28d6fc8000000p+6, 0x1.f7f9d4e329998p-21),
    (double2)(0x1.936e678000000p+7, 0x1.6e6e464885269p-19),
    (double2)(0x1.1228948000000p+9, 0x1.ba3a8b946c154p-19),
    (double2)(0x1.749eaa8000000p+10, 0x1.3f4e76110d5a4p-18),
    (double2)(0x1.fa71580000000p+11, 0x1.17622515a3e2bp-15),
    (double2)(0x1.5829dd0000000p+13, 0x1.4dc4b528af3d0p-17),
    (double2)(0x1.d3c4488000000p+14, 0x1.1156278615e10p-14),
    (double2)(0x1.3de1650000000p+16, 0x1.35ad50ed821f5p-10),
    (double2)(0x1.b00b590000000p+17, 0x1.6b61055f2935cp-11),
    (double2)(0x1.259ac48000000p+19, 0x1.7e2794a601240p-10),
    (double2)(0x1.8f0cca8000000p+20, 0x1.eb4b45f6aadd3p-6),
    (double2)(0x1.0f2ebd0000000p+22, 0x1.5000b967b3698p-7),
    (double2)(0x1.7093488000000p+23, 0x1.03a940fadc092p-3),
    (double2)(0x1.f4f2208000000p+24, 0x1.1940bf3bf874cp-4),
    (double2)(0x1.546d8f8000000p+26, 0x1.ed26e1a2a2110p-2),
    (double2)(0x1.ceb0888000000p+27, 0x1.b4740205796d6p+0),
    (double2)(0x1.3a6e1f8000000p+29, 0x1.67bb3f55cb85dp+3),
    (double2)(0x1.ab5adb8000000p+30, 0x1.c435ff81e18acp+2),
    (double2)(0x1.226af30000000p+32, 0x1.d8fee052bdea4p+5),
    (double2)(0x1.8ab7fb0000000p+33, 0x1.51d7edccde926p+7),
    (double2)(0x1.0c3d390000000p+35, 0x1.04b1644557e0ep+8),
    (double2)(0x1.6c93268000000p+36, 0x1.6a6b5ca0a9e1cp+8),
    (double2)(0x1.ef822f0000000p+37, 0x1.fd9cc72249abep+11),
    (double2)(0x1.50bba30000000p+39, 0x1.e58de693edab5p+13),
    (double2)(0x1.c9aae40000000p+40, 0x1.8c70158ac6364p+14),
    (double2)(0x1.3704708000000p+42, 0x1.7614764f43e20p+15),
    (double2)(0x1.a6b7658000000p+43, 0x1.6337db36fc718p+17),
    (double2)(0x1.1f43fc8000000p+45, 0x1.12d98b1f611e2p+19),
    (double2)(0x1.866f348000000p+46, 0x1.392bc108b37ccp+19),
    (double2)(0x1.0953e28000000p+48, 0x1.ce87bdc3473dcp+22),
    (double2)(0x1.689e220000000p+49, 0x1.bc8d5ae99ad14p+21),
    (double2)(0x1.ea215a0000000p+50, 0x1.d20d76744835cp+22)
};

DECLARE_VTABLE(double, CBRT_INV_TBL, 257) = {
    0x1.0000000000000p+1,
    0x1.fe01fe01fe020p+0,
    0x1.fc07f01fc07f0p+0,
    0x1.fa11caa01fa12p+0,
    0x1.f81f81f81f820p+0,
    0x1.f6310aca0dbb5p+0,
    0x1.f44659e4a4271p+0,
    0x1.f25f644230ab5p+0,
    0x1.f07c1f07c1f08p+0,
    0x1.ee9c7f8458e02p+0,
    0x1.ecc07b301ecc0p+0,
    0x1.eae807aba01ebp+0,
    0x1.e9131abf0b767p+0,
    0x1.e741aa59750e4p+0,
    0x1.e573ac901e574p+0,
    0x1.e3a9179dc1a73p+0,
    0x1.e1e1e1e1e1e1ep+0,
    0x1.e01e01e01e01ep+0,
    0x1.de5d6e3f8868ap+0,
    0x1.dca01dca01dcap+0,
    0x1.dae6076b981dbp+0,
    0x1.d92f2231e7f8ap+0,
    0x1.d77b654b82c34p+0,
    0x1.d5cac807572b2p+0,
    0x1.d41d41d41d41dp+0,
    0x1.d272ca3fc5b1ap+0,
    0x1.d0cb58f6ec074p+0,
    0x1.cf26e5c44bfc6p+0,
    0x1.cd85689039b0bp+0,
    0x1.cbe6d9601cbe7p+0,
    0x1.ca4b3055ee191p+0,
    0x1.c8b265afb8a42p+0,
    0x1.c71c71c71c71cp+0,
    0x1.c5894d10d4986p+0,
    0x1.c3f8f01c3f8f0p+0,
    0x1.c26b5392ea01cp+0,
    0x1.c0e070381c0e0p+0,
    0x1.bf583ee868d8bp+0,
    0x1.bdd2b899406f7p+0,
    0x1.bc4fd65883e7bp+0,
    0x1.bacf914c1bad0p+0,
    0x1.b951e2b18ff23p+0,
    0x1.b7d6c3dda338bp+0,
    0x1.b65e2e3beee05p+0,
    0x1.b4e81b4e81b4fp+0,
    0x1.b37484ad806cep+0,
    0x1.b2036406c80d9p+0,
    0x1.b094b31d922a4p+0,
    0x1.af286bca1af28p+0,
    0x1.adbe87f94905ep+0,
    0x1.ac5701ac5701bp+0,
    0x1.aaf1d2f87ebfdp+0,
    0x1.a98ef606a63bep+0,
    0x1.a82e65130e159p+0,
    0x1.a6d01a6d01a6dp+0,
    0x1.a574107688a4ap+0,
    0x1.a41a41a41a41ap+0,
    0x1.a2c2a87c51ca0p+0,
    0x1.a16d3f97a4b02p+0,
    0x1.a01a01a01a01ap+0,
    0x1.9ec8e951033d9p+0,
    0x1.9d79f176b682dp+0,
    0x1.9c2d14ee4a102p+0,
    0x1.9ae24ea5510dap+0,
    0x1.999999999999ap+0,
    0x1.9852f0d8ec0ffp+0,
    0x1.970e4f80cb872p+0,
    0x1.95cbb0be377aep+0,
    0x1.948b0fcd6e9e0p+0,
    0x1.934c67f9b2ce6p+0,
    0x1.920fb49d0e229p+0,
    0x1.90d4f120190d5p+0,
    0x1.8f9c18f9c18fap+0,
    0x1.8e6527af1373fp+0,
    0x1.8d3018d3018d3p+0,
    0x1.8bfce8062ff3ap+0,
    0x1.8acb90f6bf3aap+0,
    0x1.899c0f601899cp+0,
    0x1.886e5f0abb04ap+0,
    0x1.87427bcc092b9p+0,
    0x1.8618618618618p+0,
    0x1.84f00c2780614p+0,
    0x1.83c977ab2beddp+0,
    0x1.82a4a0182a4a0p+0,
    0x1.8181818181818p+0,
    0x1.8060180601806p+0,
    0x1.7f405fd017f40p+0,
    0x1.7e225515a4f1dp+0,
    0x1.7d05f417d05f4p+0,
    0x1.7beb3922e017cp+0,
    0x1.7ad2208e0ecc3p+0,
    0x1.79baa6bb6398bp+0,
    0x1.78a4c8178a4c8p+0,
    0x1.77908119ac60dp+0,
    0x1.767dce434a9b1p+0,
    0x1.756cac201756dp+0,
    0x1.745d1745d1746p+0,
    0x1.734f0c541fe8dp+0,
    0x1.724287f46debcp+0,
    0x1.713786d9c7c09p+0,
    0x1.702e05c0b8170p+0,
    0x1.6f26016f26017p+0,
    0x1.6e1f76b4337c7p+0,
    0x1.6d1a62681c861p+0,
    0x1.6c16c16c16c17p+0,
    0x1.6b1490aa31a3dp+0,
    0x1.6a13cd1537290p+0,
    0x1.691473a88d0c0p+0,
    0x1.6816816816817p+0,
    0x1.6719f3601671ap+0,
    0x1.661ec6a5122f9p+0,
    0x1.6524f853b4aa3p+0,
    0x1.642c8590b2164p+0,
    0x1.63356b88ac0dep+0,
    0x1.623fa77016240p+0,
    0x1.614b36831ae94p+0,
    0x1.6058160581606p+0,
    0x1.5f66434292dfcp+0,
    0x1.5e75bb8d015e7p+0,
    0x1.5d867c3ece2a5p+0,
    0x1.5c9882b931057p+0,
    0x1.5babcc647fa91p+0,
    0x1.5ac056b015ac0p+0,
    0x1.59d61f123ccaap+0,
    0x1.58ed2308158edp+0,
    0x1.5805601580560p+0,
    0x1.571ed3c506b3ap+0,
    0x1.56397ba7c52e2p+0,
    0x1.5555555555555p+0,
    0x1.54725e6bb82fep+0,
    0x1.5390948f40febp+0,
    0x1.52aff56a8054bp+0,
    0x1.51d07eae2f815p+0,
    0x1.50f22e111c4c5p+0,
    0x1.5015015015015p+0,
    0x1.4f38f62dd4c9bp+0,
    0x1.4e5e0a72f0539p+0,
    0x1.4d843bedc2c4cp+0,
    0x1.4cab88725af6ep+0,
    0x1.4bd3edda68fe1p+0,
    0x1.4afd6a052bf5bp+0,
    0x1.4a27fad76014ap+0,
    0x1.49539e3b2d067p+0,
    0x1.4880522014880p+0,
    0x1.47ae147ae147bp+0,
    0x1.46dce34596066p+0,
    0x1.460cbc7f5cf9ap+0,
    0x1.453d9e2c776cap+0,
    0x1.446f86562d9fbp+0,
    0x1.43a2730abee4dp+0,
    0x1.42d6625d51f87p+0,
    0x1.420b5265e5951p+0,
    0x1.4141414141414p+0,
    0x1.40782d10e6566p+0,
    0x1.3fb013fb013fbp+0,
    0x1.3ee8f42a5af07p+0,
    0x1.3e22cbce4a902p+0,
    0x1.3d5d991aa75c6p+0,
    0x1.3c995a47babe7p+0,
    0x1.3bd60d9232955p+0,
    0x1.3b13b13b13b14p+0,
    0x1.3a524387ac822p+0,
    0x1.3991c2c187f63p+0,
    0x1.38d22d366088ep+0,
    0x1.3813813813814p+0,
    0x1.3755bd1c945eep+0,
    0x1.3698df3de0748p+0,
    0x1.35dce5f9f2af8p+0,
    0x1.3521cfb2b78c1p+0,
    0x1.34679ace01346p+0,
    0x1.33ae45b57bcb2p+0,
    0x1.32f5ced6a1dfap+0,
    0x1.323e34a2b10bfp+0,
    0x1.3187758e9ebb6p+0,
    0x1.30d190130d190p+0,
    0x1.301c82ac40260p+0,
    0x1.2f684bda12f68p+0,
    0x1.2eb4ea1fed14bp+0,
    0x1.2e025c04b8097p+0,
    0x1.2d50a012d50a0p+0,
    0x1.2c9fb4d812ca0p+0,
    0x1.2bef98e5a3711p+0,
    0x1.2b404ad012b40p+0,
    0x1.2a91c92f3c105p+0,
    0x1.29e4129e4129ep+0,
    0x1.293725bb804a5p+0,
    0x1.288b01288b013p+0,
    0x1.27dfa38a1ce4dp+0,
    0x1.27350b8812735p+0,
    0x1.268b37cd60127p+0,
    0x1.25e22708092f1p+0,
    0x1.2539d7e9177b2p+0,
    0x1.2492492492492p+0,
    0x1.23eb79717605bp+0,
    0x1.23456789abcdfp+0,
    0x1.22a0122a0122ap+0,
    0x1.21fb78121fb78p+0,
    0x1.21579804855e6p+0,
    0x1.20b470c67c0d9p+0,
    0x1.2012012012012p+0,
    0x1.1f7047dc11f70p+0,
    0x1.1ecf43c7fb84cp+0,
    0x1.1e2ef3b3fb874p+0,
    0x1.1d8f5672e4abdp+0,
    0x1.1cf06ada2811dp+0,
    0x1.1c522fc1ce059p+0,
    0x1.1bb4a4046ed29p+0,
    0x1.1b17c67f2bae3p+0,
    0x1.1a7b9611a7b96p+0,
    0x1.19e0119e0119ep+0,
    0x1.19453808ca29cp+0,
    0x1.18ab083902bdbp+0,
    0x1.1811811811812p+0,
    0x1.1778a191bd684p+0,
    0x1.16e0689427379p+0,
    0x1.1648d50fc3201p+0,
    0x1.15b1e5f75270dp+0,
    0x1.151b9a3fdd5c9p+0,
    0x1.1485f0e0acd3bp+0,
    0x1.13f0e8d344724p+0,
    0x1.135c81135c811p+0,
    0x1.12c8b89edc0acp+0,
    0x1.12358e75d3033p+0,
    0x1.11a3019a74826p+0,
    0x1.1111111111111p+0,
    0x1.107fbbe011080p+0,
    0x1.0fef010fef011p+0,
    0x1.0f5edfab325a2p+0,
    0x1.0ecf56be69c90p+0,
    0x1.0e40655826011p+0,
    0x1.0db20a88f4696p+0,
    0x1.0d24456359e3ap+0,
    0x1.0c9714fbcda3bp+0,
    0x1.0c0a7868b4171p+0,
    0x1.0b7e6ec259dc8p+0,
    0x1.0af2f722eecb5p+0,
    0x1.0a6810a6810a7p+0,
    0x1.09ddba6af8360p+0,
    0x1.0953f39010954p+0,
    0x1.08cabb37565e2p+0,
    0x1.0842108421084p+0,
    0x1.07b9f29b8eae2p+0,
    0x1.073260a47f7c6p+0,
    0x1.06ab59c7912fbp+0,
    0x1.0624dd2f1a9fcp+0,
    0x1.059eea0727586p+0,
    0x1.05197f7d73404p+0,
    0x1.04949cc1664c5p+0,
    0x1.0410410410410p+0,
    0x1.038c6b78247fcp+0,
    0x1.03091b51f5e1ap+0,
    0x1.02864fc7729e9p+0,
    0x1.0204081020408p+0,
    0x1.0182436517a37p+0,
    0x1.0101010101010p+0,
    0x1.0080402010080p+0,
    0x1.0000000000000p+0
};

DECLARE_VTABLE(double2, CBRT_DBL_TBL, 257) = {
    (double2)(0x1.0000000000000p+0, 0x0.0000000000000p+0),
    (double2)(0x1.0055380000000p+0, 0x1.e6a24c81e4294p-25),
    (double2)(0x1.00aa390000000p+0, 0x1.8548511e3a785p-26),
    (double2)(0x1.00ff010000000p+0, 0x1.4eb9336ec07f6p-25),
    (double2)(0x1.0153920000000p+0, 0x1.0ea64b8b750e1p-27),
    (double2)(0x1.01a7eb0000000p+0, 0x1.61637cff8a53cp-27),
    (double2)(0x1.01fc0d0000000p+0, 0x1.0733bf7bd1943p-27),
    (double2)(0x1.024ff80000000p+0, 0x1.666911345ccedp-26),
    (double2)(0x1.02a3ad0000000p+0, 0x1.77b7a3f592f14p-27),
    (double2)(0x1.02f72b0000000p+0, 0x1.f18d3dd1a5402p-25),
    (double2)(0x1.034a750000000p+0, 0x1.be2f5a58ee9a4p-29),
    (double2)(0x1.039d880000000p+0, 0x1.8901f8f085fa7p-25),
    (double2)(0x1.03f0670000000p+0, 0x1.c68b8cd5b5d69p-26),
    (double2)(0x1.0443110000000p+0, 0x1.a6b0e8624be42p-26),
    (double2)(0x1.0495870000000p+0, 0x1.c4b22b06f68e7p-36),
    (double2)(0x1.04e7c80000000p+0, 0x1.0f3f0afcabe9bp-25),
    (double2)(0x1.0539d60000000p+0, 0x1.48495bca4e1b7p-26),
    (double2)(0x1.058bb00000000p+0, 0x1.6107f1abdfdc3p-25),
    (double2)(0x1.05dd570000000p+0, 0x1.e67261878288ap-25),
    (double2)(0x1.062ecc0000000p+0, 0x1.a6bc155286f1ep-26),
    (double2)(0x1.06800e0000000p+0, 0x1.8a759c64a85f2p-26),
    (double2)(0x1.06d11e0000000p+0, 0x1.5fce70a4a8d09p-27),
    (double2)(0x1.0721fc0000000p+0, 0x1.2f9cbf373fe1dp-28),
    (double2)(0x1.0772a80000000p+0, 0x1.90564ce4ac359p-26),
    (double2)(0x1.07c3230000000p+0, 0x1.ac29ce761b02fp-26),
    (double2)(0x1.08136d0000000p+0, 0x1.cb752f497381cp-26),
    (double2)(0x1.0863860000000p+0, 0x1.8bb9e1cfb35e0p-25),
    (double2)(0x1.08b36f0000000p+0, 0x1.5b4917099de90p-25),
    (double2)(0x1.0903280000000p+0, 0x1.cc77ac9c65ef2p-26),
    (double2)(0x1.0952b10000000p+0, 0x1.7a0f3e7be3dbap-26),
    (double2)(0x1.09a20a0000000p+0, 0x1.6ec851ee0c16fp-25),
    (double2)(0x1.09f1340000000p+0, 0x1.89449bf2946dap-25),
    (double2)(0x1.0a402f0000000p+0, 0x1.98f25301ba223p-25),
    (double2)(0x1.0a8efc0000000p+0, 0x1.47d5ec651f549p-28),
    (double2)(0x1.0add990000000p+0, 0x1.c33ec9a86007ap-25),
    (double2)(0x1.0b2c090000000p+0, 0x1.e0b6653e92649p-26),
    (double2)(0x1.0b7a4b0000000p+0, 0x1.bd64ac09d755fp-28),
    (double2)(0x1.0bc85f0000000p+0, 0x1.f537506f78167p-29),
    (double2)(0x1.0c16450000000p+0, 0x1.2c382d1b3735ep-25),
    (double2)(0x1.0c63fe0000000p+0, 0x1.e20ed659f99e1p-25),
    (double2)(0x1.0cb18b0000000p+0, 0x1.86b633a9c182ap-26),
    (double2)(0x1.0cfeeb0000000p+0, 0x1.45cfd5a65e777p-27),
    (double2)(0x1.0d4c1e0000000p+0, 0x1.0c8770f58bca4p-25),
    (double2)(0x1.0d99250000000p+0, 0x1.739e44b0933c5p-25),
    (double2)(0x1.0de6010000000p+0, 0x1.27dc3d9ce7bd8p-31),
    (double2)(0x1.0e32b00000000p+0, 0x1.3c53c7c5a7b64p-25),
    (double2)(0x1.0e7f340000000p+0, 0x1.9669683830cecp-25),
    (double2)(0x1.0ecb8d0000000p+0, 0x1.8d772c39bdcc4p-25),
    (double2)(0x1.0f17bb0000000p+0, 0x1.9b0008bcf6d7bp-25),
    (double2)(0x1.0f63bf0000000p+0, 0x1.bbb305825ce4fp-28),
    (double2)(0x1.0faf970000000p+0, 0x1.da3f4af13a406p-25),
    (double2)(0x1.0ffb460000000p+0, 0x1.f36b96f74ce86p-26),
    (double2)(0x1.1046cb0000000p+0, 0x1.65c002303f790p-30),
    (double2)(0x1.1092250000000p+0, 0x1.82f84095ba7d5p-25),
    (double2)(0x1.10dd560000000p+0, 0x1.d46433541b2c6p-25),
    (double2)(0x1.11285e0000000p+0, 0x1.71c3d56e93a89p-25),
    (double2)(0x1.11733d0000000p+0, 0x1.98dcef4e40012p-26),
    (double2)(0x1.11bdf30000000p+0, 0x1.530ebef17fe03p-27),
    (double2)(0x1.1208800000000p+0, 0x1.e8b8fa3715066p-27),
    (double2)(0x1.1252e40000000p+0, 0x1.ab26eb3b211dcp-25),
    (double2)(0x1.129d210000000p+0, 0x1.54dd4dc906307p-27),
    (double2)(0x1.12e7350000000p+0, 0x1.c9f962387984ep-26),
    (double2)(0x1.1331210000000p+0, 0x1.c62a959afec09p-25),
    (double2)(0x1.137ae60000000p+0, 0x1.638d9ac6a866ap-25),
    (double2)(0x1.13c4840000000p+0, 0x1.38704eca8a22dp-28),
    (double2)(0x1.140dfa0000000p+0, 0x1.e6c9e1db14f8fp-27),
    (double2)(0x1.1457490000000p+0, 0x1.8744b7f9c9eaap-26),
    (double2)(0x1.14a0710000000p+0, 0x1.6c2893486373bp-25),
    (double2)(0x1.14e9730000000p+0, 0x1.b36bce31699b7p-26),
    (double2)(0x1.15324e0000000p+0, 0x1.71e3813d200c7p-25),
    (double2)(0x1.157b030000000p+0, 0x1.99755ab40aa88p-25),
    (double2)(0x1.15c3920000000p+0, 0x1.b45ca0e4bcfc0p-25),
    (double2)(0x1.160bfc0000000p+0, 0x1.2dd090d869c5dp-28),
    (double2)(0x1.16543f0000000p+0, 0x1.4fe0516b917dap-25),
    (double2)(0x1.169c5d0000000p+0, 0x1.94563226317a2p-25),
    (double2)(0x1.16e4560000000p+0, 0x1.53d8fafc2c851p-25),
    (double2)(0x1.172c2a0000000p+0, 0x1.dcbd41fbd41a3p-26),
    (double2)(0x1.1773d90000000p+0, 0x1.862ff5285f59cp-26),
    (double2)(0x1.17bb630000000p+0, 0x1.3072ea97a1e1cp-25),
    (double2)(0x1.1802c90000000p+0, 0x1.2839075184805p-26),
    (double2)(0x1.184a0a0000000p+0, 0x1.4b0323e9eff42p-25),
    (double2)(0x1.1891270000000p+0, 0x1.b158893c45484p-25),
    (double2)(0x1.18d8210000000p+0, 0x1.149ef0fc35826p-28),
    (double2)(0x1.191ef60000000p+0, 0x1.f2e77ea96acaap-26),
    (double2)(0x1.1965a80000000p+0, 0x1.200074c471a95p-26),
    (double2)(0x1.19ac360000000p+0, 0x1.3f8cc517f6f04p-25),
    (double2)(0x1.19f2a10000000p+0, 0x1.60ba2e311bb55p-25),
    (double2)(0x1.1a38e90000000p+0, 0x1.4b788730bbec3p-25),
    (double2)(0x1.1a7f0e0000000p+0, 0x1.57090795ee20cp-25),
    (double2)(0x1.1ac5100000000p+0, 0x1.d9ffe983670b1p-25),
    (double2)(0x1.1b0af00000000p+0, 0x1.2a463ff61bfdap-25),
    (double2)(0x1.1b50ad0000000p+0, 0x1.9d1bc6a5e65cfp-25),
    (double2)(0x1.1b96480000000p+0, 0x1.8718abaa9e922p-25),
    (double2)(0x1.1bdbc10000000p+0, 0x1.3c2f52ffa342ep-25),
    (double2)(0x1.1c21180000000p+0, 0x1.0fae13ff42c80p-25),
    (double2)(0x1.1c664d0000000p+0, 0x1.5440f0ef00d57p-25),
    (double2)(0x1.1cab610000000p+0, 0x1.6fcd22d4e3c1ep-27),
    (double2)(0x1.1cf0530000000p+0, 0x1.e0c60b409e863p-27),
    (double2)(0x1.1d35230000000p+0, 0x1.f9cab5a5f0333p-25),
    (double2)(0x1.1d79d30000000p+0, 0x1.30f24744c333dp-25),
    (double2)(0x1.1dbe620000000p+0, 0x1.b50622a76b2fep-27),
    (double2)(0x1.1e02cf0000000p+0, 0x1.fdb94ba595375p-25),
    (double2)(0x1.1e471d0000000p+0, 0x1.861b9b945a171p-28),
    (double2)(0x1.1e8b490000000p+0, 0x1.54348015188c4p-25),
    (double2)(0x1.1ecf550000000p+0, 0x1.b54d149865523p-25),
    (double2)(0x1.1f13410000000p+0, 0x1.a0bb783d9de33p-25),
    (double2)(0x1.1f570d0000000p+0, 0x1.629d12b1a2157p-25),
    (double2)(0x1.1f9ab90000000p+0, 0x1.467fe35d179dfp-25),
    (double2)(0x1.1fde450000000p+0, 0x1.9763f3e26c8f7p-25),
    (double2)(0x1.2021b20000000p+0, 0x1.3f798bb9f7679p-26),
    (double2)(0x1.2064ff0000000p+0, 0x1.52e577e855898p-26),
    (double2)(0x1.20a82c0000000p+0, 0x1.fde47e5502c3ap-25),
    (double2)(0x1.20eb3b0000000p+0, 0x1.cbd0b548d96a0p-26),
    (double2)(0x1.212e2a0000000p+0, 0x1.a9cd9f7be8de8p-25),
    (double2)(0x1.2170fb0000000p+0, 0x1.22bbe704886dep-26),
    (double2)(0x1.21b3ac0000000p+0, 0x1.e3dea8317f020p-25),
    (double2)(0x1.21f63f0000000p+0, 0x1.e812085ac8855p-25),
    (double2)(0x1.2238b40000000p+0, 0x1.c87144f24cb07p-26),
    (double2)(0x1.227b0a0000000p+0, 0x1.1e128ee311fa2p-25),
    (double2)(0x1.22bd420000000p+0, 0x1.b5c163d61a2d3p-26),
    (double2)(0x1.22ff5c0000000p+0, 0x1.7d97e7fb90633p-27),
    (double2)(0x1.2341570000000p+0, 0x1.efe899d50f6a7p-25),
    (double2)(0x1.2383350000000p+0, 0x1.d0333eb75de5ap-25),
    (double2)(0x1.23c4f60000000p+0, 0x1.0e590be73a573p-27),
    (double2)(0x1.2406980000000p+0, 0x1.8ce8dcac3cdd2p-25),
    (double2)(0x1.24481d0000000p+0, 0x1.ee8a48954064bp-25),
    (double2)(0x1.2489850000000p+0, 0x1.aa62f18461e09p-25),
    (double2)(0x1.24cad00000000p+0, 0x1.01e5940986a15p-25),
    (double2)(0x1.250bfe0000000p+0, 0x1.b082f4f9b8d4cp-28),
    (double2)(0x1.254d0e0000000p+0, 0x1.876e0e5527f5ap-25),
    (double2)(0x1.258e020000000p+0, 0x1.3617080831e6bp-25),
    (double2)(0x1.25ced90000000p+0, 0x1.81b26e34aa4a2p-25),
    (double2)(0x1.260f940000000p+0, 0x1.52ee66dfab0c1p-26),
    (double2)(0x1.2650320000000p+0, 0x1.d85a5329e8819p-26),
    (double2)(0x1.2690b40000000p+0, 0x1.105c1b646b5d1p-26),
    (double2)(0x1.26d1190000000p+0, 0x1.bb6690c1a379cp-25),
    (double2)(0x1.2711630000000p+0, 0x1.86aeba73ce3a9p-26),
    (double2)(0x1.2751900000000p+0, 0x1.dd16198294dd4p-25),
    (double2)(0x1.2791a20000000p+0, 0x1.454e675775e83p-25),
    (double2)(0x1.27d1980000000p+0, 0x1.3842e026197eap-25),
    (double2)(0x1.2811720000000p+0, 0x1.f1ce0e70c44d2p-25),
    (double2)(0x1.2851310000000p+0, 0x1.ad636441a5627p-25),
    (double2)(0x1.2890d50000000p+0, 0x1.4c205d7212abbp-26),
    (double2)(0x1.28d05d0000000p+0, 0x1.167c86c116419p-25),
    (double2)(0x1.290fca0000000p+0, 0x1.38ec3ef16e294p-25),
    (double2)(0x1.294f1c0000000p+0, 0x1.473fceace9321p-25),
    (double2)(0x1.298e530000000p+0, 0x1.7af53a836dba7p-25),
    (double2)(0x1.29cd700000000p+0, 0x1.a51f3c383b652p-30),
    (double2)(0x1.2a0c710000000p+0, 0x1.3696da190822dp-25),
    (double2)(0x1.2a4b580000000p+0, 0x1.2f9adec77074bp-25),
    (double2)(0x1.2a8a250000000p+0, 0x1.8190fd5bee55fp-28),
    (double2)(0x1.2ac8d70000000p+0, 0x1.bfee8fac68e55p-27),
    (double2)(0x1.2b076f0000000p+0, 0x1.31c9d6bc5f68ap-28),
    (double2)(0x1.2b45ec0000000p+0, 0x1.89d0523737edfp-25),
    (double2)(0x1.2b84500000000p+0, 0x1.a295943bf47bbp-26),
    (double2)(0x1.2bc29a0000000p+0, 0x1.96be32e5b3207p-28),
    (double2)(0x1.2c00c90000000p+0, 0x1.e44c7d909fa0ep-25),
    (double2)(0x1.2c3ee00000000p+0, 0x1.b2505da94d9eap-29),
    (double2)(0x1.2c7cdc0000000p+0, 0x1.0c851f46c9c98p-25),
    (double2)(0x1.2cbabf0000000p+0, 0x1.da71f7d9aa3b7p-26),
    (double2)(0x1.2cf8880000000p+0, 0x1.f1b605d019ef1p-25),
    (double2)(0x1.2d36390000000p+0, 0x1.386e8a2189563p-27),
    (double2)(0x1.2d73d00000000p+0, 0x1.b19fa5d306ba7p-28),
    (double2)(0x1.2db14d0000000p+0, 0x1.dd749b67aef76p-25),
    (double2)(0x1.2deeb20000000p+0, 0x1.76ff6f1dc04b0p-25),
    (double2)(0x1.2e2bfe0000000p+0, 0x1.35a33d0b232a6p-25),
    (double2)(0x1.2e69310000000p+0, 0x1.4bdc80024a4e1p-25),
    (double2)(0x1.2ea64b0000000p+0, 0x1.ebd61770fd723p-25),
    (double2)(0x1.2ee34d0000000p+0, 0x1.4769fc537264dp-25),
    (double2)(0x1.2f20360000000p+0, 0x1.9021f429f3b98p-25),
    (double2)(0x1.2f5d070000000p+0, 0x1.ee7083efbd606p-26),
    (double2)(0x1.2f99bf0000000p+0, 0x1.ad985552a6b1ap-25),
    (double2)(0x1.2fd65f0000000p+0, 0x1.e3df778772160p-25),
    (double2)(0x1.3012e70000000p+0, 0x1.ca5d76ddc9b34p-25),
    (double2)(0x1.304f570000000p+0, 0x1.91154ffdbaf74p-25),
    (double2)(0x1.308baf0000000p+0, 0x1.67bdd57fb306ap-25),
    (double2)(0x1.30c7ef0000000p+0, 0x1.7dc255ac40886p-25),
    (double2)(0x1.3104180000000p+0, 0x1.219f38e8afafep-32),
    (double2)(0x1.3140280000000p+0, 0x1.2416bf9669a04p-25),
    (double2)(0x1.317c210000000p+0, 0x1.11c96b2b3987fp-25),
    (double2)(0x1.31b8020000000p+0, 0x1.f99ed447e1177p-25),
    (double2)(0x1.31f3cd0000000p+0, 0x1.3245826328a11p-30),
    (double2)(0x1.322f7f0000000p+0, 0x1.6f56dd1e645f8p-25),
    (double2)(0x1.326b1b0000000p+0, 0x1.6164946945535p-27),
    (double2)(0x1.32a69f0000000p+0, 0x1.e37d59d190028p-26),
    (double2)(0x1.32e20c0000000p+0, 0x1.68671f12bf828p-25),
    (double2)(0x1.331d620000000p+0, 0x1.e8ecbca6aabbdp-25),
    (double2)(0x1.3358a20000000p+0, 0x1.3f49e109a5912p-26),
    (double2)(0x1.3393ca0000000p+0, 0x1.b8a0e11ec3043p-25),
    (double2)(0x1.33cedc0000000p+0, 0x1.5fae00aed691ap-25),
    (double2)(0x1.3409d70000000p+0, 0x1.c0569bece3e4ap-25),
    (double2)(0x1.3444bc0000000p+0, 0x1.05e26744efbfep-25),
    (double2)(0x1.347f8a0000000p+0, 0x1.5b570a94be5c5p-25),
    (double2)(0x1.34ba420000000p+0, 0x1.d6f156ea0e063p-26),
    (double2)(0x1.34f4e30000000p+0, 0x1.e0ca7612fc484p-25),
    (double2)(0x1.352f6f0000000p+0, 0x1.963c927b25258p-27),
    (double2)(0x1.3569e40000000p+0, 0x1.47930aa725a5cp-26),
    (double2)(0x1.35a4430000000p+0, 0x1.8a79fe3af43b3p-26),
    (double2)(0x1.35de8c0000000p+0, 0x1.e6dc29c41bdafp-26),
    (double2)(0x1.3618bf0000000p+0, 0x1.57a2e76f863a5p-25),
    (double2)(0x1.3652dd0000000p+0, 0x1.ae3b61716354dp-29),
    (double2)(0x1.368ce40000000p+0, 0x1.65fb5df6906b1p-25),
    (double2)(0x1.36c6d60000000p+0, 0x1.6177d7f588f7bp-25),
    (double2)(0x1.3700b30000000p+0, 0x1.ad55abd091b67p-28),
    (double2)(0x1.373a7a0000000p+0, 0x1.55337b2422d76p-30),
    (double2)(0x1.37742b0000000p+0, 0x1.084ebe86972d5p-25),
    (double2)(0x1.37adc70000000p+0, 0x1.56395808e1ea3p-25),
    (double2)(0x1.37e74e0000000p+0, 0x1.1bce21b40fba7p-25),
    (double2)(0x1.3820c00000000p+0, 0x1.006f94605b515p-26),
    (double2)(0x1.385a1c0000000p+0, 0x1.aa676aceb1f7dp-25),
    (double2)(0x1.3893640000000p+0, 0x1.8229f76554ce6p-26),
    (double2)(0x1.38cc960000000p+0, 0x1.eabfc6cf57330p-25),
    (double2)(0x1.3905b40000000p+0, 0x1.4daed9c0ce8bcp-25),
    (double2)(0x1.393ebd0000000p+0, 0x1.0ff1768237141p-25),
    (double2)(0x1.3977b10000000p+0, 0x1.575f83051b085p-25),
    (double2)(0x1.39b0910000000p+0, 0x1.2667deb523e29p-27),
    (double2)(0x1.39e95c0000000p+0, 0x1.816996954f4fdp-30),
    (double2)(0x1.3a22120000000p+0, 0x1.87cfccf4d9cd4p-26),
    (double2)(0x1.3a5ab40000000p+0, 0x1.2c5d018198353p-26),
    (double2)(0x1.3a93410000000p+0, 0x1.a7a898dcc34aap-25),
    (double2)(0x1.3acbbb0000000p+0, 0x1.cead6dadc36d1p-29),
    (double2)(0x1.3b04200000000p+0, 0x1.a55759c498bdfp-29),
    (double2)(0x1.3b3c700000000p+0, 0x1.c414a9ef6de04p-25),
    (double2)(0x1.3b74ad0000000p+0, 0x1.3e2108a6e58fap-25),
    (double2)(0x1.3bacd60000000p+0, 0x1.587fd7643d77cp-26),
    (double2)(0x1.3be4eb0000000p+0, 0x1.901eb1d3ff3dfp-28),
    (double2)(0x1.3c1ceb0000000p+0, 0x1.f2ccd7c812fc6p-25),
    (double2)(0x1.3c54d90000000p+0, 0x1.1c8ee70a01049p-29),
    (double2)(0x1.3c8cb20000000p+0, 0x1.63e8d02831eecp-26),
    (double2)(0x1.3cc4770000000p+0, 0x1.f61a42a92c7ffp-25),
    (double2)(0x1.3cfc2a0000000p+0, 0x1.a917399c84d24p-34),
    (double2)(0x1.3d33c80000000p+0, 0x1.e9197c8eec2f0p-26),
    (double2)(0x1.3d6b530000000p+0, 0x1.e6f842f5a1378p-26),
    (double2)(0x1.3da2cb0000000p+0, 0x1.fac242a90a0fcp-29),
    (double2)(0x1.3dda2f0000000p+0, 0x1.35ed726610227p-26),
    (double2)(0x1.3e11800000000p+0, 0x1.0e0d64804b15bp-26),
    (double2)(0x1.3e48be0000000p+0, 0x1.560675daba814p-31),
    (double2)(0x1.3e7fe80000000p+0, 0x1.37388c8768032p-25),
    (double2)(0x1.3eb7000000000p+0, 0x1.ee3c89f9e01f5p-28),
    (double2)(0x1.3eee040000000p+0, 0x1.39f6f0d09747cp-25),
    (double2)(0x1.3f24f60000000p+0, 0x1.322c327abb8f0p-27),
    (double2)(0x1.3f5bd40000000p+0, 0x1.961b347c8ac80p-25),
    (double2)(0x1.3f92a00000000p+0, 0x1.3711fbbd0f118p-25),
    (double2)(0x1.3fc9590000000p+0, 0x1.4fad8d7718ffbp-25),
    (double2)(0x1.3fffff0000000p+0, 0x1.fffffffffffffp-25),
    (double2)(0x1.4036930000000p+0, 0x1.67efa79ec35b4p-25),
    (double2)(0x1.406d140000000p+0, 0x1.a737687a254a8p-25),
    (double2)(0x1.40a3830000000p+0, 0x1.bace0f87d924dp-26),
    (double2)(0x1.40d9df0000000p+0, 0x1.29e37c237e392p-25),
    (double2)(0x1.4110290000000p+0, 0x1.57ce7ac3f3012p-26),
    (double2)(0x1.4146600000000p+0, 0x1.82829359f8fbdp-25),
    (double2)(0x1.417c850000000p+0, 0x1.cc9be42d14676p-25),
    (double2)(0x1.41b2980000000p+0, 0x1.a8f001c137d0bp-25),
    (double2)(0x1.41e8990000000p+0, 0x1.36127687dda05p-25),
    (double2)(0x1.421e880000000p+0, 0x1.24dba322646f0p-26),
    (double2)(0x1.4254640000000p+0, 0x1.dc43f1ed210b4p-25),
    (double2)(0x1.428a2f0000000p+0, 0x1.31ae515c447bbp-25)
};

DECLARE_VTABLE(double2, CBRT_REM_TBL, 5) = {
    (double2)(0x1.428a2f0000000p-1, 0x1.31ae515c447bbp-26),
    (double2)(0x1.965fea0000000p-1, 0x1.4f5b8f20ac166p-27),
    (double2)(0x1.0000000000000p+0, 0x0.0000000000000p+0),
    (double2)(0x1.428a2f0000000p+0, 0x1.31ae515c447bbp-25),
    (double2)(0x1.965fea0000000p+0, 0x1.4f5b8f20ac166p-26),
};

VTABLE_FUNCTION(double, CBRT_INV_TBL, cbrt_inv_tbl);

VTABLE_FUNCTION2(v2double, LN_TBL, ln_tbl);
VTABLE_FUNCTION2(v2double, ATAN_JBY256_TBL, atan_jby256_tbl);
VTABLE_FUNCTION2(v2double, TWO_TO_JBY64_EP, two_to_jby64_ep_tbl);
VTABLE_FUNCTION2(v2double, SINH_TBL, sinh_tbl);
VTABLE_FUNCTION2(v2double, COSH_TBL, cosh_tbl);
VTABLE_FUNCTION2(v2double, CBRT_DBL_TBL, cbrt_dbl_tbl);
VTABLE_FUNCTION2(v2double, CBRT_REM_TBL, cbrt_rem_tbl);

#endif // cl_khr_fp64

/*
 * Copyright (c) 2014 Advanced Micro Devices, Inc.
 *
 * Copyright (c) 2017 Michal Babej / Tampere University of Technology
 *
 * Permission is hereby granted, free of charge, to any person obtaining a copy
 * of this software and associated documentation files (the "Software"), to deal
 * in the Software without restriction, including without limitation the rights
 * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 * copies of the Software, and to permit persons to whom the Software is
 * furnished to do so, subject to the following conditions:
 *
 * The above copyright notice and this permission notice shall be included in
 * all copies or substantial portions of the Software.
 *
 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
 * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
 * THE SOFTWARE.
 */

#include "misc.h"
#include "vtables.h"
#include "vtables_macros.h"

#ifdef cl_khr_fp64

DECLARE_VTABLE(double2, LN_TBL, 65) = {
    (double2)(0x0.0000000000000p+0, 0x0.0000000000000p+0),
    (double2)(0x1.fc0a800000000p-7, 0x1.61f807c79f3dbp-28),
    (double2)(0x1.f829800000000p-6, 0x1.873c1980267c8p-25),
    (double2)(0x1.7745800000000p-5, 0x1.ec65b9f88c69ep-26),
    (double2)(0x1.f0a3000000000p-5, 0x1.8022c54cc2f99p-26),
    (double2)(0x1.341d700000000p-4, 0x1.2c37a3a125330p-25),
    (double2)(0x1.6f0d200000000p-4, 0x1.15cad69737c93p-25),
    (double2)(0x1.a926d00000000p-4, 0x1.d256ab1b285e9p-27),
    (double2)(0x1.e270700000000p-4, 0x1.b8abcb97a7aa2p-26),
    (double2)(0x1.0d77e00000000p-3, 0x1.f34239659a5dcp-25),
    (double2)(0x1.2955280000000p-3, 0x1.e07fd48d30177p-25),
    (double2)(0x1.44d2b00000000p-3, 0x1.b32df4799f4f6p-25),
    (double2)(0x1.5ff3000000000p-3, 0x1.c29e4f4f21cf8p-25),
    (double2)(0x1.7ab8900000000p-3, 0x1.086c848df1b59p-30),
    (double2)(0x1.9525a80000000p-3, 0x1.cf456b4764130p-27),
    (double2)(0x1.af3c900000000p-3, 0x1.3a02ffcb63398p-25),
    (double2)(0x1.c8ff780000000p-3, 0x1.1e6a6886b0976p-25),
    (double2)(0x1.e270700000000p-3, 0x1.b8abcb97a7aa2p-25),
    (double2)(0x1.fb91800000000p-3, 0x1.b578f8aa35552p-25),
    (double2)(0x1.0a324c0000000p-2, 0x1.139c871afb9fcp-25),
    (double2)(0x1.1675c80000000p-2, 0x1.5d5d30701ce64p-25),
    (double2)(0x1.22941c0000000p-2, 0x1.de7bcb2d12142p-25),
    (double2)(0x1.2e8e280000000p-2, 0x1.d708e984e1664p-25),
    (double2)(0x1.3a64c40000000p-2, 0x1.56945e9c72f36p-26),
    (double2)(0x1.4618bc0000000p-2, 0x1.0e2f613e85bdap-29),
    (double2)(0x1.51aad80000000p-2, 0x1.cb7e0b42724f6p-28),
    (double2)(0x1.5d1bd80000000p-2, 0x1.fac04e52846c7p-25),
    (double2)(0x1.686c800000000p-2, 0x1.e9b14aec442bep-26),
    (double2)(0x1.739d7c0000000p-2, 0x1.b5de8034e7126p-25),
    (double2)(0x1.7eaf800000000p-2, 0x1.dc157e1b259d3p-25),
    (double2)(0x1.89a3380000000p-2, 0x1.b05096ad69c62p-28),
    (double2)(0x1.9479400000000p-2, 0x1.c2116faba4cddp-26),
    (double2)(0x1.9f323c0000000p-2, 0x1.65fcc25f95b47p-25),
    (double2)(0x1.a9cec80000000p-2, 0x1.a9a08498d4850p-26),
    (double2)(0x1.b44f740000000p-2, 0x1.de647b1465f77p-25),
    (double2)(0x1.beb4d80000000p-2, 0x1.da71b7bf7861dp-26),
    (double2)(0x1.c8ff7c0000000p-2, 0x1.e6a6886b09760p-28),
    (double2)(0x1.d32fe40000000p-2, 0x1.f0075eab0ef64p-25),
    (double2)(0x1.dd46a00000000p-2, 0x1.3071282fb989bp-28),
    (double2)(0x1.e744240000000p-2, 0x1.0eb43c3f1bed2p-25),
    (double2)(0x1.f128f40000000p-2, 0x1.faf06ecb35c84p-26),
    (double2)(0x1.faf5880000000p-2, 0x1.ef1e63db35f68p-27),
    (double2)(0x1.02552a0000000p-1, 0x1.69743fb1a71a5p-27),
    (double2)(0x1.0723e40000000p-1, 0x1.c1cdf404e5796p-25),
    (double2)(0x1.0be72e0000000p-1, 0x1.094aa0ada625ep-27),
    (double2)(0x1.109f380000000p-1, 0x1.e2d4c96fde3ecp-25),
    (double2)(0x1.154c3c0000000p-1, 0x1.2f4d5e9a98f34p-25),
    (double2)(0x1.19ee6a0000000p-1, 0x1.467c96ecc5cbep-25),
    (double2)(0x1.1e85f40000000p-1, 0x1.e7040d03dec5ap-25),
    (double2)(0x1.23130c0000000p-1, 0x1.7bebf4282de36p-25),
    (double2)(0x1.2795e00000000p-1, 0x1.289b11aeb783fp-25),
    (double2)(0x1.2c0e9e0000000p-1, 0x1.a891d1772f538p-26),
    (double2)(0x1.307d720000000p-1, 0x1.34f10be1fb591p-25),
    (double2)(0x1.34e2880000000p-1, 0x1.d9ce1d316eb93p-25),
    (double2)(0x1.393e0c0000000p-1, 0x1.3562a19a9c442p-25),
    (double2)(0x1.3d90260000000p-1, 0x1.4e2adf548084cp-26),
    (double2)(0x1.41d8fe0000000p-1, 0x1.08ce55cc8c97ap-26),
    (double2)(0x1.4618bc0000000p-1, 0x1.0e2f613e85bdap-28),
    (double2)(0x1.4a4f840000000p-1, 0x1.db03ebb0227bfp-25),
    (double2)(0x1.4e7d800000000p-1, 0x1.1b75bb09cb098p-25),
    (double2)(0x1.52a2d20000000p-1, 0x1.96f16abb9df22p-27),
    (double2)(0x1.56bf9c0000000p-1, 0x1.5b3f399411c62p-25),
    (double2)(0x1.5ad4040000000p-1, 0x1.86b3e59f65355p-26),
    (double2)(0x1.5ee02a0000000p-1, 0x1.2482ceae1ac12p-26),
    (double2)(0x1.62e42e0000000p-1, 0x1.efa39ef35793cp-25),
};

// Arrays atan_jby256_lead and atan_jby256_tail contain
// leading and trailing parts respectively of precomputed
// values of atan(j/256), for j = 16, 17, ..., 256.
// atan_jby256_lead contains the first 21 bits of precision,
// and atan_jby256_tail contains a further 53 bits precision.

DECLARE_VTABLE(double2, ATAN_JBY256_TBL, 241) = {
    (double2)(0x1.ff55b00000000p-5, 0x1.6e59fbd38db2cp-26),
    (double2)(0x1.0f99e00000000p-4, 0x1.4e3aa54dedf96p-25),
    (double2)(0x1.1f86d00000000p-4, 0x1.7e105ab1bda88p-25),
    (double2)(0x1.2f71900000000p-4, 0x1.8c5254d013fd0p-27),
    (double2)(0x1.3f59f00000000p-4, 0x1.cf8ab3ad62670p-29),
    (double2)(0x1.4f3fd00000000p-4, 0x1.9dca4bec80468p-26),
    (double2)(0x1.5f23200000000p-4, 0x1.3f4b5ec98a8dap-26),
    (double2)(0x1.6f03b00000000p-4, 0x1.b9d49619d81fep-25),
    (double2)(0x1.7ee1800000000p-4, 0x1.3017887460934p-27),
    (double2)(0x1.8ebc500000000p-4, 0x1.11e3eca0b9944p-26),
    (double2)(0x1.9e94100000000p-4, 0x1.4f3f73c5a332ep-26),
    (double2)(0x1.ae68a00000000p-4, 0x1.c71c8ae0e00a6p-26),
    (double2)(0x1.be39e00000000p-4, 0x1.7cde0f86fbdc7p-25),
    (double2)(0x1.ce07c00000000p-4, 0x1.70f328c889c72p-26),
    (double2)(0x1.ddd2100000000p-4, 0x1.c07ae9b994efep-26),
    (double2)(0x1.ed98c00000000p-4, 0x1.0c8021d7b1698p-27),
    (double2)(0x1.fd5ba00000000p-4, 0x1.35585edb8cb22p-25),
    (double2)(0x1.068d500000000p-3, 0x1.0842567b30e96p-24),
    (double2)(0x1.0e6ad00000000p-3, 0x1.99e811031472ep-24),
    (double2)(0x1.1646500000000p-3, 0x1.041821416bceep-25),
    (double2)(0x1.1e1fa00000000p-3, 0x1.f6086e4dc96f4p-24),
    (double2)(0x1.25f6e00000000p-3, 0x1.71a535c5f1b58p-27),
    (double2)(0x1.2dcbd00000000p-3, 0x1.65f743fe63ca1p-24),
    (double2)(0x1.359e800000000p-3, 0x1.dbd733472d014p-24),
    (double2)(0x1.3d6ee00000000p-3, 0x1.d18cc4d8b0d1dp-24),
    (double2)(0x1.453ce00000000p-3, 0x1.8c12553c8fb29p-24),
    (double2)(0x1.4d08700000000p-3, 0x1.53b49e2e8f991p-24),
    (double2)(0x1.54d1800000000p-3, 0x1.7422ae148c141p-24),
    (double2)(0x1.5c98100000000p-3, 0x1.e3ec269df56a8p-27),
    (double2)(0x1.645bf00000000p-3, 0x1.ff6754e7e0ac9p-24),
    (double2)(0x1.6c1d400000000p-3, 0x1.131267b1b5aadp-24),
    (double2)(0x1.73dbd00000000p-3, 0x1.d14fa403a94bcp-24),
    (double2)(0x1.7b97b00000000p-3, 0x1.2f396c089a3d8p-25),
    (double2)(0x1.8350b00000000p-3, 0x1.c731d78fa95bbp-24),
    (double2)(0x1.8b06e00000000p-3, 0x1.c50f385177399p-24),
    (double2)(0x1.92ba300000000p-3, 0x1.f41409c6f2c20p-25),
    (double2)(0x1.9a6a800000000p-3, 0x1.d2d90c4c39ec0p-24),
    (double2)(0x1.a217e00000000p-3, 0x1.80420696f2106p-25),
    (double2)(0x1.a9c2300000000p-3, 0x1.b40327943a2e8p-27),
    (double2)(0x1.b169600000000p-3, 0x1.5d35e02f3d2a2p-25),
    (double2)(0x1.b90d700000000p-3, 0x1.4a498288117b0p-25),
    (double2)(0x1.c0ae500000000p-3, 0x1.35da119afb324p-25),
    (double2)(0x1.c84bf00000000p-3, 0x1.14e85cdb9a908p-24),
    (double2)(0x1.cfe6500000000p-3, 0x1.38754e5547b9ap-25),
    (double2)(0x1.d77d500000000p-3, 0x1.be40ae6ce3246p-24),
    (double2)(0x1.df11000000000p-3, 0x1.0c993b3bea7e7p-24),
    (double2)(0x1.e6a1400000000p-3, 0x1.1d2dd89ac3359p-24),
    (double2)(0x1.ee2e100000000p-3, 0x1.1476603332c46p-25),
    (double2)(0x1.f5b7500000000p-3, 0x1.f25901bac55b7p-24),
    (double2)(0x1.fd3d100000000p-3, 0x1.f881b7c826e28p-24),
    (double2)(0x1.025fa00000000p-2, 0x1.441996d698d20p-24),
    (double2)(0x1.061ee00000000p-2, 0x1.407ac521ea089p-23),
    (double2)(0x1.09dc500000000p-2, 0x1.2fb0c6c4b1723p-23),
    (double2)(0x1.0d97e00000000p-2, 0x1.ca135966a3e18p-23),
    (double2)(0x1.1151a00000000p-2, 0x1.b1218e4d646e4p-25),
    (double2)(0x1.1509700000000p-2, 0x1.d4e72a350d288p-25),
    (double2)(0x1.18bf500000000p-2, 0x1.4617e2f04c329p-23),
    (double2)(0x1.1c73500000000p-2, 0x1.096ec41e82650p-25),
    (double2)(0x1.2025500000000p-2, 0x1.9f91f25773e6ep-24),
    (double2)(0x1.23d5600000000p-2, 0x1.59c0820f1d674p-25),
    (double2)(0x1.2783700000000p-2, 0x1.02bf7a2df1064p-25),
    (double2)(0x1.2b2f700000000p-2, 0x1.fb36bfc40508fp-23),
    (double2)(0x1.2ed9800000000p-2, 0x1.ea08f3f8dc892p-24),
    (double2)(0x1.3281800000000p-2, 0x1.3ed6254656a0ep-24),
    (double2)(0x1.3627700000000p-2, 0x1.b83f5e5e69c58p-25),
    (double2)(0x1.39cb400000000p-2, 0x1.d6ec2af768592p-23),
    (double2)(0x1.3d6d100000000p-2, 0x1.493889a226f94p-25),
    (double2)(0x1.410cb00000000p-2, 0x1.5ad8fa65279bap-23),
    (double2)(0x1.44aa400000000p-2, 0x1.b615784d45434p-25),
    (double2)(0x1.4845a00000000p-2, 0x1.09a184368f145p-23),
    (double2)(0x1.4bdee00000000p-2, 0x1.61a2439b0d91cp-24),
    (double2)(0x1.4f75f00000000p-2, 0x1.ce1a65e39a978p-24),
    (double2)(0x1.530ad00000000p-2, 0x1.32a39a93b6a66p-23),
    (double2)(0x1.569d800000000p-2, 0x1.1c3699af804e7p-23),
    (double2)(0x1.5a2e000000000p-2, 0x1.75e0f4e44ede8p-26),
    (double2)(0x1.5dbc300000000p-2, 0x1.f77ced1a7a83bp-23),
    (double2)(0x1.6148400000000p-2, 0x1.84e7f0cb1b500p-29),
    (double2)(0x1.64d1f00000000p-2, 0x1.ec6b838b02dfep-23),
    (double2)(0x1.6859700000000p-2, 0x1.3ebf4dfbeda87p-23),
    (double2)(0x1.6bdea00000000p-2, 0x1.9397aed9cb475p-23),
    (double2)(0x1.6f61900000000p-2, 0x1.07937bc239c54p-24),
    (double2)(0x1.72e2200000000p-2, 0x1.aa754553131b6p-23),
    (double2)(0x1.7660700000000p-2, 0x1.4a05d407c45dcp-24),
    (double2)(0x1.79dc600000000p-2, 0x1.132231a206dd0p-23),
    (double2)(0x1.7d56000000000p-2, 0x1.2d8ecfdd69c88p-24),
    (double2)(0x1.80cd400000000p-2, 0x1.a852c74218606p-24),
    (double2)(0x1.8442200000000p-2, 0x1.71bf2baeebb50p-23),
    (double2)(0x1.87b4b00000000p-2, 0x1.83d7db7491820p-27),
    (double2)(0x1.8b24d00000000p-2, 0x1.ca50d92b6da14p-25),
    (double2)(0x1.8e92900000000p-2, 0x1.6f5cde8530298p-26),
    (double2)(0x1.91fde00000000p-2, 0x1.f343198910740p-24),
    (double2)(0x1.9566d00000000p-2, 0x1.0e8d241ccd80ap-24),
    (double2)(0x1.98cd500000000p-2, 0x1.1535ac619e6c8p-24),
    (double2)(0x1.9c31600000000p-2, 0x1.7316041c36cd2p-24),
    (double2)(0x1.9f93000000000p-2, 0x1.985a000637d8ep-24),
    (double2)(0x1.a2f2300000000p-2, 0x1.f2f29858c0a68p-25),
    (double2)(0x1.a64ee00000000p-2, 0x1.879847f96d909p-23),
    (double2)(0x1.a9a9200000000p-2, 0x1.ab3d319e12e42p-23),
    (double2)(0x1.ad00f00000000p-2, 0x1.5088162dfc4c2p-24),
    (double2)(0x1.b056400000000p-2, 0x1.05749a1cd9d8cp-25),
    (double2)(0x1.b3a9100000000p-2, 0x1.da65c6c6b8618p-26),
    (double2)(0x1.b6f9600000000p-2, 0x1.739bf7df1ad64p-25),
    (double2)(0x1.ba47300000000p-2, 0x1.bc31252aa3340p-25),
    (double2)(0x1.bd92800000000p-2, 0x1.e528191ad3aa8p-26),
    (double2)(0x1.c0db400000000p-2, 0x1.929d93df19f18p-23),
    (double2)(0x1.c421900000000p-2, 0x1.ff11eb693a080p-26),
    (double2)(0x1.c765500000000p-2, 0x1.55ae3f145a3a0p-27),
    (double2)(0x1.caa6800000000p-2, 0x1.cbcd8c6c0ca82p-24),
    (double2)(0x1.cde5300000000p-2, 0x1.0cb04d425d304p-24),
    (double2)(0x1.d121500000000p-2, 0x1.9adfcab5be678p-24),
    (double2)(0x1.d45ae00000000p-2, 0x1.93d90c5662508p-23),
    (double2)(0x1.d791f00000000p-2, 0x1.68489bd35ff40p-24),
    (double2)(0x1.dac6700000000p-2, 0x1.586ed3da2b7e0p-28),
    (double2)(0x1.ddf8500000000p-2, 0x1.7604d2e850eeep-23),
    (double2)(0x1.e127b00000000p-2, 0x1.ac1d12bfb53d8p-24),
    (double2)(0x1.e454800000000p-2, 0x1.9b3d468274740p-28),
    (double2)(0x1.e77eb00000000p-2, 0x1.fc5d68d10e53cp-24),
    (double2)(0x1.eaa6500000000p-2, 0x1.8f9e51884becbp-23),
    (double2)(0x1.edcb600000000p-2, 0x1.a87f0869c06d1p-23),
    (double2)(0x1.f0ede00000000p-2, 0x1.31e7279f685fap-23),
    (double2)(0x1.f40dd00000000p-2, 0x1.6a8282f9719b0p-27),
    (double2)(0x1.f72b200000000p-2, 0x1.0d2724a8a44e0p-25),
    (double2)(0x1.fa45d00000000p-2, 0x1.a60524b11ad4ep-23),
    (double2)(0x1.fd5e000000000p-2, 0x1.75fdf832750f0p-26),
    (double2)(0x1.0039c00000000p-1, 0x1.cf06902e4cd36p-23),
    (double2)(0x1.01c3400000000p-1, 0x1.e82422d4f6d10p-25),
    (double2)(0x1.034b700000000p-1, 0x1.24a091063e6c0p-26),
    (double2)(0x1.04d2500000000p-1, 0x1.8a1a172dc6f38p-24),
    (double2)(0x1.0657e00000000p-1, 0x1.29b6619f8a92dp-22),
    (double2)(0x1.07dc300000000p-1, 0x1.9274d9c1b70c8p-24),
    (double2)(0x1.095f300000000p-1, 0x1.0c34b1fbb7930p-26),
    (double2)(0x1.0ae0e00000000p-1, 0x1.639866c20eb50p-25),
    (double2)(0x1.0c61400000000p-1, 0x1.6d6d0f6832e9ep-23),
    (double2)(0x1.0de0500000000p-1, 0x1.af54def99f25ep-22),
    (double2)(0x1.0f5e200000000p-1, 0x1.16cfc52a00262p-22),
    (double2)(0x1.10daa00000000p-1, 0x1.dcc1e83569c32p-23),
    (double2)(0x1.1255d00000000p-1, 0x1.37f7a551ed425p-22),
    (double2)(0x1.13cfb00000000p-1, 0x1.f6360adc98887p-22),
    (double2)(0x1.1548500000000p-1, 0x1.2c6ec8d35a2c1p-22),
    (double2)(0x1.16bfa00000000p-1, 0x1.bd44df84cb036p-23),
    (double2)(0x1.1835a00000000p-1, 0x1.117cf826e310ep-22),
    (double2)(0x1.19aa500000000p-1, 0x1.ca533f332cfc9p-22),
    (double2)(0x1.1b1dc00000000p-1, 0x1.0f208509dbc2ep-22),
    (double2)(0x1.1c8fe00000000p-1, 0x1.cd07d93c945dep-23),
    (double2)(0x1.1e00b00000000p-1, 0x1.57bdfd67e6d72p-22),
    (double2)(0x1.1f70400000000p-1, 0x1.aab89c516c658p-24),
    (double2)(0x1.20de800000000p-1, 0x1.3e823b1a1b8a0p-25),
    (double2)(0x1.224b700000000p-1, 0x1.307464a9d6d3cp-23),
    (double2)(0x1.23b7100000000p-1, 0x1.c5993cd438843p-22),
    (double2)(0x1.2521700000000p-1, 0x1.ba2fca02ab554p-22),
    (double2)(0x1.268a900000000p-1, 0x1.01a5b6983a268p-23),
    (double2)(0x1.27f2600000000p-1, 0x1.273d1b350efc8p-25),
    (double2)(0x1.2958e00000000p-1, 0x1.64c238c37b0c6p-23),
    (double2)(0x1.2abe200000000p-1, 0x1.aded07370a300p-25),
    (double2)(0x1.2c22100000000p-1, 0x1.78091197eb47ep-23),
    (double2)(0x1.2d84c00000000p-1, 0x1.4b0f245e0dabcp-24),
    (double2)(0x1.2ee6200000000p-1, 0x1.080d9794e2eafp-22),
    (double2)(0x1.3046400000000p-1, 0x1.d4ec242b60c76p-23),
    (double2)(0x1.31a5200000000p-1, 0x1.221d2f940caa0p-27),
    (double2)(0x1.3302b00000000p-1, 0x1.cdbc42b2bba5cp-24),
    (double2)(0x1.345f000000000p-1, 0x1.cce37bb440840p-25),
    (double2)(0x1.35ba000000000p-1, 0x1.6c1d999cf1dd0p-22),
    (double2)(0x1.3713d00000000p-1, 0x1.bed8a07eb0870p-26),
    (double2)(0x1.386c500000000p-1, 0x1.69ed88f490e3cp-24),
    (double2)(0x1.39c3900000000p-1, 0x1.cd41719b73ef0p-25),
    (double2)(0x1.3b19800000000p-1, 0x1.cbc4ac95b41b7p-22),
    (double2)(0x1.3c6e400000000p-1, 0x1.238f1b890f5d7p-22),
    (double2)(0x1.3dc1c00000000p-1, 0x1.50c4282259cc4p-24),
    (double2)(0x1.3f13f00000000p-1, 0x1.713d2de87b3e2p-22),
    (double2)(0x1.4064f00000000p-1, 0x1.1d5a7d2255276p-23),
    (double2)(0x1.41b4a00000000p-1, 0x1.c0dfd48227ac1p-22),
    (double2)(0x1.4303200000000p-1, 0x1.1c964dab76753p-22),
    (double2)(0x1.4450600000000p-1, 0x1.6de56d5704496p-23),
    (double2)(0x1.459c600000000p-1, 0x1.4aeb71fd19968p-23),
    (double2)(0x1.46e7200000000p-1, 0x1.fbf91c57b1918p-23),
    (double2)(0x1.4830a00000000p-1, 0x1.d6bef7fbe5d9ap-22),
    (double2)(0x1.4978f00000000p-1, 0x1.464d3dc249066p-22),
    (double2)(0x1.4ac0000000000p-1, 0x1.638e2ec4d9073p-22),
    (double2)(0x1.4c05e00000000p-1, 0x1.16f4a7247ea7cp-24),
    (double2)(0x1.4d4a800000000p-1, 0x1.1a0a740f1d440p-28),
    (double2)(0x1.4e8de00000000p-1, 0x1.6edbb0114a33cp-23),
    (double2)(0x1.4fd0100000000p-1, 0x1.dbee8bf1d513cp-24),
    (double2)(0x1.5111000000000p-1, 0x1.5b8bdb0248f73p-22),
    (double2)(0x1.5250c00000000p-1, 0x1.7de3d3f5eac64p-22),
    (double2)(0x1.538f500000000p-1, 0x1.ee24187ae448ap-23),
    (double2)(0x1.54cca00000000p-1, 0x1.e06c591ec5192p-22),
    (double2)(0x1.5608d00000000p-1, 0x1.4e3861a332738p-24),
    (double2)(0x1.5743c00000000p-1, 0x1.a9599dcc2bfe4p-24),
    (double2)(0x1.587d800000000p-1, 0x1.f732fbad43468p-25),
    (double2)(0x1.59b6000000000p-1, 0x1.eb9f573b727d9p-22),
    (double2)(0x1.5aed600000000p-1, 0x1.8b212a2eb9897p-22),
    (double2)(0x1.5c23900000000p-1, 0x1.384884c167215p-22),
    (double2)(0x1.5d58900000000p-1, 0x1.0e2d363020051p-22),
    (double2)(0x1.5e8c600000000p-1, 0x1.2820879fbd022p-22),
    (double2)(0x1.5fbf000000000p-1, 0x1.a1ab9893e4b30p-22),
    (double2)(0x1.60f0800000000p-1, 0x1.2d1b817a24478p-23),
    (double2)(0x1.6220d00000000p-1, 0x1.15d7b8ded4878p-25),
    (double2)(0x1.634ff00000000p-1, 0x1.8968f9db3a5e4p-24),
    (double2)(0x1.647de00000000p-1, 0x1.71c4171fe135fp-22),
    (double2)(0x1.65aab00000000p-1, 0x1.6d80f605d0d8cp-22),
    (double2)(0x1.66d6600000000p-1, 0x1.c91f043691590p-24),
    (double2)(0x1.6800e00000000p-1, 0x1.39f8a15fce2b2p-23),
    (double2)(0x1.692a400000000p-1, 0x1.55beda9d94b80p-27),
    (double2)(0x1.6a52700000000p-1, 0x1.b12c15d60949ap-23),
    (double2)(0x1.6b79800000000p-1, 0x1.24167b312bfe3p-22),
    (double2)(0x1.6c9f700000000p-1, 0x1.0ab8633070277p-22),
    (double2)(0x1.6dc4400000000p-1, 0x1.54554ebbc80eep-23),
    (double2)(0x1.6ee7f00000000p-1, 0x1.0204aef5a4bb8p-25),
    (double2)(0x1.700a700000000p-1, 0x1.8af08c679cf2cp-22),
    (double2)(0x1.712be00000000p-1, 0x1.0852a330ae6c8p-22),
    (double2)(0x1.724c300000000p-1, 0x1.6d3eb9ec32916p-23),
    (double2)(0x1.736b600000000p-1, 0x1.685cb7fcbbafep-23),
    (double2)(0x1.7489700000000p-1, 0x1.1f751c1e0bd95p-22),
    (double2)(0x1.75a6700000000p-1, 0x1.705b1b0f72560p-26),
    (double2)(0x1.76c2400000000p-1, 0x1.b98d8d808ca92p-22),
    (double2)(0x1.77dd100000000p-1, 0x1.2ea22c75cc980p-25),
    (double2)(0x1.78f6b00000000p-1, 0x1.7aba62bca0350p-22),
    (double2)(0x1.7a0f400000000p-1, 0x1.d73833442278cp-22),
    (double2)(0x1.7b26c00000000p-1, 0x1.5a5ca1fb18bf9p-22),
    (double2)(0x1.7c3d300000000p-1, 0x1.1a6092b6ecf28p-25),
    (double2)(0x1.7d52800000000p-1, 0x1.44fd049aac104p-24),
    (double2)(0x1.7e66c00000000p-1, 0x1.c114fd8df5180p-29),
    (double2)(0x1.7f79e00000000p-1, 0x1.5972f130feae5p-22),
    (double2)(0x1.808c000000000p-1, 0x1.ca034a55fe198p-24),
    (double2)(0x1.819d000000000p-1, 0x1.6e2b149990227p-22),
    (double2)(0x1.82ad000000000p-1, 0x1.b00000294592cp-24),
    (double2)(0x1.83bbe00000000p-1, 0x1.8b9bdc442620ep-22),
    (double2)(0x1.84c9c00000000p-1, 0x1.d94fdfabf3e4ep-23),
    (double2)(0x1.85d6900000000p-1, 0x1.5db30b145ad9ap-23),
    (double2)(0x1.86e2500000000p-1, 0x1.e3e1eb95022b0p-23),
    (double2)(0x1.87ed000000000p-1, 0x1.d5b8b45442bd6p-22),
    (double2)(0x1.88f6b00000000p-1, 0x1.7a046231ecd2ep-22),
    (double2)(0x1.89ff500000000p-1, 0x1.feafe3ef55232p-22),
    (double2)(0x1.8b06f00000000p-1, 0x1.839e7bfd78267p-22),
    (double2)(0x1.8c0d900000000p-1, 0x1.45cf49d6fa900p-25),
    (double2)(0x1.8d13200000000p-1, 0x1.be3132b27f380p-27),
    (double2)(0x1.8e17a00000000p-1, 0x1.533980bb84f9fp-22),
    (double2)(0x1.8f1b300000000p-1, 0x1.889e2ce3ba390p-26),
    (double2)(0x1.901db00000000p-1, 0x1.f7778c3ad0cc8p-24),
    (double2)(0x1.911f300000000p-1, 0x1.46660cec4eba2p-23),
    (double2)(0x1.921fb00000000p-1, 0x1.5110b4611a626p-23),
};

DECLARE_VTABLE(double2, TWO_TO_JBY64_EP, 64) = {
    (double2)(0x1.0000000000000p+0, 0x0.0000000000000p+0),
    (double2)(0x1.02c9a30000000p+0, 0x1.cef00c1dcdef9p-25),
    (double2)(0x1.059b0d0000000p+0, 0x1.8ac2ba1d73e2ap-27),
    (double2)(0x1.0874510000000p+0, 0x1.0eb37901186bep-25),
    (double2)(0x1.0b55860000000p+0, 0x1.9f3121ec53172p-25),
    (double2)(0x1.0e3ec30000000p+0, 0x1.69e8d10103a17p-27),
    (double2)(0x1.11301d0000000p+0, 0x1.25b50a4ebbf1ap-32),
    (double2)(0x1.1429aa0000000p+0, 0x1.d525bbf668203p-25),
    (double2)(0x1.172b830000000p+0, 0x1.8faa2f5b9bef9p-25),
    (double2)(0x1.1a35be0000000p+0, 0x1.6df96ea796d31p-25),
    (double2)(0x1.1d48730000000p+0, 0x1.68b9aa7805b80p-28),
    (double2)(0x1.2063b80000000p+0, 0x1.0c519ac771dd6p-25),
    (double2)(0x1.2387a60000000p+0, 0x1.ceac470cd83f5p-25),
    (double2)(0x1.26b4560000000p+0, 0x1.789f37495e99cp-26),
    (double2)(0x1.29e9df0000000p+0, 0x1.47f7b84b09745p-26),
    (double2)(0x1.2d285a0000000p+0, 0x1.b900c2d002475p-26),
    (double2)(0x1.306fe00000000p+0, 0x1.4636e2a5bd1abp-25),
    (double2)(0x1.33c08b0000000p+0, 0x1.320b7fa64e430p-27),
    (double2)(0x1.371a730000000p+0, 0x1.ceaa72a9c5154p-26),
    (double2)(0x1.3a7db30000000p+0, 0x1.3967fdba86f24p-26),
    (double2)(0x1.3dea640000000p+0, 0x1.82468446b6824p-25),
    (double2)(0x1.4160a20000000p+0, 0x1.f72e29f84325bp-28),
    (double2)(0x1.44e0860000000p+0, 0x1.8624b40c4dbd0p-30),
    (double2)(0x1.486a2b0000000p+0, 0x1.704f3404f068ep-26),
    (double2)(0x1.4bfdad0000000p+0, 0x1.4d8a89c750e5ep-26),
    (double2)(0x1.4f9b270000000p+0, 0x1.a74b29ab4cf62p-26),
    (double2)(0x1.5342b50000000p+0, 0x1.a753e077c2a0fp-26),
    (double2)(0x1.56f4730000000p+0, 0x1.ad49f699bb2c0p-26),
    (double2)(0x1.5ab07d0000000p+0, 0x1.a90a852b19260p-25),
    (double2)(0x1.5e76f10000000p+0, 0x1.6b48521ba6f93p-26),
    (double2)(0x1.6247eb0000000p+0, 0x1.d2ac258f87d03p-31),
    (double2)(0x1.6623880000000p+0, 0x1.2a91124893ecfp-27),
    (double2)(0x1.6a09e60000000p+0, 0x1.9fcef32422cbep-26),
    (double2)(0x1.6dfb230000000p+0, 0x1.8ca345de441c5p-25),
    (double2)(0x1.71f75e0000000p+0, 0x1.1d8bee7ba46e1p-25),
    (double2)(0x1.75feb50000000p+0, 0x1.9099f22fdba6ap-26),
    (double2)(0x1.7a11470000000p+0, 0x1.f580c36bea881p-27),
    (double2)(0x1.7e2f330000000p+0, 0x1.b3d398841740ap-26),
    (double2)(0x1.8258990000000p+0, 0x1.2999c25159f11p-25),
    (double2)(0x1.868d990000000p+0, 0x1.68925d901c83bp-25),
    (double2)(0x1.8ace540000000p+0, 0x1.15506dadd3e2ap-27),
    (double2)(0x1.8f1ae90000000p+0, 0x1.22aee6c57304ep-25),
    (double2)(0x1.93737b0000000p+0, 0x1.9b8bc9e8a0387p-29),
    (double2)(0x1.97d8290000000p+0, 0x1.fbc9c9f173d24p-25),
    (double2)(0x1.9c49180000000p+0, 0x1.51f8480e3e235p-27),
    (double2)(0x1.a0c6670000000p+0, 0x1.6bbcac96535b5p-25),
    (double2)(0x1.a5503b0000000p+0, 0x1.1f12ae45a1224p-27),
    (double2)(0x1.a9e6b50000000p+0, 0x1.5e7f6fd0fac90p-26),
    (double2)(0x1.ae89f90000000p+0, 0x1.2b5a75abd0e69p-25),
    (double2)(0x1.b33a2b0000000p+0, 0x1.09e2bf5ed7fa1p-25),
    (double2)(0x1.b7f76f0000000p+0, 0x1.7daf237553d84p-27),
    (double2)(0x1.bcc1e90000000p+0, 0x1.2f074891ee83dp-30),
    (double2)(0x1.c199bd0000000p+0, 0x1.b0aa538444196p-25),
    (double2)(0x1.c67f120000000p+0, 0x1.cafa29694426fp-25),
    (double2)(0x1.cb720d0000000p+0, 0x1.9df20d22a0797p-25),
    (double2)(0x1.d072d40000000p+0, 0x1.40f12f71a1e45p-25),
    (double2)(0x1.d5818d0000000p+0, 0x1.9f7490e4bb40bp-25),
    (double2)(0x1.da9e600000000p+0, 0x1.ed9942b84600dp-27),
    (double2)(0x1.dfc9730000000p+0, 0x1.bdcdaf5cb4656p-27),
    (double2)(0x1.e502ee0000000p+0, 0x1.e2cffd89cf44cp-26),
    (double2)(0x1.ea4afa0000000p+0, 0x1.52486cc2c7b9dp-27),
    (double2)(0x1.efa1be0000000p+0, 0x1.cc2b44eee3fa4p-25),
    (double2)(0x1.f507650000000p+0, 0x1.6dc8a80ce9f09p-25),
    (double2)(0x1.fa7c180000000p+0, 0x1.9e90d82e90a7ep-28)
};

DECLARE_VTABLE(double2, SINH_TBL, 37) = {
    (double2)(0x0.0000000000000p+0, 0x0.0000000000000p+0),
    (double2)(0x1.2cd9fc0000000p+0, 0x1.13ae6096a0092p-26),
    (double2)(0x1.d03cf60000000p+1, 0x1.db70cfb79a640p-26),
    (double2)(0x1.40926e0000000p+3, 0x1.c2526b66dc067p-23),
    (double2)(0x1.b4a3800000000p+4, 0x1.b81b18647f380p-23),
    (double2)(0x1.28d0160000000p+6, 0x1.bc1cdd1e1eb08p-20),
    (double2)(0x1.936d228000000p+7, 0x1.d9f201534fb09p-19),
    (double2)(0x1.1228768000000p+9, 0x1.d1c064a4e9954p-18),
    (double2)(0x1.749ea50000000p+10, 0x1.4eca65d06ea74p-18),
    (double2)(0x1.fa71570000000p+11, 0x1.0c259bcc0ecc5p-15),
    (double2)(0x1.5829dc8000000p+13, 0x1.b5a6647cf9016p-13),
    (double2)(0x1.d3c4488000000p+14, 0x1.9691adefb0870p-15),
    (double2)(0x1.3de1650000000p+16, 0x1.3410fc29cde38p-10),
    (double2)(0x1.b00b590000000p+17, 0x1.6a31a50b6fb3cp-11),
    (double2)(0x1.259ac48000000p+19, 0x1.7defc71805c40p-10),
    (double2)(0x1.8f0cca8000000p+20, 0x1.eb49fd80e0babp-6),
    (double2)(0x1.0f2ebd0000000p+22, 0x1.4fffc7bcd5920p-7),
    (double2)(0x1.7093488000000p+23, 0x1.03a93b6c63435p-3),
    (double2)(0x1.f4f2208000000p+24, 0x1.1940bb255fd1cp-4),
    (double2)(0x1.546d8f8000000p+26, 0x1.ed26e14260b50p-2),
    (double2)(0x1.ceb0888000000p+27, 0x1.b47401fc9f2a2p+0),
    (double2)(0x1.3a6e1f8000000p+29, 0x1.67bb3f55634f1p+3),
    (double2)(0x1.ab5adb8000000p+30, 0x1.c435ff8194ddcp+2),
    (double2)(0x1.226af30000000p+32, 0x1.d8fee052ba63ap+5),
    (double2)(0x1.8ab7fb0000000p+33, 0x1.51d7edccde3f6p+7),
    (double2)(0x1.0c3d390000000p+35, 0x1.04b1644557d1ap+8),
    (double2)(0x1.6c93268000000p+36, 0x1.6a6b5ca0a9dc4p+8),
    (double2)(0x1.ef822f0000000p+37, 0x1.fd9cc72249abap+11),
    (double2)(0x1.50bba30000000p+39, 0x1.e58de693edab5p+13),
    (double2)(0x1.c9aae40000000p+40, 0x1.8c70158ac6363p+14),
    (double2)(0x1.3704708000000p+42, 0x1.7614764f43e20p+15),
    (double2)(0x1.a6b7658000000p+43, 0x1.6337db36fc718p+17),
    (double2)(0x1.1f43fc8000000p+45, 0x1.12d98b1f611e2p+19),
    (double2)(0x1.866f348000000p+46, 0x1.392bc108b37ccp+19),
    (double2)(0x1.0953e28000000p+48, 0x1.ce87bdc3473dcp+22),
    (double2)(0x1.689e220000000p+49, 0x1.bc8d5ae99ad14p+21),
    (double2)(0x1.ea215a0000000p+50, 0x1.d20d76744835cp+22),
};

DECLARE_VTABLE(double2, COSH_TBL, 37) = {
    (double2)(0x1.0000000000000p+0, 0x0.0000000000000p+0),
    (double2)(0x1.8b07550000000p+0, 0x1.d9f5504c2bd28p-28),
    (double2)(0x1.e18fa08000000p+1, 0x1.7cb66f0a4c9fdp-25),
    (double2)(0x1.422a490000000p+3, 0x1.f58617928e588p-23),
    (double2)(0x1.b4ee858000000p+4, 0x1.bc7d000c38d48p-25),
    (double2)(0x1.28d6fc8000000p+6, 0x1.f7f9d4e329998p-21),
    (double2)(0x1.936e678000000p+7, 0x1.6e6e464885269p-19),
    (double2)(0x1.1228948000000p+9, 0x1.ba3a8b946c154p-19),
    (double2)(0x1.749eaa8000000p+10, 0x1.3f4e76110d5a4p-18),
    (double2)(0x1.fa71580000000p+11, 0x1.17622515a3e2bp-15),
    (double2)(0x1.5829dd0000000p+13, 0x1.4dc4b528af3d0p-17),
    (double2)(0x1.d3c4488000000p+14, 0x1.1156278615e10p-14),
    (double2)(0x1.3de1650000000p+16, 0x1.35ad50ed821f5p-10),
    (double2)(0x1.b00b590000000p+17, 0x1.6b61055f2935cp-11),
    (double2)(0x1.259ac48000000p+19, 0x1.7e2794a601240p-10),
    (double2)(0x1.8f0cca8000000p+20, 0x1.eb4b45f6aadd3p-6),
    (double2)(0x1.0f2ebd0000000p+22, 0x1.5000b967b3698p-7),
    (double2)(0x1.7093488000000p+23, 0x1.03a940fadc092p-3),
    (double2)(0x1.f4f2208000000p+24, 0x1.1940bf3bf874cp-4),
    (double2)(0x1.546d8f8000000p+26, 0x1.ed26e1a2a2110p-2),
    (double2)(0x1.ceb0888000000p+27, 0x1.b4740205796d6p+0),
    (double2)(0x1.3a6e1f8000000p+29, 0x1.67bb3f55cb85dp+3),
    (double2)(0x1.ab5adb8000000p+30, 0x1.c435ff81e18acp+2),
    (double2)(0x1.226af30000000p+32, 0x1.d8fee052bdea4p+5),
    (double2)(0x1.8ab7fb0000000p+33, 0x1.51d7edccde926p+7),
    (double2)(0x1.0c3d390000000p+35, 0x1.04b1644557e0ep+8),
    (double2)(0x1.6c93268000000p+36, 0x1.6a6b5ca0a9e1cp+8),
    (double2)(0x1.ef822f0000000p+37, 0x1.fd9cc72249abep+11),
    (double2)(0x1.50bba30000000p+39, 0x1.e58de693edab5p+13),
    (double2)(0x1.c9aae40000000p+40, 0x1.8c70158ac6364p+14),
    (double2)(0x1.3704708000000p+42, 0x1.7614764f43e20p+15),
    (double2)(0x1.a6b7658000000p+43, 0x1.6337db36fc718p+17),
    (double2)(0x1.1f43fc8000000p+45, 0x1.12d98b1f611e2p+19),
    (double2)(0x1.866f348000000p+46, 0x1.392bc108b37ccp+19),
    (double2)(0x1.0953e28000000p+48, 0x1.ce87bdc3473dcp+22),
    (double2)(0x1.689e220000000p+49, 0x1.bc8d5ae99ad14p+21),
    (double2)(0x1.ea215a0000000p+50, 0x1.d20d76744835cp+22)
};

DECLARE_VTABLE(double, CBRT_INV_TBL, 257) = {
    0x1.0000000000000p+1,
    0x1.fe01fe01fe020p+0,
    0x1.fc07f01fc07f0p+0,
    0x1.fa11caa01fa12p+0,
    0x1.f81f81f81f820p+0,
    0x1.f6310aca0dbb5p+0,
    0x1.f44659e4a4271p+0,
    0x1.f25f644230ab5p+0,
    0x1.f07c1f07c1f08p+0,
    0x1.ee9c7f8458e02p+0,
    0x1.ecc07b301ecc0p+0,
    0x1.eae807aba01ebp+0,
    0x1.e9131abf0b767p+0,
    0x1.e741aa59750e4p+0,
    0x1.e573ac901e574p+0,
    0x1.e3a9179dc1a73p+0,
    0x1.e1e1e1e1e1e1ep+0,
    0x1.e01e01e01e01ep+0,
    0x1.de5d6e3f8868ap+0,
    0x1.dca01dca01dcap+0,
    0x1.dae6076b981dbp+0,
    0x1.d92f2231e7f8ap+0,
    0x1.d77b654b82c34p+0,
    0x1.d5cac807572b2p+0,
    0x1.d41d41d41d41dp+0,
    0x1.d272ca3fc5b1ap+0,
    0x1.d0cb58f6ec074p+0,
    0x1.cf26e5c44bfc6p+0,
    0x1.cd85689039b0bp+0,
    0x1.cbe6d9601cbe7p+0,
    0x1.ca4b3055ee191p+0,
    0x1.c8b265afb8a42p+0,
    0x1.c71c71c71c71cp+0,
    0x1.c5894d10d4986p+0,
    0x1.c3f8f01c3f8f0p+0,
    0x1.c26b5392ea01cp+0,
    0x1.c0e070381c0e0p+0,
    0x1.bf583ee868d8bp+0,
    0x1.bdd2b899406f7p+0,
    0x1.bc4fd65883e7bp+0,
    0x1.bacf914c1bad0p+0,
    0x1.b951e2b18ff23p+0,
    0x1.b7d6c3dda338bp+0,
    0x1.b65e2e3beee05p+0,
    0x1.b4e81b4e81b4fp+0,
    0x1.b37484ad806cep+0,
    0x1.b2036406c80d9p+0,
    0x1.b094b31d922a4p+0,
    0x1.af286bca1af28p+0,
    0x1.adbe87f94905ep+0,
    0x1.ac5701ac5701bp+0,
    0x1.aaf1d2f87ebfdp+0,
    0x1.a98ef606a63bep+0,
    0x1.a82e65130e159p+0,
    0x1.a6d01a6d01a6dp+0,
    0x1.a574107688a4ap+0,
    0x1.a41a41a41a41ap+0,
    0x1.a2c2a87c51ca0p+0,
    0x1.a16d3f97a4b02p+0,
    0x1.a01a01a01a01ap+0,
    0x1.9ec8e951033d9p+0,
    0x1.9d79f176b682dp+0,
    0x1.9c2d14ee4a102p+0,
    0x1.9ae24ea5510dap+0,
    0x1.999999999999ap+0,
    0x1.9852f0d8ec0ffp+0,
    0x1.970e4f80cb872p+0,
    0x1.95cbb0be377aep+0,
    0x1.948b0fcd6e9e0p+0,
    0x1.934c67f9b2ce6p+0,
    0x1.920fb49d0e229p+0,
    0x1.90d4f120190d5p+0,
    0x1.8f9c18f9c18fap+0,
    0x1.8e6527af1373fp+0,
    0x1.8d3018d3018d3p+0,
    0x1.8bfce8062ff3ap+0,
    0x1.8acb90f6bf3aap+0,
    0x1.899c0f601899cp+0,
    0x1.886e5f0abb04ap+0,
    0x1.87427bcc092b9p+0,
    0x1.8618618618618p+0,
    0x1.84f00c2780614p+0,
    0x1.83c977ab2beddp+0,
    0x1.82a4a0182a4a0p+0,
    0x1.8181818181818p+0,
    0x1.8060180601806p+0,
    0x1.7f405fd017f40p+0,
    0x1.7e225515a4f1dp+0,
    0x1.7d05f417d05f4p+0,
    0x1.7beb3922e017cp+0,
    0x1.7ad2208e0ecc3p+0,
    0x1.79baa6bb6398bp+0,
    0x1.78a4c8178a4c8p+0,
    0x1.77908119ac60dp+0,
    0x1.767dce434a9b1p+0,
    0x1.756cac201756dp+0,
    0x1.745d1745d1746p+0,
    0x1.734f0c541fe8dp+0,
    0x1.724287f46debcp+0,
    0x1.713786d9c7c09p+0,
    0x1.702e05c0b8170p+0,
    0x1.6f26016f26017p+0,
    0x1.6e1f76b4337c7p+0,
    0x1.6d1a62681c861p+0,
    0x1.6c16c16c16c17p+0,
    0x1.6b1490aa31a3dp+0,
    0x1.6a13cd1537290p+0,
    0x1.691473a88d0c0p+0,
    0x1.6816816816817p+0,
    0x1.6719f3601671ap+0,
    0x1.661ec6a5122f9p+0,
    0x1.6524f853b4aa3p+0,
    0x1.642c8590b2164p+0,
    0x1.63356b88ac0dep+0,
    0x1.623fa77016240p+0,
    0x1.614b36831ae94p+0,
    0x1.6058160581606p+0,
    0x1.5f66434292dfcp+0,
    0x1.5e75bb8d015e7p+0,
    0x1.5d867c3ece2a5p+0,
    0x1.5c9882b931057p+0,
    0x1.5babcc647fa91p+0,
    0x1.5ac056b015ac0p+0,
    0x1.59d61f123ccaap+0,
    0x1.58ed2308158edp+0,
    0x1.5805601580560p+0,
    0x1.571ed3c506b3ap+0,
    0x1.56397ba7c52e2p+0,
    0x1.5555555555555p+0,
    0x1.54725e6bb82fep+0,
    0x1.5390948f40febp+0,
    0x1.52aff56a8054bp+0,
    0x1.51d07eae2f815p+0,
    0x1.50f22e111c4c5p+0,
    0x1.5015015015015p+0,
    0x1.4f38f62dd4c9bp+0,
    0x1.4e5e0a72f0539p+0,
    0x1.4d843bedc2c4cp+0,
    0x1.4cab88725af6ep+0,
    0x1.4bd3edda68fe1p+0,
    0x1.4afd6a052bf5bp+0,
    0x1.4a27fad76014ap+0,
    0x1.49539e3b2d067p+0,
    0x1.4880522014880p+0,
    0x1.47ae147ae147bp+0,
    0x1.46dce34596066p+0,
    0x1.460cbc7f5cf9ap+0,
    0x1.453d9e2c776cap+0,
    0x1.446f86562d9fbp+0,
    0x1.43a2730abee4dp+0,
    0x1.42d6625d51f87p+0,
    0x1.420b5265e5951p+0,
    0x1.4141414141414p+0,
    0x1.40782d10e6566p+0,
    0x1.3fb013fb013fbp+0,
    0x1.3ee8f42a5af07p+0,
    0x1.3e22cbce4a902p+0,
    0x1.3d5d991aa75c6p+0,
    0x1.3c995a47babe7p+0,
    0x1.3bd60d9232955p+0,
    0x1.3b13b13b13b14p+0,
    0x1.3a524387ac822p+0,
    0x1.3991c2c187f63p+0,
    0x1.38d22d366088ep+0,
    0x1.3813813813814p+0,
    0x1.3755bd1c945eep+0,
    0x1.3698df3de0748p+0,
    0x1.35dce5f9f2af8p+0,
    0x1.3521cfb2b78c1p+0,
    0x1.34679ace01346p+0,
    0x1.33ae45b57bcb2p+0,
    0x1.32f5ced6a1dfap+0,
    0x1.323e34a2b10bfp+0,
    0x1.3187758e9ebb6p+0,
    0x1.30d190130d190p+0,
    0x1.301c82ac40260p+0,
    0x1.2f684bda12f68p+0,
    0x1.2eb4ea1fed14bp+0,
    0x1.2e025c04b8097p+0,
    0x1.2d50a012d50a0p+0,
    0x1.2c9fb4d812ca0p+0,
    0x1.2bef98e5a3711p+0,
    0x1.2b404ad012b40p+0,
    0x1.2a91c92f3c105p+0,
    0x1.29e4129e4129ep+0,
    0x1.293725bb804a5p+0,
    0x1.288b01288b013p+0,
    0x1.27dfa38a1ce4dp+0,
    0x1.27350b8812735p+0,
    0x1.268b37cd60127p+0,
    0x1.25e22708092f1p+0,
    0x1.2539d7e9177b2p+0,
    0x1.2492492492492p+0,
    0x1.23eb79717605bp+0,
    0x1.23456789abcdfp+0,
    0x1.22a0122a0122ap+0,
    0x1.21fb78121fb78p+0,
    0x1.21579804855e6p+0,
    0x1.20b470c67c0d9p+0,
    0x1.2012012012012p+0,
    0x1.1f7047dc11f70p+0,
    0x1.1ecf43c7fb84cp+0,
    0x1.1e2ef3b3fb874p+0,
    0x1.1d8f5672e4abdp+0,
    0x1.1cf06ada2811dp+0,
    0x1.1c522fc1ce059p+0,
    0x1.1bb4a4046ed29p+0,
    0x1.1b17c67f2bae3p+0,
    0x1.1a7b9611a7b96p+0,
    0x1.19e0119e0119ep+0,
    0x1.19453808ca29cp+0,
    0x1.18ab083902bdbp+0,
    0x1.1811811811812p+0,
    0x1.1778a191bd684p+0,
    0x1.16e0689427379p+0,
    0x1.1648d50fc3201p+0,
    0x1.15b1e5f75270dp+0,
    0x1.151b9a3fdd5c9p+0,
    0x1.1485f0e0acd3bp+0,
    0x1.13f0e8d344724p+0,
    0x1.135c81135c811p+0,
    0x1.12c8b89edc0acp+0,
    0x1.12358e75d3033p+0,
    0x1.11a3019a74826p+0,
    0x1.1111111111111p+0,
    0x1.107fbbe011080p+0,
    0x1.0fef010fef011p+0,
    0x1.0f5edfab325a2p+0,
    0x1.0ecf56be69c90p+0,
    0x1.0e40655826011p+0,
    0x1.0db20a88f4696p+0,
    0x1.0d24456359e3ap+0,
    0x1.0c9714fbcda3bp+0,
    0x1.0c0a7868b4171p+0,
    0x1.0b7e6ec259dc8p+0,
    0x1.0af2f722eecb5p+0,
    0x1.0a6810a6810a7p+0,
    0x1.09ddba6af8360p+0,
    0x1.0953f39010954p+0,
    0x1.08cabb37565e2p+0,
    0x1.0842108421084p+0,
    0x1.07b9f29b8eae2p+0,
    0x1.073260a47f7c6p+0,
    0x1.06ab59c7912fbp+0,
    0x1.0624dd2f1a9fcp+0,
    0x1.059eea0727586p+0,
    0x1.05197f7d73404p+0,
    0x1.04949cc1664c5p+0,
    0x1.0410410410410p+0,
    0x1.038c6b78247fcp+0,
    0x1.03091b51f5e1ap+0,
    0x1.02864fc7729e9p+0,
    0x1.0204081020408p+0,
    0x1.0182436517a37p+0,
    0x1.0101010101010p+0,
    0x1.0080402010080p+0,
    0x1.0000000000000p+0
};

DECLARE_VTABLE(double2, CBRT_DBL_TBL, 257) = {
    (double2)(0x1.0000000000000p+0, 0x0.0000000000000p+0),
    (double2)(0x1.0055380000000p+0, 0x1.e6a24c81e4294p-25),
    (double2)(0x1.00aa390000000p+0, 0x1.8548511e3a785p-26),
    (double2)(0x1.00ff010000000p+0, 0x1.4eb9336ec07f6p-25),
    (double2)(0x1.0153920000000p+0, 0x1.0ea64b8b750e1p-27),
    (double2)(0x1.01a7eb0000000p+0, 0x1.61637cff8a53cp-27),
    (double2)(0x1.01fc0d0000000p+0, 0x1.0733bf7bd1943p-27),
    (double2)(0x1.024ff80000000p+0, 0x1.666911345ccedp-26),
    (double2)(0x1.02a3ad0000000p+0, 0x1.77b7a3f592f14p-27),
    (double2)(0x1.02f72b0000000p+0, 0x1.f18d3dd1a5402p-25),
    (double2)(0x1.034a750000000p+0, 0x1.be2f5a58ee9a4p-29),
    (double2)(0x1.039d880000000p+0, 0x1.8901f8f085fa7p-25),
    (double2)(0x1.03f0670000000p+0, 0x1.c68b8cd5b5d69p-26),
    (double2)(0x1.0443110000000p+0, 0x1.a6b0e8624be42p-26),
    (double2)(0x1.0495870000000p+0, 0x1.c4b22b06f68e7p-36),
    (double2)(0x1.04e7c80000000p+0, 0x1.0f3f0afcabe9bp-25),
    (double2)(0x1.0539d60000000p+0, 0x1.48495bca4e1b7p-26),
    (double2)(0x1.058bb00000000p+0, 0x1.6107f1abdfdc3p-25),
    (double2)(0x1.05dd570000000p+0, 0x1.e67261878288ap-25),
    (double2)(0x1.062ecc0000000p+0, 0x1.a6bc155286f1ep-26),
    (double2)(0x1.06800e0000000p+0, 0x1.8a759c64a85f2p-26),
    (double2)(0x1.06d11e0000000p+0, 0x1.5fce70a4a8d09p-27),
    (double2)(0x1.0721fc0000000p+0, 0x1.2f9cbf373fe1dp-28),
    (double2)(0x1.0772a80000000p+0, 0x1.90564ce4ac359p-26),
    (double2)(0x1.07c3230000000p+0, 0x1.ac29ce761b02fp-26),
    (double2)(0x1.08136d0000000p+0, 0x1.cb752f497381cp-26),
    (double2)(0x1.0863860000000p+0, 0x1.8bb9e1cfb35e0p-25),
    (double2)(0x1.08b36f0000000p+0, 0x1.5b4917099de90p-25),
    (double2)(0x1.0903280000000p+0, 0x1.cc77ac9c65ef2p-26),
    (double2)(0x1.0952b10000000p+0, 0x1.7a0f3e7be3dbap-26),
    (double2)(0x1.09a20a0000000p+0, 0x1.6ec851ee0c16fp-25),
    (double2)(0x1.09f1340000000p+0, 0x1.89449bf2946dap-25),
    (double2)(0x1.0a402f0000000p+0, 0x1.98f25301ba223p-25),
    (double2)(0x1.0a8efc0000000p+0, 0x1.47d5ec651f549p-28),
    (double2)(0x1.0add990000000p+0, 0x1.c33ec9a86007ap-25),
    (double2)(0x1.0b2c090000000p+0, 0x1.e0b6653e92649p-26),
    (double2)(0x1.0b7a4b0000000p+0, 0x1.bd64ac09d755fp-28),
    (double2)(0x1.0bc85f0000000p+0, 0x1.f537506f78167p-29),
    (double2)(0x1.0c16450000000p+0, 0x1.2c382d1b3735ep-25),
    (double2)(0x1.0c63fe0000000p+0, 0x1.e20ed659f99e1p-25),
    (double2)(0x1.0cb18b0000000p+0, 0x1.86b633a9c182ap-26),
    (double2)(0x1.0cfeeb0000000p+0, 0x1.45cfd5a65e777p-27),
    (double2)(0x1.0d4c1e0000000p+0, 0x1.0c8770f58bca4p-25),
    (double2)(0x1.0d99250000000p+0, 0x1.739e44b0933c5p-25),
    (double2)(0x1.0de6010000000p+0, 0x1.27dc3d9ce7bd8p-31),
    (double2)(0x1.0e32b00000000p+0, 0x1.3c53c7c5a7b64p-25),
    (double2)(0x1.0e7f340000000p+0, 0x1.9669683830cecp-25),
    (double2)(0x1.0ecb8d0000000p+0, 0x1.8d772c39bdcc4p-25),
    (double2)(0x1.0f17bb0000000p+0, 0x1.9b0008bcf6d7bp-25),
    (double2)(0x1.0f63bf0000000p+0, 0x1.bbb305825ce4fp-28),
    (double2)(0x1.0faf970000000p+0, 0x1.da3f4af13a406p-25),
    (double2)(0x1.0ffb460000000p+0, 0x1.f36b96f74ce86p-26),
    (double2)(0x1.1046cb0000000p+0, 0x1.65c002303f790p-30),
    (double2)(0x1.1092250000000p+0, 0x1.82f84095ba7d5p-25),
    (double2)(0x1.10dd560000000p+0, 0x1.d46433541b2c6p-25),
    (double2)(0x1.11285e0000000p+0, 0x1.71c3d56e93a89p-25),
    (double2)(0x1.11733d0000000p+0, 0x1.98dcef4e40012p-26),
    (double2)(0x1.11bdf30000000p+0, 0x1.530ebef17fe03p-27),
    (double2)(0x1.1208800000000p+0, 0x1.e8b8fa3715066p-27),
    (double2)(0x1.1252e40000000p+0, 0x1.ab26eb3b211dcp-25),
    (double2)(0x1.129d210000000p+0, 0x1.54dd4dc906307p-27),
    (double2)(0x1.12e7350000000p+0, 0x1.c9f962387984ep-26),
    (double2)(0x1.1331210000000p+0, 0x1.c62a959afec09p-25),
    (double2)(0x1.137ae60000000p+0, 0x1.638d9ac6a866ap-25),
    (double2)(0x1.13c4840000000p+0, 0x1.38704eca8a22dp-28),
    (double2)(0x1.140dfa0000000p+0, 0x1.e6c9e1db14f8fp-27),
    (double2)(0x1.1457490000000p+0, 0x1.8744b7f9c9eaap-26),
    (double2)(0x1.14a0710000000p+0, 0x1.6c2893486373bp-25),
    (double2)(0x1.14e9730000000p+0, 0x1.b36bce31699b7p-26),
    (double2)(0x1.15324e0000000p+0, 0x1.71e3813d200c7p-25),
    (double2)(0x1.157b030000000p+0, 0x1.99755ab40aa88p-25),
    (double2)(0x1.15c3920000000p+0, 0x1.b45ca0e4bcfc0p-25),
    (double2)(0x1.160bfc0000000p+0, 0x1.2dd090d869c5dp-28),
    (double2)(0x1.16543f0000000p+0, 0x1.4fe0516b917dap-25),
    (double2)(0x1.169c5d0000000p+0, 0x1.94563226317a2p-25),
    (double2)(0x1.16e4560000000p+0, 0x1.53d8fafc2c851p-25),
    (double2)(0x1.172c2a0000000p+0, 0x1.dcbd41fbd41a3p-26),
    (double2)(0x1.1773d90000000p+0, 0x1.862ff5285f59cp-26),
    (double2)(0x1.17bb630000000p+0, 0x1.3072ea97a1e1cp-25),
    (double2)(0x1.1802c90000000p+0, 0x1.2839075184805p-26),
    (double2)(0x1.184a0a0000000p+0, 0x1.4b0323e9eff42p-25),
    (double2)(0x1.1891270000000p+0, 0x1.b158893c45484p-25),
    (double2)(0x1.18d8210000000p+0, 0x1.149ef0fc35826p-28),
    (double2)(0x1.191ef60000000p+0, 0x1.f2e77ea96acaap-26),
    (double2)(0x1.1965a80000000p+0, 0x1.200074c471a95p-26),
    (double2)(0x1.19ac360000000p+0, 0x1.3f8cc517f6f04p-25),
    (double2)(0x1.19f2a10000000p+0, 0x1.60ba2e311bb55p-25),
    (double2)(0x1.1a38e90000000p+0, 0x1.4b788730bbec3p-25),
    (double2)(0x1.1a7f0e0000000p+0, 0x1.57090795ee20cp-25),
    (double2)(0x1.1ac5100000000p+0, 0x1.d9ffe983670b1p-25),
    (double2)(0x1.1b0af00000000p+0, 0x1.2a463ff61bfdap-25),
    (double2)(0x1.1b50ad0000000p+0, 0x1.9d1bc6a5e65cfp-25),
    (double2)(0x1.1b96480000000p+0, 0x1.8718abaa9e922p-25),
    (double2)(0x1.1bdbc10000000p+0, 0x1.3c2f52ffa342ep-25),
    (double2)(0x1.1c21180000000p+0, 0x1.0fae13ff42c80p-25),
    (double2)(0x1.1c664d0000000p+0, 0x1.5440f0ef00d57p-25),
    (double2)(0x1.1cab610000000p+0, 0x1.6fcd22d4e3c1ep-27),
    (double2)(0x1.1cf0530000000p+0, 0x1.e0c60b409e863p-27),
    (double2)(0x1.1d35230000000p+0, 0x1.f9cab5a5f0333p-25),
    (double2)(0x1.1d79d30000000p+0, 0x1.30f24744c333dp-25),
    (double2)(0x1.1dbe620000000p+0, 0x1.b50622a76b2fep-27),
    (double2)(0x1.1e02cf0000000p+0, 0x1.fdb94ba595375p-25),
    (double2)(0x1.1e471d0000000p+0, 0x1.861b9b945a171p-28),
    (double2)(0x1.1e8b490000000p+0, 0x1.54348015188c4p-25),
    (double2)(0x1.1ecf550000000p+0, 0x1.b54d149865523p-25),
    (double2)(0x1.1f13410000000p+0, 0x1.a0bb783d9de33p-25),
    (double2)(0x1.1f570d0000000p+0, 0x1.629d12b1a2157p-25),
    (double2)(0x1.1f9ab90000000p+0, 0x1.467fe35d179dfp-25),
    (double2)(0x1.1fde450000000p+0, 0x1.9763f3e26c8f7p-25),
    (double2)(0x1.2021b20000000p+0, 0x1.3f798bb9f7679p-26),
    (double2)(0x1.2064ff0000000p+0, 0x1.52e577e855898p-26),
    (double2)(0x1.20a82c0000000p+0, 0x1.fde47e5502c3ap-25),
    (double2)(0x1.20eb3b0000000p+0, 0x1.cbd0b548d96a0p-26),
    (double2)(0x1.212e2a0000000p+0, 0x1.a9cd9f7be8de8p-25),
    (double2)(0x1.2170fb0000000p+0, 0x1.22bbe704886dep-26),
    (double2)(0x1.21b3ac0000000p+0, 0x1.e3dea8317f020p-25),
    (double2)(0x1.21f63f0000000p+0, 0x1.e812085ac8855p-25),
    (double2)(0x1.2238b40000000p+0, 0x1.c87144f24cb07p-26),
    (double2)(0x1.227b0a0000000p+0, 0x1.1e128ee311fa2p-25),
    (double2)(0x1.22bd420000000p+0, 0x1.b5c163d61a2d3p-26),
    (double2)(0x1.22ff5c0000000p+0, 0x1.7d97e7fb90633p-27),
    (double2)(0x1.2341570000000p+0, 0x1.efe899d50f6a7p-25),
    (double2)(0x1.2383350000000p+0, 0x1.d0333eb75de5ap-25),
    (double2)(0x1.23c4f60000000p+0, 0x1.0e590be73a573p-27),
    (double2)(0x1.2406980000000p+0, 0x1.8ce8dcac3cdd2p-25),
    (double2)(0x1.24481d0000000p+0, 0x1.ee8a48954064bp-25),
    (double2)(0x1.2489850000000p+0, 0x1.aa62f18461e09p-25),
    (double2)(0x1.24cad00000000p+0, 0x1.01e5940986a15p-25),
    (double2)(0x1.250bfe0000000p+0, 0x1.b082f4f9b8d4cp-28),
    (double2)(0x1.254d0e0000000p+0, 0x1.876e0e5527f5ap-25),
    (double2)(0x1.258e020000000p+0, 0x1.3617080831e6bp-25),
    (double2)(0x1.25ced90000000p+0, 0x1.81b26e34aa4a2p-25),
    (double2)(0x1.260f940000000p+0, 0x1.52ee66dfab0c1p-26),
    (double2)(0x1.2650320000000p+0, 0x1.d85a5329e8819p-26),
    (double2)(0x1.2690b40000000p+0, 0x1.105c1b646b5d1p-26),
    (double2)(0x1.26d1190000000p+0, 0x1.bb6690c1a379cp-25),
    (double2)(0x1.2711630000000p+0, 0x1.86aeba73ce3a9p-26),
    (double2)(0x1.2751900000000p+0, 0x1.dd16198294dd4p-25),
    (double2)(0x1.2791a20000000p+0, 0x1.454e675775e83p-25),
    (double2)(0x1.27d1980000000p+0, 0x1.3842e026197eap-25),
    (double2)(0x1.2811720000000p+0, 0x1.f1ce0e70c44d2p-25),
    (double2)(0x1.2851310000000p+0, 0x1.ad636441a5627p-25),
    (double2)(0x1.2890d50000000p+0, 0x1.4c205d7212abbp-26),
    (double2)(0x1.28d05d0000000p+0, 0x1.167c86c116419p-25),
    (double2)(0x1.290fca0000000p+0, 0x1.38ec3ef16e294p-25),
    (double2)(0x1.294f1c0000000p+0, 0x1.473fceace9321p-25),
    (double2)(0x1.298e530000000p+0, 0x1.7af53a836dba7p-25),
    (double2)(0x1.29cd700000000p+0, 0x1.a51f3c383b652p-30),
    (double2)(0x1.2a0c710000000p+0, 0x1.3696da190822dp-25),
    (double2)(0x1.2a4b580000000p+0, 0x1.2f9adec77074bp-25),
    (double2)(0x1.2a8a250000000p+0, 0x1.8190fd5bee55fp-28),
    (double2)(0x1.2ac8d70000000p+0, 0x1.bfee8fac68e55p-27),
    (double2)(0x1.2b076f0000000p+0, 0x1.31c9d6bc5f68ap-28),
    (double2)(0x1.2b45ec0000000p+0, 0x1.89d0523737edfp-25),
    (double2)(0x1.2b84500000000p+0, 0x1.a295943bf47bbp-26),
    (double2)(0x1.2bc29a0000000p+0, 0x1.96be32e5b3207p-28),
    (double2)(0x1.2c00c90000000p+0, 0x1.e44c7d909fa0ep-25),
    (double2)(0x1.2c3ee00000000p+0, 0x1.b2505da94d9eap-29),
    (double2)(0x1.2c7cdc0000000p+0, 0x1.0c851f46c9c98p-25),
    (double2)(0x1.2cbabf0000000p+0, 0x1.da71f7d9aa3b7p-26),
    (double2)(0x1.2cf8880000000p+0, 0x1.f1b605d019ef1p-25),
    (double2)(0x1.2d36390000000p+0, 0x1.386e8a2189563p-27),
    (double2)(0x1.2d73d00000000p+0, 0x1.b19fa5d306ba7p-28),
    (double2)(0x1.2db14d0000000p+0, 0x1.dd749b67aef76p-25),
    (double2)(0x1.2deeb20000000p+0, 0x1.76ff6f1dc04b0p-25),
    (double2)(0x1.2e2bfe0000000p+0, 0x1.35a33d0b232a6p-25),
    (double2)(0x1.2e69310000000p+0, 0x1.4bdc80024a4e1p-25),
    (double2)(0x1.2ea64b0000000p+0, 0x1.ebd61770fd723p-25),
    (double2)(0x1.2ee34d0000000p+0, 0x1.4769fc537264dp-25),
    (double2)(0x1.2f20360000000p+0, 0x1.9021f429f3b98p-25),
    (double2)(0x1.2f5d070000000p+0, 0x1.ee7083efbd606p-26),
    (double2)(0x1.2f99bf0000000p+0, 0x1.ad985552a6b1ap-25),
    (double2)(0x1.2fd65f0000000p+0, 0x1.e3df778772160p-25),
    (double2)(0x1.3012e70000000p+0, 0x1.ca5d76ddc9b34p-25),
    (double2)(0x1.304f570000000p+0, 0x1.91154ffdbaf74p-25),
    (double2)(0x1.308baf0000000p+0, 0x1.67bdd57fb306ap-25),
    (double2)(0x1.30c7ef0000000p+0, 0x1.7dc255ac40886p-25),
    (double2)(0x1.3104180000000p+0, 0x1.219f38e8afafep-32),
    (double2)(0x1.3140280000000p+0, 0x1.2416bf9669a04p-25),
    (double2)(0x1.317c210000000p+0, 0x1.11c96b2b3987fp-25),
    (double2)(0x1.31b8020000000p+0, 0x1.f99ed447e1177p-25),
    (double2)(0x1.31f3cd0000000p+0, 0x1.3245826328a11p-30),
    (double2)(0x1.322f7f0000000p+0, 0x1.6f56dd1e645f8p-25),
    (double2)(0x1.326b1b0000000p+0, 0x1.6164946945535p-27),
    (double2)(0x1.32a69f0000000p+0, 0x1.e37d59d190028p-26),
    (double2)(0x1.32e20c0000000p+0, 0x1.68671f12bf828p-25),
    (double2)(0x1.331d620000000p+0, 0x1.e8ecbca6aabbdp-25),
    (double2)(0x1.3358a20000000p+0, 0x1.3f49e109a5912p-26),
    (double2)(0x1.3393ca0000000p+0, 0x1.b8a0e11ec3043p-25),
    (double2)(0x1.33cedc0000000p+0, 0x1.5fae00aed691ap-25),
    (double2)(0x1.3409d70000000p+0, 0x1.c0569bece3e4ap-25),
    (double2)(0x1.3444bc0000000p+0, 0x1.05e26744efbfep-25),
    (double2)(0x1.347f8a0000000p+0, 0x1.5b570a94be5c5p-25),
    (double2)(0x1.34ba420000000p+0, 0x1.d6f156ea0e063p-26),
    (double2)(0x1.34f4e30000000p+0, 0x1.e0ca7612fc484p-25),
    (double2)(0x1.352f6f0000000p+0, 0x1.963c927b25258p-27),
    (double2)(0x1.3569e40000000p+0, 0x1.47930aa725a5cp-26),
    (double2)(0x1.35a4430000000p+0, 0x1.8a79fe3af43b3p-26),
    (double2)(0x1.35de8c0000000p+0, 0x1.e6dc29c41bdafp-26),
    (double2)(0x1.3618bf0000000p+0, 0x1.57a2e76f863a5p-25),
    (double2)(0x1.3652dd0000000p+0, 0x1.ae3b61716354dp-29),
    (double2)(0x1.368ce40000000p+0, 0x1.65fb5df6906b1p-25),
    (double2)(0x1.36c6d60000000p+0, 0x1.6177d7f588f7bp-25),
    (double2)(0x1.3700b30000000p+0, 0x1.ad55abd091b67p-28),
    (double2)(0x1.373a7a0000000p+0, 0x1.55337b2422d76p-30),
    (double2)(0x1.37742b0000000p+0, 0x1.084ebe86972d5p-25),
    (double2)(0x1.37adc70000000p+0, 0x1.56395808e1ea3p-25),
    (double2)(0x1.37e74e0000000p+0, 0x1.1bce21b40fba7p-25),
    (double2)(0x1.3820c00000000p+0, 0x1.006f94605b515p-26),
    (double2)(0x1.385a1c0000000p+0, 0x1.aa676aceb1f7dp-25),
    (double2)(0x1.3893640000000p+0, 0x1.8229f76554ce6p-26),
    (double2)(0x1.38cc960000000p+0, 0x1.eabfc6cf57330p-25),
    (double2)(0x1.3905b40000000p+0, 0x1.4daed9c0ce8bcp-25),
    (double2)(0x1.393ebd0000000p+0, 0x1.0ff1768237141p-25),
    (double2)(0x1.3977b10000000p+0, 0x1.575f83051b085p-25),
    (double2)(0x1.39b0910000000p+0, 0x1.2667deb523e29p-27),
    (double2)(0x1.39e95c0000000p+0, 0x1.816996954f4fdp-30),
    (double2)(0x1.3a22120000000p+0, 0x1.87cfccf4d9cd4p-26),
    (double2)(0x1.3a5ab40000000p+0, 0x1.2c5d018198353p-26),
    (double2)(0x1.3a93410000000p+0, 0x1.a7a898dcc34aap-25),
    (double2)(0x1.3acbbb0000000p+0, 0x1.cead6dadc36d1p-29),
    (double2)(0x1.3b04200000000p+0, 0x1.a55759c498bdfp-29),
    (double2)(0x1.3b3c700000000p+0, 0x1.c414a9ef6de04p-25),
    (double2)(0x1.3b74ad0000000p+0, 0x1.3e2108a6e58fap-25),
    (double2)(0x1.3bacd60000000p+0, 0x1.587fd7643d77cp-26),
    (double2)(0x1.3be4eb0000000p+0, 0x1.901eb1d3ff3dfp-28),
    (double2)(0x1.3c1ceb0000000p+0, 0x1.f2ccd7c812fc6p-25),
    (double2)(0x1.3c54d90000000p+0, 0x1.1c8ee70a01049p-29),
    (double2)(0x1.3c8cb20000000p+0, 0x1.63e8d02831eecp-26),
    (double2)(0x1.3cc4770000000p+0, 0x1.f61a42a92c7ffp-25),
    (double2)(0x1.3cfc2a0000000p+0, 0x1.a917399c84d24p-34),
    (double2)(0x1.3d33c80000000p+0, 0x1.e9197c8eec2f0p-26),
    (double2)(0x1.3d6b530000000p+0, 0x1.e6f842f5a1378p-26),
    (double2)(0x1.3da2cb0000000p+0, 0x1.fac242a90a0fcp-29),
    (double2)(0x1.3dda2f0000000p+0, 0x1.35ed726610227p-26),
    (double2)(0x1.3e11800000000p+0, 0x1.0e0d64804b15bp-26),
    (double2)(0x1.3e48be0000000p+0, 0x1.560675daba814p-31),
    (double2)(0x1.3e7fe80000000p+0, 0x1.37388c8768032p-25),
    (double2)(0x1.3eb7000000000p+0, 0x1.ee3c89f9e01f5p-28),
    (double2)(0x1.3eee040000000p+0, 0x1.39f6f0d09747cp-25),
    (double2)(0x1.3f24f60000000p+0, 0x1.322c327abb8f0p-27),
    (double2)(0x1.3f5bd40000000p+0, 0x1.961b347c8ac80p-25),
    (double2)(0x1.3f92a00000000p+0, 0x1.3711fbbd0f118p-25),
    (double2)(0x1.3fc9590000000p+0, 0x1.4fad8d7718ffbp-25),
    (double2)(0x1.3fffff0000000p+0, 0x1.fffffffffffffp-25),
    (double2)(0x1.4036930000000p+0, 0x1.67efa79ec35b4p-25),
    (double2)(0x1.406d140000000p+0, 0x1.a737687a254a8p-25),
    (double2)(0x1.40a3830000000p+0, 0x1.bace0f87d924dp-26),
    (double2)(0x1.40d9df0000000p+0, 0x1.29e37c237e392p-25),
    (double2)(0x1.4110290000000p+0, 0x1.57ce7ac3f3012p-26),
    (double2)(0x1.4146600000000p+0, 0x1.82829359f8fbdp-25),
    (double2)(0x1.417c850000000p+0, 0x1.cc9be42d14676p-25),
    (double2)(0x1.41b2980000000p+0, 0x1.a8f001c137d0bp-25),
    (double2)(0x1.41e8990000000p+0, 0x1.36127687dda05p-25),
    (double2)(0x1.421e880000000p+0, 0x1.24dba322646f0p-26),
    (double2)(0x1.4254640000000p+0, 0x1.dc43f1ed210b4p-25),
    (double2)(0x1.428a2f0000000p+0, 0x1.31ae515c447bbp-25)
};

DECLARE_VTABLE(double2, CBRT_REM_TBL, 5) = {
    (double2)(0x1.428a2f0000000p-1, 0x1.31ae515c447bbp-26),
    (double2)(0x1.965fea0000000p-1, 0x1.4f5b8f20ac166p-27),
    (double2)(0x1.0000000000000p+0, 0x0.0000000000000p+0),
    (double2)(0x1.428a2f0000000p+0, 0x1.31ae515c447bbp-25),
    (double2)(0x1.965fea0000000p+0, 0x1.4f5b8f20ac166p-26),
};

#endif // cl_khr_fp64

VTABLE_FUNCTION(double, CBRT_INV_TBL, cbrt_inv_tbl);

VTABLE_FUNCTION2(v2double, LN_TBL, ln_tbl);
VTABLE_FUNCTION2(v2double, ATAN_JBY256_TBL, atan_jby256_tbl);
VTABLE_FUNCTION2(v2double, TWO_TO_JBY64_EP, two_to_jby64_ep_tbl);
VTABLE_FUNCTION2(v2double, SINH_TBL, sinh_tbl);
VTABLE_FUNCTION2(v2double, COSH_TBL, cosh_tbl);
VTABLE_FUNCTION2(v2double, CBRT_DBL_TBL, cbrt_dbl_tbl);
VTABLE_FUNCTION2(v2double, CBRT_REM_TBL, cbrt_rem_tbl);