summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/generic/xint/xintcfrac.sty
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/tex/generic/xint/xintcfrac.sty')
-rw-r--r--Master/texmf-dist/tex/generic/xint/xintcfrac.sty1070
1 files changed, 1070 insertions, 0 deletions
diff --git a/Master/texmf-dist/tex/generic/xint/xintcfrac.sty b/Master/texmf-dist/tex/generic/xint/xintcfrac.sty
new file mode 100644
index 00000000000..8600e32fff7
--- /dev/null
+++ b/Master/texmf-dist/tex/generic/xint/xintcfrac.sty
@@ -0,0 +1,1070 @@
+%%
+%% This is file `xintcfrac.sty',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% xint.dtx (with options: `xintcfrac')
+%%
+%% IMPORTANT NOTICE:
+%%
+%% For the copyright see the source file.
+%%
+%% Any modified versions of this file must be renamed
+%% with new filenames distinct from xintcfrac.sty.
+%%
+%% For distribution of the original source see the terms
+%% for copying and modification in the file xint.dtx.
+%%
+%% This generated file may be distributed as long as the
+%% original source files, as listed above, are part of the
+%% same distribution. (The sources need not necessarily be
+%% in the same archive or directory.)
+%%
+%%----------------------------------------------------------------
+%% The xint bundle (version 1.04 of April 25, 2013)
+%% xintcfrac: Expandable continued fractions with xint package
+%% Copyright (C) 2013 by Jean-Francois Burnol
+%%----------------------------------------------------------------
+%%
+\begingroup\catcode61\catcode48\catcode32=10\relax%
+ \catcode13=5 % ^^M
+ \endlinechar=13 %
+ \catcode123=1 % {
+ \catcode125=2 % }
+ \catcode64=11 % @
+ \catcode35=6 % #
+ \catcode44=12 % ,
+ \catcode45=12 % -
+ \catcode46=12 % .
+ \catcode58=12 % :
+ \def\space { }%
+ \let\z\endgroup
+ \expandafter\let\expandafter\x\csname ver@xintcfrac.sty\endcsname
+ \expandafter\let\expandafter\w\csname ver@xintfrac.sty\endcsname
+ \expandafter
+ \ifx\csname PackageInfo\endcsname\relax
+ \def\y#1#2{\immediate\write-1{Package #1 Info: #2.}}%
+ \else
+ \def\y#1#2{\PackageInfo{#1}{#2}}%
+ \fi
+ \expandafter
+ \ifx\csname numexpr\endcsname\relax
+ \y{xintcfrac}{\numexpr not available, aborting input}%
+ \aftergroup\endinput
+ \else
+ \ifx\x\relax % plain-TeX, first loading of xintcfrac.sty
+ \ifx\w\relax % but xintfrac.sty not yet loaded.
+ \y{xintcfrac}{Package xintfrac is required}%
+ \y{xintcfrac}{Will try \string\input\space xintfrac.sty}%
+ \def\z{\endgroup\input xintfrac.sty\relax}%
+ \fi
+ \else
+ \def\empty {}%
+ \ifx\x\empty % LaTeX, first loading,
+ % variable is initialized, but \ProvidesPackage not yet seen
+ \ifx\w\relax % xintfrac.sty not yet loaded.
+ \y{xintcfrac}{Package xintfrac is required}%
+ \y{xintcfrac}{Will try \string\RequirePackage{xintfrac}}%
+ \def\z{\endgroup\RequirePackage{xintfrac}}%
+ \fi
+ \else
+ \y{xintcfrac}{I was already loaded, aborting input}%
+ \aftergroup\endinput
+ \fi
+ \fi
+ \fi
+\z%
+\begingroup\catcode61\catcode48\catcode32=10\relax%
+ \catcode13=5 % ^^M
+ \endlinechar=13 %
+ \catcode123=1 % {
+ \catcode125=2 % }
+ \catcode64=11 % @
+ \catcode35=6 % #
+ \catcode44=12 % ,
+ \catcode45=12 % -
+ \catcode46=12 % .
+ \catcode58=12 % :
+ \expandafter
+ \ifx\csname PackageInfo\endcsname\relax
+ \def\y#1#2{\immediate\write-1{Package #1 Info: #2.}}%
+ \else
+ \def\y#1#2{\PackageInfo{#1}{#2}}%
+ \fi
+ \def\empty {}%
+ \expandafter\let\expandafter\w\csname ver@xintfrac.sty\endcsname
+ \ifx\w\relax % Plain TeX, user gave a file name at the prompt
+ \y{xintcfrac}{Loading of package xintfrac failed, aborting input}%
+ \aftergroup\endinput
+ \fi
+ \ifx\w\empty % LaTeX, user gave a file name at the prompt
+ \y{xintcfrac}{Loading of package xintfrac failed, aborting input}%
+ \aftergroup\endinput
+ \fi
+\endgroup%
+\begingroup\catcode61\catcode48\catcode32=10\relax%
+ \catcode13=5 % ^^M
+ \endlinechar=13 %
+ \catcode123=1 % {
+ \catcode125=2 % }
+ \catcode64=11 % @
+ \def\x
+ {%
+ \endgroup
+ \edef\XINT@cfrac@restorecatcodes@endinput
+ {%
+ \catcode93=\the\catcode93 % ]
+ \catcode91=\the\catcode91 % [
+ \catcode47=\the\catcode47 % /
+ \catcode41=\the\catcode41 % )
+ \catcode40=\the\catcode40 % (
+ \catcode42=\the\catcode42 % *
+ \catcode43=\the\catcode43 % +
+ \catcode62=\the\catcode62 % >
+ \catcode60=\the\catcode60 % <
+ \catcode58=\the\catcode58 % :
+ \catcode46=\the\catcode46 % .
+ \catcode45=\the\catcode45 % -
+ \catcode44=\the\catcode44 % ,
+ \catcode35=\the\catcode35 % #
+ \catcode64=\the\catcode64 % @
+ \catcode125=\the\catcode125 % }
+ \catcode123=\the\catcode123 % {
+ \endlinechar=\the\endlinechar
+ \catcode13=\the\catcode13 % ^^M
+ \catcode32=\the\catcode32 %
+ \catcode61=\the\catcode61 % =
+ \noexpand\endinput
+ }%
+ \XINT@setcatcodes
+ \catcode91=12 % [
+ \catcode93=12 % ]
+ }%
+\x
+\begingroup
+ \catcode58=12 % :
+ \expandafter\ifx\csname ProvidesPackage\endcsname\relax
+ \def\x#1#2#3[#4]{\endgroup
+ \immediate\write-1{Package: #3 #4}%
+ \xdef#1{#4}%
+ }%
+ \else
+ \def\x#1#2[#3]{\endgroup
+ #2[{#3}]%
+ \ifx#1\@undefined
+ \xdef#1{#3}%
+ \fi
+ \ifx#1\relax
+ \xdef#1{#3}%
+ \fi
+ }%
+ \fi
+\expandafter\x\csname ver@xintcfrac.sty\endcsname
+\ProvidesPackage{xintcfrac}%
+ [2013/04/25 v1.04 Expandable continued fractions with xint package (jfB)]%
+\def\xintCFrac {\romannumeral0\xintcfrac }%
+\def\xintcfrac #1%
+{%
+ \XINT@cfrac@opt@a #1\Z
+}%
+\def\XINT@cfrac@opt@a #1%
+{%
+ \ifx#1[\XINT@cfrac@opt@b\fi \XINT@cfrac@noopt #1%
+}%
+\def\XINT@cfrac@noopt #1\Z
+{%
+ \expandafter\XINT@cfrac@A\romannumeral0\xintraw {#1}\Z
+ \relax\relax
+}%
+\def\XINT@cfrac@opt@b\fi\XINT@cfrac@noopt [\Z #1]%
+{%
+ \fi\csname XINT@cfrac@opt#1\endcsname
+}%
+\def\XINT@cfrac@optl #1%
+{%
+ \expandafter\XINT@cfrac@A\romannumeral0\xintraw {#1}\Z
+ \relax\hfill
+}%
+\def\XINT@cfrac@optc #1%
+{%
+ \expandafter\XINT@cfrac@A\romannumeral0\xintraw {#1}\Z
+ \relax\relax
+}%
+\def\XINT@cfrac@optr #1%
+{%
+ \expandafter\XINT@cfrac@A\romannumeral0\xintraw {#1}\Z
+ \hfill\relax
+}%
+\def\XINT@cfrac@A #1/#2\Z
+{%
+ \expandafter\XINT@cfrac@B\romannumeral0\xintdivision {#1}{#2}{#2}%
+}%
+\def\XINT@cfrac@B #1#2%
+{%
+ \XINT@cfrac@C #2\Z {#1}%
+}%
+\def\XINT@cfrac@C #1%
+{%
+ \xint@zero #1\XINT@cfrac@integer 0\XINT@cfrac@D #1%
+}%
+\def\XINT@cfrac@integer 0\XINT@cfrac@D 0#1\Z #2#3#4#5{ #2}%
+\def\XINT@cfrac@D #1\Z #2#3{\XINT@cfrac@loop@a {#1}{#3}{#1}{{#2}}}%
+\def\XINT@cfrac@loop@a
+{%
+ \expandafter\XINT@cfrac@loop@d\romannumeral0\XINT@div@prepare
+}%
+\def\XINT@cfrac@loop@d #1#2%
+{%
+ \XINT@cfrac@loop@e #2.{#1}%
+}%
+\def\XINT@cfrac@loop@e #1%
+{%
+ \xint@zero #1\xint@cfrac@loop@exit0\XINT@cfrac@loop@f #1%
+}%
+\def\XINT@cfrac@loop@f #1.#2#3#4%
+{%
+ \XINT@cfrac@loop@a {#1}{#3}{#1}{{#2}#4}%
+}%
+\def\xint@cfrac@loop@exit0\XINT@cfrac@loop@f #1.#2#3#4#5#6%
+ {\XINT@cfrac@T #5#6{#2}#4\Z }%
+\def\XINT@cfrac@T #1#2#3#4%
+{%
+ \xint@z #4\XINT@cfrac@end\Z\XINT@cfrac@T #1#2{#4+\cfrac{#11#2}{#3}}%
+}%
+\def\XINT@cfrac@end\Z\XINT@cfrac@T #1#2#3%
+{%
+ \XINT@cfrac@@end #3%
+}%
+\def\XINT@cfrac@@end \Z+\cfrac#1#2{ #2}%
+\def\xintGCFrac {\romannumeral0\xintgcfrac }%
+\def\xintgcfrac #1%
+{%
+ \XINT@gcfrac@opt@a #1\Z
+}%
+\def\XINT@gcfrac@opt@a #1%
+{%
+ \ifx#1[\XINT@gcfrac@opt@b\fi \XINT@gcfrac@noopt #1%
+}%
+\def\XINT@gcfrac@noopt #1\Z
+{%
+ \XINT@gcfrac #1+\W/\relax\relax
+}%
+\def\XINT@gcfrac@opt@b\fi\XINT@gcfrac@noopt [\Z #1]%
+{%
+ \fi\csname XINT@gcfrac@opt#1\endcsname
+}%
+\def\XINT@gcfrac@optl #1%
+{%
+ \XINT@gcfrac #1+\W/\relax\hfill
+}%
+\def\XINT@gcfrac@optc #1%
+{%
+ \XINT@gcfrac #1+\W/\relax\relax
+}%
+\def\XINT@gcfrac@optr #1%
+{%
+ \XINT@gcfrac #1+\W/\hfill\relax
+}%
+\def\XINT@gcfrac
+{%
+ \expandafter\expandafter\expandafter\XINT@gcfrac@enter
+}%
+\def\XINT@gcfrac@enter {\XINT@gcfrac@loop {}}%
+\def\XINT@gcfrac@loop #1#2+#3/%
+{%
+ \xint@w #3\XINT@gcfrac@endloop\W\XINT@gcfrac@loop {{#3}{#2}#1}%
+}%
+\def\XINT@gcfrac@endloop\W\XINT@gcfrac@loop #1#2#3%
+{%
+ \XINT@gcfrac@T #2#3#1\Z\Z
+}%
+\def\XINT@gcfrac@T #1#2#3#4{\XINT@gcfrac@U #1#2{\xintFrac{#4}}}%
+\def\XINT@gcfrac@U #1#2#3#4#5%
+{%
+ \xint@z #5\XINT@gcfrac@end\Z\XINT@gcfrac@U
+ #1#2{\xintFrac{#5}%
+ \ifcase\xintSgn{#4}
+ +\or+\else-\fi
+ \cfrac{#1\xintFrac{\xintAbs{#4}}#2}{#3}}%
+}%
+\def\XINT@gcfrac@end\Z\XINT@gcfrac@U #1#2#3%
+{%
+ \XINT@gcfrac@@end #3%
+}%
+\def\XINT@gcfrac@@end #1\cfrac#2#3{ #3}%
+\def\xintFtoCs {\romannumeral0\xintftocs }%
+\def\xintftocs #1%
+{%
+ \expandafter\XINT@ftc@A\romannumeral0\xintraw {#1}\Z
+}%
+\def\XINT@ftc@A #1/#2\Z
+{%
+ \expandafter\XINT@ftc@B\romannumeral0\xintdivision {#1}{#2}{#2}%
+}%
+\def\XINT@ftc@B #1#2%
+{%
+ \XINT@ftc@C #2.{#1}%
+}%
+\def\XINT@ftc@C #1%
+{%
+ \xint@zero #1\XINT@ftc@integer 0\XINT@ftc@D #1%
+}%
+\def\XINT@ftc@integer 0\XINT@ftc@D 0#1.#2#3{ #2}%
+\def\XINT@ftc@D #1.#2#3{\XINT@ftc@loop@a {#1}{#3}{#1}{#2,}}%
+\def\XINT@ftc@loop@a
+{%
+ \expandafter\XINT@ftc@loop@d\romannumeral0\XINT@div@prepare
+}%
+\def\XINT@ftc@loop@d #1#2%
+{%
+ \XINT@ftc@loop@e #2.{#1}%
+}%
+\def\XINT@ftc@loop@e #1%
+{%
+ \xint@zero #1\xint@ftc@loop@exit0\XINT@ftc@loop@f #1%
+}%
+\def\XINT@ftc@loop@f #1.#2#3#4%
+{%
+ \XINT@ftc@loop@a {#1}{#3}{#1}{#4#2,}%
+}%
+\def\xint@ftc@loop@exit0\XINT@ftc@loop@f #1.#2#3#4{ #4#2}%
+\def\xintFtoCx {\romannumeral0\xintftocx }%
+\def\xintftocx #1#2%
+{%
+ \expandafter\XINT@ftcx@A\romannumeral0\xintraw {#2}\Z {#1}%
+}%
+\def\XINT@ftcx@A #1/#2\Z
+{%
+ \expandafter\XINT@ftcx@B\romannumeral0\xintdivision {#1}{#2}{#2}%
+}%
+\def\XINT@ftcx@B #1#2%
+{%
+ \XINT@ftcx@C #2.{#1}%
+}%
+\def\XINT@ftcx@C #1%
+{%
+ \xint@zero #1\XINT@ftcx@integer 0\XINT@ftcx@D #1%
+}%
+\def\XINT@ftcx@integer 0\XINT@ftcx@D 0#1.#2#3#4{ #2}%
+\def\XINT@ftcx@D #1.#2#3#4{\XINT@ftcx@loop@a {#1}{#3}{#1}{#2#4}{#4}}%
+\def\XINT@ftcx@loop@a
+{%
+ \expandafter\XINT@ftcx@loop@d\romannumeral0\XINT@div@prepare
+}%
+\def\XINT@ftcx@loop@d #1#2%
+{%
+ \XINT@ftcx@loop@e #2.{#1}%
+}%
+\def\XINT@ftcx@loop@e #1%
+{%
+ \xint@zero #1\xint@ftcx@loop@exit0\XINT@ftcx@loop@f #1%
+}%
+\def\XINT@ftcx@loop@f #1.#2#3#4#5%
+{%
+ \XINT@ftcx@loop@a {#1}{#3}{#1}{#4{#2}#5}{#5}%
+}%
+\def\xint@ftcx@loop@exit0\XINT@ftcx@loop@f #1.#2#3#4#5{ #4{#2}}%
+\def\xintFtoGC {\romannumeral0\xintftogc }%
+\def\xintftogc {\xintftocx {+1/}}%
+\def\xintFtoCC {\romannumeral0\xintftocc }%
+\def\xintftocc #1%
+{%
+ \expandafter\XINT@ftcc@A\expandafter {\romannumeral0\xintraw {#1}}%
+}%
+\def\XINT@ftcc@A #1%
+{%
+ \expandafter\XINT@ftcc@B
+ \romannumeral0\xintraw {\xintAdd {1/2[0]}{#1[0]}}\Z {#1[0]}%
+}%
+\def\XINT@ftcc@B #1/#2\Z
+{%
+ \expandafter\XINT@ftcc@C\expandafter {\romannumeral0\xintquo {#1}{#2}}%
+}%
+\def\XINT@ftcc@C #1#2%
+{%
+ \expandafter\XINT@ftcc@D\romannumeral0\xintsub {#2}{#1}\Z {#1}%
+}%
+\def\XINT@ftcc@D #1%
+{%
+ \xint@UDzerominusfork
+ #1-\dummy \XINT@ftcc@integer
+ 0#1\dummy \XINT@ftcc@En
+ 0-\dummy {\XINT@ftcc@Ep #1}%
+ \xint@UDkrof
+}%
+\def\XINT@ftcc@Ep #1\Z #2%
+{%
+ \expandafter\XINT@ftcc@loop@a\expandafter
+ {\romannumeral0\xintdiv {1[0]}{#1}}{#2+1/}%
+}%
+\def\XINT@ftcc@En #1\Z #2%
+{%
+ \expandafter\XINT@ftcc@loop@a\expandafter
+ {\romannumeral0\xintdiv {1[0]}{#1}}{#2+-1/}%
+}%
+\def\XINT@ftcc@integer #1\Z #2{ #2}%
+\def\XINT@ftcc@loop@a #1%
+{%
+ \expandafter\XINT@ftcc@loop@b
+ \romannumeral0\xintraw {\xintAdd {1/2[0]}{#1}}\Z {#1}%
+}%
+\def\XINT@ftcc@loop@b #1/#2\Z
+{%
+ \expandafter\XINT@ftcc@loop@c\expandafter
+ {\romannumeral0\xintquo {#1}{#2}}%
+}%
+\def\XINT@ftcc@loop@c #1#2%
+{%
+ \expandafter\XINT@ftcc@loop@d
+ \romannumeral0\xintsub {#2}{#1[0]}\Z {#1}%
+}%
+\def\XINT@ftcc@loop@d #1%
+{%
+ \xint@UDzerominusfork
+ #1-\dummy \XINT@ftcc@end
+ 0#1\dummy \XINT@ftcc@loop@N
+ 0-\dummy {\XINT@ftcc@loop@P #1}%
+ \xint@UDkrof
+}%
+\def\XINT@ftcc@end #1\Z #2#3{ #3#2}%
+\def\XINT@ftcc@loop@P #1\Z #2#3%
+{%
+ \expandafter\XINT@ftcc@loop@a\expandafter
+ {\romannumeral0\xintdiv {1[0]}{#1}}{#3#2+1/}%
+}%
+\def\XINT@ftcc@loop@N #1\Z #2#3%
+{%
+ \expandafter\XINT@ftcc@loop@a\expandafter
+ {\romannumeral0\xintdiv {1[0]}{#1}}{#3#2+-1/}%
+}%
+\def\xintFtoCv {\romannumeral0\xintftocv }%
+\def\xintftocv #1%
+{%
+ \xinticstocv {\xintFtoCs {#1}}%
+}%
+\def\xintFtoCCv {\romannumeral0\xintftoccv }%
+\def\xintftoccv #1%
+{%
+ \xintigctocv {\xintFtoCC {#1}}%
+}%
+\def\xintCstoF {\romannumeral0\xintcstof }%
+\def\xintcstof #1%
+{%
+ \expandafter\expandafter\expandafter
+ \XINT@cstf@prep #1,\W,%
+}%
+\def\XINT@cstf@prep
+{%
+ \XINT@cstf@loop@a 1001%
+}%
+\def\XINT@cstf@loop@a #1#2#3#4#5,%
+{%
+ \xint@w #5\XINT@cstf@end\W\expandafter\XINT@cstf@loop@b
+ \romannumeral0\xintraw {#5}.{#1}{#2}{#3}{#4}%
+}%
+\def\XINT@cstf@loop@b #1/#2.#3#4#5#6%
+{%
+ \expandafter\XINT@cstf@loop@c\expandafter
+ {\romannumeral0\XINT@mul@fork #2\Z #4\Z }%
+ {\romannumeral0\XINT@mul@fork #2\Z #3\Z }%
+ {\romannumeral0\xintiadd {\XINT@Mul {#2}{#6}}{\XINT@Mul {#1}{#4}}}%
+ {\romannumeral0\xintiadd {\XINT@Mul {#2}{#5}}{\XINT@Mul {#1}{#3}}}%
+}%
+\def\XINT@cstf@loop@c #1#2%
+{%
+ \expandafter\XINT@cstf@loop@d\expandafter {\expandafter{#2}{#1}}%
+}%
+\def\XINT@cstf@loop@d #1#2%
+{%
+ \expandafter\XINT@cstf@loop@e\expandafter {\expandafter{#2}#1}%
+}%
+\def\XINT@cstf@loop@e #1#2%
+{%
+ \expandafter\XINT@cstf@loop@a\expandafter{#2}#1%
+}%
+\def\XINT@cstf@end #1.#2#3#4#5{\xintraw {#2/#3}[0]}%
+\def\xintiCstoF {\romannumeral0\xinticstof }%
+\def\xinticstof #1%
+{%
+ \expandafter\expandafter\expandafter
+ \XINT@icstf@prep #1,\W,%
+}%
+\def\XINT@icstf@prep
+{%
+ \XINT@icstf@loop@a 1001%
+}%
+\def\XINT@icstf@loop@a #1#2#3#4#5,%
+{%
+ \xint@w #5\XINT@icstf@end\W
+ \expandafter\expandafter\expandafter
+ \XINT@icstf@loop@b #5.{#1}{#2}{#3}{#4}%
+}%
+\def\XINT@icstf@loop@b #1.#2#3#4#5%
+{%
+ \expandafter\XINT@icstf@loop@c\expandafter
+ {\romannumeral0\xintiadd {#5}{\XINT@Mul {#1}{#3}}}%
+ {\romannumeral0\xintiadd {#4}{\XINT@Mul {#1}{#2}}}%
+ {#2}{#3}%
+}%
+\def\XINT@icstf@loop@c #1#2%
+{%
+ \expandafter\XINT@icstf@loop@a\expandafter {#2}{#1}%
+}%
+\def\XINT@icstf@end#1.#2#3#4#5{\xintraw {#2/#3}[0]}%
+\def\xintGCtoF {\romannumeral0\xintgctof }%
+\def\xintgctof #1%
+{%
+ \expandafter\expandafter\expandafter
+ \XINT@gctf@prep #1+\W/%
+}%
+\def\XINT@gctf@prep
+{%
+ \XINT@gctf@loop@a 1001%
+}%
+\def\XINT@gctf@loop@a #1#2#3#4#5+%
+{%
+ \expandafter\XINT@gctf@loop@b
+ \romannumeral0\xintraw {#5}.{#1}{#2}{#3}{#4}%
+}%
+\def\XINT@gctf@loop@b #1/#2.#3#4#5#6%
+{%
+ \expandafter\XINT@gctf@loop@c\expandafter
+ {\romannumeral0\XINT@mul@fork #2\Z #4\Z }%
+ {\romannumeral0\XINT@mul@fork #2\Z #3\Z }%
+ {\romannumeral0\xintiadd {\XINT@Mul {#2}{#6}}{\XINT@Mul {#1}{#4}}}%
+ {\romannumeral0\xintiadd {\XINT@Mul {#2}{#5}}{\XINT@Mul {#1}{#3}}}%
+}%
+\def\XINT@gctf@loop@c #1#2%
+{%
+ \expandafter\XINT@gctf@loop@d\expandafter {\expandafter{#2}{#1}}%
+}%
+\def\XINT@gctf@loop@d #1#2%
+{%
+ \expandafter\XINT@gctf@loop@e\expandafter {\expandafter{#2}#1}%
+}%
+\def\XINT@gctf@loop@e #1#2%
+{%
+ \expandafter\XINT@gctf@loop@f\expandafter {\expandafter{#2}#1}%
+}%
+\def\XINT@gctf@loop@f #1#2/%
+{%
+ \xint@w #2\XINT@gctf@end\W\expandafter\XINT@gctf@loop@g
+ \romannumeral0\xintraw {#2}.#1%
+}%
+\def\XINT@gctf@loop@g #1/#2.#3#4#5#6%
+{%
+ \expandafter\XINT@gctf@loop@h\expandafter
+ {\romannumeral0\XINT@mul@fork #1\Z #6\Z }%
+ {\romannumeral0\XINT@mul@fork #1\Z #5\Z }%
+ {\romannumeral0\XINT@mul@fork #2\Z #4\Z }%
+ {\romannumeral0\XINT@mul@fork #2\Z #3\Z }%
+}%
+\def\XINT@gctf@loop@h #1#2%
+{%
+ \expandafter\XINT@gctf@loop@i\expandafter {\expandafter{#2}{#1}}%
+}%
+\def\XINT@gctf@loop@i #1#2%
+{%
+ \expandafter\XINT@gctf@loop@j\expandafter {\expandafter{#2}#1}%
+}%
+\def\XINT@gctf@loop@j #1#2%
+{%
+ \expandafter\XINT@gctf@loop@a\expandafter {#2}#1%
+}%
+\def\XINT@gctf@end #1.#2#3#4#5{\xintraw {#2/#3}[0]}%
+\def\xintiGCtoF {\romannumeral0\xintigctof }%
+\def\xintigctof #1%
+{%
+ \expandafter\expandafter\expandafter
+ \XINT@igctf@prep #1+\W/%
+}%
+\def\XINT@igctf@prep
+{%
+ \XINT@igctf@loop@a 1001%
+}%
+\def\XINT@igctf@loop@a #1#2#3#4#5+%
+{%
+ \expandafter\expandafter\expandafter\XINT@igctf@loop@b
+ #5.{#1}{#2}{#3}{#4}%
+}%
+\def\XINT@igctf@loop@b #1.#2#3#4#5%
+{%
+ \expandafter\XINT@igctf@loop@c\expandafter
+ {\romannumeral0\xintiadd {#5}{\XINT@Mul {#1}{#3}}}%
+ {\romannumeral0\xintiadd {#4}{\XINT@Mul {#1}{#2}}}%
+ {#2}{#3}%
+}%
+\def\XINT@igctf@loop@c #1#2%
+{%
+ \expandafter\XINT@igctf@loop@f\expandafter {\expandafter{#2}{#1}}%
+}%
+\def\XINT@igctf@loop@f #1#2#3#4/%
+{%
+ \xint@w #4\XINT@igctf@end\W
+ \expandafter\expandafter\expandafter\XINT@igctf@loop@g
+ #4.{#2}{#3}#1%
+}%
+\def\XINT@igctf@loop@g #1.#2#3%
+{%
+ \expandafter\XINT@igctf@loop@h\expandafter
+ {\romannumeral0\XINT@mul@fork #1\Z #3\Z }%
+ {\romannumeral0\XINT@mul@fork #1\Z #2\Z }%
+}%
+\def\XINT@igctf@loop@h #1#2%
+{%
+ \expandafter\XINT@igctf@loop@i\expandafter {#2}{#1}%
+}%
+\def\XINT@igctf@loop@i #1#2#3#4%
+{%
+ \XINT@igctf@loop@a {#3}{#4}{#1}{#2}%
+}%
+\def\XINT@igctf@end #1.#2#3#4#5{\xintraw {#4/#5}[0]}%
+\def\xintCstoCv {\romannumeral0\xintcstocv }%
+\def\xintcstocv #1%
+{%
+ \expandafter\expandafter\expandafter
+ \XINT@cstcv@prep #1,\W,%
+}%
+\def\XINT@cstcv@prep
+{%
+ \XINT@cstcv@loop@a {}1001%
+}%
+\def\XINT@cstcv@loop@a #1#2#3#4#5#6,%
+{%
+ \xint@w #6\XINT@cstcv@end\W
+ \expandafter\XINT@cstcv@loop@b
+ \romannumeral0\xintraw {#6}.{#2}{#3}{#4}{#5}{#1}%
+}%
+\def\XINT@cstcv@loop@b #1/#2.#3#4#5#6%
+{%
+ \expandafter\XINT@cstcv@loop@c\expandafter
+ {\romannumeral0\XINT@mul@fork #2\Z #4\Z }%
+ {\romannumeral0\XINT@mul@fork #2\Z #3\Z }%
+ {\romannumeral0\xintiadd {\XINT@Mul {#2}{#6}}{\XINT@Mul {#1}{#4}}}%
+ {\romannumeral0\xintiadd {\XINT@Mul {#2}{#5}}{\XINT@Mul {#1}{#3}}}%
+}%
+\def\XINT@cstcv@loop@c #1#2%
+{%
+ \expandafter\XINT@cstcv@loop@d\expandafter {\expandafter{#2}{#1}}%
+}%
+\def\XINT@cstcv@loop@d #1#2%
+{%
+ \expandafter\XINT@cstcv@loop@e\expandafter {\expandafter{#2}#1}%
+}%
+\def\XINT@cstcv@loop@e #1#2%
+{%
+ \expandafter\XINT@cstcv@loop@f\expandafter{#2}#1%
+}%
+\def\XINT@cstcv@loop@f #1#2#3#4#5%
+{%
+ \expandafter\XINT@cstcv@loop@g\expandafter
+ {\romannumeral0\xintraw {#1/#2}}{#5}{#1}{#2}{#3}{#4}%
+}%
+\def\XINT@cstcv@loop@g #1#2{\XINT@cstcv@loop@a {#2{#1[0]}}}%
+\def\XINT@cstcv@end #1.#2#3#4#5#6{ #6}%
+\def\xintiCstoCv {\romannumeral0\xinticstocv }%
+\def\xinticstocv #1%
+{%
+ \expandafter\expandafter\expandafter
+ \XINT@icstcv@prep #1,\W,%
+}%
+\def\XINT@icstcv@prep
+{%
+ \XINT@icstcv@loop@a {}1001%
+}%
+\def\XINT@icstcv@loop@a #1#2#3#4#5#6,%
+{%
+ \xint@w #6\XINT@icstcv@end\W
+ \expandafter\expandafter\expandafter
+ \XINT@icstcv@loop@b #6.{#2}{#3}{#4}{#5}{#1}%
+}%
+\def\XINT@icstcv@loop@b #1.#2#3#4#5%
+{%
+ \expandafter\XINT@icstcv@loop@c\expandafter
+ {\romannumeral0\xintiadd {#5}{\XINT@Mul {#1}{#3}}}%
+ {\romannumeral0\xintiadd {#4}{\XINT@Mul {#1}{#2}}}%
+ {{#2}{#3}}%
+}%
+\def\XINT@icstcv@loop@c #1#2%
+{%
+ \expandafter\XINT@icstcv@loop@d\expandafter {#2}{#1}%
+}%
+\def\XINT@icstcv@loop@d #1#2%
+{%
+ \expandafter\XINT@icstcv@loop@e\expandafter
+ {\romannumeral0\xintraw {#1/#2}}{{#1}{#2}}%
+}%
+\def\XINT@icstcv@loop@e #1#2#3#4{\XINT@icstcv@loop@a {#4{#1[0]}}#2#3}%
+\def\XINT@icstcv@end #1.#2#3#4#5#6{ #6}%
+\def\xintGCtoCv {\romannumeral0\xintgctocv }%
+\def\xintgctocv #1%
+{%
+ \expandafter\expandafter\expandafter
+ \XINT@gctcv@prep #1+\W/%
+}%
+\def\XINT@gctcv@prep
+{%
+ \XINT@gctcv@loop@a {}1001%
+}%
+\def\XINT@gctcv@loop@a #1#2#3#4#5#6+%
+{%
+ \expandafter\XINT@gctcv@loop@b
+ \romannumeral0\xintraw {#6}.{#2}{#3}{#4}{#5}{#1}%
+}%
+\def\XINT@gctcv@loop@b #1/#2.#3#4#5#6%
+{%
+ \expandafter\XINT@gctcv@loop@c\expandafter
+ {\romannumeral0\XINT@mul@fork #2\Z #4\Z }%
+ {\romannumeral0\XINT@mul@fork #2\Z #3\Z }%
+ {\romannumeral0\xintiadd {\XINT@Mul {#2}{#6}}{\XINT@Mul {#1}{#4}}}%
+ {\romannumeral0\xintiadd {\XINT@Mul {#2}{#5}}{\XINT@Mul {#1}{#3}}}%
+}%
+\def\XINT@gctcv@loop@c #1#2%
+{%
+ \expandafter\XINT@gctcv@loop@d\expandafter {\expandafter{#2}{#1}}%
+}%
+\def\XINT@gctcv@loop@d #1#2%
+{%
+ \expandafter\XINT@gctcv@loop@e\expandafter {\expandafter{#2}{#1}}%
+}%
+\def\XINT@gctcv@loop@e #1#2%
+{%
+ \expandafter\XINT@gctcv@loop@f\expandafter {#2}#1%
+}%
+\def\XINT@gctcv@loop@f #1#2%
+{%
+ \expandafter\XINT@gctcv@loop@g\expandafter
+ {\romannumeral0\xintraw {#1/#2}}{{#1}{#2}}%
+}%
+\def\XINT@gctcv@loop@g #1#2#3#4%
+{%
+ \XINT@gctcv@loop@h {#4{#1[0]}}{#2#3}%
+}%
+\def\XINT@gctcv@loop@h #1#2#3/%
+{%
+ \xint@w #3\XINT@gctcv@end\W\expandafter\XINT@gctcv@loop@i
+ \romannumeral0\xintraw {#3}.#2{#1}%
+}%
+\def\XINT@gctcv@loop@i #1/#2.#3#4#5#6%
+{%
+ \expandafter\XINT@gctcv@loop@j\expandafter
+ {\romannumeral0\XINT@mul@fork #1\Z #6\Z }%
+ {\romannumeral0\XINT@mul@fork #1\Z #5\Z }%
+ {\romannumeral0\XINT@mul@fork #2\Z #4\Z }%
+ {\romannumeral0\XINT@mul@fork #2\Z #3\Z }%
+}%
+\def\XINT@gctcv@loop@j #1#2%
+{%
+ \expandafter\XINT@gctcv@loop@k\expandafter {\expandafter{#2}{#1}}%
+}%
+\def\XINT@gctcv@loop@k #1#2%
+{%
+ \expandafter\XINT@gctcv@loop@l\expandafter {\expandafter{#2}#1}%
+}%
+\def\XINT@gctcv@loop@l #1#2%
+{%
+ \expandafter\XINT@gctcv@loop@m\expandafter {\expandafter{#2}#1}%
+}%
+\def\XINT@gctcv@loop@m #1#2{\XINT@gctcv@loop@a {#2}#1}%
+\def\XINT@gctcv@end #1.#2#3#4#5#6{ #6}%
+\def\xintiGCtoCv {\romannumeral0\xintigctocv }%
+\def\xintigctocv #1%
+{%
+ \expandafter\expandafter\expandafter
+ \XINT@igctcv@prep #1+\W/%
+}%
+\def\XINT@igctcv@prep
+{%
+ \XINT@igctcv@loop@a {}1001%
+}%
+\def\XINT@igctcv@loop@a #1#2#3#4#5#6+%
+{%
+ \expandafter\expandafter\expandafter\XINT@igctcv@loop@b
+ #6.{#2}{#3}{#4}{#5}{#1}%
+}%
+\def\XINT@igctcv@loop@b #1.#2#3#4#5%
+{%
+ \expandafter\XINT@igctcv@loop@c\expandafter
+ {\romannumeral0\xintiadd {#5}{\XINT@Mul {#1}{#3}}}%
+ {\romannumeral0\xintiadd {#4}{\XINT@Mul {#1}{#2}}}%
+ {{#2}{#3}}%
+}%
+\def\XINT@igctcv@loop@c #1#2%
+{%
+ \expandafter\XINT@igctcv@loop@f\expandafter {\expandafter{#2}{#1}}%
+}%
+\def\XINT@igctcv@loop@f #1#2#3#4/%
+{%
+ \xint@w #4\XINT@igctcv@end@a\W
+ \expandafter\expandafter\expandafter\XINT@igctcv@loop@g
+ #4.#1#2{#3}%
+}%
+\def\XINT@igctcv@loop@g #1.#2#3#4#5%
+{%
+ \expandafter\XINT@igctcv@loop@h\expandafter
+ {\romannumeral0\XINT@mul@fork #1\Z #5\Z }%
+ {\romannumeral0\XINT@mul@fork #1\Z #4\Z }%
+ {{#2}{#3}}%
+}%
+\def\XINT@igctcv@loop@h #1#2%
+{%
+ \expandafter\XINT@igctcv@loop@i\expandafter {\expandafter{#2}{#1}}%
+}%
+\def\XINT@igctcv@loop@i #1#2{\XINT@igctcv@loop@k #2{#2#1}}%
+\def\XINT@igctcv@loop@k #1#2%
+{%
+ \expandafter\XINT@igctcv@loop@l\expandafter
+ {\romannumeral0\xintraw {#1/#2}}%
+}%
+\def\XINT@igctcv@loop@l #1#2#3{\XINT@igctcv@loop@a {#3{#1[0]}}#2}%
+\def\XINT@igctcv@end@a #1.#2#3#4#5%
+{%
+ \expandafter\XINT@igctcv@end@b\expandafter
+ {\romannumeral0\xintraw {#2/#3}}%
+}%
+\def\XINT@igctcv@end@b #1#2{ #2{#1[0]}}%
+\def\xintCntoF {\romannumeral0\xintcntof }%
+\def\xintcntof #1%
+{%
+ \expandafter\expandafter\expandafter
+ \XINT@cntf
+ \expandafter\expandafter\expandafter
+ {#1}%
+}%
+\def\XINT@cntf #1#2%
+{%
+ \ifnum #1>0
+ \xint@afterfi {\expandafter\XINT@cntf@loop\expandafter
+ {\the\numexpr
+ #1-1\expandafter\expandafter\expandafter}%
+ \expandafter\expandafter\expandafter
+ {#2{#1}}{#2}}%
+ \else
+ \xint@afterfi
+ {\ifnum #1=0
+ \xint@afterfi {\expandafter\expandafter\expandafter
+ \space #2{0}}%
+ \else \xint@afterfi { 0[0]}%
+ \fi}%
+ \fi
+}%
+\def\XINT@cntf@loop #1#2#3%
+{%
+ \ifnum #1>0 \else \XINT@cntf@exit \fi
+ \expandafter\XINT@cntf@loop\expandafter
+ {\the\numexpr #1-1\expandafter }\expandafter
+ {\romannumeral0\xintadd {\xintDiv {1[0]}{#2}}{#3{#1}}}%
+ {#3}%
+}%
+\def\XINT@cntf@exit \fi
+ \expandafter\XINT@cntf@loop\expandafter
+ #1\expandafter #2#3%
+{%
+ \fi\xint@gobble@two #2%
+}%
+\def\xintGCntoF {\romannumeral0\xintgcntof }%
+\def\xintgcntof #1%
+{%
+ \expandafter\expandafter\expandafter
+ \XINT@gcntf
+ \expandafter\expandafter\expandafter
+ {#1}%
+}%
+\def\XINT@gcntf #1#2#3%
+{%
+ \ifnum #1>0
+ \xint@afterfi {\expandafter\XINT@gcntf@loop\expandafter
+ {\the\numexpr
+ #1-1\expandafter\expandafter\expandafter}%
+ \expandafter\expandafter\expandafter
+ {#2{#1}}{#2}{#3}}%
+ \else
+ \xint@afterfi
+ {\ifnum #1=0
+ \xint@afterfi {\expandafter\expandafter\expandafter
+ \space #2{0}}%
+ \else \xint@afterfi { 0[0]}%
+ \fi}%
+ \fi
+}%
+\def\XINT@gcntf@loop #1#2#3#4%
+{%
+ \ifnum #1>0 \else \XINT@gcntf@exit \fi
+ \expandafter\XINT@gcntf@loop\expandafter
+ {\the\numexpr #1-1\expandafter }\expandafter
+ {\romannumeral0\xintadd {\xintDiv {#4{#1}}{#2}}{#3{#1}}}%
+ {#3}{#4}%
+}%
+\def\XINT@gcntf@exit \fi
+ \expandafter\XINT@gcntf@loop\expandafter
+ #1\expandafter #2#3#4%
+{%
+ \fi\xint@gobble@two #2%
+}%
+\def\xintCntoCs {\romannumeral0\xintcntocs }%
+\def\xintcntocs #1%
+{%
+ \expandafter\expandafter\expandafter
+ \XINT@cntcs
+ \expandafter\expandafter\expandafter
+ {#1}%
+}%
+\def\XINT@cntcs #1#2%
+{%
+ \ifnum #1<0
+ \xint@afterfi { 0[0]}%
+ \else
+ \xint@afterfi {\expandafter\XINT@cntcs@loop\expandafter
+ {\the\numexpr
+ #1-1\expandafter\expandafter\expandafter}%
+ \expandafter\expandafter\expandafter
+ {\expandafter\expandafter\expandafter
+ {#2{#1}}}{#2}}%
+ \fi
+}%
+\def\XINT@cntcs@loop #1#2#3%
+{%
+ \ifnum #1>-1 \else \XINT@cntcs@exit \fi
+ \expandafter\XINT@cntcs@loop\expandafter
+ {\the\numexpr #1-1\expandafter\expandafter\expandafter }%
+ \expandafter\expandafter\expandafter
+ {\expandafter\expandafter\expandafter{#3{#1}},#2}{#3}%
+}%
+\def\XINT@cntcs@exit \fi
+ \expandafter\XINT@cntcs@loop\expandafter
+ #1\expandafter\expandafter\expandafter #2#3%
+{%
+ \fi\XINT@cntcs@@exit #2%
+}%
+\def\XINT@cntcs@@exit #1,{ }%
+\def\xintCntoGC {\romannumeral0\xintcntogc }%
+\def\xintcntogc #1%
+{%
+ \expandafter\expandafter\expandafter
+ \XINT@cntgc
+ \expandafter\expandafter\expandafter
+ {#1}%
+}%
+\def\XINT@cntgc #1#2%
+{%
+ \ifnum #1<0
+ \xint@afterfi { 0[0]}%
+ \else
+ \xint@afterfi {\expandafter\XINT@cntgc@loop\expandafter
+ {\the\numexpr
+ #1-1\expandafter\expandafter\expandafter}%
+ \expandafter\expandafter\expandafter
+ {\expandafter\expandafter\expandafter
+ {#2{#1}}}{#2}}%
+ \fi
+}%
+\def\XINT@cntgc@loop #1#2#3%
+{%
+ \ifnum #1>-1 \else \XINT@cntgc@exit \fi
+ \expandafter\XINT@cntgc@loop\expandafter
+ {\the\numexpr #1-1\expandafter\expandafter\expandafter }%
+ \expandafter\expandafter\expandafter
+ {\expandafter\expandafter\expandafter{#3{#1}}+1/#2}{#3}%
+}%
+\def\XINT@cntgc@exit \fi
+ \expandafter\XINT@cntgc@loop\expandafter
+ #1\expandafter\expandafter\expandafter #2#3%
+{%
+ \fi\XINT@cntgc@@exit #2%
+}%
+\def\XINT@cntgc@@exit #1+1/{ }%
+\def\xintGCntoGC {\romannumeral0\xintgcntogc }%
+\def\xintgcntogc #1%
+{%
+ \expandafter\expandafter\expandafter
+ \XINT@gcntgc
+ \expandafter\expandafter\expandafter
+ {#1}%
+}%
+\def\XINT@gcntgc #1#2#3%
+{%
+ \ifnum #1<0
+ \xint@afterfi { {0[0]}}%
+ \else
+ \xint@afterfi {\expandafter\XINT@gcntgc@loop\expandafter
+ {\the\numexpr
+ #1-1\expandafter\expandafter\expandafter}%
+ \expandafter\expandafter\expandafter
+ {\expandafter\expandafter\expandafter
+ {#2{#1}}}{#2}{#3}}%
+ \fi
+}%
+\def\XINT@gcntgc@loop #1#2#3#4%
+{%
+ \ifnum #1>-1 \else \XINT@gcntgc@exit \fi
+ \expandafter\expandafter\expandafter
+ \XINT@gcntgc@loop@b
+ \expandafter\expandafter\expandafter
+ {\expandafter\expandafter\expandafter
+ {#4{#1}}/#2}{#3{#1}}{#1}{#3}{#4}%
+}%
+\def\XINT@gcntgc@loop@b #1#2#3%
+{%
+ \expandafter\XINT@gcntgc@loop\expandafter
+ {\the\numexpr #3-1\expandafter\expandafter\expandafter}%
+ \expandafter\expandafter\expandafter
+ {\expandafter\expandafter\expandafter{#2}+#1}%
+}%
+\def\XINT@gcntgc@exit \fi
+ \expandafter\expandafter\expandafter
+ \XINT@gcntgc@loop@b
+ \expandafter\expandafter\expandafter #1#2#3#4#5%
+{%
+ \fi\XINT@gcntgc@@exit #1%
+}%
+\def\XINT@gcntgc@@exit #1/{ }%
+\def\xintCstoGC {\romannumeral0\xintcstogc }%
+\def\xintcstogc #1%
+{%
+ \expandafter\expandafter\expandafter
+ \XINT@cstc@prep #1,\W,%
+}%
+\def\XINT@cstc@prep #1,{\XINT@cstc@loop@a {{#1}}}%
+\def\XINT@cstc@loop@a #1#2,%
+{%
+ \xint@w #2\XINT@cstc@end\W\XINT@cstc@loop@b {#1}{#2}%
+}%
+\def\XINT@cstc@loop@b #1#2{\XINT@cstc@loop@a {#1+1/{#2}}}%
+\def\XINT@cstc@end\W\XINT@cstc@loop@b #1#2{ #1}%
+\def\xintGCtoGC {\romannumeral0\xintgctogc }%
+\def\xintgctogc #1%
+{%
+ \expandafter\expandafter\expandafter
+ \XINT@gctgc@start #1+\W/%
+}%
+\def\XINT@gctgc@start {\XINT@gctgc@loop@a {}}%
+\def\XINT@gctgc@loop@a #1#2+#3/%
+{%
+ \xint@w #3\XINT@gctgc@end\W
+ \expandafter\expandafter\expandafter
+ \XINT@gctgc@loop@b
+ \expandafter\expandafter\expandafter
+ {#2}{#3}{#1}%
+}%
+\def\XINT@gctgc@loop@b #1#2%
+{%
+ \expandafter\expandafter\expandafter
+ \XINT@gctgc@loop@c
+ \expandafter\expandafter\expandafter
+ {#2}{#1}%
+}%
+\def\XINT@gctgc@loop@c #1#2#3%
+{%
+ \XINT@gctgc@loop@a {#3{#2}+{#1}/}%
+}%
+\def\XINT@gctgc@end\W
+ \expandafter\expandafter\expandafter\XINT@gctgc@loop@b
+{%
+ \expandafter\expandafter\expandafter\XINT@gctgc@@end
+}%
+\def\XINT@gctgc@@end #1#2#3{ #3{#1}}%
+\XINT@cfrac@restorecatcodes@endinput%
+\endinput
+%%
+%% End of file `xintcfrac.sty'.