%this is the file bas.sty

% begin amssymb.sty
% This style option loads up the AMS symbol fonts and associated symbol
% definitions.  See the Nov 85 issue of TUGBoat for a listing of these
% symbols.  Only \textfont, \scriptfont, and \scriptscriptfont sizes are
% provided.  5pt, 6pt, 7pt, 8pt, 9pt, 10pt, 11pt, 12pt, 14pt, 17pt, 20pt,
% and 25pt styles are supported (this extension is due to Johan Huisman).
% Moreover, the control sequences \@vpt upto \@xxvpt, which were left
% empty by LaTeX, are used for this extension.

\font\fivmsam=msam5
\font\sixmsam=msam6
\font\sevenmsam=msam7
\font\egtmsam=msam8
\font\ninmsam=msam9
\font\tenmsam=msam10
\font\elvmsam=msam10 \@halfmag
\font\twlmsam=msam10 \@magscale1
\font\frtnmsam=msam10 \@magscale2
\font\svtnmsam=msam10 \@magscale3
\font\twtymsam=msam10 \@magscale4
\font\twfvmsam=msam10 \@magscale5
\font\fivmsbm=msbm5
\font\sixmsbm=msbm6
\font\sevenmsbm=msbm7
\font\egtmsbm=msbm8
\font\ninmsbm=msbm9
\font\tenmsbm=msbm10
\font\elvmsbm=msbm10 \@halfmag
\font\twlmsbm=msbm10 \@magscale1
\font\frtnmsbm=msbm10 \@magscale2
\font\svtnmsbm=msbm10 \@magscale3
\font\twtymsbm=msbm10 \@magscale4
\font\twfvmsbm=msbm10 \@magscale5
\font\fiveul=eufm5
\font\sixeul=eufm6
\font\seveneul=eufm7
\font\egteul=eufm8
\font\nineul=eufm9
\font\teneul=eufm10
\font\elveul=eufm10 \@halfmag
\font\twleul=eufm10 \@magscale1
\font\frtneul=eufm10 \@magscale2
\font\svtneul=eufm10 \@magscale3
\font\twtyeul=eufm10 \@magscale4
\font\twfveul=eufm10 \@magscale5
\font\egtcmssi=cmssi8
\font\nincmssi=cmssi9
\font\tencmssi=cmssi10
\font\elvcmssi=cmssi10 \@halfmag
\font\twlcmssi=cmssi12
\font\frtncmssi=cmssi12 \@magscale1
\font\svtncmssi=cmssi17
\font\twtycmssi=cmssi17 \@magscale1
\font\twfvcmssi=cmssi17 \@magscale2

\newfam\msamfam
\newfam\msbmfam
\newfam\eulfam
\newfam\sfifam

\def\@vpt{\def\msam{\fam\msamfam\fivmsam}%
  \textfont\msamfam\fivmsam
  \scriptfont\msamfam\fivmsam
  \scriptscriptfont\msamfam\fivmsam
  \def\msbm{\fam\msbmfam\fivmsbm}%
  \textfont\msbmfam\fivmsbm
  \scriptfont\msbmfam\fivmsbm
  \scriptscriptfont\msbmfam\fivmsbm
  \def\eul{\fam\eulfam\fiveul}%
  \textfont\eulfam\fiveul
  \scriptfont\eulfam\fiveul
  \scriptscriptfont\eulfam\fiveul}%
\def\@vipt{\def\msam{\fam\msamfam\sixmsam}%
  \textfont\msamfam\sixmsam
  \scriptfont\msamfam\sixmsam
  \scriptscriptfont\msamfam\sixmsam
  \def\msbm{\fam\msbmfam\sixmsbm}%
  \textfont\msbmfam\sixmsbm
  \scriptfont\msbmfam\sixmsbm
  \scriptscriptfont\msbmfam\sixmsbm
  \def\eul{\fam\eulfam\sixeul}%
  \textfont\eulfam\sixeul
  \scriptfont\eulfam\sixeul
  \scriptscriptfont\eulfam\sixeul}%
