%%
%% This is file `flafter.sty',
%% generated with the docstrip utility.
%%
%% The original source files were:
%%
%% ltoutput.dtx  (with options: `flafter,trace')
%% 
%% This is a generated file.
%% 
%% The source is maintained by the LaTeX Project team and bug
%% reports for it can be opened at https://latex-project.org/bugs.html
%% (but please observe conditions on bug reports sent to that address!)
%% 
%% 
%% Copyright (C) 1993-2024
%% The LaTeX Project and any individual authors listed elsewhere
%% in this file.
%% 
%% This file was generated from file(s) of the LaTeX base system.
%% --------------------------------------------------------------
%% 
%% It 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.
%% The latest version of this license is in
%%    https://www.latex-project.org/lppl.txt
%% and version 1.3c or later is part of all distributions of LaTeX
%% version 2008 or later.
%% 
%% This file has the LPPL maintenance status "maintained".
%% 
%% This file may only be distributed together with a copy of the LaTeX
%% base system. You may however distribute the LaTeX base system without
%% such generated files.
%% 
%% The list of all files belonging to the LaTeX base distribution is
%% given in the file `manifest.txt'. See also `legal.txt' for additional
%% information.
%% 
%% The list of derived (unpacked) files belonging to the distribution
%% and covered by LPPL is defined by the unpacking scripts (with
%% extension .ins) which are part of the distribution.
%%% From File: ltoutput.dtx
\ProvidesPackage{flafter}
       [2021/07/31 v1.4e
                  Standard LaTeX floats after reference (FMi)]
\IncludeInRelease{2015/01/01}%
  {\@addtocurcol}{float order in 2-column}%
\def \@addtocurcol {%
  \fl@trace{***Start addtocurcol}%
   \@insertfalse
   \@setfloattypecounts
   \ifnum \@fpstype=8
     \fl@trace{fpstype !p only (addtocurcol): \the \@fpstype = 8?}%
   \else
     \ifnum \@fpstype=24
       \fl@trace{fpstype p only (addtocurcol): \the \@fpstype = 24?}%
     \else
       \@flsettextmin
       \fl@trace{textfloatsheight (before) = \the \@textfloatsheight}%
       \advance \@textmin \@textfloatsheight
       \@reqcolroom \@pageht
       \fl@trace{textmin + textfloatsheight: \the \@textmin}%
       \fl@trace{page-so-far: \the \@reqcolroom}%
       \ifdim \@textmin>\@reqcolroom
         \@reqcolroom \@textmin
         \fl@trace{ORD? textmin being used}%
       \fi
       \advance \@reqcolroom \ht\@currbox
       \fl@trace{float size = \the \ht \@currbox (addtocurcol)}%
       \fl@trace{colroom = \the \@colroom (addtocurcol)}%
       \fl@trace{reqcolroom = \the \@reqcolroom (addtocurcol)}%
       \ifdim \@colroom>\@reqcolroom
         \@flsetnum \@colnum
         \ifnum \@colnum>\z@
           \@bitor\@currtype\@deferlist
          \@testwrongwidth\@currbox
           \fl@trace{deferlist: \@deferlist: (addtocurcol-before)}%
           \if@test
             \fl@trace{type already on list: defer (addtocurcol)}%
           \else
             \@bitor\@currtype\@botlist
           \fl@trace{botlist: \@botlist: (addtocurcol-before)}%
             \if@test
               \fl@trace{type already on list: bot---sent to addtobot}%
               \@addtobot
             \else
               \fl@trace{fpstype \ifodd \@tempcnta OK \else not \fi
                      here: \the \@fpstype}%
               \ifodd \count\@currbox
                 \advance \@reqcolroom \intextsep
                 \ifdim \@colroom>\@reqcolroom
                   \global \advance \@colnum \m@ne
                   \global \advance \@textfloatsheight \ht\@currbox
                   \global \advance \@textfloatsheight 2\intextsep
                   \@cons \@midlist \@currbox
                 \fl@trace{***Success: here}%
                 \fl@trace{textfloatsheight (after-here) =
                      \the \@textfloatsheight}%
                 \fl@trace{colnum (after-here) = \the \@colnum}%
                   \if@nobreak
                     \nobreak
                     \@nobreakfalse
                     \everypar{}%
                   \else
                     \addpenalty \interlinepenalty
                   \fi
                   \vskip \intextsep
                   \box\@currbox
                   \penalty\interlinepenalty
                   \vskip\intextsep
                   \ifnum\outputpenalty <-\@Mii \vskip -\parskip\fi
                   \outputpenalty \z@
                   \@inserttrue
                 \else
                   \fl@trace{Fail---no room at 2nd test of colroom
                                 (addtocorcol \string\intextsep)}%
                 \fi
               \fi
               \if@insert
               \else
                 \fl@trace{not here: sent to addtobot}%
                 \@addtobot
               \fi
             \fi
           \fi
         \else
           \fl@trace{Fail: colnum = \the \@colnum:
                        fpstype \the \@fpstype=ORD?}%
           \ifnum \@fpstype<\sixt@@n
             \fl@trace{ERROR: BANG float not successful (addtocurcol)}%
           \fi
         \fi
       \else
         \fl@trace{Fail---no room: fl box ht: \the \ht \@currbox
                                                     (addtocurcol)}%
       \fi
     \fi
   \fi
   \if@insert
   \else
     \@resethfps
     \fl@trace{put on deferlist (addtocurcol)}%
     \@cons\@deferlist\@currbox
     \fl@trace{deferlist: \@deferlist: (addtocurcol-after)}%
   \fi
}%
\EndIncludeInRelease
\IncludeInRelease{0000/00/00}%
  {\@addtocurcol}{float order in 2-column}%
