summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/generic/xint/xintlog.sty
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/tex/generic/xint/xintlog.sty')
-rw-r--r--Master/texmf-dist/tex/generic/xint/xintlog.sty1717
1 files changed, 1614 insertions, 103 deletions
diff --git a/Master/texmf-dist/tex/generic/xint/xintlog.sty b/Master/texmf-dist/tex/generic/xint/xintlog.sty
index 5b4877cd764..e20e40bebcc 100644
--- a/Master/texmf-dist/tex/generic/xint/xintlog.sty
+++ b/Master/texmf-dist/tex/generic/xint/xintlog.sty
@@ -21,7 +21,7 @@
%% same distribution. (The sources need not necessarily be
%% in the same archive or directory.)
%% ---------------------------------------------------------------
-%% The xint bundle 1.4d 2021/03/29
+%% The xint bundle 1.4e 2021/05/05
%% Copyright (C) 2013-2021 by Jean-Francois Burnol
%% xintlog: Logarithms and exponentials for xintexpr
%% ---------------------------------------------------------------
@@ -40,7 +40,6 @@
\def\z{\endgroup}%
\def\empty{}\def\space{ }\newlinechar10
\expandafter\let\expandafter\w\csname ver@xintexpr.sty\endcsname
- \expandafter\let\expandafter\x\csname ver@xintlog.sty\endcsname
\expandafter
\ifx\csname PackageInfo\endcsname\relax
\def\y#1#2{\immediate\write-1{Package #1 Info:^^J%
@@ -59,169 +58,1681 @@
\else\string\input\space xintexpr.sty \fi
rather, aborting}%
\aftergroup\endinput
- \else
- \ifx\x\relax % first loading (initiated from xintexpr.sty)
- \else
- \ifx\x\empty % LaTeX first loading, \ProvidesPackage not yet seen
- \else
- \y{xintlog}{Already loaded, aborting}%
- \aftergroup\endinput
- \fi
- \fi
\fi
\fi
\z%
-\xintexprSafeCatcodes\catcode`_ 11
+\edef\XINTendxintloginput{\XINTrestorecatcodes\noexpand\endinput}\XINTsetcatcodes%
+\ifcsname xintlibver@log\endcsname
+ \expandafter\xint_firstoftwo
+\else
+ \expandafter\xint_secondoftwo
+\fi
+{\immediate\write-1{Reloading xintlog library using Digits=\xinttheDigits.}}%
+{\expandafter\gdef\csname xintlibver@log\endcsname{2021/05/05 v1.4e}%
\XINT_providespackage
\ProvidesPackage{xintlog}%
-[2021/03/29 v1.4d Logarithms and exponentials for xintexpr (JFB)]%
+[2021/05/05 v1.4e Logarithms and exponentials for xintexpr (JFB)]%
+}%
+\def\xintreloadxintlog{\input xintlog.sty }%
+\xintexprSafeCatcodes\catcode`_ 11
+\unless\ifdefined\XINTinFloatPowTen
\ifdefined\RequirePackage
\RequirePackage{poormanlog}%
\else
\input poormanlog.tex
+\fi\fi
+\xintexprRestoreCatcodes\XINTsetcatcodes
+\def\PoorManLogBaseTen{\romannumeral0\poormanlogbaseten}%
+\def\poormanlogbaseten #1%
+{%
+ \XINTinfloat[\XINTdigits]%
+ {\romannumeral0\expandafter\PML@logbaseten\romannumeral0\XINTinfloat[9]{#1}}%
+}%
+\def\PoorManLogBaseTen_raw%#1
+{%
+ \romannumeral0\expandafter\PML@logbaseten\romannumeral0\XINTinfloat[9]%{#1}%
+}%
+\def\PML@logbaseten#1[#2]%
+{%
+ \xintiiadd{\xintDSx{-9}{\the\numexpr#2+8\relax}}{\the\numexpr\PML@#1.}[-9]%
+}%
+\def\PoorManLog#1%
+{%
+ \XINTinFloat[\XINTdigits]{\xintMul{\PoorManLogBaseTen_raw{#1}}{23025850923[-10]}}%
+}%
+\def\PoorManPowerOfTen{\romannumeral0\poormanpoweroften}%
+\def\poormanpoweroften #1%
+{%
+ \expandafter\PML@powoften@out
+ \the\numexpr\expandafter\PML@powoften\romannumeral0\xintraw{#1}%
+}%
+\def\PML@powoften@out#1[#2]{\XINTinfloat[\XINTdigits]{#1[#2]}}%
+\def\PML@powoften#1%
+{%
+ \xint_UDzerominusfork
+ #1-\PML@powoften@zero
+ 0#1\PML@powoften@neg
+ 0-\PML@powoften@pos
+ \krof #1%
+}%
+\def\PML@powoften@zero 0/1[0]{1\relax/1[0]}%
+\def\PML@powoften@pos#1[#2]%
+{%
+ \expandafter\PML@powoften@pos@a\romannumeral0\xintround{9}{#1[#2]}.%
+}%
+\def\PML@powoften@pos@a#1.#2.{\PML@Pa#2.\expandafter[\the\numexpr-8+#1]}%
+\def\PML@powoften@neg#1[#2]%
+{%
+ \expandafter\PML@powoften@neg@a\romannumeral0\xintround{9}{#1[#2]}.%
+}%
+\def\PML@powoften@neg@a#1.#2.%
+{%
+ \ifnum#2=\xint_c_ \xint_afterfi{1\relax/1[#1]}\else
+ \expandafter\expandafter\expandafter
+ \PML@Pa\expandafter\xint_gobble_i\the\numexpr2000000000-#2.%
+ \expandafter[\the\numexpr-9+#1\expandafter]\fi
+}%
+\def\PoorManExp#1{\PoorManPowerOfTen{\xintMul{#1}{43429448190325182765[-20]}}}%
+\def\poormanloghack#1%
+{%
+ \xintMessage{xintexpr}{Warning}%
+ {\string\poormanloghack\space is a no-op since 1.4e and will be removed at next major release}%
+}%
+\def\XINTinFloatSciPow{\romannumeral0\XINTinfloatscipow}%
+\def\XINTinfloatscipow#1#2%
+{%
+ \expandafter\XINT_scipow_a\romannumeral0\xintrez{#2}\XINT_scipow_int{#1}%
+}%
+\def\XINT_scipow_a #1%
+{%
+ \xint_gob_til_zero#1\XINT_scipow_Biszero0\XINT_scipow_b#1%
+}%
+\def\XINT_scipow_Biszero#1]#2#3{ 1[0]}%
+\def\XINT_scipow_b #1#2/#3[#4]#5%
+{%
+ \unless\if1\XINT_is_One#3XY\xint_dothis\XINT_scipow_c\fi
+ \ifnum#4<\xint_c_mone\xint_dothis\XINT_scipow_c\fi
+ \ifnum#4=\xint_c_mone
+ \if5\xintLDg{#1#2} %
+ \xint_afterfi{\xint_dothis\XINT_scipow_halfint}\else
+ \xint_afterfi{\xint_dothis\XINT_scipow_c}%
+ \fi
+ \fi
+ \xint_orthat#5#1#2/#3[#4]%
+}%
+\def\XINT_scipow_int #1/1[#2]#3%
+{%
+ \expandafter\XINT_flpower_checkB_a
+ \romannumeral0\XINT_dsx_addzeros{#2}#1;.\XINTdigits.{#3}{\XINTinfloatS[\XINTdigits]}%
+}%
+\def\XINT_scipow_halfint#1/1[#2]#3%
+{%
+ \expandafter\XINT_flpower_checkB_a
+ \romannumeral0\xintdsr{\xintDouble{#1}}.\XINTdigits.{#3}\XINT_flpowerh_finish
+}%
+\def\XINT_flpowerh_finish #1%
+ {\XINTinfloatS[\XINTdigits]{\XINTinFloatSqrt[\XINTdigits+\xint_c_iii]{#1}}}%
+\def\XINT_tmpa#1.{%
+\def\XINT_scipow_c ##1[##2]##3%
+{%
+ \expandafter\XINT_scipow_d\romannumeral0\XINTinfloatS[#1]{##3}\xint:##1[##2]\xint:
+}%
+}\expandafter\XINT_tmpa\the\numexpr\XINTdigits.%
+\def\XINT_scipow_d #1%
+{%
+ \xint_UDzerominusfork
+ #1-\XINT_scipow_Aiszero
+ 0#1\XINT_scipow_Aisneg
+ 0-\XINT_scipow_Aispos
+ \krof #1%
+}%
+\def\XINT_scipow_Aiszero #1\xint:#2#3\xint:
+{%
+ \if-#2\xint_dothis
+ {\XINT_signalcondition{InvalidOperation}{Zero to negative power #2#3}{}{1["7FFF8000]}}\fi
+ \xint_orthat{ 0[0]}%
+}%
+\def\XINT_scipow_Aispos #1\xint:#2\xint:
+{%
+ \XINTinfloatpowten{\xintMul{#2}{\XINTinFloatLogTen_xdgout#1}}%
+}%
+\def\XINT_scipow_Aisneg #1#2\xint:#3\xint:
+{%
+ \XINT_signalcondition{InvalidOperation}{Fractional power of negative argument}{}{0[0]}
+}%
+\ifnum\XINTdigits<9
+ \def\XINTinfloatscipow#1#2%
+ {%
+ \expandafter\XINT_scipow_a\romannumeral0\xintraw{#2}\relax{#1}%
+ }%
+ \def\XINT_scipow_b #1[#2]#3#4%
+ {%
+ \expandafter\XINT_scipow_d\romannumeral0\XINTinfloat[9]{#4}\xint:#1[#2]\xint:
+ }%
+ \def\XINT_scipow_Aispos #1\xint:#2\xint:
+ {%
+ \poormanpoweroften{\xintMul{#2}{\romannumeral0\expandafter\PML@logbaseten#1}}%
+ }%
+ \def\XINT_scipow_Aisneg #1#2\xint:#3\xint:
+ {%
+ \ifcase\xintFloatIntType{#3}%
+ \or\expandafter-\romannumeral0%
+ \else
+ \expandafter\XINT_scipow_AnegBfrac
+ \fi
+ \poormanpoweroften{\xintMul{#3}{\romannumeral0\expandafter\PML@logbaseten#2}}%
+ }%
+\fi
+\def\xintPow{\romannumeral0\xintpow}%
+\def\xintpow#1#2%
+{%
+ \expandafter\XINT_scipow_a\romannumeral0\xintrez{#2}\XINT_pow_int{#1}%
+}%
+\def\XINT_pow_int #1/1[#2]%#3
+{%
+ \expandafter\XINT_pow_int_a\romannumeral0\XINT_dsx_addzeros{#2}#1;.%
+}%
+\def\XINT_pow_int_a #1#2.#3%
+{%
+ \ifnum\if-#1\xintLength{#2}\else\xintLength{#1#2}\fi>\xint_c_iv
+ \expandafter\XINT_pow_tosci
+ \fi
+ \expandafter\XINT_pow_int_b\romannumeral0\xintraw{#3}\xint:#1#2\xint:
+}%
+\def\XINT_pow_int_b#1#2/#3[#4]\xint:#5\xint:
+{%
+ \if0\ifnum\numexpr\xint_c_x^iv/%
+ (\xintLength{#1#2}\if-#1-\xint_c_i\fi)<\XINT_Abs#5 %
+ 1\else
+ \ifnum\numexpr\xint_c_x^iv/\xintLength{#3}<\XINT_Abs#5 %
+ 1\else
+ 0\fi\fi
+ \expandafter\XINT_fpow_fork\else\expandafter\XINT_pow_tosci_i
+ \fi
+ #5\Z{#4}{#1#2}{#3}%
+}%
+\def\XINT_tmpa#1.{%
+\def\XINT_pow_tosci##1\xintraw%##2%\xint:##3\xint:
+{%
+ \expandafter\XINT_scipow_d\romannumeral0\XINTinfloatS[#1]%
+}%
+\def\XINT_pow_tosci_i##1\Z##2##3##4%
+{%
+ \expandafter\XINT_scipow_d\romannumeral0\expandafter\XINT_infloatS_clean
+ \romannumeral0\XINT_infloat_a#1.{##2}{##3}{##4}\xint:##1\xint:
+}%
+}\expandafter\XINT_tmpa\the\numexpr\XINTdigits.%
+\ifnum\XINTdigits<9
+ \def\xintpow#1#2%
+ {%
+ \expandafter\XINT_poorpow_a\romannumeral0\xintrez{#2}\relax{#1}%
+ }%
+ \def\XINT_poorpow_a #1%
+ {%
+ \xint_gob_til_zero#1\XINT_scipow_Biszero0\XINT_poorpow_b#1%
+ }%
+ \def\XINT_poorpow_b #1#2/#3[#4]#5%
+ {%
+ \unless\if1\XINT_is_One#3XY\xint_dothis\XINT_poorpow_c\fi
+ \ifnum#4<\xint_c_\xint_dothis\XINT_poorpow_c\fi
+ \xint_orthat\XINT_pow_int#1#2/#3[#4]%
+ }%
+ \def\XINT_poorpow_c #1[#2]#3%
+ {%
+ \expandafter\XINT_scipow_d\romannumeral0\XINTinfloat[9]{#3}\xint:#1[#2]\xint:
+ }%
+ \def\XINT_pow_tosci#1\xintraw%#2%\xint:#3\xint:
+ {%
+ \expandafter\XINT_scipow_d\romannumeral0\XINTinfloat[9]%
+ }%
+ \def\XINT_pow_tosci_i#1\Z#2#3#4%
+ {%
+ \expandafter\XINT_scipow_d\romannumeral0\expandafter\XINT_infloat_clean
+ \romannumeral0\XINT_infloat_a9.{#2}{#3}{#4}\xint:#1\xint:
+ }%
\fi
-\xintexprRestoreCatcodes\csname XINT_setcatcodes\endcsname
+\ifnum\XINTdigits<9
\expandafter\def\csname XINT_expr_func_log10\endcsname#1#2#3%
{%
\expandafter #1\expandafter #2\expandafter{%
\romannumeral`&&@\XINT:NEhook:f:one:from:one
{\romannumeral`&&@\PoorManLogBaseTen#3}}%
}%
-\expandafter\let\csname XINT_flexpr_func_log10\expandafter\endcsname
- \csname XINT_expr_func_log10\endcsname
\expandafter\def\csname XINT_expr_func_pow10\endcsname#1#2#3%
{%
\expandafter #1\expandafter #2\expandafter{%
\romannumeral`&&@\XINT:NEhook:f:one:from:one
{\romannumeral`&&@\PoorManPowerOfTen#3}}%
}%
+\else
+\expandafter\def\csname XINT_expr_func_log10\endcsname#1#2#3%
+{%
+ \expandafter #1\expandafter #2\expandafter{%
+ \romannumeral`&&@\XINT:NEhook:f:one:from:one
+ {\romannumeral`&&@\XINTinFloatLogTen#3}}%
+}%
+\expandafter\def\csname XINT_expr_func_pow10\endcsname#1#2#3%
+{%
+ \expandafter #1\expandafter #2\expandafter{%
+ \romannumeral`&&@\XINT:NEhook:f:one:from:one
+ {\romannumeral`&&@\XINTinFloatPowTen#3}}%
+}%
+\fi
+\expandafter\let\csname XINT_flexpr_func_log10\expandafter\endcsname
+ \csname XINT_expr_func_log10\endcsname
\expandafter\let\csname XINT_flexpr_func_pow10\expandafter\endcsname
\csname XINT_expr_func_pow10\endcsname
+\ifnum\XINTdigits<9
\def\XINT_expr_func_log #1#2#3%
{%
\expandafter #1\expandafter #2\expandafter{%
\romannumeral`&&@\XINT:NEhook:f:one:from:one
- {\romannumeral`&&@\xintLog#3}}%
+ {\romannumeral`&&@\PoorManLog#3}}%
}%
-\def\XINT_flexpr_func_log #1#2#3%
+\def\XINT_expr_func_exp #1#2#3%
{%
\expandafter #1\expandafter #2\expandafter{%
\romannumeral`&&@\XINT:NEhook:f:one:from:one
- {\romannumeral`&&@\XINTinFloatLog#3}}%
+ {\romannumeral`&&@\PoorManExp#3}}%
}%
-\def\XINT_expr_func_exp #1#2#3%
+\let\XINT_flexpr_func_log\XINT_expr_func_log
+\let\XINT_flexpr_func_exp\XINT_expr_func_exp
+\else
+\def\XINT_expr_func_log #1#2#3%
{%
\expandafter #1\expandafter #2\expandafter{%
\romannumeral`&&@\XINT:NEhook:f:one:from:one
- {\romannumeral`&&@\xintExp#3}}%
+ {\romannumeral`&&@\XINTinFloatLog#3}}%
}%
-\def\XINT_flexpr_func_exp #1#2#3%
+\def\XINT_expr_func_exp #1#2#3%
{%
\expandafter #1\expandafter #2\expandafter{%
\romannumeral`&&@\XINT:NEhook:f:one:from:one
{\romannumeral`&&@\XINTinFloatExp#3}}%
}%
+\let\XINT_flexpr_func_log\XINT_expr_func_log
+\let\XINT_flexpr_func_exp\XINT_expr_func_exp
+\fi
\def\XINT_expr_func_pow #1#2#3%
{%
\expandafter #1\expandafter #2\expandafter{%
\romannumeral`&&@\XINT:NEhook:f:one:from:two
- {\romannumeral`&&@\PoorManPower#3}}%
+ {\romannumeral`&&@\xintPow#3}}%
+}%
+\def\XINT_flexpr_func_pow #1#2#3%
+{%
+ \expandafter #1\expandafter #2\expandafter{%
+ \romannumeral`&&@\XINT:NEhook:f:one:from:two
+ {\romannumeral`&&@\XINTinFloatSciPow#3}}%
+}%
+\ifnum\XINTdigits<9 \expandafter\XINTendxintloginput\fi%
+\def\XINT_tmpa{1[0]}%
+\expandafter\let\csname XINT_c_1_0\endcsname\XINT_tmpa
+\expandafter\let\csname XINT_c_2_0\endcsname\XINT_tmpa
+\expandafter\let\csname XINT_c_3_0\endcsname\XINT_tmpa
+\expandafter\let\csname XINT_c_4_0\endcsname\XINT_tmpa
+\expandafter\let\csname XINT_c_5_0\endcsname\XINT_tmpa
+\expandafter\let\csname XINT_c_6_0\endcsname\XINT_tmpa
+\expandafter\let\csname XINT_c_1_0_x\endcsname\XINT_tmpa
+\expandafter\let\csname XINT_c_2_0_x\endcsname\XINT_tmpa
+\expandafter\let\csname XINT_c_3_0_x\endcsname\XINT_tmpa
+\expandafter\let\csname XINT_c_4_0_x\endcsname\XINT_tmpa
+\expandafter\let\csname XINT_c_5_0_x\endcsname\XINT_tmpa
+\expandafter\let\csname XINT_c_6_0_x\endcsname\XINT_tmpa
+\expandafter\let\csname XINT_c_1_0_inv\endcsname\XINT_tmpa
+\expandafter\let\csname XINT_c_2_0_inv\endcsname\XINT_tmpa
+\expandafter\let\csname XINT_c_3_0_inv\endcsname\XINT_tmpa
+\expandafter\let\csname XINT_c_4_0_inv\endcsname\XINT_tmpa
+\expandafter\let\csname XINT_c_5_0_inv\endcsname\XINT_tmpa
+\expandafter\let\csname XINT_c_6_0_inv\endcsname\XINT_tmpa
+\expandafter\let\csname XINT_c_1_0_inv_x\endcsname\XINT_tmpa
+\expandafter\let\csname XINT_c_2_0_inv_x\endcsname\XINT_tmpa
+\expandafter\let\csname XINT_c_3_0_inv_x\endcsname\XINT_tmpa
+\expandafter\let\csname XINT_c_4_0_inv_x\endcsname\XINT_tmpa
+\expandafter\let\csname XINT_c_5_0_inv_x\endcsname\XINT_tmpa
+\expandafter\let\csname XINT_c_6_0_inv_x\endcsname\XINT_tmpa
+\def\XINT_tmpa#1#2#3#4;%
+ {\expandafter\edef\csname XINT_c_#1_#2\endcsname{\XINTinFloat[\XINTdigits+5]{#3#4[-79]}}%
+ \expandafter\edef\csname XINT_c_#1_#2_x\endcsname{\XINTinFloat[\XINTdigits+10]{#3#4[-79]}}%
+ }%
+\XINT_tmpa 1 1 12589254117941672104239541063958006060936174094669310691079230195266476157825020;%
+\XINT_tmpa 1 2 15848931924611134852021013733915070132694421338250390683162968123166568636684540;%
+\XINT_tmpa 1 3 19952623149688796013524553967395355579862743154053460992299136670049309106980490;%
+\XINT_tmpa 1 4 25118864315095801110850320677993273941585181007824754286798884209082432477235613;%
+\XINT_tmpa 1 5 31622776601683793319988935444327185337195551393252168268575048527925944386392382;%
+\XINT_tmpa 1 6 39810717055349725077025230508775204348767703729738044686528414806022485386945804;%
+\XINT_tmpa 1 7 50118723362727228500155418688494576806047198983281926392969745588901125568883069;%
+\XINT_tmpa 1 8 63095734448019324943436013662234386467294525718822872452772952883349494329768681;%
+\XINT_tmpa 1 9 79432823472428150206591828283638793258896063175548433209232392931695569719148754;%
+\XINT_tmpa 2 1 10232929922807541309662751748198778273411640572379813085994255856738296458625172;%
+\XINT_tmpa 2 2 10471285480508995334645020315281400790567914715039292120056525299012577641023719;%
+\XINT_tmpa 2 3 10715193052376064174083022246945087339158659633422172707894501914136771607653870;%
+\XINT_tmpa 2 4 10964781961431850131437136061411270464271158762483023169080841607885740984711300;%
+\XINT_tmpa 2 5 11220184543019634355910389464779057367223085073605529624450744481701033026862244;%
+\XINT_tmpa 2 6 11481536214968827515462246116628360182562102373996119340874991068894793593040890;%
+\XINT_tmpa 2 7 11748975549395295417220677651268442278134317971793124791953875805007912852226246;%
+\XINT_tmpa 2 8 12022644346174129058326127151935204486942664354881189151104892745683155052368222;%
+\XINT_tmpa 2 9 12302687708123815342415404364750907389955639574572144413097319170011637639124482;%
+\XINT_tmpa 3 1 10023052380778996719154048893281105540536684535421606464116348523047431367720401;%
+\XINT_tmpa 3 2 10046157902783951424046519858132787392010166060319618489538315083825599423438638;%
+\XINT_tmpa 3 3 10069316688518041699296607872661381368099438247964820601930206419324524707606686;%
+\XINT_tmpa 3 4 10092528860766844119155277641202580844111492027373621434478800545314309618714957;%
+\XINT_tmpa 3 5 10115794542598985244409323144543146957419235215102899054703546688078254946034250;%
+\XINT_tmpa 3 6 10139113857366794119988279023017296985954042032867436525450889437280417044987125;%
+\XINT_tmpa 3 7 10162486928706956276733661150135543062420167220622552197768982666050994284378619;%
+\XINT_tmpa 3 8 10185913880541169240797988673338257820431768224957171297560936579346433061037662;%
+\XINT_tmpa 3 9 10209394837076799554149033101487543990018213667630072574873723356334069913329713;%
+\XINT_tmpa 4 1 10002302850208247526835942556719413318678216124626534526963475845228205382579041;%
+\XINT_tmpa 4 2 10004606230728403216239656646745503559081482371024284871882409614422496765669196;%
+\XINT_tmpa 4 3 10006910141682589957025973521996241909035914023642264228577379693841345823180462;%
+\XINT_tmpa 4 4 10009214583192958761081718336761022426385537997384755843291864010938378093197023;%
+\XINT_tmpa 4 5 10011519555381688769842032367472488618040778885656970999331288116685029387850446;%
+\XINT_tmpa 4 6 10013825058370987260768186632475607982636715641432550952229573271596547716373358;%
+\XINT_tmpa 4 7 10016131092283089653826887255241073941084503769368844606021481400409002185558343;%
+\XINT_tmpa 4 8 10018437657240259517971072914549205297136779497498835020699531587537662833033174;%
+\XINT_tmpa 4 9 10020744753364788577622204725249622301332888222801030351604197113557132455165040;%
+\XINT_tmpa 5 1 10000230261160268806710649793464495797824846841503180050673957122443571394978721;%
+\XINT_tmpa 5 2 10000460527622557806255008596155855743730116854295068547616656160734125748005947;%
+\XINT_tmpa 5 3 10000690799386989083565213461287219981856579552059660369243804541364501659468630;%
+\XINT_tmpa 5 4 10000921076453684726384543254593368743049141124080210677706489564626675960578367;%
+\XINT_tmpa 5 5 10001151358822766825267483384008265483772370538793312970508590203623535763866465;%
+\XINT_tmpa 5 6 10001381646494357473579790530833073090516914490540536234536867917078761046656260;%
+\XINT_tmpa 5 7 10001611939468578767498557382394677469502542123237272447312733350028467607076918;%
+\XINT_tmpa 5 8 10001842237745552806012277366194752842273812293689190856411757410911882303011468;%
+\XINT_tmpa 5 9 10002072541325401690920909385549403068574626162727745910217443397959031898734024;%
+\XINT_tmpa 6 1 10000023025877439451356029805459000097926504781151663770980171880313737943886754;%
+\XINT_tmpa 6 2 10000046051807898005897723104514851394069452605882077809669546315010724085277647;%
+\XINT_tmpa 6 3 10000069077791375785706217087438809625967243923218032821061587553353589726808164;%
+\XINT_tmpa 6 4 10000092103827872912862930047032391734439796534302560512742030066798473305401477;%
+\XINT_tmpa 6 5 10000115129917389509449561379274639104559958866285946533811801963402821672829477;%
+\XINT_tmpa 6 6 10000138156059925697548091583969382297005329013199894805417325991907389143667949;%
+\XINT_tmpa 6 7 10000161182255481599240782265392507269793911275470978276390154932321984777772469;%
+\XINT_tmpa 6 8 10000184208504057336610176132939223090407041937631374389422968832433217547184883;%
+\XINT_tmpa 6 9 10000207234805653031739097001771331138303016031686764989867510425362339583809842;%
+\def\XINT_tmpa#1#2#3#4;%
+ {\expandafter\edef\csname XINT_c_#1_#2_inv\endcsname{\XINTinFloat[\XINTdigits+5]{#3#4[-80]}}%
+ \expandafter\edef\csname XINT_c_#1_#2_inv_x\endcsname{\XINTinFloat[\XINTdigits+10]{#3#4[-80]}}%
+ }%
+\XINT_tmpa 1 1 79432823472428150206591828283638793258896063175548433209232392931695569719148754;%
+\XINT_tmpa 1 2 63095734448019324943436013662234386467294525718822872452772952883349494329768681;%
+\XINT_tmpa 1 3 50118723362727228500155418688494576806047198983281926392969745588901125568883069;%
+\XINT_tmpa 1 4 39810717055349725077025230508775204348767703729738044686528414806022485386945804;%
+\XINT_tmpa 1 5 31622776601683793319988935444327185337195551393252168268575048527925944386392382;%
+\XINT_tmpa 1 6 25118864315095801110850320677993273941585181007824754286798884209082432477235613;%
+\XINT_tmpa 1 7 19952623149688796013524553967395355579862743154053460992299136670049309106980490;%
+\XINT_tmpa 1 8 15848931924611134852021013733915070132694421338250390683162968123166568636684540;%
+\XINT_tmpa 1 9 12589254117941672104239541063958006060936174094669310691079230195266476157825020;%
+\XINT_tmpa 2 1 97723722095581068269707600696156123863427170069897801526639004097175507042084888;%
+\XINT_tmpa 2 2 95499258602143594972395937950148401513087269708053320302465127242741421479104601;%
+\XINT_tmpa 2 3 93325430079699104353209661168364840720225485199736026149257155811788093771138272;%
+\XINT_tmpa 2 4 91201083935590974212095940791872333509323858755696109214760361851771695487999100;%
+\XINT_tmpa 2 5 89125093813374552995310868107829696398587478293004836994794349506746891059190135;%
+\XINT_tmpa 2 6 87096358995608063751082742520877054774747128501284704090761796673224328569285177;%
+\XINT_tmpa 2 7 85113803820237646781712631859248682794521725442067093899553745086385146367436049;%
+\XINT_tmpa 2 8 83176377110267100616669140273840405263880767161887438462740286611379995442629360;%
+\XINT_tmpa 2 9 81283051616409924654127879773132980187568851100062454636602325121954484722491710;%
+\XINT_tmpa 3 1 99770006382255331719442194285376231055211861394573154624878230890945476532432225;%
+\XINT_tmpa 3 2 99540541735152696244806147089510943107144177264574823668081299845609359857038344;%
+\XINT_tmpa 3 3 99311604842093377157642607688515474663519162181123336122073822476734517364853150;%
+\XINT_tmpa 3 4 99083194489276757440828314388392035249938006860819409201135652190410238171119287;%
+\XINT_tmpa 3 5 98855309465693884028524792978202683686410726723055209558576898759166522286083202;%
+\XINT_tmpa 3 6 98627948563121047157261523093421290951784086730437722805070296627452491731402556;%
+\XINT_tmpa 3 7 98401110576113374484101831088824192144756194053451911515003663381199842081528019;%
+\XINT_tmpa 3 8 98174794301998439937928161622872240632362817134775142288598128693131032909278350;%
+\XINT_tmpa 3 9 97948998540869887269961493687844910565420716785032030061251916654655049965062649;%
+\XINT_tmpa 4 1 99976976799815658635141604638981297541396466984477711459083930684685186989697929;%
+\XINT_tmpa 4 2 99953958900308784552845777251512089759003230012954649234748668826546533498169555;%
+\XINT_tmpa 4 3 99930946300258992168693777702512591351888960684418033717545524043693899420866954;%
+\XINT_tmpa 4 4 99907938998446176870082987427724649318531547584410414997787083472394558389284098;%
+\XINT_tmpa 4 5 99884936993650514951538205746462968844845952521633937925370747725933629958238429;%
+\XINT_tmpa 4 6 99861940284652463550037839584112909891259691850983307437097305856727153967481065;%
+\XINT_tmpa 4 7 99838948870232760580354983175435314251655958968480344701699631967048474751069525;%
+\XINT_tmpa 4 8 99815962749172424670413384320528274471550942114263604264788586703624513163664479;%
+\XINT_tmpa 4 9 99792981920252755096658293766085025870392854106037465990011216356523334125368417;%
+\XINT_tmpa 5 1 99997697441416293040019992468837639003787989306240470048763511538639048400765328;%
+\XINT_tmpa 5 2 99995394935850346394065999228750187791584034668237852053859761641089829514536011;%
+\XINT_tmpa 5 3 99993092483300939297147020491645017932348508508297743745039515152378182676736684;%
+\XINT_tmpa 5 4 99990790083766851012380885556584619169980753943113396677545915245611923361705686;%
+\XINT_tmpa 5 5 99988487737246860830993605587529673614422529030613405900998412734419982883669223;%
+\XINT_tmpa 5 6 99986185443739748072318726405984801565268578044798475766025647187221659622450651;%
+\XINT_tmpa 5 7 99983883203244292083796681298546635825139453823571398432959235283529730820181019;%
+\XINT_tmpa 5 8 99981581015759272240974143839353881367972777961073357987943600347058023396510672;%
+\XINT_tmpa 5 9 99979278881283467947503380727439017235290006415950636109257677645557027950744160;%
+\XINT_tmpa 6 1 99999769741755795297487775997495948154386159348543852707438213487494386559762090;%
+\XINT_tmpa 6 2 99999539484041779185217876175552674518572114763104546143049036309870762496098218;%
+\XINT_tmpa 6 3 99999309226857950442387361668529812394860404492721699528707852590634886516924591;%
+\XINT_tmpa 6 4 99999078970204307848196104610199226516866442484686906173860803560254163287393673;%
+\XINT_tmpa 6 5 99998848714080850181846788127272455158309917012010320554498356105168896062430977;%
+\XINT_tmpa 6 6 99998618458487576222544906332928167145404344730731751204389698696345970645201375;%
+\XINT_tmpa 6 7 99998388203424484749498764320339633772810463403640242228131015918494067456365331;%
+\XINT_tmpa 6 8 99998157948891574541919478156202215623119146605983303201215215949834619332550929;%
+\XINT_tmpa 6 9 99997927694888844379020974874260864289829523807763942234420930258187873904191138;%
+\edef\XINT_c_logten
+ {\XINTinFloat[\XINTdigits+4]
+ {23025850929940456840179914546843642076011014886287729760333279009675726096773525[-79]}}%
+\edef\XINT_c_oneoverlogten
+ {\XINTinFloat[\XINTdigits+4]
+ {43429448190325182765112891891660508229439700580366656611445378316586464920887077[-80]}}%
+\edef\XINT_c_oneoverlogten_xx
+ {\XINTinFloat[\XINTdigits+14]
+ {43429448190325182765112891891660508229439700580366656611445378316586464920887077[-80]}}%
+\def\XINTinFloatExp{\romannumeral0\XINTinfloatexp}%
+\def\XINT_tmpa#1.{%
+\def\XINTinfloatexp##1%
+{%
+ \XINTinfloatpowten
+ {\xintMul{\XINT_c_oneoverlogten_xx}{\XINTinFloatS[#1]{##1}}}%
+}%
+}\expandafter\XINT_tmpa\the\numexpr\XINTdigits+14.%
+\def\XINTinFloatPowTen{\romannumeral0\XINTinfloatpowten}%
+\def\XINT_tmpa#1.{%
+\def\XINTinfloatpowten##1%
+{%
+ \expandafter\XINT_powten_fork
+ \romannumeral0\xintiround{#1}{##1}[-#1]%
+}%
+}\expandafter\XINT_tmpa\the\numexpr\XINTdigits+4.%
+\def\XINT_powten_fork#1%
+{%
+ \xint_UDzerominusfork
+ #1-\XINT_powten_zero
+ 0#1\XINT_powten_neg
+ 0-\XINT_powten_pos
+ \krof #1%
+}%
+\def\XINT_powten_zero #1[#2]{ 1[0]}%
+\def\XINT_powten_pos#1[#2]%
+{%
+ \expandafter\XINT_powten_pos_a\romannumeral0\xintround{6}{#1[#2]}#1[#2]%
+}%
+\def\XINT_tmpa #1.#2.{%
+\def\XINT_powten_pos_a ##1.##2##3##4##5##6##7##8[##9]%
+{%
+ \expandafter\XINT_infloate
+ \romannumeral0\XINTinfloat[\XINTdigits]{%
+ \xintMul{\csname XINT_c_1_##2\endcsname}{%
+ \XINTinFloat[#1]{%
+ \xintMul{\csname XINT_c_2_##3\endcsname}{%
+ \XINTinFloat[#1]{%
+ \xintMul{\csname XINT_c_3_##4\endcsname}{%
+ \XINTinFloat[#1]{%
+ \xintMul{\csname XINT_c_4_##5\endcsname}{%
+ \XINTinFloat[#1]{%
+ \xintMul{\csname XINT_c_5_##6\endcsname}{%
+ \XINTinFloat[#1]{%
+ \xintMul{\csname XINT_c_6_##7\endcsname}{%
+ \xintAdd{1[0]}{%
+ \expandafter\XINT_Exp_series_a_ii
+ \romannumeral0\XINTinfloat[#2]{%
+ \xintMul{\XINT_c_logten}%
+ {\xintAdd{-##1.##2##3##4##5##6##7}{##8[##9]}}%
+ }%
+ \xint:
+ }%
+ }}}}}}}}}}}}{##1}%
+}}\expandafter\XINT_tmpa
+ \the\numexpr\XINTdigits+5\expandafter.%
+ \the\numexpr\XINTdigits-1.%
+\def\XINT_powten_neg#1[#2]%
+{%
+ \expandafter\XINT_powten_neg_a\romannumeral0\xintround{6}{#1[#2]}#1[#2]%
+}%
+\def\XINT_tmpa #1.#2.{%
+\def\XINT_powten_neg_a -##1.##2##3##4##5##6##7##8[##9]%
+{%
+ \expandafter\XINT_infloate
+ \romannumeral0\XINTinfloat[\XINTdigits]{%
+ \xintMul{\csname XINT_c_1_##2_inv\endcsname}{%
+ \XINTinFloat[#1]{%
+ \xintMul{\csname XINT_c_2_##3_inv\endcsname}{%
+ \XINTinFloat[#1]{%
+ \xintMul{\csname XINT_c_3_##4_inv\endcsname}{%
+ \XINTinFloat[#1]{%
+ \xintMul{\csname XINT_c_4_##5_inv\endcsname}{%
+ \XINTinFloat[#1]{%
+ \xintMul{\csname XINT_c_5_##6_inv\endcsname}{%
+ \XINTinFloat[#1]{%
+ \xintMul{\csname XINT_c_6_##7_inv\endcsname}{%
+ \xintAdd{1[0]}{%
+ \expandafter\XINT_Exp_series_a_ii
+ \romannumeral0\XINTinfloat[#2]{%
+ \xintMul{\XINT_c_logten}%
+ {\xintAdd{##1.##2##3##4##5##6##7}{##8[##9]}}%
+ }%
+ \xint:
+ }%
+ }}}}}}}}}}}}{-##1}%
+}}\expandafter\XINT_tmpa
+ \the\numexpr\XINTdigits+5\expandafter.%
+ \the\numexpr\XINTdigits-1.%
+\def\XINT_tmpa#1.#2.{%
+\def\XINT_Exp_series_a_ii##1\xint:
+{%
+ \expandafter\XINT_Exp_series_b
+ \romannumeral0\XINTinfloatS[#1]{##1}\xint:##1\xint:
+}%
+\def\XINT_Exp_series_b##1[##2]\xint:
+{%
+ \expandafter\XINT_Exp_series_c_
+ \romannumeral0\xintadd{1}{\xintHalf{##10}[##2-1]}\xint:
+}%
+\def\XINT_Exp_series_c_##1\xint:##2\xint:
+{%
+ \XINTinFloat[#2]{\xintMul{##1}{##2}}%
}%
-\let\XINT_flexpr_func_pow\XINT_expr_func_pow
-\catcode`\* 11
-\def\poormanloghack**
+}%
+\expandafter\XINT_tmpa
+ \the\numexpr\XINTdigits-6\expandafter.%
+ \the\numexpr\XINTdigits-1.%
+\ifnum\XINTdigits>15
+\def\XINT_tmpa#1.#2.#3.#4.{%
+\def\XINT_Exp_series_a_ii##1\xint:
+{%
+ \expandafter\XINT_Exp_series_a_iii
+ \romannumeral0\XINTinfloatS[#2]{##1}\xint:##1\xint:
+}%
+\def\XINT_Exp_series_a_iii##1\xint:
+{%
+ \expandafter\XINT_Exp_series_b
+ \romannumeral0\XINTinfloatS[#1]{##1}\xint:##1\xint:
+}%
+\def\XINT_Exp_series_b##1[##2]\xint:
+{%
+ \expandafter\XINT_Exp_series_c_i
+ \romannumeral0\xintadd{#3}{##1/6[##2]}\xint:
+}%
+\def\XINT_Exp_series_c_i##1\xint:##2\xint:
{%
- \def\XINT_tmpa ##1##2##3##4##5##6%
+ \expandafter\XINT_Exp_series_c_
+ \romannumeral0\xintadd{#4}{\XINTinFloat[#2]{\xintMul{##1}{##2}}}\xint:
+}%
+}\expandafter\XINT_tmpa
+ \the\numexpr\XINTdigits-13\expandafter.%
+ \the\numexpr\XINTdigits-6.%
+ {5[-1]}.%
+ {1[0]}.%
+\fi
+\ifnum\XINTdigits>21
+\def\XINT_tmpa#1.#2.#3.#4.{%
+\def\XINT_Exp_series_a_iii##1\xint:
+{%
+ \expandafter\XINT_Exp_series_a_iv
+ \romannumeral0\XINTinfloatS[#2]{##1}\xint:##1\xint:
+}%
+\def\XINT_Exp_series_a_iv##1\xint:
+{%
+ \expandafter\XINT_Exp_series_b
+ \romannumeral0\XINTinfloatS[#1]{##1}\xint:##1\xint:
+}%
+\def\XINT_Exp_series_b##1[##2]\xint:
+{%
+ \expandafter\XINT_Exp_series_c_ii
+ \romannumeral0\xintadd{#3}{##1/24[##2]}\xint:
+}%
+\def\XINT_Exp_series_c_ii##1\xint:##2\xint:
+{%
+ \expandafter\XINT_Exp_series_c_i
+ \romannumeral0\xintadd{#4}{\XINTinFloat[#2]{\xintMul{##1}{##2}}}\xint:
+}%
+}\expandafter\XINT_tmpa
+ \the\numexpr\XINTdigits-19\expandafter.%
+ \the\numexpr\XINTdigits-13\expandafter.%
+ \romannumeral0\XINTinfloat[\XINTdigits-13]{1/6[0]}.%
+ {5[-1]}.%
+\fi
+\ifnum\XINTdigits>28
+\def\XINT_tmpa #1 #2 #3 #4 #5 #6 #7 %
+{%
+ \def\XINT_tmpb ##1##2##3##4%
{%
- \def ##3####1% \XINT_expr_op_<op>
+ \def\XINT_tmpc####1.####2.####3.####4.%
{%
- \expanded{\unexpanded{##4{####1}}\expandafter}%
- \romannumeral`&&@\expandafter##2\romannumeral`&&@\XINT_expr_getnext
+ \def##2########1\xint:
+ {%
+ \expandafter##1%
+ \romannumeral0\XINTinfloatS[####2]{########1}\xint:########1\xint:
+ }%
+ \def##1########1\xint:
+ {%
+ \expandafter\XINT_Exp_series_b
+ \romannumeral0\XINTinfloatS[####1]{########1}\xint:########1\xint:
+ }%
+ \def\XINT_Exp_series_b########1[########2]\xint:
+ {%
+ \expandafter##3%
+ \romannumeral0\xintadd{####3}{########1/#5[########2]}\xint:
+ }%
+ \def##3########1\xint:########2\xint:
+ {%
+ \expandafter##4%
+ \romannumeral0\xintadd{####4}{\XINTinFloat[####2]{\xintMul{########1}{########2}}}\xint:
+ }%
}%
- \def##2####1% \XINT_expr_check-_<op>
- {%
+ }%
+ \expandafter\XINT_tmpb
+ \csname XINT_Exp_series_a_\romannumeral\numexpr#1\expandafter\endcsname
+ \csname XINT_Exp_series_a_\romannumeral\numexpr#1-1\expandafter\endcsname
+ \csname XINT_Exp_series_c_\romannumeral\numexpr#1-2\expandafter\endcsname
+ \csname XINT_Exp_series_c_\romannumeral\numexpr#1-3\endcsname
+ \expandafter\XINT_tmpc
+ \the\numexpr\XINTdigits-#2\expandafter.%
+ \the\numexpr\XINTdigits-#3\expandafter.\expanded{%
+ \XINTinFloat[\XINTdigits-#3]{1/#6[0]}.%
+ \XINTinFloat[\XINTdigits-#4]{1/#7[0]}.%
+ }%
+}%
+\XINT_tmpa 5 26 19 13 120 24 6 %<-- keep space
+\ifnum\XINTdigits>35 \XINT_tmpa 6 33 26 19 720 120 24 \fi
+\ifnum\XINTdigits>42 \XINT_tmpa 7 40 33 26 5040 720 120 \fi
+\ifnum\XINTdigits>48 \XINT_tmpa 8 46 40 33 40320 5040 720 \fi
+\ifnum\XINTdigits>55 \XINT_tmpa 9 53 46 40 362880 40320 5040 \fi
+\fi
+\def\XINT_tmpa#1.{%
+\def\XINTinFloatLog{\romannumeral0\XINTinfloatlog}%
+\def\XINTinfloatlog
+{%
+ \expandafter\XINT_log_out
+ \romannumeral0\expandafter\XINT_logten_a
+ \romannumeral0\XINTinfloat[#1]%{##1}
+}%
+\def\XINT_log_out ##1\xint:##2\xint:
+{%
+ \XINTinfloat[#1]%
+ {\xintAdd{\xintMul{\XINT_c_logten}{##1}}{##2}}%
+}%
+\def\XINTinFloatLogTen{\romannumeral0\XINTinfloatlogten}%
+\def\XINTinfloatlogten
+{%
+ \expandafter\XINT_logten_out
+ \romannumeral0\expandafter\XINT_logten_a
+ \romannumeral0\XINTinfloat[#1]%{##1}
+}%
+\def\XINT_logten_out ##1\xint:##2\xint:
+{%
+ \XINTinfloat[#1]%
+ {\xintAdd{##1}{\xintMul{\XINT_c_oneoverlogten}{##2}}}%
+}%
+}\expandafter\XINT_tmpa\the\numexpr\XINTdigits.%
+\def\XINTinFloatLogTen_xdgout%#1[#2]
+{%
+ \romannumeral0\expandafter\XINT_logten_xdgout\romannumeral0\XINT_logten_a
+}%
+\def\XINT_logten_xdgout #1\xint:#2\xint:
+{%
+ \xintadd{#1}{\xintMul{\XINT_c_oneoverlogten_xx}{#2}}%
+}%
+\def\XINT_logten_a#1[#2]%
+{%
+ \expandafter\XINT_logten_b
+ \romannumeral0\XINTinfloat[9]{#1[#2]}#1[#2]%
+}%
+\def\XINT_logten_b#1[#2]%
+{%
+ \expandafter\XINT_logten_c
+ \romannumeral0\xintround{6}%
+ {\xintiiAdd{\xintDSx{-9}{\the\numexpr#2+8\relax}}%
+ {\the\numexpr\PML@#1.\relax}%
+ [-9]}%
+ \xint:
+}%
+\def\XINT_logten_c #1#2%
+{%
+ \xint_gob_til_xint:#2\XINT_logten_IV\xint:
+ \XINT_logten_d #1#2%
+}%
+\def\XINT_logten_IV\xint:\XINT_logten_d0{\XINT_logten_f_III}%
+\def\XINT_logten_d #1.#2\xint:
+{%
+ \ifcase
+ \ifnum#1=\xint_c_
+ \ifnum #2>100000 \xint_c_i\else
+ \ifnum #2>\xint_c_ \xint_c_ii\else \xint_c_iii\fi\fi
+ \else
+ \ifnum#2>\xint_c_ \xint_c_i\else \xint_c_\fi
+ \fi
+ \expandafter\XINT_logten_f_Isp
+ \or\expandafter\XINT_logten_f_I
+ \or\expandafter\XINT_logten_f_II
+ \else\expandafter\XINT_logten_f_III
+ \fi
+ #1.#2\xint:
+}%
+\def\XINT_logten_f_I#1%
+{%
\xint_UDsignfork
- ####1{\expandafter##2\romannumeral`&&@##1}%
- -{##5####1}%
- \krof
+ #1\XINT_logten_f_I_neg
+ -\XINT_logten_f_I_pos
+ \krof #1%
+}%
+\def\XINT_logten_f_II#1%
+{%
+ \xint_UDsignfork
+ #1\XINT_logten_f_II_neg
+ -\XINT_logten_f_II_pos
+ \krof #1%
+}%
+\def\XINT_tmpa#1.{%
+\def\XINT_logten_f_Isp##1.000000\xint:##2[##3]%
+{%
+ {##1[0]}\xint:
+ {\expandafter\XINT_LogTen_serI_a_i
+ \romannumeral0\XINTinfloatS[#1]{\xintAdd{##2[##3-##1]}{-1[0]}}%
+ \xint:
+ }\xint:
+}%
+}\expandafter\XINT_tmpa\the\numexpr\XINTdigits-2.%
+\def\XINT_tmpa#1.{%
+\def\XINT_logten_f_III##1\xint:##2[##3]%
+{%
+ {0[0]}\xint:
+ {\expandafter\XINT_LogTen_serIII_a_ii
+ \romannumeral0\XINTinfloatS[#1]{\xintAdd{##2[##3]}{-1[0]}}%
+ \xint:
+ }\xint:
+}}\expandafter\XINT_tmpa\the\numexpr\XINTdigits+4.%
+\def\XINT_tmpa#1.#2.{%
+\def\XINT_logten_f_I_pos##1.##2##3##4##5##6##7\xint:##8[##9]%
+{%
+ {\the\numexpr##1##2##3##4##5##6##7[-6]}\xint:
+ {\expandafter\XINT_LogTen_serI_a_i
+ \romannumeral0\XINTinfloat[#2]%
+ {\xintAdd{-1[0]}%
+ {\xintMul{\csname XINT_c_1_##2_inv\endcsname}{%
+ \XINTinFloat[#1]{%
+ \xintMul{\csname XINT_c_2_##3_inv\endcsname}{%
+ \XINTinFloat[#1]{%
+ \xintMul{\csname XINT_c_3_##4_inv\endcsname}{%
+ \XINTinFloat[#1]{%
+ \xintMul{\csname XINT_c_4_##5_inv\endcsname}{%
+ \XINTinFloat[#1]{%
+ \xintMul{\csname XINT_c_5_##6_inv\endcsname}{%
+ \XINTinFloat[#1]{%
+ \xintMul{\csname XINT_c_6_##7_inv\endcsname}
+ {##8[##9-##1]}%
+ }}}}}}}}}}%
+ }%
+ }\xint:
+ }\xint:
+}%
+\def\XINT_logten_f_I_neg##1.##2##3##4##5##6##7\xint:##8[##9]%
+{%
+ {\the\numexpr##1##2##3##4##5##6##7[-6]}\xint:
+ {\expandafter\XINT_LogTen_serI_a_i
+ \romannumeral0\XINTinfloat[#2]%
+ {\xintAdd{-1[0]}%
+ {\xintMul{\csname XINT_c_1_##2\endcsname}{%
+ \XINTinFloat[#1]{%
+ \xintMul{\csname XINT_c_2_##3\endcsname}{%
+ \XINTinFloat[#1]{%
+ \xintMul{\csname XINT_c_3_##4\endcsname}{%
+ \XINTinFloat[#1]{%
+ \xintMul{\csname XINT_c_4_##5\endcsname}{%
+ \XINTinFloat[#1]{%
+ \xintMul{\csname XINT_c_5_##6\endcsname}{%
+ \XINTinFloat[#1]{%
+ \xintMul{\csname XINT_c_6_##7\endcsname}
+ {##8[##9-##1]}%
+ }}}}}}}}}}%
+ }%
+ }\xint:
+ }\xint:
+}%
+}\expandafter\XINT_tmpa
+ \the\numexpr\XINTdigits+5\expandafter.\the\numexpr\XINTdigits-1.%
+\def\XINT_tmpa#1.#2.{%
+\def\XINT_logten_f_II_pos0.##1##2##3##4##5##6\xint:##7[##8]%
+{%
+ {\the\numexpr##1##2##3##4##5##6[-6]}\xint:
+ {\expandafter\XINT_LogTen_serII_a_ii
+ \romannumeral0\XINTinfloat[#2]%
+ {\xintAdd{-1[0]}%
+ {\xintMul{\csname XINT_c_1_##1_inv_x\endcsname}{%
+ \XINTinFloat[#1]{%
+ \xintMul{\csname XINT_c_2_##2_inv_x\endcsname}{%
+ \XINTinFloat[#1]{%
+ \xintMul{\csname XINT_c_3_##3_inv_x\endcsname}{%
+ \XINTinFloat[#1]{%
+ \xintMul{\csname XINT_c_4_##4_inv_x\endcsname}{%
+ \XINTinFloat[#1]{%
+ \xintMul{\csname XINT_c_5_##5_inv_x\endcsname}{%
+ \XINTinFloat[#1]{%
+ \xintMul{\csname XINT_c_6_##6_inv_x\endcsname}
+ {##7[##8]}%
+ }}}}}}}}}}%
+ }%
+ }\xint:
+ }\xint:
+}%
+\def\XINT_logten_f_II_neg-0.##1##2##3##4##5##6\xint:##7[##8]%
+{%
+ {\the\numexpr-##1##2##3##4##5##6[-6]}\xint:
+ {\expandafter\XINT_LogTen_serII_a_ii
+ \romannumeral0\XINTinfloat[#2]%
+ {\xintAdd{-1[0]}%
+ {\xintMul{\csname XINT_c_1_##1_x\endcsname}{%
+ \XINTinFloat[#1]{%
+ \xintMul{\csname XINT_c_2_##2_x\endcsname}{%
+ \XINTinFloat[#1]{%
+ \xintMul{\csname XINT_c_3_##3_x\endcsname}{%
+ \XINTinFloat[#1]{%
+ \xintMul{\csname XINT_c_4_##4_x\endcsname}{%
+ \XINTinFloat[#1]{%
+ \xintMul{\csname XINT_c_5_##5_x\endcsname}{%
+ \XINTinFloat[#1]{%
+ \xintMul{\csname XINT_c_6_##6_x\endcsname}
+ {##7[##8]}%
+ }}}}}}}}}}%
+ }%
+ }\xint:
+ }\xint:
+}%
+}\expandafter\XINT_tmpa
+ \the\numexpr\XINTdigits+10\expandafter.\the\numexpr\XINTdigits+4.%
+\def\XINT_LogTen_serI_a_i#1\xint:{#1}%
+\ifnum\XINTdigits>9
+\def\XINT_tmpa#1.#2.{%
+\def\XINT_LogTen_serI_a_i##1\xint:
+{%
+ \expandafter\XINT_LogTen_serI_a_ii
+ \romannumeral0\XINTinfloatS[#2]{##1}\xint:
+}%
+\def\XINT_LogTen_serI_a_ii##1\xint:
+{%
+ \expandafter\XINT_LogTen_serI_b
+ \romannumeral0\XINTinfloatS[#1]{##1}\xint:##1\xint:
+}%
+\def\XINT_LogTen_serI_b##1[##2]\xint:
+{%
+ \expandafter\XINT_LogTen_serI_c_
+ \romannumeral0\xintadd{1}{\xintiiOpp\xintHalf{##10}[##2-1]}\xint:
+}%
+\def\XINT_LogTen_serI_c_##1\xint:##2\xint:
+{%
+ \XINTinFloat[#2]{\xintMul{##1}{##2}}%
+}%
+}%
+\expandafter\XINT_tmpa
+ \the\numexpr\XINTdigits-7\expandafter.%
+ \the\numexpr\XINTdigits-1.%
+\fi
+\ifnum\XINTdigits>15
+\def\XINT_tmpa#1.#2.#3.#4.{%
+\def\XINT_LogTen_serI_a_ii##1\xint:
+{%
+ \expandafter\XINT_LogTen_serI_a_iii
+ \romannumeral0\XINTinfloatS[#2]{##1}\xint:##1\xint:
+}%
+\def\XINT_LogTen_serI_a_iii##1\xint:
+{%
+ \expandafter\XINT_LogTen_serI_b
+ \romannumeral0\XINTinfloatS[#1]{##1}\xint:##1\xint:
+}%
+\def\XINT_LogTen_serI_b##1[##2]\xint:
+{%
+ \expandafter\XINT_LogTen_serI_c_i
+ \romannumeral0\xintadd{#3}{##1/3[##2]}\xint:
+}%
+\def\XINT_LogTen_serI_c_i##1\xint:##2\xint:
+{%
+ \expandafter\XINT_LogTen_serI_c_
+ \romannumeral0\xintadd{#4}{\XINTinFloat[#2]{\xintMul{##1}{##2}}}\xint:
+}%
+}\expandafter\XINT_tmpa
+ \the\numexpr\XINTdigits-13\expandafter.%
+ \the\numexpr\XINTdigits-7.%
+ {-5[-1]}.%
+ {1[0]}.%
+\fi
+\ifnum\XINTdigits>21
+\def\XINT_tmpa#1.#2.#3.#4.{%
+\def\XINT_LogTen_serI_a_iii##1\xint:
+{%
+ \expandafter\XINT_LogTen_serI_a_iv
+ \romannumeral0\XINTinfloatS[#2]{##1}\xint:##1\xint:
+}%
+\def\XINT_LogTen_serI_a_iv##1\xint:
+{%
+ \expandafter\XINT_LogTen_serI_b
+ \romannumeral0\XINTinfloatS[#1]{##1}\xint:##1\xint:
+}%
+\def\XINT_LogTen_serI_b##1[##2]\xint:
+{%
+ \expandafter\XINT_LogTen_serI_c_ii
+ \romannumeral0\xintadd{#3}{\xintiiMul{-25}{##1}[##2-2]}\xint:
+}%
+\def\XINT_LogTen_serI_c_ii##1\xint:##2\xint:
+{%
+ \expandafter\XINT_LogTen_serI_c_i
+ \romannumeral0\xintadd{#4}{\XINTinFloat[#2]{\xintMul{##1}{##2}}}\xint:
+}%
+}\expandafter\XINT_tmpa
+ \the\numexpr\XINTdigits-19\expandafter.%
+ \the\numexpr\XINTdigits-13\expandafter.%
+ \romannumeral0\XINTinfloat[\XINTdigits-13]{1/3[0]}.%
+ {-5[-1]}.%
+\fi
+\ifnum\XINTdigits>27
+\def\XINT_tmpa#1.#2.#3.#4.{%
+\def\XINT_LogTen_serI_a_iv##1\xint:
+{%
+ \expandafter\XINT_LogTen_serI_a_v
+ \romannumeral0\XINTinfloatS[#2]{##1}\xint:##1\xint:
+}%
+\def\XINT_LogTen_serI_a_v##1\xint:
+{%
+ \expandafter\XINT_LogTen_serI_b
+ \romannumeral0\XINTinfloatS[#1]{##1}\xint:##1\xint:
+}%
+\def\XINT_LogTen_serI_b##1[##2]\xint:
+{%
+ \expandafter\XINT_LogTen_serI_c_iii
+ \romannumeral0\xintadd{#3}{\xintDouble{##1}[##2-1]}\xint:
+}%
+\def\XINT_LogTen_serI_c_iii##1\xint:##2\xint:
+{%
+ \expandafter\XINT_LogTen_serI_c_ii
+ \romannumeral0\xintadd{#4}{\XINTinFloat[#2]{\xintMul{##1}{##2}}}\xint:
+}%
+}\expandafter\XINT_tmpa
+ \the\numexpr\XINTdigits-25\expandafter.%
+ \the\numexpr\XINTdigits-19\expandafter.\expanded{%
+ {-25[-2]}.%
+ \XINTinFloat[\XINTdigits-13]{1/3[0]}.%
}%
- \def##5####1####2% \XINT_expr_checkp_<op>
- {%
- \ifnum ####1>\XINT_expr_precedence_**
- \expandafter##5%
- \romannumeral`&&@\csname XINT_##6_op_####2\expandafter\endcsname
- \else
- \expandafter ####1\expandafter ####2%
- \fi
+\fi
+\ifnum\XINTdigits>33
+\def\XINT_tmpa#1.#2.#3.#4.{%
+\def\XINT_LogTen_serI_a_v##1\xint:
+{%
+ \expandafter\XINT_LogTen_serI_a_vi
+ \romannumeral0\XINTinfloatS[#2]{##1}\xint:##1\xint:
+}%
+\def\XINT_LogTen_serI_a_vi##1\xint:
+{%
+ \expandafter\XINT_LogTen_serI_b
+ \romannumeral0\XINTinfloatS[#1]{##1}\xint:##1\xint:
+}%
+\def\XINT_LogTen_serI_b##1[##2]\xint:
+{%
+ \expandafter\XINT_LogTen_serI_c_iv
+ \romannumeral0\xintadd{#3}{\xintiiOpp##1/6[##2]}\xint:
+}%
+\def\XINT_LogTen_serI_c_iv##1\xint:##2\xint:
+{%
+ \expandafter\XINT_LogTen_serI_c_iii
+ \romannumeral0\xintadd{#4}{\XINTinFloat[#2]{\xintMul{##1}{##2}}}\xint:
+}%
+}\expandafter\XINT_tmpa
+ \the\numexpr\XINTdigits-31\expandafter.%
+ \the\numexpr\XINTdigits-25.%
+ {2[-1]}.%
+ {-25[-2]}.%
+\fi
+\ifnum\XINTdigits>39
+\def\XINT_tmpa#1.#2.#3.#4.{%
+\def\XINT_LogTen_serI_a_vi##1\xint:
+{%
+ \expandafter\XINT_LogTen_serI_a_vii
+ \romannumeral0\XINTinfloatS[#2]{##1}\xint:##1\xint:
+}%
+\def\XINT_LogTen_serI_a_vii##1\xint:
+{%
+ \expandafter\XINT_LogTen_serI_b
+ \romannumeral0\XINTinfloatS[#1]{##1}\xint:##1\xint:
+}%
+\def\XINT_LogTen_serI_b##1[##2]\xint:
+{%
+ \expandafter\XINT_LogTen_serI_c_v
+ \romannumeral0\xintadd{#3}{##1/7[##2]}\xint:
+}%
+\def\XINT_LogTen_serI_c_v##1\xint:##2\xint:
+{%
+ \expandafter\XINT_LogTen_serI_c_iv
+ \romannumeral0\xintadd{#4}{\XINTinFloat[#2]{\xintMul{##1}{##2}}}\xint:
+}%
+}\expandafter\XINT_tmpa
+ \the\numexpr\XINTdigits-37\expandafter.%
+ \the\numexpr\XINTdigits-31\expandafter.%
+ \romannumeral0\XINTinfloatS[\XINTdigits-31]{-1/6[0]}.%
+ {2[-1]}.%
+\fi
+\ifnum\XINTdigits>45
+\def\XINT_tmpa#1.#2.#3.#4.{%
+\def\XINT_LogTen_serI_a_vii##1\xint:
+{%
+ \expandafter\XINT_LogTen_serI_a_viii
+ \romannumeral0\XINTinfloatS[#2]{##1}\xint:##1\xint:
+}%
+\def\XINT_LogTen_serI_a_viii##1\xint:
+{%
+ \expandafter\XINT_LogTen_serI_b
+ \romannumeral0\XINTinfloatS[#1]{##1}\xint:##1\xint:
+}%
+\def\XINT_LogTen_serI_b##1[##2]\xint:
+{%
+ \expandafter\XINT_LogTen_serI_c_vi
+ \romannumeral0\xintadd{#3}{\xintiiMul{-125}{##1}[##2-3]}\xint:
+}%
+\def\XINT_LogTen_serI_c_vi##1\xint:##2\xint:
+{%
+ \expandafter\XINT_LogTen_serI_c_v
+ \romannumeral0\xintadd{#4}{\XINTinFloat[#2]{\xintMul{##1}{##2}}}\xint:
+}%
+}\expandafter\XINT_tmpa
+ \the\numexpr\XINTdigits-43\expandafter.%
+ \the\numexpr\XINTdigits-37\expandafter.\expanded{%
+ \XINTinFloat[\XINTdigits-37]{1/7[0]}.%
+ \XINTinFloat[\XINTdigits-31]{-1/6[0]}.%
}%
- }%
- \expandafter\XINT_tmpa
- \csname XINT_expr_op_-ix\expandafter\endcsname
- \csname XINT_expr_check-_**\endcsname
- \XINT_expr_op_**
- \XINT_expr_exec_**
- \XINT_expr_checkp_** {expr}%
- \expandafter\XINT_tmpa
- \csname XINT_flexpr_op_-ix\expandafter\endcsname
- \csname XINT_flexpr_check-_**\endcsname
- \XINT_flexpr_op_**
- \XINT_flexpr_exec_**
- \XINT_flexpr_checkp_** {flexpr}%
- \def\XINT_expr_exec_** ##1##2##3##4% \XINT_expr_exec_<op>
- {%
- \expandafter##2\expandafter##3\expandafter{%
- \romannumeral`&&@\XINT:NEhook:f:one:from:two
- {\romannumeral`&&@\PoorManPower##1##4}}%
+\fi
+\ifnum\XINTdigits>51
+\def\XINT_tmpa#1.#2.#3.#4.{%
+\def\XINT_LogTen_serI_a_viii##1\xint:
+{%
+ \expandafter\XINT_LogTen_serI_a_ix
+ \romannumeral0\XINTinfloatS[#2]{##1}\xint:##1\xint:
+}%
+\def\XINT_LogTen_serI_a_ix##1\xint:
+{%
+ \expandafter\XINT_LogTen_serI_b
+ \romannumeral0\XINTinfloatS[#1]{##1}\xint:##1\xint:
+}%
+\def\XINT_LogTen_serI_b##1[##2]\xint:
+{%
+ \expandafter\XINT_LogTen_serI_c_vii
+ \romannumeral0\xintadd{#3}{##1/9[##2]}\xint:
+}%
+\def\XINT_LogTen_serI_c_vii##1\xint:##2\xint:
+{%
+ \expandafter\XINT_LogTen_serI_c_vi
+ \romannumeral0\xintadd{#4}{\XINTinFloat[#2]{\xintMul{##1}{##2}}}\xint:
+}%
+}\expandafter\XINT_tmpa
+ \the\numexpr\XINTdigits-49\expandafter.%
+ \the\numexpr\XINTdigits-43\expandafter.\expanded{%
+ {-125[-3]}.%
+ \XINTinFloat[\XINTdigits-37]{1/7[0]}.%
}%
- \let\XINT_flexpr_exec_**\XINT_expr_exec_**
+\fi
+\ifnum\XINTdigits>57
+\def\XINT_tmpa#1.#2.#3.#4.{%
+\def\XINT_LogTen_serI_a_ix##1\xint:
+{%
+ \expandafter\XINT_LogTen_serI_a_x
+ \romannumeral0\XINTinfloatS[#2]{##1}\xint:##1\xint:
}%
-\def\poormanloghack^
+\def\XINT_LogTen_serI_a_x##1\xint:
{%
- \def\XINT_tmpa ##1##2##3##4##5##6%
- {%
- \def ##3####1% \XINT_expr_op_<op>
- {%
- \expanded{\unexpanded{##4{####1}}\expandafter}%
- \romannumeral`&&@\expandafter##2\romannumeral`&&@\XINT_expr_getnext
+ \expandafter\XINT_LogTen_serI_b
+ \romannumeral0\XINTinfloatS[#1]{##1}\xint:##1\xint:
+}%
+\def\XINT_LogTen_serI_b##1[##2]\xint:
+{%
+ \expandafter\XINT_LogTen_serI_c_viii
+ \romannumeral0\xintadd{#3}{\xintiiOpp##1[##2-1]}\xint:
+}%
+\def\XINT_LogTen_serI_c_viii##1\xint:##2\xint:
+{%
+ \expandafter\XINT_LogTen_serI_c_vii
+ \romannumeral0\xintadd{#4}{\XINTinFloat[#2]{\xintMul{##1}{##2}}}\xint:
+}%
+}\expandafter\XINT_tmpa
+ \the\numexpr\XINTdigits-55\expandafter.%
+ \the\numexpr\XINTdigits-49\expandafter.%
+ \romannumeral0\XINTinfloat[\XINTdigits-49]{1/9[0]}.%
+ {-125[-3]}.%
+\fi
+\def\XINT_tmpa#1.#2.{%
+\def\XINT_LogTen_serII_a_ii##1\xint:
+{%
+ \expandafter\XINT_LogTen_serII_b
+ \romannumeral0\XINTinfloatS[#1]{##1}\xint:##1\xint:
+}%
+\def\XINT_LogTen_serII_b#1[#2]\xint:
+{%
+ \expandafter\XINT_LogTen_serII_c_
+ \romannumeral0\xintadd{1}{\xintiiOpp\xintHalf{#10}[#2-1]}\xint:
+}%
+\def\XINT_LogTen_serII_c_##1\xint:##2\xint:
+{%
+ \XINTinFloat[#2]{\xintMul{##1}{##2}}%
+}%
+}%
+\expandafter\XINT_tmpa
+ \the\numexpr\XINTdigits-2\expandafter.%
+ \the\numexpr\XINTdigits+4.%
+\ifnum\XINTdigits>10
+\def\XINT_tmpa#1.#2.#3.#4.{%
+\def\XINT_LogTen_serII_a_ii##1\xint:
+{%
+ \expandafter\XINT_LogTen_serII_a_iii
+ \romannumeral0\XINTinfloatS[#2]{##1}\xint:##1\xint:
+}%
+\def\XINT_LogTen_serII_a_iii##1\xint:
+{%
+ \expandafter\XINT_LogTen_serII_b
+ \romannumeral0\XINTinfloatS[#1]{##1}\xint:##1\xint:
+}%
+\def\XINT_LogTen_serII_b##1[##2]\xint:
+{%
+ \expandafter\XINT_LogTen_serII_c_i
+ \romannumeral0\xintadd{#3}{##1/3[##2]}\xint:
+}%
+\def\XINT_LogTen_serII_c_i##1\xint:##2\xint:
+{%
+ \expandafter\XINT_LogTen_serII_c_
+ \romannumeral0\xintadd{#4}{\XINTinFloat[#2]{\xintMul{##1}{##2}}}\xint:
+}%
+}\expandafter\XINT_tmpa
+ \the\numexpr\XINTdigits-8\expandafter.%
+ \the\numexpr\XINTdigits-2.%
+ {-5[-1]}.%
+ {1[0]}.%
+\fi
+\ifnum\XINTdigits>16
+\def\XINT_tmpa#1.#2.#3.#4.{%
+\def\XINT_LogTen_serII_a_iii##1\xint:
+{%
+ \expandafter\XINT_LogTen_serII_a_iv
+ \romannumeral0\XINTinfloatS[#2]{##1}\xint:##1\xint:
+}%
+\def\XINT_LogTen_serII_a_iv##1\xint:
+{%
+ \expandafter\XINT_LogTen_serII_b
+ \romannumeral0\XINTinfloatS[#1]{##1}\xint:##1\xint:
+}%
+\def\XINT_LogTen_serII_b##1[##2]\xint:
+{%
+ \expandafter\XINT_LogTen_serII_c_ii
+ \romannumeral0\xintadd{#3}{\xintiiMul{-25}{##1}[##2-2]}\xint:
+}%
+\def\XINT_LogTen_serII_c_ii##1\xint:##2\xint:
+{%
+ \expandafter\XINT_LogTen_serII_c_i
+ \romannumeral0\xintadd{#4}{\XINTinFloat[#2]{\xintMul{##1}{##2}}}\xint:
+}%
+}\expandafter\XINT_tmpa
+ \the\numexpr\XINTdigits-14\expandafter.%
+ \the\numexpr\XINTdigits-8\expandafter.%
+ \romannumeral0\XINTinfloat[\XINTdigits-8]{1/3[0]}.%
+ {-5[-1]}.%
+\fi
+\ifnum\XINTdigits>22
+\def\XINT_tmpa#1.#2.#3.#4.{%
+\def\XINT_LogTen_serII_a_iv##1\xint:
+{%
+ \expandafter\XINT_LogTen_serII_a_v
+ \romannumeral0\XINTinfloatS[#2]{##1}\xint:##1\xint:
+}%
+\def\XINT_LogTen_serII_a_v##1\xint:
+{%
+ \expandafter\XINT_LogTen_serII_b
+ \romannumeral0\XINTinfloatS[#1]{##1}\xint:##1\xint:
+}%
+\def\XINT_LogTen_serII_b##1[##2]\xint:
+{%
+ \expandafter\XINT_LogTen_serII_c_iii
+ \romannumeral0\xintadd{#3}{\xintDouble{##1}[##2-1]}\xint:
+}%
+\def\XINT_LogTen_serII_c_iii##1\xint:##2\xint:
+{%
+ \expandafter\XINT_LogTen_serII_c_ii
+ \romannumeral0\xintadd{#4}{\XINTinFloat[#2]{\xintMul{##1}{##2}}}\xint:
+}%
+}\expandafter\XINT_tmpa
+ \the\numexpr\XINTdigits-20\expandafter.%
+ \the\numexpr\XINTdigits-14\expandafter.\expanded{%
+ {-25[-2]}.%
+ \XINTinFloat[\XINTdigits-8]{1/3[0]}.%
}%
- \def##2####1% \XINT_expr_check-_<op>
- {%
- \xint_UDsignfork
- ####1{\expandafter##2\romannumeral`&&@##1}%
- -{##5####1}%
- \krof
+\fi
+\ifnum\XINTdigits>28
+\def\XINT_tmpa#1.#2.#3.#4.{%
+\def\XINT_LogTen_serII_a_v##1\xint:
+{%
+ \expandafter\XINT_LogTen_serII_a_vi
+ \romannumeral0\XINTinfloatS[#2]{##1}\xint:##1\xint:
+}%
+\def\XINT_LogTen_serII_a_vi##1\xint:
+{%
+ \expandafter\XINT_LogTen_serII_b
+ \romannumeral0\XINTinfloatS[#1]{##1}\xint:##1\xint:
+}%
+\def\XINT_LogTen_serII_b##1[##2]\xint:
+{%
+ \expandafter\XINT_LogTen_serII_c_iv
+ \romannumeral0\xintadd{#3}{\xintiiOpp##1/6[##2]}\xint:
+}%
+\def\XINT_LogTen_serII_c_iv##1\xint:##2\xint:
+{%
+ \expandafter\XINT_LogTen_serII_c_iii
+ \romannumeral0\xintadd{#4}{\XINTinFloat[#2]{\xintMul{##1}{##2}}}\xint:
+}%
+}\expandafter\XINT_tmpa
+ \the\numexpr\XINTdigits-26\expandafter.%
+ \the\numexpr\XINTdigits-20.%
+ {2[-1]}.%
+ {-25[-2]}.%
+\fi
+\ifnum\XINTdigits>34
+\def\XINT_tmpa#1.#2.#3.#4.{%
+\def\XINT_LogTen_serII_a_vi##1\xint:
+{%
+ \expandafter\XINT_LogTen_serII_a_vii
+ \romannumeral0\XINTinfloatS[#2]{##1}\xint:##1\xint:
+}%
+\def\XINT_LogTen_serII_a_vii##1\xint:
+{%
+ \expandafter\XINT_LogTen_serII_b
+ \romannumeral0\XINTinfloatS[#1]{##1}\xint:##1\xint:
+}%
+\def\XINT_LogTen_serII_b##1[##2]\xint:
+{%
+ \expandafter\XINT_LogTen_serII_c_v
+ \romannumeral0\xintadd{#3}{##1/7[##2]}\xint:
+}%
+\def\XINT_LogTen_serII_c_v##1\xint:##2\xint:
+{%
+ \expandafter\XINT_LogTen_serII_c_iv
+ \romannumeral0\xintadd{#4}{\XINTinFloat[#2]{\xintMul{##1}{##2}}}\xint:
+}%
+}\expandafter\XINT_tmpa
+ \the\numexpr\XINTdigits-32\expandafter.%
+ \the\numexpr\XINTdigits-26\expandafter.%
+ \romannumeral0\XINTinfloatS[\XINTdigits-26]{-1/6[0]}.%
+ {2[-1]}.%
+\fi
+\ifnum\XINTdigits>40
+\def\XINT_tmpa#1.#2.#3.#4.{%
+\def\XINT_LogTen_serII_a_vii##1\xint:
+{%
+ \expandafter\XINT_LogTen_serII_a_viii
+ \romannumeral0\XINTinfloatS[#2]{##1}\xint:##1\xint:
+}%
+\def\XINT_LogTen_serII_a_viii##1\xint:
+{%
+ \expandafter\XINT_LogTen_serII_b
+ \romannumeral0\XINTinfloatS[#1]{##1}\xint:##1\xint:
+}%
+\def\XINT_LogTen_serII_b##1[##2]\xint:
+{%
+ \expandafter\XINT_LogTen_serII_c_vi
+ \romannumeral0\xintadd{#3}{\xintiiMul{-125}{##1}[##2-3]}\xint:
+}%
+\def\XINT_LogTen_serII_c_vi##1\xint:##2\xint:
+{%
+ \expandafter\XINT_LogTen_serII_c_v
+ \romannumeral0\xintadd{#4}{\XINTinFloat[#2]{\xintMul{##1}{##2}}}\xint:
+}%
+}\expandafter\XINT_tmpa
+ \the\numexpr\XINTdigits-38\expandafter.%
+ \the\numexpr\XINTdigits-32\expandafter.\expanded{%
+ \XINTinFloat[\XINTdigits-32]{1/7[0]}.%
+ \XINTinFloat[\XINTdigits-26]{-1/6[0]}.%
}%
- \def##5####1####2% \XINT_expr_checkp_<op>
- {%
- \ifnum ####1>\XINT_expr_precedence_^
- \expandafter##5%
- \romannumeral`&&@\csname XINT_##6_op_####2\expandafter\endcsname
- \else
- \expandafter ####1\expandafter ####2%
- \fi
+\fi
+\ifnum\XINTdigits>46
+\def\XINT_tmpa#1.#2.#3.#4.{%
+\def\XINT_LogTen_serII_a_viii##1\xint:
+{%
+ \expandafter\XINT_LogTen_serII_a_ix
+ \romannumeral0\XINTinfloatS[#2]{##1}\xint:##1\xint:
+}%
+\def\XINT_LogTen_serII_a_ix##1\xint:
+{%
+ \expandafter\XINT_LogTen_serII_b
+ \romannumeral0\XINTinfloatS[#1]{##1}\xint:##1\xint:
+}%
+\def\XINT_LogTen_serII_b##1[##2]\xint:
+{%
+ \expandafter\XINT_LogTen_serII_c_vii
+ \romannumeral0\xintadd{#3}{##1/9[##2]}\xint:
+}%
+\def\XINT_LogTen_serII_c_vii##1\xint:##2\xint:
+{%
+ \expandafter\XINT_LogTen_serII_c_vi
+ \romannumeral0\xintadd{#4}{\XINTinFloat[#2]{\xintMul{##1}{##2}}}\xint:
+}%
+}\expandafter\XINT_tmpa
+ \the\numexpr\XINTdigits-44\expandafter.%
+ \the\numexpr\XINTdigits-38\expandafter.\expanded{%
+ {-125[-3]}.%
+ \XINTinFloat[\XINTdigits-32]{1/7[0]}.%
}%
- }%
- \expandafter\XINT_tmpa
- \csname XINT_expr_op_-ix\expandafter\endcsname
- \csname XINT_expr_check-_^\endcsname
- \XINT_expr_op_^
- \XINT_expr_exec_^
- \XINT_expr_checkp_^ {expr}%
- \expandafter\XINT_tmpa
- \csname XINT_flexpr_op_-ix\expandafter\endcsname
- \csname XINT_flexpr_check-_^\endcsname
- \XINT_flexpr_op_^
- \XINT_flexpr_exec_^
- \XINT_flexpr_checkp_^ {flexpr}%
- \def\XINT_expr_exec_^ ##1##2##3##4% \XINT_expr_exec_<op>
- {%
- \expandafter##2\expandafter##3\expandafter{%
- \romannumeral`&&@\XINT:NEhook:f:one:from:two
- {\romannumeral`&&@\PoorManPower##1##4}}%
+\fi
+\ifnum\XINTdigits>52
+\def\XINT_tmpa#1.#2.#3.#4.{%
+\def\XINT_LogTen_serII_a_ix##1\xint:
+{%
+ \expandafter\XINT_LogTen_serII_a_x
+ \romannumeral0\XINTinfloatS[#2]{##1}\xint:##1\xint:
+}%
+\def\XINT_LogTen_serII_a_x##1\xint:
+{%
+ \expandafter\XINT_LogTen_serII_b
+ \romannumeral0\XINTinfloatS[#1]{##1}\xint:##1\xint:
+}%
+\def\XINT_LogTen_serII_b##1[##2]\xint:
+{%
+ \expandafter\XINT_LogTen_serII_c_viii
+ \romannumeral0\xintadd{#3}{\xintiiOpp##1[##2-1]}\xint:
+}%
+\def\XINT_LogTen_serII_c_viii##1\xint:##2\xint:
+{%
+ \expandafter\XINT_LogTen_serII_c_vii
+ \romannumeral0\xintadd{#4}{\XINTinFloat[#2]{\xintMul{##1}{##2}}}\xint:
+}%
+}\expandafter\XINT_tmpa
+ \the\numexpr\XINTdigits-50\expandafter.%
+ \the\numexpr\XINTdigits-44\expandafter.%
+ \romannumeral0\XINTinfloat[\XINTdigits-44]{1/9[0]}.%
+ {-125[-3]}.%
+\fi
+\ifnum\XINTdigits>58
+\def\XINT_tmpa#1.#2.#3.#4.{%
+\def\XINT_LogTen_serII_a_x##1\xint:
+{%
+ \expandafter\XINT_LogTen_serII_a_xi
+ \romannumeral0\XINTinfloatS[#2]{##1}\xint:##1\xint:
+}%
+\def\XINT_LogTen_serII_a_xi##1\xint:
+{%
+ \expandafter\XINT_LogTen_serII_b
+ \romannumeral0\XINTinfloatS[#1]{##1}\xint:##1\xint:
+}%
+\def\XINT_LogTen_serII_b##1[##2]\xint:
+{%
+ \expandafter\XINT_LogTen_serII_c_ix
+ \romannumeral0\xintadd{#3}{##1/11[##2]}\xint:
+}%
+\def\XINT_LogTen_serII_c_ix##1\xint:##2\xint:
+{%
+ \expandafter\XINT_LogTen_serII_c_viii
+ \romannumeral0\xintadd{#4}{\XINTinFloat[#2]{\xintMul{##1}{##2}}}\xint:
+}%
+}\expandafter\XINT_tmpa
+ \the\numexpr\XINTdigits-56\expandafter.%
+ \the\numexpr\XINTdigits-50\expandafter.\expanded{%
+ {-1[-1]}.%
+ \XINTinFloat[\XINTdigits-44]{1/9[0]}.%
}%
- \let\XINT_flexpr_exec_^\XINT_expr_exec_^
+\fi
+\def\XINT_tmpa#1.#2.{%
+\def\XINT_LogTen_serIII_a_ii##1\xint:
+{%
+ \expandafter\XINT_LogTen_serIII_b
+ \romannumeral0\XINTinfloatS[#1]{##1}\xint:##1\xint:
}%
-\def\poormanloghack#1{\csname poormanloghack#1\endcsname}%
+\def\XINT_LogTen_serIII_b#1[#2]\xint:
+{%
+ \expandafter\XINT_LogTen_serIII_c_
+ \romannumeral0\xintadd{1}{\xintiiOpp\xintHalf{#10}[#2-1]}\xint:
+}%
+\def\XINT_LogTen_serIII_c_##1\xint:##2\xint:
+{%
+ \XINTinFloat[#2]{\xintMul{##1}{##2}}%
+}%
+}%
+\expandafter\XINT_tmpa
+ \the\numexpr\XINTdigits-1\expandafter.%
+ \the\numexpr\XINTdigits+4.%
+\ifnum\XINTdigits>9
+\def\XINT_tmpa#1.#2.#3.#4.{%
+\def\XINT_LogTen_serIII_a_ii##1\xint:
+{%
+ \expandafter\XINT_LogTen_serIII_a_iii
+ \romannumeral0\XINTinfloatS[#2]{##1}\xint:##1\xint:
+}%
+\def\XINT_LogTen_serIII_a_iii##1\xint:
+{%
+ \expandafter\XINT_LogTen_serIII_b
+ \romannumeral0\XINTinfloatS[#1]{##1}\xint:##1\xint:
+}%
+\def\XINT_LogTen_serIII_b##1[##2]\xint:
+{%
+ \expandafter\XINT_LogTen_serIII_c_i
+ \romannumeral0\xintadd{#3}{##1/3[##2]}\xint:
+}%
+\def\XINT_LogTen_serIII_c_i##1\xint:##2\xint:
+{%
+ \expandafter\XINT_LogTen_serIII_c_
+ \romannumeral0\xintadd{#4}{\XINTinFloat[#2]{\xintMul{##1}{##2}}}\xint:
+}%
+}\expandafter\XINT_tmpa
+ \the\numexpr\XINTdigits-7\expandafter.%
+ \the\numexpr\XINTdigits-1.%
+ {-5[-1]}.%
+ {1[0]}.%
+\fi
+\ifnum\XINTdigits>15
+\def\XINT_tmpa#1.#2.#3.#4.{%
+\def\XINT_LogTen_serIII_a_iii##1\xint:
+{%
+ \expandafter\XINT_LogTen_serIII_a_iv
+ \romannumeral0\XINTinfloatS[#2]{##1}\xint:##1\xint:
+}%
+\def\XINT_LogTen_serIII_a_iv##1\xint:
+{%
+ \expandafter\XINT_LogTen_serIII_b
+ \romannumeral0\XINTinfloatS[#1]{##1}\xint:##1\xint:
+}%
+\def\XINT_LogTen_serIII_b##1[##2]\xint:
+{%
+ \expandafter\XINT_LogTen_serIII_c_ii
+ \romannumeral0\xintadd{#3}{\xintiiMul{-25}{##1}[##2-2]}\xint:
+}%
+\def\XINT_LogTen_serIII_c_ii##1\xint:##2\xint:
+{%
+ \expandafter\XINT_LogTen_serIII_c_i
+ \romannumeral0\xintadd{#4}{\XINTinFloat[#2]{\xintMul{##1}{##2}}}\xint:
+}%
+}\expandafter\XINT_tmpa
+ \the\numexpr\XINTdigits-13\expandafter.%
+ \the\numexpr\XINTdigits-7\expandafter.%
+ \romannumeral0\XINTinfloat[\XINTdigits-7]{1/3[0]}.%
+ {-5[-1]}.%
+\fi
+\ifnum\XINTdigits>21
+\def\XINT_tmpa#1.#2.#3.#4.{%
+\def\XINT_LogTen_serIII_a_iv##1\xint:
+{%
+ \expandafter\XINT_LogTen_serIII_a_v
+ \romannumeral0\XINTinfloatS[#2]{##1}\xint:##1\xint:
+}%
+\def\XINT_LogTen_serIII_a_v##1\xint:
+{%
+ \expandafter\XINT_LogTen_serIII_b
+ \romannumeral0\XINTinfloatS[#1]{##1}\xint:##1\xint:
+}%
+\def\XINT_LogTen_serIII_b##1[##2]\xint:
+{%
+ \expandafter\XINT_LogTen_serIII_c_iii
+ \romannumeral0\xintadd{#3}{\xintDouble{##1}[##2-1]}\xint:
+}%
+\def\XINT_LogTen_serIII_c_iii##1\xint:##2\xint:
+{%
+ \expandafter\XINT_LogTen_serIII_c_ii
+ \romannumeral0\xintadd{#4}{\XINTinFloat[#2]{\xintMul{##1}{##2}}}\xint:
+}%
+}\expandafter\XINT_tmpa
+ \the\numexpr\XINTdigits-19\expandafter.%
+ \the\numexpr\XINTdigits-13\expandafter.\expanded{%
+ {-25[-2]}.%
+ \XINTinFloat[\XINTdigits-7]{1/3[0]}.%
+ }%
+\fi
+\ifnum\XINTdigits>27
+\def\XINT_tmpa#1.#2.#3.#4.{%
+\def\XINT_LogTen_serIII_a_v##1\xint:
+{%
+ \expandafter\XINT_LogTen_serIII_a_vi
+ \romannumeral0\XINTinfloatS[#2]{##1}\xint:##1\xint:
+}%
+\def\XINT_LogTen_serIII_a_vi##1\xint:
+{%
+ \expandafter\XINT_LogTen_serIII_b
+ \romannumeral0\XINTinfloatS[#1]{##1}\xint:##1\xint:
+}%
+\def\XINT_LogTen_serIII_b##1[##2]\xint:
+{%
+ \expandafter\XINT_LogTen_serIII_c_iv
+ \romannumeral0\xintadd{#3}{\xintiiOpp##1/6[##2]}\xint:
+}%
+\def\XINT_LogTen_serIII_c_iv##1\xint:##2\xint:
+{%
+ \expandafter\XINT_LogTen_serIII_c_iii
+ \romannumeral0\xintadd{#4}{\XINTinFloat[#2]{\xintMul{##1}{##2}}}\xint:
+}%
+}\expandafter\XINT_tmpa
+ \the\numexpr\XINTdigits-25\expandafter.%
+ \the\numexpr\XINTdigits-19.%
+ {2[-1]}.%
+ {-25[-2]}.%
+\fi
+\ifnum\XINTdigits>33
+\def\XINT_tmpa#1.#2.#3.#4.{%
+\def\XINT_LogTen_serIII_a_vi##1\xint:
+{%
+ \expandafter\XINT_LogTen_serIII_a_vii
+ \romannumeral0\XINTinfloatS[#2]{##1}\xint:##1\xint:
+}%
+\def\XINT_LogTen_serIII_a_vii##1\xint:
+{%
+ \expandafter\XINT_LogTen_serIII_b
+ \romannumeral0\XINTinfloatS[#1]{##1}\xint:##1\xint:
+}%
+\def\XINT_LogTen_serIII_b##1[##2]\xint:
+{%
+ \expandafter\XINT_LogTen_serIII_c_v
+ \romannumeral0\xintadd{#3}{##1/7[##2]}\xint:
+}%
+\def\XINT_LogTen_serIII_c_v##1\xint:##2\xint:
+{%
+ \expandafter\XINT_LogTen_serIII_c_iv
+ \romannumeral0\xintadd{#4}{\XINTinFloat[#2]{\xintMul{##1}{##2}}}\xint:
+}%
+}\expandafter\XINT_tmpa
+ \the\numexpr\XINTdigits-31\expandafter.%
+ \the\numexpr\XINTdigits-25\expandafter.%
+ \romannumeral0\XINTinfloatS[\XINTdigits-25]{-1/6[0]}.%
+ {2[-1]}.%
+\fi
+\ifnum\XINTdigits>39
+\def\XINT_tmpa#1.#2.#3.#4.{%
+\def\XINT_LogTen_serIII_a_vii##1\xint:
+{%
+ \expandafter\XINT_LogTen_serIII_a_viii
+ \romannumeral0\XINTinfloatS[#2]{##1}\xint:##1\xint:
+}%
+\def\XINT_LogTen_serIII_a_viii##1\xint:
+{%
+ \expandafter\XINT_LogTen_serIII_b
+ \romannumeral0\XINTinfloatS[#1]{##1}\xint:##1\xint:
+}%
+\def\XINT_LogTen_serIII_b##1[##2]\xint:
+{%
+ \expandafter\XINT_LogTen_serIII_c_vi
+ \romannumeral0\xintadd{#3}{\xintiiMul{-125}{##1}[##2-3]}\xint:
+}%
+\def\XINT_LogTen_serIII_c_vi##1\xint:##2\xint:
+{%
+ \expandafter\XINT_LogTen_serIII_c_v
+ \romannumeral0\xintadd{#4}{\XINTinFloat[#2]{\xintMul{##1}{##2}}}\xint:
+}%
+}\expandafter\XINT_tmpa
+ \the\numexpr\XINTdigits-37\expandafter.%
+ \the\numexpr\XINTdigits-31\expandafter.\expanded{%
+ \XINTinFloat[\XINTdigits-31]{1/7[0]}.%
+ \XINTinFloat[\XINTdigits-25]{-1/6[0]}.%
+ }%
+\fi
+\ifnum\XINTdigits>45
+\def\XINT_tmpa#1.#2.#3.#4.{%
+\def\XINT_LogTen_serIII_a_viii##1\xint:
+{%
+ \expandafter\XINT_LogTen_serIII_a_ix
+ \romannumeral0\XINTinfloatS[#2]{##1}\xint:##1\xint:
+}%
+\def\XINT_LogTen_serIII_a_ix##1\xint:
+{%
+ \expandafter\XINT_LogTen_serIII_b
+ \romannumeral0\XINTinfloatS[#1]{##1}\xint:##1\xint:
+}%
+\def\XINT_LogTen_serIII_b##1[##2]\xint:
+{%
+ \expandafter\XINT_LogTen_serIII_c_vii
+ \romannumeral0\xintadd{#3}{##1/9[##2]}\xint:
+}%
+\def\XINT_LogTen_serIII_c_vii##1\xint:##2\xint:
+{%
+ \expandafter\XINT_LogTen_serIII_c_vi
+ \romannumeral0\xintadd{#4}{\XINTinFloat[#2]{\xintMul{##1}{##2}}}\xint:
+}%
+}\expandafter\XINT_tmpa
+ \the\numexpr\XINTdigits-43\expandafter.%
+ \the\numexpr\XINTdigits-37\expandafter.\expanded{%
+ {-125[-3]}.%
+ \XINTinFloat[\XINTdigits-31]{1/7[0]}.%
+ }%
+\fi
+\ifnum\XINTdigits>51
+\def\XINT_tmpa#1.#2.#3.#4.{%
+\def\XINT_LogTen_serIII_a_ix##1\xint:
+{%
+ \expandafter\XINT_LogTen_serIII_a_x
+ \romannumeral0\XINTinfloatS[#2]{##1}\xint:##1\xint:
+}%
+\def\XINT_LogTen_serIII_a_x##1\xint:
+{%
+ \expandafter\XINT_LogTen_serIII_b
+ \romannumeral0\XINTinfloatS[#1]{##1}\xint:##1\xint:
+}%
+\def\XINT_LogTen_serIII_b##1[##2]\xint:
+{%
+ \expandafter\XINT_LogTen_serIII_c_viii
+ \romannumeral0\xintadd{#3}{\xintiiOpp##1[##2-1]}\xint:
+}%
+\def\XINT_LogTen_serIII_c_viii##1\xint:##2\xint:
+{%
+ \expandafter\XINT_LogTen_serIII_c_vii
+ \romannumeral0\xintadd{#4}{\XINTinFloat[#2]{\xintMul{##1}{##2}}}\xint:
+}%
+}\expandafter\XINT_tmpa
+ \the\numexpr\XINTdigits-49\expandafter.%
+ \the\numexpr\XINTdigits-43\expandafter.%
+ \romannumeral0\XINTinfloat[\XINTdigits-43]{1/9[0]}.%
+ {-125[-3]}.%
+\fi
+\ifnum\XINTdigits>57
+\def\XINT_tmpa#1.#2.#3.#4.{%
+\def\XINT_LogTen_serIII_a_x##1\xint:
+{%
+ \expandafter\XINT_LogTen_serIII_a_xi
+ \romannumeral0\XINTinfloatS[#2]{##1}\xint:##1\xint:
+}%
+\def\XINT_LogTen_serIII_a_xi##1\xint:
+{%
+ \expandafter\XINT_LogTen_serIII_b
+ \romannumeral0\XINTinfloatS[#1]{##1}\xint:##1\xint:
+}%
+\def\XINT_LogTen_serIII_b##1[##2]\xint:
+{%
+ \expandafter\XINT_LogTen_serIII_c_ix
+ \romannumeral0\xintadd{#3}{##1/11[##2]}\xint:
+}%
+\def\XINT_LogTen_serIII_c_ix##1\xint:##2\xint:
+{%
+ \expandafter\XINT_LogTen_serIII_c_viii
+ \romannumeral0\xintadd{#4}{\XINTinFloat[#2]{\xintMul{##1}{##2}}}\xint:
+}%
+}\expandafter\XINT_tmpa
+ \the\numexpr\XINTdigits-55\expandafter.%
+ \the\numexpr\XINTdigits-49\expandafter.\expanded{%
+ {-1[-1]}.%
+ \XINTinFloat[\XINTdigits-43]{1/9[0]}.%
+ }%
+\fi
+\XINTendxintloginput%
\endinput
%%
%% End of file `xintlog.sty'.