\def\@viipt{\def\msam{\fam\msamfam\sevenmsam}%
  \textfont\msamfam\sevenmsam
  \scriptfont\msamfam\fivmsam
  \scriptscriptfont\msamfam\fivmsam
  \def\msbm{\fam\msbmfam\sevenmsbm}%
  \textfont\msbmfam\sevenmsbm
  \scriptfont\msbmfam\fivmsbm
  \scriptscriptfont\msbmfam\fivmsbm
  \def\eul{\fam\eulfam\seveneul}%
  \textfont\eulfam\seveneul
  \scriptfont\eulfam\fiveul
  \scriptscriptfont\eulfam\fiveul}%
\def\@viiipt{\def\msam{\fam\msamfam\egtmsam}%
  \textfont\msamfam\egtmsam
  \scriptfont\msamfam\sixmsam
  \scriptscriptfont\msamfam\fivmsam
  \def\msbm{\fam\msbmfam\egtmsbm}%
  \textfont\msbmfam\egtmsbm
  \scriptfont\msbmfam\sixmsbm
  \scriptscriptfont\msbmfam\fivmsbm
  \def\eul{\fam\eulfam\egteul}%
  \textfont\eulfam\egteul
  \scriptfont\eulfam\sixeul
  \scriptscriptfont\eulfam\fiveul
  \def\sfi{\fam\sfifam\egtcmssi}%
  \textfont\sfifam\egtcmssi
  \scriptfont\sfifam\egtcmssi
  \scriptscriptfont\sfifam\egtcmssi}%
\def\@ixpt{\def\msam{\fam\msamfam\ninmsam}%
  \textfont\msamfam\ninmsam
  \scriptfont\msamfam\sixmsam
  \scriptscriptfont\msamfam\fivmsam
  \def\msbm{\fam\msbmfam\ninmsbm}%
  \textfont\msbmfam\ninmsbm
  \scriptfont\msbmfam\sixmsbm
  \scriptscriptfont\msbmfam\fivmsbm
  \def\eul{\fam\eulfam\nineul}%
  \textfont\eulfam\nineul
  \scriptfont\eulfam\sixeul
  \scriptscriptfont\eulfam\fiveul
  \def\sfi{\fam\sfifam\nincmssi}%
  \textfont\sfifam\nincmssi
  \scriptfont\sfifam\egtcmssi
  \scriptscriptfont\sfifam\egtcmssi}%
\def\@xpt{\def\msam{\fam\msamfam\tenmsam}%
  \textfont\msamfam\tenmsam
  \scriptfont\msamfam\sevenmsam
  \scriptscriptfont\msamfam\fivmsam
  \def\msbm{\fam\msbmfam\tenmsbm}%
  \textfont\msbmfam\tenmsbm
  \scriptfont\msbmfam\sevenmsbm
  \scriptscriptfont\msbmfam\fivmsbm
  \def\eul{\fam\eulfam\teneul}%
  \textfont\eulfam\teneul
  \scriptfont\eulfam\seveneul
  \scriptscriptfont\eulfam\fiveul
  \def\sfi{\fam\sfifam\tencmssi}%
  \textfont\sfifam\tencmssi
  \scriptfont\sfifam\egtcmssi
  \scriptscriptfont\sfifam\egtcmssi}%
\def\@xipt{\def\msam{\fam\msamfam\elvmsam}%
  \textfont\msamfam\elvmsam
  \scriptfont\msamfam\egtmsam
  \scriptscriptfont\msamfam\sixmsam
  \def\msbm{\fam\msbmfam\elvmsbm}%
  \textfont\msbmfam\elvmsbm
  \scriptfont\msbmfam\egtmsbm
  \scriptscriptfont\msbmfam\sixmsbm
  \def\eul{\fam\eulfam\elveul}%
  \textfont\eulfam\elveul
  \scriptfont\eulfam\egteul
  \scriptscriptfont\eulfam\sixeul}%
\def\@xiipt{\def\msam{\fam\msamfam\twlmsam}%
  \textfont\msamfam\twlmsam
  \scriptfont\msamfam\egtmsam
  \scriptscriptfont\msamfam\sixmsam
  \def\msbm{\fam\msbmfam\twlmsbm}%
  \textfont\msbmfam\twlmsbm
  \scriptfont\msbmfam\egtmsbm
  \scriptscriptfont\msbmfam\sixmsbm
  \def\eul{\fam\eulfam\twleul}%
  \textfont\eulfam\twleul
  \scriptfont\eulfam\egteul
  \scriptscriptfont\eulfam\sixeul}%
