% CUP Journal LMS document style v0.6, 4th January 1995
% for LaTeX version 2.09
% Copyright (C) 1994,1995 Cambridge University Press
%
% based on ARTICLE DOCUMENT STYLE
% Copyright (C) 1988, 1989 by Leslie Lamport
% Modified by ggw, June 1992
% Modified by maw, October 1992
% v0.3, ajw, 30 April 1993: Major changes, as outlined in Alison
%   Cadle's letter dated 2 Nov 1992
% v0.4, ajw, mrd, 7th April 1994: NFSS 1/2 AMS 1/2 compatible
% v0.5, ajw, 9th November 1994: minor bug fix
% v0.6, ajw, 4th January 1995: add page numbers to table of contents,
%   increase indent on final affiliations, add \classno, change \cite

\newif\ifoldfss
\newif\ifnfssone
\newif\ifnfsstwo
\def\f@s@s{}%

\@ifundefined{DeclareFontShape}%
  {%
   \@ifundefined{selectfont}%
    {\global\oldfsstrue\def\f@s@s{with OFSS,\space}%
       \let\reset@font=\relax}% old font selection scheme
    {\global\nfssonetrue\def\f@s@s{with NFSS release 1,\space}}%
  }%
  {\global\nfsstwotrue\def\f@s@s{with NFSS release 2,\space}}%

