% html-speech-math.4ht (2015-01-28-14:59), generated from tex4ht-html-speech.tex % Copyright 2009-2015 TeX Users Group % Copyright 2006-2009 Eitan M. Gurari % % This work may be distributed and/or modified under the % conditions of the LaTeX Project Public License, either % version 1.3c 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.3c or later is part of all distributions % of LaTeX version 2005/12/01 or later. % % This work has the LPPL maintenance status "maintained". % % The Current Maintainer of this work % is the TeX4ht Project . % % If you modify this program, changing the % version identification would be appreciated. \immediate\write-1{version 2015-01-28-14:59} \exit:ifnot{amsmath,% amsopn,% array,% fontmath,% latex,% plain,% tex4ht} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{tex4ht} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \Configure{SUB} {\Send{BACK} {% }\HCode{\add:description{begin-script}{\a:speak:subsup}}\trap:base } {\HCode{\add:description{end-script}{\c:speak:subsup}}% } \Configure{SUP} {\Send{BACK} {% }\HCode{\add:description{begin-script}{\b:speak:subsup}}\trap:base } {\HCode{\add:description{end-script}{\c:speak:subsup}}% } \Configure{SUBSUP} {\Send{BACK} {% }\HCode{\add:description{begin-script}{\a:speak:subsup}}\trap:base } {\HCode{\add:description{mid-script}{\b:speak:subsup}}\trap:base } {\HCode{\add:description{end-script}{\c:speak:subsup}}% } \def\trap:base{{\HCode{}}} \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}{% }% \HCode{\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} {% }\HCode{\add:description{begin-script}{\b:speak:subsup}}\trap:base % \bgroup \Configure{SUP} {\Send{BACK} {% }\HCode{\add:description{begin-script}{\b:speak:subsup}}\trap:base % \bgroup \trap:base} {\egroup \HCode{\add:description{end-script}{\c:speak:subsup}}% % }% \trap:base} {\egroup\HCode{\add:description{end-limits-script}{\c:speak:underover}}\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}{% }% \HCode{\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} {% }\HCode{\add:description{begin-script}{\a:speak:subsup}}\trap:base % \bgroup \Configure{SUB} {\Send{BACK} {% }\HCode{\add:description{begin-script}{\a:speak:subsup}}\trap:base % \bgroup \trap:base} {\egroup \HCode{\add:description{end-script}{\c:speak:subsup}}% % }% \trap:base} {\egroup\HCode{\add:description{end-limits-script}{\c:speak:underover}}\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} {% }\HCode{\add:description{begin-limits-script}{\a:speak:underover}}\trap:base } {\HCode{\add:description{mid-limits-script}{\b:speak:underover}}\trap:base } {\HCode{\add:description{end-limits-script}{\c:speak:underover}}% } % } \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}{% }% \HCode{\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} {% }\HCode{\add:description{begin-script}{\b:speak:subsup}}\trap:base % \bgroup \Configure{SUP} {\Send{BACK} {% }\HCode{\add:description{begin-script}{\b:speak:subsup}}\trap:base % \bgroup \trap:base} {\egroup \HCode{\add:description{end-script}{\c:speak:subsup}}% % }% \trap:base} {\egroup\HCode{\add:description{end-limits-script}{\c:speak:underover}}\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}{% }% \HCode{\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} {% }\HCode{\add:description{begin-script}{\a:speak:subsup}}\trap:base % \bgroup \Configure{SUB} {\Send{BACK} {% }\HCode{\add:description{begin-script}{\a:speak:subsup}}\trap:base % \bgroup \trap:base} {\egroup \HCode{\add:description{end-script}{\c:speak:subsup}}% % }% \trap:base} {\egroup\HCode{\add:description{end-limits-script}{\c:speak:underover}}\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} {% }\HCode{\add:description{begin-limits-script}{\a:speak:underover}}\trap:base } {\HCode{\add:description{mid-limits-script}{\b:speak:underover}}\trap:base } {\HCode{\add:description{end-limits-script}{\c:speak:underover}}% } % } \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 \Configure{radical} {\HCode{% \add:description{begin-root}{\a:speak:radical}}% \special{t4ht\string~!e<}% \special{t4ht\string~!e>% \add:description{end-root}{\b:speak:radical}}% \special{t4ht\string~!ee/}% \special{t4ht\string~!ese-}% } \NewConfigure{speak:radical}{2} \Configure{speak:radical} {begin root} {end root} \NewConfigure{speak:description}{3} \Configure{speak:description} {begin \ifcase\csname @listdepth\endcsname \or \or sub \or sub sub \or sub sub sub \else\fi list} {end \ifcase\csname @listdepth\endcsname \or sub \or sub sub \or sub sub sub \else\fi list} { item} \Configure{DviMath} {\a:DviMathSpk \mathmltrue \ifOption{mml-fonts}{}{\NoFonts}% \IgnoreRule \HCode{}\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{% \add:description{begin-math}{\a:speak:math}}} {\HCode{\add:description{end-math}{\b:speak:math}}}% \DviMath} {\EndDviMath}{} \Configure{$$} {\Configure{@math}{div}\IgnorePar \ifvmode\else \HCode{}\fi \EndP \Configure{DviMathSpk} {\HCode{
% \add:description{begin-math}{\a:speak:math}}} {\HCode{\add:description{end-math}{\b:speak:math}
}}% \DviMath} {\EndDviMath \ShowPar\par{\csname HCondtrue\endcsname\noindent}} {\DisplayMathtrue} \NewConfigure{speak:math}{2} \Configure{speak:math} {begin math} {end math} \Configure{over} {\Send{GROUP}{0}{\add:description{begin-end}{\a:speak:fraction}% % }\HCode{}% } {\HCode{\add:description{begin-end}{\c:speak:fraction} }% \Send{EndGROUP}{0}{\add:description{begin-end}{\b:speak:fraction}% }} \Configure{atop} {\Send{GROUP}{0}{% \add:description{begin-stack}{\a:speak:atop}% % }\HCode{}% } {\HCode{\add:description{added-description}{\c:speak:atop}}% \Send{EndGROUP}{0}{\add:description{end-stack}{\b:speak:atop}% }} \Configure{above} {\Send{GROUP}{0}{\add:description{begin-end}{\a:speak:fraction}% % % }% \HCode{}% % \o:over:\:gobbleII} {\HCode{\add:description{begin-end}{\c:speak:fraction} }% % \Send{EndGROUP}{0}{\add:description{begin-end}{\b:speak:fraction}% % }} \def\abovewithdelims:III#1#2#3{% \def\:temp{#2#3}\def\:tempa{..}\ifx \:temp\:tempa \Send{GROUP}{0}{\add:description{begin-end}{\a:speak:fraction}% % % }% \HCode{}% % \o:over: \HCode{\add:description{begin-end}{\c:speak:fraction} }% % \Send{EndGROUP}{0}{\add:description{begin-end}{\b:speak:fraction}% % } \else \Send{GROUP}{0}% {\expandafter \ifx \csname \string#2:lr del\endcsname\relax #2\else \csname \string#2:lr del\endcsname\fi % \add:description{begin-end}{\a:speak:fraction}% % % }% \HCode{}% % \o:over: \HCode{\add:description{begin-end}{\c:speak:fraction} }% % \Send{EndGROUP}{0}{\add:description{begin-end}{\b:speak:fraction}% % % \expandafter \ifx \csname \string#3:lr del\endcsname\relax #3\else \csname \string#3:lr del\endcsname\fi } \fi \tmp:dim } \def\atopwithdelims:III#1#2#3{% \def\:temp{#2#3}\def\:tempa{..}\ifx \:temp\:tempa \Send{GROUP}{0}{% \add:description{begin-stack}{\a:speak:atop}% % }% \HCode{}% \o:atop: \HCode{\add:description{added-description}{\c:speak:atop}}% \Send{EndGROUP}{0}{\add:description{end-stack}{\b:speak:atop}% } \else \Send{GROUP}{0}% {\expandafter \ifx \csname \string#2:lr del\endcsname\relax #2\else \csname \string#2:lr del\endcsname\fi % % \add:description{begin-stack}{\a:speak:atop}% % }% \HCode{}% \o:atop: \HCode{\add:description{added-description}{\c:speak:atop}}% % \Send{EndGROUP}{0}{\add:description{end-stack}{\b:speak:atop}% % \expandafter \ifx \csname \string#3:lr del\endcsname\relax #3\else \csname \string#3:lr del\endcsname\fi } \fi } \def\overwithdelims:III#1#2#3{% \def\:temp{#2#3}\def\:tempa{..}\ifx \:temp\:tempa \Send{GROUP}{0}{\add:description{begin-end}{\a:speak:fraction}% % }\HCode{}% \o:over: \HCode{\add:description{begin-end}{\c:speak:fraction} }% \Send{EndGROUP}{0}{\add:description{begin-end}{\b:speak:fraction}% } \else \Send{GROUP}{0}% {\expandafter \ifx \csname \string#2:lr del\endcsname\relax #2\else \csname \string#2:lr del\endcsname\fi % \add:description{begin-end}{\a:speak:fraction}% % }% \HCode{}% \o:over: \HCode{\add:description{begin-end}{\c:speak:fraction} }% \Send{EndGROUP}{0}{\add:description{begin-end}{\b:speak:fraction}% % \expandafter \ifx \csname \string#3:lr del\endcsname\relax #3\else \csname \string#3:lr del\endcsname\fi } \fi } \NewConfigure{speak:fraction}{3} \Configure{speak:fraction} {begin fraction} {end fraction} {over} \NewConfigure{speak:atop}{3} \Configure{speak:atop} {begin stack} {end stack} {over} \NewConfigure{speak:subsup}{3} \Configure{speak:subsup} {subscript} {superscript} {baseline} \NewConfigure{speak:underover}{3} \Configure{speak:underover} {under script} {over script} {end scripts} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \endinput\empty\empty\empty\empty\empty\empty %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{latex} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \Configure{cases} {}{} {\Tg}{\Tg} {\Tg}{\Tg} {\Tg}{\Tg} \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{
}% \HCode{\add:vdescription{begin-array}{\a:speak:array}}} {\Tag{array-\TableNo}{\hrow:s}% \HCode{% % \add:vdescription{end-array}{\b:speak:array}}% \ifvmode \IgnorePar\fi \Tg
% \PopStack\Row:Stck\HRow % \PopStack\Table:Stck\TableNo } {\HCode{
}\c:speak:array}% {\xdef\hrow:s{\HRow}\HCode{
}}% {\HCode{
}% \e:speak:array\HCode{
}} {\HCode{
}\f:speak:array \HCode{
\Hnewline}} \Configure{pmatrix} {\bgroup\Tg
} {\Tg
\egroup} \NewConfigure{speak:array}{6} \Configure{speak:array} {begin array with \ifTag{array-\TableNo}{\LikeRef{array-\TableNo}}{} rows} {end array} {\HCode{\add:vdescription{begin-end}{\ord:pos{\HRow}% row}}% } {} {\HCode{% \add:vdescription{added-description}{% \ifnum \HMultispan>1 \ord:pos{\HCol}% cell, spans \HMultispan \space columns \else \ifnum \HCol>1 \ord:pos{\HCol}% cell \fi \fi }}% } {} \NewConfigure{speak:smallmatrix}{6} \Configure{speak:smallmatrix} {begin matrix with \ifTag{smallmatrix-\TableNo}{\LikeRef{smallmatrix-\TableNo}}{} rows} {end matrix} {\HCode{\add:vdescription{begin-end}{\ord:pos{\HRow}% row}}% } {} {\HCode{% \add:vdescription{added-description}{% \ifnum \HMultispan>1 \ord:pos{\HCol}% cell, spans \HMultispan \space columns \else \ifnum \HCol>1 \ord:pos{\HCol}% cell \fi \fi }}% } {} \Configure{left} {} {\HCode{% \expandafter \ifx \csname \string#1:lr del\endcsname\relax #1\else \csname \string#1:lr del\endcsname\fi }\bgroup} \Configure{right} {\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#1\Tg} \def\mathop:prefix#1{% \Configure{mathop}{*}{}{}% {\Configure{mathop}{*}{}{}{}}} \Configure{quad}{\HCode{ % }} \Configure{qquad}{\HCode{ % }} \Configure{,}{\HCode{ % }} \Configure{ }{\:nbsp} \def\:nbsp{\leavevmode\special{t4ht@+\string&{35}x00A0{59}}x} \Configure{choose} {\Send{GROUP}{0}{% \add:description{begin-stack}{\a:speak:choose}% }% \HCode{}\o:atop: \HCode{\add:description{added-description}% {\c:speak:choose}}% \Send{EndGROUP}{0}% {\add:description{end-stack}{\b:speak:choose}}% } \NewConfigure{speak:choose}{3} \Configure{speak:choose} {begin binomial coefficient} {end binomial coefficient} {choose} \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;} \Configure{root} {\HCode{% \add:description{begin-root}{\a:speak:root}}} {\HCode{\add:description{mid-root}{\b:speak:root}% }} {\HCode{\add:description{end-root}{\c:speak:root}}} \NewConfigure{speak:root}{3} \Configure{speak:root} {root index} {begin root} {end root} \:CheckOption{new-accents} \if:Option \else \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{}#3\HCode{}% \csname :#1:under\endcsname \HCode{}% % \else \expandafter\ifx \csname :#1:under\endcsname\relax \HCode{}#3\HCode{}% \csname prefix:#1:over\endcsname \csname :#1:over\endcsname \HCode{}% % \else \HCode{}#3\HCode{}% \csname :#1:under\endcsname \csname :#1:over\endcsname \HCode{}% % \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{}#3\HCode{}% \csname :#1:under\endcsname \HCode{}% % \else \expandafter\ifx \csname :#1:under\endcsname\relax \HCode{}#3\HCode{}% \csname prefix:#1:over\endcsname \csname :#1:over\endcsname \HCode{}% % \else \HCode{}#3\HCode{}% \csname :#1:under\endcsname \csname :#1:over\endcsname \HCode{}% % \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{}#3\HCode{}% \csname :#1:under\endcsname \HCode{}% % \else \expandafter\ifx \csname :#1:under\endcsname\relax \HCode{}#3\HCode{}% \csname prefix:#1:over\endcsname \csname :#1:over\endcsname \HCode{}% % \else \HCode{}#3\HCode{}% \csname :#1:under\endcsname \csname :#1:over\endcsname \HCode{}% % \fi \fi }% \else #3\csname :#1:under\endcsname \fi \else #3\csname :#1:over\endcsname \fi \fi } \Configure{accent}\widetilde\widetilde{{}{}} {} {\HCode{% \add:description{begin-end}{\b:speak:modified}% }% #2% \HCode{\add:description{begin-end}{\a:speak:modified:tilde}}} \Configure{accent}\widehat\widehat{{}{}} {} {\HCode{% \add:description{begin-end}{\a:speak:modified}% }% #2% \HCode{\add:description{begin-end}{ \a:speak:modified:hat}}} \fi \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{
}% \HCode{\add:vdescription{begin-array}{\a:speak:array}}} {\Tag{array-\TableNo}{\hrow:s}% \HCode{% % \add:vdescription{end-array}{\b:speak:array}}% \ifvmode \IgnorePar\fi \expandafter\tmp:toks\expandafter{\Clr}% \HCode{}% \Tg
% \PopStack\Row:Stck\HRow % \PopStack\Table:Stck\TableNo } {\HCode{
}\c:speak:array}% {\xdef\hrow:s{\HRow}\HCode{
}}% {\HCode{
}% \e:speak:array\HCode{
}} {\HCode{
}\f:speak:array \HCode{
\Hnewline}} \ConfigureEnv{array} {\bgroup\Configure{$}{}{}{}} {\egroup} {}{} \def\:MM{m} \Configure{HBorder} {} { \string&\#x0332; } {} {} {} { \string&\#x0332; } {} {} {} {} \Configure{frac} {\HCode{\add:description{begin-end}{\a:speak:fraction}% % }} {\HCode{}% \Configure{over}{}{}} {\HCode{\add:description{begin-end}{\c:speak:fraction} }% } {\HCode{\add:description{begin-end}{\b:speak:fraction}% }} \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 \string&\#x0332; \else \fi} {} {<\:MM tr\Hnewline \ifmathml \expandafterclass\else class\fi ="cline">} {<\:MM td>} {\ifmathml \string&\#x0332; \else \fi} {} {<\:MM tr\Hnewline \ifmathml \expandafterclass\else class\fi="vspace" style="font-size:\HBorderspace">} {<\:MM td\Hnewline>\ifmathml\else\string&\#x00A0;\fi } {} \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{
}} {\ifmmode \else \ifvmode\IgnorePar\fi \EndP\fi \HCode{
} } \def\gob:sp#1{#1} \Configure{equation} {\IgnorePar\ifvmode\else \HCode{}\fi \EndP \PushStack\Table:Stck\TableNo \gHAdvance\Next:TableNo by 1 \global\let\TableNo=\Next:TableNo % \HCode{
% \add:description{begin-math}{\a:speak:equation}%
}\IgnorePar \Configure{$$} {\Configure{@math}{% class="equation"}\IgnorePar\EndP\DviMath} {\EndDviMath\EndP} {\DisplayMathtrue}% } {\ifvmode \IgnorePar\fi\EndP \HCode{
}% \let\@eqnnum\empty } {\HCode{% \add:description{end-math}{\b:speak:equation}%
}% \Tag{eq-\TableNo-num}{\theequation}% \ShowPar \par{\HCondtrue\noindent}% } \NewConfigure{speak:equation}{2} \Configure{speak:equation} {begin equation \ifTag{eq-\TableNo-num}{\LikeRef{eq-\TableNo-num}}{}% } {end equation \theequation} \Configure{[]} {\Configure{@math}{div}\IgnorePar \ifvmode\else \HCode{}\fi \EndP \Configure{DviMathSpk} {\HCode{
% \add:description{begin-math}{\a:speak:math}}} {\HCode{\add:description{end-math}{\b:speak:math}
}}% \DviMath $$\DisplayMathtrue } {$$\EndDviMath} \Configure{()} {\Configure{DviMathSpk} {\HCode{% \add:description{begin-math}{\a:speak:math}}} {\HCode{\add:description{end-math}{\b:speak:math}}}% \DviMath $} {$\EndDviMath} \def\AA:text#1{\mtexttrue \HCode{ }% \ht:special{t4ht@,&\#x00A0;}% \PauseMathClass \Configure{$}% {\EndPauseMathClass \HCode{}\mtextfalse \ht:special{t4ht@,}% }% {\HCode{}\ht:special{t4ht@,&\#x00A0;}% \PauseMathClass \mtexttrue}% {}% % } \def\BB:text{\mtextfalse\EndPauseMathClass\ht:special{t4ht@,}% \HCode {
}% } \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{overline} {\bgroup\ifmathml \HCode{% \add:description{begin-end}{\b:speak:modified}% }% \else \HCode{}\fi} {\ifmathml \HCode{% \add:description{begin-end}{\a:speak:modified:line}}% \else \HCode{}\fi\egroup} \Configure{underline} {\bgroup \ifmathml \HCode{% \add:description{begin-end}{\a:speak:modified}% }% \else \expandafter\everymath \expandafter{\expandafter\everymath \expandafter{\the\everymath}}% \let\o::@underline:\o:@@underline: \def\o:@@underline:{\let\o:@@underline:\o::@underline:}% \HCode{}\fi} {\ifmathml \HCode{% \add:description{begin-end}{\a:speak:modified:line}}% \else \HCode{}\fi \egroup} \NewConfigure{speak:modified}{2} \Configure{speak:modified} {modified under} {modified above} \NewConfigure{speak:modified:line}{1} \Configure{speak:modified:line}{with bar} \NewConfigure{speak:modified:brace}{1} \Configure{speak:modified:brace}{with brace} \NewConfigure{speak:modified:hat}{1} \Configure{speak:modified:hat}{with wide hat} \NewConfigure{speak:modified:tilde}{1} \Configure{speak:modified:tilde}{with wide tilde} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \endinput\empty\empty\empty\empty\empty\empty %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{fontmath} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \Configure{big} {}{} {} {} \Configure{Big} {}{} {} {} \Configure{bigg} {}{} {} {} \Configure{Bigg} {}{} {} {} \Configure{Biggm} {\bgroup \Configure{Bigg}{}{}{}{}% \Configure{mathrel}{*} {} {} {\Configure{mathrel}{}{}{}{}}% } {\egroup} \Configure{Bigm} {\bgroup \Configure{Big}{}{}{}{}% \Configure{mathrel}{*} {} {} {\Configure{mathrel}{}{}{}{}}% } {\egroup} \Configure{biggm} {\bgroup \Configure{bigg}{}{}{}{}% \Configure{mathrel}{*} {} {} {\Configure{mathrel}{}{}{}{}}% } {\egroup} \Configure{bigm} {\bgroup \Configure{big}{}{}{}{}% \Configure{mathrel}{*} {} {} {\Configure{mathrel}{}{}{}{}}% } {\egroup} \:CheckOption{mathml-} \if:Option \Configure{Biggl} {\bgroup \Configure{Bigg}{}{}{}{}% \Configure{mathopen}{*} {} {} {\Configure{mathopen}{}{}{}{}}% } {\egroup} \Configure{Biggr} {\bgroup \Configure{Bigg}{}{}{}{}% \Configure{mathclose}{*} {} {} {\Configure{mathclose}{}{}{}{}}% } {\egroup} \Configure{Bigl} {\bgroup \Configure{Big}{}{}{}{}% \Configure{mathopen}{*} {} {} {\Configure{mathopen}{}{}{}{}}% } {\egroup} \Configure{Bigr} {\bgroup \Configure{Big}{}{}{}{}% \Configure{mathclose}{*} {} {} {\Configure{mathclose}{}{}{}{}}% } {\egroup} \Configure{biggl} {\bgroup \Configure{bigg}{}{}{}{}% \Configure{mathopen}{*} {} {} {\Configure{mathopen}{}{}{}{}}% } {\egroup} \Configure{biggr} {\bgroup \Configure{bigg}{}{}{}{}% \Configure{mathclose}{*} {} {} {\Configure{mathclose}{}{}{}{}}% } {\egroup} \Configure{bigl} {\bgroup \Configure{big}{}{}{}{}% \Configure{mathopen}{*} {} {} {\Configure{mathopen}{}{}{}{}}% } {\egroup} \Configure{bigr} {\bgroup \Configure{big}{}{}{}{}% \Configure{mathclose}{*} {} {} {\Configure{mathclose}{}{}{}{}}% } {\egroup} \else \Configure{Biggl} {\bgroup \Configure{Bigg}{}{}{}{}% \Configure{mathopen}{*} {} {} {\Configure{mathopen}{}{}{}{}}% } {\egroup} \Configure{Biggr} {\bgroup \Configure{Bigg}{}{}{}{}% \Configure{mathclose}{*} {} {} {\Configure{mathclose}{}{}{}{}}% } {\egroup} \Configure{Bigl} {\bgroup \Configure{Big}{}{}{}{}% \Configure{mathopen}{*} {} {} {\Configure{mathopen}{}{}{}{}}% } {\egroup} \Configure{Bigr} {\bgroup \Configure{Big}{}{}{}{}% \Configure{mathclose}{*} {} {} {\Configure{mathclose}{}{}{}{}}% } {\egroup} \Configure{biggl} {\bgroup \Configure{bigg}{}{}{}{}% \Configure{mathopen}{*} {} {} {\Configure{mathopen}{}{}{}{}}% } {\egroup} \Configure{biggr} {\bgroup \Configure{bigg}{}{}{}{}% \Configure{mathclose}{*} {} {} {\Configure{mathclose}{}{}{}{}}% } {\egroup} \Configure{bigl} {\bgroup \Configure{big}{}{}{}{}% \Configure{mathopen}{*} {} {} {\Configure{mathopen}{}{}{}{}}% } {\egroup} \Configure{bigr} {\bgroup \Configure{big}{}{}{}{}% \Configure{mathclose}{*} {} {} {\Configure{mathclose}{}{}{}{}}% } {\egroup} \fi \Configure{MathClass}{0}{*}{}% {}{} \Configure{MathClass}{1}{*}{ }{ }{} \Configure{MathClass}{2}{*}{}{}{} \Configure{MathClass}{3}{*}{}{}{} \:CheckOption{mathml-} \if:Option \Configure{MathClass}{4}{*}{} {}{} \Configure{MathClass}{5}{*}{} {}{} \else \Log:Note{for sources failing to produce clean mathml code, try the command line option `mathml-'}% \Configure{MathClass}{4}{*}{} {}{} \Configure{MathClass}{5}{*}{} {}{} \fi \Configure{MathClass}{6}{*}{}{}{} \Configure{MathClass}{7}{*}{}{} {0123456789} \Configure{FormulaClass}{0}{}{}{} \Configure{FormulaClass}{1}{}{}{} \Configure{FormulaClass}{2}{}{}{} \Configure{FormulaClass}{3}{}{}{} \Configure{FormulaClass}{4}{}{}{} \Configure{FormulaClass}{5}{}{}{} \Configure{FormulaClass}{6}{}{}{} \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{overbrace} {\Configure{mathop*}{*} {% \add:description{begin-end}{\b:speak:modified}% } {\add:description{begin-end}{\a:speak:modified:brace}} {\Configure{mathop}{}{}{}{}}% } {\let\o:overbrace:=\displaystyle} {} \Configure{underbrace} {\Configure{mathop*}{*} {% \add:description{begin-end}{\a:speak:modified}% } {\add:description{begin-end}{\a:speak:modified:brace}} {\Configure{mathop}{}{}{}{}}% } {\let\o:underbrace:=\displaystyle} {} \Configure{overrightarrow} {\HCode{% \add:description{begin-end}{\b:speak:modified}% }\:gobble} {\HCode{% \add:description{begin-end}{\a:speak:modified:rightarrow}}} \Configure{overleftarrow} {\HCode{% \add:description{begin-end}{\b:speak:modified}% }\:gobble} {\HCode{% \add:description{begin-end}{\a:speak:modified:leftarrow}}} \NewConfigure{speak:modified:rightarrow}{1} \Configure{speak:modified:rightarrow}{with right arrow} \NewConfigure{speak:modified:leftarrow}{1} \Configure{speak:modified:leftarrow}{with left right arrow} \NewConfigure{speak:modified:leftrightarrow}{1} \Configure{speak:modified:leftrightarrow}{with left right arrow} \def\bold:version{bold} \Configure{mathbf}% {\bgroup \Tg}% {\Tg\egroup }% \Configure{mathit}% {\bgroup \Tg}% {\Tg\egroup }% \Configure{mathrm}% {\bgroup \Tg}% {\Tg\egroup }% \Configure{mathsf}% {\bgroup \Tg}% {\Tg\egroup }% \Configure{mathtt}% {\bgroup \Tg}% {\Tg\egroup }% \def\:tempd#1#2{% \expandafter\def\csname #1\endcsname{\mathchar"13#2\relax}% \MathSymbol\mathop{#1}% \expandafter\def\csname #1:limits\endcsname{\expandafter \:same \math:sym\mathop{#1}\limits}% \expandafter\def\csname #1:nolimits\endcsname{\expandafter \:same \math:sym\mathop{#1}\nolimits}% \expandafter\edef\csname n:#1:\endcsname{\noexpand\ifDisplayMath \noexpand\expandafter \expandafter\noexpand \csname #1:limits\endcsname \noexpand\else \noexpand\expandafter \expandafter\noexpand \csname #1:nolimits\endcsname\noexpand\fi}% \expandafter\pend:def\csname n:#1:\endcsname{\ifDisplayMath \mathop:prefix{mathsize-big}\fi}% } \:tempd{bigcap}{54} \:tempd{bigcup}{53} \:tempd{bigodot}{4A} \:tempd{bigoplus}{4C} \:tempd{bigotimes}{4E} \:tempd{bigsqcup}{46} \:tempd{biguplus}{55} \:tempd{bigvee}{57} \:tempd{bigwedge}{56} \:tempd{coprod}{60} \:tempd{intop}{52} \:tempd{ointop}{48} \:tempd{prod}{51} \:tempd{sum}{50} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \endinput\empty\empty\empty\empty\empty\empty %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{amsmath} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \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{
% \add:description{begin-math}{\a:speak:equation}%
}% \Configure{gather} {\HCode{
}\IgnorePar \Configure{$$} {\Configure{@math}{% class="equation"}\IgnorePar\EndP\DviMath} {\EndDviMath\EndP} {\DisplayMathtrue}% } {\HCode{
}} {} {} {\ifnum\HCol=2 \IgnorePar \HCode{
}\fi } {} % \Configure{$$} {\Configure{@math}{% class="equation"}\IgnorePar\EndP\DviMath} {\EndDviMath\EndP} {\DisplayMathtrue}% % } {\ifvmode \IgnorePar\fi\EndP \HCode{
}% \let\@eqnnum\empty } {\ifvmode \IgnorePar\fi\EndP \HCode{% \add:description{end-math}{\b:speak:equation}% }% \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{
% \add:description{begin-math}{\csname a:speak:equation*\endcsname}}% \Configure{gather*} {\HCode{
}\IgnorePar \Configure{$$} {\Configure{@math}{% class="equation"}\IgnorePar\EndP\DviMath} {\EndDviMath\EndP} {\DisplayMathtrue}% } {\HCode{
}} {} {} {\ifnum\HCol=2 \IgnorePar \HCode{
}\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}
}% \PopStack\Table:Stck\TableNo % \ShowPar\IgnoreIndent\par} \Configure{speak:equation} {begin equation \ifTag{eq-\TableNo-num}{\LikeRef{eq-\TableNo-num}}{}% } {end equation \theequation} \NewConfigure{speak:equation*}{2} \Configure{speak:equation*} {begin equation} {end equation} \fi \Configure{eqref} {\bgroup\let\tagform@\empty \HCode{ \add:description{added-description}{\a:speak:eqref}}} {\HCode{}\egroup} \NewConfigure{speak:eqref}{1} \Configure{speak:eqref}{ equation } \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{
}% \HCode{\add:vdescription{begin-array}{\a:speak:aligned}}} {\Tag{aligned-\TableNo}{\hrow:s}% \HCode{% % \add:vdescription{end-array}{\b:speak:aligned}}% \ifvmode \IgnorePar\fi \Tg
% \PopStack\Row:Stck\HRow % \PopStack\Table:Stck\TableNo } {\HCode{
}\c:speak:aligned}% {\xdef\hrow:s{\HRow}\HCode{
}}% {\HCode{
}% \e:speak:aligned \HCode{
}} {\HCode{
}\f:speak:aligned \HCode{
\Hnewline}} \NewConfigure{speak:aligned}{6} \Configure{speak:aligned} {begin \ifTag{aligned-\TableNo}{\LikeRef{aligned-\TableNo}}{} aligned equations} {end equations} {\HCode{\add:vdescription{begin-end}{\ord:pos{\HRow}% row}}% } {} {\HCode{% \add:vdescription{added-description}{% \ifnum \HMultispan>1 \ord:pos{\HCol}% cell, spans \HMultispan \space columns \else \ifnum \HCol>1 \ord:pos{\HCol}% cell \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{
}% \HCode{\add:vdescription{begin-array}{\a:speak:aligned}}} {\Tag{aligned-\TableNo}{\hrow:s}% \HCode{% % \add:vdescription{end-array}{\b:speak:aligned}}% \ifvmode \IgnorePar\fi \Tg
% \PopStack\Row:Stck\HRow % \PopStack\Table:Stck\TableNo } {\HCode{
}\c:speak:aligned}% {\xdef\hrow:s{\HRow}\HCode{
}}% {\HCode{
}% \e:speak:aligned \HCode{
}} {\HCode{
}\f:speak:aligned \HCode{
\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{
}% \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{
% \add:vdescription{begin-array}{begin \ifTag{cases-\TableNo}{\LikeRef{cases-\TableNo}}{} cases}}} % {\Tag{cases-\TableNo}{\HRow}% \HCode{% % \add:vdescription{end-array}{end cases}}% \ifvmode \IgnorePar\fi \Tg
} {\HCode{
% \add:vdescription{begin-end}{Case \HRow}}} {\HCode{
}}% {\HCode{
}% \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{
}% \HCode{\add:vdescription{begin-array}{\a:speak:array}}} {\Tag{array-\TableNo}{\hrow:s}% \HCode{% % \add:vdescription{end-array}{\b:speak:array}}% \ifvmode \IgnorePar\fi \expandafter\tmp:toks\expandafter{\Clr}% \HCode{}% \Tg
% \PopStack\Row:Stck\HRow % \PopStack\Table:Stck\TableNo } {\HCode{
}\c:speak:array}% {\xdef\hrow:s{\HRow}\HCode{
}}% {\HCode{
}% \e:speak:array\HCode{
}} {\HCode{
}\f:speak:array \HCode{
\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{
\Hnewline}} % \Configure{left} {} {\bgroup} \Configure{right} {\egroup} {} % } {\egroup\HCode{
}% \PopStack\Row:Stck\HRow % \PopStack\Table:Stck\TableNo } {}{} \Configure{split} {\PushStack\Table:Stck\TableNo \gHAdvance\Next:TableNo by 1 \global\let\TableNo=\Next:TableNo % \HCode{
% \add:vdescription{begin-array}{begin \ifTag{split-\TableNo}{\LikeRef{split-\TableNo}}{} sub equations}}} {\ifvmode\IgnorePar\fi \Tag{split-\TableNo}{\HRow:s}% \HCode{\add:vdescription{end-array}{end sub equations}
}% \PopStack\Table:Stck\TableNo % } {\HCode{}% \xdef\HRow:s{\HRow}% } {\HCode{}} {\HCode{% \add:vdescription{begin-end}{% \ifnum \HCol=1 left \else right \fi \ord:pos{\HRow}% sub equation}}% } {\HCode{}} \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{% \add:vdescription{begin-math}{begin equation \ifTag{multline-\TableNo-num}{\LikeRef{multline-\TableNo-num}}{} with \ifTag{multline-\TableNo}{\LikeRef{multline-\TableNo}}{} lines}%
% }} {\Tag{multline-\TableNo}{\hrow:s}% \HCode{
% \add:vdescription{end-math}{end equation \ifTag{multline-\TableNo-num}{\LikeRef{multline-\TableNo-num}}{}% }% }% \PopStack\Row:Stck\HRow % \PopStack\Table:Stck\TableNo } {\HCode{
% \add:vdescription{begin-end}{\ord:pos{\HRow}% line}% }} {\xdef\hrow:s{\HRow}\HCode{
}} {\HCode{
}} {} \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{% \add:vdescription{begin-math}{begin equation with \ifTag{multline-\TableNo}{\LikeRef{multline-\TableNo}}{} lines}%
% }} {\Tag{multline-\TableNo}{\hrow:s}% \HCode{
% \add:vdescription{end-math}{end equation}%
}% \PopStack\Row:Stck\HRow % \PopStack\Table:Stck\TableNo } {\HCode{% \add:vdescription{begin-end}{\ord:pos{\HRow}% line}% }} {\xdef\hrow:s{\HRow}\HCode{}} \Css{.begin-multline, .end-multline {color:red;}} \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} {}{} \Css{.begin-gather, .end-gather {color:red;}} \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{% \add:vdescription{begin-math}{begin group of \ifTag{gather-\TableNo}{\LikeRef{gather-\TableNo}}{} equations}%
% }} {\HCode{
\add:vdescription{end-math}{end equations}% }% \Tag{gather-\TableNo}{\hrow:s}% \PopStack\Row:Stck\HRow % \PopStack\Table:Stck\TableNo } {\HCode{
% \add:vdescription{begin-end}{\ord:pos{\HRow}% equation}% }} {\xdef\hrow:s{\HRow}\HCode{
}} {\HCode{\Hnewline
}% \ifnum \HCol>1 \let\tagform@\:gobble \fi } {\HCode{
}} \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{% \add:vdescription{begin-math}{begin group of \ifTag{gather-\TableNo}{\LikeRef{gather-\TableNo}}{} equations}%
% }} {\HCode{
\add:vdescription{end-math}{end equations}% }% \Tag{gather-\TableNo}{\hrow:s}% \PopStack\Row:Stck\HRow % \PopStack\Table:Stck\TableNo } {\HCode{
% \add:vdescription{begin-math}{\ord:pos{\HRow}% equation}% }} {\xdef\hrow:s{\HRow}\HCode{
}} {\HCode{\Hnewline
}} {\HCode{
}} \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{% \add:vdescription{begin-math}{begin group of \ifTag{gather-\TableNo}{\LikeRef{gather-\TableNo}}{} equations}%
% }} {\HCode{
\add:vdescription{end-math}{end equations}% }% \Tag{gather-\TableNo}{\hrow:s}% \PopStack\Row:Stck\HRow % \PopStack\Table:Stck\TableNo } {\HCode{
% \add:vdescription{begin-end}{\ord:pos{\HRow}% equation}% }} {\xdef\hrow:s{\HRow}\HCode{
}} {\HCode{\Hnewline
}% \ifnum \HCol>1 \let\tagform@\:gobble \fi } {\HCode{
}} \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{
% \add:vdescription{begin-array}{\a:speak:subarray}% }} {\HCode{\add:vdescription{end-array}{\b:speak:subarray}%
}% \Tag{subarray-\TableNo}{\hrow:s}% \PopStack\Row:Stck\HRow % \PopStack\Table:Stck\TableNo } {\HCode{
% \add:vdescription{begin-end}{\c:speak:subarray}% }} {\xdef\hrow:s{\HRow}\HCode{
}} \NewConfigure{speak:subarray}{3} \Configure{speak:subarray} {begin sub array with \ifTag{subarray-\TableNo}{\LikeRef{subarray-\TableNo}}{} rows} {end sub array} {\ord:pos{\HRow}% row} \Configure{substack} {\bgroup \Configure{speak:subarray} {begin sub stack with \ifTag{subarray-\TableNo}{\LikeRef{subarray-\TableNo}}{} entries} {end sub stack} {\ord:pos{\HRow}% entry} } {\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{
}% \HCode{\add:vdescription{begin-array}{\a:speak:smallmatrix}}} {\Tag{smallmatrix-\TableNo}{\hrow:s}% \HCode{% % \add:vdescription{end-array}{\b:speak:smallmatrix}}% \ifvmode \IgnorePar\fi \Tg
% \PopStack\Row:Stck\HRow % \PopStack\Table:Stck\TableNo } {\HCode{
}\c:speak:smallmatrix}% {\xdef\hrow:s{\HRow}\HCode{
}}% {\HCode{
}% \e:speak:smallmatrix \HCode{
}} {\HCode{
}\f:speak:smallmatrix \HCode{
\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{}\fi \ifmathml \Tg\def\end:mathalign{\Tg}% \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{
% \add:description{begin-array}{\a:speak:align}% }} {\HCode{% \add:description{end-array}{\b:speak:align}%
}% \Tag{align-\TableNo}{\hrow:s}% \PopStack\Row:Stck\HRow % \PopStack\Table:Stck\TableNo \end:mathalign } {\HCode{
\add:description{begin-end}{\c:speak:align}% }} {\HCode{
}\ifst@rred\else \Tag{align-\TableNo-\HRow}{\theequation}% \fi \xdef\hrow:s{\HRow}} {\HCode{}% \ifnum \HCol>\maxfields@ \let\tagform@\:gobble \fi } {\HCode{}} } \: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} \Css{.begin-aligned, .end-aligned {color:red;}} \NewConfigure{speak:align}{3} \Configure{speak:align} {begin \ifTag{align-\TableNo}{\LikeRef{align-\TableNo}}{} aligned equations} {end aligned equations} {\ifst@rred \ord:pos{\HRow}% equation \else equation number \ifst@rred\else \ifTag{align-\TableNo-\HRow}{\LikeRef{align-\TableNo-\HRow}}{} \fi \fi } \def\:tempc{\HCode{}\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 \def\:tempc{\ifDisplayMath\mathop:prefix{big}\fi\o:n:iint::} \HLet\n:iint:\:tempc \def\:tempc{\ifDisplayMath\mathop:prefix{big}\fi\o:n:iiint::} \HLet\n:iiint:\:tempc \def\:tempc{\ifDisplayMath\mathop:prefix{big}\fi\o:n:idotsint::} \HLet\n:idotsint:\:tempc \Configure{tmspace} {\HCode{ % }} \Configure{above} {\Send{GROUP}{0}{\add:description{begin-end}{\a:speak:fraction}% % % }% \HCode{}% % \o:@@over:\:gobbleII} {\HCode{\add:description{begin-end}{\c:speak:fraction} }% % \Send{EndGROUP}{0}{\add:description{begin-end}{\b:speak:fraction}% % }} \Configure{tbinom} {\Send{GROUP}{0}{% \add:description{begin-stack}{\a:speak:choose}% }% \HCode{}\o:@@abovewithdelims: ..\z@{}% \HCode{\add:description{added-description}% {\c:speak:choose}}% \Send{EndGROUP}{0}% {\add:description{end-stack}{\b:speak:choose}}% } \Configure{dbinom} {\Send{GROUP}{0}{% \add:description{begin-stack}{\a:speak:choose}% }% \HCode{}\o:@@abovewithdelims: ..\z@{}% \HCode{\add:description{added-description}{\c:speak:choose}}% \Send{EndGROUP}{0}% {\add:description{end-stack}{\b:speak:choose}}% } \Configure{binom} {\Send{GROUP}{0}{% \add:description{begin-stack}{\a:speak:choose}% }% \HCode{}\o:@@abovewithdelims: ..\z@{}% \HCode{\add:description{added-description}{\c:speak:choose}}% \Send{EndGROUP}{0}% {\add:description{end-stack}{\b:speak:choose}}% } \def\abovewithdelims:III#1#2#3{% \def\:temp{#2#3}\def\:tempa{..}\ifx \:temp\:tempa \Send{GROUP}{0}{\add:description{begin-end}{\a:speak:fraction}% % % }% \HCode{}% % \o:@@over: \HCode{\add:description{begin-end}{\c:speak:fraction} }% % \Send{EndGROUP}{0}{\add:description{begin-end}{\b:speak:fraction}% % } \else \Send{GROUP}{0}% {\expandafter \ifx \csname \string#2:lr del\endcsname\relax #2\else \csname \string#2:lr del\endcsname\fi % \add:description{begin-end}{\a:speak:fraction}% % % }% \HCode{}% % \o:@@over: \HCode{\add:description{begin-end}{\c:speak:fraction} }% % \Send{EndGROUP}{0}{\add:description{begin-end}{\b:speak:fraction}% % % \expandafter \ifx \csname \string#3:lr del\endcsname\relax #3\else \csname \string#3:lr del\endcsname\fi } \fi \tmp:dim } \def\atopwithdelims:III#1#2#3{% \def\:temp{#2#3}\def\:tempa{..}\ifx \:temp\:tempa \Send{GROUP}{0}{% \add:description{begin-stack}{\a:speak:atop}% % }% \HCode{}% \o:@@atop: \HCode{\add:description{added-description}{\c:speak:atop}}% \Send{EndGROUP}{0}{\add:description{end-stack}{\b:speak:atop}% } \else \Send{GROUP}{0}% {\expandafter \ifx \csname \string#2:lr del\endcsname\relax #2\else \csname \string#2:lr del\endcsname\fi % % \add:description{begin-stack}{\a:speak:atop}% % }% \HCode{}% \o:@@atop: \HCode{\add:description{added-description}{\c:speak:atop}}% \Send{EndGROUP}{0}{\add:description{end-stack}{\b:speak:atop}% % \expandafter \ifx \csname \string#3:lr del\endcsname\relax #3\else \csname \string#3:lr del\endcsname\fi } \fi } \def\overwithdelims:III#1#2#3{% \def\:temp{#2#3}\def\:tempa{..}\ifx \:temp\:tempa \Send{GROUP}{0}{\add:description{begin-end}{\a:speak:fraction}% % }% \HCode{}% \o:over: \HCode{\add:description{begin-end}{\c:speak:fraction} }% \Send{EndGROUP}{0}{\add:description{begin-end}{\b:speak:fraction}% } \else \Send{GROUP}{0}% {\expandafter \ifx \csname \string#2:lr del\endcsname\relax #2\else \csname \string#2:lr del\endcsname\fi % \add:description{begin-end}{\a:speak:fraction}% % }% \HCode{}% \o:@@over: \HCode{\add:description{begin-end}{\c:speak:fraction} }% \Send{EndGROUP}{0}{\add:description{begin-end}{\b:speak:fraction}% % \expandafter \ifx \csname \string#3:lr del\endcsname\relax #3\else \csname \string#3:lr del\endcsname\fi } \fi } \Configure{boxed} {\HCode{% \add:description{begin-end}{\a:speak:boxed}}} {\HCode{\add:description{begin-end}{\b:speak:boxed}}} \NewConfigure{speak:boxed}{2} \Configure{speak:boxed} {begin boxed} {end boxed} \renewcommand{\xrightarrow}[2][]{% \if :#1: \HCode{% }% \rightarrow \HCode{\add:description{begin-limits-script}{\b:speak:underover}}\trap:base #2% \HCode{\add:description{end-limits-script}{\c:speak:underover}}% % \else \HCode{% }% \leftarrow \HCode{\add:description{begin-limits-script}{\a:speak:underover}}\trap:base #1% \HCode{\add:description{mid-limits-script}{\b:speak:underover}}\trap:base #2% \HCode{\add:description{end-limits-script}{\c:speak:underover}}% % \fi } \renewcommand{\xleftarrow}[2][]{% \if :#1: \HCode{% }% \leftarrow \HCode{\add:description{begin-limits-script}{\b:speak:underover}}\trap:base #2% \HCode{\add:description{end-limits-script}{\c:speak:underover}}% % \else \HCode{% }% \leftarrow \HCode{\add:description{begin-limits-script}{\a:speak:underover}}\trap:base #1% \HCode{\add:description{mid-limits-script}{\b:speak:underover}}\trap:base #2% \HCode{\add:description{end-limits-script}{\c:speak:underover}}% % \fi } \def\overset#1#2{{% \HCode{% }% #2% \HCode{\add:description{begin-limits-script}{\b:speak:underover}}\trap:base #1% \HCode{\add:description{end-limits-script}{\c:speak:underover}}% % }} \def\underset#1#2{{% \HCode{% }% #2% \HCode{\add:description{begin-limits-script}{\a:speak:underover}}\trap:base #1% \HCode{\add:description{end-limits-script}{\c:speak:underover}}% % }} \def\sideset#1#2#3{{\Tg{\HCode{}}#1{\HCode{}#3}#2\Tg}} \Configure{underrightarrow} {\HCode{% \add:description{begin-end}{\a:speak:modified}% }\:gobble} {\HCode{% \add:description{begin-end}{\a:speak:modified:rightarrow}}} \Configure{underleftarrow} {\HCode{% \add:description{begin-end}{\a:speak:modified}% }\:gobble} {\HCode{% \add:description{begin-end}{speak:modified:leftarrow}}} \Configure{overleftrightarrow} {\HCode{% \add:description{begin-end}{\b:speak:modified}% }\:gobble} {\HCode{% \add:description{begin-end}{\a:speak:modified:leftrightarrow}}} \Configure{underleftrightarrow} {\HCode{% \add:description{begin-end}{\a:speak:modified}% }\:gobble} {\HCode{% \add:description{begin-end}{\a:speak:modified:leftrightarrow}}} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \endinput\empty\empty\empty\empty\empty\empty %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{plain} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \Configure{eqalignno} {\HCode{}} {\HCode{}} {\HCode{}} {\HCode{}} {\HCode{}} {\HCode{}} \def\:eqalignno:{\Configure{noalign} {\HCode{}}% {\HCode{}}} \Configure{leqalignno} {\HCode{}} {\HCode{}} {\HCode{}} {\HCode{}} {\HCode{}} {\HCode{}} \def\:leqalignno:{\Configure{noalign} {\HCode{}}% {\HCode{}}} \Configure{big} {}{} {} {} \Configure{Big} {}{} {} {} \Configure{bigg} {}{} {} {} \Configure{Bigg} {}{} {} {} \Configure{Biggm} {\bgroup \Configure{Bigg}{}{}{}{}% \Configure{mathrel}{*} {} {} {\Configure{mathrel}{}{}{}{}}% } {\egroup} \Configure{Bigm} {\bgroup \Configure{Big}{}{}{}{}% \Configure{mathrel}{*} {} {} {\Configure{mathrel}{}{}{}{}}% } {\egroup} \Configure{biggm} {\bgroup \Configure{bigg}{}{}{}{}% \Configure{mathrel}{*} {} {} {\Configure{mathrel}{}{}{}{}}% } {\egroup} \Configure{bigm} {\bgroup \Configure{big}{}{}{}{}% \Configure{mathrel}{*} {} {} {\Configure{mathrel}{}{}{}{}}% } {\egroup} \:CheckOption{mathml-} \if:Option \Configure{Biggl} {\bgroup \Configure{Bigg}{}{}{}{}% \Configure{mathopen}{*} {} {} {\Configure{mathopen}{}{}{}{}}% } {\egroup} \Configure{Biggr} {\bgroup \Configure{Bigg}{}{}{}{}% \Configure{mathclose}{*} {} {} {\Configure{mathclose}{}{}{}{}}% } {\egroup} \Configure{Bigl} {\bgroup \Configure{Big}{}{}{}{}% \Configure{mathopen}{*} {} {} {\Configure{mathopen}{}{}{}{}}% } {\egroup} \Configure{Bigr} {\bgroup \Configure{Big}{}{}{}{}% \Configure{mathclose}{*} {} {} {\Configure{mathclose}{}{}{}{}}% } {\egroup} \Configure{biggl} {\bgroup \Configure{bigg}{}{}{}{}% \Configure{mathopen}{*} {} {} {\Configure{mathopen}{}{}{}{}}% } {\egroup} \Configure{biggr} {\bgroup \Configure{bigg}{}{}{}{}% \Configure{mathclose}{*} {} {} {\Configure{mathclose}{}{}{}{}}% } {\egroup} \Configure{bigl} {\bgroup \Configure{big}{}{}{}{}% \Configure{mathopen}{*} {} {} {\Configure{mathopen}{}{}{}{}}% } {\egroup} \Configure{bigr} {\bgroup \Configure{big}{}{}{}{}% \Configure{mathclose}{*} {} {} {\Configure{mathclose}{}{}{}{}}% } {\egroup} \else \Configure{Biggl} {\bgroup \Configure{Bigg}{}{}{}{}% \Configure{mathopen}{*} {} {} {\Configure{mathopen}{}{}{}{}}% } {\egroup} \Configure{Biggr} {\bgroup \Configure{Bigg}{}{}{}{}% \Configure{mathclose}{*} {} {} {\Configure{mathclose}{}{}{}{}}% } {\egroup} \Configure{Bigl} {\bgroup \Configure{Big}{}{}{}{}% \Configure{mathopen}{*} {} {} {\Configure{mathopen}{}{}{}{}}% } {\egroup} \Configure{Bigr} {\bgroup \Configure{Big}{}{}{}{}% \Configure{mathclose}{*} {} {} {\Configure{mathclose}{}{}{}{}}% } {\egroup} \Configure{biggl} {\bgroup \Configure{bigg}{}{}{}{}% \Configure{mathopen}{*} {} {} {\Configure{mathopen}{}{}{}{}}% } {\egroup} \Configure{biggr} {\bgroup \Configure{bigg}{}{}{}{}% \Configure{mathclose}{*} {} {} {\Configure{mathclose}{}{}{}{}}% } {\egroup} \Configure{bigl} {\bgroup \Configure{big}{}{}{}{}% \Configure{mathopen}{*} {} {} {\Configure{mathopen}{}{}{}{}}% } {\egroup} \Configure{bigr} {\bgroup \Configure{big}{}{}{}{}% \Configure{mathclose}{*} {} {} {\Configure{mathclose}{}{}{}{}}% } {\egroup} \fi \Configure{MathClass}{0}{*}{}% {}{} \Configure{MathClass}{1}{*}{ }{ }{} \Configure{MathClass}{2}{*}{}{}{} \Configure{MathClass}{3}{*}{}{}{} \:CheckOption{mathml-} \if:Option \Configure{MathClass}{4}{*}{} {}{} \Configure{MathClass}{5}{*}{} {}{} \else \Log:Note{for sources failing to produce clean mathml code, try the command line option `mathml-'}% \Configure{MathClass}{4}{*}{} {}{} \Configure{MathClass}{5}{*}{} {}{} \fi \Configure{MathClass}{6}{*}{}{}{} \Configure{MathClass}{7}{*}{}{} {0123456789} \Configure{FormulaClass}{0}{}{}{} \Configure{FormulaClass}{1}{}{}{} \Configure{FormulaClass}{2}{}{}{} \Configure{FormulaClass}{3}{}{}{} \Configure{FormulaClass}{4}{}{}{} \Configure{FormulaClass}{5}{}{}{} \Configure{FormulaClass}{6}{}{}{} \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{overbrace} {\Configure{mathop*}{*} {% \add:description{begin-end}{\b:speak:modified}% } {\add:description{begin-end}{\a:speak:modified:brace}} {\Configure{mathop}{}{}{}{}}% } {\let\o:overbrace:=\displaystyle} {} \Configure{underbrace} {\Configure{mathop*}{*} {% \add:description{begin-end}{\a:speak:modified}% } {\add:description{begin-end}{\a:speak:modified:brace}} {\Configure{mathop}{}{}{}{}}% } {\let\o:underbrace:=\displaystyle} {} \Configure{overrightarrow} {\HCode{% \add:description{begin-end}{\b:speak:modified}% }\:gobble} {\HCode{% \add:description{begin-end}{\a:speak:modified:rightarrow}}} \Configure{overleftarrow} {\HCode{% \add:description{begin-end}{\b:speak:modified}% }\:gobble} {\HCode{% \add:description{begin-end}{\a:speak:modified:leftarrow}}} \NewConfigure{speak:modified:rightarrow}{1} \Configure{speak:modified:rightarrow}{with right arrow} \NewConfigure{speak:modified:leftarrow}{1} \Configure{speak:modified:leftarrow}{with left right arrow} \NewConfigure{speak:modified:leftrightarrow}{1} \Configure{speak:modified:leftrightarrow}{with left right arrow} \Configure{cases} {}{} {\Tg}{\Tg} {\Tg}{\Tg} {\Tg}{\Tg} \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{
}% \HCode{\add:vdescription{begin-array}{\a:speak:array}}} {\Tag{array-\TableNo}{\hrow:s}% \HCode{% % \add:vdescription{end-array}{\b:speak:array}}% \ifvmode \IgnorePar\fi \Tg
% \PopStack\Row:Stck\HRow % \PopStack\Table:Stck\TableNo } {\HCode{
}\c:speak:array}% {\xdef\hrow:s{\HRow}\HCode{
}}% {\HCode{
}% \e:speak:array\HCode{
}} {\HCode{
}\f:speak:array \HCode{
\Hnewline}} \Configure{pmatrix} {\bgroup\Tg
} {\Tg
\egroup} \NewConfigure{speak:array}{6} \Configure{speak:array} {begin array with \ifTag{array-\TableNo}{\LikeRef{array-\TableNo}}{} rows} {end array} {\HCode{\add:vdescription{begin-end}{\ord:pos{\HRow}% row}}% } {} {\HCode{% \add:vdescription{added-description}{% \ifnum \HMultispan>1 \ord:pos{\HCol}% cell, spans \HMultispan \space columns \else \ifnum \HCol>1 \ord:pos{\HCol}% cell \fi \fi }}% } {} \NewConfigure{speak:smallmatrix}{6} \Configure{speak:smallmatrix} {begin matrix with \ifTag{smallmatrix-\TableNo}{\LikeRef{smallmatrix-\TableNo}}{} rows} {end matrix} {\HCode{\add:vdescription{begin-end}{\ord:pos{\HRow}% row}}% } {} {\HCode{% \add:vdescription{added-description}{% \ifnum \HMultispan>1 \ord:pos{\HCol}% cell, spans \HMultispan \space columns \else \ifnum \HCol>1 \ord:pos{\HCol}% cell \fi \fi }}% } {} \Configure{left} {} {\HCode{% \expandafter \ifx \csname \string#1:lr del\endcsname\relax #1\else \csname \string#1:lr del\endcsname\fi }\bgroup} \Configure{right} {\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#1\Tg} \def\mathop:prefix#1{% \Configure{mathop}{*}{}{}% {\Configure{mathop}{*}{}{}{}}} \Configure{quad}{\HCode{ % }} \Configure{qquad}{\HCode{ % }} \Configure{,}{\HCode{ % }} \Configure{ }{\:nbsp} \def\:nbsp{\leavevmode\special{t4ht@+\string&{35}x00A0{59}}x} \Configure{choose} {\Send{GROUP}{0}{% \add:description{begin-stack}{\a:speak:choose}% }% \HCode{}\o:atop: \HCode{\add:description{added-description}% {\c:speak:choose}}% \Send{EndGROUP}{0}% {\add:description{end-stack}{\b:speak:choose}}% } \NewConfigure{speak:choose}{3} \Configure{speak:choose} {begin binomial coefficient} {end binomial coefficient} {choose} \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;} \Configure{root} {\HCode{% \add:description{begin-root}{\a:speak:root}}} {\HCode{\add:description{mid-root}{\b:speak:root}% }} {\HCode{\add:description{end-root}{\c:speak:root}}} \NewConfigure{speak:root}{3} \Configure{speak:root} {root index} {begin root} {end root} \:CheckOption{new-accents} \if:Option \else \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{}#3\HCode{}% \csname :#1:under\endcsname \HCode{}% % \else \expandafter\ifx \csname :#1:under\endcsname\relax \HCode{}#3\HCode{}% \csname prefix:#1:over\endcsname \csname :#1:over\endcsname \HCode{}% % \else \HCode{}#3\HCode{}% \csname :#1:under\endcsname \csname :#1:over\endcsname \HCode{}% % \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{}#3\HCode{}% \csname :#1:under\endcsname \HCode{}% % \else \expandafter\ifx \csname :#1:under\endcsname\relax \HCode{}#3\HCode{}% \csname prefix:#1:over\endcsname \csname :#1:over\endcsname \HCode{}% % \else \HCode{}#3\HCode{}% \csname :#1:under\endcsname \csname :#1:over\endcsname \HCode{}% % \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{}#3\HCode{}% \csname :#1:under\endcsname \HCode{}% % \else \expandafter\ifx \csname :#1:under\endcsname\relax \HCode{}#3\HCode{}% \csname prefix:#1:over\endcsname \csname :#1:over\endcsname \HCode{}% % \else \HCode{}#3\HCode{}% \csname :#1:under\endcsname \csname :#1:over\endcsname \HCode{}% % \fi \fi }% \else #3\csname :#1:under\endcsname \fi \else #3\csname :#1:over\endcsname \fi \fi } \Configure{accent}\widetilde\widetilde{{}{}} {} {\HCode{% \add:description{begin-end}{\b:speak:modified}% }% #2% \HCode{\add:description{begin-end}{\a:speak:modified:tilde}}} \Configure{accent}\widehat\widehat{{}{}} {} {\HCode{% \add:description{begin-end}{\a:speak:modified}% }% #2% \HCode{\add:description{begin-end}{ \a:speak:modified:hat}}} \fi %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \endinput\empty\empty\empty\empty\empty\empty %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{amsopn} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \Configure{qopname} {\Configure{mathop}{*} { } { } {}} \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{
}% \HCode{\add:vdescription{begin-array}{\a:speak:array}}} {\Tag{array-\TableNo}{\hrow:s}% \HCode{% % \add:vdescription{end-array}{\b:speak:array}}% \ifvmode \IgnorePar\fi \expandafter\tmp:toks\expandafter{\Clr}% \HCode{}% \Tg
% \PopStack\Row:Stck\HRow % \PopStack\Table:Stck\TableNo } {\HCode{
}\c:speak:array}% {\xdef\hrow:s{\HRow}\HCode{
}}% {\HCode{
}% \e:speak:array\HCode{
}} {\HCode{
}\f:speak:array \HCode{
\Hnewline}} \ConfigureEnv{array} {\bgroup\Configure{$}{}{}{}} {\egroup} {}{} \Configure{multicolumn} {\let\sv:VBorder\VBorder \let\VBorder\empty \Configure{VBorder}{}{}{}{}% } {\let\VBorder\sv:VBorder} {\ifmmode \else \ifvmode\IgnorePar\fi \fi \HCode{
}} {\ifmmode \else \ifvmode\IgnorePar\fi \EndP\fi \HCode{
} } \def\gob:sp#1{#1} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \endinput\empty\empty\empty\empty\empty\empty %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \endinput