summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/latex/lastpage
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/tex/latex/lastpage')
-rw-r--r--Master/texmf-dist/tex/latex/lastpage/lastpage.sty277
-rw-r--r--Master/texmf-dist/tex/latex/lastpage/lastpage209.sty52
-rw-r--r--Master/texmf-dist/tex/latex/lastpage/lastpage2e.sty67
-rw-r--r--Master/texmf-dist/tex/latex/lastpage/lastpageclassic.sty254
-rw-r--r--Master/texmf-dist/tex/latex/lastpage/lastpagemodern.sty237
5 files changed, 613 insertions, 274 deletions
diff --git a/Master/texmf-dist/tex/latex/lastpage/lastpage.sty b/Master/texmf-dist/tex/latex/lastpage/lastpage.sty
index 909e3f88771..573ace14169 100644
--- a/Master/texmf-dist/tex/latex/lastpage/lastpage.sty
+++ b/Master/texmf-dist/tex/latex/lastpage/lastpage.sty
@@ -9,17 +9,13 @@
%% This is a generated file.
%%
%% Project: lastpage
-%% Version: 2021/09/03 v1.2n
+%% Version: 2023-03-07 v2.0a
+%% Info: Refers to last page's name
%%
-%% Copyright (C) 2010 - 2021 by
-%% H.-Martin M"unch <Martin dot Muench at Uni-Bonn dot de>
+%% Copyright (C) 2010 - 2023 by
+%% H.-Martin Muench <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
@@ -28,265 +24,46 @@
%% and 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 2005/12/01 or later.
+%% 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 package was invented by
-%% Jeffrey P. Goldberg (jeffrey+news at goldmark dot org).
+%% This package was invented by Jeffrey P. Goldberg.
%% I thought that a replacement was needed and therefore created the pageslts package,
-%% https://www.ctan.org/pkg/pageslts
+%% https://ctan.org/pkg/pageslts
%% . Nevertheless, for compatibility with existing documents/packages as well as for
%% the low amount of resources needed by the lastpage package (no new counter!),
%% I updated this package.
%% Thanks go to Jeffrey P. Goldberg for allowing me to do this.
%%
+%% While this package allows for things like "Page slash thepage{} of slash pageref{LastPage}"
+%% to get "Page 7 of 9" or "Page VII of IX",
+%% the NUMBER of pages is nowadays available via slash @abspage@last from the kernel,
+%% but with pages for example I to X and then 1 to 10, the number of pages would be "20",
+%% while the name of the last page is "10". Decide what you need/want!
+%%
%% This work consists of the main source file lastpage.dtx,
%% the README, and the derived files
-%% lastpage.sty, lastpage.pdf,
-%% lastpage.ins, lastpage.drv,
+%% lastpage.sty, lastpage209.sty, lastpage2e.sty,
+%% lastpageclassic.sty, lastpagemodern.sty,
+%% lastpage.pdf, lastpage.ins, lastpage.drv,
%% lastpage-example.tex, lastpage-example.pdf.
%%
%% In memoriam
-%% Claudia Simone Barth + 1996/01/30
-%% Tommy Muench + 2014/01/02
-%% Hans-Klaus Muench + 2014/08/24
+%% Claudia Simone Barth + 1996-01-30
+%% Tommy Muench + 2014-01-02
+%% Hans-Klaus Muench + 2014-08-24
%%
-\NeedsTeXFormat{LaTeX2e}[2014/05/01]
-\ProvidesPackage{lastpage}%
- [2021/09/03 v1.2n Refers to last page's name (HMM; JPG)]%
-
-%% lastpage may work with earlier versions of LaTeX,
-%% but this was not tested. Please consider updating
-%% your LaTeX (and packages) to the most recent version
-%% (if it is/they are not already the most recent version).
-
-%% Allows for things like
-%% Page \thepage{} of \pageref{LastPage}
-%% to get
-%% 'Page 7 of 9'.
-%% For LaTeX 2.09 use lastpage209.sty.
-%% For LaTeX 2e maybe consider upgrading to the pageslts package.
-%% lastpage may work with earlier versions of LaTeX2e,
-%% but this was not tested. Please consider updating your LaTeX
-%% contribution to the most recent version (if it is not already
-%% the most recent version).
-
-%% The recent version of the endfloat package is v2.5d as of 2011/12/25.
-%% The lastpage package is not fully compatible with version 2.0
-%% (and earlier) of the endfloat package, because those versions
-%% redefined the \enddocument command.
-
-\def\lastpage@one{1}
-\gdef\lastpage@hyper{0}
-\gdef\lastpage@nameref{0}
-\gdef\lastpage@french{0}
-\gdef\lastpage@LTS{0}
-\def\lastpage@firstpage{1}
-
-\AtBeginDocument{%
- \@ifpackageloaded{tikz}{\gdef\lastpage@tikz{1}}{}%
- \@ifpackageloaded{hyperref}{\gdef\lastpage@hyper{1}}{}%
- \@ifpackageloaded{nameref}{\gdef\lastpage@nameref{1}}{}%
- \@ifpackageloaded{french}{\gdef\lastpage@french{1}}{}%
- \@ifpackageloaded{frenchle}{\gdef\lastpage@french{1}}{}%
- \@ifpackageloaded{pageslts}{%
- \PackageWarning{lastpage}{Package pageslts found.\MessageBreak%
- Therefore the lastpage package is no longer\MessageBreak%
- necessary.%
- }%
- \gdef\lastpage@LTS{1}%
- }{\PackageInfo{lastpage}{%
- Please have a look at the pageslts package at\MessageBreak%
- https://www.ctan.org/pkg/pageslts\MessageBreak%
- !}%
- }%
- \@ifpackageloaded{pagesLTS}{%
- \PackageWarning{lastpage}{%
- Outdated pagesLTS package found.\MessageBreak%
- Please replace by a recent version of\MessageBreak%
- pageslts package, see e.g. at\MessageBreak%
- https://www.ctan.org/pkg/pageslts\MessageBreak%
- !\MessageBreak%
- With pagesLTS as well as pageslts package\MessageBreak%
- the lastpage package is no longer necessary.\MessageBreak%
- }%
- \gdef\lastpage@LTS{1}%
- }{}%
- \gdef\lastpage@putlabel{\relax}%
- }
-
-\newcommand{\lastpage@putl@bel}{%
- \@ifundefined{Hy@Warning}{% hyperref not loaded
- }{\gdef\lastpage@hyper{1}% hyperref loaded
- }%
- \ifx\lastpage@LTS\lastpage@one%
- \else%
- \ifx\lastpage@hyper\lastpage@one%
- \lastpage@putlabelhyper%
- \else%
- \ifx\lastpage@nameref\lastpage@one%
- \lastpage@putlabelNR%
- \else%
- \begingroup%
- \addtocounter{page}{-1}%
- \immediate\write\@auxout{\string\newlabel{LastPage}{{}{\thepage}}}%
- \immediate\write\@auxout{\string\xdef\string\lastpage@lastpage{\thepage}}%
- \immediate\write\@auxout{\string\gdef\string\lastpage@lastpageHy{}}%
- \addtocounter{page}{+1}%
- \endgroup%
- \fi%
- \fi%
- \fi%
- }
-
-\newcommand{\lastpage@putlabelhyper}{%
- \ifHy@pageanchor%
- \else%
- \PackageError{lastpage}{hyperref option pageanchor disabled}{%
- The \string\pageref{LastPage} link doesn't work\MessageBreak%
- using hyperref with disabled option `pageanchor'.\MessageBreak%
- }%
- \fi%
- \begingroup%
- \addtocounter{page}{-1}%
-%% The following code is from the hyperref package %%
-%% [2010/04/17 v6.80x; newer versions are available] %%
-%% by Heiko Oberdiek (Big Thanks!). %%
- \let\@number\@firstofone
- \ifHy@pageanchor
- \ifHy@hypertexnames
- \ifHy@plainpages
- \def\Hy@temp{\arabic{page}}%
- \else
- \Hy@unicodefalse
-%% Code not from hyperref package: %%
-%% The following lines are taken from the pageslts package, %%
-%% which in turn got them from the hyperref package and %%
-%% modified them. %%
-%% Without the modification, after the first shipout "PD1" %%
-%% is inserted each time |\pdfstringdef\Hy@temp{\thepage}| %%
-%% is executed. %%
- \ifnum \value{page}=1%
- \ifx \lastpage@firstpage\lastpage@one
- \def\Hy@temp{\thepage}%
- \gdef\lastpage@firstpage{0}%
- \else%
-%% Code from hyperref package again: %%
- \pdfstringdef\Hy@temp{\thepage}%
-%% End of code from the hyperref package. %%
- \fi%
-%% The pageslts package would even check for fnsymbol page %%
-%% numbering scheme and adapt the code correspondingly. %%
- \else%
-%% Code from hyperref package again: %%
- \pdfstringdef\Hy@temp{\thepage}%
-%% Code from pageslts package again: %%
- \fi%
-%% Code from hyperref package again: %%
- \fi
- \else
- \def\Hy@temp{\the\Hy@pagecounter}%
- \fi
- \fi
- \immediate\write\@auxout{%
- \string\newlabel
- {LastPage}{{}{\thepage}{}{%
- \ifHy@pageanchor page.\Hy@temp\fi}{}}%
- }%
-%% End of code from the hyperref package. %%
- \immediate\write\@auxout{%
- \string\xdef\string\lastpage@lastpage{\thepage}}%
- \ifHy@pageanchor%
- \immediate\write\@auxout{%
- \string\xdef\string\lastpage@lastpageHy{\Hy@temp}}%
- \else%
- \immediate\write\@auxout{%
- \string\gdef\string\lastpage@lastpageHy{}}%
- \fi%
- \addtocounter{page}{+1}%
- \endgroup%
- }
-
-\newcommand{\lastpage@putlabelNR}{%
- \begingroup%
- \addtocounter{page}{-1}%
- \immediate\write\@auxout{\string\newlabel{LastPage}{{}{\thepage}{}{}{}}}%
- \immediate\write\@auxout{\string\xdef\string\lastpage@lastpage{\thepage}}%
- \immediate\write\@auxout{\string\gdef\string\lastpage@lastpageHy{}}%
- \addtocounter{page}{+1}%
- \endgroup%
- }
-
-\newcommand{\lastpage@fileswtest}[2]{%
- \edef\lastpage@testa{#1}%
- \edef\lastpage@testb{#2}%
- \ifx\lastpage@testa\lastpage@testb% OK
- \else%
- \ifx\lastpage@tikz\lastpage@one%
- \PackageWarning{lastpage}%
- {The lastpage package was not allowed to write to an\MessageBreak%
- .aux file. This package does not work without access\MessageBreak%
- to an .aux file.\MessageBreak%
- It is OK if the .aux file was already updated\MessageBreak%
- by a previouse compiler run\MessageBreak%
- and would not have changed anyway.\MessageBreak%
- }%
- \else%
- \PackageError{lastpage}{No auxiliary file allowed}%
- {The lastpage package was not allowed to write to an .aux file.\MessageBreak%
- This package does not work without access to an .aux file.\MessageBreak%
- Press Ctrl+Z to exit.\MessageBreak%
- But it is OK if the .aux file was already updated\MessageBreak%
- by a previouse compiler run\MessageBreak%
- and would not have changed anyway.\MessageBreak%
- }%
- \fi%
- \fi%
- }
-\newcommand{\lastpage@fileswtestHy}{%
- \ifHy@pageanchor%
- \lastpage@fileswtest{\Hy@temp}{\lastpage@lastpageHy}%
- \else%
- \lastpage@fileswtest{\empty}{\lastpage@lastpageHy}%
- \fi%
- }
-
-\gdef\lastpage@lastpage{\relax}%
-\gdef\lastpage@lastpageHy{\relax}%
-
-\AtEndDocument{%
- \gdef\lastpage@putlabel{\relax}%
- \ifx\lastpage@LTS\lastpage@one%
- \else%
- \ifx\lastpage@lastpage\relax%
- \PackageWarning{lastpage}{Rerun to get the references right}%
- \fi%
- \ifx\lastpage@lastpageHy\relax%
- \PackageWarning{lastpage}{Rerun to get the references right}%
- \fi%
- \fi%
- \if@filesw%
- \message{^^JAED: lastpage setting LastPage^^J}%
- \@ifundefined{clearpage}{\relax}{\clearpage}%
- \ifx\lastpage@french\lastpage@one% french or frenchle loaded
- \addtocounter{page}{+1}\lastpage@putl@bel\addtocounter{page}{-1}%
- \else% neither one loaded
- \lastpage@putl@bel%
- \fi%
- \else%
- \ifx\lastpage@LTS\lastpage@one%
- \else%
- \lastpage@fileswtest{\thepage}{\lastpage@lastpage}%
- \ifx\lastpage@hyper\lastpage@one%
- \lastpage@fileswtestHy%
- \fi%
- \fi%
- \fi%
- }
-
+%% Part of the "lastpage" package
+%% loads either lastpage2.09.sty for TeX 2.09 or lastpage2e.sty for LaTeX 2e
+%% with code from https://groups.google.com/g/comp.text.tex/c/-Qmhj1ZI4xM
+\def\loadlastpage{\ProvidesPackage{lastpage}[2023/03/07 v2.0a lastpage: 2.09 or 2e? (HMM)]\relax\RequirePackage{lastpage2e}}
+\begingroup \expandafter \ifx \csname documentclass\endcsname\relax
+\endgroup \expandafter \input{lastpage209.sty}
+\else \endgroup \expandafter \loadlastpage
+\fi
\endinput
%%
%% End of file `lastpage.sty'.
diff --git a/Master/texmf-dist/tex/latex/lastpage/lastpage209.sty b/Master/texmf-dist/tex/latex/lastpage/lastpage209.sty
index 909ef009ca6..7ac6efce5df 100644
--- a/Master/texmf-dist/tex/latex/lastpage/lastpage209.sty
+++ b/Master/texmf-dist/tex/latex/lastpage/lastpage209.sty
@@ -9,17 +9,13 @@
%% This is a generated file.
%%
%% Project: lastpage
-%% Version: 2021/09/03 v1.2n
+%% Version: 2023-03-07 v2.0a
+%% Info: Refers to last page's name
%%
-%% Copyright (C) 2010 - 2021 by
-%% H.-Martin M"unch <Martin dot Muench at Uni-Bonn dot de>
+%% Copyright (C) 2010 - 2023 by
+%% H.-Martin Muench <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
@@ -28,43 +24,51 @@
%% and 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 2005/12/01 or later.
+%% 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 package was invented by
-%% Jeffrey P. Goldberg (jeffrey+news at goldmark dot org).
+%% This package was invented by Jeffrey P. Goldberg.
%% I thought that a replacement was needed and therefore created the pageslts package,
-%% https://www.ctan.org/pkg/pageslts
+%% https://ctan.org/pkg/pageslts
%% . Nevertheless, for compatibility with existing documents/packages as well as for
%% the low amount of resources needed by the lastpage package (no new counter!),
%% I updated this package.
%% Thanks go to Jeffrey P. Goldberg for allowing me to do this.
%%
+%% While this package allows for things like "Page slash thepage{} of slash pageref{LastPage}"
+%% to get "Page 7 of 9" or "Page VII of IX",
+%% the NUMBER of pages is nowadays available via slash @abspage@last from the kernel,
+%% but with pages for example I to X and then 1 to 10, the number of pages would be "20",
+%% while the name of the last page is "10". Decide what you need/want!
+%%
%% This work consists of the main source file lastpage.dtx,
%% the README, and the derived files
-%% lastpage.sty, lastpage.pdf,
-%% lastpage.ins, lastpage.drv,
+%% lastpage.sty, lastpage209.sty, lastpage2e.sty,
+%% lastpageclassic.sty, lastpagemodern.sty,
+%% lastpage.pdf, lastpage.ins, lastpage.drv,
%% lastpage-example.tex, lastpage-example.pdf.
%%
%% In memoriam
-%% Claudia Simone Barth + 1996/01/30
-%% Tommy Muench + 2014/01/02
-%% Hans-Klaus Muench + 2014/08/24
+%% Claudia Simone Barth + 1996-01-30
+%% Tommy Muench + 2014-01-02
+%% Hans-Klaus Muench + 2014-08-24
%%
- % FOR LaTeX 2.09 ONLY - FOR LaTeX 2e USE lastpage.sty OR pageslts.sty!
- % This is lastpage209.sty invented by Jeffrey P. Goldberg
- % (jeffrey+news at goldmark dot org), maintained by
- % H.-Martin M\"{u}ench (Martin dot Muench at Uni-Bonn dot de).
+%% Part of the "lastpage" package
+%% FOR LaTeX 2.09 ONLY - FOR LaTeX 2e USE lastpage2e.sty
+%% This is lastpage209.sty invented by Jeffrey P. Goldberg,
+%% after Piet van Oostrum: Page layout in LaTeX, March 2, 2004, section 16; fancyhdr.pdf;
+%% lastpage209.sty maintained by H.-Martin Muench.
\let\origenddocument=\enddocument%
\def\enddocument{\clearpage%
{\addtocounter{page}{-1}%
- \immediate\write\@mainaux{\string\newlabel{LastPage}{{}{\thepage}}}}%
- \addtocounter{page}{+1}%
- \origenddocument%
+ \immediate\write\@mainaux{\string\newlabel{LastPage}{{}{\thepage}}}%
}%
+ \addtocounter{page}{+1}%
+ \origenddocument%
+ }
\endinput
%%
%% End of file `lastpage209.sty'.
diff --git a/Master/texmf-dist/tex/latex/lastpage/lastpage2e.sty b/Master/texmf-dist/tex/latex/lastpage/lastpage2e.sty
new file mode 100644
index 00000000000..7f8808a1db1
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/lastpage/lastpage2e.sty
@@ -0,0 +1,67 @@
+%%
+%% This is file `lastpage2e.sty',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% lastpage.dtx (with options: `lastpage2e')
+%%
+%% This is a generated file.
+%%
+%% Project: lastpage
+%% Version: 2023-03-07 v2.0a
+%% Info: Refers to last page's name
+%%
+%% Copyright (C) 2010 - 2023 by
+%% H.-Martin Muench <Martin dot Muench at Uni-Bonn dot de>
+%% Portions of code copyrighted by other people as marked.
+%%
+%% This work may be distributed and/or modified under the
+%% conditions of the LaTeX Project Public License, either
+%% version 1.3c of this license or (at your option) any later
+%% version. This version of this license is in
+%% https://www.latex-project.org/lppl/lppl-1-3c.txt
+%% and the latest version of this license is in
+%% https://www.latex-project.org/lppl.txt
+%% and version 1.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 package was invented by Jeffrey P. Goldberg.
+%% I thought that a replacement was needed and therefore created the pageslts package,
+%% https://ctan.org/pkg/pageslts
+%% . Nevertheless, for compatibility with existing documents/packages as well as for
+%% the low amount of resources needed by the lastpage package (no new counter!),
+%% I updated this package.
+%% Thanks go to Jeffrey P. Goldberg for allowing me to do this.
+%%
+%% While this package allows for things like "Page slash thepage{} of slash pageref{LastPage}"
+%% to get "Page 7 of 9" or "Page VII of IX",
+%% the NUMBER of pages is nowadays available via slash @abspage@last from the kernel,
+%% but with pages for example I to X and then 1 to 10, the number of pages would be "20",
+%% while the name of the last page is "10". Decide what you need/want!
+%%
+%% This work consists of the main source file lastpage.dtx,
+%% the README, and the derived files
+%% lastpage.sty, lastpage209.sty, lastpage2e.sty,
+%% lastpageclassic.sty, lastpagemodern.sty,
+%% lastpage.pdf, lastpage.ins, lastpage.drv,
+%% lastpage-example.tex, lastpage-example.pdf.
+%%
+%% In memoriam
+%% Claudia Simone Barth + 1996-01-30
+%% Tommy Muench + 2014-01-02
+%% Hans-Klaus Muench + 2014-08-24
+%%
+%% Part of the "lastpage" package
+\NeedsTeXFormat{LaTeX2e}[1994/12/01]
+\ProvidesPackage{lastpage2e}[2023/03/07 v2.0a Decide which 2e lastpage version to use (HMM)]
+\@ifl@t@r\fmtversion{2022/11/01}{\RequirePackage{lastpagemodern}}{%
+ \RequirePackage{lastpageclassic}}
+\message{^^J}
+\endinput
+%%
+%% End of file `lastpage2e.sty'.
diff --git a/Master/texmf-dist/tex/latex/lastpage/lastpageclassic.sty b/Master/texmf-dist/tex/latex/lastpage/lastpageclassic.sty
new file mode 100644
index 00000000000..8b4a63cadcd
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/lastpage/lastpageclassic.sty
@@ -0,0 +1,254 @@
+%%
+%% This is file `lastpageclassic.sty',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% lastpage.dtx (with options: `lastpageclassic')
+%%
+%% This is a generated file.
+%%
+%% Project: lastpage
+%% Version: 2023-03-07 v2.0a
+%% Info: Refers to last page's name
+%%
+%% Copyright (C) 2010 - 2023 by
+%% H.-Martin Muench <Martin dot Muench at Uni-Bonn dot de>
+%% Portions of code copyrighted by other people as marked.
+%%
+%% This work may be distributed and/or modified under the
+%% conditions of the LaTeX Project Public License, either
+%% version 1.3c of this license or (at your option) any later
+%% version. This version of this license is in
+%% https://www.latex-project.org/lppl/lppl-1-3c.txt
+%% and the latest version of this license is in
+%% https://www.latex-project.org/lppl.txt
+%% and version 1.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 package was invented by Jeffrey P. Goldberg.
+%% I thought that a replacement was needed and therefore created the pageslts package,
+%% https://ctan.org/pkg/pageslts
+%% . Nevertheless, for compatibility with existing documents/packages as well as for
+%% the low amount of resources needed by the lastpage package (no new counter!),
+%% I updated this package.
+%% Thanks go to Jeffrey P. Goldberg for allowing me to do this.
+%%
+%% While this package allows for things like "Page slash thepage{} of slash pageref{LastPage}"
+%% to get "Page 7 of 9" or "Page VII of IX",
+%% the NUMBER of pages is nowadays available via slash @abspage@last from the kernel,
+%% but with pages for example I to X and then 1 to 10, the number of pages would be "20",
+%% while the name of the last page is "10". Decide what you need/want!
+%%
+%% This work consists of the main source file lastpage.dtx,
+%% the README, and the derived files
+%% lastpage.sty, lastpage209.sty, lastpage2e.sty,
+%% lastpageclassic.sty, lastpagemodern.sty,
+%% lastpage.pdf, lastpage.ins, lastpage.drv,
+%% lastpage-example.tex, lastpage-example.pdf.
+%%
+%% In memoriam
+%% Claudia Simone Barth + 1996-01-30
+%% Tommy Muench + 2014-01-02
+%% Hans-Klaus Muench + 2014-08-24
+%%
+%% Part of the "lastpage" package
+\NeedsTeXFormat{LaTeX2e}[1994/12/01]
+\ProvidesPackage{lastpageclassic}[2023/03/07 v2.0a Refers to last page's name (HMM; JPG)]
+%% allows for things like "Page \thepage{} of \pageref{LastPage}" to get "Page 7 of 9"
+
+\gdef\lastpage@one{1}
+\gdef\lastpage@hyper{0}
+\gdef\lastpage@nameref{0}
+\gdef\lastpage@french{0}
+\gdef\lastpage@LTS{0}
+\gdef\lastpage@firstpage{1}
+\gdef\lastpage@lastpage{??}
+\gdef\lastpage@lastpageHy{??}
+
+\AtBeginDocument{%
+ \@ifpackageloaded{endfloat}{%
+ \@ifpackagelater{endfloat}{1993/04/30}{\relax}{%
+ \PackageError{lastpage}{%
+ Incompatibility with outdated version of endfloat package}{%
+ lastpage is not fully compatible with a version\MessageBreak%
+ before 2.1 of the endfloat package,\MessageBreak%
+ because those versions redefined\MessageBreak%
+ the \string\enddocument\space command.}%
+ }{}}%
+ \@ifpackageloaded{tikz}{\gdef\lastpage@tikz{1}}{}%
+ \@ifpackageloaded{hyperref}{\gdef\lastpage@hyper{1}}{}%
+ \@ifpackageloaded{nameref}{\gdef\lastpage@nameref{1}}{}%
+ \@ifpackageloaded{french}{\gdef\lastpage@french{1}}{}%
+ \@ifpackageloaded{frenchle}{\gdef\lastpage@french{1}}{}%
+ \@ifpackageloaded{pagesLTS}{\gdef\lastpage@LTS{1}}{}%
+ \@ifpackageloaded{pageslts}{\gdef\lastpage@LTS{1}}{}%
+ \gdef\lastpage@putlabel{\relax}%
+ }
+
+\newcommand{\lastpage@putl@bel}{%
+ \@ifundefined{Hy@Warning}{% hyperref not loaded
+ }{\gdef\lastpage@hyper{1}% hyperref loaded
+ }%
+ \ifx\lastpage@LTS\lastpage@one%
+ \else%
+ \ifx\lastpage@hyper\lastpage@one%
+ \lastpage@putlabelhyper%
+ \else%
+ \ifx\lastpage@nameref\lastpage@one%
+ \lastpage@putlabelNR%
+ \else%
+ \begingroup%
+ \addtocounter{page}{-1}%
+ \immediate\write\@auxout{\string\newlabel{LastPage}{{}{\thepage}}}%
+ \immediate\write\@auxout{\string\xdef\string\lastpage@lastpage{\thepage}}%
+ \immediate\write\@auxout{\string\gdef\string\lastpage@lastpageHy{}}%
+ \addtocounter{page}{+1}%
+ \endgroup%
+ \fi%
+ \fi%
+ \fi%
+ }
+
+\newcommand{\lastpage@putlabelhyper}{%
+ \ifHy@pageanchor%
+ \else%
+ \PackageError{lastpage}{hyperref option pageanchor disabled}{%
+ The \string\pageref{LastPage} link doesn't work\MessageBreak%
+ using hyperref with disabled option `pageanchor'.\MessageBreak%
+ }%
+ \fi%
+ \begingroup%
+ \addtocounter{page}{-1}%
+%% The following code is from the hyperref package %%
+%% 2010/04/17 v6.80x; newer versions are available. %%
+ \let\@number\@firstofone%
+ \ifHy@pageanchor%
+ \ifHy@hypertexnames%
+ \ifHy@plainpages%
+ \def\Hy@temp{\arabic{page}}%
+ \else%
+ \Hy@unicodefalse%
+%% Code not from hyperref package: %%
+%% The following lines are taken from the pageslts package, %%
+%% which in turn got them from the hyperref package and %%
+%% modified them. %%
+%% Without the modification, after the first shipout "PD1" %%
+%% is inserted each time |\pdfstringdef\Hy@temp{\thepage}| %%
+%% is executed. %%
+ \ifnum \value{page}=1\relax%
+ \ifx \lastpage@firstpage\lastpage@one\relax%
+ \def\Hy@temp{\thepage}%
+ \gdef\lastpage@firstpage{0}%
+ \else%
+%% Code from hyperref package again: %%
+ \pdfstringdef\Hy@temp{\thepage}%
+%% End of code from the hyperref package. %%
+ \fi%
+%% The pageslts package would even check for fnsymbol page %%
+%% numbering scheme and adapt the code correspondingly. %%
+ \else%
+%% Code from hyperref package again: %%
+ \pdfstringdef\Hy@temp{\thepage}%
+%% Code from pageslts package again: %%
+ \fi%
+%% Code from hyperref package again: %%
+ \fi%
+ \else%
+ \def\Hy@temp{\the\Hy@pagecounter}%
+ \fi%
+ \fi%
+ \immediate\write\@auxout{%
+ \string\newlabel{LastPage}{{}{\thepage}{}{%
+ \ifHy@pageanchor page.\Hy@temp\fi}{}}%
+ }%
+%% End of code from the hyperref package. %%
+ \immediate\write\@auxout{\string\xdef\string\lastpage@lastpage{\thepage}}%
+ \ifHy@pageanchor%
+ \immediate\write\@auxout{\string\xdef\string\lastpage@lastpageHy{\Hy@temp}}%
+ \else%
+ \immediate\write\@auxout{\string\gdef\string\lastpage@lastpageHy{}}%
+ \fi%
+ \addtocounter{page}{+1}%
+ \endgroup%
+ }
+
+\newcommand{\lastpage@putlabelNR}{%
+ \begingroup%
+ \addtocounter{page}{-1}%
+ \immediate\write\@auxout{\string\newlabel{LastPage}{{}{\thepage}{}{}{}}}%
+ \immediate\write\@auxout{\string\xdef\string\lastpage@lastpage{\thepage}}%
+ \immediate\write\@auxout{\string\gdef\string\lastpage@lastpageHy{}}%
+ \addtocounter{page}{+1}%
+ \endgroup%
+ }
+
+\newcommand{\lastpage@fileswtest}[2]{%
+ \edef\lastpage@testa{#1}%
+ \edef\lastpage@testb{#2}%
+ \ifx\lastpage@testa\lastpage@testb%
+ \else%
+ \ifx\lastpage@tikz\lastpage@one\relax%
+ \PackageWarning{lastpage}%
+ {The lastpage package was not allowed to write to an\MessageBreak%
+ .aux file. This package does not work without access\MessageBreak%
+ to an .aux file.\MessageBreak%
+ It is OK if the .aux file was already updated\MessageBreak%
+ by a previous compiler run\MessageBreak%
+ and would not have changed anyway.\MessageBreak%
+ }%
+ \else%
+ \PackageError{lastpage}{No auxiliary file allowed}%
+ {The lastpage package was not allowed to write to an .aux file.\MessageBreak%
+ This package does not work without access to an .aux file.\MessageBreak%
+ Press Ctrl+Z to exit.\MessageBreak%
+ But it is OK if the .aux file was already updated\MessageBreak%
+ by a previous compiler run\MessageBreak%
+ and would not have changed anyway.\MessageBreak%
+ }%
+ \fi%
+ \fi%
+ }
+
+\newcommand{\lastpage@fileswtestHy}{%
+ \ifHy@pageanchor%
+ \lastpage@fileswtest{\Hy@temp}{\lastpage@lastpageHy}%
+ \else%
+ \lastpage@fileswtest{\empty}{\lastpage@lastpageHy}%
+ \fi%
+ }
+
+\AtEndDocument{%
+ \ifx\lastpage@LTS\lastpage@one%
+ \else%
+ \gdef\lastpage@putlabel{??}%
+ \ifx\lastpage@lastpage\lastpage@putlabel\relax%
+ \PackageWarning{lastpage}{Rerun to get the references right}%
+ \fi%
+ \fi%
+ \gdef\lastpage@putlabel{\relax}%
+ \if@filesw%
+ \message{^^JAED: lastpage setting LastPage^^J}%
+ \@ifundefined{clearpage}{\relax}{\clearpage}%
+ \ifx\lastpage@french\lastpage@one% french or frenchle loaded
+ \addtocounter{page}{+1}\lastpage@putl@bel\addtocounter{page}{-1}%
+ \else% neither one loaded
+ \lastpage@putl@bel%
+ \fi%
+ \else%
+ \ifx\lastpage@LTS\lastpage@one%
+ \else%
+ \lastpage@fileswtest{\thepage}{\lastpage@lastpage}%
+ \ifx\lastpage@hyper\lastpage@one%
+ \lastpage@fileswtestHy%
+ \fi%
+ \fi%
+ \fi%
+ }
+\endinput
+%%
+%% End of file `lastpageclassic.sty'.
diff --git a/Master/texmf-dist/tex/latex/lastpage/lastpagemodern.sty b/Master/texmf-dist/tex/latex/lastpage/lastpagemodern.sty
new file mode 100644
index 00000000000..482c7209e7a
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/lastpage/lastpagemodern.sty
@@ -0,0 +1,237 @@
+%%
+%% This is file `lastpagemodern.sty',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% lastpage.dtx (with options: `lastpagemodern')
+%%
+%% This is a generated file.
+%%
+%% Project: lastpage
+%% Version: 2023-03-07 v2.0a
+%% Info: Refers to last page's name
+%%
+%% Copyright (C) 2010 - 2023 by
+%% H.-Martin Muench <Martin dot Muench at Uni-Bonn dot de>
+%% Portions of code copyrighted by other people as marked.
+%%
+%% This work may be distributed and/or modified under the
+%% conditions of the LaTeX Project Public License, either
+%% version 1.3c of this license or (at your option) any later
+%% version. This version of this license is in
+%% https://www.latex-project.org/lppl/lppl-1-3c.txt
+%% and the latest version of this license is in
+%% https://www.latex-project.org/lppl.txt
+%% and version 1.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 package was invented by Jeffrey P. Goldberg.
+%% I thought that a replacement was needed and therefore created the pageslts package,
+%% https://ctan.org/pkg/pageslts
+%% . Nevertheless, for compatibility with existing documents/packages as well as for
+%% the low amount of resources needed by the lastpage package (no new counter!),
+%% I updated this package.
+%% Thanks go to Jeffrey P. Goldberg for allowing me to do this.
+%%
+%% While this package allows for things like "Page slash thepage{} of slash pageref{LastPage}"
+%% to get "Page 7 of 9" or "Page VII of IX",
+%% the NUMBER of pages is nowadays available via slash @abspage@last from the kernel,
+%% but with pages for example I to X and then 1 to 10, the number of pages would be "20",
+%% while the name of the last page is "10". Decide what you need/want!
+%%
+%% This work consists of the main source file lastpage.dtx,
+%% the README, and the derived files
+%% lastpage.sty, lastpage209.sty, lastpage2e.sty,
+%% lastpageclassic.sty, lastpagemodern.sty,
+%% lastpage.pdf, lastpage.ins, lastpage.drv,
+%% lastpage-example.tex, lastpage-example.pdf.
+%%
+%% In memoriam
+%% Claudia Simone Barth + 1996-01-30
+%% Tommy Muench + 2014-01-02
+%% Hans-Klaus Muench + 2014-08-24
+%%
+%% Part of the "lastpage" package
+\NeedsTeXFormat{LaTeX2e}[2022-11-01]
+\ProvidesPackage{lastpagemodern}[2023-03-07 v2.0a Refers to last page's name (HMM; JPG)]
+%% allows for things like "Page \thepage{} of \pageref{LastPage}"
+%% to get "Page 7 of 9" or "Page VII of IX";
+%% the NUMBER of pages is available via \@abspage@last, but with pages
+%% for example I to X and then 1 to 10, the number of pages woud be "20",
+%% while the name of the last page is "10". Decide what you need/want!
+
+\gdef\lastpage@one{1}
+\gdef\lastpage@firstpage{1}
+\gdef\lastpage@lastpage{??}
+\gdef\lastpage@lastpageHy{??}
+
+\AddToHook{begindocument/end}{%
+ \IfPackageLoadedTF{endfloat}{%
+ \IfPackageAtLeastTF{endfloat}{1994/06/01}{\relax}{%
+ \PackageError{lastpage}{%
+ Incompatibility with outdated version of endfloat package}{%
+ lastpage is not fully compatible with a version\MessageBreak%
+ before 2.1 of the endfloat package,\MessageBreak%
+ because those versions redefined\MessageBreak%
+ the \string\enddocument\space command.}%
+ }{}}%
+ \gdef\lastpage@putlabel{\relax}%
+ }
+
+\newcommand{\lastpage@putl@bel}{%
+ \IfPackageLoadedTF{pageslts}{\relax}{%
+ \IfPackageLoadedTF{hyperref}{\lastpage@putlabelhyper}{%
+ \IfPackageLoadedTF{nameref}{\lastpage@putlabelNR}{%
+ \begingroup%
+ \addtocounter{page}{-1}%
+ \immediate\write\@auxout{\string\newlabel{LastPage}{{}{\thepage}}}%
+ \immediate\write\@auxout{\string\xdef\string\lastpage@lastpage{\thepage}}%
+ \immediate\write\@auxout{\string\gdef\string\lastpage@lastpageHy{}}%
+ \addtocounter{page}{+1}%
+ \endgroup%
+ }%
+ }%
+ }%
+ }
+
+\newcommand{\lastpage@putlabelhyper}{%
+ \ifHy@pageanchor%
+ \else%
+ \PackageError{lastpage}{hyperref option pageanchor disabled}{%
+ The \string\pageref{LastPage} link does not work\MessageBreak%
+ using hyperref with disabled option `pageanchor'.\MessageBreak%
+ }%
+ \fi%
+ \begingroup%
+ \addtocounter{page}{-1}%
+%% The following code is from the hyperref package %%
+%% 2010/04/17 v6.80x; newer versions are available. %%
+ \let\@number\@firstofone%
+ \ifHy@pageanchor%
+ \ifHy@hypertexnames%
+ \ifHy@plainpages%
+ \def\Hy@temp{\arabic{page}}%
+ \else%
+ \Hy@unicodefalse%
+%% Code not from hyperref package: %%
+%% The following lines are taken from the pageslts package, %%
+%% which in turn got them from the hyperref package and %%
+%% modified them. %%
+%% Without the modification, after the first shipout "PD1" %%
+%% is inserted each time |\pdfstringdef\Hy@temp{\thepage}| %%
+%% is executed. %%
+ \ifnum \value{page}=1\relax%
+ \ifx \lastpage@firstpage\lastpage@one\relax%
+ \def\Hy@temp{\thepage}%
+ \gdef\lastpage@firstpage{0}%
+ \else%
+%% Code from hyperref package again: %%
+ \pdfstringdef\Hy@temp{\thepage}%
+%% End of code from the hyperref package. %%
+ \fi%
+%% The pageslts package would even check for fnsymbol page %%
+%% numbering scheme and adapt the code correspondingly. %%
+ \else%
+%% Code from hyperref package again: %%
+ \pdfstringdef\Hy@temp{\thepage}%
+%% Code from pageslts package again: %%
+ \fi%
+%% Code from hyperref package again: %%
+ \fi%
+ \else%
+ \def\Hy@temp{\the\Hy@pagecounter}%
+ \fi%
+ \fi%
+ \immediate\write\@auxout{%
+ \string\newlabel{LastPage}{{}{\thepage}{}{%
+ \ifHy@pageanchor page.\Hy@temp\fi}{}}%
+ }%
+%% End of code from the hyperref package. %%
+ \immediate\write\@auxout{\string\xdef\string\lastpage@lastpage{\thepage}}%
+ \ifHy@pageanchor%
+ \immediate\write\@auxout{\string\xdef\string\lastpage@lastpageHy{\Hy@temp}}%
+ \else%
+ \immediate\write\@auxout{\string\gdef\string\lastpage@lastpageHy{}}%
+ \fi%
+ \addtocounter{page}{+1}%
+ \endgroup%
+ }
+
+\newcommand{\lastpage@putlabelNR}{%
+ \begingroup%
+ \addtocounter{page}{-1}%
+ \immediate\write\@auxout{\string\newlabel{LastPage}{{}{\thepage}{}{}{}}}%
+ \immediate\write\@auxout{\string\xdef\string\lastpage@lastpage{\thepage}}%
+ \immediate\write\@auxout{\string\gdef\string\lastpage@lastpageHy{}}%
+ \addtocounter{page}{+1}%
+ \endgroup%
+ }
+
+\newcommand{\lastpage@fileswtest}[2]{%
+ \edef\lastpage@testa{#1}%
+ \edef\lastpage@testb{#2}%
+ \ifx\lastpage@testa\lastpage@testb%
+ \else%
+ \IfPackageLoadedTF{tikz}{%
+ \PackageWarning{lastpage}%
+ {The lastpage package was not allowed to write to an\MessageBreak%
+ .aux file. This package does not work without access\MessageBreak%
+ to an .aux file.\MessageBreak%
+ It is OK if the .aux file was already updated\MessageBreak%
+ by a previous compiler run\MessageBreak%
+ and would not have changed anyway.\MessageBreak%
+ }%
+ }{\PackageError{lastpage}{No auxiliary file allowed}%
+ {The lastpage package was not allowed to write to an .aux file.\MessageBreak%
+ This package does not work without access to an .aux file.\MessageBreak%
+ Press Ctrl+Z to exit.\MessageBreak%
+ But it is OK if the .aux file was already updated\MessageBreak%
+ by a previous compiler run\MessageBreak%
+ and would not have changed anyway.\MessageBreak%
+ }%
+ }%
+ \fi%
+ }
+
+\newcommand{\lastpage@fileswtestHy}{%
+ \ifHy@pageanchor%
+ \lastpage@fileswtest{\Hy@temp}{\lastpage@lastpageHy}%
+ \else%
+ \lastpage@fileswtest{\empty}{\lastpage@lastpageHy}%
+ \fi%
+ }
+
+\AddToHook{enddocument/afterlastpage}{%
+ \IfPackageLoadedTF{pageslts}{\relax}{%
+ \gdef\lastpage@putlabel{??}%
+ \ifx\lastpage@lastpage\lastpage@putlabel\relax%
+ \AddToHook{enddocument/info}{%
+ \PackageWarning{lastpage}{Rerun to get the references right}%
+ }%
+ \fi%
+ }%
+ \gdef\lastpage@putlabel{\relax}%
+ \if@filesw%
+ \message{^^Jenddocument/afterlastpage: lastpage setting LastPage.^^J}%
+ \IfPackageLoadedTF{french}{%
+ \addtocounter{page}{+1}\lastpage@putl@bel\addtocounter{page}{-1}%
+ }{\IfPackageLoadedTF{frenchle}{%
+ \addtocounter{page}{+1}\lastpage@putl@bel\addtocounter{page}{-1}%
+ }{\lastpage@putl@bel%
+ }%
+ }%
+ \else%
+ \IfPackageLoadedTF{pageslts}{\relax}{%
+ \lastpage@fileswtest{\thepage}{\lastpage@lastpage}%
+ \IfPackageLoadedTF{hyperref}{\lastpage@fileswtestHy}{\relax}%
+ }%
+ \fi%
+ }
+\endinput
+%%
+%% End of file `lastpagemodern.sty'.