\typeout{Document Style `LMS' \f@s@s v0.6, released 4th January 1995}

%  Journals use two-sided printing.
%
\@twosidetrue     %  Defines twoside option.
\@mparswitchtrue  %  Marginpars go on outside of page.
%  draft option
%
\def\ds@draft{\overfullrule 5pt}  % Causes overfull hboxes to be marked.

\newif\iffin@l
\def\ds@final{\fin@ltrue}

\@options

\def\hexnumber#1{\ifcase#1 0\or1\or2\or3\or4\or5\or6\or7\or8\or9\or
  A\or B\or C\or D\or E\or F\fi}

% choose right combination of font selection scheme and ams version
\newif\ifone
\newif\iftwo
\newif\ifthree
\newif\iffour
\newif\iffive
\newif\ifsix
\newif\ifseven

%% \let\epsilon\varepsilon
%% \let\emptyset\varnothing

%  ****************************************
%  *               FONTS                  *
%  ****************************************
%

\lineskip 1pt
\normallineskip 1pt
\def\baselinestretch{1}
\def\quarter@line{3pt}
\def\half@line{6pt}
\def\full@line{12pt}
\def\doublefull@line{18pt}

\def\@normalsize{\@setsize\normalsize{\full@line}\xpt\@xpt
 \abovedisplayskip \half@line plus 1pt minus 1pt
 \belowdisplayskip \abovedisplayskip
 \abovedisplayshortskip \quarter@line plus 1pt
 \belowdisplayshortskip  \abovedisplayskip
 \let\@listi\@listI}
\def\small{\@setsize\small{10pt}\ixpt\@ixpt
 \abovedisplayskip 5pt plus 1pt minus 1pt
 \belowdisplayskip \abovedisplayskip
 \abovedisplayshortskip 2.5pt plus 1pt
 \belowdisplayshortskip \abovedisplayskip
 \def\@listi{\leftmargin\leftmargini
  \topsep 0pt plus 1pt minus 1pt  % was 10pt %ajw
  \parsep \z@
  \itemsep \parsep}}
\def\medium{\@setsize\medium{10pt}\viiipt\@viiipt
 \abovedisplayskip 5pt plus 1pt minus 1pt
 \belowdisplayskip \abovedisplayskip
 \abovedisplayshortskip 2.5pt plus 1pt
 \belowdisplayshortskip \abovedisplayskip
 \def\@listi{\leftmargin\leftmargini
  \topsep 0pt plus 1pt minus 1pt  % was 10pt %ajw
  \parsep \z@
  \itemsep \parsep}}
\def\footnotesize{\@setsize\footnotesize{9pt}\viiipt\@viiipt
 \abovedisplayskip 4.5pt plus 1pt minus 1pt
 \belowdisplayskip \abovedisplayskip
 \abovedisplayshortskip \z@ plus 1pt
 \belowdisplayshortskip  \abovedisplayskip
 \def\@listi{\leftmargin\leftmargini
  \topsep 0pt plus 1pt minus 1pt  % was 9pt %ajw
  \parsep \z@
  \itemsep \parsep}}
\def\scriptsize{\@setsize\scriptsize{8pt}\viipt\@viipt}
\def\tiny{\@setsize\tiny{6pt}\vpt\@vpt}
\def\addresssize{\@setsize\addresssize{11pt}\xpt\@xpt}
\def\large{\@setsize\large{14pt}\xiipt\@xiipt}
\def\Large{\@setsize\Large{16pt}\xivpt\@xivpt}
\def\LARGE{\@setsize\LARGE{21pt}\xviipt\@xviipt}
\def\huge{\@setsize\huge{25pt}\xxpt\@xxpt}
\def\Huge{\@setsize\Huge{30pt}\xxvpt\@xxvpt}
\normalsize  % Choose the normalsize font.


%  ****************************************
%  *            PAGE LAYOUT               *
%  ****************************************
%
% All margin dimensions measured from a point one inch from top and side
% of page.
%
% SIDE MARGINS:
\oddsidemargin  2pc      % Left margin on odd-numbered pages.
\evensidemargin 2pc      % Left margin on even-numbered pages.

\marginparwidth 2.0cm    % Width of marginal notes.
\marginparsep 10pt       % Horizontal space between outer margin and
                         % marginal note
% VERTICAL SPACING:
% Top of page:
\topmargin 3pc           %    Nominal distance from top of page to top of
                         %    box containing running head.
\headheight 18pt         %    Height of box containing running head.
\headsep     6pt         %    Space between running head and text.
\topskip =  12pt         %    '\baselineskip' for first line of page.
                         % Bottom of page:

\footheight \full@line   %    Height of box containing running foot.
\footskip 18pt           %    Distance from baseline of box containing foot
                         %    to baseline of last line of text.
% DIMENSION OF TEXT:
%
\textheight = 48\baselineskip \advance\textheight by \topskip
                         % Height of text (including footnotes and figures,
                         % excluding running head and foot).
\textwidth 30pc          % Width of text line.
                         % For two-column mode:
\columnsep 10pt          %    Space between columns
\columnseprule 0pt       %    Width of rule between columns.
%
% FOOTNOTES:
%
%\footnotesep \half@line   
\footnotesep \full@line   
       % Height of strut placed at the beginning of every
       % footnote = height of normal \footnotesize strut,
       % so no extra space between footnotes.
%\skip\footins \full@line plus \full@line minus 1pt 
 \skip\footins \doublefull@line plus \full@line minus 1pt 
       % Space between last line of text and
       % top of first footnote.

% FOR FLOATS ON A TEXT PAGE:
%
\floatsep 12pt plus \half@line minus 1pt 
  % Space between adjacent floats moved to top or bottom of text page.
\textfloatsep 18pt plus \half@line minus 3pt
  % Space between main text and floats at top or bottom of page.
\intextsep 18pt plus \quarter@line minus 2pt
  % Space between in-text figures and text 
\@maxsep 18pt 
  % The maximum of \floatsep, \textfloatsep and \intextsep 
  % (minus the stretch and shrink).

% TWO-COLUMN FLOATS IN TWO-COLUMN MODE:
\dblfloatsep 12pt plus \half@line minus 2pt
  % Same as \floatsep for double-column
\dbltextfloatsep 18pt plus 4.5pt minus 3pt 
  % \textfloatsep for double-column
\@dblmaxsep 18pt                         
  % The maximum of \dblfloatsep and \dbltexfloatsep.

%  FOR FLOATS ON A SEPARATE FLOAT PAGE OR COLUMN:
\@fptop 0pt plus 0fil    
  % Stretch at top of float page/column. (Must be 0pt plus ...)
\@fpsep \full@line plus 0fil   
  % Space between floats on float page/column.
\@fpbot 0pt plus 3fil    
  % Stretch at bottom of float page/column. (Must be 0pt plus ... )

%  DOUBLE-COLUMN FLOATS IN TWO-COLUMN MODE.
\@dblfptop 0pt plus 0fil 
  % Stretch at top of float page. (Must be 0pt plus ...)
\@dblfpsep \full@line plus 0fil 
  % Space between floats on float page.
\@dblfpbot 0pt plus 3fil 
  % Stretch at bottom of float page. (Must be 0pt plus ... )

% MARGINAL NOTES:
\marginparpush 6pt       
  % Minimum vertical separation between two marginal notes.


%  ****************************************
%  *           PARAGRAPHING               *
%  ****************************************
%
\parskip \z@ plus .1pt           % Extra vertical space between paragraphs.
\parindent 1.5em                 % Width of paragraph indentation.
\partopsep 0pt plus 1pt          % Extra vertical space, in addition to
%
% The following page-breaking penalties are defined
%
\@lowpenalty   51      % Produced by \nopagebreak[1] or \nolinebreak[1]
\@medpenalty  151      % Produced by \nopagebreak[2] or \nolinebreak[2]
\@highpenalty 301      % Produced by \nopagebreak[3] or \nolinebreak[3]
%
\@beginparpenalty -\@lowpenalty    % Before a list or paragraph environment.
\@endparpenalty   -\@lowpenalty    % After a list or paragraph environment.
\@itempenalty     -\@lowpenalty    % Between list items.
%
\clubpenalty=0        % 'Club line'  at bottom of page is OK.
\widowpenalty=10000   % 'Widow line' at top of page is not good.



%  ****************************************
%  *                 PARTS                *
%  ****************************************
%
\def\part{\par
 \addvspace{4ex}
 \@afterindentfalse
 \secdef\@part\@spart}
\def\@part[#1]#2{\ifnum \c@secnumdepth >\m@ne
  \refstepcounter{part}
  \addcontentsline{toc}{part}{Part \thepart: #1}
 \else
  \addcontentsline{toc}{part}{#1}
 \fi
 {\parindent 0pt \raggedright
  \ifnum \c@secnumdepth >\m@ne
   \reset@font\large\rm PART
   \ifcase\thepart \or ONE \or TWO \or THREE \or FOUR \or FIVE
     \or SIX \or SEVEN \or EIGHT \or NINE \or TEN \else \fi
   \par \nobreak
  \fi
  \reset@font\LARGE \rm #2
  \markboth{}{}\par }
 \nobreak \vskip 3ex
 \@afterheading
}
% Heading for \part* command
\def\@spart#1{%
 {\parindent 0pt \raggedright
  \reset@font\LARGE \rm #1\par}
 \nobreak
 \vskip 3ex
 \@afterheading
}

%  ****************************************
%  *               SECTIONS               *
%  ****************************************
%
\def\section{\@startsection{section}{1}{\z@}
 {18pt plus 6pt minus 3pt}
 {6pt plus 0pt minus 1pt}
 {\centering\reset@font\normalsize\it}}
\def\subsection{\@startsection{subsection}{2}{\parindent}
 {18pt plus 6pt minus 3pt}
% {6pt plus 0pt minus 1pt}
  {-1em}
 {\noindent\reset@font\normalsize\it}} 
 \def\subsubsection{\@startsection{subsubsection}{3}{\parindent}
 {\full@line plus 6pt minus 3pt}
%  {6pt plus 0pt minus 1pt}
 {-1em}
 {\noindent\reset@font\normalsize\it}}
\def\paragraph{\@startsection{paragraph}{4}{\z@}
 {\full@line plus 6pt minus 3pt}
 {\half@line plus 0pt minus 1pt}
 {\noindent\reset@font\normalsize\rm}}
\def\subparagraph{\@startsection{subparagraph}{4}{\parindent}
 {\half@line plus 3.25pt minus 1pt}
 {-0.5em}
 {\reset@font\normalsize\rm}}
% The value of the counter secnumdepth gives the depth of the
% highest-level sectioning command that is to produce section numbers.
%
\setcounter{secnumdepth}{2}
%
% Changes to \@sect to achieve full points after numbers in section headings
%
% \@sect{1NAME}{2LEVEL}{3INDENT}{4BEFORESKIP}{5AFTERSKIP}{6STYLE}[ARG1]{ARG2} 
\def\@sect#1#2#3#4#5#6[#7]#8{%                
                \def\emptybracket{}%
                \def\contsofeight{#8}%
                \ifnum #2>\c@secnumdepth
                  \def\@svsec{}
                \else \refstepcounter{#1}
                   \edef\@svsec{{\noexpand\reset@font\noexpand\rm
                    \csname the#1\endcsname
                  \ifnum #2=1% if a section
                    .%
                  \else                
                    \ifnum #2=2% if a subsection
                      \ifx\emptybracket\contsofeight % and it's empty
                      .% 
                      \else  
                      \fi
                    \fi
                  \fi
               }\hskip 0.5em
              }\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%
          \ifx\emptybracket\contsofeight
            \hskip -0.5em
          \else
            .% only use a dot if there's a subsection heading
          \fi
    \csname #1mark\endcsname % add dot
    {#7}\addcontentsline{toc}{#1}{\ifnum #2>\c@secnumdepth \else
      \protect\numberline{\csname the#1\endcsname}\fi#7}}
 \fi
 \@xsect{#5}}
%
% APPENDIX
%
\def\appendix{\par
 \setcounter{section}{0}
 \setcounter{subsection}{0}
 \def\thesection{\Alph{section}}}


%  ****************************************
%  *               SKIPS                  *
%  ****************************************
%
\newskip\@indentskip    % General CUP indent
\newskip\smallindent    % para. indent
\newskip\@footindent    % footnote indent
\newskip\@leftskip      % for CUP float stuff

\@indentskip=2pc
\smallindent=1em
\@footindent=\smallindent
\@leftskip=1pc


%  ****************************************
%  *                LISTS                 *
%  ****************************************
%
\leftmargini   \@indentskip
\leftmarginii  1.5pc
\leftmarginiii 1.5pc
\leftmarginiv  1.5pc
\leftmarginv   1pc
\leftmarginvi  1pc
\leftmargin\leftmargini
\labelsep 0.5em
\labelwidth\leftmargini\advance\labelwidth-\labelsep
%
% label macros for Range-Left and Range-Right labels
\def\makeRLlabel#1{\rlap{#1}\hss}
\def\makeRRlabel#1{\hss\llap{#1}}
%
\def\@listI{\leftmargin\leftmargini
 \parsep \z@ plus 1pt minus 1pt
 \topsep 0pt plus 1pt minus 1pt  % was \full@line %ajw
 \itemsep \z@ plus 1pt minus 1pt
 \let\makelabel\makeRRlabel}
\let\@listi\@listI
\@listi
\def\@listii{\leftmargin\leftmarginii
 \labelwidth\leftmarginii\advance\labelwidth-\labelsep
 \topsep 0pt plus 1pt minus 1pt  % was \half@line %ajw
 \parsep \z@
 \itemsep \parsep
 \let\makelabel\makeRRlabel}
\def\@listiii{\leftmargin\leftmarginiii
 \labelwidth\leftmarginiii\advance\labelwidth-\labelsep
 \topsep 0pt plus 1pt minus 1pt  % was \half@line %ajw
 \parsep \z@
 \partopsep \z@
 \itemsep \parsep
 \let\makelabel\makeRRlabel}
\def\@listiv{\leftmargin\leftmarginiv
 \labelwidth\leftmarginiv\advance\labelwidth-\labelsep
 \let\makelabel\makeRRlabel}
\def\@listv{\leftmargin\leftmarginv
 \labelwidth\leftmarginv\advance\labelwidth-\labelsep
 \let\makelabel\makeRRlabel}
\def\@listvi{\leftmargin\leftmarginvi
 \labelwidth\leftmarginvi\advance\labelwidth-\labelsep
 \let\makelabel\makeRRlabel}
%
% ENUMERATE
\def\enumerate{\ifnum \@enumdepth >3 \@toodeep \else
  \advance\@enumdepth \@ne
  \edef\@enumctr{enum\romannumeral\the\@enumdepth}%
 \fi
 \@ifnextchar [{\@enumeratetwo}{\@enumerateone}%
}
\def\@enumeratetwo[#1]{%
 \list{\csname label\@enumctr\endcsname}%
  {\settowidth\labelwidth{[#1]}
   \leftmargin\labelwidth \advance\leftmargin\labelsep
   \usecounter{\@enumctr}
   \let\makelabel\makeRRlabel}
}
\def\@enumerateone{%
 \list{\csname label\@enumctr\endcsname}%
  {\usecounter{\@enumctr}
   \let\makelabel\makeRRlabel}}


\def\labelenumi{\theenumi}
\def\theenumi{\arabic{enumi}}

\def\labelenumii{(\theenumii)}
\def\theenumii{\alph{enumii}}
\def\p@enumii{\theenumi}

\def\labelenumiii{\theenumiii}
\def\theenumiii{\roman{enumiii}}
\def\p@enumiii{\theenumi(\theenumii)}

\def\labelenumiv{\theenumiv}
\def\theenumiv{\Alph{enumiv}}
\def\p@enumiv{\p@enumiii\theenumiii}
%
% ITEMIZE
%
\def\itemize{\ifnum \@itemdepth >3 \@toodeep
  \else
   \advance\@itemdepth \@ne
   \edef\@itemitem{labelitem\romannumeral\the\@itemdepth}%
   \list{\csname\@itemitem\endcsname}{\let\makelabel\makeRRlabel}%
  \fi}

\def\labelitemi{$\bullet$}
\def\labelitemii{\reset@font\bf --}
\def\labelitemiii{$\ast$}
\def\labelitemiv{$\cdot$}
%
% DESCRIPTION
%
\def\descriptionlabel#1{\hspace\labelsep \reset@font\bf #1}
\def\description{\list{}{\labelwidth\z@ \itemindent-\leftmargin
       \let\makelabel\descriptionlabel}}
\let\enddescription\endlist
%
% Unlabelled run-in list
%\def\unnumlabel#1{\reset@font\rm #1}
\def\unnum{\list{}{\labelwidth\z@
%       \let\makelabel\unnumlabel
       \leftmargin \parindent
       \itemindent-\parindent
}}
\let\endunnum\endlist
%
% VERSE
%
\def\verse{\let\\=\@centercr
  \list{}{\itemsep\z@
          \itemindent -\@indentskip
          \listparindent \itemindent
          \rightmargin\leftmargin
          \advance\leftmargin \@indentskip}\item[]}
\let\endverse\endlist
%
% QUOTATION
%
\def\quotation{\list{}{\listparindent \smallindent
    \itemindent\listparindent
    \leftmargin2.5pc\rightmargin\leftmargin
    \parsep 0pt plus 1pt}\item[]\reset@font\small}
\let\endquotation=\endlist
%
% QUOTE -- same as quotation except no paragraph indentation,
%
\def\quote{\list{}{\leftmargin2.5pc\rightmargin\leftmargin}%
             \item[]\reset@font\small}
\let\endquote=\endlist


%  ****************************************
%  *         TITLE AND ABSTRACT           *
%  ****************************************
%
\newif\ifextraline
\extralinefalse
\def\@emptyfootnote{\footnotetext{}}
\def\maketitle{\par
 \begingroup
   \newpage
   \global\@topnum\z@
   \@maketitle
   \thispagestyle{title}%
   \@thanks
   \endgroup
     \iffin@l
       \ifextraline
         \@footnoteone\@footnotetwo\@myfootnote\@footnotebull
       \else
         \@footnoteone\@footnotetwo\@footnotebull
       \fi
     \else
       \ifextraline
         \@myfootnote\@footnotetwo\@emptyfootnote\@emptyfootnote
       \else
         \@footnotetwo\@emptyfootnote\@emptyfootnote
       \fi
     \fi
 \setcounter{footnote}{0}%
 \let\maketitle\relax
 \let\@maketitle\relax
 \gdef\@thanks{}%
% \gdef\@author{}\gdef\@title{}
 \let\thanks\relax}%
% \def\and{\end{author@tabular}\vskip .25em\par
% \begin{author@tabular}[t]{@{}c@{}}}
\newif\ifrunninghead
\ifrunninghead
  \def\and{\end{author@tabular}{\reset@font\sc and}%
  \begin{author@tabular}[t]{@{}c@{}}}%
\else % if in running head
  \def\and{\reset@font\sc and}%
\fi  

\def\@maketitle{\newpage
  \vspace*{-14pt}%
  {\parindent 0pt\centering\sloppy  
    {\reset@font\large \@title \par}%
    \vskip 24pt% \ignorespaces
    {\reset@font\normalsize% \noindent
      \begin{author@tabular}[t]{@{\hspace*{6pt}}c@{}}\@author
      \end{author@tabular}\par
    }%
    \par% \noindent
  }%
  \vspace{19pt\ignorespaces}%
}

\def\ps@title{\ps@empty\global\let\footnoterule\title@footnoterule
\global\let\@makefntext\title@makefntext
}
\def\abstract{\removelastskip\par%
{\centering\reset@font\sc Abstract\\[10pt]}\reset@font\footnotesize
\parindent 1.5em\listparindent 1.5em\ignorespaces} 
       \def\endabstract{\endlist\addvspace{19pt}}


%  ****************************************
%  *            PAGE STYLES               *
%  ****************************************
%

\mark{{}{}}   % Initializes TeX's marks

\gdef\@author{\mbox{}} % SFB 0.02
\def\author{\@ifnextchar [{\@authortwo}{\@authorone}}
\def\@authortwo[#1]#2{\gdef\@author{\uppercase{#2}}
\gdef\@shortauthor{\lowercase{#1}}}
\def\@authorone#1{\gdef\@author{\uppercase{#1}}
\gdef\@shortauthor{\lowercase{#1}}}
\def\shortauthor#1{\gdef\@shortauthor{\lowercase{#1}}}
\gdef\@shortauthor{\runningheadtrue\@author}

\gdef\@title{\mbox{}} % SFB 0.02
\def\title{\@ifnextchar [{\@titletwo}{\@titleone}}
\def\@titletwo[#1]#2{\gdef\@title{\uppercase{#2}}
\gdef\@shorttitle{\lowercase{#1}}}
\def\@titleone#1{\gdef\@title{\uppercase{#1}}
\gdef\@shorttitle{\lowercase{#1}}}
\def\shorttitle#1{\gdef\@shorttitle{\lowercase{#1}}}
\gdef\@shorttitle{\@title}
\def\volume#1{\gdef\@volume{#1}}
\gdef\@volume{00}
\def\pagerange#1{\gdef\@pagerange{#1}}
\gdef\@pagerange{000--000}

\edef\@pubyear{\number\year}
\def\pubyear#1{\def\@pubyear{#1}}

% \ps@empty and \ps@plain defined in LATEX.TEX

\def\ps@headings{\let\@mkboth\markboth
 \def\@oddhead{\hss\vbox{\hsize=\textwidth \hbox to \textwidth
                {\strut\phantom{\thepage}\hfill\normalsize\sc 
                \@shorttitle\hfill {\rm\thepage}}
                        }}
 \def\@oddfoot{}
 \def\@evenhead{\hss\vbox{\hsize=\textwidth \hbox to \textwidth
      {\strut\normalsize{\rm\thepage}\hfill \sc\@shortauthor 
      \hfill\phantom{\rm\thepage}}
                         }}
 \def\@evenfoot{}
 \def\sectionmark##1{\markboth{##1}{}}
 \def\subsectionmark##1{\markright{##1}}
}
%
% Removal of 'myheadings' page style.
%
\def\ps@myheadings{\ps@headings}

\def\@classno{00000}
\def\classno#1{\def\@classno{#1}}

\def\@recdate{}
\def\@extraline{}
\def\recdate#1{\def\@recdate{#1}}
\def\extraline#1{\extralinetrue\def\@extraline{#1}}

\def\@affiliationone{}
\def\affiliationone#1{\removelastskip\vspace{26pt}\noindent%
                      \reset@font\addresssize\hspace*{8pt}
\parbox[t]{177pt}{\@affiliationone{#1}}}%15pc

\def\@affiliationtwo{}
\def\affiliationtwo#1{\reset@font\addresssize\parbox[t]{13.25pc}%
{\@affiliationtwo{#1}}}

\def\@affiliationthree{}
\def\affiliationthree#1{\removelastskip\vspace{17pt}\noindent%
                        \reset@font\addresssize\hspace*{8pt}
\parbox[t]{177pt}{\@affiliationthree{#1}}}%15pc

\def\@affiliationfour{}
\def\affiliationfour#1{\reset@font\addresssize\parbox[t]{13.25}%
{\@affiliationfour{#1}}}

%\def\@footnoteone{}
%\def\@footnotetwo{}
%\def\@myfootnote{}
\def\@footnoteone{\footnotetext{Received \@recdate.}}
\def\@footnotetwo{\footnotetext{1991 
{\reset@font\it Mathematics Subject Classification\/}
 \@classno.}}
\def\@myfootnote{\footnotetext{\@extraline .}}
\def\@footnotebull{\footnotetext{\hfill{\reset@font\it Bull.\ London Math.\ Soc.\/}
\@volume\ (\@pubyear) \@pagerange \hfill}}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%\def\ps@titlepage{\let\@mkboth\@gobbletwo
% \def\@oddhead{\hss\vbox{\hsize=\textwidth \hbox to \textwidth
%                {\strut\small\rm \hfill}
%               {\strut\small\rm\@journal\hfill}
%               \vskip 2.5pt \vskip \arrayrulewidth}}
% \def\@oddfoot{}
% \def\@evenhead{\hss\vbox{\hsize=\textwidth \hbox to \textwidth
%                {\strut\small\rm \hfill}
%               {\strut\small\rm\@journal\hfill}
%               \vskip 2.5pt \vskip \arrayrulewidth}}
% \def\@evenfoot{}
% \def\sectionmark##1{}
% \def\subsectionmark##1{}
% }
%
%  ****************************************
%  *         OTHER ENVIRONMENTS           *
%  ****************************************
%
% THEOREM
%
% THEOREM (altered so that a definition of, say, \theorem, also defines
% \theorem*. \theorem* is the unnumbered version and is defined
% through the \newunnumbered mechanism. These are what the typespec calls
% "environments to be numbered by the author". The body of these is 
% italicised.  ggw.
%
\def\newtheorem#1{\@ifnextchar[{\@othm{#1}}{\@nthm{#1}}}

\def\@nthm#1#2{%
\@ifnextchar[{\@xnthm{#1}{#2}}{\@ynthm{#1}{#2}}}

\def\@xnthm#1#2[#3]{\expandafter\@ifdefinable\csname #1\endcsname
{\@definecounter{#1}\@addtoreset{#1}{#3}%
\expandafter\xdef\csname the#1\endcsname{\expandafter\noexpand
  \csname the#3\endcsname \@thmcountersep \@thmcounter{#1}}%
\global\@namedef{#1}{\@thm{#1}{#2}}%
\global\@namedef{#1*}{\@thmstar{#1}{#2}}%
\global\@namedef{end#1}{\@endtheorem}%
\global\@namedef{end#1*}{\@endthmstar}}}

\def\@ynthm#1#2{\expandafter\@ifdefinable\csname #1\endcsname
{\@definecounter{#1}%
\expandafter\xdef\csname the#1\endcsname{\@thmcounter{#1}}%
\global\@namedef{#1}{\@thm{#1}{#2}}%
\global\@namedef{#1*}{\@thmstar{#1}{#2}}%
\global\@namedef{end#1}{\@endtheorem}%
\global\@namedef{end#1*}{\@endthmstar}}}

\def\@othm#1[#2]#3{\expandafter\@ifdefinable\csname #1\endcsname
  {\global\@namedef{the#1}{\@nameuse{the#2}}%
\global\@namedef{#1}{\@thm{#2}{#3}}%
\global\@namedef{#1*}{\@thmstar{#2}{#3}}%
\global\@namedef{end#1}{\@endtheorem}
\global\@namedef{end#1*}{\@endthmstar}}}

\def\@thm#1#2{\refstepcounter
    {#1}\@ifnextchar[{\@ythm{#1}{#2}}{\@xthm{#1}{#2}}}

\def\@xthm#1#2{\@begintheorem{#2}{\csname the#1\endcsname}\ignorespaces}
\def\@ythm#1#2[#3]{\@opargbegintheorem{#2}{\csname
       the#1\endcsname}{#3}\ignorespaces}
%
%
\def\@begintheorem#1#2{
  \list{}{\topsep \full@line \leftmargin \z@
  \itemindent 2.5em %\parindent  %ajw
  \labelsep 1em \labelwidth \z@ \listparindent\parindent}  %ajw
  \item[{\reset@font\sc #1\ #2.}]\reset@font\it }
\def\@opargbegintheorem#1#2#3{
 \list{}{\topsep \full@line \leftmargin \z@  
 \itemindent 2.5em %\parindent  %ajw
 \labelsep 1em\labelwidth\z@\listparindent\parindent} %ajw  
 \item[{\reset@font\sc #1\ #2\ {\reset@font\rm (#3).}}]\reset@font\it }
\def\@endtheorem{\endlist\par\@endpefalse}  %ajw
\def\@thmcounter#1{\noexpand\arabic{#1}}
\def\@thmcountersep{.}
%
%
\def\@thmstar#1#2{%\refstepcounter{#1}
\@ifnextchar[{\@ythmstar{#1}{#2}}{\@xthmstar{#1}{#2}}}

\def\@xthmstar#1#2{\@beginthmstar{#2}{\csname the#1\endcsname}\ignorespaces}
\def\@ythmstar#1#2[#3]{\@opargbeginthmstar{#2}{\csname
       the#1\endcsname}{#3}\ignorespaces}

%DEFAULT VALUES
\def\@thmstarcounter#1{{}}
\def\@thmstarcountersep{{}}
\def\@beginthmstar#1#2{%
  \list{}{\topsep \full@line \leftmargin \z@
  \itemindent 2.5em %\parindent  %ajw
  \labelsep 1em \labelwidth \z@ \listparindent\parindent}  %ajw
  \item[{\reset@font\sc #1.}]\reset@font\it }
\def\@opargbeginthmstar#1#2#3{%
 \list{}{\topsep \full@line
 \itemindent 2.5em %\parindent  %ajw
 \leftmargin\z@\labelsep 1em\labelwidth\z@\listparindent\parindent}  %ajw
 \item[\hskip \labelsep{\reset@font\sc #1\ {\reset@font\rm (#3).}}]\reset@font\it }
\def\@endthmstar{\endlist\par\@endpefalse}  %ajw
%
% Numbered Examples, etc; these are exactly the same as \newtheorem, 
% except that the body is in roman. %ggw
% \newexample now called \newnumbered

\def\newnumbered#1{\@ifnextchar[{\@oexmpl{#1}}{\@nexmpl{#1}}}

\def\@nexmpl#1#2{%
\@ifnextchar[{\@xnexmpl{#1}{#2}}{\@ynexmpl{#1}{#2}}}

\def\@xnexmpl#1#2[#3]{\expandafter\@ifdefinable\csname #1\endcsname
{\@definecounter{#1}\@addtoreset{#1}{#3}%
\expandafter\xdef\csname the#1\endcsname{\expandafter\noexpand
  \csname the#3\endcsname \@exmplcountersep \@exmplcounter{#1}}%
\global\@namedef{#1}{\@exmpl{#1}{#2}}%
\global\@namedef{#1*}{\@exmplstar{#1}{#2}}%
\global\@namedef{end#1}{\@endexample}%
\global\@namedef{end#1*}{\@endexmplstar}}}

\def\@ynexmpl#1#2{\expandafter\@ifdefinable\csname #1\endcsname
{\@definecounter{#1}%
\expandafter\xdef\csname the#1\endcsname{\@exmplcounter{#1}}%
\global\@namedef{#1}{\@exmpl{#1}{#2}}%
\global\@namedef{#1*}{\@exmplstar{#1}{#2}}%
\global\@namedef{end#1}{\@endexample}%
\global\@namedef{end#1*}{\@endexmplstar}}}

\def\@oexmpl#1[#2]#3{\expandafter\@ifdefinable\csname #1\endcsname
  {\global\@namedef{the#1}{\@nameuse{the#2}}%
\global\@namedef{#1}{\@exmpl{#2}{#3}}%
\global\@namedef{#1*}{\@exmplstar{#2}{#3}}%
\global\@namedef{end#1}{\@endexample}
\global\@namedef{end#1*}{\@endexmplstar}}}

\def\@exmpl#1#2{\refstepcounter
    {#1}\@ifnextchar[{\@yexmpl{#1}{#2}}{\@xexmpl{#1}{#2}}}

\def\@xexmpl#1#2{\@beginexample{#2}
{\csname the#1\endcsname}\ignorespaces}
\def\@yexmpl#1#2[#3]{\@opargbeginexample{#2}{\csname
       the#1\endcsname}{#3}\ignorespaces}
%
%
\def\@beginexample#1#2{
  \list{}{\topsep \full@line \leftmargin \z@
  \itemindent 2.5em %\parindent  %ajw
  \labelsep 1em \labelwidth \z@ \listparindent\parindent}  %ajw 
  \item[{\reset@font\sc #1\ #2.}]}
\def\@opargbeginexample#1#2#3{
 \list{}{\topsep \full@line
 \itemindent 2.5em %\parindent  %ajw
 \leftmargin\z@\labelsep 1em\labelwidth\z@\listparindent\parindent}  %ajw
 \item[\hskip \labelsep{\reset@font\sc #1\ #2\ {\reset@font\rm (#3).}}]}
\def\@endexample{\endlist\par\@endpefalse}  %ajw
\def\@exmplcounter#1{\noexpand\arabic{#1}}
\def\@exmplcountersep{.}
%
%
\def\@exmplstar#1#2{%\refstepcounter{#1}
\@ifnextchar[{\@yexmplstar{#1}{#2}}{\@xexmplstar{#1}{#2}}}

\def\@xexmplstar#1#2{\@beginexmplstar{#2}
{\csname the#1\endcsname}\ignorespaces}
\def\@yexmplstar#1#2[#3]{\@opargbeginexmplstar{#2}{\csname
       the#1\endcsname}{#3}\ignorespaces}

%DEFAULT VALUES
\def\@exmplstarcounter#1{{}}
\def\@exmplstarcountersep{{}}
\def\@beginexmplstar#1#2{%
  \list{}{\topsep \full@line \leftmargin \z@
  \itemindent 2.5em %\parindent  %ajw
  \labelsep 1em \labelwidth \z@ \listparindent\parindent}  %ajw
  \item[{\reset@font\sc #1.}]}
\def\@opargbeginexmplstar#1#2#3{%
 \list{}{\topsep \full@line
 \itemindent 2.5em %\parindent  %ajw
 \leftmargin\z@\labelsep 1em\labelwidth\z@\listparindent\parindent}  %ajw
 \item[\hskip \labelsep{\reset@font\sc #1\ {\reset@font\rm (#3).}}]}
\def\@endexmplstar{\endlist\par\@endpefalse}  %ajw
%

% Unnumbered Examples, etc; these are exactly the same as \newtheorem, 
% except that the body is in roman and they are unnumbered. %ajw
% \newack now called \newunnumbered

\def\newunnumbered#1{\@ifnextchar[{\@oack{#1}}{\@nack{#1}}}

\def\@nack#1#2{%
\@ifnextchar[{\@xnack{#1}{#2}}{\@ynack{#1}{#2}}}

\def\@xnack#1#2[#3]{\expandafter\@ifdefinable\csname #1\endcsname
{%\@definecounter{#1}\@addtoreset{#1}{#3}%
%\expandafter\xdef\csname the#1\endcsname{\expandafter\noexpand
%  \csname the#3\endcsname \@ackcountersep \@ackcounter{#1}}%
\global\@namedef{#1}{\@ack{#1}{#2}}\global\@namedef{end#1}{\@endack}}}

\def\@ynack#1#2{\expandafter\@ifdefinable\csname #1\endcsname
{%\@definecounter{#1}%
%\expandafter\xdef\csname the#1\endcsname{\@ackcounter{#1}}%
\global\@namedef{#1}{\@ack{#1}{#2}}\global\@namedef{end#1}{\@endack}}}

\def\@oack#1[#2]#3{\expandafter\@ifdefinable\csname #1\endcsname
  {\global\@namedef{the#1}{\@nameuse{the#2}}%
\global\@namedef{#1}{\@ack{#2}{#3}}%
\global\@namedef{end#1}{\@endack}}}

\def\@ack#1#2{%\refstepcounter{#1}
\@ifnextchar[{\@yack{#1}{#2}}{\@xack{#1}{#2}}}

\def\@xack#1#2{\@beginack{#2}{\csname the#1\endcsname}\ignorespaces}
\def\@yack#1#2[#3]{\@opargbeginack{#2}{\csname
       the#1\endcsname}{#3}\ignorespaces}

%DEFAULT VALUES
\def\@ackcounter#1{{}}
\def\@ackcountersep{{}}
\def\@beginack#1#2{%
  \list{}{\topsep \full@line \leftmargin \z@
  \itemindent 2.5em %\parindent  %ajw
  \labelsep 1em \labelwidth \z@ \listparindent\parindent}  %ajw
  \item[{\reset@font\sc #1.}]}
\def\@opargbeginack#1#2#3{%
 \list{}{\topsep \full@line
 \itemindent 2.5em %\parindent  %ajw
 \leftmargin\z@\labelsep 1em\labelwidth\z@\listparindent\parindent}  %ajw
 \item[\hskip \labelsep{\reset@font\sc #1\ {\reset@font\rm (#3).}}]}
\def\@endack{\endlist\par\@endpefalse}  %ajw
%
% PROOF
%
\def\proof{\@ifnextchar[{\@oprf}{\@nprf}}
\def\@nprf{%
  \list{}{\topsep \full@line \leftmargin \z@
  \itemindent 2.5em %\parindent  %ajw
  \labelsep 1em \labelwidth \z@ \listparindent\parindent}  %ajw
  \item[{\reset@font\it Proof.}]}
\def\@oprf[#1]{%
  \list{}{\topsep \full@line \leftmargin \z@
  \itemindent 2.5em %\parindent  %ajw
  \labelsep 1em \labelwidth \z@ \listparindent\parindent}  %ajw 
  \item[{\reset@font\it Proof\ #1.}]}
\def\endproof{\endlist\par\@endpefalse}  %ajw
%
%
% NOTE ADDED IN PROOF
%
\def\noteinproof{%
  \list{}{\topsep \full@line \leftmargin \z@
  \itemindent 2.5em  %ajw
  \labelsep 1em\labelwidth\z@\listparindent\parindent\reset@font\footnotesize}  %ajw 
  \item[{\reset@font\footnotesize\sc Note added in proof.}]}
\def\endnoteinproof{\endlist\par\@endpefalse}  %ajw
%
%
% TITLEPAGE
%
\def\titlepage{\@restonecolfalse\if@twocolumn\@restonecoltrue\onecolumn
     \else \newpage \fi \thispagestyle{title}\c@page\z@}
\def\endtitlepage{\global\let \@makefntext\normal@makefntext
\if@restonecol\twocolumn \else \newpage \fi}

% ARRAY AND TABULAR
%
\arraycolsep 5pt     % Half the space between columns in an array environment.
\tabcolsep 6pt       % Half the space between columns in a tabular environment.
\arrayrulewidth .4pt % Width of rules in array and tabular environment.
\doublerulesep 1.5pt % Space between adjacent rules in array or tabular env.

%\renewcommand{\arraystretch}{1}

\expandafter \def\csname tabular*\endcsname #1{\def\@halignto{to 
#1}\@tabular}


\def\tabular{\def\@halignto{}
 \doublerulesep \z@
  \def\hline{\noalign{\ifnum0=`}\fi
  \vskip 4.5pt
   \hrule \@height \arrayrulewidth 