\def\@xivpt{\def\msam{\fam\msamfam\frtnmsam}%
  \textfont\msamfam\frtnmsam
  \scriptfont\msamfam\tenmsam
  \scriptscriptfont\msamfam\sevenmsam
  \def\msbm{\fam\msbmfam\frtnmsbm}%
  \textfont\msbmfam\frtnmsbm
  \scriptfont\msbmfam\tenmsbm
  \scriptscriptfont\msbmfam\sevenmsbm
  \def\eul{\fam\eulfam\frtneul}%
  \textfont\eulfam\frtneul
  \scriptfont\eulfam\teneul
  \scriptscriptfont\eulfam\seveneul}%
\def\@xviipt{\def\msam{\fam\msamfam\svtnmsam}%
  \textfont\msamfam\svtnmsam
  \scriptfont\msamfam\twlmsam
  \scriptscriptfont\msamfam\tenmsam
  \def\msbm{\fam\msbmfam\svtnmsbm}%
  \textfont\msbmfam\svtnmsbm
  \scriptfont\msbmfam\twlmsbm
  \scriptscriptfont\msbmfam\tenmsbm
  \def\eul{\fam\eulfam\svtneul}%
  \textfont\eulfam\svtneul
  \scriptfont\eulfam\twleul
  \scriptscriptfont\eulfam\teneul}%
\def\@xxpt{\def\msam{\fam\msamfam\twtymsam}%
  \textfont\msamfam\twtymsam
  \scriptfont\msamfam\frtnmsam
  \scriptscriptfont\msamfam\twlmsam
  \def\msbm{\fam\msbmfam\twtymsbm}%
  \textfont\msbmfam\twtymsbm
  \scriptfont\msbmfam\frtnmsbm
  \scriptscriptfont\msbmfam\twlmsbm
  \def\eul{\fam\eulfam\twtyeul}%
  \textfont\eulfam\twtyeul
  \scriptfont\eulfam\frtneul
  \scriptscriptfont\eulfam\twleul}%
\def\@xxvpt{\def\msam{\fam\msamfam\twfvmsam}%
  \textfont\msamfam\twfvmsam
  \scriptfont\msamfam\twtymsam
  \scriptscriptfont\msamfam\svtnmsam
  \def\msbm{\fam\msbmfam\twfvmsbm}%
  \textfont\msbmfam\twfvmsbm
  \scriptfont\msbmfam\twtymsbm
  \scriptscriptfont\msbmfam\svtnmsbm
  \def\eul{\fam\eulfam\twfveul}%
  \textfont\eulfam\twfveul
  \scriptfont\eulfam\twtyeul
  \scriptscriptfont\eulfam\svtneul}%

\def\hexnumber@#1{\ifnum#1<10 \number#1\else
 \ifnum#1=10 A\else\ifnum#1=11 B\else\ifnum#1=12 C\else
 \ifnum#1=13 D\else\ifnum#1=14 E\else\ifnum#1=15 F\fi\fi\fi\fi\fi\fi\fi}%

