Guest User

Untitled

a guest
Oct 12th, 2017
98
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. % SVMULTLN DOCUMENT CLASS -- version 3.27 (08-AUG-07)
  2. % Springer Verlag global LaTeX2e support for multi authored books
  3. %%
  4. %%
  5. %% \CharacterTable
  6. %%  {Upper-case    \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z
  7. %%   Lower-case    \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z
  8. %%   Digits        \0\1\2\3\4\5\6\7\8\9
  9. %%   Exclamation   \!     Double quote  \"     Hash (number) \#
  10. %%   Dollar        \$     Percent       \%     Ampersand     \&
  11. %%   Acute accent  \'     Left paren    \(     Right paren   \)
  12. %%   Asterisk      \*     Plus          \+     Comma         \,
  13. %%   Minus         \-     Point         \.     Solidus       \/
  14. %%   Colon         \:     Semicolon     \;     Less than     \<
  15. %%   Equals        \=     Greater than  \>     Question mark \?
  16. %%   Commercial at \@     Left bracket  \[     Backslash     \\
  17. %%   Right bracket \]     Circumflex    \^     Underscore    \_
  18. %%   Grave accent  \`     Left brace    \{     Vertical bar  \|
  19. %%   Right brace   \}     Tilde         \~}
  20. %%
  21. \NeedsTeXFormat{LaTeX2e}[1995/12/01]
  22. \ProvidesClass{svmultln}[2007/08/08 v3.27
  23. ^^JSpringer Verlag global LaTeX document class for lecture notes and contributed books]
  24. % Options
  25. % citations
  26. \DeclareOption{natbib}{\ExecuteOptions{oribibl}%
  27. \AtEndOfClass{% Loading package 'NATBIB'
  28. \RequirePackage{natbib}
  29. % Changing some parameters of NATBIB
  30. \setlength{\bibhang}{\parindent}
  31. %\setlength{\bibsep}{0mm}
  32. \let\bibfont=\small
  33. \def\@biblabel#1{#1.}
  34. \newcommand{\etal}{\textit{et al}.}
  35. %\bibpunct[,]{(}{)}{;}{a}{}{,}}}
  36. }}
  37. % Springer environment
  38. \let\if@spthms\iftrue
  39. \DeclareOption{nospthms}{\let\if@spthms\iffalse}
  40. %
  41. \let\envankh\@empty   % no anchor for "theorems"
  42. %
  43. \let\if@envcntreset\iffalse % environment counter is not reset
  44. \let\if@envcntresetsect=\iffalse % reset each section?
  45. \DeclareOption{envcountresetchap}{\let\if@envcntreset\iftrue}
  46. \DeclareOption{envcountresetsect}{\let\if@envcntreset\iftrue
  47. \let\if@envcntresetsect=\iftrue}
  48. %
  49. \let\if@envcntsame\iffalse  % NOT all environments work like "Theorem",
  50.                             % each using its own counter
  51. \DeclareOption{envcountsame}{\let\if@envcntsame\iftrue}
  52. %
  53. \let\if@envcntshowhiercnt=\iffalse % do not show hierarchy counter at all
  54. %
  55. % enhance theorem counter
  56. \DeclareOption{envcountchap}{\def\envankh{chapter}% show \thechapter along with theorem number
  57. \let\if@envcntshowhiercnt=\iftrue}
  58. %
  59. \DeclareOption{envcountsect}{\def\envankh{section}% show \thesection along with theorem number
  60. \let\if@envcntshowhiercnt=\iftrue
  61. \ExecuteOptions{envcountresetsect}}
  62. % reset environment counters every new contribution by default
  63. \ExecuteOptions{envcountresetchap}
  64. %
  65. % languages
  66. \let\switcht@@therlang\relax
  67. \let\svlanginfo\relax
  68. \def\ds@deutsch{\def\switcht@@therlang{\switcht@deutsch}%
  69. \gdef\svlanginfo{\typeout{Man spricht deutsch.}\global\let\svlanginfo\relax}}
  70. \def\ds@francais{\def\switcht@@therlang{\switcht@francais}%
  71. \gdef\svlanginfo{\typeout{On parle francais.}\global\let\svlanginfo\relax}}
  72. %
  73. \AtBeginDocument{\@ifpackageloaded{babel}{%
  74. \@ifundefined{extrasamerican}{}{\addto\extrasamerican{\switcht@albion}}%
  75. \@ifundefined{extrasaustralian}{}{\addto\extrasaustralian{\switcht@albion}}%
  76. \@ifundefined{extrasbritish}{}{\addto\extrasbritish{\switcht@albion}}%
  77. \@ifundefined{extrascanadian}{}{\addto\extrascanadian{\switcht@albion}}%
  78. \@ifundefined{extrasenglish}{}{\addto\extrasenglish{\switcht@albion}}%
  79. \@ifundefined{extrasnewzealand}{}{\addto\extrasnewzealand{\switcht@albion}}%
  80. \@ifundefined{extrasUKenglish}{}{\addto\extrasUKenglish{\switcht@albion}}%
  81. \@ifundefined{extrasUSenglish}{}{\addto\extrasUSenglish{\switcht@albion}}%
  82. \@ifundefined{captionsfrench}{}{\addto\captionsfrench{\switcht@francais}}%
  83. \@ifundefined{extrasgerman}{}{\addto\extrasgerman{\switcht@deutsch}}%
  84. \@ifundefined{extrasngerman}{}{\addto\extrasngerman{\switcht@deutsch}}%
  85. }{\switcht@@therlang}%
  86. }
  87. % style for vectors
  88. \DeclareOption{vecphys}{\def\vec@style{phys}}
  89. \DeclareOption{vecarrow}{\def\vec@style{arrow}}
  90. % running heads
  91. \let\if@runhead\iftrue
  92. \DeclareOption{norunningheads}{\let\if@runhead\iffalse}
  93. % referee option
  94. \let\if@referee\iffalse
  95. \def\makereferee{\def\baselinestretch{2}\selectfont
  96. \newbox\refereebox
  97. \setbox\refereebox=\vbox to\z@{\vskip0.5cm%
  98.   \hbox to\textwidth{\normalsize\tt\hrulefill\lower0.5ex
  99.        \hbox{\kern5\p@ referee's copy\kern5\p@}\hrulefill}\vss}%
  100. \def\@oddfoot{\copy\refereebox}\let\@evenfoot=\@oddfoot}
  101. \DeclareOption{referee}{\let\if@referee\iftrue
  102. \AtBeginDocument{\makereferee\small\normalsize}}
  103. % modification of thebibliography
  104. \let\if@openbib\iffalse
  105. \DeclareOption{openbib}{\let\if@openbib\iftrue}
  106. % LaTeX standard, sectionwise references
  107. \DeclareOption{oribibl}{\let\oribibl=Y}
  108. \DeclareOption{chaprefs}{\let\chpbibl=Y}
  109. %
  110. % footinfo option (provides an informatory line on every page)
  111. \def\SpringerMacroPackageNameA{svmultln.cls}
  112. % \thetime, \thedate and \timstamp are macros to include
  113. % time, date (or both) of the TeX run in the document
  114. \def\maketimestamp{\count255=\time
  115. \divide\count255 by 60\relax
  116. \edef\thetime{\the\count255:}%
  117. \multiply\count255 by-60\relax
  118. \advance\count255 by\time
  119. \edef\thetime{\thetime\ifnum\count255<10 0\fi\the\count255}
  120. \edef\thedate{\number\day-\ifcase\month\or Jan\or Feb\or Mar\or
  121.             Apr\or May\or Jun\or Jul\or Aug\or Sep\or Oct\or
  122.             Nov\or Dec\fi-\number\year}
  123. \def\timstamp{\hbox to\hsize{\tt\hfil\thedate\hfil\thetime\hfil}}}
  124. \maketimestamp
  125. %
  126. % \footinfo generates a info footline on every page containing
  127. % pagenumber, jobname, macroname, and timestamp
  128. \DeclareOption{footinfo}{\AtBeginDocument{\maketimestamp
  129.   \def\ps@empty{\let\@mkboth\@gobbletwo
  130.   \let\@oddhead\@empty\let\@evenhead\@empty}%
  131.    \def\@oddfoot{\scriptsize\tt Page:\,\thepage\space\hfil
  132.                 job:\,\jobname\space\hfil
  133.                 macro:\,\SpringerMacroPackageNameA\space\hfil
  134.                 date/time:\,\thedate/\thetime}%
  135.    \let\@evenfoot=\@oddfoot}}
  136. %
  137. % start new chapter on any page
  138. \newif\if@openright \@openrighttrue
  139. \DeclareOption{openany}{\@openrightfalse}
  140. %
  141. % no size changing allowed
  142. \DeclareOption{11pt}{\OptionNotUsed}
  143. \DeclareOption{12pt}{\OptionNotUsed}
  144. % options for the article class
  145. \def\@rticle@options{10pt,twoside}
  146. % fleqn
  147. \DeclareOption{fleqn}{\def\@rticle@options{10pt,twoside,fleqn}%
  148. \AtEndOfClass{\let\leftlegendglue\relax}%
  149. \AtBeginDocument{\mathindent\parindent}}
  150. % hanging sectioning titles
  151. \let\if@sechang\iffalse
  152. \DeclareOption{sechang}{\let\if@sechang\iftrue}
  153. \def\ClassInfoNoLine#1#2{%
  154.    \ClassInfo{#1}{#2\@gobble}%
  155. }
  156. \let\SVMultOpt\@empty
  157. \DeclareOption*{\InputIfFileExists{sv\CurrentOption.clo}{%
  158. \global\let\SVMultOpt\CurrentOption}{%
  159. \ClassWarning{Springer-SVMultln}{Specified option or subpackage
  160. "\CurrentOption" \MessageBreak not found -
  161. passing it to article class \MessageBreak
  162. -}\PassOptionsToClass{\CurrentOption}{article}%
  163. }}
  164. \ProcessOptions\relax
  165. \ifx\SVMultOpt\@empty\relax
  166. \ClassInfoNoLine{Springer-SVMultln}{extra/valid Springer sub-package
  167. \MessageBreak not found in option list - using "global" style}{}
  168. \fi
  169. \LoadClass[\@rticle@options]{article}
  170. \RequirePackage{multicol} % needed for the list of participants, index
  171. \raggedbottom
  172.  
  173. % various sizes and settings for contributed works
  174.  
  175. \setlength{\textwidth}{28pc}   %  11.8cm
  176. %\setlength{\textheight}{12pt}\multiply\textheight by 45\relax
  177. \setlength{\textheight}{540\p@}
  178. \setlength{\topmargin}{0cm}
  179. \setlength\oddsidemargin   {63\p@}
  180. \setlength\evensidemargin  {63\p@}
  181. \setlength\marginparwidth{90\p@}
  182. \setlength\headsep   {12\p@}
  183.  
  184. \setlength{\parindent}{15\p@}
  185. \setlength{\parskip}{\z@ \@plus \p@}
  186. \setlength{\hfuzz}{2\p@}
  187. \setlength{\arraycolsep}{1.5\p@}
  188.  
  189. \frenchspacing
  190.  
  191. \tolerance=500
  192.  
  193. \predisplaypenalty=0
  194. \clubpenalty=10000
  195. \widowpenalty=10000
  196.  
  197. \setlength\footnotesep{7.7\p@}
  198.  
  199. \newdimen\betweenumberspace          % dimension for space between
  200. \betweenumberspace=5\p@              % number and text of titles
  201. \newdimen\headlineindent             % dimension for space of
  202. \headlineindent=2.5cc                % number and gap of running heads
  203.  
  204. % fonts, sizes, and the like
  205. \renewcommand\small{%
  206.    \@setfontsize\small\@ixpt{11}%
  207.    \abovedisplayskip 8.5\p@ \@plus3\p@ \@minus4\p@
  208.    \abovedisplayshortskip \z@ \@plus2\p@
  209.    \belowdisplayshortskip 4\p@ \@plus2\p@ \@minus2\p@
  210.    \def\@listi{\leftmargin\leftmargini
  211.               \parsep \z@ \@plus\p@ \@minus\p@
  212.               \topsep 6\p@ \@plus2\p@ \@minus4\p@
  213.               \itemsep\z@}%
  214.    \belowdisplayskip \abovedisplayskip
  215. }
  216. %
  217. \let\footnotesize=\small
  218. %
  219. \newenvironment{petit}{\par\addvspace{6\p@}\small}{\par\addvspace{6\p@}}
  220. %
  221.  
  222. % modification of automatic positioning of floating objects
  223. \setlength\@fptop{\z@ }
  224. \setlength\@fpsep{12\p@ }
  225. \setlength\@fpbot{\z@ \@plus 1fil }
  226. \def\textfraction{.01}
  227. \def\floatpagefraction{.8}
  228. \setlength{\intextsep}{20\p@ \@plus 2\p@ \@minus 2\p@}
  229. \setcounter{topnumber}{4}
  230. \def\topfraction{.9}
  231. \setcounter{bottomnumber}{2}
  232. \def\bottomfraction{.7}
  233. \setcounter{totalnumber}{6}
  234. %
  235. % size and style of headings
  236. \newcommand{\partsize}{\Large}
  237. \newcommand{\partstyle}{\bfseries\boldmath}
  238. \newcommand{\chapsize}{\Large}
  239. \newcommand{\chapstyle}{\bfseries\boldmath}
  240. \newcommand{\secsize}{\large}
  241. \newcommand{\secstyle}{\bfseries\boldmath}
  242. \newcommand{\subsecsize}{\normalsize}
  243. \newcommand{\subsecstyle}{\bfseries\boldmath}
  244. %
  245. \def\cleardoublepage{\clearpage\if@twoside \ifodd\c@page\else
  246.    \hbox{}\newpage\if@twocolumn\hbox{}\newpage\fi\fi\fi}
  247.  
  248. \newcommand{\clearemptydoublepage}{%
  249.         \clearpage{\pagestyle{empty}\cleardoublepage}}
  250. \newcommand{\startnewpage}{\if@openright\clearemptydoublepage\else\clearpage\fi}
  251.  
  252. % MiniTOC
  253. % one outputstream for all minitocs
  254. \newwrite\minitoc
  255. \let\MiniTOC=N % switch for MT processing in .aux files
  256. \newcounter{minitocdepth}
  257. \setcounter{minitocdepth}{0}
  258.  
  259. % stolen from LaTeX.ltx - read miniTOC and redirect output stream
  260. \long\def \protected@immwrite#1#2#3{%
  261.       \begingroup
  262.        \let\thepage\relax
  263.        #2%
  264.        \let\protect\@unexpandable@protect
  265.        \edef\reserved@a{\immediate\write#1{#3}}%
  266.        \reserved@a
  267.       \endgroup
  268.       \if@nobreak\ifvmode\nobreak\fi\fi}
  269. %
  270. \newcommand{\@mtstarttoc}[1]
  271. {\begingroup
  272. \makeatletter
  273. \immediate\write\@auxout{\string\immediate\string\closeout\string\minitoc}%
  274.  \typeout{input jobname.#1}%
  275.  \@input{\jobname.#1}%
  276.  \protected@immwrite\@auxout
  277.    {\let\label\@gobble \let\index\@gobble
  278.    \let\glossary\@gobble}%
  279.    {\immediate\openout\minitoc \jobname.#1\relax}
  280. \global\@nobreakfalse\endgroup}
  281. %
  282. \newcommand{\@mtstarttocquiet}[1]
  283. {\begingroup
  284. \makeatletter
  285. \protected@write\@auxout
  286.   {\let\label\@gobble \let\index\@gobble
  287.    \let\glossary\@gobble}%
  288.    {\immediate\openout\minitoc \jobname.#1\relax}
  289. \global\@nobreakfalse\endgroup}
  290. %
  291. \newcommand{\mtaddtocont}[1]
  292. {\protected@write \@auxout
  293.  {\let\label\@gobble \let\index\@gobble
  294.   \let\glossary\@gobble}%
  295.   {\string\@mtwritefile{#1}}}
  296. %
  297. \newcommand{\@mtwritefile}[1]{\if Y\MiniTOC
  298. \@temptokena{#1} \immediate\write\minitoc{\the\@temptokena}\fi}
  299.  
  300. \AtEndDocument{\immediate\write\@auxout{\string\immediate\string\closeout\string\minitoc}}
  301.  
  302. \newcommand{\dominitoc}{% switch \let\MiniTOC=Y
  303.     \protected@immwrite\@auxout{}{\let\MiniTOC=Y}%
  304.     \ifnum \c@minitocdepth<1
  305.         \@mtstarttocquiet{t\thecontribution}\relax
  306.    \else
  307.        \@mtstarttoc{t\thecontribution}\par\addvspace\bigskipamount
  308.    \fi}
  309.  
  310. % redefinition of \part
  311. \renewcommand\part{\clearemptydoublepage
  312.         \thispagestyle{empty}
  313.         \if@twocolumn
  314.            \onecolumn
  315.            \@tempswatrue
  316.         \else
  317.            \@tempswafalse
  318.         \fi
  319.         \@ifundefined{thispagecropped}{}{\thispagecropped}
  320.         \secdef\@part\@spart}
  321.  
  322. \def\@part[#1]#2{\ifnum \c@secnumdepth >-2\relax
  323.        \refstepcounter{part}
  324.        \addcontentsline{toc}{part}{\partname\
  325.        \thepart\thechapterend\hskip\betweenumberspace
  326.        #1}\else
  327.        \addcontentsline{toc}{part}{#1}\fi
  328.   \markboth{}{}
  329.    {\raggedleft
  330.     \ifnum \c@secnumdepth >-2\relax
  331.       \normalfont\partstyle\partsize\vrule height 34pt width 0pt depth 0pt%
  332.      \partname\ \thepart\llap{\smash{\lower 5pt\hbox to\textwidth{\hrulefill}}}
  333.    \par
  334.    \vskip 128.3\p@ \fi
  335.    #2\par}\@endpart}
  336. %
  337. % \@endpart finishes the part page
  338. %
  339. \def\@endpart{\vfil\newpage
  340.   \if@twoside
  341.       \hbox{}
  342.       \thispagestyle{empty}
  343.       \newpage
  344.   \fi
  345.   \if@tempswa
  346.     \twocolumn
  347.   \fi}
  348. %
  349. \def\@spart#1{{\raggedleft
  350.   \normalfont\partsize\partstyle
  351.   #1\par}\@endpart}
  352. %
  353. % (re)define sectioning
  354. \setcounter{secnumdepth}{2}
  355.  
  356. \def\seccounterend{\hskip\betweenumberspace}
  357. \def\@seccntformat#1{\csname the#1\endcsname\seccounterend\ignorespaces}
  358. %
  359. \let\firstmark=\botmark
  360. %
  361. \@ifundefined{thechapterend}{\def\thechapterend{}}{}
  362. %
  363. \if@sechang
  364.    \def\sec@hangfrom#1{\setbox\@tempboxa\hbox{#1}%
  365.          \hangindent\wd\@tempboxa\noindent\box\@tempboxa}
  366. \else
  367.    \def\sec@hangfrom#1{\setbox\@tempboxa\hbox{#1}%
  368.          \hangindent\z@\noindent\box\@tempboxa}
  369. \fi
  370.  
  371. \def\chap@hangfrom#1{\noindent\vrule height 34pt width 0pt depth 0pt
  372. \rlap{\smash{\lower 5pt\hbox to\textwidth{\hrulefill}}}\hbox{#1}
  373. \vskip10pt}
  374. \def\schap@hangfrom{\chap@hangfrom{}}
  375.  
  376. \newcounter{chapter}
  377.  
  378. \newif\if@mainmatter \@mainmattertrue
  379. \newcommand\frontmatter{\startnewpage
  380.            \@mainmatterfalse\pagenumbering{Roman}
  381.            \setcounter{page}{5}}
  382. %
  383. \newcommand\mainmatter{\clearemptydoublepage
  384.            \@mainmattertrue
  385.            \markboth{}{}
  386.            \pagenumbering{arabic}}
  387. %
  388. \newcommand\backmatter{%
  389. \setcounter{minitocdepth}{0}%
  390. \pagestyle{headings}%
  391. \clearemptydoublepage\@mainmatterfalse
  392. \let\appendix=\bppendix
  393. \def\bibsection{\chapter*{\refname}\@mkboth{\refname}{\refname}%
  394.      \addcontentsline{toc}{chapter}{\refname}%
  395.      \csname biblst@rthook\endcsname}%
  396. }
  397.  
  398. \renewenvironment{titlepage}
  399.     {%
  400.       \cleardoublepage
  401.       \if@twocolumn
  402.         \@restonecoltrue\onecolumn
  403.       \else
  404.         \@restonecolfalse\newpage
  405.       \fi
  406.       \thispagestyle{empty}%
  407.       \addtocounter{page}\m@ne
  408.  \def\and{\unskip, }
  409.   \parindent=\z@
  410.   \pretolerance=10000
  411.   \rightskip=0pt plus 1fil
  412.   \large                    % default size for titlepage
  413.   \vspace*{2em}             % Vertical space above title.
  414.  }{{\LARGE                   % each author set in \LARGE
  415.    \lineskip .5em
  416.    \@author
  417.    \par}%
  418.   \vskip 2cm                % Vertical space after author.
  419.   {\Huge\bfseries\@title \par}% Title set in \Huge size and bold face
  420.   \vskip 1cm                % Vertical space after title.
  421.   \if!\@subtitle!\else
  422.    {\LARGE\ignorespaces\@subtitle \par}
  423.    \vskip 1cm               % Vertical space after subtitle.
  424.   \fi
  425.   \if!\@date!\else
  426.     \@date
  427.     \par
  428.     \vskip 1.5em            % Vertical space after date.
  429.   \fi
  430.  \vfill
  431.  {\Large\bfseries Springer\par}
  432. %\vskip 3pt
  433. %\itshape
  434. %  Berlin\enspace Heidelberg\enspace New\kern0.1em York\\
  435. %  Hong\kern0.2em Kong\enspace London\\
  436. %  Milan\enspace Paris\enspace Tokyo\par
  437.      \if@restonecol\twocolumn \else \newpage \fi
  438.      \if@twoside\else
  439.         \setcounter{page}\@ne
  440.     \fi
  441. \clearheadinfo
  442. }
  443.  
  444. \def\@chapapp{\chaptername}
  445.  
  446. \newcommand\chapter{\startnewpage
  447.                    \@ifundefined{thispagecropped}{}{\thispagecropped}
  448.                    \thispagestyle{empty}%
  449.                     \global\@topnum\z@
  450.                     \@afterindentfalse
  451.                     \secdef\@chapter\@schapter}
  452.  
  453. \def\@chapter[#1]#2{\ifnum \c@secnumdepth >\m@ne
  454.                       \refstepcounter{chapter}%
  455.                        \if@mainmatter
  456.                          \typeout{\@chapapp\space\thechapter.}%
  457.                          \addcontentsline{toc}{chapter}{\protect
  458.                                  \numberline{\thechapter\thechapterend}#1}%
  459.                        \else
  460.                          \addcontentsline{toc}{chapter}{#1}%
  461.                        \fi
  462.                     \else
  463.                       \addcontentsline{toc}{chapter}{#1}%
  464.                     \fi
  465.                     \chaptermark{#1}%
  466.                     \addtocontents{lof}{\protect\addvspace{10\p@}}%
  467.                     \addtocontents{lot}{\protect\addvspace{10\p@}}%
  468.                     \if@twocolumn
  469.                       \@topnewpage[\@makechapterhead{#2}]%
  470.                     \else
  471.                       \@makechapterhead{#2}%
  472.                       \@afterheading
  473.                     \fi}
  474.  
  475. \def\@schapter#1{\if@twocolumn
  476.                   \@topnewpage[\@makeschapterhead{#1}]%
  477.                  \else
  478.                    \@makeschapterhead{#1}%
  479.                    \@afterheading
  480.                  \fi}
  481.  
  482. %%changes position and layout of numbered chapter headings
  483. \def\@makechapterhead#1{{\parindent\z@\raggedright\normalfont
  484.  \hyphenpenalty \@M
  485.  \interlinepenalty\@M
  486.  \chapsize\chapstyle
  487.  \chap@hangfrom{\thechapter\thechapterend\hskip\betweenumberspace}%!!!
  488.   \ignorespaces#1\par\nobreak
  489.   \ifdim\pagetotal>157\p@
  490.      \vskip 11\p@
  491.   \else
  492.      \@tempdima=168\p@\advance\@tempdima by-\pagetotal
  493.      \vskip\@tempdima
  494.   \fi}}
  495.  
  496. %%changes position and layout of unnumbered chapter headings
  497. \def\@makeschapterhead#1{{\parindent \z@ \raggedright\normalfont
  498.  \hyphenpenalty \@M
  499.  \interlinepenalty\@M
  500.  \chapsize\chapstyle
  501.  \schap@hangfrom
  502.  \ignorespaces#1\par\nobreak
  503.  \ifdim\pagetotal>157\p@
  504.     \vskip 11\p@
  505.  \else
  506.     \@tempdima=168\p@\advance\@tempdima by-\pagetotal
  507.     \vskip\@tempdima
  508.  \fi}}
  509.  
  510. % predefined unnumbered headings
  511. \newcommand{\preface}[1][\prefacename]{\chapter*{#1}\markboth{#1}{#1}}
  512. % same with TOC entry
  513. \newcommand{\Preface}[1][\prefacename]{\chapter*{#1}\markboth{#1}{#1}%
  514. \addcontentsline{toc}{chapter}{#1}}
  515.  
  516.  
  517. % measures and setting of sections
  518. \renewcommand\section{\@startsection{section}{1}{\z@}%
  519.                        {-24\p@ \@plus -4\p@ \@minus -4\p@}%
  520.                        {12\p@ \@plus 4\p@ \@minus 4\p@}%
  521.                        {\normalfont\secsize\secstyle
  522.                        \rightskip=\z@ \@plus 8em\pretolerance=10000 }}
  523. \renewcommand\subsection{\@startsection{subsection}{2}{\z@}%
  524.                        {-17\p@ \@plus -4\p@ \@minus -4\p@}%
  525.                        {10\p@ \@plus 4\p@ \@minus 4\p@}%
  526.                        {\normalfont\subsecsize\subsecstyle
  527.                        \rightskip=\z@ \@plus 8em\pretolerance=10000 }}
  528. \renewcommand\subsubsection{\@startsection{subsubsection}{3}{\z@}%
  529.                        {-17\p@ \@plus -4\p@ \@minus -4\p@}%
  530.                        {10\p@ \@plus 4\p@ \@minus 4\p@}%
  531.                        {\normalfont\normalsize\subsecstyle
  532.                        \rightskip=\z@ \@plus 8em\pretolerance=10000 }}
  533. \renewcommand\paragraph{\@startsection{paragraph}{4}{\z@}%
  534.                        {-10\p@ \@plus -4\p@ \@minus -4\p@}%
  535.                        {10\p@ \@plus 4\p@ \@minus 4\p@}%
  536.                        {\normalfont\normalsize\itshape
  537.                        \rightskip=\z@ \@plus 8em\pretolerance=10000 }}
  538. \def\subparagraph{\@startsection{subparagraph}{5}{\z@}%
  539.     {-5.388\p@ \@plus-4\p@ \@minus-4\p@}{-5\p@}{\normalfont\normalsize\itshape}}
  540.  
  541. % Appendix
  542. %\renewcommand\appendix{\par}         %article appendix
  543.  
  544. \newcommand\bppendix{\startnewpage            %book appendix
  545.                 \pagestyle{headings}
  546.                \stepcounter{chapter}
  547.                \setcounter{chapter}{0}
  548.                \stepcounter{section}
  549.                \setcounter{section}{0}
  550.                \setcounter{equation}{0}
  551.                \setcounter{figure}{0}
  552.                \setcounter{table}{0}
  553.                \setcounter{footnote}{0}
  554. \renewcommand\thechapter{\@Alph\c@chapter}
  555. \renewcommand\thesection{\thechapter.\@arabic\c@section}
  556. \renewcommand\thesubsection{\thesection.\@arabic\c@subsection}
  557. \renewcommand\theequation{\thechapter.\@arabic\c@equation}
  558. \renewcommand\thefigure{\thechapter.\@arabic\c@figure}
  559. \renewcommand\thetable{\thechapter.\@arabic\c@table}}
  560.  
  561. %  definition of sections
  562. %  \hyphenpenalty and \raggedright added, so that there is no
  563. %  hyphenation and the text is set ragged-right in sectioning
  564.  
  565. \def\hyperhrefextend{\ifx\hyper@anchor\@undefined\else
  566. {\@currentHref}\fi}
  567.  
  568. \def\runinsep{}
  569. \def\aftertext{\unskip\runinsep}
  570. %
  571. %
  572. \def\@ssect#1#2#3#4#5{%
  573.   \@tempskipa #3\relax
  574.   \ifdim \@tempskipa>\z@
  575.     \begingroup
  576.       #4{%
  577.         \@hangfrom{\hskip #1}%
  578.           \raggedright
  579.           \hyphenpenalty \@M
  580.           \interlinepenalty \@M #5\@@par}%
  581.     \endgroup
  582.   \else
  583.     \def\@svsechd{#4{\hskip #1\relax #5}}%
  584.   \fi
  585.   \@xsect{#3}}
  586. %
  587. \def\@sect#1#2#3#4#5#6[#7]#8{%
  588.    \ifnum #2>\c@secnumdepth
  589.       \let\@svsec\@empty
  590.    \else
  591.       \refstepcounter{#1}%
  592.       \protected@edef\@svsec{\@seccntformat{#1}\relax}%
  593.    \fi
  594.    \@tempskipa #5\relax
  595.    \ifdim \@tempskipa>\z@
  596.       \begingroup #6\relax
  597.          \sec@hangfrom{\hskip #3\relax\@svsec}%
  598.          {\raggedright
  599.          \hyphenpenalty \@M
  600.          \interlinepenalty \@M #8\@@par}%
  601.       \endgroup
  602.       \csname #1mark\endcsname{#7}%
  603.       \addcontentsline{toc}{#1}{%
  604.         \ifnum #2>\c@secnumdepth \else
  605.           \protect\numberline{\csname the#1\endcsname}%
  606.         \fi
  607.         #7}%
  608.       \ifnum #2>\c@minitocdepth \else
  609.          \mtaddtocont{\protect\contentsline
  610.             \ifnum #2>\@ne{mtsec}\else{mtchap}\fi
  611.             \ifnum #2>\c@secnumdepth
  612.                {#7}%
  613.              \else
  614.                 {\protect\numberline{\csname the#1\endcsname}#7}%
  615.              \fi
  616.              {\thepage}\hyperhrefextend}%
  617.       \fi
  618.    \else
  619.       \def\@svsechd{%
  620.          #6\hskip #3\relax
  621.          \@svsec #8\aftertext\ignorespaces
  622.          \csname #1mark\endcsname{#7}%
  623.          \addcontentsline{toc}{#1}{%
  624.             \ifnum #2>\c@secnumdepth \else
  625.                 \protect\numberline{\csname the#1\endcsname}%
  626.             \fi
  627.             #7}}%
  628.    \fi
  629.    \@xsect{#5}}
  630.  
  631. % figures and tables are processed in small print
  632. \def \@floatboxreset {%
  633.         \reset@font
  634.         \small
  635.         \@setnobreak
  636.         \@setminipage
  637. }
  638. \def\fps@figure{htbp}
  639. \def\fps@table{htbp}
  640.  
  641. % Frame for paste-in figures or tables
  642. \def\mpicplace#1#2{%  #1 =width   #2 =height
  643. \vbox{\hbox to #1{\vrule\@width \fboxrule\@height #2\hfill}}}
  644.  
  645. % labels of enumerate
  646. \renewcommand\labelenumii{\theenumii)}
  647. \renewcommand\theenumii{\@alph\c@enumii}
  648.  
  649. % labels of itemize
  650. \renewcommand\labelitemi{\textbullet}
  651. \renewcommand\labelitemii{\textendash}
  652. \let\labelitemiii=\labelitemiv
  653.  
  654. % labels of description
  655. \renewcommand*\descriptionlabel[1]{\hspace\labelsep #1\hfil}
  656.  
  657. % fixed indentation for standard itemize-environment
  658. \newdimen\svitemindent \setlength{\svitemindent}{\parindent}
  659.  
  660. % make indentations changeable
  661. \def\setitemindent#1{\settowidth{\labelwidth}{#1}%
  662.         \let\setit@m=Y%
  663.         \leftmargini\labelwidth
  664.         \advance\leftmargini\labelsep
  665.    \def\@listi{\leftmargin\leftmargini
  666.        \labelwidth\leftmargini\advance\labelwidth by -\labelsep
  667.        \parsep=\parskip
  668.        \topsep=\medskipamount
  669.        \itemsep=\parskip \advance\itemsep by -\parsep}}
  670. \def\setitemitemindent#1{\settowidth{\labelwidth}{#1}%
  671.         \let\setit@m=Y%
  672.         \leftmarginii\labelwidth
  673.         \advance\leftmarginii\labelsep
  674. \def\@listii{\leftmargin\leftmarginii
  675.        \labelwidth\leftmarginii\advance\labelwidth by -\labelsep
  676.        \parsep=\parskip
  677.        \topsep=\z@
  678.        \itemsep=\parskip \advance\itemsep by -\parsep}}
  679. %
  680. % adjusted environment "description"
  681. % if an optional parameter (at the first two levels of lists)
  682. % is present, its width is considered to be the widest mark
  683. % throughout the current list.
  684. \def\description{\@ifnextchar[{\@describe}{\list{}{\labelwidth\z@
  685.          \itemindent-\leftmargin \let\makelabel\descriptionlabel}}}
  686. %
  687. \def\describelabel#1{#1\hfil}
  688. \def\@describe[#1]{\relax\ifnum\@listdepth=0
  689. \setitemindent{#1}\else\ifnum\@listdepth=1
  690. \setitemitemindent{#1}\fi\fi
  691. \list{--}{\let\makelabel\describelabel}}
  692. %
  693. \def\itemize{%
  694.   \ifnum \@itemdepth >\thr@@\@toodeep\else
  695.     \advance\@itemdepth\@ne
  696.     \ifx\setit@m\undefined
  697.        \ifnum \@itemdepth=1 \leftmargini=\svitemindent
  698.           \labelwidth\leftmargini\advance\labelwidth-\labelsep
  699.           \leftmarginii=\leftmargini \leftmarginiii=\leftmargini
  700.        \fi
  701.     \fi
  702.     \edef\@itemitem{labelitem\romannumeral\the\@itemdepth}%
  703.     \expandafter\list
  704.       \csname\@itemitem\endcsname
  705.       {\def\makelabel##1{\rlap{##1}\hss}}%
  706.   \fi}
  707. %
  708. \newdimen\verbatimindent \verbatimindent\parindent
  709. \def\verbatim{\advance\@totalleftmargin by\verbatimindent
  710. \@verbatim \frenchspacing\@vobeyspaces \@xverbatim}
  711.  
  712. %
  713. %  special signs and characters
  714. \newcommand{\D}{\mathrm{d}}
  715. \newcommand{\E}{\mathrm{e}}
  716. \let\eul=\E
  717. \newcommand{\I}{{\rm i}}
  718. \let\imag=\I
  719. %
  720. % the definition of uppercase Greek characters
  721. % Springer likes them as italics to depict variables
  722. \DeclareMathSymbol{\Gamma}{\mathalpha}{letters}{"00}
  723. \DeclareMathSymbol{\Delta}{\mathalpha}{letters}{"01}
  724. \DeclareMathSymbol{\Theta}{\mathalpha}{letters}{"02}
  725. \DeclareMathSymbol{\Lambda}{\mathalpha}{letters}{"03}
  726. \DeclareMathSymbol{\Xi}{\mathalpha}{letters}{"04}
  727. \DeclareMathSymbol{\Pi}{\mathalpha}{letters}{"05}
  728. \DeclareMathSymbol{\Sigma}{\mathalpha}{letters}{"06}
  729. \DeclareMathSymbol{\Upsilon}{\mathalpha}{letters}{"07}
  730. \DeclareMathSymbol{\Phi}{\mathalpha}{letters}{"08}
  731. \DeclareMathSymbol{\Psi}{\mathalpha}{letters}{"09}
  732. \DeclareMathSymbol{\Omega}{\mathalpha}{letters}{"0A}
  733. % the upright forms are defined here as \var<Character>
  734. \DeclareMathSymbol{\varGamma}{\mathalpha}{operators}{"00}
  735. \DeclareMathSymbol{\varDelta}{\mathalpha}{operators}{"01}
  736. \DeclareMathSymbol{\varTheta}{\mathalpha}{operators}{"02}
  737. \DeclareMathSymbol{\varLambda}{\mathalpha}{operators}{"03}
  738. \DeclareMathSymbol{\varXi}{\mathalpha}{operators}{"04}
  739. \DeclareMathSymbol{\varPi}{\mathalpha}{operators}{"05}
  740. \DeclareMathSymbol{\varSigma}{\mathalpha}{operators}{"06}
  741. \DeclareMathSymbol{\varUpsilon}{\mathalpha}{operators}{"07}
  742. \DeclareMathSymbol{\varPhi}{\mathalpha}{operators}{"08}
  743. \DeclareMathSymbol{\varPsi}{\mathalpha}{operators}{"09}
  744. \DeclareMathSymbol{\varOmega}{\mathalpha}{operators}{"0A}
  745. % Upright Lower Case Greek letters without using a new MathAlphabet
  746. \newcommand{\greeksym}[1]{\usefont{U}{psy}{m}{n}#1}
  747. \newcommand{\greeksymbold}[1]{{\usefont{U}{psy}{b}{n}#1}}
  748. \newcommand{\allmodesymb}[2]{\relax\ifmmode{\mathchoice
  749. {\mbox{\fontsize{\tf@size}{\tf@size}#1{#2}}}
  750. {\mbox{\fontsize{\tf@size}{\tf@size}#1{#2}}}
  751. {\mbox{\fontsize{\sf@size}{\sf@size}#1{#2}}}
  752. {\mbox{\fontsize{\ssf@size}{\ssf@size}#1{#2}}}}
  753. \else
  754. \mbox{#1{#2}}\fi}
  755. % Definition of lower case Greek letters
  756. \newcommand{\ualpha}{\allmodesymb{\greeksym}{a}}
  757. \newcommand{\ubeta}{\allmodesymb{\greeksym}{b}}
  758. \newcommand{\uchi}{\allmodesymb{\greeksym}{c}}
  759. \newcommand{\udelta}{\allmodesymb{\greeksym}{d}}
  760. \newcommand{\ugamma}{\allmodesymb{\greeksym}{g}}
  761. \newcommand{\umu}{\allmodesymb{\greeksym}{m}}
  762. \newcommand{\unu}{\allmodesymb{\greeksym}{n}}
  763. \newcommand{\upi}{\allmodesymb{\greeksym}{p}}
  764. \newcommand{\utau}{\allmodesymb{\greeksym}{t}}
  765.  
  766. % redefines the \vec accent to a bold character - if desired
  767. \def\fig@type{arrow}% temporarily abused
  768. \ifx\vec@style\fig@type\else
  769. \@ifundefined{vec@style}{%
  770.  \def\vec#1{\ensuremath{\mathchoice
  771.                     {\mbox{\boldmath$\displaystyle\mathbf{#1}$}}
  772.                     {\mbox{\boldmath$\textstyle\mathbf{#1}$}}
  773.                     {\mbox{\boldmath$\scriptstyle\mathbf{#1}$}}
  774.                     {\mbox{\boldmath$\scriptscriptstyle\mathbf{#1}$}}}}%
  775. }
  776. {\def\vec#1{\ensuremath{\mathchoice
  777.                     {\mbox{\boldmath$\displaystyle#1$}}
  778.                     {\mbox{\boldmath$\textstyle#1$}}
  779.                     {\mbox{\boldmath$\scriptstyle#1$}}
  780.                     {\mbox{\boldmath$\scriptscriptstyle#1$}}}}%
  781. }
  782. \fi
  783. % tensor
  784. \def\tens#1{\relax\ifmmode\mathsf{#1}\else\textsf{#1}\fi}
  785.  
  786. % end of proof symbol
  787. \newcommand\qedsymbol{\hbox{\rlap{$\sqcap$}$\sqcup$}}
  788. \newcommand\qed{\relax\ifmmode\else\unskip\quad\fi\qedsymbol}
  789. \newcommand\smartqed{\renewcommand\qed{\relax\ifmmode\qedsymbol\else
  790.  {\unskip\nobreak\hfil\penalty50\hskip1em\null\nobreak\hfil\qedsymbol
  791.  \parfillskip=\z@\finalhyphendemerits=0\endgraf}\fi}}
  792. %
  793. \newif\if@numart   \@numarttrue
  794. \def\ds@numart{\@numarttrue
  795.  \@takefromreset{figure}{chapter}%
  796.   \@takefromreset{table}{chapter}%
  797.   \@takefromreset{equation}{chapter}%
  798.   \def\thesection{\@arabic\c@section}%
  799.   \def\thefigure{\@arabic\c@figure}%
  800.   \def\thetable{\@arabic\c@table}%
  801.   \def\theequation{\arabic{equation}}%
  802.   \def\thesubequation{\arabic{equation}\alph{subequation}}}
  803. %
  804. \def\ds@book{\@numartfalse
  805. \def\thesection{\thechapter.\@arabic\c@section}%
  806. \def\thefigure{\thechapter.\@arabic\c@figure}%
  807. \def\thetable{\thechapter.\@arabic\c@table}%
  808. \def\theequation{\thechapter.\arabic{equation}}%
  809. \@addtoreset{section}{chapter}%
  810. \@addtoreset{figure}{chapter}%
  811. \@addtoreset{table}{chapter}%
  812. \@addtoreset{equation}{chapter}%
  813. \def\thesubequation{\thechapter.\arabic{equation}\alph{subequation}}}
  814. %
  815. % Ragged bottom for the actual page
  816. \def\thisbottomragged{\def\@textbottom{\vskip\z@ \@plus.0001fil
  817. \global\let\@textbottom\relax}}
  818.  
  819. % This is texte.tex
  820. % it defines various texts and their translations
  821. % called up with documentstyle options
  822. \def\switcht@albion{%
  823. \def\abbrsymbname{List of Abbreviations and Symbols}%
  824. \def\abstractname{Summary.}%
  825. \def\ackname{Acknowledgement.}%
  826. \def\andname{and}%
  827. \def\bibname{References}%
  828. \def\lastandname{, and}%
  829. \def\appendixname{Appendix}%
  830. \def\chaptername{Chapter}%
  831. \def\claimname{Claim}%
  832. \def\conjecturename{Conjecture}%
  833. \def\contentsname{Contents}%
  834. \def\corollaryname{Corollary}%
  835. \def\definitionname{Definition}%
  836. \def\examplename{Example}%
  837. \def\exercisename{Exercise}%
  838. \def\figurename{Fig.}%
  839. \def\keywordname{{\bf Key words:}}%
  840. \def\indexname{Index}%
  841. \def\lemmaname{Lemma}%
  842. \def\contriblistname{List of Contributors}%
  843. \def\listfigurename{List of Figures}%
  844. \def\listtablename{List of Tables}%
  845. \def\mailname{{\it Correspondence to\/}:}%
  846. \def\noteaddname{Note added in proof}%
  847. \def\notename{Note}%
  848. \def\partname{Part}%
  849. \def\prefacename{Preface}%
  850. \def\problemname{Problem}%
  851. \def\proofname{Proof}%
  852. \def\propertyname{Property}%
  853. \def\propositionname{Proposition}%
  854. \def\questionname{Question}%
  855. \def\refname{References}%
  856. \def\remarkname{Remark}%
  857. \def\seename{see}%
  858. \def\solutionname{Solution}%
  859. \def\subclassname{{\it Subject Classifications\/}:}%
  860. \def\tablename{Table}%
  861. \def\theoremname{Theorem}}
  862. \switcht@albion
  863. % Names of theorem like environments are already defined
  864. % but must be translated if another language is chosen
  865. %
  866. % French section
  867. \def\switcht@francais{\svlanginfo
  868. \def\abbrsymbname{Liste des abbr\'eviations et symboles}%
  869.  \def\abstractname{R\'esum\'e.}%
  870.  \def\ackname{Remerciements.}%
  871.  \def\andname{et}%
  872.  \def\lastandname{ et}%
  873.  \def\appendixname{Appendice}%
  874.  \def\bibname{Bibliographie}%
  875.  \def\chaptername{Chapitre}%
  876.  \def\claimname{Pr\'etention}%
  877.  \def\conjecturename{Hypoth\`ese}%
  878.  \def\contentsname{Table des mati\`eres}%
  879.  \def\corollaryname{Corollaire}%
  880.  \def\definitionname{D\'efinition}%
  881.  \def\examplename{Exemple}%
  882.  \def\exercisename{Exercice}%
  883.  \def\figurename{Fig.}%
  884.  \def\keywordname{{\bf Mots-cl\'e:}}%
  885.  \def\indexname{Index}%
  886.  \def\lemmaname{Lemme}%
  887.  \def\contriblistname{Liste des contributeurs}%
  888.  \def\listfigurename{Liste des figures}%
  889.  \def\listtablename{Liste des tables}%
  890.  \def\mailname{{\it Correspondence to\/}:}%
  891.  \def\noteaddname{Note ajout\'ee \`a l'\'epreuve}%
  892.  \def\notename{Remarque}%
  893.  \def\partname{Partie}%
  894.  \def\prefacename{Avant-propos}%  ou Pr\'eface
  895.  \def\problemname{Probl\`eme}%
  896.  \def\proofname{Preuve}%
  897.  \def\propertyname{Caract\'eristique}%
  898. %\def\propositionname{Proposition}%
  899.  \def\questionname{Question}%
  900.  \def\refname{Litt\'erature}%
  901.  \def\remarkname{Remarque}%
  902.  \def\seename{voir}%
  903.  \def\solutionname{Solution}%
  904.  \def\subclassname{{\it Subject Classifications\/}:}%
  905.  \def\tablename{Tableau}%
  906.  \def\theoremname{Th\'eor\`eme}%
  907. }
  908. %
  909. % German section
  910. \def\switcht@deutsch{\svlanginfo
  911. \def\abbrsymbname{Abk\"urzungs- und Symbolverzeichnis}%
  912.  \def\abstractname{Zusammenfassung.}%
  913.  \def\ackname{Danksagung.}%
  914.  \def\andname{und}%
  915.  \def\lastandname{ und}%
  916.  \def\appendixname{Anhang}%
  917.  \def\bibname{Literaturverzeichnis}%
  918.  \def\chaptername{Kapitel}%
  919.  \def\claimname{Behauptung}%
  920.  \def\conjecturename{Hypothese}%
  921.  \def\contentsname{Inhaltsverzeichnis}%
  922.  \def\corollaryname{Korollar}%
  923. %\def\definitionname{Definition}%
  924.  \def\examplename{Beispiel}%
  925.  \def\exercisename{\"Ubung}%
  926.  \def\figurename{Abb.}%
  927.  \def\keywordname{{\bf Schl\"usselw\"orter:}}%
  928.  \def\indexname{Sachverzeichnis}%
  929. %\def\lemmaname{Lemma}%
  930.  \def\contriblistname{Mitarbeiter}%
  931.  \def\listfigurename{Abbildungsverzeichnis}%
  932.  \def\listtablename{Tabellenverzeichnis}%
  933.  \def\mailname{{\it Correspondence to\/}:}%
  934.  \def\noteaddname{Nachtrag}%
  935.  \def\notename{Anmerkung}%
  936.  \def\partname{Teil}%
  937.  \def\prefacename{Vorwort}%
  938. %\def\problemname{Problem}%
  939.  \def\proofname{Beweis}%
  940.  \def\propertyname{Eigenschaft}%
  941. %\def\propositionname{Proposition}%
  942.  \def\questionname{Frage}%
  943.  \def\refname{Literaturverzeichnis}%
  944.  \def\remarkname{Anmerkung}%
  945.  \def\seename{siehe}%
  946.  \def\solutionname{L\"osung}%
  947.  \def\subclassname{{\it Subject Classifications\/}:}%
  948.  \def\tablename{Tabelle}%
  949. %\def\theoremname{Theorem}%
  950. }
  951.  
  952. \def\getsto{\mathrel{\mathchoice {\vcenter{\offinterlineskip
  953. \halign{\hfil
  954. $\displaystyle##$\hfil\cr\gets\cr\to\cr}}}
  955. {\vcenter{\offinterlineskip\halign{\hfil$\textstyle##$\hfil\cr\gets
  956. \cr\to\cr}}}
  957. {\vcenter{\offinterlineskip\halign{\hfil$\scriptstyle##$\hfil\cr\gets
  958. \cr\to\cr}}}
  959. {\vcenter{\offinterlineskip\halign{\hfil$\scriptscriptstyle##$\hfil\cr
  960. \gets\cr\to\cr}}}}}
  961. \def\lid{\mathrel{\mathchoice {\vcenter{\offinterlineskip\halign{\hfil
  962. $\displaystyle##$\hfil\cr<\cr\noalign{\vskip1.2\p@}=\cr}}}
  963. {\vcenter{\offinterlineskip\halign{\hfil$\textstyle##$\hfil\cr<\cr
  964. \noalign{\vskip1.2\p@}=\cr}}}
  965. {\vcenter{\offinterlineskip\halign{\hfil$\scriptstyle##$\hfil\cr<\cr
  966. \noalign{\vskip\p@}=\cr}}}
  967. {\vcenter{\offinterlineskip\halign{\hfil$\scriptscriptstyle##$\hfil\cr
  968. <\cr
  969. \noalign{\vskip0.9\p@}=\cr}}}}}
  970. \def\gid{\mathrel{\mathchoice {\vcenter{\offinterlineskip\halign{\hfil
  971. $\displaystyle##$\hfil\cr>\cr\noalign{\vskip1.2\p@}=\cr}}}
  972. {\vcenter{\offinterlineskip\halign{\hfil$\textstyle##$\hfil\cr>\cr
  973. \noalign{\vskip1.2\p@}=\cr}}}
  974. {\vcenter{\offinterlineskip\halign{\hfil$\scriptstyle##$\hfil\cr>\cr
  975. \noalign{\vskip\p@}=\cr}}}
  976. {\vcenter{\offinterlineskip\halign{\hfil$\scriptscriptstyle##$\hfil\cr
  977. >\cr
  978. \noalign{\vskip0.9\p@}=\cr}}}}}
  979. \def\grole{\mathrel{\mathchoice {\vcenter{\offinterlineskip
  980. \halign{\hfil
  981. $\displaystyle##$\hfil\cr>\cr\noalign{\vskip-\p@}<\cr}}}
  982. {\vcenter{\offinterlineskip\halign{\hfil$\textstyle##$\hfil\cr
  983. >\cr\noalign{\vskip-\p@}<\cr}}}
  984. {\vcenter{\offinterlineskip\halign{\hfil$\scriptstyle##$\hfil\cr
  985. >\cr\noalign{\vskip-0.8\p@}<\cr}}}
  986. {\vcenter{\offinterlineskip\halign{\hfil$\scriptscriptstyle##$\hfil\cr
  987. >\cr\noalign{\vskip-0.3\p@}<\cr}}}}}
  988. \def\bbbr{{\rm I\!R}} %reelle Zahlen
  989. \def\bbbm{{\rm I\!M}}
  990. \def\bbbn{{\rm I\!N}} %natuerliche Zahlen
  991. \def\bbbf{{\rm I\!F}}
  992. \def\bbbh{{\rm I\!H}}
  993. \def\bbbk{{\rm I\!K}}
  994. \def\bbbp{{\rm I\!P}}
  995. \def\bbbone{{\mathchoice {\rm 1\mskip-4mu l} {\rm 1\mskip-4mu l}
  996. {\rm 1\mskip-4.5mu l} {\rm 1\mskip-5mu l}}}
  997. \def\bbbc{{\mathchoice {\setbox0=\hbox{$\displaystyle\rm C$}\hbox{\hbox
  998. to\z@{\kern0.4\wd0\vrule\@height0.9\ht0\hss}\box0}}
  999. {\setbox0=\hbox{$\textstyle\rm C$}\hbox{\hbox
  1000. to\z@{\kern0.4\wd0\vrule\@height0.9\ht0\hss}\box0}}
  1001. {\setbox0=\hbox{$\scriptstyle\rm C$}\hbox{\hbox
  1002. to\z@{\kern0.4\wd0\vrule\@height0.9\ht0\hss}\box0}}
  1003. {\setbox0=\hbox{$\scriptscriptstyle\rm C$}\hbox{\hbox
  1004. to\z@{\kern0.4\wd0\vrule\@height0.9\ht0\hss}\box0}}}}
  1005. \def\bbbq{{\mathchoice {\setbox0=\hbox{$\displaystyle\rm
  1006. Q$}\hbox{\raise
  1007. 0.15\ht0\hbox to\z@{\kern0.4\wd0\vrule\@height0.8\ht0\hss}\box0}}
  1008. {\setbox0=\hbox{$\textstyle\rm Q$}\hbox{\raise
  1009. 0.15\ht0\hbox to\z@{\kern0.4\wd0\vrule\@height0.8\ht0\hss}\box0}}
  1010. {\setbox0=\hbox{$\scriptstyle\rm Q$}\hbox{\raise
  1011. 0.15\ht0\hbox to\z@{\kern0.4\wd0\vrule\@height0.7\ht0\hss}\box0}}
  1012. {\setbox0=\hbox{$\scriptscriptstyle\rm Q$}\hbox{\raise
  1013. 0.15\ht0\hbox to\z@{\kern0.4\wd0\vrule\@height0.7\ht0\hss}\box0}}}}
  1014. \def\bbbt{{\mathchoice {\setbox0=\hbox{$\displaystyle\rm
  1015. T$}\hbox{\hbox to\z@{\kern0.3\wd0\vrule\@height0.9\ht0\hss}\box0}}
  1016. {\setbox0=\hbox{$\textstyle\rm T$}\hbox{\hbox
  1017. to\z@{\kern0.3\wd0\vrule\@height0.9\ht0\hss}\box0}}
  1018. {\setbox0=\hbox{$\scriptstyle\rm T$}\hbox{\hbox
  1019. to\z@{\kern0.3\wd0\vrule\@height0.9\ht0\hss}\box0}}
  1020. {\setbox0=\hbox{$\scriptscriptstyle\rm T$}\hbox{\hbox
  1021. to\z@{\kern0.3\wd0\vrule\@height0.9\ht0\hss}\box0}}}}
  1022. \def\bbbs{{\mathchoice
  1023. {\setbox0=\hbox{$\displaystyle     \rm S$}\hbox{\raise0.5\ht0\hbox
  1024. to\z@{\kern0.35\wd0\vrule\@height0.45\ht0\hss}\hbox
  1025. to\z@{\kern0.55\wd0\vrule\@height0.5\ht0\hss}\box0}}
  1026. {\setbox0=\hbox{$\textstyle        \rm S$}\hbox{\raise0.5\ht0\hbox
  1027. to\z@{\kern0.35\wd0\vrule\@height0.45\ht0\hss}\hbox
  1028. to\z@{\kern0.55\wd0\vrule\@height0.5\ht0\hss}\box0}}
  1029. {\setbox0=\hbox{$\scriptstyle      \rm S$}\hbox{\raise0.5\ht0\hbox
  1030. to\z@{\kern0.35\wd0\vrule\@height0.45\ht0\hss}\raise0.05\ht0\hbox
  1031. to\z@{\kern0.5\wd0\vrule\@height0.45\ht0\hss}\box0}}
  1032. {\setbox0=\hbox{$\scriptscriptstyle\rm S$}\hbox{\raise0.5\ht0\hbox
  1033. to\z@{\kern0.4\wd0\vrule\@height0.45\ht0\hss}\raise0.05\ht0\hbox
  1034. to\z@{\kern0.55\wd0\vrule\@height0.45\ht0\hss}\box0}}}}
  1035. \def\bbbz{{\mathchoice {\hbox{$\textstyle\sf Z\kern-0.4em Z$}}
  1036. {\hbox{$\textstyle\sf Z\kern-0.4em Z$}}
  1037. {\hbox{$\scriptstyle\sf Z\kern-0.3em Z$}}
  1038. {\hbox{$\scriptscriptstyle\sf Z\kern-0.2em Z$}}}}
  1039.  
  1040. \newcommand\homedir{%
  1041.     \raisebox{-0.6ex}[0pt][0pt]{\textasciitilde}}
  1042.  
  1043. \let\ts\,
  1044.  
  1045. \setlength \labelsep     {5\p@}
  1046. \setlength\leftmargini   {17\p@}
  1047. \setlength\leftmargin    {\leftmargini}
  1048. \setlength\leftmarginii  {\leftmargini}
  1049. \setlength\leftmarginiii {\leftmargini}
  1050. \setlength\leftmarginiv  {\leftmargini}
  1051. \setlength\labelwidth    {\leftmargini}
  1052. \addtolength\labelwidth{-\labelsep}
  1053.  
  1054. \def\@listI{\leftmargin\leftmargini
  1055.        \parsep=\parskip
  1056.        \topsep=\medskipamount
  1057.        \itemsep=\parskip \advance\itemsep by -\parsep}
  1058. \let\@listi\@listI
  1059. \@listi
  1060.  
  1061. \def\@listii{\leftmargin\leftmarginii
  1062.        \labelwidth\leftmarginii
  1063.        \advance\labelwidth by -\labelsep
  1064.        \parsep=\parskip
  1065.        \topsep=\z@
  1066.        \itemsep=\parskip
  1067.        \advance\itemsep by -\parsep}
  1068.  
  1069. \def\@listiii{\leftmargin\leftmarginiii
  1070.        \labelwidth\leftmarginiii\advance\labelwidth by -\labelsep
  1071.        \parsep=\parskip
  1072.        \topsep=\z@
  1073.        \itemsep=\parskip
  1074.        \advance\itemsep by -\parsep
  1075.        \partopsep=\topsep}
  1076.  
  1077. \setlength\arraycolsep{1.5\p@}
  1078. \setlength\tabcolsep{1.5\p@}
  1079.  
  1080. \def\tableofcontents{\chapter*{\contentsname\markboth{{\contentsname}}%
  1081.                                                     {{\contentsname}}}
  1082. \def\authcount##1{\setcounter{auco}{##1}\setcounter{@auth}{1}}
  1083. \def\lastand{\ifnum\value{auco}=2\relax
  1084.                 \unskip{} \andname\
  1085.              \else
  1086.                 \unskip \lastandname\
  1087.              \fi}%
  1088.  \def\and{\stepcounter{@auth}\relax
  1089.          \ifnum\value{@auth}=\value{auco}%
  1090.              \lastand
  1091.           \else
  1092.              \unskip,
  1093.           \fi}%
  1094.  \@starttoc{toc}\if@restonecol\twocolumn\fi}
  1095.  
  1096. \setcounter{tocdepth}{0}
  1097.  
  1098. \def\l@part#1#2{\addpenalty{\@secpenalty}%
  1099.    \addvspace{2em \@plus\p@}%
  1100.    \begingroup
  1101.      \parindent \z@
  1102.      \rightskip \z@ \@plus 5em
  1103.      \hrule\vskip5\p@
  1104.      \bfseries\boldmath
  1105.      \leavevmode
  1106.      #1\par
  1107.      \vskip5\p@
  1108.      \hrule
  1109.      \vskip\p@
  1110.      \nobreak
  1111.    \endgroup}
  1112.  
  1113. \def\@dotsep{2}
  1114.  
  1115. \long\def\immaddtocontents#1#2{%
  1116.   \protected@immwrite\@auxout
  1117.       {\let\label\@gobble \let\index\@gobble \let\glossary\@gobble}%
  1118.       {\string\@writefile{#1}{#2}}}
  1119.  
  1120. \def\addnumcontentsmark#1#2#3{%
  1121. \immaddtocontents{#1}{\protect\contentsline{#2}{\protect\numberline
  1122.                                    {\thechapter}#3}{\thepage}\hyperhrefextend}}
  1123. \def\addcontentsmark#1#2#3{%
  1124. \immaddtocontents{#1}{\protect\contentsline{#2}{#3}{\thepage}\hyperhrefextend}}
  1125. \def\addcontentsmarkwop#1#2#3{%
  1126. \immaddtocontents{#1}{\protect\contentsline{#2}{#3}{0}\hyperhrefextend}}
  1127.  
  1128. \def\@adcmk[#1]{\ifcase #1 \or
  1129. \def\@gtempa{\addnumcontentsmark}%
  1130.   \or    \def\@gtempa{\addcontentsmark}%
  1131.   \or    \def\@gtempa{\addcontentsmarkwop}%
  1132.   \fi\@gtempa{toc}{chapter}}
  1133. \def\addtocmark{\@ifnextchar[{\@adcmk}{\@adcmk[3]}}
  1134.  
  1135. \def\l@chapter#1#2{\par\addpenalty{-\@highpenalty}
  1136. \addvspace{1.0em \@plus \p@}
  1137. \@tempdima \tocchpnum \begingroup
  1138. \parindent \z@ \rightskip \@tocrmarg
  1139. \advance\rightskip by \z@ \@plus 2cm
  1140. \parfillskip -\rightskip \pretolerance=10000
  1141. \leavevmode \advance\leftskip\@tempdima \hskip -\leftskip
  1142. {\bfseries\boldmath#1}\ifx0#2\hfil\null
  1143. \else
  1144.      \nobreak
  1145.      \leaders\hbox{$\m@th \mkern \@dotsep mu\hbox{.}\mkern
  1146.      \@dotsep mu$}\hfill
  1147.      \nobreak\hbox to\@pnumwidth{\hfil #2}%
  1148.  \fi\par
  1149.  \penalty\@highpenalty \endgroup}
  1150.  
  1151. \newcommand{\tocauthorstyle}{\itshape}
  1152. \newcommand{\toctitlestyle}{\bfseries}
  1153.  
  1154. \def\l@title#1#2{\addpenalty{-\@highpenalty}
  1155. \addvspace{8\p@ \@plus \p@}
  1156.  \@tempdima \z@
  1157.  \tocchpnum \z@ \calctocindent
  1158.  \begingroup
  1159.  \parindent \z@ \rightskip \@tocrmarg
  1160.  \advance\rightskip by \z@ \@plus 2cm
  1161.  \pretolerance=10000
  1162. %\parfillskip -\@tocrmarg
  1163.  \leavevmode \advance\leftskip\@tempdima \hskip -\leftskip
  1164.  {\toctitlestyle#1}%\nobreak
  1165. %\leaders\hbox{$\m@th \mkern \@dotsep mu.\mkern
  1166. %\@dotsep mu$}\hfill
  1167. %\nobreak\hbox to\@pnumwidth{\hss #2}\par
  1168.  \par
  1169.  \penalty\@highpenalty \endgroup}
  1170.  
  1171. \newcommand{\tocaftauthskip}{\z@}
  1172. \def\l@author#1#2{%\addpenalty{\@highpenalty}
  1173.  \@tempdima \z@
  1174.  \begingroup
  1175.  \pretolerance=10000
  1176.  \parindent \z@ \rightskip \@tocrmarg
  1177.  \advance\rightskip by \z@ \@plus 2cm
  1178.  \parfillskip -\@tocrmarg
  1179.  \leavevmode \advance\leftskip\@tempdima \hskip -\leftskip
  1180.  {\tocauthorstyle#1}\nobreak
  1181. \leaders\hbox{$\m@th \mkern \@dotsep mu.\mkern
  1182. \@dotsep mu$}\hfill
  1183. \nobreak\hbox to\@pnumwidth{\hss #2}\par
  1184. \penalty\@highpenalty
  1185. \addvspace{\tocaftauthskip}\endgroup}
  1186.  
  1187. \newdimen\tocchpnum
  1188. \newdimen\tocsecnum
  1189. \newdimen\tocsectotal
  1190. \newdimen\tocsubsecnum
  1191. \newdimen\tocsubsectotal
  1192. \newdimen\tocsubsubsecnum
  1193. \newdimen\tocsubsubsectotal
  1194. \newdimen\tocparanum
  1195. \newdimen\tocparatotal
  1196. \newdimen\tocsubparanum
  1197. \tocchpnum=\z@            % no chapter numbers
  1198. \tocsecnum=18\p@          % section 88. plus 2.222pt
  1199. \tocsubsecnum=23\p@       % subsection 88.8 plus 2.222pt
  1200. \tocsubsubsecnum=27\p@    % subsubsection 88.8.8 plus 1.444pt
  1201. \tocparanum=35\p@         % paragraph 88.8.8.8 plus 1.666pt
  1202. \tocsubparanum=43\p@      % subparagraph 88.8.8.8.8 plus 1.888pt
  1203. \def\calctocindent{%
  1204. \tocsectotal=\tocchpnum
  1205. \advance\tocsectotal by\tocsecnum
  1206. \tocsubsectotal=\tocsectotal
  1207. \advance\tocsubsectotal by\tocsubsecnum
  1208. \tocsubsubsectotal=\tocsubsectotal
  1209. \advance\tocsubsubsectotal by\tocsubsubsecnum
  1210. \tocparatotal=\tocsubsubsectotal
  1211. \advance\tocparatotal by\tocparanum}
  1212. \calctocindent
  1213.  
  1214. \def\@dottedtocline#1#2#3#4#5{%
  1215.   \ifnum #1>\c@tocdepth \else
  1216.     \vskip \z@ \@plus.2\p@
  1217.     {\leftskip #2\relax \rightskip \@tocrmarg \advance\rightskip by \z@ \@plus 2cm
  1218.               \parfillskip -\rightskip \pretolerance=10000
  1219.     \parindent #2\relax\@afterindenttrue
  1220.     \interlinepenalty\@M
  1221.     \leavevmode
  1222.     \@tempdima #3\relax
  1223.     \advance\leftskip \@tempdima \null\nobreak\hskip -\leftskip
  1224.     {#4}\nobreak
  1225.     \leaders\hbox{$\m@th
  1226.        \mkern \@dotsep mu\hbox{.}\mkern \@dotsep
  1227.        mu$}\hfill
  1228.     \nobreak
  1229.     \hb@xt@\@pnumwidth{\hfil\normalfont \normalcolor #5}%
  1230.      \par}%
  1231.   \fi}
  1232. %
  1233. \def\l@section{\@dottedtocline{1}{\tocchpnum}{\tocsecnum}}
  1234. \def\l@subsection{\@dottedtocline{2}{\tocsectotal}{\tocsubsecnum}}
  1235. \def\l@subsubsection{\@dottedtocline{3}{\tocsubsectotal}{\tocsubsubsecnum}}
  1236. \def\l@paragraph{\@dottedtocline{4}{\tocsubsubsectotal}{\tocparanum}}
  1237. \def\l@subparagraph{\@dottedtocline{5}{\tocparatotal}{\tocsubparanum}}
  1238.  
  1239. \renewcommand\listoffigures{%
  1240.     \chapter*{\listfigurename
  1241.      \markboth{\listfigurename}{\listfigurename}}%
  1242.     \@starttoc{lof}%
  1243.     }
  1244.  
  1245. \renewcommand\listoftables{%
  1246.     \chapter*{\listtablename
  1247.      \markboth{\listtablename}{\listtablename}}%
  1248.     \@starttoc{lot}%
  1249.     }
  1250.  
  1251. \newenvironment{thecontriblist}
  1252.               {\if@twocolumn
  1253.                  \@restonecolfalse
  1254.                \else
  1255.                  \@restonecoltrue
  1256.                \fi
  1257.                \columnseprule \z@
  1258.                \columnsep 1cc
  1259.                \@nobreaktrue
  1260.                \if@threecolind
  1261.                   \begin{multicols}{3}[\chapter*{\contriblistname%
  1262.                        \markboth{\contriblistname}{\contriblistname}}]%
  1263.                 \else
  1264.                    \begin{multicols}{2}[\chapter*{\contriblistname%
  1265.                        \markboth{\contriblistname}{\contriblistname}}]%
  1266.                 \fi
  1267.                 \thispagestyle{empty}%
  1268.                 \obeylines%
  1269.                 \parindent\z@%
  1270.                 \rightskip\z@ \@plus 40\p@%
  1271.                 \parskip\z@ \@plus .3\p@\relax
  1272.                 \bigskipamount =12pt plus 6pt minus 8pt
  1273.                 \let\and\bigbreak
  1274.                 }
  1275.                {\end{multicols}
  1276.                \global\let\if@threecolind\iffalse
  1277.                \if@restonecol\onecolumn\else\clearpage\fi}
  1278.  
  1279. \newenvironment{thecontriblist*}
  1280.               {\if@twocolumn
  1281.                  \@restonecolfalse
  1282.                \else
  1283.                  \@restonecoltrue
  1284.                \fi
  1285.                \columnseprule \z@
  1286.                \columnsep 1cc
  1287.                \@nobreaktrue
  1288.                \if@threecolind
  1289.                   \begin{multicols*}{3}[\chapter*{\contriblistname%
  1290.                        \markboth{\contriblistname}{\contriblistname}}]%
  1291.                 \else
  1292.                    \begin{multicols*}{2}[\chapter*{\contriblistname%
  1293.                        \markboth{\contriblistname}{\contriblistname}}]%
  1294.                 \fi
  1295.                 \thispagestyle{empty}%
  1296.                 \obeylines%
  1297.                 \parindent\z@%
  1298.                 \rightskip\z@ \@plus 40\p@%
  1299.                 \parskip\z@ \@plus .3\p@\relax
  1300.                 \bigskipamount =12pt plus 6pt minus 8pt
  1301.                 \let\and\bigbreak
  1302.                 }
  1303.                {\end{multicols*}
  1304.                \global\let\if@threecolind\iffalse
  1305.                \if@restonecol\onecolumn\else\clearpage\fi}
  1306.  
  1307. \renewcommand\footnoterule{%
  1308.   \kern-3\p@
  1309.   \hrule\@width 50\p@
  1310.   \kern2.6\p@}
  1311.  
  1312. \newdimen\foot@parindent
  1313. \foot@parindent 10.83\p@
  1314.  
  1315. \AtBeginDocument{%
  1316. \long\def\@makefntext#1{\@setpar{\@@par\@tempdima \hsize
  1317.         \advance\@tempdima-\foot@parindent\parshape\@ne\foot@parindent
  1318.         \@tempdima}\par
  1319.          \parindent \foot@parindent\noindent \hbox to \z@{%
  1320.          \hss\hss$^{\@thefnmark}$ }#1}}
  1321.  
  1322. \if@spthms
  1323. % Definition of the "\spnewtheorem" command.
  1324. %
  1325. % Usage:
  1326. %
  1327. %     \spnewtheorem{env_nam}{caption}[within]{cap_font}{body_font}
  1328. % or  \spnewtheorem{env_nam}[numbered_like]{caption}{cap_font}{body_font}
  1329. % or  \spnewtheorem*{env_nam}{caption}{cap_font}{body_font}
  1330. %
  1331. % New is "cap_font" and "body_font". It stands for
  1332. % fontdefinition of the caption and the text itself.
  1333. %
  1334. % "\spnewtheorem*" gives a theorem without number.
  1335. %
  1336. % A defined spnewthoerem environment is used as described
  1337. % by Lamport.
  1338. %
  1339. %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  1340.  
  1341. \def\@thmcountersep{.}
  1342. \def\@thmcounterend{.}
  1343. \newcommand\nocaption{\noexpand\@gobble}
  1344. \newdimen\spthmsep \spthmsep=3pt
  1345.  
  1346. \def\spnewtheorem{\@ifstar{\@sthm}{\@Sthm}}
  1347.  
  1348. % definition of \spnewtheorem with number
  1349.  
  1350. \def\@spnthm#1#2{%
  1351.   \@ifnextchar[{\@spxnthm{#1}{#2}}{\@spynthm{#1}{#2}}}
  1352. \def\@Sthm#1{\@ifnextchar[{\@spothm{#1}}{\@spnthm{#1}}}
  1353. \def\@spxnthm#1#2[#3]#4#5{\expandafter\@ifdefinable\csname #1\endcsname
  1354.   {\@definecounter{#1}\@addtoreset{#1}{#3}%
  1355.    \expandafter\xdef\csname the#1\endcsname{\expandafter\noexpand
  1356.     \csname the#3\endcsname \noexpand\@thmcountersep \@thmcounter{#1}}%
  1357.    \expandafter\xdef\csname #1name\endcsname{#2}%
  1358.    \global\@namedef{#1}{\@spthm{#1}{\csname #1name\endcsname}{#4}{#5}}%
  1359.                               \global\@namedef{end#1}{\@endtheorem}}}
  1360.  
  1361. \def\@spynthm#1#2#3#4{\expandafter\@ifdefinable\csname #1\endcsname
  1362.   {\@definecounter{#1}%
  1363.    \expandafter\xdef\csname the#1\endcsname{\@thmcounter{#1}}%
  1364.    \expandafter\xdef\csname #1name\endcsname{#2}%
  1365.    \global\@namedef{#1}{\@spthm{#1}{\csname #1name\endcsname}{#3}{#4}}%
  1366.                                \global\@namedef{end#1}{\@endtheorem}}}
  1367.  
  1368. \def\@spothm#1[#2]#3#4#5{%
  1369.   \@ifundefined{c@#2}{\@latexerr{No theorem environment `#2' defined}\@eha}%
  1370.   {\expandafter\@ifdefinable\csname #1\endcsname
  1371.  {\global\@namedef{the#1}{\@nameuse{the#2}}%
  1372.   \expandafter\xdef\csname #1name\endcsname{#3}%
  1373.   \global\@namedef{#1}{\@spthm{#2}{\csname #1name\endcsname}{#4}{#5}}%
  1374.   \global\@namedef{end#1}{\@endtheorem}}}}
  1375.  
  1376. \def\@spthm#1#2#3#4{\topsep 7\p@ \@plus2\p@ \@minus4\p@
  1377. \labelsep=\spthmsep\refstepcounter{#1}%
  1378. \@ifnextchar[{\@spythm{#1}{#2}{#3}{#4}}{\@spxthm{#1}{#2}{#3}{#4}}}
  1379.  
  1380. \def\@spxthm#1#2#3#4{\@spbegintheorem{#2}{\csname the#1\endcsname}{#3}{#4}%
  1381.                     \ignorespaces}
  1382.  
  1383. \def\@spythm#1#2#3#4[#5]{\@spopargbegintheorem{#2}{\csname
  1384.       the#1\endcsname}{#5}{#3}{#4}\ignorespaces}
  1385.  
  1386. \def\normalthmheadings{\def\@spbegintheorem##1##2##3##4{\trivlist
  1387.                 \item[\hskip\labelsep{##3##1\ ##2\@thmcounterend}]##4}
  1388. \def\@spopargbegintheorem##1##2##3##4##5{\trivlist
  1389.      \item[\hskip\labelsep{##4##1\ ##2}]{##4(##3)\@thmcounterend\ }##5}}
  1390. \normalthmheadings
  1391.  
  1392. \def\reversethmheadings{\def\@spbegintheorem##1##2##3##4{\trivlist
  1393.                 \item[\hskip\labelsep{##3##2\ ##1\@thmcounterend}]##4}
  1394. \def\@spopargbegintheorem##1##2##3##4##5{\trivlist
  1395.      \item[\hskip\labelsep{##4##2\ ##1}]{##4(##3)\@thmcounterend\ }##5}}
  1396.  
  1397. % definition of \spnewtheorem* without number
  1398.  
  1399. \def\@sthm#1#2{\@Ynthm{#1}{#2}}
  1400.  
  1401. \def\@Ynthm#1#2#3#4{\expandafter\@ifdefinable\csname #1\endcsname
  1402.   {\global\@namedef{#1}{\@Thm{\csname #1name\endcsname}{#3}{#4}}%
  1403.     \expandafter\xdef\csname #1name\endcsname{#2}%
  1404.     \global\@namedef{end#1}{\@endtheorem}}}
  1405.  
  1406. \def\@Thm#1#2#3{\topsep 7\p@ \@plus2\p@ \@minus4\p@
  1407. \@ifnextchar[{\@Ythm{#1}{#2}{#3}}{\@Xthm{#1}{#2}{#3}}}
  1408. \def\@Xthm#1#2#3{\@Begintheorem{#1}{#2}{#3}\ignorespaces}
  1409. \def\@Ythm#1#2#3[#4]{\@Opargbegintheorem{#1}
  1410.       {#4}{#2}{#3}\ignorespaces}
  1411.  
  1412. \def\@Begintheorem#1#2#3{#3\trivlist
  1413.                           \item[\hskip\labelsep{#2#1\@thmcounterend}]}
  1414.  
  1415. \def\@Opargbegintheorem#1#2#3#4{#4\trivlist
  1416.      \item[\hskip\labelsep{#3#1}]{#3(#2)\@thmcounterend\ }}
  1417.  
  1418. % initialize theorem environment
  1419.  
  1420. \if@envcntshowhiercnt % show hierarchy counter
  1421.    \def\@thmcountersep{.}
  1422.   \spnewtheorem{theorem}{Theorem}[\envankh]{\bfseries}{\itshape}
  1423.   \@addtoreset{theorem}{chapter}
  1424. \else          % theorem counter only
  1425.    \spnewtheorem{theorem}{Theorem}{\bfseries}{\itshape}
  1426.   \if@envcntreset
  1427.      \@addtoreset{theorem}{chapter}
  1428.      \if@envcntresetsect
  1429.         \@addtoreset{theorem}{section}
  1430.       \fi
  1431.    \fi
  1432. \fi
  1433.  
  1434. %definition of divers theorem environments
  1435. \spnewtheorem*{claim}{Claim}{\itshape}{\rmfamily}
  1436. \spnewtheorem*{proof}{Proof}{\itshape}{\rmfamily}
  1437. %
  1438. \if@envcntsame % all environments like "Theorem" - using its counter
  1439.    \def\spn@wtheorem#1#2#3#4{\@spothm{#1}[theorem]{#2}{#3}{#4}}
  1440. \else % all environments with their own counter
  1441.    \if@envcntshowhiercnt % show hierarchy counter
  1442.       \def\spn@wtheorem#1#2#3#4{\@spxnthm{#1}{#2}[\envankh]{#3}{#4}}
  1443.    \else          % environment counter only
  1444.       \if@envcntreset % environment counter is reset each section
  1445.          \if@envcntresetsect
  1446.             \def\spn@wtheorem#1#2#3#4{\@spynthm{#1}{#2}{#3}{#4}
  1447.             \@addtoreset{#1}{chapter}\@addtoreset{#1}{section}}
  1448.         \else
  1449.            \def\spn@wtheorem#1#2#3#4{\@spynthm{#1}{#2}{#3}{#4}
  1450.                                      \@addtoreset{#1}{chapter}}
  1451.          \fi
  1452.       \else
  1453.          \let\spn@wtheorem=\@spynthm
  1454.       \fi
  1455.    \fi
  1456. \fi
  1457. %
  1458. \let\spdefaulttheorem=\spn@wtheorem
  1459. %
  1460. \spn@wtheorem{case}{Case}{\itshape}{\rmfamily}
  1461. \spn@wtheorem{conjecture}{Conjecture}{\itshape}{\rmfamily}
  1462. \spn@wtheorem{corollary}{Corollary}{\bfseries}{\itshape}
  1463. \spn@wtheorem{definition}{Definition}{\bfseries}{\itshape}
  1464. \spn@wtheorem{example}{Example}{\itshape}{\rmfamily}
  1465. \spn@wtheorem{exercise}{Exercise}{\bfseries}{\rmfamily}
  1466. \spn@wtheorem{lemma}{Lemma}{\bfseries}{\itshape}
  1467. \spn@wtheorem{note}{Note}{\itshape}{\rmfamily}
  1468. \spn@wtheorem{problem}{Problem}{\bfseries}{\rmfamily}
  1469. \spn@wtheorem{property}{Property}{\itshape}{\rmfamily}
  1470. \spn@wtheorem{proposition}{Proposition}{\bfseries}{\itshape}
  1471. \spn@wtheorem{question}{Question}{\itshape}{\rmfamily}
  1472. \spn@wtheorem{solution}{Solution}{\bfseries}{\rmfamily}
  1473. \spn@wtheorem{remark}{Remark}{\itshape}{\rmfamily}
  1474. %
  1475. \newenvironment{theopargself}
  1476.    {\def\@spopargbegintheorem##1##2##3##4##5{\trivlist
  1477.         \item[\hskip\labelsep{##4##1\ ##2}]{##4##3\@thmcounterend\ }##5}
  1478.     \def\@Opargbegintheorem##1##2##3##4{##4\trivlist
  1479.         \item[\hskip\labelsep{##3##1}]{##3##2\@thmcounterend\ }}}{}
  1480. \newenvironment{theopargself*}
  1481.    {\def\@spopargbegintheorem##1##2##3##4##5{\trivlist
  1482.         \item[\hskip\labelsep{##4##1\ ##2}]{\hspace*{-\labelsep}##4##3\@thmcounterend}##5}
  1483.     \def\@Opargbegintheorem##1##2##3##4{##4\trivlist
  1484.         \item[\hskip\labelsep{##3##1}]{\hspace*{-\labelsep}##3##2\@thmcounterend}}}{}
  1485. \fi
  1486.  
  1487. \def\@takefromreset#1#2{%
  1488.     \def\@tempa{#1}%
  1489.     \let\@tempd\@elt
  1490.     \def\@elt##1{%
  1491.         \def\@tempb{##1}%
  1492.         \ifx\@tempa\@tempb\else
  1493.             \@addtoreset{##1}{#2}%
  1494.         \fi}%
  1495.     \expandafter\expandafter\let\expandafter\@tempc\csname cl@#2\endcsname
  1496.     \expandafter\def\csname cl@#2\endcsname{}%
  1497.     \@tempc
  1498.     \let\@elt\@tempd}
  1499.  
  1500. % redefininition of the captions for "figure" and "table" environments
  1501. %
  1502. \@ifundefined{floatlegendstyle}{\def\floatlegendstyle{\bfseries}}{}
  1503. \def\floatcounterend{.\ }
  1504. \def\capstrut{\vrule\@width\z@\@height\topskip}
  1505. \@ifundefined{captionstyle}{\def\captionstyle{\normalfont\small}}{}
  1506. \@ifundefined{instindent}{\newdimen\instindent}{}
  1507.  
  1508. \long\def\@caption#1[#2]#3{\par\addcontentsline{\csname
  1509.  ext@#1\endcsname}{#1}{\protect\numberline{\csname
  1510.  the#1\endcsname}{\ignorespaces #2}}\begingroup
  1511.    \@parboxrestore\if@minipage\@setminipage\fi
  1512.    \@makecaption{\csname fnum@#1\endcsname}{\ignorespaces #3}\par
  1513.  \endgroup}
  1514.  
  1515. \def\twocaptionwidth#1#2{\def\first@capwidth{#1}\def\second@capwidth{#2}}
  1516. % Default: .46\textwidth
  1517. \twocaptionwidth{.46\textwidth}{.46\textwidth}
  1518.  
  1519. \def\leftcaption{\refstepcounter\@captype\@dblarg%
  1520.             {\@leftcaption\@captype}}
  1521.  
  1522. \def\rightcaption{\refstepcounter\@captype\@dblarg%
  1523.             {\@rightcaption\@captype}}
  1524.  
  1525. \long\def\@leftcaption#1[#2]#3{\addcontentsline{\csname
  1526.  ext@#1\endcsname}{#1}{\protect\numberline{\csname
  1527.  the#1\endcsname}{\ignorespaces #2}}\begingroup
  1528.    \@parboxrestore
  1529.    \vskip\figcapgap
  1530.    \@maketwocaptions{\csname fnum@#1\endcsname}{\ignorespaces #3}%
  1531.     {\first@capwidth}\ignorespaces\hspace{.073\textwidth}\hfill%
  1532.   \endgroup}
  1533.  
  1534. \long\def\@rightcaption#1[#2]#3{\addcontentsline{\csname
  1535.  ext@#1\endcsname}{#1}{\protect\numberline{\csname
  1536.  the#1\endcsname}{\ignorespaces #2}}\begingroup
  1537.    \@parboxrestore
  1538.    \@maketwocaptions{\csname fnum@#1\endcsname}{\ignorespaces #3}%
  1539.     {\second@capwidth}\par
  1540.  \endgroup}
  1541.  
  1542. \long\def\@maketwocaptions#1#2#3{%
  1543.    \parbox[t]{#3}{{\floatlegendstyle #1\floatcounterend}#2}}
  1544.  
  1545. \def\fig@pos{l}
  1546. \newcommand{\leftfigure}[2][\fig@pos]{\makebox[.4635\textwidth][#1]{#2}}
  1547. \let\rightfigure\leftfigure
  1548.  
  1549. \newdimen\figgap\figgap=0.5cm  % hgap between figure and sidecaption
  1550. %
  1551. \long\def\@makesidecaption#1#2{%
  1552.    \setbox0=\vbox{\hsize=\@tempdimb
  1553.                  \captionstyle{\floatlegendstyle
  1554.                                         #1\floatcounterend}#2}%
  1555.    \ifdim\instindent<\z@
  1556.       \ifdim\ht0>-\instindent
  1557.          \advance\instindent by\ht0
  1558.          \typeout{^^JClass-Warning: Legend of \string\sidecaption\space for
  1559.                     \@captype\space\csname the\@captype\endcsname
  1560.                  ^^Jis \the\instindent\space taller than the corresponding float -
  1561.                  ^^Jyou'd better switch the environment. }%
  1562.          \instindent\z@
  1563.       \fi
  1564.    \else
  1565.       \ifdim\ht0<\instindent
  1566.          \advance\instindent by-\ht0
  1567.          \advance\instindent by-\dp0\relax
  1568.          \advance\instindent by\topskip
  1569.          \advance\instindent by-11\p@
  1570.       \else
  1571.          \advance\instindent by-\ht0
  1572.          \instindent=-\instindent
  1573.          \typeout{^^JClass-Warning: Legend of \string\sidecaption\space for
  1574.                     \@captype\space\csname the\@captype\endcsname
  1575.                  ^^Jis \the\instindent\space taller than the corresponding float -
  1576.                  ^^Jyou'd better switch the environment. }%
  1577.          \instindent\z@
  1578.       \fi
  1579.    \fi
  1580.    \parbox[b]{\@tempdimb}{\captionstyle{\floatlegendstyle
  1581.                                        #1\floatcounterend}#2%
  1582.                           \ifdim\instindent>\z@ \\
  1583.                                \vrule\@width\z@\@height\instindent
  1584.                                      \@depth\z@
  1585.                           \fi}}
  1586. \def\sidecaption{\@ifnextchar[\sidec@ption{\sidec@ption[b]}}
  1587. \def\sidec@ption[#1]#2\caption{%
  1588. \setbox\@tempboxa=\hbox{\ignorespaces#2\unskip}%
  1589. \if@twocolumn
  1590.  \ifdim\hsize<\textwidth\else
  1591.    \ifdim\wd\@tempboxa<\columnwidth
  1592.       \typeout{Double column float fits into single column -
  1593.            ^^Jyou'd better switch the environment. }%
  1594.    \fi
  1595.  \fi
  1596. \fi
  1597.   \instindent=\ht\@tempboxa
  1598.   \advance\instindent by\dp\@tempboxa
  1599. \if t#1
  1600. \else
  1601.   \instindent=-\instindent
  1602. \fi
  1603. \@tempdimb=\hsize
  1604. \advance\@tempdimb by-\figgap
  1605. \advance\@tempdimb by-\wd\@tempboxa
  1606. \ifdim\@tempdimb<3cm
  1607.    \ClassWarning{SVMultln}{\string\sidecaption: No sufficient room for the legend;
  1608.             ^^Jusing normal \string\caption}%
  1609.    \unhbox\@tempboxa
  1610.    \let\@capcommand=\@caption
  1611. \else
  1612.    \ifdim\@tempdimb<4.5cm
  1613.       \ClassWarning{SVMultln}{\string\sidecaption: Room for the legend very narrow;
  1614.               ^^Jusing \string\raggedright}%
  1615.       \toks@\expandafter{\captionstyle\sloppy
  1616.                         \rightskip=\z@\@plus6mm\relax}%
  1617.       \def\captionstyle{\the\toks@}%
  1618.    \fi
  1619.    \let\@capcommand=\@sidecaption
  1620.    \leavevmode
  1621.    \unhbox\@tempboxa
  1622.    \hfill
  1623. \fi
  1624. \refstepcounter\@captype
  1625. \@dblarg{\@capcommand\@captype}}
  1626. \long\def\@sidecaption#1[#2]#3{\addcontentsline{\csname
  1627.  ext@#1\endcsname}{#1}{\protect\numberline{\csname
  1628.  the#1\endcsname}{\ignorespaces #2}}\begingroup
  1629.    \@parboxrestore
  1630.    \@makesidecaption{\csname fnum@#1\endcsname}{\ignorespaces #3}\par
  1631.  \endgroup}
  1632. %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  1633.  
  1634. \def\fig@type{figure}
  1635.  
  1636. \def\leftlegendglue{\hfil}
  1637. \newdimen\figcapgap\figcapgap=5\p@   % vgap between figure and caption
  1638. \newdimen\tabcapgap\tabcapgap=5.5\p@ % vgap between caption and table
  1639.  
  1640. \long\def\@makecaption#1#2{%
  1641.  \captionstyle
  1642.  \ifx\@captype\fig@type
  1643.    \vskip\figcapgap
  1644.  \fi
  1645.  \setbox\@tempboxa\hbox{{\floatlegendstyle #1\floatcounterend}%
  1646.  \capstrut #2}%
  1647.  \ifdim \wd\@tempboxa >\hsize
  1648.    {\floatlegendstyle #1\floatcounterend}\capstrut #2\par
  1649. \else
  1650.   \hbox to\hsize{\leftlegendglue\unhbox\@tempboxa\hfil}%
  1651.  \fi
  1652.  \ifx\@captype\fig@type\else
  1653.    \vskip\tabcapgap
  1654.  \fi}
  1655.  
  1656. \newcounter{merk}
  1657.  
  1658. \def\endfigure{\resetsubfig\end@float}
  1659.  
  1660. \@namedef{endfigure*}{\resetsubfig\end@dblfloat}
  1661.  
  1662. \def\resetsubfig{\global\let\last@subfig=\undefined}
  1663.  
  1664. \def\r@setsubfig{\xdef\last@subfig{\number\value{figure}}%
  1665. \setcounter{figure}{\value{merk}}%
  1666. \setcounter{merk}{0}}
  1667.  
  1668. \def\subfigures{\stepcounter{figure}%
  1669.    \@tempcnta=\value{merk}%
  1670.    \setcounter{merk}{\value{figure}}%
  1671.    \setcounter{figure}{\the\@tempcnta}%
  1672.    \def\thefigure{\if@numart\else\thechapter.\fi
  1673.   \@arabic\c@merk\alph{figure}}%
  1674.    \let\resetsubfig=\r@setsubfig}
  1675.  
  1676. \def\samenumber{\addtocounter{\@captype}{-1}%
  1677. \@ifundefined{last@subfig}{}{\setcounter{merk}{\last@subfig}}}
  1678.  
  1679. % redefinition of the "bibliography" environment
  1680. %
  1681. \def\biblstarthook#1{\gdef\biblst@rthook{#1}}
  1682. %
  1683. \AtBeginDocument{%
  1684. \ifx\chpbibl\undefined
  1685.   \def\bibsection{\section*{\refname}\ifx\sectionmark\@gobble\else
  1686.      \markright{\refname}\fi
  1687.      \addcontentsline{toc}{section}{\refname}%
  1688.       \mtaddtocont{\protect\contentsline{mtchap}{\refname}{\thepage}\hyperhrefextend}%
  1689.       \csname biblst@rthook\endcsname}
  1690. \else
  1691.  \def\bibsection{\chapter*{\refname}\@mkboth{\refname}{\refname}%
  1692.      \addcontentsline{toc}{chapter}{\refname}%
  1693.      \csname biblst@rthook\endcsname}
  1694. \fi}
  1695. \ifx\oribibl\undefined % Springer way of life
  1696.    \renewenvironment{thebibliography}[1]{\bibsection
  1697.         \global\let\biblst@rthook=\undefined
  1698.         \def\@biblabel##1{##1.}
  1699.         \small
  1700.         \list{\@biblabel{\@arabic\c@enumiv}}%
  1701.               {\settowidth\labelwidth{\@biblabel{#1}}%
  1702.                \leftmargin\labelwidth
  1703.                \advance\leftmargin\labelsep
  1704.                \if@openbib
  1705.                  \advance\leftmargin\bibindent
  1706.                  \itemindent -\bibindent
  1707.                  \listparindent \itemindent
  1708.                  \parsep \z@
  1709.                \fi
  1710.                \usecounter{enumiv}%
  1711.                \let\p@enumiv\@empty
  1712.                \renewcommand\theenumiv{\@arabic\c@enumiv}}%
  1713.          \if@openbib
  1714.            \renewcommand\newblock{\par}%
  1715.          \else
  1716.            \renewcommand\newblock{\hskip .11em \@plus.33em \@minus.07em}%
  1717.          \fi
  1718.          \sloppy\clubpenalty4000\widowpenalty4000%
  1719.          \sfcode`\.=\@m}
  1720.         {\def\@noitemerr
  1721.          {\@latex@warning{Empty `thebibliography' environment}}%
  1722.          \endlist}
  1723.    \def\@lbibitem[#1]#2{\item[{[#1]}\hfill]\if@filesw
  1724.        {\let\protect\noexpand\immediate
  1725.        \write\@auxout{\string\bibcite{#2}{#1}}}\fi\ignorespaces}
  1726. \else % original bibliography is required
  1727.    \let\bibname=\refname
  1728.    \renewenvironment{thebibliography}[1]
  1729.     {\chapter*{\bibname
  1730.        \markboth{\bibname}{\bibname}}%
  1731.       \list{\@biblabel{\@arabic\c@enumiv}}%
  1732.            {\settowidth\labelwidth{\@biblabel{#1}}%
  1733.             \leftmargin\labelwidth
  1734.             \advance\leftmargin\labelsep
  1735.             \@openbib@code
  1736.             \usecounter{enumiv}%
  1737.             \let\p@enumiv\@empty
  1738.             \renewcommand\theenumiv{\@arabic\c@enumiv}}%
  1739.       \sloppy
  1740.       \clubpenalty4000
  1741.       \@clubpenalty \clubpenalty
  1742.       \widowpenalty4000%
  1743.       \sfcode`\.\@m}
  1744.      {\def\@noitemerr
  1745.       {\@latex@warning{Empty `thebibliography' environment}}%
  1746.       \endlist}
  1747. \fi
  1748.  
  1749. \let\if@threecolind\iffalse
  1750. \def\threecolindex{\let\if@threecolind\iftrue}
  1751. \def\indexstarthook#1{\gdef\indexst@rthook{#1}}
  1752. \renewenvironment{theindex}
  1753.               {\if@twocolumn
  1754.                  \@restonecolfalse
  1755.                \else
  1756.                  \@restonecoltrue
  1757.                \fi
  1758.                \columnseprule \z@
  1759.                \columnsep 1cc
  1760.                \@nobreaktrue
  1761.                \if@threecolind
  1762.                   \begin{multicols}{3}[\chapter*{\indexname}%
  1763.                 \else
  1764.                    \begin{multicols}{2}[\chapter*{\indexname}%
  1765.                 \fi
  1766.                 {\csname indexst@rthook\endcsname}]%
  1767.                 \global\let\indexst@rthook=\undefined
  1768.                 \markboth{\indexname}{\indexname}%
  1769.                 \addcontentsline{toc}{chapter}{\indexname}%
  1770.                 \flushbottom
  1771.                 \parindent\z@
  1772.                 \rightskip\z@ \@plus 40\p@
  1773.                 \parskip\z@ \@plus .3\p@\relax
  1774.                 \flushbottom
  1775.                 \let\item\@idxitem
  1776.                 \def\,{\relax\ifmmode\mskip\thinmuskip
  1777.                             \else\hskip0.2em\ignorespaces\fi}%
  1778.                 \normalfont\small}
  1779.                {\end{multicols}
  1780.                \global\let\if@threecolind\iffalse
  1781.                \if@restonecol\onecolumn\else\clearpage\fi}
  1782.  
  1783. \def\idxquad{\hskip 10\p@}% space that divides entry from number
  1784.  
  1785. \def\@idxitem{\par\setbox0=\hbox{--\,--\,--\enspace}%
  1786.                   \hangindent\wd0\relax}
  1787.  
  1788. \def\subitem{\par\noindent\setbox0=\hbox{--\enspace}% second order
  1789.                 \kern\wd0\setbox0=\hbox{--\,--\,--\enspace}%
  1790.                 \hangindent\wd0\relax}% indexentry
  1791.  
  1792. \def\subsubitem{\par\noindent\setbox0=\hbox{--\,--\enspace}% third order
  1793.                 \kern\wd0\setbox0=\hbox{--\,--\,--\enspace}%
  1794.                 \hangindent\wd0\relax}% indexentry
  1795.  
  1796. \def\indexspace{\par \vskip 10\p@ \@plus5\p@ \@minus3\p@\relax}
  1797.  
  1798. % LaTeX does not provide a command to enter the authors institute
  1799. % addresses. The \institute command is defined here.
  1800.  
  1801. \newcounter{@inst}
  1802. \newcounter{@auth}
  1803. \newcounter{auco}
  1804. \newdimen\instindent
  1805. \newbox\authrun
  1806. \newtoks\authorrunning
  1807. \newtoks\tocauthor
  1808. \newbox\titrun
  1809. \newtoks\titlerunning
  1810. \newtoks\toctitle
  1811.  
  1812. \def\clearheadinfo{\gdef\@author{No Author Given}%
  1813.                    \gdef\@title{No Title Given}%
  1814.                    \gdef\@subtitle{}%
  1815.                    \gdef\@institute{No Institute Given}%
  1816.                    \gdef\@thanks{}%
  1817.                    \global\titlerunning={}\global\authorrunning={}%
  1818.                    \global\toctitle={}\global\tocauthor={}}
  1819.  
  1820. \def\institute#1{\gdef\@institute{#1}}
  1821.  
  1822. \def\title{\@ifstar\s@title\n@title}
  1823. \def\s@title#1{\gdef\@title{#1}\ds@numart}
  1824. \def\n@title#1{\gdef\@title{#1}\ds@book}
  1825.  
  1826. \def\institutename{\par
  1827. \begingroup
  1828. \parskip=\z@
  1829. \parindent=\z@
  1830. \setcounter{@inst}{1}%
  1831.  \def\and{\par\stepcounter{@inst}%
  1832.           \noindent
  1833.           \llap{\hbox to\instindent{\hss$^{\the@inst}$%
  1834.                               \enspace}}\ignorespaces}%
  1835.  \setbox0=\vbox{\def\thanks##1{}\@institute}%
  1836.  \ifnum\value{@inst}>9\relax\setbox0=\hbox{$^{88}$\enspace}%
  1837.                  \else\setbox0=\hbox{$^{8}$\enspace}\fi
  1838. \instindent=\wd0
  1839. \leftskip=\wd0\relax
  1840. \ifnum\value{@inst}=1\relax
  1841.   \leftskip=\z@
  1842. \else
  1843.   \setcounter{@inst}{1}%
  1844.    \noindent
  1845.    \llap{\hbox to\instindent{\hss$^{\the@inst}$\enspace}}\ignorespaces
  1846. \fi
  1847. \ignorespaces
  1848. \@institute\par
  1849. \ifnum\value{@inst}>1\relax\setcounter{footnote}{\c@@inst}\fi
  1850. \endgroup}
  1851.  
  1852. \def\@fnsymbol#1{\ensuremath{\ifcase#1\or\star\or{\star\star}\or
  1853.   {\star{\star}\star}\or \dagger\or \ddagger\or
  1854.   \mathchar "278\or \mathchar "27B\or \|\or **\or \dagger\dagger
  1855.   \or \ddagger\ddagger \else\@ctrerr\fi}}
  1856.  
  1857. \def\inst#1{\unskip$^{#1}$}
  1858. \def\fnmsep{\unskip$^,$}
  1859.  
  1860. \def\subtitle#1{\gdef\@subtitle{#1}}
  1861. \clearheadinfo
  1862.  
  1863. \def\@bfdottedtocline#1#2#3#4#5{%
  1864.   \ifnum #1>\c@minitocdepth \else
  1865.     \par
  1866.     \if@minipage\else\addvspace{5\p@}\fi
  1867.    {\leftskip #2\relax \rightskip \@tocrmarg \advance\rightskip by \z@ \@plus 2cm
  1868.               \parfillskip -\rightskip \pretolerance=10000
  1869.     \parindent #2\relax\@afterindenttrue
  1870.     \interlinepenalty\@M
  1871.     \leavevmode
  1872.     \@tempdima #3\relax
  1873.     \advance\leftskip \@tempdima \null\nobreak\hskip -\leftskip
  1874.     {\bfseries#4}\nobreak
  1875.     \leaders\hbox{$\m@th
  1876.        \mkern \@dotsep mu\hbox{.}\mkern \@dotsep
  1877.        mu$}\hfill
  1878.     \nobreak
  1879.     \hb@xt@\@pnumwidth{\hfil\normalfont \normalcolor #5}%
  1880.      \par\addvspace{5\p@}}%
  1881.   \fi}
  1882.  
  1883. \def\@rmdottedtocline#1#2#3#4#5{%
  1884.   \ifnum #1>\c@minitocdepth \else
  1885.     \vskip \z@ \@plus.2\p@
  1886.     {\leftskip #2\relax \rightskip \@tocrmarg \advance\rightskip by \z@ \@plus 2cm
  1887.               \parfillskip -\rightskip \pretolerance=10000
  1888.     \parindent #2\relax\@afterindenttrue
  1889.     \interlinepenalty\@M
  1890.     \leavevmode
  1891.     \@tempdima #3\relax
  1892.     \advance\leftskip \@tempdima \null\nobreak\hskip -\leftskip
  1893.     {#4}\nobreak
  1894.     \leaders\hbox{$\m@th
  1895.        \mkern \@dotsep mu\hbox{.}\mkern \@dotsep
  1896.        mu$}\hfill
  1897.     \nobreak
  1898.     \hb@xt@\@pnumwidth{\hfil\normalfont \normalcolor #5}%
  1899.      \par}%
  1900.   \fi}
  1901.  
  1902. \def\l@mtchap{\@bfdottedtocline{1}{\z@}{\tocsubsecnum}}
  1903. \def\l@mtsec{\@rmdottedtocline{1}{\z@}{\tocsubsecnum}}
  1904.  
  1905. \newcounter{contribution}
  1906.  
  1907. \renewcommand\maketitle{\par\startnewpage
  1908.  \stepcounter{section}%
  1909.   \setcounter{section}{0}%
  1910.   \setcounter{subsection}{0}%
  1911.   \setcounter{figure}{0}
  1912.  \setcounter{table}{0}
  1913.  \setcounter{equation}{0}
  1914.  \setcounter{footnote}{0}%
  1915.   \if@numart
  1916.      \stepcounter{chapter}%
  1917.      \addtocounter{chapter}{-1}%
  1918.   \else
  1919.      \refstepcounter{chapter}%
  1920.   \fi
  1921.   \stepcounter{contribution}%
  1922.   \immediate\write\@auxout{\string\immediate\string\closeout\string\minitoc}%
  1923.   \immediate\write\@auxout{\let\MiniTOC=N}%
  1924. % try to be hyperref-compatible
  1925.   \csname phantomsection\endcsname
  1926.   \begingroup
  1927.     \parindent=\z@
  1928.     \renewcommand\thefootnote{\@fnsymbol\c@footnote}%
  1929.     \if@twocolumn
  1930.       \ifnum \col@number=\@ne
  1931.         \@maketitle
  1932.       \else
  1933.         \twocolumn[\@maketitle]%
  1934.       \fi
  1935.     \else
  1936.       \newpage
  1937.       \global\@topnum\z@   % Prevents figures from going at top of page.
  1938.       \@maketitle
  1939.     \fi
  1940.     \@ifundefined{thispagecropped}{}{\thispagecropped}
  1941.    \thispagestyle{empty}\@thanks
  1942. %
  1943.     \def\\{\unskip\ \ignorespaces}\def\inst##1{\unskip{}}%
  1944.     \def\thanks##1{\unskip{}}\def\fnmsep{\unskip}%
  1945.     \instindent=\hsize
  1946.     \advance\instindent by-\headlineindent
  1947.     \if!\the\toctitle!\addcontentsline{toc}{title}{\if@numart\else
  1948.                                   \@seccntformat{chapter}\fi
  1949.    \@title}\else
  1950.       \addcontentsline{toc}{title}{\if@numart\else
  1951.                                   \@seccntformat{chapter}\fi
  1952.       \the\toctitle}\fi
  1953.    \if@runhead
  1954.       \if!\the\titlerunning!\else
  1955.         \edef\@title{\the\titlerunning}%
  1956.        \fi
  1957.        \global\setbox\titrun=\hbox{\small\rm\unboldmath\if@numart\else
  1958.                                   \@seccntformat{chapter}\fi
  1959.                                   \ignorespaces\@title}%
  1960.        \ifdim\wd\titrun>\instindent
  1961.           \typeout{Title too long for running head. Please supply}%
  1962.           \typeout{a shorter form with \string\titlerunning\space prior to
  1963.                   \string\maketitle}%
  1964.           \global\setbox\titrun=\hbox{\small\rm
  1965.          Title Suppressed Due to Excessive Length}%
  1966.        \fi
  1967.        \xdef\@title{\copy\titrun}%
  1968.     \fi
  1969. %
  1970.     \if!\the\tocauthor!\relax
  1971.       {\def\and{\noexpand\protect\noexpand\and}%
  1972.       \protected@xdef\toc@uthor{\@author}}%
  1973.     \else
  1974.       \def\\{\noexpand\protect\noexpand\newline}%
  1975.       \protected@xdef\scratch{\the\tocauthor}%
  1976.       \protected@xdef\toc@uthor{\scratch}%
  1977.     \fi
  1978.        \addcontentsline{toc}{author}{\toc@uthor}%
  1979.     \if@runhead
  1980.        \if!\the\authorrunning!
  1981.          \value{@inst}=\value{@auth}%
  1982.          \setcounter{@auth}{1}%
  1983.        \else
  1984.          \edef\@author{\the\authorrunning}%
  1985.        \fi
  1986.        \global\setbox\authrun=\hbox{\small\unboldmath\@author\unskip}%
  1987.        \ifdim\wd\authrun>\instindent
  1988.           \typeout{Names of authors too long for running head. Please supply}%
  1989.           \typeout{a shorter form with \string\authorrunning\space prior to
  1990.                   \string\maketitle}%
  1991.           \global\setbox\authrun=\hbox{\small\rm
  1992.          Authors Suppressed Due to Excessive Length}%
  1993.        \fi
  1994.        \xdef\scratch{\copy\authrun}%
  1995.        \markboth{\scratch}{\@title}%
  1996.      \fi
  1997.   \endgroup
  1998. % \setcounter{footnote}{0}% footnote starts at (\inst+1)
  1999.   \@afterindentfalse\@afterheading
  2000.   \clearheadinfo}
  2001. %
  2002. \def\@maketitle{\newpage
  2003. \markboth{}{}%
  2004.  \def\lastand{\ifnum\value{@inst}=2\relax
  2005.                 \unskip{} \andname\
  2006.              \else
  2007.                 \unskip \lastandname\
  2008.              \fi}%
  2009.  \def\and{\stepcounter{@auth}\relax
  2010.          \ifnum\value{@auth}=\value{@inst}%
  2011.              \lastand
  2012.           \else
  2013.              \unskip,
  2014.           \fi}%
  2015.   \raggedright
  2016.  {\Large \bfseries\boldmath
  2017.   \pretolerance=10000
  2018.   \let\\=\newline
  2019. % \@hangfrom{\@svsec}%
  2020. %%%  \@svsec
  2021.   \raggedright
  2022.   \hyphenpenalty \@M
  2023.   \interlinepenalty \@M
  2024.   \if@numart
  2025.      \chap@hangfrom{}%!!!
  2026.   \else
  2027.      \chap@hangfrom{\thechapter\thechapterend\hskip\betweenumberspace}%!!!
  2028.   \fi
  2029.   \ignorespaces
  2030.   \@title \par}\vskip .8cm
  2031. \if!\@subtitle!\else {\large \bfseries\boldmath
  2032.  \vskip -.65cm
  2033.  \pretolerance=10000
  2034.  \@subtitle \par}\vskip .8cm\fi
  2035. \setbox0=\vbox{\setcounter{@auth}{1}\def\and{\stepcounter{@auth}}%
  2036.  \def\thanks##1{}\@author}%
  2037.  \global\value{@inst}=\value{@auth}%
  2038.  \global\value{auco}=\value{@auth}%
  2039.  \setcounter{@auth}{1}%
  2040. {\lineskip .5em
  2041. \noindent\ignorespaces
  2042. \@author\vskip.35cm}
  2043. {\small\institutename\par}
  2044. \ifdim\pagetotal>157\p@
  2045.     \vskip 11\p@
  2046. \else
  2047.     \@tempdima=168\p@\advance\@tempdima by-\pagetotal
  2048.     \vskip\@tempdima
  2049. \fi
  2050. }
  2051.  
  2052. % Useful environments
  2053. \newenvironment{abbrsymblist}[1][\qquad]
  2054.   {\section*{\abbrsymbname}
  2055.    \mtaddtocont{\protect\contentsline{mtchap}{\abbrsymbname}{\thepage}\hyperhrefextend}
  2056.    \begin{description}[#1]}{\end{description}\addvspace{10\p@}}
  2057. %
  2058. \newenvironment{acknowledgement}{\par\addvspace{17\p@}\small\rm
  2059. \trivlist\item[\hskip\labelsep{\it\ackname}]}
  2060. {\endtrivlist\addvspace{6\p@}}
  2061. %
  2062. \newenvironment{noteadd}{\par\addvspace{17\p@}\small\rm
  2063. \trivlist\item[\hskip\labelsep{\it\noteaddname}]}
  2064. {\endtrivlist\addvspace{6\p@}}
  2065. %
  2066. \renewenvironment{abstract}{%
  2067.       \advance\topsep by0.35cm\relax\small
  2068.       \labelwidth=\z@
  2069.       \listparindent=\z@
  2070.       \itemindent\listparindent
  2071.       \trivlist\item[\hskip\labelsep\bfseries\abstractname]%
  2072.       \if!\abstractname!\hskip-\labelsep\fi
  2073.     }
  2074.     {\endtrivlist}
  2075. %
  2076. \newcommand{\keywords}[1]{\par\addvspace\baselineskip
  2077. \noindent\keywordname\enspace\ignorespaces#1}
  2078. %
  2079. % define the running headings of a twoside text
  2080. \def\runheadsize{\small}
  2081. \def\runheadstyle{\rmfamily\upshape}
  2082. \def\customizhead{\hspace{\headlineindent}}
  2083.  
  2084. \def\ps@headings{\let\@mkboth\markboth
  2085.   \let\@oddfoot\@empty\let\@evenfoot\@empty
  2086.   \def\@evenhead{\runheadsize\runheadstyle\rlap{\thepage}\customizhead
  2087.                  \leftmark\hfil}
  2088.   \def\@oddhead{\runheadsize\runheadstyle\hfil\rightmark\customizhead
  2089.                  \llap{\thepage}}
  2090.   \def\chaptermark##1{\markboth{{\ifnum\c@secnumdepth>\m@ne
  2091.      \thechapter\thechapterend\hskip\betweenumberspace\fi ##1}}{{\ifnum %!!!
  2092.       \c@secnumdepth>\m@ne\thechapter\thechapterend\hskip\betweenumberspace\fi ##1}}}%!!!
  2093.    \def\sectionmark##1{\markright{{\ifnum\c@secnumdepth>\z@
  2094.      \thesection\hskip\betweenumberspace\fi ##1}}}}
  2095.  
  2096. \def\ps@myheadings{\let\@mkboth\@gobbletwo
  2097.   \let\@oddfoot\@empty\let\@evenfoot\@empty
  2098.   \def\@evenhead{\runheadsize\runheadstyle\rlap{\thepage}\customizhead
  2099.                  \leftmark\hfil}%
  2100.    \def\@oddhead{\runheadsize\runheadstyle\hfil\rightmark\customizhead
  2101.                  \llap{\thepage}}%
  2102.    \let\chaptermark\@gobble
  2103.    \let\sectionmark\@gobble
  2104.    \let\subsectionmark\@gobble}
  2105.  
  2106. \if@runhead\ps@myheadings\else
  2107. \ps@empty\fi
  2108.  
  2109. \endinput
  2110. %end of file svmultln.cls
RAW Paste Data