%%
%% This is file `hyperref-xetex-bidi.def',
%% generated with the docstrip utility.
%%
%% The original source files were:
%%
%% bidi.dtx  (with options: `table,hyperref-xetex-bidi.def')
%% 
%%   __________________________________________________
%%   Copyright © 2009–2014  Vafa Khalighi <persian-tex@tug.org>
%% 
%%   It may be distributed and/or modified under the LaTeX Project Public License,
%%   version 1.3c or higher (your choice). The latest version of
%%   this license is at: http://www.latex-project.org/lppl.txt
%% 
%%   This work is “author-maintained” (as per LPPL maintenance status)
%%   by Vafa Khalighi.
%% 
%% 
%% \CheckSum{42099}
%% \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         \~}
%%
\ProvidesFile{hyperref-xetex-bidi.def}[2013/04/08 v0.7 bidi adaptations for hyperref package for XeTeX engine]
\AtBeginDocument{%
\def\contentsline#1#2#3#4{%
  \ifx\\#4\\%
    \csname l@#1\endcsname{#2}{#3}%
  \else
    \ifcase\Hy@linktoc % none
      \csname l@#1\endcsname{#2}{#3}%
    \or % section
      \csname l@#1\endcsname{%
        \beginL\hyper@linkstart{link}{#4}{\if@RTL\beginR\fi#2\if@RTL\endR\fi}\hyper@linkend\endL
      }{#3}%
    \or % page
      \csname l@#1\endcsname{{#2}}{%
        \beginL\hyper@linkstart{link}{#4}{#3}\hyper@linkend\endL
      }%
    \else % all
      \csname l@#1\endcsname{%
        \beginL\hyper@linkstart{link}{#4}{\if@RTL\beginR\fi#2\if@RTL\endR\fi}\hyper@linkend\endL
      }{%
        \beginL\hyper@linkstart{link}{#4}{#3}\hyper@linkend\endL
      }%
    \fi
  \fi
}
\ifHy@hyperfootnotes
   \let\H@@footnotetext\@footnotetext
   \let\HRTL@@RTLfootnotetext\@RTLfootnotetext
   \let\HLTR@@LTRfootnotetext\@LTRfootnotetext
    \def\@xfootnotenext[#1]{%
    \begingroup
      \csname c@\@mpfn\endcsname #1\relax
      \unrestored@protected@xdef\@thefnmark{\thempfn}%
    \endgroup
    \ifx\@footnotetext\@mpfootnotetext
      \expandafter\H@@mpfootnotetext
    \else
      \expandafter\H@@footnotetext
    \fi
  }%
    \def\@xRTLfootnotenext[#1]{%
    \begingroup
      \csname c@\@mpfn\endcsname #1\relax
      \unrestored@protected@xdef\@thefnmark{\thempfn}%
    \endgroup
    \ifx\@RTLfootnotetext\@mpRTLfootnotetext
      \expandafter\HRTL@@mpRTLfootnotetext
    \else
      \expandafter\HRTL@@RTLfootnotetext
    \fi
  }%
    \def\@xLTRfootnotenext[#1]{%
    \begingroup
      \csname c@\@mpfn\endcsname #1\relax
      \unrestored@protected@xdef\@thefnmark{\thempfn}%
    \endgroup
    \ifx\@LTRfootnotetext\@mpLTRfootnotetext
      \expandafter\HLTR@@mpLTRfootnotetext
    \else
      \expandafter\HLTR@@LTRfootnotetext
    \fi
  }%
    \def\@xfootnotemark[#1]{%
    \begingroup
      \c@footnote #1\relax
      \unrestored@protected@xdef\@thefnmark{\thefootnote}%
    \endgroup
    \H@@footnotemark
  }%
  \let\H@@mpfootnotetext\@mpfootnotetext
  \let\HRTL@@mpRTLfootnotetext\@mpRTLfootnotetext
  \let\HLTR@@mpLTRfootnotetext\@mpLTRfootnotetext
    \long\def\@mpfootnotetext#1{%
    \H@@mpfootnotetext{%
      \ifHy@nesting
        \hyper@@anchor{\Hy@footnote@currentHref}{#1}%
      \else
        \Hy@raisedlink{%
          \hyper@@anchor{\Hy@footnote@currentHref}{\relax}%
        }#1%
      \fi
    }%
  }%
  \long\def\@mpRTLfootnotetext#1{%
    \HRTL@@mpRTLfootnotetext{%
      \ifHy@nesting
        \hyper@@anchor{\Hy@footnote@currentHref}{#1}%
      \else
        \Hy@raisedlink{%
          \hyper@@anchor{\Hy@footnote@currentHref}{\relax}%
        }#1%
      \fi
    }%
  }%
    \long\def\@mpLTRfootnotetext#1{%
    \HLTR@@mpLTRfootnotetext{%
      \ifHy@nesting
        \hyper@@anchor{\Hy@footnote@currentHref}{#1}%
      \else
        \Hy@raisedlink{%
          \hyper@@anchor{\Hy@footnote@currentHref}{\relax}%
        }#1%
      \fi
    }%
  }%
    \long\def\@footnotetext#1{%
    \H@@footnotetext{%
      \ifHy@nesting
        \hyper@@anchor{\Hy@footnote@currentHref}{#1}%
      \else
        \Hy@raisedlink{%
          \hyper@@anchor{\Hy@footnote@currentHref}{\relax}%
        }%
        \let\@currentHlabel\Hy@footnote@currentHlabel
        \let\@currentHref\Hy@footnote@currentHref
        \let\@currentlabelname\@empty
        #1%
      \fi
    }%
  }%
    \long\def\@RTLfootnotetext#1{%
    \HRTL@@RTLfootnotetext{%
      \ifHy@nesting
        \hyper@@anchor{\Hy@footnote@currentHref}{#1}%
      \else
        \Hy@raisedlink{%
          \hyper@@anchor{\Hy@footnote@currentHref}{\relax}%
        }%
        \let\@currentHlabel\Hy@footnote@currentHlabel
        \let\@currentHref\Hy@footnote@currentHref
        \let\@currentlabelname\@empty
        #1%
      \fi
    }%
  }%
    \long\def\@LTRfootnotetext#1{%
    \HLTR@@LTRfootnotetext{%
      \ifHy@nesting
        \hyper@@anchor{\Hy@footnote@currentHref}{#1}%
      \else
        \Hy@raisedlink{%
          \hyper@@anchor{\Hy@footnote@currentHref}{\relax}%
        }%
        \let\@currentHlabel\Hy@footnote@currentHlabel
        \let\@currentHref\Hy@footnote@currentHref
        \let\@currentlabelname\@empty
        #1%
      \fi
    }%
  }%
  \def\@footnotemark{%
    \leavevmode
    \ifhmode\edef\@x@sf{\the\spacefactor}\nobreak\fi
    \stepcounter{Hfootnote}%
    \global\let\Hy@saved@currentHlabel\@currentHlabel
    \global\let\Hy@saved@currentHref\@currentHref
    \hyper@makecurrent{Hfootnote}%
    \global\let\Hy@footnote@currentHlabel\@currentHlabel
    \global\let\Hy@footnote@currentHref\@currentHref
    \global\let\@currentHlabel\Hy@saved@currentHlabel
    \global\let\@currentHref\Hy@saved@currentHref
    \beginL\hyper@linkstart{link}{\Hy@footnote@currentHref}%
    \@makefnmark
    \hyper@linkend\endL
    \ifhmode\spacefactor\@x@sf\fi
    \relax
  }%
  \let\HyOrg@maketitle\maketitle
  \def\maketitle{%
    \let\Hy@saved@footnotemark\@footnotemark
    \let\Hy@saved@footnotetext\@footnotetext
    \let\HyRTL@saved@RTLfootnotetext\@RTLfootnotetext
    \let\HyLTR@saved@LTRfootnotetext\@LTRfootnotetext
    \let\@footnotemark\H@@footnotemark
    \let\@footnotetext\H@@footnotetext
    \let\@RTLfootnotetext\HRTL@@RTLfootnotetext
    \let\@LTRfootnotetext\HLTR@@LTRfootnotetext
    \@ifnextchar[\Hy@maketitle@optarg{% ]
      \HyOrg@maketitle
      \Hy@maketitle@end
    }%
  }%
  \def\Hy@maketitle@optarg[#1]{%
    \HyOrg@maketitle[{#1}]%
    \Hy@maketitle@end
  }%
  \def\Hy@maketitle@end{%
    \ifx\@footnotemark\H@@footnotemark
      \let\@footnotemark\Hy@saved@footnotemark
    \fi
    \ifx\@footnotetext\H@@footnotetext
      \let\@footnotetext\Hy@saved@footnotetext
    \fi
    \ifx\@RTLfootnotetext\HRTL@@RTLfootnotetext
      \let\@RTLfootnotetext\HyRTL@saved@RTLfootnotetext
    \fi
    \ifx\@LTRfootnotetext\HLTR@@LTRfootnotetext
      \let\@LTRfootnotetext\HyLTR@saved@LTRfootnotetext
    \fi
  }%
  \def\realfootnote{%
    \@ifnextchar[\@xfootnote{%
      \stepcounter{\@mpfn}%
      \protected@xdef\@thefnmark{\thempfn}%
      \H@@footnotemark\H@@footnotetext
    }%
  }%
\fi
\def\hyper@link#1#2#3{%
  \ifmmode\else\beginL\fi\hyper@linkstart{#1}{#2}\ifmmode\else\if@RTL\beginR\fi\fi#3\ifmmode\else\if@RTL\endR\fi\fi\hyper@linkend\ifmmode\else\endL\fi
}
\def\url@#1{\beginL\hyper@linkurl{\Hurl{#1}}{#1}\endL}
\def\hyper@natlinkstart#1{%
  \Hy@backout{#1}%
  \beginL\hyper@linkstart{cite}{cite.#1}\if@RTL\beginR\fi%
  \def\hyper@nat@current{#1}%
}
\def\hyper@natlinkend{%
  \if@RTL\endR\fi\hyper@linkend\endL
}
\def\hyper@natlinkbreak#1#2{%
  \if@RTL\endR\fi\hyper@linkend\endL#1\beginL\hyper@linkstart{cite}{cite.#2}\if@RTL\beginR\fi%
}%
}
\begingroup
  \catcode`\$=6 %
  \catcode`\#=12 %
  \gdef\href@$1{\expandafter\href@split$1##\\}%
  \gdef\href@split$1#$2#$3\\$4{%
    \beginL\hyper@@link{$1}{$2}{\if@RTL\beginR\fi$4\if@RTL\endR\fi}\endL%
    \endgroup
  }%
\endgroup
\pdfstringdefDisableCommands{%
\let\LRE\@firstofone
\let\LR\@firstofone
\let\RLE\@firstofone
\let\RL\@firstofone
\def\XeTeX{Xe\TeX}
\def\XeLaTeX{Xe\LaTeX}
}
\endinput
%%
%% End of file `hyperref-xetex-bidi.def'.
