4
%% A modified version of 'report.cls':
6
%% This is file `report.cls', generated
7
%% on <1994/9/30> with the docstrip utility (2.2h).
9
%% The original source files were:
11
%% classes.dtx (with options: `report')
13
%% Copyright 1994 the LaTeX3 project and the individual authors.
14
%% All rights reserved. For further copyright information see the file
15
%% legal.txt, and any other copyright indicated in this file.
17
%% This file is part of the LaTeX2e system.
18
%% ----------------------------------------
20
%% This system is distributed in the hope that it will be useful,
21
%% but WITHOUT ANY WARRANTY; without even the implied warranty of
22
%% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
27
%% For error reports in case of UNCHANGED versions see bugs.txt.
29
%% Please do not request updates from us directly. Distribution is
30
%% done through Mail-Servers and TeX organizations.
32
%% You are not allowed to change this file.
34
%% You are allowed to distribute this file under the condition that
35
%% it is distributed together with all files mentioned in manifest.txt.
37
%% If you receive only some of these files from someone, complain!
39
%% You are NOT ALLOWED to distribute this file alone. You are NOT
40
%% ALLOWED to take money for the distribution or use of either this
41
%% file or a changed version, except for a nominal charge for copying
44
%% {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
45
%% 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
46
%% Digits \0\1\2\3\4\5\6\7\8\9
47
%% Exclamation \! Double quote \" Hash (number) \#
48
%% Dollar \$ Percent \% Ampersand \&
49
%% Acute accent \' Left paren \( Right paren \)
50
%% Asterisk \* Plus \+ Comma \,
51
%% Minus \- Point \. Solidus \/
52
%% Colon \: Semicolon \; Less than \<
53
%% Equals \= Greater than \> Question mark \?
54
%% Commercial at \@ Left bracket \[ Backslash \\
55
%% Right bracket \] Circumflex \^ Underscore \_
56
%% Grave accent \` Left brace \{ Vertical bar \|
57
%% Right brace \} Tilde \~}
58
\NeedsTeXFormat{LaTeX2e}
59
\ProvidesClass{xenstyle}[]
67
\DeclareOption{a4paper}
68
{\setlength\paperheight {297mm}%
69
\setlength\paperwidth {210mm}}
70
\DeclareOption{a5paper}
71
{\setlength\paperheight {210mm}%
72
\setlength\paperwidth {148mm}}
73
\DeclareOption{b5paper}
74
{\setlength\paperheight {250mm}%
75
\setlength\paperwidth {176mm}}
76
\DeclareOption{letterpaper}
77
{\setlength\paperheight {11in}%
78
\setlength\paperwidth {8.5in}}
79
\DeclareOption{legalpaper}
80
{\setlength\paperheight {14in}%
81
\setlength\paperwidth {8.5in}}
82
\DeclareOption{executivepaper}
83
{\setlength\paperheight {10.5in}%
84
\setlength\paperwidth {7.25in}}
85
\DeclareOption{landscape}
86
{\setlength\@tempdima {\paperheight}%
87
\setlength\paperheight {\paperwidth}%
88
\setlength\paperwidth {\@tempdima}}
89
\DeclareOption{10pt}{\renewcommand\@ptsize{0}}
90
\DeclareOption{11pt}{\renewcommand\@ptsize{1}}
91
\DeclareOption{12pt}{\renewcommand\@ptsize{2}}
92
\DeclareOption{oneside}{\@twosidefalse \@mparswitchfalse}
93
\DeclareOption{twoside}{\@twosidetrue \@mparswitchtrue}
94
\DeclareOption{draft}{\setlength\overfullrule{5pt}}
95
\DeclareOption{final}{\setlength\overfullrule{0pt}}
96
\DeclareOption{titlepage}{\@titlepagetrue}
97
\DeclareOption{notitlepage}{\@titlepagefalse}
98
\DeclareOption{openright}{\@openrighttrue}
99
\DeclareOption{openany}{\@openrightfalse}
100
\DeclareOption{onecolumn}{\@twocolumnfalse}
101
\DeclareOption{twocolumn}{\@twocolumntrue}
102
\DeclareOption{leqno}{\input{leqno.clo}}
103
\DeclareOption{fleqn}{\input{fleqn.clo}}
104
\DeclareOption{openbib}{\@openbibtrue}
105
\ExecuteOptions{letterpaper,10pt,oneside,onecolumn,final,openany}
107
\input{size1\@ptsize.clo}
108
\setlength\lineskip{1\p@}
109
\setlength\normallineskip{1\p@}
110
\renewcommand\baselinestretch{}
111
\setlength\parskip{0\p@ \@plus \p@}
115
\setcounter{topnumber}{2}
116
\renewcommand\topfraction{.7}
117
\setcounter{bottomnumber}{1}
118
\renewcommand\bottomfraction{.3}
119
\setcounter{totalnumber}{3}
120
\renewcommand\textfraction{.2}
121
\renewcommand\floatpagefraction{.5}
122
\setcounter{dbltopnumber}{2}
123
\renewcommand\dbltopfraction{.7}
124
\renewcommand\dblfloatpagefraction{.5}
127
\let\@oddfoot\@empty\let\@evenfoot\@empty
128
\def\@evenhead{\thepage\hfil\slshape\leftmark}%
129
\def\@oddhead{{\slshape\rightmark}\hfil\thepage}%
130
\let\@mkboth\markboth
131
\def\chaptermark##1{%
132
\markboth {\uppercase{\ifnum \c@secnumdepth >\m@ne
133
\@chapapp\ \thechapter. \ \fi
135
\def\sectionmark##1{%
136
\markright {\uppercase{\ifnum \c@secnumdepth >\z@
142
\def\@oddhead{{\slshape\rightmark}\hfil\thepage}%
143
\let\@mkboth\markboth
144
\def\chaptermark##1{%
145
\markright {\uppercase{\ifnum \c@secnumdepth >\m@ne
146
\@chapapp\ \thechapter. \ \fi
150
\let\@oddfoot\@empty\let\@evenfoot\@empty
151
\def\@evenhead{\thepage\hfil\slshape\leftmark}%
152
\def\@oddhead{{\slshape\rightmark}\hfil\thepage}%
153
\let\@mkboth\@gobbletwo
154
\let\chaptermark\@gobble
155
\let\sectionmark\@gobble
158
\newcommand\maketitle{\begin{titlepage}%
159
\let\footnotesize\small
160
\let\footnoterule\relax
164
{\LARGE \@title \par}%
168
\begin{tabular}[t]{c}%
172
{\large \@date \par}% % Set date in \large size.
177
\setcounter{footnote}{0}%
178
\let\thanks\relax\let\maketitle\relax
179
\gdef\@thanks{}\gdef\@author{}\gdef\@title{}}
181
\newcommand\maketitle{\par
183
\renewcommand\thefootnote{\fnsymbol{footnote}}%
184
\def\@makefnmark{\hbox to\z@{$\m@th^{\@thefnmark}$\hss}}%
185
\long\def\@makefntext##1{\parindent 1em\noindent
186
\hbox to1.8em{\hss$\m@th^{\@thefnmark}$}##1}%
188
\ifnum \col@number=\@ne
191
\twocolumn[\@maketitle]%
195
\global\@topnum\z@ % Prevents figures from going at top of page.
198
\thispagestyle{plain}\@thanks
200
\setcounter{footnote}{0}%
202
\let\maketitle\relax\let\@maketitle\relax
203
\gdef\@thanks{}\gdef\@author{}\gdef\@title{}}
209
{\LARGE \@title \par}%
213
\begin{tabular}[t]{c}%
222
\newcommand\chaptermark[1]{}
223
\setcounter{secnumdepth}{2}
225
\newcounter {chapter}
226
\newcounter {section}[chapter]
227
\newcounter {subsection}[section]
228
\newcounter {subsubsection}[subsection]
229
\newcounter {paragraph}[subsubsection]
230
\newcounter {subparagraph}[paragraph]
231
\renewcommand\thepart {\Roman{part}}
232
\renewcommand\thechapter {\arabic{chapter}}
233
\renewcommand\thesection {\thechapter.\arabic{section}}
234
\renewcommand\thesubsection {\thesection.\arabic{subsection}}
235
\renewcommand\thesubsubsection {\thesubsection .\arabic{subsubsection}}
236
\renewcommand\theparagraph {\thesubsubsection.\arabic{paragraph}}
237
\renewcommand\thesubparagraph {\theparagraph.\arabic{subparagraph}}
238
\newcommand\@chapapp{\chaptername}
239
\newcommand\part{\cleardoublepage
240
\thispagestyle{plain}%
248
\secdef\@part\@spart}
251
\ifnum \c@secnumdepth >-2\relax
252
\refstepcounter{part}%
253
\addcontentsline{toc}{part}{\thepart\hspace{1em}#1}%
255
\addcontentsline{toc}{part}{#1}%
259
\interlinepenalty \@M
261
\ifnum \c@secnumdepth >-2\relax
262
\huge\bfseries \partname~\thepart
266
\Huge \bfseries #2\par}%
270
\interlinepenalty \@M
272
\Huge \bfseries #1\par}%
274
\def\@endpart{\vfil\newpage
277
\thispagestyle{empty}%
283
\newcommand\chapter{\if@openright\cleardoublepage\else\clearpage\fi
284
\thispagestyle{plain}%
287
\secdef\@chapter\@schapter}
288
\def\@chapter[#1]#2{\ifnum \c@secnumdepth >\m@ne
289
\refstepcounter{chapter}%
290
\typeout{\@chapapp\space\thechapter.}%
291
\addcontentsline{toc}{chapter}%
292
{\protect\numberline{\thechapter}#1}%
294
\addcontentsline{toc}{chapter}{#1}
297
\addtocontents{lof}{\protect\addvspace{10\p@}}%
298
\addtocontents{lot}{\protect\addvspace{10\p@}}%
300
\@topnewpage[\@makechapterhead{#2}]%
302
\@makechapterhead{#2}%
305
\def\@makechapterhead#1{%
307
{\parindent \z@ \raggedright \reset@font
308
\ifnum \c@secnumdepth >\m@ne
309
\huge\bfseries \@chapapp{} \thechapter
313
\Huge \bfseries #1\par
317
\def\@schapter#1{\if@twocolumn
318
\@topnewpage[\@makeschapterhead{#1}]%
320
\@makeschapterhead{#1}%
323
\def\@makeschapterhead#1{%
325
{\parindent \z@ \raggedright
327
\Huge \bfseries #1\par
331
\newcommand\section{\@startsection {section}{1}{\z@}%
332
{-3.5ex \@plus -1ex \@minus -.2ex}%
334
{\reset@font\Large\bfseries}}
335
\newcommand\subsection{\@startsection{subsection}{2}{\z@}%
336
{-3.25ex\@plus -1ex \@minus -.2ex}%
338
{\reset@font\large\bfseries}}
339
\newcommand\subsubsection{\@startsection{subsubsection}{3}{\z@}%
340
{-3.25ex\@plus -1ex \@minus -.2ex}%
342
{\reset@font\normalsize\bfseries}}
343
\newcommand\paragraph{\@startsection{paragraph}{4}{\z@}%
344
{3.25ex \@plus1ex \@minus.2ex}%
346
{\reset@font\normalsize\bfseries}}
347
\newcommand\subparagraph{\@startsection{subparagraph}{5}{\parindent}%
348
{3.25ex \@plus1ex \@minus .2ex}%
350
{\reset@font\normalsize\bfseries}}
352
\setlength\leftmargini {2em}
354
\setlength\leftmargini {2.5em}
356
\setlength\leftmarginii {2.2em}
357
\setlength\leftmarginiii {1.87em}
358
\setlength\leftmarginiv {1.7em}
360
\setlength\leftmarginv {.5em}
361
\setlength\leftmarginvi {.5em}
363
\setlength\leftmarginv {1em}
364
\setlength\leftmarginvi {1em}
366
\setlength\leftmargin {\leftmargini}
367
\setlength \labelsep {.5em}
368
\setlength \labelwidth{\leftmargini}
369
\addtolength\labelwidth{-\labelsep}
370
\@beginparpenalty -\@lowpenalty
371
\@endparpenalty -\@lowpenalty
372
\@itempenalty -\@lowpenalty
373
\renewcommand\theenumi{\arabic{enumi}}
374
\renewcommand\theenumii{\alph{enumii}}
375
\renewcommand\theenumiii{\roman{enumiii}}
376
\renewcommand\theenumiv{\Alph{enumiv}}
377
\newcommand\labelenumi{\theenumi.}
378
\newcommand\labelenumii{(\theenumii)}
379
\newcommand\labelenumiii{\theenumiii.}
380
\newcommand\labelenumiv{\theenumiv.}
381
\renewcommand\p@enumii{\theenumi}
382
\renewcommand\p@enumiii{\theenumi(\theenumii)}
383
\renewcommand\p@enumiv{\p@enumiii\theenumiii}
384
\newcommand\labelitemi{$\m@th\bullet$}
385
\newcommand\labelitemii{\normalfont\bfseries --}
386
\newcommand\labelitemiii{$\m@th\ast$}
387
\newcommand\labelitemiv{$\m@th\cdot$}
388
\newenvironment{description}
389
{\list{}{\labelwidth\z@ \itemindent-\leftmargin
390
\let\makelabel\descriptionlabel}}
392
\newcommand\descriptionlabel[1]{\hspace\labelsep
393
\normalfont\bfseries #1}
395
\newenvironment{abstract}{%
399
\bfseries \abstractname
401
{\par\vfil\null\endtitlepage}
403
\newenvironment{abstract}{%
405
\section*{\abstractname}%
409
{\bfseries \abstractname\vspace{-.5em}\vspace{\z@}}%
413
{\if@twocolumn\else\endquotation\fi}
415
\newenvironment{verse}
419
\listparindent\itemindent
420
\rightmargin \leftmargin
421
\advance\leftmargin 1.5em}%
424
\newenvironment{quotation}
425
{\list{}{\listparindent 1.5em%
426
\itemindent \listparindent
427
\rightmargin \leftmargin
428
\parsep \z@ \@plus\p@}%
431
\newenvironment{quote}
432
{\list{}{\rightmargin\leftmargin}%
435
\newenvironment{titlepage}
438
\@restonecoltrue\onecolumn
440
\@restonecolfalse\newpage
442
\thispagestyle{empty}%
446
\setcounter{page}{1}%
448
{\if@restonecol\twocolumn \else \newpage \fi
449
\setcounter{page}{1}%
451
\newcommand\appendix{\par
452
\setcounter{chapter}{0}%
453
\setcounter{section}{0}%
454
\renewcommand\@chapapp{\appendixname}%
455
\renewcommand\thechapter{\Alph{chapter}}}
456
\setlength\arraycolsep{5\p@}
457
\setlength\tabcolsep{6\p@}
458
\setlength\arrayrulewidth{.4\p@}
459
\setlength\doublerulesep{2\p@}
460
\setlength\tabbingsep{\labelsep}
461
\skip\@mpfootins = \skip\footins
462
\setlength\fboxsep{3\p@}
463
\setlength\fboxrule{.4\p@}
464
\@addtoreset{equation}{chapter}
465
\renewcommand\theequation{\thechapter.\arabic{equation}}
466
\newcounter{figure}[chapter]
467
\renewcommand\thefigure{\thechapter.\@arabic\c@figure}
471
\def\fnum@figure{\figurename~\thefigure}
472
\newenvironment{figure}
475
\newenvironment{figure*}
478
\newcounter{table}[chapter]
479
\renewcommand\thetable{\thechapter.\@arabic\c@table}
483
\def\fnum@table{\tablename~\thetable}
484
\newenvironment{table}
487
\newenvironment{table*}
490
\newlength\abovecaptionskip
491
\newlength\belowcaptionskip
492
\setlength\abovecaptionskip{10\p@}
493
\setlength\belowcaptionskip{0\p@}
494
\long\def\@makecaption#1#2{%
495
\vskip\abovecaptionskip
496
\sbox\@tempboxa{#1: #2}%
497
\ifdim \wd\@tempboxa >\hsize
500
\hbox to\hsize{\hfil\box\@tempboxa\hfil}%
502
\vskip\belowcaptionskip}
503
\DeclareOldFontCommand{\rm}{\normalfont\rmfamily}{\mathrm}
504
\DeclareOldFontCommand{\sf}{\normalfont\sffamily}{\mathsf}
505
\DeclareOldFontCommand{\tt}{\normalfont\ttfamily}{\mathtt}
506
\DeclareOldFontCommand{\bf}{\normalfont\bfseries}{\mathbf}
507
\DeclareOldFontCommand{\it}{\normalfont\itshape}{\mathit}
508
\DeclareOldFontCommand{\sl}{\normalfont\slshape}{\@nomath\sl}
509
\DeclareOldFontCommand{\sc}{\normalfont\scshape}{\@nomath\sc}
510
%\renewcommand{\cal}{\protect\pcal}
511
%\newcommand{\pcal}{\@fontswitch{\relax}{\mathcal}}
512
%\renewcommand{\mit}{\protect\pmit}
513
%\newcommand{\pmit}{\@fontswitch{\relax}{\mathnormal}}
514
\newcommand\@pnumwidth{1.55em}
515
\newcommand\@tocrmarg {2.55em}
516
\newcommand\@dotsep{4.5}
517
\setcounter{tocdepth}{2}
518
\newcommand\tableofcontents{%
520
\@restonecoltrue\onecolumn
524
\chapter*{\contentsname
525
\@mkboth{\uppercase{\contentsname}}{\uppercase{\contentsname}}}%
527
\if@restonecol\twocolumn\fi
529
\newcommand\l@part[2]{%
530
\ifnum \c@tocdepth >-2\relax
531
\addpenalty{-\@highpenalty}%
532
\addvspace{2.25em \@plus\p@}%
534
\setlength\@tempdima{3em}%
535
\parindent \z@ \rightskip \@pnumwidth
536
\parfillskip -\@pnumwidth
538
\large \bfseries #1\hfil \hbox to\@pnumwidth{\hss #2}}\par
541
\everypar{\global\@nobreakfalse\everypar{}}
544
\newcommand\l@chapter[2]{%
545
\ifnum \c@tocdepth >\m@ne
546
\addpenalty{-\@highpenalty}%
547
\vskip 1.0em \@plus\p@
548
\setlength\@tempdima{1.5em}%
550
\parindent \z@ \rightskip \@pnumwidth
551
\parfillskip -\@pnumwidth
552
\leavevmode \bfseries
553
\advance\leftskip\@tempdima
555
#1\nobreak\hfil \nobreak\hbox to\@pnumwidth{\hss #2}\par
556
\penalty\@highpenalty
559
\newcommand\l@section {\@dottedtocline{1}{1.5em}{2.3em}}
560
\newcommand\l@subsection {\@dottedtocline{2}{3.8em}{3.2em}}
561
\newcommand\l@subsubsection{\@dottedtocline{3}{7.0em}{4.1em}}
562
\newcommand\l@paragraph {\@dottedtocline{4}{10em}{5em}}
563
\newcommand\l@subparagraph {\@dottedtocline{5}{12em}{6em}}
564
\newcommand\listoffigures{%
566
\@restonecoltrue\onecolumn
570
\chapter*{\listfigurename
571
\@mkboth{\uppercase{\listfigurename}}%
572
{\uppercase{\listfigurename}}}%
574
\if@restonecol\twocolumn\fi
576
\newcommand\l@figure{\@dottedtocline{1}{1.5em}{2.3em}}
577
\newcommand\listoftables{%
579
\@restonecoltrue\onecolumn
583
\chapter*{\listtablename
584
\@mkboth{\uppercase{\listtablename}}{\uppercase{\listtablename}}}%
586
\if@restonecol\twocolumn\fi
588
\let\l@table\l@figure
591
\newenvironment{thebibliography}[1]
593
\@mkboth{\uppercase{\bibname}}{\uppercase{\bibname}}}%
594
\list{\@biblabel{\arabic{enumiv}}}%
595
{\settowidth\labelwidth{\@biblabel{#1}}%
596
\leftmargin\labelwidth
597
\advance\leftmargin\labelsep
599
\advance\leftmargin\bibindent
600
\itemindent -\bibindent
601
\listparindent \itemindent
606
\renewcommand\theenumiv{\arabic{enumiv}}}%
608
\renewcommand\newblock{\par}
610
\renewcommand\newblock{\hskip .11em \@plus.33em \@minus.07em}%
612
\sloppy\clubpenalty4000\widowpenalty4000%
615
{\@latex@warning{Empty `thebibliography' environment}}%
617
\newcommand\newblock{}
618
\newenvironment{theindex}
626
\twocolumn[\@makeschapterhead{\indexname}]%
627
\@mkboth{\uppercase{\indexname}}%
628
{\uppercase{\indexname}}%
629
\thispagestyle{plain}\parindent\z@
630
\parskip\z@ \@plus .3\p@\relax
632
{\if@restonecol\onecolumn\else\clearpage\fi}
633
\newcommand\@idxitem {\par\hangindent 40\p@}
634
\newcommand\subitem {\par\hangindent 40\p@ \hspace*{20\p@}}
635
\newcommand\subsubitem{\par\hangindent 40\p@ \hspace*{30\p@}}
636
\newcommand\indexspace{\par \vskip 10\p@ \@plus5\p@ \@minus3\p@\relax}
637
\renewcommand\footnoterule{%
639
\hrule width .4\columnwidth
641
\@addtoreset{footnote}{chapter}
642
\long\def\@makefntext#1{%
645
\hbox to 1.8em{\hss\@makefnmark}#1}
646
\newcommand\contentsname{Contents}
647
\newcommand\listfigurename{List of Figures}
648
\newcommand\listtablename{List of Tables}
649
\newcommand\bibname{Bibliography}
650
\newcommand\indexname{Index}
651
\newcommand\figurename{Figure}
652
\newcommand\tablename{Table}
653
\newcommand\partname{Part}
654
\newcommand\chaptername{Chapter}
655
\newcommand\appendixname{Appendix}
656
\newcommand\abstractname{Abstract}
657
\newcommand\today{\ifcase\month\or
658
January\or February\or March\or April\or May\or June\or
659
July\or August\or September\or October\or November\or December\fi
660
\space\number\day, \number\year}
661
\setlength\columnsep{10\p@}
662
\setlength\columnseprule{0\p@}
664
\pagenumbering{arabic} % Arabic page numbers