%% %% This is file `jadetex.ltx', %% generated with the docstrip utility. %% %% The original source files were: %% %% jadetex.dtx (with options: `package') %% \NeedsTeXFormat{LaTeX2e}[1995/06/01] \ProvidesFile{jadetex.ltx} \def\JadeTeXMajorVersion{3} \def\JadeTeXMinorVersion{13} \def\JadeTeXDate{2003/04/27} \documentclass{minimal} \RequirePackage{array}[1995/01/01] \RequirePackage{longtable}[1995/01/01] \RequirePackage{color}[1997/09/09] \RequirePackage{colortbl} \RequirePackage{marvosym} \RequirePackage{graphicx}[1997/06/09] \IfFileExists{multicol.sty} {\RequirePackage{multicol}[1997/12/16]} {\newenvironment{multicols}[1]% {\typeout{Warning, at line \the\inputlineno, multicol package not available}}{}% } \RequirePackage[normalem]{ulem} \RequirePackage{fancyhdr} \makeatletter \count@\time \divide\count@ 60 \count2=-\count@ \multiply\count2 60 \advance\count2 \time \edef\today{% \the\year/\two@digits{\the\month}/\two@digits{\the\day}:% \two@digits{\the\count@}:\two@digits{\the\count2}} \begingroup \catcode`P=12 \catcode`T=12 \lowercase{\endgroup \gdef\rem@ptetc#1.#2PT#3!{#1\ifnum#2>\z@.#2\fi}% } \def\strip@pt@and@otherjunk#1{\expandafter\rem@ptetc\the#1!} \makeatother \def\TeXFOTversion{0.0} \makeatletter \ifx\pushocplist\@undefined \RequirePackage[implicit=true,colorlinks,linkcolor=black,bookmarks=true]{hyperref}[2000/03/01] \def\PDFBorders{0 0 0} \RequirePackage[dsssl]{inputenc}[1997/12/20] \RequirePackage{mlnames} \RequirePackage{unicode} \def\DefineCharacter#1#2#3{\expandafter\def\csname!#1\endcsname{#3}} \def\DefineEntity#1#2{\expandafter\def\csname Ent#1\endcsname{#2}} \def\Entity#1{\csname Ent#1\endcsname} \input ucharacters.sty \input uentities.sty \DefineCharacter{32}{20}{\space } \DefineCharacter{33}{21}{!} \DefineCharacter{34}{22}{"} \DefineCharacter{35}{23}{\#} \DefineCharacter{36}{24}{\ifmmode \$\else \textdollar \fi}% \DefineCharacter{37}{25}{\%} \DefineCharacter{38}{26}{\&} \DefineCharacter{39}{27}{\textquotesingle } \DefineCharacter{40}{28}{(} \DefineCharacter{41}{29}{)} \DefineCharacter{42}{2A}{\ensuremath{\ast }} \DefineCharacter{43}{2B}{\ensuremath{+}} \DefineCharacter{44}{2C}{,} \DefineCharacter{45}{2D}{\ensuremath{-}} \DefineCharacter{46}{2E}{.} \DefineCharacter{47}{2F}{/} \DefineCharacter{48}{30}{0} \DefineCharacter{49}{31}{1} \DefineCharacter{50}{32}{2} \DefineCharacter{51}{33}{3} \DefineCharacter{52}{34}{4} \DefineCharacter{53}{35}{5} \DefineCharacter{54}{36}{6} \DefineCharacter{55}{37}{7} \DefineCharacter{56}{38}{8} \DefineCharacter{57}{39}{9} \DefineCharacter{58}{3A}{:} \DefineCharacter{59}{3B}{\ensuremath{;}} \DefineCharacter{60}{3C}{\ensuremath{<}} \DefineCharacter{61}{3D}{=} \DefineCharacter{62}{3E}{\ensuremath{>}} \DefineCharacter{63}{3F}{?} \DefineCharacter{64}{40}{@} \DefineCharacter{65}{41}{A} \DefineCharacter{66}{42}{B} \DefineCharacter{67}{43}{C} \DefineCharacter{68}{44}{D} \DefineCharacter{69}{45}{E} \DefineCharacter{70}{46}{F} \DefineCharacter{71}{47}{G} \DefineCharacter{72}{48}{H} \DefineCharacter{73}{49}{I} \DefineCharacter{74}{4A}{J} \DefineCharacter{75}{4B}{K} \DefineCharacter{76}{4C}{L} \DefineCharacter{77}{4D}{M} \DefineCharacter{78}{4E}{N} \DefineCharacter{79}{4F}{O} \DefineCharacter{80}{50}{P} \DefineCharacter{81}{51}{Q} \DefineCharacter{82}{52}{R} \DefineCharacter{83}{53}{S} \DefineCharacter{84}{54}{T} \DefineCharacter{85}{55}{U} \DefineCharacter{86}{56}{V} \DefineCharacter{87}{57}{W} \DefineCharacter{88}{58}{X} \DefineCharacter{89}{59}{Y} \DefineCharacter{90}{5A}{Z} \DefineCharacter{91}{5B}{[} \DefineCharacter{92}{5C}{\ifmmode \backslash \else \textbackslash \fi}% \DefineCharacter{93}{5D}{]} \DefineCharacter{94}{5E}{\^{}} \DefineCharacter{95}{5F}{\ensuremath{\_}} \DefineCharacter{96}{60}{\textasciigrave } \DefineCharacter{97}{61}{a} \DefineCharacter{98}{62}{b} \DefineCharacter{99}{63}{c} \DefineCharacter{100}{64}{d} \DefineCharacter{101}{65}{e} \DefineCharacter{102}{66}{f} \DefineCharacter{103}{67}{g} \DefineCharacter{104}{68}{h} \DefineCharacter{105}{69}{i} \DefineCharacter{106}{6A}{j} \DefineCharacter{107}{6B}{k} \DefineCharacter{108}{6C}{l} \DefineCharacter{109}{6D}{m} \DefineCharacter{110}{6E}{n} \DefineCharacter{111}{6F}{o} \DefineCharacter{112}{70}{p} \DefineCharacter{113}{71}{q} \DefineCharacter{114}{72}{r} \DefineCharacter{115}{73}{s} \DefineCharacter{116}{74}{t} \DefineCharacter{117}{75}{u} \DefineCharacter{118}{76}{v} \DefineCharacter{119}{77}{w} \DefineCharacter{120}{78}{x} \DefineCharacter{121}{79}{y} \DefineCharacter{122}{7A}{z} \DefineCharacter{123}{7B}{\ensuremath{\lbrace }} \DefineCharacter{124}{7C}{\ensuremath{\vert }} \DefineCharacter{125}{7D}{\ensuremath{\rbrace }} \DefineCharacter{126}{7E}{\textasciitilde } \else \RequirePackage{omega}[1999/06/01] \background{greek} \RequirePackage{nohyperref} \RequirePackge{mlnames} \fi \def\checkFOTversion#1{% \ifx\\#1\\\def\TeXFOTmajor{2} \else \def\TeXFOTmajor{#1}% \fi \let\next\relax \ifnum\TeXFOTmajor>\JadeTeXMajorVersion \message{Your file was generated by Jade TeX backend version \TeXFOTmajor} \message{- these macros are for version \JadeTeXMajorVersion and lower. } \message{I'll stop here...} \let\next\@@end \fi \next} \def\AlignLeader{} \def\AsisWrapIndent{} \def\BackgroundColor{} \let\BackgroundColorRed\@empty \def\BackgroundLayer{} \def\BackgroundTile{} \def\BorderAlignment{} \def\BorderOmitAtBreak{} \def\BorderPresent{0} \def\BorderPriority{} \def\BoxBorderAlignment{} \def\BoxCornerRadius{} \def\BoxOpenEnd{} \def\BoxType{} \def\CellBackground{} \def\CellCrossed{} \def\CellRowAlignment{start} \def\CellBeforeRowMargin{\z@} \def\CellAfterRowMargin{\z@} \def\CellBeforeColumnMargin{\z@} \def\CellAfterColumnMargin{\z@} \def\Color{} \def\Country{} \def\DisplayAlignment{} \def\EndIndent{\z@} \def\EndMargin{} \def\ExpandTabs{} \def\FieldAlign{start} \def\FieldWidth{0pt} \def\FillingDirection{} \def\FirstLineStartIndent{0pt} \def\FloatOutLineNumbers{} \def\FloatOutMarginalia{} \def\FloatOutSidelines{} \def\fFamName{Times-Roman} % Use Adobe Times Roman by default \def\fPosture{normal} \def\fProportionateWidth{medium} \def\fSize{10pt} \def\fStructure{} \def\fWeight{medium} \def\GlyphAlignmentMode{} \def\GlyphReorderMethod{} \def\GlyphSubstMethod{} \def\HangingPunct{} \def\HeadingLevel{0} \def\Hyphenate{} \def\HyphenationKeep{} \def\HyphenationLadderCount{} \def\HyphenationMethod{} \def\HyphenationPushCharCount{} \def\HyphenationRemainCharCount{} \def\IgnoreRecordEnd{} \def\ImplicitBidiMethod{} \def\InhibitLineBreaks{} \def\InputWhitespaceTreatment{} \def\JustifyGlyphSpaceMaxAdd{} \def\JustifyGlyphSpaceMaxRemove{} \def\KernMode{} \def\Kern{} \def\Language{} \def\LastLineEndIndent{} \def\LastLineJustifyLimit{} \def\LastLineQuadding{} \def\Layer{0} \def\Ligature{} \def\LineBreakingMethod{} \def\LineCap{} \def\LineCompositionMethod{} \def\LineJoin{} \def\LineNumberSep{} \def\LineNumberSide{} \def\LineRepeat{} \def\LineSpacing{12pt} \def\Lines{} \def\MarginaliaKeepWithPrevious{} \def\MarginaliaSep{} \def\MarginaliaSide{} \def\MathDisplayMode{display} \def\MinLeaderRepeat{} \def\MinLeading{2\p@} \def\NColumnsSpanned{1} \def\NumberedLines{} \def\OrphanCount{} \def\PositionPreference{} \def\PrincipalModeSimultaneous{} \def\Quadding{start} \def\ScoreSpaces{} \def\SidelineSep{} \def\SidelineSide{} \def\SpanWeak{} \def\Span{0} \def\StartIndent{\z@} \def\StartMargin{} \def\TableAutoWidthMethod{} \def\TableCornerRadius{} \def\TablePartOmitMiddleFooter{0} \def\TablePartOmitMiddleHeader{0} \def\TruncateLeader{} \def\WidowCount{} \def\WritingMode{} \def\AlignLeader{1}% true \def\BreakAfter{0}% false \def\BreakAfterPriority{0}% \def\BreakBefore{0}% false \def\BreakBeforePriority{0}% \def\CoalesceId{0}% false \def\EntitySystemId{}% [required] \def\EscapementDirection{}% [=writing-mode] \def\EscapementSpaceAfterNom{\z@}% \def\EscapementSpaceAfterMin{\z@}% \def\EscapementSpaceAfterMax{\z@}% \def\IdrefAddress{}% \def\IsDisplay{0}% false \def\Keep{0}% false \def\KeepWithNext{0}% false \def\KeepWithPrevious{0}% false \def\MayViolateKeepAfter{0}% false \def\MayViolateKeepBefore{0}% false \def\MaxWidth{!} \def\MaxHeight{!} \def\NotationSystemId{}% [required] \def\Orientation{}% [required] \def\PageNColumns{1} \def\PageNumberRestart{0} \def\PageNumberFormat{1} \expandafter\def\csname PageNumbering@1\endcsname#1{% \expandafter\@arabic#1} \expandafter\def\csname PageNumbering@i\endcsname#1{% \expandafter\@roman#1} \expandafter\def\csname PageNumbering@I\endcsname#1{% \expandafter\@Roman#1} \expandafter\def\csname PageNumbering@a\endcsname#1{% \expandafter\@alph#1} \expandafter\def\csname PageNumbering@A\endcsname#1{% \expandafter\@Alph#1} \expandafter\def\csname PageNumbering@0\endcsname#1{% this shouldn't happen \expandafter\@arabic#1} \expandafter\def\csname PageNumbering@\endcsname#1{% \expandafter\@arabic#1} \def\PageBalanceColumns{0} \def\PageTwoSide{0} \def\TwoSideStartOnRight{0} \def\PageColumnSep{\z@} \def\GridColumnSep{\z@} \def\PositionPointShift{\z@} \def\PositionPointShiftFactor{} \def\PositionPointX{\z@}% ?? \def\PositionPointY{\z@}% ?? \def\PositionPreference{0}% false \def\ScaleType{max-uniform}% \def\ScaleX{}% [n/a] =scale \def\ScaleY{}% [n/a] =scale \def\ScoreLength{}% ?? \def\ScoreType{}% [required] =type \def\saConditional{0}% false =space-after \def\saForce{0}% false =space-after \def\saMax{0pt}% =space-after \def\saMaxFactor{0}% =space-after \def\saMin{0pt}% =space-after \def\saMinFactor{0}% =space-after \def\saNom{0pt}% =space-after \def\saNomFactor{0}% =space-after \def\saPriority{0}% =space-after \let\@sAfterMin\saMin \let\@sAfterMax\saMax \let\@sAfterNom\saNom \let\@sAfterPriority\saPriority \def\sbConditional{0}% false \def\sbForce{0}% false \def\sbMax{0pt}% \def\sbMaxFactor{0}% \def\sbMin{0pt}% \def\sbMinFactor{0}% \def\sbNom{0pt}% \def\sbNomFactor{0}% \def\sbPriority{0}% \newdimen\CurrentSpaceNom \newdimen\CurrentSpaceMin \newdimen\CurrentSpaceMax \newdimen\LastSpaceNom \newdimen\LastSpaceMin \newdimen\LastSpaceMax \CurrentSpaceNom\z@ \CurrentSpaceMax\z@ \CurrentSpaceMin\z@ \LastSpaceNom\z@ \LastSpaceMax\z@ \LastSpaceMin\z@ \def\LastSpaceConditional{0}% false \def\LastSpaceForce{0}% false \def\LastSpaceMaxFactor{0}% \def\LastSpaceMinFactor{0}% \def\LastSpaceNomFactor{0}% \def\LastSpacePriority{0}% \def\TruncateLeader{0}% false \def\Width{}% [required] * \def\Length{}% [context] \def\TableWidth{\hsize}% \def\ColumnIndex{}% [contextual] =column-number? \def\HeaderMargin{\z@} \def\FooterMargin{\z@} \def\LeftMargin{\z@} \def\RightMargin{\z@} \def\TopMargin{\z@} \def\BottomMargin{\z@} \def\PageWidth{211mm} \def\PageHeight{297mm} \def\placement{htbp} \edef\OldFontSize{\fSize} \edef\OldLineSpacing{\LineSpacing} \edef\OldFontPosture{\fPosture} \edef\OldFontProportionateWidth{\fProportionateWidth} \edef\OldFontWeight{\fWeight} \edef\OldfFamName{\fFamName} \let\pageFontSize\fSize \let\pageLineSpacing\LineSpacing \let\pageFontPosture\fPosture \let\pageFontProportionateWidth\fProportionateWidth \let\pageFontWeight\fWeight \let\pagefFamName\fFamName \let\ColorRed\@empty \def\listitem@content@mode{listitem-content-mode} \newtoks\JadeTeXtoks \def\@displaylevel{0} \def\NoLig#1{#1\ifmmode\else\/\fi} \def\DEBUG#1{\typeout{DBG: #1 at \the\inputlineno}} \let\Label\@empty \let\Element\@empty \def\Node#1{% \ifnum\Mathcount>1\relax \else \ifx\\#1\\\else \let\ProcessingMode\@empty #1% \ifx\ProcessingMode\@empty\else \ifx\ProcessingMode\listitem@content@mode\else \let\Label\@empty\let\Element\@empty \fi \fi \fi \fi } \def\endNode#1{% \let\Label\@empty\let\Element\@empty%\noindent } \def\PageLabel#1{% \@bsphack \expandafter\ifx\csname p@#1\endcsname\relax \else \protected@write\@auxout{}% {\string\pagelabel{#1}{\thepage}}% \fi \@esphack} \def\OriginalPageLabel#1{% \@bsphack\protected@write\@auxout{}% {\string\pagelabel{#1}{\thepage}}\@esphack} \def\pagelabel#1#2{\global\@namedef{p@#1}{#2}} \def\Pageref#1{\expandafter\@Setref\csname p@#1\endcsname{#1}} \def\@qqq{qqq} \def\@Setref#1#2{% \ifx#1\relax \immediate\write\@mainaux{\string\pagelabel{#2}{qqq}}% \protect\G@refundefinedtrue \nfss@text{\reset@font\bfseries ??}% \@latex@warning{Reference `#2' on page \thepage \space undefined}% \else \ifx#1\@qqq \protect\G@refundefinedtrue \nfss@text{\reset@font\bfseries ??}% \@latex@warning{Reference `#2' on page \thepage \space undefined}% \else \ifNestedLink{#1}% \else \hyper@@link[Page]{}{page.#1}{#1}% \fi \fi \fi } \def\insertCurrentNodePageNumber#1{% \bgroup \SetupICs{#1}% \InlineNIC \ifx\Label\@empty \Pageref{\Element}% \else \Pageref{\Label}% \fi \endInlineNIC \endSetupICs \egroup } \def\insertAlignmentPoint#1{} \def\@display{display} \newcount\Mathcount \def\MathSeq#1{% \bgroup \SetupICs{#1}% \FlowObjectSetup{0}% \global\advance\Mathcount by 1% \let\Action\relax \ifnum\Mathcount=1 \ifx\MathDisplayMode\@display \let\Action\Dmath \else \let\Action\Imath \fi \fi \Action } \def\endMathSeq{% \global\advance\Mathcount by -1% \let\Action\relax \ifnum\Mathcount=0 \ifx\MathDisplayMode\@display\let\Action\endDmath\else\let\Action\Imath\fi \fi \Action \endSetupICs \egroup } \def\Dmath{\begingroup\abovedisplayskip\Jadeskip\global\Jadeskip\z@\[} \def\endDmath{\]\endgroup} \def\Imath{$} \def\Cleanmath{\def\Node##1{}\def\endNode##1{}% \def\MathSeq##1{}\def\endMathSeq##1{} } \def\FenceSerial#1#2#3#4{#1\FlowObjectSetup{0}% {\Cleanmath \ifx\\#3\\\left.\else \let\plainCharacter\Character \let\Character\LeftDelimiterCharacter #3% \let\Character\plainCharacter\fi {#2}% \ifx\\#4\\\right.\else \let\plainCharacter\Character \let\Character\RightDelimiterCharacter #4% \let\Character\plainCharacter\fi }% } \let\plainCharacter\Character \def\LeftDelimiterCharacter#1{\DelimiterCharacter\left{#1}}% \def\RightDelimiterCharacter#1{\DelimiterCharacter\right{#1}}% \def\DelimiterCharacter#1#2{% \SetupICs{}% \expandafter\ifx\csname !#2\endcsname\relax <#2>\typeout{Warning: Unknown character #2, at \the\inputlineno}% \else\expandafter#1\csname !#2\endcsname\fi % #1 is \left or \right \ifdim\EscapementSpaceAfterNom=\z@ \else \@tempdima\EscapementSpaceAfterNom \advance\@tempdima by -\EscapementSpaceAfterMin \@tempdimb\EscapementSpaceAfterNom \advance\@tempdimb by -\EscapementSpaceAfterMax \hskip\EscapementSpaceAfterNom plus \@tempdimb minus \@tempdima% \fi \endSetupICs{}% } \def\FractionSerial#1{#1\FlowObjectSetup{0}\bgroup} \def\endFractionSerial{\egroup} \def\FractionDenominator{} \def\endFractionDenominator{} \def\FractionNumerator{} \def\endFractionNumerator{\over } \def\insertFractionBar{} \def\MarkOver#1#2\endMarkOver{} \def\MarkUnder#1#2\endMarkUnder{} \def\MarkSerial#1{} \def\endMarkSerial{} \def\MathOperatorSerial#1{#1\FlowObjectSetup{0}\begingroup\Cleanmath} \def\endMathOperatorSerial{\endgroup} \def\MathOperatorOperator#1#2\endMathOperatorOperator#3{#1% \mathop{#2}} \def\MathOperatorLowerLimit#1{#1_\bgroup} \def\endMathOperatorLowerLimit#1{\egroup} \def\MathOperatorUpperLimit#1{#1^\bgroup} \def\endMathOperatorUpperLimit#1{\egroup} \def\RadicalSerial#1\insertRadicalRadicalDefaulted#2#3\RadicalDegree#4#5\endRadicalDegree#6\endRadicalSerial{#1\FlowObjectSetup{0}% \ifx\\#5\\\ensuremath{\sqrt{#3}}\else\ensuremath{\root #5 \of {#3}}\fi} \newcount\GridCells \newcount\GridRows \newif\ifExplicitGrid \def\Grid#1{#1% \begingroup \FlowObjectSetup{0}% \Cleanmath \global\GridCells\@ne\global\GridRows0 \ifnum\NColumns=0 \ExplicitGridtrue\def\NColumns{25}% \else\ExplicitGridfalse\fi \begin{array}{*{\NColumns}{c}}% } \def\endGrid{\end{array}\endgroup} \def\GridCell#1{#1\FlowObjectSetup{0}} \def\endGridCell#1{% \ifnum\NColumns=\GridCells \global\GridCells\@ne \def\@tempa{\cr}% \else \global\advance\GridCells\@ne \def\@tempa{&}% \fi \@tempa} \def\NewColumn{&} \def\NewRow{\\} \def\Subscript#1#2{_{#2}} \def\Superscript#1#2{^{#2}} \def\Unmath#1#2{% {\SetupICs{#1}\mbox{#2}\endSetupICs}% } \def\ScriptSerial#1#2#3#4#5#6#7#8{% \ifx$#3#4$% \else \vphantom{#2}_{#4}^{#3}% \fi \ifx$#7#8$% {#2}% \else {\mathop{#2}\limits_{#8}^{#7}}\vphantom{#2}% \fi _{#6}^{#5}} \def\insertExternalGraphic#1{% \begingroup \SetupICs{#1}% \expandafter\ifx\csname insertExternalGraphicNotation\NotationSystemId\endcsname\relax% \insertExternalGraphicNotation% \else \csname insertExternalGraphicNotation\NotationSystemId\endcsname \fi \endgroup } \newbox\jadeGraphic \newdimen\jadeGraphicHeight \newdimen\jadeGraphicWidth \def\insertExternalGraphicNotation{% \ifnum\@TableNest>0\def\IsDisplay{0}\fi \ExternalGraphicNIC \ifcase\IsDisplay \setbox\jadeGraphic=\hbox{\expandafter\IncludeGraphic\EntitySystemId\\}% \noindent%Enter hmode \ifdim\PositionPointX>\z@ \kern -\PositionPointX \fi \ifnum\Layer>0% \jadeGraphicWidth=\wd\jadeGraphic \raisebox{-\PositionPointY}[\z@][\z@]{\box\jadeGraphic} \kern\PositionPointX\kern-\jadeGraphicWidth \else \jadeGraphicHeight=\ht\jadeGraphic \advance\jadeGraphicHeight by \dp\jadeGraphic \advance\jadeGraphicHeight by -\PositionPointY \raisebox{-\PositionPointY}[\jadeGraphicHeight][\PositionPointY]{% \box\jadeGraphic }% \fi \or% \DisplayNIC \@@par% \@tempdima\columnwidth \nointerlineskip \ifdim\EndIndent>\z@ \advance\@tempdima by-\EndIndent \fi \ifdim\StartIndent>\z@ \advance\@tempdima by-\StartIndent \moveright\StartIndent \fi \hbox to\@tempdima{% \ifx\DisplayAlignment\A@center\hfill\fi% \ifx\DisplayAlignment\A@end\hfill\fi% \expandafter\IncludeGraphic\EntitySystemId\\% \ifx\DisplayAlignment\A@center\hfill\fi% \ifx\DisplayAlignment\A@start\hfill\fi% }% \@@par% \else% \expandafter\IncludeGraphic\EntitySystemId\\% \fi \endExternalGraphicNIC \ifcase\IsDisplay \or \endDisplayNIC \fi } \def\insertExternalGraphicNotationTEX{% \input\EntitySystemId } \def\IncludeGraphic{\@ifnextchar<{\@IncludeGraphic}{\@IncludeGraphic<>}} \def\scale@max{max} \def\scale@false{false} \def\scale@maxuniform{max-uniform} \def\Exclams{!!} \def\@IncludeGraphic<#1>#2\\{% \ifx\ScaleType\scale@false \ifx\ScaleX\ScaleY \scalebox{\ScaleX}{\includegraphics{#2}}% \else \scalebox{\ScaleX}[\ScaleY]{\includegraphics{#2}}% \fi \else \ifx\ScaleType\scale@maxuniform \edef\MaxBoth{\MaxHeight\MaxWidth}% \ifx\MaxBoth\Exclams \includegraphics{#2}% \else \includegraphics[width=\MaxWidth,keepaspectratio=true, height=\MaxHeight]{#2}% \fi \else \ifx\ScaleType\scale@max \includegraphics[width=\MaxWidth,height=\MaxHeight, keepaspectratio=false]{#2}% \else \typeout{ERROR: invalid scale type of \ScaleType}% \fi \fi \fi } \def\insertPageNumber#1{#1% \csname PageNumbering@\PageNumberFormat\endcsname\c@page} \def\insertParagraphBreak#1{\@@par} \def\horizontal{horizontal} \def\vertical{vertical} \def\escapement{escapement} \def\LineThickness{1pt} \def\A@center{center} \def\A@end{end} \def\A@start{start} \def\insertRule#1{% \bgroup \SetupICs{#1}% \def\IsDisplay{0} \ifx\Orientation\horizontal\def\IsDisplay{1}\fi \ifx\Orientation\vertical\def\IsDisplay{1}\fi \RuleNIC \ifcase\IsDisplay \ifx\Orientation\escapement \ifx\Length\@empty \else \noindent\raisebox{\PositionPointShift}[\z@][\z@]{\vrule width \Length height \LineThickness depth \z@} \ifnum\Layer>0 \kern-\Length% \fi \fi \else \ifx\Length\@empty \else \raisebox{\PositionPointShift}[\z@][\z@]{\vrule width \LineThickness height \z@ depth \Length} \fi \kern-\LineThickness% \fi \or% \DisplayNIC \@@par% \@tempdima\linewidth \nointerlineskip \ifdim\EndIndent>\z@ \advance\@tempdima by-\EndIndent \fi \ifdim\StartIndent>\z@ \advance\@tempdima by-\StartIndent \moveright\StartIndent \fi \hbox to\@tempdima{% \ifx\DisplayAlignment\A@center\hfill\fi \ifx\DisplayAlignment\A@end\hfill\fi \ifx\Orientation\horizontal \ifx\Length\@empty\else \hbox to \Length\fi {\leaders\hrule height \LineThickness \hfill}% \else \hbox to \LineThickness {\leaders\hrule \ifx\Length\@empty\else height \Length \fi \relax \hfill}% \fi \ifx\DisplayAlignment\A@center\hfill\fi \ifx\DisplayAlignment\A@start\hfill\fi }% \nointerlineskip \@@par% \else% \typeout{ERROR: invalid IsDisplay value of \IsDisplay}% \fi \endRuleNIC \ifcase\IsDisplay \or \endDisplayNIC \fi \endSetupICs \egroup } \setlength\arraycolsep\z@ \setlength\tabcolsep\z@ \setlength\arrayrulewidth{.4\p@} \setlength\doublerulesep{2\p@} \def\arraybackslash{\let\\=\@arraycr} \renewcommand{\arraystretch}{0} \newcolumntype{L}[1]{>{\raggedright\arraybackslash}p{#1}} \newcolumntype{C}[1]{>{\centering\arraybackslash}p{#1}} \newcolumntype{R}[1]{>{\raggedleft\arraybackslash}p{#1}} \newcolumntype{T}[3]{@{\hspace{#1}}>{\raggedright\arraybackslash}p{#2}@{\hspace{#3}}} \newcolumntype{Y}[3]{@{\hspace{#1}}>{\centering\arraybackslash}p{#2}@{\hspace{#3}}} \newcolumntype{U}[3]{@{\hspace{#1}}>{\raggedleft\arraybackslash}p{#2}@{\hspace{#3}}} \newcolumntype{G}[3]{@{\hspace{#1}}>{\raggedright\arraybackslash}m{#2}@{\hspace{#3}}} \newcolumntype{H}[3]{@{\hspace{#1}}>{\centering\arraybackslash}m{#2}@{\hspace{#3}}} \newcolumntype{J}[3]{@{\hspace{#1}}>{\raggedleft\arraybackslash}m{#2}@{\hspace{#3}}} \newcolumntype{B}[3]{@{\hspace{#1}}>{\raggedright\arraybackslash}b{#2}@{\hspace{#3}}} \newcolumntype{N}[3]{@{\hspace{#1}}>{\centering\arraybackslash}b{#2}@{\hspace{#3}}} \newcolumntype{M}[3]{@{\hspace{#1}}>{\raggedleft\arraybackslash}b{#2}@{\hspace{#3}}} \newcolumntype{7}[4]{@{\hspace{#1}}>{\columncolor[rgb]{#4}\raggedright\arraybackslash}p{#2}@{\hspace{#3}}} \newcolumntype{8}[4]{@{\hspace{#1}}>{\columncolor[rgb]{#4}\centering\arraybackslash}p{#2}@{\hspace{#3}}} \newcolumntype{9}[4]{@{\hspace{#1}}>{\columncolor[rgb]{#4}\raggedleft\arraybackslash}p{#2}@{\hspace{#3}}} \newcolumntype{4}[4]{@{\hspace{#1}}>{\columncolor[rgb]{#4}\raggedright\arraybackslash}m{#2}@{\hspace{#3}}} \newcolumntype{5}[4]{@{\hspace{#1}}>{\columncolor[rgb]{#4}\centering\arraybackslash}m{#2}@{\hspace{#3}}} \newcolumntype{6}[4]{@{\hspace{#1}}>{\columncolor[rgb]{#4}\raggedleft\arraybackslash}m{#2}@{\hspace{#3}}} \newcolumntype{1}[4]{@{\hspace{#1}}>{\columncolor[rgb]{#4}\raggedright\arraybackslash}b{#2}@{\hspace{#3}}} \newcolumntype{2}[4]{@{\hspace{#1}}>{\columncolor[rgb]{#4}\centering\arraybackslash}b{#2}@{\hspace{#3}}} \newcolumntype{3}[4]{@{\hspace{#1}}>{\columncolor[rgb]{#4}\raggedleft\arraybackslash}b{#2}@{\hspace{#3}}} \newcount\@tmpcounta \def\JadeRowSpanBox#1{\csname jadeRowSpanBox#1\endcsname} \def\JadeRowSpanSpace#1{\csname jadeRowSpanSpace#1\endcsname} \def\JadeRowSpan{% \expandafter\ifx\csname jadeRowSpanBox\ColumnIndex\endcsname\relax \expandafter\newbox\csname jadeRowSpanBox\ColumnIndex\endcsname \expandafter\newdimen\csname jadeRowSpanSpace\ColumnIndex\endcsname \fi \setbox\JadeRowSpanBox{\ColumnIndex}\vtop\bgroup\noindent% } \def\endJadeRowSpan{% \egroup% \global\JadeRowSpanSpace{\ColumnIndex}\ht\JadeRowSpanBox{\ColumnIndex}% \global\advance\JadeRowSpanSpace{\ColumnIndex} by \dp\JadeRowSpanBox{\ColumnIndex}% \@tempdima\ht\JadeRowSpanBox{\ColumnIndex}% \@tempdimb\dp\JadeRowSpanBox{\ColumnIndex}% \@tmpcounta\NRowsSpanned% \advance\@tmpcounta by -1% \@tempdima\CellBeforeRowMargin% \@tempdimb\CellAfterRowMargin% \multiply\@tempdima by \@tmpcounta% \multiply\@tempdimb by \@tmpcounta% \global\advance\JadeRowSpanSpace{\ColumnIndex} by -\@tempdima% \global\advance\JadeRowSpanSpace{\ColumnIndex} by -\@tempdimb% \global\divide\JadeRowSpanSpace{\ColumnIndex} by \NRowsSpanned% \vtop to \JadeRowSpanSpace{\ColumnIndex}{\unvbox\JadeRowSpanBox{\ColumnIndex}} } \def\JadeRowSpanFiller{% \expandafter\ifx\csname jadeRowSpanBox\ColumnIndex\endcsname\relax \errmessage{Invalid row span identifier} \fi \vtop to \JadeRowSpanSpace{\ColumnIndex}{}% } \def\insertTableAfterColumnBorder#1{} \def\insertTableAfterRowBorder#1{} \def\insertTableBeforeColumnBorder#1{} \def\insertTableBeforeRowBorder#1{} \def\insertTableCellAfterColumnBorder#1{\edef\AfterCol{\BorderPresent}} \def\insertTableCellAfterRowBorder#1{\edef\AfterRow{\BorderPresent}} \def\insertTableCellBeforeColumnBorder#1{\edef\BeforeCol{\BorderPresent}} \def\insertTableCellBeforeRowBorder#1{\edef\BeforeRow{\BorderPresent}} \def\insertTableColumn#1{#1} \def\BOX#1{% \SetupICs{#1}% \fboxrule\LineThickness \@tempdima\columnwidth \ifdim\EndIndent>\z@ \advance\@tempdima by-\EndIndent \fi \ifdim\StartIndent>\z@ \advance\@tempdima by-\StartIndent \hspace*{\StartIndent}% \fi \advance\@tempdima by-\StartIndent \setbox0\vbox\bgroup\def\StartIndent{\z@}\hsize\@tempdima\ignorespaces} \def\endBOX{% \ifhmode\unskip\fi \egroup% % FIXME: we aren't handling box-type: 'both \ifx\BackgroundColorRed\@empty \ifdim\ht0>\ht\strutbox \noindent\fbox{\box0}% \else \setbox0\vbox{\unvbox0\global\setbox1\lastbox}% \noindent\fbox{\kern-\parindent\unhbox1\unskip\unskip}% \fi \else \c@lor@RGB@rgb{\BackgroundColorRed}\@tempa \c@lor@RGB@rgb{\BackgroundColorGreen}\@tempb \c@lor@RGB@rgb{\BackgroundColorBlue}\@tempc \ifdim\ht0>\ht\strutbox \noindent\colorbox[rgb]{\@tempa, \@tempb, \@tempc}{\box0}% \else \setbox0\vbox{\unvbox0\global\setbox1\lastbox}% \noindent\colorbox[rgb]{\@tempa, \@tempb, \@tempc}{\kern-\parindent\unhbox1\unskip\unskip}% \fi \fi% } \def\closeOrOpenMulticols#1{% % juggling with nesting levels {#1\global\edef\SavedSpan{\Span}}% \ifnum\@displaylevel=0\relax\ifnum\PageNColumns>1\relax % close \ifnum\SavedSpan>1\relax \ifnum\col@number>1\relax % in multicols \ifnum\PageBalanceColumns>0 \end{multicols} \else % \endmulticols* \vfill\end{multicols} \fi \fi % or delayed open \else % not \ifnum\SavedSpan>1\relax \ifnum\col@number=1 % not in multicols \columnsep\PageColumnSep \ifnum\PageBalanceColumns>0 \begin{multicols}{\PageNColumns} \else % \begin{multicols*}{\PageNColumns} \let\balance@columns@out \multi@column@out \begin{multicols}{\PageNColumns} \fi \fi \fi \fi\fi } \def\openMulticols{% \ifnum\@displaylevel=0\relax \def\@displaylevel{1}% % local to this nesting level, for use by endDisplayGroup \edef\@SavedSpan{\SavedSpan} \ifnum\PageNColumns>1\relax \ifnum\@SavedSpan>1\relax \ifnum\@SavedSpan=\PageNColumns\else \columnsep\PageColumnSep \ifnum\PageBalanceColumns>0 \begin{multicols}{\PageNColumns} \else % \begin{multicols*}{\PageNColumns} \let\balance@columns@out \multi@column@out \begin{multicols}{\PageNColumns} \fi \fi \fi \fi \else \def\@displaylevel{2}% \fi } \def\closeMulticols{% \ifnum\@displaylevel=1\ifnum\PageNColumns>1\relax \ifnum\@SavedSpan>1\relax \ifnum\@SavedSpan=\PageNColumns\else \ifnum\PageBalanceColumns>0 \end{multicols} \else % \endmulticols* \vfill\end{multicols} \fi \fi \fi \fi\fi } \def\Keep@Page{page} \def\Keep@Column{column} \newif\ifKeepPage \KeepPagefalse \def\DisplayGroup#1{\ifnum\@TableNest>0\SetupICs{#1}\else\@DisplayGroup{#1}\fi} \def\@DisplayGroup#1{% \closeOrOpenMulticols{#1} \begingroup \SetupICs{#1}% \FlowObjectSetup{1}% \ifx\Keep\Keep@Page\KeepPagetrue \else \ifx\Keep\Keep@Column\KeepPagetrue \else \KeepPagefalse \fi \fi \ifKeepPage \vbox\bgroup \fi \DisplayGroupNIC \ifnum\Mathcount>0\relax \else\everypar{\UseJadevskip{everypar}}\@@par \fi \FlowObjectSetup{1}% \openMulticols } \def\endDisplayGroup#1{\ifnum\@TableNest>0\else\@endDisplayGroup{#1}\fi} \def\@endDisplayGroup#1{% \closeMulticols \ifnum\Mathcount>0\relax\else \@@par \fi \endDisplayGroupNIC \ifKeepPage \egroup \fi \endgroup \gdef\SavedSpan{0}% \everypar{{\leavevmode\setbox\z@\lastbox \UseJadevskip{everypar}}% \everypar{\UseJadevskip {everypar}}% } } \newsavebox{\leaderbox} \def\Leader#1{#1\begin{LRbox}{\leaderbox}} \def\endLeader{\end{LRbox}\noindent\leaders\box\leaderbox\hfill} \newsavebox\dssslbox \def\LRbox#1{% \edef\reserved@a{% \endgroup \setbox#1\hbox{% \begingroup\aftergroup}% \def\noexpand\@currenvir{\@currenvir}}% \reserved@a \@endpefalse \color@setgroup\ignorespaces } \def\LRboxW#1#2{% \edef\reserved@a{% \endgroup \setbox#1\hbox to #2{% \begingroup\aftergroup}% \def\noexpand\@currenvir{\@currenvir}}% \reserved@a \@endpefalse \color@setgroup\ignorespaces } \def\endLRbox{\color@endgroup} \let\endLRboxW\endLRbox \def\LineField#1{\bgroup \SetupICs{#1}% \LineFieldNIC \FlowObjectSetup{0}% \begin{LRbox}{\dssslbox}% } \def\endLineField{% \end{LRbox}% \ifdim\wd\dssslbox>\FieldWidth\def\FieldWidth{\wd\dssslbox}\fi \makebox[\FieldWidth][\csname Fld@\FieldAlign\endcsname]{% \ifdim\PositionPointShift=\z@ \usebox{\dssslbox}% \else \raisebox{\PositionPointShift}{\usebox{\dssslbox}}% \fi \EndSetFont}% \endLineFieldNIC \endSetupICs \egroup } \newif\ifLabelElements \LabelElementstrue \newif\ifNestedLink \NestedLinkfalse \def\LinkType{link} \def\Link#1{% \begingroup \SetupICs{#1}% \ifx\Label\@empty\let\Label\Element\fi \hyper@linkstart{\LinkType}{\Label}% \NestedLinktrue } \def\endLink{% \hyper@linkend \NestedLinkfalse \endSetupICs \endgroup } \def\Marginalia#1{#1\FlowObjectSetup{0}} \def\endMarginalia{} \newcount\@TablePars \newcount\@ParNest \newcount\@TableNest \def\Par#1{% \everypar{\UseJadevskip{everypar}}\@@par \closeOrOpenMulticols{#1} \begingroup \SetupICs{#1}% \ParagraphNIC \FlowObjectSetup{1}% \openMulticols \paraSetup% } \def\TablePar#1{% \begingroup \let\@action\relax \global\advance\@ParNest by 1 \ifnum\@ParNest=1 \ifnum\@TablePars>0% \def\@action{\@@par}%\@arraycr}% \fi \else \ifnum\@ParNest>1 \ifnum\@TablePars>0\def\@action{\par}\fi \fi \fi \@action \SetupICs{#1}% \csname startQ@\Quadding\endcsname \FlowObjectSetup{1}% \paraSetup% } \def\FootnotePar#1{% \begingroup \let\@action\relax \global\advance\@ParNest by 1 \ifnum\@ParNest=1 \ifnum\@FootnotePars>0% \def\@action{\@@par}% \fi \else \ifnum\@ParNest>1 \ifnum\@FootnotePars>0\def\@action{\par}\fi \fi \fi \@action \SetupICs{#1}% \csname startQ@\Quadding\endcsname \FlowObjectSetup{1}% \paraSetup% } \def\HeadPar#1{\Par{#1}} \setcounter{tocdepth}{99} \def\@mysect#1#2#3{% \edef\@thishlabel{\csname theH#1\endcsname}% \pdfbookmark[#2]{#3}{\@thishlabel}% } \newcounter {headingOne} \newcounter {headingTwo}[headingOne] \newcounter {headingThree}[headingTwo] \newcounter {headingFour}[headingThree] \newcounter {headingFive}[headingFour] \def\theHheadingOne{\arabic{headingOne}} \def\theHheadingTwo{\theHheadingOne.\arabic{headingTwo}} \def\theHheadingThree{\theHheadingTwo.\arabic{headingThree}} \def\theHheadingFour{\theHheadingThree.\arabic{headingFour}} \def\theHheadingFive{\theHheadingFour.\arabic{headingFive}} \def\endHeadPar#1{% \ifnum\@TableNest>0 \ifnum\@ParNest>1 \ifnum\@TablePars>0\box\@@par\fi \fi \csname endQ@\Quadding\endcsname\null \global\advance\@TablePars by 1 \global\advance\@ParNest by -1 \else \ifnum\HeadingLevel>0% \ifnum\HeadingLevel=1% \addtocounter{headingOne}{1}% \@mysect{headingOne}{0}{\HeadingText}% \else\ifnum\HeadingLevel=2% \addtocounter{headingTwo}{1}% \@mysect{headingTwo}{1}{\HeadingText}% \else\ifnum\HeadingLevel=3% \addtocounter{headingThree}{1}% \@mysect{headingThree}{2}{\HeadingText}% \else\ifnum\HeadingLevel=4% \addtocounter{headingFour}{1}% \@mysect{headingFour}{3}{\HeadingText}% \else\ifnum\HeadingLevel=5% \addtocounter{headingFive}{1}% \@mysect{headingFive}{4}{\HeadingText}% \fi \fi \fi \fi \fi \fi \closeMulticols \@@par \endParagraphNIC \fi \endSetupICs \endgroup \everypar{{\leavevmode\setbox\z@\lastbox \UseJadevskip{everypar}}% \everypar{\UseJadevskip {everypar}}% } } \def\endPar#1{% \ifnum\@TableNest>0 \let\@action\relax \ifnum\@ParNest>1 \ifnum\@TablePars>0\def\@action{\@@par}\fi \fi \@action \csname endQ@\Quadding\endcsname\null \global\advance\@TablePars by 1 \global\advance\@ParNest by -1 \else \closeMulticols \@@par \endParagraphNIC \fi \endSetupICs \endgroup \everypar{{\leavevmode\setbox\z@\lastbox \UseJadevskip{everypar}}% \everypar{\UseJadevskip {everypar}}% } } \def\endFootnotePar#1{% \let\@action\relax \ifnum\@ParNest>1 \ifnum\@FootnotePars>0\def\@action{\@@par}\fi \fi \@action \csname endQ@\Quadding\endcsname\null \global\advance\@FootnotePars by 1 \global\advance\@ParNest by -1 \endSetupICs \endgroup \everypar{{\leavevmode\setbox\z@\lastbox \UseJadevskip{everypar}}% \everypar{\UseJadevskip {everypar}}% } } \def\Scoreafter{\uline} \def\Scorethrough{\sout} \def\Scorebefore{} \def\Score#1#2\endScore{#1% \csname Score\ScoreType\endcsname{#2}% } \def\Scroll{\SpS} \def\endScroll{\endSpS} \newdimen\CurPosShift\CurPosShift\z@ \newif\if@Raised \def\Seq#1{% \ifInSpS\begingroup\fi \SetupICs{#1}% \ifx \@nodocument\relax \else \typeout{Jade begin document sequence at \the\inputlineno}% \JadeSetPage \JadeBeginDocument \ifnum\PageNColumns>1 \columnsep\PageColumnSep \ifnum\PageBalanceColumns>0 \begin{multicols}{\PageNColumns} \else % begin\{multicols*}{\PageNColumns} \let\balance@columns@out \multi@column@out \begin{multicols}{\PageNColumns} \fi \fi \fi \FlowObjectSetup{0}% \@Raisedfalse \ifdim\PositionPointShift=\CurPosShift \else \@tempdima\PositionPointShift \ifdim\PositionPointShift>\CurPosShift \advance\@tempdima by -\CurPosShift \else \advance\@tempdima by \CurPosShift \fi \CurPosShift\PositionPointShift \@Raisedtrue \fi \ifnum\@TableNest>0\else\if@Raised\leavevmode\raise\@tempdima\hbox\bgroup\fi\fi } \def\endSeq{% \ifnum\@TableNest>0\else\if@Raised\egroup\fi\fi \EndSetFont \endSetupICs \@Raisedfalse \ifInSpS\endgroup\fi } \def\SideLine#1{#1} \def\endSideLine{} \def\JadeSetPage{% \ifnum\PageNumberRestart=1 \global\c@page \@ne \fi \ifnum\PageTwoSide=0 \global\@twosidefalse \else \global\@twosidetrue \fi \oddsidemargin\LeftMargin \ifnum\PageTwoSide=0 \evensidemargin\LeftMargin \else \evensidemargin\RightMargin \fi \topmargin\HeaderMargin \headheight\LineSpacing \headsep\TopMargin \advance\headsep by -\HeaderMargin \advance\headsep by -\LineSpacing \footskip\BottomMargin \advance\footskip by -\FooterMargin \paperwidth\PageWidth \paperheight\PageHeight \textheight\paperheight \textwidth\paperwidth \advance\textheight by -\TopMargin \advance\textheight by -\BottomMargin \advance\textwidth by -\LeftMargin \advance\textwidth by -\RightMargin \ifx\pdfimage\@undefined \else \global\pdfpagewidth\paperwidth \global\pdfpageheight\paperheight \fi \@colht\textheight \@colroom\textheight \vsize\textheight \headwidth\textwidth \linewidth\textwidth \columnwidth\textwidth \hsize\columnwidth \linewidth\hsize \headheight12pt \let\pageFontSize\fSize \let\pageLineSpacing\LineSpacing \let\pageFontPosture\fPosture \let\pageFontProportionateWidth\fProportionateWidth \let\pageFontWeight\fWeight \let\pagefFamName\fFamName \arraycolsep\GridColumnSep } \JadeSetPage \def\JadeBeginDocument{% \@clubpenalty\clubpenalty \begingroup\@floatplacement\@dblfloatplacement \makeatletter\let\@writefile\@gobbletwo \global \let \@multiplelabels \relax \@input{\jobname.aux}% \endgroup \immediate\openout\@mainaux\jobname.aux \immediate\write\@mainaux{\relax}% \process@table \let\glb@currsize\@empty %% Force math initialisation. \normalsize \everypar{\UseJadevskip{everypar}}% \@noskipsecfalse \let \@refundefined \relax \let\AtBeginDocument\@firstofone \ifdim\topskip<1sp\global\topskip 1sp\relax\fi \global\@maxdepth\maxdepth \@begindocumenthook \global\let\@begindocumenthook\@undefined \global\let\@filelist\relax \global\let\@addtofilelist\@gobble \gdef\do##1{\global\let ##1\@notprerr}% \@preamblecmds \global\let \@nodocument \relax \global\let\do\noexpand \ignorespaces } \newif\ifInSpS \def\SpS#1{% \InSpStrue \DoFOBSettrue \SetupICs{#1}% \gdef\thepage{\csname PageNumbering@\PageNumberFormat\endcsname\c@page}% \JadeSetPage \ifx \@nodocument\relax \else \JadeBeginDocument \fi \closeOrOpenMulticols{#1}% \DisplayNIC \openMulticols \FlowObjectSetup{0}% } \def\endSpS{% \DoFOBSetfalse \ifnum\PageNColumns>1\relax \ifnum\col@number>1\relax % in multicols \ifnum\PageBalanceColumns>0 \end{multicols} \else % \endmulticols* \vfill\end{multicols} \fi \fi \fi \if@twoside \ifnum\TwoSideStartOnRight=1 \cleardoublepage \else \clearpage \fi \else \clearpage \fi \fancyhf{}% \endDisplayNIC \let\FancyHook\@empty \let\FancyFirstHook\@empty \global\let\@sAfterMin\saMin \global\let\@sAfterMax\saMax \global\let\@sAfterNom\saNom \global\let\@sAfterPriority\saPriority \InSpSfalse } \def\SpSCenterFooter#1{\Setfoot[C]{#1}{CenterFooter}} \def\SpSCenterHeader#1{\Sethead[C]{#1}{CenterHeader}} \def\SpSLeftFooter#1{\Setfoot[L]{#1}{LeftFooter}} \def\SpSLeftHeader#1{\Sethead[L]{#1}{LeftHeader}} \def\SpSRightFooter#1{\Setfoot[R]{#1}{RightFooter}} \def\SpSRightHeader#1{\Sethead[R]{#1}{RightHeader}} \def\SpSOtherBackCenterFooter#1{\Setfoot[CE]{#1}{OtherBackCenterFooter}} \def\SpSOtherBackLeftFooter#1{\Setfoot[LE]{#1}{OtherBackLeftFooter}} \def\SpSOtherBackRightFooter#1{\Setfoot[RE]{#1}{OtherBackRightFooter}} \def\SpSOtherBackRightHeader#1{\Sethead[RE]{#1}{OtherBackRightHeader}} \def\SpSOtherBackCenterHeader#1{\Sethead[CE]{#1}{OtherBackCenterHeader}} \def\SpSOtherBackLeftHeader#1{\Sethead[LE]{#1}{OtherBackLeftHeader}} \def\SpSOtherFrontCenterFooter#1{\Setfoot[CO]{#1}{OtherFrontCenterFooter}} \def\SpSOtherFrontLeftFooter#1{\Setfoot[LO]{#1}{OtherFrontLeftFooter}} \def\SpSOtherFrontRightFooter#1{\Setfoot[RO]{#1}{OtherFrontRightFooter}} \def\SpSOtherFrontRightHeader#1{\Sethead[RO]{#1}{OtherFrontRightHeader}} \def\SpSOtherFrontCenterHeader#1{\Sethead[CO]{#1}{OtherFrontCenterHeader}} \def\SpSOtherFrontLeftHeader#1{\Sethead[LO]{#1}{OtherFrontLeftHeader}} \def\SpSFirstBackCenterFooter#1{\SetFirstfoot[CE]{#1}{FirstBackCenterFooter}} \def\SpSFirstBackLeftFooter#1{\SetFirstfoot[LE]{#1}{FirstBackLeftFooter}} \def\SpSFirstBackRightFooter#1{\SetFirstfoot[RE]{#1}{FirstBackRightFooter}} \def\SpSFirstBackCenterHeader#1{\SetFirsthead[CE]{#1}{FirstBackCenterHeader}} \def\SpSFirstBackLeftHeader#1{\SetFirsthead[LE]{#1}{FirstBackLeftHeader}} \def\SpSFirstBackRightHeader#1{\SetFirsthead[RE]{#1}{FirstBackRightHeader}} \def\SpSFirstFrontCenterFooter#1{\SetFirstfoot[CO]{#1}{FirstFrontCenterFooter}} \def\SpSFirstFrontLeftFooter#1{\SetFirstfoot[LO]{#1}{FirstFrontLeftFooter}} \def\SpSFirstFrontRightFooter#1{\SetFirstfoot[RO]{#1}{FirstFrontRightFooter}} \def\SpSFirstFrontCenterHeader#1{\SetFirsthead[CO]{#1}{FirstFrontCenterHeader}} \def\SpSFirstFrontLeftHeader#1{\SetFirsthead[LO]{#1}{FirstFrontLeftHeader}} \def\SpSFirstFrontRightHeader#1{% \SetFirsthead[RO]{#1}{FirstFrontRightHeader}% \pagestyle{jadeother}% \thispagestyle{jadefirst}% } \fancypagestyle{jadeother}{\fancyhf{}\FancyHook}% \fancypagestyle{jadefirst}{\fancyhf{}\FancyFirstHook}% \def\Sethead[#1]#2#3{% \ifx\\#2\\\relax\else \g@addto@macro\FancyHook{\fancyhead[#1]{\setnormal#2}}% \fi } \def\Setfoot[#1]#2#3{% \ifx\\#2\\\relax\else \g@addto@macro\FancyHook{\fancyfoot[#1]{\setnormal#2}}% \fi } \def\SetFirsthead[#1]#2#3{% \ifx\\#2\\\relax\else \g@addto@macro\FancyFirstHook{\fancyhead[#1]{\setnormal#2}}% \fi } \def\SetFirstfoot[#1]#2#3{% \ifx\\#2\\\relax\else \g@addto@macro\FancyFirstHook{\fancyfoot[#1]{\setnormal#2}}% \fi } \def\FancyHook{} \def\FancyFirstHook{} \pagestyle{jadeother} \def\Table#1{\TableNIC\UseJadevskip{table}\SetupICs{#1}} \def\endTable{\endSetupICs\endTableNIC} \def\@full{full} \LTpre=\z@ \LTpost=\z@ \newenvironment{TeXTable}[3]{% width, ncolumns, template \global\advance\@TableNest by 1 \ifx\TableWidth\@full\def\TableWidth{\hsize}\fi \FlowObjectSetup{0}% \let\Node\@gobble \let\endNode\@gobble \let\Par\TablePar \setlength\LTleft\StartIndent \setlength\LTright\fill \ifnum\PageNColumns>1 \tabular{#3}% \else \ifnum\@TableNest>1 \tabular{#3}% \else \longtable{#3}% \fi \fi }{% \ifnum\PageNColumns>1 \endtabular \else \ifnum\@TableNest>1 \endtabular \else \endlongtable \fi \fi \ifvoid\@mpfootins\else \vskip\skip\@mpfootins \normalcolor \unvbox\@mpfootins \fi \global\advance\@TableNest by -1 } \def\Hline{\hline} \def\Cline{\cline} \let\TeXTableCell=\multicolumn \def\TableCell#1{% \TableCellNIC% \SetupICs{#1}% \FlowObjectSetup{0}% \rule[2ex]{0pt}{\CellBeforeRowMargin}% \global\@TablePars0% \ifnum\NRowsSpanned>1% Row spanning \JadeRowSpan% \else \ifnum\TeXRowSpanFiller>0% \JadeRowSpanFiller \fi \fi% } \def\endTableCell#1{% \ifnum\NRowsSpanned>1% \endJadeRowSpan% \fi \rule[-\CellAfterRowMargin]{0pt}{0pt}% \endSetupICs \endTableCellNIC } \def\TablePart#1{#1\FlowObjectSetup{0}} \def\TablePartHeader#1{} \def\TablePartFooter#1{} \def\endTablePartFooter#1{} \def\endTablePartHeader#1{% \ifnum\TablePartOmitMiddleHeader=1 \endfirsthead \else \endhead \fi} \def\endTablePart{} \def\TableRow#1{#1} \def\endTableRow#1{\\} \def\Character#1{% \SetupICs{}% \ifnum#1<255\char#1\else \expandafter\ifx\csname !#1\endcsname\relax <#1>\typeout{Warning: Unknown character #1, at \the\inputlineno}% \else\csname !#1\endcsname\fi \fi \ifdim\EscapementSpaceAfterNom=\z@ \else \@tempdima\EscapementSpaceAfterNom \advance\@tempdima by -\EscapementSpaceAfterMin \@tempdimb\EscapementSpaceAfterNom \advance\@tempdimb by -\EscapementSpaceAfterMax \hskip\EscapementSpaceAfterNom plus \@tempdimb minus \@tempdima% \fi \endSetupICs{}% } \newcount\DisplayStack \newcount\LastDisplayStack \newif\ifBreakMe \newif\ifJadeskipready \Jadeskipreadyfalse \newskip\Jadeskip \newskip\Jadelastskip \newskip\jadetempskip \BreakMefalse \DisplayStack0 \LastDisplayStack-1 \let\@sBeforeMin\sbMin \let\@sBeforeMax\sbMax \let\@sBeforeNom\sbNom \let\@sBeforePriority\sbPriority \def\@force{force} \def\Jadevskip#1#2{\global\Jadeskipreadytrue\global\Jadeskip#1\relax} \def\UseJadevskip#1{% \global\Jadeskipreadyfalse \ifdim\Jadeskip=\z@\else \ifvmode \vskip\Jadeskip\global\Jadeskip\z@ \else \setbox\z@\lastbox\par \vskip\Jadeskip\global\Jadeskip\z@ {\everypar{}\noindent\box\z@}% \fi \fi } \def\QueryPageBreak{% \ifBreakMe \ifvmode \penalty \@M \else \@bsphack \vadjust{\penalty \@M}% \@esphack \fi \else \ifnum\KeepWithNext=1 \penalty-600 \else \penalty \z@ \fi \fi } \def\DisplayNIC{% \advance\DisplayStack by 1 \QueryPageBreak \let\@sAfterMin\saMin \let\@sAfterMax\saMax \let\@sAfterNom\saNom \let\@sAfterPriority\saPriority \begingroup \ifx\BreakBefore\relax\else \csname Break@\BreakBefore\endcsname \fi \CurrentSpaceMin=\sbMin \CurrentSpaceNom=\sbNom \CurrentSpaceMax=\sbMax \edef\CurrentSpacePriority{\sbPriority}% \ifx\sbPriority\@force \ifx\LastSpacePriority\@force \advance\CurrentSpaceMin by \LastSpaceMin \advance\CurrentSpaceNom by \LastSpaceNom \advance\CurrentSpaceMax by \LastSpaceMax \fi \else \ifx\LastSpacePriority\@force \CurrentSpaceMin=\LastSpaceMin \CurrentSpaceNom=\LastSpaceNom \CurrentSpaceMax=\LastSpaceMax \else \ifnum\CurrentSpacePriority>\LastSpacePriority \relax \else \ifnum\LastSpacePriority>\CurrentSpacePriority \CurrentSpaceMin=\LastSpaceMin \CurrentSpaceNom=\LastSpaceNom \CurrentSpaceMax=\LastSpaceMax \else \ifdim\CurrentSpaceNom>\LastSpaceNom \relax \else \ifdim\LastSpaceNom>\CurrentSpaceNom \CurrentSpaceMin=\LastSpaceMin \CurrentSpaceNom=\LastSpaceNom \CurrentSpaceMax=\LastSpaceMax \else \ifdim\LastSpaceMax<\CurrentSpaceMax \CurrentSpaceMax\LastSpaceMax \fi \ifdim\LastSpaceMin>\CurrentSpaceMin \CurrentSpaceMin\LastSpaceMin \fi \fi \fi \fi \fi \fi \fi \@tempdima\CurrentSpaceNom \advance\@tempdima by -\CurrentSpaceMin \@tempdimb\CurrentSpaceNom \advance\@tempdimb by -\CurrentSpaceMax \QueryPageBreak \jadetempskip=\CurrentSpaceNom plus \@tempdimb minus \@tempdima \Jadevskip{\the\jadetempskip}{startDisplayNIC}% \let\Keep\relax \let\BreakBefore\relax \let\BreakAfter\relax \let\KeepWithPrevious\relax \let\MayViolateKeepBefore\relax \let\MayViolateKeepAfter\relax \def\sbMin{\z@}% \def\sbMax{\z@}% \def\sbNom{\z@}% \def\sbPriority{0}% \def\saMin{\z@}% \def\saMax{\z@}% \def\saNom{\z@}% \def\saPriority{0}% \ifdim\Jadeskip=\z@\else\the\everypar\fi } \def\endDisplayNIC{% \ifnum\KeepWithNext=1 \penalty\@M\global\BreakMetrue\else\global\BreakMefalse \fi \ifdim\Jadeskip=\z@\else\the\everypar\fi \endgroup \global\LastSpaceNom=\@sAfterNom \global\LastSpaceMax=\@sAfterMax \global\LastSpaceMin=\@sAfterMin \global\edef\LastSpacePriority{\@sAfterPriority}% \@tempdima\@sAfterNom \advance\@tempdima by -\@sAfterMin \@tempdimb\@sAfterNom \advance\@tempdimb by -\@sAfterMax \jadetempskip=\@sAfterNom plus \@tempdimb minus \@tempdima \Jadevskip{\the\jadetempskip}{endDIsplayNIC}% \global\LastDisplayStack=\DisplayStack \advance\DisplayStack by -1 } \def\paraSetup{% \rightskip\EndIndent \leftskip\StartIndent \csname JQ@\Quadding\endcsname \csname L@\Language\endcsname \ifx\FirstLineStartIndent\@empty\relax \else\parindent\FirstLineStartIndent \fi \ifx\InputWhitespaceTreatment\@empty\relax \else\csname White@\InputWhitespaceTreatment\endcsname \fi \ifx\Lines\@empty\relax \else\csname Lines@\Lines\endcsname \fi } \def\InlineNIC{% \begingroup } \def\endInlineNIC{% \let\BreakBeforePriority\relax \let\BreakAfterPriority\relax \endgroup } \def\DisplayGroupNIC{% \DisplayNIC } \def\endDisplayGroupNIC{% \endDisplayNIC } \def\ExternalGraphicNIC{% \InlineNIC } \def\endExternalGraphicNIC{% \endInlineNIC } \def\BoxNIC{% \DisplayNIC \InlineNIC } \def\endBoxNIC{% \endInlineNIC \endDisplayNIC } \def\RuleNIC{% \DisplayNIC \InlineNIC } \def\endRuleNIC{% \endInlineNIC \endDisplayNIC } \def\LeaderNIC{% \InlineNIC } \def\LeaderNIC{% \InlineNIC } \let\TableNIC\DisplayNIC \let\endTableNIC\endDisplayNIC \def\TableColumnNIC{} \def\endTableColumnNIC{} \def\TableCellNIC{% \begingroup% \def\NColumnsSpanned{1}% \def\NRowsSpanned{1}% \def\ColumnIndex{0}% \def\TeXRowSpanFiller{0}% } \def\endTableCellNIC{\endgroup} \def\GridNIC{} \def\endGridNIC{} \def\GridCellNIC{} \def\endGridCellNIC{} \let\ParagraphNIC\DisplayNIC \let\LineFieldNIC\InlineNIC \let\endParagraphNIC\endDisplayNIC \let\endLineFieldNIC\endInlineNIC \newif\ifNeedsSelect \chardef\nonactive=10 \def\SetupICs#1{#1% \let\current@f@series\f@series \let\current@f@shape\f@shape \let\current@f@family\f@family \let\current@f@size\f@size \edef\LaTeXshape{\csname Width@\fProportionateWidth\endcsname \csname Weight@\fWeight\endcsname}% \ifx\LaTeXshape\@empty\def\LaTeXshape{m}\fi \edef\f@series{\LaTeXshape}% \edef\f@shape{\csname Posture@\fPosture\endcsname}% \IfFileExists{t1\fFamName.fd} {\def\f@family{\fFamName}} {\edef\f@family{% \expandafter\ifx\csname Family@\fFamName\endcsname\relax \csname Family@\DefaultfFamName\endcsname \else \csname Family@\fFamName\endcsname \fi}}% \set@fontsize\baselinestretch{\fSize}{\LineSpacing}% \selectfont \ifx\ColorRed\@empty\relax\else \RGBColor{\ColorRed}{\ColorGreen}{\ColorBlue}% \fi } \def\endSetupICs{} \def\@madelink{ } \newif\ifDoFOBSet \DoFOBSettrue \def\FlowObjectSetup#1{% \ifDoFOBSet \ifLabelElements \ifx\Label\@empty\let\Label\Element\fi \fi \ifx\Label\@empty\else \expandafter\ifx\csname x@\Label\endcsname\@madelink \else \bgroup \ifNestedLink \else \hyper@anchorstart{\Label}\hyper@anchorend \PageLabel{\Label}% \expandafter\gdef\csname x@\Label\endcsname{ }% \fi \egroup \let\Label\@empty \let\Element\@empty \fi \fi \fi } \def\fps@figure{htbp} % prefer figures to be placed here \def\ftype@figure{1} \def\PageFloat#1{\SetupICs{#1}% \ifnum\Span>0 \def\Span{0}% \typeout{JadeTeX WARNING: specifying column spans for floats not supported}% \fi \FlowObjectSetup{0}% \@dblfloat{figure}[\placement]% } \def\endPageFloat{\end@dblfloat} \def\Footnotesize{\@setfontsize\small\@ixpt{11}} \newcount\@FootnotePars \skip\@mpfootins = \skip\footins \long\def\PageFootnote#1#2{#1% \ifnum\@TableNest>0 \global\setbox\@mpfootins\vbox{% \unvbox\@mpfootins \reset@font\Footnotesize \hsize\TableWidth \leftskip\StartIndent \@parboxrestore \color@begingroup \@makefntext{% \rule\z@\footnotesep\ignorespaces#2\@finalstrut\strutbox}% \color@endgroup}% \else \insert\footins{% \let\Par\FootnotePar \let\endPar\endFootnotePar \global\@FootnotePars0% \reset@font\Footnotesize \interlinepenalty\interfootnotelinepenalty \splittopskip\footnotesep \splitmaxdepth \dp\strutbox \floatingpenalty \@MM \hsize\columnwidth \@parboxrestore \color@begingroup \@makefntext{% \rule\z@\footnotesep\ignorespaces#2\@finalstrut\strutbox} \color@endgroup}% \fi } \def\@makefntext#1{% \parindent 1em% \noindent #1} \def\RGBColor#1#2#3{% \c@lor@RGB@rgb{#1}\@tempa \c@lor@RGB@rgb{#2}\@tempb \c@lor@RGB@rgb{#3}\@tempc \color[rgb]{\@tempa, \@tempb, \@tempc}% } \def\c@lor@RGB@rgb#1#2{% \dimen@#1\p@ \divide\dimen@\@cclv \edef#2{\strip@pt\dimen@}} \def\EndSetFont{% \ifx\csname\fPosture Over\endcsname\relax \relax\else\csname\fPosture Over\endcsname\fi } \def\endFOT{%\let\normalcolor\relax \def\Hy@colorlink##1{}% \def\Hy@endcolorlink{}% \ifnum\col@number>1 \ifnum\PageBalanceColumns>0 \end{multicols} \else % \endmulticols* \vfill\end{multicols} \fi \fi \enddocument} \def\FOT#1{% \checkFOTversion{#1}% \hoffset-1in\voffset-1in \def\setnormal{% \let\fSize\pageFontSize \let\LineSpacing\pageLineSpacing \let\fPosture\pageFontPosture \let\fProportionateWidth\pageFontProportionateWidth \let\fWeight\pageFontWeight \let\fFamName\pagefFamName } \def\headrulewidth{0\p@}% \def\footrulewidth{0\p@}% \abovedisplayskip=\z@ \abovedisplayshortskip=\z@ \belowdisplayskip=\z@ \belowdisplayshortskip=\z@ \raggedbottom \clubpenalty=4000 \widowpenalty=2000 \setlength\emergencystretch{2in} \frenchspacing \fancyhf{}% \def\familydefault{ptm}% \fontfamily{\familydefault}\selectfont \pagenumbering{arabic}% \nonstopmode \Mathcount0 \let\default@color\current@color \InputIfFileExists{jadetex.cfg}{}{}% \ifLabelElements \typeout{Elements will be labelled}% \else \typeout{Elements will NOT be labelled}% \fi \makeatletter } \everyjob{% \typeout{JadeTeX \JadeTeXDate: \JadeTeXMajorVersion.\JadeTeXMinorVersion}% } \catcode`\^^M=10% \catcode0=9% \endinput %% %% End of file `jadetex.ltx'.