%% %% This is file `cclayout.sty', %% generated with the docstrip utility. %% %% The original source files were: %% %% cc.dtx (with options: `cclayout,chartab') %% %% Copyright 2000-2017 %% Michael N"usken, Joachim von zur Gathen, computational complexity %% %% IMPORTANT NOTICE: %% %% This is a generated file. It is part of the %% computational complexity macro package %% derived from cc.dtx by 'tex cc.ins'. %% See cc.dtx for license information. %% %% \CharacterTable %% {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 %% 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 %% Digits \0\1\2\3\4\5\6\7\8\9 %% Exclamation \! Double quote \" Hash (number) \# %% Dollar \$ Percent \% Ampersand \& %% Acute accent \' Left paren \( Right paren \) %% Asterisk \* Plus \+ Comma \, %% Minus \- Point \. Solidus \/ %% Colon \: Semicolon \; Less than \< %% Equals \= Greater than \> Question mark \? %% Commercial at \@ Left bracket \[ Backslash \\ %% Right bracket \] Circumflex \^ Underscore \_ %% Grave accent \` Left brace \{ Vertical bar \| %% Right brace \} Tilde \~} \NeedsTeXFormat{LaTeX2e} \ProvidesPackage{cclayout}[2012/06/22 v2.25 cclayout. MNuesken] \let\@contact\relax \newcommand{\contact}[1]{\gdef\@contact{#1}} \AtBeginDocument{\if@ccpublish \@ifundefined{@contact}{% \ClassWarningNoLine{cc}{Who is the contact author?\MessageBreak Use \protect\contact\space in the preamble!}% }{}% \fi} \let\@received\relax \newcommand{\received}[1]{\gdef\@received{#1}} \AtBeginDocument{\if@ccpublish \@ifundefined{@received}{% \ClassWarningNoLine{cc}{Missing submission/received date.\MessageBreak Use \protect\received\space in the preamble.}{}% }{}% \fi} \def\submitted{\received} \let\@titlehead\relax \newcommand{\titlehead}[1]{\gdef\@titlehead{#1}} \let\@authorhead\@undefined \newcommand{\authorhead}[1]{\gdef\@authorhead{#1}} \let\@authorlist\@undefined \newcommand{\authorlist}[1]{\gdef\@authorlist{#1}} \let\abstract\@undefined\let\endabstract\@undefined \babel\def\ccabstractname{Abstract}[% german=Zusammenfassung,french=R\'esum\'e] \RequirePackage{environ}[2008/06/18] \def\@abstract@macro{} \long\def\for@cc@abstract#1{% \gdef\@abstract@macro{\begin{@abstr}{\ccabstractname}#1\end{@abstr}}} \newenvironment{abstract}{\Collect@Body\for@cc@abstract}{} \newcommand{\Abstract}{\for@cc@abstract} \babel\def\cckeywordsname{Keywords}[% german=Stichworte,french=Mot-cl\'e] \def\@keywords@macro{} \long\def\for@cc@keywords#1{% \gdef\@keywords@macro{\begin{@abstr}{\cckeywordsname}#1\end{@abstr}}} \newenvironment{keywords}{\Collect@Body\for@cc@keywords}{} \babel\def\ccsubjectclassificationname{Subject classification}[% german=Klassifizierung,french=Classification de suj\`et] \def\@subject@macro{} \long\def\for@cc@subject#1{% \gdef\@subject@macro{\begin{@abstr}{\ccsubjectclassificationname} #1 \end{@abstr}}} \newenvironment{subject}{\Collect@Body\for@cc@subject}{} \newdimen\@abstrwidth \newbox\@abstr@box \newenvironment{@abstr}[1]{% \setbox\@abstr@box\vbox\bgroup% \@parboxrestore \ifdim\@abstrwidth>\hsize\@abstrwidth\hsize\fi \leftmargin.5\hsize \advance\leftmargin-.5\@abstrwidth \rightmargin\leftmargin \@trivlist\@newlistfalse\global\@inlabeltrue \advance\linewidth -\rightmargin \advance\linewidth -\leftmargin \advance\@totalleftmargin \leftmargin \parshape \@ne \@totalleftmargin \linewidth \small \def\@listi{\leftmargin\leftmargini \topsep 2\p@ \@plus2\p@ \@minus1\p@ \parsep 1\p@ \itemsep \parsep}% \def\@listii{\leftmargin\leftmarginii \labelwidth\leftmarginii \advance\labelwidth-\labelsep \topsep 0\p@ \@plus1\p@ \parsep 1\p@ \itemsep \parsep}% \let\@listiii\@toodeep \let\@listiv\@toodeep \let\@listv\@toodeep \let\@listvi\@toodeep \textbf{#1. }\ignorespaces} {% \par \egroup \leavevmode\unvbox\@abstr@box \ignorespacesafterend} \newif\if@abstractoptional \if@ccpublish\@abstractoptionalfalse\else\@abstractoptionaltrue\fi \newcommand{\noabstract}{\ClassWarning{cc}{You are using a non documented feature}\@abstractoptionaltrue} \newif\if@keywordsoptional \if@ccpublish\@keywordsoptionalfalse\else\@keywordsoptionaltrue\fi \newcommand{\nokeywords}{\ClassWarning{cc}{You are using a non documented feature}\@keywordsoptionaltrue} \newif\if@subjectoptional \if@ccpublish\@subjectoptionalfalse\else\@subjectoptionaltrue\fi \newcommand{\nosubject}{\ClassWarning{cc}{You are using a non documented feature}\@subjectoptionaltrue} \def\@subtitle{} \newcommand{\subtitle}[1]{\def\@subtitle{#1}} \def\@version{} \newcommand{\version}[1]{\def\@version{#1}} \AtBeginDocument{\addtocounter{section}{-1}\refstepcounter{section}}% \AtEndDocument{\hrule height0pt\label{ccenddocument}}% \def\@ccunknown{??} \def\@ccfirst{1}% \let\@cclast\@ccunknown% \let\@ccnumberofpages\@ccunknown% \long\def\cc@secondoffive#1#2#3#4#5{#2} \AtBeginDocument{% \@ifundefined{r@ccenddocument}{}{% \@tempcnta\@ne \advance\@tempcnta-\@ccfirst \protected@xdef\@cclast{\csname r@ccenddocument\endcsname}% \xdef\@cclast{\expandafter\cc@secondoffive\@cclast{}{}{}{}{}}% \advance\@tempcnta\@cclast% \xdef\@ccnumberofpages{\the\@tempcnta}% }% } \def\@cctxt{} \newif\if@cchead \newcommand{\noccpublish}[1]{% \global\@ccpublishfalse \global\@abstractoptionaltrue% Abstract optional \global\@keywordsoptionaltrue% Keywords optional \global\@subjectoptionaltrue% Subject class. optional \global\@ccheadfalse \gdef\@cctxt{#1}% } \newcommand{\ccpublish}[4]{% Deprecated since 2011/07/25 \global\@ccpublishtrue \global\@abstractoptionalfalse% Abstract required \global\@keywordsoptionalfalse% Keywords required \global\@subjectoptionalfalse% Subject class. required \global\@ccheadtrue \gdef\@ccyear{#1}% \gdef\@ccvolume{#2}% \gdef\@ccissue{#3}% \gdef\@ccfirst{#4}% \gdef\@cctxt{cc \textbf{#2} (#1)}% \global\@autotitletrue \AtBeginDocument{\addtocounter{section}{-1}\refstepcounter{section}}% } \RequirePackage{xkeyval}[2008/08/13] \def\cc@fixlencountdown#1{% \@tfor\@x:=#1\do{\advance\@tempcnta\m@ne}} \def\cc@fixelendef#1#2#3#4{% \@tempcnta#1% \edef\@tempa{#4}\expandafter\cc@fixlencountdown\expandafter{\@tempa}% \gdef#3{}\relax \@whilenum\@tempcnta>\z@\do{% \expandafter\gdef\expandafter#3\expandafter{#3#2}% \advance\@tempcnta\m@ne}% \expandafter\gdef\expandafter#3\expandafter{#3#4}% } \def\cc@fixelen#1#2#3{% \@tempcnta#1 \edef\@tempa{#3}\expandafter\cc@fixlencountdown\expandafter{\@tempa}% \@whilenum\@tempcnta>\z@\do{% #2% \advance\@tempcnta\m@ne}% \edef\@tempa{\noexpand\cc@fixelena#3\noexpand\@@@}\@tempa% } \def\cc@fixelena#1\@@@{% \@tfor\@x:=#1\do{% \advance\@tempcnta\@ne \ifnum\@tempcnta>\z@\@x\fi }% } \define@boolkey{ccsps}{sps}[true]{}% \define@key{ccsps}{journal}[cc]{\gdef\@journalname{#1}}% \define@key{ccsps}{journalnumber}[37]{\gdef\@journalnumber{#1}}% \define@key{ccsps}{submitted}[??dd Month yyyy??]{% \gdef\@received{#1}% \gdef\received##1{\ClassWarning{cc} {Received/submitted date (##1) override!\MessageBreak Using \@received.}}} \define@boolkey{ccsps}{revisionstage}[true]{% } \define@key{ccsps}{DOImsnr}[??]{% manuscript number \gdef\@DOImsnr{#1}} \define@boolkey{ccsps}{TYPESET}[true]{% \ifKV@ccsps@TYPESET\let\TYPESET=Y\else\let\TYPESET=N\fi} \define@boolkey{ccsps}{DISK}[true]{% \ifKV@ccsps@DISK\let\DISK=Y\else\let\DISK=N\fi} \define@boolkey{ccsps}{LE}[true]{% \ifKV@ccsps@LE\let\LE=Y\else\let\LE=N\fi} \define@boolkey{ccsps}{CP}[true]{% \ifKV@ccsps@CP\let\CP=Y\else\let\CP=N\fi} \define@key{ccsps}{draftcopy}[Uncorrected proof]{% watermark text \gdef\cc@watermarktext{#1}} \define@boolkey{ccsps}{helperstrip}[true]{}% \define@boolkey{ccsps}{grid}[true]{} \define@boolkey{ccsps}{issuestage}[true]{% } \define@boolkey{ccsps}{openaccess}[true]{% } \define@boolkey{ccsps}{stageaccess}[true]{% Deprecated. \setkeys{ccsps}{openaccess=#1}} \define@key{ccsps}{year}[????]{\gdef\@ccyear{#1}} \define@key{ccsps}{volume}[??]{\gdef\@ccvolume{#1}} \define@key{ccsps}{issue}[??]{\gdef\@ccissue{#1}}% \define@key{ccsps}{firstpage}[1]{% \gdef\@ccfirst{#1}% \@tempcnta4\@tfor\@x:=#1\do{\advance\@tempcnta\m@ne}% \ifcase\@tempcnta\gdef\@ccfirstiv{#1}% \or\gdef\@ccfirstiv{0#1}% \or\gdef\@ccfirstiv{00#1}% \or\gdef\@ccfirstiv{000#1}% \else\ClassError{cc}{First page number too big.}{% The number of the first page cannot be larger than 9999. }\fi } \define@key{ccsps}{copyholder}[\default@copyholder]{\gdef\@copyholdername{#1}} \def\default@copyholder{% \ifKV@ccsps@openaccess The Author(s) \else Springer Basel AG\fi} \define@key{ccsps}{doisuffix}[????-?]{% \cc@fixelendef50\@doiinfo{\@journalnumber}% \xdef\@doiinfo{% 10.1007/s\@doiinfo-% \noexpand\cc@fixelen30{\noexpand\@ccyear}-% #1}} \define@key{ccsps}{doi}{\gdef\@doiinfo{#1}} \define@key{ccsps}{onlinedate}[??dd Month yyyy??]{\gdef\@onlinedate{#1}} \define@key{ccsps}{onlinefirstyear}[\the\year]{\gdef\@ccyear{#1}} \define@key{ccsps}{coveryear}[\@ccyear]{\gdef\@coveryear{#1}} \define@boolkey{ccsps}{pdfpage}[true]{% } \define@boolkey{ccsps}{xlink}[true]{} \setkeys{ccsps}{ sps=false, journal={cc}, journalnumber=37, grid=false, TYPESET=false, DISK=false, LE=false, CP=false, DOImsnr, openaccess=false, revisionstage=false, helperstrip=false, issuestage=false, copyholder, year,volume,issue,firstpage, onlinefirstyear,coveryear,doisuffix,onlinedate, draftcopy } \newcommand{\ccsps}[1]{% \if@cctextarea\else\ClassError{cc}{Wrong textarea chosen} {Remove any textarea or noccpublish option from documentclass.}\fi \global\@ccpublishtrue \global\@abstractoptionalfalse% Abstract required \global\@keywordsoptionalfalse% Keywords required \global\@subjectoptionalfalse% Subject class. required \global\@ccackfalse% Acknowledgements required \global\@ccheadtrue \global\@autotitletrue \setkeys{ccsps}{sps,#1} \gdef\@cctxt{cc \textbf{\@ccvolume} (\@ccyear)}% \RequirePackage[mathlines]{lineno}[2005/11/02] \ifKV@ccsps@pdfpage \setkeys{ccsps}{helperstrip=false}% \nolinenumbers \else \setkeys{ccsps}{helperstrip=true}% \RequirePackage[conditional,draft]{draftcopy} \draftcopyPageTransform{155 75 translate 65 rotate} \draftcopyName{\cc@watermarktext}{75} \linenumbers \fi \RequirePackage[%dvips, bookmarks=\ifKV@ccsps@xlink true\else false\fi, breaklinks=true, colorlinks=\ifKV@ccsps@xlink true\else false\fi, linkcolor=\ifKV@ccsps@xlink blue\else black\fi, unicode]{hyperref}[2011/04/17 v6.82g]% \AtBeginDocument{\init@bare} \RequirePackage{breakcites}% \RequirePackage{breakurl}[2009/01/24 v1.30]% \def\l@title##1{\@dottedtocline{-1}{0pt}{0pt}{{\large\textbf{##1}}}}% \let\l@title\l@part \ifKV@ccsps@xlink% \def\@urlcolor{blue} \def\@citecolor{blue} \def\externalref##1##2{\hyperimage{##1}{##2}}% \def\DOIexternalref##1##2{\hyperimage{##1}{##2}}% \InputIfFileExists{bookmarkgreeks.tex}{}{}% \else \def\@urlcolor{black}% \def\@citecolor{black} \def\externalref##1##2{##2}% \def\DOIexternalref##1##2{##2}% \fi% \ifKV@ccsps@grid \overfullrule=6pt \let\twidth\textwidth \let\theight\textheight \else\overfullrule=0pt\fi \InputIfFileExists{JS_info.tex}{}{}% } \def\printed@issn{1016-3328}% \def\electronic@issn{1420-8954}% \newcommand{\printed}{\let\issn\printed@issn} \newcommand{\electronic}{\let\issn\electronic@issn} \printed \@onlypreamble\ccpublish \@onlypreamble\ccsps \@onlypreamble\electronic \@onlypreamble\printed \def\extractnamesfr@m@author{% \@ifundefined{@authorlist}{% \let\and\ignorespaces \let\latest@name\relax \count@\z@ \expandafter\extract@names\@author\and\and\@nil}{% \@authorlist } } \def\extract@names#1\and#2\@nil{% \cc@ifempty{#1}{% \unskip\if\and\relax\else \ifnum\count@>\tw@\authorlastsepmany\else\authorlastsep\fi \fi\latest@name \let\next\gobble@nil}% {% \unskip\and\latest@name \ifx\latest@name\relax\else\let\and\authorsep\fi \extract@name#1\\\@nil \let\next\extract@names}% \next#2\@nil} \def\gobble@nil#1\@nil{} \def\extract@name#1\\#2\@nil{\advance\count@\@ne\def\latest@name{#1}} \babel\def\ccAND{and}[german=und,french=et] \def\authorsep{,\penalty-5\ } \def\authorlastsep{\penalty-5\ \ccAND{} } \def\authorlastsepmany{,\penalty-5\ \ccAND{} } \newtoks\latest@lastname \newtoks\@firstname \let\@firstlastname\@temptokena \def\extractauthorheadfr@m@author{% {% \let\and\@empty \latest@lastname{}% \toks@{}% \count@\m@ne \expandafter\extract@lastnames\@author\and\and\@nil \ifnum\count@<2 \xdef\@authorhead{\the\@firstname} \else\ifnum\count@<4 \xdef\@authorhead{\the\toks@}% \else \xdef\@authorhead{\the\@firstlastname\noexpand\textit{ et al.}}% \fi\fi }% \setbox0\hbox{\small\let\thanks\@gobble\@authorhead}% \ifdim\wd0>.7\textwidth \ClassWarningNoLine{cc}{Authorhead too long. Use \protect\authorhead\space to specify\MessageBreak a shortened author list for the headings!}% \fi } \def\extract@lastnames#1\and#2\@nil{% \advance\count@\@ne \cc@ifempty{#1}{% \expandafter\cc@ifempty\expandafter{\the\toks@}{% \edef\@tempa{\the\latest@lastname}% }{% \edef\@tempa{\the\toks@\authorheadlastsep\the\latest@lastname}% }% \toks@\expandafter{\@tempa}% \let\next\gobble@nil }{% \expandafter\cc@ifempty\expandafter{\the\toks@}{% \edef\@tempa{\the\latest@lastname}% }{% \edef\@tempa{\the\toks@\authorheadsep\the\latest@lastname}% }% \toks@\expandafter{\@tempa}% \extract@lastname#1\\\@nil \let\next\extract@lastnames}% \ifnum\count@=\@ne\@firstlastname\expandafter{\the\toks@}\fi \next#2\@nil} \def\gobble@nil#1\@nil{} \def\extract@lastname#1\\#2\@nil{% \ifnum\count@=\z@\@firstname{#1}\fi \extract@lastname@#1 \@nil} \def\extract@lastname@#1 #2\@nil{% \cc@ifempty{#2}{\latest@lastname{#1}}{\extract@lastname@#2\@nil}} \def\authorheadsep{, } \def\authorheadlastsep{ \& } \def\authorheadlastsepmany{ \& } \let\@author\relax \AtBeginDocument{% \@ifundefined{@author}{\if@ccpublish \ClassError{cc}{No \protect\author\space given}{Define an author list in the preamble by \protect\author{...}}% \else \ClassWarningNoLine{cc}{No \protect\author\space given}% \fi}{} \@ifundefined{@authorhead}{\extractauthorheadfr@m@author}{}} \let\@title\relax \AtBeginDocument{% \@ifundefined{@title}{\if@ccpublish \ClassError{cc}{No \protect\title\space given}{Define a title in the preamble by \protect\title{...}}% \else \ClassWarningNoLine{cc}{No \protect\title\space given}% \fi}{} \setbox0\hbox{\small\let\thanks\@gobble \@ifundefined{@titlehead}{\let\\\ \@title}{\@titlehead}}% \ifdim\wd0>.7\textwidth \ClassError{cc}{Title too long for running head.\MessageBreak Use \protect\titlehead\space to specify\MessageBreak a shortened title for the headings!}{}% \fi} \def\extractaffilsfr@om@author{% \parindent\z@ \init@affils \expandafter\extract@affils\@author\and\and\@nil \if@oddaffil\else\even@sep\even@post\fi } \def\init@affils{% \let\and\relax \global\@oddaffiltrue } \def\extract@affils#1\and#2\@nil{% \cc@ifempty{#1}{\let\next\gobble@nil}{% \extract@affil#1\\\@nil \let\next\extract@affils}% \next#2\@nil} \def\extract@affil#1\\#2\@nil{% \affilpre \def\currentaddress{\otheraddress Current address of \textsc{\ignorespaces#1}:\\}% \begin{@ffiliation} \textsc{\ignorespaces#1}\\#2 \end{@ffiliation} \affilpost} \newcommand{\otheraddress}{\end{@ffiliation}\affilsep \begin{@ffiliation}} \def\odd@pre{\par\begin{tabular}{@{}ll@{}}}% \def\odd@sep{&}% \def\odd@post{&}% \def\even@pre{}% \def\even@sep{\end{tabular}\par\begin{tabular}{@{}ll@{}}}% \def\even@post{\end{tabular}}% \newif\if@oddaffil \def\affilpre{\if@oddaffil\odd@pre\else\even@pre\fi} \def\affilsep{% \if@oddaffil\odd@sep\@oddaffilfalse \else\even@sep\@oddaffiltrue \fi } \def\affilpost{\if@oddaffil\odd@post\global\@oddaffilfalse \else\even@post\global\@oddaffiltrue\fi} \if@twocolumnendtitle \newenvironment{@ffiliation} {% \minipage[t]{.48\hsize} \dimen@\hsize \advance\dimen@ -1.5em \everypar{\parshape 2 \z@ \hsize 1.5em \dimen@}% \def\\{\unskip\par}% } {\strut\par\medskip\endminipage} \else \def\affilpre{\par} \def\affilpost{\par} \def\affilsep{\par} \newenvironment{@ffiliation} {% \minipage[t]{\hsize}\footnotesize \dimen@\hsize \advance\dimen@ -1.5em \everypar{\parshape 2 \z@ \hsize 1.5em \dimen@}% \def\\{\unskip\par}% } {\endminipage\bigskip} \fi \ifcase\@textareaversion \@abstrwidth0.85\textwidth \or% version 1, used until June 2011 \textwidth=141mm \@abstrwidth=120mm \textheight=200mm \topmargin=0mm \oddsidemargin=12mm \evensidemargin=12mm \marginparwidth=25mm \headheight=1.25\headheight \ifnum\@marginmode<\z@\@marginmode\z@\fi \or% version 2, used since July 2011 \paperwidth=155mm \paperheight=235mm \topmargin=-9.6mm \textheight=45.5pc \textwidth=119mm \@abstrwidth=\textwidth \oddsidemargin=-7.6mm% should be 18mm, will be calculated acc.to \@marginmode \evensidemargin=-7.6mm% should be 18mm, will be calculated acc.to \@marginmode \marginparwidth=10mm% will be adapted below \headheight=1.25\headheight \ifnum\@marginmode<\z@\@marginmode\tw@\fi% use balanced margins \else% version negative or larger than max: emptypage \newdimen\allsidemargin \allsidemargin=.5in \textwidth=\paperwidth \advance\textwidth-2\allsidemargin% margin left/right \marginparsep=1pt \topmargin-1in \advance\topmargin\allsidemargin \textheight=\paperheight \advance\textheight-\allsidemargin \advance\textheight-\headheight \advance\textheight-\headsep \advance\textheight-\footskip \advance\textheight-\allsidemargin \@marginmode\tw@ \sloppy \@abstrwidth0.85\textwidth \fi \newdimen\cc@topmargin \cc@topmargin\topmargin \newdimen\cc@textwidth \cc@textwidth\textwidth \newdimen\cc@textheight \cc@textheight\textheight \AtBeginDocument{% {\if@ccpublish \@tempswafalse \ifnum\@textareaversion>0 \ifdim\topmargin=\cc@topmargin\relax\else\@tempswatrue\fi \ifdim\textwidth=\cc@textwidth\relax\else\@tempswatrue\fi \ifdim\textheight=\cc@textheight\relax\else\@tempswatrue\fi \fi \if@tempswa \ClassError{cc}{FATAL ERROR! For publishing in cc the page and text dimension must not be manipulated. Remove any packages that modify the text or page dimensions. In particular: remove the packages^^J fullpage.sty,^^J a4wide.sty,^^J geometry.sty,^^J vmargin.sty,^^J typearea.sty}{}% \aftergroup\endinput \fi \fi}% } \typeout{Now adjusting margins: \the\@marginmode.} \ifcase\@marginmode \AtEndOfClass{% \oddsidemargin\paperwidth \advance\oddsidemargin-2in \advance\oddsidemargin-\textwidth \advance\oddsidemargin-\evensidemargin} \or \AtEndOfClass{% \oddsidemargin\paperwidth \advance\oddsidemargin-2in \advance\oddsidemargin-\textwidth \evensidemargin=5mm \advance\oddsidemargin-\evensidemargin} \or \AtEndOfClass{% \oddsidemargin\paperwidth \advance\oddsidemargin-2in \advance\oddsidemargin-\textwidth \oddsidemargin.5\oddsidemargin \evensidemargin\oddsidemargin} \fi \AtEndOfClass{% \marginparwidth1in \advance\marginparwidth-5mm \advance\marginparwidth-2\marginparsep \ifdim\evensidemargin<\oddsidemargin \advance\marginparwidth\evensidemargin \else \advance\marginparwidth\oddsidemargin \fi } \newskip\headerindent \headerindent=10mm \newdimen\headrulewidth \headrulewidth.4pt \def\ps@cc{\let\@mkboth\markboth \let\@oddfoot\@empty \let\@evenfoot\@empty \let\@oddhead\@empty \let\@evenhead\@empty \if@ccpublish \ps@ccfirst \def\@oddfoot{% \ifKV@ccsps@helperstrip% \begin{picture}(0,0)% \put(340,3){{\stripbox}}% \put(10,-5){{\tiny Produced with: \texttt{\csname ver@cc.cls\endcsname}}}% \end{picture}% \fi }% \let\@evenfoot\@oddfoot \fi \expandafter\def\expandafter\@oddhead\expandafter{\@oddhead \vbox{\hbox to\textwidth{\reset@font\strut {\small\@cctxt}% \hfil {\small \@ifundefined{@titlehead}{% \let\\\ % \@title }{% \@titlehead }}% \hbox to\headerindent{\hfil\thepage}% }% \if@ccpublish\else \kern2.6\p@ \hrule\@height\headrulewidth\kern-\headrulewidth \kern-2.6\p@ \fi \vskip\z@ }% }% \expandafter\def\expandafter\@evenhead\expandafter{\@evenhead \vbox{\hbox to\textwidth{\reset@font\strut \hbox to\headerindent{\thepage\hfil}% {\small\@authorhead}% \hfil {\small\@cctxt}% }% \if@ccpublish\else \kern2.6\p@ \hrule\@height\headrulewidth\kern-\headrulewidth \kern-2.6\p@ \fi \vskip\z@ }% }% } \RequirePackage{graphics}[2009/02/05 v1.0o] \RequirePackage{xcolor}[2007/01/21 v2.11]% \IfFileExists{Birkh_logo_2010_sps.eps}{% \def\birklogo{\bgroup\includegraphics{Birkh_logo_2010_sps.eps}\egroup} }{% \def\birklogo{{\ixpt Birkh{\"{a}}user}} } \IfFileExists{dummy_sps.eps}{% \def\spslogo{\bgroup\includegraphics{dummy_sps.eps}\egroup} }{% \def\spslogo{{\ixpt Springer Publishing}} } \def\ps@ccfirst{% \def\@oddfoot{% \if@ccpublish \ifKV@ccsps@revisionstage% \begin{picture}(0,0)% \put(0,15){{\smash{\raisebox{-2.25pt}{\spslogo}}}}% \end{picture}% \fi% \ifKV@ccsps@sps \begin{picture}(0,0)% \put(289.5,15){{\birklogo}}% \end{picture}% \fi \ifKV@ccsps@helperstrip% \begin{picture}(0,0)% \put(340,3){{\stripbox}}% \put(10,-5){{\tiny Produced with: \texttt{\csname ver@cc.cls\endcsname}}}% \end{picture}% \fi \fi}% \let\@evenfoot\@oddfoot \def\@oddhead{% \ifKV@ccsps@grid \hbox to\z@{% \vbox to\z@{% \hsize\twidth \vskip\headsep \fboxrule=.25pt \fboxsep=-.25pt \textcolor{lightgray}{% \fbox{\vbox to\theight{\hbox to\twidth{\hss}\vss}}% }% \vss }% \hss }% \fi \hss }% \let\@evenhead\@oddhead } \AtEndOfClass{\pagestyle{cc}} \AtEndOfClass{% \AtBeginDocument{\@onlypreamble{\author{\if@autotitle\maketitle\fi}}} \AtEndDocument{\if@autotitle\makeendtitle\fi} } \def\stripbox{\kern -11.7cm% {}{% \raisebox{.8mm}{% \tiny \fboxsep1mm\framebox{% Journal: {\bf \@journalname}\enspace Article No.: {\bf \@DOImsnr}\enspace \fboxsep.2mm\fbox{% \ifx Y\TYPESET{$\checkmark$}\else{\phantom{$\checkmark$}}\fi }~TYPESET\enspace \fbox{% \ifx Y\DISK{$\checkmark$}\else{\phantom{$\checkmark$}}\fi }~DISK\enspace \fbox{% \ifx Y\LE{$\checkmark$}\else{\phantom{$\checkmark$}}\fi }~LE\enspace \fbox{% \ifx Y\CP{$\checkmark$}\else{\phantom{$\checkmark$}}\fi }~CP\enspace Disp.: \textbf{\the\year/\the\month/\the\day}\enspace Pages: \textbf{\@ccnumberofpages} }% }% }% } %% \def\vertrulea{\rule[-7.583pt]{0pt}{7.583pt}} \def\vertruleb{\rule{2.25pt}{10.2pt}} \newtoks\cite@hook \newcommand{\maketitleheadA}{% version before 2011 (Birkhäuser) \hbox to\textwidth{% \vbox to\z@{\vss \baselineskip=12pt% \halign{\ixpt##\hfil\cr comput. complex.~\textbf{\@ccvolume}~(\@ccyear), \thepage\ -- \@cclast\cr \issn/\expandafter\@gobbletwo\@ccyear% /\cc@fixelen20\@ccissue\relax \cc@fixelen40\@ccfirst\relax --\@ccnumberofpages\ \$ 1.50+0.20/0\cr}}\hss \vbox to\z@{\vss \offinterlineskip% \halign{##&##\hfil\cr \vertrulea&\ixpt \copyright{} Birkh{\"{a}}user Verlag, Basel \@ccyear\cr \noalign{\hrule} \vertruleb\hskip1mm&% \vbox to\z@{\vbox to\z@{\vss \hbox{\xptsfbx computational complexity}}\vss}% \cr}}}\vskip47.333pt } \newcommand{\maketitleheadSPS}{% version since 2011 (Springer) \hbox to\textwidth{% \vbox to\z@{\vss \baselineskip=12pt% \halign{% \ixpt##\hfil\cr comput. complex.% \ifKV@ccsps@issuestage% ~\textbf{\@ccvolume}~(\@ccyear),~\@ccfirst\ -- \@cclast \fi\cr \ifKV@ccsps@openaccess \copyright{} \@copyholdername\ \@ccyear. This article is published\cr with open access at Springerlink.com\cr \else\copyright{} \@copyholdername\ \@ccyear\cr\fi \ifKV@ccsps@issuestage {\printed@issn/\cc@fixelen20\@coveryear/% \cc@fixelen20\@ccissue% \cc@fixelen40\@ccfirst% -% MN2011/07/27: use + instead? \@ccnumberofpages}\cr {{\it published online}\ \@onlinedate}\cr \else\relax\fi DOI \@doiinfo\cr} }\hss \vbox to\z@{\vss \offinterlineskip% \halign{##&##\hfil\cr \vertrulea&\ixpt\cr \noalign{\hrule} \vertruleb\hskip1mm&% \vbox to\z@{\vbox to\z@{\vss \hbox{\xptsfbx computational complexity}}\vss}% \cr}}}\vskip47.333pt } \def\l@title#1#2{}% Usually ignore title entries. \def\@@today{\today}% for comparison \renewcommand{\maketitle}{% \global\@topnum\z@ % Prevents figures from going at top of page. \cite@hook{}% \thispagestyle{ccfirst} \if@cchead \ifnum\@textareaversion=\tw@\vspace*{15pt}\fi \vbox to\z@{\vss \setcounter{page}{\@ccfirst}% \ifcase\@textareaversion\maketitleheadSPS \or\maketitleheadA \or\maketitleheadSPS \else\maketitleheadSPS \fi }% \fi \hrule\@height\z@ \vskip2.2ex% 4.0mm \relax \begin{center} \if@ccpublish \renewcommand{\footnote}[1]{\protect\ClassWarningNoLine{cc}{% There are no footnotes allowed in title or author.\MessageBreak Your command is ignored.\MessageBreak Think about moving your remark to the acknowledgements}}% \let\thanks\footnote \else \renewcommand{\footnote}[1]{\protect\ClassWarningNoLine{cc}{% In title or author \string\footnote\space does not work.\MessageBreak Avoid footnotes or use \string\thanks}}% \def\thefootnote{\@fnsymbol\c@footnote}% \def\@makefnmark{% \rlap{\@textsuperscript{\normalfont\@thefnmark}}}% \long\def\@makefntext##1{\parindent 1em\noindent \hb@xt@1.8em{% \hss\@textsuperscript{\normalfont\@thefnmark}}##1}% \fi {% \Large\bfseries \def\\{\penalty-\@M}% \expandafter\MakeUppercase\expandafter{\@title}% \addcontentsline{toc}{title}{\@title}% \par }% \@ifundefined{@subtitle}{}{{% \large\itshape \@subtitle \par }} \@ifundefined{@version}{}{{% \large\itshape \@version \par }} \bigskip \vskip1.21ex% 2.2mm \vskip\z@ {% \large\scshape \extractnamesfr@m@author \par }% \ifKV@ccsps@sps%\if@ccpublish \ifx\@date\@@today\else \ClassWarningNoLine{cc}{Date ignored! (\@date)}% \fi \else{% \vskip1ex \large\@date\par }\fi \def\@tempa{\vskip5.5ex\let\@tempa\relax}% \ifx\@abstract@macro\@empty \if@abstractoptional \ClassWarningNoLine{cc}{Missing abstract}% \else \ClassError{cc}{Missing abstract} {Define abstract in the preamble using \protect\begin{abstract} ... \protect\end{abstract}.}% \fi \else \@tempa\@abstract@macro\par \fi \ifx\@keywords@macro\@empty \if@keywordsoptional \ClassWarningNoLine{cc}{Missing keywords}% \else \ClassError{cc}{Missing keywords} {Define keywords in the preamble using \protect\begin{keywords} ... \protect\end{keywords}.}% \fi \else \@tempa\@keywords@macro\par \fi \ifx\@subject@macro\@empty \if@subjectoptional \ClassWarningNoLine{cc}{Missing subject classification}% \else \ClassError{cc}{Missing subject} {Define subject in the preamble using \protect\begin{subject} ... \protect\end{subject}.}% \fi \else \@tempa\@subject@macro\par \fi \@thanks \ifx\@tempa\relax\vskip3ex\fi \end{center} \setcounter{footnote}{0}% \global\let\maketitle\relax \global\let\thanks\@gobble \global\let\@thanks\relax \global\let\author\@notprerr \global\let\title\@notprerr \global\let\abstract\@notprerr \global\let\Abstract\@notprerr \global\let\keywords\@notprerr \global\let\subject\@notprerr \global\let\titlehead\@notprerr \global\let\authorhead\@notprerr \global\let\received\@notprerr \vskip\z@ \par\@afterindentfalse\@afterheading } \let\@maketitle\@undefined \let\and\@undefined \babel\def\ManuscriptReceived{Manuscript received }[% german=Manuskript erhalten: ,% french=Manuscrit re\c{c}u: ] \newcommand{\makeendtitle}{% \par \parindent\z@ \bigskip \@ifundefined{@received}{}{% \noindent{\small \ManuscriptReceived\@received \par}% \medskip }% {\small \extractaffilsfr@om@author }% \gdef\makeendtitle{\ClassWarning{cc}{\protect\makeendtitle\space multiply used!}}% } \endinput %% %% End of file `cclayout.sty'.