%%%%%%%%%% espcrc2.sty %%%%%%%%%%
% C(amera) R(eady) C(opy) document-style option. (two-column format).
% Version 2.0: 5 May 1992
% To be used with LaTeX version 2.09 (14 January 1992).
%
%
% Copyright (C) 1992 by ESP. All rights reserved.
%
% IMPORTANT NOTICE:
%
% You are NOT allowed to distribute or change this file.
% Error reports in case of UNCHANGED versions to
%
%   Dr. Nico A.F.M. Poppelier
%   Elsevier Science Publishers
%   APD, R&D Department
%
%
% Usage: \documentstyle[twoside,espcrc2]{article}
%
\def\fileversion{v2.0}
\def\filedate{5 May 1992}

\typeout{Document style option `espcrc2' \fileversion \space\space
         <\filedate>}

% SIDE MARGINS:
\oddsidemargin  -4mm              % Left margin on odd-numbered pages.
\evensidemargin  4mm              % Left margin on even-numbered pages.

% VERTICAL SPACING:
\topmargin      16mm              % Nominal distance from top of page to top
                                  % of box containing running head.
\headheight      0mm              % No running headline, and no
\headsep         0mm              % space between running headline and text.
\footskip        30pt             % Baseline-baseline distance between
                                  % running footline and last line of text.

% DIMENSION OF TEXT:
\textheight 202mm                 % Height of text part of page
\textwidth 160mm                  % Width of text part of page, i.e of line

\columnsep 10mm                   % Horizontal space between columns
\columnseprule 0pt                % No vertical rule between columns

% PARAGRAPHING
\parskip 0pt                      % No extra vertical space between paragraphs.
\parindent 1em                    % Width of paragraph indentation.

% SECTIONAL UNITS:
\newdimen\@bls                    % \@b(ase)l(ine)s(kip)
\@bls=\baselineskip               % \@bls ~= \baselineskip for \normalsize
\advance\@bls -1ex                % (fudge term)
\newdimen\@eps                    %
\@eps=0.0001pt                    % \eps = very small positive quantity

\def\section{\@startsection{section}{1}{\z@}
  {2\@bls plus 0.5\@bls}{1\@bls}{\normalsize\bf}}
\def\subsection{\@startsection{subsection}{2}{\z@}
  {1\@bls plus 0.25\@bls}{\@eps}{\normalsize\bf}}
\def\subsubsection{\@startsection{subsubsection}{3}{\z@}
  {1\@bls plus 0.25\@bls}{\@eps}{\normalsize\bf}}
\def\paragraph{\@startsection{paragraph}{4}{\parindent}
  {1\@bls plus 0.25\@bls}{0.5em}{\normalsize\bf}}
\def\subparagraph{\@startsection{subparagraph}{4}{\parindent}
  {1\@bls plus 0.25\@bls}{0.5em}{\normalsize\bf}}

\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.\hskip0.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\csname #1mark\endcsname
      {#7}\addcontentsline{toc}{#1}{\ifnum #2>\c@secnumdepth \else
        \protect\numberline{\csname the#1\endcsname}\fi #7}}%
  \fi \@xsect{#5}}

% FIGURES AND TABLES
\long\def\@makefigurecaption#1#2{\vskip 10mm #1. #2\par}

\long\def\@maketablecaption#1#2{\hbox to \hsize{\parbox[t]{\hsize}
  {#1 \\ #2}}\vskip 0.3ex}

\def\fnum@figure{Figure \thefigure}
\def\figure{\let\@makecaption\@makefigurecaption \@float{figure}}
\@namedef{figure*}{\let\@makecaption\@makefigurecaption \@dblfloat{figure}}

% \def\fnum@table{Table \thetable}
\def\table{\let\@makecaption\@maketablecaption \@float{table}}
\@namedef{table*}{\let\@makecaption\@maketablecaption \@dblfloat{table}}

\floatsep 10mm plus 4pt minus 4pt % Space between adjacent floats moved
                                  % to top or bottom of text page.
\textfloatsep=\floatsep           % Space between main text and floats
                                  % at top or bottom of page.
\intextsep=\floatsep              % Space between in-text figures and
                                  % text.

% FOOTNOTE
\long\def\@makefntext#1{\parindent 1em\noindent\hbox{${}^{\@thefnmark}$}#1}

% EQUATION
\mathindent=0em

% TITLE
\def\maketitle{\begingroup        % Initialize generation of front-matter
%   \let\thanks\@gobble
    \def\thefootnote{\fnsymbol{footnote}}%
    \newpage \global\@topnum\z@
    \@maketitle \thispagestyle{plain}\@thanks
  \endgroup
  \let\maketitle\relax \let\@maketitle\relax
  \gdef\@thanks{}\let\thanks\relax
  \gdef\@address{}\gdef\@author{}\gdef\@title{}\let\address\relax}

\def\justify@on{\let\\=\@normalcr
  \leftskip\z@ \@rightskip\z@ \rightskip\@rightskip}

\newbox\fm@box                    % Box to capture front-matter in

\def\@maketitle{%                 % Actual formatting of \maketitle
  \global\setbox\fm@box=\vbox\bgroup
    \raggedright                  % Front-matter text is ragged right
    \hyphenpenalty\@M             % and is not hyphenated.
    {\Large \@title \par}         % Title set in larger font.
    \vskip\@bls                   % One line of vertical space after title.
    {\normalsize                  % each author set in the normal
     \@author \par}               % typeface size
    \vskip\@bls                   % One line of vertical space after author(s).
    \@address                     % all addresses
  \egroup
  \twocolumn[%                    % Front-matter text is over 2 columns.
    \unvbox\fm@box                % Unwrap contents of front-matter box
    \vskip\@bls                   % add 1 line of vertical space,
    \unvbox\abstract@box          % unwrap contents of abstract boxes,
    \vskip 2pc]}                  % and add 2pc of vertical space

\newcounter{address}
\def\theaddress{\alph{address}}
\def\@makeadmark#1{\hbox{$^{\rm #1}$}}

\def\address#1{\addressmark\begingroup
  \xdef\@tempa{\theaddress} \let\\=\relax
  \def\protect{\noexpand\protect\noexpand}\xdef\@address{\@address
  \protect\addresstext{\@tempa}{#1}}\endgroup}
\def\@address{}

\def\addressmark{\stepcounter{address}%
  \xdef\@tempa{\theaddress}\@makeadmark{\@tempa}}

\def\addresstext#1#2{\leavevmode \begingroup
  \raggedright \hyphenpenalty\@M \@makeadmark{#1}#2\par \endgroup
  \vskip\@bls}

% ABSTRACT:
\newbox\abstract@box              % Box to capture abstract in

\def\abstract{%
  \global\setbox\abstract@box=\vbox\bgroup
  \small\rm
  \ignorespaces}
\def\endabstract{\par \egroup}

% BIBLIOGRAPHY
\def\thebibliography#1{\section*{REFERENCES}\list{\arabic{enumi}}
  {\settowidth\labelwidth{#1}\leftmargin=1.67em
   \labelsep\leftmargin \advance\labelsep-\labelwidth
   \itemsep\z@ \parsep\z@
   \usecounter{enumi}}\def\makelabel##1{\rlap{##1}\hss}%
   \def\newblock{\hskip 0.11em plus 0.33em minus -0.07em}
   \sloppy \clubpenalty=4000 \widowpenalty=4000 \sfcode`\.=1000\relax}

