%PDF- %PDF-
| Direktori : /proc/self/root/data/old/usr/share/texlive/texmf-dist/tex/generic/tex4ht/ |
| Current File : //proc/self/root/data/old/usr/share/texlive/texmf-dist/tex/generic/tex4ht/jsml-math.4ht |
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% jsml-math.4ht 2007-07-13-09:20 %
% Copyright (C) 2006--2007 Eitan M. Gurari %
% %
% This work may be distributed and/or modified under the %
% conditions of the LaTeX Project Public License, either %
% version 1.3 of this license or (at your option) any %
% later version. The latest version of this license is %
% in %
% http://www.latex-project.org/lppl.txt %
% and version 1.3 or later is part of all distributions %
% of LaTeX version 2003/12/01 or later. %
% %
% This work has the LPPL maintenance status "maintained".%
% %
% This Current Maintainer of this work %
% is Eitan M. Gurari. %
% %
% If you modify this program your changing its signature %
% with a directive of the following form will be %
% appreciated. %
% \message{signature} %
% %
% gurari@cse.ohio-state.edu %
% http://www.cse.ohio-state.edu/~gurari %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\immediate\write-1{version 2007-07-13-09:20}
\exit:ifnot{Preamble,%
amsmath,%
amsopn,%
array,%
fontmath,%
latex,%
plain,%
tex4ht}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\ConfigureHinput{Preamble}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\:CheckOption{math-} \if:Option
\edef\Preamble{\Preamble,mathml-}
\else
\Log:Note{for sources failing to produce
clean math code, try the command line option `math-'}%
\fi
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\endinput\empty\empty\empty\empty\empty\empty
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\ConfigureHinput{tex4ht}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\NewConfigure{speak:description}{3}
\Configure{speak:description}
{<BREAK SIZE="small"/>begin \ifcase\csname @listdepth\endcsname
\or \or sub \or sub sub \or sub sub sub \else\fi
list}
{<BREAK SIZE="small"/>end \ifcase\csname @listdepth\endcsname
\or sub \or sub sub \or sub sub sub \else\fi
list<BREAK SIZE="small"/>}
{<BREAK SIZE="small"/>
item}
\Configure{DviMath}
{\a:DviMathSpk \mathmltrue
\ifOption{mml-fonts}{}{\NoFonts}%
\IgnoreRule \HCode{<!--l.
\the\inputlineno-->}\a:math
\edef\sv:ignore{\if:nopar
\noexpand\IgnorePar\else \noexpand\ShowPar\fi}%
\IgnorePar}
{\EndIgnoreRule
\mathmlfalse \b:DviMathSpk \sv:ignore
}
\NewConfigure{DviMathSpk}{2}
\Configure{math}{}
\Configure{$}
{\Configure{DviMathSpk}
{\HCode{<span class="inline-math">%
\add:description{begin-math}{\a:speak:math}}}
{\HCode{\add:description{end-math}{\b:speak:math}</span>}}%
\DviMath}
{\EndDviMath}{}
\Configure{$$}
{\Configure{@math}{div}\IgnorePar
\ifvmode\else \HCode{<!--tex4ht:inline-->}\fi
\EndP
\Configure{DviMathSpk}
{\HCode{<div class="display-math">%
\add:description{begin-math}{\a:speak:math}}}
{\HCode{\add:description{end-math}{\b:speak:math}</div>}}%
\DviMath}
{\EndDviMath
\ShowPar\par{\csname HCondtrue\endcsname\noindent}}
{\DisplayMathtrue}
\NewConfigure{speak:math}{2}
\Configure{speak:math}
{%<BREAK SIZE="small"/><PROS PITCH="-5" >math</PROS>
<BREAK SIZE="small"/>}
{%<BREAK SIZE="small"/><PROS PITCH="-5" >end math</PROS>
<BREAK SIZE="small"/>}
\Configure{SUB}
{\Send{BACK}
{<msub><mrow class="mrow-base"\Hnewline>%
}\HCode{</mrow><mrow class="mrow-sub"\Hnewline
>\add:description{begin-script}{\a:speak:subsup}%
<PROS PITCH="-10">}\trap:base
}
{\HCode{</PROS>\add:description{end-script}{\c:speak:subsup}%
</mrow></msub\Hnewline>}%
}
\Configure{SUP}
{\Send{BACK}
{<msup><mrow class="mrow-base"\Hnewline>%
}\HCode{</mrow><mrow class="mrow-super"\Hnewline
>\add:description{begin-script}{\b:speak:subsup}%
<PROS PITCH="+10">}\trap:base
}
{\HCode{</PROS>\add:description{end-script}{\c:speak:subsup}%
</mrow></msup\Hnewline>}%
}
\Configure{SUBSUP}
{\Send{BACK}
{<msubsup><mrow class="mrow-base"\Hnewline>%
}\HCode{</mrow><mrow class="mrow-sub"\Hnewline
>\add:description{begin-script}{\a:speak:subsup}%
<PROS PITCH="-10">}\trap:base
}
{\HCode{</PROS></mrow><mrow class="mrow-super"\Hnewline
>\add:description{mid-script}{\b:speak:subsup}%
<PROS PITCH="+10">}\trap:base
}
{\HCode{</PROS>\add:description{end-script}{\c:speak:subsup}%
</mrow></msubsup\Hnewline>}%
}
\Configure{limits}{\let\pl:SUB =\:UnDef
\let\pl:SUP =\:UnDef
\ifx \:temp\sp \def\pl:SUP{\Configure{SUP}}%
\expandafter\append:def
\expandafter\pl:SUP\expandafter{\expandafter{\a:SUP}}%
\expandafter\append:def
\expandafter\pl:SUP\expandafter{\expandafter{\b:SUP}}%
%
\Configure{SUP}
{\Send{BACK}{<msup
class="limits-msub-msup"><mrow
class="limits-mrow-base"\Hnewline>%
}%
\HCode{</mrow><mrow class="limits-mrow-super"\Hnewline
>\add:description{begin-limits-script}{\b:speak:underover}}%
\trap:base
%
\bgroup
\ifx \pl:SUBSUP\:UnDef \else
\let\SUBSUP:=\pl:SUBSUP
\fi
%
\Configure{SUP}
{\Send{BACK}
{<msup><mrow class="mrow-base"\Hnewline>%
}\HCode{</mrow><mrow class="mrow-super"\Hnewline
>\add:description{begin-script}{\b:speak:subsup}%
<PROS PITCH="+10">}\trap:base
%
\bgroup
\Configure{SUP}
{\Send{BACK}
{<msup><mrow class="mrow-base"\Hnewline>%
}\HCode{</mrow><mrow class="mrow-super"\Hnewline
>\add:description{begin-script}{\b:speak:subsup}%
<PROS PITCH="+10">}\trap:base
%
\bgroup \trap:base}
{\egroup \HCode{</PROS>\add:description{end-script}{\c:speak:subsup}%
</mrow></msup\Hnewline>}%
%
}%
\trap:base}
{\egroup\HCode{\add:description{end-limits-script}{\c:speak:underover}%
</mrow></msup\Hnewline
>}\aftergroup\pl:SUP %
}%
\trap:base}
{}%
\else
\ifx \:temp\sb \def\pl:SUB{\Configure{SUB}}%
\expandafter\append:def
\expandafter\pl:SUB\expandafter{\expandafter{\a:SUB}}%
\expandafter\append:def
\expandafter\pl:SUB\expandafter{\expandafter{\b:SUB}}%
%
\Configure{SUB}
{\Send{BACK}{<msub
class="limits-msub-msup"><mrow
class="limits-mrow-base"\Hnewline>%
}%
\HCode{</mrow><mrow class="limits-mrow-sub"\Hnewline
>\add:description{begin-limits-script}{\a:speak:underover}}%
\trap:base
%
\bgroup
\ifx \pl:SUBSUP\:UnDef \else
\let\SUBSUP:=\pl:SUBSUP
\fi
%
\Configure{SUB}
{\Send{BACK}
{<msub><mrow class="mrow-base"\Hnewline>%
}\HCode{</mrow><mrow class="mrow-sub"\Hnewline
>\add:description{begin-script}{\a:speak:subsup}%
<PROS PITCH="-10">}\trap:base
%
\bgroup
\Configure{SUB}
{\Send{BACK}
{<msub><mrow class="mrow-base"\Hnewline>%
}\HCode{</mrow><mrow class="mrow-sub"\Hnewline
>\add:description{begin-script}{\a:speak:subsup}%
<PROS PITCH="-10">}\trap:base
%
\bgroup \trap:base}
{\egroup \HCode{</PROS>\add:description{end-script}{\c:speak:subsup}%
</mrow></msub\Hnewline>}%
%
}%
\trap:base}
{\egroup\HCode{\add:description{end-limits-script}{\c:speak:underover}%
</mrow></msub\Hnewline >}\aftergroup\pl:SUB %
}%
\trap:base}
{}%
\fi\fi
\let\pl:SUBSUP=\SUBSUP:
%
\Configure{SUBSUP}
{\ifx \pl:SUB \:UnDef\else \pl:SUB \fi
\ifx \pl:SUP \:UnDef\else \pl:SUP \fi
\ifx \pl:SUBSUP\:UnDef \else
\let\SUBSUP:=\pl:SUBSUP
\fi
%
\Send{BACK}
{<msubsup class="limits-msub-msup"><mrow
class="limits-mrow-base"\Hnewline>%
}\HCode{</mrow><mrow class="limits-mrow-sub"\Hnewline
>\add:description{begin-limits-script}{\a:speak:underover}}%
\trap:base
}
{\HCode{</mrow><mrow class="limits-mrow-super"\Hnewline
>\add:description{mid-limits-script}{\b:speak:underover}}\trap:base
}
{\HCode{\add:description{end-limits-script}{\c:speak:underover}%
</mrow></msubsup\Hnewline>}%
}
%
}
\def\disp:limits{\let\pl:SUB =\:UnDef
\let\pl:SUP =\:UnDef
\ifx \:temp\sp \def\pl:SUP{\Configure{SUP}}%
\expandafter\append:def
\expandafter\pl:SUP\expandafter{\expandafter{\a:SUP}}%
\expandafter\append:def
\expandafter\pl:SUP\expandafter{\expandafter{\b:SUP}}%
%
\Configure{SUP}
{\Send{BACK}{<msup
class="limits-msub-msup"><mrow
class="limits-mrow-base"\Hnewline>%
}%
\HCode{</mrow><mrow class="limits-mrow-super"\Hnewline
>\add:description{begin-limits-script}{\b:speak:underover}}%
\trap:base
%
\bgroup
\ifx \pl:SUBSUP\:UnDef \else
\let\SUBSUP:=\pl:SUBSUP
\fi
%
\Configure{SUP}
{\Send{BACK}
{<msup><mrow class="mrow-base"\Hnewline>%
}\HCode{</mrow><mrow class="mrow-super"\Hnewline
>\add:description{begin-script}{\b:speak:subsup}%
<PROS PITCH="+10">}\trap:base
%
\bgroup
\Configure{SUP}
{\Send{BACK}
{<msup><mrow class="mrow-base"\Hnewline>%
}\HCode{</mrow><mrow class="mrow-super"\Hnewline
>\add:description{begin-script}{\b:speak:subsup}%
<PROS PITCH="+10">}\trap:base
%
\bgroup \trap:base}
{\egroup \HCode{</PROS>\add:description{end-script}{\c:speak:subsup}%
</mrow></msup\Hnewline>}%
%
}%
\trap:base}
{\egroup\HCode{\add:description{end-limits-script}{\c:speak:underover}%
</mrow></msup\Hnewline
>}\aftergroup\pl:SUP %
}%
\trap:base}
{}%
\else
\ifx \:temp\sb \def\pl:SUB{\Configure{SUB}}%
\expandafter\append:def
\expandafter\pl:SUB\expandafter{\expandafter{\a:SUB}}%
\expandafter\append:def
\expandafter\pl:SUB\expandafter{\expandafter{\b:SUB}}%
%
\Configure{SUB}
{\Send{BACK}{<msub
class="limits-msub-msup"><mrow
class="limits-mrow-base"\Hnewline>%
}%
\HCode{</mrow><mrow class="limits-mrow-sub"\Hnewline
>\add:description{begin-limits-script}{\a:speak:underover}}%
\trap:base
%
\bgroup
\ifx \pl:SUBSUP\:UnDef \else
\let\SUBSUP:=\pl:SUBSUP
\fi
%
\Configure{SUB}
{\Send{BACK}
{<msub><mrow class="mrow-base"\Hnewline>%
}\HCode{</mrow><mrow class="mrow-sub"\Hnewline
>\add:description{begin-script}{\a:speak:subsup}%
<PROS PITCH="-10">}\trap:base
%
\bgroup
\Configure{SUB}
{\Send{BACK}
{<msub><mrow class="mrow-base"\Hnewline>%
}\HCode{</mrow><mrow class="mrow-sub"\Hnewline
>\add:description{begin-script}{\a:speak:subsup}%
<PROS PITCH="-10">}\trap:base
%
\bgroup \trap:base}
{\egroup \HCode{</PROS>\add:description{end-script}{\c:speak:subsup}%
</mrow></msub\Hnewline>}%
%
}%
\trap:base}
{\egroup\HCode{\add:description{end-limits-script}{\c:speak:underover}%
</mrow></msub\Hnewline >}\aftergroup\pl:SUB %
}%
\trap:base}
{}%
\fi\fi
\let\pl:SUBSUP=\SUBSUP:
%
\Configure{SUBSUP}
{\ifx \pl:SUB \:UnDef\else \pl:SUB \fi
\ifx \pl:SUP \:UnDef\else \pl:SUP \fi
\ifx \pl:SUBSUP\:UnDef \else
\let\SUBSUP:=\pl:SUBSUP
\fi
%
\Send{BACK}
{<msubsup class="limits-msub-msup"><mrow
class="limits-mrow-base"\Hnewline>%
}\HCode{</mrow><mrow class="limits-mrow-sub"\Hnewline
>\add:description{begin-limits-script}{\a:speak:underover}}%
\trap:base
}
{\HCode{</mrow><mrow class="limits-mrow-super"\Hnewline
>\add:description{mid-limits-script}{\b:speak:underover}}\trap:base
}
{\HCode{\add:description{end-limits-script}{\c:speak:underover}%
</mrow></msubsup\Hnewline>}%
}
%
}
\ifx \a:putSUB\:UnDef \else
\pend:def\a:putSUB{\ifx \pl:SUBSUP\:UnDef\else
\let\SUBSUP:=\pl:SUBSUP
\let\pl:SUBSUP=\:UnDef
\fi}%
\fi
\ifx \a:putSUP\:UnDef \else
\pend:def\a:putSUP{\ifx \pl:SUBSUP\:UnDef\else
\let\SUBSUP:=\pl:SUBSUP
\let\pl:SUBSUP=\:UnDef
\fi}%
\fi
\NewConfigure{speak:subsup}{3}
\Configure{speak:subsup}
{<PROS PITCH="-5"><BREAK SIZE="small"/>
<span class="scripts-extra"> subscript </span>
<BREAK SIZE="small"/></PROS>}
{<PROS PITCH="+5"><BREAK SIZE="small"/>
<span class="scripts-extra"> superscript </span>
<BREAK SIZE="small"/></PROS>}
{<PROS PITCH="-5"><BREAK SIZE="medium"/>
<span class="scripts-extra"> baseline </span>
<BREAK SIZE="small"/></PROS>}
\Configure{over}
{\Send{GROUP}{0}{<mfrac>\add:description{begin-end}{\a:speak:fraction}%
<mrow class="mrow-numerator"\Hnewline>%
}\HCode{</mrow>}%
}
{\HCode{\add:description{begin-end}{\c:speak:fraction}
<mrow class="mrow-enumerator"\Hnewline>}%
\Send{EndGROUP}{0}{</mrow>\add:description{begin-end}{\b:speak:fraction}</mfrac>%
}}
\Configure{atop}
{\Send{GROUP}{0}{<mover class="atop">%
\add:description{begin-stack}{\a:speak:atop}%
<mrow class="mrow-upper">%
}\HCode{</mrow>}%
}
{\HCode{\add:description{added-description}{\c:speak:atop}<mrow class="mrow-under">}%
\Send{EndGROUP}{0}{</mrow>\add:description{end-stack}{\b:speak:atop}</mover>%
}}
\Configure{above}
{\Send{GROUP}{0}{<mfrac>\add:description{begin-end}{\a:speak:fraction}%
<mrow class="mrow-numerator"\Hnewline>%
%
}%
\HCode{</mrow>}%
%
\o:over:\:gobbleII}
{\HCode{\add:description{begin-end}{\c:speak:fraction}
<mrow class="mrow-enumerator"\Hnewline>}%
%
\Send{EndGROUP}{0}{</mrow>\add:description{begin-end}{\b:speak:fraction}</mfrac>%
%
}}
\def\abovewithdelims:III#1#2#3{%
\def\:temp{#2#3}\def\:tempa{..}\ifx \:temp\:tempa
\Send{GROUP}{0}{<mfrac>\add:description{begin-end}{\a:speak:fraction}%
<mrow class="mrow-numerator"\Hnewline>%
%
}%
\HCode{</mrow>}%
%
\o:over:
\HCode{\add:description{begin-end}{\c:speak:fraction}
<mrow class="mrow-enumerator"\Hnewline>}%
%
\Send{EndGROUP}{0}{</mrow>\add:description{begin-end}{\b:speak:fraction}</mfrac>%
%
}
\else
\Send{GROUP}{0}%
{<mo class="mfenced-open">\expandafter
\ifx \csname \string#2:lr del\endcsname\relax #2\else
\csname \string#2:lr del\endcsname\fi
</mo>%
<mfrac>\add:description{begin-end}{\a:speak:fraction}%
<mrow class="mrow-numerator"\Hnewline>%
%
}%
\HCode{</mrow>}%
%
\o:over:
\HCode{\add:description{begin-end}{\c:speak:fraction}
<mrow class="mrow-enumerator"\Hnewline>}%
%
\Send{EndGROUP}{0}{</mrow>\add:description{begin-end}{\b:speak:fraction}</mfrac>%
%
%
<mo class="mfenced-close">\expandafter
\ifx \csname \string#3:lr del\endcsname\relax #3\else
\csname \string#3:lr del\endcsname\fi
</mo>}
\fi
\tmp:dim
}
\def\atopwithdelims:III#1#2#3{%
\def\:temp{#2#3}\def\:tempa{..}\ifx \:temp\:tempa
\Send{GROUP}{0}{<mover class="atop">%
\add:description{begin-stack}{\a:speak:atop}%
<mrow class="mrow-upper">%
}%
\HCode{</mrow>}%
\o:atop:
\HCode{\add:description{added-description}{\c:speak:atop}<mrow class="mrow-under">}%
\Send{EndGROUP}{0}{</mrow>\add:description{end-stack}{\b:speak:atop}</mover>%
}
\else
\Send{GROUP}{0}%
{<mo class="mfenced-open">\expandafter
\ifx \csname \string#2:lr del\endcsname\relax #2\else
\csname \string#2:lr del\endcsname\fi
</mo>%
<mover class="atop">%
\add:description{begin-stack}{\a:speak:atop}%
<mrow class="mrow-upper">%
}%
\HCode{</mrow>}%
\o:atop:
\HCode{\add:description{added-description}{\c:speak:atop}<mrow class="mrow-under">}%
%
\Send{EndGROUP}{0}{</mrow>\add:description{end-stack}{\b:speak:atop}</mover>%
%
<mo class="mfenced-close">\expandafter
\ifx \csname \string#3:lr del\endcsname\relax #3\else
\csname \string#3:lr del\endcsname\fi
</mo>}
\fi
}
\def\overwithdelims:III#1#2#3{%
\def\:temp{#2#3}\def\:tempa{..}\ifx \:temp\:tempa
\Send{GROUP}{0}{<mfrac>\add:description{begin-end}{\a:speak:fraction}%
<mrow class="mrow-numerator"\Hnewline>%
}\HCode{</mrow>}%
\o:over:
\HCode{\add:description{begin-end}{\c:speak:fraction}
<mrow class="mrow-enumerator"\Hnewline>}%
\Send{EndGROUP}{0}{</mrow>\add:description{begin-end}{\b:speak:fraction}</mfrac>%
}
\else
\Send{GROUP}{0}%
{<mo class="mfenced-open">\expandafter
\ifx \csname \string#2:lr del\endcsname\relax #2\else
\csname \string#2:lr del\endcsname\fi
</mo>%
<mfrac>\add:description{begin-end}{\a:speak:fraction}%
<mrow class="mrow-numerator"\Hnewline>%
}%
\HCode{</mrow>}%
\o:over:
\HCode{\add:description{begin-end}{\c:speak:fraction}
<mrow class="mrow-enumerator"\Hnewline>}%
\Send{EndGROUP}{0}{</mrow>\add:description{begin-end}{\b:speak:fraction}</mfrac>%
%
<mo class="mfenced-close">\expandafter
\ifx \csname \string#3:lr del\endcsname\relax #3\else
\csname \string#3:lr del\endcsname\fi
</mo>}
\fi
}
\NewConfigure{speak:fraction}{3}
\Configure{speak:fraction}
{<BREAK SIZE="small"/><level prefix="begin"
continued="begin continued fraction">begin
fraction</level><BREAK SIZE="small"/>}
{<BREAK SIZE="small"/><level prefix="end"
continued="end continued fraction">end
fraction</level><BREAK SIZE="small"/>}
{<BREAK SIZE="small"/><level prefix="over">%
over</level><BREAK SIZE="small"/>}
\NewConfigure{speak:atop}{3}
\Configure{speak:atop}
{<BREAK SIZE="small"/>begin stack<BREAK SIZE="small"/>}
{<BREAK SIZE="small"/>end stack<BREAK SIZE="small"/>}
{<BREAK SIZE="small"/>over<BREAK SIZE="small"/>}
\Configure{radical}
{\HCode{<msqrt>%
\add:description{begin-root}{\a:speak:radical}}%
\special{t4ht\string~!e<<mrow class="root-base">}%
\special{t4ht\string~!e></mrow>%
\add:description{end-root}{\b:speak:radical}</msqrt>}%
\special{t4ht\string~!ee/}%
\special{t4ht\string~!ese-}%
}
\NewConfigure{speak:radical}{2}
\Configure{speak:radical}
{<BREAK SIZE="small"/><level prefix="begin">begin
root</level><BREAK SIZE="small"/>}
{<BREAK SIZE="small"/><level prefix="end">end
root</level><BREAK SIZE="small"/>}
\NewConfigure{speak:underover}{3}
\Configure{speak:underover}
{<BREAK SIZE="small"/>under script<BREAK SIZE="small"/>}
{<BREAK SIZE="small"/>over script<BREAK SIZE="small"/>}
{<BREAK SIZE="small"/>end scripts<BREAK SIZE="small"/>}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\endinput\empty\empty\empty\empty\empty\empty
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\ConfigureHinput{latex}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\Configure{[]}
{\Configure{@math}{div}\IgnorePar
\ifvmode\else \HCode{<!--tex4ht:inline-->}\fi
\EndP
\Configure{DviMathSpk}
{\HCode{<div class="display-math">%
\add:description{begin-math}{\a:speak:math}}}
{\HCode{\add:description{end-math}{\b:speak:math}</div>}}%
\DviMath $$\DisplayMathtrue }
{$$\EndDviMath}
\Configure{()}
{\Configure{DviMathSpk}
{\HCode{<span class="inline-math">%
\add:description{begin-math}{\a:speak:math}}}
{\HCode{\add:description{end-math}{\b:speak:math}</span>}}%
\DviMath $}
{$\EndDviMath}
\Configure{choose}
{\Send{GROUP}{0}{<mover class="choose">%
\add:description{begin-stack}{\a:speak:choose}%
<mrow class="mrow-upper">}%
\HCode{</mrow>}\o:atop:
\HCode{\add:description{added-description}%
{\c:speak:choose}<mrow class="mrow-under">}%
\Send{EndGROUP}{0}%
{</mrow>\add:description{end-stack}{\b:speak:choose}</mover>}%
}
\NewConfigure{speak:choose}{3}
\Configure{speak:choose}
{<BREAK SIZE="small"/>binomial coefficient<BREAK SIZE="small"/>}
{<BREAK SIZE="medium"/>}
{<BREAK SIZE="small"/>choose<BREAK SIZE="small"/>}
\Configure{mfenced}{\vert}{\string&\#x007C;}
\Configure{mfenced}{\{}{\string&\#x007B;}
\Configure{mfenced}{\}}{\string&\#x007D;}
\Configure{mfenced}{\lbrace}{\string&\#x007B;}
\Configure{mfenced}{\rbrace}{\string&\#x007D;}
\Configure{mfenced}{\rgroup}{\string&\#x0028;}
\Configure{mfenced}{\lgroup}{\string&\#x0029;}
\Configure{mfenced}{(}{\string&\#x0028;}
\Configure{mfenced}{)}{\string&\#x0029;}
\Configure{mfenced}{[}{\string&\#x0058;}
\Configure{mfenced}{]}{\string&\#x0059;}
\Configure{mfenced}{|}{\string&\#x007C;}
\Configure{mfenced}{\bracevert}{\string&\#x007C;}
\Configure{mfenced}{\bracevert}{\string&\#x007C;}
\def\mathop:prefix#1{%
\Configure{mathop}{*}{<mo class="mo-op"
#1\Hnewline>}{</mo>}%
{\Configure{mathop}{*}{<mo class="mo-op">}{</mo>}{}}}
\Configure{quad}{\HCode{<span class="space"><BREAK SIZE="small"/></span>%
}}
\Configure{qquad}{\HCode{<span class="space"><BREAK SIZE="small"/></span>%
}}
\Configure{,}{\HCode{<span class="tiny-space"><BREAK SIZE="small"/></span>%
}}
\Configure{ }{\:nbsp}
\def\:nbsp{\leavevmode\special{t4ht@+\string&{35}x00A0{59}}x}
\Configure{root}
{\HCode{<mroot>%
\add:description{begin-root}{\a:speak:root}%
<mrow class="root-index">}}
{\HCode{</mrow>\add:description{mid-root}{\b:speak:root}%
<mrow class="root-base">}}
{\HCode{</mrow>\add:description{end-root}{\c:speak:root}</mroot>}}
\NewConfigure{speak:root}{3}
\Configure{speak:root}
{<BREAK SIZE="medium"/><level prefix="root">root
index</level><BREAK SIZE="medium"/>}
{<BREAK SIZE="medium"/><level prefix="begin">begin
root</level><BREAK SIZE="medium"/>}
{<BREAK SIZE="medium"/><level prefix="end">end
root</level><BREAK SIZE="medium"/>}
\Configure{left}
{}
{\HCode{\expandafter
\ifx \csname \string#1:lr del\endcsname\relax #1\else
\csname \string#1:lr del\endcsname\fi
}\bgroup
\HCode{<mrow>}\bgroup}
\Configure{right}
{\egroup\HCode{</mrow>}\egroup
\HCode{\expandafter
\ifx \csname \string#1:lr del\endcsname\relax #1\else
\csname \string#1:lr del\endcsname\fi
}}
{}
\Configure{mfenced}{\vert}{|}
\edef\:temp{\noexpand\Configure{mfenced}{\noexpand\{}{\string&\#x007B;}}\:temp
\edef\:temp{\noexpand\Configure{mfenced}{\noexpand\}}{\string&\#x007D;}}\:temp
\edef\:temp{\noexpand
\Configure{mfenced}{\noexpand\lbrace}{\string&\#x007B;}}\:temp
\edef\:temp{\noexpand
\Configure{mfenced}{\noexpand\rbrace}{\string&\#x007D;}}\:temp
\def\mathinner#1{\Tg<span
class="mathinner">#1\Tg</span>}
\:CheckOption{new-accents} \if:Option \else
\Configure{accent}\widetilde\widetilde{{}{}}
{}
{\HCode{<mover class="mover-tilde">%
\add:description{begin-end}{\b:speak:modified}%
<mrow class="mo-0303"\Hnewline>}%
#2%
\HCode{</mrow>\add:description{begin-end}{\a:speak:modified:tilde}%
</mover>}}
\Configure{accent}\widehat\widehat{{}{}}
{}
{\HCode{<mover class="mover-hat">%
\add:description{begin-end}{\a:speak:modified}%
<mrow class="mo-0302"\Hnewline>}%
#2%
\HCode{</mrow>\add:description{begin-end}{
\a:speak:modified:hat}</mover>}}
\Configure{accents}
{\ifmmode \expandafter\mathord\fi
{\leavevmode
\if !#1!\ht:special{t4ht@+&{35}x#2;}%
\else \expandafter \ifx\csname U#2#1\endcsname\relax
\ht:special{t4ht@+&{35}x#2;}%
\else
\ht:special{t4ht@+&{35}x\csname U#2#1\endcsname;}%
\fi \fi x%
%
\ht:special{t4ht@[}\if!#1!x\else#2\fi
\ht:special{t4ht@]}}}
{\ifmathml
\ifmtext \expandafter\ifx \csname :#1:over\endcsname\relax
\expandafter\ifx \csname :#1:under\endcsname\relax
\AccentMath{\expandafter\ifx \csname :#1:over\endcsname\relax
\HCode{<munder\Hnewline
accent="true"><mrow\Hnewline><BREAK SIZE="small"/>}%
#3\HCode{</mrow>}%
\csname :#1:under\endcsname
\HCode{</munder>}%
%
\else \expandafter\ifx \csname :#1:under\endcsname\relax
\HCode{<mover class="mover-accent">%
<mrow\Hnewline><BREAK SIZE="small"/>}%
#3\HCode{</mrow>}%
\csname prefix:#1:over\endcsname
\csname :#1:over\endcsname
\HCode{</mover>}%
%
\else
\HCode{<munderover\Hnewline
accent="true"><mrow\Hnewline><BREAK SIZE="small"/>}%
#3\HCode{</mrow>}%
\csname :#1:under\endcsname
\csname :#1:over\endcsname
\HCode{</munderover>}%
%
\fi \fi
}%
\else #3\csname :#1:under\endcsname \fi
\else #3\csname :#1:over\endcsname \fi
%
\else \AccentMath{\expandafter\ifx \csname :#1:over\endcsname\relax
\HCode{<munder\Hnewline
accent="true"><mrow\Hnewline><BREAK SIZE="small"/>}%
#3\HCode{</mrow>}%
\csname :#1:under\endcsname
\HCode{</munder>}%
%
\else \expandafter\ifx \csname :#1:under\endcsname\relax
\HCode{<mover class="mover-accent">%
<mrow\Hnewline><BREAK SIZE="small"/>}%
#3\HCode{</mrow>}%
\csname prefix:#1:over\endcsname
\csname :#1:over\endcsname
\HCode{</mover>}%
%
\else
\HCode{<munderover\Hnewline
accent="true"><mrow\Hnewline><BREAK SIZE="small"/>}%
#3\HCode{</mrow>}%
\csname :#1:under\endcsname
\csname :#1:over\endcsname
\HCode{</munderover>}%
%
\fi \fi
}\fi
\else \expandafter\ifx \csname :#1:over\endcsname\relax
\expandafter\ifx \csname :#1:under\endcsname\relax
\AccentMath{\expandafter\ifx \csname :#1:over\endcsname\relax
\HCode{<munder\Hnewline
accent="true"><mrow\Hnewline><BREAK SIZE="small"/>}%
#3\HCode{</mrow>}%
\csname :#1:under\endcsname
\HCode{</munder>}%
%
\else \expandafter\ifx \csname :#1:under\endcsname\relax
\HCode{<mover class="mover-accent">%
<mrow\Hnewline><BREAK SIZE="small"/>}%
#3\HCode{</mrow>}%
\csname prefix:#1:over\endcsname
\csname :#1:over\endcsname
\HCode{</mover>}%
%
\else
\HCode{<munderover\Hnewline
accent="true"><mrow\Hnewline><BREAK SIZE="small"/>}%
#3\HCode{</mrow>}%
\csname :#1:under\endcsname
\csname :#1:over\endcsname
\HCode{</munderover>}%
%
\fi \fi
}%
\else #3\csname :#1:under\endcsname \fi
\else #3\csname :#1:over\endcsname \fi
\fi
}
\fi
\Configure{cases}
{}{} {\HCode{<PARA><mtable>}}{\HCode{</mtable></PARA>}}
{\Tg<mtr>}{\Tg</mtr>}
{\Tg<mtd class="cases">}{\Tg</mtd>}
\Configure{matrix}
{\PushStack\Table:Stck\TableNo
\gHAdvance\Next:TableNo by 1
\global\let\TableNo=\Next:TableNo
%
\PushStack\Row:Stck\HRow \HAssign\HRow=0\relax
%
\HCode{<PARA><mtable class="array">}%
\HCode{\add:vdescription{begin-array}{\a:speak:array}}}
{\Tag{array-\TableNo}{\hrow:s}%
\HCode{<!--l. \the\inputlineno-->%
%
\add:vdescription{end-array}{\b:speak:array}}%
\ifvmode \IgnorePar\fi \HCode{</mtable></PARA>}%
\PopStack\Row:Stck\HRow
%
\PopStack\Table:Stck\TableNo
}
{\HCode{<mtr>}\c:speak:array}%
{\xdef\hrow:s{\HRow}\HCode{</mtr>}}%
{\HCode{<mtd>}%
\e:speak:array\HCode{<div>}}
{\HCode{</div>}\f:speak:array
\HCode{</mtd>\Hnewline}}
\Configure{pmatrix}
{\bgroup\HCode{<PARA><div class="pmatrix"><BREAK SIZE="small"/>}}
{\HCode{<BREAK SIZE="small"/></div></PARA>}\egroup}
\NewConfigure{speak:array}{6}
\Configure{speak:array}
{<BREAK SIZE="small"/>begin array with
\ifTag{array-\TableNo}{\LikeRef{array-\TableNo}}{}
rows<BREAK SIZE="small"/>}
{<BREAK SIZE="small"/>end array<BREAK SIZE="small"/>}
{\HCode{%
<BREAK SIZE="medium"/><PROS PITCH="-5" >%
\add:vdescription{begin-end}{<span class="ord-row">\ord:pos{\HRow}</span>%
row}%
</PROS><BREAK SIZE="medium"/>%
}%
}
{}
{\HCode{%
<BREAK SIZE="medium"/>%
\ifnum \HMultispan>1
<PROS PITCH="-5" >%
\add:vdescription{added-description}{\ord:pos{\HCol}%
cell
spans \HMultispan \space columns}%
</PROS><BREAK SIZE="medium"/>%
\else
\ifnum \HCol>1
<PROS PITCH="-5" >%
\add:vdescription{added-description}{\ord:pos{\HCol}%
cell}%
</PROS><BREAK SIZE="medium"/>%
\fi
\fi
}%
}
{}
\NewConfigure{speak:smallmatrix}{6}
\Configure{speak:smallmatrix}
{begin matrix with
\ifTag{smallmatrix-\TableNo}{\LikeRef{smallmatrix-\TableNo}}{}
rows}
{end matrix}
{\HCode{%
<BREAK SIZE="medium"/><PROS PITCH="-5" >%
\add:vdescription{begin-end}{<span class="ord-row">\ord:pos{\HRow}</span>%
row}%
</PROS><BREAK SIZE="medium"/>%
}%
}
{}
{\HCode{%
<BREAK SIZE="medium"/>%
\ifnum \HMultispan>1
<PROS PITCH="-5" >%
\add:vdescription{added-description}{\ord:pos{\HCol}%
cell
spans \HMultispan \space columns}%
</PROS><BREAK SIZE="medium"/>%
\else
\ifnum \HCol>1
<PROS PITCH="-5" >%
\add:vdescription{added-description}{\ord:pos{\HCol}%
cell}%
</PROS><BREAK SIZE="medium"/>%
\fi
\fi
}%
}
{}
\Configure{frac}
{\HCode{<mfrac>\add:description{begin-end}{\a:speak:fraction}%
<mrow class="mrow-numerator"\Hnewline>%
}}
{\HCode{</mrow>}%
\Configure{over}{}{}}
{\HCode{\add:description{begin-end}{\c:speak:fraction}
<mrow class="mrow-enumerator"\Hnewline>}%
}
{\HCode{</mrow>\add:description{begin-end}{\b:speak:fraction}</mfrac>%
}}
\def\:MM{m}
\Configure{HBorder}
{<mtr\Hnewline class="hline">}
{<mtd><mo> \string&\#x0332; </mo></mtd>
}
{</mtr>}
{<mtr\Hnewline class="cline">}
{<mtd></mtd>}
{<mtd><mo> \string&\#x0332; </mo></mtd>
}
{</mtr>}
{<mtr\Hnewline class="vspace" style="font-size:\HBorderspace">}
{<mtd\Hnewline></mtd>}
{</mtr>}
\Configure{overline}
{\bgroup\ifmathml \HCode{<mover class="mover-overline"\Hnewline>%
\add:description{begin-end}{\b:speak:modified}%
<mrow class="mo-00AF">}%
\else
\HCode{<mover class="overline">}\fi}
{\ifmathml \HCode{</mrow>%
\add:description{begin-end}{\a:speak:modified:line}%
</mover>}%
\else
\HCode{</mover>}\fi\egroup}
\Configure{underline}
{\bgroup
\ifmathml \HCode{<munder class="munder-underline">%
\add:description{begin-end}{\a:speak:modified}%
<mrow class="mo-0332"><BREAK SIZE="small"/>}%
%
\else \expandafter\everymath
\expandafter{\expandafter\everymath
\expandafter{\the\everymath}}%
\let\o::@underline:\o:@@underline:
\def\o:@@underline:{\let\o:@@underline:\o::@underline:}%
%
\HCode{<mover class="underline">}\fi}
{\ifmathml \HCode{<BREAK SIZE="small"/></mrow>%
\add:description{begin-end}{\a:speak:modified:line}%
</munder>}%
\else
\HCode{</mover>}\fi \egroup}
\NewConfigure{speak:modified}{2}
\Configure{speak:modified}
{<BREAK SIZE="small"/>modified
under<BREAK SIZE="small"/>}
{<BREAK SIZE="small"/>modified
above<BREAK SIZE="small"/>}
\NewConfigure{speak:modified:brace}{1}
\NewConfigure{speak:modified:hat}{1}
\NewConfigure{speak:modified:line}{1}
\NewConfigure{speak:modified:tilde}{1}
\Configure{speak:modified:brace}
{<BREAK SIZE="small"/>with brace<BREAK SIZE="small"/>}
\Configure{speak:modified:hat}
{<BREAK SIZE="small"/>with wide hat<BREAK SIZE="small"/>}
\Configure{speak:modified:line}
{<BREAK SIZE="small"/>with bar<BREAK SIZE="small"/>}
\Configure{speak:modified:tilde}
{<BREAK SIZE="small"/>with wide tilde<BREAK SIZE="small"/>}
\Configure{hspace}{ }{}{ }
\def\:temp#1#2{\expandafter\def\csname prefix:#1:over\endcsname
{\HCode{\add:description{added-description}{ #2 }}}}
\:temp{vec}{\b:speak:underover}
\:temp{dddot}{\b:speak:underover}
\:temp{ddddot}{\b:speak:underover}
\Configure{array}
{\PushStack\Table:Stck\TableNo
\gHAdvance\Next:TableNo by 1
\global\let\TableNo=\Next:TableNo
%
\PushStack\Row:Stck\HRow \HAssign\HRow=0\relax
%
\HCode{<PARA><mtable class="array">}%
\HCode{\add:vdescription{begin-array}{\a:speak:array}}}
{\Tag{array-\TableNo}{\hrow:s}%
\HCode{<!--l. \the\inputlineno-->%
%
\add:vdescription{end-array}{\b:speak:array}}%
\ifvmode \IgnorePar\fi
\expandafter\tmp:toks\expandafter{\Clr}%
\HCode{<!--\the\tmp:toks-->}%
\HCode{</mtable></PARA>}%
\PopStack\Row:Stck\HRow
%
\PopStack\Table:Stck\TableNo
}
{\HCode{<mtr>}\c:speak:array}%
{\xdef\hrow:s{\HRow}\HCode{</mtr>}}%
{\HCode{<mtd>}%
\e:speak:array\HCode{<div>}}
{\HCode{</div>}\f:speak:array
\HCode{</mtd>\Hnewline}}
\ConfigureEnv{array}
{\bgroup\Configure{$}{}{}{}}
{\egroup}
{}{}
\ConfigureEnv{array}
{\PushStack\Col:Marg\AllColMargins
\bgroup\Configure{$}{}{}{}}
{\egroup \PopStack\Col:Marg\AllColMargins}
{}{}
\def\:MM{\ifmathml m\fi}
\Configure{HBorder}
{<\:MM tr\Hnewline
\ifmathml \expandafterclass\else class\fi="hline">}
{\ifmathml<mtd><mo> \string&\#x0332; </mo></mtd>
\else
<td><hr\xml:empty></td>\fi}
{</\:MM tr>}
{<\:MM tr\Hnewline
\ifmathml \expandafterclass\else class\fi ="cline">}
{<\:MM td></\:MM td>}
{\ifmathml<mtd><mo> \string&\#x0332; </mo></mtd>
\else
<td><hr\xml:empty></td>\fi}
{</\:MM tr>}
{<\:MM tr\Hnewline
\ifmathml \expandafterclass\else class\fi="vspace"
style="font-size:\HBorderspace">}
{<\:MM td\Hnewline>\ifmathml\else\string&\#x00A0;\fi
</\:MM td>}
{</\:MM tr>}
\Configure{halign}
{\EndP\halignTB{halign}} \t:HA
\R:HA\r:HA\D:HA\d:HA
\Configure{multicolumn}
{\let\sv:VBorder\VBorder
\let\VBorder\empty
\Configure{VBorder}{}{}{}{}%
}
{\let\VBorder\sv:VBorder}
{\ifmmode \else
\ifvmode\IgnorePar\fi
\fi \HCode{<div class="multicolumn" title="\HMultispan">}}
{\ifmmode \else
\ifvmode\IgnorePar\fi \EndP\fi \HCode{</div>} }
\def\gob:sp#1{#1}
\Configure{equation}
{\IgnorePar\ifvmode\else \HCode{<!--tex4ht:inline-->}\fi
\EndP
\PushStack\Table:Stck\TableNo
\gHAdvance\Next:TableNo by 1
\global\let\TableNo=\Next:TableNo
%
\HCode{<div class="display-math">%
\add:description{begin-math}{\a:speak:equation}%
<div class="equation">}\IgnorePar
\Configure{$$}
{\Configure{@math}{%
class="equation"}\IgnorePar\EndP\DviMath}
{\EndDviMath\EndP}
{\DisplayMathtrue}%
}
{\ifvmode \IgnorePar\fi\EndP
\HCode{</div>}%
\let\@eqnnum\empty
}
{\HCode{%
\add:description{end-math}{\b:speak:equation}%
</div>}%
\Tag{eq-\TableNo-num}{\theequation}%
\ShowPar \par{\HCondtrue\noindent}%
}
\NewConfigure{speak:equation}{2}
\Configure{speak:equation}
{<BREAK SIZE="medium"/>begin equation
\ifTag{eq-\TableNo-num}{\LikeRef{eq-\TableNo-num}}{}%
<BREAK SIZE="small"/>
}
{<BREAK SIZE="small"/>end equation \theequation
<BREAK SIZE="medium"/>}
\def\AA:text#1{\mtexttrue
\HCode{ <span\Hnewline class="mstyle-#1">}%
\ht:special{t4ht@,&\#x00A0;}%
\PauseMathClass
\Configure{$}%
{\EndPauseMathClass \HCode{<span \Hnewline
class="text-math">}\mtextfalse
\ht:special{t4ht@,}%
}%
{\HCode{</span>}\ht:special{t4ht@,&\#x00A0;}%
\PauseMathClass \mtexttrue}%
{}%
%
}
\def\BB:text{\mtextfalse\EndPauseMathClass\ht:special{t4ht@,}%
\HCode
{</span>}%
}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\endinput\empty\empty\empty\empty\empty\empty
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\ConfigureHinput{fontmath}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\Configure{MathClass}{1}{*}{<mo\Hnewline
class="MathClass-op"><BREAK SIZE="small"/>}
{<BREAK SIZE="small"/></mo>}{}
\Configure{MathClass}{2}{*}{<mo\Hnewline
class="MathClass-bin"><BREAK SIZE="small"/>}
{<BREAK SIZE="small"/></mo>}{}
\Configure{MathClass}{3}{*}{<mo\Hnewline
class="MathClass-rel"><BREAK SIZE="small"/>}
{<BREAK SIZE="small"/></mo>}{}
\:CheckOption{mathml-} \if:Option
\Configure{MathClass}{4}{*}{<mo\Hnewline
class="MathClass-open">}
{</mo><BREAK SIZE="small"/>}{}
\Configure{MathClass}{5}{*}{<BREAK SIZE="small"/>%
<mo\Hnewline
class="MathClass-close">}
{</mo>}{}
\else
\Configure{MathClass}{4}{*}{<mfenced><mo\Hnewline
class="MathClass-open">}
{</mo><mrow><BREAK SIZE="small"/>}{}
\Configure{MathClass}{5}{*}{<BREAK SIZE="small"/>%
</mrow><mo\Hnewline
class="MathClass-close">}
{</mo></mfenced>}{}
\fi
\def\sin{\mathop {\operator@font sine}\nolimits}
\def\cos{\mathop {\operator@font cosine}\nolimits}
\def\lim{\mathop {\operator@font limit}}
\Configure{overbrace}
{\Configure{mathop*}{*}
{<mover class="mover-overline">%
\add:description{begin-end}{\b:speak:modified}%
<mrow class="mo-FE37">}
{</mrow>\add:description{begin-end}{\a:speak:modified:brace}%
</mover>}
{\Configure{mathop}{}{}{}{}}%
}
{\let\o:overbrace:=\displaystyle}
{}
\Configure{underbrace}
{\Configure{mathop*}{*}
{<munder class="munder-underline">%
\add:description{begin-end}{\a:speak:modified}%
<mrow class="mo-FE38">}
{</mrow>\add:description{begin-end}{\a:speak:modified:brace}%
</munder>}
{\Configure{mathop}{}{}{}{}}%
}
{\let\o:underbrace:=\displaystyle}
{}
\Configure{overrightarrow}
{\HCode{<mover class="mover-rightarrow">%
\add:description{begin-end}{\b:speak:modified}%
<mrow class="mo-20D5"\Hnewline>}\:gobble}
{\HCode{</mrow>%
\add:description{begin-end}{\a:speak:modified:rightarrow}%
</mover>}}
\Configure{overleftarrow}
{\HCode{<mover class="mover-leftarrow">%
\add:description{begin-end}{\b:speak:modified}%
<mrow class="mo-20D6"\Hnewline>}\:gobble}
{\HCode{</mrow>%
\add:description{begin-end}{\a:speak:modified:leftarrow}%
</mover>}}
\NewConfigure{speak:modified:leftarrow}{1}
\NewConfigure{speak:modified:leftrightarrow}{1}
\NewConfigure{speak:modified:rightarrow}{1}
\Configure{speak:modified:leftarrow}
{<BREAK SIZE="small"/>with left
right arrow<BREAK SIZE="small"/>}
\Configure{speak:modified:leftrightarrow}
{<BREAK SIZE="small"/>with left
right arrow<BREAK SIZE="small"/>}
\Configure{speak:modified:rightarrow}
{<BREAK SIZE="small"/>with
right arrow<BREAK SIZE="small"/>}
\def\:tempc{\HCode{\add:description{added-description}{real part
symbol capital }}\o:Re:}
\HLet\Re\:tempc
\def\:tempc{\HCode{\add:description{added-description}{real part
symbol capital }}\o:Im:}
\HLet\Im\:tempc
\Configure{big}
{}{}
{}
{}
\Configure{Big}
{}{}
{}
{}
\Configure{bigg}
{}{}
{}
{}
\Configure{Bigg}
{}{}
{}
{}
\Configure{Biggm}
{\bgroup
\Configure{Bigg}{}{}{}{}%
\Configure{mathrel}{*}
{<span class="MathClass-rel" title="Bigg" ><BREAK SIZE="small"/>}
{<BREAK SIZE="small"/></span>}
{\Configure{mathrel}{}{}{}{}}%
}
{\egroup}
\Configure{Bigm}
{\bgroup
\Configure{Big}{}{}{}{}%
\Configure{mathrel}{*}
{<span class="MathClass-rel" title="Big" ><BREAK SIZE="small"/>}
{<BREAK SIZE="small"/></span>}
{\Configure{mathrel}{}{}{}{}}%
}
{\egroup}
\Configure{biggm}
{\bgroup
\Configure{bigg}{}{}{}{}%
\Configure{mathrel}{*}
{<span class="MathClass-rel" title="bigg" ><BREAK SIZE="small"/>}
{<BREAK SIZE="small"/></span>}
{\Configure{mathrel}{}{}{}{}}%
}
{\egroup}
\Configure{bigm}
{\bgroup
\Configure{big}{}{}{}{}%
\Configure{mathrel}{*}
{<span class="MathClass-rel" title="big" ><BREAK SIZE="small"/>}
{<BREAK SIZE="small"/></span>}
{\Configure{mathrel}{}{}{}{}}%
}
{\egroup}
\:CheckOption{mathml-} \if:Option
\Configure{Biggl}
{\bgroup
\Configure{Bigg}{}{}{}{}%
\Configure{mathopen}{*}
{<span class="MathClass-open" title="Bigg" ><BREAK SIZE="small"/>}
{<BREAK SIZE="small"/></span>}
{\Configure{mathopen}{}{}{}{}}%
}
{\egroup}
\Configure{Biggr}
{\bgroup
\Configure{Bigg}{}{}{}{}%
\Configure{mathclose}{*}
{<span class="MathClass-close" title="Bigg" ><BREAK SIZE="small"/>}
{<BREAK SIZE="small"/></span>}
{\Configure{mathclose}{}{}{}{}}%
}
{\egroup}
\Configure{Bigl}
{\bgroup
\Configure{Big}{}{}{}{}%
\Configure{mathopen}{*}
{<span class="MathClass-open" title="Big" ><BREAK SIZE="small"/>}
{<BREAK SIZE="small"/></span>}
{\Configure{mathopen}{}{}{}{}}%
}
{\egroup}
\Configure{Bigr}
{\bgroup
\Configure{Big}{}{}{}{}%
\Configure{mathclose}{*}
{<span class="MathClass-close" title="Big" ><BREAK SIZE="small"/>}
{<BREAK SIZE="small"/></span>}
{\Configure{mathclose}{}{}{}{}}%
}
{\egroup}
\Configure{biggl}
{\bgroup
\Configure{bigg}{}{}{}{}%
\Configure{mathopen}{*}
{<span class="MathClass-open" title="bigg" ><BREAK SIZE="small"/>}
{<BREAK SIZE="small"/></span>}
{\Configure{mathopen}{}{}{}{}}%
}
{\egroup}
\Configure{biggr}
{\bgroup
\Configure{bigg}{}{}{}{}%
\Configure{mathclose}{*}
{<span class="MathClass-close" title="bigg" ><BREAK SIZE="small"/>}
{<BREAK SIZE="small"/></span>}
{\Configure{mathclose}{}{}{}{}}%
}
{\egroup}
\Configure{bigl}
{\bgroup
\Configure{big}{}{}{}{}%
\Configure{mathopen}{*}
{<span class="MathClass-open" title="big" ><BREAK SIZE="small"/>}
{<BREAK SIZE="small"/></span>}
{\Configure{mathopen}{}{}{}{}}%
}
{\egroup}
\Configure{bigr}
{\bgroup
\Configure{big}{}{}{}{}%
\Configure{mathclose}{*}
{<span class="MathClass-close" title="big" ><BREAK SIZE="small"/>}
{<BREAK SIZE="small"/></span>}
{\Configure{mathclose}{}{}{}{}}%
}
{\egroup}
\else
\Configure{Biggl}
{\bgroup
\Configure{Bigg}{}{}{}{}%
\Configure{mathopen}{*}
{<span class="Biggl"><span class="MathClass-open" ><BREAK SIZE="small"/>}
{<BREAK SIZE="small"/></span><span>}
{\Configure{mathopen}{}{}{}{}}%
}
{\egroup}
\Configure{Biggr}
{\bgroup
\Configure{Bigg}{}{}{}{}%
\Configure{mathclose}{*}
{</span><span class="MathClass-close" ><BREAK SIZE="small"/>}
{<BREAK SIZE="small"/></span></span>}
{\Configure{mathclose}{}{}{}{}}%
}
{\egroup}
\Configure{Bigl}
{\bgroup
\Configure{Big}{}{}{}{}%
\Configure{mathopen}{*}
{<span class="Bigl"><span class="MathClass-open"><BREAK SIZE="small"/>}
{<BREAK SIZE="small"/></span><span>}
{\Configure{mathopen}{}{}{}{}}%
}
{\egroup}
\Configure{Bigr}
{\bgroup
\Configure{Big}{}{}{}{}%
\Configure{mathclose}{*}
{</span><span class="MathClass-close" ><BREAK SIZE="small"/>}
{<BREAK SIZE="small"/></span></span>}
{\Configure{mathclose}{}{}{}{}}%
}
{\egroup}
\Configure{biggl}
{\bgroup
\Configure{bigg}{}{}{}{}%
\Configure{mathopen}{*}
{<span class="biggl"><span class="MathClass-open"><BREAK SIZE="small"/>}
{<BREAK SIZE="small"/></span><span>}
{\Configure{mathopen}{}{}{}{}}%
}
{\egroup}
\Configure{biggr}
{\bgroup
\Configure{bigg}{}{}{}{}%
\Configure{mathclose}{*}
{</span><span class="MathClass-close" ><BREAK SIZE="small"/>}
{<BREAK SIZE="small"/></span></span>}
{\Configure{mathclose}{}{}{}{}}%
}
{\egroup}
\Configure{bigl}
{\bgroup
\Configure{big}{}{}{}{}%
\Configure{mathopen}{*}
{<span class="bigl"><span class="MathClass-open"><BREAK SIZE="small"/>}
{<BREAK SIZE="small"/></span><span>}
{\Configure{mathopen}{}{}{}{}}%
}
{\egroup}
\Configure{bigr}
{\bgroup
\Configure{big}{}{}{}{}%
\Configure{mathclose}{*}
{</span><span class="MathClass-close" ><BREAK SIZE="small"/>}
{<BREAK SIZE="small"/></span></span>}
{\Configure{mathclose}{}{}{}{}}%
}
{\egroup}
\fi
\def\bold:version{bold}
\Configure{mathbf}%
{\bgroup \HCode{<span class="mathvariant-bold">%
<BREAK SIZE="small"/>%
\add:vdescription{font}{bold}<PROS PITCH="-10" >}}%
{\HCode{</PROS><BREAK SIZE="small"/></span>}\egroup }%
\Configure{mathit}%
{\bgroup \HCode{<span
class="mathvariant-\ifx
\bold:version\math@version bold-\fi italic">}}%
{\HCode{</span>}\egroup }%
\Configure{mathrm}%
{\bgroup \HCode{<span class="mathvariant-normal">}}%
{\HCode{</span>}\egroup }%
\Configure{mathsf}%
{\bgroup \HCode{<span
class="mathvariant-\ifx
\bold:version\math@version bold-\fi sans-serif">}}%
{\HCode{</span>}\egroup }%
\Configure{mathtt}%
{\bgroup \HCode{<span class="mathvariant-monospace">}}%
{\HCode{</span>}\egroup }%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\endinput\empty\empty\empty\empty\empty\empty
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\ConfigureHinput{amsmath}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\Configure{above}
{\Send{GROUP}{0}{<mfrac>\add:description{begin-end}{\a:speak:fraction}%
<mrow class="mrow-numerator"\Hnewline>%
%
}%
\HCode{</mrow>}%
%
\o:@@over:\:gobbleII}
{\HCode{\add:description{begin-end}{\c:speak:fraction}
<mrow class="mrow-enumerator"\Hnewline>}%
%
\Send{EndGROUP}{0}{</mrow>\add:description{begin-end}{\b:speak:fraction}</mfrac>%
%
}}
\Configure{tbinom}
{\Send{GROUP}{0}{<mover class="tbinom">%
\add:description{begin-stack}{\a:speak:choose}%
<mrow class="mrow-upper">}%
\HCode{</mrow>}\o:@@abovewithdelims: ..\z@{}%
\HCode{\add:description{added-description}%
{\c:speak:choose}<mrow class="mrow-under">}%
\Send{EndGROUP}{0}%
{</mrow>\add:description{end-stack}{\b:speak:choose}</mover>}%
}
\Configure{dbinom}
{\Send{GROUP}{0}{<mover class="dbinom">%
\add:description{begin-stack}{\a:speak:choose}%
<mrow class="mrow-upper">}%
\HCode{</mrow>}\o:@@abovewithdelims: ..\z@{}%
\HCode{\add:description{added-description}{\c:speak:choose}<mrow class="mrow-under">}%
\Send{EndGROUP}{0}%
{</mrow>\add:description{end-stack}{\b:speak:choose}</mover>}%
}
\Configure{binom}
{\Send{GROUP}{0}{<mover class="binom">%
\add:description{begin-stack}{\a:speak:choose}%
<mrow class="mrow-upper">}%
\HCode{</mrow>}\o:@@abovewithdelims: ..\z@{}%
\HCode{\add:description{added-description}{\c:speak:choose}<mrow class="mrow-under">}%
\Send{EndGROUP}{0}%
{</mrow>\add:description{end-stack}{\b:speak:choose}</mover>}%
}
\def\abovewithdelims:III#1#2#3{%
\def\:temp{#2#3}\def\:tempa{..}\ifx \:temp\:tempa
\Send{GROUP}{0}{<mfrac>\add:description{begin-end}{\a:speak:fraction}%
<mrow class="mrow-numerator"\Hnewline>%
%
}%
\HCode{</mrow>}%
%
\o:@@over:
\HCode{\add:description{begin-end}{\c:speak:fraction}
<mrow class="mrow-enumerator"\Hnewline>}%
%
\Send{EndGROUP}{0}{</mrow>\add:description{begin-end}{\b:speak:fraction}</mfrac>%
%
}
\else
\Send{GROUP}{0}%
{<mo class="mfenced-open">\expandafter
\ifx \csname \string#2:lr del\endcsname\relax #2\else
\csname \string#2:lr del\endcsname\fi
</mo>%
<mfrac>\add:description{begin-end}{\a:speak:fraction}%
<mrow class="mrow-numerator"\Hnewline>%
%
}%
\HCode{</mrow>}%
%
\o:@@over:
\HCode{\add:description{begin-end}{\c:speak:fraction}
<mrow class="mrow-enumerator"\Hnewline>}%
%
\Send{EndGROUP}{0}{</mrow>\add:description{begin-end}{\b:speak:fraction}</mfrac>%
%
%
<mo class="mfenced-close">\expandafter
\ifx \csname \string#3:lr del\endcsname\relax #3\else
\csname \string#3:lr del\endcsname\fi
</mo>}
\fi
\tmp:dim
}
\def\atopwithdelims:III#1#2#3{%
\def\:temp{#2#3}\def\:tempa{..}\ifx \:temp\:tempa
\Send{GROUP}{0}{<mover class="atop">%
\add:description{begin-stack}{\a:speak:atop}%
<mrow class="mrow-upper">%
}%
\HCode{</mrow>}%
\o:@@atop:
\HCode{\add:description{added-description}{\c:speak:atop}<mrow class="mrow-under">}%
\Send{EndGROUP}{0}{</mrow>\add:description{end-stack}{\b:speak:atop}</mover>%
}
\else
\Send{GROUP}{0}%
{<mo class="mfenced-open">\expandafter
\ifx \csname \string#2:lr del\endcsname\relax #2\else
\csname \string#2:lr del\endcsname\fi
</mo>%
<mover class="atop">%
\add:description{begin-stack}{\a:speak:atop}%
<mrow class="mrow-upper">%
}%
\HCode{</mrow>}%
\o:@@atop:
\HCode{\add:description{added-description}{\c:speak:atop}<mrow class="mrow-under">}%
\Send{EndGROUP}{0}{</mrow>\add:description{end-stack}{\b:speak:atop}</mover>%
%
<mo class="mfenced-close">\expandafter
\ifx \csname \string#3:lr del\endcsname\relax #3\else
\csname \string#3:lr del\endcsname\fi
</mo>}
\fi
}
\def\overwithdelims:III#1#2#3{%
\def\:temp{#2#3}\def\:tempa{..}\ifx \:temp\:tempa
\Send{GROUP}{0}{<mfrac>\add:description{begin-end}{\a:speak:fraction}%
<mrow class="mrow-numerator"\Hnewline>%
}%
\HCode{</mrow>}%
\o:over:
\HCode{\add:description{begin-end}{\c:speak:fraction}
<mrow class="mrow-enumerator"\Hnewline>}%
\Send{EndGROUP}{0}{</mrow>\add:description{begin-end}{\b:speak:fraction}</mfrac>%
}
\else
\Send{GROUP}{0}%
{<mo class="mfenced-open">\expandafter
\ifx \csname \string#2:lr del\endcsname\relax #2\else
\csname \string#2:lr del\endcsname\fi
</mo>%
<mfrac>\add:description{begin-end}{\a:speak:fraction}%
<mrow class="mrow-numerator"\Hnewline>%
}%
\HCode{</mrow>}%
\o:@@over:
\HCode{\add:description{begin-end}{\c:speak:fraction}
<mrow class="mrow-enumerator"\Hnewline>}%
\Send{EndGROUP}{0}{</mrow>\add:description{begin-end}{\b:speak:fraction}</mfrac>%
%
<mo class="mfenced-close">\expandafter
\ifx \csname \string#3:lr del\endcsname\relax #3\else
\csname \string#3:lr del\endcsname\fi
</mo>}
\fi
}
\Configure{underrightarrow}
{\HCode{<munder class="munder-rightarrow">%
\add:description{begin-end}{\a:speak:modified}%
<mrow class="mo-2092"\Hnewline>}\:gobble}
{\HCode{</mrow>%
\add:description{begin-end}{\a:speak:modified:rightarrow}%
</munder>}}
\Configure{underleftarrow}
{\HCode{<munder class="munder-leftarrow">%
\add:description{begin-end}{\a:speak:modified}%
<mrow class="mo-2090"\Hnewline>}\:gobble}
{\HCode{</mrow>%
\add:description{begin-end}{speak:modified:leftarrow}%
</munder>}}
\Configure{overleftrightarrow}
{\HCode{<mover class="mover-leftrightarrow">%
\add:description{begin-end}{\b:speak:modified}%
<mrow class="mo-20E1"\Hnewline>}\:gobble}
{\HCode{</mrow>%
\add:description{begin-end}{\a:speak:modified:leftrightarrow}%
</mover>}}
\Configure{underleftrightarrow}
{\HCode{<munder class="munder-leftrightarrow">%
\add:description{begin-end}{\a:speak:modified}%
<mrow class="mo-2194"\Hnewline>}\:gobble}
{\HCode{</mrow>%
\add:description{begin-end}{\a:speak:modified:leftrightarrow}%
</munder>}}
\def\:tempc{\HCode{<mspace width="0.2em"/>}\mathbin{mod} }
\HLet\bmod\:tempc
\def\:tempc#1{ (#1)}
\HLet\pod=\:tempc
\def\:tempc#1{\pod{\mathop{mod} #1}}
\HLet\pmod=\:tempc
\def\:tempc#1{ \mathop{mod} #1}
\HLet\mod=\:tempc
\Configure{hdotsfor}{\dots}
\Configure{tmspace}
{\HCode{<span class="space"><BREAK SIZE="small"/></span>%
}}
\renewcommand{\xrightarrow}[2][]{%
\if :#1:
\HCode{<msup
class="limits-msub-msup"><mrow
class="limits-mrow-base"\Hnewline>%
}%
\rightarrow
\HCode{</mrow><mrow class="limits-mrow-super"\Hnewline
>\add:description{begin-limits-script}{\b:speak:underover}}%
\trap:base
#2%
\HCode{\add:description{end-limits-script}{\c:speak:underover}%
</mrow></msup\Hnewline>}%
%
\else
\HCode{<msubsup class="limits-msub-msup"><mrow
class="limits-mrow-base"\Hnewline>%
}%
\leftarrow
\HCode{</mrow><mrow class="limits-mrow-sub"\Hnewline
>\add:description{begin-limits-script}{\a:speak:underover}}%
\trap:base
#1%
\HCode{</mrow><mrow class="limits-mrow-super"\Hnewline
>\add:description{mid-limits-script}{\b:speak:underover}}\trap:base
#2%
\HCode{\add:description{end-limits-script}{\c:speak:underover}%
</mrow></msubsup\Hnewline>}%
%
\fi
}
\renewcommand{\xleftarrow}[2][]{%
\if :#1:
\HCode{<msup
class="limits-msub-msup"><mrow
class="limits-mrow-base"\Hnewline>%
}%
\leftarrow
\HCode{</mrow><mrow class="limits-mrow-super"\Hnewline
>\add:description{begin-limits-script}{\b:speak:underover}}%
\trap:base
#2%
\HCode{\add:description{end-limits-script}{\c:speak:underover}%
</mrow></msup\Hnewline>}%
%
\else
\HCode{<msubsup class="limits-msub-msup"><mrow
class="limits-mrow-base"\Hnewline>%
}%
\leftarrow
\HCode{</mrow><mrow class="limits-mrow-sub"\Hnewline
>\add:description{begin-limits-script}{\a:speak:underover}}%
\trap:base
#1%
\HCode{</mrow><mrow class="limits-mrow-super"\Hnewline
>\add:description{mid-limits-script}{\b:speak:underover}}\trap:base
#2%
\HCode{\add:description{end-limits-script}{\c:speak:underover}%
</mrow></msubsup\Hnewline>}%
%
\fi
}
\def\overset#1#2{{%
\HCode{<msup
class="limits-msub-msup"><mrow
class="limits-mrow-base"\Hnewline>%
}%
#2%
\HCode{</mrow><mrow class="limits-mrow-super"\Hnewline
>\add:description{begin-limits-script}{\b:speak:underover}}%
\trap:base
#1%
\HCode{\add:description{end-limits-script}{\c:speak:underover}%
</mrow></msup\Hnewline>}%
%
}}
\def\underset#1#2{{%
\HCode{<msub
class="limits-msub-msup"><mrow
class="limits-mrow-base"\Hnewline>%
}%
#2%
\HCode{</mrow><mrow class="limits-mrow-sub"\Hnewline
>\add:description{begin-limits-script}{\a:speak:underover}}%
\trap:base
#1%
\HCode{\add:description{end-limits-script}{\c:speak:underover}%
</mrow></msub\Hnewline>}%
%
}}
\def\sideset#1#2#3{{\Tg<mrow class="sideset"\Hnewline
>{\HCode{}}#1{\HCode{}#3}#2\Tg</mrow>}}
\Configure{aligned}
{\PushStack\Table:Stck\TableNo
\gHAdvance\Next:TableNo by 1
\global\let\TableNo=\Next:TableNo
%
\PushStack\Row:Stck\HRow \HAssign\HRow=0\relax
%
\HCode{<PARA><mtable class="aligned">}%
\HCode{\add:vdescription{begin-array}{\a:speak:aligned}}}
{\Tag{aligned-\TableNo}{\hrow:s}%
\HCode{<!--l. \the\inputlineno-->%
%
\add:vdescription{end-array}{\b:speak:aligned}}%
\ifvmode \IgnorePar\fi
\HCode{</mtable></PARA>}%
\PopStack\Row:Stck\HRow
%
\PopStack\Table:Stck\TableNo
}
{\HCode{<mtr>}\c:speak:aligned}%
{\xdef\hrow:s{\HRow}\HCode{</mtr>}}%
{\HCode{<mtd>}%
\e:speak:aligned \HCode{<div>}}
{\HCode{</div>}\f:speak:aligned
\HCode{</mtd>\Hnewline}}
\NewConfigure{speak:aligned}{6}
\Configure{speak:aligned}
{begin
\ifTag{aligned-\TableNo}{\LikeRef{aligned-\TableNo}}{}
aligned equations}
{end equations}
{\HCode{%
<BREAK SIZE="medium"/><PROS PITCH="-5" >%
\add:vdescription{begin-end}{<span class="ord-row">\ord:pos{\HRow}</span>%
row}%
</PROS><BREAK SIZE="medium"/>%
}%
}
{}
{\HCode{%
<BREAK SIZE="medium"/>%
\ifnum \HMultispan>1
<PROS PITCH="-5" >%
\add:vdescription{added-description}{\ord:pos{\HCol}%
cell
spans \HMultispan \space columns}%
</PROS><BREAK SIZE="medium"/>%
\else
\ifnum \HCol>1
<PROS PITCH="-5" >%
\add:vdescription{added-description}{\ord:pos{\HCol}%
cell}%
</PROS><BREAK SIZE="medium"/>%
\fi
\fi
}%
}
{}
\Configure{alignedat}
{\PushStack\Table:Stck\TableNo
\gHAdvance\Next:TableNo by 1
\global\let\TableNo=\Next:TableNo
%
\PushStack\Row:Stck\HRow \HAssign\HRow=0\relax
%
\HCode{<PARA><mtable class="aligned">}%
\HCode{\add:vdescription{begin-array}{\a:speak:aligned}}}
{\Tag{aligned-\TableNo}{\hrow:s}%
\HCode{<!--l. \the\inputlineno-->%
%
\add:vdescription{end-array}{\b:speak:aligned}}%
\ifvmode \IgnorePar\fi \HCode{</mtable></PARA>}%
\PopStack\Row:Stck\HRow
%
\PopStack\Table:Stck\TableNo
}
{\HCode{<mtr>}\c:speak:aligned}%
{\xdef\hrow:s{\HRow}\HCode{</mtr>}}%
{\HCode{<mtd>}%
\e:speak:aligned \HCode{<div>}}
{\HCode{</div>}\f:speak:aligned
\HCode{</mtd>\Hnewline}}
\ConfigureEnv{cases}
{\PushStack\Table:Stck\TableNo
\gHAdvance\Next:TableNo by 1
\global\let\TableNo=\Next:TableNo
%
\PushStack\Row:Stck\HRow \HAssign\HRow=0\relax
%
\HCode{<div class="cases">}%
\bgroup
\let\sv:a:left=\a:left
\let\sv:b:left=\b:left
\let\sv:a:right=\a:right
\let\sv:b:right=\b:right
%
\Configure{array}
{\HCode{<mtable class="cases">%
\add:vdescription{begin-array}{<BREAK SIZE="small"/>begin
\ifTag{cases-\TableNo}{\LikeRef{cases-\TableNo}}{}
cases<BREAK SIZE="small"/>}%
}} %
{\Tag{cases-\TableNo}{\HRow}%
\HCode{<!--l. \the\inputlineno-->%
%
\add:vdescription{end-array}
{<BREAK SIZE="small"/>end cases<BREAK SIZE="small"/>}
}%
\ifvmode \IgnorePar\fi \Tg</mtable>}
{\HCode{<mtr>%
\add:vdescription{begin-end}
{<BREAK SIZE="small"/><span class="ord-row">\ord:pos{\HRow}</span>%
case}%
}}
{\HCode{</mtr>}}%
{\HCode{<mtd class="sub-case-\HCol" >%
<BREAK SIZE="\ifnum \HCol>1 medium\else
small\fi"/>}%
\bgroup
\Configure{array}
{\PushStack\Table:Stck\TableNo
\gHAdvance\Next:TableNo by 1
\global\let\TableNo=\Next:TableNo
%
\PushStack\Row:Stck\HRow \HAssign\HRow=0\relax
%
\HCode{<PARA><mtable class="array">}%
\HCode{\add:vdescription{begin-array}{\a:speak:array}}}
{\Tag{array-\TableNo}{\hrow:s}%
\HCode{<!--l. \the\inputlineno-->%
%
\add:vdescription{end-array}{\b:speak:array}}%
\ifvmode \IgnorePar\fi
\expandafter\tmp:toks\expandafter{\Clr}%
\HCode{<!--\the\tmp:toks-->}%
\HCode{</mtable></PARA>}%
\PopStack\Row:Stck\HRow
%
\PopStack\Table:Stck\TableNo
}
{\HCode{<mtr>}\c:speak:array}%
{\xdef\hrow:s{\HRow}\HCode{</mtr>}}%
{\HCode{<mtd>}%
\e:speak:array\HCode{<div>}}
{\HCode{</div>}\f:speak:array
\HCode{</mtd>\Hnewline}}
\ConfigureEnv{array}
{\bgroup\Configure{$}{}{}{}}
{\egroup}
{}{}
%
\let\a:left=\sv:a:left
\let\b:left=\sv:b:left
\let\a:right=\sv:a:right
\let\b:right=\sv:b:right
%
}
{\egroup \HCode{</mtd>\Hnewline}}
%
\Configure{left}
{}
{\bgroup}
\Configure{right}
{\egroup}
{}
%
}
{\egroup\HCode{</div>}%
\PopStack\Row:Stck\HRow
%
\PopStack\Table:Stck\TableNo
}
{}{}
\Configure{eqref}
{\bgroup\let\tagform@\empty
\HCode{<span class="eqref" >
\add:description{added-description}{\a:speak:eqref}}}
{\HCode{</span>}\egroup}
\NewConfigure{speak:eqref}{1}
\Configure{speak:eqref}{ equation }
\ifx \mathdisplay@@pop\:UnDef
\ifx \emdf@La\:UnDef
\else
\fi
\else
\Configure{equation}
{\ifvmode \IgnorePar\fi\EndP
\PushStack\Table:Stck\TableNo
\gHAdvance\Next:TableNo by 1
\global\let\TableNo=\Next:TableNo
%
\HCode{<div class="display-math">%
\add:description{begin-math}{\a:speak:equation}%
<div class="equation">}%
\Configure{gather}
{\HCode{<div\Hnewline class="equation"><div
class="gather">}\IgnorePar
\Configure{$$}
{\Configure{@math}{%
class="equation"}\IgnorePar\EndP\DviMath}
{\EndDviMath\EndP}
{\DisplayMathtrue}%
}
{\HCode{</div></div>}}
{}
{}
{\ifnum\HCol=2 \IgnorePar
\HCode{</div><div>}\fi }
{}
%
\Configure{$$}
{\Configure{@math}{%
class="equation"}\IgnorePar\EndP\DviMath}
{\EndDviMath\EndP}
{\DisplayMathtrue}%
%
}
{\ifvmode \IgnorePar\fi\EndP
\HCode{</div>}%
\let\@eqnnum\empty
}
{\ifvmode \IgnorePar\fi\EndP
\HCode{%
\add:description{end-math}{\b:speak:equation}%
</div>}%
\Tag{eq-\TableNo-num}{\theequation}%
\PopStack\Table:Stck\TableNo
%
\ShowPar\IgnoreIndent\par}
\Configure{equation*}
{\ifvmode \IgnorePar\fi\EndP
\PushStack\Table:Stck\TableNo
\gHAdvance\Next:TableNo by 1
\global\let\TableNo=\Next:TableNo
%
\HCode{<div class="display-math">%
\add:description{begin-math}{\csname
a:speak:equation*\endcsname}}%
\Configure{gather*}
{\HCode{<div\Hnewline class="equation-star"><div
class="gather-star">}\IgnorePar
\Configure{$$}
{\Configure{@math}{%
class="equation"}\IgnorePar\EndP\DviMath}
{\EndDviMath\EndP}
{\DisplayMathtrue}%
}
{\HCode{</div></div>}}
{}
{}
{\ifnum\HCol=2 \IgnorePar
\HCode{</div><div>}\fi }
{}
%
\Configure{$$}
{\Configure{@math}{%
class="equation"}\IgnorePar\EndP\DviMath}
{\EndDviMath\EndP}
{\DisplayMathtrue}%
%
}
{\ifvmode \IgnorePar\fi\EndP
\HCode{\add:description{end-math}{\csname
b:speak:equation*\endcsname}</div>}%
\PopStack\Table:Stck\TableNo
%
\ShowPar\IgnoreIndent\par}
\Configure{speak:equation}
{<BREAK SIZE="medium"/>begin equation
\ifTag{eq-\TableNo-num}{\LikeRef{eq-\TableNo-num}}{}%
<BREAK SIZE="small"/>
}
{<BREAK SIZE="small"/>end equation
\theequation<BREAK SIZE="medium"/>}
\NewConfigure{speak:equation*}{2}
\Configure{speak:equation*}
{<BREAK SIZE="medium"/>begin equation<BREAK SIZE="small"/>}
{<BREAK SIZE="small"/>end equation<BREAK SIZE="medium"/>}
\fi
\Configure{split}
{\PushStack\Table:Stck\TableNo
\gHAdvance\Next:TableNo by 1
\global\let\TableNo=\Next:TableNo
%
\HCode{<mtable class="split">\add:vdescription{begin-array}{<BREAK SIZE="medium"/>begin
\ifTag{split-\TableNo}{\LikeRef{split-\TableNo}}{}
sub equations<BREAK SIZE="small"/>}%
}}
{\ifvmode\IgnorePar\fi
\Tag{split-\TableNo}{\HRow:s}%
\HCode{\add:vdescription{end-array}{<BREAK SIZE="small"/>end sub equations<BREAK SIZE="medium"/>}%
</mtable>}%
\PopStack\Table:Stck\TableNo
}
{\HCode{<mtr\Hnewline>}%
\xdef\HRow:s{\HRow}%
}
{\HCode{</mtr>}}
{\HCode{<mtd\Hnewline class="split-side"
title="implicit-baseline" >%
\add:vdescription{begin-end}{<BREAK SIZE="small"/>%
\ifnum \HCol=1 left \else right \fi
<span class="ord-row">\ord:pos{\HRow}</span>%
sub equation<BREAK SIZE="small"/>}%
}%
}
{\HCode{</mtd>}}
\ConfigureEnv{multline}
{\bgroup \Configure{$$}
{\Configure{@math}{%
class="equation"}\IgnorePar\EndP\DviMath}
{\EndDviMath\EndP}
{\DisplayMathtrue}%
}
{\egroup}
{}{}
\ConfigureEnv{multline*}
{\bgroup \Configure{$$}
{\Configure{@math}{%
class="equation"}\IgnorePar\EndP\DviMath}
{\EndDviMath\EndP}
{\DisplayMathtrue}%
}
{\egroup}
{}{}
\Configure{multline}
{\PushStack\Table:Stck\TableNo
\gHAdvance\Next:TableNo by 1
\global\let\TableNo=\Next:TableNo
%
\PushStack\Row:Stck\HRow \HAssign\HRow=0\relax
%
\HCode{<div\Hnewline class="display-math">%
\add:vdescription{begin-math}{%
<BREAK SIZE="medium"/>%
begin equation
\ifTag{multline-\TableNo-num}{\LikeRef{multline-\TableNo-num}}{}
with
\ifTag{multline-\TableNo}{\LikeRef{multline-\TableNo}}{}
lines<BREAK SIZE="small"/>}%
<div class="multline">%
%
<mtable>}}
{\Tag{multline-\TableNo}{\hrow:s}%
\HCode{</mtable></div>%
\add:vdescription{end-math}{end equation
<BREAK SIZE="small"/>%
\ifTag{multline-\TableNo-num}{\LikeRef
{multline-\TableNo-num}}{}%
<BREAK SIZE="medium"/>%
}%
</div>}%
\PopStack\Row:Stck\HRow
%
\PopStack\Table:Stck\TableNo
}
{\HCode{<mtr><mtd\Hnewline class="multline-1">%
\add:vdescription{begin-end}{%
<BREAK SIZE="small"/><span class="ord-row">\ord:pos{\HRow}</span>%
line<BREAK SIZE="small"/>}%
}}
{\xdef\hrow:s{\HRow}\HCode{</mtd></mtr>}}
{\HCode{</mtd><mtd class="multline-2">}}
{}
\Configure{multline-num}
{\Tag{multline-\TableNo-num}{\theequation}\let\tagform@\:gobble}
{}
\Configure{multline*}
{\PushStack\Table:Stck\TableNo
\gHAdvance\Next:TableNo by 1
\global\let\TableNo=\Next:TableNo
%
\PushStack\Row:Stck\HRow \HAssign\HRow=0\relax
%
\HCode{<div\Hnewline class="display-math">%
<mtable class="multline-star">%
\add:vdescription{begin-math}{%
<BREAK SIZE="medium"/>%
begin equation with
\ifTag{multline-\TableNo}{\LikeRef{multline-\TableNo}}{}
lines<BREAK SIZE="small"/>}%
<div class="multline-star">%
}}
{\Tag{multline-\TableNo}{\hrow:s}%
\HCode{</div>%
\add:vdescription{end-math}{%
<BREAK SIZE="small"/>end equation<BREAK SIZE="medium"/>}%
</mtable></div>}%
\PopStack\Row:Stck\HRow
%
\PopStack\Table:Stck\TableNo
}
{\HCode{<mtr\Hnewline><mtd>%
\add:vdescription{begin-end}{%
<BREAK SIZE="small"/><span class="ord-row">\ord:pos{\HRow}</span>%
line<BREAK SIZE="small"/>}%
}}
{\xdef\hrow:s{\HRow}\HCode{</mtd></mtr>}}
\ConfigureEnv{gather}
{\bgroup \Configure{$$}
{\Configure{@math}{%
class="equation"}\IgnorePar\EndP\DviMath}
{\EndDviMath\EndP}
{\DisplayMathtrue}%
}
{\egroup}
{}{}
\ConfigureEnv{gather*}
{\bgroup \Configure{$$}
{\Configure{@math}{%
class="equation"}\IgnorePar\EndP\DviMath}
{\EndDviMath\EndP}
{\DisplayMathtrue}%
}
{\egroup}
{}{}
\Configure{gather}
{\PushStack\Table:Stck\TableNo
\gHAdvance\Next:TableNo by 1
\global\let\TableNo=\Next:TableNo
%
\PushStack\Row:Stck\HRow \HAssign\HRow=0\relax
%
\HCode{<div\Hnewline class="display-math">%
\add:vdescription{begin-math}{<BREAK SIZE="small"/>begin group of
\ifTag{gather-\TableNo}{\LikeRef{gather-\TableNo}}{}
equations<BREAK SIZE="small"/>}%
%
<mtable class="gather">%
}}
{\HCode{</mtable>\add:vdescription{end-math}{<BREAK SIZE="small"/>end equations<BREAK SIZE="small"/>}%
%
</div>}%
\Tag{gather-\TableNo}{\hrow:s}%
\PopStack\Row:Stck\HRow
%
\PopStack\Table:Stck\TableNo
}
{\HCode{<mtr>%
\add:vdescription{begin-end}{<BREAK SIZE="small"/><span class="ord-row">\ord:pos{\HRow}</span>%
equation<BREAK SIZE="small"/>}%
%
}}
{\xdef\hrow:s{\HRow}\HCode{</mtr>}}
{\HCode{\Hnewline<mtd \ifnum \HCol=1 class="col-\HCol"
\else class="content-less" title="col-\HCol"
\fi
>}%
\ifnum \HCol>1 \let\tagform@\:gobble \fi
}
{\HCode{</mtd>}}
\Configure{gather*}
{\PushStack\Table:Stck\TableNo
\gHAdvance\Next:TableNo by 1
\global\let\TableNo=\Next:TableNo
%
\PushStack\Row:Stck\HRow \HAssign\HRow=0\relax
%
\HCode{<div\Hnewline class="display-math">%
\add:vdescription{begin-math}{<BREAK SIZE="small"/>begin group of
\ifTag{gather-\TableNo}{\LikeRef{gather-\TableNo}}{}
equations<BREAK SIZE="small"/>}%
%
<mtable class="gather-star">%
}}
{\HCode{</mtable>\add:vdescription{end-math}{%
<BREAK SIZE="small"/>end equations<BREAK SIZE="small"/>}%
%
</div>}%
\Tag{gather-\TableNo}{\hrow:s}%
\PopStack\Row:Stck\HRow
%
\PopStack\Table:Stck\TableNo
}
{\HCode{<mtr>%
\add:vdescription{begin-math}{%
<BREAK SIZE="small"/><span class="ord-row">\ord:pos{\HRow}</span>%
equation<BREAK SIZE="small"/>}%
%
}}
{\xdef\hrow:s{\HRow}\HCode{</mtr>}}
{\HCode{\Hnewline<mtd \ifnum \HCol=1 class="col-\HCol"
\else class="content-less" title="col-\HCol"
\fi
>}}
{\HCode{</mtd>}}
\Configure{gathered}
{\PushStack\Table:Stck\TableNo
\gHAdvance\Next:TableNo by 1
\global\let\TableNo=\Next:TableNo
%
\PushStack\Row:Stck\HRow \HAssign\HRow=0\relax
%
\HCode{<div\Hnewline class="display-math">%
\add:vdescription{begin-math}{<BREAK SIZE="small"/>begin group of
\ifTag{gather-\TableNo}{\LikeRef{gather-\TableNo}}{}
equations<BREAK SIZE="small"/>}
%
<mtable class="gather">%
}}
{\HCode{</mtable>\add:vdescription{end-math}{%
<BREAK SIZE="small"/>end equations<BREAK SIZE="small"/>}%
%
</div>}%
\Tag{gather-\TableNo}{\hrow:s}%
\PopStack\Row:Stck\HRow
%
\PopStack\Table:Stck\TableNo
}
{\HCode{<mtr>%
\add:vdescription{begin-end}{%
<BREAK SIZE="small"/><span class="ord-row">\ord:pos{\HRow}</span>%
equation<BREAK SIZE="small"/>}%
%
}}
{\xdef\hrow:s{\HRow}\HCode{</mtr>}}
{\HCode{\Hnewline<mtd \ifnum \HCol=1 class="col-\HCol"
\else class="content-less" title="col-\HCol"
\fi
>}%
\ifnum \HCol>1 \let\tagform@\:gobble \fi
}
{\HCode{</mtd>}}
\Configure{subarray}
{\PushStack\Table:Stck\TableNo
\gHAdvance\Next:TableNo by 1
\global\let\TableNo=\Next:TableNo
%
\PushStack\Row:Stck\HRow \HAssign\HRow=0\relax
%
\HCode{<mtable class="subarray\if c\Hlcr-c\fi">%
\add:vdescription{begin-array}{\a:speak:subarray}%
}}
{\HCode{\add:vdescription{end-array}{\b:speak:subarray}%
</mtable>}%
\Tag{subarray-\TableNo}{\hrow:s}%
\PopStack\Row:Stck\HRow
%
\PopStack\Table:Stck\TableNo
}
{\HCode{<mtr><mtd>%
\add:vdescription{begin-end}{\c:speak:subarray}%
}}
{\xdef\hrow:s{\HRow}\HCode{</mtd></mtr>}}
\NewConfigure{speak:subarray}{3}
\Configure{speak:subarray}
{<BREAK SIZE="small"/>begin sub array with
\ifTag{subarray-\TableNo}{\LikeRef{subarray-\TableNo}}{}
rows<BREAK SIZE="small"/>}
{<BREAK SIZE="small"/>end sub array<BREAK SIZE="small"/>}
{<BREAK SIZE="small"/><span class="ord-row">\ord:pos{\HRow}</span>%
row<BREAK SIZE="small"/>}
\Configure{substack}
{\bgroup
\Configure{speak:subarray}
{<BREAK SIZE="small"/>begin sub stack with
\ifTag{subarray-\TableNo}{\LikeRef{subarray-\TableNo}}{}
entries<BREAK SIZE="small"/>}
{<BREAK SIZE="small"/>end sub stack<BREAK SIZE="small"/>}
{<BREAK SIZE="small"/><span class="ord-row">\ord:pos{\HRow}</span>%
entry<BREAK SIZE="small"/>}
}
{\egroup}
\Configure{smallmatrix}
{\PushStack\Table:Stck\TableNo
\gHAdvance\Next:TableNo by 1
\global\let\TableNo=\Next:TableNo
%
\PushStack\Row:Stck\HRow \HAssign\HRow=0\relax
%
\HCode{<PARA><mtable class="smallmatrix">}%
\HCode{\add:vdescription{begin-array}{\a:speak:smallmatrix}}}
{\Tag{smallmatrix-\TableNo}{\hrow:s}%
\HCode{<!--l. \the\inputlineno-->%
%
\add:vdescription{end-array}{\b:speak:smallmatrix}}%
\ifvmode \IgnorePar\fi
\HCode{</mtable></PARA>}%
\PopStack\Row:Stck\HRow
%
\PopStack\Table:Stck\TableNo
}
{\HCode{<mtr>}\c:speak:smallmatrix}%
{\xdef\hrow:s{\HRow}\HCode{</mtr>}}%
{\HCode{<mtd>}%
\e:speak:smallmatrix \HCode{<div>}}
{\HCode{</div>}\f:speak:smallmatrix
\HCode{</mtd>\Hnewline}}
\def\:tempc#1#2{%
\ConfigureEnv{#1}
{\def\end:al:env{}\ifmmode\else
\ifvmode\else \def\end:al:env{\par\ShowPar\IgnoreIndent}\fi\fi}
{\end:al:env }
{}{}%
\Configure{#1}
{\IgnorePar
\ifvmode \EndP \else \EndP \HCode{<!--tex4ht:inline-->}\fi
\ifmathml
\Tg<span class="mrow">\def\end:mathalign{\Tg</span>}%
\else
\DviMath
\def\end:mathalign{\EndDviMath \DisplayMathfalse}%
\DisplayMathtrue
\fi
\PushStack\Table:Stck\TableNo
\gHAdvance\Next:TableNo by 1
\global\let\TableNo=\Next:TableNo
%
\PushStack\Row:Stck\HRow \HAssign\HRow=0\relax
%
\HCode{<div\Hnewline class="display-math"><mtable>%
\add:description{begin-array}{\a:speak:align}%
}}
{\HCode{%
\add:description{end-array}{\b:speak:align}%
</mtable></div>}%
\Tag{align-\TableNo}{\hrow:s}%
\PopStack\Row:Stck\HRow
%
\PopStack\Table:Stck\TableNo
\end:mathalign }
{\HCode{<mtr>\add:description{begin-end}{\c:speak:align}%
}}
{\HCode{</mtr>}\ifst@rred\else
\Tag{align-\TableNo-\HRow}{\theequation}%
\fi \xdef\hrow:s{\HRow}}
{\HCode{<mtd\Hnewline
class="align-\ifnum \HCol>\maxfields@ label\else
\ifodd\HCol\space odd\else even\fi
\fi">}%
\ifnum \HCol>\maxfields@ \let\tagform@\:gobble \fi
}
{\HCode{</mtd>}}
}
\:tempc{align}{align}
\:tempc{alignat}{alignat}
\:tempc{xalignat}{xalignat}
\:tempc{xxalignat}{xxalignat}
\:tempc{flalign}{flalign}
\:tempc{align*}{align-star}
\:tempc{alignat*}{alignat-star}
\:tempc{xalignat*}{xalignat-star}
\:tempc{flalign*}{flalign-star}
\NewConfigure{speak:align}{3}
\Configure{speak:align}
{<BREAK SIZE="small"/>begin
\ifTag{align-\TableNo}{\LikeRef{align-\TableNo}}{}
aligned equations<BREAK SIZE="small"/>}
{<BREAK SIZE="small"/>end aligned equations<BREAK SIZE="small"/>}
{<BREAK SIZE="small"/>\ifst@rred <span class="ord-row">\ord:pos{\HRow}</span>%
equation
\else
equation number \ifst@rred\else
\ifTag{align-\TableNo-\HRow}%
{\LikeRef{align-\TableNo-\HRow}}{}
\fi
\fi <BREAK SIZE="small"/>%
}
\Configure{boxed}
{\HCode{<span class="boxed">%
\add:description{begin-end}{\a:speak:boxed}}}
{\HCode{\add:description{begin-end}{\b:speak:boxed}</span>}}
\NewConfigure{speak:boxed}{2}
\Configure{speak:boxed}
{<BREAK SIZE="small"/>begin boxed<BREAK SIZE="small"/>}
{<BREAK SIZE="small"/>end boxed<BREAK SIZE="small"/>}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\endinput\empty\empty\empty\empty\empty\empty
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\ConfigureHinput{plain}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\Configure{eqalignno}
{\HCode{<PARA><mtable class="eqalignno">}}
{\HCode{</mtable></PARA>}}
{\HCode{<mtr\Hnewline class="eqalignno">}}
{\HCode{</mtr>}}
{\HCode{<mtd \Hnewline class="eqalignno-\HCol">}}
{\HCode{</mtd>}}
\def\:eqalignno:{\Configure{noalign}
{\HCode{<mtr><mtd class="noalign" colspan="2">}}%
{\HCode{</mtd></mtr>}}}
\Configure{leqalignno}
{\HCode{<PARA><mtable class="leqalignno">}}
{\HCode{</mtable></PARA>}}
{\HCode{<mtr\Hnewline class="leqalignno">}}
{\HCode{</mtr>}}
{\HCode{<mtd \Hnewline class="leqalignno-\HCol">}}
{\HCode{</mtd>}}
\def\:leqalignno:{\Configure{noalign}
{\HCode{<mtr><mtd class="noalign" colspan="2">}}%
{\HCode{</mtd></mtr>}}}
\Configure{choose}
{\Send{GROUP}{0}{<mover class="choose">%
\add:description{begin-stack}{\a:speak:choose}%
<mrow class="mrow-upper">}%
\HCode{</mrow>}\o:atop:
\HCode{\add:description{added-description}%
{\c:speak:choose}<mrow class="mrow-under">}%
\Send{EndGROUP}{0}%
{</mrow>\add:description{end-stack}{\b:speak:choose}</mover>}%
}
\NewConfigure{speak:choose}{3}
\Configure{speak:choose}
{<BREAK SIZE="small"/>binomial coefficient<BREAK SIZE="small"/>}
{<BREAK SIZE="medium"/>}
{<BREAK SIZE="small"/>choose<BREAK SIZE="small"/>}
\Configure{mfenced}{\vert}{\string&\#x007C;}
\Configure{mfenced}{\{}{\string&\#x007B;}
\Configure{mfenced}{\}}{\string&\#x007D;}
\Configure{mfenced}{\lbrace}{\string&\#x007B;}
\Configure{mfenced}{\rbrace}{\string&\#x007D;}
\Configure{mfenced}{\rgroup}{\string&\#x0028;}
\Configure{mfenced}{\lgroup}{\string&\#x0029;}
\Configure{mfenced}{(}{\string&\#x0028;}
\Configure{mfenced}{)}{\string&\#x0029;}
\Configure{mfenced}{[}{\string&\#x0058;}
\Configure{mfenced}{]}{\string&\#x0059;}
\Configure{mfenced}{|}{\string&\#x007C;}
\Configure{mfenced}{\bracevert}{\string&\#x007C;}
\Configure{mfenced}{\bracevert}{\string&\#x007C;}
\def\mathop:prefix#1{%
\Configure{mathop}{*}{<mo class="mo-op"
#1\Hnewline>}{</mo>}%
{\Configure{mathop}{*}{<mo class="mo-op">}{</mo>}{}}}
\Configure{quad}{\HCode{<span class="space"><BREAK SIZE="small"/></span>%
}}
\Configure{qquad}{\HCode{<span class="space"><BREAK SIZE="small"/></span>%
}}
\Configure{,}{\HCode{<span class="tiny-space"><BREAK SIZE="small"/></span>%
}}
\Configure{ }{\:nbsp}
\def\:nbsp{\leavevmode\special{t4ht@+\string&{35}x00A0{59}}x}
\Configure{root}
{\HCode{<mroot>%
\add:description{begin-root}{\a:speak:root}%
<mrow class="root-index">}}
{\HCode{</mrow>\add:description{mid-root}{\b:speak:root}%
<mrow class="root-base">}}
{\HCode{</mrow>\add:description{end-root}{\c:speak:root}</mroot>}}
\NewConfigure{speak:root}{3}
\Configure{speak:root}
{<BREAK SIZE="medium"/><level prefix="root">root
index</level><BREAK SIZE="medium"/>}
{<BREAK SIZE="medium"/><level prefix="begin">begin
root</level><BREAK SIZE="medium"/>}
{<BREAK SIZE="medium"/><level prefix="end">end
root</level><BREAK SIZE="medium"/>}
\Configure{left}
{}
{\HCode{\expandafter
\ifx \csname \string#1:lr del\endcsname\relax #1\else
\csname \string#1:lr del\endcsname\fi
}\bgroup
\HCode{<mrow>}\bgroup}
\Configure{right}
{\egroup\HCode{</mrow>}\egroup
\HCode{\expandafter
\ifx \csname \string#1:lr del\endcsname\relax #1\else
\csname \string#1:lr del\endcsname\fi
}}
{}
\Configure{mfenced}{\vert}{|}
\edef\:temp{\noexpand\Configure{mfenced}{\noexpand\{}{\string&\#x007B;}}\:temp
\edef\:temp{\noexpand\Configure{mfenced}{\noexpand\}}{\string&\#x007D;}}\:temp
\edef\:temp{\noexpand
\Configure{mfenced}{\noexpand\lbrace}{\string&\#x007B;}}\:temp
\edef\:temp{\noexpand
\Configure{mfenced}{\noexpand\rbrace}{\string&\#x007D;}}\:temp
\def\mathinner#1{\Tg<span
class="mathinner">#1\Tg</span>}
\:CheckOption{new-accents} \if:Option \else
\Configure{accent}\widetilde\widetilde{{}{}}
{}
{\HCode{<mover class="mover-tilde">%
\add:description{begin-end}{\b:speak:modified}%
<mrow class="mo-0303"\Hnewline>}%
#2%
\HCode{</mrow>\add:description{begin-end}{\a:speak:modified:tilde}%
</mover>}}
\Configure{accent}\widehat\widehat{{}{}}
{}
{\HCode{<mover class="mover-hat">%
\add:description{begin-end}{\a:speak:modified}%
<mrow class="mo-0302"\Hnewline>}%
#2%
\HCode{</mrow>\add:description{begin-end}{
\a:speak:modified:hat}</mover>}}
\Configure{accents}
{\ifmmode \expandafter\mathord\fi
{\leavevmode
\if !#1!\ht:special{t4ht@+&{35}x#2;}%
\else \expandafter \ifx\csname U#2#1\endcsname\relax
\ht:special{t4ht@+&{35}x#2;}%
\else
\ht:special{t4ht@+&{35}x\csname U#2#1\endcsname;}%
\fi \fi x%
%
\ht:special{t4ht@[}\if!#1!x\else#2\fi
\ht:special{t4ht@]}}}
{\ifmathml
\ifmtext \expandafter\ifx \csname :#1:over\endcsname\relax
\expandafter\ifx \csname :#1:under\endcsname\relax
\AccentMath{\expandafter\ifx \csname :#1:over\endcsname\relax
\HCode{<munder\Hnewline
accent="true"><mrow\Hnewline><BREAK SIZE="small"/>}%
#3\HCode{</mrow>}%
\csname :#1:under\endcsname
\HCode{</munder>}%
%
\else \expandafter\ifx \csname :#1:under\endcsname\relax
\HCode{<mover class="mover-accent">%
<mrow\Hnewline><BREAK SIZE="small"/>}%
#3\HCode{</mrow>}%
\csname prefix:#1:over\endcsname
\csname :#1:over\endcsname
\HCode{</mover>}%
%
\else
\HCode{<munderover\Hnewline
accent="true"><mrow\Hnewline><BREAK SIZE="small"/>}%
#3\HCode{</mrow>}%
\csname :#1:under\endcsname
\csname :#1:over\endcsname
\HCode{</munderover>}%
%
\fi \fi
}%
\else #3\csname :#1:under\endcsname \fi
\else #3\csname :#1:over\endcsname \fi
%
\else \AccentMath{\expandafter\ifx \csname :#1:over\endcsname\relax
\HCode{<munder\Hnewline
accent="true"><mrow\Hnewline><BREAK SIZE="small"/>}%
#3\HCode{</mrow>}%
\csname :#1:under\endcsname
\HCode{</munder>}%
%
\else \expandafter\ifx \csname :#1:under\endcsname\relax
\HCode{<mover class="mover-accent">%
<mrow\Hnewline><BREAK SIZE="small"/>}%
#3\HCode{</mrow>}%
\csname prefix:#1:over\endcsname
\csname :#1:over\endcsname
\HCode{</mover>}%
%
\else
\HCode{<munderover\Hnewline
accent="true"><mrow\Hnewline><BREAK SIZE="small"/>}%
#3\HCode{</mrow>}%
\csname :#1:under\endcsname
\csname :#1:over\endcsname
\HCode{</munderover>}%
%
\fi \fi
}\fi
\else \expandafter\ifx \csname :#1:over\endcsname\relax
\expandafter\ifx \csname :#1:under\endcsname\relax
\AccentMath{\expandafter\ifx \csname :#1:over\endcsname\relax
\HCode{<munder\Hnewline
accent="true"><mrow\Hnewline><BREAK SIZE="small"/>}%
#3\HCode{</mrow>}%
\csname :#1:under\endcsname
\HCode{</munder>}%
%
\else \expandafter\ifx \csname :#1:under\endcsname\relax
\HCode{<mover class="mover-accent">%
<mrow\Hnewline><BREAK SIZE="small"/>}%
#3\HCode{</mrow>}%
\csname prefix:#1:over\endcsname
\csname :#1:over\endcsname
\HCode{</mover>}%
%
\else
\HCode{<munderover\Hnewline
accent="true"><mrow\Hnewline><BREAK SIZE="small"/>}%
#3\HCode{</mrow>}%
\csname :#1:under\endcsname
\csname :#1:over\endcsname
\HCode{</munderover>}%
%
\fi \fi
}%
\else #3\csname :#1:under\endcsname \fi
\else #3\csname :#1:over\endcsname \fi
\fi
}
\fi
\Configure{cases}
{}{} {\HCode{<PARA><mtable>}}{\HCode{</mtable></PARA>}}
{\Tg<mtr>}{\Tg</mtr>}
{\Tg<mtd class="cases">}{\Tg</mtd>}
\Configure{matrix}
{\PushStack\Table:Stck\TableNo
\gHAdvance\Next:TableNo by 1
\global\let\TableNo=\Next:TableNo
%
\PushStack\Row:Stck\HRow \HAssign\HRow=0\relax
%
\HCode{<PARA><mtable class="array">}%
\HCode{\add:vdescription{begin-array}{\a:speak:array}}}
{\Tag{array-\TableNo}{\hrow:s}%
\HCode{<!--l. \the\inputlineno-->%
%
\add:vdescription{end-array}{\b:speak:array}}%
\ifvmode \IgnorePar\fi \HCode{</mtable></PARA>}%
\PopStack\Row:Stck\HRow
%
\PopStack\Table:Stck\TableNo
}
{\HCode{<mtr>}\c:speak:array}%
{\xdef\hrow:s{\HRow}\HCode{</mtr>}}%
{\HCode{<mtd>}%
\e:speak:array\HCode{<div>}}
{\HCode{</div>}\f:speak:array
\HCode{</mtd>\Hnewline}}
\Configure{pmatrix}
{\bgroup\HCode{<PARA><div class="pmatrix"><BREAK SIZE="small"/>}}
{\HCode{<BREAK SIZE="small"/></div></PARA>}\egroup}
\NewConfigure{speak:array}{6}
\Configure{speak:array}
{<BREAK SIZE="small"/>begin array with
\ifTag{array-\TableNo}{\LikeRef{array-\TableNo}}{}
rows<BREAK SIZE="small"/>}
{<BREAK SIZE="small"/>end array<BREAK SIZE="small"/>}
{\HCode{%
<BREAK SIZE="medium"/><PROS PITCH="-5" >%
\add:vdescription{begin-end}{<span class="ord-row">\ord:pos{\HRow}</span>%
row}%
</PROS><BREAK SIZE="medium"/>%
}%
}
{}
{\HCode{%
<BREAK SIZE="medium"/>%
\ifnum \HMultispan>1
<PROS PITCH="-5" >%
\add:vdescription{added-description}{\ord:pos{\HCol}%
cell
spans \HMultispan \space columns}%
</PROS><BREAK SIZE="medium"/>%
\else
\ifnum \HCol>1
<PROS PITCH="-5" >%
\add:vdescription{added-description}{\ord:pos{\HCol}%
cell}%
</PROS><BREAK SIZE="medium"/>%
\fi
\fi
}%
}
{}
\NewConfigure{speak:smallmatrix}{6}
\Configure{speak:smallmatrix}
{begin matrix with
\ifTag{smallmatrix-\TableNo}{\LikeRef{smallmatrix-\TableNo}}{}
rows}
{end matrix}
{\HCode{%
<BREAK SIZE="medium"/><PROS PITCH="-5" >%
\add:vdescription{begin-end}{<span class="ord-row">\ord:pos{\HRow}</span>%
row}%
</PROS><BREAK SIZE="medium"/>%
}%
}
{}
{\HCode{%
<BREAK SIZE="medium"/>%
\ifnum \HMultispan>1
<PROS PITCH="-5" >%
\add:vdescription{added-description}{\ord:pos{\HCol}%
cell
spans \HMultispan \space columns}%
</PROS><BREAK SIZE="medium"/>%
\else
\ifnum \HCol>1
<PROS PITCH="-5" >%
\add:vdescription{added-description}{\ord:pos{\HCol}%
cell}%
</PROS><BREAK SIZE="medium"/>%
\fi
\fi
}%
}
{}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\endinput\empty\empty\empty\empty\empty\empty
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\ConfigureHinput{amsopn}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\def\:tempc{\mathop{\underrightarrow\lim}\displaylimits} \HLet\varinjlim\:tempc
\def\:tempc{\mathop{\underleftarrow\lim}\displaylimits} \HLet\varprojlim\:tempc
\def\:tempc{\mathop{\overline\lim}\displaylimits} \HLet\varlimsup\:tempc
\def\:tempc{\mathop{\underline\lim}\displaylimits} \HLet\varliminf\:tempc
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\endinput\empty\empty\empty\empty\empty\empty
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\ConfigureHinput{array}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\Configure{array}
{\PushStack\Table:Stck\TableNo
\gHAdvance\Next:TableNo by 1
\global\let\TableNo=\Next:TableNo
%
\PushStack\Row:Stck\HRow \HAssign\HRow=0\relax
%
\HCode{<PARA><mtable class="array">}%
\HCode{\add:vdescription{begin-array}{\a:speak:array}}}
{\Tag{array-\TableNo}{\hrow:s}%
\HCode{<!--l. \the\inputlineno-->%
%
\add:vdescription{end-array}{\b:speak:array}}%
\ifvmode \IgnorePar\fi
\expandafter\tmp:toks\expandafter{\Clr}%
\HCode{<!--\the\tmp:toks-->}%
\HCode{</mtable></PARA>}%
\PopStack\Row:Stck\HRow
%
\PopStack\Table:Stck\TableNo
}
{\HCode{<mtr>}\c:speak:array}%
{\xdef\hrow:s{\HRow}\HCode{</mtr>}}%
{\HCode{<mtd>}%
\e:speak:array\HCode{<div>}}
{\HCode{</div>}\f:speak:array
\HCode{</mtd>\Hnewline}}
\ConfigureEnv{array}
{\bgroup\Configure{$}{}{}{}}
{\egroup}
{}{}
\ConfigureEnv{array}
{\PushStack\Col:Marg\AllColMargins
\bgroup\Configure{$}{}{}{}}
{\egroup \PopStack\Col:Marg\AllColMargins}
{}{}
\Configure{multicolumn}
{\let\sv:VBorder\VBorder
\let\VBorder\empty
\Configure{VBorder}{}{}{}{}%
}
{\let\VBorder\sv:VBorder}
{\ifmmode \else
\ifvmode\IgnorePar\fi
\fi \HCode{<div class="multicolumn" title="\HMultispan">}}
{\ifmmode \else
\ifvmode\IgnorePar\fi \EndP\fi \HCode{</div>} }
\def\gob:sp#1{#1}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\endinput\empty\empty\empty\empty\empty\empty
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\endinput