summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/latex/hyper/hyper.sty
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/tex/latex/hyper/hyper.sty')
-rw-r--r--Master/texmf-dist/tex/latex/hyper/hyper.sty1303
1 files changed, 1303 insertions, 0 deletions
diff --git a/Master/texmf-dist/tex/latex/hyper/hyper.sty b/Master/texmf-dist/tex/latex/hyper/hyper.sty
new file mode 100644
index 00000000000..3a2e44f1eee
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/hyper/hyper.sty
@@ -0,0 +1,1303 @@
+%%
+%% This is file `hyper.sty',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% hyper.dtx (with options: `hyper')
+%%
+%% File: hyper.dtx Copyright (C) 1995--1999 Michael Mehlich
+%% This program can be redistributed and/or modified under the terms
+%% of the LaTeX Project Public License Distributed from CTAN
+%% archives in directory macros/latex/base/lppl.txt; either
+%% version 1 of the License, or any later version.
+\def\fileversion{V4.2d}
+\def\filedate{1999/03/09}
+\def\docdate{1999/03/09}
+%%
+%% \CharacterTable
+%% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z
+%% Lower-case \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z
+%% Digits \0\1\2\3\4\5\6\7\8\9
+%% Exclamation \! Double quote \" Hash (number) \#
+%% Dollar \$ Percent \% Ampersand \&
+%% Acute accent \' Left paren \( Right paren \)
+%% Asterisk \* Plus \+ Comma \,
+%% Minus \- Point \. Solidus \/
+%% Colon \: Semicolon \; Less than \<
+%% Equals \= Greater than \> Question mark \?
+%% Commercial at \@ Left bracket \[ Backslash \\
+%% Right bracket \] Circumflex \^ Underscore \_
+%% Grave accent \` Left brace \{ Vertical bar \|
+%% Right brace \} Tilde \~}
+%%
+\NeedsTeXFormat{LaTeX2e}[1995/12/01]
+\ProvidesPackage{hyper}[\filedate\space HyperLaTeX2e extension]
+\bgroup
+ \catcode`\!00\relax
+ \catcode`\"12\relax
+ !catcode`!\12!relax
+ !gdef!hyper@quote{"}
+ !gdef!hyper@backslash{\}
+ !global!edef!hyper@hash{!string#}
+ !global!edef!hyper@tilde{!string~}
+!egroup
+\AtBeginDocument{\let\hyper@auxout\@auxout}
+\newcount\hyper@changed
+\global\hyper@changed=0
+\newcount\hyper@cnt%careful, this is used as a temporary counter in various places
+\def\hyper@change#1{%set change value (powers of 2 only), in use: 1,2,4,8
+ \hyper@cnt\hyper@changed\relax%
+ \divide\hyper@cnt#1\relax%
+ \ifodd\hyper@cnt\else%
+ \global\advance\hyper@changed#1\relax%
+ \fi%
+}
+\def\newhyper#1#2{%
+ \bgroup%
+ \def\uppercase{<UPPERCASE>}%
+ \def\lowercase{<LOWERCASE>}%
+ \expandafter\ifx\csname hyper@#1\endcsname\relax\else%
+ \hyper@change2\relax%
+ \PackageWarningNoLine{hyper}%
+ {Hyper anchor #1 multiply defined}%
+ \fi%
+ \expandafter\global\expandafter\def\csname hyper@#1\endcsname{#2}%
+ \egroup%
+}
+\def\newhyper@check#1#2{%
+ \def\reserved@a{#2}%
+ \bgroup%
+ \def\uppercase{<UPPERCASE>}%
+ \def\lowercase{<LOWERCASE>}%
+ \expandafter\ifx\csname hyper@#1\endcsname\reserved@a\else%
+ \expandafter\ifx\csname hyper@new@#1\endcsname\reserved@a\else%
+ \global\hyper@change4\relax%
+ \fi%
+ \fi%
+ \egroup%
+}
+\let\hyper@enddocument\enddocument
+\def\hyper@check@end{%
+ \ifodd\hyper@changed%1
+ \PackageWarningNoLine{hyper}{There were undefined hyper references}%
+ \fi%
+ \divide\hyper@changed2\relax%
+ \ifodd\hyper@changed%2
+ \PackageWarningNoLine{hyper}%
+ {There were multiply defined hyper anchors}%
+ \fi%
+ \divide\hyper@changed2\relax%
+ \ifodd\hyper@changed%4
+ \PackageWarningNoLine{hyper}%
+ {Hyper anchor(s) may have changed.\MessageBreak
+ Rerun to get hyper references right}%
+ \fi%
+ \divide\hyper@changed2\relax%
+ \ifodd\hyper@changed%8
+ \PackageWarningNoLine{hyper}%
+ {Footnote hyper reference(s) may have been forwarded\MessageBreak
+ to next page.\MessageBreak
+ Check result to ensure this being correct.\MessageBreak
+ If not rerun to get footnote hyper references right}%
+ \fi%
+}
+\def\enddocument{%
+ \let\hyper@@end\@@end%
+ \def\@@end{\hyper@check@end\hyper@@end}%
+ \let\newhyper\newhyper@check%
+ \hyper@enddocument%
+}
+\def\hyper@to@aux#1{%
+ \bgroup%
+ \def\uppercase{<UPPERCASE>}%
+ \def\lowercase{<LOWERCASE>}%
+ \expandafter\ifx\csname hyper@#1\endcsname\relax%
+ \expandafter\ifx\csname hyper@new@#1\endcsname\relax%
+ \expandafter\global%
+ \expandafter\expandafter\expandafter\def\csname hyper@new@#1\endcsname%
+ {{\@currentlabel}{\thepage}}%
+ \fi%
+ \fi%
+ \@bsphack%
+ \protected@write%
+ \hyper@auxout%
+ {}%
+ {\string\newhyper%
+ {#1}%
+ {{\@currentlabel}{\thepage}}%
+ }%
+ \@esphack%
+ \egroup%
+}
+\newbox\hyper@box@text
+\newbox\hyper@box@ref
+\newdimen\hyper@fixdim
+\newif\if@hyper@is@active
+\@hyper@is@activefalse
+\def\hyper@html{html:}
+\bgroup
+ \catcode`\<12\catcode`\>12\relax%
+ \catcode`\:12\catcode`\=12\catcode`\/12\relax%
+ \gdef\hyper{%
+ \def\hyper@unnested@special##1##2##3{%
+ \special{\hyper@html##1}##3\special{\hyper@html##2}%
+ }%
+ \def\hyper@unnested@special@anchor@nofix##1##2##3{%
+ \special{\hyper@html##1}\hyper@anchor@color{##3}\special{\hyper@html##2}%
+ }%
+ \def\hyper@unnested@special@reference@nofix##1##2##3{%
+ \special{\hyper@html##1}\hyper@ref@color{##3}\special{\hyper@html##2}%
+ }%
+ \def\hyper@unnested@special##1##2{%
+ \hyper@fixdim\ht\hyper@box@text%
+ \advance\hyper@fixdim\dp\hyper@box@text%
+ \advance\hyper@fixdim-8pt%
+ \setbox\hyper@box@ref=\hbox{%
+ \parindent0pt\leftskip0pt\rightskip0pt%
+ \leftmargin0pt\rightmargin\wd\hyper@box@text\advance\rightmargin0.5pt%
+ \linewidth\rightmargin\textwidth\rightmargin%
+ \noindent\vbox{%
+ \hrule height \hyper@fixdim width 0pt%
+ \special{\hyper@html##1}\hbox to\linewidth{\hfill}%
+ \hrule height -\hyper@fixdim width 0pt%
+ \hbox to\linewidth{\hfill\special{\hyper@html##2}}%
+ \hrule height 0pt width 0pt%
+ }%
+ }%
+ \ht\hyper@box@ref0pt%
+ \dp\hyper@box@ref0pt%
+ \wd\hyper@box@ref0pt%
+ \hyper@fixdim\ht\hyper@box@text%
+ \advance\hyper@fixdim-8pt%
+ \hbox{\raise\hyper@fixdim\copy\hyper@box@ref\copy\hyper@box@text}%
+ \setbox\hyper@box@ref=\hbox{}%
+ }%
+ \def\hyper@unnested@special@anchor@fix##1##2##3{%
+ \setbox\hyper@box@text=\hbox{\hyper@anchor@color{##3}}%
+ \hyper@unnested@special{##1}{##2}%
+ \setbox\hyper@box@text=\hbox{}%
+ }%
+ \def\hyper@unnested@special@reference@fix##1##2##3{%
+ \setbox\hyper@box@text=\hbox{\hyper@ref@color{##3}}%
+ \hyper@unnested@special{##1}{##2}%
+ \setbox\hyper@box@text=\hbox{}%
+ }
+ \let\hyper@unnested@special@reference\hyper@unnested@special@reference@nofix%
+ \let\hyper@unnested@special@anchor\hyper@unnested@special@anchor@nofix%
+ \def\hyper@nested@special##1##2##3##4{%
+ \ifx\hyper@unnested@special@reference\hyper@unnested@special@reference@nofix%
+ \if@hyper@is@active%
+ \expandafter\expandafter\expandafter%
+ \special\expandafter\@firstoftwo\hyper@special@last%
+ {\def\hyper@special@last{{{\hyper@html##4}}{{\hyper@html##2}}}%
+ ##1{##2}{##4}{##3}%
+ }%
+ \expandafter\expandafter\expandafter%
+ \special\expandafter\@secondoftwo\hyper@special@last%
+ \else%
+ \def\hyper@special@last{{{\hyper@html##4}}{{\hyper@html##2}}}%
+ \@hyper@is@activetrue\relax%
+ ##1{##2}{##4}{##3}%
+ \@hyper@is@activefalse\relax%
+ \fi%
+ \else%
+ \if@hyper@is@active%
+ ##1{##2}{##4}{##3}%
+ \else%
+ \@hyper@is@activetrue\relax%
+ ##1{##2}{##4}{##3}%
+ \@hyper@is@activefalse\relax%
+ \fi%
+ \fi%
+ }%
+ \def\hyper@special@anchor{\hyper@nested@special\hyper@unnested@special@anchor}
+ \def\hyper@special@reference{\hyper@nested@special\hyper@unnested@special@reference}
+ \def\f@hyper@ref@ext[##1][##2][##3]\end@hyper@ref##4{%
+ \ifvmode\leavevmode\fi%
+ \hyper@special@reference%
+ {<a href=\hyper@quote##1##2\hyper@hash##3\hyper@quote>}%
+ {##4}%
+ {</a>}%
+ }%
+ \def\hyper@check@fn##1.##2.##3.##4\hyper@check@fn{%
+ \def\hyper@tmpa{fn}%mark for link to footnote
+ \def\hyper@tmpb{##1}%
+ \ifx\hyper@tmpa\hyper@tmpb{%
+ \ifx?##3\relax%
+ \global\let\hyper@forwarded@fn\@empty%
+ \else%
+ \hyper@cnt##3\relax% fetch page
+ \advance\hyper@cnt1\relax% advance page by one
+ \global\edef\hyper@forwarded@fn{fn.##2.\the\hyper@cnt}%create new link
+ \fi%
+ }%
+ \else%
+ \global\let\hyper@forwarded@fn\@empty%
+ \fi%
+ }%
+ \let\hyper@thepage\thepage%
+ \def\f@hyper@ref@int##1\end@hyper@ref##2{%
+ \ifvmode\leavevmode\fi%
+ \expandafter\ifx\csname hyper@##1\endcsname\relax%
+ \expandafter\ifx\csname hyper@new@##1\endcsname\relax%
+ \hyper@check@fn##1...\hyper@check@fn%
+ \ifx\hyper@forwarded@fn\@empty%
+ \PackageWarning{hyper}%
+ {Hyper reference `##1' for `##2' on page \hyper@thepage\space undefined}%
+ \hyper@change1\relax%
+ \hyper@undef@color{##2}%
+ \else%
+ \expandafter\ifx\csname hyper@\hyper@forwarded@fn\endcsname\relax%
+ \expandafter\ifx\csname hyper@new@\hyper@forwarded@fn\endcsname\relax%
+ \PackageWarning{hyper}%
+ {Hyper reference `##1' for `##2' %
+ on page \hyper@thepage\space undefined}%
+ \hyper@change1\relax%
+ \hyper@undef@color{##2}%
+ \else%
+ \hyper@change8\relax%
+ \PackageWarning{hyper}%
+ {Hyper reference `##1' for `##2' on page \hyper@thepage\space%
+ forwarded to `\hyper@forwarded@fn'}%
+ \hyper@special@reference%
+ {<a href=\hyper@quote\hyper@hash\hyper@forwarded@fn\hyper@quote>}%
+ {##2}%
+ {</a>}%
+ \fi%
+ \else%
+ \hyper@change8\relax%
+ \PackageWarning{hyper}%
+ {Hyper reference `##1' for `##2' on page \hyper@thepage\space%
+ forwarded to `\hyper@forwarded@fn'}%
+ \hyper@special@reference%
+ {<a href=\hyper@quote\hyper@hash\hyper@forwarded@fn\hyper@quote>}%
+ {##2}%
+ {</a>}%
+ \fi%
+ \fi%
+ \else%
+ \hyper@special@reference%
+ {<a href=\hyper@quote\hyper@hash##1\hyper@quote>}%
+ {##2}%
+ {</a>}%
+ \fi%
+ \else%
+ \hyper@special@reference%
+ {<a href=\hyper@quote\hyper@hash##1\hyper@quote>}%
+ {##2}%
+ {</a>}%
+ \fi%
+ }%
+ \def\f@hyper@ref{%
+ \@ifnextchar[{\f@hyper@ref@ext[]}{\f@hyper@ref@int}%
+ }%
+ \def\fragilehyperreference##1{%
+ \expandafter\expandafter\expandafter\f@hyper@ref##1\end@hyper@ref%
+ }%
+ \def\f@hyper@page@ref{%
+ \@ifnextchar[{\f@hyper@ref@page@ext[page.]}{\f@hyper@ref@int page.}%
+ }%
+ \def\fragilehyperpagereference##1{%
+ \expandafter\expandafter\expandafter%
+ \f@hyper@page@ref##1\end@hyper@ref%
+ }%
+ \def\fragilehyperanchor##1##2{%
+ \ifvmode\leavevmode\fi%
+ \hyper@special@anchor%
+ {<a name=\hyper@quote##1\hyper@quote>}%
+ {\hyper@to@aux{##1}%
+ ##2%
+ }%
+ {</a>}%
+ }%
+ \def\fragileblindhyperanchor##1{%
+ \hyper@special@anchor%
+ {<a name=\hyper@quote##1\hyper@quote>}%
+ {\hyper@to@aux{##1}}%
+ {</a>}%
+ }%
+ \def\fragilehyperURL##1##2##3##4{%
+ \ifvmode\leavevmode\fi%
+ \def\hyper@tmp{##4}%
+ \def\hyper@tmpa{##1}%
+ \def\hyper@tmpb{##2}%
+ \def\hyper@tmpc{##3}%
+ \ifx\hyper@tmp\@empty%
+ %
+ \else\ifx\hyper@tmpa\@empty%
+ \ifx\hyper@tmpb\@empty%
+ \ifx\hyper@tmpc\@empty%
+ {##4}%
+ \else%
+ \hyper@special@reference%
+ {<a href=\hyper@quote##3\hyper@quote>}%
+ {##4}%
+ {</a>}%
+ \fi%
+ \else\ifx\hyper@tmpc\@empty%
+ \hyper@special@reference%
+ {<a href=\hyper@quote//##2/\hyper@quote>}%
+ {##4}%
+ {</a>}%
+ \else%
+ \hyper@special@reference%
+ {<a href=\hyper@quote//##2/##3\hyper@quote>}%
+ {##4}%
+ {</a>}%
+ \fi\fi%
+ \else\ifx\hyper@tmpb\@empty%
+ \ifx\hyper@tmpc\@empty%
+ {##4}%
+ \else%
+ \hyper@special@reference%
+ {<a href=\hyper@quote##1:##3\hyper@quote>}%
+ {##4}%
+ {</a>}%
+ \fi%
+ \else\ifx\hyper@tmpc\@empty%
+ \hyper@special@reference%
+ {<a href=\hyper@quote##1://##2/\hyper@quote>}%
+ {##4}%
+ {</a>}%
+ \else%
+ \hyper@special@reference%
+ {<a href=\hyper@quote##1://##2/##3\hyper@quote>}%
+ {##4}%
+ {</a>}%
+ \fi\fi\fi\fi%
+ }%
+ }
+\egroup
+\hyper
+\def\nohyper{%
+ \def\hyper@fix##1{%
+ \ifx\hyper@unnested@special@reference\hyper@unnested@special@reference@nofix%
+ ##1%
+ \else%
+ \hbox{##1}%
+ \fi%
+ }
+ \def\fragilehyperreference##1##2{%
+ \ifvmode\leavevmode\fi\hyper@fix{\hyper@ref@color{##2}}%
+ }%
+ \def\fragilehyperpagereference##1##2{%
+ \ifvmode\leavevmode\fi\hyper@fix{\hyper@ref@color{##2}}%
+ }%
+ \def\fragilehyperanchor##1##2{%
+ \ifvmode\leavevmode\fi\hyper@anchor@color{##2}%
+ }%
+ \def\fragileblindhyperanchor##1{}%
+ \def\fragilehyperURL##1##2##3##4{%
+ \ifvmode\leavevmode\fi\hyper@fix{\hyper@ref@color{##4}}%
+ }%
+}
+\def\hyperreference{\protect\fragilehyperreference}
+\def\hyperpagereference{\protect\fragilehyperpagereference}
+\def\hyperanchor{\protect\fragilehyperanchor}
+\def\blindhyperanchor{\protect\fragileblindhyperanchor}
+\def\fragileChyperURL{%
+ \bgroup%
+ \catcode`\<12\catcode`\>12\catcode`\"12\relax%
+ \catcode`\:12\catcode`\=12\catcode`\/12\relax%
+ \catcode`\#12\catcode`\~12\relax%\catcode`\%12\relax%
+ \finish@hyperURL%
+}
+\def\finish@hyperURL#1#2#3#4{%
+ \fragilehyperURL{#1}{#2}{#3}{#4}%
+ \egroup%
+}
+\def\hyperURL{\protect\fragileChyperURL}
+\def\hyper@color{%
+ \definecolor{refcolor}{rgb}{0,0,1}%
+ \definecolor{undefrefcolor}{rgb}{1,0,0}%
+ \definecolor{anchorcolor}{rgb}{0,0.75,0.75}%
+ \def\hyper@ref@color##1{\textcolor{refcolor}{##1}}%
+ \def\hyper@undef@color##1{\textcolor{undefrefcolor}{##1}}%
+ \def\hyper@anchor@color##1{\textcolor{anchorcolor}{##1}}%
+}
+\def\hyper@gray{%
+ \definecolor{refcolor}{gray}{0.75}%
+ \definecolor{undefrefcolor}{gray}{0.25}%
+ \definecolor{anchorcolor}{gray}{0.5}%
+ \def\hyper@ref@color##1{\textcolor{refcolor}{##1}}%
+ \def\hyper@undef@color##1{\textcolor{undefrefcolor}{##1}}%
+ \def\hyper@anchor@color##1{\textcolor{anchorcolor}{##1}}%
+}
+\def\hyper@black{%
+ \def\hyper@ref@color##1{##1}%
+ \def\hyper@undef@color##1{##1}%
+ \def\hyper@anchor@color##1{##1}%
+}
+\hyper@black
+\newcount\hypercount
+\hypercount=0\relax
+\def\@currenthyper{}
+\def\hyper@setcurrent{%
+ \global\advance\hypercount1\relax%
+ \edef\@currenthyper{\the\hypercount}%
+}%
+\def\hyper@settype#1{%
+\edef\@currenthypertype{#1}%
+}%
+\def\hyper@ref@toggle#1#2#3{#3[\hyperreference{#1}{#2}]}
+\def\ref@by@expanded@hyper#1\end@hyper{{#1}}
+\def\callwithexpandedhyperref#1#2{%
+ \expandafter\expandafter\expandafter\hyper@ref@toggle%
+ \expandafter\ref@by@expanded@hyper\@currenthyper\end@hyper%
+ {#2}{#1}%
+}
+\def\hyperlabel#1{\@bsphack
+ \protected@write\hyper@auxout{}%
+ {\string\newlabel{#1}%
+ {{\@currenthypertype}{\@currenthyper}{\@currentlabel}{\thepage}}}%
+ \@esphack}
+\def\hyper@secondoffour#1#2#3#4{#2}
+\def\hyper@thirdoffour#1#2#3#4{#3}
+\def\hyper@forthoffour#1#2#3#4{#4}
+\def\hyper@snd@forthoffour[#1][#2]\end@hyper{#2}
+\def\hyper@this@forthoffour#1\end@hyper{#1}
+\def\hyper@test@forthoffour{%
+ \@ifnextchar[{\hyper@snd@forthoffour}{\hyper@this@forthoffour}%
+}
+\def\hyper@page@forthoffour#1#2#3#4{%
+ \expandafter\hyper@test@forthoffour#4\end@hyper%
+}
+\let\hyper@thepage\thepage
+\def\hyper@setref#1#2#3#4{%
+ \ifx#1\relax%
+ \protect\G@refundefinedtrue%
+ #4\nfss@text{\reset@font\bfseries ??}%
+ \@latex@warning{Reference `#3' on page \hyper@thepage \space undefined}%
+ \else%
+ \edef\hyper@tmp{\expandafter\hyper@secondoffour#1}%
+ \ifx\hyper@tmp\@empty%
+ \ifx#2\hyper@secondoffour%
+ #4\null%
+ \else\ifx#2\hyper@thirdoffour%
+ #4\expandafter#2#1\null%
+ \else%
+ #4\expandafter#2#1\null%
+ \fi\fi%
+ \else%
+ \ifx#2\hyper@secondoffour%
+ \hyperreference{\expandafter\hyper@secondoffour#1}{#4}\null%
+ \else\ifx#2\hyper@thirdoffour%
+ \hyperreference%
+ {\expandafter\hyper@secondoffour#1}%
+ {#4\expandafter#2#1\null}\null%
+ \else%
+ \hyperpagereference%
+ {\expandafter\hyper@forthoffour#1}%
+ {#4\expandafter#2#1\null}\null%
+ \fi\fi%
+ \fi%
+ \fi%
+}
+\def\@@hypernoref[#1]#2{%
+ \expandafter\hyper@setref\csname r@#2\endcsname%
+ \hyper@secondoffour{#2}{#1}%
+}
+\def\@hypernoref[#1]{\@@hypernoref[#1]}
+\def\hypernoref{\@ifnextchar[{\@hypernoref}{\@@hypernoref[]}}
+\def\@@hyperref[#1]#2{%
+ \expandafter\hyper@setref\csname r@#2\endcsname%
+ \hyper@thirdoffour{#2}{#1}%
+}
+\def\@hyperref[#1]{\@@hyperref[#1~]}
+\def\hyperref{\@ifnextchar[{\@hyperref}{\@@hyperref[]}}
+\def\@@hyperpageref[#1]#2{%
+ \expandafter\hyper@setref\csname r@#2\endcsname%
+ \hyper@page@forthoffour{#2}{#1}%
+}
+\def\@hyperpageref[#1]{\@@hyperpageref[#1~]}
+\def\hyperpageref{\@ifnextchar[{\@hyperpageref}{\@@hyperpageref[]}}
+\let\label\hyperlabel
+\def\noref{\protect\hypernoref}
+\def\ref{\protect\hyperref}
+\def\pageref{\protect\hyperpageref}
+\def\labeltext#1#2{%
+ \bgroup%
+ \hyper@setcurrent%
+ \hyper@settype{text}%
+ \def\@currentlabel{#2}%
+ \label{#1}%
+ \hyperanchor{\@currenthyper}{#2}%
+ \egroup%
+}
+\def\refcurrent#1{\hyperreference{\@currenthyper}{#1}}
+\def\fragilerefnext#1#2{\bgroup%
+ \hypercount=#1\relax\advance\hypercount1\relax%
+ \hyperreference{\the\hypercount}{#2}%
+\egroup}
+\def\refnext#1{\protect\fragilerefnext{\the\hypercount}{#1}}
+\let\hyper@refstepcounter\refstepcounter
+\def\refstepcounter{\hyper@setcurrent\hyper@settype{counter}\hyper@refstepcounter}
+\def\ignore@next@refstepcounter{%
+ \def\refstepcounter##1{%
+ \def\refstepcounter{\hyper@setcurrent\hyper@settype{counter}\hyper@refstepcounter}%
+ }%
+}
+\let\hyper@contentsline\contentsline
+\def\contentsline#1#2#3{%
+ \hyper@contentsline{#1}{#2}{\hyperpagereference{#3}{#3}}%
+}
+\let\hyper@thepage\thepage
+\def\hyper@anchorpage{%
+ \fragilehyperanchor{page.\hyper@thepage}{\hyper@thepage}%
+}
+\def\hyper@referencepage{%
+ \fragilehyperreference{page.\hyper@thepage}{\hyper@thepage}%
+}
+\def\hyper@empty{\@empty}
+\def\hyper@evenhead{\@evenhead}
+\def\hyper@oddhead{\@oddhead}
+\def\hyper@evenfoot{\@evenfoot}
+\def\hyper@oddfoot{\@oddfoot}
+\def\hyper@modifyheadfoot@pagenumber{%
+ \let\hyper@thehead\@thehead%
+ \ifx\hyper@thehead\hyper@oddhead\let\hyper@thehead\@oddhead\fi%
+ \ifx\hyper@thehead\hyper@evenhead\let\hyper@thehead\@evenhead\fi%
+ \let\hyper@thefoot\@thefoot%
+ \ifx\hyper@thefoot\hyper@oddfoot\let\hyper@thefoot\@oddfoot\fi%
+ \ifx\hyper@thefoot\hyper@evenfoot\let\hyper@thefoot\@evenfoot\fi%
+ \def\@thehead{%
+ \ifnum\ifnum\ifx\hyper@thehead\@empty1\else0\fi%
+ \ifx\hyper@thehead\hyper@empty1\else0\fi%
+ >0 0\else1\fi%
+ \ifnum\ifx\hyper@thefoot\@empty1\else0\fi%
+ \ifx\hyper@thefoot\hyper@empty1\else0\fi%
+ >0 0\else1\fi%
+ >0\relax%
+ \else%
+ \blindhyperanchor{page.\thepage}%
+ \fi%
+ \let\hyper@thepage\thepage%
+ \let\thepage\hyper@anchorpage%
+ \ifx\hyper@thehead\@empty%
+ \hfil%
+ \else\ifx\hyper@thehead\hyper@empty%
+ \hfil%
+ \else%
+ \hyper@thehead%
+ \fi\fi%
+ }%
+ \def\@thefoot{%
+ \let\hyper@thepage\thepage%
+ \let\thepage\hyper@anchorpage%
+ \ifx\hyper@thefoot\@empty%
+ \hfil%
+ \else\ifx\hyper@thefoot\hyper@empty%
+ \hfil%
+ \else%
+ \hyper@thefoot%
+ \fi\fi%
+ }%
+}
+\def\hyper@modifyheadfoot@pagetop{%
+ \let\hyper@thehead\@thehead%
+ \ifx\hyper@thehead\hyper@oddhead\let\hyper@thehead\@oddhead\fi%
+ \ifx\hyper@thehead\hyper@evenhead\let\hyper@thehead\@evenhead\fi%
+ \let\hyper@thefoot\@thefoot%
+ \ifx\hyper@thefoot\hyper@oddfoot\let\hyper@thefoot\@oddfoot\fi%
+ \ifx\hyper@thefoot\hyper@evenfoot\let\hyper@thefoot\@evenfoot\fi%
+ \def\@thehead{%
+ \blindhyperanchor{page.\thepage}%
+ \let\hyper@thepage\thepage%
+ \let\thepage\hyper@referencepage%
+ \ifx\hyper@thehead\@empty%
+ \hfil%
+ \else\ifx\hyper@thehead\hyper@empty%
+ \hfil%
+ \else%
+ \hyper@thehead%
+ \fi\fi%
+ }%
+ \def\@thefoot{%
+ \let\hyper@thepage\thepage%
+ \let\thepage\hyper@referencepage%
+ \ifx\hyper@thefoot\@empty%
+ \hfil%
+ \else\ifx\hyper@thefoot\hyper@empty%
+ \hfil%
+ \else%
+ \hyper@thefoot%
+ \fi\fi%
+ }%
+}
+\let\hyper@begindvi\@begindvi
+\def\@begindvi{%
+ \hyper@begindvi%
+ \hyper@modifyheadfoot%
+ \global\let\@begindvi\hyper@modifyheadfoot%
+}
+\let\hyper@modifyheadfoot\hyper@modifyheadfoot@pagenumber
+\let\hyper@sect\@sect
+\def\@sect#1#2#3#4#5#6[#7]#8{%
+ \ifnum #2>\c@secnumdepth%
+ \hyper@setcurrent%
+ \else%
+ \refstepcounter{#1}%
+ \ignore@next@refstepcounter%
+ \fi%
+ \hyper@settype{#1}%
+ \global\let\@currenthyper\@currenthyper%
+ \global\let\@currenthypertype\@currenthypertype%
+ \callwithexpandedhyperref%
+ {\hyper@sect{#1}{#2}{#3}{#4}{#5}{#6}}%
+ {#7}%
+ {\hyperanchor{\@currenthyper}{#8}}%
+}
+\let\hyper@ssect\@ssect
+\def\@ssect#1#2#3#4#5{%
+ \hyper@setcurrent%
+ \hyper@settype{#1}%
+ \global\let\@currenthyper\@currenthyper%
+ \global\let\@currenthypertype\@currenthypertype%
+ \hyper@ssect{#1}{#2}{#3}{#4}{\hyperanchor{\@currenthyper}{#5}}%
+}
+\def\@lbibitem[#1]#2{%
+ \hyper@setcurrent%
+ \hyper@settype{citation}%
+ \item[\@biblabel{\hyperanchor{\@currenthyper}{#1}}\hfill]%
+ \if@filesw%
+ {\let\protect\@unexpandable@protect%
+ \immediate%
+ \write\@auxout{%
+ \string\bibcite{#2}{\hyperreference{\@currenthyper}{#1}}%
+ }%
+ }%
+ \fi%
+ \ignorespaces%
+}
+\def\@bibitem{%
+ \stepcounter{\@listctr}%
+ \hyper@settype{citation}%
+ \@lbibitem[\the\value{\@listctr}]%
+}
+\def\@eqnnum{%
+ \hyperanchor{\@currenthyper}{\normalfont\normalcolor(\theequation)}%
+}
+\let\hyper@eqnarray\eqnarray
+\def\eqnarray{%
+ \hyper@setcurrent%
+ \def\@currenthyper{\the\hypercount}%
+ \hyper@settype{equation}%
+ \hyper@eqnarray%
+}
+\let\hyper@xeqncr\@xeqncr
+\def\@xeqncr[#1]{%
+ \hyper@xeqncr[#1]%
+ \noalign{\hyper@setcurrent\hyper@settype{equation}}%
+}
+\long\def\@caption#1[#2]#3{\par%
+ \addcontentsline%
+ {\csname ext@#1\endcsname}%
+ {#1}%
+ {\protect\numberline{\csname the#1\endcsname}%
+ {\ignorespaces \hyperreference{\@currenthyper}{#2}}%
+ }%
+ \begingroup%
+ \@parboxrestore%
+ \normalsize%
+ \@makecaption{\csname fnum@#1\endcsname}{\ignorespaces #3}\par%
+ \endgroup%
+}
+\newcount\hyper@fnmark@count
+\hyper@fnmark@count0
+\def\hyper@currentfnmark{%
+ \global\advance\hyper@fnmark@count1\relax%
+ \@bsphack%
+ \protected@write\hyper@auxout%
+ {}%
+ {\string\hyperfnpage{\the\hyper@fnmark@count}{\thepage}}%
+ \@esphack%
+ \hb@xt@\z@{%
+ \ifx\hyper@minipage@label\@empty%
+ \global\edef\hyper@current@fnmark%
+ {fn.\@arabic\c@footnote.%
+ \expandafter%
+ \ifx\csname hyper@fn@\the\hyper@fnmark@count\endcsname%
+ \relax%
+ ?%
+ \else%
+ \csname hyper@fn@\the\hyper@fnmark@count\endcsname%
+ \fi%
+ }%
+ \else\ifnum\hyper@minipage@label=0\relax%
+ \global\edef\hyper@current@fnmark%
+ {fn.\hyper@minipage@label.\@arabic\c@footnote.%
+ \expandafter%
+ \ifx\csname hyper@fn@\the\hyper@fnmark@count\endcsname%
+ \relax%
+ ?%
+ \else%
+ \csname hyper@fn@\the\hyper@fnmark@count\endcsname%
+ \fi%
+ }%
+ \else%
+ \global\edef\hyper@current@fnmark%
+ {fn.\hyper@minipage@label.\@arabic\c@mpfootnote.%
+ \expandafter%
+ \ifx\csname hyper@fn@\the\hyper@fnmark@count\endcsname%
+ \relax%
+ ?%
+ \else%
+ \csname hyper@fn@\the\hyper@fnmark@count\endcsname%
+ \fi%
+ }%
+ \fi\fi%
+ }%
+}
+\def\hyperfnpage#1#2{%
+ \expandafter\global\expandafter\def\csname hyper@fn@#1\endcsname{#2}%
+}
+\def\hyperfnpage@check#1#2{%
+ \def\reserved@a{#2}%
+ \expandafter\ifx\csname hyper@fn@#1\endcsname\reserved@a\else%
+ \hyper@change4\relax%
+ \fi%
+}
+\let\hyper@fn@enddocument\enddocument
+\def\enddocument{%
+ \let\hyperfnpage\hyperfnpage@check%
+ \global\hyper@fnmark@count0\relax%
+ \hyper@fn@enddocument%
+}
+\def\@makefnmark{%
+ \hyper@currentfnmark%
+ \hbox{\@textsuperscript{%
+ \normalfont\hyperreference%
+ {\hyper@current@fnmark}%
+ {\@thefnmark}%
+ }}%
+}
+\def\hyper@makefnmark@text{%
+ \hyper@currentfnmark%
+ \hbox{\@textsuperscript{%
+ \normalfont\hyperanchor%
+ {\hyper@current@fnmark}%
+ {\@thefnmark}%
+ }}%
+}
+\newcount\hyper@minipage@cnt
+\hyper@minipage@cnt=0
+\edef\hyper@minipage@label{}
+\let\hyper@minipage\minipage
+\let\hyper@endminipage\endminipage
+\def\minipage{%
+ \bgroup%
+ \global\advance\hyper@minipage@cnt1\relax%
+ \edef\hyper@minipage@label{\the\hyper@minipage@cnt}%
+ \hyper@minipage%
+}
+\def\endminipage{%
+ \hyper@endminipage%
+ \egroup%
+}
+\AtBeginDocument{%
+ \let\hyper@maketitle\maketitle%
+ \def\maketitle{%
+ \edef\hyper@minipage@label{0}%
+ \hyper@maketitle%
+ \let\hyper@minipage@label\@empty%
+ }%
+}
+\def\hyper@thanks@footnotetext#1[#2]#3{%
+ \bgroup%
+ \edef\hyper@current@fnmark{#1}%
+ \let\hyper@currentfnmark\relax%
+ \footnotetext[#2]{#3}%
+ \egroup%
+}
+\def\thanks#1{\footnotemark%
+ \expandafter\protected@xdef\expandafter\@thanks\expandafter{\expandafter\@thanks%
+ \expandafter\protect%
+ \expandafter\hyper@thanks@footnotetext%
+ \expandafter{\hyper@current@fnmark}[\the\c@footnote]{#1}}%
+}
+\let\hyper@item\@item
+\def\@item[#1]{%
+ \if@noitemarg%
+ \if@nmbrlist%
+ \hyper@item[\hyperanchor{\@currenthyper}{#1}]%
+ \else%
+ \hyper@item[{#1}]%
+ \fi%
+ \else%
+ \hyper@item[{#1}]%
+ \fi%
+}
+\def\hyper@idxglo@cmds{
+\RequirePackage{defpattern}
+\def\hyper@ref@page##1{\hyperpagereference{##1}{##1}}
+\defpattern\hyper@page@range[##2]{\hyper@ref@page{##2}}
+\defpattern\hyper@page@range[##2--##3]{%
+ \hyper@ref@page{##2}--\hyper@ref@page{##3}%
+}
+\defpattern\hyper@page@range[##2, ##3]{%
+ \hyper@page@range[##2], \hyper@page@range[##3]%
+}
+\def\hyper@page@cmd[##1]##2{##1{\hyper@page@range[##2]}}
+\def\hyper@page@nocmd##1{\hyper@page@range[##1]}
+\def\hyperpage{\@ifnextchar[{\hyper@page@cmd}{\hyper@page@nocmd}}
+\let\hyper@index\index
+\let\hyper@glossary\glossary
+\defpattern\hyper@ig@pat[##2|##3]{##2{##3|hyperpage}}
+\defpattern\hyper@ig@pat[##2|##3|##4]{%
+ ##2{##3|hyperpage[\hyper@backslash##4]}%
+}
+\defpattern\hyper@ig@pat[##2|##3|(##4]{%
+ ##2{##3|(hyperpage[\hyper@backslash##4]}%
+}
+\defpattern\hyper@ig@pat[##2|##3|)##4]{%
+ ##2{##3|)hyperpage[\hyper@backslash##4]}%
+}
+\defpattern\hyper@ig@pat[##2|##3|(]{##2{##3|(hyperpage}}
+\defpattern\hyper@ig@pat[##2|##3|)]{##2{##3|)hyperpage}}
+\def\hyper@ig{%
+ \@bsphack\begingroup%
+ \catcode`\@=12\catcode`\!=12\catcode`\|=12\catcode`\"=12\relax%
+ \@sanitize\hyper@ig@%
+}
+\def\hyper@ig@##1##2{%
+ \hyper@ig@pat[##1|##2]%
+ \endgroup\@esphack%
+}
+\def\index{\hyper@ig\hyper@index}
+\def\glossary{\hyper@ig\hyper@glossary}
+\let\hyper@idxglo@cmds\relax
+}
+\ifnum%
+ \ifx\@indexfile\@undefined0\else1\fi%
+ \ifx\@glossaryfile\@undefined0\else1\fi%
+ >0\relax
+ \hyper@idxglo@cmds
+\fi
+\ifx\makeindex\@empty\else
+ \let\hyper@makeindex\makeindex
+ \def\makeindex{\hyper@makeindex\hyper@idxglo@cmds}
+\fi
+\ifx\makeglossary\@empty\else
+ \let\hyper@makeglossary\makeglossary
+ \def\makeglossary{\hyper@makeglossary\hyper@idxglo@cmds}
+\fi
+\let\hyper@begintheorem\@begintheorem%
+\def\@begintheorem#1#2{\trivlist%
+ \item[\hskip%
+ \labelsep{\hyperanchor{\@currenthyper}{\bfseries #1\ #2}}%
+ ]\itshape%
+}
+\def\@opargbegintheorem#1#2#3{\trivlist%
+ \item[\hskip%
+ \labelsep%
+ {\hyperanchor{\@currenthyper}{\bfseries #1\ #2}\ (#3)}%
+ ]\itshape%
+}
+\def\hyperbackcite#1#2#3#4{}
+\def\hyper@set@option#1#2#3{%
+ \ifx#1\@undefined%
+ \def#1{#2}%
+ \else%
+ \PackageError{hyper}{#3}{}%
+ \fi}
+\def\set@hyper@class#1{%
+ \hyper@set@option\hyper@class{#1}%
+ {Only one class is allowed in option list}%
+}
+\def\set@hyper@do#1{%
+ \hyper@set@option\hyper@do{#1}%
+ {Excluding options 'yes' and 'no' in option list found}%
+}
+\def\set@hyper@pageanchor#1{%
+ \hyper@set@option\hyper@pageanchor{#1}%
+ {Excluding options 'pagenumber' and 'pagetop' in option list found}%
+}
+\def\set@hyper@color#1{%
+ \hyper@set@option\hyper@this@color{#1}%
+ {Multiple color options in option list found}%
+}
+\def\set@hyper@idxglo{%
+ \let\hyper@idxglo\hyper@idxglo@cmds%
+}
+\def\hyper@packages{}
+\def\add@hyper@package#1{%
+ \edef\hyper@packages{\hyper@packages(#1)}%
+}
+\def\hyper@extensions{}
+\def\add@hyper@extension#1{%
+ \edef\hyper@extensions{\hyper@extensions(#1)}%
+}
+\DeclareOption{article}{\set@hyper@class{article}}
+\DeclareOption{book}{\set@hyper@class{book}}
+\DeclareOption{letter}{\set@hyper@class{letter}}
+\DeclareOption{ltxdoc}{\set@hyper@class{ltxdoc}}
+\DeclareOption{ltxguide}{\set@hyper@class{ltxguide}}
+\DeclareOption{ltnews}{\set@hyper@class{ltnews}}
+\DeclareOption{proc}{\set@hyper@class{proc}}
+\DeclareOption{report}{\set@hyper@class{report}}
+\DeclareOption{slides}{\set@hyper@class{slides}}
+\DeclareOption{amsart}{\set@hyper@class{amsart}}
+\DeclareOption{amsproc}{\set@hyper@class{amsproc}}
+\DeclareOption{amsbook}{\set@hyper@class{amsbook}}
+\DeclareOption{amsdtx}{\set@hyper@class{amsdtx}}
+\DeclareOption{amsldoc}{\set@hyper@class{amsldoc}}
+\DeclareOption{cweb}{\set@hyper@class{cweb}}
+\DeclareOption{yes}{\set@hyper@do{\hyper}}
+\DeclareOption{no}{\set@hyper@do{\nohyper}}
+\DeclareOption{fixhyperbox}{%
+ \AtBeginDocument{%
+ \let\hyper@unnested@special@reference\hyper@unnested@special@reference@fix%
+ \let\hyper@unnested@special@anchor\hyper@unnested@special@anchor@fix%
+ }%
+}
+\DeclareOption{color}{\set@hyper@color{\hyper@color}}
+\DeclareOption{gray}{\set@hyper@color{\hyper@gray}}
+\DeclareOption{black}{\set@hyper@color{\hyper@black}}
+\DeclareOption{pagenumber}{\set@hyper@pageanchor{\hyper@modifyheadfoot@pagebottom}}
+\DeclareOption{pagetop}{\set@hyper@pageanchor{\hyper@modifyheadfoot@pagetop}}
+\DeclareOption{indexcmds}{\set@hyper@idxglo}
+\DeclareOption{backcitepages}{%
+ \PassOptionsToPackage{pages}{hxt-bc}%
+ \add@hyper@extension{hxt-bc}%
+}
+\DeclareOption{backcitesections}{%
+ \PassOptionsToPackage{sections}{hxt-bc}%
+ \add@hyper@extension{hxt-bc}%
+}
+\DeclareOption*{\add@hyper@package{\CurrentOption}}
+\ProcessOptions
+\ifx\hyper@class\@undefined
+ \@ifclassloaded{slides}{\def\hyper@class{slides}}{}
+ \@ifclassloaded{report}{\def\hyper@class{report}}{}
+ \@ifclassloaded{letter}{\def\hyper@class{letter}}{}
+ \@ifclassloaded{book}{\def\hyper@class{book}}{}
+ \@ifclassloaded{article}{\def\hyper@class{article}}{}
+ \@ifclassloaded{proc}{\def\hyper@class{proc}}{}
+ \@ifclassloaded{ltnews}{\def\hyper@class{ltnews}}{}
+ \@ifclassloaded{ltxguide}{\def\hyper@class{ltxguide}}{}
+ \@ifclassloaded{ltxdoc}{\def\hyper@class{ltxdoc}}{}
+ \@ifclassloaded{amsart}{\def\hyper@class{amsart}}{}
+ \@ifclassloaded{amsproc}{\def\hyper@class{amsproc}}{}
+ \@ifclassloaded{amsbook}{\def\hyper@class{amsbook}}{}
+ \@ifclassloaded{amsdtx}{\def\hyper@class{amsdtx}}{}
+ \@ifclassloaded{amsldoc}{\def\hyper@class{amsldoc}}{}
+ \@ifclassloaded{cweb}{\def\hyper@class{cweb}}{}
+\fi
+\ifx\hyper@class\@undefined
+ \PackageError{hyper}{Document class can't be determined.\MessageBreak
+ Please add one to the option list%
+ }{}
+\else
+ \InputIfFileExists{\hyper@class.hyp}{}%
+ {\PackageError{hyper}{\hyper@class.hyp not found.\MessageBreak
+ Please reinstall the complete package%
+ }{}%
+ }%
+\fi
+\ifx\hyper@idxglo\@undefined\else
+ \hyper@idxglo@cmds
+\fi
+\ifx\hyper@this@color\@undefined
+\else
+ \expandafter\ifx\hyper@this@color\hyper@gray
+ \RequirePackage{color}
+ \else\expandafter\ifx\hyper@this@color\hyper@color
+ \RequirePackage{color}
+ \else\expandafter\ifx\hyper@this@color\hyper@black
+ \else
+ \PackageError{hyper}{Implementation error:\MessageBreak
+ Case for reference/anchor color definition not defined}{}
+ \fi\fi\fi
+ \hyper@this@color
+\fi
+\@ifclasswith\hyper@class{leqno}%
+ {\InputIfFileExists{leqno.hyp}{}%
+ {\PackageError{hyper}{leqno.hyp not found.\MessageBreak
+ Please reinstall the complete package}{}%
+ }%
+ }%
+ {}
+\def\hyper@loadpackage#1{%
+ \@ifpackageloaded{#1}%
+ {\InputIfFileExists{#1.hyp}%
+ {\expandafter\edef\csname hyper@loaded@#1\endcsname{#1.hyp}}%
+ {\PackageError{hyper}{#1.hyp not found.\MessageBreak
+ Please reinstall the complete package}{}%
+ }%
+ }%
+ {}
+}
+\hyper@loadpackage{amsmath}
+\hyper@loadpackage{amstex}
+\hyper@loadpackage{amsthm}
+\hyper@loadpackage{doc}
+\hyper@loadpackage{fancyheadings}
+\hyper@loadpackage{ftnright}
+\hyper@loadpackage{harvard}
+\hyper@loadpackage{longtable}
+\hyper@loadpackage{natbib}
+\hyper@loadpackage{subeqnarray}
+\hyper@loadpackage{theorem}
+\hyper@loadpackage{upref}
+\hyper@loadpackage{xr}
+\def\@hyper@load@pkg(#1){%
+ \expandafter\ifx\csname hyper@loaded@#1\endcsname\relax%
+ \IfFileExists{#1.hyp}%
+ {\IfFileExists{#1.sty}{\RequirePackage{#1}}{}%
+ \input{#1.hyp}%
+ \expandafter\edef\csname hyper@loaded@#1\endcsname{#1.hyp}%
+ }%
+ {\PackageError{hyper}{Modification file #1.hyp not found}{}}%
+ \fi%
+ \hyper@loadpackage%
+}
+\def\hyper@loadpackage{\@ifnextchar({\@hyper@load@pkg}{}}
+\expandafter\hyper@loadpackage\hyper@packages\relax
+\def\@hyper@load@ext(#1){%
+ \expandafter\ifx\csname hyper@loaded@ext@#1\endcsname\relax%
+ \IfFileExists{#1.sty}%
+ {\RequirePackage{#1}%
+ \expandafter\edef\csname hyper@loaded@ext@#1\endcsname{#1.sty}%
+ }%
+ {\PackageError{hyper}{Extension file #1.sty not found}{}}%
+ \fi%
+ \hyper@loadpackage%
+}
+\def\hyper@load@extension{\@ifnextchar({\@hyper@load@ext}{}}
+\expandafter\hyper@load@extension\hyper@extensions\relax
+\ifx\hyper@pageanchor\@undefined
+\else
+ \expandafter\let\expandafter\hyper@modifyheadfoot\hyper@pageanchor
+\fi
+\ifx\hyper@do\@undefined\else\hyper@do\fi
+\def\hyper@end@newlabel{\relax}
+\let\hyper@orig@newlabel\newlabel
+\def\hyper@newlabel#1#2#3#4#5{%
+ \ifx|#4|%
+ \hyper@orig@newlabel{#1}{{}{}{#2}{#3}}%
+ \else%
+ \hyper@orig@newlabel{#1}{{#2}{#3}{#4}{#5}}%
+ \fi%
+}
+\def\newlabel#1#2{\hyper@newlabel{#1}#2\hyper@end@newlabel\hyper@end@newlabel}
+\begingroup
+ \catcode`\<=\catcode`\{
+ \catcode`\>=\catcode`\}
+ \catcode`\{=12\catcode`\}=12
+ \catcode`\%=12
+ \gdef\hyper@open<{>
+ \gdef\hyper@close<}>
+ \gdef\hyper@comment<%>
+\endgroup
+\def\hyper@nl{^^J}%
+\long\def\hyper@protected@write#1{%
+ \begingroup%
+ \let\thepage\relax%
+ \let\protect\@unexpandable@protect%
+ \edef\reserved@a{\immediate\write\@auxout{#1}}%
+ \reserved@a%
+ \endgroup%
+ \if@nobreak\ifvmode\nobreak\fi\fi%
+}
+\gdef\hyper@aux@write{
+ \hyper@protected@write{\hyper@comment@potential%
+ \string\ifx\string\newhyper\string\@undefined%
+ }
+ \hyper@protected@write{\hyper@comment@potential%
+ \string\gdef\string\newhyper\hyper@hash1\hyper@hash2{}\hyper@nl
+ \string\gdef\string\hyperfnpage\hyper@hash1\hyper@hash2{}\hyper@nl
+ \string\global\string\let\string\@hyper@newlabel\string\newlabel\hyper@nl
+ \string\gdef\string\hyper@end@newlabel{\string\relax}\hyper@nl
+ \string\gdef\string\hyper@newlabel\hyper@hash1\hyper@hash2\hyper@hash3\hyper@hash4\hyper@hash5%
+ {\hyper@comment@potential%
+ \string\ifx\string|\hyper@hash4\string|\string\hyper@end@newlabel\hyper@comment@potential%
+ \string\@hyper@newlabel{\hyper@hash1}{{\hyper@hash2}{\hyper@hash3}}%
+ \hyper@comment@potential%
+ \string\else\hyper@comment@potential%
+ \string\@hyper@newlabel{\hyper@hash1}{{\hyper@hash4}{\hyper@hash5}}%
+ \hyper@comment@potential%
+ \string\fi\hyper@comment@potential%
+ }\hyper@nl
+ \string\gdef\string\newlabel\hyper@hash1\hyper@hash2%
+ {\string\hyper@newlabel{\hyper@hash1}\hyper@hash2%
+ \string\hyper@end@newlabel\string\hyper@end@newlabel}\hyper@nl
+ \string\gdef\string\@@hyperpage[\hyper@hash1]{\hyper@hash1}\hyper@nl
+ \string\gdef\string\@hyperpage\hyper@hash1{\hyper@hash1}\hyper@nl
+ \string\gdef\string\hyperpage%
+ {\string\@ifnextchar[\string\@@hyperpage\string\@hyperpage}\hyper@nl
+ \string\global\string\let\string\fragilehyperreference\string\@gobble\hyper@nl
+ \string\global\string\let\string\fragilehyperpagereference\string\@gobble\hyper@nl
+ \string\global\string\let\string\fragilehyperanchor\string\@gobble\hyper@nl
+ \string\global\string\let\string\fragileblindhyperanchor\string\@gobble\hyper@nl
+ \string\global\string\let\string\fragilehyperURL\string\@gobble\hyper@nl
+ \string\gdef\string\hyperbackcite\hyper@hash1\hyper@hash2\hyper@hash3\hyper@hash4%
+ {}\hyper@nl
+ \string\global\string\let\string\hyper@setref\string\@setref\hyper@nl
+ \string\gdef\string\hyper@thirdoffour\hyper@hash1\hyper@hash2\hyper@hash3%
+ {\hyper@hash2}\hyper@nl
+ \string\gdef\string\hyper@forthoffour\hyper@hash1\hyper@hash2\hyper@hash3%
+ {\hyper@hash3}\hyper@nl
+ \string\gdef\string\hyper@end@forthoffour{\string\relax}\hyper@nl
+ \string\gdef\string\@setref\hyper@hash1{\hyper@comment@real\hyper@nl
+ \string\ifx\hyper@hash1\string\relax\hyper@comment@real\hyper@nl
+ \string\def\string\hyper@next{\string\hyper@setref{\hyper@hash1}}%
+ \hyper@comment@real\hyper@nl
+ \string\else\hyper@comment@real\hyper@nl
+ \string\edef\string\hyper@tmp%
+ {\string\expandafter\string\hyper@forthoffour\hyper@hash1%
+ \string\hyper@end@forthoffour}\hyper@comment@real\hyper@nl
+ \string\ifx\string\hyper@tmp\string\hyper@end@forthoffour%
+ \hyper@comment@real\hyper@nl
+ \string\def\string\hyper@next{\string\hyper@setref{\hyper@hash1}}%
+ \hyper@comment@real\hyper@nl
+ \string\else\hyper@comment@real\hyper@nl
+ \string\edef\string\hyper@tmp%
+ {{\string\expandafter\string\hyper@thirdoffour\hyper@hash1}%
+ {\string\expandafter\string\hyper@forthoffour\hyper@hash1}}%
+ \hyper@comment@real\hyper@nl
+ \string\def\string\hyper@next{\string\hyper@setref{\string\hyper@tmp}}%
+ \hyper@comment@real\hyper@nl
+ \string\fi\hyper@comment@real\hyper@nl
+ \string\fi\hyper@comment@real\hyper@nl
+ \string\hyper@next\hyper@comment@real\hyper@nl
+ }
+ }
+ \hyper@protected@write{\hyper@comment@potential%
+ \string\begingroup\hyper@nl
+ \string\catcode\string`\string\<\string=\string\catcode\string`\string\{\hyper@nl
+ \string\catcode\string`\string\>\string=\string\catcode\string`\string\}\hyper@nl
+ \string\catcode\string`\string\{\string=12%
+ \string\catcode\string`\string\}\string=12\hyper@nl
+ \string\catcode\string`\string\%\string=12\hyper@nl
+ \string\gdef\string\hyper@open<{>\hyper@nl
+ \string\gdef\string\hyper@close<}>\hyper@nl
+ \string\gdef\string\hyper@comment<\hyper@comment@real>\hyper@nl
+ \string\endgroup
+ }
+ \hyper@protected@write{\hyper@comment@potential%
+ \string\bgroup\hyper@nl
+ \string\global\string\edef\string\hyper@hash{\string\string\hyper@hash}\hyper@nl
+ \string\egroup
+ }
+ \hyper@protected@write{\hyper@comment@potential%
+ \string\gdef\string\hyper@nl{\string^\string^J}
+ }
+ \hyper@protected@write{\hyper@comment@potential%
+ \string\def\string\hyper@hash@four{\string\hyper@hash\string\hyper@hash%
+ \string\hyper@hash\string\hyper@hash}
+ }
+ \hyper@protected@write{\hyper@comment@potential%
+ \string\global\string\long\string\def\string\hyper@protected@write\hyper@hash1%
+ {\hyper@nl
+ \string\begingroup\hyper@nl
+ \string\let\string\thepage\string\relax\hyper@nl
+ \string\let\string\protect\string\@unexpandable@protect\hyper@nl
+ \string\edef\string\reserved@a{\string\immediate\string\write\string\@auxout%
+ {\hyper@hash1}}\hyper@nl
+ \string\reserved@a\hyper@nl
+ \string\endgroup\hyper@nl
+ \string\if@nobreak\string\ifvmode\string\nobreak\string\fi\string\fi\hyper@nl
+ }
+ }
+ \hyper@protected@write{\hyper@comment@potential%
+ \string\gdef\string\hyper@aux@write\hyper@open
+ }%
+ \hyper@second@write{\hyper@comment@potential%
+ \string\hyper@write\hyper@open\hyper@nl
+ \string\begingroup\hyper@nl
+ \string\let\string\@hyper@protected@write\string\hyper@protected@write\hyper@nl
+ \string\def\string\hyper@protected@write@do\hyper@hash\hyper@hash1%
+ \hyper@hash\hyper@hash2{\hyper@nl
+ \string\begingroup\hyper@nl
+ \string\let\string\hyper@string\string\string\hyper@nl
+ \string\def\string\string%
+ {\string\hyper@string\string\string\string\hyper@string}\hyper@nl
+ \string\def\string\hyper@open%
+ {\string\hyper@string\string\hyper@open}\hyper@nl
+ \string\def\string\hyper@close%
+ {\string\hyper@string\string\hyper@close}\hyper@nl
+ \string\def\string\hyper@nl%
+ {\string\hyper@string\string\hyper@nl\string^\string^J}\hyper@nl
+ \string\def\string\hyper@comment@real%
+ {\string\hyper@string\string\hyper@comment@real}\hyper@nl
+ \string\def\string\hyper@comment@potential%
+ {\string\hyper@string\string\hyper@comment@potential%
+ \string\hyper@comment\string^\string^J}\hyper@nl
+ \string\def\string\hyper@hash%
+ {\string\hyper@string\string\hyper@hash}\hyper@nl
+ \string\@hyper@protected@write%
+ {\string\hyper@string\hyper@hash\hyper@hash1%
+ {\hyper@hash\hyper@hash2\string^\string^J}}\hyper@nl
+ \string\endgroup\hyper@nl
+ }\hyper@nl
+ \string\def\string\hyper@protected@write%
+ {\string\hyper@protected@write@do\string\hyper@protected@write}%
+ \hyper@nl
+ \string\def\string\hyper@second@write\hyper@hash\hyper@hash1{\hyper@nl
+ \string\hyper@protected@write@do\string\hyper@second@write%
+ {\hyper@hash\hyper@hash1}\hyper@nl
+ \string\@hyper@protected@write{\hyper@hash\hyper@hash1}\hyper@nl
+ }\hyper@nl
+ \string\def\string\hyper@write{\string\@gobble}\hyper@nl
+ \string\hyper@aux@write\hyper@nl
+ \string\endgroup\hyper@nl
+ \hyper@close
+ }
+ \hyper@write{
+ \begingroup
+ \let\@hyper@protected@write\hyper@protected@write
+ \def\hyper@protected@write@do##1##2{
+ \begingroup
+ \let\hyper@string\string
+ \def\string{\hyper@string\string\hyper@string}
+ \def\hyper@open{\hyper@string\hyper@open}
+ \def\hyper@close{\hyper@string\hyper@close}
+ \def\hyper@nl{\hyper@string\hyper@nl^^J}
+ \def\hyper@comment@real{\hyper@string\hyper@comment@real}
+ \def\hyper@comment@potential%
+ {\hyper@string\hyper@comment@potential\hyper@comment^^J}
+ \def\hyper@hash{\hyper@string\hyper@hash}
+ \@hyper@protected@write{\hyper@string##1{##2^^J}}
+ \endgroup
+ }
+ \def\hyper@protected@write{\hyper@protected@write@do\hyper@protected@write}
+ \def\hyper@second@write##1{
+ \hyper@protected@write@do\hyper@second@write{##1}
+ \@hyper@protected@write{##1}
+ }
+ \def\hyper@write{\@gobble}
+ \hyper@aux@write
+ \endgroup
+ }
+ \hyper@protected@write{\hyper@comment@potential%
+ \hyper@close
+ }
+ \hyper@protected@write{\hyper@comment@potential%
+ \string\AtBeginDocument{\hyper@comment@real\hyper@nl%
+ \string\let\string\hyper@write\string\relax%
+ \hyper@comment@real\hyper@nl%
+ \string\let\string\hyper@second@write\string\@gobble%
+ \hyper@comment@real\hyper@nl%
+ \string\let\string\hyper@comment@potential\string\@empty%
+ \hyper@comment@real\hyper@nl%
+ \string\let\string\hyper@comment@real\string\hyper@comment%
+ \hyper@comment@real\hyper@nl%
+ \string\hyper@aux@write\hyper@comment@real\hyper@nl%
+ }
+ }
+ \hyper@protected@write{\hyper@comment@potential%
+ \string\fi
+ }
+ \relax
+}
+\AtBeginDocument{%
+ \let\hyper@write\relax%
+ \let\hyper@second@write\@gobble%
+ \let\hyper@comment@potential\@empty%
+ \let\hyper@comment@real\hyper@comment%
+ \hyper@aux@write%
+}
+\endinput
+%%
+%% End of file `hyper.sty'.