summaryrefslogtreecommitdiff
path: root/Master/texmf-dist
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist')
-rw-r--r--Master/texmf-dist/doc/latex/oberdiek/accsupp.pdfbin239379 -> 239379 bytes
-rw-r--r--Master/texmf-dist/doc/latex/oberdiek/aliascnt.pdfbin171899 -> 171898 bytes
-rw-r--r--Master/texmf-dist/doc/latex/oberdiek/alphalph.pdf2
-rw-r--r--Master/texmf-dist/doc/latex/oberdiek/askinclude.pdfbin901159 -> 901158 bytes
-rw-r--r--Master/texmf-dist/doc/latex/oberdiek/atbegshi.pdf3
-rw-r--r--Master/texmf-dist/doc/latex/oberdiek/atenddvi.pdfbin160635 -> 160635 bytes
-rw-r--r--Master/texmf-dist/doc/latex/oberdiek/attachfile2.pdf2
-rw-r--r--Master/texmf-dist/doc/latex/oberdiek/auxhook.pdfbin174283 -> 174283 bytes
-rw-r--r--Master/texmf-dist/doc/latex/oberdiek/bigintcalc.pdfbin666242 -> 666243 bytes
-rw-r--r--Master/texmf-dist/doc/latex/oberdiek/bitset.pdfbin1032096 -> 1032096 bytes
-rw-r--r--Master/texmf-dist/doc/latex/oberdiek/bmpsize.pdfbin678017 -> 678016 bytes
-rw-r--r--Master/texmf-dist/doc/latex/oberdiek/bookmark.pdfbin468554 -> 468554 bytes
-rw-r--r--Master/texmf-dist/doc/latex/oberdiek/catchfile.pdfbin231563 -> 231564 bytes
-rw-r--r--Master/texmf-dist/doc/latex/oberdiek/centernot.pdfbin151175 -> 151175 bytes
-rw-r--r--Master/texmf-dist/doc/latex/oberdiek/chemarr.pdfbin162457 -> 162455 bytes
-rw-r--r--Master/texmf-dist/doc/latex/oberdiek/classlist.pdfbin169686 -> 169686 bytes
-rw-r--r--Master/texmf-dist/doc/latex/oberdiek/colonequals.pdfbin170972 -> 170972 bytes
-rw-r--r--Master/texmf-dist/doc/latex/oberdiek/dvipscol.pdfbin152377 -> 152376 bytes
-rw-r--r--Master/texmf-dist/doc/latex/oberdiek/embedfile.pdf2
-rw-r--r--Master/texmf-dist/doc/latex/oberdiek/engord.pdfbin232255 -> 232255 bytes
-rw-r--r--Master/texmf-dist/doc/latex/oberdiek/epstopdf.pdf2
-rw-r--r--Master/texmf-dist/doc/latex/oberdiek/etexcmds.pdfbin219075 -> 219075 bytes
-rw-r--r--Master/texmf-dist/doc/latex/oberdiek/flags.pdfbin176719 -> 176719 bytes
-rw-r--r--Master/texmf-dist/doc/latex/oberdiek/grfext.pdfbin253308 -> 253309 bytes
-rw-r--r--Master/texmf-dist/doc/latex/oberdiek/grffile.pdfbin241918 -> 241918 bytes
-rw-r--r--Master/texmf-dist/doc/latex/oberdiek/holtxdoc.pdfbin199554 -> 199553 bytes
-rw-r--r--Master/texmf-dist/doc/latex/oberdiek/hycolor.pdf2
-rw-r--r--Master/texmf-dist/doc/latex/oberdiek/hypbmsec.pdfbin191835 -> 191836 bytes
-rw-r--r--Master/texmf-dist/doc/latex/oberdiek/hypcap.pdfbin185425 -> 185425 bytes
-rw-r--r--Master/texmf-dist/doc/latex/oberdiek/hypdestopt.pdfbin221722 -> 221721 bytes
-rw-r--r--Master/texmf-dist/doc/latex/oberdiek/hypdoc.pdfbin259454 -> 259453 bytes
-rw-r--r--Master/texmf-dist/doc/latex/oberdiek/hypgotoe.pdfbin184541 -> 184542 bytes
-rw-r--r--Master/texmf-dist/doc/latex/oberdiek/hyphsubst.pdfbin221741 -> 221740 bytes
-rw-r--r--Master/texmf-dist/doc/latex/oberdiek/ifdraft.pdfbin154707 -> 154707 bytes
-rw-r--r--Master/texmf-dist/doc/latex/oberdiek/iflang.pdfbin282581 -> 282582 bytes
-rw-r--r--Master/texmf-dist/doc/latex/oberdiek/ifluatex.pdfbin212791 -> 212790 bytes
-rw-r--r--Master/texmf-dist/doc/latex/oberdiek/ifpdf.pdfbin226534 -> 226534 bytes
-rw-r--r--Master/texmf-dist/doc/latex/oberdiek/ifvtex.pdfbin209830 -> 209830 bytes
-rw-r--r--Master/texmf-dist/doc/latex/oberdiek/infwarerr.pdfbin262653 -> 262653 bytes
-rw-r--r--Master/texmf-dist/doc/latex/oberdiek/inputenx.pdfbin1977250 -> 1977249 bytes
-rw-r--r--Master/texmf-dist/doc/latex/oberdiek/intcalc.pdfbin613356 -> 613356 bytes
-rw-r--r--Master/texmf-dist/doc/latex/oberdiek/kvoptions.pdfbin532447 -> 532446 bytes
-rw-r--r--Master/texmf-dist/doc/latex/oberdiek/kvsetkeys.pdf2
-rw-r--r--Master/texmf-dist/doc/latex/oberdiek/letltxmacro.pdf2
-rw-r--r--Master/texmf-dist/doc/latex/oberdiek/listingsutf8.pdfbin207860 -> 207860 bytes
-rw-r--r--Master/texmf-dist/doc/latex/oberdiek/ltxcmds.pdfbin202679 -> 202679 bytes
-rw-r--r--Master/texmf-dist/doc/latex/oberdiek/luacolor.pdfbin217209 -> 217209 bytes
-rw-r--r--Master/texmf-dist/doc/latex/oberdiek/luatex.pdf2
-rw-r--r--Master/texmf-dist/doc/latex/oberdiek/magicnum.pdfbin247174 -> 247174 bytes
-rw-r--r--Master/texmf-dist/doc/latex/oberdiek/makerobust.pdfbin150664 -> 150664 bytes
-rw-r--r--Master/texmf-dist/doc/latex/oberdiek/oberdiek.pdfbin845581 -> 853525 bytes
-rw-r--r--Master/texmf-dist/doc/latex/oberdiek/pagesel.pdfbin222642 -> 222642 bytes
-rw-r--r--Master/texmf-dist/doc/latex/oberdiek/pdfcol.pdfbin250111 -> 250112 bytes
-rw-r--r--Master/texmf-dist/doc/latex/oberdiek/pdfcolfoot.pdfbin192057 -> 192058 bytes
-rw-r--r--Master/texmf-dist/doc/latex/oberdiek/pdfcolmk.pdf2
-rw-r--r--Master/texmf-dist/doc/latex/oberdiek/pdfcolparallel.pdf2
-rw-r--r--Master/texmf-dist/doc/latex/oberdiek/pdfcolparcolumns.pdfbin213440 -> 213441 bytes
-rw-r--r--Master/texmf-dist/doc/latex/oberdiek/pdfcrypt.pdfbin252903 -> 252902 bytes
-rw-r--r--Master/texmf-dist/doc/latex/oberdiek/pdfescape.pdf2
-rw-r--r--Master/texmf-dist/doc/latex/oberdiek/pdflscape.pdfbin239911 -> 239911 bytes
-rw-r--r--Master/texmf-dist/doc/latex/oberdiek/pdftexcmds.pdfbin248306 -> 278341 bytes
-rw-r--r--Master/texmf-dist/doc/latex/oberdiek/picture.pdfbin200098 -> 200098 bytes
-rw-r--r--Master/texmf-dist/doc/latex/oberdiek/pmboxdraw.pdf2
-rw-r--r--Master/texmf-dist/doc/latex/oberdiek/refcount.pdfbin182990 -> 182990 bytes
-rw-r--r--Master/texmf-dist/doc/latex/oberdiek/scrindex.pdfbin194830 -> 194830 bytes
-rw-r--r--Master/texmf-dist/doc/latex/oberdiek/selinput.pdfbin618474 -> 618473 bytes
-rw-r--r--Master/texmf-dist/doc/latex/oberdiek/setouterhbox.pdfbin265870 -> 265870 bytes
-rw-r--r--Master/texmf-dist/doc/latex/oberdiek/settobox.pdfbin200982 -> 200981 bytes
-rw-r--r--Master/texmf-dist/doc/latex/oberdiek/soulutf8.pdf2
-rw-r--r--Master/texmf-dist/doc/latex/oberdiek/stackrel.pdfbin162028 -> 162028 bytes
-rw-r--r--Master/texmf-dist/doc/latex/oberdiek/stampinclude.pdfbin171370 -> 171369 bytes
-rw-r--r--Master/texmf-dist/doc/latex/oberdiek/stringenc.pdfbin1163337 -> 1163337 bytes
-rw-r--r--Master/texmf-dist/doc/latex/oberdiek/tabularht.pdfbin267260 -> 267260 bytes
-rw-r--r--Master/texmf-dist/doc/latex/oberdiek/tabularkv.pdfbin147167 -> 147167 bytes
-rw-r--r--Master/texmf-dist/doc/latex/oberdiek/telprint.pdfbin237266 -> 237267 bytes
-rw-r--r--Master/texmf-dist/doc/latex/oberdiek/test/uniquecounter-test1.tex110
-rw-r--r--Master/texmf-dist/doc/latex/oberdiek/test/uniquecounter-test2.tex102
-rw-r--r--Master/texmf-dist/doc/latex/oberdiek/test/uniquecounter-test3.tex113
-rw-r--r--Master/texmf-dist/doc/latex/oberdiek/transparent.pdfbin164310 -> 164311 bytes
-rw-r--r--Master/texmf-dist/doc/latex/oberdiek/twoopt.pdfbin170159 -> 170159 bytes
-rw-r--r--Master/texmf-dist/doc/latex/oberdiek/uniquecounter-example.tex56
-rw-r--r--Master/texmf-dist/doc/latex/oberdiek/uniquecounter.pdfbin0 -> 238229 bytes
-rw-r--r--Master/texmf-dist/doc/latex/oberdiek/zref.pdfbin550939 -> 550938 bytes
-rw-r--r--Master/texmf-dist/source/latex/oberdiek/oberdiek.ins3
-rw-r--r--Master/texmf-dist/source/latex/oberdiek/oberdiek.tex16
-rw-r--r--Master/texmf-dist/source/latex/oberdiek/pdftexcmds.dtx219
-rw-r--r--Master/texmf-dist/source/latex/oberdiek/uniquecounter.dtx925
-rw-r--r--Master/texmf-dist/tex/generic/oberdiek/pdftexcmds.sty111
-rw-r--r--Master/texmf-dist/tex/generic/oberdiek/uniquecounter.sty203
89 files changed, 1847 insertions, 40 deletions
diff --git a/Master/texmf-dist/doc/latex/oberdiek/accsupp.pdf b/Master/texmf-dist/doc/latex/oberdiek/accsupp.pdf
index dcb60ae8bc9..b969d315562 100644
--- a/Master/texmf-dist/doc/latex/oberdiek/accsupp.pdf
+++ b/Master/texmf-dist/doc/latex/oberdiek/accsupp.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/oberdiek/aliascnt.pdf b/Master/texmf-dist/doc/latex/oberdiek/aliascnt.pdf
index 0a8adc70865..2db5c6b91f4 100644
--- a/Master/texmf-dist/doc/latex/oberdiek/aliascnt.pdf
+++ b/Master/texmf-dist/doc/latex/oberdiek/aliascnt.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/oberdiek/alphalph.pdf b/Master/texmf-dist/doc/latex/oberdiek/alphalph.pdf
index 1333c264528..1e2d6c2af87 100644
--- a/Master/texmf-dist/doc/latex/oberdiek/alphalph.pdf
+++ b/Master/texmf-dist/doc/latex/oberdiek/alphalph.pdf
@@ -4184,7 +4184,7 @@ xref
0000338255 00000 n
0000338319 00000 n
trailer
-<</Size 1131/Root 1 0 R/Compress<</LengthO 421042/SpecO/1.4>>/Info 6 0 R/ID[(ϧb*DPM)(>\r*g=gJQ')]>>
+<</Size 1131/Root 1 0 R/Compress<</LengthO 421042/SpecO/1.4>>/Info 6 0 R/ID[(ϧb*DPM)(7g
startxref
338383
%%EOF
diff --git a/Master/texmf-dist/doc/latex/oberdiek/askinclude.pdf b/Master/texmf-dist/doc/latex/oberdiek/askinclude.pdf
index 6b43e65b565..d7a23c586fe 100644
--- a/Master/texmf-dist/doc/latex/oberdiek/askinclude.pdf
+++ b/Master/texmf-dist/doc/latex/oberdiek/askinclude.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/oberdiek/atbegshi.pdf b/Master/texmf-dist/doc/latex/oberdiek/atbegshi.pdf
index 47c0721531d..efc300786b2 100644
--- a/Master/texmf-dist/doc/latex/oberdiek/atbegshi.pdf
+++ b/Master/texmf-dist/doc/latex/oberdiek/atbegshi.pdf
@@ -4757,7 +4757,8 @@ xref
0000360677 00000 n
0000360741 00000 n
trailer
-<</Size 1343/Root 1 0 R/Compress<</LengthO 464075/SpecO/1.4>>/Info 6 0 R/ID[(թ :jب\r)(ȣN@>yb')]>>
+<</Size 1343/Root 1 0 R/Compress<</LengthO 464075/SpecO/1.4>>/Info 6 0 R/ID[(թ :jب\r)(Q
+C-0duK)]>>
startxref
360805
%%EOF
diff --git a/Master/texmf-dist/doc/latex/oberdiek/atenddvi.pdf b/Master/texmf-dist/doc/latex/oberdiek/atenddvi.pdf
index 8cf79d44377..15541c79c0b 100644
--- a/Master/texmf-dist/doc/latex/oberdiek/atenddvi.pdf
+++ b/Master/texmf-dist/doc/latex/oberdiek/atenddvi.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/oberdiek/attachfile2.pdf b/Master/texmf-dist/doc/latex/oberdiek/attachfile2.pdf
index a644ab5a1bd..60a943e0a60 100644
--- a/Master/texmf-dist/doc/latex/oberdiek/attachfile2.pdf
+++ b/Master/texmf-dist/doc/latex/oberdiek/attachfile2.pdf
@@ -4824,7 +4824,7 @@ xref
0000365451 00000 n
0000365515 00000 n
trailer
-<</Size 1352/Root 1 0 R/Compress<</LengthO 474613/SpecO/1.4>>/Info 6 0 R/ID[(tWO|~0 t[xKc)($kU7oÁ\(J)]>>
+<</Size 1352/Root 1 0 R/Compress<</LengthO 474613/SpecO/1.4>>/Info 6 0 R/ID[(tWO|~0 t[xKc)(n.;BL
startxref
365579
%%EOF
diff --git a/Master/texmf-dist/doc/latex/oberdiek/auxhook.pdf b/Master/texmf-dist/doc/latex/oberdiek/auxhook.pdf
index 5761ab4afc9..aa5d328e889 100644
--- a/Master/texmf-dist/doc/latex/oberdiek/auxhook.pdf
+++ b/Master/texmf-dist/doc/latex/oberdiek/auxhook.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/oberdiek/bigintcalc.pdf b/Master/texmf-dist/doc/latex/oberdiek/bigintcalc.pdf
index 4a44037030e..4a20608c7da 100644
--- a/Master/texmf-dist/doc/latex/oberdiek/bigintcalc.pdf
+++ b/Master/texmf-dist/doc/latex/oberdiek/bigintcalc.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/oberdiek/bitset.pdf b/Master/texmf-dist/doc/latex/oberdiek/bitset.pdf
index bebe2fa99a6..5c9538bb6e8 100644
--- a/Master/texmf-dist/doc/latex/oberdiek/bitset.pdf
+++ b/Master/texmf-dist/doc/latex/oberdiek/bitset.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/oberdiek/bmpsize.pdf b/Master/texmf-dist/doc/latex/oberdiek/bmpsize.pdf
index 87696fcc639..11f93def722 100644
--- a/Master/texmf-dist/doc/latex/oberdiek/bmpsize.pdf
+++ b/Master/texmf-dist/doc/latex/oberdiek/bmpsize.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/oberdiek/bookmark.pdf b/Master/texmf-dist/doc/latex/oberdiek/bookmark.pdf
index 23fbb8a0a72..66fd5e8ef61 100644
--- a/Master/texmf-dist/doc/latex/oberdiek/bookmark.pdf
+++ b/Master/texmf-dist/doc/latex/oberdiek/bookmark.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/oberdiek/catchfile.pdf b/Master/texmf-dist/doc/latex/oberdiek/catchfile.pdf
index 61ba2c3825b..3bd7c37cfac 100644
--- a/Master/texmf-dist/doc/latex/oberdiek/catchfile.pdf
+++ b/Master/texmf-dist/doc/latex/oberdiek/catchfile.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/oberdiek/centernot.pdf b/Master/texmf-dist/doc/latex/oberdiek/centernot.pdf
index d017d5a4581..d32e71e98ae 100644
--- a/Master/texmf-dist/doc/latex/oberdiek/centernot.pdf
+++ b/Master/texmf-dist/doc/latex/oberdiek/centernot.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/oberdiek/chemarr.pdf b/Master/texmf-dist/doc/latex/oberdiek/chemarr.pdf
index bc686560e2c..0a3cb317362 100644
--- a/Master/texmf-dist/doc/latex/oberdiek/chemarr.pdf
+++ b/Master/texmf-dist/doc/latex/oberdiek/chemarr.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/oberdiek/classlist.pdf b/Master/texmf-dist/doc/latex/oberdiek/classlist.pdf
index a7a37884aea..bf7c4818ec4 100644
--- a/Master/texmf-dist/doc/latex/oberdiek/classlist.pdf
+++ b/Master/texmf-dist/doc/latex/oberdiek/classlist.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/oberdiek/colonequals.pdf b/Master/texmf-dist/doc/latex/oberdiek/colonequals.pdf
index cdcc52953ef..3c877ee90cc 100644
--- a/Master/texmf-dist/doc/latex/oberdiek/colonequals.pdf
+++ b/Master/texmf-dist/doc/latex/oberdiek/colonequals.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/oberdiek/dvipscol.pdf b/Master/texmf-dist/doc/latex/oberdiek/dvipscol.pdf
index 1673eada9c5..5fc2afc7463 100644
--- a/Master/texmf-dist/doc/latex/oberdiek/dvipscol.pdf
+++ b/Master/texmf-dist/doc/latex/oberdiek/dvipscol.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/oberdiek/embedfile.pdf b/Master/texmf-dist/doc/latex/oberdiek/embedfile.pdf
index 5d1b1cbc069..2f71b077702 100644
--- a/Master/texmf-dist/doc/latex/oberdiek/embedfile.pdf
+++ b/Master/texmf-dist/doc/latex/oberdiek/embedfile.pdf
@@ -4867,7 +4867,7 @@ xref
0000370643 00000 n
0000370707 00000 n
trailer
-<</Size 1365/Root 1 0 R/Compress<</LengthO 476810/SpecO/1.4>>/Info 6 0 R/ID[(M#?pA?)(^GMlVl[vO)]>>
+<</Size 1365/Root 1 0 R/Compress<</LengthO 476810/SpecO/1.4>>/Info 6 0 R/ID[(M#?pA?)(O֩ *=G[)]>>
startxref
370771
%%EOF
diff --git a/Master/texmf-dist/doc/latex/oberdiek/engord.pdf b/Master/texmf-dist/doc/latex/oberdiek/engord.pdf
index bcbe75e7ffb..92477607119 100644
--- a/Master/texmf-dist/doc/latex/oberdiek/engord.pdf
+++ b/Master/texmf-dist/doc/latex/oberdiek/engord.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/oberdiek/epstopdf.pdf b/Master/texmf-dist/doc/latex/oberdiek/epstopdf.pdf
index df144d7c31c..b90e1a5cca1 100644
--- a/Master/texmf-dist/doc/latex/oberdiek/epstopdf.pdf
+++ b/Master/texmf-dist/doc/latex/oberdiek/epstopdf.pdf
@@ -3487,7 +3487,7 @@ xref
0000290171 00000 n
0000290234 00000 n
trailer
-<</Size 923/Root 1 0 R/Compress<</LengthO 354705/SpecO/1.4>>/Info 6 0 R/ID[(\(6ҊD/q́)(Ȟdža})]>>
+<</Size 923/Root 1 0 R/Compress<</LengthO 354705/SpecO/1.4>>/Info 6 0 R/ID[(\(6ҊD/q́)(GHm\rk^K*D)]>>
startxref
290297
%%EOF
diff --git a/Master/texmf-dist/doc/latex/oberdiek/etexcmds.pdf b/Master/texmf-dist/doc/latex/oberdiek/etexcmds.pdf
index 9e5e4c4c3a9..99e156f8e56 100644
--- a/Master/texmf-dist/doc/latex/oberdiek/etexcmds.pdf
+++ b/Master/texmf-dist/doc/latex/oberdiek/etexcmds.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/oberdiek/flags.pdf b/Master/texmf-dist/doc/latex/oberdiek/flags.pdf
index b5437ef6c2b..e95372d7822 100644
--- a/Master/texmf-dist/doc/latex/oberdiek/flags.pdf
+++ b/Master/texmf-dist/doc/latex/oberdiek/flags.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/oberdiek/grfext.pdf b/Master/texmf-dist/doc/latex/oberdiek/grfext.pdf
index e978c74e8b2..1ffa70f238a 100644
--- a/Master/texmf-dist/doc/latex/oberdiek/grfext.pdf
+++ b/Master/texmf-dist/doc/latex/oberdiek/grfext.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/oberdiek/grffile.pdf b/Master/texmf-dist/doc/latex/oberdiek/grffile.pdf
index 497c244409f..072b1ff2f31 100644
--- a/Master/texmf-dist/doc/latex/oberdiek/grffile.pdf
+++ b/Master/texmf-dist/doc/latex/oberdiek/grffile.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/oberdiek/holtxdoc.pdf b/Master/texmf-dist/doc/latex/oberdiek/holtxdoc.pdf
index d8d5ed8d370..b182dd0dc4b 100644
--- a/Master/texmf-dist/doc/latex/oberdiek/holtxdoc.pdf
+++ b/Master/texmf-dist/doc/latex/oberdiek/holtxdoc.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/oberdiek/hycolor.pdf b/Master/texmf-dist/doc/latex/oberdiek/hycolor.pdf
index 245692ec8e1..4e3621f02e7 100644
--- a/Master/texmf-dist/doc/latex/oberdiek/hycolor.pdf
+++ b/Master/texmf-dist/doc/latex/oberdiek/hycolor.pdf
@@ -5377,7 +5377,7 @@ xref
0000399965 00000 n
0000400028 00000 n
trailer
-<</Size 1511/Root 1 0 R/Compress<</LengthO 520549/SpecO/1.4>>/Info 6 0 R/ID[(%+]-|g0)(:%K]ofC)]>>
+<</Size 1511/Root 1 0 R/Compress<</LengthO 520549/SpecO/1.4>>/Info 6 0 R/ID[(%+]-|g0)(U\(J5ʹ9H)]>>
startxref
400092
%%EOF
diff --git a/Master/texmf-dist/doc/latex/oberdiek/hypbmsec.pdf b/Master/texmf-dist/doc/latex/oberdiek/hypbmsec.pdf
index 471a41fa17c..427ad537aaf 100644
--- a/Master/texmf-dist/doc/latex/oberdiek/hypbmsec.pdf
+++ b/Master/texmf-dist/doc/latex/oberdiek/hypbmsec.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/oberdiek/hypcap.pdf b/Master/texmf-dist/doc/latex/oberdiek/hypcap.pdf
index 7d4f3537630..4fb64b7621c 100644
--- a/Master/texmf-dist/doc/latex/oberdiek/hypcap.pdf
+++ b/Master/texmf-dist/doc/latex/oberdiek/hypcap.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/oberdiek/hypdestopt.pdf b/Master/texmf-dist/doc/latex/oberdiek/hypdestopt.pdf
index 943024499ed..e83ed3729c9 100644
--- a/Master/texmf-dist/doc/latex/oberdiek/hypdestopt.pdf
+++ b/Master/texmf-dist/doc/latex/oberdiek/hypdestopt.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/oberdiek/hypdoc.pdf b/Master/texmf-dist/doc/latex/oberdiek/hypdoc.pdf
index 6c6c920fa05..2e67eda397d 100644
--- a/Master/texmf-dist/doc/latex/oberdiek/hypdoc.pdf
+++ b/Master/texmf-dist/doc/latex/oberdiek/hypdoc.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/oberdiek/hypgotoe.pdf b/Master/texmf-dist/doc/latex/oberdiek/hypgotoe.pdf
index 06a673bfa73..c9247b0abd3 100644
--- a/Master/texmf-dist/doc/latex/oberdiek/hypgotoe.pdf
+++ b/Master/texmf-dist/doc/latex/oberdiek/hypgotoe.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/oberdiek/hyphsubst.pdf b/Master/texmf-dist/doc/latex/oberdiek/hyphsubst.pdf
index c746b86d3a4..ffe442268f8 100644
--- a/Master/texmf-dist/doc/latex/oberdiek/hyphsubst.pdf
+++ b/Master/texmf-dist/doc/latex/oberdiek/hyphsubst.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/oberdiek/ifdraft.pdf b/Master/texmf-dist/doc/latex/oberdiek/ifdraft.pdf
index 51a929985a9..0de36afe72d 100644
--- a/Master/texmf-dist/doc/latex/oberdiek/ifdraft.pdf
+++ b/Master/texmf-dist/doc/latex/oberdiek/ifdraft.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/oberdiek/iflang.pdf b/Master/texmf-dist/doc/latex/oberdiek/iflang.pdf
index e0566408f65..e068b3812ae 100644
--- a/Master/texmf-dist/doc/latex/oberdiek/iflang.pdf
+++ b/Master/texmf-dist/doc/latex/oberdiek/iflang.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/oberdiek/ifluatex.pdf b/Master/texmf-dist/doc/latex/oberdiek/ifluatex.pdf
index 7526623709b..860e2c7d80a 100644
--- a/Master/texmf-dist/doc/latex/oberdiek/ifluatex.pdf
+++ b/Master/texmf-dist/doc/latex/oberdiek/ifluatex.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/oberdiek/ifpdf.pdf b/Master/texmf-dist/doc/latex/oberdiek/ifpdf.pdf
index b738f5d1e3b..aedde5fe1d5 100644
--- a/Master/texmf-dist/doc/latex/oberdiek/ifpdf.pdf
+++ b/Master/texmf-dist/doc/latex/oberdiek/ifpdf.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/oberdiek/ifvtex.pdf b/Master/texmf-dist/doc/latex/oberdiek/ifvtex.pdf
index cd4f2264d86..d1addd8df65 100644
--- a/Master/texmf-dist/doc/latex/oberdiek/ifvtex.pdf
+++ b/Master/texmf-dist/doc/latex/oberdiek/ifvtex.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/oberdiek/infwarerr.pdf b/Master/texmf-dist/doc/latex/oberdiek/infwarerr.pdf
index accca8a983f..25eec074f8f 100644
--- a/Master/texmf-dist/doc/latex/oberdiek/infwarerr.pdf
+++ b/Master/texmf-dist/doc/latex/oberdiek/infwarerr.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/oberdiek/inputenx.pdf b/Master/texmf-dist/doc/latex/oberdiek/inputenx.pdf
index 53a469d3842..b9df7bce39b 100644
--- a/Master/texmf-dist/doc/latex/oberdiek/inputenx.pdf
+++ b/Master/texmf-dist/doc/latex/oberdiek/inputenx.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/oberdiek/intcalc.pdf b/Master/texmf-dist/doc/latex/oberdiek/intcalc.pdf
index d2d050022fb..be79ed47305 100644
--- a/Master/texmf-dist/doc/latex/oberdiek/intcalc.pdf
+++ b/Master/texmf-dist/doc/latex/oberdiek/intcalc.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/oberdiek/kvoptions.pdf b/Master/texmf-dist/doc/latex/oberdiek/kvoptions.pdf
index ad78be16c47..a39c879ca6a 100644
--- a/Master/texmf-dist/doc/latex/oberdiek/kvoptions.pdf
+++ b/Master/texmf-dist/doc/latex/oberdiek/kvoptions.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/oberdiek/kvsetkeys.pdf b/Master/texmf-dist/doc/latex/oberdiek/kvsetkeys.pdf
index 825b89bf09e..287eb8e012b 100644
--- a/Master/texmf-dist/doc/latex/oberdiek/kvsetkeys.pdf
+++ b/Master/texmf-dist/doc/latex/oberdiek/kvsetkeys.pdf
@@ -4262,7 +4262,7 @@ xref
0000327841 00000 n
0000327905 00000 n
trailer
-<</Size 1179/Root 1 0 R/Compress<</LengthO 417806/SpecO/1.4>>/Info 6 0 R/ID[(5myQ6c)(~AW*)]>>
+<</Size 1179/Root 1 0 R/Compress<</LengthO 417806/SpecO/1.4>>/Info 6 0 R/ID[(5myQ6c)(l_Hy`KY
startxref
327969
%%EOF
diff --git a/Master/texmf-dist/doc/latex/oberdiek/letltxmacro.pdf b/Master/texmf-dist/doc/latex/oberdiek/letltxmacro.pdf
index 9bb4fb854be..3b13dcfba43 100644
--- a/Master/texmf-dist/doc/latex/oberdiek/letltxmacro.pdf
+++ b/Master/texmf-dist/doc/latex/oberdiek/letltxmacro.pdf
@@ -3048,7 +3048,7 @@ xref
0000248784 00000 n
0000248847 00000 n
trailer
-<</Size 832/Root 1 0 R/Compress<</LengthO 311214/SpecO/1.4>>/Info 6 0 R/ID[(P11dݠ{:/)(7g?%')]>>
+<</Size 832/Root 1 0 R/Compress<</LengthO 311214/SpecO/1.4>>/Info 6 0 R/ID[(P11dݠ{:/)(UVpDzW!p)]>>
startxref
248910
%%EOF
diff --git a/Master/texmf-dist/doc/latex/oberdiek/listingsutf8.pdf b/Master/texmf-dist/doc/latex/oberdiek/listingsutf8.pdf
index fdd4278246c..c052a7a0bef 100644
--- a/Master/texmf-dist/doc/latex/oberdiek/listingsutf8.pdf
+++ b/Master/texmf-dist/doc/latex/oberdiek/listingsutf8.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/oberdiek/ltxcmds.pdf b/Master/texmf-dist/doc/latex/oberdiek/ltxcmds.pdf
index 3ea482caf4a..39b0ccd8ed4 100644
--- a/Master/texmf-dist/doc/latex/oberdiek/ltxcmds.pdf
+++ b/Master/texmf-dist/doc/latex/oberdiek/ltxcmds.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/oberdiek/luacolor.pdf b/Master/texmf-dist/doc/latex/oberdiek/luacolor.pdf
index ca0e6dc9980..561a227c8f4 100644
--- a/Master/texmf-dist/doc/latex/oberdiek/luacolor.pdf
+++ b/Master/texmf-dist/doc/latex/oberdiek/luacolor.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/oberdiek/luatex.pdf b/Master/texmf-dist/doc/latex/oberdiek/luatex.pdf
index b15b5a589e1..d2d2bc117cf 100644
--- a/Master/texmf-dist/doc/latex/oberdiek/luatex.pdf
+++ b/Master/texmf-dist/doc/latex/oberdiek/luatex.pdf
@@ -4512,7 +4512,7 @@ xref
0000340043 00000 n
0000340107 00000 n
trailer
-<</Size 1249/Root 1 0 R/Compress<</LengthO 433587/SpecO/1.4>>/Info 6 0 R/ID[(6}#3Ng/)(1 D }sr8in)]>>
+<</Size 1249/Root 1 0 R/Compress<</LengthO 433587/SpecO/1.4>>/Info 6 0 R/ID[(6}#3Ng/)(ٖrzTj)]>>
startxref
340171
%%EOF
diff --git a/Master/texmf-dist/doc/latex/oberdiek/magicnum.pdf b/Master/texmf-dist/doc/latex/oberdiek/magicnum.pdf
index 3c058ed07cd..8053c6891a0 100644
--- a/Master/texmf-dist/doc/latex/oberdiek/magicnum.pdf
+++ b/Master/texmf-dist/doc/latex/oberdiek/magicnum.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/oberdiek/makerobust.pdf b/Master/texmf-dist/doc/latex/oberdiek/makerobust.pdf
index 97c24b511be..fb0369dc09e 100644
--- a/Master/texmf-dist/doc/latex/oberdiek/makerobust.pdf
+++ b/Master/texmf-dist/doc/latex/oberdiek/makerobust.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/oberdiek/oberdiek.pdf b/Master/texmf-dist/doc/latex/oberdiek/oberdiek.pdf
index 6a1f1fdcb8f..7a0a182c76a 100644
--- a/Master/texmf-dist/doc/latex/oberdiek/oberdiek.pdf
+++ b/Master/texmf-dist/doc/latex/oberdiek/oberdiek.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/oberdiek/pagesel.pdf b/Master/texmf-dist/doc/latex/oberdiek/pagesel.pdf
index e227bb812af..b58a8f9ce3d 100644
--- a/Master/texmf-dist/doc/latex/oberdiek/pagesel.pdf
+++ b/Master/texmf-dist/doc/latex/oberdiek/pagesel.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/oberdiek/pdfcol.pdf b/Master/texmf-dist/doc/latex/oberdiek/pdfcol.pdf
index 7e24d89253c..8083b32ecf0 100644
--- a/Master/texmf-dist/doc/latex/oberdiek/pdfcol.pdf
+++ b/Master/texmf-dist/doc/latex/oberdiek/pdfcol.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/oberdiek/pdfcolfoot.pdf b/Master/texmf-dist/doc/latex/oberdiek/pdfcolfoot.pdf
index a20c7ca956d..bb1c31e7916 100644
--- a/Master/texmf-dist/doc/latex/oberdiek/pdfcolfoot.pdf
+++ b/Master/texmf-dist/doc/latex/oberdiek/pdfcolfoot.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/oberdiek/pdfcolmk.pdf b/Master/texmf-dist/doc/latex/oberdiek/pdfcolmk.pdf
index 361e407b107..32c0beac735 100644
--- a/Master/texmf-dist/doc/latex/oberdiek/pdfcolmk.pdf
+++ b/Master/texmf-dist/doc/latex/oberdiek/pdfcolmk.pdf
@@ -3424,7 +3424,7 @@ xref
0000265479 00000 n
0000265542 00000 n
trailer
-<</Size 944/Root 1 0 R/Compress<</LengthO 335709/SpecO/1.4>>/Info 6 0 R/ID[(
+<</Size 944/Root 1 0 R/Compress<</LengthO 335709/SpecO/1.4>>/Info 6 0 R/ID[(
startxref
265605
%%EOF
diff --git a/Master/texmf-dist/doc/latex/oberdiek/pdfcolparallel.pdf b/Master/texmf-dist/doc/latex/oberdiek/pdfcolparallel.pdf
index a41b498515d..6d70eec50fb 100644
--- a/Master/texmf-dist/doc/latex/oberdiek/pdfcolparallel.pdf
+++ b/Master/texmf-dist/doc/latex/oberdiek/pdfcolparallel.pdf
@@ -3058,7 +3058,7 @@ xref
0000252212 00000 n
0000252275 00000 n
trailer
-<</Size 817/Root 1 0 R/Compress<</LengthO 312303/SpecO/1.4>>/Info 6 0 R/ID[("VD;bݹ:-[gF1)(|bAk*F\ra)]>>
+<</Size 817/Root 1 0 R/Compress<</LengthO 312303/SpecO/1.4>>/Info 6 0 R/ID[("VD;bݹ:-[gF1)(YM>vj)]>>
startxref
252338
%%EOF
diff --git a/Master/texmf-dist/doc/latex/oberdiek/pdfcolparcolumns.pdf b/Master/texmf-dist/doc/latex/oberdiek/pdfcolparcolumns.pdf
index 24702ec958c..8d0d0052abd 100644
--- a/Master/texmf-dist/doc/latex/oberdiek/pdfcolparcolumns.pdf
+++ b/Master/texmf-dist/doc/latex/oberdiek/pdfcolparcolumns.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/oberdiek/pdfcrypt.pdf b/Master/texmf-dist/doc/latex/oberdiek/pdfcrypt.pdf
index 821af45181b..e323f2abac1 100644
--- a/Master/texmf-dist/doc/latex/oberdiek/pdfcrypt.pdf
+++ b/Master/texmf-dist/doc/latex/oberdiek/pdfcrypt.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/oberdiek/pdfescape.pdf b/Master/texmf-dist/doc/latex/oberdiek/pdfescape.pdf
index 36e4928b9f7..eba9e509237 100644
--- a/Master/texmf-dist/doc/latex/oberdiek/pdfescape.pdf
+++ b/Master/texmf-dist/doc/latex/oberdiek/pdfescape.pdf
@@ -5305,7 +5305,7 @@ xref
0000382603 00000 n
0000382667 00000 n
trailer
-<</Size 1516/Root 1 0 R/Compress<</LengthO 501957/SpecO/1.4>>/Info 6 0 R/ID[(HC+u9.`5)(nԎ0Ȅpi]96)]>>
+<</Size 1516/Root 1 0 R/Compress<</LengthO 501957/SpecO/1.4>>/Info 6 0 R/ID[(HC+u9.`5)(v\rx5]:)]>>
startxref
382731
%%EOF
diff --git a/Master/texmf-dist/doc/latex/oberdiek/pdflscape.pdf b/Master/texmf-dist/doc/latex/oberdiek/pdflscape.pdf
index fb3c35441e6..46e5af80334 100644
--- a/Master/texmf-dist/doc/latex/oberdiek/pdflscape.pdf
+++ b/Master/texmf-dist/doc/latex/oberdiek/pdflscape.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/oberdiek/pdftexcmds.pdf b/Master/texmf-dist/doc/latex/oberdiek/pdftexcmds.pdf
index d56c9e627fc..62e65d5eae1 100644
--- a/Master/texmf-dist/doc/latex/oberdiek/pdftexcmds.pdf
+++ b/Master/texmf-dist/doc/latex/oberdiek/pdftexcmds.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/oberdiek/picture.pdf b/Master/texmf-dist/doc/latex/oberdiek/picture.pdf
index f7e15b42769..11b69f27c10 100644
--- a/Master/texmf-dist/doc/latex/oberdiek/picture.pdf
+++ b/Master/texmf-dist/doc/latex/oberdiek/picture.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/oberdiek/pmboxdraw.pdf b/Master/texmf-dist/doc/latex/oberdiek/pmboxdraw.pdf
index 06c9679ed9d..e349451b5d6 100644
--- a/Master/texmf-dist/doc/latex/oberdiek/pmboxdraw.pdf
+++ b/Master/texmf-dist/doc/latex/oberdiek/pmboxdraw.pdf
@@ -3817,7 +3817,7 @@ xref
0000290240 00000 n
0000290304 00000 n
trailer
-<</Size 1047/Root 1 0 R/Compress<</LengthO 367712/SpecO/1.4>>/Info 6 0 R/ID[(]X|AXH!)(y>F\(V&IT.n_)]>>
+<</Size 1047/Root 1 0 R/Compress<</LengthO 367712/SpecO/1.4>>/Info 6 0 R/ID[(]X|AXH!)(8aqMN)]>>
startxref
290368
%%EOF
diff --git a/Master/texmf-dist/doc/latex/oberdiek/refcount.pdf b/Master/texmf-dist/doc/latex/oberdiek/refcount.pdf
index d4c855c9745..0664dea7c9f 100644
--- a/Master/texmf-dist/doc/latex/oberdiek/refcount.pdf
+++ b/Master/texmf-dist/doc/latex/oberdiek/refcount.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/oberdiek/scrindex.pdf b/Master/texmf-dist/doc/latex/oberdiek/scrindex.pdf
index 063b8730d42..3d6b646f8f8 100644
--- a/Master/texmf-dist/doc/latex/oberdiek/scrindex.pdf
+++ b/Master/texmf-dist/doc/latex/oberdiek/scrindex.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/oberdiek/selinput.pdf b/Master/texmf-dist/doc/latex/oberdiek/selinput.pdf
index 6128a9a3a88..2a15a15e862 100644
--- a/Master/texmf-dist/doc/latex/oberdiek/selinput.pdf
+++ b/Master/texmf-dist/doc/latex/oberdiek/selinput.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/oberdiek/setouterhbox.pdf b/Master/texmf-dist/doc/latex/oberdiek/setouterhbox.pdf
index 5e6be9bfa82..26cbc39a168 100644
--- a/Master/texmf-dist/doc/latex/oberdiek/setouterhbox.pdf
+++ b/Master/texmf-dist/doc/latex/oberdiek/setouterhbox.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/oberdiek/settobox.pdf b/Master/texmf-dist/doc/latex/oberdiek/settobox.pdf
index fa70198a09e..2f9d3d2defc 100644
--- a/Master/texmf-dist/doc/latex/oberdiek/settobox.pdf
+++ b/Master/texmf-dist/doc/latex/oberdiek/settobox.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/oberdiek/soulutf8.pdf b/Master/texmf-dist/doc/latex/oberdiek/soulutf8.pdf
index 4578c5e39e8..d1e8bf4da54 100644
--- a/Master/texmf-dist/doc/latex/oberdiek/soulutf8.pdf
+++ b/Master/texmf-dist/doc/latex/oberdiek/soulutf8.pdf
@@ -5802,7 +5802,7 @@ xref
0000405860 00000 n
0000405924 00000 n
trailer
-<</Size 1670/Root 1 0 R/Compress<</LengthO 541409/SpecO/1.4>>/Info 6 0 R/ID[(3ݚ=mtX7)( ?B9H)]>>
+<</Size 1670/Root 1 0 R/Compress<</LengthO 541409/SpecO/1.4>>/Info 6 0 R/ID[(3ݚ=mtX7)(\\բ-4+)]>>
startxref
405988
%%EOF
diff --git a/Master/texmf-dist/doc/latex/oberdiek/stackrel.pdf b/Master/texmf-dist/doc/latex/oberdiek/stackrel.pdf
index 1cefe81beff..7d03e4741f1 100644
--- a/Master/texmf-dist/doc/latex/oberdiek/stackrel.pdf
+++ b/Master/texmf-dist/doc/latex/oberdiek/stackrel.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/oberdiek/stampinclude.pdf b/Master/texmf-dist/doc/latex/oberdiek/stampinclude.pdf
index 3d146bfd593..7e05b7d9d48 100644
--- a/Master/texmf-dist/doc/latex/oberdiek/stampinclude.pdf
+++ b/Master/texmf-dist/doc/latex/oberdiek/stampinclude.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/oberdiek/stringenc.pdf b/Master/texmf-dist/doc/latex/oberdiek/stringenc.pdf
index 04c1312342f..fc07ec67d99 100644
--- a/Master/texmf-dist/doc/latex/oberdiek/stringenc.pdf
+++ b/Master/texmf-dist/doc/latex/oberdiek/stringenc.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/oberdiek/tabularht.pdf b/Master/texmf-dist/doc/latex/oberdiek/tabularht.pdf
index a7eb9ed8bbe..b5da29c9afe 100644
--- a/Master/texmf-dist/doc/latex/oberdiek/tabularht.pdf
+++ b/Master/texmf-dist/doc/latex/oberdiek/tabularht.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/oberdiek/tabularkv.pdf b/Master/texmf-dist/doc/latex/oberdiek/tabularkv.pdf
index cbd4dc799fb..0f74e513621 100644
--- a/Master/texmf-dist/doc/latex/oberdiek/tabularkv.pdf
+++ b/Master/texmf-dist/doc/latex/oberdiek/tabularkv.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/oberdiek/telprint.pdf b/Master/texmf-dist/doc/latex/oberdiek/telprint.pdf
index bedaa5e5f95..bcdc510b042 100644
--- a/Master/texmf-dist/doc/latex/oberdiek/telprint.pdf
+++ b/Master/texmf-dist/doc/latex/oberdiek/telprint.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/oberdiek/test/uniquecounter-test1.tex b/Master/texmf-dist/doc/latex/oberdiek/test/uniquecounter-test1.tex
new file mode 100644
index 00000000000..bb0c2bd914b
--- /dev/null
+++ b/Master/texmf-dist/doc/latex/oberdiek/test/uniquecounter-test1.tex
@@ -0,0 +1,110 @@
+%%
+%% This is file `uniquecounter-test1.tex',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% uniquecounter.dtx (with options: `test1')
+%%
+%% This is a generated file.
+%%
+%% Copyright (C) 2009 by Heiko Oberdiek <oberdiek@uni-freiburg.de>
+%%
+%% 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.
+%%
+%% This work has the LPPL maintenance status "maintained".
+%%
+%% This Current Maintainer of this work is Heiko Oberdiek.
+%%
+%% This work consists of the main source file uniquecounter.dtx
+%% and the derived files
+%% uniquecounter.sty, uniquecounter.pdf, uniquecounter.ins,
+%% uniquecounter.drv, uniquecounter-example.tex,
+%% uniquecounter-test1.tex, uniquecounter-test2.tex,
+%% uniquecounter-test3.tex.
+%%
+\catcode`\{=1 %
+\catcode`\}=2 %
+\catcode`\#=6 %
+\catcode`\@=11 %
+\expandafter\ifx\csname count@\endcsname\relax
+ \countdef\count@=255 %
+\fi
+\expandafter\ifx\csname @gobble\endcsname\relax
+ \long\def\@gobble#1{}%
+\fi
+\expandafter\ifx\csname @firstofone\endcsname\relax
+ \long\def\@firstofone#1{#1}%
+\fi
+\expandafter\ifx\csname loop\endcsname\relax
+ \expandafter\@firstofone
+\else
+ \expandafter\@gobble
+\fi
+{%
+ \def\loop#1\repeat{%
+ \def\body{#1}%
+ \iterate
+ }%
+ \def\iterate{%
+ \body
+ \let\next\iterate
+ \else
+ \let\next\relax
+ \fi
+ \next
+ }%
+ \let\repeat=\fi
+}%
+\def\RestoreCatcodes{}
+\count@=0 %
+\loop
+ \edef\RestoreCatcodes{%
+ \RestoreCatcodes
+ \catcode\the\count@=\the\catcode\count@\relax
+ }%
+\ifnum\count@<255 %
+ \advance\count@ 1 %
+\repeat
+
+\def\RangeCatcodeInvalid#1#2{%
+ \count@=#1\relax
+ \loop
+ \catcode\count@=15 %
+ \ifnum\count@<#2\relax
+ \advance\count@ 1 %
+ \repeat
+}
+\expandafter\ifx\csname LoadCommand\endcsname\relax
+ \def\LoadCommand{\input uniquecounter.sty\relax}%
+\fi
+\def\Test{%
+ \RangeCatcodeInvalid{0}{47}%
+ \RangeCatcodeInvalid{58}{64}%
+ \RangeCatcodeInvalid{91}{96}%
+ \RangeCatcodeInvalid{123}{255}%
+ \catcode`\@=12 %
+ \catcode`\\=0 %
+ \catcode`\{=1 %
+ \catcode`\}=2 %
+ \catcode`\#=6 %
+ \catcode`\[=12 %
+ \catcode`\]=12 %
+ \catcode`\%=14 %
+ \catcode`\ =10 %
+ \catcode13=5 %
+ \LoadCommand
+ \RestoreCatcodes
+}
+\Test
+\csname @@end\endcsname
+\end
+\endinput
+%%
+%% End of file `uniquecounter-test1.tex'.
diff --git a/Master/texmf-dist/doc/latex/oberdiek/test/uniquecounter-test2.tex b/Master/texmf-dist/doc/latex/oberdiek/test/uniquecounter-test2.tex
new file mode 100644
index 00000000000..a2723e2de28
--- /dev/null
+++ b/Master/texmf-dist/doc/latex/oberdiek/test/uniquecounter-test2.tex
@@ -0,0 +1,102 @@
+%%
+%% This is file `uniquecounter-test2.tex',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% uniquecounter.dtx (with options: `test2')
+%%
+%% This is a generated file.
+%%
+%% Copyright (C) 2009 by Heiko Oberdiek <oberdiek@uni-freiburg.de>
+%%
+%% 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.
+%%
+%% This work has the LPPL maintenance status "maintained".
+%%
+%% This Current Maintainer of this work is Heiko Oberdiek.
+%%
+%% This work consists of the main source file uniquecounter.dtx
+%% and the derived files
+%% uniquecounter.sty, uniquecounter.pdf, uniquecounter.ins,
+%% uniquecounter.drv, uniquecounter-example.tex,
+%% uniquecounter-test1.tex, uniquecounter-test2.tex,
+%% uniquecounter-test3.tex.
+%%
+\NeedsTeXFormat{LaTeX2e}
+\nofiles
+\documentclass{minimal}
+\usepackage{uniquecounter}[2009/09/11]
+\usepackage{qstest}
+\IncludeTests{*}
+\LogTests{log}{*}{*}
+
+\newcommand*{\CheckValue}[2]{%
+ \Expect*{#2}*{\UniqueCounterGet{#1}}%
+}
+\newcommand*{\CheckSpace}[1]{%
+ \sbox0{#1}%
+ \Expect{0.0pt}*{\the\wd0}%
+}
+
+\begin{qstest}{creation}{creation}
+ \CheckSpace{%
+ \UniqueCounterNew{test}%
+ }%
+ \CheckValue{test}{0}%
+\end{qstest}
+
+\begin{qstest}{increment}{increment}
+ \CheckSpace{%
+ \UniqueCounterIncrement{test}%
+ }%
+ \CheckValue{test}{1}%
+ \makeatletter
+ \def\uqc@cnt@test{2147483645}%
+ \CheckValue{test}{2147483645}%
+ \CheckSpace{%
+ \UniqueCounterIncrement{test}%
+ }%
+ \CheckValue{test}{2147483646}%
+ \CheckSpace{%
+ \UniqueCounterIncrement{test}%
+ }%
+ \Expect{true}*{\ifx\uqc@inc\uqc@NumInc true\else false\fi}%
+ \CheckValue{test}{2147483647}%
+ \CheckSpace{%
+ \UniqueCounterIncrement{test}%
+ }%
+ \CheckValue{test}{2147483648}%
+ \CheckSpace{%
+ \UniqueCounterIncrement{test}%
+ }%
+ \CheckValue{test}{2147483649}%
+\end{qstest}
+
+\begin{qstest}{call}{call}
+ \def\CheckCall#1#2{%
+ \Expect{#1}{#2}%
+ }%
+ \CheckSpace{%
+ \UniqueCounterNew{foo}%
+ }%
+ \CheckValue{foo}{0}%
+ \CheckSpace{%
+ \UniqueCounterCall{foo}{\CheckCall}{1}%
+ }%
+ \CheckSpace{%
+ \UniqueCounterCall{foo}{\CheckCall}{2}%
+ }%
+ \CheckValue{foo}{2}%
+\end{qstest}
+
+\csname @@end\endcsname
+\endinput
+%%
+%% End of file `uniquecounter-test2.tex'.
diff --git a/Master/texmf-dist/doc/latex/oberdiek/test/uniquecounter-test3.tex b/Master/texmf-dist/doc/latex/oberdiek/test/uniquecounter-test3.tex
new file mode 100644
index 00000000000..00cb530ec10
--- /dev/null
+++ b/Master/texmf-dist/doc/latex/oberdiek/test/uniquecounter-test3.tex
@@ -0,0 +1,113 @@
+%%
+%% This is file `uniquecounter-test3.tex',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% uniquecounter.dtx (with options: `test3')
+%%
+%% This is a generated file.
+%%
+%% Copyright (C) 2009 by Heiko Oberdiek <oberdiek@uni-freiburg.de>
+%%
+%% 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.
+%%
+%% This work has the LPPL maintenance status "maintained".
+%%
+%% This Current Maintainer of this work is Heiko Oberdiek.
+%%
+%% This work consists of the main source file uniquecounter.dtx
+%% and the derived files
+%% uniquecounter.sty, uniquecounter.pdf, uniquecounter.ins,
+%% uniquecounter.drv, uniquecounter-example.tex,
+%% uniquecounter-test1.tex, uniquecounter-test2.tex,
+%% uniquecounter-test3.tex.
+%%
+\input uniquecounter.sty\relax
+\catcode`\@=11 %
+\def\CheckValue#1#2{%
+ \begingroup
+ \edef\A{#2}%
+ \edef\B{\UniqueCounterGet{#1}}%
+ \ifx\A\B
+ \else
+ \@PackageError{TEST}{Failed: \A\space<> \B}\@ehc
+ \fi
+ \endgroup
+}
+\def\CheckSpace#1{%
+ \setbox0=\hbox{#1}%
+ \ifdim\wd0=\z@
+ \else
+ \@PackageError{TEST}{Failed: 0.0pt <> \the\wd0}\@ehc
+ \fi
+}
+
+\begingroup
+ \CheckSpace{%
+ \UniqueCounterNew{test}%
+ }%
+ \CheckValue{test}{0}%
+\endgroup
+
+\begingroup
+ \CheckSpace{%
+ \UniqueCounterIncrement{test}%
+ }%
+ \CheckValue{test}{1}%
+ \def\uqc@cnt@test{2147483645}%
+ \CheckValue{test}{2147483645}%
+ \CheckSpace{%
+ \UniqueCounterIncrement{test}%
+ }%
+ \CheckValue{test}{2147483646}%
+ \CheckSpace{%
+ \UniqueCounterIncrement{test}%
+ }%
+ \ifx\uqc@inc\uqc@NumInc
+ \else
+ \@PackageError{TEST}{Failed: wrong inc function}\@ehc
+ \fi
+ \CheckValue{test}{2147483647}%
+ \CheckSpace{%
+ \UniqueCounterIncrement{test}%
+ }%
+ \CheckValue{test}{2147483648}%
+ \CheckSpace{%
+ \UniqueCounterIncrement{test}%
+ }%
+ \CheckValue{test}{2147483649}%
+\endgroup
+\begingroup
+ \def\CheckCall#1#2{%
+ \begingroup
+ \def\A{#1}%
+ \def\B{#2}%
+ \ifx\A\B
+ \else
+ \@PackageError{TEST}{Failed: \A\space <> \B}\@ehc
+ \fi
+ \endgroup
+ }%
+ \CheckSpace{%
+ \UniqueCounterNew{foo}%
+ }%
+ \CheckValue{foo}{0}%
+ \CheckSpace{%
+ \UniqueCounterCall{foo}{\CheckCall}{1}%
+ }%
+ \CheckSpace{%
+ \UniqueCounterCall{foo}{\CheckCall}{2}%
+ }%
+ \CheckValue{foo}{2}%
+\endgroup
+\csname @@end\endcsname\end
+\endinput
+%%
+%% End of file `uniquecounter-test3.tex'.
diff --git a/Master/texmf-dist/doc/latex/oberdiek/transparent.pdf b/Master/texmf-dist/doc/latex/oberdiek/transparent.pdf
index 585da424bd2..4fd26ebbb58 100644
--- a/Master/texmf-dist/doc/latex/oberdiek/transparent.pdf
+++ b/Master/texmf-dist/doc/latex/oberdiek/transparent.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/oberdiek/twoopt.pdf b/Master/texmf-dist/doc/latex/oberdiek/twoopt.pdf
index 006d4874d05..3bf88519a5d 100644
--- a/Master/texmf-dist/doc/latex/oberdiek/twoopt.pdf
+++ b/Master/texmf-dist/doc/latex/oberdiek/twoopt.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/oberdiek/uniquecounter-example.tex b/Master/texmf-dist/doc/latex/oberdiek/uniquecounter-example.tex
new file mode 100644
index 00000000000..138a215d910
--- /dev/null
+++ b/Master/texmf-dist/doc/latex/oberdiek/uniquecounter-example.tex
@@ -0,0 +1,56 @@
+%%
+%% This is file `uniquecounter-example.tex',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% uniquecounter.dtx (with options: `example')
+%%
+%% This is a generated file.
+%%
+%% Copyright (C) 2009 by Heiko Oberdiek <oberdiek@uni-freiburg.de>
+%%
+%% 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.
+%%
+%% This work has the LPPL maintenance status "maintained".
+%%
+%% This Current Maintainer of this work is Heiko Oberdiek.
+%%
+%% This work consists of the main source file uniquecounter.dtx
+%% and the derived files
+%% uniquecounter.sty, uniquecounter.pdf, uniquecounter.ins,
+%% uniquecounter.drv, uniquecounter-example.tex,
+%% uniquecounter-test1.tex, uniquecounter-test2.tex,
+%% uniquecounter-test3.tex.
+%%
+\documentclass{minimal}
+\usepackage{uniquecounter}
+\UniqueCounterNew{anchor}
+\makeatletter
+\newcommand*{\DefNewAnchorName}[2]{%
+ % #1 is unique counter value
+ % #2 is name of anchor
+ \@namedef{anchor@#2}{a#1}%
+}
+\newcommand*{\NewAnchorName}[1]{%
+ \UniqueCounterCall{anchor}\DefNewAnchorName{#1}%
+}
+\newcommand*{\PrintAnchorName}[1]{%
+ \@nameuse{anchor@#1}%
+}
+\begin{document}
+ \NewAnchorName{Top}%
+ \NewAnchorName{Left}%
+ \noindent
+ Top: \PrintAnchorName{Top}\\%
+ Left: \PrintAnchorName{Left}%
+\end{document}
+\endinput
+%%
+%% End of file `uniquecounter-example.tex'.
diff --git a/Master/texmf-dist/doc/latex/oberdiek/uniquecounter.pdf b/Master/texmf-dist/doc/latex/oberdiek/uniquecounter.pdf
new file mode 100644
index 00000000000..294217e01df
--- /dev/null
+++ b/Master/texmf-dist/doc/latex/oberdiek/uniquecounter.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/oberdiek/zref.pdf b/Master/texmf-dist/doc/latex/oberdiek/zref.pdf
index 946ac5c1f68..3e0613f928f 100644
--- a/Master/texmf-dist/doc/latex/oberdiek/zref.pdf
+++ b/Master/texmf-dist/doc/latex/oberdiek/zref.pdf
Binary files differ
diff --git a/Master/texmf-dist/source/latex/oberdiek/oberdiek.ins b/Master/texmf-dist/source/latex/oberdiek/oberdiek.ins
index b1634966766..245e3fef6c7 100644
--- a/Master/texmf-dist/source/latex/oberdiek/oberdiek.ins
+++ b/Master/texmf-dist/source/latex/oberdiek/oberdiek.ins
@@ -1,5 +1,5 @@
% oberdiek.ins
-% 2009/09/09
+% 2009/09/22
%
% Copyright (C) 1999, 2001, 2006 by
% Heiko Oberdiek <oberdiek@uni-freiburg.de>
@@ -98,6 +98,7 @@
\batchinput{telprint.dtx}
\batchinput{transparent.dtx}
\batchinput{twoopt.dtx}
+\batchinput{uniquecounter.dtx}
\batchinput{zref.dtx}
\Msg{}
diff --git a/Master/texmf-dist/source/latex/oberdiek/oberdiek.tex b/Master/texmf-dist/source/latex/oberdiek/oberdiek.tex
index f00a678ea32..2e4e70dbb05 100644
--- a/Master/texmf-dist/source/latex/oberdiek/oberdiek.tex
+++ b/Master/texmf-dist/source/latex/oberdiek/oberdiek.tex
@@ -6,7 +6,7 @@
\newcommand*{\Subject}{CTAN:\CTANdir}
\newcommand*{\Author}{Heiko Oberdiek}
\newcommand*{\Email}{oberdiek@uni-freiburg.de}
-\newcommand*{\Date}{2009/09/09}
+\newcommand*{\Date}{2009/09/22}
% Copyright (C) 2006 by
% Heiko Oberdiek <oberdiek@uni-freiburg.de>
@@ -279,7 +279,7 @@
[\entrysep]
\entry{pdflscape}{2008/08/11}{0.10}{Landscape pages in PDF}%
[\entrysep]
-\entry{pdftexcmds}{2009/04/10}{0.4}{LuaTeX support for pdfTeX utility functions}%
+\entry{pdftexcmds}{2009/09/22}{0.5}{LuaTeX support for pdfTeX utility functions}%
[\entrysep]
\entry{picture}{2008/11/26}{1.2}{Dimens for picture macros}%
[\entrysep]
@@ -313,6 +313,8 @@
[\entrysep]
\entry{twoopt}{2008/08/11}{1.5}{Definitions with two optional arguments}%
[\entrysep]
+\entry{uniquecounter}{2009/09/11}{1.0}{Provides unlimited unique counter}%
+[\entrysep]
\entry{zref}{2009/08/07}{2.4}{New reference scheme for \LaTeXe{}}%
\end{overview}
@@ -1100,6 +1102,16 @@ optional arguments.
\tocinclude{twoopt}
\newpage
+\subsection{\pkgsectformat{uniquecounter}}
+\label{uniquecounter}
+\begin{abstract}
+This package provides a kind of counter that provides unique
+number values. Several counter can be created by different names.
+The numeric values are not limited.
+\end{abstract}
+\tocinclude{uniquecounter}
+
+\newpage
\subsection{\pkgsectformat{zref}}
\label{zref}
\begin{abstract}
diff --git a/Master/texmf-dist/source/latex/oberdiek/pdftexcmds.dtx b/Master/texmf-dist/source/latex/oberdiek/pdftexcmds.dtx
index 85b7968861c..4d1c09c4b5d 100644
--- a/Master/texmf-dist/source/latex/oberdiek/pdftexcmds.dtx
+++ b/Master/texmf-dist/source/latex/oberdiek/pdftexcmds.dtx
@@ -69,7 +69,7 @@
\input docstrip.tex
\Msg{************************************************************************}
\Msg{* Installation}
-\Msg{* Package: pdftexcmds 2009/04/10 v0.4 LuaTeX support for pdfTeX utility functions (HO)}
+\Msg{* Package: pdftexcmds 2009/09/22 v0.5 LuaTeX support for pdfTeX utility functions (HO)}
\Msg{************************************************************************}
\keepsilent
@@ -147,7 +147,7 @@ and the derived files
%<*driver>
\NeedsTeXFormat{LaTeX2e}
\ProvidesFile{pdftexcmds.drv}%
- [2009/04/10 v0.4 LuaTeX support for pdfTeX utility functions (HO)]%
+ [2009/09/22 v0.5 LuaTeX support for pdfTeX utility functions (HO)]%
\documentclass{ltxdoc}
\usepackage{holtxdoc}[2008/08/11]
\usepackage{paralist}
@@ -157,7 +157,7 @@ and the derived files
%</driver>
% \fi
%
-% \CheckSum{571}
+% \CheckSum{752}
%
% \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
@@ -178,7 +178,7 @@ and the derived files
% \GetFileInfo{pdftexcmds.drv}
%
% \title{The \xpackage{pdftexcmds} package}
-% \date{2009/04/10 v0.4}
+% \date{2009/09/22 v0.5}
% \author{Heiko Oberdiek\\\xemail{oberdiek@uni-freiburg.de}}
%
% \maketitle
@@ -191,6 +191,8 @@ and the derived files
%
% \tableofcontents
%
+% \def\csi#1{\texttt{\textbackslash\textit{#1}}}
+%
% \section{Documentation}
%
% Some primitives of \pdfTeX\ are not defined by \LuaTeX.
@@ -225,8 +227,9 @@ and the derived files
% macro expansion. Example:
% \begin{quote}
% |\expandafter\foo\pdffilemoddate{file}|\\
-% vs.
-% |\expandafter\expandafter\expandafter\foo\pdf@filemoddate{file}|.
+% vs.\\
+% |\expandafter\expandafter\expandafter|\\
+% |\foo\pdf@filemoddate{file}|
% \end{quote}
% \end{itemize}
%
@@ -247,10 +250,16 @@ and the derived files
% The macro |\pdf@|\meta{cmd} is expandable if the
% corresponding \pdfTeX\ primitive has this property.
% Exact two expansion steps are necessary (first is the macro
-% expansion).
+% expansion) except for \cs{pdf@primitive} and \cs{pdf@ifprimitive}.
+% The latter ones are not macros, but have the direct meaning of the
+% primitive.
% \item[Without \LuaTeX:]
% The macros |\pdf@|\meta{cmd} are mapped to the commands
% of \pdfTeX\ if they are available. Otherwise they are undefined.
+% \item[Availability:]
+% The macros that the packages provides are undefined, if
+% the necessary primitives are not found and cannot be
+% implemented by Lua.
% \end{description}
%
% \subsection{Macros}
@@ -317,6 +326,18 @@ and the derived files
% Does it make sense to provide an user interface to
% this status exit code?
%
+% \begin{declcs}{pdf@primitive} \csi{cmd}
+% \end{declcs}
+% Same as \cs{pdfprimitive} in \pdfTeX\ or \LuaTeX. In \XeTeX\ the
+% primitive is called \cs{primitive}. Despite the current definition
+% of the command \csi{cmd}, it's meaning as primitive is used.
+%
+% \begin{declcs}{pdf@ifprimitive} \csi{cmd}
+% \end{declcs}
+% Same as \cs{ifpdfprimitive} in \pdfTeX\ or \LuaTeX. \XeTeX\ calls
+% it \cs{ifprimitive}. It is a switch that checks if the command
+% \csi{cmd} has it's primitive meaning.
+%
% \subsubsection{Experimental}
%
% \begin{declcs}{pdf@unescapehexnative} \M{string}\\
@@ -414,7 +435,7 @@ and the derived files
\fi
\expandafter\x\csname ver@pdftexcmds.sty\endcsname
\ProvidesPackage{pdftexcmds}%
- [2009/04/10 v0.4 LuaTeX support for pdfTeX utility functions (HO)]
+ [2009/09/22 v0.5 LuaTeX support for pdfTeX utility functions (HO)]
% \end{macrocode}
%
% \subsection{Catcodes}
@@ -463,6 +484,11 @@ and the derived files
\TMP@EnsureCode{95}{12}% _ (other)
\TMP@EnsureCode{96}{12}% `
\TMP@EnsureCode{126}{12}% ~ (other)
+\edef\pdftexcmds@AtEnd{%
+ \pdftexcmds@AtEnd
+ \escapechar=\number\escapechar\relax
+}
+\escapechar=92 %
% \end{macrocode}
%
% \subsection{Load package \xpackage{infwarerr}}
@@ -483,7 +509,7 @@ and the derived files
% \begin{macrocode}
\ifluatex
\else
- \@PackageInfo{pdftexcmds}{LuaTeX not detected}%
+ \@PackageInfoNoLine{pdftexcmds}{LuaTeX not detected}%
\def\pdftexcmds@nopdftex{%
\@PackageInfoNoLine{pdftexcmds}{pdfTeX >= 1.30 not detected}%
\let\pdftexcmds@nopdftex\relax
@@ -535,22 +561,175 @@ and the derived files
\def\pdf@system#{%
\immediate\write18%
}%
- \pdftexcmds@AtEnd
- \expandafter\endinput
\fi
% \end{macrocode}
%
+% \subsection{\cs{pdf@primitive}, \cs{pdf@ifprimitive}}
+%
+% Since version 1.40.0 \pdfTeX\ has \cs{pdfprimitive} and
+% \cs{ifpdfprimitive}. And \cs{pdfprimitive} was fixed in
+% version 1.40.4.
+%
+% \XeTeX\ provides them under the name \cs{primitive} and
+% \cs{ifprimitive}. \LuaTeX\ knows both name variants,
+% but they have possibly to be enabled first (|tex.enableprimitives|).
+%
+% Depending on the format TeX Live uses a prefix |luatex|.
+%
+% Caution: \cs{let} must be used for the definition of
+% the macros, especially because of \cs{ifpdfprimitive}.
+%
+% \subsubsection{Using \LuaTeX's \texttt{tex.enableprimitives}}
+%
+% \begin{macrocode}
+\ifluatex
+% \end{macrocode}
% \begin{macro}{\pdftexcmds@directlua}
% \begin{macrocode}
-\ifnum\luatexversion<36 %
- \def\pdftexcmds@directlua{\directlua0 }%
-\else
- \let\pdftexcmds@directlua\directlua
+ \ifnum\luatexversion<36 %
+ \def\pdftexcmds@directlua{\directlua0 }%
+ \else
+ \let\pdftexcmds@directlua\directlua
+ \fi
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+ \begingroup
+ \newlinechar=10 %
+ \endlinechar=\newlinechar
+ \pdftexcmds@directlua{%
+ if tex.enableprimitives then
+ tex.enableprimitives('pdf@', {'primitive', 'ifprimitive'})
+ end
+ }%
+ \endgroup %
+% \end{macrocode}
+%
+% \begin{macrocode}
\fi
% \end{macrocode}
+%
+% \subsubsection{Trying various names to find the primitives}
+%
+% \begin{macro}{\pdftexcmds@strip@prefix}
+% \begin{macrocode}
+\def\pdftexcmds@strip@prefix#1>{}
+% \end{macrocode}
+% \end{macro}
+% \begin{macrocode}
+\def\pdftexcmds@temp#1#2#3{%
+ \begingroup\expandafter\expandafter\expandafter\endgroup
+ \expandafter\ifx\csname pdf@#1\endcsname\relax
+ \begingroup
+ \def\x{#3}%
+ \edef\x{\expandafter\pdftexcmds@strip@prefix\meaning\x}%
+ \escapechar=-1 %
+ \edef\y{\expandafter\meaning\csname#2\endcsname}%
+ \expandafter\endgroup
+ \ifx\x\y
+ \expandafter\let\csname pdf@#1\expandafter\endcsname
+ \csname #2\endcsname
+ \fi
+ \fi
+}
+% \end{macrocode}
+%
+% \begin{macro}{\pdf@primitive}
+% \begin{macrocode}
+\pdftexcmds@temp{primitive}{pdfprimitive}{pdfprimitive}% pdfTeX, LuaTeX
+\pdftexcmds@temp{primitive}{primitive}{primitive}% XeTeX
+\pdftexcmds@temp{primitive}{luatexprimitive}{pdfprimitive}% LuaTeX
+\pdftexcmds@temp{primitive}{luatexpdfprimitive}{pdfprimitive}% LuaTeX
+% \end{macrocode}
+% \end{macro}
+% \begin{macro}{\pdf@ifprimitive}
+% \begin{macrocode}
+\pdftexcmds@temp{ifprimitive}{ifpdfprimitive}{ifpdfprimitive}% pdfTeX, LuaTeX
+\pdftexcmds@temp{ifprimitive}{ifprimitive}{ifprimitive}% XeTeX
+\pdftexcmds@temp{ifprimitive}{luatexifprimitive}{ifpdfprimitive}% LuaTeX
+\pdftexcmds@temp{ifprimitive}{luatexifpdfprimitive}{ifpdfprimitive}% LuaTeX
+% \end{macrocode}
% \end{macro}
%
-% \subsection{Load module}
+% Disable broken \cs{pdfprimitive}.
+% \begin{macrocode}
+\begingroup
+ \expandafter\ifx\csname pdf@primitive\endcsname\relax
+ \else
+ \expandafter\ifx\csname pdftexversion\endcsname\relax
+ \else
+ \ifnum\pdftexversion=140 %
+ \expandafter\ifx\csname pdftexrevision\endcsname\relax
+ \else
+ \ifnum\pdftexrevision<4 %
+ \endgroup
+ \let\pdf@primitive\@undefined
+ \@PackageInfoNoLine{pdftexcmds}{%
+ \string\pdf@primitive disabled, because\MessageBreak
+ \string\pdfprimitive\space is broken until pdfTeX 1.40.4%
+ }%
+ \begingroup
+ \fi
+ \fi
+ \fi
+ \fi
+ \fi
+\endgroup
+% \end{macrocode}
+%
+% \subsubsection{Result}
+%
+% \begin{macrocode}
+\begingroup
+ \@PackageInfoNoLine{pdftexcmds}{%
+ \string\pdf@primitive\space is %
+ \expandafter\ifx\csname pdf@primitive\endcsname\relax not \fi
+ available%
+ }%
+ \@PackageInfoNoLine{pdftexcmds}{%
+ \string\pdf@ifprimitive\space is %
+ \expandafter\ifx\csname pdf@ifprimitive\endcsname\relax not \fi
+ available%
+ }%
+\endgroup
+% \end{macrocode}
+%
+% \subsection{Xe\TeX}
+%
+% Look for primitives \cs{shellescape}, \cs{strcmp}.
+% \begin{macrocode}
+\def\pdftexcmds@temp#1{%
+ \begingroup\expandafter\expandafter\expandafter\endgroup
+ \expandafter\ifx\csname pdf@#1\endcsname\relax
+ \begingroup
+ \escapechar=-1 %
+ \edef\x{\expandafter\meaning\csname#1\endcsname}%
+ \def\y{#1}%
+ \def\z##1->{}%
+ \edef\y{\expandafter\z\meaning\y}%
+ \expandafter\endgroup
+ \ifx\x\y
+ \expandafter\def\csname pdf@#1\expandafter\endcsname
+ \expandafter{%
+ \csname#1\endcsname
+ }%
+ \fi
+ \fi
+}%
+\pdftexcmds@temp{shellescape}%
+\pdftexcmds@temp{strcmp}%
+% \end{macrocode}
+%
+% \begin{macrocode}
+\ifluatex
+\else
+ \pdftexcmds@AtEnd
+ \expandafter\endinput
+\fi
+% \end{macrocode}
+%
+% \subsection{Load Lua module}
%
% \begin{macrocode}
\begingroup\expandafter\expandafter\expandafter\endgroup
@@ -1377,6 +1556,14 @@ end
% Adaptation for syntax change of \cs{directlua} in
% \LuaTeX\ 0.36.
% \end{Version}
+% \begin{Version}{2009/09/22 v0.5}
+% \item
+% \cs{pdf@primitive}, \cs{pdf@ifprimitive} added.
+% \item
+% \XeTeX's variants are detected for
+% \cs{pdf@shellescape}, \cs{pdf@strcmp}, \cs{pdf@primitive},
+% \cs{pdf@ifprimitive}.
+% \end{Version}
% \end{History}
%
% \PrintIndex
diff --git a/Master/texmf-dist/source/latex/oberdiek/uniquecounter.dtx b/Master/texmf-dist/source/latex/oberdiek/uniquecounter.dtx
new file mode 100644
index 00000000000..d0c67ca30bc
--- /dev/null
+++ b/Master/texmf-dist/source/latex/oberdiek/uniquecounter.dtx
@@ -0,0 +1,925 @@
+% \iffalse meta-comment
+%
+% Copyright (C) 2009 by Heiko Oberdiek <oberdiek@uni-freiburg.de>
+%
+% 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.
+%
+% This work has the LPPL maintenance status "maintained".
+%
+% This Current Maintainer of this work is Heiko Oberdiek.
+%
+% This work consists of the main source file uniquecounter.dtx
+% and the derived files
+% uniquecounter.sty, uniquecounter.pdf, uniquecounter.ins,
+% uniquecounter.drv, uniquecounter-example.tex,
+% uniquecounter-test1.tex, uniquecounter-test2.tex,
+% uniquecounter-test3.tex.
+%
+% Distribution:
+% CTAN:macros/latex/contrib/oberdiek/uniquecounter.dtx
+% CTAN:macros/latex/contrib/oberdiek/uniquecounter.pdf
+%
+% Unpacking:
+% (a) If uniquecounter.ins is present:
+% tex uniquecounter.ins
+% (b) Without uniquecounter.ins:
+% tex uniquecounter.dtx
+% (c) If you insist on using LaTeX
+% latex \let\install=y\input{uniquecounter.dtx}
+% (quote the arguments according to the demands of your shell)
+%
+% Documentation:
+% (a) If uniquecounter.drv is present:
+% latex uniquecounter.drv
+% (b) Without uniquecounter.drv:
+% latex uniquecounter.dtx; ...
+% The class ltxdoc loads the configuration file ltxdoc.cfg
+% if available. Here you can specify further options, e.g.
+% use A4 as paper format:
+% \PassOptionsToClass{a4paper}{article}
+%
+% Programm calls to get the documentation (example):
+% pdflatex uniquecounter.dtx
+% makeindex -s gind.ist uniquecounter.idx
+% pdflatex uniquecounter.dtx
+% makeindex -s gind.ist uniquecounter.idx
+% pdflatex uniquecounter.dtx
+%
+% Installation:
+% TDS:tex/generic/oberdiek/uniquecounter.sty
+% TDS:doc/latex/oberdiek/uniquecounter.pdf
+% TDS:doc/latex/oberdiek/uniquecounter-example.tex
+% TDS:doc/latex/oberdiek/test/uniquecounter-test1.tex
+% TDS:doc/latex/oberdiek/test/uniquecounter-test2.tex
+% TDS:doc/latex/oberdiek/test/uniquecounter-test3.tex
+% TDS:source/latex/oberdiek/uniquecounter.dtx
+%
+%<*ignore>
+\begingroup
+ \def\x{LaTeX2e}%
+\expandafter\endgroup
+\ifcase 0\ifx\install y1\fi\expandafter
+ \ifx\csname processbatchFile\endcsname\relax\else1\fi
+ \ifx\fmtname\x\else 1\fi\relax
+\else\csname fi\endcsname
+%</ignore>
+%<*install>
+\input docstrip.tex
+\Msg{************************************************************************}
+\Msg{* Installation}
+\Msg{* Package: uniquecounter 2009/09/11 v1.0 Provides unlimited unique counter (HO)}
+\Msg{************************************************************************}
+
+\keepsilent
+\askforoverwritefalse
+
+\let\MetaPrefix\relax
+\preamble
+
+This is a generated file.
+
+Copyright (C) 2009 by Heiko Oberdiek <oberdiek@uni-freiburg.de>
+
+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.
+
+This work has the LPPL maintenance status "maintained".
+
+This Current Maintainer of this work is Heiko Oberdiek.
+
+This work consists of the main source file uniquecounter.dtx
+and the derived files
+ uniquecounter.sty, uniquecounter.pdf, uniquecounter.ins,
+ uniquecounter.drv, uniquecounter-example.tex,
+ uniquecounter-test1.tex, uniquecounter-test2.tex,
+ uniquecounter-test3.tex.
+
+\endpreamble
+\let\MetaPrefix\DoubleperCent
+
+\generate{%
+ \file{uniquecounter.ins}{\from{uniquecounter.dtx}{install}}%
+ \file{uniquecounter.drv}{\from{uniquecounter.dtx}{driver}}%
+ \usedir{tex/generic/oberdiek}%
+ \file{uniquecounter.sty}{\from{uniquecounter.dtx}{package}}%
+ \usedir{doc/latex/oberdiek}%
+ \file{uniquecounter-example.tex}{\from{uniquecounter.dtx}{example}}%
+ \usedir{doc/latex/oberdiek/test}%
+ \file{uniquecounter-test1.tex}{\from{uniquecounter.dtx}{test1}}%
+ \file{uniquecounter-test2.tex}{\from{uniquecounter.dtx}{test2}}%
+ \file{uniquecounter-test3.tex}{\from{uniquecounter.dtx}{test3}}%
+}
+
+\obeyspaces
+\Msg{************************************************************************}
+\Msg{*}
+\Msg{* To finish the installation you have to move the following}
+\Msg{* file into a directory searched by TeX:}
+\Msg{*}
+\Msg{* uniquecounter.sty}
+\Msg{*}
+\Msg{* And install the following script file:}
+\Msg{*}
+\Msg{* }
+\Msg{*}
+\Msg{* To produce the documentation run the file `uniquecounter.drv'}
+\Msg{* through LaTeX.}
+\Msg{*}
+\Msg{* Happy TeXing!}
+\Msg{*}
+\Msg{************************************************************************}
+
+\endbatchfile
+%</install>
+%<*ignore>
+\fi
+%</ignore>
+%<*driver>
+\NeedsTeXFormat{LaTeX2e}
+\ProvidesFile{uniquecounter.drv}%
+ [2009/09/11 v1.0 Provides unlimited unique counter (HO)]%
+\documentclass{ltxdoc}
+\usepackage{holtxdoc}[2008/08/11]
+\begin{document}
+ \DocInput{uniquecounter.dtx}%
+\end{document}
+%</driver>
+% \fi
+%
+% \CheckSum{617}
+%
+% \CharacterTable
+% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z
+% Lower-case \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z
+% Digits \0\1\2\3\4\5\6\7\8\9
+% Exclamation \! Double quote \" Hash (number) \#
+% Dollar \$ Percent \% Ampersand \&
+% Acute accent \' Left paren \( Right paren \)
+% Asterisk \* Plus \+ Comma \,
+% Minus \- Point \. Solidus \/
+% Colon \: Semicolon \; Less than \<
+% Equals \= Greater than \> Question mark \?
+% Commercial at \@ Left bracket \[ Backslash \\
+% Right bracket \] Circumflex \^ Underscore \_
+% Grave accent \` Left brace \{ Vertical bar \|
+% Right brace \} Tilde \~}
+%
+% \GetFileInfo{uniquecounter.drv}
+%
+% \title{The \xpackage{uniquecounter} package}
+% \date{2009/09/11 v1.0}
+% \author{Heiko Oberdiek\\\xemail{oberdiek@uni-freiburg.de}}
+%
+% \maketitle
+%
+% \begin{abstract}
+% This package provides a kind of counter that provides unique
+% number values. Several counter can be created by different names.
+% The numeric values are not limited.
+% \end{abstract}
+%
+% \tableofcontents
+%
+% \section{Documentation}
+%
+% \begin{declcs}{UniqueCounterNew} \M{name}
+% \end{declcs}
+% Macro \cs{UniqueCounterNew} creates a new unique counter \meta{name}.
+% An error is thrown, if the counter already exists.
+%
+% \begin{declcs}{UniqueCounterCall} \M{name} \M{code}
+% \end{declcs}
+% Macro \cs{UniqueCounterCall} calls the given \meta{code} with a new
+% value of counter \meta{name} as argument.
+%
+% \begin{declcs}{UniqueCounterIncrement} \M{name}
+% \end{declcs}
+% Macro \cs{UniqueCounterIncrement} generates a new value for the counter
+% \meta{name}
+% by incrementing by one (globally).
+%
+% \begin{declcs}{UniqueCounterGet} \M{name}
+% \end{declcs}
+% Expandable macro \cs{UniqueCounterGet} returns the current value
+% of counter \meta{name}
+%
+% \subsection{Example}
+%
+% \begin{macrocode}
+%<*example>
+\documentclass{minimal}
+\usepackage{uniquecounter}
+\UniqueCounterNew{anchor}
+\makeatletter
+\newcommand*{\DefNewAnchorName}[2]{%
+ % #1 is unique counter value
+ % #2 is name of anchor
+ \@namedef{anchor@#2}{a#1}%
+}
+\newcommand*{\NewAnchorName}[1]{%
+ \UniqueCounterCall{anchor}\DefNewAnchorName{#1}%
+}
+\newcommand*{\PrintAnchorName}[1]{%
+ \@nameuse{anchor@#1}%
+}
+\begin{document}
+ \NewAnchorName{Top}%
+ \NewAnchorName{Left}%
+ \noindent
+ Top: \PrintAnchorName{Top}\\%
+ Left: \PrintAnchorName{Left}%
+\end{document}
+%</example>
+% \end{macrocode}
+%
+% \StopEventually{
+% }
+%
+% \section{Implementation}
+%
+% \begin{macrocode}
+%<*package>
+% \end{macrocode}
+%
+% \subsection{Reload check and package identification}
+% Reload check, especially if the package is not used with \LaTeX.
+% \begin{macrocode}
+\begingroup
+ \catcode44 12 % ,
+ \catcode45 12 % -
+ \catcode46 12 % .
+ \catcode58 12 % :
+ \catcode64 11 % @
+ \catcode123 1 % {
+ \catcode125 2 % }
+ \expandafter\let\expandafter\x\csname ver@uniquecounter.sty\endcsname
+ \ifx\x\relax % plain-TeX, first loading
+ \else
+ \def\empty{}%
+ \ifx\x\empty % LaTeX, first loading,
+ % variable is initialized, but \ProvidesPackage not yet seen
+ \else
+ \catcode35 6 % #
+ \expandafter\ifx\csname PackageInfo\endcsname\relax
+ \def\x#1#2{%
+ \immediate\write-1{Package #1 Info: #2.}%
+ }%
+ \else
+ \def\x#1#2{\PackageInfo{#1}{#2, stopped}}%
+ \fi
+ \x{uniquecounter}{The package is already loaded}%
+ \aftergroup\endinput
+ \fi
+ \fi
+\endgroup
+% \end{macrocode}
+% Package identification:
+% \begin{macrocode}
+\begingroup
+ \catcode35 6 % #
+ \catcode40 12 % (
+ \catcode41 12 % )
+ \catcode44 12 % ,
+ \catcode45 12 % -
+ \catcode46 12 % .
+ \catcode47 12 % /
+ \catcode58 12 % :
+ \catcode64 11 % @
+ \catcode91 12 % [
+ \catcode93 12 % ]
+ \catcode123 1 % {
+ \catcode125 2 % }
+ \expandafter\ifx\csname ProvidesPackage\endcsname\relax
+ \def\x#1#2#3[#4]{\endgroup
+ \immediate\write-1{Package: #3 #4}%
+ \xdef#1{#4}%
+ }%
+ \else
+ \def\x#1#2[#3]{\endgroup
+ #2[{#3}]%
+ \ifx#1\@undefined
+ \xdef#1{#3}%
+ \fi
+ \ifx#1\relax
+ \xdef#1{#3}%
+ \fi
+ }%
+ \fi
+\expandafter\x\csname ver@uniquecounter.sty\endcsname
+\ProvidesPackage{uniquecounter}%
+ [2009/09/11 v1.0 Provides unlimited unique counter (HO)]
+% \end{macrocode}
+%
+% \subsection{Catcodes}
+%
+% \begin{macrocode}
+\begingroup
+ \catcode123 1 % {
+ \catcode125 2 % }
+ \def\x{\endgroup
+ \expandafter\edef\csname uqc@AtEnd\endcsname{%
+ \catcode35 \the\catcode35\relax
+ \catcode64 \the\catcode64\relax
+ \catcode123 \the\catcode123\relax
+ \catcode125 \the\catcode125\relax
+ }%
+ }%
+\x
+\catcode35 6 % #
+\catcode64 11 % @
+\catcode123 1 % {
+\catcode125 2 % }
+\def\TMP@EnsureCode#1#2{%
+ \edef\uqc@AtEnd{%
+ \uqc@AtEnd
+ \catcode#1 \the\catcode#1\relax
+ }%
+ \catcode#1 #2\relax
+}
+\TMP@EnsureCode{33}{12}% !
+\TMP@EnsureCode{39}{12}% '
+\TMP@EnsureCode{42}{12}% *
+\TMP@EnsureCode{43}{12}% +
+\TMP@EnsureCode{46}{12}% .
+\TMP@EnsureCode{47}{12}% /
+\TMP@EnsureCode{61}{12}% =
+\TMP@EnsureCode{96}{12}% `
+% \end{macrocode}
+%
+% \begin{macrocode}
+\begingroup\expandafter\expandafter\expandafter\endgroup
+\expandafter\ifx\csname RequirePackage\endcsname\relax
+ \input bigintcalc.sty\relax
+ \input infwarerr.sty\relax
+\else
+ \RequirePackage{bigintcalc}[2007/11/11]%
+ \RequirePackage{infwarerr}[2007/09/09]%
+\fi
+% \end{macrocode}
+%
+% \begin{macro}{\uqc@IncNum}
+% \begin{macrocode}
+\begingroup\expandafter\expandafter\expandafter\endgroup
+\expandafter\ifx\csname numexpr\endcsname\relax
+ \def\uqc@IncNum#1{%
+ \begingroup
+ \count@=\csname uqc@cnt@#1\endcsname\relax
+ \advance\count@\@ne
+ \expandafter\xdef\csname uqc@cnt@#1\endcsname{%
+ \number\count@
+ }%
+ \ifnum\count@=2147483647 %
+ \global\expandafter\let\csname uqc@inc@#1\endcsname
+ \uqc@IncBig
+ \fi
+ \endgroup
+ }%
+\else
+ \def\uqc@IncNum#1{%
+ \expandafter\xdef\csname uqc@cnt@#1\endcsname{%
+ \number\numexpr\csname uqc@cnt@#1\endcsname+1%
+ }%
+ \ifnum\csname uqc@cnt@#1\endcsname=2147483647 %
+ \global\expandafter\let\csname uqc@inc@#1\endcsname
+ \uqc@IncBig
+ \fi
+ }%
+\fi
+% \end{macrocode}
+% \end{macro}
+% \begin{macro}{\uqc@IncBig}
+% \begin{macrocode}
+\def\uqc@IncBig#1{%
+ \expandafter\xdef\csname uqc@cnt@#1\endcsname{%
+ \expandafter\expandafter\expandafter
+ \BigIntCalcInc\csname uqc@cnt@#1\endcsname!%
+ }%
+}
+% \end{macrocode}
+% \end{macro}
+% \begin{macro}{\uqc@Def}
+% \begin{macrocode}
+\begingroup\expandafter\expandafter\expandafter\endgroup
+\expandafter\ifx\csname newcommand\endcsname\relax
+ \def\uqc@Def#1{\def#1##1}%
+\else
+ \def\uqc@Def#1{\newcommand*{#1}[1]}%
+\fi
+% \end{macrocode}
+% \end{macro}
+% \begin{macro}{\UniqueCounterNew}
+% \begin{macrocode}
+\uqc@Def\UniqueCounterNew{%
+ \expandafter\ifx\csname uqc@cnt@#1\endcsname\relax
+ \expandafter\xdef\csname uqc@cnt@#1\endcsname{0}%
+ \global\expandafter\let\csname uqc@inc@#1\endcsname\uqc@IncNum
+ \@PackageInfo{uniquecounter}{New unique counter `#1'}%
+ \else
+ \@PackageError{uniquecounter}{Unique counter `#1' is already defined}\@ehc
+ \fi
+}
+% \end{macrocode}
+% \end{macro}
+% \begin{macro}{\UniqueCounterIncrement}
+% \begin{macrocode}
+\uqc@Def\UniqueCounterIncrement{%
+ \expandafter\ifx\csname uqc@cnt@#1\endcsname\relax
+ \@PackageError{uniquecounter}{Unique counter `#1' is undefined}\@ehc
+ \else
+ \csname uqc@inc@#1\endcsname{#1}%
+ \fi
+}
+% \end{macrocode}
+% \end{macro}
+% \begin{macro}{\UniqueCounterGet}
+% \begin{macrocode}
+\uqc@Def\UniqueCounterGet{%
+ \csname uqc@cnt@#1\endcsname
+}
+% \end{macrocode}
+% \end{macro}
+% \begin{macro}{\UniqueCounterCall}
+% \begin{macrocode}
+\uqc@Def\UniqueCounterCall{%
+ \expandafter\ifx\csname uqc@cnt@#1\endcsname\relax
+ \@PackageError{uniquecounter}{Unique counter `#1' is undefined}\@ehc
+ \expandafter\uqc@Call\expandafter0%
+ \else
+ \UniqueCounterIncrement{#1}%
+ \expandafter\expandafter\expandafter\uqc@Call
+ \csname uqc@cnt@#1\expandafter\endcsname
+ \fi
+}
+% \end{macrocode}
+% \end{macro}
+% \begin{macro}{\uqc@Call}
+% \begin{macrocode}
+\long\def\uqc@Call#1#2{#2{#1}}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+\uqc@AtEnd
+% \end{macrocode}
+% \begin{macrocode}
+%</package>
+% \end{macrocode}
+%
+% \section{Test}
+%
+% \subsection{Catcode checks for loading}
+%
+% \begin{macrocode}
+%<*test1>
+% \end{macrocode}
+% \begin{macrocode}
+\catcode`\{=1 %
+\catcode`\}=2 %
+\catcode`\#=6 %
+\catcode`\@=11 %
+\expandafter\ifx\csname count@\endcsname\relax
+ \countdef\count@=255 %
+\fi
+\expandafter\ifx\csname @gobble\endcsname\relax
+ \long\def\@gobble#1{}%
+\fi
+\expandafter\ifx\csname @firstofone\endcsname\relax
+ \long\def\@firstofone#1{#1}%
+\fi
+\expandafter\ifx\csname loop\endcsname\relax
+ \expandafter\@firstofone
+\else
+ \expandafter\@gobble
+\fi
+{%
+ \def\loop#1\repeat{%
+ \def\body{#1}%
+ \iterate
+ }%
+ \def\iterate{%
+ \body
+ \let\next\iterate
+ \else
+ \let\next\relax
+ \fi
+ \next
+ }%
+ \let\repeat=\fi
+}%
+\def\RestoreCatcodes{}
+\count@=0 %
+\loop
+ \edef\RestoreCatcodes{%
+ \RestoreCatcodes
+ \catcode\the\count@=\the\catcode\count@\relax
+ }%
+\ifnum\count@<255 %
+ \advance\count@ 1 %
+\repeat
+
+\def\RangeCatcodeInvalid#1#2{%
+ \count@=#1\relax
+ \loop
+ \catcode\count@=15 %
+ \ifnum\count@<#2\relax
+ \advance\count@ 1 %
+ \repeat
+}
+\expandafter\ifx\csname LoadCommand\endcsname\relax
+ \def\LoadCommand{\input uniquecounter.sty\relax}%
+\fi
+\def\Test{%
+ \RangeCatcodeInvalid{0}{47}%
+ \RangeCatcodeInvalid{58}{64}%
+ \RangeCatcodeInvalid{91}{96}%
+ \RangeCatcodeInvalid{123}{255}%
+ \catcode`\@=12 %
+ \catcode`\\=0 %
+ \catcode`\{=1 %
+ \catcode`\}=2 %
+ \catcode`\#=6 %
+ \catcode`\[=12 %
+ \catcode`\]=12 %
+ \catcode`\%=14 %
+ \catcode`\ =10 %
+ \catcode13=5 %
+ \LoadCommand
+ \RestoreCatcodes
+}
+\Test
+\csname @@end\endcsname
+\end
+% \end{macrocode}
+% \begin{macrocode}
+%</test1>
+% \end{macrocode}
+%
+% \subsection{Macro tests}
+%
+% \subsubsection{Test with \LaTeX}
+%
+% \begin{macrocode}
+%<*test2>
+\NeedsTeXFormat{LaTeX2e}
+\nofiles
+\documentclass{minimal}
+\usepackage{uniquecounter}[2009/09/11]
+\usepackage{qstest}
+\IncludeTests{*}
+\LogTests{log}{*}{*}
+
+\newcommand*{\CheckValue}[2]{%
+ \Expect*{#2}*{\UniqueCounterGet{#1}}%
+}
+\newcommand*{\CheckSpace}[1]{%
+ \sbox0{#1}%
+ \Expect{0.0pt}*{\the\wd0}%
+}
+
+\begin{qstest}{creation}{creation}
+ \CheckSpace{%
+ \UniqueCounterNew{test}%
+ }%
+ \CheckValue{test}{0}%
+\end{qstest}
+
+\begin{qstest}{increment}{increment}
+ \CheckSpace{%
+ \UniqueCounterIncrement{test}%
+ }%
+ \CheckValue{test}{1}%
+ \makeatletter
+ \def\uqc@cnt@test{2147483645}%
+ \CheckValue{test}{2147483645}%
+ \CheckSpace{%
+ \UniqueCounterIncrement{test}%
+ }%
+ \CheckValue{test}{2147483646}%
+ \CheckSpace{%
+ \UniqueCounterIncrement{test}%
+ }%
+ \Expect{true}*{\ifx\uqc@inc\uqc@NumInc true\else false\fi}%
+ \CheckValue{test}{2147483647}%
+ \CheckSpace{%
+ \UniqueCounterIncrement{test}%
+ }%
+ \CheckValue{test}{2147483648}%
+ \CheckSpace{%
+ \UniqueCounterIncrement{test}%
+ }%
+ \CheckValue{test}{2147483649}%
+\end{qstest}
+
+\begin{qstest}{call}{call}
+ \def\CheckCall#1#2{%
+ \Expect{#1}{#2}%
+ }%
+ \CheckSpace{%
+ \UniqueCounterNew{foo}%
+ }%
+ \CheckValue{foo}{0}%
+ \CheckSpace{%
+ \UniqueCounterCall{foo}{\CheckCall}{1}%
+ }%
+ \CheckSpace{%
+ \UniqueCounterCall{foo}{\CheckCall}{2}%
+ }%
+ \CheckValue{foo}{2}%
+\end{qstest}
+
+\csname @@end\endcsname
+%</test2>
+% \end{macrocode}
+% \subsubsection{Test with plain-\TeX}
+%
+% \begin{macrocode}
+%<*test3>
+\input uniquecounter.sty\relax
+\catcode`\@=11 %
+\def\CheckValue#1#2{%
+ \begingroup
+ \edef\A{#2}%
+ \edef\B{\UniqueCounterGet{#1}}%
+ \ifx\A\B
+ \else
+ \@PackageError{TEST}{Failed: \A\space<> \B}\@ehc
+ \fi
+ \endgroup
+}
+\def\CheckSpace#1{%
+ \setbox0=\hbox{#1}%
+ \ifdim\wd0=\z@
+ \else
+ \@PackageError{TEST}{Failed: 0.0pt <> \the\wd0}\@ehc
+ \fi
+}
+
+\begingroup
+ \CheckSpace{%
+ \UniqueCounterNew{test}%
+ }%
+ \CheckValue{test}{0}%
+\endgroup
+
+\begingroup
+ \CheckSpace{%
+ \UniqueCounterIncrement{test}%
+ }%
+ \CheckValue{test}{1}%
+ \def\uqc@cnt@test{2147483645}%
+ \CheckValue{test}{2147483645}%
+ \CheckSpace{%
+ \UniqueCounterIncrement{test}%
+ }%
+ \CheckValue{test}{2147483646}%
+ \CheckSpace{%
+ \UniqueCounterIncrement{test}%
+ }%
+ \ifx\uqc@inc\uqc@NumInc
+ \else
+ \@PackageError{TEST}{Failed: wrong inc function}\@ehc
+ \fi
+ \CheckValue{test}{2147483647}%
+ \CheckSpace{%
+ \UniqueCounterIncrement{test}%
+ }%
+ \CheckValue{test}{2147483648}%
+ \CheckSpace{%
+ \UniqueCounterIncrement{test}%
+ }%
+ \CheckValue{test}{2147483649}%
+\endgroup
+\begingroup
+ \def\CheckCall#1#2{%
+ \begingroup
+ \def\A{#1}%
+ \def\B{#2}%
+ \ifx\A\B
+ \else
+ \@PackageError{TEST}{Failed: \A\space <> \B}\@ehc
+ \fi
+ \endgroup
+ }%
+ \CheckSpace{%
+ \UniqueCounterNew{foo}%
+ }%
+ \CheckValue{foo}{0}%
+ \CheckSpace{%
+ \UniqueCounterCall{foo}{\CheckCall}{1}%
+ }%
+ \CheckSpace{%
+ \UniqueCounterCall{foo}{\CheckCall}{2}%
+ }%
+ \CheckValue{foo}{2}%
+\endgroup
+\csname @@end\endcsname\end
+%</test3>
+% \end{macrocode}
+%
+% \section{Installation}
+%
+% \subsection{Download}
+%
+% \paragraph{Package.} This package is available on
+% CTAN\footnote{\url{ftp://ftp.ctan.org/tex-archive/}}:
+% \begin{description}
+% \item[\CTAN{macros/latex/contrib/oberdiek/uniquecounter.dtx}] The source file.
+% \item[\CTAN{macros/latex/contrib/oberdiek/uniquecounter.pdf}] Documentation.
+% \end{description}
+%
+%
+% \paragraph{Bundle.} All the packages of the bundle `oberdiek'
+% are also available in a TDS compliant ZIP archive. There
+% the packages are already unpacked and the documentation files
+% are generated. The files and directories obey the TDS standard.
+% \begin{description}
+% \item[\CTAN{install/macros/latex/contrib/oberdiek.tds.zip}]
+% \end{description}
+% \emph{TDS} refers to the standard ``A Directory Structure
+% for \TeX\ Files'' (\CTAN{tds/tds.pdf}). Directories
+% with \xfile{texmf} in their name are usually organized this way.
+%
+% \subsection{Bundle installation}
+%
+% \paragraph{Unpacking.} Unpack the \xfile{oberdiek.tds.zip} in the
+% TDS tree (also known as \xfile{texmf} tree) of your choice.
+% Example (linux):
+% \begin{quote}
+% |unzip oberdiek.tds.zip -d ~/texmf|
+% \end{quote}
+%
+% \paragraph{Script installation.}
+% Check the directory \xfile{TDS:scripts/oberdiek/} for
+% scripts that need further installation steps.
+% Package \xpackage{attachfile2} comes with the Perl script
+% \xfile{pdfatfi.pl} that should be installed in such a way
+% that it can be called as \texttt{pdfatfi}.
+% Example (linux):
+% \begin{quote}
+% |chmod +x scripts/oberdiek/pdfatfi.pl|\\
+% |cp scripts/oberdiek/pdfatfi.pl /usr/local/bin/|
+% \end{quote}
+%
+% \subsection{Package installation}
+%
+% \paragraph{Unpacking.} The \xfile{.dtx} file is a self-extracting
+% \docstrip\ archive. The files are extracted by running the
+% \xfile{.dtx} through \plainTeX:
+% \begin{quote}
+% \verb|tex uniquecounter.dtx|
+% \end{quote}
+%
+% \paragraph{TDS.} Now the different files must be moved into
+% the different directories in your installation TDS tree
+% (also known as \xfile{texmf} tree):
+% \begin{quote}
+% \def\t{^^A
+% \begin{tabular}{@{}>{\ttfamily}l@{ $\rightarrow$ }>{\ttfamily}l@{}}
+% uniquecounter.sty & tex/generic/oberdiek/uniquecounter.sty\\
+% uniquecounter.pdf & doc/latex/oberdiek/uniquecounter.pdf\\
+% uniquecounter-example.tex & doc/latex/oberdiek/uniquecounter-example.tex\\
+% test/uniquecounter-test1.tex & doc/latex/oberdiek/test/uniquecounter-test1.tex\\
+% test/uniquecounter-test2.tex & doc/latex/oberdiek/test/uniquecounter-test2.tex\\
+% test/uniquecounter-test3.tex & doc/latex/oberdiek/test/uniquecounter-test3.tex\\
+% uniquecounter.dtx & source/latex/oberdiek/uniquecounter.dtx\\
+% \end{tabular}^^A
+% }^^A
+% \sbox0{\t}^^A
+% \ifdim\wd0>\linewidth
+% \begingroup
+% \advance\linewidth by\leftmargin
+% \advance\linewidth by\rightmargin
+% \edef\x{\endgroup
+% \def\noexpand\lw{\the\linewidth}^^A
+% }\x
+% \def\lwbox{^^A
+% \leavevmode
+% \hbox to \linewidth{^^A
+% \kern-\leftmargin\relax
+% \hss
+% \usebox0
+% \hss
+% \kern-\rightmargin\relax
+% }^^A
+% }^^A
+% \ifdim\wd0>\lw
+% \sbox0{\small\t}^^A
+% \ifdim\wd0>\linewidth
+% \ifdim\wd0>\lw
+% \sbox0{\footnotesize\t}^^A
+% \ifdim\wd0>\linewidth
+% \ifdim\wd0>\lw
+% \sbox0{\scriptsize\t}^^A
+% \ifdim\wd0>\linewidth
+% \ifdim\wd0>\lw
+% \sbox0{\tiny\t}^^A
+% \ifdim\wd0>\linewidth
+% \lwbox
+% \else
+% \usebox0
+% \fi
+% \else
+% \lwbox
+% \fi
+% \else
+% \usebox0
+% \fi
+% \else
+% \lwbox
+% \fi
+% \else
+% \usebox0
+% \fi
+% \else
+% \lwbox
+% \fi
+% \else
+% \usebox0
+% \fi
+% \else
+% \lwbox
+% \fi
+% \else
+% \usebox0
+% \fi
+% \end{quote}
+% If you have a \xfile{docstrip.cfg} that configures and enables \docstrip's
+% TDS installing feature, then some files can already be in the right
+% place, see the documentation of \docstrip.
+%
+% \subsection{Refresh file name databases}
+%
+% If your \TeX~distribution
+% (\teTeX, \mikTeX, \dots) relies on file name databases, you must refresh
+% these. For example, \teTeX\ users run \verb|texhash| or
+% \verb|mktexlsr|.
+%
+% \subsection{Some details for the interested}
+%
+% \paragraph{Attached source.}
+%
+% The PDF documentation on CTAN also includes the
+% \xfile{.dtx} source file. It can be extracted by
+% AcrobatReader 6 or higher. Another option is \textsf{pdftk},
+% e.g. unpack the file into the current directory:
+% \begin{quote}
+% \verb|pdftk uniquecounter.pdf unpack_files output .|
+% \end{quote}
+%
+% \paragraph{Unpacking with \LaTeX.}
+% The \xfile{.dtx} chooses its action depending on the format:
+% \begin{description}
+% \item[\plainTeX:] Run \docstrip\ and extract the files.
+% \item[\LaTeX:] Generate the documentation.
+% \end{description}
+% If you insist on using \LaTeX\ for \docstrip\ (really,
+% \docstrip\ does not need \LaTeX), then inform the autodetect routine
+% about your intention:
+% \begin{quote}
+% \verb|latex \let\install=y\input{uniquecounter.dtx}|
+% \end{quote}
+% Do not forget to quote the argument according to the demands
+% of your shell.
+%
+% \paragraph{Generating the documentation.}
+% You can use both the \xfile{.dtx} or the \xfile{.drv} to generate
+% the documentation. The process can be configured by the
+% configuration file \xfile{ltxdoc.cfg}. For instance, put this
+% line into this file, if you want to have A4 as paper format:
+% \begin{quote}
+% \verb|\PassOptionsToClass{a4paper}{article}|
+% \end{quote}
+% An example follows how to generate the
+% documentation with pdf\LaTeX:
+% \begin{quote}
+%\begin{verbatim}
+%pdflatex uniquecounter.dtx
+%makeindex -s gind.ist uniquecounter.idx
+%pdflatex uniquecounter.dtx
+%makeindex -s gind.ist uniquecounter.idx
+%pdflatex uniquecounter.dtx
+%\end{verbatim}
+% \end{quote}
+%
+% \begin{History}
+% \begin{Version}{2009/09/11 v1.0}
+% \item
+% First public version.
+% \end{Version}
+% \end{History}
+%
+% \PrintIndex
+%
+% \Finale
+\endinput
diff --git a/Master/texmf-dist/tex/generic/oberdiek/pdftexcmds.sty b/Master/texmf-dist/tex/generic/oberdiek/pdftexcmds.sty
index 993edd686e5..62e976e64ec 100644
--- a/Master/texmf-dist/tex/generic/oberdiek/pdftexcmds.sty
+++ b/Master/texmf-dist/tex/generic/oberdiek/pdftexcmds.sty
@@ -87,7 +87,7 @@
\fi
\expandafter\x\csname ver@pdftexcmds.sty\endcsname
\ProvidesPackage{pdftexcmds}%
- [2009/04/10 v0.4 LuaTeX support for pdfTeX utility functions (HO)]
+ [2009/09/22 v0.5 LuaTeX support for pdfTeX utility functions (HO)]
\begingroup
\catcode123 1 % {
\catcode125 2 % }
@@ -131,6 +131,11 @@
\TMP@EnsureCode{95}{12}% _ (other)
\TMP@EnsureCode{96}{12}% `
\TMP@EnsureCode{126}{12}% ~ (other)
+\edef\pdftexcmds@AtEnd{%
+ \pdftexcmds@AtEnd
+ \escapechar=\number\escapechar\relax
+}
+\escapechar=92 %
\begingroup\expandafter\expandafter\expandafter\endgroup
\expandafter\ifx\csname RequirePackage\endcsname\relax
\input infwarerr.sty\relax
@@ -141,7 +146,7 @@
\fi
\ifluatex
\else
- \@PackageInfo{pdftexcmds}{LuaTeX not detected}%
+ \@PackageInfoNoLine{pdftexcmds}{LuaTeX not detected}%
\def\pdftexcmds@nopdftex{%
\@PackageInfoNoLine{pdftexcmds}{pdfTeX >= 1.30 not detected}%
\let\pdftexcmds@nopdftex\relax
@@ -193,13 +198,105 @@
\def\pdf@system#{%
\immediate\write18%
}%
- \pdftexcmds@AtEnd
- \expandafter\endinput
\fi
-\ifnum\luatexversion<36 %
- \def\pdftexcmds@directlua{\directlua0 }%
+\ifluatex
+ \ifnum\luatexversion<36 %
+ \def\pdftexcmds@directlua{\directlua0 }%
+ \else
+ \let\pdftexcmds@directlua\directlua
+ \fi
+ \begingroup
+ \newlinechar=10 %
+ \endlinechar=\newlinechar
+ \pdftexcmds@directlua{%
+ if tex.enableprimitives then
+ tex.enableprimitives('pdf@', {'primitive', 'ifprimitive'})
+ end
+ }%
+ \endgroup %
+\fi
+\def\pdftexcmds@strip@prefix#1>{}
+\def\pdftexcmds@temp#1#2#3{%
+ \begingroup\expandafter\expandafter\expandafter\endgroup
+ \expandafter\ifx\csname pdf@#1\endcsname\relax
+ \begingroup
+ \def\x{#3}%
+ \edef\x{\expandafter\pdftexcmds@strip@prefix\meaning\x}%
+ \escapechar=-1 %
+ \edef\y{\expandafter\meaning\csname#2\endcsname}%
+ \expandafter\endgroup
+ \ifx\x\y
+ \expandafter\let\csname pdf@#1\expandafter\endcsname
+ \csname #2\endcsname
+ \fi
+ \fi
+}
+\pdftexcmds@temp{primitive}{pdfprimitive}{pdfprimitive}% pdfTeX, LuaTeX
+\pdftexcmds@temp{primitive}{primitive}{primitive}% XeTeX
+\pdftexcmds@temp{primitive}{luatexprimitive}{pdfprimitive}% LuaTeX
+\pdftexcmds@temp{primitive}{luatexpdfprimitive}{pdfprimitive}% LuaTeX
+\pdftexcmds@temp{ifprimitive}{ifpdfprimitive}{ifpdfprimitive}% pdfTeX, LuaTeX
+\pdftexcmds@temp{ifprimitive}{ifprimitive}{ifprimitive}% XeTeX
+\pdftexcmds@temp{ifprimitive}{luatexifprimitive}{ifpdfprimitive}% LuaTeX
+\pdftexcmds@temp{ifprimitive}{luatexifpdfprimitive}{ifpdfprimitive}% LuaTeX
+\begingroup
+ \expandafter\ifx\csname pdf@primitive\endcsname\relax
+ \else
+ \expandafter\ifx\csname pdftexversion\endcsname\relax
+ \else
+ \ifnum\pdftexversion=140 %
+ \expandafter\ifx\csname pdftexrevision\endcsname\relax
+ \else
+ \ifnum\pdftexrevision<4 %
+ \endgroup
+ \let\pdf@primitive\@undefined
+ \@PackageInfoNoLine{pdftexcmds}{%
+ \string\pdf@primitive disabled, because\MessageBreak
+ \string\pdfprimitive\space is broken until pdfTeX 1.40.4%
+ }%
+ \begingroup
+ \fi
+ \fi
+ \fi
+ \fi
+ \fi
+\endgroup
+\begingroup
+ \@PackageInfoNoLine{pdftexcmds}{%
+ \string\pdf@primitive\space is %
+ \expandafter\ifx\csname pdf@primitive\endcsname\relax not \fi
+ available%
+ }%
+ \@PackageInfoNoLine{pdftexcmds}{%
+ \string\pdf@ifprimitive\space is %
+ \expandafter\ifx\csname pdf@ifprimitive\endcsname\relax not \fi
+ available%
+ }%
+\endgroup
+\def\pdftexcmds@temp#1{%
+ \begingroup\expandafter\expandafter\expandafter\endgroup
+ \expandafter\ifx\csname pdf@#1\endcsname\relax
+ \begingroup
+ \escapechar=-1 %
+ \edef\x{\expandafter\meaning\csname#1\endcsname}%
+ \def\y{#1}%
+ \def\z##1->{}%
+ \edef\y{\expandafter\z\meaning\y}%
+ \expandafter\endgroup
+ \ifx\x\y
+ \expandafter\def\csname pdf@#1\expandafter\endcsname
+ \expandafter{%
+ \csname#1\endcsname
+ }%
+ \fi
+ \fi
+}%
+\pdftexcmds@temp{shellescape}%
+\pdftexcmds@temp{strcmp}%
+\ifluatex
\else
- \let\pdftexcmds@directlua\directlua
+ \pdftexcmds@AtEnd
+ \expandafter\endinput
\fi
\begingroup\expandafter\expandafter\expandafter\endgroup
\expandafter\ifx\csname RequirePackage\endcsname\relax
diff --git a/Master/texmf-dist/tex/generic/oberdiek/uniquecounter.sty b/Master/texmf-dist/tex/generic/oberdiek/uniquecounter.sty
new file mode 100644
index 00000000000..8d2c0b9c761
--- /dev/null
+++ b/Master/texmf-dist/tex/generic/oberdiek/uniquecounter.sty
@@ -0,0 +1,203 @@
+%%
+%% This is file `uniquecounter.sty',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% uniquecounter.dtx (with options: `package')
+%%
+%% This is a generated file.
+%%
+%% Copyright (C) 2009 by Heiko Oberdiek <oberdiek@uni-freiburg.de>
+%%
+%% 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.
+%%
+%% This work has the LPPL maintenance status "maintained".
+%%
+%% This Current Maintainer of this work is Heiko Oberdiek.
+%%
+%% This work consists of the main source file uniquecounter.dtx
+%% and the derived files
+%% uniquecounter.sty, uniquecounter.pdf, uniquecounter.ins,
+%% uniquecounter.drv, uniquecounter-example.tex,
+%% uniquecounter-test1.tex, uniquecounter-test2.tex,
+%% uniquecounter-test3.tex.
+%%
+\begingroup
+ \catcode44 12 % ,
+ \catcode45 12 % -
+ \catcode46 12 % .
+ \catcode58 12 % :
+ \catcode64 11 % @
+ \catcode123 1 % {
+ \catcode125 2 % }
+ \expandafter\let\expandafter\x\csname ver@uniquecounter.sty\endcsname
+ \ifx\x\relax % plain-TeX, first loading
+ \else
+ \def\empty{}%
+ \ifx\x\empty % LaTeX, first loading,
+ % variable is initialized, but \ProvidesPackage not yet seen
+ \else
+ \catcode35 6 % #
+ \expandafter\ifx\csname PackageInfo\endcsname\relax
+ \def\x#1#2{%
+ \immediate\write-1{Package #1 Info: #2.}%
+ }%
+ \else
+ \def\x#1#2{\PackageInfo{#1}{#2, stopped}}%
+ \fi
+ \x{uniquecounter}{The package is already loaded}%
+ \aftergroup\endinput
+ \fi
+ \fi
+\endgroup
+\begingroup
+ \catcode35 6 % #
+ \catcode40 12 % (
+ \catcode41 12 % )
+ \catcode44 12 % ,
+ \catcode45 12 % -
+ \catcode46 12 % .
+ \catcode47 12 % /
+ \catcode58 12 % :
+ \catcode64 11 % @
+ \catcode91 12 % [
+ \catcode93 12 % ]
+ \catcode123 1 % {
+ \catcode125 2 % }
+ \expandafter\ifx\csname ProvidesPackage\endcsname\relax
+ \def\x#1#2#3[#4]{\endgroup
+ \immediate\write-1{Package: #3 #4}%
+ \xdef#1{#4}%
+ }%
+ \else
+ \def\x#1#2[#3]{\endgroup
+ #2[{#3}]%
+ \ifx#1\@undefined
+ \xdef#1{#3}%
+ \fi
+ \ifx#1\relax
+ \xdef#1{#3}%
+ \fi
+ }%
+ \fi
+\expandafter\x\csname ver@uniquecounter.sty\endcsname
+\ProvidesPackage{uniquecounter}%
+ [2009/09/11 v1.0 Provides unlimited unique counter (HO)]
+\begingroup
+ \catcode123 1 % {
+ \catcode125 2 % }
+ \def\x{\endgroup
+ \expandafter\edef\csname uqc@AtEnd\endcsname{%
+ \catcode35 \the\catcode35\relax
+ \catcode64 \the\catcode64\relax
+ \catcode123 \the\catcode123\relax
+ \catcode125 \the\catcode125\relax
+ }%
+ }%
+\x
+\catcode35 6 % #
+\catcode64 11 % @
+\catcode123 1 % {
+\catcode125 2 % }
+\def\TMP@EnsureCode#1#2{%
+ \edef\uqc@AtEnd{%
+ \uqc@AtEnd
+ \catcode#1 \the\catcode#1\relax
+ }%
+ \catcode#1 #2\relax
+}
+\TMP@EnsureCode{33}{12}% !
+\TMP@EnsureCode{39}{12}% '
+\TMP@EnsureCode{42}{12}% *
+\TMP@EnsureCode{43}{12}% +
+\TMP@EnsureCode{46}{12}% .
+\TMP@EnsureCode{47}{12}% /
+\TMP@EnsureCode{61}{12}% =
+\TMP@EnsureCode{96}{12}% `
+\begingroup\expandafter\expandafter\expandafter\endgroup
+\expandafter\ifx\csname RequirePackage\endcsname\relax
+ \input bigintcalc.sty\relax
+ \input infwarerr.sty\relax
+\else
+ \RequirePackage{bigintcalc}[2007/11/11]%
+ \RequirePackage{infwarerr}[2007/09/09]%
+\fi
+\begingroup\expandafter\expandafter\expandafter\endgroup
+\expandafter\ifx\csname numexpr\endcsname\relax
+ \def\uqc@IncNum#1{%
+ \begingroup
+ \count@=\csname uqc@cnt@#1\endcsname\relax
+ \advance\count@\@ne
+ \expandafter\xdef\csname uqc@cnt@#1\endcsname{%
+ \number\count@
+ }%
+ \ifnum\count@=2147483647 %
+ \global\expandafter\let\csname uqc@inc@#1\endcsname
+ \uqc@IncBig
+ \fi
+ \endgroup
+ }%
+\else
+ \def\uqc@IncNum#1{%
+ \expandafter\xdef\csname uqc@cnt@#1\endcsname{%
+ \number\numexpr\csname uqc@cnt@#1\endcsname+1%
+ }%
+ \ifnum\csname uqc@cnt@#1\endcsname=2147483647 %
+ \global\expandafter\let\csname uqc@inc@#1\endcsname
+ \uqc@IncBig
+ \fi
+ }%
+\fi
+\def\uqc@IncBig#1{%
+ \expandafter\xdef\csname uqc@cnt@#1\endcsname{%
+ \expandafter\expandafter\expandafter
+ \BigIntCalcInc\csname uqc@cnt@#1\endcsname!%
+ }%
+}
+\begingroup\expandafter\expandafter\expandafter\endgroup
+\expandafter\ifx\csname newcommand\endcsname\relax
+ \def\uqc@Def#1{\def#1##1}%
+\else
+ \def\uqc@Def#1{\newcommand*{#1}[1]}%
+\fi
+\uqc@Def\UniqueCounterNew{%
+ \expandafter\ifx\csname uqc@cnt@#1\endcsname\relax
+ \expandafter\xdef\csname uqc@cnt@#1\endcsname{0}%
+ \global\expandafter\let\csname uqc@inc@#1\endcsname\uqc@IncNum
+ \@PackageInfo{uniquecounter}{New unique counter `#1'}%
+ \else
+ \@PackageError{uniquecounter}{Unique counter `#1' is already defined}\@ehc
+ \fi
+}
+\uqc@Def\UniqueCounterIncrement{%
+ \expandafter\ifx\csname uqc@cnt@#1\endcsname\relax
+ \@PackageError{uniquecounter}{Unique counter `#1' is undefined}\@ehc
+ \else
+ \csname uqc@inc@#1\endcsname{#1}%
+ \fi
+}
+\uqc@Def\UniqueCounterGet{%
+ \csname uqc@cnt@#1\endcsname
+}
+\uqc@Def\UniqueCounterCall{%
+ \expandafter\ifx\csname uqc@cnt@#1\endcsname\relax
+ \@PackageError{uniquecounter}{Unique counter `#1' is undefined}\@ehc
+ \expandafter\uqc@Call\expandafter0%
+ \else
+ \UniqueCounterIncrement{#1}%
+ \expandafter\expandafter\expandafter\uqc@Call
+ \csname uqc@cnt@#1\expandafter\endcsname
+ \fi
+}
+\long\def\uqc@Call#1#2{#2{#1}}%
+\uqc@AtEnd
+\endinput
+%%
+%% End of file `uniquecounter.sty'.