[latex3-commits] [git/LaTeX3-latex3-latex2e] OR-lab: hyperref support with tagging (b617375b)

Frank Mittelbach frank.mittelbach at latex-project.org
Sun Feb 27 11:25:33 CET 2022


Repository : https://github.com/latex3/latex2e
On branch  : OR-lab
Link       : https://github.com/latex3/latex2e/commit/b617375b1986c39272ab2fe11caeb8d41cf3d104

>---------------------------------------------------------------

commit b617375b1986c39272ab2fe11caeb8d41cf3d104
Author: Frank Mittelbach <frank.mittelbach at latex-project.org>
Date:   Sun Feb 27 11:25:33 2022 +0100

    hyperref support with tagging


>---------------------------------------------------------------

b617375b1986c39272ab2fe11caeb8d41cf3d104
 required/latex-lab/config-OR.lua                   |   2 +-
 required/latex-lab/latex-lab-footnotes.dtx         |  93 +++---
 required/latex-lab/testfiles-OR/footmisc-001.lvt   |   2 +
 required/latex-lab/testfiles-OR/footmisc-001.tlg   |  12 +
 required/latex-lab/testfiles-OR/footmisc-002.lvt   |   2 +
 required/latex-lab/testfiles-OR/footmisc-002.tlg   |  72 ++++-
 required/latex-lab/testfiles-OR/footmisc-003.lvt   |   3 +
 required/latex-lab/testfiles-OR/footmisc-003.tlg   | 352 ++++++++++++++++++++-
 .../testfiles-OR/footmisc-009-multiple.tlg         |  39 +++
 .../testfiles-OR/footmisc-010-setspace.tlg         |  48 +++
 ...misc-009-multiple.lvt => footmisc-011-para.lvt} |   6 +-
 .../latex-lab/testfiles-OR/footmisc-011-para.tlg   |  51 +++
 required/latex-lab/testfiles-OR/tagging-001.tlg    |  39 +++
 required/latex-lab/update-OR-all.sh                |   1 +
 14 files changed, 657 insertions(+), 65 deletions(-)

diff --git a/required/latex-lab/config-OR.lua b/required/latex-lab/config-OR.lua
index fa74ce3d..fb68a5ff 100644
--- a/required/latex-lab/config-OR.lua
+++ b/required/latex-lab/config-OR.lua
@@ -5,4 +5,4 @@ checkengines = {"pdftex"}
 checksearch  = true
 testfiledir  = "testfiles-OR"
 
--- checkruns     = 3
+checkruns     = 3
diff --git a/required/latex-lab/latex-lab-footnotes.dtx b/required/latex-lab/latex-lab-footnotes.dtx
index 03cc133d..4ae20724 100644
--- a/required/latex-lab/latex-lab-footnotes.dtx
+++ b/required/latex-lab/latex-lab-footnotes.dtx
@@ -185,6 +185,12 @@
 % ./arabtex/afoot.sty  --- too different (and probably too old)
 
 
+% to survive overwrite by hyperref for now
+
+\let \FN at footnotemark \@footnotemark
+
+\AddToHook{package/hyperref/after}{ \let \@footnotemark \FN at footnotemark }
+
 
 %-------------------------------------
 
@@ -193,7 +199,18 @@
 \NewHook{fntext/after}
 
 
+\def\debug at footnotetext{
+  \ShowCommand\@footnotetext at process
+  \ShowCommand\@footnotetext at processii
+  \ShowCommand\@footnotetext at processiii
+  \LogHook{fntext/before}
+  \LogHook{fntext/begin}
+  \LogHook{fntext/after}
+  \global\let\debug at footnotetext\relax
+  }
+
 \long\def\@footnotetext#1{
+  \debug at footnotetext
 %-------
 % ./linguex/linguex.sty
   \UseHook{fntext/before}
@@ -229,25 +246,27 @@
 % fnpara wants to replace \@makefntext{...} (footmisc probably too ...)
 % needs handling!
 %-------
-      \@makefntext {
+      \@footnotetext at processii       % config point
+        {
 %-------
 % ./resphilosophica/resphilosophica.cls
 %-------
-        \rule\z@\footnotesep
-        \ignorespaces
+          \rule\z@\footnotesep
+          \ignorespaces
 %-------
 % Maybe those better go inside \@makefntext or maybe not:
 % bibarts
 % fnbreak.sty
 %-------
-        #1
+          #1
 %-------
 % bibarts
 % fnbreak.sty
 %-------
-        \@finalstrut\strutbox
-      }
-    \par
+          \@finalstrut\strutbox
+          \@footnotetext at processiii   % config point
+        }
+      \par
     \color at endgroup
   }
 %-------
@@ -256,9 +275,17 @@
 %-------
 }
 
-% default for config point
+% default for config point #1 arg
 \def\@footnotetext at process { \insert\footins }
 
+% default for config point #1 arg
+\def\@footnotetext at processii {  % config point
+      \@makefntext
+}
+
+% default for config point 0 args
+\def\@footnotetext at processiii {  % config point
+}
 
 % to survive overwrite by setspace for now
 
@@ -340,7 +367,7 @@
 %  Tagging
 %-------------------------------------
 
-% hyperref support commented out
+% hyperref support only when loaded (improve)
 
 \newcounter{absfootnote}
 \AddToHook{fnmark}{\stepcounter{absfootnote}}  % too simple (fails with opt args)
@@ -353,7 +380,7 @@
        \exp_args:Nx
        \tag_struct_begin:n{tag=Lbl,ref=fn.\the\c at absfootnote}
        \tag_mc_begin:n{tag=Lbl}
-%   \hyper at linkstart {link}{fn.\the\c at absfootnote}
+       \IfPackageLoadedTF{hyperref}{ \hyper at linkstart {link}{fn.\the\c at absfootnote} }{}
      }
 }
 
