summaryrefslogtreecommitdiff
path: root/Master
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2006-01-13 00:40:05 +0000
committerKarl Berry <karl@freefriends.org>2006-01-13 00:40:05 +0000
commit5c2154214afee3119a591c6a9f9447a652d2ef4c (patch)
tree491bffcd0eff2d5c1b2a321fbee6d0db2d201e9b /Master
parent661380740cba9728be71d20fc9de02348db3c811 (diff)
ltxmisc
git-svn-id: svn://tug.org/texlive/trunk@1476 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master')
-rw-r--r--Master/texmf-dist/tex/latex/ltxmisc/askinclude.sty103
-rw-r--r--Master/texmf-dist/tex/latex/ltxmisc/cancel.sty174
-rw-r--r--Master/texmf-dist/tex/latex/ltxmisc/capt-of.sty30
-rw-r--r--Master/texmf-dist/tex/latex/ltxmisc/cases.sty187
-rw-r--r--Master/texmf-dist/tex/latex/ltxmisc/chappg.sty191
-rw-r--r--Master/texmf-dist/tex/latex/ltxmisc/endnotes.sty417
-rw-r--r--Master/texmf-dist/tex/latex/ltxmisc/flashcard.cls177
-rw-r--r--Master/texmf-dist/tex/latex/ltxmisc/ftcap.sty75
-rw-r--r--Master/texmf-dist/tex/latex/ltxmisc/ifmtarg.sty66
-rw-r--r--Master/texmf-dist/tex/latex/ltxmisc/mitpress.sty33
-rw-r--r--Master/texmf-dist/tex/latex/ltxmisc/morefloats.sty51
-rw-r--r--Master/texmf-dist/tex/latex/ltxmisc/nextpage.sty54
-rw-r--r--Master/texmf-dist/tex/latex/ltxmisc/notoccite.sty43
13 files changed, 1601 insertions, 0 deletions
diff --git a/Master/texmf-dist/tex/latex/ltxmisc/askinclude.sty b/Master/texmf-dist/tex/latex/ltxmisc/askinclude.sty
new file mode 100644
index 00000000000..c4a6ffb617c
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/ltxmisc/askinclude.sty
@@ -0,0 +1,103 @@
+% askinclude.sty - interactive asking of included files
+%
+% VERSION 1.2e November 11, 1994
+%
+% (c) 1991 by Pablo A. Straub. Permission is granted to copy and use this
+% in any way and for any purpose, except direct commercial advantage,
+% provided that you retain this copyright notice.
+%
+% HISTORY
+%
+% 0.95 11/05/91 First beta-test version (asked two questions)
+% 0.99 11/05/91 Second beta-test version (asks one question; uses * and -.)
+% 1.0 11/07/91 Changed prompts (sent to comp.text.tex)
+% 1.2e 11/02/94 Two small changes to run under LaTeX2e [RF];
+% additional documentation [TRS]
+%
+% Please send enhancements and corrections to straub@cs.umd.edu.
+%
+% USAGE
+%
+% Here's an example root file (see pp.72--74 in the LaTeX book):
+%
+% % File: main.tex
+% %
+% \documentclass[...]{book}
+% \usepackage{askinclude}
+% % ^^^^^^^^^^
+% % Initialization:
+% \input{preamble}
+% %
+% \begin{document}
+% %
+% % Title page:
+% \include{titlepg}
+% %
+% % Chapters:
+% \include{chapter0}
+% \include{chapter1}
+% \include{chapter2}
+% ...
+% %
+% \end{document}
+%
+% Each \include causes a page break and so askinclude probably only makes
+% sense in the context of larger documents such as books.
+%
+% HOW IT WORKS
+%
+% The askinclude package asks the user which files to include. If
+% the user presses return, the files from the previous run are included
+% automatically (except on the first run, in which case all files are
+% included); if the answer is * all files are included; if the answer
+% is - no files are included; otherwise the specified files (separated
+% by commas, with no embedded spaces) are included.
+%
+% RESTRICTIONS
+%
+% This file redefines \document, the command executed with \begin{document}.
+% It may be incompatible with other styles that also redefine \document.
+%
+% The user's input is not validated. Anything that is not a * or a - or an
+% empty line is passed to \includeonly.
+%
+% ACKNOWLEDGEMENT
+%
+% Tom Scavo (scavo@cie.uoregon.edu) suggested saving the include file list
+% from the previous run and a simplified user interface.
+
+
+\def\@includeonly{\@gobble} % assume we do not include from last run
+\def\@inputs{*} % assume all files included
+
+% determine which files to include
+
+\def\@star{*} % constant for comparison purposes
+\def\@minussign{-} % " " " "
+
+\typeout { }
+\typeout {Enter file(s) to include (separated by commas and no spaces),}
+\typeout {or enter * for all files, or enter - for none, or}
+\typein [\inputfiles]{press Return if this run is the same as the last.}
+
+\ifx\inputfiles\@star % all files included
+ % do nothing
+\else \ifx\inputfiles\@minussign % no files included
+ \includeonly{}
+ \def\@inputs{}
+\else \ifx\inputfiles\empty % include according to previous run
+ \def\@includeonly#1{%
+ \gdef\@inputs{#1}
+ \ifx\@inputs\@star \else \global\@partswtrue\global\edef\@partlist{#1}\fi}
+\else
+ \def\@inputs{\inputfiles} % include these files
+ \includeonly{\inputfiles}
+\fi\fi\fi
+
+
+\AtBeginDocument{\if@filesw
+ \immediate\write\@mainaux{\string\@includeonly\string{\@inputs
+ \string}}%
+ \def\@includeonly{}\fi}
+
+% END OF FILE askinclude.sty
diff --git a/Master/texmf-dist/tex/latex/ltxmisc/cancel.sty b/Master/texmf-dist/tex/latex/ltxmisc/cancel.sty
new file mode 100644
index 00000000000..0aac2f61a0b
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/ltxmisc/cancel.sty
@@ -0,0 +1,174 @@
+% cancel.sty version 2.1 12-Mar-2000.
+% Donald Arseneau asnd@triumf.ca
+% I contribute this software to the public domain. No rights reserved.
+%
+% Commands:
+% ~~~~~~~~~
+% \cancel draws a diagonal line (slash) through its argument.
+% \bcancel uses the negative slope (a backslash).
+% \xcancel draws an X (actually \cancel plus \bcancel).
+% \cancelto{<value>}{<expression>} draws a diagonal arrow through the
+% expression, pointing to the value.
+%
+% The first three work in math and text mode, but \cancelto is only
+% for math mode.
+% The slope of the line or arrow depends on what is being cancelled.
+%
+% Options:
+% ~~~~~~~~
+% Bt default, none of these commands affects the horizontal spacing,
+% so they might over-print neighboring parts of the formula (or text).
+% They do add their height to the expression, so there should never be
+% unintended vertical overlap. There is a package option [makeroom] to
+% increase the horizontal spacing to make room for the cancellation value.
+%
+% If you use the color package, then you can declare
+% \renewcommand{\CancelColor}{<color_command>}
+% and the cancellation marks will be printed in that color (e.g., \blue).
+% However, if you are using color, I recommend lightly shaded blocks rather
+% than diagonal arrows for cancelling.
+%
+% The option [thicklines] asks for heavier lines and arrows. This may be
+% useful when the lines are colored a light shade.
+%
+% The size (math style) of the \cancelto value depends on package options
+% according to this table:
+%
+% Current style [samesize] [smaller] [Smaller]
+% ------------- ---------------- ---------------- ----------------
+% \displaystyle \displaystyle \textstyle \scriptstyle
+% \textstyle \textstyle \scriptstyle \scriptstyle
+% \scriptstyle \scriptstyle \scriptscriptstyle \scriptscriptstyle
+% \scriptscriptstyle \scriptscriptstyle \scriptscriptstyle \scriptscriptstyle
+%
+% ("smaller" is the default behavior. It gives textstyle limits in
+% displaystyle, whereas "Smaller" gives scriptstyle limits.)
+%
+% This package is provided without guarantees or support. Drawing slashes
+% through math to indicate "cancellation" is poor design. I don't recommend
+% that you use this package at all.
+
+\ProvidesPackage{cancel}[2000/03/12 v2.1 Cancel math terms]
+
+\newcommand{\CancelColor}{}
+\newcommand{\cancelto}{1}% default option = smaller
+\let\canto@fil\hidewidth
+\let\canc@thinlines\thinlines
+
+\DeclareOption{samesize}{\def\cancelto{999}}
+\DeclareOption{smaller}{\def\cancelto{1}}
+\DeclareOption{Smaller}{\def\cancelto{0}}
+\DeclareOption{makeroom}{\def\canto@fil{\hfil}}
+\DeclareOption{overlap}{\let\canto@fil\hidewidth}
+\DeclareOption{thicklines}{\let\canc@thinlines\thicklines}
+
+\ProcessOptions
+
+\DeclareRobustCommand\cancel[1]{\ifmmode
+ \mathpalette{\@cancel{\@can@slash{}}}{#1}\else
+ \@cancel{\@can@slash{}}\hbox{#1}\fi}
+\DeclareRobustCommand\bcancel[1]{\ifmmode
+ \mathpalette{\@cancel{\@can@slash{-}}}{#1}\else
+ \@cancel{\@can@slash{-}}\hbox{#1}\fi}
+\DeclareRobustCommand\xcancel[1]{\ifmmode
+ \mathpalette{\@cancel{\@can@slash{+}\@can@slash{-}}}{#1}\else
+ \@cancel{\@can@slash{+}\@can@slash{-}}\hbox{#1}\fi}
+
+\newcommand\@cancel[3]{%
+\@begin@tempboxa\hbox{\m@th$#2{#3}$}%
+\dimen@\height
+\setbox\@tempboxa\hbox{$\m@th\vcenter{\box\@tempboxa}$}%
+\advance\dimen@-\height % the difference in height
+\unitlength\p@ \canc@thinlines
+{\/\raise\dimen@\hbox{\ooalign{#1\hfil\box\@tempboxa\hfil \cr}}}%
+\@end@tempboxa
+}
+
+\def\@can@slash#1{\canto@fil$\m@th \CancelColor\vcenter{\hbox{%
+\dimen@\width \@min@pt\dimen@ 2\@min@pt\totalheight6%
+\ifdim\totalheight<\dimen@ % wide
+ \@min@pt\dimen@ 8%
+ \@tempcnta\totalheight \multiply\@tempcnta 5 \divide\@tempcnta\dimen@
+ \advance\dimen@ 2\p@ % "+2"
+ \edef\@tempa{(\ifcase\@tempcnta 6,#11\or 4,#11\or 2,#11\or 4,#13\else 1,#11\fi
+ ){\strip@pt\dimen@}}%
+\else % tall
+ \@min@pt\totalheight8%
+ \advance\totalheight2\p@ % "+2"
+ \@tempcnta\dimen@ \multiply\@tempcnta 5 \divide\@tempcnta\totalheight
+ \dimen@ \ifcase\@tempcnta .16\or .25\or .5\or .75\else 1\fi \totalheight
+ \edef\@tempa{(\ifcase\@tempcnta 1,#16\or 1,#14\or 1,#12\or 3,#14\else 1,#11\fi
+ ){\strip@pt\dimen@}}%
+\fi
+\expandafter\line\@tempa}}$\canto@fil \cr}
+
+\ifcase\cancelto
+ \def\cancelto#1#2{\mathchoice % Smaller option
+ {\@cancelto\scriptstyle{#1}\displaystyle{#2}}%
+ {\@cancelto\scriptstyle{#1}\textstyle{#2}}%
+ {\@cancelto\scriptscriptstyle{#1}\scriptstyle{#2}}%
+ {\@cancelto\scriptscriptstyle{#1}\scriptscriptstyle{#2}}%
+ }
+\or
+ \def\cancelto#1#2{\mathchoice % smaller option (default)
+ {\@cancelto\textstyle{#1}\displaystyle{#2}}%
+ {\@cancelto\scriptstyle{#1}\textstyle{#2}}%
+ {\@cancelto\scriptscriptstyle{#1}\scriptstyle{#2}}%
+ {\@cancelto\scriptscriptstyle{#1}\scriptscriptstyle{#2}}%
+ }
+\else
+ \def\cancelto#1#2{\mathchoice % samesize option
+ {\@cancelto\textstyle{#1}\displaystyle{#2}}%
+ {\@cancelto\textstyle{#1}\textstyle{#2}}%
+ {\@cancelto\scriptstyle{#1}\scriptstyle{#2}}%
+ {\@cancelto\scriptscriptstyle{#1}\scriptscriptstyle{#2}}%
+ }
+\fi
+
+\newcommand\@cancelto[4]{%
+\@begin@tempboxa\hbox{\m@th$#3{#4}$}%
+\dimen@\width % wide
+\@min@pt\dimen@ 2\@min@pt\totalheight4
+\ifdim\totalheight<\dimen@
+ \@tempcnta\totalheight \multiply\@tempcnta 5 \divide\@tempcnta\dimen@
+ \@tempdimb 3\p@ % extra width for arrowhead ("+2")
+ \advance\dimen@ \ifcase\@tempcnta 5\or 5\or 4\or 3\else 2\fi \p@
+ \@min@pt\dimen@9\advance\dimen@\p@
+ \edef\@tempa{\ifcase\@tempcnta 5441\or 5441\or 5421\or 4443\else 3611\fi
+ {\strip@pt\dimen@}{\strip@pt\@tempdimb}}%
+ \def\@tempb{Cancel #4 to #2; case wide }%
+\else % tall
+ \advance\totalheight3\p@ % "+2"
+ \@tempcnta\dimen@ \multiply\@tempcnta 5 \divide\@tempcnta\totalheight
+ \advance\totalheight3\p@ % "+2"
+ \dimen@ \ifcase\@tempcnta .25\or .25\or .5\or .75\else 1\fi \totalheight
+ \@tempdimb \ifcase\@tempcnta .8\or .8\or 1.2\or 1.5\else 2\fi \p@
+ \edef\@tempa{\ifcase\@tempcnta 0814\or 0814\or 1812\or 2734\else 3611\fi
+ {\strip@pt\dimen@}{\strip@pt\@tempdimb}}%
+\fi
+\dimen@\height
+\setbox\@tempboxa\hbox{$\m@th\vcenter{\box\@tempboxa}$}%
+\advance\dimen@-\height % the difference in height
+\unitlength\p@ \canc@thinlines
+{\/\raise\dimen@\hbox{\expandafter\canto@vector\@tempa{#1}{#2}}}%
+\@end@tempboxa
+}
+
+% #1, #2 offset of label #6 extra width to clear arrowhead
+% #3, #4 vector direction #7 superscript label style
+% #5 vector width #8 superscript label
+\def\canto@vector#1#2#3#4#5#6#7#8{%
+ \dimen@.5\p@
+ \setbox\z@\vbox{\boxmaxdepth.5\p@
+ \hbox{\kern-1.2\p@\kern#1\dimen@$#7{#8}\m@th$}}%
+ \ifx\canto@fil\hidewidth \wd\z@\z@ \else \kern-#6\unitlength \fi
+ \ooalign{%
+ \canto@fil$\m@th \CancelColor
+ \vcenter{\hbox{\dimen@#6\unitlength \kern\dimen@
+ \multiply\dimen@#4\divide\dimen@#3 \vrule\@depth\dimen@\@width\z@
+ \vector(#3,#4){#5}%
+ }}^{\raise#2\dimen@\copy\z@\kern-\scriptspace}$%
+ \canto@fil \cr
+ \hfil \box\@tempboxa \kern\wd\z@ \hfil \cr}}
+
+\def\@min@pt#1#2{\ifdim#1<#2\p@ #1#2\p@ \relax\fi}
diff --git a/Master/texmf-dist/tex/latex/ltxmisc/capt-of.sty b/Master/texmf-dist/tex/latex/ltxmisc/capt-of.sty
new file mode 100644
index 00000000000..cdd006de550
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/ltxmisc/capt-of.sty
@@ -0,0 +1,30 @@
+% CAPT-OF.STY v0.1
+% Copyright 1996, 1999 Robin Fairbairns (rf10@cam.ac.uk)
+%
+% This program can redistributed and/or modified under the terms
+% of the LaTeX Project Public License Distributed from CTAN
+% archives in directory macros/latex/base/lppl.txt; either
+% version 1 of the License, or (at your option) any later version.
+%
+% This short package permits you to have things with apparently
+% `proper' captions in the body of your text. This is sometimes
+% convenient in documents that only have small `figure's or `table's
+% (or small numbers of them) and you don't need to hassle yourself
+% dealing with floats (\begin{figure|table}...)
+%
+% Usage: \captionof{type}[move]{caption}
+% type is `figure' or `table' (or some type you've defined with
+% float.sty)
+% move is the optional moving argument of \caption (the thing
+% that goes to the listoftables/figures)
+% caption is the text of the caption
+%
+% It's probably best to use \captionof within an enclosing group
+% (e.g., \begin{center} fig \captionof{figure}{blah blah} \end{center})
+%
+% CAVEAT: If you _do_ have `real' (floating) figures or tables in your
+% document, you may find this package causes the figures\tables to get
+% out of order. You are (as far as I'm concerned) `on your own' if
+% you use this package in such circumstances.
+
+\newcommand\captionof[1]{\def\@captype{#1}\caption}
diff --git a/Master/texmf-dist/tex/latex/ltxmisc/cases.sty b/Master/texmf-dist/tex/latex/ltxmisc/cases.sty
new file mode 100644
index 00000000000..b82f010a02a
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/ltxmisc/cases.sty
@@ -0,0 +1,187 @@
+% C A S E S . S T Y ver 2.5 May 2002
+%
+% Copyright (C) 1993,1994,1995,2000,2002 by Donald Arseneau
+% asnd@triumf.ca
+% These macros may be freely transmitted, reproduced, or modified
+% provided that this notice is left intact. Sub-equation numbering
+% is based on subeqn.sty by Stephen Gildea; most of the rest is based
+% on LaTeX's \eqnarray by Leslie Lamport and the LaTeX3 team.
+%
+% This provides a LaTeX environment {numcases} to produce multi-case
+% equations with a separate equation number for each case. There is
+% also {subnumcases} which numbers each case with the overall equation
+% number plus a letter [8a, 8b, etc.]. The syntax is
+%
+% \begin{numcases}{left_side}
+% case_1 & explanation_1 \\
+% case_2 & explanation_2 \\
+% ...
+% case_n & explanation_n
+% \end{numcases}
+%
+% Each case is a math formula, and each explanation is a piece of lr mode
+% text (which may contain math mode in \(...\) or $...$). The explanations
+% are optional. Equation numbers are inserted automatically, just as for
+% the eqnarray environment. In particular, the \nonumber command suppresses
+% an equation number and the \label command allows reference to a particular
+% case. In a subnumcases environment, a \label in the left_side of the
+% equation gives the overall equation number, without any letter.
+%
+% To use this package,
+% include "\usepackage{cases}" after \documentclass. You may also
+% specify "\usepackage[subnum]{cases}" to force *all* numcases
+% environments to be treated as subnumcases.
+%
+% Question: Is there a {numcases*} environment for unnumbered cases?
+% Answer: There is a {cases} environment in AMS-LaTeX, but it is just as
+% convenient to stick with the canonical LaTeX array:
+% \[ left side = \left\{ \begin{array}...\end{array} \right. \]
+%
+% Speaking of AMS-math, they use an entirely different system of equation
+% numbering, and this package uses ordinary LaTeX numbering.
+%
+% - - - - -
+% A simple example is:
+% \begin{numcases}{|x|=}
+% x, & for $x \geq 0$\\
+% -x, & for $x < 0$
+% \end{numcases}
+%
+% Giving:
+% / x for x > 0 (1)
+% |x| = < -
+% \ -x for x < 0 (2)
+%
+% - - - - -
+%
+% Another example is calculating the square root of $c+id$. First compute
+% \begin{subnumcases}{\label{w} w\equiv}
+% 0 & $c = d = 0$\label{wzero}\\
+% \sqrt{|c|}\,\sqrt{\frac{1 + \sqrt{1+(d/c)^2}}{2}} & $|c| \geq |d|$ \\
+% \sqrt{|d|}\,\sqrt{\frac{|c/d| + \sqrt{1+(c/d)^2}}{2}} & $|c| < |d|$
+% \end{subnumcases}
+% Then, using $w$ from eq.~(\ref{w}), the square root is
+% \begin{subnumcases}{\sqrt{c+id}=}
+% 0 & $w=0$ (case \ref{wzero})\\
+% w+i\frac{d}{2w} & $w \neq 0$, $c \geq 0$ \\
+% \frac{|d|}{2w} + iw & $w \neq 0$, $c < 0$, $d \geq 0$ \\
+% \frac{|d|}{2w} - iw & $w \neq 0$, $c < 0$, $d < 0$
+% \end{subnumcases}
+%
+% - - - begin definitions - - -
+
+\ProvidesPackage{cases}[2002/05/02 ver 2.5 ]
+
+\newenvironment{numcases}[1]%
+{$$\numc@opts \setbox\z@\hbox
+ {\advance\c@equation\@ne\def\@currentlabel{\p@equation\theequation}% local
+ $\displaystyle {#1\null}\m@th$}%
+ \numc@setsub
+ \setbox\tw@\vbox\bgroup
+ \stepcounter{equation}\def\@currentlabel{\p@equation\theequation}%
+ \global\@eqnswtrue\m@th \everycr{}\tabskip\numc@left\let\\\@eqncr
+ \halign to\dimen@ii \bgroup \kern\wd\z@ \kern14\p@ % assume width of brace
+ \tabskip\z@skip \global\@eqcnt\@ne $\displaystyle{##}$\hfil
+ &\global\@eqcnt\tw@ \skip@10\p@ \advance\skip@\tw@\arraycolsep \hskip\skip@
+ ##\unskip\hfil\tabskip\@centering% \unskip removes space if no explanations
+ &\global\@eqcnt\thr@@\hbox to\z@\bgroup\hss##\egroup\tabskip\z@skip\cr
+}{\@@eqncr \egroup % end \halign, which does not contain first column or brace
+ \global\advance\c@equation\m@ne
+%Measure the natural width of the alignment
+ \unskip\unpenalty\unskip\unpenalty \setbox\z@\lastbox % grab last line
+ \nointerlineskip \copy\z@ % then put it back
+ \global\dimen@i\wd\z@
+ \setbox\z@\hbox{\hskip-\numc@left\unhbox\z@}% Measure its natural width
+ \ifdim \wd\z@<\dimen@i \global\dimen@i\wd\z@ \fi
+\egroup% end \vbox (box\tw@, box\z@ is restored to LHS)
+\hbox to\dimen@ii{\m@th % assemble the whole equation
+ \hskip\numc@left
+ \hbox to\dimen@i{$\displaystyle \box\z@ % parameter #1
+ \dimen@\ht\tw@ \advance\dimen@\dp\tw@ % get size of brace
+ \left\{\vcenter to\dimen@{\vfil}\right.\n@space % make brace
+ $\hfil}\hskip\@centering % finished first part (filled whole line)
+ \kern-\dimen@ii % backspace the full width
+ $\vcenter{\box\tw@}$% overlay the alignment
+ }% end the \hbox to\dimen@ii
+\numc@resetsub
+$$\global\@ignoretrue}
+
+\let\numc@setsub\relax
+\let\numc@resetsub\relax
+
+\def\subnumcases{\let\numc@setsub\subequations
+ \let\numc@resetsub\endsubequations \numcases}
+\let\endsubnumcases\endnumcases
+
+% declare subequations -- either defining them following the style of
+% Gildea's subeqn.sty, or using the syntax of AMS-LaTeX if that is loaded.
+
+\@ifundefined{c@parentequation}{% No AMS, define subequations from scratch:
+%
+% These versions of subequations follow the style of Gildea's subeqn.sty,
+% but are thoroughly rewritten.
+%
+% You can change the labelling by redefining \thesubequation, but the names
+% of the counters may be confusing: The sub-number is given by counter
+% {equation}, while the overall equation number is given by {mainequation}.
+% There are two ways to reference the overall equation number:
+% through the value of \c@mainequation, as in \Roman{mainequation}, or
+% through \themainequation, which gives the text of the normal \theequation.
+% Refer to the local sub-number with \c@equation, as in \alph{equation}.
+% The default numbering is like 13c, given by:
+%
+\def\thesubequation{\themainequation\alph{equation}}
+%
+% Some alternatives:
+% \def\thesubequation{\themainequation.\Alph{equation}} % 13.C
+% \def\thesubequation{\themainequation-\roman{equation}} % 13-iii
+% \def\thesubequation{(\arabic{mainequation}\alph{equation})} % (13c)
+% The third alternative should be used if a document style has
+% declared \renewcommand{\@eqnnum}{\theequation} and
+% \renewcommand{\theequation}{(\arabic{equation})}, which makes
+% \ref put parentheses around regular equation numbers automatically.
+%
+\def\subequations{\refstepcounter{equation}%
+ \mathchardef\c@mainequation\c@equation
+ \let\@tempa\protect % * added protection
+ \def\protect{\noexpand\protect\noexpand}% *
+ \edef\themainequation{\theequation}\let\theequation\thesubequation
+ \let\protect\@tempa % *
+ \global\c@equation\z@}
+%
+\def\endsubequations{%
+ \global\c@equation\c@mainequation
+ \global\@ignoretrue}
+%
+% \begin{subeqnarray} works like \begin{subequations}\begin{eqnarray},
+% with the added feature that a \label command given given at the very
+% beginning of the first entry defines a label for the overall equation
+% number.
+%
+\def\subeqnarray{\subequations\eqnarray\@ifnextchar\label{\@lab@subeqnarray}{}}
+\def\endsubeqnarray{\endeqnarray\endsubequations}
+\def\@lab@subeqnarray#1#2{\begingroup
+ \let\@currentlabel\themainequation #1{#2}\endgroup}
+%
+}{}% AMS \subequations already defined
+
+\def\numc@left{\@centering}
+\def\numc@opts{\dimen@ii\displaywidth}
+
+\DeclareOption{subnum}{
+ \let\numc@setsub\subequations
+ \let\numc@resetsub\endsubequations }
+
+\DeclareOption{fleqn}{
+ \def\numc@left{\mathindent}
+ \def\numc@opts{\displaywidth\linewidth
+ \dimen@ii\linewidth }
+}
+\ProcessOptions
+
+\endinput
+
+% Send problem reports to asnd@triumf.ca
+
+Test file integrity: ASCII 32-57, 58-126: !"#$%&'()*+,-./0123456789
+:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~
diff --git a/Master/texmf-dist/tex/latex/ltxmisc/chappg.sty b/Master/texmf-dist/tex/latex/ltxmisc/chappg.sty
new file mode 100644
index 00000000000..943cf041424
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/ltxmisc/chappg.sty
@@ -0,0 +1,191 @@
+% Define \thepage to output chapter-page (such as 1-3, 5-2, etc.)
+% and have each chapter's page number begin on 1.
+%
+% Largely reimplemented for use as a LaTeX2e package, taking account
+% of \mainmatter, etc., and providing various extra capabilities,
+% Robin Fairbairns <rf@cl.cam.ac.uk>, from an original by
+% Max Hailperin <max@nic.gac.edu>, who asserted that the original
+% source was TeXMaG Vol. 5, No. 3 (part 1)
+%
+% See documentation after \endinput
+%
+% This program may be distributed and/or modified under the
+% conditions of the LaTeX Project Public License, either version 1.1
+% of this license or (at your option) any later version.
+% The latest version of this license is in
+% http://www.latex-project.org/lppl.txt
+% and version 1.1 or later is part of all distributions of LaTeX
+% version 1999/06/01 or later.
+%
+% This program consists of the file chappg.sty
+
+\NeedsTeXFormat{LaTeX2e}% Seems to work with any version
+\ProvidesPackage{chappg}[2000/05/24 v2.0d page numbering by chapter]
+
+%
+% reset page number when chapter number is stepped
+\@addtoreset{page}{chapter}
+
+\renewcommand\pagenumbering[2][\@chappg@thechapter]{%
+ \global\c@page\@ne
+ \protected@xdef\thepage{%
+ \expandafter\noexpand\csname @#2\endcsname
+ \noexpand\c@page
+ }%
+ \gdef\@chappg@prefix{#1}%
+}
+
+% This is the command used by \pagenumbering{bychapter} to actually
+% create the page number
+\newcommand\@bychapter[1]{%
+ \@chappg@prefix\chappgsep\@arabic#1%
+ \ifx\@chappg@prefix\@chappg@surprise
+ \if@chappgsurprised\else
+ \xdef\@chappg@surprise@line{\the\inputlineno}%
+ \global\@chappgsurprisedtrue
+ \fi
+ \fi
+}
+
+% output a chapter number if there have been any chapters; otherwise
+% gobble the following thing, which will be \chappgsep
+\def\@chappg@thechapter{%
+ \ifnum\c@chapter=0
+ \expandafter\@gobble
+ \else
+ \thechapter
+ \fi
+}
+
+% separator in the above
+\providecommand\chappgsep{-}
+
+%
+% select default: this will be hacked by \frontmatter if the author
+% uses it
+\pagenumbering{bychapter}
+
+%
+% Hack at \mainmatter so that it restores bychapter numbering if
+% there's been a \frontmatter command
+\let\@@mainmatter\mainmatter
+\def\mainmatter{\@@mainmatter
+ \pagenumbering{bychapter}%
+}
+
+%
+% Hack at \backmatter so that it warns the user of possibly surprising
+% results if \pagenumbering[whatever]{bychapter} hasn't been used
+\let\@@backmatter\backmatter
+\def\backmatter{\@@backmatter
+ \let\@chappg@prefix\@chappg@surprise
+}
+\def\@chappg@surprise{\textbf{??}}
+\newif\if@chappgsurprised \@chappgsurprisedfalse
+
+\AtEndDocument{\if@chappgsurprised
+ \PackageWarningNoLine{chappg}{Possibly surprising page numbering in
+ \string\backmatter
+ \MessageBreak
+ Use \string\pagenumbering[prefix]{bychapter}%
+ \MessageBreak
+ to select alternative before line \@chappg@surprise@line
+ }
+ \fi
+}
+
+%%
+%% command to hack at an environment to cause it to behave prettily
+%% #1->environment name, #2->prefix for page numbers
+%\newcommand\bychapterenv[2]{%
+% \@ifundefined{@@#1}{%
+% \expandafter\let\csname @@#1\expandafter\endcsname
+% \csname#1\endcsname
+% }{}%
+% \expandafter\edef\csname#1\endcsname{%
+% \expandafter\noexpand\csname @@#1\endcsname
+% \global\let\noexpand\@@bychapter\noexpand\@bychapter
+% \noexpand\pagenumbering[\noexpand#2]{bychapter}%
+% }%
+% \@ifundefined{@@end#1}{%
+% \expandafter\let\csname @@end#1\expandafter\endcsname
+% \csname end#1\endcsname
+% }{}%
+% \expandafter\edef\csname end#1\endcsname{%
+% \expandafter\noexpand\csname @@end#1\endcsname
+% \global\let\noexpand\@bychapter\noexpand\@@bychapter
+% }%
+%}
+%
+%%
+%% Specific cases: set up for dealing with bibliography, index, and (if
+%% it's defined) glossary
+%\bychapterenv{thebibliography}\bibname
+%\bychapterenv{theindex}\indexname
+%\@ifundefined{theglossary}{}{%
+% \bychapterenv{theglossary}{Glossary}%
+%}
+
+%
+% The next magic makes the page counter be reset to one rather than zero
+\renewcommand\@stpelt[1]{%
+ \global\csname c@#1\endcsname
+ \expandafter\ifx \csname c@#1\endcsname \c@page
+ \@ne
+ \else
+ \z@
+ \fi
+}
+\endinput
+
+chappg.sty: number pages by chapter
+
+Basic operation of the package is to redefine \thepage to be
+\thechapter-\arabic{page}, and to cause the page number to be reset
+(to 1) at the start of each chapter. So the pages of chapter 3 will
+be numbered 3-1, 3-2, ..., and the pages of appendix B will be
+numbered B-1, B-2, ...
+
+The package assumes the environment of the standard report or book
+classes (or classes derived from them by inclusion or copying).
+
+The package's effect is achieved by defining a new \pagenumbering
+style `bychapter', and using it. The package changes \pagenumbering
+to take an optional argument, which is the `prefix' to the page
+number. Ordinarily, this will be the chapter number, but a user may
+care to say (for example):
+
+ \chapter*{Preface}
+ \pagenumbering[Preface]{bychapter}
+
+in her document somewhere, and the pages of the preface will be
+numbered Preface-1, Preface-2, ...
+
+The separator between the chapter and page numbers (hyphen above, but
+I can imagine people wanting it to be an en-dash) is \chappgsep, which
+en-dash-lovers may redefine (after loading the package); for example:
+
+ \renewcommand{\chappgsep}{--}%
+
+Havoc is wreaked with this structure in the LaTeX \frontmatter and
+\mainmatter commands (which both explicitly use \pagenumbering and
+therefore destroy the changed definition of \thepage
+
+My design decision was to assume that \frontmatter is indeed to be in
+\pagenumbering{roman}, and to restore the chapter-numbering in
+\mainmatter. Chapters in the frontmatter can not be numbered `by'
+their chapters, since the chapters don't actually have numbers. If
+the author wishes to have some special treatment of part of the
+frontmatter, the analogue of the above is
+
+ \chapter{Preface}
+ \pagenumbering[Preface]{bychapter}
+
+The conception breaks down again in \backmatter; again, the \chapter
+commands don't number the chapters, so that the pages will all be
+numbered as if they were `within' the last real chapter. Therefore,
+if by-chapter page numbering is still enabled while in the backmatter,
+and the user hasn't issued a new \pagenumbering[prefix]{bychapter}
+since the \backmatter command, the package rewrites the prefix as
+{\bf??}, and produces a warning at the end of the document.
+
diff --git a/Master/texmf-dist/tex/latex/ltxmisc/endnotes.sty b/Master/texmf-dist/tex/latex/ltxmisc/endnotes.sty
new file mode 100644
index 00000000000..d3ef6514baa
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/ltxmisc/endnotes.sty
@@ -0,0 +1,417 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
+% ****************************************
+% * ENDNOTES *
+% ****************************************
+%
+% Date of this version: 15 January 2003.
+%
+%% Copyright 2002 John Lavagnino
+%%
+%% This file may be distributed and/or modified under the
+%% conditions of the LaTeX Project Public License, either version 1.2
+%% of this license or (at your option) any later version.
+%% The latest version of this license is in
+%% http://www.latex-project.org/lppl.txt
+%% and version 1.2 or later is part of all distributions of LaTeX
+%% version 1999/12/01 or later.
+%
+% Based on the FOOTNOTES section of
+% LATEX.TEX (VERSION 2.09 - RELEASE OF 19 April 1986), with
+% "footnote" changed to "endnote" and "fn" changed to "en" (where
+% appropriate), with all the minipage stuff pulled out, and with
+% some small changes for the different operation of endnotes.
+% Subsequently updated to follow the code for
+% LaTeX2e <2000/06/01>.
+%
+% Uses an extra external file, with .ent extension, to hold the
+% text of the endnotes. This may be deleted after the run; a new
+% version is generated each time--it doesn't require information
+% collected from the previous run.
+%
+% This code does not obey \nofiles. Perhaps it should.
+%
+% John Lavagnino (John.Lavagnino@kcl.ac.uk)
+% Centre for Computing in the Humanities, King's College London
+%
+% To turn all the footnotes in your documents into endnotes, say
+%
+% \let\footnote=\endnote
+%
+% in your preamble, and then add something like
+%
+% \newpage
+% \begingroup
+% \parindent 0pt
+% \parskip 2ex
+% \def\enotesize{\normalsize}
+% \theendnotes
+% \endgroup
+%
+% as the last thing in your document. (But \theendnotes all
+% by itself will work.)
+%
+% ****************************************
+% * CHANGE LOG *
+% ****************************************
+%
+% JL Modified to include \addtoendnotes. JL, 10/22/89.
+%
+% JK Modification by J"org Knappen 25. 2. 1991:
+% JK
+% JK Introduced \notesname in the spirit of international \LaTeX.
+% JK \notesname is set per default to be {Notes}, but can easily
+% JK be redifined, e.g. for german language
+% JK \renewcommand{\notesname}{Anmerkungen}
+%
+% DW Modification by Dominik Wujastyk, London, 19 September 1991:
+% DW
+% DW Moved the line
+% DW \edef\@currentlabel{\csname p@endnote\endcsname\@theenmark}
+% DW out of the definition of \@endnotetext and into the definition
+% DW of \@doanenote so that \label and \ref commands work correctly in
+% DW endnotes. Otherwise, the \label just pointed to the last section
+% DW heading (or whatever) preceding the \theendnotes command.
+%
+% JL Revised documentation and macros. 24 Sept 1991.
+%
+% modified by --bg (B.Gaulle) 09/14/94 for:
+% 1) replace » (why a 8bit char here?) by ^ as a default.
+% 2) force \catcode of > to be 12 (implied by \@doanenote).
+% by --bg again 03/22/95 for:
+% 3) reseting appropriate catcode of > in case it were
+% used as an active char before \@endanenote (was
+% pointed by Ch. Pallier).
+%
+% John Lavagnino, 12 January 2003: a number of small updates:
+%
+% JL Incorporate change suggested by Frank Mittelbach to
+% JL \enoteheading, so that first note has paragraph indentation.
+% JL Frank's note:
+% the idea of this code is to fix the problem that without it
+% the first endnote after the heading will not be indented thus looking
+% somewhat strange. Problem however is that since there is no
+% indentation \leavemode\par will make an absolutely empty pargraph so
+% that no baseline calculation is done. therefore \vskip-\baselineskip
+% will put the first endnote directly below the heading without the
+% usual spaccing. using \mbox insead will cure this defect.
+%
+% JL Also incorporated Frank's suggestion to define
+% JL \makeenmark and \theenmark, so that users can change more of the
+% JL layout without using \makeatletter. \makeenmark defaults to
+% JL \@makeenmark, so old code is still supported; and \theenmark is
+% JL just syntactic sugar for \@theenmark, which is still the real
+% JL value (and shouldn't be directly modified by user code).
+%
+% JL Definition of \ETC. also dropped: surely nobody is still
+% JL using TeX 2.992. (If you are, you need to upgrade it or
+% JL endnotes longer than 1000 characters will be truncated.)
+%
+% JL Update much of the code to track the current LaTeX2e code more
+% JL closely. Clean up \theendnotes.
+%
+% John Lavagnino, 15 January 2003: fix my garbled version of
+% Frank's updates.
+%
+%
+% ****************************************
+% * ENDNOTE COMMANDS *
+% ****************************************
+%
+%
+% \endnote{NOTE} : User command to insert a endnote.
+%
+% \endnote[NUM]{NOTE} : User command to insert a endnote numbered
+% NUM, where NUM is a number -- 1, 2,
+% etc. For example, if endnotes are numbered
+% *, **, etc. within pages, then \endnote[2]{...}
+% produces endnote '**'. This command does not
+% step the endnote counter.
+%
+% \endnotemark[NUM] : Command to produce just the endnote mark in
+% the text, but no endnote. With no argument,
+% it steps the endnote counter before generating
+% the mark.
+%
+% \endnotetext[NUM]{TEXT} : Command to produce the endnote but no
+% mark. \endnote is equivalent to
+% \endnotemark \endnotetext .
+%
+% \addtoendnotes{TEXT} : Command to add text or commands to current
+% endnotes file: for inserting headings,
+% pagebreaks, and the like into endnotes
+% sections. TEXT a moving argument:
+% \protect required for fragile commands.
+%
+% ****************************************
+% * ENDNOTE USER COMMANDS *
+% ****************************************
+%
+% Endnotes use the following parameters, similar to those relating
+% to footnotes:
+%
+% \enotesize : Size-changing command for endnotes.
+%
+% \theendnote : In usual LaTeX style, produces the endnote number.
+%
+% \theenmark : Holds the current endnote's mark--e.g., \dag or '1' or 'a'.
+% (You don't want to set this yourself, as it comes
+% either from the autonumbering of notes or from
+% the optional argument to \endnote. But you'll need
+% to use it if you define your own \makeenmark.)
+%
+% \makeenmark : A macro to generate the endnote marker from \theenmark
+% The default definition is \hbox{$^\theenmark$}.
+%
+% \@makeentext{NOTE} :
+% Must produce the actual endnote, using \theenmark as the mark
+% of the endnote and NOTE as the text. It is called when effectively
+% inside a \parbox, with \hsize = \columnwidth. For example, it might
+% be as simple as
+% $^{\theenmark}$ NOTE
+%
+%
+% ****************************************
+% * ENDNOTE PSEUDOCODE *
+% ****************************************
+%
+% \endnote{NOTE} ==
+% BEGIN
+% \stepcounter{endnote}
+% \@theenmark :=G eval (\theendnote)
+% \@endnotemark
+% \@endnotetext{NOTE}
+% END
+%
+% \endnote[NUM]{NOTE} ==
+% BEGIN
+% begingroup
+% counter endnote :=L NUM
+% \@theenmark :=G eval (\theendnote)
+% endgroup
+% \@endnotemark
+% \@endnotetext{NOTE}
+% END
+%
+% \@endnotetext{NOTE} ==
+% BEGIN
+% write to \@enotes file: "\@doanenote{ENDNOTE MARK}"
+% begingroup
+% \next := NOTE
+% set \newlinechar for \write to \space
+% write to \@enotes file: \meaning\next
+% (that is, "macro:->NOTE)
+% endgroup
+% END
+%
+% \addtoendnotes{TEXT} ==
+% BEGIN
+% open endnotes file if not already open
+% begingroup
+% let \protect to \string
+% set \newlinechar for \write to \space
+% write TEXT to \@enotes file
+% endgroup
+% END
+%
+% \endnotemark ==
+% BEGIN \stepcounter{endnote}
+% \@theenmark :=G eval(\theendnote)
+% \@endnotemark
+% END
+%
+% \endnotemark[NUM] ==
+% BEGIN
+% begingroup
+% endnote counter :=L NUM
+% \@theenmark :=G eval(\theendnote)
+% endgroup
+% \@endnotemark
+% END
+%
+% \@endnotemark ==
+% BEGIN
+% \leavevmode
+% IF hmode THEN \@x@sf := \the\spacefactor FI
+% \makeenmark % put number in main text
+% IF hmode THEN \spacefactor := \@x@sf FI
+% END
+%
+% \endnotetext ==
+% BEGIN \@theenmark :=G eval (\theendnote)
+% \@endnotetext
+% END
+%
+% \endnotetext[NUM] ==
+% BEGIN begingroup counter endnote :=L NUM
+% \@theenmark :=G eval (\theendnote)
+% endgroup
+% \@endnotetext
+% END
+%
+% ****************************************
+% * ENDNOTE MACROS *
+% ****************************************
+%
+
+\@definecounter{endnote}
+\def\theendnote{\@arabic\c@endnote}
+
+\def\@makeenmark{\hbox{\@textsuperscript{\normalfont\@theenmark}}}
+\def\makeenmark{\@makeenmark}
+
+\def\theenmark{\@theenmark}
+
+\newdimen\endnotesep
+
+\def\endnote{\@ifnextchar[\@xendnote{\stepcounter{endnote}%
+ \protected@xdef\@theenmark{\theendnote}%
+ \@endnotemark\@endnotetext}}
+
+\def\@xendnote[#1]{%
+ \begingroup
+ \c@endnote=#1\relax
+ \unrestored@protected@xdef\@theenmark{\theendnote}%
+ \endgroup
+ \@endnotemark\@endnotetext}
+
+% Here begins a section of endnote code that's really different from
+% the footnote code of LaTeX.
+
+\let\@doanenote=0
+\let\@endanenote=0
+
+\newwrite\@enotes
+\newif\if@enotesopen \global\@enotesopenfalse
+
+\def\@openenotes{\immediate\openout\@enotes=\jobname.ent\relax
+ \global\@enotesopentrue}
+
+% The stuff with \next and \meaning is a trick from the TeXbook, 382,
+% there intended for setting verbatim text, but here used to avoid
+% macro expansion when the footnote text is written. \next will have
+% the entire text of the footnote as one long line, which might well
+% overflow limits on output line length; the business with \newlinechar
+% makes every space become a newline in the \@enotes file, so that all
+% of the lines wind up being quite short.
+
+\long\def\@endnotetext#1{%
+ \if@enotesopen \else \@openenotes \fi
+ \immediate\write\@enotes{\@doanenote{\@theenmark}}%
+ \begingroup
+ \def\next{#1}%
+ \newlinechar='40
+ \immediate\write\@enotes{\meaning\next}%
+ \endgroup
+ \immediate\write\@enotes{\@endanenote}}
+
+% \addtoendnotes works the way the other endnote macros probably should
+% have, requiring the use of \protect for fragile commands.
+
+\long\def\addtoendnotes#1{%
+ \if@enotesopen \else \@openenotes \fi
+ \begingroup
+ \newlinechar='40
+ \let\protect\string
+ \immediate\write\@enotes{#1}%
+ \endgroup}
+
+% End of unique endnote code
+
+\def\endnotemark{%
+ \@ifnextchar[\@xendnotemark
+ {\stepcounter{endnote}%
+ \protected@xdef\@theenmark{\theendnote}%
+ \@endnotemark}}
+
+\def\@xendnotemark[#1]{%
+ \begingroup
+ \c@endnote #1\relax
+ \unrestored@protected@xdef\@theenmark{\theendnote}%
+ \endgroup
+ \@endnotemark}
+
+\def\@endnotemark{%
+ \leavevmode
+ \ifhmode\edef\@x@sf{\the\spacefactor}\nobreak\fi
+ \makeenmark
+ \ifhmode\spacefactor\@x@sf\fi
+ \relax}
+
+\def\endnotetext{%
+ \@ifnextchar [\@xendnotenext
+ {\protected@xdef\@theenmark{\theendnote}%
+ \@endnotetext}}
+
+\def\@xendnotenext[#1]{\begingroup \c@endnote=#1\relax
+ \xdef\@theenmark{\theendnote}\endgroup \@endnotetext}
+
+\def\@xendnotenext[#1]{%
+ \begingroup
+ \c@endnote=#1\relax
+ \unrestored@protected@xdef\@theenmark{\theendnote}%
+ \endgroup
+ \@endnotetext}
+
+
+% \theendnotes actually prints out the endnotes.
+
+% The user may want separate endnotes for each chapter, or a big
+% block of them at the end of the whole document. As it stands,
+% either will work; you just say \theendnotes wherever you want the
+% endnotes so far to be inserted. However, you must add
+% \setcounter{endnote}{0} after that if you want subsequent endnotes
+% to start numbering at 1 again.
+
+% \enoteformat is provided so user can specify some special formatting
+% for the endnotes. It needs to set up the paragraph parameters, start
+% the paragraph, and print the label. The \mbox stuff in \enoteheading
+% is to make and undo a dummy paragraph, to get around the games \section*
+% plays with paragraph indenting and instead give us uniform
+% indenting for all notes.
+
+\def\notesname{Notes}%
+\def\enoteheading{\section*{\notesname
+ \@mkboth{\MakeUppercase{\notesname}}{\MakeUppercase{\notesname}}}%
+ \mbox{}\par\vskip-\baselineskip}
+
+\def\enoteformat{\rightskip\z@ \leftskip\z@ \parindent=1.8em
+ \leavevmode\llap{\makeenmark}}
+
+\def\enotesize{\footnotesize}
+
+\def\theendnotes{\immediate\closeout\@enotes \global\@enotesopenfalse
+ \begingroup
+ \makeatletter
+ %
+ % The machinery with \@ResetGT and > here ensures that
+ % \@doanenote works properly even if > is an active character
+ % at the point where \theendnotes is invoked. > needs to have
+ % catcode 12 when the arguments of \@doanenote are scanned, so
+ % that the > in the string "macro:->" is matched. The actual
+ % footnote text is not an argument to \@doanenote, but just
+ % follows it in the .ent file; so \@ResetGT can reset the
+ % category code for > that should be used when processing
+ % that text. That resetting takes place within a
+ % \begingroup-\endgroup block set up by \@doanenote and
+ % \@endanenote, so the catcode for > is back to 12 for the
+ % next note.
+ %
+ \edef\@tempa{`\string >}%
+ \ifnum\catcode\@tempa=12%
+ \let\@ResetGT\relax
+ \else
+ \edef\@ResetGT{\noexpand\catcode\@tempa=\the\catcode\@tempa}%
+ \@makeother\>%
+ \fi
+ \def\@doanenote##1##2>{\def\@theenmark{##1}\par\begingroup
+ \@ResetGT
+ \edef\@currentlabel{\csname p@endnote\endcsname\@theenmark}%
+ \enoteformat}
+ \def\@endanenote{\par\endgroup}%
+ \enoteheading
+ \enotesize
+ \input{\jobname.ent}%
+ \endgroup}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
diff --git a/Master/texmf-dist/tex/latex/ltxmisc/flashcard.cls b/Master/texmf-dist/tex/latex/ltxmisc/flashcard.cls
new file mode 100644
index 00000000000..ed91ada914d
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/ltxmisc/flashcard.cls
@@ -0,0 +1,177 @@
+%an experimental documentclass for flashcards.
+%Use only with the understanding it may not work at all.
+%More documentation after \endinput
+\NeedsTeXFormat{LaTeX2e}[1995/12/01]
+\ProvidesClass{flashcard}
+ [2000/25/01 document class for flashcards]
+\newcommand\@ptsize{}
+\DeclareOption{a4paper}
+ {\setlength\paperheight {297mm}%
+ \setlength\paperwidth {210mm}}
+\DeclareOption{letterpaper}
+ {\setlength\paperheight {11in}%
+ \setlength\paperwidth {8.5in}}
+\DeclareOption{landscape}
+ {\setlength\@tempdima {\paperheight}%
+ \setlength\paperheight {\paperwidth}%
+ \setlength\paperwidth {\@tempdima}}
+\DeclareOption{centering}{\def\flashcardformat{\centering}}
+\DeclareOption{raggedright}{\def\flashcardformat{\raggedright}}
+\DeclareOption{raggedleft}{\def\flashcardformat{\raggedleft}}
+\DeclareOption{justify}{\def\flashcardformat{\relax}}
+\DeclareOption{10pt}{\renewcommand\@ptsize{0}}
+\DeclareOption{11pt}{\renewcommand\@ptsize{1}}
+\DeclareOption{12pt}{\renewcommand\@ptsize{2}}
+\DeclareOption{oneside}{\@twosidefalse \@mparswitchfalse}
+\DeclareOption{twoside}{\@twosidetrue \@mparswitchtrue}
+\DeclareOption{draft}{\setlength\overfullrule{5pt}}
+\DeclareOption{final}{\setlength\overfullrule{0pt}}
+\ExecuteOptions{10pt,oneside,justify,final}
+\ProcessOptions\relax
+\ifdim\paperwidth=0pt
+\ClassError{Flashcard}{No papersize specified}
+ {Please specify one of `a4paper' or `letterpaper' \MessageBreak
+ as a option to the documentclass}
+\fi
+\RequirePackage{calc}
+\input{size1\@ptsize.clo}
+\setlength\lineskip{1\p@}
+\setlength\normallineskip{1\p@}
+\renewcommand\baselinestretch{}
+\setlength\parskip{0pt}
+\setlength\parindent{0pt}
+\DeclareOldFontCommand{\rm}{\normalfont\rmfamily}{\mathrm}
+\DeclareOldFontCommand{\sf}{\normalfont\sffamily}{\mathsf}
+\DeclareOldFontCommand{\tt}{\normalfont\ttfamily}{\mathtt}
+\DeclareOldFontCommand{\bf}{\normalfont\bfseries}{\mathbf}
+\DeclareOldFontCommand{\it}{\normalfont\itshape}{\mathit}
+\DeclareOldFontCommand{\sl}{\normalfont\slshape}{\@nomath\sl}
+\DeclareOldFontCommand{\sc}{\normalfont\scshape}{\@nomath\sc}
+\DeclareRobustCommand*\cal{\@fontswitch\relax\mathcal}
+\DeclareRobustCommand*\mit{\@fontswitch\relax\mathnormal}
+\def\today{\ifcase\month\or
+ January\or February\or March\or April\or May\or June\or
+ July\or August\or September\or October\or November\or December\fi
+ \space\number\day, \number\year}
+\setlength\columnsep{10\p@}
+\setlength\columnseprule{0\p@}
+\interlinepenalty=10000
+\pagestyle{empty}
+\newsavebox\flashcardi
+\newsavebox\flashcardii
+\newsavebox\flashcardiii
+\newsavebox\flashcardiv
+\newsavebox\flashcardv
+\newsavebox\flashcardvi
+\newsavebox\flashcardvii
+\newsavebox\flashcardviii
+\newcounter{flashcard}
+\setcounter{flashcard}{1}
+\newlength\flashcardwidth
+\newlength{\flashcardheight}
+\newlength{\halfflashcardwidth}
+\setlength{\flashcardwidth}{0.5\textwidth-0.5\columnsep-2\fboxrule}
+\setlength{\flashcardheight}{0.25\textheight-2\fboxrule-0.5\columnsep}
+\setlength{\halfflashcardwidth}{0.5\flashcardwidth - 4pt}
+
+
+\newcommand{\FC@pvbox}[1]{\fboxsep=2pt\fboxrule=0pt\fbox{\vbox{#1}}}
+\newcommand\FC@nopadfbox{\fboxsep=0pt\fbox}
+\newcommand{\flashcardtopic}[1]{\gdef\theflashcardtopic{#1}}
+\flashcardtopic{}
+
+\providecommand{\flashcardfrontword}{Question}
+\providecommand{\flashcardbackword}{Answer}
+
+\newcommand\flashcard{\@ifnextchar[{\@flashcardx}{\@flashcardx[]}}
+\long\def\@flashcardx[#1]{\@ifnextchar[%
+ {\@flashcardy[#1]}
+ {\@flashcardy[#1][\theflashcardtopic]}}
+\long\def\@flashcardy[#1][#2]#3#4{%
+\noindent\FC@nopadfbox{%
+ \vbox to \flashcardheight{\@parboxrestore
+ \setlength{\hsize}{\flashcardwidth-4pt}%
+ \hbox to \flashcardwidth{\strut\FC@pvbox{%
+ \hsize=\halfflashcardwidth
+ \leavevmode\raggedright #1}%
+ \hss\vrule\hss
+ \FC@pvbox{
+ \hsize=\halfflashcardwidth
+ \leavevmode\raggedleft #2}}%
+ \hrule
+ \vss
+ \FC@pvbox{\advance\hsize by -4pt\flashcardformat #3}%
+ \vss
+ \hrule
+ \hbox to \flashcardwidth{\strut\hfill\FC@pvbox{\flashcardfrontword}}}}%
+\ifodd\c@flashcard
+ \hskip\columnsep
+\else
+ \hfill
+ \par
+\fi
+\expandafter\setbox\csname flashcard\romannumeral\c@flashcard\endcsname
+\hbox{%
+\FC@nopadfbox{%
+ \vbox to \flashcardheight{\@parboxrestore
+ \setlength{\hsize}{\flashcardwidth-4pt}%
+ \hbox to \flashcardwidth{\strut\FC@pvbox{%
+ \hsize=\halfflashcardwidth
+ \leavevmode\raggedright #1}%
+ \hss\vrule\hss
+ \FC@pvbox{%
+ \hsize=\halfflashcardwidth
+ \leavevmode\raggedleft #2}}%
+ \hrule
+ \vss
+ \FC@pvbox{\advance\hsize by -4pt\flashcardformat #4}%
+ \vss
+ \hrule
+ \hbox to \flashcardwidth{\strut\hfill\FC@pvbox{\flashcardbackword}}}}}%
+ \ifnum\value{flashcard}=8\relax
+ \vfill
+ \pagebreak
+ \noindent\hfill\unhbox\flashcardii\hskip\columnsep\unhbox\flashcardi\par
+ \noindent\hfill\unhbox\flashcardiv\hskip\columnsep\unhbox\flashcardiii\par
+ \noindent\hfill\unhbox\flashcardvi\hskip\columnsep\unhbox\flashcardv\par
+ \noindent\hfill\unhbox\flashcardviii\hskip\columnsep\unhbox\flashcardvii\par\par\vfill\pagebreak
+ \setcounter{flashcard}{1}%
+ \else
+ \stepcounter{flashcard}%
+ \fi\ignorespaces}
+
+\AtEndDocument{\flushflashcards}
+\newcommand\flushflashcards{%
+ \loop\ifnum\value{flashcard}>1\@flashcardy[][]{}{}\repeat}
+
+%\newcount\@@endlinechar
+%\@@endlinechar=\endlinechar
+\endlinechar=32 %pars must be explicit.
+
+\endinput
+
+The use of this class is as follows:
+
+\documentclass[a4paper]{flashcard}
+\renewcommand{\flashcardformat}{\centering\LARGE}
+\renewcommand{\flashcardbackword}{Solution}
+\flashcardtopic{The Holy Grail}
+
+\begin{document}
+\flashcard{Who rescues Sir Galahad from the Castle Anthrax?}{Sir
+Lancelot}
+\flashcard[Ni!]{What is the one word the Knights of Ni can't hear?}{It}
+\flashcard[][Credits]{What once bit the narrator's sister?}{A Moose}
+\flashcard{How does King Arthur defeat the killer rabbit?}{Uses the Holy
+Hand Grenade of Antioch}
+\flashcard{What majority is required by the peasants council for
+external matters?}{2/3}
+\flashcard{What initial punishment is to be given to Zut for her setting
+off the beacon?}{A spanking}
+\flashcard{How much does it cost to `bring out your dead'}{Nine pence}
+\flashcard{Who's last words are recorded in the cave?}{Joseph of
+Arimathea}
+\flashcard{What is the name of the enchanter}{There are some that call
+him Tim}
+\flashcard{What shape has the earth been proven to be?}{Banana shaped}
+\end{document}
diff --git a/Master/texmf-dist/tex/latex/ltxmisc/ftcap.sty b/Master/texmf-dist/tex/latex/ltxmisc/ftcap.sty
new file mode 100644
index 00000000000..a9d190486f1
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/ltxmisc/ftcap.sty
@@ -0,0 +1,75 @@
+% hans.steffani@e-technik.tu-chemnitz.de (Hans Friedrich Steffani)
+% Copyright (C) 1999 Hans Friedrich Steffani
+
+% This program is free software; you can redistribute it and/or modify
+% it under the terms of the GNU General Public License as published by
+% the Free Software Foundation; either version 2 of the License, or
+% (at your option) any later version.
+
+% This program is distributed in the hope that it will be useful,
+% but WITHOUT ANY WARRANTY; without even the implied warranty of
+% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+% GNU General Public License for more details.
+
+% You should have received a copy of the GNU General Public License
+% along with this program; see the file COPYING. If not, write to
+% the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+% Boston, MA 02111-1307, USA.
+
+
+
+% Version: 1.4 Die optionalen Parameter von table sollten nun gehen
+% Version: 1.3 Einige Versuche rueckgaengig gemacht
+% Version: 1.2 Es heisst nun \ProvidesPackage{ftcap} ohne sty
+% ausserdem stimmt das Datum
+% Version: 1.1
+
+
+\ProvidesPackage{ftcap}[1999/10/16 ..captionskip richtig setzen]
+
+% Lamport places the \caption below tables and figures. That is ok
+% for figures but not for tables, as tables may be longer than one
+% page. In this case the reader has to search for the \verb|\caption|
+% until he finds it after a couple of pages. If you have the
+% \verb|\caption| at the top of the table there is no such problem.
+% And as the \caption of a table should always be at the same place,
+% we have to place the \verb|\caption| \emph{always} at the top of
+% the table If you want \verb|\caption| above tabular, you cannot
+% use the normal \verb|\caption|, because the spaces above and below
+% \verb|\caption| are wrong. Some stys (e.g. topcapt.sty) recommend
+% to have a special makro like \verb|\topcaption| for captions above
+% an object. I prefer to have ONE caption and changing the spaces
+% whenever we are within a table environment. That's what this sty
+% does.
+
+% Lamport plaziert seine \verb|\caption| ueber Tabellen und Bildern.
+% Bei Bildern ist das ok. Bei mehrseitigen Tabellen muss man
+% allerdings nach der \verb|\caption| suchen, so dass es guenstiger
+% erscheint, die \verb|\caption| \emph{oberhalb} der Tabelle zu
+% setzen. Und das sollte natuerlich um der Einheitlichkeit willen
+% dann auch bei kuerzeren Tabellen so sein.
+% Wenn die \verb|\caption| bei Tabellen ueber der Tabelle, bei
+% Bildern aber daruntersteht, braucht man verschiedene Werte fuer
+% \verb|\abovecaptionskip| und \verb|\belowcaptionskip|.
+% Gelegentlich werden dazu zwei makros, \verb|\tablecaption und
+% \verb|\figurecaption| oder auch \verb|\topcaption| vorgeschlagen,
+% aber das finde ich umstaendlich und fehleranfaellig.
+% \verb|\caption| ist \verb|\caption| und der Nutzer soll sich nicht
+% um Details kuemmern. Daher also:
+
+% from book.cls
+%% \renewenvironment{figure}
+%% {\@float{figure}}
+%% {\end@float}
+
+%% \newenvironment{table}
+%% {\@float{table}}
+%% {\end@float}
+
+\newcommand{\@ldtable}{}
+\let\@ldtable\table
+\renewcommand{\table}{%
+ \setlength{\@tempdima}{\abovecaptionskip}%
+ \setlength{\abovecaptionskip}{\belowcaptionskip}%
+ \setlength{\belowcaptionskip}{\@tempdima}%
+ \@ldtable}%
diff --git a/Master/texmf-dist/tex/latex/ltxmisc/ifmtarg.sty b/Master/texmf-dist/tex/latex/ltxmisc/ifmtarg.sty
new file mode 100644
index 00000000000..1c489af34c2
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/ltxmisc/ifmtarg.sty
@@ -0,0 +1,66 @@
+% ifmtarg.sty
+%
+% Provides an if-then-else command for an empty macro argument
+% (empty = zero or more spaces only)
+% Use as \@ifmtarg{arg1}{Code for arg1 empty}{Code for arg1 not empty}
+%
+% author: Peter Wilson (CUA)
+% (now at peter.r.wilson@boeing.com)
+% Copyright Peter Wilson, 1996
+% Copyright Peter Wilson and Donald Arseneau, 2000
+% Released under the LaTeX Project Public License
+%
+%
+\NeedsTeXFormat{LaTeX2e}
+\ProvidesPackage{ifmtarg}[2000/03/24 v1.2 check for an empty argument]
+
+%% Commands by Donald Arseneau
+\begingroup
+\catcode`\Q=3
+\long\gdef\@ifmtarg#1{\@xifmtarg#1QQ\@secondoftwo\@firstoftwo\@nil}
+\long\gdef\@xifmtarg#1#2Q#3#4#5\@nil{#4}
+\long\gdef\@ifnotmtarg#1{\@xifmtarg#1QQ\@firstofone\@gobble\@nil}
+\endgroup
+
+\endinput
+
+%
+% The \@ifmtarg command takes 3 arguments and \@ifnotmtarg takes 2 arguments.
+% \@ifnotmtarg is slightly more efficient when code is only required
+% for a non-empty argument.
+%
+% Example usages:
+% \newcommand{\isempty}{1]{%
+% \@ifmtarg{#1}{\typeout{YES}}{\typeout{NO}}}
+%
+% \isempty{} -> YES
+% \isempty{ } -> YES
+% \isempty{E} -> NO
+% \isempty{ E } -> NO
+%
+% \newcommand{\isnotempty}[1]{%
+% \@ifnotmtarg{#1}{\typeout{YES}}}
+%
+% \isnotempty{} ->
+% \isnotempty{ } ->
+% \isnotempty{E} -> YES
+% \isnotempty{ E } -> YES
+%
+% In an Email to me on 13 March 2000, Donald Arseneau pointed out some
+% failings with my original definition of the \@ifmtarg command:
+% \newcommand{\@ifmtarg}[3]{%
+% \edef\@mtarg{\zap@space#1 \@empty}%
+% \ifx\@empty\@mtarg\relax #2\else #3\fi}
+%
+% It works most of the time correctly but Donald showed that it can
+% give unexpected results
+% under conditions that I had not thought of. He suggested the coding
+% that now appears in the package above for the \@ifmtarg and
+% \@ifnotmtarg commands. For a discussion on detecting empty arguments
+% see CTAN/info/aro-bend/answer.002
+%
+% Peter W.
+%
+
+
+
diff --git a/Master/texmf-dist/tex/latex/ltxmisc/mitpress.sty b/Master/texmf-dist/tex/latex/ltxmisc/mitpress.sty
new file mode 100644
index 00000000000..ec6307d24f1
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/ltxmisc/mitpress.sty
@@ -0,0 +1,33 @@
+% mitpress.sty
+\typeout{LaTeX style for MIT Press format.}
+% Use it as \documentstyle[mitpress,...]{article}
+\textheight 21.6cm
+\textwidth 12.9cm
+% latex.ltx defines arraycolsep as a dimension, so use \setlength (gp 09/18/1998)
+%\renewcommand{\arraycolsep}{1pt}
+\setlength{\arraycolsep}{1pt}
+\def\@maketitle{\vbox to 2.5in{\hsize\textwidth \linewidth\hsize \vfil
+ \raggedright
+ {\LARGE\bf \@title \par} % Title set in \LARGE size.
+ \vskip 2em % Vertical space after title.
+ {\large \@author}
+% {\large \begin{tabular}[t]{l}\@author \end{tabular}\par}
+ \vfil}}
+\def\section{\@startsection {section}{1}{\z@}{-1.5ex}{1.5ex}{\large\bf}}
+\def\subsection{\@startsection{subsection}{2}{\z@}{-1.2ex}{1.2ex}{\large\bf}}
+\def\subsubsection{\@startsection{subsubsection}{3}{\z@}{-1ex}{1ex}{
+ \normalsize\bf}}
+\def\paragraph{\@startsection
+ {paragraph}{4}{\z@}{1ex}{-1em}{\normalsize\bf}}
+\def\subparagraph{\@startsection
+ {subparagraph}{4}{\parindent}{1ex}{-1em}{\normalsize\bf}}
+\def\thebibliography#1{\section*{References\@mkboth
+ {REFERENCES}{REFERENCES}}\list
+ {[\arabic{enumi}]}{\settowidth\labelwidth{[#1]}\leftmargin\labelwidth
+ \advance\leftmargin\labelsep
+ \itemsep 0pt \parsep 0pt
+ \usecounter{enumi}}
+ \def\newblock{\hskip .11em plus .33em minus .07em}
+ \sloppy\clubpenalty4000\widowpenalty4000
+ \sfcode`\.=1000\relax}
+\endinput
diff --git a/Master/texmf-dist/tex/latex/ltxmisc/morefloats.sty b/Master/texmf-dist/tex/latex/ltxmisc/morefloats.sty
new file mode 100644
index 00000000000..57942dddace
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/ltxmisc/morefloats.sty
@@ -0,0 +1,51 @@
+% \iffalse
+%% This is morefloats.sty as of 27-July-1990
+%% Don Hosek, Quixote <dhosek@ymir.claremont.edu>
+% \fi
+%
+% The task at hand is to increase \LaTeX's current limit of 18 unprocessed
+% floats in memory at once to 36. An examination of latex.tex reveals that
+% this is accomplished by allocating an insert register for each unprocessed
+% float. A quick check of lplain.lis reveals that there is room, in fact,
+% for 230 additional unprocessed floats, but \TeX's main memory would be
+% exhausted long before that happened.
+%
+% First we allocate the additional insert registers needed:
+% \begin{macrocode}
+\newinsert\bx@S
+\newinsert\bx@T
+\newinsert\bx@U
+\newinsert\bx@V
+\newinsert\bx@W
+\newinsert\bx@X
+\newinsert\bx@Y
+\newinsert\bx@Z
+\newinsert\bx@AA
+\newinsert\bx@BB
+\newinsert\bx@CC
+\newinsert\bx@DD
+\newinsert\bx@EE
+\newinsert\bx@FF
+\newinsert\bx@GG
+\newinsert\bx@HH
+\newinsert\bx@II
+\newinsert\bx@JJ
+% \end{macrocode}
+%
+% That accomplished, the next step is to define the macro \verb+\@freelist+
+% which is merely a list of the box registers each preceded by \verb+\@elt+.
+% This approach allows processing of the list to be done far more efficiently.
+% A similar approach is used by Mittelbach \& Sch\"opf's {\tt doc.sty} to
+% keep track of control sequences which should not be indexed.
+% \begin{macrocode}
+\gdef\@freelist{\@elt\bx@A\@elt\bx@B\@elt\bx@C\@elt\bx@D\@elt\bx@E
+ \@elt\bx@F\@elt\bx@G\@elt\bx@H\@elt\bx@I\@elt\bx@J
+ \@elt\bx@K\@elt\bx@L\@elt\bx@M\@elt\bx@N
+ \@elt\bx@O\@elt\bx@P\@elt\bx@Q\@elt\bx@R
+ \@elt\bx@S\@elt\bx@T\@elt\bx@U\@elt\bx@V
+ \@elt\bx@W\@elt\bx@X\@elt\bx@Y\@elt\bx@Z
+ \@elt\bx@AA\@elt\bx@BB\@elt\bx@CC\@elt\bx@DD
+ \@elt\bx@EE\@elt\bx@FF\@elt\bx@GG\@elt\bx@HH
+ \@elt\bx@II\@elt\bx@JJ}
+% \end{macrocode}
+\endinput
diff --git a/Master/texmf-dist/tex/latex/ltxmisc/nextpage.sty b/Master/texmf-dist/tex/latex/ltxmisc/nextpage.sty
new file mode 100644
index 00000000000..cb94cfa7e3a
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/ltxmisc/nextpage.sty
@@ -0,0 +1,54 @@
+% nextpage.sty
+%
+% Provides additional \clear...page commands
+%
+% author: Peter Wilson (CUA)
+% (now at peter.r.wilson@boeing.com)
+% Copyright 1996
+% Released under the LaTeX Project Public License
+%
+%
+\NeedsTeXFormat{LaTeX2e}
+\ProvidesPackage{nextpage}[2000/02/20 v1.1 additional page commands]
+
+% clear to next page is:
+% \clearpage
+
+% clear to next even numbered page,
+% putting optional arg on skipped page, if any
+\newcommand{\cleartoevenpage}[1][\@empty]{%
+ \clearpage%
+ \ifodd\c@page\hbox{}#1\clearpage\fi}
+
+% move to next page without flushing floats is:
+% \newpage
+
+% move to next even numbered page without flushing floats,
+% putting optional arg on skipped page, if any
+\newcommand{\movetoevenpage}[1][\@empty]{%
+ \newpage%
+ \ifodd\c@page\hbox{}#1\newpage\fi}
+
+% clear to next odd numbered page,
+% putting optional arg on skipped page, if any
+\newcommand{\cleartooddpage}[1][\@empty]{%
+ \clearpage%
+ \ifodd\c@page\else\hbox{}#1\clearpage\fi}
+
+% move to next odd numbered page without flushing floats,
+% putting optional arg on skipped page, if any
+\newcommand{\movetooddpage}[1][\@empty]{%
+ \newpage%
+ \ifodd\c@page\else\hbox{}#1\newpage\fi}
+
+\endinput
+
+% NOTE: If used with the epigraph package,
+% then nextpage.sty must be loaded first.
+% Example uses:
+% \cleartooddpage % same as \cleardouble page
+% \cleartooddpage[\thispagestyle{empty}] % No headings on the skipped page
+% \cleartoevenpage % go to next even numbered page
+% Next example puts text on a skipped page
+% \cleartoevenpage[\vspace*{\hfill}THIS PAGE LEFT BLANK\vspace*{\hfill}]
+%
diff --git a/Master/texmf-dist/tex/latex/ltxmisc/notoccite.sty b/Master/texmf-dist/tex/latex/ltxmisc/notoccite.sty
new file mode 100644
index 00000000000..af4ec3bd048
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/ltxmisc/notoccite.sty
@@ -0,0 +1,43 @@
+% notoccite.sty no t.o.c. cite Jul 20, 2000
+% Donald Arseneau asnd@triumf.ca TRIUMF, Vancouver, Canada,
+% This is unrestricted software contributed to the public domain.
+%
+% Ordinarily, cites used in titles or figure captions also appear in
+% the table of contents and list of figures. If you then run bibtex
+% using the unsrt (unsorted) style, they get numbered starting from 1,
+% not the number they should have in the main text.
+%
+% A good option is to avoid cites in titles, and to specify optional
+% caption text without cites:
+% \caption [Picture of a bird.]{Picture of a bird \cite{audobon}.}
+%
+% If you must use moving cites, you could manage them by deleting toc
+% and lof files, then running latex once, then bibtex. However, the
+% following definition fixes the problem so you don't need to worry
+% about that.
+%
+% *NOTE* This definition works for the ordinary LaTeX definitions
+% for \cite and others (\addtocontents, \label) but it may well
+% fail when used with various packages for citations or cross
+% references.
+%
+% It works by locally setting \@fileswfalse, which is something like
+% \nofiles, but \@fileswfalse does not affect \label or \addtocontents.
+% \nofiles does most of its work by redefining \protected@write, and
+% neither \addtocontents nor \label check for \if@filesw. \cite *does*
+% check \if@filesw.
+
+\ProvidesPackage{notoccite}[2000/07/20]
+\def\@starttoc#1{%
+ \begingroup
+ \@fileswfalse
+ \makeatletter
+ \@input{\jobname.#1}%
+ \endgroup
+ \if@filesw
+ \expandafter\newwrite\csname tf@#1\endcsname
+ \immediate\openout \csname tf@#1\endcsname \jobname.#1\relax
+ \fi
+ \@nobreakfalse
+}
+