Commit c661431033a9d33a0e1e663e07dc29c96d2f2c5c

Authored by Paulo Meireles
1 parent 56522b5b

a first draft for OSS Tool Demonstrations

OSS-2016/aliascnt.sty
@@ -1,88 +0,0 @@ @@ -1,88 +0,0 @@
1 -%%  
2 -%% This is file `aliascnt.sty',  
3 -%% generated with the docstrip utility.  
4 -%%  
5 -%% The original source files were:  
6 -%%  
7 -%% aliascnt.dtx (with options: `package')  
8 -%%  
9 -%% This is a generated file.  
10 -%%  
11 -%% Project: aliascnt  
12 -%% Version: 2009/09/08 v1.3  
13 -%%  
14 -%% Copyright (C) 2006, 2009 by  
15 -%% Heiko Oberdiek <heiko.oberdiek at googlemail.com>  
16 -%%  
17 -%% This work may be distributed and/or modified under the  
18 -%% conditions of the LaTeX Project Public License, either  
19 -%% version 1.3c of this license or (at your option) any later  
20 -%% version. This version of this license is in  
21 -%% http://www.latex-project.org/lppl/lppl-1-3c.txt  
22 -%% and the latest version of this license is in  
23 -%% http://www.latex-project.org/lppl.txt  
24 -%% and version 1.3 or later is part of all distributions of  
25 -%% LaTeX version 2005/12/01 or later.  
26 -%%  
27 -%% This work has the LPPL maintenance status "maintained".  
28 -%%  
29 -%% This Current Maintainer of this work is Heiko Oberdiek.  
30 -%%  
31 -%% This work consists of the main source file aliascnt.dtx  
32 -%% and the derived files  
33 -%% aliascnt.sty, aliascnt.pdf, aliascnt.ins, aliascnt.drv.  
34 -%%  
35 -\NeedsTeXFormat{LaTeX2e}  
36 -\ProvidesPackage{aliascnt}%  
37 - [2009/09/08 v1.3 Alias counter (HO)]%  
38 -\newcommand*{\newaliascnt}[2]{%  
39 - \begingroup  
40 - \def\AC@glet##1{%  
41 - \global\expandafter\let\csname##1#1\expandafter\endcsname  
42 - \csname##1#2\endcsname  
43 - }%  
44 - \@ifundefined{c@#2}{%  
45 - \@nocounterr{#2}%  
46 - }{%  
47 - \expandafter\@ifdefinable\csname c@#1\endcsname{%  
48 - \AC@glet{c@}%  
49 - \AC@glet{the}%  
50 - \AC@glet{theH}%  
51 - \AC@glet{p@}%  
52 - \expandafter\gdef\csname AC@cnt@#1\endcsname{#2}%  
53 - \expandafter\gdef\csname cl@#1\expandafter\endcsname  
54 - \expandafter{\csname cl@#2\endcsname}%  
55 - }%  
56 - }%  
57 - \endgroup  
58 -}  
59 -\newcommand*{\aliascntresetthe}[1]{%  
60 - \@ifundefined{AC@cnt@#1}{%  
61 - \PackageError{aliascnt}{%  
62 - `#1' is not an alias counter%  
63 - }\@ehc  
64 - }{%  
65 - \expandafter\let\csname the#1\expandafter\endcsname  
66 - \csname the\csname AC@cnt@#1\endcsname\endcsname  
67 - }%  
68 -}  
69 -\newcommand*{\AC@findrootcnt}[1]{%  
70 - \@ifundefined{AC@cnt@#1}{%  
71 - #1%  
72 - }{%  
73 - \expandafter\AC@findrootcnt\csname AC@cnt@#1\endcsname  
74 - }%  
75 -}  
76 -\def\AC@patch#1{%  
77 - \expandafter\let\csname AC@org@#1reset\expandafter\endcsname  
78 - \csname @#1reset\endcsname  
79 - \expandafter\def\csname @#1reset\endcsname##1##2{%  
80 - \csname AC@org@#1reset\endcsname{##1}{\AC@findrootcnt{##2}}%  
81 - }%  
82 -}  
83 -\RequirePackage{remreset}  
84 -\AC@patch{addto}  
85 -\AC@patch{removefrom}  
86 -\endinput  
87 -%%  
88 -%% End of file `aliascnt.sty'.  
OSS-2016/llncs.cls
@@ -1,1208 +0,0 @@ @@ -1,1208 +0,0 @@
1 -% LLNCS DOCUMENT CLASS -- version 2.18 (27-Sep-2013)  
2 -% Springer Verlag LaTeX2e support for Lecture Notes in Computer Science  
3 -%  
4 -%%  
5 -%% \CharacterTable  
6 -%% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z  
7 -%% Lower-case \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z  
8 -%% Digits \0\1\2\3\4\5\6\7\8\9  
9 -%% Exclamation \! Double quote \" Hash (number) \#  
10 -%% Dollar \$ Percent \% Ampersand \&  
11 -%% Acute accent \' Left paren \( Right paren \)  
12 -%% Asterisk \* Plus \+ Comma \,  
13 -%% Minus \- Point \. Solidus \/  
14 -%% Colon \: Semicolon \; Less than \<  
15 -%% Equals \= Greater than \> Question mark \?  
16 -%% Commercial at \@ Left bracket \[ Backslash \\  
17 -%% Right bracket \] Circumflex \^ Underscore \_  
18 -%% Grave accent \` Left brace \{ Vertical bar \|  
19 -%% Right brace \} Tilde \~}  
20 -%%  
21 -\NeedsTeXFormat{LaTeX2e}[1995/12/01]  
22 -\ProvidesClass{llncs}[2013/09/27 v2.18  
23 -^^J LaTeX document class for Lecture Notes in Computer Science]  
24 -% Options  
25 -\let\if@envcntreset\iffalse  
26 -\DeclareOption{envcountreset}{\let\if@envcntreset\iftrue}  
27 -\DeclareOption{citeauthoryear}{\let\citeauthoryear=Y}  
28 -\DeclareOption{oribibl}{\let\oribibl=Y}  
29 -\let\if@custvec\iftrue  
30 -\DeclareOption{orivec}{\let\if@custvec\iffalse}  
31 -\let\if@envcntsame\iffalse  
32 -\DeclareOption{envcountsame}{\let\if@envcntsame\iftrue}  
33 -\let\if@envcntsect\iffalse  
34 -\DeclareOption{envcountsect}{\let\if@envcntsect\iftrue}  
35 -\let\if@runhead\iffalse  
36 -\DeclareOption{runningheads}{\let\if@runhead\iftrue}  
37 -  
38 -\let\if@openright\iftrue  
39 -\let\if@openbib\iffalse  
40 -\DeclareOption{openbib}{\let\if@openbib\iftrue}  
41 -  
42 -% languages  
43 -\let\switcht@@therlang\relax  
44 -\def\ds@deutsch{\def\switcht@@therlang{\switcht@deutsch}}  
45 -\def\ds@francais{\def\switcht@@therlang{\switcht@francais}}  
46 -  
47 -\DeclareOption*{\PassOptionsToClass{\CurrentOption}{article}}  
48 -  
49 -\ProcessOptions  
50 -  
51 -\LoadClass[twoside]{article}  
52 -\RequirePackage{multicol} % needed for the list of participants, index  
53 -\RequirePackage{aliascnt}  
54 -  
55 -\setlength{\textwidth}{12.2cm}  
56 -\setlength{\textheight}{19.3cm}  
57 -\renewcommand\@pnumwidth{2em}  
58 -\renewcommand\@tocrmarg{3.5em}  
59 -%  
60 -\def\@dottedtocline#1#2#3#4#5{%  
61 - \ifnum #1>\c@tocdepth \else  
62 - \vskip \z@ \@plus.2\p@  
63 - {\leftskip #2\relax \rightskip \@tocrmarg \advance\rightskip by 0pt plus 2cm  
64 - \parfillskip -\rightskip \pretolerance=10000  
65 - \parindent #2\relax\@afterindenttrue  
66 - \interlinepenalty\@M  
67 - \leavevmode  
68 - \@tempdima #3\relax  
69 - \advance\leftskip \@tempdima \null\nobreak\hskip -\leftskip  
70 - {#4}\nobreak  
71 - \leaders\hbox{$\m@th  
72 - \mkern \@dotsep mu\hbox{.}\mkern \@dotsep  
73 - mu$}\hfill  
74 - \nobreak  
75 - \hb@xt@\@pnumwidth{\hfil\normalfont \normalcolor #5}%  
76 - \par}%  
77 - \fi}  
78 -%  
79 -\def\switcht@albion{%  
80 -\def\abstractname{Abstract.}  
81 -\def\ackname{Acknowledgement.}  
82 -\def\andname{and}  
83 -\def\lastandname{\unskip, and}  
84 -\def\appendixname{Appendix}  
85 -\def\chaptername{Chapter}  
86 -\def\claimname{Claim}  
87 -\def\conjecturename{Conjecture}  
88 -\def\contentsname{Table of Contents}  
89 -\def\corollaryname{Corollary}  
90 -\def\definitionname{Definition}  
91 -\def\examplename{Example}  
92 -\def\exercisename{Exercise}  
93 -\def\figurename{Fig.}  
94 -\def\keywordname{{\bf Keywords:}}  
95 -\def\indexname{Index}  
96 -\def\lemmaname{Lemma}  
97 -\def\contriblistname{List of Contributors}  
98 -\def\listfigurename{List of Figures}  
99 -\def\listtablename{List of Tables}  
100 -\def\mailname{{\it Correspondence to\/}:}  
101 -\def\noteaddname{Note added in proof}  
102 -\def\notename{Note}  
103 -\def\partname{Part}  
104 -\def\problemname{Problem}  
105 -\def\proofname{Proof}  
106 -\def\propertyname{Property}  
107 -\def\propositionname{Proposition}  
108 -\def\questionname{Question}  
109 -\def\remarkname{Remark}  
110 -\def\seename{see}  
111 -\def\solutionname{Solution}  
112 -\def\subclassname{{\it Subject Classifications\/}:}  
113 -\def\tablename{Table}  
114 -\def\theoremname{Theorem}}  
115 -\switcht@albion  
116 -% Names of theorem like environments are already defined  
117 -% but must be translated if another language is chosen  
118 -%  
119 -% French section  
120 -\def\switcht@francais{%\typeout{On parle francais.}%  
121 - \def\abstractname{R\'esum\'e.}%  
122 - \def\ackname{Remerciements.}%  
123 - \def\andname{et}%  
124 - \def\lastandname{ et}%  
125 - \def\appendixname{Appendice}  
126 - \def\chaptername{Chapitre}%  
127 - \def\claimname{Pr\'etention}%  
128 - \def\conjecturename{Hypoth\`ese}%  
129 - \def\contentsname{Table des mati\`eres}%  
130 - \def\corollaryname{Corollaire}%  
131 - \def\definitionname{D\'efinition}%  
132 - \def\examplename{Exemple}%  
133 - \def\exercisename{Exercice}%  
134 - \def\figurename{Fig.}%  
135 - \def\keywordname{{\bf Mots-cl\'e:}}  
136 - \def\indexname{Index}  
137 - \def\lemmaname{Lemme}%  
138 - \def\contriblistname{Liste des contributeurs}  
139 - \def\listfigurename{Liste des figures}%  
140 - \def\listtablename{Liste des tables}%  
141 - \def\mailname{{\it Correspondence to\/}:}  
142 - \def\noteaddname{Note ajout\'ee \`a l'\'epreuve}%  
143 - \def\notename{Remarque}%  
144 - \def\partname{Partie}%  
145 - \def\problemname{Probl\`eme}%  
146 - \def\proofname{Preuve}%  
147 - \def\propertyname{Caract\'eristique}%  
148 -%\def\propositionname{Proposition}%  
149 - \def\questionname{Question}%  
150 - \def\remarkname{Remarque}%  
151 - \def\seename{voir}  
152 - \def\solutionname{Solution}%  
153 - \def\subclassname{{\it Subject Classifications\/}:}  
154 - \def\tablename{Tableau}%  
155 - \def\theoremname{Th\'eor\`eme}%  
156 -}  
157 -%  
158 -% German section  
159 -\def\switcht@deutsch{%\typeout{Man spricht deutsch.}%  
160 - \def\abstractname{Zusammenfassung.}%  
161 - \def\ackname{Danksagung.}%  
162 - \def\andname{und}%  
163 - \def\lastandname{ und}%  
164 - \def\appendixname{Anhang}%  
165 - \def\chaptername{Kapitel}%  
166 - \def\claimname{Behauptung}%  
167 - \def\conjecturename{Hypothese}%  
168 - \def\contentsname{Inhaltsverzeichnis}%  
169 - \def\corollaryname{Korollar}%  
170 -%\def\definitionname{Definition}%  
171 - \def\examplename{Beispiel}%  
172 - \def\exercisename{\"Ubung}%  
173 - \def\figurename{Abb.}%  
174 - \def\keywordname{{\bf Schl\"usselw\"orter:}}  
175 - \def\indexname{Index}  
176 -%\def\lemmaname{Lemma}%  
177 - \def\contriblistname{Mitarbeiter}  
178 - \def\listfigurename{Abbildungsverzeichnis}%  
179 - \def\listtablename{Tabellenverzeichnis}%  
180 - \def\mailname{{\it Correspondence to\/}:}  
181 - \def\noteaddname{Nachtrag}%  
182 - \def\notename{Anmerkung}%  
183 - \def\partname{Teil}%  
184 -%\def\problemname{Problem}%  
185 - \def\proofname{Beweis}%  
186 - \def\propertyname{Eigenschaft}%  
187 -%\def\propositionname{Proposition}%  
188 - \def\questionname{Frage}%  
189 - \def\remarkname{Anmerkung}%  
190 - \def\seename{siehe}  
191 - \def\solutionname{L\"osung}%  
192 - \def\subclassname{{\it Subject Classifications\/}:}  
193 - \def\tablename{Tabelle}%  
194 -%\def\theoremname{Theorem}%  
195 -}  
196 -  
197 -% Ragged bottom for the actual page  
198 -\def\thisbottomragged{\def\@textbottom{\vskip\z@ plus.0001fil  
199 -\global\let\@textbottom\relax}}  
200 -  
201 -\renewcommand\small{%  
202 - \@setfontsize\small\@ixpt{11}%  
203 - \abovedisplayskip 8.5\p@ \@plus3\p@ \@minus4\p@  
204 - \abovedisplayshortskip \z@ \@plus2\p@  
205 - \belowdisplayshortskip 4\p@ \@plus2\p@ \@minus2\p@  
206 - \def\@listi{\leftmargin\leftmargini  
207 - \parsep 0\p@ \@plus1\p@ \@minus\p@  
208 - \topsep 8\p@ \@plus2\p@ \@minus4\p@  
209 - \itemsep0\p@}%  
210 - \belowdisplayskip \abovedisplayskip  
211 -}  
212 -  
213 -\frenchspacing  
214 -\widowpenalty=10000  
215 -\clubpenalty=10000  
216 -  
217 -\setlength\oddsidemargin {63\p@}  
218 -\setlength\evensidemargin {63\p@}  
219 -\setlength\marginparwidth {90\p@}  
220 -  
221 -\setlength\headsep {16\p@}  
222 -  
223 -\setlength\footnotesep{7.7\p@}  
224 -\setlength\textfloatsep{8mm\@plus 2\p@ \@minus 4\p@}  
225 -\setlength\intextsep {8mm\@plus 2\p@ \@minus 2\p@}  
226 -  
227 -\setcounter{secnumdepth}{2}  
228 -  
229 -\newcounter {chapter}  
230 -\renewcommand\thechapter {\@arabic\c@chapter}  
231 -  
232 -\newif\if@mainmatter \@mainmattertrue  
233 -\newcommand\frontmatter{\cleardoublepage  
234 - \@mainmatterfalse\pagenumbering{Roman}}  
235 -\newcommand\mainmatter{\cleardoublepage  
236 - \@mainmattertrue\pagenumbering{arabic}}  
237 -\newcommand\backmatter{\if@openright\cleardoublepage\else\clearpage\fi  
238 - \@mainmatterfalse}  
239 -  
240 -\renewcommand\part{\cleardoublepage  
241 - \thispagestyle{empty}%  
242 - \if@twocolumn  
243 - \onecolumn  
244 - \@tempswatrue  
245 - \else  
246 - \@tempswafalse  
247 - \fi  
248 - \null\vfil  
249 - \secdef\@part\@spart}  
250 -  
251 -\def\@part[#1]#2{%  
252 - \ifnum \c@secnumdepth >-2\relax  
253 - \refstepcounter{part}%  
254 - \addcontentsline{toc}{part}{\thepart\hspace{1em}#1}%  
255 - \else  
256 - \addcontentsline{toc}{part}{#1}%  
257 - \fi  
258 - \markboth{}{}%  
259 - {\centering  
260 - \interlinepenalty \@M  
261 - \normalfont  
262 - \ifnum \c@secnumdepth >-2\relax  
263 - \huge\bfseries \partname~\thepart  
264 - \par  
265 - \vskip 20\p@  
266 - \fi  
267 - \Huge \bfseries #2\par}%  
268 - \@endpart}  
269 -\def\@spart#1{%  
270 - {\centering  
271 - \interlinepenalty \@M  
272 - \normalfont  
273 - \Huge \bfseries #1\par}%  
274 - \@endpart}  
275 -\def\@endpart{\vfil\newpage  
276 - \if@twoside  
277 - \null  
278 - \thispagestyle{empty}%  
279 - \newpage  
280 - \fi  
281 - \if@tempswa  
282 - \twocolumn  
283 - \fi}  
284 -  
285 -\newcommand\chapter{\clearpage  
286 - \thispagestyle{empty}%  
287 - \global\@topnum\z@  
288 - \@afterindentfalse  
289 - \secdef\@chapter\@schapter}  
290 -\def\@chapter[#1]#2{\ifnum \c@secnumdepth >\m@ne  
291 - \if@mainmatter  
292 - \refstepcounter{chapter}%  
293 - \typeout{\@chapapp\space\thechapter.}%  
294 - \addcontentsline{toc}{chapter}%  
295 - {\protect\numberline{\thechapter}#1}%  
296 - \else  
297 - \addcontentsline{toc}{chapter}{#1}%  
298 - \fi  
299 - \else  
300 - \addcontentsline{toc}{chapter}{#1}%  
301 - \fi  
302 - \chaptermark{#1}%  
303 - \addtocontents{lof}{\protect\addvspace{10\p@}}%  
304 - \addtocontents{lot}{\protect\addvspace{10\p@}}%  
305 - \if@twocolumn  
306 - \@topnewpage[\@makechapterhead{#2}]%  
307 - \else  
308 - \@makechapterhead{#2}%  
309 - \@afterheading  
310 - \fi}  
311 -\def\@makechapterhead#1{%  
312 -% \vspace*{50\p@}%  
313 - {\centering  
314 - \ifnum \c@secnumdepth >\m@ne  
315 - \if@mainmatter  
316 - \large\bfseries \@chapapp{} \thechapter  
317 - \par\nobreak  
318 - \vskip 20\p@  
319 - \fi  
320 - \fi  
321 - \interlinepenalty\@M  
322 - \Large \bfseries #1\par\nobreak  
323 - \vskip 40\p@  
324 - }}  
325 -\def\@schapter#1{\if@twocolumn  
326 - \@topnewpage[\@makeschapterhead{#1}]%  
327 - \else  
328 - \@makeschapterhead{#1}%  
329 - \@afterheading  
330 - \fi}  
331 -\def\@makeschapterhead#1{%  
332 -% \vspace*{50\p@}%  
333 - {\centering  
334 - \normalfont  
335 - \interlinepenalty\@M  
336 - \Large \bfseries #1\par\nobreak  
337 - \vskip 40\p@  
338 - }}  
339 -  
340 -\renewcommand\section{\@startsection{section}{1}{\z@}%  
341 - {-18\p@ \@plus -4\p@ \@minus -4\p@}%  
342 - {12\p@ \@plus 4\p@ \@minus 4\p@}%  
343 - {\normalfont\large\bfseries\boldmath  
344 - \rightskip=\z@ \@plus 8em\pretolerance=10000 }}  
345 -\renewcommand\subsection{\@startsection{subsection}{2}{\z@}%  
346 - {-18\p@ \@plus -4\p@ \@minus -4\p@}%  
347 - {8\p@ \@plus 4\p@ \@minus 4\p@}%  
348 - {\normalfont\normalsize\bfseries\boldmath  
349 - \rightskip=\z@ \@plus 8em\pretolerance=10000 }}  
350 -\renewcommand\subsubsection{\@startsection{subsubsection}{3}{\z@}%  
351 - {-18\p@ \@plus -4\p@ \@minus -4\p@}%  
352 - {-0.5em \@plus -0.22em \@minus -0.1em}%  
353 - {\normalfont\normalsize\bfseries\boldmath}}  
354 -\renewcommand\paragraph{\@startsection{paragraph}{4}{\z@}%  
355 - {-12\p@ \@plus -4\p@ \@minus -4\p@}%  
356 - {-0.5em \@plus -0.22em \@minus -0.1em}%  
357 - {\normalfont\normalsize\itshape}}  
358 -\renewcommand\subparagraph[1]{\typeout{LLNCS warning: You should not use  
359 - \string\subparagraph\space with this class}\vskip0.5cm  
360 -You should not use \verb|\subparagraph| with this class.\vskip0.5cm}  
361 -  
362 -\DeclareMathSymbol{\Gamma}{\mathalpha}{letters}{"00}  
363 -\DeclareMathSymbol{\Delta}{\mathalpha}{letters}{"01}  
364 -\DeclareMathSymbol{\Theta}{\mathalpha}{letters}{"02}  
365 -\DeclareMathSymbol{\Lambda}{\mathalpha}{letters}{"03}  
366 -\DeclareMathSymbol{\Xi}{\mathalpha}{letters}{"04}  
367 -\DeclareMathSymbol{\Pi}{\mathalpha}{letters}{"05}  
368 -\DeclareMathSymbol{\Sigma}{\mathalpha}{letters}{"06}  
369 -\DeclareMathSymbol{\Upsilon}{\mathalpha}{letters}{"07}  
370 -\DeclareMathSymbol{\Phi}{\mathalpha}{letters}{"08}  
371 -\DeclareMathSymbol{\Psi}{\mathalpha}{letters}{"09}  
372 -\DeclareMathSymbol{\Omega}{\mathalpha}{letters}{"0A}  
373 -  
374 -\let\footnotesize\small  
375 -  
376 -\if@custvec  
377 -\def\vec#1{\mathchoice{\mbox{\boldmath$\displaystyle#1$}}  
378 -{\mbox{\boldmath$\textstyle#1$}}  
379 -{\mbox{\boldmath$\scriptstyle#1$}}  
380 -{\mbox{\boldmath$\scriptscriptstyle#1$}}}  
381 -\fi  
382 -  
383 -\def\squareforqed{\hbox{\rlap{$\sqcap$}$\sqcup$}}  
384 -\def\qed{\ifmmode\squareforqed\else{\unskip\nobreak\hfil  
385 -\penalty50\hskip1em\null\nobreak\hfil\squareforqed  
386 -\parfillskip=0pt\finalhyphendemerits=0\endgraf}\fi}  
387 -  
388 -\def\getsto{\mathrel{\mathchoice {\vcenter{\offinterlineskip  
389 -\halign{\hfil  
390 -$\displaystyle##$\hfil\cr\gets\cr\to\cr}}}  
391 -{\vcenter{\offinterlineskip\halign{\hfil$\textstyle##$\hfil\cr\gets  
392 -\cr\to\cr}}}  
393 -{\vcenter{\offinterlineskip\halign{\hfil$\scriptstyle##$\hfil\cr\gets  
394 -\cr\to\cr}}}  
395 -{\vcenter{\offinterlineskip\halign{\hfil$\scriptscriptstyle##$\hfil\cr  
396 -\gets\cr\to\cr}}}}}  
397 -\def\lid{\mathrel{\mathchoice {\vcenter{\offinterlineskip\halign{\hfil  
398 -$\displaystyle##$\hfil\cr<\cr\noalign{\vskip1.2pt}=\cr}}}  
399 -{\vcenter{\offinterlineskip\halign{\hfil$\textstyle##$\hfil\cr<\cr  
400 -\noalign{\vskip1.2pt}=\cr}}}  
401 -{\vcenter{\offinterlineskip\halign{\hfil$\scriptstyle##$\hfil\cr<\cr  
402 -\noalign{\vskip1pt}=\cr}}}  
403 -{\vcenter{\offinterlineskip\halign{\hfil$\scriptscriptstyle##$\hfil\cr  
404 -<\cr  
405 -\noalign{\vskip0.9pt}=\cr}}}}}  
406 -\def\gid{\mathrel{\mathchoice {\vcenter{\offinterlineskip\halign{\hfil  
407 -$\displaystyle##$\hfil\cr>\cr\noalign{\vskip1.2pt}=\cr}}}  
408 -{\vcenter{\offinterlineskip\halign{\hfil$\textstyle##$\hfil\cr>\cr  
409 -\noalign{\vskip1.2pt}=\cr}}}  
410 -{\vcenter{\offinterlineskip\halign{\hfil$\scriptstyle##$\hfil\cr>\cr  
411 -\noalign{\vskip1pt}=\cr}}}  
412 -{\vcenter{\offinterlineskip\halign{\hfil$\scriptscriptstyle##$\hfil\cr  
413 ->\cr  
414 -\noalign{\vskip0.9pt}=\cr}}}}}  
415 -\def\grole{\mathrel{\mathchoice {\vcenter{\offinterlineskip  
416 -\halign{\hfil  
417 -$\displaystyle##$\hfil\cr>\cr\noalign{\vskip-1pt}<\cr}}}  
418 -{\vcenter{\offinterlineskip\halign{\hfil$\textstyle##$\hfil\cr  
419 ->\cr\noalign{\vskip-1pt}<\cr}}}  
420 -{\vcenter{\offinterlineskip\halign{\hfil$\scriptstyle##$\hfil\cr  
421 ->\cr\noalign{\vskip-0.8pt}<\cr}}}  
422 -{\vcenter{\offinterlineskip\halign{\hfil$\scriptscriptstyle##$\hfil\cr  
423 ->\cr\noalign{\vskip-0.3pt}<\cr}}}}}  
424 -\def\bbbr{{\rm I\!R}} %reelle Zahlen  
425 -\def\bbbm{{\rm I\!M}}  
426 -\def\bbbn{{\rm I\!N}} %natuerliche Zahlen  
427 -\def\bbbf{{\rm I\!F}}  
428 -\def\bbbh{{\rm I\!H}}  
429 -\def\bbbk{{\rm I\!K}}  
430 -\def\bbbp{{\rm I\!P}}  
431 -\def\bbbone{{\mathchoice {\rm 1\mskip-4mu l} {\rm 1\mskip-4mu l}  
432 -{\rm 1\mskip-4.5mu l} {\rm 1\mskip-5mu l}}}  
433 -\def\bbbc{{\mathchoice {\setbox0=\hbox{$\displaystyle\rm C$}\hbox{\hbox  
434 -to0pt{\kern0.4\wd0\vrule height0.9\ht0\hss}\box0}}  
435 -{\setbox0=\hbox{$\textstyle\rm C$}\hbox{\hbox  
436 -to0pt{\kern0.4\wd0\vrule height0.9\ht0\hss}\box0}}  
437 -{\setbox0=\hbox{$\scriptstyle\rm C$}\hbox{\hbox  
438 -to0pt{\kern0.4\wd0\vrule height0.9\ht0\hss}\box0}}  
439 -{\setbox0=\hbox{$\scriptscriptstyle\rm C$}\hbox{\hbox  
440 -to0pt{\kern0.4\wd0\vrule height0.9\ht0\hss}\box0}}}}  
441 -\def\bbbq{{\mathchoice {\setbox0=\hbox{$\displaystyle\rm  
442 -Q$}\hbox{\raise  
443 -0.15\ht0\hbox to0pt{\kern0.4\wd0\vrule height0.8\ht0\hss}\box0}}  
444 -{\setbox0=\hbox{$\textstyle\rm Q$}\hbox{\raise  
445 -0.15\ht0\hbox to0pt{\kern0.4\wd0\vrule height0.8\ht0\hss}\box0}}  
446 -{\setbox0=\hbox{$\scriptstyle\rm Q$}\hbox{\raise  
447 -0.15\ht0\hbox to0pt{\kern0.4\wd0\vrule height0.7\ht0\hss}\box0}}  
448 -{\setbox0=\hbox{$\scriptscriptstyle\rm Q$}\hbox{\raise  
449 -0.15\ht0\hbox to0pt{\kern0.4\wd0\vrule height0.7\ht0\hss}\box0}}}}  
450 -\def\bbbt{{\mathchoice {\setbox0=\hbox{$\displaystyle\rm  
451 -T$}\hbox{\hbox to0pt{\kern0.3\wd0\vrule height0.9\ht0\hss}\box0}}  
452 -{\setbox0=\hbox{$\textstyle\rm T$}\hbox{\hbox  
453 -to0pt{\kern0.3\wd0\vrule height0.9\ht0\hss}\box0}}  
454 -{\setbox0=\hbox{$\scriptstyle\rm T$}\hbox{\hbox  
455 -to0pt{\kern0.3\wd0\vrule height0.9\ht0\hss}\box0}}  
456 -{\setbox0=\hbox{$\scriptscriptstyle\rm T$}\hbox{\hbox  
457 -to0pt{\kern0.3\wd0\vrule height0.9\ht0\hss}\box0}}}}  
458 -\def\bbbs{{\mathchoice  
459 -{\setbox0=\hbox{$\displaystyle \rm S$}\hbox{\raise0.5\ht0\hbox  
460 -to0pt{\kern0.35\wd0\vrule height0.45\ht0\hss}\hbox  
461 -to0pt{\kern0.55\wd0\vrule height0.5\ht0\hss}\box0}}  
462 -{\setbox0=\hbox{$\textstyle \rm S$}\hbox{\raise0.5\ht0\hbox  
463 -to0pt{\kern0.35\wd0\vrule height0.45\ht0\hss}\hbox  
464 -to0pt{\kern0.55\wd0\vrule height0.5\ht0\hss}\box0}}  
465 -{\setbox0=\hbox{$\scriptstyle \rm S$}\hbox{\raise0.5\ht0\hbox  
466 -to0pt{\kern0.35\wd0\vrule height0.45\ht0\hss}\raise0.05\ht0\hbox  
467 -to0pt{\kern0.5\wd0\vrule height0.45\ht0\hss}\box0}}  
468 -{\setbox0=\hbox{$\scriptscriptstyle\rm S$}\hbox{\raise0.5\ht0\hbox  
469 -to0pt{\kern0.4\wd0\vrule height0.45\ht0\hss}\raise0.05\ht0\hbox  
470 -to0pt{\kern0.55\wd0\vrule height0.45\ht0\hss}\box0}}}}  
471 -\def\bbbz{{\mathchoice {\hbox{$\mathsf\textstyle Z\kern-0.4em Z$}}  
472 -{\hbox{$\mathsf\textstyle Z\kern-0.4em Z$}}  
473 -{\hbox{$\mathsf\scriptstyle Z\kern-0.3em Z$}}  
474 -{\hbox{$\mathsf\scriptscriptstyle Z\kern-0.2em Z$}}}}  
475 -  
476 -\let\ts\,  
477 -  
478 -\setlength\leftmargini {17\p@}  
479 -\setlength\leftmargin {\leftmargini}  
480 -\setlength\leftmarginii {\leftmargini}  
481 -\setlength\leftmarginiii {\leftmargini}  
482 -\setlength\leftmarginiv {\leftmargini}  
483 -\setlength \labelsep {.5em}  
484 -\setlength \labelwidth{\leftmargini}  
485 -\addtolength\labelwidth{-\labelsep}  
486 -  
487 -\def\@listI{\leftmargin\leftmargini  
488 - \parsep 0\p@ \@plus1\p@ \@minus\p@  
489 - \topsep 8\p@ \@plus2\p@ \@minus4\p@  
490 - \itemsep0\p@}  
491 -\let\@listi\@listI  
492 -\@listi  
493 -\def\@listii {\leftmargin\leftmarginii  
494 - \labelwidth\leftmarginii  
495 - \advance\labelwidth-\labelsep  
496 - \topsep 0\p@ \@plus2\p@ \@minus\p@}  
497 -\def\@listiii{\leftmargin\leftmarginiii  
498 - \labelwidth\leftmarginiii  
499 - \advance\labelwidth-\labelsep  
500 - \topsep 0\p@ \@plus\p@\@minus\p@  
501 - \parsep \z@  
502 - \partopsep \p@ \@plus\z@ \@minus\p@}  
503 -  
504 -\renewcommand\labelitemi{\normalfont\bfseries --}  
505 -\renewcommand\labelitemii{$\m@th\bullet$}  
506 -  
507 -\setlength\arraycolsep{1.4\p@}  
508 -\setlength\tabcolsep{1.4\p@}  
509 -  
510 -\def\tableofcontents{\chapter*{\contentsname\@mkboth{{\contentsname}}%  
511 - {{\contentsname}}}  
512 - \def\authcount##1{\setcounter{auco}{##1}\setcounter{@auth}{1}}  
513 - \def\lastand{\ifnum\value{auco}=2\relax  
514 - \unskip{} \andname\  
515 - \else  
516 - \unskip \lastandname\  
517 - \fi}%  
518 - \def\and{\stepcounter{@auth}\relax  
519 - \ifnum\value{@auth}=\value{auco}%  
520 - \lastand  
521 - \else  
522 - \unskip,  
523 - \fi}%  
524 - \@starttoc{toc}\if@restonecol\twocolumn\fi}  
525 -  
526 -\def\l@part#1#2{\addpenalty{\@secpenalty}%  
527 - \addvspace{2em plus\p@}% % space above part line  
528 - \begingroup  
529 - \parindent \z@  
530 - \rightskip \z@ plus 5em  
531 - \hrule\vskip5pt  
532 - \large % same size as for a contribution heading  
533 - \bfseries\boldmath % set line in boldface  
534 - \leavevmode % TeX command to enter horizontal mode.  
535 - #1\par  
536 - \vskip5pt  
537 - \hrule  
538 - \vskip1pt  
539 - \nobreak % Never break after part entry  
540 - \endgroup}  
541 -  
542 -\def\@dotsep{2}  
543 -  
544 -\let\phantomsection=\relax  
545 -  
546 -\def\hyperhrefextend{\ifx\hyper@anchor\@undefined\else  
547 -{}\fi}  
548 -  
549 -\def\addnumcontentsmark#1#2#3{%  
550 -\addtocontents{#1}{\protect\contentsline{#2}{\protect\numberline  
551 - {\thechapter}#3}{\thepage}\hyperhrefextend}}%  
552 -\def\addcontentsmark#1#2#3{%  
553 -\addtocontents{#1}{\protect\contentsline{#2}{#3}{\thepage}\hyperhrefextend}}%  
554 -\def\addcontentsmarkwop#1#2#3{%  
555 -\addtocontents{#1}{\protect\contentsline{#2}{#3}{0}\hyperhrefextend}}%  
556 -  
557 -\def\@adcmk[#1]{\ifcase #1 \or  
558 -\def\@gtempa{\addnumcontentsmark}%  
559 - \or \def\@gtempa{\addcontentsmark}%  
560 - \or \def\@gtempa{\addcontentsmarkwop}%  
561 - \fi\@gtempa{toc}{chapter}%  
562 -}  
563 -\def\addtocmark{%  
564 -\phantomsection  
565 -\@ifnextchar[{\@adcmk}{\@adcmk[3]}%  
566 -}  
567 -  
568 -\def\l@chapter#1#2{\addpenalty{-\@highpenalty}  
569 - \vskip 1.0em plus 1pt \@tempdima 1.5em \begingroup  
570 - \parindent \z@ \rightskip \@tocrmarg  
571 - \advance\rightskip by 0pt plus 2cm  
572 - \parfillskip -\rightskip \pretolerance=10000  
573 - \leavevmode \advance\leftskip\@tempdima \hskip -\leftskip  
574 - {\large\bfseries\boldmath#1}\ifx0#2\hfil\null  
575 - \else  
576 - \nobreak  
577 - \leaders\hbox{$\m@th \mkern \@dotsep mu.\mkern  
578 - \@dotsep mu$}\hfill  
579 - \nobreak\hbox to\@pnumwidth{\hss #2}%  
580 - \fi\par  
581 - \penalty\@highpenalty \endgroup}  
582 -  
583 -\def\l@title#1#2{\addpenalty{-\@highpenalty}  
584 - \addvspace{8pt plus 1pt}  
585 - \@tempdima \z@  
586 - \begingroup  
587 - \parindent \z@ \rightskip \@tocrmarg  
588 - \advance\rightskip by 0pt plus 2cm  
589 - \parfillskip -\rightskip \pretolerance=10000  
590 - \leavevmode \advance\leftskip\@tempdima \hskip -\leftskip  
591 - #1\nobreak  
592 - \leaders\hbox{$\m@th \mkern \@dotsep mu.\mkern  
593 - \@dotsep mu$}\hfill  
594 - \nobreak\hbox to\@pnumwidth{\hss #2}\par  
595 - \penalty\@highpenalty \endgroup}  
596 -  
597 -\def\l@author#1#2{\addpenalty{\@highpenalty}  
598 - \@tempdima=15\p@ %\z@  
599 - \begingroup  
600 - \parindent \z@ \rightskip \@tocrmarg  
601 - \advance\rightskip by 0pt plus 2cm  
602 - \pretolerance=10000  
603 - \leavevmode \advance\leftskip\@tempdima %\hskip -\leftskip  
604 - \textit{#1}\par  
605 - \penalty\@highpenalty \endgroup}  
606 -  
607 -\setcounter{tocdepth}{0}  
608 -\newdimen\tocchpnum  
609 -\newdimen\tocsecnum  
610 -\newdimen\tocsectotal  
611 -\newdimen\tocsubsecnum  
612 -\newdimen\tocsubsectotal  
613 -\newdimen\tocsubsubsecnum  
614 -\newdimen\tocsubsubsectotal  
615 -\newdimen\tocparanum  
616 -\newdimen\tocparatotal  
617 -\newdimen\tocsubparanum  
618 -\tocchpnum=\z@ % no chapter numbers  
619 -\tocsecnum=15\p@ % section 88. plus 2.222pt  
620 -\tocsubsecnum=23\p@ % subsection 88.8 plus 2.222pt  
621 -\tocsubsubsecnum=27\p@ % subsubsection 88.8.8 plus 1.444pt  
622 -\tocparanum=35\p@ % paragraph 88.8.8.8 plus 1.666pt  
623 -\tocsubparanum=43\p@ % subparagraph 88.8.8.8.8 plus 1.888pt  
624 -\def\calctocindent{%  
625 -\tocsectotal=\tocchpnum  
626 -\advance\tocsectotal by\tocsecnum  
627 -\tocsubsectotal=\tocsectotal  
628 -\advance\tocsubsectotal by\tocsubsecnum  
629 -\tocsubsubsectotal=\tocsubsectotal  
630 -\advance\tocsubsubsectotal by\tocsubsubsecnum  
631 -\tocparatotal=\tocsubsubsectotal  
632 -\advance\tocparatotal by\tocparanum}  
633 -\calctocindent  
634 -  
635 -\def\l@section{\@dottedtocline{1}{\tocchpnum}{\tocsecnum}}  
636 -\def\l@subsection{\@dottedtocline{2}{\tocsectotal}{\tocsubsecnum}}  
637 -\def\l@subsubsection{\@dottedtocline{3}{\tocsubsectotal}{\tocsubsubsecnum}}  
638 -\def\l@paragraph{\@dottedtocline{4}{\tocsubsubsectotal}{\tocparanum}}  
639 -\def\l@subparagraph{\@dottedtocline{5}{\tocparatotal}{\tocsubparanum}}  
640 -  
641 -\def\listoffigures{\@restonecolfalse\if@twocolumn\@restonecoltrue\onecolumn  
642 - \fi\section*{\listfigurename\@mkboth{{\listfigurename}}{{\listfigurename}}}  
643 - \@starttoc{lof}\if@restonecol\twocolumn\fi}  
644 -\def\l@figure{\@dottedtocline{1}{0em}{1.5em}}  
645 -  
646 -\def\listoftables{\@restonecolfalse\if@twocolumn\@restonecoltrue\onecolumn  
647 - \fi\section*{\listtablename\@mkboth{{\listtablename}}{{\listtablename}}}  
648 - \@starttoc{lot}\if@restonecol\twocolumn\fi}  
649 -\let\l@table\l@figure  
650 -  
651 -\renewcommand\listoffigures{%  
652 - \section*{\listfigurename  
653 - \@mkboth{\listfigurename}{\listfigurename}}%  
654 - \@starttoc{lof}%  
655 - }  
656 -  
657 -\renewcommand\listoftables{%  
658 - \section*{\listtablename  
659 - \@mkboth{\listtablename}{\listtablename}}%  
660 - \@starttoc{lot}%  
661 - }  
662 -  
663 -\ifx\oribibl\undefined  
664 -\ifx\citeauthoryear\undefined  
665 -\renewenvironment{thebibliography}[1]  
666 - {\section*{\refname}  
667 - \def\@biblabel##1{##1.}  
668 - \small  
669 - \list{\@biblabel{\@arabic\c@enumiv}}%  
670 - {\settowidth\labelwidth{\@biblabel{#1}}%  
671 - \leftmargin\labelwidth  
672 - \advance\leftmargin\labelsep  
673 - \if@openbib  
674 - \advance\leftmargin\bibindent  
675 - \itemindent -\bibindent  
676 - \listparindent \itemindent  
677 - \parsep \z@  
678 - \fi  
679 - \usecounter{enumiv}%  
680 - \let\p@enumiv\@empty  
681 - \renewcommand\theenumiv{\@arabic\c@enumiv}}%  
682 - \if@openbib  
683 - \renewcommand\newblock{\par}%  
684 - \else  
685 - \renewcommand\newblock{\hskip .11em \@plus.33em \@minus.07em}%  
686 - \fi  
687 - \sloppy\clubpenalty4000\widowpenalty4000%  
688 - \sfcode`\.=\@m}  
689 - {\def\@noitemerr  
690 - {\@latex@warning{Empty `thebibliography' environment}}%  
691 - \endlist}  
692 -\def\@lbibitem[#1]#2{\item[{[#1]}\hfill]\if@filesw  
693 - {\let\protect\noexpand\immediate  
694 - \write\@auxout{\string\bibcite{#2}{#1}}}\fi\ignorespaces}  
695 -\newcount\@tempcntc  
696 -\def\@citex[#1]#2{\if@filesw\immediate\write\@auxout{\string\citation{#2}}\fi  
697 - \@tempcnta\z@\@tempcntb\m@ne\def\@citea{}\@cite{\@for\@citeb:=#2\do  
698 - {\@ifundefined  
699 - {b@\@citeb}{\@citeo\@tempcntb\m@ne\@citea\def\@citea{,}{\bfseries  
700 - ?}\@warning  
701 - {Citation `\@citeb' on page \thepage \space undefined}}%  
702 - {\setbox\z@\hbox{\global\@tempcntc0\csname b@\@citeb\endcsname\relax}%  
703 - \ifnum\@tempcntc=\z@ \@citeo\@tempcntb\m@ne  
704 - \@citea\def\@citea{,}\hbox{\csname b@\@citeb\endcsname}%  
705 - \else  
706 - \advance\@tempcntb\@ne  
707 - \ifnum\@tempcntb=\@tempcntc  
708 - \else\advance\@tempcntb\m@ne\@citeo  
709 - \@tempcnta\@tempcntc\@tempcntb\@tempcntc\fi\fi}}\@citeo}{#1}}  
710 -\def\@citeo{\ifnum\@tempcnta>\@tempcntb\else  
711 - \@citea\def\@citea{,\,\hskip\z@skip}%  
712 - \ifnum\@tempcnta=\@tempcntb\the\@tempcnta\else  
713 - {\advance\@tempcnta\@ne\ifnum\@tempcnta=\@tempcntb \else  
714 - \def\@citea{--}\fi  
715 - \advance\@tempcnta\m@ne\the\@tempcnta\@citea\the\@tempcntb}\fi\fi}  
716 -\else  
717 -\renewenvironment{thebibliography}[1]  
718 - {\section*{\refname}  
719 - \small  
720 - \list{}%  
721 - {\settowidth\labelwidth{}%  
722 - \leftmargin\parindent  
723 - \itemindent=-\parindent  
724 - \labelsep=\z@  
725 - \if@openbib  
726 - \advance\leftmargin\bibindent  
727 - \itemindent -\bibindent  
728 - \listparindent \itemindent  
729 - \parsep \z@  
730 - \fi  
731 - \usecounter{enumiv}%  
732 - \let\p@enumiv\@empty  
733 - \renewcommand\theenumiv{}}%  
734 - \if@openbib  
735 - \renewcommand\newblock{\par}%  
736 - \else  
737 - \renewcommand\newblock{\hskip .11em \@plus.33em \@minus.07em}%  
738 - \fi  
739 - \sloppy\clubpenalty4000\widowpenalty4000%  
740 - \sfcode`\.=\@m}  
741 - {\def\@noitemerr  
742 - {\@latex@warning{Empty `thebibliography' environment}}%  
743 - \endlist}  
744 - \def\@cite#1{#1}%  
745 - \def\@lbibitem[#1]#2{\item[]\if@filesw  
746 - {\def\protect##1{\string ##1\space}\immediate  
747 - \write\@auxout{\string\bibcite{#2}{#1}}}\fi\ignorespaces}  
748 - \fi  
749 -\else  
750 -\@cons\@openbib@code{\noexpand\small}  
751 -\fi  
752 -  
753 -\def\idxquad{\hskip 10\p@}% space that divides entry from number  
754 -  
755 -\def\@idxitem{\par\hangindent 10\p@}  
756 -  
757 -\def\subitem{\par\setbox0=\hbox{--\enspace}% second order  
758 - \noindent\hangindent\wd0\box0}% index entry  
759 -  
760 -\def\subsubitem{\par\setbox0=\hbox{--\,--\enspace}% third  
761 - \noindent\hangindent\wd0\box0}% order index entry  
762 -  
763 -\def\indexspace{\par \vskip 10\p@ plus5\p@ minus3\p@\relax}  
764 -  
765 -\renewenvironment{theindex}  
766 - {\@mkboth{\indexname}{\indexname}%  
767 - \thispagestyle{empty}\parindent\z@  
768 - \parskip\z@ \@plus .3\p@\relax  
769 - \let\item\par  
770 - \def\,{\relax\ifmmode\mskip\thinmuskip  
771 - \else\hskip0.2em\ignorespaces\fi}%  
772 - \normalfont\small  
773 - \begin{multicols}{2}[\@makeschapterhead{\indexname}]%  
774 - }  
775 - {\end{multicols}}  
776 -  
777 -\renewcommand\footnoterule{%  
778 - \kern-3\p@  
779 - \hrule\@width 2truecm  
780 - \kern2.6\p@}  
781 - \newdimen\fnindent  
782 - \fnindent1em  
783 -\long\def\@makefntext#1{%  
784 - \parindent \fnindent%  
785 - \leftskip \fnindent%  
786 - \noindent  
787 - \llap{\hb@xt@1em{\hss\@makefnmark\ }}\ignorespaces#1}  
788 -  
789 -\long\def\@makecaption#1#2{%  
790 - \small  
791 - \vskip\abovecaptionskip  
792 - \sbox\@tempboxa{{\bfseries #1.} #2}%  
793 - \ifdim \wd\@tempboxa >\hsize  
794 - {\bfseries #1.} #2\par  
795 - \else  
796 - \global \@minipagefalse  
797 - \hb@xt@\hsize{\hfil\box\@tempboxa\hfil}%  
798 - \fi  
799 - \vskip\belowcaptionskip}  
800 -  
801 -\def\fps@figure{htbp}  
802 -\def\fnum@figure{\figurename\thinspace\thefigure}  
803 -\def \@floatboxreset {%  
804 - \reset@font  
805 - \small  
806 - \@setnobreak  
807 - \@setminipage  
808 -}  
809 -\def\fps@table{htbp}  
810 -\def\fnum@table{\tablename~\thetable}  
811 -\renewenvironment{table}  
812 - {\setlength\abovecaptionskip{0\p@}%  
813 - \setlength\belowcaptionskip{10\p@}%  
814 - \@float{table}}  
815 - {\end@float}  
816 -\renewenvironment{table*}  
817 - {\setlength\abovecaptionskip{0\p@}%  
818 - \setlength\belowcaptionskip{10\p@}%  
819 - \@dblfloat{table}}  
820 - {\end@dblfloat}  
821 -  
822 -\long\def\@caption#1[#2]#3{\par\addcontentsline{\csname  
823 - ext@#1\endcsname}{#1}{\protect\numberline{\csname  
824 - the#1\endcsname}{\ignorespaces #2}}\begingroup  
825 - \@parboxrestore  
826 - \@makecaption{\csname fnum@#1\endcsname}{\ignorespaces #3}\par  
827 - \endgroup}  
828 -  
829 -% LaTeX does not provide a command to enter the authors institute  
830 -% addresses. The \institute command is defined here.  
831 -  
832 -\newcounter{@inst}  
833 -\newcounter{@auth}  
834 -\newcounter{auco}  
835 -\newdimen\instindent  
836 -\newbox\authrun  
837 -\newtoks\authorrunning  
838 -\newtoks\tocauthor  
839 -\newbox\titrun  
840 -\newtoks\titlerunning  
841 -\newtoks\toctitle  
842 -  
843 -\def\clearheadinfo{\gdef\@author{No Author Given}%  
844 - \gdef\@title{No Title Given}%  
845 - \gdef\@subtitle{}%  
846 - \gdef\@institute{No Institute Given}%  
847 - \gdef\@thanks{}%  
848 - \global\titlerunning={}\global\authorrunning={}%  
849 - \global\toctitle={}\global\tocauthor={}}  
850 -  
851 -\def\institute#1{\gdef\@institute{#1}}  
852 -  
853 -\def\institutename{\par  
854 - \begingroup  
855 - \parskip=\z@  
856 - \parindent=\z@  
857 - \setcounter{@inst}{1}%  
858 - \def\and{\par\stepcounter{@inst}%  
859 - \noindent$^{\the@inst}$\enspace\ignorespaces}%  
860 - \setbox0=\vbox{\def\thanks##1{}\@institute}%  
861 - \ifnum\c@@inst=1\relax  
862 - \gdef\fnnstart{0}%  
863 - \else  
864 - \xdef\fnnstart{\c@@inst}%  
865 - \setcounter{@inst}{1}%  
866 - \noindent$^{\the@inst}$\enspace  
867 - \fi  
868 - \ignorespaces  
869 - \@institute\par  
870 - \endgroup}  
871 -  
872 -\def\@fnsymbol#1{\ensuremath{\ifcase#1\or\star\or{\star\star}\or  
873 - {\star\star\star}\or \dagger\or \ddagger\or  
874 - \mathchar "278\or \mathchar "27B\or \|\or **\or \dagger\dagger  
875 - \or \ddagger\ddagger \else\@ctrerr\fi}}  
876 -  
877 -\def\inst#1{\unskip$^{#1}$}  
878 -\def\fnmsep{\unskip$^,$}  
879 -\def\email#1{{\tt#1}}  
880 -\AtBeginDocument{\@ifundefined{url}{\def\url#1{#1}}{}%  
881 -\@ifpackageloaded{babel}{%  
882 -\@ifundefined{extrasenglish}{}{\addto\extrasenglish{\switcht@albion}}%  
883 -\@ifundefined{extrasfrenchb}{}{\addto\extrasfrenchb{\switcht@francais}}%  
884 -\@ifundefined{extrasgerman}{}{\addto\extrasgerman{\switcht@deutsch}}%  
885 -\@ifundefined{extrasngerman}{}{\addto\extrasngerman{\switcht@deutsch}}%  
886 -}{\switcht@@therlang}%  
887 -\providecommand{\keywords}[1]{\par\addvspace\baselineskip  
888 -\noindent\keywordname\enspace\ignorespaces#1}%  
889 -}  
890 -\def\homedir{\~{ }}  
891 -  
892 -\def\subtitle#1{\gdef\@subtitle{#1}}  
893 -\clearheadinfo  
894 -%  
895 -%%% to avoid hyperref warnings  
896 -\providecommand*{\toclevel@author}{999}  
897 -%%% to make title-entry parent of section-entries  
898 -\providecommand*{\toclevel@title}{0}  
899 -%  
900 -\renewcommand\maketitle{\newpage  
901 -\phantomsection  
902 - \refstepcounter{chapter}%  
903 - \stepcounter{section}%  
904 - \setcounter{section}{0}%  
905 - \setcounter{subsection}{0}%  
906 - \setcounter{figure}{0}  
907 - \setcounter{table}{0}  
908 - \setcounter{equation}{0}  
909 - \setcounter{footnote}{0}%  
910 - \begingroup  
911 - \parindent=\z@  
912 - \renewcommand\thefootnote{\@fnsymbol\c@footnote}%  
913 - \if@twocolumn  
914 - \ifnum \col@number=\@ne  
915 - \@maketitle  
916 - \else  
917 - \twocolumn[\@maketitle]%  
918 - \fi  
919 - \else  
920 - \newpage  
921 - \global\@topnum\z@ % Prevents figures from going at top of page.  
922 - \@maketitle  
923 - \fi  
924 - \thispagestyle{empty}\@thanks  
925 -%  
926 - \def\\{\unskip\ \ignorespaces}\def\inst##1{\unskip{}}%  
927 - \def\thanks##1{\unskip{}}\def\fnmsep{\unskip}%  
928 - \instindent=\hsize  
929 - \advance\instindent by-\headlineindent  
930 - \if!\the\toctitle!\addcontentsline{toc}{title}{\@title}\else  
931 - \addcontentsline{toc}{title}{\the\toctitle}\fi  
932 - \if@runhead  
933 - \if!\the\titlerunning!\else  
934 - \edef\@title{\the\titlerunning}%  
935 - \fi  
936 - \global\setbox\titrun=\hbox{\small\rm\unboldmath\ignorespaces\@title}%  
937 - \ifdim\wd\titrun>\instindent  
938 - \typeout{Title too long for running head. Please supply}%  
939 - \typeout{a shorter form with \string\titlerunning\space prior to  
940 - \string\maketitle}%  
941 - \global\setbox\titrun=\hbox{\small\rm  
942 - Title Suppressed Due to Excessive Length}%  
943 - \fi  
944 - \xdef\@title{\copy\titrun}%  
945 - \fi  
946 -%  
947 - \if!\the\tocauthor!\relax  
948 - {\def\and{\noexpand\protect\noexpand\and}%  
949 - \protected@xdef\toc@uthor{\@author}}%  
950 - \else  
951 - \def\\{\noexpand\protect\noexpand\newline}%  
952 - \protected@xdef\scratch{\the\tocauthor}%  
953 - \protected@xdef\toc@uthor{\scratch}%  
954 - \fi  
955 - \addtocontents{toc}{\noexpand\protect\noexpand\authcount{\the\c@auco}}%  
956 - \addcontentsline{toc}{author}{\toc@uthor}%  
957 - \if@runhead  
958 - \if!\the\authorrunning!  
959 - \value{@inst}=\value{@auth}%  
960 - \setcounter{@auth}{1}%  
961 - \else  
962 - \edef\@author{\the\authorrunning}%  
963 - \fi  
964 - \global\setbox\authrun=\hbox{\small\unboldmath\@author\unskip}%  
965 - \ifdim\wd\authrun>\instindent  
966 - \typeout{Names of authors too long for running head. Please supply}%  
967 - \typeout{a shorter form with \string\authorrunning\space prior to  
968 - \string\maketitle}%  
969 - \global\setbox\authrun=\hbox{\small\rm  
970 - Authors Suppressed Due to Excessive Length}%  
971 - \fi  
972 - \xdef\@author{\copy\authrun}%  
973 - \markboth{\@author}{\@title}%  
974 - \fi  
975 - \endgroup  
976 - \setcounter{footnote}{\fnnstart}%  
977 - \clearheadinfo}  
978 -%  
979 -\def\@maketitle{\newpage  
980 - \markboth{}{}%  
981 - \def\lastand{\ifnum\value{@inst}=2\relax  
982 - \unskip{} \andname\  
983 - \else  
984 - \unskip \lastandname\  
985 - \fi}%  
986 - \def\and{\stepcounter{@auth}\relax  
987 - \ifnum\value{@auth}=\value{@inst}%  
988 - \lastand  
989 - \else  
990 - \unskip,  
991 - \fi}%  
992 - \begin{center}%  
993 - \let\newline\\  
994 - {\Large \bfseries\boldmath  
995 - \pretolerance=10000  
996 - \@title \par}\vskip .8cm  
997 -\if!\@subtitle!\else {\large \bfseries\boldmath  
998 - \vskip -.65cm  
999 - \pretolerance=10000  
1000 - \@subtitle \par}\vskip .8cm\fi  
1001 - \setbox0=\vbox{\setcounter{@auth}{1}\def\and{\stepcounter{@auth}}%  
1002 - \def\thanks##1{}\@author}%  
1003 - \global\value{@inst}=\value{@auth}%  
1004 - \global\value{auco}=\value{@auth}%  
1005 - \setcounter{@auth}{1}%  
1006 -{\lineskip .5em  
1007 -\noindent\ignorespaces  
1008 -\@author\vskip.35cm}  
1009 - {\small\institutename}  
1010 - \end{center}%  
1011 - }  
1012 -  
1013 -% definition of the "\spnewtheorem" command.  
1014 -%  
1015 -% Usage:  
1016 -%  
1017 -% \spnewtheorem{env_nam}{caption}[within]{cap_font}{body_font}  
1018 -% or \spnewtheorem{env_nam}[numbered_like]{caption}{cap_font}{body_font}  
1019 -% or \spnewtheorem*{env_nam}{caption}{cap_font}{body_font}  
1020 -%  
1021 -% New is "cap_font" and "body_font". It stands for  
1022 -% fontdefinition of the caption and the text itself.  
1023 -%  
1024 -% "\spnewtheorem*" gives a theorem without number.  
1025 -%  
1026 -% A defined spnewthoerem environment is used as described  
1027 -% by Lamport.  
1028 -%  
1029 -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%  
1030 -  
1031 -\def\@thmcountersep{}  
1032 -\def\@thmcounterend{.}  
1033 -  
1034 -\def\spnewtheorem{\@ifstar{\@sthm}{\@Sthm}}  
1035 -  
1036 -% definition of \spnewtheorem with number  
1037 -  
1038 -\def\@spnthm#1#2{%  
1039 - \@ifnextchar[{\@spxnthm{#1}{#2}}{\@spynthm{#1}{#2}}}  
1040 -\def\@Sthm#1{\@ifnextchar[{\@spothm{#1}}{\@spnthm{#1}}}  
1041 -  
1042 -\def\@spxnthm#1#2[#3]#4#5{\expandafter\@ifdefinable\csname #1\endcsname  
1043 - {\@definecounter{#1}\@addtoreset{#1}{#3}%  
1044 - \expandafter\xdef\csname the#1\endcsname{\expandafter\noexpand  
1045 - \csname the#3\endcsname \noexpand\@thmcountersep \@thmcounter{#1}}%  
1046 - \expandafter\xdef\csname #1name\endcsname{#2}%  
1047 - \global\@namedef{#1}{\@spthm{#1}{\csname #1name\endcsname}{#4}{#5}}%  
1048 - \global\@namedef{end#1}{\@endtheorem}}}  
1049 -  
1050 -\def\@spynthm#1#2#3#4{\expandafter\@ifdefinable\csname #1\endcsname  
1051 - {\@definecounter{#1}%  
1052 - \expandafter\xdef\csname the#1\endcsname{\@thmcounter{#1}}%  
1053 - \expandafter\xdef\csname #1name\endcsname{#2}%  
1054 - \global\@namedef{#1}{\@spthm{#1}{\csname #1name\endcsname}{#3}{#4}}%  
1055 - \global\@namedef{end#1}{\@endtheorem}}}  
1056 -  
1057 -\def\@spothm#1[#2]#3#4#5{%  
1058 - \@ifundefined{c@#2}{\@latexerr{No theorem environment `#2' defined}\@eha}%  
1059 - {\expandafter\@ifdefinable\csname #1\endcsname  
1060 - {\newaliascnt{#1}{#2}%  
1061 - \expandafter\xdef\csname #1name\endcsname{#3}%  
1062 - \global\@namedef{#1}{\@spthm{#1}{\csname #1name\endcsname}{#4}{#5}}%  
1063 - \global\@namedef{end#1}{\@endtheorem}}}}  
1064 -  
1065 -\def\@spthm#1#2#3#4{\topsep 7\p@ \@plus2\p@ \@minus4\p@  
1066 -\refstepcounter{#1}%  
1067 -\@ifnextchar[{\@spythm{#1}{#2}{#3}{#4}}{\@spxthm{#1}{#2}{#3}{#4}}}  
1068 -  
1069 -\def\@spxthm#1#2#3#4{\@spbegintheorem{#2}{\csname the#1\endcsname}{#3}{#4}%  
1070 - \ignorespaces}  
1071 -  
1072 -\def\@spythm#1#2#3#4[#5]{\@spopargbegintheorem{#2}{\csname  
1073 - the#1\endcsname}{#5}{#3}{#4}\ignorespaces}  
1074 -  
1075 -\def\@spbegintheorem#1#2#3#4{\trivlist  
1076 - \item[\hskip\labelsep{#3#1\ #2\@thmcounterend}]#4}  
1077 -  
1078 -\def\@spopargbegintheorem#1#2#3#4#5{\trivlist  
1079 - \item[\hskip\labelsep{#4#1\ #2}]{#4(#3)\@thmcounterend\ }#5}  
1080 -  
1081 -% definition of \spnewtheorem* without number  
1082 -  
1083 -\def\@sthm#1#2{\@Ynthm{#1}{#2}}  
1084 -  
1085 -\def\@Ynthm#1#2#3#4{\expandafter\@ifdefinable\csname #1\endcsname  
1086 - {\global\@namedef{#1}{\@Thm{\csname #1name\endcsname}{#3}{#4}}%  
1087 - \expandafter\xdef\csname #1name\endcsname{#2}%  
1088 - \global\@namedef{end#1}{\@endtheorem}}}  
1089 -  
1090 -\def\@Thm#1#2#3{\topsep 7\p@ \@plus2\p@ \@minus4\p@  
1091 -\@ifnextchar[{\@Ythm{#1}{#2}{#3}}{\@Xthm{#1}{#2}{#3}}}  
1092 -  
1093 -\def\@Xthm#1#2#3{\@Begintheorem{#1}{#2}{#3}\ignorespaces}  
1094 -  
1095 -\def\@Ythm#1#2#3[#4]{\@Opargbegintheorem{#1}  
1096 - {#4}{#2}{#3}\ignorespaces}  
1097 -  
1098 -\def\@Begintheorem#1#2#3{#3\trivlist  
1099 - \item[\hskip\labelsep{#2#1\@thmcounterend}]}  
1100 -  
1101 -\def\@Opargbegintheorem#1#2#3#4{#4\trivlist  
1102 - \item[\hskip\labelsep{#3#1}]{#3(#2)\@thmcounterend\ }}  
1103 -  
1104 -\if@envcntsect  
1105 - \def\@thmcountersep{.}  
1106 - \spnewtheorem{theorem}{Theorem}[section]{\bfseries}{\itshape}  
1107 -\else  
1108 - \spnewtheorem{theorem}{Theorem}{\bfseries}{\itshape}  
1109 - \if@envcntreset  
1110 - \@addtoreset{theorem}{section}  
1111 - \else  
1112 - \@addtoreset{theorem}{chapter}  
1113 - \fi  
1114 -\fi  
1115 -  
1116 -%definition of divers theorem environments  
1117 -\spnewtheorem*{claim}{Claim}{\itshape}{\rmfamily}  
1118 -\spnewtheorem*{proof}{Proof}{\itshape}{\rmfamily}  
1119 -\if@envcntsame % alle Umgebungen wie Theorem.  
1120 - \def\spn@wtheorem#1#2#3#4{\@spothm{#1}[theorem]{#2}{#3}{#4}}  
1121 -\else % alle Umgebungen mit eigenem Zaehler  
1122 - \if@envcntsect % mit section numeriert  
1123 - \def\spn@wtheorem#1#2#3#4{\@spxnthm{#1}{#2}[section]{#3}{#4}}  
1124 - \else % nicht mit section numeriert  
1125 - \if@envcntreset  
1126 - \def\spn@wtheorem#1#2#3#4{\@spynthm{#1}{#2}{#3}{#4}  
1127 - \@addtoreset{#1}{section}}  
1128 - \else  
1129 - \def\spn@wtheorem#1#2#3#4{\@spynthm{#1}{#2}{#3}{#4}  
1130 - \@addtoreset{#1}{chapter}}%  
1131 - \fi  
1132 - \fi  
1133 -\fi  
1134 -\spn@wtheorem{case}{Case}{\itshape}{\rmfamily}  
1135 -\spn@wtheorem{conjecture}{Conjecture}{\itshape}{\rmfamily}  
1136 -\spn@wtheorem{corollary}{Corollary}{\bfseries}{\itshape}  
1137 -\spn@wtheorem{definition}{Definition}{\bfseries}{\itshape}  
1138 -\spn@wtheorem{example}{Example}{\itshape}{\rmfamily}  
1139 -\spn@wtheorem{exercise}{Exercise}{\itshape}{\rmfamily}  
1140 -\spn@wtheorem{lemma}{Lemma}{\bfseries}{\itshape}  
1141 -\spn@wtheorem{note}{Note}{\itshape}{\rmfamily}  
1142 -\spn@wtheorem{problem}{Problem}{\itshape}{\rmfamily}  
1143 -\spn@wtheorem{property}{Property}{\itshape}{\rmfamily}  
1144 -\spn@wtheorem{proposition}{Proposition}{\bfseries}{\itshape}  
1145 -\spn@wtheorem{question}{Question}{\itshape}{\rmfamily}  
1146 -\spn@wtheorem{solution}{Solution}{\itshape}{\rmfamily}  
1147 -\spn@wtheorem{remark}{Remark}{\itshape}{\rmfamily}  
1148 -  
1149 -\def\@takefromreset#1#2{%  
1150 - \def\@tempa{#1}%  
1151 - \let\@tempd\@elt  
1152 - \def\@elt##1{%  
1153 - \def\@tempb{##1}%  
1154 - \ifx\@tempa\@tempb\else  
1155 - \@addtoreset{##1}{#2}%  
1156 - \fi}%  
1157 - \expandafter\expandafter\let\expandafter\@tempc\csname cl@#2\endcsname  
1158 - \expandafter\def\csname cl@#2\endcsname{}%  
1159 - \@tempc  
1160 - \let\@elt\@tempd}  
1161 -  
1162 -\def\theopargself{\def\@spopargbegintheorem##1##2##3##4##5{\trivlist  
1163 - \item[\hskip\labelsep{##4##1\ ##2}]{##4##3\@thmcounterend\ }##5}  
1164 - \def\@Opargbegintheorem##1##2##3##4{##4\trivlist  
1165 - \item[\hskip\labelsep{##3##1}]{##3##2\@thmcounterend\ }}  
1166 - }  
1167 -  
1168 -\renewenvironment{abstract}{%  
1169 - \list{}{\advance\topsep by0.35cm\relax\small  
1170 - \leftmargin=1cm  
1171 - \labelwidth=\z@  
1172 - \listparindent=\z@  
1173 - \itemindent\listparindent  
1174 - \rightmargin\leftmargin}\item[\hskip\labelsep  
1175 - \bfseries\abstractname]}  
1176 - {\endlist}  
1177 -  
1178 -\newdimen\headlineindent % dimension for space between  
1179 -\headlineindent=1.166cm % number and text of headings.  
1180 -  
1181 -\def\ps@headings{\let\@mkboth\@gobbletwo  
1182 - \let\@oddfoot\@empty\let\@evenfoot\@empty  
1183 - \def\@evenhead{\normalfont\small\rlap{\thepage}\hspace{\headlineindent}%  
1184 - \leftmark\hfil}  
1185 - \def\@oddhead{\normalfont\small\hfil\rightmark\hspace{\headlineindent}%  
1186 - \llap{\thepage}}  
1187 - \def\chaptermark##1{}%  
1188 - \def\sectionmark##1{}%  
1189 - \def\subsectionmark##1{}}  
1190 -  
1191 -\def\ps@titlepage{\let\@mkboth\@gobbletwo  
1192 - \let\@oddfoot\@empty\let\@evenfoot\@empty  
1193 - \def\@evenhead{\normalfont\small\rlap{\thepage}\hspace{\headlineindent}%  
1194 - \hfil}  
1195 - \def\@oddhead{\normalfont\small\hfil\hspace{\headlineindent}%  
1196 - \llap{\thepage}}  
1197 - \def\chaptermark##1{}%  
1198 - \def\sectionmark##1{}%  
1199 - \def\subsectionmark##1{}}  
1200 -  
1201 -\if@runhead\ps@headings\else  
1202 -\ps@empty\fi  
1203 -  
1204 -\setlength\arraycolsep{1.4\p@}  
1205 -\setlength\tabcolsep{1.4\p@}  
1206 -  
1207 -\endinput  
1208 -%end of file llncs.cls  
OSS-2016/llncs.tex
@@ -1,1256 +0,0 @@ @@ -1,1256 +0,0 @@
1 -% This is LLNCS.DOC the documentation file of  
2 -% the LaTeX2e class from Springer-Verlag  
3 -% for Lecture Notes in Computer Science, version 2.4  
4 -\documentclass{llncs}  
5 -\usepackage{llncsdoc}  
6 -%  
7 -\begin{document}  
8 -\markboth{\LaTeXe{} Class for Lecture Notes in Computer  
9 -Science}{\LaTeXe{} Class for Lecture Notes in Computer Science}  
10 -\thispagestyle{empty}  
11 -\begin{flushleft}  
12 -\LARGE\bfseries Instructions for Authors\\  
13 -Coding with \LaTeX\\[2cm]  
14 -\end{flushleft}  
15 -\rule{\textwidth}{1pt}  
16 -\vspace{2pt}  
17 -\begin{flushright}  
18 -\Huge  
19 -\begin{tabular}{@{}l}  
20 -\LaTeXe{} Class\\  
21 -for Lecture Notes\\  
22 -in Computer Science\\[6pt]  
23 -{\Large Version 2.4}  
24 -\end{tabular}  
25 -\end{flushright}  
26 -\rule{\textwidth}{1pt}  
27 -\vfill  
28 -%\begin{flushleft}  
29 -%\large\itshape  
30 -%\begin{tabular}{@{}l}  
31 -%{\Large\upshape\bfseries Springer}\\[8pt]  
32 -%Berlin\enspace Heidelberg\enspace New\kern0.1em York\\[5pt]  
33 -%Barcelona\enspace Budapest\enspace Hong\kern0.2em Kong\\[5pt]  
34 -%London\enspace Milan\enspace Paris\enspace\\[5pt]  
35 -%Santa\kern0.2em Clara\enspace Singapore\enspace Tokyo  
36 -%\end{tabular}  
37 -%\end{flushleft}  
38 -\newpage  
39 -%  
40 -\section*{For further information please contact us:}  
41 -%  
42 -\begin{flushleft}  
43 -\begin{tabular}{l@{\quad}l@{\hspace{3mm}}l@{\qquad}l}  
44 -$\bullet$&\multicolumn{3}{@{}l}{\bfseries LNCS Editorial Office}\\[1mm]  
45 -&\multicolumn{3}{@{}l}{Springer-Verlag}\\  
46 -&\multicolumn{3}{@{}l}{Computer Science Editorial}\\  
47 -&\multicolumn{3}{@{}l}{Tiergartenstraße 17}\\  
48 -&\multicolumn{3}{@{}l}{69121 Heidelberg}\\  
49 -&\multicolumn{3}{@{}l}{Germany}\\[0.5mm]  
50 - & Tel: & +49-6221-487-8706\\  
51 - & Fax: & +49-6221-487-8588\\  
52 - & e-mail: & \tt lncs@springer.com & for editorial questions\\  
53 - & & \tt texhelp@springer.de & for \TeX{} problems\\[2mm]  
54 -\noalign{\rule{\textwidth}{1pt}}  
55 -\noalign{\vskip2mm}  
56 -%  
57 -%{\tt svserv@vax.ntp.springer.de}\hfil first try the \verb|help|  
58 -%command.  
59 -%  
60 -$\bullet$&\multicolumn{3}{@{}l}{\bfseries We are also reachable through the world wide web:}\\[1mm]  
61 - &\multicolumn{2}{@{}l}{\texttt{http://www.springer.com}}&Springer Global Website\\  
62 - &\multicolumn{2}{@{}l}{\texttt{http://www.springer.com/lncs}}&LNCS home page\\  
63 - &\multicolumn{2}{@{}l}{\texttt{http://www.springerlink.com}}&data repository\\  
64 - &\multicolumn{2}{@{}l}{\texttt{ftp://ftp.springer.de}}&FTP server  
65 -\end{tabular}  
66 -\end{flushleft}  
67 -  
68 -  
69 -%  
70 -\newpage  
71 -\tableofcontents  
72 -\newpage  
73 -%  
74 -\section{Introduction}  
75 -%  
76 -Authors wishing to code their contribution  
77 -with \LaTeX{}, as well as those who have already coded with \LaTeX{},  
78 -will be provided with a document class that will give the text the  
79 -desired layout. Authors are requested to  
80 -adhere strictly to these instructions; {\em the class  
81 -file must not be changed}.  
82 -  
83 -The text output area is automatically set within an area of  
84 -12.2\,cm horizontally and 19.3\,cm vertically.  
85 -  
86 -If you are already familiar with \LaTeX{}, then the  
87 -LLNCS class should not give you any major difficulties.  
88 -It will change the layout to the required LLNCS style  
89 -(it will for instance define the layout of \verb|\section|).  
90 -We had to invent some extra commands,  
91 -which are not provided by \LaTeX{} (e.g.\  
92 -\verb|\institute|, see also Sect.\,\ref{contbegin})  
93 -  
94 -For the main body of the paper (the text) you  
95 -should use the commands of the standard \LaTeX{} ``article'' class.  
96 -Even if you are familiar with those commands, we urge you to read  
97 -this entire documentation thoroughly. It contains many suggestions on  
98 -how to use our commands properly; thus your paper  
99 -will be formatted exactly to LLNCS standard.  
100 -For the input of the references at the end of your contribution,  
101 -please follow our instructions given in Sect.\,\ref{refer} References.  
102 -  
103 -The majority of these hints are not specific for LLNCS; they may improve  
104 -your use of \LaTeX{} in general.  
105 -Furthermore, the documentation provides suggestions about the proper  
106 -editing and use  
107 -of the input files (capitalization, abbreviation etc.) (see  
108 -Sect.\,\ref{refedit} How to Edit Your Input File).  
109 -%  
110 -\section{How to Proceed}  
111 -%  
112 -The package consists of the following files:  
113 -\begin{flushleft}  
114 -\begin{tabular}{@{}p{2.5cm}l}  
115 -{\tt history.txt}& the version history of the package\\[2pt]  
116 -{\tt llncs.cls} & class file for \LaTeX{}\\[2pt]  
117 -{\tt llncs.dem} & an example showing how to code the text\\[2pt]  
118 -{\tt llncs.doc} & general instructions (source of this document),\\  
119 - & {\tt llncs.doc} means {\itshape l\/}atex {\itshape doc\/}umentation for\\  
120 - & {\itshape L\/}ecture {\itshape N}otes in {\itshape C\/}omputer {\itshape S\/}cience\\  
121 -{\tt llncsdoc.pdf}& the documentation of the class (PDF version),\\  
122 -{\tt llncs.doc} & general instructions (source of this document),\\  
123 -{\tt llncsdoc.sty} & class modifications to help for the instructions\\  
124 -{\tt llncs.ind} & an external (faked) author index file\\  
125 -{\tt subjidx.ind} & subject index demo from the Springer book package\\  
126 -{\tt llncs.dvi} & the resultig DVI file (remember to use binary transfer!)\\[2pt]  
127 -{\tt sprmindx.sty} & supplementary style file for MakeIndex\\  
128 - & (usage: {\tt makeindex -s sprmindx.sty <yourfile.idx>})  
129 -\end{tabular}  
130 -\end{flushleft}  
131 -%  
132 -\subsection{How to Invoke the LLNCS Document Class}  
133 -%  
134 -The LLNCS class is an extension of the standard \LaTeX{} ``article''  
135 -document class. Therefore you may use all ``article'' commands for the  
136 -body of your contribution to prepare your manuscript.  
137 -LLNCS class is invoked by replacing ``article'' by ``llncs'' in the  
138 -first line of your document:  
139 -\begin{verbatim}  
140 -\documentclass{llncs}  
141 -%  
142 -\begin{document}  
143 - <Your contribution>  
144 -\end{document}  
145 -\end{verbatim}  
146 -%  
147 -\subsection{Contributions Already Coded with \protect\LaTeX{} without  
148 -the LLNCS document class}  
149 -%  
150 -If your file is already coded with \LaTeX{} you can easily  
151 -adapt it a posteriori to the LLNCS document class.  
152 -  
153 -Please refrain from using any \LaTeX{} or \TeX{} commands  
154 -that affect the layout or formatting of your document (i.e. commands  
155 -like \verb|\textheight|, \verb|\vspace|, \verb|\headsep| etc.).  
156 -There may nevertheless be exceptional occasions on which to  
157 -use some of them.  
158 -  
159 -The LLNCS document class has been carefully designed to produce the  
160 -right layout from your \LaTeX{} input. If there is anything specific you  
161 -would like to do and for which the style file does not provide a  
162 -command, {\em please contact us}. Same holds for any error and bug you  
163 -discover (there is however no reward for this -- sorry).  
164 -%  
165 -\section{General Rules for Coding Formulas}  
166 -%  
167 -With mathematical formulas you may proceed as described  
168 -in Sect.\,3.3 of the {\em \LaTeX{} User's Guide \& Reference  
169 -Manual\/} by Leslie Lamport (2nd~ed. 1994), Addison-Wesley Publishing  
170 -Company, Inc.  
171 -  
172 -Equations are automatically numbered sequentially throughout your  
173 -contribution using arabic numerals in parentheses on the right-hand  
174 -side.  
175 -  
176 -When you are working in math mode everything is typeset in italics.  
177 -Sometimes you need to insert non-mathematical elements (e.g.\  
178 -words or phrases). Such insertions should be coded in roman  
179 -(with \verb|\mbox|) as illustrated in the following example:  
180 -\begin{flushleft}  
181 -{\itshape Sample Input}  
182 -\end{flushleft}  
183 -\begin{verbatim}  
184 -\begin{equation}  
185 - \left(\frac{a^{2} + b^{2}}{c^{3}} \right) = 1 \quad  
186 - \mbox{ if } c\neq 0 \mbox{ and if } a,b,c\in \bbbr \enspace .  
187 -\end{equation}  
188 -\end{verbatim}  
189 -{\itshape Sample Output}  
190 -\begin{equation}  
191 - \left(\frac{a^{2} + b^{2}}{c^{3}} \right) = 1 \quad  
192 - \mbox{ if } c\neq 0 \mbox{ and if } a,b,c\in \bbbr \enspace .  
193 -\end{equation}  
194 -  
195 -If you wish to start a new paragraph immediately after a displayed  
196 -equation, insert a blank line so as to produce the required  
197 -indentation. If there is no new paragraph either do not insert  
198 -a blank line or code \verb|\noindent| immediately before  
199 -continuing the text.  
200 -  
201 -Please punctuate a displayed equation in the same way as other  
202 -ordinary text but with an \verb|\enspace| before end punctuation.  
203 -  
204 -Note that the sizes of the parentheses or other delimiter  
205 -symbols used in equations should ideally match the height of the  
206 -formulas being enclosed. This is automatically taken care of by  
207 -the following \LaTeX{} commands:\\[2mm]  
208 -\verb|\left(| or \verb|\left[| and  
209 -\verb|\right)| or \verb|\right]|.  
210 -%  
211 -\subsection{Italic and Roman Type in Math Mode}  
212 -%  
213 -\begin{alpherate}  
214 -\item  
215 -In math mode \LaTeX{} treats all letters as though they  
216 -were mathematical or physical variables, hence they are typeset as  
217 -characters of their own in  
218 -italics. However, for certain components of formulas, like short texts,  
219 -this would be incorrect and therefore coding in roman is required.  
220 -Roman should also be used for  
221 -subscripts and superscripts {\em in formulas\/} where these are  
222 -merely labels and not in themselves variables,  
223 -e.g. $T_{\mathrm{eff}}$ \emph{not} $T_{eff}$,  
224 -$T_{\mathrm K}$ \emph{not} $T_K$ (K = Kelvin),  
225 -$m_{\mathrm e}$ \emph{not} $m_e$ (e = electron).  
226 -However, do not code for roman  
227 -if the sub/superscripts represent variables,  
228 -e.g.\ $\sum_{i=1}^{n} a_{i}$.  
229 -\item  
230 -Please ensure that {\em physical units\/} (e.g.\ pc, erg s$^{-1}$  
231 -K, cm$^{-3}$, W m$^{-2}$ Hz$^{-1}$, m kg s$^{-2}$ A$^{-2}$) and  
232 -{\em abbreviations\/} such as Ord, Var, GL, SL, sgn, const.\  
233 -are always set in roman type. To ensure  
234 -this use the \verb|\mathrm| command: \verb|\mathrm{Hz}|.  
235 -On p.\ 44 of the {\em \LaTeX{} User's Guide \& Reference  
236 -Manual\/} by Leslie Lamport you will find the names of  
237 -common mathe\-matical functions, such as log, sin, exp, max and sup.  
238 -These should be coded as \verb|\log|,  
239 -\verb|\sin|, \verb|\exp|, \verb|\max|, \verb|\sup|  
240 -and will appear in roman automatically.  
241 -\item  
242 -Chemical symbols and formulas should be coded for roman,  
243 -e.g.\ Fe not $Fe$, H$_2$O not {\em H$_2$O}.  
244 -\item  
245 -Familiar foreign words and phrases, e.g.\ et al.,  
246 -a priori, in situ, brems\-strah\-lung, eigenvalues should not be  
247 -italicized.  
248 -\end{alpherate}  
249 -%  
250 -\section{How to Edit Your Input (Source) File}  
251 -\label{refedit}  
252 -%  
253 -\subsection{Headings}\label{headings}  
254 -%  
255 -All words in headings should be capitalized except for conjunctions,  
256 -prepositions (e.g.\ on, of, by, and, or, but, from, with, without,  
257 -under) and definite and indefinite articles (the, a, an) unless they  
258 -appear at the beginning. Formula letters must be typeset as in the text.  
259 -%  
260 -\subsection{Capitalization and Non-capitalization}  
261 -%  
262 -\begin{alpherate}  
263 -\item  
264 -The following should always be capitalized:  
265 -\begin{itemize}  
266 -\item  
267 -Headings (see preceding Sect.\,\ref{headings})  
268 -\item  
269 -Abbreviations and expressions  
270 -in the text such as Fig(s)., Table(s), Sect(s)., Chap(s).,  
271 -Theorem, Corollary, Definition etc. when used with numbers, e.g.\  
272 -Fig.\,3, Table\,1, Theorem 2.  
273 -\end{itemize}  
274 -Please follow the special rules in Sect.\,\ref{abbrev} for referring to  
275 -equations.  
276 -\item  
277 -The following should {\em not\/} be capitalized:  
278 -\begin{itemize}  
279 -\item  
280 -The words figure(s), table(s), equation(s), theorem(s) in the text when  
281 -used without an accompanying number.  
282 -\item  
283 -Figure legends and table captions except for names and abbreviations.  
284 -\end{itemize}  
285 -\end{alpherate}  
286 -%  
287 -\subsection{Abbreviation of Words}\label{abbrev}  
288 -%  
289 -\begin{alpherate}  
290 -\item  
291 -The following {\em should} be abbreviated when they appear in running  
292 -text {\em unless\/} they come at the beginning of a sentence: Chap.,  
293 -Sect., Fig.; e.g.\ The results are depicted in Fig.\,5. Figure 9 reveals  
294 -that \dots .\\  
295 -{\em Please note\/}: Equations should usually be referred to solely by  
296 -their number in parentheses: e.g.\ (14). However, when the reference  
297 -comes at the beginning of a sentence, the unabbreviated word  
298 -``Equation'' should be used: e.g.\ Equation (14) is very important.  
299 -However, (15) makes it clear that \dots .  
300 -\item  
301 -If abbreviations of names or concepts are used  
302 -throughout the text, they should be defined at first occurrence,  
303 -e.g.\ Plurisubharmonic (PSH) Functions, Strong Optimization (SOPT)  
304 -Problem.  
305 -\end{alpherate}  
306 -%  
307 -\section{How to Code the Beginning of Your Contribution}  
308 -\label{contbegin}  
309 -%  
310 -The title of a single contribution (it is mandatory) should be coded as  
311 -follows:  
312 -\begin{verbatim}  
313 -\title{<Your contribution title>}  
314 -\end{verbatim}  
315 -All words in titles should be capitalized except for conjunctions,  
316 -prepositions (e.g.\ on, of, by, and, or, but, from, with, without,  
317 -under) and definite and indefinite articles (the, a, an) unless they  
318 -appear at the beginning. Formula letters must be typeset as in the text.  
319 -Titles have no end punctuation.  
320 -  
321 -If a long \verb|\title| must be divided please use the code \verb|\\|  
322 -(for new line).  
323 -  
324 -If you are to produce running heads for a specific volume the standard  
325 -(of no such running heads) is overwritten with the \verb|[runningheads]|  
326 -option in the \verb|\documentclass| line. For long titles that do not  
327 -fit in the single line of the running head a warning is generated.  
328 -You can specify an abbreviated title for the running head on odd pages  
329 -with the command  
330 -\begin{verbatim}  
331 -\titlerunning{<Your abbreviated contribution title>}  
332 -\end{verbatim}  
333 -  
334 -There is also a possibility to change the text of the title that goes  
335 -into the table of contents (that's for volume editors only -- there is  
336 -no table of contents for a single contribution). For this use the  
337 -command  
338 -\begin{verbatim}  
339 -\toctitle{<Your changed title for the table of contents>}  
340 -\end{verbatim}  
341 -  
342 -An optional subtitle may follow then:  
343 -\begin{verbatim}  
344 -\subtitle{<subtitle of your contribution>}  
345 -\end{verbatim}  
346 -  
347 -Now the name(s) of the author(s) must be given:  
348 -\begin{verbatim}  
349 -\author{<author(s) name(s)>}  
350 -\end{verbatim}  
351 -Numbers referring to different addresses or affiliations are  
352 -to be attached to each author with the \verb|\inst{<no>}| command.  
353 -If there is more than one author, the order is up to you;  
354 -the \verb|\and| command provides for the separation.  
355 -  
356 -If you have done this correctly, this entry now reads, for example:  
357 -\begin{verbatim}  
358 -\author{Ivar Ekeland\inst{1} \and Roger Temam\inst{2}}  
359 -\end{verbatim}  
360 -The first name\footnote{Other initials are optional  
361 -and may be inserted if this is the usual  
362 -way of writing your name, e.g.\ Alfred J.~Holmes, E.~Henry Green.}  
363 -is followed by the surname.  
364 -  
365 -As for the title there exist two additional commands (again for volume  
366 -editors only) for a different author list. One for the running head  
367 -(on odd pages) -- if there is any:  
368 -\begin{verbatim}  
369 -\authorrunning{<abbreviated author list>}  
370 -\end{verbatim}  
371 -And one for the table of contents where the  
372 -affiliation of each author is simply added in braces.  
373 -\begin{verbatim}  
374 -\tocauthor{<enhanced author list for the table of contents>}  
375 -\end{verbatim}  
376 -  
377 -Next the address(es) of institute(s), company etc. is (are) required.  
378 -If there is more than one address, the entries are numbered  
379 -automatically with \verb|\and|, in the order in which you type them.  
380 -Please make sure that the numbers match those placed next to  
381 -to the authors' names to reflect the affiliation.  
382 -\begin{verbatim}  
383 -\institute{<name of an institute>  
384 -\and <name of the next institute>  
385 -\and <name of the next institute>}  
386 -\end{verbatim}  
387 -  
388 -In addition, you can use  
389 -\begin{verbatim}  
390 -\email{<email address>}  
391 -\end{verbatim}  
392 -to provide your email address within \verb|\institute|. If you need to  
393 -typeset the tilde character -- e.g. for your web page in your unix  
394 -system's home directory -- the \verb|\homedir| command will happily do  
395 -this. Please note that, if your email address is given in your paper,  
396 -it will also be included in the meta data of the online version.  
397 -\enlargethispage*{6mm}  
398 -  
399 -\medskip  
400 -If footnote like things are needed anywhere in the contribution heading  
401 -please code  
402 -(immediately after the word where the footnote indicator should be  
403 -placed):  
404 -\begin{verbatim}  
405 -\thanks{<text>}  
406 -\end{verbatim}  
407 -\verb|\thanks| may only appear in \verb|\title|, \verb|\author|  
408 -and \verb|\institute| to footnote anything. If there are two or more  
409 -footnotes or affiliation marks to a specific item separate them with  
410 -\verb|\fnmsep| (i.e. {\itshape f}oot\emph note \emph mark  
411 -\emph{sep}arator).  
412 -  
413 -\medskip\noindent  
414 -The command  
415 -\begin{verbatim}  
416 -\maketitle  
417 -\end{verbatim}  
418 -then formats the complete heading of your article. If you leave  
419 -it out the work done so far will produce \emph{no} text.  
420 -  
421 -Then the abstract should follow. Simply code  
422 -\begin{verbatim}  
423 -\begin{abstract}  
424 -<Text of the summary of your article>  
425 -\end{abstract}  
426 -\end{verbatim}  
427 -or refer to the demonstration file {\tt llncs.dem} for an example or  
428 -to the {\em Sample Input\/} on p.~\pageref{samppage}.  
429 -  
430 -\subsubsection{Remark to Running Heads and the Table of Contents}  
431 -\leavevmode\\[\medskipamount]  
432 -If you are the author of a single contribution you normally have no  
433 -running heads and no table of contents. Both are done only by the editor  
434 -of the volume or at the printers.  
435 -%  
436 -\section{Special Commands for the Volume Editor}  
437 -The volume editor can produce a complete camera ready output including  
438 -running heads, a table of contents, preliminary text (frontmatter), and  
439 -index or glossary. For activating the running heads there is the class  
440 -option \verb|[runningheads]|.  
441 -  
442 -The table of contents of the volume is printed wherever  
443 -\verb|\tableofcontents| is placed. A simple compilation of all  
444 -contributions (fields \verb|\title| and \verb|\author|) is done. If you  
445 -wish to change this automatically produced list use the commands  
446 -\begin{verbatim}  
447 -\titlerunning \toctitle  
448 -\authorrunning \tocauthor  
449 -\end{verbatim}  
450 -to enhance the information in the specific contributions. See the  
451 -demonstration file \verb|llncs.dem| for examples.  
452 -  
453 -An additional structure can be added to the table of contents with the  
454 -\verb|\addtocmark{<text>}| command. It has an optional numerical  
455 -argument, a digit from 1 through 3. 3 (the default) makes an unnumbered  
456 -chapter like entry in the table of contents. If you code  
457 -\verb|\addtocmark[2]{text}| the corresponding page number is listed  
458 -also, \verb|\addtocmark[1]{text}| even introduces a chapter number  
459 -beyond it.  
460 -%  
461 -\section{How to Code Your Text}  
462 -%  
463 -The contribution title and all headings should be capitalized  
464 -except for conjunctions, prepositions (e.g.\ on, of, by, and, or, but,  
465 -from, with, without, under) and definite and indefinite articles (the,  
466 -a, an) unless they appear at the beginning. Formula letters must be  
467 -typeset as in the text.  
468 -  
469 -Headings will be automatically numbered by the following codes.\\[2mm]  
470 -{\itshape Sample Input}  
471 -\begin{verbatim}  
472 -\section{This is a First-Order Title}  
473 -\subsection{This is a Second-Order Title}  
474 -\subsubsection{This is a Third-Order Title.}  
475 -\paragraph{This is a Fourth-Order Title.}  
476 -\end{verbatim}  
477 -\verb|\section| and \verb|\subsection| have no end punctuation.\\  
478 -\verb|\subsubsection| and \verb|\paragraph|  
479 -need to be punctuated at the end.  
480 -  
481 -In addition to the above-mentioned headings your text may be structured  
482 -by subsections indicated by run-in headings (theorem-like environments).  
483 -All the theorem-like environments are numbered automatically  
484 -throughout the sections of your document -- each with its own counter.  
485 -If you want the theorem-like environments to use the same counter  
486 -just specify the documentclass option \verb|envcountsame|:  
487 -\begin{verbatim}  
488 -\documentclass[envcountsame]{llncs}  
489 -\end{verbatim}  
490 -If your first call for a theorem-like environment then is e.g.  
491 -\verb|\begin{lemma}|, it will be numbered 1; if corollary follows,  
492 -this will be numbered 2; if you then call lemma again, this will be  
493 -numbered 3.  
494 -  
495 -But in case you want to reset such counters to 1 in each section,  
496 -please specify the documentclass option \verb|envcountreset|:  
497 -\begin{verbatim}  
498 -\documentclass[envcountreset]{llncs}  
499 -\end{verbatim}  
500 -  
501 -Even a numbering on section level (including the section counter) is  
502 -possible with the documentclass option \verb|envcountsect|.  
503 -  
504 -\section{Predefined Theorem like Environments}\label{builtintheo}  
505 -The following variety of run-in headings are at your disposal:  
506 -\begin{alpherate}  
507 -\item  
508 -{\bfseries Bold} run-in headings with italicized text  
509 -as built-in environments:  
510 -\begin{verbatim}  
511 -\begin{corollary} <text> \end{corollary}  
512 -\begin{lemma} <text> \end{lemma}  
513 -\begin{proposition} <text> \end{proposition}  
514 -\begin{theorem} <text> \end{theorem}  
515 -\end{verbatim}  
516 -\item  
517 -The following generally appears as {\itshape italic} run-in heading:  
518 -\begin{verbatim}  
519 -\begin{proof} <text> \qed \end{proof}  
520 -\end{verbatim}  
521 -It is unnumbered and may contain an eye catching square (call for that  
522 -with \verb|\qed|) before the environment ends.  
523 -\item  
524 -Further {\itshape italic} or {\bfseries bold} run-in headings with roman  
525 -environment body may also occur:  
526 -\begin{verbatim}  
527 -\begin{definition} <text> \end{definition}  
528 -\begin{example} <text> \end{example}  
529 -\begin{exercise} <text> \end{exercise}  
530 -\begin{note} <text> \end{note}  
531 -\begin{problem} <text> \end{problem}  
532 -\begin{question} <text> \end{question}  
533 -\begin{remark} <text> \end{remark}  
534 -\begin{solution} <text> \end{solution}  
535 -\end{verbatim}  
536 -\end{alpherate}  
537 -  
538 -\section{Defining your Own Theorem like Environments}  
539 -We have enhanced the standard \verb|\newtheorem| command and slightly  
540 -changed its syntax to get two new commands \verb|\spnewtheorem| and  
541 -\verb|\spnewtheorem*| that now can be used to define additional  
542 -environments. They require two additional arguments namely the type  
543 -style in which the keyword of the environment appears and second the  
544 -style for the text of your new environment.  
545 -  
546 -\verb|\spnewtheorem| can be used in two ways.  
547 -\subsection{Method 1 {\itshape (preferred)}}  
548 -You may want to create an environment that shares its counter  
549 -with another environment, say {\em main theorem\/} to be numbered like  
550 -the predefined {\em theorem\/}. In this case, use the syntax  
551 -\begin{verbatim}  
552 -\spnewtheorem{<env_nam>}[<num_like>]{<caption>}  
553 -{<cap_font>}{<body_font>}  
554 -\end{verbatim}  
555 -  
556 -\noindent  
557 -Here the environment with which the new environment should share its  
558 -counter is specified with the optional argument \verb|[<num_like>]|.  
559 -  
560 -\paragraph{Sample Input}  
561 -\begin{verbatim}  
562 -\spnewtheorem{mainth}[theorem]{Main Theorem}{\bfseries}{\itshape}  
563 -\begin{theorem} The early bird gets the worm. \end{theorem}  
564 -\begin{mainth} The early worm gets eaten. \end{mainth}  
565 -\end{verbatim}  
566 -\medskip\noindent  
567 -{\em Sample Output}  
568 -  
569 -\medskip\noindent  
570 -{\bfseries Theorem 3.}\enspace {\em The early bird gets the worm.}  
571 -  
572 -\medskip\noindent  
573 -{\bfseries Main Theorem 4.} The early worm gets eaten.  
574 -  
575 -\bigskip  
576 -The sharing of the default counter (\verb|[theorem]|) is desired. If you  
577 -omit the optional second argument of \verb|\spnewtheorem| a separate  
578 -counter for your new environment is used throughout your document.  
579 -  
580 -\subsection[Method 2]{Method 2 {\itshape (assumes {\tt[envcountsect]}  
581 -documentstyle option)}}  
582 -\begin{verbatim}  
583 -\spnewtheorem{<env_nam>}{<caption>}[<within>]  
584 -{<cap_font>}{<body_font>}  
585 -\end{verbatim}  
586 -  
587 -\noindent  
588 -This defines a new environment \verb|<env_nam>| which prints the caption  
589 -\verb|<caption>| in the font \verb|<cap_font>| and the text itself in  
590 -the font \verb|<body_font>|. The environment is numbered beginning anew  
591 -with every new sectioning element you specify with the optional  
592 -parameter \verb|<within>|.  
593 -  
594 -\medskip\noindent  
595 -\paragraph{Example} \leavevmode  
596 -  
597 -\medskip\noindent  
598 -\verb|\spnewtheorem{joke}{Joke}[subsection]{\bfseries}{\rmfamily}|  
599 -  
600 -\medskip  
601 -\noindent defines a new environment called \verb|joke| which prints the  
602 -caption {\bfseries Joke} in boldface and the text in roman. The jokes are  
603 -numbered starting from 1 at the beginning of every subsection with the  
604 -number of the subsection preceding the number of the joke e.g. 7.2.1 for  
605 -the first joke in subsection 7.2.  
606 -  
607 -\subsection{Unnumbered Environments}  
608 -If you wish to have an unnumbered environment, please  
609 -use the syntax  
610 -\begin{verbatim}  
611 -\spnewtheorem*{<env_nam>}{<caption>}{<cap_font>}{<body_font>}  
612 -\end{verbatim}  
613 -  
614 -\section{Program Codes}  
615 -In case you want to show pieces of program code, just use the  
616 -\verb|verbatim| environment or the \verb|verbatim| package of \LaTeX.  
617 -(There also exist various pretty printers for some programming  
618 -languages.)  
619 -%  
620 -\noindent  
621 -\subsection*{Sample Input {\rmfamily(of a simple  
622 -contribution)}}\label{samppage}  
623 -\begin{verbatim}  
624 -\title{Hamiltonian Mechanics}  
625 -  
626 -\author{Ivar Ekeland\inst{1} \and Roger Temam\inst{2}}  
627 -  
628 -\institute{Princeton University, Princeton NJ 08544, USA  
629 -\and  
630 -Universit\'{e} de Paris-Sud,  
631 -Laboratoire d'Analyse Num\'{e}rique, B\^{a}timent 425,\\  
632 -F-91405 Orsay Cedex, France}  
633 -  
634 -\maketitle  
635 -%  
636 -\begin{abstract}  
637 -This paragraph shall summarize the contents of the paper  
638 -in short terms.  
639 -\end{abstract}  
640 -%  
641 -\section{Fixed-Period Problems: The Sublinear Case}  
642 -%  
643 -With this chapter, the preliminaries are over, and we begin the  
644 -search for periodic solutions \dots  
645 -%  
646 -\subsection{Autonomous Systems}  
647 -%  
648 -In this section we will consider the case when the Hamiltonian  
649 -$H(x)$ \dots  
650 -%  
651 -\subsubsection*{The General Case: Nontriviality.}  
652 -%  
653 -We assume that $H$ is  
654 -$\left(A_{\infty}, B_{\infty}\right)$-subqua\-dra\-tic  
655 -at infinity, for some constant \dots  
656 -%  
657 -\paragraph{Notes and Comments.}  
658 -The first results on subharmonics were \dots  
659 -%  
660 -\begin{proposition}  
661 -Assume $H'(0)=0$ and $ H(0)=0$. Set \dots  
662 -\end{proposition}  
663 -\begin{proof}[of proposition]  
664 -Condition (8) means that, for every $\delta'>\delta$, there is  
665 -some $\varepsilon>0$ such that \dots \qed  
666 -\end{proof}  
667 -%  
668 -\begin{example}[\rmfamily (External forcing)]  
669 -Consider the system \dots  
670 -\end{example}  
671 -\begin{corollary}  
672 -Assume $H$ is $C^{2}$ and  
673 -$\left(a_{\infty}, b_{\infty}\right)$-subquadratic  
674 -at infinity. Let \dots  
675 -\end{corollary}  
676 -\begin{lemma}  
677 -Assume that $H$ is $C^{2}$ on $\bbbr^{2n}\backslash \{0\}$  
678 -and that $H''(x)$ is \dots  
679 -\end{lemma}  
680 -\begin{theorem}[(Ghoussoub-Preiss)]  
681 -Let $X$ be a Banach Space and $\Phi:X\to\bbbr$ \dots  
682 -\end{theorem}  
683 -\begin{definition}  
684 -We shall say that a $C^{1}$ function $\Phi:X\to\bbbr$  
685 -satisfies \dots  
686 -\end{definition}  
687 -\end{verbatim}  
688 -{\itshape Sample Output\/} (follows on the next page together with  
689 -examples of the above run-in headings)  
690 -\newcounter{save}\setcounter{save}{\value{section}}  
691 -{\def\addtocontents#1#2{}%  
692 -\def\addcontentsline#1#2#3{}%  
693 -\def\markboth#1#2{}%  
694 -%  
695 -\title{Hamiltonian Mechanics}  
696 -  
697 -\author{Ivar Ekeland\inst{1} \and Roger Temam\inst{2}}  
698 -  
699 -\institute{Princeton University, Princeton NJ 08544, USA  
700 -\and  
701 -Universit\'{e} de Paris-Sud,  
702 -Laboratoire d'Analyse Num\'{e}rique, B\^{a}timent 425,\\  
703 -F-91405 Orsay Cedex, France}  
704 -  
705 -\maketitle  
706 -%  
707 -\begin{abstract}  
708 -This paragraph shall summarize the contents of the paper  
709 -in short terms.  
710 -\end{abstract}  
711 -%  
712 -\section{Fixed-Period Problems: The Sublinear Case}  
713 -%  
714 -With this chapter, the preliminaries are over, and we begin the search  
715 -for periodic solutions \dots  
716 -%  
717 -\subsection{Autonomous Systems}  
718 -%  
719 -In this section we will consider the case when the Hamiltonian  
720 -$H(x)$ \dots  
721 -%  
722 -\subsubsection{The General Case: Nontriviality.}  
723 -%  
724 -We assume that $H$ is  
725 -$\left(A_{\infty}, B_{\infty}\right)$-subqua\-dra\-tic at  
726 -infinity, for some constant \dots  
727 -%  
728 -\paragraph{Notes and Comments.}  
729 -The first results on subharmonics were \dots  
730 -%  
731 -\begin{proposition}  
732 -Assume $H'(0)=0$ and $ H(0)=0$. Set \dots  
733 -\end{proposition}  
734 -\begin{proof}[of proposition]  
735 -Condition (8) means that, for every $\delta'>\delta$, there is  
736 -some $\varepsilon>0$ such that \dots \qed  
737 -\end{proof}  
738 -%  
739 -\begin{example}[{{\rmfamily External forcing}}]  
740 -Consider the system \dots  
741 -\end{example}  
742 -\begin{corollary}  
743 -Assume $H$ is $C^{2}$ and  
744 -$\left(a_{\infty}, b_{\infty}\right)$-subquadratic  
745 -at infinity. Let \dots  
746 -\end{corollary}  
747 -\begin{lemma}  
748 -Assume that $H$ is $C^{2}$ on $\bbbr^{2n}\backslash \{0\}$  
749 -and that $H''(x)$ is \dots  
750 -\end{lemma}  
751 -\begin{theorem}[Ghoussoub-Preiss]  
752 -Let $X$ be a Banach Space and $\Phi:X\to\bbbr$ \dots  
753 -\end{theorem}  
754 -\begin{definition}  
755 -We shall say that a $C^{1}$ function $\Phi:X\to\bbbr$ satisfies \dots  
756 -\end{definition}  
757 -%  
758 -}\setcounter{section}{\value{save}}  
759 -\section{Fine Tuning of the Text}  
760 -%  
761 -The following should be used to improve the readability of the text:  
762 -\begin{flushleft}  
763 -\begin{tabular}{@{}p{.19\textwidth}p{.79\textwidth}}  
764 -\verb|\,| & a thin space, e.g.\ between numbers or between units  
765 - and num\-bers; a line division will not be made  
766 - following this space\\  
767 -\verb|--| & en dash; two strokes, without a space at either end\\  
768 -\verb*| -- |& en dash; two strokes, with a space at either end\\  
769 -\verb|-| & hyphen; one stroke, no space at either end\\  
770 -\verb|$-$| & minus, in the text {\em only} \\[8mm]  
771 -{\em Input} & \verb|21\,$^{\circ}$C etc.,|\\  
772 - & \verb|Dr h.\,c.\,Rockefellar-Smith \dots|\\  
773 - & \verb|20,000\,km and Prof.\,Dr Mallory \dots|\\  
774 - & \verb|1950--1985 \dots|\\  
775 - & \verb|this -- written on a computer -- is now printed|\\  
776 - & \verb|$-30$\,K \dots|\\[3mm]  
777 -{\em Output}& 21\,$^{\circ}$C etc., Dr h.\,c.\,Rockefellar-Smith \dots\\  
778 - & 20,000\,km and Prof.\,Dr Mallory \dots\\  
779 - & 1950--1985 \dots\\  
780 - & this -- written on a computer -- is now printed\\  
781 - & $-30$\,K \dots  
782 -\end{tabular}  
783 -\end{flushleft}  
784 -%  
785 -\section {Special Typefaces}  
786 -%  
787 -Normal type (roman text) need not be coded. {\itshape Italic}  
788 -(\verb|{\em <text>}| better still \verb|\emph{<text>}|) or, if  
789 -necessary, {\bfseries boldface} should be used for emphasis.\\[6pt]  
790 -\begin{minipage}[t]{\textwidth}  
791 -\begin{flushleft}  
792 -\begin{tabular}{@{}p{.25\textwidth}@{\hskip6pt}p{.73\textwidth}@{}}  
793 -\verb|{\itshape Text}| & {\itshape Italicized Text}\\[2pt]  
794 -\verb|{\em Text}| & {\em Emphasized Text --  
795 - if you would like to emphasize a {\em definition} within an  
796 - italicized text (e.g.\ of a {\em theorem)} you should code the  
797 - expression to be emphasized by} \verb|\em|.\\[2pt]  
798 -\verb|{\bfseries Text}|& {\bfseries Important Text}\\[2pt]  
799 -\verb|\vec{Symbol}| & Vectors may only appear in math mode. The default  
800 - \LaTeX{} vector symbol has been adapted\footnotemark\  
801 - to LLNCS conventions.\\[2pt]  
802 - & \verb|$\vec{A \times B\cdot C}| yields $\vec{A\times B\cdot C}$\\  
803 - & \verb|$\vec{A}^{T} \otimes \vec{B} \otimes|\\  
804 - & \verb|\vec{\hat{D}}$|yields $\vec{A}^{T} \otimes \vec{B} \otimes  
805 -\vec{\hat{D}}$  
806 -\end{tabular}  
807 -\end{flushleft}  
808 -\end{minipage}  
809 -  
810 -\footnotetext{If you absolutely must revive the original \LaTeX{}  
811 -design of the vector symbol (as an arrow accent), please specify the  
812 -option \texttt{[orivec]} in the \texttt{documentclass} line.}  
813 -\newpage  
814 -%  
815 -\section {Footnotes}  
816 -%  
817 -Footnotes within the text should be coded:  
818 -\begin{verbatim}  
819 -\footnote{Text}  
820 -\end{verbatim}  
821 -{\itshape Sample Input}  
822 -\begin{flushleft}  
823 -Text with a footnote\verb|\footnote{The |{\tt footnote is automatically  
824 -numbered.}\verb|}| and text continues \dots  
825 -\end{flushleft}  
826 -{\itshape Sample Output}  
827 -\begin{flushleft}  
828 -Text with a footnote\footnote{The footnote is automatically numbered.}  
829 -and text continues \dots  
830 -\end{flushleft}  
831 -%  
832 -\section {Lists}  
833 -%  
834 -Please code lists as described below:\\[2mm]  
835 -{\itshape Sample Input}  
836 -\begin{verbatim}  
837 -\begin{enumerate}  
838 - \item First item  
839 - \item Second item  
840 - \begin{enumerate}  
841 - \item First nested item  
842 - \item Second nested item  
843 - \end{enumerate}  
844 - \item Third item  
845 -\end{enumerate}  
846 -\end{verbatim}  
847 -{\itshape Sample Output}  
848 - \begin{enumerate}  
849 -\item First item  
850 -\item Second item  
851 - \begin{enumerate}  
852 - \item First nested item  
853 - \item Second nested item  
854 - \end{enumerate}  
855 -\item Third item  
856 -\end{enumerate}  
857 -%  
858 -\section {Figures}  
859 -%  
860 -Figure environments should be inserted after (not in)  
861 -the paragraph in which the figure is first mentioned.  
862 -They will be numbered automatically.  
863 -  
864 -Preferably the images should be enclosed as PostScript files -- best as  
865 -EPS data using the epsfig package.  
866 -  
867 -If you cannot include them into your output this way and use other  
868 -techniques for a separate production,  
869 -the figures (line drawings and those containing halftone inserts  
870 -as well as halftone figures) {\em should not be pasted into your  
871 -laserprinter output}. They should be enclosed separately in camera-ready  
872 -form (original artwork, glossy prints, photographs and/or slides). The  
873 -lettering should be suitable for reproduction, and after a  
874 -probably necessary reduction the height of capital letters should be at  
875 -least 1.8\,mm and not more than 2.5\,mm.  
876 -Check that lines and other details are uniformly black and  
877 -that the lettering on figures is clearly legible.  
878 -  
879 -To leave the desired amount of space for the height of  
880 -your figures, please use the coding described below.  
881 -As can be seen in the output, we will automatically  
882 -provide 1\,cm space above and below the figure,  
883 -so that you should only leave the space equivalent to the size of the  
884 -figure itself. Please note that ``\verb|x|'' in the following  
885 -coding stands for the actual height of the figure:  
886 -\begin{verbatim}  
887 -\begin{figure}  
888 -\vspace{x cm}  
889 -\caption[ ]{...text of caption...} (Do type [ ])  
890 -\end{figure}  
891 -\end{verbatim}  
892 -\begin{flushleft}  
893 -{\itshape Sample Input}  
894 -\end{flushleft}  
895 -\begin{verbatim}  
896 -\begin{figure}  
897 -\vspace{2.5cm}  
898 -\caption{This is the caption of the figure displaying a white  
899 -eagle and a white horse on a snow field}  
900 -\end{figure}  
901 -\end{verbatim}  
902 -\begin{flushleft}  
903 -{\itshape Sample Output}  
904 -\end{flushleft}  
905 -\begin{figure}  
906 -\vspace{2.5cm}  
907 -\caption{This is the caption of the figure displaying a white eagle and  
908 -a white horse on a snow field}  
909 -\end{figure}  
910 -%  
911 -\section{Tables}  
912 -%  
913 -Table captions should be treated  
914 -in the same way as figure legends, except that  
915 -the table captions appear {\itshape above} the tables. The tables  
916 -will be numbered automatically.  
917 -%  
918 -\subsection{Tables Coded with \protect\LaTeX{}}  
919 -%  
920 -Please use the following coding:\\[2mm]  
921 -{\itshape Sample Input}  
922 -\begin{verbatim}  
923 -\begin{table}  
924 -\caption{Critical $N$ values}  
925 -\begin{tabular}{llllll}  
926 -\hline\noalign{\smallskip}  
927 -${\mathrm M}_\odot$ & $\beta_{0}$ & $T_{\mathrm c6}$ & $\gamma$  
928 - & $N_{\mathrm{crit}}^{\mathrm L}$  
929 - & $N_{\mathrm{crit}}^{\mathrm{Te}}$\\  
930 -\noalign{\smallskip}  
931 -\hline  
932 -\noalign{\smallskip}  
933 - 30 & 0.82 & 38.4 & 35.7 & 154 & 320 \\  
934 - 60 & 0.67 & 42.1 & 34.7 & 138 & 340 \\  
935 -120 & 0.52 & 45.1 & 34.0 & 124 & 370 \\  
936 -\hline  
937 -\end{tabular}  
938 -\end{table}  
939 -\end{verbatim}  
940 -  
941 -\medskip\noindent{\itshape Sample Output}  
942 -\begin{table}  
943 -\caption{Critical $N$ values}  
944 -\begin{center}  
945 -\renewcommand{\arraystretch}{1.4}  
946 -\setlength\tabcolsep{3pt}  
947 -\begin{tabular}{llllll}  
948 -\hline\noalign{\smallskip}  
949 -${\mathrm M}_\odot$ & $\beta_{0}$ & $T_{\mathrm c6}$ & $\gamma$  
950 - & $N_{\mathrm{crit}}^{\mathrm L}$  
951 - & $N_{\mathrm{crit}}^{\mathrm{Te}}$\\  
952 -\noalign{\smallskip}  
953 -\hline  
954 -\noalign{\smallskip}  
955 - 30 & 0.82 & 38.4 & 35.7 & 154 & 320 \\  
956 - 60 & 0.67 & 42.1 & 34.7 & 138 & 340 \\  
957 -120 & 0.52 & 45.1 & 34.0 & 124 & 370 \\  
958 -\hline  
959 -\end{tabular}  
960 -\end{center}  
961 -\end{table}  
962 -  
963 -Before continuing your text you need an empty line. \dots  
964 -  
965 -\vspace{3mm}  
966 -For further information you will find a complete description of  
967 -the tabular environment  
968 -on p.~62~ff. and p.~204 of the {\em \LaTeX{} User's Guide \& Reference  
969 -Manual\/} by Leslie Lamport.  
970 -%  
971 -\subsection{Tables Not Coded with \protect\LaTeX{}}  
972 -%  
973 -If you do not wish to code your table using \LaTeX{}  
974 -but prefer to have it reproduced separately,  
975 -proceed as for figures and use the following coding:\\[2mm]  
976 -{\itshape Sample Input}  
977 -\begin{verbatim}  
978 -\begin{table}  
979 -\caption{text of your caption}  
980 -\vspace{x cm} % the actual height needed for your table  
981 -\end{table}  
982 -\end{verbatim}  
983 -%  
984 -\subsection{Signs and Characters}  
985 -%  
986 -\subsubsection*{Special Signs.}  
987 -%  
988 -You may need to use special signs. The available ones are listed in the  
989 -{\em \LaTeX{} User's Guide \& Reference Manual\/} by Leslie Lamport,  
990 -pp.~41\,ff.  
991 -We have created further symbols for math mode (enclosed in \$):  
992 -\begin{center}  
993 -\begin{tabular}{l@{\hspace{1em}yields\hspace{1em}}  
994 -c@{\hspace{3em}}l@{\hspace{1em}yields\hspace{1em}}c}  
995 -\verb|\grole| & $\grole$ & \verb|\getsto| & $\getsto$\\  
996 -\verb|\lid| & $\lid$ & \verb|\gid| & $\gid$  
997 -\end{tabular}  
998 -\end{center}  
999 -%  
1000 -\subsubsection*{Gothic (Fraktur).}  
1001 -%  
1002 -If gothic letters are {\itshape necessary}, please use those of the  
1003 -relevant \AmSTeX{} alphabet which are available using the amstex  
1004 -package of the American Mathematical Society.  
1005 -  
1006 -In \LaTeX{} only the following gothic letters are available:  
1007 -\verb|$\Re$| yields $\Re$ and \verb|$\Im$| yields $\Im$. These should  
1008 -{\itshape not\/} be used when you need gothic letters for your contribution.  
1009 -Use \AmSTeX{} gothic as explained above. For the real and the imaginary  
1010 -parts of a complex number within math mode you should use instead:  
1011 -\verb|$\mathrm{Re}$| (which yields Re) or \verb|$\mathrm{Im}$| (which  
1012 -yields Im).  
1013 -%  
1014 -\subsubsection*{Script.}  
1015 -%  
1016 -For script capitals use the coding  
1017 -\begin{center}  
1018 -\begin{tabular}{l@{\hspace{1em}which yields\hspace{1em}}c}  
1019 -\verb|$\mathcal{AB}$| & $\mathcal{AB}$  
1020 -\end{tabular}  
1021 -\end{center}  
1022 -(see p.~42 of the \LaTeX{} book).  
1023 -%  
1024 -\subsubsection*{Special Roman.}  
1025 -%  
1026 -If you need other symbols than those below, you could use  
1027 -the blackboard bold characters of \AmSTeX{}, but there might arise  
1028 -capacity problems  
1029 -in loading additional \AmSTeX{} fonts. Therefore we created  
1030 -the blackboard bold characters listed below.  
1031 -Some of them are not esthetically  
1032 -satisfactory. This need not deter you from using them:  
1033 -in the final printed form they will be  
1034 -replaced by the well-designed MT (monotype) characters of  
1035 -the phototypesetting machine.  
1036 -\begin{flushleft}  
1037 -\begin{tabular}{@{}ll@{ yields }  
1038 -c@{\hspace{1.em}}ll@{ yields }c}  
1039 -\verb|\bbbc| & (complex numbers) & $\bbbc$  
1040 - & \verb|\bbbf| & (blackboard bold F) & $\bbbf$\\  
1041 -\verb|\bbbh| & (blackboard bold H) & $\bbbh$  
1042 - & \verb|\bbbk| & (blackboard bold K) & $\bbbk$\\  
1043 -\verb|\bbbm| & (blackboard bold M) & $\bbbm$  
1044 - & \verb|\bbbn| & (natural numbers N) & $\bbbn$\\  
1045 -\verb|\bbbp| & (blackboard bold P) & $\bbbp$  
1046 - & \verb|\bbbq| & (rational numbers) & $\bbbq$\\  
1047 -\verb|\bbbr| & (real numbers) & $\bbbr$  
1048 - & \verb|\bbbs| & (blackboard bold S) & $\bbbs$\\  
1049 -\verb|\bbbt| & (blackboard bold T) & $\bbbt$  
1050 - & \verb|\bbbz| & (whole numbers) & $\bbbz$\\  
1051 -\verb|\bbbone| & (symbol one) & $\bbbone$  
1052 -\end{tabular}  
1053 -\end{flushleft}  
1054 -\begin{displaymath}  
1055 -\begin{array}{c}  
1056 -\bbbc^{\bbbc^{\bbbc}} \otimes  
1057 -\bbbf_{\bbbf_{\bbbf}} \otimes  
1058 -\bbbh_{\bbbh_{\bbbh}} \otimes  
1059 -\bbbk_{\bbbk_{\bbbk}} \otimes  
1060 -\bbbm^{\bbbm^{\bbbm}} \otimes  
1061 -\bbbn_{\bbbn_{\bbbn}} \otimes  
1062 -\bbbp^{\bbbp^{\bbbp}}\\[2mm]  
1063 -\otimes  
1064 -\bbbq_{\bbbq_{\bbbq}} \otimes  
1065 -\bbbr^{\bbbr^{\bbbr}} \otimes  
1066 -\bbbs^{\bbbs_{\bbbs}} \otimes  
1067 -\bbbt^{\bbbt^{\bbbt}} \otimes  
1068 -\bbbz \otimes  
1069 -\bbbone^{\bbbone_{\bbbone}}  
1070 -\end{array}  
1071 -\end{displaymath}  
1072 -%  
1073 -\section{References}  
1074 -\label{refer}  
1075 -%  
1076 -There are three reference systems available; only one, of course,  
1077 -should be used for your contribution. With each system (by  
1078 -number only, by letter-number or by author-year) a reference list  
1079 -containing all citations in the  
1080 -text, should be included at the end of your contribution placing the  
1081 -\LaTeX{} environment \verb|thebibliography| there.  
1082 -For an overall information on that environment  
1083 -see the {\em \LaTeX{} User's Guide \& Reference  
1084 -Manual\/} by Leslie Lamport, p.~71.  
1085 -  
1086 -There is a special {\sc Bib}\TeX{} style for LLNCS that works along  
1087 -with the class: \verb|splncs.bst|  
1088 --- call for it with a line \verb|\bibliographystyle{splncs}|.  
1089 -If you plan to use another {\sc Bib}\TeX{} style you are customed to,  
1090 -please specify the option \verb|[oribibl]| in the  
1091 -\verb|documentclass| line, like:  
1092 -\begin{verbatim}  
1093 -\documentclass[oribibl]{llncs}  
1094 -\end{verbatim}  
1095 -This will retain the original \LaTeX{} code for the bibliographic  
1096 -environment and the \verb|\cite| mechanism that many {\sc Bib}\TeX{}  
1097 -applications rely on.  
1098 -%  
1099 -\subsection{References by Letter-Number or by Number Only}  
1100 -%  
1101 -References are cited in the text -- using the \verb|\cite|  
1102 -command of \LaTeX{} -- by number or by letter-number in square  
1103 -brackets, e.g.\ [1] or [E1, S2], [P1], according to your use of the  
1104 -\verb|\bibitem| command in the \verb|thebibliography| environment. The  
1105 -coding is as follows: if you choose your own label for the sources by  
1106 -giving an optional argument to the \verb|\bibitem| command the citations  
1107 -in the text are marked with the label you supplied. Otherwise a simple  
1108 -numbering is done, which is preferred.  
1109 -\begin{verbatim}  
1110 -The results in this section are a refined version  
1111 -of \cite{clar:eke}; the minimality result of Proposition~14  
1112 -was the first of its kind.  
1113 -\end{verbatim}  
1114 -The above input produces the citation: ``\dots\ refined version of  
1115 -[CE1]; the min\-i\-mality\dots''. Then the \verb|\bibitem| entry of  
1116 -the \verb|thebibliography| environment should read:  
1117 -\begin{verbatim}  
1118 -\begin{thebibliography}{[MT1]}  
1119 -.  
1120 -.  
1121 -\bibitem[CE1]{clar:eke}  
1122 -Clarke, F., Ekeland, I.:  
1123 -Nonlinear oscillations and boundary-value problems for  
1124 -Hamiltonian systems.  
1125 -Arch. Rat. Mech. Anal. 78, 315--333 (1982)  
1126 -.  
1127 -.  
1128 -\end{thebibliography}  
1129 -\end{verbatim}  
1130 -The complete bibliography looks like this:  
1131 -%  
1132 -\begin{thebibliography}{[MT1]}  
1133 -%  
1134 -\bibitem[CE1]{clar:eke}  
1135 -Clarke, F., Ekeland, I.:  
1136 -Nonlinear oscillations and  
1137 -boundary-value problems for Hamiltonian systems.  
1138 -Arch. Rat. Mech. Anal. 78, 315--333 (1982)  
1139 -%  
1140 -\bibitem[CE2]{clar:eke:2}  
1141 -Clarke, F., Ekeland, I.:  
1142 -Solutions p\'{e}riodiques, du  
1143 -p\'{e}riode donn\'{e}e, des \'{e}quations hamiltoniennes.  
1144 -Note CRAS Paris 287, 1013--1015 (1978)  
1145 -%  
1146 -\bibitem[MT1]{mich:tar}  
1147 -Michalek, R., Tarantello, G.:  
1148 -Subharmonic solutions with prescribed minimal  
1149 -period for nonautonomous Hamiltonian systems.  
1150 -J. Diff. Eq. 72, 28--55 (1988)  
1151 -%  
1152 -\bibitem[Ta1]{tar}  
1153 -Tarantello, G.:  
1154 -Subharmonic solutions for Hamiltonian  
1155 -systems via a $\bbbz_{p}$ pseudoindex theory.  
1156 -Annali di Matematica Pura (to appear)  
1157 -%  
1158 -\bibitem[Ra1]{rab}  
1159 -Rabinowitz, P.:  
1160 -On subharmonic solutions of a Hamiltonian system.  
1161 -Comm. Pure Appl. Math. 33, 609--633 (1980)  
1162 -\end{thebibliography}  
1163 -%  
1164 -\subsubsection*{Number-Only System.}  
1165 -%  
1166 -For this preferred system do not use the optional argument  
1167 -in the \verb|\bibitem| command: then, only numbers will  
1168 -appear for the citations in the text (enclosed in square brackets)  
1169 -as well as for the marks in your  
1170 -bibliography (here the number is only end-punctuated without  
1171 -square brackets).  
1172 -  
1173 -Subsequent citation numbers in the text are collapsed to ranges.  
1174 -Non-numeric and undefined labels are handled correctly but no sorting is  
1175 -done.  
1176 -  
1177 -E.g., \verb|\cite{n1,n3,n2,n3,n4,n5,foo,n1,n2,n3,?,n4,n5}| -- where  
1178 -\verb|n|$x$ is the key of the $x^{\mathrm{th}}$ \verb|\bibitem|  
1179 -command in sequence, \verb|foo| is the key of a \verb|\bibitem| with an  
1180 -optional argument, and \verb|?| is an undefined reference -- gives  
1181 -1,3,2-5,foo,1-3,?,4,5 as the citation reference.  
1182 -  
1183 -\begin{verbatim}  
1184 -\begin{thebibliography}{1}  
1185 -\bibitem {clar:eke}  
1186 -Clarke, F., Ekeland, I.:  
1187 -Nonlinear oscillations and boundary-value problems for  
1188 -Hamiltonian systems.  
1189 -Arch. Rat. Mech. Anal. 78, 315--333 (1982)  
1190 -\end{thebibliography}  
1191 -\end{verbatim}  
1192 -%  
1193 -\subsection{Author-Year System}  
1194 -%  
1195 -References are cited in the text by name and year in parentheses  
1196 -and should look as follows:  
1197 -(Smith 1970, 1980), (Ekeland et al. 1985, Theorem 2), (Jones and Jaffe  
1198 -1986; Farrow 1988, Chap.\,2). If the name is part of the sentence  
1199 -only the year may appear in parentheses,  
1200 -e.g.\ Ekeland et al. (1985, Sect.\,2.1)  
1201 -The reference list should contain all citations occurring in the text,  
1202 -ordered alphabetically by surname (with initials following). If there  
1203 -are several works by the same author(s) the references should be listed  
1204 -in the appropriate order indicated below:  
1205 -\begin{alpherate}  
1206 -\setlength{\hfuzz}{5pt}  
1207 -\item  
1208 -One author: list works chronologically;  
1209 -\item  
1210 -Author and same co-author(s): list works chronologically;  
1211 -\item  
1212 -Author and different co-authors: list works alphabetically  
1213 -according to co-authors.  
1214 -\end{alpherate}  
1215 -If there are several works by the same author(s) and in the same year,  
1216 -but which are cited separately, they should be distinguished by the use  
1217 -of ``a'', ``b'' etc., e.g.\ (Smith 1982a), (Ekeland et al. 1982b).  
1218 -%  
1219 -\subsubsection*{How to Code Author-Year System.}  
1220 -%  
1221 -If you want to use this system you have to specify the option  
1222 -\verb|[citeauthoryear]| in the \verb|documentclass|, like:  
1223 -\begin{verbatim}  
1224 -\documentclass[citeauthoryear]{llncs}  
1225 -\end{verbatim}  
1226 -Write your citations in the text explicitly except for the year, leaving  
1227 -that up to \LaTeX{} with the \verb|\cite| command. Then give only the  
1228 -appropriate year as the optional argument (i.e. the label in square  
1229 -brackets) with the \verb|\bibitem| command(s).\\[2mm]  
1230 -{\itshape Sample Input}  
1231 -\begin{verbatim}  
1232 -The results in this section are a refined version  
1233 -of Clarke and Ekeland (\cite{clar:eke}); the minimality result of  
1234 -Proposition~14 was the first of its kind.  
1235 -\end{verbatim}  
1236 -The above input produces the citation: ``\dots\ refined version of  
1237 -Clarke and Ekeland (1982); the minimality\dots''. Then the  
1238 -\verb|\bibitem| entry of \verb|clar:eke| in the \verb|thebibliography|  
1239 -environment should read:  
1240 -\begin{verbatim}  
1241 -\begin{thebibliography}{} % (do not forget {})  
1242 -.  
1243 -.  
1244 -\bibitem[1982]{clar:eke}  
1245 -Clarke, F., Ekeland, I.:  
1246 -Nonlinear oscillations and boundary-value problems for  
1247 -Hamiltonian systems.  
1248 -Arch. Rat. Mech. Anal. 78, 315--333 (1982)  
1249 -.  
1250 -.  
1251 -\end{thebibliography}  
1252 -\end{verbatim}  
1253 -{\itshape Sample Output}  
1254 -\bibauthoryear  
1255 -%  
1256 -\end{document}  
OSS-2016/llncsdoc.sty
@@ -1,42 +0,0 @@ @@ -1,42 +0,0 @@
1 -% This is LLNCSDOC.STY the modification of the  
2 -% LLNCS class file for the documentation of  
3 -% the class itself.  
4 -%  
5 -\def\AmS{{\protect\usefont{OMS}{cmsy}{m}{n}%  
6 - A\kern-.1667em\lower.5ex\hbox{M}\kern-.125emS}}  
7 -\def\AmSTeX{{\protect\AmS-\protect\TeX}}  
8 -%  
9 -\def\ps@myheadings{\let\@mkboth\@gobbletwo  
10 -\def\@oddhead{\hbox{}\hfil\small\rm\rightmark  
11 -\qquad\thepage}%  
12 -\def\@oddfoot{}\def\@evenhead{\small\rm\thepage\qquad  
13 -\leftmark\hfil}%  
14 -\def\@evenfoot{}\def\sectionmark##1{}\def\subsectionmark##1{}}  
15 -\ps@myheadings  
16 -%  
17 -\setcounter{tocdepth}{2}  
18 -%  
19 -\renewcommand{\labelitemi}{--}  
20 -\newenvironment{alpherate}%  
21 -{\renewcommand{\labelenumi}{\alph{enumi})}\begin{enumerate}}%  
22 -{\end{enumerate}\renewcommand{\labelenumi}{enumi}}  
23 -%  
24 -\def\bibauthoryear{\begingroup  
25 -\def\thebibliography##1{\section*{References}%  
26 - \small\list{}{\settowidth\labelwidth{}\leftmargin\parindent  
27 - \itemindent=-\parindent  
28 - \labelsep=\z@  
29 - \usecounter{enumi}}%  
30 - \def\newblock{\hskip .11em plus .33em minus -.07em}%  
31 - \sloppy  
32 - \sfcode`\.=1000\relax}%  
33 - \def\@cite##1{##1}%  
34 - \def\@lbibitem[##1]##2{\item[]\if@filesw  
35 - {\def\protect####1{\string ####1\space}\immediate  
36 - \write\@auxout{\string\bibcite{##2}{##1}}}\fi\ignorespaces}%  
37 -\begin{thebibliography}{}  
38 -\bibitem[1982]{clar:eke3} Clarke, F., Ekeland, I.: Nonlinear  
39 -oscillations and boundary-value problems for Hamiltonian systems.  
40 -Arch. Rat. Mech. Anal. 78, 315--333 (1982)  
41 -\end{thebibliography}  
42 -\endgroup}  
OSS-2016/remreset.sty
@@ -1,39 +0,0 @@ @@ -1,39 +0,0 @@
1 -  
2 -% remreset package  
3 -%%%%%%%%%%%%%%%%%%  
4 -  
5 -% Copyright 1997 David carlisle  
6 -% This file may be distributed under the terms of the LPPL.  
7 -% See 00readme.txt for details.  
8 -  
9 -% 1997/09/28 David Carlisle  
10 -  
11 -% LaTeX includes a command \@addtoreset that is used to declare that  
12 -% a counter should be reset every time a second counter is incremented.  
13 -  
14 -% For example the book class has a line  
15 -% \@addtoreset{footnote}{chapter}  
16 -% So that the footnote counter is reset each chapter.  
17 -  
18 -% If you wish to bas a new class on book, but without this counter  
19 -% being reset, then standard LaTeX gives no simple mechanism to do  
20 -% this.  
21 -  
22 -% This package defines |\@removefromreset| which just undoes the effect  
23 -% of \@addtorest. So for example a class file may be defined by  
24 -  
25 -% \LoadClass{book}  
26 -% \@removefromreset{footnote}{chapter}  
27 -  
28 -  
29 -\def\@removefromreset#1#2{{%  
30 - \expandafter\let\csname c@#1\endcsname\@removefromreset  
31 - \def\@elt##1{%  
32 - \expandafter\ifx\csname c@##1\endcsname\@removefromreset  
33 - \else  
34 - \noexpand\@elt{##1}%  
35 - \fi}%  
36 - \expandafter\xdef\csname cl@#2\endcsname{%  
37 - \csname cl@#2\endcsname}}}  
38 -  
39 -  
OSS-2016/spb.bib
@@ -1,37 +0,0 @@ @@ -1,37 +0,0 @@
1 -@article{naur1969software,  
2 - title={NATO},  
3 - author={Naur, Peter and Randell, Brian},  
4 - year={1969}  
5 -}  
6 -  
7 -@phdthesis{meirelles2013monitoramento,  
8 - title={Monitoramento de m{\'e}tricas de c{\'o}digo-fonte em projetos de software livre},  
9 - author={Meirelles, Paulo Roberto Miranda},  
10 - year={2013},  
11 - school={Universidade de S{\~a}o Paulo},  
12 - url={http://www.teses.usp.br/teses/disponiveis/45/45134/tde-27082013-090242/pt-br.php}  
13 -}  
14 -  
15 -@article{meirelles2009crab,  
16 - title={Crab: Uma software para avalia{\c{c}}{\~a}o de qualidade de c{\'o}digo},  
17 - author={Meirellesunes, Paulo and Challco, Geiser and Morais, Eduardo and Kon, Fabio},  
18 - journal={XXIII SBES-Simp{\'o}sio Brasileiro de Engenharia de Software (XVI Sess{\~a}o de Ferramentas). Citado na p{\'a}g},  
19 - volume={33},  
20 - year={2009}  
21 -}  
22 -  
23 -@mastersthesis{de2013kalibro,  
24 - title={Kalibro: interpreta{\c{c}}{\~a}o de m{\'e}tricas de c{\'o}digo-fonte},  
25 - author={de Oliveira Filho, Carlos Morais},  
26 - year={2013},  
27 - school={Universidade de S{\~a}o Paulo}  
28 -}  
29 -  
30 -@inproceedings{terceiro2010analizo,  
31 - title={Analizo: an extensible multi-language source code analysis and visualization toolkit},  
32 - author={Terceiro, ulo and Rios, Luiz Rom{\'a}rio and Almeida, Lucianna and Chavez, Christina and Kon, Fabio},  
33 - booktitle={Brazilian Conference on Software: Theory and Practice (CBSoft)--Tools, Salvador-Brazil},  
34 - volume={29},  
35 - year={2010}  
36 -}  
37 -  
OSS-2016/spb.tex
@@ -1,81 +0,0 @@ @@ -1,81 +0,0 @@
1 -\documentclass{llncs}  
2 -  
3 -\usepackage{llncsdoc}  
4 -\usepackage{graphicx,url}  
5 -\usepackage[brazil]{babel}  
6 -\usepackage[utf8]{inputenc}  
7 -\usepackage{float}  
8 -\usepackage{setspace}  
9 -  
10 -\usepackage{tabularx}  
11 -\usepackage{cite}  
12 -\usepackage{hyperref}  
13 -  
14 -\begin{document}  
15 -\sloppy  
16 -\title{Titulo aqui}  
17 -  
18 -\author{Autores aqui}  
19 -  
20 -\institute{Instituto Aqui\\  
21 - \email{\{emails, aqui\}@unb.br}  
22 - \and  
23 - Faculdade do Gama -- Universidade de Brasília (UnB)\\  
24 - Gama -- DF -- Brasil\\  
25 - \email{paulormm@unb.br}}  
26 -  
27 -\maketitle  
28 -\begin{abstract}  
29 - % Contexto  
30 - % Problema  
31 - % TODO: adicionar referência que apoie a falta de uso de análise estática em ambientes de desenvolvimento.  
32 - % Soluções propostas  
33 - % Frase de impacto  
34 -\textbf{palavras chave} palavras chaves aqui.  
35 -\end{abstract}  
36 -  
37 -\section{Introdução} \label{sec:intro}  
38 -  
39 -\section{Motivação}\label{sec:motivacao}  
40 -  
41 -\section{Ferramentas similares}  
42 -  
43 -\section{Histórico do spb}\label{sec:spb}  
44 -  
45 - \subsection{Origem}\label{sec:origin}  
46 -  
47 -  
48 - \subsection{Primeiro protótipo de interface gráfica}\label{sec:primeiro-prototipo}  
49 -  
50 - \subsection{Segunda interface gráfica - Prezento}\label{sec:segundo-prototipo}  
51 -  
52 - \subsection{Kalibro em \textit{Ruby on Rails}}  
53 -  
54 -\section{Arquitetura}  
55 -  
56 - %%% Colocar figura da época do Noosfero  
57 -  
58 - %%% Colocar figura da época pós Noosfero. Dependendo da figura que vamos colocar aqui, adaptar o texto e adicionar mais coisas.  
59 -  
60 - %%% Colocar figura atual. Decidir se já vamos colocar com kalibro_client e kalibro_core. Complementar o texto.  
61 - %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%  
62 -  
63 -\section{Diferenciais} \label{subsec:motivacao}  
64 -  
65 -\section{Por que usar o Mezuro?} \label{sec:projeto-mezuro}  
66 -  
67 -\section{Principais funcionalidades}\label{sec:princ-funcionalidades}  
68 -  
69 -\section{A rede social}\label{sec:user-potencial}  
70 -  
71 -\section{Casos de uso}  
72 -  
73 - \subsection{Criação de configuração}  
74 -  
75 - \subsection{Criação de projeto e avaliação de repositório}  
76 -  
77 -\section{Conclusão}  
78 -  
79 -\bibliographystyle{splncs03}  
80 -\bibliography{mezuro}  
81 -\end{document}  
OSS-2016/splncs03.bst
@@ -1,1519 +0,0 @@ @@ -1,1519 +0,0 @@
1 -%% BibTeX bibliography style `splncs03'  
2 -%%  
3 -%% BibTeX bibliography style for use with numbered references in  
4 -%% Springer Verlag's "Lecture Notes in Computer Science" series.  
5 -%% (See Springer's documentation for llncs.cls for  
6 -%% more details of the suggested reference format.) Note that this  
7 -%% file will not work for author-year style citations.  
8 -%%  
9 -%% Use \documentclass{llncs} and \bibliographystyle{splncs03}, and cite  
10 -%% a reference with (e.g.) \cite{smith77} to get a "[1]" in the text.  
11 -%%  
12 -%% This file comes to you courtesy of Maurizio "Titto" Patrignani of  
13 -%% Dipartimento di Informatica e Automazione Universita' Roma Tre  
14 -%%  
15 -%% ================================================================================================  
16 -%% This was file `titto-lncs-02.bst' produced on Wed Apr 1, 2009  
17 -%% Edited by hand by titto based on `titto-lncs-01.bst' (see below)  
18 -%%  
19 -%% CHANGES (with respect to titto-lncs-01.bst):  
20 -%% - Removed the call to \urlprefix (thus no "URL" string is added to the output)  
21 -%% ================================================================================================  
22 -%% This was file `titto-lncs-01.bst' produced on Fri Aug 22, 2008  
23 -%% Edited by hand by titto based on `titto.bst' (see below)  
24 -%%  
25 -%% CHANGES (with respect to titto.bst):  
26 -%% - Removed the "capitalize" command for editors string "(eds.)" and "(ed.)"  
27 -%% - Introduced the functions titto.bbl.pages and titto.bbl.page for journal pages (without "pp.")  
28 -%% - Added a new.sentence command to separate with a dot booktitle and series in the inproceedings  
29 -%% - Commented all new.block commands before urls and notes (to separate them with a comma)  
30 -%% - Introduced the functions titto.bbl.volume for handling journal volumes (without "vol." label)  
31 -%% - Used for editors the same name conventions used for authors (see function format.in.ed.booktitle)  
32 -%% - Removed a \newblock to avoid long spaces between title and "In: ..."  
33 -%% - Added function titto.space.prefix to add a space instead of "~" after the (removed) "vol." label  
34 -%% ================================================================================================  
35 -%% This was file `titto.bst',  
36 -%% generated with the docstrip utility.  
37 -%%  
38 -%% The original source files were:  
39 -%%  
40 -%% merlin.mbs (with options: `vonx,nm-rvvc,yr-par,jttl-rm,volp-com,jwdpg,jwdvol,numser,ser-vol,jnm-x,btit-rm,bt-rm,edparxc,bkedcap,au-col,in-col,fin-bare,pp,ed,abr,mth-bare,xedn,jabr,and-com,and-com-ed,xand,url,url-blk,em-x,nfss,')  
41 -%% ----------------------------------------  
42 -%% *** Tentative .bst file for Springer LNCS ***  
43 -%%  
44 -%% Copyright 1994-2007 Patrick W Daly  
45 - % ===============================================================  
46 - % IMPORTANT NOTICE:  
47 - % This bibliographic style (bst) file has been generated from one or  
48 - % more master bibliographic style (mbs) files, listed above.  
49 - %  
50 - % This generated file can be redistributed and/or modified under the terms  
51 - % of the LaTeX Project Public License Distributed from CTAN  
52 - % archives in directory macros/latex/base/lppl.txt; either  
53 - % version 1 of the License, or any later version.  
54 - % ===============================================================  
55 - % Name and version information of the main mbs file:  
56 - % \ProvidesFile{merlin.mbs}[2007/04/24 4.20 (PWD, AO, DPC)]  
57 - % For use with BibTeX version 0.99a or later  
58 - %-------------------------------------------------------------------  
59 - % This bibliography style file is intended for texts in ENGLISH  
60 - % This is a numerical citation style, and as such is standard LaTeX.  
61 - % It requires no extra package to interface to the main text.  
62 - % The form of the \bibitem entries is  
63 - % \bibitem{key}...  
64 - % Usage of \cite is as follows:  
65 - % \cite{key} ==>> [#]  
66 - % \cite[chap. 2]{key} ==>> [#, chap. 2]  
67 - % where # is a number determined by the ordering in the reference list.  
68 - % The order in the reference list is alphabetical by authors.  
69 - %---------------------------------------------------------------------  
70 -  
71 -ENTRY  
72 - { address  
73 - author  
74 - booktitle  
75 - chapter  
76 - edition  
77 - editor  
78 - eid  
79 - howpublished  
80 - institution  
81 - journal  
82 - key  
83 - month  
84 - note  
85 - number  
86 - organization  
87 - pages  
88 - publisher  
89 - school  
90 - series  
91 - title  
92 - type  
93 - url  
94 - volume  
95 - year  
96 - }  
97 - {}  
98 - { label }  
99 -INTEGERS { output.state before.all mid.sentence after.sentence after.block }  
100 -FUNCTION {init.state.consts}  
101 -{ #0 'before.all :=  
102 - #1 'mid.sentence :=  
103 - #2 'after.sentence :=  
104 - #3 'after.block :=  
105 -}  
106 -STRINGS { s t}  
107 -FUNCTION {output.nonnull}  
108 -{ 's :=  
109 - output.state mid.sentence =  
110 - { ", " * write$ }  
111 - { output.state after.block =  
112 - { add.period$ write$  
113 -% newline$  
114 -% "\newblock " write$ % removed for titto-lncs-01  
115 - " " write$ % to avoid long spaces between title and "In: ..."  
116 - }  
117 - { output.state before.all =  
118 - 'write$  
119 - { add.period$ " " * write$ }  
120 - if$  
121 - }  
122 - if$  
123 - mid.sentence 'output.state :=  
124 - }  
125 - if$  
126 - s  
127 -}  
128 -FUNCTION {output}  
129 -{ duplicate$ empty$  
130 - 'pop$  
131 - 'output.nonnull  
132 - if$  
133 -}  
134 -FUNCTION {output.check}  
135 -{ 't :=  
136 - duplicate$ empty$  
137 - { pop$ "empty " t * " in " * cite$ * warning$ }  
138 - 'output.nonnull  
139 - if$  
140 -}  
141 -FUNCTION {fin.entry}  
142 -{ duplicate$ empty$  
143 - 'pop$  
144 - 'write$  
145 - if$  
146 - newline$  
147 -}  
148 -  
149 -FUNCTION {new.block}  
150 -{ output.state before.all =  
151 - 'skip$  
152 - { after.block 'output.state := }  
153 - if$  
154 -}  
155 -FUNCTION {new.sentence}  
156 -{ output.state after.block =  
157 - 'skip$  
158 - { output.state before.all =  
159 - 'skip$  
160 - { after.sentence 'output.state := }  
161 - if$  
162 - }  
163 - if$  
164 -}  
165 -FUNCTION {add.blank}  
166 -{ " " * before.all 'output.state :=  
167 -}  
168 -  
169 -  
170 -FUNCTION {add.colon}  
171 -{ duplicate$ empty$  
172 - 'skip$  
173 - { ":" * add.blank }  
174 - if$  
175 -}  
176 -  
177 -FUNCTION {date.block}  
178 -{  
179 - new.block  
180 -}  
181 -  
182 -FUNCTION {not}  
183 -{ { #0 }  
184 - { #1 }  
185 - if$  
186 -}  
187 -FUNCTION {and}  
188 -{ 'skip$  
189 - { pop$ #0 }  
190 - if$  
191 -}  
192 -FUNCTION {or}  
193 -{ { pop$ #1 }  
194 - 'skip$  
195 - if$  
196 -}  
197 -STRINGS {z}  
198 -FUNCTION {remove.dots}  
199 -{ 'z :=  
200 - ""  
201 - { z empty$ not }  
202 - { z #1 #1 substring$  
203 - z #2 global.max$ substring$ 'z :=  
204 - duplicate$ "." = 'pop$  
205 - { * }  
206 - if$  
207 - }  
208 - while$  
209 -}  
210 -FUNCTION {new.block.checka}  
211 -{ empty$  
212 - 'skip$  
213 - 'new.block  
214 - if$  
215 -}  
216 -FUNCTION {new.block.checkb}  
217 -{ empty$  
218 - swap$ empty$  
219 - and  
220 - 'skip$  
221 - 'new.block  
222 - if$  
223 -}  
224 -FUNCTION {new.sentence.checka}  
225 -{ empty$  
226 - 'skip$  
227 - 'new.sentence  
228 - if$  
229 -}  
230 -FUNCTION {new.sentence.checkb}  
231 -{ empty$  
232 - swap$ empty$  
233 - and  
234 - 'skip$  
235 - 'new.sentence  
236 - if$  
237 -}  
238 -FUNCTION {field.or.null}  
239 -{ duplicate$ empty$  
240 - { pop$ "" }  
241 - 'skip$  
242 - if$  
243 -}  
244 -FUNCTION {emphasize}  
245 -{ skip$ }  
246 -FUNCTION {tie.or.space.prefix}  
247 -{ duplicate$ text.length$ #3 <  
248 - { "~" }  
249 - { " " }  
250 - if$  
251 - swap$  
252 -}  
253 -FUNCTION {titto.space.prefix} % always introduce a space  
254 -{ duplicate$ text.length$ #3 <  
255 - { " " }  
256 - { " " }  
257 - if$  
258 - swap$  
259 -}  
260 -  
261 -  
262 -FUNCTION {capitalize}  
263 -{ "u" change.case$ "t" change.case$ }  
264 -  
265 -FUNCTION {space.word}  
266 -{ " " swap$ * " " * }  
267 - % Here are the language-specific definitions for explicit words.  
268 - % Each function has a name bbl.xxx where xxx is the English word.  
269 - % The language selected here is ENGLISH  
270 -FUNCTION {bbl.and}  
271 -{ "and"}  
272 -  
273 -FUNCTION {bbl.etal}  
274 -{ "et~al." }  
275 -  
276 -FUNCTION {bbl.editors}  
277 -{ "eds." }  
278 -  
279 -FUNCTION {bbl.editor}  
280 -{ "ed." }  
281 -  
282 -FUNCTION {bbl.edby}  
283 -{ "edited by" }  
284 -  
285 -FUNCTION {bbl.edition}  
286 -{ "edn." }  
287 -  
288 -FUNCTION {bbl.volume}  
289 -{ "vol." }  
290 -  
291 -FUNCTION {titto.bbl.volume} % for handling journals  
292 -{ "" }  
293 -  
294 -FUNCTION {bbl.of}  
295 -{ "of" }  
296 -  
297 -FUNCTION {bbl.number}  
298 -{ "no." }  
299 -  
300 -FUNCTION {bbl.nr}  
301 -{ "no." }  
302 -  
303 -FUNCTION {bbl.in}  
304 -{ "in" }  
305 -  
306 -FUNCTION {bbl.pages}  
307 -{ "pp." }  
308 -  
309 -FUNCTION {bbl.page}  
310 -{ "p." }  
311 -  
312 -FUNCTION {titto.bbl.pages} % for journals  
313 -{ "" }  
314 -  
315 -FUNCTION {titto.bbl.page} % for journals  
316 -{ "" }  
317 -  
318 -FUNCTION {bbl.chapter}  
319 -{ "chap." }  
320 -  
321 -FUNCTION {bbl.techrep}  
322 -{ "Tech. Rep." }  
323 -  
324 -FUNCTION {bbl.mthesis}  
325 -{ "Master's thesis" }  
326 -  
327 -FUNCTION {bbl.phdthesis}  
328 -{ "Ph.D. thesis" }  
329 -  
330 -MACRO {jan} {"Jan."}  
331 -  
332 -MACRO {feb} {"Feb."}  
333 -  
334 -MACRO {mar} {"Mar."}  
335 -  
336 -MACRO {apr} {"Apr."}  
337 -  
338 -MACRO {may} {"May"}  
339 -  
340 -MACRO {jun} {"Jun."}  
341 -  
342 -MACRO {jul} {"Jul."}  
343 -  
344 -MACRO {aug} {"Aug."}  
345 -  
346 -MACRO {sep} {"Sep."}  
347 -  
348 -MACRO {oct} {"Oct."}  
349 -  
350 -MACRO {nov} {"Nov."}  
351 -  
352 -MACRO {dec} {"Dec."}  
353 -  
354 -MACRO {acmcs} {"ACM Comput. Surv."}  
355 -  
356 -MACRO {acta} {"Acta Inf."}  
357 -  
358 -MACRO {cacm} {"Commun. ACM"}  
359 -  
360 -MACRO {ibmjrd} {"IBM J. Res. Dev."}  
361 -  
362 -MACRO {ibmsj} {"IBM Syst.~J."}  
363 -  
364 -MACRO {ieeese} {"IEEE Trans. Software Eng."}  
365 -  
366 -MACRO {ieeetc} {"IEEE Trans. Comput."}  
367 -  
368 -MACRO {ieeetcad}  
369 - {"IEEE Trans. Comput. Aid. Des."}  
370 -  
371 -MACRO {ipl} {"Inf. Process. Lett."}  
372 -  
373 -MACRO {jacm} {"J.~ACM"}  
374 -  
375 -MACRO {jcss} {"J.~Comput. Syst. Sci."}  
376 -  
377 -MACRO {scp} {"Sci. Comput. Program."}  
378 -  
379 -MACRO {sicomp} {"SIAM J. Comput."}  
380 -  
381 -MACRO {tocs} {"ACM Trans. Comput. Syst."}  
382 -  
383 -MACRO {tods} {"ACM Trans. Database Syst."}  
384 -  
385 -MACRO {tog} {"ACM Trans. Graphic."}  
386 -  
387 -MACRO {toms} {"ACM Trans. Math. Software"}  
388 -  
389 -MACRO {toois} {"ACM Trans. Office Inf. Syst."}  
390 -  
391 -MACRO {toplas} {"ACM Trans. Progr. Lang. Syst."}  
392 -  
393 -MACRO {tcs} {"Theor. Comput. Sci."}  
394 -  
395 -FUNCTION {bibinfo.check}  
396 -{ swap$  
397 - duplicate$ missing$  
398 - {  
399 - pop$ pop$  
400 - ""  
401 - }  
402 - { duplicate$ empty$  
403 - {  
404 - swap$ pop$  
405 - }  
406 - { swap$  
407 - pop$  
408 - }  
409 - if$  
410 - }  
411 - if$  
412 -}  
413 -FUNCTION {bibinfo.warn}  
414 -{ swap$  
415 - duplicate$ missing$  
416 - {  
417 - swap$ "missing " swap$ * " in " * cite$ * warning$ pop$  
418 - ""  
419 - }  
420 - { duplicate$ empty$  
421 - {  
422 - swap$ "empty " swap$ * " in " * cite$ * warning$  
423 - }  
424 - { swap$  
425 - pop$  
426 - }  
427 - if$  
428 - }  
429 - if$  
430 -}  
431 -FUNCTION {format.url}  
432 -{ url empty$  
433 - { "" }  
434 -% { "\urlprefix\url{" url * "}" * }  
435 - { "\url{" url * "}" * } % changed in titto-lncs-02.bst  
436 - if$  
437 -}  
438 -  
439 -INTEGERS { nameptr namesleft numnames }  
440 -  
441 -  
442 -STRINGS { bibinfo}  
443 -  
444 -FUNCTION {format.names}  
445 -{ 'bibinfo :=  
446 - duplicate$ empty$ 'skip$ {  
447 - 's :=  
448 - "" 't :=  
449 - #1 'nameptr :=  
450 - s num.names$ 'numnames :=  
451 - numnames 'namesleft :=  
452 - { namesleft #0 > }  
453 - { s nameptr  
454 - "{vv~}{ll}{, jj}{, f{.}.}"  
455 - format.name$  
456 - bibinfo bibinfo.check  
457 - 't :=  
458 - nameptr #1 >  
459 - {  
460 - namesleft #1 >  
461 - { ", " * t * }  
462 - {  
463 - s nameptr "{ll}" format.name$ duplicate$ "others" =  
464 - { 't := }  
465 - { pop$ }  
466 - if$  
467 - "," *  
468 - t "others" =  
469 - {  
470 - " " * bbl.etal *  
471 - }  
472 - { " " * t * }  
473 - if$  
474 - }  
475 - if$  
476 - }  
477 - 't  
478 - if$  
479 - nameptr #1 + 'nameptr :=  
480 - namesleft #1 - 'namesleft :=  
481 - }  
482 - while$  
483 - } if$  
484 -}  
485 -FUNCTION {format.names.ed}  
486 -{  
487 - 'bibinfo :=  
488 - duplicate$ empty$ 'skip$ {  
489 - 's :=  
490 - "" 't :=  
491 - #1 'nameptr :=  
492 - s num.names$ 'numnames :=  
493 - numnames 'namesleft :=  
494 - { namesleft #0 > }  
495 - { s nameptr  
496 - "{f{.}.~}{vv~}{ll}{ jj}"  
497 - format.name$  
498 - bibinfo bibinfo.check  
499 - 't :=  
500 - nameptr #1 >  
501 - {  
502 - namesleft #1 >  
503 - { ", " * t * }  
504 - {  
505 - s nameptr "{ll}" format.name$ duplicate$ "others" =  
506 - { 't := }  
507 - { pop$ }  
508 - if$  
509 - "," *  
510 - t "others" =  
511 - {  
512 -  
513 - " " * bbl.etal *  
514 - }  
515 - { " " * t * }  
516 - if$  
517 - }  
518 - if$  
519 - }  
520 - 't  
521 - if$  
522 - nameptr #1 + 'nameptr :=  
523 - namesleft #1 - 'namesleft :=  
524 - }  
525 - while$  
526 - } if$  
527 -}  
528 -FUNCTION {format.authors}  
529 -{ author "author" format.names  
530 -}  
531 -FUNCTION {get.bbl.editor}  
532 -{ editor num.names$ #1 > 'bbl.editors 'bbl.editor if$ }  
533 -  
534 -FUNCTION {format.editors}  
535 -{ editor "editor" format.names duplicate$ empty$ 'skip$  
536 - {  
537 - " " *  
538 - get.bbl.editor  
539 -% capitalize  
540 - "(" swap$ * ")" *  
541 - *  
542 - }  
543 - if$  
544 -}  
545 -FUNCTION {format.note}  
546 -{  
547 - note empty$  
548 - { "" }  
549 - { note #1 #1 substring$  
550 - duplicate$ "{" =  
551 - 'skip$  
552 - { output.state mid.sentence =  
553 - { "l" }  
554 - { "u" }  
555 - if$  
556 - change.case$  
557 - }  
558 - if$  
559 - note #2 global.max$ substring$ * "note" bibinfo.check  
560 - }  
561 - if$  
562 -}  
563 -  
564 -FUNCTION {format.title}  
565 -{ title  
566 - duplicate$ empty$ 'skip$  
567 - { "t" change.case$ }  
568 - if$  
569 - "title" bibinfo.check  
570 -}  
571 -FUNCTION {output.bibitem}  
572 -{ newline$  
573 - "\bibitem{" write$  
574 - cite$ write$  
575 - "}" write$  
576 - newline$  
577 - ""  
578 - before.all 'output.state :=  
579 -}  
580 -  
581 -FUNCTION {n.dashify}  
582 -{  
583 - 't :=  
584 - ""  
585 - { t empty$ not }  
586 - { t #1 #1 substring$ "-" =  
587 - { t #1 #2 substring$ "--" = not  
588 - { "--" *  
589 - t #2 global.max$ substring$ 't :=  
590 - }  
591 - { { t #1 #1 substring$ "-" = }  
592 - { "-" *  
593 - t #2 global.max$ substring$ 't :=  
594 - }  
595 - while$  
596 - }  
597 - if$  
598 - }  
599 - { t #1 #1 substring$ *  
600 - t #2 global.max$ substring$ 't :=  
601 - }  
602 - if$  
603 - }  
604 - while$  
605 -}  
606 -  
607 -FUNCTION {word.in}  
608 -{ bbl.in capitalize  
609 - ":" *  
610 - " " * }  
611 -  
612 -FUNCTION {format.date}  
613 -{  
614 - month "month" bibinfo.check  
615 - duplicate$ empty$  
616 - year "year" bibinfo.check duplicate$ empty$  
617 - { swap$ 'skip$  
618 - { "there's a month but no year in " cite$ * warning$ }  
619 - if$  
620 - *  
621 - }  
622 - { swap$ 'skip$  
623 - {  
624 - swap$  
625 - " " * swap$  
626 - }  
627 - if$  
628 - *  
629 - remove.dots  
630 - }  
631 - if$  
632 - duplicate$ empty$  
633 - 'skip$  
634 - {  
635 - before.all 'output.state :=  
636 - " (" swap$ * ")" *  
637 - }  
638 - if$  
639 -}  
640 -FUNCTION {format.btitle}  
641 -{ title "title" bibinfo.check  
642 - duplicate$ empty$ 'skip$  
643 - {  
644 - }  
645 - if$  
646 -}  
647 -FUNCTION {either.or.check}  
648 -{ empty$  
649 - 'pop$  
650 - { "can't use both " swap$ * " fields in " * cite$ * warning$ }  
651 - if$  
652 -}  
653 -FUNCTION {format.bvolume}  
654 -{ volume empty$  
655 - { "" }  
656 - { bbl.volume volume tie.or.space.prefix  
657 - "volume" bibinfo.check * *  
658 - series "series" bibinfo.check  
659 - duplicate$ empty$ 'pop$  
660 - { emphasize ", " * swap$ * }  
661 - if$  
662 - "volume and number" number either.or.check  
663 - }  
664 - if$  
665 -}  
666 -FUNCTION {format.number.series}  
667 -{ volume empty$  
668 - { number empty$  
669 - { series field.or.null }  
670 - { output.state mid.sentence =  
671 - { bbl.number }  
672 - { bbl.number capitalize }  
673 - if$  
674 - number tie.or.space.prefix "number" bibinfo.check * *  
675 - series empty$  
676 - { "there's a number but no series in " cite$ * warning$ }  
677 - { bbl.in space.word *  
678 - series "series" bibinfo.check *  
679 - }  
680 - if$  
681 - }  
682 - if$  
683 - }  
684 - { "" }  
685 - if$  
686 -}  
687 -  
688 -FUNCTION {format.edition}  
689 -{ edition duplicate$ empty$ 'skip$  
690 - {  
691 - output.state mid.sentence =  
692 - { "l" }  
693 - { "t" }  
694 - if$ change.case$  
695 - "edition" bibinfo.check  
696 - " " * bbl.edition *  
697 - }  
698 - if$  
699 -}  
700 -INTEGERS { multiresult }  
701 -FUNCTION {multi.page.check}  
702 -{ 't :=  
703 - #0 'multiresult :=  
704 - { multiresult not  
705 - t empty$ not  
706 - and  
707 - }  
708 - { t #1 #1 substring$  
709 - duplicate$ "-" =  
710 - swap$ duplicate$ "," =  
711 - swap$ "+" =  
712 - or or  
713 - { #1 'multiresult := }  
714 - { t #2 global.max$ substring$ 't := }  
715 - if$  
716 - }  
717 - while$  
718 - multiresult  
719 -}  
720 -FUNCTION {format.pages}  
721 -{ pages duplicate$ empty$ 'skip$  
722 - { duplicate$ multi.page.check  
723 - {  
724 - bbl.pages swap$  
725 - n.dashify  
726 - }  
727 - {  
728 - bbl.page swap$  
729 - }  
730 - if$  
731 - tie.or.space.prefix  
732 - "pages" bibinfo.check  
733 - * *  
734 - }  
735 - if$  
736 -}  
737 -FUNCTION {format.journal.pages}  
738 -{ pages duplicate$ empty$ 'pop$  
739 - { swap$ duplicate$ empty$  
740 - { pop$ pop$ format.pages }  
741 - {  
742 - ", " *  
743 - swap$  
744 - n.dashify  
745 - pages multi.page.check  
746 - 'titto.bbl.pages  
747 - 'titto.bbl.page  
748 - if$  
749 - swap$ tie.or.space.prefix  
750 - "pages" bibinfo.check  
751 - * *  
752 - *  
753 - }  
754 - if$  
755 - }  
756 - if$  
757 -}  
758 -FUNCTION {format.journal.eid}  
759 -{ eid "eid" bibinfo.check  
760 - duplicate$ empty$ 'pop$  
761 - { swap$ duplicate$ empty$ 'skip$  
762 - {  
763 - ", " *  
764 - }  
765 - if$  
766 - swap$ *  
767 - }  
768 - if$  
769 -}  
770 -FUNCTION {format.vol.num.pages} % this function is used only for journal entries  
771 -{ volume field.or.null  
772 - duplicate$ empty$ 'skip$  
773 - {  
774 -% bbl.volume swap$ tie.or.space.prefix  
775 - titto.bbl.volume swap$ titto.space.prefix  
776 -% rationale for the change above: for journals you don't want "vol." label  
777 -% hence it does not make sense to attach the journal number to the label when  
778 -% it is short  
779 - "volume" bibinfo.check  
780 - * *  
781 - }  
782 - if$  
783 - number "number" bibinfo.check duplicate$ empty$ 'skip$  
784 - {  
785 - swap$ duplicate$ empty$  
786 - { "there's a number but no volume in " cite$ * warning$ }  
787 - 'skip$  
788 - if$  
789 - swap$  
790 - "(" swap$ * ")" *  
791 - }  
792 - if$ *  
793 - eid empty$  
794 - { format.journal.pages }  
795 - { format.journal.eid }  
796 - if$  
797 -}  
798 -  
799 -FUNCTION {format.chapter.pages}  
800 -{ chapter empty$  
801 - 'format.pages  
802 - { type empty$  
803 - { bbl.chapter }  
804 - { type "l" change.case$  
805 - "type" bibinfo.check  
806 - }  
807 - if$  
808 - chapter tie.or.space.prefix  
809 - "chapter" bibinfo.check  
810 - * *  
811 - pages empty$  
812 - 'skip$  
813 - { ", " * format.pages * }  
814 - if$  
815 - }  
816 - if$  
817 -}  
818 -  
819 -FUNCTION {format.booktitle}  
820 -{  
821 - booktitle "booktitle" bibinfo.check  
822 -}  
823 -FUNCTION {format.in.ed.booktitle}  
824 -{ format.booktitle duplicate$ empty$ 'skip$  
825 - {  
826 -% editor "editor" format.names.ed duplicate$ empty$ 'pop$ % changed by titto  
827 - editor "editor" format.names duplicate$ empty$ 'pop$  
828 - {  
829 - " " *  
830 - get.bbl.editor  
831 -% capitalize  
832 - "(" swap$ * ") " *  
833 - * swap$  
834 - * }  
835 - if$  
836 - word.in swap$ *  
837 - }  
838 - if$  
839 -}  
840 -FUNCTION {empty.misc.check}  
841 -{ author empty$ title empty$ howpublished empty$  
842 - month empty$ year empty$ note empty$  
843 - and and and and and  
844 - key empty$ not and  
845 - { "all relevant fields are empty in " cite$ * warning$ }  
846 - 'skip$  
847 - if$  
848 -}  
849 -FUNCTION {format.thesis.type}  
850 -{ type duplicate$ empty$  
851 - 'pop$  
852 - { swap$ pop$  
853 - "t" change.case$ "type" bibinfo.check  
854 - }  
855 - if$  
856 -}  
857 -FUNCTION {format.tr.number}  
858 -{ number "number" bibinfo.check  
859 - type duplicate$ empty$  
860 - { pop$ bbl.techrep }  
861 - 'skip$  
862 - if$  
863 - "type" bibinfo.check  
864 - swap$ duplicate$ empty$  
865 - { pop$ "t" change.case$ }  
866 - { tie.or.space.prefix * * }  
867 - if$  
868 -}  
869 -FUNCTION {format.article.crossref}  
870 -{  
871 - key duplicate$ empty$  
872 - { pop$  
873 - journal duplicate$ empty$  
874 - { "need key or journal for " cite$ * " to crossref " * crossref * warning$ }  
875 - { "journal" bibinfo.check emphasize word.in swap$ * }  
876 - if$  
877 - }  
878 - { word.in swap$ * " " *}  
879 - if$  
880 - " \cite{" * crossref * "}" *  
881 -}  
882 -FUNCTION {format.crossref.editor}  
883 -{ editor #1 "{vv~}{ll}" format.name$  
884 - "editor" bibinfo.check  
885 - editor num.names$ duplicate$  
886 - #2 >  
887 - { pop$  
888 - "editor" bibinfo.check  
889 - " " * bbl.etal  
890 - *  
891 - }  
892 - { #2 <  
893 - 'skip$  
894 - { editor #2 "{ff }{vv }{ll}{ jj}" format.name$ "others" =  
895 - {  
896 - "editor" bibinfo.check  
897 - " " * bbl.etal  
898 - *  
899 - }  
900 - {  
901 - bbl.and space.word  
902 - * editor #2 "{vv~}{ll}" format.name$  
903 - "editor" bibinfo.check  
904 - *  
905 - }  
906 - if$  
907 - }  
908 - if$  
909 - }  
910 - if$  
911 -}  
912 -FUNCTION {format.book.crossref}  
913 -{ volume duplicate$ empty$  
914 - { "empty volume in " cite$ * "'s crossref of " * crossref * warning$  
915 - pop$ word.in  
916 - }  
917 - { bbl.volume  
918 - capitalize  
919 - swap$ tie.or.space.prefix "volume" bibinfo.check * * bbl.of space.word *  
920 - }  
921 - if$  
922 - editor empty$  
923 - editor field.or.null author field.or.null =  
924 - or  
925 - { key empty$  
926 - { series empty$  
927 - { "need editor, key, or series for " cite$ * " to crossref " *  
928 - crossref * warning$  
929 - "" *  
930 - }  
931 - { series emphasize * }  
932 - if$  
933 - }  
934 - { key * }  
935 - if$  
936 - }  
937 - { format.crossref.editor * }  
938 - if$  
939 - " \cite{" * crossref * "}" *  
940 -}  
941 -FUNCTION {format.incoll.inproc.crossref}  
942 -{  
943 - editor empty$  
944 - editor field.or.null author field.or.null =  
945 - or  
946 - { key empty$  
947 - { format.booktitle duplicate$ empty$  
948 - { "need editor, key, or booktitle for " cite$ * " to crossref " *  
949 - crossref * warning$  
950 - }  
951 - { word.in swap$ * }  
952 - if$  
953 - }  
954 - { word.in key * " " *}  
955 - if$  
956 - }  
957 - { word.in format.crossref.editor * " " *}  
958 - if$  
959 - " \cite{" * crossref * "}" *  
960 -}  
961 -FUNCTION {format.org.or.pub}  
962 -{ 't :=  
963 - ""  
964 - address empty$ t empty$ and  
965 - 'skip$  
966 - {  
967 - t empty$  
968 - { address "address" bibinfo.check *  
969 - }  
970 - { t *  
971 - address empty$  
972 - 'skip$  
973 - { ", " * address "address" bibinfo.check * }  
974 - if$  
975 - }  
976 - if$  
977 - }  
978 - if$  
979 -}  
980 -FUNCTION {format.publisher.address}  
981 -{ publisher "publisher" bibinfo.warn format.org.or.pub  
982 -}  
983 -  
984 -FUNCTION {format.organization.address}  
985 -{ organization "organization" bibinfo.check format.org.or.pub  
986 -}  
987 -  
988 -FUNCTION {article}  
989 -{ output.bibitem  
990 - format.authors "author" output.check  
991 - add.colon  
992 - new.block  
993 - format.title "title" output.check  
994 - new.block  
995 - crossref missing$  
996 - {  
997 - journal  
998 - "journal" bibinfo.check  
999 - "journal" output.check  
1000 - add.blank  
1001 - format.vol.num.pages output  
1002 - format.date "year" output.check  
1003 - }  
1004 - { format.article.crossref output.nonnull  
1005 - format.pages output  
1006 - }  
1007 - if$  
1008 -% new.block  
1009 - format.url output  
1010 -% new.block  
1011 - format.note output  
1012 - fin.entry  
1013 -}  
1014 -FUNCTION {book}  
1015 -{ output.bibitem  
1016 - author empty$  
1017 - { format.editors "author and editor" output.check  
1018 - add.colon  
1019 - }  
1020 - { format.authors output.nonnull  
1021 - add.colon  
1022 - crossref missing$  
1023 - { "author and editor" editor either.or.check }  
1024 - 'skip$  
1025 - if$  
1026 - }  
1027 - if$  
1028 - new.block  
1029 - format.btitle "title" output.check  
1030 - crossref missing$  
1031 - { format.bvolume output  
1032 - new.block  
1033 - new.sentence  
1034 - format.number.series output  
1035 - format.publisher.address output  
1036 - }  
1037 - {  
1038 - new.block  
1039 - format.book.crossref output.nonnull  
1040 - }  
1041 - if$  
1042 - format.edition output  
1043 - format.date "year" output.check  
1044 -% new.block  
1045 - format.url output  
1046 -% new.block  
1047 - format.note output  
1048 - fin.entry  
1049 -}  
1050 -FUNCTION {booklet}  
1051 -{ output.bibitem  
1052 - format.authors output  
1053 - add.colon  
1054 - new.block  
1055 - format.title "title" output.check  
1056 - new.block  
1057 - howpublished "howpublished" bibinfo.check output  
1058 - address "address" bibinfo.check output  
1059 - format.date output  
1060 -% new.block  
1061 - format.url output  
1062 -% new.block  
1063 - format.note output  
1064 - fin.entry  
1065 -}  
1066 -  
1067 -FUNCTION {inbook}  
1068 -{ output.bibitem  
1069 - author empty$  
1070 - { format.editors "author and editor" output.check  
1071 - add.colon  
1072 - }  
1073 - { format.authors output.nonnull  
1074 - add.colon  
1075 - crossref missing$  
1076 - { "author and editor" editor either.or.check }  
1077 - 'skip$  
1078 - if$  
1079 - }  
1080 - if$  
1081 - new.block  
1082 - format.btitle "title" output.check  
1083 - crossref missing$  
1084 - {  
1085 - format.bvolume output  
1086 - format.chapter.pages "chapter and pages" output.check  
1087 - new.block  
1088 - new.sentence  
1089 - format.number.series output  
1090 - format.publisher.address output  
1091 - }  
1092 - {  
1093 - format.chapter.pages "chapter and pages" output.check  
1094 - new.block  
1095 - format.book.crossref output.nonnull  
1096 - }  
1097 - if$  
1098 - format.edition output  
1099 - format.date "year" output.check  
1100 -% new.block  
1101 - format.url output  
1102 -% new.block  
1103 - format.note output  
1104 - fin.entry  
1105 -}  
1106 -  
1107 -FUNCTION {incollection}  
1108 -{ output.bibitem  
1109 - format.authors "author" output.check  
1110 - add.colon  
1111 - new.block  
1112 - format.title "title" output.check  
1113 - new.block  
1114 - crossref missing$  
1115 - { format.in.ed.booktitle "booktitle" output.check  
1116 - format.bvolume output  
1117 - format.chapter.pages output  
1118 - new.sentence  
1119 - format.number.series output  
1120 - format.publisher.address output  
1121 - format.edition output  
1122 - format.date "year" output.check  
1123 - }  
1124 - { format.incoll.inproc.crossref output.nonnull  
1125 - format.chapter.pages output  
1126 - }  
1127 - if$  
1128 -% new.block  
1129 - format.url output  
1130 -% new.block  
1131 - format.note output  
1132 - fin.entry  
1133 -}  
1134 -FUNCTION {inproceedings}  
1135 -{ output.bibitem  
1136 - format.authors "author" output.check  
1137 - add.colon  
1138 - new.block  
1139 - format.title "title" output.check  
1140 - new.block  
1141 - crossref missing$  
1142 - { format.in.ed.booktitle "booktitle" output.check  
1143 - new.sentence % added by titto  
1144 - format.bvolume output  
1145 - format.pages output  
1146 - new.sentence  
1147 - format.number.series output  
1148 - publisher empty$  
1149 - { format.organization.address output }  
1150 - { organization "organization" bibinfo.check output  
1151 - format.publisher.address output  
1152 - }  
1153 - if$  
1154 - format.date "year" output.check  
1155 - }  
1156 - { format.incoll.inproc.crossref output.nonnull  
1157 - format.pages output  
1158 - }  
1159 - if$  
1160 -% new.block  
1161 - format.url output  
1162 -% new.block  
1163 - format.note output  
1164 - fin.entry  
1165 -}  
1166 -FUNCTION {conference} { inproceedings }  
1167 -FUNCTION {manual}  
1168 -{ output.bibitem  
1169 - author empty$  
1170 - { organization "organization" bibinfo.check  
1171 - duplicate$ empty$ 'pop$  
1172 - { output  
1173 - address "address" bibinfo.check output  
1174 - }  
1175 - if$  
1176 - }  
1177 - { format.authors output.nonnull }  
1178 - if$  
1179 - add.colon  
1180 - new.block  
1181 - format.btitle "title" output.check  
1182 - author empty$  
1183 - { organization empty$  
1184 - {  
1185 - address new.block.checka  
1186 - address "address" bibinfo.check output  
1187 - }  
1188 - 'skip$  
1189 - if$  
1190 - }  
1191 - {  
1192 - organization address new.block.checkb  
1193 - organization "organization" bibinfo.check output  
1194 - address "address" bibinfo.check output  
1195 - }  
1196 - if$  
1197 - format.edition output  
1198 - format.date output  
1199 -% new.block  
1200 - format.url output  
1201 -% new.block  
1202 - format.note output  
1203 - fin.entry  
1204 -}  
1205 -  
1206 -FUNCTION {mastersthesis}  
1207 -{ output.bibitem  
1208 - format.authors "author" output.check  
1209 - add.colon  
1210 - new.block  
1211 - format.btitle  
1212 - "title" output.check  
1213 - new.block  
1214 - bbl.mthesis format.thesis.type output.nonnull  
1215 - school "school" bibinfo.warn output  
1216 - address "address" bibinfo.check output  
1217 - format.date "year" output.check  
1218 -% new.block  
1219 - format.url output  
1220 -% new.block  
1221 - format.note output  
1222 - fin.entry  
1223 -}  
1224 -  
1225 -FUNCTION {misc}  
1226 -{ output.bibitem  
1227 - format.authors output  
1228 - add.colon  
1229 - title howpublished new.block.checkb  
1230 - format.title output  
1231 - howpublished new.block.checka  
1232 - howpublished "howpublished" bibinfo.check output  
1233 - format.date output  
1234 -% new.block  
1235 - format.url output  
1236 -% new.block  
1237 - format.note output  
1238 - fin.entry  
1239 - empty.misc.check  
1240 -}  
1241 -FUNCTION {phdthesis}  
1242 -{ output.bibitem  
1243 - format.authors "author" output.check  
1244 - add.colon  
1245 - new.block  
1246 - format.btitle  
1247 - "title" output.check  
1248 - new.block  
1249 - bbl.phdthesis format.thesis.type output.nonnull  
1250 - school "school" bibinfo.warn output  
1251 - address "address" bibinfo.check output  
1252 - format.date "year" output.check  
1253 -% new.block  
1254 - format.url output  
1255 -% new.block  
1256 - format.note output  
1257 - fin.entry  
1258 -}  
1259 -  
1260 -FUNCTION {proceedings}  
1261 -{ output.bibitem  
1262 - editor empty$  
1263 - { organization "organization" bibinfo.check output  
1264 - }  
1265 - { format.editors output.nonnull }  
1266 - if$  
1267 - add.colon  
1268 - new.block  
1269 - format.btitle "title" output.check  
1270 - format.bvolume output  
1271 - editor empty$  
1272 - { publisher empty$  
1273 - { format.number.series output }  
1274 - {  
1275 - new.sentence  
1276 - format.number.series output  
1277 - format.publisher.address output  
1278 - }  
1279 - if$  
1280 - }  
1281 - { publisher empty$  
1282 - {  
1283 - new.sentence  
1284 - format.number.series output  
1285 - format.organization.address output }  
1286 - {  
1287 - new.sentence  
1288 - format.number.series output  
1289 - organization "organization" bibinfo.check output  
1290 - format.publisher.address output  
1291 - }  
1292 - if$  
1293 - }  
1294 - if$  
1295 - format.date "year" output.check  
1296 -% new.block  
1297 - format.url output  
1298 -% new.block  
1299 - format.note output  
1300 - fin.entry  
1301 -}  
1302 -  
1303 -FUNCTION {techreport}  
1304 -{ output.bibitem  
1305 - format.authors "author" output.check  
1306 - add.colon  
1307 - new.block  
1308 - format.title  
1309 - "title" output.check  
1310 - new.block  
1311 - format.tr.number output.nonnull  
1312 - institution "institution" bibinfo.warn output  
1313 - address "address" bibinfo.check output  
1314 - format.date "year" output.check  
1315 -% new.block  
1316 - format.url output  
1317 -% new.block  
1318 - format.note output  
1319 - fin.entry  
1320 -}  
1321 -  
1322 -FUNCTION {unpublished}  
1323 -{ output.bibitem  
1324 - format.authors "author" output.check  
1325 - add.colon  
1326 - new.block  
1327 - format.title "title" output.check  
1328 - format.date output  
1329 -% new.block  
1330 - format.url output  
1331 -% new.block  
1332 - format.note "note" output.check  
1333 - fin.entry  
1334 -}  
1335 -  
1336 -FUNCTION {default.type} { misc }  
1337 -READ  
1338 -FUNCTION {sortify}  
1339 -{ purify$  
1340 - "l" change.case$  
1341 -}  
1342 -INTEGERS { len }  
1343 -FUNCTION {chop.word}  
1344 -{ 's :=  
1345 - 'len :=  
1346 - s #1 len substring$ =  
1347 - { s len #1 + global.max$ substring$ }  
1348 - 's  
1349 - if$  
1350 -}  
1351 -FUNCTION {sort.format.names}  
1352 -{ 's :=  
1353 - #1 'nameptr :=  
1354 - ""  
1355 - s num.names$ 'numnames :=  
1356 - numnames 'namesleft :=  
1357 - { namesleft #0 > }  
1358 - { s nameptr  
1359 - "{ll{ }}{ ff{ }}{ jj{ }}"  
1360 - format.name$ 't :=  
1361 - nameptr #1 >  
1362 - {  
1363 - " " *  
1364 - namesleft #1 = t "others" = and  
1365 - { "zzzzz" * }  
1366 - { t sortify * }  
1367 - if$  
1368 - }  
1369 - { t sortify * }  
1370 - if$  
1371 - nameptr #1 + 'nameptr :=  
1372 - namesleft #1 - 'namesleft :=  
1373 - }  
1374 - while$  
1375 -}  
1376 -  
1377 -FUNCTION {sort.format.title}  
1378 -{ 't :=  
1379 - "A " #2  
1380 - "An " #3  
1381 - "The " #4 t chop.word  
1382 - chop.word  
1383 - chop.word  
1384 - sortify  
1385 - #1 global.max$ substring$  
1386 -}  
1387 -FUNCTION {author.sort}  
1388 -{ author empty$  
1389 - { key empty$  
1390 - { "to sort, need author or key in " cite$ * warning$  
1391 - ""  
1392 - }  
1393 - { key sortify }  
1394 - if$  
1395 - }  
1396 - { author sort.format.names }  
1397 - if$  
1398 -}  
1399 -FUNCTION {author.editor.sort}  
1400 -{ author empty$  
1401 - { editor empty$  
1402 - { key empty$  
1403 - { "to sort, need author, editor, or key in " cite$ * warning$  
1404 - ""  
1405 - }  
1406 - { key sortify }  
1407 - if$  
1408 - }  
1409 - { editor sort.format.names }  
1410 - if$  
1411 - }  
1412 - { author sort.format.names }  
1413 - if$  
1414 -}  
1415 -FUNCTION {author.organization.sort}  
1416 -{ author empty$  
1417 - { organization empty$  
1418 - { key empty$  
1419 - { "to sort, need author, organization, or key in " cite$ * warning$  
1420 - ""  
1421 - }  
1422 - { key sortify }  
1423 - if$  
1424 - }  
1425 - { "The " #4 organization chop.word sortify }  
1426 - if$  
1427 - }  
1428 - { author sort.format.names }  
1429 - if$  
1430 -}  
1431 -FUNCTION {editor.organization.sort}  
1432 -{ editor empty$  
1433 - { organization empty$  
1434 - { key empty$  
1435 - { "to sort, need editor, organization, or key in " cite$ * warning$  
1436 - ""  
1437 - }  
1438 - { key sortify }  
1439 - if$  
1440 - }  
1441 - { "The " #4 organization chop.word sortify }  
1442 - if$  
1443 - }  
1444 - { editor sort.format.names }  
1445 - if$  
1446 -}  
1447 -FUNCTION {presort}  
1448 -{ type$ "book" =  
1449 - type$ "inbook" =  
1450 - or  
1451 - 'author.editor.sort  
1452 - { type$ "proceedings" =  
1453 - 'editor.organization.sort  
1454 - { type$ "manual" =  
1455 - 'author.organization.sort  
1456 - 'author.sort  
1457 - if$  
1458 - }  
1459 - if$  
1460 - }  
1461 - if$  
1462 - " "  
1463 - *  
1464 - year field.or.null sortify  
1465 - *  
1466 - " "  
1467 - *  
1468 - title field.or.null  
1469 - sort.format.title  
1470 - *  
1471 - #1 entry.max$ substring$  
1472 - 'sort.key$ :=  
1473 -}  
1474 -ITERATE {presort}  
1475 -SORT  
1476 -STRINGS { longest.label }  
1477 -INTEGERS { number.label longest.label.width }  
1478 -FUNCTION {initialize.longest.label}  
1479 -{ "" 'longest.label :=  
1480 - #1 'number.label :=  
1481 - #0 'longest.label.width :=  
1482 -}  
1483 -FUNCTION {longest.label.pass}  
1484 -{ number.label int.to.str$ 'label :=  
1485 - number.label #1 + 'number.label :=  
1486 - label width$ longest.label.width >  
1487 - { label 'longest.label :=  
1488 - label width$ 'longest.label.width :=  
1489 - }  
1490 - 'skip$  
1491 - if$  
1492 -}  
1493 -EXECUTE {initialize.longest.label}  
1494 -ITERATE {longest.label.pass}  
1495 -FUNCTION {begin.bib}  
1496 -{ preamble$ empty$  
1497 - 'skip$  
1498 - { preamble$ write$ newline$ }  
1499 - if$  
1500 - "\begin{thebibliography}{" longest.label * "}" *  
1501 - write$ newline$  
1502 - "\providecommand{\url}[1]{\texttt{#1}}"  
1503 - write$ newline$  
1504 - "\providecommand{\urlprefix}{URL }"  
1505 - write$ newline$  
1506 -}  
1507 -EXECUTE {begin.bib}  
1508 -EXECUTE {init.state.consts}  
1509 -ITERATE {call.type$}  
1510 -FUNCTION {end.bib}  
1511 -{ newline$  
1512 - "\end{thebibliography}" write$ newline$  
1513 -}  
1514 -EXECUTE {end.bib}  
1515 -%% End of customized bst file  
1516 -%%  
1517 -%% End of file `titto.bst'.  
1518 -  
1519 -  
OSS-2016/sprmindx.sty
@@ -1,4 +0,0 @@ @@ -1,4 +0,0 @@
1 -delim_0 "\\idxquad "  
2 -delim_1 "\\idxquad "  
3 -delim_2 "\\idxquad "  
4 -delim_n ",\\,"  
OSS-2017/Makefile 0 → 100755
@@ -0,0 +1,15 @@ @@ -0,0 +1,15 @@
  1 +TARGET=spb
  2 +
  3 +all: $(TARGET).tex
  4 + pdflatex $(TARGET).tex
  5 + bibtex $(TARGET)
  6 + pdflatex $(TARGET).tex
  7 + pdflatex $(TARGET).tex
  8 + evince $(TARGET).pdf &
  9 +
  10 +edit:
  11 + gedit Makefile *.bib *.tex &
  12 +
  13 +clean:
  14 + rm -f $(TARGET).pdf *.out *.aux *.log *.blg *.bbl *.dvi *.ps *.toc *.lot *.lof *.idx *~
  15 +
OSS-2017/aliascnt.sty 0 → 100644
@@ -0,0 +1,88 @@ @@ -0,0 +1,88 @@
  1 +%%
  2 +%% This is file `aliascnt.sty',
  3 +%% generated with the docstrip utility.
  4 +%%
  5 +%% The original source files were:
  6 +%%
  7 +%% aliascnt.dtx (with options: `package')
  8 +%%
  9 +%% This is a generated file.
  10 +%%
  11 +%% Project: aliascnt
  12 +%% Version: 2009/09/08 v1.3
  13 +%%
  14 +%% Copyright (C) 2006, 2009 by
  15 +%% Heiko Oberdiek <heiko.oberdiek at googlemail.com>
  16 +%%
  17 +%% This work may be distributed and/or modified under the
  18 +%% conditions of the LaTeX Project Public License, either
  19 +%% version 1.3c of this license or (at your option) any later
  20 +%% version. This version of this license is in
  21 +%% http://www.latex-project.org/lppl/lppl-1-3c.txt
  22 +%% and the latest version of this license is in
  23 +%% http://www.latex-project.org/lppl.txt
  24 +%% and version 1.3 or later is part of all distributions of
  25 +%% LaTeX version 2005/12/01 or later.
  26 +%%
  27 +%% This work has the LPPL maintenance status "maintained".
  28 +%%
  29 +%% This Current Maintainer of this work is Heiko Oberdiek.
  30 +%%
  31 +%% This work consists of the main source file aliascnt.dtx
  32 +%% and the derived files
  33 +%% aliascnt.sty, aliascnt.pdf, aliascnt.ins, aliascnt.drv.
  34 +%%
  35 +\NeedsTeXFormat{LaTeX2e}
  36 +\ProvidesPackage{aliascnt}%
  37 + [2009/09/08 v1.3 Alias counter (HO)]%
  38 +\newcommand*{\newaliascnt}[2]{%
  39 + \begingroup
  40 + \def\AC@glet##1{%
  41 + \global\expandafter\let\csname##1#1\expandafter\endcsname
  42 + \csname##1#2\endcsname
  43 + }%
  44 + \@ifundefined{c@#2}{%
  45 + \@nocounterr{#2}%
  46 + }{%
  47 + \expandafter\@ifdefinable\csname c@#1\endcsname{%
  48 + \AC@glet{c@}%
  49 + \AC@glet{the}%
  50 + \AC@glet{theH}%
  51 + \AC@glet{p@}%
  52 + \expandafter\gdef\csname AC@cnt@#1\endcsname{#2}%
  53 + \expandafter\gdef\csname cl@#1\expandafter\endcsname
  54 + \expandafter{\csname cl@#2\endcsname}%
  55 + }%
  56 + }%
  57 + \endgroup
  58 +}
  59 +\newcommand*{\aliascntresetthe}[1]{%
  60 + \@ifundefined{AC@cnt@#1}{%
  61 + \PackageError{aliascnt}{%
  62 + `#1' is not an alias counter%
  63 + }\@ehc
  64 + }{%
  65 + \expandafter\let\csname the#1\expandafter\endcsname
  66 + \csname the\csname AC@cnt@#1\endcsname\endcsname
  67 + }%
  68 +}
  69 +\newcommand*{\AC@findrootcnt}[1]{%
  70 + \@ifundefined{AC@cnt@#1}{%
  71 + #1%
  72 + }{%
  73 + \expandafter\AC@findrootcnt\csname AC@cnt@#1\endcsname
  74 + }%
  75 +}
  76 +\def\AC@patch#1{%
  77 + \expandafter\let\csname AC@org@#1reset\expandafter\endcsname
  78 + \csname @#1reset\endcsname
  79 + \expandafter\def\csname @#1reset\endcsname##1##2{%
  80 + \csname AC@org@#1reset\endcsname{##1}{\AC@findrootcnt{##2}}%
  81 + }%
  82 +}
  83 +\RequirePackage{remreset}
  84 +\AC@patch{addto}
  85 +\AC@patch{removefrom}
  86 +\endinput
  87 +%%
  88 +%% End of file `aliascnt.sty'.
OSS-2017/llncs.cls 0 → 100644
@@ -0,0 +1,1208 @@ @@ -0,0 +1,1208 @@
  1 +% LLNCS DOCUMENT CLASS -- version 2.18 (27-Sep-2013)
  2 +% Springer Verlag LaTeX2e support for Lecture Notes in Computer Science
  3 +%
  4 +%%
  5 +%% \CharacterTable
  6 +%% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z
  7 +%% Lower-case \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z
  8 +%% Digits \0\1\2\3\4\5\6\7\8\9
  9 +%% Exclamation \! Double quote \" Hash (number) \#
  10 +%% Dollar \$ Percent \% Ampersand \&
  11 +%% Acute accent \' Left paren \( Right paren \)
  12 +%% Asterisk \* Plus \+ Comma \,
  13 +%% Minus \- Point \. Solidus \/
  14 +%% Colon \: Semicolon \; Less than \<
  15 +%% Equals \= Greater than \> Question mark \?
  16 +%% Commercial at \@ Left bracket \[ Backslash \\
  17 +%% Right bracket \] Circumflex \^ Underscore \_
  18 +%% Grave accent \` Left brace \{ Vertical bar \|
  19 +%% Right brace \} Tilde \~}
  20 +%%
  21 +\NeedsTeXFormat{LaTeX2e}[1995/12/01]
  22 +\ProvidesClass{llncs}[2013/09/27 v2.18
  23 +^^J LaTeX document class for Lecture Notes in Computer Science]
  24 +% Options
  25 +\let\if@envcntreset\iffalse
  26 +\DeclareOption{envcountreset}{\let\if@envcntreset\iftrue}
  27 +\DeclareOption{citeauthoryear}{\let\citeauthoryear=Y}
  28 +\DeclareOption{oribibl}{\let\oribibl=Y}
  29 +\let\if@custvec\iftrue
  30 +\DeclareOption{orivec}{\let\if@custvec\iffalse}
  31 +\let\if@envcntsame\iffalse
  32 +\DeclareOption{envcountsame}{\let\if@envcntsame\iftrue}
  33 +\let\if@envcntsect\iffalse
  34 +\DeclareOption{envcountsect}{\let\if@envcntsect\iftrue}
  35 +\let\if@runhead\iffalse
  36 +\DeclareOption{runningheads}{\let\if@runhead\iftrue}
  37 +
  38 +\let\if@openright\iftrue
  39 +\let\if@openbib\iffalse
  40 +\DeclareOption{openbib}{\let\if@openbib\iftrue}
  41 +
  42 +% languages
  43 +\let\switcht@@therlang\relax
  44 +\def\ds@deutsch{\def\switcht@@therlang{\switcht@deutsch}}
  45 +\def\ds@francais{\def\switcht@@therlang{\switcht@francais}}
  46 +
  47 +\DeclareOption*{\PassOptionsToClass{\CurrentOption}{article}}
  48 +
  49 +\ProcessOptions
  50 +
  51 +\LoadClass[twoside]{article}
  52 +\RequirePackage{multicol} % needed for the list of participants, index
  53 +\RequirePackage{aliascnt}
  54 +
  55 +\setlength{\textwidth}{12.2cm}
  56 +\setlength{\textheight}{19.3cm}
  57 +\renewcommand\@pnumwidth{2em}
  58 +\renewcommand\@tocrmarg{3.5em}
  59 +%
  60 +\def\@dottedtocline#1#2#3#4#5{%
  61 + \ifnum #1>\c@tocdepth \else
  62 + \vskip \z@ \@plus.2\p@
  63 + {\leftskip #2\relax \rightskip \@tocrmarg \advance\rightskip by 0pt plus 2cm
  64 + \parfillskip -\rightskip \pretolerance=10000
  65 + \parindent #2\relax\@afterindenttrue
  66 + \interlinepenalty\@M
  67 + \leavevmode
  68 + \@tempdima #3\relax
  69 + \advance\leftskip \@tempdima \null\nobreak\hskip -\leftskip
  70 + {#4}\nobreak
  71 + \leaders\hbox{$\m@th
  72 + \mkern \@dotsep mu\hbox{.}\mkern \@dotsep
  73 + mu$}\hfill
  74 + \nobreak
  75 + \hb@xt@\@pnumwidth{\hfil\normalfont \normalcolor #5}%
  76 + \par}%
  77 + \fi}
  78 +%
  79 +\def\switcht@albion{%
  80 +\def\abstractname{Abstract.}
  81 +\def\ackname{Acknowledgement.}
  82 +\def\andname{and}
  83 +\def\lastandname{\unskip, and}
  84 +\def\appendixname{Appendix}
  85 +\def\chaptername{Chapter}
  86 +\def\claimname{Claim}
  87 +\def\conjecturename{Conjecture}
  88 +\def\contentsname{Table of Contents}
  89 +\def\corollaryname{Corollary}
  90 +\def\definitionname{Definition}
  91 +\def\examplename{Example}
  92 +\def\exercisename{Exercise}
  93 +\def\figurename{Fig.}
  94 +\def\keywordname{{\bf Keywords:}}
  95 +\def\indexname{Index}
  96 +\def\lemmaname{Lemma}
  97 +\def\contriblistname{List of Contributors}
  98 +\def\listfigurename{List of Figures}
  99 +\def\listtablename{List of Tables}
  100 +\def\mailname{{\it Correspondence to\/}:}
  101 +\def\noteaddname{Note added in proof}
  102 +\def\notename{Note}
  103 +\def\partname{Part}
  104 +\def\problemname{Problem}
  105 +\def\proofname{Proof}
  106 +\def\propertyname{Property}
  107 +\def\propositionname{Proposition}
  108 +\def\questionname{Question}
  109 +\def\remarkname{Remark}
  110 +\def\seename{see}
  111 +\def\solutionname{Solution}
  112 +\def\subclassname{{\it Subject Classifications\/}:}
  113 +\def\tablename{Table}
  114 +\def\theoremname{Theorem}}
  115 +\switcht@albion
  116 +% Names of theorem like environments are already defined
  117 +% but must be translated if another language is chosen
  118 +%
  119 +% French section
  120 +\def\switcht@francais{%\typeout{On parle francais.}%
  121 + \def\abstractname{R\'esum\'e.}%
  122 + \def\ackname{Remerciements.}%
  123 + \def\andname{et}%
  124 + \def\lastandname{ et}%
  125 + \def\appendixname{Appendice}
  126 + \def\chaptername{Chapitre}%
  127 + \def\claimname{Pr\'etention}%
  128 + \def\conjecturename{Hypoth\`ese}%
  129 + \def\contentsname{Table des mati\`eres}%
  130 + \def\corollaryname{Corollaire}%
  131 + \def\definitionname{D\'efinition}%
  132 + \def\examplename{Exemple}%
  133 + \def\exercisename{Exercice}%
  134 + \def\figurename{Fig.}%
  135 + \def\keywordname{{\bf Mots-cl\'e:}}
  136 + \def\indexname{Index}
  137 + \def\lemmaname{Lemme}%
  138 + \def\contriblistname{Liste des contributeurs}
  139 + \def\listfigurename{Liste des figures}%
  140 + \def\listtablename{Liste des tables}%
  141 + \def\mailname{{\it Correspondence to\/}:}
  142 + \def\noteaddname{Note ajout\'ee \`a l'\'epreuve}%
  143 + \def\notename{Remarque}%
  144 + \def\partname{Partie}%
  145 + \def\problemname{Probl\`eme}%
  146 + \def\proofname{Preuve}%
  147 + \def\propertyname{Caract\'eristique}%
  148 +%\def\propositionname{Proposition}%
  149 + \def\questionname{Question}%
  150 + \def\remarkname{Remarque}%
  151 + \def\seename{voir}
  152 + \def\solutionname{Solution}%
  153 + \def\subclassname{{\it Subject Classifications\/}:}
  154 + \def\tablename{Tableau}%
  155 + \def\theoremname{Th\'eor\`eme}%
  156 +}
  157 +%
  158 +% German section
  159 +\def\switcht@deutsch{%\typeout{Man spricht deutsch.}%
  160 + \def\abstractname{Zusammenfassung.}%
  161 + \def\ackname{Danksagung.}%
  162 + \def\andname{und}%
  163 + \def\lastandname{ und}%
  164 + \def\appendixname{Anhang}%
  165 + \def\chaptername{Kapitel}%
  166 + \def\claimname{Behauptung}%
  167 + \def\conjecturename{Hypothese}%
  168 + \def\contentsname{Inhaltsverzeichnis}%
  169 + \def\corollaryname{Korollar}%
  170 +%\def\definitionname{Definition}%
  171 + \def\examplename{Beispiel}%
  172 + \def\exercisename{\"Ubung}%
  173 + \def\figurename{Abb.}%
  174 + \def\keywordname{{\bf Schl\"usselw\"orter:}}
  175 + \def\indexname{Index}
  176 +%\def\lemmaname{Lemma}%
  177 + \def\contriblistname{Mitarbeiter}
  178 + \def\listfigurename{Abbildungsverzeichnis}%
  179 + \def\listtablename{Tabellenverzeichnis}%
  180 + \def\mailname{{\it Correspondence to\/}:}
  181 + \def\noteaddname{Nachtrag}%
  182 + \def\notename{Anmerkung}%
  183 + \def\partname{Teil}%
  184 +%\def\problemname{Problem}%
  185 + \def\proofname{Beweis}%
  186 + \def\propertyname{Eigenschaft}%
  187 +%\def\propositionname{Proposition}%
  188 + \def\questionname{Frage}%
  189 + \def\remarkname{Anmerkung}%
  190 + \def\seename{siehe}
  191 + \def\solutionname{L\"osung}%
  192 + \def\subclassname{{\it Subject Classifications\/}:}
  193 + \def\tablename{Tabelle}%
  194 +%\def\theoremname{Theorem}%
  195 +}
  196 +
  197 +% Ragged bottom for the actual page
  198 +\def\thisbottomragged{\def\@textbottom{\vskip\z@ plus.0001fil
  199 +\global\let\@textbottom\relax}}
  200 +
  201 +\renewcommand\small{%
  202 + \@setfontsize\small\@ixpt{11}%
  203 + \abovedisplayskip 8.5\p@ \@plus3\p@ \@minus4\p@
  204 + \abovedisplayshortskip \z@ \@plus2\p@
  205 + \belowdisplayshortskip 4\p@ \@plus2\p@ \@minus2\p@
  206 + \def\@listi{\leftmargin\leftmargini
  207 + \parsep 0\p@ \@plus1\p@ \@minus\p@
  208 + \topsep 8\p@ \@plus2\p@ \@minus4\p@
  209 + \itemsep0\p@}%
  210 + \belowdisplayskip \abovedisplayskip
  211 +}
  212 +
  213 +\frenchspacing
  214 +\widowpenalty=10000
  215 +\clubpenalty=10000
  216 +
  217 +\setlength\oddsidemargin {63\p@}
  218 +\setlength\evensidemargin {63\p@}
  219 +\setlength\marginparwidth {90\p@}
  220 +
  221 +\setlength\headsep {16\p@}
  222 +
  223 +\setlength\footnotesep{7.7\p@}
  224 +\setlength\textfloatsep{8mm\@plus 2\p@ \@minus 4\p@}
  225 +\setlength\intextsep {8mm\@plus 2\p@ \@minus 2\p@}
  226 +
  227 +\setcounter{secnumdepth}{2}
  228 +
  229 +\newcounter {chapter}
  230 +\renewcommand\thechapter {\@arabic\c@chapter}
  231 +
  232 +\newif\if@mainmatter \@mainmattertrue
  233 +\newcommand\frontmatter{\cleardoublepage
  234 + \@mainmatterfalse\pagenumbering{Roman}}
  235 +\newcommand\mainmatter{\cleardoublepage
  236 + \@mainmattertrue\pagenumbering{arabic}}
  237 +\newcommand\backmatter{\if@openright\cleardoublepage\else\clearpage\fi
  238 + \@mainmatterfalse}
  239 +
  240 +\renewcommand\part{\cleardoublepage
  241 + \thispagestyle{empty}%
  242 + \if@twocolumn
  243 + \onecolumn
  244 + \@tempswatrue
  245 + \else
  246 + \@tempswafalse
  247 + \fi
  248 + \null\vfil
  249 + \secdef\@part\@spart}
  250 +
  251 +\def\@part[#1]#2{%
  252 + \ifnum \c@secnumdepth >-2\relax
  253 + \refstepcounter{part}%
  254 + \addcontentsline{toc}{part}{\thepart\hspace{1em}#1}%
  255 + \else
  256 + \addcontentsline{toc}{part}{#1}%
  257 + \fi
  258 + \markboth{}{}%
  259 + {\centering
  260 + \interlinepenalty \@M
  261 + \normalfont
  262 + \ifnum \c@secnumdepth >-2\relax
  263 + \huge\bfseries \partname~\thepart
  264 + \par
  265 + \vskip 20\p@
  266 + \fi
  267 + \Huge \bfseries #2\par}%
  268 + \@endpart}
  269 +\def\@spart#1{%
  270 + {\centering
  271 + \interlinepenalty \@M
  272 + \normalfont
  273 + \Huge \bfseries #1\par}%
  274 + \@endpart}
  275 +\def\@endpart{\vfil\newpage
  276 + \if@twoside
  277 + \null
  278 + \thispagestyle{empty}%
  279 + \newpage
  280 + \fi
  281 + \if@tempswa
  282 + \twocolumn
  283 + \fi}
  284 +
  285 +\newcommand\chapter{\clearpage
  286 + \thispagestyle{empty}%
  287 + \global\@topnum\z@
  288 + \@afterindentfalse
  289 + \secdef\@chapter\@schapter}
  290 +\def\@chapter[#1]#2{\ifnum \c@secnumdepth >\m@ne
  291 + \if@mainmatter
  292 + \refstepcounter{chapter}%
  293 + \typeout{\@chapapp\space\thechapter.}%
  294 + \addcontentsline{toc}{chapter}%
  295 + {\protect\numberline{\thechapter}#1}%
  296 + \else
  297 + \addcontentsline{toc}{chapter}{#1}%
  298 + \fi
  299 + \else
  300 + \addcontentsline{toc}{chapter}{#1}%
  301 + \fi
  302 + \chaptermark{#1}%
  303 + \addtocontents{lof}{\protect\addvspace{10\p@}}%
  304 + \addtocontents{lot}{\protect\addvspace{10\p@}}%
  305 + \if@twocolumn
  306 + \@topnewpage[\@makechapterhead{#2}]%
  307 + \else
  308 + \@makechapterhead{#2}%
  309 + \@afterheading
  310 + \fi}
  311 +\def\@makechapterhead#1{%
  312 +% \vspace*{50\p@}%
  313 + {\centering
  314 + \ifnum \c@secnumdepth >\m@ne
  315 + \if@mainmatter
  316 + \large\bfseries \@chapapp{} \thechapter
  317 + \par\nobreak
  318 + \vskip 20\p@
  319 + \fi
  320 + \fi
  321 + \interlinepenalty\@M
  322 + \Large \bfseries #1\par\nobreak
  323 + \vskip 40\p@
  324 + }}
  325 +\def\@schapter#1{\if@twocolumn
  326 + \@topnewpage[\@makeschapterhead{#1}]%
  327 + \else
  328 + \@makeschapterhead{#1}%
  329 + \@afterheading
  330 + \fi}
  331 +\def\@makeschapterhead#1{%
  332 +% \vspace*{50\p@}%
  333 + {\centering
  334 + \normalfont
  335 + \interlinepenalty\@M
  336 + \Large \bfseries #1\par\nobreak
  337 + \vskip 40\p@
  338 + }}
  339 +
  340 +\renewcommand\section{\@startsection{section}{1}{\z@}%
  341 + {-18\p@ \@plus -4\p@ \@minus -4\p@}%
  342 + {12\p@ \@plus 4\p@ \@minus 4\p@}%
  343 + {\normalfont\large\bfseries\boldmath
  344 + \rightskip=\z@ \@plus 8em\pretolerance=10000 }}
  345 +\renewcommand\subsection{\@startsection{subsection}{2}{\z@}%
  346 + {-18\p@ \@plus -4\p@ \@minus -4\p@}%
  347 + {8\p@ \@plus 4\p@ \@minus 4\p@}%
  348 + {\normalfont\normalsize\bfseries\boldmath
  349 + \rightskip=\z@ \@plus 8em\pretolerance=10000 }}
  350 +\renewcommand\subsubsection{\@startsection{subsubsection}{3}{\z@}%
  351 + {-18\p@ \@plus -4\p@ \@minus -4\p@}%
  352 + {-0.5em \@plus -0.22em \@minus -0.1em}%
  353 + {\normalfont\normalsize\bfseries\boldmath}}
  354 +\renewcommand\paragraph{\@startsection{paragraph}{4}{\z@}%
  355 + {-12\p@ \@plus -4\p@ \@minus -4\p@}%
  356 + {-0.5em \@plus -0.22em \@minus -0.1em}%
  357 + {\normalfont\normalsize\itshape}}
  358 +\renewcommand\subparagraph[1]{\typeout{LLNCS warning: You should not use
  359 + \string\subparagraph\space with this class}\vskip0.5cm
  360 +You should not use \verb|\subparagraph| with this class.\vskip0.5cm}
  361 +
  362 +\DeclareMathSymbol{\Gamma}{\mathalpha}{letters}{"00}
  363 +\DeclareMathSymbol{\Delta}{\mathalpha}{letters}{"01}
  364 +\DeclareMathSymbol{\Theta}{\mathalpha}{letters}{"02}
  365 +\DeclareMathSymbol{\Lambda}{\mathalpha}{letters}{"03}
  366 +\DeclareMathSymbol{\Xi}{\mathalpha}{letters}{"04}
  367 +\DeclareMathSymbol{\Pi}{\mathalpha}{letters}{"05}
  368 +\DeclareMathSymbol{\Sigma}{\mathalpha}{letters}{"06}
  369 +\DeclareMathSymbol{\Upsilon}{\mathalpha}{letters}{"07}
  370 +\DeclareMathSymbol{\Phi}{\mathalpha}{letters}{"08}
  371 +\DeclareMathSymbol{\Psi}{\mathalpha}{letters}{"09}
  372 +\DeclareMathSymbol{\Omega}{\mathalpha}{letters}{"0A}
  373 +
  374 +\let\footnotesize\small
  375 +
  376 +\if@custvec
  377 +\def\vec#1{\mathchoice{\mbox{\boldmath$\displaystyle#1$}}
  378 +{\mbox{\boldmath$\textstyle#1$}}
  379 +{\mbox{\boldmath$\scriptstyle#1$}}
  380 +{\mbox{\boldmath$\scriptscriptstyle#1$}}}
  381 +\fi
  382 +
  383 +\def\squareforqed{\hbox{\rlap{$\sqcap$}$\sqcup$}}
  384 +\def\qed{\ifmmode\squareforqed\else{\unskip\nobreak\hfil
  385 +\penalty50\hskip1em\null\nobreak\hfil\squareforqed
  386 +\parfillskip=0pt\finalhyphendemerits=0\endgraf}\fi}
  387 +
  388 +\def\getsto{\mathrel{\mathchoice {\vcenter{\offinterlineskip
  389 +\halign{\hfil
  390 +$\displaystyle##$\hfil\cr\gets\cr\to\cr}}}
  391 +{\vcenter{\offinterlineskip\halign{\hfil$\textstyle##$\hfil\cr\gets
  392 +\cr\to\cr}}}
  393 +{\vcenter{\offinterlineskip\halign{\hfil$\scriptstyle##$\hfil\cr\gets
  394 +\cr\to\cr}}}
  395 +{\vcenter{\offinterlineskip\halign{\hfil$\scriptscriptstyle##$\hfil\cr
  396 +\gets\cr\to\cr}}}}}
  397 +\def\lid{\mathrel{\mathchoice {\vcenter{\offinterlineskip\halign{\hfil
  398 +$\displaystyle##$\hfil\cr<\cr\noalign{\vskip1.2pt}=\cr}}}
  399 +{\vcenter{\offinterlineskip\halign{\hfil$\textstyle##$\hfil\cr<\cr
  400 +\noalign{\vskip1.2pt}=\cr}}}
  401 +{\vcenter{\offinterlineskip\halign{\hfil$\scriptstyle##$\hfil\cr<\cr
  402 +\noalign{\vskip1pt}=\cr}}}
  403 +{\vcenter{\offinterlineskip\halign{\hfil$\scriptscriptstyle##$\hfil\cr
  404 +<\cr
  405 +\noalign{\vskip0.9pt}=\cr}}}}}
  406 +\def\gid{\mathrel{\mathchoice {\vcenter{\offinterlineskip\halign{\hfil
  407 +$\displaystyle##$\hfil\cr>\cr\noalign{\vskip1.2pt}=\cr}}}
  408 +{\vcenter{\offinterlineskip\halign{\hfil$\textstyle##$\hfil\cr>\cr
  409 +\noalign{\vskip1.2pt}=\cr}}}
  410 +{\vcenter{\offinterlineskip\halign{\hfil$\scriptstyle##$\hfil\cr>\cr
  411 +\noalign{\vskip1pt}=\cr}}}
  412 +{\vcenter{\offinterlineskip\halign{\hfil$\scriptscriptstyle##$\hfil\cr
  413 +>\cr
  414 +\noalign{\vskip0.9pt}=\cr}}}}}
  415 +\def\grole{\mathrel{\mathchoice {\vcenter{\offinterlineskip
  416 +\halign{\hfil
  417 +$\displaystyle##$\hfil\cr>\cr\noalign{\vskip-1pt}<\cr}}}
  418 +{\vcenter{\offinterlineskip\halign{\hfil$\textstyle##$\hfil\cr
  419 +>\cr\noalign{\vskip-1pt}<\cr}}}
  420 +{\vcenter{\offinterlineskip\halign{\hfil$\scriptstyle##$\hfil\cr
  421 +>\cr\noalign{\vskip-0.8pt}<\cr}}}
  422 +{\vcenter{\offinterlineskip\halign{\hfil$\scriptscriptstyle##$\hfil\cr
  423 +>\cr\noalign{\vskip-0.3pt}<\cr}}}}}
  424 +\def\bbbr{{\rm I\!R}} %reelle Zahlen
  425 +\def\bbbm{{\rm I\!M}}
  426 +\def\bbbn{{\rm I\!N}} %natuerliche Zahlen
  427 +\def\bbbf{{\rm I\!F}}
  428 +\def\bbbh{{\rm I\!H}}
  429 +\def\bbbk{{\rm I\!K}}
  430 +\def\bbbp{{\rm I\!P}}
  431 +\def\bbbone{{\mathchoice {\rm 1\mskip-4mu l} {\rm 1\mskip-4mu l}
  432 +{\rm 1\mskip-4.5mu l} {\rm 1\mskip-5mu l}}}
  433 +\def\bbbc{{\mathchoice {\setbox0=\hbox{$\displaystyle\rm C$}\hbox{\hbox
  434 +to0pt{\kern0.4\wd0\vrule height0.9\ht0\hss}\box0}}
  435 +{\setbox0=\hbox{$\textstyle\rm C$}\hbox{\hbox
  436 +to0pt{\kern0.4\wd0\vrule height0.9\ht0\hss}\box0}}
  437 +{\setbox0=\hbox{$\scriptstyle\rm C$}\hbox{\hbox
  438 +to0pt{\kern0.4\wd0\vrule height0.9\ht0\hss}\box0}}
  439 +{\setbox0=\hbox{$\scriptscriptstyle\rm C$}\hbox{\hbox
  440 +to0pt{\kern0.4\wd0\vrule height0.9\ht0\hss}\box0}}}}
  441 +\def\bbbq{{\mathchoice {\setbox0=\hbox{$\displaystyle\rm
  442 +Q$}\hbox{\raise
  443 +0.15\ht0\hbox to0pt{\kern0.4\wd0\vrule height0.8\ht0\hss}\box0}}
  444 +{\setbox0=\hbox{$\textstyle\rm Q$}\hbox{\raise
  445 +0.15\ht0\hbox to0pt{\kern0.4\wd0\vrule height0.8\ht0\hss}\box0}}
  446 +{\setbox0=\hbox{$\scriptstyle\rm Q$}\hbox{\raise
  447 +0.15\ht0\hbox to0pt{\kern0.4\wd0\vrule height0.7\ht0\hss}\box0}}
  448 +{\setbox0=\hbox{$\scriptscriptstyle\rm Q$}\hbox{\raise
  449 +0.15\ht0\hbox to0pt{\kern0.4\wd0\vrule height0.7\ht0\hss}\box0}}}}
  450 +\def\bbbt{{\mathchoice {\setbox0=\hbox{$\displaystyle\rm
  451 +T$}\hbox{\hbox to0pt{\kern0.3\wd0\vrule height0.9\ht0\hss}\box0}}
  452 +{\setbox0=\hbox{$\textstyle\rm T$}\hbox{\hbox
  453 +to0pt{\kern0.3\wd0\vrule height0.9\ht0\hss}\box0}}
  454 +{\setbox0=\hbox{$\scriptstyle\rm T$}\hbox{\hbox
  455 +to0pt{\kern0.3\wd0\vrule height0.9\ht0\hss}\box0}}
  456 +{\setbox0=\hbox{$\scriptscriptstyle\rm T$}\hbox{\hbox
  457 +to0pt{\kern0.3\wd0\vrule height0.9\ht0\hss}\box0}}}}
  458 +\def\bbbs{{\mathchoice
  459 +{\setbox0=\hbox{$\displaystyle \rm S$}\hbox{\raise0.5\ht0\hbox
  460 +to0pt{\kern0.35\wd0\vrule height0.45\ht0\hss}\hbox
  461 +to0pt{\kern0.55\wd0\vrule height0.5\ht0\hss}\box0}}
  462 +{\setbox0=\hbox{$\textstyle \rm S$}\hbox{\raise0.5\ht0\hbox
  463 +to0pt{\kern0.35\wd0\vrule height0.45\ht0\hss}\hbox
  464 +to0pt{\kern0.55\wd0\vrule height0.5\ht0\hss}\box0}}
  465 +{\setbox0=\hbox{$\scriptstyle \rm S$}\hbox{\raise0.5\ht0\hbox
  466 +to0pt{\kern0.35\wd0\vrule height0.45\ht0\hss}\raise0.05\ht0\hbox
  467 +to0pt{\kern0.5\wd0\vrule height0.45\ht0\hss}\box0}}
  468 +{\setbox0=\hbox{$\scriptscriptstyle\rm S$}\hbox{\raise0.5\ht0\hbox
  469 +to0pt{\kern0.4\wd0\vrule height0.45\ht0\hss}\raise0.05\ht0\hbox
  470 +to0pt{\kern0.55\wd0\vrule height0.45\ht0\hss}\box0}}}}
  471 +\def\bbbz{{\mathchoice {\hbox{$\mathsf\textstyle Z\kern-0.4em Z$}}
  472 +{\hbox{$\mathsf\textstyle Z\kern-0.4em Z$}}
  473 +{\hbox{$\mathsf\scriptstyle Z\kern-0.3em Z$}}
  474 +{\hbox{$\mathsf\scriptscriptstyle Z\kern-0.2em Z$}}}}
  475 +
  476 +\let\ts\,
  477 +
  478 +\setlength\leftmargini {17\p@}
  479 +\setlength\leftmargin {\leftmargini}
  480 +\setlength\leftmarginii {\leftmargini}
  481 +\setlength\leftmarginiii {\leftmargini}
  482 +\setlength\leftmarginiv {\leftmargini}
  483 +\setlength \labelsep {.5em}
  484 +\setlength \labelwidth{\leftmargini}
  485 +\addtolength\labelwidth{-\labelsep}
  486 +
  487 +\def\@listI{\leftmargin\leftmargini
  488 + \parsep 0\p@ \@plus1\p@ \@minus\p@
  489 + \topsep 8\p@ \@plus2\p@ \@minus4\p@
  490 + \itemsep0\p@}
  491 +\let\@listi\@listI
  492 +\@listi
  493 +\def\@listii {\leftmargin\leftmarginii
  494 + \labelwidth\leftmarginii
  495 + \advance\labelwidth-\labelsep
  496 + \topsep 0\p@ \@plus2\p@ \@minus\p@}
  497 +\def\@listiii{\leftmargin\leftmarginiii
  498 + \labelwidth\leftmarginiii
  499 + \advance\labelwidth-\labelsep
  500 + \topsep 0\p@ \@plus\p@\@minus\p@
  501 + \parsep \z@
  502 + \partopsep \p@ \@plus\z@ \@minus\p@}
  503 +
  504 +\renewcommand\labelitemi{\normalfont\bfseries --}
  505 +\renewcommand\labelitemii{$\m@th\bullet$}
  506 +
  507 +\setlength\arraycolsep{1.4\p@}
  508 +\setlength\tabcolsep{1.4\p@}
  509 +
  510 +\def\tableofcontents{\chapter*{\contentsname\@mkboth{{\contentsname}}%
  511 + {{\contentsname}}}
  512 + \def\authcount##1{\setcounter{auco}{##1}\setcounter{@auth}{1}}
  513 + \def\lastand{\ifnum\value{auco}=2\relax
  514 + \unskip{} \andname\
  515 + \else
  516 + \unskip \lastandname\
  517 + \fi}%
  518 + \def\and{\stepcounter{@auth}\relax
  519 + \ifnum\value{@auth}=\value{auco}%
  520 + \lastand
  521 + \else
  522 + \unskip,
  523 + \fi}%
  524 + \@starttoc{toc}\if@restonecol\twocolumn\fi}
  525 +
  526 +\def\l@part#1#2{\addpenalty{\@secpenalty}%
  527 + \addvspace{2em plus\p@}% % space above part line
  528 + \begingroup
  529 + \parindent \z@
  530 + \rightskip \z@ plus 5em
  531 + \hrule\vskip5pt
  532 + \large % same size as for a contribution heading
  533 + \bfseries\boldmath % set line in boldface
  534 + \leavevmode % TeX command to enter horizontal mode.
  535 + #1\par
  536 + \vskip5pt
  537 + \hrule
  538 + \vskip1pt
  539 + \nobreak % Never break after part entry
  540 + \endgroup}
  541 +
  542 +\def\@dotsep{2}
  543 +
  544 +\let\phantomsection=\relax
  545 +
  546 +\def\hyperhrefextend{\ifx\hyper@anchor\@undefined\else
  547 +{}\fi}
  548 +
  549 +\def\addnumcontentsmark#1#2#3{%
  550 +\addtocontents{#1}{\protect\contentsline{#2}{\protect\numberline
  551 + {\thechapter}#3}{\thepage}\hyperhrefextend}}%
  552 +\def\addcontentsmark#1#2#3{%
  553 +\addtocontents{#1}{\protect\contentsline{#2}{#3}{\thepage}\hyperhrefextend}}%
  554 +\def\addcontentsmarkwop#1#2#3{%
  555 +\addtocontents{#1}{\protect\contentsline{#2}{#3}{0}\hyperhrefextend}}%
  556 +
  557 +\def\@adcmk[#1]{\ifcase #1 \or
  558 +\def\@gtempa{\addnumcontentsmark}%
  559 + \or \def\@gtempa{\addcontentsmark}%
  560 + \or \def\@gtempa{\addcontentsmarkwop}%
  561 + \fi\@gtempa{toc}{chapter}%
  562 +}
  563 +\def\addtocmark{%
  564 +\phantomsection
  565 +\@ifnextchar[{\@adcmk}{\@adcmk[3]}%
  566 +}
  567 +
  568 +\def\l@chapter#1#2{\addpenalty{-\@highpenalty}
  569 + \vskip 1.0em plus 1pt \@tempdima 1.5em \begingroup
  570 + \parindent \z@ \rightskip \@tocrmarg
  571 + \advance\rightskip by 0pt plus 2cm
  572 + \parfillskip -\rightskip \pretolerance=10000
  573 + \leavevmode \advance\leftskip\@tempdima \hskip -\leftskip
  574 + {\large\bfseries\boldmath#1}\ifx0#2\hfil\null
  575 + \else
  576 + \nobreak
  577 + \leaders\hbox{$\m@th \mkern \@dotsep mu.\mkern
  578 + \@dotsep mu$}\hfill
  579 + \nobreak\hbox to\@pnumwidth{\hss #2}%
  580 + \fi\par
  581 + \penalty\@highpenalty \endgroup}
  582 +
  583 +\def\l@title#1#2{\addpenalty{-\@highpenalty}
  584 + \addvspace{8pt plus 1pt}
  585 + \@tempdima \z@
  586 + \begingroup
  587 + \parindent \z@ \rightskip \@tocrmarg
  588 + \advance\rightskip by 0pt plus 2cm
  589 + \parfillskip -\rightskip \pretolerance=10000
  590 + \leavevmode \advance\leftskip\@tempdima \hskip -\leftskip
  591 + #1\nobreak
  592 + \leaders\hbox{$\m@th \mkern \@dotsep mu.\mkern
  593 + \@dotsep mu$}\hfill
  594 + \nobreak\hbox to\@pnumwidth{\hss #2}\par
  595 + \penalty\@highpenalty \endgroup}
  596 +
  597 +\def\l@author#1#2{\addpenalty{\@highpenalty}
  598 + \@tempdima=15\p@ %\z@
  599 + \begingroup
  600 + \parindent \z@ \rightskip \@tocrmarg
  601 + \advance\rightskip by 0pt plus 2cm
  602 + \pretolerance=10000
  603 + \leavevmode \advance\leftskip\@tempdima %\hskip -\leftskip
  604 + \textit{#1}\par
  605 + \penalty\@highpenalty \endgroup}
  606 +
  607 +\setcounter{tocdepth}{0}
  608 +\newdimen\tocchpnum
  609 +\newdimen\tocsecnum
  610 +\newdimen\tocsectotal
  611 +\newdimen\tocsubsecnum
  612 +\newdimen\tocsubsectotal
  613 +\newdimen\tocsubsubsecnum
  614 +\newdimen\tocsubsubsectotal
  615 +\newdimen\tocparanum
  616 +\newdimen\tocparatotal
  617 +\newdimen\tocsubparanum
  618 +\tocchpnum=\z@ % no chapter numbers
  619 +\tocsecnum=15\p@ % section 88. plus 2.222pt
  620 +\tocsubsecnum=23\p@ % subsection 88.8 plus 2.222pt
  621 +\tocsubsubsecnum=27\p@ % subsubsection 88.8.8 plus 1.444pt
  622 +\tocparanum=35\p@ % paragraph 88.8.8.8 plus 1.666pt
  623 +\tocsubparanum=43\p@ % subparagraph 88.8.8.8.8 plus 1.888pt
  624 +\def\calctocindent{%
  625 +\tocsectotal=\tocchpnum
  626 +\advance\tocsectotal by\tocsecnum
  627 +\tocsubsectotal=\tocsectotal
  628 +\advance\tocsubsectotal by\tocsubsecnum
  629 +\tocsubsubsectotal=\tocsubsectotal
  630 +\advance\tocsubsubsectotal by\tocsubsubsecnum
  631 +\tocparatotal=\tocsubsubsectotal
  632 +\advance\tocparatotal by\tocparanum}
  633 +\calctocindent
  634 +
  635 +\def\l@section{\@dottedtocline{1}{\tocchpnum}{\tocsecnum}}
  636 +\def\l@subsection{\@dottedtocline{2}{\tocsectotal}{\tocsubsecnum}}
  637 +\def\l@subsubsection{\@dottedtocline{3}{\tocsubsectotal}{\tocsubsubsecnum}}
  638 +\def\l@paragraph{\@dottedtocline{4}{\tocsubsubsectotal}{\tocparanum}}
  639 +\def\l@subparagraph{\@dottedtocline{5}{\tocparatotal}{\tocsubparanum}}
  640 +
  641 +\def\listoffigures{\@restonecolfalse\if@twocolumn\@restonecoltrue\onecolumn
  642 + \fi\section*{\listfigurename\@mkboth{{\listfigurename}}{{\listfigurename}}}
  643 + \@starttoc{lof}\if@restonecol\twocolumn\fi}
  644 +\def\l@figure{\@dottedtocline{1}{0em}{1.5em}}
  645 +
  646 +\def\listoftables{\@restonecolfalse\if@twocolumn\@restonecoltrue\onecolumn
  647 + \fi\section*{\listtablename\@mkboth{{\listtablename}}{{\listtablename}}}
  648 + \@starttoc{lot}\if@restonecol\twocolumn\fi}
  649 +\let\l@table\l@figure
  650 +
  651 +\renewcommand\listoffigures{%
  652 + \section*{\listfigurename
  653 + \@mkboth{\listfigurename}{\listfigurename}}%
  654 + \@starttoc{lof}%
  655 + }
  656 +
  657 +\renewcommand\listoftables{%
  658 + \section*{\listtablename
  659 + \@mkboth{\listtablename}{\listtablename}}%
  660 + \@starttoc{lot}%
  661 + }
  662 +
  663 +\ifx\oribibl\undefined
  664 +\ifx\citeauthoryear\undefined
  665 +\renewenvironment{thebibliography}[1]
  666 + {\section*{\refname}
  667 + \def\@biblabel##1{##1.}
  668 + \small
  669 + \list{\@biblabel{\@arabic\c@enumiv}}%
  670 + {\settowidth\labelwidth{\@biblabel{#1}}%
  671 + \leftmargin\labelwidth
  672 + \advance\leftmargin\labelsep
  673 + \if@openbib
  674 + \advance\leftmargin\bibindent
  675 + \itemindent -\bibindent
  676 + \listparindent \itemindent
  677 + \parsep \z@
  678 + \fi
  679 + \usecounter{enumiv}%
  680 + \let\p@enumiv\@empty
  681 + \renewcommand\theenumiv{\@arabic\c@enumiv}}%
  682 + \if@openbib
  683 + \renewcommand\newblock{\par}%
  684 + \else
  685 + \renewcommand\newblock{\hskip .11em \@plus.33em \@minus.07em}%
  686 + \fi
  687 + \sloppy\clubpenalty4000\widowpenalty4000%
  688 + \sfcode`\.=\@m}
  689 + {\def\@noitemerr
  690 + {\@latex@warning{Empty `thebibliography' environment}}%
  691 + \endlist}
  692 +\def\@lbibitem[#1]#2{\item[{[#1]}\hfill]\if@filesw
  693 + {\let\protect\noexpand\immediate
  694 + \write\@auxout{\string\bibcite{#2}{#1}}}\fi\ignorespaces}
  695 +\newcount\@tempcntc
  696 +\def\@citex[#1]#2{\if@filesw\immediate\write\@auxout{\string\citation{#2}}\fi
  697 + \@tempcnta\z@\@tempcntb\m@ne\def\@citea{}\@cite{\@for\@citeb:=#2\do
  698 + {\@ifundefined
  699 + {b@\@citeb}{\@citeo\@tempcntb\m@ne\@citea\def\@citea{,}{\bfseries
  700 + ?}\@warning
  701 + {Citation `\@citeb' on page \thepage \space undefined}}%
  702 + {\setbox\z@\hbox{\global\@tempcntc0\csname b@\@citeb\endcsname\relax}%
  703 + \ifnum\@tempcntc=\z@ \@citeo\@tempcntb\m@ne
  704 + \@citea\def\@citea{,}\hbox{\csname b@\@citeb\endcsname}%
  705 + \else
  706 + \advance\@tempcntb\@ne
  707 + \ifnum\@tempcntb=\@tempcntc
  708 + \else\advance\@tempcntb\m@ne\@citeo
  709 + \@tempcnta\@tempcntc\@tempcntb\@tempcntc\fi\fi}}\@citeo}{#1}}
  710 +\def\@citeo{\ifnum\@tempcnta>\@tempcntb\else
  711 + \@citea\def\@citea{,\,\hskip\z@skip}%
  712 + \ifnum\@tempcnta=\@tempcntb\the\@tempcnta\else
  713 + {\advance\@tempcnta\@ne\ifnum\@tempcnta=\@tempcntb \else
  714 + \def\@citea{--}\fi
  715 + \advance\@tempcnta\m@ne\the\@tempcnta\@citea\the\@tempcntb}\fi\fi}
  716 +\else
  717 +\renewenvironment{thebibliography}[1]
  718 + {\section*{\refname}
  719 + \small
  720 + \list{}%
  721 + {\settowidth\labelwidth{}%
  722 + \leftmargin\parindent
  723 + \itemindent=-\parindent
  724 + \labelsep=\z@
  725 + \if@openbib
  726 + \advance\leftmargin\bibindent
  727 + \itemindent -\bibindent
  728 + \listparindent \itemindent
  729 + \parsep \z@
  730 + \fi
  731 + \usecounter{enumiv}%
  732 + \let\p@enumiv\@empty
  733 + \renewcommand\theenumiv{}}%
  734 + \if@openbib
  735 + \renewcommand\newblock{\par}%
  736 + \else
  737 + \renewcommand\newblock{\hskip .11em \@plus.33em \@minus.07em}%
  738 + \fi
  739 + \sloppy\clubpenalty4000\widowpenalty4000%
  740 + \sfcode`\.=\@m}
  741 + {\def\@noitemerr
  742 + {\@latex@warning{Empty `thebibliography' environment}}%
  743 + \endlist}
  744 + \def\@cite#1{#1}%
  745 + \def\@lbibitem[#1]#2{\item[]\if@filesw
  746 + {\def\protect##1{\string ##1\space}\immediate
  747 + \write\@auxout{\string\bibcite{#2}{#1}}}\fi\ignorespaces}
  748 + \fi
  749 +\else
  750 +\@cons\@openbib@code{\noexpand\small}
  751 +\fi
  752 +
  753 +\def\idxquad{\hskip 10\p@}% space that divides entry from number
  754 +
  755 +\def\@idxitem{\par\hangindent 10\p@}
  756 +
  757 +\def\subitem{\par\setbox0=\hbox{--\enspace}% second order
  758 + \noindent\hangindent\wd0\box0}% index entry
  759 +
  760 +\def\subsubitem{\par\setbox0=\hbox{--\,--\enspace}% third
  761 + \noindent\hangindent\wd0\box0}% order index entry
  762 +
  763 +\def\indexspace{\par \vskip 10\p@ plus5\p@ minus3\p@\relax}
  764 +
  765 +\renewenvironment{theindex}
  766 + {\@mkboth{\indexname}{\indexname}%
  767 + \thispagestyle{empty}\parindent\z@
  768 + \parskip\z@ \@plus .3\p@\relax
  769 + \let\item\par
  770 + \def\,{\relax\ifmmode\mskip\thinmuskip
  771 + \else\hskip0.2em\ignorespaces\fi}%
  772 + \normalfont\small
  773 + \begin{multicols}{2}[\@makeschapterhead{\indexname}]%
  774 + }
  775 + {\end{multicols}}
  776 +
  777 +\renewcommand\footnoterule{%
  778 + \kern-3\p@
  779 + \hrule\@width 2truecm
  780 + \kern2.6\p@}
  781 + \newdimen\fnindent
  782 + \fnindent1em
  783 +\long\def\@makefntext#1{%
  784 + \parindent \fnindent%
  785 + \leftskip \fnindent%
  786 + \noindent
  787 + \llap{\hb@xt@1em{\hss\@makefnmark\ }}\ignorespaces#1}
  788 +
  789 +\long\def\@makecaption#1#2{%
  790 + \small
  791 + \vskip\abovecaptionskip
  792 + \sbox\@tempboxa{{\bfseries #1.} #2}%
  793 + \ifdim \wd\@tempboxa >\hsize
  794 + {\bfseries #1.} #2\par
  795 + \else
  796 + \global \@minipagefalse
  797 + \hb@xt@\hsize{\hfil\box\@tempboxa\hfil}%
  798 + \fi
  799 + \vskip\belowcaptionskip}
  800 +
  801 +\def\fps@figure{htbp}
  802 +\def\fnum@figure{\figurename\thinspace\thefigure}
  803 +\def \@floatboxreset {%
  804 + \reset@font
  805 + \small
  806 + \@setnobreak
  807 + \@setminipage
  808 +}
  809 +\def\fps@table{htbp}
  810 +\def\fnum@table{\tablename~\thetable}
  811 +\renewenvironment{table}
  812 + {\setlength\abovecaptionskip{0\p@}%
  813 + \setlength\belowcaptionskip{10\p@}%
  814 + \@float{table}}
  815 + {\end@float}
  816 +\renewenvironment{table*}
  817 + {\setlength\abovecaptionskip{0\p@}%
  818 + \setlength\belowcaptionskip{10\p@}%
  819 + \@dblfloat{table}}
  820 + {\end@dblfloat}
  821 +
  822 +\long\def\@caption#1[#2]#3{\par\addcontentsline{\csname
  823 + ext@#1\endcsname}{#1}{\protect\numberline{\csname
  824 + the#1\endcsname}{\ignorespaces #2}}\begingroup
  825 + \@parboxrestore
  826 + \@makecaption{\csname fnum@#1\endcsname}{\ignorespaces #3}\par
  827 + \endgroup}
  828 +
  829 +% LaTeX does not provide a command to enter the authors institute
  830 +% addresses. The \institute command is defined here.
  831 +
  832 +\newcounter{@inst}
  833 +\newcounter{@auth}
  834 +\newcounter{auco}
  835 +\newdimen\instindent
  836 +\newbox\authrun
  837 +\newtoks\authorrunning
  838 +\newtoks\tocauthor
  839 +\newbox\titrun
  840 +\newtoks\titlerunning
  841 +\newtoks\toctitle
  842 +
  843 +\def\clearheadinfo{\gdef\@author{No Author Given}%
  844 + \gdef\@title{No Title Given}%
  845 + \gdef\@subtitle{}%
  846 + \gdef\@institute{No Institute Given}%
  847 + \gdef\@thanks{}%
  848 + \global\titlerunning={}\global\authorrunning={}%
  849 + \global\toctitle={}\global\tocauthor={}}
  850 +
  851 +\def\institute#1{\gdef\@institute{#1}}
  852 +
  853 +\def\institutename{\par
  854 + \begingroup
  855 + \parskip=\z@
  856 + \parindent=\z@
  857 + \setcounter{@inst}{1}%
  858 + \def\and{\par\stepcounter{@inst}%
  859 + \noindent$^{\the@inst}$\enspace\ignorespaces}%
  860 + \setbox0=\vbox{\def\thanks##1{}\@institute}%
  861 + \ifnum\c@@inst=1\relax
  862 + \gdef\fnnstart{0}%
  863 + \else
  864 + \xdef\fnnstart{\c@@inst}%
  865 + \setcounter{@inst}{1}%
  866 + \noindent$^{\the@inst}$\enspace
  867 + \fi
  868 + \ignorespaces
  869 + \@institute\par
  870 + \endgroup}
  871 +
  872 +\def\@fnsymbol#1{\ensuremath{\ifcase#1\or\star\or{\star\star}\or
  873 + {\star\star\star}\or \dagger\or \ddagger\or
  874 + \mathchar "278\or \mathchar "27B\or \|\or **\or \dagger\dagger
  875 + \or \ddagger\ddagger \else\@ctrerr\fi}}
  876 +
  877 +\def\inst#1{\unskip$^{#1}$}
  878 +\def\fnmsep{\unskip$^,$}
  879 +\def\email#1{{\tt#1}}
  880 +\AtBeginDocument{\@ifundefined{url}{\def\url#1{#1}}{}%
  881 +\@ifpackageloaded{babel}{%
  882 +\@ifundefined{extrasenglish}{}{\addto\extrasenglish{\switcht@albion}}%
  883 +\@ifundefined{extrasfrenchb}{}{\addto\extrasfrenchb{\switcht@francais}}%
  884 +\@ifundefined{extrasgerman}{}{\addto\extrasgerman{\switcht@deutsch}}%
  885 +\@ifundefined{extrasngerman}{}{\addto\extrasngerman{\switcht@deutsch}}%
  886 +}{\switcht@@therlang}%
  887 +\providecommand{\keywords}[1]{\par\addvspace\baselineskip
  888 +\noindent\keywordname\enspace\ignorespaces#1}%
  889 +}
  890 +\def\homedir{\~{ }}
  891 +
  892 +\def\subtitle#1{\gdef\@subtitle{#1}}
  893 +\clearheadinfo
  894 +%
  895 +%%% to avoid hyperref warnings
  896 +\providecommand*{\toclevel@author}{999}
  897 +%%% to make title-entry parent of section-entries
  898 +\providecommand*{\toclevel@title}{0}
  899 +%
  900 +\renewcommand\maketitle{\newpage
  901 +\phantomsection
  902 + \refstepcounter{chapter}%
  903 + \stepcounter{section}%
  904 + \setcounter{section}{0}%
  905 + \setcounter{subsection}{0}%
  906 + \setcounter{figure}{0}
  907 + \setcounter{table}{0}
  908 + \setcounter{equation}{0}
  909 + \setcounter{footnote}{0}%
  910 + \begingroup
  911 + \parindent=\z@
  912 + \renewcommand\thefootnote{\@fnsymbol\c@footnote}%
  913 + \if@twocolumn
  914 + \ifnum \col@number=\@ne
  915 + \@maketitle
  916 + \else
  917 + \twocolumn[\@maketitle]%
  918 + \fi
  919 + \else
  920 + \newpage
  921 + \global\@topnum\z@ % Prevents figures from going at top of page.
  922 + \@maketitle
  923 + \fi
  924 + \thispagestyle{empty}\@thanks
  925 +%
  926 + \def\\{\unskip\ \ignorespaces}\def\inst##1{\unskip{}}%
  927 + \def\thanks##1{\unskip{}}\def\fnmsep{\unskip}%
  928 + \instindent=\hsize
  929 + \advance\instindent by-\headlineindent
  930 + \if!\the\toctitle!\addcontentsline{toc}{title}{\@title}\else
  931 + \addcontentsline{toc}{title}{\the\toctitle}\fi
  932 + \if@runhead
  933 + \if!\the\titlerunning!\else
  934 + \edef\@title{\the\titlerunning}%
  935 + \fi
  936 + \global\setbox\titrun=\hbox{\small\rm\unboldmath\ignorespaces\@title}%
  937 + \ifdim\wd\titrun>\instindent
  938 + \typeout{Title too long for running head. Please supply}%
  939 + \typeout{a shorter form with \string\titlerunning\space prior to
  940 + \string\maketitle}%
  941 + \global\setbox\titrun=\hbox{\small\rm
  942 + Title Suppressed Due to Excessive Length}%
  943 + \fi
  944 + \xdef\@title{\copy\titrun}%
  945 + \fi
  946 +%
  947 + \if!\the\tocauthor!\relax
  948 + {\def\and{\noexpand\protect\noexpand\and}%
  949 + \protected@xdef\toc@uthor{\@author}}%
  950 + \else
  951 + \def\\{\noexpand\protect\noexpand\newline}%
  952 + \protected@xdef\scratch{\the\tocauthor}%
  953 + \protected@xdef\toc@uthor{\scratch}%
  954 + \fi
  955 + \addtocontents{toc}{\noexpand\protect\noexpand\authcount{\the\c@auco}}%
  956 + \addcontentsline{toc}{author}{\toc@uthor}%
  957 + \if@runhead
  958 + \if!\the\authorrunning!
  959 + \value{@inst}=\value{@auth}%
  960 + \setcounter{@auth}{1}%
  961 + \else
  962 + \edef\@author{\the\authorrunning}%
  963 + \fi
  964 + \global\setbox\authrun=\hbox{\small\unboldmath\@author\unskip}%
  965 + \ifdim\wd\authrun>\instindent
  966 + \typeout{Names of authors too long for running head. Please supply}%
  967 + \typeout{a shorter form with \string\authorrunning\space prior to
  968 + \string\maketitle}%
  969 + \global\setbox\authrun=\hbox{\small\rm
  970 + Authors Suppressed Due to Excessive Length}%
  971 + \fi
  972 + \xdef\@author{\copy\authrun}%
  973 + \markboth{\@author}{\@title}%
  974 + \fi
  975 + \endgroup
  976 + \setcounter{footnote}{\fnnstart}%
  977 + \clearheadinfo}
  978 +%
  979 +\def\@maketitle{\newpage
  980 + \markboth{}{}%
  981 + \def\lastand{\ifnum\value{@inst}=2\relax
  982 + \unskip{} \andname\
  983 + \else
  984 + \unskip \lastandname\
  985 + \fi}%
  986 + \def\and{\stepcounter{@auth}\relax
  987 + \ifnum\value{@auth}=\value{@inst}%
  988 + \lastand
  989 + \else
  990 + \unskip,
  991 + \fi}%
  992 + \begin{center}%
  993 + \let\newline\\
  994 + {\Large \bfseries\boldmath
  995 + \pretolerance=10000
  996 + \@title \par}\vskip .8cm
  997 +\if!\@subtitle!\else {\large \bfseries\boldmath
  998 + \vskip -.65cm
  999 + \pretolerance=10000
  1000 + \@subtitle \par}\vskip .8cm\fi
  1001 + \setbox0=\vbox{\setcounter{@auth}{1}\def\and{\stepcounter{@auth}}%
  1002 + \def\thanks##1{}\@author}%
  1003 + \global\value{@inst}=\value{@auth}%
  1004 + \global\value{auco}=\value{@auth}%
  1005 + \setcounter{@auth}{1}%
  1006 +{\lineskip .5em
  1007 +\noindent\ignorespaces
  1008 +\@author\vskip.35cm}
  1009 + {\small\institutename}
  1010 + \end{center}%
  1011 + }
  1012 +
  1013 +% definition of the "\spnewtheorem" command.
  1014 +%
  1015 +% Usage:
  1016 +%
  1017 +% \spnewtheorem{env_nam}{caption}[within]{cap_font}{body_font}
  1018 +% or \spnewtheorem{env_nam}[numbered_like]{caption}{cap_font}{body_font}
  1019 +% or \spnewtheorem*{env_nam}{caption}{cap_font}{body_font}
  1020 +%
  1021 +% New is "cap_font" and "body_font". It stands for
  1022 +% fontdefinition of the caption and the text itself.
  1023 +%
  1024 +% "\spnewtheorem*" gives a theorem without number.
  1025 +%
  1026 +% A defined spnewthoerem environment is used as described
  1027 +% by Lamport.
  1028 +%
  1029 +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  1030 +
  1031 +\def\@thmcountersep{}
  1032 +\def\@thmcounterend{.}
  1033 +
  1034 +\def\spnewtheorem{\@ifstar{\@sthm}{\@Sthm}}
  1035 +
  1036 +% definition of \spnewtheorem with number
  1037 +
  1038 +\def\@spnthm#1#2{%
  1039 + \@ifnextchar[{\@spxnthm{#1}{#2}}{\@spynthm{#1}{#2}}}
  1040 +\def\@Sthm#1{\@ifnextchar[{\@spothm{#1}}{\@spnthm{#1}}}
  1041 +
  1042 +\def\@spxnthm#1#2[#3]#4#5{\expandafter\@ifdefinable\csname #1\endcsname
  1043 + {\@definecounter{#1}\@addtoreset{#1}{#3}%
  1044 + \expandafter\xdef\csname the#1\endcsname{\expandafter\noexpand
  1045 + \csname the#3\endcsname \noexpand\@thmcountersep \@thmcounter{#1}}%
  1046 + \expandafter\xdef\csname #1name\endcsname{#2}%
  1047 + \global\@namedef{#1}{\@spthm{#1}{\csname #1name\endcsname}{#4}{#5}}%
  1048 + \global\@namedef{end#1}{\@endtheorem}}}
  1049 +
  1050 +\def\@spynthm#1#2#3#4{\expandafter\@ifdefinable\csname #1\endcsname
  1051 + {\@definecounter{#1}%
  1052 + \expandafter\xdef\csname the#1\endcsname{\@thmcounter{#1}}%
  1053 + \expandafter\xdef\csname #1name\endcsname{#2}%
  1054 + \global\@namedef{#1}{\@spthm{#1}{\csname #1name\endcsname}{#3}{#4}}%
  1055 + \global\@namedef{end#1}{\@endtheorem}}}
  1056 +
  1057 +\def\@spothm#1[#2]#3#4#5{%
  1058 + \@ifundefined{c@#2}{\@latexerr{No theorem environment `#2' defined}\@eha}%
  1059 + {\expandafter\@ifdefinable\csname #1\endcsname
  1060 + {\newaliascnt{#1}{#2}%
  1061 + \expandafter\xdef\csname #1name\endcsname{#3}%
  1062 + \global\@namedef{#1}{\@spthm{#1}{\csname #1name\endcsname}{#4}{#5}}%
  1063 + \global\@namedef{end#1}{\@endtheorem}}}}
  1064 +
  1065 +\def\@spthm#1#2#3#4{\topsep 7\p@ \@plus2\p@ \@minus4\p@
  1066 +\refstepcounter{#1}%
  1067 +\@ifnextchar[{\@spythm{#1}{#2}{#3}{#4}}{\@spxthm{#1}{#2}{#3}{#4}}}
  1068 +
  1069 +\def\@spxthm#1#2#3#4{\@spbegintheorem{#2}{\csname the#1\endcsname}{#3}{#4}%
  1070 + \ignorespaces}
  1071 +
  1072 +\def\@spythm#1#2#3#4[#5]{\@spopargbegintheorem{#2}{\csname
  1073 + the#1\endcsname}{#5}{#3}{#4}\ignorespaces}
  1074 +
  1075 +\def\@spbegintheorem#1#2#3#4{\trivlist
  1076 + \item[\hskip\labelsep{#3#1\ #2\@thmcounterend}]#4}
  1077 +
  1078 +\def\@spopargbegintheorem#1#2#3#4#5{\trivlist
  1079 + \item[\hskip\labelsep{#4#1\ #2}]{#4(#3)\@thmcounterend\ }#5}
  1080 +
  1081 +% definition of \spnewtheorem* without number
  1082 +
  1083 +\def\@sthm#1#2{\@Ynthm{#1}{#2}}
  1084 +
  1085 +\def\@Ynthm#1#2#3#4{\expandafter\@ifdefinable\csname #1\endcsname
  1086 + {\global\@namedef{#1}{\@Thm{\csname #1name\endcsname}{#3}{#4}}%
  1087 + \expandafter\xdef\csname #1name\endcsname{#2}%
  1088 + \global\@namedef{end#1}{\@endtheorem}}}
  1089 +
  1090 +\def\@Thm#1#2#3{\topsep 7\p@ \@plus2\p@ \@minus4\p@
  1091 +\@ifnextchar[{\@Ythm{#1}{#2}{#3}}{\@Xthm{#1}{#2}{#3}}}
  1092 +
  1093 +\def\@Xthm#1#2#3{\@Begintheorem{#1}{#2}{#3}\ignorespaces}
  1094 +
  1095 +\def\@Ythm#1#2#3[#4]{\@Opargbegintheorem{#1}
  1096 + {#4}{#2}{#3}\ignorespaces}
  1097 +
  1098 +\def\@Begintheorem#1#2#3{#3\trivlist
  1099 + \item[\hskip\labelsep{#2#1\@thmcounterend}]}
  1100 +
  1101 +\def\@Opargbegintheorem#1#2#3#4{#4\trivlist
  1102 + \item[\hskip\labelsep{#3#1}]{#3(#2)\@thmcounterend\ }}
  1103 +
  1104 +\if@envcntsect
  1105 + \def\@thmcountersep{.}
  1106 + \spnewtheorem{theorem}{Theorem}[section]{\bfseries}{\itshape}
  1107 +\else
  1108 + \spnewtheorem{theorem}{Theorem}{\bfseries}{\itshape}
  1109 + \if@envcntreset
  1110 + \@addtoreset{theorem}{section}
  1111 + \else
  1112 + \@addtoreset{theorem}{chapter}
  1113 + \fi
  1114 +\fi
  1115 +
  1116 +%definition of divers theorem environments
  1117 +\spnewtheorem*{claim}{Claim}{\itshape}{\rmfamily}
  1118 +\spnewtheorem*{proof}{Proof}{\itshape}{\rmfamily}
  1119 +\if@envcntsame % alle Umgebungen wie Theorem.
  1120 + \def\spn@wtheorem#1#2#3#4{\@spothm{#1}[theorem]{#2}{#3}{#4}}
  1121 +\else % alle Umgebungen mit eigenem Zaehler
  1122 + \if@envcntsect % mit section numeriert
  1123 + \def\spn@wtheorem#1#2#3#4{\@spxnthm{#1}{#2}[section]{#3}{#4}}
  1124 + \else % nicht mit section numeriert
  1125 + \if@envcntreset
  1126 + \def\spn@wtheorem#1#2#3#4{\@spynthm{#1}{#2}{#3}{#4}
  1127 + \@addtoreset{#1}{section}}
  1128 + \else
  1129 + \def\spn@wtheorem#1#2#3#4{\@spynthm{#1}{#2}{#3}{#4}
  1130 + \@addtoreset{#1}{chapter}}%
  1131 + \fi
  1132 + \fi
  1133 +\fi
  1134 +\spn@wtheorem{case}{Case}{\itshape}{\rmfamily}
  1135 +\spn@wtheorem{conjecture}{Conjecture}{\itshape}{\rmfamily}
  1136 +\spn@wtheorem{corollary}{Corollary}{\bfseries}{\itshape}
  1137 +\spn@wtheorem{definition}{Definition}{\bfseries}{\itshape}
  1138 +\spn@wtheorem{example}{Example}{\itshape}{\rmfamily}
  1139 +\spn@wtheorem{exercise}{Exercise}{\itshape}{\rmfamily}
  1140 +\spn@wtheorem{lemma}{Lemma}{\bfseries}{\itshape}
  1141 +\spn@wtheorem{note}{Note}{\itshape}{\rmfamily}
  1142 +\spn@wtheorem{problem}{Problem}{\itshape}{\rmfamily}
  1143 +\spn@wtheorem{property}{Property}{\itshape}{\rmfamily}
  1144 +\spn@wtheorem{proposition}{Proposition}{\bfseries}{\itshape}
  1145 +\spn@wtheorem{question}{Question}{\itshape}{\rmfamily}
  1146 +\spn@wtheorem{solution}{Solution}{\itshape}{\rmfamily}
  1147 +\spn@wtheorem{remark}{Remark}{\itshape}{\rmfamily}
  1148 +
  1149 +\def\@takefromreset#1#2{%
  1150 + \def\@tempa{#1}%
  1151 + \let\@tempd\@elt
  1152 + \def\@elt##1{%
  1153 + \def\@tempb{##1}%
  1154 + \ifx\@tempa\@tempb\else
  1155 + \@addtoreset{##1}{#2}%
  1156 + \fi}%
  1157 + \expandafter\expandafter\let\expandafter\@tempc\csname cl@#2\endcsname
  1158 + \expandafter\def\csname cl@#2\endcsname{}%
  1159 + \@tempc
  1160 + \let\@elt\@tempd}
  1161 +
  1162 +\def\theopargself{\def\@spopargbegintheorem##1##2##3##4##5{\trivlist
  1163 + \item[\hskip\labelsep{##4##1\ ##2}]{##4##3\@thmcounterend\ }##5}
  1164 + \def\@Opargbegintheorem##1##2##3##4{##4\trivlist
  1165 + \item[\hskip\labelsep{##3##1}]{##3##2\@thmcounterend\ }}
  1166 + }
  1167 +
  1168 +\renewenvironment{abstract}{%
  1169 + \list{}{\advance\topsep by0.35cm\relax\small
  1170 + \leftmargin=1cm
  1171 + \labelwidth=\z@
  1172 + \listparindent=\z@
  1173 + \itemindent\listparindent
  1174 + \rightmargin\leftmargin}\item[\hskip\labelsep
  1175 + \bfseries\abstractname]}
  1176 + {\endlist}
  1177 +
  1178 +\newdimen\headlineindent % dimension for space between
  1179 +\headlineindent=1.166cm % number and text of headings.
  1180 +
  1181 +\def\ps@headings{\let\@mkboth\@gobbletwo
  1182 + \let\@oddfoot\@empty\let\@evenfoot\@empty
  1183 + \def\@evenhead{\normalfont\small\rlap{\thepage}\hspace{\headlineindent}%
  1184 + \leftmark\hfil}
  1185 + \def\@oddhead{\normalfont\small\hfil\rightmark\hspace{\headlineindent}%
  1186 + \llap{\thepage}}
  1187 + \def\chaptermark##1{}%
  1188 + \def\sectionmark##1{}%
  1189 + \def\subsectionmark##1{}}
  1190 +
  1191 +\def\ps@titlepage{\let\@mkboth\@gobbletwo
  1192 + \let\@oddfoot\@empty\let\@evenfoot\@empty
  1193 + \def\@evenhead{\normalfont\small\rlap{\thepage}\hspace{\headlineindent}%
  1194 + \hfil}
  1195 + \def\@oddhead{\normalfont\small\hfil\hspace{\headlineindent}%
  1196 + \llap{\thepage}}
  1197 + \def\chaptermark##1{}%
  1198 + \def\sectionmark##1{}%
  1199 + \def\subsectionmark##1{}}
  1200 +
  1201 +\if@runhead\ps@headings\else
  1202 +\ps@empty\fi
  1203 +
  1204 +\setlength\arraycolsep{1.4\p@}
  1205 +\setlength\tabcolsep{1.4\p@}
  1206 +
  1207 +\endinput
  1208 +%end of file llncs.cls
OSS-2017/llncs.tex 0 → 100644
@@ -0,0 +1,1256 @@ @@ -0,0 +1,1256 @@
  1 +% This is LLNCS.DOC the documentation file of
  2 +% the LaTeX2e class from Springer-Verlag
  3 +% for Lecture Notes in Computer Science, version 2.4
  4 +\documentclass{llncs}
  5 +\usepackage{llncsdoc}
  6 +%
  7 +\begin{document}
  8 +\markboth{\LaTeXe{} Class for Lecture Notes in Computer
  9 +Science}{\LaTeXe{} Class for Lecture Notes in Computer Science}
  10 +\thispagestyle{empty}
  11 +\begin{flushleft}
  12 +\LARGE\bfseries Instructions for Authors\\
  13 +Coding with \LaTeX\\[2cm]
  14 +\end{flushleft}
  15 +\rule{\textwidth}{1pt}
  16 +\vspace{2pt}
  17 +\begin{flushright}
  18 +\Huge
  19 +\begin{tabular}{@{}l}
  20 +\LaTeXe{} Class\\
  21 +for Lecture Notes\\
  22 +in Computer Science\\[6pt]
  23 +{\Large Version 2.4}
  24 +\end{tabular}
  25 +\end{flushright}
  26 +\rule{\textwidth}{1pt}
  27 +\vfill
  28 +%\begin{flushleft}
  29 +%\large\itshape
  30 +%\begin{tabular}{@{}l}
  31 +%{\Large\upshape\bfseries Springer}\\[8pt]
  32 +%Berlin\enspace Heidelberg\enspace New\kern0.1em York\\[5pt]
  33 +%Barcelona\enspace Budapest\enspace Hong\kern0.2em Kong\\[5pt]
  34 +%London\enspace Milan\enspace Paris\enspace\\[5pt]
  35 +%Santa\kern0.2em Clara\enspace Singapore\enspace Tokyo
  36 +%\end{tabular}
  37 +%\end{flushleft}
  38 +\newpage
  39 +%
  40 +\section*{For further information please contact us:}
  41 +%
  42 +\begin{flushleft}
  43 +\begin{tabular}{l@{\quad}l@{\hspace{3mm}}l@{\qquad}l}
  44 +$\bullet$&\multicolumn{3}{@{}l}{\bfseries LNCS Editorial Office}\\[1mm]
  45 +&\multicolumn{3}{@{}l}{Springer-Verlag}\\
  46 +&\multicolumn{3}{@{}l}{Computer Science Editorial}\\
  47 +&\multicolumn{3}{@{}l}{Tiergartenstraße 17}\\
  48 +&\multicolumn{3}{@{}l}{69121 Heidelberg}\\
  49 +&\multicolumn{3}{@{}l}{Germany}\\[0.5mm]
  50 + & Tel: & +49-6221-487-8706\\
  51 + & Fax: & +49-6221-487-8588\\
  52 + & e-mail: & \tt lncs@springer.com & for editorial questions\\
  53 + & & \tt texhelp@springer.de & for \TeX{} problems\\[2mm]
  54 +\noalign{\rule{\textwidth}{1pt}}
  55 +\noalign{\vskip2mm}
  56 +%
  57 +%{\tt svserv@vax.ntp.springer.de}\hfil first try the \verb|help|
  58 +%command.
  59 +%
  60 +$\bullet$&\multicolumn{3}{@{}l}{\bfseries We are also reachable through the world wide web:}\\[1mm]
  61 + &\multicolumn{2}{@{}l}{\texttt{http://www.springer.com}}&Springer Global Website\\
  62 + &\multicolumn{2}{@{}l}{\texttt{http://www.springer.com/lncs}}&LNCS home page\\
  63 + &\multicolumn{2}{@{}l}{\texttt{http://www.springerlink.com}}&data repository\\
  64 + &\multicolumn{2}{@{}l}{\texttt{ftp://ftp.springer.de}}&FTP server
  65 +\end{tabular}
  66 +\end{flushleft}
  67 +
  68 +
  69 +%
  70 +\newpage
  71 +\tableofcontents
  72 +\newpage
  73 +%
  74 +\section{Introduction}
  75 +%
  76 +Authors wishing to code their contribution
  77 +with \LaTeX{}, as well as those who have already coded with \LaTeX{},
  78 +will be provided with a document class that will give the text the
  79 +desired layout. Authors are requested to
  80 +adhere strictly to these instructions; {\em the class
  81 +file must not be changed}.
  82 +
  83 +The text output area is automatically set within an area of
  84 +12.2\,cm horizontally and 19.3\,cm vertically.
  85 +
  86 +If you are already familiar with \LaTeX{}, then the
  87 +LLNCS class should not give you any major difficulties.
  88 +It will change the layout to the required LLNCS style
  89 +(it will for instance define the layout of \verb|\section|).
  90 +We had to invent some extra commands,
  91 +which are not provided by \LaTeX{} (e.g.\
  92 +\verb|\institute|, see also Sect.\,\ref{contbegin})
  93 +
  94 +For the main body of the paper (the text) you
  95 +should use the commands of the standard \LaTeX{} ``article'' class.
  96 +Even if you are familiar with those commands, we urge you to read
  97 +this entire documentation thoroughly. It contains many suggestions on
  98 +how to use our commands properly; thus your paper
  99 +will be formatted exactly to LLNCS standard.
  100 +For the input of the references at the end of your contribution,
  101 +please follow our instructions given in Sect.\,\ref{refer} References.
  102 +
  103 +The majority of these hints are not specific for LLNCS; they may improve
  104 +your use of \LaTeX{} in general.
  105 +Furthermore, the documentation provides suggestions about the proper
  106 +editing and use
  107 +of the input files (capitalization, abbreviation etc.) (see
  108 +Sect.\,\ref{refedit} How to Edit Your Input File).
  109 +%
  110 +\section{How to Proceed}
  111 +%
  112 +The package consists of the following files:
  113 +\begin{flushleft}
  114 +\begin{tabular}{@{}p{2.5cm}l}
  115 +{\tt history.txt}& the version history of the package\\[2pt]
  116 +{\tt llncs.cls} & class file for \LaTeX{}\\[2pt]
  117 +{\tt llncs.dem} & an example showing how to code the text\\[2pt]
  118 +{\tt llncs.doc} & general instructions (source of this document),\\
  119 + & {\tt llncs.doc} means {\itshape l\/}atex {\itshape doc\/}umentation for\\
  120 + & {\itshape L\/}ecture {\itshape N}otes in {\itshape C\/}omputer {\itshape S\/}cience\\
  121 +{\tt llncsdoc.pdf}& the documentation of the class (PDF version),\\
  122 +{\tt llncs.doc} & general instructions (source of this document),\\
  123 +{\tt llncsdoc.sty} & class modifications to help for the instructions\\
  124 +{\tt llncs.ind} & an external (faked) author index file\\
  125 +{\tt subjidx.ind} & subject index demo from the Springer book package\\
  126 +{\tt llncs.dvi} & the resultig DVI file (remember to use binary transfer!)\\[2pt]
  127 +{\tt sprmindx.sty} & supplementary style file for MakeIndex\\
  128 + & (usage: {\tt makeindex -s sprmindx.sty <yourfile.idx>})
  129 +\end{tabular}
  130 +\end{flushleft}
  131 +%
  132 +\subsection{How to Invoke the LLNCS Document Class}
  133 +%
  134 +The LLNCS class is an extension of the standard \LaTeX{} ``article''
  135 +document class. Therefore you may use all ``article'' commands for the
  136 +body of your contribution to prepare your manuscript.
  137 +LLNCS class is invoked by replacing ``article'' by ``llncs'' in the
  138 +first line of your document:
  139 +\begin{verbatim}
  140 +\documentclass{llncs}
  141 +%
  142 +\begin{document}
  143 + <Your contribution>
  144 +\end{document}
  145 +\end{verbatim}
  146 +%
  147 +\subsection{Contributions Already Coded with \protect\LaTeX{} without
  148 +the LLNCS document class}
  149 +%
  150 +If your file is already coded with \LaTeX{} you can easily
  151 +adapt it a posteriori to the LLNCS document class.
  152 +
  153 +Please refrain from using any \LaTeX{} or \TeX{} commands
  154 +that affect the layout or formatting of your document (i.e. commands
  155 +like \verb|\textheight|, \verb|\vspace|, \verb|\headsep| etc.).
  156 +There may nevertheless be exceptional occasions on which to
  157 +use some of them.
  158 +
  159 +The LLNCS document class has been carefully designed to produce the
  160 +right layout from your \LaTeX{} input. If there is anything specific you
  161 +would like to do and for which the style file does not provide a
  162 +command, {\em please contact us}. Same holds for any error and bug you
  163 +discover (there is however no reward for this -- sorry).
  164 +%
  165 +\section{General Rules for Coding Formulas}
  166 +%
  167 +With mathematical formulas you may proceed as described
  168 +in Sect.\,3.3 of the {\em \LaTeX{} User's Guide \& Reference
  169 +Manual\/} by Leslie Lamport (2nd~ed. 1994), Addison-Wesley Publishing
  170 +Company, Inc.
  171 +
  172 +Equations are automatically numbered sequentially throughout your
  173 +contribution using arabic numerals in parentheses on the right-hand
  174 +side.
  175 +
  176 +When you are working in math mode everything is typeset in italics.
  177 +Sometimes you need to insert non-mathematical elements (e.g.\
  178 +words or phrases). Such insertions should be coded in roman
  179 +(with \verb|\mbox|) as illustrated in the following example:
  180 +\begin{flushleft}
  181 +{\itshape Sample Input}
  182 +\end{flushleft}
  183 +\begin{verbatim}
  184 +\begin{equation}
  185 + \left(\frac{a^{2} + b^{2}}{c^{3}} \right) = 1 \quad
  186 + \mbox{ if } c\neq 0 \mbox{ and if } a,b,c\in \bbbr \enspace .
  187 +\end{equation}
  188 +\end{verbatim}
  189 +{\itshape Sample Output}
  190 +\begin{equation}
  191 + \left(\frac{a^{2} + b^{2}}{c^{3}} \right) = 1 \quad
  192 + \mbox{ if } c\neq 0 \mbox{ and if } a,b,c\in \bbbr \enspace .
  193 +\end{equation}
  194 +
  195 +If you wish to start a new paragraph immediately after a displayed
  196 +equation, insert a blank line so as to produce the required
  197 +indentation. If there is no new paragraph either do not insert
  198 +a blank line or code \verb|\noindent| immediately before
  199 +continuing the text.
  200 +
  201 +Please punctuate a displayed equation in the same way as other
  202 +ordinary text but with an \verb|\enspace| before end punctuation.
  203 +
  204 +Note that the sizes of the parentheses or other delimiter
  205 +symbols used in equations should ideally match the height of the
  206 +formulas being enclosed. This is automatically taken care of by
  207 +the following \LaTeX{} commands:\\[2mm]
  208 +\verb|\left(| or \verb|\left[| and
  209 +\verb|\right)| or \verb|\right]|.
  210 +%
  211 +\subsection{Italic and Roman Type in Math Mode}
  212 +%
  213 +\begin{alpherate}
  214 +\item
  215 +In math mode \LaTeX{} treats all letters as though they
  216 +were mathematical or physical variables, hence they are typeset as
  217 +characters of their own in
  218 +italics. However, for certain components of formulas, like short texts,
  219 +this would be incorrect and therefore coding in roman is required.
  220 +Roman should also be used for
  221 +subscripts and superscripts {\em in formulas\/} where these are
  222 +merely labels and not in themselves variables,
  223 +e.g. $T_{\mathrm{eff}}$ \emph{not} $T_{eff}$,
  224 +$T_{\mathrm K}$ \emph{not} $T_K$ (K = Kelvin),
  225 +$m_{\mathrm e}$ \emph{not} $m_e$ (e = electron).
  226 +However, do not code for roman
  227 +if the sub/superscripts represent variables,
  228 +e.g.\ $\sum_{i=1}^{n} a_{i}$.
  229 +\item
  230 +Please ensure that {\em physical units\/} (e.g.\ pc, erg s$^{-1}$
  231 +K, cm$^{-3}$, W m$^{-2}$ Hz$^{-1}$, m kg s$^{-2}$ A$^{-2}$) and
  232 +{\em abbreviations\/} such as Ord, Var, GL, SL, sgn, const.\
  233 +are always set in roman type. To ensure
  234 +this use the \verb|\mathrm| command: \verb|\mathrm{Hz}|.
  235 +On p.\ 44 of the {\em \LaTeX{} User's Guide \& Reference
  236 +Manual\/} by Leslie Lamport you will find the names of
  237 +common mathe\-matical functions, such as log, sin, exp, max and sup.
  238 +These should be coded as \verb|\log|,
  239 +\verb|\sin|, \verb|\exp|, \verb|\max|, \verb|\sup|
  240 +and will appear in roman automatically.
  241 +\item
  242 +Chemical symbols and formulas should be coded for roman,
  243 +e.g.\ Fe not $Fe$, H$_2$O not {\em H$_2$O}.
  244 +\item
  245 +Familiar foreign words and phrases, e.g.\ et al.,
  246 +a priori, in situ, brems\-strah\-lung, eigenvalues should not be
  247 +italicized.
  248 +\end{alpherate}
  249 +%
  250 +\section{How to Edit Your Input (Source) File}
  251 +\label{refedit}
  252 +%
  253 +\subsection{Headings}\label{headings}
  254 +%
  255 +All words in headings should be capitalized except for conjunctions,
  256 +prepositions (e.g.\ on, of, by, and, or, but, from, with, without,
  257 +under) and definite and indefinite articles (the, a, an) unless they
  258 +appear at the beginning. Formula letters must be typeset as in the text.
  259 +%
  260 +\subsection{Capitalization and Non-capitalization}
  261 +%
  262 +\begin{alpherate}
  263 +\item
  264 +The following should always be capitalized:
  265 +\begin{itemize}
  266 +\item
  267 +Headings (see preceding Sect.\,\ref{headings})
  268 +\item
  269 +Abbreviations and expressions
  270 +in the text such as Fig(s)., Table(s), Sect(s)., Chap(s).,
  271 +Theorem, Corollary, Definition etc. when used with numbers, e.g.\
  272 +Fig.\,3, Table\,1, Theorem 2.
  273 +\end{itemize}
  274 +Please follow the special rules in Sect.\,\ref{abbrev} for referring to
  275 +equations.
  276 +\item
  277 +The following should {\em not\/} be capitalized:
  278 +\begin{itemize}
  279 +\item
  280 +The words figure(s), table(s), equation(s), theorem(s) in the text when
  281 +used without an accompanying number.
  282 +\item
  283 +Figure legends and table captions except for names and abbreviations.
  284 +\end{itemize}
  285 +\end{alpherate}
  286 +%
  287 +\subsection{Abbreviation of Words}\label{abbrev}
  288 +%
  289 +\begin{alpherate}
  290 +\item
  291 +The following {\em should} be abbreviated when they appear in running
  292 +text {\em unless\/} they come at the beginning of a sentence: Chap.,
  293 +Sect., Fig.; e.g.\ The results are depicted in Fig.\,5. Figure 9 reveals
  294 +that \dots .\\
  295 +{\em Please note\/}: Equations should usually be referred to solely by
  296 +their number in parentheses: e.g.\ (14). However, when the reference
  297 +comes at the beginning of a sentence, the unabbreviated word
  298 +``Equation'' should be used: e.g.\ Equation (14) is very important.
  299 +However, (15) makes it clear that \dots .
  300 +\item
  301 +If abbreviations of names or concepts are used
  302 +throughout the text, they should be defined at first occurrence,
  303 +e.g.\ Plurisubharmonic (PSH) Functions, Strong Optimization (SOPT)
  304 +Problem.
  305 +\end{alpherate}
  306 +%
  307 +\section{How to Code the Beginning of Your Contribution}
  308 +\label{contbegin}
  309 +%
  310 +The title of a single contribution (it is mandatory) should be coded as
  311 +follows:
  312 +\begin{verbatim}
  313 +\title{<Your contribution title>}
  314 +\end{verbatim}
  315 +All words in titles should be capitalized except for conjunctions,
  316 +prepositions (e.g.\ on, of, by, and, or, but, from, with, without,
  317 +under) and definite and indefinite articles (the, a, an) unless they
  318 +appear at the beginning. Formula letters must be typeset as in the text.
  319 +Titles have no end punctuation.
  320 +
  321 +If a long \verb|\title| must be divided please use the code \verb|\\|
  322 +(for new line).
  323 +
  324 +If you are to produce running heads for a specific volume the standard
  325 +(of no such running heads) is overwritten with the \verb|[runningheads]|
  326 +option in the \verb|\documentclass| line. For long titles that do not
  327 +fit in the single line of the running head a warning is generated.
  328 +You can specify an abbreviated title for the running head on odd pages
  329 +with the command
  330 +\begin{verbatim}
  331 +\titlerunning{<Your abbreviated contribution title>}
  332 +\end{verbatim}
  333 +
  334 +There is also a possibility to change the text of the title that goes
  335 +into the table of contents (that's for volume editors only -- there is
  336 +no table of contents for a single contribution). For this use the
  337 +command
  338 +\begin{verbatim}
  339 +\toctitle{<Your changed title for the table of contents>}
  340 +\end{verbatim}
  341 +
  342 +An optional subtitle may follow then:
  343 +\begin{verbatim}
  344 +\subtitle{<subtitle of your contribution>}
  345 +\end{verbatim}
  346 +
  347 +Now the name(s) of the author(s) must be given:
  348 +\begin{verbatim}
  349 +\author{<author(s) name(s)>}
  350 +\end{verbatim}
  351 +Numbers referring to different addresses or affiliations are
  352 +to be attached to each author with the \verb|\inst{<no>}| command.
  353 +If there is more than one author, the order is up to you;
  354 +the \verb|\and| command provides for the separation.
  355 +
  356 +If you have done this correctly, this entry now reads, for example:
  357 +\begin{verbatim}
  358 +\author{Ivar Ekeland\inst{1} \and Roger Temam\inst{2}}
  359 +\end{verbatim}
  360 +The first name\footnote{Other initials are optional
  361 +and may be inserted if this is the usual
  362 +way of writing your name, e.g.\ Alfred J.~Holmes, E.~Henry Green.}
  363 +is followed by the surname.
  364 +
  365 +As for the title there exist two additional commands (again for volume
  366 +editors only) for a different author list. One for the running head
  367 +(on odd pages) -- if there is any:
  368 +\begin{verbatim}
  369 +\authorrunning{<abbreviated author list>}
  370 +\end{verbatim}
  371 +And one for the table of contents where the
  372 +affiliation of each author is simply added in braces.
  373 +\begin{verbatim}
  374 +\tocauthor{<enhanced author list for the table of contents>}
  375 +\end{verbatim}
  376 +
  377 +Next the address(es) of institute(s), company etc. is (are) required.
  378 +If there is more than one address, the entries are numbered
  379 +automatically with \verb|\and|, in the order in which you type them.
  380 +Please make sure that the numbers match those placed next to
  381 +to the authors' names to reflect the affiliation.
  382 +\begin{verbatim}
  383 +\institute{<name of an institute>
  384 +\and <name of the next institute>
  385 +\and <name of the next institute>}
  386 +\end{verbatim}
  387 +
  388 +In addition, you can use
  389 +\begin{verbatim}
  390 +\email{<email address>}
  391 +\end{verbatim}
  392 +to provide your email address within \verb|\institute|. If you need to
  393 +typeset the tilde character -- e.g. for your web page in your unix
  394 +system's home directory -- the \verb|\homedir| command will happily do
  395 +this. Please note that, if your email address is given in your paper,
  396 +it will also be included in the meta data of the online version.
  397 +\enlargethispage*{6mm}
  398 +
  399 +\medskip
  400 +If footnote like things are needed anywhere in the contribution heading
  401 +please code
  402 +(immediately after the word where the footnote indicator should be
  403 +placed):
  404 +\begin{verbatim}
  405 +\thanks{<text>}
  406 +\end{verbatim}
  407 +\verb|\thanks| may only appear in \verb|\title|, \verb|\author|
  408 +and \verb|\institute| to footnote anything. If there are two or more
  409 +footnotes or affiliation marks to a specific item separate them with
  410 +\verb|\fnmsep| (i.e. {\itshape f}oot\emph note \emph mark
  411 +\emph{sep}arator).
  412 +
  413 +\medskip\noindent
  414 +The command
  415 +\begin{verbatim}
  416 +\maketitle
  417 +\end{verbatim}
  418 +then formats the complete heading of your article. If you leave
  419 +it out the work done so far will produce \emph{no} text.
  420 +
  421 +Then the abstract should follow. Simply code
  422 +\begin{verbatim}
  423 +\begin{abstract}
  424 +<Text of the summary of your article>
  425 +\end{abstract}
  426 +\end{verbatim}
  427 +or refer to the demonstration file {\tt llncs.dem} for an example or
  428 +to the {\em Sample Input\/} on p.~\pageref{samppage}.
  429 +
  430 +\subsubsection{Remark to Running Heads and the Table of Contents}
  431 +\leavevmode\\[\medskipamount]
  432 +If you are the author of a single contribution you normally have no
  433 +running heads and no table of contents. Both are done only by the editor
  434 +of the volume or at the printers.
  435 +%
  436 +\section{Special Commands for the Volume Editor}
  437 +The volume editor can produce a complete camera ready output including
  438 +running heads, a table of contents, preliminary text (frontmatter), and
  439 +index or glossary. For activating the running heads there is the class
  440 +option \verb|[runningheads]|.
  441 +
  442 +The table of contents of the volume is printed wherever
  443 +\verb|\tableofcontents| is placed. A simple compilation of all
  444 +contributions (fields \verb|\title| and \verb|\author|) is done. If you
  445 +wish to change this automatically produced list use the commands
  446 +\begin{verbatim}
  447 +\titlerunning \toctitle
  448 +\authorrunning \tocauthor
  449 +\end{verbatim}
  450 +to enhance the information in the specific contributions. See the
  451 +demonstration file \verb|llncs.dem| for examples.
  452 +
  453 +An additional structure can be added to the table of contents with the
  454 +\verb|\addtocmark{<text>}| command. It has an optional numerical
  455 +argument, a digit from 1 through 3. 3 (the default) makes an unnumbered
  456 +chapter like entry in the table of contents. If you code
  457 +\verb|\addtocmark[2]{text}| the corresponding page number is listed
  458 +also, \verb|\addtocmark[1]{text}| even introduces a chapter number
  459 +beyond it.
  460 +%
  461 +\section{How to Code Your Text}
  462 +%
  463 +The contribution title and all headings should be capitalized
  464 +except for conjunctions, prepositions (e.g.\ on, of, by, and, or, but,
  465 +from, with, without, under) and definite and indefinite articles (the,
  466 +a, an) unless they appear at the beginning. Formula letters must be
  467 +typeset as in the text.
  468 +
  469 +Headings will be automatically numbered by the following codes.\\[2mm]
  470 +{\itshape Sample Input}
  471 +\begin{verbatim}
  472 +\section{This is a First-Order Title}
  473 +\subsection{This is a Second-Order Title}
  474 +\subsubsection{This is a Third-Order Title.}
  475 +\paragraph{This is a Fourth-Order Title.}
  476 +\end{verbatim}
  477 +\verb|\section| and \verb|\subsection| have no end punctuation.\\
  478 +\verb|\subsubsection| and \verb|\paragraph|
  479 +need to be punctuated at the end.
  480 +
  481 +In addition to the above-mentioned headings your text may be structured
  482 +by subsections indicated by run-in headings (theorem-like environments).
  483 +All the theorem-like environments are numbered automatically
  484 +throughout the sections of your document -- each with its own counter.
  485 +If you want the theorem-like environments to use the same counter
  486 +just specify the documentclass option \verb|envcountsame|:
  487 +\begin{verbatim}
  488 +\documentclass[envcountsame]{llncs}
  489 +\end{verbatim}
  490 +If your first call for a theorem-like environment then is e.g.
  491 +\verb|\begin{lemma}|, it will be numbered 1; if corollary follows,
  492 +this will be numbered 2; if you then call lemma again, this will be
  493 +numbered 3.
  494 +
  495 +But in case you want to reset such counters to 1 in each section,
  496 +please specify the documentclass option \verb|envcountreset|:
  497 +\begin{verbatim}
  498 +\documentclass[envcountreset]{llncs}
  499 +\end{verbatim}
  500 +
  501 +Even a numbering on section level (including the section counter) is
  502 +possible with the documentclass option \verb|envcountsect|.
  503 +
  504 +\section{Predefined Theorem like Environments}\label{builtintheo}
  505 +The following variety of run-in headings are at your disposal:
  506 +\begin{alpherate}
  507 +\item
  508 +{\bfseries Bold} run-in headings with italicized text
  509 +as built-in environments:
  510 +\begin{verbatim}
  511 +\begin{corollary} <text> \end{corollary}
  512 +\begin{lemma} <text> \end{lemma}
  513 +\begin{proposition} <text> \end{proposition}
  514 +\begin{theorem} <text> \end{theorem}
  515 +\end{verbatim}
  516 +\item
  517 +The following generally appears as {\itshape italic} run-in heading:
  518 +\begin{verbatim}
  519 +\begin{proof} <text> \qed \end{proof}
  520 +\end{verbatim}
  521 +It is unnumbered and may contain an eye catching square (call for that
  522 +with \verb|\qed|) before the environment ends.
  523 +\item
  524 +Further {\itshape italic} or {\bfseries bold} run-in headings with roman
  525 +environment body may also occur:
  526 +\begin{verbatim}
  527 +\begin{definition} <text> \end{definition}
  528 +\begin{example} <text> \end{example}
  529 +\begin{exercise} <text> \end{exercise}
  530 +\begin{note} <text> \end{note}
  531 +\begin{problem} <text> \end{problem}
  532 +\begin{question} <text> \end{question}
  533 +\begin{remark} <text> \end{remark}
  534 +\begin{solution} <text> \end{solution}
  535 +\end{verbatim}
  536 +\end{alpherate}
  537 +
  538 +\section{Defining your Own Theorem like Environments}
  539 +We have enhanced the standard \verb|\newtheorem| command and slightly
  540 +changed its syntax to get two new commands \verb|\spnewtheorem| and
  541 +\verb|\spnewtheorem*| that now can be used to define additional
  542 +environments. They require two additional arguments namely the type
  543 +style in which the keyword of the environment appears and second the
  544 +style for the text of your new environment.
  545 +
  546 +\verb|\spnewtheorem| can be used in two ways.
  547 +\subsection{Method 1 {\itshape (preferred)}}
  548 +You may want to create an environment that shares its counter
  549 +with another environment, say {\em main theorem\/} to be numbered like
  550 +the predefined {\em theorem\/}. In this case, use the syntax
  551 +\begin{verbatim}
  552 +\spnewtheorem{<env_nam>}[<num_like>]{<caption>}
  553 +{<cap_font>}{<body_font>}
  554 +\end{verbatim}
  555 +
  556 +\noindent
  557 +Here the environment with which the new environment should share its
  558 +counter is specified with the optional argument \verb|[<num_like>]|.
  559 +
  560 +\paragraph{Sample Input}
  561 +\begin{verbatim}
  562 +\spnewtheorem{mainth}[theorem]{Main Theorem}{\bfseries}{\itshape}
  563 +\begin{theorem} The early bird gets the worm. \end{theorem}
  564 +\begin{mainth} The early worm gets eaten. \end{mainth}
  565 +\end{verbatim}
  566 +\medskip\noindent
  567 +{\em Sample Output}
  568 +
  569 +\medskip\noindent
  570 +{\bfseries Theorem 3.}\enspace {\em The early bird gets the worm.}
  571 +
  572 +\medskip\noindent
  573 +{\bfseries Main Theorem 4.} The early worm gets eaten.
  574 +
  575 +\bigskip
  576 +The sharing of the default counter (\verb|[theorem]|) is desired. If you
  577 +omit the optional second argument of \verb|\spnewtheorem| a separate
  578 +counter for your new environment is used throughout your document.
  579 +
  580 +\subsection[Method 2]{Method 2 {\itshape (assumes {\tt[envcountsect]}
  581 +documentstyle option)}}
  582 +\begin{verbatim}
  583 +\spnewtheorem{<env_nam>}{<caption>}[<within>]
  584 +{<cap_font>}{<body_font>}
  585 +\end{verbatim}
  586 +
  587 +\noindent
  588 +This defines a new environment \verb|<env_nam>| which prints the caption
  589 +\verb|<caption>| in the font \verb|<cap_font>| and the text itself in
  590 +the font \verb|<body_font>|. The environment is numbered beginning anew
  591 +with every new sectioning element you specify with the optional
  592 +parameter \verb|<within>|.
  593 +
  594 +\medskip\noindent
  595 +\paragraph{Example} \leavevmode
  596 +
  597 +\medskip\noindent
  598 +\verb|\spnewtheorem{joke}{Joke}[subsection]{\bfseries}{\rmfamily}|
  599 +
  600 +\medskip
  601 +\noindent defines a new environment called \verb|joke| which prints the
  602 +caption {\bfseries Joke} in boldface and the text in roman. The jokes are
  603 +numbered starting from 1 at the beginning of every subsection with the
  604 +number of the subsection preceding the number of the joke e.g. 7.2.1 for
  605 +the first joke in subsection 7.2.
  606 +
  607 +\subsection{Unnumbered Environments}
  608 +If you wish to have an unnumbered environment, please
  609 +use the syntax
  610 +\begin{verbatim}
  611 +\spnewtheorem*{<env_nam>}{<caption>}{<cap_font>}{<body_font>}
  612 +\end{verbatim}
  613 +
  614 +\section{Program Codes}
  615 +In case you want to show pieces of program code, just use the
  616 +\verb|verbatim| environment or the \verb|verbatim| package of \LaTeX.
  617 +(There also exist various pretty printers for some programming
  618 +languages.)
  619 +%
  620 +\noindent
  621 +\subsection*{Sample Input {\rmfamily(of a simple
  622 +contribution)}}\label{samppage}
  623 +\begin{verbatim}
  624 +\title{Hamiltonian Mechanics}
  625 +
  626 +\author{Ivar Ekeland\inst{1} \and Roger Temam\inst{2}}
  627 +
  628 +\institute{Princeton University, Princeton NJ 08544, USA
  629 +\and
  630 +Universit\'{e} de Paris-Sud,
  631 +Laboratoire d'Analyse Num\'{e}rique, B\^{a}timent 425,\\
  632 +F-91405 Orsay Cedex, France}
  633 +
  634 +\maketitle
  635 +%
  636 +\begin{abstract}
  637 +This paragraph shall summarize the contents of the paper
  638 +in short terms.
  639 +\end{abstract}
  640 +%
  641 +\section{Fixed-Period Problems: The Sublinear Case}
  642 +%
  643 +With this chapter, the preliminaries are over, and we begin the
  644 +search for periodic solutions \dots
  645 +%
  646 +\subsection{Autonomous Systems}
  647 +%
  648 +In this section we will consider the case when the Hamiltonian
  649 +$H(x)$ \dots
  650 +%
  651 +\subsubsection*{The General Case: Nontriviality.}
  652 +%
  653 +We assume that $H$ is
  654 +$\left(A_{\infty}, B_{\infty}\right)$-subqua\-dra\-tic
  655 +at infinity, for some constant \dots
  656 +%
  657 +\paragraph{Notes and Comments.}
  658 +The first results on subharmonics were \dots
  659 +%
  660 +\begin{proposition}
  661 +Assume $H'(0)=0$ and $ H(0)=0$. Set \dots
  662 +\end{proposition}
  663 +\begin{proof}[of proposition]
  664 +Condition (8) means that, for every $\delta'>\delta$, there is
  665 +some $\varepsilon>0$ such that \dots \qed
  666 +\end{proof}
  667 +%
  668 +\begin{example}[\rmfamily (External forcing)]
  669 +Consider the system \dots
  670 +\end{example}
  671 +\begin{corollary}
  672 +Assume $H$ is $C^{2}$ and
  673 +$\left(a_{\infty}, b_{\infty}\right)$-subquadratic
  674 +at infinity. Let \dots
  675 +\end{corollary}
  676 +\begin{lemma}
  677 +Assume that $H$ is $C^{2}$ on $\bbbr^{2n}\backslash \{0\}$
  678 +and that $H''(x)$ is \dots
  679 +\end{lemma}
  680 +\begin{theorem}[(Ghoussoub-Preiss)]
  681 +Let $X$ be a Banach Space and $\Phi:X\to\bbbr$ \dots
  682 +\end{theorem}
  683 +\begin{definition}
  684 +We shall say that a $C^{1}$ function $\Phi:X\to\bbbr$
  685 +satisfies \dots
  686 +\end{definition}
  687 +\end{verbatim}
  688 +{\itshape Sample Output\/} (follows on the next page together with
  689 +examples of the above run-in headings)
  690 +\newcounter{save}\setcounter{save}{\value{section}}
  691 +{\def\addtocontents#1#2{}%
  692 +\def\addcontentsline#1#2#3{}%
  693 +\def\markboth#1#2{}%
  694 +%
  695 +\title{Hamiltonian Mechanics}
  696 +
  697 +\author{Ivar Ekeland\inst{1} \and Roger Temam\inst{2}}
  698 +
  699 +\institute{Princeton University, Princeton NJ 08544, USA
  700 +\and
  701 +Universit\'{e} de Paris-Sud,
  702 +Laboratoire d'Analyse Num\'{e}rique, B\^{a}timent 425,\\
  703 +F-91405 Orsay Cedex, France}
  704 +
  705 +\maketitle
  706 +%
  707 +\begin{abstract}
  708 +This paragraph shall summarize the contents of the paper
  709 +in short terms.
  710 +\end{abstract}
  711 +%
  712 +\section{Fixed-Period Problems: The Sublinear Case}
  713 +%
  714 +With this chapter, the preliminaries are over, and we begin the search
  715 +for periodic solutions \dots
  716 +%
  717 +\subsection{Autonomous Systems}
  718 +%
  719 +In this section we will consider the case when the Hamiltonian
  720 +$H(x)$ \dots
  721 +%
  722 +\subsubsection{The General Case: Nontriviality.}
  723 +%
  724 +We assume that $H$ is
  725 +$\left(A_{\infty}, B_{\infty}\right)$-subqua\-dra\-tic at
  726 +infinity, for some constant \dots
  727 +%
  728 +\paragraph{Notes and Comments.}
  729 +The first results on subharmonics were \dots
  730 +%
  731 +\begin{proposition}
  732 +Assume $H'(0)=0$ and $ H(0)=0$. Set \dots
  733 +\end{proposition}
  734 +\begin{proof}[of proposition]
  735 +Condition (8) means that, for every $\delta'>\delta$, there is
  736 +some $\varepsilon>0$ such that \dots \qed
  737 +\end{proof}
  738 +%
  739 +\begin{example}[{{\rmfamily External forcing}}]
  740 +Consider the system \dots
  741 +\end{example}
  742 +\begin{corollary}
  743 +Assume $H$ is $C^{2}$ and
  744 +$\left(a_{\infty}, b_{\infty}\right)$-subquadratic
  745 +at infinity. Let \dots
  746 +\end{corollary}
  747 +\begin{lemma}
  748 +Assume that $H$ is $C^{2}$ on $\bbbr^{2n}\backslash \{0\}$
  749 +and that $H''(x)$ is \dots
  750 +\end{lemma}
  751 +\begin{theorem}[Ghoussoub-Preiss]
  752 +Let $X$ be a Banach Space and $\Phi:X\to\bbbr$ \dots
  753 +\end{theorem}
  754 +\begin{definition}
  755 +We shall say that a $C^{1}$ function $\Phi:X\to\bbbr$ satisfies \dots
  756 +\end{definition}
  757 +%
  758 +}\setcounter{section}{\value{save}}
  759 +\section{Fine Tuning of the Text}
  760 +%
  761 +The following should be used to improve the readability of the text:
  762 +\begin{flushleft}
  763 +\begin{tabular}{@{}p{.19\textwidth}p{.79\textwidth}}
  764 +\verb|\,| & a thin space, e.g.\ between numbers or between units
  765 + and num\-bers; a line division will not be made
  766 + following this space\\
  767 +\verb|--| & en dash; two strokes, without a space at either end\\
  768 +\verb*| -- |& en dash; two strokes, with a space at either end\\
  769 +\verb|-| & hyphen; one stroke, no space at either end\\
  770 +\verb|$-$| & minus, in the text {\em only} \\[8mm]
  771 +{\em Input} & \verb|21\,$^{\circ}$C etc.,|\\
  772 + & \verb|Dr h.\,c.\,Rockefellar-Smith \dots|\\
  773 + & \verb|20,000\,km and Prof.\,Dr Mallory \dots|\\
  774 + & \verb|1950--1985 \dots|\\
  775 + & \verb|this -- written on a computer -- is now printed|\\
  776 + & \verb|$-30$\,K \dots|\\[3mm]
  777 +{\em Output}& 21\,$^{\circ}$C etc., Dr h.\,c.\,Rockefellar-Smith \dots\\
  778 + & 20,000\,km and Prof.\,Dr Mallory \dots\\
  779 + & 1950--1985 \dots\\
  780 + & this -- written on a computer -- is now printed\\
  781 + & $-30$\,K \dots
  782 +\end{tabular}
  783 +\end{flushleft}
  784 +%
  785 +\section {Special Typefaces}
  786 +%
  787 +Normal type (roman text) need not be coded. {\itshape Italic}
  788 +(\verb|{\em <text>}| better still \verb|\emph{<text>}|) or, if
  789 +necessary, {\bfseries boldface} should be used for emphasis.\\[6pt]
  790 +\begin{minipage}[t]{\textwidth}
  791 +\begin{flushleft}
  792 +\begin{tabular}{@{}p{.25\textwidth}@{\hskip6pt}p{.73\textwidth}@{}}
  793 +\verb|{\itshape Text}| & {\itshape Italicized Text}\\[2pt]
  794 +\verb|{\em Text}| & {\em Emphasized Text --
  795 + if you would like to emphasize a {\em definition} within an
  796 + italicized text (e.g.\ of a {\em theorem)} you should code the
  797 + expression to be emphasized by} \verb|\em|.\\[2pt]
  798 +\verb|{\bfseries Text}|& {\bfseries Important Text}\\[2pt]
  799 +\verb|\vec{Symbol}| & Vectors may only appear in math mode. The default
  800 + \LaTeX{} vector symbol has been adapted\footnotemark\
  801 + to LLNCS conventions.\\[2pt]
  802 + & \verb|$\vec{A \times B\cdot C}| yields $\vec{A\times B\cdot C}$\\
  803 + & \verb|$\vec{A}^{T} \otimes \vec{B} \otimes|\\
  804 + & \verb|\vec{\hat{D}}$|yields $\vec{A}^{T} \otimes \vec{B} \otimes
  805 +\vec{\hat{D}}$
  806 +\end{tabular}
  807 +\end{flushleft}
  808 +\end{minipage}
  809 +
  810 +\footnotetext{If you absolutely must revive the original \LaTeX{}
  811 +design of the vector symbol (as an arrow accent), please specify the
  812 +option \texttt{[orivec]} in the \texttt{documentclass} line.}
  813 +\newpage
  814 +%
  815 +\section {Footnotes}
  816 +%
  817 +Footnotes within the text should be coded:
  818 +\begin{verbatim}
  819 +\footnote{Text}
  820 +\end{verbatim}
  821 +{\itshape Sample Input}
  822 +\begin{flushleft}
  823 +Text with a footnote\verb|\footnote{The |{\tt footnote is automatically
  824 +numbered.}\verb|}| and text continues \dots
  825 +\end{flushleft}
  826 +{\itshape Sample Output}
  827 +\begin{flushleft}
  828 +Text with a footnote\footnote{The footnote is automatically numbered.}
  829 +and text continues \dots
  830 +\end{flushleft}
  831 +%
  832 +\section {Lists}
  833 +%
  834 +Please code lists as described below:\\[2mm]
  835 +{\itshape Sample Input}
  836 +\begin{verbatim}
  837 +\begin{enumerate}
  838 + \item First item
  839 + \item Second item
  840 + \begin{enumerate}
  841 + \item First nested item
  842 + \item Second nested item
  843 + \end{enumerate}
  844 + \item Third item
  845 +\end{enumerate}
  846 +\end{verbatim}
  847 +{\itshape Sample Output}
  848 + \begin{enumerate}
  849 +\item First item
  850 +\item Second item
  851 + \begin{enumerate}
  852 + \item First nested item
  853 + \item Second nested item
  854 + \end{enumerate}
  855 +\item Third item
  856 +\end{enumerate}
  857 +%
  858 +\section {Figures}
  859 +%
  860 +Figure environments should be inserted after (not in)
  861 +the paragraph in which the figure is first mentioned.
  862 +They will be numbered automatically.
  863 +
  864 +Preferably the images should be enclosed as PostScript files -- best as
  865 +EPS data using the epsfig package.
  866 +
  867 +If you cannot include them into your output this way and use other
  868 +techniques for a separate production,
  869 +the figures (line drawings and those containing halftone inserts
  870 +as well as halftone figures) {\em should not be pasted into your
  871 +laserprinter output}. They should be enclosed separately in camera-ready
  872 +form (original artwork, glossy prints, photographs and/or slides). The
  873 +lettering should be suitable for reproduction, and after a
  874 +probably necessary reduction the height of capital letters should be at
  875 +least 1.8\,mm and not more than 2.5\,mm.
  876 +Check that lines and other details are uniformly black and
  877 +that the lettering on figures is clearly legible.
  878 +
  879 +To leave the desired amount of space for the height of
  880 +your figures, please use the coding described below.
  881 +As can be seen in the output, we will automatically
  882 +provide 1\,cm space above and below the figure,
  883 +so that you should only leave the space equivalent to the size of the
  884 +figure itself. Please note that ``\verb|x|'' in the following
  885 +coding stands for the actual height of the figure:
  886 +\begin{verbatim}
  887 +\begin{figure}
  888 +\vspace{x cm}
  889 +\caption[ ]{...text of caption...} (Do type [ ])
  890 +\end{figure}
  891 +\end{verbatim}
  892 +\begin{flushleft}
  893 +{\itshape Sample Input}
  894 +\end{flushleft}
  895 +\begin{verbatim}
  896 +\begin{figure}
  897 +\vspace{2.5cm}
  898 +\caption{This is the caption of the figure displaying a white
  899 +eagle and a white horse on a snow field}
  900 +\end{figure}
  901 +\end{verbatim}
  902 +\begin{flushleft}
  903 +{\itshape Sample Output}
  904 +\end{flushleft}
  905 +\begin{figure}
  906 +\vspace{2.5cm}
  907 +\caption{This is the caption of the figure displaying a white eagle and
  908 +a white horse on a snow field}
  909 +\end{figure}
  910 +%
  911 +\section{Tables}
  912 +%
  913 +Table captions should be treated
  914 +in the same way as figure legends, except that
  915 +the table captions appear {\itshape above} the tables. The tables
  916 +will be numbered automatically.
  917 +%
  918 +\subsection{Tables Coded with \protect\LaTeX{}}
  919 +%
  920 +Please use the following coding:\\[2mm]
  921 +{\itshape Sample Input}
  922 +\begin{verbatim}
  923 +\begin{table}
  924 +\caption{Critical $N$ values}
  925 +\begin{tabular}{llllll}
  926 +\hline\noalign{\smallskip}
  927 +${\mathrm M}_\odot$ & $\beta_{0}$ & $T_{\mathrm c6}$ & $\gamma$
  928 + & $N_{\mathrm{crit}}^{\mathrm L}$
  929 + & $N_{\mathrm{crit}}^{\mathrm{Te}}$\\
  930 +\noalign{\smallskip}
  931 +\hline
  932 +\noalign{\smallskip}
  933 + 30 & 0.82 & 38.4 & 35.7 & 154 & 320 \\
  934 + 60 & 0.67 & 42.1 & 34.7 & 138 & 340 \\
  935 +120 & 0.52 & 45.1 & 34.0 & 124 & 370 \\
  936 +\hline
  937 +\end{tabular}
  938 +\end{table}
  939 +\end{verbatim}
  940 +
  941 +\medskip\noindent{\itshape Sample Output}
  942 +\begin{table}
  943 +\caption{Critical $N$ values}
  944 +\begin{center}
  945 +\renewcommand{\arraystretch}{1.4}
  946 +\setlength\tabcolsep{3pt}
  947 +\begin{tabular}{llllll}
  948 +\hline\noalign{\smallskip}
  949 +${\mathrm M}_\odot$ & $\beta_{0}$ & $T_{\mathrm c6}$ & $\gamma$
  950 + & $N_{\mathrm{crit}}^{\mathrm L}$
  951 + & $N_{\mathrm{crit}}^{\mathrm{Te}}$\\
  952 +\noalign{\smallskip}
  953 +\hline
  954 +\noalign{\smallskip}
  955 + 30 & 0.82 & 38.4 & 35.7 & 154 & 320 \\
  956 + 60 & 0.67 & 42.1 & 34.7 & 138 & 340 \\
  957 +120 & 0.52 & 45.1 & 34.0 & 124 & 370 \\
  958 +\hline
  959 +\end{tabular}
  960 +\end{center}
  961 +\end{table}
  962 +
  963 +Before continuing your text you need an empty line. \dots
  964 +
  965 +\vspace{3mm}
  966 +For further information you will find a complete description of
  967 +the tabular environment
  968 +on p.~62~ff. and p.~204 of the {\em \LaTeX{} User's Guide \& Reference
  969 +Manual\/} by Leslie Lamport.
  970 +%
  971 +\subsection{Tables Not Coded with \protect\LaTeX{}}
  972 +%
  973 +If you do not wish to code your table using \LaTeX{}
  974 +but prefer to have it reproduced separately,
  975 +proceed as for figures and use the following coding:\\[2mm]
  976 +{\itshape Sample Input}
  977 +\begin{verbatim}
  978 +\begin{table}
  979 +\caption{text of your caption}
  980 +\vspace{x cm} % the actual height needed for your table
  981 +\end{table}
  982 +\end{verbatim}
  983 +%
  984 +\subsection{Signs and Characters}
  985 +%
  986 +\subsubsection*{Special Signs.}
  987 +%
  988 +You may need to use special signs. The available ones are listed in the
  989 +{\em \LaTeX{} User's Guide \& Reference Manual\/} by Leslie Lamport,
  990 +pp.~41\,ff.
  991 +We have created further symbols for math mode (enclosed in \$):
  992 +\begin{center}
  993 +\begin{tabular}{l@{\hspace{1em}yields\hspace{1em}}
  994 +c@{\hspace{3em}}l@{\hspace{1em}yields\hspace{1em}}c}
  995 +\verb|\grole| & $\grole$ & \verb|\getsto| & $\getsto$\\
  996 +\verb|\lid| & $\lid$ & \verb|\gid| & $\gid$
  997 +\end{tabular}
  998 +\end{center}
  999 +%
  1000 +\subsubsection*{Gothic (Fraktur).}
  1001 +%
  1002 +If gothic letters are {\itshape necessary}, please use those of the
  1003 +relevant \AmSTeX{} alphabet which are available using the amstex
  1004 +package of the American Mathematical Society.
  1005 +
  1006 +In \LaTeX{} only the following gothic letters are available:
  1007 +\verb|$\Re$| yields $\Re$ and \verb|$\Im$| yields $\Im$. These should
  1008 +{\itshape not\/} be used when you need gothic letters for your contribution.
  1009 +Use \AmSTeX{} gothic as explained above. For the real and the imaginary
  1010 +parts of a complex number within math mode you should use instead:
  1011 +\verb|$\mathrm{Re}$| (which yields Re) or \verb|$\mathrm{Im}$| (which
  1012 +yields Im).
  1013 +%
  1014 +\subsubsection*{Script.}
  1015 +%
  1016 +For script capitals use the coding
  1017 +\begin{center}
  1018 +\begin{tabular}{l@{\hspace{1em}which yields\hspace{1em}}c}
  1019 +\verb|$\mathcal{AB}$| & $\mathcal{AB}$
  1020 +\end{tabular}
  1021 +\end{center}
  1022 +(see p.~42 of the \LaTeX{} book).
  1023 +%
  1024 +\subsubsection*{Special Roman.}
  1025 +%
  1026 +If you need other symbols than those below, you could use
  1027 +the blackboard bold characters of \AmSTeX{}, but there might arise
  1028 +capacity problems
  1029 +in loading additional \AmSTeX{} fonts. Therefore we created
  1030 +the blackboard bold characters listed below.
  1031 +Some of them are not esthetically
  1032 +satisfactory. This need not deter you from using them:
  1033 +in the final printed form they will be
  1034 +replaced by the well-designed MT (monotype) characters of
  1035 +the phototypesetting machine.
  1036 +\begin{flushleft}
  1037 +\begin{tabular}{@{}ll@{ yields }
  1038 +c@{\hspace{1.em}}ll@{ yields }c}
  1039 +\verb|\bbbc| & (complex numbers) & $\bbbc$
  1040 + & \verb|\bbbf| & (blackboard bold F) & $\bbbf$\\
  1041 +\verb|\bbbh| & (blackboard bold H) & $\bbbh$
  1042 + & \verb|\bbbk| & (blackboard bold K) & $\bbbk$\\
  1043 +\verb|\bbbm| & (blackboard bold M) & $\bbbm$
  1044 + & \verb|\bbbn| & (natural numbers N) & $\bbbn$\\
  1045 +\verb|\bbbp| & (blackboard bold P) & $\bbbp$
  1046 + & \verb|\bbbq| & (rational numbers) & $\bbbq$\\
  1047 +\verb|\bbbr| & (real numbers) & $\bbbr$
  1048 + & \verb|\bbbs| & (blackboard bold S) & $\bbbs$\\
  1049 +\verb|\bbbt| & (blackboard bold T) & $\bbbt$
  1050 + & \verb|\bbbz| & (whole numbers) & $\bbbz$\\
  1051 +\verb|\bbbone| & (symbol one) & $\bbbone$
  1052 +\end{tabular}
  1053 +\end{flushleft}
  1054 +\begin{displaymath}
  1055 +\begin{array}{c}
  1056 +\bbbc^{\bbbc^{\bbbc}} \otimes
  1057 +\bbbf_{\bbbf_{\bbbf}} \otimes
  1058 +\bbbh_{\bbbh_{\bbbh}} \otimes
  1059 +\bbbk_{\bbbk_{\bbbk}} \otimes
  1060 +\bbbm^{\bbbm^{\bbbm}} \otimes
  1061 +\bbbn_{\bbbn_{\bbbn}} \otimes
  1062 +\bbbp^{\bbbp^{\bbbp}}\\[2mm]
  1063 +\otimes
  1064 +\bbbq_{\bbbq_{\bbbq}} \otimes
  1065 +\bbbr^{\bbbr^{\bbbr}} \otimes
  1066 +\bbbs^{\bbbs_{\bbbs}} \otimes
  1067 +\bbbt^{\bbbt^{\bbbt}} \otimes
  1068 +\bbbz \otimes
  1069 +\bbbone^{\bbbone_{\bbbone}}
  1070 +\end{array}
  1071 +\end{displaymath}
  1072 +%
  1073 +\section{References}
  1074 +\label{refer}
  1075 +%
  1076 +There are three reference systems available; only one, of course,
  1077 +should be used for your contribution. With each system (by
  1078 +number only, by letter-number or by author-year) a reference list
  1079 +containing all citations in the
  1080 +text, should be included at the end of your contribution placing the
  1081 +\LaTeX{} environment \verb|thebibliography| there.
  1082 +For an overall information on that environment
  1083 +see the {\em \LaTeX{} User's Guide \& Reference
  1084 +Manual\/} by Leslie Lamport, p.~71.
  1085 +
  1086 +There is a special {\sc Bib}\TeX{} style for LLNCS that works along
  1087 +with the class: \verb|splncs.bst|
  1088 +-- call for it with a line \verb|\bibliographystyle{splncs}|.
  1089 +If you plan to use another {\sc Bib}\TeX{} style you are customed to,
  1090 +please specify the option \verb|[oribibl]| in the
  1091 +\verb|documentclass| line, like:
  1092 +\begin{verbatim}
  1093 +\documentclass[oribibl]{llncs}
  1094 +\end{verbatim}
  1095 +This will retain the original \LaTeX{} code for the bibliographic
  1096 +environment and the \verb|\cite| mechanism that many {\sc Bib}\TeX{}
  1097 +applications rely on.
  1098 +%
  1099 +\subsection{References by Letter-Number or by Number Only}
  1100 +%
  1101 +References are cited in the text -- using the \verb|\cite|
  1102 +command of \LaTeX{} -- by number or by letter-number in square
  1103 +brackets, e.g.\ [1] or [E1, S2], [P1], according to your use of the
  1104 +\verb|\bibitem| command in the \verb|thebibliography| environment. The
  1105 +coding is as follows: if you choose your own label for the sources by
  1106 +giving an optional argument to the \verb|\bibitem| command the citations
  1107 +in the text are marked with the label you supplied. Otherwise a simple
  1108 +numbering is done, which is preferred.
  1109 +\begin{verbatim}
  1110 +The results in this section are a refined version
  1111 +of \cite{clar:eke}; the minimality result of Proposition~14
  1112 +was the first of its kind.
  1113 +\end{verbatim}
  1114 +The above input produces the citation: ``\dots\ refined version of
  1115 +[CE1]; the min\-i\-mality\dots''. Then the \verb|\bibitem| entry of
  1116 +the \verb|thebibliography| environment should read:
  1117 +\begin{verbatim}
  1118 +\begin{thebibliography}{[MT1]}
  1119 +.
  1120 +.
  1121 +\bibitem[CE1]{clar:eke}
  1122 +Clarke, F., Ekeland, I.:
  1123 +Nonlinear oscillations and boundary-value problems for
  1124 +Hamiltonian systems.
  1125 +Arch. Rat. Mech. Anal. 78, 315--333 (1982)
  1126 +.
  1127 +.
  1128 +\end{thebibliography}
  1129 +\end{verbatim}
  1130 +The complete bibliography looks like this:
  1131 +%
  1132 +\begin{thebibliography}{[MT1]}
  1133 +%
  1134 +\bibitem[CE1]{clar:eke}
  1135 +Clarke, F., Ekeland, I.:
  1136 +Nonlinear oscillations and
  1137 +boundary-value problems for Hamiltonian systems.
  1138 +Arch. Rat. Mech. Anal. 78, 315--333 (1982)
  1139 +%
  1140 +\bibitem[CE2]{clar:eke:2}
  1141 +Clarke, F., Ekeland, I.:
  1142 +Solutions p\'{e}riodiques, du
  1143 +p\'{e}riode donn\'{e}e, des \'{e}quations hamiltoniennes.
  1144 +Note CRAS Paris 287, 1013--1015 (1978)
  1145 +%
  1146 +\bibitem[MT1]{mich:tar}
  1147 +Michalek, R., Tarantello, G.:
  1148 +Subharmonic solutions with prescribed minimal
  1149 +period for nonautonomous Hamiltonian systems.
  1150 +J. Diff. Eq. 72, 28--55 (1988)
  1151 +%
  1152 +\bibitem[Ta1]{tar}
  1153 +Tarantello, G.:
  1154 +Subharmonic solutions for Hamiltonian
  1155 +systems via a $\bbbz_{p}$ pseudoindex theory.
  1156 +Annali di Matematica Pura (to appear)
  1157 +%
  1158 +\bibitem[Ra1]{rab}
  1159 +Rabinowitz, P.:
  1160 +On subharmonic solutions of a Hamiltonian system.
  1161 +Comm. Pure Appl. Math. 33, 609--633 (1980)
  1162 +\end{thebibliography}
  1163 +%
  1164 +\subsubsection*{Number-Only System.}
  1165 +%
  1166 +For this preferred system do not use the optional argument
  1167 +in the \verb|\bibitem| command: then, only numbers will
  1168 +appear for the citations in the text (enclosed in square brackets)
  1169 +as well as for the marks in your
  1170 +bibliography (here the number is only end-punctuated without
  1171 +square brackets).
  1172 +
  1173 +Subsequent citation numbers in the text are collapsed to ranges.
  1174 +Non-numeric and undefined labels are handled correctly but no sorting is
  1175 +done.
  1176 +
  1177 +E.g., \verb|\cite{n1,n3,n2,n3,n4,n5,foo,n1,n2,n3,?,n4,n5}| -- where
  1178 +\verb|n|$x$ is the key of the $x^{\mathrm{th}}$ \verb|\bibitem|
  1179 +command in sequence, \verb|foo| is the key of a \verb|\bibitem| with an
  1180 +optional argument, and \verb|?| is an undefined reference -- gives
  1181 +1,3,2-5,foo,1-3,?,4,5 as the citation reference.
  1182 +
  1183 +\begin{verbatim}
  1184 +\begin{thebibliography}{1}
  1185 +\bibitem {clar:eke}
  1186 +Clarke, F., Ekeland, I.:
  1187 +Nonlinear oscillations and boundary-value problems for
  1188 +Hamiltonian systems.
  1189 +Arch. Rat. Mech. Anal. 78, 315--333 (1982)
  1190 +\end{thebibliography}
  1191 +\end{verbatim}
  1192 +%
  1193 +\subsection{Author-Year System}
  1194 +%
  1195 +References are cited in the text by name and year in parentheses
  1196 +and should look as follows:
  1197 +(Smith 1970, 1980), (Ekeland et al. 1985, Theorem 2), (Jones and Jaffe
  1198 +1986; Farrow 1988, Chap.\,2). If the name is part of the sentence
  1199 +only the year may appear in parentheses,
  1200 +e.g.\ Ekeland et al. (1985, Sect.\,2.1)
  1201 +The reference list should contain all citations occurring in the text,
  1202 +ordered alphabetically by surname (with initials following). If there
  1203 +are several works by the same author(s) the references should be listed
  1204 +in the appropriate order indicated below:
  1205 +\begin{alpherate}
  1206 +\setlength{\hfuzz}{5pt}
  1207 +\item
  1208 +One author: list works chronologically;
  1209 +\item
  1210 +Author and same co-author(s): list works chronologically;
  1211 +\item
  1212 +Author and different co-authors: list works alphabetically
  1213 +according to co-authors.
  1214 +\end{alpherate}
  1215 +If there are several works by the same author(s) and in the same year,
  1216 +but which are cited separately, they should be distinguished by the use
  1217 +of ``a'', ``b'' etc., e.g.\ (Smith 1982a), (Ekeland et al. 1982b).
  1218 +%
  1219 +\subsubsection*{How to Code Author-Year System.}
  1220 +%
  1221 +If you want to use this system you have to specify the option
  1222 +\verb|[citeauthoryear]| in the \verb|documentclass|, like:
  1223 +\begin{verbatim}
  1224 +\documentclass[citeauthoryear]{llncs}
  1225 +\end{verbatim}
  1226 +Write your citations in the text explicitly except for the year, leaving
  1227 +that up to \LaTeX{} with the \verb|\cite| command. Then give only the
  1228 +appropriate year as the optional argument (i.e. the label in square
  1229 +brackets) with the \verb|\bibitem| command(s).\\[2mm]
  1230 +{\itshape Sample Input}
  1231 +\begin{verbatim}
  1232 +The results in this section are a refined version
  1233 +of Clarke and Ekeland (\cite{clar:eke}); the minimality result of
  1234 +Proposition~14 was the first of its kind.
  1235 +\end{verbatim}
  1236 +The above input produces the citation: ``\dots\ refined version of
  1237 +Clarke and Ekeland (1982); the minimality\dots''. Then the
  1238 +\verb|\bibitem| entry of \verb|clar:eke| in the \verb|thebibliography|
  1239 +environment should read:
  1240 +\begin{verbatim}
  1241 +\begin{thebibliography}{} % (do not forget {})
  1242 +.
  1243 +.
  1244 +\bibitem[1982]{clar:eke}
  1245 +Clarke, F., Ekeland, I.:
  1246 +Nonlinear oscillations and boundary-value problems for
  1247 +Hamiltonian systems.
  1248 +Arch. Rat. Mech. Anal. 78, 315--333 (1982)
  1249 +.
  1250 +.
  1251 +\end{thebibliography}
  1252 +\end{verbatim}
  1253 +{\itshape Sample Output}
  1254 +\bibauthoryear
  1255 +%
  1256 +\end{document}
OSS-2017/llncsdoc.sty 0 → 100644
@@ -0,0 +1,42 @@ @@ -0,0 +1,42 @@
  1 +% This is LLNCSDOC.STY the modification of the
  2 +% LLNCS class file for the documentation of
  3 +% the class itself.
  4 +%
  5 +\def\AmS{{\protect\usefont{OMS}{cmsy}{m}{n}%
  6 + A\kern-.1667em\lower.5ex\hbox{M}\kern-.125emS}}
  7 +\def\AmSTeX{{\protect\AmS-\protect\TeX}}
  8 +%
  9 +\def\ps@myheadings{\let\@mkboth\@gobbletwo
  10 +\def\@oddhead{\hbox{}\hfil\small\rm\rightmark
  11 +\qquad\thepage}%
  12 +\def\@oddfoot{}\def\@evenhead{\small\rm\thepage\qquad
  13 +\leftmark\hfil}%
  14 +\def\@evenfoot{}\def\sectionmark##1{}\def\subsectionmark##1{}}
  15 +\ps@myheadings
  16 +%
  17 +\setcounter{tocdepth}{2}
  18 +%
  19 +\renewcommand{\labelitemi}{--}
  20 +\newenvironment{alpherate}%
  21 +{\renewcommand{\labelenumi}{\alph{enumi})}\begin{enumerate}}%
  22 +{\end{enumerate}\renewcommand{\labelenumi}{enumi}}
  23 +%
  24 +\def\bibauthoryear{\begingroup
  25 +\def\thebibliography##1{\section*{References}%
  26 + \small\list{}{\settowidth\labelwidth{}\leftmargin\parindent
  27 + \itemindent=-\parindent
  28 + \labelsep=\z@
  29 + \usecounter{enumi}}%
  30 + \def\newblock{\hskip .11em plus .33em minus -.07em}%
  31 + \sloppy
  32 + \sfcode`\.=1000\relax}%
  33 + \def\@cite##1{##1}%
  34 + \def\@lbibitem[##1]##2{\item[]\if@filesw
  35 + {\def\protect####1{\string ####1\space}\immediate
  36 + \write\@auxout{\string\bibcite{##2}{##1}}}\fi\ignorespaces}%
  37 +\begin{thebibliography}{}
  38 +\bibitem[1982]{clar:eke3} Clarke, F., Ekeland, I.: Nonlinear
  39 +oscillations and boundary-value problems for Hamiltonian systems.
  40 +Arch. Rat. Mech. Anal. 78, 315--333 (1982)
  41 +\end{thebibliography}
  42 +\endgroup}
OSS-2017/remreset.sty 0 → 100644
@@ -0,0 +1,39 @@ @@ -0,0 +1,39 @@
  1 +
  2 +% remreset package
  3 +%%%%%%%%%%%%%%%%%%
  4 +
  5 +% Copyright 1997 David carlisle
  6 +% This file may be distributed under the terms of the LPPL.
  7 +% See 00readme.txt for details.
  8 +
  9 +% 1997/09/28 David Carlisle
  10 +
  11 +% LaTeX includes a command \@addtoreset that is used to declare that
  12 +% a counter should be reset every time a second counter is incremented.
  13 +
  14 +% For example the book class has a line
  15 +% \@addtoreset{footnote}{chapter}
  16 +% So that the footnote counter is reset each chapter.
  17 +
  18 +% If you wish to bas a new class on book, but without this counter
  19 +% being reset, then standard LaTeX gives no simple mechanism to do
  20 +% this.
  21 +
  22 +% This package defines |\@removefromreset| which just undoes the effect
  23 +% of \@addtorest. So for example a class file may be defined by
  24 +
  25 +% \LoadClass{book}
  26 +% \@removefromreset{footnote}{chapter}
  27 +
  28 +
  29 +\def\@removefromreset#1#2{{%
  30 + \expandafter\let\csname c@#1\endcsname\@removefromreset
  31 + \def\@elt##1{%
  32 + \expandafter\ifx\csname c@##1\endcsname\@removefromreset
  33 + \else
  34 + \noexpand\@elt{##1}%
  35 + \fi}%
  36 + \expandafter\xdef\csname cl@#2\endcsname{%
  37 + \csname cl@#2\endcsname}}}
  38 +
  39 +
OSS-2017/spb.bib 0 → 100644
@@ -0,0 +1,37 @@ @@ -0,0 +1,37 @@
  1 +@article{naur1969software,
  2 + title={NATO},
  3 + author={Naur, Peter and Randell, Brian},
  4 + year={1969}
  5 +}
  6 +
  7 +@phdthesis{meirelles2013monitoramento,
  8 + title={Monitoramento de m{\'e}tricas de c{\'o}digo-fonte em projetos de software livre},
  9 + author={Meirelles, Paulo Roberto Miranda},
  10 + year={2013},
  11 + school={Universidade de S{\~a}o Paulo},
  12 + url={http://www.teses.usp.br/teses/disponiveis/45/45134/tde-27082013-090242/pt-br.php}
  13 +}
  14 +
  15 +@article{meirelles2009crab,
  16 + title={Crab: Uma software para avalia{\c{c}}{\~a}o de qualidade de c{\'o}digo},
  17 + author={Meirellesunes, Paulo and Challco, Geiser and Morais, Eduardo and Kon, Fabio},
  18 + journal={XXIII SBES-Simp{\'o}sio Brasileiro de Engenharia de Software (XVI Sess{\~a}o de Ferramentas). Citado na p{\'a}g},
  19 + volume={33},
  20 + year={2009}
  21 +}
  22 +
  23 +@mastersthesis{de2013kalibro,
  24 + title={Kalibro: interpreta{\c{c}}{\~a}o de m{\'e}tricas de c{\'o}digo-fonte},
  25 + author={de Oliveira Filho, Carlos Morais},
  26 + year={2013},
  27 + school={Universidade de S{\~a}o Paulo}
  28 +}
  29 +
  30 +@inproceedings{terceiro2010analizo,
  31 + title={Analizo: an extensible multi-language source code analysis and visualization toolkit},
  32 + author={Terceiro, ulo and Rios, Luiz Rom{\'a}rio and Almeida, Lucianna and Chavez, Christina and Kon, Fabio},
  33 + booktitle={Brazilian Conference on Software: Theory and Practice (CBSoft)--Tools, Salvador-Brazil},
  34 + volume={29},
  35 + year={2010}
  36 +}
  37 +
OSS-2017/spb.tex 0 → 100644
@@ -0,0 +1,211 @@ @@ -0,0 +1,211 @@
  1 +\documentclass{llncs}
  2 +
  3 +\usepackage{llncsdoc}
  4 +\usepackage{graphicx,url}
  5 +\usepackage[utf8]{inputenc}
  6 +\usepackage{float}
  7 +\usepackage{setspace}
  8 +
  9 +\usepackage{tabularx}
  10 +\usepackage{cite}
  11 +\usepackage{hyperref}
  12 +
  13 +%------------------------------------------------------------------------------
  14 +
  15 +\begin{document}
  16 +\sloppy
  17 +\title{Brazilian Public Software Portal: an integrated platform for collaborative development}
  18 +
  19 +\titlerunning{Brazilian Public Software}
  20 +
  21 +\author{Paulo Meirelles\inst{1,2}, Himer Neri\inst{1}, Antonio Terceiro\inst{1}\\
  22 + Lucas Kanashiro\inst{2}, Melissa Wen\inst{1}}
  23 +
  24 +\authorrunning{Meirelles et al.}
  25 +
  26 +\institute{UnB Faculty in Gama -- University of Bras\'ilia\\
  27 + \'Area Especial de Ind\'ustria Proje\c{c}\~ao A, Setor Leste, Gama, DF, Brazil \\
  28 + \texttt{\{paulormm,hilmer\}@unb.br \\
  29 + terceiro@softwarelivre.org, melissa.srw@gmail.com}
  30 +\and FLOSS Competence Center -- University of S\~ao Paulo \\
  31 + Rua do Mat\~ao, 1010, S\~ao Paulo, SP, Brazil\\
  32 + \texttt{lkd@ime.usp.br}
  33 +%\and QA Services Team -- Linaro Limited \\
  34 +% \texttt{terceiro@linaro.org}
  35 +}
  36 +
  37 +
  38 +\maketitle
  39 +%------------------------------------------------------------------------------
  40 +
  41 +\begin{abstract}
  42 + % Contexto
  43 + % Problema
  44 + % Soluções propostas
  45 + % Frase de impacto
  46 +\end{abstract}
  47 +
  48 +\section{Introduction}
  49 +\label{sec:intro}
  50 +
  51 +Governo Federal vem nos últimos anos melhorando seus processos de
  52 +desenvolvimento e adoção de software. Em 2003, a recomendação da adoção de
  53 +software livre passou a ser uma política, incentivada com a criação do Guia
  54 +Livre. Em 2007, a Secretaria de Logística e Tecnologia da Informação (SLTI) do
  55 +Ministério do Planejamento, Orçamento e Gestão (MP) lançou o portal do Software
  56 +Público Brasileiro (SPB) -- um sistema web para o compartilhamento de projetos
  57 +de software no Governo.
  58 +
  59 +Por um lado, a Instrução Normativa 04/2012 indica que os gestores devem
  60 +consultar as soluções existentes no portal do SPB antes de realizar uma
  61 +contratação de software. Por outro, a evolução técnica do portal do SPB foi
  62 +comprometida, desde 2009, ao não acompanhar a evolução do seu framework base, o
  63 +OpenACS. Não houve o lançamento de novas versões do portal desde então.
  64 +
  65 +Uma nova plataforma para o SPB está sendo desenvolvida pela Universidade de
  66 +Brasília, através dos seus Laboratórios LAPPIS e MídiaLab em parceria com o
  67 +Centro de Competência em Software Livre da Universidade de São Paulo
  68 +(CCSL-USP). A nova plataforma é baseada na integração de ambientes
  69 +colaborativos, sistemas de controle de versão e de monitoramento da qualidade
  70 +do código-fonte, e está sendo desenvolvida por uma equipe heterogênea composta
  71 +por alunos, professores e profissionais, aplicando métodos ágeis e práticas de
  72 +desenvolvimento distribuído de software.
  73 +
  74 +\section{Platform for collaborative software development}
  75 +
  76 +O conceito de software público se diferencia do de software livre em alguns
  77 +aspectos, destacando-se a atribuição de bem público ao software. Isso significa
  78 +que o Governo, especificamente o MP, assume algumas responsabilidades que
  79 +garantem ao usuário do software, em especial os órgãos públicos, condições
  80 +adequadas de uso. Embora haja diferenças entre o que é um software livre e um
  81 +software público brasileiro, há princípios comuns como a tendência da
  82 +descentralização na tomada de decisões, do compartilhamento de informações e da
  83 +retroalimentação. Por isso, a nova plataforma para o SPB foi pensada para
  84 +contemplar ferramentas que promovam a colaboração e a interação nas comunidades
  85 +(por gestores, usuários e desenvolvedores) dos projetos, conforme as práticas
  86 +usadas nas comunidades de software livre. Isso inclui listas de e-mail, fóruns
  87 +de discussão, issue trackers, sistemas de controle de versão e ambientes de
  88 +rede social.
  89 +
  90 +Para integrar as ferramentas e prover a autenticação única nos serviços da
  91 +plataforma, um sistema web chamado Colab, que funcionada como proxy reverso
  92 +para os ambientes, está sendo evoluído. Em resumo, o Colab oferece a integração
  93 +de busca, autenticação e apresentação, provendo um único ambiente ao usuário
  94 +que tem em seu perfil algumas métricas de contribuições (e-mails para listas,
  95 +inserções em wikis, cadastros de issue e commits nos repositórios).
  96 +
  97 +O Colab foi desenvolvido para o Interlegis (programa do Senado Federal). Por
  98 +padrão, funciona integrado com o servidor de listas de e-mail GNU Mailman e
  99 +utiliza o Apache Lucene Solr para a indexação dos conteúdos para as buscas. A
  100 +partir de 2014, as ferramentas GitLab e Noosfero foram integradas ao Colab para
  101 +compor o novo SPB.
  102 +
  103 +O GitLab é uma plataforma de desenvolvimento colaborativo social integrada ao
  104 +sistema de controle de versão Git. É o ambiente mais técnico: os repositórios
  105 +dos projetos do SPB, com páginas wiki, issue tracker e mecanismos de controle
  106 +de versão de código estão nele. O Noosfero é uma plataforma para rede social e
  107 +de economia solidária que contém funcionalidades de gerenciamento de conteúdos
  108 +(CMS), além de permitir a configuração das páginas de usuários e de comunidades
  109 +de forma flexível. É o ambiente de maior interação com o usuário do SPB, desde
  110 +os cadastros até o acesso às páginas dos projetos para download, leitura de
  111 +documentação e contato com os responsáveis.
  112 +
  113 +A integração dessas ferramentas não está totalmente completa, pois demanda a
  114 +solução de questões complexas de arquitetura de software. O que foi
  115 +desenvolvido em 2014 está funcional e já supera o antigo portal do SPB em
  116 +muitos aspectos. Em 2015, os perfis das diferentes ferramentas estão sendo
  117 +integrados de modo que o usuário o gerencie em um único lugar. Os controles de
  118 +acesso e a gestão de permissões também estão evoluindo. O mecanismo de coleta
  119 +de dados e busca está sendo refatorado para acessar os conteúdos das novas
  120 +ferramentas integradas ao Colab. Além disso, o Mezuro, um sistema para o
  121 +monitoramento de métricas de código-fonte, está sendo acoplado ao Colab para
  122 +fornecer acompanhamento da qualidade do código dos projetos.
  123 +
  124 +A integração dos ambientes colaborativos vai além dos aspectos funcionais.
  125 +Oferecer à população uma experiência unificada desses ambientes é fundamental
  126 +para estimular o uso da plataforma, uma vez que reduz a percepção de
  127 +complexidade.
  128 +
  129 +Assim, a arquitetura da informação está sendo redesenhada para proporcionar uma
  130 +navegação transparente e que atenda aos diversos tipos de usuário. Os modelos
  131 +de interação de cada ferramenta estão sendo harmonizados, diminuindo a curva de
  132 +aprendizado. Ao mesmo tempo, um novo estilo visual está sendo criado para
  133 +apresentar essa experiência unificada e para atender as diretrizes de
  134 +Identidade Padrão de Comunicação Digital do Governo Federal.
  135 +
  136 +Os usuários fazem parte do processo. Em 2014, foi aplicado um questionário para
  137 +avaliar a satisfação das pessoas com o portal antigo e identificar problemas de
  138 +experiência do usuário. Em 2015, estão previstas pelo menos 4 atividades de
  139 +validação da nova plataforma com usuários e cidadãos interessados.
  140 +
  141 +\section{Architecture}
  142 +
  143 +Um proxy reverso trata requisições HTTP e as direciona para uma segunda
  144 +máquina, onde são distribuidas para os serviços solicitados. Todos os bancos de
  145 +dados relevantes estão concentrados em uma única máquina e todos os emails
  146 +disparados pelo sistema partem de um mesmo relay.
  147 +
  148 +O ambiente é composto por 7 máquinas com funções distintas:
  149 +
  150 +\begin{itemize}
  151 +
  152 +\item Reverseproxy: Proxy reverso
  153 +\item Integration: Segundo proxy reverso, Repositórios Git, Listas de email e Backend final de email
  154 +\item Email: Relay de email
  155 +\item Social: Servidor de rede social Noosfero
  156 +\item Database: Servidor de banco de dados PostgreSQL
  157 +\item Mezuro: Servidor de análise de código Mezuro
  158 +\item Monitor: Monitoramento de informações dos outros serviços
  159 +
  160 +\end{itemize}
  161 +
  162 +As máquinas Reverseproxy, Email e Monitor possuem IP’s externos. Reverseproxy
  163 +recebe requisições HTTP/HTTPS (portas 80 e 443) e possibilita que usuários
  164 +utilizem os repositórios git (porta 22). Email recebe emails (porta 25) e
  165 +enviar emails para fora da plataforma. Monitor recebe requisições HTTP/HTTPS
  166 +(portas 80 e 443). Os IP’s variam de acordo com o ambiente.
  167 +
  168 +Conexões na porta 22 da máquina reverseproxy são redirecionadas para
  169 +integration. Todas as máquinas aceitam conexões ssh originadas apenas da
  170 +máquina integration, ou seja, não é possível realizar conexões ssh nas demais
  171 +máquinas se a conexão não for originada da integration. As máquinas email,
  172 +social, database e mezuro aceitam conexão ssh vindas da integration na porta 22
  173 +e a reverseproxy em uma porta alternativa, especificada no arquivo de
  174 +configuração do ambiente, config/\$SPB\_ENV/config.yaml pelo valor
  175 +alt\_ssh\_port.
  176 +
  177 +Note que, como será demonstrado neste manual, existem atalhos definidos no
  178 +repositório de gestão de configuração para simplificar o acesso por ssh às
  179 +máquinas. Internamente, as máquinas integration e social também rodam web
  180 +servers para servirem suas aplicações. Por fim, as máquinas integration e
  181 +social conectam-se em database usando a porta 5432 para acesso aos bancos de
  182 +dados.
  183 +
  184 +\section{Final remarks}
  185 +
  186 +A nova plataforma do SPB foi lançada para homologação em dezembro de 2014 e
  187 +está em uso por algumas comunidades em beta.softwarepublico.gov.br. Todas as
  188 +ferramentas são software livre e o que está sendo desenvolvido pelas equipes da
  189 +UnB e USP é publicado em repositórios abertos, disponíveis na versão beta do
  190 +próprio SPB. Mais importante do que isso, as melhorias necessárias nas
  191 +ferramentas utilizadas estão sendo contribuídas de volta para as respectivas
  192 +comunidades. Isso não só é o certo a se fazer do ponto de vista da comunidade
  193 +de software livre, como vai possibilitar a redução de custos de manutenção no
  194 +futuro para os cofres públicos e a evolução continuada da plataforma em
  195 +sinergia com outras organizações que fazem uso das mesmas ferramentas.
  196 +
  197 +Disponibilizar um conjunto de ferramentas e melhorar a experiência do usuário
  198 +no ambiente é parte desse processo de reformulação do SPB. Aspectos culturais
  199 +da colaboração em rede para um efetivo uso do o que é fornecido na plataforma
  200 +necessitam ser amadurecidos pelo MP junto às comunidades do SPB. Além disso, a
  201 +demanda por maior impacto do software público na oferta de software, na adoção
  202 +das soluções disponibilizadas e na atração de colaboradores e usuários requer
  203 +intervenção. Um estudo para propostas de licenciamento e seus impactos para o
  204 +SPB, bem como para sanar as contradições presentes na Instrução Normativa
  205 +01/2011 (que dispõe sobre os procedimentos do SPB), também está sendo conduzido
  206 +pela UnB para complementar o que está sendo desenvolvido do ponto de vista
  207 +tecnológico.
  208 +
  209 +\bibliographystyle{splncs03}
  210 +\bibliography{spb}
  211 +\end{document}
OSS-2017/splncs03.bst 0 → 100644
@@ -0,0 +1,1519 @@ @@ -0,0 +1,1519 @@
  1 +%% BibTeX bibliography style `splncs03'
  2 +%%
  3 +%% BibTeX bibliography style for use with numbered references in
  4 +%% Springer Verlag's "Lecture Notes in Computer Science" series.
  5 +%% (See Springer's documentation for llncs.cls for
  6 +%% more details of the suggested reference format.) Note that this
  7 +%% file will not work for author-year style citations.
  8 +%%
  9 +%% Use \documentclass{llncs} and \bibliographystyle{splncs03}, and cite
  10 +%% a reference with (e.g.) \cite{smith77} to get a "[1]" in the text.
  11 +%%
  12 +%% This file comes to you courtesy of Maurizio "Titto" Patrignani of
  13 +%% Dipartimento di Informatica e Automazione Universita' Roma Tre
  14 +%%
  15 +%% ================================================================================================
  16 +%% This was file `titto-lncs-02.bst' produced on Wed Apr 1, 2009
  17 +%% Edited by hand by titto based on `titto-lncs-01.bst' (see below)
  18 +%%
  19 +%% CHANGES (with respect to titto-lncs-01.bst):
  20 +%% - Removed the call to \urlprefix (thus no "URL" string is added to the output)
  21 +%% ================================================================================================
  22 +%% This was file `titto-lncs-01.bst' produced on Fri Aug 22, 2008
  23 +%% Edited by hand by titto based on `titto.bst' (see below)
  24 +%%
  25 +%% CHANGES (with respect to titto.bst):
  26 +%% - Removed the "capitalize" command for editors string "(eds.)" and "(ed.)"
  27 +%% - Introduced the functions titto.bbl.pages and titto.bbl.page for journal pages (without "pp.")
  28 +%% - Added a new.sentence command to separate with a dot booktitle and series in the inproceedings
  29 +%% - Commented all new.block commands before urls and notes (to separate them with a comma)
  30 +%% - Introduced the functions titto.bbl.volume for handling journal volumes (without "vol." label)
  31 +%% - Used for editors the same name conventions used for authors (see function format.in.ed.booktitle)
  32 +%% - Removed a \newblock to avoid long spaces between title and "In: ..."
  33 +%% - Added function titto.space.prefix to add a space instead of "~" after the (removed) "vol." label
  34 +%% ================================================================================================
  35 +%% This was file `titto.bst',
  36 +%% generated with the docstrip utility.
  37 +%%
  38 +%% The original source files were:
  39 +%%
  40 +%% merlin.mbs (with options: `vonx,nm-rvvc,yr-par,jttl-rm,volp-com,jwdpg,jwdvol,numser,ser-vol,jnm-x,btit-rm,bt-rm,edparxc,bkedcap,au-col,in-col,fin-bare,pp,ed,abr,mth-bare,xedn,jabr,and-com,and-com-ed,xand,url,url-blk,em-x,nfss,')
  41 +%% ----------------------------------------
  42 +%% *** Tentative .bst file for Springer LNCS ***
  43 +%%
  44 +%% Copyright 1994-2007 Patrick W Daly
  45 + % ===============================================================
  46 + % IMPORTANT NOTICE:
  47 + % This bibliographic style (bst) file has been generated from one or
  48 + % more master bibliographic style (mbs) files, listed above.
  49 + %
  50 + % This generated file can be redistributed and/or modified under the terms
  51 + % of the LaTeX Project Public License Distributed from CTAN
  52 + % archives in directory macros/latex/base/lppl.txt; either
  53 + % version 1 of the License, or any later version.
  54 + % ===============================================================
  55 + % Name and version information of the main mbs file:
  56 + % \ProvidesFile{merlin.mbs}[2007/04/24 4.20 (PWD, AO, DPC)]
  57 + % For use with BibTeX version 0.99a or later
  58 + %-------------------------------------------------------------------
  59 + % This bibliography style file is intended for texts in ENGLISH
  60 + % This is a numerical citation style, and as such is standard LaTeX.
  61 + % It requires no extra package to interface to the main text.
  62 + % The form of the \bibitem entries is
  63 + % \bibitem{key}...
  64 + % Usage of \cite is as follows:
  65 + % \cite{key} ==>> [#]
  66 + % \cite[chap. 2]{key} ==>> [#, chap. 2]
  67 + % where # is a number determined by the ordering in the reference list.
  68 + % The order in the reference list is alphabetical by authors.
  69 + %---------------------------------------------------------------------
  70 +
  71 +ENTRY
  72 + { address
  73 + author
  74 + booktitle
  75 + chapter
  76 + edition
  77 + editor
  78 + eid
  79 + howpublished
  80 + institution
  81 + journal
  82 + key
  83 + month
  84 + note
  85 + number
  86 + organization
  87 + pages
  88 + publisher
  89 + school
  90 + series
  91 + title
  92 + type
  93 + url
  94 + volume
  95 + year
  96 + }
  97 + {}
  98 + { label }
  99 +INTEGERS { output.state before.all mid.sentence after.sentence after.block }
  100 +FUNCTION {init.state.consts}
  101 +{ #0 'before.all :=
  102 + #1 'mid.sentence :=
  103 + #2 'after.sentence :=
  104 + #3 'after.block :=
  105 +}
  106 +STRINGS { s t}
  107 +FUNCTION {output.nonnull}
  108 +{ 's :=
  109 + output.state mid.sentence =
  110 + { ", " * write$ }
  111 + { output.state after.block =
  112 + { add.period$ write$
  113 +% newline$
  114 +% "\newblock " write$ % removed for titto-lncs-01
  115 + " " write$ % to avoid long spaces between title and "In: ..."
  116 + }
  117 + { output.state before.all =
  118 + 'write$
  119 + { add.period$ " " * write$ }
  120 + if$
  121 + }
  122 + if$
  123 + mid.sentence 'output.state :=
  124 + }
  125 + if$
  126 + s
  127 +}
  128 +FUNCTION {output}
  129 +{ duplicate$ empty$
  130 + 'pop$
  131 + 'output.nonnull
  132 + if$
  133 +}
  134 +FUNCTION {output.check}
  135 +{ 't :=
  136 + duplicate$ empty$
  137 + { pop$ "empty " t * " in " * cite$ * warning$ }
  138 + 'output.nonnull
  139 + if$
  140 +}
  141 +FUNCTION {fin.entry}
  142 +{ duplicate$ empty$
  143 + 'pop$
  144 + 'write$
  145 + if$
  146 + newline$
  147 +}
  148 +
  149 +FUNCTION {new.block}
  150 +{ output.state before.all =
  151 + 'skip$
  152 + { after.block 'output.state := }
  153 + if$
  154 +}
  155 +FUNCTION {new.sentence}
  156 +{ output.state after.block =
  157 + 'skip$
  158 + { output.state before.all =
  159 + 'skip$
  160 + { after.sentence 'output.state := }
  161 + if$
  162 + }
  163 + if$
  164 +}
  165 +FUNCTION {add.blank}
  166 +{ " " * before.all 'output.state :=
  167 +}
  168 +
  169 +
  170 +FUNCTION {add.colon}
  171 +{ duplicate$ empty$
  172 + 'skip$
  173 + { ":" * add.blank }
  174 + if$
  175 +}
  176 +
  177 +FUNCTION {date.block}
  178 +{
  179 + new.block
  180 +}
  181 +
  182 +FUNCTION {not}
  183 +{ { #0 }
  184 + { #1 }
  185 + if$
  186 +}
  187 +FUNCTION {and}
  188 +{ 'skip$
  189 + { pop$ #0 }
  190 + if$
  191 +}
  192 +FUNCTION {or}
  193 +{ { pop$ #1 }
  194 + 'skip$
  195 + if$
  196 +}
  197 +STRINGS {z}
  198 +FUNCTION {remove.dots}
  199 +{ 'z :=
  200 + ""
  201 + { z empty$ not }
  202 + { z #1 #1 substring$
  203 + z #2 global.max$ substring$ 'z :=
  204 + duplicate$ "." = 'pop$
  205 + { * }
  206 + if$
  207 + }
  208 + while$
  209 +}
  210 +FUNCTION {new.block.checka}
  211 +{ empty$
  212 + 'skip$
  213 + 'new.block
  214 + if$
  215 +}
  216 +FUNCTION {new.block.checkb}
  217 +{ empty$
  218 + swap$ empty$
  219 + and
  220 + 'skip$
  221 + 'new.block
  222 + if$
  223 +}
  224 +FUNCTION {new.sentence.checka}
  225 +{ empty$
  226 + 'skip$
  227 + 'new.sentence
  228 + if$
  229 +}
  230 +FUNCTION {new.sentence.checkb}
  231 +{ empty$
  232 + swap$ empty$
  233 + and
  234 + 'skip$
  235 + 'new.sentence
  236 + if$
  237 +}
  238 +FUNCTION {field.or.null}
  239 +{ duplicate$ empty$
  240 + { pop$ "" }
  241 + 'skip$
  242 + if$
  243 +}
  244 +FUNCTION {emphasize}
  245 +{ skip$ }
  246 +FUNCTION {tie.or.space.prefix}
  247 +{ duplicate$ text.length$ #3 <
  248 + { "~" }
  249 + { " " }
  250 + if$
  251 + swap$
  252 +}
  253 +FUNCTION {titto.space.prefix} % always introduce a space
  254 +{ duplicate$ text.length$ #3 <
  255 + { " " }
  256 + { " " }
  257 + if$
  258 + swap$
  259 +}
  260 +
  261 +
  262 +FUNCTION {capitalize}
  263 +{ "u" change.case$ "t" change.case$ }
  264 +
  265 +FUNCTION {space.word}
  266 +{ " " swap$ * " " * }
  267 + % Here are the language-specific definitions for explicit words.
  268 + % Each function has a name bbl.xxx where xxx is the English word.
  269 + % The language selected here is ENGLISH
  270 +FUNCTION {bbl.and}
  271 +{ "and"}
  272 +
  273 +FUNCTION {bbl.etal}
  274 +{ "et~al." }
  275 +
  276 +FUNCTION {bbl.editors}
  277 +{ "eds." }
  278 +
  279 +FUNCTION {bbl.editor}
  280 +{ "ed." }
  281 +
  282 +FUNCTION {bbl.edby}
  283 +{ "edited by" }
  284 +
  285 +FUNCTION {bbl.edition}
  286 +{ "edn." }
  287 +
  288 +FUNCTION {bbl.volume}
  289 +{ "vol." }
  290 +
  291 +FUNCTION {titto.bbl.volume} % for handling journals
  292 +{ "" }
  293 +
  294 +FUNCTION {bbl.of}
  295 +{ "of" }
  296 +
  297 +FUNCTION {bbl.number}
  298 +{ "no." }
  299 +
  300 +FUNCTION {bbl.nr}
  301 +{ "no." }
  302 +
  303 +FUNCTION {bbl.in}
  304 +{ "in" }
  305 +
  306 +FUNCTION {bbl.pages}
  307 +{ "pp." }
  308 +
  309 +FUNCTION {bbl.page}
  310 +{ "p." }
  311 +
  312 +FUNCTION {titto.bbl.pages} % for journals
  313 +{ "" }
  314 +
  315 +FUNCTION {titto.bbl.page} % for journals
  316 +{ "" }
  317 +
  318 +FUNCTION {bbl.chapter}
  319 +{ "chap." }
  320 +
  321 +FUNCTION {bbl.techrep}
  322 +{ "Tech. Rep." }
  323 +
  324 +FUNCTION {bbl.mthesis}
  325 +{ "Master's thesis" }
  326 +
  327 +FUNCTION {bbl.phdthesis}
  328 +{ "Ph.D. thesis" }
  329 +
  330 +MACRO {jan} {"Jan."}
  331 +
  332 +MACRO {feb} {"Feb."}
  333 +
  334 +MACRO {mar} {"Mar."}
  335 +
  336 +MACRO {apr} {"Apr."}
  337 +
  338 +MACRO {may} {"May"}
  339 +
  340 +MACRO {jun} {"Jun."}
  341 +
  342 +MACRO {jul} {"Jul."}
  343 +
  344 +MACRO {aug} {"Aug."}
  345 +
  346 +MACRO {sep} {"Sep."}
  347 +
  348 +MACRO {oct} {"Oct."}
  349 +
  350 +MACRO {nov} {"Nov."}
  351 +
  352 +MACRO {dec} {"Dec."}
  353 +
  354 +MACRO {acmcs} {"ACM Comput. Surv."}
  355 +
  356 +MACRO {acta} {"Acta Inf."}
  357 +
  358 +MACRO {cacm} {"Commun. ACM"}
  359 +
  360 +MACRO {ibmjrd} {"IBM J. Res. Dev."}
  361 +
  362 +MACRO {ibmsj} {"IBM Syst.~J."}
  363 +
  364 +MACRO {ieeese} {"IEEE Trans. Software Eng."}
  365 +
  366 +MACRO {ieeetc} {"IEEE Trans. Comput."}
  367 +
  368 +MACRO {ieeetcad}
  369 + {"IEEE Trans. Comput. Aid. Des."}
  370 +
  371 +MACRO {ipl} {"Inf. Process. Lett."}
  372 +
  373 +MACRO {jacm} {"J.~ACM"}
  374 +
  375 +MACRO {jcss} {"J.~Comput. Syst. Sci."}
  376 +
  377 +MACRO {scp} {"Sci. Comput. Program."}
  378 +
  379 +MACRO {sicomp} {"SIAM J. Comput."}
  380 +
  381 +MACRO {tocs} {"ACM Trans. Comput. Syst."}
  382 +
  383 +MACRO {tods} {"ACM Trans. Database Syst."}
  384 +
  385 +MACRO {tog} {"ACM Trans. Graphic."}
  386 +
  387 +MACRO {toms} {"ACM Trans. Math. Software"}
  388 +
  389 +MACRO {toois} {"ACM Trans. Office Inf. Syst."}
  390 +
  391 +MACRO {toplas} {"ACM Trans. Progr. Lang. Syst."}
  392 +
  393 +MACRO {tcs} {"Theor. Comput. Sci."}
  394 +
  395 +FUNCTION {bibinfo.check}
  396 +{ swap$
  397 + duplicate$ missing$
  398 + {
  399 + pop$ pop$
  400 + ""
  401 + }
  402 + { duplicate$ empty$
  403 + {
  404 + swap$ pop$
  405 + }
  406 + { swap$
  407 + pop$
  408 + }
  409 + if$
  410 + }
  411 + if$
  412 +}
  413 +FUNCTION {bibinfo.warn}
  414 +{ swap$
  415 + duplicate$ missing$
  416 + {
  417 + swap$ "missing " swap$ * " in " * cite$ * warning$ pop$
  418 + ""
  419 + }
  420 + { duplicate$ empty$
  421 + {
  422 + swap$ "empty " swap$ * " in " * cite$ * warning$
  423 + }
  424 + { swap$
  425 + pop$
  426 + }
  427 + if$
  428 + }
  429 + if$
  430 +}
  431 +FUNCTION {format.url}
  432 +{ url empty$
  433 + { "" }
  434 +% { "\urlprefix\url{" url * "}" * }
  435 + { "\url{" url * "}" * } % changed in titto-lncs-02.bst
  436 + if$
  437 +}
  438 +
  439 +INTEGERS { nameptr namesleft numnames }
  440 +
  441 +
  442 +STRINGS { bibinfo}
  443 +
  444 +FUNCTION {format.names}
  445 +{ 'bibinfo :=
  446 + duplicate$ empty$ 'skip$ {
  447 + 's :=
  448 + "" 't :=
  449 + #1 'nameptr :=
  450 + s num.names$ 'numnames :=
  451 + numnames 'namesleft :=
  452 + { namesleft #0 > }
  453 + { s nameptr
  454 + "{vv~}{ll}{, jj}{, f{.}.}"
  455 + format.name$
  456 + bibinfo bibinfo.check
  457 + 't :=
  458 + nameptr #1 >
  459 + {
  460 + namesleft #1 >
  461 + { ", " * t * }
  462 + {
  463 + s nameptr "{ll}" format.name$ duplicate$ "others" =
  464 + { 't := }
  465 + { pop$ }
  466 + if$
  467 + "," *
  468 + t "others" =
  469 + {
  470 + " " * bbl.etal *
  471 + }
  472 + { " " * t * }
  473 + if$
  474 + }
  475 + if$
  476 + }
  477 + 't
  478 + if$
  479 + nameptr #1 + 'nameptr :=
  480 + namesleft #1 - 'namesleft :=
  481 + }
  482 + while$
  483 + } if$
  484 +}
  485 +FUNCTION {format.names.ed}
  486 +{
  487 + 'bibinfo :=
  488 + duplicate$ empty$ 'skip$ {
  489 + 's :=
  490 + "" 't :=
  491 + #1 'nameptr :=
  492 + s num.names$ 'numnames :=
  493 + numnames 'namesleft :=
  494 + { namesleft #0 > }
  495 + { s nameptr
  496 + "{f{.}.~}{vv~}{ll}{ jj}"
  497 + format.name$
  498 + bibinfo bibinfo.check
  499 + 't :=
  500 + nameptr #1 >
  501 + {
  502 + namesleft #1 >
  503 + { ", " * t * }
  504 + {
  505 + s nameptr "{ll}" format.name$ duplicate$ "others" =
  506 + { 't := }
  507 + { pop$ }
  508 + if$
  509 + "," *
  510 + t "others" =
  511 + {
  512 +
  513 + " " * bbl.etal *
  514 + }
  515 + { " " * t * }
  516 + if$
  517 + }
  518 + if$
  519 + }
  520 + 't
  521 + if$
  522 + nameptr #1 + 'nameptr :=
  523 + namesleft #1 - 'namesleft :=
  524 + }
  525 + while$
  526 + } if$
  527 +}
  528 +FUNCTION {format.authors}
  529 +{ author "author" format.names
  530 +}
  531 +FUNCTION {get.bbl.editor}
  532 +{ editor num.names$ #1 > 'bbl.editors 'bbl.editor if$ }
  533 +
  534 +FUNCTION {format.editors}
  535 +{ editor "editor" format.names duplicate$ empty$ 'skip$
  536 + {
  537 + " " *
  538 + get.bbl.editor
  539 +% capitalize
  540 + "(" swap$ * ")" *
  541 + *
  542 + }
  543 + if$
  544 +}
  545 +FUNCTION {format.note}
  546 +{
  547 + note empty$
  548 + { "" }
  549 + { note #1 #1 substring$
  550 + duplicate$ "{" =
  551 + 'skip$
  552 + { output.state mid.sentence =
  553 + { "l" }
  554 + { "u" }
  555 + if$
  556 + change.case$
  557 + }
  558 + if$
  559 + note #2 global.max$ substring$ * "note" bibinfo.check
  560 + }
  561 + if$
  562 +}
  563 +
  564 +FUNCTION {format.title}
  565 +{ title
  566 + duplicate$ empty$ 'skip$
  567 + { "t" change.case$ }
  568 + if$
  569 + "title" bibinfo.check
  570 +}
  571 +FUNCTION {output.bibitem}
  572 +{ newline$
  573 + "\bibitem{" write$
  574 + cite$ write$
  575 + "}" write$
  576 + newline$
  577 + ""
  578 + before.all 'output.state :=
  579 +}
  580 +
  581 +FUNCTION {n.dashify}
  582 +{
  583 + 't :=
  584 + ""
  585 + { t empty$ not }
  586 + { t #1 #1 substring$ "-" =
  587 + { t #1 #2 substring$ "--" = not
  588 + { "--" *
  589 + t #2 global.max$ substring$ 't :=
  590 + }
  591 + { { t #1 #1 substring$ "-" = }
  592 + { "-" *
  593 + t #2 global.max$ substring$ 't :=
  594 + }
  595 + while$
  596 + }
  597 + if$
  598 + }
  599 + { t #1 #1 substring$ *
  600 + t #2 global.max$ substring$ 't :=
  601 + }
  602 + if$
  603 + }
  604 + while$
  605 +}
  606 +
  607 +FUNCTION {word.in}
  608 +{ bbl.in capitalize
  609 + ":" *
  610 + " " * }
  611 +
  612 +FUNCTION {format.date}
  613 +{
  614 + month "month" bibinfo.check
  615 + duplicate$ empty$
  616 + year "year" bibinfo.check duplicate$ empty$
  617 + { swap$ 'skip$
  618 + { "there's a month but no year in " cite$ * warning$ }
  619 + if$
  620 + *
  621 + }
  622 + { swap$ 'skip$
  623 + {
  624 + swap$
  625 + " " * swap$
  626 + }
  627 + if$
  628 + *
  629 + remove.dots
  630 + }
  631 + if$
  632 + duplicate$ empty$
  633 + 'skip$
  634 + {
  635 + before.all 'output.state :=
  636 + " (" swap$ * ")" *
  637 + }
  638 + if$
  639 +}
  640 +FUNCTION {format.btitle}
  641 +{ title "title" bibinfo.check
  642 + duplicate$ empty$ 'skip$
  643 + {
  644 + }
  645 + if$
  646 +}
  647 +FUNCTION {either.or.check}
  648 +{ empty$
  649 + 'pop$
  650 + { "can't use both " swap$ * " fields in " * cite$ * warning$ }
  651 + if$
  652 +}
  653 +FUNCTION {format.bvolume}
  654 +{ volume empty$
  655 + { "" }
  656 + { bbl.volume volume tie.or.space.prefix
  657 + "volume" bibinfo.check * *
  658 + series "series" bibinfo.check
  659 + duplicate$ empty$ 'pop$
  660 + { emphasize ", " * swap$ * }
  661 + if$
  662 + "volume and number" number either.or.check
  663 + }
  664 + if$
  665 +}
  666 +FUNCTION {format.number.series}
  667 +{ volume empty$
  668 + { number empty$
  669 + { series field.or.null }
  670 + { output.state mid.sentence =
  671 + { bbl.number }
  672 + { bbl.number capitalize }
  673 + if$
  674 + number tie.or.space.prefix "number" bibinfo.check * *
  675 + series empty$
  676 + { "there's a number but no series in " cite$ * warning$ }
  677 + { bbl.in space.word *
  678 + series "series" bibinfo.check *
  679 + }
  680 + if$
  681 + }
  682 + if$
  683 + }
  684 + { "" }
  685 + if$
  686 +}
  687 +
  688 +FUNCTION {format.edition}
  689 +{ edition duplicate$ empty$ 'skip$
  690 + {
  691 + output.state mid.sentence =
  692 + { "l" }
  693 + { "t" }
  694 + if$ change.case$
  695 + "edition" bibinfo.check
  696 + " " * bbl.edition *
  697 + }
  698 + if$
  699 +}
  700 +INTEGERS { multiresult }
  701 +FUNCTION {multi.page.check}
  702 +{ 't :=
  703 + #0 'multiresult :=
  704 + { multiresult not
  705 + t empty$ not
  706 + and
  707 + }
  708 + { t #1 #1 substring$
  709 + duplicate$ "-" =
  710 + swap$ duplicate$ "," =
  711 + swap$ "+" =
  712 + or or
  713 + { #1 'multiresult := }
  714 + { t #2 global.max$ substring$ 't := }
  715 + if$
  716 + }
  717 + while$
  718 + multiresult
  719 +}
  720 +FUNCTION {format.pages}
  721 +{ pages duplicate$ empty$ 'skip$
  722 + { duplicate$ multi.page.check
  723 + {
  724 + bbl.pages swap$
  725 + n.dashify
  726 + }
  727 + {
  728 + bbl.page swap$
  729 + }
  730 + if$
  731 + tie.or.space.prefix
  732 + "pages" bibinfo.check
  733 + * *
  734 + }
  735 + if$
  736 +}
  737 +FUNCTION {format.journal.pages}
  738 +{ pages duplicate$ empty$ 'pop$
  739 + { swap$ duplicate$ empty$
  740 + { pop$ pop$ format.pages }
  741 + {
  742 + ", " *
  743 + swap$
  744 + n.dashify
  745 + pages multi.page.check
  746 + 'titto.bbl.pages
  747 + 'titto.bbl.page
  748 + if$
  749 + swap$ tie.or.space.prefix
  750 + "pages" bibinfo.check
  751 + * *
  752 + *
  753 + }
  754 + if$
  755 + }
  756 + if$
  757 +}
  758 +FUNCTION {format.journal.eid}
  759 +{ eid "eid" bibinfo.check
  760 + duplicate$ empty$ 'pop$
  761 + { swap$ duplicate$ empty$ 'skip$
  762 + {
  763 + ", " *
  764 + }
  765 + if$
  766 + swap$ *
  767 + }
  768 + if$
  769 +}
  770 +FUNCTION {format.vol.num.pages} % this function is used only for journal entries
  771 +{ volume field.or.null
  772 + duplicate$ empty$ 'skip$
  773 + {
  774 +% bbl.volume swap$ tie.or.space.prefix
  775 + titto.bbl.volume swap$ titto.space.prefix
  776 +% rationale for the change above: for journals you don't want "vol." label
  777 +% hence it does not make sense to attach the journal number to the label when
  778 +% it is short
  779 + "volume" bibinfo.check
  780 + * *
  781 + }
  782 + if$
  783 + number "number" bibinfo.check duplicate$ empty$ 'skip$
  784 + {
  785 + swap$ duplicate$ empty$
  786 + { "there's a number but no volume in " cite$ * warning$ }
  787 + 'skip$
  788 + if$
  789 + swap$
  790 + "(" swap$ * ")" *
  791 + }
  792 + if$ *
  793 + eid empty$
  794 + { format.journal.pages }
  795 + { format.journal.eid }
  796 + if$
  797 +}
  798 +
  799 +FUNCTION {format.chapter.pages}
  800 +{ chapter empty$
  801 + 'format.pages
  802 + { type empty$
  803 + { bbl.chapter }
  804 + { type "l" change.case$
  805 + "type" bibinfo.check
  806 + }
  807 + if$
  808 + chapter tie.or.space.prefix
  809 + "chapter" bibinfo.check
  810 + * *
  811 + pages empty$
  812 + 'skip$
  813 + { ", " * format.pages * }
  814 + if$
  815 + }
  816 + if$
  817 +}
  818 +
  819 +FUNCTION {format.booktitle}
  820 +{
  821 + booktitle "booktitle" bibinfo.check
  822 +}
  823 +FUNCTION {format.in.ed.booktitle}
  824 +{ format.booktitle duplicate$ empty$ 'skip$
  825 + {
  826 +% editor "editor" format.names.ed duplicate$ empty$ 'pop$ % changed by titto
  827 + editor "editor" format.names duplicate$ empty$ 'pop$
  828 + {
  829 + " " *
  830 + get.bbl.editor
  831 +% capitalize
  832 + "(" swap$ * ") " *
  833 + * swap$
  834 + * }
  835 + if$
  836 + word.in swap$ *
  837 + }
  838 + if$
  839 +}
  840 +FUNCTION {empty.misc.check}
  841 +{ author empty$ title empty$ howpublished empty$
  842 + month empty$ year empty$ note empty$
  843 + and and and and and
  844 + key empty$ not and
  845 + { "all relevant fields are empty in " cite$ * warning$ }
  846 + 'skip$
  847 + if$
  848 +}
  849 +FUNCTION {format.thesis.type}
  850 +{ type duplicate$ empty$
  851 + 'pop$
  852 + { swap$ pop$
  853 + "t" change.case$ "type" bibinfo.check
  854 + }
  855 + if$
  856 +}
  857 +FUNCTION {format.tr.number}
  858 +{ number "number" bibinfo.check
  859 + type duplicate$ empty$
  860 + { pop$ bbl.techrep }
  861 + 'skip$
  862 + if$
  863 + "type" bibinfo.check
  864 + swap$ duplicate$ empty$
  865 + { pop$ "t" change.case$ }
  866 + { tie.or.space.prefix * * }
  867 + if$
  868 +}
  869 +FUNCTION {format.article.crossref}
  870 +{
  871 + key duplicate$ empty$
  872 + { pop$
  873 + journal duplicate$ empty$
  874 + { "need key or journal for " cite$ * " to crossref " * crossref * warning$ }
  875 + { "journal" bibinfo.check emphasize word.in swap$ * }
  876 + if$
  877 + }
  878 + { word.in swap$ * " " *}
  879 + if$
  880 + " \cite{" * crossref * "}" *
  881 +}
  882 +FUNCTION {format.crossref.editor}
  883 +{ editor #1 "{vv~}{ll}" format.name$
  884 + "editor" bibinfo.check
  885 + editor num.names$ duplicate$
  886 + #2 >
  887 + { pop$
  888 + "editor" bibinfo.check
  889 + " " * bbl.etal
  890 + *
  891 + }
  892 + { #2 <
  893 + 'skip$
  894 + { editor #2 "{ff }{vv }{ll}{ jj}" format.name$ "others" =
  895 + {
  896 + "editor" bibinfo.check
  897 + " " * bbl.etal
  898 + *
  899 + }
  900 + {
  901 + bbl.and space.word
  902 + * editor #2 "{vv~}{ll}" format.name$
  903 + "editor" bibinfo.check
  904 + *
  905 + }
  906 + if$
  907 + }
  908 + if$
  909 + }
  910 + if$
  911 +}
  912 +FUNCTION {format.book.crossref}
  913 +{ volume duplicate$ empty$
  914 + { "empty volume in " cite$ * "'s crossref of " * crossref * warning$
  915 + pop$ word.in
  916 + }
  917 + { bbl.volume
  918 + capitalize
  919 + swap$ tie.or.space.prefix "volume" bibinfo.check * * bbl.of space.word *
  920 + }
  921 + if$
  922 + editor empty$
  923 + editor field.or.null author field.or.null =
  924 + or
  925 + { key empty$
  926 + { series empty$
  927 + { "need editor, key, or series for " cite$ * " to crossref " *
  928 + crossref * warning$
  929 + "" *
  930 + }
  931 + { series emphasize * }
  932 + if$
  933 + }
  934 + { key * }
  935 + if$
  936 + }
  937 + { format.crossref.editor * }
  938 + if$
  939 + " \cite{" * crossref * "}" *
  940 +}
  941 +FUNCTION {format.incoll.inproc.crossref}
  942 +{
  943 + editor empty$
  944 + editor field.or.null author field.or.null =
  945 + or
  946 + { key empty$
  947 + { format.booktitle duplicate$ empty$
  948 + { "need editor, key, or booktitle for " cite$ * " to crossref " *
  949 + crossref * warning$
  950 + }
  951 + { word.in swap$ * }
  952 + if$
  953 + }
  954 + { word.in key * " " *}
  955 + if$
  956 + }
  957 + { word.in format.crossref.editor * " " *}
  958 + if$
  959 + " \cite{" * crossref * "}" *
  960 +}
  961 +FUNCTION {format.org.or.pub}
  962 +{ 't :=
  963 + ""
  964 + address empty$ t empty$ and
  965 + 'skip$
  966 + {
  967 + t empty$
  968 + { address "address" bibinfo.check *
  969 + }
  970 + { t *
  971 + address empty$
  972 + 'skip$
  973 + { ", " * address "address" bibinfo.check * }
  974 + if$
  975 + }
  976 + if$
  977 + }
  978 + if$
  979 +}
  980 +FUNCTION {format.publisher.address}
  981 +{ publisher "publisher" bibinfo.warn format.org.or.pub
  982 +}
  983 +
  984 +FUNCTION {format.organization.address}
  985 +{ organization "organization" bibinfo.check format.org.or.pub
  986 +}
  987 +
  988 +FUNCTION {article}
  989 +{ output.bibitem
  990 + format.authors "author" output.check
  991 + add.colon
  992 + new.block
  993 + format.title "title" output.check
  994 + new.block
  995 + crossref missing$
  996 + {
  997 + journal
  998 + "journal" bibinfo.check
  999 + "journal" output.check
  1000 + add.blank
  1001 + format.vol.num.pages output
  1002 + format.date "year" output.check
  1003 + }
  1004 + { format.article.crossref output.nonnull
  1005 + format.pages output
  1006 + }
  1007 + if$
  1008 +% new.block
  1009 + format.url output
  1010 +% new.block
  1011 + format.note output
  1012 + fin.entry
  1013 +}
  1014 +FUNCTION {book}
  1015 +{ output.bibitem
  1016 + author empty$
  1017 + { format.editors "author and editor" output.check
  1018 + add.colon
  1019 + }
  1020 + { format.authors output.nonnull
  1021 + add.colon
  1022 + crossref missing$
  1023 + { "author and editor" editor either.or.check }
  1024 + 'skip$
  1025 + if$
  1026 + }
  1027 + if$
  1028 + new.block
  1029 + format.btitle "title" output.check
  1030 + crossref missing$
  1031 + { format.bvolume output
  1032 + new.block
  1033 + new.sentence
  1034 + format.number.series output
  1035 + format.publisher.address output
  1036 + }
  1037 + {
  1038 + new.block
  1039 + format.book.crossref output.nonnull
  1040 + }
  1041 + if$
  1042 + format.edition output
  1043 + format.date "year" output.check
  1044 +% new.block
  1045 + format.url output
  1046 +% new.block
  1047 + format.note output
  1048 + fin.entry
  1049 +}
  1050 +FUNCTION {booklet}
  1051 +{ output.bibitem
  1052 + format.authors output
  1053 + add.colon
  1054 + new.block
  1055 + format.title "title" output.check
  1056 + new.block
  1057 + howpublished "howpublished" bibinfo.check output
  1058 + address "address" bibinfo.check output
  1059 + format.date output
  1060 +% new.block
  1061 + format.url output
  1062 +% new.block
  1063 + format.note output
  1064 + fin.entry
  1065 +}
  1066 +
  1067 +FUNCTION {inbook}
  1068 +{ output.bibitem
  1069 + author empty$
  1070 + { format.editors "author and editor" output.check
  1071 + add.colon
  1072 + }
  1073 + { format.authors output.nonnull
  1074 + add.colon
  1075 + crossref missing$
  1076 + { "author and editor" editor either.or.check }
  1077 + 'skip$
  1078 + if$
  1079 + }
  1080 + if$
  1081 + new.block
  1082 + format.btitle "title" output.check
  1083 + crossref missing$
  1084 + {
  1085 + format.bvolume output
  1086 + format.chapter.pages "chapter and pages" output.check
  1087 + new.block
  1088 + new.sentence
  1089 + format.number.series output
  1090 + format.publisher.address output
  1091 + }
  1092 + {
  1093 + format.chapter.pages "chapter and pages" output.check
  1094 + new.block
  1095 + format.book.crossref output.nonnull
  1096 + }
  1097 + if$
  1098 + format.edition output
  1099 + format.date "year" output.check
  1100 +% new.block
  1101 + format.url output
  1102 +% new.block
  1103 + format.note output
  1104 + fin.entry
  1105 +}
  1106 +
  1107 +FUNCTION {incollection}
  1108 +{ output.bibitem
  1109 + format.authors "author" output.check
  1110 + add.colon
  1111 + new.block
  1112 + format.title "title" output.check
  1113 + new.block
  1114 + crossref missing$
  1115 + { format.in.ed.booktitle "booktitle" output.check
  1116 + format.bvolume output
  1117 + format.chapter.pages output
  1118 + new.sentence
  1119 + format.number.series output
  1120 + format.publisher.address output
  1121 + format.edition output
  1122 + format.date "year" output.check
  1123 + }
  1124 + { format.incoll.inproc.crossref output.nonnull
  1125 + format.chapter.pages output
  1126 + }
  1127 + if$
  1128 +% new.block
  1129 + format.url output
  1130 +% new.block
  1131 + format.note output
  1132 + fin.entry
  1133 +}
  1134 +FUNCTION {inproceedings}
  1135 +{ output.bibitem
  1136 + format.authors "author" output.check
  1137 + add.colon
  1138 + new.block
  1139 + format.title "title" output.check
  1140 + new.block
  1141 + crossref missing$
  1142 + { format.in.ed.booktitle "booktitle" output.check
  1143 + new.sentence % added by titto
  1144 + format.bvolume output
  1145 + format.pages output
  1146 + new.sentence
  1147 + format.number.series output
  1148 + publisher empty$
  1149 + { format.organization.address output }
  1150 + { organization "organization" bibinfo.check output
  1151 + format.publisher.address output
  1152 + }
  1153 + if$
  1154 + format.date "year" output.check
  1155 + }
  1156 + { format.incoll.inproc.crossref output.nonnull
  1157 + format.pages output
  1158 + }
  1159 + if$
  1160 +% new.block
  1161 + format.url output
  1162 +% new.block
  1163 + format.note output
  1164 + fin.entry
  1165 +}
  1166 +FUNCTION {conference} { inproceedings }
  1167 +FUNCTION {manual}
  1168 +{ output.bibitem
  1169 + author empty$
  1170 + { organization "organization" bibinfo.check
  1171 + duplicate$ empty$ 'pop$
  1172 + { output
  1173 + address "address" bibinfo.check output
  1174 + }
  1175 + if$
  1176 + }
  1177 + { format.authors output.nonnull }
  1178 + if$
  1179 + add.colon
  1180 + new.block
  1181 + format.btitle "title" output.check
  1182 + author empty$
  1183 + { organization empty$
  1184 + {
  1185 + address new.block.checka
  1186 + address "address" bibinfo.check output
  1187 + }
  1188 + 'skip$
  1189 + if$
  1190 + }
  1191 + {
  1192 + organization address new.block.checkb
  1193 + organization "organization" bibinfo.check output
  1194 + address "address" bibinfo.check output
  1195 + }
  1196 + if$
  1197 + format.edition output
  1198 + format.date output
  1199 +% new.block
  1200 + format.url output
  1201 +% new.block
  1202 + format.note output
  1203 + fin.entry
  1204 +}
  1205 +
  1206 +FUNCTION {mastersthesis}
  1207 +{ output.bibitem
  1208 + format.authors "author" output.check
  1209 + add.colon
  1210 + new.block
  1211 + format.btitle
  1212 + "title" output.check
  1213 + new.block
  1214 + bbl.mthesis format.thesis.type output.nonnull
  1215 + school "school" bibinfo.warn output
  1216 + address "address" bibinfo.check output
  1217 + format.date "year" output.check
  1218 +% new.block
  1219 + format.url output
  1220 +% new.block
  1221 + format.note output
  1222 + fin.entry
  1223 +}
  1224 +
  1225 +FUNCTION {misc}
  1226 +{ output.bibitem
  1227 + format.authors output
  1228 + add.colon
  1229 + title howpublished new.block.checkb
  1230 + format.title output
  1231 + howpublished new.block.checka
  1232 + howpublished "howpublished" bibinfo.check output
  1233 + format.date output
  1234 +% new.block
  1235 + format.url output
  1236 +% new.block
  1237 + format.note output
  1238 + fin.entry
  1239 + empty.misc.check
  1240 +}
  1241 +FUNCTION {phdthesis}
  1242 +{ output.bibitem
  1243 + format.authors "author" output.check
  1244 + add.colon
  1245 + new.block
  1246 + format.btitle
  1247 + "title" output.check
  1248 + new.block
  1249 + bbl.phdthesis format.thesis.type output.nonnull
  1250 + school "school" bibinfo.warn output
  1251 + address "address" bibinfo.check output
  1252 + format.date "year" output.check
  1253 +% new.block
  1254 + format.url output
  1255 +% new.block
  1256 + format.note output
  1257 + fin.entry
  1258 +}
  1259 +
  1260 +FUNCTION {proceedings}
  1261 +{ output.bibitem
  1262 + editor empty$
  1263 + { organization "organization" bibinfo.check output
  1264 + }
  1265 + { format.editors output.nonnull }
  1266 + if$
  1267 + add.colon
  1268 + new.block
  1269 + format.btitle "title" output.check
  1270 + format.bvolume output
  1271 + editor empty$
  1272 + { publisher empty$
  1273 + { format.number.series output }
  1274 + {
  1275 + new.sentence
  1276 + format.number.series output
  1277 + format.publisher.address output
  1278 + }
  1279 + if$
  1280 + }
  1281 + { publisher empty$
  1282 + {
  1283 + new.sentence
  1284 + format.number.series output
  1285 + format.organization.address output }
  1286 + {
  1287 + new.sentence
  1288 + format.number.series output
  1289 + organization "organization" bibinfo.check output
  1290 + format.publisher.address output
  1291 + }
  1292 + if$
  1293 + }
  1294 + if$
  1295 + format.date "year" output.check
  1296 +% new.block
  1297 + format.url output
  1298 +% new.block
  1299 + format.note output
  1300 + fin.entry
  1301 +}
  1302 +
  1303 +FUNCTION {techreport}
  1304 +{ output.bibitem
  1305 + format.authors "author" output.check
  1306 + add.colon
  1307 + new.block
  1308 + format.title
  1309 + "title" output.check
  1310 + new.block
  1311 + format.tr.number output.nonnull
  1312 + institution "institution" bibinfo.warn output
  1313 + address "address" bibinfo.check output
  1314 + format.date "year" output.check
  1315 +% new.block
  1316 + format.url output
  1317 +% new.block
  1318 + format.note output
  1319 + fin.entry
  1320 +}
  1321 +
  1322 +FUNCTION {unpublished}
  1323 +{ output.bibitem
  1324 + format.authors "author" output.check
  1325 + add.colon
  1326 + new.block
  1327 + format.title "title" output.check
  1328 + format.date output
  1329 +% new.block
  1330 + format.url output
  1331 +% new.block
  1332 + format.note "note" output.check
  1333 + fin.entry
  1334 +}
  1335 +
  1336 +FUNCTION {default.type} { misc }
  1337 +READ
  1338 +FUNCTION {sortify}
  1339 +{ purify$
  1340 + "l" change.case$
  1341 +}
  1342 +INTEGERS { len }
  1343 +FUNCTION {chop.word}
  1344 +{ 's :=
  1345 + 'len :=
  1346 + s #1 len substring$ =
  1347 + { s len #1 + global.max$ substring$ }
  1348 + 's
  1349 + if$
  1350 +}
  1351 +FUNCTION {sort.format.names}
  1352 +{ 's :=
  1353 + #1 'nameptr :=
  1354 + ""
  1355 + s num.names$ 'numnames :=
  1356 + numnames 'namesleft :=
  1357 + { namesleft #0 > }
  1358 + { s nameptr
  1359 + "{ll{ }}{ ff{ }}{ jj{ }}"
  1360 + format.name$ 't :=
  1361 + nameptr #1 >
  1362 + {
  1363 + " " *
  1364 + namesleft #1 = t "others" = and
  1365 + { "zzzzz" * }
  1366 + { t sortify * }
  1367 + if$
  1368 + }
  1369 + { t sortify * }
  1370 + if$
  1371 + nameptr #1 + 'nameptr :=
  1372 + namesleft #1 - 'namesleft :=
  1373 + }
  1374 + while$
  1375 +}
  1376 +
  1377 +FUNCTION {sort.format.title}
  1378 +{ 't :=
  1379 + "A " #2
  1380 + "An " #3
  1381 + "The " #4 t chop.word
  1382 + chop.word
  1383 + chop.word
  1384 + sortify
  1385 + #1 global.max$ substring$
  1386 +}
  1387 +FUNCTION {author.sort}
  1388 +{ author empty$
  1389 + { key empty$
  1390 + { "to sort, need author or key in " cite$ * warning$
  1391 + ""
  1392 + }
  1393 + { key sortify }
  1394 + if$
  1395 + }
  1396 + { author sort.format.names }
  1397 + if$
  1398 +}
  1399 +FUNCTION {author.editor.sort}
  1400 +{ author empty$
  1401 + { editor empty$
  1402 + { key empty$
  1403 + { "to sort, need author, editor, or key in " cite$ * warning$
  1404 + ""
  1405 + }
  1406 + { key sortify }
  1407 + if$
  1408 + }
  1409 + { editor sort.format.names }
  1410 + if$
  1411 + }
  1412 + { author sort.format.names }
  1413 + if$
  1414 +}
  1415 +FUNCTION {author.organization.sort}
  1416 +{ author empty$
  1417 + { organization empty$
  1418 + { key empty$
  1419 + { "to sort, need author, organization, or key in " cite$ * warning$
  1420 + ""
  1421 + }
  1422 + { key sortify }
  1423 + if$
  1424 + }
  1425 + { "The " #4 organization chop.word sortify }
  1426 + if$
  1427 + }
  1428 + { author sort.format.names }
  1429 + if$
  1430 +}
  1431 +FUNCTION {editor.organization.sort}
  1432 +{ editor empty$
  1433 + { organization empty$
  1434 + { key empty$
  1435 + { "to sort, need editor, organization, or key in " cite$ * warning$
  1436 + ""
  1437 + }
  1438 + { key sortify }
  1439 + if$
  1440 + }
  1441 + { "The " #4 organization chop.word sortify }
  1442 + if$
  1443 + }
  1444 + { editor sort.format.names }
  1445 + if$
  1446 +}
  1447 +FUNCTION {presort}
  1448 +{ type$ "book" =
  1449 + type$ "inbook" =
  1450 + or
  1451 + 'author.editor.sort
  1452 + { type$ "proceedings" =
  1453 + 'editor.organization.sort
  1454 + { type$ "manual" =
  1455 + 'author.organization.sort
  1456 + 'author.sort
  1457 + if$
  1458 + }
  1459 + if$
  1460 + }
  1461 + if$
  1462 + " "
  1463 + *
  1464 + year field.or.null sortify
  1465 + *
  1466 + " "
  1467 + *
  1468 + title field.or.null
  1469 + sort.format.title
  1470 + *
  1471 + #1 entry.max$ substring$
  1472 + 'sort.key$ :=
  1473 +}
  1474 +ITERATE {presort}
  1475 +SORT
  1476 +STRINGS { longest.label }
  1477 +INTEGERS { number.label longest.label.width }
  1478 +FUNCTION {initialize.longest.label}
  1479 +{ "" 'longest.label :=
  1480 + #1 'number.label :=
  1481 + #0 'longest.label.width :=
  1482 +}
  1483 +FUNCTION {longest.label.pass}
  1484 +{ number.label int.to.str$ 'label :=
  1485 + number.label #1 + 'number.label :=
  1486 + label width$ longest.label.width >
  1487 + { label 'longest.label :=
  1488 + label width$ 'longest.label.width :=
  1489 + }
  1490 + 'skip$
  1491 + if$
  1492 +}
  1493 +EXECUTE {initialize.longest.label}
  1494 +ITERATE {longest.label.pass}
  1495 +FUNCTION {begin.bib}
  1496 +{ preamble$ empty$
  1497 + 'skip$
  1498 + { preamble$ write$ newline$ }
  1499 + if$
  1500 + "\begin{thebibliography}{" longest.label * "}" *
  1501 + write$ newline$
  1502 + "\providecommand{\url}[1]{\texttt{#1}}"
  1503 + write$ newline$
  1504 + "\providecommand{\urlprefix}{URL }"
  1505 + write$ newline$
  1506 +}
  1507 +EXECUTE {begin.bib}
  1508 +EXECUTE {init.state.consts}
  1509 +ITERATE {call.type$}
  1510 +FUNCTION {end.bib}
  1511 +{ newline$
  1512 + "\end{thebibliography}" write$ newline$
  1513 +}
  1514 +EXECUTE {end.bib}
  1515 +%% End of customized bst file
  1516 +%%
  1517 +%% End of file `titto.bst'.
  1518 +
  1519 +
OSS-2017/sprmindx.sty 0 → 100644
@@ -0,0 +1,4 @@ @@ -0,0 +1,4 @@
  1 +delim_0 "\\idxquad "
  2 +delim_1 "\\idxquad "
  3 +delim_2 "\\idxquad "
  4 +delim_n ",\\,"