summaryrefslogtreecommitdiff
path: root/macros/latex/contrib/morefloats
diff options
context:
space:
mode:
authorNorbert Preining <norbert@preining.info>2019-09-02 13:46:59 +0900
committerNorbert Preining <norbert@preining.info>2019-09-02 13:46:59 +0900
commite0c6872cf40896c7be36b11dcc744620f10adf1d (patch)
tree60335e10d2f4354b0674ec22d7b53f0f8abee672 /macros/latex/contrib/morefloats
Initial commit
Diffstat (limited to 'macros/latex/contrib/morefloats')
-rw-r--r--macros/latex/contrib/morefloats/README167
-rw-r--r--macros/latex/contrib/morefloats/morefloats.dtx1504
-rw-r--r--macros/latex/contrib/morefloats/morefloats.pdfbin0 -> 493525 bytes
3 files changed, 1671 insertions, 0 deletions
diff --git a/macros/latex/contrib/morefloats/README b/macros/latex/contrib/morefloats/README
new file mode 100644
index 0000000000..bb3c11351b
--- /dev/null
+++ b/macros/latex/contrib/morefloats/README
@@ -0,0 +1,167 @@
+README for morefloats package, 2015/07/22, v1.0h
+
+
+TABLE OF CONTENTS
+=================
+
+1 Introduction
+2 Download
+3 Installation
+4 Additional Packages
+5 Package Compatibility
+6 Authors/Maintainer
+7 Bug Reports
+8 Known Problems
+
+
+1 INTRODUCTION
+==============
+
+The limit of unprocessed floats, 18, can be increased with this
+morefloats package. Otherwise, \clear(double)page, h(!), H from the
+float package, or \FloatBarrier from the picins package might help.
+
+Note: The original main code of this package
+(without \extrafloats from LaTeX 2015) was invented by
+Don Hosek, Quixote, 1990/07/27 (Thanks!).
+Maintenance has been taken over in September 2010 by H.-Martin M\"{u}nch.
+
+This material is published under the LPPL 1.3c: 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
+http://www.latex-project.org/lppl/lppl-1-3c.txt
+and the latest version of this license is in
+http://www.latex-project.org/lppl.txt
+and version 1.3c or later is part of all distributions of LaTeX version
+2005/12/01 or later.
+
+
+2 DOWNLOAD
+==========
+
+`morefloats' is available on CTAN:
+https://www.ctan.org/pkg/morefloats
+
+Also a ZIP file is provided that contains the files:
+the manual (morefloats.pdf), the example (morefloats-example.tex),
+the compiled example (morefloats-example.pdf),
+driver (morefloats.drv), morefloats.dtx,
+installation file (morefloats.ins),
+the style file (morefloats.sty),
+and this README, already sorted in a TDS tree:
+http://mirrors.ctan.org/install/macros/latex/contrib/morefloats.tds.zip
+
+
+3 INSTALLATION
+==============
+
+Installation with ZIP file in TDS format
+----------------------------------------
+The ZIP file `morefloats.tds.zip' contains the files
+sorted in a TDS tree. Thus you can directly unpack the
+ZIP file inside a TDS tree.
+See https://www.ctan.org/TDS-guidelines for an explanation
+of TDS.
+Example:
+ cd /...somewhere.../texmf
+ unzip /...downloadpath.../morefloats.tds.zip
+Do not forget to refresh the file name database of this
+TDS tree.
+Example:
+ texhash /...somewhere.../texmf
+(and check for old morefloats.sty at other locations in your
+ TeX installation).
+
+Manual installation
+-------------------
+a) Download the morefloats files from CTAN.
+ If necessary, unpack them.
+b) Check for old morefloats.sty at other locations in your
+ TeX installation and delete them (or back them up,
+ but in a way TeX does NOT find them automatically).
+c) Generate the package and driver files:
+ tex morefloats.dtx
+d) Install the file `morefloats.sty' in your TDS tree:
+ cp morefloats.sty TDS:tex/latex/morefloats/
+ Replace `TDS:' by the prefix of your TDS tree
+ (texmf directory).
+e) Create the documentation, if necessary, e.g.
+ pdflatex morefloats.dtx
+ makeindex -s gind.ist morefloats.idx
+ pdflatex morefloats.dtx
+ makeindex -s gind.ist morefloats.idx
+ pdflatex morefloats.dtx
+f) Update the databases if necessary, e.g. for teTeX:
+ mktexlsr .../texmf
+g) Create the morefloats-example.pdf, if necessary, e.g.
+ pdflatex morefloats-example.tex
+ pdflatex morefloats-example.tex
+ pdflatex morefloats-example.tex
+h) Copy the documentation files to
+ "TDS:doc/latex/morefloats/":
+ README, morefloats.pdf, morefloats-example.tex,
+ morefloats-example.pdf.
+
+
+4 ADDITIONAL PACKAGES
+=====================
+
+morefloats itself loads the kvoptions package:
+https://ctan.org/pkg/kvoptions
+which again loads other packages
+(see the result of the \listfiles command in the log-file
+ of the example).
+When an old LaTeX format is used, additionally the
+https://ctan.org/pkg/ifetex
+package is used.
+
+
+5 PACKAGE COMPATIBILITY
+=======================
+
+There are no known incompatibilities.
+
+
+6 AUTHORS/MAINTAINER
+=====================
+
+* Author of the original main code:
+ Don Hosek, Quixote, 1990/07/27 (Thanks!)
+* Author of the recent package and current maintainer:
+ H.-Martin Münch
+
+
+7 BUG REPORTS
+==============
+
+A bug report should contain:
+* Comprehensive problem description. This includes error or
+ warning messages.
+* \errorcontextlines=\maxdimen can be added in the
+ TeX code to get more information in TeX error messages.
+* Minimal test file that shows the problem, but does not
+ contain any unnecessary packages and code.
+* Used drivers/programs.
+* Version information about used packages and programs.
+* If you are using LaTeX, then add "\listfiles". Then
+ a list of version information is printed at the end
+ of the LaTeX run.
+* Please no other files than the minimal test file.
+ The other files .log, .dvi, .ps, .pdf are seldom
+ necessary, so send them only on request.
+* Please .zip or .tar.gz your file(s) before sending them!
+
+Bug address
+-----------
+Bug reports can be send to the maintainer:
+ H.-Martin Münch
+ <Martin [dot] Muench [at] Uni-Bonn [dot] de>
+
+
+8 KNOWN PROBLEMS
+=================
+
+* If you request too many floats, (La)TeX will run out of
+ memory. When testing, this happened when requesting
+ more than 1570 (!) floats. \ No newline at end of file
diff --git a/macros/latex/contrib/morefloats/morefloats.dtx b/macros/latex/contrib/morefloats/morefloats.dtx
new file mode 100644
index 0000000000..7ff29e5301
--- /dev/null
+++ b/macros/latex/contrib/morefloats/morefloats.dtx
@@ -0,0 +1,1504 @@
+% \iffalse meta-comment
+%
+% File: morefloats.dtx
+% Version: 2015/07/22 v1.0h
+%
+% Copyright (C) 2010 - 2015 by
+% H.-Martin M"unch <Martin dot Muench at Uni-Bonn dot de>
+% Portions of code copyrighted by other people as marked.
+%
+% LaTeX 2015 provides the extrafloats command.
+% Don Hosek, Quixote, 1990/07/27 (Thanks!)
+% invented the main code for handling more floats
+% before extrafloats was available.
+% Maintenance has been taken over in September 2010
+% by H.-Martin M\"{u}nch.
+% David Carlisle pointed the maintainer to the new
+% extrafloats command (Thanks!).
+%
+% 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
+% http://www.latex-project.org/lppl/lppl-1-3c.txt
+% and the latest version of this license is in
+% http://www.latex-project.org/lppl.txt
+% and version 1.3c 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 Maintainer of this work is H.-Martin Muench.
+%
+% This work consists of the main source file morefloats.dtx,
+% the README, and the derived files
+% morefloats.sty, morefloats.pdf,
+% morefloats.ins, morefloats.drv,
+% morefloats-example.tex, morefloats-example.pdf.
+%
+% 'morefloats' is available on CTAN:
+% https://www.ctan.org/pkg/morefloats
+%
+% Also a TDS.ZIP file is provided that contains all the files
+% already sorted in a TDS tree:
+% http://mirror.ctan.org/install/macros/latex/contrib/morefloats.tds.zip
+%
+%<*ignore>
+\begingroup
+ \catcode123=1 %
+ \catcode125=2 %
+ \def\x{LaTeX2e}%
+\expandafter\endgroup
+\ifcase 0\ifx\install y1\fi\expandafter
+ \ifx\csname processbatchFile\endcsname\relax\else1\fi
+ \ifx\fmtname\x\else 1\fi\relax
+\else\csname fi\endcsname
+%</ignore>
+%<*install>
+\input docstrip.tex
+\Msg{*******************************************************************************}
+\Msg{* Installation *}
+\Msg{* Package: morefloats 2015/07/22 v1.0h Raise limit of unprocessed floats (HMM)*}
+\Msg{*******************************************************************************}
+
+\keepsilent
+\askforoverwritefalse
+
+\let\MetaPrefix\relax
+\preamble
+
+This is a generated file.
+
+Project: morefloats
+Version: 2015/07/22 v1.0h
+
+Copyright (C) 2010 - 2015 by
+ H.-Martin M"unch <Martin dot Muench at Uni-Bonn dot de>
+Portions of code copyrighted by other people as marked.
+
+The usual disclaimer applies:
+If it doesn't work right that's your problem.
+(Nevertheless, send an e-mail to the maintainer
+ when you find an error in this package.)
+
+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
+ http://www.latex-project.org/lppl/lppl-1-3c.txt
+and the latest version of this license is in
+ http://www.latex-project.org/lppl.txt
+and version 1.3c 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 Maintainer of this work is H.-Martin Muench.
+
+LaTeX 2015 provides the extrafloats command.
+Don Hosek, Quixote, 1990/07/27 (Thanks!)
+invented the main code for handling more floats
+before extrafloats was available.
+Maintenance has been taken over in September 2010
+by H.-Martin Muench.
+David Carlisle pointed the maintainer to the new
+extrafloats command (Thanks!).
+
+This work consists of the main source file morefloats.dtx,
+the README, and the derived files
+ morefloats.sty, morefloats.pdf,
+ morefloats.ins, morefloats.drv,
+ morefloats-example.tex, morefloats-example.pdf.
+
+In memoriam
+ Claudia Simone Barth + 1996/01/30
+ Tommy Muench + 2014/01/02
+ Hans-Klaus Muench + 2014/08/24
+
+\endpreamble
+\let\MetaPrefix\DoubleperCent
+
+\generate{%
+ \file{morefloats.ins}{\from{morefloats.dtx}{install}}%
+ \file{morefloats.drv}{\from{morefloats.dtx}{driver}}%
+ \usedir{tex/latex/morefloats}%
+ \file{morefloats.sty}{\from{morefloats.dtx}{package}}%
+ \usedir{doc/latex/morefloats}%
+ \file{morefloats-example.tex}{\from{morefloats.dtx}{example}}%
+}
+
+\catcode32=13\relax% active space
+\let =\space%
+\Msg{************************************************************************}
+\Msg{*}
+\Msg{* To finish the installation you have to move the following}
+\Msg{* file into a directory searched by TeX:}
+\Msg{*}
+\Msg{* morefloats.sty}
+\Msg{*}
+\Msg{* To produce the documentation run the file `morefloats.drv'}
+\Msg{* through (pdf)LaTeX, e.g.}
+\Msg{* pdflatex morefloats.drv}
+\Msg{* makeindex -s gind.ist morefloats.idx}
+\Msg{* pdflatex morefloats.drv}
+\Msg{* makeindex -s gind.ist morefloats.idx}
+\Msg{* pdflatex morefloats.drv}
+\Msg{*}
+\Msg{* At least three runs are necessary e.g. to get the}
+\Msg{* references right!}
+\Msg{*}
+\Msg{* Happy TeXing!}
+\Msg{*}
+\Msg{************************************************************************}
+
+\endbatchfile
+%</install>
+%<*ignore>
+\fi
+%</ignore>
+%
+% \section{The documentation driver file}
+%
+% The next bit of code contains the documentation driver file for
+% \TeX , i.\,e., the file that will produce the documentation you
+% are currently reading. It will be extracted from this file by the
+% \texttt{docstrip} programme. That is, run \LaTeX{} on \texttt{docstrip}
+% and specify the \texttt{driver} option when \texttt{docstrip}
+% asks for options.
+%
+% \begin{macrocode}
+%<*driver>
+\NeedsTeXFormat{LaTeX2e}[2015/01/01]
+\ProvidesFile{morefloats.drv}%
+ [2015/07/22 v1.0h Raise limit of unprocessed floats (HMM)]
+\documentclass{ltxdoc}[2015/03/26]% v2.0w
+\usepackage[T1]{fontenc}[2005/09/27]% v1.99g
+\usepackage{pdflscape}[2008/08/11]% v0.10
+\usepackage{holtxdoc}[2012/03/21]% v0.24
+%% morefloats should work with earlier versions of LaTeX2e and
+%% may work with earlier versions of the class and those packages,
+%% but this was not tested.
+%% Please consider updating your LaTeX, class, and packages
+%% to the most recent version (if they are not already the most
+%% recent version).
+\hypersetup{%
+ pdfsubject={LaTeX2e package for increasing the limit of unprocessed floats (HMM)},%
+ pdfkeywords={LaTeX, morefloats, floats, H.-Martin Muench},%
+ pdfencoding=auto,%
+ pdflang={en},%
+ breaklinks=true,%
+ linktoc=all,%
+ pdfstartview=FitH,%
+ pdfpagelayout=OneColumn,%
+ bookmarksnumbered=true,%
+ bookmarksopen=true,%
+ bookmarksopenlevel=2,%
+ pdfmenubar=true,%
+ pdftoolbar=true,%
+ pdfwindowui=true,%
+ pdfnewwindow=true%
+}
+\CodelineIndex
+\hyphenation{docu-ment}
+\gdef\unit#1{\mathord{\thinspace\mathrm{#1}}}%
+\begin{document}
+ \DocInput{morefloats.dtx}%
+\end{document}
+%</driver>
+% \end{macrocode}
+%
+% \fi
+%
+% \CheckSum{3565}
+%
+% \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 \~}
+%
+% \GetFileInfo{morefloats.drv}
+%
+% \begingroup
+% \def\x{\#,\$,\^,\_,\~,\ ,\&,\{,\},\%}%
+% \makeatletter
+% \@onelevel@sanitize\x
+% \expandafter\endgroup
+% \expandafter\DoNotIndex\expandafter{\x}
+% \expandafter\DoNotIndex\expandafter{\string\ }
+% \begingroup
+% \makeatletter
+% \lccode`9=32\relax
+% \lowercase{%^^A
+% \edef\x{\noexpand\DoNotIndex{\@backslashchar9}}%^^A
+% }%^^A
+% \expandafter\endgroup\x
+% \DoNotIndex{\\,\,}
+% \DoNotIndex{\def,\edef,\gdef, \xdef}
+% \DoNotIndex{\ifnum, \ifx}
+% \DoNotIndex{\begin, \end, \LaTeX, \LateXe}
+% \DoNotIndex{\bigskip, \caption, \centering, \hline, \MessageBreak}
+% \DoNotIndex{\documentclass, \markboth, \mathrm, \mathord}
+% \DoNotIndex{\NeedsTeXFormat, \usepackage, \ProvidesPackage, \RequirePackage}
+% \DoNotIndex{\newline, \newpage, \pagebreak}
+% \DoNotIndex{\section, \subsection, \space, \thinspace}
+% \DoNotIndex{\textsf, \texttt}
+% \DoNotIndex{\the, \@tempcnta,\@tempcntb}
+% \DoNotIndex{\@elt,\@freelist, \newinsert}
+% \DoNotIndex{\bx@A, \bx@B, \bx@C, \bx@D, \bx@E, \bx@F, \bx@G, \bx@H, \bx@I, \bx@J, \bx@K, \bx@L, \bx@M, \bx@N, \bx@O, \bx@P, \bx@Q, \bx@R, \bx@S, \bx@T, \bx@U, \bx@V, \bx@W, \bx@X, \bx@Y, \bx@Z}
+% \DoNotIndex{\bx@AA, \bx@AB, \bx@AC, \bx@AD, \bx@AE, \bx@AF, \bx@AG, \bx@AH, \bx@AI, \bx@AJ, \bx@AK, \bx@AL, \bx@AM, \bx@AN, \bx@AO, \bx@AP, \bx@AQ, \bx@AR, \bx@AS, \bx@AT, \bx@AU, \bx@AV, \bx@AW, \bx@AX, \bx@AY, \bx@AZ}
+% \DoNotIndex{\bx@BA, \bx@BB, \bx@BC, \bx@BD, \bx@BE, \bx@BF, \bx@BG, \bx@BH, \bx@BI, \bx@BJ, \bx@BK, \bx@BL, \bx@BM, \bx@BN, \bx@BO, \bx@BP, \bx@BQ, \bx@BR, \bx@BS, \bx@BT, \bx@BU, \bx@BV, \bx@BW, \bx@BX, \bx@BY, \bx@BZ}
+% \DoNotIndex{\bx@CA, \bx@CB, \bx@CC, \bx@CD, \bx@CE, \bx@CF, \bx@CG, \bx@CH, \bx@CI, \bx@CJ, \bx@CK, \bx@CL, \bx@CM, \bx@CN, \bx@CO, \bx@CP, \bx@CQ, \bx@CR, \bx@CS, \bx@CT, \bx@CU, \bx@CV, \bx@CW, \bx@CX, \bx@CY, \bx@CZ}
+% \DoNotIndex{\bx@DA, \bx@DB, \bx@DC, \bx@DD, \bx@DE, \bx@DF, \bx@DG, \bx@DH, \bx@DI, \bx@DJ, \bx@DK, \bx@DL, \bx@DM, \bx@DN, \bx@DO, \bx@DP, \bx@DQ, \bx@DR, \bx@DS, \bx@DT, \bx@DU, \bx@DV, \bx@DW, \bx@DX, \bx@DY, \bx@DZ}
+% \DoNotIndex{\bx@EA, \bx@EB, \bx@EC, \bx@ED, \bx@EE, \bx@EF, \bx@EG, \bx@EH, \bx@EI, \bx@EJ, \bx@EK, \bx@EL, \bx@EM, \bx@EN, \bx@EO, \bx@EP, \bx@EQ, \bx@ER, \bx@ES, \bx@ET, \bx@EU, \bx@EV, \bx@EW, \bx@EX, \bx@EY, \bx@EZ}
+% \DoNotIndex{\bx@FA, \bx@FB, \bx@FC, \bx@FD, \bx@FE, \bx@FF, \bx@FG, \bx@FH, \bx@FI, \bx@FJ, \bx@FK, \bx@FL, \bx@FM, \bx@FN, \bx@FO, \bx@FP, \bx@FQ, \bx@FR, \bx@FS, \bx@FT, \bx@FU, \bx@FV, \bx@FW, \bx@FX, \bx@FY, \bx@FZ}
+% \DoNotIndex{\bx@GA, \bx@GB, \bx@GC, \bx@GD, \bx@GE, \bx@GF, \bx@GG, \bx@GH, \bx@GI, \bx@GJ, \bx@GK, \bx@GL, \bx@GM, \bx@GN, \bx@GO, \bx@GP, \bx@GQ, \bx@GR, \bx@GS, \bx@GT, \bx@GU, \bx@GV, \bx@GW, \bx@GX, \bx@GY, \bx@GZ}
+% \DoNotIndex{\bx@HA, \bx@HB, \bx@HC, \bx@HD, \bx@HE, \bx@HF, \bx@HG, \bx@HH, \bx@HI, \bx@HJ, \bx@HK, \bx@HL, \bx@HM, \bx@HN, \bx@HO, \bx@HP, \bx@HQ, \bx@HR, \bx@HS, \bx@HT, \bx@HU, \bx@HV, \bx@HW, \bx@HX, \bx@HY, \bx@HZ}
+% \DoNotIndex{\bx@IA, \bx@IB, \bx@IC, \bx@ID, \bx@IE, \bx@IF, \bx@IG, \bx@IH, \bx@II, \bx@IJ, \bx@IK, \bx@IL, \bx@IM, \bx@IN, \bx@IO, \bx@IP, \bx@IQ, \bx@IR, \bx@IS, \bx@IT, \bx@IU, \bx@IV, \bx@IW, \bx@IX, \bx@IY, \bx@IZ}
+% \DoNotIndex{\bx@JA, \bx@JB, \bx@JC, \bx@JD, \bx@JE, \bx@JF, \bx@JG, \bx@JH, \bx@JI, \bx@JJ, \bx@JK, \bx@JL, \bx@JM, \bx@JN, \bx@JO, \bx@JP, \bx@JQ, \bx@JR, \bx@JS, \bx@JT, \bx@JU, \bx@JV, \bx@JW, \bx@JX, \bx@JY, \bx@JZ}
+% \DoNotIndex{\morefloats@mx}
+%
+% \title{The \xpackage{morefloats} package}
+% \date{2015/07/22 v1.0h}
+% \author{H.-Martin M\"{u}nch (current maintainer;\\
+% invented by Don Hosek, Quixote)\\
+% \xemail{Martin.Muench at Uni-Bonn.de}}
+%
+% \maketitle
+%
+% \begin{abstract}
+% The default limit of unprocessed floats, $18$,
+% can be increased with this \xpackage{morefloats} package.
+% Otherwise, |\clear(double)page|, |h(!)|, |H|~from the \xpackage{float} package,
+% or |\FloatBarrier| from the \xpackage{picins} package might help.
+% \end{abstract}
+%
+% \bigskip
+%
+% \noindent Note: \LaTeX{} 2015 provides the |\extrafloats| command.
+% \textsc{Don Hosek}, Quixote, 1990/07/27 (Thanks!)
+% invented the main code for handling more floats
+% before |\extrafloats| was available.
+% \textsc{David Carlisle} pointed the maintainer to the new
+% |\extrafloats| (Thanks!).
+% The current maintainer is \textsc{H.-Martin M\"{u}nch}.\\
+%
+% \bigskip
+%
+% \noindent Disclaimer for web links: The author is not responsible for any contents
+% referred to in this work unless he has full knowledge of illegal contents.
+% If any damage occurs by the use of information presented there, only the
+% author of the respective pages might be liable, not the one who has referred
+% to these pages.
+%
+% \bigskip
+%
+% \noindent {\color{green} Save per page about $200\unit{ml}$ water,
+% $2\unit{g}$ CO$_{2}$ and $2\unit{g}$ wood:\\
+% Therefore please print only if this is really necessary.}
+%
+% \newpage
+%
+% \tableofcontents
+%
+% \newpage
+%
+% \section{Introduction\label{sec:Introduction}}
+%
+% The default limit of unprocessed floats, $18$,
+% can be increased with this \xpackage{morefloats} package.\\
+% \textquotedblleft{}Of course one immediately begins to wonder:
+% \guillemotright{}Why eighteen?!\guillemotleft{} And it turns out that $18$
+% one{-}line tables with $10$~point Computer Modern using \xclass{article.cls}
+% produces almost exactly one page worth of material.\textquotedblright{}\\
+% (user \url{https://tex.stackexchange.com/users/1495/kahen} as comment to\\
+% \url{https://tex.stackexchange.com/a/35596/6865} on 2011/11/21)\\
+% As alternatives (see also section \ref{sec:alternatives} below)
+% |\clear(double)page|, |h(!)|, |H|~from the
+% \href{https://www.ctan.org/pkg/float}{\xpackage{float}} package,
+% or |\FloatBarrier| from the %
+% \href{https://www.ctan.org/pkg/picins}{\xpackage{picins}} package might help.
+% If the floats cannot be placed anywhere at all, extending the number of floats
+% will just delay the arrival of the corresponding error.
+%
+% \section{Usage}
+%
+% \subsection{General usage:}
+% Load the package placing
+% \begin{quote}
+% |\usepackage[<|\textit{options}|>]{morefloats}|
+% \end{quote}
+% \noindent in the preamble of your \LaTeXe{} source file (the earlier the better).\\
+% \noindent The \xpackage{morefloats} package takes two options: |maxfloats| and
+% |morefloats|, where |morefloats| gives the number of additional floats and
+% |maxfloats| gives the maximum number of floats. |maxfloats=25| therefore means,
+% that there are $18$ (default) floats and $7$ additional floats.
+% |morefloats=7| therefore has the same meaning. It is only necessary to give
+% one of these two options. At the time being, it is not possible to reduce
+% the number of floats (for example to save boxes). If you have code
+% accomplishing that, please send it to the package maintainer, thanks.\\
+% Version 1.0b used a fixed value of |maxfloats=36|. Therefore for backward
+% compatibility this value is taken as the default one.\\
+% Example:
+% \begin{quote}
+% |\usepackage[maxfloats=25]{morefloats}|
+% \end{quote}
+% or
+% \begin{quote}
+% |\usepackage[morefloats=7]{morefloats}|
+% \end{quote}
+% or
+% \begin{quote}
+% |\usepackage[maxfloats=25,morefloats=7]{morefloats}|
+% \end{quote}
+%
+% \subsection{Situation for \LaTeX{} before 2015:}
+% |Float| uses |insert|, and each |insert| uses a group of |count|, |dimen|,
+% |skip|, and |box| each. When there are not enough available, no |\newinsert|
+% can be created. The
+% \href{https://www.ctan.org/pkg/etex-pkg}{\xpackage{etex}} package
+% provides access at an extended range of those registers,
+% but does not use those for |\newinsert|. Therefore the inserts must be
+% reserved first, which forces the use of the extended register range
+% for other new |count|, |dimen|, |skip|, and |box|:
+% To have more floats available, use |\usepackage{etex}\reserveinserts{...}|
+% right after |\documentclass[...]{...}|, where the argument of |\reserveinserts|
+% should be at least the maximum number of floats. Add another $10$
+% if the \href{https://www.ctan.org/pkg/bigfoot}{\xpackage{bigfoot}} or the
+% \href{https://www.ctan.org/pkg/manyfoot}{\xpackage{manyfoot}} package
+% is used, but |\reserveinserts| can be about $234$ at most for older
+% \LaTeX{} formats.
+%
+% \subsection{Situation for \LaTeX{} since 2015:}
+% Now |\reserveinserts| can be about $2\,147\,483\,647$,
+% but |\insert255{}| even then produces an error.
+% The \LaTeX{} 2015 \textquotedblleft release provides a new command in the format
+% |\extrafloats|\textquotedblright ; \textquotedblleft as it doesn't use
+% |\newinsert| (and as the 2015 format uses extended registers by default)
+% you can allocate a lot more floats\textquotedblright{} %
+% (both \textsc{David Carlisle}, 29. June 2015), \hbox{e.\,g. |\extrafloats{1234}|.}
+%
+% \section{Alternatives (kind of)\label{sec:alternatives}}
+%
+% The very old \xpackage{morefloats} with a fixed number of |maxfloats=36| {}%
+% \hbox{(i.\,e. $18$ |morefloats|)} has been archived at
+% \href{http://mirror.ctan.org/obsolete/macros/latex/contrib/misc/morefloats.sty}{%
+% http://mirror.ctan.org/obsolete/macros/latex/contrib/}\newline%
+% \href{http://mirror.ctan.org/obsolete/macros/latex/contrib/misc/morefloats.sty}{%
+% misc/morefloats.sty}.
+%
+% \bigskip
+%
+% If you really want to increase the number of (possible) floats,
+% this is the right package. On the other hand, if you ran into trouble of
+% \texttt{Too many unprocessed floats}, but would also accept less floats,
+% there are some other possibilities:
+% \begin{description}
+% \item[-] The command |\clearpage| forces \LaTeX{} to output any floating objects
+% that occurred before this command (and go to the next page).
+% |\cleardoublepage| does the same but ensures that the next page with
+% output is one with odd page number.
+% \item[-] Using different float specifiers: |t|~top, |b|~bottom, |p|~page
+% of floats.
+% \item[-] Suggesting \LaTeX{} to put the object where it was placed:
+% |h| (= here) float specifier.
+% \item[-] Telling \LaTeX{} to please put the object where it was placed:
+% |h!| (= here!) float specifier.
+% \item[-] Forcing \LaTeX{} to put the object where it was placed and shut up:
+% The \xpackage{float} package provides the \textquotedblleft style
+% option here, giving floating environments a [H] option which means
+% `PUT IT HERE' (as opposed to the standard [h] option which means
+% `You may put it here if you like')\textquotedblright{} (\xpackage{float}
+% package documentation v1.3d as of 2001/11/08).
+% Changing e.\,g. |\begin{figure}[tbp]...| to |\begin{figure}[H]...|
+% forces the figure to be placed HERE instead of floating away.\\
+% The \xpackage{float} package is available at \url{https://www.ctan.org/pkg/float}.
+% \item[-] The \xpackage{placeins} package provides the command |\FloatBarrier|.
+% Floats occurring before the |\FloatBarrier| are not allowed to float
+% to a later place, and floats occurring after the |\FloatBarrier| are not
+% allowed to float to an earlier place than the |\FloatBarrier|. (There
+% can be more than one |\FloatBarrier| in a document.) -- %
+% The same package also provides an option to automatically add |\FloatBarrier|s to
+% section headings. It is further possible to make
+% |\FloatBarrier|s less strict (see that package's documentation).\\
+% The \xpackage{placeins} package is available at \url{https://www.ctan.org/pkg/placeins}.
+% \item[-] Sometimes also increasing the maximum number (|\maxdeadcycles|)
+% of calls of |\output| without a |\shipout| can help,
+% for example |\maxdeadcycles=123\relax|.
+% \end{description}
+%
+% \newpage
+%
+% \noindent See also the following entries in the
+% \texttt{UK~List of TeX Frequently Asked Questions on the Web}:
+% \begin{description}
+% \item[-] \url{http://www.tex.ac.uk/cgi-bin/texfaq2html?label=floats}
+% \item[-] \url{http://www.tex.ac.uk/cgi-bin/texfaq2html?label=tmupfl}
+% \item[-] \url{http://www.tex.ac.uk/cgi-bin/texfaq2html?label=figurehere}
+% \end{description}
+% and the \textbf{excellent article on \textquotedblleft How to influence the position
+% of float environments like figure and table in \hbox{\LaTeX ?\textquotedblright } by
+% \textsc{Frank Mittelbach}} at \url{https://tex.stackexchange.com/a/39020/6865}{}!\\
+%
+% \bigskip
+%
+% \noindent (You programmed or found another alternative,
+% which is available at CTAN?\\
+% OK, send an e-mail to me with the name, location at CTAN,
+% and a short notice, and I will probably include it in
+% the list above.)
+%
+% \bigskip
+%
+% \section{Example}
+%
+% \begin{macrocode}
+%<*example>
+\documentclass[british]{article}[2014/09/29]% v1.4h
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\usepackage[maxfloats=25]{morefloats}[2015/07/22]% v1.0h
+%\maxdeadcycles=200\relax%
+%% \maxdeadcycles is the maximum number of calls of \output
+%% without a \shipout.
+\gdef\unit#1{\mathord{\thinspace\mathrm{#1}}}%
+\listfiles
+\begin{document}
+
+\makeatletter
+
+\section*{Example for morefloats}
+\markboth{Example for morefloats}{Example for morefloats}
+
+This example demonstrates the use of package\newline
+\textsf{morefloats}, v1.0h as of 2015/07/22 (HMM).\newline
+The package takes options (here:
+\verb|maxfloats=|\texttt{\morefloats@maxfloats} is used).\newline
+For more details please see the documentation!\newline
+
+To reproduce the\newline
+\LaTeX{} \texttt{ Error: Too many unprocessed floats},\newline
+comment out the \verb|\usepackage...| in the preamble
+(line~3)\newline
+(by placing a \% before it).\newline
+
+\bigskip
+
+Save per page about $200\unit{ml}$~water, $2\unit{g}$~CO$_{2}$
+and $2\unit{g}$~wood:\newline
+Therefore please print only if this is really necessary.\newline
+I do NOT think, that it is necessary to print THIS file, really!
+
+\bigskip
+
+There follow \morefloats@maxfloats{} floating tables.
+
+\pagebreak
+
+\@tempcnta=18\relax% default floats
+\advance\@tempcnta by \morefloats@morefloats%
+% \morefloats@morefloats is the number of additional
+% floating tables to create.
+\loop
+ \ifnum\@tempcnta>0\relax%
+ \begin{table}[t]\centering%
+ \begin{tabular}{|l|}%
+ \hline%
+ A table, which will keep floating.\\%
+ \hline
+ \end{tabular}%
+ \caption{A floating Table.}%
+ \end{table}%
+ \advance\@tempcnta by -1\relax%
+\repeat
+
+\makeatother
+
+\end{document}
+%</example>
+% \end{macrocode}
+%
+% \newpage
+%
+% \StopEventually{}
+%
+% \section{The implementation}
+%
+% We start off by checking that we are loading into \LaTeXe{} and
+% announcing the name and version of this package.
+%
+% \begin{macrocode}
+%<*package>
+% \end{macrocode}
+%
+% \begin{macrocode}
+\NeedsTeXFormat{LaTeX2e}[2011/06/27]
+%% The current format at the time of the release of this version of the
+%% morefloats package was 2015/01/01, patch level 2.
+\ProvidesPackage{morefloats}[2015/07/22 v1.0h
+ Raise limit of unprocessed floats (HMM)]
+
+% \end{macrocode}
+%
+% \DescribeMacro{Options}
+% \begin{macrocode}
+\RequirePackage{kvoptions}[2011/06/30]% v3.11
+%% morefloats may work with earlier versions of LaTeX2e and that
+%% package, but this was not tested.
+%% Please consider updating your LaTeX and package
+%% to the most recent version (if they are not already the most
+%% recent version).
+
+\SetupKeyvalOptions{family=morefloats,prefix=morefloats@}
+\DeclareStringOption{maxfloats}% \morefloats@maxfloats
+\DeclareStringOption{morefloats}% \morefloats@morefloats
+
+\ProcessKeyvalOptions*
+
+% \end{macrocode}
+%
+% The \xpackage{morefloats} package takes two options: |maxfloats| and |morefloats|,
+% where |morefloats| gives the number of additional floats and |maxfloats| gives
+% the maximum number of floats. |maxfloats=37| therefore means, that there are
+% $18$ (default) floats and another $19$ additional floats. |morefloats=19| therefore
+% has the same meaning. Version~1.0b used a fixed value of |maxfloats=36|.
+% Therefore for backward compatibility this value will be taken as the default one.\\
+% Now we check whether |maxfloats=...| or |morefloats=...| or both were used,
+% and if one option was not used, we supply the according value.
+% If no option was used at all, we use the default values.
+% Too many requested floats produce error massages by \LaTeX ,
+% which might not be easily traced back to this,
+% therefore we issue a warning. If option |maxfloats| or |morefloats| is no number,
+% the user will received the according error message by \LaTeX{} automatically.
+%
+% \begin{macrocode}
+\ifx\morefloats@maxfloats\@empty%
+ \ifx\morefloats@morefloats\@empty% apply defaults:
+ \gdef\morefloats@maxfloats{36}%
+ \gdef\morefloats@morefloats{18}%
+ \else%
+ \ifnum\morefloats@morefloats>1569\relax%
+ \PackageWarning{morefloats}{%
+ \morefloats@morefloats\space more floats requested.\MessageBreak%
+ LaTeX might run out of memory before this\MessageBreak%
+ (in which case it will notify you)\MessageBreak%
+ }%
+ \else%
+ \PackageInfo{morefloats}{%
+ \morefloats@morefloats\space more floats requested.\MessageBreak%
+ LaTeX might run out of memory before this\MessageBreak%
+ (in which case it will notify you)\MessageBreak%
+ }%
+ \fi%
+ \@tempcnta=\morefloats@morefloats\relax%
+ \advance\@tempcnta by +18%
+ \xdef\morefloats@maxfloats{\the\@tempcnta}%
+ \fi%
+\else%
+ \ifx\morefloats@morefloats\@empty%
+ \@tempcnta=\morefloats@maxfloats\relax%
+ \advance\@tempcnta by -18%
+ \xdef\morefloats@morefloats{\the\@tempcnta}%
+ \ifnum\morefloats@morefloats<\z@\relax% i.e. \morefloats@maxfloats < 18
+ \gdef\morefloats@morefloats{0}%
+ \fi%
+ \ifnum\morefloats@maxfloats>1587\relax%
+ \PackageWarning{morefloats}{%
+ \morefloats@maxfloats\space floats requested.\MessageBreak%
+ LaTeX might run out of memory before this\MessageBreak%
+ (in which case it will notify you)\MessageBreak%
+ }%
+ \fi%
+ \fi%
+\fi%
+
+\@tempcnta=\morefloats@maxfloats\relax%
+\xdef\morefloats@max{\the\@tempcnta}%
+
+\ifnum\@tempcnta<18\relax%
+ \PackageError{morefloats}{Option maxfloats is \the\@tempcnta<18}{%
+ maxfloats must be a number equal to or larger than 18\MessageBreak%
+ (or not used at all).\MessageBreak%
+ Now setting maxfloats=18.\MessageBreak%
+ }%
+ \gdef\morefloats@max{18}%
+\fi%
+
+\@tempcnta=\morefloats@morefloats\relax%
+\xdef\morefloats@more{\the\@tempcnta}%
+
+\ifnum\@tempcnta<\z@\relax%
+ \PackageError{morefloats}{Option morefloats is \the\@tempcnta<0}{%
+ morefloats must be a number equal to or larger than 0\MessageBreak%
+ (or not used at all).\MessageBreak%
+ Now setting morefloats=0.\MessageBreak%
+ }%
+ \gdef\morefloats@more{0}%
+\fi%
+
+\@tempcnta=18\relax%
+\advance\@tempcnta by \morefloats@more%
+% \end{macrocode}
+%
+% The value of |morefloats| should now be equal to the value of |morefloats@max|.
+%
+% \begin{macrocode}
+\advance\@tempcnta by -\morefloats@max%
+% \end{macrocode}
+%
+% Therefore |\@tempcnta| should now be equal to zero.
+%
+% \begin{macrocode}
+\xdef\morefloats@mx{\the\@tempcnta}%
+\ifnum\morefloats@mx=\z@\relax%
+ \@tempcnta=\morefloats@maxfloats\relax%
+\else%
+ \PackageError{morefloats}{%
+ Clash between options maxfloats and morefloats}{%
+ Option maxfloats must be empty\MessageBreak%
+ or the sum of 18 and option value morefloats,\MessageBreak%
+ but it is maxfloats=\morefloats@maxfloats\space and %
+ morefloats=\morefloats@morefloats .\MessageBreak%
+ }%
+% \end{macrocode}
+%
+% We choose the larger value to be used.
+%
+% \begin{macrocode}
+ \ifnum\@tempcnta<\z@% \morefloats@max > \morefloats@more
+ \@tempcnta=\morefloats@maxfloats\relax%
+ \else% \@tempcnta>0, \morefloats@max < \morefloats@more
+ \@tempcnta=18\relax%
+ \advance\@tempcnta by \morefloats@morefloats%
+ \fi%
+\fi%
+\edef\morefloats@mx{\the\@tempcnta}%
+% \end{macrocode}
+%
+% Maybe we had to change |\morefloats@maxfloats| or |\morefloats@maxfloats|:
+%
+% \begin{macrocode}
+\xdef\morefloats@maxfloats{\the\@tempcnta}%
+\advance\@tempcnta by -18\relax%
+\xdef\morefloats@morefloats{\the\@tempcnta}%
+\gdef\morefloats@test{1}%
+\ifx\morefloats@morefloats\morefloats@test\relax%
+ \PackageInfo{morefloats}{%
+ Maximum number of possible floats asked for: \morefloats@maxfloats%
+ \MessageBreak%
+ (i.e. one more float)\@gobble%
+ }%
+\else%
+ \PackageInfo{morefloats}{%
+ Maximum number of possible floats asked for: \morefloats@maxfloats%
+ \MessageBreak%
+ (i.e. \morefloats@morefloats\space more floats).\MessageBreak%
+ LaTeX might run out of memory before this\MessageBreak%
+ (in which case it will notify you)%
+ \@gobble%
+ }%
+\fi%
+
+
+% \end{macrocode}
+%
+% The \LaTeX{} 2015 \textquotedblleft release provides a new command in the format
+% |\extrafloats| which does a similar job [as earlier versions of this package did],
+% although as it doesn't use |\newinsert| (and as the 2015 format uses extended
+% registers by default) you can allocate a lot more floats,\textquotedblright{} %
+% \hbox{e.\,g. |\extrafloats{1234}|.} Loading the \xpackage{etex} package and
+% \xpackage{morefloats} with the new format would
+% \textquotedblleft over{-}write the new allocation mechanism and end up with
+% fewer floats available.\textquotedblright{} Therefore here it is tested
+% \textquotedblleft for the new format and switch[ed] to the new mechanism
+% in that case, so that existing documents work as before but using the new allocation
+% scheme underneath.\textquotedblright{} (all \textsc{David Carlisle}, 29. June 2015,
+% who provided also main parts of the following code)
+%
+% \begin{macrocode}
+%% Test for new mechanism in LaTeX 2015:
+\ifx\e@alloc\@undefined\relax%
+ %% This is an old LaTeX format, \extrafloats is not available.
+ \PackageWarning{morefloats}{%
+ \fmtname\space <\fmtversion> %
+ \ifx\patch@level\@undefined\relax%
+ \else patch level \patch@level%
+ \fi%
+ \MessageBreak%
+ found. At least\MessageBreak%
+ LaTeX2e <2015/01/01> patch level 2\MessageBreak%
+ is now available\MessageBreak%
+ and can handle even more floats%
+ \@gobble%
+ }%
+\else%
+ %% This is new in LaTeX 2015, \extrafloats is available.
+ \@ifpackageloaded{etex}%
+ {%% etex package loaded:
+ %% "it overwrites all the new allocation system
+ %% so really \extrafloats shouldn't be expected to work"
+ %% (D. Carlisle, 2015/07/16, who also provided the following
+ %% \extrafloats redefinition).
+ \gdef\extrafloats#1{%
+ \ifnum#1>\z@\relax%
+ \count@\numexpr\float@count-1\relax%
+ \ch@ck0\count@\count\relax%
+ \ch@ck1\count@\dimen\relax%
+ \ch@ck2\count@\skip\relax%
+ \ch@ck4\count@\box\relax%
+ \e@alloc@chardef\float@count\count@%
+ \expandafter\e@alloc@chardef\csname bx@\the\float@count\endcsname\float@count%
+ \@cons\@freelist{\csname bx@\the\float@count\endcsname}%
+ \expandafter%
+ \extrafloats\expandafter{\numexpr#1-1\relax}%
+ \fi%
+ }%
+ }{% etex package not loaded
+ }%
+ \extrafloats{\morefloats@morefloats}%
+ % The part after the test is no longer needed and therefore not loaded:
+ \expandafter\endinput%
+\fi%
+%% End of the test for LaTeX 2015 (or newer).
+%% Not new format, otherwise the last \endinput would have been applied.
+
+%% Test for e-TeX:
+\RequirePackage{ifetex}[2011/12/15]% v1.2
+\ifetex%
+ %% then we can use code similar to the one from David Carlisle,
+ %% https://tex.stackexchange.com/a/212483/6865
+ \mathchardef\float@count=32767\relax%
+ \gdef\extrafloats#1{%
+ \ifnum#1>\z@\relax%
+ \count@\numexpr\float@count-1\relax%
+ \ch@ck0\count@\count\relax%
+ \ch@ck1\count@\dimen\relax%
+ \ch@ck2\count@\skip\relax%
+ \ch@ck4\count@\box\relax%
+ \mathchardef\float@count\count@\relax%
+ \expandafter\mathchardef\csname bx@\the\float@count\endcsname\float@count%
+ \@cons\@freelist{\csname bx@\the\float@count\endcsname}%
+ \expandafter%
+ \extrafloats\expandafter{\numexpr#1-1\relax}%
+ \fi}%
+ \extrafloats{\morefloats@morefloats}%
+ \expandafter\endinput%
+\fi%
+%% End of the test for e-TeX.
+%% Old format and not e-TeX,
+%% otherwise the last \endinput would have been applied.
+
+
+% \end{macrocode}
+%
+% If we ever come to this place, \textquotedblleft everything\textquotedblright{} %
+% failed and we need to do things the old fashioned way,
+% which severely limits the maximum number of additionally available floats.
+%
+% \begin{macrocode}
+\PackageWarning{morefloats}{%
+ e-TeX is not available here\MessageBreak%
+ but it is available in almost all\MessageBreak%
+ recent TeX distributions.\MessageBreak%
+ Maybe consider updating to one of those%
+ \@gobble%
+ }%
+
+% \end{macrocode}
+%
+% \newpage
+%
+% \begin{landscape}
+%
+% |Float| uses |insert|, and each |insert| use a group of |count|, |dimen|, |skip|,
+% and |box| each. When there are not enough available, no |\newinsert| can be created.
+%
+% \begin{macrocode}
+%% Code similar to the one from Heiko Oberdiek,
+%% http://permalink.gmane.org/gmane.comp.tex.latex.latex3/2159
+ \@tempcnta=\the\count10 \relax \def\maxfloats@vln{count} %
+\ifnum \count11>\@tempcnta \@tempcnta=\the\count11 \relax \def\maxfloats@vln{dimen} \fi%
+\ifnum \count12>\@tempcnta \@tempcnta=\the\count12 \relax \def\maxfloats@vln{skip} \fi%
+\ifnum \count14>\@tempcnta \@tempcnta=\the\count14 \relax \def\maxfloats@vln{box} \fi%
+%% end similar
+\@tempcntb=234\relax%
+\advance\@tempcntb by -\@tempcnta\relax%
+\@tempcnta=\@tempcntb\relax%
+\ifnum\morefloats@mx>\@tempcntb\relax%
+ \PackageError{morefloats}{Too many floats requested}{%
+ Maximum number of possible floats asked for: \morefloats@mx .\MessageBreak%
+ There are only \the\@tempcnta\space \maxfloats@vln\space left,\MessageBreak%
+ therefore only \the\@tempcntb\space floats will be possible.\MessageBreak%
+ Load the morefloats package earlier and/or\MessageBreak%
+ reduce the number of used \maxfloats@vln\space registers\MessageBreak%
+ to have more floats available!\MessageBreak%
+ }%
+ \xdef\morefloats@mx{\the\@tempcntb}%
+\fi%
+
+% \end{macrocode}
+%
+% The task at hand is to increase \LaTeX{}'s default limit of $18$~unprocessed
+% floats in memory at once to |maxfloats|.
+% An examination of \texttt{latex.tex} reveals that this is accomplished
+% by allocating~(!) an insert register for each unprocessed float. A~quick
+% check of (the obsolete, now \texttt{ltplain}, update to \LaTeX2e{}!)
+% \texttt{lplain.lis} reveals that there is room, in fact, for up to
+% $256$ unprocessed floats, but \TeX{}'s main memory could be exhausted
+% well before that happened.\\
+%
+% \LaTeX2e{} uses a |\dimen| for each |\newinsert|, and the number of |\dimen|s
+% is also restricted. Therefore only use the number of floats you need!
+% To check the number of used registers, you could use the \xpackage{regstats}
+% and/or \xpackage{regcount} packages (see subsection~\ref{ss:Downloads}).
+%
+% \bigskip
+%
+% \DescribeMacro{Allocating insert registers}
+% \DescribeMacro{@freelist}
+% \DescribeMacro{@elt}
+% \DescribeMacro{newinsert}
+% First we allocate the additional insert registers needed.\\
+%
+% That accomplished, the next step is to define the macro |\@freelist|,
+% which is merely a~list of the box registers each preceded by |\@elt|.
+% This approach allows processing of the list to be done far more efficiently.
+% A similar approach is used by \textsc{Mittelbach \& Sch\"{o}pf}'s \texttt{doc.sty} to
+% keep track of control sequences, which should not be indexed.\\
+% First for the 18 default \LaTeX{} boxes.\\
+% \noindent |\ifnum maxfloats <= 18|, \LaTeX{} already allocated the insert registers. |\fi|\\
+%
+% \begin{macrocode}
+\global\long\def\@freelist{\@elt\bx@A\@elt\bx@B\@elt\bx@C\@elt\bx@D\@elt\bx@E\@elt\bx@F\@elt\bx@G\@elt\bx@H\@elt%
+\bx@I\@elt\bx@J\@elt\bx@K\@elt\bx@L\@elt\bx@M\@elt\bx@N\@elt\bx@O\@elt\bx@P\@elt\bx@Q\@elt\bx@R}
+
+% \end{macrocode}
+%
+% Now we need to add |\@elt\bx@...| depending on the number of |morefloats| wanted:\\
+% (\textsc{Karl Berry} helped with two out of three |\expandafter|s, thanks!)
+%
+% \medskip
+%
+% \begin{macrocode}
+\ifnum \morefloats@mx> 18 \newinsert\bx@S \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@S}
+\ifnum \morefloats@mx> 19 \newinsert\bx@T \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@T}
+\ifnum \morefloats@mx> 20 \newinsert\bx@U \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@U}
+\ifnum \morefloats@mx> 21 \newinsert\bx@V \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@V}
+\ifnum \morefloats@mx> 22 \newinsert\bx@W \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@W}
+\ifnum \morefloats@mx> 23 \newinsert\bx@X \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@X}
+\ifnum \morefloats@mx> 24 \newinsert\bx@Y \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@Y}
+\ifnum \morefloats@mx> 25 \newinsert\bx@Z \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@Z}
+\ifnum \morefloats@mx> 26 \newinsert\bx@AA \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@AA}
+\ifnum \morefloats@mx> 27 \newinsert\bx@AB \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@AB}
+\ifnum \morefloats@mx> 28 \newinsert\bx@AC \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@AC}
+\ifnum \morefloats@mx> 29 \newinsert\bx@AD \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@AD}
+\ifnum \morefloats@mx> 30 \newinsert\bx@AE \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@AE}
+\ifnum \morefloats@mx> 31 \newinsert\bx@AF \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@AF}
+\ifnum \morefloats@mx> 32 \newinsert\bx@AG \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@AG}
+\ifnum \morefloats@mx> 33 \newinsert\bx@AH \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@AH}
+\ifnum \morefloats@mx> 34 \newinsert\bx@AI \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@AI}
+\ifnum \morefloats@mx> 35 \newinsert\bx@AJ \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@AJ}
+\ifnum \morefloats@mx> 36 \newinsert\bx@AK \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@AK}
+\ifnum \morefloats@mx> 37 \newinsert\bx@AL \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@AL}
+\ifnum \morefloats@mx> 38 \newinsert\bx@AM \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@AM}
+\ifnum \morefloats@mx> 39 \newinsert\bx@AN \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@AN}
+\ifnum \morefloats@mx> 40 \newinsert\bx@AO \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@AO}
+\ifnum \morefloats@mx> 41 \newinsert\bx@AP \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@AP}
+\ifnum \morefloats@mx> 42 \newinsert\bx@AQ \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@AQ}
+\ifnum \morefloats@mx> 43 \newinsert\bx@AR \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@AR}
+\ifnum \morefloats@mx> 44 \newinsert\bx@AS \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@AS}
+\ifnum \morefloats@mx> 45 \newinsert\bx@AT \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@AT}
+\ifnum \morefloats@mx> 46 \newinsert\bx@AU \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@AU}
+\ifnum \morefloats@mx> 47 \newinsert\bx@AV \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@AV}
+\ifnum \morefloats@mx> 48 \newinsert\bx@AW \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@AW}
+\ifnum \morefloats@mx> 49 \newinsert\bx@AX \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@AX}
+\ifnum \morefloats@mx> 50 \newinsert\bx@AY \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@AY}
+\ifnum \morefloats@mx> 51 \newinsert\bx@AZ \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@AZ}
+\ifnum \morefloats@mx> 52 \newinsert\bx@BA \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@BA}
+\ifnum \morefloats@mx> 53 \newinsert\bx@BB \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@BB}
+\ifnum \morefloats@mx> 54 \newinsert\bx@BC \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@BC}
+\ifnum \morefloats@mx> 55 \newinsert\bx@BD \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@BD}
+\ifnum \morefloats@mx> 56 \newinsert\bx@BE \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@BE}
+\ifnum \morefloats@mx> 57 \newinsert\bx@BF \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@BF}
+\ifnum \morefloats@mx> 58 \newinsert\bx@BG \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@BG}
+\ifnum \morefloats@mx> 59 \newinsert\bx@BH \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@BH}
+\ifnum \morefloats@mx> 60 \newinsert\bx@BI \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@BI}
+\ifnum \morefloats@mx> 61 \newinsert\bx@BJ \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@BJ}
+\ifnum \morefloats@mx> 62 \newinsert\bx@BK \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@BK}
+\ifnum \morefloats@mx> 63 \newinsert\bx@BL \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@BL}
+\ifnum \morefloats@mx> 64 \newinsert\bx@BM \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@BM}
+\ifnum \morefloats@mx> 65 \newinsert\bx@BN \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@BN}
+\ifnum \morefloats@mx> 66 \newinsert\bx@BO \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@BO}
+\ifnum \morefloats@mx> 67 \newinsert\bx@BP \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@BP}
+\ifnum \morefloats@mx> 68 \newinsert\bx@BQ \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@BQ}
+\ifnum \morefloats@mx> 69 \newinsert\bx@BR \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@BR}
+\ifnum \morefloats@mx> 70 \newinsert\bx@BS \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@BS}
+\ifnum \morefloats@mx> 71 \newinsert\bx@BT \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@BT}
+\ifnum \morefloats@mx> 72 \newinsert\bx@BU \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@BU}
+\ifnum \morefloats@mx> 73 \newinsert\bx@BV \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@BV}
+\ifnum \morefloats@mx> 74 \newinsert\bx@BW \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@BW}
+\ifnum \morefloats@mx> 75 \newinsert\bx@BX \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@BX}
+\ifnum \morefloats@mx> 76 \newinsert\bx@BY \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@BY}
+\ifnum \morefloats@mx> 77 \newinsert\bx@BZ \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@BZ}
+\ifnum \morefloats@mx> 78 \newinsert\bx@CA \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@CA}
+\ifnum \morefloats@mx> 79 \newinsert\bx@CB \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@CB}
+\ifnum \morefloats@mx> 80 \newinsert\bx@CC \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@CC}
+\ifnum \morefloats@mx> 81 \newinsert\bx@CD \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@CD}
+\ifnum \morefloats@mx> 82 \newinsert\bx@CE \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@CE}
+\ifnum \morefloats@mx> 83 \newinsert\bx@CF \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@CF}
+\ifnum \morefloats@mx> 84 \newinsert\bx@CG \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@CG}
+\ifnum \morefloats@mx> 85 \newinsert\bx@CH \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@CH}
+\ifnum \morefloats@mx> 86 \newinsert\bx@CI \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@CI}
+\ifnum \morefloats@mx> 87 \newinsert\bx@CJ \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@CJ}
+\ifnum \morefloats@mx> 88 \newinsert\bx@CK \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@CK}
+\ifnum \morefloats@mx> 89 \newinsert\bx@CL \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@CL}
+\ifnum \morefloats@mx> 90 \newinsert\bx@CM \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@CM}
+\ifnum \morefloats@mx> 91 \newinsert\bx@CN \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@CN}
+\ifnum \morefloats@mx> 92 \newinsert\bx@CO \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@CO}
+\ifnum \morefloats@mx> 93 \newinsert\bx@CP \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@CP}
+\ifnum \morefloats@mx> 94 \newinsert\bx@CQ \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@CQ}
+\ifnum \morefloats@mx> 95 \newinsert\bx@CR \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@CR}
+\ifnum \morefloats@mx> 96 \newinsert\bx@CS \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@CS}
+\ifnum \morefloats@mx> 97 \newinsert\bx@CT \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@CT}
+\ifnum \morefloats@mx> 98 \newinsert\bx@CU \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@CU}
+\ifnum \morefloats@mx> 99 \newinsert\bx@CV \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@CV}
+\ifnum \morefloats@mx>100 \newinsert\bx@CW \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@CW}
+\ifnum \morefloats@mx>101 \newinsert\bx@CX \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@CX}
+\ifnum \morefloats@mx>102 \newinsert\bx@CY \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@CY}
+\ifnum \morefloats@mx>103 \newinsert\bx@CZ \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@CZ}
+\ifnum \morefloats@mx>104 \newinsert\bx@DA \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@DA}
+\ifnum \morefloats@mx>105 \newinsert\bx@DB \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@DB}
+\ifnum \morefloats@mx>106 \newinsert\bx@DC \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@DC}
+\ifnum \morefloats@mx>107 \newinsert\bx@DD \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@DD}
+\ifnum \morefloats@mx>108 \newinsert\bx@DE \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@DE}
+\ifnum \morefloats@mx>109 \newinsert\bx@DF \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@DF}
+\ifnum \morefloats@mx>110 \newinsert\bx@DG \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@DG}
+\ifnum \morefloats@mx>111 \newinsert\bx@DH \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@DH}
+\ifnum \morefloats@mx>112 \newinsert\bx@DI \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@DI}
+\ifnum \morefloats@mx>113 \newinsert\bx@DJ \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@DJ}
+\ifnum \morefloats@mx>114 \newinsert\bx@DK \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@DK}
+\ifnum \morefloats@mx>115 \newinsert\bx@DL \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@DL}
+\ifnum \morefloats@mx>116 \newinsert\bx@DM \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@DM}
+\ifnum \morefloats@mx>117 \newinsert\bx@DN \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@DN}
+\ifnum \morefloats@mx>118 \newinsert\bx@DO \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@DO}
+\ifnum \morefloats@mx>119 \newinsert\bx@DP \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@DP}
+\ifnum \morefloats@mx>120 \newinsert\bx@DQ \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@DQ}
+\ifnum \morefloats@mx>121 \newinsert\bx@DR \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@DR}
+\ifnum \morefloats@mx>122 \newinsert\bx@DS \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@DS}
+\ifnum \morefloats@mx>123 \newinsert\bx@DT \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@DT}
+\ifnum \morefloats@mx>124 \newinsert\bx@DU \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@DU}
+\ifnum \morefloats@mx>125 \newinsert\bx@DV \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@DV}
+\ifnum \morefloats@mx>126 \newinsert\bx@DW \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@DW}
+\ifnum \morefloats@mx>127 \newinsert\bx@DX \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@DX}
+\ifnum \morefloats@mx>128 \newinsert\bx@DY \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@DY}
+\ifnum \morefloats@mx>129 \newinsert\bx@DZ \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@DZ}
+\ifnum \morefloats@mx>130 \newinsert\bx@EA \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@EA}
+\ifnum \morefloats@mx>131 \newinsert\bx@EB \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@EB}
+\ifnum \morefloats@mx>132 \newinsert\bx@EC \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@EC}
+\ifnum \morefloats@mx>133 \newinsert\bx@ED \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@ED}
+\ifnum \morefloats@mx>134 \newinsert\bx@EE \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@EE}
+\ifnum \morefloats@mx>135 \newinsert\bx@EF \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@EF}
+\ifnum \morefloats@mx>136 \newinsert\bx@EG \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@EG}
+\ifnum \morefloats@mx>137 \newinsert\bx@EH \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@EH}
+\ifnum \morefloats@mx>138 \newinsert\bx@EI \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@EI}
+\ifnum \morefloats@mx>139 \newinsert\bx@EJ \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@EJ}
+\ifnum \morefloats@mx>140 \newinsert\bx@EK \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@EK}
+\ifnum \morefloats@mx>141 \newinsert\bx@EL \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@EL}
+\ifnum \morefloats@mx>142 \newinsert\bx@EM \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@EM}
+\ifnum \morefloats@mx>143 \newinsert\bx@EN \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@EN}
+\ifnum \morefloats@mx>144 \newinsert\bx@EO \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@EO}
+\ifnum \morefloats@mx>145 \newinsert\bx@EP \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@EP}
+\ifnum \morefloats@mx>146 \newinsert\bx@EQ \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@EQ}
+\ifnum \morefloats@mx>147 \newinsert\bx@ER \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@ER}
+\ifnum \morefloats@mx>148 \newinsert\bx@ES \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@ES}
+\ifnum \morefloats@mx>149 \newinsert\bx@ET \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@ET}
+\ifnum \morefloats@mx>150 \newinsert\bx@EU \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@EU}
+\ifnum \morefloats@mx>151 \newinsert\bx@EV \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@EV}
+\ifnum \morefloats@mx>152 \newinsert\bx@EW \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@EW}
+\ifnum \morefloats@mx>153 \newinsert\bx@EX \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@EX}
+\ifnum \morefloats@mx>154 \newinsert\bx@EY \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@EY}
+\ifnum \morefloats@mx>155 \newinsert\bx@EZ \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@EZ}
+\ifnum \morefloats@mx>156 \newinsert\bx@FA \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@FA}
+\ifnum \morefloats@mx>157 \newinsert\bx@FB \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@FB}
+\ifnum \morefloats@mx>158 \newinsert\bx@FC \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@FC}
+\ifnum \morefloats@mx>159 \newinsert\bx@FD \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@FD}
+\ifnum \morefloats@mx>160 \newinsert\bx@FE \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@FE}
+\ifnum \morefloats@mx>161 \newinsert\bx@FF \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@FF}
+\ifnum \morefloats@mx>162 \newinsert\bx@FG \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@FG}
+\ifnum \morefloats@mx>163 \newinsert\bx@FH \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@FH}
+\ifnum \morefloats@mx>164 \newinsert\bx@FI \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@FI}
+\ifnum \morefloats@mx>165 \newinsert\bx@FJ \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@FJ}
+\ifnum \morefloats@mx>166 \newinsert\bx@FK \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@FK}
+\ifnum \morefloats@mx>167 \newinsert\bx@FL \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@FL}
+\ifnum \morefloats@mx>168 \newinsert\bx@FM \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@FM}
+\ifnum \morefloats@mx>169 \newinsert\bx@FN \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@FN}
+\ifnum \morefloats@mx>170 \newinsert\bx@FO \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@FO}
+\ifnum \morefloats@mx>171 \newinsert\bx@FP \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@FP}
+\ifnum \morefloats@mx>172 \newinsert\bx@FQ \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@FQ}
+\ifnum \morefloats@mx>173 \newinsert\bx@FR \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@FR}
+\ifnum \morefloats@mx>174 \newinsert\bx@FS \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@FS}
+\ifnum \morefloats@mx>175 \newinsert\bx@FT \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@FT}
+\ifnum \morefloats@mx>176 \newinsert\bx@FU \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@FU}
+\ifnum \morefloats@mx>177 \newinsert\bx@FV \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@FV}
+\ifnum \morefloats@mx>178 \newinsert\bx@FW \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@FW}
+\ifnum \morefloats@mx>179 \newinsert\bx@FX \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@FX}
+\ifnum \morefloats@mx>180 \newinsert\bx@FY \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@FY}
+\ifnum \morefloats@mx>181 \newinsert\bx@FZ \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@FZ}
+\ifnum \morefloats@mx>182 \newinsert\bx@GA \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@GA}
+\ifnum \morefloats@mx>183 \newinsert\bx@GB \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@GB}
+\ifnum \morefloats@mx>184 \newinsert\bx@GC \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@GC}
+\ifnum \morefloats@mx>185 \newinsert\bx@GD \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@GD}
+\ifnum \morefloats@mx>186 \newinsert\bx@GE \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@GE}
+\ifnum \morefloats@mx>187 \newinsert\bx@GF \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@GF}
+\ifnum \morefloats@mx>188 \newinsert\bx@GG \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@GG}
+\ifnum \morefloats@mx>189 \newinsert\bx@GH \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@GH}
+\ifnum \morefloats@mx>190 \newinsert\bx@GI \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@GI}
+\ifnum \morefloats@mx>191 \newinsert\bx@GJ \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@GJ}
+\ifnum \morefloats@mx>192 \newinsert\bx@GK \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@GK}
+\ifnum \morefloats@mx>193 \newinsert\bx@GL \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@GL}
+\ifnum \morefloats@mx>194 \newinsert\bx@GM \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@GM}
+\ifnum \morefloats@mx>195 \newinsert\bx@GN \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@GN}
+\ifnum \morefloats@mx>196 \newinsert\bx@GO \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@GO}
+\ifnum \morefloats@mx>197 \newinsert\bx@GP \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@GP}
+\ifnum \morefloats@mx>198 \newinsert\bx@GQ \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@GQ}
+\ifnum \morefloats@mx>199 \newinsert\bx@GR \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@GR}
+\ifnum \morefloats@mx>200 \newinsert\bx@GS \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@GS}
+\ifnum \morefloats@mx>201 \newinsert\bx@GT \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@GT}
+\ifnum \morefloats@mx>202 \newinsert\bx@GU \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@GU}
+\ifnum \morefloats@mx>203 \newinsert\bx@GV \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@GV}
+\ifnum \morefloats@mx>204 \newinsert\bx@GW \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@GW}
+\ifnum \morefloats@mx>205 \newinsert\bx@GX \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@GX}
+\ifnum \morefloats@mx>206 \newinsert\bx@GY \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@GY}
+\ifnum \morefloats@mx>207 \newinsert\bx@GZ \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@GZ}
+\ifnum \morefloats@mx>208 \newinsert\bx@HA \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@HA}
+\ifnum \morefloats@mx>209 \newinsert\bx@HB \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@HB}
+\ifnum \morefloats@mx>210 \newinsert\bx@HC \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@HC}
+\ifnum \morefloats@mx>211 \newinsert\bx@HD \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@HD}
+\ifnum \morefloats@mx>212 \newinsert\bx@HE \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@HE}
+\ifnum \morefloats@mx>213 \newinsert\bx@HF \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@HF}
+\ifnum \morefloats@mx>214 \newinsert\bx@HG \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@HG}
+\ifnum \morefloats@mx>215 \newinsert\bx@HH \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@HH}
+\ifnum \morefloats@mx>216 \newinsert\bx@HI \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@HI}
+\ifnum \morefloats@mx>217 \newinsert\bx@HJ \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@HJ}
+\ifnum \morefloats@mx>218 \newinsert\bx@HK \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@HK}
+\ifnum \morefloats@mx>219 \newinsert\bx@HL \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@HL}
+\ifnum \morefloats@mx>220 \newinsert\bx@HM \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@HM}
+\ifnum \morefloats@mx>221 \newinsert\bx@HN \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@HN}
+\ifnum \morefloats@mx>222 \newinsert\bx@HO \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@HO}
+\ifnum \morefloats@mx>223 \newinsert\bx@HP \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@HP}
+\ifnum \morefloats@mx>224 \newinsert\bx@HQ \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@HQ}
+\ifnum \morefloats@mx>225 \newinsert\bx@HR \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@HR}
+\ifnum \morefloats@mx>226 \newinsert\bx@HS \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@HS}
+\ifnum \morefloats@mx>227 \newinsert\bx@HT \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@HT}
+\ifnum \morefloats@mx>228 \newinsert\bx@HU \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@HU}
+\ifnum \morefloats@mx>229 \newinsert\bx@HV \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@HV}
+\ifnum \morefloats@mx>230 \newinsert\bx@HW \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@HW}
+\ifnum \morefloats@mx>231 \newinsert\bx@HX \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@HX}
+\ifnum \morefloats@mx>232 \newinsert\bx@HY \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@HY}
+\ifnum \morefloats@mx>233 \newinsert\bx@HZ \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@HZ}
+\ifnum \morefloats@mx>234 \newinsert\bx@IA \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@IA}
+\ifnum \morefloats@mx>235 \newinsert\bx@IB \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@IB}
+\ifnum \morefloats@mx>236 \newinsert\bx@IC \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@IC}
+\ifnum \morefloats@mx>237 \newinsert\bx@ID \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@ID}
+\ifnum \morefloats@mx>238 \newinsert\bx@IE \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@IE}
+\ifnum \morefloats@mx>239 \newinsert\bx@IF \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@IF}
+\ifnum \morefloats@mx>240 \newinsert\bx@IG \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@IG}
+\ifnum \morefloats@mx>241 \newinsert\bx@IH \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@IH}
+\ifnum \morefloats@mx>242 \newinsert\bx@II \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@II}
+\ifnum \morefloats@mx>243 \newinsert\bx@IJ \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@IJ}
+\ifnum \morefloats@mx>244 \newinsert\bx@IK \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@IK}
+\ifnum \morefloats@mx>245 \newinsert\bx@IL \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@IL}
+\ifnum \morefloats@mx>246 \newinsert\bx@IM \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@IM}
+\ifnum \morefloats@mx>247 \newinsert\bx@IN \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@IN}
+\ifnum \morefloats@mx>248 \newinsert\bx@IO \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@IO}
+\ifnum \morefloats@mx>249 \newinsert\bx@IP \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@IP}
+\ifnum \morefloats@mx>250 \newinsert\bx@IQ \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@IQ}
+\ifnum \morefloats@mx>251 \newinsert\bx@IR \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@IR}
+\ifnum \morefloats@mx>252 \newinsert\bx@IS \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@IS}
+\ifnum \morefloats@mx>253 \newinsert\bx@IT \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@IT}
+\ifnum \morefloats@mx>254 \newinsert\bx@IU \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@IU}
+\ifnum \morefloats@mx>255 \newinsert\bx@IV \expandafter\gdef\expandafter\@freelist\expandafter{\@freelist \@elt\bx@IV}
+% \end{macrocode}
+%
+% \newpage
+%
+% \begin{macrocode}
+\ifnum \morefloats@mx>256\relax%
+ \PackageError{morefloats}{Too many floats called for}{%
+ You requested more than 256 floats.\MessageBreak%
+ (\morefloats@mx\space to be precise.)\MessageBreak%
+ LaTeX before 2015 could not process\MessageBreak%
+ more than 256 floats, therefore the morefloats\MessageBreak%
+ package only provides 256 floats.\MessageBreak%
+ If you need more floats,\MessageBreak%
+ update to a current (>=2015) LaTeX distribution.\MessageBreak%
+ I expected LaTeX (prior 2015) to run out of dimensions\MessageBreak%
+ or memory long before reaching 256 floats anyway.\MessageBreak%
+ }%
+\fi \fi \fi \fi \fi \fi \fi \fi \fi \fi \fi \fi \fi \fi \fi \fi \fi \fi
+\fi \fi \fi \fi \fi \fi \fi \fi \fi \fi \fi \fi \fi \fi \fi \fi \fi \fi
+\fi \fi \fi \fi \fi \fi \fi \fi \fi \fi \fi \fi \fi \fi \fi \fi \fi \fi
+\fi \fi \fi \fi \fi \fi \fi \fi \fi \fi \fi \fi \fi \fi \fi \fi \fi \fi
+\fi \fi \fi \fi \fi \fi \fi \fi \fi \fi \fi \fi \fi \fi \fi \fi \fi \fi
+\fi \fi \fi \fi \fi \fi \fi \fi \fi \fi \fi \fi \fi \fi \fi \fi \fi \fi
+\fi \fi \fi \fi \fi \fi \fi \fi \fi \fi \fi \fi \fi \fi \fi \fi \fi \fi
+\fi \fi \fi \fi \fi \fi \fi \fi \fi \fi \fi \fi \fi \fi \fi \fi \fi \fi
+\fi \fi \fi \fi \fi \fi \fi \fi \fi \fi \fi \fi \fi \fi \fi \fi \fi \fi
+\fi \fi \fi \fi \fi \fi \fi \fi \fi \fi \fi \fi \fi \fi \fi \fi \fi \fi
+\fi \fi \fi \fi \fi \fi \fi \fi \fi \fi \fi \fi \fi \fi \fi \fi \fi \fi
+\fi \fi \fi \fi \fi \fi \fi \fi \fi \fi \fi \fi \fi \fi \fi \fi \fi \fi
+\fi \fi \fi \fi \fi \fi \fi \fi \fi \fi \fi \fi \fi \fi \fi \fi \fi \fi
+\fi \fi \fi \fi \fi
+
+% \end{macrocode}
+%
+% \begin{macrocode}
+%</package>
+% \end{macrocode}
+%
+% \end{landscape}
+% \newpage
+%
+% \section{Installation}
+%
+% \subsection{Downloads\label{ss:Downloads}}
+%
+% Everything is available at \url{https://www.ctan.org},
+% but may need additional packages themselves.\\
+%
+% \DescribeMacro{morefloats.dtx}
+% For unpacking the |morefloats.dtx| file and constructing the documentation it is required:
+% \begin{description}
+% \item[-] \TeX Format \LaTeXe{}: \url{https://www.CTAN.org}
+%
+% \item[-] document class \xclass{ltxdoc}, 2015/03/26, v2.0w,
+% \url{https://www.ctan.org/pkg/ltxdoc}
+%
+% \item[-] package \xpackage{fontenc}, 2005/09/27, v1.99g,
+% \url{https://ctan.org/pkg/fontenc}
+%
+% \item[-] package \xpackage{pdflscape}, 2008/08/11, v0.10,
+% \url{https://ctan.org/pkg/pdflscape}
+%
+% \item[-] package \xpackage{holtxdoc}, 2012/03/21, v0.24,
+% \url{https://ctan.org/pkg/holtxdoc}
+%
+% \item[-] package \xpackage{hypdoc}, 2011/08/19, v1.11,
+% \url{https://ctan.org/pkg/hypdoc}
+% \end{description}
+%
+% \DescribeMacro{morefloats.sty}
+% The \texttt{morefloats.sty} for \LaTeXe{} \hbox{(i.\,e. each} document using
+% the \xpackage{morefloats} package) requires:
+% \begin{description}
+% \item[-] \TeX Format \LaTeXe{}, \url{https://www.CTAN.org/}
+%
+% \item[-] package \xpackage{kvoptions}, 2011/06/30, v3.11,
+% \url{https://ctan.org/pkg/kvoptions}
+%
+% \item[-] package \xpackage{ifetex}, 2011/12/15, v1.2,
+% \url{https://ctan.org/pkg/ifetex}, is used in some cases
+% \end{description}
+%
+% \DescribeMacro{regstats}
+% \DescribeMacro{regcount}
+% To check the number of used registers it was mentioned:
+% \begin{description}
+% \item[-] package \xpackage{regstats}, \url{https://ctan.org/pkg/regstats}
+% \item[-] package \xpackage{regcount}, \url{https://ctan.org/pkg/regcount}
+% \end{description}
+%
+% \DescribeMacro{Oberdiek}
+% \DescribeMacro{holtxdoc}
+% \DescribeMacro{hypdoc}
+% All packages of \textsc{Heiko Oberdiek}'s bundle `oberdiek'
+% (especially \xpackage{holtxdoc}, \xpackage{hypdoc}, and \xpackage{kvoptions})
+% are also available in a TDS compliant ZIP archive:\\
+% \url{http://mirror.ctan.org/install/macros/latex/contrib/oberdiek.tds.zip}.\\
+% It is probably best to download and use this, because the packages in there
+% are quite probably both recent and compatible among themselves.\\
+%
+% \DescribeMacro{hyperref}
+% \noindent \xpackage{hyperref} is not included in that bundle and needs to be
+% downloaded separately,\\
+% \url{http://mirror.ctan.org/install/macros/latex/contrib/hyperref.tds.zip}.\\
+%
+% \DescribeMacro{M\"{u}nch}
+% A hyperlinked list of my (other) packages can be found at
+% \url{https://www.ctan.org/author/muench-hm}.\\
+%
+% \subsection{Package, unpacking TDS}
+% \paragraph{Package.} This package is available on \url{https://www.CTAN.org}.
+% \begin{description}
+% \item[\url{http://mirror.ctan.org/macros/latex/contrib/morefloats/morefloats.dtx}]\hspace*{0.1cm}
+% The source file.
+% \item[\url{http://mirror.ctan.org/macros/latex/contrib/morefloats/morefloats.pdf}]\hspace*{0.1cm}
+% The documentation.
+% \item[\url{http://mirror.ctan.org/macros/latex/contrib/morefloats/README}]\hspace*{0.1cm}\\
+% \hspace*{1em}The README file.
+% \end{description}
+%
+% \noindent There is also a |morefloats.tds.zip| available:
+% \begin{description}
+% \item[\url{http://mirror.ctan.org/install/macros/latex/contrib/morefloats.tds.zip}]\hspace*{0.1cm}
+% Everything in TDS compliant, compiled format.
+% \end{description}
+% which additionally contains\\
+% \begin{tabular}{ll}
+% morefloats.ins & The installation file.\\
+% morefloats.drv & The driver to generate the documentation.\\
+% morefloats.sty & The \xext{sty}le file.\\
+% morefloats-example.tex & The example file.\\
+% morefloats-example.pdf & The compiled example file.
+% \end{tabular}
+%
+% \bigskip
+%
+% \noindent For required other packages, please see the preceding subsection.
+%
+% \paragraph{Unpacking.} The \xfile{.dtx} file is a self-extracting
+% \docstrip{} archive. The files are extracted by running the
+% \xfile{.dtx} through \plainTeX{}:
+% \begin{quote}
+% \verb|tex morefloats.dtx|
+% \end{quote}
+%
+% About generating the documentation see paragraph~\ref{GenDoc} below.\\
+%
+% \paragraph{TDS.} Now the different files must be moved into
+% the different directories in your installation TDS tree
+% (also known as \xfile{texmf} tree):
+% \begin{quote}
+% \def\t{^^A
+% \begin{tabular}{@{}>{\ttfamily}l@{ $\rightarrow$ }>{\ttfamily}l@{}}
+% morefloats.sty & tex/latex/morefloats/morefloats.sty\\
+% morefloats.pdf & doc/latex/morefloats/morefloats.pdf\\
+% morefloats-example.tex & doc/latex/morefloats/morefloats-example.tex\\
+% morefloats-example.pdf & doc/latex/morefloats/morefloats-example.pdf\\
+% morefloats.dtx & source/latex/morefloats/morefloats.dtx\\
+% \end{tabular}^^A
+% }^^A
+% \sbox0{\t}^^A
+% \ifdim\wd0>\linewidth
+% \begingroup
+% \advance\linewidth by\leftmargin
+% \advance\linewidth by\rightmargin
+% \edef\x{\endgroup
+% \def\noexpand\lw{\the\linewidth}^^A
+% }\x
+% \def\lwbox{^^A
+% \leavevmode
+% \hbox to \linewidth{^^A
+% \kern-\leftmargin\relax
+% \hss
+% \usebox0
+% \hss
+% \kern-\rightmargin\relax
+% }^^A
+% }^^A
+% \ifdim\wd0>\lw
+% \sbox0{\small\t}^^A
+% \ifdim\wd0>\linewidth
+% \ifdim\wd0>\lw
+% \sbox0{\footnotesize\t}^^A
+% \ifdim\wd0>\linewidth
+% \ifdim\wd0>\lw
+% \sbox0{\scriptsize\t}^^A
+% \ifdim\wd0>\linewidth
+% \ifdim\wd0>\lw
+% \sbox0{\tiny\t}^^A
+% \ifdim\wd0>\linewidth
+% \lwbox
+% \else
+% \usebox0
+% \fi
+% \else
+% \lwbox
+% \fi
+% \else
+% \usebox0
+% \fi
+% \else
+% \lwbox
+% \fi
+% \else
+% \usebox0
+% \fi
+% \else
+% \lwbox
+% \fi
+% \else
+% \usebox0
+% \fi
+% \else
+% \lwbox
+% \fi
+% \else
+% \usebox0
+% \fi
+% \end{quote}
+% If you have a \xfile{docstrip.cfg} that configures and enables \docstrip's
+% TDS installing feature, then some files can already be in the right
+% place, see the documentation of \docstrip{}.
+%
+% \subsection{Refresh file name databases}
+%
+% If your \TeX~distribution (\TeX{} Live, \mikTeX, \teTeX, \dots) relies on
+% file name databases, you must refresh these. For example, \teTeX{} users run
+% \verb|texhash| or \verb|mktexlsr|.
+%
+% \subsection{Some details for the interested}
+%
+% \paragraph{Unpacking with \LaTeX{}.}
+% The \xfile{.dtx} chooses its action depending on the format:
+% \begin{description}
+% \item[\plainTeX:] Run \docstrip{} and extract the files.
+% \item[\LaTeX:] Generate the documentation.
+% \end{description}
+% If you insist on using \LaTeX{} for \docstrip{} (really,
+% \docstrip{} does not need \LaTeX ), then inform the autodetect routine
+% about your intention:
+% \begin{quote}
+% \verb|latex \let\install=y\input{morefloats.dtx}|
+% \end{quote}
+% Do not forget to quote the argument according to the demands
+% of your shell.
+%
+% \paragraph{Generating the documentation.\label{GenDoc}}
+% You can use both the \xfile{.dtx} or the \xfile{.drv} to generate
+% the documentation. The process can be configured by a
+% configuration file \xfile{ltxdoc.cfg}. For instance, put the following
+% line into this file, if you want to have A4 as paper format:
+% \begin{quote}
+% \verb|\PassOptionsToClass{a4paper}{article}|
+% \end{quote}
+%
+% \noindent An example follows how to generate the
+% documentation with \pdfLaTeX :
+%
+% \begin{quote}
+%\begin{verbatim}
+%pdflatex morefloats.dtx
+%makeindex -s gind.ist morefloats.idx
+%pdflatex morefloats.dtx
+%makeindex -s gind.ist morefloats.idx
+%pdflatex morefloats.dtx
+%\end{verbatim}
+% \end{quote}
+%
+% \subsection{Compiling the example}
+%
+% The example file, \textsf{morefloats-example.tex}, can be compiled via\\
+% |(pdf)latex morefloats-example.tex|.
+%
+% \section{Acknowledgements}
+%
+% \LaTeX{} 2015 provides the |\extrafloats| command.
+% \textsc{Don Hosek}, Quixote, 1990/07/27 (Thanks!)
+% invented the main code for handling more floats
+% before |\extrafloats| was available.
+% \textsc{David Carlisle} pointed the maintainer to the new |\extrafloats|
+% and provided the code for |\extrafloats| in case |\extrafloats| is not yet
+% available at the used system (Thanks!).
+% The current maintainer is \textsc{H.-Martin M\"{u}nch}.\\
+% I would like to thank additionally \textsc{Karl Berry} for helping with taking
+% over the maintainership of this package and two missing |\expandafter|s,
+% \textsc{Heiko Oberdiek} for providing a~lot~(!) of useful packages (from
+% which I also got everything I know about creating a file in \xfile{dtx}
+% format, ok, say it: copying), everybody of the CTAN team for managing
+% CTAN, and the \Newsgroup{comp.text.tex} and \Newsgroup{de.comp.text.tex}
+% newsgroups and everybody at \url{http://tex.stackexchange.com/}
+% for their help in all things \hbox{\TeX{}.}
+%
+% \newpage
+%
+% \phantomsection
+% \begin{History}\label{History}
+%
+% Some old versions have been archived at
+% \url{http://ctanhg.scharrer-online.de/pkg/morefloats.html}.
+%
+% \begin{Version}{1990/07/27 v1.0a}
+% \item Created by \textsc{Don Hosek}.
+% \end{Version}
+% \begin{Version}{2008/11/14 v1.0b}
+% \item \textsc{Clea F. Rees} added a license line.
+% \end{Version}
+% \begin{Version}{2010/09/20 v1.0c}
+% \item \xfile{.dtx} created by \textsc{H.-Martin M\"{u}nch}.
+% \item Included more documentation and alternatives.
+% \item Included options to allow the user to flexible choose the number
+% of floats from $18$ up to $256$ instead of fixed $36$.
+% \item Included an example file.
+% \item Created a \texttt{README} file.
+% \end{Version}
+% \begin{Version}{2011/02/01 v1.0d}
+% \item References to\\
+% \url{http://www.tex.ac.uk/cgi-bin/texfaq2html?label=figurehere} and\\
+% \url{http://mirror.ctan.org/obsolete/macros/latex/contrib/misc/morefloats.sty}
+% added.
+% \item Now using the \xpackage{lscape} package from the \xpackage{graphics}
+% bundle to print some pages of the documentation in landscape instead
+% of portrait mode, because they were way too wide. (\textit{Since v1.0e
+% replaced by \xpackage{pdflscape} package.})
+% \item Updated the version of the \xpackage{hyperref} package.
+% (\textit{Since version~1.0e the \xpackage{morefloats} package uses
+% a fixed version of the \xpackage{holtxdoc} package, which calls for
+% the right version of the \xpackage{hyperref} package, therefore
+% it is no longer necessary to give the recent version of the
+% \xpackage{hyperref} package here.})
+% \end{Version}
+% \begin{Version}{2011/07/10 v1.0e}
+% \item There is a new version of the used \xpackage{kvoptions} package.
+% \item Now using the \xpackage{pdflscape} package instead of the
+% \xpackage{lscape} package in the documentation.
+% \item The \xpackage{holtxdoc} package was fixed,
+% therefore the warning in \xfile{drv} could be removed.~-- Adapted
+% the style of this documentation to new \textsc{Oberdiek} \xfile{dtx}
+% style.
+% \end{Version}
+% \begin{Version}{2012/01/28 v1.0f}
+% \item Bug fix: wrong path given in the documentation, fixed.
+% \item Replaced |\global\edef| by |\xdef|.
+% \item No longer uses a counter for itself but temporary ones. (For the floats
+% of course inserts and therefore counts are still used.)
+% \item The number of available inserts is checked before the allocation.
+% \item Maximum number of floats/inserts is $256$, not $266$; corrected.
+% \item Quite some additional changes in the \xfile{dtx} and README files.
+% \end{Version}
+% \begin{Version}{2015/07/16 v1.0g}
+% \item Implemented the new |\extrafloats| from \LaTeX{} 2015 allowing
+% several hundreds of additional floats.
+% \item Update of documentation, README, and \xfile{dtx} internals.
+% \end{Version}
+% \begin{Version}{2015/07/22 v1.0h}
+% \item Handling of more floats depending on new{/}old \LaTeX{} format,
+% availability of \eTeX{} in the used distribution,
+% and loading of the \xpackage{etex} package
+% (before \xpackage{morefloats}{/}after \xpackage{morefloats}{/}not
+% at all) should now ensure that the maximum number
+% for available floats can be allocated.
+% \item The example file now uses a flexible number of floats.
+% \end{Version}
+% \end{History}
+%
+% \bigskip
+%
+% When you find a mistake or have a suggestion for an improvement of this package,
+% please send an e-mail to the maintainer, thanks! (Please see BUG REPORTS in the README.)
+%
+% \newpage
+%
+% \PrintIndex
+%
+% \Finale
+\endinput \ No newline at end of file
diff --git a/macros/latex/contrib/morefloats/morefloats.pdf b/macros/latex/contrib/morefloats/morefloats.pdf
new file mode 100644
index 0000000000..0eb09eb88a
--- /dev/null
+++ b/macros/latex/contrib/morefloats/morefloats.pdf
Binary files differ