%%
%% This is file `pdfcolfoot.sty',
%% generated with the docstrip utility.
%%
%% The original source files were:
%%
%% pdfcolfoot.dtx  (with options: `package')
%% 
%% This is a generated file.
%% 
%% Project: pdfcolfoot
%% Version: 2023-01-10 v1.4
%% 
%% Copyright (C)
%%    2007, 2012 Heiko Oberdiek
%%    2016-2023 Oberdiek Package Support Group
%% 
%% This work may be distributed and/or modified under the
%% conditions of the LaTeX Project Public License, either
%% version 1.3c of this license or (at your option) any later
%% version. This version of this license is in
%%    https://www.latex-project.org/lppl/lppl-1-3c.txt
%% and the latest version of this license is in
%%    https://www.latex-project.org/lppl.txt
%% and version 1.3 or later is part of all distributions of
%% LaTeX version 2005/12/01 or later.
%% 
%% This work has the LPPL maintenance status "maintained".
%% 
%% The Current Maintainers of this work are
%% Heiko Oberdiek and the Oberdiek Package Support Group
%% https://github.com/ho-tex/pdfcolfoot/issues
%% 
%% This work consists of the main source file pdfcolfoot.dtx
%% and the derived files
%%    pdfcolfoot.sty, pdfcolfoot.pdf, pdfcolfoot.ins, pdfcolfoot.drv
%% 
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{pdfcolfoot}%
  [2023-01-10 v1.4 Color stack for footnotes with pdfTeX (HO)]%
\RequirePackage{pdfcol}[2007/09/09]
\ifpdfcolAvailable
\else
  \PackageInfo{pdfcolfoot}{%
    Loading aborted, because color stacks are not available%
  }%
  \expandafter\endinput
\fi
\pdfcolInitStack{foot}
\newcommand*{\pdfcolfoot@switch}{%
  \pdfcolSwitchStack{foot}%
}
\AtBeginDocument{%
  \newcommand*{\pdfcolfoot@makefntext}{}%
  \let\pdfcolfoot@makefntext\@makefntext
  \renewcommand{\@makefntext}[1]{%
    \pdfcolfoot@makefntext{%
      \if@minipage
      \else
        \pdfcolfoot@switch
      \fi
      \color@begingroup
      #1%
      \color@endgroup
    }%
  }%
}
\newcommand*{\pdfcolfoot@current}{%
  \pdfcolSetCurrent{foot}%
}
\begingroup\expandafter\expandafter\expandafter\endgroup
\expandafter\ifx\csname detokenize\endcsname\relax
  \PackageWarningNoLine{pdfcolfoot}{%
    Missing e-TeX for patching \string\@makecol
  }%
  \expandafter\endinput
\fi
\newif\ifPCF@result
\def\pdfcolfoot@patch#1{%
  \ifx#1\@undefined
  \else
    \ifx#1\relax
    \else
      \begingroup
        \toks@{}%
        \let\on@line\@empty
        \expandafter\PCF@CheckPatched
            \detokenize\expandafter{#1pdfcolfoot@current}\@nil
        \ifPCF@result
          \PackageInfo{pdfcolfoot}{\string#1\space is already patched}%
        \else
          \expandafter\PCF@CanPatch
            \detokenize\expandafter{%
              #1\setbox\@outputbox\vbox{\footnoterule}%
            }%
            \@nil
          \ifPCF@result
            \PackageInfo{pdfcolfoot}{\string#1 is being patched}%
            \expandafter\PCF@PatchA#1\PCF@nil#1%
          \else
            \PackageInfo{pdfcolfoot}{%
              \string#1\space cannot be patched%
            }%
          \fi
        \fi
      \expandafter\endgroup
      \the\toks@
    \fi
  \fi
}
\expandafter\def\expandafter\PCF@CheckPatched
    \expandafter#\expandafter1\detokenize{pdfcolfoot@current}#2\@nil{%
  \ifx\\#2\\%
    \PCF@resultfalse
  \else
    \PCF@resulttrue
  \fi
}
\edef\PCF@BraceLeft{\string{}
\edef\PCF@BraceRight{\string}}
\begingroup
  \edef\x{\endgroup
    \def\noexpand\PCF@CanPatch
        ##1\detokenize{\setbox\@outputbox\vbox}\PCF@BraceLeft
        ##2\detokenize{\footnoterule}##3\PCF@BraceRight
  }%
\x#4\@nil{%
  \ifx\\#2#3#4\\%
    \PCF@resultfalse
  \else
    \PCF@resulttrue
  \fi
}
\def\PCF@PatchA#1\setbox\@outputbox\vbox#2#3\PCF@nil#4{%
  \PCF@PatchB{#1}#2\PCF@nil{#3}#4%
}
\def\PCF@PatchB#1#2\footnoterule#3\PCF@nil#4#5{%
  \toks@{%
    \def#5{%
      #1%
      \setbox\@outputbox\vbox{%
        #2%
        \footnoterule
        \pdfcolfoot@current
        #3%
      }%
      #4%
    }%
  }%
}
\def\pdfcolfoot@all#1{%
  \begingroup
    \let\on@line\@empty
    \PackageInfo{pdfcolfoot}{%
      Patching \string\@makecol\space macros (#1)%
    }%
  \endgroup
  \pdfcolfoot@patch\@makecol
  \pdfcolfoot@patch\@makecol@pptt
  \pdfcolfoot@patch\mem@makecol
  \pdfcolfoot@patch\mem@makecolbf
  \pdfcolfoot@patch\m@mopfootnote
  \pdfcolfoot@patch\@combineinserts
  \pdfcolfoot@patch\ltx@makecol
  \pdfcolfoot@patch\dfn@latex@makecol
  \pdfcolfoot@patch\latex@makecol
  \pdfcolfoot@patch\LS@makecol
  \pdfcolfoot@patch\@LN@orig@makecol
  \pdfcolfoot@patch\org@makecol
  \pdfcolfoot@patch\fn@makecol
}
\AtBeginDocument{\pdfcolfoot@all{AtBeginDocument}}
\pdfcolfoot@all{AtEndOfPackage}
%% \section{Installation}
\endinput
%%
%% End of file `pdfcolfoot.sty'.
