-#if (defined(VAX)||defined(TAHOE)) /* VAX D format */
-#ifdef VAX
-#define _0x(A,B) 0x/**/A/**/B
-#else /* VAX */
-#define _0x(A,B) 0x/**/B/**/A
-#endif /* VAX */
-/*static double */
-/*athfhi = 4.6364760900080611433E-1 , /*Hex 2^ -1 * .ED63382B0DDA7B */
-/*athflo = 1.9338828231967579916E-19 , /*Hex 2^-62 * .E450059CFE92C0 */
-/*PIo4 = 7.8539816339744830676E-1 , /*Hex 2^ 0 * .C90FDAA22168C2 */
-/*at1fhi = 9.8279372324732906796E-1 , /*Hex 2^ 0 * .FB985E940FB4D9 */
-/*at1flo = -3.5540295636764633916E-18 , /*Hex 2^-57 * -.831EDC34D6EAEA */
-/*PIo2 = 1.5707963267948966135E0 , /*Hex 2^ 1 * .C90FDAA22168C2 */
-/*PI = 3.1415926535897932270E0 , /*Hex 2^ 2 * .C90FDAA22168C2 */
-/*a1 = 3.3333333333333473730E-1 , /*Hex 2^ -1 * .AAAAAAAAAAAB75 */
-/*a2 = -2.0000000000017730678E-1 , /*Hex 2^ -2 * -.CCCCCCCCCD946E */
-/*a3 = 1.4285714286694640301E-1 , /*Hex 2^ -2 * .92492492744262 */
-/*a4 = -1.1111111135032672795E-1 , /*Hex 2^ -3 * -.E38E38EBC66292 */
-/*a5 = 9.0909091380563043783E-2 , /*Hex 2^ -3 * .BA2E8BB31BD70C */
-/*a6 = -7.6922954286089459397E-2 , /*Hex 2^ -3 * -.9D89C827C37F18 */
-/*a7 = 6.6663180891693915586E-2 , /*Hex 2^ -3 * .8886B4AE379E58 */
-/*a8 = -5.8772703698290408927E-2 , /*Hex 2^ -4 * -.F0BBA58481A942 */
-/*a9 = 5.2170707402812969804E-2 , /*Hex 2^ -4 * .D5B0F3A1AB13AB */
-/*a10 = -4.4895863157820361210E-2 , /*Hex 2^ -4 * -.B7E4B97FD1048F */
-/*a11 = 3.3006147437343875094E-2 , /*Hex 2^ -4 * .8731743CF72D87 */
-/*a12 = -1.4614844866464185439E-2 ; /*Hex 2^ -6 * -.EF731A2F3476D9 */
-static long athfhix[] = { _0x(6338,3fed), _0x(da7b,2b0d)};
-#define athfhi (*(double *)athfhix)
-static long athflox[] = { _0x(5005,2164), _0x(92c0,9cfe)};
-#define athflo (*(double *)athflox)
-static long PIo4x[] = { _0x(0fda,4049), _0x(68c2,a221)};
-#define PIo4 (*(double *)PIo4x)
-static long at1fhix[] = { _0x(985e,407b), _0x(b4d9,940f)};
-#define at1fhi (*(double *)at1fhix)
-static long at1flox[] = { _0x(1edc,a383), _0x(eaea,34d6)};
-#define at1flo (*(double *)at1flox)
-static long PIo2x[] = { _0x(0fda,40c9), _0x(68c2,a221)};
-#define PIo2 (*(double *)PIo2x)
-static long PIx[] = { _0x(0fda,4149), _0x(68c2,a221)};
-#define PI (*(double *)PIx)
-static long a1x[] = { _0x(aaaa,3faa), _0x(ab75,aaaa)};
-#define a1 (*(double *)a1x)
-static long a2x[] = { _0x(cccc,bf4c), _0x(946e,cccd)};
-#define a2 (*(double *)a2x)
-static long a3x[] = { _0x(4924,3f12), _0x(4262,9274)};
-#define a3 (*(double *)a3x)
-static long a4x[] = { _0x(8e38,bee3), _0x(6292,ebc6)};
-#define a4 (*(double *)a4x)
-static long a5x[] = { _0x(2e8b,3eba), _0x(d70c,b31b)};
-#define a5 (*(double *)a5x)
-static long a6x[] = { _0x(89c8,be9d), _0x(7f18,27c3)};
-#define a6 (*(double *)a6x)
-static long a7x[] = { _0x(86b4,3e88), _0x(9e58,ae37)};
-#define a7 (*(double *)a7x)
-static long a8x[] = { _0x(bba5,be70), _0x(a942,8481)};
-#define a8 (*(double *)a8x)
-static long a9x[] = { _0x(b0f3,3e55), _0x(13ab,a1ab)};
-#define a9 (*(double *)a9x)
-static long a10x[] = { _0x(e4b9,be37), _0x(048f,7fd1)};
-#define a10 (*(double *)a10x)
-static long a11x[] = { _0x(3174,3e07), _0x(2d87,3cf7)};
-#define a11 (*(double *)a11x)
-static long a12x[] = { _0x(731a,bd6f), _0x(76d9,2f34)};
-#define a12 (*(double *)a12x)
-#else /* IEEE double */
-static double
-athfhi = 4.6364760900080609352E-1 , /*Hex 2^ -2 * 1.DAC670561BB4F */
-athflo = 4.6249969567426939759E-18 , /*Hex 2^-58 * 1.5543B8F253271 */
-PIo4 = 7.8539816339744827900E-1 , /*Hex 2^ -1 * 1.921FB54442D18 */
-at1fhi = 9.8279372324732905408E-1 , /*Hex 2^ -1 * 1.F730BD281F69B */
-at1flo = -2.4407677060164810007E-17 , /*Hex 2^-56 * -1.C23DFEFEAE6B5 */
-PIo2 = 1.5707963267948965580E0 , /*Hex 2^ 0 * 1.921FB54442D18 */
-PI = 3.1415926535897931160E0 , /*Hex 2^ 1 * 1.921FB54442D18 */
-a1 = 3.3333333333333942106E-1 , /*Hex 2^ -2 * 1.55555555555C3 */
-a2 = -1.9999999999979536924E-1 , /*Hex 2^ -3 * -1.9999999997CCD */
-a3 = 1.4285714278004377209E-1 , /*Hex 2^ -3 * 1.24924921EC1D7 */
-a4 = -1.1111110579344973814E-1 , /*Hex 2^ -4 * -1.C71C7059AF280 */
-a5 = 9.0908906105474668324E-2 , /*Hex 2^ -4 * 1.745CE5AA35DB2 */
-a6 = -7.6919217767468239799E-2 , /*Hex 2^ -4 * -1.3B0FA54BEC400 */
-a7 = 6.6614695906082474486E-2 , /*Hex 2^ -4 * 1.10DA924597FFF */
-a8 = -5.8358371008508623523E-2 , /*Hex 2^ -5 * -1.DE125FDDBD793 */
-a9 = 4.9850617156082015213E-2 , /*Hex 2^ -5 * 1.9860524BDD807 */
-a10 = -3.6700606902093604877E-2 , /*Hex 2^ -5 * -1.2CA6C04C6937A */
-a11 = 1.6438029044759730479E-2 ; /*Hex 2^ -6 * 1.0D52174A1BB54 */
+#include "mathimpl.h"
+
+vc(athfhi, 4.6364760900080611433E-1 ,6338,3fed,da7b,2b0d, -1, .ED63382B0DDA7B)
+vc(athflo, 1.9338828231967579916E-19 ,5005,2164,92c0,9cfe, -62, .E450059CFE92C0)
+vc(PIo4, 7.8539816339744830676E-1 ,0fda,4049,68c2,a221, 0, .C90FDAA22168C2)
+vc(at1fhi, 9.8279372324732906796E-1 ,985e,407b,b4d9,940f, 0, .FB985E940FB4D9)
+vc(at1flo,-3.5540295636764633916E-18 ,1edc,a383,eaea,34d6, -57,-.831EDC34D6EAEA)
+vc(PIo2, 1.5707963267948966135E0 ,0fda,40c9,68c2,a221, 1, .C90FDAA22168C2)
+vc(PI, 3.1415926535897932270E0 ,0fda,4149,68c2,a221, 2, .C90FDAA22168C2)
+vc(a1, 3.3333333333333473730E-1 ,aaaa,3faa,ab75,aaaa, -1, .AAAAAAAAAAAB75)
+vc(a2, -2.0000000000017730678E-1 ,cccc,bf4c,946e,cccd, -2,-.CCCCCCCCCD946E)
+vc(a3, 1.4285714286694640301E-1 ,4924,3f12,4262,9274, -2, .92492492744262)
+vc(a4, -1.1111111135032672795E-1 ,8e38,bee3,6292,ebc6, -3,-.E38E38EBC66292)
+vc(a5, 9.0909091380563043783E-2 ,2e8b,3eba,d70c,b31b, -3, .BA2E8BB31BD70C)
+vc(a6, -7.6922954286089459397E-2 ,89c8,be9d,7f18,27c3, -3,-.9D89C827C37F18)
+vc(a7, 6.6663180891693915586E-2 ,86b4,3e88,9e58,ae37, -3, .8886B4AE379E58)
+vc(a8, -5.8772703698290408927E-2 ,bba5,be70,a942,8481, -4,-.F0BBA58481A942)
+vc(a9, 5.2170707402812969804E-2 ,b0f3,3e55,13ab,a1ab, -4, .D5B0F3A1AB13AB)
+vc(a10, -4.4895863157820361210E-2 ,e4b9,be37,048f,7fd1, -4,-.B7E4B97FD1048F)
+vc(a11, 3.3006147437343875094E-2 ,3174,3e07,2d87,3cf7, -4, .8731743CF72D87)
+vc(a12, -1.4614844866464185439E-2 ,731a,bd6f,76d9,2f34, -6,-.EF731A2F3476D9)
+
+ic(athfhi, 4.6364760900080609352E-1 , -2, 1.DAC670561BB4F)
+ic(athflo, 4.6249969567426939759E-18 , -58, 1.5543B8F253271)
+ic(PIo4, 7.8539816339744827900E-1 , -1, 1.921FB54442D18)
+ic(at1fhi, 9.8279372324732905408E-1 , -1, 1.F730BD281F69B)
+ic(at1flo,-2.4407677060164810007E-17 , -56, -1.C23DFEFEAE6B5)
+ic(PIo2, 1.5707963267948965580E0 , 0, 1.921FB54442D18)
+ic(PI, 3.1415926535897931160E0 , 1, 1.921FB54442D18)
+ic(a1, 3.3333333333333942106E-1 , -2, 1.55555555555C3)
+ic(a2, -1.9999999999979536924E-1 , -3, -1.9999999997CCD)
+ic(a3, 1.4285714278004377209E-1 , -3, 1.24924921EC1D7)
+ic(a4, -1.1111110579344973814E-1 , -4, -1.C71C7059AF280)
+ic(a5, 9.0908906105474668324E-2 , -4, 1.745CE5AA35DB2)
+ic(a6, -7.6919217767468239799E-2 , -4, -1.3B0FA54BEC400)
+ic(a7, 6.6614695906082474486E-2 , -4, 1.10DA924597FFF)
+ic(a8, -5.8358371008508623523E-2 , -5, -1.DE125FDDBD793)
+ic(a9, 4.9850617156082015213E-2 , -5, 1.9860524BDD807)
+ic(a10, -3.6700606902093604877E-2 , -5, -1.2CA6C04C6937A)
+ic(a11, 1.6438029044759730479E-2 , -6, 1.0D52174A1BB54)
+
+#ifdef vccast
+#define athfhi vccast(athfhi)
+#define athflo vccast(athflo)
+#define PIo4 vccast(PIo4)
+#define at1fhi vccast(at1fhi)
+#define at1flo vccast(at1flo)
+#define PIo2 vccast(PIo2)
+#define PI vccast(PI)
+#define a1 vccast(a1)
+#define a2 vccast(a2)
+#define a3 vccast(a3)
+#define a4 vccast(a4)
+#define a5 vccast(a5)
+#define a6 vccast(a6)
+#define a7 vccast(a7)
+#define a8 vccast(a8)
+#define a9 vccast(a9)
+#define a10 vccast(a10)
+#define a11 vccast(a11)
+#define a12 vccast(a12)