% mathbarr.sty 16-Dec-94 (JAS)
% created by Michael Barr of McGill University, Canada

\catcode`\@=11
\def\downparenfill{$\m@th\braceld\leaders\vrule\hfill\bracerd$}
\def\upparenfill{$\m@th\bracelu\leaders\vrule\hfill\braceru$}
\def\overparen#1{\mathop{\vbox{\ialign{##\crcr\noalign{\kern3\p@}
      \downparenfill\crcr\noalign{\kern3\p@\nointerlineskip}
      $\hfil\displaystyle{#1}\hfil$\crcr}}}\limits}
\def\underparen#1{\mathop{\vtop{\ialign{##\crcr
      $\hfil\displaystyle{#1}\hfil$\crcr
      \noalign{\kern3\p@\nointerlineskip}
      \upparenfill\crcr\noalign{\kern3\p@}}}}\limits}

\newbox\brackd \newbox\bracku
\setbox\brackd=\hbox {\vrule height 0pt depth
  3pt width 1pt}\ht\brackd=0pt\dp\brackd=1pt
\setbox\bracku=\hbox {\vrule height 3pt depth
  0pt width 1pt}\ht\bracku=1pt\dp\bracku=0pt
\def\downbrackfill
  {$\m@th\copy\brackd\leaders\vrule\hfill\copy\brackd$}
\def\upbrackfill
  {$\m@th\copy\bracku\leaders\vrule\hfill\copy\bracku$}

\def\overbrack#1{\mathop{\vbox{\ialign{##\crcr\noalign{\kern3\p@}
      \downbrackfill\crcr\noalign{\kern3\p@\nointerlineskip}
      $\hfil\displaystyle{\kern1pt#1\kern1pt}\hfil$\crcr}}}\limits}
\def\underbrack#1{\mathop{\vtop{\ialign{##\crcr
      $\hfil\displaystyle{\kern1pt#1\kern1pt}\hfil$\crcr\noalign
      {\kern3\p@\nointerlineskip}
      \upbrackfill\crcr\noalign{\kern3\p@}}}}\limits}
\catcode`\@12