\def\msa@{\hexnumber@\msamfam}%
\def\msb@{\hexnumber@\msbmfam}%
\mathchardef\boxdot="2\msa@00
\mathchardef\boxplus="2\msa@01
\mathchardef\boxtimes="2\msa@02
\mathchardef\square="0\msa@03
\mathchardef\blacksquare="0\msa@04
\mathchardef\centerdot="2\msa@05
\mathchardef\lozenge="0\msa@06
\mathchardef\blacklozenge="0\msa@07
\mathchardef\circlearrowright="3\msa@08
\mathchardef\circlearrowleft="3\msa@09
\mathchardef\rightleftharpoons="3\msa@0A
\mathchardef\leftrightharpoons="3\msa@0B
\mathchardef\boxminus="2\msa@0C
\mathchardef\Vdash="3\msa@0D
\mathchardef\Vvdash="3\msa@0E
\mathchardef\vDash="3\msa@0F
\mathchardef\twoheadrightarrow="3\msa@10
\mathchardef\twoheadleftarrow="3\msa@11
\mathchardef\leftleftarrows="3\msa@12
\mathchardef\rightrightarrows="3\msa@13
\mathchardef\upuparrows="3\msa@14
\mathchardef\downdownarrows="3\msa@15
\mathchardef\upharpoonright="3\msa@16
\mathchardef\downharpoonright="3\msa@17
\mathchardef\upharpoonleft="3\msa@18
\mathchardef\downharpoonleft="3\msa@19
\mathchardef\rightarrowtail="3\msa@1A
\mathchardef\leftarrowtail="3\msa@1B
\mathchardef\leftrightarrows="3\msa@1C
\mathchardef\rightleftarrows="3\msa@1D
\mathchardef\Lsh="3\msa@1E
\mathchardef\Rsh="3\msa@1F
\mathchardef\rightsquigarrow="3\msa@20
\mathchardef\leftrightsquigarrow="3\msa@21
\mathchardef\looparrowleft="3\msa@22
\mathchardef\looparrowright="3\msa@23
\mathchardef\circeq="3\msa@24
\mathchardef\succsim="3\msa@25
\mathchardef\gtrsim="3\msa@26
\mathchardef\gtrapprox="3\msa@27
\mathchardef\multimap="3\msa@28
\mathchardef\therefore="3\msa@29
\mathchardef\because="3\msa@2A
\mathchardef\doteqdot="3\msa@2B
\let\Doteq=\doteqdot
\mathchardef\triangleq="3\msa@2C
\mathchardef\precsim="3\msa@2D
\mathchardef\lesssim="3\msa@2E
\mathchardef\lessapprox="3\msa@2F
\mathchardef\eqslantless="3\msa@30
\mathchardef\eqslantgtr="3\msa@31
\mathchardef\curlyeqprec="3\msa@32
\mathchardef\curlyeqsucc="3\msa@33
\mathchardef\preccurlyeq="3\msa@34
\mathchardef\leqq="3\msa@35
\mathchardef\leqslant="3\msa@36
\mathchardef\lessgtr="3\msa@37
\mathchardef\backprime="0\msa@38
%missing def for - like char.
\mathchardef\risingdotseq="3\msa@3A
\mathchardef\fallingdotseq="3\msa@3B
\mathchardef\succcurlyeq="3\msa@3C
\mathchardef\geqq="3\msa@3D
\mathchardef\geqslant="3\msa@3E
\mathchardef\gtrless="3\msa@3F
\mathchardef\sqsubset="3\msa@40
\mathchardef\sqsupset="3\msa@41
\mathchardef\vartriangleright="3\msa@42
\mathchardef\vartriangleleft="3\msa@43
\mathchardef\trianglerighteq="3\msa@44
\mathchardef\trianglelefteq="3\msa@45
\mathchardef\bigstar="0\msa@46
\mathchardef\between="3\msa@47
\mathchardef\blacktriangledown="0\msa@48
\mathchardef\blacktriangleright="3\msa@49
\mathchardef\blacktriangleleft="3\msa@4A
%missing def for -> like char.
%missing def for <- like char.
\mathchardef\vartriangle="3\msa@4D
\mathchardef\blacktriangle="0\msa@4E
\mathchardef\triangledown="0\msa@4F
\mathchardef\eqcirc="3\msa@50
\mathchardef\lesseqgtr="3\msa@51
\mathchardef\gtreqless="3\msa@52
\mathchardef\lesseqqgtr="3\msa@53
\mathchardef\gtreqqless="3\msa@54
\mathchardef\Rrightarrow="3\msa@56
\mathchardef\Lleftarrow="3\msa@57
\mathchardef\veebar="2\msa@59
\mathchardef\barwedge="2\msa@5A
\mathchardef\doublebarwedge="2\msa@5B
\mathchardef\angle="0\msa@5C
\mathchardef\measuredangle="0\msa@5D
\mathchardef\sphericalangle="0\msa@5E
\mathchardef\varpropto="3\msa@5F
\mathchardef\smallsmile="3\msa@60
\mathchardef\smallfrown="3\msa@61
\mathchardef\Subset="3\msa@62
\mathchardef\Supset="3\msa@63
\mathchardef\Cup="2\msa@64
\let\doublecup=\Cup
\mathchardef\Cap="2\msa@65
\let\doublecap=\Cap
\mathchardef\curlywedge="2\msa@66
\mathchardef\curlyvee="2\msa@67
\mathchardef\leftthreetimes="2\msa@68
\mathchardef\rightthreetimes="2\msa@69
\mathchardef\subseteqq="3\msa@6A
\mathchardef\supseteqq="3\msa@6B
\mathchardef\bumpeq="3\msa@6C
\mathchardef\Bumpeq="3\msa@6D
\mathchardef\lll="3\msa@6E
\let\llless=\lll
\mathchardef\ggg="3\msa@6F
\let\gggtr=\ggg
\mathchardef\circledS="0\msa@73
\mathchardef\pitchfork="3\msa@74
\mathchardef\dotplus="2\msa@75
\mathchardef\backsim="3\msa@76
\mathchardef\backsimeq="3\msa@77
\mathchardef\complement="0\msa@7B
\mathchardef\intercal="2\msa@7C
\mathchardef\circledcirc="2\msa@7D
\mathchardef\circledast="2\msa@7E
\mathchardef\circleddash="2\msa@7F
\def\ulcorner{\delimiter"4\msa@70\msa@70 }%
\def\urcorner{\delimiter"5\msa@71\msa@71 }%
\def\llcorner{\delimiter"4\msa@78\msa@78 }%
\def\lrcorner{\delimiter"5\msa@79\msa@79 }%
\def\yen{\mathhexbox\msa@55 }%
\def\checkmark{\mathhexbox\msa@58 }%
\def\circledR{\mathhexbox\msa@72 }%
\def\maltese{\mathhexbox\msa@7A }%
\mathchardef\lvertneqq="3\msb@00
\mathchardef\gvertneqq="3\msb@01
\mathchardef\nleq="3\msb@02
\mathchardef\ngeq="3\msb@03
\mathchardef\nless="3\msb@04
\mathchardef\ngtr="3\msb@05
\mathchardef\nprec="3\msb@06
\mathchardef\nsucc="3\msb@07
\mathchardef\lneqq="3\msb@08
\mathchardef\gneqq="3\msb@09
\mathchardef\nleqslant="3\msb@0A
\mathchardef\ngeqslant="3\msb@0B
\mathchardef\lneq="3\msb@0C
\mathchardef\gneq="3\msb@0D
\mathchardef\npreceq="3\msb@0E
\mathchardef\nsucceq="3\msb@0F
\mathchardef\precnsim="3\msb@10
\mathchardef\succnsim="3\msb@11
\mathchardef\lnsim="3\msb@12
\mathchardef\gnsim="3\msb@13
\mathchardef\nleqq="3\msb@14
\mathchardef\ngeqq="3\msb@15
\mathchardef\precneqq="3\msb@16
\mathchardef\succneqq="3\msb@17
\mathchardef\precnapprox="3\msb@18
\mathchardef\succnapprox="3\msb@19
\mathchardef\lnapprox="3\msb@1A
\mathchardef\gnapprox="3\msb@1B
\mathchardef\nsim="3\msb@1C
\mathchardef\napprox="3\msb@1D
%missing def for / like char.
%missing def for \ like char.
\mathchardef\varsubsetneq="3\msb@20
\mathchardef\varsupsetneq="3\msb@21
\mathchardef\nsubseteqq="3\msb@22
\mathchardef\nsupseteqq="3\msb@23
\mathchardef\subsetneqq="3\msb@24
\mathchardef\supsetneqq="3\msb@25
\mathchardef\varsubsetneqq="3\msb@26
\mathchardef\varsupsetneqq="3\msb@27
\mathchardef\subsetneq="3\msb@28
\mathchardef\supsetneq="3\msb@29
\mathchardef\nsubseteq="3\msb@2A
\mathchardef\nsupseteq="3\msb@2B
\mathchardef\nparallel="3\msb@2C
\mathchardef\nmid="3\msb@2D
\mathchardef\nshortmid="3\msb@2E
\mathchardef\nshortparallel="3\msb@2F
\mathchardef\nvdash="3\msb@30
\mathchardef\nVdash="3\msb@31
\mathchardef\nvDash="3\msb@32
\mathchardef\nVDash="3\msb@33
\mathchardef\ntrianglerighteq="3\msb@34
\mathchardef\ntrianglelefteq="3\msb@35
\mathchardef\ntriangleleft="3\msb@36
\mathchardef\ntriangleright="3\msb@37
\mathchardef\nleftarrow="3\msb@38
\mathchardef\nrightarrow="3\msb@39
\mathchardef\nLeftarrow="3\msb@3A
\mathchardef\nRightarrow="3\msb@3B
\mathchardef\nLeftrightarrow="3\msb@3C
\mathchardef\nleftrightarrow="3\msb@3D
\mathchardef\divideontimes="2\msb@3E
\mathchardef\varnothing="0\msb@3F
\mathchardef\nexists="0\msb@40
%missing def for ^ like char.
%missing def for ^ like char.
%missing def for ~ like char.
%missing def for ~ like char.
\mathchardef\mho="0\msb@66
\mathchardef\thorn="0\msb@67
\mathchardef\beth="0\msb@69
\mathchardef\gimel="0\msb@6A
\mathchardef\daleth="0\msb@6B
\mathchardef\lessdot="3\msb@6C
\mathchardef\gtrdot="3\msb@6D
\mathchardef\ltimes="2\msb@6E
\mathchardef\rtimes="2\msb@6F
\mathchardef\shortmid="3\msb@70
\mathchardef\shortparallel="3\msb@71
\mathchardef\smallsetminus="2\msb@72
\mathchardef\thicksim="3\msb@73
\mathchardef\thickapprox="3\msb@74
\mathchardef\approxeq="3\msb@75
\mathchardef\succapprox="3\msb@76
\mathchardef\precapprox="3\msb@77
\mathchardef\curvearrowleft="3\msb@78
\mathchardef\curvearrowright="3\msb@79
\mathchardef\digamma="0\msb@7A
\mathchardef\varkappa="0\msb@7B
%missing def for k like char.
\mathchardef\hslash="0\msb@7D
\mathchardef\hbar="0\msb@7E
\mathchardef\backepsilon="3\msb@7F

\def\Bbb#1{\Bbb@#1}%
\def\Bbb@#1{{\msbm#1}}%
\def\frak#1{\frak@#1}%
\def\frak@#1{{\eul#1}}%

% end amssymb.sty

% begin remark.sty 
%       ****************************************
%       *         REMARK ENVIRONMENTS         *
%       ****************************************
%
%  The user creates his own remark-like environments with the command
%      \newremark{NAME}{TEXT}[COUNTER]  or
%      \newremark{NAME}[OLDNAME]{TEXT}
%  This defines the environment NAME to be just as one would expect a
%  remark environment to be, except that it prints ``TEXT'' instead of
%  ``Remark''.
%
%  If OLDNAME is given, then environments NAME and OLDNAME use the same
%  counter, so using a NAME environment advances the number of the next
%  NAME environment, and vice-versa.
%
%  If COUNTER is given, then environment NAME is numbered within COUNTER.
%  E.g., if COUNTER = subsection, then the first NAME in subsection 7.2
%  is numbered TEXT 7.2.1.
%
%  The way NAME environments are numbered can be changed by redefining
%  \theNAME.
%
%  DOCUMENT STYLE PARAMETERS
%
%  \@rmkcounter{COUNTER} : A command such that
%               \edef\theCOUNTER{\@rmkcounter{COUNTER}}
%         defines \theCOUNTER to produce a number for a remark environment.
%         The default is:
%            BEGIN \noexpand\arabic{COUNTER} END
%
%  \@rmkcountersep : A separator placed between a remark number and
%         the number of the counter within which it is numbered.
%         E.g., to make the third remark of section 7.2 be numbered
%         7.2-3, \@rmkcountersep should be \def'ed to '-'.  Its
%         default is '.'.
%
%  \@beginremark{NAME}{NUMBER} : A command that begins a remark
%         environment for a 'remark' named 'NAME NUMBER' --
%         e.g., \@beginremark{Lemma}{3.7} starts Lemma 3.7.
%
%  \@opargbeginremark{NAME}{NUMBER}{OPARG} : A command that begins a remark
%         environment for a 'remark' named 'NAME NUMBER' with optional
%         argument OPARG -- e.g., \@beginremark{Lemma}{3.7}{Jones}
%         starts `Lemma 3.7 (Jones):'.
%
%  \@endremark : A command that ends a remark environment.
%
% \newremark{NAME}{TEXT}[COUNTER] ==
%   BEGIN
%     if \NAME is definable
%       then \@definecounter{NAME}
%            if COUNTER present
%              then \@addtoreset{NAME}{COUNTER} fi
%                   \theNAME ==  BEGIN \theCOUNTER \@rmkcountersep
%                                       eval\@rmkcounter{NAME}      END
%              else \theNAME ==  BEGIN eval\@rmkcounter{NAME} END
%            \NAME == \@rmk{NAME}{TEXT}
%            \endNAME == \@endremark
%       else  error
%     fi
%   END
%
% \newremark{NAME}[OLDNAME]{TEXT}==
%   BEGIN
%     if \NAME is definable
%       then \theNAME == \theOLDNAME
%            \NAME == \@rmk{OLDNAME}{TEXT}
%            \endNAME == \@endremark
%       else  error
%     fi
%   END
%
% \@rmk{NAME}{TEXT} ==
%   BEGIN
%    \refstepcounter{NAME}
%    if next char = [
%       then \@yrmk{NAME}{TEXT}
%       else \@xrmk{NAME}{TEXT}
%    fi
%   END
%
% \@xrmk{NAME}{TEXT} ==
%   BEGIN
%    \@beginremark{TEXT}{\theNAME}
%    \ignorespaces
%   END
%
% \@yrmk{NAME}{TEXT}[OPARG] ==
%   BEGIN
%    \@opargbeginremark{TEXT}{\theNAME}{OPARG}
%    \ignorespaces
%   END
%
\def\newremark#1{\@ifnextchar[{\@ormkwsq{#1}}{\@nrmkwsq{#1}}}

\def\@nrmkwsq#1#2{%
\@ifnextchar[{\@xnrmkwsq{#1}{#2}}{\@ynrmkwsq{#1}{#2}}}

\def\@xnrmkwsq#1#2[#3]{\expandafter\@ifdefinable\csname #1\endcsname
{\@definecounter{#1}\@addtoreset{#1}{#3}%
\expandafter\xdef\csname the#1\endcsname{\expandafter\noexpand
  \csname the#3\endcsname \@rmkcountersep \@rmkcounter{#1}}
%\global\@namedef{#1}{\@rmkwsq{#1}{#2}}\global\@namedef{end#1}
{\@endremarkwithsquare}}}

\def\@ynrmkwsq#1#2{\expandafter\@ifdefinable\csname #1\endcsname
{\@definecounter{#1}%
\expandafter\xdef\csname the#1\endcsname{\@rmkcounter{#1}}
%\global\@namedef{#1}{\@rmkwsq{#1}{#2}}\global\@namedef{end#1}
{\@endremarkwithsquare}}}

\def\@ormkwsq#1[#2]#3{\expandafter\@ifdefinable\csname #1\endcsname
  {\global\@namedef{the#1}{\@nameuse{the#2}}%
\global\@namedef{#1}{\@rmkwsq{#2}{#3}}%
\global\@namedef{end#1}{\@endremarkwithsquare}}}

\def\@rmkwsq#1#2{\refstepcounter
    {#1}\@ifnextchar[{\@yrmkwsq{#1}{#2}}{\@xrmkwsq{#1}{#2}}}

\def\@xrmkwsq#1#2{\@beginremark{#2}{\csname the#1\endcsname}\ignorespaces}
\def\@yrmkwsq#1#2[#3]{\@opargbeginremark{#2}{\csname
       the#1\endcsname}{#3}\ignorespaces}

%DEFAULT VALUES
\def\@rmkcounter#1{\noexpand\arabic{#1}}
\def\@rmkcountersep{.}
%deleted September 2, 1986 MDK
%\def\@makermknumber#1#2{\bf #1 #2:}
\def\@beginremark#1#2{\trivlist \item[\hskip \labelsep{\bf #1\ #2.}]}
\def\@opargbeginremark#1#2#3{\trivlist
      \item[\hskip \labelsep{\bf #1\ #2\ (#3)}]}
\def\@endremarkwithsquare{~\hspace{\fill}~$\square$\endtrivlist}


% end remark.sty

% begin leqno.sty
% leqno.sty 14 Jun 85
\def\@eqnnum{\hbox to .01pt{}\rlap{\rm \hskip -\displaywidth(\theequation)}}

% end leqno.sty 







