# HG changeset patch # User Madhusudan.C.S # Date 1273530066 -19800 # Node ID 30b754364bbbb6178571ac7b15d1e12a3a4c3be7 # Parent 0a0bddff68475aa3dbc40dff8d04a521281c72c8 Add all proceedings generation source files. diff -r 0a0bddff6847 -r 30b754364bbb project/static/proceedings/sources/abstracts.sty --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/project/static/proceedings/sources/abstracts.sty Tue May 11 03:51:06 2010 +0530 @@ -0,0 +1,200 @@ +\NeedsTeXFormat{LaTeX2e} +\ProvidesPackage{abstracts} +\RequirePackage{graphicx} +%\RequirePackage{setspace} +\RequirePackage[a4paper,textwidth=16cm,textheight=25cm]{geometry} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +%\RequirePackage[utf8]{inputenc} +\RequirePackage[T1]{fontenc} +\RequirePackage{lmodern} +\RequirePackage{titlesec} +\RequirePackage{fancyhdr} +\RequirePackage{framed} +\RequirePackage[hyphens]{url} +\RequirePackage{enumitem} +\RequirePackage{hyperref} + +% For ltxgrid to work +%\newcommand{\class@name}{gael} + +%----------------------------------------------------------------------------- +% Special-purpose color definitions (dark enough to print OK in black and white) +\usepackage{color} + +% A few colors to replace the defaults for certain link types +\definecolor{orange}{cmyk}{0,0.4,0.8,0.2} +\definecolor{darkorange}{rgb}{.71,0.21,0.01} +\definecolor{darkblue}{rgb}{.01,0.21,0.71} +\definecolor{darkgreen}{rgb}{.1,.52,.09} + +%----------------------------------------------------------------------------- +% The hyperref package gives us a pdf with properly built +% internal navigation ('pdf bookmarks' for the table of contents, +% internal cross-reference links, web links for URLs, etc.) +\usepackage{hyperref} +\hypersetup{pdftex, % needed for pdflatex + breaklinks=true, % so long urls are correctly broken across lines + colorlinks=true, + urlcolor=blue, + linkcolor=darkblue, + citecolor=darkgreen, + } + + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% Definitions of the commands used in abstracts : + +% For the hyperref package we need to include section call in the source, +% so let's render them useless : + +\setlength\parindent{0pt} + +\def\title#1{ + \noindent + \section*{\Large #1} + \addcontentsline{toc}{section}{\sffamily #1} +} + +\def\addauthorstoc#1{% +\addtocontents{toc}{\vspace*{-.5ex}{\small #1}\protect\newline\smallskip} +} + +\def\presentingauthor#1{ +\begin{minipage}{0.8\linewidth} +~ ~ ~\underline{#1} +\end{minipage} +} + +\def\email#1{{\small \tt \url{#1}}} + +\renewenvironment{abstract}{\sffamily\bfseries}{\par\smallskip} + + +\def\otherauthors#1{ +{\sffamily #1}\par +} + +\def\address#1{{\em #1}} + +\def\tablefootnote#1#2{\hbox to 0pt{$^{\rm #1}$\footnotesize #2\hss}} + +\def\thebibliography#1{ +\list{[\arabic{enumi}]}{\settowidth\labelwidth{[#1]} +\leftmargin\labelwidth\advance\leftmargin\labelsep\itemsep-\parsep +\topsep0pt\usecounter{enumi}\small} +\small +} + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% Styling +\titleformat*{\section}{\large\bfseries\sffamily} +\titleformat*{\subsection}{\bfseries\sffamily} +\titleformat*{\subsubsection}{\sffamily} + +\def\resetheadings#1#2#3#4{ + \fancyhf{} %delete the current section for header and footer + \fancyfoot[RE,LO]{\sffamily\bfseries\thepage} + \fancyhead[LO]{\bfseries Proceedings of the 8$^{\text{th}}$ Python in +Science Conference (SciPy 2009)} + \fancyfoot[RO]{\footnotesize #3} + \fancyfoot[LE]{\footnotesize #4} + \fancyhead[RE]{#1} + \renewcommand{\headrulewidth}{1pt} + \renewcommand{\footrulewidth}{1pt} + \renewcommand{\headwidth}{\textwidth} + \pagestyle{fancy} + + \gdef\this@citation{#2} + + \fancypagestyle{mytitle}{% + \fancyhf{} % clear all header and footer fields + \fancyfoot[RE,LO]{\sffamily\bfseries\thepage} + \fancyfoot[LE,RO]{\footnotesize \this@citation} + \fancyhead[LO,RE]{\bfseries Proceedings of the 8$^{\text{th}}$ Python + in Science Conference (SciPy 2009)} + \renewcommand{\headrulewidth}{1pt} + \renewcommand{\footrulewidth}{1pt} + \renewcommand{\headwidth}{\textwidth} + } + \thispagestyle{mytitle} +} + +\resetheadings{}{}{}{} + +\setlength\columnsep{3ex} + +\setlength\parindent{0pt} + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% A cooler caption +\renewcommand{\caption}[2][foo]{% +\begin{minipage}{0.9\linewidth} +\small\sffamily\sl% +\hspace*{-0.05\linewidth}% +#2 +\end{minipage}}% +%} + +% Float parameters, for more full pages. +\renewcommand{\topfraction}{0.9} % max fraction of floats at top +\renewcommand{\bottomfraction}{0.8} % max fraction of floats at bottom + +\renewcommand{\textfraction}{0.07} % allow minimal text w. figs +% Parameters for FLOAT pages (not text pages): +\renewcommand{\floatpagefraction}{0.6} % require fuller float pages +% % N.B.: floatpagefraction MUST be less than topfraction !! + + + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% A hack to have longtable work without problems with mutlicolumn + +\renewenvironment{longtable}[2][1]{% +%\setlength{\locallinewidth}{1.3\linewidth} +\footnotesize +% Hack +%\def\textbf#1{{\sffamily\bfseries #1}} +\sffamily +\begin{center} +\begin{tabular}{#2} +}{% +\end{tabular} +\end{center} +} + +\def\endhead{\small} + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% Code blocks +\newlength\leftsidespace + +\renewenvironment{quote}{% +\par +\smallskip +\hspace{0.03\linewidth}% +\begin{minipage}{0.97\linewidth} +\footnotesize}{% +\end{minipage} +\smallskip +} + +% Hack to restore or original font size }in lists: +\let\old@item\item +\def\item#1{% +\normalsize\old@item{#1}% +} + +\setitemize{leftmargin=1em} + +\setlength{\parskip}{0.1em plus 0.5em minus 0.1em} + +%% Hack to get good linebreaking in tt: +%\let\oldtexttt\textt +%\DeclareUrlCommand\mytexttt{% +%\mathchardef\UrlBreakPenalty=0 +%\mathchardef\UrlBigBreakPenalty=0 +%} +%\def\texttt#1{\mytexttt{#1}} + +% :vim:ft=tex: diff -r 0a0bddff6847 -r 30b754364bbb project/static/proceedings/sources/conclusion.tex --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/project/static/proceedings/sources/conclusion.tex Tue May 11 03:51:06 2010 +0530 @@ -0,0 +1,30 @@ + +\cleardoublepage + +\pagestyle{empty} + +\begin{minipage}{.4\linewidth} +\includegraphics[width=\linewidth]{scipy2009confs} +\end{minipage} +\hfill +\begin{minipage}{.6\linewidth} +{\bfseries\sffamily +Proceedings of the 8$^{\text{th}}$ Python in Science Conference} + +SciPy Conference -- Pasadena, CA, August 18-23, 2009. + +Editors: \quad \mbox{Ga\"el {\sc Varoquaux}}, \quad +\mbox{St\'efan {\sc van der Walt}}, \quad \mbox{K. Jarrod {\sc Millman}} + +\end{minipage} + +\hrule + +\vbox{} +\vfill +\vfill +\hfill\includegraphics[width=.3\linewidth]{isbn_barcode} + +\end{document} + + diff -r 0a0bddff6847 -r 30b754364bbb project/static/proceedings/sources/introduction.tex --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/project/static/proceedings/sources/introduction.tex Tue May 11 03:51:06 2010 +0530 @@ -0,0 +1,141 @@ + +\thispagestyle{empty} + +\vbox{} +\vfill +\vfill +\vfill +\begin{center} +\rule{.9\linewidth}{.2ex} + +\includegraphics[width=\linewidth]{scipy2009confs} + +\rule{.9\linewidth}{.2ex} + +\vfill + +{\sffamily\bfseries +{\huge +Proceedings of the 8$^{\text{th}}$ Python in Science Conference} + +\bigskip +\large +SciPy Conference -- +Pasadena, CA, August 18-23, +2009. +} + +\vfill +\vfill +\vfill +\hline + +Editors: \quad Ga\"el {\sc Varoquaux}, \quad +St\'efan {\sc van der Walt}, \quad K. Jarrod {\sc Millman} +\end{center} +\vfill +\vfill +\vfill +%\hfill\includegraphics[width=.3\linewidth]{isbn_barcode} +%\vbox{} + +\pagebreak + +\thispagestyle{empty} + +\cleardoublepage + +\setcounter{page}{0} +\vbox{} +\vfill +\thispagestyle{empty} +\tableofcontents +\vfill + +{\small + The content of the articles of the {\sl Proceedings of the Python in + Science Conference} is copyrighted and owned by their original + authors. + + For republication or other use of the material published, please + contact the copyright owners to obtain permission. + + \bigskip + \hrule + + +Proceedings of the 8th Python in Science Conference +by Ga\"el Varoquaux, St\'efan van der Walt, K. Jarrod Milllman +ISBN: 978-0-557-23212-3 + +} + +\vfill +\vbox{} +\markright{}{} +\markbox{}{} +\clearpage +\thispagestyle{empty} +\section*{Organization} + +\def\bfsf{\bfseries\sffamily } + +%\hspace*{-.5cm}% +\begin{tabular}{p{3.7cm}p{0.75\textwidth}} +{\bfsf Conference chair}&\\ +K. Jarrod Millman & UC Berkeley, Helen Wills Neuroscience Institute, {\sc +USA}\\ +\smallskip +{\bfsf Tutorial Co-chairs}&\\ +Dave Peterson & Enthought Inc, Austin, {\sc USA} \\ +Fernando Perez & UC Berkeley, Helen Wills Neuroscience Institute, {\sc +USA}\\ +\smallskip +{\bfsf Program Co-chairs}&\\ +Ga\"el Varoquaux & INRIA Saclay, {\sc France} \\ +St\'efan van der Walt & Stellenbosh University, {\sc South Africa}\\ +\smallskip +{\bfsf Program Committee}&\\ +Michael Aivazis & Center for Advanced Computing Research, California +Institute of Technology {\sc USA}\\ +Brian Granger & Physics Department, California Polytechnic State +University, San Luis Obispo {\sc USA} \\ +Aric Hagberg & Theoretical Division, Los Alamos National Laboratory +{\sc USA} \\ +Konrad Hinsen & Centre de Biophysique Mol\'eculaire, CNRS Orl\'eans {\sc +France} \\ +Randall LeVeque & Mathematics, University of Washington, Seattle {\sc +USA}\\ +Travis Oliphant & Enthought Inc. {\sc USA} \\ +Prabhu Ramachandran & Department of Aerospace Engineering, IIT Bombay +{\sc India}\\ +Raphael Ritz & International Neuroinformatics Coordinating Facility +{\sc Sweden}\\ +William Stein & Mathematics, University of Washington, Seattle {\sc USA}\\ +\smallskip +{\bfsf Proceeding reviewers}&\\ +Francesc Alted & Pytables {\sc Spain}\\ +Philippe Ciuciu & CEA, Neurospin {\sc France}\\ +Yann Cointepas & CEA, Neurospin {\sc France}\\ +Emmanuelle Gouillart & CNRS Saint Gobain {\sc France}\\ +Jonathan Guyer & NIST {\sc USA}\\ +Ben Herbst & Stellenbosh University, {\sc South Africa}\\ +Paul Kienzle & NIST {\sc USA}\\ +Michael McKerns & Center for Advanced Computing Research, California +Institute of Technology {\sc +USA}\\ +Sturla Molden & University of Oslo {\sc Norway}\\ +Jean-Baptiste Poline & CEA, Neurospin {\sc France}\\ +Dag Sverre Seljebotn & University of Oslo {\sc Norway}\\ +Gregor Thalhammer & University of Florence {\sc Italy}\\ +\end{tabular} + +\pagestyle{fancy} +\resethandings +\cleardoublepage +\markright{}{} +\markbox{}{} +\pagestyle{fancy} +\resethandings + + diff -r 0a0bddff6847 -r 30b754364bbb project/static/proceedings/sources/isbn_barcode.pdf Binary file project/static/proceedings/sources/isbn_barcode.pdf has changed diff -r 0a0bddff6847 -r 30b754364bbb project/static/proceedings/sources/latex2e.tex --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/project/static/proceedings/sources/latex2e.tex Tue May 11 03:51:06 2010 +0530 @@ -0,0 +1,74 @@ +% latex include file for docutils latex writer +% -------------------------------------------- +% +% CVS: $Id: latex2e.tex 4163 2005-12-09 04:21:34Z goodger $ +% +% This is included at the end of the latex header in the generated file, +% to allow overwriting defaults, although this could get hairy. +% Generated files should process well standalone too, LaTeX might give a +% message about a missing file. + +% donot indent first line of paragraph. +\setlength{\parindent}{0pt} +\setlength{\parskip}{5pt plus 2pt minus 1pt} + +% sloppy +% ------ +% Less strict (opposite to default fussy) space size between words. Therefore +% less hyphenation. +\sloppy + +% fonts +% ----- +% times for pdf generation, gives smaller pdf files. +% +% But in standard postscript fonts: courier and times/helvetica do not fit. +% Maybe use pslatex. +\usepackage{times} + +% pagestyle +% --------- +% headings might put section titles in the page heading, but not if +% the table of contents is done by docutils. +% If pagestyle{headings} is used, \geometry{headheight=10pt,headsep=1pt} +% should be set too. +%\pagestyle{plain} +% +% or use fancyhdr (untested !) +%\usepackage{fancyhdr} +%\pagestyle{fancy} +%\addtolength{\headheight}{\\baselineskip} +%\renewcommand{\sectionmark}[1]{\markboth{#1}{}} +%\renewcommand{\subsectionmark}[1]{\markright{#1}} +%\fancyhf{} +%\fancyhead[LE,RO]{\\bfseries\\textsf{\Large\\thepage}} +%\fancyhead[LO]{\\textsf{\\footnotesize\\rightmark}} +%\fancyhead[RE]{\\textsc{\\textsf{\\footnotesize\leftmark}}} +%\\fancyfoot[LE,RO]{\\bfseries\\textsf{\scriptsize Docutils}} +%\fancyfoot[RE,LO]{\\textsf{\scriptsize\\today}} + +% geometry +% -------- +% = papersizes and margins +%\geometry{a4paper,twoside,tmargin=1.5cm, +% headheight=1cm,headsep=0.75cm} + +% Do section number display +% ------------------------- +%\makeatletter +%\def\@seccntformat#1{} +%\makeatother +% no numbers in toc +%\renewcommand{\numberline}[1]{} + + +% change maketitle +% ---------------- +%\renewcommand{\maketitle}{ +% \begin{titlepage} +% \begin{center} +% \textsf{TITLE \@title} \\ +% Date: \today +% \end{center} +% \end{titlepage} +%} diff -r 0a0bddff6847 -r 30b754364bbb project/static/proceedings/sources/ltxgrid.sty --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/project/static/proceedings/sources/ltxgrid.sty Tue May 11 03:51:06 2010 +0530 @@ -0,0 +1,1984 @@ +%% +%% This is file `ltxgrid.sty', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% ltxgrid.dtx (with options: `ltxgrid,ltxgrid-krn') +%% +%% This is a generated file; +%% altering it directly is inadvisable; +%% instead, modify the original source file. +%% See the URL in the file 00readme.txt. +%% +%% Copyright notice. +%% +%% These files are distributed +%% WITHOUT ANY WARRANTY; without even the implied warranty of +%% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. +%% +%%% @LaTeX-file{ +%%% filename = "ltxgrid.dtx", +%%% version = "1.0rc5", +%%% date = "2001/07/26", +%%% time = "12:23:00 GMT+8", +%%% checksum = "4234", +%%% author = "Arthur Ogawa (mailto:ogawa@teleport.com), +%%% commissioned by the American Physical Society. +%%% ", +%%% copyright = "Copyright (C) 1999, 2000 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 = "ogawa@teleport.com", +%%% 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}% + [2001/07/26 1.0rc5 page grid package]% \fileversion +\def\package@name{ltxgrid}% +\expandafter\PackageInfo\expandafter{\package@name}{% + Page grid for \protect\LaTeXe, + by A. Ogawa (ogawa@teleport.com)% +}% +\RequirePackage{ltxutil}% +\typeout{% + ltxgrid: portions licensed from W. E. Baxter (web@superscript.com)% +}% +\newcounter{linecount} +\def\lineloop#1{% + \loop + \ifnum\c@linecount<#1\relax + \global\advance\c@linecount\@ne + \par + \hb@xt@\hsize{% + \ifnum\c@linecount<100 0\fi\ifnum\c@linecount<10 0\fi\number\c@linecount + \vrule depth2.5\p@ + \leaders\hrule\hfil + }% + \penalty\interlinepenalty + \repeat +}% +\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\output + \@@nil + }% +\newtoks\output +\output\expandafter{\the\toks@}% +\primitive@output{\dispatch@output}% +\def\dispatch@output{% + \let\par\@@par + \expandafter\let\expandafter\@tempa\csname output@\the\outputpenalty\endcsname + \outputdebug@sw{% + \saythe\badness + \saythe\outputpenalty + \saythe\holdinginserts + \say\thepagegrid + \saythe\pagegrid@col + \saythe\pagegrid@cur + %\say\bot@envir + \saythe\insertpenalties + %\say\@@topmark + %\say\saved@@topmark + %\say\@@firstmark + %\say\saved@@firstmark + \say\@@botmark + %\say\saved@@botmark + \saythe\pagegoal + \saythe\pagetotal + \saythe{\badness\@cclv}% + \expandafter\@ifx\expandafter{\csname output@-\the\execute@message@pen\endcsname\@tempa}{% + \say\@message@saved + }{% + \expandafter\say\csname output@\the\outputpenalty\endcsname + }% + \say\@toplist + \say\@botlist + \say\@dbltoplist + \say\@deferlist + {\tracingall\scrollmode + \showbox\@cclv + \showbox\@cclv@saved + \showbox\pagesofar + \showbox\footbox + \showbox\footins@saved + \showbox\footins + \showlists + }% + }{}% + \@ifnotrelax\@tempa{\@tempa}{\the\output}% +}% +\@ifxundefined{\outputdebug@sw}{% + \@booleanfalse\outputdebug@sw +}{}% +\output={\toggle@insert\output@holding\output@moving}% +\def\output@holding{% +\csname output@init@\bot@envir\endcsname +\@if@exceed@pagegoal{\unvcopy\@cclv}{% + \setbox\z@\vbox{\unvcopy\@cclv}% +\outputdebug@sw{{\tracingall\scrollmode\showbox\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{{\tracingall\scrollmode\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 +}% +%% \item +%% Put down the same interrupts as for the non-trivial case above. +\def\output@moving{% + \set@top@firstmark + \@ifnum{\outputpenalty=\do@newpage@pen}{% + \setbox\@cclv\vbox{% + \unvbox\@cclv + \setbox\z@\lastbox + \@ifdim{\ht\z@=\ht\@protection@box}{\box\lastbox}{\unskip}% + }% + }{}% + \@cclv@nontrivial@sw{% + \csname output@prep@\bot@envir \endcsname + \@makecol\csname output@column@\thepagegrid\endcsname + \protect@penalty\do@startcolumn@pen + \clearpage@sw{% + \protect@penalty\do@endpage@pen + }{}% + \csname output@post@\bot@envir \endcsname + }{% + {\setbox\z@\box\@cclv}% + }% + \set@colroom + \global\@mparbottom\z@ + \global\@textfloatsheight\z@ %FIXME: this legacy LaTeX variable is set, but never queried! +}% +\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{% +\unvbox\z@ +\setbox\z@\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 +}% +}% +{% +\false@sw % Normal for \clearpage +}{% +\true@sw +}% +}{% +\@ifdim{\ht\z@=\z@}{% +\ltxgrid@info{Found trivial column. Discarding it}% +\outputdebug@sw{{\tracingall\scrollmode\showbox\@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 + \setbox\z@\lastbox % Remove protection box + \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{% + \@ifvoid\footbox{}{% + \global\advance\vsize-\ht\footbox + \global\advance\vsize-\dp\footbox + }% +}% +\def\output@prep@document{% + \@ifvoid\footbox{}{% + \setbox\footins\vbox{\unvbox\footbox\unvbox\footins}% + }% +}% +\def\output@post@document{}% +\let\@opcol\@undefined +\def\@makecol{% + \setbox\@outputbox\vbox{% + \boxmaxdepth\@maxdepth + \@tempdima\dp\@cclv + \unvbox\@cclv + \vskip-\@tempdima + }% + \xdef\@freelist{\@freelist\@midlist}\global\let\@midlist\@empty + \@combinefloats + \@combineinserts\@outputbox\footins + \set@adj@colht\dimen@ + \count@\vbadness + \vbadness\@M + \setbox\@outputbox\vbox to\dimen@{% + \@texttop + \dimen@\dp\@outputbox + \unvbox\@outputbox + \vskip-\dimen@ + \@textbottom + }% + \vbadness\count@ + \global\maxdepth\@maxdepth +}% +\let\@makespecialcolbox\@undefined +\def\@combineinserts#1#2{% + \setbox#1\vbox{% + \unvbox#1% + \vbox{% + \@ifvoid#2{}{% + \vskip\skip\footins + \color@begingroup + \normalcolor + \footnoterule + \nointerlineskip + \box#2% + \color@endgroup + }{}% + }% + }% +}% +\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\setbox\z@\lastbox\unskip}% + \clearpage@sw{\@clearfloatplacement}{\@floatplacement}% + \set@colroom + \@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 % ask for a return visit, this time with insertions and all. + \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\setbox\z@\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}% + \@combinepage + \@combinedblfloats + \@outputpage + \global\pagegrid@cur\@ne + \protect@penalty\do@startpage@pen + }{% + \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\@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 % \c@topnumber + \global\@toproom \maxdimen % \topfraction\@colht + \global\@botnum \maxdimen % \c@bottomnumber + \global\@botroom \maxdimen % \bottomfraction\@colht + \global\@colnum \maxdimen % \c@totalnumber + \global\@dbltopnum \maxdimen % \c@dbltopnumber + \global\@dbltoproom \maxdimen % \dbltopfraction\@colht + \global\@textmin \z@ % \@colht\advance \@textmin -\@dbltoproom + \global\@fpmin \z@ % \dblfloatpagefraction\textheight + \let\@testfp\@gobble + \appdef\@setfloattypecounts{\@fpstype16\advance\@fpstype\m@ne}% +}% +\let\@doclearpage\@undefined +\let\@makefcolumn\@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{% + \clr@top@firstmark +}% +\def\@float#1{% + \@ifnextchar[{%}]{%Brace-matching klootch + \@yfloat\width@float{#1}% + }{% + \@ifxundefined@cs{fps@#1}{% + \edef\reserved@a{\noexpand\@yfloat\noexpand\width@float{#1}[\csname fps@\endcsname]}\reserved@a + }{% + \edef\reserved@a{\noexpand\@yfloat\noexpand\width@float{#1}[\csname fps@#1\endcsname]}\reserved@a + }% + }% +}% +\def\@dblfloat#1{% + \@ifnum{\pagegrid@col=\@ne}{% + \@float{#1}% + }{% + \@ifnextchar[{%}]{%Brace-matching klootch + \@yfloat\widthd@float{#1}% + }{% + \@ifxundefined@cs{fpsd@#1}{% + \edef\reserved@a{\noexpand\@yfloat\noexpand\widthd@float{#1}[\csname fpsd@\endcsname]}\reserved@a + }{% + \edef\reserved@a{\noexpand\@yfloat\noexpand\widthd@float{#1}[\csname fpsd@#1\endcsname]}\reserved@a + }% + }% + }% +}% +\def\@yfloat#1#2[#3]{% + \@xfloat{#2}[#3]% + \hsize#1\linewidth\hsize + \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{% + \@boxfpsbit\@currbox{1}\@ifodd\@tempcnta{\global\advance\count\@currbox\m@ne}{}% + \@boxfpsbit\@currbox{4}\@ifodd\@tempcnta{\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 + }% + }{}% +}% +\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}% +}{}% + }{% + % Is a \marginpar + }% +}% +\providecommand\minipagefootnote@init{}% +\providecommand\minipagefootnote@here{}% +\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 % do not assume \holdinginserts is cleared! + \@addtocurcol % Commit an h float + }{% + \@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% +}% +\AtBeginDocument{% + \@ifxundefined\rotatebox{\let\rotatebox\rotatebox@dummy}{}% +}% +\@namedef{output@-1073741824}{%"40000000 + \deadcycles\z@ + \setbox\z@\box\@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 +\setbox\z@\lastbox +}% +}% +\newtoks\@topmark@saved +\def\prep@cclv{% + \setbox\z@\box\@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\setbox\z@\lastbox}{% + \setbox\z@\vbox{\unvcopy\@cclv\setbox\z@\lastbox}% + \outputdebug@sw{{\tracingall\scrollmode\showbox\z@}}{}% +\dimen@\ht\@cclv\advance\dimen@-\ht\z@ +\dead@cycle@repair@protected\dimen@ +}{% +\dead@cycle +}% +}% +\def\savecolumn@moving{% + \@cclv@nontrivial@sw{% + \save@column + }{% + {\setbox\z@\box\@cclv}% + }% +\@ifvoid\footins{}{% +\outputdebug@sw{{\tracingall\scrollmode\showbox\footins}}{}% +\global\setbox\footins@saved\vbox{\unvbox\footins@saved\marry@baselines\unvbox\footins}% +\protect@penalty\save@column@insert@pen +}% +}% +\newbox\footins@saved +\mathchardef\save@message@pen=10018 +\@namedef{output@-\the\save@message@pen}{\save@message}% +\def\save@message{% + \setbox\z@\box\@cclv %FIXME: what if \box\@cclv is not empty? + \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 %Implicit #2 +}% +\def\execute@message@insert#1{% + \@execute@message\save@column@insert@pen{\setbox\footins\box\footins@saved#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}{% 10000 is a TeX magic number! + \unpenalty\true@sw + }{% + \false@sw + }% + }% +}% +\def\removestuff{\do@output@MVL{\unskip\unpenalty}}% +\def\removephantombox{% + \vadjust{% + \execute@message{% + \unvbox\@cclv + \setbox\z@\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\move@insert@sw{\@ifnum{\holdinginserts=\z@}}% +\def\toggle@insert#1#2{% + \@ifnum{\holdinginserts=\z@}{\hold@insertions#2}{\move@insertions#1}% +}% +\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\footbox +\newcommand\onecolumngrid{\do@columngrid{one}{\@ne}}% +\let\onecolumn\@undefined +\def\open@column@one#1{% + \unvbox\pagesofar + \gdef\thepagegrid{one}% + \global\pagegrid@col#1% + \global\pagegrid@cur\@ne + \set@colht + \set@column@hsize\pagegrid@col +}% +\def\shut@column@one{% + \@makecol + \global\setbox\pagesofar\vbox{\unvbox\@outputbox\recover@footins}% + \set@colht +}% +\def\float@column@one{% + \@makecol + \@outputpage +}% +\def\end@column@one{% + \unvbox\@cclv\setbox\z@\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{% + \gdef\thepagegrid{mlt}% + \global\pagegrid@col#1% + \global\pagegrid@cur\@ne + \set@column@hsize\pagegrid@col + \set@colht +}% +\def\shut@column@mlt{% + \@cclv@nontrivial@sw{% +\@makecol +\@ifnum{\pagegrid@cur<\pagegrid@col}{% +\expandafter\global\expandafter\setbox\csname col@\the\pagegrid@cur\endcsname\box\@outputbox +\global\advance\pagegrid@cur\@ne +}{}% + }{% + {\setbox\z@\box\@cclv}% + }% +\@ifnum{\pagegrid@cur>\@ne}{% +\csname balance@\the\pagegrid@col\endcsname +\grid@column{}% +\@combinepage +\@combinedblfloats +\global\setbox\pagesofar\box\@outputbox + }{}% + \set@colht +}% +\def\float@column@mlt{% + \@combinepage + \@combinedblfloats + \@outputpage + \global\pagegrid@cur\@ne + \protect@penalty\do@startpage@pen +}% +\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\setbox\z@\lastbox + }{% + \unvbox\@cclv\setbox\z@\lastbox\unskip\null + }% + \protect@penalty\do@newpage@pen + \protect@penalty\do@endpage@pen + }{% + \unvbox\@cclv\setbox\z@\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{}%{\dimen@}% + \@combinepage + \@combinedblfloats + \@outputpage + \global\pagegrid@cur\@ne + \protect@penalty\do@startpage@pen + }% +}% +\let\@outputdblcol\@undefined +\def\@floatselect@sw@mlt#1{\@if@notdblfloat{#1}}% +\def\@addmarginpar@mlt{% emits a boolean + \@ifnum{\pagegrid@cur=\@ne}% +}% +\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{% + \global\setbox\@outputbox\vbox{% + \hb@xt@\textwidth{% + \vrule\@height\z@\@width\z@\@if@empty{#1}{}{\@depth#1}% + \pagegrid@cur\@ne + \append@column + \box@column\@outputbox + }% + \vskip\z@skip % FIXME: page depth! + }% +}% +\def\append@column{% + \@ifnum{\pagegrid@cur<\pagegrid@col}{% + \expandafter\box@column\csname col@\the\pagegrid@cur\endcsname + \hfil + \vrule \@width\columnseprule + \hfil + \advance\pagegrid@cur\@ne + \append@column + }{% + }% +}% +\def\box@column#1{% + \raise\topskip + \hb@xt@\columnwidth{% + \dimen@\ht#1\@ifdim{\dimen@>\@colht}{\dimen@\@colht}{}% + \count@\vbadness\vbadness\@M + \dimen@ii\vfuzz\vfuzz\maxdimen + \outputdebug@sw{\saythe\@colht\saythe\dimen@}{}% + \vtop to\dimen@ + {\hrule\@height\z@ + \unvbox#1% + \raggedcolumn@skip + }% + \vfuzz\dimen@ii + \vbadness\count@ + \hss + }% +}% +\def\marry@baselines{% + \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 +}% +\AtBeginDocument{% + \@ifxundefined\raggedcolumn@sw{\@booleanfalse\raggedcolumn@sw}{}% +}% +\def\raggedcolumn@skip{% + \vskip\z@\raggedcolumn@sw{\@plus.0001fil\@minus.0001fil}{}\relax +}% +\def\@combinepage{% + \@ifvoid\pagesofar{}{% + \setbox\@outputbox\vbox{% + \unvbox\pagesofar + \marry@baselines + \unvbox\@outputbox + }% + }% + \@ifvoid\footbox{}{% + \setbox\@outputbox\vbox{% + \unvbox\@outputbox + \marry@baselines + \unvbox\footbox + }% + }% +}% +\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{% + #1\textheight + \def\@elt{\adj@page#1}% + \@booleantrue\firsttime@sw\@dbltoplist + \let\@elt\relax + \global#1#1\relax + \outputdebug@sw{\saythe#1}{}% +}% +\def\set@colroom{% + \set@adj@colht\@colroom + \@if@empty\enlarge@colroom{}{% + \global\advance\@colroom\enlarge@colroom\relax + }% + \outputdebug@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 + \outputdebug@sw{\saythe\vsize}{}% +}% +\def\set@adj@colht#1{% + #1\@colht + \@ifvoid\pagesofar{}{% + \advance#1-\ht\pagesofar\advance#1-\dp\pagesofar + }% + \@ifvoid\footbox{}{% + \advance#1-\ht\footbox\advance#1-\dp\footbox + }% + \def\@elt{\adj@column#1}% + \@booleantrue\firsttime@sw\@toplist + \@booleantrue\firsttime@sw\@botlist + \let\@elt\relax + \outputdebug@sw{\saythe#1}{}% +}% +\def\adj@column#1#2{% + \advance#1-\ht#2% + \advance#1-\firsttime@sw{\textfloatsep\@booleanfalse\firsttime@sw}{\floatsep}% +}% +\def\adj@page#1#2{% + \advance#1-\ht#2% + \advance#1-\firsttime@sw{\dbltextfloatsep\@booleanfalse\firsttime@sw}{\dblfloatsep}% +}% +\appdef\@outputpage{% + \set@colht % FIXME: needed? + \@floatplacement % FIXME: needed? + \@dblfloatplacement % FIXME: needed? +}% +\@namedef{balance@2}{% + \expandafter\balance@two\csname col@1\endcsname\@outputbox + % Avoid a bug by preventing a restore when leaving this group + \global\setbox\csname col@1\endcsname\box\csname col@1\endcsname + \@ifvoid\footbox{}{% + \global\setbox\footbox\vbox{% + \setbox\z@\box\@tempboxa + \let\recover@footins\relax + \balance@two\footbox\@tempboxa + \hb@xt@\textwidth{\box\footbox\hfil\box\@tempboxa}% + }% + }% +}% +\def\balance@two#1#2{% +\outputdebug@sw{{\tracingall\scrollmode\showbox#1\showbox#2}}{}% + \setbox\@ne\vbox{% + \@ifvoid#1{}{% + \unvcopy#1\recover@footins + \@ifvoid#2{}{\marry@baselines}% + }% + \@ifvoid#2{}{% + \unvcopy#2\recover@footins + }% + }% + \dimen@\ht\@ne\divide\dimen@\tw@ + \dimen@i\dimen@ + \vbadness\@M + \vfuzz\maxdimen + \loopwhile{% + \dimen@i=.5\dimen@i + \outputdebug@sw{\saythe\dimen@\saythe\dimen@i\saythe\dimen@ii}{}% + \setbox\z@\copy\@ne\setbox\tw@\vsplit\z@ to\dimen@ + \setbox\z@ \vbox{% + \unvcopy\z@ + \setbox\z@\vbox{\unvbox\z@ \setbox\z@\lastbox\aftergroup\vskip\aftergroup-\expandafter}\the\dp\z@\relax + }% + \setbox\tw@\vbox{% + \unvcopy\tw@ + \setbox\z@\vbox{\unvbox\tw@\setbox\z@\lastbox\aftergroup\vskip\aftergroup-\expandafter}\the\dp\z@\relax + }% + \dimen@ii\ht\tw@\advance\dimen@ii-\ht\z@ + \@ifdim{\dimen@i>.5\p@}{% + \advance\dimen@\@ifdim{\dimen@ii<\z@}{}{-}\dimen@i + \true@sw + }{% + \@ifdim{\dimen@ii<\z@}{% + \advance\dimen@\tw@\dimen@i + \true@sw + }{% + \false@sw + }% + }% + }% + \outputdebug@sw{\saythe\dimen@\saythe\dimen@i\saythe\dimen@ii}{}% +\@ifdim{\ht\z@=\z@}{% +\@ifdim{\ht\tw@=\z@}{% +\true@sw +}{% +\false@sw +}% +}{% +\true@sw +}% +{% +}{% +\ltxgrid@info{Unsatifactorily balanced columns: giving up}% +\setbox\tw@\box#1% +\setbox\z@ \box#2% +}% + \setbox\tw@\vbox{\unvbox\tw@\vskip\z@skip}% + \setbox\z@ \vbox{\unvbox\z@ \vskip\z@skip}% + \set@colroom +\dimen@\ht\z@\@ifdim{\dimen@<\ht\tw@}{\dimen@\ht\tw@}{}% +\@ifdim{\dimen@>\@colroom}{\dimen@\@colroom}{}% + \outputdebug@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{{\tracingall\scrollmode\showbox#1\showbox#2}}{}% +}% +\def\recover@footins{% + \skip\z@ \lastskip\unskip + \skip\@ne\lastskip\unskip + \setbox\z@\lastbox + \@ifvbox\z@{% +\setbox\z@\vbox{% +\unvbox\z@ +\setbox\z@\lastbox +\@ifvoid\z@{}{% +\global\setbox\footbox\vbox{% + \unvbox\footbox + \@ifvbox\z@{% + \unvbox\z@ + }{% + \box\z@ + }% +}% +}% +}% + }{}% + \outputdebug@sw{{\tracingall\scrollmode\showbox\footbox}}{}% +}% +\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 + \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\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 + }{% + \advance\@tempdima\extrarowheight + \col@sep\tabcolsep + \let\@startpbox\LT@startpbox + \let\LT@LL@FM@cr\@arraycr + }% + \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{}% +%% Note that it is not enough to define the environment itself; we also have to create the corresponding +%% \cmd\output\ routine procedures, which provide for continued footers and headers +%% (the very feature of \env{longtable} requiring support in the output routine). +%% This same consideration would arise in defining any syntactic extension to \env{longtable}, because +%% the environment name itself is exposed in the output routine. +\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}{% we have the leftmost column of a verso page + % insert the current top-level continued head + }% + }% +}% +\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% + }% + }{% + %Successfully committed float(s) + }% + \global\let\@deferlist@postshipout\@empty + }% +}% +\def\@fltstk{% + \@latex@warning{A float is stuck (cannot be placed without \string\clearpage)}% +}% +\appdef\@outputpage{% + \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}{% OK to adjust this page + \gdef\enlarge@colroom{#2}% + \true@sw + }{% Can only adjust this column; give up + \ltxgrid@warn{Too late to enlarge this page; move the command to the first column.}% + \false@sw + }% + }{% Unknown page grid + \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 + }{% + % Could not adjust this page + }% +}% +\let\enlarge@colroom\@empty +\let\@kludgeins\@undefined +\@booleantrue\textheight@sw +\prepdef\@outputpage{% + \textheight@sw{% + \count@\vbadness\vbadness\@M + \dimen@\vfuzz\vfuzz\maxdimen + \setbox\@outputbox\vbox to\textheight{\unvbox\@outputbox}% + \vfuzz\dimen@ + \vbadness\count@ + }{}% +}% +\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 +\endinput +%% +%% End of file `ltxgrid.sty'. diff -r 0a0bddff6847 -r 30b754364bbb project/static/proceedings/sources/ltxutil.sty --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/project/static/proceedings/sources/ltxutil.sty Tue May 11 03:51:06 2010 +0530 @@ -0,0 +1,1750 @@ +%% +%% This is file `ltxutil.sty', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% ltxutil.dtx (with options: `ltxutil,ltxutil-krn') +%% +%% This is a generated file; +%% altering it directly is inadvisable; +%% instead, modify the original source file. +%% See the URL in the file 00readme.txt. +%% +%% Copyright notice. +%% +%% These files are distributed +%% WITHOUT ANY WARRANTY; without even the implied warranty of +%% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. +%% +%%% @LaTeX-file{ +%%% filename = "ltxutil.dtx", +%%% version = "1.0rc5b", +%%% date = "2001/07/31", +%%% time = "12:23:00 GMT+8", +%%% checksum = "3641", +%%% author = "Arthur Ogawa (mailto:ogawa@teleport.com), +%%% commissioned by the American Physical Society. +%%% ", +%%% copyright = "Copyright (C) 1999 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 = "ogawa@teleport.com", +%%% codetable = "ISO/ASCII", +%%% keywords = "latex, utility, kernel", +%%% supported = "yes", +%%% abstract = "package to add utilties to LaTeX", +%%% docstring = "The checksum field above generated by ltxdoc", +%%% } +\NeedsTeXFormat{LaTeX2e}[1995/12/01]% +\ProvidesFile{ltxutil.sty}% + [2001/07/31 1.0rc5b utilities package]% \fileversion +\def\package@name{ltxutil}% +\expandafter\PackageInfo\expandafter{\package@name}{% + Utility macros for \protect\LaTeXe, + by A. Ogawa (ogawa@teleport.com)% +}% +\typeout{% + ltxutil: portions licensed from W. E. Baxter (web@superscript.com)% +}% +\def\class@err#1{\ClassError{\class@name}{#1}\@eha}% +\def\class@warn#1{\ClassWarningNoLine{\class@name}{#1}}% +\def\class@info#1{\ClassInfo{\class@name}{#1}}% +\def\obsolete@command#1{% + \class@warn@end{Command \string#1\space is obsolete.^^JPlease remove from your document}% + \global\let#1\@empty + #1% +}% +\def\replace@command#1#2{% + \class@warn@end{Command \string#1\space is obsolete;^^JUse \string#2\space instead}% + \global\let#1#2% + #1% +}% +\def\replace@environment#1#2{% + \class@warn@end{Environment #1 is obsolete;^^JUse #2 instead}% + \glet@environment{#1}{#2}% + \@nameuse{#1}% +}% +\def\incompatible@package#1{% + \@ifpackageloaded{#1}{% + \def\@tempa{I cannot continue. You must remove the \string\usepackage\ statement that caused that package to be loaded.}% + \ClassError{\class@name}{The #1 package cannot be used with \class@name}% + \@tempa\stop + }{% + \class@info{#1 was not loaded (OK!)}% + }% +}% +\def\class@warn@end#1{% + \gappdef\class@enddocumenthook{\class@warn{#1}}% +}% +\AtEndOfClass{% + \@ifxundefined\class@name{\def\class@name{Generic Class}}{}% +}% +\def\t@{to}% +\dimendef\dimen@iii\thr@@ +\def\halignt@{\halign\t@}% +\chardef\f@ur=4\relax +\chardef\cat@letter=11\relax +\chardef\other=12\relax +\def\let@environment#1#2{% + \expandafter\let + \csname#1\expandafter\endcsname\csname#2\endcsname + \expandafter\let + \csname end#1\expandafter\endcsname\csname end#2\endcsname +}% +\def\glet@environment#1#2{% + \global\expandafter\let + \csname#1\expandafter\endcsname\csname#2\endcsname + \global\expandafter\let + \csname end#1\expandafter\endcsname\csname end#2\endcsname +}% +\newcommand\tracingplain{% + \tracingonline\z@\tracingcommands\z@\tracingstats\z@ + \tracingpages\z@\tracingoutput\z@\tracinglostchars\@ne + \tracingmacros\z@\tracingparagraphs\z@\tracingrestores\z@ + \showboxbreadth5\showboxdepth3\relax %\errorstopmode + }% +\newcommand\traceoutput{% + \appdef\@resetactivechars{\showoutput}% +}% +\newcommand\say[1]{\typeout{<\noexpand#1=\meaning#1>}}% +\newcommand\saythe[1]{\typeout{<\noexpand#1=\the#1>}}% +\def\fullinterlineskip{\prevdepth\z@}% +\countdef\count@i\@ne +\countdef\count@ii\tw@ +\long\def\prepdef#1#2{% + \@ifxundefined#1{\toks@{}}{\toks@\expandafter{#1}}% + \toks@ii{#2}% + \edef#1{\the\toks@ii\the\toks@}% +}% +\long\def\appdef#1#2{% + \@ifxundefined#1{\toks@{}}{\toks@\expandafter{#1}}% + \toks@ii{#2}% + \edef#1{\the\toks@\the\toks@ii}% +}% +\long\def\gappdef#1#2{% + \@ifxundefined#1{\toks@{}}{\toks@\expandafter{#1}}% + \toks@ii{#2}% + \global\edef#1{\the\toks@\the\toks@ii}% +}% +\long\def\appdef@val#1#2{% + \appdef#1{{#2}}% +}% +\long\def\appdef@e#1#2{% + \expandafter\appdef + \expandafter#1% + \expandafter{#2}% +}% +\long\def\appdef@eval#1#2{% + \expandafter\appdef@val + \expandafter#1% + \expandafter{#2}% +}% +\toksdef\toks@ii=\tw@ +\long\def\@ifxundefined#1{\@ifx{\undefined#1}}% +\long\def\@ifnotrelax#1#2#3{\@ifx{\relax#1}{#3}{#2}}% +\long\def\@argswap#1#2{#2#1}% +\long\def\@argswap@val#1#2{#2{#1}}% +\def\@ifxundefined@cs#1{\expandafter\@ifx\expandafter{\csname#1\endcsname\relax}}% +\def\@boolean#1#2{% + \long\def#1{% + #2% \if + \expandafter\true@sw + \else + \expandafter\false@sw + \fi + }% +}% +\def\@boole@def#1#{\@boolean{#1}}% Implicit #2 +\def\@booleantrue#1{\let#1\true@sw}% +\def\@booleanfalse#1{\let#1\false@sw}% +\@boole@def\@ifx#1{\ifx#1}% +\@boole@def\@ifx@empty#1{\ifx\@empty#1}% +\@boole@def\@if@empty#1{\if!#1!}% +\def\@if@sw#1#2{#1\expandafter\true@sw\else\expandafter\false@sw#2}% +\@boole@def\@ifdim#1{\ifdim#1}% +\@boole@def\@ifeof#1{\ifeof#1}% +\@boole@def\@ifhbox#1{\ifhbox#1}% +\@boole@def\@ifhmode{\ifhmode}% +\@boole@def\@ifinner{\ifinner}% +\@boole@def\@ifmmode{\ifmmode}% +\@boole@def\@ifnum#1{\ifnum#1}% +\@boole@def\@ifodd#1{\ifodd#1}% +\@boole@def\@ifvbox#1{\ifvbox#1}% +\@boole@def\@ifvmode{\ifvmode}% +\@boole@def\@ifvoid#1{\ifvoid#1}% +\long\def\true@sw#1#2{#1}% +\long\def\false@sw#1#2{#2}% +\long\def\loopuntil#1{#1{}{\loopuntil{#1}}}% +\long\def\loopwhile#1{#1{\loopwhile{#1}}{}}% +\def\@provide#1{% + \@ifx{\undefined#1}{\true@sw}{\@ifx{\relax#1}{\true@sw}{\false@sw}}% + {\def#1}{\def\j@nk}% +}% +\prepdef\document{% + \endgroup + \init@documenthook + \set@typesize@hook + \normalsize + \set@pica@hook + \true@sw{}% +}% +\def\init@documenthook{}% +\AtBeginDocument{% + \class@documenthook +}% +\AtEndDocument{% + \class@enddocumenthook +}% +\def\class@documenthook{}% +\def\class@enddocumenthook{}% +\def\set@typesize@hook{}% +\def\set@pica@hook{}% +\def\enddocument{% + \@enddocumenthook + \@checkend{document}% + \clear@document + \check@aux + \deadcycles\z@ + \@@end +}% +\def\clear@document{\clearpage}% +\def\check@aux{\do@check@aux}% +\def\do@check@aux{% + \@if@sw\if@filesw\fi{% + \immediate\closeout\@mainaux + \let\@setckpt\@gobbletwo + \let\@newl@bel\@testdef + \@tempswafalse + \makeatletter + \input\jobname.aux\relax + }{}% + \@dofilelist + \@ifdim{\font@submax >\fontsubfuzz\relax}{% + \@font@warning{% + Size substitutions with differences\MessageBreak + up to \font@submax\space have occured.\@gobbletwo + }% + }{}% + \@defaultsubs + \@refundefined + \@if@sw\if@filesw\fi{% + \@ifx{\@multiplelabels\relax}{% + \@if@sw\if@tempswa\fi{% + \@latex@warning@no@line{% + Label(s) may have changed. + Rerun to get cross-references right + }% + }{}% + }{% + \@multiplelabels + }% + }{}% +}% +\def\flushing{% + \let\\\@normalcr + \leftskip\z@skip + \rightskip\z@skip + \@rightskip\z@skip + \parfillskip\@flushglue +}% +\def\eqnarray@LaTeX{% + \stepcounter{equation}% + \def\@currentlabel{\p@equation\theequation}% + \global\@eqnswtrue + \m@th + \global\@eqcnt\z@ + \tabskip\@centering + \let\\\@eqncr + $$\everycr{}\halign\t@\displaywidth\bgroup + \hskip\@centering$\displaystyle\tabskip\z@skip{##}$\@eqnsel + &\global\@eqcnt\@ne\hskip \tw@\arraycolsep \hfil${##}$\hfil + &\global\@eqcnt\tw@ \hskip \tw@\arraycolsep + $\displaystyle{##}$\hfil\tabskip\@centering + &\global\@eqcnt\thr@@ \hb@xt@\z@\bgroup\hss##\egroup + \tabskip\z@skip + \cr +} +\long\def\eqnarray@fleqn@fixed{% + \stepcounter{equation}\def\@currentlabel{\p@equation\theequation}% + \global\@eqnswtrue\m@th\global\@eqcnt\z@ + \tabskip\mathindent + \let\\=\@eqncr + \setlength\abovedisplayskip{\topsep}% + \ifvmode\addtolength\abovedisplayskip{\partopsep}\fi + \addtolength\abovedisplayskip{\parskip}% + \setlength\belowdisplayskip{\abovedisplayskip}% + \setlength\belowdisplayshortskip{\abovedisplayskip}% + \setlength\abovedisplayshortskip{\abovedisplayskip}% + $$% + \everycr{}% + \halignt@\linewidth\bgroup + \hskip\@centering$\displaystyle\tabskip\z@skip{##}$\@eqnsel + &\global\@eqcnt\@ne + \hskip\tw@\eqncolsep + \hfil${{}##{}}$\hfil + &\global\@eqcnt\tw@ + \hskip\tw@\eqncolsep + $\displaystyle{##}$\hfil\tabskip\@centering + &\global\@eqcnt\thr@@\hb@xt@\z@\bgroup\hss##\egroup + \tabskip\z@skip + \cr +}% +\@ifx{\eqnarray\eqnarray@LaTeX}{% + \class@info{Repairing broken LaTeX eqnarray}% + \let\eqnarray\eqnarray@fleqn@fixed + \newlength\eqncolsep + \setlength\eqncolsep\z@ + \let\eqnarray@LaTeX\relax + \let\eqnarray@fleqn@fixed\relax +}{}% +\def\mathindent{\@centering}% +\def\set@eqnarray@skips{}% +\def\footnote{% + \@ifnextchar[\@xfootnote{\@yfootnote\@footnotetext}% +}% +\def\footnotemark{% + \@ifnextchar[\@xfootnotemark{\@yfootnote}% +}% +\def\@xfootnote[#1]{% + \@xfootnotemark[#1]% + \@footnotetext +}% +\def\@xfootnotemark@ltx[#1]{% + \begingroup + \csname c@\@mpfn\endcsname #1\relax + \unrestored@protected@xdef\@thefnmark{\thempfn}% + \endgroup + \H@@footnotemark +}% +\def\@yfootnote{% + \stepcounter\@mpfn + \protected@xdef\@thefnmark{\thempfn}% + \H@@footnotemark +}% +\appdef\class@documenthook{% + \@ifxundefined\H@@footnotemark{% + \let\H@@footnotemark\@footnotemark + }{}% + \let\@xfootnotemark\@xfootnotemark@ltx +}% +\long\def\@footnotetext{% + \insert\footins\bgroup + \make@footnotetext +}% +\long\def\@mpfootnotetext{% + \minipagefootnote@pick + \make@footnotetext +}% +\def\make@footnotetext#1{% + \reset@font\footnotesize + \interlinepenalty\interfootnotelinepenalty + \splittopskip\footnotesep + \splitmaxdepth\dp\strutbox + \set@footnotewidth + \@parboxrestore + \protected@edef\@currentlabel{% + \csname p@footnote\endcsname\@thefnmark + }% + \color@begingroup + \@makefntext{% + \rule\z@\footnotesep\ignorespaces#1\@finalstrut\strutbox + }% + \color@endgroup + \minipagefootnote@drop +}% +\def\set@footnotewidth{% + \hsize\columnwidth + \linewidth\hsize +}% +\def\set@footnotewidth@ii{% + \hsize\textwidth + \advance\hsize\columnsep + \divide\hsize\tw@ + \advance\hsize-\columnsep + \linewidth\hsize +}% +\def\addtocontents#1#2{% + \protected@write\@auxout{% + \let \label \@gobble \let \index \@gobble \let \glossary \@gobble + \def\({\string\(}% + \def\){\string\)}% + \def\\{\string\\}% + }{\string \@writefile {#1}{#2}}% +}% +\def\addcontentsline#1#2#3{% + \addtocontents{#1}{% + \protect\contentsline{#2}{#3}{\thepage}{}% + }% +}% +\def\contentsline#1#2#3#4{% + \csname l@#1\endcsname{#2}{#3}% +}% +\def\label#1{% + \@bsphack + \protected@write\@auxout{}{% + \string\newlabel{#1}{{\@currentlabel}{\thepage}{}{}{}}% + }% + \@esphack +}% +\appdef\class@documenthook{% + \prepdef\caption{\minipagefootnote@here}% +}% +\def\minipagefootnote@init{% + \setbox\@mpfootins\box\voidb@x +}% +\def\minipagefootnote@pick{% + \global\setbox\@mpfootins\vbox\bgroup + \unvbox\@mpfootins +}% +\def\minipagefootnote@drop{% + \egroup +}% +\def\minipagefootnote@here{% + \par + \@ifvoid\@mpfootins{}{% + \vskip\skip\@mpfootins + \fullinterlineskip + \@ifinner{% + \vtop{\unvcopy\@mpfootins}% + {\setbox\z@\lastbox}% + }{}% + \unvbox\@mpfootins + }% +}% +\def\minipagefootnote@foot{% + \@ifvoid\@mpfootins{}{% + \insert\footins\bgroup\unvbox\@mpfootins\egroup + }% +}% +\def\endminipage{% + \par + \unskip + \minipagefootnote@here + \@minipagefalse %% added 24 May 89 + \color@endgroup + \egroup + \expandafter\@iiiparbox\@mpargs{\unvbox\@tempboxa}% +}% +\let\@xfloat@LaTeX\@xfloat +\def\@xfloat#1[#2]{% + \@xfloat@prep + \@nameuse{fp@proc@#2}% + \@ifxundefined\floats@sw{\global\@booleantrue\floats@sw}{}% + \floats@sw{\@xfloat@LaTeX{#1}[#2]}{\@xfloat@anchored{#1}[]}% +}% +\def\@xfloat@prep{% + \let\footnote\footnote@latex + \def\@mpfn{mpfootnote}% + \def\thempfn{\thempfootnote}% + \c@mpfootnote\z@ + \let\@footnotetext\@mpfootnotetext + \let\H@@footnotetext\@mpfootnotetext + \let\@makefntext\@mpmakefntext +}% +\appdef\class@documenthook{% + \let\footnote@latex\footnote +}% +\def\@xfloat@anchored#1[#2]{% + \def\@captype{#1}% + \begin@float@pagebreak + \let\end@float\end@float@anchored + \let\end@dblfloat\end@float@anchored + \hsize\columnwidth + \@parboxrestore + \@floatboxreset + \minipagefootnote@init +}% +\def\end@float@anchored{% + \minipagefootnote@here + \par\vskip\z@skip %% \par\vskip\z@ added 15 Dec 87 + \par + \end@float@pagebreak +}% +\def\begin@float@pagebreak{\par\addvspace\intextsep}% +\def\end@float@pagebreak{\par\addvspace\intextsep}% +\def\@mpmakefntext#1{% + \parindent=1em + \noindent + \hb@xt@1em{\hss\@makefnmark}% + #1% +}% +\def\do@if@floats#1#2{% + \@ifxundefined\floats@sw{\global\@booleantrue\floats@sw}{}% + \floats@sw{}{% + \expandafter\newwrite + \csname#1write\endcsname + \expandafter\def + \csname#1@stream\endcsname{\jobname#2}% + \expandafter\immediate + \expandafter\openout + \csname#1write\endcsname + \csname#1@stream\endcsname\relax + \@ifxundefined\@float@LaTeX{% + \let\@float@LaTeX\@float + \let\@dblfloat@LaTeX\@dblfloat + \let\@float\write@float + \let\@dblfloat\write@floats + }{}% + \let@environment{#1@float}{#1}% + \let@environment{#1@floats}{#1*}% + \@ifxundefined@cs{#1@write}{}{% + \let@environment{#1}{#1@write}% + }% + }% +}% +\def\triggerpar{\leavevmode\@@par}% +\def\oneapage{\def\begin@float@pagebreak{\newpage}\def\end@float@pagebreak{\newpage}}% +\def\print@float#1#2{% + \@ifxundefined@cs{#1write}{}{% + \begingroup + \@booleanfalse\floats@sw + #2% + \raggedbottom + \def\array@default{v}% floats must + \let\@float\@float@LaTeX + \let\@dblfloat\@dblfloat@LaTeX + \let\trigger@float@par\triggerpar + \let@environment{#1}{#1@float}% + \let@environment{#1*}{#1@floats}% + \expandafter\prepdef\csname#1\endcsname{\trigger@float@par}% + \expandafter\prepdef\csname#1*\endcsname{\trigger@float@par}% + \@namedef{fps@#1}{h!}% + \expandafter\immediate + \expandafter\closeout + \csname#1write\endcsname + \everypar{% + \global\let\trigger@float@par\relax + \global\everypar{}\setbox\z@\lastbox + \@ifxundefined@cs{#1sname}{}{% + \begin@float@pagebreak + \expandafter\section + \expandafter*% + \expandafter{% + \csname#1sname\endcsname + }% + }% + }% + \input{\csname#1@stream\endcsname}% + \endgroup + \global\expandafter\let\csname#1write\endcsname\relax + }% +}% +\def\write@float#1{\write@@float{#1}{#1}}% +\def\endwrite@float{\@Esphack}% +\def\write@floats#1{\write@@float{#1*}{#1}}% +\def\endwrite@floats{\@Esphack}% +\def\write@@float#1#2{% + \ifhmode + \@bsphack + \fi + \chardef\@tempc\csname#2write\endcsname + \toks@{\begin{#1}}% + \def\@tempb{#1}% + \expandafter\let\csname end#1\endcsname\endwrite@float + \catcode`\^^M\active + \@makeother\{\@makeother\}\@makeother\% + \write@floatline +}% +\begingroup + \catcode`\[\the\catcode`\{\catcode`\]\the\catcode`\}\@makeother\{\@makeother\}% + \gdef\float@end@tag#1\end{#2}#3\@nul[% + \def\@tempa[#2]% + \@ifx[\@tempa\@tempb][\end[#2]][\write@floatline]% + ]% + \obeylines% + \gdef\write@floatline#1^^M[% + \begingroup% + \newlinechar`\^^M% + \toks@\expandafter[\the\toks@#1]\immediate\write\@tempc[\the\toks@]% + \endgroup% + \toks@[]% + \float@end@tag#1\end{}\@nul% + ]% +\endgroup +\def\@alph#1{\ifcase#1\or a\or b\or c\or d\else\@ialph{#1}\fi} +\def\@ialph#1{\ifcase#1\or \or \or \or \or e\or f\or g\or h\or i\or j\or + k\or l\or m\or n\or o\or p\or q\or r\or s\or t\or u\or v\or w\or x\or + y\or z\or aa\or bb\or cc\or dd\or ee\or ff\or gg\or hh\or ii\or jj\or + kk\or ll\or mm\or nn\or oo\or pp\or qq\or rr\or ss\or tt\or uu\or + vv\or ww\or xx\or yy\or zz\else\@ctrerr\fi} +\def\@startsection#1#2#3#4#5#6{% + \@startsection@hook + \if@noskipsec \leavevmode \fi + \par + \@tempskipa #4\relax + \@afterindenttrue + \ifdim \@tempskipa <\z@ + \@tempskipa -\@tempskipa \@afterindentfalse + \fi + \if@nobreak + \everypar{}% + \else + \addpenalty\@secpenalty\addvspace\@tempskipa + \fi + \@ifstar + {\@dblarg{\@ssect@ltx{#1}{#2}{#3}{#4}{#5}{#6}}}% + {\@dblarg{\@sect@ltx {#1}{#2}{#3}{#4}{#5}{#6}}}% +}% +\def\@startsection@hook{}% +\class@info + {Repairing broken LateX \string\@sect}% +\def\@sect@ltx#1#2#3#4#5#6[#7]#8{% + \@ifnum{#2>\c@secnumdepth}{% + \def\H@svsec{\phantomsection}% + \let\@svsec\@empty + }{% + \H@refstepcounter{#1}% + \def\H@svsec{% + \phantomsection + }% + \protected@edef\@svsec{{#1}}% + \@ifundefined{@#1cntformat}{% + \prepdef\@svsec\@seccntformat + }{% + \expandafter\prepdef + \expandafter\@svsec + \csname @#1cntformat\endcsname + }% + }% + \@tempskipa #5\relax + \@ifdim{\@tempskipa>\z@}{% + \begingroup + \interlinepenalty \@M + #6{% + \@ifundefined{@hangfrom@#1}{\@hang@from}{\csname @hangfrom@#1\endcsname}% + {\hskip#3\relax\H@svsec}{\@svsec}{#8}% + }% + \@@par + \endgroup + \@ifundefined{#1mark}{\@gobble}{\csname #1mark\endcsname}{#7}% + \addcontentsline{toc}{#1}{% + \@ifnum{#2>\c@secnumdepth}{% + \protect\numberline{}% + }{% + \protect\numberline{\csname the#1\endcsname}% + }% + #8}% + }{% + \def\@svsechd{% + #6{% + \@ifundefined{@runin@to@#1}{\@runin@to}{\csname @runin@to@#1\endcsname}% + {\hskip#3\relax\H@svsec}{\@svsec}{#8}% + }% + \@ifundefined{#1mark}{\@gobble}{\csname #1mark\endcsname}{#7}% + \addcontentsline{toc}{#1}{% + \@ifnum{#2>\c@secnumdepth}{% + \protect\numberline{}% + }{% + \protect\numberline{\csname the#1\endcsname}% + }% + #8}% + }% + }% + \@xsect{#5}% +}% +\def\@hang@from#1#2#3{\@hangfrom{#1#2}#3}% +\def\@runin@to #1#2#3{#1#2#3}% +\def\@ssect@ltx#1#2#3#4#5#6[#7]#8{% + \def\H@svsec{\phantomsection}% + \@tempskipa #5\relax + \@ifdim{\@tempskipa>\z@}{% + \begingroup + \interlinepenalty \@M + #6{% + \@ifundefined{@hangfroms@#1}{\@hang@froms}{\csname @hangfroms@#1\endcsname}% + {\hskip#3\relax\H@svsec}{#8}% + }% + \@@par + \endgroup + \@ifundefined{#1smark}{\@gobble}{\csname #1smark\endcsname}{#7}% + \addcontentsline{toc}{#1}{\protect\numberline{}#8}% + }{% + \def\@svsechd{% + #6{% + \@ifundefined{@runin@tos@#1}{\@runin@tos}{\csname @runin@tos@#1\endcsname}% + {\hskip#3\relax\H@svsec}{#8}% + }% + \@ifundefined{#1smark}{\@gobble}{\csname #1smark\endcsname}{#7}% + \addcontentsline{toc}{#1}{\protect\numberline{}#8}% + }% + }% + \@xsect{#5}% +}% +\def\@hang@froms#1#2{#1#2}% +\def\@runin@tos #1#2{#1#2}% +\appdef\init@documenthook{% + \providecommand\phantomsection{}% + \providecommand\hyper@anchor[1]{}% + \providecommand\hyper@last{}% + \providecommand\Hy@raisedlink[1]{#1}% + \providecommand\hyper@anchorstart[1]{}% + \providecommand\hyper@anchorend{}% + \providecommand\hyper@linkstart[2]{}% + \providecommand\hyper@linkend{}% +}% +\let\H@refstepcounter\refstepcounter +\def\sec@upcase#1{\relax{#1}}% +\appdef\class@documenthook{% + \@ifpackageloaded{array}{\switch@array}{\switch@tabular}% + \prepdef\endtabular{\endtabular@hook}% + \@provide\endtabular@hook{}% + \prepdef\endarray{\endarray@hook}% + \@provide\endarray@hook{}% + \providecommand\array@hook{}% + \prepdef\@tabular{\tabular@hook}% + \@provide\tabular@hook{}% +}% +\def\switch@tabular{% + \let\@array@sw\@array@sw@array + \@ifx{\@array\@array@LaTeX}{% + \@ifx{\multicolumn\multicolumn@LaTeX}{% + \@ifx{\@tabular\@tabular@LaTeX}{% + \@ifx{\@tabarray\@tabarray@LaTeX}{% + \@ifx{\array\array@LaTeX}{% + \@ifx{\endarray\endarray@LaTeX}{% + \@ifx{\endtabular\endtabular@LaTeX}{% + \@ifx{\@mkpream\@mkpream@LaTeX}{% + \@ifx{\@addamp\@addamp@LaTeX}{% + \@ifx{\@arrayacol\@arrayacol@LaTeX}{% + \@ifx{\@tabacol\@tabacol@LaTeX}{% + \@ifx{\@arrayclassz\@arrayclassz@LaTeX}{% + \@ifx{\@tabclassiv\@tabclassiv@LaTeX}{% + \@ifx{\@arrayclassiv\@arrayclassiv@LaTeX}{% + \@ifx{\@tabclassz\@tabclassz@LaTeX}{% + \@ifx{\@classv\@classv@LaTeX}{% + \@ifx{\hline\hline@LaTeX}{% + \@ifx{\@tabularcr\@tabularcr@LaTeX}{% + \@ifx{\@xtabularcr\@xtabularcr@LaTeX}{% + \@ifx{\@xargarraycr\@xargarraycr@LaTeX}{% + \@ifx{\@yargarraycr\@yargarraycr@LaTeX}{% + \true@sw + }{% + \false@sw + }% + }{% + \false@sw + }% + }{% + \false@sw + }% + }{% + \false@sw + }% + }{% + \false@sw + }% + }{% + \false@sw + }% + }{% + \false@sw + }% + }{% + \false@sw + }% + }{% + \false@sw + }% + }{% + \false@sw + }% + }{% + \false@sw + }% + }{% + \false@sw + }% + }{% + \false@sw + }% + }{% + \false@sw + }% + }{% + \false@sw + }% + }{% + \false@sw + }% + }{% + \false@sw + }% + }{% + \false@sw + }% + }{% + \false@sw + }% + }{% + \false@sw + }% + }{% + \false@sw + }% + {% + \class@info{Patching LaTeX tabular.}% + }{% + \class@info{Unrecognized LaTeX tabular. Please update this document class! (Proceeding with fingers crossed.)}% + }% + \let\@array\@array@ltx + \let\multicolumn\multicolumn@ltx + \let\@tabular\@tabular@ltx + \let\@tabarray\@tabarray@ltx + \let\array\array@ltx + \let\endarray\endarray@ltx + \let\endtabular\endtabular@ltx + \let\@mkpream\@mkpream@ltx + \let\@addamp\@addamp@ltx + \let\@arrayacol\@arrayacol@ltx + \let\@tabacol\@tabacol@ltx + \let\@arrayclassz\@arrayclassz@ltx + \let\@tabclassiv\@tabclassiv@ltx + \let\@arrayclassiv\@arrayclassiv@ltx + \let\@tabclassz\@tabclassz@ltx + \let\@classv\@classv@ltx + \let\hline\hline@ltx + \let\@tabularcr\@tabularcr@ltx + \let\@xtabularcr\@xtabularcr@ltx + \let\@xargarraycr\@xargarraycr@ltx + \let\@yargarraycr\@yargarraycr@ltx +}% +\def\switch@array{% + \let\@array@sw\@array@sw@LaTeX + \@ifx{\@array\@array@array}{% + \@ifx{\@tabular\@tabular@array}{% + \@ifx{\@tabarray\@tabarray@array}{% + \@ifx{\array\array@array}{% + \@ifx{\endarray\endarray@array}{% + \@ifx{\endtabular\endtabular@array}{% + \@ifx{\@mkpream\@mkpream@array}{% + \@ifx{\@classx\@classx@array}{% + \@ifx{\insert@column\insert@column@array}{% + \@ifx{\@arraycr\@arraycr@array}{% + \@ifx{\@xarraycr\@xarraycr@array}{% + \@ifx{\@xargarraycr\@xargarraycr@array}{% + \@ifx{\@yargarraycr\@yargarraycr@array}{% + \true@sw + }{% + \false@sw + }% + }{% + \false@sw + }% + }{% + \false@sw + }% + }{% + \false@sw + }% + }{% + \false@sw + }% + }{% + \false@sw + }% + }{% + \false@sw + }% + }{% + \false@sw + }% + }{% + \false@sw + }% + }{% + \false@sw + }% + }{% + \false@sw + }% + }{% + \false@sw + }% + }{% + \false@sw + }{% + \class@info{Patching array package.}% + }{% + \class@info{Unrecognized array package. Please update this document class! (Proceeding with fingers crossed.)}% + }% + \let\@array \@array@array@new + \let\@@array \@array % Cosi fan tutti + \let\@tabular \@tabular@array@new + \let\@tabarray \@tabarray@array@new + \let\array \array@array@new + \let\endarray \endarray@array@new + \let\endtabular\endtabular@array@new + \let\@mkpream \@mkpream@array@new + \let\@classx \@classx@array@new + \let\@arrayacol\@arrayacol@ltx + \let\@tabacol \@tabacol@ltx + \let\insert@column\insert@column@array@new + \expandafter\let\csname endtabular*\endcsname\endtabular % Cosi fan tutti + \let\@arraycr \@arraycr@new + \let\@xarraycr \@xarraycr@new + \let\@xargarraycr\@xargarraycr@new + \let\@yargarraycr\@yargarraycr@new +}% +\def\@array@sw@LaTeX{\@ifx{\\\@tabularcr}}% +\def\@array@sw@array{\@ifx{\d@llarbegin\begingroup}}% +\def\@tabular@LaTeX{% + \leavevmode + \hbox\bgroup$% + \let\@acol\@tabacol + \let\@classz\@tabclassz + \let\@classiv\@tabclassiv + \let\\\@tabularcr + \@tabarray +}% +\def\@tabular@ltx{% + \let\@acoll\@tabacoll + \let\@acolr\@tabacolr + \let\@acol\@tabacol + \let\@classz\@tabclassz + \let\@classiv\@tabclassiv + \let\\\@tabularcr + \@tabarray +}% +\def\@tabular@array{% + \leavevmode + \hbox\bgroup$% + \col@sep\tabcolsep + \let\d@llarbegin\begingroup + \let\d@llarend\endgroup + \@tabarray +}% +\def\@tabular@array@new{% + \let\@acoll\@tabacoll + \let\@acolr\@tabacolr + \let\@acol\@tabacol + \let\col@sep\@undefined + \let\d@llarbegin\begingroup + \let\d@llarend\endgroup + \@tabarray +}% +\def\@tabarray@LaTeX{% + \m@th\@ifnextchar[\@array{\@array[c]}% +}% +\def\@tabarray@ltx{% + \m@th\@ifnextchar[\@array{\expandafter\@array\expandafter[\array@default]}% +}% +\def\@tabarray@array{% + \@ifnextchar[{\@@array}{\@@array[c]}% +}% +\def\@tabarray@array@new{% + \@ifnextchar[{\@@array}{\expandafter\@@array\expandafter[\array@default]}% +}% +\newcount\intertabularlinepenalty +\intertabularlinepenalty=100 +\newcount\@tbpen +\appdef\samepage{\intertabularlinepenalty\@M}% +\def\@tabularcr@LaTeX{{\ifnum 0=`}\fi \@ifstar \@xtabularcr \@xtabularcr}% +\def\@tabularcr@ltx{{\ifnum 0=`}\fi \@ifstar {\global \@tbpen \@M \@xtabularcr }{\global \@tbpen \intertabularlinepenalty \@xtabularcr }}% +\def\@xtabularcr@LaTeX{\@ifnextchar [\@argtabularcr {\ifnum 0=`{\fi }\cr }}% +\def\@xtabularcr@ltx{\@ifnextchar [\@argtabularcr {\ifnum 0=`{\fi }\cr \noalign {\penalty \@tbpen }}}% +\def\@xargarraycr@LaTeX#1{\@tempdima #1\advance \@tempdima \dp \@arstrutbox \vrule \@height \z@ \@depth \@tempdima \@width \z@ \cr}% +\def\@xargarraycr@ltx#1{\@tempdima #1\advance \@tempdima \dp \@arstrutbox \vrule \@height \z@ \@depth \@tempdima \@width \z@ \cr \noalign {\penalty \@tbpen }}% +\def\@yargarraycr@LaTeX#1{\cr \noalign {\vskip #1}}% +\def\@yargarraycr@ltx#1{\cr \noalign {\penalty \@tbpen \vskip #1}}% +\def\@arraycr@array{% + \relax + \iffalse{\fi\ifnum 0=`}\fi + \@ifstar \@xarraycr \@xarraycr +}% +\def\@arraycr@new{% + \relax + \iffalse{\fi\ifnum 0=`}\fi + \@ifstar {\global \@tbpen \@M \@xarraycr }{\global \@tbpen \intertabularlinepenalty \@xarraycr }% +}% +\def\@xarraycr@array{% + \@ifnextchar [%] + \@argarraycr {\ifnum 0=`{}\fi\cr}% +}% +\def\@xarraycr@new{% + \@ifnextchar [%] + \@argarraycr {\ifnum 0=`{}\fi\cr \noalign {\penalty \@tbpen }}% +}% +\def\@xargarraycr@array#1{% + \unskip + \@tempdima #1\advance\@tempdima \dp\@arstrutbox + \vrule \@depth\@tempdima \@width\z@ + \cr +}% +\def\@xargarraycr@new#1{% + \unskip + \@tempdima #1\advance\@tempdima \dp\@arstrutbox + \vrule \@depth\@tempdima \@width\z@ + \cr + \noalign {\penalty \@tbpen }% +}% +\def\@yargarraycr@array#1{% + \cr + \noalign{\vskip #1}% +}% +\def\@yargarraycr@new#1{% + \cr + \noalign{\penalty \@tbpen \vskip #1}% +}% +\def\array@LaTeX{% + \let\@acol\@arrayacol + \let\@classz\@arrayclassz + \let\@classiv\@arrayclassiv + \let\\\@arraycr + \let\@halignto\@empty + \@tabarray +}% +\def\array@ltx{% + \@ifmmode{}{\@badmath$}% + \let\@acoll\@arrayacol + \let\@acolr\@arrayacol + \let\@acol\@arrayacol + \let\@classz\@arrayclassz + \let\@classiv\@arrayclassiv + \let\\\@arraycr + \let\@halignto\@empty + \@tabarray +}% +\def\array@array{% + \col@sep\arraycolsep + \def\d@llarbegin{$}\let\d@llarend\d@llarbegin\gdef\@halignto{}% + \@tabarray +} +\def\array@array@new{% + \@ifmmode{}{\@badmath$}% + \let\@acoll\@arrayacol + \let\@acolr\@arrayacol + \let\@acol\@arrayacol +\let\col@sep\@undefined + \def\d@llarbegin{$}% + \let\d@llarend\d@llarbegin + \gdef\@halignto{}% + \@tabarray +}% +\def\@array@LaTeX[#1]#2{% + \if #1t\vtop \else \if#1b\vbox \else \vcenter \fi\fi + \bgroup + \setbox\@arstrutbox\hbox{% + \vrule \@height\arraystretch\ht\strutbox + \@depth\arraystretch \dp\strutbox + \@width\z@}% + \@mkpream{#2}% + \edef\@preamble{% + \ialign \noexpand\@halignto + \bgroup \@arstrut \@preamble \tabskip\z@skip \cr}% + \let\@startpbox\@@startpbox \let\@endpbox\@@endpbox + \let\tabularnewline\\% + \let\par\@empty + \let\@sharp##% + \set@typeset@protect + \lineskip\z@skip\baselineskip\z@skip + \ifhmode \@preamerr\z@ \@@par\fi + \@preamble +}% +\def\@array@ltx[#1]#2{% + \@nameuse{@array@align@#1}% + \set@arstrutbox + \@mkpream{#2}% + \prepdef\@preamble{% + \tabskip\tabmid@skip + \@arstrut + }% + \appdef\@preamble{% + \tabskip\tabright@skip + \cr + \array@row@pre + }% + \let\tabularnewline\\% + \let\par\@empty + \let\@sharp##% + \set@typeset@protect + \lineskip\z@skip\baselineskip\z@skip + \tabskip\tableft@skip\relax + \ifhmode \@preamerr\z@ \@@par\fi + \everycr{}% + \expandafter\halign\expandafter\@halignto\expandafter\bgroup\@preamble +}% +\def\set@arstrutbox{% + \setbox\@arstrutbox\hbox{% + \vrule \@height\arraystretch\ht\strutbox + \@depth\arraystretch \dp\strutbox + \@width\z@ + }% +}% +\def\@array@array[#1]#2{% + \@tempdima \ht \strutbox + \advance \@tempdima by\extrarowheight + \setbox \@arstrutbox \hbox{\vrule + \@height \arraystretch \@tempdima + \@depth \arraystretch \dp \strutbox + \@width \z@}% + \begingroup + \@mkpream{#2}% + \xdef\@preamble{\noexpand \ialign \@halignto + \bgroup \@arstrut \@preamble + \tabskip \z@ \cr}% + \endgroup + \@arrayleft + \if #1t\vtop \else \if#1b\vbox \else \vcenter \fi \fi + \bgroup + \let \@sharp ##\let \protect \relax + \lineskip \z@ + \baselineskip \z@ + \m@th + \let\\\@arraycr \let\tabularnewline\\\let\par\@empty \@preamble +}% +\def\@array@array@new[#1]#2{% + \@tempdima\ht\strutbox + \advance\@tempdima by\extrarowheight + \setbox\@arstrutbox\hbox{% + \vrule \@height\arraystretch\@tempdima + \@depth \arraystretch\dp\strutbox + \@width \z@ + }% + \begingroup + \@mkpream{#2}% + \xdef\@preamble{\@preamble}% + \endgroup + \prepdef\@preamble{% + \tabskip\tabmid@skip + \@arstrut + }% + \appdef\@preamble{% + \tabskip\tabright@skip + \cr + \array@row@pre + }% + \@arrayleft + \@nameuse{@array@align@#1}% + \m@th + \let\\\@arraycr + \let\tabularnewline\\% + \let\par\@empty + \let\@sharp##% + \set@typeset@protect + \lineskip\z@\baselineskip\z@ + \tabskip\tableft@skip + \everycr{}% + \expandafter\halign\expandafter\@halignto\expandafter\bgroup\@preamble +}% +\def\endarray@LaTeX{% + \crcr\egroup\egroup +}% +\def\endarray@ltx{% + \crcr\array@row@pst\egroup\egroup +}% +\def\endarray@array{% + \crcr \egroup \egroup \@arrayright \gdef\@preamble{}% +}% +\def\endarray@array@new{% + \crcr\array@row@pst\egroup\egroup % Same as \endarray@ltx + \@arrayright + \global\let\@preamble\@empty +}% +\def\endtabular@LaTeX{% + \crcr\egroup\egroup $\egroup +}% +\def\endtabular@ltx{% + \endarray +}% +\def\endtabular@array{% + \endarray $\egroup +}% +\def\endtabular@array@new{% + \endarray +}% +\@namedef{endtabular*}{\endtabular}% +\long\def\multicolumn@LaTeX#1#2#3{% + \multispan{#1}\begingroup + \@mkpream{#2}% + \def\@sharp{#3}\set@typeset@protect + \let\@startpbox\@@startpbox\let\@endpbox\@@endpbox + \@arstrut \@preamble\hbox{}\endgroup\ignorespaces +}% +\long\def\multicolumn@ltx#1#2#3{% + \multispan{#1}% + \begingroup + \@mkpream{#2}% + \def\@sharp{#3}% + \set@typeset@protect + %\let\@startpbox\@@startpbox\let\@endpbox\@@endpbox + \@arstrut + \@preamble + \hbox{}% + \endgroup + \ignorespaces +}% +\def\@array@align@t{\leavevmode\vtop\bgroup}% +\def\@array@align@b{\leavevmode\vbox\bgroup}% +\def\@array@align@c{\leavevmode\@ifmmode{\vcenter\bgroup}{$\vcenter\bgroup\aftergroup$\aftergroup\relax}}% +\def\@array@align@v{% + \@ifmmode{% + \@badmath + \vcenter\bgroup + }{% + \@ifinner{% + $\vcenter\bgroup\aftergroup$ + }{% + \@@par\bgroup + }% + }% +}% +\def\array@default{c}% +\def\array@row@rst{% + \let\@array@align@v\@array@align@c +}% +\def\array@row@pre{}% +\def\array@row@pst{}% +\newcommand\toprule{\tab@rule{\column@font}{\column@fil}{\frstrut}}% +\newcommand\colrule{\unskip\lrstrut\\\tab@rule{\body@font}{}{\frstrut}}% +\newcommand\botrule{\unskip\lrstrut\\\noalign{\hline@rule}{}}% +\def\hline@LaTeX{% + \noalign{\ifnum0=`}\fi\hrule \@height \arrayrulewidth \futurelet + \reserved@a\@xhline +}% +\def\hline@ltx{% + \noalign{% + \ifnum0=`}\fi + \hline@rule + \futurelet\reserved@a\@xhline + % \noalign ended in \@xhline +}% +\def\@xhline@unneeded{% + \say\reserved@a + \ifx\reserved@a\hline + \vskip\doublerulesep + \vskip-\arrayrulewidth + \fi + \ifnum0=`{\fi}% +}% +\def\tab@rule#1#2#3{% + \crcr + \noalign{% + \hline@rule + \gdef\@arstrut@hook{% + \global\let\@arstrut@hook\@empty + #3% + }% + \gdef\cell@font{#1}% + \gdef\cell@fil{#2}% + }% +}% +\def\column@font{}% +\def\column@fil{}% +\def\body@font{}% +\def\cell@font{}% +\def\frstrut{}% +\def\lrstrut{}% +\def\@arstrut@hline{% + \relax + \@ifmmode{\copy}{\unhcopy}\@arstrutbox@hline + \@arstrut@hook +}% +\let\@arstrut@org\@arstrut +\def\@arstrut@hook{% + \global\let\@arstrut\@arstrut@org +}% +\newbox\@arstrutbox@hline +\appdef\set@arstrutbox{% + \setbox\@arstrutbox@hline\hbox{% + \setbox\z@\hbox{$0^{0}_{}$}% + \dimen@\ht\z@\advance\dimen@\@arstrut@hline@clnc + \@ifdim{\dimen@<\arraystretch\ht\strutbox}{\dimen@=\arraystretch\ht\strutbox}{}% + \vrule \@height\dimen@ + \@depth\arraystretch \dp\strutbox + \@width\z@ + }% +}% +\def\hline@rule{% + \hrule \@height \arrayrulewidth + \global\let\@arstrut\@arstrut@hline +}% +\def\@arstrut@hline@clnc{2\p@}% % Klootch: magic number +\def\tableft@skip{\z@skip}% +\def\tabmid@skip{\z@skip}%\@flushglue +\def\tabright@skip{\z@skip}% +\def\tableftsep{\tabcolsep}% +\def\tabmidsep{\tabcolsep}% +\def\tabrightsep{\tabcolsep}% +\def\cell@fil{}% +\def\pbox@hook{}% +\appdef\@arstrut{\@arstrut@hook}% +\let\@arstrut@hook\@empty +\def\@addtopreamble{\appdef\@preamble}% +\def\@mkpream@LaTeX#1{% + \@firstamptrue\@lastchclass6 + \let\@preamble\@empty + \let\protect\@unexpandable@protect + \let\@sharp\relax + \let\@startpbox\relax\let\@endpbox\relax + \@expast{#1}% + \expandafter\@tfor \expandafter + \@nextchar \expandafter:\expandafter=\reserved@a\do + {\@testpach\@nextchar + \ifcase \@chclass \@classz \or \@classi \or \@classii \or \@classiii + \or \@classiv \or\@classv \fi\@lastchclass\@chclass}% + \ifcase \@lastchclass \@acol + \or \or \@preamerr \@ne\or \@preamerr \tw@\or \or \@acol \fi +}% +\def\@mkpream@ltx#1{% + \@firstamptrue + \@lastchclass6 + \let\@preamble\@empty + \let\protect\@unexpandable@protect + \let\@sharp\relax + \@expast{#1}% + \expandafter\@tfor\expandafter\@nextchar\expandafter:\expandafter=\reserved@a + \do{% + \expandafter\@testpach\expandafter{\@nextchar}% + \ifcase\@chclass + \@classz + \or + \@classi + \or + \@classii + \or + \@classiii + \or + \@classiv + \or + \@classv + \fi + \@lastchclass\@chclass + }% + \ifcase\@lastchclass + \@acolr % right-hand column + \or + \or + \@preamerr\@ne + \or + \@preamerr\tw@ + \or + \or + \@acolr % right-hand column + \fi +}% +\def\insert@column@array{% + \the@toks \the \@tempcnta + \ignorespaces \@sharp \unskip + \the@toks \the \count@ \relax +}% +\def\insert@column@array@new{% + \the@toks\the\@tempcnta + \array@row@rst\cell@font + \ignorespaces\@sharp\unskip + \the@toks\the\count@ + \relax +}% +\def\@mkpream@relax{% + \let\tableftsep\relax + \let\tabmidsep\relax + \let\tabrightsep\relax + \let\array@row@rst\relax + \let\cell@font\relax + \let\@startpbox\relax +}% +\def\@mkpream@array#1{% + \gdef\@preamble{}\@lastchclass 4 \@firstamptrue + \let\@sharp\relax \let\@startpbox\relax \let\@endpbox\relax + \@temptokena{#1}\@tempswatrue + \@whilesw\if@tempswa\fi{\@tempswafalse\the\NC@list}% + \count@\m@ne + \let\the@toks\relax + \prepnext@tok + \expandafter \@tfor \expandafter \@nextchar + \expandafter :\expandafter =\the\@temptokena \do + {\@testpach + \ifcase \@chclass \@classz \or \@classi \or \@classii + \or \save@decl \or \or \@classv \or \@classvi + \or \@classvii \or \@classviii + \or \@classx + \or \@classx \fi + \@lastchclass\@chclass}% + \ifcase\@lastchclass + \@acol \or + \or + \@acol \or + \@preamerr \thr@@ \or + \@preamerr \tw@ \@addtopreamble\@sharp \or + \or + \else \@preamerr \@ne \fi + \def\the@toks{\the\toks}% +}% +\def\@mkpream@array@new#1{% + \gdef\@preamble{}% + \@lastchclass\f@ur + \@firstamptrue + \let\@sharp\relax + \@mkpream@relax + \@temptokena{#1}\@tempswatrue + \@whilesw\if@tempswa\fi{\@tempswafalse\the\NC@list}% + \count@\m@ne + \let\the@toks\relax + \prepnext@tok + \expandafter\@tfor\expandafter\@nextchar\expandafter:\expandafter=\the\@temptokena + \do{% + \@testpach + \ifcase\@chclass + \@classz + \or + \@classi + \or + \@classii + \or + \save@decl + \or + \or + \@classv + \or + \@classvi + \or + \@classvii + \or + \@classviii + \or + \@classx + \or + \@classx + \fi + \@lastchclass\@chclass + }% + \ifcase\@lastchclass + \@acolr % right-hand column + \or + \or + \@acolr % right-hand column + \or + \@preamerr\thr@@ + \or + \@preamerr\tw@\@addtopreamble\@sharp + \or + \or + \else + \@preamerr\@ne + \fi + \def\the@toks{\the\toks}% +}% +\def\@addamp@LaTeX{% + \if@firstamp\@firstampfalse\else\edef\@preamble{\@preamble &}\fi +}% +\def\@addamp@ltx{% + \if@firstamp\@firstampfalse\else\@addtopreamble{&}\fi +}% +\def\@arrayacol@LaTeX{% + \edef\@preamble{\@preamble \hskip \arraycolsep}% +}% +\def\@arrayacol@ltx{% + \@addtopreamble{\hskip\arraycolsep}% +}% +\def\@tabacoll{% + \@addtopreamble{\hskip\tableftsep\relax}% +}% +\def\@tabacol@LaTeX{% + \edef\@preamble{\@preamble \hskip \tabcolsep}% +}% +\def\@tabacol@ltx{% + \@addtopreamble{\hskip\tabmidsep\relax}% +}% +\def\@tabacolr{% + \@addtopreamble{\hskip\tabrightsep\relax}% +}% +\def\@arrayclassz@LaTeX{% + \ifcase \@lastchclass \@acolampacol \or \@ampacol \or + \or \or \@addamp \or + \@acolampacol \or \@firstampfalse \@acol \fi + \edef\@preamble{\@preamble + \ifcase \@chnum + \hfil$\relax\@sharp$\hfil \or $\relax\@sharp$\hfil + \or \hfil$\relax\@sharp$\fi}% +}% +\def\@arrayclassz@ltx{% + \ifcase\@lastchclass + \@acolampacol + \or + \@ampacol + \or + \or + \or + \@addamp + \or + \@acolampacol + \or + \@firstampfalse\@acoll + \fi + \ifcase\@chnum + \@addtopreamble{% + \hfil\array@row@rst$\relax\@sharp$\hfil + }% + \or + \@addtopreamble{% + \array@row@rst$\relax\@sharp$\hfil + }% + \or + \@addtopreamble{% + \hfil\array@row@rst$\relax\@sharp$% + }% + \fi +}% +\def\@tabclassz@LaTeX{% + \ifcase\@lastchclass + \@acolampacol + \or + \@ampacol + \or + \or + \or + \@addamp + \or + \@acolampacol + \or + \@firstampfalse\@acol + \fi + \edef\@preamble{% + \@preamble{% + \ifcase\@chnum + \hfil\ignorespaces\@sharp\unskip\hfil + \or + \hskip1sp\ignorespaces\@sharp\unskip\hfil + \or + \hfil\hskip1sp\ignorespaces\@sharp\unskip + \fi}}% +}% +\def\@tabclassz@ltx{% + \ifcase\@lastchclass + \@acolampacol + \or + \@ampacol + \or + \or + \or + \@addamp + \or + \@acolampacol + \or + \@firstampfalse\@acoll + \fi + \ifcase\@chnum + \@addtopreamble{% + {\hfil\array@row@rst\cell@font\ignorespaces\@sharp\unskip\hfil}% + }% + \or + \@addtopreamble{% + {\cell@fil\hskip1sp\array@row@rst\cell@font\ignorespaces\@sharp\unskip\hfil}% + }% + \or + \@addtopreamble{% + {\hfil\hskip1sp\array@row@rst\cell@font\ignorespaces\@sharp\unskip\cell@fil}% + }% + \fi +}% +\def\@tabclassiv@LaTeX{% + \@addtopreamble\@nextchar +}% +\def\@tabclassiv@ltx{% + \expandafter\@addtopreamble\expandafter{\@nextchar}% +}% +\def\@arrayclassiv@LaTeX{% + \@addtopreamble{$\@nextchar$}% +}% +\def\@arrayclassiv@ltx{% + \expandafter\@addtopreamble\expandafter{\expandafter$\@nextchar$}% +}% +\def\@classv@LaTeX{% + \@addtopreamble{\@startpbox{\@nextchar}\ignorespaces + \@sharp\@endpbox}% +}% +\def\@classv@ltx{% + \expandafter\@addtopreamble + \expandafter{% + \expandafter \@startpbox + \expandafter {\@nextchar}% + \pbox@hook\array@row@rst\cell@font\ignorespaces\@sharp\@endpbox + }% +}% +\def\@classx@array{% + \ifcase \@lastchclass + \@acolampacol \or + \@addamp \@acol \or + \@acolampacol \or + \or + \@acol \@firstampfalse \or + \@addamp + \fi +}% +\def\@classx@array@new{% + \ifcase \@lastchclass + \@acolampacol + \or + \@addamp \@acol + \or + \@acolampacol + \or + \or + \@firstampfalse\@acoll + \or + \@addamp + \fi +}% +\def\@xbitor@LaTeX #1{\@tempcntb \count#1 + \ifnum \@tempcnta =\z@ + \else + \divide\@tempcntb\@tempcnta + \ifodd\@tempcntb \@testtrue\fi + \fi}% +\def\@xbitor@ltx#1{% + \@tempcntb\count#1% + \@ifnum{\@tempcnta=\z@}{}{% + \divide\@tempcntb\@tempcnta + \@ifodd\@tempcntb{\@testtrue}{}% + }% +}% +\@ifx{\@xbitor\@xbitor@LaTeX}{% + \class@info{Repairing broken LaTeX \string\@xbitor}% +}{% + \class@info{Unrecognized LaTeX \string\@xbitor. Please update this document class! (Proceeding with fingers crossed.)}% +}% +\let\@xbitor\@xbitor@ltx +\newcommand*\@gobble@opt@one[2][]{}% +\def\@starttoc#1{% + \begingroup + \toc@pre + \makeatletter + \@input{\jobname.#1}% + \if@filesw + \expandafter\newwrite\csname tf@#1\endcsname + \immediate\openout \csname tf@#1\endcsname \jobname.#1\relax + \fi + \@nobreakfalse + \toc@post + \endgroup +}% +\def\toc@pre{}% +\def\toc@post{}% +\def\toc@@font{}%{\footnotesize\rmfamily}% +\def\@dotsep{\z@}%{5.5pt}% +\let\tocdim@section \leftmargini +\let\tocdim@subsection \leftmarginii +\let\tocdim@subsubsection \leftmarginiii +\let\tocdim@paragraph \leftmarginiv +\let\tocdim@appendix \leftmarginv +\let\tocdim@pagenum \leftmarginvi +\def\toc@pre@auto{% + \toc@@font + \@tempdima\z@ + \toc@setindent\@tempdima{section}% + \toc@setindent\@tempdima{subsection}% + \toc@setindent\@tempdima{subsubsection}% + \toc@setindent\@tempdima{paragraph}% + \toc@letdimen{appendix}% + \toc@letdimen{pagenum}% +}% +\def\toc@post@auto{% + \if@filesw + \begingroup + \toc@writedimen{section}% + \toc@writedimen{subsection}% + \toc@writedimen{subsubsection}% + \toc@writedimen{paragraph}% + \toc@writedimen{appendix}% + \toc@writedimen{pagenum}% + \endgroup + \fi +}% +\def\toc@setindent#1#2{% + \csname tocdim@#2\endcsname\tocdim@min\relax + \@ifundefined{tocmax@#2}{\@namedef{tocmax@#2}{\z@}}{}% + \advance#1\@nameuse{tocmax@#2}\relax + \expandafter\edef\csname tocleft@#2\endcsname{\the#1}% +}% +\def\toc@letdimen#1{% + \csname tocdim@#1\endcsname\tocdim@min\relax + \@ifundefined{tocmax@#1}{\@namedef{tocmax@#1}{\z@}}{}% + \expandafter\let\csname tocleft@#1\expandafter\endcsname\csname tocmax@#1\endcsname +}% +\def\toc@writedimen#1{% + \immediate\write\@auxout{% + \gdef\expandafter\string\csname tocmax@#1\endcsname{% + \expandafter\the\csname tocdim@#1\endcsname + }% + }% +}% +\def\l@@sections#1#2#3#4{% + % #1 - superior section + % #2 - this section + % #3 - content, including possible \numberline + % #4 - page number + \begingroup + \everypar{}% + \set@tocdim@pagenum{#4}% + \global\@tempdima\csname tocdim@#2\endcsname + \leftskip\csname tocleft@#2\endcsname\relax + \dimen@\csname tocleft@#1\endcsname\relax + \parindent-\leftskip\advance\parindent\dimen@ + \rightskip\tocleft@pagenum plus 1fil\relax + \skip@\parfillskip\parfillskip\z@ + \let\numberline\numberline@@sections + \@nameuse{l@f@#2}% + \ignorespaces#3\unskip\nobreak\hskip\skip@ + \hb@xt@\rightskip{\hfil\unhbox\@tempboxa}\hskip-\rightskip\hskip\z@skip + \par + \expandafter\aftergroup\csname tocdim@#2\endcsname\expandafter + \endgroup\the\@tempdima\relax +}% +\def\set@tocdim@pagenum#1{% + \setbox\@tempboxa\hbox{\ignorespaces#1}% + \@ifdim{\tocdim@pagenum<\wd\z@}{\global\tocdim@pagenum\wd\z@}{}% +}% +\def\numberline@@sections#1{% + \leavevmode\hb@xt@-\parindent{% + \hfil + \@if@empty{#1}{}{% + \setbox\z@\hbox{#1.\kern\@dotsep}% + \@ifdim{\@tempdima<\wd\z@}{\global\@tempdima\wd\z@}{}% + \unhbox\z@ + }% + }% + \ignorespaces +}% +\def\tocdim@min{\z@}% +\def\list#1#2{% + \ifnum \@listdepth >5\relax + \@toodeep + \else + \global\advance\@listdepth\@ne + \fi + \rightmargin\z@ + \listparindent\z@ + \itemindent\z@ + \csname @list\romannumeral\the\@listdepth\endcsname + \def\@itemlabel{#1}% + \let\makelabel\@mklab + \@nmbrlistfalse + #2\relax + \@trivlist + \parskip\parsep + \set@listindent + \ignorespaces +}% +\def\set@listindent@parshape{% + \parindent\listparindent + \advance\@totalleftmargin\leftmargin + \advance\linewidth-\rightmargin + \advance\linewidth-\leftmargin + \parshape\@ne\@totalleftmargin\linewidth +}% +\def\set@listindent@{% + \parindent\listparindent + \advance\@totalleftmargin\leftmargin + \advance\rightskip\rightmargin + \advance\leftskip\@totalleftmargin +}% +\let\set@listindent\set@listindent@parshape +\endinput +%% +%% End of file `ltxutil.sty'. diff -r 0a0bddff6847 -r 30b754364bbb project/static/proceedings/sources/mk_booklet.tex --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/project/static/proceedings/sources/mk_booklet.tex Tue May 11 03:51:06 2010 +0530 @@ -0,0 +1,12 @@ +% File to make the booklet with the right margins + +\documentclass[letter]{article} +\usepackage{pdfpages} +\usepackage[letterpaper, top=.4in, bottom=.4in]{geometry} + +\begin{document} +\pagestyle{empty} +\includepdf[pages=-, noautoscale, scale=.9]{booklet_0.pdf} + +\end{document} + diff -r 0a0bddff6847 -r 30b754364bbb project/static/proceedings/sources/scipy2009confs.pdf Binary file project/static/proceedings/sources/scipy2009confs.pdf has changed