@@ -361,7 +388,7 @@
 {
   \cs_if_exist:NT \tag_struct_begin:n
     {
-%   \Hyper at linkend
+      \IfPackageLoadedTF{hyperref}{ \hyper at linkend }{}
       \tag_mc_end:
       \tag_struct_end:
       \tag_mc_begin_pop:n{}
@@ -399,7 +426,7 @@
   \cs_if_exist:NTF \tag_struct_begin:n
     {
       \tag_mc_end_push:
-%    \hypertarget{fn.\the\c at absfootnote}{}
+      \IfPackageLoadedTF{hyperref}{ \hypertarget{fn.\the\c at absfootnote}{} }{}
       \tag_struct_begin:n
           {
             tag=FENote
@@ -722,35 +749,20 @@
 
 
 \ifFN at para
-  \long\def\FN at footnotetext#1{%
-    \insert\footins{%
-      \ifFN at setspace
-        \let\baselinestretch\FN at baselinestretch
-      \fi
-      \reset at font\footnotesize
-      \interlinepenalty\interfootnotelinepenalty
-      \splittopskip\footnotesep
-      \splitmaxdepth \dp\strutbox
-      \floatingpenalty\@MM
-      \hsize\columnwidth
-      \@parboxrestore
-      \protected at edef\@currentlabel{\csname p at footnote\endcsname\@thefnmark}%
-      \color at begingroup
-        \setbox\FN at tempboxa\hbox{%
-          \@makefntext{\ignorespaces#1\strut
-            \penalty-10\relax
+  \long\def\@footnotetext at processii #1{% config point
+    \setbox\FN at tempboxa\hbox{\@makefntext{#1}}%
+    \dp\FN at tempboxa\z@
+    \ht\FN at tempboxa\dimexpr\wd\FN at tempboxa *%
+      \footnotebaselineskip / \columnwidth\relax
+      \box\FN at tempboxa
+  }
+
+
+  \def\@footnotetext at processiii {% config point
+           \penalty-10\relax
             \hskip\footglue
-          }% end of \@makefntext parameter
-        }% end of \hbox
-        \dp\FN at tempboxa\z@
-        \ht\FN at tempboxa\dimexpr\wd\FN at tempboxa *%
-                        \footnotebaselineskip / \columnwidth\relax
-        \box\FN at tempboxa
-      \color at endgroup
-    }%
-% wrong
-%    \FN at mf@prepare
   }
+  
 \else
   \ifFN at sidefn
     \long\def\FN at footnotetext#1{%
@@ -775,6 +787,9 @@
 %    \let \FN at footnotetext \@footnotetext
   \fi
 \fi
+
+
+
 \ifFN at para
   \let\FN at tempboxa\@tempboxa
   \newbox\FN at tempboxb
diff --git a/required/latex-lab/testfiles-OR/footmisc-001.lvt b/required/latex-lab/testfiles-OR/footmisc-001.lvt
index 84c9a570..c3b93533 100644
--- a/required/latex-lab/testfiles-OR/footmisc-001.lvt
+++ b/required/latex-lab/testfiles-OR/footmisc-001.lvt
@@ -1,3 +1,5 @@
+\DocumentMetadata{testphase=new-or}
+
 \documentclass{article}
 
 \input{regression-test}
diff --git a/required/latex-lab/testfiles-OR/footmisc-001.tlg b/required/latex-lab/testfiles-OR/footmisc-001.tlg
index 55377ecf..921a2a8c 100644
--- a/required/latex-lab/testfiles-OR/footmisc-001.tlg
+++ b/required/latex-lab/testfiles-OR/footmisc-001.tlg
@@ -2,12 +2,21 @@ This is a generated file for the l3build validation system.
 Don't change this file in any respect.
 Completed box being shipped out [1]
 \vbox(633.0+0.0)x407.0
+.\hbox(0.0+0.0)x0.0
+..\kern -72.26999
+..\vbox(0.0+0.0)x0.0, glue set 72.26999fil
+...\kern -72.26999
+...\hbox(0.0+0.0)x0.0
+....\glue 0.0 plus 1.0fil minus 1.0fil
+...\glue 0.0 plus 1.0fil minus 1.0fil
 .\glue 16.0
 .\vbox(617.0+0.0)x345.0, shifted 62.0
 ..\vbox(12.0+0.0)x345.0, glue set 12.0fil
 ...\glue 0.0 plus 1.0fil
+...\pdfrunninglinkoff
 ...\hbox(0.0+0.0)x345.0
 ....\hbox(0.0+0.0)x345.0
+...\pdfrunninglinkon
 ..\glue 25.0
 ..\glue(\lineskip) 0.0
 ..\vbox(550.0+0.0)x345.0, glue set 527.9436fil
@@ -42,10 +51,13 @@ Completed box being shipped out [1]
 ...\glue 0.0 plus 1.0fil
 ...\glue 0.0
 ...\glue 0.0 plus 0.0001fil
+..\pdfrunninglinkoff
 ..\glue(\baselineskip) 23.55556
 ..\hbox(6.44444+0.0)x345.0
 ...\hbox(6.44444+0.0)x345.0, glue set 170.0fil
 ....\glue 0.0 plus 1.0fil
 ....\OT1/cmr/m/n/10 1
 ....\glue 0.0 plus 1.0fil
+..\pdfrunninglinkon
+.\kern 0.0
 (footmisc-001.aux)
diff --git a/required/latex-lab/testfiles-OR/footmisc-002.lvt b/required/latex-lab/testfiles-OR/footmisc-002.lvt
index efd937d8..41011571 100644
--- a/required/latex-lab/testfiles-OR/footmisc-002.lvt
+++ b/required/latex-lab/testfiles-OR/footmisc-002.lvt
@@ -1,3 +1,5 @@
+\DocumentMetadata{testphase=new-or}
+
 \documentclass{article}
 
 \input{regression-test}
diff --git a/required/latex-lab/testfiles-OR/footmisc-002.tlg b/required/latex-lab/testfiles-OR/footmisc-002.tlg
index d5e4a938..30644250 100644
--- a/required/latex-lab/testfiles-OR/footmisc-002.tlg
+++ b/required/latex-lab/testfiles-OR/footmisc-002.tlg
@@ -4,18 +4,63 @@ LaTeX Font Info:    External font `cmex10' loaded for size
 (Font)              <7> on input line ....
 LaTeX Font Info:    External font `cmex10' loaded for size
 (Font)              <5> on input line ....
+> \@footnotetext at process=macro:
+->\insert \footins .
+<argument> \@footnotetext at process 
+l. ...Test\footnote{A}
+> \@footnotetext at processii=macro:
+->\@makefntext .
+<argument> \@footnotetext at processii 
+l. ...Test\footnote{A}
+> \@footnotetext at processiii=macro:
+->.
+<argument> \@footnotetext at processiii 
+l. ...Test\footnote{A}
+-> The hook 'fntext/before':
+> Code chunks:
+>     latex-lab-testphase-new-or -> \cs_if_exist:NT \tag_struct_begin:n {\bool_gset_eq:NN \g__tag_saved_in_mc_bool \g__tag_in_mc_bool \bool_gset_false:N \g__tag_in_mc_bool }
+> Document-level (top-level) code (executed last):
+>     ---
+> Extra code for next invocation:
+>     ---
+> Rules:
+>     ---
+> Execution order:
+>     latex-lab-testphase-new-or.
+-> The hook 'fntext/begin':
+> The hook is empty.
+-> The hook 'fntext/after':
+> Code chunks:
+>     latex-lab-testphase-new-or -> \cs_if_exist:NT \tag_struct_begin:n {\bool_gset_eq:NN \g__tag_in_mc_bool \g__tag_saved_in_mc_bool }
+> Document-level (top-level) code (executed last):
+>     ---
+> Extra code for next invocation:
+>     ---
+> Rules:
+>     ---
+> Execution order:
+>     latex-lab-testphase-new-or.
 LaTeX Font Info:    External font `cmex10' loaded for size
 (Font)              <8> on input line ....
 LaTeX Font Info:    External font `cmex10' loaded for size
 (Font)              <6> on input line ....
 Completed box being shipped out [1]
 \vbox(633.0+0.0)x407.0
+.\hbox(0.0+0.0)x0.0
+..\kern -72.26999
+..\vbox(0.0+0.0)x0.0, glue set 72.26999fil
+...\kern -72.26999
+...\hbox(0.0+0.0)x0.0
+....\glue 0.0 plus 1.0fil minus 1.0fil
+...\glue 0.0 plus 1.0fil minus 1.0fil
 .\glue 16.0
 .\vbox(617.0+0.0)x345.0, shifted 62.0
 ..\vbox(12.0+0.0)x345.0, glue set 12.0fil
 ...\glue 0.0 plus 1.0fil
+...\pdfrunninglinkoff
 ...\hbox(0.0+0.0)x345.0
 ....\hbox(0.0+0.0)x345.0
+...\pdfrunninglinkon
 ..\glue 25.0
 ..\glue(\lineskip) 0.0
 ..\vbox(550.0+0.0)x345.0, glue set 502.71631fil
@@ -65,8 +110,8 @@ Completed box being shipped out [1]
 ...\kern -3.0
 ...\rule(0.4+0.0)x137.9979
 ...\kern 2.6
-...\hbox(6.68999+2.85002)x345.0, glue set 320.6332fil
-....\hbox(6.68999+0.0)x18.00005, glue set 13.83344fil
+...\hbox(6.68999+2.85002)x345.0, glue set 323.33301fil
+....\hbox(6.68999+0.0)x15.30023, glue set 11.13362fil
 .....\glue 0.0 plus 1.0fil minus 1.0fil
 .....\hbox(6.68999+0.0)x4.16661
 ......\mathon
@@ -81,8 +126,8 @@ Completed box being shipped out [1]
 ....\penalty 10000
 ....\glue(\parfillskip) 0.0 plus 1.0fil
 ....\glue(\rightskip) 0.0
-...\hbox(6.68999+2.85002)x345.0, glue set 320.9832fil
-....\hbox(6.68999+0.0)x18.00005, glue set 13.83344fil
+...\hbox(6.68999+2.85002)x345.0, glue set 323.68301fil
+....\hbox(6.68999+0.0)x15.30023, glue set 11.13362fil
 .....\glue 0.0 plus 1.0fil minus 1.0fil
 .....\hbox(6.68999+0.0)x4.16661
 ......\mathon
@@ -99,20 +144,32 @@ Completed box being shipped out [1]
 ....\glue(\rightskip) 0.0
 ...\glue -2.85002
 ...\glue 0.0 plus 0.0001fil
+..\pdfrunninglinkoff
 ..\glue(\baselineskip) 23.55556
 ..\hbox(6.44444+0.0)x345.0
 ...\hbox(6.44444+0.0)x345.0, glue set 170.0fil
 ....\glue 0.0 plus 1.0fil
 ....\OT1/cmr/m/n/10 1
 ....\glue 0.0 plus 1.0fil
+..\pdfrunninglinkon
+.\kern 0.0
 Completed box being shipped out [2]
 \vbox(633.0+0.0)x407.0
+.\hbox(0.0+0.0)x0.0
+..\kern -72.26999
+..\vbox(0.0+0.0)x0.0, glue set 72.26999fil
+...\kern -72.26999
+...\hbox(0.0+0.0)x0.0
+....\glue 0.0 plus 1.0fil minus 1.0fil
+...\glue 0.0 plus 1.0fil minus 1.0fil
 .\glue 16.0
 .\vbox(617.0+0.0)x345.0, shifted 62.0
 ..\vbox(12.0+0.0)x345.0, glue set 12.0fil
 ...\glue 0.0 plus 1.0fil
+...\pdfrunninglinkoff
 ...\hbox(0.0+0.0)x345.0
 ....\hbox(0.0+0.0)x345.0
+...\pdfrunninglinkon
 ..\glue 25.0
 ..\glue(\lineskip) 0.0
 ..\vbox(550.0+0.0)x345.0, glue set 524.25401fil
@@ -140,8 +197,8 @@ Completed box being shipped out [2]
 ...\kern -3.0
 ...\rule(0.4+0.0)x137.9979
 ...\kern 2.6
-...\hbox(6.68999+2.85002)x345.0, glue set 320.86098fil
-....\hbox(6.68999+0.0)x18.00005, glue set 13.83344fil
+...\hbox(6.68999+2.85002)x345.0, glue set 323.56079fil
+....\hbox(6.68999+0.0)x15.30023, glue set 11.13362fil
 .....\glue 0.0 plus 1.0fil minus 1.0fil
 .....\hbox(6.68999+0.0)x4.16661
 ......\mathon
@@ -158,9 +215,12 @@ Completed box being shipped out [2]
 ....\glue(\rightskip) 0.0
 ...\glue -2.85002
 ...\glue 0.0 plus 0.0001fil
+..\pdfrunninglinkoff
 ..\glue(\baselineskip) 23.55556
 ..\hbox(6.44444+0.0)x345.0
 ...\hbox(6.44444+0.0)x345.0, glue set 170.0fil
 ....\glue 0.0 plus 1.0fil
 ....\OT1/cmr/m/n/10 2
 ....\glue 0.0 plus 1.0fil
+..\pdfrunninglinkon
+.\kern 0.0
diff --git a/required/latex-lab/testfiles-OR/footmisc-003.lvt b/required/latex-lab/testfiles-OR/footmisc-003.lvt
index 679008db..4da796f4 100644
--- a/required/latex-lab/testfiles-OR/footmisc-003.lvt
+++ b/required/latex-lab/testfiles-OR/footmisc-003.lvt
@@ -1,3 +1,5 @@
+\DocumentMetadata{testphase=phase-II}
+
 \documentclass{article}
 
 \input{regression-test}
@@ -10,6 +12,7 @@
 \begin{document}
 
 \START
+
 Test\footnote{A}
 
 Test\footnote{B}
diff --git a/required/latex-lab/testfiles-OR/footmisc-003.tlg b/required/latex-lab/testfiles-OR/footmisc-003.tlg
index e6a7cf39..101d805b 100644
--- a/required/latex-lab/testfiles-OR/footmisc-003.tlg
+++ b/required/latex-lab/testfiles-OR/footmisc-003.tlg
@@ -4,13 +4,58 @@ LaTeX Font Info:    External font `cmex10' loaded for size
 (Font)              <7> on input line ....
 LaTeX Font Info:    External font `cmex10' loaded for size
 (Font)              <5> on input line ....
+> \@footnotetext at process=macro:
+->\insert \footins .
+<argument> \@footnotetext at process 
+l. ...Test\footnote{A}
+> \@footnotetext at processii=macro:
+->\@makefntext .
+<argument> \@footnotetext at processii 
+l. ...Test\footnote{A}
+> \@footnotetext at processiii=macro:
+->.
+<argument> \@footnotetext at processiii 
+l. ...Test\footnote{A}
+-> The hook 'fntext/before':
+> Code chunks:
+>     latex-lab-testphase-new-or -> \cs_if_exist:NT \tag_struct_begin:n {\bool_gset_eq:NN \g__tag_saved_in_mc_bool \g__tag_in_mc_bool \bool_gset_false:N \g__tag_in_mc_bool }
+> Document-level (top-level) code (executed last):
+>     ---
+> Extra code for next invocation:
+>     ---
+> Rules:
+>     ---
+> Execution order:
+>     latex-lab-testphase-new-or.
+-> The hook 'fntext/begin':
+> The hook is empty.
+-> The hook 'fntext/after':
+> Code chunks:
+>     latex-lab-testphase-new-or -> \cs_if_exist:NT \tag_struct_begin:n {\bool_gset_eq:NN \g__tag_in_mc_bool \g__tag_saved_in_mc_bool }
+> Document-level (top-level) code (executed last):
+>     ---
+> Extra code for next invocation:
+>     ---
+> Rules:
+>     ---
+> Execution order:
+>     latex-lab-testphase-new-or.
 LaTeX Font Info:    External font `cmex10' loaded for size
 (Font)              <8> on input line ....
 LaTeX Font Info:    External font `cmex10' loaded for size
 (Font)              <6> on input line ....
+Package hyperref Warning: Ignoring empty anchor on input line ....
+Package hyperref Warning: Ignoring empty anchor on input line ....
 Completed box being shipped out [1]
 \vbox(633.0+0.0)x407.0
 .\hbox(0.0+0.0)x0.0
+.\hbox(0.0+0.0)x0.0
+..\kern -72.26999
+..\vbox(0.0+0.0)x0.0, glue set 72.26999fil
+...\kern -72.26999
+...\hbox(0.0+0.0)x0.0
+....\glue 0.0 plus 1.0fil minus 1.0fil
+...\glue 0.0 plus 1.0fil minus 1.0fil
 .\vbox(0.0+0.0)x0.0, glue set - 14.99626fil
 ..\kern 0.0
 ..\kern 16.0
@@ -29,15 +74,28 @@ Completed box being shipped out [1]
 ..\vbox(617.0+0.0)x345.0, shifted 62.0
 ...\vbox(12.0+0.0)x345.0, glue set 12.0fil
 ....\glue 0.0 plus 1.0fil
+....\pdfrunninglinkoff
+....\pdfliteral page{/Artifact BMC}
+....\marks1{b-,19,-1,}
+....\marks1{b+,19,-1,}
 ....\hbox(0.0+0.0)x345.0
 .....\hbox(0.0+0.0)x345.0
+....\pdfliteral page{EMC}
+....\marks1{e-,19,1,}
+....\marks1{e+,19,1,}
+....\pdfrunninglinkon
 ...\glue 25.0
 ...\glue(\lineskip) 0.0
 ...\vbox(550.0+0.0)x345.0, glue set 502.71631fil
+....\hbox(0.0+0.0)x0.0
+....\pdfinterwordspaceon
 ....\write-{}
 ....\pdfdest name{Doc-Start} xyz
 ....\glue(\topskip) 1.85997
 ....\hbox(8.14003+0.0)x345.0, glue set 306.8472fil
+.....\write1{\newlabeldata{mcid-1}{{tagabspage}{\__ref_attribute_tagabspage: }{tagmcabs}{1}{tagmcid}{0}}}
+.....\pdfliteral page{/P /l3pdf1 BDC}
+.....\write1{\newlabeldata{l3pdf1}{{abspage}{\__ref_attribute_abspage: }}}
 .....\hbox(0.0+0.0)x15.0
 .....\OT1/cmr/m/n/10 T
 .....\kern-0.83334
@@ -45,20 +103,60 @@ Completed box being shipped out [1]
 .....\OT1/cmr/m/n/10 s
 .....\OT1/cmr/m/n/10 t
 .....\penalty 10000
-.....\pdfstartlink(*+*)x* attr{/Border[0 0 1]/H/I/C[1 0 0]} action goto name{Hfootnote.1}
+.....\pdfliteral page{EMC}
+.....\write1{\newlabeldata{mcid-2}{{tagabspage}{\__ref_attribute_tagabspage: }{tagmcabs}{2}{tagmcid}{1}}}
+.....\pdfliteral page{/Lbl /l3pdf2 BDC}
+.....\write1{\newlabeldata{l3pdf2}{{abspage}{\__ref_attribute_abspage: }}}
+.....\pdfliteral page{EMC}
+.....\write1{\newlabeldata{mcid-3}{{tagabspage}{\__ref_attribute_tagabspage: }{tagmcabs}{3}{tagmcid}{2}}}
+.....\pdfliteral page{/Link /l3pdf3 BDC}
+.....\write1{\newlabeldata{l3pdf3}{{abspage}{\__ref_attribute_abspage: }}}
+.....\pdfstartlink(*+*)x* attr{/Contents (ref) /Border [0 0 1] /H /I /C [0.701176 0.4 0.414118] /StructParent 2 } action goto name{fn.1}
 .....\hbox(8.14003+0.0)x4.48613
 ......\mathon
 ......\hbox(4.51111+0.0)x4.48613, shifted -3.62892
 .......\OT1/cmr/m/n/7 1
 ......\mathoff
 .....\pdfendlink
+.....\pdfliteral page{EMC}
+.....\write1{\newlabeldata{mcid-4}{{tagabspage}{\__ref_attribute_tagabspage: }{tagmcabs}{4}{tagmcid}{3}}}
+.....\pdfliteral page{/Lbl /l3pdf4 BDC}
+.....\write1{\newlabeldata{l3pdf4}{{abspage}{\__ref_attribute_abspage: }}}
+.....\pdfliteral page{EMC}
+.....\write1{\newlabeldata{mcid-5}{{tagabspage}{\__ref_attribute_tagabspage: }{tagmcabs}{5}{tagmcid}{4}}}
+.....\pdfliteral page{/P /l3pdf5 BDC}
+.....\write1{\newlabeldata{l3pdf5}{{abspage}{\__ref_attribute_abspage: }}}
+.....\pdfliteral page{EMC}
 .....\penalty 10000
 .....\glue(\parfillskip) 0.0 plus 1.0fil
 .....\glue(\rightskip) 0.0
+....\marks1{b-,1,2,P,,,}
+....\marks1{b+,1,2,P,,,}
+....\marks1{e-,1,2,}
+....\marks1{e+,1,2,}
+....\marks1{b-,2,3,Lbl,,,}
+....\marks1{b+,2,3,Lbl,,,}
+....\marks1{e-,2,3,}
+....\marks1{e+,2,3,}
+....\marks1{b-,3,4,Link,,,}
+....\marks1{b+,3,4,Link,,,}
+....\marks1{e-,3,4,}
+....\marks1{e+,3,4,}
+....\marks1{b-,4,3,Lbl,,,}
+....\marks1{b+,4,3,Lbl,,,}
+....\marks1{e-,4,3,}
+....\marks1{e+,4,3,}
+....\marks1{b-,5,2,P,,,}
+....\marks1{b+,5,2,P,,,}
+....\marks1{e-,9,2,}
+....\marks1{e+,9,2,}
 ....\glue(\parskip) 0.0 plus 1.0
 ....\glue(\parskip) 0.0
 ....\glue(\baselineskip) 3.85997
 ....\hbox(8.14003+0.0)x345.0, glue set 306.8472fil
+.....\write1{\newlabeldata{mcid-10}{{tagabspage}{\__ref_attribute_tagabspage: }{tagmcabs}{10}{tagmcid}{9}}}
+.....\pdfliteral page{/P /l3pdf10 BDC}
+.....\write1{\newlabeldata{l3pdf10}{{abspage}{\__ref_attribute_abspage: }}}
 .....\hbox(0.0+0.0)x15.0
 .....\OT1/cmr/m/n/10 T
 .....\kern-0.83334
@@ -66,74 +164,199 @@ Completed box being shipped out [1]
 .....\OT1/cmr/m/n/10 s
 .....\OT1/cmr/m/n/10 t
 .....\penalty 10000
-.....\pdfstartlink(*+*)x* attr{/Border[0 0 1]/H/I/C[1 0 0]} action goto name{Hfootnote.2}
+.....\pdfliteral page{EMC}
+.....\write1{\newlabeldata{mcid-11}{{tagabspage}{\__ref_attribute_tagabspage: }{tagmcabs}{11}{tagmcid}{10}}}
+.....\pdfliteral page{/Lbl /l3pdf11 BDC}
+.....\write1{\newlabeldata{l3pdf11}{{abspage}{\__ref_attribute_abspage: }}}
+.....\pdfliteral page{EMC}
+.....\write1{\newlabeldata{mcid-12}{{tagabspage}{\__ref_attribute_tagabspage: }{tagmcabs}{12}{tagmcid}{11}}}
+.....\pdfliteral page{/Link /l3pdf12 BDC}
+.....\write1{\newlabeldata{l3pdf12}{{abspage}{\__ref_attribute_abspage: }}}
+.....\pdfstartlink(*+*)x* attr{/Contents (ref) /Border [0 0 1] /H /I /C [0.701176 0.4 0.414118] /StructParent 3 } action goto name{fn.2}
 .....\hbox(8.14003+0.0)x4.48613
 ......\mathon
 ......\hbox(4.51111+0.0)x4.48613, shifted -3.62892
 .......\OT1/cmr/m/n/7 2
 ......\mathoff
 .....\pdfendlink
+.....\pdfliteral page{EMC}
+.....\write1{\newlabeldata{mcid-13}{{tagabspage}{\__ref_attribute_tagabspage: }{tagmcabs}{13}{tagmcid}{12}}}
+.....\pdfliteral page{/Lbl /l3pdf13 BDC}
+.....\write1{\newlabeldata{l3pdf13}{{abspage}{\__ref_attribute_abspage: }}}
+.....\pdfliteral page{EMC}
+.....\write1{\newlabeldata{mcid-14}{{tagabspage}{\__ref_attribute_tagabspage: }{tagmcabs}{14}{tagmcid}{13}}}
+.....\pdfliteral page{/P /l3pdf14 BDC}
+.....\write1{\newlabeldata{l3pdf14}{{abspage}{\__ref_attribute_abspage: }}}
+.....\pdfliteral page{EMC}
 .....\penalty 10000
 .....\glue(\parfillskip) 0.0 plus 1.0fil
 .....\glue(\rightskip) 0.0
+....\marks1{b-,10,8,P,,,}
+....\marks1{b+,10,8,P,,,}
+....\marks1{e-,10,8,}
+....\marks1{e+,10,8,}
+....\marks1{b-,11,9,Lbl,,,}
+....\marks1{b+,11,9,Lbl,,,}
+....\marks1{e-,11,9,}
+....\marks1{e+,11,9,}
+....\marks1{b-,12,10,Link,,,}
+....\marks1{b+,12,10,Link,,,}
+....\marks1{e-,12,10,}
+....\marks1{e+,12,10,}
+....\marks1{b-,13,9,Lbl,,,}
+....\marks1{b+,13,9,Lbl,,,}
+....\marks1{e-,13,9,}
+....\marks1{e+,13,9,}
+....\marks1{b-,14,8,P,,,}
+....\marks1{b+,14,8,P,,,}
+....\marks1{e-,18,8,}
+....\marks1{e+,18,8,}
 ....\glue 0.0 plus 1.0fil
+....\kern 0.0
+....\hbox(0.0+0.0)x0.0
 ....\glue 9.0 plus 4.0 minus 2.0
 ....\kern -3.0
 ....\rule(0.4+0.0)x137.9979
 ....\kern 2.6
-....\hbox(6.68999+2.85002)x345.0, glue set 320.6332fil
-.....\hbox(6.68999+0.0)x18.00005, glue set 13.83344fil
+....\hbox(0.0+0.0)x0.0
+....\hbox(6.68999+2.85002)x345.0, glue set 323.33301fil
+.....\write1{\newlabeldata{mcid-6}{{tagabspage}{\__ref_attribute_tagabspage: }{tagmcabs}{6}{tagmcid}{5}}}
+.....\pdfliteral page{/P /l3pdf6 BDC}
+.....\write1{\newlabeldata{l3pdf6}{{abspage}{\__ref_attribute_abspage: }}}
+.....\pdfliteral page{EMC}
+.....\pdfdest name{fn.1} xyz
+.....\penalty 10000
+.....\write1{\newlabeldata{tagpdfstruct-fn.1}{{tagstruct}{6}{tagstructobj}{24 0 R}}}
+.....\write1{\newlabeldata{mcid-7}{{tagabspage}{\__ref_attribute_tagabspage: }{tagmcabs}{7}{tagmcid}{6}}}
+.....\pdfliteral page{/Lbl /l3pdf7 BDC}
+.....\write1{\newlabeldata{l3pdf7}{{abspage}{\__ref_attribute_abspage: }}}
+.....\hbox(6.68999+0.0)x15.30023, glue set 11.13362fil
 ......\glue 0.0 plus 1.0fil minus 1.0fil
 ......\hbox(6.68999+0.0)x4.16661
 .......\mathon
 .......\hbox(3.86665+0.0)x4.16661, shifted -2.82333
 ........\OT1/cmr/m/n/6 1
 .......\mathoff
+.....\pdfliteral page{EMC}
+.....\write1{\newlabeldata{mcid-8}{{tagabspage}{\__ref_attribute_tagabspage: }{tagmcabs}{8}{tagmcid}{7}}}
+.....\pdfliteral page{/FENote /l3pdf8 BDC}
+.....\write1{\newlabeldata{l3pdf8}{{abspage}{\__ref_attribute_abspage: }}}
 .....\hbox(6.65+0.0)x0.0
 ......\rule(6.65+0.0)x0.0
 .....\penalty 10000
 .....\hbox(0.0+0.0)x0.0
 ......\hbox(0.0+0.0)x0.0, shifted -9.5
-.......\pdfdest name{Hfootnote.1} xyz
-.......\penalty 10000
 .....\OT1/cmr/m/n/8 A
 .....\penalty 10000
 .....\rule(0.0+2.85002)x0.0
+.....\pdfliteral page{EMC}
+.....\write1{\newlabeldata{mcid-9}{{tagabspage}{\__ref_attribute_tagabspage: }{tagmcabs}{9}{tagmcid}{8}}}
+.....\pdfliteral page{/P /l3pdf9 BDC}
+.....\write1{\newlabeldata{l3pdf9}{{abspage}{\__ref_attribute_abspage: }}}
+.....\pdfliteral page{EMC}
 .....\penalty 10000
 .....\glue(\parfillskip) 0.0 plus 1.0fil
 .....\glue(\rightskip) 0.0
-....\hbox(6.68999+2.85002)x345.0, glue set 320.9832fil
-.....\hbox(6.68999+0.0)x18.00005, glue set 13.83344fil
+....\marks1{b-,6,5,P,,,}
+....\marks1{b+,6,5,P,,,}
+....\marks1{e-,6,5,}
+....\marks1{e+,6,5,}
+....\marks1{b-,7,7,Lbl,,,}
+....\marks1{b+,7,7,Lbl,,,}
+....\marks1{e-,7,7,}
+....\marks1{e+,7,7,}
+....\marks1{b-,8,6,FENote,,,}
+....\marks1{b+,8,6,FENote,,,}
+....\marks1{e-,8,6,}
+....\marks1{e+,8,6,}
+....\marks1{b-,9,5,P,,,}
+....\marks1{b+,9,5,P,,,}
+....\marks1{e-,9,5,}
+....\marks1{e+,9,5,}
+....\hbox(6.68999+2.85002)x345.0, glue set 323.68301fil
+.....\write1{\newlabeldata{mcid-15}{{tagabspage}{\__ref_attribute_tagabspage: }{tagmcabs}{15}{tagmcid}{14}}}
+.....\pdfliteral page{/P /l3pdf15 BDC}
+.....\write1{\newlabeldata{l3pdf15}{{abspage}{\__ref_attribute_abspage: }}}
+.....\pdfliteral page{EMC}
+.....\pdfdest name{fn.2} xyz
+.....\penalty 10000
+.....\write1{\newlabeldata{tagpdfstruct-fn.2}{{tagstruct}{12}{tagstructobj}{41 0 R}}}
+.....\write1{\newlabeldata{mcid-16}{{tagabspage}{\__ref_attribute_tagabspage: }{tagmcabs}{16}{tagmcid}{15}}}
+.....\pdfliteral page{/Lbl /l3pdf16 BDC}
+.....\write1{\newlabeldata{l3pdf16}{{abspage}{\__ref_attribute_abspage: }}}
+.....\hbox(6.68999+0.0)x15.30023, glue set 11.13362fil
 ......\glue 0.0 plus 1.0fil minus 1.0fil
 ......\hbox(6.68999+0.0)x4.16661
 .......\mathon
 .......\hbox(3.86665+0.0)x4.16661, shifted -2.82333
 ........\OT1/cmr/m/n/6 2
 .......\mathoff
+.....\pdfliteral page{EMC}
+.....\write1{\newlabeldata{mcid-17}{{tagabspage}{\__ref_attribute_tagabspage: }{tagmcabs}{17}{tagmcid}{16}}}
+.....\pdfliteral page{/FENote /l3pdf17 BDC}
+.....\write1{\newlabeldata{l3pdf17}{{abspage}{\__ref_attribute_abspage: }}}
 .....\hbox(6.65+0.0)x0.0
 ......\rule(6.65+0.0)x0.0
 .....\penalty 10000
 .....\hbox(0.0+0.0)x0.0
 ......\hbox(0.0+0.0)x0.0, shifted -9.5
-.......\pdfdest name{Hfootnote.2} xyz
-.......\penalty 10000
 .....\OT1/cmr/m/n/8 B
 .....\penalty 10000
 .....\rule(0.0+2.85002)x0.0
+.....\pdfliteral page{EMC}
+.....\write1{\newlabeldata{mcid-18}{{tagabspage}{\__ref_attribute_tagabspage: }{tagmcabs}{18}{tagmcid}{17}}}
+.....\pdfliteral page{/P /l3pdf18 BDC}
+.....\write1{\newlabeldata{l3pdf18}{{abspage}{\__ref_attribute_abspage: }}}
+.....\pdfliteral page{EMC}
 .....\penalty 10000
 .....\glue(\parfillskip) 0.0 plus 1.0fil
 .....\glue(\rightskip) 0.0
+....\marks1{b-,15,11,P,,,}
+....\marks1{b+,15,11,P,,,}
+....\marks1{e-,15,11,}
+....\marks1{e+,15,11,}
+....\marks1{b-,16,13,Lbl,,,}
+....\marks1{b+,16,13,Lbl,,,}
+....\marks1{e-,16,13,}
+....\marks1{e+,16,13,}
+....\marks1{b-,17,12,FENote,,,}
+....\marks1{b+,17,12,FENote,,,}
+....\marks1{e-,17,12,}
+....\marks1{e+,17,12,}
+....\marks1{b-,18,11,P,,,}
+....\marks1{b+,18,11,P,,,}
+....\marks1{e-,18,11,}
+....\marks1{e+,18,11,}
+....\kern -2.85002
+....\hbox(0.0+2.85002)x0.0
 ....\glue -2.85002
 ....\glue 0.0 plus 0.0001fil
+...\pdfrunninglinkoff
+...\pdfliteral page{/Artifact BMC}
+...\marks1{b-,20,-1,}
+...\marks1{b+,20,-1,}
 ...\glue(\baselineskip) 23.55556
 ...\hbox(6.44444+0.0)x345.0
 ....\hbox(6.44444+0.0)x345.0, glue set 170.0fil
 .....\glue 0.0 plus 1.0fil
 .....\OT1/cmr/m/n/10 1
 .....\glue 0.0 plus 1.0fil
+...\pdfliteral page{EMC}
+...\marks1{e-,20,1,}
+...\marks1{e+,20,1,}
+...\pdfrunninglinkon
+.\kern 0.0
 .\kern 0.0
+Package hyperref Warning: Ignoring empty anchor on input line ....
 Completed box being shipped out [2]
 \vbox(633.0+0.0)x407.0
+.\hbox(0.0+0.0)x0.0
+..\kern -72.26999
+..\vbox(0.0+0.0)x0.0, glue set 72.26999fil
+...\kern -72.26999
+...\hbox(0.0+0.0)x0.0
+....\glue 0.0 plus 1.0fil minus 1.0fil
+...\glue 0.0 plus 1.0fil minus 1.0fil
 .\vbox(0.0+0.0)x0.0, glue set - 14.99626fil
 ..\kern 0.0
 ..\kern 16.0
@@ -152,13 +375,25 @@ Completed box being shipped out [2]
 ..\vbox(617.0+0.0)x345.0, shifted 62.0
 ...\vbox(12.0+0.0)x345.0, glue set 12.0fil
 ....\glue 0.0 plus 1.0fil
+....\pdfrunninglinkoff
+....\pdfliteral page{/Artifact BMC}
+....\marks1{b-,30,-1,}
+....\marks1{b+,30,-1,}
 ....\hbox(0.0+0.0)x345.0
 .....\hbox(0.0+0.0)x345.0
+....\pdfliteral page{EMC}
+....\marks1{e-,30,1,}
+....\marks1{e+,30,1,}
+....\pdfrunninglinkon
 ...\glue 25.0
 ...\glue(\lineskip) 0.0
 ...\vbox(550.0+0.0)x345.0, glue set 524.25401fil
+....\hbox(0.0+0.0)x0.0
 ....\glue(\topskip) 1.85997
 ....\hbox(8.14003+0.0)x345.0, glue set 306.8472fil
+.....\write1{\newlabeldata{mcid-21}{{tagabspage}{\__ref_attribute_tagabspage: }{tagmcabs}{21}{tagmcid}{0}}}
+.....\pdfliteral page{/P /l3pdf19 BDC}
+.....\write1{\newlabeldata{l3pdf19}{{abspage}{\__ref_attribute_abspage: }}}
 .....\hbox(0.0+0.0)x15.0
 .....\OT1/cmr/m/n/10 T
 .....\kern-0.83334
@@ -166,47 +401,134 @@ Completed box being shipped out [2]
 .....\OT1/cmr/m/n/10 s
 .....\OT1/cmr/m/n/10 t
 .....\penalty 10000
-.....\pdfstartlink(*+*)x* attr{/Border[0 0 1]/H/I/C[1 0 0]} action goto name{Hfootnote.3}
+.....\pdfliteral page{EMC}
+.....\write1{\newlabeldata{mcid-22}{{tagabspage}{\__ref_attribute_tagabspage: }{tagmcabs}{22}{tagmcid}{1}}}
+.....\pdfliteral page{/Lbl /l3pdf20 BDC}
+.....\write1{\newlabeldata{l3pdf20}{{abspage}{\__ref_attribute_abspage: }}}
+.....\pdfliteral page{EMC}
+.....\write1{\newlabeldata{mcid-23}{{tagabspage}{\__ref_attribute_tagabspage: }{tagmcabs}{23}{tagmcid}{2}}}
+.....\pdfliteral page{/Link /l3pdf21 BDC}
+.....\write1{\newlabeldata{l3pdf21}{{abspage}{\__ref_attribute_abspage: }}}
+.....\pdfstartlink(*+*)x* attr{/Contents (ref) /Border [0 0 1] /H /I /C [0.701176 0.4 0.414118] /StructParent 4 } action goto name{fn.3}
 .....\hbox(8.14003+0.0)x4.48613
 ......\mathon
 ......\hbox(4.51111+0.0)x4.48613, shifted -3.62892
 .......\OT1/cmr/m/n/7 3
 ......\mathoff
 .....\pdfendlink
+.....\pdfliteral page{EMC}
+.....\write1{\newlabeldata{mcid-24}{{tagabspage}{\__ref_attribute_tagabspage: }{tagmcabs}{24}{tagmcid}{3}}}
+.....\pdfliteral page{/Lbl /l3pdf22 BDC}
+.....\write1{\newlabeldata{l3pdf22}{{abspage}{\__ref_attribute_abspage: }}}
+.....\pdfliteral page{EMC}
+.....\write1{\newlabeldata{mcid-25}{{tagabspage}{\__ref_attribute_tagabspage: }{tagmcabs}{25}{tagmcid}{4}}}
+.....\pdfliteral page{/P /l3pdf23 BDC}
+.....\write1{\newlabeldata{l3pdf23}{{abspage}{\__ref_attribute_abspage: }}}
+.....\pdfliteral page{EMC}
 .....\penalty 10000
 .....\glue(\parfillskip) 0.0 plus 1.0fil
 .....\glue(\rightskip) 0.0
+....\marks1{b-,21,14,P,,,}
+....\marks1{b+,21,14,P,,,}
+....\marks1{e-,21,14,}
+....\marks1{e+,21,14,}
+....\marks1{b-,22,15,Lbl,,,}
+....\marks1{b+,22,15,Lbl,,,}
+....\marks1{e-,22,15,}
+....\marks1{e+,22,15,}
+....\marks1{b-,23,16,Link,,,}
+....\marks1{b+,23,16,Link,,,}
+....\marks1{e-,23,16,}
+....\marks1{e+,23,16,}
+....\marks1{b-,24,15,Lbl,,,}
+....\marks1{b+,24,15,Lbl,,,}
+....\marks1{e-,24,15,}
+....\marks1{e+,24,15,}
+....\marks1{b-,25,14,P,,,}
+....\marks1{b+,25,14,P,,,}
+....\marks1{e-,29,14,}
+....\marks1{e+,29,14,}
 ....\glue 0.0 plus 1.0fil
+....\kern 0.0
+....\hbox(0.0+0.0)x0.0
 ....\glue 9.0 plus 4.0 minus 2.0
 ....\kern -3.0
 ....\rule(0.4+0.0)x137.9979
 ....\kern 2.6
-....\hbox(6.68999+2.85002)x345.0, glue set 320.86098fil
-.....\hbox(6.68999+0.0)x18.00005, glue set 13.83344fil
+....\hbox(0.0+0.0)x0.0
+....\hbox(6.68999+2.85002)x345.0, glue set 323.56079fil
+.....\write1{\newlabeldata{mcid-26}{{tagabspage}{\__ref_attribute_tagabspage: }{tagmcabs}{26}{tagmcid}{5}}}
+.....\pdfliteral page{/P /l3pdf24 BDC}
+.....\write1{\newlabeldata{l3pdf24}{{abspage}{\__ref_attribute_abspage: }}}
+.....\pdfliteral page{EMC}
+.....\pdfdest name{fn.3} xyz
+.....\penalty 10000
+.....\write1{\newlabeldata{tagpdfstruct-fn.3}{{tagstruct}{18}{tagstructobj}{70 0 R}}}
+.....\write1{\newlabeldata{mcid-27}{{tagabspage}{\__ref_attribute_tagabspage: }{tagmcabs}{27}{tagmcid}{6}}}
+.....\pdfliteral page{/Lbl /l3pdf25 BDC}
+.....\write1{\newlabeldata{l3pdf25}{{abspage}{\__ref_attribute_abspage: }}}
+.....\hbox(6.68999+0.0)x15.30023, glue set 11.13362fil
 ......\glue 0.0 plus 1.0fil minus 1.0fil
 ......\hbox(6.68999+0.0)x4.16661
 .......\mathon
 .......\hbox(3.86665+0.0)x4.16661, shifted -2.82333
 ........\OT1/cmr/m/n/6 3
 .......\mathoff
+.....\pdfliteral page{EMC}
+.....\write1{\newlabeldata{mcid-28}{{tagabspage}{\__ref_attribute_tagabspage: }{tagmcabs}{28}{tagmcid}{7}}}
+.....\pdfliteral page{/FENote /l3pdf26 BDC}
+.....\write1{\newlabeldata{l3pdf26}{{abspage}{\__ref_attribute_abspage: }}}
 .....\hbox(6.65+0.0)x0.0
 ......\rule(6.65+0.0)x0.0
 .....\penalty 10000
 .....\hbox(0.0+0.0)x0.0
 ......\hbox(0.0+0.0)x0.0, shifted -9.5
-.......\pdfdest name{Hfootnote.3} xyz
-.......\penalty 10000
 .....\OT1/cmr/m/n/8 C
 .....\penalty 10000
 .....\rule(0.0+2.85002)x0.0
+.....\pdfliteral page{EMC}
+.....\write1{\newlabeldata{mcid-29}{{tagabspage}{\__ref_attribute_tagabspage: }{tagmcabs}{29}{tagmcid}{8}}}
+.....\pdfliteral page{/P /l3pdf27 BDC}
+.....\write1{\newlabeldata{l3pdf27}{{abspage}{\__ref_attribute_abspage: }}}
+.....\pdfliteral page{EMC}
 .....\penalty 10000
 .....\glue(\parfillskip) 0.0 plus 1.0fil
 .....\glue(\rightskip) 0.0
+....\marks1{b-,26,17,P,,,}
+....\marks1{b+,26,17,P,,,}
+....\marks1{e-,26,17,}
+....\marks1{e+,26,17,}
+....\marks1{b-,27,19,Lbl,,,}
+....\marks1{b+,27,19,Lbl,,,}
+....\marks1{e-,27,19,}
+....\marks1{e+,27,19,}
+....\marks1{b-,28,18,FENote,,,}
+....\marks1{b+,28,18,FENote,,,}
+....\marks1{e-,28,18,}
+....\marks1{e+,28,18,}
+....\marks1{b-,29,17,P,,,}
+....\marks1{b+,29,17,P,,,}
+....\marks1{e-,29,17,}
+....\marks1{e+,29,17,}
+....\kern -2.85002
+....\hbox(0.0+2.85002)x0.0
 ....\glue -2.85002
 ....\glue 0.0 plus 0.0001fil
+...\pdfrunninglinkoff
+...\pdfliteral page{/Artifact BMC}
+...\marks1{b-,31,-1,}
+...\marks1{b+,31,-1,}
 ...\glue(\baselineskip) 23.55556
 ...\hbox(6.44444+0.0)x345.0
 ....\hbox(6.44444+0.0)x345.0, glue set 170.0fil
 .....\glue 0.0 plus 1.0fil
 .....\OT1/cmr/m/n/10 2
 .....\glue 0.0 plus 1.0fil
+...\pdfliteral page{EMC}
+...\marks1{e-,31,1,}
+...\marks1{e+,31,1,}
+...\pdfrunninglinkon
+.\kern 0.0
+.\kern -633.0
+.\hbox(0.0+0.0)x0.0
+.\kern 633.0
diff --git a/required/latex-lab/testfiles-OR/footmisc-009-multiple.tlg b/required/latex-lab/testfiles-OR/footmisc-009-multiple.tlg
index ac37018e..75d35da9 100644
--- a/required/latex-lab/testfiles-OR/footmisc-009-multiple.tlg
+++ b/required/latex-lab/testfiles-OR/footmisc-009-multiple.tlg
@@ -4,6 +4,45 @@ LaTeX Font Info:    External font `cmex10' loaded for size
 (Font)              <7> on input line ....
 LaTeX Font Info:    External font `cmex10' loaded for size
 (Font)              <5> on input line ....
+> \@footnotetext at process=macro:
+->\insert \footins .
+<argument> \@footnotetext at process 
+l. ...Test\footnote{A}
+                     \footnote{\label{foo}B}\footnote[7]{C}
+> \@footnotetext at processii=macro:
+->\@makefntext .
+<argument> \@footnotetext at processii 
+l. ...Test\footnote{A}
+                     \footnote{\label{foo}B}\footnote[7]{C}
+> \@footnotetext at processiii=macro:
+->.
+<argument> \@footnotetext at processiii 
+l. ...Test\footnote{A}
+                     \footnote{\label{foo}B}\footnote[7]{C}
+-> The hook 'fntext/before':
+> Code chunks:
+>     latex-lab-testphase-new-or -> \cs_if_exist:NT \tag_struct_begin:n {\bool_gset_eq:NN \g__tag_saved_in_mc_bool \g__tag_in_mc_bool \bool_gset_false:N \g__tag_in_mc_bool }
+> Document-level (top-level) code (executed last):
+>     ---
+> Extra code for next invocation:
+>     ---
+> Rules:
+>     ---
+> Execution order:
+>     latex-lab-testphase-new-or.
+-> The hook 'fntext/begin':
+> The hook is empty.
+-> The hook 'fntext/after':
+> Code chunks:
+>     latex-lab-testphase-new-or -> \cs_if_exist:NT \tag_struct_begin:n {\bool_gset_eq:NN \g__tag_in_mc_bool \g__tag_saved_in_mc_bool }
+> Document-level (top-level) code (executed last):
+>     ---
+> Extra code for next invocation:
+>     ---
+> Rules:
+>     ---
+> Execution order:
+>     latex-lab-testphase-new-or.
 LaTeX Font Info:    External font `cmex10' loaded for size
 (Font)              <8> on input line ....
 LaTeX Font Info:    External font `cmex10' loaded for size
diff --git a/required/latex-lab/testfiles-OR/footmisc-010-setspace.tlg b/required/latex-lab/testfiles-OR/footmisc-010-setspace.tlg
index 09ddae1d..3df1e350 100644
--- a/required/latex-lab/testfiles-OR/footmisc-010-setspace.tlg
+++ b/required/latex-lab/testfiles-OR/footmisc-010-setspace.tlg
@@ -17,6 +17,54 @@ LaTeX Font Info:    External font `cmex10' loaded for size
 (Font)              <7> on input line ....
 LaTeX Font Info:    External font `cmex10' loaded for size
 (Font)              <5> on input line ....
+> \@footnotetext at process=macro:
+->\insert \footins .
+<argument> \@footnotetext at process 
+l. ...Test\footnote{\lipsum[1][1-7]}
+                                   \footnote{\label{foo}B}\footnote[7]{C}
+> \@footnotetext at processii=macro:
+->\@makefntext .
+<argument> \@footnotetext at processii 
+l. ...Test\footnote{\lipsum[1][1-7]}
+                                   \footnote{\label{foo}B}\footnote[7]{C}
+> \@footnotetext at processiii=macro:
+->.
+<argument> \@footnotetext at processiii 
+l. ...Test\footnote{\lipsum[1][1-7]}
+                                   \footnote{\label{foo}B}\footnote[7]{C}
+-> The hook 'fntext/before':
+> Code chunks:
+>     latex-lab-testphase-new-or -> \cs_if_exist:NT \tag_struct_begin:n {\bool_gset_eq:NN \g__tag_saved_in_mc_bool \g__tag_in_mc_bool \bool_gset_false:N \g__tag_in_mc_bool }
+> Document-level (top-level) code (executed last):
+>     ---
+> Extra code for next invocation:
+>     ---
+> Rules:
+>     ---
+> Execution order:
+>     latex-lab-testphase-new-or.
+-> The hook 'fntext/begin':
+> Code chunks:
+>     setspace -> \let \baselinestretch \setspace at singlespace 
+> Document-level (top-level) code (executed last):
+>     ---
+> Extra code for next invocation:
+>     ---
+> Rules:
+>     ---
+> Execution order:
+>     setspace.
+-> The hook 'fntext/after':
+> Code chunks:
+>     latex-lab-testphase-new-or -> \cs_if_exist:NT \tag_struct_begin:n {\bool_gset_eq:NN \g__tag_in_mc_bool \g__tag_saved_in_mc_bool }
+> Document-level (top-level) code (executed last):
+>     ---
+> Extra code for next invocation:
+>     ---
+> Rules:
+>     ---
+> Execution order:
+>     latex-lab-testphase-new-or.
 LaTeX Font Info:    External font `cmex10' loaded for size
 (Font)              <8> on input line ....
 LaTeX Font Info:    External font `cmex10' loaded for size
diff --git a/required/latex-lab/testfiles-OR/footmisc-009-multiple.lvt b/required/latex-lab/testfiles-OR/footmisc-011-para.lvt
similarity index 63%
copy from required/latex-lab/testfiles-OR/footmisc-009-multiple.lvt
copy to required/latex-lab/testfiles-OR/footmisc-011-para.lvt
index cad9f75d..2dfd7407 100644
--- a/required/latex-lab/testfiles-OR/footmisc-009-multiple.lvt
+++ b/required/latex-lab/testfiles-OR/footmisc-011-para.lvt
@@ -5,7 +5,7 @@
 \input{regression-test}
 
 
-\usepackage[multiple]{footmisc}
+\usepackage[para]{footmisc}
 
 
 \showoutput
@@ -14,8 +14,7 @@
 
 \START
 
-
-Test\footnote{A}\footnote{\label{foo}B}\footnote[7]{C}
+Test\footnote{A}\tracingnone\footnote{\label{foo}B}\footnote[7]{C}
 
 
 \renewcommand\thefootnote{\fnsymbol{footnote}}
@@ -23,7 +22,6 @@ Test\footnote{A}\footnote{\label{foo}B}\footnote[7]{C}
 
 Test\footnote{D} and\footnote{E}\footref{foo}
 
-Wrong:\footnotetext{F}\footnote{G} there should be no comma!
 
 
 \newpage
diff --git a/required/latex-lab/testfiles-OR/footmisc-011-para.tlg b/required/latex-lab/testfiles-OR/footmisc-011-para.tlg
new file mode 100644
index 00000000..2d25a90d
--- /dev/null
+++ b/required/latex-lab/testfiles-OR/footmisc-011-para.tlg
@@ -0,0 +1,51 @@
+This is a generated file for the l3build validation system.
+Don't change this file in any respect.
+LaTeX Font Info:    External font `cmex10' loaded for size
+(Font)              <7> on input line ....
+LaTeX Font Info:    External font `cmex10' loaded for size
+(Font)              <5> on input line ....
+> \@footnotetext at process=macro:
+->\insert \footins .
+<argument> \@footnotetext at process 
+l. ...Test\footnote{A}
+                     \tracingnone\footnote{\label{foo}B}\footnote[7]{C}
+> \@footnotetext at processii=\long macro:
+#1->\setbox \FN at tempboxa \hbox {\@makefntext {#1}}\dp \FN at tempboxa \z@ \ht \FN at tempboxa \dimexpr \wd \FN at tempboxa *\footnotebaselineskip / \columnwidth \relax \box \FN at tempboxa .
+<argument> \@footnotetext at processii 
+l. ...Test\footnote{A}
+                     \tracingnone\footnote{\label{foo}B}\footnote[7]{C}
+> \@footnotetext at processiii=macro:
+->\penalty -10\relax \hskip \footglue .
+<argument> \@footnotetext at processiii 
+l. ...Test\footnote{A}
+                     \tracingnone\footnote{\label{foo}B}\footnote[7]{C}
+-> The hook 'fntext/before':
+> Code chunks:
+>     latex-lab-testphase-new-or -> \cs_if_exist:NT \tag_struct_begin:n {\bool_gset_eq:NN \g__tag_saved_in_mc_bool \g__tag_in_mc_bool \bool_gset_false:N \g__tag_in_mc_bool }
+> Document-level (top-level) code (executed last):
+>     ---
+> Extra code for next invocation:
+>     ---
+> Rules:
+>     ---
+> Execution order:
+>     latex-lab-testphase-new-or.
+-> The hook 'fntext/begin':
+> The hook is empty.
+-> The hook 'fntext/after':
+> Code chunks:
+>     latex-lab-testphase-new-or -> \cs_if_exist:NT \tag_struct_begin:n {\bool_gset_eq:NN \g__tag_in_mc_bool \g__tag_saved_in_mc_bool }
+> Document-level (top-level) code (executed last):
+>     ---
+> Extra code for next invocation:
+>     ---
+> Rules:
+>     ---
+> Execution order:
+>     latex-lab-testphase-new-or.
+LaTeX Font Info:    External font `cmex10' loaded for size
+(Font)              <8> on input line ....
+LaTeX Font Info:    External font `cmex10' loaded for size
+(Font)              <6> on input line ....
+[1
+]
diff --git a/required/latex-lab/testfiles-OR/tagging-001.tlg b/required/latex-lab/testfiles-OR/tagging-001.tlg
index de3d05f2..6b286895 100644
--- a/required/latex-lab/testfiles-OR/tagging-001.tlg
+++ b/required/latex-lab/testfiles-OR/tagging-001.tlg
@@ -4,6 +4,45 @@ LaTeX Font Info:    External font `cmex10' loaded for size
 (Font)              <7> on input line ....
 LaTeX Font Info:    External font `cmex10' loaded for size
 (Font)              <5> on input line ....
+> \@footnotetext at process=macro:
+->\insert \footins .
+<argument> \@footnotetext at process 
+l. ...abc \footnote{blub}
+                          xyz\footnotemark
+> \@footnotetext at processii=macro:
+->\@makefntext .
+<argument> \@footnotetext at processii 
+l. ...abc \footnote{blub}
+                          xyz\footnotemark
+> \@footnotetext at processiii=macro:
+->.
+<argument> \@footnotetext at processiii 
+l. ...abc \footnote{blub}
+                          xyz\footnotemark
+-> The hook 'fntext/before':
+> Code chunks:
+>     latex-lab-testphase-new-or -> \cs_if_exist:NT \tag_struct_begin:n {\bool_gset_eq:NN \g__tag_saved_in_mc_bool \g__tag_in_mc_bool \bool_gset_false:N \g__tag_in_mc_bool }
+> Document-level (top-level) code (executed last):
+>     ---
+> Extra code for next invocation:
+>     ---
+> Rules:
+>     ---
+> Execution order:
+>     latex-lab-testphase-new-or.
+-> The hook 'fntext/begin':
+> The hook is empty.
+-> The hook 'fntext/after':
+> Code chunks:
+>     latex-lab-testphase-new-or -> \cs_if_exist:NT \tag_struct_begin:n {\bool_gset_eq:NN \g__tag_in_mc_bool \g__tag_saved_in_mc_bool }
+> Document-level (top-level) code (executed last):
+>     ---
+> Extra code for next invocation:
+>     ---
+> Rules:
+>     ---
+> Execution order:
+>     latex-lab-testphase-new-or.
 LaTeX Font Info:    External font `cmex10' loaded for size
 (Font)              <8> on input line ....
 LaTeX Font Info:    External font `cmex10' loaded for size
diff --git a/required/latex-lab/update-OR-all.sh b/required/latex-lab/update-OR-all.sh
index afcbc8d4..78b0d02f 100644
--- a/required/latex-lab/update-OR-all.sh
+++ b/required/latex-lab/update-OR-all.sh
@@ -26,6 +26,7 @@ l3build save -cconfig-OR \
 	footmisc-008-pdfcol \
 	footmisc-009-multiple \
 	footmisc-010-setspace \
+	tagging-001 \
 	github-001 \
 	footmisc-symbols-001 \
 	footmisc-symbols-002 \





More information about the latex3-commits mailing list.