%% Document style TMreport: report for Thinking Machines Corporation.
%% Produced from /usr/local/lib/tex/macros/report.sty by Guy Steele.
% 3/18/85 10:28:39  Created.
% 3/18/85 10:29:39  Uses TMrep10.sty instead of rep10.sty, etc.
% 3/18/85 11:12:44  New \maketitle puts in copyright notice and other text.
% 3/19/85 12:38:40  Added \formattedindex and \indexentry.
% 3/21/85 11:39:27  Make index be in \small font.  Adjust spacing.
% 5/22/85 12:38:42  Need to make @ be alphabetic (catcode 11) when
%		    reading in the index.  Things like \z@ show up.
% 1/31/86 15:24:51  Add hackery to put blank lines in index where
%		    initial letter changes.
% 2/03/86 16:01:52  Use \indexspace, not \bigskip.
% 2/04/86 14:10:52  Added \registered and \trademark.
% 3/07/86 14:21:25  Make \theindex use \raggedright.
% 3/11/86 16:32:19  Add new document option "onecolumnindex".
% 6/28/88 23:40:11  Add stuff to reset the \jobname for TeXtures.  Yuk.
% 8/27/88 17:17:17  Add flushdesc environment.

{\setbox0\box\@holdpg}    %void \@holdpg box to fix bug
%\newcounter{equation}
%\newcounter{footnote}
%\newcounter{mpfootnote}

% If the \jobname is of the form "xxxx.tex" reset it to simply "xxxx".
{  \let\DEF=\def  \let\CATCODE=\catcode  \let\EXPANDAFTER=\expandafter
   % The stupid \jobname is all in catcode-12 characters.  Double yuk.
   {  \CATCODE`\.=12  \CATCODE`\t=12  \CATCODE`\e=12  \CATCODE`\x=12
      \global\DEF\<#1.tex#2\end{\DEF\JOBNAME{#1}}
      \global\DEF\>#1{\EXPANDAFTER\<#1.tex\end}
   }
   \>\jobname  \global\let\jobname=\JOBNAME
}



%\newif\if@onecolumnindex \@onecolumnindexfalse
%\newif\if@externaldocument \@externaldocumentfalse
\newif\if@draft \@draftfalse
\newif\if@permutemonospace   \@permutemonospacefalse
\typeout{Document Style 'TMreport'. Version 0.91a - released 18 March 1985}
\def\@ptsize{0} \@namedef{ds@11pt}{\def\@ptsize{1}}
\@namedef{ds@12pt}{\def\@ptsize{2}} 
\def\ds@twoside{\@twosidetrue \@mparswitchtrue}
\def\ds@draft{\overfullrule 18pt\@drafttrue}
%\def\ds@external{\@externaldocumenttrue}
%\def\ds@onecolumnindex{\@onecolumnindextrue}
\def\ds@permutemonospace{\@permutemonospacetrue}
\@options
\input CLTL1\@ptsize.sty\relax

\clubpenalty=1000
\widowpenalty=1000

\input defun.tex

\makeatletter

\input marginal.tex



% The \null in the following is intended to suppress hyphenation
% in code words not already containing hyphens.  The \leavevmode
% is needed to prevent vertical mode from swallowing the \null.
%%%\def\cd#1{\leavevmode{\cf \null#1}}
\def\cd{\leavevmode\begingroup\cf\@cd}
\def\@cd#1{\null#1\endgroup}


\if@permutemonospace
  \def\undo@permute{\catcode"2D=12  %hyphen
                    \catcode"27=12  %quote
                    \catcode"3D=12  %equals
                   }
  \ifchiron
    \def\Xhyphen{{\tt\char"2D}}
  \else
    \def\Xhyphen{{\tt\char177}}       % use endash for hyphen
  \fi
  % use acute of next larger size for quote
  \def\Xquote{{\tt\@tempdima=-1.36ex\setbox0\hbox to 1em{\hss\biggersize\tt
         \advance\@tempdima by 1.36ex
         \lower\@tempdima\hbox{\ifchiron\char"27\else\char194\fi}\hss}\dp0=0pt\box0}}
  % use grave of next larger size for backquote
  \def\Xbq{{\tt\@tempdima=-1.36ex\setbox0\hbox to 1em{\hss\biggersize\tt
         \advance\@tempdima by 1.36ex
         \lower\@tempdima\hbox{\ifchiron\char"60\else\char193\fi}\hss}\dp0=0pt\box0}}
  % use tilde of next larger size for asciitilde
  \def\Xtilde{{\tt\@tempdima=-1.36ex\setbox0\hbox to 1em{\hss\biggersize\tt
         \advance\@tempdima by 1.36ex
         \lower\@tempdima\hbox{\ifchiron\char"7E\else\char196\fi}\hss}\dp0=0pt\box0}}
  % use circumflex of next larger size for asciicircumflex
  \def\Xcircumflex{{\tt\@tempdima=-1.36ex\setbox0\hbox to 1em{\hss\biggersize\tt
         \advance\@tempdima by 1.36ex
         \lower\@tempdima\hbox{\ifchiron\char"5E\else\char195\fi}\hss}\dp0=0pt\box0}}
  \def\Xsharp{\hbox{\tt\hbox to 0pt{\char35\hss}\hbox to 0pt
                       {\raise0.189ex\hbox{\char45}\hss}\lower0.189ex\hbox{\char45}}}
  % Make equals sign from two em dashes
  \def\Xequal{\hbox{\tt\hbox to 0pt
                       {\raise0.189ex\hbox{\ifchiron\char"A3\else\char208\fi}\hss}\relax
                        \lower0.189ex\hbox{\ifchiron\char"A3\else\char208\fi}}}
  \def\index@hyphen{-}
  \def\index@quote{'}
  \def\index@equal{=}
  {\catcode"2D=13  %hyphen
   \catcode"27=13  %quote
   \catcode"3D=13  %equals
   \global\def\index@permute{\let-\index@hyphen
                             \let'\index@quote
                             \let=\index@equal}
   \global\def\@permute{\catcode"2D 13  %hyphen
                        \catcode"27 13  %quote
                        \catcode"3D 13  %equals
                        \let-\Xhyphen
                        \let'\Xquote
                        \let=\Xequal
                        \let\#\Xsharp
                        \def\rm{\undo@permute\protect\prm}\relax
                        \def\it{\undo@permute\protect\pit}\relax
                        \def\bf{\undo@permute\protect\pbf}\relax
                       }
  }
  \def\cf{\@permute\tt\frenchspacing}
\else
  \def\Xtilde{{\tt\char"7E}}
  \def\Xbq{{\tt\char"60}}
  \def\Xquote{{\tt\char"27}}
  \def\Xequal{{\tt\char"3D}}
  \def\Xcircumflex{{\tt\char"5E}}
  \def\cf{\tt\frenchspacing}
\fi
%\ifchiron
  \def\Xarrowright{{\tt\char"A2}}
  \def\Xarrowdown{{\tt\char"A4}}
%\else
%  \def\Xarrowright{\ifdim 1em<5pt\relax
%                       \PostScriptFile{ArrowRightSmall.ps}\else
%                       \PostScriptFile{ArrowRight.ps}\fi~}
%  \def\Xarrowdown{\ifdim 1em<5pt\relax
%                      \PostScriptFile{ArrowDownSmall.ps}\else
%                      \PostScriptFile{ArrowDown.ps}\fi~}
%\fi


%**********
\def\Xatsign{{\tt\char"40}}
\def\Xbackslash{{\tt\char"5C}}
\def\Xunderscore{{\tt\char"5F}}
\def\Xlbracket{{\tt\char"5B}}
\def\Xrbracket{{\tt\char"5D}}
\def\Xlbrace{{\tt\char"7B}}
\def\Xrbrace{{\tt\char"7D}}
\def\dlbrack{\lbrack\mskip-\thinmuskip\lbrack\mskip\thinmuskip}
\def\drbrack{\mskip\thinmuskip\rbrack\mskip-\thinmuskip\rbrack}

\def\EV{\hbox{\(\Rightarrow\)}}
\def\EX{\hbox{\(\rightarrow\)}}
\def\EQ{\hbox{\(\equiv\)}}
\def\indexterm#1{}

\def\empty{\cd{()}}
\def\false{\cd{nil}}
\def\true{\cd{t}}
\def\nil{\cd{nil}}

\def\implementation{\par\small\noindent{\bf Implementation note:}}
\def\endimplementation{\par}
\def\rationale{\par\small\noindent{\bf Rationale:}}
\def\endrationale{\par}
\def\sideremark{\par\small\noindent{\bf Remark:}}
\def\endsideremark{\par}
\def\incompatibility{\par\small\noindent{\bf Compatibility note:}}
\def\endincompatibility{\par}

\def\beforenoterule{\par\@tempskipb\lastskip \@tempdima\prevdepth
  \ifdim 0pt>\@tempdima \@tempdima=0pt\fi
  \ifdim 14pt>\@tempskipb \vskip-\@tempskipb \vskip 14pt \fi
  \kern-\@tempdima\nointerlineskip
       \hrule height \thinrule width 12pc
  \nobreak\vskip 16pt\vskip-\baselineskip\hbox{}\nobreak}

\def\betweennoterule{\par\@tempskipb\lastskip \@tempdima\prevdepth
  \ifdim 0pt>\@tempdima \@tempdima=0pt\fi
  \nobreak
  \vskip-\@tempskipb \vskip 11pt
  \kern-\@tempdima\nointerlineskip
		     \hrule height \thinrule width 12pc\penalty-500\vskip -\thinrule
       % The game here is to have *two* rules that normally coincide exactly,
       % but if a page break occurs between them then you get one at the
       % bottom of the first page and one at the top of the second page.
       \hrule height \thinrule width 12pc
		\nobreak\vskip 16pt\vskip-\baselineskip\hbox{}\nobreak}

\def\afternoterule{\par\@tempskipb\lastskip \@tempdima\prevdepth
  \ifdim 0pt>\@tempdima \@tempdima=0pt\fi
  \nobreak
  \vskip-\@tempskipb \vskip 11pt
  \nobreak\kern-\@tempdima\nointerlineskip
       \hrule height \thinrule width 12pc
  \vskip 16pt}

\def\afternoterule{\par\nobreak\vskip\ruletonoteskip
		   \hrule height \thinrule width 12pc
		   \vskip\ruletotextskip}


\def\issue#1{{$\langle$}\@ifundefined{i@#1}{{\bf ?}\@warning
   {Issue `#1' on page \thepage \space undefined}}{\csname
       i@#1\endcsname}{$\rangle$}\if@draft
  \actualmarginfrob{\setbox0=\hbox{\parbox[t]{12pc}{\raggedright\rm
         Issue \cf #1}}\ht0=0pt\dp0=0pt\box0}\fi}

\def\issueitem#1{\@ifnextchar[{\@issueitem{#1}{:}}{\@issueitem{#1}{}[]}}

\def\@issueitem#1#2[#3]{\item\if@filesw \immediate\write\@auxout
       {\string\issuecite{#1}{\the\c@enumi}}\fi
       \cd{#1#2#3~~}\unskip}
\def\issuecite#1#2{\global\@namedef{i@#1}{#2}}

\def\prefaceword{\noindent{\sc p{\kern1pt}r{\kern1pt}e{\kern1pt}f{\kern1pt}a{\kern1pt}c{\kern1pt}e{\kern1pt}:} }

%%% For use in "little tables"; leaves some space after the rule (16pt b/b).
\def\hlinesp{\noalign{{\@tempdima\prevdepth
                       \hrule \@height \arrayrulewidth
                       \vskip-\arrayrulewidth
                       \ifdim 0pt<\prevdepth \vskip-\prevdepth\fi
                       % Instead of undoing a baselineskip and then skipping 16pt,
                       % we note that a baselineskip is 12.5pt, and 16 is 1.28 times that.
                       % This makes it work in \small size as well.
                       \vskip 0.28\normalbaselineskip \hbox{}}}}

\def\labelenumi{\rlap{\arabic{enumi}.}}
\def\theenumi{\arabic{enumi}} 
%? \def\labelenumii{\rlap{(\alph{enumii})}}
%? \def\theenumii{\alph{enumii}}
%? \def\p@enumii{\theenumi}
%? \def\labelenumiii{\rlap{\roman{enumiii}.}}
%? \def\theenumiii{\roman{enumiii}}
%? \def\p@enumiii{\theenumi(\theenumii)}
%? \def\labelenumiv{\rlap{\Alph{enumiv}.}}
%? \def\theenumiv{\Alph{enumiv}} 
%? \def\p@enumiv{\p@enumiii\theenumiii}
\def\labelitemi{\rlap{\raise 0.5ex\hbox{\LARGE .}}}
\def\labelitemii{\rlap{--}}
%? \def\labelitemiii{\rlap{$\bullet$}}
%? \def\labelitemiv{\rlap{$\bullet$}}
%\def\verse{\let\\=\@centercr 
%\list{}{\itemsep\z@ \itemindent -1.5em\listparindent \itemindent 
%\rightmargin\leftmargin\advance\leftmargin 1.5em}\item[]}
%\let\endverse\endlist
\def\quotation{\list{}{\listparindent 1.5em
\itemindent\z@
\labelwidth\z@ \labelsep\z@
%\rightmargin\leftmargin
\parsep 0pt plus 1pt}\item[]}
\let\endquotation=\endlist
%\def\quote{\list{}{\rightmargin\leftmargin}\item[]}
%\let\endquote=\endlist

%\def\descriptionlabel#1{\hspace\labelsep \bf #1}
%\def\description{\relax
%  \list{}{\labelwidth\z@ \itemindent-\leftmargin
%  \let\makelabel\descriptionlabel}}
%\let\enddescription\endlist
%\newdimen\descriptionmargin
%\descriptionmargin=3em
%
% Guy comments out his description example.  His is only different by trying
% to \relax.  Here's the one from the standard LaTeX report.sty file:
%
\def\descriptionlabel#1{\hspace\labelsep \bf #1}
\def\description{\list{}{\labelwidth\z@ \itemindent-\leftmargin
 \let\makelabel\descriptionlabel}}
\let\enddescription\endlist
\newdimen\descriptionmargin
\descriptionmargin=3em

\def\indentdesc#1{\@ifstar{\list{}{\leftmargin=#1\relax \topsep\z@ \labelwidth\z@
                                   \itemindent-\leftmargin \labelsep\z@
                                   \def\makelabel####1{\hbox to #1{####1\hss}}}}{\list
        {}{\leftmargin=#1\relax \labelwidth\z@
           \itemindent-\leftmargin \labelsep\z@
           \def\makelabel####1{\hbox to #1{####1\hss}}}}}
\let\endindentdesc\endlist

% Add 3.5 pt depth to yield 16pt baseline-to-baseline.
\def\flushdesclabel#1{{\setbox0\hbox to \linewidth{\rm\strut#1\hfill}\relax
                       \@tempdima\dp0 \advance\@tempdima by 3.5pt \dp0\@tempdima \box0}}
\def\flushdesc{\@ifstar{\list{}{\topsep\z@
                       \itemsep=\topsep  \parsep 0pt plus 0.25pt
                       \labelwidth\z@ \labelsep\z@
                       \leftmargin\z@ \itemindent\z@
                       \listparindent 1em
                       \let\makelabel\flushdesclabel}}{\list
                       {}{\topsep=12pt plus 2pt minus 2pt
                       \itemsep=\topsep  \parsep 0pt plus 0.25pt
                       \labelwidth\z@ \labelsep\z@
                       \leftmargin\z@ \itemindent\z@
                       \listparindent 1em
                       \let\makelabel\flushdesclabel}}}
\let\endflushdesc\endlist

%? \def\@begintheorem#1#2{\it \trivlist \item[\hskip \labelsep{\bf #1\ #2}]}
%? \def\@endtheorem{\endtrivlist}
%? \@addtoreset{equation}{chapter} 
%? \def\theequation{\thechapter.\arabic{equation}}

\def\titlepage{%\@restonecolfalse\if@twocolumn\@restonecoltrue\onecolumn\else
 \newpage 
%\fi
\thispagestyle{empty}\c@page\z@}
\def\endtitlepage{%\if@restonecol\twocolumn \else
\newpage
% \fi
}
\arraycolsep 5pt \tabcolsep 6pt \arrayrulewidth \thinrule \doublerulesep 2pt 
\tabbingsep \labelsep 
%\skip\@mpfootins = \skip\footins
%\fboxsep = 3pt \fboxrule = \thinrule 

\def\@pnumwidth{1.55em}
\def\@tocrmarg {2.55em}
\def\@dotsep{4.5}
\setcounter{tocdepth}{3}

\def\numberline#1{\setbox0=\hbox{#1. }\ifdim \wd0 < \@tempdima
    \hbox to \@tempdima{\box0\hfil}\else \box0 \fi}

\def\tableofcontents{\begingroup\columnseprule \z@
   \columnsep 1.5pc\twocolumn[\@makeschapterhead{Contents}]\relax
   \markboth{CONTENTS}{CONTENTS}\thispagestyle{plain}\raggedright\small
   \parskip\z@ plus .4pt\@starttoc{toc}
   \l@chapter{References}{\pageref{REFERENCES}}
   \l@chapter{Index of X3J13 Votes}{\pageref{ISSUES}}
   \l@chapter{Other Indexes}{\pageref{INDEX}}
   \endgroup
   \vfill    % remove this if within 2 lines of bottom of page?
   \onecolumn}

\newdimen\tocindent   \tocindent=2.5pc
\def\l@chapter#1#2{\vskip 12pt plus 1fil
{\samepage \hangindent 1.5pc \noindent
 \@tempdima 0pt{\normalsize\bf \ignorespaces#1}\nobreak\hskip 1em{#2}\par}
 \nobreak\vskip 4pt}
\def\l@section#1#2{{\samepage \noindent \hangindent\tocindent
                   \@tempdima\tocindent
                   #1\nobreak\hskip 1em\relax #2\par}}
\let\l@subsection=\l@section
\let\l@subsubsection\l@subsection
%? \def\l@paragraph{\@dottedtocline{4}{10em}{5em}}
%? \def\l@subparagraph{\@dottedtocline{5}{12em}{6em}}
%? \def\listoftables{\@restonecolfalse\if@twocolumn\@restonecoltrue\onecolumn
%? \fi\chapter*{List of Tables}\markright
%? {List of Tables}\@starttoc{lot}\if@restonecol\twocolumn
%? \fi}
%? \def\l@table{\@dottedtocline{1}{1.5em}{2.3em}}
%? \def\listoffigures{\@restonecolfalse\if@twocolumn\@restonecoltrue\onecolumn
%? \fi\chapter*{List of Figures}\markright
%? {List of Figures}\@starttoc{lof}\if@restonecol\twocolumn
%? \fi}
%? \let\l@figure\l@table

\def\thebibliography#1{\chapter*{References}\markboth
{REFERENCES}{REFERENCES}\label{REFERENCES}\small\list
{[\arabic{enumi}]}{\settowidth\labelwidth{[#1] }\leftmargin\labelwidth
\advance\leftmargin\labelsep \parsep 0pt\itemsep 0pt plus 2pt\usecounter{enumi}}}
\let\endthebibliography=\endlist

%\newif\if@restonecol
%\def\theindex{\@restonecoltrue\if@twocolumn\@restonecolfalse\fi
%   \columnseprule \z@
%   \columnsep 35pt\twocolumn[\@makeschapterhead{Index}]\relax
% \markboth{Index}{Index}\thispagestyle{plain}\raggedright\small
% \parskip\z@ plus .3pt\relax\let\item\@idxitem}

%\def\@idxitem{\par\hangindent 40pt}
%\def\subitem{\par\hangindent 40pt \hspace*{20pt}}
%\def\subsubitem{\par\hangindent 40pt \hspace*{30pt}}
%\def\endtheindex{\if@restonecol\onecolumn\else\clearpage\fi}
%\def\indexspace{\par \vskip 10pt plus 5pt minus 3pt\relax}

%\def\formattedindex{\openin1 \jobname.fdx \ifeof1
%  \typeout{No file \jobname.fdx.}\else
%  \closein1\newpage\begin{theindex}\catcode`@=11\@@input \jobname.fdx\end{theindex}\fi}
%\def\indexentry#1#2{\@indexentry#1{#2}}
%\let\@indexlastinitial=\relax
%\def\@indexsetinitial#1#2\par{\let\@indexlastinitial=#1}
%\def\@indexentry#1#2#3{\if\@indexlastinitial\relax
%		          \@indexsetinitial#1\par
%                       \else
%			  \let\@indexoldinitial=\@indexlastinitial
%			  \@indexsetinitial#1\par
%			  \if\@indexlastinitial\@indexoldinitial
%			  \else
%			     \indexspace
%			  \fi
%		       \fi
%		       \item {#2}\ \ \relax#3}

%? \def\footnoterule{\kern-1\p@ 
%? \hrule width .4\columnwidth 
%? \kern .6\p@} 
%? \@addtoreset{footnote}{chapter} 
%? \long\def\@makefntext#1{\@setpar{\@@par\@tempdima \hsize 
%? \advance\@tempdima-10pt\parshape \@ne 10pt \@tempdima}\par
%? \parindent 1em\noindent \hbox to \z@{\hss$^{\@thefnmark}$}#1}

\setcounter{topnumber}{2}
\def\topfraction{.9}
\setcounter{bottomnumber}{1}
\def\bottomfraction{.3}
\setcounter{totalnumber}{3}
\def\textfraction{.1}
\def\floatpagefraction{.1}
\setcounter{dbltopnumber}{2}
\def\dbltopfraction{.7}
\def\dblfloatpagefraction{.5}
\long\def\@makecaption#1#2{
\noindent {\small {\bf #1:} #2}\par\addvspace{12pt}
%   \setbox\@tempboxa\hbox{#1: #2}
%   \ifdim \wd\@tempboxa >\hsize \unhbox\@tempboxa\par \else \hbox
%   to\hsize{\hfil\box\@tempboxa\hfil} 
%   \fi
}
\def\@qfloat#1[#2]{\@xfloat{#1}[#2]\bgroup \hrule height \thinrule \small
       \vskip 20pt\vskip-\baselineskip\hbox{}}
\def\@qpagefloat#1[#2]{\@xfloat{#1}[#2]\vbox to \textheight
                                   \bgroup \hrule height \thinrule \small
       \vskip 20pt\vskip-\baselineskip\hbox{}}
\newcounter{figure}[chapter]
\def\thefigure{\thechapter\hbox{-}\@arabic\c@figure}
%\def\fps@figure{tp}
\def\ftype@figure{1}
\def\ext@figure{lof}
\def\fnum@figure{Figure \thefigure}
\def\figure{\@ifnextchar[{\@qfloat{figure}}{\@qpagefloat{figure}[p]}}
\def\endfigure{\par \vskip\ruletonoteskip \hrule height \thinrule \egroup \end@float}
\@namedef{figure*}{\@dblfloat{figure}}
\@namedef{endfigure*}{\end@dblfloat}
\newcounter{table}[chapter]
\def\thetable{\thechapter\hbox{-}\@arabic\c@table}
%\def\fps@table{tp}
\def\ftype@table{2}
\def\ext@table{lot}
\def\fnum@table{Table \thetable}
\def\table{\@ifnextchar[{\@qfloat{table}}{\@qpagefloat{table}[p]}}
\let\endtable\endfigure
\@namedef{table*}{\@dblfloat{table}}
\@namedef{endtable*}{\end@dblfloat}

\def\headrule{\hbox to 0pt{\vbox to 0pt{\vskip-13pt\hrule height 0pt depth \thinrule width 12pc
                                        \vskip-5pc\hbox to 0pt{\hskip-3pc\small\rm\tagline\hss}\vss}\hss}}

\def\runningtitle#1{\markboth{#1}{}}
\markboth{}{}
\mark{{}{}} 
\if@twoside
  \def\ps@headings{\def\@oddfoot{\@marginfoot\hfil}\let\@evenfoot=\@oddfoot
  \def\@evenhead{\@marginhead\headrule\small\sf
  \thepage  \hskip 2em \leftmark\hfil}\def\@oddhead{\@marginhead\headrule\small\sf \rightmark \hfil
  \thepage}\def\chaptermark##1{\markboth{COMMON LISP}{\uppercase{##1}}}\def\sectionmark##1{}}
\else
  \def\ps@headings{\def\@oddfoot{\@marginfoot\hfil}\let\@evenfoot=\@oddfoot\def\@oddhead{\@marginhead
  \headrule\small\sf \rightmark \hfil \thepage}\def\chaptermark##1{\markboth
  {\ifnum \c@secnumdepth >\m@ne
  \@chapapp\ \thechapter. \ \fi ##1}{}}}
\fi
\def\ps@myheadings{\def\@oddfoot{\@marginfoot\hfil}\let\@evenfoot=\@oddfoot
  \def\@oddhead{\@marginhead\headrule\small\sf\@rhead \hfil\thepage}\def\@evenhead{\@marginhead
  \headrule\small\sf \thepage \hskip 2em \@lhead\hfil}\def\chaptermark##1{}\def\sectionmark##1{}}


\def\ps@plain{\let\@mkboth\@gobbletwo
     \def\@oddhead{\@marginhead\hfil}\def\@oddfoot{\@marginfoot\small\sf\hfil\thepage
     }\let\@evenhead\@oddhead\def\@evenfoot{\@marginfoot\small\sf\thepage\hfil}}

%\def\registeredsymbol{{\ooalign{\hfil\raise.05ex\hbox{\hskip.02ex$\rm
%			                              \scriptscriptstyle R$}\hfil\crcr
%                                \hbox{$\scriptstyle\mathchar"20D$}}}}

%\def\registered{\ifmmode^\registeredsymbol\else$^\registeredsymbol$\fi}

%\def\trademark{\ifmmode^{\hbox{$\rm\scriptscriptstyle TM$}}\else
%	              $^{\hbox{$\rm\scriptscriptstyle TM$}}$\fi}

%\def\today{\ifcase\month\or
%January\or February\or March\or April\or May\or June\or
%July\or August\or September\or October\or November\or December\fi
%\space\number\day, \number\year}

\ps@plain \pagenumbering{arabic} \onecolumn \if@twoside\else\raggedbottom\fi   

\hyphenchar\nintt=`-
\hyphenchar\tentt=`-
\hyphenchar\elvtt=`-
\hyphenchar\twltt=`-

%%%%%% Corrections to some internal LaTeX macros.

% Modified to deal with the issues.
\def\enddocument{\@checkend{document}\clearpage\begingroup  
\if@filesw \immediate\closeout\@mainaux 
\def\global\@namedef##1##2{}\def\newlabel{\@testdef r}%
\def\bibcite{\@testdef b}\def\issuecite{\@testdef i}\@tempswafalse \makeatletter\input \jobname.aux
\if@tempswa \@warning{Label(s) may have changed.  Rerun to get
cross-references right}\fi\fi\endgroup\deadcycles\z@\@@end}

% Modified to fix bug: needs spaces after commas.
\def\@citex[#1]#2{\if@filesw\immediate\write\@auxout{\string\citation{#2}}\fi
  \def\@citea{}\@cite{\@for\@citeb:=#2\do
    {\@citea\def\@citea{, }\@ifundefined
       {b@\@citeb}{{\bf ?}\@warning
       {Citation `\@citeb' on page \thepage \space undefined}}%
\hbox{\csname b@\@citeb\endcsname}}}{#1}}

% Need trailing period after section number, and less space between that and sec title.

\def\@sect#1#2#3#4#5#6[#7]#8{\ifnum #2>\c@secnumdepth
     \def\@svsec{}\else 
     \refstepcounter{#1}\edef\@svsec{\csname the#1\endcsname. }\fi
     \@tempskipa #5\relax
      \ifdim \@tempskipa>\z@ 
        \begingroup #6\relax
          \@hangfrom{\hskip #3\relax\@svsec}{\interlinepenalty \@M #8\par}
        \endgroup
       \csname #1mark\endcsname{#7}\addcontentsline
         {toc}{#1}{\ifnum #2>\c@secnumdepth \else
                      \protect\numberline{\csname the#1\endcsname.}\fi
                    #7}\else
        \def\@svsechd{#6\hskip #3\@svsec #8\csname #1mark\endcsname.
                      {#7}\addcontentsline
                           {toc}{#1}{\ifnum #2>\c@secnumdepth \else
                             \protect\numberline{\csname the#1\endcsname.}\fi
                       #7}}\fi
     \@xsect{#5}}


\def\@item[#1]{\if@noparitem \@donoparitem
  \else \if@inlabel \indent \par \fi
         \ifhmode \unskip\unskip \par \fi 
         \if@newlist \if@nobreak \@nbitem \else
                        \addpenalty\@beginparpenalty
                        \addvspace\@topsep \addvspace{-\parskip}\fi
           \else \addpenalty\@itempenalty \addvspace\itemsep 
          \fi 
    \global\@inlabeltrue 
\fi
\everypar{\global\@minipagefalse\global\@newlistfalse
          \@margineverypar   %Arrange for margins to work on items. 
          \if@inlabel\global\@inlabelfalse \hskip -\parindent \box\@labels
             \penalty\z@ \fi
          \everypar{}}\global\@nobreakfalse
\if@noitemarg \@noitemargfalse \if@nmbrlist \refstepcounter{\@listctr}\fi \fi
\setbox\@tempboxa\hbox{\makelabel{#1}}%
\global\setbox\@labels
 \hbox{\unhbox\@labels \hskip \itemindent
       \hskip -\labelwidth \hskip -\labelsep 
       \ifdim \wd\@tempboxa >\labelwidth 
                \box\@tempboxa
          \else \hbox to\labelwidth {\makelabel{#1}}\fi
       \hskip \labelsep}\ignorespaces}


%%%%%%%%%%% End of internal LaTeX corrections.

%%%%%%%%%%% Corrections to lplain.tex

\def\neq{\not\,=} \let\ne=\neq

%%%%%%%%%%% End of corrections to lplain.tex

\def\makeindex{\if@filesw \newwrite\@indexfile
  \immediate\openout\@indexfile=\jobname.idx
  \def\index{\@bsphack\begingroup\@sanitize\@wrindex\@indexfile}\typeout
  {Writing index file \jobname.idx }\fi}

\def\@wrindex#1#2{\let\thepage\relax \index@permute
   \xdef\@gtempa{\write#1{\string
      \indexentry{#2}{\thepage}}}\endgroup\@gtempa
   \if@nobreak \ifvmode\nobreak\fi\fi\@esphack}

\def\index{\@bsphack\begingroup\@sanitize\@index}

\def\@index#1{\endgroup\@esphack}


\makeatother
