summaryrefslogtreecommitdiff
path: root/obsolete/macros/latex/contrib/revtex4-1/tex/latex/revtex/ltxgrid.sty
diff options
context:
space:
mode:
Diffstat (limited to 'obsolete/macros/latex/contrib/revtex4-1/tex/latex/revtex/ltxgrid.sty')
-rw-r--r--obsolete/macros/latex/contrib/revtex4-1/tex/latex/revtex/ltxgrid.sty2722
1 files changed, 0 insertions, 2722 deletions
diff --git a/obsolete/macros/latex/contrib/revtex4-1/tex/latex/revtex/ltxgrid.sty b/obsolete/macros/latex/contrib/revtex4-1/tex/latex/revtex/ltxgrid.sty
deleted file mode 100644
index be1c2bfd78..0000000000
--- a/obsolete/macros/latex/contrib/revtex4-1/tex/latex/revtex/ltxgrid.sty
+++ /dev/null
@@ -1,2722 +0,0 @@
-%%
-%% This is file `ltxgrid.sty',
-%% generated with the docstrip utility.
-%%
-%% The original source files were:
-%%
-%% ltxgrid.dtx (with options: `package,kernel')
-%%
-%% This is a generated file;
-%% altering it directly is inadvisable;
-%% instead, modify the original source file.
-%% See the URL in the file 00readme.tex.
-%%
-%% License
-%% You may distribute this file under the conditions of the
-%% LaTeX Project Public License 1.3 or later
-%% (http://www.latex-project.org/lppl.txt).
-%%
-%% This file is distributed WITHOUT ANY WARRANTY;
-%% without even the implied warranty of MERCHANTABILITY
-%% or FITNESS FOR A PARTICULAR PURPOSE.
-%%
-%%% @LaTeX-file{
-%%% filename = "ltxgrid.dtx",
-%%% version = "4.1r",
-%%% date = "2010/07/25",
-%%% time = "20:33:00 UT-8",
-%%% checksum = "5462",
-%%% author = "Arthur Ogawa (mailto:arthur_ogawa at sbcglobal.net),
-%%% commissioned by the American Physical Society.
-%%% ",
-%%% copyright = "Copyright (C) 1999, 2009 Arthur Ogawa,
-%%% distributed under the terms of the
-%%% LaTeX Project Public License, see
-%%% ftp://ctan.tug.org/macros/latex/base/lppl.txt
-%%% ",
-%%% address = "Arthur Ogawa,
-%%% USA",
-%%% telephone = "",
-%%% FAX = "",
-%%% email = "mailto colon arthur_ogawa at sbcglobal.net",
-%%% codetable = "ISO/ASCII",
-%%% keywords = "latex, page grid, main vertical list",
-%%% supported = "yes",
-%%% abstract = "package to change page grid, MVL",
-%%% docstring = "The checksum field above generated by ltxdoc",
-%%% }
-\NeedsTeXFormat{LaTeX2e}[1995/12/01]%
-\ProvidesFile{%
-ltxgrid%
-.sty%
-}%
- [2010/07/25/20:33:00 4.1r page grid package (portions licensed from W. E. Baxter web at superscript.com)]% \fileversion
-\def\package@name{ltxgrid}%
-\expandafter\PackageInfo\expandafter{\package@name}{%
- Page grid for \protect\LaTeXe,
- by A. Ogawa (arthur_ogawa at sbcglobal.net)%
-}%
-\RequirePackage{ltxutil}%
-\newcounter{linecount}
-\def\loop@line#1#2{%
- \par
- \hb@xt@\hsize{%
- \global\advance#1\@ne
- \edef\@tempa{\@ifnum{100>#1}{0}{}\@ifnum{10>#1}{0}{}\number#1}%
- \@tempa\edef\@tempa{\special{line:\@tempa}}\@tempa
- \vrule depth2.5\p@#2\leaders\hrule\hfil
- }%
-}%
-\def\lineloop#1{%
- \loopwhile{\loop@line\c@linecount{}\@ifnum{#1>\c@linecount}}%
-}%
-\def\linefoot#1{%
- \loop@line\c@linecount{%
- \footnote{%
- #1\special{foot:#1}\vrule depth2.5\p@\leaders\hrule\hfill
- }%
- }%
-}%
-\let\@@mark\mark
-\let\@@topmark\topmark
-\let\@@firstmark\firstmark
-\let\@@botmark\botmark
-\let\@@splitfirstmark\splitfirstmark
-\let\@@splitbotmark\splitbotmark
-\def\@themark{{}{}{}{}}%
-\def\nul@mark{{}{}{}{}\@@nul}%
-\def\set@mark@netw@#1#2#3#4#5#6#7{\gdef#1{{#6}{#7}{#4}{#5}}\do@mark}%
-\def\set@marktw@#1#2#3#4#5#6{\gdef#1{{#2}{#6}{#4}{#5}}\do@mark}%
-\def\set@markthr@@#1#2#3#4#5#6{\gdef#1{{#2}{#3}{#6}{#5}}\do@mark}%
-\def\get@mark@@ne#1#2#3#4#5\@@nul{#1}%
-\def\get@mark@tw@#1#2#3#4#5\@@nul{#2}%
-\def\get@mark@thr@@#1#2#3#4#5\@@nul{#3}%
-\def\get@mark@f@ur#1#2#3#4#5\@@nul{#4}%
-\def\mark@netw@{\expandafter\set@mark@netw@\expandafter\@themark\@themark}%
-\def\marktw@{\expandafter\set@marktw@\expandafter\@themark\@themark}%
-\def\markthr@@{\expandafter\set@markthr@@\expandafter\@themark\@themark}%
-\def\do@mark{\do@@mark\@themark\nobreak@mark}%
-\def\do@@mark#1{%
- \begingroup
- \let@mark
- \@@mark{#1}%
- \endgroup
-}%
-\def\let@mark{%
- \let\protect\@unexpandable@protect
- \let\label\relax
- \let\index\relax
- \let\glossary\relax
-}%
-\def\nobreak@mark{%
- \@if@sw\if@nobreak\fi{\@ifvmode{\nobreak}{}}{}%
-}%
-\def\mark@envir{\markthr@@}%
-\def\bot@envir{%
- \expandafter\expandafter
- \expandafter\get@mark@thr@@
- \expandafter\@@botmark
- \nul@mark
-}%
-\def\markboth{\mark@netw@}%
-\def\markright{\marktw@}%
-\def\leftmark{%
- \expandafter\expandafter
- \expandafter\get@mark@@ne
- \expandafter\saved@@botmark
- \nul@mark
-}%
-\def\rightmark{%
- \expandafter\expandafter
- \expandafter\get@mark@tw@
- \expandafter\saved@@firstmark
- \nul@mark
-}%
-\let\primitive@output\output
-\long\def\@tempa#1\@@nil{#1}%
- \toks@
-\expandafter\expandafter
-\expandafter{%
-\expandafter \@tempa
- \the\primitive@output
- \@@nil
- }%
-\newtoks\output@latex
-\output@latex\expandafter{\the\toks@}%
-\let\output\output@latex
-\primitive@output{\dispatch@output}%
-\def\dispatch@output{%
- \let\par\@@par
- \expandafter\let\expandafter\output@procedure\csname output@\the\outputpenalty\endcsname
- \@ifnotrelax\output@procedure{}{%
- \expandafter\def\expandafter\output@procedure\expandafter{\the\output@latex}%
- }%
- \expandafter\@ifx\expandafter{\csname output@-\the\execute@message@pen\endcsname\output@procedure}{%
- \let\output@procedure\@message@saved
- }{}%
- \ltxgrid@info@sw{\class@info{\string\dispatch@output}\say\output@procedure\saythe\holdinginserts}{}%
- \outputdebug@sw{\output@debug}{}%
- \output@procedure
-}%
-\def\set@output@procedure#1#2{%
- \count@\outputpenalty\advance\count@-#2%
- \expandafter\let\expandafter#1\csname output@\the\count@\endcsname
-}%
-\def\output@debug{%
- \def\@tempa{\save@message}%
- \@ifx{\output@procedure\@tempa}{%
- \true@sw
- }{%
- \@ifnum{\outputpenalty=-\save@column@insert@pen}{%
- \@ifnum{\holdinginserts>\z@}%
- }{%
- \false@sw
- }%
- }%
- {}{\output@debug@}%
-}%
-\def\output@debug@{%
- \saythe\outputpenalty
- \saythe\interlinepenalty
- \saythe\brokenpenalty
- \saythe\clubpenalty
- \saythe\widowpenalty
- \saythe\displaywidowpenalty
- \saythe\predisplaypenalty
- \saythe\interdisplaylinepenalty
- \saythe\postdisplaypenalty
- \saythe\badness
- \say\thepagegrid
- \saythe\pagegrid@col
- \saythe\pagegrid@cur
- \saythe\insertpenalties
- \say\@@botmark
- \saythe\pagegoal
- \saythe\pagetotal
- \saythe{\badness\@cclv}%
- \say\@toplist
- \say\@botlist
- \say\@dbltoplist
- \say\@deferlist
- \trace@scroll{%
- \showbox\@cclv
- \showbox\@cclv@saved
- \showbox\pagesofar
- \showbox\csname col@1\endcsname
- \showbox\footsofar
- \showbox\footins
- \showbox\footins@saved
- \showlists
- }%
-}%
-\@ifxundefined{\outputdebug@sw}{%
- \@booleanfalse\outputdebug@sw
-}{}%
-\def\trace@scroll#1{\begingroup\showboxbreadth\maxdimen\showboxdepth\maxdimen\scrollmode#1\endgroup}%
-\def\trace@box#1{\trace@scroll{\showbox#1}}%
-\prepdef\@outputpage{\@outputpage@head}%
-\let\@outputpage@head\@empty
-\appdef\@outputpage{\@outputpage@tail}%
-\let\@outputpage@tail\@empty
-\def\show@box@size#1#2{%
- \show@box@size@sw{%
- \begingroup
- \setbox\z@\vbox{\unvcopy#2\hrule}%
- \class@info{Show box size: #1^^J%
- (\the\ht\z@\space X \the\wd\z@)
- \the\c@page\space\space\the\pagegrid@cur\space\the\pagegrid@col
- }%
- \endgroup
- }{}%
-}%
-\def\show@text@box@size{%
- \show@box@size{Text column}\@outputbox
- \tally@box@size@sw{%
- \@ifdim{\wd\@outputbox>\z@}{%
- \dimen@\ht\@outputbox\divide\dimen@\@twopowerfourteen
- \advance\dimen@-\dp\csname box@size@\the\pagegrid@col\endcsname
- \@ifdim{\dimen@>\z@}{%
- \advance\dimen@ \ht\csname box@size@\the\pagegrid@col\endcsname
- \global\ht\csname box@size@\the\pagegrid@col\endcsname\dimen@
- \show@box@size@sw{%
- \class@info{Column: \the\dimen@}%
- }{}%
- }{}%
- }{}%
- \global\dp\csname box@size@\the\pagegrid@col\endcsname\z@
- }{}%
-}%
-\def\show@pagesofar@size{%
- \show@box@size{Page so far}\pagesofar
- \dimen@\ht\pagesofar\divide\dimen@\@twopowerfourteen
- \global\dp\csname box@size@1\endcsname\dimen@
- \show@box@size@sw{%
- \class@info{Pagesofar: \the\dimen@}%
- }{}%
-}%
-\@booleanfalse\tally@box@size@sw
-\@booleanfalse\show@box@size@sw
-\expandafter\newbox\csname box@size@1\endcsname
-\expandafter\setbox\csname box@size@1\endcsname\hbox{}%
-\expandafter\newbox\csname box@size@2\endcsname
-\expandafter\setbox\csname box@size@2\endcsname\hbox{}%
-\def\total@text{%
- \@tempdima\the\ht\csname box@size@2\endcsname\divide\@tempdima\@twopowertwo\@tempcnta\@tempdima
- \@tempdimb\the\ht\csname box@size@1\endcsname\divide\@tempdimb\@twopowertwo\@tempcntb\@tempdimb
- \class@info{Total text: Column(\the\@tempcnta pt), Page(\the\@tempcntb pt)}%
-}%
-\def\natural@output{\toggle@insert{\output@holding}{\output@moving}}%
-\output@latex{\natural@output}%
-\def\output@holding{%
- \csname output@init@\bot@envir\endcsname
- \@if@exceed@pagegoal{\unvcopy\@cclv}{%
- \setbox\z@\vbox{\unvcopy\@cclv}%
- \outputdebug@sw{\trace@box\z@}{}%
- \dimen@\ht\@cclv\advance\dimen@-\ht\z@
- \dead@cycle@repair\dimen@
- }{%
- \dead@cycle
- }%
-}%
-\def\@if@exceed@pagegoal#1{%
- \begingroup
- \setbox\z@\vbox{#1}%
- \dimen@\ht\z@\advance\dimen@\dp\z@
- \outputdebug@sw{\saythe\dimen@}{}%
- \@ifdim{\dimen@>\pagegoal}{%
- \setbox\z@\vbox{\@@mark{}\unvbox\z@}%
- \splittopskip\topskip
- \splitmaxdepth\maxdepth
- \vbadness\@M
- \vfuzz\maxdimen
- \setbox\tw@\vsplit\z@ to\pagegoal
- \outputdebug@sw{\trace@scroll{\showbox\tw@\showbox\z@}}{}%
- \setbox\tw@\vbox{\unvbox\tw@}%
- \@ifdim{\ht\tw@=\z@}{%
- \ltxgrid@info{Found overly large chunk while preparing to move insertions. Attempting repairs}%
- \aftergroup\true@sw
- }{%
- \aftergroup\false@sw
- }%
- }{%
- \aftergroup\false@sw
- }%
- \endgroup
-}%
-\def\output@moving{%
- \set@top@firstmark
- \@ifnum{\outputpenalty=\do@newpage@pen}{%
- \setbox\@cclv\vbox{%
- \unvbox\@cclv
- \remove@lastbox
- \@ifdim{\ht\z@=\ht\@protection@box}{\box\lastbox}{\unskip}%
- }%
- }{}%
- \@cclv@nontrivial@sw{%
- \expandafter\output@do@prep\csname output@prep@\bot@envir \endcsname
- \@makecolumn\true@sw
- \expandafter\output@column@do\csname output@column@\thepagegrid\endcsname
- \protect@penalty\do@startcolumn@pen
- \clearpage@sw{%
- \protect@penalty\do@endpage@pen
- }{}%
- \expandafter\let\expandafter\output@post@\csname output@post@\bot@envir \endcsname
- \outputdebug@sw{\say\output@post@}{}%
- \@ifx{\output@post@\relax}{\output@post@document}{\output@post@}%
- }{%
- \void@cclv
- }%
- \set@colht
- \global\@mparbottom\z@
- \global\@textfloatsheight\z@
-}%
-\def\output@do@prep#1{%
- \outputdebug@sw{\class@info{Prep: \string#1}}{}%
- \@ifx{#1\relax}{\output@prep@document}{#1}%
-}%
-\def\output@column@do#1{%
- \outputdebug@sw{\class@info{Output column: \string#1}}{}%
- \@ifx{#1\relax}{\output@column@one}{#1}%
-}%
-\def\void@cclv{\begingroup\setbox\z@\box\@cclv\endgroup}%
-\def\remove@lastbox{\setbox\z@\lastbox}%
-\def\@cclv@nontrivial@sw{%
- \@ifx@empty\@toplist{%
- \@ifx@empty\@botlist{%
- \@ifvoid\footins{%
- \@ifvoid\@cclv{%
- \false@sw
- }{%
- \setbox\z@\vbox{\unvcopy\@cclv}%
- \@ifdim{\ht\z@=\topskip}{%
- \setbox\z@\vbox\bgroup
- \unvbox\z@
- \remove@lastbox
- \dimen@\lastskip\unskip
- \@ifdim{\ht\z@=\ht\@protection@box}{%
- \advance\dimen@\ht\z@
- \@ifdim{\dimen@=\topskip}{%
- \aftergroup\true@sw
- }{%
- \aftergroup\false@sw
- }%
- }{%
- \aftergroup\false@sw
- }%
- \egroup
- {%
- \false@sw
- }{%
- \true@sw
- }%
- }{%
- \@ifdim{\ht\z@=\z@}{%
- \ltxgrid@info{Found trivial column. Discarding it}%
- \outputdebug@sw{\trace@box\@cclv}{}%
- \false@sw
- }{%
- \true@sw
- }%
- }%
- }%
- }{%
- \true@sw
- }%
- }{%
- \true@sw
- }%
- }{%
- \true@sw
- }%
-}%
-\def\protect@penalty#1{\protection@box\penalty-#1\relax}%
-\newbox\@protection@box
-\setbox\@protection@box\vbox to1986sp{\vfil}%
-\def\protection@box{\nointerlineskip\copy\@protection@box}%
-\def\dead@cycle@repair#1{%
- \expandafter\do@@mark
- \expandafter{%
- \@@botmark
- }%
- \unvbox\@cclv
- \nointerlineskip
- \vbox to#1{\vss}%
- \@ifnum{\outputpenalty<\@M}{\penalty\outputpenalty}{}%
-}%
-\def\dead@cycle@repair@protected#1{%
- \expandafter\do@@mark
- \expandafter{%
- \@@botmark
- }%
- \begingroup
- \unvbox\@cclv
- \remove@lastbox
- \nointerlineskip
- \advance#1-\ht\@protection@box
- \vbox to#1{\vss}%
- \protection@box % Reinsert protection box
- \@ifnum{\outputpenalty<\@M}{\penalty\outputpenalty}{}%
- \endgroup
-}%
-\def\dead@cycle{%
- \expandafter\do@@mark
- \expandafter{%
- \@@botmark
- }%
- \unvbox\@cclv
- \@ifnum{\outputpenalty<\@M}{\penalty\outputpenalty}{}%
-}%
-\def\output@init@document{%
- \ltxgrid@info@sw{\class@info{\string\output@init@document}}{}%
- \global\vsize\vsize
-}%
-\def\output@prep@document{%
- \ltxgrid@foot@info@sw{\class@info{\string\output@prep@document}\trace@scroll{\showbox\footins\showbox\footsofar}}{}%
- \@ifvoid\footsofar{%
- }{%
- \global\setbox\footins\vbox\bgroup
- \unvbox\footsofar
- \@ifvoid\footins{}{%
- \marry@baselines
- \unvbox\footins
- }%
- \egroup
- \ltxgrid@foot@info@sw{\trace@box\footins}{}%
- }%
-}%
-\def\output@post@document{}%
-\let\@opcol\@undefined
-\def\@makecolumn#1{%
- \ltxgrid@foot@info@sw{\class@info{\string\@makecolumn\string#1}}{}%
- \setbox\@outputbox\vbox\bgroup
- \boxmaxdepth\@maxdepth
- \@tempdima\dp\@cclv
- \unvbox\@cclv
- \vskip-\@tempdima
- \egroup
- \xdef\@freelist{\@freelist\@midlist}\global\let\@midlist\@empty
- \show@text@box@size
- \@combinefloats
- #1{%
- \@combineinserts\@outputbox\footins
- }{%
- \combine@foot@inserts\footsofar\footins
- }%
- \set@adj@colht\dimen@
- \count@\vbadness
- \vbadness\@M
- \setbox\@outputbox\vbox to\dimen@\bgroup
- \@texttop
- \dimen@\dp\@outputbox
- \unvbox\@outputbox
- \vskip-\dimen@
- \@textbottom
- \egroup
- \vbadness\count@
- \global\maxdepth\@maxdepth
-}%
-\let\@makespecialcolbox\@undefined
-\def\@combineinserts#1#2{%
- \ltxgrid@foot@info@sw{\class@info{\string\@combineinserts\string#1\string#2}\trace@box#2}{}%
- \setbox#1\vbox\bgroup
- \unvbox#1%
- \@ifvoid{#2}{}{%
- \dimen@\ht#2\advance\dimen@\dp#2\advance\dimen@\skip#2%
- \show@box@size{Combining inserts}#2%
- \vskip\skip#2%
- \setbox\z@\vbox{\footnoterule}\dimen@i\ht\z@
- \color@begingroup
- \normalcolor
- \cleaders\box\z@\vskip\dimen@i\kern-\dimen@i
- \csname combine@insert@\the\pagegrid@col\endcsname#2%
- \color@endgroup
- \kern-\dimen@\kern\dimen@
- }%
- \egroup
- \ltxgrid@foot@info@sw{\trace@box#1}{}%
-}%
-\def\combine@insert@tw@#1{%
- \compose@footnotes@two#1\@ifvbox{#1}{\unvbox}{\box}#1%
-}%
-\def\combine@insert@@ne#1{%
- \compose@footnotes@one#1\@ifvbox{#1}{\unvbox}{\box}#1%
-}%
-\def\twocolumn@grid@setup{%
- \expandafter\let\csname combine@insert@1\endcsname\combine@insert@tw@
- \expandafter\let\csname combine@insert@2\endcsname\combine@insert@@ne
-}%
-\def\onecolumn@grid@setup{%
- \expandafter\let\csname combine@insert@1\endcsname\combine@insert@@ne
- \expandafter\let\csname combine@insert@2\endcsname\combine@insert@@ne
-}%
-\let\columngrid@setup\onecolumn@grid@setup
-\columngrid@setup
-\appdef\@floatplacement{%
- \global\@fpmin\@fpmin
-}%
-\mathchardef\pagebreak@pen=\@M
-\expandafter\let\csname output@-\the\pagebreak@pen\endcsname\relax
-\mathchardef\do@startcolumn@pen=10005
-\@namedef{output@-\the\do@startcolumn@pen}{\do@startcolumn}%
-\def\do@startcolumn{%
- \setbox\@cclv\vbox{\unvbox\@cclv\remove@lastbox\unskip}%
- \clearpage@sw{\@clearfloatplacement}{\@floatplacement}%
- \set@colht
- \@booleanfalse\pfloat@avail@sw
- \begingroup
- \@colht\@colroom
- \@booleanfalse\float@avail@sw
- \@tryfcolumn\test@colfloat
- \float@avail@sw{\aftergroup\@booleantrue\aftergroup\pfloat@avail@sw}{}%
- \endgroup
- \fcolmade@sw{%
- \setbox\@cclv\vbox{\unvbox\@outputbox\unvbox\@cclv}%
- \outputpenalty-\pagebreak@pen
- \dead@cycle
- }{%
- \begingroup
- \let\@elt\@scolelt
- \let\reserved@b\@deferlist\global\let\@deferlist\@empty\reserved@b
- \endgroup
- \clearpage@sw{%
- \outputpenalty\@M
- }{%
- \outputpenalty\do@newpage@pen
- }%
- \dead@cycle
- }%
- \check@deferlist@stuck\do@startcolumn
- \set@vsize
-}%
-\def\@scolelt#1{\def\@currbox{#1}\@addtonextcol}%
-\def\test@colfloat#1{%
- \csname @floatselect@sw@\thepagegrid\endcsname#1{}{\@testtrue}%
- \@if@sw\if@test\fi{}{\aftergroup\@booleantrue\aftergroup\float@avail@sw}%
-}%
-\def\@addtonextcol{%
- \begingroup
- \@insertfalse
- \@setfloattypecounts
- \csname @floatselect@sw@\thepagegrid\endcsname\@currbox{%
- \@ifnum{\@fpstype=8 }{}{%
- \@ifnum{\@fpstype=24 }{}{%
- \@flsettextmin
- \@reqcolroom \ht\@currbox
- \advance \@reqcolroom \@textmin
- \advance \@reqcolroom \vsize % take into account split insertions
- \advance \@reqcolroom -\pagegoal
- \@ifdim{\@colroom>\@reqcolroom}{%
- \@flsetnum \@colnum
- \@ifnum{\@colnum>\z@}{%
- \@bitor\@currtype\@deferlist
- \@if@sw\if@test\fi{}{%
- \@addtotoporbot
- }%
- }{}%
- }{}%
- }%
- }%
- }{}%
- \@if@sw\if@insert\fi{}{%
- \@cons\@deferlist\@currbox
- }%
- \endgroup
-}%
-\mathchardef\do@startpage@pen=10006
-\@namedef{output@-\the\do@startpage@pen}{\do@startpage}%
-\def\do@startpage{%
- \setbox\@cclv\vbox{\unvbox\@cclv\remove@lastbox\unskip}%
- \clearpage@sw{\@clearfloatplacement}{\@dblfloatplacement}%
- \set@colht
- \@booleanfalse\pfloat@avail@sw
- \begingroup
- \@booleanfalse\float@avail@sw
- \@tryfcolumn\test@dblfloat
- \float@avail@sw{\aftergroup\@booleantrue\aftergroup\pfloat@avail@sw}{}%
- \endgroup
- \fcolmade@sw{%
- \global\setbox\pagesofar\vbox{\unvbox\pagesofar\unvbox\@outputbox}%
- \@output@combined@page
- }{%
- \begingroup
- \@booleanfalse\float@avail@sw
- \let\@elt\@sdblcolelt
- \let\reserved@b\@deferlist\global\let\@deferlist\@empty\reserved@b
- \endgroup
- \@ifdim{\@colht=\textheight}{% No luck...
- \pfloat@avail@sw{% ...but a float *was* available!
- \forcefloats@sw{%
- \ltxgrid@warn{Forced dequeueing of floats stalled}%
- }{%
- \ltxgrid@warn{Dequeueing of floats stalled}%
- }%
- }{}%
- }{}%
- \outputpenalty\@M
- \dead@cycle
- }%
- \check@deferlist@stuck\do@startpage
- \set@colht
-}%
-\def\@output@combined@page{%
- \@combinepage\true@sw
- \@combinedblfloats
- \@outputpage
- \global\pagegrid@cur\@ne
- \protect@penalty\do@startpage@pen
-}%
-\def\@sdblcolelt#1{\def\@currbox{#1}\@addtodblcol}%
-\def\test@dblfloat#1{%
- \@if@notdblfloat{#1}{\@testtrue}{}%
- \@if@sw\if@test\fi{}{\aftergroup\@booleantrue\aftergroup\float@avail@sw}%
-}%
-\def\@if@notdblfloat#1{\@ifdim{\wd#1<\textwidth}}%
-\@booleanfalse\forcefloats@sw
-\def\@addtodblcol{%
- \begingroup
- \@if@notdblfloat{\@currbox}{%
- \false@sw
- }{%
- \@setfloattypecounts
- \@getfpsbit \tw@
- \@bitor \@currtype \@deferlist
- \@if@sw\if@test\fi{%
- \false@sw
- }{%
- \@ifodd\@tempcnta{%
- \aftergroup\@booleantrue\aftergroup\float@avail@sw
- \@flsetnum \@dbltopnum
- \@ifnum{\@dbltopnum>\z@}{%
- \@ifdim{\@dbltoproom>\ht\@currbox}{%
- \true@sw
- }{%
- \@ifnum{\@fpstype<\sixt@@n}{%
- \begingroup
- \advance \@dbltoproom \@textmin
- \@ifdim{\@dbltoproom>\ht\@currbox}{%
- \endgroup\true@sw
- }{%
- \endgroup\false@sw
- }%
- }{%
- \false@sw
- }%
- }%
- }{%
- \false@sw
- }%
- }{%
- \false@sw
- }%
- }%
- }%
- {%
- \@tempdima -\ht\@currbox
- \advance\@tempdima
- -\@ifx{\@dbltoplist\@empty}{\dbltextfloatsep}{\dblfloatsep}%
- \global \advance \@dbltoproom \@tempdima
- \global \advance \@colht \@tempdima
- \global \advance \@dbltopnum \m@ne
- \@cons \@dbltoplist \@currbox
- }{%
- \@cons \@deferlist \@currbox
- }%
- \endgroup
-}%
-\def\@tryfcolumn#1{%
- \global\@booleanfalse\fcolmade@sw
- \@ifx@empty\@deferlist{}{%
- \global\let\@trylist\@deferlist
- \global\let\@failedlist\@empty
- \begingroup
- \dimen@\vsize\advance\dimen@-\pagegoal\@ifdim{\dimen@>\z@}{%
- \advance\@fpmin-\dimen@
- }{}%
- \def\@elt{\@xtryfc#1}\@trylist
- \endgroup
- \fcolmade@sw{%
- \global\setbox\@outputbox\vbox{\vskip \@fptop}%
- \let \@elt \@wtryfc \@flsucceed
- \global\setbox\@outputbox\vbox{\unvbox\@outputbox
- \unskip \vskip \@fpbot
- }%
- \let \@elt \relax
- \xdef\@deferlist{\@failedlist\@flfail}%
- \xdef\@freelist{\@freelist\@flsucceed}%
- }{}%
- }%
-}%
-\def\@wtryfc #1{%
- \global\setbox\@outputbox\vbox{\unvbox\@outputbox
- \box #1\vskip\@fpsep
- }%
-}%
-\def\@xtryfc#1#2{%
- \@next\reserved@a\@trylist{}{}% trim \@trylist. Ugly!
- \@currtype \count #2%
- \divide\@currtype\@xxxii\multiply\@currtype\@xxxii
- \@bitor \@currtype \@failedlist
- \@testfp #2%
- #1#2%
- \@ifdim{\ht #2>\@colht }{\@testtrue}{}%
- \@if@sw\if@test\fi{%
- \@cons\@failedlist #2%
- }{%
- \begingroup
- \gdef\@flsucceed{\@elt #2}%
- \global\let\@flfail\@empty
- \@tempdima\ht #2%
- \def \@elt {\@ztryfc#1}\@trylist
- \@ifdim{\@tempdima >\@fpmin}{%
- \global\@booleantrue\fcolmade@sw
- }{%
- \@cons\@failedlist #2%
- }%
- \endgroup
- \fcolmade@sw{%
- \let \@elt \@gobble
- }{}%
- }%
-}%
-\def\@ztryfc #1#2{%
- \@tempcnta \count#2%
- \divide\@tempcnta\@xxxii\multiply\@tempcnta\@xxxii
- \@bitor \@tempcnta {\@failedlist \@flfail}%
- \@testfp #2%
- #1#2%
- \@tempdimb\@tempdima
- \advance\@tempdimb \ht#2\advance\@tempdimb\@fpsep
- \@ifdim{\@tempdimb >\@colht}{%
- \@testtrue
- }{}%
- \@if@sw\if@test\fi{%
- \@cons\@flfail #2%
- }{%
- \@cons\@flsucceed #2%
- \@tempdima\@tempdimb
- }%
-}%
-\def\newpage@prep{%
- \if@noskipsec
- \ifx \@nodocument\relax
- \leavevmode
- \global \@noskipsecfalse
- \fi
- \fi
- \if@inlabel
- \leavevmode
- \global \@inlabelfalse
- \fi
- \if@nobreak \@nobreakfalse \everypar{}\fi
- \par
-}%
-\def \newpage {%
- \newpage@prep
- \do@output@MVL{%
- \vfil
- \penalty-\pagebreak@pen
- }%
-}%
-\def\clearpage{%
- \newpage@prep
- \do@output@MVL{%
- \vfil
- \penalty-\pagebreak@pen
- \global\@booleantrue\clearpage@sw
- \protect@penalty\do@startcolumn@pen
- \protect@penalty\do@endpage@pen
- }%
- \do@output@MVL{%
- \global\@booleanfalse\clearpage@sw
- }%
-}%
-\def\cleardoublepage{%
- \clearpage
- \@if@sw\if@twoside\fi{%
- \@ifodd\c@page{}{%
- \null\clearpage
- }%
- }{}%
-}%
-\@booleanfalse\clearpage@sw
-\mathchardef\do@endpage@pen=10007
-\@namedef{output@-\the\do@endpage@pen}{\csname end@column@\thepagegrid\endcsname}%
-\mathchardef\do@newpage@pen=10001
-\expandafter\let\csname output@-\the\do@newpage@pen\endcsname\relax
-\def\@clearfloatplacement{%
- \global\@topnum \maxdimen
- \global\@toproom \maxdimen
- \global\@botnum \maxdimen
- \global\@botroom \maxdimen
- \global\@colnum \maxdimen
- \global\@dbltopnum \maxdimen
- \global\@dbltoproom \maxdimen
- \global\@textmin \z@
- \global\@fpmin \z@
- \let\@testfp\@gobble
- \appdef\@setfloattypecounts{\@fpstype16\advance\@fpstype\m@ne}%
-}%
-\let\@doclearpage\@undefined
-\let\@makefcolumn\@undefined
-\let\@makecol\@undefined
-\def\clr@top@firstmark{%
- \global\let\saved@@topmark\@undefined
- \global\let\saved@@firstmark\@empty
- \global\let\saved@@botmark\@empty
-}%
-\clr@top@firstmark
-\def\set@top@firstmark{%
- \@ifxundefined\saved@@topmark{\expandafter\gdef\expandafter\saved@@topmark\expandafter{\@@topmark}}{}%
- \@if@empty\saved@@firstmark{\expandafter\gdef\expandafter\saved@@firstmark\expandafter{\@@firstmark}}{}%
- \@if@empty\@@botmark{}{\expandafter\gdef\expandafter\saved@@botmark\expandafter{\@@botmark}}%
-}%
-\appdef\@outputpage@tail{%
- \clr@top@firstmark
-}%
-\def\@float#1{%
- \@ifnextchar[{%
- \@yfloat\width@float{#1}%
- }{%
- \@ifxundefined@cs{fps@#1}{}{\expandafter\let\expandafter\fps@\csname fps@#1\endcsname}%
- \expandafter\@argswap\expandafter{\expandafter[\fps@]}{\@yfloat\width@float{#1}}%
- }%
-}%
-\def\@dblfloat#1{%
- \@ifnum{\pagegrid@col=\@ne}{%
- \@float{#1}%
- }{%
- \@ifnextchar[{%
- \@yfloat\widthd@float{#1}%
- }{%
- \@ifxundefined@cs{fpsd@#1}{}{\expandafter\let\expandafter\fpsd@\csname fpsd@#1\endcsname}%
- \expandafter\@argswap\expandafter{\expandafter[\fpsd@]}{\@yfloat\widthd@float{#1}}%
- }%
- }%
-}%
-\def\@yfloat#1#2[#3]{%
- \@xfloat{#2}[#3]%
- \hsize#1\linewidth\hsize
- \let\set@footnotewidth\@empty
- \minipagefootnote@init
-}%
-\def\fps@{tbp}%
-\def\fpsd@{tp}%
-\def\width@float{\columnwidth}%
-\def\widthd@float{\textwidth}%
-\def\end@float{%
- \end@@float{%
- \check@currbox@count
- }%
-}%
-\def\end@dblfloat{%
- \@ifnum{\pagegrid@col=\@ne}{%
- \end@float
- }{%
- \end@@float{%
- \@iffpsbit\@ne{\global\advance\count\@currbox\m@ne}{}%
- \@iffpsbit\f@ur{\global\advance\count\@currbox-4\relax}{}%
- \global\wd\@currbox\textwidth % Klootch
- \check@currbox@count
- }%
- }%
-}%
-\def\end@@float#1{%
- \minipagefootnote@here
- \@endfloatbox
- #1%
- \@ifnum{\@floatpenalty <\z@}{%
- \@largefloatcheck
- \@cons\@currlist\@currbox
- \@ifnum{\@floatpenalty <-\@Mii}{%
- \do@output@cclv{\@add@float}%
- }{%
- \vadjust{\do@output@cclv{\@add@float}}%
- \@Esphack
- }%
- }{}%
-}%
-\newcommand\float@end@float{%
- \@endfloatbox
- \global\setbox\@currbox\float@makebox\columnwidth
- \let\@endfloatbox\relax
- \end@float
-}%
-\newcommand\float@end@ltx{%
- \end@@float{%
- \global\setbox\@currbox\float@makebox\columnwidth
- \check@currbox@count
- }%
-}%
-\newcommand\newfloat@float[3]{%
- \@namedef{ext@#1}{#3} %!
- \let\float@do=\relax
- \xdef\@tempa{\noexpand\float@exts{\the\float@exts \float@do{#3}}}%
- \@tempa
- \floatplacement{#1}{#2}%
- \@ifundefined{fname@#1}{\floatname{#1}{#1}}{} %!
- \expandafter\edef\csname ftype@#1\endcsname{\value{float@type}}%
- \addtocounter{float@type}{\value{float@type}} %!
- \restylefloat{#1}%
- \expandafter\edef\csname fnum@#1\endcsname{%
- \expandafter\noexpand\csname fname@#1\endcsname{} %!
- \expandafter\noexpand\csname the#1\endcsname
- }
- \@ifnextchar[%]
- {%
- \float@newx{#1}%
- }{%
- \@ifundefined{c@#1}{\newcounter{#1}\@namedef{the#1}{\arabic{#1}}}{}%
- }%
-}%
-\newcommand\newfloat@ltx[3]{%
- \@namedef{ext@#1}{#3}%
- \let\float@do=\relax
- \xdef\@tempa{\noexpand\float@exts{\the\float@exts \float@do{#3}}}%
- \@tempa
- \floatplacement{#1}{#2}%
- \@ifundefined{fname@#1}{\floatname{#1}{#1}}{}%
- \expandafter\edef\csname ftype@#1\expandafter\endcsname\expandafter{\the\c@float@type}%
- \addtocounter{float@type}{\value{float@type}}%
- \restylefloat{#1}%
- \expandafter\edef\csname fnum@#1\endcsname{%
- \expandafter\noexpand\csname fname@#1\endcsname{}%
- \expandafter\noexpand\csname the#1\endcsname
- }
- \@ifnextchar[%]
- {%
- \float@newx{#1}%
- }{%
- \@ifundefined{c@#1}{\newcounter{#1}\@namedef{the#1}{\arabic{#1}}}{}%
- }%
-}%
-\appdef\document@inithook{%
- \@ifxundefined\newfloat{}{%
- \@ifx{\float@end\float@end@float}{%
- \@ifx{\newfloat\newfloat@float}{\true@sw}{\false@sw}%
- }{\false@sw}%
- {%
- \class@warn{Repair the float package}%
- \let\float@end\float@end@ltx
- \let\newfloat\newfloat@ltx
- }{%
- \class@warn{Failed to patch the float package}%
- }%
- }%
-}%
-\def\@iffpsbit#1{%
- \begingroup
- \@tempcnta\count\@currbox
- \divide\@tempcnta#1\relax
- \@ifodd\@tempcnta{\aftergroup\true@sw}{\aftergroup\false@sw}%
- \endgroup
-}%
-\def\check@currbox@count{%
- \@ifnum{\count\@currbox>\z@}{%
- \count@\count\@currbox\divide\count@\sixt@@n\multiply\count@\sixt@@n
- \@tempcnta\count\@currbox\advance\@tempcnta-\count@
- \@ifnum{\@tempcnta=\z@}{%
- \ltxgrid@warn{Float cannot be placed}%
- }{}%
- \expandafter\tally@float\expandafter{\@captype}%
- }{%
- }%
-}%
-\providecommand\minipagefootnote@init{}%
-\providecommand\minipagefootnote@here{}%
-\providecommand\tally@float[1]{}%
-\let\@specialoutput\@undefined
-\def\@add@float{%
- \@pageht\ht\@cclv\@pagedp\dp\@cclv
- \unvbox\@cclv
- \@next\@currbox\@currlist{%
- \csname @floatselect@sw@\thepagegrid\endcsname\@currbox{%
- \@ifnum{\count\@currbox>\z@}{%
- \advance \@pageht \@pagedp
- \advance \@pageht \vsize \advance \@pageht -\pagegoal
- \@addtocurcol
- }{%
- \@addmarginpar
- }%
- }{%
- \@resethfps
- \@cons\@deferlist\@currbox
- }%
- }{\@latexbug}%
- \@ifnum{\outputpenalty<\z@}{%
- \@if@sw\if@nobreak\fi{%
- \nobreak
- }{%
- \addpenalty \interlinepenalty
- }%
- }{}%
- \set@vsize
-}%
-\let\@reinserts\@undefined
-\def \@addtocurcol {%
- \@insertfalse
- \@setfloattypecounts
- \ifnum \@fpstype=8
- \else
- \ifnum \@fpstype=24
- \else
- \@flsettextmin
- \advance \@textmin \@textfloatsheight
- \@reqcolroom \@pageht
- \ifdim \@textmin>\@reqcolroom
- \@reqcolroom \@textmin
- \fi
- \advance \@reqcolroom \ht\@currbox
- \ifdim \@colroom>\@reqcolroom
- \@flsetnum \@colnum
- \ifnum \@colnum>\z@
- \@bitor\@currtype\@deferlist
- \if@test
- \else
- \@bitor\@currtype\@botlist
- \if@test
- \@addtobot
- \else
- \ifodd \count\@currbox
- \advance \@reqcolroom \intextsep
- \ifdim \@colroom>\@reqcolroom
- \global \advance \@colnum \m@ne
- \global \advance \@textfloatsheight \ht\@currbox
- \global \advance \@textfloatsheight 2\intextsep
- \@cons \@midlist \@currbox
- \if@nobreak
- \nobreak
- \@nobreakfalse
- \everypar{}%
- \else
- \addpenalty \interlinepenalty
- \fi
- \vskip \intextsep
- \unvbox\@currbox %AO
- \penalty\interlinepenalty
- \vskip\intextsep
- \ifnum\outputpenalty <-\@Mii \vskip -\parskip\fi
- \outputpenalty \z@
- \@inserttrue
- \fi
- \fi
- \if@insert
- \else
- \@addtotoporbot
- \fi
- \fi
- \fi
- \fi
- \fi
- \fi
- \fi
- \if@insert
- \else
- \@resethfps
- \@cons\@deferlist\@currbox
- \fi
-}%
-\@twocolumnfalse
-\let\@twocolumntrue\@twocolumnfalse
-\def\@addmarginpar{%
- \@next\@marbox\@currlist{%
- \@cons\@freelist\@marbox\@cons\@freelist\@currbox
- }\@latexbug
- \setbox\@marbox\hb@xt@\columnwidth{%
- \csname @addmarginpar@\thepagegrid\endcsname{%
- \hskip-\marginparsep\hskip-\marginparwidth
- \box\@currbox
- }{%
- \hskip\columnwidth\hskip\marginparsep
- \box\@marbox
- }%
- \hss
- }%
- \setbox\z@\box\@currbox
- \@tempdima\@mparbottom
- \advance\@tempdima -\@pageht
- \advance\@tempdima\ht\@marbox
- \@ifdim{\@tempdima >\z@}{%
- \@latex@warning@no@line {Marginpar on page \thepage\space moved}%
- }{%
- \@tempdima\z@
- }%
- \global\@mparbottom\@pageht
- \global\advance\@mparbottom\@tempdima
- \global\advance\@mparbottom\dp\@marbox
- \global\advance\@mparbottom\marginparpush
- \advance\@tempdima -\ht\@marbox
- \global\setbox \@marbox
- \vbox {\vskip \@tempdima
- \box \@marbox}%
- \global \ht\@marbox \z@
- \global \dp\@marbox \z@
- \kern -\@pagedp
- \nointerlineskip
- \box\@marbox
- \nointerlineskip
- \hbox{\vrule \@height\z@ \@width\z@ \@depth\@pagedp}%
-}%
-\newenvironment{turnpage}{%
- \def\width@float{\textheight}%
- \def\widthd@float{\textheight}%
- \appdef\@endfloatbox{%
- \@ifxundefined\@currbox{%
- \ltxgrid@warn{Cannot rotate! Not a float}%
- }{%
- \setbox\@currbox\vbox to\textwidth{\vfil\unvbox\@currbox\vfil}%
- \global\setbox\@currbox\vbox{\rotatebox{90}{\box\@currbox}}%
- }%
- }%
-}{%
-}%
-\def\rotatebox@dummy#1#2{%
- \ltxgrid@warn{You must load the graphics or graphicx package in order to use the turnpage environment}%
- #2%
-}%
-\appdef\document@inithook{%
- \@ifxundefined\rotatebox{\let\rotatebox\rotatebox@dummy}{}%
-}%
-\@namedef{output@-1073741824}{%
- \deadcycles\z@
- \void@cclv
-}%
-\mathchardef\save@column@pen=10016
-\@namedef{output@-\the\save@column@pen}{\save@column}%
-\let \@cclv@saved \@holdpg
-\let \@holdpg \@undefined
-\def\save@column{%
- \@ifvoid\@cclv@saved{%
- \set@top@firstmark
- \global\@topmark@saved\expandafter{\@@topmark}%
- }{}%
- \global\setbox\@cclv@saved\vbox{%
- \@ifvoid\@cclv@saved{}{%
- \unvbox\@cclv@saved
- \marry@baselines
- }%
- \unvbox\@cclv
- \lose@breaks
- \remove@lastbox
- }%
-}%
-\newtoks\@topmark@saved
-\def\prep@cclv{%
- \void@cclv
- \setbox\@cclv\box\@cclv@saved
- \vbadness\@M
-}%
-\mathchardef\save@column@insert@pen=10017
-\@namedef{output@-\the\save@column@insert@pen}{\toggle@insert{\savecolumn@holding}{\savecolumn@moving}}%
-\def\savecolumn@holding{%
- \@if@exceed@pagegoal{\unvcopy\@cclv\remove@lastbox}{%
- \setbox\z@\vbox{\unvcopy\@cclv\remove@lastbox}%
- \outputdebug@sw{\trace@box\z@}{}%
- \dimen@\ht\@cclv\advance\dimen@-\ht\z@
- \dead@cycle@repair@protected\dimen@
- }{%
- \dead@cycle
- }%
-}%
-\def\savecolumn@moving{%
- \ltxgrid@info@sw{\class@info{\string\savecolumn@moving}}{}%
- \@cclv@nontrivial@sw{%
- \save@column
- }{%
- \void@cclv
- }%
- \@ifvoid\footins{}{%
- \ltxgrid@foot@info@sw{\class@info{\string\savecolumn@moving}\trace@scroll{\showbox\footins@saved\showbox\footins}}{}%
- \@ifvoid\footins@saved{%
- \global\setbox\footins@saved\box\footins
- }{%
- \global\setbox\footins@saved\vbox\bgroup
- \unvbox\footins@saved
- \marry@baselines
- \unvbox\footins
- \egroup
- }%
- \ltxgrid@foot@info@sw{\trace@box\footins@saved}{}%
- \protect@penalty\save@column@insert@pen
- }%
-}%
-\newbox\footins@saved
-\newbox\footins@recovered
-\newbox\column@recovered
-\mathchardef\save@message@pen=10018
-\@namedef{output@-\the\save@message@pen}{\save@message}%
-\def\save@message{%
- \void@cclv
- \toks@\expandafter{\@@firstmark}%
- \expandafter\gdef\expandafter\@message@saved\expandafter{\the\toks@}%
- \expandafter\do@@mark\expandafter{\the\@topmark@saved}%
-}%
-\gdef\@message@saved{}%
-\mathchardef\execute@message@pen=10019
-\@namedef{output@-\the\execute@message@pen}{\@message@saved}%
-\def\execute@message{%
- \@execute@message\save@column@pen
-}%
-\def\execute@message@insert#1{%
- \@execute@message\save@column@insert@pen{%
- \setbox \footins \box \footins@saved
- \ltxgrid@foot@info@sw{\class@info{\string\execute@message@insert}\trace@box\footins}{}%
- #1%
- }%
-}%
-\long\def\@execute@message#1#2{%
- \begingroup
- \dimen@\prevdepth\@ifdim{\dimen@<\z@}{\dimen@\z@}{}%
- \setbox\z@\vbox{%
- \protect@penalty#1%
- \protection@box
- \toks@{\prep@cclv#2}%
- \@@mark{\the\toks@}%
- \penalty-\save@message@pen
- \setbox\z@\null\dp\z@\dimen@\ht\z@-\dimen@
- \nointerlineskip\box\z@
- \penalty-\execute@message@pen
- }\unvbox\z@
- \endgroup
-}%
-\def\do@output@cclv{\execute@message}%
-\def\do@output@MVL#1{%
- \@ifvmode{%
- \begingroup\execute@message{\unvbox\@cclv#1}\endgroup
- }{%
- \@ifhmode{%
- \vadjust{\execute@message{\unvbox\@cclv#1}}%
- }{%
- \@latexerr{\string\do@output@MVL\space cannot be executed in this mode!}\@eha
- }%
- }%
-}%
-\def\lose@breaks{%
- \loopwhile{%
- \count@\lastpenalty
- \@ifnum{\count@=\@M}{%
- \unpenalty\true@sw
- }{%
- \false@sw
- }%
- }%
-}%
-\def\removestuff{\do@output@MVL{\unskip\unpenalty}}%
-\def\removephantombox{%
- \vadjust{%
- \execute@message{%
- \unvbox\@cclv
- \remove@lastbox
- \unskip
- \unskip
- \unpenalty
- \penalty\predisplaypenalty
- \vskip\abovedisplayskip
- }%
- }%
-}%
-\def\addstuff#1#2{\edef\@tempa{\noexpand\do@output@MVL{\noexpand\@addstuff{#1}{#2}}}\@tempa}%
-\def\@addstuff#1#2{%
- \skip@\lastskip\unskip
- \count@\lastpenalty\unpenalty
- \@if@empty{#1}{}{\penalty#1\relax}%
- \@ifnum{\count@=\z@}{}{\penalty\count@}%
- \vskip\skip@
- \@if@empty{#2}{}{\vskip#2\relax}%
-}%
-\def\replacestuff#1#2{\edef\@tempa{\noexpand\do@output@MVL{\noexpand\@replacestuff{#1}{#2}}}\@tempa}%
-\def\@replacestuff#1#2{%
- \skip@\lastskip\unskip
- \count@\lastpenalty\unpenalty
- \@if@empty{#1}{}{%
- \@ifnum{\count@>\@M}{}{%
- \@ifnum{\count@=\z@}{\count@=#1\relax}{%
- \@ifnum{\count@<#1\relax}{}{%
- \count@=#1\relax
- }%
- }%
- }%
- }%
- \@ifnum{\count@=\z@}{}{\penalty\count@}%
- \@if@empty{#2}{}{%
- \@tempskipa#2\relax
- \@ifdim{\z@>\@tempskipa}{%
- \advance\skip@-\@tempskipa
- }{%
- \@ifdim{\skip@>\@tempskipa}{}{%
- \skip@\@tempskipa
- }%
- }%
- }%
- \vskip\skip@
-}%
-\def\move@insertions{\global\holdinginserts\z@}%
-\def\hold@insertions{\global\holdinginserts\@ne}%
-\hold@insertions
-\def\toggle@insert#1#2{%
- \@ifnum{\holdinginserts>\z@}{\move@insertions#1}{\hold@insertions#2}%
-}%
-\def\do@columngrid#1#2{%
- \par
- \expandafter\let\expandafter\@tempa\csname open@column@#1\endcsname
- \@ifx{\relax\@tempa}{%
- \ltxgrid@warn{Unknown page grid #1. No action taken}%
- }{%
- \do@output@MVL{\start@column{#1}{#2}}%
- }%
-}%
-\def\start@column#1#2{%
- \def\@tempa{#1}\@ifx{\@tempa\thepagegrid}{%
- \ltxgrid@info{Already in page grid \thepagegrid. No action taken}%
- }{%
- \expandafter\execute@message@insert
- \expandafter{%
- \csname shut@column@\thepagegrid\expandafter\endcsname
- \csname open@column@#1\endcsname{#2}%
- \set@vsize
- }%
- }%
-}%
-\def\thepagegrid{one}%
-\newbox\pagesofar
-\newbox\footsofar
-\def\combine@foot@inserts#1#2{%
- \ltxgrid@info@sw{\class@info{\string\combine@foot@inserts\string#1\string#2}}{}%
- \@ifvoid#1{%
- \ltxgrid@foot@info@sw{\trace@box#2}{}\global\setbox#1\box#2%
- }{%
- \global\setbox#1\vbox\bgroup
- \ltxgrid@foot@info@sw{\trace@box#1}{}\unvbox#1%
- \@ifvoid#2{}{%
- \marry@baselines
- \ltxgrid@foot@info@sw{\trace@box#2}{}\unvbox#2%
- }%
- \egroup
- }%
- \ltxgrid@foot@info@sw{\trace@scroll{\showbox#1\showbox#2}}{}%
-}%
-\newcommand\onecolumngrid{\do@columngrid{one}{\@ne}}%
-\let\onecolumn\@undefined
-\def\open@column@one#1{%
- \ltxgrid@info@sw{\class@info{\string\open@column@one\string#1}}{}%
- \unvbox\pagesofar
- \@ifvoid{\footsofar}{}{%
- \insert\footins\bgroup\unvbox\footsofar\egroup
- \penalty\z@
- }%
- \gdef\thepagegrid{one}%
- \global\pagegrid@col#1%
- \global\pagegrid@cur\@ne
- \global\count\footins\@m
- \global\divide\count\footins\tw@
- \set@column@hsize\pagegrid@col
- \set@colht
-}%
-\def\shut@column@one{%
- \ltxgrid@info@sw{\class@info{\string\shut@column@one}}{}%
- \@makecolumn\false@sw
- \global\setbox\pagesofar\vbox\bgroup
- \recover@column\@outputbox\footsofar\column@recovered\footins@recovered
- \egroup
- \begingroup\setbox\z@\box\@outputbox\endgroup
- \combine@foot@inserts\footsofar\footins
- \set@colht
-}%
-\def\float@column@one{%
- \@makecolumn\true@sw
- \@outputpage
-}%
-\def\end@column@one{%
- \unvbox\@cclv\remove@lastbox
- \protect@penalty\do@newpage@pen
-}%
-\def\output@column@one{%
- \@outputpage
-}%
-\def\@addmarginpar@one{%
- \@if@sw\if@mparswitch\fi{%
- \@ifodd\c@page{\false@sw}{\true@sw}%
- }{\false@sw}{%
- \@if@sw\if@reversemargin\fi{\false@sw}{\true@sw}%
- }{%
- \@if@sw\if@reversemargin\fi{\true@sw}{\false@sw}%
- }%
-}%
-\def\@floatselect@sw@one#1{\true@sw}%
-\def\onecolumngrid@push{%
- \do@output@MVL{%
- \@ifnum{\pagegrid@col=\@ne}{%
- \global\let\restorecolumngrid\@empty
- }{%
- \xdef\restorecolumngrid{%
- \noexpand\start@column{\thepagegrid}{\the\pagegrid@col}%
- }%
- \start@column{one}{\@ne}%
- }%
- }%
-}%
-\def\onecolumngrid@pop{%
- \do@output@MVL{\restorecolumngrid}%
-}%
-\newcommand\twocolumngrid{\do@columngrid{mlt}{\tw@}}%
-\let\twocolumn\@undefined
-\let\@topnewpage\@undefined
-\def\open@column@mlt#1{%
- \ltxgrid@info@sw{\class@info{\string\open@column@mlt\string#1}}{}%
- \@ifvoid{\footsofar}{}{%
- \insert\footins\bgroup\unvbox\footsofar\egroup
- }%
- \gdef\thepagegrid{mlt}%
- \global\pagegrid@col#1%
- \global\pagegrid@cur\@ne
- \global\count\footins\@m
- \set@column@hsize\pagegrid@col
- \set@colht
-}%
-\def\shut@column@mlt{%
- \ltxgrid@info@sw{\class@info{\string\shut@column@mlt}}{}%
- \@cclv@nontrivial@sw{%
- \@makecolumn\false@sw
- \@ifnum{\pagegrid@cur<\pagegrid@col}{%
- \expandafter\global\expandafter\setbox\csname col@\the\pagegrid@cur\endcsname\box\@outputbox
- \global\advance\pagegrid@cur\@ne
- }{}%
- }{%
- \void@cclv
- }%
- \@ifnum{\pagegrid@cur>\@ne}{%
- \csname balance@\the\pagegrid@col\endcsname
- \grid@column\@outputbox{}%
- \@combinepage\false@sw
- \@combinedblfloats
- \global\setbox\pagesofar\box\@outputbox
- \show@pagesofar@size
- }{}%
- \set@colht
-}%
-\def\float@column@mlt{%
- \@output@combined@page
-}%
-\def\end@column@mlt{%
- \@ifx@empty\@toplist{%
- \@ifx@empty\@botlist{%
- \@ifx@empty\@dbltoplist{%
- \@ifx@empty\@deferlist{%
- \@ifnum{\pagegrid@cur=\@ne}{%
- \false@sw
- }{%
- \true@sw
- }%
- }{%
- \true@sw
- }%
- }{%
- \true@sw
- }%
- }{%
- \true@sw
- }%
- }{%
- \true@sw
- }%
- % true = kick out a column and try again
- {%
- \@cclv@nontrivial@sw{%
- \unvbox\@cclv\remove@lastbox
- }{%
- \unvbox\@cclv\remove@lastbox\unskip\null
- }%
- \protect@penalty\do@newpage@pen
- \protect@penalty\do@endpage@pen
- }{%
- \unvbox\@cclv\remove@lastbox
- }%
-}%
-\def\output@column@mlt{%
- \@ifnum{\pagegrid@cur<\pagegrid@col}{%
- \expandafter\global\expandafter\setbox\csname col@\the\pagegrid@cur\endcsname\box\@outputbox
- \global\advance\pagegrid@cur\@ne
- }{%
- \set@adj@colht\dimen@
- \grid@column\@outputbox{}%
- \@output@combined@page
- }%
-}%
-\let\@outputdblcol\@undefined
-\def\@floatselect@sw@mlt#1{\@if@notdblfloat{#1}}%
-\def\@addmarginpar@mlt{% emits a boolean
- \@ifnum{\pagegrid@cur=\@ne}%
-}%
-\def\set@footnotewidth@one{%
- \hsize\columnwidth
- \linewidth\hsize
-}%
-\def\set@footnotewidth@two{\set@footnotewidth@mlt\tw@}%
-\def\set@footnotewidth@mlt#1{%
- \hsize\textwidth
- \advance\hsize\columnsep
- \divide\hsize#1%
- \advance\hsize-\columnsep
- \linewidth\hsize
-}%
-\def\compose@footnotes@one#1{%
- \ltxgrid@foot@info@sw{\class@info{\string\compose@footnotes@one\string#1}\trace@box#1}{}%
-}%
-\let\compose@footnotes\compose@footnotes@one
-\def\compose@footnotes@two#1{%
- \ltxgrid@foot@info@sw{\class@info{\string\compose@footnotes@two\string#1}\trace@box#1}{}%
- \setbox\z@\box\@tempboxa
- \let\recover@column\recover@column@null
- \let\marry@baselines\@empty
- \balance@two#1\@tempboxa
- \global\setbox#1\hbox to\textwidth{\box#1\hfil\box\@tempboxa}%
- \ltxgrid@foot@info@sw{\trace@box#1}{}%
-}%
-\let\pagegrid@cur\col@number
-\let\col@number\@undefined
-\newcount\pagegrid@col
-\pagegrid@cur\@ne
-\expandafter\let\csname col@\the\pagegrid@cur\endcsname\@leftcolumn
-\let\@leftcolumn\@undefined
-\pagegrid@col\tw@
-\def\pagegrid@init{%
- \advance\pagegrid@cur\@ne
- \@ifnum{\pagegrid@cur<\pagegrid@col}{%
- \csname newbox\expandafter\endcsname\csname col@\the\pagegrid@cur\endcsname
- \pagegrid@init
- }{%
- }%
-}%
-\appdef\class@documenthook{%
- \pagegrid@init
-}%
-\def\grid@column#1#2{%
- \ltxgrid@info@sw{\class@info{\string\grid@column\string#1}}{}%
- \global\setbox#1\vbox\bgroup
- \hb@xt@\textwidth\bgroup
- \vrule\@height\z@\@width\z@\@if@empty{#2}{}{\@depth#2}%
- \pagegrid@cur\@ne
- \@ifnum{\pagegrid@cur<\pagegrid@col}{\loopwhile{\append@column@\pagegrid@cur\pagegrid@col}}{}%
- \box@column#1%
- \egroup
- \vskip\z@skip
- \egroup
-}%
-\def\append@column@#1#2{%
- \expandafter\box@column\csname col@\the#1\endcsname
- \hfil\vrule\@width\columnseprule\hfil
- \advance#1\@ne
- \@ifnum{#1<#2}%
-}%
-\def\box@column#1{%
- \ltxgrid@info@sw{\class@info{\string\box@column\string#1}}{}%
- \raise\topskip
- \hb@xt@\columnwidth\bgroup
- \dimen@\ht#1\@ifdim{\dimen@>\@colht}{\dimen@\@colht}{}%
- \count@\vbadness\vbadness\@M
- \dimen@ii\vfuzz\vfuzz\maxdimen
- \ltxgrid@info@sw{\saythe\@colht\saythe\dimen@}{}%
- \vtop to\dimen@\bgroup
- \hrule\@height\z@
- \unvbox#1%
- \raggedcolumn@skip
- \egroup
- \vfuzz\dimen@ii
- \vbadness\count@
- \hss
- \egroup
-}%
-\def\marry@baselines{%
- \begingroup
- \setbox\z@\lastbox
- \@ifvoid{\z@}{%
- \endgroup
- }{%
- \aftergroup\kern
- \aftergroup-%
- \expandafter\box\expandafter\z@\expandafter\endgroup\the\dp\z@\relax
- }%
- \vskip\marry@skip\relax
-}%
-\gdef\marry@skip{\z@skip}%
-\def\set@marry@skip{%
- \begingroup
- \skip@\baselineskip\advance\skip@-\topskip
- \@ifdim{\skip@>\z@}{%
- \xdef\marry@skip{\the\skip@}%
- }{}%
- \endgroup
-}%
-\appdef\document@inithook{%
- \@ifxundefined\raggedcolumn@sw{\@booleanfalse\raggedcolumn@sw}{}%
-}%
-\def\raggedcolumn@skip{%
- \vskip\z@\raggedcolumn@sw{\@plus.0001fil\@minus.0001fil}{}\relax
-}%
-\def\@combinepage#1{%
- \ltxgrid@foot@info@sw{\class@info{\string\@combinepage\string#1}}{}%
- \@ifvoid\pagesofar{}{%
- \setbox\@outputbox\vbox{%
- \unvbox\pagesofar
- \marry@baselines
- \unvbox\@outputbox
- }%
- }%
- #1{%
- \@ifvoid\footsofar{}{%
- \show@box@size{Combining page footnotes}\footsofar
- \setbox\footins\box\footsofar
- \compose@footnotes
- \@combineinserts\@outputbox\footins
- }%
- }{%
- }%
-}%
-\def \@cflt{%
- \let \@elt \@comflelt
- \setbox\@tempboxa \vbox{}%
- \@toplist
- \setbox\@outputbox \vbox{%
- \boxmaxdepth \maxdepth
- \unvbox\@tempboxa\unskip
- \topfigrule\vskip \textfloatsep
- \unvbox\@outputbox
- }%
- \let\@elt\relax
- \xdef\@freelist{\@freelist\@toplist}%
- \global\let\@toplist\@empty
-}%
-\def \@cflb {%
- \let\@elt\@comflelt
- \setbox\@tempboxa \vbox{}%
- \@botlist
- \setbox\@outputbox \vbox{%
- \unvbox\@outputbox
- \vskip \textfloatsep\botfigrule
- \unvbox\@tempboxa\unskip
- }%
- \let\@elt\relax
- \xdef\@freelist{\@freelist\@botlist}%
- \global \let \@botlist\@empty
-}%
-\def\@combinedblfloats{%
- \@ifx@empty\@dbltoplist{}{%
- \setbox\@tempboxa\vbox{}%
- \let\@elt\@comdblflelt\@dbltoplist
- \let\@elt\relax\xdef\@freelist{\@freelist\@dbltoplist}%
- \global\let\@dbltoplist\@empty
- \setbox\@outputbox\vbox{%
- %\boxmaxdepth\maxdepth %% probably not needed, CAR
- \unvbox\@tempboxa\unskip
- \@ifnum{\@dbltopnum>\m@ne}{\dblfigrule}{}%FIXME: how is \@dbltopnum maintained?
- \vskip\dbltextfloatsep
- \unvbox\@outputbox
- }%
- }%
-}%
-\def\set@column@hsize#1{%
- \pagegrid@col#1%
- \global\columnwidth\textwidth
- \global\advance\columnwidth\columnsep
- \global\divide\columnwidth\pagegrid@col
- \global\advance\columnwidth-\columnsep
- \global\hsize\columnwidth
- \global\linewidth\columnwidth
- \skip@\baselineskip\advance\skip@-\topskip
- \@ifnum{\pagegrid@col>\@ne}{\set@marry@skip}{}%
-}%
-\def\set@colht{%
- \set@adj@textheight\@colht
- \global\let\enlarge@colroom\@empty
- \set@colroom
-}%
-\def\set@adj@textheight#1{%
- \ltxgrid@info@sw{\class@info{\string\set@adj@textheight\string#1}\saythe\textheight}{}%
- #1\textheight
- \def\@elt{\adj@page#1}%
- \@booleantrue\firsttime@sw\@dbltoplist
- \let\@elt\relax
- \global#1#1\relax
- \ltxgrid@info@sw{\saythe#1}{}%
-}%
-\def\set@colroom{%
- \ltxgrid@info@sw{\class@info{\string\set@colroom}}{}%
- \set@adj@colht\@colroom
- \@if@empty\enlarge@colroom{}{%
- \global\advance\@colroom\enlarge@colroom\relax
- \ltxgrid@info@sw{\saythe\@colroom}{}%
- }%
- \@ifdim{\@colroom>\topskip}{}{%
- \ltxgrid@info{Not enough room: \string\@colroom=\the\@colroom; increasing to \the\topskip}%
- \@colroom\topskip
- }%
- \global\@colroom\@colroom
- \set@vsize
-}%
-\def\set@vsize{%
- \global\vsize\@colroom
- \ltxgrid@info@sw{\class@info{\string\set@vsize\string\vsize=\string\colroom}\saythe\vsize}{}%
-}%
-\def\set@adj@colht#1{%
- #1\@colht
- \ltxgrid@info@sw{\class@info{\string\set@adj@colht\string#1-\string\pagesofar}\saythe#1}{}%
- \@ifvoid\pagesofar{}{%
- \advance#1-\ht\pagesofar\advance#1-\dp\pagesofar
- \ltxgrid@info@sw{\class@info{\string\pagesofar}\saythe#1}{}%
- }%
- \def\@elt{\adj@column#1}%
- \@booleantrue\firsttime@sw\@toplist
- \@booleantrue\firsttime@sw\@botlist
- \let\@elt\relax
-}%
-\def\adj@column#1#2{%
- \advance#1-\ht#2%
- \advance#1-\firsttime@sw{\textfloatsep\@booleanfalse\firsttime@sw}{\floatsep}%
- \ltxgrid@info@sw{\class@info{\string\adj@column\string#1-\string#2}\saythe#1}{}%
-}%
-\def\adj@page#1#2{%
- \advance#1-\ht#2%
- \advance#1-\firsttime@sw{\dbltextfloatsep\@booleanfalse\firsttime@sw}{\dblfloatsep}%
- \ltxgrid@info@sw{\class@info{\string\adj@page\string#1-\string#2}\saythe#1}{}%
-}%
-\def\set@adj@box#1#2{%
- \@ifvoid#2{}{%
- \advance#1-\ht#2\advance#1-\dp#2%
- \@booleantrue\temp@sw
- \ltxgrid@foot@info@sw{\class@info{\string\set@adj@box\string#2}\saythe#1}{}%
- }%
-}%
-\appdef\@outputpage@tail{%
- \set@colht % FIXME: needed?
- \@floatplacement % FIXME: needed?
- \@dblfloatplacement % FIXME: needed?
-}%
-\begingroup
- \catcode`\1=\cat@letter
- \catcode`\2=\cat@letter
- \toks@{%
- \setbox\footins\box\footsofar
- \balance@two\col@1\@outputbox
- \global\setbox\col@1\box\col@1
- \global\setbox\@outputbox\box\@outputbox
- \combine@foot@inserts\footsofar\footins
- }%
- \aftergroup\def\aftergroup\balance@2\expandafter
-\endgroup\expandafter{\the\toks@}%
-\def\balance@two#1#2{%
- \ltxgrid@info@sw{\class@info{\string\balance@two\string#1\string#2}}{}%
- \outputdebug@sw{\trace@scroll{\showbox#1\showbox#2}}{}%
- \setbox\thr@@\copy\footsofar
- \setbox\@ne\vbox\bgroup
- \@ifvoid{#1}{}{%
- \recover@column#1\footsofar\column@recovered\footins@recovered
- \@ifvoid{#2}{}{\marry@baselines}%
- }%
- \@ifvoid{#2}{}{%
- \recover@column#2\footsofar\column@recovered\footins@recovered
- }%
- \egroup
- \outputdebug@sw{\trace@scroll{\showbox\@ne}}{}%
- \ltxgrid@foot@info@sw{\trace@scroll{\showbox\footsofar}}{}%
- \dimen@\ht\@ne\divide\dimen@\tw@
- \dimen@i\dimen@
- \vbadness\@M
- \vfuzz\maxdimen
- \splittopskip\topskip
- \loopwhile{%
- \setbox\z@\copy\@ne\setbox\tw@\vsplit\z@ to\dimen@
- \remove@depth\z@\remove@depth\tw@
- \dimen@ii\ht\tw@\advance\dimen@ii-\ht\z@
- \dimen@i=.5\dimen@i
- \ltxgrid@info@sw{\saythe\dimen@\saythe\dimen@i\saythe\dimen@ii}{}%
- \@ifdim{\dimen@ii<.5\p@}{%
- \@ifdim{\dimen@ii>-.5\p@}%
- }{%
- \false@sw
- }%
- {%
- \true@sw
- }{%
- \@ifdim{\dimen@i<.5\p@}%
- }%
- {%
- \false@sw
- }%
- {%
- \advance\dimen@\@ifdim{\dimen@ii<\z@}{}{-}\dimen@i
- \true@sw
- }%
- }%
- \ltxgrid@info@sw{\saythe\dimen@\saythe\dimen@i\saythe\dimen@ii}{}%
- \@ifdim{\ht\z@=\z@}{%
- \@ifdim{\ht\tw@=\z@}%
- }{%
- \true@sw
- }%
- {%
- }{%
- \ltxgrid@info{Unsatifactorily balanced columns: giving up}%
- \setbox\tw@\box#1%
- \setbox\z@ \box#2%
- \global\setbox\footsofar\box\thr@@
- }%
- \setbox\tw@\vbox{\unvbox\tw@\vskip\z@skip}%
- \setbox\z@ \vbox{\unvbox\z@ \vskip\z@skip}%
- \set@colht
- \dimen@\ht\z@\@ifdim{\dimen@<\ht\tw@}{\dimen@\ht\tw@}{}%
- \@ifdim{\dimen@>\@colroom}{\dimen@\@colroom}{}%
- \ltxgrid@info@sw{\saythe{\ht\z@}\saythe{\ht\tw@}\saythe\@colroom\saythe\dimen@}{}%
- \setbox#1\vbox to\dimen@{\unvbox\tw@\unskip\raggedcolumn@skip}%
- \setbox#2\vbox to\dimen@{\unvbox\z@ \unskip\raggedcolumn@skip}%
- \outputdebug@sw{\trace@scroll{\showbox#1\showbox#2}}{}%
-}%
-\def\remove@depth#1{%
- \setbox#1\vbox\bgroup
- \unvcopy#1%
- \setbox\z@\vbox\bgroup
- \unvbox#1%
- \setbox\z@\lastbox
- \aftergroup\kern\aftergroup-\expandafter
- \egroup
- \the\dp\z@\relax
- \egroup
-}%
-\def\recover@column#1#2#3#4{%
- \ltxgrid@info@sw{\class@info{\string\recover@column\string#1\string#2\string#3\string#4}}{}%
- \setbox#4\vbox{\unvcopy#1}%
- \ltxgrid@foot@info@sw{\trace@scroll{\showbox#4}}{}%
- \dimen@\ht#4%
- \ltxgrid@foot@info@sw{\saythe\dimen@}{}%
- \setbox#4\vbox\bgroup
- \unvbox#4\unskip
- \dimen@i\lastkern\unkern\advance\dimen@i\lastkern
- \@ifdim{\dimen@i=\z@}{%
- \dimen@i\lastkern\unkern
- \ltxgrid@foot@info@sw{\saythe\dimen@i}{}%
- \aftergroup\dimen@i
- \expandafter\egroup\the\dimen@i\relax
- }{%
- \egroup
- }%
- \@ifdim{\dimen@i<\z@}{%
- \advance\dimen@\dimen@i
- \ltxgrid@foot@info@sw{\saythe\dimen@i\saythe\dimen@}{}%
- \splittopskip\z@skip
- \global\setbox#3\vsplit#4 to\dimen@
- \global\setbox#4\vbox{\unvbox#4}%
- \ltxgrid@foot@info@sw{\trace@scroll{\showbox#1\showbox#2\showbox#3\showbox#4}}{}%
- \global\setbox#2\vbox\bgroup\unvbox#2\vskip\z@skip\unvbox#4\egroup
- }{%
- \setbox#3\box#4%
- \ltxgrid@foot@info@sw{\trace@scroll{\showbox#1\showbox#2\showbox#3\showbox#4}}{}%
- }%
- \unvbox#3%
- \loopwhile{\dimen@\lastskip\@ifdim{\dimen@>\z@}{\unskip\true@sw}{\false@sw}}%
-}%
-\def\recover@column@null#1#2#3#4{%
- \unvcopy#1%
-}%
-\prepdef\@begindocumenthook{%
- \open@column@one\@ne
- \set@colht
- \@floatplacement
- \@dblfloatplacement
-}%
-\def\longtable@longtable{%
- \par
- \ifx\multicols\@undefined\else\ifnum\col@number>\@ne\@twocolumntrue\fi\fi
- \if@twocolumn\LT@err{longtable not in 1-column mode}\@ehc\fi
- \begingroup
- \@ifnextchar[\LT@array{\LT@array[x]}%
-}%
-\def\longtable@new{%
- \par
- \@ifnextchar[\LT@array{\LT@array[x]}%
-}%
-\def\endlongtable@longtable{%
- \crcr
- \noalign{%
- \let\LT@entry\LT@entry@chop
- \xdef\LT@save@row{\LT@save@row}}%
- \LT@echunk
- \LT@start
- \unvbox\z@
- \LT@get@widths
- \if@filesw
- {\let\LT@entry\LT@entry@write\immediate\write\@auxout{%
- \gdef\expandafter\noexpand
- \csname LT@\romannumeral\c@LT@tables\endcsname
- {\LT@save@row}}}%
- \fi
- \ifx\LT@save@row\LT@@save@row
- \else
- \LT@warn{Column \@width s have changed\MessageBreak
- in table \thetable}%
- \LT@final@warn
- \fi
- \endgraf\penalty -\LT@end@pen
- \endgroup
- \global\@mparbottom\z@
- \pagegoal\vsize
- \endgraf\penalty\z@\addvspace\LTpost
- \ifvoid\footins\else\insert\footins{}\fi
-}%
-\def\endlongtable@new{%
- \crcr
- \noalign{%
- \let\LT@entry\LT@entry@chop
- \xdef\LT@save@row{\LT@save@row}%
- }%
- \LT@echunk
- \LT@start
- \unvbox\z@
- \LT@get@widths
- \@if@sw\if@filesw\fi{%
- {%
- \let\LT@entry\LT@entry@write
- \immediate\write\@auxout{%
- \gdef\expandafter\noexpand\csname LT@\romannumeral\c@LT@tables\endcsname
- {\LT@save@row}%
- }%
- }%
- }{}%
- \@ifx{\LT@save@row\LT@@save@row}{}{%
- \LT@warn{%
- Column \@width s have changed\MessageBreak in table \thetable
- }\LT@final@warn
- }%
- \endgraf
- \nobreak
- \box\@ifvoid\LT@lastfoot{\LT@foot}{\LT@lastfoot}%
- \global\@mparbottom\z@
- \endgraf
- \LT@post
-}%
-\def\LT@start@longtable{%
- \let\LT@start\endgraf
- \endgraf\penalty\z@\vskip\LTpre
- \dimen@\pagetotal
- \advance\dimen@ \ht\ifvoid\LT@firsthead\LT@head\else\LT@firsthead\fi
- \advance\dimen@ \dp\ifvoid\LT@firsthead\LT@head\else\LT@firsthead\fi
- \advance\dimen@ \ht\LT@foot
- \dimen@ii\vfuzz
- \vfuzz\maxdimen
- \setbox\tw@\copy\z@
- \setbox\tw@\vsplit\tw@ to \ht\@arstrutbox
- \setbox\tw@\vbox{\unvbox\tw@}%
- \vfuzz\dimen@ii
- \advance\dimen@ \ht
- \ifdim\ht\@arstrutbox>\ht\tw@\@arstrutbox\else\tw@\fi
- \advance\dimen@\dp
- \ifdim\dp\@arstrutbox>\dp\tw@\@arstrutbox\else\tw@\fi
- \advance\dimen@ -\pagegoal
- \ifdim \dimen@>\z@\vfil\break\fi
- \global\@colroom\@colht
- \ifvoid\LT@foot\else
- \advance\vsize-\ht\LT@foot
- \global\advance\@colroom-\ht\LT@foot
- \dimen@\pagegoal\advance\dimen@-\ht\LT@foot\pagegoal\dimen@
- \maxdepth\z@
- \fi
- \ifvoid\LT@firsthead\copy\LT@head\else\box\LT@firsthead\fi
-\nobreak
- \output{\LT@output}%
-}%
-\def\LT@start@new{%
- \let\LT@start\endgraf
- \endgraf
- \markthr@@{}%
- \LT@pre
- \@ifvoid\LT@firsthead{\LT@top}{\box\LT@firsthead\nobreak}%
- \mark@envir{longtable}%
-}%
-\def\LT@end@hd@ft@longtable#1{%
- \LT@echunk
- \ifx\LT@start\endgraf
- \LT@err{Longtable head or foot not at start of table}{Increase LTchunksize}%
- \fi
- \setbox#1\box\z@
- \LT@get@widths\LT@bchunk
-}%
-\def\LT@end@hd@ft@new#1{%
- \LT@echunk
- \@ifx{\LT@start\endgraf}{%
- \LT@err{Longtable head or foot not at start of table}{Increase LTchunksize}%
- }%
- \global\setbox#1\box\z@
- \LT@get@widths
- \LT@bchunk
-}%
-\def\LT@array@longtable[#1]#2{%
- \refstepcounter{table}\stepcounter{LT@tables}%
- \if l#1%
- \LTleft\z@ \LTright\fill
- \else\if r#1%
- \LTleft\fill \LTright\z@
- \else\if c#1%
- \LTleft\fill \LTright\fill
- \fi\fi\fi
- \let\LT@mcol\multicolumn
- \let\LT@@tabarray\@tabarray
- \let\LT@@hl\hline
- \def\@tabarray{%
- \let\hline\LT@@hl
- \LT@@tabarray}%
- \let\\\LT@tabularcr\let\tabularnewline\\%
- \def\newpage{\noalign{\break}}%
- \def\pagebreak{\noalign{\ifnum`}=0\fi\@testopt{\LT@no@pgbk-}4}%
- \def\nopagebreak{\noalign{\ifnum`}=0\fi\@testopt\LT@no@pgbk4}%
- \let\hline\LT@hline \let\kill\LT@kill\let\caption\LT@caption
- \@tempdima\ht\strutbox
- \let\@endpbox\LT@endpbox
- \ifx\extrarowheight\@undefined
- \let\@acol\@tabacol
- \let\@classz\@tabclassz \let\@classiv\@tabclassiv
- \def\@startpbox{\vtop\LT@startpbox}%
- \let\@@startpbox\@startpbox
- \let\@@endpbox\@endpbox
- \let\LT@LL@FM@cr\@tabularcr
- \else
- \advance\@tempdima\extrarowheight
- \col@sep\tabcolsep
- \let\@startpbox\LT@startpbox\let\LT@LL@FM@cr\@arraycr
- \fi
- \setbox\@arstrutbox\hbox{\vrule
- \@height \arraystretch \@tempdima
- \@depth \arraystretch \dp \strutbox
- \@width \z@}%
- \let\@sharp##\let\protect\relax
- \begingroup
- \@mkpream{#2}%
- \xdef\LT@bchunk{%
- \global\advance\c@LT@chunks\@ne
- \global\LT@rows\z@\setbox\z@\vbox\bgroup
- \LT@setprevdepth
- \tabskip\LTleft \noexpand\halign to\hsize\bgroup
- \tabskip\z@ \@arstrut \@preamble \tabskip\LTright \cr}%
- \endgroup
- \expandafter\LT@nofcols\LT@bchunk&\LT@nofcols
- \LT@make@row
- \m@th\let\par\@empty
- \everycr{}\lineskip\z@\baselineskip\z@
- \LT@bchunk}%
-\def\LT@LR@l{\LTleft\z@ \LTright\fill}%
-\def\LT@LR@r{\LTleft\fill \LTright\z@ }%
-\def\LT@LR@c{\LTleft\fill \LTright\fill}%
-\def\LT@array@new[#1]#2{%
- \refstepcounter{table}\stepcounter{LT@tables}%
- \table@hook
- \LTleft\fill \LTright\fill
- \csname LT@LR@#1\endcsname
- \let\LT@mcol\multicolumn
- \let\LT@@hl\hline
- \prepdef\@tabarray{\let\hline\LT@@hl}%
- \let\\\LT@tabularcr
- \let\tabularnewline\\%
- \def\newpage{\noalign{\break}}%
- \def\pagebreak{\noalign{\ifnum`}=0\fi\@testopt{\LT@no@pgbk-}4}%
- \def\nopagebreak{\noalign{\ifnum`}=0\fi\@testopt\LT@no@pgbk4}%
- \let\hline\LT@hline
- \let\kill\LT@kill
- \let\caption\LT@caption
- \@tempdima\ht\strutbox
- \let\@endpbox\LT@endpbox
- \@ifxundefined\extrarowheight{%
- \let\@acol\@tabacol
- \let\@classz\@tabclassz
- \let\@classiv\@tabclassiv
- \def\@startpbox{\vtop\LT@startpbox}%
- \let\@@startpbox\@startpbox
- \let\@@endpbox\@endpbox
- \let\LT@LL@FM@cr\@tabularcr@LaTeX
- \let\@xtabularcr\@xtabularcr@LaTeX
- }{%
- \advance\@tempdima\extrarowheight
- \col@sep\tabcolsep
- \let\@startpbox\LT@startpbox
- \let\LT@LL@FM@cr\@arraycr@array
- }%
- \let\@acoll\@tabacoll
- \let\@acolr\@tabacolr
- \let\@acol\@tabacol
- \setbox\@arstrutbox\hbox{%
- \vrule
- \@height \arraystretch \@tempdima
- \@depth \arraystretch \dp \strutbox
- \@width \z@
- }%
- \let\@sharp##%
- \let\protect\relax
- \begingroup
- \@mkpream{#2}%
- \@mkpream@relax
- \edef\@preamble{\@preamble}%
- \prepdef\@preamble{%
- \global\advance\c@LT@chunks\@ne
- \global\LT@rows\z@
- \setbox\z@\vbox\bgroup
- \LT@setprevdepth
- \tabskip\LTleft
- \halign to\hsize\bgroup
- \tabskip\z@
- \@arstrut
- }%
- \appdef\@preamble{%
- \tabskip\LTright
- \cr
- }%
- \global\let\LT@bchunk\@preamble
- \endgroup
- \expandafter\LT@nofcols\LT@bchunk&\LT@nofcols
- \LT@make@row
- \m@th
- \let\par\@empty
- \everycr{}%
- \lineskip\z@
- \baselineskip\z@
- \LT@bchunk
-}%
-\appdef\table@hook{}%
-\def\switch@longtable{%
- \@ifpackageloaded{longtable}{%
- \@ifx{\longtable\longtable@longtable}{%
- \@ifx{\endlongtable\endlongtable@longtable}{%
- \@ifx{\LT@start\LT@start@longtable}{%
- \@ifx{\LT@end@hd@ft\LT@end@hd@ft@longtable}{%
- \@ifx{\LT@array\LT@array@longtable}{%
- \true@sw
- }{\false@sw}%
- }{\false@sw}%
- }{\false@sw}%
- }{\false@sw}%
- }{\false@sw}%
- {%
- \class@info{Patching longtable package}%
- }{%
- \class@info{Patching unrecognized longtable package. (Proceeding with fingers crossed)}%
- }%
- \let\longtable\longtable@new
- \let\endlongtable\endlongtable@new
- \let\LT@start\LT@start@new
- \let\LT@end@hd@ft\LT@end@hd@ft@new
- \let\LT@array\LT@array@new
- \newenvironment{longtable*}{%
- \onecolumngrid@push
- \longtable
- }{%
- \endlongtable
- \onecolumngrid@pop
- }%
- }{}%
-}%
-\def\LT@pre{\penalty\z@\vskip\LTpre}%
-\def\LT@bot{\nobreak\copy\LT@foot\vfil}%
-\def\LT@top{\copy\LT@head\nobreak}%
-\def\LT@post{\penalty\z@\addvspace\LTpost\mark@envir{\curr@envir}}%
-\def\LT@adj{%
- \setbox\z@\vbox{\null}\dimen@-\ht\z@
- \setbox\z@\vbox{\unvbox\z@\LT@bot}\advance\dimen@\ht\z@
- \global\advance\vsize-\dimen@
-}%
-\def\output@init@longtable{\LT@adj}%
-\def\output@prep@longtable{\setbox\@cclv\vbox{\unvbox\@cclv\LT@bot}}%
-\def\output@post@longtable{\LT@top}%
-\let\output@init@theindex\@empty
-\let\output@prep@theindex\@empty
-\def\output@post@theindex{%
- \@ifodd\c@page{}{%
- \@ifnum{\pagegrid@cur=\@ne}{%
- }%
- }%
-}%
-\def\check@aux{\do@output@MVL{\do@check@aux}}%
-\def\check@deferlist@stuck#1{%
- \@ifx{\@deferlist@postshipout\@empty}{}{%
- \@ifx{\@deferlist@postshipout\@deferlist}{%
- \@fltstk
- \clearpage@sw{%
- \ltxgrid@warn{Deferred float stuck during \string\clearpage\space processing}%
- }{%
- \force@deferlist@stuck#1%
- }%
- }{%
- }%
- \global\let\@deferlist@postshipout\@empty
- }%
-}%
-\def\@fltstk{%
- \@latex@warning{A float is stuck (cannot be placed without \string\clearpage)}%
-}%
-\appdef\@outputpage@tail{%
- \global\let\@deferlist@postshipout\@deferlist
-}%
-\def\@next#1#2{%
- \@ifx{#2\@empty}{\false@sw}{%
- \expandafter\@xnext#2\@@#1#2%
- \true@sw
- }%
-}%
-\def\@xnext\@elt#1#2\@@#3#4{%
- \def#3{#1}%
- \gdef#4{#2}%
- \def\@tempa{#4}\def\@tempb{\@freelist}%
- \@ifx{\@tempa\@tempb}{%
- \@ifx{#4\@empty}{%
- \force@deferlist@empty%{Float register pool exhausted}%
- }{}%
- }{}%
-}%
-\def\force@deferlist@stuck#1{%
- \force@deferlist@sw{%
- \@booleantrue\clearpage@sw
- \@booleantrue\forcefloats@sw
- #1%
- }{%
- }%
-}%
-\def\force@deferlist@empty{%
- \force@deferlist@sw{%
- \penalty-\pagebreak@pen
- \protect@penalty\do@forcecolumn@pen
- }{%
- }%
-}%
-\@booleanfalse\force@deferlist@sw
-\mathchardef\do@forcecolumn@pen=10009
-\@namedef{output@-\the\do@forcecolumn@pen}{\do@forcecolumn}%
-\def\do@forcecolumn{%
- \@booleantrue\clearpage@sw
- \@booleantrue\forcefloats@sw
- \do@startcolumn
-}%
-\def\enlargethispage{%
- \@ifstar{%
- \@enlargethispage{}%
- }{%
- \@enlargethispage{}%
- }%
-}%
-\def\@enlargethispage#1#2{%
- \begingroup
- \dimen@#2\relax
- \edef\@tempa{#1}%
- \edef\@tempa{\noexpand\@@enlargethispage{\@tempa}{\the\dimen@}}%
- \expandafter\do@output@MVL\expandafter{\@tempa}%
- \endgroup
-}%
-\def\@@enlargethispage#1#2{%
- \def\@tempa{one}%
- \@ifx{\thepagegrid\@tempa}{%
- \true@sw
- }{%
- \def\@tempa{mlt}%
- \@ifx{\thepagegrid\@tempa}{%
- \@ifnum{\pagegrid@cur=\@ne}{%
- \gdef\enlarge@colroom{#2}%
- \true@sw
- }{%
- \ltxgrid@warn{Too late to enlarge this page; move the command to the first column.}%
- \false@sw
- }%
- }{%
- \ltxgrid@warn{Unable to enlarge a page of this kind.}%
- \false@sw
- }%
- }%
- {%
- \class@info{Enlarging page \thepage\space by #2}%
- \global\advance\@colroom#2\relax
- \set@vsize
- }{%
- }%
-}%
-\let\enlarge@colroom\@empty
-\let\@kludgeins\@undefined
-\@booleantrue\textheight@sw
-\prepdef\@outputpage@head{%
- \textheight@sw{%
- \count@\vbadness\vbadness\@M
- \dimen@\vfuzz\vfuzz\maxdimen
- \setbox\@outputbox\vbox to\textheight{\unvbox\@outputbox}%
- \vfuzz\dimen@
- \vbadness\count@
- }{}%
-}%
-\appdef\@outputpage@head{%
- \@ifx{\LS@rot\@undefined}{}{\LS@rot}%
-}%
-\def\ltxgrid@info{%
- \ltxgrid@info@sw{\class@info}{\@gobble}%
-}%
-\@booleanfalse\ltxgrid@info@sw
-\def\ltxgrid@warn{%
- \ltxgrid@warn@sw{\class@warn}{\@gobble}%
-}%
-\@booleantrue\ltxgrid@warn@sw
-\@booleanfalse\ltxgrid@foot@info@sw
-\def\def@next@handler#1#2#3{%
- \advance#1\@ne\mathchardef#2\the#1%
- \expandafter\def\csname output@-\the#1\endcsname{#3}%
-}%
-\def\def@line@handler#1#2{%
- \begingroup
- \@tempcnta\int@parpenalty
- \advance\@tempcnta-#1%
- \aftergroup\def
- \expandafter\aftergroup\csname output@-\the\@tempcnta\endcsname
- \endgroup{#2}%
-}%
-\mathchardef\int@parpenalty11012
-\def@line@handler\z@{\@handle@line@ltx{}{}{}}%
-\def@line@handler\@ne{\@handle@line@ltx{}{}{\brokenpenalty@ltx}}%
-\def@line@handler\tw@{\@handle@line@ltx{}{\clubpenalty@ltx}{}}%
-\def@line@handler\thr@@{\@handle@line@ltx{\clubpenalty@ltx}{}{\brokenpenalty@ltx}}%
-\def@line@handler\f@ur{\@handle@line@ltx{\widowpenalty@ltx}{}{}}%
-\def@line@handler{5}{\@handle@line@ltx{\widowpenalty@ltx}{}{\brokenpenalty@ltx}}%
-\def@line@handler{6}{\@handle@line@ltx{\widowpenalty@ltx}{\clubpenalty@ltx}{}}%
-\def@line@handler{7}{\@handle@line@ltx{\widowpenalty@ltx}{\clubpenalty@ltx}{\brokenpenalty@ltx}}%
-\def@line@handler{8}{\@handle@line@ltx{\displaywidowpenalty@ltx}{}{}}%
-\def@line@handler{9}{\@handle@line@ltx{\displaywidowpenalty@ltx}{}{\brokenpenalty@ltx}}%
-\def@line@handler{10}{\@handle@line@ltx{\displaywidowpenalty@ltx}{\clubpenalty@ltx}{}}%
-\def@line@handler{11}{\@handle@line@ltx{\displaywidowpenalty@ltx}{\clubpenalty@ltx}{\brokenpenalty@ltx}}%
-\def\@handle@line@ltx#1#2#3{%
- \@@handle@line@ltx
- \@tempcnta\lastpenalty
- \@tempcntb\interlinepenalty@ltx\relax
- \@if@empty{#1}{}{\advance\@tempcntb#1\relax}%
- \@if@empty{#2}{}{\advance\@tempcntb#2\relax}%
- \@if@empty{#3}{}{\advance\@tempcntb#3\relax}%
- \penalty\@ifnum{\@tempcnta<\@tempcntb}{\@tempcntb}{\@tempcnta}%
-}%
-\let\@@handle@line@ltx\@empty
-\@tempcnta\int@parpenalty
-\def@next@handler\@tempcnta\int@postparpenalty{\reset@queues@ltx\handle@par@ltx}%
-\def@next@handler\@tempcnta\int@vadjustpenalty{\handle@vadjust@ltx}%
-\def@next@handler\@tempcnta\int@whatsitpenalty{\handle@whatsit@ltx}%
-\def@next@handler\@tempcnta\int@predisplaypenalty{\reset@queues@ltx\@handle@display@ltx{\predisplaypenalty@ltx}}%
-\def@next@handler\@tempcnta\int@interdisplaylinepenalty{\@handle@display@ltx{\interdisplaylinepenalty@ltx}}%
-\def@next@handler\@tempcnta\int@postdisplaypenalty{\@handle@display@ltx{\postdisplaypenalty@ltx}}%
-\def\@handle@display@ltx#1{%
- \@@handle@display@ltx
- \@tempcnta\lastpenalty
- \@tempcntb#1%
- \penalty\@ifnum{\@tempcnta<\@tempcntb}{\@tempcntb}{\@tempcnta}%
-}%
-\let\@@handle@display@ltx\@empty
-\def\handle@par@ltx{}%
-\def\set@linepenalties{%
- \expandafter\def\expandafter\interlinepenalty@ltx\expandafter{\the\interlinepenalty}%
- \interlinepenalty-\int@parpenalty
- \expandafter\def\expandafter\brokenpenalty@ltx\expandafter{\the\brokenpenalty}%
- \brokenpenalty\@ne
- \expandafter\def\expandafter\clubpenalty@ltx\expandafter{\the\clubpenalty}%
- \clubpenalty\tw@
- \expandafter\def\expandafter\widowpenalty@ltx\expandafter{\the\widowpenalty}%
- \widowpenalty\f@ur
- \expandafter\def\expandafter\displaywidowpenalty@ltx\expandafter{\the\displaywidowpenalty}%
- \displaywidowpenalty8\relax
-}%
-\def\restore@linepenalties{%
- \interlinepenalty\interlinepenalty@ltx
- \brokenpenalty\brokenpenalty@ltx
- \clubpenalty\clubpenalty@ltx
- \widowpenalty\widowpenalty@ltx
- \displaywidowpenalty\displaywidowpenalty@ltx
- \relax
-}%
-\def\set@displaypenalties#1{%
- \expandafter\def\expandafter\predisplaypenalty@ltx\expandafter{\the\predisplaypenalty}%
- \expandafter\def\expandafter\interdisplaylinepenalty@ltx\expandafter{\the\interdisplaylinepenalty}%
- \expandafter\def\expandafter\postdisplaypenalty@ltx\expandafter{\the\postdisplaypenalty}%
- \@ifhmode{\predisplaypenalty-\int@predisplaypenalty\relax}{}%
- #1{\interdisplaylinepenalty-\int@interdisplaylinepenalty\relax}{}%
- #1{\postdisplaypenalty-\int@postdisplaypenalty\relax}{}%
-}%
-\def\enqueue@whatsit@ltx#1{%
- \gappdef\g@whatsit@queue{{#1}}%
- \vadjust{\penalty-\int@whatsitpenalty}%
-}%
-\def\handle@whatsit@ltx{%
- \unvbox\@cclv
- \g@pop@ltx\g@whatsit@queue\@tempa
- \expandafter\do@whatsit\expandafter{\@tempa}%
-}%
-\def\do@whatsit#1{}%
-\def\g@pop@ltx#1#2{%
- \expandafter\@g@pop@ltx#1{}{}\@@#1#2%
-}%
-\def\@g@pop@ltx#1#2\@@#3#4{%
- \gdef#3{#2}%
- \def#4{#1}%
-}%
-\let\vspace@ltx\vspace
-\let\pagebreak@ltx\pagebreak
-\let\nopagebreak@ltx\nopagebreak
-\let\endline@ltx\\
-\let\@arrayparboxrestore@ltx\@arrayparboxrestore
-\def\@vspace@org #1{%
- \ifvmode
- \vskip #1
- \vskip\z@skip
- \else
- \@bsphack
- \vadjust{\@restorepar
- \vskip #1
- \vskip\z@skip
- }%
- \@esphack
- \fi
-}%
-\def\@vspace@ltx#1{%
- \@ifvmode{%
- \vskip#1\vskip\z@skip
- }{%
- \@bsphack
- \ex@vadjust@ltx{%
- \@restorepar
- \nobreak
- \vskip#1\vskip\z@skip
- }%
- \@esphack
- }%
-}%
-\def\@vspacer@org#1{%
- \ifvmode
- \dimen@\prevdepth
- \hrule \@height\z@
- \nobreak
- \vskip #1
- \vskip\z@skip
- \prevdepth\dimen@
- \else
- \@bsphack
- \vadjust{\@restorepar
- \hrule \@height\z@
- \nobreak
- \vskip #1
- \vskip\z@skip}%
- \@esphack
-\fi
-}%
-\def\@vspacer@ltx#1{%
- \@ifvmode{%
- \dimen@\prevdepth
- \hrule\@height\z@
- \nobreak
- \vskip#1\vskip\z@skip
- \prevdepth\dimen@
- }{%
- \@bsphack
- \ex@vadjust@ltx{%
- \@restorepar
- \hrule\@height\z@
- \nobreak
- \vskip#1\vskip\z@skip
- }%
- \@esphack
- }%
-}%
-\def\@no@pgbk@org #1[#2]{%
- \ifvmode
- \penalty #1\@getpen{#2}%
- \else
- \@bsphack
- \vadjust{\penalty #1\@getpen{#2}}%
- \@esphack
- \fi
-}%
-\def\@no@pgbk@ltx#1[#2]{%
- \@ifvmode{%
- \penalty#1\@getpen{#2}%
- }{%
- \@bsphack
- \ex@vadjust@ltx{%
- \penalty#1\@getpen{#2}%
- }%
- \@esphack
- }%
-}%
-\long\def\end@line@org{%
- \let\reserved@e\relax
- \let\reserved@f\relax
- \@ifstar{%
- \let\reserved@e\vadjust
- \let\reserved@f\nobreak
- \@xnewline
- }%
- \@xnewline
-}%
-\long\def\end@line@ltx{%
- \let\reserved@e\relax
- \let\reserved@f\relax
- \@ifstar{%
- \let\reserved@e\ex@vadjust@ltx
- \let\reserved@f\nobreak
- \@xnewline
- }{%
- \@xnewline
- }%
-}%
-\def\@newline@org[#1]{%
- \let\reserved@e\vadjust
- \@gnewline{\vskip#1}%
-}%
-\def\@newline@ltx[#1]{%
- \let\reserved@e\ex@vadjust@ltx
- \@gnewline{\vskip#1}%
-}%
- \@ifx{\@vspace\@vspace@org}{%
- \@ifx{\@vspacer\@vspacer@org}{%
- \@ifx{\@no@pgbk\@no@pgbk@org}{%
- \@ifx{\@newline\@newline@org}{%
- \expandafter\@ifx\expandafter{\csname\expandafter\@gobble\string\\ \endcsname\end@line@org}{%
- \true@sw
- }{\false@sw}%
- }{\false@sw}%
- }{\false@sw}%
- }{\false@sw}%
- }{\false@sw}%
- {%
- \class@info{Overriding \string\@vspace, \string\@vspacer, \string\@no@pgbk, \string\@newline, and \string\\ }%
- \let\@normalcr\end@line@ltx
- \expandafter\let\csname\expandafter\@gobble\string\\ \endcsname\@normalcr
- \let\@newline\@newline@ltx
- \let\@vspace\@vspace@ltx
- \let\@vspacer\@vspacer@ltx
- \let\@no@pgbk\@no@pgbk@ltx
- }{%
- \class@warn{%
- Failed to recognize \string\@vspace, \string\@vspacer, \string\@no@pgbk, \string\@newline, and \string\\;
- no patches applied. Please get a more up-to-date class,
- }%
- }%
-\let\ex@vadjust@ltx\vadjust
-\def\enqueue@vadjust@ltx#1{%
- \gappdef\g@vadjust@queue{{#1}}%
- \vadjust{\penalty-\int@vadjustpenalty}%
-}%
-\def\handle@vadjust@ltx{%
- \unvbox\@cclv
- \g@pop@ltx\g@vadjust@queue\@tempa
- \expandafter\gappdef\expandafter\g@vadjust@line\expandafter{\@tempa}%
-}%
-\let\g@vadjust@line\@empty
-\def\reset@queues@ltx{%
- \global\let\g@whatsit@queue\@empty
- \global\let\g@vadjust@queue\@empty
-}%
-\newcommand\linenomathWithnumbers@LN{%
- \ifLineNumbers
- \ifnum\interlinepenalty>-\linenopenaltypar
- \global\holdinginserts\thr@@
- \advance\interlinepenalty \linenopenalty
- \ifhmode
- \advance\predisplaypenalty \linenopenalty
- \fi
- \advance\postdisplaypenalty \linenopenalty
- \advance\interdisplaylinepenalty \linenopenalty
- \fi
- \fi
- \ignorespaces
-}%
-\newcommand\linenomathNonumbers@LN{%
- \ifLineNumbers
- \ifnum\interlinepenalty>-\linenopenaltypar
- \global\holdinginserts\thr@@
- \advance\interlinepenalty \linenopenalty
- \ifhmode
- \advance\predisplaypenalty \linenopenalty
- \fi
- \fi
- \fi
- \ignorespaces
-}%
-\def\endlinenomath@LN{%
- \ifLineNumbers
- \global\holdinginserts\@LN@outer@holdins
- \fi
- \global\@ignoretrue
-}
-\def\linenumberpar@LN{%
- \ifvmode \@@@par \else
- \ifinner \@@@par \else
- \xdef\@LN@outer@holdins{\the\holdinginserts}%
- \advance \interlinepenalty \linenopenalty
- \linenoprevgraf \prevgraf
- \global \holdinginserts \thr@@
- \@@@par
- \ifnum\prevgraf>\linenoprevgraf
- \penalty-\linenopenaltypar
- \fi
- \@LN@parpgbrk
- \global\holdinginserts\@LN@outer@holdins
- \advance\interlinepenalty -\linenopenalty
- \fi
- \fi
-}%
-\appdef\class@documenthook{%
- \@ifpackageloaded{lineno}{%
- \@ifx{\linenomathWithnumbers\linenomathWithnumbers@LN}{%
- \@ifx{\linenomathNonumbers\linenomathNonumbers@LN}{%
- \@ifx{\endlinenomath\endlinenomath@LN}{%
- \@ifx{\linenumberpar\linenumberpar@LN}{%
- \true@sw
- }{\false@sw}%
- }{\false@sw}%
- }{\false@sw}%
- }{\false@sw}%
- {%
- \class@info{Overriding lineo.sty, restoring output routine,}%
- \let\linenumberpar\linenumberpar@ltx
- \let\endlinenomath\endlinenomath@ltx
- \expandafter\let\csname endlinenomath*\endcsname\endlinenomath@ltx
- \let\linenomathWithnumbers\linenomathWithnumbers@ltx
- \let\linenomathNonumbers\linenomathNonumbers@ltx
- \let\ex@vadjust@ltx\ex@vadjust@line
- \let\@LN@postlabel\enqueue@whatsit@ltx
- \let\do@whatsit\write@linelabel
- \let\handle@par@ltx\handle@par@LN
- \let\@@handle@line@ltx\Make@LineNo@ltx
- \let\@@handle@display@ltx\Make@LineNo@ltx
- \output@latex{\natural@output}%
- \let\vspace\vspace@ltx
- \let\pagebreak\pagebreak@ltx
- \let\nopagebreak\nopagebreak@ltx
- \let\@arrayparboxrestore\@arrayparboxrestore@ltx
- \let\\\endline@ltx
- \appdef\set@footnotefont{%
- \let\par\@@@par
- \let\@@par\@@@par
- }%
- \@if@sw\ifLineNumbers\fi{%
- \class@info{Reinvoke \string\linenumbers}%
- \let\@@par\linenumberpar
- \@ifx{\@par\linenumberpar@LN}{\let\@par\linenumberpar}{}%
- \@ifx{\par\linenumberpar@LN}{\let\par\linenumberpar}{}%
- }{%
- \class@info{Line numbering not turned on yet}%
- }%
- }{%
- \class@warn{Failed to recognize lineno.sty procedures; no patches applied. Please get a more up-to-date class.}%
- }%
- }{%
- }%
-}%
-\def\linenumberpar@ltx{\@ifvmode{\@@@par}{\@linenumberpar}}%
-\def\@linenumberpar{%
- \linenoprevgraf\prevgraf
- \set@linepenalties
- \@@@par
- \@ifnum{\prevgraf>\linenoprevgraf}{
- \penalty-\int@postparpenalty
- }{}%
- \@LN@parpgbrk
- \restore@linepenalties
-}%
-\newcommand\linenomathWithnumbers@ltx{\@linenomathnumbers@ltx\true@sw}%
-\newcommand\linenomathNonumbers@ltx{\@linenomathnumbers@ltx\false@sw}%
-\def\@linenomathnumbers@ltx#1{%
- \@if@sw\ifLineNumbers\fi{%
- \set@linepenalties
- \set@displaypenalties#1%
- }{}%
- \ignorespaces
-}%
-\def\endlinenomath@ltx{%
- \global\@ignoretrue
-}%
-\def\handle@par@LN{%
- \Make@LineNo@ltx
- \@tempcnta\lastpenalty
- \@ifnum{\@tempcnta=\z@}{}{%
- \expandafter\gdef
- \expandafter\@LN@parpgbrk
- \expandafter{%
- \expandafter\penalty
- \the\@tempcnta
- \global\let\@LN@parpgbrk\@LN@screenoff@pen
- }%
- }%
-}%
-\def\Make@LineNo@ltx{%
- \@LN@maybe@normalLineNumber
- \boxmaxdepth\maxdimen\setbox\z@\vbox{\unvbox\@cclv}%
- \@tempdima\dp\z@
- \unvbox\z@
- \sbox\@tempboxa{\hb@xt@\z@{\makeLineNumber}}%
- \ht\@tempboxa\z@
- \@LN@depthbox
- \stepLineNumber
- \g@vadjust@line
- \global\let\g@vadjust@line\@empty
-}%
-\def\write@linelabel#1{%
- \protected@write\@auxout{}{%
- \string\newlabel{#1}{{\theLineNumber}{\thepage}{}{}{}}%
- }%
-}%
-\def\ex@vadjust@line{%
- \@if@sw\ifLineNumbers\fi{\enqueue@vadjust@ltx}{\vadjust}%
-}%
-\endinput
-%%
-%% End of file `ltxgrid.sty'.