summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/latex/breqn
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2006-01-12 23:52:31 +0000
committerKarl Berry <karl@freefriends.org>2006-01-12 23:52:31 +0000
commit06b49f3c6d4c6b798b7a43c628dd8dc7fff42922 (patch)
treeb8563c2579c6471bd6d8f87ff3401f15339fa615 /Master/texmf-dist/tex/latex/breqn
parentb3ed0ab98fca447045f52b8be7dc200a74e05882 (diff)
breqn
git-svn-id: svn://tug.org/texlive/trunk@727 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex/latex/breqn')
-rw-r--r--Master/texmf-dist/tex/latex/breqn/breqn.sty2060
-rw-r--r--Master/texmf-dist/tex/latex/breqn/cmbase.sym336
-rw-r--r--Master/texmf-dist/tex/latex/breqn/flexisym.sty257
-rw-r--r--Master/texmf-dist/tex/latex/breqn/mathstyle.sty89
-rw-r--r--Master/texmf-dist/tex/latex/breqn/msabm.sym228
5 files changed, 2970 insertions, 0 deletions
diff --git a/Master/texmf-dist/tex/latex/breqn/breqn.sty b/Master/texmf-dist/tex/latex/breqn/breqn.sty
new file mode 100644
index 00000000000..29d5392b35c
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/breqn/breqn.sty
@@ -0,0 +1,2060 @@
+% This is a slightly patched copy of version 0.93 [mjd,2002-05-29]
+\NeedsTeXFormat{LaTeX2e}[1994/12/01]
+\ProvidesPackage{breqn}[2002/05/29 v0.94 beta]
+\@ifl@t@r\fmtversion{1995/06/01}{}{%
+ \@namedef{newmuskip}{\alloc@3\muskip\muskipdef\@cclvi}%
+ \@namedef{newtoks}{\alloc@5\toks\toksdef\@cclvi}%
+ \@namedef{newif}#1{\count@\escapechar \escapechar\m@ne
+ \let#1\iffalse \@if#1\iftrue \@if#1\iffalse \escapechar\count@}%
+}
+\edef\breqnpopcats{%
+ \catcode\number`\"=\number\catcode`\"
+ \relax
+}
+\catcode`\^=7 \catcode`\_=8 \catcode`\"=12 \relax
+\DeclareOption{debug}{}
+\DeclareOption{mathstyleoff}{%
+ \PassOptionsToPackage{mathstyleoff}{flexisym}%
+}
+\ProcessOptions\relax
+\@ifpackageloaded{flexisym}{}{%
+ \RequirePackage[cmbase]{flexisym}[1997/01/01]
+ % Reiterate this here, for now, until I have a chance to better
+ % sort things out. [mjd,2002-05-29]
+ \edef\breqnpopcats{\breqnpopcats
+ \catcode\number`\^=\number\catcode`\^
+ \catcode\number`\_=\number\catcode`\_
+ }%
+ \catcode`\^=7 \catcode`\_=8 \catcode`\"=12 \relax
+}
+\RequirePackage{keyval}\relax
+\@ifundefined{options}{%
+\newcommand{\options}[2]{%
+ \expandafter\options@a\csname opt@#1.sty\endcsname{#2}%
+ \setkeys{#1}{#2}%
+}
+\def\options@a#1#2{%
+ \edef\@tempa{\options@b#2,\@empty\@nil}%
+ \ifx#1\relax \let#1\@empty\fi
+ \xdef#1{#1\ifx#1\@empty\@xp\@gobble\@tempa\@empty\else\@tempa \fi}%
+}
+\def\options@b#1,#2#3\@nil{%
+ \options@c#1 \@nil
+ \ifx#2\@empty \else\options@b#2#3\@nil\fi
+}
+\def\options@c#1 #2\@nil{\options@d#1=\@nil}
+\def\options@d#1=#2\@nil{\ifx\@empty #1\@empty\else,\fi#1}
+}{}% end @ifundefined test
+\let\@nx\noexpand
+\let\@xp\expandafter
+\@ifundefined{@emptytoks}{\newtoks\@emptytoks}{}
+\chardef\f@ur=4
+\newcount\inf@bad \inf@bad=1000000
+\newcount\maxint \maxint=2147483647
+\let\int@a=\@tempcnta
+\let\int@b=\@tempcntb
+\let\int@c=\count@
+\let\dim@a\@tempdima
+\let\dim@b\@tempdimb
+\let\dim@c\@tempdimc
+\let\dim@d\dimen@
+\let\dim@e\dimen@ii
+\let\dim@A\dimen@i
+\let\skip@a\@tempskipa
+\let\skip@b\@tempskipb
+\let\skip@c\skip@
+\let\toks@a\@temptokena
+\let\toks@b\toks@
+\toksdef\toks@c=2
+\toksdef\toks@d=4
+\toksdef\toks@e=6
+\toksdef\toks@f=8
+\def\abs@num#1{\ifnum#1<\z@-\fi#1}
+\def\@ifnext#1#2#3{%
+ \let\@tempd= #1\def\@tempa{#2}\def\@tempb{#3}%
+ \futurelet\@tempc\@ifnexta
+}
+\def\@ifnexta{\ifx\@tempc\@tempd \let\@tempb\@tempa \fi \@tempb}
+\def\@ifstar#1#2{%
+ \let\@tempd*\def\@tempa*{#1}\def\@tempb{#2}%
+ \futurelet\@tempc\@ifnexta
+}
+\def\@optarg#1#2{\@ifnext[{#1}{#1[#2]}}
+\def\@True{00}
+\def\@False{01}
+\def\@Not#1{0\ifcase#11 \or\@xp 1\else \@xp 0\fi}
+\def\@And#1#2{0\ifcase#1#2 \@xp 0\else \@xp 1\fi}
+\def\@Or#1#2{0\ifnum#1#2<101 \@xp 0\else \@xp 1\fi}
+\def\freeze@glue#1{#11#1\relax}
+\def\z@rule{\vrule\@width\z@}% no \relax ! use with care
+\def\keep@glue{\z@rule\relax}
+% usage: \message{H\replicate{5}{i h}ow de doo dee!}
+\begingroup \catcode`\&=11
+\gdef\replicate#1{%
+ \csname &\expandafter\replicate@a\romannumeral\number\number#1 000q\endcsname
+}
+\endgroup
+\long\def\replicate@a#1#2\endcsname#3{#1\endcsname{#3}#2}
+\begingroup \catcode`\&=11
+\long\gdef\&m#1#2{#1\csname &#2\endcsname{#1}}
+\endgroup
+\@xp\let\csname\string &q\endcsname\@gobble
+\g@addto@macro\mathchars@reset{%
+ \let\@symRel\@secondoftwo \let\@symBin\@secondoftwo
+ \let\@symDeL\@secondoftwo \let\@symDeR\@secondoftwo
+ \let\@symDeB\@secondoftwo
+}
+\def\eq@cons#1#2{%
+ \begingroup \let\@elt\relax \xdef#1{\@elt{#2}#1}\endgroup
+}
+\providecommand{\@saveprimitive}[2]{%
+ \begingroup
+ \edef\@tempa{\string#1}\edef\@tempb{\meaning#1}%
+ \ifx\@tempa\@tempb \global\let#2#1%
+ \else
+ \edef\@tempb{\meaning#2}%
+ \ifx\@tempa\@tempb
+ \else \@saveprimitive@a#1#2%
+ \fi
+ \fi
+ \endgroup
+}
+\def\@saveprimitive@a#1#2{%
+ \begingroup
+ \def\@tempb##1#1##2{\edef\@tempb{##2}\@car{}}%
+ \@tempb\nullfont{select font nullfont}%
+ \topmark{\string\topmark:}%
+ \firstmark{\string\firstmark:}%
+ \botmark{\string\botmark:}%
+ \splitfirstmark{\string\splitfirstmark:}%
+ \splitbotmark{\string\splitbotmark:}%
+ #1{\string#1}%
+ \edef\@tempa{\expandafter\strip@prefix\meaning\@tempb}%
+ \edef\@tempb{\meaning#1}%
+ \ifx\@tempa\@tempb \global\let#2#1%
+ \else
+ \PackageError{breqn}%
+ {Unable to properly define \string#2; primitive
+ \noexpand#1no longer primitive}\@eha
+ \fi
+ \fi
+ \endgroup
+}
+\begingroup \catcode`\$=3 % just to make sure
+ \global\let\@@math=$ \gdef\@@display{$$}
+\endgroup
+\let\@@endmath=\@@math
+\let\@@enddisplay=\@@display
+\@saveprimitive\vadjust\@@vadjust
+\@saveprimitive\insert\@@insert
+\@saveprimitive\mark\@@mark
+\let\debug=\begingroup
+\let\gubed=\endgroup
+\def\debugmsg{\message{|= \iffalse}\fi
+ \@xp\@gobble\string
+}
+\def\debugwr#1{\immediate\write\sixt@@n{|= #1}}
+\def\debug@box#1{%
+ \batchmode{\showboxbreadth\maxdimen\showboxdepth99\showbox#1}%
+ \errorstopmode
+}
+\def\eqinfo{%
+ \debug@box\EQ@copy
+ \wlog{||= EQ@copy: \the\wd\EQ@copy\space x
+ \the\ht\EQ@copy+\the\dp\EQ@copy
+ }%
+}
+\def\debug@para{%
+ \debugwr{\hsize\the\hsize, \parfillskip\the\parfillskip}%
+ \debugmsg{\leftskip\the\leftskip, \rightskip\the\rightskip}%
+ \debugmsg{\linepenalty\the\linepenalty, \adjdemerits\the\adjdemerits}%
+ \debugmsg{\pretolerance\the\pretolerance, \tolerance\the\tolerance,
+ \parindent\the\parindent}%
+}
+\@ifpackagewith{breqn}{debug}{}{%
+ \let\debug\iffalse \let\gubed\fi
+ \let\debugmsg\@gobble \let\debug@lines\relax \let\debug@para\relax
+ \let\debugwr\@gobble
+ \let\debug@box\@gobble \let\debug@push\@gobbletwo
+}
+\@ifundefined{listwidth}{\newdimen\listwidth}{}
+\listwidth=\z@
+\def\do#1#2{\begingroup
+ \def\?##1#1##2##3##4##5\@nil{\endgroup##2##3\afterassignment\do##4}%
+ \?C\newcount#2#2D\newdimen#2#2S\newskip#2#2U\newmuskip#2#2%
+ K\newtoks#2#2F\newif#2{\z@\z@}T\newif#2{\let#2\iftrue}%
+ B\newbox#2{\z@\z@}d{\newcommand#2{}}{}{\def#2}%
+ Q\relax\@gobbletwo\relax \@nil}%
+\do % def, Count, Dimen, Skip, mUskip, toKs, Box, False, True
+d\eqfontsize{} % Inherit from context
+d\eqcolor{black} % Default to black
+D\eqnumsep=9pt % Min space between equ number and body
+D\eqmargin=8pt % For `multline' gap emulation
+d\eqindent{C}% % C or I, centered or indented
+d\eqnumside{R}% % R or L, right or left
+d\eqnumplace{M}% % M or T or B, middle top or bottom
+d\eqnumfont{\upshape}% % Upright even when surrounding text is slanted
+d\eqnumform#1{(#1\@@italiccorr)} % Add parens
+d\eqnumsize{} % Allow numbers to have different typesize ...
+d\eqnumcolor{} % ... or color than eq body e.g. \color{blue}
+S\eqlinespacing=14pt plus2pt % Base-to-base space between lines
+S\eqlineskip=3pt plus2pt % Min space if eqlinespacing too small
+D\eqlineskiplimit=2pt % Threshold for switching to eqlineskip
+U\eqbinoffset=15mu minus-3mu % Offset from mathrel alignment pt for mathbins
+U\eqdelimoffset=2mu % Additional offset for break inside delims
+D\eqindentstep=8pt % Indent used when LHS wd is n/a or too large
+d\eqcompactzone{5em} % Force compact unless RHS max exceeds this
+K\eqstyle={} % Customization hook
+C\eqbreakdepth=2 % Allow breaks within delimiters to this depth
+C\eqlinepenalty=199 % No page breaks between equation lines
+C\eqinterlinepenalty=10000 % No page breaks between equation lines
+C\intereqpenalty=\@M % Pagebreak penalty between equations
+S\intereqskip=3pt plus2pt % Additional vert space between equations
+C\prerelpenalty=-\@M % Linebreak penalty before mathrel symbols
+C\prebinoppenalty=888 % Linebreak penalty before mathbins
+U\Dmedmuskip=4mu minus 3mu % medmuskip in displays
+U\Dthickmuskip=5mu minus 2mu % thickmuskip in displays
+Q\relax % End of assignments
+\do % def, Dimen, Skip, mUskip, toKs, Box, False, True
+d\eq@number{} % Internal variable
+S\eqleftskip=\@centering % Space on the left
+S\eqrightskip=\@centering % Space on the right
+S\eq@vspan=\z@skip % Glue used to vcenter the eq number
+U\eq@binoffset=\eqbinoffset % Roughly, \eqbinoffset + \eqdelimoffset
+B\EQ@box % Storage for equation body
+B\EQ@copy % For eq body sans vadjust/insert/mark material
+B\EQ@numbox % For equation number
+%%B\EQ@vimbox % Vadjust, insert, or mark material
+%%B\EQ@vimcopy % Spare copy of same
+%%B\eq@impinging % Temporary box for measuring number placement
+T\if@eq@number % Number present or not?
+C\eq@lines=\z@ % Internal counter, actual number of lines
+C\eq@curline=\z@ % Loop counter
+C\eq@badness=\z@ % Used in testing for overfull lines
+C\EQ@vims=\z@ % For bookkeeping
+Q\relax
+\newdimen\eq@dp \newdimen\eq@sidespace
+\newdimen\eq@wdL \newdimen\grp@wdL \newdimen\grp@bodywidth
+\newdimen\eq@bodywidth \newdimen\eq@wdRmax \newdimen\eq@firstht
+\newdimen\eq@indentstep \newdimen\eq@linewidth \newdimen\eq@freewidth
+\newdimen\grp@linewidth
+\def\do#1#2{\if Q#1\relax \else\@xp\do\fi}\do
+D\eq@bodywidth % Total width for framing
+D\eq@wdL % Width of the left-hand-side
+D\eq@sidespace % Min leftover space for centering
+D\grp@wdL % Max width of LHS's in a group
+D\grp@bodywidth % Max width of all equations in a group
+D\eq@firstht % Height of first line
+D\eq@dp % Depth of last line
+D\eq@indentstep % Indent amount when LHS is not present
+D\eq@linewidth % Width actually used for display
+D\grp@linewidth % Max eq@linewidth over a group
+D\eq@freewidth % eq@linewidth - space for number
+Q\relax
+\eq@indentstep=\maxdimen
+\eq@sidespace=\maxdimen
+\let\given@sidespace\@empty
+\def\eq@overrun{0pt}
+\@ifpackagewith{amsmath}{leqno}{%
+ \@ifpackagewith{amsmath}{reqno}{}{\def\eqnumside{L}}%
+}{%
+ \def\@tempa#1,leqno.clo,#2#3\@nil{%
+ \ifx @#2\relax\else \def\eqnumside{L}\fi
+ }%
+ \@xp\@tempa\@filelist,leqno.clo,@\@nil
+ \if L\eqnumside
+ \else
+ \@ifundefined{iftagsleft@}{}{%
+ \edef\eqnumside{%
+ \if TT\csname fi\endcsname\csname iftagsleft@\endcsname
+ L\else R\fi
+ }%
+ }
+ \fi
+}
+\@ifpackagewith{amsmath}{fleqn}{%
+ \def\eqindent{I}%
+}{%
+ \def\@tempa#1,fleqn.clo,#2#3\@nil{%
+ \ifx @#2\relax\else \def\eqindent{I}\fi
+ }%
+ \@xp\@tempa\@filelist,fleqn.clo,@\@nil
+ \if I\eqindent
+ \else
+ \@ifundefined{if@fleqn}{}{%
+ \edef\eqindent{%
+ \if TT\csname fi\endcsname\csname if@fleqn\endcsname
+ I\else C\fi
+ }%
+ }%
+ \fi
+}
+\if I\eqindent
+ \@ifundefined{mathindent}{%
+ \newdimen\mathindent
+ }{%
+ \@ifundefined{@mathmargin}{}{%
+ \mathindent\@mathmargin
+ }%
+ }
+\fi
+\let\EQ@hasLHS=\@False
+\let\EQ@QED=\@empty
+\def\mark@lhs#1{%
+ \ifnum\lr@level<\@ne
+ \let\mark@lhs\relax
+ \global\let\EQ@hasLHS=\@True
+ \global\let\EQ@prebin@space\EQ@prebin@space@a
+ \mark@lhs@a
+ \penalty9999 % instead of normal \rel@break
+ % else no penalty = forbid break
+ \fi
+}
+\def\mark@lhs@a{%
+ \mskip\thickmuskip \@@vadjust{\penalty\tw@}\penalty-\@Mi\@@vadjust{}%
+}
+\newcommand\hiderel[1]{\mathrel{\advance\lr@level\@ne#1}}
+\let\m@@Bin\m@Bin
+\let\m@@Rel\m@Rel
+\let\EQ@prebin@space\relax
+\def\EQ@prebin@space@a{\mskip-\eq@binoffset \keep@glue \mskip\eq@binoffset}
+\def\bin@break{\ifnum\lastpenalty=\z@\penalty\prebinoppenalty\fi
+ \EQ@prebin@space}
+\def\rel@break{%
+ \ifnum\abs@num\lastpenalty <\abs@num\prerelpenalty
+ \penalty\prerelpenalty
+ \fi
+}
+\def\d@@Bin{\bin@break \m@@Bin}
+\def\d@@Rel{\mark@lhs \rel@break \m@@Rel}
+\let\m@@symRel\@symRel \def\d@@symRel{\mark@lhs \rel@break \m@@symRel}
+\let\m@@symBin\@symBin \def\d@@symBin{\bin@break \m@@symBin}
+\let\m@@symDel\@symDel
+\let\m@@symDeR\@symDeR
+\let\m@@symDeB\@symDeB
+\let\m@@symDeA\@symDeA
+\global\everydisplay\expandafter{\the\everydisplay \display@setup}
+\def\display@setup{%
+ \medmuskip\Dmedmuskip \thickmuskip\Dthickmuskip
+ \let\m@Bin\d@@Bin \let\m@Rel\d@@Rel
+ \let\@symRel\d@@symRel \let\@symBin\d@@symBin
+ \let\m@DeL\d@@DeL \let\m@DeR\d@@DeR \let\m@DeB\d@@DeB
+ \let\m@DeA\d@@DeA
+ \let\@symDeL\d@@symDeL \let\@symDeR\d@@symDeR
+ \let\@symDeB\d@@symDeB \let\@symDeA\d@@symDeA
+ \let\left\eq@left \let\right\eq@right \global\lr@level\z@
+ \everyhbox{\everyhbox\@emptytoks
+ \let\display@setup\relax \textmath@setup \let\textmath@setup\relax
+ }%
+ \everyvbox{\everyvbox\@emptytoks
+ \let\display@setup\relax \textmath@setup \let\textmath@setup\relax
+ }%
+}
+\def\textmath@setup{%
+ \let\m@Bin\m@@Bin \let\m@Rel\m@@Rel
+ \let\@symRel\m@@symRel \let\@symBin\m@@symBin
+ \let\m@DeL\m@@DeL \let\m@DeR\m@@DeR \let\m@DeB\m@@DeB
+ \let\m@DeA\m@@DeA
+ \let\@symDeL\m@@symDeL \let\@symDeR\m@@symDeR
+ \let\@symDeB\m@@symDeB \let\@symDeA\m@@symDeA
+ \let\left\@@left \let\right\@@right
+}
+\@ifundefined{@displaytrue}{%
+ \@xp\newif\csname if@display\endcsname
+ \everydisplay\@xp{\the\everydisplay \@displaytrue}
+}{}
+% \begin{dmath}[label={xyz}]
+\define@key{breqn}{label}{\def\next@label{\label{#1}}}
+\global\let\next@label\@empty
+% \begin{dmath}[number={\nref{foo}\textprime}]
+\define@key{breqn}{number}{\def\eq@number{#1}%
+ \let\@currentlabel\eq@number
+}
+% \begin{dmath}[shiftnumber]
+\define@key{breqn}{shiftnumber}{\let\eq@shiftnumber\@True}
+% \begin{dmath}[holdnumber]
+\define@key{breqn}{holdnumber}{\let\eq@holdnumber\@True}
+% \begin{dmath}[density={.5}]
+\define@key{breqn}{density}{\def\eq@density@factor{#1}}
+% \begin{dmath}[indentstep={1em}]
+\define@key{breqn}{indentstep}{\eqindentstep#1\relax}
+% \begin{dmath}[compact]
+\define@key{breqn}{compact}[-99]{\prerelpenalty=#1\relax}
+% \begin{dmath}[layout={S}]%
+\define@key{breqn}{layout}[?]{%
+ \edef\eq@layout{\@car#1?\@nil}%
+}
+% \begin{dmath}[spread={1pt}]
+\define@key{breqn}{spread}{%
+ \advance\eqlinespacing#1%
+ \advance\eqlineskip#1\eqlineskiplimit\eqlineskip
+}
+\define@key{breqn}{sidespace}{%
+ \dimen@#1\relax % error checking
+ \def\given@sidespace{#1}%
+}
+% \begin{dmath}[style={\small}]
+\define@key{breqn}{style}{\eqstyle\@xp{\the\eqstyle #1}}
+% \begin{dmath}[frame]
+\define@key{breqn}{frame}[\fboxrule]{\let\eq@frame=T%
+ \dim@a#1\relax\edef\eq@framewd{\the\dim@a}%
+ \freeze@glue\eqlinespacing \freeze@glue\eqlineskip
+}
+\define@key{breqn}{fullframe}[]{\let\eq@frame=U%
+ \freeze@glue\eqlinespacing \freeze@glue\eqlineskip
+}
+\let\eq@frame=F % no frame
+\def\eq@framewd{\fboxrule}
+\define@key{breqn}{framesep}[\fboxsep]{%
+ \ifx\eq@frame=F\let\eq@frame=T\fi
+ \dim@a#1\relax \edef\eq@framesep{\the\dim@a}%
+ \freeze@glue\eqlinespacing \freeze@glue\eqlineskip
+}
+\def\eq@framesep{\fboxsep}
+% \begin{dmath}[background={red}]
+\define@key{breqn}{background}{\def\eq@background{#1}%
+ \freeze@glue\eqlinespacing \freeze@glue\eqlineskip
+}
+%
+% \begin{dmath}[color={purple}]
+\define@key{breqn}{color}{\def\eq@foreground{#1}}
+% \begin{dmath}[center]
+\define@key{breqn}{center}[]{\let\eq@centerlines\@True}
+\let\eq@centerlines\@False
+% \begin{dgroup}[noalign]
+\define@key{breqn}{noalign}[]{\let\grp@align\@False}
+\let\grp@align\@True % default
+% \begin{dgroup}[breakdepth={2}]
+\define@key{breqn}{breakdepth}{\eqbreakdepth#1\relax}
+% \begin{darray}[cols={lcrlcr}]
+\define@key{breqn}{cols}{\global\let\@preamble\@empty
+ \darray@mkpream#1\@percentchar
+}
+\newenvironment{dmath}{\@eq@numbertrue \@optarg\@dmath{}}{}
+\def\@dmath[#1]{%
+ \if\eq@group\else\eq@prelim\fi
+ \setkeys{breqn}{#1}%
+ \the\eqstyle
+ \eq@setnumber
+ \begingroup
+ \eq@setup@a
+ \eq@startup
+}
+\def\enddmath#1{\check@punct@or@qed}
+\def\end@dmath{%
+ \eq@capture
+ \endgroup
+ \EQ@setwdL
+ \eq@measure
+ \if\eq@group \grp@push \else \eq@finish\fi
+}
+\newenvironment{dmath*}{%
+ \@eq@numberfalse \@optarg\@dmath{}%
+}{}
+\@namedef{end@dmath*}{\end@dmath}
+\@namedef{enddmath*}#1{\check@punct@or@qed}
+\def\eq@prelim{%
+ \if@noskipsec \leavevmode \fi
+ \if@inlabel \leavevmode \global\@inlabelfalse \fi
+ \if@nobreak \global\@nobreakfalse \predisplaypenalty\@M \fi
+ \everypar\@emptytoks
+ \noindent
+ \eq@nulldisplay
+ \par %% \eq@saveparinfo %% needs work
+ \let\intertext\breqn@intertext
+}
+\def\breqn@parshape@warning{%
+ \PackageWarning{breqn}{%
+ Complex paragraph shape cannot be followed by this equation}%
+}
+\let\eq@prevshape\@empty
+\def\eq@saveparinfo{%
+ \count@\prevgraf \advance\count@-\thr@@ % for the null display
+ \edef\eq@prevshape{\prevgraf\the\count@\space}%
+ \ifcase\parshape
+ % case 0: no action required
+ \or \edef\eq@prevshape{\eq@prevshape
+ \parshape\@ne\displayindent\displaywidth\relax
+ }%
+ \else
+ \breqn@parshape@warning
+ \fi
+}
+\def\eq@setnumber{%
+ \debugwr{=====================================================}%
+ \if@eq@number
+ \ifx\eq@number\@empty
+ \stepcounter{equation}\let\eq@number\theequation
+ \fi
+ \fi
+ \ifx\eq@number\@empty
+ \else
+ \set@label{equation}\eq@number
+ \global\sbox\EQ@numbox{%
+ \next@label \global\let\next@label\@empty
+ \eqnumcolor\eqnumsize
+ \eqnumfont{\eqnumform{\eq@number}}%
+\debug \typeout{|= Eq number (\eq@number)
+ placement '\eqnumside\eqnumplace'}%
+\gubed
+ }%
+ \@eq@numbertrue % locally true
+ \debugwr{Eq number width: \the\wd\EQ@numbox\space
+ (ht/dp: \the\ht\EQ@numbox+\the\dp\EQ@numbox)}%
+ \debugwr{Eq number sep: \the\eqnumsep}%
+ \fi
+}
+\def\eq@finish{%
+ \begingroup
+ \csname eq@\eqindent \if@eq@number\eqnumside\eqnumplace\fi\endcsname
+ \ifnum\eq@lines=\prevgraf
+ \else
+\debug
+\batchmode\showboxbreadth\maxdimen\showboxdepth99\showlists\errorstopmode
+\gubed
+ \debugmsg{%
+ prevgraf \the\prevgraf\space != eq@lines \the\eq@lines?}%
+ \fi
+ \endgroup
+ \eq@botspace
+}
+\def\peek@branch#1#2{%
+ \let\peek@b#1\let\peek@space#2\futurelet\@let@token\peek@a
+}
+\def\peek@skipping@spaces#1{\peek@branch#1\peek@skip@space}
+\def\peek@a{%
+ \ifx\@let@token\@sptoken \expandafter\peek@space
+ \else \expandafter\peek@b\fi
+}
+\lowercase{\def\peek@skip@space} {\futurelet\@let@token\peek@a}%
+\def\check@punct{\futurelet\@let@token\check@punct@a}
+\def\check@punct@a{%
+ \edef\@tempa{%
+ \ifx\@let@token\@sptoken\@nx\finish@end
+ \else\ifx\@let@token ,\@nx\check@qed
+ \else\ifx\@let@token .\@nx\check@qed
+ \else\check@punct@b % check the less common possibilities
+ \fi\fi\fi
+ }%
+ \@tempa
+}
+\begingroup
+\toks@a{%
+ \ifx\@let@token ;\@nx\check@qed
+ \else\ifx\@let@token ?\@nx\check@qed
+ \else\ifx\@let@token !\@nx\check@qed
+}
+\toks@c{\fi\fi\fi}% matching with \toks@a
+\catcode`\.=\active \catcode`\,=\active \catcode`\;=\active
+\catcode`\?=\active \catcode`\!=\active
+\toks@b{
+ \else\ifx\@let@token ,\@nx\check@qed
+ \else\ifx\@let@token .\@nx\check@qed
+ \else\ifx\@let@token ;\@nx\check@qed
+ \else\ifx\@let@token ?\@nx\check@qed
+ \else\ifx\@let@token !\@nx\check@qed
+ \else\@nx\finish@end
+ \fi\fi\fi\fi\fi
+}
+\xdef\check@punct@b{%
+ \the\toks@a\the\toks@b\the\toks@c
+}
+\endgroup
+\let\found@punct\@empty
+\def\check@qed#1{%
+ \gdef\found@punct{#1}%
+ \peek@skipping@spaces\check@qed@a
+}
+\def\check@qed@a{%
+ \ifx\end\@let@token \@xp\check@qed@b
+ \else \@xp\finish@end
+ \fi
+}
+\def\check@qed@b#1#2{%
+ \@ifundefined{#2qed}{}{%
+ \toks@\@xp{\found@punct\csname#2qed\endcsname}%
+ \xdef\found@punct{\the\toks@}%
+ }%
+ \finish@end
+ \end{#2}%
+}
+\def\@tempa#1\endcsname#2\@nil{\def\latex@end##1{#2}}
+\expandafter\@tempa\end{#1}\@nil
+\def\end#1{\csname end#1\endcsname \latex@end{#1}}%
+\def\check@punct@or@qed#1{%
+ \def\finish@end{\csname end@#1\endcsname\latex@end{#1}}%
+ \check@punct
+}
+\newcommand\eqpunct[1]{\thinspace#1}
+\providecommand\set@label[2]{\protected@edef\@currentlabel{#2}}
+\def\eq@topspace#1{%
+ \begingroup
+ \global\let\EQ@shortskips\@False
+ \if\@And{\eq@group}{\@Not\GRP@top}%
+ \parskip\intereqskip \penalty\intereqpenalty
+ \else
+ \eq@setdisplayskips
+ \fi
+ \ifx F\eq@frame
+ \else
+ \advance\parskip\eq@framesep \advance\parskip\eq@framewd\relax
+ \fi
+ #1%
+ \endgroup
+}
+\def\eq@setdisplayskips{%
+ \if \if@eq@number\eqnumside \else F\fi L%
+ \parskip\abovedisplayskip
+ \else
+ \afterassignment\eq@firstindent % sets \dim@a
+ \int@a\eq@parshape \relax
+\debugwr{first indent \the\dim@a, predisplaysize \the\predisplaysize}%
+ \advance\dim@a-2em % standard TeX value
+ \ifdim\dim@a>\predisplaysize
+ \global\let\EQ@shortskips\@True
+ \parskip\abovedisplayshortskip
+ \aftergroup\belowdisplayskip\aftergroup\belowdisplayshortskip
+ \else
+ \parskip\abovedisplayskip
+ \fi
+\debugwr{parskip \the\parskip}%
+ \fi
+}
+\def\eq@firstindent#1 #2 #3\relax{\dim@a#2\relax}
+\def\eq@botspace{%
+ \penalty\postdisplaypenalty
+ \ifx F\eq@frame
+ \else
+ \advance\belowdisplayskip\eq@framesep
+ \advance\belowdisplayskip\eq@framewd\relax
+ \fi
+ \vskip\belowdisplayskip
+ \@endpetrue % kill parindent if current paragraph continues
+ \global\@ignoretrue % ignore following spaces
+ \eq@resume@parshape
+}
+\def\eq@resume@parshape{}
+\def\eq@startup{%
+ \global\let\EQ@hasLHS\@False
+ \global\let\found@punct\@empty
+ \setbox\z@\vbox\bgroup
+ \noindent \@@math \displaystyle
+ \penalty-\@Mi
+}
+\def\eq@setup@a{%
+ \everymath\everydisplay
+ %\let\@newline\eq@newline % future possibility?
+ \let\\\eq@newline
+ \let\insert\eq@insert \let\mark\eq@mark \let\vadjust\eq@vadjust
+ \hsize\maxdimen \pretolerance\@M
+ \linepenalty\@m
+ \rightskip\z@\@plus\@M\p@ \leftskip\z@skip \parfillskip\z@skip
+ \clubpenalty\@ne \widowpenalty\z@ \interlinepenalty\z@
+ \global\let\EQ@prebin@space\relax
+ \binoppenalty\@M \relpenalty\@M
+}
+\def\eq@unclosed@left{%
+ \PackageError{breqn}{%
+ Delimiter mismatch---not enough closing delimiters%
+ }{%
+ Or perhaps too many open delimiters, somewhere in this
+equation.\MessageBreak
+ \@ehc
+ }%
+}
+\def\eq@capture{%
+ \ifnum\lr@level>\z@ \eq@unclosed@left \global\lr@level\z@ \fi
+ \ifnum\lastpenalty>-\@M \penalty-\@Mi \fi
+ \keep@glue\@@endmath
+ \eq@addpunct
+ \@@par
+ \eq@wdL\z@
+ \global\let\EQ@setwdL\@empty
+ \global\let\EQ@thickmuskip\@empty
+\debug
+\batchmode\showboxbreadth\maxdimen\showboxdepth99\showlists\errorstopmode
+\gubed
+ \setbox\tw@\lastbox
+ \global\setbox\EQ@box\hbox{\unhbox\tw@\unskip\unskip\unpenalty}%
+ \unskip\unpenalty
+ \global\setbox\EQ@copy\copy\EQ@box
+%% \global\setbox\EQ@vimcopy\copy\EQ@vimbox
+ \clubpenalty\z@
+ \eq@repack % recursive
+ \setbox\tw@\lastbox
+ \global\setbox\EQ@box\hbox{\unhcopy\tw@\unskip\unpenalty \unhbox\EQ@box}%
+ \global\setbox\EQ@copy\hbox{\unhbox\tw@\unskip\unpenalty \unhbox\EQ@copy}%
+\debug
+\batchmode\showbox\EQ@copy \showthe\eq@wdL\errorstopmode
+\gubed
+ \egroup % end vbox started earlier
+}
+\def\eq@addpunct{%
+ \ifx\found@punct\@empty
+ \else \eqpunct{\found@punct}%
+ \fi
+ \EQ@afterspace
+}
+\global\let\EQ@afterspace\@empty
+\global\let\EQ@setwdL\@empty
+\global\let\EQ@thickmuskip\@empty
+\def\eq@LHS@check{%
+ \if\EQ@hasLHS
+ \setbox\z@\hbox{\unhcopy\EQ@copy\setbox\tw@\lastbox
+ \EQ@thickmuskip}%
+ \eq@wdL\wd\z@
+ \xdef\EQ@setwdL{\eq@wdL\the\eq@wdL\relax}%
+\debugwr{Changed wdL to \the\eq@wdL}%
+ \fi
+}
+\def\eq@repack{%
+ \ifcase\lastpenalty
+ % case 0: normal case
+ \setbox\tw@\lastbox
+ \eq@repacka\EQ@copy \eq@repacka\EQ@box
+ \unskip
+ \or % case 1: finished recursing
+ \unpenalty
+ \setbox\tw@\lastbox
+ \eq@repacka\EQ@copy \eq@repacka\EQ@box
+ \eq@LHS@check
+ \@xp\@gobble
+ \or % case 2: save box width = LHS width
+ \unpenalty
+ \setbox\tw@\lastbox
+ \setbox\z@\copy\tw@ \setbox\z@\hbox{\unhbox\z@\unskip\unpenalty}%
+ \advance\eq@wdL\wd\z@
+ \xdef\EQ@setwdL{\eq@wdL\the\eq@wdL\relax}%
+ \global\setbox\EQ@copy\hbox{%
+ \hbox{\unhcopy\tw@\unskip\unpenalty
+ \xdef\EQ@thickmuskip{\hskip\the\lastskip\relax}%
+ \unskip}%
+ \box\EQ@copy
+ }%
+ \global\setbox\EQ@box\hbox{%
+ \hbox{\unhbox\tw@\unskip\unpenalty\unskip}%
+ \box\EQ@box
+ }%
+ \unskip
+ \or % case 3: unpack left-right box
+ \unpenalty
+ \eq@lrunpack
+ \else
+ \breqn@repack@err
+ \fi
+ \eq@repack % RECURSE
+}
+\def\breqn@repack@err{%
+ \PackageError{breqn}{eq@repack penalty neq 0,1,2,3}\relax
+}
+\def\eq@repacka#1{%
+ \global\setbox#1\hbox{\unhcopy\tw@ \unskip
+ \count@-\lastpenalty
+ \ifnum\count@<\@M \else \advance\count@-\@M \fi
+ \unpenalty
+ \ifx\EQ@copy#1\ifnum\count@>\thr@@ \count@\@ne\fi\fi
+ \ifcase\count@
+ % case 0, normal line break
+ \penalty-\@M % put back the linebreak penalty
+ \or % case 1, do nothing (end of equation)
+ \relax
+ \or % case 2, no-op (obsolete case)
+ \or % case 3, transfer vspace and/or penalty
+ \ifx#1\EQ@box \eq@revspace \else \eq@revspaceb \fi
+ \or % case 4, put back an insert
+ \eq@reinsert
+ \or % case 5, put back a mark
+ \eq@remark
+ \or % case 6, put back a vadjust
+ \eq@readjust
+ \else % some other break penalty
+ \penalty-\count@
+ \fi
+ \unhbox#1}%
+}
+\def\eq@nulldisplay{%
+ \begingroup \frozen@everydisplay\@emptytoks
+ \@@display
+ \predisplaypenalty\@M \postdisplaypenalty\@M
+ \abovedisplayskip\z@skip \abovedisplayshortskip\z@skip
+ \belowdisplayskip\z@skip \belowdisplayshortskip\z@skip
+ \xdef\EQ@displayinfo{%
+ \prevgraf\the\prevgraf \predisplaysize\the\predisplaysize
+ \displaywidth\the\displaywidth \displayindent\the\displayindent
+ \listwidth\the\linewidth
+ \ifdim\displayindent>\z@
+ \advance\listwidth\the\leftmargin
+ \advance\listwidth\the\rightmargin
+ \fi
+ \relax}%
+ \halign{##\cr}%
+ \@@enddisplay
+ \par
+ \endgroup
+ \EQ@displayinfo
+}
+\def\eq@newline{%
+ \@ifstar{\eq@newlinea\@M}{\eq@newlinea\eqinterlinepenalty}}
+\def\eq@newlinea#1{%
+ \@ifnext[{\eq@newlineb{#1}}{\eq@newlineb{#1}[\maxdimen]}}
+\def\eq@newlineb#1[#2]{\penalty-\@M}
+\def\eq@revspace{%
+ \global\setbox\EQ@vimbox\vbox{\unvbox\EQ@vimbox
+ \unpenalty
+ \global\setbox\@ne\lastbox}%
+ \@@vadjust{\unvbox\@ne}%
+ \penalty-\@M
+}
+\def\eq@revspaceb{%
+ \global\setbox\EQ@vimcopy\vbox{\unvbox\EQ@vimcopy
+ \unpenalty
+ \global\setbox\@ne\lastbox}%
+ \@@vadjust{\unvbox\@ne}%
+ \penalty-\@M
+}
+\def\eq@break#1{\penalty-1000#1 \keep@glue}
+\let\@parshape\@empty
+\def\eq@measure{%
+ \ifdim\eq@indentstep=\maxdimen \eq@indentstep\eqindentstep \fi
+ \ifdim\eq@linewidth=\z@ \else \edef\eq@linewidths{{\the\eq@linewidth}}\fi
+ \eqrightskip \z@\@plus.2\columnwidth
+ \begingroup \eq@params
+ \leftskip\z@skip
+ \debug\eqinfo\gubed
+ \global\EQ@continue{\eq@trial}%
+ \eq@trial % uses \eq@linewidths
+ \eq@failout % will be a no-op if the trial succeeded
+ \endgroup
+ \EQ@trial
+}
+\let\EQ@trial\@empty
+\newtoks\EQ@continue
+\let\EQ@widths\@empty
+\def\eq@linewidths{\displaywidth\linewidth\columnwidth}
+\def\eq@trial{%
+ \ifx\@empty\eq@linewidths
+ \global\EQ@continue{}%
+ \else
+ \iffalse{\fi \@xp\eq@trial@a \eq@linewidths}%
+ \fi
+ \the\EQ@continue
+}
+\def\eq@trial@a#1{%
+ \dim@c#1\relax
+\debugwr{trial-A: width #1 (\the\dim@c)}%
+ \ifx T\eq@frame \eq@frame@adjust\dim@c \fi
+ \ifdim\dim@c>\eq@linewidth
+ \eq@linewidth\dim@c \eq@freewidth\eq@linewidth
+ \if@eq@number
+ \advance\eq@freewidth-\eqnumsep
+ \advance\eq@freewidth-\wd\EQ@numbox
+ \fi
+ \let\eq@trial@b\eq@trial@d
+ \csname eq@try@layout@\eq@layout\endcsname
+ \fi
+ \edef\eq@linewidths{\iffalse}\fi
+}
+\@namedef{eq@try@layout@?}{%
+ \let\eq@trial@b\eq@trial@c
+ \if\EQ@hasLHS
+\debugmsg{trial-A: LHS present (\the\eq@wdL)}%
+ \ifdim\eq@wdL>\eq@linewidth
+\debugwr{trial-A: LHS > linewidth}%
+ \dim@a\wd\EQ@copy \advance\dim@a-\eq@wdL
+ \ifdim\dim@a<.25\eq@linewidth \eq@try@layout@S
+ \else \eq@try@layout@l
+ \fi
+ \else
+ \ifdim\eq@wdL>.7\eq@linewidth
+\debugmsg{trial-A: LHS > .7 linewidth (linewidth=\the\eq@linewidth)}%
+ \eq@try@layout@iS
+ \else
+\debugmsg{trial-A: LHS not extraordinarily wide}%
+ \eq@try@layout@L
+ \fi
+ \fi
+ \else
+\debugwr{trial-A: No LHS here}%
+ \eq@try@layout@iS
+ \fi
+}
+\def\eq@trial@done{%
+\debugwr{End trial: Success!}%
+ \let\eq@failout\relax
+}
+\def\eq@trial@init{\global\let\EQ@fallback\eq@nextlayout}
+\def\eq@trial@save#1{%
+\debug \def\eq@zek{^^J|== \space}\let\eq@kez\@empty\debugwr{trial info:\eq@measurements}\debugmsg{bounding box: \the\eq@bodywidth x\the\eq@vspan^^J}%
+ \let\eq@zek\relax \let\eq@kez\relax
+\gubed
+ \xdef#1{%
+ \eq@linewidth\the\eq@linewidth \eq@freewidth\the\eq@freewidth
+ \eq@lines\the\eq@lines \eq@badness\the\eq@badness
+ \eq@wdL\the\eq@wdL \eq@bodywidth\the\eq@bodywidth \eq@sidespace\the\eq@sidespace
+ \eq@vspan\the\eq@vspan \eq@dp\the\eq@dp \eq@firstht\the\eq@firstht
+ \prerelpenalty\the\prerelpenalty % might change during processing
+ \def\@nx\eq@badline{\eq@badline}%
+ \def\@nx\eq@layout{\eq@layout}%
+ \def\@nx\eq@parshape{\@parshape}%
+ \def\@nx\eq@measurements{\eq@measurements}%
+ \def\@nx\adjust@rel@penalty{\adjust@rel@penalty}%
+ \def\@nx\eq@shiftnumber{\eq@shiftnumber}%
+ }%
+}
+\def\eq@recalc{%
+ \eq@bodywidth\z@ \eq@vspan\z@skip \eq@badness\z@
+ \eq@wdRmax\z@
+ \let\eq@zek\eq@recalc@a \eq@measurements \let\eq@zek\relax
+ \ifdim\eq@bodywidth<\eq@linewidth
+ \eq@sidespace\eq@linewidth \advance\eq@sidespace -\eq@bodywidth
+ \divide\eq@sidespace\tw@
+ \else
+ \eq@sidespace\z@
+ \fi
+}
+\def\eq@recalc@a#1x#2+#3\eq@kez{%
+ \eq@firstht#2\relax
+ \let\eq@zek\eq@recalc@b
+ \eq@zek#1x#2+#3\eq@kez
+}
+\def\eq@recalc@b#1^^J#2,#3x#4+#5@#6\eq@kez{%
+ \dim@a#3\relax
+ \ifdim\dim@a>\eq@wdRmax \eq@wdRmax\dim@a\fi
+ \advance\dim@a#2\relax
+ \ifdim\dim@a>\eq@bodywidth \eq@bodywidth\dim@a \fi
+ \eq@dp#5\relax
+ \advance\eq@vspan#1\advance\eq@vspan#4\advance\eq@vspan#5\relax
+ \ifnum#6>\eq@badness \eq@badness#6\relax\fi
+}
+\let\EQ@last@trial\@empty
+\def\eq@failout{%
+\debugmsg{End trial: failout}%
+ \global\let\EQ@trial\EQ@last@trial
+}
+\def\eq@frame@adjust#1{%
+ \dim@a\eq@framewd \advance\dim@a\eq@framesep
+ \advance#1-2\dim@a
+}
+\def\eq@layout{?}
+\def\eq@try@layout@D{%
+ \dim@a\eq@linewidth \advance\dim@a-\eq@indentstep
+ \edef\@parshape{\parshape 2
+ 0pt \the\eq@wdL\space \the\eq@indentstep\space \the\dim@a\relax
+ }%
+ \def\adjust@rel@penalty{\penalty-99 }%
+ \eq@trial@b{D}{\eq@try@layout@A}%
+}
+\def\eq@try@layout@A{%
+ \edef\@parshape{\parshape 1 0pt \the\eq@linewidth\relax}%
+ \if\EQ@hasLHS \def\adjust@rel@penalty{\penalty-99 }\fi
+ \eq@trial@b{A}{}%
+}
+\def\eq@reindent@A{%
+ \dim@a\eq@linewidth \advance\dim@a-\eq@bodywidth
+ \edef\eq@parshape{%
+ \parshape 2
+ 0pt \the\eq@bodywidth\space
+ \the\dim@a\space \the\eq@bodywidth\relax
+ }%
+ \leftskip\z@skip
+}
+\def\eq@try@layout@L{%
+ \dim@b\eq@linewidth \advance\dim@b-\eq@wdL
+ \edef\@parshape{\parshape 2 0pt \the\eq@linewidth\space
+ \the\eq@wdL\space \the\dim@b\relax
+ }%
+ \eq@trial@b{L}{\eq@try@layout@D}%
+}
+\def\eq@try@layout@iS{%
+ \edef\@parshape{\parshape 1 0pt \the\eq@freewidth\relax}%
+ \eq@trial@b{i}{\eq@try@layout@S}%
+}
+\def\eq@try@layout@S{%
+ \dim@b\eq@linewidth \advance\dim@b-2\eqmargin \advance\dim@b-1em%
+ \int@a\wd\EQ@copy \divide\int@a\dim@b
+ \advance\dim@b-\int@a\eq@indentstep\relax
+ \if@eq@number
+ \ifdim\dim@b>15em%
+ \advance\dim@b-\eqnumsep \advance\dim@b-\wd\EQ@numbox
+ \fi
+ \fi
+ \int@b\z@
+ \def\@tempa{\dim}%
+ \edef\@parshape{\parshape 2 0pt \the\dim@b\space
+ \the\eqmargin\space\the\dim@b\relax}%
+ \eq@trial@b{S}{\eq@try@layout@A}%
+}
+\def\eq@try@layout@l{%
+ \dim@a\eq@linewidth \advance\dim@a-\eq@indentstep
+ \int@a\eq@wdL \divide\int@a\dim@a
+ \advance\int@a\tw@
+ \edef\@parshape{\parshape \number\int@a\space
+ 0pt \the\eq@linewidth
+ }%
+ \advance\int@a-\tw@
+ \dim@b=2\eq@indentstep
+ \dim@c\eq@linewidth \advance\dim@c-\dim@b
+ \edef\@parshape{\@parshape
+ \replicate{\int@a}{ \the\eq@indentstep\space\the\dim@a}%
+ \space\the\dim@b\space\the\dim@c
+ }%
+ \eq@trial@b{l}{\eq@try@layout@A}%
+}
+\def\eq@fix@lastline{%
+ \setbox\tw@\lastbox \dim@b\wd\tw@
+ \eq@dp\dp\tw@
+ \nointerlineskip\hbox to\dim@b{\unhbox\tw@
+ \skip@c\lastskip \unskip\unskip\hskip\skip@c
+ }%
+}
+\def\eq@trial@b{\eq@trial@c}
+\def\eq@compact@test{%
+ \debugwr{wdRmax: \the\eq@wdRmax}%
+ \let\@tempa\@empty
+ \if L\eq@layout
+ \ifnum\prerelpenalty=-\@M % standard noncompact value
+ \ifdim\eq@wdRmax>\eqcompactzone\relax
+ \else
+ \prerelpenalty=-99
+ \def\EQ@fallback{\endgroup
+ \begingroup \@firstoftwo{\eq@try@layout@L}}%
+ % This is sensitively dependent on the code that currently
+ % follows! Talk about bug prone! Watch out!
+ \def\@tempa##1{\csname iffalse\endcsname}%
+ \eq@repack@compact
+ \fi
+ \fi
+ \fi
+ \@tempa
+}
+\def\eq@trial@c#1#2{%
+\debug\message{^^J}\gubed
+\debugwr{Trying layout "#1" with parshape^^J|== \space\@xp\@gobble\@parshape}%
+ \begingroup
+ \eq@trial@init
+ \def\eq@layout{#1}%
+ \setbox\z@\vbox{%
+ \hfuzz\maxdimen
+ \eq@trial@p % run the given parshape
+% \ifnum\eq@lines>\@ne \@xp\eq@compact@test \fi
+ \if\@Not{\eq@badline}%
+ \eq@trial@save\EQ@trial
+ \if@eq@number
+ \if i\eq@layout
+ \else
+ \if A\eq@layout \let\eq@shiftnumber\@True
+ \else \eq@retry@with@number
+ \fi
+ \if\eq@shiftnumber
+ \begingroup
+ \EQ@trial
+ \let\@parshape\eq@parshape \let\eq@shiftnumber\@True
+ \eq@trial@save\EQ@trial
+ \endgroup
+ \fi
+ \fi
+ \fi
+ \if L\eq@layout \eq@check@density
+ \else
+ \if\@Not{\eq@badline}%
+ \aftergroup\@gobbletwo
+ \global\EQ@continue{\eq@trial@done}%
+ \fi
+ \fi
+ \else
+ \eq@trial@save\EQ@last@trial
+ \fi
+ }% end of vbox
+ \EQ@fallback{#2}%
+ \endgroup
+}
+\def\eq@check@density{%
+ \if\@Or{\@Not\EQ@hasLHS}{\eq@shortLHS}%
+ \aftergroup\@gobbletwo % cancel the \EQ@fallback code
+ \global\EQ@continue{\eq@trial@done}%
+ \else
+ \if\eq@dense@enough
+ \aftergroup\@gobbletwo % cancel the \EQ@fallback code
+ \global\EQ@continue{\eq@trial@done}%
+ \fi
+ \fi
+}
+\def\eq@retry@with@number{%
+\debugwr{Retry-with-number: wdT=\the\eq@bodywidth, freewidth=\the\eq@freewidth}%
+\toks@\@xp{\EQ@trial}\debugwr{EQ@trial: \the\toks@}%
+ \ifdim\eq@bodywidth>\eq@freewidth \eq@retry@with@number@a \fi
+}
+\let\eq@shiftnumber\@False
+\def\eq@retry@with@number@a{%
+ \adjust@for@number % depends on number placement
+\debug\message{^^J}\gubed\debugwr{Retrying (to make room for the number) with parshape^^J|== \space\@xp\@gobble\@parshape}%
+ \nointerlineskip
+ \edef\eq@prev@lines{\the\eq@lines}%
+ \eq@trial@p
+ \int@b\eq@prev@lines \advance\int@b\@ne
+ \ifnum\eq@lines>\int@b
+ \let\eq@shiftnumber\@True
+ \else
+ \if\@Not{\eq@badline}%
+ \let\eq@shiftnumber\@False
+ \eq@trial@save\EQ@trial
+ \else
+ \let\eq@shiftnumber\@True
+ \fi
+ \fi
+}
+\def\adjust@for@number{%
+\debugwr{eq@freewidth=\the\eq@freewidth??}%
+ \dim@d\wd\EQ@numbox \advance\dim@d\eqnumsep
+\debugwr{Adjusting by +\the\dim@d}%
+ \@xp\let\@xp\adjust@for@number@b
+ \csname adjust@for@number@\eqnumside\eqnumplace\endcsname
+ \@xp\adjust@for@number@a\@parshape\relax
+}
+\def\adjust@for@number@a#1 #2\relax{%
+ \edef\@parshape{#1}%
+ \adjust@for@number@b#2 @ @ \relax
+}
+\def\adjust@for@number@LT#1 #2 {%
+ \ifx @#1\edef\@parshape{\@parshape\relax}%
+ \@xp\@gobble
+ \else
+ \dim@a#1\advance\dim@a\dim@d
+ \dim@b#2\advance\dim@b-\dim@d
+ \edef\@parshape{\@parshape\space\the\dim@a\space\the\dim@b}%
+ \fi
+ \adjust@for@number@LT
+}
+\def\adjust@for@number@LM{%
+ \ifnum\eq@lines>\tw@
+ \advance\dim@d\eq@bodywidth
+ \advance\dim@d-\eq@linewidth
+ \fi
+\debugwr{No, adjusting by +\the\dim@d\space instead}%
+ \adjust@for@number@LT
+}
+\def\adjust@for@number@RM#1 #2 {%
+ \ifx @#1\edef\@parshape{\@parshape\relax}%
+ \@xp\@gobble
+ \else
+ \dim@c#2\relax
+ \dim@b\eq@freewidth
+ \advance\dim@b-#1\advance\dim@b-\dim@c
+ \ifdim\dim@b<\z@ \advance\dim@c\dim@b
+ \ifdim\dim@c<\p@ \dim@c\p@\relax \fi
+ \fi
+ \edef\@parshape{\@parshape\space#1 \the\dim@c}%
+ \fi
+ \adjust@for@number@RM
+}
+\def\eq@trial@p{%
+ \@parshape %
+ \eq@dump@box\unhcopy\EQ@copy
+ {\@@par}% leave \parshape readable
+ \eq@lines\prevgraf
+\debugmsg{Number of lines: \number\eq@lines}%
+ \eq@fix@lastline
+ \let\eq@badline\@False
+ \if i\eq@layout \ifnum\eq@lines>\@ne \let\eq@badline\@True \fi\fi
+ \eq@curline\eq@lines % loop counter for eq@measure@lines
+ \let\eq@measurements\@empty
+ \eq@ml@record@indents
+ \eq@measure@lines
+ \eq@recalc
+}
+\let\adjust@rel@penalty\@empty
+\def\eq@shortLHS{0\ifdim\eq@wdL>.44\eq@bodywidth \@xp 1\else \@xp 0\fi}
+\def\eq@longLHS{0\ifdim\eq@wdL>6em \@xp 0\else \@xp 1\fi}
+\def\eq@nextlayout#1{%
+ \endgroup
+\debugwr{Nope ... that ain't gonna work.}%
+ \begingroup #1%
+}
+\def\eq@trial@d#1#2{\eq@trial@c{#1}{}}
+\let\EQ@fallback\@empty
+\def\eq@ml@record@indents{%
+ \int@a\z@
+ \def\@tempa{%
+ \advance\int@a\@ne
+ \@xp\edef\csname eq@i\number\int@a\endcsname{\the\dim@a}%
+ \ifnum\int@a<\int@b \afterassignment\@tempb \fi
+ \dim@a
+ }%
+ \def\@tempb{\afterassignment\@tempa \dim@a}%
+ \def\@tempc##1##2 {\int@b##2\afterassignment\@tempa\dim@a}%
+ \@xp\@tempc\@parshape
+}
+\chardef\eq@zek=`\!
+\chardef\eq@kez=`\?
+\def\eq@measurements{%
+ \eq@zek 4.5pt/5.0pt,66.0ptx6.8pt+2.4pt@27\eq@kez
+ ...
+}
+\def\eq@measure@lines{%
+ \let\eq@ml@continue\eq@measure@lines
+ \setbox\tw@\lastbox \dim@b\wd\tw@ % find target width of line
+ \setbox\z@\hbox to\dim@b{\unhbox\tw@}% check for overfull
+ \eq@badness\badness
+ \ifnum\eq@badness<\inf@bad \else \let\eq@badline\@True \fi
+ \eq@ml@a \eq@ml@continue
+}
+\def\eq@ml@a{%
+ \setbox\tw@\hbox{\unhbox\z@ \unskip}% find natural width
+\debug\ifnum\eq@badness<\inf@bad\else\debugmsg{!?! Overfull: \the\wd\tw@ >\the\dim@b}\fi\gubed
+ \ifdim\dim@b<\wd\tw@ \dim@a\dim@b % shrunken line
+ \else \dim@a\wd\tw@ % OK to use natural width
+ \fi
+ \skip@a\lastskip \unskip \unpenalty
+ \ifdim\skip@a=\z@
+ \let\eq@ml@continue\relax % end the recursion
+ \else
+ % Sum repeated vskips if present
+ \def\@tempa{%
+ \ifdim \lastskip=\z@
+ \else \advance\skip@a\lastskip \unskip\unpenalty \@xp\@tempa
+ \fi
+ }%
+ \fi
+ \edef\eq@measurements{\eq@zek
+ \the\skip@a\space^^J% extra space to facilitate extracting only the
+ % dimen part later
+ \csname eq@i%
+ \ifnum\eq@curline<\parshape \number\eq@curline
+ \else\number\parshape
+ \fi
+ \endcsname,\the\dim@a x\the\ht\tw@+\the\dp\tw@ @\the\eq@badness\eq@kez
+ \eq@measurements
+ }%
+ \advance\eq@curline\m@ne
+ \ifnum\eq@curline=\z@ \let\eq@ml@continue\relax\fi
+}
+\def\eq@ml@vspace{%
+ \global\advance\eq@vspan\lastskip \unskip\unpenalty
+ \ifdim\lastskip=\z@ \else \@xp\eq@ml@vspace \fi
+}
+\def\eq@dense@enough{%
+ \ifnum\eq@lines<\thr@@ \@True
+ \else
+ \ifdim\eq@wdL >.7\eq@bodywidth \@False
+ \else \@xp\@xp\@xp\eq@dense@enough@a
+ \fi
+ \fi
+}
+\def\true@false@true{\fi\fi\iftrue\iffalse\iftrue}
+\def\false@false@false{\fi\fi\iffalse\iffalse\iffalse}
+\def\false@true@false{\fi\fi\iffalse\iftrue\iffalse}
+\def\eq@density@factor{.475}
+\def\eq@dense@enough@a{%
+ \@True \fi
+ \ifnum\eq@lines>\sixt@@n
+ \eq@dense@enough@b
+ \else
+ \dim@b\z@ \let\eq@zek\eq@delt \eq@measurements
+ \dim@c\eq@density@factor\eq@bodywidth \multiply\dim@c\eq@lines
+\debugwr{black \the\dim@b/\eq@density@factor total \the\dim@c}%
+ \ifdim\dim@b>\dim@c \true@false@true \else \false@false@false \fi
+ \fi
+}
+\def\eq@delt#1^^J#2,#3x#4+#5@#6\eq@kez{\advance\dim@b#3\relax}%
+\def\eq@dense@enough@b{%
+ \int@b\eq@bodywidth \divide\int@b\p@
+ \dim@b\eq@wdL \divide\dim@b\int@b
+ \dim@c\eq@lines\p@ \multiply\dim@c\f@ur
+ \int@b\eq@lines \multiply\int@b 9 \advance\int@b -10%
+ \divide\dim@c\int@b
+\debugwr{l/t \the\dim@b\space< \the\dim@c\space 4n/(9n-10)?}%
+ \ifdim\dim@b<\dim@c \true@true@true \else \false@true@false \fi
+}
+\def\adjust@parshape#1{%
+ \@xp\adj@psh@a \csname adjust@parshape@#1@\eq@layout\endcsname
+}
+\def\adj@psh@a#1{%
+ \ifx\@@undefined#1\relax
+\debugmsg{UNDEFINED: \string#1}%
+ \else \@xp#1\eq@parshape
+ \fi
+}
+\def\adj@psh@b#1{%
+\debugmsg{Adjusting parshape (\eqindent\if@eq@number\eqnumside\eqnumplace\fi @\eq@layout)}%
+ \edef\eq@parshape{\parshape \number\eq@lines}%
+ \let\eq@zek#1\eq@measurements \let\eq@zek\relax
+ \edef\eq@parshape{\eq@parshape\relax}%
+ \leftskip\z@skip
+}
+\def\adjust@parshape@C@L#1 #2 #3 #4 #5\relax{%
+ \dim@a\leftskip \advance\dim@a#4\relax
+ \edef\eq@parshape{#1 \the\leftskip\space#3 \the\dim@a\space#5\relax}%
+ \leftskip\z@skip
+}
+\def\adjust@parshape@C@D#1 #2 #3 #4 #5\relax{%
+ \dim@b\eq@linewidth \advance\dim@b-\eq@bodywidth
+\debugmsg{linewidth - wdT = \the\eq@linewidth\space- \the\eq@bodywidth\space=\the\dim@b}%
+ \advance\dim@b-\eqmargin
+\debugmsg{ - eqmargin (\the\eqmargin) = \the\dim@b}%
+ \advance\dim@b#4\relax
+\debugmsg{ + #4 = \the\dim@b}%
+ \dim@a\eqmargin
+ \adj@psh@b\C@Deq@zek
+}
+\def\C@Deq@zek#1^^J#2,#3x#4\eq@kez{%
+ \edef\eq@parshape{\eq@parshape\space \the\dim@a\space #3}%
+ \dim@a\dim@b % use dim@b for all remaining lines
+}
+\def\adjust@parshape@C@S#1 #2 #3 #4 #5\relax{%
+ \dim@b#4\relax % normally = \eqmargin
+ \dim@d\eq@linewidth \advance\dim@d-\eq@bodywidth
+ \ifdim\dim@d<2\dim@b
+ \dim@c\leftskip
+ \advance\dim@d-\dim@c
+ \else \advance\dim@d-2\dim@b
+ \dim@c\dim@b
+ \fi
+ \advance\dim@d-\dim@c \advance\dim@d\dim@b
+ \int@a\eq@lines \advance\int@a\m@ne
+ \ifnum\int@a>\@ne \divide\dim@d\int@a \fi
+\debugmsg{dim@d after dividing: \the\dim@d}%
+ \adj@psh@b\C@Seq@zek
+}
+\def\C@Seq@zek#1^^J#2,#3x#4+#5@#6\eq@kez{%
+ \edef\eq@parshape{\eq@parshape\space \the\dim@c\space #3}%
+ \advance\dim@c\dim@d
+}
+\def\adjust@parshape@CRM@D#1 #2 #3 #4 #5\relax{%
+ \dim@b\eq@linewidth \advance\dim@b-\eq@bodywidth
+\debugmsg{linewidth - wdT = \the\eq@linewidth\space- \the\eq@bodywidth\space=\the\dim@b}%
+ \advance\dim@b-\eqnumsep \advance\dim@b-\wd\EQ@numbox
+\debugmsg{ - numsep (\the\eqnumsep) - numwd (\the\wd\EQ@numbox) = \the\dim@b}%
+ \advance\dim@b#4\relax
+\debugmsg{ + #4 = \the\dim@b}%
+ \dim@a\eqmargin
+ \adj@psh@b\C@Deq@zek
+}
+\def\adjust@parshape@CRM@L{\adjust@parshape@C@L}
+\def\adjust@parshape@CRM@S#1 #2 #3 #4 #5\relax{%
+ \dim@b#4\relax % normally = \eqmargin
+ \dim@d\eq@linewidth \advance\dim@d-\eq@bodywidth
+ \advance\dim@d-\eqnumsep \advance\dim@d -\wd\EQ@numbox
+ \ifdim\dim@d<\dim@b \dim@c\leftskip
+ \else \dim@c\dim@b
+ \fi
+ \advance\dim@d-\dim@c \advance\dim@d\dim@b
+ \int@a\eq@lines \advance\int@a\m@ne
+ \ifnum\int@a>\@ne \divide\dim@d\int@a \fi
+\debugmsg{dim@d after dividing: \the\dim@d}%
+ \adj@psh@b\C@Seq@zek
+}
+\def\adjust@parshape@CRM@A#1\relax{\debugmsg{CRM@A: #1}}
+\def\adjust@parshape@CRM@l#1\relax{\debugmsg{CRM@l: #1}}
+\let\eq@parshape\@empty
+\def\eq@params{%
+ \baselineskip\eqlinespacing
+ \lineskip\eqlineskip \lineskiplimit\eqlineskiplimit
+ \clubpenalty\@M \widowpenalty\@M \interlinepenalty\eqinterlinepenalty
+ \linepenalty\eqlinepenalty \exhyphenpenalty9999
+ \rightskip\eqrightskip
+ \ifdim\hfuzz<\p@ \hfuzz\p@ \fi
+ \advance\rightskip \z@\@minus\hfuzz
+ \hfuzz\z@
+ \parfillskip\z@skip
+ \if\eq@centerlines
+ \advance\leftskip\rightskip \advance\leftskip -1\rightskip
+ \fi
+ \tolerance9999 \pretolerance\m@ne
+ \hbadness\tolerance
+}
+\def\eq@dump@box#1#2{%
+%\debug@box#1%
+\debugwr{Dumping with leftskip = \the\leftskip,
+ \ifx\@empty\eq@parshape \else eq\fi @parshape =}%
+\debugwr{\ifx\@empty\eq@parshape \@parshape \else\eq@parshape\fi}%
+ \noindent #1#2\setbox\f@ur\lastbox \setbox\tw@\lastbox
+ \if L\eq@layout \box\tw@ \else\unhbox\tw@\fi
+ \adjust@rel@penalty \unhbox\f@ur
+}
+\def\eq@C{%
+\debugmsg{\eq@sidespace\the\eq@sidespace, \eq@bodywidth\the\eq@bodywidth, \eq@linewidth\the\eq@linewidth}%
+ \eq@params
+ \leftskip\eq@sidespace
+ \adjust@parshape{C}%
+ \eq@parshape
+ \eq@topspace{\noindent}%
+ \ifx F\eq@frame
+ \else
+ \vbox to\eq@firstht{\hbox to\z@{\eq@addframe\hss}\vss}%
+ \fi
+ \eq@dump@box\unhbox\EQ@box \@@par
+}
+\def\eq@CRB{%
+ \if\eq@shiftnumber
+ \leftskip\eq@sidespace
+ \else
+ \ifnum\eq@lines=\@ne
+ \leftskip\eq@sidespace \advance\leftskip\eqnumsep
+ \ifdim\leftskip<3\wd\EQ@numbox
+ \multiply\leftskip\tw@ \divide\leftskip\thr@@
+ \ifdim\leftskip<2\eqnumsep
+ \leftskip\eq@sidespace \divide\leftskip\tw@
+ \fi
+\debugmsg{Shifting off-center: leftskip \the\leftskip}%
+ \else
+ \divide\leftskip\tw@
+\debugmsg{Plenty of room: leftskip \the\leftskip}%
+ \fi
+ \fi
+ \fi
+ \eq@CRBa
+}
+\def\eq@CRBa{%
+ \eq@topspace{\noindent}%
+ \ifx F\eq@frame
+ \else \vbox to\eq@firstht{\hbox to\z@{\eq@addframe\hss}\vss}%
+ \fi
+ \eq@params \eq@parshape
+ \add@grp@label
+ \eq@dump@box\unhbox\EQ@box \@@par
+ \penalty\@M
+ \if\eq@shiftnumber
+ \else
+ \lineskiplimit-\maxdimen \baselineskip\z@skip
+ \fi
+ \hbox to\eq@linewidth{\hfil\copy\EQ@numbox}%
+}
+\def\eq@CRM{%
+\debug
+ \dim@a\eq@bodywidth \advance\dim@a\eqnumsep \advance\dim@a\wd\EQ@numbox
+\debugmsg{\hsize\the\hsize, \eq@linewidth\the\eq@linewidth}%
+\debugmsg{T+S+N = \the\eq@bodywidth+\the\eqnumsep+\the\wd\EQ@numbox\space= \the\dim@a}%
+\debugmsg{sidespace: \the\eq@sidespace}%
+\gubed
+ \ifnum\eq@lines<\tw@
+ \ifdim\eq@bodywidth>\eq@freewidth \let\eq@shiftnumber\@True\fi
+ \fi
+ \debugmsg{\rightskip=\the\rightskip??}%
+ \parfillskip\z@skip
+ \if\eq@shiftnumber
+ \@xp\eq@CRB % shifted number
+ \else
+ \set@leftskip@for@centering
+ \@xp\eq@CRMa % nonshifted number
+ \fi
+}
+\def\set@leftskip@for@centering{%
+ \leftskip\eq@sidespace\relax
+ \ifdim\leftskip>\z@ % when not true?
+ % Skip quickly past the more complicated stuff if not needed (which
+ % is true most of the time)
+ \ifdim\leftskip<2\wd\EQ@numbox
+ \set@leftskip@fca
+ \else
+\debugwr{Plenty of room: leftskip \the\leftskip}%
+ \fi
+ \fi
+}
+\def\set@leftskip@fca{%
+ % Save free space = linewidth - bodywidth - numberwidth in \dim@a
+ \dim@a\eq@linewidth \advance\dim@a-\eq@bodywidth
+ \advance\dim@a-\wd\EQ@numbox
+ \ifdim\dim@a<\eqnumsep
+ \leftskip\z@skip
+\debugwr{Not enough room, wha happend?}%
+ \else
+ % Put two thirds of the free space on the side opposite to the number
+ \leftskip\dim@a \multiply\leftskip\tw@ \divide\leftskip\thr@@
+ \dim@b\dim@a \advance\dim@b-\leftskip
+ % But if that leaves less than eqnumsep for the other side, we need
+ % to do some more adjusting.
+ \ifdim\dim@b<\eqnumsep
+ \leftskip\dim@a \advance\leftskip-\eqnumsep
+\debugwr{Off-center: far side \the\leftskip, near side \the\eqnumsep
+(\string\eqnumsep)}%
+ \else
+\debugwr{Off-center: far side \the\leftskip\space (2/3 F), near side \the\dim@b\space (1/3 F)}%
+ \fi
+ \fi
+ \if L\eqnumside
+ % leftskip=.67F dim@a=.33F (e.g.)
+ % swap dim@a and leftskip, then add number width to leftskip
+ % and subtract it from rightskip
+ \dim@b\dim@a \advance\dim@b-\leftskip
+ \dim@a\leftskip \leftskip\dim@b
+ \advance\leftskip\wd\EQ@numbox
+ \edef\rightskip@shift{\advance\rightskip-\wd\EQ@numbox}%
+ \fi
+ \relax % watch it!
+}
+\let\rightskip@shift\@empty
+\def\eq@CRMa{%
+ \eq@topspace{\vskip\parskip}%
+ \vbox to\eq@firstht{%
+ \ifx F\eq@frame
+ \else
+ \moveright\leftskip\hbox to\z@{\eq@addframe\hss}%
+ \fi
+ \vss}%
+ \penalty\@M
+ \skip@c\eq@vspan
+ \advance\skip@c-\ht\EQ@numbox \advance\skip@c-\dp\EQ@numbox
+ \divide\skip@c\tw@
+ \parskip-\skip@c
+ \advance\parskip-\ht\EQ@numbox \advance\parskip-\dp\EQ@numbox
+ \advance\skip@c-\eq@firstht
+ \vskip\skip@c \nointerlineskip
+ \hbox to\hsize{\hfil\copy\EQ@numbox}%
+ \nobreak
+ \eq@params
+ \adjust@parshape{CRM}%
+ \eq@parshape
+ \nointerlineskip \noindent\add@grp@label \eq@dump@box\unhbox\EQ@box %
+% \tracingparagraphs=2 \@@par \tracingparagraphs=0%
+ \@@par
+}
+\def\eq@CLM{%
+ \ifnum\eq@lines=\@ne
+ \ifdim\eq@freewidth<\wd\EQ@box
+ \let\eq@shiftnumber\@True
+ \fi
+ \fi
+ \if\eq@shiftnumber
+ \eq@CLT
+ \else
+ \set@leftskip@for@centering
+ \rightskip\eqrightskip % see also \eq@params
+ \parfillskip\z@skip
+ \ifnum\eq@lines>\@ne \eq@topspace{\vskip\parskip}%
+ \else \vskip\abovedisplayskip
+ \fi
+ \vbox to\eq@firstht{%
+ \ifx F\eq@frame
+ \else
+ \moveright\leftskip\hbox to\z@{\eq@addframe\hss}%
+ \fi
+ \vss}%
+ \nointerlineskip
+ \penalty\@M
+ \vskip@for@number % also sets parskip for the following material
+ \copy\EQ@numbox
+ \nobreak
+ \eq@params
+ \rightskip@shift % compensate for left-hand number
+\debugmsg{\rightskip=\the\rightskip}%
+ \eq@parshape
+%\debug@box\EQ@box\tracingparagraphs\@ne\debug@para
+ \nointerlineskip
+ \noindent\add@grp@label \eq@dump@box\unhbox\EQ@box \@@par
+ \fi
+}
+\def\vskip@for@number{%
+ \skip@c\eq@vspan \advance\skip@c-\ht\EQ@numbox
+ \advance\skip@c-\dp\EQ@numbox \divide\skip@c\tw@
+ \parskip-\skip@c
+ \advance\parskip-\ht\EQ@numbox \advance\parskip-\dp\EQ@numbox
+ \advance\skip@c-\eq@firstht
+ \vskip\skip@c
+}
+\def\eq@CLT{%
+ \if\eq@shiftnumber
+ \if A\eq@layout \eq@reindent@A
+ \else \leftskip\eq@sidespace \divide\leftskip\tw@
+ \fi
+ \else
+ \leftskip\eq@sidespace \advance\leftskip\eqnumsep
+ \ifnum\eq@lines=\@ne
+ \ifdim\eq@sidespace<2\wd\EQ@numbox
+ \multiply\leftskip\tw@ \divide\leftskip\thr@@
+%\debugmsg{Shifting off-center: leftskip \the\leftskip}%
+ \else
+ \divide\leftskip\tw@
+%\debugmsg{Plenty of room: leftskip \the\leftskip}%
+ \fi
+ \else
+ \divide\leftskip\tw@
+ \fi
+ \fi
+ \eq@CLTa
+}
+\def\eq@CLTa{%
+ \vskip\abovedisplayskip
+ \copy\EQ@numbox \penalty\@M
+ \if\eq@shiftnumber \else \kern-\eq@firstht \nointerlineskip \fi
+ \noindent
+ \ifx F\eq@frame
+ \else \vbox to\eq@firstht{\hbox to\z@{\eq@addframe\hss}\vss}%
+ \fi
+ \eq@params \eq@parshape
+ \add@grp@label \eq@dump@box\unhbox\EQ@box\@@par
+}
+\def\eq@IRM{\leftskip\mathindent \eq@CRMa}
+\def\eq@IRB{\leftskip\mathindent \eq@CRBa}
+\def\eq@I{%
+ \leftskip\mathindent
+ \eq@params
+ \eq@topspace{\noindent}%
+ \ifx F\eq@frame
+ \else
+ \vbox to\eq@firstht{\hbox to\z@{\eq@addframe\hss}\vss}%
+ \fi
+ \eq@dump@box\unhbox\EQ@box\@@par
+}
+\newcommand\eqframe[2]{\framebox{\z@rule\@height#2\kern#1}}
+\def\eq@addframe{%
+ \hbox to\z@{\dim@a\fboxsep \advance\dim@a\fboxrule
+ \kern-\dim@a
+ \vbox to\z@{\kern-\dim@a
+ \hbox{\eqframe{\eq@bodywidth}{\eq@vspan}}%
+ \vss
+ }%
+ \hss
+ }%
+}
+\@saveprimitive\left\@@left
+\@saveprimitive\right\@@right
+\newcount\lr@level
+\def\eq@left{%
+ \@ifnext .{\eq@nullleft}{\begingroup \let\delimiter\eq@left@a}%
+}
+\def\eq@right{%
+ \@ifnext .{\eq@nullright}{\begingroup \let\delimiter\eq@right@a}%
+}
+\def\eq@left@a#1 #2{\endgroup\@@left\delimiter#1 \after@open}
+\def\eq@right@a#1 #2{\endgroup
+ \@@right\delimiter#1 \after@close\ss@scan{#1}%
+}
+\def\eq@nullleft#1{\@@left#1\after@open}
+\def\eq@nullright#1{\@@right#1\after@close}
+\def\delim@reset{%
+ \let\after@open\relax \let\after@close\relax
+ \let\left\@@left \let\right\@@right
+}
+\@ifundefined{bBigg@}{% not defined
+ \let\big@size\p@
+ \def\big{\bBigg@{8.5}}\def\Big{\bBigg@{11.5}}%
+ \def\bigg{\bBigg@{14.5}}\def\Bigg{\bBigg@{17.5}}%
+ \def\biggg{\bBigg@{20.5}}\def\Biggg{\bBigg@{23.5}}%
+}{}
+\def\bBigg@#1#2{%
+ {\delim@reset
+ \left#2%
+ \vrule\@height#1\big@size\@width-\nulldelimiterspace
+ \right.
+ }%
+}
+\def\bigl#1{\mathopen\big{#1}\after@open}
+\def\Bigl#1{\mathopen\Big{#1}\after@open}
+\def\biggl#1{\mathopen\bigg{#1}\after@open}
+\def\Biggl#1{\mathopen\Bigg{#1}\after@open}
+\def\bigggl#1{\mathopen\biggg{#1}\after@open}
+\def\Bigggl#1{\mathopen\Biggg{#1}\after@open}
+
+\def\bigr#1{\mathclose\big{#1}\after@close}
+\def\Bigr#1{\mathclose\Big{#1}\after@close}
+\def\biggr#1{\mathclose\bigg{#1}\after@close}
+\def\Biggr#1{\mathclose\Bigg{#1}\after@close}
+\def\bigggr#1{\mathclose\biggg{#1}\after@close}
+\def\Bigggr#1{\mathclose\Biggg{#1}\after@close}
+
+%% No change needed, I think. [mjd,1998/12/04]
+%%\def\bigm{\mathrel\big}
+%%\def\Bigm{\mathrel\Big}
+%%\def\biggm{\mathrel\bigg}
+%%\def\Biggm{\mathrel\Bigg}
+%%\def\bigggm{\mathrel\biggg}
+%%\def\Bigggm{\mathrel\Biggg}
+\let\m@@DeL\m@DeL \let\m@@DeR\m@DeR \let\m@@DeB\m@DeB
+\def\d@@DeL#1#2#3{%
+ \delimiter"4\@xp\delim@a\csname sd@#1#2#3\endcsname #1#2#3 \after@open
+}
+\def\d@@DeR#1#2#3{%
+ \delimiter"5\@xp\delim@a\csname sd@#1#2#3\endcsname #1#2#3 \after@close
+}
+\def\d@@DeB#1#2#3{%
+ \delimiter"0\@xp\delim@a\csname sd@#1#2#3\endcsname #1#2#3 \after@bidir
+}
+\let\after@bidir\@empty
+\mathchardef\zero@bop=888 \relax
+\mathchardef\bop@incr=4444 \relax
+\def\after@open{%
+ \global\advance\lr@level\@ne
+ \prebinoppenalty\bop@incr \multiply\prebinoppenalty\lr@level
+ \advance\prebinoppenalty\zero@bop
+ \ifnum\eqbreakdepth<\lr@level
+ \let\m@Bin\m@@Bin
+ \else
+ \eq@binoffset=\eqbinoffset
+ \advance\eq@binoffset\lr@level\eqdelimoffset plus1fill\relax
+ \def\dt@fill@cancel{\hskip\z@ minus1fill\relax}%
+ \fi
+}
+\def\after@close{%
+ \global\advance\lr@level\m@ne
+ \ifnum\lr@level<\z@ \eq@lrbad \global\lr@level\z@ \fi
+ \prebinoppenalty\bop@incr \multiply\prebinoppenalty\lr@level
+ \advance\prebinoppenalty\zero@bop
+ \ifnum\eqbreakdepth<\lr@level
+ \else \let\m@Bin\d@@Bin
+ \fi
+ \ifnum\lr@level<\@ne \eq@binoffset=\eqbinoffset\relax \fi
+}
+\def\eq@lrbad{%
+ \PackageError{breqn}{Too many closing delimiters?}{%
+ The unmatched delimiter might be further back.\MessageBreak
+ \@ehc
+ }%
+}
+\let\subsup@flag=\count@
+\def\ss@delim@a#1#2#3#4{\xdef\right@delim@code{\number"#2#3#4}}
+\def\ss@scan#1{%
+ \begingroup
+ \let\delim@a\ss@delim@a \@tempcnta#1\relax
+ \endgroup
+ \subsup@flag\@M \afterassignment\ss@scan@a \let\@let@token=}
+\def\ss@scan@a{%
+ \ifx\@let@token\sb \advance\subsup@flag\@ne\else
+ \ifx\@let@token\sp \advance\subsup@flag\tw@\else
+ \ss@finish
+ \expandafter\@firstoftwo % gobble \ss@scan@b
+ \fi\fi
+ \ss@scan@b\@let@token
+}
+\def\ss@scan@b#1#2{#1{%
+% hack! coff!
+ \let\m@Bin\m@@Bin \let\m@Rel\m@@Rel
+ #2}\afterassignment\ss@scan@a \let\@let@token=}%
+\def\ss@finish{%
+ \@@vadjust{\penalty\thr@@}%
+ \penalty\right@delim@code \penalty-\subsup@flag \keep@glue
+}
+\def\eq@lrunpack{\setbox\z@\lastbox
+ \unskip \nointerlineskip
+ \noindent\unhbox\z@ \unskip
+ \subsup@flag-\lastpenalty \unpenalty
+ \xdef\right@delim@code{\number\lastpenalty}%
+ \unpenalty
+ \ifnum\subsup@flag>\@M
+ \advance\subsup@flag-\@M
+ \setbox\tw@\lastbox
+ \else \setbox\tw@\box\voidb@x
+ \fi
+ \setbox\z@\lastbox
+ \ifvoid\tw@ \unhbox\z@
+ \else \lrss@reattach % uses \subsup@flag, box\z@, box\tw@
+ \fi
+ \penalty-\@Mi\z@rule\@@par
+ \setbox\z@\lastbox \unskip\unpenalty
+%%{\showboxbreadth\maxdimen\showboxdepth99\showlists}%
+}
+\dimendef\sub@depth=8 \dimendef\sup@base=6
+\dimendef\prelim@sub@depth=4 \dimendef\prelim@sup@base=2
+\def\sym@xheight{\fontdimen5\textfont\tw@}
+\def\sup@base@one{\fontdimen13\textfont\tw@}
+\def\sub@base@one{\fontdimen16\textfont\tw@}
+\def\sub@base@two{\fontdimen17\textfont\tw@}
+\def\sup@drop{\fontdimen18\scriptfont\tw@}
+\def\sub@drop{\fontdimen19\scriptfont\tw@}
+\providecommand{\mathaxis}{\fontdimen22\textfont\tw@}
+\def\lrss@reattach{%
+ \begingroup
+ % "The TeXbook" Appendix G step 18:
+ \prelim@sup@base\ht\z@ \advance\prelim@sup@base-\sup@drop
+ \prelim@sub@depth\dp\z@ \advance\prelim@sub@depth\sub@drop
+ \unhbox\z@
+ \ifcase\subsup@flag % case 0: this can't happen
+ \or \lr@subscript % case 1: subscript only
+ \or \lr@superscript % case 2: superscript only
+ \else \lr@subsup % case 3: sub and superscript both
+ \fi
+ \endgroup
+}
+\def\lr@subscript{%
+ \sub@depth\sub@base@one
+ \ifdim\prelim@sub@depth>\sub@depth \sub@depth\prelim@sub@depth\fi
+ \dim@a\ht\tw@ \advance\dim@a -.8\sym@xheight
+ \ifdim\dim@a>\sub@depth \sub@depth\dim@a \fi
+ \twang@adjust\sub@depth
+ \lower\sub@depth\box\tw@
+}
+\def\lr@superscript{%
+ \sup@base\sup@base@one
+ \ifdim\prelim@sup@base>\sup@base \sup@base\prelim@sup@base\fi
+ \dim@a\dp\tw@ \advance\dim@a -.25\sym@xheight
+ \ifdim\dim@a>\sup@base \sup@base\dim@a \fi
+ \twang@adjust\sup@base
+ \raise\sup@base\box\tw@
+}
+\def\lr@subsup{%
+ \sub@depth\sub@base@two
+ \ifdim\prelim@sub@depth>\sub@depth \sub@depth\prelim@sub@depth \fi
+ \twang@adjust\sub@depth
+ \lower\sub@depth\box\tw@
+}
+\def\twang@adjust#1{%
+ \begingroup
+ \@ifundefined{twang@\right@delim@code}{}{%
+ \dim@d=#1\advance\dim@d-\mathaxis
+ % put an upper limit on the adjustment
+ \ifdim\dim@d>1em \dim@d 1em \fi
+ \kern\csname twang@\right@delim@code\endcsname\dim@d
+ }%
+ \endgroup
+}
+\newcommand{\DeclareTwang}[2]{%
+ \ifcat.\@nx#1\begingroup
+ \lccode`\~=`#1\lowercase{\endgroup \DeclareTwang{~}}{#2}%
+ \else
+ \@xp\decl@twang#1?\@nil{#2}%
+ \fi
+}
+\def\decl@twang#1#2#3#4#5#6#7\@nil#8{%
+ \@namedef{twang@\number"#4#5#6}{#8}%
+}
+\DeclareTwang{\rangle}{-.4}
+\DeclareTwang{)}{-.33}
+\DeclareTwang{\rbrace}{-.25}
+\newenvironment{dseries}{\@eq@numbertrue \@optarg\@dseries{}}{}%
+\def\enddseries#1{\check@punct@or@qed}
+\def\@dseries[#1]{%
+ \def\display@setup{\displaystyle}%
+ \let\eq@centerlines\@True
+ \@dmath[#1]%
+ \mathsurround\z@\@@math \penalty\@Mi
+ \let\endmath\ends@math
+ \def\premath{%
+ \ifdim\lastskip<.49em \unskip\fi
+ \ifnum\lastpenalty<\@M\dquad\fi
+ }%
+ \def\postmath{\eq@addpunct \penalty-99 \dquad \@ignoretrue }%
+}
+\def\end@dseries{%
+ \unskip\unpenalty
+ \@@endmath \mathsurround\z@ \end@dmath
+}
+\newenvironment{dseries*}{\@eq@numberfalse \@optarg\@dseries{}}{}
+\@namedef{enddseries*}#1{\check@punct@or@qed}
+\@namedef{end@dseries*}{\end@dseries}
+\renewenvironment{math}{%
+ \leavevmode \premath
+ \ifmmode\@badmath\else\@@math\fi
+}{%
+ \ifmmode\@@endmath\else\@badmath\fi
+}
+\def\ends@math#1{\check@punct@or@qed}
+\def\end@math{%
+ \ifmmode\@@endmath\else\@badmath\fi
+ \postmath
+}
+\newcommand\dquad{\hskip1em minus.25em }
+\newcommand\premath{}\newcommand\postmath{}
+\let\eq@group\@False
+\global\let\GRP@top\@True
+\newenvironment{dgroup}{%
+ \@eq@numbertrue \@optarg\@dgroup{}%
+}{%
+ \end@dgroup{\grp@resetnumber}%
+}
+\newtoks\GRP@queue
+\newenvironment{dgroup*}{%
+ \@eq@numberfalse \@optarg\@dgroup{}%
+}{
+ \end@dgroup{}%
+}
+\def\@dgroup[#1]{%
+ \let\eq@group\@True \global\let\GRP@top\@True
+ \global\GRP@queue\@emptytoks \global\setbox\GRP@box\box\voidb@x
+ \global\let\GRP@label\@empty
+ \gdef\GRP@info{\grp@wdL\z@ \grp@bodywidth\z@ \grp@linewidth\z@}%
+ \eq@prelim
+ \setkeys{breqn}{#1}%
+ \if@eq@number \grp@setnumber \fi
+}
+\def\end@dgroup#1{%
+ \EQ@displayinfo \grp@finish
+ #1% \grp@resetnumber
+}
+\@ifundefined{c@parentequation}{\newcounter{parentequation}}{}
+\global\let\GRP@label\@empty
+\def\add@grp@label{%
+ \ifx\@empty\GRP@label
+ \else \GRP@label \global\let\GRP@label\@empty
+ \fi
+}
+\def\grp@setnumber{%
+ \global\let\GRP@label\next@label \global\let\next@label\@empty
+ \eq@setnumber
+ \protected@edef\theparentequation{\theequation}%
+ \setcounter{parentequation}{\value{equation}}%
+ \setcounter{equation}{0}%
+ \def\theequation{\theparentequation\alph{equation}}%
+}
+\def\grp@resetnumber{%
+ \setcounter{equation}{\value{parentequation}}%
+}
+\gdef\GRP@info{\grp@wdL\z@ \grp@bodywidth\z@ \grp@linewidth\z@}
+\newbox\GRP@box
+\def\grp@push{%
+ \global\GRP@queue\@xp\@xp\@xp{\@xp\the\@xp\GRP@queue
+ \@xp\eq@zek\@xp{\EQ@trial}%
+ }%
+ \global\setbox\GRP@box\vbox{%
+ \hbox{\box\EQ@box\box\EQ@copy\penalty\@ne\copy\EQ@numbox}%
+ \unvbox\GRP@box
+ }%
+ \EQ@trial \GRP@info
+ \xdef\GRP@info{%
+ \grp@wdL=\ifdim\eq@wdL>\grp@wdL \the\eq@wdL \else \the\grp@wdL \fi
+ \grp@bodywidth=\ifdim\eq@bodywidth>\grp@bodywidth \the\eq@bodywidth \else \the\grp@bodywidth \fi
+ \grp@linewidth=%
+ \ifdim\eq@linewidth>\grp@linewidth \the\eq@linewidth
+ \else \the\grp@linewidth
+ \fi
+ \relax
+ }%
+}
+\def\grp@finish{%
+\debug@box\GRP@box
+%\debugmsg{\GRP@queue: \the\GRP@queue}%
+ \GRP@info
+ \grp@wdL\z@ \grp@bodywidth\z@
+ \let\eq@zek\eqgrp@prelim
+ \the\GRP@queue
+ \advance\grp@bodywidth\grp@wdL
+\debugmsg{grp@wdL \the\grp@wdL, grp@bodywidth \the\grp@bodywidth}%
+ \let\eq@zek\eqgrpeq@zek
+ \the\GRP@queue
+ \let\eq@zek\relax
+ \eq@botspace
+}
+\def\eqgrp@prelim#1{%
+ #1%
+ \ifdim\eq@wdL>\grp@wdL \grp@wdL\eq@wdL \fi
+ \dim@a\eq@bodywidth \advance\dim@a-\eq@wdL
+ \ifdim\dim@a>\grp@bodywidth \grp@bodywidth\dim@a \fi
+}
+\def\eqgrpeq@zek#1{%
+ \global\setbox\GRP@box\vbox{%
+ \unvbox\GRP@box
+ \setbox\z@\lastbox
+ \setbox\tw@\hbox{\unhbox\z@
+ \ifnum\lastpenalty=\@ne
+ \else
+ \global\setbox\EQ@numbox\lastbox
+ \fi
+ \unpenalty
+ \global\setbox\EQ@copy\lastbox
+ \global\setbox\EQ@box\lastbox
+ }%
+ }%
+ \begingroup \let\eq@botspace\relax
+ #1%
+ \eq@finish
+ \endgroup
+}
+\newskip\darraycolsep \darraycolsep 20pt plus1fil minus12pt
+\newcount\cur@row \newcount\cur@col
+\def\@tempa#1#2#3{%
+ \cur@col#1 \hfil
+ \setbox\z@\hbox{$\displaystyle####\m@th$}\@nx\col@box
+ \tabskip\z@skip
+ &\cur@col#2 \hfil
+ \setbox\z@\hbox{$\displaystyle\mathord{}####\mathord{}\m@th$}\@nx\col@box
+ \hfil
+ &\cur@col#3 \setbox\z@\hbox{$\displaystyle####\m@th$}\@nx\col@box
+ \hfil\tabskip\darraycolsep
+}
+\xdef\darray@preamble{%
+ \@tempa 123&\@tempa 456&\@tempa 789%
+ &\@tempa{10}{11}{12}&\@tempa{13}{14}{15}&\@tempa{16}{17}{18}%
+ \cr
+}
+\@ifundefined{Mathstrut@}{\let\Mathstrut@\strut}{}
+\def\darray@cr{\Mathstrut@\cr}
+\def\col@box{%
+%\debugmsg{Col \number\cur@row,\number\cur@col: \the\wd\z@\space x \the\ht\z@+\the\dp\z@}%
+ \unhbox\z@
+}
+\newenvironment{darray}{\@optarg\@darray{}}{}
+\def\@darray[#1]{%
+ \if\eq@group\else\eq@prelim\fi
+ \global\let\@preamble\@empty
+ \setkeys{breqn}{#1}%
+ \the\eqstyle \eq@setnumber
+ \ifx\@preamble\@empty \global\let\@preamble\darray@preamble \fi
+ \check@mathfonts
+ % \let\check@mathfonts\relax % tempting, but too risky
+ \@xp\let\csname\string\ \endcsname\darray@cr
+ \setbox\z@\vbox\bgroup
+ \everycr{\noalign{\global\advance\cur@row\@ne}}%
+ \tabskip\z@skip \cur@col\z@
+ \global\cur@row\z@
+ \penalty\@ne % flag for \dar@repack
+ \halign\@xp\bgroup\@preamble
+}
+\def\enddarray#1{\check@punct@or@qed}
+\def\end@darray{%
+ \ifvmode\else \eq@addpunct \Mathstrut@\fi\crcr \egroup
+ \dar@capture
+ \egroup
+}
+\def\dar@capture{%
+%% \showboxbreadth\maxdimen\showboxdepth99\showlists
+ \eq@wdL\z@ \eq@wdRmax\z@ \eq@sidespace\maxdimen
+ \dar@repack
+}
+\def\dar@repack{%
+ \unpenalty
+ \setbox\tw@\lastbox
+%\batchmode{\showboxbreadth\maxdimen\showboxdepth99\showbox\tw@}\errorstopmode
+ \global\setbox\EQ@box\hbox{%
+ \hbox{\unhcopy\tw@\unskip}\penalty-\@M \unhbox\EQ@box}%
+ \global\setbox\EQ@copy\hbox{%
+ \hbox{\unhbox\tw@\unskip}\penalty-\@M \unhbox\EQ@copy}%
+ \unskip
+ \ifcase\lastpenalty \else\@xp\@gobble\fi
+ \dar@repack
+}
+\newskip\conditionsep \conditionsep=10pt minus5pt%
+\newcommand{\conditionpunct}{,}
+\let\cond@gobble\@firstofone
+\newcommand\condition{%
+ \begingroup\@tempswatrue
+ \@ifstar{\@tempswafalse \condition@a}\condition@a
+}
+\newcommand\condition@a[2][\conditionpunct]{%
+ \hbox{#1}\hskip\conditionsep
+ \if@tempswa \@xp\hbox \else \@xp\condition@b\fi
+ {#2}%
+ \endgroup
+ \let\cond@gobble\@gobble
+}
+\newcommand\condition@b[1]{%
+ \cond@gobble{\hskip\conditionsep}%
+ \textmath@setup #1%
+}
+\newenvironment{dsuspend}{%
+ \global\setbox\EQ@box\vbox\bgroup \@parboxrestore
+ \parshape 1 \displayindent \displaywidth\relax
+ \hsize=\columnwidth \noindent\ignorespaces
+}{%
+ \par\egroup
+ \global\setbox\GRP@box\vbox{%
+ \vbox{\copy\EQ@box\vtop{\unvbox\EQ@box}}%
+ \unvbox\GRP@box
+ }%
+ \global\GRP@queue\@xp{\the\GRP@queue
+ \eq@zek{\gdef\EQ@trial{}}%
+ }%
+}
+\newcommand\breqn@intertext[1]{\dsuspend#1\enddsuspend}
+\renewcommand{\*}{%
+ \if@display
+ \setbox\z@\hbox{\mathsurround\z@$\mkern\eq@binoffset$}%
+ \discretionary{}{%
+ \kern\the\wd\z@ \textchar\discretionarytimes
+ }{}%
+ \thinspace
+ \else
+ \discretionary{\thinspace\textchar\discretionarytimes}{}{}%
+ \fi
+}
+\newcommand{\discretionarytimes}{\times}
+\def\nref#1{\@xp\@nref\csname r@#1\endcsname}
+\def\@nref#1#2{\ifx\relax#1??\else \@xp\@firstoftwo#1\fi}
+\breqnpopcats
diff --git a/Master/texmf-dist/tex/latex/breqn/cmbase.sym b/Master/texmf-dist/tex/latex/breqn/cmbase.sym
new file mode 100644
index 00000000000..2c9cd9af32a
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/breqn/cmbase.sym
@@ -0,0 +1,336 @@
+%% Created by stripbwr [2001-09-08T01:33:16]
+%% From /home/breqn/cmbase.bwr
+\ProvidesSymbols{cmbase}[2001/09/07 v0.91]
+\@xp\xdef\csname mg@OT1\endcsname{\hexnumber@\symoperators}
+\@xp\xdef\csname mg@OML\endcsname{\hexnumber@\symletters}
+\@xp\xdef\csname mg@OMS\endcsname{\hexnumber@\symsymbols}
+\@xp\xdef\csname mg@OMX\endcsname{\hexnumber@\symlargesymbols}
+\gdef\mg@bin{\mg@OMS}
+\gdef\mg@del{\mg@OMX}
+\xdef\mg@digit{\@xp\@nx\csname mg@OT1\endcsname}
+\gdef\mg@latin{\mg@OML}
+\global\let\mg@Latin\mg@latin
+\global\let\mg@greek\mg@latin
+\global\let\mg@Greek\mg@digit
+\global\let\mg@rel\mg@bin
+\global\let\mg@ord\mg@bin
+\global\let\mg@cop\mg@del
+\DeclareFlexSymbol{!} {Pun}{OT1}{21}
+\DeclareFlexSymbol{+} {Bin}{OT1}{2B}
+\DeclareFlexSymbol{:} {Rel}{OT1}{3A}
+\DeclareFlexSymbol{\colon}{Pun}{OT1}{3A}
+\DeclareFlexSymbol{;} {Pun}{OT1}{3B}
+\DeclareFlexSymbol{=} {Rel}{OT1}{3D}
+\DeclareFlexSymbol{?} {Pun}{OT1}{3F}
+\DeclareFlexSymbol{\Gamma} {Var}{Greek}{00}
+\DeclareFlexSymbol{\Delta} {Var}{Greek}{01}
+\DeclareFlexSymbol{\Theta} {Var}{Greek}{02}
+\DeclareFlexSymbol{\Lambda} {Var}{Greek}{03}
+\DeclareFlexSymbol{\Xi} {Var}{Greek}{04}
+\DeclareFlexSymbol{\Pi} {Var}{Greek}{05}
+\DeclareFlexSymbol{\Sigma} {Var}{Greek}{06}
+\DeclareFlexSymbol{\Upsilon}{Var}{Greek}{07}
+\DeclareFlexSymbol{\Phi} {Var}{Greek}{08}
+\DeclareFlexSymbol{\Psi} {Var}{Greek}{09}
+\DeclareFlexSymbol{\Omega} {Var}{Greek}{0A}
+\DeclareFlexSymbol{0}{Var}{digit}{30}
+\DeclareFlexSymbol{1}{Var}{digit}{31}
+\DeclareFlexSymbol{2}{Var}{digit}{32}
+\DeclareFlexSymbol{3}{Var}{digit}{33}
+\DeclareFlexSymbol{4}{Var}{digit}{34}
+\DeclareFlexSymbol{5}{Var}{digit}{35}
+\DeclareFlexSymbol{6}{Var}{digit}{36}
+\DeclareFlexSymbol{7}{Var}{digit}{37}
+\DeclareFlexSymbol{8}{Var}{digit}{38}
+\DeclareFlexSymbol{9}{Var}{digit}{39}
+\DeclareFlexSymbol{,}{Pun}{OML}{3B}
+\DeclareFlexSymbol{.}{Ord}{OML}{3A}
+\DeclareFlexSymbol{/}{Ord}{OML}{3D}
+\DeclareFlexSymbol{<}{Rel}{OML}{3C}
+\DeclareFlexSymbol{>}{Rel}{OML}{3E}
+\DeclareFlexSymbol{\alpha}{Var}{greek}{0B}
+\DeclareFlexSymbol{\beta}{Var}{greek}{0C}
+\DeclareFlexSymbol{\gamma}{Var}{greek}{0D}
+\DeclareFlexSymbol{\delta}{Var}{greek}{0E}
+\DeclareFlexSymbol{\epsilon}{Var}{greek}{0F}
+\DeclareFlexSymbol{\zeta}{Var}{greek}{10}
+\DeclareFlexSymbol{\eta}{Var}{greek}{11}
+\DeclareFlexSymbol{\theta}{Var}{greek}{12}
+\DeclareFlexSymbol{\iota}{Var}{greek}{13}
+\DeclareFlexSymbol{\kappa}{Var}{greek}{14}
+\DeclareFlexSymbol{\lambda}{Var}{greek}{15}
+\DeclareFlexSymbol{\mu}{Var}{greek}{16}
+\DeclareFlexSymbol{\nu}{Var}{greek}{17}
+\DeclareFlexSymbol{\xi}{Var}{greek}{18}
+\DeclareFlexSymbol{\pi}{Var}{greek}{19}
+\DeclareFlexSymbol{\rho}{Var}{greek}{1A}
+\DeclareFlexSymbol{\sigma}{Var}{greek}{1B}
+\DeclareFlexSymbol{\tau}{Var}{greek}{1C}
+\DeclareFlexSymbol{\upsilon}{Var}{greek}{1D}
+\DeclareFlexSymbol{\phi}{Var}{greek}{1E}
+\DeclareFlexSymbol{\chi}{Var}{greek}{1F}
+\DeclareFlexSymbol{\psi}{Var}{greek}{20}
+\DeclareFlexSymbol{\omega}{Var}{greek}{21}
+\DeclareFlexSymbol{\varepsilon}{Var}{greek}{22}
+\DeclareFlexSymbol{\vartheta}{Var}{greek}{23}
+\DeclareFlexSymbol{\varpi}{Var}{greek}{24}
+\DeclareFlexSymbol{\varrho}{Var}{greek}{25}
+\DeclareFlexSymbol{\varsigma}{Var}{greek}{26}
+\DeclareFlexSymbol{\varphi}{Var}{greek}{27}
+\DeclareFlexSymbol{\imath}{Var}{OML}{7B}
+\DeclareFlexSymbol{\jmath}{Var}{OML}{7C}
+\DeclareFlexSymbol{\ell}{Ord}{OML}{60}
+\DeclareFlexSymbol{\wp}{Ord}{OML}{7D}
+\DeclareFlexSymbol{\partial}{Ord}{OML}{40}
+\DeclareFlexSymbol{\flat}{Ord}{OML}{5B}
+\DeclareFlexSymbol{\natural}{Ord}{OML}{5C}
+\DeclareFlexSymbol{\sharp}{Ord}{OML}{5D}
+\DeclareFlexSymbol{\triangleleft}{Bin}{OML}{2F}
+\DeclareFlexSymbol{\triangleright}{Bin}{OML}{2E}
+\DeclareFlexSymbol{\star}{Bin}{OML}{3F}
+\DeclareFlexSymbol{\smile}{Rel}{OML}{5E}
+\DeclareFlexSymbol{\frown}{Rel}{OML}{5F}
+\DeclareFlexSymbol{\leftharpoonup}{Rel}{OML}{28}
+\DeclareFlexSymbol{\leftharpoondown}{Rel}{OML}{29}
+\DeclareFlexSymbol{\rightharpoonup}{Rel}{OML}{2A}
+\DeclareFlexSymbol{\rightharpoondown}{Rel}{OML}{2B}
+\DeclareFlexSymbol{a}{Var}{latin}{61}
+\DeclareFlexSymbol{b}{Var}{latin}{62}
+\DeclareFlexSymbol{c}{Var}{latin}{63}
+\DeclareFlexSymbol{d}{Var}{latin}{64}
+\DeclareFlexSymbol{e}{Var}{latin}{65}
+\DeclareFlexSymbol{f}{Var}{latin}{66}
+\DeclareFlexSymbol{g}{Var}{latin}{67}
+\DeclareFlexSymbol{h}{Var}{latin}{68}
+\DeclareFlexSymbol{i}{Var}{latin}{69}
+\DeclareFlexSymbol{j}{Var}{latin}{6A}
+\DeclareFlexSymbol{k}{Var}{latin}{6B}
+\DeclareFlexSymbol{l}{Var}{latin}{6C}
+\DeclareFlexSymbol{m}{Var}{latin}{6D}
+\DeclareFlexSymbol{n}{Var}{latin}{6E}
+\DeclareFlexSymbol{o}{Var}{latin}{6F}
+\DeclareFlexSymbol{p}{Var}{latin}{70}
+\DeclareFlexSymbol{q}{Var}{latin}{71}
+\DeclareFlexSymbol{r}{Var}{latin}{72}
+\DeclareFlexSymbol{s}{Var}{latin}{73}
+\DeclareFlexSymbol{t}{Var}{latin}{74}
+\DeclareFlexSymbol{u}{Var}{latin}{75}
+\DeclareFlexSymbol{v}{Var}{latin}{76}
+\DeclareFlexSymbol{w}{Var}{latin}{77}
+\DeclareFlexSymbol{x}{Var}{latin}{78}
+\DeclareFlexSymbol{y}{Var}{latin}{79}
+\DeclareFlexSymbol{z}{Var}{latin}{7A}
+\DeclareFlexSymbol{A}{Var}{Latin}{41}
+\DeclareFlexSymbol{B}{Var}{Latin}{42}
+\DeclareFlexSymbol{C}{Var}{Latin}{43}
+\DeclareFlexSymbol{D}{Var}{Latin}{44}
+\DeclareFlexSymbol{E}{Var}{Latin}{45}
+\DeclareFlexSymbol{F}{Var}{Latin}{46}
+\DeclareFlexSymbol{G}{Var}{Latin}{47}
+\DeclareFlexSymbol{H}{Var}{Latin}{48}
+\DeclareFlexSymbol{I}{Var}{Latin}{49}
+\DeclareFlexSymbol{J}{Var}{Latin}{4A}
+\DeclareFlexSymbol{K}{Var}{Latin}{4B}
+\DeclareFlexSymbol{L}{Var}{Latin}{4C}
+\DeclareFlexSymbol{M}{Var}{Latin}{4D}
+\DeclareFlexSymbol{N}{Var}{Latin}{4E}
+\DeclareFlexSymbol{O}{Var}{Latin}{4F}
+\DeclareFlexSymbol{P}{Var}{Latin}{50}
+\DeclareFlexSymbol{Q}{Var}{Latin}{51}
+\DeclareFlexSymbol{R}{Var}{Latin}{52}
+\DeclareFlexSymbol{S}{Var}{Latin}{53}
+\DeclareFlexSymbol{T}{Var}{Latin}{54}
+\DeclareFlexSymbol{U}{Var}{Latin}{55}
+\DeclareFlexSymbol{V}{Var}{Latin}{56}
+\DeclareFlexSymbol{W}{Var}{Latin}{57}
+\DeclareFlexSymbol{X}{Var}{Latin}{58}
+\DeclareFlexSymbol{Y}{Var}{Latin}{59}
+\DeclareFlexSymbol{Z}{Var}{Latin}{5A}
+\DeclareFlexSymbol{\ldotPun}{Pun}{OML}{3A}
+\def\ldotp{\ldotPun}
+\DeclareFlexSymbol{\lhookRel}{Rel}{OML}{2C}
+\DeclareFlexSymbol{\rhookRel}{Rel}{OML}{2D}
+\DeclareFlexSymbol{*}{Bin}{bin}{03} % \ast
+\DeclareFlexSymbol{-}{Bin}{bin}{00}
+\DeclareFlexSymbol{|}{Ord}{OMS}{6A}
+\DeclareFlexSymbol{\aleph}{Ord}{ord}{40}
+\DeclareFlexSymbol{\Re}{Ord}{ord}{3C}
+\DeclareFlexSymbol{\Im}{Ord}{ord}{3D}
+\DeclareFlexSymbol{\infty}{Ord}{ord}{31}
+\DeclareFlexSymbol{\prime}{Ord}{ord}{30}
+\DeclareFlexSymbol{\emptyset}{Ord}{ord}{3B}
+\DeclareFlexSymbol{\nabla}{Ord}{ord}{72}
+\DeclareFlexSymbol{\top}{Ord}{ord}{3E}
+\DeclareFlexSymbol{\bot}{Ord}{ord}{3F}
+\DeclareFlexSymbol{\triangle}{Ord}{ord}{34}
+\DeclareFlexSymbol{\forall}{Ord}{ord}{38}
+\DeclareFlexSymbol{\exists}{Ord}{ord}{39}
+\DeclareFlexSymbol{\neg}{Ord}{ord}{3A}
+\DeclareFlexSymbol{\clubsuit}{Ord}{ord}{7C}
+\DeclareFlexSymbol{\diamondsuit}{Ord}{ord}{7D}
+\DeclareFlexSymbol{\heartsuit}{Ord}{ord}{7E}
+\DeclareFlexSymbol{\spadesuit}{Ord}{ord}{7F}
+\DeclareFlexSymbol{\smallint}{COs}{OMS}{73}
+\DeclareFlexSymbol{\bigtriangleup}{Bin}{bin}{34}
+\DeclareFlexSymbol{\bigtriangledown}{Bin}{bin}{35}
+\DeclareFlexSymbol{\wedge}{Bin}{bin}{5E}
+\DeclareFlexSymbol{\vee}{Bin}{bin}{5F}
+\DeclareFlexSymbol{\cap}{Bin}{bin}{5C}
+\DeclareFlexSymbol{\cup}{Bin}{bin}{5B}
+\DeclareFlexSymbol{\ddagger}{Bin}{bin}{7A}
+\DeclareFlexSymbol{\dagger}{Bin}{bin}{79}
+\DeclareFlexSymbol{\sqcap}{Bin}{bin}{75}
+\DeclareFlexSymbol{\sqcup}{Bin}{bin}{74}
+\DeclareFlexSymbol{\uplus}{Bin}{bin}{5D}
+\DeclareFlexSymbol{\amalg}{Bin}{bin}{71}
+\DeclareFlexSymbol{\diamond}{Bin}{bin}{05}
+\DeclareFlexSymbol{\bullet}{Bin}{bin}{0F}
+\DeclareFlexSymbol{\wr}{Bin}{bin}{6F}
+\DeclareFlexSymbol{\div}{Bin}{bin}{04}
+\DeclareFlexSymbol{\odot}{Bin}{bin}{0C}
+\DeclareFlexSymbol{\oslash}{Bin}{bin}{0B}
+\DeclareFlexSymbol{\otimes}{Bin}{bin}{0A}
+\DeclareFlexSymbol{\ominus}{Bin}{bin}{09}
+\DeclareFlexSymbol{\oplus}{Bin}{bin}{08}
+\DeclareFlexSymbol{\mp}{Bin}{bin}{07}
+\DeclareFlexSymbol{\pm}{Bin}{bin}{06}
+\DeclareFlexSymbol{\circ}{Bin}{bin}{0E}
+\DeclareFlexSymbol{\bigcirc}{Bin}{bin}{0D}
+\DeclareFlexSymbol{\setminus}{Bin}{bin}{6E}
+\DeclareFlexSymbol{\cdot}{Bin}{bin}{01}
+\DeclareFlexSymbol{\ast}{Bin}{bin}{03}
+\DeclareFlexSymbol{\times}{Bin}{bin}{02}
+\DeclareFlexSymbol{\propto}{Rel}{rel}{2F}
+\DeclareFlexSymbol{\sqsubseteq}{Rel}{rel}{76}
+\DeclareFlexSymbol{\sqsupseteq}{Rel}{rel}{77}
+\DeclareFlexSymbol{\parallel}{Rel}{rel}{6B}
+\DeclareFlexSymbol{\mid}{Rel}{rel}{6A}
+\DeclareFlexSymbol{\dashv}{Rel}{rel}{61}
+\DeclareFlexSymbol{\vdash}{Rel}{rel}{60}
+\DeclareFlexSymbol{\nearrow}{Rel}{rel}{25}
+\DeclareFlexSymbol{\searrow}{Rel}{rel}{26}
+\DeclareFlexSymbol{\nwarrow}{Rel}{rel}{2D}
+\DeclareFlexSymbol{\swarrow}{Rel}{rel}{2E}
+\DeclareFlexSymbol{\Leftrightarrow}{Rel}{rel}{2C}
+\DeclareFlexSymbol{\Leftarrow}{Rel}{rel}{28}
+\DeclareFlexSymbol{\Rightarrow}{Rel}{rel}{29}
+\DeclareFlexSymbol{\leq}{Rel}{rel}{14}
+\DeclareFlexSymbol{\geq}{Rel}{rel}{15}
+\DeclareFlexSymbol{\succ}{Rel}{rel}{1F}
+\DeclareFlexSymbol{\prec}{Rel}{rel}{1E}
+\DeclareFlexSymbol{\approx}{Rel}{rel}{19}
+\DeclareFlexSymbol{\succeq}{Rel}{rel}{17}
+\DeclareFlexSymbol{\preceq}{Rel}{rel}{16}
+\DeclareFlexSymbol{\supset}{Rel}{rel}{1B}
+\DeclareFlexSymbol{\subset}{Rel}{rel}{1A}
+\DeclareFlexSymbol{\supseteq}{Rel}{rel}{13}
+\DeclareFlexSymbol{\subseteq}{Rel}{rel}{12}
+\DeclareFlexSymbol{\in}{Rel}{rel}{32}
+\DeclareFlexSymbol{\ni}{Rel}{rel}{33}
+\DeclareFlexSymbol{\gg}{Rel}{rel}{1D}
+\DeclareFlexSymbol{\ll}{Rel}{rel}{1C}
+\DeclareFlexSymbol{\leftrightarrow}{Rel}{rel}{24}
+\DeclareFlexSymbol{\leftarrow}{Rel}{rel}{20}
+\DeclareFlexSymbol{\rightarrow}{Rel}{rel}{21}
+\DeclareFlexSymbol{\sim}{Rel}{rel}{18}
+\DeclareFlexSymbol{\simeq}{Rel}{rel}{27}
+\DeclareFlexSymbol{\perp}{Rel}{rel}{3F}
+\DeclareFlexSymbol{\equiv}{Rel}{rel}{11}
+\DeclareFlexSymbol{\asymp}{Rel}{rel}{10}
+\DeclareFlexSymbol{\notRel}{Rel}{rel}{36}
+\DeclareFlexSymbol{\mapstoOrd}{Ord}{OMS}{37}
+\DeclareFlexSymbol{\cdotOrd}{Ord}{OMS}{01}
+\def\cdotp{\mathpunct{\cdotOrd}}
+\DeclareFlexSymbol{\coprod}{COs}{cop}{60}
+\DeclareFlexSymbol{\bigvee}{COs}{cop}{57}
+\DeclareFlexSymbol{\bigwedge}{COs}{cop}{56}
+\DeclareFlexSymbol{\biguplus}{COs}{cop}{55}
+\DeclareFlexSymbol{\bigcap}{COs}{cop}{54}
+\DeclareFlexSymbol{\bigcup}{COs}{cop}{53}
+\DeclareFlexSymbol{\int}{COi}{cop}{52}
+\DeclareFlexSymbol{\prod}{COs}{cop}{51}
+\DeclareFlexSymbol{\sum}{COs}{cop}{50}
+\DeclareFlexSymbol{\bigotimes}{COs}{cop}{4E}
+\DeclareFlexSymbol{\bigoplus}{COs}{cop}{4C}
+\DeclareFlexSymbol{\bigodot}{COs}{cop}{4A}
+\DeclareFlexSymbol{\oint}{COi}{cop}{48}
+\DeclareFlexSymbol{\bigsqcup}{COs}{cop}{46}
+\DeclareFlexSymbol{\rangle}{DeR}{del}{0B}
+\DeclareFlexSymbol{\langle}{DeL}{del}{0A}
+\DeclareFlexSymbol{\rbrace}{DeR}{del}{09}
+\DeclareFlexSymbol{\lbrace}{DeL}{del}{08}
+\DeclareFlexSymbol{\rceil}{DeR}{del}{07}
+\DeclareFlexSymbol{\lceil}{DeL}{del}{06}
+\DeclareFlexSymbol{\rfloor}{DeR}{del}{05}
+\DeclareFlexSymbol{\lfloor}{DeL}{del}{04}
+\DeclareFlexSymbol{(}{DeL}{del}{00}
+\DeclareFlexSymbol{)}{DeR}{del}{01}
+\DeclareFlexSymbol{[}{DeL}{del}{02}
+\DeclareFlexSymbol{]}{DeR}{del}{03}
+\DeclareFlexSymbol{\lVert}{DeL}{del}{0D}
+\DeclareFlexSymbol{\rVert}{DeR}{del}{0D}
+\DeclareFlexSymbol{\lvert}{DeL}{del}{0C}
+\DeclareFlexSymbol{\rvert}{DeR}{del}{0C}
+\DeclareFlexSymbol{\Vert}{DeB}{del}{0D}
+\DeclareFlexSymbol{\vert}{DeB}{del}{0C}
+\DeclareFlexSymbol{|}{DeB}{del}{0C}
+\DeclareFlexSymbol{/}{DeB}{del}{0E}
+\DeclareFlexSymbol{\lmoustache}{DeL}{del}{40}
+\DeclareFlexSymbol{\rmoustache}{DeR}{del}{41}
+\DeclareFlexSymbol{\lgroup}{DeL}{del}{3A}
+\DeclareFlexSymbol{\rgroup}{DeR}{del}{3B}
+\DeclareFlexSymbol{\bracevert}{DeB}{del}{3E}
+\DeclareFlexSymbol{\arrowvert}{DeB}{del}{3C}
+\DeclareFlexSymbol{\Arrowvert}{DeB}{del}{3D}
+\DeclareFlexSymbol{\uparrow}{DeA}{del}{78}
+\DeclareFlexSymbol{\downarrow}{DeA}{del}{79}
+\DeclareFlexSymbol{\updownarrow}{DeA}{del}{3F}
+\DeclareFlexSymbol{\Uparrow}{DeA}{del}{7E}
+\DeclareFlexSymbol{\Downarrow}{DeA}{del}{7F}
+\DeclareFlexSymbol{\Updownarrow}{DeA}{del}{77}
+\DeclareFlexSymbol{\backslash}{DeB}{del}{0F}
+\DeclareFlexSymbol{\hbarOrd}{Ord}{OT1}{16}
+\DeclareFlexCompoundSymbol{\hbar}{Ord}{\hbarOrd\mkern-9mu h}
+\DeclareFlexSymbol{\surdOrd}{Ord}{OMS}{70}
+\DeclareFlexCompoundSymbol{\surd}{Ord}{\mathop{\surdOrd}}
+\DeclareFlexCompoundSymbol{\angle}{Ord}{%
+ \vbox{\ialign{%
+ $\m@th\scriptstyle##$\crcr
+ \notRel\mathrel{\mkern14mu}\crcr
+ \noalign{\nointerlineskip}%
+ \mkern2.5mu\leaders\hrule \@height.34pt\hfill\mkern2.5mu\crcr
+ }}%
+}
+\DeclareFlexCompoundSymbol{\neq}{Rel}{\not{=}}
+\DeclareFlexCompoundSymbol{\mapsto}{Rel}{\mapstoOrd\rightarrow}
+\DeclareFlexCompoundSymbol{\cong}{Rel}{\mathpalette\@vereq\sim}
+\newcommand{\joinord}{\mkern-3mu }
+\DeclareFlexCompoundSymbol{\notin}{Rel}{\mathpalette\c@ncel\in}
+\DeclareFlexCompoundSymbol{\rightleftharpoons}{Rel}{\mathpalette\rlh@{}}
+\DeclareFlexCompoundSymbol{\doteq}{Rel}{\buildrel\textstyle.\over=}
+\DeclareFlexCompoundSymbol{\hookrightarrow}{Rel}{\lhookRel\joinord\rightarrow}
+\DeclareFlexCompoundSymbol{\hookleftarrow}{Rel}{\leftarrow\joinord\rhookRel}
+\DeclareFlexCompoundSymbol{\bowtie}{Rel}{\triangleright\joinord\triangleleft}
+\DeclareFlexCompoundSymbol{\models}{Rel}{\vert\joinord=}
+\DeclareFlexCompoundSymbol{\Longrightarrow}{Rel}{\Relbar\joinord\Rightarrow}
+\DeclareFlexCompoundSymbol{\longrightarrow}{Rel}{\relbar\joinord\rightarrow}
+\DeclareFlexCompoundSymbol{\Longleftarrow}{Rel}{\Leftarrow\joinord\Relbar}
+\DeclareFlexCompoundSymbol{\longleftarrow}{Rel}{\leftarrow\joinord\relbar}
+\DeclareFlexCompoundSymbol{\longmapsto}{Rel}{\mapstochar\longrightarrow}
+\DeclareFlexCompoundSymbol{\longleftrightarrow}{Rel}{\leftarrow\joinord\rightarrow}
+\DeclareFlexCompoundSymbol{\Longleftrightarrow}{Rel}{\Leftarrow\joinord\Rightarrow}
+\renewcommand{\iff}{%
+ \mskip\thickmuskip\Longleftrightarrow\mskip\thickmuskip
+}
+\DeclareFlexCompoundSymbol{\cdots}{Inn}{\cdotp\cdotp\cdotp}%
+\DeclareFlexCompoundSymbol{\vdots}{Ord}{%
+ \vbox{\baselineskip4\p@ \lineskiplimit\z@
+ \kern6\p@\hbox{.}\hbox{.}\hbox{.}}}
+\DeclareFlexCompoundSymbol{\ddots}{Inn}{%
+ \mkern1mu\raise7\p@
+ \vbox{\kern7\p@\hbox{.}}\mkern2mu%
+ \raise4\p@\hbox{.}\mkern2mu\raise\p@\hbox{.}\mkern1mu%
+}
+\def\relbar{\begingroup \def\smash@{tb}% in case amsmath is loaded
+ \mathpalette\mathsm@sh{\mathchar"200 }\endgroup}
+\def\Relbar{\mathchar"3D }
diff --git a/Master/texmf-dist/tex/latex/breqn/flexisym.sty b/Master/texmf-dist/tex/latex/breqn/flexisym.sty
new file mode 100644
index 00000000000..5600efa98c9
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/breqn/flexisym.sty
@@ -0,0 +1,257 @@
+%% Created by stripbwr [2001-09-13T07:45:41]
+%% From /home/breqn/flexisym.bwr
+\ProvidesPackage{flexisym}[2001/09/07 v0.92]
+\let\@xp\expandafter \let\@nx\noexpand
+\edef\do{%
+ \@nx\AtEndOfPackage{%
+ \catcode\number`\"=\number\catcode`\"
+ \relax
+ }%
+}
+\do \let\do\relax
+\catcode`\"=12
+\let\@sym\@gobble
+\DeclareOption{robust}{%
+ \def\@sym#1{%
+ \ifx\protect\@typeset@protect \else\protect#1\@xp\@gobblefour\fi
+ }%
+}
+\def\mg@bin{2}% binary operators
+\def\mg@rel{2}% relations
+%%\def\mg@nre{B}% negated relations
+\def\mg@del{3}% delimiters
+%%\def\mg@arr{B}% arrows
+\def\mg@acc{0}% accents
+\def\mg@cop{3}% cumulative operators (sum, int)
+\def\mg@latin{1}% (Latin) letters
+\def\mg@greek{1}% (lowercase) Greek
+\def\mg@Greek{0}% (capital) Greek
+%%\def\mg@bflatin{4}% bold upright Latin letters ?
+%%\def\mg@Bbb{B}% blackboard bold
+\def\mg@cal{2}% script/calligraphic
+%%\def\mg@frak{5}% Fraktur letters
+\def\mg@digit{0}% decimal digits % 1 = oldstyle, 0 = capital
+\expandafter\let\csname MathChar \endcsname\mathchar
+\expandafter\let\csname Delimiter \endcsname\delimiter
+\expandafter\let\csname Radical \endcsname\radical
+\newcommand{\MathChar}{}
+\edef\MathChar{\csname MathChar \endcsname\noexpand\string}
+\newcommand{\Delimiter}{}
+\edef\Delimiter{\csname Delimiter \endcsname\noexpand\string}
+\newcommand{\Radical}{}
+\edef\Radical{\csname Radical \endcsname\noexpand\string}
+\let\sumlimits\displaylimits
+\let\intlimits\nolimits
+\let\namelimits\displaylimits
+\edef\m@Ord#1#2#3{\csname MathChar \endcsname"0#1#2#3 }
+\edef\m@Var#1#2#3{\csname MathChar \endcsname"7#1#2#3 }
+\edef\m@Bin#1#2#3{\csname MathChar \endcsname"2#1#2#3 }
+\edef\m@Rel#1#2#3{\csname MathChar \endcsname"3#1#2#3 }
+\edef\m@Pun#1#2#3{\csname MathChar \endcsname"6#1#2#3 }
+\edef\m@COs#1#2#3{\csname MathChar \endcsname"1#1#2#3 \sumlimits}
+\edef\m@COi#1#2#3{\csname MathChar \endcsname"1#1#2#3 \intlimits}
+\def\delim@a#1#2#3#4{\ifx\relax#1#2#3#4\else#1\fi #2#3#4}
+\def\delim@b#1#2#3#4{\ifx\relax#1#2#3#4\else#1\fi }
+\def\@tempa{%
+ \@nx\@xp\@nx\delim@a\@nx\csname sd@##1##2##3\@nx\endcsname ##1##2##3 }
+\edef\m@DeL#1#2#3{\csname Delimiter \endcsname"4\@tempa}
+\edef\m@DeR#1#2#3{\csname Delimiter \endcsname"5\@tempa}
+\edef\m@DeB#1#2#3{\csname Delimiter \endcsname"0\@tempa}
+\edef\m@DeA#1#2#3{\csname Delimiter \endcsname"3\@tempa}
+\edef\m@Rad#1#2#3{\csname Radical \endcsname"\@tempa}
+\def\do#1#2{\@xp\def\csname sd@#1\endcsname{#2}}
+\do{300}{028}
+\do{301}{029}
+\do{302}{05B}
+\do{303}{05D}
+\do{304}{262}
+\do{305}{263}
+\do{306}{264}
+\do{307}{265}
+\do{308}{266}
+\do{309}{267}
+\do{30A}{268}
+\do{30B}{269}
+\do{30C}{26A}
+\do{30D}{26B}
+\do{30E}{13D}
+\do{30F}{26E}
+\do{340}{37A}
+\do{341}{37B}
+\do{33A}{33A}
+\do{33B}{33B}
+\do{33E}{33E}
+\do{33C}{26A}
+\do{33D}{26B}
+\do{378}{222}
+\do{379}{223}
+\do{33F}{26C}
+\do{37E}{22A}
+\do{37F}{22B}
+\do{377}{26D}
+\do{30F}{26E}
+\def\m@Acc#1#2#3#4{\mathaccent"#1#2#3{#4}}
+\def\@symAcc{\@sym}
+\let\@symtype\@firstofone
+\def\@symOrd#1#2{\@symtype\mathord{\OrdSymbol{#2}}}
+\def\@symVar{\@symOrd}
+\def\@symBin#1#2{\@symtype\mathbin{\OrdSymbol{#2}}}
+\def\@symRel#1#2{\@symtype\mathrel{\OrdSymbol{#2}}}
+\def\@symPun#1#2{\@symtype\mathpunct{\OrdSymbol{#2}}}
+\def\@symCOi#1#2{\@symtype{\mathop{\OrdSymbol{#2}}\intlimits}}
+\def\@symCOs#1#2{\@symtype{\mathop{\OrdSymbol{#2}}\sumlimits}}
+\def\@symOpe#1#2{\@symtype\mathopen{\OrdSymbol{#2}}}
+\def\@symClo#1#2{\@symtype\mathclose{\OrdSymbol{#2}}}
+\def\@symDeL#1#2{\@symtype\mathopen{\OrdSymbol{#2}}}
+\def\@symDeR#1#2{\@symtype\mathclose{\OrdSymbol{#2}}}
+\def\@symDeB#1#2{\@symtype\mathord{\OrdSymbol{#2}}}
+\def\@symInn#1#2{\@symtype\mathinner{\OrdSymbol{#2}}}
+\def\@xnce#1{\@xp\@nx\csname#1\endcsname}
+\let\sym@global\global
+\def\DeclareFlexSymbol#1#2#3#4{%
+ \begingroup
+ \edef\@tempb{\@nx\@sym\@nx#1\@xnce{m@#2}\@xnce{mg@#3}#4}%
+ \ifcat\@nx#1\relax
+ \sym@global\let#1\@tempb
+ \else
+ \sym@global\mathcode`#1="8000\relax
+ \lccode`\~=`#1\relax
+ \lowercase{\sym@global\let~\@tempb}%
+ \fi
+ \endgroup
+}
+\def\DeclareFlexCompoundSymbol#1#2#3{%
+ \@xp\DeclareRobustCommand\@xp#1\@xp{\csname @sym#2\endcsname#1{#3}}%
+ \sym@global\let#1#1\relax
+}
+\DeclareRobustCommand\textchar{\text@char\textfont}
+\DeclareRobustCommand\scriptchar{\text@char\scriptfont}%
+\def\text@char@a{\?\endgroup}%
+\def\text@char@sym#1#2#3{%
+ \begingroup
+ \let\@sym\relax % defense against infinite loops
+ \the\text@script@char#3%
+ \afterassignment\text@char@a
+ \chardef\?="%
+}
+\def\text@char#1#2{\begingroup\check@mathfonts
+ \let\text@script@char#1\let\@sym\text@char@sym
+ \let\@symtype\@secondoftwo \let\OrdSymbol\@firstofone
+ \let\ifmmode\iftrue \everymath{$\@gobble}%
+ \def\mkern{\muskip\z@}\let\mskip\mkern
+ \ifcat\relax\noexpand#2#2%
+ \else
+ \lccode`\~=\expandafter`\string#2\relax
+ \lowercase{~}%
+ \fi
+ \endgroup
+}
+\providecommand\textprime{}
+\DeclareRobustCommand\textprime{\leavevmode
+ \raise.8ex\hbox{\text@char\scriptfont\prime}%
+}
+\@ifundefined{resetMathstrut@}{}{%
+ \def\resetMathstrut@{%
+ \setbox\z@\hbox{\textchar\vert}%
+ \ht\Mathstrutbox@\ht\z@ \dp\Mathstrutbox@\dp\z@
+ }%
+}
+\@ifundefined{rightarrowfill@}{}{%
+ \def\rightarrowfill@#1{\m@th\setboxz@h{$#1\relbar$}\ht\z@\z@
+ $#1\copy\z@\mkern-6mu\cleaders
+ \hbox{$#1\mkern-2mu\box\z@\mkern-2mu$}\hfill
+ \mkern-6mu\OrdSymbol{\rightarrow}$}
+ \def\leftarrowfill@#1{\m@th\setboxz@h{$#1\relbar$}\ht\z@\z@
+ $#1\OrdSymbol{\leftarrow}\mkern-6mu\cleaders
+ \hbox{$#1\mkern-2mu\copy\z@\mkern-2mu$}\hfill
+ \mkern-6mu\box\z@$}
+ \def\leftrightarrowfill@#1{\m@th\setboxz@h{$#1\relbar$}\ht\z@\z@
+ $#1\OrdSymbol{\leftarrow}\mkern-6mu\cleaders
+ \hbox{$#1\mkern-2mu\box\z@\mkern-2mu$}\hfill
+ \mkern-6mu\OrdSymbol{\rightarrow}$}
+}
+\def\binrel@sym#1#2#3#4#5{%
+ \xdef\binrel@@##1{%
+ \ifx\m@Ord#2\@nx\@symOrd
+ \else\ifx\m@Var#2\@nx\@symVar
+ \else\ifx\m@COs#2\@nx\@symCOs
+ \else\ifx\m@COi#2\@nx\@symCOi
+ \else\ifx\m@Bin#2\@nx\@symBin
+ \else\ifx\m@Rel#2\@nx\@symRel
+ \else\ifx\m@Pun#2\@nx\@symPun
+ \else\@nx\@symErr \fi\fi\fi\fi\fi\fi\fi
+ ?{\@nx\OrdSymbol{##1}}}%
+}
+\def\binrel@a{%
+ \def\@symOrd##1##2{\gdef\binrel@@####1{\@symOrd##1{\OrdSymbol{####1}}}}%
+ \def\@symVar##1##2{\gdef\binrel@@####1{\@symVar##1{\OrdSymbol{####1}}}}%
+ \def\@symCOs##1##2{\gdef\binrel@@####1{\@symCOs##1{\OrdSymbol{####1}}}}%
+ \def\@symCOi##1##2{\gdef\binrel@@####1{\@symCOi##1{\OrdSymbol{####1}}}}%
+ \def\@symBin##1##2{\gdef\binrel@@####1{\@symBin##1{\OrdSymbol{####1}}}}%
+ \def\@symRel##1##2{\gdef\binrel@@####1{\@symRel##1{\OrdSymbol{####1}}}}%
+ \def\@symPun##1##2{\gdef\binrel@@####1{\@symPun##1{\OrdSymbol{####1}}}}%
+}
+\def\binrel@#1{%
+ \setbox\z@\hbox{$%
+ \let\mathchoice\@gobblethree
+ \let\@sym\binrel@sym \binrel@a
+ #1$}%
+}
+\def\@symextension{sym}
+\newcommand\usesymbols[1]{%
+ \@for\@tempb:=#1\do{%
+ \@xp\@onefilewithoptions\@xp{\@tempb}[][]\@symextension
+ }%
+}
+\newcommand\ProvidesSymbols[1]{\ProvidesFile{#1.sym}}
+\DeclareRobustCommand{\not}[1]{\@symRel\not{\OrdSymbol{\notRel#1}}}
+\DeclareRobustCommand{\OrdSymbol}[1]{%
+ \begingroup\mathchars@reset#1\endgroup
+}
+\def\mathchars@reset{\let\@sym\@sym@ord \let\@symtype\@symtype@ord
+ \let\OrdSymbol\relax}
+\def\@symtype@ord#1#{}% a strange sort of \@gobble
+\def\@sym@ord#1#2{\@xp\@sym@ord@a\string#2\@nil}%
+\begingroup
+\lccode`\.=`\@ \lowercase{\endgroup
+\def\@sym@ord@a#1.}#2#3\@nil#4#5#6{%
+ \csname MathChar \endcsname"0%
+ \if D#2\@xp\delim@b\csname sd@#4#5#6\endcsname#4#5#6
+ \else #4#5#6
+ \fi
+}
+\DeclareOption{cmbase}{\usesymbols{cmbase}}
+\DeclareOption{mathstyleoff}{}
+\ProcessOptions\relax
+\renewcommand{\lnot}{\neg}
+\renewcommand{\land}{\wedge}
+\renewcommand{\lor}{\vee}
+\renewcommand{\le}{\leq}
+\renewcommand{\ge}{\geq}
+\renewcommand{\ne}{\neq}
+\renewcommand{\owns}{\ni}
+\renewcommand{\gets}{\leftarrow}
+\renewcommand{\to}{\rightarrow}
+\renewcommand{\|}{\Vert}
+\@ifpackagewith{flexisym}{mathstyleoff}{}{%
+ \RequirePackage[activechars]{mathstyle}\relax
+}
+\ifx\std@minus\@@undefined
+\else
+ % Patch for amsmath 2.x if loaded before flexisym
+ \begingroup
+ \long\def\0#1\mathchardef\std@minus#2\std@equal#3\relax{%
+ \toks@{#1}%
+ \afterassignment\1\@temptokena\bgroup
+ }%
+ \def\1{%
+ \edef\2{\endgroup
+ \def\noexpand\@begindocumenthook{\the\toks@\the\@temptokena}}%
+ \2%
+ }
+ \iffalse{\fi
+ \expandafter\0\@begindocumenthook
+ \@gobblefour\mathchardef\std@minus\std@equal\relax
+ \relax\relax\relax\relax}
+ % Leave what for std@minus, std@equal?
+\fi
diff --git a/Master/texmf-dist/tex/latex/breqn/mathstyle.sty b/Master/texmf-dist/tex/latex/breqn/mathstyle.sty
new file mode 100644
index 00000000000..141ea46f3bf
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/breqn/mathstyle.sty
@@ -0,0 +1,89 @@
+%% Created by stripbwr [2001-09-11T03:39:44]
+%% From /home/work/alnilam/mathstyle.bwr
+\ProvidesPackage{mathstyle}[2001/09/10 v0.8]
+\providecommand{\@saveprimitive}[2]{%
+ \begingroup
+ \edef\@tempa{\string#1}\edef\@tempb{\meaning#1}%
+ \ifx\@tempa\@tempb \global\let#2#1%
+ \else
+ \edef\@tempb{\meaning#2}%
+ \ifx\@tempa\@tempb
+ \else
+ \keyed@msg\@latex@error\@saveprimitive{{#2}{#1}}
+% {Unable to properly define \string#2; primitive
+% \noexpand#1no longer primitive}\@eha
+ \fi
+ \fi
+ \endgroup
+}
+\chardef\mathstyle=0
+\@saveprimitive\displaystyle\@@displaystyle
+\@saveprimitive\textstyle\@@textstyle
+\@saveprimitive\scriptstyle\@@scriptstyle
+\@saveprimitive\scriptscriptstyle\@@scriptscriptstyle
+\DeclareRobustCommand{\displaystyle}{%
+ \@@displaystyle \chardef\mathstyle\z@}
+\DeclareRobustCommand{\textstyle}{%
+ \@@textstyle \chardef\mathstyle\@ne}
+\DeclareRobustCommand{\scriptstyle}{%
+ \@@scriptstyle \chardef\mathstyle\tw@}
+\DeclareRobustCommand{\scriptscriptstyle}{%
+ \@@scriptscriptstyle \chardef\mathstyle\thr@@}
+\begingroup \catcode`\^=7 \catcode`\_=8 % just in case
+\lowercase{\endgroup
+\let\@@superscript=^ \let\@@subscript=_
+}%
+\def\subsupstyle{%
+ \ifnum\mathstyle<\tw@ \chardef\mathstyle\tw@
+ \else \chardef\mathstyle\thr@@
+ \fi
+}
+\begingroup \catcode`\^=7 \catcode`\_=8
+\global\let\mathsup=^\global\let\mathsub=_\relax
+\endgroup
+\def\sb#1{\mathsub{\protect\subsupstyle#1}}%
+\def\sp#1{\mathsup{\protect\subsupstyle#1}}%
+\def\mathchoice#1#2#3#4{%
+ \relax\ifcase\mathstyle#1\relax\or#2\relax\or#3\relax\else#4\relax\fi
+}
+\DeclareOption{activechars}{\catcode`\^=13 \catcode`\_=13 }
+\ProcessOptions\relax
+\ifnum\catcode`\^=13
+ \let^=\sp \let_=\sb
+\else
+ \mathcode`\^="8000 \mathcode`\_="8000
+ \begingroup \catcode`\^=\active \catcode`\_=\active
+ \global\let^=\sp \global\let_=\sb
+ \endgroup
+\fi
+\@saveprimitive\over\@@over
+\@saveprimitive\atop\@@atop
+\@saveprimitive\above\@@above
+\@saveprimitive\overwithdelims\@@overwithdelims
+\@saveprimitive\atopwithdelims\@@atopwithdelims
+\@saveprimitive\abovewithdelims\@@abovewithdelims
+\DeclareRobustCommand\genfrac[6]{%
+ {\fracstyle #1%
+ {\begingroup #5\endgroup
+ \csname @@\ifx\maxdimen#4\maxdimen over\else above\fi
+ \if @#2@\else withdelims\fi\endcsname #2#3#4\relax
+ #6}%
+ }%
+}
+\renewcommand{\frac}{\genfrac{}{}{}{}}
+\providecommand{\dfrac}{}
+\providecommand{\tfrac}{}
+\renewcommand{\dfrac}{\genfrac\displaystyle{}{}{}}
+\renewcommand{\tfrac}{\genfrac\textstyle{}{}{}}
+\providecommand{\binom}{}
+\providecommand{\tbinom}{}
+\providecommand{\dbinom}{}
+\renewcommand{\binom}{\genfrac{}(){0pt}}
+\renewcommand{\dbinom}{\genfrac\displaystyle(){0pt}}
+\renewcommand{\tbinom}{\genfrac\textstyle(){0pt}}
+\def\fracstyle{\ifcase\mathstyle
+ \chardef\mathstyle=\@ne
+ \or \chardef\mathstyle=\tw@
+ \else \chardef\mathstyle=\thr@@
+ \fi
+}
diff --git a/Master/texmf-dist/tex/latex/breqn/msabm.sym b/Master/texmf-dist/tex/latex/breqn/msabm.sym
new file mode 100644
index 00000000000..1495aa60d69
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/breqn/msabm.sym
@@ -0,0 +1,228 @@
+%% Created by stripbwr [2001-09-09T00:22:17]
+%% From /home/breqn/msabm.bwr
+\ProvidesSymbols{msabm}[2001/09/08 v0.91]
+\RequirePackage{amsfonts}\relax
+\@xp\xdef\csname mg@MSA\endcsname{\hexnumber@\symAMSa}%
+\@xp\xdef\csname mg@MSB\endcsname{\hexnumber@\symAMSb}%
+\DeclareFlexSymbol{\boxdot} {Bin}{MSA}{00}
+\DeclareFlexSymbol{\boxplus} {Bin}{MSA}{01}
+\DeclareFlexSymbol{\boxtimes} {Bin}{MSA}{02}
+\DeclareFlexSymbol{\square} {Ord}{MSA}{03}
+\DeclareFlexSymbol{\blacksquare} {Ord}{MSA}{04}
+\DeclareFlexSymbol{\centerdot} {Bin}{MSA}{05}
+\DeclareFlexSymbol{\lozenge} {Ord}{MSA}{06}
+\DeclareFlexSymbol{\blacklozenge} {Ord}{MSA}{07}
+\DeclareFlexSymbol{\circlearrowright} {Rel}{MSA}{08}
+\DeclareFlexSymbol{\circlearrowleft} {Rel}{MSA}{09}
+%% In amsfonts.sty:
+%%\DeclareFlexSymbol{\rightleftharpoons}{Rel}{MSA}{0A}
+\DeclareFlexSymbol{\leftrightharpoons} {Rel}{MSA}{0B}
+\DeclareFlexSymbol{\boxminus} {Bin}{MSA}{0C}
+\DeclareFlexSymbol{\Vdash} {Rel}{MSA}{0D}
+\DeclareFlexSymbol{\Vvdash} {Rel}{MSA}{0E}
+\DeclareFlexSymbol{\vDash} {Rel}{MSA}{0F}
+\DeclareFlexSymbol{\twoheadrightarrow} {Rel}{MSA}{10}
+\DeclareFlexSymbol{\twoheadleftarrow} {Rel}{MSA}{11}
+\DeclareFlexSymbol{\leftleftarrows} {Rel}{MSA}{12}
+\DeclareFlexSymbol{\rightrightarrows} {Rel}{MSA}{13}
+\DeclareFlexSymbol{\upuparrows} {Rel}{MSA}{14}
+\DeclareFlexSymbol{\downdownarrows} {Rel}{MSA}{15}
+\DeclareFlexSymbol{\upharpoonright} {Rel}{MSA}{16}
+ \let\restriction\upharpoonright
+\DeclareFlexSymbol{\downharpoonright} {Rel}{MSA}{17}
+\DeclareFlexSymbol{\upharpoonleft} {Rel}{MSA}{18}
+\DeclareFlexSymbol{\downharpoonleft}{Rel}{MSA}{19}
+\DeclareFlexSymbol{\rightarrowtail} {Rel}{MSA}{1A}
+\DeclareFlexSymbol{\leftarrowtail} {Rel}{MSA}{1B}
+\DeclareFlexSymbol{\leftrightarrows}{Rel}{MSA}{1C}
+\DeclareFlexSymbol{\rightleftarrows}{Rel}{MSA}{1D}
+\DeclareFlexSymbol{\Lsh} {Rel}{MSA}{1E}
+\DeclareFlexSymbol{\Rsh} {Rel}{MSA}{1F}
+\DeclareFlexSymbol{\rightsquigarrow} {Rel}{MSA}{20}
+\DeclareFlexSymbol{\leftrightsquigarrow}{Rel}{MSA}{21}
+\DeclareFlexSymbol{\looparrowleft} {Rel}{MSA}{22}
+\DeclareFlexSymbol{\looparrowright} {Rel}{MSA}{23}
+\DeclareFlexSymbol{\circeq} {Rel}{MSA}{24}
+\DeclareFlexSymbol{\succsim} {Rel}{MSA}{25}
+\DeclareFlexSymbol{\gtrsim} {Rel}{MSA}{26}
+\DeclareFlexSymbol{\gtrapprox} {Rel}{MSA}{27}
+\DeclareFlexSymbol{\multimap} {Rel}{MSA}{28}
+\DeclareFlexSymbol{\therefore} {Rel}{MSA}{29}
+\DeclareFlexSymbol{\because} {Rel}{MSA}{2A}
+\DeclareFlexSymbol{\doteqdot} {Rel}{MSA}{2B}
+ \let\Doteq\doteqdot
+\DeclareFlexSymbol{\triangleq} {Rel}{MSA}{2C}
+\DeclareFlexSymbol{\precsim} {Rel}{MSA}{2D}
+\DeclareFlexSymbol{\lesssim} {Rel}{MSA}{2E}
+\DeclareFlexSymbol{\lessapprox} {Rel}{MSA}{2F}
+\DeclareFlexSymbol{\eqslantless} {Rel}{MSA}{30}
+\DeclareFlexSymbol{\eqslantgtr} {Rel}{MSA}{31}
+\DeclareFlexSymbol{\curlyeqprec} {Rel}{MSA}{32}
+\DeclareFlexSymbol{\curlyeqsucc} {Rel}{MSA}{33}
+\DeclareFlexSymbol{\preccurlyeq} {Rel}{MSA}{34}
+\DeclareFlexSymbol{\leqq} {Rel}{MSA}{35}
+\DeclareFlexSymbol{\leqslant} {Rel}{MSA}{36}
+\DeclareFlexSymbol{\lessgtr} {Rel}{MSA}{37}
+\DeclareFlexSymbol{\backprime} {Ord}{MSA}{38}
+\DeclareFlexSymbol{\risingdotseq} {Rel}{MSA}{3A}
+\DeclareFlexSymbol{\fallingdotseq}{Rel}{MSA}{3B}
+\DeclareFlexSymbol{\succcurlyeq} {Rel}{MSA}{3C}
+\DeclareFlexSymbol{\geqq} {Rel}{MSA}{3D}
+\DeclareFlexSymbol{\geqslant} {Rel}{MSA}{3E}
+\DeclareFlexSymbol{\gtrless} {Rel}{MSA}{3F}
+%% in amsfonts.sty
+%% \DeclareFlexSymbol{\sqsubset} {Rel}{MSA}{40}
+%% \DeclareFlexSymbol{\sqsupset} {Rel}{MSA}{41}
+\DeclareFlexSymbol{\vartriangleright}{Rel}{MSA}{42}
+\DeclareFlexSymbol{\vartriangleleft} {Rel}{MSA}{43}
+\DeclareFlexSymbol{\trianglerighteq} {Rel}{MSA}{44}
+\DeclareFlexSymbol{\trianglelefteq} {Rel}{MSA}{45}
+\DeclareFlexSymbol{\bigstar} {Ord}{MSA}{46}
+\DeclareFlexSymbol{\between} {Rel}{MSA}{47}
+\DeclareFlexSymbol{\blacktriangledown} {Ord}{MSA}{48}
+\DeclareFlexSymbol{\blacktriangleright} {Rel}{MSA}{49}
+\DeclareFlexSymbol{\blacktriangleleft} {Rel}{MSA}{4A}
+\DeclareFlexSymbol{\vartriangle} {Rel}{MSA}{4D}
+\DeclareFlexSymbol{\blacktriangle} {Ord}{MSA}{4E}
+\DeclareFlexSymbol{\triangledown} {Ord}{MSA}{4F}
+\DeclareFlexSymbol{\eqcirc} {Rel}{MSA}{50}
+\DeclareFlexSymbol{\lesseqgtr} {Rel}{MSA}{51}
+\DeclareFlexSymbol{\gtreqless} {Rel}{MSA}{52}
+\DeclareFlexSymbol{\lesseqqgtr} {Rel}{MSA}{53}
+\DeclareFlexSymbol{\gtreqqless} {Rel}{MSA}{54}
+\DeclareFlexSymbol{\Rrightarrow} {Rel}{MSA}{56}
+\DeclareFlexSymbol{\Lleftarrow} {Rel}{MSA}{57}
+\DeclareFlexSymbol{\veebar} {Bin}{MSA}{59}
+\DeclareFlexSymbol{\barwedge} {Bin}{MSA}{5A}
+\DeclareFlexSymbol{\doublebarwedge} {Bin}{MSA}{5B}
+%% In amsfonts.sty
+%%\DeclareFlexSymbol{\angle} {Ord}{MSA}{5C}
+\DeclareFlexSymbol{\measuredangle} {Ord}{MSA}{5D}
+\DeclareFlexSymbol{\sphericalangle} {Ord}{MSA}{5E}
+\DeclareFlexSymbol{\varpropto} {Rel}{MSA}{5F}
+\DeclareFlexSymbol{\smallsmile} {Rel}{MSA}{60}
+\DeclareFlexSymbol{\smallfrown} {Rel}{MSA}{61}
+\DeclareFlexSymbol{\Subset} {Rel}{MSA}{62}
+\DeclareFlexSymbol{\Supset} {Rel}{MSA}{63}
+\DeclareFlexSymbol{\Cup} {Bin}{MSA}{64}
+ \let\doublecup\Cup
+\DeclareFlexSymbol{\Cap} {Bin}{MSA}{65}
+ \let\doublecap\Cap
+\DeclareFlexSymbol{\curlywedge} {Bin}{MSA}{66}
+\DeclareFlexSymbol{\curlyvee} {Bin}{MSA}{67}
+\DeclareFlexSymbol{\leftthreetimes} {Bin}{MSA}{68}
+\DeclareFlexSymbol{\rightthreetimes}{Bin}{MSA}{69}
+\DeclareFlexSymbol{\subseteqq} {Rel}{MSA}{6A}
+\DeclareFlexSymbol{\supseteqq} {Rel}{MSA}{6B}
+\DeclareFlexSymbol{\bumpeq} {Rel}{MSA}{6C}
+\DeclareFlexSymbol{\Bumpeq} {Rel}{MSA}{6D}
+\DeclareFlexSymbol{\lll} {Rel}{MSA}{6E}
+ \let\llless\lll
+\DeclareFlexSymbol{\ggg} {Rel}{MSA}{6F}
+ \let\gggtr\ggg
+\DeclareFlexSymbol{\circledS} {Ord}{MSA}{73}
+\DeclareFlexSymbol{\pitchfork} {Rel}{MSA}{74}
+\DeclareFlexSymbol{\dotplus} {Bin}{MSA}{75}
+\DeclareFlexSymbol{\backsim} {Rel}{MSA}{76}
+\DeclareFlexSymbol{\backsimeq} {Rel}{MSA}{77}
+\DeclareFlexSymbol{\complement} {Ord}{MSA}{7B}
+\DeclareFlexSymbol{\intercal} {Bin}{MSA}{7C}
+\DeclareFlexSymbol{\circledcirc} {Bin}{MSA}{7D}
+\DeclareFlexSymbol{\circledast} {Bin}{MSA}{7E}
+\DeclareFlexSymbol{\circleddash} {Bin}{MSA}{7F}
+%% Begin AMSb declarations
+\DeclareFlexSymbol{\lvertneqq} {Rel}{MSB}{00}
+\DeclareFlexSymbol{\gvertneqq} {Rel}{MSB}{01}
+\DeclareFlexSymbol{\nleq} {Rel}{MSB}{02}
+\DeclareFlexSymbol{\ngeq} {Rel}{MSB}{03}
+\DeclareFlexSymbol{\nless} {Rel}{MSB}{04}
+\DeclareFlexSymbol{\ngtr} {Rel}{MSB}{05}
+\DeclareFlexSymbol{\nprec} {Rel}{MSB}{06}
+\DeclareFlexSymbol{\nsucc} {Rel}{MSB}{07}
+\DeclareFlexSymbol{\lneqq} {Rel}{MSB}{08}
+\DeclareFlexSymbol{\gneqq} {Rel}{MSB}{09}
+\DeclareFlexSymbol{\nleqslant} {Rel}{MSB}{0A}
+\DeclareFlexSymbol{\ngeqslant} {Rel}{MSB}{0B}
+\DeclareFlexSymbol{\lneq} {Rel}{MSB}{0C}
+\DeclareFlexSymbol{\gneq} {Rel}{MSB}{0D}
+\DeclareFlexSymbol{\npreceq} {Rel}{MSB}{0E}
+\DeclareFlexSymbol{\nsucceq} {Rel}{MSB}{0F}
+\DeclareFlexSymbol{\precnsim} {Rel}{MSB}{10}
+\DeclareFlexSymbol{\succnsim} {Rel}{MSB}{11}
+\DeclareFlexSymbol{\lnsim} {Rel}{MSB}{12}
+\DeclareFlexSymbol{\gnsim} {Rel}{MSB}{13}
+\DeclareFlexSymbol{\nleqq} {Rel}{MSB}{14}
+\DeclareFlexSymbol{\ngeqq} {Rel}{MSB}{15}
+\DeclareFlexSymbol{\precneqq} {Rel}{MSB}{16}
+\DeclareFlexSymbol{\succneqq} {Rel}{MSB}{17}
+\DeclareFlexSymbol{\precnapprox} {Rel}{MSB}{18}
+\DeclareFlexSymbol{\succnapprox} {Rel}{MSB}{19}
+\DeclareFlexSymbol{\lnapprox} {Rel}{MSB}{1A}
+\DeclareFlexSymbol{\gnapprox} {Rel}{MSB}{1B}
+\DeclareFlexSymbol{\nsim} {Rel}{MSB}{1C}
+\DeclareFlexSymbol{\ncong} {Rel}{MSB}{1D}
+\DeclareFlexSymbol{\diagup} {Ord}{MSB}{1E}
+\DeclareFlexSymbol{\diagdown} {Ord}{MSB}{1F}
+\DeclareFlexSymbol{\varsubsetneq} {Rel}{MSB}{20}
+\DeclareFlexSymbol{\varsupsetneq} {Rel}{MSB}{21}
+\DeclareFlexSymbol{\nsubseteqq} {Rel}{MSB}{22}
+\DeclareFlexSymbol{\nsupseteqq} {Rel}{MSB}{23}
+\DeclareFlexSymbol{\subsetneqq} {Rel}{MSB}{24}
+\DeclareFlexSymbol{\supsetneqq} {Rel}{MSB}{25}
+\DeclareFlexSymbol{\varsubsetneqq} {Rel}{MSB}{26}
+\DeclareFlexSymbol{\varsupsetneqq} {Rel}{MSB}{27}
+\DeclareFlexSymbol{\subsetneq} {Rel}{MSB}{28}
+\DeclareFlexSymbol{\supsetneq} {Rel}{MSB}{29}
+\DeclareFlexSymbol{\nsubseteq} {Rel}{MSB}{2A}
+\DeclareFlexSymbol{\nsupseteq} {Rel}{MSB}{2B}
+\DeclareFlexSymbol{\nparallel} {Rel}{MSB}{2C}
+\DeclareFlexSymbol{\nmid} {Rel}{MSB}{2D}
+\DeclareFlexSymbol{\nshortmid} {Rel}{MSB}{2E}
+\DeclareFlexSymbol{\nshortparallel} {Rel}{MSB}{2F}
+\DeclareFlexSymbol{\nvdash} {Rel}{MSB}{30}
+\DeclareFlexSymbol{\nVdash} {Rel}{MSB}{31}
+\DeclareFlexSymbol{\nvDash} {Rel}{MSB}{32}
+\DeclareFlexSymbol{\nVDash} {Rel}{MSB}{33}
+\DeclareFlexSymbol{\ntrianglerighteq}{Rel}{MSB}{34}
+\DeclareFlexSymbol{\ntrianglelefteq}{Rel}{MSB}{35}
+\DeclareFlexSymbol{\ntriangleleft} {Rel}{MSB}{36}
+\DeclareFlexSymbol{\ntriangleright} {Rel}{MSB}{37}
+\DeclareFlexSymbol{\nleftarrow} {Rel}{MSB}{38}
+\DeclareFlexSymbol{\nrightarrow} {Rel}{MSB}{39}
+\DeclareFlexSymbol{\nLeftarrow} {Rel}{MSB}{3A}
+\DeclareFlexSymbol{\nRightarrow} {Rel}{MSB}{3B}
+\DeclareFlexSymbol{\nLeftrightarrow}{Rel}{MSB}{3C}
+\DeclareFlexSymbol{\nleftrightarrow}{Rel}{MSB}{3D}
+\DeclareFlexSymbol{\divideontimes} {Bin}{MSB}{3E}
+\DeclareFlexSymbol{\varnothing} {Ord}{MSB}{3F}
+\DeclareFlexSymbol{\nexists} {Ord}{MSB}{40}
+\DeclareFlexSymbol{\Finv} {Ord}{MSB}{60}
+\DeclareFlexSymbol{\Game} {Ord}{MSB}{61}
+%% In amsfonts.sty:
+%%\DeclareFlexSymbol{\mho} {Ord}{MSB}{66}
+\DeclareFlexSymbol{\eth} {Ord}{MSB}{67}
+\DeclareFlexSymbol{\eqsim} {Rel}{MSB}{68}
+\DeclareFlexSymbol{\beth} {Ord}{MSB}{69}
+\DeclareFlexSymbol{\gimel} {Ord}{MSB}{6A}
+\DeclareFlexSymbol{\daleth} {Ord}{MSB}{6B}
+\DeclareFlexSymbol{\lessdot} {Bin}{MSB}{6C}
+\DeclareFlexSymbol{\gtrdot} {Bin}{MSB}{6D}
+\DeclareFlexSymbol{\ltimes} {Bin}{MSB}{6E}
+\DeclareFlexSymbol{\rtimes} {Bin}{MSB}{6F}
+\DeclareFlexSymbol{\shortmid} {Rel}{MSB}{70}
+\DeclareFlexSymbol{\shortparallel} {Rel}{MSB}{71}
+\DeclareFlexSymbol{\smallsetminus} {Bin}{MSB}{72}
+\DeclareFlexSymbol{\thicksim} {Rel}{MSB}{73}
+\DeclareFlexSymbol{\thickapprox} {Rel}{MSB}{74}
+\DeclareFlexSymbol{\approxeq} {Rel}{MSB}{75}
+\DeclareFlexSymbol{\succapprox} {Rel}{MSB}{76}
+\DeclareFlexSymbol{\precapprox} {Rel}{MSB}{77}
+\DeclareFlexSymbol{\curvearrowleft} {Rel}{MSB}{78}
+\DeclareFlexSymbol{\curvearrowright}{Rel}{MSB}{79}
+\DeclareFlexSymbol{\digamma} {Ord}{MSB}{7A}
+\DeclareFlexSymbol{\varkappa} {Ord}{MSB}{7B}
+\DeclareFlexSymbol{\Bbbk} {Ord}{MSB}{7C}
+\DeclareFlexSymbol{\hslash} {Ord}{MSB}{7D}
+%% In amsfonts.sty:
+%%\DeclareFlexSymbol{\hbar} {Ord}{MSB}{7E}
+\DeclareFlexSymbol{\backepsilon} {Rel}{MSB}{7F}