--- /dev/null
+% LLNCS DOCUMENT CLASS -- version 2.16 (15-Apr-2010)\r
+% Springer Verlag LaTeX2e support for Lecture Notes in Computer Science\r
+%\r
+%%\r
+%% \CharacterTable\r
+%% {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\r
+%% 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\r
+%% Digits \0\1\2\3\4\5\6\7\8\9\r
+%% Exclamation \! Double quote \" Hash (number) \#\r
+%% Dollar \$ Percent \% Ampersand \&\r
+%% Acute accent \' Left paren \( Right paren \)\r
+%% Asterisk \* Plus \+ Comma \,\r
+%% Minus \- Point \. Solidus \/\r
+%% Colon \: Semicolon \; Less than \<\r
+%% Equals \= Greater than \> Question mark \?\r
+%% Commercial at \@ Left bracket \[ Backslash \\\r
+%% Right bracket \] Circumflex \^ Underscore \_\r
+%% Grave accent \` Left brace \{ Vertical bar \|\r
+%% Right brace \} Tilde \~}\r
+%%\r
+\NeedsTeXFormat{LaTeX2e}[1995/12/01]\r
+\ProvidesClass{llncs}[2010/04/15 v2.16\r
+^^J LaTeX document class for Lecture Notes in Computer Science]\r
+% Options\r
+\let\if@envcntreset\iffalse\r
+\DeclareOption{envcountreset}{\let\if@envcntreset\iftrue}\r
+\DeclareOption{citeauthoryear}{\let\citeauthoryear=Y}\r
+\DeclareOption{oribibl}{\let\oribibl=Y}\r
+\let\if@custvec\iftrue\r
+\DeclareOption{orivec}{\let\if@custvec\iffalse}\r
+\let\if@envcntsame\iffalse\r
+\DeclareOption{envcountsame}{\let\if@envcntsame\iftrue}\r
+\let\if@envcntsect\iffalse\r
+\DeclareOption{envcountsect}{\let\if@envcntsect\iftrue}\r
+\let\if@runhead\iffalse\r
+\DeclareOption{runningheads}{\let\if@runhead\iftrue}\r
+\r
+\let\if@openbib\iffalse\r
+\DeclareOption{openbib}{\let\if@openbib\iftrue}\r
+\r
+% languages\r
+\let\switcht@@therlang\relax\r
+\def\ds@deutsch{\def\switcht@@therlang{\switcht@deutsch}}\r
+\def\ds@francais{\def\switcht@@therlang{\switcht@francais}}\r
+\r
+\DeclareOption*{\PassOptionsToClass{\CurrentOption}{article}}\r
+\r
+\ProcessOptions\r
+\r
+\LoadClass[twoside]{article}\r
+\RequirePackage{multicol} % needed for the list of participants, index\r
+\RequirePackage{aliascnt}\r
+\r
+\setlength{\textwidth}{12.2cm}\r
+\setlength{\textheight}{19.3cm}\r
+\renewcommand\@pnumwidth{2em}\r
+\renewcommand\@tocrmarg{3.5em}\r
+%\r
+\def\@dottedtocline#1#2#3#4#5{%\r
+ \ifnum #1>\c@tocdepth \else\r
+ \vskip \z@ \@plus.2\p@\r
+ {\leftskip #2\relax \rightskip \@tocrmarg \advance\rightskip by 0pt plus 2cm\r
+ \parfillskip -\rightskip \pretolerance=10000\r
+ \parindent #2\relax\@afterindenttrue\r
+ \interlinepenalty\@M\r
+ \leavevmode\r
+ \@tempdima #3\relax\r
+ \advance\leftskip \@tempdima \null\nobreak\hskip -\leftskip\r
+ {#4}\nobreak\r
+ \leaders\hbox{$\m@th\r
+ \mkern \@dotsep mu\hbox{.}\mkern \@dotsep\r
+ mu$}\hfill\r
+ \nobreak\r
+ \hb@xt@\@pnumwidth{\hfil\normalfont \normalcolor #5}%\r
+ \par}%\r
+ \fi}\r
+%\r
+\def\switcht@albion{%\r
+\def\abstractname{Abstract.}\r
+\def\ackname{Acknowledgement.}\r
+\def\andname{and}\r
+\def\lastandname{\unskip, and}\r
+\def\appendixname{Appendix}\r
+\def\chaptername{Chapter}\r
+\def\claimname{Claim}\r
+\def\conjecturename{Conjecture}\r
+\def\contentsname{Table of Contents}\r
+\def\corollaryname{Corollary}\r
+\def\definitionname{Definition}\r
+\def\examplename{Example}\r
+\def\exercisename{Exercise}\r
+\def\figurename{Fig.}\r
+\def\keywordname{{\bf Keywords:}}\r
+\def\indexname{Index}\r
+\def\lemmaname{Lemma}\r
+\def\contriblistname{List of Contributors}\r
+\def\listfigurename{List of Figures}\r
+\def\listtablename{List of Tables}\r
+\def\mailname{{\it Correspondence to\/}:}\r
+\def\noteaddname{Note added in proof}\r
+\def\notename{Note}\r
+\def\partname{Part}\r
+\def\problemname{Problem}\r
+\def\proofname{Proof}\r
+\def\propertyname{Property}\r
+\def\propositionname{Proposition}\r
+\def\questionname{Question}\r
+\def\remarkname{Remark}\r
+\def\seename{see}\r
+\def\solutionname{Solution}\r
+\def\subclassname{{\it Subject Classifications\/}:}\r
+\def\tablename{Table}\r
+\def\theoremname{Theorem}}\r
+\switcht@albion\r
+% Names of theorem like environments are already defined\r
+% but must be translated if another language is chosen\r
+%\r
+% French section\r
+\def\switcht@francais{%\typeout{On parle francais.}%\r
+ \def\abstractname{R\'esum\'e.}%\r
+ \def\ackname{Remerciements.}%\r
+ \def\andname{et}%\r
+ \def\lastandname{ et}%\r
+ \def\appendixname{Appendice}\r
+ \def\chaptername{Chapitre}%\r
+ \def\claimname{Pr\'etention}%\r
+ \def\conjecturename{Hypoth\`ese}%\r
+ \def\contentsname{Table des mati\`eres}%\r
+ \def\corollaryname{Corollaire}%\r
+ \def\definitionname{D\'efinition}%\r
+ \def\examplename{Exemple}%\r
+ \def\exercisename{Exercice}%\r
+ \def\figurename{Fig.}%\r
+ \def\keywordname{{\bf Mots-cl\'e:}}\r
+ \def\indexname{Index}\r
+ \def\lemmaname{Lemme}%\r
+ \def\contriblistname{Liste des contributeurs}\r
+ \def\listfigurename{Liste des figures}%\r
+ \def\listtablename{Liste des tables}%\r
+ \def\mailname{{\it Correspondence to\/}:}\r
+ \def\noteaddname{Note ajout\'ee \`a l'\'epreuve}%\r
+ \def\notename{Remarque}%\r
+ \def\partname{Partie}%\r
+ \def\problemname{Probl\`eme}%\r
+ \def\proofname{Preuve}%\r
+ \def\propertyname{Caract\'eristique}%\r
+%\def\propositionname{Proposition}%\r
+ \def\questionname{Question}%\r
+ \def\remarkname{Remarque}%\r
+ \def\seename{voir}\r
+ \def\solutionname{Solution}%\r
+ \def\subclassname{{\it Subject Classifications\/}:}\r
+ \def\tablename{Tableau}%\r
+ \def\theoremname{Th\'eor\`eme}%\r
+}\r
+%\r
+% German section\r
+\def\switcht@deutsch{%\typeout{Man spricht deutsch.}%\r
+ \def\abstractname{Zusammenfassung.}%\r
+ \def\ackname{Danksagung.}%\r
+ \def\andname{und}%\r
+ \def\lastandname{ und}%\r
+ \def\appendixname{Anhang}%\r
+ \def\chaptername{Kapitel}%\r
+ \def\claimname{Behauptung}%\r
+ \def\conjecturename{Hypothese}%\r
+ \def\contentsname{Inhaltsverzeichnis}%\r
+ \def\corollaryname{Korollar}%\r
+%\def\definitionname{Definition}%\r
+ \def\examplename{Beispiel}%\r
+ \def\exercisename{\"Ubung}%\r
+ \def\figurename{Abb.}%\r
+ \def\keywordname{{\bf Schl\"usselw\"orter:}}\r
+ \def\indexname{Index}\r
+%\def\lemmaname{Lemma}%\r
+ \def\contriblistname{Mitarbeiter}\r
+ \def\listfigurename{Abbildungsverzeichnis}%\r
+ \def\listtablename{Tabellenverzeichnis}%\r
+ \def\mailname{{\it Correspondence to\/}:}\r
+ \def\noteaddname{Nachtrag}%\r
+ \def\notename{Anmerkung}%\r
+ \def\partname{Teil}%\r
+%\def\problemname{Problem}%\r
+ \def\proofname{Beweis}%\r
+ \def\propertyname{Eigenschaft}%\r
+%\def\propositionname{Proposition}%\r
+ \def\questionname{Frage}%\r
+ \def\remarkname{Anmerkung}%\r
+ \def\seename{siehe}\r
+ \def\solutionname{L\"osung}%\r
+ \def\subclassname{{\it Subject Classifications\/}:}\r
+ \def\tablename{Tabelle}%\r
+%\def\theoremname{Theorem}%\r
+}\r
+\r
+% Ragged bottom for the actual page\r
+\def\thisbottomragged{\def\@textbottom{\vskip\z@ plus.0001fil\r
+\global\let\@textbottom\relax}}\r
+\r
+\renewcommand\small{%\r
+ \@setfontsize\small\@ixpt{11}%\r
+ \abovedisplayskip 8.5\p@ \@plus3\p@ \@minus4\p@\r
+ \abovedisplayshortskip \z@ \@plus2\p@\r
+ \belowdisplayshortskip 4\p@ \@plus2\p@ \@minus2\p@\r
+ \def\@listi{\leftmargin\leftmargini\r
+ \parsep 0\p@ \@plus1\p@ \@minus\p@\r
+ \topsep 8\p@ \@plus2\p@ \@minus4\p@\r
+ \itemsep0\p@}%\r
+ \belowdisplayskip \abovedisplayskip\r
+}\r
+\r
+\frenchspacing\r
+\widowpenalty=10000\r
+\clubpenalty=10000\r
+\r
+\setlength\oddsidemargin {63\p@}\r
+\setlength\evensidemargin {63\p@}\r
+\setlength\marginparwidth {90\p@}\r
+\r
+\setlength\headsep {16\p@}\r
+\r
+\setlength\footnotesep{7.7\p@}\r
+\setlength\textfloatsep{8mm\@plus 2\p@ \@minus 4\p@}\r
+\setlength\intextsep {8mm\@plus 2\p@ \@minus 2\p@}\r
+\r
+\setcounter{secnumdepth}{2}\r
+\r
+\newcounter {chapter}\r
+\renewcommand\thechapter {\@arabic\c@chapter}\r
+\r
+\newif\if@mainmatter \@mainmattertrue\r
+\newcommand\frontmatter{\cleardoublepage\r
+ \@mainmatterfalse\pagenumbering{Roman}}\r
+\newcommand\mainmatter{\cleardoublepage\r
+ \@mainmattertrue\pagenumbering{arabic}}\r
+\newcommand\backmatter{\if@openright\cleardoublepage\else\clearpage\fi\r
+ \@mainmatterfalse}\r
+\r
+\renewcommand\part{\cleardoublepage\r
+ \thispagestyle{empty}%\r
+ \if@twocolumn\r
+ \onecolumn\r
+ \@tempswatrue\r
+ \else\r
+ \@tempswafalse\r
+ \fi\r
+ \null\vfil\r
+ \secdef\@part\@spart}\r
+\r
+\def\@part[#1]#2{%\r
+ \ifnum \c@secnumdepth >-2\relax\r
+ \refstepcounter{part}%\r
+ \addcontentsline{toc}{part}{\thepart\hspace{1em}#1}%\r
+ \else\r
+ \addcontentsline{toc}{part}{#1}%\r
+ \fi\r
+ \markboth{}{}%\r
+ {\centering\r
+ \interlinepenalty \@M\r
+ \normalfont\r
+ \ifnum \c@secnumdepth >-2\relax\r
+ \huge\bfseries \partname~\thepart\r
+ \par\r
+ \vskip 20\p@\r
+ \fi\r
+ \Huge \bfseries #2\par}%\r
+ \@endpart}\r
+\def\@spart#1{%\r
+ {\centering\r
+ \interlinepenalty \@M\r
+ \normalfont\r
+ \Huge \bfseries #1\par}%\r
+ \@endpart}\r
+\def\@endpart{\vfil\newpage\r
+ \if@twoside\r
+ \null\r
+ \thispagestyle{empty}%\r
+ \newpage\r
+ \fi\r
+ \if@tempswa\r
+ \twocolumn\r
+ \fi}\r
+\r
+\newcommand\chapter{\clearpage\r
+ \thispagestyle{empty}%\r
+ \global\@topnum\z@\r
+ \@afterindentfalse\r
+ \secdef\@chapter\@schapter}\r
+\def\@chapter[#1]#2{\ifnum \c@secnumdepth >\m@ne\r
+ \if@mainmatter\r
+ \refstepcounter{chapter}%\r
+ \typeout{\@chapapp\space\thechapter.}%\r
+ \addcontentsline{toc}{chapter}%\r
+ {\protect\numberline{\thechapter}#1}%\r
+ \else\r
+ \addcontentsline{toc}{chapter}{#1}%\r
+ \fi\r
+ \else\r
+ \addcontentsline{toc}{chapter}{#1}%\r
+ \fi\r
+ \chaptermark{#1}%\r
+ \addtocontents{lof}{\protect\addvspace{10\p@}}%\r
+ \addtocontents{lot}{\protect\addvspace{10\p@}}%\r
+ \if@twocolumn\r
+ \@topnewpage[\@makechapterhead{#2}]%\r
+ \else\r
+ \@makechapterhead{#2}%\r
+ \@afterheading\r
+ \fi}\r
+\def\@makechapterhead#1{%\r
+% \vspace*{50\p@}%\r
+ {\centering\r
+ \ifnum \c@secnumdepth >\m@ne\r
+ \if@mainmatter\r
+ \large\bfseries \@chapapp{} \thechapter\r
+ \par\nobreak\r
+ \vskip 20\p@\r
+ \fi\r
+ \fi\r
+ \interlinepenalty\@M\r
+ \Large \bfseries #1\par\nobreak\r
+ \vskip 40\p@\r
+ }}\r
+\def\@schapter#1{\if@twocolumn\r
+ \@topnewpage[\@makeschapterhead{#1}]%\r
+ \else\r
+ \@makeschapterhead{#1}%\r
+ \@afterheading\r
+ \fi}\r
+\def\@makeschapterhead#1{%\r
+% \vspace*{50\p@}%\r
+ {\centering\r
+ \normalfont\r
+ \interlinepenalty\@M\r
+ \Large \bfseries #1\par\nobreak\r
+ \vskip 40\p@\r
+ }}\r
+\r
+\renewcommand\section{\@startsection{section}{1}{\z@}%\r
+ {-18\p@ \@plus -4\p@ \@minus -4\p@}%\r
+ {12\p@ \@plus 4\p@ \@minus 4\p@}%\r
+ {\normalfont\large\bfseries\boldmath\r
+ \rightskip=\z@ \@plus 8em\pretolerance=10000 }}\r
+\renewcommand\subsection{\@startsection{subsection}{2}{\z@}%\r
+ {-18\p@ \@plus -4\p@ \@minus -4\p@}%\r
+ {8\p@ \@plus 4\p@ \@minus 4\p@}%\r
+ {\normalfont\normalsize\bfseries\boldmath\r
+ \rightskip=\z@ \@plus 8em\pretolerance=10000 }}\r
+\renewcommand\subsubsection{\@startsection{subsubsection}{3}{\z@}%\r
+ {-18\p@ \@plus -4\p@ \@minus -4\p@}%\r
+ {-0.5em \@plus -0.22em \@minus -0.1em}%\r
+ {\normalfont\normalsize\bfseries\boldmath}}\r
+\renewcommand\paragraph{\@startsection{paragraph}{4}{\z@}%\r
+ {-12\p@ \@plus -4\p@ \@minus -4\p@}%\r
+ {-0.5em \@plus -0.22em \@minus -0.1em}%\r
+ {\normalfont\normalsize\itshape}}\r
+\renewcommand\subparagraph[1]{\typeout{LLNCS warning: You should not use\r
+ \string\subparagraph\space with this class}\vskip0.5cm\r
+You should not use \verb|\subparagraph| with this class.\vskip0.5cm}\r
+\r
+\DeclareMathSymbol{\Gamma}{\mathalpha}{letters}{"00}\r
+\DeclareMathSymbol{\Delta}{\mathalpha}{letters}{"01}\r
+\DeclareMathSymbol{\Theta}{\mathalpha}{letters}{"02}\r
+\DeclareMathSymbol{\Lambda}{\mathalpha}{letters}{"03}\r
+\DeclareMathSymbol{\Xi}{\mathalpha}{letters}{"04}\r
+\DeclareMathSymbol{\Pi}{\mathalpha}{letters}{"05}\r
+\DeclareMathSymbol{\Sigma}{\mathalpha}{letters}{"06}\r
+\DeclareMathSymbol{\Upsilon}{\mathalpha}{letters}{"07}\r
+\DeclareMathSymbol{\Phi}{\mathalpha}{letters}{"08}\r
+\DeclareMathSymbol{\Psi}{\mathalpha}{letters}{"09}\r
+\DeclareMathSymbol{\Omega}{\mathalpha}{letters}{"0A}\r
+\r
+\let\footnotesize\small\r
+\r
+\if@custvec\r
+\def\vec#1{\mathchoice{\mbox{\boldmath$\displaystyle#1$}}\r
+{\mbox{\boldmath$\textstyle#1$}}\r
+{\mbox{\boldmath$\scriptstyle#1$}}\r
+{\mbox{\boldmath$\scriptscriptstyle#1$}}}\r
+\fi\r
+\r
+\def\squareforqed{\hbox{\rlap{$\sqcap$}$\sqcup$}}\r
+\def\qed{\ifmmode\squareforqed\else{\unskip\nobreak\hfil\r
+\penalty50\hskip1em\null\nobreak\hfil\squareforqed\r
+\parfillskip=0pt\finalhyphendemerits=0\endgraf}\fi}\r
+\r
+\def\getsto{\mathrel{\mathchoice {\vcenter{\offinterlineskip\r
+\halign{\hfil\r
+$\displaystyle##$\hfil\cr\gets\cr\to\cr}}}\r
+{\vcenter{\offinterlineskip\halign{\hfil$\textstyle##$\hfil\cr\gets\r
+\cr\to\cr}}}\r
+{\vcenter{\offinterlineskip\halign{\hfil$\scriptstyle##$\hfil\cr\gets\r
+\cr\to\cr}}}\r
+{\vcenter{\offinterlineskip\halign{\hfil$\scriptscriptstyle##$\hfil\cr\r
+\gets\cr\to\cr}}}}}\r
+\def\lid{\mathrel{\mathchoice {\vcenter{\offinterlineskip\halign{\hfil\r
+$\displaystyle##$\hfil\cr<\cr\noalign{\vskip1.2pt}=\cr}}}\r
+{\vcenter{\offinterlineskip\halign{\hfil$\textstyle##$\hfil\cr<\cr\r
+\noalign{\vskip1.2pt}=\cr}}}\r
+{\vcenter{\offinterlineskip\halign{\hfil$\scriptstyle##$\hfil\cr<\cr\r
+\noalign{\vskip1pt}=\cr}}}\r
+{\vcenter{\offinterlineskip\halign{\hfil$\scriptscriptstyle##$\hfil\cr\r
+<\cr\r
+\noalign{\vskip0.9pt}=\cr}}}}}\r
+\def\gid{\mathrel{\mathchoice {\vcenter{\offinterlineskip\halign{\hfil\r
+$\displaystyle##$\hfil\cr>\cr\noalign{\vskip1.2pt}=\cr}}}\r
+{\vcenter{\offinterlineskip\halign{\hfil$\textstyle##$\hfil\cr>\cr\r
+\noalign{\vskip1.2pt}=\cr}}}\r
+{\vcenter{\offinterlineskip\halign{\hfil$\scriptstyle##$\hfil\cr>\cr\r
+\noalign{\vskip1pt}=\cr}}}\r
+{\vcenter{\offinterlineskip\halign{\hfil$\scriptscriptstyle##$\hfil\cr\r
+>\cr\r
+\noalign{\vskip0.9pt}=\cr}}}}}\r
+\def\grole{\mathrel{\mathchoice {\vcenter{\offinterlineskip\r
+\halign{\hfil\r
+$\displaystyle##$\hfil\cr>\cr\noalign{\vskip-1pt}<\cr}}}\r
+{\vcenter{\offinterlineskip\halign{\hfil$\textstyle##$\hfil\cr\r
+>\cr\noalign{\vskip-1pt}<\cr}}}\r
+{\vcenter{\offinterlineskip\halign{\hfil$\scriptstyle##$\hfil\cr\r
+>\cr\noalign{\vskip-0.8pt}<\cr}}}\r
+{\vcenter{\offinterlineskip\halign{\hfil$\scriptscriptstyle##$\hfil\cr\r
+>\cr\noalign{\vskip-0.3pt}<\cr}}}}}\r
+\def\bbbr{{\rm I\!R}} %reelle Zahlen\r
+\def\bbbm{{\rm I\!M}}\r
+\def\bbbn{{\rm I\!N}} %natuerliche Zahlen\r
+\def\bbbf{{\rm I\!F}}\r
+\def\bbbh{{\rm I\!H}}\r
+\def\bbbk{{\rm I\!K}}\r
+\def\bbbp{{\rm I\!P}}\r
+\def\bbbone{{\mathchoice {\rm 1\mskip-4mu l} {\rm 1\mskip-4mu l}\r
+{\rm 1\mskip-4.5mu l} {\rm 1\mskip-5mu l}}}\r
+\def\bbbc{{\mathchoice {\setbox0=\hbox{$\displaystyle\rm C$}\hbox{\hbox\r
+to0pt{\kern0.4\wd0\vrule height0.9\ht0\hss}\box0}}\r
+{\setbox0=\hbox{$\textstyle\rm C$}\hbox{\hbox\r
+to0pt{\kern0.4\wd0\vrule height0.9\ht0\hss}\box0}}\r
+{\setbox0=\hbox{$\scriptstyle\rm C$}\hbox{\hbox\r
+to0pt{\kern0.4\wd0\vrule height0.9\ht0\hss}\box0}}\r
+{\setbox0=\hbox{$\scriptscriptstyle\rm C$}\hbox{\hbox\r
+to0pt{\kern0.4\wd0\vrule height0.9\ht0\hss}\box0}}}}\r
+\def\bbbq{{\mathchoice {\setbox0=\hbox{$\displaystyle\rm\r
+Q$}\hbox{\raise\r
+0.15\ht0\hbox to0pt{\kern0.4\wd0\vrule height0.8\ht0\hss}\box0}}\r
+{\setbox0=\hbox{$\textstyle\rm Q$}\hbox{\raise\r
+0.15\ht0\hbox to0pt{\kern0.4\wd0\vrule height0.8\ht0\hss}\box0}}\r
+{\setbox0=\hbox{$\scriptstyle\rm Q$}\hbox{\raise\r
+0.15\ht0\hbox to0pt{\kern0.4\wd0\vrule height0.7\ht0\hss}\box0}}\r
+{\setbox0=\hbox{$\scriptscriptstyle\rm Q$}\hbox{\raise\r
+0.15\ht0\hbox to0pt{\kern0.4\wd0\vrule height0.7\ht0\hss}\box0}}}}\r
+\def\bbbt{{\mathchoice {\setbox0=\hbox{$\displaystyle\rm\r
+T$}\hbox{\hbox to0pt{\kern0.3\wd0\vrule height0.9\ht0\hss}\box0}}\r
+{\setbox0=\hbox{$\textstyle\rm T$}\hbox{\hbox\r
+to0pt{\kern0.3\wd0\vrule height0.9\ht0\hss}\box0}}\r
+{\setbox0=\hbox{$\scriptstyle\rm T$}\hbox{\hbox\r
+to0pt{\kern0.3\wd0\vrule height0.9\ht0\hss}\box0}}\r
+{\setbox0=\hbox{$\scriptscriptstyle\rm T$}\hbox{\hbox\r
+to0pt{\kern0.3\wd0\vrule height0.9\ht0\hss}\box0}}}}\r
+\def\bbbs{{\mathchoice\r
+{\setbox0=\hbox{$\displaystyle \rm S$}\hbox{\raise0.5\ht0\hbox\r
+to0pt{\kern0.35\wd0\vrule height0.45\ht0\hss}\hbox\r
+to0pt{\kern0.55\wd0\vrule height0.5\ht0\hss}\box0}}\r
+{\setbox0=\hbox{$\textstyle \rm S$}\hbox{\raise0.5\ht0\hbox\r
+to0pt{\kern0.35\wd0\vrule height0.45\ht0\hss}\hbox\r
+to0pt{\kern0.55\wd0\vrule height0.5\ht0\hss}\box0}}\r
+{\setbox0=\hbox{$\scriptstyle \rm S$}\hbox{\raise0.5\ht0\hbox\r
+to0pt{\kern0.35\wd0\vrule height0.45\ht0\hss}\raise0.05\ht0\hbox\r
+to0pt{\kern0.5\wd0\vrule height0.45\ht0\hss}\box0}}\r
+{\setbox0=\hbox{$\scriptscriptstyle\rm S$}\hbox{\raise0.5\ht0\hbox\r
+to0pt{\kern0.4\wd0\vrule height0.45\ht0\hss}\raise0.05\ht0\hbox\r
+to0pt{\kern0.55\wd0\vrule height0.45\ht0\hss}\box0}}}}\r
+\def\bbbz{{\mathchoice {\hbox{$\mathsf\textstyle Z\kern-0.4em Z$}}\r
+{\hbox{$\mathsf\textstyle Z\kern-0.4em Z$}}\r
+{\hbox{$\mathsf\scriptstyle Z\kern-0.3em Z$}}\r
+{\hbox{$\mathsf\scriptscriptstyle Z\kern-0.2em Z$}}}}\r
+\r
+\let\ts\,\r
+\r
+\setlength\leftmargini {17\p@}\r
+\setlength\leftmargin {\leftmargini}\r
+\setlength\leftmarginii {\leftmargini}\r
+\setlength\leftmarginiii {\leftmargini}\r
+\setlength\leftmarginiv {\leftmargini}\r
+\setlength \labelsep {.5em}\r
+\setlength \labelwidth{\leftmargini}\r
+\addtolength\labelwidth{-\labelsep}\r
+\r
+\def\@listI{\leftmargin\leftmargini\r
+ \parsep 0\p@ \@plus1\p@ \@minus\p@\r
+ \topsep 8\p@ \@plus2\p@ \@minus4\p@\r
+ \itemsep0\p@}\r
+\let\@listi\@listI\r
+\@listi\r
+\def\@listii {\leftmargin\leftmarginii\r
+ \labelwidth\leftmarginii\r
+ \advance\labelwidth-\labelsep\r
+ \topsep 0\p@ \@plus2\p@ \@minus\p@}\r
+\def\@listiii{\leftmargin\leftmarginiii\r
+ \labelwidth\leftmarginiii\r
+ \advance\labelwidth-\labelsep\r
+ \topsep 0\p@ \@plus\p@\@minus\p@\r
+ \parsep \z@\r
+ \partopsep \p@ \@plus\z@ \@minus\p@}\r
+\r
+\renewcommand\labelitemi{\normalfont\bfseries --}\r
+\renewcommand\labelitemii{$\m@th\bullet$}\r
+\r
+\setlength\arraycolsep{1.4\p@}\r
+\setlength\tabcolsep{1.4\p@}\r
+\r
+\def\tableofcontents{\chapter*{\contentsname\@mkboth{{\contentsname}}%\r
+ {{\contentsname}}}\r
+ \def\authcount##1{\setcounter{auco}{##1}\setcounter{@auth}{1}}\r
+ \def\lastand{\ifnum\value{auco}=2\relax\r
+ \unskip{} \andname\\r
+ \else\r
+ \unskip \lastandname\\r
+ \fi}%\r
+ \def\and{\stepcounter{@auth}\relax\r
+ \ifnum\value{@auth}=\value{auco}%\r
+ \lastand\r
+ \else\r
+ \unskip,\r
+ \fi}%\r
+ \@starttoc{toc}\if@restonecol\twocolumn\fi}\r
+\r
+\def\l@part#1#2{\addpenalty{\@secpenalty}%\r
+ \addvspace{2em plus\p@}% % space above part line\r
+ \begingroup\r
+ \parindent \z@\r
+ \rightskip \z@ plus 5em\r
+ \hrule\vskip5pt\r
+ \large % same size as for a contribution heading\r
+ \bfseries\boldmath % set line in boldface\r
+ \leavevmode % TeX command to enter horizontal mode.\r
+ #1\par\r
+ \vskip5pt\r
+ \hrule\r
+ \vskip1pt\r
+ \nobreak % Never break after part entry\r
+ \endgroup}\r
+\r
+\def\@dotsep{2}\r
+\r
+\let\phantomsection=\relax\r
+\r
+\def\hyperhrefextend{\ifx\hyper@anchor\@undefined\else\r
+{}\fi}\r
+\r
+\def\addnumcontentsmark#1#2#3{%\r
+\addtocontents{#1}{\protect\contentsline{#2}{\protect\numberline\r
+ {\thechapter}#3}{\thepage}\hyperhrefextend}}%\r
+\def\addcontentsmark#1#2#3{%\r
+\addtocontents{#1}{\protect\contentsline{#2}{#3}{\thepage}\hyperhrefextend}}%\r
+\def\addcontentsmarkwop#1#2#3{%\r
+\addtocontents{#1}{\protect\contentsline{#2}{#3}{0}\hyperhrefextend}}%\r
+\r
+\def\@adcmk[#1]{\ifcase #1 \or\r
+\def\@gtempa{\addnumcontentsmark}%\r
+ \or \def\@gtempa{\addcontentsmark}%\r
+ \or \def\@gtempa{\addcontentsmarkwop}%\r
+ \fi\@gtempa{toc}{chapter}%\r
+}\r
+\def\addtocmark{%\r
+\phantomsection\r
+\@ifnextchar[{\@adcmk}{\@adcmk[3]}%\r
+}\r
+\r
+\def\l@chapter#1#2{\addpenalty{-\@highpenalty}\r
+ \vskip 1.0em plus 1pt \@tempdima 1.5em \begingroup\r
+ \parindent \z@ \rightskip \@tocrmarg\r
+ \advance\rightskip by 0pt plus 2cm\r
+ \parfillskip -\rightskip \pretolerance=10000\r
+ \leavevmode \advance\leftskip\@tempdima \hskip -\leftskip\r
+ {\large\bfseries\boldmath#1}\ifx0#2\hfil\null\r
+ \else\r
+ \nobreak\r
+ \leaders\hbox{$\m@th \mkern \@dotsep mu.\mkern\r
+ \@dotsep mu$}\hfill\r
+ \nobreak\hbox to\@pnumwidth{\hss #2}%\r
+ \fi\par\r
+ \penalty\@highpenalty \endgroup}\r
+\r
+\def\l@title#1#2{\addpenalty{-\@highpenalty}\r
+ \addvspace{8pt plus 1pt}\r
+ \@tempdima \z@\r
+ \begingroup\r
+ \parindent \z@ \rightskip \@tocrmarg\r
+ \advance\rightskip by 0pt plus 2cm\r
+ \parfillskip -\rightskip \pretolerance=10000\r
+ \leavevmode \advance\leftskip\@tempdima \hskip -\leftskip\r
+ #1\nobreak\r
+ \leaders\hbox{$\m@th \mkern \@dotsep mu.\mkern\r
+ \@dotsep mu$}\hfill\r
+ \nobreak\hbox to\@pnumwidth{\hss #2}\par\r
+ \penalty\@highpenalty \endgroup}\r
+\r
+\def\l@author#1#2{\addpenalty{\@highpenalty}\r
+ \@tempdima=15\p@ %\z@\r
+ \begingroup\r
+ \parindent \z@ \rightskip \@tocrmarg\r
+ \advance\rightskip by 0pt plus 2cm\r
+ \pretolerance=10000\r
+ \leavevmode \advance\leftskip\@tempdima %\hskip -\leftskip\r
+ \textit{#1}\par\r
+ \penalty\@highpenalty \endgroup}\r
+\r
+\setcounter{tocdepth}{0}\r
+\newdimen\tocchpnum\r
+\newdimen\tocsecnum\r
+\newdimen\tocsectotal\r
+\newdimen\tocsubsecnum\r
+\newdimen\tocsubsectotal\r
+\newdimen\tocsubsubsecnum\r
+\newdimen\tocsubsubsectotal\r
+\newdimen\tocparanum\r
+\newdimen\tocparatotal\r
+\newdimen\tocsubparanum\r
+\tocchpnum=\z@ % no chapter numbers\r
+\tocsecnum=15\p@ % section 88. plus 2.222pt\r
+\tocsubsecnum=23\p@ % subsection 88.8 plus 2.222pt\r
+\tocsubsubsecnum=27\p@ % subsubsection 88.8.8 plus 1.444pt\r
+\tocparanum=35\p@ % paragraph 88.8.8.8 plus 1.666pt\r
+\tocsubparanum=43\p@ % subparagraph 88.8.8.8.8 plus 1.888pt\r
+\def\calctocindent{%\r
+\tocsectotal=\tocchpnum\r
+\advance\tocsectotal by\tocsecnum\r
+\tocsubsectotal=\tocsectotal\r
+\advance\tocsubsectotal by\tocsubsecnum\r
+\tocsubsubsectotal=\tocsubsectotal\r
+\advance\tocsubsubsectotal by\tocsubsubsecnum\r
+\tocparatotal=\tocsubsubsectotal\r
+\advance\tocparatotal by\tocparanum}\r
+\calctocindent\r
+\r
+\def\l@section{\@dottedtocline{1}{\tocchpnum}{\tocsecnum}}\r
+\def\l@subsection{\@dottedtocline{2}{\tocsectotal}{\tocsubsecnum}}\r
+\def\l@subsubsection{\@dottedtocline{3}{\tocsubsectotal}{\tocsubsubsecnum}}\r
+\def\l@paragraph{\@dottedtocline{4}{\tocsubsubsectotal}{\tocparanum}}\r
+\def\l@subparagraph{\@dottedtocline{5}{\tocparatotal}{\tocsubparanum}}\r
+\r
+\def\listoffigures{\@restonecolfalse\if@twocolumn\@restonecoltrue\onecolumn\r
+ \fi\section*{\listfigurename\@mkboth{{\listfigurename}}{{\listfigurename}}}\r
+ \@starttoc{lof}\if@restonecol\twocolumn\fi}\r
+\def\l@figure{\@dottedtocline{1}{0em}{1.5em}}\r
+\r
+\def\listoftables{\@restonecolfalse\if@twocolumn\@restonecoltrue\onecolumn\r
+ \fi\section*{\listtablename\@mkboth{{\listtablename}}{{\listtablename}}}\r
+ \@starttoc{lot}\if@restonecol\twocolumn\fi}\r
+\let\l@table\l@figure\r
+\r
+\renewcommand\listoffigures{%\r
+ \section*{\listfigurename\r
+ \@mkboth{\listfigurename}{\listfigurename}}%\r
+ \@starttoc{lof}%\r
+ }\r
+\r
+\renewcommand\listoftables{%\r
+ \section*{\listtablename\r
+ \@mkboth{\listtablename}{\listtablename}}%\r
+ \@starttoc{lot}%\r
+ }\r
+\r
+\ifx\oribibl\undefined\r
+\ifx\citeauthoryear\undefined\r
+\renewenvironment{thebibliography}[1]\r
+ {\section*{\refname}\r
+ \def\@biblabel##1{##1.}\r
+ \small\r
+ \list{\@biblabel{\@arabic\c@enumiv}}%\r
+ {\settowidth\labelwidth{\@biblabel{#1}}%\r
+ \leftmargin\labelwidth\r
+ \advance\leftmargin\labelsep\r
+ \if@openbib\r
+ \advance\leftmargin\bibindent\r
+ \itemindent -\bibindent\r
+ \listparindent \itemindent\r
+ \parsep \z@\r
+ \fi\r
+ \usecounter{enumiv}%\r
+ \let\p@enumiv\@empty\r
+ \renewcommand\theenumiv{\@arabic\c@enumiv}}%\r
+ \if@openbib\r
+ \renewcommand\newblock{\par}%\r
+ \else\r
+ \renewcommand\newblock{\hskip .11em \@plus.33em \@minus.07em}%\r
+ \fi\r
+ \sloppy\clubpenalty4000\widowpenalty4000%\r
+ \sfcode`\.=\@m}\r
+ {\def\@noitemerr\r
+ {\@latex@warning{Empty `thebibliography' environment}}%\r
+ \endlist}\r
+\def\@lbibitem[#1]#2{\item[{[#1]}\hfill]\if@filesw\r
+ {\let\protect\noexpand\immediate\r
+ \write\@auxout{\string\bibcite{#2}{#1}}}\fi\ignorespaces}\r
+\newcount\@tempcntc\r
+\def\@citex[#1]#2{\if@filesw\immediate\write\@auxout{\string\citation{#2}}\fi\r
+ \@tempcnta\z@\@tempcntb\m@ne\def\@citea{}\@cite{\@for\@citeb:=#2\do\r
+ {\@ifundefined\r
+ {b@\@citeb}{\@citeo\@tempcntb\m@ne\@citea\def\@citea{,}{\bfseries\r
+ ?}\@warning\r
+ {Citation `\@citeb' on page \thepage \space undefined}}%\r
+ {\setbox\z@\hbox{\global\@tempcntc0\csname b@\@citeb\endcsname\relax}%\r
+ \ifnum\@tempcntc=\z@ \@citeo\@tempcntb\m@ne\r
+ \@citea\def\@citea{,}\hbox{\csname b@\@citeb\endcsname}%\r
+ \else\r
+ \advance\@tempcntb\@ne\r
+ \ifnum\@tempcntb=\@tempcntc\r
+ \else\advance\@tempcntb\m@ne\@citeo\r
+ \@tempcnta\@tempcntc\@tempcntb\@tempcntc\fi\fi}}\@citeo}{#1}}\r
+\def\@citeo{\ifnum\@tempcnta>\@tempcntb\else\r
+ \@citea\def\@citea{,\,\hskip\z@skip}%\r
+ \ifnum\@tempcnta=\@tempcntb\the\@tempcnta\else\r
+ {\advance\@tempcnta\@ne\ifnum\@tempcnta=\@tempcntb \else\r
+ \def\@citea{--}\fi\r
+ \advance\@tempcnta\m@ne\the\@tempcnta\@citea\the\@tempcntb}\fi\fi}\r
+\else\r
+\renewenvironment{thebibliography}[1]\r
+ {\section*{\refname}\r
+ \small\r
+ \list{}%\r
+ {\settowidth\labelwidth{}%\r
+ \leftmargin\parindent\r
+ \itemindent=-\parindent\r
+ \labelsep=\z@\r
+ \if@openbib\r
+ \advance\leftmargin\bibindent\r
+ \itemindent -\bibindent\r
+ \listparindent \itemindent\r
+ \parsep \z@\r
+ \fi\r
+ \usecounter{enumiv}%\r
+ \let\p@enumiv\@empty\r
+ \renewcommand\theenumiv{}}%\r
+ \if@openbib\r
+ \renewcommand\newblock{\par}%\r
+ \else\r
+ \renewcommand\newblock{\hskip .11em \@plus.33em \@minus.07em}%\r
+ \fi\r
+ \sloppy\clubpenalty4000\widowpenalty4000%\r
+ \sfcode`\.=\@m}\r
+ {\def\@noitemerr\r
+ {\@latex@warning{Empty `thebibliography' environment}}%\r
+ \endlist}\r
+ \def\@cite#1{#1}%\r
+ \def\@lbibitem[#1]#2{\item[]\if@filesw\r
+ {\def\protect##1{\string ##1\space}\immediate\r
+ \write\@auxout{\string\bibcite{#2}{#1}}}\fi\ignorespaces}\r
+ \fi\r
+\else\r
+\@cons\@openbib@code{\noexpand\small}\r
+\fi\r
+\r
+\def\idxquad{\hskip 10\p@}% space that divides entry from number\r
+\r
+\def\@idxitem{\par\hangindent 10\p@}\r
+\r
+\def\subitem{\par\setbox0=\hbox{--\enspace}% second order\r
+ \noindent\hangindent\wd0\box0}% index entry\r
+\r
+\def\subsubitem{\par\setbox0=\hbox{--\,--\enspace}% third\r
+ \noindent\hangindent\wd0\box0}% order index entry\r
+\r
+\def\indexspace{\par \vskip 10\p@ plus5\p@ minus3\p@\relax}\r
+\r
+\renewenvironment{theindex}\r
+ {\@mkboth{\indexname}{\indexname}%\r
+ \thispagestyle{empty}\parindent\z@\r
+ \parskip\z@ \@plus .3\p@\relax\r
+ \let\item\par\r
+ \def\,{\relax\ifmmode\mskip\thinmuskip\r
+ \else\hskip0.2em\ignorespaces\fi}%\r
+ \normalfont\small\r
+ \begin{multicols}{2}[\@makeschapterhead{\indexname}]%\r
+ }\r
+ {\end{multicols}}\r
+\r
+\renewcommand\footnoterule{%\r
+ \kern-3\p@\r
+ \hrule\@width 2truecm\r
+ \kern2.6\p@}\r
+ \newdimen\fnindent\r
+ \fnindent1em\r
+\long\def\@makefntext#1{%\r
+ \parindent \fnindent%\r
+ \leftskip \fnindent%\r
+ \noindent\r
+ \llap{\hb@xt@1em{\hss\@makefnmark\ }}\ignorespaces#1}\r
+\r
+\long\def\@makecaption#1#2{%\r
+ \small\r
+ \vskip\abovecaptionskip\r
+ \sbox\@tempboxa{{\bfseries #1.} #2}%\r
+ \ifdim \wd\@tempboxa >\hsize\r
+ {\bfseries #1.} #2\par\r
+ \else\r
+ \global \@minipagefalse\r
+ \hb@xt@\hsize{\hfil\box\@tempboxa\hfil}%\r
+ \fi\r
+ \vskip\belowcaptionskip}\r
+\r
+\def\fps@figure{htbp}\r
+\def\fnum@figure{\figurename\thinspace\thefigure}\r
+\def \@floatboxreset {%\r
+ \reset@font\r
+ \small\r
+ \@setnobreak\r
+ \@setminipage\r
+}\r
+\def\fps@table{htbp}\r
+\def\fnum@table{\tablename~\thetable}\r
+\renewenvironment{table}\r
+ {\setlength\abovecaptionskip{0\p@}%\r
+ \setlength\belowcaptionskip{10\p@}%\r
+ \@float{table}}\r
+ {\end@float}\r
+\renewenvironment{table*}\r
+ {\setlength\abovecaptionskip{0\p@}%\r
+ \setlength\belowcaptionskip{10\p@}%\r
+ \@dblfloat{table}}\r
+ {\end@dblfloat}\r
+\r
+\long\def\@caption#1[#2]#3{\par\addcontentsline{\csname\r
+ ext@#1\endcsname}{#1}{\protect\numberline{\csname\r
+ the#1\endcsname}{\ignorespaces #2}}\begingroup\r
+ \@parboxrestore\r
+ \@makecaption{\csname fnum@#1\endcsname}{\ignorespaces #3}\par\r
+ \endgroup}\r
+\r
+% LaTeX does not provide a command to enter the authors institute\r
+% addresses. The \institute command is defined here.\r
+\r
+\newcounter{@inst}\r
+\newcounter{@auth}\r
+\newcounter{auco}\r
+\newdimen\instindent\r
+\newbox\authrun\r
+\newtoks\authorrunning\r
+\newtoks\tocauthor\r
+\newbox\titrun\r
+\newtoks\titlerunning\r
+\newtoks\toctitle\r
+\r
+\def\clearheadinfo{\gdef\@author{No Author Given}%\r
+ \gdef\@title{No Title Given}%\r
+ \gdef\@subtitle{}%\r
+ \gdef\@institute{No Institute Given}%\r
+ \gdef\@thanks{}%\r
+ \global\titlerunning={}\global\authorrunning={}%\r
+ \global\toctitle={}\global\tocauthor={}}\r
+\r
+\def\institute#1{\gdef\@institute{#1}}\r
+\r
+\def\institutename{\par\r
+ \begingroup\r
+ \parskip=\z@\r
+ \parindent=\z@\r
+ \setcounter{@inst}{1}%\r
+ \def\and{\par\stepcounter{@inst}%\r
+ \noindent$^{\the@inst}$\enspace\ignorespaces}%\r
+ \setbox0=\vbox{\def\thanks##1{}\@institute}%\r
+ \ifnum\c@@inst=1\relax\r
+ \gdef\fnnstart{0}%\r
+ \else\r
+ \xdef\fnnstart{\c@@inst}%\r
+ \setcounter{@inst}{1}%\r
+ \noindent$^{\the@inst}$\enspace\r
+ \fi\r
+ \ignorespaces\r
+ \@institute\par\r
+ \endgroup}\r
+\r
+\def\@fnsymbol#1{\ensuremath{\ifcase#1\or\star\or{\star\star}\or\r
+ {\star\star\star}\or \dagger\or \ddagger\or\r
+ \mathchar "278\or \mathchar "27B\or \|\or **\or \dagger\dagger\r
+ \or \ddagger\ddagger \else\@ctrerr\fi}}\r
+\r
+\def\inst#1{\unskip$^{#1}$}\r
+\def\fnmsep{\unskip$^,$}\r
+\def\email#1{{\tt#1}}\r
+\AtBeginDocument{\@ifundefined{url}{\def\url#1{#1}}{}%\r
+\@ifpackageloaded{babel}{%\r
+\@ifundefined{extrasenglish}{}{\addto\extrasenglish{\switcht@albion}}%\r
+\@ifundefined{extrasfrenchb}{}{\addto\extrasfrenchb{\switcht@francais}}%\r
+\@ifundefined{extrasgerman}{}{\addto\extrasgerman{\switcht@deutsch}}%\r
+}{\switcht@@therlang}%\r
+\providecommand{\keywords}[1]{\par\addvspace\baselineskip\r
+\noindent\keywordname\enspace\ignorespaces#1}%\r
+}\r
+\def\homedir{\~{ }}\r
+\r
+\def\subtitle#1{\gdef\@subtitle{#1}}\r
+\clearheadinfo\r
+%\r
+%%% to avoid hyperref warnings\r
+\providecommand*{\toclevel@author}{999}\r
+%%% to make title-entry parent of section-entries\r
+\providecommand*{\toclevel@title}{0}\r
+%\r
+\renewcommand\maketitle{\newpage\r
+\phantomsection\r
+ \refstepcounter{chapter}%\r
+ \stepcounter{section}%\r
+ \setcounter{section}{0}%\r
+ \setcounter{subsection}{0}%\r
+ \setcounter{figure}{0}\r
+ \setcounter{table}{0}\r
+ \setcounter{equation}{0}\r
+ \setcounter{footnote}{0}%\r
+ \begingroup\r
+ \parindent=\z@\r
+ \renewcommand\thefootnote{\@fnsymbol\c@footnote}%\r
+ \if@twocolumn\r
+ \ifnum \col@number=\@ne\r
+ \@maketitle\r
+ \else\r
+ \twocolumn[\@maketitle]%\r
+ \fi\r
+ \else\r
+ \newpage\r
+ \global\@topnum\z@ % Prevents figures from going at top of page.\r
+ \@maketitle\r
+ \fi\r
+ \thispagestyle{empty}\@thanks\r
+%\r
+ \def\\{\unskip\ \ignorespaces}\def\inst##1{\unskip{}}%\r
+ \def\thanks##1{\unskip{}}\def\fnmsep{\unskip}%\r
+ \instindent=\hsize\r
+ \advance\instindent by-\headlineindent\r
+ \if!\the\toctitle!\addcontentsline{toc}{title}{\@title}\else\r
+ \addcontentsline{toc}{title}{\the\toctitle}\fi\r
+ \if@runhead\r
+ \if!\the\titlerunning!\else\r
+ \edef\@title{\the\titlerunning}%\r
+ \fi\r
+ \global\setbox\titrun=\hbox{\small\rm\unboldmath\ignorespaces\@title}%\r
+ \ifdim\wd\titrun>\instindent\r
+ \typeout{Title too long for running head. Please supply}%\r
+ \typeout{a shorter form with \string\titlerunning\space prior to\r
+ \string\maketitle}%\r
+ \global\setbox\titrun=\hbox{\small\rm\r
+ Title Suppressed Due to Excessive Length}%\r
+ \fi\r
+ \xdef\@title{\copy\titrun}%\r
+ \fi\r
+%\r
+ \if!\the\tocauthor!\relax\r
+ {\def\and{\noexpand\protect\noexpand\and}%\r
+ \protected@xdef\toc@uthor{\@author}}%\r
+ \else\r
+ \def\\{\noexpand\protect\noexpand\newline}%\r
+ \protected@xdef\scratch{\the\tocauthor}%\r
+ \protected@xdef\toc@uthor{\scratch}%\r
+ \fi\r
+ \addtocontents{toc}{\noexpand\protect\noexpand\authcount{\the\c@auco}}%\r
+ \addcontentsline{toc}{author}{\toc@uthor}%\r
+ \if@runhead\r
+ \if!\the\authorrunning!\r
+ \value{@inst}=\value{@auth}%\r
+ \setcounter{@auth}{1}%\r
+ \else\r
+ \edef\@author{\the\authorrunning}%\r
+ \fi\r
+ \global\setbox\authrun=\hbox{\small\unboldmath\@author\unskip}%\r
+ \ifdim\wd\authrun>\instindent\r
+ \typeout{Names of authors too long for running head. Please supply}%\r
+ \typeout{a shorter form with \string\authorrunning\space prior to\r
+ \string\maketitle}%\r
+ \global\setbox\authrun=\hbox{\small\rm\r
+ Authors Suppressed Due to Excessive Length}%\r
+ \fi\r
+ \xdef\@author{\copy\authrun}%\r
+ \markboth{\@author}{\@title}%\r
+ \fi\r
+ \endgroup\r
+ \setcounter{footnote}{\fnnstart}%\r
+ \clearheadinfo}\r
+%\r
+\def\@maketitle{\newpage\r
+ \markboth{}{}%\r
+ \def\lastand{\ifnum\value{@inst}=2\relax\r
+ \unskip{} \andname\\r
+ \else\r
+ \unskip \lastandname\\r
+ \fi}%\r
+ \def\and{\stepcounter{@auth}\relax\r
+ \ifnum\value{@auth}=\value{@inst}%\r
+ \lastand\r
+ \else\r
+ \unskip,\r
+ \fi}%\r
+ \begin{center}%\r
+ \let\newline\\\r
+ {\Large \bfseries\boldmath\r
+ \pretolerance=10000\r
+ \@title \par}\vskip .8cm\r
+\if!\@subtitle!\else {\large \bfseries\boldmath\r
+ \vskip -.65cm\r
+ \pretolerance=10000\r
+ \@subtitle \par}\vskip .8cm\fi\r
+ \setbox0=\vbox{\setcounter{@auth}{1}\def\and{\stepcounter{@auth}}%\r
+ \def\thanks##1{}\@author}%\r
+ \global\value{@inst}=\value{@auth}%\r
+ \global\value{auco}=\value{@auth}%\r
+ \setcounter{@auth}{1}%\r
+{\lineskip .5em\r
+\noindent\ignorespaces\r
+\@author\vskip.35cm}\r
+ {\small\institutename}\r
+ \end{center}%\r
+ }\r
+\r
+% definition of the "\spnewtheorem" command.\r
+%\r
+% Usage:\r
+%\r
+% \spnewtheorem{env_nam}{caption}[within]{cap_font}{body_font}\r
+% or \spnewtheorem{env_nam}[numbered_like]{caption}{cap_font}{body_font}\r
+% or \spnewtheorem*{env_nam}{caption}{cap_font}{body_font}\r
+%\r
+% New is "cap_font" and "body_font". It stands for\r
+% fontdefinition of the caption and the text itself.\r
+%\r
+% "\spnewtheorem*" gives a theorem without number.\r
+%\r
+% A defined spnewthoerem environment is used as described\r
+% by Lamport.\r
+%\r
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\r
+\r
+\def\@thmcountersep{}\r
+\def\@thmcounterend{.}\r
+\r
+\def\spnewtheorem{\@ifstar{\@sthm}{\@Sthm}}\r
+\r
+% definition of \spnewtheorem with number\r
+\r
+\def\@spnthm#1#2{%\r
+ \@ifnextchar[{\@spxnthm{#1}{#2}}{\@spynthm{#1}{#2}}}\r
+\def\@Sthm#1{\@ifnextchar[{\@spothm{#1}}{\@spnthm{#1}}}\r
+\r
+\def\@spxnthm#1#2[#3]#4#5{\expandafter\@ifdefinable\csname #1\endcsname\r
+ {\@definecounter{#1}\@addtoreset{#1}{#3}%\r
+ \expandafter\xdef\csname the#1\endcsname{\expandafter\noexpand\r
+ \csname the#3\endcsname \noexpand\@thmcountersep \@thmcounter{#1}}%\r
+ \expandafter\xdef\csname #1name\endcsname{#2}%\r
+ \global\@namedef{#1}{\@spthm{#1}{\csname #1name\endcsname}{#4}{#5}}%\r
+ \global\@namedef{end#1}{\@endtheorem}}}\r
+\r
+\def\@spynthm#1#2#3#4{\expandafter\@ifdefinable\csname #1\endcsname\r
+ {\@definecounter{#1}%\r
+ \expandafter\xdef\csname the#1\endcsname{\@thmcounter{#1}}%\r
+ \expandafter\xdef\csname #1name\endcsname{#2}%\r
+ \global\@namedef{#1}{\@spthm{#1}{\csname #1name\endcsname}{#3}{#4}}%\r
+ \global\@namedef{end#1}{\@endtheorem}}}\r
+\r
+\def\@spothm#1[#2]#3#4#5{%\r
+ \@ifundefined{c@#2}{\@latexerr{No theorem environment `#2' defined}\@eha}%\r
+ {\expandafter\@ifdefinable\csname #1\endcsname\r
+ {\newaliascnt{#1}{#2}%\r
+ \expandafter\xdef\csname #1name\endcsname{#3}%\r
+ \global\@namedef{#1}{\@spthm{#1}{\csname #1name\endcsname}{#4}{#5}}%\r
+ \global\@namedef{end#1}{\@endtheorem}}}}\r
+\r
+\def\@spthm#1#2#3#4{\topsep 7\p@ \@plus2\p@ \@minus4\p@\r
+\refstepcounter{#1}%\r
+\@ifnextchar[{\@spythm{#1}{#2}{#3}{#4}}{\@spxthm{#1}{#2}{#3}{#4}}}\r
+\r
+\def\@spxthm#1#2#3#4{\@spbegintheorem{#2}{\csname the#1\endcsname}{#3}{#4}%\r
+ \ignorespaces}\r
+\r
+\def\@spythm#1#2#3#4[#5]{\@spopargbegintheorem{#2}{\csname\r
+ the#1\endcsname}{#5}{#3}{#4}\ignorespaces}\r
+\r
+\def\@spbegintheorem#1#2#3#4{\trivlist\r
+ \item[\hskip\labelsep{#3#1\ #2\@thmcounterend}]#4}\r
+\r
+\def\@spopargbegintheorem#1#2#3#4#5{\trivlist\r
+ \item[\hskip\labelsep{#4#1\ #2}]{#4(#3)\@thmcounterend\ }#5}\r
+\r
+% definition of \spnewtheorem* without number\r
+\r
+\def\@sthm#1#2{\@Ynthm{#1}{#2}}\r
+\r
+\def\@Ynthm#1#2#3#4{\expandafter\@ifdefinable\csname #1\endcsname\r
+ {\global\@namedef{#1}{\@Thm{\csname #1name\endcsname}{#3}{#4}}%\r
+ \expandafter\xdef\csname #1name\endcsname{#2}%\r
+ \global\@namedef{end#1}{\@endtheorem}}}\r
+\r
+\def\@Thm#1#2#3{\topsep 7\p@ \@plus2\p@ \@minus4\p@\r
+\@ifnextchar[{\@Ythm{#1}{#2}{#3}}{\@Xthm{#1}{#2}{#3}}}\r
+\r
+\def\@Xthm#1#2#3{\@Begintheorem{#1}{#2}{#3}\ignorespaces}\r
+\r
+\def\@Ythm#1#2#3[#4]{\@Opargbegintheorem{#1}\r
+ {#4}{#2}{#3}\ignorespaces}\r
+\r
+\def\@Begintheorem#1#2#3{#3\trivlist\r
+ \item[\hskip\labelsep{#2#1\@thmcounterend}]}\r
+\r
+\def\@Opargbegintheorem#1#2#3#4{#4\trivlist\r
+ \item[\hskip\labelsep{#3#1}]{#3(#2)\@thmcounterend\ }}\r
+\r
+\if@envcntsect\r
+ \def\@thmcountersep{.}\r
+ \spnewtheorem{theorem}{Theorem}[section]{\bfseries}{\itshape}\r
+\else\r
+ \spnewtheorem{theorem}{Theorem}{\bfseries}{\itshape}\r
+ \if@envcntreset\r
+ \@addtoreset{theorem}{section}\r
+ \else\r
+ \@addtoreset{theorem}{chapter}\r
+ \fi\r
+\fi\r
+\r
+%definition of divers theorem environments\r
+\spnewtheorem*{claim}{Claim}{\itshape}{\rmfamily}\r
+\spnewtheorem*{proof}{Proof}{\itshape}{\rmfamily}\r
+\if@envcntsame % alle Umgebungen wie Theorem.\r
+ \def\spn@wtheorem#1#2#3#4{\@spothm{#1}[theorem]{#2}{#3}{#4}}\r
+\else % alle Umgebungen mit eigenem Zaehler\r
+ \if@envcntsect % mit section numeriert\r
+ \def\spn@wtheorem#1#2#3#4{\@spxnthm{#1}{#2}[section]{#3}{#4}}\r
+ \else % nicht mit section numeriert\r
+ \if@envcntreset\r
+ \def\spn@wtheorem#1#2#3#4{\@spynthm{#1}{#2}{#3}{#4}\r
+ \@addtoreset{#1}{section}}\r
+ \else\r
+ \def\spn@wtheorem#1#2#3#4{\@spynthm{#1}{#2}{#3}{#4}\r
+ \@addtoreset{#1}{chapter}}%\r
+ \fi\r
+ \fi\r
+\fi\r
+\spn@wtheorem{case}{Case}{\itshape}{\rmfamily}\r
+\spn@wtheorem{conjecture}{Conjecture}{\itshape}{\rmfamily}\r
+\spn@wtheorem{corollary}{Corollary}{\bfseries}{\itshape}\r
+\spn@wtheorem{definition}{Definition}{\bfseries}{\itshape}\r
+\spn@wtheorem{example}{Example}{\itshape}{\rmfamily}\r
+\spn@wtheorem{exercise}{Exercise}{\itshape}{\rmfamily}\r
+\spn@wtheorem{lemma}{Lemma}{\bfseries}{\itshape}\r
+\spn@wtheorem{note}{Note}{\itshape}{\rmfamily}\r
+\spn@wtheorem{problem}{Problem}{\itshape}{\rmfamily}\r
+\spn@wtheorem{property}{Property}{\itshape}{\rmfamily}\r
+\spn@wtheorem{proposition}{Proposition}{\bfseries}{\itshape}\r
+\spn@wtheorem{question}{Question}{\itshape}{\rmfamily}\r
+\spn@wtheorem{solution}{Solution}{\itshape}{\rmfamily}\r
+\spn@wtheorem{remark}{Remark}{\itshape}{\rmfamily}\r
+\r
+\def\@takefromreset#1#2{%\r
+ \def\@tempa{#1}%\r
+ \let\@tempd\@elt\r
+ \def\@elt##1{%\r
+ \def\@tempb{##1}%\r
+ \ifx\@tempa\@tempb\else\r
+ \@addtoreset{##1}{#2}%\r
+ \fi}%\r
+ \expandafter\expandafter\let\expandafter\@tempc\csname cl@#2\endcsname\r
+ \expandafter\def\csname cl@#2\endcsname{}%\r
+ \@tempc\r
+ \let\@elt\@tempd}\r
+\r
+\def\theopargself{\def\@spopargbegintheorem##1##2##3##4##5{\trivlist\r
+ \item[\hskip\labelsep{##4##1\ ##2}]{##4##3\@thmcounterend\ }##5}\r
+ \def\@Opargbegintheorem##1##2##3##4{##4\trivlist\r
+ \item[\hskip\labelsep{##3##1}]{##3##2\@thmcounterend\ }}\r
+ }\r
+\r
+\renewenvironment{abstract}{%\r
+ \list{}{\advance\topsep by0.35cm\relax\small\r
+ \leftmargin=1cm\r
+ \labelwidth=\z@\r
+ \listparindent=\z@\r
+ \itemindent\listparindent\r
+ \rightmargin\leftmargin}\item[\hskip\labelsep\r
+ \bfseries\abstractname]}\r
+ {\endlist}\r
+\r
+\newdimen\headlineindent % dimension for space between\r
+\headlineindent=1.166cm % number and text of headings.\r
+\r
+\def\ps@headings{\let\@mkboth\@gobbletwo\r
+ \let\@oddfoot\@empty\let\@evenfoot\@empty\r
+ \def\@evenhead{\normalfont\small\rlap{\thepage}\hspace{\headlineindent}%\r
+ \leftmark\hfil}\r
+ \def\@oddhead{\normalfont\small\hfil\rightmark\hspace{\headlineindent}%\r
+ \llap{\thepage}}\r
+ \def\chaptermark##1{}%\r
+ \def\sectionmark##1{}%\r
+ \def\subsectionmark##1{}}\r
+\r
+\def\ps@titlepage{\let\@mkboth\@gobbletwo\r
+ \let\@oddfoot\@empty\let\@evenfoot\@empty\r
+ \def\@evenhead{\normalfont\small\rlap{\thepage}\hspace{\headlineindent}%\r
+ \hfil}\r
+ \def\@oddhead{\normalfont\small\hfil\hspace{\headlineindent}%\r
+ \llap{\thepage}}\r
+ \def\chaptermark##1{}%\r
+ \def\sectionmark##1{}%\r
+ \def\subsectionmark##1{}}\r
+\r
+\if@runhead\ps@headings\else\r
+\ps@empty\fi\r
+\r
+\setlength\arraycolsep{1.4\p@}\r
+\setlength\tabcolsep{1.4\p@}\r
+\r
+\endinput\r
+%end of file llncs.cls\r
--- /dev/null
+%% BibTeX bibliography style `splncs03'\r
+%%\r
+%% BibTeX bibliography style for use with numbered references in\r
+%% Springer Verlag's "Lecture Notes in Computer Science" series.\r
+%% (See Springer's documentation for llncs.cls for\r
+%% more details of the suggested reference format.) Note that this\r
+%% file will not work for author-year style citations.\r
+%%\r
+%% Use \documentclass{llncs} and \bibliographystyle{splncs03}, and cite\r
+%% a reference with (e.g.) \cite{smith77} to get a "[1]" in the text.\r
+%%\r
+%% This file comes to you courtesy of Maurizio "Titto" Patrignani of\r
+%% Dipartimento di Informatica e Automazione Universita' Roma Tre\r
+%%\r
+%% ================================================================================================\r
+%% This was file `titto-lncs-02.bst' produced on Wed Apr 1, 2009\r
+%% Edited by hand by titto based on `titto-lncs-01.bst' (see below)\r
+%%\r
+%% CHANGES (with respect to titto-lncs-01.bst):\r
+%% - Removed the call to \urlprefix (thus no "URL" string is added to the output)\r
+%% ================================================================================================\r
+%% This was file `titto-lncs-01.bst' produced on Fri Aug 22, 2008\r
+%% Edited by hand by titto based on `titto.bst' (see below)\r
+%%\r
+%% CHANGES (with respect to titto.bst):\r
+%% - Removed the "capitalize" command for editors string "(eds.)" and "(ed.)"\r
+%% - Introduced the functions titto.bbl.pages and titto.bbl.page for journal pages (without "pp.")\r
+%% - Added a new.sentence command to separate with a dot booktitle and series in the inproceedings\r
+%% - Commented all new.block commands before urls and notes (to separate them with a comma)\r
+%% - Introduced the functions titto.bbl.volume for handling journal volumes (without "vol." label)\r
+%% - Used for editors the same name conventions used for authors (see function format.in.ed.booktitle)\r
+%% - Removed a \newblock to avoid long spaces between title and "In: ..."\r
+%% - Added function titto.space.prefix to add a space instead of "~" after the (removed) "vol." label\r
+%% ================================================================================================\r
+%% This was file `titto.bst',\r
+%% generated with the docstrip utility.\r
+%%\r
+%% The original source files were:\r
+%%\r
+%% 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,')\r
+%% ----------------------------------------\r
+%% *** Tentative .bst file for Springer LNCS ***\r
+%%\r
+%% Copyright 1994-2007 Patrick W Daly\r
+ % ===============================================================\r
+ % IMPORTANT NOTICE:\r
+ % This bibliographic style (bst) file has been generated from one or\r
+ % more master bibliographic style (mbs) files, listed above.\r
+ %\r
+ % This generated file can be redistributed and/or modified under the terms\r
+ % of the LaTeX Project Public License Distributed from CTAN\r
+ % archives in directory macros/latex/base/lppl.txt; either\r
+ % version 1 of the License, or any later version.\r
+ % ===============================================================\r
+ % Name and version information of the main mbs file:\r
+ % \ProvidesFile{merlin.mbs}[2007/04/24 4.20 (PWD, AO, DPC)]\r
+ % For use with BibTeX version 0.99a or later\r
+ %-------------------------------------------------------------------\r
+ % This bibliography style file is intended for texts in ENGLISH\r
+ % This is a numerical citation style, and as such is standard LaTeX.\r
+ % It requires no extra package to interface to the main text.\r
+ % The form of the \bibitem entries is\r
+ % \bibitem{key}...\r
+ % Usage of \cite is as follows:\r
+ % \cite{key} ==>> [#]\r
+ % \cite[chap. 2]{key} ==>> [#, chap. 2]\r
+ % where # is a number determined by the ordering in the reference list.\r
+ % The order in the reference list is alphabetical by authors.\r
+ %---------------------------------------------------------------------\r
+\r
+ENTRY\r
+ { address\r
+ author\r
+ booktitle\r
+ chapter\r
+ edition\r
+ editor\r
+ eid\r
+ howpublished\r
+ institution\r
+ journal\r
+ key\r
+ month\r
+ note\r
+ number\r
+ organization\r
+ pages\r
+ publisher\r
+ school\r
+ series\r
+ title\r
+ type\r
+ url\r
+ volume\r
+ year\r
+ }\r
+ {}\r
+ { label }\r
+INTEGERS { output.state before.all mid.sentence after.sentence after.block }\r
+FUNCTION {init.state.consts}\r
+{ #0 'before.all :=\r
+ #1 'mid.sentence :=\r
+ #2 'after.sentence :=\r
+ #3 'after.block :=\r
+}\r
+STRINGS { s t}\r
+FUNCTION {output.nonnull}\r
+{ 's :=\r
+ output.state mid.sentence =\r
+ { ", " * write$ }\r
+ { output.state after.block =\r
+ { add.period$ write$\r
+% newline$\r
+% "\newblock " write$ % removed for titto-lncs-01\r
+ " " write$ % to avoid long spaces between title and "In: ..."\r
+ }\r
+ { output.state before.all =\r
+ 'write$\r
+ { add.period$ " " * write$ }\r
+ if$\r
+ }\r
+ if$\r
+ mid.sentence 'output.state :=\r
+ }\r
+ if$\r
+ s\r
+}\r
+FUNCTION {output}\r
+{ duplicate$ empty$\r
+ 'pop$\r
+ 'output.nonnull\r
+ if$\r
+}\r
+FUNCTION {output.check}\r
+{ 't :=\r
+ duplicate$ empty$\r
+ { pop$ "empty " t * " in " * cite$ * warning$ }\r
+ 'output.nonnull\r
+ if$\r
+}\r
+FUNCTION {fin.entry}\r
+{ duplicate$ empty$\r
+ 'pop$\r
+ 'write$\r
+ if$\r
+ newline$\r
+}\r
+\r
+FUNCTION {new.block}\r
+{ output.state before.all =\r
+ 'skip$\r
+ { after.block 'output.state := }\r
+ if$\r
+}\r
+FUNCTION {new.sentence}\r
+{ output.state after.block =\r
+ 'skip$\r
+ { output.state before.all =\r
+ 'skip$\r
+ { after.sentence 'output.state := }\r
+ if$\r
+ }\r
+ if$\r
+}\r
+FUNCTION {add.blank}\r
+{ " " * before.all 'output.state :=\r
+}\r
+\r
+\r
+FUNCTION {add.colon}\r
+{ duplicate$ empty$\r
+ 'skip$\r
+ { ":" * add.blank }\r
+ if$\r
+}\r
+\r
+FUNCTION {date.block}\r
+{\r
+ new.block\r
+}\r
+\r
+FUNCTION {not}\r
+{ { #0 }\r
+ { #1 }\r
+ if$\r
+}\r
+FUNCTION {and}\r
+{ 'skip$\r
+ { pop$ #0 }\r
+ if$\r
+}\r
+FUNCTION {or}\r
+{ { pop$ #1 }\r
+ 'skip$\r
+ if$\r
+}\r
+STRINGS {z}\r
+FUNCTION {remove.dots}\r
+{ 'z :=\r
+ ""\r
+ { z empty$ not }\r
+ { z #1 #1 substring$\r
+ z #2 global.max$ substring$ 'z :=\r
+ duplicate$ "." = 'pop$\r
+ { * }\r
+ if$\r
+ }\r
+ while$\r
+}\r
+FUNCTION {new.block.checka}\r
+{ empty$\r
+ 'skip$\r
+ 'new.block\r
+ if$\r
+}\r
+FUNCTION {new.block.checkb}\r
+{ empty$\r
+ swap$ empty$\r
+ and\r
+ 'skip$\r
+ 'new.block\r
+ if$\r
+}\r
+FUNCTION {new.sentence.checka}\r
+{ empty$\r
+ 'skip$\r
+ 'new.sentence\r
+ if$\r
+}\r
+FUNCTION {new.sentence.checkb}\r
+{ empty$\r
+ swap$ empty$\r
+ and\r
+ 'skip$\r
+ 'new.sentence\r
+ if$\r
+}\r
+FUNCTION {field.or.null}\r
+{ duplicate$ empty$\r
+ { pop$ "" }\r
+ 'skip$\r
+ if$\r
+}\r
+FUNCTION {emphasize}\r
+{ skip$ }\r
+FUNCTION {tie.or.space.prefix}\r
+{ duplicate$ text.length$ #3 <\r
+ { "~" }\r
+ { " " }\r
+ if$\r
+ swap$\r
+}\r
+FUNCTION {titto.space.prefix} % always introduce a space\r
+{ duplicate$ text.length$ #3 <\r
+ { " " }\r
+ { " " }\r
+ if$\r
+ swap$\r
+}\r
+\r
+\r
+FUNCTION {capitalize}\r
+{ "u" change.case$ "t" change.case$ }\r
+\r
+FUNCTION {space.word}\r
+{ " " swap$ * " " * }\r
+ % Here are the language-specific definitions for explicit words.\r
+ % Each function has a name bbl.xxx where xxx is the English word.\r
+ % The language selected here is ENGLISH\r
+FUNCTION {bbl.and}\r
+{ "and"}\r
+\r
+FUNCTION {bbl.etal}\r
+{ "et~al." }\r
+\r
+FUNCTION {bbl.editors}\r
+{ "eds." }\r
+\r
+FUNCTION {bbl.editor}\r
+{ "ed." }\r
+\r
+FUNCTION {bbl.edby}\r
+{ "edited by" }\r
+\r
+FUNCTION {bbl.edition}\r
+{ "edn." }\r
+\r
+FUNCTION {bbl.volume}\r
+{ "vol." }\r
+\r
+FUNCTION {titto.bbl.volume} % for handling journals\r
+{ "" }\r
+\r
+FUNCTION {bbl.of}\r
+{ "of" }\r
+\r
+FUNCTION {bbl.number}\r
+{ "no." }\r
+\r
+FUNCTION {bbl.nr}\r
+{ "no." }\r
+\r
+FUNCTION {bbl.in}\r
+{ "in" }\r
+\r
+FUNCTION {bbl.pages}\r
+{ "pp." }\r
+\r
+FUNCTION {bbl.page}\r
+{ "p." }\r
+\r
+FUNCTION {titto.bbl.pages} % for journals\r
+{ "" }\r
+\r
+FUNCTION {titto.bbl.page} % for journals\r
+{ "" }\r
+\r
+FUNCTION {bbl.chapter}\r
+{ "chap." }\r
+\r
+FUNCTION {bbl.techrep}\r
+{ "Tech. Rep." }\r
+\r
+FUNCTION {bbl.mthesis}\r
+{ "Master's thesis" }\r
+\r
+FUNCTION {bbl.phdthesis}\r
+{ "Ph.D. thesis" }\r
+\r
+MACRO {jan} {"Jan."}\r
+\r
+MACRO {feb} {"Feb."}\r
+\r
+MACRO {mar} {"Mar."}\r
+\r
+MACRO {apr} {"Apr."}\r
+\r
+MACRO {may} {"May"}\r
+\r
+MACRO {jun} {"Jun."}\r
+\r
+MACRO {jul} {"Jul."}\r
+\r
+MACRO {aug} {"Aug."}\r
+\r
+MACRO {sep} {"Sep."}\r
+\r
+MACRO {oct} {"Oct."}\r
+\r
+MACRO {nov} {"Nov."}\r
+\r
+MACRO {dec} {"Dec."}\r
+\r
+MACRO {acmcs} {"ACM Comput. Surv."}\r
+\r
+MACRO {acta} {"Acta Inf."}\r
+\r
+MACRO {cacm} {"Commun. ACM"}\r
+\r
+MACRO {ibmjrd} {"IBM J. Res. Dev."}\r
+\r
+MACRO {ibmsj} {"IBM Syst.~J."}\r
+\r
+MACRO {ieeese} {"IEEE Trans. Software Eng."}\r
+\r
+MACRO {ieeetc} {"IEEE Trans. Comput."}\r
+\r
+MACRO {ieeetcad}\r
+ {"IEEE Trans. Comput. Aid. Des."}\r
+\r
+MACRO {ipl} {"Inf. Process. Lett."}\r
+\r
+MACRO {jacm} {"J.~ACM"}\r
+\r
+MACRO {jcss} {"J.~Comput. Syst. Sci."}\r
+\r
+MACRO {scp} {"Sci. Comput. Program."}\r
+\r
+MACRO {sicomp} {"SIAM J. Comput."}\r
+\r
+MACRO {tocs} {"ACM Trans. Comput. Syst."}\r
+\r
+MACRO {tods} {"ACM Trans. Database Syst."}\r
+\r
+MACRO {tog} {"ACM Trans. Graphic."}\r
+\r
+MACRO {toms} {"ACM Trans. Math. Software"}\r
+\r
+MACRO {toois} {"ACM Trans. Office Inf. Syst."}\r
+\r
+MACRO {toplas} {"ACM Trans. Progr. Lang. Syst."}\r
+\r
+MACRO {tcs} {"Theor. Comput. Sci."}\r
+\r
+FUNCTION {bibinfo.check}\r
+{ swap$\r
+ duplicate$ missing$\r
+ {\r
+ pop$ pop$\r
+ ""\r
+ }\r
+ { duplicate$ empty$\r
+ {\r
+ swap$ pop$\r
+ }\r
+ { swap$\r
+ pop$\r
+ }\r
+ if$\r
+ }\r
+ if$\r
+}\r
+FUNCTION {bibinfo.warn}\r
+{ swap$\r
+ duplicate$ missing$\r
+ {\r
+ swap$ "missing " swap$ * " in " * cite$ * warning$ pop$\r
+ ""\r
+ }\r
+ { duplicate$ empty$\r
+ {\r
+ swap$ "empty " swap$ * " in " * cite$ * warning$\r
+ }\r
+ { swap$\r
+ pop$\r
+ }\r
+ if$\r
+ }\r
+ if$\r
+}\r
+FUNCTION {format.url}\r
+{ url empty$\r
+ { "" }\r
+% { "\urlprefix\url{" url * "}" * }\r
+ { "\url{" url * "}" * } % changed in titto-lncs-02.bst\r
+ if$\r
+}\r
+\r
+INTEGERS { nameptr namesleft numnames }\r
+\r
+\r
+STRINGS { bibinfo}\r
+\r
+FUNCTION {format.names}\r
+{ 'bibinfo :=\r
+ duplicate$ empty$ 'skip$ {\r
+ 's :=\r
+ "" 't :=\r
+ #1 'nameptr :=\r
+ s num.names$ 'numnames :=\r
+ numnames 'namesleft :=\r
+ { namesleft #0 > }\r
+ { s nameptr\r
+ "{vv~}{ll}{, jj}{, f{.}.}"\r
+ format.name$\r
+ bibinfo bibinfo.check\r
+ 't :=\r
+ nameptr #1 >\r
+ {\r
+ namesleft #1 >\r
+ { ", " * t * }\r
+ {\r
+ s nameptr "{ll}" format.name$ duplicate$ "others" =\r
+ { 't := }\r
+ { pop$ }\r
+ if$\r
+ "," *\r
+ t "others" =\r
+ {\r
+ " " * bbl.etal *\r
+ }\r
+ { " " * t * }\r
+ if$\r
+ }\r
+ if$\r
+ }\r
+ 't\r
+ if$\r
+ nameptr #1 + 'nameptr :=\r
+ namesleft #1 - 'namesleft :=\r
+ }\r
+ while$\r
+ } if$\r
+}\r
+FUNCTION {format.names.ed}\r
+{\r
+ 'bibinfo :=\r
+ duplicate$ empty$ 'skip$ {\r
+ 's :=\r
+ "" 't :=\r
+ #1 'nameptr :=\r
+ s num.names$ 'numnames :=\r
+ numnames 'namesleft :=\r
+ { namesleft #0 > }\r
+ { s nameptr\r
+ "{f{.}.~}{vv~}{ll}{ jj}"\r
+ format.name$\r
+ bibinfo bibinfo.check\r
+ 't :=\r
+ nameptr #1 >\r
+ {\r
+ namesleft #1 >\r
+ { ", " * t * }\r
+ {\r
+ s nameptr "{ll}" format.name$ duplicate$ "others" =\r
+ { 't := }\r
+ { pop$ }\r
+ if$\r
+ "," *\r
+ t "others" =\r
+ {\r
+\r
+ " " * bbl.etal *\r
+ }\r
+ { " " * t * }\r
+ if$\r
+ }\r
+ if$\r
+ }\r
+ 't\r
+ if$\r
+ nameptr #1 + 'nameptr :=\r
+ namesleft #1 - 'namesleft :=\r
+ }\r
+ while$\r
+ } if$\r
+}\r
+FUNCTION {format.authors}\r
+{ author "author" format.names\r
+}\r
+FUNCTION {get.bbl.editor}\r
+{ editor num.names$ #1 > 'bbl.editors 'bbl.editor if$ }\r
+\r
+FUNCTION {format.editors}\r
+{ editor "editor" format.names duplicate$ empty$ 'skip$\r
+ {\r
+ " " *\r
+ get.bbl.editor\r
+% capitalize\r
+ "(" swap$ * ")" *\r
+ *\r
+ }\r
+ if$\r
+}\r
+FUNCTION {format.note}\r
+{\r
+ note empty$\r
+ { "" }\r
+ { note #1 #1 substring$\r
+ duplicate$ "{" =\r
+ 'skip$\r
+ { output.state mid.sentence =\r
+ { "l" }\r
+ { "u" }\r
+ if$\r
+ change.case$\r
+ }\r
+ if$\r
+ note #2 global.max$ substring$ * "note" bibinfo.check\r
+ }\r
+ if$\r
+}\r
+\r
+FUNCTION {format.title}\r
+{ title\r
+ duplicate$ empty$ 'skip$\r
+ { "t" change.case$ }\r
+ if$\r
+ "title" bibinfo.check\r
+}\r
+FUNCTION {output.bibitem}\r
+{ newline$\r
+ "\bibitem{" write$\r
+ cite$ write$\r
+ "}" write$\r
+ newline$\r
+ ""\r
+ before.all 'output.state :=\r
+}\r
+\r
+FUNCTION {n.dashify}\r
+{\r
+ 't :=\r
+ ""\r
+ { t empty$ not }\r
+ { t #1 #1 substring$ "-" =\r
+ { t #1 #2 substring$ "--" = not\r
+ { "--" *\r
+ t #2 global.max$ substring$ 't :=\r
+ }\r
+ { { t #1 #1 substring$ "-" = }\r
+ { "-" *\r
+ t #2 global.max$ substring$ 't :=\r
+ }\r
+ while$\r
+ }\r
+ if$\r
+ }\r
+ { t #1 #1 substring$ *\r
+ t #2 global.max$ substring$ 't :=\r
+ }\r
+ if$\r
+ }\r
+ while$\r
+}\r
+\r
+FUNCTION {word.in}\r
+{ bbl.in capitalize\r
+ ":" *\r
+ " " * }\r
+\r
+FUNCTION {format.date}\r
+{\r
+ month "month" bibinfo.check\r
+ duplicate$ empty$\r
+ year "year" bibinfo.check duplicate$ empty$\r
+ { swap$ 'skip$\r
+ { "there's a month but no year in " cite$ * warning$ }\r
+ if$\r
+ *\r
+ }\r
+ { swap$ 'skip$\r
+ {\r
+ swap$\r
+ " " * swap$\r
+ }\r
+ if$\r
+ *\r
+ remove.dots\r
+ }\r
+ if$\r
+ duplicate$ empty$\r
+ 'skip$\r
+ {\r
+ before.all 'output.state :=\r
+ " (" swap$ * ")" *\r
+ }\r
+ if$\r
+}\r
+FUNCTION {format.btitle}\r
+{ title "title" bibinfo.check\r
+ duplicate$ empty$ 'skip$\r
+ {\r
+ }\r
+ if$\r
+}\r
+FUNCTION {either.or.check}\r
+{ empty$\r
+ 'pop$\r
+ { "can't use both " swap$ * " fields in " * cite$ * warning$ }\r
+ if$\r
+}\r
+FUNCTION {format.bvolume}\r
+{ volume empty$\r
+ { "" }\r
+ { bbl.volume volume tie.or.space.prefix\r
+ "volume" bibinfo.check * *\r
+ series "series" bibinfo.check\r
+ duplicate$ empty$ 'pop$\r
+ { emphasize ", " * swap$ * }\r
+ if$\r
+ "volume and number" number either.or.check\r
+ }\r
+ if$\r
+}\r
+FUNCTION {format.number.series}\r
+{ volume empty$\r
+ { number empty$\r
+ { series field.or.null }\r
+ { output.state mid.sentence =\r
+ { bbl.number }\r
+ { bbl.number capitalize }\r
+ if$\r
+ number tie.or.space.prefix "number" bibinfo.check * *\r
+ series empty$\r
+ { "there's a number but no series in " cite$ * warning$ }\r
+ { bbl.in space.word *\r
+ series "series" bibinfo.check *\r
+ }\r
+ if$\r
+ }\r
+ if$\r
+ }\r
+ { "" }\r
+ if$\r
+}\r
+\r
+FUNCTION {format.edition}\r
+{ edition duplicate$ empty$ 'skip$\r
+ {\r
+ output.state mid.sentence =\r
+ { "l" }\r
+ { "t" }\r
+ if$ change.case$\r
+ "edition" bibinfo.check\r
+ " " * bbl.edition *\r
+ }\r
+ if$\r
+}\r
+INTEGERS { multiresult }\r
+FUNCTION {multi.page.check}\r
+{ 't :=\r
+ #0 'multiresult :=\r
+ { multiresult not\r
+ t empty$ not\r
+ and\r
+ }\r
+ { t #1 #1 substring$\r
+ duplicate$ "-" =\r
+ swap$ duplicate$ "," =\r
+ swap$ "+" =\r
+ or or\r
+ { #1 'multiresult := }\r
+ { t #2 global.max$ substring$ 't := }\r
+ if$\r
+ }\r
+ while$\r
+ multiresult\r
+}\r
+FUNCTION {format.pages}\r
+{ pages duplicate$ empty$ 'skip$\r
+ { duplicate$ multi.page.check\r
+ {\r
+ bbl.pages swap$\r
+ n.dashify\r
+ }\r
+ {\r
+ bbl.page swap$\r
+ }\r
+ if$\r
+ tie.or.space.prefix\r
+ "pages" bibinfo.check\r
+ * *\r
+ }\r
+ if$\r
+}\r
+FUNCTION {format.journal.pages}\r
+{ pages duplicate$ empty$ 'pop$\r
+ { swap$ duplicate$ empty$\r
+ { pop$ pop$ format.pages }\r
+ {\r
+ ", " *\r
+ swap$\r
+ n.dashify\r
+ pages multi.page.check\r
+ 'titto.bbl.pages\r
+ 'titto.bbl.page\r
+ if$\r
+ swap$ tie.or.space.prefix\r
+ "pages" bibinfo.check\r
+ * *\r
+ *\r
+ }\r
+ if$\r
+ }\r
+ if$\r
+}\r
+FUNCTION {format.journal.eid}\r
+{ eid "eid" bibinfo.check\r
+ duplicate$ empty$ 'pop$\r
+ { swap$ duplicate$ empty$ 'skip$\r
+ {\r
+ ", " *\r
+ }\r
+ if$\r
+ swap$ *\r
+ }\r
+ if$\r
+}\r
+FUNCTION {format.vol.num.pages} % this function is used only for journal entries\r
+{ volume field.or.null\r
+ duplicate$ empty$ 'skip$\r
+ {\r
+% bbl.volume swap$ tie.or.space.prefix\r
+ titto.bbl.volume swap$ titto.space.prefix\r
+% rationale for the change above: for journals you don't want "vol." label\r
+% hence it does not make sense to attach the journal number to the label when\r
+% it is short\r
+ "volume" bibinfo.check\r
+ * *\r
+ }\r
+ if$\r
+ number "number" bibinfo.check duplicate$ empty$ 'skip$\r
+ {\r
+ swap$ duplicate$ empty$\r
+ { "there's a number but no volume in " cite$ * warning$ }\r
+ 'skip$\r
+ if$\r
+ swap$\r
+ "(" swap$ * ")" *\r
+ }\r
+ if$ *\r
+ eid empty$\r
+ { format.journal.pages }\r
+ { format.journal.eid }\r
+ if$\r
+}\r
+\r
+FUNCTION {format.chapter.pages}\r
+{ chapter empty$\r
+ 'format.pages\r
+ { type empty$\r
+ { bbl.chapter }\r
+ { type "l" change.case$\r
+ "type" bibinfo.check\r
+ }\r
+ if$\r
+ chapter tie.or.space.prefix\r
+ "chapter" bibinfo.check\r
+ * *\r
+ pages empty$\r
+ 'skip$\r
+ { ", " * format.pages * }\r
+ if$\r
+ }\r
+ if$\r
+}\r
+\r
+FUNCTION {format.booktitle}\r
+{\r
+ booktitle "booktitle" bibinfo.check\r
+}\r
+FUNCTION {format.in.ed.booktitle}\r
+{ format.booktitle duplicate$ empty$ 'skip$\r
+ {\r
+% editor "editor" format.names.ed duplicate$ empty$ 'pop$ % changed by titto\r
+ editor "editor" format.names duplicate$ empty$ 'pop$\r
+ {\r
+ " " *\r
+ get.bbl.editor\r
+% capitalize\r
+ "(" swap$ * ") " *\r
+ * swap$\r
+ * }\r
+ if$\r
+ word.in swap$ *\r
+ }\r
+ if$\r
+}\r
+FUNCTION {empty.misc.check}\r
+{ author empty$ title empty$ howpublished empty$\r
+ month empty$ year empty$ note empty$\r
+ and and and and and\r
+ key empty$ not and\r
+ { "all relevant fields are empty in " cite$ * warning$ }\r
+ 'skip$\r
+ if$\r
+}\r
+FUNCTION {format.thesis.type}\r
+{ type duplicate$ empty$\r
+ 'pop$\r
+ { swap$ pop$\r
+ "t" change.case$ "type" bibinfo.check\r
+ }\r
+ if$\r
+}\r
+FUNCTION {format.tr.number}\r
+{ number "number" bibinfo.check\r
+ type duplicate$ empty$\r
+ { pop$ bbl.techrep }\r
+ 'skip$\r
+ if$\r
+ "type" bibinfo.check\r
+ swap$ duplicate$ empty$\r
+ { pop$ "t" change.case$ }\r
+ { tie.or.space.prefix * * }\r
+ if$\r
+}\r
+FUNCTION {format.article.crossref}\r
+{\r
+ key duplicate$ empty$\r
+ { pop$\r
+ journal duplicate$ empty$\r
+ { "need key or journal for " cite$ * " to crossref " * crossref * warning$ }\r
+ { "journal" bibinfo.check emphasize word.in swap$ * }\r
+ if$\r
+ }\r
+ { word.in swap$ * " " *}\r
+ if$\r
+ " \cite{" * crossref * "}" *\r
+}\r
+FUNCTION {format.crossref.editor}\r
+{ editor #1 "{vv~}{ll}" format.name$\r
+ "editor" bibinfo.check\r
+ editor num.names$ duplicate$\r
+ #2 >\r
+ { pop$\r
+ "editor" bibinfo.check\r
+ " " * bbl.etal\r
+ *\r
+ }\r
+ { #2 <\r
+ 'skip$\r
+ { editor #2 "{ff }{vv }{ll}{ jj}" format.name$ "others" =\r
+ {\r
+ "editor" bibinfo.check\r
+ " " * bbl.etal\r
+ *\r
+ }\r
+ {\r
+ bbl.and space.word\r
+ * editor #2 "{vv~}{ll}" format.name$\r
+ "editor" bibinfo.check\r
+ *\r
+ }\r
+ if$\r
+ }\r
+ if$\r
+ }\r
+ if$\r
+}\r
+FUNCTION {format.book.crossref}\r
+{ volume duplicate$ empty$\r
+ { "empty volume in " cite$ * "'s crossref of " * crossref * warning$\r
+ pop$ word.in\r
+ }\r
+ { bbl.volume\r
+ capitalize\r
+ swap$ tie.or.space.prefix "volume" bibinfo.check * * bbl.of space.word *\r
+ }\r
+ if$\r
+ editor empty$\r
+ editor field.or.null author field.or.null =\r
+ or\r
+ { key empty$\r
+ { series empty$\r
+ { "need editor, key, or series for " cite$ * " to crossref " *\r
+ crossref * warning$\r
+ "" *\r
+ }\r
+ { series emphasize * }\r
+ if$\r
+ }\r
+ { key * }\r
+ if$\r
+ }\r
+ { format.crossref.editor * }\r
+ if$\r
+ " \cite{" * crossref * "}" *\r
+}\r
+FUNCTION {format.incoll.inproc.crossref}\r
+{\r
+ editor empty$\r
+ editor field.or.null author field.or.null =\r
+ or\r
+ { key empty$\r
+ { format.booktitle duplicate$ empty$\r
+ { "need editor, key, or booktitle for " cite$ * " to crossref " *\r
+ crossref * warning$\r
+ }\r
+ { word.in swap$ * }\r
+ if$\r
+ }\r
+ { word.in key * " " *}\r
+ if$\r
+ }\r
+ { word.in format.crossref.editor * " " *}\r
+ if$\r
+ " \cite{" * crossref * "}" *\r
+}\r
+FUNCTION {format.org.or.pub}\r
+{ 't :=\r
+ ""\r
+ address empty$ t empty$ and\r
+ 'skip$\r
+ {\r
+ t empty$\r
+ { address "address" bibinfo.check *\r
+ }\r
+ { t *\r
+ address empty$\r
+ 'skip$\r
+ { ", " * address "address" bibinfo.check * }\r
+ if$\r
+ }\r
+ if$\r
+ }\r
+ if$\r
+}\r
+FUNCTION {format.publisher.address}\r
+{ publisher "publisher" bibinfo.warn format.org.or.pub\r
+}\r
+\r
+FUNCTION {format.organization.address}\r
+{ organization "organization" bibinfo.check format.org.or.pub\r
+}\r
+\r
+FUNCTION {article}\r
+{ output.bibitem\r
+ format.authors "author" output.check\r
+ add.colon\r
+ new.block\r
+ format.title "title" output.check\r
+ new.block\r
+ crossref missing$\r
+ {\r
+ journal\r
+ "journal" bibinfo.check\r
+ "journal" output.check\r
+ add.blank\r
+ format.vol.num.pages output\r
+ format.date "year" output.check\r
+ }\r
+ { format.article.crossref output.nonnull\r
+ format.pages output\r
+ }\r
+ if$\r
+% new.block\r
+ format.url output\r
+% new.block\r
+ format.note output\r
+ fin.entry\r
+}\r
+FUNCTION {book}\r
+{ output.bibitem\r
+ author empty$\r
+ { format.editors "author and editor" output.check\r
+ add.colon\r
+ }\r
+ { format.authors output.nonnull\r
+ add.colon\r
+ crossref missing$\r
+ { "author and editor" editor either.or.check }\r
+ 'skip$\r
+ if$\r
+ }\r
+ if$\r
+ new.block\r
+ format.btitle "title" output.check\r
+ crossref missing$\r
+ { format.bvolume output\r
+ new.block\r
+ new.sentence\r
+ format.number.series output\r
+ format.publisher.address output\r
+ }\r
+ {\r
+ new.block\r
+ format.book.crossref output.nonnull\r
+ }\r
+ if$\r
+ format.edition output\r
+ format.date "year" output.check\r
+% new.block\r
+ format.url output\r
+% new.block\r
+ format.note output\r
+ fin.entry\r
+}\r
+FUNCTION {booklet}\r
+{ output.bibitem\r
+ format.authors output\r
+ add.colon\r
+ new.block\r
+ format.title "title" output.check\r
+ new.block\r
+ howpublished "howpublished" bibinfo.check output\r
+ address "address" bibinfo.check output\r
+ format.date output\r
+% new.block\r
+ format.url output\r
+% new.block\r
+ format.note output\r
+ fin.entry\r
+}\r
+\r
+FUNCTION {inbook}\r
+{ output.bibitem\r
+ author empty$\r
+ { format.editors "author and editor" output.check\r
+ add.colon\r
+ }\r
+ { format.authors output.nonnull\r
+ add.colon\r
+ crossref missing$\r
+ { "author and editor" editor either.or.check }\r
+ 'skip$\r
+ if$\r
+ }\r
+ if$\r
+ new.block\r
+ format.btitle "title" output.check\r
+ crossref missing$\r
+ {\r
+ format.bvolume output\r
+ format.chapter.pages "chapter and pages" output.check\r
+ new.block\r
+ new.sentence\r
+ format.number.series output\r
+ format.publisher.address output\r
+ }\r
+ {\r
+ format.chapter.pages "chapter and pages" output.check\r
+ new.block\r
+ format.book.crossref output.nonnull\r
+ }\r
+ if$\r
+ format.edition output\r
+ format.date "year" output.check\r
+% new.block\r
+ format.url output\r
+% new.block\r
+ format.note output\r
+ fin.entry\r
+}\r
+\r
+FUNCTION {incollection}\r
+{ output.bibitem\r
+ format.authors "author" output.check\r
+ add.colon\r
+ new.block\r
+ format.title "title" output.check\r
+ new.block\r
+ crossref missing$\r
+ { format.in.ed.booktitle "booktitle" output.check\r
+ format.bvolume output\r
+ format.chapter.pages output\r
+ new.sentence\r
+ format.number.series output\r
+ format.publisher.address output\r
+ format.edition output\r
+ format.date "year" output.check\r
+ }\r
+ { format.incoll.inproc.crossref output.nonnull\r
+ format.chapter.pages output\r
+ }\r
+ if$\r
+% new.block\r
+ format.url output\r
+% new.block\r
+ format.note output\r
+ fin.entry\r
+}\r
+FUNCTION {inproceedings}\r
+{ output.bibitem\r
+ format.authors "author" output.check\r
+ add.colon\r
+ new.block\r
+ format.title "title" output.check\r
+ new.block\r
+ crossref missing$\r
+ { format.in.ed.booktitle "booktitle" output.check\r
+ new.sentence % added by titto\r
+ format.bvolume output\r
+ format.pages output\r
+ new.sentence\r
+ format.number.series output\r
+ publisher empty$\r
+ { format.organization.address output }\r
+ { organization "organization" bibinfo.check output\r
+ format.publisher.address output\r
+ }\r
+ if$\r
+ format.date "year" output.check\r
+ }\r
+ { format.incoll.inproc.crossref output.nonnull\r
+ format.pages output\r
+ }\r
+ if$\r
+% new.block\r
+ format.url output\r
+% new.block\r
+ format.note output\r
+ fin.entry\r
+}\r
+FUNCTION {conference} { inproceedings }\r
+FUNCTION {manual}\r
+{ output.bibitem\r
+ author empty$\r
+ { organization "organization" bibinfo.check\r
+ duplicate$ empty$ 'pop$\r
+ { output\r
+ address "address" bibinfo.check output\r
+ }\r
+ if$\r
+ }\r
+ { format.authors output.nonnull }\r
+ if$\r
+ add.colon\r
+ new.block\r
+ format.btitle "title" output.check\r
+ author empty$\r
+ { organization empty$\r
+ {\r
+ address new.block.checka\r
+ address "address" bibinfo.check output\r
+ }\r
+ 'skip$\r
+ if$\r
+ }\r
+ {\r
+ organization address new.block.checkb\r
+ organization "organization" bibinfo.check output\r
+ address "address" bibinfo.check output\r
+ }\r
+ if$\r
+ format.edition output\r
+ format.date output\r
+% new.block\r
+ format.url output\r
+% new.block\r
+ format.note output\r
+ fin.entry\r
+}\r
+\r
+FUNCTION {mastersthesis}\r
+{ output.bibitem\r
+ format.authors "author" output.check\r
+ add.colon\r
+ new.block\r
+ format.btitle\r
+ "title" output.check\r
+ new.block\r
+ bbl.mthesis format.thesis.type output.nonnull\r
+ school "school" bibinfo.warn output\r
+ address "address" bibinfo.check output\r
+ format.date "year" output.check\r
+% new.block\r
+ format.url output\r
+% new.block\r
+ format.note output\r
+ fin.entry\r
+}\r
+\r
+FUNCTION {misc}\r
+{ output.bibitem\r
+ format.authors output\r
+ add.colon\r
+ title howpublished new.block.checkb\r
+ format.title output\r
+ howpublished new.block.checka\r
+ howpublished "howpublished" bibinfo.check output\r
+ format.date output\r
+% new.block\r
+ format.url output\r
+% new.block\r
+ format.note output\r
+ fin.entry\r
+ empty.misc.check\r
+}\r
+FUNCTION {phdthesis}\r
+{ output.bibitem\r
+ format.authors "author" output.check\r
+ add.colon\r
+ new.block\r
+ format.btitle\r
+ "title" output.check\r
+ new.block\r
+ bbl.phdthesis format.thesis.type output.nonnull\r
+ school "school" bibinfo.warn output\r
+ address "address" bibinfo.check output\r
+ format.date "year" output.check\r
+% new.block\r
+ format.url output\r
+% new.block\r
+ format.note output\r
+ fin.entry\r
+}\r
+\r
+FUNCTION {proceedings}\r
+{ output.bibitem\r
+ editor empty$\r
+ { organization "organization" bibinfo.check output\r
+ }\r
+ { format.editors output.nonnull }\r
+ if$\r
+ add.colon\r
+ new.block\r
+ format.btitle "title" output.check\r
+ format.bvolume output\r
+ editor empty$\r
+ { publisher empty$\r
+ { format.number.series output }\r
+ {\r
+ new.sentence\r
+ format.number.series output\r
+ format.publisher.address output\r
+ }\r
+ if$\r
+ }\r
+ { publisher empty$\r
+ {\r
+ new.sentence\r
+ format.number.series output\r
+ format.organization.address output }\r
+ {\r
+ new.sentence\r
+ format.number.series output\r
+ organization "organization" bibinfo.check output\r
+ format.publisher.address output\r
+ }\r
+ if$\r
+ }\r
+ if$\r
+ format.date "year" output.check\r
+% new.block\r
+ format.url output\r
+% new.block\r
+ format.note output\r
+ fin.entry\r
+}\r
+\r
+FUNCTION {techreport}\r
+{ output.bibitem\r
+ format.authors "author" output.check\r
+ add.colon\r
+ new.block\r
+ format.title\r
+ "title" output.check\r
+ new.block\r
+ format.tr.number output.nonnull\r
+ institution "institution" bibinfo.warn output\r
+ address "address" bibinfo.check output\r
+ format.date "year" output.check\r
+% new.block\r
+ format.url output\r
+% new.block\r
+ format.note output\r
+ fin.entry\r
+}\r
+\r
+FUNCTION {unpublished}\r
+{ output.bibitem\r
+ format.authors "author" output.check\r
+ add.colon\r
+ new.block\r
+ format.title "title" output.check\r
+ format.date output\r
+% new.block\r
+ format.url output\r
+% new.block\r
+ format.note "note" output.check\r
+ fin.entry\r
+}\r
+\r
+FUNCTION {default.type} { misc }\r
+READ\r
+FUNCTION {sortify}\r
+{ purify$\r
+ "l" change.case$\r
+}\r
+INTEGERS { len }\r
+FUNCTION {chop.word}\r
+{ 's :=\r
+ 'len :=\r
+ s #1 len substring$ =\r
+ { s len #1 + global.max$ substring$ }\r
+ 's\r
+ if$\r
+}\r
+FUNCTION {sort.format.names}\r
+{ 's :=\r
+ #1 'nameptr :=\r
+ ""\r
+ s num.names$ 'numnames :=\r
+ numnames 'namesleft :=\r
+ { namesleft #0 > }\r
+ { s nameptr\r
+ "{ll{ }}{ ff{ }}{ jj{ }}"\r
+ format.name$ 't :=\r
+ nameptr #1 >\r
+ {\r
+ " " *\r
+ namesleft #1 = t "others" = and\r
+ { "zzzzz" * }\r
+ { t sortify * }\r
+ if$\r
+ }\r
+ { t sortify * }\r
+ if$\r
+ nameptr #1 + 'nameptr :=\r
+ namesleft #1 - 'namesleft :=\r
+ }\r
+ while$\r
+}\r
+\r
+FUNCTION {sort.format.title}\r
+{ 't :=\r
+ "A " #2\r
+ "An " #3\r
+ "The " #4 t chop.word\r
+ chop.word\r
+ chop.word\r
+ sortify\r
+ #1 global.max$ substring$\r
+}\r
+FUNCTION {author.sort}\r
+{ author empty$\r
+ { key empty$\r
+ { "to sort, need author or key in " cite$ * warning$\r
+ ""\r
+ }\r
+ { key sortify }\r
+ if$\r
+ }\r
+ { author sort.format.names }\r
+ if$\r
+}\r
+FUNCTION {author.editor.sort}\r
+{ author empty$\r
+ { editor empty$\r
+ { key empty$\r
+ { "to sort, need author, editor, or key in " cite$ * warning$\r
+ ""\r
+ }\r
+ { key sortify }\r
+ if$\r
+ }\r
+ { editor sort.format.names }\r
+ if$\r
+ }\r
+ { author sort.format.names }\r
+ if$\r
+}\r
+FUNCTION {author.organization.sort}\r
+{ author empty$\r
+ { organization empty$\r
+ { key empty$\r
+ { "to sort, need author, organization, or key in " cite$ * warning$\r
+ ""\r
+ }\r
+ { key sortify }\r
+ if$\r
+ }\r
+ { "The " #4 organization chop.word sortify }\r
+ if$\r
+ }\r
+ { author sort.format.names }\r
+ if$\r
+}\r
+FUNCTION {editor.organization.sort}\r
+{ editor empty$\r
+ { organization empty$\r
+ { key empty$\r
+ { "to sort, need editor, organization, or key in " cite$ * warning$\r
+ ""\r
+ }\r
+ { key sortify }\r
+ if$\r
+ }\r
+ { "The " #4 organization chop.word sortify }\r
+ if$\r
+ }\r
+ { editor sort.format.names }\r
+ if$\r
+}\r
+FUNCTION {presort}\r
+{ type$ "book" =\r
+ type$ "inbook" =\r
+ or\r
+ 'author.editor.sort\r
+ { type$ "proceedings" =\r
+ 'editor.organization.sort\r
+ { type$ "manual" =\r
+ 'author.organization.sort\r
+ 'author.sort\r
+ if$\r
+ }\r
+ if$\r
+ }\r
+ if$\r
+ " "\r
+ *\r
+ year field.or.null sortify\r
+ *\r
+ " "\r
+ *\r
+ title field.or.null\r
+ sort.format.title\r
+ *\r
+ #1 entry.max$ substring$\r
+ 'sort.key$ :=\r
+}\r
+ITERATE {presort}\r
+SORT\r
+STRINGS { longest.label }\r
+INTEGERS { number.label longest.label.width }\r
+FUNCTION {initialize.longest.label}\r
+{ "" 'longest.label :=\r
+ #1 'number.label :=\r
+ #0 'longest.label.width :=\r
+}\r
+FUNCTION {longest.label.pass}\r
+{ number.label int.to.str$ 'label :=\r
+ number.label #1 + 'number.label :=\r
+ label width$ longest.label.width >\r
+ { label 'longest.label :=\r
+ label width$ 'longest.label.width :=\r
+ }\r
+ 'skip$\r
+ if$\r
+}\r
+EXECUTE {initialize.longest.label}\r
+ITERATE {longest.label.pass}\r
+FUNCTION {begin.bib}\r
+{ preamble$ empty$\r
+ 'skip$\r
+ { preamble$ write$ newline$ }\r
+ if$\r
+ "\begin{thebibliography}{" longest.label * "}" *\r
+ write$ newline$\r
+ "\providecommand{\url}[1]{\texttt{#1}}"\r
+ write$ newline$\r
+ "\providecommand{\urlprefix}{URL }"\r
+ write$ newline$\r
+}\r
+EXECUTE {begin.bib}\r
+EXECUTE {init.state.consts}\r
+ITERATE {call.type$}\r
+FUNCTION {end.bib}\r
+{ newline$\r
+ "\end{thebibliography}" write$ newline$\r
+}\r
+EXECUTE {end.bib}\r
+%% End of customized bst file\r
+%%\r
+%% End of file `titto.bst'.\r
+\r
+\r