% \section{A \LaTeX\ Style File for Thesis Formatting at UIC}%% This is the thesis style file to be used with \LaTeX .% To use it please enter the line \documentstyle{uicthesis}.% This file an adoptation of the Report Document style for% \LaTeX\ version 2.09 Copyright (C) 1988 by Leslie Lamport and% for use with the new Font Selection Scheme that accompanied \TeX\% version 3.1 at UIC.%% First Edition:% Paul Davis, UIC Computer Center, 31 December 1991.%% Changes to this file:%  (should be described here)%  (remember to update the filedate and fileversion as needed.)%% Changed Acknowledgment to allow plurals and changed Cited Literature%   to avoid Appendix continued page headers.% Paul Davis, UIC Computer Center, 27 February 1992.%% Changed xnumberline to allow section,subsection,etc. headings to%   line up.% Paul Davis, UIC Computer Center, 3 March 1992.%% First, let us announce ourselves.%    \begin{macrocode}\def\filedate{27 Feb 92}\def\fileversion{v1.0b}\typeout{Document Style `UICTHESI' for Thesis Formatting at UIC\fileversion  <\filedate > (phd)}%    \end{macrocode}%% \section{Definitions}% The next line defines a flag to detect% when we started the body, the chapter macro (numbered) checks this flag.% If it was false it changes to arabic pagenumbering and sets it to one.% If it is already true it does not do anything.%    \begin{macrocode}\newif\if@startedbodyyet\@startedbodyyetfalse\newif\if@startedappendices\@startedappendicesfalse\newif\if@multappendices\@multappendicesfalse\newif\if@isatable\@isatablefalse\newif\if@nowarning       % New if to test if we need to issue a\@nowarningtrue           % warning during footnote placement.\newif\if@bibforma\@bibformafalse\newcount\c@fnref \def\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}%    \end{macrocode}%% \section{Page Layout}% \subsection{Page Definition}% Now, lets do the page settings.% Margins are 1.25 inch on the left side and 1 inch on the right.%    \begin{macrocode}\oddsidemargin=0.25in\evensidemargin=0.25in\textwidth=6.25in\def\innerheadskip{12pt}\headheight=32pt\headsep=30pt                  % area between the heading and the text\footskip=20pt\textheight=9in                % height of the physical page\advance \textheight by -\headheight\advance \textheight by -\headsep\advance \textheight by -\footskip\mark{{}{}}                    % Initializes TeX's marks\@twosidefalse                 % Default is one-sided printing.\pagestyle{pageonbottom}\pagenumbering{roman}%    \end{macrocode}%% The pagenumbering is set to roman because that is what the preliminary% pages should be numbered with.%    \begin{macrocode}\@afterindenttrue\looseness=1\clubpenalty=10000\widowpenalty=10000\displaywidowpenalty=10000\raggedbottom%    \end{macrocode}%% \subsection{Line Spacing}% Set up double spacing%    \begin{macrocode}\def\baselinestretch{2}%    \end{macrocode}%% New command \verb+\setstretch+ (slightly more mnemonic...% and easier to type)%    \begin{macrocode}\def\setstretch#1{\renewcommand{\baselinestretch}{#1}}%    \end{macrocode}%% A single spaced quote (say) is done by surrounding singlespace with quote.%    \begin{macrocode}\def\singlespace{   \vskip\parskip\vskip\baselineskip   \def\baselinestretch{1}   \setnew@baselineskip   \baselineskip\baselinestretch\baselineskip   \setbox\strutbox\hbox{      \vrule\@height.7\baselineskip\@depth.3\baselineskip \@width\z@}   \normalbaselineskip\baselineskip   \glb@settings \the\every@size   \aftergroup\glb@settings   \vskip-\parskip   \vskip-\baselineskip} \def\endsinglespace{\par}%    \end{macrocode}%%  Spacing, doublespace and onehalfspace all are meant to INCREASE the%  spacing (i.e. calling onehalfspace from within doublespace will not%  produce a graceful transition between spacings)%    \begin{macrocode}\def\spacing#1{   \par   \def\baselinestretch{#1}   \setnew@baselineskip   \baselineskip\baselinestretch\baselineskip   \setbox\strutbox\hbox{      \vrule\@height.7\baselineskip\@depth.3\baselineskip \@width\z@}   \normalbaselineskip\baselineskip   \glb@settings \the\every@size   \aftergroup\glb@settings   \vskip-\parskip   \vskip-\baselineskip} \def\endspacing{   \par   \vskip \parskip   \vskip \baselineskip   \endgroup   \vskip -\parskip   \vskip -\baselineskip   \begingroup} \def\onehalfspace{\spacing{1.5}}\let\endonehalfspace=\endspacing \def\doublespace{\spacing{2}}\let\doublespace=\endspacing%    \end{macrocode}%% Fix up spacing before and after displayed math% (arraystretch seems to do a fine job for inside LaTeX displayed math,% since array and eqnarray seem to be affected as expected)% Changing \baselinestretch and doing a font change also works if done here,% but then you have to change @setsize to remove the call to @nomath)%    \begin{macrocode}\everydisplay{   \abovedisplayskip \baselinestretch\abovedisplayskip   \belowdisplayskip \abovedisplayskip   \abovedisplayshortskip \baselinestretch\abovedisplayshortskip   \belowdisplayshortskip \baselinestretch\belowdisplayshortskip}%    \end{macrocode}%% \subsection{Running Titles}% \subsubsection{Page Numbering at Top}% In this section we will redefine the running title, so that only the% page number is printed. This can be achieved with a pagestyle which% only prints the page at the top (like plain prints at the bottom).%    \begin{macrocode}\def\ps@pageontop{   \def\@oddhead{\rm\hfil\thepage}   \let\@evenhead\@oddhead   \def\@oddfoot{}   \let\@evenfoot\@oddfoot}%    \end{macrocode}%% \subsubsection{Page Numbering at Bottom}%    \begin{macrocode}\def\ps@pageonbottom{   \def\@oddhead{}   \def\@evenhead{}   \def\@oddfoot{\rm\hfil\thepage\hfil}   \let\@evenfoot\@oddfoot}%    \end{macrocode}%% \subsubsection{Front Matter Continuation Headings}% This is the page style needed to print the headers in subsequent pages% of the front matter pages other than the table of contents and the% lists of figures and tables.% The line that has a \verb+\vbox to 24pt{}+% was set to use the \verb+\baselineskip+ but the baselineskip is set% to zero and therefore cannot be used.%    \begin{macrocode}\def\ps@continued{   \def\@oddhead{\headmark}   \let\@evenhead\@oddhead   \def\@oddfoot{\rm\normalsize\hfil\thepage\hfil}   \let\@evenfoot\oddfoot}%    \end{macrocode}%% \subsubsection{Appendix Continuation Headings}% This is the page style needed to print the headers in subsequent pages% of the appendix.%    \begin{macrocode}\def\ps@appendixcontinued{   \def\@oddhead{\headmark}   \let\@evenhead\@oddhead   \def\@oddfoot{}   \let\@evenfoot\oddfoot}%    \end{macrocode}%% \subsection{Fonts}% \subsubsection{Default Font Size}% The type size option is handled by reading uicth11.sty.% There is no alternates to the default 11 point style.%    \begin{macrocode}\@options\input uicth11.sty\relax%    \end{macrocode}%% \subsubsection{Generic Bold Definition}% This defines a generic bold default series to be used in the definition for% chapter for example. This definition will cause an emphasized word% in the title section to be printed in slanted bold instead of roman bold.% Only works with the new font definition scheme!%    \begin{macrocode}\def\transparentbold{\def\default@series{bx}\bf}%    \end{macrocode}%% \subsubsection{Underlining}% Hey, it works!%    \begin{macrocode}\newbox\ustrutbox \setbox\ustrutbox=\hbox{\vrule height8.5pt depth3.2pt width0pt} \def\ustrut{\relax\ifmmode\copy\ustrutbox\else\unhcopy\ustrutbox\fi} \def\underl#1 {\leavevmode\let\first=\relax\underli #1 }\def\underli#1 {\ifx&#1\let\next=\relax\unskip  \else\let\next=\underli\first\ulinebox{#1}\fi\let\first=\undersp\next}\def\undersp{\penalty50\ulinebox{\space}\penalty50}\def\ulinebox#1{\vtop{\hbox{\ustrut#1}\hrule}}%    \end{macrocode}%% \section{Title Page}%% In this section we will define the  title page. The only macros that% were added are the \verb+\degree+ macro that will be used to print the% degree that the student is pursuing and the\verb+\pdegrees+ macro that% will be used to print the prior degrees earned by the author.% \verb+\date+ is redefined so that it only prints the year.% The title is forced to uppercase.%    \begin{macrocode}\def\title#1{\gdef\@title{\expandafter\uppercase{#1}}}\def\author#1{   \gdef\@author{#1}   \gdef\@upauthor{\expandafter\uppercase{#1}}} \def\@date{\the\year}\def\degree#1{\def\@degree{#1}}\def\pdegrees#1{\def\@pdegrees{#1}} \def\titlepage{   \newpage   \c@page\z@} \def\endtitlepage{\newpage} \def\maketitle{%   \begin{titlepage}      \centering      \thispagestyle{empty}      \c@page=2      \vbox to 0pt{%         \begin{center}            \large\transparentbold\@title         \end{center}\vss}      \vfill      \begin{singlespace}         BY         \vskip\baselineskip         \begin{tabular}{c}            \@upauthor\\\@pdegrees         \end{tabular}         \vfill         \vbox to 0pt{\vss            \begin{center}               THESIS               \vskip \baselineskip               Submitted in partial fulfillment of the requirements\\               for the degree of \@degree\\               in the Graduate College of the\\               University of Illinois at Chicago, \@date               \vskip 3\baselineskip               Chicago, Illinois            \end{center}}      \end{singlespace}   \end{titlepage}}%    \end{macrocode}%% \section{Chapters and Sections}% By default, \LaTeX\ will only number thru the Subsections.% Paragraphs and subparagraphs are not numbered so we will change% the value of secnumdepth to a high number like 10 (5 will do).%    \begin{macrocode}\c@secnumdepth=10  % or  \setcounter{secnumdepth}{10} \def\@sect#1#2#3#4#5#6[#7]#8{   \ifnum #2>\c@secnumdepth      \def\@svsec{}   \else      \refstepcounter{#1}      \edef\@svsec{\csname the#1\endcsname\hskip 1em }   \fi   \@tempskipa #5\relax   \ifdim \@tempskipa>\z@      \begingroup         #6\relax         \@hangfrom{\hskip #3\relax\@svsec}         {\interlinepenalty \@M \underl #8 & }%      \endgroup      \csname #1mark\endcsname{#7}      \if@startedappendices      \else         \addcontentsline            {toc}            {#1}            {\ifnum #2>\c@secnumdepth            \else               \protect\numberline{\csname the#1\endcsname}            \fi         #7}      \fi   \else      \def\@svsechd{#6\hskip #3\@svsec #8\csname #1mark\endcsname          {#7}      \if@startedappendices      \else         \addcontentsline            {toc}            {#1}            {\ifnum #2>\c@secnumdepth            \else               \protect\numberline{\csname the#1\endcsname}            \fi            #7}}         \fi      \fi   \@xsect{#5}}%    \end{macrocode}%% \subsection{Chapter}% This changes the way chapter headings are printed. The size was reduced% and it is centered instead of left justified.% \verb+\@makechapterhead+ is used by \verb+\chapter+ and% \verb+\@makeschapterhead+ is used by \verb+\chapter*+.% The \verb+\chapter+ macro calls the \verb+\@chapter+ if \verb+\chapter+% was used and calls the \verb+\@schapter+ if \verb+\chapter*+ was used.%    \begin{macrocode}\newcounter{chapter}                % The counter\def\thechapter{\arabic{chapter}}   % Printed representation of counter. \def\chapter{   \clearpage              % Starts new page.   \if@startedappendices       \pagestyle{appendixcontinued}       \if@multappendices          \def\headmark{\vbox{                {\hbox to \textwidth{\rm\normalsize\hfil\thepage}}                \vspace{\innerheadskip}                {\hbox to \textwidth                   {\hfil{\bf\large Appendix                       \thechapter{} (Continued)}\hfil}}}}       \else          \def\headmark{\vbox{                {\hbox to \textwidth{\rm\normalsize\hfil\thepage}}                \vspace{\innerheadskip}                {\hbox to \textwidth                   {\hfil{\bf\large APPENDIX (Continued)}\hfil}}}}       \fi       \thispagestyle{pageontop}   \else       \thispagestyle{pageonbottom}                           % Page number of chapter page is on bottom                           % except for appendix chapters, where it                           % appears on top.   \fi   \global\@topnum\z@      % Prevents figures from going at top of page.   \setcounter{equation}{0}   \secdef\@chapter\@schapter} \def\@schapter#1{   \typeout{Unnumbered Chapter.}   \@makeschapterhead{#1}   \@afterheading} \def\@chapter[#1]#2{   \ifnum \c@secnumdepth > \m@ne       \refstepcounter{chapter}       \typeout{\@chapapp\space\thechapter.} % Msg to term   \fi   \if@startedappendices      \if@multappendices\addcontentsline{toc}{chapter}%{\protect\xnumberline{\ }\ \ \ \ \ Appendix \thechapter}      \else\addtocontents{toc}{\protect\addvspace{\baselineskip}}\addcontentsline{toc}{chapter}%{\protect\xnumberline{\ }APPENDIX }      \fi   \else\addtocontents{toc}{\protect\addvspace{\baselineskip}}\addcontentsline{toc}{chapter}%{\protect\xnumberline{\thechapter\hskip 2em}\uppercase{#1}}   \fi   \if@startedbodyyet         % Then do nothing   \else       \pagestyle{pageontop}       \pagenumbering{arabic}       \@startedbodyyettrue   \fi   \@makechapterhead{#2}   \@afterheading}%    \end{macrocode}%% The section of the code for \verb+\@chapter+ between% \verb+\if@startedbodyyet+ and \verb+\fi+ was added so that when we call% \verb+\chapter+ for the first time in the body of the macro, the% page number will be reset to one and to roman.% The \verb+\numberline+ command takes as an argument the section number% and we need to change it. As defined in the% \verb+report.sty+ is set so that the section numbers align to the left% instead of the right.%    \begin{macrocode}\def\chaptermark#1{} %    \end{macrocode}%% \subsubsection{Make Chapter Heading}% \paragraph{Numbered Chapter Heading}%    \begin{macrocode}\def\@makechapterhead#1{    {\parindent 0pt \centering     \ifnum \c@secnumdepth > \m@ne     % If > -1 then write it       \if@startedappendices          \if@multappendices             \large\transparentbold \@chapapp{} \thechapter\par          \else             \large\transparentbold APPENDIX\par          \fi       \else          \large\transparentbold \@chapapp{} \thechapter\par       \fi       \vspace{20pt}     \fi       \large\transparentbold\uppercase{#1}\par       \nobreak       \vspace{20pt}}}%    \end{macrocode}%% \paragraph{Unnumbered Chapter Heading}%    \begin{macrocode}\def\@makeschapterhead#1{    {\parindent 0pt \centering      \large\transparentbold\uppercase{#1}\par      \nobreak      \vspace{20pt}}}%    \end{macrocode}%% \subsubsection{Appendix Chapters}% \verb+\@chapapp+ is initially defined to be ``CHAPTER''.% The \verb+\appendix+ command redefines it to be ``Appendix''.%    \begin{macrocode}\def\@chapapp{CHAPTER} \def\appendix{\par  \@startedappendicestrue  \setcounter{chapter}{0}  \setcounter{section}{0}  \def\@chapapp{Appendix}  \def\thechapter{\Alph{chapter}}}%    \end{macrocode}%% If there are multiple appendix chapters, they are to be preceeded by% a page with the word ``APPENDICES'' centered horizontally% and vertically.%    \begin{macrocode}\def\appendices{   \clearpage   \thispagestyle{pageonbottom}   \vspace*{3in}   \begin{center}   {\bf APPENDICES}   \end{center}   \@multappendicestrue   \addtocontents{toc}{\protect\addvspace{\baselineskip}}   \addcontentsline{toc}{chapter}      {\protect\xnumberline{\ }APPENDICES}   \vfill\eject}%    \end{macrocode}%% \subsubsection{Table of Contents entry for Chapter}% The entry in the table of contents does not include a dotted line.% This is a change to remedy that.%    \begin{macrocode}%\def\numberline#1{\hbox{#1\ }}\def\numberline#1{\hbox to 0.75in{#1\hss\ }}\def\xnumberline#1{\hbox to\@tempdima{\hss #1\ }} \def\l@chapter#1#2{   \if@startedappendices      \if@multappendices         \@dottedtocline            {0}            % appendix chapter like a section            {8.0em}        % indentation of the entry in toc            {3.2em}            {Appendix \thechapter}            {#2}      \else         \@dottedtocline            {0}            % appendix chapter like a section            {6.0em}        % indentation of the entry in toc            {3.2em}            {APPENDIX}            {#2}      \fi   \else      \@dottedtocline         {0}            % chapter is level zero used by tocdepth         {3.5em}        % indentation of the entry in toc         {2.5em}        % width of the chapter number         {\transparentbold #1} % title         {#2}           % Page number   \fi}%    \end{macrocode}%% \subsection{Section}% \subsubsection{Section Headings}%    \begin{macrocode}\newcounter{section}[chapter]                  % The counter\def\thesection {\thechapter.\arabic{section}} %Printed representation. \def\section{     \@startsection{section}      % name of section and also name of                                  % the counter.                   {1}            % level, level 0 is chapter                                  % (for report.sty)                   {0 pt}         % Indentation from left margin.                                  % It can be negative -$>$ moved into                                  % the left margin.                   {12 pt plus 3 pt minus 4 pt}                                  % Skip before heading is printed.                                  % see expl. above for neg. val.                   {5 pt plus 1 pt minus 2 pt}                                  % After heading skip. If negative                                  % The text will be printed next                                  % to the heading text leaving                                  % the space (absolute value)                                  % indicated. Don't use                                  % zero as it will be printed on                                  % the same line without any space                                  % If negative remove stretch.                    {\normalsize\bf}}%    \end{macrocode}%% \subsubsection{Table of Contents entry for Section}%    \begin{macrocode}\def\l@section{   \@dottedtocline      {1}               % chapter is level zero used by tocdepth      {6.0em}           % indentation of the entry in toc=      {2.3em}}          % Indent + Space of l@chapter%    \end{macrocode}%% \subsection{Subsection}% \subsubsection{Subsection Headings}%    \begin{macrocode}\newcounter{subsection}[section]                    % The counter\def\thesubsection{\thesection.\arabic{subsection}} % printed form \def\subsection{%     \@startsection{subsection}   % name of section and also name of                                  % the counter.                   {2}            % level, level 0 is chapter                                  % (for report.sty)                   {0 pt}         % Indentation from left margin.                                  % It can be negative -$>$ moved into                                  % the left margin.                   {12 pt plus 3 pt minus 4 pt}                                  % Skip before heading is printed.                                  % see expl. above for neg. val.                   {5 pt plus 1 pt minus 2 pt}                                  % After heading skip. If negative                                  % The text will be printed next                                  % to the heading text leaving                                  % the space (absolute value)                                  % indicated. Don't use                                  % zero as it will be printed on                                  % the same line without any space                                  % If negative remove stretch.                    {\normalsize\bf}}%    \end{macrocode}%% \subsubsection{Table of Contents entry for Subsection}%    \begin{macrocode}\def\l@subsection{   \@dottedtocline      {2}               % chapter is level zero used by tocdepth      {6.0em}           % indentation of the entry in toc=      {3.2em}}          % Indent + Space of l@section%    \end{macrocode}%% \subsection{Subsubection}% \subsubsection{Subsubsection Headings}%    \begin{macrocode}\newcounter{subsubsection}[subsection]        % The counter\def\thesubsubsection{\thesubsection .\arabic{subsubsection}} \def\subsubsection{%     \@startsection{subsubsection} % name of section and also name of                                  % the counter.                   {3}            % level, level 0 is chapter                                  % (for report.sty)                   {0 pt}         % Indentation from left margin.                                  % It can be negative -$>$ moved into                                  % the left margin.                   {12 pt plus 3 pt minus 4 pt}                                  % Skip before heading is printed.                                  % see expl. above for neg. val.                   {5 pt plus 1 pt minus 2 pt}                                  % After heading skip. If negative                                  % The text will be printed next                                  % to the heading text leaving                                  % the space (absolute value)                                  % indicated. Don't use                                  % zero as it will be printed on                                  % the same line without any space                                  % If negative remove stretch.                    {\normalsize\bf}}%    \end{macrocode}%% \subsubsection{Table of Contents entry for Subsubsection}%    \begin{macrocode}\def\l@subsubsection{   \@dottedtocline      {3}               % chapter is level zero used by tocdepth      {6.0em}           % indentation of the entry in toc=      {4.1em}}          % Indent + Space of l@subsection%    \end{macrocode}% \subsection{Paragraph}% \subsubsection{Paragraph Headings}%    \begin{macrocode}\newcounter{paragraph}[subsubsection]       % The counter.\def\theparagraph{\thesubsubsection.\arabic{paragraph}} \def\paragraph{%     \@startsection{paragraph}    % name of section and also name of                                  % the counter.                   {4}            % level, level 0 is chapter                                  % (for report.sty)                   {0 pt}         % Indentation from left margin.                                  % It can be negative -$>$ moved into                                  % the left margin.                   {12 pt plus 3 pt minus 4 pt}                                  % Skip before heading is printed.                                  % see expl. above for neg. val.                   {5 pt plus 1 pt minus 2 pt}                                  % After heading skip. If negative                                  % The text will be printed next                                  % to the heading text leaving                                  % the space (absolute value)                                  % indicated. Don't use                                  % zero as it will be printed on                                  % the same line without any space                                  % If negative remove stretch.                    {\normalsize\bf}}%    \end{macrocode}%% \subsubsection{Table of Contents entry for Paragraph}%    \begin{macrocode}\def\l@paragraph{   \@dottedtocline      {4}               % chapter is level zero used by tocdepth      {6.0em}           % indentation of the entry in toc=      {5em}}            % Indent + Space of l@subsubsection%    \end{macrocode}%% \subsection{Subparagraph}% \subsubsection{Subparagraph Headings}%    \begin{macrocode}\newcounter{subparagraph}[paragraph]        % The counter\def\thesubparagraph{\theparagraph.\arabic{subparagraph}} \def\subparagraph{%     \@startsection{subparagraph} % name of section and also name of                                  % the counter.                   {5}            % level, level 0 is chapter                                  % (for report.sty)                   {0 pt}         % Indentation from left margin.                                  % It can be negative -$>$ moved into                                  % the left margin.                   {12 pt plus 3 pt minus 4 pt}                                  % Skip before heading is printed.                                  % see expl. above for neg. val.                   {5 pt plus 1 pt minus 2 pt}                                  % After heading skip. If negative                                  % The text will be printed next                                  % to the heading text leaving                                  % the space (absolute value)                                  % indicated. Don't use                                  % zero as it will be printed on                                  % the same line without any space                                  % If negative remove stretch.                    {\normalsize\bf}}%    \end{macrocode}%% \subsubsection{Table of Contents entry for Subparagraph}%    \begin{macrocode}\def\l@subparagraph{   \@dottedtocline      {5}               % chapter is level zero used by tocdepth      {6.0em}           % indentation of the entry in toc=      {6.0em}}          % Indent + Space of l@paragraph%    \end{macrocode}%% \section{Preliminary Sections}% If this is to be a preliminary section, this macro causes the% name designated by \verb+\section@mark+ to be used as the section% title and to use that title in the heading of the continued pages% of this section.%    \begin{macrocode}\def\@makeprelimhead{   \def\headmark{\vbox{        \hbox to \textwidth{\bf\large\hfil\section@mark{}         (Continued) \hfil}}}   \pagestyle{continued}   \thispagestyle{pageonbottom}   \@makeschapterhead{\section@mark}   \par}%    \end{macrocode}%% \subsection{Copyright Page}%    \begin{macrocode}\def\copyrightpage{   \newpage\thispagestyle{empty}   \c@page=2   \vspace*{2.5in}   \begin{center}      Copyright by\\\@author\\\@date   \end{center}   \vfill\eject}%    \end{macrocode}%% \subsection{Dedication}%    \begin{macrocode}\def\dedication{   \clearpage   \typeout{DEDICATION}   \chapter*{}}%    \end{macrocode}%% \subsection{Acknowledgment(s)}%    \begin{macrocode}\def\acknowledgment{   \clearpage   \typeout{ACKNOWLEDGMENT.}   \def\section@mark{ACKNOWLEDGMENT}   \@makeprelimhead}\let\acknowledgement\acknowledgment \def\acknowledgments{   \clearpage   \typeout{ACKNOWLEDGMENTS.}   \def\section@mark{ACKNOWLEDGMENTS}   \@makeprelimhead}\let\acknowledgements\acknowledgments \def\initials#1{   \par\vspace{50pt}   \leftline{\hskip 5.5in #1 \hfil}}%    \end{macrocode}%% \subsection{Preface}%    \begin{macrocode}\def\preface{   \clearpage   \typeout{PREFACE.}   \def\section@mark{PREFACE}   \@makeprelimhead}%    \end{macrocode}%% \subsection{Summary}%    \begin{macrocode}\def\summary{   \clearpage   \typeout{SUMMARY.}   \def\section@mark{SUMMARY}   \@makeprelimhead}%    \end{macrocode}%% \subsection{List of Abbreviations}%    \begin{macrocode}\def\listofabbreviations{   \clearpage   \typeout{LIST OF ABBREVIATIONS.}   \def\section@mark{LIST OF ABBREVIATIONS}   \@makeprelimhead}%    \end{macrocode}%% \subsection{Vita}%    \begin{macrocode}\def\vita{   \clearpage   \typeout{VITA.}   \addtocontents{toc}{\protect\addvspace{\baselineskip}}   \addcontentsline{toc}{chapter}      {\protect\xnumberline{\ }VITA}   \def\section@mark{VITA}   \pagestyle{pageontop}   \thispagestyle{pageontop}   \@makeschapterhead{\section@mark}\par}%    \end{macrocode}%% \section{Table of Contents}% Here we define \verb+\tableofcontents+, we create a page style for% the table of contents called \verb+\toc+. First let's define the name% for the table of contents.%    \begin{macrocode}\def\tocname{TABLE OF CONTENTS}%    \end{macrocode}%% Increase the heading level that will be included in the table of contents.% The default is 2. We will set it equal to \verb+\c@secnumdepth+%    \begin{macrocode}\c@tocdepth=\c@secnumdepth%    \end{macrocode}%% We change the \verb+\tableofcontents macro+%    \begin{macrocode}\def\@pnumwidth{1.55em}\def\@tocrmarg {2.55em}\def\@dotsep{4.0} \def\tableofcontents{   \clearpage   \typeout{TABLE OF CONTENTS.}   \def\headmark{\vbox{        \hbox to \textwidth{\bf\large\hfil TABLE OF CONTENTS           (Continued) \hfil}        \vspace{\innerheadskip}        \hbox to \textwidth{\bf\normalsize           \underbar{CHAPTER}\hfil\underbar{PAGE}}}}   \pagestyle{continued}   \table@of@cont   \newpage   } \def\table@of@cont{%   \begin{singlespace}   \thispagestyle{pageonbottom}   \@makeschapterhead{TABLE OF CONTENTS}   \par   \hbox to \textwidth{\bf\underbar{CHAPTER}       \hfil\underbar{PAGE}}   \@starttoc{toc}   \end{singlespace}}%    \end{macrocode}%% \section{Figures and Tables}% \subsection{Float placement parameters}% See LaTeX manual for their definition.%    \begin{macrocode}\setcounter{topnumber}{2}\def\topfraction{.7}\setcounter{bottomnumber}{1}\def\bottomfraction{.3}\setcounter{totalnumber}{3}\def\textfraction{.2}\def\floatpagefraction{.5}\setcounter{dbltopnumber}{2}\def\dbltopfraction{.7}\def\dblfloatpagefraction{.5}%    \end{macrocode}% The caption for a table is forced to uppercase, but that for a figure% is left in mixed case.%    \begin{macrocode}\long\def\@caption#1[#2]#3{   \par   \addtocontents      {\csname ext@#1\endcsname}      {\protect\addvspace{\baselineskip}}   \if@isatable\addcontentsline%{\csname ext@#1\endcsname}{#1}{\protect\xnumberline%{\csname the#1\endcsname\hskip 2em}%{\expandafter{\uppercase{\ignorespaces #2}}}}   \else      \addcontentsline{\csname ext@#1\endcsname}{#1}{\protect\xnumberline%{\csname the#1\endcsname\hskip 2em}%{\ignorespaces #2}}   \fi   \begingroup      \@parboxrestore      \normalsize   \if@isatable      \@makecaption{\csname fnum@#1\endcsname}      {\expandafter{\uppercase{\ignorespaces #3}}}\par   \else      \@makecaption{\csname fnum@#1\endcsname}{\ignorespaces #3}\par   \fi   \endgroup} \long\def\@makecaption#1#2{   {\vspace{10pt}\centering   \if@isatable      \hbox to \hsize{\hfil #1 \hfil}      \vspace{\baselineskip}      \setbox\@tempboxa\hbox{#2}      \ifdim \wd\@tempboxa >\hsize          #2\par      \else          \hbox to \hsize{\hfil\box\@tempboxa\hfil}      \fi   \else      \setbox\@tempboxa\hbox{#1. #2}      \ifdim \wd\@tempboxa >\hsize   % IF longer than one line:          #1. #2\par                 %   THEN set as ordinary paragraph.      \else                          %   ELSE  center.          \hbox to\hsize{\hfil\box\@tempboxa\hfil}      \fi   \fi}} \def\tablerule{   \kern-3\p@   \hrule width \columnwidth   \kern 2.6\p@}%    \end{macrocode}%% \subsection{Figure}%    \begin{macrocode}\newcounter{figure}\def\thefigure{\arabic{figure}}\def\p@figure{Figure~}\def\fps@figure{tbp}\def\ftype@figure{1}\def\ext@figure{lof}\def\fnum@figure{Figure~\thefigure}\def\figure{\@isatablefalse\@float{figure}}\let\endfigure\end@float\@namedef{figure*}{\@dblfloat{figure}}\@namedef{endfigure*}{\end@dblfloat}%    \end{macrocode}%% \subsection{Table}%    \begin{macrocode}\newcounter{table}\def\thetable{\Roman{table}}\def\p@table{Table~}\def\fps@table{tbp}\def\ftype@table{2}\def\ext@table{lot}\def\fnum@table{TABLE~\thetable}\def\table{\@isatabletrue\@float{table}}\let\endtable\end@float\@namedef{table*}{\@dblfloat{table}}\@namedef{endtable*}{\end@dblfloat}%    \end{macrocode}%% \section{Lists of Figures and Tables}% \subsection{List of Figures}%    \begin{macrocode}\def\listoffigures{   \clearpage   \typeout{LIST OF FIGURES.}   \def\headmark{\vbox{        \hbox to \textwidth{\large\bf\hfil LIST OF FIGURES           (Continued) \hfil}        \vspace{\innerheadskip}        \hbox to \textwidth{\normalsize\bf           \underbar{FIGURE}\hfil\underbar{PAGE}}}}   \pagestyle{continued}   \list@of@figs   \newpage   } \def\list@of@figs{   \begin{singlespace}   \thispagestyle{pageonbottom}   \@makeschapterhead{LIST OF FIGURES}   \par   \hbox to \textwidth{\normalsize\bf      \underbar{FIGURE}\hfil\underbar{PAGE}}   \@starttoc{lof}   \end{singlespace}} \def\l@figure{   \@dottedtocline{1}{2.5em}{3.5em}}%    \end{macrocode}%% \subsection{List of Tables}%    \begin{macrocode}\def\listoftables{   \clearpage   \typeout{LIST OF TABLES.}   \def\headmark{\vbox{        \hbox to \textwidth{\large\bf \hfil LIST OF TABLES           (Continued) \hfil}        \vspace{\innerheadskip}        \hbox to \textwidth{\normalsize\bf           \underbar{TABLE}\hfil\underbar{PAGE}}}}   \pagestyle{continued}   \list@of@tabs   \newpage   } \def\list@of@tabs{   \begin{singlespace}   \thispagestyle{pageonbottom}   \@makeschapterhead{LIST OF TABLES}   \par   \hbox to \textwidth{\normalsize\bf       \underbar{TABLE}\hfil\underbar{PAGE}}   \@starttoc{lot}   \end{singlespace}} \def\l@table{   \@dottedtocline{1}{3.0em}{3.5em}}%    \end{macrocode}%% \section{Lists}% \subsection{Enumerate}%  Enumeration is done with four counters: enumi, enumii, enumiii%  and enumiv, where enumN controls the numbering of the Nth level%  enumeration.  The label is generated by the commands%  \verb+\labelenumi+ ... \verb+\labelenumiv+.% The expansion of \verb+\p@enumN\theenumN+ defines the%  output of a \verb+\ref+ command.%    \begin{macrocode} \def\labelenumi{\theenumi.}\def\theenumi{\arabic{enumi}} \def\labelenumii{(\theenumii)}\def\theenumii{\alph{enumii}}\def\p@enumii{\theenumi} \def\labelenumiii{\theenumiii.}\def\theenumiii{\roman{enumiii}}\def\p@enumiii{\theenumi(\theenumii)} \def\labelenumiv{\theenumiv.}\def\theenumiv{\Alph{enumiv}}\def\p@enumiv{\p@enumiii\theenumiii}%    \end{macrocode}%% \subsection{Itemize}% Itemization is controlled by four commands:% \verb+\labelitemi+,% \verb+\labelitemii+,% \verb+\labelitemiii+, and% \verb+\labelitemiv+,% which define the labels of the various% itemization levels.%    \begin{macrocode}\def\labelitemi{$\bullet$}\def\labelitemii{\bf --}\def\labelitemiii{$\ast$}\def\labelitemiv{$\cdot$}%    \end{macrocode}%% \subsection{Verse}%   The verse environment is defined by making clever use of the%   list environment's parameters.  The user types \verb+\\+%   to end a line.%   This is implemented by \verb+\let'in \\ equal \@centercr+.%    \begin{macrocode}\def\verse{\let\\=\@centercr  \list{}{\itemsep\z@ \itemindent -1.5em\listparindent \itemindent          \rightmargin\leftmargin\advance\leftmargin 1.5em}\item[]}\let\endverse\endlist%    \end{macrocode}%% \subsection{Quotation}%   Fills lines and indents paragraph.%    \begin{macrocode}\def\quotation{\list{}{\listparindent 1.5em    \itemindent\listparindent    \rightmargin\leftmargin\parsep 0pt plus 1pt}\item[]}\let\endquotation=\endlist%    \end{macrocode}%% \subsection{Quote}% Same as quotation except no paragraph indentation,%    \begin{macrocode}\def\quote{\list{}{\rightmargin\leftmargin}\item[]}\let\endquote=\endlist%    \end{macrocode}%% \subsection{Description}%  To change the formatting of the label, you must redefine%  \verb+\descriptionlabel+.%    \begin{macrocode}\def\descriptionlabel#1{\hspace\labelsep \bf #1} \def\description{\list{}{\labelwidth\z@ \itemindent-\leftmargin    \let\makelabel\descriptionlabel}} \let\enddescription\endlist \newdimen\descriptionmargin\descriptionmargin=3em%    \end{macrocode}%% \section{Other Environments}% \subsection{Equation numbering}% Equations are numbered as two arabic numbers, separated by a period.% The first number, to the left of the period, is the chapter number.% The second number is a counter that is initialized to start at 1% at the beginning of each chapter and is incremented for each new% equation.%    \begin{macrocode}\def\p@equation{Equation~}\def\theequation{\thechapter.\arabic{equation}}%    \end{macrocode}%% \subsection{Array and Tabular}%    \begin{macrocode}\arraycolsep 5pt     % Half the space between columns in an array environment.\tabcolsep 6pt       % Half the space between columns in a tabular environment.\arrayrulewidth .4pt % Width of rules in array and tabular environment.\doublerulesep 2pt   % Space between adjacent rules in array or tabular env.%    \end{macrocode}%% \subsection{Tabbing}%    \begin{macrocode}\tabbingsep \labelsep   % Space used by the \' command.  (See LaTeX manual.)%    \end{macrocode}%% \subsection{Minipage}%  \verb+\@minipagerestore+%  is called upon entry to a minipage environment to%  set up things that are to be handled differently inside a minipage%  environment. In the current styles, it does nothing.%% \verb+\skip\@mpfootins+  plays same role for footnotes in a minipage as% \verb+\skip\footins+ does for ordinary footnotes%    \begin{macrocode}\skip\@mpfootins = \skip\footins%    \end{macrocode}%% \subsection{Framebox}%    \begin{macrocode}\fboxsep = 3pt % Space left between box and text by \fbox and \framebox.\fboxrule = .4pt % Width of rules in box made by \fbox and \framebox.%    \end{macrocode}%% \subsection{Bibliography}%    \begin{macrocode}\def\bibforma{\@bibformatrue\bibliographystyle{forma}}\def\bibformb{\@bibformafalse\bibliographystyle{formb}}\def\bibformc{\@bibformafalse\bibliographystyle{formc}} \def\bibob{(}\def\bibcb{)}\def\roundbrackets{\def\bibob{(}\def\bibcb{)}}\def\squarebrackets{\def\bibob{[}\def\bibcb{]}}\def\nobrackets{\def\bibob{}\def\bibcb{}}\def\bibdatesep{,\ }\def\bibmultisep{;}\def\egrp/{\egroup}  \def\@citex[#1]#2{\if@filesw\immediate\write\@auxout{\string\citation{#2}}\fi  \def\@citea{}\@cite{\@for\@citeb:=#2\do    {\@citea\def\@citea{\bibmultisep\penalty\@m\ }\@ifundefined       {b@\@citeb}{{\bf ?}\@warning       {Citation `\@citeb' on page \thepage \space undefined}}%{\csname b@\@citeb\endcsname}}}{#1}} \def\@cite#1#2{{#1\if@tempswa \bibdatesep #2\fi}} \let\@internalcite\@citex \def\cite{\@ifnextchar[{\@tempswatrue\@namecite}%    {\@tempswafalse\@namecite[]}} \def\@namecite[#1]#2{\bibob\def\citename##1{##1\bibdatesep}%    \@internalcite[#1]{#2}\bibcb} \def\@lbibitem[#1]#2{\item[]\if@filesw      { \def\protect##1{\string ##1\space}\immediate        \write\@auxout{\string\bibcite{#2}{#1}}}\fi\ignorespaces} \def\bibliography#1{   \clearpage   \typeout{CITED LITERATURE.}   \addtocontents{toc}{\protect\addvspace{\baselineskip}}   \addcontentsline{toc}{chapter}      {\protect\xnumberline{\ }CITED LITERATURE}   \def\section@mark{CITED LITERATURE}   \pagestyle{pageontop}   \thispagestyle{pageontop}   \@makeschapterhead{\section@mark}\par   \begin{singlespace}   \if@filesw\immediate\write\@auxout{\string\bibdata{#1}}\fi   \@input{\jobname.bbl}   \end{singlespace}} \def\thebibliography#1{   \if@bibforma      \list{\relax}         {\setlength{\labelsep}{0em}          \setlength{\itemindent}{-2em}          \setlength{\leftmargin}{2em}}   \else      \list{\arabic{enumi}.}         {\settowidth\labelwidth{#1.}\leftmargin\labelwidth          \advance\leftmargin\labelsep          \advance\leftmargin 0.5in          \itemindent -0.5in          \usecounter{enumi}}   \fi   \def\newblock{\hskip .11em plus .33em minus .07em}   \sloppy\clubpenalty4000\widowpenalty4000   \sfcode`\.=1000\relax   } \def\endthebibliography{\endlist\pagestyle{pageontop}}%    \end{macrocode}%% \subsection{Indexing}%    \begin{macrocode}\newif\if@restonecol\def\theindex{   \@restonecoltrue   \if@twocolumn\@restonecolfalse\fi   \columnseprule \z@   \columnsep 35pt   \clearpage   \begin{singlespace}   \def\section@mark{Index}   \twocolumn[\@makeprelimhead]   \parindent\z@   \parskip\z@ plus .3pt\relax   \let\item\@idxitem} \def\@idxitem{\par\hangindent 40pt}\def\subitem{\par\hangindent 40pt \hspace*{20pt}}\def\subsubitem{\par\hangindent 40pt \hspace*{30pt}}\def\endtheindex{\if@restonecol\onecolumn\else\clearpage\fi}\def\indexspace{\par \vskip 10pt plus 5pt minus 3pt\relax}%    \end{macrocode}%% \subsection{Footnotes}%    \begin{macrocode}\def\footnoterule{   \kern-3\p@   \hrule width \columnwidth   \kern 2.6\p@} \@addtoreset{footnote}{chapter} \long\def\@makefntext#1{\parindent 1em\noindent%\hbox to 1.8em{\hss$^{\@thefnmark}$}#1} \def\footnotesep{\baselineskip} \def\footnote{\@ifnextchar[{\@xfootnote}%{\@pagefn\xdef\@thefnmark{\thefootnote}\@footnotemark\@footnotetext}} \def\footnotemark{%\@ifnextchar[{\@xfootnotemark}%{\@pagefn\xdef\@thefnmark{\thefootnote}\@footnotemark}} \long\def\@footnotetext#1{%\insert\footins{\singlespace\small%\interlinepenalty\interfootnotelinepenalty%\splittopskip\footnotesep%\splitmaxdepth \dp\strutbox \floatingpenalty \@MM%\hsize\columnwidth \@parboxrestore%\edef\@currentlabel{\csname p@footnote\endcsname\@thefnmark}%\@makefntext{\rule{\z@}{\footnotesep}\ignorespaces#1\strut}%\endsinglespace}} \def\@pagefn{%\stepcounter{fnref}%\@ifnewpage{\setcounter{footnote}{1}}%{\stepcounter{footnote}}} \def\@ifnewpage#1#2{%\if@filesw\let\thec@page=\relax%\def\thec@page{\the\c@page}%\edef\@tempa{\write\@auxout{\string\fnref{\the\c@fnref}{\thec@page}}}%\def\thec@page{\the\c@page}%\@tempa\@iflastfnsamepage{#2}{#1}%\else%#2%\fi}%    \end{macrocode}%% make sure that we are writing to an aux file% thec@page is a macro not a counter it is not missing a '\'% If they are not writing to an aux file simply% increase the counter throughout the documents%    \begin{macrocode}\def\fnref#1#2{\expandafter\gdef\csname fn@#1\endcsname{#2}} \def\@iflastfnsamepage#1#2{%\edef\@tempa{fn@\the\c@fnref}%\edef\this@fnpage{\expandafter\csname\@tempa\endcsname}%\@tempcnta=\c@fnref%\advance\@tempcnta by -1%\edef\@tempa{fn@\the\@tempcnta}%\edef\last@fnpage{\expandafter\csname\@tempa\endcsname}%\if\last@fnpage\this@fnpage #1%\else #2%\fi} \fnref{0}{-1} \def\@fnfinish{%\def\fnref##1##2{%\def\@tempa{##2}%\edef\@tempb{\csname fn@##1\endcsname}\if\@tempa\@tempb\else\if@nowarning\@warning{Some of the footnotes might have moved.                                  Rerun to fix the output}\@nowarningfalse\fi\fi}}%    \end{macrocode}%% In order to be able to check if the footnotes have moved, and to print% the warning, we need to redefine the \verb+\enddocument+ environment.%    \begin{macrocode}\let\fn@save@enddocument=\enddocument      % save a copy of enddocument\def\enddocument{\@fnfinish\fn@save@enddocument}%    \end{macrocode}%% Increase the space between last line of text and footnote rule.%   This is a very untidy way to do it!%    \begin{macrocode}\skip\footins 20pt plus4pt minus4pt%    \end{macrocode}%% Reset baselinestretch within footnotes and floats.%    \begin{macrocode}\def\@xfloat#1[#2]{   \ifhmode \@bsphack\@floatpenalty -\@Mii   \else \@floatpenalty-\@Miii\fi   \def\@captype{#1}   \ifinner      \@parmoderr\@floatpenalty\z@   \else\@next\@currbox\@freelist{\@tempcnta\csname ftype@#1\endcsname      \multiply\@tempcnta\@xxxii\advance\@tempcnta\sixt@@n         \@tfor \@tempa :=#2\do                     {\if\@tempa h\advance\@tempcnta \@ne\fi                      \if\@tempa t\advance\@tempcnta \tw@\fi                      \if\@tempa b\advance\@tempcnta 4\relax\fi                      \if\@tempa p\advance\@tempcnta 8\relax\fi}         \global\count\@currbox\@tempcnta}\@fltovf\fi   \global\setbox\@currbox\vbox\bgroup   \def\baselinestretch{1}\small\normalsize   \hsize\columnwidth \@parboxrestore}%    \end{macrocode}%