%   \hrule width \textwidth \@height \arrayrulewidth
  \vskip 4.5pt
  \futurelet \@tempa\@xhline}
 \def\@xhline{\ifx\@tempa\hline
   \vskip -9pt
   \vskip \doublerulesep
  \fi
  \ifnum0=`{\fi}}
  \def\@arrayrule{\@addtopreamble{\hskip -.5\arrayrulewidth
%                                  \vrule \@width \arrayrulewidth
                                   \hskip .5\arrayrulewidth}}
\@tabular
}
%
\let \oldtabular \tabular
%this is to preserve the old tabular environment in case it is needed
\let \endoldtabular \endtabular
 
\def\tabular{\def\@halignto{to \textwidth}
 \doublerulesep \z@
  \def\hline{\noalign{\ifnum0=`}\fi
  \vskip 4.5pt
   \hrule \@height \arrayrulewidth 
%   \hrule width \textwidth \@height \arrayrulewidth
  \vskip 4.5pt
  \futurelet \@tempa\@xhline}
 \def\@xhline{\ifx\@tempa\hline
   \vskip -9pt
   \vskip \doublerulesep
  \fi
  \ifnum0=`{\fi}}
  \def\@arrayrule{\@addtopreamble{\hskip -.5\arrayrulewidth
%                                  \vrule \@width \arrayrulewidth
                                   \hskip .5\arrayrulewidth}}
\tabskip=\tabcolsep plus 1fil\@tabular}
% this fixes tabular
%things so that they are full out l and r; the \tabskip setting is
% to put tabskip before the first column. ggw


% the following is to adjust the intercolumn spacing to put in 
% enough stretch. ggw
\def\@tabarray{\@ifnextchar[{\@tarray}{\@ttarray}}
\def\@tarray[#1]#2{\t@barray[#1]{@{\tabskip=2\tabcolsep plus 3pt} #2}}
\def\@ttarray#1{\t@barray[c]{@{\tabskip=2\tabcolsep plus 3pt} #1}}

\def\t@barray[#1]#2{\setbox\@arstrutbox=\hbox{\vrule 
     height\arraystretch \ht\strutbox
     depth\arraystretch \dp\strutbox
     width\z@}\@mkpream{#2}\edef\@preamble{\halign \noexpand\@halignto
\bgroup \tabskip\z@ \@arstrut \@preamble \tabskip=\tabcolsep plus 1fil \cr}%
\let\@startpbox\@@startpbox \let\@endpbox\@@endpbox
  \if #1t\vtop \else \if#1b\vbox \else \vcenter \fi\fi
  \bgroup \let\par\relax
  \let\@sharp##\let\protect\relax \lineskip\z@\baselineskip\z@\@preamble}

% TABBING
%
\tabbingsep \labelsep   % Space used by the \' command.  (See LaTeX manual.)

% MINIPAGE
%
\skip\@mpfootins = \skip\footins

% FRAMEBOX
%
\fboxsep = 3pt    
% Space left between box and text by \fbox and \framebox.
\fboxrule = \arrayrulewidth
 % Width of rules in box made by \fbox and \framebox.


%  ****************************************
%  *              SECTIONS                *
%  ****************************************
%
\newcounter{part}
\newcounter{section}
\newcounter{subsection}[section]
\newcounter{subsubsection}[subsection]
\newcounter{paragraph}[subsubsection]
\newcounter{subparagraph}[paragraph]

\def\thepart          {\arabic{part}}
\def\thesection       {\arabic{section}}
\def\thesubsection    {\thesection.\arabic{subsection}}
\def\thesubsubsection {\thesubsection.\arabic{subsubsection}}
\def\theparagraph     {\thesubsubsection.\arabic{paragraph}}
\def\thesubparagraph  {\theparagraph.\arabic{subparagraph}}


%  ****************************************
%  *         TABLE OF CONTENTS, ETC.      *
%  ****************************************
%
\def\@pnumwidth{1.55em}
\def\@tocrmarg {2.55em}
\def\@dotsep{4.5}
\setcounter{tocdepth}{1}

\def\@undottedtocline#1#2#3#4#5{\ifnum #1>\c@tocdepth
  \else
   \vskip \z@ plus .2pt
   {\hangindent #2\relax
    \rightskip \@tocrmarg
    \parfillskip -\rightskip
    \parindent #2\relax
    \@afterindenttrue
    \interlinepenalty\@M
    \leavevmode
    \@tempdima #3\relax
    #4\nobreak
    \hfill \nobreak
    \hbox to\@pnumwidth{\hfil\reset@font\rm \ }\par}\fi}

% TABLEOFCONTENTS
%
\def\tableofcontents{\@restonecolfalse
  \if@twocolumn\@restonecoltrue\onecolumn\fi
  \section*{Contents}
  \@starttoc{toc}
  \if@restonecol\twocolumn\fi
  \par\vspace{\full@line}}

\def\l@part#1#2{\addpenalty{-\@highpenalty}
 \addvspace{2.25em plus 1pt}
 \begingroup
  \parindent \z@ \rightskip \@pnumwidth
  \parfillskip -\@pnumwidth
  {\reset@font\normalsize\rm
   \leavevmode
   \hspace*{3pc}
   #1\hfil \hbox to\@pnumwidth{\hss #2}}\par
  \nobreak
  \global\@nobreaktrue
  \everypar{\global\@nobreakfalse\everypar{}}%
 \endgroup
}
\def\l@section#1#2{\addpenalty{\@secpenalty}
 \@tempdima 1.5em
 \begingroup
  \parindent \z@ \rightskip \@pnumwidth
  \parfillskip -\@pnumwidth
  \reset@font\rm\leavevmode
  \advance\leftskip\@tempdima
  \hskip -\leftskip
  #1\nobreak\hfil \nobreak\hbox to\@pnumwidth{\hss #2}\par
 \endgroup
}
\def\l@subsection{\@undottedtocline{2}{1.5em}{2.3em}}
\def\l@subsubsection{\@undottedtocline{3}{3.8em}{3.2em}}
\def\l@paragraph{\@undottedtocline{4}{7.0em}{4.1em}}
\def\l@subparagraph{\@undottedtocline{5}{10em}{5em}}

% LIST OF FIGURES
%
\def\listoffigures{\@restonecolfalse
 \if@twocolumn\@restonecoltrue\onecolumn\fi
 \section*{List of Figures\@mkboth{List of Figures}{List of Figures}}
 \@starttoc{lof}
 \if@restonecol\twocolumn\fi
}
\def\l@figure{\@undottedtocline{1}{1.5em}{2.3em}}

% LIST OF TABLES
%
\def\listoftables{\@restonecolfalse
 \if@twocolumn\@restonecoltrue\onecolumn\fi
 \section*{List of Tables\@mkboth{List of Tables}{List of Tables}}
 \@starttoc{lot}
 \if@restonecol\twocolumn\fi
}
\let\l@table\l@figure
%
%  ****************************************
%  *             BIBLIOGRAPHY             *
%  ****************************************
%
% keep the comma roman
\def\@citex[#1]#2{\if@filesw\immediate\write\@auxout{\string\citation{#2}}\fi
  \def\@citea{}\@cite{\@for\@citeb:=#2\do
    {\@citea\def\@citea{{\reset@font\rm ,}\penalty\@m\ }\@ifundefined 
       % on this line
       {b@\@citeb}{{\reset@font\bf ?}\@warning
       {Citation `\@citeb' on page \thepage \space undefined}}%
\hbox{\csname b@\@citeb\endcsname}}}{#1}}

% change the citations to bold face:
%\def\@cite#1#2{[{\reset@font\bf {#1\if@tempswa , #2\fi}}]}
 \def\@cite#1#2{[{{\reset@font\bf #1\if@tempswa \reset@font\rm, #2\fi}}]}
%
\let\bibliobbb=\relax
%
\def\thebibliography#1{%
%%MR  \ifoldfss
%%MR%    \ifCUPmtlplainloaded 
%%MR      \textfont\msbfam=\ninemsb
%%MR%    \else
%%MR%      \textfont\msbfam=\ninemsb
%%MR%    \fi
%%MR  \fi%
  \bibliobbb
  \def\bibname{\def\and{{\reset@font\rm  and} }\reset@font\sc}
\section*{References}
 \addcontentsline{toc}{section}{References}
 \list{{\reset@font\bf \arabic{enumi}.\ }}{%
         \setbox\@tempboxa=\hbox{#1.\ }%
         \labelwidth=\wd\@tempboxa
%        \labelwidth 24pt
         \labelsep \z@
         \leftmargin 30pt 
         \itemsep 0pt 
         \itemindent \z@ 
           \advance\itemindent -\leftmargin
           \advance\itemindent \labelwidth 
         \usecounter{enumi} 
         \let\makelabel=\makeRRlabel 
}
 \reset@font\small \parindent\z@
 \parskip\z@ plus .1pt\relax
 \def\newblock{\hskip .11em plus .33em minus .07em}
 \sloppy\clubpenalty4000\widowpenalty4000
 \sfcode`\.=1000\relax
}
%
\let\endthebibliography=\endlist
\def\@biblabel#1{\reset@font\bf #1\ }
%
%
%  ****************************************
%  *              THE INDEX               *
%  ****************************************
%
\newif\if@restonecol
\def\theindex{\section*{Index}
    \addcontentsline{toc}{section}{Index}
    \reset@font\footnotesize
    \parindent\z@
    \parskip\z@ plus .1pt\relax
    \let\item\@idxitem}
\def\@idxitem{\par\hangindent 1pc}
\def\subitem {\par\hangindent 1pc \hspace*{1pc}}
\def\subsubitem{\par\hangindent 1pc\hspace*{1pc}}
\def\endtheindex{\if@restonecol\onecolumn\else\clearpage\fi}
\def\indexspace{\par\vskip\baselineskip \relax}


%  ****************************************
%  *             FOOTNOTES                *
%  ****************************************
%
%\def\footnoterule{\kern-3\p@ 
%\hrule width .4\columnwidth height \z@ \kern %3\p@}

\def\normal@footnoterule{\kern-3\p@ 
\hrule width \textwidth height .5pt \kern 3\p@}
\def\title@footnoterule{\kern-3\p@ 
\hrule width \textwidth height \z@ \kern 3\p@}
\let\footnoterule\normal@footnoterule

\long\def\normal@makefntext#1{\parindent 1em\noindent
            \hbox to 1.5em{\hss$^{\@thefnmark}$}\hspace{0.5em}%
                    \reset@font\rm  #1}%\rm inserted for nfss: ggw
\long\def\title@makefntext#1{\centering \parindent 1em\noindent
            $^{\@thefnmark}$\hspace{0.5em}\reset@font\rm  #1}%
                            %\rm inserted for nfss: ggw
\let\@makefntext\normal@makefntext

\def\@makefnmark{\hbox to 0pt{$^{\@thefnmark}$\hss}}

%\long\def\@makefntext#1{\@setpar{\@@par\@tempdima \hsize
%  \advance\@tempdima-\@footindent
%  \parshape \@ne \@footindent \@tempdima}\par
%  \noindent \hbox to \z@{\hss$^{\@thefnmark}$\ }#1}
%
\renewcommand{\thefootnote}{\mbox{$\fnsymbol{footnote}$}}
\@addtoreset{footnote}{page}

\def\@fnsymbol#1{\ifcase#1\or \dagger\or \ddagger\or
   \mathchar "278\or \mathchar "27B\or \|\or **\or \dagger\dagger
   \or \ddagger\ddagger \else\@ctrerr\fi\relax}


%  ****************************************
%  *         FIGURES AND TABLES           *
%  ****************************************
%
\setcounter{topnumber}{2}
\def\topfraction{.9}
\setcounter{bottomnumber}{1}
\def\bottomfraction{.9}
\setcounter{totalnumber}{3}
\def\textfraction{.1}
\def\floatpagefraction{.75}
\setcounter{dbltopnumber}{2}
\def\dbltopfraction{.9}
\def\dblfloatpagefraction{.75}
%
\long\def\@makecaption#1#2{%
  \setbox\@tempboxa=\hbox{#2}%
  \vskip \half@line
  \raggedright\sloppy #1%
    \ifdim\wd\@tempboxa>0pt%
      .\enskip #2
    \else
    \fi
    \par
}
%
% TABLE
%
\newcounter{table}
\def\thetable{\@arabic\c@table}
\def\fps@table{tbp}
\def\ftype@table{1}
\def\ext@table{lot}
\def\fnum@table{Table \thetable}
%
\def\fstyle@table{\reset@font\footnotesize\rm}
\def\fjust@table{\centering}
%
\def\table{\@float{table}}% \fjust@table\fstyle@table
\let\endtable\end@float
\@namedef{table*}{\@dblfloat{table}}
\@namedef{endtable*}{\end@dblfloat}

\def\fcapjust@table{\centering\sloppy}
\def\fcapsize@table{\reset@font\footnotesize\sc}
\def\fcapstyle@table{\reset@font\footnotesize\it}
%
% FIGURE
%
\newcounter{figure}
\def\thefigure{\@arabic\c@figure}
\def\fps@figure{tbp}
\def\ftype@figure{2}
\def\ext@figure{lof}
\def\fnum@figure{Fig.\ \thefigure}
\def\figure{\@float{figure}}
\let\endfigure\end@float
\@namedef{figure*}{\@dblfloat{figure}}
\@namedef{endfigure*}{\end@dblfloat}
\def\fstyle@figure{\reset@font\footnotesize\rm}
\def\fjust@figure{\centering}

\def\fcapjust@figure{\centering\sloppy}
\def\fcapsize@figure{\reset@font\footnotesize\sc}
\def\fcapstyle@figure{\reset@font\footnotesize\rm}
%
% stuff for different style float captions
%
\newif\ifwide@float
\wide@floatfalse

\long\def\@caption#1[#2]#3{\addcontentsline{\csname ext@#1\endcsname}{#1}%
 {\protect\numberline{\csname the#1\endcsname}%
 {\ignorespaces #2}}\par
 \begingroup
  \ifwide@float\@parboxrestore\else\@myparboxrestore\fi
  \@makecaption{\csname fcapjust@#1\endcsname
                \csname fcapsize@#1\endcsname
                \csname fnum@#1\endcsname}%
               {\csname fcapstyle@#1\endcsname \ignorespaces #3}\par
 \endgroup
}
\def\@xfloat#1[#2]{%
 \ifhmode \@bsphack\@floatpenalty-\@Mii \else \@floatpenalty-\@Miii\fi
 \def\@captype{#1}%
 \ifinner \@parmoderr\@floatpenalty\z@
 \else \@next\@currbox\@freelist{\@tempcnta\csname ftype@#1\endcsname
  \multiply\@tempcnta\@xxxii\advance\@tempcnta\sixt@@n
  \@tfor \@tempa :=#2\do
   {\if\@tempa h\advance\@tempcnta \@ne\fi
    \if\@tempa t\advance\@tempcnta \tw@\fi
    \if\@tempa b\advance\@tempcnta 4\relax\fi
    \if\@tempa p\advance\@tempcnta 8\relax\fi
   }\global\count\@currbox\@tempcnta}\@fltovf
 \fi
 \global\setbox\@currbox\vbox\bgroup
 \boxmaxdepth\z@
 \csname fstyle@#1\endcsname
 \ifwide@float \hsize\textwidth \linewidth\textwidth
  \@parboxrestore
 \else \hsize\textwidth \linewidth\textwidth
  \@parboxrestore
%\hsize\columnwidth \addtolength{\hsize}{-2pc} \@rightskip 2pc
%                \@myparboxrestore
 \fi
 \csname fjust@#1\endcsname
}
\def\@myarrayparboxrestore{\let\par\@@par
 \let\-\@dischyph
 \let\'\@acci \let\`\@accii \let\=\@acciii
 \parindent\z@
 \everypar{}\linewidth\hsize
 \@totalleftmargin\z@ \leftskip\@leftskip
 \rightskip\@rightskip
 \parfillskip\@flushglue \lineskip\normallineskip
 \baselineskip\normalbaselineskip\sloppy
}
\def\@myparboxrestore{\@myarrayparboxrestore\let\\=\@normalcr}
%
% stuff for wide floats
%
\def\@dblfloat{\wide@floattrue\@float}
\def\end@dblfloat{\if@twocolumn\egroup
 \ifnum\@floatpenalty <\z@ \@cons\@dbldeferlist\@currbox\fi
 \ifnum \@floatpenalty =-\@Mii \@esphack\fi\else\end@float\fi
 \wide@floatfalse
}
%
%  ****************************************
%  *         REF and PAGEREF              *
%  ****************************************
%
\def\ref#1{\@ifundefined{r@#1}{{\reset@font\bf ??}\@warning
   {Reference `#1' on page \thepage \space 
    undefined}}{\edef\@tempa{\@nameuse{r@#1}}\expandafter
    \@car\@tempa \@nil\null}}%\rm inserted: ggw (and removed: maw)

\def\pageref#1{\@ifundefined{r@#1}{{\reset@font\bf ??}\@warning
   {Reference `#1' on page \thepage \space 
    undefined}}{\edef\@tempa{\@nameuse{r@#1}}\expandafter
    \@cdr\@tempa\@nil\null}}


%
%  ****************************************
%  *           CUP specials               *
%  ****************************************
%
\def\author@tabular{\def\@halignto{}\@authortable}
\let\endauthor@tabular=\endtabular
\def\author@tabularcr{{\ifnum0=`}\fi
 \@xtabularcr[4pt]\reset@font\small\it\ignorespaces}
