\def\filedate{1997/05/05}
\def\fileversion{0.32}
\def\docdate {1997/03/09}
%
% \iffalse
% File: jadetex.dtx Copyright (C) 1996,1997
% Sebastian Rahtz  <s.rahtz@elsevier.co.uk>
%
% Permission is hereby granted, free of charge, to any person obtaining
% a copy of this software and associated documentation files (the
% ``Software''), to deal in the Software without restriction, including
% without limitation the rights to use, copy, modify, merge, publish,
% distribute, sublicense, and/or sell copies of the Software, and to
% permit persons to whom the Software is furnished to do so, subject to
% the following conditions:
% 
% The above copyright notice and this permission notice shall be included
% in all copies or substantial portions of the Software.
% 
% THE SOFTWARE IS PROVIDED ``AS IS'', WITHOUT WARRANTY OF ANY KIND, EXPRESS
% OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
% MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
% IN NO EVENT SHALL SEBASTIAN RAHTZ BE LIABLE FOR ANY CLAIM, DAMAGES OR
% OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
% ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
% OTHER DEALINGS IN THE SOFTWARE.
%
%<*driver>
\documentclass{ltxdoc}
\usepackage{times,array,longtable,colortbl}
\makeatletter
\def\arraybackslash{\let\\=\@arraycr}
\newcolumntype{P}[1]{>{\raggedright\arraybackslash}p{#1}}
\makeatother
\EnableCrossrefs
\CodelineIndex
\begin{document}
 \title{JADE DSSSL \TeX{} backend macros.\thanks{This file
        has version number \fileversion, last
        revised \filedate.}}
 \author{Sebastian Rahtz\\Email: \texttt{s.rahtz@elsevier.co.uk}}
 \date{\filedate}
 \maketitle
 \tableofcontents
 \DocInput{jadetex.dtx}
\end{document}
%</driver>
% \fi
% \CheckSum{1983}
% \section{Introduction}
% Developed from the skeleton by  David Megginson
% (\texttt{dmeggins@microstar.com}), who maintains Jade's
% \texttt{TeXFOTBuilder} module.
%
% This file can either be loaded before the Jade output
% or (better) made into a format file for fast loading; it
% sits on top of \LaTeX, so do:
% \begin{verbatim}
% initex \&latex jadetex.ltx '\dump'
% \end{verbatim}
% If you really want speed and memory, 
% prepare a even more cut down \LaTeX with unneeded chunks cut out.
% (such as the picture environment, cross-referencing etc). Be careful
% and be legal, please.
%
% We build on \LaTeX, but do not need a lot of the paraphernalia
% of the document classes, so we just load the \texttt{minimal} class,
% designed for this purpose. We also need access to
% input and output font encoding, color, graphics inclusion, and
% headers and footers; so we load some standard packages. The
% \texttt{inputenc} option is temporary, and needs more thought.
% Eventually we want Unicode input working, with Omega.
%<*package>
%    \begin{macrocode}
\documentclass[]{minimal}
\RequirePackage{graphics,color}
\RequirePackage[dsssl]{inputenc}
\RequirePackage[T1]{fontenc}
\RequirePackage{fancyhdr}
\RequirePackage{textcomp}
\makeatletter
%    \end{macrocode}
% \section{Inherited characteristics}
% Here we list the default values; non-inherited characteristics 
% will always be specified.
%    \begin{macrocode}
\def\AlignLeader{}
\def\AsisWrapIndent{}
\def\BackgroundColor{}
\def\BackgroundLayer{}
\def\BackgroundTile{}
\def\BorderAlignment{}
\def\BorderOmitAtBreak{}
\def\BorderPresent{}
\def\BorderPriority{}
\def\BoxBorderAlignment{}
\def\BoxCornerRadius{}
\def\BoxOpenEnd{}
\def\BoxType{}
\def\CellBackground{}
\def\CellCrossed{}
\def\CellRowAlignment{}
\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\FontFamilyName{Times Roman}
\def\FontName{ptm}         % Use Adobe Times Roman by default
\def\FontPosture{normal} 
\def\FontProportionateWidth{medium}
\def\FontSize{10pt}
\def\FontStructure{}
\def\FontWeight{medium}
\def\GlyphAlignmentMode{}
\def\GlyphReorderMethod{}
\def\GlyphSubstMethod{}
\def\HangingPunct{}
\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{}
\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{inline}
\def\MinLeaderRepeat{}
\def\NumberedLines{}
\def\OrphanCount{}
\def\PositionPreference{}
\def\PrincipalModeSimultaneous{}
\def\Quadding{}
\def\ScoreSpaces{}
\def\SidelineSep{}
\def\SidelineSide{}
\def\SpanWeak{}
\def\Span{}
\def\StartIndent{\z@}
\def\StartMargin{}
\def\TableAutoWidthMethod{}
\def\TableCornerRadius{}
\def\TablePartOmitMiddleFooter{}
\def\TablePartOmitMiddleHeader{}
\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\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\NotationSystemId{}% [required]
\def\Orientation{}% [required]
\def\PositionPointShift{\z@}
\def\PositionPointShiftFactor{}
\def\PositionPointX{}% ??
\def\PositionPointY{}% ??
\def\PositionPreference{0}%  false
\def\ScaleType{}% maxuniform =scale
\def\ScaleX{}% [n/a] =scale
\def\ScaleY{}% [n/a] =scale
\def\ScoreLength{}% ??
\def\ScoreType{}% [required] =type
\def\SpaceAfterConditional{0}%  false =space-after
\def\SpaceAfterForce{0}%  false =space-after
\def\SpaceAfterMax{0pt}% =space-after
\def\SpaceAfterMaxFactor{0}%  =space-after
\def\SpaceAfterMin{0pt}% =space-after
\def\SpaceAfterMinFactor{0}%  =space-after
\def\SpaceAfterNominal{0pt}% =space-after
\def\SpaceAfterNominalFactor{0}%  =space-after
\def\SpaceAfterPriority{0}%  =space-after
\def\SpaceBeforeConditional{0}%  false
\def\SpaceBeforeForce{0}%  false
\def\SpaceBeforeMax{0pt}%
\def\SpaceBeforeMaxFactor{0}%
\def\SpaceBeforeMin{0pt}%
\def\SpaceBeforeMinFactor{0}%
\def\SpaceBeforeNominal{0pt}%
\def\SpaceBeforeNominalFactor{0}%
\def\SpaceBeforePriority{0}%
\newdimen\CurrentSpaceNominal
\newdimen\CurrentSpaceMin
\newdimen\CurrentSpaceMax
\CurrentSpaceNominal0pt
\CurrentSpaceMax0pt
\CurrentSpaceMin0pt
\newdimen\LastSpaceNominal
\newdimen\LastSpaceMin
\newdimen\LastSpaceMax
\LastSpaceNominal0pt
\LastSpaceMax0pt
\LastSpaceMin0pt
\def\LastSpaceConditional{0}%  false
\def\LastSpaceForce{0}%  false
\def\LastSpaceMaxFactor{0}%
\def\LastSpaceMinFactor{0}%
\def\LastSpaceNominalFactor{0}%
\def\LastSpacePriority{0}%
\def\TruncateLeader{0}%  false
\def\Width{}% [required] *
\def\Length{}% [context]
\def\MaxHeight{}% [contextual]
\def\MaxWidth{}% [contextual]
\def\TableWidth{\hsize}% 
\def\ColumnIndex{}% [contextual] =column-number?
\def\HeaderMargin{0pt}
\def\FooterMargin{0pt}
\def\LeftMargin{0pt}
\def\RightMargin{0pt}
\def\TopMargin{0pt}
\def\BottomMargin{0pt}
\def\PageWidth{211mm}
\def\PageHeight{297mm}
\edef\OldFontSize{\FontSize}
\edef\OldLineSpacing{\LineSpacing}
\edef\OldFontPosture{\FontPosture}
\edef\OldFontProportionateWidth{\FontProportionateWidth}
\edef\OldFontWeight{\FontWeight}
\edef\OldFontFamilyName{\FontFamilyName}
\let\ColorRed\@empty
\let\Label\@empty
\let\ElementIndex\@empty
\def\startNode#1{%
 \ifx\\#1\\\else
    \let\ProcessingMode\@empty
    #1%
    \ifx\ProcessingMode\@empty\else
     \let\Label\@empty\let\ElementIndex\@empty
    \fi
%    \typeout{Node <\Label> or <\ElementIndex> -- pending at \the\inputlineno}%
 \fi
}
\def\endNode{%
 \let\Label\@empty
 \let\ElementIndex\@empty
}
\def\PageLabel#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\@Setref#1#2{%
  \ifx#1\relax
   \protect\G@refundefinedtrue
   \nfss@text{\reset@font\bfseries ??}%
   \@latex@warning{Reference `#2' on page \thepage \space
             undefined}%
  \else\hyper@@link[Page]{}{page.#1}{#1}\fi}
%
\def\insertCurrentNodePageNumber#1{%
 \bgroup
 \SetupICs{#1}%
 \InlineNIC
 \ifx\Label\@empty
     \Pageref{\ElementIndex}%
 \else
    \Pageref{\Label}%
 \fi
 \endInlineNIC
 \endSetupICs
 \egroup
}
%    \end{macrocode}
%\section{Atomic flow objects}
%    \begin{macrocode}
\def\insertAlignmentPoint#1{}
%    \end{macrocode}
% \subsection{Maths}
% \subsubsection{General math sequences}
%    \begin{macrocode}
\def\@display{display}
%    \end{macrocode}
% We are likely to meet nested math sequences, so maintain a counter
% to determine if we are at the outer level, and should turn
% math (display or inline) off or on.
%    \begin{macrocode}
\newcount\Mathcount
\def\startMathSequence#1{%
    \bgroup
    \SetupICs{#1}%
    \startFO
    \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\endMathSequence{%
 \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{\vskip\MinLeading$\displaystyle }
\def\endDmath{$\vskip\MinLeading}
\def\Imath{$}
\def\Cleanmath{\def\startNode##1{}\def\endNode##1{}%
 \def\startMathSequence##1{}\def\endMathSequence##1{}}
%    \end{macrocode}
% \subsubsection{Fences}
%    \begin{macrocode}
\newcount\Fencecount
\Fencecount0
\newsavebox{\fencebox}
\def\startFenceSerial#1#2\startFenceOpen#3#4\endFenceOpen#5\startFenceClose#6#7\endFenceClose#8\endFenceSerial{#1\startFO%
%
% #1: fence characteristics
% #2: fence contents
% #3,#4: open characteristics, open character
% #6,#7: close characteristics, close character
%
\global\advance\Fencecount by 1
\begingroup
 \Cleanmath
 %\typeout{Fence level \the\Fencecount #4 and #7}%
 \ifx\\#4\\\left.\else\left#4\fi
 #2%
 \ifx\\#7\\\right.\else\right#7\fi
\endgroup
\global\advance\Fencecount by -1
}
%    \end{macrocode}
% \subsubsection{Fractions}
% These simply translate into |{Numerator \over Denominator}|
%    \begin{macrocode}
\def\startFractionSerial#1{#1\startFO\bgroup}
\def\endFractionSerial{\egroup}
\def\startFractionDenominator{}
\def\endFractionDenominator{}
\def\startFractionNumerator{}
\def\endFractionNumerator{\over }
\def\insertFractionBar{}
%    \end{macrocode}
% \subsubsection{Marks}
% Waiting to be implemented.
%    \begin{macrocode}
\def\startMarkOver#1#2\endMarkOver{}
\def\startMarkUnder#1#2\endMarkUnder{}
\def\startMarkSerial#1{}
\def\endMarkSerial{}
%    \end{macrocode}
% \subsubsection{Operators/limits}
%    \begin{macrocode}
\def\startMathOperatorSerial#1{#1\startFO}
\def\endMathOperatorSerial{}
\def\startMathOperatorOperator#1#2\endMathOperatorOperator{#1%
 \mathop{#2}}
\def\startMathOperatorLowerLimit#1{#1_\bgroup\Cleanmath}
\def\endMathOperatorLowerLimit{\egroup}
\def\startMathOperatorUpperLimit#1{#1^\bgroup\Cleanmath}
\def\endMathOperatorUpperLimit{\egroup}
%    \end{macrocode}
% \subsubsection{Radicals}
% This only works for square roots at present.
%    \begin{macrocode}
\def\startRadicalSerial#1\insertRadicalRadicalDefaulted#2#3\startRadicalDegree#4#5\endRadicalDegree#6\endRadicalSerial{#1\startFO%
\ifx\\#5\\\\ensuremath{sqrt{#3}}\else\ensuremath{\root #5 \of {#3}}\fi}
%    \end{macrocode}
% \subsubsection{Grids}
%    \begin{macrocode}
\newcount\GridCells
\newcount\GridRows
\def\startGrid#1{#1%
 \startFO
 \GridCells0\GridRows0
 \begin{array}{*{\NColumns}{c}}%
}
\def\endGrid{\end{array}%
}
\def\startGridCell#1{#1\startFO
 \global\advance\GridCells by 1
 \ifnum\GridCells>\NColumns\global\GridCells1\\
 \fi
}
\def\endGridCell{%
  \ifnum\GridCells<\NColumns\let\Action\NewColumn\else\let\Action\relax\fi
  \Action
}
\def\NewColumn{&}
%\typeout{Grid Column \the\GridCells, of \NColumns}
%    \end{macrocode}
% \subsubsection{Superscript, subscript}
%    \begin{macrocode}
\def\startSubscript#1#2\endSubscript{#1_{#2}}
\def\startSuperscript#1#2\endSuperscript{#1^{#2}}
%    \end{macrocode}
% \subsubsection{Unmath}
%    \begin{macrocode}
\def\startUnmath#1#2\endUnmath{%
  {\SetupICs{#1}\mbox{#2}\endSetupICs}%
}
%    \end{macrocode}
% \subsection{External Graphic flow object class (clause 12.6.15)}
%    \begin{macrocode}
\def\insertExternalGraphic#1{#1%
 \ExternalGraphicNIC
 \ifcase\IsDisplay\or\par\fi
 \expandafter\IncludeGraphic\EntitySystemId\\%
 \ifcase\IsDisplay\or\par\fi
 \endExternalGraphicNIC
}
\def\IncludeGraphic{\@ifnextchar<{\@IncludeGraphic}{\@IncludeGraphic<>}}
\def\@IncludeGraphic<#1>#2\\{\includegraphics{#2}}
\def\insertPageNumber#1{#1\arabic{page}}
\def\insertParagraphBreak#1{\par}
%
\def\horizontal{horizontal}
\def\LineThickness{1pt}
\def\insertRule#1{\bgroup
 \par
 \SetupICs{#1}%
 \RuleNIC
 \ifx\Orientation\horizontal
  \hrule \ifx\Length\@empty\else width \Length \fi
      height \LineThickness \relax
 \else
  \hrule width \LineThickness 
    \ifx\Length\@empty\else height \Length \fi \relax
 \fi
 \par
 \endRuleNIC
 \endSetupICs 
 \egroup
}
%    \end{macrocode}
% \subsection{Tables}
%    \begin{macrocode}
\def\insertTableAfterColumnBorder#1{#1}
\def\insertTableAfterRowBorder#1{#1}
\def\insertTableBeforeColumnBorder#1{#1}
\def\insertTableBeforeRowBorder#1{#1}
\def\insertTableCellAfterColumnBorder#1{#1}
\def\insertTableCellAfterRowBorder#1{#1}
\def\insertTableCellBeforeColumnBorder#1{#1}
\def\insertTableCellBeforeRowBorder#1{#1}
\def\insertTableColumn#1{#1}
%    \end{macrocode}
% \section{Non-atomic flow objects}
% \subsection{Box flow object class}
%    \begin{macrocode}
\def\startBox#1#2\endBox{#1\fbox{#2}}
%    \end{macrocode}
% \subsection{Display group flow object class (clause 12.6.2)}
%    \begin{macrocode}
\def\fps@float{tbp}
\def\ftype@float{1}
\newcounter{infloat}
% \stepcounter{infloat}%
% \ifnum\value{infloat}>1\else
%   %\@float{float}
% \fi
% \addtocounter{infloat}{-1}%
% \ifnum\value{infloat}=0
%   %\end@float{float}
% \fi
\def\startDisplayGroup#1{#1%
 \DisplayGroupNIC
 \ifnum\Mathcount>0\relax\else\par\fi
 \startFO%
}
\def\endDisplayGroup{%
 \ifnum\Mathcount>0\relax\else
  \par
 \fi
 \endDisplayGroupNIC
}
%    \end{macrocode}
% \subsection{Leader flow object class}
%    \begin{macrocode}
\newsavebox{\leaderbox}
\def\startLeader#1{#1\begin{LRbox}{\dssslbox}}
\def\endLeader{\end{LRbox}\leaders\box\dssslbox\hfill}
%    \end{macrocode}
% \subsection{Line Field flow object class}
% Field align can be \emph{start}, \emph{end}, or \emph{center}.
%    \begin{macrocode}
\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\endLRbox{\color@endgroup}
\def\startLineField#1{\bgroup
 \SetupICs{#1}%
 \LineFieldNIC
 \startFO%
 \begin{LRbox}{\dssslbox}%
}
\def\endLineField{%
 \end{LRbox}%
 \makebox[\FieldWidth][\csname Fld@\FieldAlign\endcsname]{%
 \usebox{\dssslbox}%
 \EndSetFont}%
 \endLineFieldNIC
 \endSetupICs
 \egroup
}
%
%    \end{macrocode}
% \subsection{Link flow object class (clause 12.6.28.3)}
%    \begin{macrocode}
\def\startLink#1{\begingroup\SetupICs{#1}
 %\ifx\Label\@empty\let\Label\ElementIndex\fi
 \hyper@linkstart{\Label}%
}
\def\endLink{\hyper@linkend\endSetupICs\endgroup}
%    \end{macrocode}
% \subsection{Marginalia flow object class (clause 12.6.28.4)}
%    \begin{macrocode}
\def\startMarginalia#1{#1\startFO}
\def\endMarginalia{}
%    \end{macrocode}
% \subsection{Paragraph flow object class (clause 12.6.6)}
%\begin{longtable}{|P{.2\textwidth}|l|P{.25\textwidth}|l|l|}
%\hline
%\itshape
%Characteristic&
%\itshape Inh.&\itshape Values&\itshape Default&\itshape Dsssl-o\\
%\hline
%\endhead
%\hline
%\endfoot
%lines&I&wrap, asis, asis-wrap*, asis-truncate*, none&wrap&Partial\\
%\rowcolor{yellow}
%asis-truncate-char&I&\#f, \emph{char object}& &Ignore\\
%asis-wrap-char&I&\#f, \emph{char object}& &Ignore\\
%\rowcolor{yellow}
%asis-wrap-indent&I&\emph{length-spec}& &Ignore\\
%first-line-align&I&\#f, \emph{char object}& &Ignore\\
%\rowcolor{yellow}
%alignment-point-offset&I&\#f, \emph{number between 0 and 100}& &Ignore\\
%ignore-record-end?&I&\#f, \#t&\#f&Standard\\
%\rowcolor{yellow}
%expand-tabs?&I&\#f, \emph{integer greater than zero}&8&Standard\\
%line-spacing&I&\emph{length-spec}&12pt&Standard\\
%\rowcolor{yellow}
%line-spacing-priority&I&force, \emph{integer}&0&Default\\
%min-pre-line-spacing&I&\#f, \emph{length-spec}&\#f&Default\\
%\rowcolor{yellow}
%min-post-line-spacing&I&\#f, \emph{length-spec}&\#f&Default\\
%min-leading&I&\#f, \emph{length-spec}&\#f&Standard\\
%\rowcolor{yellow}
%first-line-start-indent&I&\emph{length-spec}&0m&Standard\\
%last-line-end-indent&I&\emph{length-spec}&0m&Default\\
%\rowcolor{yellow}
%hyphenation-char&I&\emph{character}& &Ignore\\
%hyphenation-method&I&\#f, \emph{public identifier}&\#f&Default\\
%\rowcolor{yellow}
%hyphenation-ladder-count&I&\#f, \emph{integer greater than zero}&\#f&Default\\
%hyphenation-remain-char-count&I&\emph{positive integer}&2&Ignore\\
%\rowcolor{yellow}
%hyphenation-push-char-count&I&\emph{positive integer}&2&Ignore\\
%hyphenation-keep&I&\#f, spread, page, column&\#f&Default\\
%\rowcolor{yellow}
%hyphenation-exceptions&I&\emph{list of strings}&empty list&Default\\
%line-breaking-method&I&\#f, \emph{public identifier}&\#f&Default\\
%\rowcolor{yellow}
%line-composition-method&I&\#f, \emph{public identifier}&\#f&Default\\
%implicit-bidi-method&I&\#f, \emph{public identifier}& &Default\\
%\rowcolor{yellow}
%glyph-alignment-mode&I&base, center, top, bottom, font&font&Default\\
%font-family-name&I&\#f, \emph{string}&iso-serif&Standard\\
%\rowcolor{yellow}
%font-weight&I&\#f, not-applicable*, ultra-light*, extra-light*, light, semi-light*, medium, semi-bold*, bold, extra-bold*, ultra-bold*&medium&Partial\\
%font-posture&I&\#f, not-applicable*, upright, oblique, back-slanted-oblique*, italic, back-slanted-italic*&upright&Partial\\
%\rowcolor{yellow}
%font-structure&I&\#f, not-applicable, solid, outline&solid&Default\\
%font-proportionate-width&I&\#f, not-applicable*, ultra-condensed*, extra-condensed*, condensed, semi-condensed*, medium, semi-expanded*, expanded, extra-expanded*, ultra-expanded*&medium&Partial\\
%\rowcolor{yellow}
%font-name&I&\#f, \emph{public identifier}& &Standard\\
%font-size&I&\emph{length}&10pt&Standard\\
%\rowcolor{yellow}
%numbered-lines?&I&\#f, \#t&\#t&Ignore\\
%line-number&I&\#f, \emph{unlabeled sosofo}& &Ignore\\
%\rowcolor{yellow}
%line-number-side&I&start, end, spread-inside, spread-outside, page-inside, page-outside& &Ignore\\
%line-number-sep&I&\emph{length-spec}& &Ignore\\
%\rowcolor{yellow}
%quadding&I&start, end, spread-inside*, spread-outside*, page-inside*, page-outside*, center, justify*&start&Partial\\
%last-line-quadding&I&relative, start, end, spread-inside, spread-outside, page-inside, page-outside, center, justify&relative&Default\\
%\rowcolor{yellow}
%last-line-justify-limit&I&\emph{length-spec}&0&Ignore\\
%justify-glyph-space-max-add&I&\emph{length-spec}&0m&Ignore\\
%\rowcolor{yellow}
%justify-glyph-space-max-remove&I&\emph{length-spec}&0m&Ignore\\
%hanging-punct?&I&\#f, \#t&\#f&Default\\
%\rowcolor{yellow}
%widow-count&I&\emph{positive integer}&2&Default\\
%orphan-count&I&\emph{positive integer}&2&Default\\
%\rowcolor{yellow}
%language&I&\#f, \emph{ISO 639 language code}&\#f&Standard\\
%country&I&\#f, \emph{ISO 3166 country code}&\#f&Standard\\
%\rowcolor{yellow}
%position-preference&N&\#f, top, bottom&\#f&Ignore\\
%writing-mode&I&left-to-right, right-to-left, top-to-bottom&left-to-right&Default\\
%\rowcolor{yellow}
%start-indent&I&\emph{length-spec}&0m&Standard\\
%end-indent&I&\emph{length-spec}&0m&Standard\\
%\rowcolor{yellow}
%span&I&\emph{integer greater than zero}&1&Default\\
%span-weak?&I&\#f, \#t&\#f&Default\\
%\rowcolor{yellow}
%space-before&N&\emph{display space}&no space before &Standard\\
%space-after&N&\emph{display space}&no space after &Standard\\
%\rowcolor{yellow}
%keep-with-previous?&N&\#f, \#t&\#f&Standard\\
%keep-with-next?&N&\#f, \#t&\#f&Standard\\
%\rowcolor{yellow}
%break-before&N&\#f, page, page-region*, column*, column-set*&\#f&Partial\\
%break-after&N&\#f, page, page-region*, column*, column-set*&\#f&Partial\\
%\rowcolor{yellow}
%keep&N&\#f, page, column-set*, column*, \#t*&\#f&Partial\\
%may-violate-keep-before?&N&\#f, \#t&\#f&Default\\
%\rowcolor{yellow}
%may-violate-keep-after?&N&\#f, \#t&\#f&Default\\
%\end{longtable}
%    \begin{macrocode}
\newif\ifPlainMode
\PlainModetrue
\def\startParagraph#1{%
 \ifPlainMode\begingroup\fi
 \SetupICs{#1}%
 \ifPlainMode \ParagraphNIC\fi
 \startFO
}
\def\endParagraph{%
 \par
 \ifPlainMode \endParagraphNIC\fi
 \endSetupICs
 \ifPlainMode\endgroup\else\\\fi
}
%    \end{macrocode}
% \subsection{Score flow object class (clause 12.6.17)}
%    \begin{macrocode}
\def\startScore#1{#1}
\def\endScore{}
%    \end{macrocode}
% \subsection{Scroll flow object class (clause 12.6.28.1)}
%    \begin{macrocode}
\def\startScroll{\startSimplePageSequence}
\def\endScroll{\endSimplePageSequence}
%    \end{macrocode}
% \subsection{Sequence flow object class (clause 12.6.1)}
%    \begin{macrocode}
\newdimen\CurPosShift\CurPosShift\z@
\newif\if@Raised
\def\startSequence#1{%
 \ifPlainMode\begingroup\fi
 \SetupICs{#1}%
 \startFO
 \@Raisedfalse
 \ifdim\PositionPointShift=\CurPosShift
 \else
   \@tempdima\PositionPointShift
   \ifdim\PositionPointShift>\CurPosShift
     \advance\@tempdima by -\CurPosShift
   \else
     \advance\@tempdima by \CurPosShift
   \fi
   \CurPosShift\PositionPointShift
   \@Raisedtrue
 \fi
 \if@Raised\leavevmode\raise\@tempdima\hbox\bgroup\fi
}
\def\endSequence{%
 \if@Raised\egroup\fi
 \EndSetFont
 \endSetupICs
 \ifPlainMode\endgroup\fi
}
%    \end{macrocode}
% \subsection{Side Line flow object class}
%    \begin{macrocode}
\def\startSideLine#1{#1}
\def\endSideLine{}
%    \end{macrocode}
% \subsection{Simple Page Sequence flow object class (clause 12.6.3)}
% Look out for the canonical 1in margins!
%    \begin{macrocode}
\def\startSimplePageSequence#1{#1%
 \headsep\HeaderMargin
 \footskip\FooterMargin
 \oddsidemargin\LeftMargin
 \evensidemargin\LeftMargin
 \topmargin\TopMargin
 \def\headheight{12pt}
 \paperwidth\PageWidth
 \paperheight\PageHeight
 \ifx\pdfimage\@undefined
 \else
   \global\pdfpagewidth\paperwidth
   \global\pdfpageheight\paperheight
 \fi
 \textheight\paperheight
 \textwidth\paperwidth
 \advance\textheight by -\TopMargin
 \advance\textheight by -\HeaderMargin
 \advance\textheight by -\BottomMargin
 \advance\textheight by -\FooterMargin
 \advance\textwidth by -\LeftMargin
 \advance\textwidth by -\RightMargin
 \DisplayNIC
 \let\pageFontSize\FontSize
 \let\pageLineSpacing\LineSpacing
 \let\pageFontPosture\FontPosture
 \let\pageFontProportionateWidth\FontProportionateWidth
 \let\pageFontWeight\FontWeight
 \let\pageFontFamilyName\FontFamilyName
 \newpage
}
\def\endSimplePageSequence{%
 \endDisplayNIC
 \newpage
}
%    \end{macrocode}
% \subsection{Headers and footers}
%    \begin{macrocode}
\def\SimplePageSequenceCenterFooter#1{\Setfoot[C]{#1}}
\def\SimplePageSequenceCenterHeader#1{\Sethead[C]{#1}}
\def\SimplePageSequenceLeftFooter#1{\Setfoot[L]{#1}}
\def\SimplePageSequenceLeftHeader#1{\Sethead[L]{#1}}
\def\SimplePageSequenceRightFooter#1{\Setfoot[R]{#1}}
\def\SimplePageSequenceRightHeader#1{\Sethead[R]{#1}}
%
\def\SimplePageSequenceFirstBackCenterFooter#1{\Setfoot[C]{#1}}
\def\SimplePageSequenceFirstBackCenterHeader#1{\Sethead[C]{#1}}
\def\SimplePageSequenceFirstBackLeftFooter#1{\Setfoot[L]{#1}}
\def\SimplePageSequenceFirstBackLeftHeader#1{\Sethead[L]{#1}}
\def\SimplePageSequenceFirstBackRightFooter#1{\Setfoot[R]{#1}}
\def\SimplePageSequenceFirstBackRightHeader#1{\Sethead[R]{#1}}
\def\SimplePageSequenceFirstFrontCenterFooter#1{\Setfoot[C]{#1}}
\def\SimplePageSequenceFirstFrontCenterHeader#1{\Sethead[C]{#1}}
\def\SimplePageSequenceFirstFrontLeftFooter#1{\Setfoot[L]{#1}}
\def\SimplePageSequenceFirstFrontLeftHeader#1{\Sethead[L]{#1}}
\def\SimplePageSequenceFirstFrontRightFooter#1{\Setfoot[R]{#1}}
\def\SimplePageSequenceFirstFrontRightHeader#1{\Sethead[R]{#1}}
%
\def\SimplePageSequenceOtherBackCenterFooter#1{\Setfoot[CE]{#1}}
\def\SimplePageSequenceOtherBackLeftFooter#1{\Setfoot[LE]{#1}}
\def\SimplePageSequenceOtherBackRightFooter#1{\Setfoot[RE]{#1}}
\def\SimplePageSequenceOtherBackRightHeader#1{\Sethead[RE]{#1}}
\def\SimplePageSequenceOtherBackCenterHeader#1{\Sethead[CE]{#1}}
\def\SimplePageSequenceOtherBackLeftHeader#1{\Sethead[LE]{#1}}
%
\def\SimplePageSequenceOtherFrontCenterFooter#1{\Setfoot[CO]{#1}}
\def\SimplePageSequenceOtherFrontLeftFooter#1{\Setfoot[LO]{#1}}
\def\SimplePageSequenceOtherFrontRightFooter#1{\Setfoot[RO]{#1}}
\def\SimplePageSequenceOtherFrontRightHeader#1{\Sethead[RO]{#1}}
\def\SimplePageSequenceOtherFrontCenterHeader#1{\Sethead[CO]{#1}}
\def\SimplePageSequenceOtherFrontLeftHeader#1{\Sethead[LO]{#1}}
\def\Sethead[#1]#2{\ifx\\#2\\\relax\else
 \fancyhead[#1]{\setnormal#2}\fi}
\def\Setfoot[#1]#2{\ifx\\#2\\\relax\else
 \fancyfoot[#1]{\setnormal#2}\fi}
%    \end{macrocode}
% \subsection{Table flow object class}
% For the present, until we learn to count columns, set them all
% to left aligned, and have more than we usually need. This
% is going to be very hard to get right. 
%    \begin{macrocode}
\def\@full{full}
\def\startTable#1{#1%
 \ifx\TableWidth\@full\def\TableWidth{\hsize}\fi
 \TableNIC
 \startFO
 \global\PlainModefalse
 \tabskip 1em plus.5em minus .5em
 \halign to \TableWidth\bgroup
 ##\hfil&
 ##\hfil&
 ##\hfil&
 ##\hfil&
 ##\hfil&
 ##\hfil&
 ##\hfil&
 ##\hfil&
 ##\hfil&
 ##\hfil&
 ##\hfil&
 ##\hfil&
 ##\hfil&
 ##\hfil&
 ##\hfil&
 ##\hfil&
 ##\hfil&
 ##\hfil&
 ##\hfil\cr
}
\def\endTable{%
 \cr
 \egroup
 \global\PlainModetrue
 \endTableNIC
}
%    \end{macrocode}
% \subsection{Table Cell flow object class}
%    \begin{macrocode}
\def\startTableCell#1#2\endTableCell{%
 \TableCellNIC\startFO#2&\endTableCellNIC
}
%    \end{macrocode}
% \subsection{Table Part flow object class}
%    \begin{macrocode}
\def\startTablePart#1{#1\startFO}
\def\endTablePart{}
%    \end{macrocode}
% \subsection{Table Row flow object class}
%    \begin{macrocode}
\def\startTableRow#1{#1}
\def\endTableRow{\cr}
%    \end{macrocode}
% \subsection{Character mapping}
%    \begin{macrocode}
\def\insertCharacter#1{#1%
   \expandafter\ifx\csname Ch@\Ch\endcsname\relax
     <\Ch>\typeout{Warning: Unknown character \Ch, at \the\inputlineno}%
   \else\csname Ch@\Ch\endcsname\fi
}
%    \end{macrocode}
%\section{Auxiliary macros}
% |\startFO| should be called at the beginning of every object
% that can be meaningfully labelled. Its this that creates an anchor,
% not the |\startNode|, to avoid duplicates and wastage.
%    \begin{macrocode}
\def\startFO{%
  %\ifx\Label\@empty\let\Label\ElementIndex\fi
  \ifx\Label\@empty\else
     \@ifundefined{x@\Label}{%
%      \typeout{Node <\Label> defined at line \the\inputlineno}%
      \bgroup
       \hyper@anchorstart{\Label}\hyper@anchorend
       \PageLabel{\Label}%
      \egroup
      \expandafter\let\csname x@\Label\endcsname\@empty
      \let\Label\@empty
      \let\ElementIndex\@empty
      }{}%
  \fi
}
%    \end{macrocode}
%\subsection{DisplayNIC}
%    \begin{macrocode}
\def\@force{force}
\newdimen\LastDisplaySpace
\newcount\DisplayStack
\newcount\LastDisplayStack
\let\savedSpaceBeforeMin\SpaceBeforeMin
\let\savedSpaceBeforeMax\SpaceBeforeMax
\let\savedSpaceBeforeNominal\SpaceBeforeNominal
\let\savedSpaceBeforePriority\SpaceBeforePriority
\DisplayStack0
\LastDisplayStack-1
\def\DisplayNIC{%
 \advance\DisplayStack by 1
 \ifnum\DisplayStack>\LastDisplayStack
   \def\SpaceBeforePriority{force}%
   \def\LastSpaceBeforePriority{0}%
 \else
   \vskip-\lastskip
 \fi
 \let\savedSpaceAfterMin\SpaceAfterMin
 \let\savedSpaceAfterMax\SpaceAfterMax
 \let\savedSpaceAfterNominal\SpaceAfterNominal
 \let\savedSpaceAfterPriority\SpaceAfterPriority
%
 \begingroup
 \ifx\BreakBefore\relax\else
  \csname Break@\BreakBefore\endcsname
 \fi
 \CurrentSpaceMin=\SpaceBeforeMin
 \CurrentSpaceNominal=\SpaceBeforeNominal
 \CurrentSpaceMax=\SpaceBeforeMax
%
 \edef\CurrentSpacePriority{\SpaceBeforePriority}%
%    \end{macrocode}
% See if either display space priority is set to `force';
% if so, use that set of values;
% if both priorities are `force', add values together
%    \begin{macrocode}
\ifx\SpaceBeforePriority\@force
  \ifx\LastSpacePriority\@force
   \advance\CurrentSpaceMin by \LastSpaceMin
   \advance\CurrentSpaceNominal by \LastSpaceNominal
   \advance\CurrentSpaceMin by \LastSpaceMax
  \fi
\else
  \ifx\LastSpacePriority\@force
    \CurrentSpaceMin=\LastSpaceMin
    \CurrentSpaceNominal=\LastSpaceNominal
    \CurrentSpaceMax=\LastSpaceMax
%    \end{macrocode}
% See if the priority of either set is higher, if so use that
%    \begin{macrocode}
  \else
    \ifnum\CurrentSpacePriority>\LastSpacePriority 
      \relax
    \else
       \ifnum\LastSpacePriority>\CurrentSpacePriority 
         \CurrentSpaceMin=\LastSpaceMin
         \CurrentSpaceNominal=\LastSpaceNominal
         \CurrentSpaceMax=\LastSpaceMax
       \else
%    \end{macrocode}
% So the priorities are equal; take the one with the larger nominal
%    \begin{macrocode}
         \ifdim\CurrentSpaceNominal>\LastSpaceNominal
            \relax
         \else
            \ifdim\LastSpaceNominal>\CurrentSpaceNominal
              \CurrentSpaceMin=\LastSpaceMin
              \CurrentSpaceNominal=\LastSpaceNominal
              \CurrentSpaceMax=\LastSpaceMax
            \else
%    \end{macrocode}
% Dang, the nominals are equal. Take the larger minimum, and smaller
% maximum
%    \begin{macrocode}
               \ifdim\LastSpaceMax<\CurrentSpaceMax
                 \CurrentSpaceMax\LastSpaceMax
               \fi
               \ifdim\LastSpaceMin>\CurrentSpaceMin
                  \CurrentSpaceMin\LastSpaceMin
               \fi
            \fi
         \fi
       \fi
    \fi
  \fi
 \fi
 \@tempdima\CurrentSpaceNominal 
 \advance\@tempdima by -\CurrentSpaceMin
 \@tempdimb\CurrentSpaceNominal 
 \advance\@tempdimb by -\CurrentSpaceMax
 \vskip \CurrentSpaceNominal plus \@tempdimb minus \@tempdima
%\typeout{[\the\CurrentSpaceNominal, 
% \the\@tempdima, \the\@tempdimb], at \the\inputlineno}%
 \rightskip\EndIndent
 \leftskip\StartIndent
 \ifx\Quadding\@empty\relax
   \else\csname Q@\Quadding\endcsname\fi
 \ifx\Lines\@empty\relax
   \else\csname Lines@\Lines\endcsname\fi
 \ifx\FirstLineStartIndent\@empty\relax
   \else\parindent\FirstLineStartIndent\fi 
 \ifx\InputWhitespaceTreatment\@empty\relax
   \else\csname White@\InputWhitespaceTreatment\endcsname\fi
 \let\Keep\relax
 \let\BreakBefore\relax
 \let\BreakAfter\relax
 \let\KeepWithPrevious\relax
 \let\MayViolateKeepBefore\relax
 \let\MayViolateKeepAfter\relax
 \def\SpaceBeforeMin{\z@}%
 \def\SpaceBeforeMax{\z@}%
 \def\SpaceBeforeNominal{\z@}%
 \def\SpaceBeforePriority{0}%
 \def\SpaceAfterMin{\z@}%
 \def\SpaceAfterMax{\z@}%
 \def\SpaceAfterNominal{\z@}%
 \def\SpaceAfterPriority{0}%
}

\def\endDisplayNIC{%
 \ifnum\KeepWithNext=1\nobreak\fi
 \endgroup
 \global\LastSpaceNominal=\savedSpaceAfterNominal
 \global\LastSpaceMax=\savedSpaceAfterMax
 \global\LastSpaceMin=\savedSpaceAfterMin
 \global\edef\LastSpacePriority{\savedSpaceAfterPriority}%
 \@tempdima\savedSpaceAfterNominal 
 \advance\@tempdima by -\savedSpaceAfterMin
 \@tempdimb\savedSpaceAfterNominal 
 \advance\@tempdimb by -\savedSpaceAfterMax
 \vskip \savedSpaceAfterNominal plus \@tempdimb minus \@tempdima
 \global\LastDisplayStack=\DisplayStack
 \advance\DisplayStack by -1
}
%    \end{macrocode}
%\subsection{InlineNIC}
%    \begin{macrocode}
\def\InlineNIC{%
 \begingroup
}
\def\endInlineNIC{%
 \let\BreakBeforePriority\relax
 \let\BreakAfterPriority\relax
 \endgroup
}
%    \end{macrocode}
%\subsection{Other NIC setups}
%    \begin{macrocode}
\def\DisplayGroupNIC{%
 \DisplayNIC 
}
\def\endDisplayGroupNIC{%
 \endDisplayNIC 
}

\def\ExternalGraphicNIC{%
 \DisplayNIC
 \InlineNIC
}
\def\endExternalGraphicNIC{%
 \endInlineNIC
 \endDisplayNIC
}

\def\BoxNIC{%
 \DisplayNIC
 \InlineNIC 
}
\def\endBoxNIC{%
 \endInlineNIC 
 \endDisplayNIC
}

\def\ExternalGraphicNIC{%
 \DisplayNIC
 \InlineNIC
}
\def\endExternalGraphicNIC{%
 \endInlineNIC
 \endDisplayNIC
}

\def\BoxNIC{%
 \DisplayNIC
 \InlineNIC 
}
\def\endBoxNIC{%
 \endInlineNIC 
 \endDisplayNIC
}

\def\RuleNIC{%
 \DisplayNIC
 \InlineNIC 
}
\def\endRuleNIC{%
 \endInlineNIC 
 \endDisplayNIC
}
\def\LeaderNIC{%
 \InlineNIC 
}
\def\LeaderNIC{%
 \InlineNIC 
}
\def\TableNIC{%
 \DisplayNIC
}
\def\endTableNIC{%
 \endDisplayNIC
}
\def\TableColumnNIC{}
\def\endTableColumnNIC{}
\def\TableCellNIC{}
\def\endTableCellNIC{}
\def\GridNIC{}
\def\endGridNIC{}
\def\GridCellNIC{}
\def\endGridCellNIC{}
\let\ParagraphNIC\DisplayNIC
\let\LineFieldNIC\InlineNIC
\let\endParagraphNIC\endDisplayNIC
\let\endLineFieldNIC\endInlineNIC
%    \end{macrocode}
%\subsection{Inherited characteristics}
%    \begin{macrocode}
\newif\ifNeedsSelect
\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@\FontProportionateWidth\endcsname
      \csname Weight@\FontWeight\endcsname}%
\ifx\LaTeXshape\@empty\def\LaTeXshape{m}\fi
\fontseries{\LaTeXshape}%
\fontshape{\csname Posture@\FontPosture\endcsname}%
\fontfamily{%
    \expandafter\ifx\csname Family@\FontFamilyName\endcsname\relax
     \csname Family@\DefaultFontFamilyName\endcsname
    \else
     \csname Family@\FontFamilyName\endcsname
    \fi
   }%
\fontsize{\FontSize}{\LineSpacing}%
\NeedsSelecttrue
\ifx\f@size\current@f@size\relax\NeedsSelectfalse\fi
\ifx\f@family\current@f@family\relax\NeedsSelectfalse\fi
\ifx\f@shape\current@f@shape\relax\NeedsSelectfalse\fi
\ifx\f@series\current@f@series\relax\NeedsSelectfalse\fi
%\ifNeedsSelect
  \selectfont
%\fi
\ifx\ColorRed\@empty\relax\else
   \RGBColor{\ColorRed}{\ColorGreen}{\ColorBlue}%
\fi
}
\def\endSetupICs{}
\def\RGBColor#1#2#3{%
 \c@lor@RGB@rgb{#1}\@tempa
 \c@lor@RGB@rgb{#2}\@tempb
 \c@lor@RGB@rgb{#3}\@tempc
% \typeout{Set Color \@tempa, \@tempb, \@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\FontPosture Over\endcsname\relax
   \relax\else\csname\FontPosture Over\endcsname\fi
}
%
\DeclareFontFamily{T1}{pzd}{}  
\DeclareFontShape{T1}{pzd}{m}{n}{<->pzdr}{} 
%
\def\DefaultFontFamilyName{unknown} 
\def\Family@unknown{<unknown>} 
\def\Family@Arial{phv}
\def\Family@Wingdings{pzd}
\def\Family@Helvetica{phv}
\def\Family@Palatino{ppl}
\def\Family@Bookman{pbk}
\def\Family@Courier{pcr}
\def\Family@LucidaSans{hls}
\def\Family@LucidaBright{hlc}
\def\Family@ComputerModern{cmr}
\def\Family@Courier{pcr}
\expandafter\def\csname Family@Avant Garde\endcsname{pag}
\expandafter\def\csname Family@New Century Schoolbook\endcsname{pnc}
\expandafter\def\csname Family@Times Roman\endcsname{ptm}
\expandafter\def\csname Family@Times New Roman\endcsname{ptm}
\expandafter\def\csname Family@Courier New\endcsname{pcr}
\expandafter\def\csname Family@Gill Sans\endcsname{pgs}
\expandafter\def\csname Family@iso-serif\endcsname{ptm}
\expandafter\def\csname Family@iso-sanserif\endcsname{phv}
\expandafter\def\csname Family@iso-monocase\endcsname{pcr}
\def\Family@dctt{dctt}
%
\def\Posture@upright{n}
\def\Posture@normal{n}
\def\Posture@math{it}
\def\Posture@oblique{sl}
\expandafter\def\csname Posture@back-slanted-oblique\endcsname{ui}
\def\Posture@italic{it}
\expandafter\def\csname Posture@back-slanted-italic\endcsname{ui}
%
\expandafter\def\csname Weight@ultra-light\endcsname{ul}
\expandafter\def\csname Weight@extra-light\endcsname{el}
\def\Weight@light{l}
\expandafter\def\csname Weight@semi-light\endcsname{sl}
\def\Weight@medium{}
\expandafter\def\csname Weight@semi-bold\endcsname{sb}
\def\Weight@bold{b}
\expandafter\def\csname Weight@extra-bold\endcsname{eb}
\expandafter\def\csname Weight@ultra-bold\endcsname{ub}
\expandafter\def\csname Weight@false\endcsname{}
%
\expandafter\def\csname Width@ultra-condensed\endcsname{uc}
\expandafter\def\csname Width@extra-condensed\endcsname{ec}
\expandafter\def\csname Width@condensed\endcsname{c}
\expandafter\def\csname Width@semi-condensed\endcsname{sc}
\expandafter\def\csname Width@medium\endcsname{}
\expandafter\def\csname Width@semi-expanded\endcsname{sx}
\expandafter\def\csname Width@expanded\endcsname{x}
\expandafter\def\csname Width@extra-expanded\endcsname{ex}
\expandafter\def\csname Width@ultra-expanded\endcsname{ux}
%
\expandafter\def\csname italic Over\endcsname{\@@italiccorr}
%
\def\Q@justify{}
\def\Q@start{}
\def\Q@center{%
  \let\\\@centercr
  \rightskip\EndIndent plus 1fil%
  \leftskip\StartIndent plus 1fil%
  \parfillskip\z@skip\parindent\z@
}
\def\Q@pageoutside{%
  \let\\\@centercr
  \leftskip\StartIndent plus 1fil%
  \rightskip\EndIndent
  \parfillskip\z@skip
}
\def\Q@pageinside{%
  \let\\\@centercr
  \rightskip\EndIndent plus 1fil%
  \leftskip\StartIndent
  \parfillskip\z@skip
}
\def\JObeylines{%
  \@tempswafalse
  \def\par{%
    \if@tempswa
      \leavevmode \null \@@par\penalty\interlinepenalty
    \else
      \@tempswatrue
      \ifhmode\@@par\penalty\interlinepenalty\fi
    \fi}%
  \obeylines\everypar \expandafter{\the\everypar \unpenalty}%
}
\newif\if@obeylines\@obeylinesfalse
\def\Lines@asis{\JObeylines\@obeylinestrue}
\def\Lines@wrap{\@obeylinesfalse}
\expandafter\def\csname Lines@asis-truncate\endcsname{%
  \JObeylines\@obeylinestrue}
\expandafter\def\csname Lines@asis-wrap\endcsname{\@obeylinesfalse}
%
\def\Fld@start{l}
\def\Fld@center{c}
\def\Fld@end{r}
%
\def\White@preserve{%
 \catcode`\ =\active\@vobeyspaces}
%
\def\Break@page{\newpage}
\def\Break@{}
%
% Here are some characters we have encountered for which
% we know the mappings.
\def\DefineCharacter#1#2{%
	\expandafter\def\csname Ch@#1\endcsname{#2{}}
}
%===============================================
\DefineCharacter{279}{\ensuremath{\doteq}} %edot
\DefineCharacter{289}{\ensuremath{\gtrdot}} %gdot
\DefineCharacter{338}{\OE} %OElig
\DefineCharacter{339}{\oe} %oelig
\DefineCharacter{732}{\ifmmode\tilde{}\else\~{}\fi}
\DefineCharacter{915}{\ifmmode\Gamma\else\textGamma\fi} %Gamma
\DefineCharacter{916}{\ifmmode\Delta\else\textDelta\fi} %Delta
\DefineCharacter{920}{\ifmmode\Theta\else\textTheta\fi} %Theta
\DefineCharacter{923}{\ifmmode\Lambda\else\textLambda\fi} %Lambda
\DefineCharacter{926}{\ifmmode\Xi\else\textXi\fi} %Xi
\DefineCharacter{928}{\ifmmode\Pi\else\textPi\fi} %Pi
\DefineCharacter{931}{\ifmmode\Sigma\else\textSigma\fi} %Sigma
\DefineCharacter{931}{\ifmmode\varTheta\else\textvarTheta\fi}
\DefineCharacter{933}{\ensuremath{\Upsilon}} %Upsi
\DefineCharacter{934}{\ifmmode\Phi\else\textPhi\fi} %Phi
\DefineCharacter{936}{\ifmmode\Psi\else\textPsi\fi} %Psi
\DefineCharacter{937}{\ifmmode\Omega\else\textOmega\fi} %Omega
\DefineCharacter{945}{\ifmmode\alpha\else\textalpha\fi} %alpha
\DefineCharacter{946}{\ifmmode\beta\else\textbeta\fi} %beta
\DefineCharacter{947}{\ifmmode\gamma\else\textgamma\fi} %gamma
\DefineCharacter{948}{\ifmmode\delta\else\textdelta\fi} %delta
\DefineCharacter{949}{\ifmmode\epsilon\else\textepsilon\fi} %delta
\DefineCharacter{950}{\ifmmode\zeta\else\textzeta\fi} %zeta
\DefineCharacter{951}{\ifmmode\eta\else\texteta\fi} %eta
\DefineCharacter{953}{\ifmmode\iota\else\textiota\fi} %iota
\DefineCharacter{954}{\ifmmode\kappa\else\textkappa\fi} %kappa
\DefineCharacter{955}{\ifmmode\lambda\else\textlambda\fi} %lambda
\DefineCharacter{956}{\ifmmode\mu\else\textmu\fi} %mu
\DefineCharacter{957}{\ifmmode\nu\else\textnu\fi} %nu
\DefineCharacter{958}{\ifmmode\xi\else\textxi\fi} %xi
\DefineCharacter{960}{\ensuremath{\pi}} %pi
\DefineCharacter{963}{\ifmmode\sigma\else\textsigma\fi} %sigma
\DefineCharacter{964}{\ifmmode\tau\else\texttau\fi} %tau
\DefineCharacter{967}{\ifmmode\chi\else\textchi\fi} %chi
\DefineCharacter{968}{\ifmmode\psi\else\textpsi\fi} %psi
\DefineCharacter{989}{\ensuremath{\digamma}} %gammad
\DefineCharacter{1041}{\CYRBuki} %Bcy
\DefineCharacter{1043}{\CYRGlagol} %Gcy
\DefineCharacter{1046}{\CYRJu} %ZHcy
\DefineCharacter{1047}{\CYRSemlja} %Zcy
\DefineCharacter{1048}{\CYRIsche} %Icy
\DefineCharacter{1049}{\CYRSchiwete} %Jcy
\DefineCharacter{1050}{\CYRKako} %Kcy
\DefineCharacter{1051}{\CYRLjudi} %Lcy
\DefineCharacter{1055}{\CYRPakoy} %Pcy
\DefineCharacter{1059}{\CYRU} %Ucy
\DefineCharacter{1060}{\CYRFert} %Fcy
\DefineCharacter{1061}{\CYRTscherw} %KHcy
\DefineCharacter{1062}{\CYRZui} %TScy
\DefineCharacter{1064}{\CYRScha} %SHcy
\DefineCharacter{1065}{\CYRSchtscha} %SHCHcy
\DefineCharacter{1066}{\CYRJerr} %HARDcy
\DefineCharacter{1067}{\CYRJerui} %Ycy
\DefineCharacter{1068}{\CYRJher} %SOFTcy
\DefineCharacter{1069}{\CYRDsche} %Ecy
\DefineCharacter{1070}{\CYRtjsche} %YUcy
\DefineCharacter{1071}{\CYRZelo} %YAcy
\DefineCharacter{1073}{\CYRbuki} %bcy
\DefineCharacter{1074}{\CYRwjedi} %vcy
\DefineCharacter{1075}{\CYRglagol} %gcy
\DefineCharacter{1076}{\CYRdobro} %dcy
\DefineCharacter{1078}{\CYRju} %zhcy
\DefineCharacter{1079}{\CYRsemlja} %zcy
\DefineCharacter{1080}{\CYRische} %icy
\DefineCharacter{1081}{\CYRschiwete} %jcy
\DefineCharacter{1082}{\CYRkako} %kcy
\DefineCharacter{1083}{\CYRljudi} %lcy
\DefineCharacter{1084}{\CYRmuislette} %mcy
\DefineCharacter{1085}{\CYRnasch} %ncy
\DefineCharacter{1087}{\CYRpakoy} %pcy
\DefineCharacter{1090}{\CYRtwerdo} %tcy
\DefineCharacter{1092}{\CYRfert} %fcy
\DefineCharacter{1093}{\CYRtscherw} %khcy
\DefineCharacter{1094}{\CYRzui} %tscy
\DefineCharacter{1096}{\CYRscha} %shcy
\DefineCharacter{1097}{\CYRschtscha} %shchcy
\DefineCharacter{1098}{\CYRjerr} %hardcy
\DefineCharacter{1099}{\CYRjerui} %ycy
\DefineCharacter{1100}{\CYRjher} %softcy
\DefineCharacter{1101}{\CYRsemlja} %ecy
\DefineCharacter{1102}{\CYRJa} %yucy
\DefineCharacter{1103}{\CYRzelo} %yacy
\DefineCharacter{8200}{\ensuremath{\;}} %puncsp
\DefineCharacter{8211}{\ifmmode\mbox{\textendash}\else\textendash\fi} %ndash
\DefineCharacter{8212}{\textemdash} %mdash
\DefineCharacter{8216}{\textquoteleft} %lsquo
\DefineCharacter{8217}{\textquoteright} %rsquo
\DefineCharacter{8220}{\textquotedblleft} %ldquo
\DefineCharacter{8221}{\textquotedblright} %rdquo
\DefineCharacter{8224}{\dag} %dagger
\DefineCharacter{8225}{\ddag} %Dagger
\DefineCharacter{8226}{\ifmmode\blackcircle\else\textbullet\fi}
\DefineCharacter{8230}{\ensuremath{\ldots}} %hellip
\DefineCharacter{8230}{\textellipsis{}}
\DefineCharacter{8240}{\ifmmode\prime\else\textperthousand\fi}
\DefineCharacter{8242}{\ifmmode\prime\else\textperthousand\fi}
\DefineCharacter{8243}{\ifmmode''\else\ensuremath{''}\fi} %Prime
\DefineCharacter{8244}{\ensuremath{'''}} %tprime
\DefineCharacter{8245}{\ensuremath{\backprime}} %bprime
\DefineCharacter{8412}{\ensuremath{\ddddot}} %DotDot
\DefineCharacter{8467}{\ensuremath{\ell}} %ell
\DefineCharacter{8472}{\ensuremath{\wp}} %weierp
\DefineCharacter{8501}{\ensuremath{\aleph}} %aleph
\DefineCharacter{8502}{\ensuremath{\beth}} %beth
\DefineCharacter{8503}{\ensuremath{\gimel}} %gimel
\DefineCharacter{8504}{\ensuremath{\daleth}} %daleth
\DefineCharacter{8592}{\ensuremath{\leftarrow}} %larr
\DefineCharacter{8593}{\ensuremath{\uparrow}} %uarr
\DefineCharacter{8594}{\ensuremath{\longrightarrow}} %rarr
\DefineCharacter{8595}{\ensuremath{\downarrow}} %darr
\DefineCharacter{8596}{\ensuremath{\leftrightarrow}} %harr
\DefineCharacter{8597}{\ensuremath{\updownarrow}} %varr
\DefineCharacter{8598}{\ensuremath{\nwarrow}} %nwarr
\DefineCharacter{8599}{\ensuremath{\nearrow}} %nearr
\DefineCharacter{8602}{\ensuremath{\nleftarrow}} %nlarr
\DefineCharacter{8603}{\ensuremath{\nrightarrow}} %nrarr
\DefineCharacter{8606}{\ensuremath{\twoheadleftarrow}} %Larr
\DefineCharacter{8608}{\ensuremath{\twoheadrightarrow}} %Rarr
\DefineCharacter{8610}{\ensuremath{\leftarrowtail}} %larrtl
\DefineCharacter{8611}{\ensuremath{\rightarrowtail}} %rarrtl
\DefineCharacter{8614}{\ensuremath{\mapsto}} %map
\DefineCharacter{8617}{\ensuremath{\hookleftarrow}} %larrhk
\DefineCharacter{8618}{\ensuremath{\hookrightarrow}} %rarrhk
\DefineCharacter{8619}{\ensuremath{\looparrowleft}} %larrlp
\DefineCharacter{8620}{\ensuremath{\looparrowright}} %rarrlp
\DefineCharacter{8621}{\ensuremath{\leftrightsquigarrow}} %harrw
\DefineCharacter{8622}{\ensuremath{\nleftrightarrow}} %nharr
\DefineCharacter{8624}{\ensuremath{\Lsh}} %lsh
\DefineCharacter{8625}{\ensuremath{\Rsh}} %rsh
\DefineCharacter{8630}{\ensuremath{\curvearrowleft}} %cularr
\DefineCharacter{8631}{\ensuremath{\curvearrowright}} %curarr
\DefineCharacter{8636}{\ensuremath{\leftharpoonup}} %lharu
\DefineCharacter{8637}{\ensuremath{\leftharpoondown}} %lhard
\DefineCharacter{8638}{\ensuremath{\upharpoonright}} %uharr
\DefineCharacter{8639}{\ensuremath{\upharpoonleft}} %uharl
\DefineCharacter{8640}{\ensuremath{\rightharpoonup}} %rharu
\DefineCharacter{8641}{\ensuremath{\rightharpoondown}} %rhard
\DefineCharacter{8642}{\ensuremath{\downharpoonright}} %dharr
\DefineCharacter{8643}{\ensuremath{\downharpoonleft}} %dharl
\DefineCharacter{8644}{\ensuremath{\rightleftarrows}} %rlarr2
\DefineCharacter{8646}{\ensuremath{\leftrightarrows}} %lrarr2
\DefineCharacter{8647}{\ensuremath{\leftleftarrows}} %larr2
\DefineCharacter{8648}{\ensuremath{\upuparrows}} %uarr2
\DefineCharacter{8649}{\ensuremath{\rightrightarrows}} %rarr2
\DefineCharacter{8650}{\ensuremath{\downdownarrows}} %darr2
\DefineCharacter{8651}{\ensuremath{\leftrightharpoons}}
\DefineCharacter{8651}{\ensuremath{\leftrightharpoons}} %lrhar2
\DefineCharacter{8652}{\ensuremath{\rightleftharpoons}} %rlhar2
\DefineCharacter{8653}{\ensuremath{\nLeftarrow}} %nlArr
\DefineCharacter{8654}{\ensuremath{\nLeftrightarrow}} %nhArr
\DefineCharacter{8655}{\ensuremath{\nRightarrow}} %nrArr
\DefineCharacter{8656}{\ensuremath{\Leftarrow}} %lArr
\DefineCharacter{8657}{\ensuremath{\Uparrow}} %uArr
\DefineCharacter{8658}{\ensuremath{\Longrightarrow}} %rArr
\DefineCharacter{8659}{\ensuremath{\Downarrow}} %dArr
\DefineCharacter{8660}{\ensuremath{\Leftrightarrow}} %iff
\DefineCharacter{8661}{\ensuremath{\Updownarrow}} %vArr
\DefineCharacter{8666}{\ensuremath{\Lleftarrow}} %lAarr
\DefineCharacter{8667}{\ensuremath{\Rrightarrow}} %rAarr
\DefineCharacter{8669}{\ensuremath{\leadsto}} %rarrw
\DefineCharacter{8704}{\ensuremath{\forall}} %forall
\DefineCharacter{8705}{\ensuremath{\complement}} %comp
\DefineCharacter{8706}{\ensuremath{\partial}} %part
\DefineCharacter{8707}{\ensuremath{\exists}} %exist
\DefineCharacter{8708}{\ensuremath{\nexists}} %nexist
\DefineCharacter{8709}{\ensuremath{\emptyset}} %empty
\DefineCharacter{8711}{\ensuremath{\nabla}} %nabla
\DefineCharacter{8712}{\ensuremath{\in}} %isin
\DefineCharacter{8713}{\ensuremath{\not\in}} %notin
\DefineCharacter{8715}{\ensuremath{\ni}} %ni
\DefineCharacter{8719}{\ensuremath{\prod}}
\DefineCharacter{8719}{\ensuremath{\prod}} %prod
\DefineCharacter{8720}{\ensuremath{\amalg}} %amalg
\DefineCharacter{8720}{\ensuremath{\coprod}} %coprod
\DefineCharacter{8721}{\ensuremath{\sum}} %sum
\DefineCharacter{8722}{\ensuremath{-}}
\DefineCharacter{8723}{\ensuremath{\mp}} %mnplus
\DefineCharacter{8724}{\ensuremath{\dotplus}} %plusdo
\DefineCharacter{8728}{\ensuremath{\circ}} %compfn
\DefineCharacter{8733}{\ensuremath{\propto}} %prop
\DefineCharacter{8734}{\ensuremath{\infty}} %infin
\DefineCharacter{8736}{\ensuremath{\angle}} %ang
\DefineCharacter{8737}{\ensuremath{\measuredangle}} %angmsd
\DefineCharacter{8738}{\ensuremath{\sphericalangle}} %angsph
\DefineCharacter{8739}{\ensuremath{|}} %mid
\DefineCharacter{8740}{\ensuremath{\nmid}} %nmid
\DefineCharacter{8741}{\ensuremath{\parallel}} %par
\DefineCharacter{8742}{\ensuremath{\nparallel}} %npar
\DefineCharacter{8743}{\ensuremath{\land}} %and
\DefineCharacter{8744}{\ensuremath{\lor}} %or
\DefineCharacter{8745}{\ensuremath{\cap}} %cap
\DefineCharacter{8746}{\ensuremath{\cup}} %cup
\DefineCharacter{8747}{\ensuremath{\int}}
\DefineCharacter{8747}{\ensuremath{\int}} %int
\DefineCharacter{8750}{\ensuremath{\oint}} %conint
\DefineCharacter{8756}{\ensuremath{\therefore}} %there4
\DefineCharacter{8757}{\ensuremath{\because}} %becaus
\DefineCharacter{8764}{\ensuremath{\sim}} %sim
\DefineCharacter{8765}{\ensuremath{\backsim}} %bsim
\DefineCharacter{8768}{\ensuremath{\wr}} %wreath
\DefineCharacter{8769}{\ensuremath{\nsim}} %nsim
\DefineCharacter{8771}{\ensuremath{\simeq}} %sime
\DefineCharacter{8772}{\ensuremath{\not\simeq}} %nsime
\DefineCharacter{8773}{\ensuremath{\cong}} %cong
\DefineCharacter{8775}{\ensuremath{\ncong}} %ncong
\DefineCharacter{8776}{\ensuremath{\approx}} %ap
\DefineCharacter{8777}{\ensuremath{\not\approx}} %nap
\DefineCharacter{8778}{\ensuremath{\approxeq}} %ape
\DefineCharacter{8781}{\ensuremath{\asymp}} %asymp
\DefineCharacter{8782}{\ensuremath{\Bumpeq}} %bump
\DefineCharacter{8783}{\ensuremath{\bumpeq}} %bumpe
\DefineCharacter{8785}{\ensuremath{\doteqdot}} %eDot
\DefineCharacter{8786}{\ensuremath{\fallingdotseq}} %efDot
\DefineCharacter{8787}{\ensuremath{\risingdotseq}} %erDot
\DefineCharacter{8788}{\ensuremath{\colone}} %colone
\DefineCharacter{8790}{\ensuremath{\eqcirc}} %ecir
\DefineCharacter{8791}{\ensuremath{\circeq}} %cire
\DefineCharacter{8796}{\ensuremath{\triangleq}} %trie
\DefineCharacter{8800}{\ensuremath{\ne}} %ne
\DefineCharacter{8801}{\ensuremath{\equiv}} %equiv
\DefineCharacter{8802}{\ensuremath{\not\equiv}} %nequiv
\DefineCharacter{8804}{\ensuremath{\leqslant}} %les
\DefineCharacter{8804}{\ensuremath{\leq}} %le
\DefineCharacter{8804}{\ensuremath{\le}}
\DefineCharacter{8805}{\ensuremath{\geqslant}} %ges
\DefineCharacter{8805}{\ensuremath{\ge}}
\DefineCharacter{8805}{\ensuremath{\ge}} %ge
\DefineCharacter{8806}{\ensuremath{\leqq}} %lE
\DefineCharacter{8807}{\ensuremath{\geqq}} %gE
\DefineCharacter{8808}{\ensuremath{\lneqq}} %lnE
\DefineCharacter{8809}{\ensuremath{\gneqq}} %gnE
\DefineCharacter{8810}{\ensuremath{\ll}} %Lt
\DefineCharacter{8811}{\ensuremath{\gg}} %Gt
\DefineCharacter{8812}{\ensuremath{\between}} %twixt
\DefineCharacter{8814}{\ensuremath{\nless}} %nlt
\DefineCharacter{8815}{\ensuremath{\ngtr}} %ngt
\DefineCharacter{8816}{\ensuremath{\nleqslant}} %nles
\DefineCharacter{8816}{\ensuremath{\nleq}} %nle
\DefineCharacter{8817}{\ensuremath{\ngeqslant}} %nges
\DefineCharacter{8817}{\ensuremath{\ngeq}} %nge
\DefineCharacter{8818}{\ensuremath{\lesssim}} %lsim
\DefineCharacter{8819}{\ensuremath{\gtrsim}} %gsim
\DefineCharacter{8822}{\ensuremath{\lessgtr}} %lg
\DefineCharacter{8823}{\ensuremath{\gtrless}} %gl
\DefineCharacter{8826}{\ensuremath{\prec}} %pr
\DefineCharacter{8827}{\ensuremath{\succ}} %sc
\DefineCharacter{8829}{\ensuremath{\succcurlyeq}} %sccue
\DefineCharacter{8830}{\ensuremath{\precsim}} %prsim
\DefineCharacter{8831}{\ensuremath{\succsim}} %scsim
\DefineCharacter{8832}{\ensuremath{\nprec}} %npr
\DefineCharacter{8833}{\ensuremath{\nsucc}} %nsc
\DefineCharacter{8834}{\ensuremath{\subset}} %sub
\DefineCharacter{8835}{\ensuremath{\supset}} %sup
\DefineCharacter{8836}{\ensuremath{\not\subset}} %nsub
\DefineCharacter{8837}{\ensuremath{\not\supset}} %nsup
\DefineCharacter{8838}{\ensuremath{\subseteq}} %sube
\DefineCharacter{8839}{\ensuremath{\supseteq}} %supe
\DefineCharacter{8840}{\ensuremath{\not\subseteq}} %nsube
\DefineCharacter{8841}{\ensuremath{\not\supseteq}} %nsupe
\DefineCharacter{8842}{\ensuremath{\subsetneqq}} %subnE
\DefineCharacter{8843}{\ensuremath{\supsetneqq}} %supnE
\DefineCharacter{8846}{\ensuremath{\uplus}} %uplus
\DefineCharacter{8847}{\ensuremath{\sqsubset}} %sqsub
\DefineCharacter{8848}{\ensuremath{\sqsupset}} %sqsup
\DefineCharacter{8849}{\ensuremath{\sqsubseteq}} %sqsube
\DefineCharacter{8851}{\ensuremath{\sqcap}} %sqcap
\DefineCharacter{8852}{\ensuremath{\sqcup}} %sqcup
\DefineCharacter{8853}{\ensuremath{\oplus}} %oplus
\DefineCharacter{8854}{\ensuremath{\ominus}} %ominus
\DefineCharacter{8855}{\ensuremath{\otimes}} %otimes
\DefineCharacter{8856}{\ensuremath{\oslash}} %osol
\DefineCharacter{8857}{\ensuremath{\odot}} %odot
\DefineCharacter{8858}{\ensuremath{\circledcirc}} %ocir
\DefineCharacter{8859}{\ensuremath{\circledast}} %oast
\DefineCharacter{8861}{\ensuremath{\circleddash}} %odash
\DefineCharacter{8862}{\ensuremath{\boxplus}} %plusb
\DefineCharacter{8863}{\ensuremath{\boxminus}} %minusb
\DefineCharacter{8864}{\ensuremath{\boxtimes}} %timesb
\DefineCharacter{8866}{\ensuremath{\vdash}} %vdash
\DefineCharacter{8867}{\ensuremath{\dashv}} %dashv
\DefineCharacter{8869}{\ensuremath{\perp}} %perp
\DefineCharacter{8872}{\ensuremath{\vDash}} %vDash
\DefineCharacter{8873}{\ensuremath{\Vdash}} %Vdash
\DefineCharacter{8874}{\ensuremath{\Vvdash}} %Vvdash
\DefineCharacter{8876}{\ensuremath{\nvdash}} %nvdash
\DefineCharacter{8877}{\ensuremath{\nvDash}} %nvDash
\DefineCharacter{8878}{\ensuremath{\nVdash}} %nVdash
\DefineCharacter{8879}{\ensuremath{\nVDash}} %nVDash
\DefineCharacter{8884}{\ensuremath{\unlhd}} %ltrie
\DefineCharacter{8885}{\ensuremath{\unrhd}} %rtrie
\DefineCharacter{8888}{\ensuremath{\multimap}} %mumap
\DefineCharacter{8890}{\ensuremath{\top}} %intcal
\DefineCharacter{8891}{\ensuremath{\veebar}} %veebar
\DefineCharacter{8892}{\ensuremath{\barwedge}} %barwed
\DefineCharacter{8900}{\ensuremath{\diamond}} %diam
\DefineCharacter{8903}{\ensuremath{\divideontimes}} %divonx
\DefineCharacter{8904}{\ensuremath{\bowtie}} %bowtie
\DefineCharacter{8905}{\ensuremath{\ltimes}} %ltimes
\DefineCharacter{8906}{\ensuremath{\rtimes}} %rtimes
\DefineCharacter{8907}{\ensuremath{\leftthreetimes}} %lthree
\DefineCharacter{8908}{\ensuremath{\rightthreetimes}} %rthree
\DefineCharacter{8909}{\ensuremath{\backsimeq}} %bsime
\DefineCharacter{8910}{\ensuremath{\curlyvee}} %cuvee
\DefineCharacter{8911}{\ensuremath{\curlywedge}} %cuwed
\DefineCharacter{8912}{\ensuremath{\Subset}} %Sub
\DefineCharacter{8913}{\ensuremath{\Supset}} %Sup
\DefineCharacter{8914}{\ensuremath{\Cap}} %Cap
\DefineCharacter{8915}{\ensuremath{\Cup}} %Cup
\DefineCharacter{8916}{\ensuremath{\pitchfork}} %fork
\DefineCharacter{8918}{\ensuremath{\lessdot}} %ldot
\DefineCharacter{8920}{\ensuremath{\lll}} %Ll
\DefineCharacter{8921}{\ensuremath{\ggg}} %Gg
\DefineCharacter{8922}{\ensuremath{\lesseqgtr}} %leg
\DefineCharacter{8923}{\ensuremath{\gtreqless}} %gel
\DefineCharacter{8924}{\ensuremath{\eqslantless}} %els
\DefineCharacter{8925}{\ensuremath{\eqslantgtr}} %egs
\DefineCharacter{8926}{\ensuremath{\curlyeqprec}} %cuepr
\DefineCharacter{8927}{\ensuremath{\curlyeqsucc}} %cuesc
\DefineCharacter{8928}{\ensuremath{\npreceq}} %npre
\DefineCharacter{8929}{\ensuremath{\nsucceq}} %nsce
\DefineCharacter{8934}{\ensuremath{\lnsim}} %lnsim
\DefineCharacter{8935}{\ensuremath{\gnsim}} %gnsim
\DefineCharacter{8936}{\ensuremath{\precnsim}} %prnsim
\DefineCharacter{8937}{\ensuremath{\succnsim}} %scnsim
\DefineCharacter{8938}{\ensuremath{\ntriangleleft}} %nltri
\DefineCharacter{8939}{\ensuremath{\ntriangleright}} %nrtri
\DefineCharacter{8940}{\ensuremath{\ntrianglelefteq}} %nltrie
\DefineCharacter{8941}{\ensuremath{\ntrianglerighteq}} %nrtrie
\DefineCharacter{8968}{\ensuremath{\lceil}} %lceil
\DefineCharacter{8969}{\ensuremath{\rceil}} %rceil
\DefineCharacter{8970}{\ensuremath{\lfloor}} %lfloor
\DefineCharacter{8971}{\ensuremath{\rfloor}} %rfloor
\DefineCharacter{8988}{\ensuremath{\ulcorn}} %ulcorn
\DefineCharacter{8989}{\ensuremath{\urcorn}} %urcorn
\DefineCharacter{8990}{\ensuremath{\dlcorn}} %dlcorn
\DefineCharacter{8991}{\ensuremath{\drcorn}} %drcorn
\DefineCharacter{8994}{\ensuremath{\frown}} %frown
\DefineCharacter{8995}{\ensuremath{\smile}} %smile
\DefineCharacter{9001}{\ensuremath{\langle}} %lang
\DefineCharacter{9001}{\ensuremath{\rangle}}
\DefineCharacter{9002}{\ensuremath{\langle}}
\DefineCharacter{9002}{\ensuremath{\rangle}} %rang
\DefineCharacter{9633}{\ensuremath{\square}} %squ
\DefineCharacter{9642}{\ensuremath{\blacksquare}} %squf
\DefineCharacter{9651}{\ensuremath{\bigtriangleup}} %xutri
\DefineCharacter{9652}{\ensuremath{\blacktriangle}} %utrif
\DefineCharacter{9653}{\ensuremath{\triangle}} %utri
\DefineCharacter{9656}{\ensuremath{\blacktriangleright}} %rtrif
\DefineCharacter{9657}{\ensuremath{\rhd}} %rtri
\DefineCharacter{9661}{\ensuremath{\bigtriangledown}} %xdtri
\DefineCharacter{9662}{\ensuremath{\blacktriangledown}} %dtrif
\DefineCharacter{9663}{\ensuremath{\triangledown}} %dtri
\DefineCharacter{9666}{\ensuremath{\blacktriangleleft}} %ltrif
\DefineCharacter{9667}{\ensuremath{\lhd}} %ltri
\DefineCharacter{9675}{\ensuremath{\bigcirc}} %cir
\DefineCharacter{9733}{\ensuremath{\bigstar}} %starf
\DefineCharacter{9734}{\ding73} %star
\DefineCharacter{9742}{\ding37} %phone
\DefineCharacter{9824}{\ensuremath{\spadesuit}} %spades
\DefineCharacter{9825}{\ensuremath{\heartsuit}} %hearts
\DefineCharacter{9826}{\ensuremath{\diamondsuit}} %diams
\DefineCharacter{9827}{\ensuremath{\clubsuit}} %clubs
\DefineCharacter{9837}{\ensuremath{\flat}} %flat
\DefineCharacter{9838}{\ensuremath{\natural}} %natur
\DefineCharacter{9839}{\ensuremath{\sharp}} %sharp
\DefineCharacter{10003}{\ensuremath{\surd}} %check
\DefineCharacter{10016}{\ensuremath{\maltese}} %malt
\DefineCharacter{10023}{\ensuremath{\lozenge}} %loz
\def\endFOT{\end{document}}
\def\startFOT{%
\RequirePackage[]{hyperref}
\def\pdfBorderAttrs{/Border [0 0 0] }
\pagestyle{fancy}
\@twosidetrue
\hoffset-1in\voffset-1in
\def\setnormal{%
 \let\FontSize\pageFontSize
 \let\LineSpacing\pageLineSpacing
 \let\FontPosture\pageFontPosture
 \let\FontProportionateWidth\pageFontProportionateWidth
 \let\FontWeight\pageFontWeight
 \let\FontFamilyName\pageFontFamilyName
}
\def\headrulewidth{0\p@}
\def\footrulewidth{0\p@}
\begin{document}
\fancyhf{}
\def\familydefault{ptm}
\fontfamily{\familydefault}\selectfont
\pagenumbering{arabic}
%    \end{macrocode}
% Individual users or projects can override anything in this 
% setup with a configuration file, loaded here, called
% \texttt{jade.cfg}.
%    \begin{macrocode}
\InputIfFileExists{jade.cfg}{}{}
\typeout{JADE TeX starts}
\Mathcount0}
\catcode`\^^M=10%
%    \end{macrocode}
%<*package>
% \Finale
%
\endinput