\def \@addtocurcol {%
  \fl@trace{***Start addtocurcol}%
   \@insertfalse
   \@setfloattypecounts
   \ifnum \@fpstype=8
     \fl@trace{fpstype !p only (addtocurcol):
                            \the \@fpstype = 8?}%
   \else
     \ifnum \@fpstype=24
      \fl@trace{fpstype p only (addtocurcol):
                           \the \@fpstype = 24?}%
     \else
       \@flsettextmin
       \fl@trace{textfloatsheight (before) =
                        \the \@textfloatsheight}%
       \advance \@textmin \@textfloatsheight
       \@reqcolroom \@pageht
       \fl@trace{textmin + textfloatsheight:
                                 \the \@textmin}%
       \fl@trace{page-so-far: \the \@reqcolroom}%

       \ifdim \@textmin>\@reqcolroom
         \@reqcolroom \@textmin
         \fl@trace{ORD? textmin being used}%
       \fi
       \advance \@reqcolroom \ht\@currbox
       \fl@trace{float size =
               \the \ht \@currbox (addtocurcol)}%
       \fl@trace{colroom =
                   \the \@colroom (addtocurcol)}%
       \fl@trace{reqcolroom =
                \the \@reqcolroom (addtocurcol)}%
       \ifdim \@colroom>\@reqcolroom
         \@flsetnum \@colnum
         \ifnum \@colnum>\z@
           \@bitor\@currtype\@deferlist
           \fl@trace{deferlist:
              \@deferlist: (addtocurcol-before)}%
           \if@test
             \fl@trace{type already on list:
                            defer (addtocurcol)}%
           \else
             \@bitor\@currtype\@botlist
           \fl@trace{botlist: \@botlist:
                           (addtocurcol-before)}%
             \if@test
               \fl@trace{type already on list:
                         bot---sent to addtobot}%
               \@addtobot
             \else
               \fl@trace{fpstype
               \ifodd \@tempcnta OK \else not \fi
               here: \the \@fpstype}%
               \ifodd \count\@currbox
                 \advance \@reqcolroom \intextsep
                 \ifdim \@colroom>\@reqcolroom
                  \global \advance \@colnum \m@ne
                  \global \advance
                   \@textfloatsheight\ht\@currbox
                  \global \advance
                   \@textfloatsheight 2\intextsep
                   \@cons \@midlist \@currbox
                 \fl@trace{***Success: here}%
                 \fl@trace{textfloatsheight
                      (after-here) =
                      \the \@textfloatsheight}%
                 \fl@trace{colnum (after-here) =
                          \the \@colnum}%
                   \if@nobreak
                     \nobreak
                     \@nobreakfalse
                     \everypar{}%
                   \else
                     \addpenalty\interlinepenalty
                   \fi
                   \vskip \intextsep
                   \box\@currbox
                   \penalty\interlinepenalty
                   \vskip\intextsep
                   \ifnum\outputpenalty
                               <-\@Mii \vskip
                        -\parskip\fi
                   \outputpenalty \z@
                   \@inserttrue
                 \else
  \fl@trace{Fail---no room at 2nd test of colroom
                (addtocorcol \string\intextsep)}%
                 \fi
               \fi
               \if@insert
               \else
       \fl@trace{not here: sent to addtobot}%
                 \@addtobot
               \fi
             \fi
           \fi
         \else
         \fl@trace{Fail: colnum = \the \@colnum:
                    fpstype \the \@fpstype=ORD?}%
         \ifnum \@fpstype<\sixt@@n
  \fl@trace{ERROR: BANG float not successful
                                  (addtocurcol)}%
           \fi
         \fi
       \else
         \fl@trace{Fail---no room: fl box ht:
               \the \ht \@currbox (addtocurcol)}%
       \fi
     \fi
   \fi
   \if@insert
   \else
     \@resethfps
     \fl@trace{put on deferlist (addtocurcol)}%
     \@cons\@deferlist\@currbox
     \fl@trace{deferlist: \@deferlist:
                          (addtocurcol-after)}%
   \fi
  }%
\EndIncludeInRelease
\providecommand\fl@trace[1]{}
\endinput
%%
%% End of file `flafter.sty'.
