\expandafter\edef\csname hypers@fe\endcsname{\catcode
`\noexpand@=\the\catcode`\@}%
\catcode`\@=11
{\setbox0=\hbox{
\errhelp{lhyper needs a higher revision of hyperbasics.}
\ifx\hyperv@rsion\hyper@ndefined
\errmessage{Need at least version 1 of hyperbasics. You have %
version 0}%
\egroup\egroup\expandafter\stop
\else
\ifnum2>\hyperv@rsion
\errmessage{Need at least version 1 of hyperbasics. You have %
version \hyperv@rsion}%
\egroup\egroup\expandafter\expandafter\expandafter\stop
\fi
\fi}}
\let\hypernoname=\relax
% Change all places where \@currentlabel is being set.
% Tempoarily, put a \hyperdef at precisely those points.
\def\refstepcounter#1{\stepcounter{#1}\let\@tempa\protect
\def\protect{\noexpand\protect\noexpand}%
\hyperdef\hypernoname{#1}{\csname the#1\endcsname}{}%
\edef\@currentlabel{\hyper@\hyperpr@ref\hypernoname%
{\csname p@#1\endcsname\csname the#1\endcsname}}%
\let\protect\@tempa}%
% Equations are special too
\def\equation{$$% $$ BRACE MATCHING HACK
\let\hyper@n@=\hyperdef
\let\hyperdef=\hyper@nique\refstepcounter{equation}%
\let\hyperdef=\hyper@n@\let\hyper@qn@=\theequation
\def\theequation{\hyperdef\hypernoname{equation}{\hyper@qn@}{\hyper@qn@}}%
}
% The footnote has to be defined when insertion being generated.
\def\hyper@eat#1\hyperpr@ref#2#3#4#5{#5}%
\long\def\@footnotetext#1{\insert\footins{\reset@font\footnotesize
\interlinepenalty\interfootnotelinepenalty
\splittopskip\footnotesep
\splitmaxdepth \dp\strutbox \floatingpenalty \@MM
\hsize\columnwidth \@parboxrestore
\edef\@currentlabel{\csname p@footnote\endcsname\@thefnmark}%
{\edef\@thefnmark{\expandafter\hyper@eat\@thefnmark}%
\edef\@thefnmark{\noexpand\hyperdef\noexpand\hypernoname{footnote}%
{\@thefnmark}{\@thefnmark}}%
\@makefntext
{\rule{\z@}{\footnotesep}\ignorespaces
#1\strut}}}}
% Similarly references are special
\def\@lbibitem[#1]#2{\item[\hyperdef\hypernoname{reference}{#1}%
{\@biblabel{#1}}\hfill]\if@filesw
{\def\protect##1{\string ##1\space}\immediate
\write\@auxout{\string\bibcite{#2}{#1}}}\fi\ignorespaces}
% Some style files change this setup. After loading a style file check if
% the corresponding .hty file exists. Load it in that case.
\newread\hyper@inputcheck
\def\hyper@nput #1.sty{\input #1.sty\relax
\immediate\openin\hyper@inputcheck #1.hty\relax
\ifeof\hyper@inputcheck\relax
\immediate\closein\hyper@inputcheck\relax
\else\immediate\closein\hyper@inputcheck\relax
\input #1.hty\relax
\fi}%
\def\@documentstyle[#1]#2{\makeatletter
\def\@optionlist{#1}\gdef\@optionfiles{}\hyper@nput #2.sty\relax
\let\@elt\hyper@nput \@optionfiles \let\@elt\relax \makeatother}
\def\enddocument{\@checkend{document}\clearpage\begingroup
\if@filesw \immediate\closeout\@mainaux
\def\global\@namedef##1##2{}\def\newlabel{\@testdef r}%
\def\bibcite{\@testdef {hyperb}}\@tempswafalse \makeatletter\input \jobname.aux
\if@tempswa \@@warning{Label(s) may have changed. Rerun to get
cross-references right}\fi\fi\endgroup\deadcycles\z@\@@end}
\hypers@fe
\endinput
% Leave this line in the file