%% %% This is file `rmathbr.sty', %% generated with the docstrip utility. %% %% The original source files were: %% %% rmathbr.dtx (with options: `package') %% %% This is a generated file. %% %% Copyright (C) 2008-2020 by Denis Ryabov %% -------------------------------------------------------------------------- %% This work may be distributed and/or modified under the %% conditions of the LaTeX Project Public License, either version 1.3 %% of this license or (at your option) any later version. %% The latest version of this license is in %% http://www.latex-project.org/lppl.txt %% and version 1.3 or later is part of all distributions of LaTeX %% version 2005/12/01 or later. %% \NeedsTeXFormat{LaTeX2e}[1999/12/01] \ProvidesPackage{rmathbr} [2020/12/18 1.1.1 Repeating of math operator at the broken line and the new line in inline equations] \RequirePackage{ifetex} \RequirePackage{ifluatex} \RequirePackage{xkeyval} \RequirePackage{expl3} \edef\rmathbr@kv{\@currname.\@currext} \def\xDeclareBoolOptionX#1#2{% \define@boolkey{\rmathbr@kv}[rmathbr@kv@]{#1}[true]{#2}% } \def\xDeclareChoiceOptionX#1[#2]#3[#4]#5{% \define@choicekey{\rmathbr@kv}{#1}[#2]{#3}[#4]{#5}% } \@ifpackageloaded{breqn}{% \PackageError{rmathbr}{'rmathbr' package cannot be used together with 'breqn' package!}{}% }{} \def\nobr{\penalty\relpenalty} \def\SetBreakableRel#1{\rmathbr@setbreakable{#1}{\brokenrel}} \def\SetBreakableBin#1{\rmathbr@setbreakable{#1}{\brokenbin}} \def\SetBreakableInner#1{\rmathbr@setbreakable{#1}{\brokeninner}} \def\SetOpenBracket#1{\rmathbr@nobrafter{#1}} \def\SetPunctuation#1{\rmathbr@nobrafter{#1}} \def\SetMathOperator#1{\rmathbr@setbreakable{#1}{\rmathbr@mathop}} \def\UnsetBrokenCmd#1{\rmathbr@unsetbroken{#1}} \def\BrokenBinOff{\rmathbr@brokenbinoff} \def\BrokenBinOn{\rmathbr@brokenbinon} \DeclareRobustCommand{\brokenrel}[1]{\rmathbr@brokenrel{#1}} \DeclareRobustCommand{\brokenbin}[1]{\rmathbr@brokenbin{#1}} \DeclareRobustCommand{\brokeninner}[1]{\rmathbr@brokeninner{#1}} \xDeclareBoolOptionX{noactivechars}{ \ifrmathbr@kv@noactivechars \PackageWarning{rmathbr}{^^J Option 'noactivechars' is deprecated.^^J Use 'scripts=noactive' instead.^^J} \ExecuteOptionsX{scripts=noactive} \fi } \xDeclareBoolOptionX{mathactivechars}{ \ifrmathbr@kv@mathactivechars \PackageWarning{rmathbr}{^^J Option 'mathactivechars' is deprecated.^^J Use 'scripts=mathactive' instead.^^J} \ExecuteOptionsX{scripts=mathactive} \fi } \xDeclareBoolOptionX{activechars}{ \ifrmathbr@kv@activechars \PackageWarning{rmathbr}{^^J Option 'activechars' is deprecated.^^J Use 'scripts=active' instead.^^J} \ExecuteOptionsX{scripts=active} \fi } \xDeclareChoiceOptionX{scripts}[\xkv@val\xkv@nr]{noactive,mathactive,active}[mathactive]{ \let\rmathbr@kv@scriptsmode=\xkv@nr } \newif\ifrmathbr@patch@begindocument \xDeclareChoiceOptionX{run}[\xkv@val\xkv@nr]{atload,atbegindocument,auto}[auto]{ \ifcase\xkv@nr\relax \rmathbr@patch@begindocumentfalse \or \rmathbr@patch@begindocumenttrue \or \@ifpackageloaded{unicode-math}{\rmathbr@patch@begindocumenttrue}{} \@ifpackageloaded{mathtools}{\rmathbr@patch@begindocumenttrue}{} \fi } \xDeclareBoolOptionX{cdottimes}{} \xDeclareBoolOptionX{brokenminus}{} \xDeclareBoolOptionX{brokencolon}{} \xDeclareBoolOptionX{brokenbin}{% \ifrmathbr@kv@brokenbin \else \AtBeginDocument{\BrokenBinOff} \fi } \ExecuteOptionsX{scripts=mathactive} \ExecuteOptionsX{run=auto} \ExecuteOptionsX{cdottimes=false} \ExecuteOptionsX{brokenminus=true} \ExecuteOptionsX{brokencolon=false} \ExecuteOptionsX{brokenbin=true} \ProcessOptionsX \ifcase\rmathbr@kv@scriptsmode % nop \or \AtBeginDocument{\catcode`\^=12\mathcode`\^=32768\catcode`\_=12\mathcode`\_=32768} \or \AtBeginDocument{\catcode`\^\active\catcode`\_\active} \fi \def\rmathbr@pr@m@s{% \ifx'\@let@token \let\rmathbr@command=\pr@@@s \else\ifx\rmathbr@superscript@std\@let@token \let\rmathbr@command=\pr@@@t \else\ifx\rmathbr@superscript@other\@let@token \let\rmathbr@command=\pr@@@t \else \let\rmathbr@command=\egroup \fi\fi\fi \rmathbr@command} \ifnum\rmathbr@kv@scriptsmode>0\relax \let\pr@m@s=\rmathbr@pr@m@s \fi \ExplSyntaxOn \def\rmathbr@unicodemath@primes@patch{ \cs_gset:Nn \__um_superscript:n { \rmathbr@superscript@std\bgroup ##1 \peek_meaning_remove:NTF \rmathbr@superscript@other \__um_arg_i_before_egroup:n { \peek_meaning_remove:NTF \rmathbr@superscript@std \__um_arg_i_before_egroup:n \egroup } } } \ExplSyntaxOff \mathchardef\rmathbr@orig@relpenalty=\relpenalty \mathchardef\rmathbr@orig@binoppenalty=\binoppenalty \ifluatex\else \exhyphenpenalty=\relpenalty \fi \relpenalty=13131 \binoppenalty=14141 \expandafter\everymath\expandafter{\the\everymath\nobr } \begingroup\catcode`\^=7 \global\let\rmathbr@superscript@std=^\endgroup \begingroup\catcode`\^=12\global\let\rmathbr@superscript@other=^\endgroup \begingroup\catcode`\_=8 \global\let\rmathbr@subscript@std=_\endgroup \begingroup\catcode`\_=12\global\let\rmathbr@subscript@other=_\endgroup \begingroup\catcode`\'=12\global\let\rmathbr@prime='\endgroup \def\rmathbr@superscript{\rmathbr@check@arg\rmathbr@superscript@std} \def\rmathbr@subscript{\rmathbr@check@arg\rmathbr@subscript@std} \def\rmathbr@check@arg#1{% \let\rmathbr@checkarg@cmd=#1 \futurelet\rmathbr@let@token\rmathbr@check@@arg% } \def\rmathbr@check@@arg#1{% \let\rmathbr@command=\rmathbr@wrap@arg \ifx\rmathbr@let@token\bgroup\else \edef\rmathbr@orig{\expandafter\@gobble\string#1} \ifx\rmathbr@orig\empty\else \expandafter\ifx\csname rmathbr@orig@\rmathbr@orig\endcsname\relax \let\rmathbr@command=\@firstofone \fi \fi \fi \rmathbr@checkarg@cmd\rmathbr@command{#1}% } \def\rmathbr@wrap@arg#1{{#1}} \begingroup \catcode`\^\active\gdef^{\rmathbr@superscript} \catcode`\_\active\gdef_{\rmathbr@subscript} \endgroup \newif\ifrmathbr@activemathchar \ifx\Umathcode\@undefined \def\rmathbr@checkmathchar#1{% \ifnum\mathcode#1<32768\relax% \rmathbr@activemathcharfalse% \else% \rmathbr@activemathchartrue% \fi} \def\rmathbr@mathchar#1{\mathchar\number\mathcode#1} \def\rmathbr@makeactivemathopen#1{% \begingroup \xdef\@tempa{\mathopen\delimiter\number\delcode#1 \noexpand\nobr } \begingroup\lccode`~=#1\catcode#1\active\lowercase{\endgroup\xdef~}{\@tempa} \endgroup } \else \begingroup \mathcode`\+="8000 \xdef\rmathbr@activemathcode{\number\Umathcodenum`\+} \endgroup \def\rmathbr@checkmathchar#1{% \ifnum\Umathcodenum#1=\rmathbr@activemathcode\relax% \expandafter\rmathbr@activemathchartrue% \else% \expandafter\rmathbr@activemathcharfalse% \fi} \def\rmathbr@mathchar#1{\Umathcharnum\number\Umathcodenum#1} \def\rmathbr@truncdiv#1#2{((#1-(#2-1)/2)/#2)} \def\rmathbr@modulo#1#2{(#1-\rmathbr@truncdiv{#1}{#2}*#2)} \def\rmathbr@makeactivemathopen#1{% \begingroup \def\@tempa{\Udelcodenum#1} \ifnum\@tempa<"1000000 \xdef\@tempb{\mathopen\delimiter\number\@tempa\space\noexpand\nobr } \else \xdef\@tempb{\mathopen\Udelimiter4 % \number\numexpr\rmathbr@truncdiv{\rmathbr@modulo{\@tempa}{"40000000}}{"200000}\relax% \space\number\numexpr\rmathbr@modulo{\@tempa}{"200000}\relax\noexpand\nobr } \fi \begingroup\lccode`~=#1\catcode#1\active\expandafter\lowercase\expandafter% {\expandafter\endgroup\expandafter\gdef\expandafter~\expandafter}\expandafter{\@tempb} \endgroup } \fi \def\rmathbr@makeactivemath#1#2#3{ \begingroup \rmathbr@checkmathchar{#1} \lccode`~=#1 \catcode#1\active \ifrmathbr@activemathchar \PackageWarning{rmathbr}{Redeclare active math #1 symbol to default mathchar value} \lowercase{\gdef~}{#2{#3}} \else \lowercase{\xdef~}{\noexpand#2{\rmathbr@mathchar{#1}}} \fi \endgroup } \def\rmathbr@makeactivemathpunct#1#2{ \begingroup \rmathbr@checkmathchar{#1} \lccode`~=#1 \catcode#1\active \ifrmathbr@activemathchar \PackageWarning{rmathbr}{Redeclare active math #1 symbol to default mathchar value} \lowercase{\gdef~}{\mathpunct#2\nobr } \else \lowercase{\xdef~}{\mathpunct\rmathbr@mathchar{#1} \noexpand\nobr } \fi \endgroup } \newif\ifrmathbr@protected \def\rmathbr@str@contains#1#2{\begingroup\edef\x{\endgroup\noexpand\in@{#1}{#2}}\x} \def\rmathbr@ifprotected#1{% \rmathbr@protectedfalse \edef\meaning@cmd{\meaning#1} \rmathbr@str@contains{\string#1\space}\meaning@cmd \ifin@ \rmathbr@str@contains{\string\protect\space}\meaning@cmd \ifin@\rmathbr@protectedtrue\else \rmathbr@str@contains{\string\x@protect\space}\meaning@cmd \ifin@\rmathbr@protectedtrue\else \rmathbr@str@contains{\string\@testopt\space}\meaning@cmd \ifin@\rmathbr@protectedtrue\else \rmathbr@str@contains{\string\@protected@testopt\space}\meaning@cmd \ifin@\rmathbr@protectedtrue\fi \fi \fi \fi \fi } \def\rmathbr@ReDeclareRobustCommand#1#2{% \begingroup \ifx#1\@undefined \else \edef\var@orig@I{rmathbr@orig@\expandafter\@gobble\string#1} \edef\var@Ispace{\expandafter\@gobble\string#1 } \expandafter\ifx\csname\var@orig@I\endcsname\relax \ifetex \expandafter\global\expandafter\let\csname\var@orig@I\endcsname#1 \else \rmathbr@ifprotected#1 \ifrmathbr@protected \expandafter\global\expandafter\let\csname\var@orig@I\expandafter\endcsname% \csname\var@Ispace\endcsname \else \expandafter\global\expandafter\let\csname\var@orig@I\endcsname#1 \fi \fi \fi \ifetex \protected\gdef#1{#2} \else \expandafter\gdef\csname\var@Ispace\endcsname{#2}% no arguments \xdef#1{\noexpand\protect\expandafter\noexpand\csname\var@Ispace\endcsname} \fi \fi \endgroup% } \def\rmathbr@ReDeclareRobustCommandI#1#2{% \begingroup \ifx#1\@undefined \else \edef\var@orig@I{rmathbr@orig@\expandafter\@gobble\string#1} \edef\var@Ispace{\expandafter\@gobble\string#1\space} \expandafter\ifx\csname\var@orig@I\endcsname\relax \ifetex \expandafter\global\expandafter\let\csname\var@orig@I\endcsname#1 \else \rmathbr@ifprotected#1 \ifrmathbr@protected \expandafter\global\expandafter\let\csname\var@orig@I\expandafter\endcsname% \csname\var@Ispace\endcsname \else \expandafter\global\expandafter\let\csname\var@orig@I\endcsname#1 \fi \fi \fi \ifetex \protected\gdef#1##1{#2} \else \expandafter\gdef\csname\var@Ispace\endcsname##1{#2}% one argument \xdef#1{\noexpand\protect\expandafter\noexpand\csname\var@Ispace\endcsname} \fi \fi \endgroup% } \rmathbr@ReDeclareRobustCommandI{\brokenrel}{\rmathbr@brokenrel{#1}} \rmathbr@ReDeclareRobustCommandI{\brokenbin}{\rmathbr@brokenbin{#1}} \rmathbr@ReDeclareRobustCommandI{\brokeninner}{\rmathbr@brokeninner{#1}}% \let\rmathbr@save@brokenrel=\brokenrel \let\rmathbr@save@brokenbin@on=\brokenbin \let\rmathbr@save@brokenbin=\brokenbin \let\rmathbr@save@brokeninner=\brokeninner \def\rmathbr@brokenbinon{% \let\rmathbr@save@brokenbin=\rmathbr@save@brokenbin@on \ifx\brokenbin\@firstofone\else \let\brokenbin=\rmathbr@save@brokenbin \fi } \def\rmathbr@brokenbinoff{% \let\rmathbr@save@brokenbin=\mathbin \ifx\brokenbin\@firstofone\else \let\brokenbin=\rmathbr@save@brokenbin \fi } \def\rmathbr@setbrokens{% \let\brokenrel=\rmathbr@save@brokenrel \let\brokenbin=\rmathbr@save@brokenbin \let\brokeninner=\rmathbr@save@brokeninner \let\rmathbr@colontest=\rmathbr@save@colontest } \def\rmathbr@unsetbrokens{% \let\brokenrel=\@firstofone \let\brokenbin=\@firstofone \let\brokeninner=\@firstofone \let\rmathbr@colontest=\rmathbr@colon@std } \def\rmathbr@brokenrel#1{% \def\rmathbr@arg{#1} \let\rmathbr@this=\rmathbr@brokenrel \let\rmathbr@output=\rmathbr@@brokenrel \futurelet\rmathbr@let@token\rmathbr@brokenop% } \def\rmathbr@brokenbin#1{% \def\rmathbr@arg{#1} \let\rmathbr@this=\rmathbr@brokenbin \let\rmathbr@output=\rmathbr@@brokenbin \futurelet\rmathbr@let@token\rmathbr@brokenop% } \def\rmathbr@brokeninner#1{% \def\rmathbr@arg{#1} \let\rmathbr@this=\rmathbr@brokeninner \let\rmathbr@output=\rmathbr@@brokeninner \futurelet\rmathbr@let@token\rmathbr@brokenop% } \def\rmathbr@mathop#1{% \def\rmathbr@arg{#1} \let\rmathbr@this=\rmathbr@mathop \let\rmathbr@output=\rmathbr@@mathop \futurelet\rmathbr@let@token\rmathbr@brokenop% } \def\rmathbr@@brokenrel#1{% \ifnum\lastpenalty=\relpenalty \mathrel{#1} \else \mathrel{#1} \ifx$\rmathbr@let@token \else \begingroup \hyphenpenalty\rmathbr@orig@relpenalty \rmathbr@selector{#1} \endgroup \fi \fi \rmathbr@setbrokens \penalty\relpenalty % } \def\rmathbr@@brokenbin#1{% \ifnum\lastpenalty=\relpenalty \mathbin{#1} \else \mathbin{#1} \ifx$\rmathbr@let@token \else \begingroup \hyphenpenalty\rmathbr@orig@binoppenalty \rmathbr@selector{#1} \endgroup \fi \fi \rmathbr@setbrokens \penalty\binoppenalty % } \def\rmathbr@@brokeninner#1{% \ifnum\lastpenalty=\relpenalty \mathinner{#1} \else \mathinner{#1} \ifx$\rmathbr@let@token \else \begingroup \hyphenpenalty\rmathbr@orig@relpenalty \rmathbr@selector{#1} \endgroup \fi \fi \rmathbr@setbrokens \penalty\relpenalty % } \def\rmathbr@@mathop#1{% \rmathbr@setbrokens #1\nobr % } \def\rmathbr@selector#1{% \mathchoice {\discretionary{}{\hbox{$\m@th\displaystyle#1$}}{}} {\discretionary{}{\hbox{$\m@th\textstyle#1$}}{}} {\discretionary{}{\hbox{$\m@th\scriptstyle#1$}}{}} {\discretionary{}{\hbox{$\m@th\scriptscriptstyle#1$}}{}}% } \def\rmathbr@brokenop{% \ifmmode \rmathbr@unsetbrokens \ifx\rmathbr@subscript@std\rmathbr@let@token \let\@command=\rmathbr@brokenglue \else\ifx\rmathbr@subscript@other\rmathbr@let@token \let\@command=\rmathbr@brokenglue \else\ifx\rmathbr@superscript@std\rmathbr@let@token \let\@command=\rmathbr@brokenglue \else\ifx\rmathbr@superscript@other\rmathbr@let@token \let\@command=\rmathbr@brokenglue \else\ifx\limits\rmathbr@let@token \let\@command=\rmathbr@brokenskip \else\ifx\nolimits\rmathbr@let@token \let\@command=\rmathbr@brokenskip \else\ifx\rmathbr@prime\rmathbr@let@token \let\@command=\rmathbr@brokenskip \else\ifx\relax\rmathbr@let@token \let\@command=\rmathbr@brokenskip \else \let\@command=\rmathbr@output \fi\fi\fi\fi\fi\fi\fi\fi \else \let\@command=\relax \fi \expandafter\@command\expandafter{\rmathbr@arg}% } \def\rmathbr@brokenglue#1#2#3{% \def\rmathbr@temp{#1#2{#3}} \expandafter\rmathbr@this\expandafter{\rmathbr@temp}% } \def\rmathbr@brokenskip#1#2{% \def\rmathbr@temp{#1#2} \expandafter\rmathbr@this\expandafter{\rmathbr@temp}% } \def\rmathbr@setbreakable#1#2{% \begingroup \ifx#1\@undefined \else \edef\rmathbr@orig{rmathbr@orig@\expandafter\@gobble\string#1} \expandafter\ifx\csname\rmathbr@orig\endcsname\relax \expandafter\rmathbr@ReDeclareRobustCommand\expandafter#1\expandafter{% \expandafter#2\expandafter{\csname\rmathbr@orig\endcsname}} \fi \fi \endgroup% } \def\rmathbr@nobrafter#1{% \begingroup \ifx#1\@undefined \else \edef\rmathbr@orig{rmathbr@orig@\expandafter\@gobble\string#1} \expandafter\ifx\csname\rmathbr@orig\endcsname\relax \expandafter\rmathbr@ReDeclareRobustCommand\expandafter#1\expandafter{% \csname\rmathbr@orig\endcsname\nobr} \fi \fi \endgroup% } \def\rmathbr@unsetbroken#1{ \begingroup \ifx#1\@undefined \else \edef\rmathbr@orig{rmathbr@orig@\expandafter\@gobble\string#1} \expandafter\ifx\csname\rmathbr@orig\endcsname\relax \else \expandafter\global\expandafter\let\expandafter#1\csname\rmathbr@orig\endcsname \expandafter\global\expandafter\let\csname\rmathbr@orig\endcsname=\undefined \fi \fi \endgroup% } \def\rmathbr@patch@commands{% \rmathbr@makeactivemath{`\=}{\brokenrel}{\mathchar12349} \rmathbr@makeactivemath{`\<}{\brokenrel}{\mathchar12604} \rmathbr@makeactivemath{`\>}{\brokenrel}{\mathchar12606} \rmathbr@makeactivemath{`\+}{\brokenbin}{\mathchar8235} \ifrmathbr@kv@brokenminus \rmathbr@makeactivemath{`\-}{\brokenbin}{\mathchar8704} \fi \rmathbr@makeactivemath{`\*}{\brokenbin}{\mathchar8707} \rmathbr@makeactivemathopen{`\(} \rmathbr@makeactivemathopen{`\[} \@ifpackageloaded{icomma}{% \expandafter\def\expandafter\sm@rtcomma\expandafter{\sm@rtcomma\nobr} }{ \ifx\domathcomma\@undefined% \rmathbr@makeactivemathpunct{`\,}{\mathchar24891} \else% \expandafter\def\expandafter\domathcomma\expandafter{\domathcomma\nobr} \fi } \@ifpackageloaded{program}{% \begingroup \catcode`\;\active \lccode`\~=`\;% \lowercase{\gdef~}{\ifmmode\semicolon\;\nobr\else\@semicolon\fi} \endgroup }{ \rmathbr@makeactivemathpunct{`\;}{\mathchar24635} } \begingroup% \catcode`\:\active% \lccode`\~=`\:% \lowercase{\gdef~}{\rmathbr@colontest}% \endgroup \def\rmathbr@colontest{\futurelet\rmathbr@let@token\rmathbr@do@colontest} \def\rmathbr@do@colontest{% \ifx=\rmathbr@let@token \expandafter\rmathbr@letsign \else \expandafter\rmathbr@colon \fi }% \rmathbr@checkmathchar{`\:} \ifrmathbr@activemathchar \PackageWarning{rmathbr}{Redeclare active math `\: symbol to default mathchar value} \def\rmathbr@colon@std{\mathchar12346} \ifrmathbr@kv@brokencolon \def\rmathbr@colon{\brokenbin{\rmathbr@colon@std}} \else \def\rmathbr@colon{\mathbin{\rmathbr@colon@std}} \fi \def\rmathbr@letsign##1{\brokenrel{\rmathbr@colon@std\mathchar12349}} \else \edef\rmathbr@colon@std{\rmathbr@mathchar{`\:}} \ifrmathbr@kv@brokencolon \def\rmathbr@colon{\brokenbin{\rmathbr@colon@std}} \else \def\rmathbr@colon{\mathbin{\rmathbr@colon@std}} \fi \edef\rmathbr@letsign##1{\noexpand\brokenrel{\rmathbr@colon@std\rmathbr@mathchar{`\=}}} \fi \let\rmathbr@save@colontest=\rmathbr@colontest% \@ifpackageloaded{unicode-math}{ \begingroup \def\UnicodeMathSymbol##1##2##3##4{% \ifnum\number##1>127\relax \expandafter\let\expandafter\@char\Uchar\number##1\relax \ifx\@char##2\relax \let\cmd\relax \ifx##3\mathrel \def\cmd{\brokenrel} \else\ifx##3\mathbin \def\cmd{\brokenbin} \else\ifx##3\mathop \def\cmd{\rmathbr@mathop} \else\ifx##3\mathpunct \let\cmd=\nobr \fi\fi\fi\fi \ifx\cmd\relax\else \edef\var@orig@name{rmathbr@orig@\expandafter\@gobble\string##2} \expandafter\def\expandafter\var@orig\expandafter{\csname\var@orig@name\endcsname} \rmathbr@checkmathchar{\number##1} \ifrmathbr@activemathchar \begingroup \lccode`~=\number##1 \catcode\number##1\active \lowercase{\endgroup\expandafter\global\expandafter\let\var@orig~} \else \expandafter\xdef\var@orig{\rmathbr@mathchar{\number##1}} \global\mathcode\number##1="8000 \fi \ifx\cmd\nobr \edef\@tempa{\expandafter\noexpand\var@orig\noexpand\nobr} \else \edef\@tempa{\expandafter\noexpand\cmd{\expandafter\noexpand\var@orig}} \fi \begingroup \lccode`~=\number##1 \catcode\number##1\active \lowercase{\endgroup\expandafter\gdef\expandafter~\expandafter}{\@tempa} \fi \fi \fi } \let\par=\relax \catcode`\"=12 \@@input{unicode-math-table.tex} \endgroup \ifnum\rmathbr@kv@scriptsmode>0\relax \rmathbr@unicodemath@primes@patch \fi }{} \rmathbr@ReDeclareRobustCommandI{\not}{% \begingroup \edef\rmathbr@orig{rmathbr@orig@\expandafter\@gobble\string##1} \expandafter\let\expandafter\rmathbr@origmacro\csname\rmathbr@orig\endcsname \ifx\rmathbr@origmacro##1\relax \begingroup \let##1=\rmathbr@origmacro \brokenrel{\rmathbr@orig@not##1} \endgroup \else \brokenrel{\rmathbr@orig@not##1} \fi \endgroup% } \rmathbr@ReDeclareRobustCommandI{\bigl}{\rmathbr@mathop{\mathopen\big##1}} \rmathbr@ReDeclareRobustCommandI{\Bigl}{\rmathbr@mathop{\mathopen\Big##1}} \rmathbr@ReDeclareRobustCommandI{\biggl}{\rmathbr@mathop{\mathopen\bigg##1}} \rmathbr@ReDeclareRobustCommandI{\Biggl}{\rmathbr@mathop{\mathopen\Bigg##1}} \SetOpenBracket{\lmoustache} \SetOpenBracket{\langle} \SetOpenBracket{\lbrace} \SetOpenBracket{\lceil} \SetOpenBracket{\lfloor} \SetOpenBracket{\lgroup} \SetOpenBracket{\lvert} \SetOpenBracket{\lVert} \SetOpenBracket{\ulcorner} \SetOpenBracket{\llcorner} \SetOpenBracket{\Lbrack} \SetMathOperator{\coprod} \SetMathOperator{\bigvee} \SetMathOperator{\bigwedge} \SetMathOperator{\biguplus} \SetMathOperator{\bigcap} \SetMathOperator{\bigcup} \SetMathOperator{\int} \SetMathOperator{\prod} \SetMathOperator{\sum} \SetMathOperator{\bigotimes} \SetMathOperator{\bigoplus} \SetMathOperator{\bigodot} \SetMathOperator{\oint} \SetMathOperator{\bigsqcup} \SetMathOperator{\smallint} \SetPunctuation{\ldotp} \SetPunctuation{\cdotp} \SetPunctuation{\colon} \SetPunctuation{\period} \SetBreakableBin{\triangleleft} \SetBreakableBin{\triangleright} \SetBreakableBin{\bigtriangleup} \SetBreakableBin{\bigtriangledown} \SetBreakableBin{\wedge} \SetBreakableBin{\land} \SetBreakableBin{\vee} \SetBreakableBin{\lor} \SetBreakableBin{\cap} \SetBreakableBin{\cup} \SetBreakableBin{\ddagger} \SetBreakableBin{\dagger} \SetBreakableBin{\sqcap} \SetBreakableBin{\sqcup} \SetBreakableBin{\uplus} \SetBreakableBin{\amalg} \SetBreakableBin{\diamond} \SetBreakableBin{\bullet} \SetBreakableBin{\wr} \SetBreakableBin{\div} \SetBreakableBin{\odot} \SetBreakableBin{\oslash} \SetBreakableBin{\otimes} \SetBreakableBin{\ominus} \SetBreakableBin{\oplus} \SetBreakableBin{\mp} \SetBreakableBin{\pm} \SetBreakableBin{\circ} \SetBreakableBin{\bigcirc} \SetBreakableBin{\setminus} \SetBreakableBin{\ast} \SetBreakableBin{\star} \SetBreakableBin{\times} \SetBreakableBin{\cdot} \def\rmathbr@cdott{% $\begingroup\hyphenpenalty\rmathbr@orig@binoppenalty\discretionary% {\hbox{$\m@th\rmathbr@orig@times$}}% {\hbox{$\m@th\rmathbr@orig@times$}}% {\hbox{$\m@th\mkern\medmuskip\rmathbr@orig@cdot\mkern\medmuskip$}}\endgroup$ } \def\cdott{% \ifmmode \ifetex \ifinner% \ifnum\currentgrouptype=15\relax \rmathbr@cdott \else \rmathbr@orig@cdot \fi \else \rmathbr@orig@cdot \fi \else \rmathbr@cdott \fi \else \rmathbr@orig@cdot \fi } \ifrmathbr@kv@cdottimes \let\cdot\cdott \fi \def\*{\mathbin{}% \begingroup% \hyphenpenalty\rmathbr@orig@binoppenalty% \mathchoice{% \discretionary{\hbox{$\m@th\displaystyle\mkern\thinmuskip\times$}}% {\hbox{$\m@th\displaystyle\times\mkern\thinmuskip$}}{}% }{% \discretionary{\hbox{$\m@th\textstyle\mkern\thinmuskip\times$}}% {\hbox{$\m@th\textstyle\times\mkern\thinmuskip$}}{}% }{% \discretionary{\hbox{$\m@th\scriptstyle\mkern\thinmuskip\times$}}% {\hbox{$\m@th\scriptstyle\times\mkern\thinmuskip$}}{}% }{% \discretionary{\hbox{$\m@th\scriptscriptstyle\mkern\thinmuskip\times$}}% {\hbox{$\m@th\scriptscriptstyle\times\mkern\thinmuskip$}}{}% }% \endgroup% \penalty\binoppenalty% } \SetBreakableRel{\propto} \SetBreakableRel{\sqsubseteq} \SetBreakableRel{\sqsupseteq} \SetBreakableRel{\parallel} \SetBreakableRel{\mid} \SetBreakableRel{\dashv} \SetBreakableRel{\vdash} \SetBreakableRel{\leq} \SetBreakableRel{\le} \SetBreakableRel{\geq} \SetBreakableRel{\ge} \SetBreakableRel{\succ} \SetBreakableRel{\prec} \SetBreakableRel{\approx} \SetBreakableRel{\succeq} \SetBreakableRel{\preceq} \SetBreakableRel{\supset} \SetBreakableRel{\subset} \SetBreakableRel{\supseteq} \SetBreakableRel{\subseteq} \SetBreakableRel{\in} \SetBreakableRel{\ni} \SetBreakableRel{\owns} \SetBreakableRel{\gg} \SetBreakableRel{\ll} \SetBreakableRel{\sim} \SetBreakableRel{\simeq} \SetBreakableRel{\perp} \SetBreakableRel{\equiv} \SetBreakableRel{\asymp} \SetBreakableRel{\smile} \SetBreakableRel{\frown} \SetBreakableRel{\models} \SetBreakableRel{\cong} \SetBreakableRel{\notin} \SetBreakableRel{\doteq} \SetBreakableRel{\bowtie} \SetBreakableRel{\neq} % Works well without \SetBreakableRel \SetBreakableRel{\ne} % Works well without \SetBreakableRel \SetBreakableRel{\nearrow} \SetBreakableRel{\searrow} \SetBreakableRel{\nwarrow} \SetBreakableRel{\swarrow} \SetBreakableRel{\Leftrightarrow} \SetBreakableRel{\Leftarrow} \SetBreakableRel{\Rightarrow} \SetBreakableRel{\leftrightarrow} \SetBreakableRel{\leftarrow} \SetBreakableRel{\gets} \SetBreakableRel{\rightarrow} \SetBreakableRel{\to} \SetBreakableRel{\leftharpoonup} \SetBreakableRel{\leftharpoondown} \SetBreakableRel{\rightharpoonup} \SetBreakableRel{\rightharpoondown} \SetBreakableRel{\longleftarrow} \SetBreakableRel{\Longleftarrow} \SetBreakableRel{\longrightarrow} \SetBreakableRel{\Longrightarrow} \SetBreakableRel{\longleftrightarrow} \SetBreakableRel{\Longleftrightarrow} \SetBreakableRel{\mapsto} \SetBreakableRel{\longmapsto} \SetBreakableRel{\hookleftarrow} \SetBreakableRel{\hookrightarrow} \SetBreakableRel{\rightleftharpoons} \SetBreakableBin{\lhd} \SetBreakableBin{\unlhd} \SetBreakableBin{\rhd} \SetBreakableBin{\unrhd} \SetBreakableRel{\Join} \SetBreakableRel{\leadsto} \SetBreakableRel{\sqsubset} \SetBreakableRel{\sqsupset} \@ifpackageloaded{amsfonts}{ \SetBreakableRel{\dashrightarrow} \SetBreakableRel{\dasharrow} \SetBreakableRel{\dashleftarrow} \SetBreakableRel{\vartriangleright} \SetBreakableRel{\vartriangleleft} \SetBreakableRel{\trianglerighteq} \SetBreakableRel{\trianglelefteq} \SetBreakableRel{\rightsquigarrow} \SetBreakableRel{\leadsto} }{} \@ifpackageloaded{amssymb}{ \SetBreakableBin{\boxdot} \SetBreakableBin{\boxplus} \SetBreakableBin{\boxtimes} \SetBreakableBin{\centerdot} \SetBreakableBin{\boxminus} \SetBreakableBin{\veebar} \SetBreakableBin{\barwedge} \SetBreakableBin{\doublebarwedge} \SetBreakableBin{\Cup} \SetBreakableBin{\doublecup} \SetBreakableBin{\Cap} \SetBreakableBin{\doublecap} \SetBreakableBin{\curlywedge} \SetBreakableBin{\curlyvee} \SetBreakableBin{\leftthreetimes} \SetBreakableBin{\rightthreetimes} \SetBreakableBin{\dotplus} \SetBreakableBin{\intercal} \SetBreakableBin{\circledcirc} \SetBreakableBin{\circledast} \SetBreakableBin{\circleddash} \SetBreakableBin{\divideontimes} \SetBreakableBin{\lessdot} \SetBreakableBin{\gtrdot} \SetBreakableBin{\ltimes} \SetBreakableBin{\rtimes} \SetBreakableBin{\smallsetminus} \SetBreakableRel{\circlearrowright} \SetBreakableRel{\circlearrowleft} \SetBreakableRel{\leftrightharpoons} \SetBreakableRel{\Vdash} \SetBreakableRel{\Vvdash} \SetBreakableRel{\vDash} \SetBreakableRel{\twoheadrightarrow} \SetBreakableRel{\twoheadleftarrow} \SetBreakableRel{\leftleftarrows} \SetBreakableRel{\rightrightarrows} \SetBreakableRel{\upuparrows} \SetBreakableRel{\downdownarrows} \SetBreakableRel{\upharpoonright} \SetBreakableRel{\restriction} \SetBreakableRel{\downharpoonright} \SetBreakableRel{\upharpoonleft} \SetBreakableRel{\downharpoonleft} \SetBreakableRel{\rightarrowtail} \SetBreakableRel{\leftarrowtail} \SetBreakableRel{\leftrightarrows} \SetBreakableRel{\rightleftarrows} \SetBreakableRel{\Lsh} \SetBreakableRel{\Rsh} \SetBreakableRel{\rightsquigarrow} \SetBreakableRel{\leftrightsquigarrow} \SetBreakableRel{\looparrowleft} \SetBreakableRel{\looparrowright} \SetBreakableRel{\circeq} \SetBreakableRel{\succsim} \SetBreakableRel{\gtrsim} \SetBreakableRel{\gtrapprox} \SetBreakableRel{\multimap} \SetBreakableRel{\therefore} \SetBreakableRel{\because} \SetBreakableRel{\doteqdot} \SetBreakableRel{\Doteq} \SetBreakableRel{\triangleq} \SetBreakableRel{\precsim} \SetBreakableRel{\lesssim} \SetBreakableRel{\lessapprox} \SetBreakableRel{\eqslantless} \SetBreakableRel{\eqslantgtr} \SetBreakableRel{\curlyeqprec} \SetBreakableRel{\curlyeqsucc} \SetBreakableRel{\preccurlyeq} \SetBreakableRel{\leqq} \SetBreakableRel{\leqslant} \SetBreakableRel{\lessgtr} \SetBreakableRel{\risingdotseq} \SetBreakableRel{\fallingdotseq} \SetBreakableRel{\succcurlyeq} \SetBreakableRel{\geqq} \SetBreakableRel{\geqslant} \SetBreakableRel{\gtrless} \SetBreakableRel{\vartriangleright} \SetBreakableRel{\vartriangleleft} \SetBreakableRel{\trianglerighteq} \SetBreakableRel{\trianglelefteq} \SetBreakableRel{\between} \SetBreakableRel{\blacktriangleright} \SetBreakableRel{\blacktriangleleft} \SetBreakableRel{\vartriangle} \SetBreakableRel{\eqcirc} \SetBreakableRel{\lesseqgtr} \SetBreakableRel{\gtreqless} \SetBreakableRel{\lesseqqgtr} \SetBreakableRel{\gtreqqless} \SetBreakableRel{\Rrightarrow} \SetBreakableRel{\Lleftarrow} \SetBreakableRel{\varpropto} \SetBreakableRel{\smallsmile} \SetBreakableRel{\smallfrown} \SetBreakableRel{\Subset} \SetBreakableRel{\Supset} \SetBreakableRel{\subseteqq} \SetBreakableRel{\supseteqq} \SetBreakableRel{\bumpeq} \SetBreakableRel{\Bumpeq} \SetBreakableRel{\lll} \SetBreakableRel{\llless} \SetBreakableRel{\ggg} \SetBreakableRel{\gggtr} \SetBreakableRel{\pitchfork} \SetBreakableRel{\backsim} \SetBreakableRel{\backsimeq} \SetBreakableRel{\lvertneqq} \SetBreakableRel{\gvertneqq} \SetBreakableRel{\nleq} \SetBreakableRel{\ngeq} \SetBreakableRel{\nless} \SetBreakableRel{\ngtr} \SetBreakableRel{\nprec} \SetBreakableRel{\nsucc} \SetBreakableRel{\lneqq} \SetBreakableRel{\gneqq} \SetBreakableRel{\nleqslant} \SetBreakableRel{\ngeqslant} \SetBreakableRel{\lneq} \SetBreakableRel{\gneq} \SetBreakableRel{\npreceq} \SetBreakableRel{\nsucceq} \SetBreakableRel{\precnsim} \SetBreakableRel{\succnsim} \SetBreakableRel{\lnsim} \SetBreakableRel{\gnsim} \SetBreakableRel{\nleqq} \SetBreakableRel{\ngeqq} \SetBreakableRel{\precneqq} \SetBreakableRel{\succneqq} \SetBreakableRel{\precnapprox} \SetBreakableRel{\succnapprox} \SetBreakableRel{\lnapprox} \SetBreakableRel{\gnapprox} \SetBreakableRel{\nsim} \SetBreakableRel{\ncong} \SetBreakableRel{\varsubsetneq} \SetBreakableRel{\varsupsetneq} \SetBreakableRel{\nsubseteqq} \SetBreakableRel{\nsupseteqq} \SetBreakableRel{\subsetneqq} \SetBreakableRel{\supsetneqq} \SetBreakableRel{\varsubsetneqq} \SetBreakableRel{\varsupsetneqq} \SetBreakableRel{\subsetneq} \SetBreakableRel{\supsetneq} \SetBreakableRel{\nsubseteq} \SetBreakableRel{\nsupseteq} \SetBreakableRel{\nparallel} \SetBreakableRel{\nmid} \SetBreakableRel{\nshortmid} \SetBreakableRel{\nshortparallel} \SetBreakableRel{\nvdash} \SetBreakableRel{\nVdash} \SetBreakableRel{\nvDash} \SetBreakableRel{\nVDash} \SetBreakableRel{\ntrianglerighteq} \SetBreakableRel{\ntrianglelefteq} \SetBreakableRel{\ntriangleleft} \SetBreakableRel{\ntriangleright} \SetBreakableRel{\nleftarrow} \SetBreakableRel{\nrightarrow} \SetBreakableRel{\nLeftarrow} \SetBreakableRel{\nRightarrow} \SetBreakableRel{\nLeftrightarrow} \SetBreakableRel{\nleftrightarrow} \SetBreakableRel{\eqsim} \SetBreakableRel{\shortmid} \SetBreakableRel{\shortparallel} \SetBreakableRel{\thicksim} \SetBreakableRel{\thickapprox} \SetBreakableRel{\approxeq} \SetBreakableRel{\succapprox} \SetBreakableRel{\precapprox} \SetBreakableRel{\curvearrowleft} \SetBreakableRel{\curvearrowright} \SetBreakableRel{\backepsilon} }{} \@ifpackageloaded{amstex}{ \SetBreakableRel{\vartriangleright} \SetBreakableRel{\rhd} \SetBreakableRel{\vartriangleleft} \SetBreakableRel{\lhd} \SetBreakableRel{\trianglerighteq} \SetBreakableRel{\unrhd} \SetBreakableRel{\trianglelefteq} \SetBreakableRel{\unlhd} \SetBreakableRel{\rightsquigarrow} \SetBreakableRel{\leadsto} }{} \@ifpackageloaded{boisik}{ \SetMathOperator{\intup} \SetOpenBracket{\binampersand} \SetBreakableRel{\upharpoonright} \SetBreakableRel{\downharpoonright} \SetBreakableRel{\upharpoonleft} \SetBreakableRel{\downharpoonleft} \SetBreakableRel{\leftrightarrows} \SetBreakableRel{\rightleftarrows} \SetBreakableRel{\leftrightharpoons} \SetBreakableRel{\leftleftarrows} \SetBreakableRel{\rightrightarrows} \SetBreakableRel{\upuparrows} \SetBreakableRel{\downdownarrows} \SetBreakableRel{\twoheadrightarrow} \SetBreakableRel{\twoheadleftarrow} \SetBreakableRel{\rightarrowtail} \SetBreakableRel{\leftarrowtail} \SetBreakableRel{\rightsquigarrow} \SetBreakableRel{\leftrightsquigarrow} \SetBreakableRel{\Lsh} \SetBreakableRel{\Rsh} \SetBreakableRel{\looparrowleft} \SetBreakableRel{\looparrowright} \SetBreakableRel{\circlearrowright} \SetBreakableRel{\circlearrowleft} \SetBreakableRel{\curvearrowleft} \SetBreakableRel{\curvearrowright} \SetBreakableRel{\nleftarrow} \SetBreakableRel{\nrightarrow} \SetBreakableRel{\nleftrightarrow} \SetBreakableRel{\nLeftarrow} \SetBreakableRel{\nRightarrow} \SetBreakableRel{\nLeftrightarrow} \SetBreakableRel{\Lleftarrow} \SetBreakableRel{\Rrightarrow} \SetBreakableRel{\nLeftrightarroW} % \SetBreakableRel{\lhook} % \SetBreakableRel{\rhook} \SetBreakableRel{\multimap} \SetBreakableRel{\multimapdot} \SetBreakableRel{\therefore} \SetBreakableRel{\because} \SetBreakableRel{\between} \SetBreakableRel{\Vdash} \SetBreakableRel{\Vvdash} \SetBreakableRel{\VDash} \SetBreakableRel{\vDash} \SetBreakableRel{\smallsmile} \SetBreakableRel{\smallfrown} \SetBreakableRel{\shortmid} \SetBreakableRel{\shortparallel} \SetBreakableRel{\thickapprox} \SetBreakableBin{\divideontimes} \SetBreakableBin{\lessdot} \SetBreakableBin{\gtrdot} \SetBreakableRel{\bumpeq} \SetBreakableRel{\Bumpeq} \SetBreakableRel{\leqslant} \SetBreakableRel{\geqslant} \SetBreakableRel{\eqslantless} \SetBreakableRel{\eqslantgtr} \SetBreakableRel{\curlyeqprec} \SetBreakableRel{\curlyeqsucc} \SetBreakableRel{\preccurlyeq} \SetBreakableRel{\succcurlyeq} \SetBreakableRel{\thicksim} \SetBreakableRel{\backsim} \SetBreakableRel{\eqsim} \SetBreakableRel{\backsimeq} \SetBreakableBin{\ltimes} \SetBreakableBin{\rtimes} \SetBreakableRel{\lll} \SetBreakableRel{\llless} \SetBreakableRel{\ggg} \SetBreakableRel{\gggtr} \SetBreakableRel{\triangleq} \SetBreakableRel{\circeq} \SetBreakableRel{\eqcirc} \SetBreakableRel{\doteqdot} \SetBreakableRel{\Doteq} \SetBreakableRel{\risingdotseq} \SetBreakableRel{\fallingdotseq} \SetBreakableRel{\varpropto} \SetBreakableRel{\vartriangleright} \SetBreakableRel{\vartriangleleft} \SetBreakableRel{\trianglerighteq} \SetBreakableRel{\trianglelefteq} \SetBreakableRel{\blacktriangleright} \SetBreakableRel{\blacktriangleleft} \SetBreakableRel{\vartriangle} \SetBreakableBin{\centerdot} \SetBreakableBin{\boxplus} \SetBreakableBin{\boxminus} \SetBreakableBin{\boxtimes} \SetBreakableBin{\boxdot} \SetBreakableBin{\circledcirc} \SetBreakableBin{\circledast} \SetBreakableBin{\circleddash} \SetBreakableBin{\intercal} \SetBreakableRel{\prurel} \SetBreakableRel{\scurel} \SetBreakableRel{\disin} \SetBreakableRel{\nisd} \SetBreakableRel{\fatslash} \SetBreakableRel{\fatbslash} \SetBreakableRel{\nequiv} \SetBreakableRel{\bagmember} \SetBreakableRel{\lvertneqq} \SetBreakableRel{\gvertneqq} \SetBreakableRel{\nleq} \SetBreakableRel{\ngeq} \SetBreakableRel{\nless} \SetBreakableRel{\ngtr} \SetBreakableRel{\nprec} \SetBreakableRel{\nsucc} \SetBreakableRel{\lneqq} \SetBreakableRel{\gneqq} \SetBreakableRel{\nleqslant} \SetBreakableRel{\ngeqslant} \SetBreakableRel{\lneq} \SetBreakableRel{\gneq} \SetBreakableRel{\npreceq} \SetBreakableRel{\nsucceq} \SetBreakableRel{\nleqq} \SetBreakableRel{\ngeqq} \SetBreakableRel{\lnsim} \SetBreakableRel{\gnsim} \SetBreakableRel{\precnsim} \SetBreakableRel{\succnsim} \SetBreakableRel{\precneqq} \SetBreakableRel{\succneqq} \SetBreakableRel{\nsim} \SetBreakableRel{\ncong} \SetBreakableRel{\lnapprox} \SetBreakableRel{\gnapprox} \SetBreakableRel{\precnapprox} \SetBreakableRel{\succnapprox} \SetBreakableRel{\nsubset} \SetBreakableRel{\nsupset} \SetBreakableRel{\varsubsetneq} \SetBreakableRel{\varsupsetneq} \SetBreakableRel{\nsubseteqq} \SetBreakableRel{\nsupseteqq} \SetBreakableRel{\subsetneqq} \SetBreakableRel{\supsetneqq} \SetBreakableRel{\varsubsetneqq} \SetBreakableRel{\varsupsetneqq} \SetBreakableRel{\subsetneq} \SetBreakableRel{\supsetneq} \SetBreakableRel{\nsubseteq} \SetBreakableRel{\nsupseteq} \SetBreakableRel{\nparallel} \SetBreakableRel{\nmid} \SetBreakableRel{\nshortmid} \SetBreakableRel{\nshortparallel} \SetBreakableRel{\nvdash} \SetBreakableRel{\nVdash} \SetBreakableRel{\nvDash} \SetBreakableRel{\nVDash} \SetBreakableRel{\ntrianglerighteq} \SetBreakableRel{\ntrianglelefteq} \SetBreakableRel{\ntriangleleft} \SetBreakableRel{\ntriangleright} \SetBreakableRel{\precapprox} \SetBreakableRel{\succapprox} \SetBreakableRel{\precsim} \SetBreakableRel{\succsim} \SetBreakableRel{\lesssim} \SetBreakableRel{\gtrsim} \SetBreakableRel{\lessapprox} \SetBreakableRel{\gtrapprox} \SetBreakableRel{\leqq} \SetBreakableRel{\geqq} \SetBreakableRel{\lessgtr} \SetBreakableRel{\gtrless} \SetBreakableRel{\lesseqgtr} \SetBreakableRel{\gtreqless} \SetBreakableRel{\lesseqqgtr} \SetBreakableRel{\gtreqqless} \SetBreakableRel{\Subset} \SetBreakableRel{\Supset} \SetBreakableBin{\Cup} \SetBreakableBin{\doublecup} \SetBreakableBin{\Cap} \SetBreakableBin{\doublecap} \SetBreakableRel{\subseteqq} \SetBreakableRel{\supseteqq} \SetBreakableBin{\curlywedge} \SetBreakableBin{\curlyvee} \SetBreakableBin{\veebar} \SetBreakableBin{\barwedge} \SetBreakableBin{\doublebarwedge} \SetBreakableBin{\leftthreetimes} \SetBreakableBin{\rightthreetimes} \SetBreakableBin{\smallsetminus} \SetBreakableRel{\approxeq} \SetBreakableBin{\dotplus} \SetBreakableRel{\pitchfork} \SetBreakableBin{\oblong} \SetBreakableBin{\talloblong} \SetBreakableBin{\sslash} \SetBreakableBin{\bbslash} \SetBreakableRel{\hash} \SetBreakableRel{\varhash} \SetBreakableBin{\convolution} \SetBreakableBin{\coAsterisk} \SetBreakableRel{\veeeq} \SetBreakableRel{\corresponds} \SetBreakableRel{\arceq} \SetBreakableRel{\CircledEq} \SetBreakableRel{\eqbumped} \SetBreakableRel{\dotminus} \SetBreakableRel{\kernelcontraction} \SetBreakableRel{\dotsim} \SetBreakableRel{\simrdots} \SetBreakableBin{\circplus} \SetBreakableBin{\dottimes} \SetBreakableBin{\vartimes} \SetBreakableBin{\merge} \SetBreakableBin{\veeonvee} \SetBreakableBin{\obslash} \SetBreakableBin{\otop} \SetBreakableBin{\obot} \SetBreakableBin{\oleft} \SetBreakableBin{\oright} \SetBreakableBin{\obar} \SetBreakableBin{\otriangle} \SetBreakableBin{\olessthan} \SetBreakableBin{\ogreaterthan} \SetBreakableBin{\ovee} \SetBreakableBin{\owedge} \SetBreakableBin{\boxbslash} \SetBreakableBin{\boxtop} \SetBreakableBin{\boxbot} \SetBreakableBin{\boxleft} \SetBreakableBin{\boxright} \SetBreakableBin{\boxbar} \SetBreakableBin{\boxslash} \SetBreakableBin{\boxtriangle} \SetBreakableBin{\boxast} \SetBreakableBin{\boxcircle} \SetBreakableBin{\boxdivision} \SetBreakableBin{\boxbox} \SetBreakableBin{\diamondop} \SetBreakableBin{\diamondminus} \SetBreakableBin{\diamondbar} \SetBreakableBin{\diamondtimes} \SetBreakableBin{\diamondplus} \SetBreakableBin{\diamondtriangle} \SetBreakableBin{\diamondcircle} \SetBreakableBin{\cupleftarrow} \SetBreakableBin{\varcup} \SetBreakableBin{\varcap} \SetBreakableBin{\varsqcup} \SetBreakableBin{\varsqcap} \SetBreakableRel{\sqSubset} \SetBreakableRel{\sqSupset} \SetBreakableRel{\inplus} \SetBreakableRel{\niplus} \SetBreakableRel{\varisins} \SetBreakableRel{\varnis} \SetBreakableRel{\subsetplus} \SetBreakableRel{\supsetplus} \SetBreakableRel{\subsetpluseq} \SetBreakableRel{\supsetpluseq} \SetBreakableBin{\nplus} \SetBreakableBin{\squplus} \SetBreakableRel{\multimapboth} \SetBreakableRel{\multimapdotboth} \SetBreakableRel{\multimapdotbothB} \SetBreakableRel{\multimapdotbothA} \SetBreakableRel{\multimapinv} \SetBreakableRel{\multimapdotinv} \SetBreakableRel{\multimapbothvert} \SetBreakableRel{\multimapdotbothvert} \SetBreakableRel{\multimapdotbothBvert} \SetBreakableRel{\multimapdotbothAvert} \SetBreakableRel{\dfourier} \SetBreakableRel{\Dfourier} \SetBreakableRel{\ztransf} \SetBreakableRel{\Ztransf} \SetBreakableRel{\Lt} \SetBreakableRel{\Gt} \SetBreakableBin{\leftslice} \SetBreakableBin{\rightslice} \SetBreakableRel{\trianglelefteqslant} \SetBreakableRel{\trianglerighteqslant} \SetBreakableBin{\Ydown} \SetBreakableBin{\Yup} \SetBreakableBin{\Yleft} \SetBreakableBin{\Yright} \SetBreakableRel{\dashVv} \SetBreakableRel{\DashV} \SetBreakableRel{\DashV} \SetBreakableRel{\dashV} \SetBreakableBin{\lbag} \SetBreakableBin{\rbag} \SetBreakableRel{\Perp} \SetBreakableBin{\moo} \SetBreakableBin{\baro} \SetBreakableBin{\pluscirc} \SetBreakableBin{\minuso} \SetBreakableRel{\llcurly} \SetBreakableRel{\ggcurly} \SetBreakableRel{\strictfi} \SetBreakableRel{\strictif} \SetBreakableRel{\ac} \SetBreakableBin{\varintercal} \SetBreakableRel{\equalparallel} \SetBreakableBin{\plustrif} \SetBreakableBin{\smashtimes} \SetBreakableRel{\ltcir} \SetBreakableRel{\gtcir} \SetBreakableRel{\glj} \SetBreakableBin{\Vee} \SetBreakableBin{\Wedge} \SetBreakableBin{\fatsemi} \SetBreakableRel{\forkv} \SetBreakableRel{\topfork} \SetBreakableRel{\twoheaduparrow} \SetBreakableRel{\twoheaddownarrow} \SetBreakableRel{\mapsfrom} \SetBreakableRel{\mapsup} \SetBreakableRel{\mapsdown} \SetBreakableRel{\nVleftarrow} \SetBreakableRel{\nVrightarrow} \SetBreakableRel{\rightarrowcircle} \SetBreakableRel{\nwarrowcorner} \SetBreakableRel{\nearrowcorner} \SetBreakableRel{\barovernorthwestarrow} \SetBreakableRel{\carriagereturn} \SetBreakableRel{\linefeed} \SetBreakableRel{\leftzigzagarrow} \SetBreakableRel{\Nwarrow} \SetBreakableRel{\Nearrow} \SetBreakableRel{\Swarrow} \SetBreakableRel{\Searrow} \SetBreakableRel{\nHuparrow} \SetBreakableRel{\nHdownarrow} \SetBreakableRel{\updownarrowbar} \SetBreakableRel{\barleftarrow} \SetBreakableRel{\rightarrowbar} \SetBreakableRel{\leftsquigarrow} \SetBreakableRel{\rightsquigarrow} \SetBreakableRel{\leftrightsquigarrow} \SetBreakableRel{\downzigzagarrow} \SetBreakableRel{\rightthreearrows} \SetBreakableRel{\barleftarrowrightarrowbar} \SetBreakableRel{\leftdasharrow} \SetBreakableRel{\rightdasharrow} \SetBreakableRel{\updasharrow} \SetBreakableRel{\downdasharrow} \SetBreakableRel{\upwhitearrow} \SetBreakableRel{\downwhitearrow} \SetBreakableRel{\whitearrowupfrombar} \SetBreakableRel{\whitearrowuppedestal} \SetBreakableRel{\whitearrowuppedestalhbar} \SetBreakableRel{\whitearrowuppedestalvbar} \SetBreakableRel{\twoheadwhiteuparrow} \SetBreakableRel{\twoheadwhiteuparrowpedestal} \SetBreakableRel{\updownwhitearrow} \SetBreakableRel{\leftblackarrow} \SetBreakableRel{\rightblackarrow} \SetBreakableRel{\upblackarrow} \SetBreakableRel{\downblackarrow} \SetBreakableRel{\leftrightblackarrow} \SetBreakableRel{\updownblackarrow} \SetBreakableRel{\curlyveeuparrow} \SetBreakableRel{\curlyveedownarrow} \SetBreakableRel{\curlywedgeuparrow} \SetBreakableRel{\curlywedgedownarrow} \SetBreakableRel{\Mapsfrom} \SetBreakableRel{\Mapsto} \SetBreakableRel{\leftwhitearrow} \SetBreakableRel{\rightwhitearrow} \SetBreakableRel{\leftwhiteroundarrow} \SetBreakableRel{\rightwhiteroundarrow} \SetBreakableRel{\righttoleftarrow} \SetBreakableRel{\lefttorightarrow} \SetBreakableRel{\looparrowdownleft} \SetBreakableRel{\looparrowdownright} \SetBreakableRel{\uptodownarrow} \SetBreakableRel{\downtouparrow} \SetBreakableRel{\nnearrow} \SetBreakableRel{\ssearrow} \SetBreakableRel{\nnwarrow} \SetBreakableRel{\sswarrow} \SetBreakableRel{\curvearrowleft} \SetBreakableRel{\curvearrowright} \SetBreakableRel{\curvearrowleftright} \SetBreakableRel{\curvearrowbotleft} \SetBreakableRel{\curvearrowbotright} \SetBreakableRel{\curvearrowbotleftright} \SetBreakableRel{\leftrightarroweq} \SetBreakableRel{\eqleftrightarrow} \SetBreakableRel{\dlsh} \SetBreakableRel{\drsh} \SetBreakableRel{\leftarrowTriangle} \SetBreakableRel{\rightarrowTriangle} \SetBreakableRel{\leftrightarrowTriangle} \SetBreakableRel{\leftarrowtriangle} \SetBreakableRel{\rightarrowtriangle} \SetBreakableRel{\leftrightarrowtriangle} }{} \@ifpackageloaded{euler}{% euler \SetBreakableRel{\uparrow} \SetBreakableRel{\downarrow} \SetBreakableRel{\updownarrow} \SetBreakableRel{\Uparrow} \SetBreakableRel{\Downarrow} \SetBreakableRel{\Updownarrow} % \SetBreakableRel{\lhook} % \SetBreakableRel{\rhook} }{} \@ifpackageloaded{fourier}{ \SetMathOperator{\iint} \SetMathOperator{\iiint} \SetMathOperator{\oiint} \SetMathOperator{\oiiint} \SetMathOperator{\slashint} \SetOpenBracket{\llbracket} \SetBreakableRel{\leqslant} \SetBreakableRel{\geqslant} \SetBreakableRel{\parallelslant} \SetBreakableRel{\vDash} \SetBreakableRel{\blacktriangleleft} \SetBreakableRel{\blacktriangleright} \SetBreakableRel{\nleqslant} \SetBreakableRel{\ngeqslant} \SetBreakableRel{\nparallel} \SetBreakableRel{\nparallelslant} \SetBreakableRel{\nvDash} \SetBreakableBin{\intercal} \SetBreakableRel{\varsubsetneq} \SetBreakableRel{\notowns} \SetBreakableBin{\smallsetminus} \SetBreakableRel{\subsetneqq} \SetBreakableRel{\rightrightarrows} \SetBreakableRel{\leftleftarrows} \SetBreakableRel{\curvearrowleft} \SetBreakableRel{\curvearrowright} \SetBreakableRel{\Downarrow} }{} \ifnum\@ifpackageloaded{lucbmath}{1}{% \@ifpackageloaded{lucidabr}{1}{% \@ifpackageloaded{lucmin}{1}{% \@ifpackageloaded{lucmtime}{1}{% \@ifpackageloaded{luctime}{1}{0}}}}}=1\relax% \SetMathOperator{\surfint} \SetMathOperator{\midint} \SetMathOperator{\midoint} \SetMathOperator{\midsurfint} \SetMathOperator{\largeint} \SetBreakableRel{\leadsfrom} \SetBreakableRel{\defineequal} \SetBreakableRel{\notequiv} \SetBreakableRel{\notapprox} \SetBreakableRel{\notasymp} \SetBreakableRel{\notsubset} \SetBreakableRel{\notsupset} \SetBreakableRel{\notsim} \SetBreakableRel{\notsubseteq} \SetBreakableRel{\notsupseteq} \SetBreakableRel{\notsimeq} \SetBreakableRel{\notsqsubseteq} \SetBreakableRel{\notsqsupseteq} \SetBreakableRel{\notcong} \SetBreakableRel{\notni} \SetBreakableBin{\boxdot} \SetBreakableBin{\boxplus} \SetBreakableBin{\boxtimes} \SetBreakableBin{\centerdot} \SetBreakableRel{\circlearrowright} \SetBreakableRel{\circlearrowleft} \SetBreakableRel{\leftrightharpoons} \SetBreakableBin{\boxminus} \SetBreakableRel{\Vdash} \SetBreakableRel{\Vvdash} \SetBreakableRel{\vDash} \SetBreakableRel{\twoheadrightarrow} \SetBreakableRel{\twoheadleftarrow} \SetBreakableRel{\leftleftarrows} \SetBreakableRel{\rightrightarrows} \SetBreakableRel{\upuparrows} \SetBreakableRel{\downdownarrows} \SetBreakableRel{\upharpoonright} \SetBreakableRel{\downharpoonright} \SetBreakableRel{\upharpoonleft} \SetBreakableRel{\downharpoonleft} \SetBreakableRel{\rightarrowtail} \SetBreakableRel{\leftarrowtail} \SetBreakableRel{\leftrightarrows} \SetBreakableRel{\rightleftarrows} \SetBreakableRel{\Lsh} \SetBreakableRel{\Rsh} \SetBreakableRel{\rightsquigarrow} \SetBreakableRel{\leftsquigarrow} \SetBreakableRel{\leftrightsquigarrow} \SetBreakableRel{\looparrowleft} \SetBreakableRel{\looparrowright} \SetBreakableRel{\circeq} \SetBreakableRel{\succsim} \SetBreakableRel{\gtrsim} \SetBreakableRel{\gtrapprox} \SetBreakableRel{\multimap} \SetBreakableRel{\image} \SetBreakableRel{\original} \SetBreakableRel{\therefore} \SetBreakableRel{\because} \SetBreakableRel{\doteqdot} \SetBreakableRel{\triangleq} \SetBreakableRel{\precsim} \SetBreakableRel{\lesssim} \SetBreakableRel{\lessapprox} \SetBreakableRel{\eqslantless} \SetBreakableRel{\eqslantgtr} \SetBreakableRel{\curlyeqprec} \SetBreakableRel{\curlyeqsucc} \SetBreakableRel{\preccurlyeq} \SetBreakableRel{\leqq} \SetBreakableRel{\leqslant} \SetBreakableRel{\lessgtr} \SetBreakableRel{\risingdotseq} \SetBreakableRel{\fallingdotseq} \SetBreakableRel{\succcurlyeq} \SetBreakableRel{\geqq} \SetBreakableRel{\geqslant} \SetBreakableRel{\gtrless} \SetBreakableRel{\vartriangleright} \SetBreakableRel{\vartriangleleft} \SetBreakableRel{\trianglerighteq} \SetBreakableRel{\trianglelefteq} \SetBreakableRel{\between} \SetBreakableRel{\blacktriangleright} \SetBreakableRel{\blacktriangleleft} \SetBreakableRel{\vartriangle} \SetBreakableRel{\eqcirc} \SetBreakableRel{\lesseqgtr} \SetBreakableRel{\gtreqless} \SetBreakableRel{\lesseqqgtr} \SetBreakableRel{\gtreqqless} \SetBreakableRel{\Rrightarrow} \SetBreakableRel{\Lleftarrow} \SetBreakableBin{\veebar} \SetBreakableBin{\barwedge} \SetBreakableRel{\varpropto} \SetBreakableRel{\smallsmile} \SetBreakableRel{\smallfrown} \SetBreakableRel{\Subset} \SetBreakableRel{\Supset} \SetBreakableBin{\Cup} \SetBreakableBin{\Cap} \SetBreakableBin{\curlywedge} \SetBreakableBin{\curlyvee} \SetBreakableBin{\leftthreetimes} \SetBreakableBin{\rightthreetimes} \SetBreakableRel{\subseteqq} \SetBreakableRel{\supseteqq} \SetBreakableRel{\bumpeq} \SetBreakableRel{\Bumpeq} \SetBreakableRel{\lll} \SetBreakableRel{\ggg} \SetBreakableRel{\pitchfork} \SetBreakableBin{\dotplus} \SetBreakableRel{\backsim} \SetBreakableRel{\backsimeq} \SetBreakableBin{\intercal} \SetBreakableBin{\circledcirc} \SetBreakableBin{\circledast} \SetBreakableBin{\circleddash} \SetBreakableRel{\lvertneqq} \SetBreakableRel{\gvertneqq} \SetBreakableRel{\nleq} \SetBreakableRel{\ngeq} \SetBreakableRel{\nless} \SetBreakableRel{\ngtr} \SetBreakableRel{\nprec} \SetBreakableRel{\nsucc} \SetBreakableRel{\lneqq} \SetBreakableRel{\gneqq} \SetBreakableRel{\nleqslant} \SetBreakableRel{\ngeqslant} \SetBreakableRel{\lneq} \SetBreakableRel{\gneq} \SetBreakableRel{\npreceq} \SetBreakableRel{\nsucceq} \SetBreakableRel{\precnsim} \SetBreakableRel{\succnsim} \SetBreakableRel{\lnsim} \SetBreakableRel{\gnsim} \SetBreakableRel{\nleqq} \SetBreakableRel{\ngeqq} \SetBreakableRel{\precneqq} \SetBreakableRel{\succneqq} \SetBreakableRel{\precnapprox} \SetBreakableRel{\succnapprox} \SetBreakableRel{\lnapprox} \SetBreakableRel{\gnapprox} \SetBreakableRel{\nsim} \SetBreakableRel{\ncong} \SetBreakableRel{\diagup} \SetBreakableRel{\diagdown} \SetBreakableRel{\varsubsetneq} \SetBreakableRel{\varsupsetneq} \SetBreakableRel{\nsubseteqq} \SetBreakableRel{\nsupseteqq} \SetBreakableRel{\subsetneqq} \SetBreakableRel{\supsetneqq} \SetBreakableRel{\varsubsetneqq} \SetBreakableRel{\varsupsetneqq} \SetBreakableRel{\subsetneq} \SetBreakableRel{\supsetneq} \SetBreakableRel{\nsubseteq} \SetBreakableRel{\nsupseteq} \SetBreakableRel{\nparallel} \SetBreakableRel{\nmid} \SetBreakableRel{\nshortmid} \SetBreakableRel{\nshortparallel} \SetBreakableRel{\nvdash} \SetBreakableRel{\nVdash} \SetBreakableRel{\nvDash} \SetBreakableRel{\nVDash} \SetBreakableRel{\ntrianglerighteq} \SetBreakableRel{\ntrianglelefteq} \SetBreakableRel{\ntriangleleft} \SetBreakableRel{\ntriangleright} \SetBreakableRel{\nleftarrow} \SetBreakableRel{\nrightarrow} \SetBreakableRel{\nLeftarrow} \SetBreakableRel{\nRightarrow} \SetBreakableRel{\nLeftrightarrow} \SetBreakableRel{\nleftrightarrow} \SetBreakableBin{\divideontimes} \SetBreakableRel{\eqsim} \SetBreakableRel{\lessdot} \SetBreakableRel{\gtrdot} \SetBreakableBin{\ltimes} \SetBreakableBin{\rtimes} \SetBreakableRel{\shortmid} \SetBreakableRel{\shortparallel} \SetBreakableBin{\smallsetminus} \SetBreakableRel{\thicksim} \SetBreakableRel{\thickapprox} \SetBreakableRel{\approxeq} \SetBreakableRel{\succapprox} \SetBreakableRel{\precapprox} \SetBreakableRel{\curvearrowleft} \SetBreakableRel{\curvearrowright} \SetBreakableRel{\backepsilon} \fi \@ifpackageloaded{mathbbol}{ \SetOpenBracket{\Langle} \SetOpenBracket{\Lparen} }{} \@ifpackageloaded{mathtools}{ \SetBreakableRel{\vcentcolon} \SetBreakableRel{\dblcolon} \SetBreakableRel{\coloneqq} \SetBreakableRel{\Coloneqq} \SetBreakableRel{\coloneq} \SetBreakableRel{\Coloneq} \SetBreakableRel{\eqqcolon} \SetBreakableRel{\Eqqcolon} \SetBreakableRel{\eqcolon} \SetBreakableRel{\Eqcolon} \SetBreakableRel{\colonapprox} \SetBreakableRel{\Colonapprox} \SetBreakableRel{\colonsim} \SetBreakableRel{\Colonsim} }{} \@ifpackageloaded{mdwmath}{ \SetBreakableBin{\bitand} \begingroup \catcode`\&\active \xdef&{\noexpand\brokenbin{\rmathbr@mathchar{`\&}}} \endgroup \AtBeginDocument{\mathcode`\&=32768 } }{} \@ifpackageloaded{sbbm}{ \SetOpenBracket{\Lparen} }{} \@ifpackageloaded{stmaryrd}{ \SetOpenBracket{\Lbag} \SetOpenBracket{\llparenthesis} \SetOpenBracket{\binampersand} \SetOpenBracket{\llfloor} \SetOpenBracket{\llceil} \SetOpenBracket{\llbracket} \SetBreakableRel{\shortleftarrow} \SetBreakableRel{\shortrightarrow} \SetBreakableRel{\shortuparrow} \SetBreakableRel{\shortdownarrow} \SetBreakableBin{\Yup} \SetBreakableBin{\Ydown} \SetBreakableBin{\Yleft} \SetBreakableBin{\Yright} \SetBreakableBin{\varcurlyvee} \SetBreakableBin{\varcurlywedge} \SetBreakableBin{\minuso} \SetBreakableBin{\baro} \SetBreakableBin{\sslash} \SetBreakableBin{\bbslash} \SetBreakableBin{\moo} \SetBreakableBin{\varotimes} \SetBreakableBin{\varoast} \SetBreakableBin{\varobar} \SetBreakableBin{\varodot} \SetBreakableBin{\varoslash} \SetBreakableBin{\varobslash} \SetBreakableBin{\varocircle} \SetBreakableBin{\varoplus} \SetBreakableBin{\varominus} \SetBreakableBin{\boxast} \SetBreakableBin{\boxbar} \SetBreakableBin{\boxdot} \SetBreakableBin{\boxslash} \SetBreakableBin{\boxbslash} \SetBreakableBin{\boxcircle} \SetBreakableBin{\boxbox} \SetBreakableBin{\boxempty} \SetBreakableBin{\merge} \SetBreakableBin{\vartimes} \SetBreakableBin{\fatsemi} \SetBreakableRel{\sswarrow} \SetBreakableRel{\ssearrow} \SetBreakableRel{\curlywedgeuparrow} \SetBreakableRel{\curlywedgedownarrow} \SetBreakableBin{\fatslash} \SetBreakableBin{\fatbslash} \SetBreakableBin{\lbag} \SetBreakableBin{\rbag} \SetBreakableBin{\varbigcirc} \SetBreakableRel{\leftrightarroweq} \SetBreakableRel{\curlyveedownarrow} \SetBreakableRel{\curlyveeuparrow} \SetBreakableRel{\nnwarrow} \SetBreakableRel{\nnearrow} \SetBreakableBin{\leftslice} \SetBreakableBin{\rightslice} \SetBreakableBin{\varolessthan} \SetBreakableBin{\varogreaterthan} \SetBreakableBin{\varovee} \SetBreakableBin{\varowedge} \SetBreakableBin{\talloblong} \SetBreakableBin{\interleave} \SetBreakableBin{\obar} \SetBreakableBin{\obslash} \SetBreakableBin{\olessthan} \SetBreakableBin{\ogreaterthan} \SetBreakableBin{\ovee} \SetBreakableBin{\owedge} \SetBreakableBin{\oblong} \SetBreakableRel{\inplus} \SetBreakableRel{\niplus} \SetBreakableBin{\nplus} \SetBreakableRel{\subsetplus} \SetBreakableRel{\supsetplus} \SetBreakableRel{\subsetpluseq} \SetBreakableRel{\supsetpluseq} \SetBreakableRel{\trianglelefteqslant} \SetBreakableRel{\trianglerighteqslant} \SetBreakableRel{\ntrianglelefteqslant} \SetBreakableRel{\ntrianglerighteqslant} \SetBreakableRel{\arrownot} \SetBreakableRel{\Arrownot} \SetBreakableRel{\Mapstochar} \SetBreakableRel{\mapsfromchar} \SetBreakableRel{\Mapsfromchar} \SetBreakableBin{\leftrightarrowtriangle} \SetBreakableRel{\leftarrowtriangle} \SetBreakableRel{\rightarrowtriangle} \SetBreakableRel{\longarrownot} \SetBreakableRel{\Longarrownot} \SetBreakableRel{\Mapsto} \SetBreakableRel{\mapsfrom} \SetBreakableRel{\Mapsfrom} \SetBreakableRel{\Longmapsto} \SetBreakableRel{\longmapsfrom} \SetBreakableRel{\Longmapsfrom} }{} \@ifpackageloaded{wasysym}{ \SetMathOperator{\varint} \SetMathOperator{\iint} \SetMathOperator{\iiint} \SetMathOperator{\varoint} \SetMathOperator{\oiint} \SetBreakableBin{\LHD} \SetBreakableBin{\RHD} \SetBreakableRel{\apprle} \SetBreakableRel{\apprge} \SetBreakableRel{\wasypropto} \SetBreakableRel{\invneg} \SetBreakableBin{\ocircle} \SetBreakableRel{\logof} }{} } % \rmathbr@patch@commands \ifrmathbr@patch@begindocument \AtBeginDocument{\rmathbr@patch@commands} \else \rmathbr@patch@commands \fi \AtBeginDocument{% \mathcode`\==32768% "8000 \mathcode`\<=32768 \mathcode`\>=32768 \mathcode`\+=32768 \ifrmathbr@kv@brokenminus \mathcode`\-=32768 \fi \mathcode`\*=32768 \mathcode`\(=32768 \mathcode`\[=32768 %\] \mathcode`\,=32768 \mathcode`\;=32768 \mathcode`\:=32768 \@ifundefined{resetMathstrut@}{}{% fix amsmath \let\rmathbr@orig@resetMathstrut=\resetMathstrut@ \gdef\resetMathstrut@{% \mathcode`\(=16424% "4028 \rmathbr@orig@resetMathstrut \mathcode`\(=32768% "8000 } \gdef\newmcodes@{% \mathcode`\'=39 \mathcode`\*=42 \mathcode`\.=24890% "613A \mathcode`\-=45 \mathcode`\/=47 \mathcode`\:=24634% "603A \relax } }% } \@ifpackageloaded{bm}{% \let\rmathbr@save@bm@general=\bm@general \def\bm@general#1#2#3#4#5{ \rmathbr@save@bm@general{#1}{#2}{% \let\nobr\copy \def\brokenrel##1{\unvcopy{\brokenrel{##1}}} \def\brokenbin##1{\unvcopy{\brokenbin{##1}}} \def\brokeninner##1{\unvcopy{\brokeninner{##1}}} \def\rmathbr@mathop##1{\unvcopy{\rmathbr@mathop{##1}}} \begingroup\catcode`\_\active\lccode`\~`\_\lowercase{\endgroup\def~}##1{\unvcopy{_{##1}}} \begingroup\catcode`\^\active\lccode`\~`\^\lowercase{\endgroup\def~}##1{\unvcopy{^{##1}}} #3}{#4}{#5} } \PackageInfo{rmathbr}{Note: 'bm' package has been patched}{}% }{} \@ifpackageloaded{xy}{% \ifnum\rmathbr@kv@scriptsmode>0\relax \let\rmathbr@save@xy=\xy \let\rmathbr@save@endxy=\endxy \def\xy{\begingroup\catcode`\^7\catcode`\_8\rmathbr@save@xy} \def\endxy{\rmathbr@save@endxy\endgroup} \PackageInfo{rmathbr}{Note: \string\xy and \string\endxy commands from 'xy' package have been patched}{}% \fi }{} \endinput %% %% End of file `rmathbr.sty'.