% Collapse citation numbers to ranges.
\newcount\@tempcntc
\def\@citex[#1]#2{\if@filesw\immediate\write\@auxout{\string\citation{#2}}\fi
  \@tempcnta\z@\@tempcntb\m@ne\def\@citea{}\@cite{\@for\@citeb:=#2\do
    {\@ifundefined
       {b@\@citeb}{\@citeo\@tempcntb\m@ne\@citea
        \def\@citea{,\penalty\@m\ }{\bf ?}\@warning
       {Citation `\@citeb' on page \thepage \space undefined}}%
    {\setbox\z@\hbox{\global\@tempcntc0\csname b@\@citeb\endcsname\relax}%
     \ifnum\@tempcntc=\z@ \@citeo\@tempcntb\m@ne
       \@citea\def\@citea{,\penalty\@m\ }
       \hbox{\csname b@\@citeb\endcsname}%
     \else
      \advance\@tempcntb\@ne
      \ifnum\@tempcntb=\@tempcntc
      \else\advance\@tempcntb\m@ne\@citeo
      \@tempcnta\@tempcntc\@tempcntb\@tempcntc\fi\fi}}\@citeo}{#1}}

\def\@citeo{\ifnum\@tempcnta>\@tempcntb\else\@citea
  \def\@citea{,\penalty\@m\ }%
  \ifnum\@tempcnta=\@tempcntb\the\@tempcnta\else
   {\advance\@tempcnta\@ne\ifnum\@tempcnta=\@tempcntb \else \def\@citea{--}\fi
    \advance\@tempcnta\m@ne\the\@tempcnta\@citea\the\@tempcntb}\fi\fi}

% INITIALIZATION
% \ps@plain                     % 'plain' page style
% \twocolumn                    % Formatting is in 2 columns, with
\sloppy                         % paragraphs that can be loosely set,
\emergencystretch=1pc           % (with 1 pc extra for emergencies),
\flushbottom                    % and pages of equal length