\def\author@tabularcrnospace{{\ifnum0=`}\fi
 \@xtabularcr[-2pt]\reset@font\small\it\ignorespaces}
\def\@authortable{\leavevmode \hbox \bgroup $\let\@acol\@tabacol
 \let\@classz\@tabclassz
 \let\@classiv\@tabclassiv
 \let\\\author@tabularcr
 \let\nextaddress\author@tabularcrnospace 
 \@tabarray}

\def\long@rule{\par\noindent\rule{\textwidth}
{\arrayrulewidth}\par\noindent}
\def\short@rule{\par\noindent\rule{27pc}
{\arrayrulewidth}\par\noindent}
\def\top@eightrule{\par%
  \rule{27pc}{\arrayrulewidth}\vspace{4pt}\par\noindent}
\def\bottom@eightrule{\par\noindent%
  \vspace{-1pt}\rule{27pc}{\arrayrulewidth}\par\noindent}

\@addtoreset{equation}{section}
\def\theequation{\thesection.\arabic{equation}}

\let\acknowledgment\acknowledgement

\def\acknowledgements{\reset@font\rm  
 \topsep 18pt plus 6pt minus 3pt\trivlist  % same as subsection  %ajw
 \item[\hskip \labelsep{\reset@font\sc \hspace{\parindent}Acknowledgements.%
 \hspace{0.5em}}]}
\def\endacknowledgements{\endtrivlist}


%  ****************************************
%  *            MISCELLANEOUS             *
%  ****************************************
%
% DATE
%
\def\today{\number\day\
 \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 \ \number\year}


%  ****************************************
%  *           INITIALIZATION             *
%  ****************************************
%
\newif\ifCUPmtlplainloaded
\ifx\CUP@mtlplain@loaded\undefined
\else
  \global\CUPmtlplainloadedtrue
  \input lmssym
  \fin@ltrue
\fi
%
\ps@headings                % `headings' page style
\pagenumbering{arabic}      % Arabic page numbers
\onecolumn                  % Switch to \onecolumn and disable \twocolumn.
\let\onecolumn=\relax
\def\twocolumn{\typeout{Two column mode not available with LMS style.}}
%
\flushbottom
\frenchspacing
