% MTP2.TEX VERSION 1.12 (April 24, 2009) % COPYRIGHT (C) 1992, 1993, 2000, 2002, 2004-2006, 2008, 2009 BY PUBLISH OR PERISH, INC. % We save the initial category codes of " and @. \expandafter\edef\csname qqcode\string @\endcsname{\the\catcode`\"} \expandafter\edef\csname atcode\string @\endcsname{\the\catcode`\@} % We used \csname...\endcsname and \string @, because we can't make @ a letter % until we've stored its old category code. % Prevent file from being read twice, by testing if \s@b@ hasn't yet been defined % (and subsequently let \s@b@ be type 8 _ ). \expandafter\ifx\csname s\string @b\string @\endcsname\relax\else\endinput\fi \catcode`\@=11 \catcode`\"=12 \catcode`\_=8 \let\s@b@=_ % We need _ active in math, so it can insert corrections in some subscripts. % \space@ is a token that has been let equal to a space. \def\space@.{\futurelet\space@\relax} \space@. % % We must have the space after the period, not a new line. \catcode`\_=12 \mathcode`\_="8000 \begingroup \catcode`\_=\active \gdef_{\futurelet\next\s@@b} \endgroup \def\s@@b{\ifcat\relax\noexpand\next\expandafter\s@b@\else \expandafter\s@@b@\fi} \def\s@@b@#1{\s@b@{\futurelet\next\s@b@@#1}} \def\s@b@@{% \ifx\next\space@\def\next@. {\futurelet\next\s@b@@}\else \def\next@.{% \ifx\next f\mkern-\thr@@ mu\else \ifx\next j\mkern-\tw@ mu\else \ifx\next p\mkern-\tw@ mu\else \ifx\next t\mkern\@ne mu\else \ifx\next y\mkern-\@ne mu\else \ifx\next A\mkern-\tw@ mu\else \ifx\next B\mkern-\@ne mu\else \ifx\next D\mkern-\@ne mu\else \ifx\next H\mkern-\@ne mu\else \ifx\next I\mkern-\@ne mu\else \ifx\next K\mkern-\@ne mu\else \ifx\next L\mkern-\@ne mu\else \ifx\next M\mkern-\@ne mu\else \ifx\next P\mkern-\@ne mu\else \ifx\next X\mkern-\tw@ mu\else \fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi}% \fi \next@.} % Definitions for characters on MT2MI... fonts \mathchardef\Gamma="0180 \mathchardef\Delta="0181 \mathchardef\Theta="0182 \mathchardef\Lambda="0183 \mathchardef\Xi="0184 \mathchardef\Pi="0185 \mathchardef\Sigma="0186 \mathchardef\Upsilon="0187 \mathchardef\Phi="0188 \mathchardef\Psi="0189 \mathchardef\Omega="017F \mathchardef\varGamma="0100 \mathchardef\varDelta="0101 \mathchardef\varTheta="0102 \mathchardef\varLambda="0103 \mathchardef\varXi="0104 \mathchardef\varPi="0105 \mathchardef\varSigma="0106 \mathchardef\varUpsilon="0107 \mathchardef\varPhi="0108 \mathchardef\varPsi="0109 \mathchardef\varOmega="010A \mathchardef\varkappa="017E \mathchardef\upalpha="0192 \mathchardef\upbeta="0193 \mathchardef\upgamma="0194 \mathchardef\updelta="0195 \mathchardef\upepsilon="0196 \mathchardef\upzeta="0197 \mathchardef\upeta="0198 \mathchardef\uptheta="0199 \mathchardef\upiota="019A \mathchardef\upkappa="019B \mathchardef\uplambda="019C \mathchardef\upmu="019D \mathchardef\upnu="019E \mathchardef\upxi="019F \mathchardef\uppi="01A0 \mathchardef\uprho="01A1 \mathchardef\upsigma="01A2 \mathchardef\uptau="01A3 \mathchardef\upupsilon="01A4 \mathchardef\upphi="01A5 \mathchardef\upchi="01A6 \mathchardef\uppsi="01A7 \mathchardef\upomega="01A8 \mathchardef\upvarepsilon="01A9 \mathchardef\upvartheta="01AA \mathchardef\upvarpi="01AB \mathchardef\upvarrho="01AC \mathchardef\upvarsigma="01AD \mathchardef\upvarphi="01AE \mathchardef\upvarkappa="01AF \mathchardef\varbeta="01B0 \mathchardef\upvarbeta="01B1 \mathchardef\vardelta="01B2 \mathchardef\upvardelta="01B3 \mathchardef\dagger="218E \mathchardef\ddagger="218F \mathchardef\dbar="01B5 \mathchardef\updbar="01B6 \def\dag{\mathhexbox18E} \def\ddag{\mathhexbox18F} \def\S{\mathhexbox190} \def\P{\mathhexbox191} \def\zstraight{\mathcode`\z="717A } % default, by INITEX \def\zswash{\mathcode`\z="71B4 } \mathcode`\(="412E \mathcode`\)="512F \delcode`\(="12E300 \delcode`\)="12F301 \mathcode`\[="418C \mathcode`\]="518D \delcode`\[="18C302 \delcode`\]="18D303 \mathcode`\!="518A \mathcode`\?="518B \mathcode`\0="7130 \mathcode`\1="7131 \mathcode`\2="7132 \mathcode`\3="7133 \mathcode`\4="7134 \mathcode`\5="7135 \mathcode`\6="7136 \mathcode`\7="7137 \mathcode`\8="7138 \mathcode`\9="7139 \def\curlybraces{\def\lbrace{\delimiter"4266308 }\let\{=\lbrace \def\rbrace{\delimiter"5267309 }\let\}=\rbrace} \curlybraces \def\straightbraces{\def\lbrace{\delimiter"42B93AE }\let\{=\lbrace\let\lcbrace=\lbrace \def\rbrace{\delimiter"52BA3AF }\let\}=\rbrace\let\rcbrace=\rbrace} \def\morphedbraces{\def\lbrace{\delimiter"42663B6 }\let\{=\lbrace\let\lcbrace=\lbrace \def\rbrace{\delimiter"52673B7 }\let\}=\rbrace\let\rcbrace=\rbrace} % Old style numbers are no longer on the math italic font, calligraphic letters % not on the symbol font. % We let \undefined@ be always undefined, just in case some one defines \undefined. \let\cal=\undefined@ \let\mit=\undefined@ \let\oldstyle=\undefined@ \ifx\amstexloaded@\relax \let\oldnos=\undefined@ \let\Cal=\undefined@ \fi % Definitions for characters on MT2SY... fonts \mathchardef\triangleleft="2247 \mathchardef\triangleright="2246 \mathchardef\comp="2242 \mathchardef\setdif="2258 \mathchardef\cupprod="2259 \mathchardef\capprod="225A \mathchardef\Relbar="3248 \mathchardef\colon="6257 \mathchardef\simarrow="32B0 \mathchardef\varland="22B2 \mathchardef\contraction="22B3 \mathchardef\coloneq="32B4 \mathchardef\eqcolon="32B5 \mathchardef\hateq="32B6 \mathchardef\hbar="0284 \mathchardef\notin="3285 \mathchardef\angle="0286 \mathchardef\doteq="3287 \mathchardef\models="3288 \mathchardef\bowtie="3289 \mathchardef\cong="328A \mathchardef\hookleftarrow="328B \mathchardef\hookrightarrow="328C \mathchardef\longleftarrow="328D \mathchardef\longrightarrow="328E \mathchardef\Longleftarrow="328F \mathchardef\Longrightarrow="3290 \mathchardef\mapsto="3291 \mathchardef\longmapsto="3292 \mathchardef\longleftrightarrow="3293 \mathchardef\Longleftrightarrow="3294 \mathchardef\rightleftharpoons="3295 \mathchardef\notless="3296 \let\nless=\notless \mathchardef\notleq="3297 \let\nleq=\notleq \mathchardef\notprec="3298 \let\nprec=\notprec \mathchardef\notpreceq="3299 \let\npreceq=\notpreceq \mathchardef\notsubset="329A \let\nsubset=\notsubset \mathchardef\notsubseteq="329B \let\nsubseteq=\notsubseteq \mathchardef\notsqsubseteq="329C \let\nsqsubseteq=\notsqsubseteq \mathchardef\notgr="329D \let\ngtr=\notgr \mathchardef\notgeq="329E \let\ngeq=\notgeq \mathchardef\notsucc="329F \let\nsucc=\notsucc \mathchardef\notsucceq="32A0 \let\nsucceq=\notsucceq \mathchardef\notsupset="32A1 \let\nsupset=\notsupset \mathchardef\notsupseteq="32A2 \let\nsupseteq=\notsupseteq \mathchardef\notsqsupseteq="32A3 \let\nsqsupseteq=\notsqsupseteq \mathchardef\neq="32A4 \let\ne=\neq \mathchardef\notequiv="32A5 \mathchardef\notsim="32A6 \mathchardef\notsimeq="32A7 \mathchardef\notapprox="32A8 \mathchardef\notcong="32A9 \mathchardef\notasymp="32AA \mathchardef\digamma="02B1 \mathchardef\hslash="02AF \mathchardef\openclubsuit="0280 \mathchardef\shadedclubsuit="0281 \mathchardef\openspadesuit="0282 \mathchardef\shadedspadesuit="0283 \mathchardef\circdashbullet="32B7 \mathchardef\bulletdashcirc="32B8 \mathcode`\+="2243 \mathcode`\=="3244 \mathcode`\;="6249 \mathcode`\:="3257 \def\dotup{\mathaccent"0254 } \def\ddotup{\mathaccent"0255 } \def\oacc{\mathaccent"0256 } \let\mathring=\oacc \def\wbar{\mathaccent"0278 } \def\wwbar{\mathaccent"0253 } \def\what{\mathaccent"0279 } \def\wtilde{\mathaccent"027A } \def\wcheck{\mathaccent"027B } \def\vec{\mathaccent"0245 } \def\t#1#2{{\edef\next@{\the\font}\the\textfont\tw@\accent"41 \next@#1#2}} % The accents on MT2SY... fonts are not in same position as on the text fonts. % We store old values, in case they come from amstex, so aren't simply \mathaccent... \let\@grave@\grave \let\@acute@\acute \let\@check@\check \let\@breve@\breve \let\@bar@\bar \let\@hat@\hat \let\@dot@\dot \let\@tilde@\tilde \let\@ddot@\ddot \def\grave{\ifnum\fam=\m@ne\mathaccent"024A \else\@grave@\fi} \def\acute{\ifnum\fam=\m@ne\mathaccent"024B \else\@acute@\fi} \def\check{\ifnum\fam=\m@ne\mathaccent"024C \else\@check@\fi} \def\breve{\ifnum\fam=\m@ne\mathaccent"024D \else\@breve@\fi} \def\bar{\ifnum\fam=\m@ne\mathaccent"024E \else\@bar@\fi} \def\hat{\ifnum\fam=\m@ne\mathaccent"024F \else\@hat@\fi} \def\dot{\ifnum\fam=\m@ne\mathaccent"0250 \else\@dot@\fi} \def\tilde{\ifnum\fam=\m@ne\mathaccent"0251 \else\@tilde@\fi} \def\ddot{\ifnum\fam=\m@ne\mathaccent"0252 \else\@ddot@\fi} \def\dddot{\mathaccent"02AB } \def\ddddot{\mathaccent"02AC } \def\dddotup{\mathaccent"02AD} \def\ddddotup{\mathaccent"02AE } % We redefine how ' and '' and ''', etc., work, so that there will be % extra space before the first ' mark. Also, for constructions like % f''^3, we want extra space after the last prime. Spacing is determined % by counters \firstprimesep and \nonprimesep, with default % values 2 and 7. \MTP resets \tenthpt@. \newif\iffirstprime@ \newdimen\tenthpt@ \tenthpt@=.1\p@ \newcount\firstprimesep \firstprimesep=2 {\catcode`\'=\active \gdef'{^\bgroup\firstprime@true\prim@s}} \def\prim@s{\iffirstprime@\kern\firstprimesep\tenthpt@\fi \prime\firstprime@false\futurelet\next\pr@m@s} \newcount\nonprimesep \nonprimesep=7 \def\pr@m@s{\ifx'\next\def\next@##1{\prim@s}\else \ifx^\next\def\next@##1##2{\kern\nonprimesep\tenthpt@##2\egroup}\else \let\next@\egroup\fi\fi\next@} % New definitions for the Ams-TeX constructions \Hat, ... (the command % \MTP resets \newmu@). % \getpoints@ from amstex.tex will be needed later anyway, so we (re)define it here. \ifx\amstexloaded@\relax\else \alloc@0\count\countdef\insc@unt\pointcount@ % can't say \newcount, since that's outer \fi \def\getpoints@#1.#2\getpoints@{\pointcount@#1\relax} \ifx\amstexloaded@\relax \alloc@1\dimen\dimendef\insc@unt\newmu@ % can't say \newdimen, since that's \outer \newmu@5555\p@ \def\dimentomu@{% \multiply\accentdimen@100 \expandafter\getpoints@\the\accentdimen@\getpoints@ \multiply\pointcount@18 \divide\pointcount@\@m \dimen@\newmu@ \dimen@ii5555\p@ \divide\dimen@\dimen@ii \divide\pointcount@\dimen@ \global\accentmu@\pointcount@ }% \Makeacc@\Hat{24F}% \Makeacc@\Check{24C}% \Makeacc@\Tilde{251}% \Makeacc@\Acute{24B}% \Makeacc@\Grave{24A}% \Makeacc@\Dot{250}% \Makeacc@\Ddot{252}% \Makeacc@\Dotup{254}% \Makeacc@\Ddotup{255}% \Makeacc@\Breve{24D}% \Makeacc@\Bar{24E}% \Makeacc@\Wbar{278 }% \Makeacc@\Wwbar{253 }% \Makeacc@\What{279 }% \Makeacc@\Wtilde{27A }% \Makeacc@\Wcheck{27B }% \Makeacc@\Wwhat{380 }% \Makeacc@\Wwtilde{381 }% \Makeacc@\Wwcheck{37D }% \Makeacc@\Oacc{256}% \Makeacc@\Dddot{2AB } \Makeacc@\Ddddot{2AC } \Makeacc@\Dddotup{2AD} \Makeacc@\Ddddotup{2AE } \def\Vec{\relax\ifmmode\DN@{\mathaccent@{"0245 }}\else %%% Can't use \RIfM@ here!!! \DN@{\nonmatherr@\Vec}\fi\next@}% \fi % We use \alloc@@ instead of \alloc@ for loading fonts, to disable writing to log file. \def\alloc@@#1#2#3#4#5{\global\advance\count1#1by\@ne \ch@ck#1#4#2\allocationnumber=\count1#1 \global#3#5=\allocationnumber} \newfam\mbffam % Make sure that periods in math constructions come from the new math fonts, % not the text fonts. \def\vdots{\vbox{\baselineskip4\p@\lineskiplimit\z@ \kern6\p@\hbox{$\m@th.$}\hbox{$\m@th.$}\hbox{$\m@th.$}}} \def\ddots{\mathinner{\mkern1mu\raise7\p@\vbox{\kern7\p@ \hbox{$\m@th.$}}\mkern2mu \raise4\p@\hbox{$\m@th.$}\mkern2mu\raise\p@\hbox{$\m@th.$}\mkern1mu}} % Similarly for AmS-TeX, making sure letters come from \textfont0. \ifx\amstexloaded@\relax \def\varinjlim{\mathop{\vtop{\ialign{##\crcr \hfil\the\textfont\z@ lim\hfil\crcr \noalign{\nointerlineskip}\rightarrowfill\crcr \noalign{\nointerlineskip\kern-\ex@}\crcr}}}} \def\varprojlim{\mathop{\vtop{\ialign{##$$\crcr \hfil\the\textfont\z@ lim\hfil\crcr \noalign{\nointerlineskip}\leftarrowfill\crcr \noalign{\nointerlineskip\kern-\ex@}\crcr}}}} \def\varliminf{\mathop{\underline{\vrule height\z@ depth.2ex width\z@ \hbox{\the\textfont\z@ lim}}}} \def\varlimsup{\mathop{\overline{\hbox{\the\textfont\z@ lim}}}} \def\spdot{^{\hbox{\raise\ex@\hbox{$\m@th.$}}}} \def\spddot{^{\hbox{\raise\ex@\hbox{$\m@th..$}}}} \def\spdddot{^{\hbox{\raise\ex@\hbox{$\m@th...$}}}} \def\spddddot{^{\hbox{\raise\ex@\hbox{$\m@th....$}}}} \fi % Allow \uproot and \leftroot with \sqrt and \root. The position % of the root is more complicated than in plain TeX, mainly % because there are several different fonts contributing radicals. \newcount\uproot@ \newcount\leftroot@ \ifx\amstexloaded@\relax\else \def\nonmatherr@#1{\errmessage{\noexpand#1allowed only in math mode}} \fi \def\uproot#1{\relax\ifmmode\uproot@#1\relax\else\nonmatherr@\uproot\fi} \def\leftroot#1{\relax\ifmmode\leftroot@#1\relax\else\nonmatherr@\leftroot\fi} \def\UPROOT#1{\relax\ifmmode\uproot@#1\relax\else\nonmatherr@\UPROOT\fi} \def\LEFTROOT#1{\relax\ifmmode\leftroot@#1\relax\else\nonmatherr@\LEFTROOT\fi} \def\root#1\of#2{\setbox\rootbox\hbox{$\m@th\scriptscriptstyle{#1}$}% \mathpalette\r@@t{#2}} \def\r@@t#1#2{\setbox\z@\hbox{$\uproot@\z@\leftroot\z@\m@th#1\sqrt{#2}$}% \dimen@\ht\z@\advance\dimen@-\dp\z@ \dimen@ii\dimen@ \ifdim\dimen@>30\p@\advance\dimen@ii-\sixt@@n\p@\else \ifdim\dimen@>24\p@\advance\dimen@ii-8\p@\else \ifdim\dimen@>18\p@\advance\dimen@ii-6\p@\else \ifdim\dimen@>12\p@\advance\dimen@ii-4\p@\else \ifdim\dimen@>10\p@\advance\dimen@ii-\tw@\p@\fi\fi\fi\fi\fi \setbox\tw@\hbox{$\m@th#1\mskip\uproot@ mu$}\advance\dimen@ii by1.667\wd\tw@ \mkern-\leftroot@ mu\mkern5mu\raise.6\dimen@ii\copy\rootbox \mkern-8mu\mkern\leftroot@ mu\box\z@\leftroot\z@\uproot\z@} % Definitions for characters on the extension fonts \def\wwhat{\mathaccent"0380 } \def\wwtilde{\mathaccent"0381 } \def\wwcheck{\mathaccent"037D } \mathchardef\bigcupprod="138E \mathchardef\bigcapprod="1390 \mathchardef\iintop="1392 \def\iint{\iintop\nolimits} \mathchardef\iiintop="1394 \def\iiint{\iiintop\nolimits} \mathchardef\oiintop="1396 \def\oiint{\oiintop\nolimits} \mathchardef\oiiintop="1398 \def\oiiint{\oiiintop\nolimits} \mathchardef\cwointop="139A \def\cwoint{\cwointop\nolimits} \mathchardef\awointop="139C \def\awoint{\awointop\nolimits} \mathchardef\cwintop="139E \def\cwint{\cwintop\nolimits} \mathchardef\barintop="13AA \def\barint{\barintop\nolimits} \mathchardef\slashintop="13AC \def\slashint{\slashintop\nolimits} \mathchardef\bigvarland="13A6 \mathchardef\bigast="13A8 % Parts for braces are in different places on the first extension font % and we use specifically designed middles, instead of trying to construct % them out of end pieces. \mathchardef\mbraceu="386 \mathchardef\mbraced="387 \mathchardef\braceld="382 \mathchardef\bracerd="383 \mathchardef\bracelu="384 \mathchardef\braceru="385 \def\downbracefill{$\m@th\braceld\leaders\vrule\hfill\mbraced \leaders\vrule\hfill\bracerd$}% \def\upbracefill{$\m@th\bracelu\leaders\vrule\hfill\mbraceu \leaders\vrule\hfill\braceru$}% % Tops and bottoms for extensible braces not the same for left and right % in mt2exa, so need new definitions for the following. \def\lmoustache{\delimiter"4382389 } \def\rmoustache{\delimiter"538338A } \def\lgroup{\delimiter"412E33A } \def\rgroup{\delimiter"512F33B } \def\bracevert{\delimiter"38D38D } \mathchardef\upsum="1350 \mathchardef\upprod="1351 \mathchardef\upcoprod="1360 \mathchardef\slsum="13A0 \mathchardef\slprod="13A2 \mathchardef\slcoprod="13A4 \def\sloperators{\let\sum\slsum\let\prod\slprod\let\coprod\slcoprod} \def\upoperators{\let\sum\upsum\let\prod\upprod\let\coprod\upcoprod} \upoperators % Now come the macros for dealing with the multiple extension fonts. % They assume that \MTEXA@, \MTEXE@, \MTEXF@, and \MTEXG@ can % be used to refer to the four extension fonts that have been loaded. \newbox\prePbox@ \newbox\Pbox@ \newif\ifPEX@ \def\PEX@#1{\setbox\Pbox@\vbox{$$\left.\vcenter{\copy\prePbox@}\right)$$}% \setbox\Pbox@\vbox{\unvbox\Pbox@\unskip\unpenalty \setbox\Pbox@\lastbox \setbox\Pbox@\hbox{\unhbox\Pbox@\setbox\Pbox@\lastbox \setbox\Pbox@\hbox{\unhbox\Pbox@\setbox\Pbox@\lastbox \setbox\z@\hbox{#1}% \ifdim\dp\Pbox@>\dp\z@\global\PEX@true\else \global\PEX@false\fi}}}} \def\EXtest@#1{\setbox\prePbox@\hbox{$\displaystyle{#1}$}% \PEX@{\MTEXA@\char32}% \ifPEX@ {\textfont3=\MTEXE@\PEX@{\MTEXE@\char12}}% \ifPEX@ {\textfont3=\MTEXF@\PEX@{\MTEXF@\char12}}% \ifPEX@ \def\EXtest@@{\textfont3=\MTEXG@}% \else \def\EXtest@@{\textfont3=\MTEXF@}% \fi \else \def\EXtest@@{\textfont3=\MTEXE@}% \fi \else \def\EXtest@@{\textfont3=\MTEXA@}% \fi} \def\vc@nt@r#1{\hbox{$\vcenter{\hbox{$\displaystyle{#1}$}}$}} \newbox\LRbox@ \def\LEFTRIGHT@#1#2#3{\setbox\LRbox@\vc@nt@r{#3}% \EXtest@{\vc@nt@r{#3}}% \vcenter{\hbox{\curlybraces\EXtest@@$\displaystyle\left#1\box\LRbox@\right#2$}}}% \def\PARENS#1{\LEFTRIGHT@(){#1}}% \newif\ifspecdelim@ \def\specdelim@#1{\ifx#1(\specdelim@true \else\ifx#1)\specdelim@true \else\ifx#1<\specdelim@true \else\ifx#1\langle\specdelim@true \else\ifx#1>\specdelim@true \else\ifx#1\rangle\specdelim@true \else\ifx#1/\specdelim@true \else\ifx#1\backslash\specdelim@true \else\ifx#1\lbrace\specdelim@true \else\ifx#1\rbrace\specdelim@true \else\specdelim@false\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi} \def\LEFTRIGHT#1#2#3{% \specdelim@#1% \ifspecdelim@ \LEFTRIGHT@#1.{\vc@nt@r{#3}}% \else \left#1 \vc@nt@r{#3}% \right.% \fi \kern-2\nulldelimiterspace\mskip-\thinmuskip \specdelim@#2% \ifspecdelim@ \LEFTRIGHT@.#2{\vphantom{\vc@nt@r{#3}}}% \else \left.% \vphantom{\vc@nt@r{#3}}% \right#2% \fi} \def\vcorrection#1{\vrule width\z@ height#1\relax} \def\ccases#1{\LEFTRIGHT\lbrace.{\,\vcenter{\normalbaselines\m@th \ialign{$##\hfil$&\quad##\hfil\crcr#1\crcr}}}} \ifx\amstexloaded@\relax \def\ccases#1\endccases{\bgroup\spreadmlines@\jot\LEFTRIGHT\lbrace.{\matrix \format\l&\quad\l\\#1\endmatrix}\egroup}% \fi \newbox\HATbox@ \def\widehat#1{\setbox\HATbox@\hbox{$\displaystyle{#1}$}% \setbox\z@\hbox{\MTEXF@;}% \ifdim\wd\HATbox@>\wd\z@ \def\HAT@{\textfont3=\MTEXG@}% \else \setbox\z@\hbox{\MTEXE@9}% \ifdim\wd\HATbox@>\wd\z@ \def\HAT@{\textfont3=\MTEXF@}% \else \setbox\z@\hbox{\MTEXA@ d}% \ifdim\wd\HATbox@>\wd\z@ \def\HAT@{\textfont3=\MTEXE@}% \else \def\HAT@{\textfont3=\MTEXA@}% \fi \fi \fi \hbox{\HAT@$\mathaccent"0362 {\box\HATbox@}$}}% \def\widehatdown#1#2{\setbox\HATbox@\hbox{$\displaystyle{#2}$}% \setbox\z@\hbox{\MTEXF@;}% \ifdim\wd\HATbox@>\wd\z@ \def\HAT@{\textfont3=\MTEXG@}% \else \setbox\z@\hbox{\MTEXE@9}% \ifdim\wd\HATbox@>\wd\z@ \def\HAT@{\textfont3=\MTEXF@}% \else \setbox\z@\hbox{\MTEXA@ d}% \ifdim\wd\HATbox@>\wd\z@ \def\HAT@{\textfont3=\MTEXE@}% \else \def\HAT@{\textfont3=\MTEXA@}% \fi \fi \fi \dimen@\ht\HATbox@\advance\dimen@-#1\relax \ht\HATbox@\dimen@ \hbox{\HAT@$\mathaccent"0362 {\box\HATbox@}$}}% \newbox\TDbox@ \def\widetilde#1{\setbox\TDbox@\hbox{$\displaystyle{#1}$}% \setbox\z@\hbox{\MTEXF@ K}% \ifdim\wd\TDbox@>\wd\z@ \def\TD@{\textfont3=\MTEXG@}% \else \setbox\z@\hbox{\MTEXE@ I}% \ifdim\wd\TDbox@>\wd\z@ \def\TD@{\textfont3=\MTEXF@}% \else \setbox\z@\hbox{\MTEXA@ d}% \ifdim\wd\TDbox@>\wd\z@ \def\TD@{\textfont3=\MTEXE@}% \else \def\TD@{\textfont3=\MTEXA@}% \fi \fi \fi \hbox{\TD@$\mathaccent"0365 {\box\TDbox@}$}} \def\widetildedown#1#2{\setbox\TDbox@\hbox{$\displaystyle{#2}$}% \setbox\z@\hbox{\MTEXF@ K}% \ifdim\wd\TDbox@>\wd\z@ \def\TD@{\textfont3=\MTEXG@}% \else \setbox\z@\hbox{\MTEXE@ I}% \ifdim\wd\TDbox@>\wd\z@ \def\TD@{\textfont3=\MTEXF@}% \else \setbox\z@\hbox{\MTEXA@ d}% \ifdim\wd\TDbox@>\wd\z@ \def\TD@{\textfont3=\MTEXE@}% \else \def\TD@{\textfont3=\MTEXA@}% \fi \fi \fi \dimen@\ht\TDbox@\advance\dimen@-#1\relax \ht\TDbox@\dimen@ \hbox{\TD@$\mathaccent"0365 {\box\TDbox@}$}} \newbox\CHbox@ \def\widecheck#1{\setbox\CHbox@\hbox{$\displaystyle{#1}$}% \setbox\z@\hbox{\MTEXF@[}% \ifdim\wd\CHbox@>\wd\z@ \def\CHECK@{\textfont3=\MTEXG@}% \else \setbox\z@\hbox{\MTEXE@ Y}% \ifdim\wd\CHbox@>\wd\z@ \def\CHECK@{\textfont3=\MTEXF@}% \else \setbox\z@\hbox{\MTEXA@ z}% \ifdim\wd\CHbox@>\wd\z@ \def\CHECK@{\textfont3=\MTEXE@}% \else \def\CHECK@{\textfont3=\MTEXA@}% \fi \fi \fi \hbox{\CHECK@$\mathaccent"037A {\box\CHbox@}$}}% \def\arc{\mathaccent"03C3 } \def\Arc{\mathaccent"03BE } \newbox\ARCbox@ \def\widearc#1{\setbox\ARCbox@\hbox{$\displaystyle{#1}$}% \setbox\z@\hbox{\MTEXF@\char'267}% \ifdim\wd\ARCbox@>\wd\z@ \hbox{\textfont3=\MTEXG@ $\mathaccent"03B1 {\box\ARCbox@}$}% \else \setbox\z@\hbox{\MTEXE@\char'326}% \ifdim\wd\ARCbox@>\wd\z@ \hbox{\textfont3=\MTEXF@ $\mathaccent"03B1 {\box\ARCbox@}$}% \else \setbox\z@\hbox{\MTEXA@ \char'302}% \ifdim\wd\ARCbox@>\wd\z@ \hbox{\textfont3=\MTEXE@ $\mathaccent"03D0 {\box\ARCbox@}$}% \else \hbox{\textfont3=\MTEXA@ $\mathaccent"03BF {\box\ARCbox@}$}% \fi \fi \fi} \def\widecheckdown#1#2{\setbox\CHbox@\hbox{$\displaystyle{#2}$}% \setbox\z@\hbox{\MTEXF@[}% \ifdim\wd\CHbox@>\wd\z@ \def\CHECK@{\textfont3=\MTEXG@}% \else \setbox\z@\hbox{\MTEXE@ Y}% \ifdim\wd\CHbox@>\wd\z@ \def\CHECK@{\textfont3=\MTEXF@}% \else \setbox\z@\hbox{\MTEXA@ z}% \ifdim\wd\CHbox@>\wd\z@ \def\CHECK@{\textfont3=\MTEXE@}% \else \def\CHECK@{\textfont3=\MTEXA@}% \fi \fi \fi \dimen@\ht\CHbox@\advance\dimen@-#1\relax \ht\CHbox@\dimen@ \hbox{\CHECK@$\mathaccent"037A {\box\CHbox@}$}}% \def\undercbrace#1{\setbox\z@\hbox{$\displaystyle#1$}% \dimen@\tMTPsize\relax \expandafter\getpoints@\the\dimen@\getpoints@ \dimen@\wd\z@ \divide\dimen@\pointcount@ \expandafter\getpoints@\the\dimen@\getpoints@ \ifnum\pointcount@<4 \ifdim\wd\z@<12pt \def\thebrace@{\hbox{\MTEXE@\char144}}% \else\ifdim\wd\z@<15pt \def\thebrace@{\hbox{\MTEXE@\char145}}% \else\ifdim\wd\z@<18pt \def\thebrace@{\hbox{\MTEXE@\char146}}% \else\ifdim\wd\z@<21pt \def\thebrace@{\hbox{\MTEXE@\char147}}% \else\ifdim\wd\z@<24pt \def\thebrace@{\hbox{\MTEXE@\char148}}% \else\ifdim\wd\z@<27pt \def\thebrace@{\hbox{\MTEXE@\char149}}% \else\ifdim\wd\z@<30pt \def\thebrace@{\hbox{\MTEXE@\char150}}% \else\ifdim\wd\z@<33pt \def\thebrace@{\hbox{\MTEXE@\char151}}% \else \def\thebrace@{\hbox{\MTEXE@\char152}}% \fi\fi\fi\fi\fi\fi\fi\fi \else \ifnum\pointcount@<12 \advance\pointcount@149 \def\thebrace@{\hbox{\MTEXE@\char\pointcount@}}% \else \ifnum\pointcount@<24 \advance\pointcount@132 \def\thebrace@{\hbox{\MTEXF@\char\pointcount@}}% \else \advance\pointcount@120 \ifnum\pointcount@>149 \pointcount@149 \fi \def\thebrace@{\hbox{\MTEXG@\char\pointcount@}}% \fi \fi \fi \mathop{\vtop{\ialign{\hfil##\hfil\cr$\displaystyle#1$\crcr\noalign {\vskip3pt\nointerlineskip}\thebrace@\cr\noalign{\kern3pt}}}}\limits}% \def\overcbrace#1{\setbox\z@\hbox{$\displaystyle#1$}% \dimen@\tMTPsize\relax \expandafter\getpoints@\the\dimen@\getpoints@ \dimen@\wd\z@ \divide\dimen@\pointcount@ \expandafter\getpoints@\the\dimen@\getpoints@ \ifnum\pointcount@<4 \ifdim\wd\z@<12pt \def\thebrace@{\hbox{\MTEXE@\char176}}% \else\ifdim\wd\z@<15pt \def\thebrace@{\hbox{\MTEXE@\char177}}% \else\ifdim\wd\z@<18pt \def\thebrace@{\hbox{\MTEXE@\char178}}% \else\ifdim\wd\z@<21pt \def\thebrace@{\hbox{\MTEXE@\char179}}% \else\ifdim\wd\z@<24pt \def\thebrace@{\hbox{\MTEXE@\char180}}% \else\ifdim\wd\z@<27pt \def\thebrace@{\hbox{\MTEXE@\char181}}% \else\ifdim\wd\z@<30pt \def\thebrace@{\hbox{\MTEXE@\char182}}% \else\ifdim\wd\z@<33pt \def\thebrace@{\hbox{\MTEXE@\char183}}% \else \def\thebrace@{\hbox{\MTEXE@\char184}}% \fi\fi\fi\fi\fi\fi\fi\fi \else \ifnum\pointcount@<12 \advance\pointcount@181 \def\thebrace@{\hbox{\MTEXE@\char\pointcount@}}% \else \ifnum\pointcount@<24 \advance\pointcount@148 \def\thebrace@{\hbox{\MTEXF@\char\pointcount@}}% \else \advance\pointcount@136 \ifnum\pointcount@>165 \pointcount@165 \fi \def\thebrace@{\hbox{\MTEXG@\char\pointcount@}}% \fi \fi \fi \mathop{\vbox{\ialign{\hfil##\hfil\cr\noalign{\kern3\p@}\thebrace@\crcr \noalign{\kern3\p@\nointerlineskip}$\displaystyle#1$\crcr}}}\limits}% \ifx\amstexloaded@\relax \def\undersetcbrace#1\to#2{\undercbrace{#2}_{#1}} \def\oversetcbrace#1\to#2{\undercbrace{#2}_{#1}} \fi \newbox\preSbox@ \newbox\Sbox@ \newif\ifSQEX@ \def\SQEX@#1{\setbox\Sbox@\vbox{$$\radical"270370{\copy\preSbox@}$$}% \setbox\Sbox@\vbox{\unvbox\Sbox@\unskip\unpenalty \setbox\Sbox@\lastbox\setbox\Sbox@\hbox{\unhbox\Sbox@\setbox\Sbox@\lastbox \setbox\Sbox@\hbox{\unhbox\Sbox@\setbox\Sbox@\lastbox\setbox\Sbox@\lastbox \setbox\z@\hbox{#1}% \ifdim\dp\Sbox@>\dp\z@\global\SQEX@true\else \global\SQEX@false\fi}}}} \newcount\SQcount@ \def\SQtest@#1{\setbox\preSbox@\hbox{$\displaystyle{#1}$}% \SQEX@{\MTEXA@ s}% \ifSQEX@ {\textfont3=\MTEXE@\SQEX@{\MTEXE@ u}}% \ifSQEX@ {\textfont3=\MTEXF@\SQEX@{\MTEXF@ u}}% \ifSQEX@ \def\SQtest@@{\textfont3=\MTEXG@}\global\SQcount@3 \else \def\SQtest@@{\textfont3=\MTEXF@}\global\SQcount@2 \fi \else \def\SQtest@@{\textfont3=\MTEXE@}\global\SQcount@1 \fi \else \def\SQtest@@{\textfont3=\MTEXA@}\global\SQcount@0 \fi} \newbox\SQRTbox@ \def\SQRT#1{\setbox\SQRTbox@\hbox{$\displaystyle{#1}$}% \SQtest@{#1}% \hbox{\SQtest@@$\displaystyle\radical"270370{\box\SQRTbox@}$}} \def\ROOT#1\OF#2{\setbox\rootbox\hbox{$\m@th\scriptscriptstyle{#1}$}% \mathpalette\R@@T{#2}} \def\R@@T#1#2{\setbox\z@\hbox{$\uproot@\z@\leftroot\z@\m@th#1\SQRT{#2}$}% \dimen@\ht\z@\advance\dimen@-\dp\z@ \dimen@ii\dimen@ \setbox\tw@\hbox{$\m@th#1\mskip\uproot@ mu$}\advance\dimen@ii by1.667\wd\tw@ \setbox\tw@\hbox{$\m@th#1\mskip10mu$}%\advance\dimen@ by1.667\wd\tw@ \ifcase\SQcount@\advance\dimen@3\wd\tw@\or\advance\dimen@1.5\wd\tw@\or \advance\dimen@\wd\tw@\fi \mkern1mu\kern.13\dimen@\mkern-\leftroot@ mu \raise.44\dimen@ii\copy\rootbox \mkern-1mu\kern-.13\dimen@\mkern\leftroot@ mu\box\z@\kern-\wd\rootbox \leftroot\z@\uproot\z@} % Now come the macros for the extra large symbols. They assume that % \MTXL@ and \MTXXXL@ refer to the fonts mt2xl and mt2xxxl that have been loaded. % \FNSS@ is \futurelet\next skipping spaces before the next token \def\FNSS@#1{\let\FNSS@@#1\futurelet\next\FNSS@@@} \def\FNSS@@@{\ifx\next\space@\def\FNSS@@@@. {\futurelet\next\FNSS@@@}\else \def\FNSS@@@@.{\FNSS@@}\fi\FNSS@@@@.} {\catcode`\_=12 \global\let\sbxii@=_} {\catcode`\_=8 \global\let\sbviii@=_} \newcount\limtype@ % 0 when \limits is used, 1 when \nolimits is used \newcount\xlfont@ % 0 if using mt2xl, 1 if using mt2xxxl \newcount\xlposition@ % position of character (or first half of character) on mt2xl or mt2xxxl \newcount\xlposition@ii % if non-zero, position of other half of character \newcount\optype@ % 0 for operators needing no italic correction, 1 for others \newcount\x@count % 0 for \XL, 1 for \XXL, 2 for \XXXL, 3 for \xl; used for % calculating positioning of limits for operators needing italic correction % The definition of \xl is typical of all, except that \xlposition@ii is never % needed for this size (or for \XL size). \def\xl{\xlposition@ii\z@\xlfont@\z@\x@count\thr@@\futurelet\next\xl@} \def\xl@{% first come operators needing no italic correction \optype@\z@ % these all usually use limits \limtype@\z@ \ifx\next\bigodot\xlposition@96\else \ifx\next\bigoplus\xlposition@97\else \ifx\next\bigotimes\xlposition@98\else \ifx\next\bigsqcup\xlposition@99\else \ifx\next\bigcup\xlposition@100\else \ifx\next\bigcap\xlposition@101\else \ifx\next\biguplus\xlposition@102\else \ifx\next\bigwedge\xlposition@103\else \ifx\next\bigvee\xlposition@104\else \ifx\next\upsum\xlposition@105\else \ifx\next\upprod\xlposition@106\else \ifx\next\upcoprod\xlposition@107\else \ifx\next\bigcupprod\xlposition@110\else \ifx\next\bigcapprod\xlposition@111\else \ifx\next\bigvarland\xlposition@122\else \ifx\next\bigast\xlposition@123\else % then come operators needing italic correction % first come those that usually use limits \ifx\next\slsum\optype@\@ne\xlposition@119\else \ifx\next\slprod\optype@\@ne\xlposition@120\else \ifx\next\slcoprod\optype@\@ne\xlposition@121\else % then those that usually don't use limits \ifx\next\int\limtype@\@ne\optype@\@ne\xlposition@108\else \ifx\next\oint\limtype@\@ne\optype@\@ne\xlposition@109\else \ifx\next\cwoint\limtype@\@ne\optype@\@ne\xlposition@112\else \ifx\next\awoint\limtype@\@ne\optype@\@ne\xlposition@113\else \ifx\next\cwint\limtype@\@ne\optype@\@ne\xlposition@114\else \ifx\next\iint\limtype@\@ne\optype@\@ne\xlposition@115\else \ifx\next\iiint\limtype@\@ne\optype@\@ne\xlposition@116\else \ifx\next\oiint\limtype@\@ne\optype@\@ne\xlposition@117\else \ifx\next\oiiint\limtype@\@ne\optype@\@ne\xlposition@118\else \ifx\next\barint\limtype@\@ne\optype@\@ne\xlposition@124\else \ifx\next\slashint\limtype@\@ne\optype@\@ne\xlposition@125\else \errmessage{Invalid use of \noexpand\xl}% \fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi \fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi \def\next@##1{\futurelet\next\getxlims@}\next@} % swallows the token after \xl or \xlnl \ifx\amstexloaded@\relax \def\getxlims@{% \let\lowerlim@\relax\let\upperlim@\relax \ifx\next\limits \def\next@##1{\limtype@\z@\futurelet\next\getxlims@}% \else\ifx\next\nolimits \def\next@##1{\limtype@\@ne\futurelet\next\getxlims@}% \else\ifx\next\sbxii@ \def\next@##1{\getxlowerlim@}% \else\ifx\next\sbviii@ \def\next@##1{\getxlowerlim@}% \else\ifx\next\Sb \let\next@\getxmultilowerlim@ \else\ifcat\sbviii@\noexpand\next \def\next@##1{\getxlowerlim@}% \else\ifcat^\noexpand\next \def\next@##1{\getxupperlim@}% \else\ifx\next\Sp \let\next@\getxmultiupperlim@ \else \let\next@\uselims@ % \uselims@ is what we will always do after getting the limits \fi\fi\fi\fi\fi\fi\fi\fi \next@} \def\getxlowerlim@#1{\def\lowerlim@{#1}\FNSS@\getxupperlim@@} \def\getxmultilowerlim@\Sb#1\endSb{\def\lowerlim@{\multilimits@#1\endSb}% \FNSS@\getxupperlim@@} \def\getxmultiupperlim@\Sp#1\endSp{\def\upperlim@{\multilimits@#1\endSp}% \FNSS@\getxlowerlim@@} \def\getxupperlim@#1{\def\upperlim@{#1}\FNSS@\getxlowerlim@@} \def\getxupperlim@@{% \ifcat^\noexpand\next \def\next@##1##2{\def\upperlim@{##2}\uselims@}% have limits now \else\ifx\next\Sp \def\next@\Sp##1\endSp{\def\upperlim@{\multilimits@##1\endSp}\uselims@}% have limits now \else \let\next@\uselims@ % have limits now \fi\fi \next@} \def\getxlowerlim@@{% \ifx\next\sbxii@ \def\next@##1##2{\def\lowerlim@{##2}\uselims@}% \else\ifx\next\sbviii@ \def\next@##1##2{\def\lowerlim@{##2}\uselims@}% \else\ifcat\sbviii@\noexpand\next \def\next@##1##2{\def\lowerlim@{##2}\uselims@}% \else\ifx\next\Sb \def\next@\Sb##1\endSb{\def\lowerlim@{\multilimits@##1\endSb}\uselims@}% \else \let\next@\uselims@ % have limits now \fi\fi\fi\fi \next@} \else % definitions if amstex not loaded \def\getxlims@{% \let\lowerlim@\relax\let\upperlim@\relax \ifx\next\limits \def\next@##1{\limtype@\z@\futurelet\next\getxlims@}% \else\ifx\next\nolimits \def\next@##1{\limtype@\@ne\futurelet\next\getxlims@}% \else\ifx\next\sbxii@ \def\next@##1{\getxlowerlim@}% \else\ifx\next\sbviii@ \def\next@##1{\getxlowerlim@}% \else\ifcat\sbviii@\noexpand\next \def\next@##1{\getxlowerlim@}% \else\ifcat^\noexpand\next \def\next@##1{\getxupperlim@}% \else \let\next@\uselims@ % \uselims@ is what we will always do after getting the limits \fi\fi\fi\fi\fi\fi \next@} \def\getxlowerlim@#1{\def\lowerlim@{#1}\FNSS@\getxupperlim@@} \def\getxupperlim@#1{\def\upperlim@{#1}\FNSS@\getxlowerlim@@} \def\getxupperlim@@{% \ifcat^\noexpand\next \def\next@##1##2{\def\upperlim@{##2}\uselims@}% \else \let\next@\uselims@ % have limits now \fi \next@} \def\getxlowerlim@@{% \ifx\next\sbxii@ \def\next@##1##2{\def\lowerlim@{##2}\uselims@}% \else\ifx\next\sbviii@ \def\next@##1##2{\def\lowerlim@{##2}\uselims@}% \else\ifcat\sbviii@\noexpand\next \def\next@##1##2{\def\lowerlim@{##2}\uselims@}% \else \let\next@\uselims@ % have limits now \fi\fi\fi \next@} \fi \def\uselims@{\ifnum\optype@=\z@\xlargeop@\else\xlargeopic@\fi} \def\xlargeop@{% \ifnum\limtype@=\z@ \mathop{\hbox{$\vcenter{\hbox{% \ifnum\xlfont@=\z@\MTXL@\else\MTXXXL@\fi \char\xlposition@\relax \ifnum\xlposition@ii=\z@\else\char\xlposition@ii\relax\fi }}$}}_{\lowerlim@}^{\upperlim@}% \else \mathop{\hbox{$\vcenter{\hbox{% \ifnum\xlfont@=\z@\MTXL@\else\MTXXXL@\fi \char\xlposition@\relax \ifnum\xlposition@ii=\z@\else\char\xlposition@ii\relax\fi }}$}}\nolimits_{\lowerlim@}^{\upperlim@}% \fi} % The definition of \xlargeopic@ is complicated when there are limits, and the % calculation uses \maxXLscripts@, which will store the maximum of the widths of the sub % and superscripts. There is the additional complication that the amount to adjust the % superscript differs for \XL and \XXL, and the adjustment is made in terms of an extra % \fontdimen in the mtxxl font, which measures the horizontal distance between the % lowest and highest points of the integral sign (for the \XXL versions these are exactly % twice the \XL versions). % Fortunately, none of the characters needing \xlargeopic@ need to be broken into two % halves, so we don't have to worry about \xlposition@ii. \newdimen\maxXLscripts@ \def\xlargeopic@{% \def\thecharacter@{\ifnum\xlfont@=\z@\MTXL@\else\MTXXXL@\fi\char\xlposition@\relax}% \ifnum\limtype@=\@ne \setbox\z@\hbox{\thecharacter@\/}% \dimen@\wd\z@ \setbox\z@\hbox{\thecharacter@}% \advance\dimen@-\wd\z@ \mathop{\hbox{$\vcenter{\hbox{\thecharacter@}}$}} \nolimits_{\lowerlim@}^{\kern\dimen@\upperlim@}% \else \setbox\z@\hbox{\ifcase\x@count\kern\tw@\fontdimen8\MTXL@\or \kern4\fontdimen8\MTXL@\or\kern\tw@\fontdimen8\MTXXXL@\or\kern1.7\fontdimen8\MTXL@\fi}% \setbox\@ne\hbox{\thecharacter@}% \setbox\tw@\hbox{$\scriptstyle{\lowerlim@}$}% \setbox\thr@@\hbox{$\kern\wd\z@\scriptstyle{\upperlim@}$}% % let \maxXLscripts@ be max of subscript and superscript boxes \maxXLscripts@\wd\thr@@\ifdim\maxXLscripts@<\wd\tw@\maxXLscripts@\wd\tw@\fi % let \dimen@ii be amount of subscript to left of int \dimen@ii.5\wd\tw@ \advance\dimen@ii-.5\wd\@ne % let \dimen@ be amount of visible superscript to left of int, namely % [visible length] - [amount to right of left boundary of operator], i.e., % [wd3 - \wd0] - 1/2(wd3 + wd1) \dimen@.5\wd\thr@@ \advance\dimen@-\wd\z@ \advance\dimen@-.5\wd\@ne \ifdim\dimen@>\z@ % if visible part of superscript extends to left of operator \ifdim\dimen@>\dimen@ii % if visible part of superscript to left of subscript % kern by - [1/2(\maxXLscripts@ - wd1) - \dimen@] \kern\dimen@\kern.5\wd\@ne\kern-.5\maxXLscripts@ \else % only trim to subscript, % kern - [1/2(\maxXLscripts@ - wd1) - \dimen@ii] \kern\dimen@ii\kern.5\wd\@ne\kern-.5\maxXLscripts@ \fi \else % visible part of superscript entirely to right of operator, so trim to subscript \ifdim\dimen@ii > \z@ \kern\dimen@ii\kern.5\wd\@ne\kern-.5\maxXLscripts@ \else \kern.5\wd\@ne\kern-.5\maxXLscripts@ \fi \fi \setbox\@ne\hbox{\thecharacter@\/}\dimen@ii\wd\@ne \setbox\@ne\hbox{\thecharacter@}\advance\dimen@ii-\wd\@ne \mathop{\hbox{$\vcenter{\hbox{\thecharacter@}}$}}_{\lowerlim@}^{\kern\wd\z@\upperlim@}% \kern\dimen@ii \fi } % Other sizes almost completely analagous \def\XL{\xlposition@ii\z@\xlfont@\z@\x@count\z@\futurelet\next\XL@} \def\XL@{\optype@\z@\limtype@\z@ \ifx\next\bigodot\xlposition@0\else \ifx\next\bigoplus\xlposition@1\else \ifx\next\bigotimes\xlposition@2\else \ifx\next\bigsqcup\xlposition@3\else \ifx\next\bigcup\xlposition@4\else \ifx\next\bigcap\xlposition@5\else \ifx\next\biguplus\xlposition@6\else \ifx\next\bigwedge\xlposition@7\else \ifx\next\bigvee\xlposition@8\else \ifx\next\upsum\xlposition@9\else \ifx\next\upprod\xlposition@10\else \ifx\next\upcoprod\xlposition@11\else \ifx\next\bigcupprod\xlposition@14\else \ifx\next\bigcapprod\xlposition@15\else \ifx\next\bigvarland\xlposition@26\else \ifx\next\bigast\xlposition@27\else \ifx\next\slsum\optype@\@ne\xlposition@23\else \ifx\next\slprod\optype@\@ne\xlposition@24\else \ifx\next\slcoprod\optype@\@ne\xlposition@25\else \ifx\next\int\limtype@\@ne\optype@\@ne\xlposition@12\else \ifx\next\oint\limtype@\@ne\optype@\@ne\xlposition@13\else \ifx\next\cwoint\limtype@\@ne\optype@\@ne\xlposition@16\else \ifx\next\awoint\limtype@\@ne\optype@\@ne\xlposition@17\else \ifx\next\cwint\limtype@\@ne\optype@\@ne\xlposition@18\else \ifx\next\iint\limtype@\@ne\optype@\@ne\xlposition@19\else \ifx\next\iiint\limtype@\@ne\optype@\@ne\xlposition@20\else \ifx\next\oiint\limtype@\@ne\optype@\@ne\xlposition@21\else \ifx\next\oiiint\limtype@\@ne\optype@\@ne\xlposition@22\else \ifx\next\barint\limtype@\@ne\optype@\@ne\xlposition@28\else \ifx\next\slashint\limtype@\@ne\optype@\@ne\xlposition@29\else \errmessage{Invalid use of \noexpand\XL}% \fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi \fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi \def\next@##1{\futurelet\next\getxlims@}\next@} \def\XXL{\xlposition@ii\z@\xlfont@\z@\x@count\@ne\futurelet\next\XXL@} \def\XXL@{\optype@\z@\limtype@\z@ \ifx\next\bigodot\xlposition@48\else \ifx\next\bigoplus\xlposition@49\else \ifx\next\bigotimes\xlposition@50\else \ifx\next\bigsqcup\xlposition@51\else \ifx\next\bigcup\xlposition@52\else \ifx\next\bigcap\xlposition@53\else \ifx\next\biguplus\xlposition@54\else \ifx\next\bigwedge\xlposition@55\else \ifx\next\bigvee\xlposition@56\else \ifx\next\upsum\xlposition@57\else \ifx\next\upprod\xlposition@58\else \ifx\next\upcoprod\xlposition@59\else \ifx\next\bigcupprod\xlposition@62 \xlposition@ii64\else \ifx\next\bigcapprod\xlposition@63 \xlposition@ii65\else \ifx\next\bigvarland\xlposition@76\else \ifx\next\bigast\xlposition@77\else \ifx\next\slsum\optype@\@ne\xlposition@73\else \ifx\next\slprod\optype@\@ne\xlposition@74\else \ifx\next\slcoprod\optype@\@ne\xlposition@75\else \ifx\next\int\limtype@\@ne\optype@\@ne\xlposition@60\else \ifx\next\oint\limtype@\@ne\optype@\@ne\xlposition@61\else \ifx\next\cwoint\limtype@\@ne\optype@\@ne\xlposition@66\else \ifx\next\awoint\limtype@\@ne\optype@\@ne\xlposition@67\else \ifx\next\cwint\limtype@\@ne\optype@\@ne\xlposition@68\else \ifx\next\iint\limtype@\@ne\optype@\@ne\xlposition@69\else \ifx\next\iiint\limtype@\@ne\optype@\@ne\xlposition@70\else \ifx\next\oiint\limtype@\@ne\optype@\@ne\xlposition@71\else \ifx\next\oiiint\limtype@\@ne\optype@\@ne\xlposition@72\else \ifx\next\barint\limtype@\@ne\optype@\@ne\xlposition@78\else \ifx\next\slashint\limtype@\@ne\optype@\@ne\xlposition@79\else \errmessage{Invalid use of \noexpand\XXL}% \fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi \fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi \def\next@##1{\futurelet\next\getxlims@}\next@} \def\XXXL{\xlposition@ii\z@\xlfont@\@ne\x@count\tw@\futurelet\next\XXXL@} \def\XXXL@{\optype@\z@\limtype@\z@ \ifx\next\bigodot\xlposition@0\else \ifx\next\bigoplus\xlposition@1\else \ifx\next\bigotimes\xlposition@2\else \ifx\next\bigsqcup\xlposition@3\else \ifx\next\bigcup\xlposition@4\else \ifx\next\bigcap\xlposition@5\else \ifx\next\biguplus\xlposition@6\else \ifx\next\bigwedge\xlposition@7\else \ifx\next\bigvee\xlposition@8\else \ifx\next\upsum\xlposition@9\else \ifx\next\uprod\xlposition@10\else \ifx\next\ucoprod\xlposition@11\else \ifx\next\bigcupprod\xlposition@14 \xlposition@ii16\else \ifx\next\bigcapprod\xlposition@15 \xlposition@ii17\else \ifx\next\bigvarland\xlposition@ 28 \xlposition@ii29\else \ifx\next\bigast\xlposition@30\else \ifx\next\slsum\optype@\@ne\xlposition@25\else \ifx\next\slprod\optype@\@ne\xlposition@26\else \ifx\next\slcoprod\optype@\@ne\xlposition@27\else \ifx\next\int\limtype@\@ne\optype@\@ne\xlposition@12\else \ifx\next\oint\limtype@\@ne\optype@\@ne\xlposition@13\else \ifx\next\cwoint\limtype@\@ne\optype@\@ne\xlposition@18\else \ifx\next\awoint\limtype@\@ne\optype@\@ne\xlposition@19\else \ifx\next\cwint\limtype@\@ne\optype@\@ne\xlposition@20\else \ifx\next\iint\limtype@\@ne\optype@\@ne\xlposition@21\else \ifx\next\iiint\limtype@\@ne\optype@\@ne\xlposition@22\else \ifx\next\oiint\limtype@\@ne\optype@\@ne\xlposition@23\else \ifx\next\oiiint\limtype@\@ne\optype@\@ne\xlposition@24\else \ifx\next\barint\limtype@\@ne\optype@\@ne\xlposition@31\else \ifx\next\slashint\limtype@\@ne\optype@\@ne\xlposition@32\else \def\next@{\errmessage{Invalid use of \noexpand\XXXL}}% \fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi \fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi \def\next@##1{\futurelet\next\getxlims@}\next@} % Bold math \def\hexnumber@#1{\ifcase#1 0\or 1\or 2\or 3\or 4\or 5\or 6\or 7\or 8\or 9\or A\or B\or C\or D\or E\or F\fi} % Just in case some one redefines \empty, we use \empty@ instead. \def\empty@{} \def\bm{\futurelet\next\bm@}% \def\bm@{\ifx\next'\def\next@##1{\bprime@}\else \ifx\next\yen\def\next@\yen{\ifmmode\mathchar"0\mtbsya@@55\relax\else \mathhexbox\mtbsy@@55\relax\fi}\else \ifcat\noexpand\next A\def\next@##1{{\fam\mtbmi@\relax\next}}\else \ifcat\noexpand\next0\def\next@{\bm@@}\else \def\next@{\errmessage{Invalid use of \string\bm}}\fi\fi\fi\fi \next@} \newcount\firstbprimesep \firstbprimesep=2 \def\bprime@{^\bgroup\firstprime@true\bprim@s} \def\bprim@s{\iffirstprime@\kern\firstbprimesep\tenthpt@\fi \bmprime\firstprime@false\futurelet\next\bpr@m@s} \newcount\nonbprimesep \nonbprimesep=7 \def\bpr@m@s{\ifx'\next\def\next@##1{\bprim@s}\else \ifx^\next\def\next@##1##2{\kern\nonbprimesep\tenthpt@##2\egroup}\else \let\next@\egroup\fi\fi\next@} \newif\ifnumeral@ \newcount\codecount@ \def\bm@@#1{% \codecount@=`#1\relax \numeral@false \ifnum\codecount@>47 \ifnum\codecount@<58 \numeral@true\fi\fi \ifnumeral@ {\fam\mtbmi@\relax#1}% \else \ifx#1+\mathchar"2\mtbsy@@43\relax \else\ifx#1-\mathchar"2\mtbsy@@00\relax \else\ifx#1=\mathchar"3\mtbsy@@44\relax \else\ifx#1<\mathchar"3\mtbmi@@3C\relax \else\ifx#1>\mathchar"3\mtbmi@@3E\relax \else\ifx#1/\mathchar"0\mtbmi@@3D\relax \else\ifx#1(\mathchar"4\mtbmi@@2E\relax \else\ifx#1)\mathchar"5\mtbmi@@2F\relax \else\ifx#1[\mathchar"4\mtbmi@@8C\relax \else\ifx#1]\mathchar"5\mtbmi@@8D\relax \else\ifx#1|\mathchar"0\mtbsy@@6A\relax \else\ifx#1*\mathchar"2\mtbsy@@03\relax \else\ifx#1.\mathchar"0\mtbmi@@3A\relax \else\ifx#1,\mathchar"6\mtbmi@@3B\relax \else\ifx#1;\mathchar"6\mtbsy@@49\relax \else\ifx#1:\mathchar"3\mtbsy@@57\relax \else\ifx#1!\mathchar"5\mtbmi@@8A\relax \else\ifx#1?\mathchar"5\mtbmi@@8B\relax \else\errmessage{Invalid use of \string\bm}% \fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi \fi} \def\bmdefs@{% \mathchardef\bmvarGamma="0\mtbmi@@00 \mathchardef\bmvarDelta="0\mtbmi@@01 \mathchardef\bmvarTheta="0\mtbmi@@02 \mathchardef\bmvarLambda="0\mtbmi@@03 \mathchardef\bmvarXi="0\mtbmi@@04 \mathchardef\bmvarPi="0\mtbmi@@05 \mathchardef\bmvarSigma="0\mtbmi@@06 \mathchardef\bmvarUpsilon="0\mtbmi@@07 \mathchardef\bmvarPhi="0\mtbmi@@08 \mathchardef\bmvarPsi="0\mtbmi@@09 \mathchardef\bmvarOmega="0\mtbmi@@0A \mathchardef\bmGamma="0\mtbmi@@80 \mathchardef\bmDelta="0\mtbmi@@81 \mathchardef\bmTheta="0\mtbmi@@82 \mathchardef\bmLambda="0\mtbmi@@83 \mathchardef\bmXi="0\mtbmi@@84 \mathchardef\bmPi="0\mtbmi@@85 \mathchardef\bmSigma="0\mtbmi@@86 \mathchardef\bmUpsilon="0\mtbmi@@87 \mathchardef\bmPhi="0\mtbmi@@88 \mathchardef\bmPsi="0\mtbmi@@89 \mathchardef\bmOmega="0\mtbmi@@7F \mathchardef\bmalpha="0\mtbmi@@0B \mathchardef\bmbeta="0\mtbmi@@0C \mathchardef\bmgamma="0\mtbmi@@0D \mathchardef\bmdelta="0\mtbmi@@0E \mathchardef\bmepsilon="0\mtbmi@@0F \mathchardef\bmzeta="0\mtbmi@@10 \mathchardef\bmeta="0\mtbmi@@11 \mathchardef\bmtheta="0\mtbmi@@12 \mathchardef\bmiota="0\mtbmi@@13 \mathchardef\bmkappa="0\mtbmi@@14 \mathchardef\bmlambda="0\mtbmi@@15 \mathchardef\bmmu="0\mtbmi@@16 \mathchardef\bmnu="0\mtbmi@@17 \mathchardef\bmxi="0\mtbmi@@18 \mathchardef\bmpi="0\mtbmi@@19 \mathchardef\bmrho="0\mtbmi@@1A \mathchardef\bmsigma="0\mtbmi@@1B \mathchardef\bmtau="0\mtbmi@@1C \mathchardef\bmupsilon="0\mtbmi@@1D \mathchardef\bmphi="0\mtbmi@@1E \mathchardef\bmchi="0\mtbmi@@1F \mathchardef\bmpsi="0\mtbmi@@20 \mathchardef\bmomega="0\mtbmi@@21 \mathchardef\bmvarepsilon="0\mtbmi@@22 \mathchardef\bmvartheta="0\mtbmi@@23 \mathchardef\bmvarpi="0\mtbmi@@24 \mathchardef\bmvarrho="0\mtbmi@@25 \mathchardef\bmvarsigma="0\mtbmi@@26 \mathchardef\bmvarphi="0\mtbmi@@27 \mathchardef\bmvarkappa="0\mtbmi@@7E \mathchardef\bmleftharpoonup="3\mtbmi@@28 \mathchardef\bmleftharpoondown="3\mtbmi@@29 \mathchardef\bmrightharpoonup="3\mtbmi@@2A \mathchardef\bmrightharpoondown="3\mtbmi@@2B \def\bmlparens{\delimiter"\mtbmi@@2E\mtbex@@00 }% \def\bmrparens{\delimiter"\mtbmi@@2F\mtbex@@01 }% \def\bmslash{\delimiter"\mtbmi@@3D\mtbex@@0E }% \mathchardef\bmstar="2\mtbmi@@3F \mathchardef\bmpartial="0\mtbmi@@40 \mathchardef\bmflat="0\mtbmi@@5B \mathchardef\bmnatural="0\mtbmi@@5C \mathchardef\bmsharp="0\mtbmi@@5D \mathchardef\bmsmile="3\mtbmi@@5E \mathchardef\bmfrown="3\mtbmi@@5F \mathchardef\bmell="0\mtbmi@@60 \mathchardef\bmimath="0\mtbmi@@7B \mathchardef\bmjmath="0\mtbmi@@7C \mathchardef\bmwp="0\mtbmi@@7D \def\bmlbrack{\delimiter"4\mtbmi@@8C\mtbex@@02 }% \def\bmrbrack{\delimiter"5\mtbmi@@8D\mtbex@@03 }% \mathchardef\bmdagger="2\mtbmi@@8E \mathchardef\bmddagger="2\mtbmi@@8F \mathchardef\bmupalpha="0\mtbmi@@92 \mathchardef\bmupbeta="0\mtbmi@@93 \mathchardef\bmupgamma="0\mtbmi@@94 \mathchardef\bmupdelta="0\mtbmi@@95 \mathchardef\bmupepsilon="0\mtbmi@@96 \mathchardef\bmupzeta="0\mtbmi@@97 \mathchardef\bmupeta="0\mtbmi@@98 \mathchardef\bmuptheta="0\mtbmi@@99 \mathchardef\bmupiota="0\mtbmi@@9A \mathchardef\bmupkappa="0\mtbmi@@9B \mathchardef\bmuplambda="0\mtbmi@@9C \mathchardef\bmupmu="0\mtbmi@@9D \mathchardef\bmupnu="0\mtbmi@@9E \mathchardef\bmupxi="0\mtbmi@@9F \mathchardef\bmuppi="0\mtbmi@@ A0 \mathchardef\bmuprho="0\mtbmi@@ A1 \mathchardef\bmupsigma="0\mtbmi@@ A2 \mathchardef\bmuptau="0\mtbmi@@ A3 \mathchardef\bmupupsilon="0\mtbmi@@ A4 \mathchardef\bmupphi="0\mtbmi@@ A5 \mathchardef\bmupchi="0\mtbmi@@ A6 \mathchardef\bmuppsi="0\mtbmi@@ A7 \mathchardef\bmupomega="0\mtbmi@@ A8 \mathchardef\bmupvarepsilon="0\mtbmi@@ A9 \mathchardef\bmupvartheta="0\mtbmi@@ AA \mathchardef\bmupvarpi="0\mtbmi@@ AB \mathchardef\bmupvarrho="0\mtbmi@@ AC \mathchardef\bmupvarsigma="0\mtbmi@@ AD \mathchardef\bmupvarphi="0\mtbmi@@ AE \mathchardef\bmupvarkappa="0\mtbmi@@ AF \mathchardef\bmvarbeta="0\mtbmi@@ B0 \mathchardef\bmupvarbeta="0\mtbmi@@ B1 \mathchardef\bmvardelta="0\mtbmi@@ B2 \mathchardef\bmupvardelta="0\mtbmi@@ B3 \mathchardef\bmdbar="0\mtbmi@@ B5 \mathchardef\bmupdbar="0\mtbmi@@ B6 \mathchardef\bmcdot="2\mtbsy@@01 \mathchardef\bmtimes="2\mtbsy@@02 \mathchardef\bmast="2\mtbsy@@03 \mathchardef\bmdiv="2\mtbsy@@04 \mathchardef\bmDiamond="2\mtbsy@@05 \mathchardef\bmpm="2\mtbsy@@06 \mathchardef\bmmp="2\mtbsy@@07 \mathchardef\bmoplus="2\mtbsy@@08 \mathchardef\bmominus="2\mtbsy@@09 \mathchardef\bmotimes="2\mtbsy@@0A \mathchardef\bmoslash="2\mtbsy@@0B \mathchardef\bmodot="2\mtbsy@@0C \mathchardef\bmbigcirc="2\mtbsy@@0D \mathchardef\bmcirc="2\mtbsy@@0E \mathchardef\bmbullet="2\mtbsy@@0F \mathchardef\bmasymp="3\mtbsy@@10 \mathchardef\bmequiv="3\mtbsy@@11 \mathchardef\bmsubseteq="3\mtbsy@@12 \mathchardef\bmsupseteq="3\mtbsy@@13 \mathchardef\bmleq="3\mtbsy@@14 \let\bmle=\bmleq \mathchardef\bmgeq="3\mtbsy@@15 \let\bmge=\bmgeq \mathchardef\bmpreceq="3\mtbsy@@16 \mathchardef\bmsucceq="3\mtbsy@@17 \mathchardef\bmsim="3\mtbsy@@18 \mathchardef\bmapprox="3\mtbsy@@19 \mathchardef\bmsubset="3\mtbsy@@1A \mathchardef\bmsupset="3\mtbsy@@1B \mathchardef\bmll="3\mtbsy@@1C \mathchardef\bmgg="3\mtbsy@@1D \mathchardef\bmprec="3\mtbsy@@1E \mathchardef\bmsucc="3\mtbsy@@1F \mathchardef\bmcircdashbullet="3\mtbsy@@ B7 \mathchardef\bmbulletdashcirc="3\mtbsy@@ B8 \mathchardef\bmleftarrow="3\mtbsy@@20 \let\bmgets=\bmleftarrow \mathchardef\bmrightarrow="3\mtbsy@@21 \let\bmto=\bmrightarrow \def\bmuparrow{\delimiter"3\mtbsyt@@22\mtbex@@78 }% \def\bmdownarrow{\delimiter"3\mtbsyt@@23\mtbex@@79 }% \mathchardef\bmleftrightarrow="3\mtbsy@@24 \def\bmuparrow{\delimiter"3\mtbsy@@22378 }% \def\bmdownarrow{\delimiter"3\mtbsy@@23379 }% \mathchardef\bmnearrow="3\mtbsy@@25 \mathchardef\bmsearrow="3\mtbsy@@26 \mathchardef\bmsimeq="3\mtbsy@@27 \mathchardef\bmLeftarrow="3\mtbsy@@28 \mathchardef\bmRightarrow="3\mtbsy@@29 \def\bmUparrow{\delimiter"3\mtbsy@@2A\mtbex@@7E }% \def\bmDownarrow{\delimiter"3\mtbsy@@2B\mtbex@@7F }% \mathchardef\bmLeftrightarrow="3\mtbsy@@2C \mathchardef\bmnwarrow="3\mtbsy@@2D \mathchardef\bmswarrow="3\mtbsy@@2E \mathchardef\bmpropto="3\mtbsy@@2F \mathchardef\bmprime="0\mtbsy@@30 \mathchardef\bminfty="0\mtbsy@@31 \mathchardef\bmin="3\mtbsy@@32 \mathchardef\bmni="3\mtbsy@@33 \let\bmowns=\bmni \mathchardef\bmbigtriangleup="2\mtbsy@@34 \mathchardef\bmtriangle="0\mtbsy@@34 \mathchardef\bmbigtriangledown="2\mtbsy@@35 \mathchardef\bmforall="0\mtbsy@@38 \mathchardef\bmexists="0\mtbsy@@39 \mathchardef\bmneg="0\mtbsy@@3A \let\lnot=\neg \mathchardef\bmemptyset="0\mtbsy@@3B \mathchardef\bmRe="0\mtbsy@@3C \mathchardef\bmIm="0\mtbsy@@3D \mathchardef\bmtop="0\mtbsy@@3E \mathchardef\bmbot="0\mtbsy@@3F \mathchardef\bmperp="3\mtbsy@@3F \mathchardef\bmaleph="0\mtbsy@@40 \mathchardef\bmcomp="2\mtbsy@@42 \def\bmvec{\mathaccent"0\mtbsy@@45 }% \mathchardef\bmtriangleright="2\mtbsy@@46 \mathchardef\bmtriangleleft="2\mtbsy@@47 \mathchardef\bmcolon="6\mtbsy@@57 \mathchardef\bmsetdif="2\mtbsy@@58 \mathchardef\bmcupprod="2\mtbsy@@59 \mathchardef\bmcapprod="2\mtbsy@@5A \mathchardef\bmcup="2\mtbsy@@5B \mathchardef\bmcap="2\mtbsy@@5C \mathchardef\bmuplus="2\mtbsy@@5D \mathchardef\bmwedge="2\mtbsy@@5E \let\bmland=\bmwedge \mathchardef\bmvee="2\mtbsy@@5F \let\bmlor=\bmvee \mathchardef\bmvdash="3\mtbsy@@60 \mathchardef\bmdashv="3\mtbsy@@61 \def\bmlfloor{\delimiter"4\mtbsy@@62\mtbex@@04 }% \def\bmrfloor{\delimiter"5\mtbsy@@63\mtbex@@05 }% \def\bmlceil{\delimiter"4\mtbsy@@64\mtbex@@06 }% \def\bmrceil{\delimiter"5\mtbsy@@65\mtbex@@07 }% \def\bmlbrace{\delimiter"4\mtbsy@@66\mtbex@@08 }% \def\bmrbrace{\delimiter"5\mtbsy@@67\mtbex@@09 }% \def\bmlangle{\delimiter"4\mtbsy@@68\mtbex@@0A }% \def\bmrangle{\delimiter"5\mtbsy@@69\mtbex@@0B }% \mathchardef\bmmid="3\mtbsy@@6A \def\bmvert{\delimiter"\mtbsy@@6A\mtbex@@0C }% \mathchardef\bmparallel="3\mtbsy@@6B \def\bmVert{\delimiter"\mtbsy@@6B\mtbex@@0D }% \def\bmupdownarrow{\delimiter"3\mtbsy@@6C\mtbex@@3F }% \def\bmUpdownarrow{\delimiter"3\mtbsy@@6D\mtbex@@77 }% \def\bmbackslash{\delimiter"\mtbsy@@6E\mtbex@@0F }% \def\bmarrowvert{\delimiter"\mtbsy@@6A\mtbex@@3C }% \def\bmArrowvert{\delimiter"\mtbsy@@6\mtbex@@3D }% \def\bmlgroup{\delimiter"4\mtbmi@@2E\mtbex@@3A }% \def\bmrgroup{\delimiter"5\mtbmi@@2F\mtbex@@3B }% \def\bmbracevert{\delimiter"\mtbex@@8D\mtbex@@8D }% \mathchardef\bmsetminus="2\mtbsy@@6E \mathchardef\bmwr="2\mtbsy@@6F \def\bmsurd{{\mathchar"1\mtbsy@@70}}% \mathchardef\bmamalg="2\mtbsy@@71 \mathchardef\bmnabla="0\mtbsy@@72 \mathchardef\bmsmallint="1\mtbsy@@73 \mathchardef\bmsqcup="2\mtbsy@@74 \mathchardef\bmsqcap="2\mtbsy@@75 \mathchardef\bmsqsubseteq="3\mtbsy@@76 \mathchardef\bmsqsupseteq="3\mtbsy@@77 \mathchardef\bmclubsuit="0\mtbsy@@7C \mathchardef\bmdiamondsuit="0\mtbsy@@7D \mathchardef\bmheartsuit="0\mtbsy@@7E \mathchardef\bmspadesuit="0\mtbsy@@7F \mathchardef\bmhbar="0\mtbsy@@84 \mathchardef\bmnotin="3\mtbsy@@85 \mathchardef\bmangle="0\mtbsy@@86 \mathchardef\bmdoteq="3\mtbsy@@87 \mathchardef\bmmodels="3\mtbsy@@88 \mathchardef\bmbowtie="3\mtbsy@@89 \mathchardef\bmcong="3\mtbsy@@8A \mathchardef\bmhookleftarrow="3\mtbsy@@8B \mathchardef\bmhookrightarrow="3\mtbsy@@8C \mathchardef\bmlongleftarrow="3\mtbsy@@8D \mathchardef\bmlongrightarrow="3\mtbsy@@8E \mathchardef\bmLongleftarrow="3\mtbsy@@8F \mathchardef\bmLongrightarrow="3\mtbsy@@90 \mathchardef\bmmapsto="3\mtbsy@@91 \mathchardef\bmlongmapsto="3\mtbsy@@92 \mathchardef\bmlongleftrightarrow="3\mtbsy@@93 \mathchardef\bmLongleftrightarrow="3\mtbsy@@94 \def\bmiff{\;\bmLongleftrightarrow\;}% \mathchardef\bmrightleftharpoons="3\mtbsy@@95 \mathchardef\bmnotless="3\mtbsy@@96 \mathchardef\bmnotleq="3\mtbsy@@97 \mathchardef\bmnotprec="3\mtbsy@@98 \mathchardef\bmnotpreceq="3\mtbsy@@99 \mathchardef\bmnotsubset="3\mtbsy@@9A \mathchardef\bmnotsubseteq="3\mtbsy@@9B \mathchardef\bmnotsqsubseteq="3\mtbsy@@9C \mathchardef\bmnotgr="3\mtbsy@@9D \mathchardef\bmnotgeq="3\mtbsy@@9E \mathchardef\bmnotsucc="3\mtbsy@@9F \mathchardef\bmnotsucceq="3\mtbsy@@ A0 \mathchardef\bmnotsupset="3\mtbsy@@ A1 \mathchardef\bmnotsupseteq="3\mtbsy@@ A2 \mathchardef\bmnotsqsupseteq="3\mtbsy@@ A3 \mathchardef\bmneq="3\mtbsy@@ A4 \let\bmne=\bmneq \mathchardef\bmnotequiv="3\mtbsy@@ A5 \mathchardef\bmnotsim="3\mtbsy@@ A6 \mathchardef\bmnotsimeq="3\mtbsy@@ A7 \mathchardef\bmnotapprox="3\mtbsy@@ A8 \mathchardef\bmnotcong="3\mtbsy@@ A9 \mathchardef\bmnotasymp="3\mtbsy@@ AA \def\bmgrave{\ifnum\fam=\m@ne\mathaccent"0\mtbsy@@4A \else\@grave@\fi}% \def\bmacute{\ifnum\fam=\m@ne\mathaccent"0\mtbsy@@4B \else\@acute@\fi}% \def\bmcheck{\ifnum\fam=\m@ne\mathaccent"0\mtbsy@@4C \else\@check@\fi}% \def\bmbreve{\ifnum\fam=\m@ne\mathaccent"0\mtbsy@@4D \else\@breve@\fi}% \def\bmbar{\ifnum\fam=\m@ne\mathaccent"0\mtbsy@@4E \else\@bar@\fi}% \def\bmhat{\ifnum\fam=\m@ne\mathaccent"0\mtbsy@@4F \else\@hat@\fi}% \def\bmdot{\ifnum\fam=\m@ne\mathaccent"0\mtbsy@@50 \else\@dot@\fi}% \def\bmtilde{\ifnum\fam=\m@ne\mathaccent"0\mtbsy@@51 \else\@tilde@\fi}% \def\bmddot{\ifnum\fam=\m@ne\mathaccent"0\mtbsy@@52 \else\@ddot@\fi}% \def\bmdotup{\mathaccent"0\mtbsy@@54 }% \def\bmddotup{\mathaccent"0\mtbsy@@55 }% \def\bmoacc{\mathaccent"0\mtbsy@@56 }% \def\bmdddot{\mathaccent"0\mtbsy@@ AB }% \def\bmddddot{\mathaccent"0\mtbsy@@ AC }% \def\bmdddotup{\mathaccent"0\mtbsy@@ AD}% \def\bmddddotup{\mathaccent"0\mtbsy@@ AE }% \def\bmrelbar{\mathrel{\smash{\bm-}}}% \mathchardef\bmhslash="\mtbsy@@ AF \mathchardef\bmsimarrow="2\mtbsy@@ B0 \mathchardef\bmdigamma="0\mtbsy@@ B1 \mathchardef\bmvarland="2\mtbsy@@ B2 \mathchardef\bmcontraction="2\mtbsy@@ B3 \mathchardef\bmcoloneq="2\mtbsy@@ B4 \mathchardef\bmeqcolon="2\mtbsy@@ B5 \mathchardef\bmhateq="2\mtbsy@@ B6 \ifx\amstexloaded@\relax \Makeacc@\bmHat{\mtbsy@@4F}% \Makeacc@\bmCheck{\mtbsy@@4C}% \Makeacc@\bmTilde{\mtbsy@@51}% \Makeacc@\bmAcute{\mtbsy@@4B}% \Makeacc@\bmGrave{\mtbsy@@4A}% \Makeacc@\bmDot{\mtbsy@@50}% \Makeacc@\bmDdot{\mtbsy@@52}% \Makeacc@\bmDotup{\mtbsy@@54}% \Makeacc@\bmDdotup{\mtbsy@@55}% \Makeacc@\bmBreve{\mtbsy@@4D}% \Makeacc@\bmBar{\mtbsy@@4E}% \Makeacc@\bmOacc{\mtbsy@@56}% \Makeacc@\bmDddot{\mtbsy@@ AB}% \Makeacc@\bmDdddot{\mtbsy@@ AC}% \Makeacc@\bmDddotup{\mtbsy@@ AD}% \Makeacc@\bmDdddotup{\mtbsy@@ AE}% \fi \def\bmwbar{\mathaccent"0\mtbsy@@78 }% \def\bmwwbar{\mathaccent"0\mtbsy@@53 }% \def\bmwhat{\mathaccent"0\mtbsy@@79 }% \def\bmwtilde{\mathaccent"0\mtbsy@@7A }% \def\bmwcheck{\mathaccent"0\mtbsy@@7B }% \def\bmwwhat{\mathaccent"0\mtbex@@80 }% \def\bmwwtilde{\mathaccent"0\mtbex@@81 }% \def\bmwwcheck{\mathaccent"0\mtbex@@7D }% \def\bmwidehat{\mathaccent"0\mtbex@@62 }% \def\bmwidetilde{\mathaccent"0\mtbex@@65 }% \def\bmwidecheck{\mathaccent"0\mtbex@@7A }% \ifx\amstexloaded@\relax \Makeacc@\bmWbar{\mtbsy@@78 }% \Makeacc@\bmWwbar{\mtbsy@@53 }% \Makeacc@\bmWhat{\mtbsy@@79 }% \Makeacc@\bmWtilde{\mtbsy@@7A }% \Makeacc@\bmWcheck{\mtbsy@@7B }% \Makeacc@\bmWwhat{\mtbex@@80 }% \Makeacc@\bmWwtilde{\mtbex@@81 }% \Makeacc@\bmWwcheck{\mtbex@@7D }% \fi \mathchardef\bmcoprod="1\mtbex@@60 \mathchardef\bmbigvee="1\mtbex@@57 \mathchardef\bmbigwedge="1\mtbex@@56 \mathchardef\bmbiguplus="1\mtbex@@55 \mathchardef\bmbigcap="1\mtbex@@54 \mathchardef\bmbigcup="1\mtbex@@53 \mathchardef\bmintop="1\mtbex@@52 \def\bmint{\bmintop\nolimits}% \mathchardef\bmprod="1\mtbex@@51 \mathchardef\bmsum="1\mtbex@@50 \mathchardef\bmbigotimes="1\mtbex@@4E \mathchardef\bmbigoplus="1\mtbex@@4C \mathchardef\bmbigodot="1\mtbex@@4A \mathchardef\bmointop="1\mtbex@@48 \def\bmoint{\ointop\nolimits}% \mathchardef\bmiintop="1\mtbex@@92 \def\bmiint{\bmiintop\nolimits}% \mathchardef\bmiiintop="1\mtbex@@94 \def\bmiiint{\bmiiintop\nolimits}% \mathchardef\bmoiintop="1\mtbex@@96 \def\bmoiint{\bmoiintop\nolimits}% \mathchardef\bmoiiintop="1\mtbex@@98 \def\bmoiiint{\bmoiiintop\nolimits}% \mathchardef\bmcwointop="1\mtbex@@9A \def\bmcwoint{\bmcwointop\nolimits}% \mathchardef\bmawointop="1\mtbex@@9C \def\bmawoint{\bmawointop\nolimits}% \mathchardef\bmcwintop="1\mtbex@@9E \def\bmcwint{\bmcwintop\nolimits}% \mathchardef\bmbarintop="1\mtbex@@ AA \def\bmbarint{\bmbarintop\nolimits}% \mathchardef\bmslashintop="1\mtbex@@ AC \def\bmslashint{\bmslashintop\nolimits}% \mathchardef\bmbigvarland="1\mtbex@@ A6 \mathchardef\bmbigast="1\mtbex@@ A8 \mathchardef\bmbigsqcup="1\mtbex@@46 \def\bmlmoustache{\delimiter"4\mtbex@@7A\mtbex@@40 }% \def\bmrmoustahce{\delimiter"5\mtbex@@7B\mtbex@@41 }% \def\bmlgroup{\delimiter"4\mtbmi@@2E\mtbex@@3A }% \def\bmrgroup{\delimiter"5\mtbmi@@2F\mtbex@@3B }% \def\bmbracevert{\delimiter"\mtbex@@3E\mtbex@@3E }% \def\bmchoose{\atopwithdelims\bmlparens\bmrparens}% \def\bmbrack{\atopwithdelims\bmlbrack\bmrbrack}% \def\bmbrace{\atopwithdelims\bmlbrace\bmrbrace}% } \def\boldmath{% \textfont\z@\the\textfont\bffam \scriptfont\z@\the\scriptfont\bffam \scriptscriptfont\z@\the\scriptscriptfont\bffam \textfont\@ne\the\textfont\mtbmi@ \scriptfont\@ne\the\scriptfont\mtbmi@ \scriptscriptfont\@ne\the\scriptscriptfont\mtbmi@ \textfont\tw@\the\textfont\mtbsy@ \scriptfont\tw@\the\scriptfont\mtbsy@ \scriptscriptfont\tw@\the\scriptscriptfont\mtbsy@ \textfont\thr@@\the\textfont\mtbex@ \scriptfont\thr@@\the\scriptfont\mtbex@ \scriptscriptfont\thr@@\the\scriptscriptfont\mtbex@ \ifx\p@renwd\undefined@ \else \setbox\z@\hbox{\the\textfont\mtbex@ B}\p@renwd\wd\z@ \fi \ifx\amstexloaded@\relax \buffer@\fontdimen13\the\textfont\mtbex@ \buffer\buffer@ \fi \let\lmoustache\bmlmoustache % these 5 delimiters have different definitions for mt2exa ! \let\rmoustache\bmrmoustahce \let\lgroup\bmlgroup \let\rgroup\bmrgroup \let\bracevert\bmbracevert \let\SQRT\sqrt \def\ROOT##1\OF##2{\root##1\of{##2}}% \def\PARENS##1{\left(##1\right)}% \def\LEFTRIGHT##1##2##3{\left##1##2\right##3}% \let\widehat\bmwidehat % these 3 wide accents have different definitions for mt2exa ! \let\widetilde\bmwidetilde \let\widecheck\bmwidecheck} % Heavy math \def\hm{\futurelet\next\hm@} \def\hm@{\ifx\next'\def\next@##1{\hprime@}\else \ifx\next\yen\def\next@\yen{\ifmmode\mathchar"0\mthsya@@55\relax\else \mathhexbox\mthsy@@55\relax\fi}\else \ifcat\noexpand\next0\def\next@{\hm@@}\else \def\next@{\errmessage{Invalid use of \string\hm}}\fi\fi\fi \next@} \def\hma@@#1"#2#3#4#5\hma@@{\def\next@{#5}% \ifx\next@\empty@ \mathchar"0\mthsya@@#3#4\relax \else \mathchar"#2\mthsya@@#4#5\relax \fi} \newcount\firsthprimesep \firsthprimesep=2 \def\hprime@{^\bgroup\firstprime@true\hprim@s} \def\hprim@s{\iffirstprime@\kern\firsthprimesep\tenthpt@\fi \hmprime\firstprime@false\futurelet\next\hpr@m@s} \newcount\nonhprimesep \nonhprimesep=7 \def\hpr@m@s{\ifx'\next\def\next@##1{\hprim@s}\else \ifx^\next\def\next@##1##2{\kern\nonhprimesep\tenthpt@##2\egroup}\else \let\next@\egroup\fi\fi\next@} \def\hm@@#1{% \ifx#1+\mathchar"2\mthsy@@43\relax \else\ifx#1-\mathchar"2\mthsy@@00\relax \else\ifx#1=\mathchar"3\mthsy@@44\relax \else\ifx#1<\mathchar"3\mthsy@@ EA\relax \else\ifx#1>\mathchar"3\mthsy@@ EC\relax \else\ifx#1/\mathchar"0\mthsy@@ EB\relax \else\ifx#1(\mathchar"4\mthsy@@ E6\relax \else\ifx#1)\mathchar"5\mthsy@@ E7\relax \else\ifx#1[\mathchar"4\mthsy@@ F8\relax \else\ifx#1]\mathchar"5\mthsy@@ F9\relax \else\ifx#1|\mathchar"0\mthsy@@6A\relax \else\ifx#1*\mathchar"2\mthsy@@03\relax \else\ifx#1.\mathchar"0\mthsy@@ E8\relax \else\ifx#1,\mathchar"6\mthsy@@ E9\relax \else\ifx#1;\mathchar"6\mthsy@@49\relax \else\ifx#1:\mathchar"3\mthsy@@57\relax \else\ifx#1!\mathchar"5\mthsy@@ F6\relax \else\ifx#1?\mathchar"5\mthsy@@ F7\relax \else\errmessage{Invalid use of \string\hm}% \fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi} \def\hmdefs@{% \mathchardef\hmleftharpoonup="3\mthsy@@ E0 \mathchardef\hmleftharpoondown="3\mthsy@@ E1 \mathchardef\hmrightharpoonup="3\mthsy@@ E2 \mathchardef\hmrightharpoondown="3\mthsy@@ E3 \def\hmlparens{\delimiter"\mthsy@@ E6\mthex@@00 }% \def\hmrparens{\delimiter"\mthsy@@ E7\mthex@@01 }% \def\hmslash{\delimiter"\mthsy@@ EB\mthex@@0E }% \mathchardef\hmstar="2\mthsy@@ ED \mathchardef\hmpartial="0\mthsy@@ EE \mathchardef\hmflat="0\mthsy@@ EF \mathchardef\hmnatural="0\mthsy@@ F0 \mathchardef\hmsharp="0\mthsy@@ F1 \mathchardef\hmsmile="3\mthsy@@ F2 \mathchardef\hmfrown="3\mthsy@@ F3 \mathchardef\hmell="0\mthsy@@ F4 \mathchardef\hmwp="0\mthsy@@ F5 \def\hmlbrack{\delimiter"4\mthsy@@ F8\mthex@@02 }% \def\hmrbrack{\delimiter"5\mthsy@@ F9\mthex@@03 }% \mathchardef\hmdagger="2\mthsy@@ FA \mathchardef\hmddagger="2\mthsy@@ FB \mathchardef\hmcdot="2\mthsy@@01 \mathchardef\hmtimes="2\mthsy@@02 \mathchardef\hmast="2\mthsy@@03 \mathchardef\hmdiv="2\mthsy@@04 \mathchardef\hmDiamond="2\mthsy@@05 \mathchardef\hmpm="2\mthsy@@06 \mathchardef\hmmp="2\mthsy@@07 \mathchardef\hmoplus="2\mthsy@@08 \mathchardef\hmominus="2\mthsy@@09 \mathchardef\hmotimes="2\mthsy@@0A \mathchardef\hmoslash="2\mthsy@@0B \mathchardef\hmodot="2\mthsy@@0C \mathchardef\hmbigcirc="2\mthsy@@0D \mathchardef\hmcirc="2\mthsy@@0E \mathchardef\hmbullet="2\mthsy@@0F \mathchardef\hmasymp="3\mthsy@@10 \mathchardef\hmequiv="3\mthsy@@11 \mathchardef\hmsubseteq="3\mthsy@@12 \mathchardef\hmsupseteq="3\mthsy@@13 \mathchardef\hmleq="3\mthsy@@14 \let\hmle=\hmleq \mathchardef\hmgeq="3\mthsy@@15 \let\hmge=\hmgeq \mathchardef\hmpreceq="3\mthsy@@16 \mathchardef\hmsucceq="3\mthsy@@17 \mathchardef\hmsim="3\mthsy@@18 \mathchardef\hmapprox="3\mthsy@@19 \mathchardef\hmsubset="3\mthsy@@1A \mathchardef\hmsupset="3\mthsy@@1B \mathchardef\hmll="3\mthsy@@1C \mathchardef\hmgg="3\mthsy@@1D \mathchardef\hmprec="3\mthsy@@1E \mathchardef\hmsucc="3\mthsy@@1F \mathchardef\hmcircdashbullet="3\mthsy@@ B7 \mathchardef\hmbulletdashcirc="3\mthsy@@ B8 \mathchardef\hmleftarrow="3\mthsy@@20 \let\hmgets=\hmleftarrow \mathchardef\hmrightarrow="3\mthsy@@21 \let\hmto=\hmrightarrow \def\hmuparrow{\delimiter"3\mthsy@@22\mthex@@78 }% \def\hmdownarrow{\delimiter"3\mthsy@@23\mthex@@79 }% \mathchardef\hmleftrightarrow="3\mthsy@@24 \def\hmuparrow{\delimiter"3\mthsy@@22378 }% \def\hmdownarrow{\delimiter"3\mthsy@@23379 }% \mathchardef\hmnearrow="3\mthsy@@25 \mathchardef\hmsearrow="3\mthsy@@26 \mathchardef\hmsimeq="3\mthsy@@27 \mathchardef\hmLeftarrow="3\mthsy@@28 \mathchardef\hmRightarrow="3\mthsy@@29 \def\hmUparrow{\delimiter"3\mthsy@@2A\mthex@@7E }% \def\hmDownarrow{\delimiter"3\mthsy@@2B\mthex@@7F }% \mathchardef\hmLeftrightarrow="3\mthsy@@2C \mathchardef\hmnwarrow="3\mthsy@@2D \mathchardef\hmswarrow="3\mthsy@@2E \mathchardef\hmpropto="3\mthsy@@2F \mathchardef\hmprime="0\mthsy@@30 \mathchardef\hminfty="0\mthsy@@31 \mathchardef\hmin="3\mthsy@@32 \mathchardef\hmni="3\mthsy@@33 \let\hmowns=\hmni \mathchardef\hmbigtriangleup="2\mthsy@@34 \mathchardef\hmtriangle="0\mthsy@@34 \mathchardef\hmbigtriangledown="2\mthsy@@35 \mathchardef\hmnot="3\mthsy@@36 \mathchardef\hmmapstochar="3\mthsy@@37 \mathchardef\hmforall="0\mthsy@@38 \mathchardef\hmexists="0\mthsy@@39 \mathchardef\hmneg="0\mthsy@@3A \let\lnot=\neg \mathchardef\hmemptyset="0\mthsy@@3B \mathchardef\hmRe="0\mthsy@@3C \mathchardef\hmIm="0\mthsy@@3D \mathchardef\hmtop="0\mthsy@@3E \mathchardef\hmbot="0\mthsy@@3F \mathchardef\hmperp="3\mthsy@@3F \mathchardef\hmaleph="0\mthsy@@40 \mathchardef\hmcomp="2\mthsy@@42 \def\hmvec{\mathaccent"0\mthsy@@45 }% \mathchardef\hmtriangleright="2\mthsy@@46 \mathchardef\hmtriangleleft="2\mthsy@@47 \mathchardef\hmcolon="6\mthsy@@57 \mathchardef\hmsetdif="2\mthsy@@58 \mathchardef\hmcupprod="2\mthsy@@59 \mathchardef\hmcapprod="2\mthsy@@5A \mathchardef\hmcup="2\mthsy@@5B \mathchardef\hmcap="2\mthsy@@5C \mathchardef\hmuplus="2\mthsy@@5D \mathchardef\hmwedge="2\mthsy@@5E \let\hmland=\hmwedge \mathchardef\hmvee="2\mthsy@@5F \let\hmlor=\hmvee \mathchardef\hmvdash="3\mthsy@@60 \mathchardef\hmdashv="3\mthsy@@61 \def\hmlfloor{\delimiter"4\mthsy@@62\mthex@@04 }% \def\hmrfloor{\delimiter"5\mthsy@@63\mthex@@05 }% \def\hmlceil{\delimiter"4\mthsy@@64\mthex@@06 }% \def\hmrceil{\delimiter"5\mthsy@@65\mthex@@07 }% \def\hmlbrace{\delimiter"4\mthsy@@66\mthex@@08 }% \def\hmrbrace{\delimiter"5\mthsy@@67\mthex@@09 }% \def\hmlangle{\delimiter"4\mthsy@@68\mthex@@0A }% \def\hmrangle{\delimiter"5\mthsy@@69\mthex@@0B }% \mathchardef\hmmid="3\mthsy@@6A \def\hmvert{\delimiter"\mthsy@@6A\mthex@@0C }% \mathchardef\hmparallel="3\mthsy@@6B \def\hmVert{\delimiter"\mthsy@@6B\mthex@@0D }% \def\hmupdownarrow{\delimiter"3\mthsy@@6C\mthex@@3F }% \def\hmUpdownarrow{\delimiter"3\mthsy@@6D\mthex@@77 }% \def\hmbackslash{\delimiter"\mthsy@@6E\mthex@@0F }% \def\hmarrowvert{\delimiter"\mthsy@@6A\mthex@@3C }% \def\hmArrowvert{\delimiter"\mthsy@@6\mthex@@3D }% \def\hmlgroup{\delimiter"4\mthsy@@2E\mthex@@3A }% \def\hmrgroup{\delimiter"5\mthsy@@2F\mthex@@3B }% \def\hmbracevert{\delimiter"\mthex@@8D\mthex@@8D }% \mathchardef\hmsetminus="2\mthsy@@6E \mathchardef\hmwr="2\mthsy@@6F \def\hmsurd{{\mathchar"1\mthsy@@70}}% \mathchardef\hmamalg="2\mthsy@@71 \mathchardef\hmnabla="0\mthsy@@72 \mathchardef\hmsmallint="1\mthsy@@73 \mathchardef\hmsqcup="2\mthsy@@74 \mathchardef\hmsqcap="2\mthsy@@75 \mathchardef\hmsqsubseteq="3\mthsy@@76 \mathchardef\hmsqsupseteq="3\mthsy@@77 \mathchardef\hmclubsuit="0\mthsy@@7C \mathchardef\hmdiamondsuit="0\mthsy@@7D \mathchardef\hmheartsuit="0\mthsy@@7E \mathchardef\hmspadesuit="0\mthsy@@7F \mathchardef\hmnotin="3\mthsy@@85 \mathchardef\hmangle="0\mthsy@@86 \mathchardef\hmdoteq="3\mthsy@@87 \mathchardef\hmmodels="3\mthsy@@88 \mathchardef\hmbowtie="3\mthsy@@89 \mathchardef\hmcong="3\mthsy@@8A \mathchardef\hmhookleftarrow="3\mthsy@@8B \mathchardef\hmhookrightarrow="3\mthsy@@8C \mathchardef\hmlongleftarrow="3\mthsy@@8D \mathchardef\hmlongrightarrow="3\mthsy@@8E \mathchardef\hmLongleftarrow="3\mthsy@@8F \mathchardef\hmLongrightarrow="3\mthsy@@90 \mathchardef\hmmapsto="3\mthsy@@91 \mathchardef\hmlongmapsto="3\mthsy@@92 \mathchardef\hmlongleftrightarrow="3\mthsy@@93 \mathchardef\hmLongleftrightarrow="3\mthsy@@94 \def\hmiff{\;\hmLongleftrightarrow\;}% \mathchardef\hmrightleftharpoons="3\mthsy@@95 \mathchardef\hmnotless="3\mthsy@@96 \mathchardef\hmnotleq="3\mthsy@@97 \mathchardef\hmnotprec="3\mthsy@@98 \mathchardef\hmnotpreceq="3\mthsy@@99 \mathchardef\hmnotsubset="3\mthsy@@9A \mathchardef\hmnotsubseteq="3\mthsy@@9B \mathchardef\hmnotsqsubseteq="3\mthsy@@9C \mathchardef\hmnotgr="3\mthsy@@9D \mathchardef\hmnotgeq="3\mthsy@@9E \mathchardef\hmnotsucc="3\mthsy@@9F \mathchardef\hmnotsucceq="3\mthsy@@ A0 \mathchardef\hmnotsupset="3\mthsy@@ A1 \mathchardef\hmnotsupseteq="3\mthsy@@ A2 \mathchardef\hmnotsqsupseteq="3\mthsy@@ A3 \mathchardef\hmneq="3\mthsy@@ A4 \let\hmne=\hmneq \mathchardef\hmnotequiv="3\mthsy@@ A5 \mathchardef\hmnotsim="3\mthsy@@ A6 \mathchardef\hmnotsimeq="3\mthsy@@ A7 \mathchardef\hmnotapprox="3\mthsy@@ A8 \mathchardef\hmnotcong="3\mthsy@@ A9 \mathchardef\hmnotasymp="3\mthsy@@ AA \mathchardef\hmangle="2\mthsy@@86 \mathchardef\hmdigamma="0\mthsy@@ B1 \def\hmgrave{\ifnum\fam=\m@ne\mathaccent"0\mthsy@@4A \else\@grave@\fi}% \def\hmacute{\ifnum\fam=\m@ne\mathaccent"0\mthsy@@4B \else\@acute@\fi}% \def\hmcheck{\ifnum\fam=\m@ne\mathaccent"0\mthsy@@4C \else\@check@\fi}% \def\hmbreve{\ifnum\fam=\m@ne\mathaccent"0\mthsy@@4D \else\@breve@\fi}% \def\hmbar{\ifnum\fam=\m@ne\mathaccent"0\mthsy@@4E \else\@bar@\fi}% \def\hmhat{\ifnum\fam=\m@ne\mathaccent"0\mthsy@@4F \else\@hat@\fi}% \def\hmdot{\ifnum\fam=\m@ne\mathaccent"0\mthsy@@50 \else\@dot@\fi}% \def\hmtilde{\ifnum\fam=\m@ne\mathaccent"0\mthsy@@51 \else\@tilde@\fi}% \def\hmddot{\ifnum\fam=\m@ne\mathaccent"0\mthsy@@52 \else\@ddot@\fi}% \def\hmdotup{\mathaccent"0\mthsy@@54 }% \def\hmddotup{\mathaccent"0\mthsy@@55 }% \def\hmoacc{\mathaccent"0\mthsy@@56 }% \def\hmdddot{\mathaccent"0\mthsy@@ AB }% \def\hmddddot{\mathaccent"0\mthsy@@ AC }% \def\hmdddotup{\mathaccent"0\mthsy@@ AD }% \def\hmddddotup{\mathaccent"0\mthsy@@ AE }% \def\hmrelbar{\mathrel{\smash{\hm-}}}% \mathchardef\hmsimarrow="2\mthsy@@ B0 \mathchardef\hmdigamma="0\mthsy@@ B1 \mathchardef\hmvarland="2\mthsy@@ B2 \mathchardef\hmcontraction="2\mthsy@@ B3 \mathchardef\hmcoloneq="2\mthsy@@ B4 \mathchardef\hmeqcolon="2\mthsy@@ B5 \mathchardef\hmhateq="2\mthsy@@ B6 \ifx\amstexloaded@\relax \Makeacc@\hmHat{\mthsy@@4F}% \Makeacc@\hmCheck{\mthsy@@4C}% \Makeacc@\hmTilde{\mthsy@@51}% \Makeacc@\hmAcute{\mthsy@@4B}% \Makeacc@\hmGrave{\mthsy@@4A}% \Makeacc@\hmDot{\mthsy@@50}% \Makeacc@\hmDdot{\mthsy@@52}% \Makeacc@\hmDotup{\mthsy@@54}% \Makeacc@\hmDdotup{\mthsy@@55}% \Makeacc@\hmBreve{\mthsy@@4D}% \Makeacc@\hmBar{\mthsy@@4E}% \Makeacc@\hmOacc{\mthsy@@56}% \Makeacc@\hmDddot{\mthsy@@ AB}% \Makeacc@\hmDdddot{\mthsy@@ AC}% \Makeacc@\hmDddotup{\mthsy@@ AD}% \Makeacc@\hmDdddotup{\mthsy@@ AE}% \fi \def\hmwbar{\mathaccent"0\mthsy@@78 }% \def\hmwwbar{\mathaccent"0\mthsy@@53 }% \def\hmwhat{\mathaccent"0\mthsy@@79 }% \def\hmwtilde{\mathaccent"0\mthsy@@7A }% \def\hmwcheck{\mathaccent"0\mthsy@@7B }% \def\hmwwhat{\mathaccent"0\mthex@@80 }% \def\hmwwtilde{\mathaccent"0\mthex@@81 }% \def\hmwwcheck{\mathaccent"0\mthex@@7D }% \def\hmwidehat{\mathaccent"0\mthex@@62 }% \def\hmwidetilde{\mathaccent"0\mthex@@65 }% \def\hmwidecheck{\mathaccent"0\mthex@@7A }% \ifx\amstexloaded@\relax \Makeacc@\hmWbar{\mthsy@@78}% \Makeacc@\hmWwbar{\mthsy@@53}% \Makeacc@\hmWhat{\mthsy@@79}% \Makeacc@\hmWtilde{\mthsy@@7A}% \Makeacc@\hmWcheck{\mthsy@@7B}% \Makeacc@\hmWwhat{\mthex@@80}% \Makeacc@\hmWwtilde{\mthex@@81}% \Makeacc@\hmWwcheck{\mthex@@7D}% \fi \mathchardef\hmcoprod="1\mthex@@60 \mathchardef\hmbigvee="1\mthex@@57 \mathchardef\hmbigwedge="1\mthex@@56 \mathchardef\hmbiguplus="1\mthex@@55 \mathchardef\hmbigcap="1\mthex@@54 \mathchardef\hmbigcup="1\mthex@@53 \mathchardef\hmintop="1\mthex@@52 \def\hmint{\hmintop\nolimits}% \mathchardef\hmprod="1\mthex@@51 \mathchardef\hmsum="1\mthex@@50 \mathchardef\hmbigotimes="1\mthex@@4E \mathchardef\hmbigoplus="1\mthex@@4C \mathchardef\hmbigodot="1\mthex@@4A \mathchardef\hmointop="1\mthex@@48 \def\hmoint{\ointop\nolimits}% \mathchardef\hmointop="1\mthex@@48 \def\hmoint{\ointop\nolimits}% \mathchardef\hmiintop="1\mthex@@92 \def\hmiint{\hmiintop\nolimits}% \mathchardef\hmiiintop="1\mthex@@94 \def\hmiiint{\hmiiintop\nolimits}% \mathchardef\hmoiintop="1\mthex@@96 \def\hmoiint{\hmoiintop\nolimits}% \mathchardef\hmoiiintop="1\mthex@@98 \def\hmoiiint{\hmoiiintop\nolimits}% \mathchardef\hmcwointop="1\mthex@@9A \def\hmcwoint{\hmcwointop\nolimits}% \mathchardef\hmawointop="1\mthex@@9C \def\hmawoint{\hmawointop\nolimits}% \mathchardef\hmcwintop="1\mthex@@9E \def\hmcwint{\hmcwintop\nolimits}% \mathchardef\hmbarintop="1\mthex@@ AA \def\hmbarint{\hmbarintop\nolimits}% \mathchardef\hmslashintop="1\mthex@@ AC \def\hmslashint{\hpmslashintop\nolimits}% \mathchardef\hmbigvarland="1\mthex@@ A6 \mathchardef\hmbigast="1\mthex@@ A8 \mathchardef\hmbigsqcup="1\mthex@@46 \def\hmlmoustache{\delimiter"4\mthex@@7A\mthex@@40 }% \def\hmrmoustahce{\delimiter"5\mthex@@7B\mthex@@41 }% \def\hmlgroup{\delimiter"4\mthsy@@2E\mthex@@3A }% \def\hmrgroup{\delimiter"5\mthsy@@2F\mthex@@3B }% \def\hmbracevert{\delimiter"\mthex@@3E\mthex@@3E }% \def\hmchoose{\atopwithdelims\hmlparens\hmrparens}% \def\hmbrack{\atopwithdelims\hmlbrack\hmrbrack}% \def\hmbrace{\atopwithdelims\hmlbrace\hmrbrace}% } \def\heavymath{% \textfont\@ne\the\textfont\z@ \scriptfont\@ne\the\scriptfont\z@ \scriptscriptfont\@ne\the\scriptscriptfont\z@ \textfont\tw@\the\textfont\mthsy@ \scriptfont\tw@\the\scriptfont\mthsy@ \scriptscriptfont\tw@\the\scriptscriptfont\mthsy@ \textfont\thr@@\the\textfont\mthex@ \scriptfont\thr@@\the\scriptfont\mthex@ \scriptscriptfont\thr@@\the\scriptscriptfont\mthex@ \ifx\p@renwd\undefined@ \else \setbox\z@\hbox{\the\textfont\mthex@ B}\p@renwd\wd\z@ \fi \ifx\amstexloaded@\relax \buffer@\fontdimen13\the\textfont\mthex@ \buffer\buffer@ \fi \let\lmoustache\hmlmoustache \let\rmoustache\hmrmoustahce \let\lgroup\hmlgroup \let\rgroup\hmrgroup \let\bracevert\hmbracevert \let\SQRT\sqrt \def\ROOT##1\OF##2{\root##1\of{##2}}% \def\PARENS##1{\left(##1\right)}% \def\LEFTRIGHT##1##2##3{\left##1##2\right##3}% \let\widehat\hmwidehat % these 3 wide accents have different definition for mt2exa ! \let\widetilde\hmwidetilde \let\widecheck\hmwidecheck } % We give definitions of the following so that the \ifx\next clauses in \bma and \hma % aren't confused if the ordinary mt2sya fonts aren't loaded. \def\nosya@#1{\errmessage{You haven't loaded a font with this symbol}} \def\ulcorner{\nosya@0} \def\urcorner{\nosya@1} \def\llcorner{\nosya@2} \def\rrcorner{\nosya@3} \def\checkmark{\nosya@4} \def\circledR{\nosya@5} \def\maltese{\nosya@6} \def\smallsetminus{\nosya@7} \def\leftrightharpoons{\nosya@8} \def\mtsyadef@#1#2#3#4 {\mathchardef#1="#2\mtsya@@#3#4} \def\syadefs@{\def\ulcorner{\delimiter"4\mtsya@@70\mtsya@@70 }% \def\urcorner{\delimiter"5\mtsya@@71\mtsya@@71 }% \def\llcorner{\delimiter"4\mtsya@@78\mtsya@@78 }% \def\lrcorner{\delimiter"5\mtsya@@79\mtsya@@79 }% \def\checkmark{\ifmmode\mathchar"\mtsya@@58\relax\else\mathhexbox\mtsya@@58\relax\fi}% \def\circledR{\ifmmode\mathchar"\mtsya@@72\relax\else\mathhexbox\mtsya@@72\relax\fi}% \def\maltese{\ifmmode\mathchar"\mtsya@@7A\relax\else\mathhexbox\mtsya@@7A\relax\fi}% \def\yen{\ifmmode\mathchar"\mtsya@@55\relax\else\mathhexbox\mtsya@@55\relax\fi}% \mtsyadef@\midshaft039 \mtsyadef@\rarrowhead04B \mtsyadef@\larrowhead04C \mtsyadef@\dashleftarrow0DB \mtsyadef@\dashrightarrow0DC \let\dasharrow\dashrightarrow \mtsyadef@\Diamond0DE \mtsyadef@\leadsto3DD \mtsyadef@\boxdot200 \mtsyadef@\boxplus201 \mtsyadef@\boxtimes202 \mtsyadef@\square003 \mtsyadef@\blacksquare004 \mtsyadef@\centerdot205 \mtsyadef@\lozenge006 \mtsyadef@\blacklozenge007 \mtsyadef@\circlearrowright308 \mtsyadef@\circlearrowleft309 \mtsyadef@\leftrightharpoons30B \mtsyadef@\boxminus20C \mtsyadef@\Vdash30D \mtsyadef@\Vvdash30E \mtsyadef@\vDash30F \mtsyadef@\twoheadrightarrow310 \mtsyadef@\twoheadleftarrow311 \mtsyadef@\leftleftarrows312 \mtsyadef@\rightrightarrows313 \mtsyadef@\upuparrows314 \mtsyadef@\downdownarrows315 \mtsyadef@\upharpoonright316 \let\restriction\upharpoonright \mtsyadef@\downharpoonright317 \mtsyadef@\upharpoonleft318 \mtsyadef@\downharpoonleft319 \mtsyadef@\rightarrowtail31A \mtsyadef@\leftarrowtail31B \mtsyadef@\leftrightarrows31C \mtsyadef@\rightleftarrows31D \mtsyadef@\Lsh31E \mtsyadef@\Rsh31F \mtsyadef@\rightsquigarrow320 \mtsyadef@\leftrightsquigarrow321 \mtsyadef@\looparrowleft322 \mtsyadef@\looparrowright323 \mtsyadef@\circeq324 \mtsyadef@\succsim325 \mtsyadef@\gtrsim326 \mtsyadef@\gtrapprox327 \mtsyadef@\multimap328 \mtsyadef@\therefore329 \mtsyadef@\because32A \mtsyadef@\doteqdot32B \let\Doteq\doteqdot \mtsyadef@\triangleq32C \mtsyadef@\precsim32D \mtsyadef@\lesssim32E \mtsyadef@\lessapprox32F \mtsyadef@\eqslantless330 \mtsyadef@\eqslantgtr331 \mtsyadef@\curlyeqprec332 \mtsyadef@\curlyeqsucc333 \mtsyadef@\preccurlyeq334 \mtsyadef@\leqq335 \mtsyadef@\leqslant336 \mtsyadef@\lessgtr337 \mtsyadef@\backprime038 \mtsyadef@\risingdotseq33A \mtsyadef@\fallingdotseq33B \mtsyadef@\succcurlyeq33C \mtsyadef@\geqq33D \mtsyadef@\geqslant33E \mtsyadef@\gtrless33F \mtsyadef@\sqsubset340 \mtsyadef@\sqsupset341 \mtsyadef@\vartriangleright342 \mtsyadef@\vartriangleleft343 \mtsyadef@\trianglerighteq344 \mtsyadef@\trianglelefteq345 \mtsyadef@\bigstar046 \mtsyadef@\between347 \mtsyadef@\blacktriangledown048 \mtsyadef@\blacktriangleright349 \mtsyadef@\blacktriangleleft34A \mtsyadef@\vartriangle34D \mtsyadef@\blacktriangle04E \mtsyadef@\triangledown04F \mtsyadef@\eqcirc350 \mtsyadef@\lesseqgtr351 \mtsyadef@\gtreqless352 \mtsyadef@\lesseqqgtr353 \mtsyadef@\gtreqqless354 \mtsyadef@\Rrightarrow356 \mtsyadef@\Lleftarrow357 \mtsyadef@\veebar259 \mtsyadef@\barwedge25A \mtsyadef@\doublebarwedge25B \mtsyadef@\measuredangle05D \mtsyadef@\sphericalangle05E \mtsyadef@\varpropto35F \mtsyadef@\smallsmile360 \mtsyadef@\smallfrown361 \mtsyadef@\Subset362 \mtsyadef@\Supset363 \mtsyadef@\Cup264 \let\doublecup\Cup \mtsyadef@\Cap265 \let\doublecap\Cap \mtsyadef@\curlywedge266 \mtsyadef@\curlyvee267 \mtsyadef@\leftthreetimes268 \mtsyadef@\rightthreetimes269 \mtsyadef@\subseteqq36A \mtsyadef@\supseteqq36B \mtsyadef@\bumpeq36C \mtsyadef@\Bumpeq36D \mtsyadef@\lll36E \let\llless\lll \mtsyadef@\ggg36F \let\gggtr\ggg \mtsyadef@\circledS073 \mtsyadef@\pitchfork374 \mtsyadef@\dotplus275 \mtsyadef@\backsim376 \mtsyadef@\backsimeq377 \mtsyadef@\complement07B \mtsyadef@\intercal27C \mtsyadef@\circledcirc27D \mtsyadef@\circledast27E \mtsyadef@\circleddash27F \mtsyadef@\lvertneqq380 \mtsyadef@\gvertneqq381 \mtsyadef@\nleq382 \mtsyadef@\ngeq383 \mtsyadef@\nless384 \mtsyadef@\ngtr385 \mtsyadef@\nprec386 \mtsyadef@\nsucc387 \mtsyadef@\lneqq388 \mtsyadef@\gneqq389 \mtsyadef@\nleqslant38A \mtsyadef@\ngeqslant38B \mtsyadef@\lneq38C \mtsyadef@\gneq38D \mtsyadef@\npreceq38E \mtsyadef@\nsucceq38F \mtsyadef@\precnsim390 \mtsyadef@\succnsim391 \mtsyadef@\lnsim392 \mtsyadef@\gnsim393 \mtsyadef@\nleqq394 \mtsyadef@\ngeqq395 \mtsyadef@\precneqq396 \mtsyadef@\succneqq397 \mtsyadef@\precnapprox398 \mtsyadef@\succnapprox399 \mtsyadef@\lnapprox39A \mtsyadef@\gnapprox39B \mtsyadef@\nsim39C \mtsyadef@\ncong39D \mtsyadef@\diagup09E \mtsyadef@\diagdown09F \mtsyadef@\varsubsetneq3A0 \mtsyadef@\varsupsetneq3A1 \mtsyadef@\nsubseteqq3A2 \mtsyadef@\nsupseteqq3A3 \mtsyadef@\subsetneqq3A4 \mtsyadef@\supsetneqq3A5 \mtsyadef@\varsubsetneqq3A6 \mtsyadef@\varsupsetneqq3A7 \mtsyadef@\subsetneq3A8 \mtsyadef@\supsetneq3A9 \mtsyadef@\nsubseteq3AA \mtsyadef@\nsupseteq3AB \mtsyadef@\nparallel3AC \mtsyadef@\nmid3AD \mtsyadef@\nshortmid3AE \mtsyadef@\nshortparallel3AF \mtsyadef@\nvdash3B0 \mtsyadef@\nVdash3B1 \mtsyadef@\nvDash3B2 \mtsyadef@\nVDash3B3 \mtsyadef@\ntrianglerighteq3B4 \mtsyadef@\ntrianglelefteq3B5 \mtsyadef@\ntriangleleft3B6 \mtsyadef@\ntriangleright3B7 \mtsyadef@\nleftarrow3B8 \mtsyadef@\nrightarrow3B9 \mtsyadef@\nLeftarrow3BA \mtsyadef@\nRightarrow3BB \mtsyadef@\nLeftrightarrow3BC \mtsyadef@\nleftrightarrow3BD \mtsyadef@\divideontimes2BE \mtsyadef@\varnothing0BF \mtsyadef@\nexists0C0 \mtsyadef@\Finv0C1 \mtsyadef@\Game0C2 \mtsyadef@\mho0C3 \mtsyadef@\eth0C4 \mtsyadef@\eqsim3C5 \mtsyadef@\beth0C6 \mtsyadef@\gimel0C7 \mtsyadef@\daleth0C8 \mtsyadef@\lessdot3C9 \mtsyadef@\gtrdot3CA \mtsyadef@\ltimes2CB \mtsyadef@\rtimes2CC \mtsyadef@\shortmid3CD \mtsyadef@\shortparallel3CE \let\smallsetminus=\setdif \mtsyadef@\thicksim3CF \mtsyadef@\thickapprox3D0 \mtsyadef@\approxeq3D1 \mtsyadef@\succapprox3D2 \mtsyadef@\precapprox3D3 \mtsyadef@\curvearrowleft3D4 \mtsyadef@\curvearrowright3D5 \mtsyadef@\undercurvearrowleft3E5 \mtsyadef@\undercurvearrowright3E6 \mtsyadef@\backepsilon3D6 \mtsyadef@\nsqsubset3D7 \mtsyadef@\nsqsupset3D8 \mtsyadef@\nsqsubseteq3D9 \mtsyadef@\nsqsupseteq3DA \mtsyadef@\updownarrows3DF \mtsyadef@\downuparrows3E0 \mtsyadef@\updownharpoons3E1 \mtsyadef@\downupharpoons3E2 \mtsyadef@\upupharpoons3E3 \mtsyadef@\downdownharpoons3E4 } \def\bma{\futurelet\next\bma@}% \def\bma@{% \ifx\next\ulcorner \def\next@\ulcorner{\delimiter"4\mtbsya@@70\mtbsya@@70 }% \else\ifx\next\urcorner \def\next@\urcorner{\delimiter"5\mtbsya@@71\mtbsya@@71 }% \else\ifx\next\llcorner \def\next@\llcorner{\delimiter"4\mtbsya@@78\mtbsya@@78 }% \else\ifx\next\lrcorner \def\next@\lrcorner{\delimiter"5\mtbsya@@79\mtbsya@@79 }% \else\ifx\next\checkmark \def\next@\checkmark{\ifmmode\mathchar"\mtbsya@@58\relax\else \mathhexbox\mtbsya@@58\relax\fi}% \else\ifx\next\circledR \def\next@\circledR{\ifmmode\mathchar"\mtbsya@@72\relax\else \mathhexbox\mtbsya@@72\relax\fi}% \else\ifx\next\maltese \def\next@\maltese{\ifmmode\mathchar"\mtbsya@@7A\relax\else \mathhexbox\mtbsya@@7A\relax\fi}% \else\ifx\next\smallsetminus \def\next@\smallsetminus{\mathchar"2\mtbsy@@58\relax}% \else\ifx\next\rightleftharpoons \def\next@\rightleftharpoons{\mathchar"3\mtbsy@@95\relax}% \else \def\next@##1{\expandafter\bma@@\meaning##1\bma@@}% \fi\fi\fi\fi\fi\fi\fi\fi\fi\next@}% \def\bma@@#1"#2#3#4#5\bma@@{\def\next@{#5}% \ifx\next@\empty@ \mathchar"0\mtbsya@@#3#4\relax \else \mathchar"#2\mtbsya@@#4#5\relax \fi} \def\hma{\futurelet\next\hma@}% \def\hma@{% \ifx\next\ulcorner \def\next@\ulcorner{\delimiter"4\mthsya@@70\mthsya@@70 }% \else\ifx\next\urcorner \def\next@\urcorner{\delimiter"5\mthsya@@71\mthsya@@71 }% \else\ifx\next\llcorner \def\next@\llcorner{\delimiter"4\mthsya@@78\mthsya@@78 }% \else\ifx\next\lrcorner \def\next@\lrcorner{\delimiter"5\mthsya@@79\mthsya@@79 }% \else\ifx\next\checkmark \def\next@\checkmark{\ifmmode\mathchar"\mthsya@@58\relax\else \mathhexbox\mthsya@@58\relax\fi}% \else\ifx\next\circledR \def\next@\circledR{\ifmmode\mathchar"\mthsya@@72\relax\else \mathhexbox\mthsya@@72\relax\fi}% \else\ifx\next\maltese \def\next@\maltese{\ifmmode\mathchar"\mthsya@@7A\relax\else \mathhexbox\mthsya@@7A\relax\fi}% \else\ifx\next\smallsetminus \def\next@\smallsetminus{\mathchar"2\mthsy@@58\relax}% \else\ifx\next\rightleftharpoons \def\next@\rightleftharpoons{\mathchar"3\mthsya@@95\relax}% \else \def\next@##1{\expandafter\hma@@\meaning##1\hma@@}% \fi\fi\fi\fi\fi\fi\fi\fi\fi\next@}% % The following definitions also insure that \ifx\next clauses in % things like \mfrak, \mscript aren't confused. \def\INVALID@#1{\errmessage{Invalid use of \string#1}} \def\altr{\INVALID@\altr} \def\altx{\INVALID@\altx} \def\alty{\INVALID@\alty} \def\altz{\INVALID@\altz} \def\altC{\INVALID@\altC} \def\altG{\INVALID@\altG} \def\altI{\INVALID@\altI} \def\altL{\INVALID@\altL} \def\altM{\INVALID@\altM} \def\altN{\INVALID@\altN} \def\altQ{\INVALID@\altQ} \def\altS{\INVALID@\altS} \def\altY{\INVALID@\altY} \def\altZ{\INVALID@\altZ} % Now come the definitions for substituting families \newif\ifsubstituting@ % used in the \load... definitions \def\eatfive@#1#2#3#4#5#6\eatfive@{\def\next@{#6}} \def\substitute#1\for#2{\let\BH@\relax \ifx#1\loadbm\let\BH@\empty@\fi \ifx#1\loadhm\let\BH@\empty@\fi \ifx#2\loadbm\let\BH@\empty@\fi \ifx#2\loadhm\let\BH@\empty@\fi \ifx\BH@\relax \expandafter\eatfive@\string#2\eatfive@ \expandafter\ifx\csname mt\next@ @\endcsname\undefined@ \errmessage{No previous \string#2} \else \expandafter\eatfive@\string#2\eatfive@ \edef\nameii@{\csname mt\next@ @\endcsname}% \edef\nameii@@{\csname mt\next@ @@\endcsname}% \expandafter\eatfive@\string#1\eatfive@ \expandafter\edef\csname mt\next@ @\endcsname{\number\nameii@}% \expandafter\edef\csname mt\next@ @@\endcsname{\hexnumber@\nameii@}% \substituting@true #1\relax \substituting@false \fi \else \errmessage{Can't use \string\loadbm\space or \string\loadhm\space in \string\substitute.} \fi } % Mechanism for loading and naming fonts. \def\FONT@#1#2{\expandafter\ifx\csname#1#2\endcsname\relax \expandafter\expandafter\expandafter\global \expandafter\font\csname#1#2\endcsname=#1#2\fi \def\next@{\let\next@}% \expandafter\next@\csname#1#2\endcsname} % \PSZ@ used just to make sure there are no extra spaces after the point size \def\PSZ@{\edef\nextiii@{ at \the\dimen@}} \def\MTPMI@#1#2#3{% \dimen@#1\relax\PSZ@ \FONT@{mt2mit}\nextiii@\textfont\@ne\next@\skewchar\next@45 \dimen@#2\relax\PSZ@ \FONT@{mt2mis}\nextiii@\scriptfont\@ne\next@\skewchar\next@45 \dimen@#3\relax\PSZ@ \FONT@{mt2mif}\nextiii@\scriptscriptfont\@ne\next@\skewchar\next@45\relax } \def\MTPSY@#1#2#3{% \dimen@#1\relax\PSZ@ \FONT@{mt2syt}\nextiii@\textfont\tw@\next@\skewchar\next@48 \dimen@#2\relax\PSZ@ \FONT@{mt2sys}\nextiii@\scriptfont\tw@\next@\skewchar\next@48 \dimen@#3\relax\PSZ@ \FONT@{mt2syf}\nextiii@\scriptscriptfont\tw@\next@\skewchar\next@48\relax } \def\MTPEX@#1{% \dimen@#1\relax\PSZ@ \FONT@{mt2exa}\nextiii@ \let\MTEXA@\next@ \textfont\thr@@\next@ \scriptfont\thr@@\next@ \scriptscriptfont\thr@@\next@ \ifx\p@renwd\undefined@ \else \setbox\z@\hbox{\next@ B}\p@renwd\wd\z@ \fi \ifx\amstexloaded@\relax \buffer@\fontdimen13 \next@ \buffer\buffer@ \fi \FONT@{mt2xl}\nextiii@\let\MTXL@\next@ \multiply\dimen@\tw@\PSZ@\FONT@{mt2exe}\nextiii@\let\MTEXE@\next@ \FONT@{mt2xxxl}\nextiii@\let\MTXXXL@\next@ \multiply\dimen@\tw@\PSZ@\FONT@{mt2exf}\nextiii@\let\MTEXF@\next@ \multiply\dimen@\tw@\PSZ@\FONT@{mt2exg}\nextiii@\let\MTEXG@\next@ } \newfam\mbffam \def\MTPMB@#1#2#3{% \dimen@#1\relax\PSZ@ \FONT@{mt2mbt}\nextiii@\textfont\mbffam\next@\skewchar\next@32 \dimen@#2\relax\PSZ@ \FONT@{mt2mbs}\nextiii@\scriptfont\mbffam\next@\skewchar\next@32 \dimen@#3\relax\PSZ@ \FONT@{mt2mbf}\nextiii@\scriptscriptfont\mbffam\next@\skewchar\next@32 } \def\mbf#1{{\fam\mbffam\relax#1}} \def\MTPBMI@#1#2#3{% \ifx\mtbmi@\undefined@ \alloc@@8\fam\chardef\sixt@@n\mtbmi@ \xdef\mtbmi@@{\hexnumber@\mtbmi@}% \fi \dimen@#1\relax\PSZ@ \FONT@{mt2bmit}\nextiii@\textfont\mtbmi@\next@\skewchar\next@45 \dimen@#2\relax\PSZ@ \FONT@{mt2bmis}\nextiii@\scriptfont\mtbmi@\next@\skewchar\next@45 \dimen@#3\relax\PSZ@ \FONT@{mt2bmif}\nextiii@\scriptscriptfont\mtbmi@\next@\skewchar\next@45\relax } \def\MTPBSY@#1#2#3{% \ifx\mtbsy@\undefined@ \alloc@@8\fam\chardef\sixt@@n\mtbsy@ \xdef\mtbsy@@{\hexnumber@\mtbsy@}% \fi \dimen@#1\relax\PSZ@ \FONT@{mt2bsyt}\nextiii@\textfont\mtbsy@\next@\skewchar\next@48 \dimen@#2\relax\PSZ@ \FONT@{mt2bsys}\nextiii@\scriptfont\mtbsy@\next@\skewchar\next@48 \dimen@#3\relax\PSZ@ \FONT@{mt2bsyf}\nextiii@\scriptscriptfont\mtbsy@\next@\skewchar\next@48\relax } \def\MTPBEX@#1{% \ifx\mtbex@\undefined@ \alloc@@8\fam\chardef\sixt@@n\mtbex@ \xdef\mtbex@@{\hexnumber@\mtbex@}% \fi \dimen@#1\relax\PSZ@ \FONT@{mt2bexa}\nextiii@ \textfont\mtbex@\next@ \scriptfont\mtbex@\next@ \scriptscriptfont\mtbex@\next@ } \def\MTPHSY@#1#2#3{% \ifx\mthsy@\undefined@ \alloc@@8\fam\chardef\sixt@@n\mthsy@ \xdef\mthsy@@{\hexnumber@\mthsy@}% \fi \dimen@#1\relax\PSZ@ \FONT@{mt2hsyt}\nextiii@\textfont\mthsy@\next@\skewchar\next@48 \dimen@#2\relax\PSZ@ \FONT@{mt2hsys}\nextiii@\scriptfont\mthsy@\next@\skewchar\next@48 \dimen@#3\relax\PSZ@ \FONT@{mt2hsyf}\nextiii@\scriptscriptfont\mthsy@\next@\skewchar\next@48\relax } \def\MTPHEX@#1{% \ifx\mthex@\undefined@ \alloc@@8\fam\chardef\sixt@@n\mthex@ \xdef\mthex@@{\hexnumber@\mthex@}% \fi \dimen@#1\relax\PSZ@ \FONT@{mt2hexa}\nextiii@ \textfont\mthex@\next@ \scriptfont\mthex@\next@ \scriptscriptfont\mthex@\next@ } \def\MTP#1#2#3{% \def\tMTPsize{#1}\def\sMTPsize{#2}\def\fMTPsize{#3}% \MTPMI@{#1}{#2}{#3}% \MTPSY@{#1}{#2}{#3}% \MTPEX@{#1}% \MTPMB@{#1}{#2}{#3}% \tenthpt@#1\relax \divide\tenthpt@100 \dimen@#1\relax \ifx\amstexloaded@\relax \ht\Mathstrutbox@.75\dimen@ \dp\Mathstrutbox@.25\dimen@ \setboxz@h{x\dimen@.2326ex\xdef\Ex@{\the\dimen@}}% \ex@\Ex@ \setboxz@h{$\mkern1mu$}\newmu@=\@M\wd\z@ \fi \dimen@ii=.38\dimen@ \dimen@=.72\dimen@ \edef\tmathstrut@{\vrule height \the\dimen@ depth \the\dimen@ii width\z@}% \dimen@#2\relax \dimen@ii=.22\dimen@ \dimen@=.78\dimen@ \edef\smathstrut@{\vrule height \the\dimen@ depth \the\dimen@ii width\z@}% \dimen@#3\relax \dimen@ii=.23\dimen@ \dimen@=.76\dimen@ \edef\fmathstrut@{\vrule height \the\dimen@ depth \the\dimen@ii width\z@}% \def\mathstrut{\mathchoice{\tmathstrut@}{\tmathstrut@}{\smathstrut@}% {\fmathstrut@}}% } \def\loadbmAt#1#2#3{\MTPBMI@{#1}{#2}{#3}\MTPBSY@{#1}{#2}{#3}\MTPBEX@{#1}\bmdefs@} \def\loadbm{\loadbmAt\tMTPsize\sMTPsize\fMTPsize} \def\loadhmAt#1#2#3{\MTPHSY@{#1}{#2}{#3}\MTPHEX@{#1}\hmdefs@} \def\loadhm{\loadhmAt\tMTPsize\sMTPsize\fMTPsize} \def\usecalligraphic#1#2#3#4#5#6#7#8#9{% \ifx\Calfam@\undefined@ \alloc@@8\fam\chardef\sixt@@n\Calfam@ \xdef\Calfam@@{\hexnumber@\Calfam@}% \fi \dimen@#2\relax\dimen@=#3\dimen@\PSZ@ \FONT@{#1}\nextiii@\textfont\Calfam@\next@ \dimen@#5\relax\dimen@=#6\dimen@\PSZ@ \FONT@{#4}\nextiii@\scriptfont\Calfam@\next@ \dimen@#8\relax\dimen@=#9\dimen@\PSZ@ \FONT@{#7}\nextiii@\scriptscriptfont\Calfam@\next@ \def\cal{\fam\Calfam@\relax}% \def\nonmatherr@#1{\Err@{\string#1\space allowed only in math mode}}% \def\Cal{\relax\ifmmode\expandafter\Cal@\else \expandafter\nonmatherr@\expandafter\Cal\fi}% \def\Cal@##1{{\Cal@@{##1}}}% \def\Cal@@##1{\fam\Calfam@\relax##1}% \ifx\amstexloaded@\relax \def\Cal@@##1{\noaccents@\fam\Calfam@\relax##1}% \fi} \def\useCMcalAt#1#2#3{% \usecalligraphic{cmsy10}{#1}{.9787}{cmsy7}{#2}{1.048}{cmsy5}{#3}{1.061}} \def\useCMcal{\useCMcalAt\tMTPsize\sMTPsize\fMTPsize} \def\useEulercalAt#1#2#3{% \usecalligraphic{eusm10}{#1}{.9843}{eusm7}{#2}{1.05}{eusm5}{#3}{1.067}} \def\useEulercal{\useEulercalAt\tMTPsize\sMTPsize\fMTPsize} \def\useLucidacalAt#1#2#3{% \usecalligraphic{hlcrie8r}{#1}{.9336}{hlcrie8r}{#2}{1}{hlcrie8r}{#3}{1.012}} \def\useLucidacal{\useLucidacalAt\tMTPsize\sMTPsize\fMTPsize} \def\useNewcalAt#1#2[#3]#4#5[#6]#7#8[#9]{% \usecalligraphic{#1}{#2}{#3}{#4}{#5}{#6}{#7}{#8}{#9}} \def\useNewcal#1[#2]#3[#4]#5[#6]{\useNewcalAt{#1}\tMTPsize[#2]{#3}\sMTPsize[#4]% {#5}\fMTPsize[#6]} \def\loadsyaAt#1#2#3{% \ifsubstituting@ \else \ifx\mtsya@\undefined@ \alloc@@8\fam\chardef\sixt@@n\mtsya@ \xdef\mtsya@@{\hexnumber@\mtsya@}% \fi \fi \dimen@#1\relax\PSZ@ \FONT@{mt2syat}\nextiii@\textfont\mtsya@\next@ \dimen@#2\relax\PSZ@ \FONT@{mt2syas}\nextiii@\scriptfont\mtsya@\next@ \dimen@#3\relax\PSZ@ \FONT@{mt2syaf}\nextiii@\scriptscriptfont\mtsya@\next@ \syadefs@} \def\loadsya{\loadsyaAt\tMTPsize\sMTPsize\fMTPsize} \def\loadbsyaAt#1#2#3{% \ifsubstituting@ \else \ifx\mtbsya@\undefined@ \alloc@@8\fam\chardef\sixt@@n\mtbsya@ \xdef\mtbsya@@{\hexnumber@\mtbsya@}% \fi \fi \dimen@#1\relax\PSZ@ \FONT@{mt2bsyat}\nextiii@\textfont\mtbsya@\next@ \dimen@#2\relax\PSZ@ \FONT@{mt2bsyas}\nextiii@\scriptfont\mtbsya@\next@ \dimen@#3\relax\PSZ@ \FONT@{mt2bsyaf}\nextiii@\scriptscriptfont\mtbsya@\next@ \textfont\mtsya@\the\textfont\mtbsya@ \scriptfont\mtsya@\the\scriptfont\mtbsya@ \scriptscriptfont\mtsya@\the\scriptscriptfont\mtbsya@ } \def\loadbsya{\loadbsyaAt\tMTPsize\sMTPsize\fMTPsize} \def\loadhsyaAt#1#2#3{% \ifsubstituting@ \else \ifx\mthsya@\undefined@ \alloc@@8\fam\chardef\sixt@@n\mthsya@ \xdef\mthsya@@{\hexnumber@\mthsya@}% \fi \fi \dimen@#1\relax\PSZ@ \FONT@{mt2hsyat}\nextiii@\textfont\mthsya@\next@ \dimen@#2\relax\PSZ@ \FONT@{mt2hsyas}\nextiii@\scriptfont\mthsya@\next@ \dimen@#3\relax\PSZ@ \FONT@{mt2hsyaf}\nextiii@\scriptscriptfont\mthsya@\next@ \textfont\mtsya@\the\textfont\mthsya@ \scriptfont\mtsya@\the\scriptfont\mthsya@ \scriptscriptfont\mtsya@\the\scriptscriptfont\mthsya@ } \def\loadhsya{\loadhsyaAt\tMTPsize\sMTPsize\fMTPsize} \def\loadhrbAt#1#2#3{% \ifsubstituting@ \else \ifx\mthrb@\undefined@ \alloc@@8\fam\chardef\sixt@@n\mthrb@ \xdef\mthrb@@{\hexnumber@\mthrb@}% \fi \fi \dimen@#1\relax\PSZ@ \FONT@{mt2hrbt}\nextiii@\textfont\mthrb@\next@ \dimen@#2\relax\PSZ@ \FONT@{mt2hrbs}\nextiii@\scriptfont\mthrb@\next@ \dimen@#3\relax\PSZ@ \FONT@{mt2hrbf}\nextiii@\scriptscriptfont\mthrb@\next@ \def\hrb{\futurelet\next\hrb@}% \def\hrb@{\ifx\next\imath\def\next@####1{\mathchar"0\mthrb@@7B\relax}% \else\ifx\next\jmath\def\next@####1{\mathchar"0\mthrb@@7C\relax}% \else\def\next@####1{{\zstraight\fam\mthrb@\relax####1}}\fi\fi \next@}% } \def\loadhrb{\loadhrbAt\tMTPsize\sMTPsize\fMTPsize} \def\loadhrbdAt#1#2#3{% \ifsubstituting@ \else \ifx\mthrbd@\undefined@ \alloc@@8\fam\chardef\sixt@@n\mthrbd@ \xdef\mthrbd@@{\hexnumber@\mthrbd@}% \fi \fi \dimen@#1\relax\PSZ@ \FONT@{mt2hrbdt}\nextiii@\textfont\mthrbd@\next@ \dimen@#2\relax\PSZ@ \FONT@{mt2hrbds}\nextiii@\scriptfont\mthrbd@\next@ \dimen@#3\relax\PSZ@ \FONT@{mt2hrbdf}\nextiii@\scriptscriptfont\mthrbd@\next@ \def\hrbd{\futurelet\next\hrbd@}% \def\hrbd@{\ifx\next\imath\def\next@####1{\mathchar"0\mthrbd@@7B\relax}% \else\ifx\next\jmath\def\next@####1{\mathchar"0\mthrbd@@7C\relax}% \else\def\next@####1{{\zstraight\fam\mthrbd@\relax####1}}\fi\fi \next@}% } \def\loadhrbd{\loadhrbdAt\tMTPsize\sMTPsize\fMTPsize} \def\loadbbAt#1#2#3{% \ifsubstituting@ \else \ifx\mtbb@\undefined@ \alloc@@8\fam\chardef\sixt@@n\mtbb@ \xdef\mtbb@@{\hexnumber@\mtbb@}% \fi \fi \dimen@#1\relax\PSZ@ \FONT@{mt2bbt}\nextiii@\textfont\mtbb@\next@ \dimen@#2\relax\PSZ@ \FONT@{mt2bbs}\nextiii@\scriptfont\mtbb@\next@ \dimen@#3\relax\PSZ@ \FONT@{mt2bbf}\nextiii@\scriptscriptfont\mtbb@\next@ \def\bb{\futurelet\next\bb@}% \def\bb@{\ifx\next\imath\def\next@####1{\mathchar"0\mtbb@@7B\relax}% \else\ifx\next\jmath\def\next@####1{\mathchar"0\mtbb@@7C\relax}% \else\def\next@####1{{\zstraight\fam\mtbb@\relax####1}}\fi\fi \next@}% } \def\loadbb{\loadbbAt\tMTPsize\sMTPsize\fMTPsize} \def\loadbbdAt#1#2#3{% \ifsubstituting@ \else \ifx\mtbbd@\undefined@ \alloc@@8\fam\chardef\sixt@@n\mtbbd@ \xdef\mtbbd@@{\hexnumber@\mtbbd@}% \fi \fi \dimen@#1\relax\PSZ@ \FONT@{mt2bbdt}\nextiii@\textfont\mtbbd@\next@ \dimen@#2\relax\PSZ@ \FONT@{mt2bbds}\nextiii@\scriptfont\mtbbd@\next@ \dimen@#3\relax\PSZ@ \FONT@{mt2bbdf}\nextiii@\scriptscriptfont\mtbbd@\next@ \def\bbd{\futurelet\next\bbd@}% \def\bbd@{\ifx\next\imath\def\next@####1{\mathchar"0\mtbbd@@7B\relax}% \else\ifx\next\jmath\def\next@####1{\mathchar"0\mtbbd@@7C\relax}% \else\def\next@####1{\zstraight\fam\mtbbd@\relax####1}\fi\fi \next@}% } \def\loadbbd{\loadbbdAt\tMTPsize\sMTPsize\fMTPsize} \def\loadmscriptAt#1#2#3{% \ifsubstituting@ \else \ifx\mtmscript@\undefined@ \alloc@@8\fam\chardef\sixt@@n\mtmscript@ \xdef\mtmscript@@{\hexnumber@\mtmscript@}% \fi \fi \dimen@#1\relax\PSZ@ \FONT@{mt2mst}\nextiii@\textfont\mtmscript@\next@ \skewchar\next@42 \dimen@#2\relax\PSZ@ \FONT@{mt2mss}\nextiii@\scriptfont\mtmscript@\next@ \skewchar\next@42 \dimen@#3\relax\PSZ@ \FONT@{mt2msf}\nextiii@\scriptscriptfont\mtmscript@\next@ \skewchar\next@42 \def\mscript{\futurelet\next\mscript@}% \def\mscript@{\ifx\next\imath\def\next@####1{\mathchar"0\mtmscript@@7B\relax}% \else\ifx\next\jmath\def\next@####1{\mathchar"0\mtmscript@@7C\relax}% \else\ifx\next\altG\def\next@####1{\mathchar"0\mtmscript@@07\relax}% \else\ifx\next\altI\def\next@####1{\mathchar"0\mtmscript@@09\relax}% \else\ifx\next\altQ\def\next@####1{\mathchar"0\mtmscript@@11\relax}% \else\ifx\next\altY\def\next@####1{\mathchar"0\mtmscript@@19\relax}% \else\ifx\next\altZ\def\next@####1{\mathchar"0\mtmscript@@1A\relax}% \else\ifx\next\altr\def\next@####1{\mathchar"0\mtmscript@@32\relax}% \else\ifx\next\altz\def\next@####1{\mathchar"0\mtmscript@@3A\relax}% \else\ifx\next\altC\def\next@####1{\mathchar"0\mtmscript@@03\relax}% \else\ifx\next\altL\def\next@####1{\mathchar"0\mtmscript@@0C\relax}% \else\ifx\next\altS\def\next@####1{\mathchar"0\mtmscript@@13\relax}% \else\def\next@####1{{\zstraight\fam\mtmscript@\relax####1}}\fi\fi\fi\fi\fi\fi\fi \fi\fi\fi\fi\fi \next@}% } \def\loadmscript{\loadmscriptAt\tMTPsize\sMTPsize\fMTPsize} \def\loadbmscriptAt#1#2#3{% \ifsubstituting@ \else \ifx\mtbmscript@\undefined@ \alloc@@8\fam\chardef\sixt@@n\mtbmscript@ \xdef\mtbmscript@@{\hexnumber@\mtbmscript@}% \fi \fi \dimen@#1\relax\PSZ@ \FONT@{mt2bmst}\nextiii@\textfont\mtbmscript@\next@ \skewchar\next@42 \dimen@#2\relax\PSZ@ \FONT@{mt2bmss}\nextiii@\scriptfont\mtbmscript@\next@ \skewchar\next@42 \dimen@#3\relax\PSZ@ \FONT@{mt2bmsf}\nextiii@\scriptscriptfont\mtbmscript@\next@ \skewchar\next@42 \def\bmscript{\futurelet\next\bmscript@}% \def\bmscript@{\ifx\next\imath\def\next@####1{\mathchar"0\mtbmscript@@7B\relax}% \else\ifx\next\jmath\def\next@####1{\mathchar"0\mtbmscript@@7C\relax}% \else\ifx\next\altG\def\next@####1{\mathchar"0\mtbmscript@@07\relax}% \else\ifx\next\altI\def\next@####1{\mathchar"0\mtbmscript@@09\relax}% \else\ifx\next\altQ\def\next@####1{\mathchar"0\mtbmscript@@11\relax}% \else\ifx\next\altY\def\next@####1{\mathchar"0\mtbmscript@@19\relax}% \else\ifx\next\altZ\def\next@####1{\mathchar"0\mtbmscript@@1A\relax}% \else\ifx\next\altr\def\next@####1{\mathchar"0\mtbmscript@@32\relax}% \else\ifx\next\altz\def\next@####1{\mathchar"0\mtbmscript@@3A\relax}% \else\ifx\next\altC\def\next@####1{\mathchar"0\mtbmscript@@03\relax}% \else\ifx\next\altL\def\next@####1{\mathchar"0\mtbmscript@@0C\relax}% \else\ifx\next\altS\def\next@####1{\mathchar"0\mtbmscript@@13\relax}% \else\def\next@####1{{\zstraight\fam\mtbmscript@\relax####1}}\fi\fi\fi\fi\fi\fi \fi\fi\fi\fi\fi\fi \next@}% } \def\loadbmscript{\loadbmscriptAt\tMTPsize\sMTPsize\fMTPsize} \def\loadmcurlyAt#1#2#3{% \ifsubstituting@ \else \ifx\mtmcurly@\undefined@ \alloc@@8\fam\chardef\sixt@@n\mtmcurly@ \xdef\mtmcurly@@{\hexnumber@\mtmcurly@}% \fi \fi \dimen@#1\relax\PSZ@ \FONT@{mt2mct}\nextiii@\textfont\mtmcurly@\next@ \skewchar\next@42 \dimen@#2\relax\PSZ@ \FONT@{mt2mcs}\nextiii@\scriptfont\mtmcurly@\next@ \skewchar\next@42 \dimen@#3\relax\PSZ@ \FONT@{mt2mcf}\nextiii@\scriptscriptfont\mtmcurly@\next@ \skewchar\next@42 \def\mcurly{\futurelet\next\mcurly@}% \def\mcurly@{\ifx\next\imath\def\next@####1{\mathchar"0\mtmcurly@@7B\relax}% \else\ifx\next\jmath\def\next@####1{\mathchar"0\mtmcurly@@7C\relax}% \else\ifx\next\altG\def\next@####1{\mathchar"0\mtmcurly@@07\relax}% \else\ifx\next\altM\def\next@####1{\mathchar"0\mtmcurly@@0D\relax}% \else\ifx\next\altN\def\next@####1{\mathchar"0\mtmcurly@@0E\relax}% \else\ifx\next\altQ\def\next@####1{\mathchar"0\mtmcurly@@11\relax}% \else\ifx\next\altY\def\next@####1{\mathchar"0\mtmcurly@@19\relax}% \else\def\next@####1{{\zstraight\fam\mtmcurly@\relax####1}}\fi\fi\fi\fi\fi\fi\fi \next@}% } \def\loadmcurly{\loadmcurlyAt\tMTPsize\sMTPsize\fMTPsize} \def\loadmfrakAt#1#2#3{% \ifsubstituting@ \else \ifx\mtmfrak@\undefined@ \alloc@@8\fam\chardef\sixt@@n\mtmfrak@ \xdef\mtmfrak@@{\hexnumber@\mtmfrak@}% \fi \fi \dimen@#1\relax\PSZ@ \FONT@{mt2mft}\nextiii@\textfont\mtmfrak@\next@ \dimen@#2\relax\PSZ@ \FONT@{mt2mfs}\nextiii@\scriptfont\mtmfrak@\next@ \dimen@#3\relax\PSZ@ \FONT@{mt2mff}\nextiii@\scriptscriptfont\mtmfrak@\next@ \def\mfrak{\futurelet\next\mfrak@}% \def\mfrak@{\ifx\next\imath\def\next@####1{\mathchar"0\mtmfrak@@7B\relax}% \else\ifx\next\jmath\def\next@####1{\mathchar"0\mtmfrak@@7C\relax}% \else\ifx\next\altx\def\next@####1{\mathchar"0\mtmfrak@@38\relax}% \else\ifx\next\alty\def\next@####1{\mathchar"0\mtmfrak@@39\relax}% \else\ifx\next\altY\def\next@####1{\mathchar"0\mtmfrak@@19\relax}% \else\def\next@####1{{\zstraight\fam\mtmfrak@\relax####1}}\fi\fi\fi\fi\fi \next@}% } \def\loadmfrak{\loadmfrakAt\tMTPsize\sMTPsize\fMTPsize} \def\loadbmfrakAt#1#2#3{% \ifsubstituting@ \else \ifx\mtbmfrak@\undefined@ \alloc@@8\fam\chardef\sixt@@n\mtbmfrak@ \xdef\mtbmfrak@@{\hexnumber@\mtbmfrak@}% \fi \fi \dimen@#1\relax\PSZ@ \FONT@{mt2bmft}\nextiii@\textfont\mtbmfrak@\next@ \dimen@#2\relax\PSZ@ \FONT@{mt2bmfs}\nextiii@\scriptfont\mtbmfrak@\next@ \dimen@#3\relax\PSZ@ \FONT@{mt2bmff}\nextiii@\scriptscriptfont\mtbmfrak@\next@ \def\bmfrak{\futurelet\next\bmfrak@}% \def\bmfrak@{\ifx\next\imath\def\next@####1{\mathchar"0\mtbmfrak@@7B\relax}% \else\ifx\next\jmath\def\next@####1{\mathchar"0\mtbmfrak@@7C\relax}% \else\ifx\next\altx\def\next@####1{\mathchar"0\mtbmfrak@@38\relax}% \else\ifx\next\alty\def\next@####1{\mathchar"0\mtbmfrak@@39\relax}% \else\ifx\next\altY\def\next@####1{\mathchar"0\mtbmfrak@@19\relax}% \else\def\next@####1{{\zstraight\fam\mtbmfrak@\relax####1}}\fi\fi\fi\fi\fi \next@}% } \def\loadbmfrak{\loadbmfrakAt\tMTPsize\sMTPsize\fMTPsize} \def\loadmhbiAt#1#2#3{% \ifsubstituting@ \else \ifx\mtmhbi@\undefined@ \alloc@@8\fam\chardef\sixt@@n\mtmhbi@ \xdef\mtmhbi@@{\hexnumber@\mtmhbi@}% \fi \fi \dimen@#1\relax\PSZ@ \FONT@{mt2hbit}\nextiii@\textfont\mtmhbi@\next@ \skewchar\next@45 \dimen@#2\relax\PSZ@ \FONT@{mt2hbis}\nextiii@\scriptfont\mtmhbi@\next@ \skewchar\next@45 \dimen@#3\relax\PSZ@ \FONT@{mt2hbif}\nextiii@\scriptscriptfont\mtmhbi@\next@\skewchar\next@45 \def\mhbi##1{\ifcat A##1{\fam\mtmhbi@\relax##1}% \else\ifcat 0##1{\fam\mtmhbi@\relax##1}% \else\mathchar"0\expandafter\mhbi@\meaning##1\mhbi@\relax\fi\fi}% \def\mhbi@##1"##2##3##4##5\mhbi@{\mtmhbi@@##3##4}} \def\loadmhbi{\loadmhbiAt\tMTPsize\sMTPsize\fMTPsize} \def\loadmbbiAt#1#2#3{% \ifsubstituting@ \else \ifx\mtmbbi@\undefined@ \alloc@@8\fam\chardef\sixt@@n\mtmbbi@ \xdef\mtmbbi@@{\hexnumber@\mtmbbi@}% \fi \fi \dimen@#1\relax\PSZ@ \FONT@{mt2bbit}\nextiii@\textfont\mtmbbi@\next@ \skewchar\next@45 \dimen@#2\relax\PSZ@ \FONT@{mt2bbis}\nextiii@\scriptfont\mtmbbi@\next@ \skewchar\next@45 \dimen@#3\relax\PSZ@ \FONT@{mt2bbif}\nextiii@\scriptscriptfont\mtmbbi@\next@\skewchar\next@45 \def\mbbi##1{\ifcat A##1{\fam\mtmbbi@\relax##1}% \else\ifcat 0##1{\fam\mtmbbi@\relax##1}% \else\mathchar"0\expandafter\mbbi@\meaning##1\mbbi@\relax\fi\fi}% \def\mbbi@##1"##2##3##4##5\mbbi@{\mtmbbi@@##3##4}} \def\loadmbbi{\loadmbbiAt\tMTPsize\sMTPsize\fMTPsize} % New load definitions can go here. % Return the category codes of " and @ to their original values. \catcode`\"=\qqcode@ \catcode`\@=\atcode@ % Set things up for 10 point text. \MTP{10pt}{7pt}{5.5pt}