Current File : //usr/share/texlive/texmf-dist/tex/latex/subfig/subfig.sty |
%%
%% This is file `subfig.sty',
%% generated with the docstrip utility.
%%
%% The original source files were:
%%
%% subfig.dtx (with options: `package')
%%
%% Copyright � 2003, 2004, 2005 Steven Douglas Cochran.
%%
%% This file is NOT the source for the subfig package, because almost
%% all comments have been stripped from it. It is NOT the preferred form
%% of the subfig package for making modifications to it.
%%
%% Therefore you can NOT redistribute and/or modify THIS file. You can
%% however redistribute the complete source package (README, Makefile,
%% subfig.dtx, subfig.ins, and subfig.pdf as well as the test/example
%% files test[1-7].tex) and/or modify it under the terms of the LaTeX Project
%% Public License, either version 1.3 of this license or (at your option)
%% any later version.
%% The latest version of this license is in
%% http://www.latex-project.org/lppl.txt
%% and version 1.3 or later is part of all distributions of LaTeX
%% version 2003/12/01 or later.
%%
%% This work has the LPPL maintenance status "author-maintained".
%%
%% This Current Maintainer of this work is Steven Douglas Cochran.
%%
%% This work consists of all files listed under "MANIFEST" in the
%% README file distributed with the subfig package.
%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% @LaTeX-style-file{
%% author = "Steven Douglas Cochran",
%% version = "1.3",
%% date = "2005/07/05",
%% time = "04:19:08",
%% filename = "subfig.sty",
%% address = "Digital Mapping Laboratory,
%% School of Computer Science
%% Carnegie-Mellon University,
%% 5000 Forbes Avenue
%% Pittsburgh, PA 15213-3890
%% USA",
%% telephone = "+1 412.268.5654",
%% fax = "+1 412.268.5576",
%% email = "cochran@ieee.org",
%% codetable = "ISO/ASCII",
%% keywords = "LaTeX, float, sub-float, continued figure",
%% supported = "yes",
%% abstract = "LaTeX package for providing support for the
%% inclusion of small, `sub', figures and tables. It
%% simplifies the positioning, captioning and
%% labeling of them within a single figure or table
%% environment. In addition, this package allows
%% such sub-captions to be written to the List of
%% Figures or List of Tables if desired."
%% }
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\NeedsTeXFormat{LaTeX2e}[1995/06/01]
\ProvidesPackage{subfig}[2005/06/28 ver: 1.3 subfig package]
\def\sf@floatfix#1#2{%
\ifx#1#2%
\ifx#1\@undefined\else
\PackageWarningNoLine{subfig}{%
Your document class has a bad definition^^J
of \string#1, most likely^^J
\string\let\string#1=\string#2^^J
which has now been changed to^^J
\string\def\string#1{\string#2}^^J
because otherwise subsequent changes to \string#2^^J
(like done by several packages changing float behaviour)^^J
can't take effect on \string#1.^^J
Please complain to your document class author}%
\def#1{#2}%
\fi
\fi}
\begingroup
\def\next#1#2{%
\endgroup
\sf@floatfix\endfigure\end@float
\sf@floatfix\endtable\end@float
\sf@floatfix#1\end@dblfloat
\sf@floatfix#2\end@dblfloat}
\expandafter\next\csname endfigure*\expandafter\endcsname
\csname endtable*\endcsname
\RequirePackage{keyval}[1999/03/16]
\def\sf@ifinlist#1#2{%
\let\next\@secondoftwo
\edef\caption@tempa{#1}%
\@for\caption@tempb:={#2}\do{%
\ifx\caption@tempa\caption@tempb
\let\next\@firstoftwo
\fi}%
\next}
\def\sf@setbool#1#2{%
\sf@ifinlist{#2}{1,true,yes,on}{%
\@nameuse{#1true}%
}{\sf@ifinlist{#2}{0,false,no,off}{%
\@nameuse{#1false}%
}{%
\PackageError{subfig}{Undefined boolean value `#2'}{\@ehc}%
}}}
\def\sf@split#1=#2=#3\relax{%
\KV@@sp@def\@tempa{#1}%
\ifx\@tempa\@empty
\else\ifx\@tempa\KV@caption
\sf@usecaptionfoundtrue
\ifx\@empty#3\@empty
\sf@usecaptiontrue
\else
\KV@@sp@def\@tempb{#2}%
\sf@setbool{sf@usecaption}{\@tempb}%
\fi
\fi\fi}
\def\KV@caption{caption}
\newif\ifsf@usecaptionfound
\sf@usecaptionfoundfalse
\newif\ifsf@usecaption
\sf@usecaptiontrue
\edef\sf@temp{\@ptionlist{\@currname.\@currext}}
\let\caption@tempa\@empty
\@for\CurrentOption:=\sf@temp\do{%
\expandafter\sf@split\CurrentOption==\relax}
\ifsf@usecaption
\@ifpackageloaded{caption}{%
\ifsf@usecaptionfound
\PackageWarning{subfig}{%
You cannot set the `caption' option here if the\MessageBreak
caption package is already loaded (the option\MessageBreak
`caption=true' is ignored)}%
\fi
}{%
\RequirePackage{caption}[2005/06/26]
}%
\else
\RequirePackage{caption3}[2005/06/11]
\fi
\def\sf@ifpositiontop{%
\ifx\caption@position\@firstoftwo \let\next\@firstoftwo \else
\let\next\@secondoftwo \fi \next}
\def\DeclareCaptionListOfFormat#1{%
\@namedef{caption@lstfmt@#1}##1##2}
\@onlypreamble\DeclareCaptionListOfFormat
\def\caption@setlistofformat#1{%
\@ifundefined{caption@lstfmt@#1}{%
\PackageError
{subfig}%
{Undefined caption list-of format `#1'}%
{\caption@eh}%
}{%
\expandafter\let\expandafter\caption@lstfmt
\csname caption@lstfmt@#1\endcsname}}
\DeclareCaptionListOfFormat{empty}{}
\DeclareCaptionListOfFormat{simple}{#1#2}
\DeclareCaptionListOfFormat{parens}{#1(#2)}
\DeclareCaptionListOfFormat{subsimple}{#2}
\DeclareCaptionListOfFormat{subparens}{(#2)}
\DeclareCaptionOption{listofformat}{\caption@setlistofformat{#1}}
\def\sf@indent{3.8em}
\define@key{caption}{listofindent}[3.8em]{\def\sf@indent{#1}}
\def\sf@numwidth{2.5em}
\define@key{caption}{listofnumwidth}[2.5em]{\def\sf@numwidth{#1}}
\def\DeclareSubrefFormat#1{%
\@namedef{caption@subreffmt@#1}##1##2##3##4}
\@onlypreamble\DeclareSubrefFormat
\def\caption@setsubrefformat#1{%
\@ifundefined{caption@subreffmt@#1}{%
\PackageError
{subfig}%
{Undefined subref format `#1'}%
{\caption@eh}%
}{%
\expandafter\let\expandafter\caption@subreffmt
\csname caption@subreffmt@#1\endcsname}}
\DeclareSubrefFormat{empty}{}
\DeclareSubrefFormat{simple}{#1#2}
\DeclareSubrefFormat{parens}{#1(#2)}
\DeclareSubrefFormat{subsimple}{#2}
\DeclareSubrefFormat{subparens}{(#2)}
\DeclareCaptionOption{subrefformat}{\caption@setsubrefformat{#1}}
\newcounter{KVtest}
\def\KV@config{config}
\def\sf@split#1=#2=#3\relax{%
\setcounter{KVtest}{1}%
\KV@@sp@def\@tempa{#1}%
\ifx\@tempa\@empty
\else\ifx\@tempa\KV@caption
\setcounter{KVtest}{2}%
\else\ifx\@tempa\KV@config
\setcounter{KVtest}{2}%
\expandafter\let\expandafter\@tempc
\csname\KV@prefix\@tempa\endcsname
\ifx\@tempc\relax
\KV@errx
{\@tempa\space undefined}%
\else\ifx\@empty#3\@empty
\KV@default
\else
\KV@@sp@def\@tempb{#2}%
\expandafter\@tempc\expandafter{\@tempb}\relax
\fi\fi
\fi\fi\fi}
\def\ProcessPackageOptions{%
\def\KV@prefix{KV@\@currname @}%
\let\@tempc\relax
\let\caption@tempa\@empty
\@for\CurrentOption:=\@classoptionslist\do{%
\@ifundefined{KV@caption@\CurrentOption}{}{%
\edef\caption@tempa{\caption@tempa,\CurrentOption,}%
\@expandtwoargs\@removeelement\CurrentOption
\@unusedoptionlist\@unusedoptionlist}}%
\edef\caption@tempb{\@ptionlist{\@currname.\@currext}}%
\@for\CurrentOption:=\caption@tempb\do{%
\expandafter\sf@split\CurrentOption==\relax
\ifnum\c@KVtest<2\relax
\edef\caption@tempa{\caption@tempa,\CurrentOption,}%
\fi}%
\edef\caption@tempa{%
\noexpand\captionsetup[subfloat]{\caption@tempa}}%
\caption@tempa}
\def\@dottedxxxline#1#2#3#4#5#6#7{%
\begingroup
\@ifundefined{caption@setfloattype}%
\caption@settype
\caption@setfloattype
{#1}
\caption@settype{subfloat}%
\caption@settype{sub#1}%
\ifnum #3>\@nameuse{c@#2depth}\else
\@dottedtocline{\z@}{#4}{#5}{#6}{#7}%
\fi
\endgroup}
\newif\ifmaincaptiontop
\def\newsubfloat{%
\@ifnextchar[ %] bracket matching
{\@newsubfloat}
{\@newsubfloat[]}}
\def\@newsubfloat[#1]#2{%
\@ifundefined{c@sub#2}{%
\newcounter{sub#2}[#2]
\newcounter{sub#2@save}%
\@namedef{sub#2name}{}%
\@namedef{p@sub#2}{\@nameuse{the#2}}%
\@namedef{thesub#2}{\alph{sub#2}}%
\@namedef{ext@sub#2}{\@nameuse{ext@#2}}%
\@namedef{l@sub#2}{%
\@dottedxxxline{#2}%
{\@nameuse{ext@sub#2}}{2}{\sf@indent}{\sf@numwidth}}%
\@ifundefined{c@\@nameuse{ext@#2}depth}{%
\expandafter\newcounter\expandafter{\@nameuse{ext@#2}depth}%
\expandafter\addtocounter\expandafter{\@nameuse{ext@#2}depth}\@ne}{}%
\@namedef{KV@caption@\@nameuse{ext@#2}depth@default\expandafter}%
\expandafter{\csname KV@caption@\@nameuse{ext@#2}depth\endcsname{2}}%
\@namedef{KV@caption@\@nameuse{ext@#2}depth}##1{%
\setcounter{\@nameuse{ext@#2}depth}{##1}}%
\edef\sf@counterlist{%
\@ifundefined{sf@counterlist}{}%
{\sf@counterlist,}sub#2}%
\captionsetup[sub#2]{#1}%
}{%
\PackageWarning{subfig}{%
The sub#2\space type is already defined.}%
}}
\@onlypreamble\@newsubfloat
\@onlypreamble\newsubfloat
\newskip\sf@farskip
\sf@farskip 10\p@
\define@key{caption}{farskip}[10\p@]{\sf@farskip=#1}
\newdimen\sf@captopadj
\sf@captopadj \z@
\define@key{caption}{topadjust}[\z@]{\sf@captopadj=#1}
\newskip\sf@capskip
\sf@capskip 4\p@
\define@key{caption}{captionskip}[4\p@]{\sf@capskip=#1}
\newskip\sf@nearskip
\sf@nearskip \z@
\define@key{caption}{nearskip}[5\p@]{\sf@nearskip=#1}
\let\sf@old@caption\@caption
\def\@caption{\caption@}
\captionsetup[subfloat]{%
font=footnotesize,
labelformat=parens,labelsep=space,
listofformat=subparens,subrefformat=subsimple}
\define@key{subfig}{config}[subfig]{%
\InputIfFileExists{#1.cfg}{%
\typeout{***********************************************^^J%
* Subfig configuration file #1.cfg used ^^J%
***********************************************}%
}{%
\PackageWarning{subfig}{Configuration file #1.cfg not found}}%
}
\ProcessPackageOptions
\@ifundefined{c@subfigure}{\newsubfloat{figure}}{}
\@ifundefined{c@subtable}{\newsubfloat{table}}{}
\AtEndOfPackage{%
\global\let\ifsf@usecaption\relax
\global\let\sf@usecaptiontrue\relax
\global\let\sf@usecaptionfalse\relax
\global\let\ifsf@usecaptionfound\relax
\global\let\sf@usecaptionfoundtrue\relax
\global\let\sf@usecaptionfoundfalse\relax
\global\let\KV@caption\relax
\global\let\KV@subfig@caption\relax
\global\let\KV@subfig@caption@default\relax
\global\let\KV@config\relax
\global\let\KV@subfig@config\relax
\global\let\KV@subfig@config@default\relax
\global\let\ProcessPackageOptions\relax
\global\let\@unprocessedoptions\relax
\let\CurrentOption\@empty
}
\newskip\sf@top
\newskip\sf@bottom
\def\subfloat{%
\ifx\@captype\@undefined
\@latex@error{\noexpand\subfloat outside float}\@ehd
\expandafter\@gobble
\else
\expandafter\@firstofone
\fi
{\sf@subfloat}}
\def\sf@subfloat{%
\begingroup
\@ifundefined{caption@setfloattype}%
\caption@settype
\caption@setfloattype
\@captype
\sf@ifpositiontop{%
\maincaptiontoptrue
}{%
\maincaptiontopfalse
}%
\caption@settype{subfloat}%
\caption@settype{sub\@captype}%
\let\sf@oldlabel=\label
\let\label=\subfloat@label
\ifmaincaptiontop\else
\advance\@nameuse{c@\@captype}\@ne
\fi
\refstepcounter{sub\@captype}%
\setcounter{sub\@captype @save}{\value{sub\@captype}}%
\@ifnextchar [% %] match left bracket
{\sf@@subfloat}%
{\sf@@subfloat[\@empty]}}
\long\def\sf@@subfloat[#1]{%
\@ifnextchar [% %] match left bracket
{\sf@@@subfloat{sub\@captype}[{#1}]}%
{\sf@@@subfloat{sub\@captype}[\@empty{#1}][{#1}]}}
\long\def\sf@@@subfloat#1[#2][#3]#4{%
\@ifundefined{FBsc@max}{}%
{\FB@readaux{\let\FBsuboheight\relax}}%
\@tempcnta=\@ne
\if@minipage
\@tempcnta=\z@
\else\ifdim \lastskip=\z@ \else
\@tempcnta=\tw@
\fi\fi
\ifmaincaptiontop
\sf@top=\sf@nearskip
\sf@bottom=\sf@farskip
\else
\sf@top=\sf@farskip
\sf@bottom=\sf@nearskip
\fi
\leavevmode
\setbox\@tempboxa \hbox{#4}%
\@tempdima=\wd\@tempboxa
\@ifundefined{FBsc@max}{}%
{\global\advance\Xhsize-\wd\@tempboxa
\dimen@=\ht\@tempboxa
\advance\dimen@\dp\@tempboxa
\ifdim\dimen@>\FBso@max
\global\FBso@max\dimen@
\fi}%
\vtop\bgroup
\vbox\bgroup
\ifcase\@tempcnta
\@minipagefalse
\or
\vskip\sf@top
\or
\ifdim \lastskip=\z@ \else
\@tempskipb\sf@top\relax\@xaddvskip
\fi
\fi
\sf@ifpositiontop{%
\ifx \@empty#3\relax \else
\sf@subcaption{#1}{#2}{#3}%
\vskip\sf@capskip
\vskip\sf@captopadj
\fi\egroup
\hrule width0pt height0pt depth0pt
\box\@tempboxa
}{%
\@ifundefined{FBsc@max}%
{\box\@tempboxa}%
{\ifx\FBsuboheight\relax
\box\@tempboxa
\else
\vbox to \FBsuboheight{\FBafil\box\@tempboxa\FBbfil}%
\fi}%
\egroup
\ifx \@empty#3\relax \else
\vskip\sf@capskip
\hrule width0pt height0pt depth0pt
\sf@subcaption{#1}{#2}{#3}%
\fi
}%
\vskip\sf@bottom
\egroup
\@ifundefined{FBsc@max}{}%
{\addtocounter{FRobj}{-1}%
\ifnum\c@FRobj=0\else
\subfloatrowsep
\fi}%
\ifmaincaptiontop\else
\global\advance\@nameuse{c@\@captype}\m@ne
\fi
\endgroup\ignorespaces}
\def\sf@updatecaptionlist#1#2#3#4{%
\xdef\sf@captionlist{%
\sf@captionlist,%
{\protect\numberline{\@subcaplabel}\noexpand{\ignorespaces #2}}%
{#1.#3.#4}}}
\long\def\sf@subcaption#1#2#3{%
\ifx \relax#2\relax \else
\bgroup
\let\label=\@gobble
\let\protect=\string
\def\@subcaplabel{%
\caption@lstfmt{\@nameuse{p@#1}}{\@nameuse{the#1}}}%
\sf@updatecaptionlist{#1}{#2}{\the\value{\@captype}}{\the\value{#1}}%
\egroup
\fi
\bgroup
\ifx \relax#3\relax
\let\captionlabelsep=\relax
\fi
\setbox0\vbox{%
\hb@xt@\the\@tempdima{%
\hss
\parbox[t]{\the\@tempdima}{%
\caption@make
{\@nameuse{sub\@captype name}}%
{\@nameuse{thesub\@captype}}%
{#3}}%
\hss}}%
\@ifundefined{FBsc@max}%
{\box0}%
{\dimen@\ht0%
\advance\dimen@\dp0%
\ifdim\dimen@>\FBsc@max
\global\FBsc@max\dimen@
\fi
\FB@readaux{\let\FBsubcheight\relax}%
\ifx\FBsubcheight\relax
\def\next{\parbox[t]{\the\@tempdima}}%
\else
\def\next{\parbox[t][\FBsubcheight][t]{\the\@tempdima}}%
\fi
\vbox{%
\hb@xt@\the\@tempdima{%
\hss
\next{%
\caption@make
{\@nameuse{sub\@captype name}}%
{\@nameuse{thesub\@captype}}%
{#3}}%
\hss}}}%
\egroup}
\def\listsubcaptions{%
\@ifstar
{\gdef\sf@captionlist{}}%
{\@listsubcaptions{\@captype}}}
\def\sf@captionlist{}
\def\@listsubcaptions#1{%
\@ifundefined{@captype}{}{%
\@ifundefined{ext@sub#1}{}{%
\@for \sf@temp:=\sf@captionlist \do {%
\ifx \@empty\sf@temp\relax \else
\begingroup
\def\@currentHref{\expandafter\@secondoftwo\sf@temp}%
\sf@addcontentsline
{\@nameuse{ext@sub#1}}%
{sub#1}%
{\expandafter\@firstoftwo\sf@temp}%
\endgroup
\fi}}}%
\gdef\sf@captionlist{}}
\long\def\caption@#1[#2]#3{%
\@ifundefined{caption@setfloattype}%
\caption@settype
\caption@setfloattype
\@captype
\sf@ifpositiontop{%
\@listsubcaptions{#1}%
\sf@old@caption{#1}[{#2}]{#3}%
}{%
\sf@old@caption{#1}[{#2}]{#3}%
\@listsubcaptions{#1}%
}}
\AtBeginDocument{%
\let\sf@addcontentsline=\addcontentsline}
\def\subfloat@label{%
\@ifnextchar(% %) match left parenthesis
{\sf@sub@label}
{\sf@sub@label(Sub\@captype\space
\@ifundefined{thechapter}{}{\@nameuse{thechapter}\space}%
\@nameuse{p@sub\@captype}%
\@nameuse{thesub\@captype}.)}}
\newif\ifhyperrefloaded
\def\sf@sub@label(#1)#2{%
\ifhyperrefloaded
\protected@edef\@currentlabelname{%
\expandafter\strip@period #1\relax.\relax\@@@}%
\fi
\sf@@sub@label{#2}}
\def\sf@@sub@label#1{%
\@bsphack
\sf@oldlabel{#1}%
\ifhyperrefloaded
\begingroup
\edef\@currentlabstr{%
\expandafter\strip@prefix\meaning\@currentlabelname}%
\protected@write\@auxout{}{%
\string\newlabel{sub@#1}{%
{\caption@lstfmt
{\@nameuse{p@sub\@captype}}%
{\@nameuse{thesub\@captype}}}%
{\caption@subreffmt
{\@nameuse{p@sub\@captype}}%
{\@nameuse{thesub\@captype}}%
{\the\value{\@captype}}%
{\the\value{sub\@captype}}}%
{\expandafter\strip@period\@currentlabelname\relax.\relax\@@@}%
{\@currentHref}%
{}}}%
\endgroup
\else
\protected@write\@auxout{}{%
\string\newlabel{sub@#1}{%
{\caption@lstfmt
{\@nameuse{p@sub\@captype}}%
{\@nameuse{thesub\@captype}}}%
{\caption@subreffmt
{\@nameuse{p@sub\@captype}}%
{\@nameuse{thesub\@captype}}%
{\the\value{\@captype}}%
{\the\value{sub\@captype}}}}}%
\fi
\@esphack}
\def\subref{%
\@ifstar
\sf@@subref
\sf@subref}
\def\sf@subref#1{\ref{sub@#1}}
\def\sf@@subref#1{\pageref{sub@#1}}
\newif\if@ccflag
\@ccflagfalse
\AtBeginDocument{%
\let\sf@refstepcounter=\refstepcounter
\@ifpackageloaded{captcont}{}{%
\def\refsteponlycounter#1{%
\if@ccflag
\global\expandafter\advance\csname c@#1\endcsname\@ne
\let\sf@temp\protect
\def\protect{\noexpand\protect\noexpand}%
\edef\@currentlabel{\csname p@#1\endcsname\csname the#1\endcsname}%
\let\protect\sf@temp
\else
\sf@refstepcounter{#1}%
\fi
\@ccflagfalse}%
}%
\def\ContinuedFloat{%
\ifx\@captype\@undefined
\@latex@error{\noexpand\ContinuedFloat outside float}\@ehd
\else
\addtocounter{\@captype}{\m@ne}%
\caption@ContinuedFloat\@captype
\@ifundefined{c@sub\@captype}{}{%
\setcounter{sub\@captype}{\value{sub\@captype @save}}%
\@ccflagtrue}%
\fi}}
\providecommand*\caption@ContinuedFloat[1]{}
\def\sf@caption{%
\let\refstepcounter=\refsteponlycounter
\sf@savecaption}
\AtBeginDocument{%
\let\sf@savecaption=\caption
\let\caption=\sf@caption
}
\let\sf@end@float=\end@float
\let\sf@end@dblfloat=\end@dblfloat
\def\end@float{%
\@ifundefined{sf@counterlist}{}{%
\@for\sf@temp:=\sf@counterlist\do{%
\setcounter{\sf@temp}{\z@}}%
\@listsubcaptions{\@captype}}%
\sf@end@float}%
\def\end@dblfloat{%
\@ifundefined{sf@counterlist}{}{%
\@for\sf@temp:=\sf@counterlist\do{%
\setcounter{\sf@temp}{\z@}}%
\@listsubcaptions{\@captype}}%
\sf@end@dblfloat}
\AtBeginDocument{%
\@ifpackageloaded{hyperref}{%
\hyperrefloadedtrue
%
\def\sf@setref#1sub#2\relax{%
\@namedef{theHsub#2\expandafter}{\@nameuse{the#2}.\arabic{sub#2}}%
\@namedef{toclevel@sub#2}{1}%
}
%
\@for\sf@temp:=\sf@counterlist\do{%
\expandafter\sf@setref\sf@temp\relax}%
%
\global\let\sf@setref\relax
%
\let\sf@Hrefstepcounter\H@refstepcounter
\def\H@refstepcounter#1{%
\sf@Hrefstepcounter{#1}%
\@ifundefined{c@sub#1}{}{%
\if@ccflag
\setcounter{sub#1}{\value{sub#1@save}}%
\fi
\@ccflagfalse}}%
%
}{}%
\@ifpackageloaded{float}{%
\let\sf@endfloatbox=\@endfloatbox
\def\@endfloatbox{%
\listsubcaptions
\sf@endfloatbox}%
}{}%
\@ifpackageloaded{fixltx2e}{%
\def\end@dblfloat{%
\if@twocolumn
\@ifundefined{sf@counterlist}{}{%
\@for\sf@temp:=\sf@counterlist\do{%
\setcounter{\sf@temp}{\z@}}%
\@listsubcaptions{\@captype}}%
\@endfloatbox
\ifnum\@floatpenalty <\z@
\@largefloatcheck
\global\dp\@currbox1sp %
\expandafter\@gobble\sf@end@float
\fi
\else
\end@float
\fi}%
}{%
\@ifpackageloaded{fix2col}{%
\def\end@dblfloat{%
\if@twocolumn
\@ifundefined{sf@counterlist}{}{%
\@for\sf@temp:=\sf@counterlist\do{%
\setcounter{\sf@temp}{\z@}}%
\@listsubcaptions{\@captype}}%
\@endfloatbox
\ifnum\@floatpenalty <\z@
\@largefloatcheck
\global\dp\@currbox1sp %
\expandafter\@gobble\sf@end@float
\fi
\else
\end@float
\fi}}{}%
}
}
\endinput
%%
%% End of file `subfig.sty'.