%\iffalse
%<+thesis>\def\filename{thesis}
%<+thema>\def\filename{thema}
%\fi
\def\fileversion{1.0g}
\def\filedate{1996/25/01}
\def\docdate{1995/25/01}
% \CheckSum{2689}
%
% \iffalse    This is a META-COMMENT
%
% Copyright (C) 1991, 1996 by Wenzel Matiaske, mati1831@perform.ww.tu-berlin.de
%
% This file is to be used with the LaTeX2e system.
% ------------------------------------------------
%
% This macro is free software; you can redistribute it and/or modify it
% under the terms of the GNU General Public License as published by the
% Free Software Foundation; either version 1, or (at your option) any
% later version.
%
% The macros and the documentation are distributed in the hope that they
% will be useful, but WITHOUT ANY WARRANTY; without even the implied
% warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See
% the GNU General Public License for more details.
%
% You should have received a copy of the GNU General Public License
% along with this program; if not, write to the Free Software
% Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
%
% There are undoubtably bugs in the macros or the documentation. Should
% you make improvements, bug fixes, etc., however, I ask you to send 
% improvements back to me for incorporation into the macro for the 
% rest of us. 
%
% Updates are available via anonymous ftp to host `perform.ww.tu-berlin.de'.
%
%                                ___      
%   wenzel matiaske  |           / /_/-Berlin
%                    |  mail:   Technical University Berlin
%                    |          Dept. of Economics, WW6
%                    |          Uhlandstr. 4-5, D-10623 Berlin
%                    |  phone:  +49 30 314-22574
%                    |  email:  mati1831@perform.ww.tu-berlin.de
%
%  \fi
%
% \MakeShortVerb{\|}
%
%    \ifsolodoc
%      \title{Die \LaTeX-Stile \texttt{thesis} und \texttt{thema}}
%      \author{Wenzel Matiaske\thanks{TU-Berlin, FB 14, WW 6,
%      Uhlandstr. 4--5, 10623~Berlin, Tel.~030-314\,225\,74, email:
%      mati1831@perform.ww.tu-berlin.de.}} 
%      \date{\docdate}
%      \maketitle
%      \selectlanguage{\english}
%      \def\localin{\par}
%      \begin{small}
%      \begin{center}\small\textbf{Abstract}\end{center}
%      \MakePercentComment \input{local01} \MakePercentIgnore
%      \end{small}
%      \newpage
%      \section{Einleitung}
%      \selectlanguage{\german}
%    \else 
%      \section{B\"ucher und Sammelwerke}
%    \fi
% 
%    Die hier vorgestellten
%    \LaTeX-Stile\footnote{Version\fileversion\ vom
%    \filedate. Dokumentation vom \docdate.} basieren auf dem
%    Grundstil \texttt{report.cls} und sind somit zum ein- und
%    doppelseitigen Satz von l\"angeren Arbeiten wie B\"uchern
%    geeignet. Gemeinsam ist den Formaten, da\ss{} sie einige Optionen
%    zur flexibleren Gestaltung des Layouts beinhalten. Im Unterschied
%    zur Stilart \texttt{thesis} stellt \texttt{thema} zus\"atzlich
%    einige Befehle zur Verf\"ugung, die bei der Erstellung von
%    Sammelwerken n\"utzlich sind.  
%
%   \begin{figure}[h!]
%   \begin{verbatim}
%\documentclass[12pt,nocenter,sfbold]{thema}
%\chapapp{Chapter}
%\begin{document}
% 
%\title{Fighting Fire with Fire} \subtitle{Festooning French Phrases}
%\translator{PhD Dissertation}  \author{F. Phidias Phony-Baloney}
%\institution{Fanstord University}
%\maketitle
%...
%\end{document}
%   \end{verbatim}
%   \caption{\label{thetest}Anwendungsbeispiel der Stilart \texttt{thema}}
%   \end{figure}
%
%
%   \ifsolodoc 
%        \section{B\"ucher mit \texttt{thesis}} 
%   \else
%       \subsection{Die Stilart \texttt{thesis}} 
%   \fi
%
%   \ifsolodoc 
%        \subsection{Zus\"atzliche Stiloptionen} 
%   \else
%       \subsubsection{Zus\"atzliche Stiloptionen} 
%   \fi
% 
%   Die wichtigsten Ver\"anderungen gegen\"uber dem Grundstil
%   \texttt{report.cls} betreffen das Layout und sind
%   benutzerfreundlich zu Optionen geb\"undelt. Sie betreffen die
%   Absatzformatierung, die Gestaltung von Listenumgebungen und
%   Kopfzeilen sowie das Layout der \"Uberschriften. Die neuen
%   Optionen sind in Tabelle \ref{theoptions} zusammengestellt. 
%   Die jeweiligen Voreinstellungen sind in der \"Ubersicht
%   unterstrichen. Werden beispielsweise linksb\"undige
%   \"Uberschriften in fetten serifenlosen Typen gew\"unscht, sind die
%   Optionen \texttt{nocenter} und \texttt{sfbold} im optionalen Argument
%   des Kommandos  |\documentstyle[|\emph{options}|]{|\emph{stil}|}|
%   zu spezifizieren, wie Anwendungsbeispiel \ref{thetest} zeigt. 
%
%   \begin{table}[ht] \small \centering
%      \caption{\label{theoptions}Zus\"atzliche Stiloptionen}
%      \begin{tabular}{lp{20em}}
%      \hline
%      \underline{|indent|} & Einzug zu Beginn von Abs\"atzen oder
%                             Fu\ss{}notenabs\"atzen (\LaTeX-Standard). \\
%      |noindent|           & Kein Einzug derselben.              \\
%      |itemize|            & Hervorhebung der Staffelung in 
%                             \texttt{itemize} Umgebungen durch 
%                             verschiedene Zeichen wie z.~B. |\bullet|,
%                             |\star| etc. (\LaTeX-Standard).      \\
% \underline{noitemize}      &   Keine Hervorhebung der "`itemization"'.  \\
% \underline{enumerate}      &   Alphanumerische Z\"ahlung in
%                               \texttt{enumerate} Umgebungen
%                               (\LaTeX-Standard).      \\
%   |noenumerate|            &   Dekadische Z\"ahlung.  \\
% \underline{|headline|}     &   Kopfzeilen werden unterstrichen.      \\
%  |noheadline|              &   Keine Unterstreichung derselben.       \\
%  |headcount|               &   Kapitel und Abschnittsnumerierung
%                                werden in Kopfzeilen ausgegeben.       \\
% \underline{|noheadcount|}  &   Kopfzeilen ohne diese Z\"ahler.        \\
% \underline{|center|}       &   \"Uberschriften und Kopfzeilen zentriert. \\
% |nocenter|                 &   \"Uberschriften und Kopfzeilen
%                                linksb\"undig.\\
% \underline{|upper|}        &   Kapitel\"uberschriften in
%                                Gro\ss{}buchstaben.  \\
%  |noupper|                 &   Keine Umwandlung der Kapitel\"uberschriften 
%                                in Gro\ss{}buchstaben.      \\
% \underline{|slanted|}      &   Gr\"o\ss{}ere/geneigte Typen 
%                                in \"Uberschriften,
%                                Kopf"-zei"-len, Li"-sten und Titelei. \\
% |bold|                     &   Gr\"o\ss{}ere/fette Typen. \\
% |sfbold|                   &   Gr\"o\ss{}ere/fette serifenlose
%                                Typen. \\ 
% |chapterbib|               &   Kapitelweise
%                                Literaturverzeichnisse 
%                                in Zusammen"-arbeit
%                                mit \BibTeX. \\
% |crosshair|                &  Markierung am oberen Seitenrand.   \\
% \hline
% \end{tabular}
% \end{table}
%
%  
% \DescribeMacro{\chapapp}
% \DescribeMacro{\appendix}
%    Die Kapitel\"uberschriften werden hier standardm\"a\ss{}ig ohne
%    die Angabe des Kapitelnamens "`Chapter"' oder "`Kapitel"'
%    gesetzt. Wird die Ausgabe der Bezeichnung gew\"unscht, kann
%    dies durch Spezifikation des neuen Befehls
%    |\chapapp{|\emph{text}|}| erreicht werden;
%    z.~B. |\chapapp{\chaptername}| im Vorspann des Dokumentes. 
%
%    Dies hat auch Auswirkung auf die Formatierung des Anhanges.
%    Per Voreinstellung wird der Anhang durch eine Teil\"uberschrift,
%    d.~h. eine eigene Seite, vom \"ubrigen Text abgesetzt. Wird
%    |\chapapp| dagegen spezifiziert, unterbleibt die
%    Teil\"uberschrift und stattdessen wird wie \"ublich der
%    Kapitelname "`Appendix"' bzw. "`Anhang"' ausgegeben.
%
% \pagebreak[4]
%   \ifsolodoc 
%        \subsection{Erweiterungen der Titelei} 
%    \else
%       \subsubsection{Erweiterungen der Titelei} 
%    \fi
%
% \DescribeMacro{\subtitle}
% \DescribeMacro{\translator}
% \DescribeMacro{\institution}
% \DescribeMacro{\dedication}
%     Die Titelei ist um einige Kommandos erweitert worden. Der Angabe
%     eines Untertitels dient der Befehl |\subtitle{|\emph{text}|}|.
%     Der Untertitel wird in kleineren Typen unterhalb des eigentlichen 
%     |\title{|\emph{text}|}| gesetzt. Der den Kommandos
%     |\translator{|\emph{text}|}| bzw. 
%     |\institution{|\emph{text}|}|
%     \"ubergebene Text wird auf der Titelseite vertikal zentriert
%     bzw. an deren Ende ausgegeben. Eine Widmung, die auf einer
%     separaten Seite plaziert wird, erzeugt der Befehl
%     |\dedication{|\emph{text}|}|. Diese Kommandos behalten sowohl
%     bei einseitigem als auch bei zweiseitigem Druck ihre Wirkung. 
%
% \DescribeMacro{\uppertitleback}
% \DescribeMacro{\middletitleback}
% \DescribeMacro{\lowertitleback}
%     Bei zweiseitigem Druck werden nicht nur die \"ubliche Titelseite
%     und ggf. eine Widmung, sondern zus\"atzlich eine Umschlagsseite 
%     und ein sogenannter Schmutztitel erzeugt. Ausschlie\ss{}lich
%     f\"ur zweiseitigen Druck sind auch die  Kommandos
%     (|\uppertitleback{|\emph{text}|}|,
%     |\middletitleback{|\emph{text}|}| und 
%     |\lowertitleback{|\emph{text}|}| konstruiert, 
%     die dem \texttt{script.sty} entnommen sind \cite{neukam:92}.
%     Sie dienen dem Satz von Verlags-, Copyright- oder ISBN-Angaben
%     auf der R\"uckseite des Titels. Bei zweiseitigem Druck beginnt die
%     Seitenz\"ahlung nach der Titelei standardm\"a\ss{}ig mit der f\"unften
%     Seite.
%
%     \ifsolodoc 
%          \subsection{Geringf\"ugige \"Anderungen} 
%     \else
%        \subsubsection{Geringf\"ugige \"Anderungen} 
%     \fi
%
%     Ferner wurden einige geringf\"ugige Ver\"anderungen vorgenommen.
%     Diese betreffen insbesondere die Option  \texttt{draft}, die nun
%     eine besondere Kopfzeile erzeugt, in der Datum, Zeit und 
%     Name des Jobs ausgegeben werden. Eine zur Reproduktion des
%     Ausdrucks besonders n\"utzliche Option wurde der Stilvariante
%     \texttt{svma.sty} des Springer Verlages \cite{sznyter:87}
%     entnommen. Die Option \texttt{crosshair} f\"ugt auf leeren
%     Seiten eine Markierung am oberen Seitenrand ein. Im Befehl 
%     |\caption{|\emph{text}|}| wird ein Kurzname wie "`Fig."'
%     bzw. "`Tab."' benutzt, und dieser Name wird bei der
%     Absatzformatierung langer Beschriftungen ausgespart. Einige
%     weitere Kommandos, die die Erstellung von Tabellen und
%     speziellen Randnotizen unterst\"utzen, werden im Zusammenhang mit
%     der Stiloption \texttt{etc} beschrieben\ifsolodoc\else\ 
%              (Vgl. \ref{tabcmd}, \ref{see})\fi.
%    Schlie\ss{}lich sind die Voreinstellungen dahingehend 
%    ge\"andert, da\ss{} der |\pagestyle{|\emph{headings}|}| die 
%    Regel ist.
%
% \ifsolodoc 
%     \subsection{Einstellung der Schriftarten} 
% \else
%    \subsubsection{Einstellung der Schriftarten} 
% \fi
%
%    Die in den Stiloptionen \texttt{slanted}, \texttt{bold} und
%    \texttt{sfbold} voreingestellten Schriften k\"onnen bei Bedarf
%    modifiziert werden. Zu diesem Zweck stehen vier Schnittstellen
%    zur Verf\"ugung, welche die gew\"unschten Schriftarten als
%    Argumente \"ubernehmen. Die  Befehle sind in Tabelle
%    \ref{schriftwahl} zusammengestellt. 
%
%\begin{table}\centering \small
%\caption{\label{schriftwahl}Einstellung der Schriftarten}
%\begin{tabular}{@{}ll@{}}
%\hline
%|\partfont{|\emph{decl}|}|            &|\theorembodyfont{|\emph{decl}|}|  \\
%|\chapterfont{|\emph{decl}|}|         &|\itemfont{|\emph{decl}|}|         \\  
%|\chapterauthorfont{|\emph{decl}|}|   &|\examplefont{|\emph{decl}|}|      \\  
%|\sectionfont{|\emph{decl}|}|         &|\headingstextfont{|\emph{decl}|}|\\   
%|\subsectionfont{|\emph{decl}|}|      &|\pagenumberfont{|\emph{decl}|}|\\     
%|\subsubsectionfont{|\emph{decl}|}|   &|\captionheaderfont{|\emph{decl}|}|\\  
%|\paragraphfont{|\emph{decl}|}|       &|\captionbodyfont{|\emph{decl}|}|\\    
%|\subparagraphfont{|\emph{decl}|}|    &|\figurefont{|\emph{decl}|}|\\         
%|\titlefont{|\emph{decl}|}|           &|\tablefont{|\emph{decl}|}|\\          
%|\subtitlefont{|\emph{decl}|}|        &|\indexsize{|\emph{decl}|}|\\       
%|\authorfont{|\emph{decl}|}|          &|\bibsize{|\emph{decl}|}|\\          
%|\translatorfont{|\emph{decl}|}|      &|\theoremheaderfont{|\emph{decl}|}|\\
%|\institutionfont{|\emph{decl}|}|     &\\
%\hline
%\end{tabular}
%\end{table}
%
%
% Der Befehl |\chapterfont| ist f\"ur die Variante \texttt{slanted}
% beispielsweise folgenderma\ss{}en definiert als |\chapterfont{large}|.
%
% \ifsolodoc \section{Sammelwerke mit \texttt{thema}} \else
%    \subsection{Die Stilart \texttt{thema}} \fi
%
% \DescribeMacro{\chapterauthor}
% \DescribeMacro{\shortauthor}
% \DescribeEnv{chapterabstract}
%     Die Stilart \texttt{thema} stellt zus\"atzlich einige Kommandos
%     zur Verf\"ugung,  die bei der Erstellung von Sammelwerken
%     n\"utzlich sind. Dies sind zum einen  der Befehl
%     |\chapterauthor{|\emph{text}|}|,  der den Satz der Autoren eines
%     Kapitels \"ubernimmt. Sollen die Autoren ins Inhaltsverzeichnis
%     und in die Kopfzeilen der geraden Seiten \"ubernommen werden,
%     ist  zus\"atzlich das Kommando |\shortauthor{|\emph{text}|}| zu
%     spezifizieren. Wichtig ist, da\ss{} das Kommando \emph{vor} der
%     mit |\chapter| spezifizierten \"Uberschrift angegeben werden
%     mu\ss{}; sonst  wird es erst im folgenden Kapitel wirksam. Die
%     neue Umgebung |\chapterabstract| erlaubt eine Zusammenfassung im
%     jeweiligen Kapitel.
%
%    In diesem Zusammenhang ist auch auf die zus\"atzliche Option
%    \texttt{chapterbib} hinzuweisen, die dem Substil
%    \texttt{bibperinclude.sty} entspricht
%    \label{chapterbib}\cite{schrod:91}. Diese Option erm\"oglicht die
%     Erstellung mehrerer Literaturverzeichnisse mittels \BibTeX{} in
%     einem Dokument, was insbesondere im Fall von Sammelwerken
%     vorteilhaft sein kann. Zu diesem Zweck sind die Kapitel in
%     getrennten Dateien zu halten und mittels
%     |\include{|\emph{datei}|}| Befehlen in einer Formatierdatei zu
%     b\"undeln\ifsolodoc\else\ (Vgl. auch die Formatierdatei im
%     Anwendungsbeispiel \ref{jourtest})\fi.  Am Ende jedes Kapitels
%     sind die Kommandos |\bibliographystyle{|\emph{stil}|}| und
%     |\bibliography{|\emph{datenbanken}|}|  anzugeben. \BibTeX{}
%     kann nun  jedes Kapitel getrennt bearbeiten. Im Anschlu\ss{}
%     erzeugt \LaTeX{} ein Literaturverzeichnis f\"ur das jeweilige
%     Kapitel.
%
% 
% \StopEventually{\ifsolodoc
% \begin{thebibliography}{1}
%
% \bibitem{neukam:92}  Neukam, Frank (1992).
% \newblock Die Document-Style-Familie "`Script"', Vers. 1.0, 6. Juni 1992.
%
% \bibitem{schrod:91}  Schrod, Joachim (1991).
%    \newblock  Document Style Option `bibperinclude.sty', Vers. 25 Juni 1991.
%
% \bibitem{sznyter:87}  Sznyter, Ed (1987).
%    \newblock Springer-Verlag Document Styles for \LaTeX, November 1, 1987.
%
% \end{thebibliography}
%  \fi}
%
%    \ifsolodoc 
%        \section{Implementation} 
%    \else
%       \subsection{Implementation} 
%    \fi
%
%
% \changes{thema~0.9a}{1991/08/01}{%
%          \texttt{thema.sty}.}
% \changes{thesis~0.9b}{1992/01/15}{%
%          Dokumentation in \texttt{docstyle} Format.}
% \changes{thesis~0.9c}{1993/07/01}{%
%          Draft Headings, Schriftwahl als Optionen., 
%          neue Kommandos \texttt{thickhline} und \texttt{doublehline}}
% \changes{thesis~0.9d}{1993/08/01}{%
%          Redefinition des \texttt{and} Kommandos.}
% \changes{thesis~0.9e}{1993/10/15}{%
%          Bug Fix in \texttt{makechapter}.}
% \changes{thesis~1.0a}{1995/05/20}{%
%          \texttt{thesis.cls} Update auf \LaTeX3e.}
% \changes{thesis~1.0b}{1995/10/25}{%
%         Vorschub in \texttt{caption}.}
% \changes{thesis~1.0c}{1996/02/21}{%
%          Fehlende Schriftart in \texttt{sfbold}-Variante erg\"anzt.}
% \changes{thesis~1.0d}{1996/04/10}{%
%          Abstand in Kopfzeilen korrigiert}
% \changes{thesis~1.0e}{1996/04/15}{%
%          Schreibfehler \texttt{translator} verbessert.}
% \changes{thesis~1.0f}{1996/05/16}{%
%          Kapiteleintr\"age ins Inhaltsverzeichnis auch ohne
%          \texttt{shortauthor} (\texttt{thema}).}
% \changes{thesis~1.0g}{1996/07/01}{%
%          Fehler in \texttt{appendix} korrigiert. (Uwe Schellhorn)}
% \changes{thesis~1.0g}{1996/07/25}{%
%          Fehler in \texttt{chapter} korrigiert. (Uwe Schellhorn)}
% \changes{thesis~1.0g}{1996/07/25}{%
%          Dokumentation (no)itemize, (no)enumerate korrigiert.%%
%         (Klaus Bergner)}
%
%    Die Implementation enth\"alt den Code f\"ur die Klassen \texttt{thesis}
%    und \texttt{thema} sowie f\"ur die kompatiblen Style-Files.
%
%    \begin{macrocode}
%<*thesis|thesis.sty|thema|thema.sty>
\NeedsTeXFormat{LaTeX2e}
%</thesis|thesis.sty|thema|thema.sty>
%    \end{macrocode}
%
%    Die kompatiblen Styles laden die zugeh\"orige Klasse.
%
%    \begin{macrocode}
%<*thesis.sty>
\@obsoletefile{thesis.cls}{thesis.sty}
\LoadClass{thesis}
%</thesis.sty>
%<*thema.sty>
\@obsoletefile{thema.cls}{thema.sty}
\LoadClass{thema}
%</thema.sty>
%    \end{macrocode}
%
%    Im Fall der Klasse \texttt{thema} wird eine
%    Startmeldung ausgegeben, die Optionen werden der zugeh\"origen 
%    Klasse |thesis| \"ubergeben und diese wird eingelesen.
%
%   \begin{macrocode}
%<*thema>
\ProvidesClass{thema}[\filedate\space\fileversion\space%
       LaTeX document class (wm).]
\DeclareOption*{\PassOptionsToClass{\CurrentOption}{thesis}}
\ProcessOptions
\LoadClass[thema]{thesis}
%</thema>
%    \end{macrocode}
%
%    Die Implementation des Hauptstils \texttt{thesis.cls} beginnt 
%    mit der Startmeldung f\"ur die Klasse \texttt{thesis.cls}.
%
%    \begin{macrocode}
%<*thesis>
\ProvidesClass{thesis}[\filedate\space\fileversion\space%
       LaTeX document class (wm).]
%    \end{macrocode}
%
%
%    Es folgen weitere Definitionen und Initialisierungen, die den 
%    \LaTeXe{} Standard Klassen entnommen sind.
%
%    Das Kommando kontrolliert die Schriftgr\"o\ss{}e.
%    \begin{macrocode}
\newcommand\@ptsize{}
%    \end{macrocode}
%
%
%    Schalter, um zwischen zwei- und einspaltigem Satz zu wechseln.
%    \begin{macrocode}
\newif\if@restonecol
%    \end{macrocode}
%
%    Schalter, um die Erzeugung einer Titelseite anzuzeigen.
%    \begin{macrocode}
\newif\if@titlepage 
\@titlepagetrue
%    \end{macrocode}
%
%    Schalter, der anzeigt, ob Kapitel auf der rechten Seite beginnen.
%    \begin{macrocode}
\newif\if@openright
%    \end{macrocode}
%
%    Schalter f\"ur "`offenes"' oder "`geschlossenes"' Format der
%    Bibliographie. 
%
%    \begin{macrocode}
\newif\if@openbib 
\@openbibfalse
%    \end{macrocode}
%
%    Schalter, der anzeigt, ob der Hauptteil des Buches produziert wird.
%
%    \begin{macrocode}
\newif\if@mainmatter \@mainmattertrue
%    \end{macrocode}
%
%    Definitionen der Papierformate
%    \begin{macrocode}
\DeclareOption{a4paper}
   {\setlength\paperheight {297mm}%
    \setlength\paperwidth  {210mm}}
\DeclareOption{a5paper}
   {\setlength\paperheight {210mm}%
    \setlength\paperwidth  {148mm}}
\DeclareOption{b5paper}
   {\setlength\paperheight {250mm}%
    \setlength\paperwidth  {176mm}}
\DeclareOption{letterpaper}
   {\setlength\paperheight {11in}%
    \setlength\paperwidth  {8.5in}}
\DeclareOption{legalpaper}
   {\setlength\paperheight {14in}%
    \setlength\paperwidth  {8.5in}}
\DeclareOption{executivepaper}
   {\setlength\paperheight {10.5in}%
    \setlength\paperwidth  {7.25in}}
%    \end{macrocode}
%
%    Die Option \texttt{landscape} tauscht die Werte f\"ur Seitenh\"ohe 
%    und Seitenbreite.
%    \begin{macrocode}
\DeclareOption{landscape}
   {\setlength\@tempdima   {\paperheight}%
    \setlength\paperheight {\paperwidth}%
    \setlength\paperwidth  {\@tempdima}}
%    \end{macrocode}
%
%    Optionen f\"ur Schriftgr\"o\ss{}en.
%
%    \begin{macrocode}
\DeclareOption{10pt}{\renewcommand\@ptsize{0}}
\DeclareOption{11pt}{\renewcommand\@ptsize{1}}
\DeclareOption{12pt}{\renewcommand\@ptsize{2}}
%    \end{macrocode}
%
%    Zwei oder einseitiger Druck.
%    \begin{macrocode}
\DeclareOption{oneside}{\@twosidefalse \@mparswitchfalse}
\DeclareOption{twoside}{\@twosidetrue  \@mparswitchtrue}
%    \end{macrocode}
%
%    Definitionen f\"ur die \texttt{draft} Option. Die Makros 
%    |\SetTime| und |\now| sind aus \texttt{tugboat.com}
%    \"ubernommen. Diese werden in der \texttt{draft} Option zur 
%    Gestaltung der Kopfzeile benutzt. Ferner wird ein unmaskierter 
%    Schalter |\iffinal| definiert, der standardm\"a\ss{}ig wahr, im 
%    Fall der Option \texttt{draft} dagegen falsch ist. 
%
%    \begin{macrocode}
\newcount\hours \newcount\minutes
\def\SetTime{\hours=\time
        \global\divide\hours by 60
        \minutes=\hours
        \multiply\minutes by 60
        \advance\minutes by-\time
        \global\multiply\minutes by-1 }
\def\now{\number\hours:\ifnum\minutes<10 0\fi\number\minutes}
\newif\iffinal \finaltrue
\DeclareOption{draft}{\setlength\overfullrule{5pt}\finalfalse \SetTime}
\DeclareOption{final}{\setlength\overfullrule{0pt}\finaltrue}
%    \end{macrocode}
%
%    Definition des Schalters |\if@thema|. Der Zustand dieses
%    Schalters ist von der Option der |thema| 
%    abh\"angig und steuert im folgenden die Auswahl der Makros.
%
%    \begin{macrocode}
\newif\if@thema       \@themafalse
\DeclareOption{thema}{\@thematrue}
%    \end{macrocode}
%
%    Die Optionen initialisiert die Variable |option@crosshair|,
%    die abgefragt wird, um auf leeren Seiten eine Markierung des 
%    Seitenkopfs einzuf\"ugen.
%
%    \begin{macrocode}
\newif\if@crosshair       \@crosshairfalse
\DeclareOption{crosshair}{\@crosshairtrue}
\DeclareOption{nocrosshair}{\@crosshairfalse}
%    \end{macrocode}
%
%    Die Optionen setzen den Schalter |\@itemization|, der
%    abgefragt wird, um die Staffelung der \texttt{itemize}
%    Umgebung zu kontrollieren. In \texttt{thesis.cls}
%    ist dieser Schalter standardm\"a\ss{}ig 
%    wahr.
%
%    \begin{macrocode}
\newif\if@itemization     \@itemizationtrue
\DeclareOption{itemize}  {\@itemationtrue}
\DeclareOption{noitemize}{\@itemizationfalse}
%    \end{macrocode}
%
%    Die Optionen setzen den Schalter |\@enumeration|, der
%    abgefragt wird, um die Numerierung der \texttt{enumerate} 
%    Umgebung zu kontrollieren. In \texttt{thesis.cls} standardm\"a\ss{}ig 
%    alphanumerische Z\"ahlung.
%
%    \begin{macrocode}
\newif\if@enumeration       \@enumerationtrue           
\DeclareOption{enumerate}  {\@enumerationtrue}
\DeclareOption{noenumerate}{\@enumerationfalse}
%    \end{macrocode}
%
%    Die Optionen setzen den Schalter |\@noind|, der im folgenden
%    abgefragt wird, um Absatzabst\"ande und Fu\ss{}notenstil zu modifizieren.
%    Voreingestellt ist der Satz von Abschnitten und Fu\ss{}noten, bei denen
%    die erste Zeile einger\"uckt gesetzt wird.
%
%    \begin{macrocode}
\newif\if@noind          \@noindfalse           
\DeclareOption{indent}  {\@noindfalse}
\DeclareOption{noindent}{\@noindtrue}
%    \end{macrocode}
%
%    Die Optionen setzen den Schalter |\@center|, der im folgenden
%    abgefragt wird, um \"Uberschriften, Kopfzeilen und bestimmte Eintr\"age 
%    ins Inhaltsverzeichnis zu zentrieren. Standardm\"a\ss{}ig
%    werden diese in \texttt{thesis.cls} rechtsb\"undig gesetzt.
%
%    \begin{macrocode}
\newif\if@center         \@centerfalse
\DeclareOption{center}  {\@centertrue}
\DeclareOption{nocenter}{\@centerfalse}
%    \end{macrocode}
%
%    Die Optionen setzen den Schalter |\@upper|, der im folgenden
%    abgefragt wird, um Teil\"uberschriften in Gro\ss{}buchstaben zu setzen.
%    Standardm\"a\ss{}ig benutzt \texttt{thesis.cls} keine Gro\ss{}buchstaben.
%
%    \begin{macrocode}
\newif\if@upper        \@upperfalse
\DeclareOption{upper}  {\@uppertrue}
\DeclareOption{noupper}{\@upperfalse}
%    \end{macrocode}
%
%    Die Optionen setzen den Schalter |\@headline|, der 
%    abgefragt wird, um Kopfzeilen zu unterstreichen. Voreinstellung 
%    in \texttt{thesis.cls} sind unterstrichene Kopfzeilen.
%
%    \begin{macrocode}
\newif\if@headline        \@headlinetrue
\DeclareOption{headline}  {\@headlinetrue}
\DeclareOption{noheadline}{\@headlinefalse}
%    \end{macrocode}
%
%    Die Optionen setzen den Schalter |\@headcount|, der 
%    abgefragt wird, um ggf. Abschnittsz\"ahler in Kopfzeilen
%    auszugeben. Standardm\"a\ss{}ig wird in \texttt{thesis.cls} der
%    Z\"ahler in der Kopfzeile ausgegeben.
%
%    \begin{macrocode}
\newif\if@headcount        \@headcounttrue
\DeclareOption{headcount}  {\@headcounttrue}
\DeclareOption{noheadcount}{\@headcountfalse}
%    \end{macrocode}
%
%
%    Die Benutzerschnittstellen zur Definition der Schriftarten in 
%    \"Uberschriften, Titelei, Kopfzeilen, Abbildungen etc. Die 
%    Voreinstellungen erfolgen in Optionen.
%
%    \begin{macrocode}
\def\partfont#1{\def\p@font{#1}}             \def\p@font{}          
\def\chapterfont#1{\def\c@font{#1}}          \def\c@font{}          
\def\chapterauthorfont#1{\def\ca@font{#1}}   \def\ca@font{}
\def\sectionfont#1{\def\s@font{#1}}          \def\s@font{}         
\def\subsectionfont#1{\def\ss@font{#1}}      \def\ss@font{}        
\def\subsubsectionfont#1{\def\sss@font{#1}}  \def\sss@font{}       
\def\paragraphfont#1{\def\pg@font{#1}}       \def\pg@font{}        
\def\subparagraphfont#1{\def\spg@font{#1}}   \def\spg@font{}       
\def\titlefont#1{\def\t@font{#1}}            \def\t@font{}          
\def\subtitlefont#1{\def\st@font{#1}}        \def\st@font{}          
\def\authorfont#1{\def\a@font{#1}}           \def\a@font{}          
\def\translatorfont#1{\def\a@font{#1}}       \def\tr@font{}          
\def\institutionfont#1{\def\in@font{#1}}     \def\in@font{}          
\def\theoremheaderfont#1{\def\thh@font{#1}}  \def\thh@font{}
\def\theorembodyfont#1{\def\thb@font{#1}}    \def\thb@font{}       
\def\itemfont#1{\def\item@font{#1}}          \def\item@font{}       
\def\examplefont#1{\def\ex@font{#1}}         \def\ex@font{}        
\def\headingstextfont#1{\def\h@font{#1}}     \def\h@font{}
\def\pagenumberfont#1{\def\pn@font{#1}}      \def\pn@font{}
\def\captionheaderfont#1{\def\cph@font{#1}}  \def\cph@font{}
\def\captionbodyfont#1{\def\cpb@font{#1}}    \def\cpb@font{}        
\def\figurefont#1{\def\fig@font{#1}}         \def\fig@font{}        
\def\tablefont#1{\def\tab@font{#1}}          \def\tab@font{}        
\def\indexsize#1{\def\index@size{#1}}        \def\index@size{}        
\def\bibsize#1{\def\bib@size{#1}}            \def\bib@size{}        
%    \end{macrocode}
%
%    Die Option definiert die Schriften der \texttt{slanted} Variante.
%    Gleichzeitig werden Gro\ss{}buchstaben im Titel voreingestellt.
%    Diese Option wird an sp\"aterer Stelle voreingestellt. 
%
%    \begin{macrocode}
\DeclareOption{slanted}{
    \partfont{\Large}
    \chapterfont{\large}
    \chapterauthorfont{\large}
    \sectionfont{\large\slshape}
    \subsectionfont{\slshape}
    \subsubsectionfont{\slshape}
    \paragraphfont{\slshape}
    \subparagraphfont{\slshape}
    \titlefont{\LARGE}
    \subtitlefont{\large}
    \authorfont{}
    \institutionfont{\slshape}
    \translatorfont{}
    \theoremheaderfont{\upshape}
    \theorembodyfont{}
    \itemfont{\slshape}
    \examplefont{}
    \headingstextfont{\small\slshape}
    \pagenumberfont{\small}
    \captionheaderfont{\slshape\small}
    \captionbodyfont{\small}
    \figurefont{}
    \tablefont{}
}
%    \end{macrocode}
% 
%    Die Option f\"ur die Schriften der \texttt{bold} Variante.
%
%    \begin{macrocode}
\DeclareOption{bold}{%
    \partfont{\LARGE\bfseries}
    \chapterfont{\LARGE\bfseries}
    \chapterauthorfont{\large}
    \sectionfont{\Large\bfseries}
    \subsectionfont{\large\bfseries}
    \subsubsectionfont{\bfseries}
    \paragraphfont{\bfseries}
    \subparagraphfont{\bfseries}
    \titlefont{\LARGE\bfseries}
    \subtitlefont{\large}
    \authorfont{}
    \translatorfont{}
    \institutionfont{\slshape}
    \theoremheaderfont{\bfseries}
    \theorembodyfont{\itshape}
    \itemfont{\bfseries}
    \examplefont{}
    \headingstextfont{\small\bfseries}
    \pagenumberfont{\small}
    \captionheaderfont{\bfseries}
    \captionbodyfont{}
    \figurefont{}
    \tablefont{}
}
%    \end{macrocode}
%
% Die Option f\"ur die Schriften der \texttt{sfbold} Variante.
%
%    \begin{macrocode}
\DeclareOption{sfbold}{%
    \partfont{\LARGE\sffamily\bfseries}
    \chapterfont{\LARGE\sffamily\bfseries}
    \chapterauthorfont{\Large\sffamily\bfseries}
    \sectionfont{\large\sffamily\bfseries}
    \subsectionfont{\large\sffamily\bfseries}
    \subsubsectionfont{\sffamily\bfseries}
    \paragraphfont{\sffamily\bfseries}
    \subparagraphfont{\sffamily}
    \titlefont{\LARGE\sffamily\bfseries}
    \subtitlefont{\large\sffamily}
    \authorfont{\Large\sffamily\slshape}
    \translatorfont{}
    \institutionfont{\sffamily}
    \theoremheaderfont{\sffamily}
    \theorembodyfont{}
    \itemfont{\sffamily}
    \examplefont{}
    \headingstextfont{\small\sffamily}
    \pagenumberfont{\small\rmfamily}
    \captionheaderfont{\sffamily}
    \captionbodyfont{}
    \figurefont{}
    \tablefont{}
}
%    \end{macrocode}
%
%   Option zur Erzeugung einer Titelseite.
%   
%    \begin{macrocode}
\DeclareOption{titlepage}{\@titlepagetrue}
\DeclareOption{notitlepage}{\@titlepagefalse}
%    \end{macrocode}
%
%    Optionen, ob Kapitel generell auf der rechten Seite beginnen.
%
%    \begin{macrocode}
\DeclareOption{openright}{\@openrighttrue}
\DeclareOption{openany}{\@openrightfalse}
%    \end{macrocode}
%
%     Option f\"ur zweispaltigen Satz.
%    \begin{macrocode}
\DeclareOption{onecolumn}{\@twocolumnfalse}
\DeclareOption{twocolumn}{\@twocolumntrue}
%    \end{macrocode}
%
%    Numerierung der Formeln auf der linken Seite.
%    \begin{macrocode}
\DeclareOption{leqno}{\input{leqno.clo}}
%    \end{macrocode}
%
%    Links ausgerichtete mathematische Umgebungen.
%    \begin{macrocode}
\DeclareOption{fleqn}{\input{fleqn.clo}}
%    \end{macrocode}
%
%    Offenes Bibliographie Format.
%    \begin{macrocode}
\DeclareOption{openbib}{\@openbibtrue}
%    \end{macrocode}
%
%  Die Option gestattet mehrere Literaturverzeichnisse im Text.
%
%    \begin{macrocode}
\newif\if@chapterbib \@chapterbibfalse
\DeclareOption{chapterbib}{\@chapterbibtrue}
%    \end{macrocode}
%    Ausf\"uhren der voreingestellten Optionen.
%    \begin{macrocode}
\ExecuteOptions{letterpaper,10pt,oneside,onecolumn,final,openright,%
                slanted,center,upper}
%    \end{macrocode}
%
%    Ausf\"uhren der benutzerspezifischen Optionen.
%
%    \begin{macrocode}
\ProcessOptions*
%    \end{macrocode}
%
%    Einlesen der Schriftgr\"o\ss{}en.
%    \begin{macrocode}
\input{bk1\@ptsize.clo}
%    \end{macrocode}
%
%
%    Standardwerte beim Satz von Paragraphen (Zeilenabst\"ande,
%    Zeileneinzug Trennungen, etc.). Standardvorgaben der
%    Document-Classes.
%
%    \begin{macrocode}
\setlength\lineskip{1\p@}
\setlength\normallineskip{1\p@}
\renewcommand\baselinestretch{}
\if@noind
  \setlength\parskip{0.5\baselineskip 
         \@plus.1\baselineskip \@minus.1\baselineskip}
  \setlength\parindent{\z@} 
  \def\noparskip{\par\vspace{-\parskip}}
\else
  \setlength\parskip{0\p@ \@plus 1\p@}
  \let\noparskip\relax
\fi
\@lowpenalty   51
\@medpenalty  151
\@highpenalty 301
%    \end{macrocode}
%
%    Unver\"anderte Standardvorgaben zur Behandlung von Floats.
%    \begin{macrocode}
\setcounter{topnumber}{2}
\renewcommand\topfraction{.7}
\setcounter{bottomnumber}{1}
\renewcommand\bottomfraction{.3}
\setcounter{totalnumber}{3}
\renewcommand\textfraction{.2}
\renewcommand\floatpagefraction{.5}
\setcounter{dbltopnumber}{2}
\renewcommand\dbltopfraction{.7}
\renewcommand\dblfloatpagefraction{.5}
%    \end{macrocode}
%
%
% Variable Kopfzeilen, ggf. zentriert und unterstrichen. 
%
%    \begin{macrocode}
\def\e@skip{\h@font{\phantom{y}}}
\if@twoside                             
  \def\ps@headings{
      \let\@oddfoot\@empty\let\@evenfoot\@empty
      \def\@evenhead{\vbox{\hsize=\textwidth
        \hbox to \textwidth{%
        {\pn@font\thepage}\hfill{\h@font\leftmark}\e@skip\if@center\hfill\fi}
        \if@headline \vskip 1.5pt \hrule \fi}}%
      \def\@oddhead{\vbox{\hsize=\textwidth
         \hbox to \textwidth{%
         \if@center\hfill\fi{\h@font\rightmark}\e@skip\hfill{\pn@font\thepage}}
         \if@headline \vskip 1.5pt \hrule \fi}}%
      \let\@mkboth\markboth
    \def\chaptermark##1{%
      \markboth {%
        \ifnum \c@secnumdepth >\m@ne
          \if@mainmatter
            \@chapapp\ 
              \if@headcount 
                \thechapter. \ %
              \fi 
          \fi
        \fi
        ##1}{}}%
    \def\sectionmark##1{%
      \markright {%
        \ifnum \c@secnumdepth >\z@
          \if@headcount 
            \thesection. \ %
          \fi
        \fi
        ##1}}}
\else
  \def\ps@headings{%
    \let\@oddfoot\@empty
    \def\@oddhead{\vbox{\hsize=\textwidth
      \hbox to \textwidth{%
      \if@center\hfill\fi{\h@font\rightmark}\e@skip\hfill{\pn@font\thepage}}
      \if@headline \vskip 1.5pt \hrule \fi}}%
    \let\@mkboth\markboth
    \def\chaptermark##1{%
      \markright {%
        \ifnum \c@secnumdepth >\m@ne
          \if@mainmatter
            \@chapapp\ 
            \if@headcount
              \thechapter. \ %
            \fi
          \fi
        \fi
        ##1}}}
\fi
%    \end{macrocode}
%
% Variable Kopfzeilen, ggf. zentriert und unterstrichen.
%
%    \begin{macrocode}
\def\ps@myheadings{%
    \let\@oddfoot\@empty\let\@evenfoot\@empty
    \def\@oddhead{\vbox{\hsize=\textwidth
      \hbox to \textwidth{%
      \if@center\hfill\fi{\h@font\rightmark}\e@skip\hfill{\pn@font\thepage}}
      \if@headline \vskip 1.5pt \hrule \fi}}%
    \def\@evenhead{\vbox{\hsize=\textwidth
      \hbox to \textwidth{%
      {\pn@font\thepage}\hfill{\h@font\leftmark}\e@skip\if@center\hfill\fi}
      \if@headline \vskip 1.5pt \hrule \fi}}%
    \let\@mkboth\@gobbletwo
    \let\chaptermark\@gobble
    \let\sectionmark\@gobble
    }
%    \end{macrocode}
%
%    Kopfzeile f\"ur vorl\"aufige Formatierungen im Zusammenhang mit
%    der Option \texttt{draft}. Die Kopfzeile enth\"alt Datum, Uhrzeit
%    und Seitenzahl. 
%
%    \begin{macrocode}
\def\ps@draft{%
    \let\@oddfoot\@empty\let\@evenfoot\@empty
    \def\@oddhead{\vbox{\hsize=\textwidth
      \hbox to \textwidth{%
      {\pn@font\today\ \now\ --- {\h@font \draftname: ``\jobname''}
       \hfil\e@skip \thepage}}
       \if@headline \vskip 1.5pt \hrule \fi}}%
    \def\@evenhead{\vbox{\hsize=\textwidth
       \hbox to \textwidth{%
       \pn@font\thepage\e@skip\hfil {\h@font \draftname: ``\jobname''} ---
       \today\ \now\ }
       \if@headline \vskip 1.5pt \hrule \fi}}%
    \let\@mkboth\@gobbletwo
    \let\chaptermark\@gobble
    \let\sectionmark\@gobble
    }
%    \end{macrocode}
%
%    Leere Seiten erhalten eine Markierung am oberen Seitenrand. Dem
%    Springer Makro `svma' entliehen. 
%
%    \begin{macrocode}
\@ifundefined{option@crosshair}{}{%
  \def\clap#1{\hbox to 0pt{\hss#1\hss}} \newdimen\@crosshairrule
  \@crosshairrule=.24pt \def\@crosshairs{\vbox to
    0pt{\hsize=0pt\baselineskip=0pt\lineskip=0pt \vss \clap{\vrule
        height .125in width \@crosshairrule depth 0pt} \clap{\vrule
        width .25in height \@crosshairrule depth 0pt} \clap{\vrule
        height .125in width \@crosshairrule depth 0pt} \vss}}
 \def\ps@empty{%
    \let\@oddfoot\@empty\let\@evenfoot\@empty
    \def\@oddhead{\hfill\raise\headheight\@crosshairs}
    \let\@evenhead\@oddhead}}
%    \end{macrocode}
%
%    Es werden sechs zus\"atzliche Titelangaben definiert. Die Titelei
%    durch das Makro |\maketitle| ist entscheidend davon abh\"angig,
%    ob einseitiger oder zweiseitiger Druck gew\"unscht ist. Bei zweiseitigem 
%    Druck wird eine verk\"urzte Titelseite (Umschlag),
%    ggf. ein Schmutztitel, Standardtitelseite, ggf. Copyrightseite
%    und ggf. Widmung ausgegeben. Bei einseitigem Druck nur der
%    Standardtitel und die Widmung. 
%
%    \begin{macrocode}
\def\@subtitle{}         \def\subtitle#1{\gdef\@subtitle{#1}}
\def\@translator{}       \def\translator#1{\gdef\@translator{#1}}
\def\@institution{}      \def\institution#1{\gdef\@institution{#1}}
\def\@dedication{}       \def\dedication#1{\def\@dedication{#1}}
\def\@uppertitleback{}   \long\def\uppertitleback#1{\def\@uppertitleback{#1}}
\def\@middletitleback{}  \long\def\middletitleback#1{\def\@middletitleback{#1}}
\def\@lowertitleback{}   \long\def\lowertitleback#1{\def\@lowertitleback{#1}}
\def\new@tpage{\newpage\thispagestyle{empty}\null}
\def\and{\end{tabular}\hskip 1em plus.17fil
   \if@center
      \begin{tabular}[t]{c}
   \else
     \begin{tabular}[t]{@{}l@{}}
   \fi}
\def\maketitle{%
  \begin{titlepage}
    \let\footnotesize\small
    \let\footnoterule\relax
    \def\thefootnote{\fnsymbol{footnote}}
     \if@twoside  
       \new@tpage 
       \begin{raggedright}
       {\t@font \@title \par}\vskip 1em
       {\st@font \@subtitle \par}\vspace{50pt}
       {\a@font \lineskip 1.25em
       \begin{tabular}[t]{@{}l@{}}
       \@author
       \end{tabular}\par}
       \vfill
       {\in@font\@institution\par}
       \end{raggedright}
       \new@tpage \new@tpage
       {\ss@font\@title}\par
       {\sss@font\@subtitle}
       \new@tpage
    \fi
    \new@tpage
     \begin{center} 
     {\t@font\@title \par}\vskip 1em
     {\st@font\@subtitle \par}
     \vspace{50pt}
     {\a@font \lineskip 1.25em
     \begin{tabular}[t]{c}
     \@author
     \end{tabular} \par }\vfil
     {\tr@font \@translator \par}
     \vfil
     {\st@font \@date \par}
     \vskip 2em
     {\in@font\@institution \par}
     \end{center} 
     \par \@thanks
   \if@twoside \new@tpage 
      \noindent\begin{minipage}[t]{\textwidth}
      \@uppertitleback
      \end{minipage}\par
      \vfill
      \noindent\begin{minipage}[t]{\textwidth}
      \@middletitleback
      \end{minipage}\par
      \vfill
      \noindent\begin{minipage}[b]{\textwidth}
      \@lowertitleback
      \end{minipage}
   \fi
   \ifx\@dedication\@empty\else \new@tpage
        {\centering \Large \@dedication \par}
   \fi
   \if@twoside \new@tpage \fi
   \end{titlepage}
   \def\thefootnote{\arabic{footnote}}
   \setcounter{footnote}{0}
   \if@thema\else\let\thanks\relax\fi
   \gdef\@thanks{}\gdef\@author{}\gdef\@translator{}\gdef\@institution{}
   \gdef\@uppertitleback{}\gdef\@lowertitleback{}\gdef\@dedication{}%
   \gdef\@title{}\gdef\@subtitle{}\let\maketitle\relax}
%    \end{macrocode}
%
%
% Im Fall des \texttt{thesis.cls} wird die Zusammenfassung als Teil
% der Titelseite wie ein Kapitel gesetzt, die nicht zur Titelseite
% z\"ahlt. Handelt es sich um ein
% \texttt{thema.cls}-Dokument, wird zus\"atzlich die Umgebung
% |\chapterabstract| 
% definiert, die eine Zusammenfassung nach jeder Kapitel\"uberschrift erlaubt.
% Diese wird in Abh\"angigkeit von der Stiloption \texttt{center} zentriert
% oder als |subsection*| gesetzt.
%
%    \begin{macrocode}
\def\abstract{%\titlepage
  \chapter*{\abstractname\@mkboth{\abstractname}{\abstractname}}}
\def\endabstract{\par\vfil\null\endtitlepage}
\if@thema
   \if@center
     \def\chapterabstract{\if@twocolumn
        \subsection*{\abstractname}%
     \else \small
       \begin{center}%
        {\pg@font \abstractname\vspace{-.5em}\vspace{\z@}}%
        \end{center}%
        \quotation
     \fi}
     \def\endchapterabstract{\if@twocolumn\else\endquotation\fi}
   \else
     \def\chapterabstract{\if@twocolumn
        \subsection*{\abstractname}%
     \else \small
        \subsection*{\abstractname}%
     \fi}
     \def\endchapterabstract{\par\bigskip}
  \fi
\fi
%    \end{macrocode}
%
%    Definition und Initialisierung der Gliederungsz\"ahler.
%
%    \begin{macrocode}
\newcommand*{\chaptermark}[1]{}
\setcounter{secnumdepth}{2}
\newcounter {part}
\newcounter {chapter}
\newcounter {section}[chapter]
\newcounter {subsection}[section]
\newcounter {subsubsection}[subsection]
\newcounter {paragraph}[subsubsection]
\newcounter {subparagraph}[paragraph]
\renewcommand{\thepart}         {\Roman{part}}
\renewcommand{\thechapter}      {\arabic{chapter}}
\renewcommand{\thesection}      {\thechapter.\arabic{section}}
\renewcommand{\thesubsection}   {\thesection.\arabic{subsection}}
\renewcommand{\thesubsubsection}{\thesubsection .\arabic{subsubsection}}
\renewcommand{\theparagraph}    {\thesubsubsection.\arabic{paragraph}}
\renewcommand{\thesubparagraph} {\theparagraph.\arabic{subparagraph}}
%    \end{macrocode}
%
%    Die Bezeichnung des Kapitels bleibt standardm\"a\ss{}ig
%    leer. Soll eine Kapitelbezeichnung (z.Z. nur in Kopfzeilen)
%    ausgegeben werden, ist dies mittels der Zuweisung
%    |\chapapp{\chaptername}| im Dokument m\"oglich. 
%
%    \begin{macrocode}
\def\chapapp#1{\def\@chapapp{#1}}      \def\@chapapp{}
%    \end{macrocode}
%
%    Die folgenden Kommandos trennen die logischen Teile eines
%    Buches. |\frontmatter| beginnt eine neue Seite mit r\"omischer
%    Numerierung und schaltet die Ausgabe des Kapitelz\"ahlers
%    aus. |\mainmatter| er\"offnet eine neue Seite, schaltet die Ausgabe
%    des Kapitelz\"ahlers ein und wechselt auf arabische
%    Zahlen. |\backmatter| schaltet die Kapitelz\"ahlung wieder ab und
%    l\"a\ss{}t die Seitenz\"ahlung unver\"andert.
%
%    \begin{macrocode}
\newcommand{\frontmatter}{\cleardoublepage
            \@mainmatterfalse\pagenumbering{roman}}
\newcommand{\mainmatter}{\cleardoublepage
       \@mainmattertrue\pagenumbering{arabic}}
\newcommand{\backmatter}{\if@openright\cleardoublepage\else\clearpage\fi
      \@mainmatterfalse}
%    \end{macrocode}
%
%    Der Satz einer Teil\"uberschrift erfolgt ggf. in
%    Gro\ss{}buchstaben und der voreingestellten Schriftart.
%
%    \begin{macrocode}
\newcommand{\part}{\cleardoublepage
    \thispagestyle{empty}%
    \if@twocolumn 
        \onecolumn\@tempswatrue 
     \else 
       \@tempswafalse 
     \fi 
     \vspace*{\beforechaptervspace}%
     \secdef\@part\@spart}
\def\@part[#1]#2{%
    \ifnum \c@secnumdepth >-2\relax \refstepcounter{part}
      \addcontentsline{toc}{part}{\partname\ \thepart \hspace{1em}#1}%
    \else
     \addcontentsline{toc}{part}{#1}\fi \markboth{}{}%
     {\if@center
       \centering
      \else
       \raggedright
      \fi 
     \reset@font
      \ifnum \c@secnumdepth >-2\relax 
        \p@font \partname{} \thepart \par
         \vskip 20pt 
      \fi 
      \p@font
      \if@upper
        \uppercase{#2}
      \else #2
      \fi
  \par}
\@endpart}
\def\@spart#1{%
      {\if@center
          \centering
       \else
         \raggedright
       \fi
       \reset@font\p@font
       \if@upper
          \uppercase\expandafter{#1}
       \else #1%
       \fi\par}
  \@endpart}
\def\@endpart{\vfil\newpage
              \if@twoside
                \hbox{}%
                \thispagestyle{empty}%
                \newpage
              \fi
              \if@tempswa
                \twocolumn
              \fi}
%    \end{macrocode}
%
%     Definition des |\chapterauthor|, der vom Makro
%     |\@makechapterauthor| gesetzt wird. |\@shortauthor| 
%     \"ubernimmt die Namen f\"ur die Kopfzeile und den Eintrag im 
%     Inhaltsverzeichnis.
%
%    \begin{macrocode}
\if@thema
  \def\chapterauthor#1{\gdef\@chapterauthor{#1}}  \def\@chapterauthor{}
  \def\shortauthor#1{\gdef\@shortauthor{#1}}      \def\@shortauthor{}
  \def\@makechapterauthor{\par    
     \def\thefootnote{\fnsymbol{footnote}}%
     \def\@makefnmark{\hbox
         to\z@{$\m@th^{\@thefnmark}$\hss}}%
     \if@center
         \centering
     \else\parindent\z@
         \raggedright
     \fi
     {\ca@font  \lineskip .5em
     \if@center 
         \begin{tabular}[t]{c} 
     \else 
         \begin{tabular}[t]{@{}l@{}} 
     \fi
     \@chapterauthor
     \end{tabular} \par}\@thanks
     \vskip30\p@
     \gdef\@chapterauthor{}\gdef\@shortauthor{}
     \gdef\@thanks{}\setcounter{footnote}{0}}
\fi
%    \end{macrocode}
%
%    Die Definition von |\@chapter| wird so ge\"andert, da\ss{} im
%    Fall eines Sammelwerkes ggf. die Autoren des Kapitels ins
%    Inhaltsverzeichnis aufgenommen werden. 
%
%    \begin{macrocode}
\newcommand{\chapter}{\if@openright\cleardoublepage\else\clearpage\fi
                    \thispagestyle{empty}%
                    \global\@topnum\z@
                    \@afterindentfalse
                    \secdef\@chapter\@schapter}
\def\@chapter[#1]#2{%
    \ifnum \c@secnumdepth >\m@ne
       \if@mainmatter
          \refstepcounter{chapter}%
          \typeout{\chaptername\space\thechapter.} 
          \if@thema
             \ifx\@shortauthor\@empty
                \addcontentsline{toc}{chapter}{%
                \protect\numberline{\thechapter.}#1}%
             \else
                \addcontentsline{toc}{chapter}{%
                \protect\numberline{\thechapter.}%
                \@shortauthor\hfill\mbox{}\vskip\normallineskip #1}%
             \fi
          \else
             \addcontentsline{toc}{chapter}{%
             \protect\numberline{\thechapter.}#1}%
          \fi
      \else
        \addcontentsline{toc}{chapter}{#1}
      \fi
   \else
      \addcontentsline{toc}{chapter}{#1}
   \fi
   \chaptermark{#1}
   \addtocontents{lof}{\protect\addvspace{10pt}}
   \addtocontents{lot}{\protect\addvspace{10pt}}
   \if@twocolumn
      \@topnewpage[\@makechapterhead{#2}]
    \else
      \@makechapterhead{#2}
      \@afterheading 
    \fi}
%    \end{macrocode}
%
%
%    Der Anfangs- und der Endeabstand eines Kapitels sind frei w\"ahlbar.
%
%    \begin{macrocode}
\newlength{\beforechaptervspace}
\setlength{\beforechaptervspace}{50pt}
\newlength{\afterchaptervspace}
\setlength{\afterchaptervspace}{30pt}
%    \end{macrocode}
%
%    Ist |\chapapp| nicht definiert, erfolgt nur der Satz von
%    Kapitelz\"ahler und \"Uberschrift. Das Makro wird derart
%    variiert, da\ss{} entweder zentrierte oder rechtsb\"undige
%    \"Uberschriften erzeugt werden. Im Fall rechtsb\"undiger
%    \"Uberschriften wird die Numerierung ausgespart. Anderfalls
%    erfolgt die Ausgabe des Kapitelnames und des Z\"ahlers in einer
%    eigenen Zeile und anschlie\ss{}end die \"Uberschrift. Wiederum
%    ggf. zentriert. Abschlie\ss{}end werden ggf. die Namen der
%    Kapitelautoren in die Kopfzeile aufgenommen und das Makro
%    |\@makechapterauthors| wird aufgerufen.
%
%    \begin{macrocode}
\def\@makechapterhead#1{%
  \vspace*{\beforechaptervspace}{%
  \ifx\@chapapp\@empty
     \if@center\centering
       \ifnum \c@secnumdepth >\m@ne 
         {\c@font\thechapter.\ }
       \fi
       {\c@font 
       \if@upper
          \uppercase{#1} 
       \else 
          #1 
       \fi
       \par \nobreak}
     \else\raggedright
         \ifnum \c@secnumdepth >\m@ne
           \setbox\@tempboxa\hbox{\c@font\thechapter.\ %
           \c@font
           \if@upper
             \uppercase{#1}
           \else 
              #1% 
           \fi}
         \ifdim \wd\@tempboxa >\hsize
           \@hangfrom{%
             \c@font\thechapter.\ }{\c@font
           \if@upper
              \uppercase{#1}
           \else 
              #1%
           \fi
           \par\nobreak}
         \else 
           \hbox to\hsize{\box\@tempboxa\hfil} 
         \fi
       \fi
     \fi
  \else
    \if@center 
       \centering 
     \else 
       \raggedright 
     \fi
     \ifnum \c@secnumdepth >\m@ne 
       \if@mainmatter
          {\s@font \@chapapp{} \thechapter}
          \par \vskip 15\p@ 
       \fi 
     \fi 
     {\c@font  
     \if@upper
        \uppercase{#1} 
     \else 
       #1% 
     \fi
     \par \nobreak}
  \fi
  \vspace{\afterchaptervspace}
  \if@thema
    \ifx\@shortauthor\@empty
    \else
      \@mkboth{\@shortauthor}{#1}
    \fi
    \ifx\@chapterauthor\@empty
    \else
       \@makechapterauthor
    \fi
  \fi}
}
%    \end{macrocode}
%
%     Definitionen der Sternform.
%
%    \begin{macrocode}
\def\@schapter#1{%
    \if@twocolumn
       \@topnewpage[\@makeschapterhead{#1}]
    \else 
       \@makeschapterhead{#1}\@afterheading
    \fi}
\def\@makeschapterhead#1{%
   \vspace*{\beforechaptervspace}{%
     \if@center
        \centering
     \else
        \parindent\z@\raggedright 
     \fi
     {\c@font
     \if@upper
       \uppercase\expandafter{#1} 
     \else 
        #1% 
     \fi
     \par\nobreak
     \vskip 30\p@}
     \if@thema
       \ifx\@shortauthor\@empty
       \else
          \@mkboth{\@shortauthor}{#1}
       \fi
       \ifx\@chapterauthor\@empty
       \else
          \@makechapterauthor
       \fi\fi
     }}
%    \end{macrocode}
%
%    Die folgenden Kommandos definieren \"Uberschriften auf tieferer
%    Gliederungsebene. Gegen\"uber den Standardklassen wurde jeweils die
%    M\"oglichkeit zentrierter \"Uberschriften eingef\"uhrt, und es wurden
%    die Schriftarten ver\"andert.
%
%    \begin{macrocode}
\newcommand\section{\@startsection {section}{1}{\z@}%
                                   {-3.5ex \@plus -1ex \@minus -.2ex}%
                                   {2.3ex \@plus.2ex}%
                                   {\if@center\centering\else\raggedright\fi 
                                    \reset@font\s@font}}
\newcommand\subsection{\@startsection{subsection}{2}{\z@}%
                                     {-3.25ex\@plus -1ex \@minus -.2ex}%
                                     {1.5ex \@plus .2ex}%
                                     {\if@center\centering\else\raggedright\fi 
                                      \reset@font\ss@font}}
\newcommand\subsubsection{\@startsection{subsubsection}{3}{\z@}%
                                     {-3.25ex\@plus -1ex \@minus -.2ex}%
                                     {1.5ex \@plus .2ex}%
                                     {\if@center\centering\else\raggedright\fi 
                                      \reset@font\sss@font}}
\newcommand\paragraph{\@startsection{paragraph}{4}{\z@}%
                                    {3.25ex \@plus1ex \@minus.2ex}%
                                    {-1em}%
                                    {\reset@font\pg@font}}
\newcommand\subparagraph{\@startsection{subparagraph}{5}{\parindent}%
                                       {3.25ex \@plus1ex \@minus .2ex}%
                                       {-1em}%
                                      {\reset@font\spg@font}}
%    \end{macrocode}
%
%    Es folgt die Definition verschiedener Listenumgebungen. Zun\"achst
%    werden eine Reihe globaler Definitionen und Einstellungen
%    \"ubernommen. 
% 
%    \begin{macrocode}
\if@twocolumn
  \setlength\leftmargini  {2em}
\else
  \setlength\leftmargini  {2.5em}
\fi
\setlength\leftmarginii  {2.2em}
\setlength\leftmarginiii {1.87em}
\setlength\leftmarginiv  {1.7em}
\if@twocolumn
  \setlength\leftmarginv  {.5em}
  \setlength\leftmarginvi {.5em}
\else
  \setlength\leftmarginv  {1em}
  \setlength\leftmarginvi {1em}
\fi
\setlength\leftmargin    {\leftmargini}
\setlength  \labelsep  {.5em}
\setlength  \labelwidth{\leftmargini}
\addtolength\labelwidth{-\labelsep}
\@beginparpenalty -\@lowpenalty
\@endparpenalty   -\@lowpenalty
\@itempenalty     -\@lowpenalty
%    \end{macrocode}
%
%    Definitionen der Listenumgebungen. Zun\"achst die Voreinstellungen
%    f\"ur die Umgebung |enumerate| f\"ur Standard bzw. dekadische
%    Numerierung. 
%
%    \begin{macrocode}
\if@enumeration
  \renewcommand\theenumi{\arabic{enumi}}
  \renewcommand\theenumii{\alph{enumii}}
  \renewcommand\theenumiii{\roman{enumiii}}
  \renewcommand\theenumiv{\Alph{enumiv}}
  \newcommand\labelenumi{\theenumi.}
  \newcommand\labelenumii{(\theenumii)}
  \newcommand\labelenumiii{\theenumiii.}
  \newcommand\labelenumiv{\theenumiv.}
  \renewcommand\p@enumii{\theenumi}
  \renewcommand\p@enumiii{\theenumi(\theenumii)}
  \renewcommand\p@enumiv{\p@enumiii\theenumiii}
\else
  \renewcommand\theenumi{\arabic{enumi}}
  \renewcommand\theenumii{\arabic{enumii}}
  \renewcommand\theenumiii{\arabic{enumiii}}
  \renewcommand\theenumiv{\arabic{enumiv}}
  \newcommand\labelenumi{\theenumi.}
  \newcommand\labelenumii{\theenumi.\theenumii.}
  \newcommand\labelenumiii{\theenumi.\theenumii.\theenumiii.}
  \newcommand\labelenumiv{\theenumi.\theenumii.\theenumiii.\theenumiv.}
  \renewcommand\p@enumii{\theenumi}
  \renewcommand\p@enumiii{\theenumi(\theenumii)}
  \renewcommand\p@enumiv{\p@enumiii\theenumiii}
\fi
%    \end{macrocode}
%
%    Definition \texttt{itemize} der Item-Markierungen. Entweder
%    \"ubliche Staffelung der Markierungen oder keine Hervorhebung der
%    "`items"'. 
%
%    \begin{macrocode}
\if@itemization
  \newcommand\labelitemi{$\m@th\bullet$}
  \newcommand\labelitemii{\normalfont\bfseries --}
  \newcommand\labelitemiii{$\m@th\ast$}
  \newcommand\labelitemiv{$\m@th\cdot$}
\else
  \newcommand\labelitemi{\bfseries --}
  \newcommand\labelitemii{\bfseries --}
  \newcommand\labelitemiii{\bfseries --}
  \newcommand\labelitemiv{\bfseries --}
\fi
%    \end{macrocode}
%
%    Die Labels der \texttt{description} Umgebung werden in der
%    Schriftart |\item@font| gesetzt. 
%
%    \begin{macrocode}
\newenvironment{description}
               {\list{}{\labelwidth\z@ \itemindent-\leftmargin
                        \let\makelabel\descriptionlabel}}
               {\endlist}
\newcommand\descriptionlabel[1]{\hspace\labelsep
                                \item@font #1}
%    \end{macrocode}
%
%    Unver\"anderte Definition der \texttt{verse} Umgebung.
%
%    \begin{macrocode}
\newenvironment{verse}
               {\let\\=\@centercr
                \list{}{\itemsep      \z@
                        \itemindent   -1.5em%
                        \listparindent\itemindent
                        \rightmargin  \leftmargin
                        \advance\leftmargin 1.5em}%
                \item[]}
               {\endlist}
%    \end{macrocode}
%
%     Unver\"anderte Definition der \texttt{quotation} Umgebung.
%
%    \begin{macrocode}
\newenvironment{quotation}
               {\list{}{\listparindent 1.5em%
                        \itemindent    \listparindent
                        \rightmargin   \leftmargin
                        \parsep        \z@ \@plus\p@}%
                \item[]}
               {\endlist}
%    \end{macrocode}
%
%     Unver\"anderte Definitionen der \texttt{quote} Umgebung.
%
%    \begin{macrocode}
\newenvironment{quote}
               {\list{}{\rightmargin\leftmargin}%
                \item[]}
               {\endlist}
%    \end{macrocode}
%
%    Die Bezeichnung einer \texttt{theorem} Umgebung wird in der
%    Schriftart |\thh@font| gesetzt, der Text selbst in
%    |\thb@font|. 
%
%    \begin{macrocode}
\def\@begintheorem#1#2{\reset@font\thb@font\trivlist
      \item[\hskip \labelsep{\reset@font\thh@font #1\ #2:}]}
\def\@opargbegintheorem#1#2#3{\reset@font\thb@font\trivlist
      \item[\hskip \labelsep{\reset@font\thh@font #1\ #2\ (#3):}]}
\def\@endtheorem{\endtrivlist}
%    \end{macrocode}
%
%    Die Umgebung zur Beschreibung von Beispielen.
%
%    \begin{macrocode}
\newlength{\exampleindent}    \setlength{\exampleindent}{\parindent}
\newenvironment{example}%
   {\begin{list}{}{%
    \setlength{\leftmargin}{\exampleindent}}
    \ex@font \item[]}
   {\end{list}}
%    \end{macrocode}
%
%    Die \texttt{describe}-Umgebung. Das \"ubergebene Argument
%    dient zur Berechnung des breitesten Labels. 
%
%    \begin{macrocode}
\newenvironment{describe}[1][\quad]%
  {\begin{list}{}{%
    \renewcommand{\makelabel}[1]{{\item@font ##1}\hfil}%
    \settowidth{\labelwidth}{{\item@font #1}}%
    \setlength{\leftmargin}{\labelwidth}%
    \addtolength{\leftmargin}{\labelsep}}}%
  {\end{list}}
%    \end{macrocode}
%
%    Umgebung zur Erzeugung der Titelseite.
%
%    \begin{macrocode}
\newenvironment{titlepage}
    {%
      \cleardoublepage
      \if@twocolumn
        \@restonecoltrue\onecolumn
      \else
        \@restonecolfalse\newpage
      \fi
      \thispagestyle{empty}%
      \if@compatibility
        \setcounter{page}{0}
      \fi}%
    {\if@restonecol\twocolumn \else \newpage \fi
    }
%    \end{macrocode}
%
%    Ist |\@chapapp| nicht initialisiert (Voreinstellung), wird
%    der Anhang durch einen Teil abgesetzt.  
% 
%    Das Kommando \verb|\addtocontentsline| wird durch die Definition 
%    \verb|\@addappendixtocontents| ersetzt, soda\ss{} ein Anhang auch als
%    \verb|\include|-Datei eingelesen werden kann (Dank an Uwe Schellhorn).
%        
%    \begin{macrocode}
\newcommand\appendix{\par
  \setcounter{chapter}{0}%
  \setcounter{section}{0}%
  \ifx\@chapapp\@empty
    \def\@addappendixtocontents{\addcontentsline{toc}{part}{\appendixname}}
    \part*{\appendixname\@mkboth{\appendixname}{\appendixname}%%
           \@addappendixtocontents}
  \else
    \renewcommand{\@chapapp}{\appendixname}%
  \fi
  \renewcommand{\thechapter}{\Alph{chapter}}}
%    \end{macrocode}
%
%    Unver\"anderte Voreinstellungen der \texttt{array} Umgebung.
%
%    \begin{macrocode}
\setlength\arraycolsep{5\p@}
\setlength\tabcolsep{6\p@}
\setlength\arrayrulewidth{.4\p@}
\setlength\doublerulesep{2\p@}
\setlength\tabbingsep{\labelsep}
%    \end{macrocode}
%
%    Unver\"anderte Voreinstellungen der \texttt{minipage} Umgebung.
%
%    \begin{macrocode}
\skip\@mpfootins = \skip\footins
%    \end{macrocode}
%
%    Unver\"anderte Voreinstellungen der \texttt{fbox}.
%
%    \begin{macrocode}
\setlength\fboxsep{3\p@}
\setlength\fboxrule{.4\p@}
%    \end{macrocode}
%
%    Z\"ahler zur Erzeugung von Gleichungsnummern wird nach jedem
%    Kapitel zur\"uckgesetzt.
%
%    \begin{macrocode}
\@addtoreset{equation}{chapter}
\renewcommand{\theequation}{\thechapter.\arabic{equation}}
%    \end{macrocode}
%
%    Die Definition einiger Kommandos zur Erzeugung von Randnotizen in
%    Anlehnung an H. Partls |\refman.sty|. Im Unterschied zur
%    dortigen Definition erscheinen die Notizen nicht nur am linken
%    Seitenrand. 
%
%    \begin{macrocode}
\def\marginlabel#1{\marginpar%
   {\if@twoside 
       \ifodd\c@page 
          \raggedright 
       \else 
          \raggedleft 
       \fi
     \else 
        \raggedright 
     \fi #1}}
\def\attention{\mbox{}%
    \marginpar[\raggedleft\large\bf! $\rightarrow$]%
        {\raggedright\large\bf $\leftarrow$ !}}
\def\seealso#1{\mbox{}%
    \marginpar[\raggedleft$\rightarrow$ \small #1]%
        {\raggedright\small  #1 $\leftarrow$}\ignorespaces}
%    \end{macrocode}
%
%     Definition des Abbildungsz\"ahlers.
%
%    \begin{macrocode}
\newcounter{figure}[chapter]
\renewcommand{\thefigure}{\thechapter.\@arabic\c@figure}
%    \end{macrocode}
%
%     Voreinstellungen der \texttt{figure}  Umgebung. Im Makro
%     |\fnum@figure| wird der Kurzname benutzt. Die "`Floats"'
%     werden in der voreingestellten Schrift |\fig@font| gesetzt.
%
%    \begin{macrocode}
\def\fps@figure{tbp}
\def\ftype@figure{1}
\def\ext@figure{lof}
\def\fnum@figure{\figureshortname~\thefigure}
\newenvironment{figure}
               {\fig@font\@float{figure}}
               {\end@float}
\newenvironment{figure*}
               {\fig@font\@dblfloat{figure}}
               {\end@dblfloat}
%    \end{macrocode}
%
% Definition des Tabellenz\"ahlers.
%
%    \begin{macrocode}
\newcounter{table}[chapter]
\renewcommand{\thetable}{\thechapter.\@arabic\c@table}
%    \end{macrocode}
%
%     Voreinstellungen der \texttt{table}  Umgebung. Im Makro
%     |\fnum@table| wird der Kurzname benutzt. Die "`Floats"'
%     werden in der voreingestellten Schrift |\tab@font| gesetzt.
%
%    \begin{macrocode}
\def\fps@table{tbp}
\def\ftype@table{2}
\def\ext@table{lot}
\def\fnum@table{\tableshortname~\thetable}
\newenvironment{table}
               {\tab@font\@float{table}}
               {\end@float}
\newenvironment{table*}
               {\tab@font\@dblfloat{table}}
               {\end@dblfloat}
%    \end{macrocode}
%
%    Unver\"anderte Abst\"ande.
%
%    \begin{macrocode}
\newlength\abovecaptionskip
\newlength\belowcaptionskip
\setlength\abovecaptionskip{10\p@}
\setlength\belowcaptionskip{0\p@}
%    \end{macrocode}
%
%    Lange Figuren oder Tabellenbeschriftungen werden um Bezeichnung
%    und Nummer einger\"uckt. Beschriftungen werden in den Fonts
%    |cph@font| und |\cpb@font| gesetzt.
%
%    \begin{macrocode}
\long\def\@makecaption#1#2{%
 \vskip\abovecaptionskip
 \setbox\@tempboxa\hbox{{\cph@font #1:} {\cpb@font #2}}%
 \ifdim \wd\@tempboxa >\hsize 
    \@hangfrom{\cph@font #1: }{\cpb@font #2\par}%
 \else 
    \hbox to\hsize{\hfil\box\@tempboxa\hfil}%
 \fi
 \vskip\belowcaptionskip}
%    \end{macrocode}
%
%    Einfache St\"utze zur Tabellenkonstruktion.
%
%    \begin{macrocode}
\def\rb#1{\raisebox{1.5ex}[-1.5ex]{#1}}
%    \end{macrocode}
%
%    Einfache horizontale Linien in Tabellen. Die Definition der
%    Makros entspricht der Konstruktion von |\hline|.
%    Das von den Befehlen aufgerufene Makro
%    |\@xhline| f\"ugt einen zus\"atzlichen Vorschub ein, falls der
%    Befehl wiederholt gegeben wird.  
%
%    \begin{macrocode}
\def\tablerule{\noalign{\ifnum0=`}\fi
   \hrule \@height \arrayrulewidth \vskip\doublerulesep
   \futurelet \@tempa\@xhline}
\def\thicktablerule{\noalign{\ifnum0=`}\fi
   \hrule \@height 2\arrayrulewidth \vskip\doublerulesep
   \futurelet \@tempa\@xhline}
\def\doubletablerule{\noalign{\ifnum0=`}\fi
   \hrule \@height \arrayrulewidth \vskip2\arrayrulewidth
   \hrule \@height \arrayrulewidth \vskip\doublerulesep
   \futurelet \@tempa\@xhline}
%    \end{macrocode}
%
%    Definition st\"arkerer und doppelter |\hline| Varianten.
%
%    \begin{macrocode}
\def\thickhline{\noalign{\ifnum0=`}\fi
   \hrule \@height 2\arrayrulewidth\futurelet \@tempa\@xhline}
\def\doublehline{\noalign{\ifnum0=`}\fi
   \hrule \@height \arrayrulewidth\vskip2\arrayrulewidth 
   \hrule \@height \arrayrulewidth \futurelet \@tempa\@xhline}
%    \end{macrocode}
%
%
%    Unver\"anderte Definition der \LaTeX{} 2.09 Schriftartenkommandos
%    und der Kommandos f\"ur mathematische Zeichens\"atze.
%
%    \begin{macrocode}
\DeclareOldFontCommand{\rm}{\normalfont\rmfamily}{\mathrm}
\DeclareOldFontCommand{\sf}{\normalfont\sffamily}{\mathsf}
\DeclareOldFontCommand{\tt}{\normalfont\ttfamily}{\mathtt}
\DeclareOldFontCommand{\bf}{\normalfont\bfseries}{\mathbf}
\DeclareOldFontCommand{\it}{\normalfont\itshape}{\mathit}
\DeclareOldFontCommand{\sl}{\normalfont\slshape}{\@nomath\sl}
\DeclareOldFontCommand{\sc}{\normalfont\scshape}{\@nomath\sc}
\DeclareRobustCommand*{\cal}{\@fontswitch{\relax}{\mathcal}}
\DeclareRobustCommand*{\mit}{\@fontswitch{\relax}{\mathnormal}}
%    \end{macrocode}
%
%    Definition von Abst\"anden und Gliederungstiefe f\"ur das
%    Inhaltsverzeichnis. 
%
%    \begin{macrocode}
\newcommand{\@pnumwidth}{1.55em}
\newcommand{\@tocrmarg} {2.55em}
\newcommand{\@dotsep}{4.5}
\setcounter{tocdepth}{2}
%    \end{macrocode}
%

%    Makro zur Erzeugung des Inhaltsverzeichnisses. 
%
%    \begin{macrocode}
\newcommand{\tableofcontents}{%
    \if@twocolumn
      \@restonecoltrue\onecolumn
    \else
      \@restonecolfalse
    \fi
    \chapter*{\contentsname
        \@mkboth{\contentsname}%
                {\contentsname}}%
    \@starttoc{toc}%
    \if@restonecol\twocolumn\fi
    }
%    \end{macrocode}
%
%    Nur die Teil\"uberschrift, nicht aber die Seitenzahl wird
%    im Inhaltsverzeichnis hervorgehoben. 
%
%    \begin{macrocode}
\newcommand*{\l@part}[2]{%
  \ifnum \c@tocdepth >-2\relax
    \addpenalty{-\@highpenalty}%
    \addvspace{2.25em \@plus\p@}%
    \begingroup
      \setlength\@tempdima{3em}%
      \parindent \z@ \rightskip \@pnumwidth
      \parfillskip -\@pnumwidth
      {\leavevmode
       {\sss@font #1}\hfil \hbox to\@pnumwidth{\hss #2}}\par
       \nobreak
         \global\@nobreaktrue
         \everypar{\global\@nobreakfalse\everypar{}}
    \endgroup
  \fi}
%    \end{macrocode}
%
%    Auch der Kapiteleintrag wird als |\dottedtocline| gesetzt. Die
%    Seitenzahl wird nicht hervorgehoben. 
%
%    \begin{macrocode}
\newcommand*{\l@chapter}[2]{%
  \ifnum \c@tocdepth >\m@ne
    \addpenalty{-\@highpenalty}%
    \vskip 1.0em \@plus\p@
    \setlength\@tempdima{1.5em}%
    \begingroup
      \parindent \z@ \rightskip \@pnumwidth
      \parfillskip -\@pnumwidth
      \leavevmode
      \advance\leftskip\@tempdima
      \hskip -\leftskip
      {\sss@font #1}%
      \nobreak\leaders\hbox{%
         $\m@th \mkern \@dotsep mu.\mkern \@dotsep mu$}
      \hfill\nobreak\hbox to\@pnumwidth{\hfil\textrm{#2}}\par 
      \penalty\@highpenalty
    \endgroup
  \fi}
%    \end{macrocode}
%
%    Unver\"anderte Definition der Untereintr\"age ins Inhaltsverzeichnis.
%
%    \begin{macrocode}
\newcommand*{\l@section}      {\@dottedtocline{1}{1.5em}{2.3em}}
\newcommand*{\l@subsection}   {\@dottedtocline{2}{3.8em}{3.2em}}
\newcommand*{\l@subsubsection}{\@dottedtocline{3}{7.0em}{4.1em}}
\newcommand*{\l@paragraph}    {\@dottedtocline{4}{10em}{5em}}
\newcommand*{\l@subparagraph} {\@dottedtocline{5}{12em}{6em}}
%    \end{macrocode}
%
%    Die Definitionen f\"ur das Abbildungs- und das Tabellenverzeichnis. 
%    Kopfzeilenmarkierungen werden nicht in Gro\ss{}buchstaben
%    umgewandelt.  
%
%    \begin{macrocode}
\newcommand{\listoffigures}{%
    \if@twocolumn
      \@restonecoltrue\onecolumn
    \else
      \@restonecolfalse
    \fi
    \chapter*{\listfigurename
      \@mkboth{\listfigurename}%
              {\listfigurename}}%
    \@starttoc{lof}%
    \if@restonecol\twocolumn\fi
    }
\newcommand*{\l@figure}{\@dottedtocline{1}{1.5em}{2.3em}}
\newcommand{\listoftables}{%
    \if@twocolumn
      \@restonecoltrue\onecolumn
    \else
      \@restonecolfalse
    \fi
    \chapter*{\listtablename
      \@mkboth{\listtablename}%
              {\listtablename}}%
    \@starttoc{lot}%
    \if@restonecol\twocolumn\fi
    }
\let\l@table\l@figure
%    \end{macrocode}
%
%    Die Definition des Literaturverzeichnisses. Die
%    Kopfzeilenmarkierung wird nicht in Gro\ss{}buchstaben
%    umgewandelt. Ist die Option \texttt{chapterbib}  gew\"ahlt, wird
%    das Literaturverzeichnis als |\section| gesetzt.
%
%    \begin{macrocode}
\newdimen\bibindent
\bibindent=1.5em
\newenvironment{thebibliography}[1]
     {\if@chapterbib
        \section*{\refname\@mkboth{\refname}{\refname}}% 
      \else
        \chapter*{\bibname\@mkboth{\bibname}{\bibname}}% 
      \fi
      \list{\@biblabel{\arabic{enumiv}}}%
           {\settowidth\labelwidth{\@biblabel{#1}}%
            \leftmargin\labelwidth
            \advance\leftmargin\labelsep
            \if@openbib
              \advance\leftmargin\bibindent
              \itemindent -\bibindent
              \listparindent \itemindent
              \parsep \z@
            \fi
            \usecounter{enumiv}%
            \let\p@enumiv\@empty
            \renewcommand\theenumiv{\arabic{enumiv}}}%
      \if@openbib
        \renewcommand\newblock{\par}
      \else
        \renewcommand\newblock{\hskip .11em \@plus.33em \@minus.07em}%
      \fi
      \sloppy\clubpenalty4000\widowpenalty4000%
      \sfcode`\.=\@m}
     {\def\@noitemerr
       {\@latex@warning{Empty `thebibliography' environment}}%
      \endlist}
\newcommand\newblock{}
%    \end{macrocode}
%
%    Die folgenden Makros werden nur bei Verwendung der Option
%    \texttt{chapterbib} aktiviert. Das Kommando |\thebibliograpy|
%    liest nicht mehr |\jobname.bbl|, sondern
%    |@\bblfile|. Das Makro |\@include| wird dahingehend
%    ge\"andert, da\ss{} |\@bblfile| auf den Namen der entsprechenden
%    Include Datei initialisiert. Die Makros stammen von Joachim
%    Schrodt \texttt{`bibperinclude.sty'} .
%   
%    \begin{macrocode}
\if@chapterbib
  \def\@mainbblfile{\jobname.bbl}
  \let\@bblfile=\@mainbblfile
  \def\bibliography#1{%
    \if@filesw\immediate\write\@auxout{\string\bibdata{#1}}\fi
    \@input{\@bblfile}}
  \def\@include#1 {\clearpage
    \if@filesw \immediate\write\@mainaux{\string\@input{#1.aux}}\fi
    \@tempswatrue
    \if@partsw \@tempswafalse\edef\@tempb{#1}
       \@for\@tempa:=\@partlist\do{\ifx\@tempa\@tempb\@tempswatrue\fi}
    \fi
    \if@tempswa 
       \if@filesw \let\@auxout=\@partaux 
           \immediate\openout\@partaux #1.aux
           \immediate\write\@partaux{\relax}
       \fi
       \def\@bblfile{#1.bbl}\@input{#1.tex}
       \let\@bblfile\@mainbblfile\clearpage
       \@writeckpt{#1}
       \if@filesw 
          \immediate\closeout\@partaux 
       \fi
       \let\@auxout=\@mainaux\else\@nameuse{cp@#1}
   \fi}
\fi
%    \end{macrocode}
%
%    Definition des Index. Die Kopfzeilenmarkierung wird nicht in
%    Gro\ss{}buchstaben umgewandelt. Der Seitenstil ist standardm\"a\ss{}ig
%    \texttt{empty}, da Kopfzeilen voreingestellt sind. Der Satz
%    erfolgt in der Schriftgr\"o\ss{}e |\indexsize|.
% 
%    \begin{macrocode}
\newenvironment{theindex}
               {\if@twocolumn
                  \@restonecolfalse
                \else
                  \@restonecoltrue
                \fi
                \columnseprule \z@
                \columnsep 35\p@
                \twocolumn[\@makeschapterhead{\indexname}]%
                \@mkboth{\indexname}%
                        {\indexname}%
                \thispagestyle{plain}\parindent\z@
                \parskip\z@ \@plus .3\p@\relax
                \let\item\@idxitem\index@size}
               {\if@restonecol\onecolumn\else\clearpage\fi}
\newcommand{\@idxitem}  {\par\hangindent 40\p@}
\newcommand{\subitem}   {\par\hangindent 40\p@ \hspace*{20\p@}}
\newcommand{\subsubitem}{\par\hangindent 40\p@ \hspace*{30\p@}}
\newcommand{\indexspace}{\par \vskip 10\p@ \@plus5\p@ \@minus3\p@\relax}
%    \end{macrocode}
%
%   Unver\"anderte Definition der |\footnoterule|.
%
%    \begin{macrocode}
\renewcommand\footnoterule{%
  \kern-3\p@
  \hrule width .4\columnwidth
  \kern 2.6\p@}
%    \end{macrocode}
%
%    Der Satz von Fu\ss{}notenabs\"atzen variiert in Abh\"angigkeit von der
%    Option \texttt{par}; ggf. werden Fu\ss{}noten ohne Einzug
%    geblockt. In jedem Fall wird nach dem Fu\ss{}notenzeichen ein
%    Zwischenraum von \texttt{.25em} eingef\"ugt.
%
%    \begin{macrocode}
\@addtoreset{footnote}{chapter}
\if@noind
  \long\def\@makefntext#1{%
        \leftskip 2.0em%
        \noindent
        \hbox to 0em{\hss\@makefnmark\kern 0.25em}#1}
\else
  \long\def\@makefntext#1{%
      \parindent 1em%
      \noindent
      \hbox to 1.8em{\hss\@makefnmark\kern 0.25em}#1}
\fi           
%    \end{macrocode}
%
%    Definition der "`Captions"'. Standardm\"a\ss{}ig werden Kurznamen f\"ur
%    Abbildungen und Tabellen benutzt, die im entsprechenden
%    |captions|\emph{language} Makro des \texttt{german.sty}
%    eingef\"ugt werden sollten. Die Definitionen der deutschen und
%    franz\"osischen Namen folgen im Anschlu\ss{} an die Liste als
%    Metakommentar.  
%
%    \begin{macrocode}
\def\contentsname{Contents}
\def\listfigurename{List of Figures}
\def\listtablename{List of Tables}
\def\bibname{Bibliography}
\def\refname{References}
\def\indexname{Index}
\def\figurename{Figure}
\def\tablename{Table}
\def\chaptername{Chapter}
\def\appendixname{Appendix}
\def\partname{Part}
\def\abstractname{Abstract}
\def\draftname{preliminary draft}
\def\figureshortname{Fig.}                      % <-- thesis
\def\tableshortname{Tab.}                       % <-- thesis
\def\prefacename{Preface}                       % <-- thesis
%    \end{macrocode}
%\iffalse
% in: \def\captionsenglish{% 
% \def\figureshortname{Fig.}%
% \def\tableshortname{Tab.}%
% \def\prefacename{Preface}}%
% \def\keywordname{Keywords}
% in: \def\captionsfrench{% 
% \def\prefacename{Pr\'eface}%
% \def\figureshortname{Fig.}%
% \def\tableshortname{Tab.}}%
% \def\keywordname{Motcl\'e}
% in: \def\captionsgerman{%  
% \def\figureshortname{Abb.}
% \def\tableshortname{Tab.}
% \def\keywordname{Deskriptoren}           
% \fi
%
%    Definition des Datums und verschiedene Initialisierungen. 
%    Im Unterschied zum Standardstil \texttt{article} ist die
%    Benutzung von Kopfzeilen voreingestellt.
%
%    \begin{macrocode}
\newcommand{\today}{\ifcase\month\or
  January\or February\or March\or April\or May\or June\or
  July\or August\or September\or October\or November\or December\fi
  \space\number\day, \number\year}
\setlength\columnsep{10\p@}
\setlength\columnseprule{0\p@}
\iffinal
  \pagestyle{headings}
\else
  \pagestyle{draft}
\fi
\pagenumbering{arabic}
\if@twoside
\else
  \raggedbottom
\fi
\if@twocolumn
  \twocolumn
  \sloppy
  \flushbottom
\else
  \onecolumn
\fi
%    \end{macrocode}
%    \begin{macrocode}
%</thesis>
%    \end{macrocode}
%    \section{Treiber-Datei}
%
%    Der letzte Abschnitt enth\"alt die Treiberdatei zur Erstellung der
%    Dokumentation.
%    \begin{macrocode}
%<*driver>
\typeout{*******************************************************}
\typeout{* Documentation for LaTeX styles `thesis' & `thema'   *}
\typeout{*******************************************************}

\documentclass[11pt]{ltxdoc}
\usepackage{german}

\makeatletter
\newif\ifsolodoc
 \@ifundefined{solo}{\solodoctrue}{\solodocfalse}
\IndexPrologue{\section*{Index}%
               \markboth{Index}{Index}%
               Die kursiv gesetzten Seitenzahlen
               verweisen auf Beschreibungen der Makros,
               unterstrichene Programmzeilennummern
               auf deren Definitionen.}
\GlossaryPrologue{\section*{Neuerungen}%
                 \markboth{Neuerungen}{Neuerungen}}
\def\saved@macroname{Neuerung}
\renewenvironment{theglossary}{%
    \glossary@prologue%
    \GlossaryParms \let\item\@idxitem \ignorespaces}%
   {}
\makeatother
\setcounter{StandardModuleDepth}{1}
%   \OnlyDescription
%   \CodelineIndex
\CodelineNumbered 
\RecordChanges
\setlength{\parindent}{0pt}
\begin{document}
\DocInput{thesis.dtx} \newpage \PrintChanges % \newpage \PrintIndex
\end{document}
\endinput
%</driver>
%    \end{macrocode}
%% \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         \~}
%%
% \Finale
% \endinput
# Local Variables:
# mode: latex
# TeX-master: "thesis.drv" 
# End: