texlive[58837] trunk: lwarp

commits+karl at tug.org commits+karl at tug.org
Sun Apr 11 23:33:44 CEST 2021


Revision: 58837
          http://tug.org/svn/texlive?view=revision&revision=58837
Author:   karl
Date:     2021-04-11 23:33:43 +0200 (Sun, 11 Apr 2021)
Log Message:
-----------
lwarp

Modified Paths:
--------------
    trunk/Build/source/texk/texlive/linked_scripts/lwarp/lwarpmk.lua
    trunk/Build/source/texk/texlive/linked_scripts/texlive/fmtutil.pl
    trunk/Master/texmf-dist/doc/latex/lwarp/README.txt
    trunk/Master/texmf-dist/doc/latex/lwarp/lwarp.pdf
    trunk/Master/texmf-dist/scripts/lwarp/lwarpmk.lua
    trunk/Master/texmf-dist/source/latex/lwarp/lwarp.dtx
    trunk/Master/texmf-dist/source/latex/lwarp/lwarp.ins
    trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-amsthm.sty
    trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-backref.sty
    trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-biblatex.sty
    trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-bigdelim.sty
    trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-chemfig.sty
    trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-citeref.sty
    trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-cleveref.sty
    trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-epigraph.sty
    trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-fancybox.sty
    trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-fancyvrb.sty
    trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-fixme.sty
    trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-floatflt.sty
    trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-hyperref.sty
    trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-hyperxmp.sty
    trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-keyfloat.sty
    trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-listings.sty
    trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-longtable.sty
    trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-natbib.sty
    trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-ntheorem.sty
    trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-parnotes.sty
    trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-patch-memoir.sty
    trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-pdflscape.sty
    trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-picinpar.sty
    trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-scrlayer-scrpage.sty
    trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-sidenotes.sty
    trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-stackengine.sty
    trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-subfig.sty
    trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-theorem.sty
    trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-threeparttablex.sty
    trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-tocloft.sty
    trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-wrapfig.sty
    trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-xcolor.sty
    trunk/Master/texmf-dist/tex/latex/lwarp/lwarp.sty

Added Paths:
-----------
    trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-ccicons.sty
    trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-classicthesis.sty
    trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-enotez.sty
    trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-orcidlink.sty
    trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-xetexko.sty

Removed Paths:
-------------
    trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-xetexko-vertical.sty

Modified: trunk/Build/source/texk/texlive/linked_scripts/lwarp/lwarpmk.lua
===================================================================
--- trunk/Build/source/texk/texlive/linked_scripts/lwarp/lwarpmk.lua	2021-04-11 21:32:32 UTC (rev 58836)
+++ trunk/Build/source/texk/texlive/linked_scripts/lwarp/lwarpmk.lua	2021-04-11 21:33:43 UTC (rev 58837)
@@ -2,7 +2,7 @@
 
 -- Copyright 2016-2021 Brian Dunn
 
-printversion = "v0.895"
+printversion = "v0.896"
 requiredconfversion = "2" -- also at *lwarpmk.conf
 
 function printhelp ()

Modified: trunk/Build/source/texk/texlive/linked_scripts/texlive/fmtutil.pl
===================================================================
--- trunk/Build/source/texk/texlive/linked_scripts/texlive/fmtutil.pl	2021-04-11 21:32:32 UTC (rev 58836)
+++ trunk/Build/source/texk/texlive/linked_scripts/texlive/fmtutil.pl	2021-04-11 21:33:43 UTC (rev 58837)
@@ -1,5 +1,5 @@
 #!/usr/bin/env perl
-# $Id: fmtutil.pl 56682 2020-10-17 06:08:28Z preining $
+# $Id: fmtutil.pl 58784 2021-04-07 07:30:50Z kakuto $
 # fmtutil - utility to maintain format files.
 # (Maintained in TeX Live:Master/texmf-dist/scripts/texlive.)
 # 
@@ -24,11 +24,11 @@
   TeX::Update->import();
 }
 
-my $svnid = '$Id: fmtutil.pl 56682 2020-10-17 06:08:28Z preining $';
-my $lastchdate = '$Date: 2020-10-17 08:08:28 +0200 (Sat, 17 Oct 2020) $';
+my $svnid = '$Id: fmtutil.pl 58784 2021-04-07 07:30:50Z kakuto $';
+my $lastchdate = '$Date: 2021-04-07 09:30:50 +0200 (Wed, 07 Apr 2021) $';
 $lastchdate =~ s/^\$Date:\s*//;
 $lastchdate =~ s/ \(.*$//;
-my $svnrev = '$Revision: 56682 $';
+my $svnrev = '$Revision: 58784 $';
 $svnrev =~ s/^\$Revision:\s*//;
 $svnrev =~ s/\s*\$$//;
 my $version = "r$svnrev ($lastchdate)";
@@ -380,7 +380,6 @@
   # code taken over from the original shell script for KPSE_DOT etc
   my $thisdir = cwd();
   $ENV{'KPSE_DOT'} = $thisdir;
-
   # due to KPSE_DOT, we don't search the current directory, so include
   # it explicitly for formats that \write and later on \read
   $ENV{'TEXINPUTS'} ||= "";

Modified: trunk/Master/texmf-dist/doc/latex/lwarp/README.txt
===================================================================
--- trunk/Master/texmf-dist/doc/latex/lwarp/README.txt	2021-04-11 21:32:32 UTC (rev 58836)
+++ trunk/Master/texmf-dist/doc/latex/lwarp/README.txt	2021-04-11 21:33:43 UTC (rev 58837)
@@ -1,5 +1,5 @@
 
-LaTeX lwarp package v0.895   README.txt
+LaTeX lwarp package v0.896   README.txt
 
 Files included are:
 

Modified: trunk/Master/texmf-dist/doc/latex/lwarp/lwarp.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/scripts/lwarp/lwarpmk.lua
===================================================================
--- trunk/Master/texmf-dist/scripts/lwarp/lwarpmk.lua	2021-04-11 21:32:32 UTC (rev 58836)
+++ trunk/Master/texmf-dist/scripts/lwarp/lwarpmk.lua	2021-04-11 21:33:43 UTC (rev 58837)
@@ -2,7 +2,7 @@
 
 -- Copyright 2016-2021 Brian Dunn
 
-printversion = "v0.895"
+printversion = "v0.896"
 requiredconfversion = "2" -- also at *lwarpmk.conf
 
 function printhelp ()

Modified: trunk/Master/texmf-dist/source/latex/lwarp/lwarp.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/lwarp/lwarp.dtx	2021-04-11 21:32:32 UTC (rev 58836)
+++ trunk/Master/texmf-dist/source/latex/lwarp/lwarp.dtx	2021-04-11 21:33:43 UTC (rev 58837)
@@ -16,7 +16,7 @@
 % \iffalse
 %<package>\NeedsTeXFormat{LaTeX2e}[1999/12/01]
 %<package>\ProvidesPackage{lwarp}
-%<package>    [2021/02/18 v0.895  Allows LaTeX to directly produce HTML5 output.]
+%<package>    [2021/04/08 v0.896  Allows LaTeX to directly produce HTML5 output.]
 %
 %<*driver>
 \documentclass{ltxdoc}
@@ -309,11 +309,11 @@
 \newcommand{\spkg}[1]{\textcolor[Hsb]{120,1,.4}{\pkg{#1}}}% package supported as-is
 \newcommand{\mpkg}[1]{\textcolor[Hsb]{240,1,.4}{\pkg{#1}}}% package modified for HTML
 \newcommand{\epkg}[1]{\textcolor[Hsb]{300,1,.5}{\pkg{#1}}}% package emulated for HTML
-\newcommand{\ipkg}[1]{\textcolor[Hsb]{0,0,.5}{\pkg{#1}}}% package ignored
+\newcommand{\ipkg}[1]{\textcolor[Hsb]{0,0,.4}{\pkg{#1}}}% package ignored
 \newcommand{\wpkg}[1]{\textcolor[Hsb]{0,1,.5}{\pkg{#1}}}% package warning special case
 \newcommand{\sjax}{\textsuperscript{\textcolor[Hsb]{120,1,.4}{MJ}}}
 \newcommand{\ejax}{\textsuperscript{\textcolor[Hsb]{300,1,.5}{MJ}}}
-\newcommand{\ijax}{\textsuperscript{\textcolor[Hsb]{0,0,.5}{MJ}}}
+\newcommand{\ijax}{\textsuperscript{\textcolor[Hsb]{0,0,.4}{MJ}}}
 
 % green/cyan/blue/magenta
 % \newcommand{\spkg}[1]{\textcolor[Hsb]{120,1,.4}{\pkg{#1}}}% package supported as-is
@@ -322,8 +322,8 @@
 % \newcommand{\ipkg}[1]{\textcolor[Hsb]{300,1,.5}{\pkg{#1}}}% package ignored
 % \newcommand{\wpkg}[1]{\textcolor[Hsb]{0,1,.5}{\pkg{#1}}}% package warning special case
 
+\newcommand{\ARIA}{\acro{ARIA}}
 
-
 \newcommand{\pdflatexonly}{
 \textred{Only pre-loaded if \prog{pdflatex} is being used.}
 \marginpar{\raggedleft\textblue{\prog{pdflatex} only:}}
@@ -871,6 +871,7 @@
 Index entries also use \cs{nameref} and have the same limitation.
 \trouble{index>empty link}
 \trouble{reference>empty link}
+\trouble{link>empty}
 }
 
 \newcommand{\limitspfnote}{
@@ -908,16 +909,19 @@
 
 \limitsperpage
 
-If using \brand{MathJax}, after each math expression with a \cs{footnotemark},
-\watchout[MathJax, \cs{footnotemark}]
-adjust the \ctr{footnote} counter by the number of \cs{footnotemark}s:
-\begin{sourcedisplay}
-\cs{[} (math expression with \textgreen{two} instances of \cs{footnotemark}) \cs{]} \\
-\textred{\cs{warpHTMLonly}\{}\cs{addtocounter}\{footnote\}\{\textgreen{2}\}\textred{\}}
-\end{sourcedisplay}
-Similarly for \pkg{endnotes}, but \emph{not} \pkg{sidenotes}.
+% No longer true:
+% If using \brand{MathJax}, \cs{footnote} and \cs{endnote} work,
+% \watchout[MathJax, \cs{footnotemark}]
+% but for \cs{footnotemark}, after each math expression with a \cs{footnotemark}
+% adjust the \ctr{footnote} counter by the number of \cs{footnotemark}s:
+% \begin{sourcedisplay}
+% \cs{[} (math expression with \textgreen{two} instances of \cs{footnotemark}) \cs{]} \\
+% \textred{\cs{warpHTMLonly}\{}\cs{addtocounter}\{footnote\}\{\textgreen{2}\}\textred{\}}
+% \end{sourcedisplay}
+% Similarly for \pkg{endnotes}, but \emph{not} \pkg{sidenotes}.
 
 Also for \brand{MathJax}, \cs{footnotename} is used for a \cs{footnotemark}
+\margintag{\brand{MathJax}}
 if the actual footnote number is not known.
 To redefine it, provide it before loading \pkg{lwarp}:
 \begin{sourcedisplay}
@@ -1643,35 +1647,39 @@
 for other forms of display and inline math which contain \pkg{chemformula} expressions.
 }
 
-\newcommand{\limitsntheorem}{%
-This conversion is not total.
-\trouble[Font control]{ntheorem=\pkg{ntheorem}>font}
-Font control is via \CSS, and the custom \LaTeX\ font settings
-are ignored.
-
+\newcommand{\limitstheorems}{%
 If the print version does not use \pkg{cleveref},
-\trouble[cref reference format undefined]{ntheorem=\pkg{ntheorem}>cref reference format}
-\trouble{cref reference format}
-\trouble{cleveref=\pkg{cleveref}>cref reference format}
+\trouble[cref reference format undefined]{ntheorem=\pkg{ntheorem}>cref reference format undefined}
+\trouble{cref reference format undefined}
+\trouble{cleveref=\pkg{cleveref}>cref reference format undefined}
+\trouble{theorem>cref reference format undefined}
 place all \cs{theoremstyle} and \cs{newtheorem}
-declarations in the preamble inside \cs{AtBeginDocument}.\footnote{%
+declarations in the preamble inside \cs{AtEndPreamble}.\footnote{%
     \pkg{lwarp} uses \pkg{cleveref} for the \HTML\ conversion,
-    and loads \pkg{cleveref} \cs{AtEndPreamble}, just before \cs{AtBeginDocument}.%
+    and loads \pkg{cleveref} \cs{AtEndPreamble}, just before \cs{AtBeginDocument}.
+    This is also before the \filenm{.aux} file is read.
 }
-For some theorems, it may also be required to add inside \cs{AtBeginDocument}
+For some theorems, it may also be required to add inside \cs{AtEndPreamble}
 something such as:
 \begin{sourcedisplay}
-\cs{AtBeginDocument}\{ \% if not using cleveref package \\
+\cs{usepackage}\{etoolbox\} \% for \cs{ifdef}, \cs{AtEndPreamble} \\
+\cs{AtEndPreamble}\{ \% if not using cleveref package \\
     \fquad \cs{theoremstyle}\{definition\} \\
     \fquad \cs{newtheorem}\{dtheorem\}\{Definition\} \\
     \fquad \dots \\
-    \fquad \cs{usepackage}\{etoolbox\} \% for \cs{ifdef} \\
     \fquad \cs{ifdef}\{\cs{cref}\}\{ \\
         \fqquad    \cs{crefname}\{Proof\}\{Proof\}\{Proofs\} \\
     \fquad \}\{\} \\
 \}
 \end{sourcedisplay}
+}
 
+\newcommand{\limitsntheorem}{%
+This conversion is not total.
+\trouble[Font control]{ntheorem=\pkg{ntheorem}>font}
+Font control is via \CSS, and the custom \LaTeX\ font settings
+are ignored.
+
 \limitsntheoremnumbering
 }
 
@@ -2911,8 +2919,8 @@
 }
 
 \newcommand{\limitspolyglossia}{%
-\trouble{Undefined control sequence \dots begindocument>polyglossia=\pkg{polyglossia}}
-\trouble{polyglossia=\pkg{polyglossia}>Undefined control sequence \dots begindocument}
+\trouble{Undefined control seq \dots\ begindocument>polyglossia=\pkg{polyglossia}}
+\trouble{polyglossia=\pkg{polyglossia}>Undefined control seq \dots\ begindocument}
 \pkg{lwarp} uses \pkg{cleveref}, which has some limitations when using
 \pkg{polyglossia}, possibly resulting in the error
 \begin{sourcedisplay}
@@ -3053,7 +3061,7 @@
 %<*package>
 % \fi
 %
-% \CheckSum{53146}
+% \CheckSum{54091}
 %
 % \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
@@ -3190,6 +3198,7 @@
 % \changes{v0.893}{2020/11/26}{\ 2020/11/26}
 % \changes{v0.894}{2020/12/24}{\ 2020/12/24}
 % \changes{v0.895}{2021/02/18}{\ 2021/02/18}
+% \changes{v0.896}{2021/04/08}{\ 2021/04/08}
 
 
 
@@ -3413,6 +3422,41 @@
 %
 % \begin{description}
 % \needspace{2\baselineskip}
+% \item[v0.896:] Back references, accessibility.
+%   \begin{itemize}
+%       \item \textred{Due to changes in cross referencing, \watchout
+%           execute \cmds{lwarpmk clean} before recompiling.}
+%       \item Increased sectioning nesting stack depth.  Error if overflow stack.
+%       \item Fixed footnotes at the end of the document,
+%               or inside a \env{description} label.
+%       \item Added an error if using braces inside \cs{usepackage} options.
+%       \item Fixed footnotes in bracket display math with \brand{MathJax}.
+%           \margintag{\brand{MathJax}}
+%       \item \LaTeX\ theorems, \pkg{amsthm}, \pkg{ntheorem}, \pkg{theorem}:
+%           \margintag{theorems}
+%           Print theorem footnotes following theorems.
+%       \item Added \HTML\ \element{main} element to each page.
+%           \margintag{accessibility}
+%       \item Added \ARIA\ |math| role to \SVG\ math images, and |note| role to
+%           margin notes, footnotes, etc.
+%       \item Improved citation backreferences for various packages.
+%           \margintag{packages}
+%       \item \pkg{chemfig}: Updated to v1.6a.
+%       \item \pkg{bigdelim}: Updated to v2.8.
+%       \item \pkg{xetexko}: Updated to v3.1.
+%       \item \pkg{hyperxmp}: Fix: Accept and discard additional keys.
+%       \item \pkg{hyperef}: Fix: Added \cs{*autorefname} macros.
+%       \item \pkg{biblatex}: Fix: Back references.
+%       \item \pkg{tocloft}: Fix: \cs{cftpagenumbersoff}, \cs{cftpagenumberson}.
+%       \item \pkg{threeparttablex}: Fix: \cs{TPTL at tnotex}.
+%       \item \pkg{amsthm}: Fix: Footnotes inside environment optional argument.
+%       \item \pkg{listings}: Fixed labels.  Accepts but ignores escapes w/o error.
+%       \item \pkg{pdflscape}: Fix: Added \env{landscape} environment.
+%       \item Added \pkg{ccicons}, \pkg{classicthesis}, \pkg{orcidlink}.
+%       \item Added \pkg{enotez}.
+%       \item Verified support for \pkg{doi}, \pkg{doipubmed}.
+%   \end{itemize}
+% \needspace{2\baselineskip}
 % \item[v0.895:] Vector packages, greatly improved \brand{MathJax} for \pkg{siunitx}.
 %   \begin{itemize}
 %       \item Fixed quotes in \HTML\ tags while using old font packages with
@@ -4544,33 +4588,33 @@
 %       \item \pkg{endfloat}: Updated for v2.6.
 %       \item \pkg{url}: Fixes for active characters.
 %   \end{itemize}
-% \needspace{2\baselineskip}
-% \item[v0.51:] Improved \SVG\ math, added numerous chemistry packages.
-%   \begin{itemize}
-%       \item Docs: Added \nameref{sec:thingstoavoid}.
-%           \margintag{documentation}
-%       \item Docs: Added to \nameref{sec:convertexisting}.
-%       \item Docs: Multiple authors and affiliations with custom classes.
-%           See \cref{sec:authorsaffils}.
-%       \item Docs: \pkg{tikz} with matrices.  See \cref{sec:limitstikz}.
-%       \item Improved \SVG\ math baseline.\margintag{SVG math}
-%       \item Improved \SVG\ math font and color.
-%       \item Faster \SVG\ math rendering.
-%       \item Improved support for display math containing complicated math objects,
-%               such as \pkg{tikz-cd}.  See \cref{sec:displaymathother}.
-%       \item Fix: \cs{addcontentsline} inside \SVG\ math.
-%       \item Fix: \SVG\ math containing an embedded \env{lateximage}.
-%       \item \brand{MathJax} now handles \cs{ensuremath} in expressions.\margintag{MathJax}
-%       \item Fix: Added \env{alignat} environment. \margintag{misc. fixes}
-%       \item Fix: \pkg{afterpackage} no longer required, which conflicted with \pkg{scrlfile}.
-%       \item Fix: \pkg{titling} \cs{thanks} mark.
-%       \item Fix: \pkg{fancybox} improvements.
-%       \item Fix: \pkg{tikz} \cs{tikz} macro.  (Previously only the \env{tikzpicture} environment worked.)
-%       \item Fix: \pkg{tikz} with optional argument.
-%       \item Added \pkg{mhchem},  \margintag{packages}
-%           \pkg{chemfig}, \pkg{chemformula}, \pkg{chemmacros}, \pkg{chemnum}, \pkg{chemgreek},
-%           \pkg{epstopdf-base}, \pkg{grid}, \pkg{ltxgrid}.
-%   \end{itemize}
+% ^^A % \needspace{2\baselineskip}
+% ^^A % \item[v0.51:] Improved \SVG\ math, added numerous chemistry packages.
+% ^^A %   \begin{itemize}
+% ^^A %       \item Docs: Added \nameref{sec:thingstoavoid}.
+% ^^A %           \margintag{documentation}
+% ^^A %       \item Docs: Added to \nameref{sec:convertexisting}.
+% ^^A %       \item Docs: Multiple authors and affiliations with custom classes.
+% ^^A %           See \cref{sec:authorsaffils}.
+% ^^A %       \item Docs: \pkg{tikz} with matrices.  See \cref{sec:limitstikz}.
+% ^^A %       \item Improved \SVG\ math baseline.\margintag{SVG math}
+% ^^A %       \item Improved \SVG\ math font and color.
+% ^^A %       \item Faster \SVG\ math rendering.
+% ^^A %       \item Improved support for display math containing complicated math objects,
+% ^^A %               such as \pkg{tikz-cd}.  See \cref{sec:displaymathother}.
+% ^^A %       \item Fix: \cs{addcontentsline} inside \SVG\ math.
+% ^^A %       \item Fix: \SVG\ math containing an embedded \env{lateximage}.
+% ^^A %       \item \brand{MathJax} now handles \cs{ensuremath} in expressions.\margintag{MathJax}
+% ^^A %       \item Fix: Added \env{alignat} environment. \margintag{misc. fixes}
+% ^^A %       \item Fix: \pkg{afterpackage} no longer required, which conflicted with \pkg{scrlfile}.
+% ^^A %       \item Fix: \pkg{titling} \cs{thanks} mark.
+% ^^A %       \item Fix: \pkg{fancybox} improvements.
+% ^^A %       \item Fix: \pkg{tikz} \cs{tikz} macro.  (Previously only the \env{tikzpicture} environment worked.)
+% ^^A %       \item Fix: \pkg{tikz} with optional argument.
+% ^^A %       \item Added \pkg{mhchem},  \margintag{packages}
+% ^^A %           \pkg{chemfig}, \pkg{chemformula}, \pkg{chemmacros}, \pkg{chemnum}, \pkg{chemgreek},
+% ^^A %           \pkg{epstopdf-base}, \pkg{grid}, \pkg{ltxgrid}.
+% ^^A %   \end{itemize}
 % ^^A  \needspace{2\baselineskip}
 % ^^A  \item[v0.50:] Improved \SVG\ math.
 % ^^A    \begin{itemize}
@@ -5545,10 +5589,11 @@
 %       \ipkg{fullminipage}, \ipkg{fullpage},
 %       \ipkg{fwlw}, \ipkg{geometry}, \ipkg{gmeometric},
 %       \ipkg{grid}, \mpkg{grid-system}, \ipkg{gridset},
-%       \ipkg{layaureo}, \ipkg{layout}, \ipkg{layouts}, \ipkg{leading},
+%       \ipkg{layaureo}, \ipkg{layout}, \ipkg{layouts}, \ipkg{leading}, \ipkg{lscape},
 %       \ipkg{ltxgrid}, \ipkg{nccfancyhdr}, \ipkg{notespages}, \ipkg{nowidow},
 %       \ipkg{pagegrid}, \ipkg{pagesel}, \epkg{parallel}, \epkg{parcolumns},
-%       \ipkg{pdfcolparallel}, \ipkg{pdfcolparcolumns}, \ipkg{pdfcrypt}, \ipkg{pdfprivacy},
+%       \ipkg{pdfcolparallel}, \ipkg{pdfcolparcolumns}, \ipkg{pdfcrypt},
+%       \ipkg{pdflscape}, \ipkg{pdfprivacy},
 %       \ipkg{preview}, \epkg{ragged2e}, \ipkg{returntogrid}, \ipkg{rmpage},
 %       \epkg{scrlayer-scrpage}, \epkg{scrpage2}, \epkg{setspace}, \ipkg{selectp},
 %       \ipkg{textarea}, \ipkg{threadcol},
@@ -5616,7 +5661,7 @@
 % Footnotes: & Adds \progcode{FootnoteDepth} to print footnotes at section breaks.
 %   \brand{MathJax} emulation for \cs{footnote}, and also as marked in the following:
 %   \epkg{bigfoot}, \ipkg{dblfnote},
-%   \ipkg{endheads}, \mpkg{endnotes}\ejax, \spkg{fixfoot},
+%   \ipkg{endheads}, \mpkg{endnotes}\ejax, \mpkg{enotez}\ejax, \spkg{fixfoot},
 %   \ipkg{fnbreak}, \ipkg{fnpara}, \ipkg{fnpos},
 %   \epkg{footmisc}, \mpkg{footnote}, \ipkg{footnotebackref},
 %   \mpkg{footnoterange}, \ipkg{footnpag}, \epkg{manyfoot},
@@ -5733,8 +5778,8 @@
 % \midrule
 %
 % \mpkg{xcolor}: & \textcolor{DarkGreen}{Full package color names}, any color models,
-%   and \textcolor{Goldenrod}{mixing}.
-%   \textcolor{Maroon}{\cs{textcolor}},
+%   and \textcolor{red!70!black}{mixing}.
+%   \textcolor{blue}{\cs{textcolor}},
 %   \colorbox{LightSteelBlue}{\cs{colorbox}},
 %   \fcolorbox{red}{NavajoWhite}{\cs{fcolorbox}}.
 %   Enhanced for \HTML\ compatibility. \\
@@ -5821,7 +5866,7 @@
 %   Also see the math section for math and \brand{MathJax} support for math font packages. \\
 %
 % Symbols: & Native \LaTeX\ diacriticals, \mpkg{academicons}, \spkg{amssymb}\sjax,
-%   \mpkg{bbding},
+%   \mpkg{bbding}, \mpkg{ccicons},
 %   \mpkg{chemgreek}, \mpkg{dingbat}, \spkg{euro}, \mpkg{eurosym},
 %   \mpkg{fontawesome}, \mpkg{fontawesome5}, \spkg{gensymb}\ejax, \spkg{latexsym}\sjax,
 %   \mpkg{marvosym},
@@ -5872,7 +5917,8 @@
 %
 % \midrule
 %
-% Calendars: & \mpkg{termcal} \\
+% Academic: & \mpkg{academicons}, \epkg{classicthesis}, \spkg{doi},
+%   \spkg{doipubmed}, \mpkg{orcidlink}\ijax, \mpkg{termcal} \\
 %
 % \midrule
 %
@@ -6620,7 +6666,7 @@
 %	own auxiliary files.  In this way, both \PDF\ and \HTML\
 %	documents may co-exist side-by-side.
 %
-% \item [Auxiliary files:] The usual \LaTeX\ files |.aux|, |.log|, |.out|, |.toc|, |.lof|, |.idx|.
+% \item [Auxiliary files:] The usual \LaTeX\ files |.aux|, |.log|, |.out|, \filenm{.toc}, \filenm{.lof}, |.idx|.
 %	When an \HTML\ version of the document is created, |_html| versions
 %	of the auxiliary files will also be generated.
 %
@@ -7012,7 +7058,7 @@
 %
 % \subsection{Cleaning auxiliary files}
 %
-% To remove the auxiliary files |.aux|, |.toc|, |.lof|, |.lot|, |.idx|, |.ind|, |.log|,
+% To remove the auxiliary files |.aux|, \filenm{.toc}, \filenm{.lof}, \filenm{.lot}, |.idx|, |.ind|, |.log|,
 %	and |.gl*|, and a few others:
 %	\userentry{lwarpmk clean}
 %
@@ -7277,14 +7323,20 @@
 % \gindex{link>title=\attribute{title} text}
 % \gindex{hyperref=\pkg{hyperref}>title=\attribute{title} text}
 % \gindex{settings>accessibility}
+% \gindex{ARIA=\acro{ARIA}}
+% \gindex{roles>ARIA=\acro{ARIO}}
 %
 % \pkg{lwarp} provides several methods for improving access to
 % the document using tools such as text-only browsers, copy \Slash paste,
 % text-to-speech readers, or Braille readers.
-% \HTML\ provides the \attribute{alt} text attribute for images,
-% which is used by \pkg{lwarp} as describe below.
-% \HTML\ also provides the \attribute{title} attribute, which usually
+% \pkg{lwarp} can use the \HTML\ \attribute{alt} text attribute for images,
+% as describe below.
+% \pkg{lwarp} can also use the \HTML\ \attribute{title} attribute, which usually
 % generates a pop-up text.  \pkg{lwarp} can add this to a reference or hyperlink.
+% \pkg{lwarp} also uses standard \HTML5 elements which are pre-assigned
+% \ARIA\ roles for increased accessibility, and \pkg{lwarp} assigns the |math|
+% role for \SVG\ math images, and the |note| role for footnotes, end notes,
+% margin paragraphs and notes, etc.
 % \brand{MathJax} also has provisions for improved accessibility
 % as well.  See \cref{tab:accessibility}.
 %
@@ -9613,7 +9665,7 @@
 %     \cs{usepackage}[ \\
 %       \fqquad \textred{makeindex,} \\
 %       \fqquad \textred{makeindexStyle=gindex.ist,} \\
-%       \fqquad \dots or \dots \\
+%       \fqquad \dots\ or \dots \\
 %       \fqquad \textred{makeindexStyle=gindexh.ist,} \\
 %       \fqquad \textgreen{latexmk} \hfill \textrm{<optional>}\\
 %     ]\{\textblue{lwarp}\}
@@ -10141,7 +10193,7 @@
 % \DescribeOption{makeindexStyle}
 %   \begin{sourcedisplay}
 % \cs{usepackage}[ \\
-%     \fquad \dots other options \dots \\
+%     \fquad \dots\ other options \dots \\
 %     \fquad \textred{makeindex}, \\
 %     \fquad \textred{makeindexStyle=projectname.ist}, \\
 % ]\{lwarp\}
@@ -10200,7 +10252,7 @@
 % \DescribeOption{xindyStyle}
 %   \begin{sourcedisplay}
 % \cs{usepackage}[ \\
-%   \fquad \dots other options \dots \\
+%   \fquad \dots\ other options \dots \\
 %   \fquad \textred{xindy}, \\
 %   \fquad \textred{xindyStyle=projectname.xdy}, \\
 % ]\{lwarp\}
@@ -10237,7 +10289,7 @@
 % \DescribeOption{xindexConfig}
 %   \begin{sourcedisplay}
 % \cs{usepackage}[ \\
-%     \fquad \dots other options \dots \\
+%     \fquad \dots\ other options \dots \\
 %     \fquad \textred{xindex}, \\
 %     \fquad \textred{xindexConfig=projectname}, \quad \% \textgreen{(without xindex- or .lua)} \\
 % ]\{lwarp\}
@@ -10341,6 +10393,10 @@
 % \limitsmathdisplay
 %
 %
+% \subsubsection{Theorems}
+% \limitstheorems
+% \changes{v0.896}{2021/03/25}{Docs: Theorem references.}
+%
 % \subsubsection{\pkg{ntheorem} package}
 %
 % \DescribePackage{ntheorem}
@@ -10890,8 +10946,8 @@
 % No attempt has yet been made to make \pkg{pythontex} robust with \HTML\ output.
 % Some math objects must be surrounded by
 % \trouble[``impure'' math]{pythontex=\pkg{pythontex}}
-% \cs{displaymathother} \dots \cs{displaymathnormal},
-% or \cs{inlinemathother} \dots \cs{inlinemathnormal}.
+% \cs{displaymathother} \dots\ \cs{displaymathnormal},
+% or \cs{inlinemathother} \dots\ \cs{inlinemathnormal}.
 % Displays of code may have to be
 % enclosed inside a \env{lateximage} environment
 % \watchout[HTML look-alike]
@@ -11949,7 +12005,7 @@
 %       \item [``Temporary page! LaTeX was unable to guess the total
 %                           number of pages \dots'':] \
 %           Harmless.  Recompile the document one more time.
-%           \trouble{Temporary page \dots unable to guess \dots}
+%           \trouble{Temporary page \dots\ unable to guess \dots}
 %           \trouble{LaTeX was unable to guess the total\dots}
 %
 %         \item [``Leaders not followed by proper glue'':] ~ \\
@@ -12051,8 +12107,8 @@
 %           \trouble{alt tags}
 %           can also cause problems with \attribute{alt} tags, resulting in
 %           very slow compilation, large \attribute{alt} tags, and possible
-%           crashes.  Use \cs{inlinemathother} \dots \cs{inlinemathnormal} or
-%           \cs{displaymathother} \dots \cs{displaymathnormal} around the
+%           crashes.  Use \cs{inlinemathother} \dots\ \cs{inlinemathnormal} or
+%           \cs{displaymathother} \dots\ \cs{displaymathnormal} around the
 %           math expression.
 %   \end{description}
 %
@@ -12896,6 +12952,7 @@
 \LWR at loadafter{bussproofs}
 \LWR at loadafter{bxpapersize}
 \LWR at loadafter{bytefield}
+\LWR at loadafter{ccicons}
 \LWR at loadafter{cancel}
 \LWR at loadafter{canoniclayout}
 \LWR at loadafter{caption}
@@ -12920,6 +12977,7 @@
 \LWR at notmemoirloadafter{chngpage}
 \LWR at loadafter{cite}
 \LWR at loadafter{citeref}
+\LWR at loadafter{classicthesis}
 \LWR at loadafter{cleveref}
 % cmbright may be preloaded
 \LWR at loadafter{cmdtrack}
@@ -12957,6 +13015,7 @@
 \LWR at loadafter{endheads}
 \LWR at loadafter{endnotes}
 \LWR at loadafter{engtlc}
+\LWR at loadafter{enotez}
 \LWR at notmemoirloadafter{enumerate}
 \LWR at loadafter{enumitem}
 \LWR at notmemoirloadafter{epigraph}
@@ -13171,6 +13230,7 @@
 \LWR at loadafter{nowidow}
 \LWR at loadafter{ntheorem}
 \LWR at loadafter{octave}
+\LWR at loadafter{orcidlink}
 \LWR at loadafter{overpic}
 \LWR at loadafter{pagegrid}
 \LWR at notmemoirloadafter{pagenote}
@@ -13381,7 +13441,7 @@
 \LWR at loadafter{xcolor}
 \LWR at loadafter{xechangebar}
 \LWR at loadafter{xellipsis}
-% xetexko-vertical must be loaded before lwarp
+% xetexko must be loaded before lwarp
 \LWR at loadafter{xevlna}
 \LWR at loadafter{xfakebold}
 \LWR at loadafter{xfrac}
@@ -13739,25 +13799,29 @@
 %
 % \subsection{Argument selection}
 %
-% \begin{macro}{\LWR at firstoffour} \marg{first} \marg{second} \marg{third} \marg{fourth}
+% \begin{macro}{\LWR at firstoffive} \marg{first} \marg{second} \marg{third} \marg{fourth} \marg{fifth}
 % \changes{v0.63}{2019/01/25}{Added.}
-% \begin{macro}{\LWR at secondoffour} \marg{first} \marg{second} \marg{third} \marg{fourth}
-% \begin{macro}{\LWR at thirdoffour} \marg{first} \marg{second} \marg{third} \marg{fourth}
-% \begin{macro}{\LWR at fourthoffour} \marg{first} \marg{second} \marg{third} \marg{fourth}
+% \changes{v0.896}{2021/04/05}{Changed to firstoffive instead of four.}
+% \begin{macro}{\LWR at secondoffive} \marg{first} \marg{second} \marg{third} \marg{fourth} \marg{fifth}
+% \begin{macro}{\LWR at thirdoffive} \marg{first} \marg{second} \marg{third} \marg{fourth} \marg{fifth}
+% \begin{macro}{\LWR at fourthoffive} \marg{first} \marg{second} \marg{third} \marg{fourth} \marg{fifth}
+% \begin{macro}{\LWR at fifthoffive} \marg{first} \marg{second} \marg{third} \marg{fourth} \marg{fifth}
 %
-% Expands to the nth  of the four arguments.
+% Expands to the nth  of the five arguments.
 % Used for extra cross referencing.
 %
 %    \begin{macrocode}
-\long\def\LWR at firstoffour#1#2#3#4{#1}
-\long\def\LWR at secondoffour#1#2#3#4{#2}
-\long\def\LWR at thirdoffour#1#2#3#4{#3}
-\long\def\LWR at fourthoffour#1#2#3#4{#4}
+\long\def\LWR at firstoffive#1#2#3#4#5{#1}
+\long\def\LWR at secondoffive#1#2#3#4#5{#2}
+\long\def\LWR at thirdoffive#1#2#3#4#5{#3}
+\long\def\LWR at fourthoffive#1#2#3#4#5{#4}
+\long\def\LWR at fifthoffive#1#2#3#4#5{#5}
 %    \end{macrocode}
 % \end{macro}
 % \end{macro}
 % \end{macro}
 % \end{macro}
+% \end{macro}
 %
 %
 % \subsection{Inside boxes}
@@ -15676,6 +15740,7 @@
 %    \begin{macrocode}
 \RenewDocumentCommand{\RequirePackage}{o m o}{%
 %    \end{macrocode}
+%
 % Redirect up to twenty names:\footnote{This was originally nine names, but
 % then I came across a package which used twelve...}
 % \changes{v0.61}{2018/10/02}{Support up to 20 packages.}
@@ -15703,6 +15768,31 @@
 \LWR at lookforpackagename{19}%
 \LWR at lookforpackagename{20}%
 %    \end{macrocode}
+%
+% Error if braces are used in optional argument.
+% This can cause an error, so tell how to avoid.
+% \changes{v0.896}{2021/03/14}{Warn if package option has braces.}
+%    \begin{macrocode}
+\IfSubStr{\detokenize\expandafter{#1}}{\LWRleftbrace}%
+    {%
+        \PackageError{lwarp}{%
+            You used:\MessageBreak
+            \protect\requirepackage[#1]{#2}\MessageBreak
+            Braces in the package options will fail with Lwarp.\MessageBreak
+            Instead, use:\MessageBreak
+            \protect\PassOptionsToPackage{#1}{#2}\MessageBreak
+            \protect\requirepackage{#2}\MessageBreak
+            near the line number given below.\MessageBreak
+            Enter 'h' for more info%
+        }%
+        {%
+            See the Lwarp manual troubleshooting index entry for\MessageBreak
+            ``package, options with braces''%
+        }%
+    }%
+    {}% no brace
+%    \end{macrocode}
+%
 % \cs{RequirePackage} depending on the options and version:
 %    \begin{macrocode}
 \IfValueTF{#1}%
@@ -15967,7 +16057,7 @@
 
 % \begin{macro}{\LWR at copyfile} \marg{source filename} \marg{destination filename}
 %
-% Used to copy the |.toc| file to |.sidetoc| to re-print the \TOC\ in
+% Used to copy the \filenm{.toc} file to |.sidetoc| to re-print the \TOC\ in
 % the side\TOC\ navigation pane.
 %    \begin{macrocode}
 \newwrite\LWR at copyoutfile   % open the file to write to
@@ -17389,6 +17479,7 @@
 % \changes{v0.88}{2020/07/14}{\filenm{lwarp.css}: Added \optn{indexheading} for \pkg{gindex}.}
 % \changes{v0.893}{2020/10/18}{\filenm{lwarp.css}: Added \pkg{keystroke}.}
 % \changes{v0.894}{2020/12/15}{\filenm{lwarp.css}: \TeX\ logos no longer below baseline.}
+% \changes{v0.896}{2021/03/04}{\filenm{lwarp.css}: Added \element{main}, adjusted \element{sidetoccontainer} margin.}
 %
 % ^^A *lwarp.css
 %
@@ -17888,12 +17979,12 @@
 div.marginparblock br
     { margin-bottom: 2ex ; }
 
-div.bodycontainer {
+main.bodycontainer {
     float: left ;
     width: 80% ;
 }
 
-div.bodywithoutsidetoc div.bodycontainer {
+div.bodywithoutsidetoc main.bodycontainer {
     float: none ;
     width: 100% ;
 }
@@ -18735,15 +18826,12 @@
 }
 
 
-/* The -1px right margin compensates for the 1px right border. */
-/* Without this -1px margin, the body container appears below instead */
-/* of floating to the side. */
 div.sidetoccontainer {
     font-family: "DejaVu Serif", "Bitstream Vera Serif",
         "Lucida Bright", Georgia, serif;
     float: left ;
-    width: 20%;
-    margin: 0pt -1px 3ex 0pt ;
+    width: 19%; /* room for border-right next to 80% main */
+    margin: 0pt 0em 3ex 0pt ;
     border-right: 1px solid silver;
     border-bottom: 1px solid silver;
     background: #FAF7F4 ;
@@ -19097,7 +19185,7 @@
     span.sidetocthetitle { display: inline }
     nav.topnavigation { display:block }
     nav.botnavigation { display:block }
-    div.bodycontainer { width: 100% }
+    main.bodycontainer { width: 100% }
     .marginpar {
         max-width: 100%;
         float: none;
@@ -19116,7 +19204,7 @@
     div.sidetoccontainer { display:none; }
     nav.topnavigation { display: none; }
     nav.botnavigation { display: none; }
-    div.bodycontainer { width: 100% }
+    main.bodycontainer { width: 100% }
 }
 
 @media handheld {
@@ -19123,7 +19211,7 @@
     div.sidetoccontainer { display:none; }
     nav.topnavigation { display:block }
     nav.botnavigation { display:block }
-    div.bodycontainer { width: 100% }
+    main.bodycontainer { width: 100% }
 }
 
 @media projection {
@@ -19130,7 +19218,7 @@
     div.sidetoccontainer { display:none; }
     nav.topnavigation { display:block }
     nav.botnavigation { display:block }
-    div.bodycontainer { width: 100% }
+    main.bodycontainer { width: 100% }
 }
 \end{filecontents*}
 % \end{Verbatim}% for syntax highlighting
@@ -20192,7 +20280,7 @@
 -- Copyright 2016-2021 Brian Dunn
 
 
-printversion = "v0.895"
+printversion = "v0.896"
 requiredconfversion = "2" -- also at *lwarpmk.conf
 
 function printhelp ()
@@ -21169,9 +21257,7 @@
 %    \begin{macrocode}
 \begin{warpHTML}
 %    \end{macrocode}
-
-
-
+%
 % Stacks are used to remember how to close sections and list items.
 % Before a new section is started, previously nested sections and items must
 % be closed out (un-nested) in proper order.
@@ -21224,6 +21310,7 @@
 % A stack to record the action to take to close each nesting level:
 % Add more levels of stack if necessary for a very deeply nested document,
 % adding to \cs{pushclose} and \cs{popclose} as well.
+% \changes{v0.896}{2021/03/15}{Stack 19 deep.}
 %    \begin{macrocode}
 \newcommand*{\LWR at closeone}{}% top of the stack
 \newcommand*{\LWR at closetwo}{}
@@ -21237,6 +21324,13 @@
 \newcommand*{\LWR at closeten}{}
 \newcommand*{\LWR at closeeleven}{}
 \newcommand*{\LWR at closetwelve}{}
+\newcommand*{\LWR at closethirteen}{}
+\newcommand*{\LWR at closefourteen}{}
+\newcommand*{\LWR at closefifteen}{}
+\newcommand*{\LWR at closesixteen}{}
+\newcommand*{\LWR at closeseventeen}{}
+\newcommand*{\LWR at closeeighteen}{}
+\newcommand*{\LWR at closenineteen}{}
 %    \end{macrocode}
 
 % \subsection{Closing depths}
@@ -21258,7 +21352,8 @@
 % \end{Verbatim}
 % \vspace{-\baselineskip}
 % \end{docsidebar}
-
+%
+% \changes{v0.896}{2021/03/15}{Stack 19 deep.}
 %    \begin{macrocode}
 \newcommand*{\LWR at closedepthone}{\LWR at depthnone}% top of the stack
 \newcommand*{\LWR at closedepthtwo}{\LWR at depthnone}
@@ -21272,6 +21367,13 @@
 \newcommand*{\LWR at closedepthten}{\LWR at depthnone}
 \newcommand*{\LWR at closedeptheleven}{\LWR at depthnone}
 \newcommand*{\LWR at closedepthtwelve}{\LWR at depthnone}
+\newcommand*{\LWR at closedepththirteen}{\LWR at depthnone}
+\newcommand*{\LWR at closedepthfourteen}{\LWR at depthnone}
+\newcommand*{\LWR at closedepthfifteen}{\LWR at depthnone}
+\newcommand*{\LWR at closedepthsixteen}{\LWR at depthnone}
+\newcommand*{\LWR at closedepthseventeen}{\LWR at depthnone}
+\newcommand*{\LWR at closedeptheighteen}{\LWR at depthnone}
+\newcommand*{\LWR at closedepthnineteen}{\LWR at depthnone}
 %    \end{macrocode}
 
 % \subsection{Pushing and popping the stack}
@@ -21280,9 +21382,17 @@
 
 % Pushes one return action and its \LaTeX\ depth onto the stacks.
 % \changes{v0.46}{2018/01/18}{Fix: Stack unnesting.}
+% \changes{v0.896}{2021/03/15}{Stack 19 deep.}
 %    \begin{macrocode}
 \NewDocumentCommand{\LWR at pushclose}{m}
 {%
+\global\let\LWR at closenineteen\LWR at closeeighteen%
+\global\let\LWR at closeeighteen\LWR at closeseventeen%
+\global\let\LWR at closeseventeen\LWR at closesixteen%
+\global\let\LWR at closesixteen\LWR at closefifteen%
+\global\let\LWR at closefifteen\LWR at closefourteen%
+\global\let\LWR at closefourteen\LWR at closethirteen%
+\global\let\LWR at closethirteen\LWR at closetwelve%
 \global\let\LWR at closetwelve\LWR at closeeleven%
 \global\let\LWR at closeeleven\LWR at closeten%
 \global\let\LWR at closeten\LWR at closenine%
@@ -21295,6 +21405,13 @@
 \global\let\LWR at closethree\LWR at closetwo%
 \global\let\LWR at closetwo\LWR at closeone%
 \global\csletcs{LWR at closeone}{LWR at printclose#1}%
+\global\let\LWR at closedepthnineteen\LWR at closedeptheighteen%
+\global\let\LWR at closedeptheighteen\LWR at closedepthseventeen%
+\global\let\LWR at closedepthseventeen\LWR at closedepthsixteen%
+\global\let\LWR at closedepthsixteen\LWR at closedepthfifteen%
+\global\let\LWR at closedepthfifteen\LWR at closedepthfourteen%
+\global\let\LWR at closedepthfourteen\LWR at closedepththirteen%
+\global\let\LWR at closedepththirteen\LWR at closedepthtwelve%
 \global\let\LWR at closedepthtwelve\LWR at closedeptheleven%
 \global\let\LWR at closedeptheleven\LWR at closedepthten%
 \global\let\LWR at closedepthten\LWR at closedepthnine%
@@ -21307,6 +21424,20 @@
 \global\let\LWR at closedepththree\LWR at closedepthtwo%
 \global\let\LWR at closedepthtwo\LWR at closedepthone%
 \global\csletcs{LWR at closedepthone}{LWR at depth#1}%
+%    \end{macrocode}
+%
+% Error if the deepest depth is no longer \cs{LWR at depthnone},
+% which means that it somehow has been nested too deeply,
+% or things are not being unnested correctly.
+% \changes{v0.896}{2021/03/15}{Error if stack overflow.}
+%    \begin{macrocode}
+\ifdefstring{\LWR at closedepthnineteen}{\LWR at depthnone}%
+    {}%
+    {%
+        \PackageError{lwarp}%
+            {The document is nested too deeply for Lwarp}%
+            {PLEASE inform the Lwarp maintainer!}%
+    }%
 }
 %    \end{macrocode}
 % \end{macro}
@@ -21316,6 +21447,7 @@
 
 % Pops one action and its depth off the stacks.
 % \changes{v0.46}{2018/01/18}{Fix: Stack unnesting.}
+% \changes{v0.896}{2021/03/15}{Stack 19 deep.}
 %    \begin{macrocode}
 \newcommand*{\LWR at popclose}
 {%
@@ -21330,6 +21462,13 @@
 \global\let\LWR at closenine\LWR at closeten%
 \global\let\LWR at closeten\LWR at closeeleven%
 \global\let\LWR at closeeleven\LWR at closetwelve%
+\global\let\LWR at closetwelve\LWR at closethirteen%
+\global\let\LWR at closethirteen\LWR at closefourteen%
+\global\let\LWR at closefourteen\LWR at closefifteen%
+\global\let\LWR at closefifteen\LWR at closesixteen%
+\global\let\LWR at closesixteen\LWR at closeseventeen%
+\global\let\LWR at closeseventeen\LWR at closeeighteen%
+\global\let\LWR at closeeighteen\LWR at closenineteen%
 \global\let\LWR at closedepthone\LWR at closedepthtwo%
 \global\let\LWR at closedepthtwo\LWR at closedepththree%
 \global\let\LWR at closedepththree\LWR at closedepthfour%
@@ -21341,6 +21480,13 @@
 \global\let\LWR at closedepthnine\LWR at closedepthten%
 \global\let\LWR at closedepthten\LWR at closedeptheleven%
 \global\let\LWR at closedeptheleven\LWR at closedepthtwelve%
+\global\let\LWR at closedepthtwelve\LWR at closedepththirteen%
+\global\let\LWR at closedepththirteen\LWR at closedepthfourteen%
+\global\let\LWR at closedepthfourteen\LWR at closedepthfifteen%
+\global\let\LWR at closedepthfifteen\LWR at closedepthsixteen%
+\global\let\LWR at closedepthsixteen\LWR at closedepthseventeen%
+\global\let\LWR at closedepthseventeen\LWR at closedeptheighteen%
+\global\let\LWR at closedeptheighteen\LWR at closedepthnineteen%
 }
 %    \end{macrocode}
 % \end{macro}
@@ -21524,7 +21670,7 @@
 \boolfalse{LWR at dynamicmath}
 %    \end{macrocode}
 %
-% \begin{macro}{\inlinemathother} Place before using |$| \dots\ |$| or \cs{(} \dots \cs{)}
+% \begin{macro}{\inlinemathother} Place before using |$| \dots\ |$| or \cs{(} \dots\ \cs{)}
 % if the contents of the math are not static, depending on counters or dynamic macros.
 % \changes{v0.57}{2018/05/23}{Added.}
 % \changes{v0.61}{2018/09/20}{Changed name from \cs{StartDynamicMath} to \cs{inlinemathother}.}
@@ -21536,7 +21682,7 @@
 %    \end{macrocode}
 % \end{macro}
 %
-% \begin{macro}{\inlinemathnormal} Place after using |$| \dots\ |$| or \cs{(} \dots \cs{)}
+% \begin{macro}{\inlinemathnormal} Place after using |$| \dots\ |$| or \cs{(} \dots\ \cs{)}
 % with dynamic contents.
 % \changes{v0.61}{2018/09/20}{Changed name from \cs{StopDynamicMath} to \cs{inlinemathnormal}.}
 %    \begin{macrocode}
@@ -22069,6 +22215,7 @@
 
 % \begin{macro}{\LWRPrintStack} Prints the closedepth stack.
 % \changes{v0.46}{2018/01/15}{Name changed from \cs{PrintStack}.}
+% \changes{v0.896}{2021/03/15}{Stack 19 deep.}
 %    \begin{macrocode}
 \newcommand*{\LWR at subprintstack}{
 \LWR at closedepthone\ \LWR at closedepthtwo\ \LWR at closedepththree\ 
@@ -22075,6 +22222,9 @@
 \LWR at closedepthfour\ \LWR at closedepthfive\ \LWR at closedepthsix\ 
 \LWR at closedepthseven\ \LWR at closedeptheight\ \LWR at closedepthnine\ 
 \LWR at closedepthten\ \LWR at closedeptheleven\ \LWR at closedepthtwelve\ 
+\LWR at closedepththirteen\ \LWR at closedepthfourteen\ \LWR at closedepthfifteen\
+\LWR at closedepthsixteen\ \LWR at closedepthseventeen\ \LWR at closedeptheighteen\ 
+\LWR at closedepthnineteen\
 }
 
 \newcommand*{\LWRPrintStack}{
@@ -22490,6 +22640,7 @@
 % \changes{v0.73}{2019/06/23}{Fix: \env{quote}, \env{quotation} inside a span.}
 % \changes{v0.84}{2020/04/22}{Nullified \env{minipage}, \cs{parbox} inside a span.}
 % \changes{v0.84}{2020/04/22}{Issue warnings inside a span.}
+% \changes{v0.896}{2021/03/05}{Issue \env{BlockClassWP} warning inside a span.}
 %
 %    \begin{macrocode}
 \newcommand*{\LWR at nestspanitem}{%
@@ -22518,6 +22669,9 @@
     \RenewDocumentEnvironment{BlockClass}{o m}%
         {\LWR at spanwarnformat{multi-paragraph object}}%
         {}%
+    \RenewDocumentEnvironment{LWR at BlockClassWP}{m m D(){} m}%
+        {\LWR at spanwarnformat{multi-paragraph object}}%
+        {}%
     \renewcommand{\BlockClassSingle}[2]{%
         {\LWR at spanwarnformat{multi-paragraph object}}%
         ##2%
@@ -22566,20 +22720,23 @@
 % \end{macro}
 
 
-% \begin{macro}{\LWR at htmlspanclass} \oarg{style} \marg{class} \marg{text}
+% \begin{macro}{\LWR at htmlspanclass}
+%                   \oarg{style} \parg{\ARIA\ role} \marg{class} \marg{text}
 %
 % \changes{v0.34}{2017/08/02}{Moved optional argument in front of mandatory.}
-%
+% \changes{v0.896}{2021/03/05}{Added \ARIA\ role.}
 %    \begin{macrocode}
-\NewDocumentCommand{\LWR at htmlspanclass}{o m +m}{%
-\LWR at traceinfo{LWR at htmlspanclass |#1|#2|}%
-\LWR at ensuredoingapar%
-\LWR at subhtmlelementclass{span}[#1]{#2}%
-\begin{LWR at nestspan}%
-#3%
-\LWR at htmltagc{/span}%
-\LWR at traceinfo{LWR at htmlspanclass done}%
-\end{LWR at nestspan}%
+\NewDocumentCommand{\LWR at htmlspanclass}{o D(){} m +m}{%
+    \LWR at traceinfo{LWR at htmlspanclass |#1|#2|#3|}%
+    \LWR at ensuredoingapar%
+    \ifblank{#2}%
+        {\LWR at subhtmlelementclass{span}[#1]{#3}}%
+        {\LWR at subhtmlelementclass{span}[#1](#2){#3}}%
+    \begin{LWR at nestspan}%
+    #4%
+    \LWR at htmltagc{/span}%
+    \LWR at traceinfo{LWR at htmlspanclass done}%
+    \end{LWR at nestspan}%
 }
 %    \end{macrocode}
 % \end{macro}
@@ -22676,7 +22833,8 @@
 % \subsection{Div class and element class}
 
 
-% \begin{macro}{\LWR at subhtmlelementclass} \marg{element} \oarg{style} \marg{class}
+% \begin{macro}{\LWR at subhtmlelementclass}
+%                       \marg{element} \oarg{style} \parg{\ARIA\ role} \marg{class}
 %
 % Factored and reused in several places.
 %
@@ -22690,21 +22848,24 @@
 % \changes{v0.63}{2018/11/24}{Fix for \pkg{xeCJK}.}
 % \changes{v0.66}{2019/02/02}{Improved \HTML\ formatting.}
 % \changes{v0.892}{2020/10/03}{Ignore empty class.}
+% \changes{v0.896}{2021/03/05}{Added \ARIA\ role.}
 %
 %    \begin{macrocode}
-\NewDocumentCommand{\LWR at subhtmlelementclass}{m O{} m}{%
-\LWR at traceinfo{LWR at subhtmlelementclass !#1!#2!#3!}%
+\NewDocumentCommand{\LWR at subhtmlelementclass}{m O{} D(){} m}{%
+\LWR at traceinfo{LWR at subhtmlelementclass !#1!#2!#3!#4!}%
 \ifblank{#2}%
 {% empty style
     \LWR at htmltag{%
         #1%
-        \ifblank{#3}{}{ class=\textquotedbl#3\textquotedbl\ }% spaces
+        \ifblank{#3}{}{ role=\textquotedbl#3\textquotedbl}% spaces
+        \ifblank{#4}{}{ class=\textquotedbl#4\textquotedbl}% spaces
     }%
 }%
 {% non-empty style
     \LWR at htmltag{%
         #1\LWR at indentHTML%
-        \ifblank{#3}{}{class=\textquotedbl#3\textquotedbl\LWR at indentHTML}%
+        \ifblank{#3}{}{role=\textquotedbl#3\textquotedbl\LWR at indentHTML}%
+        \ifblank{#4}{}{class=\textquotedbl#4\textquotedbl\LWR at indentHTML}%
         style=\textquotedbl#2\textquotedbl\LWR at orignewline%
     }%
 }%
@@ -22714,17 +22875,20 @@
 % \end{macro}
 
 
-% \begin{macro}{\LWR at htmlelementclass} \marg{element} \marg{class} \oarg{style}
+% \begin{macro}{\LWR at htmlelementclass} \marg{element} \oarg{style} \marg{class}
 %
 % \changes{v0.20}{2017/01/17}{Added optional style.}
 % \changes{v0.34}{2017/08/02}{Moved optional argument in front of mandatory.}
 % \changes{v0.73}{2019/06/26}{Vertical space.}
+% \changes{v0.896}{2021/03/05}{Added \ARIA\ role.}
 %    \begin{macrocode}
-\NewDocumentCommand{\LWR at htmlelementclass}{m o m}{%
-\LWR at stoppars%
-\LWR at forceemptyline%
-\LWR at subhtmlelementclass{#1}[#2]{#3}%
-\LWR at startpars%
+\NewDocumentCommand{\LWR at htmlelementclass}{m o D(){} m}{%
+    \LWR at stoppars%
+    \LWR at forceemptyline%
+    \ifblank{#3}%
+        {\LWR at subhtmlelementclass{#1}[#2]{#4}}%
+        {\LWR at subhtmlelementclass{#1}[#2](#3){#4}}%
+    \LWR at startpars%
 }
 %    \end{macrocode}
 % \end{macro}
@@ -22733,24 +22897,27 @@
 % \begin{macro}{\LWR at htmlelementclassend} \marg{element} \marg{class}
 %    \begin{macrocode}
 \newcommand*{\LWR at htmlelementclassend}[2]{%
-\LWR at stoppars%
-\LWR at htmltag{/#1}%
-\ifbool{HTMLDebugComments}{%
-    \LWR at htmlcomment{End of #1 ``#2''}%
-}{}%
-\LWR at startpars%
+    \LWR at stoppars%
+    \LWR at htmltag{/#1}%
+    \ifbool{HTMLDebugComments}{%
+        \LWR at htmlcomment{End of #1 ``#2''}%
+    }{}%
+    \LWR at startpars%
 }
 %    \end{macrocode}
 % \end{macro}
 
-% \begin{macro}{\LWR at htmldivclass} \oarg{style} \marg{class}
+% \begin{macro}{\LWR at htmldivclass} \oarg{style} \parg{\ARIA\ role} \marg{class}
 %
 % \changes{v0.20}{2017/01/17}{Added optional style.}
 % \changes{v0.34}{2017/08/02}{Moved optional argument in front of mandatory.}
+% \changes{v0.896}{2021/03/05}{Added \ARIA\ role.}
 %
 %    \begin{macrocode}
-\NewDocumentCommand{\LWR at htmldivclass}{o m}{%
-\LWR at htmlelementclass{div}[#1]{#2}%
+\NewDocumentCommand{\LWR at htmldivclass}{o D(){} m}{%
+    \ifblank{#2}
+        {\LWR at htmlelementclass{div}[#1]{#3}}%
+        {\LWR at htmlelementclass{div}[#1](#2){#3}}%
 }
 %    \end{macrocode}
 % \end{macro}
@@ -22758,7 +22925,7 @@
 % \begin{macro}{\LWR at htmldivclassend} \marg{class}
 %    \begin{macrocode}
 \newcommand*{\LWR at htmldivclassend}[1]{%
-\LWR at htmlelementclassend{div}{#1}%
+    \LWR at htmlelementclassend{div}{#1}%
 }
 %    \end{macrocode}
 % \end{macro}
@@ -22825,7 +22992,7 @@
 % For other direct-formatting commands, see \cref{sec:directformatting}.
 %
 %
-% \begin{environment}{BlockClass} \oarg{style} \marg{class} \quad
+% \begin{environment}{BlockClass} \oarg{style} \parg{\ARIA\ role} \marg{class} \quad
 % High-level interface for \element{div} classes.
 %
 % \qquad Ex: |\begin{BlockClass}{class}| text |\end{BlockClass}|
@@ -22834,11 +23001,12 @@
 % \changes{v0.20}{2017/01/17}{Added optional style.}
 % \changes{v0.34}{2017/08/02}{Moved optional argument in front of mandatory.}
 % \changes{v0.57}{2018/05/28}{Improved print/\HTML\ output selection.}
+% \changes{v0.896}{2021/03/05}{Added \ARIA\ role.}
 %
 % \codeprint
 %    \begin{macrocode}
 \begin{warpprint}
-\NewDocumentEnvironment{BlockClass}{o m}{}{}%
+\NewDocumentEnvironment{BlockClass}{o D(){} m}{}{}
 \end{warpprint}
 %    \end{macrocode}
 % \end{environment}
@@ -22847,11 +23015,11 @@
 %    \begin{macrocode}
 \begin{warpHTML}
 
-\NewDocumentEnvironment{LWR at print@BlockClass}{o m}{}{}%
+\NewDocumentEnvironment{LWR at print@BlockClass}{o D(){} m}{}{}%
 
-\NewDocumentEnvironment{LWR at HTML@BlockClass}{o m}%
-    {\LWR at htmldivclass[#1]{#2}}
-    {\LWR at htmldivclassend{#2}}
+\NewDocumentEnvironment{LWR at HTML@BlockClass}{o D(){} m}%
+    {\LWR at htmldivclass[#1](#2){#3}}%
+    {\LWR at htmldivclassend{#3}}
 
 \LWR at formattedenv{BlockClass}
 \end{warpHTML}
@@ -22914,11 +23082,15 @@
 \NewDocumentCommand{\LWR at print@InlineClass}{D{(}{)}{} o m +m}{#4}%
 
 \NewDocumentCommand{\LWR at HTML@InlineClass}{D{(}{)}{} o m +m}{%
+\LWR at traceinfo{LWR at HTML@InlineClass #3}%
 \ifbool{FormatWP}{%
+    \LWR at traceinfo{LWR at HTML@InlineClass: FormatWP}%
     \LWR at htmlspanclass[#1]{#3}{#4}%
 }{%
+    \LWR at traceinfo{LWR at HTML@InlineClass: not FormatWP}%
     \LWR at htmlspanclass[#2]{#3}{#4}%
 }%
+\LWR at traceinfo{LWR at HTML@InlineClass: done}%
 }
 
 \LWR at formatted{InlineClass}
@@ -22926,7 +23098,8 @@
 %    \end{macrocode}
 
 
-% \begin{environment}{LWR at BlockClassWP} \marg{WPstyle} \marg{HTMLstyle} \marg{class} \quad
+% \begin{environment}{LWR at BlockClassWP}
+%       \marg{WPstyle} \marg{HTMLstyle} \parg{\ARIA\ role} \marg{class} \quad
 % Low-level interface for \element{div} classes with an automatic float ID.
 % These are often used when |\ifbool{FormatWP}|.
 %
@@ -22937,11 +23110,12 @@
 % \changes{v0.47}{2018/01/26}{Fix: Line wrap at \HTML\ hyphen.}
 % \changes{v0.57}{2018/05/28}{Improved print/\HTML\ output selection.}
 % \changes{v0.63}{2018/11/24}{Fix for \pkg{xeCJK}.}
+% \changes{v0.896}{2021/03/05}{Added \ARIA\ role.}
 %
 % \codeprint
 %    \begin{macrocode}
 \begin{warpprint}
-\NewDocumentEnvironment{LWR at BlockClassWP}{m m m}{}{}%
+\NewDocumentEnvironment{LWR at BlockClassWP}{m m D(){} m}{}{}
 \end{warpprint}
 %    \end{macrocode}
 % \end{environment}
@@ -22949,8 +23123,9 @@
 % \codehtml
 %    \begin{macrocode}
 \begin{warpHTML}
-\NewDocumentEnvironment{LWR at print@LWR at BlockClassWP}{m m m}{}{}%
-\NewDocumentEnvironment{LWR at HTML@LWR at BlockClassWP}{m m m}%
+\NewDocumentEnvironment{LWR at print@LWR at BlockClassWP}{m m D(){} m}{}{}%
+
+\NewDocumentEnvironment{LWR at HTML@LWR at BlockClassWP}{m m D(){} m}%
 {%
 \LWR at stoppars%
 \ifbool{FormatWP}%
@@ -22960,22 +23135,24 @@
 % \changes{v0.65}{2018/12/21}{Fix space between class and id.}
 %    \begin{macrocode}
     \LWR at htmltag{%
-        div class=\textquotedbl#3\textquotedbl\ % space
+        div class=\textquotedbl#4\textquotedbl\ % space
         id=\textquotedbl%
             \LWR at print@mbox{autoidWP-\arabic{LWR at thisautoidWP}}%
         \textquotedbl%
+        \ifblank{#3}{}{ role=\textquotedbl#3\textquotedbl}%
         \ifblank{#1}{}{ style=\textquotedbl#1\textquotedbl}%
     }%
 }% FormatWP
 {% not FormatWP
     \LWR at htmltag{%
-        div class=\textquotedbl#3\textquotedbl%
+        div class=\textquotedbl#4\textquotedbl%
+        \ifblank{#3}{}{ role=\textquotedbl#3\textquotedbl}%
         \ifblank{#2}{}{ style=\textquotedbl#2\textquotedbl}%
     }%
 }% not FormatWP
 \LWR at startpars%
 }
-{\LWR at htmldivclassend{#3}}
+{\LWR at htmldivclassend{#4}}
 
 \LWR at formattedenv{LWR at BlockClassWP}
 \end{warpHTML}
@@ -23866,14 +24043,30 @@
 % \changes{v0.36}{2017/08/15}{Extra \protect\HTML\ source space after paragraphs.}
 % \changes{v0.36}{2017/08/16}{Force \protect\HTML\ superscripts.}
 % \changes{v0.68}{2019/03/04}{Factored for multiple foot boxes.}
+% \changes{v0.896}{2021/04/04}{Fix: \ctr{autopage} references in footnotes.}
 %
 %    \begin{macrocode}
 \long\def\LWR@@footnotetext#1#2{%
 \LWR at traceinfo{LWR at footnotetext}%
-\global\setbox\csname #2\endcsname=\vbox{%
 %    \end{macrocode}
-% Add to any current footnotes:
+%
+% Perhaps generate an autopage in the text to link a citation backreference
+% closer to its usage.
 %    \begin{macrocode}
+\LWR at newautopagelabel{page}%
+%    \end{macrocode}
+%
+% Locally disable auto page labels inside the footnote text.
+% Footnotes are accumulated in the current page before finally being placed
+% in a potentially later page, so the aotopages would be incorrect.
+%    \begin{macrocode}
+\begingroup%
+\let\LWR at newautopagelabel\LWR at null@newautopagelabel%
+%    \end{macrocode}
+%
+% Take the existing footnote box and add the new content:
+%    \begin{macrocode}
+\global\setbox\csname #2\endcsname=\vbox{%
     \unvbox\csname #2\endcsname%
 %    \end{macrocode}
 % Remember the footnote number for \cs{ref}:
@@ -23929,6 +24122,7 @@
 %    \begin{macrocode}
     \color at endgroup%
 }% vbox
+\endgroup%
 %    \end{macrocode}
 % Paragraph handling:
 % \changes{v0.52}{2018/03/28}{Fix: Paragraph handling.}
@@ -23940,7 +24134,7 @@
 
 % \begin{macro}{\LWR at footnotetext} \marg{text}
 %    \begin{macrocode}
-\long\def\LWR at footnotetext#1{\LWR@@footnotetext{#1}{LWR at footnotebox}}
+\long\def\LWR at footnotetext#1{\LWR@@footnotetext{#1}{LWR at footnotebox}}%
 %    \end{macrocode}
 % \end{macro}
 %
@@ -24034,11 +24228,20 @@
 %
 %
 % \begin{macro}{\LWR@@printpendingfootnotes} \marg{footnote counter name}
+% \changes{v0.896}{2021/03/05}{Added \ARIA\ role.}
+% \changes{v0.896}{2021/03/26}{Fix: Backref to footnote.}
 %    \begin{macrocode}
 \newcommand*{\LWR@@printpendingfootnotes}[1]{%
 \expandafter\ifvoid\csname LWR@#1box\endcsname\else
     \LWR at forcenewpage
-    \begin{BlockClass}{footnotes}
+    \begin{BlockClass}(note){footnotes}%
+%    \end{macrocode}
+%
+% Create a new autopage in case citation back references occur inside the footnotes:
+%    \begin{macrocode}
+    \LWR at newautopagelabel{page}%
+%    \end{macrocode}
+%    \begin{macrocode}
     \null
     \unvbox\csuse{LWR@#1box}
     \setbox\csuse{LWR@#1box}=\vbox{}
@@ -24085,11 +24288,12 @@
 % \begin{macro}{\LWR at printpendingmpfootnotes}
 % Enclose the minipage footnotes in a class, print, then clear.
 % \changes{v0.45}{2018/01/10}{Added.}
+% \changes{v0.896}{2021/03/05}{Added \ARIA\ role.}
 %    \begin{macrocode}
 \newcommand*{\LWR at printpendingmpfootnotes}{%
 \ifvoid\LWR at mpfootnotes\else
     \LWR at forcenewpage
-    \begin{BlockClass}{footnotes}
+    \begin{BlockClass}(note){footnotes}%
     \null
     \unvbox\LWR at mpfootnotes
     \setbox\LWR at mpfootnotes=\vbox{}
@@ -24122,17 +24326,17 @@
 %
 % \changes{v0.21}{2017/02/11}{Fixed source listing.}
 % \changes{v0.42}{2017/10/26}{If \progcode{FormatWP} emulate a wrapfig.}
-%
+% \changes{v0.896}{2021/03/05}{Added \ARIA\ role.}
 %    \begin{macrocode}
 \renewcommand{\marginpar}[2][]{%
 \ifbool{FormatWP}%
 {%
-\begin{LWR at BlockClassWP}{width:2in; float:right; margin:10pt}{}{marginblock}
+\begin{LWR at BlockClassWP}{width:2in; float:right; margin:10pt}{}(note){marginblock}%
 #2
-\end{LWR at BlockClassWP}
+\end{LWR at BlockClassWP}%
 }%
 {%
-    \LWR at htmlspanclass{marginpar}{#2}%
+    \LWR at htmlspanclass(note){marginpar}{#2}%
 }%
 }
 %    \end{macrocode}
@@ -24149,17 +24353,17 @@
 % \changes{v0.42}{2017/10/26}{If \progcode{FormatWP} emulate a wrapfig.}
 % \changes{v0.44}{2017/11/10}{Added.}
 % \changes{v0.73}{2019/06/25}{Fix: Paragraph tags.}
-%
+% \changes{v0.896}{2021/03/05}{Added \ARIA\ role.}
 %    \begin{macrocode}
 \newcommand{\marginparBlock}[2][]{%
 \LWR at stoppars%
 \ifbool{FormatWP}%
 {%
-    \begin{LWR at BlockClassWP}{width:2in; float:right; margin:10pt}{}{marginblock}
+    \begin{LWR at BlockClassWP}{width:2in; float:right; margin:10pt}{}(note){marginblock}%
     #2
     \end{LWR at BlockClassWP}
 }{%
-    \begin{BlockClass}[width:2in; float:right; margin:10pt]{marginparblock}
+    \begin{BlockClass}[width:2in; float:right; margin:10pt](note){marginparblock}%
     #2
     \end{BlockClass}
 }%
@@ -24213,6 +24417,122 @@
 
 
 
+% \section{Tracking internal cross references}
+%
+% Cross references are generated using the \PDF\ file's page number during
+% \LaTeX\ compilation.
+% Internal labels are generated which include these page numbers in the label.
+%
+%
+% \DescribeFile{*_html.aux}
+% A new entry in the \filenm{*_html.aux} file is used to help
+% cross-references:
+% \begin{sourceverb}
+% \newlabel{autopage-<nnn>}{{<x>}{<y>}}
+% \end{sourceverb}
+%
+%
+% \DescribeCounter{LWR at currentautosecpage} Records the page number when the section
+%   was created.  (If a math expression is included in the section name,
+%   and \SVG\ math is used, the corresponding \env{lateximage} will cause the
+%   page number to change by the time the following autosec label is created,
+%   thus the initial page number is recorded here.)
+%   \ctr{LWR at currentautosecfloatpage} is updated
+%   more often than \ctr{LWR at currentautosecpage}.
+% \changes{v0.43}{2017/11/01}{\ctr{LWR at currentautosecpage}: Added.}
+% \changes{v0.66}{2019/01/28}{\ctr{LWR at currentautosecpage}: Fix for \LOF, \LOT float in home page.}
+%    \begin{macrocode}
+\newcounter{LWR at currentautosecpage}
+\setcounter{LWR at currentautosecpage}{1}
+%    \end{macrocode}
+%
+%
+% \DescribeCounter{LWR at currentautosecfloatpage}
+% The \HTML\ output's \PDF\ page number at the start of a new \HTML\ file, section,
+% or float.
+% Updated more often than \ctr{LWR at currentautosecpage}, such as when a new float occurs.
+% Used only for table of contents, list of figures, list of tables,
+% but not for general cross references such as \cs{label}, citation backlinks, etc.
+%
+% \cs{LWRsetnextfloat} is written with this and the |autoid|
+% by the modified \cs{addcontentsline} just before each float's entry.
+%    \begin{macrocode}
+\newcounter{LWR at currentautosecfloatpage}
+\setcounter{LWR at currentautosecfloatpage}{1}
+%    \end{macrocode}
+%
+%
+% \DescribeCounter{LWR at previousautopagelabel} Remembers which autopage label
+% was most recently generated.  Used to avoid duplicates.
+%    \begin{macrocode}
+\newcounter{LWR at previousautopagelabel}
+\setcounter{LWR at previousautopagelabel}{-1}
+%    \end{macrocode}
+%
+%
+% \begin{macro}{\LWR at newautopagelabel} \marg{pagenumber counter}
+% \changes{v0.48}{2018/02/11}{Fix: \TOC, \LOF, \LOT\ links.}
+% \changes{v0.72}{2019/06/05}{Fix: References for \pkg{xr}, \pkg{xr-hyper}.}
+% \changes{v0.896}{2021/03/26}{Fix: Refs if page changed.}
+%
+% \cs{BaseJobname} is added to the label in case \pkg{xr} or \pkg{xr-hyper} are used.
+%    \begin{macrocode}
+\newcommand*{\LWR at newautopagelabel}[1]{%
+%    \end{macrocode}
+%
+% No action if this autopage label has already been defined:
+%    \begin{macrocode}
+\ifnumequal{\value{LWR at previousautopagelabel}}{\value{page}}%
+    {}%
+%    \end{macrocode}
+%
+% If the \PDF\ page has changed, create a label using the desired counter.
+%
+% If the counter is \ctr{LWR at currentautosecpage}, that was the page number
+% when the section generation began,
+% but the current \PDF\ page may be different by now
+% if the section name had an \SVG\ image, such as \SVG\ math.
+% To allow the cross-reference to point just after the section heading, the
+% label must be made after the section heading is complete, which may have
+% generated a new \PDF\ page.
+% Thus, the label is made with the given counter, which may be the \PDF\ page
+% number where the section heading began,
+% then if the \PDF\ page number has changed,
+% another label is made for the current page number.
+%    \begin{macrocode}
+    {%
+        \label{\BaseJobname-autopage-\csuse{the#1}}%
+%    \end{macrocode}
+%
+% If there are intervening pages, such as an \SVG\ image,
+% define another label for the new page:
+%    \begin{macrocode}
+        \ifnumequal{\value{#1}}{\value{page}}%
+            {}%
+            {\label{\BaseJobname-autopage-\csuse{thepage}}}%
+%    \end{macrocode}
+%
+% Remember the latest autopage label:
+%    \begin{macrocode}
+        \setcounter{LWR at previousautopagelabel}{\value{page}}%
+    }%
+}
+%    \end{macrocode}
+% \end{macro}
+
+% \begin{macro}{\LWR at null@newautopagelabel} \marg{pagenumber counter}
+% \changes{v0.896}{2021/04/04}{Fix: Refs in footnotes.}
+%
+% Inside a footnote, the page numbers will be incorrect,
+% so this is nullified.
+%    \begin{macrocode}
+\newcommand*{\LWR at null@newautopagelabel}[1]{}
+%    \end{macrocode}
+% \end{macro}
+
+
+
+
 % \section{Splitting \HTML\ files}
 %
 % \begin{itemize}
@@ -24559,40 +24879,6 @@
 % \end{macro}
 
 
-% \DescribeCounter{LWR at previousautopagelabel} Remembers which autopage label
-% was most recently generated.  Used to avoid duplicates.
-%    \begin{macrocode}
-\newcounter{LWR at previousautopagelabel}
-\setcounter{LWR at previousautopagelabel}{-1}
-%    \end{macrocode}
-
-
-% \DescribeFile{*_html.aux}
-% A new entry in the \filenm{*_html.aux} file is used to help
-% cross-references:
-% \begin{sourceverb}
-% \newlabel{autopage-<nnn>}{{<x>}{<y>}}
-% \end{sourceverb}
-% 
-% \begin{macro}{\LWR at newautopagelabel} \marg{pagenumber counter}
-% \changes{v0.48}{2018/02/11}{Fix: \TOC, \LOF, \LOT\ links.}
-% \changes{v0.72}{2019/06/05}{Fix: References for \pkg{xr}, \pkg{xr-hyper}.}
-%
-% \cs{BaseJobname} is added to the label in case \pkg{xr} or \pkg{xr-hyper} are used.
-%    \begin{macrocode}
-\newcommand*{\LWR at newautopagelabel}[1]{%
-\ifnumequal{\value{LWR at previousautopagelabel}}{\value{page}}%
-{}% no action if this autopage label has already been defined
-{%
-    \label{\BaseJobname-autopage-\arabic{#1}}%
-    \setcounter{LWR at previousautopagelabel}{\value{page}}
-}%
-}
-%    \end{macrocode}
-% \end{macro}
-
-
-
 % \subsection{Sanitizing expressions for \HTML}
 
 % Math expressions are converted to |lateximage|s,
@@ -25119,9 +25405,10 @@
 % At the bottom of the ending file:
 %
 % \changes{v0.65}{2018/12/18}{Improved \CSS\ for page layout.}
+% \changes{v0.896}{2021/03/04}{Added \element{main}.}
 %    \begin{macrocode}
 \LWR at htmlelementclassend{section}{textbody}
-\LWR at htmlelementclassend{div}{bodycontainer}
+\LWR at htmlelementclassend{main}{bodycontainer}
 \LWR at htmlelementclassend{div}{bodyandsidetoc}
 
 \LWR at printpendingfootnotes
@@ -25250,11 +25537,12 @@
 
 %    \end{macrocode}
 %
-% Track the \PDF\ page numbers of the \HTML\ output:
+% Track the \PDF\ page numbers of the \HTML\ output.
+% This is updated more frequently than \ctr{LWR at currentautosecpage}.
 % \changes{v0.48}{2018/02/11}{Fix: \TOC, \LOF, \LOT\ links.}
 %    \begin{macrocode}
-\setcounter{LWR at latestautopage}{\value{page}}%
-\LWR at newautopagelabel{LWR at latestautopage}%
+\setcounter{LWR at currentautosecfloatpage}{\value{page}}%
+\LWR at newautopagelabel{LWR at currentautosecfloatpage}%
 %    \end{macrocode}
 %
 %
@@ -25305,8 +25593,9 @@
 % Start of the \element{textbody}:
 % \changes{v0.65}{2018/12/18}{Improved \CSS\ for page layout.}
 % \changes{v0.84}{2020/04/24}{Added prev/next links.}
+% \changes{v0.896}{2021/03/04}{Added \element{main}.}
 %    \begin{macrocode}
-\LWR at htmlelementclass{div}{bodycontainer}
+\LWR at htmlelementclass{main}{bodycontainer}
 \LWR at htmlelementclass{section}{textbody}
 %    \end{macrocode}
 %
@@ -25664,20 +25953,6 @@
 % \end{macro}
 %
 %
-% \DescribeCounter{LWR at currentautosec} Records the page number when the section
-%   was created.  (If a math expression is included in the section name,
-%   and \SVG\ math is used, the corresponding \env{lateximage} will cause the
-%   page number to change by the time the following autosec label is created,
-%   thus the initial page number is recorded here.)
-% \changes{v0.43}{2017/11/01}{\ctr{LWR at currentautosec}: Added.}
-% \changes{v0.66}{2019/01/28}{\ctr{LWR at currentautosec}: Fix for \LOF, \LOT float in home page.}
-%    \begin{macrocode}
-\newcounter{LWR at currentautosec}
-\setcounter{LWR at currentautosec}{1}
-%    \end{macrocode}
-%
-%
-%
 % \begin{macro}{\LWR at section} * \oarg{TOC name} \marg{name} \marg{sectiontype}
 %
 % \changes{v0.20}{2017/01/09}{Combined higher-level sections together into files.}
@@ -25819,7 +26094,7 @@
 %    \end{macrocode}
 % \changes{v0.43}{2017/11/01}{Fix: Math in section name.}
 %    \begin{macrocode}
-\setcounter{LWR at currentautosec}{\value{page}}%
+\setcounter{LWR at currentautosecpage}{\value{page}}%
 %    \end{macrocode}
 %
 % Check if starred:
@@ -25960,6 +26235,12 @@
 % Generate a \LaTeX{} label.
 %
 % Track the \PDF\ page numbers of the \HTML\ output.
+% A new autopage label may be generated for \ctr{LWR at currentautosecpage}
+% for the start of the section,
+% and also for the current page if it is different due to an \SVG\ image
+% in the section name.
+% Also, the final page after the section has been created is updated
+% in \ctr{LWR at currentautosecfloatpage}.
 %
 % \changes{v0.43}{2017/11/01}{Fix: Math in section name.}
 % \changes{v0.48}{2018/02/11}{Fix: \TOC, \LOF, \LOT\ links.}
@@ -25967,8 +26248,8 @@
 % \changes{v0.66}{2019/02/02}{Improved \HTML\ formatting.}
 %    \begin{macrocode}
 \LWR at traceinfo{LWR at section: about to create the LaTeX label}%
-\setcounter{LWR at latestautopage}{\value{page}}%
-\LWR at newautopagelabel{LWR at currentautosec}\LWR at orignewline%
+\setcounter{LWR at currentautosecfloatpage}{\value{page}}%
+\LWR at newautopagelabel{LWR at currentautosecpage}\LWR at orignewline%
 %    \end{macrocode}
 %
 % If this is the first section found in this file,
@@ -26665,9 +26946,10 @@
 }%
 %    \end{macrocode}
 % \changes{v0.65}{2018/12/18}{Improved \CSS\ for page layout.}
+% \changes{v0.896}{2021/03/04}{Added \element{main}.}
 %    \begin{macrocode}
 \LWR at htmlelementclass{div}{bodywithoutsidetoc}
-\LWR at htmlelementclass{div}{bodycontainer}
+\LWR at htmlelementclass{main}{bodycontainer}
 \LWR at traceinfo{LWR at lwarpStart: Generating textbody.}
 \LWR at htmlelementclass{section}{textbody}
 %    \end{macrocode}
@@ -26732,11 +27014,17 @@
 % ^^A %    \end{macrocode}
 %
 %
-% First autopage label in case a figure occurs early.
+% First autopage label in case a figure occurs early before the first section:
+% A new autopage label may be generated for \ctr{LWR at currentautosecpage}
+% for the start of the section,
+% and also for the current page if it is different due to an \SVG\ image
+% in the section name.
+% Also, the final page after the section has been created is updated
+% in \ctr{LWR at currentautosecfloatpage}.
 % \changes{v0.66}{2019/01/28}{Fix: \TOC, \LOF, \LOT\ links.}
 %    \begin{macrocode}
-\setcounter{LWR at latestautopage}{\value{page}}%
-\LWR at newautopagelabel{LWR at currentautosec}%
+\setcounter{LWR at currentautosecfloatpage}{\value{page}}%
+\LWR at newautopagelabel{LWR at currentautosecpage}%
 %    \end{macrocode}
 %
 %    \begin{macrocode}
@@ -26790,20 +27078,23 @@
 \LWR at closeprevious{finished}
 %    \end{macrocode}
 % At the bottom of the ending file:
-
+%
+% Print any pending footnotes:
+% \changes{v0.896}{2021/03/14}{Fix: Footnotes at end of document.}
+%    \begin{macrocode}
+\LWR at printpendingfootnotes
+%    \end{macrocode}
+%
 % Close the textbody:
 % \changes{v0.65}{2018/12/18}{Improved \CSS\ for page layout.}
 % \changes{v0.84}{2020/04/24}{Added prev/next links.}
+% \changes{v0.896}{2021/03/04}{Added \element{main}.}
 %    \begin{macrocode}
 \label{\BaseJobname-autofile-last}
 \LWR at htmlelementclassend{section}{textbody}
-\LWR at htmlelementclassend{div}{bodycontainer}
+\LWR at htmlelementclassend{main}{bodycontainer}
 \LWR at htmlelementclassend{div}{bodyandsidetoc}
 %    \end{macrocode}
-% Print any pending footnotes:
-%    \begin{macrocode}
-\LWR at printpendingfootnotes
-%    \end{macrocode}
 %
 % Create the footer if not \EPUB\:
 % \changes{v0.84}{2020/04/24}{Fix: No footer for \EPUB}
@@ -27360,7 +27651,9 @@
 %
 %    \begin{macrocode}
 \LWR at setfootnoteseries%
-\def\@makefnmark{\textsuperscript{\thefootnote}}
+\def\@makefnmark{%
+    \textsuperscript{\thefootnote}%
+}
 %    \end{macrocode}
 %
 % \begin{center}
@@ -28107,6 +28400,12 @@
 %    \begin{macrocode}
 \renewcommand{\@begintheorem}[2]{%
 \LWR at forcenewpage
+%    \end{macrocode}
+% \changes{v0.896}{2021/03/14}{Intersperse footnotes.}
+%    \begin{macrocode}
+    \LWR at printpendingfootnotes%                   lwarp
+%    \end{macrocode}
+%    \begin{macrocode}
 \BlockClass{theoremcontents}
 \trivlist
 \item[\InlineClass{theoremlabel}{#1\ #2\ }]\itshape
@@ -28137,6 +28436,12 @@
 %    \begin{macrocode}
 \renewcommand*{\@endtheorem}{%
 \endtrivlist
+%    \end{macrocode}
+% \changes{v0.896}{2021/03/14}{Intersperse footnotes.}
+%    \begin{macrocode}
+    \LWR at printpendingfootnotes%                   lwarp
+%    \end{macrocode}
+%    \begin{macrocode}
 \endBlockClass% theoremcontents
 }
 %    \end{macrocode}
@@ -28260,7 +28565,7 @@
 % \changes{v0.48}{2018/02/02}{Honors \cs{makelabel}.}
 %    \begin{macrocode}
 \def\LWR at HTML@item[#1]{%
-\LWR at traceinfo{@item}
+\LWR at traceinfo{@item}%
   \if at noparitem
     \@donoparitem
   \else
@@ -28517,12 +28822,55 @@
 % \end{macro}
 
 % \begin{environment}{description} \oarg{options}
+%
+% Footnotes are modified to correctly parse optional arguments.
+% \changes{v0.896}{2021/03/14}{Fix: Footnotes inside \env{description} label.}
 %    \begin{macrocode}
 \newcommand*{\LWR at descriptionstart}{%
-\renewcommand*{\LWR at printcloselist}{\LWR at printclosedescription}
-\renewcommand*{\LWR at printopenlist}{dl}
-\let\item\LWR at descitem%
-\LWR at nulllistfills%
+    \renewcommand*{\LWR at printcloselist}{\LWR at printclosedescription}
+    \renewcommand*{\LWR at printopenlist}{dl}
+    \let\item\LWR at descitem%
+    \LWR at nulllistfills%
+%    \end{macrocode}
+%
+% Footnotes are redefined to process optional arguments inside the \env{description}
+% label.
+% A \cs{footnote} is dropped, as it is in print mode.
+% Using the optional arguments does not work in print mode,
+% but for some reason they must be accepted as done here to work correctly
+% even without the optional arguments.
+%    \begin{macrocode}
+    \renewcommand{\footnote}[2][]{%
+        \ifblank{##1}%
+        {%
+            \stepcounter\@mpfn
+            \protected at xdef\@thefnmark{\thempfn}%
+            \@footnotemark%\@footnotetext
+        }%
+        {%
+            \begingroup
+            \csname c@\@mpfn\endcsname ##1\relax
+            \unrestored at protected@xdef\@thefnmark{\thempfn}%
+            \endgroup
+            \@footnotemark%\@footnotetext
+        }%
+    }%
+    %
+    \renewcommand{\footnotemark}[1][]{%
+        \ifblank{##1}%
+        {%
+            \stepcounter{footnote}%
+            \protected at xdef\@thefnmark{\thefootnote}%
+            \@footnotemark%
+        }%
+        {%
+            \begingroup%
+            \c at footnote ##1\relax%
+            \unrestored at protected@xdef\@thefnmark{\thefootnote}%
+            \endgroup%
+            \@footnotemark%
+        }%
+    }%
 }
 %    \end{macrocode}
 % \end{environment}
@@ -29416,7 +29764,8 @@
         \LWR at setexparray{LWR at colatspec}%
             {\arabic{LWR at tabletotalLaTeXcols}}%
             {\expandafter\@firstofone\LWR at colparameter}%
-        \LWR at traceinfo{at \arabic{LWR at tabletotalLaTeXcols}: %
+        \LWR at traceinfo{at \arabic{LWR at tabletotalLaTeXcols}%
+        : % space
         \LWR at getexparray{LWR at colatspec}{\arabic{LWR at tabletotalLaTeXcols}}}%
     }%
     \let\LWR at colparameter\relax%
@@ -32690,7 +33039,8 @@
 %   \item [\cs{newlabel}:] Unchanged.  When the |.aux| file is read, sets \cs{r@<label>@lwarp}.
 %   \item [\cs{r@<label>@lwarp}:] Set to |{{section_name}{file_name}{depth}{number}}|:
 %		\begin{description}
-%		\item [\cs{LWR at nameref}:] The section name for this label.
+%		\item [\cs{LWR at nameref}:] The section or object name for this label.
+%       \item [\cs{LWR at currentautosecpageref}:] The \ctr{LWR at currentautosecpage} for this label.
 %		\item [\cs{LWR at htmlfileref}:] The filenumber or name for this label.
 %		\item [\cs{LWR at lateximagedepthref}:] The |lateximagedepth| for this label.
 %		\item [\cs{LWR at lateximagenumberref}:] The |lateximagenumber| for this label.
@@ -32830,12 +33180,23 @@
 % \changes{v0.66}{2019/01/27}{No longer use \pkg{zref}.}
 %    \begin{macrocode}
 \newcommand*{\LWR at nameref}[1]{%
-    \expandafter\LWR at setref\csname r@#1 at lwarp\endcsname\LWR at firstoffour{#1}%
+    \expandafter\LWR at setref\csname r@#1 at lwarp\endcsname\LWR at firstoffive{#1}%
 }
 %    \end{macrocode}
 % \end{macro}
 %
 %
+% \begin{macro}{\LWR at currentautosecpageref} \marg{label}
+% Returns the \ctr{LWR at currentautosecpage} for this label:
+% \changes{v0.896}{2021/04/05}{Added.}
+%    \begin{macrocode}
+\newcommand*{\LWR at currentautosecpageref}[1]{%
+    \expandafter\LWR at setref\csname r@#1 at lwarp\endcsname\LWR at secondoffive{#1}%
+}
+%    \end{macrocode}
+% \end{macro}
+%
+%
 % \begin{macro}{\LWR at htmlfileref} \marg{label}
 % Returns the file number or name for this label:
 % \changes{v0.24}{2017/03/13}{Fix: Index links while \cs{tracinglwarp}.}
@@ -32842,7 +33203,7 @@
 % \changes{v0.66}{2019/01/27}{No longer use \pkg{zref}.}
 %    \begin{macrocode}
 \newcommand*{\LWR at htmlfileref}[1]{%
-    \expandafter\LWR at setref\csname r@#1 at lwarp\endcsname\LWR at secondoffour{#1}%
+    \expandafter\LWR at setref\csname r@#1 at lwarp\endcsname\LWR at thirdoffive{#1}%
 }
 %    \end{macrocode}
 % \end{macro}
@@ -32853,7 +33214,7 @@
 % \changes{v0.66}{2019/01/27}{No longer use \pkg{zref}.}
 %    \begin{macrocode}
 \newcommand*{\LWR at lateximagedepthref}[1]{%
-    \expandafter\LWR at setref\csname r@#1 at lwarp\endcsname\LWR at thirdoffour{#1}%
+    \expandafter\LWR at setref\csname r@#1 at lwarp\endcsname\LWR at fourthoffive{#1}%
 }
 %    \end{macrocode}
 % \end{macro}
@@ -32865,7 +33226,7 @@
 % \changes{v0.66}{2019/01/27}{No longer use \pkg{zref}.}
 %    \begin{macrocode}
 \newcommand*{\LWR at lateximagenumberref}[1]{%
-    \expandafter\LWR at setref\csname r@#1 at lwarp\endcsname\LWR at fourthoffour{#1}%
+    \expandafter\LWR at setref\csname r@#1 at lwarp\endcsname\LWR at fifthoffive{#1}%
 }
 %    \end{macrocode}
 % \end{macro}
@@ -32874,6 +33235,7 @@
 % \begin{macro}{\LWR at write@lwarplabel} \marg{label}
 % Sanitize the name and then creates the label:
 % \changes{v0.66}{2019/01/27}{No longer use \pkg{zref}.}
+% \changes{v0.896}{2021/04/05}{Added \cs{LWR at currentautosecpage}.}
 %    \begin{macrocode}
 \newcommand*{\LWR at write@lwarplabel}[1]{%
     \LWR at traceinfo{LWR at write@lwarplabel !#1!}%
@@ -32883,6 +33245,7 @@
             {%
                 \string\newlabel{#1 at lwarp}{%
                     {\@currentlabelname}%
+                    {\theLWR at currentautosecpage}%
                     {%
                         \ifbool{FileSectionNames}%
                             {\LWR at thisfilename}%
@@ -33017,8 +33380,9 @@
 % and also patches \pkg{memoir}.
 %
 % \changes{v0.84}{2020/04/05}{Removed optional args.}
+% \changes{v0.896}{2021/04/08}{Revert to a simple \cs{newcommand*}.}
 %    \begin{macrocode}
-\NewDocumentCommand{\LWR at new@label}{m}{%
+\newcommand*{\LWR at new@label}[1]{%
     \LWR at traceinfo{LWR at new@label: starting}%
     \LWR at traceinfo{LWR at new@label: !#1!}%
 % \@bsphack%
@@ -33027,7 +33391,7 @@
 %    \begin{macrocode}
     \LWR at orig@label{#1}%
 %    \end{macrocode}
-% Create a special label which holds the section number,
+% Create a special label which holds the section number, section name,
 % |LWR at htmlfilenumber|, |LWR at lateximagedepth|, and |LWR at lateximagenumber|:
 %    \begin{macrocode}
     \LWR at traceinfo{%
@@ -33190,6 +33554,24 @@
 \LWR at formatted{ref}
 %    \end{macrocode}
 %
+%
+% \begin{macro}{\LWR at refwithsection}
+% \changes{v0.896}{2021/04/21}{Added.}
+%    \begin{macrocode}
+\NewDocumentCommand{\LWR at refwithsection}{s m}{%
+    \LWR at traceinfo{LWR at refwithsection !#2!}%
+    \IfBooleanTF{#1}%
+        {\LWR at print@ref{\BaseJobname-autopage-\LWR at currentautosecpageref{#2}}}%
+        {%
+            \LWR at startref{#2}%
+            \LWR at print@ref{\BaseJobname-autopage-\LWR at currentautosecpageref{#2}}%
+            \LWR at htmltag{/a}%
+        }%
+}
+%    \end{macrocode}
+% \end{macro}
+%
+%
 % For \brand{MathJax}:
 % \changes{v0.88}{2020/07/05}{Added \brand{MathJax}.}
 %    \begin{macrocode}
@@ -33280,9 +33662,10 @@
 % \begin{macro}{\@currentHref} Added to support \pkg{backref}.
 % \changes{v0.45}{2018/01/14}{Added.}
 % \changes{v0.84}{2020/04/07}{\pkg{backref}: Fixed from \pkg{lwarp} v0.72 changes.}
+% \changes{v0.896}{2021/04/05}{\pkg{backref}: Improved back refs.}
 %    \begin{macrocode}
 \AtBeginDocument{
-    \def\@currentHref{\BaseJobname-autopage-\theLWR at currentautosec}
+    \def\@currentHref{\BaseJobname-autopage-\theLWR at previousautopagelabel}%
 }
 %    \end{macrocode}
 % \end{macro}
@@ -33471,8 +33854,8 @@
 % \end{macro}
 
 
-% \begin{macro}{\LWR at subinlineimage} \marg{\element{alt} tag} \marg{class}
-%	\marg{filename} \marg{extension} \marg{CSS style}
+% \begin{macro}{\LWR at subinlineimage} \marg{1: \element{alt} tag} \marg{2: class}
+%	\marg{3: filename} \marg{4: extension} \marg{5: \CSS\ style} \marg{6: \ARIA\ role}
 %
 % Factored from \env{lateximage}.
 %
@@ -33480,13 +33863,18 @@
 % \changes{v0.66}{2019/02/02}{Improved \HTML\ formatting.}
 % \changes{v0.74}{2019/08/20}{Add \cs{ThisAltText}.}
 % \changes{v0.895}{2021/01/14}{Improved \HTML\ quotes.}
+% \changes{v0.896}{2021/03/05}{Added \ARIA\ role.}
 %    \begin{macrocode}
-\newcommand*{\LWR at subinlineimage}[5]{%
+\newcommand*{\LWR at subinlineimage}[6]{%
+    \ifblank{#6}%
+        {\renewcommand*{\LWR at tempone}{}}
+        {\renewcommand*{\LWR at tempone}{role="#6"\LWR at indentHTML}}
     \ifblank{#1}%
     {%
         \LWR at htmltag{img \LWR at indentHTML
             src=\textquotedbl#3.#4\textquotedbl \LWR at indentHTML
             alt=\textquotedbl#3\textquotedbl \LWR at indentHTML
+            \LWR at tempone
             style=\textquotedbl#5\textquotedbl \LWR at indentHTML
             class=\textquotedbl#2\textquotedbl \LWR at orignewline
         }%
@@ -33495,6 +33883,7 @@
         \LWR at htmltag{img \LWR at indentHTML
             src=\textquotedbl#3.#4\textquotedbl \LWR at indentHTML
             alt=\textquotedbl#1\textquotedbl \LWR at indentHTML
+            \LWR at tempone
             style=\textquotedbl#5\textquotedbl \LWR at indentHTML
             class=\textquotedbl#2\textquotedbl \LWR at orignewline
         }%
@@ -33899,7 +34288,7 @@
 
 % When a new \HTML\ file is marked in the \LaTeX\ \PDF\ file,
 % or at the start of a new section,
-% the \LaTeX\ page number at that point is stored in |LWR at latestautopage|,
+% the \LaTeX\ \PDF\ page number at that point is stored in \ctr{LWR at currentautosecfloatpage},
 % (and the associated filename is remembered by the special \LaTeX\ labels).
 % This page number is used to generate an |autopage| \HTML\ \element{id}
 % in the \HTML\ output at the start of the new \HTML\ file or section.
@@ -33906,13 +34295,13 @@
 % Meanwhile, there is a float counter used to generate an \HTML\ |autoid|
 % \element{id} at the start of the float itself in the \HTML\ file.
 % The |autopage| and |autoid| values to use for each float are written to the
-% |.lof|, etc. files just before each float's entry.  These values are used
+% \filenm{.lof}, etc. files just before each float's entry.  These values are used
 % by \cs{l at figure}, etc. to create the \HTML\ links in the List of Figures, etc.
 %
 % \DescribeCounter{LWR at nextautoid} Tracks |autoid| for floats.
 % \DescribeCounter{LWR at nextautopage} Tracks |autopage| for floats.
 %
-% These are updated per float as the |.lof|, |.lot| file is read.
+% These are updated per float as the \filenm{.lof}, \filenm{.lot} file is read.
 %    \begin{macrocode}
 \newcounter{LWR at nextautoid}
 \newcounter{LWR at nextautopage}
@@ -33938,17 +34327,7 @@
 % \end{macro}
 
 
-% \DescribeCounter{LWR at latestautopage}
-% The \HTML\ output's \PDF\ page number at the start of a new \HTML\ file or section.
-%
-% \cs{LWRsetnextfloat} is written with this and the |autoid|
-% by the modified \cs{addcontentsline} just before each float's entry.
-%    \begin{macrocode}
-\newcounter{LWR at latestautopage}
-\setcounter{LWR at latestautopage}{1}
-%    \end{macrocode}
 
-
 % \begin{environment}{LWR at figcaption}
 %
 % An \HTML\ \element{figcaption} is not allowed in places where
@@ -33963,7 +34342,6 @@
     {%
         \ifbool{FormatWP}{%
             \BlockClass[font-style:italic]{figurecaption}%
-%             \LWR at print@vspace*{\baselineskip}
         }{%
             \BlockClass{figurecaption}%
         }%
@@ -34087,7 +34465,7 @@
 
 % \begin{macro}{\addcontentsline}
 % Patched to write the |autopage| and |autoid| before each float's entry.
-% No changes if writing |.toc|
+% No changes if writing \filenm{.toc}
 % For a theorem, automatically defines \cs{ext@<type>} as needed, to
 % mimic and reuse the float mechanism.
 %
@@ -34113,7 +34491,7 @@
 %    \begin{macrocode}
         \addtocontents{\@nameuse{ext@#2}}{%
             \protect\LWRsetnextfloat%
-            {\arabic{LWR at latestautopage}}%
+            {\arabic{LWR at currentautosecfloatpage}}%
             {\arabic{LWR at thisautoid}}%
         }%
     }% not TOC
@@ -34156,7 +34534,7 @@
 %
 % This section controls the generation of the \TOC, \LOF, and \LOT.
 %
-% The |.toc|, |.lof|, and |.lot| files are named by the source code \cs{jobname}.
+% The \filenm{.toc}, \filenm{.lof}, and \filenm{.lot} files are named by the source code \cs{jobname}.
 %
 % In \HTML, the printed tables are placed inside a \element{div}
 %   of class \attribute{toc}, \attribute{lof}, or \attribute{lot}.
@@ -34308,8 +34686,8 @@
     }
     {
 %    \end{macrocode}
-% Copy the |.toc| file to |.sidetoc| for printing the side\TOC.
-% The original |.toc| file is renewed when \cs{tableofcontents} is finished.
+% Copy the \filenm{.toc} file to |.sidetoc| for printing the side\TOC.
+% The original \filenm{.toc} file is renewed when \cs{tableofcontents} is finished.
 %    \begin{macrocode}
         \ifbool{LWR at copiedsidetoc}{}{%
             \LWR at copyfile{\jobname.toc}{\jobname.sidetoc}%
@@ -34498,7 +34876,7 @@
 
 % \begin{macro}{\numberline} \marg{number}
 %
-% (Called from each line in the |.aux|, |.lof| files.)
+% (Called from each line in the |.aux|, \filenm{.lof} files.)
 %
 % Record this section number for further use:
 %
@@ -34906,7 +35284,7 @@
 
 
 % \begin{macro}{\@wrglossary} \marg{term} \qquad
-% Redefined to write the |LWR at latestautopage| counter instead of |page|.
+% Redefined to write the |LWR at autoglossary| counter instead of |page|.
 %    \begin{macrocode}
 \def\@wrglossary#1{%
     \addtocounter{LWR at autoglossary}{1}%
@@ -35704,9 +36082,11 @@
 %    \begin{macrocode}
     \RenewDocumentCommand{\hspace}{s m}{}%
 %    \end{macrocode}
+% \changes{v0.896}{2021/03/05}{Added \ARIA\ role.}
+% \changes{v0.896}{2021/03/15}{Added groups.}
 %    \begin{macrocode}
-    \RenewDocumentCommand{\LWR at htmlspanclass}{o m +m}{##3}%
-    \DeclareExpandableDocumentCommand{\InlineClass}{D{(}{)}{} o m +m}{##4}%
+    \RenewDocumentCommand{\LWR at htmlspanclass}{o D(){} m +m}{{##4}}%
+    \DeclareExpandableDocumentCommand{\InlineClass}{D{(}{)}{} o m +m}{{##4}}%
 %    \end{macrocode}
 % Nullify math macros.
 % \changes{v0.55}{2018/04/24}{Removed extraneous space which appeared in file links.}
@@ -36113,7 +36493,7 @@
 % Temporarily disable formatting while measuring the image parameters:
 %    \begin{macrocode}
     \LWR at restoreorigformatting%
-    \RenewDocumentEnvironment{lateximage}{s o s o o}{}{}% inside group
+    \RenewDocumentEnvironment{lateximage}{s o s o o d()}{}{}% inside group
     \LWR at print@normalsize%
 %    \end{macrocode}
 % Temporarily set font for the \HTML\ \PDF\ output:
@@ -36297,6 +36677,7 @@
 % \changes{v0.50}{2018/02/22}{MD5 hash avoids duplicate \SVG\ math.}
 % \changes{v0.57}{2018/05/23}{Fix: Dynamic inline math expressions.}
 % \changes{v0.74}{2019/08/20}{Adds star argument for \env{lateximage}.}
+% \changes{v0.896}{2021/03/05}{Added \ARIA\ role.}
 %    \begin{macrocode}
     \ifbool{LWR at dynamicmath}{%
         \LWR at traceinfo{subsingledollar: dynamic}%
@@ -36304,6 +36685,7 @@
             [\MathImageAltText]% alt tag
             []% no add'l hashing
             [\LWR at singledollarstyle \LWR at singledollardepthstyle]% CSS
+            (math)% ARIA
     }{% not dynamic math
         \LWR at traceinfo{subsingledollar: static}%
         \IfValueTF{#1}{% #1 True
@@ -36330,11 +36712,13 @@
                     FB\LWR at tempone% xfakebold
                 ]%
                 [\LWR at singledollarstyle \LWR at singledollardepthstyle]% CSS
+                (math)% ARIA
         }{% #1 False
             \begin{lateximage}% no hashing
                 [#2]% alt
                 []% no add'l hashing
                 [\LWR at singledollarstyle \LWR at singledollardepthstyle]% CSS
+                (math)% ARIA
         }%
     }% not dynamic math
 %    \end{macrocode}
@@ -36498,7 +36882,7 @@
 \LetLtxMacro\LWR at origopenbracket\[
 \LetLtxMacro\LWR at origclosebracket\]
 %    \end{macrocode}
-
+%
 % \DescribeObject{\$}
 % \DescribeObject{\$\$}
 % Redefine the dollar sign to place math inside a \env{lateximage},
@@ -36532,12 +36916,31 @@
 % For \brand{MathJax}, print the math between |\[| and |\]|:
 % \changes{v0.42}{2017/10/16}{Improved line spacing with mathjax.}
 % \changes{v0.89}{2020/08/01}{TT font for \brand{MathJax}.}
+% \changes{v0.896}{2021/04/07}{Fix: Displaymath notes with \brand{MathJax}.}
 %    \begin{macrocode}
 {
 
-    \textbackslash[%
-    {\LWR at print@ttfamily\LWR at HTMLsanitize{#1}}%
-    \textbackslash]
+    \IfSubStr{\detokenize\expandafter{#1}}{\detokenize{note}}{%
+%    \end{macrocode}
+%
+% The equation is printed to the \PDF\ output inside \HTML\ comment tags.
+% This allows labels and footnotes to be accepted and processed.
+% The \env{math} environment is selected here, and \cs{LWR at hidelatexequation}
+% will use the original print-mode meaning of \env{math}.
+%    \begin{macrocode}
+        \LWR at hidelatexequation{math}{#1}%
+%    \end{macrocode}
+%    \begin{macrocode}
+        \InlineClass{hidden}{\LWR at syncnotenumbers}%
+        \textbackslash[%
+        {\LWR at print@ttfamily\LWR at HTMLsanitize{#1}}%
+        \textbackslash]
+        \InlineClass{hidden}{\LWR at syncnotenames}%
+    }{%
+        \textbackslash[%
+        {\LWR at print@ttfamily\LWR at HTMLsanitize{#1}}%
+        \textbackslash]
+    }%
 
 }% mathjax
 %    \end{macrocode}
@@ -36546,6 +36949,7 @@
 % \changes{v0.50}{2018/02/24}{Improved \SVG\ math \attribute{alt} tags.}
 % \changes{v0.50}{2018/03/02}{Improved \SVG\ math display.}
 % \changes{v0.51}{2018/03/11}{Fix: \cs{addcontentsline} inside \SVG\ math.  Provides an autoid anchor.}
+% \changes{v0.896}{2021/03/05}{Added \ARIA\ role.}
 %    \begin{macrocode}
 {% not mathjax
     \begin{BlockClass}{displaymath}%
@@ -36558,6 +36962,7 @@
         \textbackslash{]}%
     ]%
     *% do not add open/closing braces
+    (math)% ARIA
 %    \end{macrocode}
 % Support for \pkg{xfakebold}:
 % \changes{v0.67}{2019/02/17}{\pkg{xfakebold}: Added support.}
@@ -36697,11 +37102,13 @@
 %    \begin{macrocode}
 \let\LWR at orig@math\math
 \let\LWR at orig@endmath\endmath
+
 \let\LWR at orig@displaymath\displaymath
 \let\LWR at orig@enddisplaymath\enddisplaymath
 
 \let\math\relax
 \let\endmath\relax
+
 \let\displaymath\relax
 \let\enddisplaymath\relax
 %    \end{macrocode}
@@ -36740,6 +37147,7 @@
 % but does not supply \brand{MathJax} or \HTML\ \attribute{alt} tags.
 % \changes{v0.51}{2018/03/21}{Processing for complicated display math.}
 % \changes{v0.74}{2019/08/07}{Uses \cs{MathImageAltText}.}
+% \changes{v0.896}{2021/03/05}{Added \ARIA\ role.}
 %    \begin{macrocode}
 \newenvironment{LWR at displaymathother}
 {%
@@ -36746,8 +37154,7 @@
     \begin{BlockClass}{displaymath}%
     \LWR at newautoidanchor%
     \booltrue{LWR at indisplaymathimage}%
-    \begin{lateximage}%
-    [\MathImageAltText]%
+    \begin{lateximage}[\MathImageAltText](math)% [alt](ARIA)
     \LWR at origdollar\LWR at origdollar%
 }
 {%
@@ -36764,6 +37171,7 @@
 % but does not supply \brand{MathJax} or \HTML\ \attribute{alt} tags.
 % \changes{v0.51}{2018/03/21}{Processing for complicated display math.}
 % \changes{v0.74}{2019/08/07}{Uses \cs{MathImageAltText}.}
+% \changes{v0.896}{2021/03/05}{Added \ARIA\ role.}
 %    \begin{macrocode}
 \newenvironment{LWR at equationother}
 {%
@@ -36770,11 +37178,11 @@
     \begin{BlockClass}{displaymathnumbered}%
     \LWR at newautoidanchor%
     \booltrue{LWR at indisplaymathimage}%
-    \begin{lateximage}[\MathImageAltText]%
-    \LWR at origequation%
+    \begin{lateximage}[\MathImageAltText](math)% [alt](ARIA)
+    \LWR at orig@equation%
 }
 {%
-    \LWR at origendequation%
+    \LWR at orig@endequation%
     \end{lateximage}%
     \end{BlockClass}%
 }
@@ -36895,7 +37303,7 @@
 % Start the \LaTeX\ math environment inside the \HTML\ comment:
 %    \begin{macrocode}
     \begingroup
-    \@nameuse{LWR at orig#1}
+    \@nameuse{LWR at orig@#1}
 %    \end{macrocode}
 % While in the math environment,
 % restore various commands to their \LaTeX\ meanings.
@@ -36914,7 +37322,7 @@
 %    \end{macrocode}
 % End the \LaTeX{} math environment inside the \HTML\ comment:
 %    \begin{macrocode}
-    \@nameuse{LWR at origend#1}
+    \@nameuse{LWR at orig@end#1}
     \endgroup
 
 %    \end{macrocode}
@@ -36965,10 +37373,10 @@
 % after redefined by \pkg{amsmath}, if loaded.
 %    \begin{macrocode}
 \AtBeginDocument{
-    \let\LWR at origequation\equation
-    \let\LWR at origendequation\endequation
-    \csletcs{LWR at origequation*}{equation*}
-    \csletcs{LWR at origendequation*}{endequation*}
+    \let\LWR at orig@equation\equation
+    \let\LWR at orig@endequation\endequation
+    \csletcs{LWR at orig@equation*}{equation*}
+    \csletcs{LWR at orig@endequation*}{endequation*}
 }
 %    \end{macrocode}
 %
@@ -37023,6 +37431,7 @@
 % \changes{v0.50}{2018/03/02}{Improved \SVG\ math display.}
 % \changes{v0.51}{2018/03/11}{Fix: \cs{addcontentsline} inside \SVG\ math.  Provides an autoid anchor.}
 % \changes{v0.52}{2018/03/31}{Fix: \env{equation*} now based on \env{equation} instead of \env{displaymath}.}
+% \changes{v0.896}{2021/03/05}{Added \ARIA\ role.}
 %    \begin{macrocode}
         \ifstrequal{#2}{equation*}{%
             \begin{BlockClass}{displaymath}%
@@ -37044,7 +37453,7 @@
             \textbackslash{begin\{#2\}} % extra space
             \LWR at HTMLsanitizeexpand{\detokenize\expandafter{#1}} % extra space
             \textbackslash{end\{#2\}}%
-        ]*% alt tag
+        ]*(math)% alt tag, ARIA
 %    \end{macrocode}
 % Support for \pkg{xfakebold}:
 % \changes{v0.67}{2019/02/17}{\pkg{xfakebold}: Added support.}
@@ -37054,9 +37463,9 @@
 % Create the actual \LaTeX-formatted equation inside
 % the |lateximage| using the contents of the environment.
 %    \begin{macrocode}
-        \@nameuse{LWR at orig#2}%
+        \@nameuse{LWR at orig@#2}%
         #1% contents collected by \collect at body
-        \@nameuse{LWR at origend#2}%
+        \@nameuse{LWR at orig@end#2}%
         \end{lateximage}%
         \end{BlockClass}%
     }% not mathjax
@@ -37124,10 +37533,11 @@
 
 
 % \begin{macro}{\LWR at synconenotename} \marg{\brand{MathJax} variable} \marg{text}
+% \changes{v0.896}{2021/04/07}{Fix: \brand{MathJax}: Footnote names.}
 %    \begin{macrocode}
 \newcommand*{\LWR at synconenotename}[2]{%
     \textbackslash(
-    \textbackslash{}def\textbackslash{}#1\{#2\}
+    \textbackslash{}def\textbackslash{}#1name\{#2\}
     \textbackslash)
 }
 %    \end{macrocode}
@@ -37417,7 +37827,7 @@
             \LWR at newautoidanchor%
             \booltrue{LWR at indisplaymathimage}%
             \begin{lateximage}[(\LWR at startingequationtag\textendash\LWR at equationtag)%
-                \LWR at addmathjax{eqnarray}{\BODY}]*%
+                \LWR at addmathjax{eqnarray}{\BODY}]*(math)%
 %    \end{macrocode}
 % Support for \pkg{xfakebold}:
 % \changes{v0.67}{2019/02/17}{\pkg{xfakebold}: Added support.}
@@ -37441,7 +37851,7 @@
             \begin{BlockClass}{displaymath}%
             \LWR at newautoidanchor%
             \booltrue{LWR at indisplaymathimage}%
-            \begin{lateximage}[\LWR at addmathjax{eqnarray*}{\BODY}]*%
+            \begin{lateximage}[\LWR at addmathjax{eqnarray*}{\BODY}]*(math)%
 %    \end{macrocode}
 % Support for \pkg{xfakebold}:
 % \changes{v0.67}{2019/02/17}{\pkg{xfakebold}: Added support.}
@@ -37755,12 +38165,14 @@
 
 
 % \begin{macro}{\LWR at lateximage@oneimageb} \marg{1: alt text} \marg{2: filename}
-%                                               \marg{3: CSS style}
+%                                               \marg{3: \CSS\ style}
+%                                               \marg{4: \ARIA\ role}
 % Creates the image for the \env{lateximage}.
 %
 % \changes{v0.74}{2019/08/26}{Factored from \env{lateximage}.}
+% \changes{v0.896}{2021/03/05}{Added \ARIA\ role.}
 %    \begin{macrocode}
-\newcommand{\LWR at lateximage@oneimageb}[3]{%
+\newcommand{\LWR at lateximage@oneimageb}[4]{%
     \LWR at subinlineimage{#1}{lateximage}%
     {%
         \LWR at print@mbox{%
@@ -37767,7 +38179,7 @@
             \LWR at ImagesDirectory\OSPathSymbol%
             #2%
         }%
-    }{svg}{#3}%
+    }{svg}{#3}{#4}%
 }
 %    \end{macrocode}
 % \end{macro}
@@ -37775,25 +38187,27 @@
 
 % \begin{macro}{\LWR at lateximage@oneimage} \marg{1: alt text} \marg{2: filename}
 %                                               \marg{3: \CSS\ style} \marg{4: delimit?}
+%                                               \marg{5: \ARIA\ role}
 %
 % Creates an image for the \env{lateximage},
 % whose \attribute{alt} text depends on the circumstances.
 %
 % \changes{v0.74}{2019/08/26}{Factored from \env{lateximage}.}
+% \changes{v0.896}{2021/03/05}{Added \ARIA\ role.}
 %    \begin{macrocode}
-\newcommand{\LWR at lateximage@oneimage}[4]{%
+\newcommand{\LWR at lateximage@oneimage}[5]{%
     \ifdefvoid{\LWR at ThisAltText}{%
         \IfBooleanTF{#4}{%
-            \LWR at lateximage@oneimageb{#1}{#2}{#3}%
+            \LWR at lateximage@oneimageb{#1}{#2}{#3}{#5}%
         }{%
             \LWR at lateximage@oneimageb%
                 {\AltTextOpen#1\AltTextClose}%
-                {#2}{#3}%
+                {#2}{#3}{#5}%
         }%
     }{%
         \LWR at lateximage@oneimageb%
             {\AltTextOpen\LWR at ThisAltText\AltTextClose}%
-            {#2}{#3}%
+            {#2}{#3}{#5}%
     }%
 }
 %    \end{macrocode}
@@ -37802,6 +38216,7 @@
 
 % \begin{environment}{lateximage} * \oarg{2: \element{alt} tag} *
 %                                       \oarg{4: add'l hashing} \oarg{5: \CSS\ style}
+%                                       \parg{6: \ARIA\ role}
 %
 % Typesets the contents and then renders the result as an \SVG\ file.
 % Star \#1 causes the image to be hashed for reuse.
@@ -37843,11 +38258,12 @@
 % \changes{v0.51}{2018/03/07}{Added additional hashing option.}
 % \changes{v0.66}{2019/01/27}{Added \cs{BaseJobname} for multiple projects.}
 % \changes{v0.74}{2019/08/20}{Added second starred argument.}
+% \changes{v0.896}{2021/03/05}{Added \ARIA\ role.}
 %
 %    \begin{macrocode}
 \catcode`\$=\active%
 
-\NewDocumentEnvironment{lateximage}{s O{\ImageAltText} s O{} O{}}
+\NewDocumentEnvironment{lateximage}{s O{\ImageAltText} s O{} O{} D(){}}%
 {%
 \LWR at traceinfo{lateximage: starting on \jobname.pdf page \arabic{page}}%
 \LWR at traceinfo{lateximage: entering depth is \arabic{LWR at lateximagedepth}}%
@@ -38040,10 +38456,10 @@
     \ifbool{LWR at indisplaymathimage}{}{% not in display math
         \LetLtxMacro\[\LWR at origopenbracket%
         \LetLtxMacro\]\LWR at origclosebracket%
-        \let\equation\LWR at origequation%
-        \let\endequation\LWR at origendequation%
-        \csletcs{equation*}{LWR at origequation*}%
-        \csletcs{endequation*}{LWR at origendequation*}%
+        \let\equation\LWR at orig@equation%
+        \let\endequation\LWR at orig@endequation%
+        \csletcs{equation*}{LWR at orig@equation*}%
+        \csletcs{endequation*}{LWR at orig@endequation*}%
     }% not in display math
 %    \end{macrocode}
 %
@@ -38106,13 +38522,14 @@
 % \changes{v0.47}{2018/01/26}{Fix: Line wrap at \HTML\ hyphen.}
 % \changes{v0.50}{2018/02/22}{MD5 hash avoids duplicate \SVG\ math.}
 % \changes{v0.74}{2019/08/20}{New syntax for \cs{LWR at subinlineimage}.}
+% \changes{v0.896}{2021/03/05}{Added \ARIA\ role.}
 %    \begin{macrocode}
     \IfBooleanTF{#1}% starred
     {% hash
-        \LWR at lateximage@oneimage{#2}{\LWR at hashedname}{#5}{#3}%
+        \LWR at lateximage@oneimage{#2}{\LWR at hashedname}{#5}{#3}{#6}%
     }% hash
     {% no hash
-        \LWR at lateximage@oneimage{#2}{\LWR at ImagesName\theLWR at externalfilecnt}{#5}{#3}%
+        \LWR at lateximage@oneimage{#2}{\LWR at ImagesName\theLWR at externalfilecnt}{#5}{#3}{#6}%
     }% no hash
 %    \end{macrocode}
 %
@@ -38161,7 +38578,7 @@
 % \changes{v0.48}{2018/02/02}{Print mode boxed to natural width.}
 % \changes{v0.74}{2019/08/20}{Added second starred argument.}
 %    \begin{macrocode}
-\NewDocumentEnvironment{lateximage}{s o s o o}
+\NewDocumentEnvironment{lateximage}{s o s o o d()}
     {\begin{varwidth}[b]{\linewidth}}
     {\end{varwidth}}
 %    \end{macrocode}
@@ -38182,17 +38599,20 @@
 %    \end{macrocode}
 
 % \begin{environment}{center}
-% Replace \env{center} functionality with \CSS\ tags:
+% Replace \env{center} functionality with \CSS\ tags.
+% In a \element{span}, these macros are nullified, but extra \% are used
+% to remove spurrious spaces here as well.
 % \changes{v0.42}{2017/10/26}{If \progcode{FormatWP} use explicit \attribute{text-align}.}
 % \changes{v0.47}{2018/01/26}{Fix: Line wrap at \HTML\ hyphen.}
 % \changes{v0.84}{2020/04/14}{Added print mode.}
+% \changes{v0.896}{2021/04/07}{Spurrious space in a \element{span}.}
 %    \begin{macrocode}
 \newenvironment*{LWR at HTML@center}
-{
-    \LWR at forcenewpage
-    \ifbool{FormatWP}
-        {\BlockClass[\LWR at print@mbox{text-align:center}]{center}}
-        {\BlockClass{center}}
+{%
+    \LWR at forcenewpage%
+    \ifbool{FormatWP}%
+        {\BlockClass[\LWR at print@mbox{text-align:center}]{center}}%
+        {\BlockClass{center}}%
 }
 {\endBlockClass}
 
@@ -38204,13 +38624,14 @@
 % \begin{environment}{flushright}
 % \changes{v0.47}{2018/01/26}{Fix: Line wrap at \HTML\ hyphen.}
 % \changes{v0.84}{2020/04/14}{Added print mode.}
+% \changes{v0.896}{2021/04/07}{Spurrious space in a \element{span}.}
 %    \begin{macrocode}
 \newenvironment*{LWR at HTML@flushright}
-{
-    \LWR at forcenewpage
-    \ifbool{FormatWP}
-        {\BlockClass[\LWR at print@mbox{text-align:right}]{flushright}}
-        {\BlockClass{flushright}}
+{%
+    \LWR at forcenewpage%
+    \ifbool{FormatWP}%
+        {\BlockClass[\LWR at print@mbox{text-align:right}]{flushright}}%
+        {\BlockClass{flushright}}%
 }
 {\endBlockClass}
 
@@ -38221,13 +38642,14 @@
 % \begin{environment}{flushleft}
 % \changes{v0.47}{2018/01/26}{Fix: Line wrap at \HTML\ hyphen.}
 % \changes{v0.84}{2020/04/14}{Added print mode.}
+% \changes{v0.896}{2021/04/07}{Spurrious space in a \element{span}.}
 %    \begin{macrocode}
 \newenvironment*{LWR at HTML@flushleft}
-{
-    \LWR at forcenewpage
-    \ifbool{FormatWP}
-        {\BlockClass[\LWR at print@mbox{text-align:left}]{flushleft}}
-        {\BlockClass{flushleft}}
+{%
+    \LWR at forcenewpage%
+    \ifbool{FormatWP}%
+        {\BlockClass[\LWR at print@mbox{text-align:left}]{flushleft}}%
+        {\BlockClass{flushleft}}%
 }
 {\endBlockClass}
 
@@ -38400,9 +38822,8 @@
 \LWR at PreloadedPackage{ulem}
 %    \end{macrocode}
 
-% \pkg{xetexko-vertical} may be preloaded by \pkg{xetexko}.
 %    \begin{macrocode}
-\LWR at PreloadedPackage{xetexko-vertical}
+\LWR at PreloadedPackage{xetexko}
 %    \end{macrocode}
 
 % \pkg{geometry} is preloaded by \pkg{lwarp}, and perhaps by various classes.
@@ -39157,6 +39578,11 @@
 \LWR at print@raggedright%
 %    \end{macrocode}
 %
+% \changes{v0.896}{2021/04/06}{Improved back refs.}
+%    \begin{macrocode}
+    \LWR at newautopagelabel{page}%
+%    \end{macrocode}
+%
 % Set minipage footnotes:
 %    \begin{macrocode}
 \def\@mpfn{mpfootnote}%
@@ -39252,8 +39678,9 @@
 %   \qquad Nullified for \HTML.
 % \changes{v0.48}{2018/02/04}{Nullified for \HTML.}
 % \changes{v0.57}{2018/05/28}{Improved print/\HTML\ output selection.}
+% \changes{v0.896}{2021/03/15}{Added a group.}
 %    \begin{macrocode}
-\newcommand*{\LWR at HTML@mbox}[1]{#1}
+\newcommand*{\LWR at HTML@mbox}[1]{{#1}}
 
 \LWR at formatted{mbox}
 %    \end{macrocode}
@@ -39401,6 +39828,7 @@
 %    \begin{macrocode}
 \newcommand*{\LWR at fboxstyle}{%
 \LWR at findcurrenttextcolor%
+\LWR at traceinfo{LWR at fboxstyle B}%
 border:\LWR at printlength{\LWR at atleastonept} solid \LWR at origpound\LWR at tempcolor ; %
 padding:\LWR at printlength{\fboxsep} ; %
 color:\LWR at origpound\LWR at tempcolor%
@@ -39422,10 +39850,12 @@
 \newcommand{\LWR at HTML@fbox}[1]{%
 \LWR at traceinfo{HTML fbox}%
 \LWR at forceminwidth{\fboxrule}%
+\LWR at traceinfo{HTML fbox B}%
 \InlineClass[%
     \LWR at print@mbox{display:inline-block} ; %
     \LWR at fboxstyle%
 ]{fbox}{#1}%
+\LWR at traceinfo{HTML fbox: done}%
 }
 %    \end{macrocode}
 % \pkg{xcolor} \cs{let}s things to \cs{fbox} when it is loaded,
@@ -40318,7 +40748,7 @@
 % \changes{v0.66}{2019/02/04}{Fix: Color if \pkg{xcolor} not loaded.}
 %    \begin{macrocode}
 \newcommand*{\LWR at findcurrenttextcolor}{%
-\renewcommand{\LWR at tempcolor}{000000}%
+    \renewcommand{\LWR at tempcolor}{000000}%
 }
 %    \end{macrocode}
 % \end{macro}
@@ -43612,7 +44042,7 @@
         \edef\LWR at thisthmstyle{\@nameuse{LWR at thmstyle#2}}%
     }%          lwarp
   }%
-  \@tempa
+  \@tempa%
 }
 %    \end{macrocode}
 
@@ -43649,9 +44079,13 @@
 %    \begin{macrocode}
     \GetTitleString{#3}%                                lwarp
     \let\@currentlabelname\GetTitleStringResult%        lwarp
+    \item[%
 %    \end{macrocode}
+% \changes{v0.896}{2021/04/05}{\pkg{amsthm}: Improved back refs.}
 %    \begin{macrocode}
-    \item[
+    \LWR at newautopagelabel{page}%
+%    \end{macrocode}
+%    \begin{macrocode}
 %   \deferred at thm@head{
 %     \the\thm at headfont \thm at indent
     \@ifempty{#1}{\let\thmname\@gobble}{\LWR at haveamsthmname}%       lwarp
@@ -43658,11 +44092,11 @@
     \@ifempty{#2}{\let\thmnumber\@gobble}{\LWR at haveamsthmnumber}%   lwarp
     \@ifempty{#3}{\let\thmnote\@gobble}{\LWR at haveamsthmnote}%       lwarp
     \thm at swap\swappedhead\thmhead{#1}{#2}{#3}%
-    \the\thm at headpunct~
+    \the\thm at headpunct % space
     \thmheadnl % possibly a newline.
     \hskip\thm at headsep
 %   }%
-    ]
+    ]%
   \ignorespaces}
 %    \end{macrocode}
 %
@@ -43673,7 +44107,51 @@
   \ifhmode\unskip\unskip\par\fi
   \normalfont
   \LWR at forcenewpage%                            lwarp
+%    \end{macrocode}
+% \changes{v0.896}{2021/03/14}{\pkg{amsthm}: Intersperse footnotes.}
+%    \begin{macrocode}
+  \LWR at printpendingfootnotes%                   lwarp
+%    \end{macrocode}
+%    \begin{macrocode}
   \BlockClass{amsthmbody\LWR at thisthmstyle}%     lwarp
+%    \end{macrocode}
+%
+% Footnotes are redefined to work correctly inside the option brackets
+% for a theorem environment.
+% \changes{v0.896}{2021/03/14}{\pkg{amsthm}: Fix: Footnotes in opt arg..}
+%    \begin{macrocode}
+    \renewcommand{\footnote}[1][]{%
+        \ifblank{##1}%
+        {%
+            \stepcounter\@mpfn
+            \protected at xdef\@thefnmark{\thempfn}%
+            \@footnotemark\@footnotetext
+        }%
+        {%
+            \begingroup
+            \csname c@\@mpfn\endcsname ##1\relax
+            \unrestored at protected@xdef\@thefnmark{\thempfn}%
+            \endgroup
+            \@footnotemark\@footnotetext
+        }%
+    }%
+%
+    \renewcommand{\footnotemark}[1][]{%
+        \ifblank{##1}%
+        {%
+            \stepcounter{footnote}%
+            \protected at xdef\@thefnmark{\thefootnote}%
+            \@footnotemark%
+        }%
+        {%
+            \begingroup%
+            \c at footnote ##1\relax%
+            \unrestored at protected@xdef\@thefnmark{\thefootnote}%
+            \endgroup%
+            \@footnotemark%
+        }%
+    }%
+%
   \trivlist
   \let\thmheadnl\relax
   \let\thm at swap\@gobble
@@ -43690,9 +44168,10 @@
     \refstepcounter{#2}%
     \def\@tempa{\@oparg{\@begintheorem{#3}{\csname the#2\endcsname}}[]}%
   \fi
-  \@tempa
+  \@tempa%
 }
 %    \end{macrocode}
+%
 % \pkg{cleveref} patches \cs{@thm} to do \cs{cref at thmoptarg} if an optional
 % argument is given.  \pkg{lwarp} then patches \cs{cref at thmoptarg}
 % \cs{AtBeginDocument}.
@@ -43702,6 +44181,12 @@
     \ifhmode\unskip\unskip\par\fi%
     \normalfont%
     \LWR at forcenewpage%                          lwarp
+%    \end{macrocode}
+% \changes{v0.896}{2021/03/14}{\pkg{amsthm}: Intersperse footnotes.}
+%    \begin{macrocode}
+    \LWR at printpendingfootnotes%                   lwarp
+%    \end{macrocode}
+%    \begin{macrocode}
     \BlockClass{amsthmbody\LWR at thisthmstyle}%   lwarp
     \trivlist%
     \let\thmheadnl\relax%
@@ -43723,8 +44208,18 @@
 }%
 }% AtBeginDocument
 
-\def\@endtheorem{\endtrivlist\endBlockClass\@endpefalse }
+\def\@endtheorem{%
+    \endtrivlist%
 %    \end{macrocode}
+% \changes{v0.896}{2021/03/14}{\pkg{amsthm}: Intersperse footnotes.}
+%    \begin{macrocode}
+  \LWR at printpendingfootnotes%                   lwarp
+%    \end{macrocode}
+%    \begin{macrocode}
+    \endBlockClass%
+    \@endpefalse%
+}
+%    \end{macrocode}
 %
 %
 %
@@ -43752,10 +44247,18 @@
 %    \end{macrocode}
 %
 % Patched for \CSS:
+% \changes{v0.896}{2021/04/05}{\pkg{amsthm}: Improved back refs.}
 %    \begin{macrocode}
 \renewenvironment{proof}[1][\proofname]{\par
-\LWR at forcenewpage% lwarp
+  \LWR at forcenewpage% lwarp
+%    \end{macrocode}
+% \changes{v0.896}{2021/03/14}{\pkg{amsthm}: Intersperse footnotes.}
+%    \begin{macrocode}
+  \LWR at printpendingfootnotes%                   lwarp
+%    \end{macrocode}
+%    \begin{macrocode}
     \BlockClass{amsthmproof}% lwarp
+    \LWR at newautopagelabel{page}%
   \pushQED{\qed}%
   \normalfont \topsep6\p@\@plus6\p@\relax
   \trivlist
@@ -43763,6 +44266,12 @@
         \InlineClass{amsthmproofname}{#1\@addpunct{.}}]\ignorespaces% changes
 }{%
   \InlineClass{theoremendmark}{\popQED}\endtrivlist%
+%    \end{macrocode}
+% \changes{v0.896}{2021/03/14}{\pkg{amsthm}: Intersperse footnotes.}
+%    \begin{macrocode}
+  \LWR at printpendingfootnotes%                   lwarp
+%    \end{macrocode}
+%    \begin{macrocode}
   \endBlockClass% lwarp
   \@endpefalse
 }
@@ -45068,6 +45577,7 @@
 %
 % \changes{v0.45}{2018/01/14}{\pkg{backref}: Added.}
 % \changes{v0.84}{2020/04/07}{\pkg{backref}: Fixed from \pkg{lwarp} v0.72 changes.}
+% \changes{v0.896}{2021/04/05}{\pkg{backref}: Improved backrefs.}
 %
 % \codehtml
 %
@@ -45080,7 +45590,7 @@
 \def\backref{}
 
 \long\def\hyper at section@backref#1#2#3{%
-    \ref{#3}%
+    \LWR at refwithsection{#3}%
 }
 
 \let\backrefxxx\hyper at section@backref
@@ -45512,10 +46022,39 @@
 \let\blx at imc@ifhyperref\@firstoftwo
 %    \end{macrocode}
 %
+% Ensure that an autopage reference is current where each \cs{cite} is used,
+% although this is nullified inside footnotes since they now use a \LaTeX\ box.
+% \changes{v0.896}{2021/03/25}{\pkg{biblatex}: Fix: Citation references.}
+%    \begin{macrocode}
+\xpretocmd{\blx at citecmdinit}
+    {\LWR at newautopagelabel{page}}%
+    {}
+    {\LWR at patcherror{biblatex}{blx at citecmdinit}}
+%    \end{macrocode}
 %
+% Ensure that an autopage reference is current for each backref.
+% If the citation is in a footnote, the backref will point to whatever
+% preceeded the footnotes.
+% \changes{v0.896}{2021/03/25}{\pkg{biblatex}: Fix: Back references.}
+%    \begin{macrocode}
+\xpatchcmd{\blx at addbackref@i}
+    {\thepage}
+    {\theLWR at previousautopagelabel}% ref to the most recent object
+    {}
+    {\LWR at patcherror{biblatex}{blx at addbackref@i A}}
+
+\xpatchcmd{\blx at addbackref@i}
+    {\c at page}
+    {\c at LWR@previousautopagelabel}% refto the most recent object
+    {}
+    {\LWR at patcherror{biblatex}{blx at addbackref@i B}}
+%    \end{macrocode}
+%
+%
 % The following patches are for back page references.
 %
 % \changes{v0.891}{2020/09/05}{\pkg{biblatex}: Fixed: Back page references.}
+% \changes{v0.896}{2021/04/05}{\pkg{biblatex}: Improved refs: \cs{ref} to \cs{LWR at refwithsection}.}
 %    \begin{macrocode}
 \DeclareListFormat{pageref}{%
   \ifnumless{\abx at pagerefstyle}{0}
@@ -45523,7 +46062,7 @@
      \ifhyperref
        {%
 %             \hyperlink{page.#1}{#1}%
-            \ref{\BaseJobname-autopage-#1}%  lwarp
+            \LWR at refwithsection{\BaseJobname-autopage-#1}%  lwarp
        }
        {#1}}
     {\ifnumequal{\value{listcount}}{1}
@@ -45561,7 +46100,7 @@
           {}%
         \ifhyperref
 %           {\hyperlink{page.#1}{#1}}
-          {\ref{\BaseJobname-autopage-#1}}%  lwarp
+          {\LWR at refwithsection{\BaseJobname-autopage-#1}}%  lwarp
           {#1}}%
      \edef\abx at range@prev{\abx at range@num}}
     {\usebibmacro{pageref:dump}%
@@ -45570,7 +46109,7 @@
        {}%
      \ifhyperref
 %        {\hyperlink{page.#1}{#1}}
-       {\ref{\BaseJobname-autopage-#1}}%  lwarp
+       {\LWR at refwithsection{\BaseJobname-autopage-#1}}%  lwarp
        {#1}%
      \def\abx at range@prev{-1}}%
   \edef\abx at range@last{\abx at range@this}}
@@ -45581,7 +46120,7 @@
        \bibrangedash
        \ifhyperref
 %          {\hyperlink{page.\abx at range@hold}{\abx at range@hold}}
-         {\ref{\BaseJobname-autopage-\abx at range@hold}}%  lwarp
+         {\LWR at refwithsection{\BaseJobname-autopage-\abx at range@hold}}%  lwarp
          {\abx at range@hold}%
      \or % three
        \ifnumless{\abx at range@diff}{2}
@@ -45589,7 +46128,7 @@
          {\bibrangedash}%
        \ifhyperref
 %          {\hyperlink{page.\abx at range@hold}{\abx at range@hold}}
-         {\ref{\BaseJobname-autopage-\abx at range@hold}}%  lwarp
+         {\LWR at refwithsection{\BaseJobname-autopage-\abx at range@hold}}%  lwarp
          {\abx at range@hold}%
      \or % two+
        \ifnumless{\abx at range@diff}{2}
@@ -45596,12 +46135,12 @@
          {\sqspace
           \ifhyperref
 %             {\hyperlink{page.\abx at range@hold}{\bibstring{sequens}}}
-            {\ref{\BaseJobname-autopage-\abx at range@hold}}%  lwarp
+            {\LWR at refwithsection{\BaseJobname-autopage-\abx at range@hold}}%  lwarp
             {\bibstring{sequens}}}
          {\bibrangedash
           \ifhyperref
 %             {\hyperlink{page.\abx at range@hold}{\abx at range@hold}}
-            {\ref{\BaseJobname-autopage-\abx at range@hold}}%  lwarp
+            {\LWR at refwithsection{\BaseJobname-autopage-\abx at range@hold}}%  lwarp
             {\abx at range@hold}}%
      \or % three+
        \ifnumless{\abx at range@diff}{2}
@@ -45608,18 +46147,18 @@
          {\sqspace
           \ifhyperref
 %             {\hyperlink{page.\abx at range@hold}{\bibstring{sequens}}}
-            {\ref{\BaseJobname-autopage-\abx at range@hold}}%  lwarp
+            {\LWR at refwithsection{\BaseJobname-autopage-\abx at range@hold}}%  lwarp
             {\bibstring{sequens}}}
          {\ifnumless{\abx at range@diff}{3}
             {\sqspace
              \ifhyperref
 %                {\hyperlink{page.\abx at range@hold}{\bibstring{sequentes}}}
-               {\ref{\BaseJobname-autopage-\abx at range@hold}}%  lwarp
+               {\LWR at refwithsection{\BaseJobname-autopage-\abx at range@hold}}%  lwarp
                {\bibstring{sequentes}}}
             {\bibrangedash
              \ifhyperref
 %                {\hyperlink{page.\abx at range@hold}{\abx at range@hold}}
-               {\ref{\BaseJobname-autopage-\abx at range@hold}}%  lwarp
+               {\LWR at refwithsection{\BaseJobname-autopage-\abx at range@hold}}%  lwarp
                {\abx at range@hold}}}%
      \else % all+
        \ifnumless{\abx at range@diff}{2}
@@ -45626,12 +46165,12 @@
          {\sqspace
           \ifhyperref
 %             {\hyperlink{page.\abx at range@hold}{\bibstring{sequens}}}
-            {\ref{\BaseJobname-autopage-\abx at range@hold}}%  lwarp
+            {\LWR at refwithsection{\BaseJobname-autopage-\abx at range@hold}}%  lwarp
             {\bibstring{sequens}}}
          {\sqspace
           \ifhyperref
 %             {\hyperlink{page.\abx at range@hold}{\bibstring{sequentes}}}
-            {\ref{\BaseJobname-autopage-\abx at range@hold}}%  lwarp
+            {\LWR at refwithsection{\BaseJobname-autopage-\abx at range@hold}}%  lwarp
             {\bibstring{sequentes}}}%
      \fi
      \def\abx at range@diff{0}}
@@ -45705,6 +46244,7 @@
 % \changes{v0.39}{2017/08/31}{\pkg{bigdelim}: Added.}
 % \changes{v0.40}{2017/09/09}{\pkg{bigdelim}: Improved documentation.}
 % \changes{v0.57}{2018/06/01}{\pkg{bigdelim}: Improved print/\HTML\ output selection.}
+% \changes{v0.896}{2021/03/16}{\pkg{bigdelim}: Updated to v2.8.}
 %
 % \codehtml
 %
@@ -45717,23 +46257,23 @@
 %
 % Next, load the package's new definitions:
 %    \begin{macrocode}
-\LWR at ProvidesPackagePass{bigdelim}[2018/08/03]
+\LWR at ProvidesPackagePass{bigdelim}[2021/03/15]
 %    \end{macrocode}
 %
 %
-% \marg{1:delimiter} \marg{2:\#rows} \marg{3:width} \oarg{4:text}
+% \marg{1:delimiter} \marg{2:\#rows} \oarg{3: vmove} \marg{4:width} \oarg{5:text}
 % \marginpar{\hfill\cs{ldelim}}\marginpar{\hfill\cs{rdelim}}
 %    \begin{macrocode}
-\NewDocumentCommand{\LWR at HTML@ldelim}{m m m O{}}{%
+\NewDocumentCommand{\LWR at HTML@ldelim}{m m o m O{}}{%
 \renewcommand{\LWR at multirowborder}{right}%
-\multirow{#2}{#3}{#4 \InlineClass{ldelim}{#1}}%
+\multirow{#2}{#4}{#5 \InlineClass{ldelim}{#1}}%
 }
 
 \LWR at formatted{ldelim}
 
-\NewDocumentCommand{\LWR at HTML@rdelim}{m m m O{}}{%
+\NewDocumentCommand{\LWR at HTML@rdelim}{m m o m O{}}{%
 \renewcommand{\LWR at multirowborder}{left}%
-\multirow{#2}{#3}{\InlineClass{rdelim}{#1} #4}%
+\multirow{#2}{#4}{\InlineClass{rdelim}{#1} #5}%
 }
 
 \LWR at formatted{rdelim}
@@ -45744,12 +46284,14 @@
 % \changes{v0.79}{2020/01/20}{\pkg{bigdelim}: Added \brand{MathJax} emulation.}
 %    \begin{macrocode}
 \begin{warpMathJax}
-% \ldelim ( [n]{width}[text]
-\CustomizeMathJax{\newcommand{\LWRldelim}[1][]{\text{#1}~\LWRbigdelim}}
-\CustomizeMathJax{\def\ldelim#1#2#3{\def\LWRbigdelim{#1}\LWRldelim}}
-% \rdelim ) [n]{width}[text]
-\CustomizeMathJax{\newcommand{\LWRrdelim}[1][]{\LWRbigdelim~\text{#1}}}
-\CustomizeMathJax{\def\rdelim#1#2#3{\def\LWRbigdelim{#1}\LWRrdelim}}
+% \ldelim ( {n}{width}[text]
+\CustomizeMathJax{\newcommand{\LWRldelimtwo}[1][]{\text{#1}~\LWRbigdelim}}
+\CustomizeMathJax{\newcommand{\LWRldelimone}[2][]{\LWRldelimtwo}}
+\CustomizeMathJax{\def\ldelim#1#2{\def\LWRbigdelim{#1}\LWRldelimone}}
+% \rdelim ) {n}{width}[text]
+\CustomizeMathJax{\newcommand{\LWRrdelimtwo}[1][]{\LWRbigdelim~\text{#1}}}
+\CustomizeMathJax{\newcommand{\LWRrdelimone}[2][]{\LWRrdelimtwo}}
+\CustomizeMathJax{\def\rdelim#1#2{\def\LWRbigdelim{#1}\LWRrdelimone}}
 \end{warpMathJax}
 %    \end{macrocode}
 %
@@ -47199,7 +47741,56 @@
 %
 %
 %
+%
 % \iffalse
+%<*ccicons>
+% \fi
+%
+% \part{lwarp-ccicons.sty}
+%
+% \section{ccicons}
+%
+% \credits{Michael Ummels}
+%
+% \DescribePackage{ccicons} \pkg{ccicons} is used as \SVG\ images for \HTML.
+%
+% \changes{v0.896}{2021/03/15}{\pkg{ccicons}: Added.}
+%
+% \codehtml
+%
+% Discard all options for \pkg{lwarp-ccicons}:
+%    \begin{macrocode}
+\LWR at ProvidesPackagePass{ccicons}[2017/10/30]
+%    \end{macrocode}
+%
+%    \begin{macrocode}
+\newcommand{\LWR at ccicons}[2]{%
+    {\begin{lateximage}*[#1]\ccicons at font\char#2\end{lateximage}}
+}
+\renewcommand{\ccicons at logo}{\LWR at ccicons{ccLogo}{0}}
+\renewcommand{\ccicons at by}{\LWR at ccicons{ccAttribution}{1}}
+\renewcommand{\ccicons at sa}{\LWR at ccicons{ccShareAlike}{2}}
+\renewcommand{\ccicons at nd}{\LWR at ccicons{ccNoDerivatives}{3}}
+\renewcommand{\ccicons at nc}{\LWR at ccicons{ccNonCommercial}{4}}
+\renewcommand{\ccicons at nceu}{\LWR at ccicons{ccNonCommercialEU}{5}}
+\renewcommand{\ccicons at ncjp}{\LWR at ccicons{ccNonCommercialJP}{6}}
+\renewcommand{\ccicons at pd}{\LWR at ccicons{ccPublicDomain}{7}}
+\renewcommand{\ccicons at zero}{\LWR at ccicons{ccZero}{8}}
+\renewcommand{\ccicons at sampling}{\LWR at ccicons{ccSampling}{9}}
+\renewcommand{\ccicons at share}{\LWR at ccicons{ccShare}{10}}
+\renewcommand{\ccicons at remix}{\LWR at ccicons{ccRemix}{11}}
+\renewcommand{\ccicons at copy}{\LWR at ccicons{ccCopy}{12}}
+\renewcommand{\ccicons at pdalt}{\LWR at ccicons{ccPublicDomainAlt}{13}}
+%    \end{macrocode}
+%
+% \iffalse
+%</ccicons>
+% \fi
+%
+%
+%
+%
+% \iffalse
 %<*centernot>
 % \fi
 %
@@ -47772,15 +48363,15 @@
 % \changes{v0.51}{2018/03/04}{\pkg{chemfig}: Added.}
 % \changes{v0.71}{2019/04/25}{\pkg{chemfig}: Updated to v1.4.}
 % \changes{v0.82}{2020/03/12}{\pkg{chemfig}: Updated to v1.5.}
+% \changes{v0.896}{2021/03/04}{\pkg{chemfig}: Updated to v1.6a.}
 %
 % \codehtml
 %
 %    \begin{macrocode}
-\LWR at ProvidesPackagePass{chemfig}[2020/03/05]
+\LWR at ProvidesPackagePass{chemfig}[2021/02/28]
 %    \end{macrocode}
 
 %    \begin{macrocode}
-
 \catcode`\_=11
 
 \@ifpackagelater{chemfig}{2020/03/05}
@@ -47795,16 +48386,18 @@
 
 \@ifpackagelater{chemfig}{2019/04/18}%
 {% 2019/04/18 or newer
+%    \end{macrocode}
+% \changes{v0.896}{2021/03/04}{\pkg{chemfig}: Updated to v1.6a.}
+%    \begin{macrocode}
+    \xpretocmd{\CF_chemfiga}
+        {\begin{lateximage}[-chemfig-~\PackageDiagramAltText]}
+        {}{\LWR at patcherror{chemfig}{CF_chemfiga}}
 
+    \xpatchcmd{\CF_chemfigb}
+        {\let\CF_flipstate\CF_zero}
+        {\end{lateximage}\let\CF_flipstate\CF_zero}
+        {}{\LWR at patcherror{chemfig}{CF_chemfigb}}
 
-    \LetLtxMacro\LWR at chemfig@origchemfig\chemfig
-
-    \renewcommand*{\chemfig}[2][]{%
-        \begin{lateximage}[-chemfig-~\PackageDiagramAltText]%
-        \LWR at chemfig@origchemfig[#1]{#2}%
-        \end{lateximage}%
-    }
-
     \GlobalLetLtxMacro\LWR at chemfig@origCF_lewisc\CF_lewisc
     \gdef\CF_lewisc#1,#2\_nil{%
     \begin{lateximage}[-chemfig-~\PackageDiagramAltText]%
@@ -49520,6 +50113,7 @@
 % \pkg{citeref} is patched for use by \pkg{lwarp}.
 %
 % \changes{v0.87}{2020/05/16}{\pkg{citeref}: Added.}
+% \changes{v0.896}{2021/04/05}{\pkg{citeref}: Improved refs: \cs{ref} to \cs{LWR at refwithsection}.}
 %
 % \codehtml
 %
@@ -49528,7 +50122,9 @@
 %    \end{macrocode}
 %
 %    \begin{macrocode}
-\def\@cprwrite#1={\write\@auxout{\string\citepageref{#1}{\theLWR at currentautosec}}}
+\def\@cprwrite#1={%
+    \write\@auxout{\string\citepageref{#1}{\theLWR at previousautopagelabel}}%
+}
 
 \def\citepageref#1#2{%
     \xdef\cpr at testa{\@nameuse{cpr at last@#1}}%letzte Zitatstelle
@@ -49538,8 +50134,11 @@
     \else%
         \@namexdef{cpr at last@#1}{#2}%
         \@ifundefined{cpr@#1}%
-            {\@namexdef{cpr@#1}{\ref{\BaseJobname-autopage-#2}}}%   lwarp
-            {\@namexdef{cpr@#1}{\@nameuse{cpr@#1}, \ref{\BaseJobname-autopage-#2}}}%    lwarp
+            {\@namexdef{cpr@#1}{\LWR at refwithsection{\BaseJobname-autopage-#2}}}%   lwarp
+            {%      lwarp
+                \@namexdef{cpr@#1}{\@nameuse{cpr@#1}, % space
+                \LWR at refwithsection{\BaseJobname-autopage-#2}}%
+            }%
     \fi
     }
 %    \end{macrocode}
@@ -49607,8 +50206,56 @@
 %
 %
 %
+% \iffalse
+%<*classicthesis>
+% \fi
 %
+% \part{lwarp-classicthesis.sty}
+%
+% \section{classicthesis}
+%
+% \credits{André Miede and Ivo Pletikosić}
+%
+% \DescribePackage{classicthesis} \pkg{classicthesis} is emulated.
+%
+% \changes{v0.896}{2021/03/15}{\pkg{classicthesis}: Added.}
+%
+% \codehtml
+%
+% Discard all options for \pkg{lwarp-classicthesis}:
+%    \begin{macrocode}
+\LWR at ProvidesPackageDrop{classicthesis}[2018/06/03]
+%    \end{macrocode}
+%
+%    \begin{macrocode}
+\RequirePackage{scrlayer-scrpage} % provides headers and footers (KOMA Script)
+\RequirePackage{scrtime} % time access
+\PassOptionsToPackage{titles}{tocloft}
+\RequirePackage{textcase} % for \MakeTextUppercase
+\RequirePackage[newparttoc]{titlesec} % newparttoc to write \part to .toc with \numberline
+\RequirePackage{tocloft}
+\PassOptionsToPackage{headinclude,footinclude}{typearea} % for classes other than KOMA
+\RequirePackage{typearea}
+\PassOptionsToPackage{marginal}{footmisc}% marginal flushmargin
+\RequirePackage{footmisc}%
+\RequirePackage{prelim2e}
+\RequirePackage{remreset}%
+
+\DeclareRobustCommand{\spacedallcaps}[1]{\textsc{\MakeTextUppercase{#1}}}
+\DeclareRobustCommand{\spacedlowsmallcaps}[1]{\textsc{\MakeTextLowercase{#1}}}
+\newcommand{\ctparttext}[1]{}
+\newcommand{\tocEntry}[1]{}
+\DeclareRobustCommand*{\deactivateaddvspace}{}%
+\newlength{\beforebibskip}
+%    \end{macrocode}
+%
 % \iffalse
+%</classicthesis>
+% \fi
+%
+%
+%
+% \iffalse
 %<*cleveref>
 % \fi
 %
@@ -49814,6 +50461,30 @@
 %    \end{macrocode}
 %
 %
+% \changes{v0.896}{2021/04/07}{\pkg{cleveref}: Undo \pkg{memoir} changes.}
+%    \begin{macrocode}
+\@ifclassloaded{memoir}{
+\AtBeginDocument{
+\def\sf at memsub@label(#1)#2{%
+  \protected at edef\mem at currentlabelname{#1}%
+  \sf@@memsub at label{#2}}
+}
+}{}
+%    \end{macrocode}
+%
+% \changes{v0.896}{2021/04/07}{\pkg{cleveref}: Undo \pkg{subfig} changes.}
+%    \begin{macrocode}
+\@ifpackageloaded{subfig}{
+\def\sf at sub@label(#1)#2{%
+  \ifhyperrefloaded
+    \protected at edef\@currentlabelname{%
+      \expandafter\strip at period #1\relax.\relax\@@@}%
+  \fi
+  \sf@@sub at label{#2}}
+}{}
+%    \end{macrocode}
+%
+%
 % ^^A % For \brand{MathJax} and \pkg{cleveref},
 % ^^A % but not \pkg{varioref} since \pkg{varioref} macros would only
 % ^^A % be useful in math inside a \cs{text} macro, where they do not
@@ -52069,8 +52740,158 @@
 %
 %
 %
+% \iffalse
+%<*enotez>
+% \fi
 %
+% \part{lwarp-enotez.sty}
+%
+% \section{enotez}
+%
+% \credits{Clemens Niederberger}
+%
+% \DescribePackage{enotez}
+% \pkg{enotez} is patched for use by \pkg{lwarp}.
+%
+% \changes{v0.896}{2021/04/07}{\pkg{enotez}: Added.}
+%
+% \codehtml
+%
+%    \begin{macrocode}
+\LWR at ProvidesPackagePass{enotez}[2020/12/13]
+%    \end{macrocode}
+%
+% Hyperref is emulated by \pkg{lwarp}, so it is forced on for \pkg{enotez}:
+%    \begin{macrocode}
+\ExplSyntaxOn
+\AtBeginDocument{
+    \bool_set_true:N \l__enotez_hyperref_bool
+    \bool_set_true:N \l__enotez_hyperfootnotes_bool
+}
+%    \end{macrocode}
+%
+% Do not move or \cs{hbox} the \cs{hypertarget}:
+%    \begin{macrocode}
+% typeset the actual mark:
+% #1: id
+% #2: mark
+\cs_gset_protected:Npn \enotez_write_mark:nn #1#2
+  {
+    \bool_if:NTF \l__enotez_hyperfootnotes_bool
+      {
+        \enotezwritemark { \hyperlink {enz.#1} { \enmarkstyle #2 } }
+        \bool_if:NT \l__enotez_hyperbackref_bool
+          {
+%             \box_move_up:nn {1em} { 
+%                 \hbox:n {
+                    \hypertarget {enz.#1.backref} { }
+%                 }
+%             }
+          }
+      }
+      { \enotezwritemark { \enmarkstyle #2 } }
+  }
+\cs_generate_variant:Nn \enotez_write_mark:nn {x}
+%    \end{macrocode}
+%
+% Do not move or \cs{hbox} the \cs{hypertarget}:
+%    \begin{macrocode}
+\cs_gset_protected:Npn \enotez_write_list_number:n #1
+  {
+    \bool_if:NT \l__enotez_hyperfootnotes_bool
+      {
+%         \box_move_up:nn {1em} { \hbox:n {
+            \hypertarget {enz.#1} { }
+%         } }
+      }
+    \tl_use:N \l__enotez_list_number_format_tl
+    \tl_if_eq:nxTF {a} { \prop_item:Nn \g__enotez_endnote_man_prop {#1} }
+      {
+        \bool_if:nTF
+          { \l__enotez_hyperfootnotes_bool && \l__enotez_hyperbackref_bool }
+          {
+            \exp_args:Nnx
+            \hyperlink {enz.#1.backref}
+              { \exp_not:V \l__enotez_endnote_mark_tl }
+          }
+          { \prop_item:Nn \g__enotez_endnote_mark_prop {#1} }
+      }
+      {
+        \bool_if:nTF
+          { \l__enotez_hyperfootnotes_bool && \l__enotez_hyperbackref_bool }
+          {
+            \exp_args:Nnx
+            \hyperlink {enz.#1.backref}
+              { \exp_not:V \l__enotez_endnote_mark_tl }
+          }
+          { \tl_use:N \l__enotez_endnote_mark_tl }
+      }
+  }
+%    \end{macrocode}
+%
+% Do not move the label to the left:
+%    \begin{macrocode}
+\DeclareTemplateCode {enotez-list} {paragraph} {1}
+  {
+    heading       = \enotez_list_heading:n           ,
+    format        = \l__enotez_list_format_tl        ,
+    number        = \enotez_list_number:n            ,
+    number-format = \l__enotez_list_number_format_tl ,
+    notes-sep     = \l__enotez_list_notes_sep_dim
+  }
+  {
+    \AssignTemplateKeys
+    \enotez_set_totoc:
+    \enotez_list_heading:n { \l__enotez_list_name_tl }
+    \enotez_list_preamble:
+    \enotez_build_print_list:nnnn {#1}
+      {}
+      {
+        \par\noindent
+        \group_begin:
+          \tl_use:N \l__enotez_list_format_tl
+%           \hbox_overlap_left:n
+%             {
+              \enotez_list_number:n
+                { \enotez_write_list_number:n {##1} }
+              \tl_use:N \c_space_tl
+%             }
+          % \cs_set:cpn {@currentlabel}
+          %   { \p at endnote \l__enotez_endnote_mark_tl }
+          \tl_use:N \g__enotez_endnote_text_tl
+          \par
+          \dim_compare:nT { \l__enotez_list_notes_sep_dim != 0pt }
+            { \addvspace { \l__enotez_list_notes_sep_dim } }
+        \group_end:
+      }
+      {}
+    \enotez_list_postamble:
+  }
+
+\ExplSyntaxOff
+%    \end{macrocode}
+%
+% For \brand{MathJax}:
+%    \begin{macrocode}
+\begin{warpMathJax}
+\def\endnotename{endnote}
+\appto\LWR at syncnotenumbers{\LWR at synconenotenumber{LWRendnote}{\theendnote}}
+\appto\LWR at syncnotenames{\LWR at synconenotename{LWRendnote}{\endnotename}}
+\CustomizeMathJax{\def\LWRendnote{1}}
+\CustomizeMathJax{\newcommand{\endnote}[2][\LWRendnote]{{}^{\mathrm{#1}}}}
+\CustomizeMathJax{\newcommand{\endnotemark}[1][\LWRendnote]{{}^{\mathrm{#1}}}}
+\end{warpMathJax}
+%    \end{macrocode}
+
+%
 % \iffalse
+%</enotez>
+% \fi
+%
+%
+%
+%
+% \iffalse
 %<*enumerate>
 % \fi
 %
@@ -52204,10 +53025,11 @@
 %    \end{macrocode}
 
 % \changes{v0.47}{2018/01/26}{\pkg{epigraph}: Fix: Line wrap at \HTML\ hyphen.}
+% \changes{v0.896}{2021/03/05}\pkg{epigraph}: {Added \ARIA\ role.}
 %    \begin{macrocode}
 \DeclareDocumentCommand{\LWR at HTML@epigraph}{m m}
 {%
-    \begin{LWR at BlockClassWP}{\LWR at print@mbox{text-align:right}}{}{epigraph}%
+    \begin{LWR at BlockClassWP}{\LWR at print@mbox{text-align:right}}{}(note){epigraph}%
     \qitem{#1}{#2}%
     \end{LWR at BlockClassWP}%
 }
@@ -52214,7 +53036,7 @@
 \LWR at formatted{epigraph}
 
 \DeclareDocumentEnvironment{LWR at HTML@epigraphs}{}
-    {\LWR at BlockClassWP{\LWR at print@mbox{text-align:right}}{}{epigraph}}
+    {\LWR at BlockClassWP{\LWR at print@mbox{text-align:right}}{}(note){epigraph}}%
     {\endLWR at BlockClassWP}
 \LWR at formattedenv{epigraphs}
 %    \end{macrocode}
@@ -53131,9 +53953,20 @@
 % \begin{noindmacro}{\V@@footnotetext}
 % Patches in a subset of \pkg{lwarp}'s \cs{LWR at footnotetext} to the
 % \pkg{fancyvrb} version of \cs{V@@footnotetext}.
+% \changes{v0.896}{2021/04/04}{Fix: \ctr{autopage} references in footnotes.}
 %    \begin{macrocode}
 \def\V@@footnotetext{%
 \LWR at traceinfo{V at footnotetext}%
+%    \end{macrocode}
+%
+% Place an autopage marker so that back references to citations inside
+% a footnote will link closer to the footnote text, if possible.
+%    \begin{macrocode}
+\LWR at newautopagelabel{page}%
+%    \end{macrocode}
+%
+% Take the current footnote box, then append:
+%    \begin{macrocode}
 \global\setbox\LWR at footnotebox=\vbox\bgroup%
 %    \end{macrocode}
 % Add to any current footnotes:
@@ -53168,6 +54001,14 @@
 %    \begin{macrocode}
   \bgroup%
   \aftergroup{\V@@@footnotetext}%
+%    \end{macrocode}
+%
+% Do not generate autopages inside the footnotes, since they are
+% accumulated at the moment before finally being used perhaps on a later page.
+%    \begin{macrocode}
+    \let\LWR at newautopagelabel\LWR at null@newautopagelabel%
+%    \end{macrocode}
+%    \begin{macrocode}
   \ignorespaces%
 }%
 %    \end{macrocode}
@@ -53581,9 +54422,20 @@
 % \begin{noindmacro}{\V@@footnotetext}
 % Patches in a subset of \pkg{lwarp}'s \cs{LWR at footnotetext} to the
 % \pkg{fancyvrb} version of \cs{V@@footnotetext}.
+% \changes{v0.896}{2021/04/04}{Fix: \ctr{autopage} references in footnotes.}
 %    \begin{macrocode}
 \def\V@@footnotetext{%
 \LWR at traceinfo{V at footnotetext}%
+%    \end{macrocode}
+%
+% Place an autopage marker so that back references to citations inside
+% a footnote will link closer to the footnote text, if possible.
+%    \begin{macrocode}
+\LWR at newautopagelabel{page}%
+%    \end{macrocode}
+%
+% Take the current footnote box, then append:
+%    \begin{macrocode}
 \global\setbox\LWR at footnotebox=\vbox\bgroup%
 %    \end{macrocode}
 % Add to any current footnotes:
@@ -53618,6 +54470,14 @@
 %    \begin{macrocode}
   \bgroup%
   \aftergroup{\V@@@footnotetext}%
+%    \end{macrocode}
+%
+% Do not generate autopages inside the footnotes, since they are
+% accumulated at the moment before finally being used perhaps on a later page.
+%    \begin{macrocode}
+    \let\LWR at newautopagelabel\LWR at null@newautopagelabel%
+%    \end{macrocode}
+%    \begin{macrocode}
   \ignorespaces%
 }%
 %    \end{macrocode}
@@ -54366,7 +55226,7 @@
 
 \renewcommand{\l at fixme}[2]{%
     \hypertocfloat{1}{fixme}{lox}%
-        {\LWR at nameref{\BaseJobname-autopage-\arabic{LWR at nextautopage}} --- #1}
+        {\LWR at nameref{\BaseJobname-autopage-\arabic{LWR at nextautopage}} --- #1}%
         {#2}
 }
 %    \end{macrocode}
@@ -54682,6 +55542,7 @@
 % Borrowed from the \pkg{lwarp} version of \pkg{keyfloat}:
 % \changes{v0.42}{2017/10/26}{\pkg{floatflt}: Added width.}
 % \changes{v0.79}{2020/01/08}{\pkg{floatflt}: Improved width control.}
+% \changes{v0.896}{2021/03/05}{\pkg{floatflt}: Added \ARIA\ role.}
 %    \begin{macrocode}
 \NewDocumentEnvironment{KFLTfloatflt at marginfloat}{O{-1.2ex} m m}
 {%
@@ -54692,6 +55553,7 @@
             width: 1.5in; % reasonable dummy width for word processor
             margin:10pt%
         }{}%
+        (note)%
         {marginblock}%
     }{%
         \setlength{\LWR at templengthone}{#3}%
@@ -54702,6 +55564,7 @@
         }{%
             width:\LWR at printlength{\LWR at templengthone}%
         }%
+        (note)%
         {marginblock}%
     }%
     \renewcommand*{\@captype}{#2}%
@@ -59061,9 +59924,12 @@
 % \changes{v0.52}{2018/03/26}{\pkg{hyperref}: Fix: \progcode{\#}, \progcode{\%}, \progcode{\&}, \progcode{\~}, \progcode{\_} in \URL.}
 % \changes{v0.54}{2018/04/19}{\pkg{hyperref}: Fix: \cs{ref} in \cs{hyperref} and \cs{hyperlink} caused nested link.}
 % \changes{v0.54}{2018/04/19}{\pkg{hyperref}: Fix: \cs{hyperref} and \cs{hyperlink} with special chars in text.}
+% \changes{v0.896}{2021/04/07}{\pkg{hyperref}: Fix: No \cs{hyperlink} in \HTML\ comment.}
 %    \begin{macrocode}
 \DeclareDocumentCommand{\LWR at hyperlinkb}{m}{%
-    \LWR at hyperrefcb[LWR-ht-#1]%
+    \ifbool{LWR at insidemathcomment}%
+        {\endgroup}%
+        {\LWR at hyperrefcb[LWR-ht-#1]}%
 }
 
 \DeclareDocumentCommand{\hyperlink}{}{%
@@ -59099,8 +59965,29 @@
 %    \end{macrocode}
 % \end{noindmacro}
 
+% Default names:
+% \changes{v0.896}{2021/03/13}{\pkg{hyperref}: Fix: Added \cs{*autorefname} macros.}
+%    \begin{macrocode}
+\def\equationautorefname{Equation}%
+\def\footnoteautorefname{footnote}%
+\def\itemautorefname{item}%
+\def\figureautorefname{Figure}%
+\def\tableautorefname{Table}%
+\def\partautorefname{Part}%
+\def\appendixautorefname{Appendix}%
+\def\chapterautorefname{chapter}%
+\def\sectionautorefname{section}%
+\def\subsectionautorefname{subsection}%
+\def\subsubsectionautorefname{subsubsection}%
+\def\paragraphautorefname{paragraph}%
+\def\subparagraphautorefname{subparagraph}%
+\def\FancyVerbLineautorefname{line}%
+\def\theoremautorefname{Theorem}%
+\def\pageautorefname{page}%
+%    \end{macrocode}
 
 
+
 % \begin{noindmacro}{\pdfstringdef} \marg{macroname} \marg{\TeX{}string}
 %
 %    \begin{macrocode}
@@ -59321,6 +60208,7 @@
 % \DescribePackage{hyperxmp} \pkg{hyperxmp} is ignored.
 %
 % \changes{v0.34}{2017/08/03}{\pkg{hyperxmp}: Added.}
+% \changes{v0.896}{2021/03/13}{\pkg{hyperxmp}: Added keys.}
 %
 % \codehtml
 %
@@ -59327,6 +60215,52 @@
 % Discard all options for \pkg{lwarp-hyperxmp}:
 %    \begin{macrocode}
 \LWR at ProvidesPackageDrop{hyperxmp}[2018/11/27]
+
+\define at key{LWR at hyperref}{pdfdate}[]{}
+\define at key{LWR at hyperref}{pdfmetadate}[]{}
+\define at key{LWR at hyperref}{pdfcopyright}[]{}
+\define at key{LWR at hyperref}{pdftype}[]{}
+\define at key{LWR at hyperref}{pdflicenseurl}[]{}
+\define at key{LWR at hyperref}{pdfauthortitle}[]{}
+\define at key{LWR at hyperref}{pdfcaptionwriter}[]{}
+\define at key{LWR at hyperref}{pdfmetalang}[]{}
+\define at key{LWR at hyperref}{pdfapart}[]{}
+\define at key{LWR at hyperref}{pdfaconformance}[]{}
+\define at key{LWR at hyperref}{pdfuapart}[]{}
+\define at key{LWR at hyperref}{pdfxstandard}[]{}
+\define at key{LWR at hyperref}{pdfsource}[]{}
+\define at key{LWR at hyperref}{pdfdocumentid}[]{}
+\define at key{LWR at hyperref}{pdfinstanceid}[]{}
+\define at key{LWR at hyperref}{pdfversionid}[]{}
+\define at key{LWR at hyperref}{pdfrendition}[]{}
+\define at key{LWR at hyperref}{pdfpublication}[]{}
+\define at key{LWR at hyperref}{pdfpubtype}[]{}
+\define at key{LWR at hyperref}{pdfbytes}[]{}
+\define at key{LWR at hyperref}{pdfnumpages}[]{}
+\define at key{LWR at hyperref}{pdfissn}[]{}
+\define at key{LWR at hyperref}{pdfeissn}[]{}
+\define at key{LWR at hyperref}{pdfisbn}[]{}
+\define at key{LWR at hyperref}{pdfbookedition}[]{}
+\define at key{LWR at hyperref}{pdfpublisher}[]{}
+\define at key{LWR at hyperref}{pdfvolumenum}[]{}
+\define at key{LWR at hyperref}{pdfissuenum}[]{}
+\define at key{LWR at hyperref}{pdfpagerange}[]{}
+\define at key{LWR at hyperref}{pdfdoi}[]{}
+\define at key{LWR at hyperref}{pdfurl}[]{}
+\define at key{LWR at hyperref}{pdfidentifier}[]{}
+\define at key{LWR at hyperref}{pdfsubtitle}[]{}
+\define at key{LWR at hyperref}{pdfpubstatus}[]{}
+\define at key{LWR at hyperref}{pdfcontactaddress}[]{}
+\define at key{LWR at hyperref}{pdfcontactcity}[]{}
+\define at key{LWR at hyperref}{pdfcontactregion}[]{}
+\define at key{LWR at hyperref}{pdfcontactpostcode}[]{}
+\define at key{LWR at hyperref}{pdfcontactcountry}[]{}
+\define at key{LWR at hyperref}{pdfcontactphone}[]{}
+\define at key{LWR at hyperref}{pdfcontactemail}[]{}
+\define at key{LWR at hyperref}{pdfcontacturl}[]{}
+\define at key{LWR at hyperref}{keeppdfinfo}[]{}
+\define at key{LWR at hyperref}{pdfauthor}[]{}
+\define at key{LWR at hyperref}{pdfkeywords}[]{}
 %    \end{macrocode}
 %
 %
@@ -60674,6 +61608,7 @@
 
 % \begin{noindenvironment}{KFLT at marginfloat} \oarg{offset} \marg{type}
 % \changes{v0.42}{2017/10/26}{\pkg{keyfloat}: If \progcode{FormatWP} add explicit \HTML\ style.}
+% \changes{v0.896}{2021/03/05}{\pkg{keyfloat}: Added \ARIA\ role.}
 %    \begin{macrocode}
 \DeclareDocumentEnvironment{KFLT at marginfloat}{O{-1.2ex} m}
 {%
@@ -60681,6 +61616,7 @@
     \LWR at BlockClassWP%
         {float:right; width:2in; margin:10pt}%
         {}%
+        (note)%
         {marginblock}%
     \renewcommand*{\@captype}{#2}%
     \minipage{\LWR at usersmarginparwidth}%
@@ -60706,7 +61642,8 @@
 
 
 % \begin{noindenvironment}{keywrap} \marg{width} \marg{keyfloat}
-% \changes{v0.79}{2020/01/10}{Factored to \cs{LWR at setvirtualpage}.}
+% \changes{v0.79}{2020/01/10}{\pkg{keyfloat}: Factored to \cs{LWR at setvirtualpage}.}
+% \changes{v0.896}{2021/03/05}{\pkg{keyfloat}: Added \ARIA\ role.}
 % ^^A % Modified to vertically align minipage for \HTML\ output:
 %    \begin{macrocode}
 \DeclareDocumentEnvironment{keywrap}{m +m}
@@ -60719,6 +61656,7 @@
             margin:10pt%
         }%
         {}%
+        (note)%
         {marginblock}%
     \setlength{\linewidth}{.95\LWR at templengthone}%
     \booltrue{KFLT at keywrap}%
@@ -62016,7 +62954,7 @@
 %
 % \DescribePackage{listings}
 % \pkg{listings} is supported with some limitations.
-% Text formatting is not yet supported.
+% Text formatting and escape characters are not yet supported.
 %
 % \changes{v0.20}{2017/01/01}{\pkg{listings}: Added.}
 %
@@ -62084,7 +63022,6 @@
 %    \end{macrocode}
 % \end{noindmacro}
 %
-%
 % \begin{noindmacro}{\lst at Init} \marg{backslash-processing} \quad
 % Done at the start of a listing.
 %    \begin{macrocode}
@@ -62102,29 +63039,113 @@
 % with paragraph handling and conditionals.
 % \changes{v0.891}{2020/09/16}{\pkg{listings}: Fix for \brand{MathJax}: Moved \cs{LWR at forcenewpage} to start.}
 %    \begin{macrocode}
-\lst at ifdisplaystyle%
-    \LWR at forcenewpage%
-\fi%
-\renewcommand*{\@captype}{lstlisting}%
-\let\lst at aboveskip\z@\let\lst at belowskip\z@%
-\gdef\lst at boxpos{t}%
-\let\lst at frame\@empty
-    \let\lst at frametshape\@empty
-    \let\lst at framershape\@empty
-    \let\lst at framebshape\@empty
-    \let\lst at framelshape\@empty
-\lstframe@\lst at frameround ffff\relax%
-\lst at multicols\@empty%
-\LWR at origlst@Init{#1}\relax%
+\lst at ifdisplaystyle%        lwarp
+    \LWR at forcenewpage%      lwarp
+\fi%                        lwarp
 %    \end{macrocode}
+%
+% Escapes do not work yet, and are disabled:
+% \changes{v0.896}{2021/03/14}{\pkg{listings}: Escapes accepted but disabled.}
+%    \begin{macrocode}
+\let\lst at ifmathescape\iffalse%      lwarp
+\let\lst at DefEsc\relax%              lwarp
+\def\lst at escapebegin{}%             lwarp
+\def\lst at escapeend{}%               lwarp
+%    \end{macrocode}
+%    \begin{macrocode}
+\renewcommand*{\@captype}{lstlisting}%      lwarp
+    \let\lst at aboveskip\z@\let\lst at belowskip\z@%     lwarp
+    \gdef\lst at boxpos{t}%            lwarp
+    \let\lst at frame\@empty%          lwarp
+    \let\lst at frametshape\@empty%    lwarp
+    \let\lst at framershape\@empty%    lwarp
+    \let\lst at framebshape\@empty%    lwarp
+    \let\lst at framelshape\@empty%    lwarp
+    \lstframe@\lst at frameround ffff\relax%   lwarp
+    \lst at multicols\@empty%  lwarp
+    \begingroup%
+    \ifx\lst at float\relax\else%
+        \edef\@tempa{\noexpand\lst at beginfloat{lstlisting}[\lst at float]}%
+        \expandafter\@tempa%
+    \fi%
+    \ifx\lst at multicols\@empty\else%
+        \edef\lst at next{\noexpand\multicols{\lst at multicols}}%
+        \expandafter\lst at next%
+    \fi%
+    \ifhmode\ifinner \lst at boxtrue \fi\fi%
+    \lst at ifbox%
+        \lsthk at BoxUnsafe%
+        \hbox to\z@\bgroup%
+             $\if t\lst at boxpos \vtop%
+        \else \if b\lst at boxpos \vbox%
+        \else \vcenter \fi\fi%
+        \bgroup \par\noindent%
+    \else%
+        \lst at ifdisplaystyle%
+            \lst at EveryDisplay%
+            \par\penalty-50\relax%
+            \vspace\lst at aboveskip%
+        \fi%
+    \fi%
+    \normalbaselines%
+    \abovecaptionskip\lst at abovecaption\relax%
+    \belowcaptionskip\lst at belowcaption\relax%
+    \lst at MakeCaption t%
+%    \end{macrocode}
+%
+% Use the overall listing label instead of the line number label:
+% \changes{v0.896}{2021/03/14}{\pkg{listings}: Fix: Labels.}
+%    \begin{macrocode}
+\LWR at traceinfo{lst at Init: defining current label !\@currentlabel!}%
+    \let\LWR at listings@currentlabel\@currentlabel%            lwarp
+\LWR at traceinfo{lst at Init: defining current label !\cref at currentlabel!}%
+    \let\LWR at listings@cref at currentlabel\cref at currentlabel%   lwarp
+%    \end{macrocode}
+%    \begin{macrocode}
+\LWR at traceinfo{lst at Init: preinit and init}%
+    \lsthk at PreInit \lsthk at Init%
+%    \end{macrocode}
+%    \begin{macrocode}
+    \let\@currentlabel\LWR at listings@currentlabel%            lwarp
+    \let\cref at currentlabel\LWR at listings@cref at currentlabel%   lwarp
+%    \end{macrocode}
+%
+%    \begin{macrocode}
+\LWR at traceinfo{lst at Init: M}%
+    \lst at ifdisplaystyle
+        \global\let\lst at ltxlabel\@empty
+        \if at inlabel
+            \lst at ifresetmargins
+                \leavevmode
+            \else
+                \xdef\lst at ltxlabel{\the\everypar}%
+                \lst at AddTo\lst at ltxlabel{%
+                    \global\let\lst at ltxlabel\@empty
+                    \everypar{\lsthk at EveryLine\lsthk at EveryPar}}%
+            \fi
+        \fi
+        \everypar\expandafter{\lst at ltxlabel
+                              \lsthk at EveryLine\lsthk at EveryPar}%
+    \else
+        \everypar{}
+        \let\lst at NewLine\@empty
+    \fi
+\LWR at traceinfo{lst at Init: P}%
+    \lsthk at InitVars \lsthk at InitVarsBOL
+    \lst at Let{13}\lst at MProcessListing
+    \let\lst at Backslash#1%
+    \lst at EnterMode{\lst at Pmode}{\lst at SelectCharTable}%
+    \lst at InitFinalize%
+\LWR at traceinfo{lst at Init: S}%
+%    \end{macrocode}
 % Avoids extra horizontal space:
 % \changes{v0.60}{2018/09/12}{\pkg{listings}: Fix if inside a list.}
 %    \begin{macrocode}
-\def\lst at framelr{}%
+\def\lst at framelr{}%     lwarp
 %    \end{macrocode}
 %    \begin{macrocode}
-\LWR at traceinfo{finished origlst at Init}%
-\lst at ifdisplaystyle%
+\LWR at traceinfo{lst at Init: finished origlst at Init}%
+\lst at ifdisplaystyle%    lwarp
 %    \end{macrocode}
 % Creating a display.
 %
@@ -62132,26 +63153,25 @@
 % produce the \element{pre}, then
 % reenable line numbers.
 %    \begin{macrocode}
-    \LWR at traceinfo{About to create verbatim.}%
-    \let\lsthk at EveryPar\relax%
+    \LWR at traceinfo{lst at Init: About to create verbatim.}%  lwarp
+    \let\lsthk at EveryPar\relax%                  lwarp
 %    \end{macrocode}
 % \changes{v0.891}{2020/09/16}{\pkg{listings}: Fix for \brand{MathJax}: Moved \cs{LWR at forcenewpage} to start.}
 %    \begin{macrocode}
-    \LWR at atbeginverbatim{programlisting}%
+    \LWR at atbeginverbatim{programlisting}%       lwarp
 
-    \let\lsthk at EveryPar\LWR at origlsthkEveryPar%
-\else%
+    \let\lsthk at EveryPar\LWR at origlsthkEveryPar%  lwarp
+\else%                                          lwarp
 %    \end{macrocode}
 % Inline, so open a \element{span}:
 % \changes{v0.895}{2021/01/14}{Improved \HTML\ quotes.}
 %    \begin{macrocode}
-    \ifbool{LWR at verbtags}{\LWR at htmltag{%
-        span class=\textquotedbl{}inlineprogramlisting\textquotedbl%
-    }}{}%
-\fi%
-\LWR at traceinfo{lst at Init done}%
+    \ifbool{LWR at verbtags}{\LWR at htmltag{%        lwarp
+        span class=\textquotedbl{}inlineprogramlisting\textquotedbl%    lwarp
+    }}{}%                                       lwarp
+\fi%                                            lwarp
+\LWR at traceinfo{lst at Init: done}%
 }
-
 %    \end{macrocode}
 % \end{noindmacro}
 %
@@ -62159,13 +63179,13 @@
 % \begin{noindmacro}{\lst at DeInit} \quad Done at the end of a listing.
 %    \begin{macrocode}
 \renewcommand*{\lst at DeInit}{%
+\LWR at traceinfo{lst at DeInit}%
 \lst at ifdisplaystyle%
 %    \end{macrocode}
+%
 % Creating a display.
 %
-% Disable line numbers,
-% produce the \element{/pre}, then
-% reenable line numbers:
+% Disable line numbers, produce the \element{/pre}, then reenable line numbers:
 %    \begin{macrocode}
     \let\lsthk at EveryPar\relax%
     \LWR at afterendverbatim%
@@ -62172,14 +63192,44 @@
     \let\lsthk at EveryPar\LWR at origlsthkEveryPar%
 \else%
 %    \end{macrocode}
+%
 % Inline, so create the closing \element{/span}:
 %    \begin{macrocode}
     \ifbool{LWR at verbtags}{\noindent\LWR at htmltag{/span}}{}%
 \fi%
 %    \end{macrocode}
+%
 % Final \pkg{listings} deinit:
 %    \begin{macrocode}
-\LWR at origlst@DeInit%
+    \lst at XPrintToken \lst at EOLUpdate
+    \global\advance\lst at newlines\m at ne
+    \lst at ifshowlines
+        \lst at DoNewLines
+    \else
+        \setbox\@tempboxa\vbox{\lst at DoNewLines}%
+    \fi
+    \lst at ifdisplaystyle \par\removelastskip \fi
+    \lsthk at ExitVars\everypar{}\lsthk at DeInit\normalbaselines\normalcolor
+    \lst at MakeCaption b%
+    \lst at ifbox
+        \egroup $\hss \egroup
+        \vrule\@width\lst at maxwidth\@height\z@\@depth\z@
+    \else
+        \lst at ifdisplaystyle
+            \par\penalty-50\vspace\lst at belowskip
+        \fi
+    \fi
+    \ifx\lst at multicols\@empty\else
+        \def\lst at next{\global\let\@checkend\@gobble
+                      \endmulticols
+                      \global\let\@checkend\lst@@checkend}
+        \expandafter\lst at next
+    \fi
+    \ifx\lst at float\relax\else
+        \expandafter\lst at endfloat
+    \fi
+    \endgroup
+\LWR at traceinfo{lst at DeInit done}%
 }
 %    \end{macrocode}
 % \end{noindmacro}
@@ -62192,19 +63242,18 @@
 %
 % Patched for \pkg{lwarp}.
 %    \begin{macrocode}
-
 \def\lst at MakeCaption#1{%
-\LWR at traceinfo{MAKING CAPTION at #1}%
+\LWR at traceinfo{lst at MakeCaption at #1}%
   \lst at ifdisplaystyle
-\LWR at traceinfo{making a listings display caption}%
+\LWR at traceinfo{lst at MakeCaption: making a listings display caption}%
     \ifx #1t%
          \ifx\lst@@caption\@empty\expandafter\lst at HRefStepCounter \else
                                  \expandafter\refstepcounter
          \fi {lstlisting}%
-\LWR at traceinfo{About to assign label: !\lst at label!}%
+% \LWR at traceinfo{About to assign label: !\lst at label!}%
 %         \ifx\lst at label\@empty\else
 % \label{\lst at label}\fi
-\LWR at traceinfo{Finished assigning the label.}%
+% \LWR at traceinfo{Finished assigning the label.}%
         \let\lst at arg\lst at intname \lst at ReplaceIn\lst at arg\lst at filenamerpl
         \global\let\lst at name\lst at arg \global\let\lstname\lst at name
         \lst at ifnolol\else
@@ -62218,7 +63267,7 @@
 % This code places a contents entry for a non-float.
 % This would have to be modified for \pkg{lwarp}:
 %    \begin{macrocode}
-\LWR at traceinfo{addcontents lst at name: -\lst at name-}%
+\LWR at traceinfo{lst at MakeCaption: addcontents lst at name: -\lst at name-}%
 %                            \addcontentsline{lol}{lstlisting}{\lst at name}
                         \fi
                     \fi
@@ -62227,7 +63276,7 @@
 %    \end{macrocode}
 % This would have to be modified for \pkg{lwarp}:
 %    \begin{macrocode}
-\LWR at traceinfo{addcontents lst@@caption: -\lst@@caption-}%
+\LWR at traceinfo{lst at MakeCaption: addcontents lst@@caption: -\lst@@caption-}%
                  \addcontentsline{lol}{lstlisting}%
 {\protect\numberline{\thelstlisting}%
 {\protect\ignorespaces \LWR at isolate{\lst@@caption} \protect\relax}}%
@@ -62235,10 +63284,10 @@
          \fi
      \fi
     \ifx\lst at caption\@empty\else
-\LWR at traceinfo{lst at caption not empty-}%
+\LWR at traceinfo{lst at MakeCaption: lst at caption not empty-}%
         \lst at IfSubstring #1\lst at captionpos
             {\begingroup
-\LWR at traceinfo{at the selected position}%
+\LWR at traceinfo{lst at MakeCaption: at the selected position}%
 %    \end{macrocode}
 % These space and box commands are not needed for \HTML\ output:
 %    \begin{macrocode}
@@ -62252,7 +63301,7 @@
 % New \pkg{lwarp} code to create a caption:
 % \changes{v0.73}{2019/06/25}{\pkg{listings}: Fix: Paragraph tags.}
 %    \begin{macrocode}
-                    \LWR at stoppars%
+                    \LWR at stoppars%      lwarp
                   \lst at makecaption\fnum at lstlisting{\ignorespaces \lst at caption}
              \else
 %    \end{macrocode}
@@ -62259,19 +63308,19 @@
 % New \pkg{lwarp} code to create a title:
 %    \begin{macrocode}
 %                  \lst at maketitle\lst at title % (AS)
-\LWR at traceinfo{Making title: \lst at title}%
+\LWR at traceinfo{lst at MakeCaption: Making title: \lst at title}%
 \begin{BlockClass}{lstlistingtitle}%    lwarp
 \lst at maketitle\lst at title%               lwarp
 \end{BlockClass}%                       lwarp
-             \fi
-\LWR at traceinfo{About to assign label: !\lst at label!}%
-        \ifx\lst at label\@empty\else
+             \fi%
+\LWR at traceinfo{lst at MakeCaption: About to assign label: !\lst at label!}%
+        \ifx\lst at label\@empty\else%
 \leavevmode% gets rid of bad space factor error
 \GetTitleStringExpand{\lst at caption}%
 \edef\LWR at lntemp{\GetTitleStringResult}%
 \edef\@currentlabelname{\detokenize\expandafter{\LWR at lntemp}}%
-\label{\lst at label}\fi
-\LWR at traceinfo{Finished assigning the label.}%
+\label{\lst at label}\fi%
+\LWR at traceinfo{lst at MakeCaption: Finished assigning the label.}%
 %    \end{macrocode}
 % Not needed for \pkg{lwarp}:
 %    \begin{macrocode}
@@ -62278,11 +63327,11 @@
 %              \ifx #1b\allowbreak \fi
              \endgroup}{}%
     \fi
-\LWR at traceinfo{end of making a listings display caption}%
+\LWR at traceinfo{lst at MakeCaption: end of making a listings display caption}%
   \else
-\LWR at traceinfo{INLINE}%
+\LWR at traceinfo{lst at MakeCaption: INLINE}%
   \fi
-\LWR at traceinfo{DONE WITH CAPTION at #1}%
+\LWR at traceinfo{lst at MakeCaption: done at #1}%
 }
 
 \renewcommand{\lst at maketitle}[1]{%
@@ -62293,6 +63342,7 @@
 % \end{noindmacro}
 %
 %
+%
 % Patched to keep left line numbers outside of the left margin, and
 % \margintag{line numbers}
 % place right line numbers in a field \cs{VerbatimHTMLWidth} wide.
@@ -62525,25 +63575,26 @@
 \newcommand*{\LWR at longtable@headerror}{%
     \PackageError{lwarp-longtable}
     {For longtable:\MessageBreak
-    1: Keep either one of an \protect\endhead\space or
-        \protect\endfirsthead\space\MessageBreak
-        \space phrase as-is, to be used by both print and HTML.\MessageBreak
+    1: Keep either one of an \protect\endhead\space or\MessageBreak
+        \space\protect\endfirsthead\space phrase as-is,\MessageBreak
+        \space to be used by both print and HTML.\MessageBreak
     2: Place any other \protect\end... phrases inside a\MessageBreak
         \space\protect\warpprintonly\space macro,
             to be ignored by HTML.\MessageBreak
-    3: Add a final footer for HTML at the end of the table\MessageBreak
+    3: At the end of the table,\MessageBreak
+        \space add a final footer for HTML\MessageBreak
         \space inside a \protect\warpHTMLonly\space macro.
             This can be\MessageBreak
         \space a copy of an \protect\endfoot\space or
-            \protect\endfirstfoot\space phrase,\MessageBreak
-        \space but without the actual \protect\endfoot\space
-            or \protect\endfirstfoot\MessageBreak
-        \space macros.  If using threeparttablex, add\MessageBreak
+            \protect\endfirstfoot\MessageBreak
+        \space phrase, but without the actual \protect\endfoot\MessageBreak
+        \space or \protect\endfirstfoot\space macros.\MessageBreak
+        \space If using threeparttablex, add\MessageBreak
         \space \protect\insertTableNotes\space here,
             optionally with\MessageBreak
         \space \protect\UseMinipageWidths\space in front.\MessageBreak
-    See the Lwarp documentation regarding longtables\MessageBreak
-    and threeparttablex}
+    See the Lwarp documentation regarding\MessageBreak
+    longtables and threeparttablex}
     {See the Lwarp documentation regading longtables and threeparttablex.}
 }
 %    \end{macrocode}
@@ -67855,7 +68906,16 @@
 \LWRNB at patchnatbibopenclose%
 }
 %    \end{macrocode}
-
+%
+% Syncronize the autopage labels:
+% \changes{v0.896}{2021/03/26}{\pkg{natbib}: Fix: Citation references..}
+%    \begin{macrocode}
+\xpretocmd{\NAT at reset@parser}
+    {\LWR at newautopagelabel{page}}%
+    {}
+    {\LWR at patcherror{natbib}{NAT at reset@parser}}
+%    \end{macrocode}
+%
 % \iffalse
 %</natbib>
 % \fi
@@ -69475,6 +70535,12 @@
    \refstepcounter[#1]{#2}%  <<< cleveref modification
    \theorem at prework
     \LWR at forcenewpage% lwarp
+%    \end{macrocode}
+% \changes{v0.896}{2021/03/14}{\pkg{ntheorem}: Intersperse footnotes.}
+%    \begin{macrocode}
+    \LWR at printpendingfootnotes%                   lwarp
+%    \end{macrocode}
+%    \begin{macrocode}
     \BlockClass{theorembody#1}%\LWR at thisthmstyle% lwarp
    \trivlist % latex's \trivlist, calling latex's \@trivlist unchanged
    \ifuse at newframeskips  % cf. latex.ltx for topsepadd: \@trivlist
@@ -69511,6 +70577,12 @@
    \refstepcounter{#2}%
    \theorem at prework
     \LWR at forcenewpage% lwarp
+%    \end{macrocode}
+% \changes{v0.896}{2021/03/14}{\pkg{ntheorem}: Intersperse footnotes.}
+%    \begin{macrocode}
+    \LWR at printpendingfootnotes%                   lwarp
+%    \end{macrocode}
+%    \begin{macrocode}
     \BlockClass{theorembody#1}%\LWR at thisthmstyle% lwarp
    \trivlist % latex's \trivlist, calling latex's \@trivlist unchanged
    \ifuse at newframeskips  % cf. latex.ltx for topsepadd: \@trivlist
@@ -69964,6 +71036,12 @@
 }{}%
 \LWR at origendtheorem% also does \@endtrivlist
 \ifbool{LWR at ntheoremmarks}{\global\setendmarktrue}{}%
+%    \end{macrocode}
+% \changes{v0.896}{2021/03/14}{\pkg{ntheorem}: Intersperse footnotes.}
+%    \begin{macrocode}
+    \LWR at printpendingfootnotes%                   lwarp
+%    \end{macrocode}
+%    \begin{macrocode}
 \endBlockClass%
 }
 %    \end{macrocode}
@@ -70139,9 +71217,63 @@
 % \fi
 %
 %
+% \iffalse
+%<*orcidlink>
+% \fi
 %
+% \part{lwarp-orcidlink.sty}
 %
+% \section{orcidlink}
+%
+% \credits{Leo C. Stein}
+%
+% \DescribePackage{orcidlink}
+% \pkg{orcidlink} is patched for use by \pkg{lwarp}.
+%
+% \changes{v0.896}{2021/03/19}{\pkg{orcidlink}: Added.}
+%
+% \codehtml
+%
+%    \begin{macrocode}
+\RequirePackage{lwarp-scalerel}
+
+\LWR at ProvidesPackagePass{orcidlink}[2020/11/21]
+%    \end{macrocode}
+%
+%    \begin{macrocode}
+\renewcommand\orcidlink[1]{%
+    \texorpdfstring%
+        {%
+            \href%
+                {https://orcid.org/#1}%
+                {%
+                    \begin{lateximage}[orcid #1]%   lwarp
+                    \mbox{%
+                        \scalerel*{%
+                            \begin{tikzpicture}[yscale=-1,transform shape]
+                            \pic{orcidlogo};
+                            \end{tikzpicture}
+                        }{|}%
+                    }%
+                    \end{lateximage}%   lwarp
+                }%
+        }%
+        {}%
+}
+
+\begin{warpMathJax}
+\CustomizeMathJax{\newcommand{\orcidlink}[1]{}}
+\end{warpMathJax}
+%    \end{macrocode}
+%
 % \iffalse
+%</orcidlink>
+% \fi
+%
+%
+%
+%
+% \iffalse
 %<*overpic>
 % \fi
 %
@@ -70614,6 +71746,7 @@
 % \pkg{parnotes} is supported with some patches.
 %
 % \changes{v0.56}{2018/05/08}{\pkg{parnotes}: Added.}
+% \changes{v0.896}{2021/03/05}{\pkg{parnotes}: Added \ARIA\ role.}
 %
 % \codehtml
 %
@@ -70647,10 +71780,10 @@
     \unless\ifvmode\par\fi
     % Avoid page breaks between a paragraph and its parnotes
     \nopagebreak\addvspace{\parnotevskip}%
-    \LWR at forcenewpage%                  lwarp
-    \begin{BlockClass}{footnotes}%      lwarp
+    \LWR at forcenewpage%                      lwarp
+    \begin{BlockClass}(note){footnotes}%    lwarp
     {\parnotefmt{\PN at text}\par}%
-    \end{BlockClass}%                   lwarp
+    \end{BlockClass}%                       lwarp
     \global\def\PN at text{}%
     \addvspace{\parnotevskip}%
     %
@@ -71048,14 +72181,22 @@
 % \DescribePackage{pdflscape} \pkg{pdflscape} is ignored.
 %
 % \changes{v0.34}{2017/08/03}{\pkg{pdflscape}: Added.}
+% \changes{v0.896}{2021/03/14}{\pkg{pdflscape}: Fix: Added \env{landscape}.}
 %
 % \codehtml
 %
 % Discard all options for \pkg{lwarp-pdflscape}:
 %    \begin{macrocode}
-\LWR at ProvidesPackageDrop{pdflscape}[2016/05/14]
+\LWR at ProvidesPackageDrop{pdflscape}[2019/12/05]
 %    \end{macrocode}
 %
+%    \begin{macrocode}
+\let\landscape\relax
+\let\endlandscape\relax
+
+\newenvironment*{landscape}{}{}
+%    \end{macrocode}
+%
 % \iffalse
 %</pdflscape>
 % \fi
@@ -71775,12 +72916,13 @@
 %    \end{macrocode}
 %
 % The \env{window} is floated by a \env{BlockClass} style.
+% \changes{v0.896}{2021/03/05}{\pkg{picinpar}: Added \ARIA\ role.}
 %    \begin{macrocode}
 \long\def\LWR at HTML@window[#1,#2,#3,#4] {%
     \if #2r%
-        \begin{BlockClass}[float:right]{marginblock}%
+        \begin{BlockClass}[float:right](note){marginblock}%
     \else%
-        \begin{BlockClass}[float:left]{marginblock}%
+        \begin{BlockClass}[float:left](note){marginblock}%
     \fi%
     #3\par%
     #4%
@@ -74372,7 +75514,22 @@
 \NewDocumentCommand{\ofoot}{s o m}{}
 \NewDocumentCommand{\cfoot}{s o m}{}
 \NewDocumentCommand{\ifoot}{s o m}{}
+%    \end{macrocode}
+% \changes{v0.896}{2021/03/13}{\pkg{scrlayer-scrpage}: Added \cs{automark}, \cs{manualmark}.}
+%    \begin{macrocode}
+\NewDocumentCommand{\automark}{som}{}
+\newcommand*{\manualmark}{}
+%    \end{macrocode}
+%    \begin{macrocode}
 \DeclareDocumentCommand{\MakeMarkcase}{m}{#1}
+%    \end{macrocode}
+% \changes{v0.896}{2021/03/13}{\pkg{scrlayer-scrpage}: Added \cs{headmeark}, \cs{pagemark}.}
+%    \begin{macrocode}
+\let\headmark\leftmark
+\providecommand{\pnumfont}{\normalfont}%
+\DeclareRobustCommand\pagemark{{\pnumfont{\thepage}}}%
+%    \end{macrocode}
+%    \begin{macrocode}
 \newcommand*{\defpairofpagestyles}[3][]{}
 \newcommand*{\newpairofpagestyles}[3][]{}
 \newcommand*{\renewpairofpagestyles}[3][]{}
@@ -75267,8 +76424,11 @@
 %    \end{macrocode}
 %
 %
-% The following patch \pkg{sidenotes} for use with \pkg{lwarp}:
+% The following patch \pkg{sidenotes} for use with \pkg{lwarp}.
 %
+% An \ARIA\ |note| role is not assigned since the caption is an
+% important part of the figure.
+%
 % \begin{noindmacro}{\sidecaption} * \oarg{entry} \oarg{offset} \marg{text}
 % \changes{v0.47}{2018/01/30}{\pkg{sidenotes}: Fix for \SVG\ math in captions.}
 % \changes{v0.84}{2020/04/16}{\pkg{sidenotes}: \cs{sidecaption} not long arg.}
@@ -75280,7 +76440,7 @@
   \captionsetup{style=sidecaption}%
   \IfBooleanTF{#1}
   { % starred
-    \begin{BlockClass}[border:none ; box-shadow:none]{marginblock}
+    \begin{BlockClass}[border:none ; box-shadow:none]{marginblock}%
     \caption*{#4}%
     \end{BlockClass}
   }
@@ -75288,7 +76448,7 @@
   \IfNoValueOrEmptyTF{#2}
     {\def\@sidenotes at sidecaption@tof{#4}}
     {\def\@sidenotes at sidecaption@tof{#2}}
-    \begin{BlockClass}[border:none ; box-shadow:none]{marginblock}
+    \begin{BlockClass}[border:none ; box-shadow:none]{marginblock}%
     \caption[\@sidenotes at sidecaption@tof]{#4}
     \end{BlockClass}
   }
@@ -77821,7 +78981,7 @@
    }{}%
     \begingroup%    lwarp
     \LWR at restoreorigformatting%     lwarp
-    \RenewDocumentEnvironment{lateximage}{s o s o o}{}{}% lwarp: inside group
+    \RenewDocumentEnvironment{lateximage}{s o s o o d()}{}{}% lwarp: inside group
   \expandafter\LWR at gsavebox\csname\sv at name content\endcsname{#2}%
   \expandafter\gdef\expandafter#1\expandafter{%
         \expandafter\begin\expandafter{lateximage\expandafter}%     lwarp
@@ -79041,21 +80201,17 @@
 % \end{noindmacro}
 
 
-
 % \begin{noindmacro}{\subfloat at label}
 % Patches for \cs{sf at sub@label}:
 %    \begin{macrocode}
-\def\subfloat at label{%
-\LWR at ensuredoingapar% lwarp
-  \@ifnextchar(%   %) match left parenthesis
-    {\sf at sub@label}
-    {\sf at sub@label(Sub\@captype\space
-                   \@ifundefined{thechapter}{}{\@nameuse{thechapter}\space}%
-                   \@nameuse{p at sub\@captype}%
-                   \@nameuse{thesub\@captype}.)}}
+\xpretocmd{\subfloat at label}
+    {\LWR at ensuredoingapar}
+    {}
+    {\LWR at patcherror{subfig}{subfloat at label}}
 %    \end{macrocode}
 % \end{noindmacro}
 
+
 % Patches for \cs{subref}.
 %
 % \begin{noindmacro}{\sf at subref} \marg{label}
@@ -81010,6 +82166,12 @@
 %    \begin{macrocode}
 \gdef\@thm#1#2{\refstepcounter{#1}%
 \LWR at forcenewpage% lwarp
+%    \end{macrocode}
+% \changes{v0.896}{2021/03/14}{\pkg{theorem}: Intersperse footnotes.}
+%    \begin{macrocode}
+    \LWR at printpendingfootnotes%                   lwarp
+%    \end{macrocode}
+%    \begin{macrocode}
     \BlockClass{theorembody\LWR at thisthmstyle}% lwarp
    \trivlist
    \@topsep \theorempreskipamount               % used by first \item
@@ -81020,6 +82182,12 @@
 
 \gdef\@endtheorem{%
 \endtrivlist
+%    \end{macrocode}
+% \changes{v0.896}{2021/03/14}{\pkg{theorem}: Intersperse footnotes.}
+%    \begin{macrocode}
+    \LWR at printpendingfootnotes%                   lwarp
+%    \end{macrocode}
+%    \begin{macrocode}
 \endBlockClass
 }
 %    \end{macrocode}
@@ -81435,8 +82603,12 @@
       }%
   }%
 }
+%    \end{macrocode}
 
-\renewcommand\TPTL at tnotex[2]{\tnote{\nameref{#2}}}
+% \changes{v0.896}{2021/03/13}{\pkg{threeparttablex}: Fix: \cs{TPTL at tnotex} if not referrable.}
+%    \begin{macrocode}
+\providecommand{\TPTL at tnotex}{}
+\renewcommand{\TPTL at tnotex}[2]{\tnote{\nameref{#2}}}
 %    \end{macrocode}
 %
 % \iffalse
@@ -83147,9 +84319,11 @@
 \DeclareDocumentCommand{\cftsetindents}{m m m}{}
 %    \end{macrocode}
 
+% \changes{v0.893}{2021/03/13}{\pkg{tocloft}: Fix: \cs{cftpagenumbersoff}, \cs{cftpagenumberson}.}
+% \changes{v0.896}{2021/04/05}{\pkg{tocloft}: Fix: \cs{cftpagenumbersoff}, \cs{cftpagenumberson} with \pkg{memoir}.}
 %    \begin{macrocode}
-\newcommand{\pagenumbersoff}[1]{}
-\newcommand{\pagenumberson}[1]{}
+\providecommand{\cftpagenumbersoff}[1]{}
+\providecommand{\cftpagenumberson}[1]{}
 %    \end{macrocode}
 
 
@@ -83699,13 +84873,13 @@
 % \watchout
 % \pkg{algorithmicx} uses |.loa|.
 % \pkg{trivfloat} by default starts with |.loa| and goes up for additional floats,
-% skipping |.lof| and |.lot|.
+% skipping \filenm{.lof} and \filenm{.lot}.
 %
 % When using \cs{newfloat},
 % \watchout
 % be sure to manually assign higher letters to the \cs{newfloat}
 % files to avoid |.loa| used by \pkg{algorithmicx}, and any files used by \pkg{trivfloat}.
-% Also avoid using |.lof| and |.lot|.
+% Also avoid using \filenm{.lof} and \filenm{.lot}.
 %
 % When using \cs{trivfloat}, you may force it to avoid conflicting with
 % \watchout
@@ -85584,6 +86758,7 @@
 % \changes{v0.42}{2017/10/26}{\pkg{wrapfig}: If \progcode{FormatWP}
 %           add explicit \HTML\ style.}
 % \changes{v0.75}{2019/09/22}{\pkg{wrapfig}: Fix for width.}
+% \changes{v0.896}{2021/03/05}{\pkg{wrapfig}: Added \ARIA\ role.}
 %    \begin{macrocode}
 \newcommand*{\LWR at wrapposition}{}
 
@@ -85603,6 +86778,7 @@
 {%
     width:\LWR at printlength{\LWR at templengthone}; \LWR at wrapposition; %
 }%
+(note)%
 {marginblock}%
 %    \end{macrocode}
 % \changes{v0.75}{2019/09/17}{\pkg{wrapfig}: Fix for \cs{linewidth}.}
@@ -85881,8 +87057,11 @@
 % Sets \cs{LWR at tempcolor} to the current color.
 %    \begin{macrocode}
 \renewcommand*{\LWR at findcurrenttextcolor}{%
+\LWR at traceinfo{LWR at findcurrenttextcolor}%
 \protect\colorlet{LWR at current@color}{.}%
+\LWR at traceinfo{LWR at findcurrenttextcolor B}%
 \protect\convertcolorspec{named}{LWR at current@color}{HTML}\LWR at tempcolor%
+\LWR at traceinfo{LWR at findcurrenttextcolor: done}%
 }
 %    \end{macrocode}
 % \end{noindmacro}
@@ -86487,26 +87666,26 @@
 %
 %
 % \iffalse
-%<*xetexko-vertical>
+%<*xetexko>
 % \fi
 %
-% \part{lwarp-xetexko-vertical.sty}
+% \part{lwarp-xetexko.sty}
 %
-% \section{xetexko-vertical}
+% \section{xetexko}
 %
 % \credits{Dohyun Kim}
 %
-% \DescribePackage{xetexko-vertical}
-% \pkg{xetexko-vertical} is patched for use by \pkg{lwarp}.
+% \DescribePackage{xetexko}
+% \pkg{xetexko} is patched for use by \pkg{lwarp}.
 %
-% \changes{v0.20}{2017/01/11}{\pkg{xetexko-vertical}: Added.}
+% \changes{v0.20}{2017/01/11}{\pkg{xetexko}: Added.}
 %
 % \codehtml
 %
 %    \begin{macrocode}
-\LWR at loadbefore{xetexko-vertical}
+\LWR at loadbefore{xetexko}
 
-\LWR at ProvidesPackagePass{xetexko-vertical}[2018/04/06]
+\LWR at ProvidesPackagePass{xetexko}[2021/03/22]
 %    \end{macrocode}
 %
 %    \begin{macrocode}
@@ -86517,7 +87696,7 @@
 %    \end{macrocode}
 %
 % \iffalse
-%</xetexko-vertical>
+%</xetexko>
 % \fi
 %
 %
@@ -87816,37 +88995,40 @@
 %
 % \begin{itemize}
 % \item \cs{@mem at old@label} is the \LaTeX\ definition of \cs{label}.
-% \item \cs{LWR at orig@label} adds the \pkg{memoir} definition.
+% \item \cs{LWR at orig@label} becomes the \pkg{memoir} definition.
 % \item \pkg{lwarp}'s \cs{LWR at new@label} uses \cs{LWR at orig@label}.
 % \item Want \pkg{memoir}'s \cs{label} to use \pkg{lwarp}'s \cs{label},
 %               which then would use \LaTeX's \cs{label}.
 % \item So:
 %   \begin{itemize}
-%       \item \cs{@mem at old@label} becomes \cs{LWR at new@label}.
-%       \item \cs{LWR at orig@label} becomes \cs{@mem at old@label}.
+%       \item \cs{@mem at old@label} is set to \cs{LWR at new@label}.
+%       \item \cs{LWR at orig@label} is set to \cs{@mem at old@label}.
 %   \end{itemize}
-% \item \pkg{cleveref} then encapsulates all the above.
-% \item For a subcaption, \pkg{cleveref} modifies \pkg{memoir}'s \cs{sf at memsub@label}.
+% \item \pkg{cleveref} then encapsulates all the above with \cs{cref at old@label}.
+% \item For a subcaption, \pkg{cleveref} modifies \pkg{memoir}'s \cs{sf at memsub@label},
+%       but that change is undone by \pkg{lwarp}.
 % \end{itemize}
 % \changes{v0.84}{2020/04/05}{\pkg{lwarp-patch-memoir}: Fix: \cs{label}.}
 %    \begin{macrocode}
-\let\LWR at orig@label\@mem at old@label
-\let\@mem at old@label\LWR at new@label
+\LetLtxMacro\LWR at orig@label\@mem at old@label
+\LetLtxMacro\@mem at old@label\LWR at new@label
 %    \end{macrocode}
 %
-% Patches for subfloats to support additional \pkg{lwarp} labels:
+% Patches for subfloats to support additional \pkg{lwarp} labels.
+% This is the non-\pkg{hyperref} version from \pkg{memoir}.
 %    \begin{macrocode}
 \AtBeginDocument{
     \renewcommand*{\sf@@memsub at label}[1]{%
         \@bsphack
         \sf@@memsub at label@hook{#1}%
-        \@memoldlabel{#1}%
-        \LWR at label@createtag{sub@#1}%
+%         \@memoldlabel{#1}%
+        \cref at label{#1}%                    lwarp
+        \LWR at label@createtag{sub@#1}%           lwarp
         \protected at write\@auxout{}{%
             \string\newlabel{sub@#1}%
             {{\@nameuse{@@thesub\@captype}}%
             {\thepage}}}%
-        \LWR at write@lwarplabel{sub@#1}%
+        \LWR at write@lwarplabel{sub@#1}%          lwarp
         \@esphack
     }
 }
@@ -88709,10 +89891,11 @@
 %    \end{macrocode}
 %
 % Borrowed from the \pkg{lwarp} version of \pkg{keyfloat}:
+% \changes{v0.896}{2021/03/05}{\pkg{lwarp-patch-memoir}: Added \ARIA\ role.}
 %    \begin{macrocode}
 \NewDocumentEnvironment{KFLTmemoir at marginfloat}{O{-1.2ex} m}
 {% start
-    \LWR at BlockClassWP{float:right; width:2in; margin:10pt}{}{marginblock}%
+    \LWR at BlockClassWP{float:right; width:2in; margin:10pt}{}(note){marginblock}%
     \renewcommand*{\@captype}{#2}%
 }
 {%

Modified: trunk/Master/texmf-dist/source/latex/lwarp/lwarp.ins
===================================================================
--- trunk/Master/texmf-dist/source/latex/lwarp/lwarp.ins	2021-04-11 21:32:32 UTC (rev 58836)
+++ trunk/Master/texmf-dist/source/latex/lwarp/lwarp.ins	2021-04-11 21:33:43 UTC (rev 58837)
@@ -97,6 +97,7 @@
 \file{lwarp-bussproofs.sty}{\from{lwarp.dtx}{bussproofs}}
 \file{lwarp-bxpapersize.sty}{\from{lwarp.dtx}{bxpapersize}}
 \file{lwarp-bytefield.sty}{\from{lwarp.dtx}{bytefield}}
+\file{lwarp-ccicons.sty}{\from{lwarp.dtx}{ccicons}}
 \file{lwarp-cancel.sty}{\from{lwarp.dtx}{cancel}}
 \file{lwarp-canoniclayout.sty}{\from{lwarp.dtx}{canoniclayout}}
 \file{lwarp-caption.sty}{\from{lwarp.dtx}{caption}}
@@ -120,6 +121,7 @@
 \file{lwarp-citeref.sty}{\from{lwarp.dtx}{citeref}}
 \file{lwarp-CJK.sty}{\from{lwarp.dtx}{CJK}}
 \file{lwarp-CJKutf8.sty}{\from{lwarp.dtx}{CJKutf8}}
+\file{lwarp-classicthesis.sty}{\from{lwarp.dtx}{classicthesis}}
 \file{lwarp-cleveref.sty}{\from{lwarp.dtx}{cleveref}}
 \file{lwarp-clrdblpg.sty}{\from{lwarp.dtx}{clrdblpg}}
 \file{lwarp-cmbright.sty}{\from{lwarp.dtx}{cmbright}}
@@ -157,6 +159,7 @@
 \file{lwarp-endheads.sty}{\from{lwarp.dtx}{endheads}}
 \file{lwarp-endnotes.sty}{\from{lwarp.dtx}{endnotes}}
 \file{lwarp-engtlc.sty}{\from{lwarp.dtx}{engtlc}}
+\file{lwarp-enotez.sty}{\from{lwarp.dtx}{enotez}}
 \file{lwarp-enumerate.sty}{\from{lwarp.dtx}{enumerate}}
 \file{lwarp-enumitem.sty}{\from{lwarp.dtx}{enumitem}}
 \file{lwarp-epigraph.sty}{\from{lwarp.dtx}{epigraph}}
@@ -368,6 +371,7 @@
 \file{lwarp-nowidow.sty}{\from{lwarp.dtx}{nowidow}}
 \file{lwarp-ntheorem.sty}{\from{lwarp.dtx}{ntheorem}}
 \file{lwarp-octave.sty}{\from{lwarp.dtx}{octave}}
+\file{lwarp-orcidlink.sty}{\from{lwarp.dtx}{orcidlink}}
 \file{lwarp-overpic.sty}{\from{lwarp.dtx}{overpic}}
 \file{lwarp-pagegrid.sty}{\from{lwarp.dtx}{pagegrid}}
 \file{lwarp-pagenote.sty}{\from{lwarp.dtx}{pagenote}}
@@ -576,7 +580,7 @@
 \file{lwarp-xcolor.sty}{\from{lwarp.dtx}{xcolor}}
 \file{lwarp-xechangebar.sty}{\from{lwarp.dtx}{xechangebar}}
 \file{lwarp-xellipsis.sty}{\from{lwarp.dtx}{xellipsis}}
-\file{lwarp-xetexko-vertical.sty}{\from{lwarp.dtx}{xetexko-vertical}}
+\file{lwarp-xetexko.sty}{\from{lwarp.dtx}{xetexko}}
 \file{lwarp-xevlna.sty}{\from{lwarp.dtx}{xevlna}}
 \file{lwarp-xfakebold.sty}{\from{lwarp.dtx}{xfakebold}}
 \file{lwarp-xfrac.sty}{\from{lwarp.dtx}{xfrac}}

Modified: trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-amsthm.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-amsthm.sty	2021-04-11 21:32:32 UTC (rev 58836)
+++ trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-amsthm.sty	2021-04-11 21:33:43 UTC (rev 58837)
@@ -63,7 +63,7 @@
         \edef\LWR at thisthmstyle{\@nameuse{LWR at thmstyle#2}}%
     }%          lwarp
   }%
-  \@tempa
+  \@tempa%
 }
 
 \newcommand{\LWR at haveamsthmname}{
@@ -90,21 +90,53 @@
 \def\@begintheorem#1#2[#3]{%
     \GetTitleString{#3}%                                lwarp
     \let\@currentlabelname\GetTitleStringResult%        lwarp
-    \item[
+    \item[%
+    \LWR at newautopagelabel{page}%
     \@ifempty{#1}{\let\thmname\@gobble}{\LWR at haveamsthmname}%       lwarp
     \@ifempty{#2}{\let\thmnumber\@gobble}{\LWR at haveamsthmnumber}%   lwarp
     \@ifempty{#3}{\let\thmnote\@gobble}{\LWR at haveamsthmnote}%       lwarp
     \thm at swap\swappedhead\thmhead{#1}{#2}{#3}%
-    \the\thm at headpunct~
+    \the\thm at headpunct % space
     \thmheadnl % possibly a newline.
     \hskip\thm at headsep
-    ]
+    ]%
   \ignorespaces}
 \def\@thm#1#2#3{%
   \ifhmode\unskip\unskip\par\fi
   \normalfont
   \LWR at forcenewpage%                            lwarp
+  \LWR at printpendingfootnotes%                   lwarp
   \BlockClass{amsthmbody\LWR at thisthmstyle}%     lwarp
+    \renewcommand{\footnote}[1][]{%
+        \ifblank{##1}%
+        {%
+            \stepcounter\@mpfn
+            \protected at xdef\@thefnmark{\thempfn}%
+            \@footnotemark\@footnotetext
+        }%
+        {%
+            \begingroup
+            \csname c@\@mpfn\endcsname ##1\relax
+            \unrestored at protected@xdef\@thefnmark{\thempfn}%
+            \endgroup
+            \@footnotemark\@footnotetext
+        }%
+    }%
+    \renewcommand{\footnotemark}[1][]{%
+        \ifblank{##1}%
+        {%
+            \stepcounter{footnote}%
+            \protected at xdef\@thefnmark{\thefootnote}%
+            \@footnotemark%
+        }%
+        {%
+            \begingroup%
+            \c at footnote ##1\relax%
+            \unrestored at protected@xdef\@thefnmark{\thefootnote}%
+            \endgroup%
+            \@footnotemark%
+        }%
+    }%
   \trivlist
   \let\thmheadnl\relax
   \let\thm at swap\@gobble
@@ -121,7 +153,7 @@
     \refstepcounter{#2}%
     \def\@tempa{\@oparg{\@begintheorem{#3}{\csname the#2\endcsname}}[]}%
   \fi
-  \@tempa
+  \@tempa%
 }
 \AtBeginDocument{%
 \def\cref at thmoptarg[#1]#2#3#4{%
@@ -128,6 +160,7 @@
     \ifhmode\unskip\unskip\par\fi%
     \normalfont%
     \LWR at forcenewpage%                          lwarp
+    \LWR at printpendingfootnotes%                   lwarp
     \BlockClass{amsthmbody\LWR at thisthmstyle}%   lwarp
     \trivlist%
     \let\thmheadnl\relax%
@@ -149,7 +182,12 @@
 }%
 }% AtBeginDocument
 
-\def\@endtheorem{\endtrivlist\endBlockClass\@endpefalse }
+\def\@endtheorem{%
+    \endtrivlist%
+  \LWR at printpendingfootnotes%                   lwarp
+    \endBlockClass%
+    \@endpefalse%
+}
 \AtBeginDocument{
 \@ifundefined{LWR at orig@openbox}{
 \LetLtxMacro\LWR at orig@openbox\openbox
@@ -168,8 +206,10 @@
 }{}% @ifundefined
 }% AtBeginDocument
 \renewenvironment{proof}[1][\proofname]{\par
-\LWR at forcenewpage% lwarp
+  \LWR at forcenewpage% lwarp
+  \LWR at printpendingfootnotes%                   lwarp
     \BlockClass{amsthmproof}% lwarp
+    \LWR at newautopagelabel{page}%
   \pushQED{\qed}%
   \normalfont \topsep6\p@\@plus6\p@\relax
   \trivlist
@@ -177,6 +217,7 @@
         \InlineClass{amsthmproofname}{#1\@addpunct{.}}]\ignorespaces% changes
 }{%
   \InlineClass{theoremendmark}{\popQED}\endtrivlist%
+  \LWR at printpendingfootnotes%                   lwarp
   \endBlockClass% lwarp
   \@endpefalse
 }

Modified: trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-backref.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-backref.sty	2021-04-11 21:32:32 UTC (rev 58836)
+++ trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-backref.sty	2021-04-11 21:33:43 UTC (rev 58837)
@@ -21,7 +21,7 @@
 \def\backref{}
 
 \long\def\hyper at section@backref#1#2#3{%
-    \ref{#3}%
+    \LWR at refwithsection{#3}%
 }
 
 \let\backrefxxx\hyper at section@backref

Modified: trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-biblatex.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-biblatex.sty	2021-04-11 21:32:32 UTC (rev 58836)
+++ trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-biblatex.sty	2021-04-11 21:33:43 UTC (rev 58837)
@@ -54,12 +54,27 @@
 }
 
 \let\blx at imc@ifhyperref\@firstoftwo
+\xpretocmd{\blx at citecmdinit}
+    {\LWR at newautopagelabel{page}}%
+    {}
+    {\LWR at patcherror{biblatex}{blx at citecmdinit}}
+\xpatchcmd{\blx at addbackref@i}
+    {\thepage}
+    {\theLWR at previousautopagelabel}% ref to the most recent object
+    {}
+    {\LWR at patcherror{biblatex}{blx at addbackref@i A}}
+
+\xpatchcmd{\blx at addbackref@i}
+    {\c at page}
+    {\c at LWR@previousautopagelabel}% refto the most recent object
+    {}
+    {\LWR at patcherror{biblatex}{blx at addbackref@i B}}
 \DeclareListFormat{pageref}{%
   \ifnumless{\abx at pagerefstyle}{0}
     {\usebibmacro{list:plain}%
      \ifhyperref
        {%
-            \ref{\BaseJobname-autopage-#1}%  lwarp
+            \LWR at refwithsection{\BaseJobname-autopage-#1}%  lwarp
        }
        {#1}}
     {\ifnumequal{\value{listcount}}{1}
@@ -96,7 +111,7 @@
           {\printdelim{multilistdelim}}
           {}%
         \ifhyperref
-          {\ref{\BaseJobname-autopage-#1}}%  lwarp
+          {\LWR at refwithsection{\BaseJobname-autopage-#1}}%  lwarp
           {#1}}%
      \edef\abx at range@prev{\abx at range@num}}
     {\usebibmacro{pageref:dump}%
@@ -104,7 +119,7 @@
        {\printdelim{multilistdelim}}
        {}%
      \ifhyperref
-       {\ref{\BaseJobname-autopage-#1}}%  lwarp
+       {\LWR at refwithsection{\BaseJobname-autopage-#1}}%  lwarp
        {#1}%
      \def\abx at range@prev{-1}}%
   \edef\abx at range@last{\abx at range@this}}
@@ -114,7 +129,7 @@
     {\ifcase\abx at pagerefstyle\relax % two
        \bibrangedash
        \ifhyperref
-         {\ref{\BaseJobname-autopage-\abx at range@hold}}%  lwarp
+         {\LWR at refwithsection{\BaseJobname-autopage-\abx at range@hold}}%  lwarp
          {\abx at range@hold}%
      \or % three
        \ifnumless{\abx at range@diff}{2}
@@ -121,42 +136,42 @@
          {\printdelim{multilistdelim}}
          {\bibrangedash}%
        \ifhyperref
-         {\ref{\BaseJobname-autopage-\abx at range@hold}}%  lwarp
+         {\LWR at refwithsection{\BaseJobname-autopage-\abx at range@hold}}%  lwarp
          {\abx at range@hold}%
      \or % two+
        \ifnumless{\abx at range@diff}{2}
          {\sqspace
           \ifhyperref
-            {\ref{\BaseJobname-autopage-\abx at range@hold}}%  lwarp
+            {\LWR at refwithsection{\BaseJobname-autopage-\abx at range@hold}}%  lwarp
             {\bibstring{sequens}}}
          {\bibrangedash
           \ifhyperref
-            {\ref{\BaseJobname-autopage-\abx at range@hold}}%  lwarp
+            {\LWR at refwithsection{\BaseJobname-autopage-\abx at range@hold}}%  lwarp
             {\abx at range@hold}}%
      \or % three+
        \ifnumless{\abx at range@diff}{2}
          {\sqspace
           \ifhyperref
-            {\ref{\BaseJobname-autopage-\abx at range@hold}}%  lwarp
+            {\LWR at refwithsection{\BaseJobname-autopage-\abx at range@hold}}%  lwarp
             {\bibstring{sequens}}}
          {\ifnumless{\abx at range@diff}{3}
             {\sqspace
              \ifhyperref
-               {\ref{\BaseJobname-autopage-\abx at range@hold}}%  lwarp
+               {\LWR at refwithsection{\BaseJobname-autopage-\abx at range@hold}}%  lwarp
                {\bibstring{sequentes}}}
             {\bibrangedash
              \ifhyperref
-               {\ref{\BaseJobname-autopage-\abx at range@hold}}%  lwarp
+               {\LWR at refwithsection{\BaseJobname-autopage-\abx at range@hold}}%  lwarp
                {\abx at range@hold}}}%
      \else % all+
        \ifnumless{\abx at range@diff}{2}
          {\sqspace
           \ifhyperref
-            {\ref{\BaseJobname-autopage-\abx at range@hold}}%  lwarp
+            {\LWR at refwithsection{\BaseJobname-autopage-\abx at range@hold}}%  lwarp
             {\bibstring{sequens}}}
          {\sqspace
           \ifhyperref
-            {\ref{\BaseJobname-autopage-\abx at range@hold}}%  lwarp
+            {\LWR at refwithsection{\BaseJobname-autopage-\abx at range@hold}}%  lwarp
             {\bibstring{sequentes}}}%
      \fi
      \def\abx at range@diff{0}}

Modified: trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-bigdelim.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-bigdelim.sty	2021-04-11 21:32:32 UTC (rev 58836)
+++ trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-bigdelim.sty	2021-04-11 21:33:43 UTC (rev 58837)
@@ -17,26 +17,28 @@
 %% version 2005/12/01 or later.
 \let\ldelim\relax
 \let\rdelim\relax
-\LWR at ProvidesPackagePass{bigdelim}[2018/08/03]
-\NewDocumentCommand{\LWR at HTML@ldelim}{m m m O{}}{%
+\LWR at ProvidesPackagePass{bigdelim}[2021/03/15]
+\NewDocumentCommand{\LWR at HTML@ldelim}{m m o m O{}}{%
 \renewcommand{\LWR at multirowborder}{right}%
-\multirow{#2}{#3}{#4 \InlineClass{ldelim}{#1}}%
+\multirow{#2}{#4}{#5 \InlineClass{ldelim}{#1}}%
 }
 
 \LWR at formatted{ldelim}
 
-\NewDocumentCommand{\LWR at HTML@rdelim}{m m m O{}}{%
+\NewDocumentCommand{\LWR at HTML@rdelim}{m m o m O{}}{%
 \renewcommand{\LWR at multirowborder}{left}%
-\multirow{#2}{#3}{\InlineClass{rdelim}{#1} #4}%
+\multirow{#2}{#4}{\InlineClass{rdelim}{#1} #5}%
 }
 
 \LWR at formatted{rdelim}
 
 \begin{warpMathJax}
-\CustomizeMathJax{\newcommand{\LWRldelim}[1][]{\text{#1}~\LWRbigdelim}}
-\CustomizeMathJax{\def\ldelim#1#2#3{\def\LWRbigdelim{#1}\LWRldelim}}
-\CustomizeMathJax{\newcommand{\LWRrdelim}[1][]{\LWRbigdelim~\text{#1}}}
-\CustomizeMathJax{\def\rdelim#1#2#3{\def\LWRbigdelim{#1}\LWRrdelim}}
+\CustomizeMathJax{\newcommand{\LWRldelimtwo}[1][]{\text{#1}~\LWRbigdelim}}
+\CustomizeMathJax{\newcommand{\LWRldelimone}[2][]{\LWRldelimtwo}}
+\CustomizeMathJax{\def\ldelim#1#2{\def\LWRbigdelim{#1}\LWRldelimone}}
+\CustomizeMathJax{\newcommand{\LWRrdelimtwo}[1][]{\LWRbigdelim~\text{#1}}}
+\CustomizeMathJax{\newcommand{\LWRrdelimone}[2][]{\LWRrdelimtwo}}
+\CustomizeMathJax{\def\rdelim#1#2{\def\LWRbigdelim{#1}\LWRrdelimone}}
 \end{warpMathJax}
 \endinput
 %%

Added: trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-ccicons.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-ccicons.sty	                        (rev 0)
+++ trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-ccicons.sty	2021-04-11 21:33:43 UTC (rev 58837)
@@ -0,0 +1,38 @@
+%%
+%% This is file `lwarp-ccicons.sty',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% lwarp.dtx  (with options: `ccicons')
+%% This is a generated file.
+%% Copyright 2016-2020 Brian Dunn
+%% 
+%% This work may be distributed and/or modified under the
+%% conditions of the LaTeX Project Public License, either version 1.3
+%% of this license or (at your option) any later version.
+%% The latest version of this license is in
+%%   http://www.latex-project.org/lppl.txt
+%% and version 1.3 or later is part of all distributions of LaTeX
+%% version 2005/12/01 or later.
+\LWR at ProvidesPackagePass{ccicons}[2017/10/30]
+\newcommand{\LWR at ccicons}[2]{%
+    {\begin{lateximage}*[#1]\ccicons at font\char#2\end{lateximage}}
+}
+\renewcommand{\ccicons at logo}{\LWR at ccicons{ccLogo}{0}}
+\renewcommand{\ccicons at by}{\LWR at ccicons{ccAttribution}{1}}
+\renewcommand{\ccicons at sa}{\LWR at ccicons{ccShareAlike}{2}}
+\renewcommand{\ccicons at nd}{\LWR at ccicons{ccNoDerivatives}{3}}
+\renewcommand{\ccicons at nc}{\LWR at ccicons{ccNonCommercial}{4}}
+\renewcommand{\ccicons at nceu}{\LWR at ccicons{ccNonCommercialEU}{5}}
+\renewcommand{\ccicons at ncjp}{\LWR at ccicons{ccNonCommercialJP}{6}}
+\renewcommand{\ccicons at pd}{\LWR at ccicons{ccPublicDomain}{7}}
+\renewcommand{\ccicons at zero}{\LWR at ccicons{ccZero}{8}}
+\renewcommand{\ccicons at sampling}{\LWR at ccicons{ccSampling}{9}}
+\renewcommand{\ccicons at share}{\LWR at ccicons{ccShare}{10}}
+\renewcommand{\ccicons at remix}{\LWR at ccicons{ccRemix}{11}}
+\renewcommand{\ccicons at copy}{\LWR at ccicons{ccCopy}{12}}
+\renewcommand{\ccicons at pdalt}{\LWR at ccicons{ccPublicDomainAlt}{13}}
+\endinput
+%%
+%% End of file `lwarp-ccicons.sty'.


Property changes on: trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-ccicons.sty
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Modified: trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-chemfig.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-chemfig.sty	2021-04-11 21:32:32 UTC (rev 58836)
+++ trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-chemfig.sty	2021-04-11 21:33:43 UTC (rev 58837)
@@ -16,9 +16,8 @@
 %% and version 1.3 or later is part of all distributions of LaTeX
 %% version 2005/12/01 or later.
 
-\LWR at ProvidesPackagePass{chemfig}[2020/03/05]
+\LWR at ProvidesPackagePass{chemfig}[2021/02/28]
 
-
 \catcode`\_=11
 
 \@ifpackagelater{chemfig}{2020/03/05}
@@ -33,15 +32,15 @@
 
 \@ifpackagelater{chemfig}{2019/04/18}%
 {% 2019/04/18 or newer
+    \xpretocmd{\CF_chemfiga}
+        {\begin{lateximage}[-chemfig-~\PackageDiagramAltText]}
+        {}{\LWR at patcherror{chemfig}{CF_chemfiga}}
 
-    \LetLtxMacro\LWR at chemfig@origchemfig\chemfig
+    \xpatchcmd{\CF_chemfigb}
+        {\let\CF_flipstate\CF_zero}
+        {\end{lateximage}\let\CF_flipstate\CF_zero}
+        {}{\LWR at patcherror{chemfig}{CF_chemfigb}}
 
-    \renewcommand*{\chemfig}[2][]{%
-        \begin{lateximage}[-chemfig-~\PackageDiagramAltText]%
-        \LWR at chemfig@origchemfig[#1]{#2}%
-        \end{lateximage}%
-    }
-
     \GlobalLetLtxMacro\LWR at chemfig@origCF_lewisc\CF_lewisc
     \gdef\CF_lewisc#1,#2\_nil{%
     \begin{lateximage}[-chemfig-~\PackageDiagramAltText]%

Modified: trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-citeref.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-citeref.sty	2021-04-11 21:32:32 UTC (rev 58836)
+++ trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-citeref.sty	2021-04-11 21:33:43 UTC (rev 58837)
@@ -16,7 +16,9 @@
 %% and version 1.3 or later is part of all distributions of LaTeX
 %% version 2005/12/01 or later.
 \LWR at ProvidesPackagePass{citeref}[1999/27/05]
-\def\@cprwrite#1={\write\@auxout{\string\citepageref{#1}{\theLWR at currentautosec}}}
+\def\@cprwrite#1={%
+    \write\@auxout{\string\citepageref{#1}{\theLWR at previousautopagelabel}}%
+}
 
 \def\citepageref#1#2{%
     \xdef\cpr at testa{\@nameuse{cpr at last@#1}}%letzte Zitatstelle
@@ -26,8 +28,11 @@
     \else%
         \@namexdef{cpr at last@#1}{#2}%
         \@ifundefined{cpr@#1}%
-            {\@namexdef{cpr@#1}{\ref{\BaseJobname-autopage-#2}}}%   lwarp
-            {\@namexdef{cpr@#1}{\@nameuse{cpr@#1}, \ref{\BaseJobname-autopage-#2}}}%    lwarp
+            {\@namexdef{cpr@#1}{\LWR at refwithsection{\BaseJobname-autopage-#2}}}%   lwarp
+            {%      lwarp
+                \@namexdef{cpr@#1}{\@nameuse{cpr@#1}, % space
+                \LWR at refwithsection{\BaseJobname-autopage-#2}}%
+            }%
     \fi
     }
 \endinput

Added: trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-classicthesis.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-classicthesis.sty	                        (rev 0)
+++ trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-classicthesis.sty	2021-04-11 21:33:43 UTC (rev 58837)
@@ -0,0 +1,40 @@
+%%
+%% This is file `lwarp-classicthesis.sty',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% lwarp.dtx  (with options: `classicthesis')
+%% This is a generated file.
+%% Copyright 2016-2020 Brian Dunn
+%% 
+%% This work may be distributed and/or modified under the
+%% conditions of the LaTeX Project Public License, either version 1.3
+%% of this license or (at your option) any later version.
+%% The latest version of this license is in
+%%   http://www.latex-project.org/lppl.txt
+%% and version 1.3 or later is part of all distributions of LaTeX
+%% version 2005/12/01 or later.
+\LWR at ProvidesPackageDrop{classicthesis}[2018/06/03]
+\RequirePackage{scrlayer-scrpage} % provides headers and footers (KOMA Script)
+\RequirePackage{scrtime} % time access
+\PassOptionsToPackage{titles}{tocloft}
+\RequirePackage{textcase} % for \MakeTextUppercase
+\RequirePackage[newparttoc]{titlesec} % newparttoc to write \part to .toc with \numberline
+\RequirePackage{tocloft}
+\PassOptionsToPackage{headinclude,footinclude}{typearea} % for classes other than KOMA
+\RequirePackage{typearea}
+\PassOptionsToPackage{marginal}{footmisc}% marginal flushmargin
+\RequirePackage{footmisc}%
+\RequirePackage{prelim2e}
+\RequirePackage{remreset}%
+
+\DeclareRobustCommand{\spacedallcaps}[1]{\textsc{\MakeTextUppercase{#1}}}
+\DeclareRobustCommand{\spacedlowsmallcaps}[1]{\textsc{\MakeTextLowercase{#1}}}
+\newcommand{\ctparttext}[1]{}
+\newcommand{\tocEntry}[1]{}
+\DeclareRobustCommand*{\deactivateaddvspace}{}%
+\newlength{\beforebibskip}
+\endinput
+%%
+%% End of file `lwarp-classicthesis.sty'.


Property changes on: trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-classicthesis.sty
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Modified: trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-cleveref.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-cleveref.sty	2021-04-11 21:32:32 UTC (rev 58836)
+++ trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-cleveref.sty	2021-04-11 21:33:43 UTC (rev 58837)
@@ -127,6 +127,21 @@
     \LWR at absorbstar{fullref}
     \LWR at absorbstar{Fullref}
 }{}% varioref
+\@ifclassloaded{memoir}{
+\AtBeginDocument{
+\def\sf at memsub@label(#1)#2{%
+  \protected at edef\mem at currentlabelname{#1}%
+  \sf@@memsub at label{#2}}
+}
+}{}
+\@ifpackageloaded{subfig}{
+\def\sf at sub@label(#1)#2{%
+  \ifhyperrefloaded
+    \protected at edef\@currentlabelname{%
+      \expandafter\strip at period #1\relax.\relax\@@@}%
+  \fi
+  \sf@@sub at label{#2}}
+}{}
 \endinput
 %%
 %% End of file `lwarp-cleveref.sty'.

Added: trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-enotez.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-enotez.sty	                        (rev 0)
+++ trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-enotez.sty	2021-04-11 21:33:43 UTC (rev 58837)
@@ -0,0 +1,112 @@
+%%
+%% This is file `lwarp-enotez.sty',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% lwarp.dtx  (with options: `enotez')
+%% This is a generated file.
+%% Copyright 2016-2020 Brian Dunn
+%% 
+%% This work may be distributed and/or modified under the
+%% conditions of the LaTeX Project Public License, either version 1.3
+%% of this license or (at your option) any later version.
+%% The latest version of this license is in
+%%   http://www.latex-project.org/lppl.txt
+%% and version 1.3 or later is part of all distributions of LaTeX
+%% version 2005/12/01 or later.
+\LWR at ProvidesPackagePass{enotez}[2020/12/13]
+\ExplSyntaxOn
+\AtBeginDocument{
+    \bool_set_true:N \l__enotez_hyperref_bool
+    \bool_set_true:N \l__enotez_hyperfootnotes_bool
+}
+\cs_gset_protected:Npn \enotez_write_mark:nn #1#2
+  {
+    \bool_if:NTF \l__enotez_hyperfootnotes_bool
+      {
+        \enotezwritemark { \hyperlink {enz.#1} { \enmarkstyle #2 } }
+        \bool_if:NT \l__enotez_hyperbackref_bool
+          {
+                    \hypertarget {enz.#1.backref} { }
+          }
+      }
+      { \enotezwritemark { \enmarkstyle #2 } }
+  }
+\cs_generate_variant:Nn \enotez_write_mark:nn {x}
+\cs_gset_protected:Npn \enotez_write_list_number:n #1
+  {
+    \bool_if:NT \l__enotez_hyperfootnotes_bool
+      {
+            \hypertarget {enz.#1} { }
+      }
+    \tl_use:N \l__enotez_list_number_format_tl
+    \tl_if_eq:nxTF {a} { \prop_item:Nn \g__enotez_endnote_man_prop {#1} }
+      {
+        \bool_if:nTF
+          { \l__enotez_hyperfootnotes_bool && \l__enotez_hyperbackref_bool }
+          {
+            \exp_args:Nnx
+            \hyperlink {enz.#1.backref}
+              { \exp_not:V \l__enotez_endnote_mark_tl }
+          }
+          { \prop_item:Nn \g__enotez_endnote_mark_prop {#1} }
+      }
+      {
+        \bool_if:nTF
+          { \l__enotez_hyperfootnotes_bool && \l__enotez_hyperbackref_bool }
+          {
+            \exp_args:Nnx
+            \hyperlink {enz.#1.backref}
+              { \exp_not:V \l__enotez_endnote_mark_tl }
+          }
+          { \tl_use:N \l__enotez_endnote_mark_tl }
+      }
+  }
+\DeclareTemplateCode {enotez-list} {paragraph} {1}
+  {
+    heading       = \enotez_list_heading:n           ,
+    format        = \l__enotez_list_format_tl        ,
+    number        = \enotez_list_number:n            ,
+    number-format = \l__enotez_list_number_format_tl ,
+    notes-sep     = \l__enotez_list_notes_sep_dim
+  }
+  {
+    \AssignTemplateKeys
+    \enotez_set_totoc:
+    \enotez_list_heading:n { \l__enotez_list_name_tl }
+    \enotez_list_preamble:
+    \enotez_build_print_list:nnnn {#1}
+      {}
+      {
+        \par\noindent
+        \group_begin:
+          \tl_use:N \l__enotez_list_format_tl
+              \enotez_list_number:n
+                { \enotez_write_list_number:n {##1} }
+              \tl_use:N \c_space_tl
+          % \cs_set:cpn {@currentlabel}
+          %   { \p at endnote \l__enotez_endnote_mark_tl }
+          \tl_use:N \g__enotez_endnote_text_tl
+          \par
+          \dim_compare:nT { \l__enotez_list_notes_sep_dim != 0pt }
+            { \addvspace { \l__enotez_list_notes_sep_dim } }
+        \group_end:
+      }
+      {}
+    \enotez_list_postamble:
+  }
+
+\ExplSyntaxOff
+\begin{warpMathJax}
+\def\endnotename{endnote}
+\appto\LWR at syncnotenumbers{\LWR at synconenotenumber{LWRendnote}{\theendnote}}
+\appto\LWR at syncnotenames{\LWR at synconenotename{LWRendnote}{\endnotename}}
+\CustomizeMathJax{\def\LWRendnote{1}}
+\CustomizeMathJax{\newcommand{\endnote}[2][\LWRendnote]{{}^{\mathrm{#1}}}}
+\CustomizeMathJax{\newcommand{\endnotemark}[1][\LWRendnote]{{}^{\mathrm{#1}}}}
+\end{warpMathJax}
+
+\endinput
+%%
+%% End of file `lwarp-enotez.sty'.


Property changes on: trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-enotez.sty
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Modified: trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-epigraph.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-epigraph.sty	2021-04-11 21:32:32 UTC (rev 58836)
+++ trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-epigraph.sty	2021-04-11 21:33:43 UTC (rev 58837)
@@ -36,7 +36,7 @@
 
 \DeclareDocumentCommand{\LWR at HTML@epigraph}{m m}
 {%
-    \begin{LWR at BlockClassWP}{\LWR at print@mbox{text-align:right}}{}{epigraph}%
+    \begin{LWR at BlockClassWP}{\LWR at print@mbox{text-align:right}}{}(note){epigraph}%
     \qitem{#1}{#2}%
     \end{LWR at BlockClassWP}%
 }
@@ -43,7 +43,7 @@
 \LWR at formatted{epigraph}
 
 \DeclareDocumentEnvironment{LWR at HTML@epigraphs}{}
-    {\LWR at BlockClassWP{\LWR at print@mbox{text-align:right}}{}{epigraph}}
+    {\LWR at BlockClassWP{\LWR at print@mbox{text-align:right}}{}(note){epigraph}}%
     {\endLWR at BlockClassWP}
 \LWR at formattedenv{epigraphs}
 \renewcommand{\epigraphhead}[2][0]{#2}

Modified: trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-fancybox.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-fancybox.sty	2021-04-11 21:32:32 UTC (rev 58836)
+++ trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-fancybox.sty	2021-04-11 21:33:43 UTC (rev 58837)
@@ -24,6 +24,7 @@
 }
 \def\V@@footnotetext{%
 \LWR at traceinfo{V at footnotetext}%
+\LWR at newautopagelabel{page}%
 \global\setbox\LWR at footnotebox=\vbox\bgroup%
     \unvbox\LWR at footnotebox%
     \protected at edef\@currentlabel{%
@@ -39,6 +40,7 @@
     \@makefntext{}%
   \bgroup%
   \aftergroup{\V@@@footnotetext}%
+    \let\LWR at newautopagelabel\LWR at null@newautopagelabel%
   \ignorespaces%
 }%
 }% AfterEndPreamble

Modified: trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-fancyvrb.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-fancyvrb.sty	2021-04-11 21:32:32 UTC (rev 58836)
+++ trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-fancyvrb.sty	2021-04-11 21:33:43 UTC (rev 58837)
@@ -28,6 +28,7 @@
 }
 \def\V@@footnotetext{%
 \LWR at traceinfo{V at footnotetext}%
+\LWR at newautopagelabel{page}%
 \global\setbox\LWR at footnotebox=\vbox\bgroup%
     \unvbox\LWR at footnotebox%
     \protected at edef\@currentlabel{%
@@ -43,6 +44,7 @@
     \@makefntext{}%
   \bgroup%
   \aftergroup{\V@@@footnotetext}%
+    \let\LWR at newautopagelabel\LWR at null@newautopagelabel%
   \ignorespaces%
 }%
 \preto\FVB at Verbatim{\LWR at forcenewpage}

Modified: trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-fixme.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-fixme.sty	2021-04-11 21:32:32 UTC (rev 58836)
+++ trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-fixme.sty	2021-04-11 21:33:43 UTC (rev 58837)
@@ -22,7 +22,7 @@
 
 \renewcommand{\l at fixme}[2]{%
     \hypertocfloat{1}{fixme}{lox}%
-        {\LWR at nameref{\BaseJobname-autopage-\arabic{LWR at nextautopage}} --- #1}
+        {\LWR at nameref{\BaseJobname-autopage-\arabic{LWR at nextautopage}} --- #1}%
         {#2}
 }
 \def\FXFaceInlineHTMLStyle{font-weight:bold}

Modified: trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-floatflt.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-floatflt.sty	2021-04-11 21:32:32 UTC (rev 58836)
+++ trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-floatflt.sty	2021-04-11 21:33:43 UTC (rev 58837)
@@ -25,6 +25,7 @@
             width: 1.5in; % reasonable dummy width for word processor
             margin:10pt%
         }{}%
+        (note)%
         {marginblock}%
     }{%
         \setlength{\LWR at templengthone}{#3}%
@@ -35,6 +36,7 @@
         }{%
             width:\LWR at printlength{\LWR at templengthone}%
         }%
+        (note)%
         {marginblock}%
     }%
     \renewcommand*{\@captype}{#2}%

Modified: trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-hyperref.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-hyperref.sty	2021-04-11 21:32:32 UTC (rev 58836)
+++ trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-hyperref.sty	2021-04-11 21:33:43 UTC (rev 58837)
@@ -365,7 +365,9 @@
 }
 
 \DeclareDocumentCommand{\LWR at hyperlinkb}{m}{%
-    \LWR at hyperrefcb[LWR-ht-#1]%
+    \ifbool{LWR at insidemathcomment}%
+        {\endgroup}%
+        {\LWR at hyperrefcb[LWR-ht-#1]}%
 }
 
 \DeclareDocumentCommand{\hyperlink}{}{%
@@ -382,6 +384,23 @@
     \IfBooleanTF{#1}{\cpageref{#2}}{\cref{#2}}%
 }
 
+\def\equationautorefname{Equation}%
+\def\footnoteautorefname{footnote}%
+\def\itemautorefname{item}%
+\def\figureautorefname{Figure}%
+\def\tableautorefname{Table}%
+\def\partautorefname{Part}%
+\def\appendixautorefname{Appendix}%
+\def\chapterautorefname{chapter}%
+\def\sectionautorefname{section}%
+\def\subsectionautorefname{subsection}%
+\def\subsubsectionautorefname{subsubsection}%
+\def\paragraphautorefname{paragraph}%
+\def\subparagraphautorefname{subparagraph}%
+\def\FancyVerbLineautorefname{line}%
+\def\theoremautorefname{Theorem}%
+\def\pageautorefname{page}%
+
 \newcommand{\pdfstringdef}[2]{}
 
 \newcommand{\pdfbookmark}[3][]{}

Modified: trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-hyperxmp.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-hyperxmp.sty	2021-04-11 21:32:32 UTC (rev 58836)
+++ trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-hyperxmp.sty	2021-04-11 21:33:43 UTC (rev 58837)
@@ -16,6 +16,52 @@
 %% and version 1.3 or later is part of all distributions of LaTeX
 %% version 2005/12/01 or later.
 \LWR at ProvidesPackageDrop{hyperxmp}[2018/11/27]
+
+\define at key{LWR at hyperref}{pdfdate}[]{}
+\define at key{LWR at hyperref}{pdfmetadate}[]{}
+\define at key{LWR at hyperref}{pdfcopyright}[]{}
+\define at key{LWR at hyperref}{pdftype}[]{}
+\define at key{LWR at hyperref}{pdflicenseurl}[]{}
+\define at key{LWR at hyperref}{pdfauthortitle}[]{}
+\define at key{LWR at hyperref}{pdfcaptionwriter}[]{}
+\define at key{LWR at hyperref}{pdfmetalang}[]{}
+\define at key{LWR at hyperref}{pdfapart}[]{}
+\define at key{LWR at hyperref}{pdfaconformance}[]{}
+\define at key{LWR at hyperref}{pdfuapart}[]{}
+\define at key{LWR at hyperref}{pdfxstandard}[]{}
+\define at key{LWR at hyperref}{pdfsource}[]{}
+\define at key{LWR at hyperref}{pdfdocumentid}[]{}
+\define at key{LWR at hyperref}{pdfinstanceid}[]{}
+\define at key{LWR at hyperref}{pdfversionid}[]{}
+\define at key{LWR at hyperref}{pdfrendition}[]{}
+\define at key{LWR at hyperref}{pdfpublication}[]{}
+\define at key{LWR at hyperref}{pdfpubtype}[]{}
+\define at key{LWR at hyperref}{pdfbytes}[]{}
+\define at key{LWR at hyperref}{pdfnumpages}[]{}
+\define at key{LWR at hyperref}{pdfissn}[]{}
+\define at key{LWR at hyperref}{pdfeissn}[]{}
+\define at key{LWR at hyperref}{pdfisbn}[]{}
+\define at key{LWR at hyperref}{pdfbookedition}[]{}
+\define at key{LWR at hyperref}{pdfpublisher}[]{}
+\define at key{LWR at hyperref}{pdfvolumenum}[]{}
+\define at key{LWR at hyperref}{pdfissuenum}[]{}
+\define at key{LWR at hyperref}{pdfpagerange}[]{}
+\define at key{LWR at hyperref}{pdfdoi}[]{}
+\define at key{LWR at hyperref}{pdfurl}[]{}
+\define at key{LWR at hyperref}{pdfidentifier}[]{}
+\define at key{LWR at hyperref}{pdfsubtitle}[]{}
+\define at key{LWR at hyperref}{pdfpubstatus}[]{}
+\define at key{LWR at hyperref}{pdfcontactaddress}[]{}
+\define at key{LWR at hyperref}{pdfcontactcity}[]{}
+\define at key{LWR at hyperref}{pdfcontactregion}[]{}
+\define at key{LWR at hyperref}{pdfcontactpostcode}[]{}
+\define at key{LWR at hyperref}{pdfcontactcountry}[]{}
+\define at key{LWR at hyperref}{pdfcontactphone}[]{}
+\define at key{LWR at hyperref}{pdfcontactemail}[]{}
+\define at key{LWR at hyperref}{pdfcontacturl}[]{}
+\define at key{LWR at hyperref}{keeppdfinfo}[]{}
+\define at key{LWR at hyperref}{pdfauthor}[]{}
+\define at key{LWR at hyperref}{pdfkeywords}[]{}
 \endinput
 %%
 %% End of file `lwarp-hyperxmp.sty'.

Modified: trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-keyfloat.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-keyfloat.sty	2021-04-11 21:32:32 UTC (rev 58836)
+++ trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-keyfloat.sty	2021-04-11 21:33:43 UTC (rev 58837)
@@ -210,6 +210,7 @@
     \LWR at BlockClassWP%
         {float:right; width:2in; margin:10pt}%
         {}%
+        (note)%
         {marginblock}%
     \renewcommand*{\@captype}{#2}%
     \minipage{\LWR at usersmarginparwidth}%
@@ -238,6 +239,7 @@
             margin:10pt%
         }%
         {}%
+        (note)%
         {marginblock}%
     \setlength{\linewidth}{.95\LWR at templengthone}%
     \booltrue{KFLT at keywrap}%

Modified: trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-listings.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-listings.sty	2021-04-11 21:32:32 UTC (rev 58836)
+++ trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-listings.sty	2021-04-11 21:33:43 UTC (rev 58837)
@@ -38,37 +38,102 @@
 }
 \renewcommand{\lst at Init}[1]{%
 \LWR at traceinfo{lst at Init}%
-\lst at ifdisplaystyle%
-    \LWR at forcenewpage%
-\fi%
-\renewcommand*{\@captype}{lstlisting}%
-\let\lst at aboveskip\z@\let\lst at belowskip\z@%
-\gdef\lst at boxpos{t}%
-\let\lst at frame\@empty
-    \let\lst at frametshape\@empty
-    \let\lst at framershape\@empty
-    \let\lst at framebshape\@empty
-    \let\lst at framelshape\@empty
-\lstframe@\lst at frameround ffff\relax%
-\lst at multicols\@empty%
-\LWR at origlst@Init{#1}\relax%
-\def\lst at framelr{}%
-\LWR at traceinfo{finished origlst at Init}%
-\lst at ifdisplaystyle%
-    \LWR at traceinfo{About to create verbatim.}%
-    \let\lsthk at EveryPar\relax%
-    \LWR at atbeginverbatim{programlisting}%
+\lst at ifdisplaystyle%        lwarp
+    \LWR at forcenewpage%      lwarp
+\fi%                        lwarp
+\let\lst at ifmathescape\iffalse%      lwarp
+\let\lst at DefEsc\relax%              lwarp
+\def\lst at escapebegin{}%             lwarp
+\def\lst at escapeend{}%               lwarp
+\renewcommand*{\@captype}{lstlisting}%      lwarp
+    \let\lst at aboveskip\z@\let\lst at belowskip\z@%     lwarp
+    \gdef\lst at boxpos{t}%            lwarp
+    \let\lst at frame\@empty%          lwarp
+    \let\lst at frametshape\@empty%    lwarp
+    \let\lst at framershape\@empty%    lwarp
+    \let\lst at framebshape\@empty%    lwarp
+    \let\lst at framelshape\@empty%    lwarp
+    \lstframe@\lst at frameround ffff\relax%   lwarp
+    \lst at multicols\@empty%  lwarp
+    \begingroup%
+    \ifx\lst at float\relax\else%
+        \edef\@tempa{\noexpand\lst at beginfloat{lstlisting}[\lst at float]}%
+        \expandafter\@tempa%
+    \fi%
+    \ifx\lst at multicols\@empty\else%
+        \edef\lst at next{\noexpand\multicols{\lst at multicols}}%
+        \expandafter\lst at next%
+    \fi%
+    \ifhmode\ifinner \lst at boxtrue \fi\fi%
+    \lst at ifbox%
+        \lsthk at BoxUnsafe%
+        \hbox to\z@\bgroup%
+             $\if t\lst at boxpos \vtop%
+        \else \if b\lst at boxpos \vbox%
+        \else \vcenter \fi\fi%
+        \bgroup \par\noindent%
+    \else%
+        \lst at ifdisplaystyle%
+            \lst at EveryDisplay%
+            \par\penalty-50\relax%
+            \vspace\lst at aboveskip%
+        \fi%
+    \fi%
+    \normalbaselines%
+    \abovecaptionskip\lst at abovecaption\relax%
+    \belowcaptionskip\lst at belowcaption\relax%
+    \lst at MakeCaption t%
+\LWR at traceinfo{lst at Init: defining current label !\@currentlabel!}%
+    \let\LWR at listings@currentlabel\@currentlabel%            lwarp
+\LWR at traceinfo{lst at Init: defining current label !\cref at currentlabel!}%
+    \let\LWR at listings@cref at currentlabel\cref at currentlabel%   lwarp
+\LWR at traceinfo{lst at Init: preinit and init}%
+    \lsthk at PreInit \lsthk at Init%
+    \let\@currentlabel\LWR at listings@currentlabel%            lwarp
+    \let\cref at currentlabel\LWR at listings@cref at currentlabel%   lwarp
+\LWR at traceinfo{lst at Init: M}%
+    \lst at ifdisplaystyle
+        \global\let\lst at ltxlabel\@empty
+        \if at inlabel
+            \lst at ifresetmargins
+                \leavevmode
+            \else
+                \xdef\lst at ltxlabel{\the\everypar}%
+                \lst at AddTo\lst at ltxlabel{%
+                    \global\let\lst at ltxlabel\@empty
+                    \everypar{\lsthk at EveryLine\lsthk at EveryPar}}%
+            \fi
+        \fi
+        \everypar\expandafter{\lst at ltxlabel
+                              \lsthk at EveryLine\lsthk at EveryPar}%
+    \else
+        \everypar{}
+        \let\lst at NewLine\@empty
+    \fi
+\LWR at traceinfo{lst at Init: P}%
+    \lsthk at InitVars \lsthk at InitVarsBOL
+    \lst at Let{13}\lst at MProcessListing
+    \let\lst at Backslash#1%
+    \lst at EnterMode{\lst at Pmode}{\lst at SelectCharTable}%
+    \lst at InitFinalize%
+\LWR at traceinfo{lst at Init: S}%
+\def\lst at framelr{}%     lwarp
+\LWR at traceinfo{lst at Init: finished origlst at Init}%
+\lst at ifdisplaystyle%    lwarp
+    \LWR at traceinfo{lst at Init: About to create verbatim.}%  lwarp
+    \let\lsthk at EveryPar\relax%                  lwarp
+    \LWR at atbeginverbatim{programlisting}%       lwarp
 
-    \let\lsthk at EveryPar\LWR at origlsthkEveryPar%
-\else%
-    \ifbool{LWR at verbtags}{\LWR at htmltag{%
-        span class=\textquotedbl{}inlineprogramlisting\textquotedbl%
-    }}{}%
-\fi%
-\LWR at traceinfo{lst at Init done}%
+    \let\lsthk at EveryPar\LWR at origlsthkEveryPar%  lwarp
+\else%                                          lwarp
+    \ifbool{LWR at verbtags}{\LWR at htmltag{%        lwarp
+        span class=\textquotedbl{}inlineprogramlisting\textquotedbl%    lwarp
+    }}{}%                                       lwarp
+\fi%                                            lwarp
+\LWR at traceinfo{lst at Init: done}%
 }
-
 \renewcommand*{\lst at DeInit}{%
+\LWR at traceinfo{lst at DeInit}%
 \lst at ifdisplaystyle%
     \let\lsthk at EveryPar\relax%
     \LWR at afterendverbatim%
@@ -76,19 +141,44 @@
 \else%
     \ifbool{LWR at verbtags}{\noindent\LWR at htmltag{/span}}{}%
 \fi%
-\LWR at origlst@DeInit%
+    \lst at XPrintToken \lst at EOLUpdate
+    \global\advance\lst at newlines\m at ne
+    \lst at ifshowlines
+        \lst at DoNewLines
+    \else
+        \setbox\@tempboxa\vbox{\lst at DoNewLines}%
+    \fi
+    \lst at ifdisplaystyle \par\removelastskip \fi
+    \lsthk at ExitVars\everypar{}\lsthk at DeInit\normalbaselines\normalcolor
+    \lst at MakeCaption b%
+    \lst at ifbox
+        \egroup $\hss \egroup
+        \vrule\@width\lst at maxwidth\@height\z@\@depth\z@
+    \else
+        \lst at ifdisplaystyle
+            \par\penalty-50\vspace\lst at belowskip
+        \fi
+    \fi
+    \ifx\lst at multicols\@empty\else
+        \def\lst at next{\global\let\@checkend\@gobble
+                      \endmulticols
+                      \global\let\@checkend\lst@@checkend}
+        \expandafter\lst at next
+    \fi
+    \ifx\lst at float\relax\else
+        \expandafter\lst at endfloat
+    \fi
+    \endgroup
+\LWR at traceinfo{lst at DeInit done}%
 }
-
 \def\lst at MakeCaption#1{%
-\LWR at traceinfo{MAKING CAPTION at #1}%
+\LWR at traceinfo{lst at MakeCaption at #1}%
   \lst at ifdisplaystyle
-\LWR at traceinfo{making a listings display caption}%
+\LWR at traceinfo{lst at MakeCaption: making a listings display caption}%
     \ifx #1t%
          \ifx\lst@@caption\@empty\expandafter\lst at HRefStepCounter \else
                                  \expandafter\refstepcounter
          \fi {lstlisting}%
-\LWR at traceinfo{About to assign label: !\lst at label!}%
-\LWR at traceinfo{Finished assigning the label.}%
         \let\lst at arg\lst at intname \lst at ReplaceIn\lst at arg\lst at filenamerpl
         \global\let\lst at name\lst at arg \global\let\lstname\lst at name
         \lst at ifnolol\else
@@ -98,12 +188,12 @@
                     \else
                         \def\lst at temp{ }%
                         \ifx\lst at intname\lst at temp \else
-\LWR at traceinfo{addcontents lst at name: -\lst at name-}%
+\LWR at traceinfo{lst at MakeCaption: addcontents lst at name: -\lst at name-}%
                         \fi
                     \fi
                 \fi
             \else
-\LWR at traceinfo{addcontents lst@@caption: -\lst@@caption-}%
+\LWR at traceinfo{lst at MakeCaption: addcontents lst@@caption: -\lst@@caption-}%
                  \addcontentsline{lol}{lstlisting}%
 {\protect\numberline{\thelstlisting}%
 {\protect\ignorespaces \LWR at isolate{\lst@@caption} \protect\relax}}%
@@ -111,34 +201,34 @@
          \fi
      \fi
     \ifx\lst at caption\@empty\else
-\LWR at traceinfo{lst at caption not empty-}%
+\LWR at traceinfo{lst at MakeCaption: lst at caption not empty-}%
         \lst at IfSubstring #1\lst at captionpos
             {\begingroup
-\LWR at traceinfo{at the selected position}%
+\LWR at traceinfo{lst at MakeCaption: at the selected position}%
              \ifx\lst at title\@empty
-                    \LWR at stoppars%
+                    \LWR at stoppars%      lwarp
                   \lst at makecaption\fnum at lstlisting{\ignorespaces \lst at caption}
              \else
-\LWR at traceinfo{Making title: \lst at title}%
+\LWR at traceinfo{lst at MakeCaption: Making title: \lst at title}%
 \begin{BlockClass}{lstlistingtitle}%    lwarp
 \lst at maketitle\lst at title%               lwarp
 \end{BlockClass}%                       lwarp
-             \fi
-\LWR at traceinfo{About to assign label: !\lst at label!}%
-        \ifx\lst at label\@empty\else
+             \fi%
+\LWR at traceinfo{lst at MakeCaption: About to assign label: !\lst at label!}%
+        \ifx\lst at label\@empty\else%
 \leavevmode% gets rid of bad space factor error
 \GetTitleStringExpand{\lst at caption}%
 \edef\LWR at lntemp{\GetTitleStringResult}%
 \edef\@currentlabelname{\detokenize\expandafter{\LWR at lntemp}}%
-\label{\lst at label}\fi
-\LWR at traceinfo{Finished assigning the label.}%
+\label{\lst at label}\fi%
+\LWR at traceinfo{lst at MakeCaption: Finished assigning the label.}%
              \endgroup}{}%
     \fi
-\LWR at traceinfo{end of making a listings display caption}%
+\LWR at traceinfo{lst at MakeCaption: end of making a listings display caption}%
   \else
-\LWR at traceinfo{INLINE}%
+\LWR at traceinfo{lst at MakeCaption: INLINE}%
   \fi
-\LWR at traceinfo{DONE WITH CAPTION at #1}%
+\LWR at traceinfo{lst at MakeCaption: done at #1}%
 }
 
 \renewcommand{\lst at maketitle}[1]{%

Modified: trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-longtable.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-longtable.sty	2021-04-11 21:32:32 UTC (rev 58836)
+++ trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-longtable.sty	2021-04-11 21:33:43 UTC (rev 58837)
@@ -59,25 +59,26 @@
 \newcommand*{\LWR at longtable@headerror}{%
     \PackageError{lwarp-longtable}
     {For longtable:\MessageBreak
-    1: Keep either one of an \protect\endhead\space or
-        \protect\endfirsthead\space\MessageBreak
-        \space phrase as-is, to be used by both print and HTML.\MessageBreak
+    1: Keep either one of an \protect\endhead\space or\MessageBreak
+        \space\protect\endfirsthead\space phrase as-is,\MessageBreak
+        \space to be used by both print and HTML.\MessageBreak
     2: Place any other \protect\end... phrases inside a\MessageBreak
         \space\protect\warpprintonly\space macro,
             to be ignored by HTML.\MessageBreak
-    3: Add a final footer for HTML at the end of the table\MessageBreak
+    3: At the end of the table,\MessageBreak
+        \space add a final footer for HTML\MessageBreak
         \space inside a \protect\warpHTMLonly\space macro.
             This can be\MessageBreak
         \space a copy of an \protect\endfoot\space or
-            \protect\endfirstfoot\space phrase,\MessageBreak
-        \space but without the actual \protect\endfoot\space
-            or \protect\endfirstfoot\MessageBreak
-        \space macros.  If using threeparttablex, add\MessageBreak
+            \protect\endfirstfoot\MessageBreak
+        \space phrase, but without the actual \protect\endfoot\MessageBreak
+        \space or \protect\endfirstfoot\space macros.\MessageBreak
+        \space If using threeparttablex, add\MessageBreak
         \space \protect\insertTableNotes\space here,
             optionally with\MessageBreak
         \space \protect\UseMinipageWidths\space in front.\MessageBreak
-    See the Lwarp documentation regarding longtables\MessageBreak
-    and threeparttablex}
+    See the Lwarp documentation regarding\MessageBreak
+    longtables and threeparttablex}
     {See the Lwarp documentation regading longtables and threeparttablex.}
 }
 \newcommand*{\LWR at longtable@maybeheaderror}{%

Modified: trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-natbib.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-natbib.sty	2021-04-11 21:32:32 UTC (rev 58836)
+++ trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-natbib.sty	2021-04-11 21:33:43 UTC (rev 58837)
@@ -32,7 +32,10 @@
 \LWRNB at origsetcitestyle{#1}%
 \LWRNB at patchnatbibopenclose%
 }
-
+\xpretocmd{\NAT at reset@parser}
+    {\LWR at newautopagelabel{page}}%
+    {}
+    {\LWR at patcherror{natbib}{NAT at reset@parser}}
 \endinput
 %%
 %% End of file `lwarp-natbib.sty'.

Modified: trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-ntheorem.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-ntheorem.sty	2021-04-11 21:32:32 UTC (rev 58836)
+++ trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-ntheorem.sty	2021-04-11 21:33:43 UTC (rev 58837)
@@ -63,6 +63,7 @@
    \refstepcounter[#1]{#2}%  <<< cleveref modification
    \theorem at prework
     \LWR at forcenewpage% lwarp
+    \LWR at printpendingfootnotes%                   lwarp
     \BlockClass{theorembody#1}%\LWR at thisthmstyle% lwarp
    \trivlist % latex's \trivlist, calling latex's \@trivlist unchanged
    \ifuse at newframeskips  % cf. latex.ltx for topsepadd: \@trivlist
@@ -99,6 +100,7 @@
    \refstepcounter{#2}%
    \theorem at prework
     \LWR at forcenewpage% lwarp
+    \LWR at printpendingfootnotes%                   lwarp
     \BlockClass{theorembody#1}%\LWR at thisthmstyle% lwarp
    \trivlist % latex's \trivlist, calling latex's \@trivlist unchanged
    \ifuse at newframeskips  % cf. latex.ltx for topsepadd: \@trivlist
@@ -469,6 +471,7 @@
 }{}%
 \LWR at origendtheorem% also does \@endtrivlist
 \ifbool{LWR at ntheoremmarks}{\global\setendmarktrue}{}%
+    \LWR at printpendingfootnotes%                   lwarp
 \endBlockClass%
 }
 \gdef\NoEndMark{\global\setendmarkfalse}

Added: trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-orcidlink.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-orcidlink.sty	                        (rev 0)
+++ trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-orcidlink.sty	2021-04-11 21:33:43 UTC (rev 58837)
@@ -0,0 +1,46 @@
+%%
+%% This is file `lwarp-orcidlink.sty',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% lwarp.dtx  (with options: `orcidlink')
+%% This is a generated file.
+%% Copyright 2016-2020 Brian Dunn
+%% 
+%% This work may be distributed and/or modified under the
+%% conditions of the LaTeX Project Public License, either version 1.3
+%% of this license or (at your option) any later version.
+%% The latest version of this license is in
+%%   http://www.latex-project.org/lppl.txt
+%% and version 1.3 or later is part of all distributions of LaTeX
+%% version 2005/12/01 or later.
+\RequirePackage{lwarp-scalerel}
+
+\LWR at ProvidesPackagePass{orcidlink}[2020/11/21]
+\renewcommand\orcidlink[1]{%
+    \texorpdfstring%
+        {%
+            \href%
+                {https://orcid.org/#1}%
+                {%
+                    \begin{lateximage}[orcid #1]%   lwarp
+                    \mbox{%
+                        \scalerel*{%
+                            \begin{tikzpicture}[yscale=-1,transform shape]
+                            \pic{orcidlogo};
+                            \end{tikzpicture}
+                        }{|}%
+                    }%
+                    \end{lateximage}%   lwarp
+                }%
+        }%
+        {}%
+}
+
+\begin{warpMathJax}
+\CustomizeMathJax{\newcommand{\orcidlink}[1]{}}
+\end{warpMathJax}
+\endinput
+%%
+%% End of file `lwarp-orcidlink.sty'.


Property changes on: trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-orcidlink.sty
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Modified: trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-parnotes.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-parnotes.sty	2021-04-11 21:32:32 UTC (rev 58836)
+++ trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-parnotes.sty	2021-04-11 21:33:43 UTC (rev 58837)
@@ -40,10 +40,10 @@
     \unless\ifvmode\par\fi
     % Avoid page breaks between a paragraph and its parnotes
     \nopagebreak\addvspace{\parnotevskip}%
-    \LWR at forcenewpage%                  lwarp
-    \begin{BlockClass}{footnotes}%      lwarp
+    \LWR at forcenewpage%                      lwarp
+    \begin{BlockClass}(note){footnotes}%    lwarp
     {\parnotefmt{\PN at text}\par}%
-    \end{BlockClass}%                   lwarp
+    \end{BlockClass}%                       lwarp
     \global\def\PN at text{}%
     \addvspace{\parnotevskip}%
     %

Modified: trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-patch-memoir.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-patch-memoir.sty	2021-04-11 21:32:32 UTC (rev 58836)
+++ trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-patch-memoir.sty	2021-04-11 21:33:43 UTC (rev 58837)
@@ -47,19 +47,19 @@
 \RequirePackage{lwarp-titling}% req'd
 \RequirePackage{lwarp-tocloft}% req'd
 \RequirePackage{lwarp-verse}% req'd
-\let\LWR at orig@label\@mem at old@label
-\let\@mem at old@label\LWR at new@label
+\LetLtxMacro\LWR at orig@label\@mem at old@label
+\LetLtxMacro\@mem at old@label\LWR at new@label
 \AtBeginDocument{
     \renewcommand*{\sf@@memsub at label}[1]{%
         \@bsphack
         \sf@@memsub at label@hook{#1}%
-        \@memoldlabel{#1}%
-        \LWR at label@createtag{sub@#1}%
+        \cref at label{#1}%                    lwarp
+        \LWR at label@createtag{sub@#1}%           lwarp
         \protected at write\@auxout{}{%
             \string\newlabel{sub@#1}%
             {{\@nameuse{@@thesub\@captype}}%
             {\thepage}}}%
-        \LWR at write@lwarplabel{sub@#1}%
+        \LWR at write@lwarplabel{sub@#1}%          lwarp
         \@esphack
     }
 }
@@ -701,7 +701,7 @@
 \renewcommand{\setfloatadjustment}[2]{}
 \NewDocumentEnvironment{KFLTmemoir at marginfloat}{O{-1.2ex} m}
 {% start
-    \LWR at BlockClassWP{float:right; width:2in; margin:10pt}{}{marginblock}%
+    \LWR at BlockClassWP{float:right; width:2in; margin:10pt}{}(note){marginblock}%
     \renewcommand*{\@captype}{#2}%
 }
 {%

Modified: trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-pdflscape.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-pdflscape.sty	2021-04-11 21:32:32 UTC (rev 58836)
+++ trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-pdflscape.sty	2021-04-11 21:33:43 UTC (rev 58837)
@@ -15,7 +15,11 @@
 %%   http://www.latex-project.org/lppl.txt
 %% and version 1.3 or later is part of all distributions of LaTeX
 %% version 2005/12/01 or later.
-\LWR at ProvidesPackageDrop{pdflscape}[2016/05/14]
+\LWR at ProvidesPackageDrop{pdflscape}[2019/12/05]
+\let\landscape\relax
+\let\endlandscape\relax
+
+\newenvironment*{landscape}{}{}
 \endinput
 %%
 %% End of file `lwarp-pdflscape.sty'.

Modified: trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-picinpar.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-picinpar.sty	2021-04-11 21:32:32 UTC (rev 58836)
+++ trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-picinpar.sty	2021-04-11 21:33:43 UTC (rev 58837)
@@ -18,9 +18,9 @@
 \LWR at ProvidesPackagePass{picinpar}% No date is assigned.
 \long\def\LWR at HTML@window[#1,#2,#3,#4] {%
     \if #2r%
-        \begin{BlockClass}[float:right]{marginblock}%
+        \begin{BlockClass}[float:right](note){marginblock}%
     \else%
-        \begin{BlockClass}[float:left]{marginblock}%
+        \begin{BlockClass}[float:left](note){marginblock}%
     \fi%
     #3\par%
     #4%

Modified: trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-scrlayer-scrpage.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-scrlayer-scrpage.sty	2021-04-11 21:32:32 UTC (rev 58836)
+++ trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-scrlayer-scrpage.sty	2021-04-11 21:33:43 UTC (rev 58837)
@@ -35,7 +35,12 @@
 \NewDocumentCommand{\ofoot}{s o m}{}
 \NewDocumentCommand{\cfoot}{s o m}{}
 \NewDocumentCommand{\ifoot}{s o m}{}
+\NewDocumentCommand{\automark}{som}{}
+\newcommand*{\manualmark}{}
 \DeclareDocumentCommand{\MakeMarkcase}{m}{#1}
+\let\headmark\leftmark
+\providecommand{\pnumfont}{\normalfont}%
+\DeclareRobustCommand\pagemark{{\pnumfont{\thepage}}}%
 \newcommand*{\defpairofpagestyles}[3][]{}
 \newcommand*{\newpairofpagestyles}[3][]{}
 \newcommand*{\renewpairofpagestyles}[3][]{}

Modified: trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-sidenotes.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-sidenotes.sty	2021-04-11 21:32:32 UTC (rev 58836)
+++ trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-sidenotes.sty	2021-04-11 21:33:43 UTC (rev 58837)
@@ -23,7 +23,7 @@
   \captionsetup{style=sidecaption}%
   \IfBooleanTF{#1}
   { % starred
-    \begin{BlockClass}[border:none ; box-shadow:none]{marginblock}
+    \begin{BlockClass}[border:none ; box-shadow:none]{marginblock}%
     \caption*{#4}%
     \end{BlockClass}
   }
@@ -31,7 +31,7 @@
   \IfNoValueOrEmptyTF{#2}
     {\def\@sidenotes at sidecaption@tof{#4}}
     {\def\@sidenotes at sidecaption@tof{#2}}
-    \begin{BlockClass}[border:none ; box-shadow:none]{marginblock}
+    \begin{BlockClass}[border:none ; box-shadow:none]{marginblock}%
     \caption[\@sidenotes at sidecaption@tof]{#4}
     \end{BlockClass}
   }

Modified: trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-stackengine.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-stackengine.sty	2021-04-11 21:32:32 UTC (rev 58836)
+++ trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-stackengine.sty	2021-04-11 21:33:43 UTC (rev 58837)
@@ -70,7 +70,7 @@
    }{}%
     \begingroup%    lwarp
     \LWR at restoreorigformatting%     lwarp
-    \RenewDocumentEnvironment{lateximage}{s o s o o}{}{}% lwarp: inside group
+    \RenewDocumentEnvironment{lateximage}{s o s o o d()}{}{}% lwarp: inside group
   \expandafter\LWR at gsavebox\csname\sv at name content\endcsname{#2}%
   \expandafter\gdef\expandafter#1\expandafter{%
         \expandafter\begin\expandafter{lateximage\expandafter}%     lwarp

Modified: trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-subfig.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-subfig.sty	2021-04-11 21:32:32 UTC (rev 58836)
+++ trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-subfig.sty	2021-04-11 21:33:43 UTC (rev 58837)
@@ -143,14 +143,10 @@
 \LWR at startpars% lwarp
 }
 
-\def\subfloat at label{%
-\LWR at ensuredoingapar% lwarp
-  \@ifnextchar(%   %) match left parenthesis
-    {\sf at sub@label}
-    {\sf at sub@label(Sub\@captype\space
-                   \@ifundefined{thechapter}{}{\@nameuse{thechapter}\space}%
-                   \@nameuse{p at sub\@captype}%
-                   \@nameuse{thesub\@captype}.)}}
+\xpretocmd{\subfloat at label}
+    {\LWR at ensuredoingapar}
+    {}
+    {\LWR at patcherror{subfig}{subfloat at label}}
 
 \renewcommand{\sf at subref}[1]{%
     \LWR at subnewref{#1}{sub@#1}%

Modified: trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-theorem.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-theorem.sty	2021-04-11 21:32:32 UTC (rev 58836)
+++ trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-theorem.sty	2021-04-11 21:33:43 UTC (rev 58837)
@@ -162,6 +162,7 @@
 }
 \gdef\@thm#1#2{\refstepcounter{#1}%
 \LWR at forcenewpage% lwarp
+    \LWR at printpendingfootnotes%                   lwarp
     \BlockClass{theorembody\LWR at thisthmstyle}% lwarp
    \trivlist
    \@topsep \theorempreskipamount               % used by first \item
@@ -172,6 +173,7 @@
 
 \gdef\@endtheorem{%
 \endtrivlist
+    \LWR at printpendingfootnotes%                   lwarp
 \endBlockClass
 }
 \endinput

Modified: trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-threeparttablex.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-threeparttablex.sty	2021-04-11 21:32:32 UTC (rev 58836)
+++ trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-threeparttablex.sty	2021-04-11 21:33:43 UTC (rev 58837)
@@ -30,7 +30,8 @@
   }%
 }
 
-\renewcommand\TPTL at tnotex[2]{\tnote{\nameref{#2}}}
+\providecommand{\TPTL at tnotex}{}
+\renewcommand{\TPTL at tnotex}[2]{\tnote{\nameref{#2}}}
 \endinput
 %%
 %% End of file `lwarp-threeparttablex.sty'.

Modified: trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-tocloft.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-tocloft.sty	2021-04-11 21:32:32 UTC (rev 58836)
+++ trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-tocloft.sty	2021-04-11 21:33:43 UTC (rev 58837)
@@ -197,8 +197,8 @@
 
 \DeclareDocumentCommand{\cftsetindents}{m m m}{}
 
-\newcommand{\pagenumbersoff}[1]{}
-\newcommand{\pagenumberson}[1]{}
+\providecommand{\cftpagenumbersoff}[1]{}
+\providecommand{\cftpagenumberson}[1]{}
 
 \DeclareDocumentCommand{\newlistentry}{o m m m}
 {%

Modified: trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-wrapfig.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-wrapfig.sty	2021-04-11 21:32:32 UTC (rev 58836)
+++ trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-wrapfig.sty	2021-04-11 21:33:43 UTC (rev 58837)
@@ -37,6 +37,7 @@
 {%
     width:\LWR at printlength{\LWR at templengthone}; \LWR at wrapposition; %
 }%
+(note)%
 {marginblock}%
 \setlength{\linewidth}{\LWR at templengthone}%
 }

Modified: trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-xcolor.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-xcolor.sty	2021-04-11 21:32:32 UTC (rev 58836)
+++ trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-xcolor.sty	2021-04-11 21:33:43 UTC (rev 58837)
@@ -29,8 +29,11 @@
 
 \LWR at formatted{normalcolor}
 \renewcommand*{\LWR at findcurrenttextcolor}{%
+\LWR at traceinfo{LWR at findcurrenttextcolor}%
 \protect\colorlet{LWR at current@color}{.}%
+\LWR at traceinfo{LWR at findcurrenttextcolor B}%
 \protect\convertcolorspec{named}{LWR at current@color}{HTML}\LWR at tempcolor%
+\LWR at traceinfo{LWR at findcurrenttextcolor: done}%
 }
 
 \newcommand*{\LWR at currenttextcolorstyle}{%

Deleted: trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-xetexko-vertical.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-xetexko-vertical.sty	2021-04-11 21:32:32 UTC (rev 58836)
+++ trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-xetexko-vertical.sty	2021-04-11 21:33:43 UTC (rev 58837)
@@ -1,27 +0,0 @@
-%%
-%% This is file `lwarp-xetexko-vertical.sty',
-%% generated with the docstrip utility.
-%%
-%% The original source files were:
-%%
-%% lwarp.dtx  (with options: `xetexko-vertical')
-%% This is a generated file.
-%% Copyright 2016-2020 Brian Dunn
-%% 
-%% This work may be distributed and/or modified under the
-%% conditions of the LaTeX Project Public License, either version 1.3
-%% of this license or (at your option) any later version.
-%% The latest version of this license is in
-%%   http://www.latex-project.org/lppl.txt
-%% and version 1.3 or later is part of all distributions of LaTeX
-%% version 2005/12/01 or later.
-\LWR at loadbefore{xetexko-vertical}
-
-\LWR at ProvidesPackagePass{xetexko-vertical}[2018/04/06]
-\renewcommand{\verticaltypesetting}{}
-\renewenvironment{vertical}[1]{\BlockClass{verticalrl}}{\endBlockClass}
-\renewenvironment{horizontal}[1]{\BlockClass{horizontaltb}}{\endBlockClass}
-\renewcommand{\vertlatin}[1]{#1}
-\endinput
-%%
-%% End of file `lwarp-xetexko-vertical.sty'.

Added: trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-xetexko.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-xetexko.sty	                        (rev 0)
+++ trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-xetexko.sty	2021-04-11 21:33:43 UTC (rev 58837)
@@ -0,0 +1,27 @@
+%%
+%% This is file `lwarp-xetexko.sty',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% lwarp.dtx  (with options: `xetexko')
+%% This is a generated file.
+%% Copyright 2016-2020 Brian Dunn
+%% 
+%% This work may be distributed and/or modified under the
+%% conditions of the LaTeX Project Public License, either version 1.3
+%% of this license or (at your option) any later version.
+%% The latest version of this license is in
+%%   http://www.latex-project.org/lppl.txt
+%% and version 1.3 or later is part of all distributions of LaTeX
+%% version 2005/12/01 or later.
+\LWR at loadbefore{xetexko}
+
+\LWR at ProvidesPackagePass{xetexko}[2021/03/22]
+\renewcommand{\verticaltypesetting}{}
+\renewenvironment{vertical}[1]{\BlockClass{verticalrl}}{\endBlockClass}
+\renewenvironment{horizontal}[1]{\BlockClass{horizontaltb}}{\endBlockClass}
+\renewcommand{\vertlatin}[1]{#1}
+\endinput
+%%
+%% End of file `lwarp-xetexko.sty'.


Property changes on: trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-xetexko.sty
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Modified: trunk/Master/texmf-dist/tex/latex/lwarp/lwarp.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/lwarp/lwarp.sty	2021-04-11 21:32:32 UTC (rev 58836)
+++ trunk/Master/texmf-dist/tex/latex/lwarp/lwarp.sty	2021-04-11 21:33:43 UTC (rev 58837)
@@ -17,7 +17,7 @@
 %% version 2005/12/01 or later.
 \NeedsTeXFormat{LaTeX2e}[1999/12/01]
 \ProvidesPackage{lwarp}
-    [2021/02/18 v0.895  Allows LaTeX to directly produce HTML5 output.]
+    [2021/04/08 v0.896  Allows LaTeX to directly produce HTML5 output.]
 
 
 
@@ -244,6 +244,7 @@
 \LWR at loadafter{bussproofs}
 \LWR at loadafter{bxpapersize}
 \LWR at loadafter{bytefield}
+\LWR at loadafter{ccicons}
 \LWR at loadafter{cancel}
 \LWR at loadafter{canoniclayout}
 \LWR at loadafter{caption}
@@ -265,6 +266,7 @@
 \LWR at notmemoirloadafter{chngpage}
 \LWR at loadafter{cite}
 \LWR at loadafter{citeref}
+\LWR at loadafter{classicthesis}
 \LWR at loadafter{cleveref}
 \LWR at loadafter{cmdtrack}
 \LWR at loadafter{colonequals}
@@ -300,6 +302,7 @@
 \LWR at loadafter{endheads}
 \LWR at loadafter{endnotes}
 \LWR at loadafter{engtlc}
+\LWR at loadafter{enotez}
 \LWR at notmemoirloadafter{enumerate}
 \LWR at loadafter{enumitem}
 \LWR at notmemoirloadafter{epigraph}
@@ -492,6 +495,7 @@
 \LWR at loadafter{nowidow}
 \LWR at loadafter{ntheorem}
 \LWR at loadafter{octave}
+\LWR at loadafter{orcidlink}
 \LWR at loadafter{overpic}
 \LWR at loadafter{pagegrid}
 \LWR at notmemoirloadafter{pagenote}
@@ -847,10 +851,11 @@
     \LWR at origrule{0pt}{1\baselineskip}%
     \LWR at orignewline%
 }
-\long\def\LWR at firstoffour#1#2#3#4{#1}
-\long\def\LWR at secondoffour#1#2#3#4{#2}
-\long\def\LWR at thirdoffour#1#2#3#4{#3}
-\long\def\LWR at fourthoffour#1#2#3#4{#4}
+\long\def\LWR at firstoffive#1#2#3#4#5{#1}
+\long\def\LWR at secondoffive#1#2#3#4#5{#2}
+\long\def\LWR at thirdoffive#1#2#3#4#5{#3}
+\long\def\LWR at fourthoffive#1#2#3#4#5{#4}
+\long\def\LWR at fifthoffive#1#2#3#4#5{#5}
 \newcounter{LWR at texboxdepth}
 \setcounter{LWR at texboxdepth}{0}
 \newcommand*{\LWR at maybe@orignewpage}{%
@@ -1538,6 +1543,24 @@
 \LWR at lookforpackagename{18}%
 \LWR at lookforpackagename{19}%
 \LWR at lookforpackagename{20}%
+\IfSubStr{\detokenize\expandafter{#1}}{\LWRleftbrace}%
+    {%
+        \PackageError{lwarp}{%
+            You used:\MessageBreak
+            \protect\requirepackage[#1]{#2}\MessageBreak
+            Braces in the package options will fail with Lwarp.\MessageBreak
+            Instead, use:\MessageBreak
+            \protect\PassOptionsToPackage{#1}{#2}\MessageBreak
+            \protect\requirepackage{#2}\MessageBreak
+            near the line number given below.\MessageBreak
+            Enter 'h' for more info%
+        }%
+        {%
+            See the Lwarp manual troubleshooting index entry for\MessageBreak
+            ``package, options with braces''%
+        }%
+    }%
+    {}% no brace
 \IfValueTF{#1}%
 {% options given
     \IfValueTF{#3}% version given?
@@ -2744,12 +2767,12 @@
 div.marginparblock br
     { margin-bottom: 2ex ; }
 
-div.bodycontainer {
+main.bodycontainer {
     float: left ;
     width: 80% ;
 }
 
-div.bodywithoutsidetoc div.bodycontainer {
+div.bodywithoutsidetoc main.bodycontainer {
     float: none ;
     width: 100% ;
 }
@@ -3549,15 +3572,12 @@
     border: none ;
 }
 
-/* The -1px right margin compensates for the 1px right border. */
-/* Without this -1px margin, the body container appears below instead */
-/* of floating to the side. */
 div.sidetoccontainer {
     font-family: "DejaVu Serif", "Bitstream Vera Serif",
         "Lucida Bright", Georgia, serif;
     float: left ;
-    width: 20%;
-    margin: 0pt -1px 3ex 0pt ;
+    width: 19%; /* room for border-right next to 80% main */
+    margin: 0pt 0em 3ex 0pt ;
     border-right: 1px solid silver;
     border-bottom: 1px solid silver;
     background: #FAF7F4 ;
@@ -3889,7 +3909,7 @@
     span.sidetocthetitle { display: inline }
     nav.topnavigation { display:block }
     nav.botnavigation { display:block }
-    div.bodycontainer { width: 100% }
+    main.bodycontainer { width: 100% }
     .marginpar {
         max-width: 100%;
         float: none;
@@ -3908,7 +3928,7 @@
     div.sidetoccontainer { display:none; }
     nav.topnavigation { display: none; }
     nav.botnavigation { display: none; }
-    div.bodycontainer { width: 100% }
+    main.bodycontainer { width: 100% }
 }
 
 @media handheld {
@@ -3915,7 +3935,7 @@
     div.sidetoccontainer { display:none; }
     nav.topnavigation { display:block }
     nav.botnavigation { display:block }
-    div.bodycontainer { width: 100% }
+    main.bodycontainer { width: 100% }
 }
 
 @media projection {
@@ -3922,7 +3942,7 @@
     div.sidetoccontainer { display:none; }
     nav.topnavigation { display:block }
     nav.botnavigation { display:block }
-    div.bodycontainer { width: 100% }
+    main.bodycontainer { width: 100% }
 }
 \end{filecontents*}
 \end{LWRwriteconf}
@@ -4657,7 +4677,7 @@
 
 -- Copyright 2016-2021 Brian Dunn
 
-printversion = "v0.895"
+printversion = "v0.896"
 requiredconfversion = "2" -- also at *lwarpmk.conf
 
 function printhelp ()
@@ -5574,7 +5594,6 @@
 \begin{warpHTML}
 
 
-
 \newcommand*{\LWR at depthnone}{-5}
 \newcommand*{\LWR at depthfinished}{-4}
 \newcommand*{\LWR at depthbook}{-2}
@@ -5602,9 +5621,15 @@
 \newcommand*{\LWR at closeten}{}
 \newcommand*{\LWR at closeeleven}{}
 \newcommand*{\LWR at closetwelve}{}
+\newcommand*{\LWR at closethirteen}{}
+\newcommand*{\LWR at closefourteen}{}
+\newcommand*{\LWR at closefifteen}{}
+\newcommand*{\LWR at closesixteen}{}
+\newcommand*{\LWR at closeseventeen}{}
+\newcommand*{\LWR at closeeighteen}{}
+\newcommand*{\LWR at closenineteen}{}
 
 
-
 \newcommand*{\LWR at closedepthone}{\LWR at depthnone}% top of the stack
 \newcommand*{\LWR at closedepthtwo}{\LWR at depthnone}
 \newcommand*{\LWR at closedepththree}{\LWR at depthnone}
@@ -5617,11 +5642,25 @@
 \newcommand*{\LWR at closedepthten}{\LWR at depthnone}
 \newcommand*{\LWR at closedeptheleven}{\LWR at depthnone}
 \newcommand*{\LWR at closedepthtwelve}{\LWR at depthnone}
+\newcommand*{\LWR at closedepththirteen}{\LWR at depthnone}
+\newcommand*{\LWR at closedepthfourteen}{\LWR at depthnone}
+\newcommand*{\LWR at closedepthfifteen}{\LWR at depthnone}
+\newcommand*{\LWR at closedepthsixteen}{\LWR at depthnone}
+\newcommand*{\LWR at closedepthseventeen}{\LWR at depthnone}
+\newcommand*{\LWR at closedeptheighteen}{\LWR at depthnone}
+\newcommand*{\LWR at closedepthnineteen}{\LWR at depthnone}
 
 
 
 \NewDocumentCommand{\LWR at pushclose}{m}
 {%
+\global\let\LWR at closenineteen\LWR at closeeighteen%
+\global\let\LWR at closeeighteen\LWR at closeseventeen%
+\global\let\LWR at closeseventeen\LWR at closesixteen%
+\global\let\LWR at closesixteen\LWR at closefifteen%
+\global\let\LWR at closefifteen\LWR at closefourteen%
+\global\let\LWR at closefourteen\LWR at closethirteen%
+\global\let\LWR at closethirteen\LWR at closetwelve%
 \global\let\LWR at closetwelve\LWR at closeeleven%
 \global\let\LWR at closeeleven\LWR at closeten%
 \global\let\LWR at closeten\LWR at closenine%
@@ -5634,6 +5673,13 @@
 \global\let\LWR at closethree\LWR at closetwo%
 \global\let\LWR at closetwo\LWR at closeone%
 \global\csletcs{LWR at closeone}{LWR at printclose#1}%
+\global\let\LWR at closedepthnineteen\LWR at closedeptheighteen%
+\global\let\LWR at closedeptheighteen\LWR at closedepthseventeen%
+\global\let\LWR at closedepthseventeen\LWR at closedepthsixteen%
+\global\let\LWR at closedepthsixteen\LWR at closedepthfifteen%
+\global\let\LWR at closedepthfifteen\LWR at closedepthfourteen%
+\global\let\LWR at closedepthfourteen\LWR at closedepththirteen%
+\global\let\LWR at closedepththirteen\LWR at closedepthtwelve%
 \global\let\LWR at closedepthtwelve\LWR at closedeptheleven%
 \global\let\LWR at closedeptheleven\LWR at closedepthten%
 \global\let\LWR at closedepthten\LWR at closedepthnine%
@@ -5646,6 +5692,13 @@
 \global\let\LWR at closedepththree\LWR at closedepthtwo%
 \global\let\LWR at closedepthtwo\LWR at closedepthone%
 \global\csletcs{LWR at closedepthone}{LWR at depth#1}%
+\ifdefstring{\LWR at closedepthnineteen}{\LWR at depthnone}%
+    {}%
+    {%
+        \PackageError{lwarp}%
+            {The document is nested too deeply for Lwarp}%
+            {PLEASE inform the Lwarp maintainer!}%
+    }%
 }
 
 
@@ -5662,6 +5715,13 @@
 \global\let\LWR at closenine\LWR at closeten%
 \global\let\LWR at closeten\LWR at closeeleven%
 \global\let\LWR at closeeleven\LWR at closetwelve%
+\global\let\LWR at closetwelve\LWR at closethirteen%
+\global\let\LWR at closethirteen\LWR at closefourteen%
+\global\let\LWR at closefourteen\LWR at closefifteen%
+\global\let\LWR at closefifteen\LWR at closesixteen%
+\global\let\LWR at closesixteen\LWR at closeseventeen%
+\global\let\LWR at closeseventeen\LWR at closeeighteen%
+\global\let\LWR at closeeighteen\LWR at closenineteen%
 \global\let\LWR at closedepthone\LWR at closedepthtwo%
 \global\let\LWR at closedepthtwo\LWR at closedepththree%
 \global\let\LWR at closedepththree\LWR at closedepthfour%
@@ -5673,6 +5733,13 @@
 \global\let\LWR at closedepthnine\LWR at closedepthten%
 \global\let\LWR at closedepthten\LWR at closedeptheleven%
 \global\let\LWR at closedeptheleven\LWR at closedepthtwelve%
+\global\let\LWR at closedepthtwelve\LWR at closedepththirteen%
+\global\let\LWR at closedepththirteen\LWR at closedepthfourteen%
+\global\let\LWR at closedepthfourteen\LWR at closedepthfifteen%
+\global\let\LWR at closedepthfifteen\LWR at closedepthsixteen%
+\global\let\LWR at closedepthsixteen\LWR at closedepthseventeen%
+\global\let\LWR at closedepthseventeen\LWR at closedeptheighteen%
+\global\let\LWR at closedeptheighteen\LWR at closedepthnineteen%
 }
 
 \end{warpHTML}
@@ -5940,6 +6007,9 @@
 \LWR at closedepthfour\ \LWR at closedepthfive\ \LWR at closedepthsix\
 \LWR at closedepthseven\ \LWR at closedeptheight\ \LWR at closedepthnine\
 \LWR at closedepthten\ \LWR at closedeptheleven\ \LWR at closedepthtwelve\
+\LWR at closedepththirteen\ \LWR at closedepthfourteen\ \LWR at closedepthfifteen\
+\LWR at closedepthsixteen\ \LWR at closedepthseventeen\ \LWR at closedeptheighteen\
+\LWR at closedepthnineteen\
 }
 
 \newcommand*{\LWRPrintStack}{
@@ -6152,6 +6222,9 @@
     \RenewDocumentEnvironment{BlockClass}{o m}%
         {\LWR at spanwarnformat{multi-paragraph object}}%
         {}%
+    \RenewDocumentEnvironment{LWR at BlockClassWP}{m m D(){} m}%
+        {\LWR at spanwarnformat{multi-paragraph object}}%
+        {}%
     \renewcommand{\BlockClassSingle}[2]{%
         {\LWR at spanwarnformat{multi-paragraph object}}%
         ##2%
@@ -6185,15 +6258,17 @@
 \end{LWR at nestspan}%
 }
 
-\NewDocumentCommand{\LWR at htmlspanclass}{o m +m}{%
-\LWR at traceinfo{LWR at htmlspanclass |#1|#2|}%
-\LWR at ensuredoingapar%
-\LWR at subhtmlelementclass{span}[#1]{#2}%
-\begin{LWR at nestspan}%
-#3%
-\LWR at htmltagc{/span}%
-\LWR at traceinfo{LWR at htmlspanclass done}%
-\end{LWR at nestspan}%
+\NewDocumentCommand{\LWR at htmlspanclass}{o D(){} m +m}{%
+    \LWR at traceinfo{LWR at htmlspanclass |#1|#2|#3|}%
+    \LWR at ensuredoingapar%
+    \ifblank{#2}%
+        {\LWR at subhtmlelementclass{span}[#1]{#3}}%
+        {\LWR at subhtmlelementclass{span}[#1](#2){#3}}%
+    \begin{LWR at nestspan}%
+    #4%
+    \LWR at htmltagc{/span}%
+    \LWR at traceinfo{LWR at htmlspanclass done}%
+    \end{LWR at nestspan}%
 }
 
 
@@ -6244,19 +6319,21 @@
 }
 
 
-\NewDocumentCommand{\LWR at subhtmlelementclass}{m O{} m}{%
-\LWR at traceinfo{LWR at subhtmlelementclass !#1!#2!#3!}%
+\NewDocumentCommand{\LWR at subhtmlelementclass}{m O{} D(){} m}{%
+\LWR at traceinfo{LWR at subhtmlelementclass !#1!#2!#3!#4!}%
 \ifblank{#2}%
 {% empty style
     \LWR at htmltag{%
         #1%
-        \ifblank{#3}{}{ class=\textquotedbl#3\textquotedbl\ }% spaces
+        \ifblank{#3}{}{ role=\textquotedbl#3\textquotedbl}% spaces
+        \ifblank{#4}{}{ class=\textquotedbl#4\textquotedbl}% spaces
     }%
 }%
 {% non-empty style
     \LWR at htmltag{%
         #1\LWR at indentHTML%
-        \ifblank{#3}{}{class=\textquotedbl#3\textquotedbl\LWR at indentHTML}%
+        \ifblank{#3}{}{role=\textquotedbl#3\textquotedbl\LWR at indentHTML}%
+        \ifblank{#4}{}{class=\textquotedbl#4\textquotedbl\LWR at indentHTML}%
         style=\textquotedbl#2\textquotedbl\LWR at orignewline%
     }%
 }%
@@ -6263,28 +6340,32 @@
 \LWR at traceinfo{LWR at subhtmlelementclass done}%
 }
 
-\NewDocumentCommand{\LWR at htmlelementclass}{m o m}{%
-\LWR at stoppars%
-\LWR at forceemptyline%
-\LWR at subhtmlelementclass{#1}[#2]{#3}%
-\LWR at startpars%
+\NewDocumentCommand{\LWR at htmlelementclass}{m o D(){} m}{%
+    \LWR at stoppars%
+    \LWR at forceemptyline%
+    \ifblank{#3}%
+        {\LWR at subhtmlelementclass{#1}[#2]{#4}}%
+        {\LWR at subhtmlelementclass{#1}[#2](#3){#4}}%
+    \LWR at startpars%
 }
 
 \newcommand*{\LWR at htmlelementclassend}[2]{%
-\LWR at stoppars%
-\LWR at htmltag{/#1}%
-\ifbool{HTMLDebugComments}{%
-    \LWR at htmlcomment{End of #1 ``#2''}%
-}{}%
-\LWR at startpars%
+    \LWR at stoppars%
+    \LWR at htmltag{/#1}%
+    \ifbool{HTMLDebugComments}{%
+        \LWR at htmlcomment{End of #1 ``#2''}%
+    }{}%
+    \LWR at startpars%
 }
 
-\NewDocumentCommand{\LWR at htmldivclass}{o m}{%
-\LWR at htmlelementclass{div}[#1]{#2}%
+\NewDocumentCommand{\LWR at htmldivclass}{o D(){} m}{%
+    \ifblank{#2}
+        {\LWR at htmlelementclass{div}[#1]{#3}}%
+        {\LWR at htmlelementclass{div}[#1](#2){#3}}%
 }
 
 \newcommand*{\LWR at htmldivclassend}[1]{%
-\LWR at htmlelementclassend{div}{#1}%
+    \LWR at htmlelementclassend{div}{#1}%
 }
 
 
@@ -6313,15 +6394,15 @@
 
 
 \begin{warpprint}
-\NewDocumentEnvironment{BlockClass}{o m}{}{}%
+\NewDocumentEnvironment{BlockClass}{o D(){} m}{}{}
 \end{warpprint}
 \begin{warpHTML}
 
-\NewDocumentEnvironment{LWR at print@BlockClass}{o m}{}{}%
+\NewDocumentEnvironment{LWR at print@BlockClass}{o D(){} m}{}{}%
 
-\NewDocumentEnvironment{LWR at HTML@BlockClass}{o m}%
-    {\LWR at htmldivclass[#1]{#2}}
-    {\LWR at htmldivclassend{#2}}
+\NewDocumentEnvironment{LWR at HTML@BlockClass}{o D(){} m}%
+    {\LWR at htmldivclass[#1](#2){#3}}%
+    {\LWR at htmldivclassend{#3}}
 
 \LWR at formattedenv{BlockClass}
 \end{warpHTML}
@@ -6343,11 +6424,15 @@
 \NewDocumentCommand{\LWR at print@InlineClass}{D{(}{)}{} o m +m}{#4}%
 
 \NewDocumentCommand{\LWR at HTML@InlineClass}{D{(}{)}{} o m +m}{%
+\LWR at traceinfo{LWR at HTML@InlineClass #3}%
 \ifbool{FormatWP}{%
+    \LWR at traceinfo{LWR at HTML@InlineClass: FormatWP}%
     \LWR at htmlspanclass[#1]{#3}{#4}%
 }{%
+    \LWR at traceinfo{LWR at HTML@InlineClass: not FormatWP}%
     \LWR at htmlspanclass[#2]{#3}{#4}%
 }%
+\LWR at traceinfo{LWR at HTML@InlineClass: done}%
 }
 
 \LWR at formatted{InlineClass}
@@ -6354,11 +6439,12 @@
 \end{warpHTML}
 
 \begin{warpprint}
-\NewDocumentEnvironment{LWR at BlockClassWP}{m m m}{}{}%
+\NewDocumentEnvironment{LWR at BlockClassWP}{m m D(){} m}{}{}
 \end{warpprint}
 \begin{warpHTML}
-\NewDocumentEnvironment{LWR at print@LWR at BlockClassWP}{m m m}{}{}%
-\NewDocumentEnvironment{LWR at HTML@LWR at BlockClassWP}{m m m}%
+\NewDocumentEnvironment{LWR at print@LWR at BlockClassWP}{m m D(){} m}{}{}%
+
+\NewDocumentEnvironment{LWR at HTML@LWR at BlockClassWP}{m m D(){} m}%
 {%
 \LWR at stoppars%
 \ifbool{FormatWP}%
@@ -6365,22 +6451,24 @@
 {%
     \addtocounter{LWR at thisautoidWP}{1}%
     \LWR at htmltag{%
-        div class=\textquotedbl#3\textquotedbl\ % space
+        div class=\textquotedbl#4\textquotedbl\ % space
         id=\textquotedbl%
             \LWR at print@mbox{autoidWP-\arabic{LWR at thisautoidWP}}%
         \textquotedbl%
+        \ifblank{#3}{}{ role=\textquotedbl#3\textquotedbl}%
         \ifblank{#1}{}{ style=\textquotedbl#1\textquotedbl}%
     }%
 }% FormatWP
 {% not FormatWP
     \LWR at htmltag{%
-        div class=\textquotedbl#3\textquotedbl%
+        div class=\textquotedbl#4\textquotedbl%
+        \ifblank{#3}{}{ role=\textquotedbl#3\textquotedbl}%
         \ifblank{#2}{}{ style=\textquotedbl#2\textquotedbl}%
     }%
 }% not FormatWP
 \LWR at startpars%
 }
-{\LWR at htmldivclassend{#3}}
+{\LWR at htmldivclassend{#4}}
 
 \LWR at formattedenv{LWR at BlockClassWP}
 \end{warpHTML}
@@ -6672,6 +6760,9 @@
 }
 \long\def\LWR@@footnotetext#1#2{%
 \LWR at traceinfo{LWR at footnotetext}%
+\LWR at newautopagelabel{page}%
+\begingroup%
+\let\LWR at newautopagelabel\LWR at null@newautopagelabel%
 \global\setbox\csname #2\endcsname=\vbox{%
     \unvbox\csname #2\endcsname%
     \protected at edef\@currentlabel{%
@@ -6698,10 +6789,11 @@
         }%
     \color at endgroup%
 }% vbox
+\endgroup%
 \LWR at ensuredoingapar%
 }%
 
-\long\def\LWR at footnotetext#1{\LWR@@footnotetext{#1}{LWR at footnotebox}}
+\long\def\LWR at footnotetext#1{\LWR@@footnotetext{#1}{LWR at footnotebox}}%
 \LetLtxMacro\@footnotetext\LWR at footnotetext
 \newbox\LWR at mpfootnotes
 \long\def\@mpfootnotetext#1{%
@@ -6741,7 +6833,8 @@
 \newcommand*{\LWR@@printpendingfootnotes}[1]{%
 \expandafter\ifvoid\csname LWR@#1box\endcsname\else
     \LWR at forcenewpage
-    \begin{BlockClass}{footnotes}
+    \begin{BlockClass}(note){footnotes}%
+    \LWR at newautopagelabel{page}%
     \null
     \unvbox\csuse{LWR@#1box}
     \setbox\csuse{LWR@#1box}=\vbox{}
@@ -6770,7 +6863,7 @@
 \newcommand*{\LWR at printpendingmpfootnotes}{%
 \ifvoid\LWR at mpfootnotes\else
     \LWR at forcenewpage
-    \begin{BlockClass}{footnotes}
+    \begin{BlockClass}(note){footnotes}%
     \null
     \unvbox\LWR at mpfootnotes
     \setbox\LWR at mpfootnotes=\vbox{}
@@ -6785,12 +6878,12 @@
 \renewcommand{\marginpar}[2][]{%
 \ifbool{FormatWP}%
 {%
-\begin{LWR at BlockClassWP}{width:2in; float:right; margin:10pt}{}{marginblock}
+\begin{LWR at BlockClassWP}{width:2in; float:right; margin:10pt}{}(note){marginblock}%
 #2
-\end{LWR at BlockClassWP}
+\end{LWR at BlockClassWP}%
 }%
 {%
-    \LWR at htmlspanclass{marginpar}{#2}%
+    \LWR at htmlspanclass(note){marginpar}{#2}%
 }%
 }
 \newcommand{\marginparBlock}[2][]{%
@@ -6797,11 +6890,11 @@
 \LWR at stoppars%
 \ifbool{FormatWP}%
 {%
-    \begin{LWR at BlockClassWP}{width:2in; float:right; margin:10pt}{}{marginblock}
+    \begin{LWR at BlockClassWP}{width:2in; float:right; margin:10pt}{}(note){marginblock}%
     #2
     \end{LWR at BlockClassWP}
 }{%
-    \begin{BlockClass}[width:2in; float:right; margin:10pt]{marginparblock}
+    \begin{BlockClass}[width:2in; float:right; margin:10pt](note){marginparblock}%
     #2
     \end{BlockClass}
 }%
@@ -6815,7 +6908,27 @@
 \LetLtxMacro\marginparBlock\marginpar
 \end{warpprint}
 
+\newcounter{LWR at currentautosecpage}
+\setcounter{LWR at currentautosecpage}{1}
+\newcounter{LWR at currentautosecfloatpage}
+\setcounter{LWR at currentautosecfloatpage}{1}
+\newcounter{LWR at previousautopagelabel}
+\setcounter{LWR at previousautopagelabel}{-1}
+\newcommand*{\LWR at newautopagelabel}[1]{%
+\ifnumequal{\value{LWR at previousautopagelabel}}{\value{page}}%
+    {}%
+    {%
+        \label{\BaseJobname-autopage-\csuse{the#1}}%
+        \ifnumequal{\value{#1}}{\value{page}}%
+            {}%
+            {\label{\BaseJobname-autopage-\csuse{thepage}}}%
+        \setcounter{LWR at previousautopagelabel}{\value{page}}%
+    }%
+}
 
+\newcommand*{\LWR at null@newautopagelabel}[1]{}
+
+
 \begin{warpall}
 
 \newcounter{FileDepth}
@@ -6992,19 +7105,7 @@
 \LWR at traceinfo{LWR at filenamenoblanks: result is \LWR at thisfilename}%
 }
 
-\newcounter{LWR at previousautopagelabel}
-\setcounter{LWR at previousautopagelabel}{-1}
 
-\newcommand*{\LWR at newautopagelabel}[1]{%
-\ifnumequal{\value{LWR at previousautopagelabel}}{\value{page}}%
-{}% no action if this autopage label has already been defined
-{%
-    \label{\BaseJobname-autopage-\arabic{#1}}%
-    \setcounter{LWR at previousautopagelabel}{\value{page}}
-}%
-}
-
-
 \bgroup
 \catcode`!=3 \catcode`?=3
 
@@ -7235,7 +7336,7 @@
 \newcommand*{\LWR at newhtmlfile}[1]{
 \LWR at traceinfo{LWR at newhtmlfile}
 \LWR at htmlelementclassend{section}{textbody}
-\LWR at htmlelementclassend{div}{bodycontainer}
+\LWR at htmlelementclassend{main}{bodycontainer}
 \LWR at htmlelementclassend{div}{bodyandsidetoc}
 
 \LWR at printpendingfootnotes
@@ -7291,8 +7392,8 @@
 
 \LWR at filestart[#1]
 
-\setcounter{LWR at latestautopage}{\value{page}}%
-\LWR at newautopagelabel{LWR at latestautopage}%
+\setcounter{LWR at currentautosecfloatpage}{\value{page}}%
+\LWR at newautopagelabel{LWR at currentautosecfloatpage}%
 \ifthenelse{\boolean{FormatEPUB}\OR\boolean{FormatWP}}
     {}
     {\LWR at topnavigation}
@@ -7314,7 +7415,7 @@
     {}
     {\LWR at sidetoc}
 
-\LWR at htmlelementclass{div}{bodycontainer}
+\LWR at htmlelementclass{main}{bodycontainer}
 \LWR at htmlelementclass{section}{textbody}
 \boolfalse{LWR at setseqfilelabel}
 \ifthenelse{\boolean{FormatEPUB}\OR\boolean{FormatWP}}%
@@ -7394,8 +7495,6 @@
 \newcommand*{\LWR at printchaptername}{%
     \ifdefvoid{\chaptername}{}{\chaptername~}%
 }
-\newcounter{LWR at currentautosec}
-\setcounter{LWR at currentautosec}{1}
 \DeclareDocumentCommand{\LWR at section}{m m m m}{%
 \IfValueTF{#2}%
     {\LWR at traceinfo{LWR at section: starting #4 #2}}%
@@ -7462,7 +7561,7 @@
     {}%
 \LWR at traceinfo{LWR at section: about to LWR at createautosec}%
 \LWR at createautosec{\@nameuse{LWR at tag#4}}%
-\setcounter{LWR at currentautosec}{\value{page}}%
+\setcounter{LWR at currentautosecpage}{\value{page}}%
 \IfBooleanTF{#1}%
 {%
     \LWR at traceinfo{LWR at section: starred}%
@@ -7546,8 +7645,8 @@
 \LWR at htmltag{\@nameuse{LWR at tag#4end}}%
 \LWR at orignewline%
 \LWR at traceinfo{LWR at section: about to create the LaTeX label}%
-\setcounter{LWR at latestautopage}{\value{page}}%
-\LWR at newautopagelabel{LWR at currentautosec}\LWR at orignewline%
+\setcounter{LWR at currentautosecfloatpage}{\value{page}}%
+\LWR at newautopagelabel{LWR at currentautosecpage}\LWR at orignewline%
 \ifbool{LWR at setseqfilelabel}{}{%
     \label{\BaseJobname-autofile-\arabic{LWR at htmlseqfilenumber}}%
     \booltrue{LWR at setseqfilelabel}%
@@ -7834,7 +7933,7 @@
     \LWR at htmltag{/header}\LWR at orignewline
 }%
 \LWR at htmlelementclass{div}{bodywithoutsidetoc}
-\LWR at htmlelementclass{div}{bodycontainer}
+\LWR at htmlelementclass{main}{bodycontainer}
 \LWR at traceinfo{LWR at lwarpStart: Generating textbody.}
 \LWR at htmlelementclass{section}{textbody}
 \booltrue{LWR at setseqfilelabel}%
@@ -7858,8 +7957,8 @@
     \typeout{Done.}
     \typeout{---}
 }{}
-\setcounter{LWR at latestautopage}{\value{page}}%
-\LWR at newautopagelabel{LWR at currentautosec}%
+\setcounter{LWR at currentautosecfloatpage}{\value{page}}%
+\LWR at newautopagelabel{LWR at currentautosecpage}%
 \LWR at traceinfo{LWR at lwarpStart: done}
 }
 \catcode`\$=3% math shift until lwarp starts
@@ -7882,12 +7981,11 @@
 {
 \LWR at stoppars
 \LWR at closeprevious{finished}
-
+\LWR at printpendingfootnotes
 \label{\BaseJobname-autofile-last}
 \LWR at htmlelementclassend{section}{textbody}
-\LWR at htmlelementclassend{div}{bodycontainer}
+\LWR at htmlelementclassend{main}{bodycontainer}
 \LWR at htmlelementclassend{div}{bodyandsidetoc}
-\LWR at printpendingfootnotes
 \ifbool{FormatEPUB}{}{\LWR at createfooter}
 
 \ifthenelse{\boolean{FormatEPUB}\OR\boolean{FormatWP}}
@@ -8072,7 +8170,9 @@
 }% not memoir
 \newcommand*{\LWR at maketitlesetup}{%
 \LWR at setfootnoteseries%
-\def\@makefnmark{\textsuperscript{\thefootnote}}
+\def\@makefnmark{%
+    \textsuperscript{\thefootnote}%
+}
 \long\def\@makefntext##1{%
 \textsuperscript{\@thefnmark}~%
 ##1%
@@ -8373,6 +8473,7 @@
 \begin{warpHTML}
 \renewcommand{\@begintheorem}[2]{%
 \LWR at forcenewpage
+    \LWR at printpendingfootnotes%                   lwarp
 \BlockClass{theoremcontents}
 \trivlist
 \item[\InlineClass{theoremlabel}{#1\ #2\ }]\itshape
@@ -8387,6 +8488,7 @@
 }
 \renewcommand*{\@endtheorem}{%
 \endtrivlist
+    \LWR at printpendingfootnotes%                   lwarp
 \endBlockClass% theoremcontents
 }
 
@@ -8410,7 +8512,7 @@
   \@noparitemfalse
 }
 \def\LWR at HTML@item[#1]{%
-\LWR at traceinfo{@item}
+\LWR at traceinfo{@item}%
   \if at noparitem
     \@donoparitem
   \else
@@ -8534,10 +8636,41 @@
 }
 
 \newcommand*{\LWR at descriptionstart}{%
-\renewcommand*{\LWR at printcloselist}{\LWR at printclosedescription}
-\renewcommand*{\LWR at printopenlist}{dl}
-\let\item\LWR at descitem%
-\LWR at nulllistfills%
+    \renewcommand*{\LWR at printcloselist}{\LWR at printclosedescription}
+    \renewcommand*{\LWR at printopenlist}{dl}
+    \let\item\LWR at descitem%
+    \LWR at nulllistfills%
+    \renewcommand{\footnote}[2][]{%
+        \ifblank{##1}%
+        {%
+            \stepcounter\@mpfn
+            \protected at xdef\@thefnmark{\thempfn}%
+            \@footnotemark%\@footnotetext
+        }%
+        {%
+            \begingroup
+            \csname c@\@mpfn\endcsname ##1\relax
+            \unrestored at protected@xdef\@thefnmark{\thempfn}%
+            \endgroup
+            \@footnotemark%\@footnotetext
+        }%
+    }%
+    %
+    \renewcommand{\footnotemark}[1][]{%
+        \ifblank{##1}%
+        {%
+            \stepcounter{footnote}%
+            \protected at xdef\@thefnmark{\thefootnote}%
+            \@footnotemark%
+        }%
+        {%
+            \begingroup%
+            \c at footnote ##1\relax%
+            \unrestored at protected@xdef\@thefnmark{\thefootnote}%
+            \endgroup%
+            \@footnotemark%
+        }%
+    }%
 }
 
 
@@ -8887,7 +9020,8 @@
         \LWR at setexparray{LWR at colatspec}%
             {\arabic{LWR at tabletotalLaTeXcols}}%
             {\expandafter\@firstofone\LWR at colparameter}%
-        \LWR at traceinfo{at \arabic{LWR at tabletotalLaTeXcols}: %
+        \LWR at traceinfo{at \arabic{LWR at tabletotalLaTeXcols}%
+        : % space
         \LWR at getexparray{LWR at colatspec}{\arabic{LWR at tabletotalLaTeXcols}}}%
     }%
     \let\LWR at colparameter\relax%
@@ -10373,16 +10507,19 @@
    \expandafter#2#1%
   \fi}
 \newcommand*{\LWR at nameref}[1]{%
-    \expandafter\LWR at setref\csname r@#1 at lwarp\endcsname\LWR at firstoffour{#1}%
+    \expandafter\LWR at setref\csname r@#1 at lwarp\endcsname\LWR at firstoffive{#1}%
 }
+\newcommand*{\LWR at currentautosecpageref}[1]{%
+    \expandafter\LWR at setref\csname r@#1 at lwarp\endcsname\LWR at secondoffive{#1}%
+}
 \newcommand*{\LWR at htmlfileref}[1]{%
-    \expandafter\LWR at setref\csname r@#1 at lwarp\endcsname\LWR at secondoffour{#1}%
+    \expandafter\LWR at setref\csname r@#1 at lwarp\endcsname\LWR at thirdoffive{#1}%
 }
 \newcommand*{\LWR at lateximagedepthref}[1]{%
-    \expandafter\LWR at setref\csname r@#1 at lwarp\endcsname\LWR at thirdoffour{#1}%
+    \expandafter\LWR at setref\csname r@#1 at lwarp\endcsname\LWR at fourthoffive{#1}%
 }
 \newcommand*{\LWR at lateximagenumberref}[1]{%
-    \expandafter\LWR at setref\csname r@#1 at lwarp\endcsname\LWR at fourthoffour{#1}%
+    \expandafter\LWR at setref\csname r@#1 at lwarp\endcsname\LWR at fifthoffive{#1}%
 }
 \newcommand*{\LWR at write@lwarplabel}[1]{%
     \LWR at traceinfo{LWR at write@lwarplabel !#1!}%
@@ -10392,6 +10529,7 @@
             {%
                 \string\newlabel{#1 at lwarp}{%
                     {\@currentlabelname}%
+                    {\theLWR at currentautosecpage}%
                     {%
                         \ifbool{FileSectionNames}%
                             {\LWR at thisfilename}%
@@ -10454,7 +10592,7 @@
         }% not inside HTML math comment
     }% not lateximage
 }
-\NewDocumentCommand{\LWR at new@label}{m}{%
+\newcommand*{\LWR at new@label}[1]{%
     \LWR at traceinfo{LWR at new@label: starting}%
     \LWR at traceinfo{LWR at new@label: !#1!}%
     \LWR at orig@label{#1}%
@@ -10530,6 +10668,16 @@
 }
 
 \LWR at formatted{ref}
+\NewDocumentCommand{\LWR at refwithsection}{s m}{%
+    \LWR at traceinfo{LWR at refwithsection !#2!}%
+    \IfBooleanTF{#1}%
+        {\LWR at print@ref{\BaseJobname-autopage-\LWR at currentautosecpageref{#2}}}%
+        {%
+            \LWR at startref{#2}%
+            \LWR at print@ref{\BaseJobname-autopage-\LWR at currentautosecpageref{#2}}%
+            \LWR at htmltag{/a}%
+        }%
+}
 \CustomizeMathJax{\let\LWRref\ref}
 \CustomizeMathJax{\renewcommand{\ref}{\ifstar\LWRref\LWRref}}
 \newcommand*{\pagerefPageFor}{see }
@@ -10555,7 +10703,7 @@
 
 
 \AtBeginDocument{
-    \def\@currentHref{\BaseJobname-autopage-\theLWR at currentautosec}
+    \def\@currentHref{\BaseJobname-autopage-\theLWR at previousautopagelabel}%
 }
 
 \newcommand*{\LWR at linkcatcodes}{%
@@ -10644,12 +10792,16 @@
     \LWR at urlb%
 }
 
-\newcommand*{\LWR at subinlineimage}[5]{%
+\newcommand*{\LWR at subinlineimage}[6]{%
+    \ifblank{#6}%
+        {\renewcommand*{\LWR at tempone}{}}
+        {\renewcommand*{\LWR at tempone}{role="#6"\LWR at indentHTML}}
     \ifblank{#1}%
     {%
         \LWR at htmltag{img \LWR at indentHTML
             src=\textquotedbl#3.#4\textquotedbl \LWR at indentHTML
             alt=\textquotedbl#3\textquotedbl \LWR at indentHTML
+            \LWR at tempone
             style=\textquotedbl#5\textquotedbl \LWR at indentHTML
             class=\textquotedbl#2\textquotedbl \LWR at orignewline
         }%
@@ -10658,6 +10810,7 @@
         \LWR at htmltag{img \LWR at indentHTML
             src=\textquotedbl#3.#4\textquotedbl \LWR at indentHTML
             alt=\textquotedbl#1\textquotedbl \LWR at indentHTML
+            \LWR at tempone
             style=\textquotedbl#5\textquotedbl \LWR at indentHTML
             class=\textquotedbl#2\textquotedbl \LWR at orignewline
         }%
@@ -10831,9 +10984,6 @@
     \setcounter{LWR at nextautoid}{#2}%
 }
 
-\newcounter{LWR at latestautopage}
-\setcounter{LWR at latestautopage}{1}
-
 \newenvironment*{LWR at figcaption}
     {%
         \ifbool{FormatWP}{%
@@ -10909,7 +11059,7 @@
         \ifcsvoid{ext@#2}{\csdef{ext@#2}{#1}}{}%
         \addtocontents{\@nameuse{ext@#2}}{%
             \protect\LWRsetnextfloat%
-            {\arabic{LWR at latestautopage}}%
+            {\arabic{LWR at currentautosecfloatpage}}%
             {\arabic{LWR at thisautoid}}%
         }%
     }% not TOC
@@ -11637,8 +11787,8 @@
     \renewcommand{\textsubscript}[1]{##1}%
     \renewcommand{\underline}[1]{##1}%
     \RenewDocumentCommand{\hspace}{s m}{}%
-    \RenewDocumentCommand{\LWR at htmlspanclass}{o m +m}{##3}%
-    \DeclareExpandableDocumentCommand{\InlineClass}{D{(}{)}{} o m +m}{##4}%
+    \RenewDocumentCommand{\LWR at htmlspanclass}{o D(){} m +m}{{##4}}%
+    \DeclareExpandableDocumentCommand{\InlineClass}{D{(}{)}{} o m +m}{{##4}}%
     \def\(##1\){}%
     \def\[##1\]{}%
     \RenewDocumentCommand{\LWR at subsingledollar}{s m m m}{}%
@@ -11780,7 +11930,7 @@
 \newcommand*{\LWR at singledollarmeasure}[1]{%
     \begingroup%
     \LWR at restoreorigformatting%
-    \RenewDocumentEnvironment{lateximage}{s o s o o}{}{}% inside group
+    \RenewDocumentEnvironment{lateximage}{s o s o o d()}{}{}% inside group
     \LWR at print@normalsize%
     \LWR at setcurrentfont%
     \global\advance\c at LWR@lateximagedepth 1\relax%
@@ -11869,6 +12019,7 @@
             [\MathImageAltText]% alt tag
             []% no add'l hashing
             [\LWR at singledollarstyle \LWR at singledollardepthstyle]% CSS
+            (math)% ARIA
     }{% not dynamic math
         \LWR at traceinfo{subsingledollar: static}%
         \IfValueTF{#1}{% #1 True
@@ -11889,11 +12040,13 @@
                     FB\LWR at tempone% xfakebold
                 ]%
                 [\LWR at singledollarstyle \LWR at singledollardepthstyle]% CSS
+                (math)% ARIA
         }{% #1 False
             \begin{lateximage}% no hashing
                 [#2]% alt
                 []% no add'l hashing
                 [\LWR at singledollarstyle \LWR at singledollardepthstyle]% CSS
+                (math)% ARIA
         }%
     }% not dynamic math
     \LWR at addbaselinemarker%
@@ -11961,7 +12114,6 @@
 \LetLtxMacro\LWR at origcloseparen\)
 \LetLtxMacro\LWR at origopenbracket\[
 \LetLtxMacro\LWR at origclosebracket\]
-
 \begingroup
 \catcode`\$=\active%
 \protected\gdef${\@ifnextchar$\LWR at doubledollar\LWR at singledollar}%
@@ -11972,9 +12124,18 @@
 \ifboolexpr{bool{mathjax} or ( bool{FormatWP} and bool{WPMarkMath} ) }%
 {
 
-    \textbackslash[%
-    {\LWR at print@ttfamily\LWR at HTMLsanitize{#1}}%
-    \textbackslash]
+    \IfSubStr{\detokenize\expandafter{#1}}{\detokenize{note}}{%
+        \LWR at hidelatexequation{math}{#1}%
+        \InlineClass{hidden}{\LWR at syncnotenumbers}%
+        \textbackslash[%
+        {\LWR at print@ttfamily\LWR at HTMLsanitize{#1}}%
+        \textbackslash]
+        \InlineClass{hidden}{\LWR at syncnotenames}%
+    }{%
+        \textbackslash[%
+        {\LWR at print@ttfamily\LWR at HTMLsanitize{#1}}%
+        \textbackslash]
+    }%
 
 }% mathjax
 {% not mathjax
@@ -11988,6 +12149,7 @@
         \textbackslash{]}%
     ]%
     *% do not add open/closing braces
+    (math)% ARIA
     \LWR at applyxfakebold%
     \LWR at origdollar\LWR at origdollar#1\LWR at origdollar\LWR at origdollar%
     \end{lateximage}%
@@ -12060,11 +12222,13 @@
 
 \let\LWR at orig@math\math
 \let\LWR at orig@endmath\endmath
+
 \let\LWR at orig@displaymath\displaymath
 \let\LWR at orig@enddisplaymath\enddisplaymath
 
 \let\math\relax
 \let\endmath\relax
+
 \let\displaymath\relax
 \let\enddisplaymath\relax
 
@@ -12078,8 +12242,7 @@
     \begin{BlockClass}{displaymath}%
     \LWR at newautoidanchor%
     \booltrue{LWR at indisplaymathimage}%
-    \begin{lateximage}%
-    [\MathImageAltText]%
+    \begin{lateximage}[\MathImageAltText](math)% [alt](ARIA)
     \LWR at origdollar\LWR at origdollar%
 }
 {%
@@ -12092,11 +12255,11 @@
     \begin{BlockClass}{displaymathnumbered}%
     \LWR at newautoidanchor%
     \booltrue{LWR at indisplaymathimage}%
-    \begin{lateximage}[\MathImageAltText]%
-    \LWR at origequation%
+    \begin{lateximage}[\MathImageAltText](math)% [alt](ARIA)
+    \LWR at orig@equation%
 }
 {%
-    \LWR at origendequation%
+    \LWR at orig@endequation%
     \end{lateximage}%
     \end{BlockClass}%
 }
@@ -12155,11 +12318,11 @@
     \LWR at htmlopencomment
 
     \begingroup
-    \@nameuse{LWR at orig#1}
+    \@nameuse{LWR at orig@#1}
     \LWR at restoreorigformatting
     \booltrue{LWR at insidemathcomment}
     #2
-    \@nameuse{LWR at origend#1}
+    \@nameuse{LWR at orig@end#1}
     \endgroup
 
     \LWR at htmlclosecomment
@@ -12181,10 +12344,10 @@
 }
 
 \AtBeginDocument{
-    \let\LWR at origequation\equation
-    \let\LWR at origendequation\endequation
-    \csletcs{LWR at origequation*}{equation*}
-    \csletcs{LWR at origendequation*}{endequation*}
+    \let\LWR at orig@equation\equation
+    \let\LWR at orig@endequation\endequation
+    \csletcs{LWR at orig@equation*}{equation*}
+    \csletcs{LWR at orig@endequation*}{endequation*}
 }
 \newcommand*{\LWR at doequation}[2]{%
 
@@ -12214,11 +12377,11 @@
             \textbackslash{begin\{#2\}} % extra space
             \LWR at HTMLsanitizeexpand{\detokenize\expandafter{#1}} % extra space
             \textbackslash{end\{#2\}}%
-        ]*% alt tag
+        ]*(math)% alt tag, ARIA
         \LWR at applyxfakebold%
-        \@nameuse{LWR at orig#2}%
+        \@nameuse{LWR at orig@#2}%
         #1% contents collected by \collect at body
-        \@nameuse{LWR at origend#2}%
+        \@nameuse{LWR at orig@end#2}%
         \end{lateximage}%
         \end{BlockClass}%
     }% not mathjax
@@ -12249,7 +12412,7 @@
 
 \newcommand*{\LWR at synconenotename}[2]{%
     \textbackslash(
-    \textbackslash{}def\textbackslash{}#1\{#2\}
+    \textbackslash{}def\textbackslash{}#1name\{#2\}
     \textbackslash)
 }
 
@@ -12374,7 +12537,7 @@
             \LWR at newautoidanchor%
             \booltrue{LWR at indisplaymathimage}%
             \begin{lateximage}[(\LWR at startingequationtag\textendash\LWR at equationtag)%
-                \LWR at addmathjax{eqnarray}{\BODY}]*%
+                \LWR at addmathjax{eqnarray}{\BODY}]*(math)%
             \LWR at applyxfakebold%
             \LWR at origeqnarray%
             \BODY%
@@ -12386,7 +12549,7 @@
             \begin{BlockClass}{displaymath}%
             \LWR at newautoidanchor%
             \booltrue{LWR at indisplaymathimage}%
-            \begin{lateximage}[\LWR at addmathjax{eqnarray*}{\BODY}]*%
+            \begin{lateximage}[\LWR at addmathjax{eqnarray*}{\BODY}]*(math)%
             \LWR at applyxfakebold%
             \def\@eqncr{\nonumber\@seqncr}
             \csuse{LWR at origeqnarray}%
@@ -12484,7 +12647,7 @@
 }
 
 
-\newcommand{\LWR at lateximage@oneimageb}[3]{%
+\newcommand{\LWR at lateximage@oneimageb}[4]{%
     \LWR at subinlineimage{#1}{lateximage}%
     {%
         \LWR at print@mbox{%
@@ -12491,28 +12654,28 @@
             \LWR at ImagesDirectory\OSPathSymbol%
             #2%
         }%
-    }{svg}{#3}%
+    }{svg}{#3}{#4}%
 }
 
-\newcommand{\LWR at lateximage@oneimage}[4]{%
+\newcommand{\LWR at lateximage@oneimage}[5]{%
     \ifdefvoid{\LWR at ThisAltText}{%
         \IfBooleanTF{#4}{%
-            \LWR at lateximage@oneimageb{#1}{#2}{#3}%
+            \LWR at lateximage@oneimageb{#1}{#2}{#3}{#5}%
         }{%
             \LWR at lateximage@oneimageb%
                 {\AltTextOpen#1\AltTextClose}%
-                {#2}{#3}%
+                {#2}{#3}{#5}%
         }%
     }{%
         \LWR at lateximage@oneimageb%
             {\AltTextOpen\LWR at ThisAltText\AltTextClose}%
-            {#2}{#3}%
+            {#2}{#3}{#5}%
     }%
 }
 
 \catcode`\$=\active%
 
-\NewDocumentEnvironment{lateximage}{s O{\ImageAltText} s O{} O{}}
+\NewDocumentEnvironment{lateximage}{s O{\ImageAltText} s O{} O{} D(){}}%
 {%
 \LWR at traceinfo{lateximage: starting on \jobname.pdf page \arabic{page}}%
 \LWR at traceinfo{lateximage: entering depth is \arabic{LWR at lateximagedepth}}%
@@ -12602,10 +12765,10 @@
     \ifbool{LWR at indisplaymathimage}{}{% not in display math
         \LetLtxMacro\[\LWR at origopenbracket%
         \LetLtxMacro\]\LWR at origclosebracket%
-        \let\equation\LWR at origequation%
-        \let\endequation\LWR at origendequation%
-        \csletcs{equation*}{LWR at origequation*}%
-        \csletcs{endequation*}{LWR at origendequation*}%
+        \let\equation\LWR at orig@equation%
+        \let\endequation\LWR at orig@endequation%
+        \csletcs{equation*}{LWR at orig@equation*}%
+        \csletcs{endequation*}{LWR at orig@endequation*}%
     }% not in display math
     \LetLtxMacro\LWR at newsingledollar$%
     \LetLtxMacro\LWR at newsingledollar$% syntax highlighting
@@ -12629,10 +12792,10 @@
     \LWR at traceinfo{lateximage: The page after the image is \arabic{page}}%
     \IfBooleanTF{#1}% starred
     {% hash
-        \LWR at lateximage@oneimage{#2}{\LWR at hashedname}{#5}{#3}%
+        \LWR at lateximage@oneimage{#2}{\LWR at hashedname}{#5}{#3}{#6}%
     }% hash
     {% no hash
-        \LWR at lateximage@oneimage{#2}{\LWR at ImagesName\theLWR at externalfilecnt}{#5}{#3}%
+        \LWR at lateximage@oneimage{#2}{\LWR at ImagesName\theLWR at externalfilecnt}{#5}{#3}{#6}%
     }% no hash
     \LWR at ensuredoingapar%
     \LWR at htmltag{/span}%
@@ -12650,7 +12813,7 @@
 
 \begin{warpprint}
 
-\NewDocumentEnvironment{lateximage}{s o s o o}
+\NewDocumentEnvironment{lateximage}{s o s o o d()}
     {\begin{varwidth}[b]{\linewidth}}
     {\end{varwidth}}
 
@@ -12660,11 +12823,11 @@
 \begin{warpHTML}
 
 \newenvironment*{LWR at HTML@center}
-{
-    \LWR at forcenewpage
-    \ifbool{FormatWP}
-        {\BlockClass[\LWR at print@mbox{text-align:center}]{center}}
-        {\BlockClass{center}}
+{%
+    \LWR at forcenewpage%
+    \ifbool{FormatWP}%
+        {\BlockClass[\LWR at print@mbox{text-align:center}]{center}}%
+        {\BlockClass{center}}%
 }
 {\endBlockClass}
 
@@ -12671,11 +12834,11 @@
 \LWR at formattedenv{center}
 
 \newenvironment*{LWR at HTML@flushright}
-{
-    \LWR at forcenewpage
-    \ifbool{FormatWP}
-        {\BlockClass[\LWR at print@mbox{text-align:right}]{flushright}}
-        {\BlockClass{flushright}}
+{%
+    \LWR at forcenewpage%
+    \ifbool{FormatWP}%
+        {\BlockClass[\LWR at print@mbox{text-align:right}]{flushright}}%
+        {\BlockClass{flushright}}%
 }
 {\endBlockClass}
 
@@ -12682,11 +12845,11 @@
 \LWR at formattedenv{flushright}
 
 \newenvironment*{LWR at HTML@flushleft}
-{
-    \LWR at forcenewpage
-    \ifbool{FormatWP}
-        {\BlockClass[\LWR at print@mbox{text-align:left}]{flushleft}}
-        {\BlockClass{flushleft}}
+{%
+    \LWR at forcenewpage%
+    \ifbool{FormatWP}%
+        {\BlockClass[\LWR at print@mbox{text-align:left}]{flushleft}}%
+        {\BlockClass{flushleft}}%
 }
 {\endBlockClass}
 
@@ -12764,7 +12927,7 @@
 
 \LWR at PreloadedPackage{ulem}
 
-\LWR at PreloadedPackage{xetexko-vertical}
+\LWR at PreloadedPackage{xetexko}
 
 \LWR at PreloadedPackage{geometry}
 
@@ -13042,6 +13205,7 @@
 }{}%
 \setlength{\linewidth}{\LWR at minipagewidth}%
 \LWR at print@raggedright%
+    \LWR at newautopagelabel{page}%
 \def\@mpfn{mpfootnote}%
 \def\thempfn{\thempfootnote}\c at mpfootnote\z@%
 \let\@footnotetext\@mpfootnotetext%
@@ -13090,7 +13254,7 @@
 }
 
 \LWR at formatted{parbox}
-\newcommand*{\LWR at HTML@mbox}[1]{#1}
+\newcommand*{\LWR at HTML@mbox}[1]{{#1}}
 
 \LWR at formatted{mbox}
 \NewDocumentCommand{\LWR@@makebox at paren}{m m}{%
@@ -13171,6 +13335,7 @@
 
 \newcommand*{\LWR at fboxstyle}{%
 \LWR at findcurrenttextcolor%
+\LWR at traceinfo{LWR at fboxstyle B}%
 border:\LWR at printlength{\LWR at atleastonept} solid \LWR at origpound\LWR at tempcolor ; %
 padding:\LWR at printlength{\fboxsep} ; %
 color:\LWR at origpound\LWR at tempcolor%
@@ -13178,10 +13343,12 @@
 \newcommand{\LWR at HTML@fbox}[1]{%
 \LWR at traceinfo{HTML fbox}%
 \LWR at forceminwidth{\fboxrule}%
+\LWR at traceinfo{HTML fbox B}%
 \InlineClass[%
     \LWR at print@mbox{display:inline-block} ; %
     \LWR at fboxstyle%
 ]{fbox}{#1}%
+\LWR at traceinfo{HTML fbox: done}%
 }
 \AtBeginDocument{\LWR at formatted{fbox}}
 \end{warpHTML}
@@ -13629,7 +13796,7 @@
 \newcommand*{\LWR at tempcolor}{}
 \newcommand*{\LWR at tempcolortwo}{}
 \newcommand*{\LWR at findcurrenttextcolor}{%
-\renewcommand{\LWR at tempcolor}{000000}%
+    \renewcommand{\LWR at tempcolor}{000000}%
 }
 \NewDocumentCommand{\LWR at textcurrentcolor}{m}{%
     \renewcommand*{\LWR at currenttextcolor}{black}%



More information about the tex-live-commits mailing list.