summaryrefslogtreecommitdiff
path: root/fonts/mathabx/texinputs
diff options
context:
space:
mode:
authorNorbert Preining <norbert@preining.info>2019-09-02 13:46:59 +0900
committerNorbert Preining <norbert@preining.info>2019-09-02 13:46:59 +0900
commite0c6872cf40896c7be36b11dcc744620f10adf1d (patch)
tree60335e10d2f4354b0674ec22d7b53f0f8abee672 /fonts/mathabx/texinputs
Initial commit
Diffstat (limited to 'fonts/mathabx/texinputs')
-rw-r--r--fonts/mathabx/texinputs/mathabx.dcl1127
-rw-r--r--fonts/mathabx/texinputs/mathabx.sty80
-rw-r--r--fonts/mathabx/texinputs/mathabx.tex145
-rw-r--r--fonts/mathabx/texinputs/testmac.tex521
4 files changed, 1873 insertions, 0 deletions
diff --git a/fonts/mathabx/texinputs/mathabx.dcl b/fonts/mathabx/texinputs/mathabx.dcl
new file mode 100644
index 0000000000..42d074c6cf
--- /dev/null
+++ b/fonts/mathabx/texinputs/mathabx.dcl
@@ -0,0 +1,1127 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% mathabx.dcl. Version: May 18, 2005.
+% Author: Anthony PHAN.
+% matches the ``mathabx'' family.
+% names almost fit newmath.sty (Matthias Clasen, Ulrik Vieth)
+% not necessarily designs...
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\catcode`\@=11
+%\mathabx@undefine{\models} ????
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% to be defined
+%\DeclareMathSymbol{\bigtriangleup}{2}{matha}{"}
+%\DeclareMathSymbol{\bigtriangledown}{2}{matha}{"}
+%\DeclareMathSymbol{\square}{0}{matha}{"}
+%
+\symbol@message{Specials (matha/mathb)}
+%
+\mathabx@matha
+\DeclareMathSymbol{\notsign} {3}{matha}{"7F}
+\end@mathabx
+\mathabx@mathb
+\DeclareMathSymbol{\varnotsign} {3}{mathb}{"7F}
+\end@mathabx
+\mathabx@matha
+\DeclareMathSymbol{\cdotp} {6}{matha}{"04}% oddity
+\end@mathabx
+%
+\mathabx@matha
+\symbol@message{Usual binary operators (matha)}
+%
+\DeclareMathSymbol{+} {2}{matha}{"00}
+\DeclareMathSymbol{-} {2}{matha}{"01}
+\DeclareMathSymbol{\times} {2}{matha}{"02}
+\DeclareMathSymbol{\div} {2}{matha}{"03}
+\DeclareMathSymbol{\cdot} {2}{matha}{"04}
+\DeclareMathSymbol{\circ} {2}{matha}{"05}
+\DeclareMathSymbol{*} {2}{matha}{"06}
+\DeclareMathSymbol{\ast} {2}{matha}{"06}
+\DeclareMathSymbol{\asterisk} {0}{matha}{"06}
+\DeclareMathSymbol{\coasterisk} {2}{matha}{"07}
+\DeclareMathSymbol{\pm} {2}{matha}{"08}
+\DeclareMathSymbol{\mp} {2}{matha}{"09}
+\DeclareMathSymbol{\ltimes} {2}{matha}{"0A}
+\DeclareMathSymbol{\rtimes} {2}{matha}{"0B}
+\DeclareMathSymbol{\diamond} {2}{matha}{"0C}
+\DeclareMathSymbol{\bullet} {2}{matha}{"0D}
+\DeclareMathSymbol{\star} {2}{matha}{"0E}
+\DeclareMathSymbol{\varstar} {2}{matha}{"0F}
+\DeclareMathSymbol{\ssum} {2}{matha}{"3C}
+\DeclareMathSymbol{\sprod} {2}{matha}{"3D}
+\DeclareMathSymbol{\amalg} {2}{matha}{"3E}
+\mathabx@aliases\amalg\scoprod
+\end@mathabx
+%
+\mathabx@mathb
+\symbol@message{Unusual binary operators (mathb)}
+%
+\DeclareMathSymbol{\dotplus} {2}{mathb}{"00}% name to be checked
+\DeclareMathSymbol{\dotdiv} {2}{mathb}{"01}% name to be checked
+\DeclareMathSymbol{\dottimes} {2}{mathb}{"02}% name to be checked
+\DeclareMathSymbol{\divdot} {2}{mathb}{"03}% name to be checked
+\DeclareMathSymbol{\udot} {2}{mathb}{"04}% name to be checked
+\DeclareMathSymbol{\square} {2}{mathb}{"05}% name to be checked
+\DeclareMathSymbol{\Asterisk} {2}{mathb}{"06}
+\DeclareMathSymbol{\bigast} {1}{mathb}{"06}
+\DeclareMathSymbol{\coAsterisk} {2}{mathb}{"07}
+\DeclareMathSymbol{\bigcoast} {1}{mathb}{"07}
+\DeclareMathSymbol{\circplus} {2}{mathb}{"08}% name to be checked
+\DeclareMathSymbol{\pluscirc} {2}{mathb}{"09}% name to be checked
+\DeclareMathSymbol{\convolution} {2}{mathb}{"0A}% name to be checked
+\DeclareMathSymbol{\divideontimes} {2}{mathb}{"0B}% name to be checked
+\DeclareMathSymbol{\blackdiamond} {2}{mathb}{"0C}% name to be checked
+\DeclareMathSymbol{\sqbullet} {2}{mathb}{"0D}% name to be checked
+ \mathabx@aliases\sqbullet\centerdot
+\DeclareMathSymbol{\bigstar} {2}{mathb}{"0E}
+\DeclareMathSymbol{\bigvarstar} {2}{mathb}{"0F}
+\end@mathabx
+%
+\mathabx@matha
+\symbol@message{Usual relations (matha)}
+%
+\DeclareMathSymbol{=} {3}{matha}{"10}
+\DeclareMathSymbol{\equiv} {3}{matha}{"11}
+\DeclareMathSymbol{\sim} {3}{matha}{"12}
+\DeclareMathSymbol{\approx} {3}{matha}{"13}
+\DeclareMathSymbol{\simeq} {3}{matha}{"14}
+\mathabx@undefine{\cong}
+\DeclareMathSymbol{\cong} {3}{matha}{"15}
+\DeclareMathSymbol{\asymp} {3}{matha}{"16}
+\DeclareMathSymbol{\divides} {3}{matha}{"17}
+%
+\mathabx@undefine{\neq}
+\DeclareMathSymbol{\neq} {3}{matha}{"18}
+ \mathabx@aliases\neq\ne
+\DeclareMathSymbol{\notequiv} {3}{matha}{"19}
+ \mathabx@aliases\notequiv\nequiv
+\DeclareMathSymbol{\nsim} {3}{matha}{"1A}
+\DeclareMathSymbol{\napprox} {3}{matha}{"1B}
+\DeclareMathSymbol{\nsimeq} {3}{matha}{"1C}
+\DeclareMathSymbol{\ncong} {3}{matha}{"1D}
+\DeclareMathSymbol{\notasymp} {3}{matha}{"1E}
+\DeclareMathSymbol{\notdivides} {3}{matha}{"1F}
+ \mathabx@aliases\notdivides\ndivides
+%
+%\DeclareMathSymbol{\approxeq} {3}{matha}{"1C}% name to be checked
+%\DeclareMathSymbol{\eqsim} {3}{matha}{"1E}% name to be checked
+%\DeclareMathSymbol{\napproxeq} {3}{matha}{"1D}
+%\DeclareMathSymbol{\neqsim} {3}{matha}{"1F}
+\end@mathabx
+%
+\mathabx@mathb
+\symbol@message{Unusual relations (mathb)}
+%
+\DeclareMathSymbol{\topdoteq} {3}{mathb}{"10}% name to be checked
+\DeclareMathSymbol{\botdoteq} {3}{mathb}{"11}% name to be checked
+\DeclareMathSymbol{\dotseq} {3}{mathb}{"12}% name to be checked
+ \mathabx@aliases\dotseq{\doteqdot\Doteq}%
+\DeclareMathSymbol{\risingdotseq} {3}{mathb}{"13}% name to be checked
+\DeclareMathSymbol{\fallingdotseq} {3}{mathb}{"14}% name to be checked
+\DeclareMathSymbol{\coloneq} {3}{mathb}{"15}% name to be checked
+\DeclareMathSymbol{\eqcolon} {3}{mathb}{"16}% name to be checked
+\DeclareMathSymbol{\bumpedeq} {3}{mathb}{"17}% name to be checked
+\DeclareMathSymbol{\eqbumped} {3}{mathb}{"18}% name to be checked
+\DeclareMathSymbol{\Bumpedeq} {3}{mathb}{"19}% name to be checked
+\DeclareMathSymbol{\circeq} {3}{mathb}{"1A}% name to be checked
+\DeclareMathSymbol{\eqcirc} {3}{mathb}{"1B}% name to be checked
+\DeclareMathSymbol{\triangleq} {3}{mathb}{"1C}% name to be checked
+\DeclareMathSymbol{\corresponds} {3}{mathb}{"1D}% name to be checked
+\end@mathabx
+%
+\mathabx@matha
+\symbol@message{Miscellaneous (matha)}
+%
+\DeclareMathSymbol{\neg} {0}{matha}{"20}
+ \mathabx@aliases\neg\lnot
+\DeclareMathSymbol{\ll} {3}{matha}{"21}
+\DeclareMathSymbol{\gg} {3}{matha}{"22}
+\DeclareMathSymbol{\hash} {0}{matha}{"23}
+\DeclareMathSymbol{\vdash} {3}{matha}{"24}
+\DeclareMathSymbol{\dashv} {3}{matha}{"25}
+\DeclareMathSymbol{\nvdash} {3}{matha}{"26}
+\DeclareMathSymbol{\ndashv} {3}{matha}{"27}
+\DeclareMathSymbol{\vDash} {3}{matha}{"28}
+\DeclareMathSymbol{\Dashv} {3}{matha}{"29}
+\DeclareMathSymbol{\nvDash} {3}{matha}{"2A}
+\DeclareMathSymbol{\nDashv} {3}{matha}{"2B}
+\DeclareMathSymbol{\Vdash} {3}{matha}{"2C}
+\DeclareMathSymbol{\dashV} {3}{matha}{"2D}
+\DeclareMathSymbol{\nVdash} {3}{matha}{"2E}
+\DeclareMathSymbol{\ndashV} {3}{matha}{"2F}
+%
+\DeclareMathSymbol{\degree} {0}{matha}{"30}
+\mathabx@undefine{\prime}
+\DeclareMathSymbol{\prime} {0}{matha}{"31}
+\DeclareMathSymbol{\second} {0}{matha}{"32}
+\DeclareMathSymbol{\third} {0}{matha}{"33}
+\DeclareMathSymbol{\fourth} {0}{matha}{"34}
+\DeclareMathSymbol{\flat} {0}{matha}{"35}
+\DeclareMathSymbol{\natural} {0}{matha}{"36}
+\DeclareMathSymbol{\sharp} {0}{matha}{"37}
+\DeclareMathSymbol{\infty} {0}{matha}{"38}
+\DeclareMathSymbol{\propto} {0}{matha}{"39}
+\DeclareMathSymbol{\dagger} {0}{matha}{"3A}
+\DeclareMathSymbol{\ddagger} {0}{matha}{"3B}
+\end@mathabx
+%
+\mathabx@mathb
+\symbol@message{Miscellaneous (mathb)}
+%
+\DeclareMathSymbol{\between} {3}{mathb}{"20}
+\DeclareMathSymbol{\smile} {3}{mathb}{"21}
+\DeclareMathSymbol{\frown} {3}{mathb}{"22}
+\DeclareMathSymbol{\varhash} {0}{mathb}{"23}
+\DeclareMathSymbol{\leftthreetimes} {0}{mathb}{"24}
+\DeclareMathSymbol{\rightthreetimes}{0}{mathb}{"25}
+\DeclareMathSymbol{\pitchfork} {0}{mathb}{"26}
+\mathabx@undefine{\bowtie}
+\DeclareMathSymbol{\bowtie} {3}{mathb}{"27}
+ \mathabx@aliases\bowtie\Join
+\DeclareMathSymbol{\VDash} {3}{mathb}{"28}
+\DeclareMathSymbol{\DashV} {3}{mathb}{"29}
+\DeclareMathSymbol{\nVDash} {3}{mathb}{"2A}
+\DeclareMathSymbol{\nDashV} {3}{mathb}{"2B}
+\DeclareMathSymbol{\Vvdash} {3}{mathb}{"2C}
+\DeclareMathSymbol{\dashVv} {3}{mathb}{"2D}
+\DeclareMathSymbol{\nVvash} {3}{mathb}{"2E}
+\DeclareMathSymbol{\ndashVv} {3}{mathb}{"2F}
+%
+\DeclareMathSymbol{\therefore} {3}{mathb}{"36}
+\DeclareMathSymbol{\because} {3}{mathb}{"37}
+\DeclareMathAccent{\ring} {0}{mathb}{"38}
+\mathabx@undefine{\dot}
+\DeclareMathAccent{\dot} {0}{mathb}{"39}
+\mathabx@undefine{\ddot}
+\DeclareMathAccent{\ddot} {0}{mathb}{"3A}
+\mathabx@undefine{\dddot}
+\DeclareMathAccent{\dddot} {0}{mathb}{"3B}
+\mathabx@undefine{\ddddot}
+\DeclareMathAccent{\ddddot} {0}{mathb}{"3C}
+\mathabx@undefine{\angle}
+\DeclareMathSymbol{\angle} {0}{mathb}{"3D}
+\DeclareMathSymbol{\measuredangle} {0}{mathb}{"3E}
+\DeclareMathSymbol{\sphericalangle}{0}{mathb}{"3F}
+\DeclareMathSymbol{\rip} {0}{mathb}{"4F}
+\end@mathabx
+%
+\mathabx@matha
+\symbol@message{Delimiters as symbols (matha)}
+%
+\DeclareMathSymbol{(} {4}{matha}{"70}
+\DeclareMathSymbol{)} {5}{matha}{"71}
+\DeclareMathSymbol{[} {4}{matha}{"72}
+\DeclareMathSymbol{]} {5}{matha}{"73}
+%\DeclareMathSymbol{\lbrace} {4}{matha}{"74}% extens. delimiter
+%\DeclareMathSymbol{\rbrace} {5}{matha}{"75}% extens. delimiter
+% \mathabx@undefine{\backslash}
+% \DeclareMathSymbol{\backslash} {0}{matha}{"7A}% extens. delimiter
+\DeclareMathSymbol{\setminus} {0}{matha}{"7A}
+\DeclareMathSymbol{/} {0}{matha}{"7B}
+\mathabx@undefine{\|}
+\DeclareMathSymbol{|} {0}{matha}{"7C}
+\DeclareMathSymbol{\mid} {3}{matha}{"7C}
+% \DeclareMathSymbol{\|} {0}{matha}{"7D}% extens. delimiter
+% \DeclareMathSymbol{\vvvert} {0}{matha}{"7E}% extens. delimiter
+\end@mathabx
+%
+\mathabx@mathb
+\symbol@message{Delimiters as symbols (mathb)}
+%
+\DeclareMathSymbol{\lcorners} {4}{mathb}{"76}% name to be checked
+\DeclareMathSymbol{\rcorners} {5}{mathb}{"77}% name to be checked
+\mathabx@undefine{\ulcorner}
+\DeclareMathSymbol{\ulcorner} {4}{mathb}{"78}% name to be checked
+\mathabx@undefine{\urcorner}
+\DeclareMathSymbol{\urcorner} {5}{mathb}{"79}% name to be checked
+\mathabx@undefine{\llcorner}
+\DeclareMathSymbol{\llcorner} {4}{mathb}{"7A}% name to be checked
+\mathabx@undefine{\lrcorner}
+\DeclareMathSymbol{\lrcorner} {5}{mathb}{"7B}% name to be checked
+%
+\symbol@message{Astronomical symbols (mathb)}
+%
+\DeclareMathSymbol{\Sun} {0}{mathb}{"40}
+\DeclareMathSymbol{\Mercury} {0}{mathb}{"41}
+\DeclareMathSymbol{\Venus} {0}{mathb}{"42}
+ \mathabx@aliases\Venus\girl
+\DeclareMathSymbol{\Earth} {0}{mathb}{"43}
+\DeclareMathSymbol{\Mars} {0}{mathb}{"44}
+ \mathabx@aliases\Mars\boy
+\DeclareMathSymbol{\Jupiter} {0}{mathb}{"45}
+\DeclareMathSymbol{\Saturn} {0}{mathb}{"46}
+\DeclareMathSymbol{\Uranus} {0}{mathb}{"47}
+\DeclareMathSymbol{\Neptune} {0}{mathb}{"48}
+\DeclareMathSymbol{\Pluto} {0}{mathb}{"49}
+\DeclareMathSymbol{\varEarth} {0}{mathb}{"4A}
+\DeclareMathSymbol{\leftmoon} {0}{mathb}{"4B}
+ \mathabx@aliases\leftmoon\Moon
+\DeclareMathSymbol{\rightmoon} {0}{mathb}{"4C}
+\DeclareMathSymbol{\fullmoon} {0}{mathb}{"4D}
+\DeclareMathSymbol{\newmoon} {0}{mathb}{"4E}
+%
+\DeclareMathSymbol{\Aries} {0}{mathb}{"50}
+\DeclareMathSymbol{\Taurus} {0}{mathb}{"51}
+\DeclareMathSymbol{\Gemini} {0}{mathb}{"52}
+%\DeclareMathSymbol{\Cancer} {0}{mathb}{"53}
+\DeclareMathSymbol{\Leo} {0}{mathb}{"54}
+%\DeclareMathSymbol{\Virgo} {0}{mathb}{"55}
+\DeclareMathSymbol{\Libra} {0}{mathb}{"56}
+\DeclareMathSymbol{\Scorpio} {0}{mathb}{"57}
+%\DeclareMathSymbol{\Sagittarius} {0}{mathb}{"58}
+%\DeclareMathSymbol{\Capricornus} {0}{mathb}{"59}
+%\DeclareMathSymbol{\Aquarius} {0}{mathb}{"59}
+%\DeclareMathSymbol{\Pisces} {0}{mathb}{"59}
+\end@mathabx
+%
+\mathabx@matha
+\symbol@message{Letter like symbols (matha)}
+%
+\DeclareMathSymbol{\forall} {0}{matha}{"40}
+\DeclareMathSymbol{\complement} {0}{matha}{"41}
+\DeclareMathSymbol{\partial} {0}{matha}{"42}
+% \mathabx@aliases\partial\partialit
+\DeclareMathSymbol{\partialslash} {0}{matha}{"43}
+\DeclareMathSymbol{\exists} {0}{matha}{"44}
+\DeclareMathSymbol{\nexists} {0}{matha}{"45}
+\DeclareMathSymbol{\Finv} {0}{matha}{"46}
+\DeclareMathSymbol{\Game} {0}{matha}{"47}
+\DeclareMathSymbol{\emptyset} {0}{matha}{"48}
+\DeclareMathSymbol{\diameter} {0}{matha}{"49}
+\DeclareMathSymbol{\top} {0}{matha}{"4A}
+\DeclareMathSymbol{\bot} {0}{matha}{"4B}
+\DeclareMathSymbol{\perp} {3}{matha}{"4B}
+\DeclareMathSymbol{\nottop} {0}{matha}{"4C}
+\DeclareMathSymbol{\notbot} {0}{matha}{"4D}
+\DeclareMathSymbol{\notperp} {3}{matha}{"4D}
+\DeclareMathSymbol{\curlywedge} {2}{matha}{"4E}
+\DeclareMathSymbol{\curlyvee} {2}{matha}{"4F}
+%
+\DeclareMathSymbol{\in} {3}{matha}{"50}
+\DeclareMathSymbol{\owns} {3}{matha}{"51}
+ \mathabx@aliases\owns\ni
+\mathabx@undefine{\notin}
+\DeclareMathSymbol{\notin} {3}{matha}{"52}
+\DeclareMathSymbol{\notowner} {3}{matha}{"53}
+ \mathabx@aliases\notowner{\notni\notowns}%
+\DeclareMathSymbol{\varnotin} {3}{matha}{"54}
+\DeclareMathSymbol{\varnotowner} {3}{matha}{"55}
+\DeclareMathSymbol{\barin} {3}{matha}{"56}% name to be checked
+\DeclareMathSymbol{\ownsbar} {3}{matha}{"57}% name to be checked
+ \mathabx@aliases\ownsbar\nibar% Arghl
+%
+\DeclareMathSymbol{\cap} {2}{matha}{"58}
+\DeclareMathSymbol{\cup} {2}{matha}{"59}
+\DeclareMathSymbol{\uplus} {2}{matha}{"5A}
+\DeclareMathSymbol{\sqcap} {2}{matha}{"5B}
+\DeclareMathSymbol{\sqcup} {2}{matha}{"5C}
+\DeclareMathSymbol{\squplus} {2}{matha}{"5D}
+\DeclareMathSymbol{\wedge} {2}{matha}{"5E}
+ \mathabx@aliases\wedge\land
+\DeclareMathSymbol{\vee} {2}{matha}{"5F}
+ \mathabx@aliases\vee\lor
+\end@mathabx
+%
+\mathabx@mathb
+\symbol@message{Letter like symbols (mathb)}
+%
+\DeclareMathSymbol{\barwedge} {2}{mathb}{"58}
+\DeclareMathSymbol{\veebar} {2}{mathb}{"59}
+\DeclareMathSymbol{\doublebarwedge}{2}{mathb}{"5A}
+\DeclareMathSymbol{\veedoublebar} {2}{mathb}{"5B}
+\DeclareMathSymbol{\doublecap} {2}{mathb}{"5C}
+ \mathabx@aliases\doublecap\Cap
+\DeclareMathSymbol{\doublecup} {2}{mathb}{"5D}
+ \mathabx@aliases\doublecup\Cup
+\DeclareMathSymbol{\sqdoublecap} {2}{mathb}{"5E}
+ \mathabx@aliases\sqdoublecap\sqCap
+\DeclareMathSymbol{\sqdoublecup} {2}{mathb}{"5F}
+ \mathabx@aliases\sqdoublecup\sqCup
+\end@mathabx
+%
+\mathabx@matha
+\symbol@message{Subset's and superset's signs (matha)}
+%
+\DeclareMathSymbol{\subset} {3}{matha}{"80}
+\DeclareMathSymbol{\supset} {3}{matha}{"81}
+\DeclareMathSymbol{\nsubset} {3}{matha}{"82}
+\DeclareMathSymbol{\nsupset} {3}{matha}{"83}
+\DeclareMathSymbol{\subseteq} {3}{matha}{"84}
+\DeclareMathSymbol{\supseteq} {3}{matha}{"85}
+\DeclareMathSymbol{\nsubseteq} {3}{matha}{"86}
+\DeclareMathSymbol{\nsupseteq} {3}{matha}{"87}
+\DeclareMathSymbol{\subsetneq} {3}{matha}{"88}
+\DeclareMathSymbol{\supsetneq} {3}{matha}{"89}
+\DeclareMathSymbol{\varsubsetneq} {3}{matha}{"8A}
+\DeclareMathSymbol{\varsupsetneq} {3}{matha}{"8B}
+%
+\DeclareMathSymbol{\subseteqq} {3}{matha}{"8C}
+\DeclareMathSymbol{\supseteqq} {3}{matha}{"8D}
+\DeclareMathSymbol{\nsubseteqq} {3}{matha}{"8E}
+\DeclareMathSymbol{\nsupseteqq} {3}{matha}{"8F}
+\DeclareMathSymbol{\subsetneqq} {3}{matha}{"90}
+\DeclareMathSymbol{\supsetneqq} {3}{matha}{"91}
+\DeclareMathSymbol{\varsubsetneqq} {3}{matha}{"92}
+\DeclareMathSymbol{\varsupsetneqq} {3}{matha}{"93}
+%
+\DeclareMathSymbol{\Subset} {3}{matha}{"94}
+\DeclareMathSymbol{\Supset} {3}{matha}{"95}
+\DeclareMathSymbol{\nSubset} {3}{matha}{"96}
+\DeclareMathSymbol{\nSupset} {3}{matha}{"97}
+\end@mathabx
+%
+\mathabx@mathb
+\symbol@message{Square subset's and superset's signs (mathb)}
+\mathabx@undefine{\sqsubset}
+\DeclareMathSymbol{\sqsubset} {3}{mathb}{"80}
+\mathabx@undefine{\sqsupset}
+\DeclareMathSymbol{\sqsupset} {3}{mathb}{"81}
+\DeclareMathSymbol{\nsqsubset} {3}{mathb}{"82}
+\DeclareMathSymbol{\nsqsupset} {3}{mathb}{"83}
+\DeclareMathSymbol{\sqsubseteq} {3}{mathb}{"84}
+\DeclareMathSymbol{\sqsupseteq} {3}{mathb}{"85}
+\DeclareMathSymbol{\nsqsubseteq} {3}{mathb}{"86}
+\DeclareMathSymbol{\nsqsupseteq} {3}{mathb}{"87}
+\DeclareMathSymbol{\sqsubsetneq} {3}{mathb}{"88}
+\DeclareMathSymbol{\sqsupsetneq} {3}{mathb}{"89}
+\DeclareMathSymbol{\varsqsubsetneq} {3}{mathb}{"8A}
+\DeclareMathSymbol{\varsqsupsetneq} {3}{mathb}{"8B}
+%
+\DeclareMathSymbol{\sqsubseteqq} {3}{mathb}{"8C}
+\DeclareMathSymbol{\sqsupseteqq} {3}{mathb}{"8D}
+\DeclareMathSymbol{\nsqsubseteqq} {3}{mathb}{"8E}
+\DeclareMathSymbol{\nsqsupseteqq} {3}{mathb}{"8F}
+\DeclareMathSymbol{\sqsubsetneqq} {3}{mathb}{"90}
+\DeclareMathSymbol{\sqsupsetneqq} {3}{mathb}{"91}
+\DeclareMathSymbol{\varsqsubsetneqq}{3}{mathb}{"92}
+\DeclareMathSymbol{\varsqsupsetneqq}{3}{mathb}{"93}
+%
+\DeclareMathSymbol{\sqSubset} {3}{mathb}{"94}
+\DeclareMathSymbol{\sqSupset} {3}{mathb}{"95}
+\DeclareMathSymbol{\nsqSubset} {3}{mathb}{"96}
+\DeclareMathSymbol{\nsqSupset} {3}{mathb}{"97}
+\end@mathabx
+%
+\mathabx@matha
+\symbol@message{Triangles as relations (matha)}
+%
+\DeclareMathSymbol{\triangleleft} {2}{matha}{"98}
+\DeclareMathSymbol{\vartriangleleft} {3}{matha}{"98}
+\DeclareMathSymbol{\triangleright} {2}{matha}{"99}
+\DeclareMathSymbol{\vartriangleright}{3}{matha}{"99}
+\DeclareMathSymbol{\ntriangleleft} {3}{matha}{"9A}
+\DeclareMathSymbol{\ntriangleright} {3}{matha}{"9B}
+\DeclareMathSymbol{\trianglelefteq} {3}{matha}{"9C}
+\DeclareMathSymbol{\trianglerighteq} {3}{matha}{"9D}
+\DeclareMathSymbol{\ntrianglelefteq} {3}{matha}{"9E}
+\DeclareMathSymbol{\ntrianglerighteq}{3}{matha}{"9F}
+\end@mathabx
+%
+\mathabx@mathb
+\symbol@message{Triangles as binary operators (mathb)}
+%
+\DeclareMathSymbol{\smalltriangleup} {2}{mathb}{"98}% name to be checked
+\DeclareMathSymbol{\smalltriangledown} {2}{mathb}{"99}% name to be checked
+\DeclareMathSymbol{\smalltriangleleft} {2}{mathb}{"9A}% name to be checked
+\DeclareMathSymbol{\smalltriangleright}{2}{mathb}{"9B}% name to be checked
+\DeclareMathSymbol{\blacktriangleup} {2}{mathb}{"9C}% name to be checked
+\DeclareMathSymbol{\blacktriangledown} {2}{mathb}{"9D}% name to be checked
+\DeclareMathSymbol{\blacktriangleleft} {2}{mathb}{"9E}% name to be checked
+\DeclareMathSymbol{\blacktriangleright}{2}{mathb}{"9F}% name to be checked
+\end@mathabx
+%
+\mathabx@matha
+\symbol@message{Inequalities (matha)}
+%
+\DeclareMathSymbol{<} {3}{matha}{"A0}
+\DeclareMathSymbol{>} {3}{matha}{"A1}
+\DeclareMathSymbol{\nless} {3}{matha}{"A2}
+\DeclareMathSymbol{\ngtr} {3}{matha}{"A3}
+\DeclareMathSymbol{\leq} {3}{matha}{"A4}
+ \mathabx@aliases\leq{\le\leqslant}%
+\DeclareMathSymbol{\geq} {3}{matha}{"A5}
+ \mathabx@aliases\geq{\ge\geqslant}%
+\DeclareMathSymbol{\nleq} {3}{matha}{"A6}
+ \mathabx@aliases\nleq\nleqslant
+\DeclareMathSymbol{\ngeq} {3}{matha}{"A7}
+ \mathabx@aliases\ngeq\ngeqslant
+\DeclareMathSymbol{\varleq} {3}{matha}{"A8}
+\DeclareMathSymbol{\vargeq} {3}{matha}{"A9}
+\DeclareMathSymbol{\nvarleq} {3}{matha}{"AA}
+\DeclareMathSymbol{\nvargeq} {3}{matha}{"AB}
+\DeclareMathSymbol{\lneq} {3}{matha}{"AC}
+\DeclareMathSymbol{\gneq} {3}{matha}{"AD}
+\DeclareMathSymbol{\leqq} {3}{matha}{"AE}
+\DeclareMathSymbol{\geqq} {3}{matha}{"AF}
+\DeclareMathSymbol{\nleqq} {3}{matha}{"B0}
+\DeclareMathSymbol{\ngeqq} {3}{matha}{"B1}
+\DeclareMathSymbol{\lneqq} {3}{matha}{"B2}
+\DeclareMathSymbol{\gneqq} {3}{matha}{"B3}
+\DeclareMathSymbol{\lvertneqq} {3}{matha}{"B4}
+\DeclareMathSymbol{\gvertneqq} {3}{matha}{"B5}
+\DeclareMathSymbol{\eqslantless} {3}{matha}{"B6}
+\DeclareMathSymbol{\eqslantgtr} {3}{matha}{"B7}
+\DeclareMathSymbol{\neqslantless}{3}{matha}{"B8}
+\DeclareMathSymbol{\neqslantgtr} {3}{matha}{"B9}
+\DeclareMathSymbol{\lessgtr} {3}{matha}{"BA}
+\DeclareMathSymbol{\gtrless} {3}{matha}{"BB}
+\DeclareMathSymbol{\lesseqgtr} {3}{matha}{"BC}
+\DeclareMathSymbol{\gtreqless} {3}{matha}{"BD}
+\DeclareMathSymbol{\lesseqqgtr} {3}{matha}{"BE}
+\DeclareMathSymbol{\gtreqqless} {3}{matha}{"BF}
+%
+\DeclareMathSymbol{\lesssim} {3}{matha}{"C0}
+\DeclareMathSymbol{\gtrsim} {3}{matha}{"C1}
+\DeclareMathSymbol{\nlesssim} {3}{matha}{"C2}
+\DeclareMathSymbol{\ngtrsim} {3}{matha}{"C3}
+\DeclareMathSymbol{\lnsim} {3}{matha}{"C4}
+\DeclareMathSymbol{\gnsim} {3}{matha}{"C5}
+\DeclareMathSymbol{\lessapprox} {3}{matha}{"C6}
+\DeclareMathSymbol{\gtrapprox} {3}{matha}{"C7}
+\DeclareMathSymbol{\nlessapprox} {3}{matha}{"C8}
+\DeclareMathSymbol{\ngtrapprox} {3}{matha}{"C9}
+\DeclareMathSymbol{\lnapprox} {3}{matha}{"CA}
+\DeclareMathSymbol{\gnapprox} {3}{matha}{"CB}
+%
+\DeclareMathSymbol{\lessdot} {3}{matha}{"CC}
+\DeclareMathSymbol{\gtrdot} {3}{matha}{"CD}
+%
+\DeclareMathSymbol{\lll} {3}{matha}{"CE}
+\DeclareMathSymbol{\ggg} {3}{matha}{"CF}
+%
+\DeclareMathSymbol{\precdot} {3}{matha}{"CC}
+\DeclareMathSymbol{\succdot} {3}{matha}{"CD}
+\end@mathabx
+%
+\mathabx@mathb
+\symbol@message{Inequalities (mathb)}
+%
+\DeclareMathSymbol{\prec} {3}{mathb}{"A0}
+\DeclareMathSymbol{\succ} {3}{mathb}{"A1}
+\DeclareMathSymbol{\nprec} {3}{mathb}{"A2}
+\DeclareMathSymbol{\nsucc} {3}{mathb}{"A3}
+\DeclareMathSymbol{\preccurlyeq} {3}{mathb}{"A4}
+\DeclareMathSymbol{\succcurlyeq} {3}{mathb}{"A5}
+\DeclareMathSymbol{\npreccurlyeq}{3}{mathb}{"A6}
+\DeclareMathSymbol{\nsucccurlyeq}{3}{mathb}{"A7}
+\DeclareMathSymbol{\preceq} {3}{mathb}{"A8}
+\DeclareMathSymbol{\succeq} {3}{mathb}{"A9}
+\DeclareMathSymbol{\npreceq} {3}{mathb}{"AA}
+\DeclareMathSymbol{\nsucceq} {3}{mathb}{"AB}
+\DeclareMathSymbol{\precneq} {3}{mathb}{"AC}
+\DeclareMathSymbol{\succneq} {3}{mathb}{"AD}
+\DeclareMathSymbol{\curlyeqprec} {3}{mathb}{"B6}
+\DeclareMathSymbol{\curlyeqsucc} {3}{mathb}{"B7}
+\DeclareMathSymbol{\ncurlyeqprec}{3}{mathb}{"B8}
+\DeclareMathSymbol{\ncurlyeqsucc}{3}{mathb}{"B9}
+%
+\DeclareMathSymbol{\precsim} {3}{mathb}{"C0}
+\DeclareMathSymbol{\succsim} {3}{mathb}{"C1}
+\DeclareMathSymbol{\nprecsim} {3}{mathb}{"C2}
+\DeclareMathSymbol{\nsuccsim} {3}{mathb}{"C3}
+\DeclareMathSymbol{\precnsim} {3}{mathb}{"C4}
+\DeclareMathSymbol{\succnsim} {3}{mathb}{"C5}
+\DeclareMathSymbol{\precapprox} {3}{mathb}{"C6}
+\DeclareMathSymbol{\succapprox} {3}{mathb}{"C7}
+\DeclareMathSymbol{\nprecapprox} {3}{mathb}{"C8}
+\DeclareMathSymbol{\nsuccapprox} {3}{mathb}{"C9}
+\DeclareMathSymbol{\precnapprox} {3}{mathb}{"CA}
+\DeclareMathSymbol{\succnapprox} {3}{mathb}{"CB}
+%
+\DeclareMathSymbol{\llcurly} {3}{mathb}{"CE}
+\DeclareMathSymbol{\ggcurly} {3}{mathb}{"CF}
+%
+% \DeclareMathSymbol{\leftthreetimes} {3}{mathb}{"56}
+% \DeclareMathSymbol{\rightthreetimes}{3}{mathb}{"57}
+\end@mathabx
+%
+\mathabx@matha
+\symbol@message{Arrows and harppons (matha)}
+%
+\DeclareMathSymbol{\leftarrow} {3}{matha}{"D0}
+ \mathabx@aliases\leftarrow\gets
+\DeclareMathSymbol{\rightarrow} {3}{matha}{"D1}
+ \mathabx@aliases\rightarrow\to
+% \DeclareMathSymbol{\uparrow} {3}{matha}{"D2}
+% \DeclareMathSymbol{\downarrow} {3}{matha}{"D3}
+\DeclareMathSymbol{\nwarrow} {3}{matha}{"D4}
+\DeclareMathSymbol{\nearrow} {3}{matha}{"D5}
+\DeclareMathSymbol{\swarrow} {3}{matha}{"D6}
+\DeclareMathSymbol{\searrow} {3}{matha}{"D7}
+\DeclareMathSymbol{\leftrightarrow} {3}{matha}{"D8}
+% \DeclareMathSymbol{\updownarrow} {3}{matha}{"D9}
+\DeclareMathSymbol{\nleftarrow} {3}{matha}{"DA}
+\DeclareMathSymbol{\nrightarrow} {3}{matha}{"DB}
+\DeclareMathSymbol{\nleftrightarrow} {3}{matha}{"DC}
+\mathabx@undefine{\relbar}
+\DeclareMathSymbol{\relbar} {3}{matha}{"DD}
+\DeclareMathSymbol{\mapstochar} {3}{matha}{"DE}
+\DeclareMathSymbol{\mapsfromchar} {3}{matha}{"DF}
+%
+\DeclareMathSymbol{\leftharpoonup} {3}{matha}{"E0}
+\DeclareMathSymbol{\rightharpoonup} {3}{matha}{"E1}
+\DeclareMathSymbol{\leftharpoondown} {3}{matha}{"E2}
+\DeclareMathSymbol{\rightharpoondown} {3}{matha}{"E3}
+\DeclareMathSymbol{\upharpoonleft} {3}{matha}{"E4}
+\DeclareMathSymbol{\downharpoonleft} {3}{matha}{"E5}
+\DeclareMathSymbol{\upharpoonright} {3}{matha}{"E6}
+\DeclareMathSymbol{\restriction} {0}{matha}{"E6}
+\DeclareMathSymbol{\downharpoonright} {3}{matha}{"E7}
+\DeclareMathSymbol{\leftrightharpoons} {3}{matha}{"E8}
+\mathabx@undefine{\rightleftharpoons}
+\DeclareMathSymbol{\rightleftharpoons} {3}{matha}{"E9}
+\DeclareMathSymbol{\updownharpoons} {3}{matha}{"EA}
+\DeclareMathSymbol{\downupharpoons} {3}{matha}{"EB}
+%
+\DeclareMathSymbol{\Leftarrow} {3}{matha}{"F0}
+\DeclareMathSymbol{\Rightarrow} {3}{matha}{"F1}
+% \DeclareMathSymbol{\Uparrow} {3}{matha}{"F2}
+% \DeclareMathSymbol{\Downarrow} {3}{matha}{"F3}
+\DeclareMathSymbol{\Leftrightarrow} {3}{matha}{"F4}
+% \DeclareMathSymbol{\Updownarrow} {3}{matha}{"F5}
+\DeclareMathSymbol{\nLeftarrow} {3}{matha}{"F6}
+\DeclareMathSymbol{\nRightarrow} {3}{matha}{"F7}
+\DeclareMathSymbol{\nLeftrightarrow} {3}{matha}{"F8}
+\mathabx@undefine{\Relbar}
+\DeclareMathSymbol{\Relbar} {3}{matha}{"F9}
+\DeclareMathSymbol{\Mapstochar} {3}{matha}{"FA}
+\DeclareMathSymbol{\Mapsfromchar} {3}{matha}{"FB}
+\end@mathabx
+%
+\mathabx@mathb
+\symbol@message{Arrows and harpoons (mathb)}
+%
+\DeclareMathSymbol{\leftleftarrows} {3}{mathb}{"D0}
+\DeclareMathSymbol{\rightrightarrows} {3}{mathb}{"D1}
+\DeclareMathSymbol{\upuparrows} {3}{mathb}{"D2}
+\DeclareMathSymbol{\downdownarrows} {3}{mathb}{"D3}
+\DeclareMathSymbol{\leftrightarrows} {3}{mathb}{"D4}
+\DeclareMathSymbol{\rightleftarrows} {3}{mathb}{"D5}
+\DeclareMathSymbol{\updownarrows} {3}{mathb}{"D6}
+\DeclareMathSymbol{\downuparrows} {3}{mathb}{"D7}
+\DeclareMathSymbol{\leftleftharpoons} {3}{mathb}{"D8}
+\DeclareMathSymbol{\rightrightharpoons} {3}{mathb}{"D9}
+\DeclareMathSymbol{\upupharpoons} {3}{mathb}{"DA}
+\DeclareMathSymbol{\downdownharpoons} {3}{mathb}{"DB}
+\DeclareMathSymbol{\leftbarharpoon} {3}{mathb}{"DC}
+\DeclareMathSymbol{\rightbarharpoon} {3}{mathb}{"DD}
+\DeclareMathSymbol{\barleftharpoon} {3}{mathb}{"DE}
+\DeclareMathSymbol{\barrightharpoon} {3}{mathb}{"DF}
+\DeclareMathSymbol{\leftrightharpoon} {3}{mathb}{"E0}
+\DeclareMathSymbol{\rightleftharpoon} {3}{mathb}{"E1}
+%
+\DeclareMathSymbol{\rhook} {3}{mathb}{"E2}
+\DeclareMathSymbol{\lhook} {3}{mathb}{"E3}
+\DeclareMathSymbol{\diagup} {3}{mathb}{"E4}
+\DeclareMathSymbol{\diagdown} {3}{mathb}{"E5}
+%
+\DeclareMathSymbol{\Lsh} {3}{mathb}{"E8}
+ \mathabx@aliases\Lsh\ulsh
+\DeclareMathSymbol{\Rsh} {3}{mathb}{"E9}
+ \mathabx@aliases\Rsh\ursh
+\DeclareMathSymbol{\dlsh} {3}{mathb}{"EA}
+\DeclareMathSymbol{\drsh} {3}{mathb}{"EB}
+%
+\DeclareMathSymbol{\looparrowleft} {3}{mathb}{"EC}
+ \mathabx@aliases\looparrowleft\looparrowupleft
+\DeclareMathSymbol{\looparrowright} {3}{mathb}{"ED}
+ \mathabx@aliases\looparrowright\looparrowupright
+\DeclareMathSymbol{\looparrowdownleft} {3}{mathb}{"EE}
+\DeclareMathSymbol{\looparrowdownright} {3}{mathb}{"EF}
+%
+\DeclareMathSymbol{\curvearrowleft} {3}{mathb}{"F0}
+ \mathabx@aliases\curvearrowleft\curvearrowtopleft
+\DeclareMathSymbol{\curvearrowright} {3}{mathb}{"F1}
+ \mathabx@aliases\curvearrowright\curvearrowtopright
+\DeclareMathSymbol{\curvearrowleftright} {3}{mathb}{"F2}
+ \mathabx@aliases\curvearrowleftright\curvearrowtopleftright
+\DeclareMathSymbol{\curvearrowbotleft} {3}{mathb}{"F3}
+\DeclareMathSymbol{\curvearrowbotright} {3}{mathb}{"F4}
+\DeclareMathSymbol{\curvearrowbotleftright}{3}{mathb}{"F5}
+%
+\DeclareMathSymbol{\circlearrowleft} {3}{mathb}{"F6}
+\DeclareMathSymbol{\circlearrowright} {3}{mathb}{"F7}
+%
+\DeclareMathSymbol{\leftsquigarrow} {3}{mathb}{"F8}
+\DeclareMathSymbol{\rightsquigarrow} {3}{mathb}{"F9}
+\DeclareMathSymbol{\leftrightsquigarrow} {3}{mathb}{"FA}
+%\DeclareMathSymbol{????????} {3}{mathb}{"FB}
+%
+\DeclareMathSymbol{\lefttorightarrow} {3}{mathb}{"FC}
+\DeclareMathSymbol{\righttoleftarrow} {3}{mathb}{"FD}
+\DeclareMathSymbol{\uptodownarrow} {3}{mathb}{"FE}
+\DeclareMathSymbol{\downtouparrow} {3}{mathb}{"FF}
+\end@mathabx
+%
+\mathabx@matha
+\symbol@message{Circles (matha)}
+%
+\DeclareMathSymbol{\oplus} {2}{matha}{"60}
+\DeclareMathSymbol{\ominus} {2}{matha}{"61}
+ \mathabx@aliases\ominus\circleddash
+\DeclareMathSymbol{\otimes} {2}{matha}{"62}
+\DeclareMathSymbol{\odiv} {2}{matha}{"63}
+\DeclareMathSymbol{\odot} {2}{matha}{"64}
+\DeclareMathSymbol{\ocirc} {2}{matha}{"65}
+ \mathabx@aliases\ocirc\circledcirc
+\DeclareMathSymbol{\oasterisk} {2}{matha}{"66}
+ \mathabx@aliases\oasterisk\circledast
+\DeclareMathSymbol{\ocoasterisk} {2}{matha}{"67}
+\DeclareMathSymbol{\oleft} {2}{matha}{"68}
+\DeclareMathSymbol{\oright} {2}{matha}{"69}
+\DeclareMathSymbol{\otop} {2}{matha}{"6A}
+\DeclareMathSymbol{\obot} {2}{matha}{"6B}
+ \mathabx@aliases\obot\operp
+\DeclareMathSymbol{\ovoid} {2}{matha}{"6C}
+\DeclareMathSymbol{\oslash} {2}{matha}{"6D}
+\DeclareMathSymbol{\obackslash} {2}{matha}{"6E}
+\DeclareMathSymbol{\otriangleup} {2}{matha}{"6F}
+\end@mathabx
+%
+\mathabx@mathb
+\symbol@message{Boxes (mathb)}
+%
+\DeclareMathSymbol{\boxplus} {2}{mathb}{"60}
+\DeclareMathSymbol{\boxminus} {2}{mathb}{"61}
+ \mathabx@aliases\boxminus\boxeddash
+\DeclareMathSymbol{\boxtimes} {2}{mathb}{"62}
+\DeclareMathSymbol{\boxdiv} {2}{mathb}{"63}
+\DeclareMathSymbol{\boxdot} {2}{mathb}{"64}
+\DeclareMathSymbol{\boxcirc} {2}{mathb}{"65}
+ \mathabx@aliases\boxcirc\boxedcirc
+\DeclareMathSymbol{\boxasterisk} {2}{mathb}{"66}
+ \mathabx@aliases\boxasterisk\boxedast
+\DeclareMathSymbol{\boxcoasterisk}{2}{mathb}{"67}
+\DeclareMathSymbol{\boxleft} {2}{mathb}{"68}
+\DeclareMathSymbol{\boxright} {2}{mathb}{"69}
+\DeclareMathSymbol{\boxtop} {2}{mathb}{"6A}
+\DeclareMathSymbol{\boxbot} {2}{mathb}{"6B}
+ \mathabx@aliases\boxbot\boxperp
+\DeclareMathSymbol{\boxvoid} {2}{mathb}{"6C}
+\mathabx@undefine{\Box}
+\DeclareMathSymbol{\Box} {0}{mathb}{"6C}
+\DeclareMathSymbol{\boxslash} {2}{mathb}{"6D}
+\DeclareMathSymbol{\boxbackslash} {2}{mathb}{"6E}
+\DeclareMathSymbol{\boxtriangleup}{2}{mathb}{"6F}
+%
+\symbol@message{Mayan numerals $\mathbfont 0\ 1\ 2\ 3\ 4\ 5$.}%
+%
+\newcount\mayacnter%
+\newcount\mayacnta%
+\newcount\mayacntb%
+\newcount\mayacntc%
+\newdimen\mayawidth%
+%
+\def\mayaexpansion{%
+ \mayacntc=\mayacnta\mathbfont
+ \ifnum\mayacntc=0 0\else
+ \loop\ifnum\mayacntc>5\advance\mayacntc by -5\repeat
+ \the\mayacntc\mayacntc=\mayacnta
+ \loop\ifnum\mayacntc>5\advance\mayacntc by -5 5\repeat
+ \fi}%
+\def\mayarecurse{{%
+ \mayacnta=\mayacnter \divide\mayacnter by 20
+ \ifnum\mayacnter>0\mayarecurse\fi
+ \mayacntb=\mayacnter
+ \multiply\mayacntb by-20
+ \advance\mayacnta by\mayacntb
+ \hbox to\mayawidth{\hss\mayaexpansion\hss}}}%
+%
+\def\maya#1{%
+ \mayacnter=#1
+ \setbox0\hbox{\mathbfont 0}%
+ \mayawidth=\wd0
+ \left\mayaleftdelimiter
+ \vcenter{\mayarecurse}
+ \right\mayarightdelimiter}%
+\def\mayadigit#1{%
+ \mayacnta=#1\hbox{\mathbfont\mayaexpansion}}%
+\def\mayadelimiters(#1,#2){%
+ \let\mayaleftdelimiter=#1
+ \let\mayarightdelimiter=#2}%
+\mayadelimiters(|,|)%
+\end@mathabx%
+%
+\mathabx@mathx%
+\symbol@message{Large operators (mathx)}
+%
+\mathabx@undefine{\sum}
+\DeclareMathSymbol{\sum} {1}{mathx}{"B0}
+\mathabx@undefine{\prod}
+\DeclareMathSymbol{\prod} {1}{mathx}{"B1}
+\mathabx@undefine{\coprod}
+\DeclareMathSymbol{\coprod} {1}{mathx}{"B2}
+\DeclareMathSymbol{\intop} {1}{mathx}{"B3}
+\DeclareMathSymbol{\iintop} {1}{mathx}{"B4}
+%\def\iintop{\intop\mkern-6mu\intop}
+ \mathabx@aliases\iintop\iint
+\DeclareMathSymbol{\iiintop}{1}{mathx}{"B5}
+%\def\iiintop{\intop\mkern-6mu\intop\mkern-6mu\intop}
+ \mathabx@aliases\iiintop\iiint
+\DeclareMathSymbol{\ointop} {1}{mathx}{"B6}
+ \mathabx@aliases\ointop\oint
+\DeclareMathSymbol{\oiintop}{1}{mathx}{"B7}
+ \mathabx@aliases\oiintop\oiint
+\def\int{\intop\nolimits}%
+% look yourself for \nolimits...
+\DeclareMathSymbol{\bigplus} {1}{mathx}{"90}
+\DeclareMathSymbol{\bigtimes} {1}{mathx}{"91}
+\DeclareMathSymbol{\bigcomplementop}{1}{mathx}{"92}%
+\def\bigcomplement{\bigcomplementop\nolimits}%
+%\DeclareMathSymbol{\bigtruc} {1}{mathx}{"93}
+%\DeclareMathSymbol{\bigcurt} {1}{mathx}{"94}
+\mathabx@undefine{\bigcap}%
+\DeclareMathSymbol{\bigcap} {1}{mathx}{"93}
+\mathabx@undefine{\bigcup}
+\DeclareMathSymbol{\bigcup} {1}{mathx}{"94}
+\mathabx@undefine{\biguplus}
+\DeclareMathSymbol{\biguplus} {1}{mathx}{"95}
+\mathabx@undefine{\bigsqcap}
+\DeclareMathSymbol{\bigsqcap} {1}{mathx}{"96}
+\mathabx@undefine{\bigsqcup}
+\DeclareMathSymbol{\bigsqcup} {1}{mathx}{"97}
+\DeclareMathSymbol{\bigsquplus} {1}{mathx}{"98}
+\mathabx@undefine{\bigwedge}
+\DeclareMathSymbol{\bigwedge} {1}{mathx}{"99}
+\mathabx@undefine{\bigvee}
+\DeclareMathSymbol{\bigvee} {1}{mathx}{"9A}
+\DeclareMathSymbol{\bigcurlywedge} {1}{mathx}{"9B}
+\DeclareMathSymbol{\bigcurlyvee} {1}{mathx}{"9C}
+%
+\symbol@message{Big circles (mathx)}
+%
+\mathabx@undefine{\bigoplus}
+\DeclareMathSymbol{\bigoplus} {1}{mathx}{"C0}
+\DeclareMathSymbol{\bigominus} {1}{mathx}{"C1}
+\mathabx@undefine{\bigotimes}
+\DeclareMathSymbol{\bigotimes} {1}{mathx}{"C2}
+\DeclareMathSymbol{\bigodiv} {1}{mathx}{"C3}
+\mathabx@undefine{\bigodot}
+\DeclareMathSymbol{\bigodot} {1}{mathx}{"C4}
+\DeclareMathSymbol{\bigocirc} {1}{mathx}{"C5}
+\DeclareMathSymbol{\bigoasterisk} {1}{mathx}{"C6}
+\DeclareMathSymbol{\bigocoasterisk}{1}{mathx}{"C7}
+\DeclareMathSymbol{\bigoleft} {1}{mathx}{"C8}
+\DeclareMathSymbol{\bigoright} {1}{mathx}{"C9}
+\DeclareMathSymbol{\bigotop} {1}{mathx}{"CA}
+\DeclareMathSymbol{\bigobot} {1}{mathx}{"CB}
+ \mathabx@aliases\bigotop\bigoperp
+\DeclareMathSymbol{\bigovoid} {1}{mathx}{"CC}
+\DeclareMathSymbol{\bigoslash} {1}{mathx}{"CD}
+\DeclareMathSymbol{\bigobackslash} {1}{mathx}{"CE}
+\DeclareMathSymbol{\bigotriangleup}{1}{mathx}{"CF}
+%
+\symbol@message{Big boxes (mathx)}
+%
+\DeclareMathSymbol{\bigboxplus} {1}{mathx}{"D0}
+\DeclareMathSymbol{\bigboxminus} {1}{mathx}{"D1}
+\DeclareMathSymbol{\bigboxtimes} {1}{mathx}{"D2}
+\DeclareMathSymbol{\bigboxdiv} {1}{mathx}{"D3}
+\DeclareMathSymbol{\bigboxdot} {1}{mathx}{"D4}
+\DeclareMathSymbol{\bigboxcirc} {1}{mathx}{"D5}
+\DeclareMathSymbol{\bigboxasterisk} {1}{mathx}{"D6}
+\DeclareMathSymbol{\bigboxcoasterisk}{1}{mathx}{"D7}
+\DeclareMathSymbol{\bigboxleft} {1}{mathx}{"D8}
+\DeclareMathSymbol{\bigboxright} {1}{mathx}{"D9}
+\DeclareMathSymbol{\bigboxtop} {1}{mathx}{"DA}
+\DeclareMathSymbol{\bigboxbot} {1}{mathx}{"DB}
+ \mathabx@aliases\bigboxbot\bigboxperp
+\DeclareMathSymbol{\bigboxvoid} {1}{mathx}{"DC}
+\DeclareMathSymbol{\bigboxslash} {1}{mathx}{"DD}
+\DeclareMathSymbol{\bigboxbackslash} {1}{mathx}{"DE}
+\DeclareMathSymbol{\bigboxtriangleup}{1}{mathx}{"DF}
+\end@mathabx
+%
+\mathabx@matha
+\mathabx@mathx
+\symbol@message{Delimiters (matha/mathx)}
+%
+\DeclareMathDelimiter{(} {matha}{"70}{mathx}{"00}
+\DeclareMathDelimiter{)} {matha}{"71}{mathx}{"08}
+\DeclareMathDelimiter{[} {matha}{"72}{mathx}{"10}
+\DeclareMathDelimiter{]} {matha}{"73}{mathx}{"18}
+\DeclareMathDelimiter{\lbrace} {4}{matha}{"74}{mathx}{"20}
+\ifx\@latexbug\undefined
+ \mathabx@aliases\lbrace\{
+\else% suggested by Patrick Cousot
+ \DeclareRobustCommand{\{}{\ifmmode\lbrace\else\textbraceleft\fi}
+\fi
+\DeclareMathDelimiter{\rbrace} {5}{matha}{"75}{mathx}{"28}
+\ifx\@latexbug\undefined
+ \mathabx@aliases\rbrace\}
+\else
+ \DeclareRobustCommand{\}}{\ifmmode\rbrace\else\textbraceright\fi}
+\fi
+\DeclareMathDelimiter{\ldbrack} {4}{matha}{"76}{mathx}{"30}
+ \mathabx@aliases\ldbrack\lsemantic
+\DeclareMathDelimiter{\rdbrack} {5}{matha}{"77}{mathx}{"38}
+ \mathabx@aliases\rdbrack\rsemantic
+\DeclareMathDelimiter{\langle} {4}{matha}{"78}{mathx}{"40}
+\DeclareMathDelimiter{\rangle} {5}{matha}{"79}{mathx}{"44}
+\mathabx@undefine{\backslash}
+\DeclareMathDelimiter{\backslash} {0}{matha}{"7A}{mathx}{"48}
+\DeclareMathDelimiter{/} {matha}{"7B}{mathx}{"4C}
+\DeclareMathDelimiter{\vert} {0}{matha}{"7C}{mathx}{"07}
+\DeclareMathDelimiter{|} {matha}{"7C}{mathx}{"07}
+\DeclareMathDelimiter{\Vert} {0}{matha}{"7D}{mathx}{"0F}
+\DeclareMathDelimiter{\vvvert} {0}{matha}{"7E}{mathx}{"17}
+ \mathabx@aliases\Vert\|
+\DeclareMathDelimiter{\uparrow} {3}{matha}{"D2}{mathx}{"9D}
+\DeclareMathDelimiter{\downarrow} {3}{matha}{"D3}{mathx}{"9E}
+\DeclareMathDelimiter{\updownarrow}{3}{matha}{"D9}{mathx}{"9F}
+\DeclareMathDelimiter{\Uparrow} {3}{matha}{"F2}{mathx}{"AD}
+\DeclareMathDelimiter{\Downarrow} {3}{matha}{"F3}{mathx}{"AE}
+\DeclareMathDelimiter{\Updownarrow}{3}{matha}{"F5}{mathx}{"AF}
+\end@mathabx
+\end@mathabx
+\mathabx@mathb
+\mathabx@mathx
+\symbol@message{Delimiters (mathb/mathx)}
+%
+\DeclareMathDelimiter{\lgroup} {4}{mathb}{"70}{mathx}{"76}% fully supp.
+\DeclareMathDelimiter{\rgroup} {5}{mathb}{"71}{mathx}{"77}% fully supp.
+\DeclareMathDelimiter{\lceil} {4}{mathb}{"72}{mathx}{"50}
+\DeclareMathDelimiter{\rceil} {5}{mathb}{"73}{mathx}{"54}
+\DeclareMathDelimiter{\lfloor} {4}{mathb}{"74}{mathx}{"58}
+\DeclareMathDelimiter{\rfloor} {5}{mathb}{"75}{mathx}{"5C}
+\DeclareMathDelimiter{\thickvert} {0}{mathb}{"7E}{mathx}{"1F}
+\end@mathabx
+\end@mathabx
+%
+\mathabx@mathx
+\symbol@message{Delimiters (mathx/mathx)}
+%
+\DeclareMathDelimiter{\lfilet} {4}{mathx}{"37}{mathx}{"37}
+\DeclareMathDelimiter{\rfilet} {5}{mathx}{"3F}{mathx}{"3F}
+%
+%\DeclareMathDelimiter{\lmoustache}{4}{mathx}{"05}{mathx}{"05}% not supp.
+%\DeclareMathDelimiter{\rmoustache}{5}{mathx}{"0D}{mathx}{"0D}% not supp.
+\end@mathabx
+%
+\mathabx@mathx
+\symbol@message{Pieces for over-under-braces and such (mathx)}
+%
+\DeclareMathSymbol{\braceld} {0}{mathx}{"68}
+\DeclareMathSymbol{\bracemd} {0}{mathx}{"69}
+\DeclareMathSymbol{\bracerd} {0}{mathx}{"6A}
+\DeclareMathSymbol{\bracexd} {0}{mathx}{"6B}
+\DeclareMathSymbol{\bracelu} {0}{mathx}{"6C}
+\DeclareMathSymbol{\bracemu} {0}{mathx}{"6D}
+\DeclareMathSymbol{\braceru} {0}{mathx}{"6E}
+\DeclareMathSymbol{\bracexu} {0}{mathx}{"6F}
+%
+% Borrowed from "newmath" by Matthias Clasen and Ulrik Vieth.
+%
+\def\braceexwd{2mu}%
+\def\bracevkern{0pt}%
+%
+% Remark: it seems that new horizontal braces may take
+% into account vertical skip in their native design.
+% We've followed this idea and not Knuth's construction.
+% But we can add or sustract \bracevkern.
+%
+\def\bracefill#1#2#3#4{$\m@th
+ #1#4\mkern-\braceexwd \cleaders\hbox{$#4$}\hfill
+ \mkern-\braceexwd#4#2#4\mkern-\braceexwd
+ \cleaders\hbox{$#4$}\hfill \mkern-\braceexwd#4#3$}%
+%
+\def\overbrace@#1#2{\mathop{\vbox{\m@th\ialign{##\crcr
+ \noalign{\kern\bracevkern}
+ #1\crcr\noalign{\kern\bracevkern\nointerlineskip}%
+ $\hfil\displaystyle{#2}\hfil$\crcr}}}\limits}%
+%
+\def\underbrace@#1#2{\mathop{\vtop{\m@th\ialign{##\crcr
+ $\hfil\displaystyle{#2}\hfil$\crcr
+ \noalign{\kern\bracevkern\nointerlineskip}
+ #1\crcr\noalign{\kern\bracevkern}}}}\limits}%
+% user-level macros
+\def\overbrace{\overbrace@{\bracefill\braceld\bracemd\bracerd\bracexd}}
+\def\underbrace{\underbrace@{\bracefill\bracelu\bracemu\braceru\bracexu}}
+\def\overgroup{\overbrace@{\bracefill\braceld{}\bracerd\bracexd}}
+\def\undergroup{\underbrace@{\bracefill\bracelu{}\braceru\bracexu}}
+%
+\symbol@message{Extensible accents (mathx)}
+%
+\DeclareMathAccent{\widehat} {0}{mathx}{"70}
+\DeclareMathAccent{\widecheck} {0}{mathx}{"71}
+\DeclareMathAccent{\widetilde} {0}{mathx}{"72}
+\DeclareMathAccent{\widebar} {0}{mathx}{"73}
+\DeclareMathAccent{\widearrow} {0}{mathx}{"74}
+\DeclareMathAccent{\wideparen} {0}{mathx}{"75}
+ \def\widering#1{\ring{\wideparen{#1}}}%
+ \def\widedot#1{\dot{\wideparen{#1}}}%
+ \def\wideddot#1{\ddot{\wideparen{#1}}}%
+ \def\widedddot#1{\dddot{\wideparen{#1}}}%
+ \def\wideddddot#1{\ddddot{\wideparen{#1}}}%
+\edef\surd{{\noexpand\mathchar"1\expandafter\hexnumber@
+ \ifx\@latexbug\undefined\mathxfam\else\symmathx\fi60}}%
+\ifx\@latexbug\undefined
+ \ifx\mathabx@matha\relax
+ \DeclareMathRadical{\sqrt}{matha}{"3F}{mathx}{"61}
+ \else
+ \DeclareMathRadical{\sqrt}{mathx}{"60}{mathx}{"61}
+ \fi
+\else% suggested by Kohsaku Hotta
+ \mathabx@undefine{\sqrtsign}
+ \ifx\mathabx@matha\relax
+ \DeclareMathRadical{\sqrtsign}{matha}{"3F}{mathx}{"61}
+ \else
+ \DeclareMathRadical{\sqrtsign}{mathx}{"60}{mathx}{"61}
+ \fi
+\fi
+\end@mathabx
+%
+%
+% the \not construction
+%
+\long\def\@gobble#1{}
+%
+\def\not#1{%
+\let\@@not=\not \let\@@n=\n \let\not=\relax \let\n=\relax
+\expandafter\ifx\csname not\expandafter\@gobble\string#1\endcsname\relax%
+\expandafter\ifx\csname n\expandafter\@gobble\string#1\endcsname\relax%
+\notsign#1%
+\else\csname n\expandafter\@gobble\string#1\endcsname\fi
+\else\csname not\expandafter\@gobble\string#1\endcsname\fi
+\let\not=\@@not \let\n=\@@n}
+%
+\ifx\mathabx@mathb\mathabx@skip
+ \let\varnot=\not
+ \let\changenotsign=\relax
+\else
+ \def\varnot#1{%
+ \let\@@not=\varnot\let\varnot=\relax
+ \expandafter
+ \ifx
+ \csname varnot\expandafter\@gobble\string#1\endcsname
+ \relax%
+ \varnotsign#1%
+ \else
+ \csname varnot\expandafter\@gobble\string#1\endcsname
+ \fi
+ \let\varnot=\@@not}
+ \def\changenotsign{%
+ \let\@@not=\notsign
+ \let\notsign=\varnotsign
+ \let\varnotsign=\@@not}
+\fi
+
+\def\mathabx@anyfill#1#2#3{$\m@th
+ \ifx#1\relax\relax\smash#2\mkern-7mu\else\mathord#1\mkern-7mu\fi
+ \cleaders\hbox{$\mkern-2mu\smash#2\mkern-2mu$}\hfill
+ \ifx#3\relax\relax\mkern-7mu\smash#2\else\mkern-7mu\mathord#3\fi$}
+
+\def\mathabx@overfill#1#2#3#4#5{\vbox{\m@th\ialign{##\crcr
+ \mathabx@anyfill{#2}{#3}{#4}\crcr
+ \noalign{\kern#1\nointerlineskip}%
+ $\hfil\displaystyle{#5}\hfil$\crcr}}}%
+\def\mathabx@underfill#1#2#3#4#5{\vtop{\m@th\ialign{##\crcr
+ $\hfil\displaystyle{#5}\hfil$\crcr
+ \noalign{\kern#1\nointerlineskip}%
+ \mathabx@anyfill{#2}{#3}{#4}\crcr}}}%
+
+\def\overrightarrow{\mathabx@overfill{-\p@}{}\relbar\rightarrow}%
+\def\overleftarrow{\mathabx@overfill{-\p@}\leftarrow\relbar{}}%
+\def\overleftrightarrow{\mathabx@overfill{-\p@}\leftarrow\relbar\rightarrow}%
+\def\underrightarrow{\mathabx@underfill{\p@}{}\relbar\rightarrow}%
+\def\underleftarrow{\mathabx@underfill{\p@}\leftarrow\relbar{}}%
+\def\underleftrightarrow{\mathabx@underfill{\p@}\leftarrow\relbar\rightarrow}%
+\def\overRightarrow{\mathabx@overfill{-.5\p@}{}\Relbar\Rightarrow}%
+\def\overLeftarrow{\mathabx@overfill{-.5\p@}\Leftarrow\Relbar{}}%
+\def\overLeftRightarrow{\mathabx@overfill{-.5\p@}\Leftarrow\Relbar\Rightarrow}%
+\def\underRightarrow{\mathabx@underfill{\p@}{}\Relbar\Rightarrow}%
+\def\underLeftarrow{\mathabx@underfill{\p@}\Leftarrow\Relbar{}}%
+\def\underLeftRightarrow{\mathabx@underfill{\p@}\Leftarrow\Relbar\Rightarrow}%
+%
+%\symbol@message{\centerline{---~Leaving mathabx.tex~---}}
+%
+\catcode`@=12
+\endinput
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
+% UNAVAILABLE
+%
+%\symbol@message{Small things ???}
+%
+\DeclareMathSymbol{\smallsum}{0}{mathx}{"40}
+\DeclareMathSymbol{\smallprod}{0}{mathx}{"41}
+\DeclareMathSymbol{\smallcoprod}{0}{mathx}{"42}
+\DeclareMathSymbol{\complement}{0}{mathx}{"43}
+\DeclareMathSymbol{\boldcomplement}{0}{mathx}{"44}
+\DeclareMathSymbol{\boldcup}{2}{mathx}{"45}
+\DeclareMathSymbol{\boldcap}{2}{mathx}{"46}
+\DeclareMathSymbol{\boldZ}{0}{mathx}{"47}
+\DeclareMathSymbol{\bigboldZ}{1}{mathx}{"4A}
+%
+%\symbol@message{Inequalities (mathbb) unsupported}
+%
+%\DeclareMathSymbol{\preceqq}{3}{mathb}{"AE}
+%\DeclareMathSymbol{\succeqq}{3}{mathb}{"AF}
+%\DeclareMathSymbol{\notpreceqq}{3}{mathb}{"B0}
+% \let\@notpreceqq=!
+% \let\npreceqq=\notpreceqq
+%\DeclareMathSymbol{\notsucceqq}{3}{mathb}{"B1}
+% \let\@notqeqq=!
+% \let\nsucceqq=\notsucceqq
+%\DeclareMathSymbol{\precneqq}{3}{mathb}{"B2}
+%\DeclareMathSymbol{\succneqq}{3}{mathb}{"B3}
+%\DeclareMathSymbol{\precvertneqq}{3}{mathb}{"B4}
+%\DeclareMathSymbol{\succvertneqq}{3}{mathb}{"B5}
+%\DeclareMathSymbol{\precsucc}{3}{mathb}{"B2}
+%\DeclareMathSymbol{\succprec}{3}{mathb}{"B3}
+%\DeclareMathSymbol{\preceqsucc}{3}{mathb}{"B4}
+%\DeclareMathSymbol{\succeqprec}{3}{mathb}{"B5}
+%\DeclareMathSymbol{\preceqqsucc}{3}{mathb}{"B6}
+%\DeclareMathSymbol{\succeqqprec}{3}{mathb}{"B7}
+
+%\DeclareMathSymbol{\upasterisk}{0}{matha}{}
+%\DeclareMathSymbol{\lowasterisk}{0}{matha}{}
+%\DeclareMathSymbol{\triasterisk}{0}{matha}{}
+%
+\symbol@message{Hebrew (matha/mathb)}
+%
+\DeclareMathSymbol{\aleph}{7}{matha}{"40}
+\DeclareMathSymbol{\beth}{7}{matha}{"41}
+\DeclareMathSymbol{\gimmel}{7}{matha}{"42}
+\DeclareMathSymbol{\dalet}{7}{matha}{"43}
+\DeclareMathSymbol{\he}{7}{matha}{"44}
+\DeclareMathSymbol{\vav}{7}{matha}{"45}
+\DeclareMathSymbol{\zayin}{7}{matha}{"46}
+\DeclareMathSymbol{\het}{7}{matha}{"47}
+\DeclareMathSymbol{\tet}{7}{matha}{"48}
+\DeclareMathSymbol{\yod}{7}{matha}{"49}
+\DeclareMathSymbol{\finalkaf}{7}{matha}{"4A}
+\DeclareMathSymbol{\kaf}{7}{matha}{"4B}
+\DeclareMathSymbol{\lamed}{7}{matha}{"4C}
+\DeclareMathSymbol{\finalmem}{7}{matha}{"4D}
+\DeclareMathSymbol{\mem}{7}{matha}{"4E}
+\DeclareMathSymbol{\finalnun}{7}{matha}{"4F}
+\DeclareMathSymbol{\nun}{7}{matha}{"50}
+\DeclareMathSymbol{\samekh}{7}{matha}{"51}
+\DeclareMathSymbol{\ayin}{7}{matha}{"52}
+\DeclareMathSymbol{\finalpe}{7}{matha}{"53}
+\DeclareMathSymbol{\pe}{7}{matha}{"54}
+\DeclareMathSymbol{\finaltzadik}{7}{matha}{"55}
+\DeclareMathSymbol{\tzadik}{7}{matha}{"56}
+\DeclareMathSymbol{\qof}{7}{matha}{"57}
+\DeclareMathSymbol{\resh}{7}{matha}{"58}
+\DeclareMathSymbol{\shin}{7}{matha}{"59}
+\DeclareMathSymbol{\tav}{7}{matha}{"5A}
+%
+% \DeclareMathSymbol{\Qinv} {0}{matha}{"4A}
+% \DeclareMathSymbol{\BourbarkiZ} {0}{matha}{"4F}
+%%%{\catcode`\°=\active \gdef°{^\degree}}
+%%%\mathcode`\°="8000
+%%% pas bon du tout, il faudrait pouvoir
+%%% le melanger avec les '''
+%
+%
+%\DeclareMathSymbol{\dottruc} {2}{mathb}{"06}% name to be checked
+%\DeclareMathSymbol{\dotcurt} {2}{mathb}{"07}% name to be checked
+\DeclareMathSymbol{\truc} {2}{matha}{"06}
+\DeclareMathSymbol{\curt} {2}{matha}{"07}
diff --git a/fonts/mathabx/texinputs/mathabx.sty b/fonts/mathabx/texinputs/mathabx.sty
new file mode 100644
index 0000000000..90bce2020c
--- /dev/null
+++ b/fonts/mathabx/texinputs/mathabx.sty
@@ -0,0 +1,80 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% mathabx.sty. Version: May 18, 2005.
+% Author: Anthony PHAN.
+% matches the ``mathabx'' family.
+% LaTeX input/style file
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
+\NeedsTeXFormat{LaTeX2e}
+\ProvidesPackage{mathabx}
+ [2003/07/29 v0.0 Non-standard LaTeX package mathabx]
+%
+% Options
+%
+\long\def\mathabx@skip#1\end@mathabx{}%
+\let\end@mathabx=\relax
+\let\mathabx@matha=\mathabx@skip
+\let\mathabx@mathb=\mathabx@skip
+\let\mathabx@mathx=\mathabx@skip
+\def\mathabx@undefine#1{\let#1=\undefined}%
+\def\mathabx@aliases#1#2{\@mathabx@aliases#1#2?\@end}
+\def\@mathabx@aliases#1#2#3\@end{\ifx#2?\else
+ \let#2=#1\@mathabx@aliases#1#3\@end\fi}%
+%
+\DeclareOption{matha}{\let\mathabx@matha=\relax}
+\DeclareOption{mathb}{\let\mathabx@mathb=\relax}
+\DeclareOption{mathx}{\let\mathabx@mathx=\relax}
+%
+\ProcessOptions
+%
+\ifx\mathabx@matha\mathabx@skip
+ \ifx\mathabx@mathb\mathabx@skip
+ \ifx\mathabx@mathx\mathabx@skip
+ \let\mathabx@matha=\relax
+ \let\mathabx@mathb=\relax
+ \let\mathabx@mathx=\relax
+ \fi
+ \fi
+\fi
+%
+% mathabx's font declarations
+%
+\mathabx@matha
+\DeclareFontFamily{U}{matha}{\hyphenchar\font45}
+\DeclareFontShape{U}{matha}{m}{n}{
+ <5> <6> <7> <8> <9> <10> gen * matha
+ <10.95> matha10 <12> <14.4> <17.28> <20.74> <24.88> matha12
+ }{}
+\DeclareSymbolFont{matha}{U}{matha}{m}{n}
+\DeclareFontSubstitution{U}{matha}{m}{n}
+\end@mathabx
+\mathabx@mathb
+\DeclareFontFamily{U}{mathb}{\hyphenchar\font45}
+\DeclareFontShape{U}{mathb}{m}{n}{
+ <5> <6> <7> <8> <9> <10> gen * mathb
+ <10.95> mathb10 <12> <14.4> <17.28> <20.74> <24.88> mathb12
+ }{}
+\DeclareSymbolFont{mathb}{U}{mathb}{m}{n}
+\DeclareFontSubstitution{U}{mathb}{m}{n}
+\end@mathabx
+\mathabx@mathx
+\DeclareFontFamily{U}{mathx}{\hyphenchar\font45}
+\DeclareFontShape{U}{mathx}{m}{n}{
+ <5> <6> <7> <8> <9> <10>
+ <10.95> <12> <14.4> <17.28> <20.74> <24.88>
+ mathx10
+ }{}
+\DeclareSymbolFont{mathx}{U}{mathx}{m}{n}
+\DeclareFontSubstitution{U}{mathx}{m}{n}
+\end@mathabx
+%
+% no proofmode
+%
+\def\symbol@message#1{\relax}
+\input mathabx.dcl
+%
+% end of file.
+%
+\endinput
+
+
diff --git a/fonts/mathabx/texinputs/mathabx.tex b/fonts/mathabx/texinputs/mathabx.tex
new file mode 100644
index 0000000000..6ad0c8abb7
--- /dev/null
+++ b/fonts/mathabx/texinputs/mathabx.tex
@@ -0,0 +1,145 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% mathabx.tex. Version: May 18, 2005.
+% Author: Anthony PHAN.
+% matches the ``mathabx'' family.
+% plain-TeX input file
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
+\ifx\mathabxversion\undefined\else\endinput\fi
+\def\mathabxversion{January 28, 2004}%
+%
+\catcode`@=11
+%
+% proofing?
+%
+
+\ifx\proofmode\undefined
+ \def\symbol@message#1{\relax}%
+ \def\symbol@mark#1#2{\relax}%
+ \def\check@definition#1{\relax}%
+ \def\mathabx@undefine#1{\let#1=\undefined}%
+ \def\mathabx@aliases#1#2{\@mathabx@aliases#1#2?\@end}
+ \def\@mathabx@aliases#1#2#3\@end{\ifx#2?\else
+ \let#2=#1\@mathabx@aliases#1#3\@end\fi}%
+\else
+ \def\symbol@message#1{\vskip\z@ plus\baselineskip
+ \penalty-250\vskip\z@ plus-\baselineskip
+ \medbreak{\noindent\bf #1}%
+ \nobreak\smallskip\noindent\ignorespaces}%
+ \def\symbolsp@cing#1{\ifcase\number#1 ord\or op%
+ \or bin\or rel\or open\or close\or punct%
+ \or var\else other\fi}%
+ \def\symbol@mark#1#2{\allowbreak
+ \hbox to 0.05\hsize{$#1$\hss}%
+ \hbox to 0.05\hsize{\unhbox0\hss}%
+ \hbox to 0.4001\hsize{{\tt\string#1}%
+ $^{\rm\symbolsp@cing{#2}}$\hfil}%
+ \ignorespaces}%
+ \def\check@definition#1{\ifx#1\undefined
+ \setbox0\hbox{}%
+ \else\setbox0=\hbox{$#1\relax$}\fi}%
+ \def\mathabx@undefine#1{}%
+ \def\mathabx@aliases#1#2{\setbox0=\lastbox
+ \@mathabx@aliases#1#2?\@end
+ \ifdim\wd0>0.4\hsize\hbox to 0.9001\hsize{\unhbox0\hfill}%
+ \else\hbox to 0.4001\hsize{\unhbox0\hfill}\fi}%
+ \def\@mathabx@aliases#1#2#3\@end{\ifx#2?\else
+ \let#2=#1%
+ \setbox0=\hbox{\unhbox0, \tt\string#2}%
+ \@mathabx@aliases#1#3\@end\fi}%
+\fi
+%
+% Symbols declarations: \LaTeX-like commands
+%
+\def\hexnumber@#1{\ifcase\number#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\else F\fi}%
+\def\hexnumber@@#1{{\count0=#1
+ \count1=#1
+ \divide\count0 by 16
+ \hexnumber@\count0
+ \multiply\count0 by 16
+ \advance\count1 by -\count0
+ \hexnumber@\count1}}%
+%
+\def\DeclareMathSymbol#1#2#3#4{\check@definition{#1}%
+ \count255=#2\multiply\count255 by 16
+ \advance\count255 by \csname#3fam\endcsname
+ \multiply\count255 by 256\advance\count255 by #4
+ \ifcat\noexpand#1\relax\mathchardef#1=\count255%
+ \else\expandafter
+ \mathcode\expandafter`\csname#1\endcsname=\count255%
+ \fi\symbol@mark{#1}{#2}}%
+%
+\def\gobble@quotes#1{\ifx#1"\else#1\fi}%
+%
+\def\@DeclareMathDelimiter#1#2#3#4#5#6{%
+ \edef#1{\noexpand\delimiter\noexpand"\gobble@quotes#2%
+ \expandafter\hexnumber@\csname#3fam\endcsname\gobble@quotes#4%
+ \expandafter\hexnumber@\csname#5fam\endcsname\gobble@quotes#6 }%
+ \symbol@mark{#1}{#2}}%
+%
+\def\@xDeclareMathDelimiter#1#2#3#4#5{%
+ \count255=\csname#2fam\endcsname
+ \multiply\count255 by 256\advance\count255 by #3
+ \multiply\count255 by 16
+ \advance\count255 by \csname#4fam\endcsname
+ \multiply\count255 by 256\advance\count255 by #5
+ \expandafter\delcode\expandafter`\csname#1\endcsname=\count255
+ \symbol@mark{#1}{8}}%
+%
+\def\DeclareMathDelimiter#1{\check@definition{#1}%
+ \ifcat\noexpand#1\relax
+ \def\Large@stuff{\noexpand\delimiter}%
+ \expandafter\@DeclareMathDelimiter
+ \else\expandafter\@xDeclareMathDelimiter\fi#1}%
+%
+\def\DeclareMathRadical#1#2#3#4#5{%\check@definition{#1}%
+ \edef#1{\noexpand\radical\noexpand"%
+ \expandafter\hexnumber@\csname#2fam\endcsname\gobble@quotes#3%
+ \expandafter\hexnumber@\csname#4fam\endcsname\gobble@quotes#5 }%
+ \symbol@mark{#1{}}{8}}%
+%
+\def\DeclareMathAccent#1#2#3#4{%\check@definition{#1}%
+ \edef#1{\noexpand\mathaccent\noexpand"%
+ \expandafter\hexnumber@\csname#3fam\endcsname\gobble@quotes#4 }%
+ \symbol@mark{#1{}}{8}}%
+%
+% loading math fonts
+%
+\font\twelvematha=matha10 at 12pt
+\font\tenmatha=matha10 \font\ninematha=matha9
+\font\eightmatha=matha8 \font\sevenmatha=matha7
+\font\sixmatha=matha6 \font\fivematha=matha5
+\newfam\mathafam
+\font\twelvemathb=mathb10 at 12pt
+\font\tenmathb=mathb10 \font\ninemathb=mathb9
+\font\eightmathb=mathb8 \font\sevenmathb=mathb7
+\font\sixmathb=mathb6 \font\fivemathb=mathb5
+\newfam\mathbfam
+\font\tenmathx=mathx10
+\newfam\mathxfam
+%\chardef\mathxfam=4
+%\let\tenex=\tenmathx
+%
+% Initialization
+% (make changes in your own file if you want different sizes)
+%
+\textfont\mathafam=\tenmatha \scriptfont\mathafam=\sevenmatha
+\scriptscriptfont\mathafam=\fivematha
+\textfont\mathbfam=\tenmathb \scriptfont\mathbfam=\sevenmathb
+\scriptscriptfont\mathbfam=\fivemathb
+\textfont\mathxfam=\tenmathx \scriptfont\mathxfam=\tenmathx
+\scriptscriptfont\mathxfam=\tenmathx
+%\def\dagesh#1{{\fam\mathbfam#1}}%
+\def\mathafont{\fam\mathafam\tenmatha}%
+\def\mathbfont{\fam\mathbfam\tenmathb}%
+\let\mathabx@matha=\relax
+\let\mathabx@mathb=\relax
+\let\mathabx@mathx=\relax
+\let\end@mathabx=\relax
+\input mathabx.dcl
+\catcode`@=12
+\let\proofmode=\undefined
+\endinput
+
+
diff --git a/fonts/mathabx/texinputs/testmac.tex b/fonts/mathabx/texinputs/testmac.tex
new file mode 100644
index 0000000000..c68a15c5a9
--- /dev/null
+++ b/fonts/mathabx/texinputs/testmac.tex
@@ -0,0 +1,521 @@
+%
+% TESTMAC.tex (december 20, 2003)
+%
+\catcode`\@=11
+%
+% Page setup
+%
+%\magnification=\magstep1
+\voffset=0.12 true cm
+\hoffset=0.31 true cm
+\vsize=24.2 true cm
+\hsize=15.3 true cm
+\parindent=1.333em
+%
+% Heading
+%
+\font\nineit=cmti9
+\font\twelverm=cmr12
+\newif\iftitle
+\titlefalse
+\footline={\hfil}
+\headline={\iftitle\hfil\global\titlefalse
+ \ifodd\pageno\advance\pageno by 1\fi
+ \else\vbox{\line{\ifodd\pageno
+ {\nineit\@title}\hfil\llap{\tenrm\folio}
+ \else\rlap{\tenrm\folio}\hfill{\nineit\@title}%
+ \fi}\vskip6pt\hrule}\fi}
+%
+% Sectionning
+%
+\def\,{\ifmmode\mskip\thinmuskip\else\thinspace\fi}
+\def\dots{\ifmmode\ldots\else%
+ .\kern\fontdimen3\font
+ .\kern\fontdimen3\font
+ .\fi}
+%
+\def\french{\frenchspacing\language=1
+ \def\@textsep{~---~}%
+ \def\Author{Auteur~}\def\LastVersion{Derni\`ere version~}%
+ \def\today{\day\space\ifcase\month\or
+ janvier\or f\'evrier\or mars\or avril\or mai\or juin\or
+ juillet\or ao\^ut\or septembre\or octobre\or novembre\or
+ d\'ecembre\fi\space\number\day,\space\number\year}}%
+%
+\def\english{\frenchspacing\language=0
+ \let\@textsep\enspace
+ \def\Author{Author}\def\LastVersion{Last version}%
+ \def\today{\ifcase\month\or
+ January\or February\or March\or April\or May\or June\or
+ July\or August\or September\or October\or November\or
+ December\fi\space\number\day,\space\number\year}}%
+%
+\def\title#1{\gdef\@title{#1}}%
+\def\subtitle#1{\def\@subtitle{#1}}%
+\def\author#1{\def\@author{#1}}%
+%
+\def\maketitle{\global\titletrue{\parindent=0pt
+ \leavevmode
+ \ifx\@title\undefined\else{\twelverm\@title}\par\fi
+ \vskip 6pt
+ \hrule height 6pt
+ \vskip 6pt
+ \ifx\@subtitle\undefined\else\hfill{\twelverm\@subtitle}\par\fi
+ \ifx\@author\undefined\else\hfill{\rm\Author: \@author}\par\fi
+ \hfill{\rm\LastVersion: \today}}\vskip2\baselineskip}
+%
+\newcount\sectno
+\newcount\subsectno
+\def\section#1{\vskip\z@ plus\baselineskip
+ \penalty-250\vskip\z@ plus-\baselineskip
+ \bigbreak\noindent\ifx#1*%
+ \def\@tmp##1{{\bf##1}\par\nobreak\medskip}\else
+ \global\advance\sectno by 1
+ \global\subsectno=0
+ \def\@tmp{\the\sectno.\enspace{\bf#1}\par\nobreak\medskip}\fi
+ \@tmp}%
+\def\subsection#1{\medbreak\noindent\ifx#1*%
+ \def\@tmp##1{{\bf##1\unskip.}\@textsep\ignorespaces}\else
+ \global\advance\subsectno by 1
+ \def\@tmp{\the\subsectno.\enspace{\bf#1\unskip.}%
+ \@textsep\ignorespaces}\fi
+ \@tmp}%
+\def\description{\medbreak\bgroup
+ \def\item##1{\medbreak\hangindent\parindent\leavevmode
+ \hskip-\parindent{\bf##1.}\enspace\ignorespaces}%
+ \def\subitem##1{\smallbreak\hangindent2\parindent\leavevmode
+ {\it##1.}\enspace\ignorespaces}%
+ \def\subsubitem##1{\par\hangindent3\parindent\leavevmode
+ \hskip\parindent{##1.}\enspace\ignorespaces}%
+ \let\itemitem=\subitem}%
+\def\enddescription{\egroup\medbreak}%
+\def\cs#1{\hbox{\tt\string#1}}%
+%
+% verbatim
+%
+\newdimen\tabindent\tabindent=2em
+\let\verbatimsep\quad
+{\obeyspaces\gdef {\leavevmode\space}%
+\catcode`\^^I=\active\gdef^^I{\hskip\tabindent}}%
+\def\rawverbatim{%
+ \def\@numberedverbatimpar{\def\par{\ifvmode
+ \endgraf\vskip\baselineskip\advance\count@ by 1
+ \else\endgraf\fi}%
+ \everypar={\advance\count@ by 1\leavevmode
+ \llap{\the\count@\verbatimsep}}}%
+ \def\@verbatimpar{\def\par{\ifvmode
+ \endgraf\vskip\baselineskip\else\endgraf\fi}%
+ \everypar={}}}%
+\def\smartverbatim{%
+ \def\@numberedverbatimpar{%
+ \def\par{\ifvmode\endgraf
+ \ifdim\lastskip<\medskipamount
+ \removelastskip\penalty-100\medskip
+ \@verbatimskiptrue\fi\else\endgraf\fi}%
+ \everypar={\advance\count@ by 1\leavevmode
+ \@ifverbatimskip
+ \llap{\the\count@\verbatimsep}%
+ \@verbatimskipfalse\fi}}%
+ \def\@verbatimpar{%
+ \def\par{\ifvmode\endgraf
+ \ifdim\lastskip<\medskipamount
+ \removelastskip\penalty-100\medskip\fi
+ \else\endgraf\fi}%
+ \everypar={}}}%
+%
+\def\@verbatimskiptrue{\let\@ifverbatimskip\iftrue}%
+\def\@verbatimskipfalse{\let\@ifverbatimskip\iffalse}%
+\smartverbatim
+\def\verb{\bgroup\tt\uncatcodespecials\obeyspaces\@verb}%
+\def\verbatim{\medbreak\bgroup
+ \rightskip=0\p@ minus 1000\p@
+ \tt\uncatcodespecials\obeyspaces
+ \catcode`\^^I=\active\@verbatim}%
+\def\@verbatim#1{\ifx#1[%
+ \@verbatimskiptrue
+ \@numberedverbatimpar\obeylines\let\@next=\@@verbatim
+ \else\@verbatimpar\obeylines\parindent=0\p@
+ \def\@next{\@@@verbatim#1}\fi\@next}%
+\def\@@verbatim#1]{\setbox0=\hbox{#1\verbatimsep}\parindent=\wd0
+ \count@=0\@@@verbatim}%
+\def\verbatimfile#1{\ifx#1[\let\@next\@verbatimfile
+ \else\def\@next{\@@verbatimfile{\input #1}}\fi\@next}%
+\def\@verbatimfile#1]#2{\@@verbatimfile{[#1]\input #2}}%
+{\catcode`\|=0\catcode`\\=12
+|gdef|@verb#1\endverb{#1|egroup}%
+|gdef|@@@verbatim#1\endverbatim{#1|egroup|medbreak}%
+|gdef|@@verbatimfile#1{|verbatim #1|relax\endverbatim}}%
+\def\uncatcodespecials{\def\do##1{\catcode`##1=12 }\dospecials}%
+%
+\long\def\comments#1\endcomments{}%
+\def\fuzzytext{\tolerance=9999\hfuzz=3em\vfuzz=0.1pt}%
+\def\normaltext{\tolerance=200\hfuzz=0.1pt\vfuzz=0.1pt}%
+\def\newpage{\par\vfill\eject}%
+\newdimen\shadeshift\shadeshift=1pt
+\def\shadedtext#1{{\setbox0=\hbox{#1}\leavevmode
+ \vtop to 0pt{\rlap{\special{color push rgb 0.75 0.75 0.75}%
+ \kern0.1em\lower0.1em\copy0
+ \special{color pop}}\vss}\box0}}%
+\long\def\shadedparagraph#1\par{{\setbox0=\vbox{\hsize=\hsize#1}%
+ \noindent\leavevmode
+ \vtop to 0pt{\rlap{\special{color push rgb 0.75 0.75 0.75}%
+ \kern0.1em\lower0.1em\copy0
+ \special{color pop}}\vss}\box0\par}}%
+%
+% font tests
+%
+\newcount\n\newcount\m
+\def\mixfrom#1to#2.{\medbreak\noindent
+% {\it (Random generator by Donald Arseneau.)}\par\noindent
+ {\count255=#2%
+ \advance\count255 by -#1%
+ \n=0\loop\ifnum\n<25 \m=0%
+ {\loop\ifnum\m<43\setrannum{\count@}{#1}{#2}%
+ \char\count@
+ \advance\m by 1
+ \repeat}
+ \advance\n by 1\endgraf\noindent
+ \repeat}\medbreak}
+%
+\def\compare#1#2{\medbreak\noindent{%
+ \font\ftestfont=#1\font\stestfont=#2%
+ \count255=0%
+ {\bf#1\unskip/\ignorespaces#2}
+ \par\nobreak\medskip\noindent
+ {\loop\ifnum\count255<256
+ {\ftestfont\char\count255
+ \stestfont\char\count255}
+ \advance\count255 by 1\repeat}}\medbreak}
+%
+\def\docomparison#1#2from#3to#4.{\medbreak\noindent{%
+ \font\ftestfont=#1\font\stestfont=#2%
+ \count255=#3%
+ \count0=#4\advance\count0 by 1
+ {\bf#1\unskip/\ignorespaces#2}
+ \par\medskip\noindent
+ {\loop\ifnum\count255<\count0
+ {\ftestfont\char\count255
+ \stestfont\char\count255$_{_{\the\count255}}$}
+ \advance\count255 by 1\repeat}}\medbreak}
+%
+\def\usuals#1{\medbreak\noindent{\bf#1\unskip.}~---~{%
+ \font\testfont=#1\testfont\setbaselineskip
+ \let\-=\allowbreak\unskip
+ A\-B\-C\-D\-E\-F\-G\-H\-I\-J\-K\-L\-M\-%
+ N\-O\-P\-Q\-R\-T\-S\-U\-V\-W\-X\-Y\-Z \-
+ a\-b\-c\-d\-e\-f\-g\-h\-i\-j\-k\-l\-m\-%
+ n\-o\-p\-q\-r\-s{}\-t\-u\-v\-w\-x\-y\-z \-
+ \AE\-\OE\-\O
+ \ae\-\oe\-\o\-\ss
+ +\-=\-\# @ 1\-2\-3\-4\-5\-6\-7\-8\-9\-0 \-\$ \& () []%
+ \medbreak}}
+\def\kerningtable[#1,#2][#3,#4]{\medbreak\noindent{\parindent=0pt
+ \m=#4 \advance\m by -#3 \advance\m by 1
+ \dim=\hsize \divide\dim by \m
+ \m=#1 \advance\m by -1
+ \n=#3 \advance\n by -1
+ {\loop\leavevmode
+ \ifnum\m<#2
+ \advance\m by 1
+ {\loop
+ \ifnum\n<#4
+ \advance\n by 1
+ \setbox0\hbox{\char\m\char\n}%
+ \setbox1\hbox{\char\m\null\char\n}%
+ \hbox to \dim{\char\m\char\n
+ \ifdim\wd0=\wd1\else{\rm*}\fi\hss}%
+ \repeat}\endgraf
+ \repeat}%
+ }\medbreak}%
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\hyphenation{prom-i-nent}
+
+%\newcount\m \newcount\n
+\newcount\p \newdimen\dim
+\chardef\other=12
+
+\def\hours{\n=\time \divide\n 60
+ \m=-\n \multiply\m 60 \advance\m \time
+ \twodigits\n\ heures \twodigits\m\ minutes}
+
+\def\twodigits#1{\ifnum #1<10 0\fi \number#1}
+
+\def\startfont{\tracinglostchars=0
+ \fuzzytext
+% \tolerance=1000
+% \raggedbottom
+ \parindent=0pt
+% \newlinechar=`@
+% \hyphenpenalty=200
+% \doublehyphendemerits=30000
+ \font\testfont=\fontname
+% \spaceskip=0pt
+ % \leftline{{\bf\fontname\unskip}\ (tel que le \today, \`a \hours)}
+ % \nobreak\medskip\nobreak
+ \testfont %\setbaselineskip
+% \ifdim\fontdimen6\testfont<10pt \rightskip=0pt plus 20pt
+% \else\rightskip=0pt plus 2em \fi
+% \spaceskip=\fontdimen2\testfont % space between words (\raggedright)
+% \xspaceskip=\fontdimen2\testfont
+% \advance\xspaceskip by\fontdimen7\testfont
+ }
+
+\def\setbaselineskip{\setbox0=\hbox{\n=0
+ \loop\char\n \ifnum \n<255 \advance\n 1 \repeat}
+ \baselineskip=6pt \advance\baselineskip\ht0
+ \advance\baselineskip\dp0 }
+
+\def\setchar#1{{\escapechar-1\message{\string#1 character = }%
+ \def\do##1{\catcode`##1=\other}\dospecials
+ \read-1 to\next
+ \expandafter\finsetchar\next\next#1}}
+\def\finsetchar#1#2\next#3{\global\chardef#3=`#1
+ \ifnum #3=`\# \global\chardef#3=#2 \fi}
+\def\promptthree{\setchar\background
+ \setchar\starting \setchar\ending}
+
+\def\mixture{\promptthree \domix\mixpattern}
+\def\alternation{\promptthree \domix\altpattern}
+\def\mixpattern{\0\1\0\0\1\1\0\0\0\1\1\1\0\1}
+\def\altpattern{\0\1\0\1\0\1\0\1\0\1\0\1\0\1\0\1\0}
+\def\domix#1{\par\chardef\0=\background \n=\starting
+ \loop \chardef\1=\n #1\endgraf
+ \ifnum \n<\ending \advance\n 1 \repeat}
+
+\def\£{\discretionary{\background}{\background}{\background}}
+\def\series{\promptthree \£\doseries\starting\ending\par}
+\def\doseries#1#2{\n=#1\loop\char\n\£\ifnum\n<#2\advance\n 1 \repeat}
+\def\complower{\£\doseries{`a}{`z}\doseries{'31}{'34}\par}
+\def\compupper{\£\doseries{`A}{`Z}\doseries{'35}{'37}\par}
+\def\compdigs{\£\doseries{`0}{`9}\par}
+\def\alphabet{\setchar\background\complower}
+\def\ALPHABET{\setchar\background\compupper}
+
+\def\lowers{\docomprehensive\complower{`a}{`z}{'31}{'34}}
+\def\uppers{\docomprehensive\compupper{`A}{`Z}{'35}{'37}}
+\def\digits{\docomprehensive\compdigs{`0}{`4}{`5}{`9}}
+\def\docomprehensive#1#2#3#4#5{\par\chardef\background=#2
+ \loop{#1} \ifnum\background<#3\m=\background\advance\m 1
+ \chardef\background=\m \repeat \chardef\background=#4
+ \loop{#1} \ifnum\background<#5\m=\background\advance\m 1
+ \chardef\background=\m \repeat}
+
+\def\names{ {\AA}ngel\aa\ Beatrice Claire
+ Diana \'Erica Fran\c{c}oise Ginette H\'el\`ene Iris
+ Jackie K\=aren {\L}au\.ra Mar{\'\i}a N\H{a}ta{\l}{\u\i}e {\O}ctave
+ Pauline Qu\^eneau Roxanne Sabine T\~a{\'\j}a Ur\v{s}ula
+ Vivian Wendy Xanthippe Yv{\o}nne Z\"azilie\par}
+\def\punct{\par\dopunct{min}\dopunct{pig}\dopunct{hid}
+ \dopunct{HIE}\dopunct{TIP}\dopunct{fluff}
+ \$1,234.56 + 7/8 = 9\% @ \#0\par}
+\def\dopunct#1{#1,\ #1:\ #1;\ `#1'\ ?`#1?\ !`#1!\ (#1)\ [#1]\ #1*\ #1.\par}
+
+\def\bigtest{\sample
+ hamburgefonstiv HAMBURGEFONSTIV\par
+ \names \punct \lowers \uppers \digits}
+
+\def\math{\textfont1=\testfont \skewchar\testfont=\skewtrial
+ \mathchardef\Gamma="100 \mathchardef\Delta="101
+ \mathchardef\Theta="102 \mathchardef\Lambda="103 \mathchardef\Xi="104
+ \mathchardef\Pi="105 \mathchardef\Sigma="106 \mathchardef\Upsilon="107
+ \mathchardef\Phi="108 \mathchardef\Psi="109 \mathchardef\Omega="10A
+ \def\ii{i} \def\jj{j}
+ \def\\##1{|##1|+}\mathtrial
+ \def\\##1{##1_2+}\mathtrial
+ \def\\##1{##1^2+}\mathtrial
+ \def\\##1{##1/2+}\mathtrial
+ \def\\##1{2/##1+}\mathtrial
+ \def\\##1{##1,{}+}\mathtrial
+ \def\\##1{d##1+}\mathtrial
+ \let\ii=\imath \let\jj=\jmath \def\\##1{\hat##1+}\mathtrial}
+\newcount\skewtrial \skewtrial='177
+\def\mathtrial{$\\A \\B \\C \\D \\E \\F \\G \\H \\I \\J \\K \\L \\M \\N \\O
+ \\P \\Q \\R \\S \\T \\U \\V \\W \\X \\Y \\Z \\a \\b \\c \\d \\e \\f \\g
+ \\h \\\ii \\\jj \\k \\l \\m \\n \\o \\p \\q \\r \\s \\t \\u \\v \\w \\x \\y
+ \\z \\\alpha \\\beta \\\gamma \\\delta \\\epsilon \\\zeta \\\eta \\\theta
+ \\\iota \\\kappa \\\lambda \\\mu \\\nu \\\xi \\\pi \\\rho \\\sigma \\\tau
+ \\\upsilon \\\phi \\\chi \\\psi \\\omega \\\vartheta \\\varpi \\\varphi
+ \\\Gamma \\\Delta \\\Theta \\\Lambda \\\Xi \\\Pi \\\Sigma \\\Upsilon
+ \\\Phi \\\Psi \\\Omega \\\partial \\\ell \\\wp$\par}
+\def\mathsy{\begingroup\skewtrial='060 % for math symbol font tests
+ \def\mathtrial{$\\A \\B \\C \\D \\E \\F \\G \\H \\I \\J \\K \\L
+ \\M \\N \\O \\P \\Q \\R \\S \\T \\U \\V \\W \\X \\Y \\Z$\par}
+ \math\endgroup}
+
+\def\oct#1{\hbox{\rm\'{}\kern-.2em\it#1\/\kern.05em}} % octal constant
+\def\hex#1{\hbox{\rm\H{}\tt#1}} % hexadecimal constant
+\def\setdigs#1"#2{\gdef\h{#2}% \h=hex prefix; \0\1=corresponding octal
+ \m=\n \divide\m by 64 \xdef\0{\the\m}%
+ \multiply\m by-64 \advance\m by\n \divide\m by 8 \xdef\1{\the\m}}
+\def\testrow{\setbox0=\hbox{\penalty 1\def\\{\char"\h}%
+ \\0\\1\\2\\3\\4\\5\\6\\7\\8\\9\\A\\B\\C\\D\\E\\F%
+ \global\p=\lastpenalty}} % \p=1 if none of the characters exist
+\def\oddline{\cr
+ \noalign{\nointerlineskip}
+ \multispan{19}\hrulefill&
+ \setbox0=\hbox{\lower 2.3pt\hbox{\hex{\h x}}}\smash{\box0}\cr
+ \noalign{\nointerlineskip}}
+\newif\ifskipping
+\def\evenline{\loop\skippingfalse
+ \ifnum\n<256 \m=\n \divide\m 16 \chardef\next=\m
+ \expandafter\setdigs\meaning\next \testrow
+ \ifnum\p=1 \skippingtrue \fi\fi
+ \ifskipping \global\advance\n 16 \repeat
+ \ifnum\n=256 \let\next=\endchart\else\let\next=\morechart\fi
+ \next}
+\def\morechart{\cr\noalign{\hrule\penalty5000}
+ \chartline \oddline \m=\1 \advance\m 1 \xdef\1{\the\m}
+ \chartline \evenline}
+\def\chartline{&\oct{\0\1x}&&\:&&\:&&\:&&\:&&\:&&\:&&\:&&\:&&}
+\def\chartstrut{\lower4.5pt\vbox to14pt{}}
+\def\table{\bigbreak\global\n=0
+ \halign to\hsize\bgroup
+ \chartstrut##\tabskip0pt plus10pt&
+ &\hfil##\hfil&\vrule##\cr
+ \lower6.5pt\null
+ &\hbox to 0pt{\hss\rm\fontname\hss}
+ &&\oct0&&\oct1&&\oct2&&\oct3&&\oct4
+ &&\oct5&&\oct6&&\oct7&\evenline}
+\def\endchart{\cr\noalign{\hrule}
+ \raise11.5pt\null&&&\hex 8&&\hex 9&&\hex A&&\hex B&
+ &\hex C&&\hex D&&\hex E&&\hex F&\cr\egroup\bigbreak\par}
+\def\:{\setbox0=\hbox{\char\n}%
+ \ifdim\ht0>7.5pt\reposition
+ \else\ifdim\dp0>2.5pt\reposition\fi\fi
+ \box0\global\advance\n 1 }
+\def\reposition{\setbox0=\vbox{\kern2pt\box0}\dim=\dp0
+ \advance\dim 2pt \dp0=\dim}
+\def\centerlargechars{
+ \def\reposition{\setbox0=\hbox{$\vcenter{\kern2pt\box0\kern2pt}$}}}
+
+\def\text{{%\advance\baselineskip-4pt
+%\setbox0=\hbox{abcdefghijklmnopqrstuvwxyz}
+%\ifdim\hsize>2\wd0 \ifdim 15pc>2\wd0 \hsize=15pc \else \hsize=2.5\wd0 \fi\fi
+On November 14, 1885, Senator \& Mrs.~Leland Stanford called
+together at their San Francisco mansion the 24~prominent men who had
+been chosen as the first trustees of The Leland Stanford Junior University.
+They handed to the board the Founding Grant of the University, which they
+had executed three days before. This document---with various amendments,
+legislative acts, and court decrees---remains as the University's charter.
+In bold, sweeping language it stipulates that the objectives of the University
+are ``to qualify students for personal success and direct usefulness in life;
+and to promote the publick welfare by exercising an influence in behalf of
+humanity and civilization, teaching the blessings of liberty regulated by
+law, and inculcating love and reverence for the great principles of
+government as derived from the inalienable rights of man to life, liberty,
+and the pursuit of happiness.'' \moretext
+(!`THE DAZED BROWN FOX QUICKLY GAVE 12345--67890 JUMPS!)\par}}
+\def\moretext{?`But aren't Kafka's Schlo{\ss} and {\AE}sop's {\OE}uvres
+often na{\"\i}ve vis-\`a-vis the d{\ae}monic ph{\oe}nix's official r\^ole
+in fluffy souffl\'es? }
+\def\omitaccents{\let\moretext=\relax}
+\def\sample{\table\text}
+\def\UsualTest#1{{\def\fontname{#1 }\startfont\sample\names}}
+\english
+\def\LaTeX{L\kern-.36em%
+ {\setbox\z@\hbox{T}%
+ \vbox to\ht\z@{\hbox{$\rm\scriptstyle A$}%
+ \vss}%
+ }%
+ \kern-.15em%
+ \TeX}
+\catcode`\@=12
+
+% RANDOM.TEX v.1 (Donald Arseneau)
+% Generating "random" numbers in TeX.
+%
+% Random integers are generated in the range 1 to 2147483646 by the
+% macro \nextrandom. The result is returned in the counter \randomi.
+% Do not change \randomi except, perhaps, to initialize it at some
+% random value. If you do not initialize it, it will be initialized
+% using the time and date. (This is a sparse initialization, giving
+% fewer than a million different starting values, but you should use
+% other sources of numbers if they are available--just remember that
+% most of the numbers available to TeX are not at all random.)
+%
+% The \nextrandom command is not very useful by itself, unless you
+% have exactly 2147483646 things to choose from. Much more useful
+% is the \setrannum command which sets a given counter to a random
+% value within a specified range. There are three parameters:
+% \setrannum {<counter>} {<minimum>} {<maximum>}. For example, to
+% simulate a die-roll: \setrannum{\die}{1}{6} \ifcase\die... .
+%
+% If you need random numbers that are not integers, you will have to
+% use dimen registers and \setrandimen. For example, to set a random
+% page width: \setrandimen \hsize{3in}{6.5in}. The "\pointless" macro
+% will remove the "pt" that TeX gives so you can use the dimensions
+% as pure `real' numbers. In that case, specify the range in pt units.
+% For example,
+% \setrandimen\answer{2.71828pt}{3.14159pt}
+% The answer is \pointless\answer.
+%
+% The random number generator is the one by Lewis, Goodman, and Miller
+% (1969) and used as "ran0" in "Numerical Recipies" using Schrage's
+% method for avoiding overflows. The multiplier is 16807 (7^5), the
+% added constant is 0, and the modulus is 2147483647 (2^{31}-1). The
+% range of integers generated is 1 - 2147483646. A smaller range would
+% reduce the complexity of the macros a bit, but not much--most of the
+% code deals with initialization and type-conversion. On the other hand,
+% the large range may be wasted due to the sparse seed initialization.
+
+\newcount\randomi % the random number seed (while executing)
+\global\randomi\catcode`\@ % scratch variable during definitions
+\catcode`\@=11
+
+\def\nextrandom{\begingroup
+ \ifnum\randomi<\@ne % then initialize with time
+ \global\randomi\time
+ \global\multiply\randomi388 \global\advance\randomi\year
+ \global\multiply\randomi31 \global\advance\randomi\day
+ \global\multiply\randomi97 \global\advance\randomi\month
+ \message{Randomizer (from random.tex) initialized to \the\randomi.}%
+ \nextrandom \nextrandom \nextrandom
+ \fi
+ \count@ii\randomi
+ \divide\count@ii 127773 % modulus = multiplier * 127773 + 2836
+ \count@\count@ii
+ \multiply\count@ii 127773
+ \global\advance\randomi-\count@ii % random mod 127773
+ \global\multiply\randomi 16807
+ \multiply\count@ 2836
+ \global\advance\randomi-\count@
+ \ifnum\randomi<\z@ \global\advance\randomi 2147483647\relax\fi
+ \endgroup
+}
+
+\countdef\count@ii=2 % use only in boxes!
+\ifx\@tempcnta\undefined \csname newcount\endcsname \@tempcnta \fi
+\ifx\@tempcntb\undefined \csname newcount\endcsname \@tempcntb \fi
+
+\def\setrannum#1#2#3{% count register, minimum, maximum
+ \@tempcnta#3\advance\@tempcnta-#2\advance\@tempcnta\@ne
+ \@tempcntb 2147483645 % = m - 2 = 2^{31} - 3
+ \divide\@tempcntb\@tempcnta
+ \getr@nval
+ \advance\ranval#2\relax
+ #1\ranval
+}
+
+\def\setrandim#1#2#3{% dimen register, minimum length, maximum length
+ \dimen@#2\dimen@ii#3\relax
+ \setrannum\ranval\dimen@\dimen@ii
+ #1\ranval sp\relax
+}
+
+\def\getr@nval{% The values in \@tempcnta and \@tempcntb are parameters
+ \nextrandom
+ \ranval\randomi \advance\ranval\m@ne \divide\ranval\@tempcntb
+ \ifnum\ranval<\@tempcnta\else \expandafter\getr@nval \fi
+}
+
+\def\pointless{\expandafter\PoinTless\the}
+{\catcode`p=12 \catcode`t=12
+\gdef\PoinTless#1pt{#1}}
+
+\catcode`\@=\randomi
+\global\randomi=0
+\newcount\ranval
+
+\endinput