%%%%%%%%%% espcrc2.sty %%%%%%%%%%
% C(amera) R(eady) C(opy) document-style option. (two-column format).
% Version 2.7: 19 January 1999
% To be used with LaTeX version 2.09 (14 January 1992 or later), or LaTeX2e.
%
% $Id: espcrc2.sty 2.8 2000/07/24 09:12:51 spepping Exp spepping $
%
% Copyright (C) 1992 by Elsevier Science Publishers. All rights reserved.
%
% IMPORTANT NOTICE:
%
% You are not allowed to change this file. You may however copy this file 
% to a file with a different name and then change the copy. 
% 
% You are NOT ALLOWED to distribute this file alone. You are NOT ALLOWED 
% to take money for the distribution or use of this file (or a changed 
% version) except for a nominal charge for copying etc. 
% 
% You are allowed to distribute this file under the condition that it is 
% distributed together with espcrc2.tex.
% 
% If you receive only this file from someone, complain! 
%
%
%
% Usage: \documentclass[twoside]{article}
% \usepackage{fleqn,espcrc2}
%
\def\fileversion{v2.7}
\def\filedate{19 January 1999}

\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     13mm              % No running headline, and no
\headsep        21pt              % 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@}
  {1.5\@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 \@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
    \vskip 8mm                    % 930715: 8mm white space above title
    \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{\stepcounter{address}\addressmark
  \@ifnextchar[\@markaddress\@addtoaddress}
\def\@markaddress[#1]{%
  \expandafter\xdef\csname #1\endcsname{\theaddress}%
  \@addtoaddress}
\def\@addtoaddress#1{\begingroup
  \xdef\@tempa{\theaddress}\let\\=\relax
  \def\protect{\noexpand\protect\noexpand}\xdef\@address{\@address
  \protect\addresstext{\@tempa}{#1}}\endgroup}
\def\@address{}

\def\addressmark{\@ifnextchar[\@markedaddressmark
  {\xdef\@tempb{\theaddress}\@makeadmark{\@tempb}}}
\def\@markedaddressmark[#1]{\xdef\@tempb{\csname #1\endcsname}%
  \@makeadmark{\@tempb}}

\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}

% PAGE STYLES
\def\ps@crcplain{\let\@mkboth\@gobbletwo
     \def\@oddhead{\reset@font{\sl\rightmark}\hfil \rm\thepage}%
     \def\@evenhead{\reset@font\rm \thepage\hfil\sl\leftmark}%
     \let\@oddfoot\@empty
     \let\@evenfoot\@oddfoot}

% INITIALIZATION
% \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
\ps@crcplain                    % modified 'plain' page style
