source: anuga_work/publications/anuga_2007/elsart.cls @ 5641

Last change on this file since 5641 was 5324, checked in by ole, 16 years ago

Added Elsevier's elsart document class

File size: 55.5 KB
Line 
1%%
2%% This is file `elsart.cls',
3%% generated with the docstrip utility.
4%%
5%% The original source files were:
6%%
7%% esl.dtx  (with options: `package,elsart,ONECOL,DEEPLIST')
8%%
9%% elsart.cls Copyright (C) 1994-2007 Elsevier Science
10%%
11%% This file may be distributed and/or modified under the
12%% conditions of the LaTeX Project Public License, either version 1.2
13%% of this license or (at your option) any later version.
14%% The latest version of this license is in
15%%    http://www.latex-project.org/lppl.txt
16%% and version 1.2 or later is part of all distributions of LaTeX
17%% version 1999/12/01 or later.
18%%
19\def\readRCS$#1: #2 #3 #4 #5${%
20 \def\RCSfile{#2}%
21 \def\RCSversion{#3}%
22 \def\RCSdate{#4}%
23}
24\def\@shortjnl{\relax}
25 \def\esp@fileversion{2.20}
26 \def\esp@filedate{2007/08/16}
27 \def\@journal{Elsevier} \def\@company{Elsevier}
28 \def\@issn{000-0000}
29 \def\@shortjid{elsart}
30\NeedsTeXFormat{LaTeX2e}[1995/12/01]
31\ProvidesClass{\@shortjid}[\esp@filedate, \esp@fileversion: \@journal]
32
33\newif\if@TwoColumn
34\newif\if@seceqn
35\newif\if@secthm
36\newif\if@nameyear
37\newif\if@Elproofing
38\@Elproofingfalse
39\DeclareOption{12pt}{}
40\DeclareOption{11pt}{}
41\DeclareOption{10pt}{}
42\DeclareOption{oneside}{\@twosidefalse \@mparswitchfalse}
43\DeclareOption{twoside}{\@twosidetrue  \@mparswitchtrue}
44\@twocolumnfalse
45\DeclareOption{onecolumn}{\@TwoColumnfalse}
46\DeclareOption{twocolumn}{\@TwoColumntrue}
47\newif\if@narrowdisplay
48\@narrowdisplayfalse
49\DeclareOption{narrowdisplay}{\@narrowdisplaytrue}
50\newif\if@draft\@draftfalse
51\DeclareOption{draft}{%
52  \@drafttrue
53  \overfullrule 5\p@                  % to indicate overfull boxes
54}
55\DeclareOption{final}{%
56  \@draftfalse
57  \overfullrule \z@
58}
59\let\snm\relax \let\cty\relax \let\cny\relax\let\jr\relax
60\newif\if@ussrhead \@ussrheadfalse
61\DeclareOption{ussrhead}{\@ussrheadtrue}
62\@seceqnfalse                             % Default: equation numbering is not
63\DeclareOption{seceqn}{\@seceqntrue}      % reset at beginning of each section
64\@secthmfalse
65\DeclareOption{secthm}{\@secthmtrue}
66\@nameyearfalse
67\DeclareOption{nameyear}{\@nameyeartrue}
68\def\@blstr{1}
69\DeclareOption{doublespacing}{\def\@blstr{1.7}}
70\DeclareOption{reviewcopy}{\def\@blstr{1.7}}
71\newif\if@symbold\@symboldfalse
72\DeclareOption{symbold}{\@symboldtrue}
73\newif\if@amsthm\@amsthmfalse
74\DeclareOption{amsthm}{\@amsthmtrue}
75 \ExecuteOptions{oneside}
76 \ExecuteOptions{onecolumn,final}
77\ProcessOptions
78\if@TwoColumn\@narrowdisplayfalse\fi
79\if@draft\else\@narrowdisplayfalse\fi
80\def\@pagenumprefix{}
81\def\author@font{}
82\def\partname{Part}
83\def\appendixname{Appendix}
84\def\contentsname{Contents}
85\def\listfigurename{List of Figures}
86\def\listtablename{List of Tables}
87\def\refname{References}
88\def\indexname{Index}
89\def\figurename{Fig.}
90\def\tablename{Table}
91\def\abstractname{Abstract}
92\lineskip 1\p@
93\normallineskip 1\p@
94\def\baselinestretch{1}
95\frenchspacing
96\def\cropwidth{297mm}
97\def\cropheight{210mm}
98\def\cropleft{0mm}
99\def\croptop{0mm}
100\def\FullCopyrightText{}
101\def\copyrightholder#1{\def\@copyrightholder{#1}}
102\newdimen\@frontmatterwidth
103\def\@overtitleskip{69\p@}
104\def\@overhistoryskip{\z@}
105\def\@undertitleskip{\z@}
106\def\@overkeywordskip{12\p@}
107\def\@overabstractskip{8\p@}
108\def\@overcaptionskip{8\p@}
109\def\@preabstractskip{24\p@ \@plus 6\p@ \@minus 3\p@}
110\def\@belowfmskip{18\p@}
111\def\@bibliosize{\small}
112\def\@historysize{\small}
113\def\@keywordsize{\small}
114\def\@overaddressskip{2pt}
115\def\@titlesize{\Large\bfseries}
116\def\@bibitemsep{0.3\@bls \@plus 0.1\@bls \@minus 0.1\@bls}
117\def\@authorsize{\large}
118\def\@keywordheading{{\it Key words: \ }}
119\def\@addressstyle{\small\itshape}
120\def\@captionsize{\small}
121\def\@tablecaptionsize{\@captionsize}
122\def\@figurecaptionsize{\@captionsize}
123\def\@tablesize{\small}
124\def\@keywordwidth{.8\textwidth}
125\def\@abstractwidth{.8\textwidth}
126\def\@fignumfont#1{#1}
127\def\@secnumfont#1{\upshape}
128\def\@catchlinesize{\footnotesize}
129\def\@runheadsize{\normalsize}
130\def\@narrowdisplaywidth{259pt}
131\def\etal{et al.}
132\def\AND{\&}
133\def\@Colofonheight{1cm}
134\def\@abstractsize{\fontsize{\@ixpt}{11pt}\selectfont}
135\def\@articletypesize{\fontsize{\@xiiipt}{13pt}\selectfont}
136\def\normalsize{\@setfontsize\normalsize\@xiipt{14.5}%
137\def\@ptsize{2}
138\abovedisplayskip 12\p@ \@plus 2\p@ \@minus 2\p@%
139\belowdisplayskip \abovedisplayskip
140\abovedisplayshortskip \z@ \@plus 2\p@%
141\belowdisplayshortskip 3.5\p@ \@plus 2\p@ \@minus 2\p@
142\let\@listi\@listI}
143\def\small{\@setfontsize\small\@xipt{13.6}%
144\abovedisplayskip 11\p@ \@plus3\p@ minus6\p@
145\belowdisplayskip \abovedisplayskip
146\abovedisplayshortskip  \z@ \@plus3\p@
147\belowdisplayshortskip  6.5\p@ \@plus3.5\p@ minus3\p@
148\def\@listi{\leftmargin\leftmargini
149 \parsep 4.5\p@ \@plus2\p@ minus\p@ \itemsep \parsep
150            \topsep 9\p@ \@plus3\p@ minus5\p@}}
151\let\footnotesize=\small
152\let\@xviiipt\@xviipt
153\def\scriptsize{\@setfontsize\scriptsize\@viiipt{9.5}}
154\def\tiny{\@setfontsize\tiny\@vipt{7}}
155\def\large{\@setfontsize\large\@xivpt{18}}
156\def\Large{\@setfontsize\Large\@xviipt{22}}
157\def\LARGE{\@setfontsize\LARGE\@xxpt{22}}
158\def\huge{\@setfontsize\huge\@xxvpt{27}}
159\let\Huge=\huge
160\normalsize                                % Choose the normalsize font.
161\newdimen\@bls                              % Several dimensions are
162\@bls=\baselineskip                         % expressed in terms of this.
163\if@twoside                 % Values for two-sided printing:
164   \oddsidemargin   20\p@    %   Left margin on odd-numbered pages.
165   \evensidemargin  20\p@    %   Left margin on even-numbered pages.
166   \marginparwidth  10\p@    %   \@Width of marginal notes.
167\else                       % Values for one-sided printing:
168   \oddsidemargin   20\p@    %   Left margin on odd-numbered pages.
169   \evensidemargin  20\p@    %   Left margin on even-numbered pages.
170   \marginparwidth   2pc
171\fi
172\marginparsep 20\p@          % Horizontal space between outer margin and
173                            % marginal note
174\topmargin \z@           %    Nominal distance from top of page to top of
175                         %    box containing running head.
176\headheight  \z@         %    \@Height of box containing running head.
177\headsep     \z@         %    Space between running head and text.
178 \footskip 40\p@
179\bigskipamount=\@bls \@plus 0.3\@bls \@minus 0.3\@bls % 1/1 line
180\medskipamount=0.5\bigskipamount                  % 1/2 line
181\smallskipamount=0.25\bigskipamount               % 1/4 line
182\@tempdima=651pt \advance\@tempdima -\topskip \@tempcnta=\@tempdima
183\@tempdimb=\@blstr\@bls \@tempcntb=\@tempdimb
184\divide\@tempcnta\@tempcntb
185\textheight\@tempdimb \multiply\textheight\@tempcnta
186\advance\textheight\topskip
187\textwidth 33pc              % \@Width of text line.
188                             % For two-column mode:
189 \columnsep 2pc               %   Space between columns
190\columnseprule \z@           %   \@Width of rule between columns.
191 \footnotesep 8.4\p@
192\skip\footins 12\p@ \@plus  8\p@          % Space between last line of text and
193                                      % top of first footnote.
194\floatsep 8\p@ \@plus 4\p@ \@minus 2\p@ % Space between adjacent floats moved
195                                         % to top or bottom of text page.
196\textfloatsep 8\p@ \@plus 4\p@ \@minus 2\p@ % Space between main text and floats
197                                         % at top or bottom of page.
198\intextsep 8\p@ \@plus 4\p@ \@minus 2\p@ % Space between in-text figures and
199                                         % text.
200\dblfloatsep      8\p@ \@plus 4\p@ \@minus 4\p@ % Same as \floatsep for double-column
201                                         % figures in two-column mode.
202\dbltextfloatsep 12\p@ \@plus 4\p@ \@minus 4\p@ % \textfloatsep for double-column
203                                         % floats.
204\@fptop \z@ \@plus 1fil    % Stretch at top of float page/column. (Must be
205                         % \z@ \@plus ...)
206\@fpsep 8\p@ \@plus 2fil    % Space between floats on float page/column.
207\@fpbot \z@ \@plus 1fil    % Stretch at bottom of float page/column. (Must be
208                         % \z@ \@plus ... )
209\@dblfptop \z@ \@plus 1fil % Stretch at top of float page. (Must be \z@ \@plus ...)
210\@dblfpsep 8\p@ \@plus 2fil % Space between floats on float page.
211\@dblfpbot \z@ \@plus 1fil % Stretch at bottom of float page. (Must be
212                         % \z@ \@plus ... )
213\marginparpush 5\p@       % Minimum vertical separation between two marginal
214                         % notes.
215\parskip 1pc \@plus 1\p@          % Extra vertical space between paragraphs.
216\parindent \z@                     % Indentation of each paragraph.
217\newskip\eqntopsep                    % Extra vertical space, in addition to
218 \eqntopsep 12\p@ \@plus 2\p@ \@minus 2\p@ %\parskip, added above and below
219\newdimen\eqnarraycolsep            % Half the space between columns
220\eqnarraycolsep 1\p@                 % in an \eqnarray.
221\@lowpenalty   51      % Produced by \nopagebreak[1] or \nolinebreak[1]
222\@medpenalty  151      % Produced by \nopagebreak[2] or \nolinebreak[2]
223\@highpenalty 301      % Produced by \nopagebreak[3] or \nolinebreak[3]
224\@beginparpenalty -\@lowpenalty    % Before a list or paragraph environment.
225\@endparpenalty   -\@lowpenalty    % After a list or paragraph environment.
226\@itempenalty     -\@lowpenalty    % Between list items.
227\def\section{\@startsection{section}{1}{\z@}{1.5\@bls
228  \@plus .4\@bls \@minus .1\@bls}{\@bls}{\normalsize\bfseries}}
229\def\subsection{\@startsection{subsection}{2}{\z@}{\@bls
230  \@plus .3\@bls \@minus .1\@bls}{\@bls}{\normalsize\itshape}}
231\def\subsubsection{\@startsection{subsubsection}{3}{\z@}{\@bls
232  \@plus .2\@bls}{0.0001pt}{\normalsize\itshape}}
233\def\paragraph{\@startsection{paragraph}{4}{\z@}{3.25ex \@plus
234  2ex \@minus 0.2ex}{-1em}{\normalsize\bfseries}}
235\setcounter{secnumdepth}{4}
236\def\half@em{\hskip 0.5em}
237\def\lb@part{PART \thepart.\half@em}
238  \def\lb@empty@part{PART \thepart}
239\def\lb@section{\thesection.\half@em}
240  \def\lb@empty@section{\thesection}
241\def\lb@subsection{\thesubsection.\half@em}
242  \def\lb@empty@subsection{\thesubsection}
243\def\lb@subsubsection{\thesubsubsection.\half@em}
244  \def\lb@empty@subsubsection{\thesubsubsection}
245\def\lb@paragraph{\theparagraph.\half@em}
246  \def\lb@empty@paragraph{\theparagraph}
247\def\lb@subparagraph{\thesubparagraph.\half@em}
248  \def\lb@empty@subparagraph{\thesubparagraph}
249\def\head@format#1#2{#2}
250\def\head@style{\interlinepenalty\@M
251  \hyphenpenalty\@M \exhyphenpenalty\@M
252  \rightskip \z@ \@plus 0.5\hsize \relax
253  }
254\def\app@number#1{\setcounter{#1}{0}%
255  \@addtoreset{#1}{section}%
256  \@namedef{the#1}{\thesection.\arabic{#1}}}
257\def\appendix{\@ifstar{\appendix@star}{\appendix@nostar}}
258\def\appendix@nostar{%
259  \def\lb@section{\appendixname\ \thesection.\half@em}
260  \def\lb@empty@section{\appendixname\ \thesection}
261  \setcounter{section}{0}\def\thesection{\Alph{section}}%
262  \setcounter{subsection}{0}%
263  \setcounter{subsubsection}{0}%
264  \setcounter{paragraph}{0}%
265  \app@number{equation}\app@number{figure}\app@number{table}}
266\def\appendix@star{%
267  \def\lb@section{\appendixname}\let\lb@empty@section\lb@section
268  \setcounter{section}{0}\def\thesection{\Alph{section}}%
269  \setcounter{subsection}{0}%
270  \setcounter{subsubsection}{0}%
271  \setcounter{paragraph}{0}%
272  \app@number{equation}\app@number{figure}\app@number{table}}
273\def\ack{\section*{Acknowledgements}%
274  \addtocontents{toc}{\protect\vspace{6pt}}%
275  \addcontentsline{toc}{section}{Acknowledgements}%
276}
277\@namedef{ack*}{\par\vskip 3.0ex \@plus 1.0ex \@minus 1.0ex}
278\let\endack\par
279\@namedef{endack*}{\par}
280\newdimen\labelwidthi
281\newdimen\labelwidthii
282\newdimen\labelwidthiii
283\newdimen\labelwidthiv
284\def\normal@labelsep{0.5em}
285\labelsep\normal@labelsep
286\settowidth{\labelwidthi}{(iii)}
287\settowidth{\labelwidthii}{(d)}
288\settowidth{\labelwidthiii}{(iii)}
289\settowidth{\labelwidthiv}{(M)}
290\leftmargini\labelwidthi    \advance\leftmargini\labelsep
291\leftmarginii\labelwidthii  \advance\leftmarginii\labelsep
292\leftmarginiii\labelwidthiii \advance\leftmarginiii\labelsep
293\leftmarginiv\labelwidthiv  \advance\leftmarginiv\labelsep
294\def\setleftmargin#1#2{\settowidth{\@tempdima}{#2}\labelsep\normal@labelsep
295  \csname labelwidth#1\endcsname\@tempdima
296  \@tempdimb\@tempdima \advance\@tempdimb\labelsep
297  \csname leftmargin#1\endcsname\@tempdimb}
298\def\@listI{\leftmargin\leftmargini
299  \labelwidth\labelwidthi \labelsep\normal@labelsep
300  \topsep \z@ \partopsep\z@ \parsep\z@ \itemsep\z@
301  \listparindent 1em}
302\def\@listii{\leftmargin\leftmarginii
303  \labelwidth\labelwidthii \labelsep\normal@labelsep
304  \topsep\z@ \partopsep\z@ \parsep\z@ \itemsep\z@
305  \listparindent 1em}
306\def\@listiii{\leftmargin\leftmarginiii
307  \labelwidth\labelwidthiii \labelsep\normal@labelsep
308  \topsep\z@ \partopsep\z@ \parsep\z@ \itemsep\z@
309  \listparindent 1em}
310\def\@listiv{\leftmargin\leftmarginiv
311  \labelwidth\labelwidthiv \labelsep\normal@labelsep
312  \topsep\z@ \partopsep\z@ \parsep\z@ \itemsep\z@
313  \listparindent 1em}
314\let\@listi\@listI
315\@listi
316\def\left@label#1{{#1}\hss}
317\def\right@label#1{\hss\llap{#1}}
318\def\thick@label#1{\hspace\labelsep #1}
319\newcount\@maxlistdepth
320\@maxlistdepth=4
321\def\labelitemi{$\bullet$}          \def\labelitemii{$\cdot$}
322\def\labelenumi{(\theenumi)}        \def\theenumi{\arabic{enumi}}
323\def\labelenumii{(\alph{enumii})}   \def\theenumii{\theenumi\alph{enumii}}
324\def\labelenumiii{(\roman{enumiii})}\def\theenumiii{\theenumii.\roman{enumiii}}
325\def\labelenumiv{(\Alph{enumiv})}   \def\theenumiv{\theenumiii.\Alph{enumiv}}
326\def\enumerate{%
327  \ifnum \@enumdepth >\@maxlistdepth
328    \@toodeep
329  \else
330    \advance\@enumdepth \@ne
331    \edef\@enumctr{enum\romannumeral\the\@enumdepth}%
332    \list{\csname label\@enumctr\endcsname}%
333       {\usecounter{\@enumctr}
334       \let\makelabel=\right@label}
335  \fi}
336\def\itemize{%
337  \ifnum \@itemdepth >\@maxlistdepth
338    \@toodeep
339  \else
340    \advance\@itemdepth \@ne
341    \edef\@itemitem{labelitem\romannumeral\the\@itemdepth}%
342     \setleftmargin{i}{--}%
343     \setleftmargin{ii}{$\cdot$}%
344    \list{\csname\@itemitem\endcsname}%
345       {\let\makelabel\right@label}
346  \fi}
347\def\verse{\let\\=\@centercr
348  \list{}{\itemsep\z@
349  \itemindent \z@
350  \listparindent\z@
351  \rightmargin 1em
352  \leftmargin \rightmargin}\item[]}
353\let\endverse\endlist
354\def\quotation{\list{}{\itemindent\z@
355 \leftmargin 1em \rightmargin \z@
356  \parsep \z@ \@plus 1pt}\item[]}
357\let\endquotation=\endlist
358\def\quote{\list{}{\itemindent\z@
359   \leftmargin 1em \rightmargin \z@}%
360\item[]}
361\let\endquote=\endlist
362\def\descriptionlabel#1{\hspace\labelsep \bfseries #1}
363\def\description{\list{}{\labelwidth\z@
364  \leftmargin 1em \itemindent-\leftmargin
365  \let\makelabel\descriptionlabel}}
366\let\enddescription\endlist
367\def\@atfmtname{atlplain}
368\ifx\fmtname\@atfmtname
369 \def\neq{\not\nobreak\mkern -2mu =}%
370 \let\ne\neq
371\fi
372\def\operatorname#1{\mathop{\mathrm{#1}}\nolimits}
373\def\lefteqn#1{\hbox to\z@{$\displaystyle {#1}$\hss}}
374\newskip\eqnbaselineskip % Standard interline spacing in an {eqnarray}
375\jot=2\p@
376\newskip\eqnlineskip     % Minimal space between the bottom of
377                         % a line and the top of the next line.
378\eqnbaselineskip=14\p\eqnlineskip=2\p@
379\newdimen\mathindent
380\if@TwoColumn
381  \mathindent 0em
382\else
383  \mathindent 2em
384\fi
385\if@narrowdisplay
386  \def\calcmathindent{%
387    \mathindent\linewidth\relax
388    \advance\mathindent-\@narrowdisplaywidth}
389\else
390  \let\calcmathindent\relax
391\fi
392\def\[{\relax\ifmmode\@badmath
393  \else%\bgroup removed on request from BW (1993-05-17)
394  \@beginparpenalty\predisplaypenalty
395  \@endparpenalty\postdisplaypenalty
396\calcmathindent
397  \begin{trivlist}\@topsep \eqntopsep       % used by first \item
398   \@topsepadd \eqntopsep                   % used by \@endparenv
399  \item[]\leavevmode
400   \hbox to\linewidth\bgroup$ \displaystyle
401  \hskip\mathindent\bgroup\fi}
402\def\]{\relax\ifmmode \egroup $\hfil \egroup
403  \end{trivlist}% \egroup removed on request from BW (1993-05-17)
404  \else \@badmath \fi}
405\def\equation{\@beginparpenalty\predisplaypenalty
406  \@endparpenalty\postdisplaypenalty
407  \refstepcounter{equation}\trivlist
408  \@topsep \eqntopsep                      % used by first \item
409  \@topsepadd \eqntopsep                   % used by \@endparenv
410\calcmathindent
411  \item[]\leavevmode
412   \hbox to\linewidth\bgroup $ \displaystyle \hskip\mathindent\bgroup}
413\def\endequation{\egroup$\hfil \displaywidth\linewidth
414  \@eqnnum\egroup \endtrivlist}
415\def\eqnarray{%
416  \par                                               %BW
417  \noindent                                          %BW
418  \baselineskip\eqnbaselineskip\lineskip\eqnlineskip %BW
419  \lineskiplimit\eqnlineskip                         %BW
420\calcmathindent
421  \stepcounter{equation}%
422  \let\@currentlabel=\theequation
423  \global\@eqnswtrue
424  \global\@eqcnt\z@
425  \tabskip\mathindent
426  \let\\=\@eqncr
427  \abovedisplayskip\eqntopsep\ifvmode\advance\abovedisplayskip\partopsep\fi
428  \belowdisplayskip\abovedisplayskip
429  \belowdisplayshortskip\abovedisplayskip
430  \abovedisplayshortskip\abovedisplayskip
431  $$\halign to \displaywidth\bgroup\@eqnsel
432    \pre@coli$\displaystyle\tabskip\z@{##}$\post@coli
433    &\global\@eqcnt\@ne
434    \pre@colii$\displaystyle{##}$\post@colii
435    &\global\@eqcnt\tw@
436    \pre@coliii $\displaystyle\tabskip\z@{##}$\post@coliii
437    \tabskip\@centering&\llap{##}\tabskip\z@\cr
438}
439\def\endeqnarray{\@@eqncr\egroup
440 \global\advance\c@equation\m@ne$$\global\@ignoretrue }
441\def\pre@coli{\hskip\@centering}              \def\post@coli{}
442\def\pre@colii{\hskip 2\eqnarraycolsep \hfil} \def\post@colii{\hfil}
443\def\pre@coliii{\hskip 2\eqnarraycolsep}      \def\post@coliii{\hfil}
444\arraycolsep 2\p@         % Half the space between columns in array environment.
445\tabcolsep 6\p@           % idem in tabular environment.
446\def\arraystretch{1.5}   % More vertical space in tables
447\arrayrulewidth 0.4\p@    % \@Width of rules and space between adjacent
448\doublerulesep 2\p@       % rules in any of these two environments.
449\newdimen\rulepreskip \newdimen\rulepostskip
450\rulepreskip=4\p@      \rulepostskip=6\p@
451\tabbingsep \labelsep   % Space used by the \' command.  (See LaTeX{} manual.)
452\skip\@mpfootins = 6\p@ \@plus 2\p@   % Space between last line of text and
453                                  % top of first footnote.
454\fboxsep = 7\p@    % Space left between box and text by \fbox and \framebox.
455\fboxrule = 0.4\p@ % \@Width of rules in box made by \fbox and \framebox.
456\newcounter{section}
457\newcounter{subsection}[section]
458\newcounter{subsubsection}[subsection]
459\newcounter{paragraph}[subsubsection]
460\newcounter{subparagraph}[paragraph]
461\if@seceqn
462 \@addtoreset{equation}{section}
463 \def\theequation{\arabic{section}.\arabic{equation}}
464\else
465  \def\theequation{\arabic{equation}}
466\fi
467\def\thesection      {\arabic{section}}
468\def\thesubsection   {\thesection.\arabic{subsection}}
469\def\thesubsubsection{\thesubsection.\arabic{subsubsection}}
470\def\theparagraph    {\thesubsubsection.\arabic{paragraph}}
471\def\thesubparagraph {\theparagraph.\arabic{subparagraph}}
472\@addtoreset{section}{part} % reset section numbers at beginning of part
473
474\DeclareOldFontCommand{\rm}{\normalfont\rmfamily}{\mathrm}
475\DeclareOldFontCommand{\sf}{\normalfont\sffamily}{\mathsf}
476\DeclareOldFontCommand{\tt}{\normalfont\ttfamily}{\mathtt}
477\DeclareOldFontCommand{\bf}{\normalfont\bfseries}{\mathbf}
478\DeclareOldFontCommand{\it}{\normalfont\itshape}{\mathit}
479\DeclareOldFontCommand{\sl}{\normalfont\slshape}{\@nomath\sl}
480\DeclareOldFontCommand{\sc}{\normalfont\scshape}{\@nomath\sc}
481\DeclareRobustCommand*\cal{\@fontswitch\relax\mathcal}
482\DeclareRobustCommand*\mit{\@fontswitch\relax\mathnormal}
483\RequirePackage{latexsym}
484\def\qed{\relax\ifmmode\hskip2em \Box\else\unskip\nobreak\hskip1em $\Box$\fi}
485\def\proof@headerfont{\upshape\bfseries}
486\if@amsthm
487  \RequirePackage{amsthm}%
488  \def\th@plain{%
489    \thm@preskip\parskip
490    \thm@postskip\z@
491    \itshape % body font
492  }
493  \def\th@definition{%
494    \thm@preskip\parskip
495    \thm@postskip\z@
496    \normalfont % body font
497  }
498  \def\th@remark{%
499    \thm@headfont{\itshape}%
500    \normalfont % body font
501    \thm@preskip\parskip \divide\thm@preskip\tw@
502    \thm@postskip\z@
503  }
504\else\let\theoremstyle\@gobble\fi
505\newenvironment{pf}%
506  {\par\addvspace{\@bls \@plus 0.5\@bls \@minus 0.1\@bls}\noindent
507   {\bfseries\Elproofname}\enspace\ignorespaces}%
508  {\par\addvspace{\@bls \@plus 0.5\@bls \@minus 0.1\@bls}}
509\def\Elproofname{PROOF.}
510\@namedef{pf*}#1{\par\begingroup\def\Elproofname{#1}\pf\endgroup\ignorespaces}
511\expandafter\let\csname endpf*\endcsname=\endpf
512\theoremstyle{plain}
513\if@secthm
514  \newtheorem{thm}{Theorem}[section]
515  \@addtoreset{thm}{section}
516\else
517  \newtheorem{thm}{Theorem}
518\fi
519\newtheorem{cor}[thm]{Corollary}
520\newtheorem{lem}[thm]{Lemma}
521\newtheorem{claim}[thm]{Claim}
522\newtheorem{axiom}[thm]{Axiom}
523\newtheorem{conj}[thm]{Conjecture}
524\newtheorem{fact}[thm]{Fact}
525\newtheorem{hypo}[thm]{Hypothesis}
526\newtheorem{assum}[thm]{Assumption}
527\newtheorem{prop}[thm]{Proposition}
528\newtheorem{crit}[thm]{Criterion}
529\theoremstyle{definition}
530\newtheorem{defn}[thm]{Definition}
531\newtheorem{exmp}[thm]{Example}
532\newtheorem{rem}[thm]{Remark}
533\newtheorem{prob}[thm]{Problem}
534\newtheorem{prin}[thm]{Principle}
535\newtheorem{alg}{Algorithm}
536\long\def\@makealgocaption#1#2{\vskip 2ex \small
537  \hbox to \hsize{\parbox[t]{\hsize}{{\bfseries #1.} #2}}}
538\newcounter{algorithm}
539\def\thealgorithm{\@arabic\c@algorithm}
540\def\fps@algorithm{tbp}
541\def\ftype@algorithm{4}
542\def\ext@algorithm{lof}
543\def\fnum@algorithm{Algorithm \thealgorithm}
544\def\algorithm{\let\@makecaption\@makealgocaption\@float{algorithm}}
545\def\endalgorithm{\end@float}
546\newtheorem{note}{Note}
547\newtheorem{summ}{Summary}
548\newtheorem{case}{Case}
549\def\@pnumwidth{2.55em}
550\def\@tocrmarg{2.55em \@plus 5em}
551\def\@dotsep{-2.5}
552\setcounter{tocdepth}{2}
553\newcommand\listoffigures{%
554    \section*{\listfigurename
555      \@mkboth{\MakeUppercase\listfigurename}%
556              {\MakeUppercase\listfigurename}}%
557    \@starttoc{lof}%
558    }
559\newcommand*\l@figure{\@dottedtocline{1}{1.5em}{2.3em}}
560\newcommand\listoftables{%
561    \section*{\listtablename
562      \@mkboth{%
563          \MakeUppercase\listtablename}{\MakeUppercase\listtablename}}%
564    \@starttoc{lot}%
565    }
566\let\l@table\l@figure
567\def\tableofcontents{%
568  \begin{small}
569  \leftline {{\bfseries \contentsname\/}}
570  \setcounter{secnumdepth}{4}%
571  \setcounter{tocdepth}{2}%
572  {\@starttoc{toc}}%
573\end{small}
574}
575\newcommand*\l@section{\@dottedtocline{1}{1.5em}{2.3em}}
576\newcommand*\l@subsection{\@dottedtocline{2}{1.5em}{2.3em}}
577\newcommand*\l@subsubsection{\@dottedtocline{3}{3.8em}{3.2em}}
578\newcommand*\l@paragraph{\@dottedtocline{4}{7.0em}{4.1em}}
579\newcommand*\l@subparagraph{\@dottedtocline{5}{10em}{5em}}
580\def\@dotsep{2000}
581\def\thebibliography{%
582  \@startsection{section}{1}{\z@}{20\p@ \@plus 8\p@ \@minus 4pt}
583  {\@bls}{\normalsize\bfseries}*{\refname}%
584\addcontentsline{toc}{section}{\refname}%
585  \@thebibliography}
586\let\endthebibliography=\endlist
587\def\@thebibliography#1{\@bibliosize
588  \list{\@biblabel{\arabic{enumiv}}}{\settowidth\labelwidth{\@biblabel{#1}}
589  \if@nameyear
590    \labelwidth\z@ \labelsep\z@ \leftmargin\parindent
591    \itemindent-\parindent
592  \else
593    \labelsep 3\p@ \itemindent\z@
594    \leftmargin\labelwidth \advance\leftmargin\labelsep
595\fi
596\itemsep\@bibitemsep
597    \usecounter{enumiv}\let\p@enumiv\@empty
598    \def\theenumiv{\arabic{enumiv}}}%
599    \tolerance\@M
600   \hyphenpenalty\@M
601     \hbadness5000 \sfcode`\.=1000\relax}
602\newcommand\newblock{\hskip .11em\@plus.33em\@minus.07em}
603\if@nameyear
604  \def\@biblabel#1{}
605\else
606 \def\@biblabel#1{[#1]\hskip \z@ \@plus 1filll}
607\fi
608\let\make@bb@error\relax
609\def\@mkbberr{\def\bibitem{\ClassError{elsart}%
610    {Bibitem after note}%
611    {You are using a bibitem after a note in a subbibitems
612      environment;\MessageBreak
613      note should the last item in a subbibitems environment}}}
614\def\@itemnote{\make@bb@error\item[]}
615\def\mk@noitemnote{\ifx\@tempa\note \let\note\@noitemnote \fi}
616\def\@noitemnote{\let\note\@itemnote}
617\AtBeginDocument{%
618  \let\nopeek@bibitem\@bibitem
619  \let\nopeek@lbibitem\@lbibitem
620  \def\@bibitem#1{\let\note\@itemnote\nopeek@bibitem{#1}%
621    \futurelet\@tempa\mk@noitemnote}
622  \def\@lbibitem[#1]#2{\let\note\@itemnote\nopeek@lbibitem[#1]{#2}%
623    \futurelet\@tempa\mk@noitemnote}
624}
625\newif\if@natbibloaded\@natbibloadedfalse
626\AtBeginDocument{\@ifpackageloaded{natbib}{\@natbibloadedtrue}{}}
627\newenvironment{subbibitems}[1]{%
628  \if@natbibloaded\def\bib@ctr{NAT@ctr}\else\def\bib@ctr{enumiv}\fi
629  \if@filesw {\let \protect \noexpand \immediate \write \@auxout
630    {\string \nocollapse@cites}%
631    \global\let\nocollapse@cites\relax}\fi
632  \def\@itemslabel{#1}%
633  \stepcounter{\bib@ctr}%
634  \edef\main@bibnum{\the\value{\bib@ctr}}%
635  \setcounter{\bib@ctr}{0}%
636  \def\thebib@ctr{\main@bibnum\alph{\bib@ctr}}%
637  \if@natbibloaded
638    \def\bibitem{\@ifnextchar [{\@lbibitem }{\global \NAT@stdbsttrue
639        \stepcounter {\bib@ctr}\@lbibitem [\thebib@ctr]}}%
640  \else
641    \def\@bibitem##1{\stepcounter{\bib@ctr}\@lbibitem[\thebib@ctr]{##1}}%
642  \fi
643  \let\make@bb@error\@mkbberr
644}{%
645  \if@filesw {%
646    \if@natbibloaded{%
647      \let\protect\noexpand
648      \immediate\write\@auxout {\string\bibcite{\@itemslabel}%
649        {{\main@bibnum a--\alph {\bib@ctr}}{}{{}}{{}}}}%
650      \immediate\write\@auxout {\string\bibcite{\@itemslabel :s}%
651        {{\main@bibnum}{}{{}}{{}}}}%
652    }\else{%
653      \let\protect\noexpand
654      \immediate\write\@auxout {\string\bibcite{\@itemslabel}%
655        {\main@bibnum a--\alph{\bib@ctr}}}%
656      \immediate\write\@auxout {\string\bibcite{\@itemslabel :s}%
657        {\main@bibnum}}%
658    }\fi
659  }\fi
660  \setcounter{\bib@ctr}{\main@bibnum}%
661}
662\let\nocollapse@citex\@citex
663\newcount\@tempcntc
664\def\collapse@citex[#1]#2{\if@filesw\immediate\write\@auxout{\string\citation{#2}}\fi
665 \@tempcnta\z@\@tempcntb\m@ne\def\@citea{}\@cite{\@for\@citeb:=#2\do
666  {\edef\@citeb{\expandafter\@firstofone\@citeb\@empty}%
667   \@ifundefined
668   {b@\@citeb}{\@citeo\@tempcntb\m@ne\@citea\def\@citea{,}{\bfseries ?}\@warning
669   {Citation `\@citeb' on page \thepage \space undefined}}%
670  {\setbox\z@\hbox{\global\@tempcntc0\csname b@\@citeb\endcsname\relax}%
671   \ifnum\@tempcntc=\z@ \@citeo\@tempcntb\m@ne
672    \@citea\def\@citea{,}\hbox{\csname b@\@citeb\endcsname}%
673   \else
674    \advance\@tempcntb\@ne
675    \ifnum\@tempcntb=\@tempcntc
676    \else\advance\@tempcntb\m@ne\@citeo
677    \@tempcnta\@tempcntc\@tempcntb\@tempcntc\fi\fi}}\@citeo}{#1}}
678\let\@citex\collapse@citex
679\def\nocollapse@cites{%
680  \@ifpackageloaded{hyperref}{}{\global\let\@citex\nocollapse@citex}%
681  \global\let\nocollapse@cites\relax}
682\def\@citeo{\ifnum\@tempcnta>\@tempcntb\else\@citea\def\@citea{,}%
683 \ifnum\@tempcnta=\@tempcntb\the\@tempcnta\else
684  {\advance\@tempcnta\@ne\ifnum\@tempcnta=\@tempcntb \else \def\@citea{--}\fi
685   \advance\@tempcnta\m@ne\the\@tempcnta\@citea\the\@tempcntb}\fi\fi}
686\@namedef{cv*}{\section*{Curriculum Vitae}\cv}
687 \def\cv{\hangindent=7pc \hangafter=-12 \parskip\bigskipamount \small}
688\def\footnote{\@ifnextchar[{\@xfootnote}{\refstepcounter
689   {\@mpfn}\protected@xdef\@thefnmark{\thempfn}\@footnotemark\@footnotetext}}
690\def\footnotemark{\@ifnextchar[{\@xfootnotemark
691    }{\refstepcounter{footnote}\xdef\@thefnmark{\thefootnote}\@footnotemark}}
692\def\footnoterule{\kern-3\p@
693  \hrule \@width 3pc               % The \hrule has default \@height of 0.4pt.
694  \kern 2.6\p@}
695\def\thempfootnote{\alph{mpfootnote}}
696\def\mpfootnotemark{%
697  \@ifnextchar[{\@xmpfootnotemark}{\stepcounter{mpfootnote}%
698  \begingroup
699    \let\protect\noexpand
700    \xdef\@thefnmark{\thempfootnote}%
701  \endgroup
702  \@footnotemark}}
703\def\@xmpfootnotemark[#1]{%
704  \begingroup
705    \c@mpfootnote #1\relax
706    \let\protect\noexpand
707    \xdef\@thefnmark{\thempfootnote}%
708  \endgroup
709  \@footnotemark}
710\def\@mpmakefnmark{\,\hbox{$^{\mathrm{\@thefnmark}}$}}
711\long\def\@mpmakefntext#1{\noindent
712                     \hbox{$^{\mathrm{\@thefnmark}}$} #1}
713\def\@iiiminipage#1#2[#3]#4{%
714  \leavevmode
715  \@pboxswfalse
716  \setlength\@tempdima{#4}%
717  \def\@mpargs{{#1}{#2}[#3]{#4}}%
718  \setbox\@tempboxa\vbox\bgroup
719    \color@begingroup
720      \hsize\@tempdima
721      \textwidth\hsize \columnwidth\hsize
722      \@parboxrestore
723      \def\@mpfn{mpfootnote}\def\thempfn{\thempfootnote}\c@mpfootnote\z@
724      \let\@footnotetext\@mpfootnotetext
725      \let\@makefntext\@mpmakefntext
726      \let\@makefnmark\@mpmakefnmark
727      \let\@listdepth\@mplistdepth \@mplistdepth\z@
728      \@minipagerestore\global\@minipagetrue %% \global added 24 May 89
729      \everypar{\global\@minipagefalse\everypar{}}}
730\def\fn@presym{}
731\long\def\@makefntext#1{\noindent\hbox to 1em
732  {$^{\fn@presym\mathrm{\@thefnmark}}$\hss}#1}
733\def\@makefnmark{\,\hbox{$^{\fn@presym\mathrm{\@thefnmark}}$}\,}
734\def\patched@end@dblfloat{%
735  \if@twocolumn
736      \par\vskip\z@skip      %% \par\vskip\z@ added 15 Dec 87
737      \global\@minipagefalse
738      \outer@nobreak
739    \egroup                  %% end of vbox
740    \color@endbox
741    \ifnum\@floatpenalty <\z@
742      \@largefloatcheck
743      \@cons\@dbldeferlist\@currbox
744    \fi
745    \ifnum \@floatpenalty =-\@Mii \@Esphack\fi
746  \else
747    \end@float
748  \fi
749}
750\setcounter{topnumber}{5}
751\def\topfraction{0.99}
752\def\textfraction{0.05}
753\def\floatpagefraction{0.9}
754\setcounter{bottomnumber}{5}
755\def\bottomfraction{0.99}
756\setcounter{totalnumber}{10}
757\def\dbltopfraction{0.99}
758\def\dblfloatpagefraction{0.8}
759\setcounter{dbltopnumber}{5}
760\long\def\@maketablecaption#1#2{\@tablecaptionsize
761    \global \@minipagefalse
762    \hbox to \hsize{\parbox[t]{\hsize}{#1 \\ #2}}}
763\long\def\@makefigurecaption#1#2{\@figurecaptionsize
764  \vskip \@overcaptionskip
765  \setbox\@tempboxa\hbox{#1. #2}
766  \ifdim \wd\@tempboxa >\hsize              % IF longer than one line THEN
767    \unhbox\@tempboxa\par                   %   set as justified paragraph
768  \else                                     % ELSE
769    \global \@minipagefalse
770    \hbox to\hsize{\hfil\box\@tempboxa\hfil}%   center single line.
771  \fi}
772\def\@makecaption{\@makefigurecaption}
773\def\conttablecaption{\par \begingroup \@parboxrestore \normalsize
774  \@makecaption{\fnum@table\,---\,continued}{}\par
775  \vskip-1pc \endgroup}
776\def\contfigurecaption{\vskip-1pc \par \begingroup \@parboxrestore
777  \@captionsize
778  \@makecaption{\fnum@figure\,---\,continued}{}\par
779  \endgroup}
780\newcounter{figure}
781\def\thefigure{\@arabic\c@figure}
782\def\fps@figure{tbp}
783\def\ftype@figure{1}
784\def\ext@figure{lof}
785\def\fnum@figure{\figurename~\thefigure}
786\def\figure{%
787 \let\@makecaption\@makefigurecaption
788  \let\contcaption\contfigurecaption \@float{figure}}
789\def\endfigure{\end@float}
790\@namedef{figure*}{%
791 \let\@makecaption\@makefigurecaption
792  \let\contcaption\contfigurecaption \@dblfloat{figure}}
793\@namedef{endfigure*}{\end@dblfloat}
794\newcounter{table}
795\def\thetable{\@arabic\c@table}
796\def\fps@table{tbp}
797\def\ftype@table{2}
798\def\ext@table{lot}
799\def\fnum@table{\tablename~\thetable}
800\let\old@floatboxreset\@floatboxreset
801\def\table{%
802\let\@makecaption\@maketablecaption
803\def\@floatboxreset{%
804 \old@floatboxreset
805 \@tablesize
806}%
807  \let\footnoterule\relax
808  \let\contcaption\conttablecaption \@float{table}}
809\def\endtable{\end@float}
810\@namedef{table*}{%
811\let\@makecaption\@maketablecaption
812\def\@floatboxreset{%
813 \old@floatboxreset
814 \@tablesize
815}%
816  \let\footnoterule\relax
817  \let\contcaption\conttablecaption \@dblfloat{table}}
818\@namedef{endtable*}{\end@dblfloat}
819\newtoks\t@glob@notes             % List of all notes
820\newtoks\t@loc@notes              % List of notes for one element
821\newcount\note@cnt                % Number of notes per element
822\newtoks\corauth@text
823\newtoks\email@text
824\newtoks\url@text
825\newcounter{corauth}
826\newcounter{author}               % Author counter
827\newcount\n@author                % Total number of authors
828\def\n@author@{1}                  % idem, read from .aux file
829\newcounter{collab}               % Collaboration counter
830\newcount\n@collab                % Total number of collaborations
831\def\n@collab@{}                  % idem, read from .aux file
832\newcounter{address}              % Address counter
833\def\theHaddress{\arabic{address}}% for hyperref
834\newdimen\sv@mathsurround         % Dimen register to save \mathsurround
835\newcount\sv@hyphenpenalty        % Count register to save \hyphenpenalty
836\newcount\prev@elem \prev@elem=0  % Variables to keep track of
837\newcount\cur@elem  \cur@elem=0   % types of elements that are processed
838\chardef\e@title=1
839\chardef\e@subtitle=1
840\chardef\e@author=2
841\chardef\e@collab=3
842\chardef\e@address=4
843\newif\if@newelem                 % Switch to new type of element?
844\newif\if@firstauthor             % First author or collaboration?
845\newif\if@preface                 % If preface: omit history and abstract
846\newif\if@hasabstract             % If abstract / keywords: do not omit rules
847\newif\if@haskeywords             % If abstract / keywords: do not omit rules
848\newbox\fm@box                    % Box for collected front matter
849\newdimen\fm@size                 % Total height of \fm@box
850\newbox\t@abstract                % Box for abstract
851\newbox\t@keyword                 % Box for keyword abstract
852 \let\report@elt\@gobble
853\def\add@tok#1#2{\global#1\expandafter{\the#1#2}}
854\def\add@xtok#1#2{\begingroup
855  \no@harm
856  \xdef\@act{\global\noexpand#1{\the#1#2}}\@act
857\endgroup}
858\def\beg@elem{\global\t@loc@notes={}\global\note@cnt\z@}
859\def\@xnamedef#1{\expandafter\xdef\csname #1\endcsname}
860\def\no@harm{%
861  \let\\=\relax  \let\rm\relax
862  \let\ss=\relax \let\ae=\relax \let\oe=\relax
863  \let\AE=\relax \let\OE=\relax
864  \let\o=\relax  \let\O=\relax
865  \let\i=\relax  \let\j=\relax
866  \let\aa=\relax \let\AA=\relax
867  \let\l=\relax  \let\L=\relax
868  \let\d=\relax  \let\b=\relax \let\c=\relax
869  \let\bar=\relax
870  \def\protect{\noexpand\protect\noexpand}}
871\def\proc@elem#1#2{\begingroup
872    \no@harm                             % make a few instructions harmless
873    \let\thanksref\@gobble               % remove \thanksref from element
874    \let\corauthref\@gobble
875    \@xnamedef{@#1}{#2}%                 % and store as \@#1
876    \let\thanksref\add@thanksref
877    \let\corauthref\add@thanksref
878    \setbox\@tempboxa\hbox{#2}%
879  \endgroup
880  \prev@elem=\cur@elem                   % keep track of type of previous
881  \cur@elem=\csname e@#1\endcsname       % and current element
882}
883\def\add@thanksref#1{\global\advance\note@cnt\@ne
884  \ifnum\note@cnt>\@ne \add@xtok\t@loc@notes{\note@sep}\fi
885  \add@tok\t@loc@notes{\ref{#1}}}
886\def\note@sep{,}
887\def\thanks{\@ifnextchar[{\@tempswatrue
888  \thanks@optarg}{\@tempswafalse\thanks@optarg[]}}
889\def\thanks@optarg[#1]#2{\refstepcounter{footnote}%
890  \if@tempswa\label{#1}\else\relax\fi
891  \add@tok\t@glob@notes{\footnotetext}%
892  \add@xtok\t@glob@notes{[\the\c@footnote]}%
893  \add@tok\t@glob@notes{{#2}}%
894  \ignorespaces}
895\def\corauth{\@ifnextchar[{\@tempswatrue
896  \corauth@optarg}{\@tempswafalse\corauth@optarg[]}}
897\def\corauth@optarg[#1]#2{\refstepcounter{corauth}%
898  \if@tempswa\label{#1}\else\relax\fi
899  \add@tok\corauth@text{\footnotetext}%
900  \add@xtok\corauth@text{[\the\c@corauth]}%
901  \add@tok\corauth@text{{#2}}\ignorespaces}
902\newcommand\ead[1][email]{%
903  \add@eadcomma{#1}%
904  \expandafter\ifcase\csname has@ead@#1\endcsname
905  \expandafter\global\expandafter\chardef
906    \csname has@ead@#1\endcsname=1\relax\else
907  \expandafter\global\expandafter\chardef
908    \csname has@ead@#1\endcsname=2\relax\fi
909  \add@ead{#1}%
910}
911\def\add@ead#1#2{%
912  \expandafter\add@tok\csname #1@text\endcsname{\texttt{#2}\ead@au}%
913  \expandafter\add@xtok\csname #1@text\endcsname{{\@author}}%
914  \ignorespaces
915}
916\def\add@eadcomma#1{%
917  \expandafter\ifcase\csname has@ead@#1\endcsname\else
918  \expandafter\add@tok\csname #1@text\endcsname{, }\fi
919}
920\let\@ead@au\@empty
921\def\ead@newau{\ifx\@ead@au\@empty\else\ead@addau\@ead@au
922  \let\@ead@au\@empty\fi}
923\let\ead@endau\ead@newau
924\def\ead@addau#1{ (#1)}
925\def\ead@au#1{\def\@ead@au{#1}}
926\def\email@name{Email address}
927\def\emails@name{Email addresses}
928\chardef\has@ead@email=0
929\def\url@name{URL}
930\def\urls@name{URLs}
931\chardef\has@ead@url=0
932\let\real@refstepcounter\refstepcounter
933\def\footnote{\@ifnextchar[{\@xfootnote}{\real@refstepcounter
934   {\@mpfn}\protected@xdef\@thefnmark{\thempfn}\@footnotemark\@footnotetext}}
935\def\footnotemark{\@ifnextchar[{\@xfootnotemark
936    }{\real@refstepcounter{footnote}\xdef\@thefnmark{\thefootnote}\@footnotemark}}
937\def\footnoterule{\kern-3\p@
938  \hrule \@width 3pc               % The \hrule has default \@height of 0.4pt.
939  \kern 2.6\p@}
940 \let\report@elt\@gobble
941\newenvironment{NoHyper}{}{}
942\def\frontmatter{%
943  \newif\if@hastoc\@hastocfalse
944  \let\ltx@tableofcontents\tableofcontents
945  \def\tableofcontents{\global\@hastoctrue}
946  \NoHyper
947  \let\@corresp@note\relax
948  \global\t@glob@notes={}\global\c@author\z@
949  \global\c@collab\z@ \global\c@address\z@
950  \sv@mathsurround\mathsurround \m@th
951  \global\n@author=0\n@author@\relax
952  \global\n@collab=0\n@collab@\relax
953  \global\advance\n@author\m@ne   % In comparisons later on we need
954  \global\advance\n@collab\m@ne   % n@author-1 and n@collab-1
955  \global\@firstauthortrue        % set to false by first \author or \collab
956  \global\@hasabstractfalse       % Default:  no abstract or keywords
957  \global\@haskeywordsfalse       % Default:  no abstract or keywords
958  \global\@prefacefalse           %           not preface
959  \ifnum\c@firstpage=\c@lastpage
960    \gdef\@pagerange{\@pagenumprefix\ESpagenumber{firstpage}}
961  \else
962    \gdef\@pagerange{\@pagenumprefix
963   \ESpagenumber{firstpage}--\@pagenumprefix\ESpagenumber{lastpage}}%
964  \fi
965 \parskip 4\p@
966  \open@fm \ignorespaces}
967\def\preface{\@prefacetrue}
968\def\endfrontmatter{%
969  \ifx\@runauthor\relax
970   \global\let\@runauthor\@runningauthor
971  \fi
972  \global\n@author=\c@author
973  \global\n@collab=\c@collab \@writecount
974  \global\@topnum\z@
975  \thispagestyle{copyright}%            % Format rest of front matter:
976  \if@preface \else                     % IF not preface THEN
977  \vskip \@overhistoryskip
978  \history@fmt                          % print history (received, ...)
979  \newcount\c@sv@footnote
980  \global\c@sv@footnote=\c@footnote     % save current footnote number
981  \if@hasabstract                       % IF abstract/ keywords THEN
982   \vskip \@preabstractskip     % Space above rule
983  \hrule height 0.4\p@                 % Rule above abstract/keywords
984    \vskip 8\p@
985    \unvbox\t@abstract                  % print abstract, if any
986  \fi
987  \if@haskeywords                       % IF keywords THEN
988    \vskip \@overkeywordskip
989    \unvbox\t@keyword                   % Keyword abstract, if any
990  \fi                                   % FI
991  \if@hastoc                       % IF keywords THEN
992    \vskip \@overkeywordskip
993    \ltx@tableofcontents                   % Keyword abstract, if any
994  \fi                                   % FI
995  \vskip 10\p@
996  \hrule height 0.4\p@                 % rule below abstract/keywords
997  \dedicated@fmt                        % print dedication
998  \vskip \@belowfmskip                  % Vertical space below frontmatter
999\fi                                   % FI
1000  \close@fm                             % Close front matter material.
1001   \output@glob@notes  % Put notes at bottom of 1st page
1002  \endNoHyper
1003  \global\c@footnote=\c@sv@footnote     % restore footnote number
1004  \global\@prefacefalse
1005  \global\leftskip\z@                   % Restore the normal values of
1006  \global\@rightskip\z@                 % \leftskip,
1007  \global\rightskip\@rightskip          % \rightskip and
1008  \global\mathsurround\sv@mathsurround  % \mathsurround.
1009  \let\title\relax       \let\author\relax
1010  \let\collab\relax      \let\address\relax
1011  \let\frontmatter\relax \let\endfrontmatter\relax
1012  \let\@maketitle\relax  \let\@@maketitle\relax
1013  \normal@text
1014}
1015\let\maketitle\relax
1016\newdimen\t@xtheight
1017\t@xtheight\textheight \advance\t@xtheight-\splittopskip
1018\let\nolinenumbers\relax
1019\def\open@fm{\global\setbox\fm@box=\vbox\bgroup\nolinenumbers
1020  \hsize=\@frontmatterwidth                 % Front matter is page-wide by default
1021  \centering                                % and centered
1022  \sv@hyphenpenalty\hyphenpenalty           % (save \hyphenpenalty)
1023  \hyphenpenalty\@M}                        % and not hyphenated
1024\def\close@fm{\egroup                       % close \vbox (\fm@box)
1025  \fm@size=\dp\fm@box \advance\fm@size by \ht\fm@box
1026  \@whiledim\fm@size>\t@xtheight \do{%
1027    \global\setbox\@tempboxa=\vsplit\fm@box to \t@xtheight
1028    \unvbox\@tempboxa \newpage
1029    \fm@size=\dp\fm@box \advance\fm@size by \ht\fm@box}
1030  \if@TwoColumn
1031    \emergencystretch=1pc \twocolumn[\unvbox\fm@box]
1032  \else
1033    \unvbox\fm@box
1034  \fi}
1035\def\output@glob@notes{\bgroup
1036  \the\t@glob@notes
1037  \egroup}
1038\def\justify@off{\let\\=\@normalcr
1039  \leftskip\z@ \@rightskip\@flushglue \rightskip\@rightskip}
1040\def\justify@on{\let\\=\@normalcr
1041  \leftskip\z@ \@rightskip\z@ \rightskip\@rightskip}
1042\def\normal@text{\global\let\\=\@normalcr
1043  \global\leftskip\z@ \global\@rightskip\z@ \global\rightskip\@rightskip
1044  \global\parfillskip\@flushglue}
1045\def\@writecount{\write\@mainaux{\string\global
1046  \string\@namedef{n@author@}{\the\n@author}}%
1047  \write\@mainaux{\string\global\string
1048  \@namedef{n@collab@}{\the\n@collab}}}
1049\def\title#1{%
1050  \beg@elem
1051  \title@note@fmt                      % formatting instruction
1052  \add@tok\t@glob@notes                % for \thanks commands
1053    {\title@note@fmt}%
1054  \proc@elem{title}{#1}%
1055  \def\title@notes{\the\t@loc@notes}%  % store the notes of the title,
1056  \title@fmt{\@title}{\title@notes}%   % print the title
1057  \ignorespaces}
1058\def\subtitle#1{%
1059  \beg@elem
1060  \proc@elem{subtitle}{#1}%
1061  \def\title@notes{\the\t@loc@notes}%  % store the notes of the title,
1062  \subtitle@fmt{\@subtitle}{\title@notes}% print the title
1063  \ignorespaces}
1064\newdimen \@logoheight \@logoheight 5pc
1065\def\@Lhook{\vrule \@height \@logoheight \@width \z@ \vrule \@height 10\p@ \@width 0.2\p@ \vrule \@height 0.2\p@ \@width 10pt}
1066\def\@Rhook{\vrule \@height 0.2\p@ \@width 10\p@ \vrule \@height 10\p@ \@width 0.2\p@ \vrule \@height \@logoheight \@width \z@}
1067\def\title@fmt#1#2{%
1068\@ifundefined{@runtitle}{\global\def\@runtitle{#1}}{}%
1069 \vspace*{12pt}             % Vertical space above title
1070  {\@titlesize #1\,\hbox{$^{#2}$}\par}%
1071  \vskip\@undertitleskip
1072\vskip24\p% Vertical space below title
1073  }
1074\def\subtitle@fmt#1#2{%               % No vertical space above sub-title
1075  {\@titlesize #1\,\hbox{$^{#2}$}}\par}
1076\def\title@note@fmt{\def\thefootnote{\fnstar{footnote}}}
1077\def\author{\@ifnextchar[{\author@optarg}{\author@optarg[]}}
1078\def\author@optarg[#1]#2{\stepcounter{author}%
1079  \beg@elem
1080  \add@tok\email@text{\ead@newau}%
1081  \add@tok\url@text{\ead@newau}%
1082  \@for\@tempa:=#1\do{\expandafter\add@thanksref\expandafter{\@tempa}}%
1083  \report@elt{author}\proc@elem{author}{#2}%
1084  \ifnum0\n@collab@=\z@ \runningauthor@fmt \fi
1085  \author@fmt{\the\c@author}{\the\t@loc@notes}{\@author}%
1086}
1087\def\runningauthor@fmt{%
1088  \begingroup\no@harm
1089    \if@firstauthor
1090      \ifnum0\n@author@ > 2
1091        \global\edef\@runningauthor{\@author\ et al.}%
1092      \else
1093        \global\let\@runningauthor\@author%
1094      \fi
1095    \else % \c@author > 1
1096      \ifnum0\n@author@ = 2
1097        \global\edef\@runningauthor{\@runningauthor\ \& \noexpand\@author}%
1098      \fi
1099    \fi
1100  \endgroup
1101}
1102\def\author@fmt#1#2#3{\@newelemtrue
1103  \if@firstauthor
1104  \first@author \global\@firstauthorfalse \fi
1105  \ifnum\prev@elem=\e@author \global\@newelemfalse \fi
1106  \if@newelem \author@fmt@init \fi
1107  \edef\@tempb{#2}\ifx\@tempb\@empty
1108    \hbox{{\author@font #3}}\else
1109    \hbox{{\author@font #3}\,$^{\mathrm{#2}}$}%
1110  \fi}
1111\def\first@author{\author@note@fmt
1112  \corauth@mark@fmt
1113  \add@tok\t@glob@notes
1114  {\output@corauth@text
1115    \output@ead@text{email}%
1116    \output@ead@text{url}%
1117    \author@note@fmt}%
1118}%
1119\def\author@fmt@init{%
1120  \par
1121  \vskip 8\p@ \@plus 4\p@ \@minus 2\p@
1122  \@authorsize
1123  \leavevmode}                        % Vertical space above author list
1124 \def\and{\unskip~and~}
1125\def\collab{\@ifstar{\collab@arg}{\collab@arg}}
1126\let\collaboration=\collab
1127\def\collab@arg#1{\stepcounter{collab}%
1128  \if@firstauthor \first@author \global\@firstauthorfalse \fi
1129  \gdef\@runningauthor{#1}%
1130  \beg@elem
1131  \proc@elem{collab}{#1}%
1132  \collab@fmt{\the\c@collab}{\the\t@loc@notes}{\@collab}%
1133  \ignorespaces}
1134\def\collab@fmt#1#2#3{\@newelemtrue
1135  \ifnum\prev@elem=\e@collab \global\@newelemfalse \fi
1136  \if@newelem \collab@fmt@init \fi
1137  \par                                 % Start new paragraph
1138  \edef\@tempb{#2}\ifx\@tempb\@empty
1139    {\@authorsize #3}\else
1140    {\@authorsize #3\,$^{\mathrm{#2}}$}%
1141  \fi}
1142\def\collab@fmt@init{\vskip 1em}       % Vertical space above list
1143\def\author@note@fmt{\setcounter{footnote}{0}%
1144  \def\thefootnote{\xarabic{footnote}}}
1145\let\collab@note@fmt=\author@note@fmt
1146\def\corauth@mark@fmt{\def\thecorauth{\astsymbol{corauth}}}
1147\def\output@corauth@text{\def\thefootnote{\astsymbol{footnote}}%
1148  \the\corauth@text}
1149\def\output@ead@text#1{%
1150  \expandafter\add@tok\csname #1@text\endcsname{\ead@endau}%
1151  \expandafter\ifcase\csname has@ead@#1\endcsname\else
1152  {\let\thefootnote\relax
1153    \footnotetext[0]{\raggedright\textit{%
1154        \expandafter\ifcase\csname has@ead@#1\endcsname\or
1155        \csname #1@name\endcsname\else
1156        \csname #1s@name\endcsname\fi
1157        : }%
1158        \expandafter\the\csname #1@text\endcsname.}}%
1159    \fi}
1160\def\xarabic#1{%
1161  \expandafter\expandafter\expandafter\ifnum\expandafter\the\@nameuse{c@#1}<0
1162  *\else\arabic{#1} \fi}
1163\def\xalph#1{%
1164  \expandafter\expandafter\expandafter\ifnum\expandafter\the\@nameuse{c@#1}<0
1165  *\else\alph{#1} \fi}
1166\def\xfnsymbol#1{%
1167  \expandafter\expandafter\expandafter\ifnum\expandafter\the\@nameuse{c@#1}<0
1168  *\else\fnsymbol{#1} \fi}
1169\def\address{\@ifstar{\address@star}%
1170  {\@ifnextchar[{\address@optarg}{\address@noptarg}}}
1171\def\address@optarg[#1]#2{\real@refstepcounter{address}%
1172  \beg@elem
1173  \report@elt{address}\proc@elem{address}{#2}%
1174  \address@fmt{\c@address}{\the\t@loc@notes}{\@address}{#1}%
1175  \if@Elproofing\else\label{#1}\fi
1176  \ignorespaces}
1177\def\address@noptarg#1{\real@refstepcounter{address}%
1178  \beg@elem
1179  \proc@elem{address}{#1}%
1180  \address@fmt{\z@}{\the\t@loc@notes}{\@address}{\theaddress}%
1181  \ignorespaces}
1182\def\address@star#1{%
1183  \beg@elem
1184  \proc@elem{address}{#1}%
1185  \address@fmt{\m@ne}{\the\t@loc@notes}{\@address}{*}%
1186  \ignorespaces}
1187\def\theaddress{\alph{address}}
1188\def\address@fmt#1#2#3#4{\@newelemtrue
1189  \if@Elproofing\def\@eltag{#4}\else\def\@eltag{\theaddress}\fi
1190  \ifnum\prev@elem=\e@address \@newelemfalse \fi
1191  \if@newelem \address@fmt@init \fi
1192  \noindent \bgroup \@addressstyle
1193  \ifnum#1=\z@
1194    #3\,$^{\mathrm{#2}}$\space%
1195  \else
1196    \ifnum#1=\m@ne
1197      $^{\phantom{\mathrm{\@eltag}}}$\space #3\,$^{\mathrm{#2}}$%
1198    \else
1199      $^{\mathrm{\@eltag}}\space$#3\,$^{\mathrm{#2}}$%
1200    \fi
1201  \fi
1202  \par \egroup}
1203\def\address@fmt@init{%
1204  \par                                % Start new paragraph
1205   \vskip 6\p@ \@plus 3\p@ \@minus 1.5pt}
1206\def\abstract{\@ifnextchar[{\@abstract}{\@abstract[]}}
1207\def\@abstract[#1]{%
1208  \global\@hasabstracttrue
1209  \hyphenpenalty\sv@hyphenpenalty     % restore \hyphenpenalty
1210  \global\setbox\t@abstract=\vbox\bgroup
1211  \leftskip\z@
1212  \@rightskip\z@ \rightskip\@rightskip \parfillskip\@flushglue
1213   \small
1214  \parindent 1em                      % \parindent in abstract
1215  \noindent {\bfseries\abstractname% caption `Abstract' (bold)
1216  \vskip 0.5\@bls    % half a line of space below
1217\noindent\ignorespaces
1218}
1219 \def\endabstract{\par \egroup}
1220\def\keyword{%
1221  \global\@haskeywordstrue             % Implies rules are to be printed
1222  \hyphenpenalty\sv@hyphenpenalty      % restore \hyphenpenalty
1223  \def\sep{\unskip, }                  % separator for multiple keywords
1224  \def\MSC{\par\leavevmode\hbox {\it 1991 MSC:\ }}%
1225  \def\PACS{\par\leavevmode\hbox {\it PACS:\ }}%
1226  \global\setbox\t@keyword=\vbox\bgroup
1227  \@keywordsize
1228  \parskip\z@
1229  \vskip 10\p@ \@plus 2\p@ \@minus 2\p@       % One line of space above keywords.
1230  \noindent\@keywordheading
1231  \justify@off                         % Keywords are not justified.
1232  \ignorespaces}
1233\def\endkeyword{\par \egroup}
1234\def\runtitle#1{\gdef\@runtitle{#1}}
1235\def\runauthor#1{\gdef\@runauthor{#1}}
1236\let\@runauthor\relax
1237\let\@runtitle\relax
1238\let\@runningauthor\relax
1239\def\RUNDATE{}
1240\def\RUNJNL{}
1241\def\RUNART{}
1242\def\journal#1{\gdef\@journal{#1}}
1243\def\volume#1{\gdef\@volume{#1}}       \def\@volume{0}
1244\def\issue#1{\gdef\@issue{#1}}         \def\@issue{0}
1245\newcount\@pubyear
1246\@pubyear=\number\year
1247\def\company#1{\def\@company{#1}}
1248\def\@copyrightyear{\number\year}
1249\def\@shortenyear#1#2#3#4\\{\global\def\@shortyear{#3#4}}
1250\expandafter\@shortenyear\the\@pubyear\\
1251\def\pubyear#1{\global\@pubyear#1
1252 \expandafter\@shortenyear\the\@pubyear\\%
1253  \ignorespaces}
1254\def\copyear#1{%
1255  \gdef\@copyrightyear{#1}%
1256  \ignorespaces}
1257\let\copyrightyear\copyear
1258\newcounter{firstpage}
1259\newcounter{lastpage}
1260\let\ESpagenumber\arabic
1261\def\firstpage#1{\def\@tempa{#1}\ifx\@tempa\@empty\else
1262  \setcounter{firstpage}{#1}%
1263  \global\c@page=#1 \ignorespaces\fi}
1264\setcounter{firstpage}{1}
1265\let\realpageref\pageref
1266\setcounter{lastpage}{0}
1267\def\lastpage#1{\def\@tempa{#1}\ifx\@tempa\@empty\else
1268  \setcounter{lastpage}{#1}\ignorespaces\fi
1269  }
1270\AtEndDocument{%
1271   \clearpage
1272   \addtocounter{page}{-1}%
1273   \immediate\write\@auxout{%
1274   \string\global\string\c@lastpage=\the\c@page}%
1275   \addtocounter{page}{1}%
1276}
1277\def\date#1{\gdef\@date{#1}}                  \def\@date{\today}
1278\def\aid#1{}
1279\def\ssdi#1#2{}
1280\def\received#1{\def\@tempa{#1}\ifx\@tempa\@empty\else\gdef\@received{#1}\fi}
1281  \def\@received{\relax}
1282\def\revised#1{\def\@tempa{#1}\ifx\@tempa\@empty\else\gdef\@revised{#1}\fi}
1283  \def\@revised{\relax}
1284\def\accepted#1{\def\@tempa{#1}\ifx\@tempa\@empty\else\gdef\@accepted{#1}\fi}
1285  \def\@accepted{\relax}
1286\def\communicated#1{\def\@tempa{#1}\ifx\@tempa\@empty\else\gdef\@communicated{#1}\fi}
1287  \def\@communicated{\relax}
1288\def\dedicated#1{\def\@tempa{#1}\ifx\@tempa\@empty\else\gdef\@dedicated{#1}\fi}
1289  \def\@dedicated{\relax}
1290\def\presented#1{\def\@tempa{#1}\ifx\@tempa\@empty\else\gdef\@presented{#1}\fi}
1291  \def\@presented{\relax}
1292\def\articletype#1{\gdef\@articletype{#1}}
1293  \@ifundefined{@articletype}{\def\@articletype{}}{}
1294\def\received@prefix{Received~}
1295\def\revised@prefix{; revised~}
1296\def\accepted@prefix{; accepted~}
1297\def\communicated@prefix{; communicated~by~}
1298\def\history@prefix{}
1299\def\received@postfix{}
1300\def\revised@postfix{}
1301\def\accepted@postfix{}
1302\def\communicated@postfix{}
1303\def\history@postfix{}
1304\def\empty@data{\relax}
1305\def\history@fmt{%
1306  \bgroup
1307  \@historysize
1308  \vskip 6\p@ \@plus 2\p@ \@minus 1\p@         % Vertical space above history
1309  \ifx\@received\empty@data \else       % If there is no \received,
1310                                        % do not print anything
1311    \leavevmode
1312    \history@prefix
1313    \received@prefix\@received \received@postfix%
1314    \ifx\@revised\empty@data \else
1315      \revised@prefix\@revised \revised@postfix%
1316    \fi
1317    \ifx\@accepted\empty@data \else
1318      \accepted@prefix\@accepted \accepted@postfix%
1319    \fi
1320    \ifx\@communicated\empty@data \else
1321      \communicated@prefix\@communicated \communicated@postfix%
1322    \fi
1323    \history@postfix
1324  \fi
1325  \par \egroup}
1326\def\dedicated@fmt{%
1327  \ifx\@dedicated\empty@data \else
1328    \vskip 4\p@ \@plus 3\p@
1329    \normalsize\it\centering \@dedicated
1330    \fi}
1331\def\@alph#1{\ifcase#1\or a\or b\or c\or d\or e\or f\or g\or h\or i\or
1332j\or k\or \ensuremath{\ell}\or m\or n\or o\or p\or q\or r\or s\or t\or
1333u\or v\or w\or x\or y\or z\or aa\or ab\or ac\or ad\or ae\or af\or ag\or
1334ah\or ai\or aj\or ak\or a\ensuremath{\ell}\or am\or an\or ao\or ap\or
1335aq\or ar\or as\or at\or au\or av\or aw\or ay\or az\or ba\or bb\or bc\or
1336bd\or be\or bf\or bg\or bh\or bi\or bj\or bk\or b\ensuremath{\ell}\or
1337bm\or bn\or bo\or bp\or bq\or br\or bs\or bt\or bu\or bw\or bx\or by\or
1338bz\or ca\or cb\or cc\or cd\or ce\or cf\or cg\or ch\or ci\or cj\or ck\or
1339c\ensuremath{\ell}\or cm\or cn\or co\or cp\or cq\or cr\or cs\or ct\or
1340cu\or cw\or cx\or cy\or cz\or da\or db\or dc\or dd\or de\or df\or dg\or
1341dh\or di\or dj\or dk\or d\ensuremath{\ell}\or dm\or dn\or do\or dp\or
1342dq\or dr\or ds\or dt\or du\or dw\or dx\or dy\or dz\or ea\or eb\or ec\or
1343ed\or ee\or ef\or eg\or eh\or ei\or ej\or ek\or e\ensuremath{\ell}\or
1344em\or en\or eo\or ep\or eq\or er\or es\or et\or eu\or ew\or ex\or ey\or
1345ez\else\@ctrerr\fi}
1346\def\fnstar#1{\@fnstar{\@nameuse{c@#1}}}
1347\def\@fnstar#1{\ifcase#1\or
1348    \hbox{$\star$}\or
1349    \hbox{$\star\star$}\or
1350    \hbox{$\star\star\star$}\or
1351    \hbox{$\star\star\star\star$}\or
1352    \hbox{$\star\star\star\star\star$}\or
1353    \hbox{$\star\star\star\star\star\star$}
1354  \else
1355    \@ctrerr
1356  \fi
1357  \relax}
1358\def\astsymbol#1{\@astsymbol{\@nameuse{c@#1}}}
1359\def\@astsymbol#1{\ifcase#1\or
1360    \hbox{$\ast$}\or
1361    \hbox{$\ast\ast$}\or
1362    \hbox{$\ast\ast\ast$}\or
1363    \hbox{$\ast\ast\ast\ast$}\or
1364    \hbox{$\ast\ast\ast\ast\ast$}\or
1365    \hbox{$\ast\ast\ast\ast\ast\ast$}%
1366  \else
1367    \@ctrerr
1368  \fi
1369  \relax}
1370\mark{{}{}}   % Initializes TeX's marks
1371\def\ps@plain{\let\@mkboth\@gobbletwo
1372 \def\@oddhead{}%
1373 \def\@evenhead{}%
1374 \def\@oddfoot{\hfil {\rmfamily\thepage} \hfil}%
1375 \let\@evenfoot\@oddfoot}
1376\def\@copyright{\@issn/\@shortyear/\$\@price\ $\copyright$\ \the\@pubyear\
1377  \@company{} All  rights reserved}
1378\def\@jou@vol@pag{\@journal\ \@volume\ (\the\@pubyear)\ \@pagerange}
1379\def\sectionmark#1{}
1380\def\subsectionmark#1{}
1381\let\@j@v@p\@jou@vol@pag    % long journal title appears in reprint line
1382\let\@@j@v@p\@jou@vol@pag   % long journal title appears in running headline
1383\def\sectionmark#1{}
1384\def\subsectionmark#1{}
1385\def\ps@copyright{\let\@mkboth\@gobbletwo
1386  \def\@oddhead{}%
1387  \let\@evenhead\@oddhead
1388  \def\@oddfoot{\small\slshape
1389    \def\@tempa{0}
1390    \ifx\@volume\@tempa
1391      Preprint submitted to \@journal\hfil\@date\/%
1392    \else
1393      Article published in \@jou@vol@pag\hfil\hbox{}\fi}%
1394  \let\@evenfoot\@oddfoot
1395}
1396\let\ps@noissn\ps@empty
1397\let\ps@headings\ps@plain
1398\def\today{\number\day\space\ifcase\month\or
1399  January\or February\or March\or April\or May\or June\or
1400  July\or August\or September\or October\or November\or December\fi
1401  \space\number\year}
1402\def\nuc#1#2{\relax\ifmmode{}^{#1}{\protect\text{#2}}\else${}^{#1}$#2\fi}
1403\def\itnuc#1#2{\setbox\@tempboxa=\hbox{\scriptsize\it #1}
1404  \def\@tempa{{}^{\box\@tempboxa}\!\protect\text{\it #2}}\relax
1405  \ifmmode \@tempa \else $\@tempa$\fi}
1406\let\old@vec\vec % save old definition of \vec
1407\def\pol#1{\old@vec{#1}}
1408\def\half{{\textstyle\frac{1}{2}}}
1409\def\threehalf{{\textstyle\frac{3}{2}}}
1410\def\quart{{\textstyle\frac{1}{4}}}
1411\if@symbold\else\def\d{\,\mathrm{d}}\fi
1412\def\e{\mathop{\mathrm{e}}\nolimits}
1413\def\int{\intop}
1414\def\oint{\ointop}
1415\newbox\slashbox \setbox\slashbox=\hbox{$/$}
1416\newbox\Slashbox \setbox\Slashbox=\hbox{\large$/$}
1417\def\pFMslash#1{\setbox\@tempboxa=\hbox{$#1$}
1418  \@tempdima=0.5\wd\slashbox \advance\@tempdima 0.5\wd\@tempboxa
1419  \copy\slashbox \kern-\@tempdima \box\@tempboxa}
1420\def\pFMSlash#1{\setbox\@tempboxa=\hbox{$#1$}
1421  \@tempdima=0.5\wd\Slashbox \advance\@tempdima 0.5\wd\@tempboxa
1422  \copy\Slashbox \kern-\@tempdima \box\@tempboxa}
1423\def\FMslash{\protect\pFMslash}
1424\def\FMSlash{\protect\pFMSlash}
1425  \def\Cset{\mathbb{C}}
1426  \def\Hset{\mathbb{H}}
1427  \def\Nset{\mathbb{N}}
1428  \def\Qset{\mathbb{Q}}
1429  \def\Rset{\mathbb{R}}
1430  \def\Zset{\mathbb{Z}}
1431\if@TwoColumn
1432  \adjdemerits=100
1433  \linepenalty=100
1434  \doublehyphendemerits=5000        % experimental (1993-12-14)
1435  \emergencystretch=1.6pc
1436  \spaceskip=0.3em \@plus 0.17em \@minus 0.12em
1437\fi
1438\@frontmatterwidth\textwidth
1439\ps@headings                                % 'headings' page style
1440\pagenumbering{arabic}                      % Arabic page numbers
1441\def\thepage{\@pagenumprefix\ESpagenumber{page}}  % preceded by \@pagenumprefix
1442\let\baselinestretch\@blstr
1443\InputIfFileExists{\@shortjid.cfg}{}{}
1444\endinput
1445%%
1446%% End of file `elsart.cls'.
Note: See TracBrowser for help on using the repository browser.