summaryrefslogtreecommitdiff
path: root/macros/latex/contrib/pdfx
diff options
context:
space:
mode:
authorNorbert Preining <norbert@preining.info>2019-09-02 13:46:59 +0900
committerNorbert Preining <norbert@preining.info>2019-09-02 13:46:59 +0900
commite0c6872cf40896c7be36b11dcc744620f10adf1d (patch)
tree60335e10d2f4354b0674ec22d7b53f0f8abee672 /macros/latex/contrib/pdfx
Initial commit
Diffstat (limited to 'macros/latex/contrib/pdfx')
-rw-r--r--macros/latex/contrib/pdfx/8bit.def170
-rw-r--r--macros/latex/contrib/pdfx/AdobeColorProfiles.tex388
-rw-r--r--macros/latex/contrib/pdfx/AdobeExternalProfiles.tex345
-rw-r--r--macros/latex/contrib/pdfx/CallasColorProfiles.tex118
-rw-r--r--macros/latex/contrib/pdfx/README42
-rw-r--r--macros/latex/contrib/pdfx/armglyphs.dfu137
-rw-r--r--macros/latex/contrib/pdfx/glyphtounicode-cmr.tex357
-rw-r--r--macros/latex/contrib/pdfx/glyphtounicode-ntx.tex419
-rw-r--r--macros/latex/contrib/pdfx/l8u-penc.def3838
-rw-r--r--macros/latex/contrib/pdfx/l8uarb-penc.def163
-rw-r--r--macros/latex/contrib/pdfx/l8uarm-penc.def580
-rw-r--r--macros/latex/contrib/pdfx/l8ucyr-penc.def763
-rw-r--r--macros/latex/contrib/pdfx/l8udev-penc.def196
-rw-r--r--macros/latex/contrib/pdfx/l8ugrk-penc.def1338
-rw-r--r--macros/latex/contrib/pdfx/l8uheb-penc.def513
-rw-r--r--macros/latex/contrib/pdfx/l8ulat-penc.def1389
-rw-r--r--macros/latex/contrib/pdfx/l8umath-penc.def2525
-rw-r--r--macros/latex/contrib/pdfx/manifest.txt158
-rw-r--r--macros/latex/contrib/pdfx/pdfa.xmp203
-rw-r--r--macros/latex/contrib/pdfx/pdfe.xmp270
-rw-r--r--macros/latex/contrib/pdfx/pdfvt.xmp276
-rw-r--r--macros/latex/contrib/pdfx/pdfx.pdfbin0 -> 2442175 bytes
-rw-r--r--macros/latex/contrib/pdfx/pdfx.xmp266
-rw-r--r--macros/latex/contrib/pdfx/sample.tex77
-rw-r--r--macros/latex/contrib/pdfx/small2e-pdfx.tex136
-rw-r--r--macros/latex/contrib/pdfx/src/Armenian-example-UTF8.pngbin0 -> 309072 bytes
-rw-r--r--macros/latex/contrib/pdfx/src/MANIFEST18
-rw-r--r--macros/latex/contrib/pdfx/src/Makefile42
-rw-r--r--macros/latex/contrib/pdfx/src/TL-POL-meta.pngbin0 -> 404830 bytes
-rw-r--r--macros/latex/contrib/pdfx/src/TL-RU-LICRs.pngbin0 -> 155499 bytes
-rw-r--r--macros/latex/contrib/pdfx/src/TL-RU-metadata.pngbin0 -> 422972 bytes
-rw-r--r--macros/latex/contrib/pdfx/src/TL-RU-toc.pngbin0 -> 179718 bytes
-rw-r--r--macros/latex/contrib/pdfx/src/arm-start.tex59
-rw-r--r--macros/latex/contrib/pdfx/src/armtex-meta.pngbin0 -> 422507 bytes
-rw-r--r--macros/latex/contrib/pdfx/src/koi8-example.tex36
-rw-r--r--macros/latex/contrib/pdfx/src/koi8-example2.tex45
-rw-r--r--macros/latex/contrib/pdfx/src/latin2-example.tex46
-rw-r--r--macros/latex/contrib/pdfx/src/math-assign5.pngbin0 -> 485880 bytes
-rw-r--r--macros/latex/contrib/pdfx/src/pdfx.dtx5634
-rw-r--r--macros/latex/contrib/pdfx/src/pdfx.ins41
-rw-r--r--macros/latex/contrib/pdfx/src/pdfx.xmpdata33
-rw-r--r--macros/latex/contrib/pdfx/src/rvdtx.sty409
-rw-r--r--macros/latex/contrib/pdfx/src/text89.def32
-rw-r--r--macros/latex/contrib/pdfx/src/usage-meta.pngbin0 -> 444103 bytes
44 files changed, 21062 insertions, 0 deletions
diff --git a/macros/latex/contrib/pdfx/8bit.def b/macros/latex/contrib/pdfx/8bit.def
new file mode 100644
index 0000000000..a32c57d734
--- /dev/null
+++ b/macros/latex/contrib/pdfx/8bit.def
@@ -0,0 +1,170 @@
+% In this input encoding, each non-ASCII character just maps to its
+% own byte value. This is intended for specialized uses where binary
+% data must be processed.
+%
+% Written in 2014 by Peter Selinger <selinger@mathstat.dal.ca>.
+% Public Domain.
+
+\ProvidesFile{8bit.def}
+ [2008/03/30 v1.1d Input encoding file]
+\makeatletter
+\DeclareInputText{1}{\string^^01}
+\DeclareInputText{2}{\string^^02}
+\DeclareInputText{3}{\string^^03}
+\DeclareInputText{4}{\string^^04}
+\DeclareInputText{5}{\string^^05}
+\DeclareInputText{6}{\string^^06}
+\DeclareInputText{7}{\string^^07}
+\DeclareInputText{8}{\string^^08}
+\DeclareInputText{11}{\string^^0b}
+\DeclareInputText{14}{\string^^0e}
+\DeclareInputText{15}{\string^^0f}
+\DeclareInputText{16}{\string^^10}
+\DeclareInputText{17}{\string^^11}
+\DeclareInputText{18}{\string^^12}
+\DeclareInputText{19}{\string^^13}
+\DeclareInputText{20}{\string^^14}
+\DeclareInputText{21}{\string^^15}
+\DeclareInputText{22}{\string^^16}
+\DeclareInputText{23}{\string^^17}
+\DeclareInputText{24}{\string^^18}
+\DeclareInputText{25}{\string^^19}
+\DeclareInputText{26}{\string^^1a}
+\DeclareInputText{27}{\string^^1b}
+\DeclareInputText{28}{\string^^1c}
+\DeclareInputText{29}{\string^^1d}
+\DeclareInputText{30}{\string^^1e}
+\DeclareInputText{31}{\string^^1f}
+\DeclareInputText{127}{\string^^7f}
+\DeclareInputText{128}{\string^^80}
+\DeclareInputText{129}{\string^^81}
+\DeclareInputText{130}{\string^^82}
+\DeclareInputText{131}{\string^^83}
+\DeclareInputText{132}{\string^^84}
+\DeclareInputText{133}{\string^^85}
+\DeclareInputText{134}{\string^^86}
+\DeclareInputText{135}{\string^^87}
+\DeclareInputText{136}{\string^^88}
+\DeclareInputText{137}{\string^^89}
+\DeclareInputText{138}{\string^^8a}
+\DeclareInputText{139}{\string^^8b}
+\DeclareInputText{140}{\string^^8c}
+\DeclareInputText{141}{\string^^8d}
+\DeclareInputText{142}{\string^^8e}
+\DeclareInputText{143}{\string^^8f}
+\DeclareInputText{144}{\string^^90}
+\DeclareInputText{145}{\string^^91}
+\DeclareInputText{146}{\string^^92}
+\DeclareInputText{147}{\string^^93}
+\DeclareInputText{148}{\string^^94}
+\DeclareInputText{149}{\string^^95}
+\DeclareInputText{150}{\string^^96}
+\DeclareInputText{151}{\string^^97}
+\DeclareInputText{152}{\string^^98}
+\DeclareInputText{153}{\string^^99}
+\DeclareInputText{154}{\string^^9a}
+\DeclareInputText{155}{\string^^9b}
+\DeclareInputText{156}{\string^^9c}
+\DeclareInputText{157}{\string^^9d}
+\DeclareInputText{158}{\string^^9e}
+\DeclareInputText{159}{\string^^9f}
+\DeclareInputText{160}{\string^^a0}
+\DeclareInputText{161}{\string^^a1}
+\DeclareInputText{162}{\string^^a2}
+\DeclareInputText{163}{\string^^a3}
+\DeclareInputText{164}{\string^^a4}
+\DeclareInputText{165}{\string^^a5}
+\DeclareInputText{166}{\string^^a6}
+\DeclareInputText{167}{\string^^a7}
+\DeclareInputText{168}{\string^^a8}
+\DeclareInputText{169}{\string^^a9}
+\DeclareInputText{170}{\string^^aa}
+\DeclareInputText{171}{\string^^ab}
+\DeclareInputText{172}{\string^^ac}
+\DeclareInputText{173}{\string^^ad}
+\DeclareInputText{174}{\string^^ae}
+\DeclareInputText{175}{\string^^af}
+\DeclareInputText{176}{\string^^b0}
+\DeclareInputText{177}{\string^^b1}
+\DeclareInputText{178}{\string^^b2}
+\DeclareInputText{179}{\string^^b3}
+\DeclareInputText{180}{\string^^b4}
+\DeclareInputText{181}{\string^^b5}
+\DeclareInputText{182}{\string^^b6}
+\DeclareInputText{183}{\string^^b7}
+\DeclareInputText{184}{\string^^b8}
+\DeclareInputText{185}{\string^^b9}
+\DeclareInputText{186}{\string^^ba}
+\DeclareInputText{187}{\string^^bb}
+\DeclareInputText{188}{\string^^bc}
+\DeclareInputText{189}{\string^^bd}
+\DeclareInputText{190}{\string^^be}
+\DeclareInputText{191}{\string^^bf}
+\DeclareInputText{192}{\string^^c0}
+\DeclareInputText{193}{\string^^c1}
+\DeclareInputText{194}{\string^^c2}
+\DeclareInputText{195}{\string^^c3}
+\DeclareInputText{196}{\string^^c4}
+\DeclareInputText{197}{\string^^c5}
+\DeclareInputText{198}{\string^^c6}
+\DeclareInputText{199}{\string^^c7}
+\DeclareInputText{200}{\string^^c8}
+\DeclareInputText{201}{\string^^c9}
+\DeclareInputText{202}{\string^^ca}
+\DeclareInputText{203}{\string^^cb}
+\DeclareInputText{204}{\string^^cc}
+\DeclareInputText{205}{\string^^cd}
+\DeclareInputText{206}{\string^^ce}
+\DeclareInputText{207}{\string^^cf}
+\DeclareInputText{208}{\string^^d0}
+\DeclareInputText{209}{\string^^d1}
+\DeclareInputText{210}{\string^^d2}
+\DeclareInputText{211}{\string^^d3}
+\DeclareInputText{212}{\string^^d4}
+\DeclareInputText{213}{\string^^d5}
+\DeclareInputText{214}{\string^^d6}
+\DeclareInputText{215}{\string^^d7}
+\DeclareInputText{216}{\string^^d8}
+\DeclareInputText{217}{\string^^d9}
+\DeclareInputText{218}{\string^^da}
+\DeclareInputText{219}{\string^^db}
+\DeclareInputText{220}{\string^^dc}
+\DeclareInputText{221}{\string^^dd}
+\DeclareInputText{222}{\string^^de}
+\DeclareInputText{223}{\string^^df}
+\DeclareInputText{224}{\string^^e0}
+\DeclareInputText{225}{\string^^e1}
+\DeclareInputText{226}{\string^^e2}
+\DeclareInputText{227}{\string^^e3}
+\DeclareInputText{228}{\string^^e4}
+\DeclareInputText{229}{\string^^e5}
+\DeclareInputText{230}{\string^^e6}
+\DeclareInputText{231}{\string^^e7}
+\DeclareInputText{232}{\string^^e8}
+\DeclareInputText{233}{\string^^e9}
+\DeclareInputText{234}{\string^^ea}
+\DeclareInputText{235}{\string^^eb}
+\DeclareInputText{236}{\string^^ec}
+\DeclareInputText{237}{\string^^ed}
+\DeclareInputText{238}{\string^^ee}
+\DeclareInputText{239}{\string^^ef}
+\DeclareInputText{240}{\string^^f0}
+\DeclareInputText{241}{\string^^f1}
+\DeclareInputText{242}{\string^^f2}
+\DeclareInputText{243}{\string^^f3}
+\DeclareInputText{244}{\string^^f4}
+\DeclareInputText{245}{\string^^f5}
+\DeclareInputText{246}{\string^^f6}
+\DeclareInputText{247}{\string^^f7}
+\DeclareInputText{248}{\string^^f8}
+\DeclareInputText{249}{\string^^f9}
+\DeclareInputText{250}{\string^^fa}
+\DeclareInputText{251}{\string^^fb}
+\DeclareInputText{252}{\string^^fc}
+\DeclareInputText{253}{\string^^fd}
+\DeclareInputText{254}{\string^^fe}
+\DeclareInputText{255}{\string^^ff}
+\makeatother
+\endinput
+%%
+%% End of file `8bit.def'.
diff --git a/macros/latex/contrib/pdfx/AdobeColorProfiles.tex b/macros/latex/contrib/pdfx/AdobeColorProfiles.tex
new file mode 100644
index 0000000000..a4dea47927
--- /dev/null
+++ b/macros/latex/contrib/pdfx/AdobeColorProfiles.tex
@@ -0,0 +1,388 @@
+%%%
+%%% file: AdobeColorProfiles.tex
+%%% version 1.1 2018-11-15
+%%% information compiled by: <ross.moore@mq.edu.au>
+%%%
+% This file gives macros to specify CMYK Color Profiles as supported by Adobe's Acrobat Pro DC software.
+% Some alternatives are also included, available on some MacOS platforms
+%
+% Identifying names, comments and descriptions are taken from AC/DC's "Color Setup" Preferences panel.
+% --- user-command --- CMYK profile needed with PDF/X-?? files
+% \setCMYKcolorprofile{<filename>}{<output intent>}{<identifier>}{<registry URL>}
+% e.g.
+%\pdfx@setcmykprofile{coated_FOGRA39L_argl.icc}|
+% {Coated FOGRA39}|
+% {FOGRA39 \string\(ISO Coated v2 300%\space \string\(ECI\string\)\string\)}|
+% {http://www.argyllcms.com/}|{http://www.color.org}|
+
+% Location of Adobe profiles on Mac OS X:
+%\gdef\AdobeMacOSdir{/Library/Application Support/Adobe/Color/Profiles/Recommended/}
+% Use \pdfxSetCMYKcolorProfileDir{\AdobeMacOSdir} within the .xmpdata file
+% Location of Adobe profiles under Windows:
+%\xdef\WindowsColordir{C:\string\Windows\string\System32\string\Spool\string\Drivers\string\Color\string/}
+
+% FOGRA39
+% "Europe General Purpose 3"
+% General-purpose color settings for screen and print in Europe. Profile warnings are disabled.
+% Uses the FOGRA39 press characterization. It is designed to produce quality separations for standard ISO printing using: 350% total ink coverage, positive film, and coated paper.
+\gdef\FOGRAXXXIX{\setCMYKcolorprofile{CoatedFOGRA39.icc}%
+ {CoatedFOGRA39}%
+ {Coated FOGRA39 \string\(ISO 12647-2:2004\string\)}% /ProfileName
+ {http://www.color.org}% /RegistryName
+}%
+% also available using:
+\gdef\MacFOGRAXXXIX{%
+ \pdfxSetCMYKcolorProfileDir\MacOSLibraryColordir
+ \setCMYKcolorprofile{CoatedFOGRA39.icc}%
+ {CoatedFOGRA39}%
+ {Coated FOGRA39 \string\(ISO 12647-2:2004\string\)}% /ProfileName
+ {http://www.color.org}% /RegistryName
+}
+
+
+% Coated GRACoL
+% Coated GRACoL 2006 \(ISO 12647-2:2004\)
+\gdef\CoatedGRACoL{\setCMYKcolorprofile{CoatedGRACoL2006.icc}%
+ {CGATS TR 006}% /OutputConditionIdentifier
+% {GRACoL2006_Coated1v2.icc}% /ProfileName
+ {Coated GRACoL 2006 \string\(ISO 12647-2:2004\string\)}%
+ {http://www.color.org}% /RegistryName
+}%
+% also available using:
+\gdef\MacCoatedGRACoL{%
+ \pdfxSetCMYKcolorProfileDir\MacOSLibraryColordir
+ \setCMYKcolorprofile{GRACoL2006_Coated1v2.icc}%
+ {CGATS TR 006}% /OutputConditionIdentifier
+ {Coated GRACoL 2006 \string\(ISO 12647-2:2004\string\)}%
+ {http://www.color.org}% /RegistryName
+}%
+
+
+% ISO Web Coated
+% Web Coated FOGRA28 \(ISO 12647-2:2004\)
+% Uses the FOGRA28 press characterization.
+% It is designed to produce quality separations for standard ISO printing using:
+% 350% total ink coverage, positive film, and coated paper.
+\gdef\ISOWebCoated{\setCMYKcolorprofile{WebCoatedFOGRA28.icc}%
+ {FOGRA28}% /OutputConditionIdentifier
+% {ISO Web Coated}% /ProfileName
+ {Web Coated FOGRA28 \string\(ISO 12647-2:2004\string\)}%
+ {http://www.color.org}% /RegistryName
+}% does not validate
+
+
+% Japan Color 2001 Coated
+% "Japan General Purpose 2"
+% General-purpose color settings for screen and print in Japan. Profile warnings are disabled.
+% Uses the Japan Color 2001 specification for type 3 (coated) paper.
+% It is designed to produce quality separations using:
+% 350% total ink coverage, positive film and coated paper.
+\gdef\JapanColorMMICoated{\setCMYKcolorprofile{JapanColor2001Coated.icc}%
+ {JC200103}% /OutputConditionIdentifier
+ {Japan Color 2001 Coated}% /ProfileName
+% {Japan Color 2001 Coated: Printing process definition: ISO 12647-2:2004, sheet-fed offset printing, positive plates, paper type 3 \string\(coated, 105 gsm\string\), screen frequency 69/cm.}%
+ {http://www.color.org}% /RegistryName
+}%
+% also available using:
+\gdef\MacJapanColorMMICoated{%
+ \pdfxSetCMYKcolorProfileDir\MacOSLibraryColordir
+ \setCMYKcolorprofile{JapanColor2001Coated.icc}%
+ {JC200103}% /OutputConditionIdentifier
+ {Japan Color 2001 Coated}% /ProfileName
+ {http://www.color.org}% /RegistryName
+}%
+
+
+% Japan Color 2001 Uncoated
+% Uses the Japan Color 2001 specification for type 4 (uncoated) paper.
+% It is designed to produce quality separations using:
+% 310% total ink coverage, positive film and uncoated paper.
+\gdef\JapanColorMMIUncoated{\setCMYKcolorprofile{JapanColor2001Uncoated.icc}%
+ {JCN200104}% /OutputConditionIdentifier
+ {Japan Color 2001 Uncoated}% /ProfileName
+% {Japan Color 2001 Uncoated: Printing process definition: ISO 12647-2:2004, sheet-fed offset printing, positive plates, paper type 4 \(uncoated, 105 gsm\), screen frequency 69/cm.}%
+ {http://www.color.org}% /RegistryName
+}%
+
+
+% Japan Color 2002 Newspaper
+% "Japan Color for Newspaper"
+% Preparation of content for common newspaper press conditions in Japan. CMYK values are preserved. Profile warnings are enabled.
+% Uses the Japan Color 2002 for Newspapers specification. It is designed to produce quality separations using: 240% total ink coverage, positive film and standard newsprint paper.
+\gdef\JapanColorMMIINewspaper{\setCMYKcolorprofile{JapanColor2002Newspaper.icc}%
+ {JCN2002}% /OutputConditionIdentifier
+ {Japan Color 2002 Newspaper}% /ProfileName
+% {Japan Color 2002 for Newspaper Printing: Printing process definition: ISO/DIS 12647-3:2004, coldset offset printing, negative plates, newsprint, screen frequency 39/cm.}% /OutputCondition
+ {http://www.color.org}% /RegistryName
+}%
+
+
+% Japan Web Coated (Ad)
+% "Japan Magazine Advertisement Color"
+% Preparation of content using the Japan Magazine Publisher Association color standard for the Japan magazine and advertising market.
+% CMYK values are preserved. Profile warnings are enabled.
+% Uses specifications developed by the Japan Magazine Publisher Association for digital proofing of images in the Japanese magazine/advertising market.
+\gdef\JapanWebCoatedAd{\setCMYKcolorprofile{JapanColor2003WebCoated.icc}%
+ {JCW2003}% /OutputConditionIdentifier
+ {Japan Web Coated \string\(Ad\string\)}% /ProfileName
+% {Japan Color 2003 for Web Offset: Printing process definition: ISO 12647-2:2004, heat-set web offset printing, positive plates, paper type 3 \string\(coated, 70 gsm\string\), screen frequency 69/cm.}% /OutputCondition
+ {http://www.color.org}% /RegistryName
+}%
+
+\gdef\JapanWebCoated{\setCMYKcolorprofile{JapanWebCoated.icc}%
+ {JCW2002}% ???? /OutputConditionIdentifier
+ {Japan Web Coated}% /ProfileName
+% {Japan Color 2003 for Web Offset: Printing process definition: ISO 12647-2:2004, heat-set web offset printing, positive plates, paper type 3 \(coated, 70 gsm\), screen frequency 69/cm.}% /OutputCondition
+ {http://www.color.org}% /RegistryName
+}%
+
+
+
+% U.S. Web Coated (SWOP) v2
+% "North America General Purpose 2"
+% General-purpose color settings for screen and print in North America. Profile warnings are disabled.
+\gdef\SWOPCGATSI{\setCMYKcolorprofile{USWebCoatedSWOP.icc}%
+ {CGATS TR 001}% /OutputConditionIdentifier
+ {U.S. Web Coated \string\(SWOP\string\) v2}% /ProfileName
+% {SWOP \string\(Publication\string\) printing in USA \string\(Printing process definition: ANSI CGATS.6\string\).}% /OutputCondition
+ {http://www.color.org}% /RegistryName
+}%
+
+
+% US Newsprint (SNAP 2007)
+% "North America Newspaper"
+% Preparation of content for common newspaper press conditions in Japan. CMYK values are preserved. Profile warnings are enabled.
+\gdef\SNAPCGATSII{\setCMYKcolorprofile{USNewsprintSNAP2007.icc}%
+ {CGATS TR 002}% /OutputConditionIdentifier
+ {US Newsprint \string\(SNAP 2007\string\)}% /ProfileName
+ {http://www.color.org}% /RegistryName
+}%
+
+
+% U.S. Web Coated (SWOP) 3v2
+\gdef\SWOPCGATSIII{\setCMYKcolorprofile{WebCoatedSWOP2006Grade3.icc}%
+ {CGATS TR 003}% /OutputConditionIdentifier
+ {SWOP2006_Coated3v2.icc}% /ProfileName
+% {Web Offset CTP plates ISO 2846-1 Inks - Variable screen frequency / G7 Methodology / Grade #3 paper}% /OutputCondition
+ {http://www.color.org}% /RegistryName
+}%
+% also available using
+\gdef\MacSWOPCGATSIII{%
+ \pdfxSetCMYKcolorProfileDir\MacOSLibraryColordir
+ \setCMYKcolorprofile{SWOP2006_Coated3v2.icc}%
+ {CGATS TR 003}% /OutputConditionIdentifier
+ {SWOP2006_Coated3v2.icc}% /ProfileName
+ {http://www.color.org}% /RegistryName
+}
+
+% U.S. Web Coated (SWOP) 5v2
+\gdef\SWOPCGATSV{\setCMYKcolorprofile{WebCoatedSWOP2006Grade5.icc}%
+ {CGATS TR 005}% /OutputConditionIdentifier
+ {SWOP2006_Coated5v2.icc}% /ProfileName
+% {Web Offset CTP plates ISO 2846-1 Inks - Variable screen frequency / G7 Methodology / grade #5 Paper}% /OutputCondition
+ {http://www.color.org}% /RegistryName
+}%
+
+
+
+% ISO Coated v2 (ECI)
+\gdef\ISOCoatedECI{\setCMYKcolorprofile{CoatedFOGRA39.icc}%
+ {FOGRA39}% /OutputConditionIdentifier
+ {ISO Coated v2 \string\(ECI\string\)}% /ProfileName
+% {Offset commercial and specialty printing according to ISO 12647-2:2004 / Amd 1, paper type 1 or 2 \(gloss or matte coated offset, 115 g/m2\), screen frequency 60/cm.}% /OutputCondition
+ {http://www.color.org}% /RegistryName
+}%
+% also available using
+\gdef\MacISOCoatedECI{%
+ \pdfxSetCMYKcolorProfileDir\MacOSLibraryColordir
+ \setCMYKcolorprofile{ISOcoated_v2_eci.icc}%
+ {FOGRA39}% /OutputConditionIdentifier
+ {ISO Coated v2 \string\(ECI\string\)}% /ProfileName
+ {http://www.color.org}% /RegistryName
+}%
+
+
+% FOGRA29
+% Uncoated FOGRA29 \(ISO 12647-2:2004\)
+\gdef\UncoatedFOGRA{\setCMYKcolorprofile{UncoatedFOGRA29.icc}%
+ {FOGRA29}%
+ {Uncoated FOGRA29 \string\(ISO 12647-2:2004\string\)}% /ProfileName
+% Uses the FOGRA29 press characterization. It is designed to produce quality separations for standard ISO printing using: 350% total ink coverage, positive film, and coated paper.
+ {http://www.color.org}% /RegistryName
+}%
+
+
+% FOGRA28
+% Web Coated FOGRA28 \(ISO 12647-2:2004\)
+\gdef\WebCoatedFOGRA{\setCMYKcolorprofile{WebCoatedFOGRA28.icc}%
+ {FOGRA28}%
+ {Web Coated FOGRA28 \(ISO 12647-2:2004\)}%
+% Uses the FOGRA28 press characterization. It is designed to produce quality separations for standard ISO printing using: 350% total ink coverage, positive film, and coated paper.
+ {http://www.color.org}% /RegistryName
+}%
+
+
+% FOGRA27
+% Coated FOGRA27 \(ISO 12647-2:2004\)
+\gdef\CoatedFOGRA{\setCMYKcolorprofile{CoatedFOGRA27.icc}%
+ {FOGRA27}%
+ {Coated FOGRA27 \(ISO 12647-2:2004\)}%
+%Uses the FOGRA27 press characterization. It is designed to produce quality separations for standard ISO printing using: 350% total ink coverage, positive film and coated paper.
+ {http://www.color.org}% /RegistryName
+}%
+% also available using:
+\gdef\MacCoatedFOGRA{%
+ \pdfxSetCMYKcolorProfileDir\MacOSLibraryColordir
+ \setCMYKcolorprofile{CoatedFOGRA27.icc}%
+ {FOGRA27}%
+ {Coated FOGRA27 \(ISO 12647-2:2004\)}%
+ {http://www.color.org}% /RegistryName
+}%
+
+
+% ISO Newspaper (IFRA 26%)
+% this is not in Adobe's directory, but is supported by:
+\gdef\MacIFRAXXVI{%
+ \pdfxSetCMYKcolorProfileDir\MacOSLibraryColordir
+ \setCMYKcolorprofile{ISOnewspaper26v4.icc}%
+ {IFRA26}%
+ {Printing process definition: ISO/DIS 12647-3:2004, Coldset offset printing, contact exposed negative acting plates or computer to plate \(tone value increase of 26\%\), newsprint, screen ruling 40 lines per cm.}%
+ {http://www.color.org}% /RegistryName
+}
+
+\endinput
+
+
+%% Incomplete information on other Profiles
+
+% U.S. Sheetfed Coated v2
+% USSheetfedCoated.icc
+\gdef\SheetfedCoated{\setCMYKcolorprofile{USSheetfedCoated.icc}%
+ {}% ????
+ {U.S. Sheetfed Coated v2}%
+ {http://www.color.org}% /RegistryName
+}%
+
+
+% U.S. Sheetfed Uncoated v2
+% USSheetfedUncoated.icc
+\gdef\SheetfedUncoated{\setCMYKcolorprofile{USSheetfedUncoated.icc}%
+ {}% ????
+ {U.S. Sheetfed Uncoated v2}%
+ {http://www.color.org}% /RegistryName
+}%
+
+% ISO Newspaper (IFRA 26%) – needs:
+\gdef\IFRAXXVI{\setEXTERNALprofile{ISOnewspaper26v4}% /ProfileName
+ {Printing process definition: ISO/DIS 12647-3:2004, Coldset offset printing, contact exposed negative acting plates or computer to plate \(tone value increase of 26\%\), newsprint, screen ruling 40 lines per cm.}% /OutputCondition
+ {IFRA26}% /OutputConditionIdentifier /OutputCondition (dIDS_OUTPUTCOND_IFRA26_long)
+ {http://www.color.org}% /RegistryName
+ {CMYK}% /ProfileCS
+ {02400000}% /ICCVersion < ... >
+ {http://www.ifra.com}% URL
+ {ISOnewspaper26v4}% /Info
+ {BCA21A6AFA3A4B5CEF9CA8E91565C1B7}% /CheckSum < ... >
+}%
+
+
+% ISO Newspaper (IFRA 30%) – no
+\gdef\IFRAXXX{\setEXTERNALprofile{ISOnewspaper30v4}% /ProfileName
+ {Printing process definition: ISO/DIS 12647-3:2004, Coldset offset printing, contact exposed negative acting plates or computer to plate \(tone value increase of 30\%\), newsprint, screen ruling 40 lines per cm. \(Principally applicable to the USA\).}% /OutputCondition
+ {IFRA30}% /OutputConditionIdentifier /OutputCondition (dIDS_OUTPUTCOND_IFRA30_long)
+ {http://www.color.org}% /RegistryName
+ {CMYK}% /ProfileCS
+ {02400000}% /ICCVersion < ... >
+ {http://www.ifra.com}% URL
+ {ISOnewspaper30v4}% /Info
+ {EE473D92AE08B385A0128F87B0D9EFC0}% /CheckSum < ... >
+}%
+%/OutputIntents[<</DestOutputProfileRef<</CheckSum<EE473D92AE08B385A0128F87B0D9EFC0>/ICCVersion<02400000>/ProfileCS(CMYK)/ProfileName(ISOnewspaper30v4)/URLs[<</F(http://www.ifra.com)/FS/URL>>]>>/Info(ISOnewspaper30v4)/OutputCondition(Printing process definition: ISO/DIS 12647-3:2004, Coldset offset printing, contact exposed negative acting plates or computer to plate \(tone value increase of 30%\), newsprint, screen ruling 40 lines per cm. \(Principally applicable to the USA\).)/OutputConditionIdentifier(IFRA30)/RegistryName(http://www.color.org)/S/GTS_PDFX/Type/OutputIntent>>] does not validate
+
+
+
+
+
+% Others available through "Custom"
+% Adobe RGB (1998)
+% Grayscale: Dot Gain 15%
+
+
+
+% JapanColor2003
+% Uses the Japan Color 2003 specification for type 3 (coated) paper. It is designed to produce quality separations using: 350% total ink coverage, positive film and coated paper on heat-set web offset presses.
+% Japan Color 2003 Web Coated
+
+% EuroscaleCoated
+% Uses specifications designed to produce quality separations using Euroscale inks under the following printing conditions: 350% total area of ink coverage, positive plate, bright white coated stock.
+% Euroscale Coated v2
+
+% EuroscaleUnCoated
+% Uses specifications designed to produce quality separations using Euroscale inks under the following printing conditions: 260% total area of ink coverage, positive plate, uncoated white offset stock.
+% Euroscale Uncoated v2
+
+% U.S. Sheetfed Coated v2
+% USSheetfedCoated.icc
+
+% U.S. Sheetfed Uncoated v2
+% USSheetfedUncoated.icc
+
+% US Web UnCoated v2
+
+% Generic CMYK Profile
+
+
+
+
+\endinput
+
+
+
+/Library/Application Support/Adobe/Color
+/Library/Application Support/Adobe/Color/Profiles
+/Library/Application Support/Adobe/Color/Profiles/BlackWhite.icc
+/Library/Application Support/Adobe/Color/Profiles/CIERGB.icc
+/Library/Application Support/Adobe/Color/Profiles/EuroscaleCoated.icc
+/Library/Application Support/Adobe/Color/Profiles/EuroscaleUncoated.icc
+/Library/Application Support/Adobe/Color/Profiles/PAL_SECAM.icc
+/Library/Application Support/Adobe/Color/Profiles/Recommended
+/Library/Application Support/Adobe/Color/Profiles/Recommended/AdobeRGB1998.icc
+/Library/Application Support/Adobe/Color/Profiles/Recommended/AppleRGB.icc
+/Library/Application Support/Adobe/Color/Profiles/Recommended/CoatedFOGRA27.icc
+/Library/Application Support/Adobe/Color/Profiles/Recommended/CoatedFOGRA39.icc
+/Library/Application Support/Adobe/Color/Profiles/Recommended/CoatedGRACoL2006.icc
+/Library/Application Support/Adobe/Color/Profiles/Recommended/ColorMatchRGB.icc
+/Library/Application Support/Adobe/Color/Profiles/Recommended/JapanColor2001Coated.icc
+/Library/Application Support/Adobe/Color/Profiles/Recommended/JapanColor2001Uncoated.icc
+/Library/Application Support/Adobe/Color/Profiles/Recommended/JapanColor2002Newspaper.icc
+/Library/Application Support/Adobe/Color/Profiles/Recommended/JapanColor2003WebCoated.icc
+/Library/Application Support/Adobe/Color/Profiles/Recommended/JapanWebCoated.icc
+/Library/Application Support/Adobe/Color/Profiles/Recommended/ProPhoto.icm
+/Library/Application Support/Adobe/Color/Profiles/Recommended/USNewsprintSNAP2007.icc
+/Library/Application Support/Adobe/Color/Profiles/Recommended/USSheetfedCoated.icc
+/Library/Application Support/Adobe/Color/Profiles/Recommended/USSheetfedUncoated.icc
+/Library/Application Support/Adobe/Color/Profiles/Recommended/USWebCoatedSWOP.icc
+/Library/Application Support/Adobe/Color/Profiles/Recommended/USWebUncoated.icc
+/Library/Application Support/Adobe/Color/Profiles/Recommended/UncoatedFOGRA29.icc
+/Library/Application Support/Adobe/Color/Profiles/Recommended/WebCoatedFOGRA28.icc
+/Library/Application Support/Adobe/Color/Profiles/Recommended/WebCoatedSWOP2006Grade3.icc
+/Library/Application Support/Adobe/Color/Profiles/Recommended/WebCoatedSWOP2006Grade5.icc
+/Library/Application Support/Adobe/Color/Profiles/Recommended/sRGB Color Space Profile.icm
+/Library/Application Support/Adobe/Color/Profiles/SMPTE-C.icc
+/Library/Application Support/Adobe/Color/Profiles/WideGamutRGB.icc
+/Library/Application Support/Adobe/Color/Settings
+/Library/Application Support/Adobe/Color/Settings/Europe General Purpose 3.csf
+/Library/Application Support/Adobe/Color/Settings/Europe Prepress 3.csf
+/Library/Application Support/Adobe/Color/Settings/Europe Web Internet 2.csf
+/Library/Application Support/Adobe/Color/Settings/Japan General Purpose.csf
+/Library/Application Support/Adobe/Color/Settings/Japan Magazine.csf
+/Library/Application Support/Adobe/Color/Settings/Japan Newspaper.csf
+/Library/Application Support/Adobe/Color/Settings/Japan Prepress.csf
+/Library/Application Support/Adobe/Color/Settings/Japan Web Internet.csf
+/Library/Application Support/Adobe/Color/Settings/Monitor Color.csf
+/Library/Application Support/Adobe/Color/Settings/North America General Purpose.csf
+/Library/Application Support/Adobe/Color/Settings/North America Newspaper.csf
+/Library/Application Support/Adobe/Color/Settings/North America Prepress.csf
+/Library/Application Support/Adobe/Color/Settings/North America Web Internet.csf
+
+
+
diff --git a/macros/latex/contrib/pdfx/AdobeExternalProfiles.tex b/macros/latex/contrib/pdfx/AdobeExternalProfiles.tex
new file mode 100644
index 0000000000..cc4397d207
--- /dev/null
+++ b/macros/latex/contrib/pdfx/AdobeExternalProfiles.tex
@@ -0,0 +1,345 @@
+% This file gives macros to specify CMYK Color Profiles as supported by Adobe's Acrobat Pro DC software.
+% Identifying names, comments and descriptions are taken from AC/DC's "Color Setup" Preferences panel.
+
+
+% FOGRA39
+% "Europe General Purpose 3"
+% General-purpose color settings for screen and print in Europe. Profile warnings are disabled.
+% Uses the FOGRA39 press characterization. It is designed to produce quality separations for standard ISO printing using: 350% total ink coverage, positive film, and coated paper.
+\gdef\FOGRAXXXIX{\setEXTERNALprofile{Coated FOGRA39 \(ISO 12647-2:2004\)}% /ProfileName
+ {Offset commercial and specialty printing according to ISO 12647-2:2004 / Amd 1, paper type 1 or 2 \(gloss or matte coated offset, 115 g/m2\), screen frequency 60/cm.}% /OutputCondition
+ {FOGRA39}% /OutputConditionIdentifier /OutputCondition (dIDS_OUTPUTCOND_FOGRA39L_long)
+ {http://www.color.org}% /RegistryName
+ {CMYK}% /ProfileCS
+ {02100000}% /ICCVersion < ... >
+ {http://www.adobe.com}% URL
+ {Coated FOGRA39 \(ISO 12647-2:2004\)}% /Info
+ {74FF62F330BF0DBE4495B5720542D511}% /CheckSum < ... >
+}%
+% sRGB IEC61966-2.1
+% Grayscale: Dot Gain 15%
+% /OutputIntents[<</DestOutputProfileRef<</CheckSum<74FF62F330BF0DBE4495B5720542D511>/ICCVersion<02100000>/ProfileCS(CMYK)/ProfileName(Coated FOGRA39 \(ISO 12647-2:2004\))/URLs[<</F(http://www.adobe.com)/FS/URL>>]>>/Info(Coated FOGRA39 \(ISO 12647-2:2004\))/OutputCondition(Offset commercial and specialty printing according to ISO 12647-2:2004 / Amd 1, paper type 1 or 2 \(gloss or matte coated offset, 115 g/m2\), screen frequency 60/cm.)/OutputConditionIdentifier(FOGRA39)/RegistryName(http://www.color.org)/S/GTS_PDFX/Type/OutputIntent>>]
+% also "Europe Prepress 3"
+% Preparation of content for common printing conditions in Europe. CMYK values are preserved. Profile warnings are enabled.
+% Adobe RGB (1998)
+% also "Europe Web/Internet 2"
+% Preparation of content for non-print usage like the World Wide Web (WWW) in Europe. RGB content is converted to sRGB.
+% sRGB IEC61966-2.1
+% Grayscale: Gray Gamma 2.2
+
+
+% Coated GRACoL — no
+% Coated GRACoL 2006 \(ISO 12647-2:2004\)
+\gdef\CoatedGRACoL{\setEXTERNALprofile{GRACoL2006_Coated1v2.icc}% /ProfileName
+%{Coated GRACoL 2006 \(ISO 12647-2:2004\)}%
+ {Printing process definition according to ISO 12647-2:2004: Sheetfed Offset Commercial CTP plates ISO 2846-1 Inks - Variable screen frequency / G7 Methodology / grade#1 paper}% /OutputCondition
+ {CGATS TR 006}% /OutputConditionIdentifier /OutputCondition (dIDS_OUTPUTCOND_CGATSTR006_long)
+ {http://www.color.org}% /RegistryName
+ {CMYK}% /ProfileCS
+ {02000000}% /ICCVersion < ... >
+ {http://www.gracol.org}% URL
+ {Coated GRACoL 2006 \(ISO 12647-2:2004\) alpha 1}% /Info
+ {CC7A6196271B13DBAE4622AA1FA0FCA9}% /CheckSum < ... >
+}%
+%/OutputIntents[<</DestOutputProfileRef<</CheckSum<CC7A6196271B13DBAE4622AA1FA0FCA9>/ICCVersion<02000000>/ProfileCS(CMYK)/ProfileName(GRACoL2006_Coated1v2.icc)/URLs[<</F(http://www.gracol.org)/FS/URL>>]>>/Info(Coated GRACoL 2006 \(ISO 12647-2:2004\) alpha 1)/OutputCondition(Printing process definition according to ISO 12647-2:2004: Sheetfed Offset Commercial CTP plates ISO 2846-1 Inks - Variable screen frequency / G7 Methodology / grade#1 paper)/OutputConditionIdentifier(CGATS TR 006)/RegistryName(http://www.color.org)/S/GTS_PDFX/Type/OutputIntent>>] does not validate
+
+
+% ISO Web Coated
+% Uses the FOGRA28 press characterization. It is designed to produce quality separations for standard ISO printing using: 350% total ink coverage, positive film, and coated paper.
+% Web Coated FOGRA28 \(ISO 12647-2:2004\)
+\gdef\ISOWebCoated{\setEXTERNALprofile{ISO Web Coated}% /ProfileName
+%{Web Coated FOGRA28 \(ISO 12647-2:2004\)}%
+ {Offset printing according to ISO/DIS 12647-2:2003, OFCOM, paper type 3 = low weight coated web offset, 60 g/m2, screen ruling 60 cm-1, positive-acting plates.}% /OutputCondition
+ {FOGRA28}% /OutputConditionIdentifier /OutputCondition (dIDS_OUTPUTCOND_FOGRA28L_long)
+ {http://www.color.org}% /RegistryName
+ {CMYK}% /ProfileCS
+ {02400000}% /ICCVersion < ... >
+ {http://www.adobe.com}%{http://www.eci.org}% URL
+ %{Web Coated FOGRA28 \(ISO 12647-2:2004\)}%
+ {ISO Web Coated}% /Info
+ {0051E65BF3F29BFBB75720217A9C7A5D}% /CheckSum < ... >
+}%
+%/OutputIntents[<</DestOutputProfileRef<</CheckSum<0051E65BF3F29BFBB75720217A9C7A5D>/ICCVersion<02400000>/ProfileCS(CMYK)/ProfileName(ISO Web Coated)/URLs[<</F(http://www.eci.org)/FS/URL>>]>>/Info(ISO Web Coated)/OutputCondition(Offset printing according to ISO/DIS 12647-2:2003, OFCOM, paper type 3 = low weight coated web offset, 60 g/m2, screen ruling 60 cm-1, positive-acting plates.)/OutputConditionIdentifier(FOGRA28)/RegistryName(http://www.color.org)/S/GTS_PDFX/Type/OutputIntent>>] does not validate
+
+
+% Japan Color 2001 Coated
+% "Japan General Purpose 2"
+% General-purpose color settings for screen and print in Japan. Profile warnings are disabled.
+% Uses the Japan Color 2001 specification for type 3 (coated) paper. It is designed to produce quality separations using: 350% total ink coverage, positive film and coated paper.
+\gdef\JapanColorMMICoated{\setEXTERNALprofile{Japan Color 2001 Coated}% /ProfileName
+ {Japan Color 2001 Coated: Printing process definition: ISO 12647-2:2004, sheet-fed offset printing, positive plates, paper type 3 \(coated, 105 gsm\), screen frequency 69/cm.}% /OutputCondition
+ {JC200103}% /OutputConditionIdentifier /OutputCondition(dIDS_OUTPUTCOND_JC200103_long)
+ {http://www.color.org}% /RegistryName
+ {CMYK}% /ProfileCS
+ {02100000}% /ICCVersion < ... >
+ {http://www.adobe.com}% URL
+ {Japan Color 2001 Coated}% /Info
+ {4CB167869183B59BBAD20FB90CCF3E0C}% /CheckSum < ... >
+}%
+% sRGB IEC61966-2.1
+% Grayscale: Dot Gain 15%
+%/OutputIntents[<</DestOutputProfileRef<</CheckSum<4CB167869183B59BBAD20FB90CCF3E0C>/ICCVersion<02100000>/ProfileCS(CMYK)/ProfileName(Japan Color 2001 Coated)/URLs[<</F(http://www.adobe.com)/FS/URL>>]>>/Info(Japan Color 2001 Coated)/OutputCondition(Japan Color 2001 Coated: Printing process definition: ISO 12647-2:2004, sheet-fed offset printing, positive plates, paper type 3 \(coated, 105 gsm\), screen frequency 69/cm.)/OutputConditionIdentifier(JC200103)/RegistryName(http://www.color.org)/S/GTS_PDFX/Type/OutputIntent>>]
+% also "Japan prepress 2"
+% Preparation of content for common printing conditions in Japan. CMYK values are preserved. Profile warnings are enabled.
+% Adobe RGB (1998)
+% Grayscale: Dot Gain 15%
+% also "Japan Web/Internet"
+% Preparation of content for non-print usage like the World Wide Web (WWW) in Japan. RGB content is converted to sRGB.
+% sRGB IEC61966-2.1
+% Grayscale: Gray Gamma 2.2
+
+
+% Japan Color 2001 Uncoated
+% Uses the Japan Color 2001 specification for type 4 (uncoated) paper. It is designed to produce quality separations using: 310% total ink coverage, positive film and uncoated paper.
+\gdef\JapanColorMMIUncoated{\setEXTERNALprofile{Japan Color 2001 Uncoated}% /ProfileName
+ {Japan Color 2001 Uncoated: Printing process definition: ISO 12647-2:2004, sheet-fed offset printing, positive plates, paper type 4 \(uncoated, 105 gsm\), screen frequency 69/cm.}% /OutputCondition
+ {JCN200104}% /OutputConditionIdentifier /OutputCondition(dIDS_OUTPUTCOND_JC200104_long)
+ {http://www.color.org}% /RegistryName
+ {CMYK}% /ProfileCS
+ {02100000}% /ICCVersion < ... >
+ {http://www.adobe.com}% URL
+ {Japan Color 2001 Uncoated}% /Info
+ {B4E3FBD4C04CC702A93EB806D974DBF2}% /CheckSum < ... >
+}%
+%/OutputIntents[<</DestOutputProfileRef<</CheckSum<B4E3FBD4C04CC702A93EB806D974DBF2>/ICCVersion<02100000>/ProfileCS(CMYK)/ProfileName(Japan Color 2001 Uncoated)/URLs[<</F(http://www.adobe.com)/FS/URL>>]>>/Info(Japan Color 2001 Uncoated)/OutputCondition(Japan Color 2001 Uncoated: Printing process definition: ISO 12647-2:2004, sheet-fed offset printing, positive plates, paper type 4 \(uncoated, 105 gsm\), screen frequency 69/cm.)/OutputConditionIdentifier(JC200104)/RegistryName(http://www.color.org)/S/GTS_PDFX/Type/OutputIntent>>]
+
+
+% Japan Color 2002 Newspaper
+% "Japan Color for Newspaper"
+% Preparation of content for common newspaper press conditions in Japan. CMYK values are preserved. Profile warnings are enabled.
+% Uses the Japan Color 2002 for Newspapers specification. It is designed to produce quality separations using: 240% total ink coverage, positive film and standard newsprint paper.
+\gdef\JapanColorMMIINewspaper{\setEXTERNALprofile{Japan Color 2002 Newspaper}% /ProfileName
+ {Japan Color 2002 for Newspaper Printing: Printing process definition: ISO/DIS 12647-3:2004, coldset offset printing, negative plates, newsprint, screen frequency 39/cm.}% /OutputCondition
+ {JCN2002}% /OutputConditionIdentifier /OutputCondition (dIDS_OUTPUTCOND_JCN2002_long)
+ {http://www.color.org}% /RegistryName
+ {CMYK}% /ProfileCS
+ {02100000}% /ICCVersion < ... >
+ {http://www.adobe.com}% URL
+ {Japan Color 2002 Newspaper}% /Info
+ {FA5BE8D5B4EB756BF1399AFC2CDA7D1C}% /CheckSum < ... >
+}%
+% Adobe RGB (1998)
+% Grayscale: Dot Gain 25%
+%OutputIntents[<</DestOutputProfileRef<</CheckSum<FA5BE8D5B4EB756BF1399AFC2CDA7D1C>/ICCVersion<02100000>/ProfileCS(CMYK)/ProfileName(Japan Color 2002 Newspaper)/URLs[<</F(http://www.adobe.com)/FS/URL>>]>>/Info(Japan Color 2002 Newspaper)/OutputCondition(Japan Color 2002 for Newspaper Printing: Printing process definition: ISO/DIS 12647-3:2004, coldset offset printing, negative plates, newsprint, screen frequency 39/cm.)/OutputConditionIdentifier(JCN2002)/RegistryName(http://www.color.org)/S/GTS_PDFX/Type/OutputIntent>>]
+
+
+% Japan Web Coated (Ad)
+% "Japan Magazine Advertisement Color"
+% Preparation of content using the Japan Magazine Publisher Association color standard for the Japan magazine and advertising market. CMYK values are preserved. Profile warnings are enabled.
+% Uses specifications developed by the Japan Magazine Publisher Association for digital proofing of images in the Japanese magazine/advertising market.
+\gdef\JapanWebCoatedAd{\setEXTERNALprofile{Japan Web Coated \(Ad\)}% /ProfileName
+ {Japan Color 2003 for Web Offset: Printing process definition: ISO 12647-2:2004, heat-set web offset printing, positive plates, paper type 3 \(coated, 70 gsm\), screen frequency 69/cm.}% /OutputCondition
+ {JCW2003}% /OutputConditionIdentifier /OutputCondition (dIDS_OUTPUTCOND_JCW2003_long)
+ {http://www.color.org}% /RegistryName
+ {CMYK}% /ProfileCS
+ {02100000}% /ICCVersion < ... >
+ {http://www.adobe.com}% URL
+ {Japan Web Coated \(Ad\)}% /Info
+ {F8607E551233CEFDDA26D7D6BAAA2A4F}% /CheckSum < ... >
+}%
+% Adobe RGB (1998)
+% Grayscale: Dot Gain 15%
+%/OutputIntents[<</DestOutputProfileRef<</CheckSum<F8607E551233CEFDDA26D7D6BAAA2A4F>/ICCVersion<02100000>/ProfileCS(CMYK)/ProfileName(Japan Web Coated \(Ad\))/URLs[<</F(http://www.adobe.com)/FS/URL>>]>>/Info(Japan Web Coated \(Ad\))/OutputCondition(Japan Color 2003 for Web Offset: Printing process definition: ISO 12647-2:2004, heat-set web offset printing, positive plates, paper type 3 \(coated, 70 gsm\), screen frequency 69/cm.)/OutputConditionIdentifier(JCW2003)/RegistryName(http://www.color.org)/S/GTS_PDFX/Type/OutputIntent>>]
+
+
+% ISO Newspaper (IFRA 26%) – no
+\gdef\IFRAXXVI{\setEXTERNALprofile{ISOnewspaper26v4}% /ProfileName
+ {Printing process definition: ISO/DIS 12647-3:2004, Coldset offset printing, contact exposed negative acting plates or computer to plate \(tone value increase of 26\%\), newsprint, screen ruling 40 lines per cm.}% /OutputCondition
+ {IFRA26}% /OutputConditionIdentifier /OutputCondition (dIDS_OUTPUTCOND_IFRA26_long)
+ {http://www.color.org}% /RegistryName
+ {CMYK}% /ProfileCS
+ {02400000}% /ICCVersion < ... >
+ {http://www.ifra.com}% URL
+ {ISOnewspaper26v4}% /Info
+ {BCA21A6AFA3A4B5CEF9CA8E91565C1B7}% /CheckSum < ... >
+}%
+%/OutputIntents[<</DestOutputProfileRef<</CheckSum<BCA21A6AFA3A4B5CEF9CA8E91565C1B7>/ICCVersion<02400000>/ProfileCS(CMYK)/ProfileName(ISOnewspaper26v4)/URLs[<</F(http://www.ifra.com)/FS/URL>>]>>/Info(ISOnewspaper26v4)/OutputCondition(Printing process definition: ISO/DIS 12647-3:2004, Coldset offset printing, contact exposed negative acting plates or computer to plate \(tone value increase of 26%\), newsprint, screen ruling 40 lines per cm.)/OutputConditionIdentifier(IFRA26)/RegistryName(http://www.color.org)/S/GTS_PDFX/Type/OutputIntent>>] does not validate
+
+
+% ISO Newspaper (IFRA 30%) – no
+\gdef\IFRAXXX{\setEXTERNALprofile{ISOnewspaper30v4}% /ProfileName
+ {Printing process definition: ISO/DIS 12647-3:2004, Coldset offset printing, contact exposed negative acting plates or computer to plate \(tone value increase of 30\%\), newsprint, screen ruling 40 lines per cm. \(Principally applicable to the USA\).}% /OutputCondition
+ {IFRA30}% /OutputConditionIdentifier /OutputCondition (dIDS_OUTPUTCOND_IFRA30_long)
+ {http://www.color.org}% /RegistryName
+ {CMYK}% /ProfileCS
+ {02400000}% /ICCVersion < ... >
+ {http://www.ifra.com}% URL
+ {ISOnewspaper30v4}% /Info
+ {EE473D92AE08B385A0128F87B0D9EFC0}% /CheckSum < ... >
+}%
+%/OutputIntents[<</DestOutputProfileRef<</CheckSum<EE473D92AE08B385A0128F87B0D9EFC0>/ICCVersion<02400000>/ProfileCS(CMYK)/ProfileName(ISOnewspaper30v4)/URLs[<</F(http://www.ifra.com)/FS/URL>>]>>/Info(ISOnewspaper30v4)/OutputCondition(Printing process definition: ISO/DIS 12647-3:2004, Coldset offset printing, contact exposed negative acting plates or computer to plate \(tone value increase of 30%\), newsprint, screen ruling 40 lines per cm. \(Principally applicable to the USA\).)/OutputConditionIdentifier(IFRA30)/RegistryName(http://www.color.org)/S/GTS_PDFX/Type/OutputIntent>>] does not validate
+
+
+% U.S. Web Coated (SWOP) v2
+% "North America General Purpose 2"
+% General-purpose color settings for screen and print in North America. Profile warnings are disabled.
+\gdef\SWOPCGATSI{\setEXTERNALprofile{U.S. Web Coated \(SWOP\) v2}% /ProfileName
+ {SWOP \(Publication\) printing in USA \(Printing process definition: ANSI CGATS.6\).}% /OutputCondition
+ {CGATS TR 001}% /OutputConditionIdentifier /OutputCondition(dIDS_OUTPUTCOND_CGATSTR001_long)
+ {http://www.color.org}% /RegistryName
+ {CMYK}% /ProfileCS
+ {02100000}% /ICCVersion < ... >
+ {http://www.adobe.com}% URL
+ {U.S. Web Coated \(SWOP\) v2}% /Info
+ {79D7E984EA3AC74EED7CC92BF6B22A0D}% /CheckSum < ... >
+}%
+% sRGB IEC61966-2.1
+% Grayscale: Dot Gain 20%
+%/OutputIntents[<</DestOutputProfileRef<</CheckSum<79D7E984EA3AC74EED7CC92BF6B22A0D>/ICCVersion<02100000>/ProfileCS(CMYK)/ProfileName(U.S. Web Coated \(SWOP\) v2)/URLs[<</F(http://www.adobe.com)/FS/URL>>]>>/Info(U.S. Web Coated \(SWOP\) v2)/OutputCondition(SWOP \(Publication\) printing in USA \(Printing process definition: ANSI CGATS.6\).)/OutputConditionIdentifier(CGATS TR 001)/RegistryName(http://www.color.org)/S/GTS_PDFX/Type/OutputIntent>>]
+% also "North America Prepress 2"
+% Preparation of content for common printing conditions in North America. CMYK values are preserved. Profile warnings are enabled.
+% Adobe RGB (1998)
+% Grayscale: Dot Gain 20%
+% also "North America Web/Internet"
+% Preparation of content for non-print usage like the World Wide Web (WWW) in North America. RGB content is converted to sRGB.
+% sRGB IEC61966-2.1
+% Grayscale: Gray Gamma 2.2
+% also "Monitor Color"
+% Preparation of content for video and on-screen presentation. Emulates color behavior of most video applications. This setting is not recommended for documents with CMYK data.
+% Monitor RGB - Display
+% Grayscale: Gray Gamma 2.2
+
+
+% U.S. Web Coated (SWOP) 3v2 – no
+\gdef\SWOPCGATSIII{\setEXTERNALprofile{SWOP2006_Coated3v2.icc}% /ProfileName
+ {Web Offset CTP plates ISO 2846-1 Inks - Variable screen frequency / G7 Methodology / Grade #3 paper}% /OutputCondition
+ {CGATS TR 003}% /OutputConditionIdentifier /OutputCondition (dIDS_OUTPUTCOND_CGATSTR003_long)
+ {http://www.color.org}% /RegistryName
+ {CMYK}% /ProfileCS
+ {02000000}% /ICCVersion < ... >
+ {http://www.swop.org}% URL
+ {Web Coated SWOP 2006 Grade 3 Paper alpha 1}% /Info
+ {7FBAD4C0AE1CB7195C34BFC20E623437}% /CheckSum < ... >
+}%
+%/OutputIntents[<</DestOutputProfileRef<</CheckSum<7FBAD4C0AE1CB7195C34BFC20E623437>/ICCVersion<02000000>/ProfileCS(CMYK)/ProfileName(SWOP2006_Coated3v2.icc)/URLs[<</F(http://www.swop.org)/FS/URL>>]>>/Info(Web Coated SWOP 2006 Grade 3 Paper alpha 1)/OutputCondition(Web Offset CTP plates ISO 2846-1 Inks - Variable screen frequency / G7 Methodology / Grade #3 paper)/OutputConditionIdentifier(CGATS TR 003)/RegistryName(http://www.color.org)/S/GTS_PDFX/Type/OutputIntent>>] does not validate
+
+
+% U.S. Web Coated (SWOP) 5v2 – no
+\gdef\SWOPCGATSV{\setEXTERNALprofile{SWOP2006_Coated5v2.icc}% /ProfileName
+ {Web Offset CTP plates ISO 2846-1 Inks - Variable screen frequency / G7 Methodology / grade #5 Paper}% /OutputCondition
+ {CGATS TR 005}% /OutputConditionIdentifier /OutputCondition (dIDS_OUTPUTCOND_CGATSTR005_long)
+ {http://www.color.org}% /RegistryName
+ {CMYK}% /ProfileCS
+ {02000000}% /ICCVersion < ... >
+ {http://www.swop.org}% URL
+ {Web Coated SWOP 2006 Grade 5 Paper alpha 1}% /Info
+ {34F7C3C809B926B173EE54E13D655BEE}% /CheckSum < ... >
+}%
+%/OutputIntents[<</DestOutputProfileRef<</CheckSum<34F7C3C809B926B173EE54E13D655BEE>/ICCVersion<02000000>/ProfileCS(CMYK)/ProfileName(SWOP2006_Coated5v2.icc)/URLs[<</F(http://www.swop.org)/FS/URL>>]>>/Info(Web Coated SWOP 2006 Grade 5 Paper alpha 1)/OutputCondition(Web Offset CTP plates ISO 2846-1 Inks - Variable screen frequency / G7 Methodology / grade #5 Paper)/OutputConditionIdentifier(CGATS TR 005)/RegistryName(http://www.color.org)/S/GTS_PDFX/Type/OutputIntent>>] does not validate
+
+
+
+% ISO Coated v2 (ECI) – no
+\gdef\ISOCoatedECI{\setEXTERNALprofile{ISO Coated v2 \(ECI\)}% /ProfileName
+ {Offset commercial and specialty printing according to ISO 12647-2:2004 / Amd 1, paper type 1 or 2 \(gloss or matte coated offset, 115 g/m2\), screen frequency 60/cm.}% /OutputCondition
+ {FOGRA39}% /OutputConditionIdentifier
+ {http://www.color.org}% /RegistryName
+ {CMYK}% /ProfileCS
+ {02400000}% /ICCVersion < ... >
+ {http://www.eci.org}% URL
+ {ISO Coated v2 \(ECI\)}% /Info
+ {BDA07EFCACF5377E91EDACB0454EA7E5}% /CheckSum < ... >
+}%
+%/OutputIntents[<</DestOutputProfileRef<</CheckSum<BDA07EFCACF5377E91EDACB0454EA7E5>/ICCVersion<02400000>/ProfileCS(CMYK)/ProfileName(ISO Coated v2 \(ECI\))/URLs[<</F(http://www.eci.org)/FS/URL>>]>>/Info(ISO Coated v2 \(ECI\))/OutputCondition(Offset commercial and specialty printing according to ISO 12647-2:2004 / Amd 1, paper type 1 or 2 \(gloss or matte coated offset, 115 g/m2\), screen frequency 60/cm.)/OutputConditionIdentifier(FOGRA39)/RegistryName(http://www.color.org)/S/GTS_PDFX/Type/OutputIntent>>] does not validate
+
+
+% US Newsprint (SNAP 2007)
+% "North America Newspaper"
+% Preparation of content for common newspaper press conditions in Japan. CMYK values are preserved. Profile warnings are enabled.
+% Adobe RGB (1998)
+% Grayscale: Dot Gain 25%
+
+
+
+% Others available through "Custom"
+% Adobe RGB (1998)
+% Grayscale: Dot Gain 15%
+
+% FOGRA27
+% Coated FOGRA27 \(ISO 12647-2:2004\)
+%Uses the FOGRA27 press characterization. It is designed to produce quality separations for standard ISO printing using: 350% total ink coverage, positive film and coated paper.
+
+% FOGRA28
+% Uses the FOGRA28 press characterization. It is designed to produce quality separations for standard ISO printing using: 350% total ink coverage, positive film, and coated paper.
+% Web Coated FOGRA28 \(ISO 12647-2:2004\)
+
+% FOGRA29
+% Uses the FOGRA29 press characterization. It is designed to produce quality separations for standard ISO printing using: 350% total ink coverage, positive film, and coated paper.
+% Uncoated FOGRA29 \(ISO 12647-2:2004\)
+
+% JapanColor2003
+% Uses the Japan Color 2003 specification for type 3 (coated) paper. It is designed to produce quality separations using: 350% total ink coverage, positive film and coated paper on heat-set web offset presses.
+% Japan Color 2003 Web Coated
+
+% EuroscaleCoated
+% Uses specifications designed to produce quality separations using Euroscale inks under the following printing conditions: 350% total area of ink coverage, positive plate, bright white coated stock.
+% Euroscale Coated v2
+
+% EuroscaleUnCoated
+% Uses specifications designed to produce quality separations using Euroscale inks under the following printing conditions: 260% total area of ink coverage, positive plate, uncoated white offset stock.
+% Euroscale Uncoated v2
+
+% US Sheetfed Coated v2
+
+% US Sheetfed UnCoated v2
+
+% US Web UnCoated v2
+
+% Generic CMYK Profile
+
+
+
+
+\endinput
+
+
+
+/Library/Application Support/Adobe/Color
+/Library/Application Support/Adobe/Color/Profiles
+/Library/Application Support/Adobe/Color/Profiles/BlackWhite.icc
+/Library/Application Support/Adobe/Color/Profiles/CIERGB.icc
+/Library/Application Support/Adobe/Color/Profiles/EuroscaleCoated.icc
+/Library/Application Support/Adobe/Color/Profiles/EuroscaleUncoated.icc
+/Library/Application Support/Adobe/Color/Profiles/PAL_SECAM.icc
+/Library/Application Support/Adobe/Color/Profiles/Recommended
+/Library/Application Support/Adobe/Color/Profiles/Recommended/AdobeRGB1998.icc
+/Library/Application Support/Adobe/Color/Profiles/Recommended/AppleRGB.icc
+/Library/Application Support/Adobe/Color/Profiles/Recommended/CoatedFOGRA27.icc
+/Library/Application Support/Adobe/Color/Profiles/Recommended/CoatedFOGRA39.icc
+/Library/Application Support/Adobe/Color/Profiles/Recommended/CoatedGRACoL2006.icc
+/Library/Application Support/Adobe/Color/Profiles/Recommended/ColorMatchRGB.icc
+/Library/Application Support/Adobe/Color/Profiles/Recommended/JapanColor2001Coated.icc
+/Library/Application Support/Adobe/Color/Profiles/Recommended/JapanColor2001Uncoated.icc
+/Library/Application Support/Adobe/Color/Profiles/Recommended/JapanColor2002Newspaper.icc
+/Library/Application Support/Adobe/Color/Profiles/Recommended/JapanColor2003WebCoated.icc
+/Library/Application Support/Adobe/Color/Profiles/Recommended/JapanWebCoated.icc
+/Library/Application Support/Adobe/Color/Profiles/Recommended/ProPhoto.icm
+/Library/Application Support/Adobe/Color/Profiles/Recommended/USNewsprintSNAP2007.icc
+/Library/Application Support/Adobe/Color/Profiles/Recommended/USSheetfedCoated.icc
+/Library/Application Support/Adobe/Color/Profiles/Recommended/USSheetfedUncoated.icc
+/Library/Application Support/Adobe/Color/Profiles/Recommended/USWebCoatedSWOP.icc
+/Library/Application Support/Adobe/Color/Profiles/Recommended/USWebUncoated.icc
+/Library/Application Support/Adobe/Color/Profiles/Recommended/UncoatedFOGRA29.icc
+/Library/Application Support/Adobe/Color/Profiles/Recommended/WebCoatedFOGRA28.icc
+/Library/Application Support/Adobe/Color/Profiles/Recommended/WebCoatedSWOP2006Grade3.icc
+/Library/Application Support/Adobe/Color/Profiles/Recommended/WebCoatedSWOP2006Grade5.icc
+/Library/Application Support/Adobe/Color/Profiles/Recommended/sRGB Color Space Profile.icm
+/Library/Application Support/Adobe/Color/Profiles/SMPTE-C.icc
+/Library/Application Support/Adobe/Color/Profiles/WideGamutRGB.icc
+/Library/Application Support/Adobe/Color/Settings
+/Library/Application Support/Adobe/Color/Settings/Europe General Purpose 3.csf
+/Library/Application Support/Adobe/Color/Settings/Europe Prepress 3.csf
+/Library/Application Support/Adobe/Color/Settings/Europe Web Internet 2.csf
+/Library/Application Support/Adobe/Color/Settings/Japan General Purpose.csf
+/Library/Application Support/Adobe/Color/Settings/Japan Magazine.csf
+/Library/Application Support/Adobe/Color/Settings/Japan Newspaper.csf
+/Library/Application Support/Adobe/Color/Settings/Japan Prepress.csf
+/Library/Application Support/Adobe/Color/Settings/Japan Web Internet.csf
+/Library/Application Support/Adobe/Color/Settings/Monitor Color.csf
+/Library/Application Support/Adobe/Color/Settings/North America General Purpose.csf
+/Library/Application Support/Adobe/Color/Settings/North America Newspaper.csf
+/Library/Application Support/Adobe/Color/Settings/North America Prepress.csf
+/Library/Application Support/Adobe/Color/Settings/North America Web Internet.csf
+
+
+
diff --git a/macros/latex/contrib/pdfx/CallasColorProfiles.tex b/macros/latex/contrib/pdfx/CallasColorProfiles.tex
new file mode 100644
index 0000000000..c44a1794be
--- /dev/null
+++ b/macros/latex/contrib/pdfx/CallasColorProfiles.tex
@@ -0,0 +1,118 @@
+% This file gives macros to specify CMYK Color Profiles as supported by Callas's pdfaPilot 7 software.
+% Identifying names, comments and descriptions are taken from pdfaPilot's "Color Setup" Preferences panel.
+% --- user-command --- CMYK profile needed with PDF/X-?? files
+% \setCMYKcolorprofile{<filename>}{<output intent>}{<identifier>}{<registry URL>}
+% \setCUSTOMcolorprofile{<filename>}{<directory>}{<identifier>}{<registry URL>}%
+%% {<num>}{<ICC version>}{<color names>}{<CheckSum>}
+% e.g.
+
+\begingroup
+ \catcode`\_ 12 \catcode`\( 12 \catcode`\) 12 \catcode`\/ 12 \catcode`\- 12
+
+%% Locations of Callas profiles on Mac OS X:
+%% consult the list of profiles given at the end, to choose the correct directory.
+%
+\gdef\CallasMacOSpdfaPilotdir{/Applications/callas pdfaPilot 7/callas pdfaPilot.app/Contents/Resources/etc}
+\gdef\CallasMacOSAcroPlugindir{%
+ /Library/Application Support/Adobe/Acrobat/Beta/Plug-ins/callas software/pdfaPilot7.acroplugin/Versions/A/Resources/}
+
+%% use one of the following:
+\global\let\CallasMacOSdir\CallasMacOSpdfaPilotdir
+%\global\let\CallasMacOSdir\CallasMacOSAcroPlugindir
+
+\gdef\CallasAPDFLdir{\CallasMacOSdir/APDFL/Resource/Color/Profiles/}
+\gdef\CallasColorConversiondir{\CallasMacOSdir/ColorConversion/ManageColors/}
+\gdef\CallasDeviceLinkdir{\CallasMacOSdir/DeviceLink/}
+\gdef\CallasProfilesdir{\CallasMacOSdir/ICC profiles/}
+\gdef\CallasCMYKdir{\CallasMacOSdir/ICC profiles/CMYK/}
+\gdef\CallasRGBdir{\CallasMacOSdir/ICC profiles/RGB/}
+\gdef\CallasGraydir{\CallasMacOSdir/ICC profiles/Gray/}
+\gdef\CallasLabdir{\CallasMacOSdir/ICC profiles/Lab/}
+\gdef\CallasPDFPSTool{\CallasMacOSdir/PDFPSTool/ICCProfiles/}
+
+%e.g., Use \pdfxSetCMYKcolorProfileDir{\CallasCMYKdir} within the .xmpdata file
+
+
+%% Custom Color space example
+
+% 7C Indigo TAC370 (ColorLogic)
+% "7 color profile"
+% Custom 7-color profile.
+\gdef\viiIndigoTAC{%
+ \let\CallasMacOSdir\CallasMacOSpdfaPilotdir
+ \setCUSTOMcolorprofile
+ {7C Indigo_TAC370_ColorLogic.icc}%
+ {\CallasProfilesdir}%
+ {7C Indigo TAC370 (ColorLogic)}% /ProfileName
+ {http://www.colorlogic.de}% /RegistryName
+ {7CLR}% number of colors specifier
+ {02400000}% ICC version
+ {/Cyan /Magenta /Yellow /Black /Orange /Green /Violet}% colour names
+ {48110b8b410ee6be015f3932c3167869}% CheckSum
+}%
+
+
+\endgroup
+\endinput
+
+/Applications/callas pdfaPilot 7/callas pdfaPilot.app/Contents/Resources/etc/
+
+ APDFL/Resource/Color/Profiles/USWebCoatedSWOP.icc
+ ColorConversion/ManageColors/DefaultCMYK.icc
+ DeviceLink/DL4_sRGB-ISOcoated_v2_300_bas_0001.icc
+ DeviceLink/ISOcoated_v2_to_PSOcoated_v3_DeviceLink.icc
+ DeviceLink/PSOcoated_v3_to_ISOcoated_v2_DeviceLink.icc
+ ICC profiles/7C Indigo_TAC370_ColorLogic.icc
+ ICC profiles/sRGB IEC61966-2.1.icc
+ ICC profiles/CMYK/CoatedFOGRA27.icc
+ ICC profiles/CMYK/CoatedFOGRA39.icc
+ ICC profiles/CMYK/EuroscaleCoated.icc
+ ICC profiles/CMYK/GRACoL2006_Coated1v2.icc
+ ICC profiles/CMYK/ISOcoated_v2_eci.icc
+ ICC profiles/CMYK/ISOnewspaper26v4.icc
+ ICC profiles/CMYK/JapanColor2001Coated.icc
+ ICC profiles/CMYK/PSO_Coated_300_NPscreen_ISO12647_eci.icc
+ ICC profiles/CMYK/PSO_LWC_Improved_eci.icc
+ ICC profiles/CMYK/PSO_MFC_Paper_eci.icc
+ ICC profiles/CMYK/PSO_SNP_Paper_eci.icc
+ ICC profiles/CMYK/PSO_Uncoated_ISO12647_eci.icc
+ ICC profiles/CMYK/PSOcoated_v3.icc
+ ICC profiles/CMYK/SWOP2006_Coated3v2.icc
+ ICC profiles/CMYK/USWebCoatedSWOP.icc
+ ICC profiles/CMYK/callas_small_FOGRA39.icc
+ ICC profiles/Gray/Dot Gain 10 prct.icc
+ ICC profiles/Gray/Dot Gain 15 prct.icc
+ ICC profiles/Gray/Dot Gain 20 prct.icc
+ ICC profiles/Gray/Dot Gain 25 prct.icc
+ ICC profiles/Gray/Dot Gain 30 prct.icc
+ ICC profiles/Lab/Generic Lab Profile.icc
+ ICC profiles/RGB/AdobeRGB1998.icc
+ ICC profiles/RGB/ECI-RGB.V1.0.icc
+ ICC profiles/RGB/eciRGB_v2.icc
+ PDFPSTool/ICCProfiles/AdobeRGB1998.icc
+ PDFPSTool/ICCProfiles/AppleRGB.icc
+ PDFPSTool/ICCProfiles/BlackWhite.icc
+ PDFPSTool/ICCProfiles/CIERGB.icc
+ PDFPSTool/ICCProfiles/CoatedFOGRA27.icc
+ PDFPSTool/ICCProfiles/CoatedFOGRA39.icc
+ PDFPSTool/ICCProfiles/CoatedGRACol2006.icc
+ PDFPSTool/ICCProfiles/ColorMatchRGB.icc
+ PDFPSTool/ICCProfiles/EuropeISOCoatedFOGRA27.icc
+ PDFPSTool/ICCProfiles/EuroscaleCoated.icc
+ PDFPSTool/ICCProfiles/EuroscaleUncoated.icc
+ PDFPSTool/ICCProfiles/JapanColor2001Coated.icc
+ PDFPSTool/ICCProfiles/JapanColor2001Uncoated.icc
+ PDFPSTool/ICCProfiles/JapanColor2002Newspaper.icc
+ PDFPSTool/ICCProfiles/JapanStandard.icc
+ PDFPSTool/ICCProfiles/JapanWebCoated.icc
+ PDFPSTool/ICCProfiles/PAL_SECAM.icc
+ PDFPSTool/ICCProfiles/SMPTE-C.icc
+ PDFPSTool/ICCProfiles/USSheetfedCoated.icc
+ PDFPSTool/ICCProfiles/USSheetfedUncoated.icc
+ PDFPSTool/ICCProfiles/USWebCoatedSWOP.icc
+ PDFPSTool/ICCProfiles/USWebUncoated.icc
+ PDFPSTool/ICCProfiles/UnCoatedFOGRA29.icc
+ PDFPSTool/ICCProfiles/WebCoatedFOGRA28.icc
+ PDFPSTool/ICCProfiles/WebCoatedSWOP2006Grade3.icc
+ PDFPSTool/ICCProfiles/WebCoatedSWOP2006Grade5.icc
+ PDFPSTool/ICCProfiles/WideGamutRGB.icc
diff --git a/macros/latex/contrib/pdfx/README b/macros/latex/contrib/pdfx/README
new file mode 100644
index 0000000000..8751665f0e
--- /dev/null
+++ b/macros/latex/contrib/pdfx/README
@@ -0,0 +1,42 @@
+Readme for pdfx package (pdfx.sty)
+
+pdfx.sty is a LaTeX package which helps to create PDF/X and
+PFD/A, PDF/E and PDF/VT compliant PDF documents with pdfTeX.
+
+Installation:
+
+Create a directory $TEXMF/tex/latex/pdfx and copy pdfx.sty, *.xmp,
+*.icc, *.def and glyphtounicode-cmr.tex to this directory. Update
+the file database of your TeX system.
+
+Documentation:
+
+Composite documentation and code is available in src/pdfx.dtx. Run
+TeX/LaTeX on pdfx.ins to extract pdfx.sty from pdfx.dtx. If you
+[pdf]LaTeX pdfx.dtx, you will get pdfx.pdf which is the human readable
+documentation.
+
+A Makefile is provided in the src directory. Following steps will
+create the documentation on GNU/Linux or similar operating system:
+
+ make pdf
+ make out
+ make index
+ make changes
+ make pdf
+
+'make all' does all the above, as a single command-line call.
+
+'make out' is for manipulating the bookmarks file to create QUICK
+LINKS in the pdf document.
+
+Licence:
+
+The package is released under LaTeX Project Public Licence.
+
+Authors:
+
+CV Radhakrishnan <cvr@river-valley.org>
+Han The Thanh <thanh@river-valley.org>
+Ross Moore <ross.moore@mq.edu.au>
+Peter Selinger <selinger@mathstat.dal.ca>
diff --git a/macros/latex/contrib/pdfx/armglyphs.dfu b/macros/latex/contrib/pdfx/armglyphs.dfu
new file mode 100644
index 0000000000..a71c64aa5b
--- /dev/null
+++ b/macros/latex/contrib/pdfx/armglyphs.dfu
@@ -0,0 +1,137 @@
+\pdfglyphtounicode{armabbrev}{055F}
+\pdfglyphtounicode{armnum}{0559}
+\pdfglyphtounicode{Armdza}{0541}
+\pdfglyphtounicode{Armghat}{0542}
+\pdfglyphtounicode{Armtche}{0543}
+\pdfglyphtounicode{Arme}{0537}
+\pdfglyphtounicode{Armat}{0538}
+\pdfglyphtounicode{Armto}{0539}
+\pdfglyphtounicode{Armzhe}{053A}
+\pdfglyphtounicode{Armsha}{0547}
+\pdfglyphtounicode{Armcha}{0549}
+\pdfglyphtounicode{Armra}{054C}
+\pdfglyphtounicode{Armtsa}{053E}
+\pdfglyphtounicode{Armpyur}{0553}
+\pdfglyphtounicode{Armo}{0555}
+\pdfglyphtounicode{armdram}{058F}
+\pdfglyphtounicode{armeternity}{058D}
+\pdfglyphtounicode{armdza}{0571}
+\pdfglyphtounicode{armghat}{0572}
+\pdfglyphtounicode{armtche}{0573}
+\pdfglyphtounicode{arme}{0567}
+\pdfglyphtounicode{armat}{0568}
+\pdfglyphtounicode{armto}{0569}
+\pdfglyphtounicode{armzhe}{056A}
+\pdfglyphtounicode{armsha}{0577}
+\pdfglyphtounicode{armcha}{0579}
+\pdfglyphtounicode{armra}{057C}
+\pdfglyphtounicode{armtsa}{056E}
+\pdfglyphtounicode{armpyur}{0583}
+\pdfglyphtounicode{armo}{0585}
+\pdfglyphtounicode{armew}{0587}
+\pdfglyphtounicode{armexclam}{055C}
+%\pdfglyphtounicode{quotedblright}{201D}
+%\pdfglyphtounicode{numbersign}{0023
+%\pdfglyphtounicode{dollar}{0024}
+%\pdfglyphtounicode{percent}{0025}
+%\pdfglyphtounicode{ampersand}{00026}
+\pdfglyphtounicode{armapostrophe}{055A}
+\pdfglyphtounicode{armparenleft}{0028}
+\pdfglyphtounicode{armparenright}{0029}
+%\pdfglyphtounicode{asterisk}{002A}
+%\pdfglyphtounicode{plus}{002B}
+\pdfglyphtounicode{armcomma}{002C}
+\pdfglyphtounicode{armendash}{2010}
+\pdfglyphtounicode{armdot}{2024}
+\pdfglyphtounicode{armellipsis}{2026}
+%\pdfglyphtounicode{slash}{002F}
+%\pdfglyphtounicode{zero}{0030}
+%\pdfglyphtounicode{one}{0031}
+%\pdfglyphtounicode{two}{0032}
+%\pdfglyphtounicode{three}{0033}
+%\pdfglyphtounicode{four}{0034}
+%\pdfglyphtounicode{five}{0035}
+%\pdfglyphtounicode{six}{0036}
+%\pdfglyphtounicode{seven}{0037}
+%\pdfglyphtounicode{eight}{0038}
+%\pdfglyphtounicode{nine}{0039}
+\pdfglyphtounicode{armfullstop}{0589}
+%\pdfglyphtounicode{semicolon}{003B}
+\pdfglyphtounicode{armsection}{00A7}
+\pdfglyphtounicode{armquotleft}{00AB}
+%\pdfglyphtounicode{equal}{003D}
+\pdfglyphtounicode{armquotright}{00BB}
+\pdfglyphtounicode{armquestion}{055E}
+%\pdfglyphtounicode{at}{0040}
+\pdfglyphtounicode{Armayb}{0531}
+\pdfglyphtounicode{Armben}{0532}
+\pdfglyphtounicode{Armtso}{0551}
+\pdfglyphtounicode{Armda}{0534}
+\pdfglyphtounicode{Armyech}{0535}
+\pdfglyphtounicode{Armfe}{0556}
+\pdfglyphtounicode{Armgim}{0533}
+\pdfglyphtounicode{Armho}{0540}
+\pdfglyphtounicode{Armini}{053B}
+\pdfglyphtounicode{Armje}{054B}
+\pdfglyphtounicode{Armken}{053F}
+\pdfglyphtounicode{Armlyun}{053C}
+\pdfglyphtounicode{Armmen}{0544}
+\pdfglyphtounicode{Armnu}{0546}
+\pdfglyphtounicode{Armvo}{0548}
+\pdfglyphtounicode{Armpe}{054A}
+\pdfglyphtounicode{Armke}{0554}
+\pdfglyphtounicode{Armre}{0550}
+\pdfglyphtounicode{Armse}{054D}
+\pdfglyphtounicode{Armtyun}{054F}
+\pdfglyphtounicode{Armvovyun}{0548 0552}
+\pdfglyphtounicode{Armvev}{054E}
+\pdfglyphtounicode{Armvyun}{0552}
+\pdfglyphtounicode{Armkhe}{053D}
+\pdfglyphtounicode{Armhi}{0545}
+\pdfglyphtounicode{Armza}{0536}
+%\pdfglyphtounicode{bracketleft}{05}
+%\pdfglyphtounicode{quotedblleft}{05}
+%\pdfglyphtounicode{bracketright}{05}
+%\pdfglyphtounicode{braceleft}{05}
+%\pdfglyphtounicode{braceright}{05}
+\pdfglyphtounicode{armsep}{055D}
+\pdfglyphtounicode{armayb}{0561}
+\pdfglyphtounicode{armben}{0562}
+\pdfglyphtounicode{armtso}{0581}
+\pdfglyphtounicode{armda}{0564}
+\pdfglyphtounicode{armyech}{0565}
+\pdfglyphtounicode{armfe}{0586}
+\pdfglyphtounicode{armgim}{0563}
+\pdfglyphtounicode{armho}{0570}
+\pdfglyphtounicode{armini}{056B}
+\pdfglyphtounicode{armje}{057B}
+\pdfglyphtounicode{armken}{056F}
+\pdfglyphtounicode{armlyun}{056C}
+\pdfglyphtounicode{armmen}{0574}
+\pdfglyphtounicode{armnu}{0576}
+\pdfglyphtounicode{armvo}{0578}
+\pdfglyphtounicode{armpe}{057A}
+\pdfglyphtounicode{armke}{0584}
+\pdfglyphtounicode{armre}{0580}
+\pdfglyphtounicode{armse}{057D}
+\pdfglyphtounicode{armtyun}{057F}
+\pdfglyphtounicode{armvovyun}{0578 0582}
+\pdfglyphtounicode{armvev}{057E}
+\pdfglyphtounicode{armvyun}{0582}
+\pdfglyphtounicode{armkhe}{056D}
+\pdfglyphtounicode{armhi}{0575}
+\pdfglyphtounicode{armza}{0566}
+\pdfglyphtounicode{armyentamna}{058A}
+\pdfglyphtounicode{armaccent}{055B}
+\pdfglyphtounicode{armemdash}{2014}
+%\pdfglyphtounicode{emdash}{2014}
+%\pdfglyphtounicode{exclam}{0021}
+%\pdfglyphtounicode{question}{003F}
+%
+% ligatures — probably not in use
+%
+\pdfglyphtounicode{armmennu}{FB13}
+\pdfglyphtounicode{armmenyech}{FB14}
+\pdfglyphtounicode{armmenini}{FB15}
+\pdfglyphtounicode{armvevnu}{FB16}
+\pdfglyphtounicode{armmenkhe}{FB17}
diff --git a/macros/latex/contrib/pdfx/glyphtounicode-cmr.tex b/macros/latex/contrib/pdfx/glyphtounicode-cmr.tex
new file mode 100644
index 0000000000..f0f377fe0a
--- /dev/null
+++ b/macros/latex/contrib/pdfx/glyphtounicode-cmr.tex
@@ -0,0 +1,357 @@
+%
+% Copyright (c) 2008, Han The Thanh <thanh@river-valley.org>
+% Copyright (c) 2014, Peter Selinger <selinger@mathstat.dal.ca>
+% Copyright (c) 2018, Ross Moore <ross.moore@mq.edu.au>
+%
+% This file may be distributed and/or modified under the conditions
+% of the LaTeX Project Public License, either version 1.2 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.2 or later is part of all distributions of LaTeX
+% version 1999/12/01 or later.
+%
+% Changes:
+% 2014/08/11: PS1 - mapped most glyphs to existing Unicode code points.
+% 2014/08/11: PS1 - added mappings for the xyatip and xybtip fonts.
+% 2018/09/18: RRM - use variation selectors for the different sizes
+
+%% Glyphs from the cmex fonts:
+
+\pdfglyphtounicode{angbracketleftBig}{27E8 FE02}
+\pdfglyphtounicode{angbracketleftBigg}{27E8 FE04}
+\pdfglyphtounicode{angbracketleftbig}{27E8 FE01}
+\pdfglyphtounicode{angbracketleftbigg}{27E8 FE03}
+\pdfglyphtounicode{angbracketrightBig}{27E9 FE02}
+\pdfglyphtounicode{angbracketrightBigg}{27E9 FE04}
+\pdfglyphtounicode{angbracketrightbig}{27E9 FE01}
+\pdfglyphtounicode{angbracketrightbigg}{27E9 FE03}
+\pdfglyphtounicode{arrowbt}{2193}
+\pdfglyphtounicode{arrowdblbt}{21D3}
+\pdfglyphtounicode{arrowdbltp}{21D1}
+\pdfglyphtounicode{arrowhookleft}{21AA}
+\pdfglyphtounicode{arrowhookright}{21A9}
+\pdfglyphtounicode{arrowtp}{2191}
+\pdfglyphtounicode{arrowvertex}{23D0}
+\pdfglyphtounicode{arrowvertexdbl}{20E6}% was {ED12}% PUA
+\pdfglyphtounicode{backslashBig}{005C FE02}
+\pdfglyphtounicode{backslashBigg}{005C FE04}
+\pdfglyphtounicode{backslashbig}{005C FE01}
+\pdfglyphtounicode{backslashbigg}{005C FE03}
+\pdfglyphtounicode{braceex}{23AA}
+\pdfglyphtounicode{bracehtipdownleft}{23DF}% was {ED17}% PUA
+\pdfglyphtounicode{bracehtipdownright}{23DF}% was {ED18}% PUA
+\pdfglyphtounicode{bracehtipupleft}{23DE}% was {ED19}% PUA
+\pdfglyphtounicode{bracehtipupright}{23DE}% was {ED1A}% PUA
+\pdfglyphtounicode{braceleftBig}{007B FE02}
+\pdfglyphtounicode{braceleftBigg}{007B FE04}
+\pdfglyphtounicode{braceleftbig}{007B FE01}
+\pdfglyphtounicode{braceleftbigg}{007B FE03}
+\pdfglyphtounicode{braceleftbt}{23A9}
+\pdfglyphtounicode{braceleftmid}{23A8}
+\pdfglyphtounicode{bracelefttp}{23A7}
+\pdfglyphtounicode{bracerightBig}{007D FE02}
+\pdfglyphtounicode{bracerightBigg}{007D FE04}
+\pdfglyphtounicode{bracerightbig}{007D FE01}
+\pdfglyphtounicode{bracerightbigg}{007D FE03}
+\pdfglyphtounicode{bracerightbt}{23AD}
+\pdfglyphtounicode{bracerightmid}{23AC}
+\pdfglyphtounicode{bracerighttp}{23AB}
+\pdfglyphtounicode{bracketleftBig}{005B FE02}
+\pdfglyphtounicode{bracketleftBigg}{005B FE04}
+\pdfglyphtounicode{bracketleftbig}{005B FE01}
+\pdfglyphtounicode{bracketleftbigg}{005B FE03}
+\pdfglyphtounicode{bracketleftbt}{23A3}
+\pdfglyphtounicode{bracketleftex}{23A2}
+\pdfglyphtounicode{bracketlefttp}{23A1}
+\pdfglyphtounicode{bracketrightBig}{005D FE02}
+\pdfglyphtounicode{bracketrightBigg}{005D FE04}
+\pdfglyphtounicode{bracketrightbig}{005D FE01}
+\pdfglyphtounicode{bracketrightbigg}{005D FE03}
+\pdfglyphtounicode{bracketrightbt}{23A6}
+\pdfglyphtounicode{bracketrightex}{23A5}
+\pdfglyphtounicode{bracketrighttp}{23A4}
+\pdfglyphtounicode{ceilingleftBig}{2308 FE02}
+\pdfglyphtounicode{ceilingleftBigg}{2308 FE04}
+\pdfglyphtounicode{ceilingleftbig}{2308 FE01}
+\pdfglyphtounicode{ceilingleftbigg}{2308 FE03}
+\pdfglyphtounicode{ceilingrightBig}{2309 FE02}
+\pdfglyphtounicode{ceilingrightBigg}{2309 FE04}
+\pdfglyphtounicode{ceilingrightbig}{2309 FE01}
+\pdfglyphtounicode{ceilingrightbigg}{2309 FE03}
+\pdfglyphtounicode{circledotdisplay}{2A00 FE02}
+\pdfglyphtounicode{circledottext}{2A00 FE01}
+\pdfglyphtounicode{circlemultiplydisplay}{2A02 FE02}
+\pdfglyphtounicode{circlemultiplytext}{2A02 FE01}
+\pdfglyphtounicode{circleplusdisplay}{2A01 FE02}
+\pdfglyphtounicode{circleplustext}{2A01 FE01}
+\pdfglyphtounicode{contintegraldisplay}{222E FE02}
+\pdfglyphtounicode{contintegraltext}{222E FE01}
+\pdfglyphtounicode{coproductdisplay}{2210 FE02}
+\pdfglyphtounicode{coproducttext}{2210 FE01}
+\pdfglyphtounicode{floorleftBig}{230A FE02}
+\pdfglyphtounicode{floorleftBigg}{230A FE04}
+\pdfglyphtounicode{floorleftbig}{230A FE01}
+\pdfglyphtounicode{floorleftbigg}{230A FE03}
+\pdfglyphtounicode{floorrightBig}{230B FE02}
+\pdfglyphtounicode{floorrightBigg}{230B FE04}
+\pdfglyphtounicode{floorrightbig}{230B FE01}
+\pdfglyphtounicode{floorrightbigg}{230B FE03}
+\pdfglyphtounicode{hatwide}{02C6 FE01}
+\pdfglyphtounicode{hatwider}{02C6 FE02}
+\pdfglyphtounicode{hatwidest}{02C6 FE03}
+\pdfglyphtounicode{integraldisplay}{222B FE02}
+\pdfglyphtounicode{integraltext}{222B FE01}
+\pdfglyphtounicode{intersectiondisplay}{22C2 FE02}
+\pdfglyphtounicode{intersectiontext}{22C2 FE01}
+\pdfglyphtounicode{logicalanddisplay}{22C0 FE02}
+\pdfglyphtounicode{logicalandtext}{22C0 FE01}
+\pdfglyphtounicode{logicalordisplay}{22C1 FE02}
+\pdfglyphtounicode{logicalortext}{22C1 FE01}
+\pdfglyphtounicode{mapsto}{21A6}
+\pdfglyphtounicode{parenleftBig}{0028 FE02}
+\pdfglyphtounicode{parenleftBigg}{0028 FE04}
+\pdfglyphtounicode{parenleftbig}{0028 FE01}
+\pdfglyphtounicode{parenleftbigg}{0028 FE03}
+\pdfglyphtounicode{parenleftbt}{239D}
+\pdfglyphtounicode{parenleftex}{239C}
+\pdfglyphtounicode{parenlefttp}{239B}
+\pdfglyphtounicode{parenrightBig}{0029 FE02}
+\pdfglyphtounicode{parenrightBigg}{0029 FE04}
+\pdfglyphtounicode{parenrightbig}{0029 FE01}
+\pdfglyphtounicode{parenrightbigg}{0029 FE03}
+\pdfglyphtounicode{parenrightbt}{23A0}
+\pdfglyphtounicode{parenrightex}{239F}
+\pdfglyphtounicode{parenrighttp}{239E}
+\pdfglyphtounicode{productdisplay}{220F FE02}
+\pdfglyphtounicode{producttext}{220F FE01}
+\pdfglyphtounicode{radicalBig}{221A FE02}
+\pdfglyphtounicode{radicalBigg}{221A FE04}
+\pdfglyphtounicode{radicalbig}{221A FE01}
+\pdfglyphtounicode{radicalbigg}{221A FE03}
+\pdfglyphtounicode{radicalbt}{23B7}% was {221A}
+\pdfglyphtounicode{radicaltp}{231C}% was {ED6A}% PUA
+\pdfglyphtounicode{radicalvertex}{20D3}% was {ED6B}% PUA
+\pdfglyphtounicode{slashBig}{002F FE02}
+\pdfglyphtounicode{slashBigg}{002F FE04}
+\pdfglyphtounicode{slashbig}{002F FE01}
+\pdfglyphtounicode{slashbigg}{002F FE03}
+\pdfglyphtounicode{summationdisplay}{2211 FE02}
+\pdfglyphtounicode{summationtext}{2211 FE01}
+\pdfglyphtounicode{tie}{2040}
+\pdfglyphtounicode{tildewide}{02DC FE01}
+\pdfglyphtounicode{tildewider}{02DC FE02}
+\pdfglyphtounicode{tildewidest}{02DC FE03}
+\pdfglyphtounicode{uniondisplay}{22C3 FE02}
+\pdfglyphtounicode{unionmultidisplay}{2A04 FE02}
+\pdfglyphtounicode{unionmultitext}{2A04 FE01}
+\pdfglyphtounicode{unionsqdisplay}{2A06 FE02}
+\pdfglyphtounicode{unionsqtext}{2A06 FE01}
+\pdfglyphtounicode{uniontext}{22C3 FE01}
+\pdfglyphtounicode{vextenddouble}{20E6}% was {ED79}% PUA
+\pdfglyphtounicode{vextendsingle}{20D3}%%% was {23D0}
+
+%% Glyphs from the cmr fonts:
+
+\pdfglyphtounicode{suppress}{EB61}
+
+%% Glyphs from the lasy fonts:
+
+%% Note: unfortunately, some other fonts, such as line and xydash,
+%% also use glyphs names a0...a127, but for different glyphs.
+
+\pdfglyphtounicode{a1}{25C1}
+\pdfglyphtounicode{a2}{22B4}
+\pdfglyphtounicode{a3}{25B7}
+\pdfglyphtounicode{a4}{22B5}
+\pdfglyphtounicode{a40}{02C2}
+\pdfglyphtounicode{a41}{02C3}
+\pdfglyphtounicode{a42}{2303}
+\pdfglyphtounicode{a43}{2304}
+\pdfglyphtounicode{a48}{2127}
+\pdfglyphtounicode{a49}{22C8}
+\pdfglyphtounicode{a50}{25A1}
+\pdfglyphtounicode{a51}{25C7}
+\pdfglyphtounicode{a58}{2053}
+\pdfglyphtounicode{a59}{219D}
+\pdfglyphtounicode{a60}{228F}
+\pdfglyphtounicode{a61}{2290}
+
+%% Glyphs from the xyatip and xybtip fonts fonts of the XYPic package.
+%% They denote half arrow tips pointing in various directions. We map
+%% them to Unicode arrows pointing in approximately the same
+%% direction, in increments of 45 degrees.
+
+\pdfglyphtounicode{d0}{2199}
+\pdfglyphtounicode{d1}{2199}
+\pdfglyphtounicode{d2}{2199}
+\pdfglyphtounicode{d3}{2199}
+\pdfglyphtounicode{d4}{2199}
+\pdfglyphtounicode{d5}{2199}
+\pdfglyphtounicode{d6}{2199}
+\pdfglyphtounicode{d7}{2193}
+\pdfglyphtounicode{d8}{2193}
+\pdfglyphtounicode{d9}{2193}
+\pdfglyphtounicode{d10}{2193}
+\pdfglyphtounicode{d11}{2193}
+\pdfglyphtounicode{d12}{2193}
+\pdfglyphtounicode{d13}{2193}
+\pdfglyphtounicode{d14}{2193}
+\pdfglyphtounicode{d15}{2193}
+\pdfglyphtounicode{d16}{2193}
+\pdfglyphtounicode{d17}{2193}
+\pdfglyphtounicode{d18}{2193}
+\pdfglyphtounicode{d19}{2193}
+\pdfglyphtounicode{d20}{2193}
+\pdfglyphtounicode{d21}{2193}
+\pdfglyphtounicode{d22}{2193}
+\pdfglyphtounicode{d23}{2193}
+\pdfglyphtounicode{d24}{2198}
+\pdfglyphtounicode{d25}{2198}
+\pdfglyphtounicode{d26}{2198}
+\pdfglyphtounicode{d27}{2198}
+\pdfglyphtounicode{d28}{2198}
+\pdfglyphtounicode{d29}{2198}
+\pdfglyphtounicode{d30}{2198}
+\pdfglyphtounicode{d31}{2198}
+\pdfglyphtounicode{d32}{2198}
+\pdfglyphtounicode{d33}{2198}
+\pdfglyphtounicode{d34}{2198}
+\pdfglyphtounicode{d35}{2198}
+\pdfglyphtounicode{d36}{2198}
+\pdfglyphtounicode{d37}{2198}
+\pdfglyphtounicode{d38}{2198}
+\pdfglyphtounicode{d39}{2192}
+\pdfglyphtounicode{d40}{2192}
+\pdfglyphtounicode{d41}{2192}
+\pdfglyphtounicode{d42}{2192}
+\pdfglyphtounicode{d43}{2192}
+\pdfglyphtounicode{d44}{2192}
+\pdfglyphtounicode{d45}{2192}
+\pdfglyphtounicode{d46}{2192}
+\pdfglyphtounicode{d47}{2192}
+\pdfglyphtounicode{d48}{2192}
+\pdfglyphtounicode{d49}{2192}
+\pdfglyphtounicode{d50}{2192}
+\pdfglyphtounicode{d51}{2192}
+\pdfglyphtounicode{d52}{2192}
+\pdfglyphtounicode{d53}{2192}
+\pdfglyphtounicode{d54}{2192}
+\pdfglyphtounicode{d55}{2192}
+\pdfglyphtounicode{d56}{2197}
+\pdfglyphtounicode{d57}{2197}
+\pdfglyphtounicode{d58}{2197}
+\pdfglyphtounicode{d59}{2197}
+\pdfglyphtounicode{d60}{2197}
+\pdfglyphtounicode{d61}{2197}
+\pdfglyphtounicode{d62}{2197}
+\pdfglyphtounicode{d63}{2197}
+\pdfglyphtounicode{d64}{2197}
+\pdfglyphtounicode{d65}{2197}
+\pdfglyphtounicode{d66}{2197}
+\pdfglyphtounicode{d67}{2197}
+\pdfglyphtounicode{d68}{2197}
+\pdfglyphtounicode{d69}{2197}
+\pdfglyphtounicode{d70}{2197}
+\pdfglyphtounicode{d71}{2191}
+\pdfglyphtounicode{d72}{2191}
+\pdfglyphtounicode{d73}{2191}
+\pdfglyphtounicode{d74}{2191}
+\pdfglyphtounicode{d75}{2191}
+\pdfglyphtounicode{d76}{2191}
+\pdfglyphtounicode{d77}{2191}
+\pdfglyphtounicode{d78}{2191}
+\pdfglyphtounicode{d79}{2191}
+\pdfglyphtounicode{d80}{2191}
+\pdfglyphtounicode{d81}{2191}
+\pdfglyphtounicode{d82}{2191}
+\pdfglyphtounicode{d83}{2191}
+\pdfglyphtounicode{d84}{2191}
+\pdfglyphtounicode{d85}{2191}
+\pdfglyphtounicode{d86}{2191}
+\pdfglyphtounicode{d87}{2191}
+\pdfglyphtounicode{d88}{2196}
+\pdfglyphtounicode{d89}{2196}
+\pdfglyphtounicode{d90}{2196}
+\pdfglyphtounicode{d91}{2196}
+\pdfglyphtounicode{d92}{2196}
+\pdfglyphtounicode{d93}{2196}
+\pdfglyphtounicode{d94}{2196}
+\pdfglyphtounicode{d95}{2196}
+\pdfglyphtounicode{d96}{2196}
+\pdfglyphtounicode{d97}{2196}
+\pdfglyphtounicode{d98}{2196}
+\pdfglyphtounicode{d99}{2196}
+\pdfglyphtounicode{d100}{2196}
+\pdfglyphtounicode{d101}{2196}
+\pdfglyphtounicode{d102}{2196}
+\pdfglyphtounicode{d103}{2190}
+\pdfglyphtounicode{d104}{2190}
+\pdfglyphtounicode{d105}{2190}
+\pdfglyphtounicode{d106}{2190}
+\pdfglyphtounicode{d107}{2190}
+\pdfglyphtounicode{d108}{2190}
+\pdfglyphtounicode{d109}{2190}
+\pdfglyphtounicode{d110}{2190}
+\pdfglyphtounicode{d111}{2190}
+\pdfglyphtounicode{d112}{2190}
+\pdfglyphtounicode{d113}{2190}
+\pdfglyphtounicode{d114}{2190}
+\pdfglyphtounicode{d115}{2190}
+\pdfglyphtounicode{d116}{2190}
+\pdfglyphtounicode{d117}{2190}
+\pdfglyphtounicode{d118}{2190}
+\pdfglyphtounicode{d119}{2190}
+\pdfglyphtounicode{d120}{2199}
+\pdfglyphtounicode{d121}{2199}
+\pdfglyphtounicode{d122}{2199}
+\pdfglyphtounicode{d123}{2199}
+\pdfglyphtounicode{d124}{2199}
+\pdfglyphtounicode{d125}{2199}
+\pdfglyphtounicode{d126}{2199}
+\pdfglyphtounicode{d127}{2199}
+\endinput
+
+% Reference:
+%
+% http://codepoints.net/basic_latin
+% 0028 0029 002F 005B 005C 005D 007B 007D
+%
+% http://codepoints.net/spacing_modifier_letters
+% 02C2 02C3 02C6 02DC
+%
+% http://codepoints.net/general_punctuation
+% 2040 2053
+%
+% http://codepoints.net/letterlike_symbols
+% 2127
+%
+% http://codepoints.net/arrows
+% 2190 2191 2192 2193 2196 2197 2198 2199 219D 21A6 21A9 21AA 21D1 21D3
+%
+% http://codepoints.net/mathematical_operators
+% 220F 2210 2211 221A 222B 222E 228F 2290 22B4 22B5 22C0 22C1 22C2 22C3
+% 22C8
+%
+% http://codepoints.net/miscellaneous_technical
+% 2303 2304 2308 2309 230A 230B 239B 239C 239D 239E 239F 23A0 23A1 23A2
+% 23A3 23A4 23A5 23A6 23A7 23A8 23A9 23AA 23AB 23AC 23AD 23D0
+%
+% http://codepoints.net/geometric_shapes
+% 25A1 25B7 25C1 25C7
+%
+% http://codepoints.net/miscellaneous_mathematical_symbols-a
+% 27E8 27E9
+%
+% http://codepoints.net/supplemental_mathematical_operators
+% 2A00 2A01 2A02 2A04 2A06
+%
+% Private Use Area:
+% EB61 ED12 ED17 ED18 ED19 ED1A ED6A ED6B ED79
+
+%
+%
+% End of file 'glyphtounicode-cmr.tex
+%
diff --git a/macros/latex/contrib/pdfx/glyphtounicode-ntx.tex b/macros/latex/contrib/pdfx/glyphtounicode-ntx.tex
new file mode 100644
index 0000000000..73651ce0a1
--- /dev/null
+++ b/macros/latex/contrib/pdfx/glyphtounicode-ntx.tex
@@ -0,0 +1,419 @@
+%%
+%% file: glyphtounicode-ntx.tex
+%% version 1.02 date: 2019-02-11
+%
+% Unicode mappings for ntx text/math glyph names
+% (c) 2018, 2019 Ross Moore <ross.moore@mq.edu.au>
+%
+% These should be loaded along with the files:
+% glyphtounicode.tex
+% glyphtounicode-cmr.tex
+% when generating files to validate for PDF/A and/or Accessibiity (PDF/UA)
+% using newtxmath.sty and/or newtxtext.sty .
+%
+%% possible corrections - - depends upon usage ???
+\begingroup
+\let\p\pdfglyphtounicode
+\p{slurabove}{2312}% was 2322 'frown'
+
+%% from TeXGyre fonts
+\p{cwm}{200B}% 0-width space
+\p{diameter}{2300}%
+\p{anglearc}{2222}%
+\p{ell}{2113}%
+\p{dotbelow}{0323}%
+\p{hookabove}{0309}%
+%% Private Use characters
+\p{threequartersemdash}{2014}% was F6DE
+%% from txmia (and also txmbia )
+\p{g1}{D835 DC54}% 0067
+\p{y1}{D835 DC66}% 0079
+\p{v1}{D835 DC63}% 0076
+\p{w1}{D835 DC64}% 0077
+\p{bbA}{D835 DD38}%
+\p{bbB}{D835 DD39}%
+\p{bbC}{2102}% *
+\p{bbD}{D835 DD3B}%
+\p{bbE}{D835 DD3C}%
+\p{bbF}{D835 DD3D}%
+\p{bbG}{D835 DD3E}%
+\p{bbH}{210D}% *
+\p{bbI}{D835 DD40}%
+\p{bbJ}{D835 DD41}%
+\p{bbK}{D835 DD42}%
+\p{bbL}{D835 DD43}%
+\p{bbM}{D835 DD44}%
+\p{bbN}{2115}% *
+\p{bbO}{D835 DD46}%
+\p{bbP}{2119}%
+\p{bbQ}{211A}% *
+\p{bbR}{211D}% *
+\p{bbS}{D835 DD4A}%
+\p{bbT}{D835 DD4B}%
+\p{bbU}{D835 DD4C}%
+\p{bbV}{D835 DD4D}%
+\p{bbW}{D835 DD4E}%
+\p{bbX}{D835 DD4F}%
+\p{bbY}{D835 DD50}%
+\p{bbZ}{2124}% *
+\p{bbk}{D835 DD5C}%
+%% from txsyc (and also txbsyc)
+\p{nequal}{2260}
+\p{npropersubset}{2284}
+\p{npropersuperset}{2285}
+\p{nelement}{2209}
+\p{nowner}{220C}
+\p{colonequal}{2254}
+\p{equalcolon}{2255}
+%% from txbsya
+\p{squaresmallsolid}{25A0}
+\p{axisshort}{2027}% hyphenation point
+\p{arrowaxisright}{27A1}% Dingbat
+\p{arrowaxisleft}{2B05}% black arrow
+%% from txbsyb
+\p{lessornotsimilar}{22E6}
+\p{greaterornotsimilar}{22E7}
+\p{notsimequal}{2247}
+\p{subsetornoteql}{2ACB}
+\p{supersetornoteql}{2ACC}
+\p{notshortbar}{2016 0337}
+\p{notshortparallel}{2AF2}% ?
+\p{barshort}{2758}% ?
+\p{parallelshort}{2016}% ?
+%% from txsyc and txbsyc
+\p{mapsfrom}{2ADE}% turnstile ?
+\p{Mapsto}{27FE}% double arrow
+\p{Mapsfrom}{2AE4}% turnstile ?
+\p{mmapsto}{2AE6}% turnstile ?
+\p{mmapsfrom}{2AE3}% turnstile ?
+\p{Mmapsto}{255E}% turnstile ?
+\p{Mmapsfrom}{2AE5}% turnstile ?
+\p{medcircle}{25CB}
+\p{medbullet}{25CF}
+\p{parallel1}{2225}
+\p{nparallel}{2226}
+\p{nparallel1}{2226 FE01}
+\p{colonapprox}{003A 2248}
+\p{colonsim}{003A 223C}
+\p{coloncolonapprox}{003A 2248}
+\p{coloncolonsim}{003A 003A 223C}
+\p{doteq}{2250}
+\p{multimapinv}{27DC}
+\p{multimapboth}{29DF}
+\p{solidmultimap}{22B8 FE01}
+\p{solidmultimapinv}{27DC FE01}
+\p{solidmultimapboth}{29DF FE01}
+\p{rsolidmultimapboth}{22B6}
+\p{lsolidmultimapboth}{22B7}
+\p{forcesextra}{22AB}% turnstile ?
+\p{Forcesbar}{22AA}% turnstile ???
+\p{simequal}{2245}
+\p{precedesordblequal}{2AB3}
+\p{followsordblequal}{2AB4}
+\p{notprecedesorsimilar}{22E0}
+\p{notfollowsorsimilar}{22E1}
+\p{notlessorsimilar}{2274}
+\p{notgreaterorsimilar}{2275}
+\p{notlessorapproxeql}{2A85 0338}
+\p{notgreaterorapproxeql}{2A86 0338}
+\p{notprecedesorcurly}{22E0}
+\p{notfollowsorcurly}{22E1}
+\p{notgreaterorless}{2279}
+\p{notlessorgreater}{2278}
+\p{notdifference}{224F 0338}
+\p{notgeomequivalent}{224E 0338}
+\p{notrevsimilar}{223D 0338}
+\p{notrevasymptequal}{22CD 0338}
+\p{nequal}{2260}
+\p{nequivasymptotic}{226D}
+\p{nequivalence}{2262}
+\p{nsimilar}{2241}
+\p{napproxequal}{2249}
+\p{npropersubset}{2284}
+\p{npropersuperset}{2285}
+\p{nlessmuch}{226A 0338}
+\p{ngreatermuch}{226B 0338}
+\p{notapproxequal}{2249}
+\p{notapproxorequal}{224A 0338}
+\p{notfollowsorequal}{2AB7 0338}
+\p{notprecedesorequal}{2AB8 0338}
+\p{notprecedesordblequal}{2AB3 0338}
+\p{notfollowsordblequal}{2AB4 0338}
+\p{nsimilarequal}{2244}
+\p{nelement}{2209}
+\p{nowner}{220C}
+\p{notsubsetdbl}{22D0 0338}
+\p{notsupersetdbl}{22D1 0338}
+\p{nsubsetsqequal}{22E2}
+\p{nsupersetsqequal}{22E3}
+\p{colonequal}{2254}
+\p{equalcolon}{2255}
+\p{colonbar}{003A 002D}
+\p{barcolon}{2239}
+\p{Colonequal}{2A74}
+\p{Equalcolon}{2255 }
+\p{Colonbar}{003A 003A 002D}
+\p{Barcolon}{2239 003A}
+\p{strict}{297D}% fish tail
+\p{strictinverse}{297C}% fish tail
+\p{strictboth}{297C 297D}% fish tails
+\p{ampersandinv}{214B}
+\p{lbag}{27C5}
+\p{rbag}{27C6}
+\p{lbagbig}{27C5 FE01}
+\p{rbagbig}{27C6 FE01}
+\p{oless}{29C0}
+\p{ogreater}{29C1}
+\p{owedge}{2227 20DD}
+\p{ovee}{2228 20DD}
+\p{circlebar}{233D}% APL ?
+\p{circlebackslash}{2298}
+\p{multicloseleft1}{22C9}
+\p{multicloseright1}{22CA}
+\p{multicloseboth1}{22C8 FE01}
+\p{multiopenboth1}{2715 FE01}
+\p{multicloseboth}{22C8}
+\p{multiopenboth}{2715}
+\p{Diamond}{25C7}
+\p{Diamondsolid}{25C6}
+\p{intersectmulti}{2A44 FE01}% ???
+\p{notsquareimage}{228F 0338}
+\p{notsquareoriginal}{2290 0338}
+\p{dashedarrowleft}{290E}
+\p{dashedarrowright}{290F}
+\p{dashedarrowboth}{290E 290F}
+\p{squiggleleft}{21DC}
+\p{notdblarrowheadright}{2900}
+\p{notdblarrowheadleft}{219E 0337}
+\p{squareasterisk}{29C6}
+\p{squarebackslash}{29C5}
+\p{squarebar}{25EB}
+\p{squareslash}{29C4}
+\p{Wreathproduct}{2240 2240}
+\p{lambdaslash}{019B}
+\p{lambdabar}{D835 DF06 0335}
+\p{club1}{2667}
+\p{diamond1}{2666}
+\p{heart1}{2665}
+\p{spade1}{2664}
+\p{Arrownortheast}{21D7}
+\p{Arrowsoutheast}{21D8}
+\p{Arrownorthwest}{21D6}
+\p{Arrowsouthwest}{21D9}
+\p{Latticetop}{2AEA}
+\p{Perpendicular}{2AEB}
+\p{leadstoext}{219D}
+\p{leadsto}{301C}% ???
+\p{squareunionmulti}{228E FE01}
+\p{squareintersectmulti}{2A4E FE01}
+\p{dblbracketleft}{27E6}
+\p{dblbracketright}{27E7}
+\p{squareright}{25A1 2192}
+\p{squareleft}{2190 25A1}
+\p{squaredotright}{22A1 2192}
+\p{squaredotleft}{2190 22A1}
+\p{Diamondright}{25C7 2192}%
+\p{Diamondleft}{2190 25C7}
+\p{Diamonddotright}{27D0 2192}
+\p{Diamonddotleft}{2190 27D0}
+\p{squareRight}{25A1 21D2}
+\p{squareLeft}{21D0 25A1}
+\p{squaredotRight}{22A1 21D2}
+\p{squaredotLeft}{21D0 22A1}
+\p{DiamondRight}{25C7 21D2}
+\p{DiamondLeft}{21D0 25C7}
+\p{DiamonddotRight}{27D0 21D2}
+\p{DiamonddotLeft}{21D0 27D0}
+\p{Diamonddot}{27D0}
+\p{circleright}{25CB 2192}
+\p{circleleft}{2190 25CB}
+\p{circledotright}{2299 2192}
+\p{circledotleft}{2190 2299}
+\p{opentrans}{260D FE01}% ???
+\p{solidtrans}{2051 20D2}% ???
+\p{topsolidtrans}{2AF1 FE01}% ???
+\p{topopentrans}{27DF FE01}% ???
+
+%% from txsys
+\p{arcwide}{0361}
+\p{arcwider}{0361 FE01}% variants according size
+\p{arcwiderr}{0361 FE02}% .. ..
+\p{arcwidest}{0361 FE03}% .. ..
+\p{arcwideult}{0361 FE04}% .. ..
+\p{barbar}{0304 0304}
+\p{barhat}{0304 0303}
+\p{bartilde}{0304 0302}
+\p{bulletS}{25C5}
+\p{bulletSS}{2022}
+\p{bulletSSS}{2219}
+\p{cdotB}{00B7}
+\p{cdotBB}{22C5}
+\p{ddddot}{20DC}
+\p{ddddotacc}{20DC}
+\p{dddot}{20DB}
+\p{dddotacc}{20DB}
+\p{ddotacc}{0308}
+\p{dotacc}{0307}
+\p{emptysetAlt}{2300}
+\p{emptysetAlt2}{2205}
+\p{harpoonacc}{20D2}
+\p{hatbar}{0303 0304}
+\p{hathat}{0303 0303}
+\p{hattilde}{0303 0302}
+\p{lharpoonacc}{20D0}
+\p{lrharpoonacc}{20E1}
+\p{lrvec}{20E1}
+\p{lvec}{20D6}
+\p{nexists}{2204}
+\p{oarcwide}{0361 0350}% try to add upper arrow-tip
+\p{oarcwider}{0361 FE01 0350}% .. ..
+\p{oarcwiderr}{0361 FE02 0350}% .. ..
+\p{oarcwidest}{0361 FE03 0350}% .. ..
+\p{oarcwideult}{0361 FE04 0350}% .. ..
+\p{prime2}{02B9}
+\p{smcompB}{25CB}
+\p{tildebar}{0302 0304}
+\p{tildehat}{0302 0303}
+\p{tildetilde}{0302 0302}
+\p{rvec}{20D7}
+\p{vec}{20D7}
+% from txex-bar, txbex-bar
+\p{angleleftbigx}{27E8 FE01}% variants according size
+\p{anglerightbigx}{27E9 FE01}
+\p{braceleftbigx}{007B FE01}
+\p{bracerightbigx}{007D FE01}
+\p{bracketleftbigx}{005B FE01}
+\p{bracketrightbigx}{005D FE01}
+\p{ceilingleftbigx}{2308 FE01}
+\p{ceilingrightbigx}{2309 FE01}
+\p{floorleftbigx}{230A FE01}
+\p{floorrightbigx}{230B FE01}
+\p{parenleftbigx}{0028 FE01}
+\p{parenrightbigx}{0029 FE01}
+\p{bardblex}{2225 FE01}
+\p{bardblexbigx}{2225 FE02}
+\p{barex}{007C FE01}
+\p{barexbigx}{007C FE01}
+\p{bracehext}{02C9}% use a macron for horizontal spacing !!
+\p{grouphtipdownleft}{02CA}% use spacing modifiers to simulate the overbrace
+\p{grouphtipdownright}{02CB}% .. ..
+\p{grouphtipupleft}{02CF}% use spacing modifiers to simulate the underbrace
+\p{grouphtipupright}{02CE}% .. ..
+\p{groupatipdownleft}{1DFE 02CA}% include an arrow-tip
+\p{groupatipdownright}{02CB 0350}% include an arrow-tip
+\p{groupatipupleft}{02F1 02CF}% include an arrow-tip
+\p{groupatipupright}{02CE 02F2}% include an arrow-tip
+\p{parenleftbtA}{239D}
+\p{parenleftexA}{239C}
+\p{parenlefttpA}{239B}
+\p{parenrightbtA}{23A0}
+\p{parenrightexA}{239F}
+\p{parenrighttpA}{239E}
+\p{hat4}{0302 FE04}% variants according to width
+\p{hat5}{0302 FE05}% .. .. ..
+\p{hat6}{0302 FE06}% .. .. ..
+\p{tilde4}{0303 FE04}% variants according to width
+\p{tilde5}{0303 FE05}% .. .. ..
+\p{tilde6}{0303 FE06}% .. .. ..
+% from txexs
+\p{cupdottext}{2A03}
+\p{cupdotdisplay}{2A03}
+\p{dblbracketleftbig}{27E6 FE01}% variants according to size
+\p{dblbracketleftbigg}{27E6 FE02}% .. ..
+\p{dblbracketleftBig}{27E6 FE03}% .. ..
+\p{dblbracketleftBigg}{27E6 FE04}% .. ..
+\p{dblbracketleftbt}{23A5 23A3}% gives a solid v-line before bracket pieces
+\p{dblbracketleftex}{23A5 23A2}% double lines
+\p{dblbracketlefttp}{23A5 23A1}% upper left-bracket pieces
+\p{dblbracketrightbig}{27E6 FE01}% variants according to size
+\p{dblbracketrightbigg}{27E6 FE02}% .. ..
+\p{dblbracketrightBig}{27E6 FE03}% .. ..
+\p{dblbracketrightBigg}{27E6 FE04}% .. ..
+\p{dblbracketrightbt}{23A6 23A2}% gives a solid v-line after bracket pieces
+\p{dblbracketrightex}{23A5 23A2}% double lines
+\p{dblbracketrighttp}{23A4 23A2}% upper right-bracket pieces
+\p{intersectionsqtext}{2A05 FE01}
+\p{intersectionsqdisplay}{2A05 FE01}
+\p{intersectmultitext}{2A44 FE00}% variant of 'intersect with logical and'
+\p{intersectmultidisplay}{2A44 FE00}% variant of 'intersect with logical and'
+\p{intersectsqmultitext}{2A05 FE00}% variant of 'n-ary square intersection'
+\p{intersectsqmultidisplay}{2A05 FE00}% variant of 'n-ary square intersection'
+\p{lbagbig}{27C5 FE01}% variants according to size
+\p{lbagbigg}{27C5 FE02}% .. ..
+\p{lbagBig}{27C5 FE03}% .. ..
+\p{lbagBigg}{27C5 FE04}% .. ..
+\p{lbagBiggg}{27C5 FE05}% .. ..
+\p{lbagBigggg}{27C5 FE06}% .. ..
+\p{lbagBiggggg}{27C5 FE07}% .. ..
+\p{rbagbig}{27C6 FE01}% variants according to size
+\p{rbagbigg}{27C6 FE02}% .. ..
+\p{rbagBig}{27C6 FE03}% .. ..
+\p{rbagBigg}{27C6 FE04}% .. ..
+\p{rbagBiggg}{27C6 FE05}% .. ..
+\p{rbagBigggg}{27C6 FE06}% .. ..
+\p{rbagBiggggg}{27C6 FE07}% .. ..
+\p{producttext1}{2715}% Dingbat multiply symbol
+\p{productdisplay1}{2715}% Dingbat multiply symbol
+\p{raisedsquare}{2E0B}% not used, for 'missing' (.notdef) symbol ???
+\p{unionsqmultitext}{2A04 FE00}% variant of non-square union
+\p{unionsqmultidisplay}{2A04 FE00}% variant of non-square union
+% T1-encoding
+\p{perthousandzero}{2080}% use subscript 0
+% ntxsyralt , fourier-ml , fourier-ms, . . .
+\p{kappa1}{D835 DF18}
+\p{kappa1up}{03F0}
+\p{rho2}{03F1}
+\p{partialdiff1}{D835 DF15}
+\p{pi2}{03D6}
+\p{emptysetstress}{2205}
+\p{mapstochar}{21A6}% ???
+\p{radicallow}{23B7}% 221A ???
+% fxlri-7alt (and fxlri-5alt etc. )
+\p{J.alt}{D835 DE11}
+\p{g.alt}{D835 DE28}
+\p{v.alt}{D835 DE37}
+\p{w.alt}{D835 DE38}
+\p{y.alt}{D835 DE3A}
+% rtxbmi-rev , rtxbmi5-rev , rtxbmi7-rev
+\p{harpoonleftup}{21BC}% was incorrectly {21BF}
+\p{harpoonrightup}{21C0}% was incorrectly {21BE}
+\p{harpoonleftdown}{21BD}% was incorrectly {21C3}
+\p{harpoonrightdown}{21C1}% was incorrectly {21C2}
+\p{hookleftchar}{02D2}
+\p{hookrightchar}{02D3}
+% fourier and other arrows and math symbols
+\p{dotaccent}{0307}
+\p{geqslant}{2A7E}
+\p{leqslant}{2A7D}
+\p{notgeqslant}{2A7E 0338}
+\p{notleqslant}{2A7D 0338}
+\p{parallelslanted}{2225}
+\p{notparallelslanted}{2226}
+\p{vDash}{22A8}
+\p{notvDash}{22AD}
+\p{blacktriangleleft}{25B6}
+\p{blacktriangleright}{25C0}
+\p{hslash}{210F}
+\p{notexists}{2204}
+\p{bartriple}{2AF4}
+\p{bracketdoubleleft}{27E6}
+\p{bracketdoubleright}{27E7}
+\p{varsubsetneq}{228A}
+\p{subsetneqq}{2ACB}
+\p{notowner}{220C}
+\p{smallsetminus}{2216}% ???
+\p{swords}{2694}
+\p{swordsdown}{2694}% !!!
+\p{curvearrowleft}{21B6}
+\p{curvearrowright}{21B7}
+\p{leftleftarrows}{21C7}
+\p{rightrightarrows}{21C9}
+\p{barcino}{1F60E}% !!!
+\p{apple}{1F34E}% was {F8FF}
+\p{arrowhorizex}{23AF}% was {F8E7}
+\p{arrowvertex}{23D0}% was {F8E6}
+\p{integralex}{23AE}% was {F8F5}
+\p{radicalex}{23AF}% ??? was {F8E5}
+
+
+\endgroup \ No newline at end of file
diff --git a/macros/latex/contrib/pdfx/l8u-penc.def b/macros/latex/contrib/pdfx/l8u-penc.def
new file mode 100644
index 0000000000..ec13c42660
--- /dev/null
+++ b/macros/latex/contrib/pdfx/l8u-penc.def
@@ -0,0 +1,3838 @@
+%%
+%% This is file `l8u-penc.def'
+%% Formerly known as `l8uenc.def'
+%%
+%% l8u-penc.def
+%%
+%% This is a hand-written file, based upon t1enc.def
+%% pd1end.def, puenc.def, puvnenc.def and others,
+%% with extensions for more composite characters.
+%%
+%% Copyright 2018 Ross Moore <ross.moore@mq.edu.au>
+%%
+%% defines re-binding commands
+%% \LIIXUmapmathspaces
+%% \LIIXUmapmathletterlikes
+%% \LIIXUmapTeXnames
+%% \LIIXUscriptcommands
+%% \LIIXUtipacommands
+%%
+\ProvidesFile{l8u-penc.def}
+ [2017/06/23 v0.8
+ Custom LaTeX file, for UTF8 encoded letters and symbols]
+%\DeclareFontEncoding{L8U}{}{}
+
+% utility macro, to see how LaTeX views input as LICRs
+\def\liixu@showLICRs#1{%
+ \begingroup
+ \let\protect\@unexpandable@protect
+ \edef\LICRs{#1}\show\LICRs
+ \endgroup
+}
+\global\let\showLICRs\liixu@showLICRs
+
+
+\gdef\liixu@checkemptyornext#1#2#3#4{%
+ % #1 = base character if #3 = \@empty
+ % #2 = if empty
+ % #3 = if not empty – usually {liixu@checknextchar{#1}{#2}{#3}}
+ % #4 = test character for \@empty or \textarmenARM@i
+ \ifx\@empty#4\@empty\expandafter\@firstoftwo
+ \else\expandafter\@secondoftwo\fi
+ {#2}%
+ {#3#4}%
+}
+\gdef\liixu@checknextchar#1#2#3#4#5{%
+ % #1 = letter to match
+ % #2 = if it matches
+ % #3 = if no match
+ % #4 = \textarmenARM@i
+ % #5 = test character for ligature
+ \ifx#1#5\@empty\expandafter\@firstoftwo
+ \else\expandafter\@secondoftwo\fi
+ {#2#4}%
+ {#3#4#5}%
+}
+\gdef\liixu@swapnexttokens#1#2{%
+ % #1 = input token
+ % #2 = macro to continue parsing
+ #2{#1}}
+
+\DeclareTextCommand{\textTeX}{L8U}{TeX}
+\DeclareTextCommand{\textLaTeX}{L8U}{LaTeX}
+\DeclareTextCommand{\textLaTeXe}{L8U}{LaTeXe}%
+\DeclareTextCommand{\textXeTeX}{L8U}{XeTeX}%{XɘTeX}{XƎTEX}
+\DeclareTextCommand{\textLuaTeX}{L8U}{LuaTeX}
+
+\def\LIIXUmapTeXnames{%
+ \let\TeX\textTeX
+ \let\LaTeX\textLaTeX
+ \let\LaTeXe\textLaTeXe
+ \let\XeTeX\textXeTeX
+ \let\LuaTeX\textLuaTeX
+}
+
+
+% Combining accents and diacritics Ux0300 – Ux036F
+
+%\DeclareTextCommand{\uc@cmb}{L8U}{}% used by ucs.sty
+
+\DeclareTextCommand{\`}{L8U}[1]{#1̀}
+\DeclareTextCommand{\'}{L8U}[1]{#1́}
+\DeclareTextCommand{\^}{L8U}[1]{#1̂}
+\DeclareTextCommand{\~}{L8U}[1]{#1̃}
+\DeclareTextCommand{\=}{L8U}[1]{#1̄}
+\DeclareTextCommand{\dotextoverline}{L8U}[1]{#1̅}%
+%
+\DeclareTextCommand{\u}{L8U}[1]{#1̆}
+\DeclareTextCommand{\.}{L8U}[1]{#1̇}
+\DeclareTextCommand{\"}{L8U}[1]{#1̈}
+%\DeclareTextCommand{\h}{L8U}[1]{#1̉}% Vietnamese hook above
+\DeclareTextCommand{\texttipam}{L8U}[1]{#1̉}% TIPA misc., hook above
+\DeclareTextCommand{\r}{L8U}[1]{#1̊}
+\DeclareTextCommand{\H}{L8U}[1]{#1̋}
+\DeclareTextCommand{\v}{L8U}[1]{#1̌}
+\DeclareTextCommand{\textvbaraccent}{L8U}[1]{#1̍}
+\DeclareTextCommand{\textdoublevbaraccent}{L8U}[1]{#1̎}
+\DeclareTextCommand{\textdblgravecmb}{L8U}[1]{#1̏}
+\DeclareTextCommand{\textdoublegrave}{L8U}[1]{#1̏}
+\DeclareTextCommand{\textdblgrave}{L8U}[1]{#1̏}
+\DeclareTextCommand{\texttipaG}{L8U}[1]{#1̏}% double-grave accent
+\DeclareTextCommand{\textdotbreve}{L8U}[1]{#1̐}
+\DeclareTextCommand{\textroundcap}{L8U}[1]{#1̑}
+%\DeclareTextCommand{\|c}{L8U}[1]{#1̑}% used in IPA environment
+\DeclareTextCommand{\textinvbreve}{L8U}[1]{#1̑}
+\DeclareTextCommand{\textturncommaabove}{L8U}[1]{#1̒}
+\DeclareTextCommand{\textcommaabove}{L8U}[1]{#1̒}
+\DeclareTextCommand{\textrevcommaabove}{L8U}[1]{#1̔}
+\DeclareTextCommand{\textcommaabover}{L8U}[1]{#1̕}
+\DeclareTextCommand{\textsubgrave}{L8U}[1]{#1̖}
+\DeclareTextCommand{\textsubacute}{L8U}[1]{#1̗}
+\DeclareTextCommand{\textadvancing}{L8U}[1]{#1̘}
+\DeclareTextCommand{\textsubadvancing}{L8U}[1]{#1̘}
+%\DeclareTextCommand{\|<}{L8U}[1]{#1̘}% used in IPA environment
+\DeclareTextCommand{\textretracting}{L8U}[1]{#1̙}
+\DeclareTextCommand{\textsubretracting}{L8U}[1]{#1̙}
+%\DeclareTextCommand{\|>}{L8U}[1]{#1̙}% used in IPA environment
+\DeclareTextCommand{\textlangleabove}{L8U}[1]{#1̚}
+\DeclareTextCommand{\textrighthorn}{L8U}[1]{#1̛}
+\DeclareTextCommand{\textsublhalfring}{L8U}[1]{#1̜}
+%\DeclareTextCommand{\|(}{L8U}[1]{#1̜}% used in IPA environment
+\DeclareTextCommand{\textraising}{L8U}[1]{#1̝}
+%\DeclareTextCommand{\|'}{L8U}[1]{#1̝}% used in IPA environment
+\DeclareTextCommand{\textlowering}{L8U}[1]{#1̞}
+%\DeclareTextCommand{\|`}{L8U}[1]{#1̞}% used in IPA environment
+\DeclareTextCommand{\textsubplus}{L8U}[1]{#1̟}
+%\DeclareTextCommand{\|+}{L8U}[1]{#1̟}% used in IPA environment
+\DeclareTextCommand{\textsubminus}{L8U}[1]{#1̠}
+%
+\DeclareTextCommand{\textpalhookbelow}{L8U}[1]{#1̡}% U+0321
+\DeclareTextCommand{\textpalhook}{L8U}[1]{#1̡}%
+\DeclareTextCommand{\textrethookbelow}{L8U}[1]{#1̢}% U+0322
+\DeclareTextCommand{\texttipaM}{L8U}[1]{#1̢}% TIPA Misc., hook below
+\DeclareTextCommand{\textsubdot}{L8U}[1]{#1̣}
+\DeclareTextCommand{\d}{L8U}[1]{#1̣}
+\DeclareTextCommand{\textsubumlaut}{L8U}[1]{#1̤}
+%\DeclareTextCommand{\"*}{L8U}[1]{#1̩}% used in IPA environment
+\DeclareTextCommand{\textsubring}{L8U}[1]{#1̥}
+%\DeclareTextCommand{\r*}{L8U}[1]{#1̥}% used in IPA environment
+\DeclareTextCommand{\textcommabelow}{L8U}[1]{#1̦}
+\DeclareTextCommand{\c}{L8U}[1]{#1̧}
+\DeclareTextCommand{\textpolhook}{L8U}[1]{#1̨}
+\DeclareTextCommand{\k}{L8U}[1]{#1̨}
+\DeclareTextCommand{\textsyllabic}{L8U}[1]{#1̩}
+%\DeclareTextCommand{\s}{L8U}[1]{#1̩}% used in IPA environment
+\DeclareTextCommand{\textsubbridge}{L8U}[1]{#1̪}
+%\DeclareTextCommand{\|[}{L8U}[1]{#1̪}% used in IPA environment
+\DeclareTextCommand{\textsubw}{L8U}[1]{#1̫}
+%\DeclareTextCommand{\|w}{L8U}[1]{#1̫}% used in IPA environment
+\DeclareTextCommand{\textsubwedge}{L8U}[1]{#1̭}
+\DeclareTextCommand{\textsubcircum}{L8U}[1]{#1̭}
+\DeclareTextCommand{\charettesubbreve}{L8U}[1]{#1̮}
+\DeclareTextCommand{\textsubbreve}{L8U}[1]{#1̮}
+\DeclareTextCommand{\textsubarch}{L8U}[1]{#1̯}
+\DeclareTextCommand{\textsubtilde}{L8U}[1]{#1̰}
+%\DeclareTextCommand{\~*}{L8U}[1]{#1̰}% used in IPA environment
+\DeclareTextCommand{\textsubbar}{L8U}[1]{#1̱}
+%\DeclareTextCommand{\textsubmacron}{L8U}[1]{#1̱}
+\DeclareTextCommand{\texttipab}{L8U}[1]{#1̱}
+\DeclareTextCommand{\textsubdoublebar}{L8U}[1]{#1͇}
+\DeclareTextCommand{\textsuperimposetilde}{L8U}[1]{#1̴}
+\DeclareTextCommand{\texttipaB}{L8U}[1]{#1̵}% TIPA, short stroke over
+\DeclareTextCommand{\textlstrokethru}{L8U}[1]{#1̶}
+\DeclareTextCommand{\textsstrikethru}{L8U}[1]{#1̷}
+\DeclareTextCommand{\textlstrikethru}{L8U}[1]{#1̸}
+\DeclareTextCommand{\textsubrhalfring}{L8U}[1]{#1̹}
+%\DeclareTextCommand{\|)}{L8U}[1]{#1̹}% used in IPA environment
+\DeclareTextCommand{\textinvsubbridge}{L8U}[1]{#1̺}
+%\DeclareTextCommand{\|]}{L8U}[1]{#1̺}% used in IPA environment
+\DeclareTextCommand{\textsubsquare}{L8U}[1]{#1̻}
+\DeclareTextCommand{\textseagull}{L8U}[1]{#1̼}
+%\DeclareTextCommand{\|m}{L8U}[1]{#1̼}% used in IPA environment
+\DeclareTextCommand{\textovercross}{L8U}[1]{#1̽}
+%\DeclareTextCommand{\|x}{L8U}[1]{#1̽}% used in IPA environment
+%\DeclareTextCommand{\textverticaltilde}{L8U}[1]{#1̾}
+\DeclareTextCommand{\textdoubleoverline}{L8U}[1]{#1̿}
+% Ux0340 – Ux034F
+%\DeclareTextCommand{\textdasia}{L8U}[1]{#1̀}% see greek
+%\DeclareTextCommand{\textoxia}{L8U}[1]{#1́}% see greek
+%\DeclareTextCommand{\textperispomeni}{L8U}[1]{#1͂}% see greek
+%\DeclareTextCommand{\textdialytikatonos}{L8U}[1]{#1̈́}% see greek
+\DeclareTextCommand{\textogonekcentered}{L8U}[1]{#1̨}% Ux0345
+\DeclareTextCommand{\textoverbridge}{L8U}[1]{#1͆}
+\DeclareTextCommand{\textbibridge}{L8U}[1]{#1̪͆}% Ux0346 Ux032A
+\DeclareTextCommand{\textsubdoublevert}{L8U}[1]{#1͈}
+\DeclareTextCommand{\textsubcorner}{L8U}[1]{#1͉}
+\DeclareTextCommand{\textcrtilde}{L8U}[1]{#1͊}
+\DeclareTextCommand{\textdottedtilde}{L8U}[1]{#1͋}
+\DeclareTextCommand{\textdoubletilde}{L8U}[1]{#1͌}
+\DeclareTextCommand{\textspreadlips}{L8U}[1]{#1͍}
+\DeclareTextCommand{\textwhistle}{L8U}[1]{#1͎}
+\DeclareTextCommand{\textgraphemejoin}{L8U}[1]{#1͏}% Ux034F (invisible)
+% Ux0350 – Ux0362
+\DeclareTextCommand{\textrightarrowhead}{L8U}[1]{#1͐}
+\DeclareTextCommand{\textlefthalfring}{L8U}[1]{#1͑}
+%\DeclareTextCommand{\textfermata}{L8U}[1]{#1͒}% see greek ???
+%\DeclareTextCommand{\textsubx}{L8U}[1]{#1͓}
+\DeclareTextCommand{\textsublptr}{L8U}[1]{#1͔}
+\DeclareTextCommand{\textsubrptr}{L8U}[1]{#1͕}
+\DeclareTextCommand{\textrightuparrowhead}{L8U}[1]{#1͖}
+\DeclareTextCommand{\textrighthalfring}{L8U}[1]{#1͗}
+%\DeclareTextCommand{\textdotabove}{L8U}[1]{#1͘}
+%\DeclareTextCommand{\textsubstar}{L8U}[1]{#1͙}
+%\DeclareTextCommand{\textsubinfty}{L8U}[1]{#1͚}
+%\DeclareTextCommand{\textzigzagabove}{L8U}[1]{#1͛}
+\DeclareTextCommand{\textbottomtiebar}{L8U}[1]{#1͜}
+\DeclareTextCommand{\textdoublebrevebelow}{L8U}[1]{#1͜}
+\DeclareTextCommand{\textdoublebreve}{L8U}[1]{#1͝}
+\DeclareTextCommand{\textdoublemacron}{L8U}[1]{#1͞}
+\DeclareTextCommand{\textdoublemacronbelow}{L8U}[1]{#1͟}
+\DeclareTextCommand{\textdoubletilde}{L8U}[1]{#1͠}
+\DeclareTextCommand{\texttoptiebar}{L8U}[1]{#1͡}
+\DeclareTextCommand{\dotexttie}{L8U}[1]{#1͡}
+\DeclareTextCommand{\textsliding}{L8U}[1]{#1͢}
+
+% some double-accents
+\DeclareTextCommand{\textgravedot}{L8U}[1]{#1̀̇}%
+%\DeclareTextCommand{\`.}{L8U}[1]{#1̀̇}% used in IPA environment
+\DeclareTextCommand{\textdotacute}{L8U}[1]{#1̇́}
+%\DeclareTextCommand{\.'}{L8U}[1]{#1̇́}% used in IPA environment
+\DeclareTextCommand{\textacutewedge}{L8U}[1]{#1̌́}
+\DeclareTextCommand{\textacutemacron}{L8U}[1]{#1̄́}
+%\DeclareTextCommand{\'=}{L8U}[1]{#1̄́}% used in IPA environment
+\DeclareTextCommand{\textcircumdot}{L8U}[1]{#1̇̂}
+%\DeclareTextCommand{\^.}{L8U}[1]{#1̇̂}% used in IPA environment
+\DeclareTextCommand{\texttildedot}{L8U}[1]{#1̇̃}
+%\DeclareTextCommand{\~.}{L8U}[1]{#1̇̃}% used in IPA environment
+\DeclareTextCommand{\textringmacron}{L8U}[1]{#1̄̊}
+\DeclareTextCommand{\textbrevemacron}{L8U}[1]{#1̄̆}
+%\DeclareTextCommand{\u=}{L8U}[1]{#1̄̆}% used in IPA environment
+
+% some stroked letters
+\DeclareTextCommand{\textbarb}{L8U}{b̶}
+\DeclareTextCommand{\textbarc}{L8U}{c̵}
+\DeclareTextCommand{\textbard}{L8U}{d̶}
+\DeclareTextCommand{\textbarg}{L8U}{g̶}
+\DeclareTextCommand{\textcrg}{L8U}{ǥ}% U+01E5
+%\DeclareTextCommand{\textdoublebaresh}{L8U}{ʃ̵̵}
+\DeclareTextCommand{\textdoublebaresh}{L8U}{ʄ̵}% U+0284 U+0335
+\DeclareTextCommand{\textdoublebarslash}{L8U}{/̵̵}% U+0335 U+0335
+
+
+% Ux0363 – Ux036F
+
+
+% Extended IPA: composites with multiple combining characters
+\DeclareTextCommand{\textpartvoiceless}{L8U}[1]{₍#1̥₎}% U+208D U+0325 U+208E
+\DeclareTextCommand{\textinipartvoiceless}{L8U}[1]{₍#1̥}% U+208D U+0325
+\DeclareTextCommand{\textfinpartvoiceless}{L8U}[1]{#1̥₎}% U+0325 U+208E
+%
+\DeclareTextCommand{\textpartvoice}{L8U}[1]{₍#1̬₎}% U+208D U+032C U+208E
+\DeclareTextCommand{\textinipartvoice}{L8U}[1]{₍#1̬}% U+208D U+032C
+\DeclareTextCommand{\textfinpartvoice}{L8U}[1]{#1̬₎}% U+032C U+208E
+
+
+% provides access to some IPA characters
+\DeclareTextCommand{\texttipaG}{L8U}[1]{#1}
+\DeclareTextCommand{\texttipam}{L8U}[1]{#1}
+\DeclareTextCommand{\texttipaM}{L8U}[1]{#1}
+
+% accents, composed with space or empty
+%
+\DeclareTextCompositeCommand{\`}{L8U}{\@empty}{`}
+\DeclareTextCompositeCommand{\'}{L8U}{\@empty}{´}
+\DeclareTextCompositeCommand{\^}{L8U}{\@empty}{^}
+\DeclareTextCompositeCommand{\~}{L8U}{\@empty}{˜}
+\DeclareTextCompositeCommand{\=}{L8U}{\@empty}{ ̄}
+\DeclareTextCompositeCommand{\dotextoverline}{L8U}{\@empty}{¯}%
+\DeclareTextCompositeCommand{\u}{L8U}{\@empty}{˘}
+\DeclareTextCompositeCommand{\.}{L8U}{\@empty}{˙}
+\DeclareTextCompositeCommand{\"}{L8U}{\@empty}{¨}
+\DeclareTextCompositeCommand{\texttipam}{L8U}{\@empty}{ ̉}
+\DeclareTextCompositeCommand{\r}{L8U}{\@empty}{˚}
+\DeclareTextCompositeCommand{\H}{L8U}{\@empty}{˝}
+\DeclareTextCompositeCommand{\v}{L8U}{\@empty}{ˇ}
+\DeclareTextCompositeCommand{\textvbaraccent}{L8U}{\@empty}{ ̍}
+\DeclareTextCompositeCommand{\textdoublevbaraccent}{L8U}{\@empty}{ ̎}
+\DeclareTextCompositeCommand{\texttipaG}{L8U}{\@empty}{ ̏}
+\DeclareTextCompositeCommand{\b}{L8U}{\@empty}{_}
+\DeclareTextCompositeCommand{\c}{L8U}{\@empty}{¸}
+\DeclareTextCompositeCommand{\d}{L8U}{\@empty}{.}
+\DeclareTextCompositeCommand{\k}{L8U}{\@empty}{˛}
+
+\DeclareTextCompositeCommand{\`}{L8U}{\ }{`}% Ux0300
+\DeclareTextCompositeCommand{\'}{L8U}{\ }{´}% Ux0301
+\DeclareTextCompositeCommand{\^}{L8U}{\ }{^}% Ux0302
+\DeclareTextCompositeCommand{\~}{L8U}{\ }{˜}% Ux0303
+\DeclareTextCompositeCommand{\=}{L8U}{\ }{ ̄}% Ux0304
+\DeclareTextCompositeCommand{\dotextoverline}{L8U}{\ }{¯}% Ux0305
+\DeclareTextCompositeCommand{\u}{L8U}{\ }{˘}% Ux0306
+\DeclareTextCompositeCommand{\.}{L8U}{\ }{˙}% Ux0307
+\DeclareTextCompositeCommand{\"}{L8U}{\ }{¨}% Ux0308
+\DeclareTextCompositeCommand{\texttipam}{L8U}{\ }{ ̉}% Ux0309
+\DeclareTextCompositeCommand{\r}{L8U}{\ }{˚}% Ux030A
+\DeclareTextCompositeCommand{\H}{L8U}{\ }{˝}% Ux030B
+\DeclareTextCompositeCommand{\v}{L8U}{\ }{ˇ}% Ux030C
+\DeclareTextCompositeCommand{\textvbaraccent}{L8U}{\ }{ ̍}% Ux030D
+\DeclareTextCompositeCommand{\textdoublevbaraccent}{L8U}{\ }{ ̎}% Ux030E
+%\DeclareTextCompositeCommand{\texttipaG}{L8U}{\ }{ ̏}% Ux030F
+\DeclareTextCompositeCommand{\textdotbreve}{L8U}{\ }{ ̐}% Ux0310
+\DeclareTextCompositeCommand{\textroundcap}{L8U}{\ }{ ̑}% Ux0311
+
+\DeclareTextCompositeCommand{\b}{L8U}{\ }{_}
+\DeclareTextCompositeCommand{\c}{L8U}{\ }{¸}
+\DeclareTextCompositeCommand{\d}{L8U}{\ }{.}
+\DeclareTextCompositeCommand{\k}{L8U}{\ }{˛}
+
+
+% these are at risk of being redefined
+\DeclareTextCompositeCommand{\texttipaB}{L8U}{\@empty}{ ̵}% \texttipaB
+\DeclareTextCompositeCommand{\texttipaB}{L8U}{\ }{ ̵}
+\DeclareTextCompositeCommand{\texttipaM}{L8U}{\@empty}{ ̢}% \texttipaM
+\DeclareTextCompositeCommand{\texttipaM}{L8U}{\ }{ ̢}
+
+\DeclareTextCompositeCommand{\dotexttie}{L8U}{\@empty}{ ͡}
+\DeclareTextCompositeCommand{\dotexttie}{L8U}{\ }{ ͡}
+
+
+\DeclareTextCommand{\dotextsuperscript}{L8U}[1]{#1}
+\DeclareTextCommand{\dotextsubscript}{L8U}[1]{#1}
+
+
+\DeclareTextCommand{\textgravemacron}{L8U}[1]{#1̄̀}
+\DeclareTextCommand{\textacutemacron}{L8U}[1]{#1̄́}
+\DeclareTextCompositeCommand{\textogonekcentered}{L8U}{\ }{ ̨}
+\DeclareTextCompositeCommand{\textroundcap}{L8U}{\ }{ ̑}
+\DeclareTextCompositeCommand{\textroundcap}{L8U}{\@empty}{ ̑}
+
+% Ux1DC0 – Ux1DCA
+\DeclareTextCommand{\texthighrise}{L8U}[1]{#1᷄}% Ux1DC4
+\DeclareTextCommand{\textmidacute}{L8U}[1]{#1᷄}% Ux1DC4
+\DeclareTextCommand{\textmacronacute}{L8U}[1]{#1᷄}% Ux1DC4
+\DeclareTextCommand{\textgravemid}{L8U}[1]{#1᷅}% Ux1DC5
+\DeclareTextCommand{\textlowrise}{L8U}[1]{#1᷅}% Ux1DC5
+\DeclareTextCommand{\textgravemacron}{L8U}[1]{#1᷅}% Ux1DC5
+\DeclareTextCommand{\textmacrongrave}{L8U}[1]{#1᷆}% Ux1DC6
+\DeclareTextCommand{\textacutemacron}{L8U}[1]{#1᷇}% Ux1DC7
+\DeclareTextCommand{\textrisefall}{L8U}[1]{#1᷈}% Ux1DC8
+\DeclareTextCommand{\textgravecircum}{L8U}[1]{#1᷈}% Ux1DC8
+\DeclareTextCommand{\textgraveacutegrave}{L8U}[1]{#1᷈}% Ux1DC8
+\DeclareTextCommand{\textcircumacute}{L8U}[1]{#1᷉}% Ux1DC9
+\DeclareTextCommand{\textfallrise}{L8U}[1]{#1᷉}% Ux1DC9
+\DeclareTextCommand{\textacutegraveacute}{L8U}[1]{#1᷉}% Ux1DC9
+%
+\DeclareTextCommand{\textoverw}{L8U}[1]{#1ᷓ}% Ux1DD3
+\DeclareTextCommand{\textoverae}{L8U}[1]{#1ᷔ}% Ux1DD4
+\DeclareTextCommand{\textoveraolig}{L8U}[1]{#1ᷕ}% Ux1DD5
+%
+\DeclareTextCommand{\textupstep}{L8U}[1]{#1ꜛ}% UxA71C
+\DeclareTextCommand{\textdownstep}{L8U}[1]{#1ꜜ}% UxA71D
+
+\ifipaxmp
+
+% to be bound to \sups
+\DeclareTextCommand{\textipasups}{L8U}[2]{#1\textoverscript{#2}}
+\DeclareTextCommand{\textoverscript}{L8U}[1]{\textsuperscript{#1}}
+
+% composites producing combining characters
+\DeclareTextCompositeCommand{\textoverscript}{L8U}{a}{ͣ}%
+\DeclareTextCompositeCommand{\textoverscript}{L8U}{e}{ͤ}%
+\DeclareTextCompositeCommand{\textoverscript}{L8U}{i}{ͥ}%
+\DeclareTextCompositeCommand{\textoverscript}{L8U}{o}{ͦ}%
+\DeclareTextCompositeCommand{\textoverscript}{L8U}{u}{ͧ}%
+\DeclareTextCompositeCommand{\textoverscript}{L8U}{c}{ͨ}%
+\DeclareTextCompositeCommand{\textoverscript}{L8U}{d}{ͩ}%
+\DeclareTextCompositeCommand{\textoverscript}{L8U}{h}{ͪ}%
+\DeclareTextCompositeCommand{\textoverscript}{L8U}{m}{ͫ}%
+\DeclareTextCompositeCommand{\textoverscript}{L8U}{r}{ͬ}%
+\DeclareTextCompositeCommand{\textoverscript}{L8U}{t}{ͭ}%
+\DeclareTextCompositeCommand{\textoverscript}{L8U}{v}{ͮ}%
+\DeclareTextCompositeCommand{\textoverscript}{L8U}{x}{ͯ}%
+
+\fi
+
+%% LaTeX in 2017 precludes direct use of
+%% \textsuperscript \textsubscript \t
+
+\def\LIIXUscriptcommands{%
+ \let\textsuperscript\dotextsuperscript
+ \let\textsubscript\dotextsubscript
+ \let\t\dotexttie
+ \let\textoverline\dotextoverline
+ \let\sp\textsuperstring
+ \let\sb\textsubstring
+ \let\noboundary\liixu@noboundary
+ \let\ZWNJ\liixu@ZWNJ
+% support for some macros that are redefined incompatibly in some packages
+ \let\textlozenge\dotextlozenge
+}
+
+\def\LIIXUtipacommands{%
+ \let\B\texttipaB
+ \def\ipabar##1##2##3##4##5{\texttipaB{##1}}%
+ \let\G\texttipaG
+ \let\M\texttipaM
+ \let\m\texttipam
+ \let\capitalgrave\`%
+ \let\capitalacute\'%
+ \let\capitalcircumflex\^%
+ \let\capitaltilde\~%
+ \let\capitalmacron\=%
+ \let\capitalbreve\u
+ \let\capitaldotaccent\.%
+ \let\capitaldieresis\"%
+ \let\texthookabove\texttipam
+ \let\capitalring\r
+ \let\capitalhungarumlaut\H
+ \let\capitalcaron\v
+ \let\U\textdoublevbaraccent
+ \let\textdoublegrave\texttipaG
+ \let\newtie\textroundcap
+ \let\textadvancing\textsubadvancing
+ \let\textretracting\textsubretracting
+ \let\capitalcedilla\c
+ \let\capitalogonek\k
+ \let\textundertie\textsubbreve
+ \let\textsstrokethru\texttipaB
+ \let\capitaltie\dotexttie
+ \let\texttoptiebar\dotexttie
+ \let\texthighrise\textmacronacute
+ \let\textlowrise\textgravemacron
+ \let\textrisefall\textgraveacutegrave
+ \let\textfallrise\textacutegraveacute
+% from tipax.sty and extraipa.sty
+ \let\textsck\textPUsck
+ \let\textscm\textPUscm
+ \let\textscp\textPUscp
+ \let\textrevscr\textPUrevscr
+ \let\textrhooka\textPUrhooka
+ \let\textdblig\textPUdblig
+ \let\textrhooke\textPUrhooke
+ \let\textrhookepsilon\textPUrhookepsilon
+ \let\textlhti\textPUlhti % psdextra doesn't have this
+ \let\textnrleg\textPUnrleg
+ \let\textrhookopeno\textPUrhookopeno
+ \let\textlhookp\textPUlhookp % psdextra doesn't have this
+ \let\textqplig\textPUqplig
+ \let\textlooptoprevesh\textPUlooptoprevesh % psdextra doesn't have this
+ \let\textbenttailyogh\textPUbenttailyogh % psdextra doesn't have this
+ \let\textglotstopvari\textPUglotstopvari % psdextra doesn't have this
+ \let\textglotstopvarii\textPUglotstopvarii % psdextra doesn't have this
+ \let\textheng\textPUheng
+ \let\textlhookfour\textPUlhookfour
+ \let\textscf\textPUscf
+ \let\textaolig\textPUaolig
+ \let\spreadlips\textspreadlips
+ \let\overbridge\textoverbridge
+ \let\bibridge\textbibridge
+ \let\subdoublebar\textsubdoublebar
+ \let\subdoublevert\textsubdoublevert
+ \let\subcorner\textsubcorner
+ \let\whistle\textwhistle
+ \let\sliding\textsliding
+ \let\crtilde\textcrtilde
+ \let\dottedtilde\textdottedtilde
+ \let\doubletilde\textdoubletilde
+ \let\partvoiceless\textpartvoiceless
+ \let\inipartvoiceless\textinipartvoiceless
+ \let\finpartvoiceless\textfinpartvoiceless
+ \let\partvoice\textpartvoice
+ \let\inipartvoice\textinipartvoice
+ \let\finpartvoice\textfinpartvoice
+ \let\sublptr\textsublptr
+ \let\subrptr\textsubrptr
+ \let\textfemale\textPUfemale
+ \let\female\textPUfemale
+ \let\venus\textPUfemale
+ \let\Venus\textPUfemale
+ \let\Female\textPUfemale
+ \let\wynn\textwynn
+ \let\sups\texttipasups
+\let\*\textipavari
+\let\:\textipavarii
+\let\;\textipavariii
+\let\!\textipavariv
+\let\|\textipavarv
+}
+
+
+
+\def\textsuperstring#1{\textsuper@ii#1\@empty\@empty}
+\def\textsuper@i#1{\textsuper@ii#1\@empty}
+\def\textsuper@ii#1#2\@empty{\dotextsuperscript{#1}%
+ \ifx\@empty#2\@empty\expandafter\@gobble
+ \else\expandafter\textsuper@i\fi{#2}}
+
+\def\textsubstring#1{\textsub@ii#1\@empty\@empty}
+\def\textsub@i#1{\textsub@ii#1\@empty}
+\def\textsub@ii#1#2\@empty{\dotextsubscript{#1}%
+ \ifx\@empty#2\@empty\expandafter\@gobble
+ \else\expandafter\textsub@i\fi{#2}}
+
+
+% Miscellaneous symbols
+\DeclareTextCommand{\textHT}{L8U}{^^09}% Ux0009 tab
+\DeclareTextCommand{\textLF}{L8U}{^^J}% Ux000A line-feed
+{\catcode `\^^M 11\relax %
+ \gdef\textrawCR{^^M}}
+\DeclareTextCommand{\textCR}{L8U}{\textrawCR}% Ux000D carriage-return
+%
+\DeclareTextCommand{\textSS}{L8U}{ẞ}% Ux1E9E
+
+
+% XML special symbols < > & as entities: &#<num>;
+\def\liixu@unicode#1{\liixu@realamp\liixu@realhash x#1;}
+\edef\liixu@realamp{\expandafter\@gobble\string\&}
+\edef\liixu@realhash{\expandafter\@gobble\string\#}
+\def\liixu@amp{\liixu@unicode{0026}}
+\def\liixu@lt{\liixu@unicode{003c}}
+\def\liixu@gt{\liixu@unicode{003e}}
+%
+\DeclareTextCommand{\textasciitilde}{L8U}{\string~}
+\DeclareTextCommand{\textexclam}{L8U}{\string!}% used in ArmenianTeX
+\DeclareTextCommand{\texthash}{L8U}{\liixu@realhash}% used in ArmenianTeX
+\DeclareTextCommand{\textdollar}{L8U}{\string$}%
+\edef\liixu@next{{\noexpand\textpercent}{L8U}{% used in ArmenianTeX
+ \expandafter\@secondoftwo\string\%}}
+\expandafter\DeclareTextCommand\liixu@next
+\DeclareTextCommand{\textasciicircum}{L8U}{\string^}
+\DeclareTextCommand{\textand}{L8U}{\liixu@amp}% used in ArmenianTeX
+\edef\liixu@next{{\noexpand\textbackslash}{L8U}{%
+ \expandafter\@secondoftwo\string\\}}
+\expandafter\DeclareTextCommand\liixu@next
+\DeclareTextCommand{\textbar}{L8U}{\string|}%
+\edef\liixu@next{{\noexpand\textbraceleft}{L8U}{%
+ \expandafter\@secondoftwo\string\{}}
+\expandafter\DeclareTextCommand\liixu@next
+\edef\liixu@next{{\noexpand\textbraceright}{L8U}{%
+ \expandafter\@secondoftwo\string\}}}
+\expandafter\DeclareTextCommand\liixu@next
+\DeclareTextCommand{\textgreater}{L8U}{\liixu@gt}
+\DeclareTextCommand{\textless}{L8U}{\liixu@lt}
+\DeclareTextCommand{\textquotedbl}{L8U}{\string"}%
+\DeclareTextCommand{\textbackquote}{L8U}{\string`}% straight, not curly
+\DeclareTextCommand{\textasciiquote}{L8U}{\string'}% straight quote
+\DeclareTextCommand{\textunderscore}{L8U}{\string_}
+
+\DeclareTextCommand{\textMVPlus}{L8U}{+}% U+002B
+\DeclareTextCommand{\textMVComma}{L8U}{,}% U+002C
+\DeclareTextCommand{\textMVMinus}{L8U}{-}% U+002D
+\DeclareTextCommand{\textMVPeriod}{L8U}{.}% U+002E
+\DeclareTextCommand{\textMVDivision}{L8U}{/}% U+002F
+\DeclareTextCommand{\textMVZero}{L8U}{0}% U+0030
+\DeclareTextCommand{\textMVOne}{L8U}{1}% U+0031
+\DeclareTextCommand{\textMVTwo}{L8U}{2}% U+0032
+\DeclareTextCommand{\textMVThree}{L8U}{3}% U+0033
+\DeclareTextCommand{\textMVFour}{L8U}{4}% U+0034
+\DeclareTextCommand{\textMVFive}{L8U}{5}% U+0035
+\DeclareTextCommand{\textMVSix}{L8U}{6}% U+0036
+\DeclareTextCommand{\textMVSeven}{L8U}{7}% U+0037
+\DeclareTextCommand{\textMVEight}{L8U}{8}% U+0038
+\DeclareTextCommand{\textMVNine}{L8U}{9}% U+0039
+\DeclareTextCommand{\textMVAt}{L8U}{@}% U+0040
+
+% from utf8.def
+\DeclareTextCommand{\textcopyright}{L8U}{©}
+\DeclareTextCommand{\textordfeminine}{L8U}{ª}
+\DeclareTextCommand{\textregistered}{L8U}{®}
+\DeclareTextCommand{\textordmasculine}{L8U}{º}
+%\DeclareTextCommand{\textasciicircum}{L8U}{ˆ}
+%\DeclareTextCommand{\textasciitilde}{L8U}{~}
+\DeclareTextCommand{\textellipsis}{L8U}{…}
+\DeclareTextCommand{\textdots}{L8U}{…}% need this in XMP
+\DeclareTextCommand{\texttrademark}{L8U}{™}
+%
+\DeclareTextComposite{\.}{L8U}{i}{`\i}
+\DeclareTextComposite{\.}{L8U}{\i}{`\i}
+%
+% Latin-1 Supplement Ux00A0 – Ux00BF
+%
+%\DeclareTextCommand{\ }{L8U}{ }% don't need this
+\DeclareTextCommand{\textnobreakspace}{L8U}{ }% need this in XMP
+\DeclareTextCommand{\textexclamdown}{L8U}{¡}
+\DeclareTextCommand{\textcent}{L8U}{¢}
+\DeclareTextCommand{\textsterling}{L8U}{£}
+\DeclareTextCommand{\pounds}{L8U}{£}
+\DeclareTextCommand{\textcurrency}{L8U}{¤}
+\DeclareTextCommand{\textyen}{L8U}{¥}
+\DeclareTextCommand{\textbrokenbar}{L8U}{¦}
+\DeclareTextCommand{\textsection}{L8U}{§}
+%\DeclareTextCommand{\S}{L8U}{§}
+\DeclareTextCommand{\textasciidieresis}{L8U}{¨}
+% see utf8.def (above)
+\DeclareTextCommand{\guillemotleft}{L8U}{«}
+\DeclareTextCommand{\textlogicalnot}{L8U}{¬}
+\DeclareTextCommand{\textneg}{L8U}{¬}
+% see utf8.def (above)
+\DeclareTextCommand{\textasciimacron}{L8U}{¯}
+\DeclareTextCommand{\textdegree}{L8U}{°}
+\DeclareTextCommand{\textplusminus}{L8U}{±}
+\DeclareTextCommand{\textpm}{L8U}{±}
+\DeclareTextCommand{\texttwosuperior}{L8U}{²}
+\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{2}{²}
+\DeclareTextCommand{\textthreesuperior}{L8U}{³}
+\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{3}{³}
+\DeclareTextCommand{\textasciiacute}{L8U}{´}
+\DeclareTextCommand{\textmu}{L8U}{µ}% beware Greek
+\DeclareTextCommand{\textparagraph}{L8U}{¶}
+\DeclareTextCommand{\textpilcrow}{L8U}{¶}
+\DeclareTextCommand{\textcentereddot}{L8U}{·}
+\DeclareTextCommand{\textperiodcentered}{L8U}{·}
+\DeclareTextCommand{\textcdot}{L8U}{·}
+\DeclareTextCommand{\textasciicedilla}{L8U}{¸}
+\DeclareTextCommand{\textonesuperior}{L8U}{¹}
+\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{1}{¹}
+% see utf8.def (above)
+\DeclareTextCommand{\guillemotright}{L8U}{»}
+\DeclareTextCommand{\textonequarter}{L8U}{¼}
+\DeclareTextCommand{\textonehalf}{L8U}{½}
+\DeclareTextCommand{\textthreequarters}{L8U}{¾}
+\DeclareTextCommand{\textquestiondown}{L8U}{¿}
+%
+% Latin-1 Supplement Ux00C0 – Ux00FF
+%
+\DeclareTextCompositeCommand{\`}{L8U}{A}{À}
+\DeclareTextCompositeCommand{\'}{L8U}{A}{Á}
+\DeclareTextCompositeCommand{\^}{L8U}{A}{Â}
+\DeclareTextCompositeCommand{\~}{L8U}{A}{Ã}
+\DeclareTextCompositeCommand{\"}{L8U}{A}{Ä}
+\DeclareTextCompositeCommand{\r}{L8U}{A}{Å}
+%\DeclareTextCommand{\AA}{L8U}{Å}% macro -> \r A
+\DeclareTextCommand{\AE}{L8U}{Æ}
+\DeclareTextCompositeCommand{\c}{L8U}{C}{Ç}
+\DeclareTextCompositeCommand{\`}{L8U}{E}{È}
+\DeclareTextCompositeCommand{\'}{L8U}{E}{É}
+\DeclareTextCompositeCommand{\^}{L8U}{E}{Ê}
+\DeclareTextCompositeCommand{\"}{L8U}{E}{Ë}
+\DeclareTextCompositeCommand{\`}{L8U}{I}{Ì}
+\DeclareTextCompositeCommand{\'}{L8U}{I}{Í}
+\DeclareTextCompositeCommand{\^}{L8U}{I}{Î}
+\DeclareTextCompositeCommand{\"}{L8U}{I}{Ï}
+\DeclareTextCompositeCommand{\texttipaM}{L8U}{D}{Ð}
+\DeclareTextCommand{\DH}{L8U}{Ð}
+\DeclareTextCompositeCommand{\~}{L8U}{N}{Ñ}
+\DeclareTextCompositeCommand{\`}{L8U}{O}{Ò}
+\DeclareTextCompositeCommand{\'}{L8U}{O}{Ó}
+\DeclareTextCompositeCommand{\^}{L8U}{O}{Ô}
+\DeclareTextCompositeCommand{\~}{L8U}{O}{Õ}
+\DeclareTextCompositeCommand{\"}{L8U}{O}{Ö}
+\DeclareTextCommand{\textmultiply}{L8U}{×}% PD1
+\DeclareTextCommand{\texttimes}{L8U}{×}
+\DeclareTextCommand{\O}{L8U}{Ø}
+\DeclareTextCompositeCommand{\`}{L8U}{U}{Ù}
+\DeclareTextCompositeCommand{\'}{L8U}{U}{Ú}
+\DeclareTextCompositeCommand{\^}{L8U}{U}{Û}
+\DeclareTextCompositeCommand{\"}{L8U}{U}{Ü}
+\DeclareTextCompositeCommand{\'}{L8U}{Y}{Ý}
+\DeclareTextCommand{\TH}{L8U}{Þ}
+\DeclareTextCommand{\textThorn}{L8U}{Þ}
+\DeclareTextCommand{\ss}{L8U}{ß}
+\DeclareTextCompositeCommand{\`}{L8U}{a}{à}
+\DeclareTextCompositeCommand{\'}{L8U}{a}{á}
+\DeclareTextCompositeCommand{\^}{L8U}{a}{â}
+\DeclareTextCompositeCommand{\~}{L8U}{a}{ã}
+\DeclareTextCompositeCommand{\"}{L8U}{a}{ä}
+\DeclareTextCompositeCommand{\r}{L8U}{a}{å}
+%\DeclareTextCommand{\aa}{L8U}{å}% macro -> \r a
+\DeclareTextCommand{\ae}{L8U}{æ}
+\DeclareTextCompositeCommand{\c}{L8U}{c}{ç}
+\DeclareTextCompositeCommand{\`}{L8U}{e}{è}
+\DeclareTextCompositeCommand{\'}{L8U}{e}{é}
+\DeclareTextCompositeCommand{\^}{L8U}{e}{ê}
+\DeclareTextCompositeCommand{\"}{L8U}{e}{ë}
+\DeclareTextCompositeCommand{\`}{L8U}{i}{ì}
+\DeclareTextCompositeCommand{\`}{L8U}{\i}{ì}
+\DeclareTextCompositeCommand{\'}{L8U}{i}{í}
+\DeclareTextCompositeCommand{\'}{L8U}{\i}{í}
+\DeclareTextCompositeCommand{\^}{L8U}{i}{î}
+\DeclareTextCompositeCommand{\^}{L8U}{\i}{î}
+\DeclareTextCompositeCommand{\"}{L8U}{i}{ï}
+\DeclareTextCompositeCommand{\"}{L8U}{\i}{ï}
+\DeclareTextCommand{\dh}{L8U}{ð}
+\DeclareTextCompositeCommand{\~}{L8U}{n}{ñ}
+\DeclareTextCompositeCommand{\`}{L8U}{o}{ò}
+\DeclareTextCompositeCommand{\'}{L8U}{o}{ó}
+\DeclareTextCompositeCommand{\^}{L8U}{o}{ô}
+\DeclareTextCompositeCommand{\~}{L8U}{o}{õ}
+\DeclareTextCompositeCommand{\"}{L8U}{o}{ö}
+\DeclareTextCommand{\textdivide}{L8U}{÷}
+\DeclareTextCommand{\textdiv}{L8U}{÷}
+\DeclareTextCommand{\o}{L8U}{ø}
+\DeclareTextCompositeCommand{\`}{L8U}{u}{ù}
+\DeclareTextCompositeCommand{\'}{L8U}{u}{ú}
+\DeclareTextCompositeCommand{\^}{L8U}{u}{û}
+\DeclareTextCompositeCommand{\"}{L8U}{u}{ü}
+\DeclareTextCompositeCommand{\'}{L8U}{y}{ý}
+\DeclareTextCommand{\th}{L8U}{þ}
+\DeclareTextCommand{\textthorn}{L8U}{þ}
+\DeclareTextCompositeCommand{\"}{L8U}{y}{ÿ}
+%
+% Latin Extended-A Ux0100 – Ux0177
+%
+\DeclareTextCompositeCommand{\=}{L8U}{A}{Ā}
+\DeclareTextCompositeCommand{\u}{L8U}{A}{Ă}
+\DeclareTextCompositeCommand{\k}{L8U}{A}{Ą}
+\DeclareTextCompositeCommand{\'}{L8U}{C}{Ć}
+\DeclareTextCompositeCommand{\^}{L8U}{C}{Ĉ}
+\DeclareTextCompositeCommand{\.}{L8U}{C}{Ċ}
+\DeclareTextCompositeCommand{\v}{L8U}{C}{Č}
+\DeclareTextCompositeCommand{\v}{L8U}{D}{Ď}
+\DeclareTextCompositeCommand{\texttipaB}{L8U}{D}{Đ}
+\DeclareTextCommand{\DJ}{L8U}{Đ}
+\DeclareTextCompositeCommand{\=}{L8U}{E}{Ē}
+\DeclareTextCompositeCommand{\u}{L8U}{E}{Ě}
+\DeclareTextCompositeCommand{\.}{L8U}{E}{Ė}
+\DeclareTextCompositeCommand{\k}{L8U}{E}{Ę}
+\DeclareTextCompositeCommand{\v}{L8U}{E}{Ě}
+\DeclareTextCompositeCommand{\^}{L8U}{G}{Ĝ}
+\DeclareTextCompositeCommand{\u}{L8U}{G}{Ğ}
+\DeclareTextCompositeCommand{\.}{L8U}{G}{Ġ}
+\DeclareTextCompositeCommand{\c}{L8U}{G}{Ģ}
+\DeclareTextCompositeCommand{\^}{L8U}{H}{Ĥ}
+\DeclareTextCompositeCommand{\texttipaB}{L8U}{H}{Ħ}
+\DeclareTextCommand{\textHslash}{L8U}{Ħ}% PD1
+\DeclareTextCommand{\textHbar}{L8U}{Ħ}
+\DeclareTextCompositeCommand{\~}{L8U}{I}{Ĩ}
+\DeclareTextCompositeCommand{\=}{L8U}{I}{Ī}
+\DeclareTextCompositeCommand{\u}{L8U}{I}{Ĭ}
+\DeclareTextCompositeCommand{\k}{L8U}{I}{Į}
+\DeclareTextCompositeCommand{\.}{L8U}{I}{İ}
+\DeclareTextCommand{\IJ}{L8U}{IJ}
+\DeclareTextCompositeCommand{\^}{L8U}{J}{Ĵ}
+\DeclareTextCompositeCommand{\c}{L8U}{K}{Ķ}
+\DeclareTextCompositeCommand{\'}{L8U}{L}{Ĺ}
+\DeclareTextCompositeCommand{\c}{L8U}{L}{Ļ}
+\DeclareTextCompositeCommand{\v}{L8U}{L}{Ľ}
+\DeclareTextCompositeCommand{\.}{L8U}{L}{Ŀ}
+\DeclareTextCompositeCommand{\texttipaB}{L8U}{L}{Ł}
+\DeclareTextCommand{\Lstroke}{L8U}{Ł}
+\DeclareTextCommand{\L}{L8U}{Ł}
+\DeclareTextCompositeCommand{\'}{L8U}{N}{Ń}
+\DeclareTextCompositeCommand{\c}{L8U}{N}{Ņ}
+\DeclareTextCompositeCommand{\v}{L8U}{N}{Ň}
+\DeclareTextCompositeCommand{\texttipam}{L8U}{N}{Ŋ}
+\DeclareTextCommand{\NG}{L8U}{Ŋ}
+\DeclareTextCompositeCommand{\=}{L8U}{O}{Ō}
+\DeclareTextCompositeCommand{\u}{L8U}{O}{Ŏ}
+\DeclareTextCompositeCommand{\H}{L8U}{O}{Ő}
+\DeclareTextCommand{\OE}{L8U}{Œ}
+\DeclareTextCompositeCommand{\'}{L8U}{R}{Ŕ}
+\DeclareTextCompositeCommand{\c}{L8U}{R}{Ŗ}
+\DeclareTextCompositeCommand{\v}{L8U}{R}{Ř}
+\DeclareTextCompositeCommand{\'}{L8U}{S}{Ś}
+\DeclareTextCompositeCommand{\^}{L8U}{S}{Ŝ}
+\DeclareTextCompositeCommand{\c}{L8U}{S}{Ş}
+\DeclareTextCompositeCommand{\v}{L8U}{S}{Š}
+\DeclareTextCompositeCommand{\c}{L8U}{T}{Ţ}
+\DeclareTextCompositeCommand{\v}{L8U}{T}{Ť}
+\DeclareTextCompositeCommand{\texttipaB}{L8U}{T}{Ŧ}
+\DeclareTextCommand{\textTslash}{L8U}{Ŧ}% PD1
+\DeclareTextCompositeCommand{\~}{L8U}{U}{Ũ}
+\DeclareTextCompositeCommand{\=}{L8U}{U}{Ū}
+\DeclareTextCompositeCommand{\u}{L8U}{U}{Ŭ}
+\DeclareTextCompositeCommand{\r}{L8U}{U}{Ů}
+\DeclareTextCompositeCommand{\H}{L8U}{U}{Ű}
+\DeclareTextCompositeCommand{\k}{L8U}{U}{Ų}
+\DeclareTextCompositeCommand{\^}{L8U}{W}{Ŵ}
+\DeclareTextCompositeCommand{\^}{L8U}{Y}{Ŷ}
+\DeclareTextCompositeCommand{\"}{L8U}{Y}{Ÿ}
+\DeclareTextCompositeCommand{\'}{L8U}{Z}{Ź}
+\DeclareTextCompositeCommand{\.}{L8U}{Z}{Ż}
+\DeclareTextCompositeCommand{\v}{L8U}{Z}{Ž}
+% lowercase
+\DeclareTextCompositeCommand{\=}{L8U}{a}{ā}
+\DeclareTextCompositeCommand{\u}{L8U}{a}{ă}
+\DeclareTextCompositeCommand{\k}{L8U}{a}{ą}
+\DeclareTextCompositeCommand{\'}{L8U}{c}{ć}
+\DeclareTextCompositeCommand{\^}{L8U}{c}{ĉ}
+\DeclareTextCompositeCommand{\.}{L8U}{c}{ċ}
+\DeclareTextCompositeCommand{\v}{L8U}{c}{č}
+\DeclareTextCompositeCommand{\v}{L8U}{d}{ď}
+\DeclareTextCompositeCommand{\texttipaB}{L8U}{d}{đ}
+\DeclareTextCommand{\dj}{L8U}{đ}
+\DeclareTextCommand{\textcrd}{L8U}{đ}
+\DeclareTextCompositeCommand{\=}{L8U}{e}{ē}
+\DeclareTextCompositeCommand{\u}{L8U}{e}{ě}
+\DeclareTextCompositeCommand{\.}{L8U}{e}{ė}
+\DeclareTextCompositeCommand{\k}{L8U}{e}{ę}
+\DeclareTextCompositeCommand{\v}{L8U}{e}{ě}
+\DeclareTextCompositeCommand{\^}{L8U}{g}{ĝ}
+\DeclareTextCompositeCommand{\u}{L8U}{g}{ğ}
+\DeclareTextCompositeCommand{\.}{L8U}{g}{ġ}
+\DeclareTextCompositeCommand{\c}{L8U}{g}{ģ}
+\DeclareTextCompositeCommand{\^}{L8U}{h}{ĥ}
+\DeclareTextCompositeCommand{\texttipaB}{L8U}{h}{ħ}
+\DeclareTextCommand{\texthslash}{L8U}{ħ}% PD1
+\DeclareTextCommand{\texthbar}{L8U}{ħ}
+\DeclareTextCommand{\textcrh}{L8U}{ħ}
+\DeclareTextCompositeCommand{\~}{L8U}{i}{ĩ}
+\DeclareTextCompositeCommand{\~}{L8U}{\i}{ĩ}
+\DeclareTextCompositeCommand{\=}{L8U}{i}{ī}
+\DeclareTextCompositeCommand{\=}{L8U}{\i}{ī}
+\DeclareTextCompositeCommand{\u}{L8U}{i}{ĭ}
+\DeclareTextCompositeCommand{\u}{L8U}{\i}{ĭ}
+\DeclareTextCompositeCommand{\k}{L8U}{i}{į}
+\DeclareTextCompositeCommand{\k}{L8U}{\i}{į}
+\DeclareTextCommand{\i}{L8U}{ı}
+\DeclareTextCommand{\ij}{L8U}{ij}
+\DeclareTextCompositeCommand{\^}{L8U}{j}{ĵ}
+\DeclareTextCompositeCommand{\c}{L8U}{k}{ķ}
+\DeclareTextCommand{\textkra}{L8U}{ĸ}
+\DeclareTextCompositeCommand{\'}{L8U}{l}{ĺ}
+\DeclareTextCompositeCommand{\c}{L8U}{l}{ļ}
+\DeclareTextCompositeCommand{\v}{L8U}{l}{ľ}
+\DeclareTextCompositeCommand{\.}{L8U}{l}{ŀ}
+\DeclareTextCompositeCommand{\texttipaB}{L8U}{l}{ł}
+\DeclareTextCommand{\textbarl}{L8U}{ł}
+\DeclareTextCommand{\lstroke}{L8U}{ł}
+\DeclareTextCommand{\l}{L8U}{ł}
+\DeclareTextCompositeCommand{\'}{L8U}{n}{ń}
+\DeclareTextCompositeCommand{\c}{L8U}{n}{ņ}
+\DeclareTextCompositeCommand{\v}{L8U}{n}{ň}
+\DeclareTextCommand{\textnapostrophe}{L8U}{ʼn}% PD1
+\DeclareTextCompositeCommand{\texttipam}{L8U}{n}{ŋ}
+\DeclareTextCommand{\ng}{L8U}{ŋ}
+\DeclareTextCompositeCommand{\=}{L8U}{o}{ō}
+\DeclareTextCompositeCommand{\u}{L8U}{o}{ŏ}
+\DeclareTextCompositeCommand{\H}{L8U}{o}{ő}
+\DeclareTextCommand{\oe}{L8U}{œ}
+\DeclareTextCompositeCommand{\'}{L8U}{r}{ŕ}
+\DeclareTextCompositeCommand{\c}{L8U}{r}{ŗ}
+\DeclareTextCompositeCommand{\v}{L8U}{r}{ř}
+\DeclareTextCompositeCommand{\'}{L8U}{s}{ś}
+\DeclareTextCompositeCommand{\^}{L8U}{s}{ŝ}
+\DeclareTextCompositeCommand{\c}{L8U}{s}{ş}
+\DeclareTextCompositeCommand{\v}{L8U}{s}{š}
+\DeclareTextCompositeCommand{\c}{L8U}{t}{ţ}
+\DeclareTextCompositeCommand{\v}{L8U}{t}{ť}
+\DeclareTextCompositeCommand{\texttipaB}{L8U}{t}{ŧ}
+\DeclareTextCommand{\texttslash}{L8U}{ŧ}% PD1
+\DeclareTextCompositeCommand{\~}{L8U}{u}{ũ}
+\DeclareTextCompositeCommand{\=}{L8U}{u}{ū}
+\DeclareTextCompositeCommand{\u}{L8U}{u}{ŭ}
+\DeclareTextCompositeCommand{\r}{L8U}{u}{ů}
+\DeclareTextCompositeCommand{\H}{L8U}{u}{ű}
+\DeclareTextCompositeCommand{\k}{L8U}{u}{ų}
+\DeclareTextCompositeCommand{\^}{L8U}{w}{ŵ}
+\DeclareTextCompositeCommand{\^}{L8U}{y}{ŷ}
+\DeclareTextCompositeCommand{\'}{L8U}{z}{ź}
+\DeclareTextCompositeCommand{\.}{L8U}{z}{ż}
+\DeclareTextCompositeCommand{\v}{L8U}{z}{ž}
+\DeclareTextCommand{\textlongs}{L8U}{ſ}% PD1
+\DeclareTextCommand{\j}{L8U}{ȷ}% dotless j
+%
+
+% Allows accents and other commands with parameters to work,
+% by adjusting the order of the on-coming tokens.
+\def\liixu@textreorder#1#2\ifx#3\else\expandafter#4\fi#5{#1{#5}#4}
+
+%
+% support for non-UTF8 upper bytes ^^80 to ^^FF
+%
+\let\next\relax
+\iflatLATxmp
+ \IfFileExists{l8ulat-penc.def}{%
+ \def\next{\input{l8ulat-penc.def}}%
+ }{\PackageError{l8u-penc}{%
+ The required file l8ulat-penc.def could not be found.
+ Type <return> to continue without it.
+ }{%
+ Upper 8-bit characters appearing in the metadata may
+ not be interpreted correctly. If such are present,
+ the XMP packet may cause the resulting PDF to not validate.
+ }%
+ \latLATxmpfalse
+ }
+\fi \next
+
+
+\ifgrkLGRxmp\grkxmptrue\fi
+
+%
+% support for Greek alphabet
+%
+\let\next\relax
+\ifgrkxmp
+ \IfFileExists{l8ugrk-penc.def}{%
+ \def\next{\input{l8ugrk-penc.def}}%
+ }{\PackageError{l8u-penc}{%
+ The required file l8ugrk-penc.def could not be found.
+ Type <return> to continue without it.
+ }{%
+ Greek characters in the metadata will not be interpreted
+ correctly. PDF validation will likely fail.
+ }%
+ \grkxmpfalse\grkLGRxmpfalse
+ }
+ \gdef\pdfxGreeknumeralsHack{%
+ \def\anw@false{\let\anw@print\textdexiakeraia}%
+ \def\anw@true{\let\anw@print\empty}}
+\fi \next
+%
+
+%
+% support for Cyrillic alphabet
+%
+\let\next\relax
+\ifcyrxmp
+ \IfFileExists{l8ucyr-penc.def}{%
+ \def\next{\input{l8ucyr-penc.def}}%
+ }{\PackageError{l8u-penc}{%
+ The required file l8ucyr-penc.def could not be found.
+ Type <return> to continue without it.
+ }{%
+ Cyrillic characters in the metadata will not be interpreted
+ correctly. PDF validation will likely fail.
+ }%
+ \cyrxmpfalse
+ }
+\fi \next
+%
+
+
+%
+% support for Arabic characters
+%
+\let\next\relax
+\ifarbxmp
+ \IfFileExists{l8uarb-penc.def}{%
+ \def\next{\input{l8uarb-penc.def}}%
+ }{\PackageError{l8u-penc}{%
+ The required file l8uarb-penc.def could not be found.
+ Type <return> to continue without it.
+ }{%
+ Arabic characters in the metadata will not be interpreted
+ correctly. PDF validation will likely fail.
+ }%
+ \arbxmpfalse
+ }
+\fi \next
+
+%
+% support for Armenian letters
+%
+\let\next\relax
+\ifarmxmp
+ \IfFileExists{l8uarm-penc.def}{%
+ \def\next{\input{l8uarm-penc.def}}%
+ }{\PackageError{l8u-penc}{%
+ The required file l8uarm-penc.def could not be found.
+ Type <return> to continue without it.
+ }{%
+ Armenian characters in the metadata will not be interpreted
+ correctly. PDF validation will likely fail.
+ }%
+ \armxmpfalse
+ }
+ \expandafter\ifx\csname pdfglyphtounicode\endcsname\relax\else
+ \InputIfFileExists{armglyphs.dfu}{}{}%
+ \fi
+\fi \next
+
+
+%
+% support for Mathematical symbols and alphabets
+%
+\let\next\relax
+\ifmathxmp
+ \IfFileExists{l8umath-penc.def}{%
+ \def\next{\input{l8umath-penc.def}}%
+ }{\PackageError{l8u-penc}{%
+ The required file l8umath-penc.def could not be found.
+ Type <return> to continue without it.
+ }{%
+ Mathematical symbols or macros in the metadata will not
+ be interpreted correctly. PDF validation will likely fail.
+ }%
+ \mathxmpfalse
+ }
+\fi \next
+
+
+
+\iflatEXTxmp
+
+%
+% Latin Extended-B Ux0180 – Ux024F
+%
+\DeclareTextCompositeCommand{\texttipaB}{L8U}{b}{ƀ}
+\DeclareTextCommand{\textcrb}{L8U}{ƀ}
+\DeclareTextCompositeCommand{\texttipam}{L8U}{B}{Ɓ}
+\DeclareTextCommand{\texthausaB}{L8U}{Ɓ}
+\DeclareTextCompositeCommand{\=}{L8U}{B}{Ƃ}
+\DeclareTextCompositeCommand{\=}{L8U}{b}{ƃ}
+% tone 6 — upper & lower
+\DeclareTextCompositeCommand{\texttipam}{L8U}{O}{Ɔ}
+\DeclareTextCompositeCommand{\texttipam}{L8U}{C}{Ƈ}
+\DeclareTextCommand{\texthtc}{L8U}{ƈ}
+\DeclareTextCompositeCommand{\texttipam}{L8U}{c}{ƈ}
+\DeclareTextCompositeCommand{\texttipaM}{L8U}{D}{Ɖ}
+\DeclareTextCommand{\texthausaD}{L8U}{Ɗ}
+\DeclareTextCompositeCommand{\texttipam}{L8U}{D}{Ɗ}
+\DeclareTextCompositeCommand{\=}{L8U}{D}{Ƌ}
+\DeclareTextCompositeCommand{\=}{L8U}{d}{ƌ}
+% turned delta
+\DeclareTextCommand{\textEreversed}{L8U}{Ǝ}
+\DeclareTextCompositeCommand{\texttipaM}{L8U}{E}{Ǝ}
+\DeclareTextCommand{\textrevE}{L8U}{Ǝ}
+\DeclareTextCommand{\SCHWA}{L8U}{Ə}
+\DeclareTextCompositeCommand{\texttipam}{L8U}{E}{Ɛ}
+\DeclareTextCompositeCommand{\texttipam}{L8U}{F}{Ƒ}
+\DeclareTextCompositeCommand{\texttipam}{L8U}{f}{ƒ}
+\DeclareTextCommand{\textflorin}{L8U}{ƒ}
+\DeclareTextCompositeCommand{\texttipam}{L8U}{G}{Ɠ}
+\DeclareTextCommand{\textGammaafrican}{L8U}{Ɣ}
+\DeclareTextCommand{\hv}{L8U}{ƕ}
+\DeclareTextCommand{\texthvlig}{L8U}{ƕ}
+\DeclareTextCompositeCommand{\texttipam}{L8U}{I}{Ɩ}
+\DeclareTextCommand{\textIotaafrican}{L8U}{Ɩ}
+\DeclareTextCompositeCommand{\texttipaB}{L8U}{I}{Ɨ}% Viby-I
+\DeclareTextCommand{\texthausaK}{L8U}{Ƙ}
+\DeclareTextCompositeCommand{\texttipam}{L8U}{K}{Ƙ}
+\DeclareTextCommand{\texthtk}{L8U}{ƙ}
+\DeclareTextCompositeCommand{\texttipam}{L8U}{k}{ƙ}
+\DeclareTextCommand{\textbarl}{L8U}{ƚ}
+\DeclareTextCompositeCommand{\texttipaB}{L8U}{l}{ƚ}
+\DeclareTextCommand{\textcrlambda}{L8U}{ƛ}
+%\DeclareTextCompositeCommand{\texttipaM}{L8U}{M}{Ɯ}% Is this known?
+\DeclareTextCompositeCommand{\texttipam}{L8U}{J}{Ɲ}
+\DeclareTextCommand{\textPUnrleg}{L8U}{ƞ}
+% O with middle tilde, used mainly with Vietnamese
+%\DeclareTextCommand{\textmidtildeO}{L8U}{Ɵ}
+\DeclareTextCommand{\Ohorn}{L8U}{Ơ}
+\DeclareTextCommand{\ohorn}{L8U}{ơ}
+% \OI and \oi ???
+\DeclareTextCompositeCommand{\texttipam}{L8U}{P}{Ƥ}
+\DeclareTextCommand{\texthtp}{L8U}{ƥ}
+\DeclareTextCompositeCommand{\texttipam}{L8U}{p}{ƥ}
+% \YR
+% Tone 2 — upper & lower
+\DeclareTextCommand{\ESH}{L8U}{Ʃ}
+\DeclareTextCommand{\textPUlooptoprevesh}{L8U}{ƪ}
+\DeclareTextCommand{\textPUlooptoprevesh}{L8U}{ƪ}
+\DeclareTextCommand{\textraisevibyi}{L8U}{ƪ}% IPA ????
+\DeclareTextCommand{\textlhookt}{L8U}{ƫ}
+\DeclareTextCompositeCommand{\texttipam}{L8U}{T}{Ƭ}
+\DeclareTextCommand{\texthtt}{L8U}{ƭ}
+\DeclareTextCompositeCommand{\texttipam}{L8U}{t}{ƭ}
+\DeclareTextCompositeCommand{\texttipaM}{L8U}{T}{Ʈ}
+% U with middle tilde, used mainly with Vietnamese
+\DeclareTextCommand{\Uhorn}{L8U}{Ư}
+\DeclareTextCommand{\uhorn}{L8U}{ư}
+%
+\DeclareTextCompositeCommand{\texttipam}{L8U}{U}{Ʊ}
+\DeclareTextCommand{\textupsilonlatin}{L8U}{Ʊ}
+\DeclareTextCompositeCommand{\texttipam}{L8U}{V}{Ʋ}
+\DeclareTextCompositeCommand{\texttipam}{L8U}{Y}{Ƴ}
+\DeclareTextCompositeCommand{\texttipam}{L8U}{y}{ƴ}
+\DeclareTextCompositeCommand{\texttipaB}{L8U}{Z}{Ƶ}
+\DeclareTextCompositeCommand{\texttipaB}{L8U}{z}{ƶ}
+\DeclareTextCommand{\EZH}{L8U}{Ʒ}
+\DeclareTextCompositeCommand{\texttipaM}{L8U}{Z}{Ʒ}
+\DeclareTextCommand{\ezh}{L8U}{ʒ}% Ux0292
+% EZH reversed
+\DeclareTextCommand{\textrevyogh}{L8U}{ƹ}
+\DeclareTextCommand{\textPUbenttailyogh}{L8U}{ƺ}
+\DeclareTextCommand{\textcrtwo}{L8U}{ƻ}
+\DeclareTextCompositeCommand{\texttipaB}{L8U}{2}{ƻ}
+% Tone 5 — upper & lower
+\DeclareTextCommand{\textcrinvglotstop}{L8U}{ƾ}
+\DeclareTextCommand{\textwynn}{L8U}{ƿ}
+\DeclareTextCommand{\textpipe}{L8U}{ǀ}
+\DeclareTextCommand{\textvertline}{L8U}{ǀ}
+\DeclareTextCommand{\textdoublepipe}{L8U}{ǁ}
+\DeclareTextCommand{\textdoublebarpipe}{L8U}{ǂ}
+\DeclareTextCommand{\textrclick}{L8U}{ǃ}
+\DeclareTextCompositeCommand{\v}{L8U}{\DZ}{DŽ}
+\DeclareTextCompositeCommand{\v}{L8U}{\Dz}{Dž}
+\DeclareTextCompositeCommand{\v}{L8U}{\dz}{dž}
+\DeclareTextCommand{\LJ}{L8U}{LJ}
+\DeclareTextCommand{\Lj}{L8U}{Lj}
+\DeclareTextCommand{\lj}{L8U}{lj}
+\DeclareTextCommand{\NJ}{L8U}{NJ}
+\DeclareTextCommand{\Nj}{L8U}{Nj}
+\DeclareTextCommand{\nj}{L8U}{nj}
+% Ux01CD
+\DeclareTextCompositeCommand{\v}{L8U}{A}{Ǎ}
+\DeclareTextCompositeCommand{\v}{L8U}{a}{ǎ}
+\DeclareTextCompositeCommand{\v}{L8U}{I}{Ǐ}
+\DeclareTextCompositeCommand{\v}{L8U}{i}{ǐ}
+\DeclareTextCompositeCommand{\v}{L8U}{\i}{ǐ}
+\DeclareTextCompositeCommand{\v}{L8U}{O}{Ǒ}
+\DeclareTextCompositeCommand{\v}{L8U}{o}{ǒ}
+\DeclareTextCompositeCommand{\v}{L8U}{U}{Ǔ}
+\DeclareTextCompositeCommand{\v}{L8U}{u}{ǔ}
+\DeclareTextCompositeCommand{\=}{L8U}{\"U}{Ǖ}
+\DeclareTextCompositeCommand{\=}{L8U}{\"u}{ǖ}
+\DeclareTextCompositeCommand{\'}{L8U}{\"U}{Ǘ}
+\DeclareTextCompositeCommand{\'}{L8U}{\"u}{ǘ}
+\DeclareTextCompositeCommand{\v}{L8U}{\"U}{Ǚ}
+\DeclareTextCompositeCommand{\v}{L8U}{\"u}{ǚ}
+\DeclareTextCompositeCommand{\`}{L8U}{\"U}{Ǜ}
+\DeclareTextCompositeCommand{\`}{L8U}{\"u}{ǜ}
+\DeclareTextCommand{\textinve}{L8U}{ǝ}
+\DeclareTextCompositeCommand{\texttipaM}{L8U}{e}{ǝ}
+\DeclareTextCompositeCommand{\=}{L8U}{\"A}{Ǟ}
+\DeclareTextCompositeCommand{\=}{L8U}{\"a}{ǟ}
+\DeclareTextCompositeCommand{\=}{L8U}{\.A}{Ǡ}
+\DeclareTextCompositeCommand{\=}{L8U}{\.a}{ǡ}
+\DeclareTextCompositeCommand{\=}{L8U}{\AE}{Ǣ}
+\DeclareTextCompositeCommand{\=}{L8U}{\ae}{ǣ}
+\DeclareTextCompositeCommand{\texttipaB}{L8U}{G}{Ǥ}
+\DeclareTextCommand{\textGslash}{L8U}{Ǥ}% PD1
+\DeclareTextCompositeCommand{\texttipaB}{L8U}{g}{ǥ}
+\DeclareTextCommand{\textgslash}{L8U}{ǥ}% PD1
+\DeclareTextCompositeCommand{\v}{L8U}{G}{Ǧ}
+\DeclareTextCompositeCommand{\v}{L8U}{g}{ǧ}
+\DeclareTextCompositeCommand{\v}{L8U}{K}{Ǩ}
+\DeclareTextCompositeCommand{\v}{L8U}{k}{ǩ}
+\DeclareTextCompositeCommand{\k}{L8U}{O}{Ǫ}
+%\DeclareTextCompositeCommand{\k}{L8U}{o}{\textogonekcentered{o}}
+\DeclareTextCompositeCommand{\k}{L8U}{o}{ǫ}
+%\DeclareTextCompositeCommand{\k}{L8U}{O}{\textogonekcentered{O}}
+\DeclareTextCompositeCommand{\=}{L8U}{\k O}{Ǭ}
+\DeclareTextCompositeCommand{\=}{L8U}{\k{O}}{Ǭ}
+\DeclareTextCompositeCommand{\=}{L8U}{\k o}{ǭ}
+\DeclareTextCompositeCommand{\=}{L8U}{\k{o}}{ǭ}
+\DeclareTextCompositeCommand{\v}{L8U}{\EZH}{Ǯ}
+\DeclareTextCompositeCommand{\v}{L8U}{\ezh}{ǯ}
+\DeclareTextCompositeCommand{\v}{L8U}{j}{ǰ}
+\DeclareTextCompositeCommand{\v}{L8U}{\j}{ǰ}
+\DeclareTextCommand{\DZ}{L8U}{DZ}
+\DeclareTextCommand{\Dz}{L8U}{Dz}
+\DeclareTextCommand{\dz}{L8U}{dz}
+\DeclareTextCompositeCommand{\'}{L8U}{G}{Ǵ}
+\DeclareTextCompositeCommand{\'}{L8U}{g}{ǵ}
+\DeclareTextCommand{\HV}{L8U}{Ƕ}
+\DeclareTextCommand{\WYNN}{L8U}{Ƿ}
+\DeclareTextCompositeCommand{\`}{L8U}{N}{Ǹ}
+\DeclareTextCompositeCommand{\`}{L8U}{n}{ǹ}
+\DeclareTextCompositeCommand{\'}{L8U}{\r A}{Ǻ}
+\DeclareTextCompositeCommand{\'}{L8U}{\r{A}}{Ǻ}
+\DeclareTextCompositeCommand{\'}{L8U}{\AA}{Ǻ}
+\DeclareTextCompositeCommand{\'}{L8U}{\r a}{ǻ}
+\DeclareTextCompositeCommand{\'}{L8U}{\r{a}}{ǻ}
+\DeclareTextCompositeCommand{\'}{L8U}{\aa}{ǻ}
+\DeclareTextCompositeCommand{\'}{L8U}{\AE}{Ǽ}
+\DeclareTextCompositeCommand{\'}{L8U}{\ae}{ǽ}
+\DeclareTextCompositeCommand{\'}{L8U}{\O}{Ǿ}
+\DeclareTextCompositeCommand{\'}{L8U}{\o}{ǿ}
+% Ux0200
+\DeclareTextCompositeCommand{\textdblgravecmb}{L8U}{A}{Ȁ}
+\DeclareTextCompositeCommand{\texttipaG}{L8U}{A}{Ȁ}
+\DeclareTextCompositeCommand{\textdblgravecmb}{L8U}{a}{ȁ}
+\DeclareTextCompositeCommand{\texttipaG}{L8U}{a}{ȁ}
+\DeclareTextCompositeCommand{\textroundcap}{L8U}{A}{Ȃ}
+\DeclareTextCompositeCommand{\textroundcap}{L8U}{a}{ȃ}
+\DeclareTextCompositeCommand{\textdblgravecmb}{L8U}{E}{Ȅ}
+\DeclareTextCompositeCommand{\texttipaG}{L8U}{E}{Ȅ}
+\DeclareTextCompositeCommand{\textdblgravecmb}{L8U}{e}{ȅ}
+\DeclareTextCompositeCommand{\texttipaG}{L8U}{e}{ȅ}
+\DeclareTextCompositeCommand{\textroundcap}{L8U}{E}{Ȇ}
+\DeclareTextCompositeCommand{\textinvbreve}{L8U}{E}{Ȇ}
+\DeclareTextCompositeCommand{\textroundcap}{L8U}{e}{ȇ}
+\DeclareTextCompositeCommand{\textinvbreve}{L8U}{e}{ȇ}
+\DeclareTextCompositeCommand{\textdblgravecmb}{L8U}{I}{Ȉ}
+\DeclareTextCompositeCommand{\texttipaG}{L8U}{I}{Ȉ}
+\DeclareTextCompositeCommand{\textdblgravecmb}{L8U}{i}{ȉ}
+\DeclareTextCompositeCommand{\texttipaG}{L8U}{i}{ȉ}
+\DeclareTextCompositeCommand{\textdblgravecmb}{L8U}{\i}{ȉ}
+\DeclareTextCompositeCommand{\texttipaG}{L8U}{\i}{ȉ}
+\DeclareTextCompositeCommand{\textroundcap}{L8U}{I}{Ȋ}
+\DeclareTextCompositeCommand{\textinvbreve}{L8U}{I}{Ȋ}
+\DeclareTextCompositeCommand{\textroundcap}{L8U}{i}{ȋ}
+\DeclareTextCompositeCommand{\textinvbreve}{L8U}{i}{ȋ}
+\DeclareTextCompositeCommand{\textdblgravecmb}{L8U}{O}{Ȍ}
+\DeclareTextCompositeCommand{\texttipaG}{L8U}{O}{Ȍ}
+\DeclareTextCompositeCommand{\textdblgravecmb}{L8U}{o}{ȍ}
+\DeclareTextCompositeCommand{\texttipaG}{L8U}{o}{ȍ}
+\DeclareTextCompositeCommand{\textroundcap}{L8U}{O}{Ȏ}
+\DeclareTextCompositeCommand{\textinvbreve}{L8U}{O}{Ȏ}
+\DeclareTextCompositeCommand{\textroundcap}{L8U}{o}{ȏ}
+\DeclareTextCompositeCommand{\textinvbreve}{L8U}{o}{ȏ}
+\DeclareTextCompositeCommand{\textdblgravecmb}{L8U}{R}{Ȑ}
+\DeclareTextCompositeCommand{\texttipaG}{L8U}{R}{Ȑ}
+\DeclareTextCompositeCommand{\textdblgravecmb}{L8U}{r}{ȑ}
+\DeclareTextCompositeCommand{\texttipaG}{L8U}{r}{ȑ}
+\DeclareTextCompositeCommand{\textroundcap}{L8U}{R}{Ȓ}
+\DeclareTextCompositeCommand{\textroundcap}{L8U}{r}{ȓ}
+\DeclareTextCompositeCommand{\textdblgravecmb}{L8U}{U}{Ȕ}
+\DeclareTextCompositeCommand{\texttipaG}{L8U}{U}{Ȕ}
+\DeclareTextCompositeCommand{\textdblgravecmb}{L8U}{u}{ȕ}
+\DeclareTextCompositeCommand{\texttipaG}{L8U}{u}{ȕ}
+\DeclareTextCompositeCommand{\textroundcap}{L8U}{U}{Ȗ}
+\DeclareTextCompositeCommand{\textinvbreve}{L8U}{U}{Ȗ}
+\DeclareTextCompositeCommand{\textroundcap}{L8U}{u}{ȗ}
+\DeclareTextCompositeCommand{\textinvbreve}{L8U}{u}{ȗ}
+\DeclareTextCompositeCommand{\textcommabelow}{L8U}{S}{Ș}
+\DeclareTextCompositeCommand{\textcommabelow}{L8U}{s}{ș}
+\DeclareTextCompositeCommand{\textcommabelow}{L8U}{T}{Ț}
+\DeclareTextCompositeCommand{\textcommabelow}{L8U}{t}{ț}
+\DeclareTextCommand{\YOGH}{L8U}{Ȝ}
+\DeclareTextCommand{\yogh}{L8U}{ȝ}
+\DeclareTextCompositeCommand{\v}{L8U}{H}{Ȟ}
+\DeclareTextCompositeCommand{\v}{L8U}{h}{ȟ}
+\DeclareTextCompositeCommand{\texttipaM}{L8U}{N}{Ƞ}
+\DeclareTextCommand{\textctd}{L8U}{ȡ}
+% \OU and \ou
+\DeclareTextCompositeCommand{\textcommabelow}{L8U}{Z}{Ȥ}
+\DeclareTextCommand{\textcommatailz}{L8U}{ȥ}
+\DeclareTextCompositeCommand{\textcommabelow}{L8U}{z}{ȥ}
+\DeclareTextCompositeCommand{\.}{L8U}{A}{Ȧ}
+\DeclareTextCompositeCommand{\.}{L8U}{a}{ȧ}
+\DeclareTextCompositeCommand{\c}{L8U}{E}{Ȩ}
+\DeclareTextCompositeCommand{\c}{L8U}{e}{ȩ}
+\DeclareTextCompositeCommand{\=}{L8U}{\"O}{Ȫ}
+\DeclareTextCompositeCommand{\=}{L8U}{\"{O}}{Ȫ}
+\DeclareTextCompositeCommand{\=}{L8U}{\"o}{ȫ}
+\DeclareTextCompositeCommand{\=}{L8U}{\"{o}}{ȫ}
+\DeclareTextCompositeCommand{\=}{L8U}{\~O}{Ȭ}
+\DeclareTextCompositeCommand{\=}{L8U}{\~{O}}{Ȭ}
+\DeclareTextCompositeCommand{\=}{L8U}{\~o}{ȭ}
+\DeclareTextCompositeCommand{\=}{L8U}{\~{o}}{ȭ}
+\DeclareTextCompositeCommand{\.}{L8U}{O}{Ȯ}
+\DeclareTextCompositeCommand{\.}{L8U}{o}{ȯ}
+\DeclareTextCompositeCommand{\=}{L8U}{\.O}{Ȱ}
+\DeclareTextCompositeCommand{\=}{L8U}{\.{O}}{Ȱ}
+\DeclareTextCompositeCommand{\=}{L8U}{\.o}{ȱ}
+\DeclareTextCompositeCommand{\=}{L8U}{\.{o}}{ȱ}
+\DeclareTextCompositeCommand{\=}{L8U}{Y}{Ȳ}
+\DeclareTextCompositeCommand{\=}{L8U}{y}{ȳ}
+\DeclareTextCommand{\textctl}{L8U}{ȴ}
+\DeclareTextCommand{\textctn}{L8U}{ȵ}
+\DeclareTextCommand{\textctt}{L8U}{ȶ}
+\DeclareTextCommand{\textdotlessj}{L8U}{ȷ}
+%\DeclareTextCommand{\j}{L8U}{ȷ}% dotless-j already declared
+\DeclareTextCommand{\textPUdblig}{L8U}{ȸ}
+\DeclareTextCommand{\textPUqplig}{L8U}{ȹ}
+\DeclareTextCommand{\textstrokea}{L8U}{Ⱥ}
+\DeclareTextCommand{\textstrokecapitalc}{L8U}{Ȼ}
+\DeclareTextCommand{\textslashc}{L8U}{ȼ}
+\DeclareTextCommand{\textstrokec}{L8U}{ȼ}
+\DeclareTextCommand{\textbarcapitall}{L8U}{Ƚ}
+\DeclareTextCommand{\textstrokecapitalt}{L8U}{Ⱦ}
+\DeclareTextCommand{\textrts}{L8U}{ȿ}
+\DeclareTextCommand{\textrtz}{L8U}{ɀ}
+\DeclareTextCommand{\textPUglotstopvari}{L8U}{Ɂ}
+\DeclareTextCommand{\textPUglotstopvarii}{L8U}{ɂ}
+\DeclareTextCommand{\textbarcapitalb}{L8U}{Ƀ}
+\DeclareTextCommand{\textbarcapitalu}{L8U}{Ʉ}
+\DeclareTextCommand{\textturnedcapitalv}{L8U}{Ʌ}
+\DeclareTextCommand{\textstrokecapitale}{L8U}{Ɇ}
+\DeclareTextCommand{\textstrokee}{L8U}{ɇ}
+\DeclareTextCommand{\textbarcapitalj}{L8U}{Ɉ}
+\DeclareTextCommand{\textbarj}{L8U}{ɉ}
+\DeclareTextCommand{\texthtcapitalq}{L8U}{Ɋ}
+\DeclareTextCommand{\texthtq}{L8U}{ɋ}
+\DeclareTextCommand{\textbarcapitalr}{L8U}{Ɍ}
+\DeclareTextCommand{\textbarr}{L8U}{ɍ}
+\DeclareTextCommand{\textbarcapitaly}{L8U}{Ɏ}
+\DeclareTextCommand{\textbary}{L8U}{ɏ}
+%
+
+\ifgrkxmp\else
+ \let\textgamma\textGammaafrican
+ \let\textIota\textIotaafrican
+ \let\textiota\textiotalatin
+ \let\textupsilon\textupsilonlatin
+\fi
+
+
+
+\fi % end of \iflatEXTxmp
+
+%
+% support for Hebrew characters
+%
+\let\next\relax
+\ifhebxmp
+ \IfFileExists{l8uheb-penc.def}{%
+ \def\next{\input{l8uheb-penc.def}}%
+ }{\PackageError{l8u-penc}{%
+ The required file l8uheb-penc.def could not be found.
+ Type <return> to continue without it.
+ }{%
+ Hebrew characters in the metadata will not be interpreted
+ correctly. PDF validation will likely fail.
+ }%
+ \hebxmpfalse
+ }
+\fi \next
+
+%
+% support for Devanagari characters
+%
+\let\next\relax
+\ifdevxmp
+ \IfFileExists{l8udev-penc.def}{%
+ \def\next{\input{l8udev-penc.def}}%
+ }{\PackageError{l8u-penc}{%
+ The required file l8udev-penc.def could not be found.
+ Type <return> to continue without it.
+ }{%
+ Devanagari characters in the metadata will not be interpreted
+ correctly. PDF validation will likely fail.
+ }%
+ \devxmpfalse
+ }
+\fi \next
+
+
+%
+% used in multiple encodings
+%
+\DeclareTextCommand{\textschwa}{L8U}{ə}% Ux0259
+
+\DeclareTextCommand{\texttone}{L8U}{}% so composites can be used, post-2017
+
+
+\ifipaxmp
+%
+% IPA Extensions Ux0250 – Ux02AF
+%
+\DeclareTextCommand{\textturna}{L8U}{ɐ}
+\DeclareTextCommand{\textscripta}{L8U}{ɑ}
+\DeclareTextCommand{\textturnscripta}{L8U}{ɒ}
+\DeclareTextCompositeCommand{\texttipam}{L8U}{b}{ɓ}
+\DeclareTextCommand{\texthtb}{L8U}{ɓ}
+\DeclareTextCompositeCommand{\texttipam}{L8U}{o}{ɔ}
+\DeclareTextCommand{\textoopen}{L8U}{ɔ}
+\DeclareTextCommand{\textopeno}{L8U}{ɔ}
+\DeclareTextCommand{\textctc}{L8U}{ɕ}
+\DeclareTextCompositeCommand{\texttipaM}{L8U}{d}{ɖ}
+\DeclareTextCommand{\textdtail}{L8U}{ɖ}
+\DeclareTextCommand{\textrtaild}{L8U}{ɖ}
+\DeclareTextCompositeCommand{\texttipam}{L8U}{d}{ɗ}
+\DeclareTextCommand{\texthtd}{L8U}{ɗ}
+\DeclareTextCommand{\textdhook}{L8U}{ɗ}
+\DeclareTextCommand{\textreve}{L8U}{ɘ}
+\DeclareTextCommand{\schwa}{L8U}{ə}
+%\DeclareTextCommand{\textschwa}{L8U}{ə}% see above
+\DeclareTextCompositeCommand{\texttipam}{L8U}{\schwa}{ɚ}
+\DeclareTextCommand{\textrhookschwa}{L8U}{ɚ}
+\DeclareTextCommand{\textniepsilon}{L8U}{ɛ}% ????
+\DeclareTextCompositeCommand{\texttipam}{L8U}{e}{ɛ}
+\DeclareTextCommand{\texteopen}{L8U}{ɛ}
+%\DeclareTextCommand{\textepsilon}{L8U}{ɛ}% beware greek
+\DeclareTextCommand{\textrevepsilon}{L8U}{ɜ}
+\DeclareTextCommand{\textrhookrevepsilon}{L8U}{ɝ}
+\DeclareTextCommand{\textcloserevepsilon}{L8U}{ɞ}
+\DeclareTextCompositeCommand{\texttipaB}{L8U}{j}{ɟ}
+\DeclareTextCompositeCommand{\texttipaB}{L8U}{\j}{ɟ}
+\DeclareTextCommand{\textbardotlessj}{L8U}{ɟ}
+\DeclareTextCommand{\textObardotlessj}{L8U}{ɟ}
+\DeclareTextCommand{\texthtg}{L8U}{ɠ}
+\DeclareTextCommand{\textscriptg}{L8U}{ɡ}
+\DeclareTextCommand{\textg}{L8U}{ɡ}
+\DeclareTextCommand{\textscg}{L8U}{ɢ}
+\DeclareTextCommand{\textipagamma}{L8U}{ɣ}
+\DeclareTextCommand{\textbabygamma}{L8U}{ɣ}
+\DeclareTextCommand{\textgammalatinsmall}{L8U}{ɣ}
+%\DeclareTextCommand{\textgamma}{L8U}{ɣ}% beware greek
+\DeclareTextCompositeCommand{\texttipam}{L8U}{g}{ɣ}
+\DeclareTextCommand{\textramshorns}{L8U}{ɤ}
+\DeclareTextCommand{\textturnh}{L8U}{ɥ}
+\DeclareTextCompositeCommand{\texttipam}{L8U}{h}{ɦ}
+\DeclareTextCommand{\texthth}{L8U}{ɦ}
+\DeclareTextCommand{\texththeng}{L8U}{ɧ}
+\DeclareTextCompositeCommand{\texttipaB}{L8U}{i}{ɨ}
+\DeclareTextCommand{\textbari}{L8U}{ɨ}% Viby-i ???
+\DeclareTextCommand{\textniiota}{L8U}{ɩ}
+\DeclareTextCommand{\textiotalatin}{L8U}{ɩ}
+\DeclareTextCompositeCommand{\texttipam}{L8U}{i}{ɩ}
+\DeclareTextCommand{\textsci}{L8U}{ɪ}
+\DeclareTextCommand{\textltilde}{L8U}{ɫ}
+\DeclareTextCommand{\textbeltl}{L8U}{ɬ}
+\DeclareTextCommand{\textrtaill}{L8U}{ɭ}
+\DeclareTextCommand{\lezh}{L8U}{ɮ}
+\DeclareTextCommand{\textlyoghlig}{L8U}{ɮ}
+\DeclareTextCommand{\textOlyoghlig}{L8U}{ɮ}
+\DeclareTextCommand{\textturnm}{L8U}{ɯ}
+\DeclareTextCommand{\textturnmrleg}{L8U}{ɰ}
+\DeclareTextCompositeCommand{\texttipam}{L8U}{m}{ɱ}
+\DeclareTextCommand{\textltailm}{L8U}{ɱ}
+\DeclareTextCompositeCommand{\texttipam}{L8U}{j}{ɲ}
+\DeclareTextCommand{\textltailn}{L8U}{ɲ}
+\DeclareTextCommand{\textnhookleft}{L8U}{ɲ}
+\DeclareTextCompositeCommand{\texttipam}{L8U}{n}{ɳ}
+\DeclareTextCommand{\textrtailn}{L8U}{ɳ}
+\DeclareTextCommand{\textscn}{L8U}{ɴ}
+\DeclareTextCommand{\textbaro}{L8U}{ɵ}
+\DeclareTextCommand{\textscoelig}{L8U}{ɶ}
+\DeclareTextCommand{\textcloseomega}{L8U}{ɷ}
+\DeclareTextCommand{\textniphi}{L8U}{ɸ}
+\DeclareTextCommand{\textphilatin}{L8U}{ɸ}
+%\DeclareTextCommand{\textphi}{L8U}{ɸ}% beware greek
+\DeclareTextCommand{\textturnr}{L8U}{ɹ}
+\DeclareTextCommand{\textturnlonglegr}{L8U}{ɺ}
+\DeclareTextCommand{\textturnrrtail}{L8U}{ɻ}
+\DeclareTextCommand{\textlonglegr}{L8U}{ɼ}
+\DeclareTextCommand{\textrtailr}{L8U}{ɽ}
+\DeclareTextCommand{\textfishhookr}{L8U}{ɾ}
+\DeclareTextCommand{\textPUlhti}{L8U}{ɿ}
+\DeclareTextCommand{\textlhtlongi}{L8U}{ɿ}
+\DeclareTextCommand{\textscr}{L8U}{ʀ}
+\DeclareTextCommand{\textinvscr}{L8U}{ʁ}
+\DeclareTextCommand{\textrtails}{L8U}{ʂ}
+\DeclareTextCompositeCommand{\texttipam}{L8U}{s}{ʃ}
+\DeclareTextCommand{\esh}{L8U}{ʃ}
+\DeclareTextCommand{\textesh}{L8U}{ʃ}
+\DeclareTextCommand{\texthtbardotlessj}{L8U}{ʄ}
+\DeclareTextCompositeCommand{\texttipam}{L8U}{\textbardotlessj}{ʄ}
+\DeclareTextCompositeCommand{\texttipam}{L8U}{S}{ʅ}
+\DeclareTextCommand{\textvibyi}{L8U}{ʅ}
+\DeclareTextCommand{\textctesh}{L8U}{ʆ}
+\DeclareTextCommand{\textturnt}{L8U}{ʇ}
+\DeclareTextCommand{\textrtailt}{L8U}{ʈ}
+\DeclareTextCommand{\texttretroflexhook}{L8U}{ʈ}
+\DeclareTextCompositeCommand{\texttipam}{L8U}{t}{ʈ}
+\DeclareTextCompositeCommand{\texttipaB}{L8U}{u}{ʉ}
+\DeclareTextCommand{\textbaru}{L8U}{ʉ}
+\DeclareTextCommand{\textscupsilon}{L8U}{ʊ}
+%\DeclareTextCommand{\textupsilon}{L8U}{ʊ}% beware greek
+\DeclareTextCompositeCommand{\texttipam}{L8U}{u}{ʋ}
+\DeclareTextCompositeCommand{\texttipam}{L8U}{v}{ʋ}
+\DeclareTextCommand{\textscriptv}{L8U}{ʋ}
+\DeclareTextCommand{\textvhook}{L8U}{ʋ}
+\DeclareTextCommand{\textturnv}{L8U}{ʌ}
+\DeclareTextCommand{\textturnw}{L8U}{ʍ}
+\DeclareTextCommand{\textturny}{L8U}{ʎ}
+\DeclareTextCommand{\textscy}{L8U}{ʏ}
+\DeclareTextCommand{\textrtailz}{L8U}{ʐ}
+\DeclareTextCommand{\textctz}{L8U}{ʑ}
+\DeclareTextCompositeCommand{\texttipam}{L8U}{z}{ʒ}
+\DeclareTextCommand{\ezh}{L8U}{ʒ}
+\DeclareTextCommand{\textezh}{L8U}{ʒ}
+\DeclareTextCommand{\textyogh}{L8U}{ʒ}
+\DeclareTextCommand{\textctyogh}{L8U}{ʓ}
+\DeclareTextCommand{\textglotstop}{L8U}{ʔ}
+\DeclareTextCommand{\textrevglotstop}{L8U}{ʕ}
+\DeclareTextCommand{\textinvglotstop}{L8U}{ʖ}
+\DeclareTextCommand{\textstretchc}{L8U}{ʗ}
+\DeclareTextCommand{\textbullseye}{L8U}{ʘ}
+\DeclareTextCommand{\textscb}{L8U}{ʙ}
+\DeclareTextCommand{\textcloseepsilon}{L8U}{ʚ}
+\DeclareTextCommand{\texthtscg}{L8U}{ʛ}
+\DeclareTextCommand{\textsch}{L8U}{ʜ}
+\DeclareTextCommand{\textctj}{L8U}{ʝ}
+\DeclareTextCommand{\textturnk}{L8U}{ʞ}
+\DeclareTextCommand{\textscl}{L8U}{ʟ}
+\DeclareTextCompositeCommand{\texttipam}{L8U}{q}{ʠ}
+\DeclareTextCommand{\texthtq}{L8U}{ʠ}
+\DeclareTextCompositeCommand{\texttipaB}{L8U}{\textglotstop}{ʡ}
+\DeclareTextCommand{\textbarglotstop}{L8U}{ʡ}
+\DeclareTextCompositeCommand{\texttipaB}{L8U}{\textrevglotstop}{ʢ}
+\DeclareTextCommand{\textbarrevglotstop}{L8U}{ʢ}
+\DeclareTextCommand{\textdzlig}{L8U}{ʣ}
+\DeclareTextCommand{\textdyoghlig}{L8U}{ʤ}
+\DeclareTextCommand{\textdctzlig}{L8U}{ʥ}
+\DeclareTextCommand{\textctdctzlig}{L8U}{ȡʑ}% IPA character, break the ligature
+\DeclareTextCommand{\texttslig}{L8U}{ʦ}
+\DeclareTextCommand{\textteshlig}{L8U}{ʧ}
+\DeclareTextCommand{\texttesh}{L8U}{ʧ}
+\DeclareTextCommand{\texttctclig}{L8U}{ʨ}
+\DeclareTextCommand{\textcttctclig}{L8U}{ȶɕ}% IPA character, break the ligature
+\DeclareTextCommand{\textfenglig}{L8U}{ʩ}
+\DeclareTextCommand{\textlslig}{L8U}{ʪ}
+\DeclareTextCommand{\textlzlig}{L8U}{ʫ}
+\DeclareTextCommand{\textturncelig}{L8U}{ɔe}% IPA character, break the ligature
+% percussives: bilabial and bidental
+%\DeclareTextCommand{\textbilabial}{L8U}{ʬ}
+%\DeclareTextCommand{\textbidental}{L8U}{ʭ}
+\DeclareTextCommand{\textlhtlongy}{L8U}{ʮ}
+\DeclareTextCommand{\textvibyy}{L8U}{ʯ}
+
+\ifgrkxmp\else
+ \let\textbeta\ss
+ \let\textgamma\textgammalatinsmall
+ \let\textphi\textphilatin
+ \let\textepsilon\texteopen
+ \let\textupsilon\textscupsilon
+ %\let\texttheta\textthetalatin % check TIPA docs
+ %\let\textchi\textchilatin % TIPA uses the Greek
+\fi
+
+%
+% Spacing modifiers Ux02B0 – Ux02FF
+%
+\DeclareTextCommand{\textoverh}{L8U}{ʰ}
+\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{h}{ʰ}
+\DeclareTextCommand{\textoverheng}{L8U}{ʱ}
+\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{\texthth}{ʱ}
+\DeclareTextCommand{\textoverj}{L8U}{ʲ}
+\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{j}{ʲ}
+\DeclareTextCommand{\textoverr}{L8U}{ʳ}
+\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{r}{ʳ}
+\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{\textturnr}{ʴ}
+\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{\textturnrrtail}{ʵ}
+\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{\textinvscr}{ʶ}
+\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{w}{ʷ}
+\DeclareTextCommand{\textovery}{L8U}{ʸ}
+\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{y}{ʸ}
+\DeclareTextCommand{\textceltpal}{L8U}{ʹ}
+%\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{'}{ʹ}
+%\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{"}{ʺ}
+%\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{`}{ʻ}
+%\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{'}{ʼ}
+\DeclareTextCommand{\\textrevapostrophe}{L8U}{ʽ}
+%\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{'}{ʽ}
+\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{\rhook}{ʾ}
+\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{\lhook}{ʿ}
+\DeclareTextCommand{\textraiseglotstop}{L8U}{ˀ}
+%\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{?}{ˀ}
+%\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{}{ˁ}
+\DeclareTextCommand{\textlptr}{L8U}{˂}
+%\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{<}{˂}
+\DeclareTextCommand{\textrptr}{L8U}{˃}
+%\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{>}{˃}
+%\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{^}{˄}
+%\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{\vee}{˅}
+\DeclareTextCompositeCommand{\^}{L8U}{\empty}{ˆ}
+\DeclareTextCompositeCommand{\v}{L8U}{\empty}{ˇ}
+\DeclareTextCommand{\textprimstress}{L8U}{ˈ}
+\DeclareTextCompositeCommand{\=}{L8U}{\empty}{ˉ}
+\DeclareTextCompositeCommand{\'}{L8U}{\empty}{ˊ}
+\DeclareTextCompositeCommand{\`}{L8U}{\empty}{ˋ}
+\DeclareTextCommand{\textsecstress}{L8U}{ˌ}
+\DeclareTextCompositeCommand{\b}{L8U}{\empty}{ˍ}
+%\DeclareTextCompositeCommand{\b}{L8U}{h}{ˎ}
+%\DeclareTextCompositeCommand{\dotextsubscript}{L8U}{h}{ˏ}
+\DeclareTextCommand{\textlengthmark}{L8U}{ː}
+\DeclareTextCommand{\texthalflength}{L8U}{ˑ}
+%\DeclareTextCompositeCommand{\dotextsubscript}{L8U}{h}{ˑ}
+%\DeclareTextCompositeCommand{\dotextsubscript}{L8U}{h}{˒}
+%\DeclareTextCompositeCommand{\dotextsubscript}{L8U}{h}{˓}
+%\DeclareTextCompositeCommand{\dotextsubscript}{L8U}{h}{˔}
+%\DeclareTextCompositeCommand{\dotextsubscript}{L8U}{h}{˕}
+%\DeclareTextCompositeCommand{\dotextsubscript}{L8U}{h}{˖}
+%\DeclareTextCompositeCommand{\dotextsubscript}{L8U}{h}{˗}
+\DeclareTextCompositeCommand{\u}{L8U}{\empty}{˘}
+\DeclareTextCompositeCommand{\.}{L8U}{\empty}{˙}
+\DeclareTextCompositeCommand{\r}{L8U}{\empty}{˚}
+\DeclareTextCompositeCommand{\k}{L8U}{\empty}{˛}
+\DeclareTextCompositeCommand{\~}{L8U}{\empty}{˜}
+\DeclareTextCompositeCommand{\H}{L8U}{\empty}{˝}
+\DeclareTextCommand{\textrhoticity}{L8U}{˞}
+%\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{h}{˟}
+\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{\gamma}{ˠ}
+\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{l}{ˡ}
+\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{s}{ˢ}
+\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{x}{ˣ}
+\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{\textglotstop}{ˤ}
+\DeclareTextCompositeCommand{\texttone}{L8U}{5}{˥}
+\DeclareTextCompositeCommand{\texttone}{L8U}{4}{˦}
+\DeclareTextCompositeCommand{\texttone}{L8U}{3}{˧}
+\DeclareTextCompositeCommand{\texttone}{L8U}{2}{˨}
+\DeclareTextCompositeCommand{\texttone}{L8U}{1}{˩}
+%\DeclareTextCompositeCommand{\texttone}{L8U}{1}{˪}
+%\DeclareTextCompositeCommand{\texttone}{L8U}{1}{˫}
+%\DeclareTextCompositeCommand{\texttone}{L8U}{1}{ˬ}
+%\DeclareTextCompositeCommand{\texttone}{L8U}{1}{˭}
+%\DeclareTextCompositeCommand{\texttone}{L8U}{1}{ˮ}
+%\DeclareTextCompositeCommand{\dotextsubscript}{L8U}{\vee}{˯}
+%\DeclareTextCompositeCommand{\dotextsubscript}{L8U}{^}{˰}
+%\DeclareTextCompositeCommand{\dotextsubscript}{L8U}{<}{˱}
+%\DeclareTextCompositeCommand{\dotextsubscript}{L8U}{>}{˲}
+%\DeclareTextCompositeCommand{\dotextsubscript}{L8U}{o}{˳}
+%\DeclareTextCommand{\texttone}{L8U}{˴}
+%\DeclareTextCommand{\texttone}{L8U}{˵}
+%\DeclareTextCommand{\texttone}{L8U}{˶}
+%\DeclareTextCompositeCommand{\dotextsubscript}{L8U}{~}{˷}
+%\DeclareTextCommand{????}{L8U}{1}{˸}
+\DeclareTextCommand{\textopencorner}{L8U}{˹}
+%\DeclareTextCommand{\textcorner}{L8U}{˺}
+%\DeclareTextCommand{\texttone}{L8U}{˻}
+%\DeclareTextCommand{\texttone}{L8U}{˼}
+%\DeclareTextCompositeCommand{\dotextsubscript}{L8U}{??}{˽}
+%\DeclareTextCompositeCommand{\dotextsubscript}{L8U}{??}{˾}
+\DeclareTextCommand{\textsbleftarrow}{L8U}{˿}
+%\DeclareTextCompositeCommand{\dotextsubscript}{L8U}{\larrow}{˿}
+
+% declare composites to be bound to \* \: \; \! \|
+\DeclareTextCommand{\textipavari}{L8U}[1]{#1}% bound to \*
+\DeclareTextCommand{\textipavarii}{L8U}[1]{#1}% bound to \:
+\DeclareTextCommand{\textipavariii}{L8U}[1]{#1}% bound to \;
+\DeclareTextCommand{\textipavariv}{L8U}[1]{#1}% bound to \!
+
+\DeclareTextCompositeCommand{\textipavari}{L8U}{f}{ɟ}
+\DeclareTextCompositeCommand{\textipavari}{L8U}{k}{ʞ}
+\DeclareTextCompositeCommand{\textipavari}{L8U}{r}{ɹ}
+\DeclareTextCompositeCommand{\textipavari}{L8U}{t}{ʇ}
+\DeclareTextCompositeCommand{\textipavari}{L8U}{w}{ʍ}
+%
+\DeclareTextCompositeCommand{\textipavari}{L8U}{j}{ɉ}
+\DeclareTextCompositeCommand{\textipavari}{L8U}{n}{ɲ}
+\DeclareTextCompositeCommand{\textipavari}{L8U}{h}{ħ}
+\DeclareTextCompositeCommand{\textipavari}{L8U}{l}{ɬ}
+\DeclareTextCompositeCommand{\textipavari}{L8U}{z}{ɮ}
+%
+\DeclareTextCompositeCommand{\textipavari}{L8U}{\#}{}
+
+\DeclareTextCompositeCommand{\textipavarii}{L8U}{A}{ᴀ}
+\DeclareTextCompositeCommand{\textipavarii}{L8U}{B}{ʙ}
+\DeclareTextCompositeCommand{\textipavarii}{L8U}{E}{ᴇ}
+\DeclareTextCompositeCommand{\textipavarii}{L8U}{G}{}
+\DeclareTextCompositeCommand{\textipavarii}{L8U}{H}{ʜ}
+\DeclareTextCompositeCommand{\textipavarii}{L8U}{J}{ᴊ}
+\DeclareTextCompositeCommand{\textipavarii}{L8U}{L}{ʟ}
+\DeclareTextCompositeCommand{\textipavarii}{L8U}{N}{ɴ}
+\DeclareTextCompositeCommand{\textipavarii}{L8U}{R}{ʀ}
+\DeclareTextCompositeCommand{\textipavarii}{L8U}{U}{ᴜ}
+
+\DeclareTextCompositeCommand{\textipavariii}{L8U}{d}{ɖ}
+\DeclareTextCompositeCommand{\textipavariii}{L8U}{l}{ɭ}
+\DeclareTextCompositeCommand{\textipavariii}{L8U}{n}{ɳ}
+\DeclareTextCompositeCommand{\textipavariii}{L8U}{r}{ɽ}
+\DeclareTextCompositeCommand{\textipavariii}{L8U}{s}{ʂ}
+\DeclareTextCompositeCommand{\textipavariii}{L8U}{t}{ʈ}
+\DeclareTextCompositeCommand{\textipavariii}{L8U}{z}{ʐ}
+
+\DeclareTextCompositeCommand{\textipavariv}{L8U}{b}{ɓ}
+\DeclareTextCompositeCommand{\textipavariv}{L8U}{d}{ɗ}
+\DeclareTextCompositeCommand{\textipavariv}{L8U}{g}{ɠ}
+\DeclareTextCompositeCommand{\textipavariv}{L8U}{G}{ʛ}
+\DeclareTextCompositeCommand{\textipavariv}{L8U}{j}{ʄ}
+\DeclareTextCompositeCommand{\textipavariv}{L8U}{o}{ʘ}
+
+% these are the mormal \texttipa replacements
+\DeclareTextCompositeCommand{\textipavaro}{L8U}{A}{ɑ}
+\DeclareTextCompositeCommand{\textipavaro}{L8U}{B}{ß}
+\DeclareTextCompositeCommand{\textipavaro}{L8U}{C}{ɕ}
+\DeclareTextCompositeCommand{\textipavaro}{L8U}{D}{ð}
+\DeclareTextCompositeCommand{\textipavaro}{L8U}{E}{ɛ}
+\DeclareTextCompositeCommand{\textipavaro}{L8U}{F}{ɸ}
+\DeclareTextCompositeCommand{\textipavaro}{L8U}{G}{ɣ}
+\DeclareTextCompositeCommand{\textipavaro}{L8U}{H}{ɦ}
+\DeclareTextCompositeCommand{\textipavaro}{L8U}{I}{ɪ}
+\DeclareTextCompositeCommand{\textipavaro}{L8U}{J}{ʝ}
+\DeclareTextCompositeCommand{\textipavaro}{L8U}{K}{ʁ}
+\DeclareTextCompositeCommand{\textipavaro}{L8U}{L}{ʎ}
+\DeclareTextCompositeCommand{\textipavaro}{L8U}{M}{ɱ}
+\DeclareTextCompositeCommand{\textipavaro}{L8U}{N}{ŋ}
+\DeclareTextCompositeCommand{\textipavaro}{L8U}{O}{ɔ}
+\DeclareTextCompositeCommand{\textipavaro}{L8U}{P}{ʔ}
+\DeclareTextCompositeCommand{\textipavaro}{L8U}{Q}{ʕ}
+\DeclareTextCompositeCommand{\textipavaro}{L8U}{R}{ɾ}
+\DeclareTextCompositeCommand{\textipavaro}{L8U}{S}{ʃ}
+\DeclareTextCompositeCommand{\textipavaro}{L8U}{T}{θ}
+\DeclareTextCompositeCommand{\textipavaro}{L8U}{U}{ʊ}
+\DeclareTextCompositeCommand{\textipavaro}{L8U}{V}{ʋ}
+\DeclareTextCompositeCommand{\textipavaro}{L8U}{W}{ɯ}
+\DeclareTextCompositeCommand{\textipavaro}{L8U}{X}{χ}
+\DeclareTextCompositeCommand{\textipavaro}{L8U}{Y}{ʏ}
+\DeclareTextCompositeCommand{\textipavaro}{L8U}{Z}{ʒ}
+
+\DeclareTextCommand{\textipavarv}{L8U}[1]{#1}% bound to \|
+\DeclareTextCompositeCommand{\textipavarv}{L8U}{[}{\textsubbridge}
+\DeclareTextCompositeCommand{\textipavarv}{L8U}{]}{\textinvsubbridge}
+\DeclareTextCompositeCommand{\textipavarv}{L8U}{(}{\textsublhalfring}
+\DeclareTextCompositeCommand{\textipavarv}{L8U}{)}{\textsubrhalfring}
+\DeclareTextCompositeCommand{\textipavarv}{L8U}{c}{\textroundcap}
+\DeclareTextCompositeCommand{\textipavarv}{L8U}{+}{\textsubplus}
+\DeclareTextCompositeCommand{\textipavarv}{L8U}{'}{\textraising}
+\DeclareTextCompositeCommand{\textipavarv}{L8U}{`}{\textlowering}
+\DeclareTextCompositeCommand{\textipavarv}{L8U}{<}{\textadvancing}
+\DeclareTextCompositeCommand{\textipavarv}{L8U}{>}{\textretracting}
+\DeclareTextCompositeCommand{\textipavarv}{L8U}{x}{\textovercross}
+\DeclareTextCompositeCommand{\textipavarv}{L8U}{w}{\textsubw}
+\DeclareTextCompositeCommand{\textipavarv}{L8U}{m}{\textseagull}
+
+
+%
+% Phonetic Extensions Ux1D00 – Ux1D70
+% Supplement Ux1D80 – Ux1DBF
+%
+
+\DeclareTextCommand{\textsca}{L8U}{ᴀ}% U+1D00
+%\DeclareTextCommand{\textscae}{L8U}{ᴁ}% U+1D01
+%\DeclareTextCommand{\textinvscae}{L8U}{ᴂ}% U+1D02
+%\DeclareTextCommand{\textbarscb}{L8U}{ᴃ}% U+1D03
+%\DeclareTextCommand{\textscc}{L8U}{ᴄ}% U+1D04
+\DeclareTextCommand{\textscd}{L8U}{ᴅ}% U+1D05
+%\DeclareTextCommand{\textbarscd}{L8U}{ᴆ}% U+1D06
+\DeclareTextCommand{\textsce}{L8U}{ᴇ}% U+1D07
+%\DeclareTextCommand{\textrevscopene}{L8U}{ᴈ}% U+1D08
+%\DeclareTextCommand{\textinvsci}{L8U}{ᴊ}% U+1D09
+\DeclareTextCommand{\textscj}{L8U}{ᴊ}% U+1D0A
+\DeclareTextCommand{\textPUsck}{L8U}{ᴋ}% U+1D0B
+%\DeclareTextCommand{\textscbarl}{L8U}{ᴌ}% U+1D0C
+\DeclareTextCommand{\textPUscm}{L8U}{ᴍ}% U+1D0D
+%\DeclareTextCommand{\textrevscn}{L8U}{ᴎ}% U+1D0E
+%\DeclareTextCommand{\textsco}{L8U}{ᴏ}% U+1D0F
+%
+\DeclareTextCommand{\textPUscp}{L8U}{ᴘ}% U+1D18
+\DeclareTextCommand{\textPUrevscr}{L8U}{ᴙ}% U+1D19
+%
+\DeclareTextCommand{\textscu}{L8U}{ᴜ}% U+1D1C
+%
+\DeclareTextCommand{\textscv}{L8U}{ᴠ}% U+1D20
+\DeclareTextCommand{\textscw}{L8U}{w}% U+1D21
+\DeclareTextCommand{\textscz}{L8U}{z}% U+1D22
+\DeclareTextCommand{\textscezh}{L8U}{ᴣ}% U+1D23
+%
+\DeclareTextCommand{\textain}{L8U}{ᴥ}% U+1D25
+\DeclareTextCommand{\textscgamma}{L8U}{ᴦ}% U+1D26
+\DeclareTextCommand{\textsclambda}{L8U}{ᴧ}% U+1D27
+\DeclareTextCommand{\textscpi}{L8U}{ᴨ}% U+1D28
+\DeclareTextCommand{\textscrho}{L8U}{ᴩ}% U+1D29
+\DeclareTextCommand{\textscpsi}{L8U}{ᴪ}% U+1D2A
+\DeclareTextCommand{\textscel}{L8U}{ᴫ}% U+1D2B
+%
+% Ux1D2C – Ux1D6A
+\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{A}{ᴬ}
+\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{\AE}{ᴭ}
+\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{B}{ᴮ}
+\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{\texttipaB B}{ᴯ}
+\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{D}{ᴰ}
+\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{E}{ᴱ}
+%\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{\revE}{ᴲ}
+\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{G}{ᴳ}
+\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{H}{ᴴ}
+\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{I}{ᴵ}
+\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{J}{ᴶ}
+\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{K}{ᴷ}
+\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{L}{ᴸ}
+\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{M}{ᴹ}
+\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{N}{ᴺ}
+%\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{\revN}{ᴻ}
+\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{O}{ᴼ}
+\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{\OU}{ᴽ}
+\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{P}{ᴾ}
+\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{R}{ᴿ}
+\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{T}{ᵀ}
+\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{U}{ᵁ}
+\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{W}{ᵂ}
+\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{a}{ᵃ}
+\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{\textturna}{ᵄ}% ???
+\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{\alpha}{ᵅ}
+%\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{\textinvae}{ᵆ}
+\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{b}{ᵇ}
+\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{d}{ᵈ}
+\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{e}{ᵉ}
+\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{\schwa}{ᵊ}
+\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{\texteopen}{ᵋ}
+\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{\textrevepsilon}{ᵌ}
+\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{g}{ᵍ}
+%\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{???}{ᵎ}
+\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{k}{ᵏ}
+\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{m}{ᵐ}
+\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{\ng}{ᵑ}
+\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{o}{ᵒ}
+\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{\textopeno}{ᵓ}
+%\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{???}{ᵔ}
+%\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{???}{ᵕ}
+\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{p}{ᵖ}
+\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{t}{ᵗ}
+\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{u}{ᵘ}
+%\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{???}{ᵙ}
+\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{\textturnm}{ᵚ}
+\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{v}{ᵛ}
+\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{\textain}{ᵜ}
+\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{\beta}{ᵝ}
+\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{\textbeta}{ᵝ}
+\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{\gamma}{ᵞ}
+\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{\textgamma}{ᵞ}
+\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{\delta}{ᵟ}
+\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{\phi}{ᵠ}
+\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{\chi}{ᵡ}
+\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{\textchi}{ᵡ}
+%
+\DeclareTextCommand{\textiinferior}{L8U}{ᵢ}% U+1D62
+\DeclareTextCompositeCommand{\dotextsubscript}{L8U}{i}{ᵢ}
+\DeclareTextCommand{\textrinferior}{L8U}{ᵣ}% U+1D63
+\DeclareTextCompositeCommand{\dotextsubscript}{L8U}{r}{ᵣ}
+\DeclareTextCommand{\textuinferior}{L8U}{ᵤ}% U+1D64
+\DeclareTextCompositeCommand{\dotextsubscript}{L8U}{u}{ᵤ}
+\DeclareTextCommand{\textvinferior}{L8U}{ᵥ}% U+1D65
+\DeclareTextCompositeCommand{\dotextsubscript}{L8U}{v}{ᵥ}
+\DeclareTextCommand{\textbetainferior}{L8U}{ᵦ}% U+1D66
+\DeclareTextCompositeCommand{\dotextsubscript}{L8U}{\beta}{ᵦ}
+\DeclareTextCompositeCommand{\dotextsubscript}{L8U}{\textbeta}{ᵦ}
+\DeclareTextCommand{\textgammainferior}{L8U}{ᵧ}% U+1D67
+\DeclareTextCompositeCommand{\dotextsubscript}{L8U}{\gamma}{ᵧ}
+\DeclareTextCompositeCommand{\dotextsubscript}{L8U}{\textgamma}{ᵧ}
+\DeclareTextCommand{\textrhoinferior}{L8U}{ᵨ}% U+1D68
+\DeclareTextCompositeCommand{\dotextsubscript}{L8U}{\rho}{ᵨ}
+\DeclareTextCommand{\textphiinferior}{L8U}{ᵩ}% U+1D69
+\DeclareTextCompositeCommand{\dotextsubscript}{L8U}{\phi}{ᵩ}
+\DeclareTextCompositeCommand{\dotextsubscript}{L8U}{\textvarphi}{ᵩ}
+\DeclareTextCommand{\textchiinferior}{L8U}{ᵪ}% U+1D6A
+\DeclareTextCompositeCommand{\dotextsubscript}{L8U}{\chi}{ᵪ}
+\DeclareTextCompositeCommand{\dotextsubscript}{L8U}{\textchi}{ᵪ}
+%
+\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{H}{ᵸ}% cyrillic en
+%\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{\cyrn}{ᵸ}% cyrillic en
+%
+\DeclareTextCommand{\textbarsci}{L8U}{ᵻ}% U+1D7B
+\DeclareTextCommand{\textbarp}{L8U}{ᵽ}% U+1D7D
+\DeclareTextCommand{\textbarscu}{L8U}{ᵾ}% U+1D7E
+%\DeclareTextCommand{\textbarscinvomega}{L8U}{ᵿ}% U+1D7F
+%
+\DeclareTextCommand{\textlhookb}{L8U}{ᶀ}% U+1D80
+\DeclareTextCompositeCommand{\textpalhookbelow}{L8U}{b}{ᶀ}%
+\DeclareTextCommand{\textlhookd}{L8U}{ᶁ}% U+1D81
+\DeclareTextCompositeCommand{\textpalhookbelow}{L8U}{d}{ᶁ}%
+\DeclareTextCommand{\textlhookf}{L8U}{ᶂ}% U+1D82
+\DeclareTextCompositeCommand{\textpalhookbelow}{L8U}{f}{ᶂ}%
+\DeclareTextCommand{\textlhookg}{L8U}{ᶃ}% U+1D83
+\DeclareTextCompositeCommand{\textpalhookbelow}{L8U}{g}{ᶃ}%
+\DeclareTextCommand{\textlhookk}{L8U}{ᶄ}% U+1D84
+\DeclareTextCompositeCommand{\textpalhookbelow}{L8U}{k}{ᶄ}%
+\DeclareTextCommand{\textlhookl}{L8U}{ᶅ}% U+1D85
+\DeclareTextCompositeCommand{\textpalhookbelow}{L8U}{l}{ᶅ}%
+\DeclareTextCommand{\textlhookm}{L8U}{ᶆ}% U+1D86
+\DeclareTextCompositeCommand{\textpalhookbelow}{L8U}{m}{ᶆ}%
+\DeclareTextCommand{\textlhookn}{L8U}{ᶇ}% U+1D87
+\DeclareTextCompositeCommand{\textpalhookbelow}{L8U}{n}{ᶇ}%
+\DeclareTextCommand{\textPUlhookp}{L8U}{ᶈ}% U+1D88
+\DeclareTextCompositeCommand{\textpalhookbelow}{L8U}{p}{ᶈ}%
+\DeclareTextCommand{\textlhookr}{L8U}{ᶉ}% U+1D89
+\DeclareTextCompositeCommand{\textpalhookbelow}{L8U}{r}{ᶉ}%
+\DeclareTextCommand{\textlhooks}{L8U}{ᶊ}% U+1D8A
+\DeclareTextCompositeCommand{\textpalhookbelow}{L8U}{s}{ᶊ}%
+\DeclareTextCommand{\textlhookesh}{L8U}{ᶋ}% U+1D8B
+\DeclareTextCompositeCommand{\textpalhookbelow}{L8U}{\textesh}{ᶋ}%
+\DeclareTextCommand{\textlhookv}{L8U}{ᶌ}% U+1D8C
+\DeclareTextCompositeCommand{\textpalhookbelow}{L8U}{v}{ᶌ}%
+\DeclareTextCommand{\textlhookx}{L8U}{ᶍ}% U+1D8D
+\DeclareTextCompositeCommand{\textpalhookbelow}{L8U}{x}{ᶍ}%
+\DeclareTextCommand{\textlhookz}{L8U}{ᶎ}% U+1D8E
+\DeclareTextCompositeCommand{\textpalhookbelow}{L8U}{z}{ᶎ}%
+%\DeclareTextCommand{\textrhooka}{L8U}{ᶏ}% U+1D8F in tipax.sty
+\DeclareTextCommand{\textPUrhooka}{L8U}{ᶏ}% U+1D8F
+\DeclareTextCompositeCommand{\textrethookbelow}{L8U}{a}{ᶏ}%
+\DeclareTextCommand{\textrhookalpha}{L8U}{ᶐ}% U+1D90
+\DeclareTextCompositeCommand{\textrethookbelow}{L8U}{\textalpha}{ᶐ}%
+\DeclareTextCommand{\texthtrtaild}{L8U}{ᶑ}% U+1D91
+\DeclareTextCompositeCommand{\textrethookbelow}{L8U}{\texthtd}{ᶑ}%
+%\DeclareTextCommand{\textrhooke}{L8U}{ᶒ}% U+1D92 in tipax.sty
+\DeclareTextCommand{\textPUrhooke}{L8U}{ᶒ}% U+1D92
+\DeclareTextCompositeCommand{\textrethookbelow}{L8U}{e}{ᶒ}%
+%\DeclareTextCommand{\textrhookepsilon}{L8U}{ᶓ}% U+1D93
+\DeclareTextCommand{\textPUrhookepsilon}{L8U}{ᶓ}% U+1D93
+\DeclareTextCompositeCommand{\textrethookbelow}{L8U}{\textepsilon}{ᶓ}%
+\DeclareTextCompositeCommand{\textrethookbelow}{L8U}{\textrevepsilon}{ᶔ}%
+\DeclareTextCommand{\textrhookturne}{L8U}{ᶕ}% U+1D95
+\DeclareTextCompositeCommand{\textrethookbelow}{L8U}{\textreve}{ᶕ}%
+\DeclareTextCommand{\textrhooki}{L8U}{ᶖ}% U+1D96
+\DeclareTextCompositeCommand{\textrethookbelow}{L8U}{i}{ᶖ}%
+%\DeclareTextCommand{\textrhookopeno}{L8U}{ᶗ}% U+1D97
+\DeclareTextCompositeCommand{\textrethookbelow}{L8U}{\textopeno}{ᶗ}%
+\DeclareTextCommand{\textPUrhookopeno}{L8U}{ᶗ}% U+1D97
+\DeclareTextCommand{\textrhookesh}{L8U}{ᶘ}% U+1D98
+\DeclareTextCompositeCommand{\textrethookbelow}{L8U}{\textesh}{ᶘ}%
+\DeclareTextCommand{\textrhooku}{L8U}{ᶙ}% U+1D99
+\DeclareTextCompositeCommand{\textrethookbelow}{L8U}{u}{ᶙ}%
+\DeclareTextCommand{\textrhookezh}{L8U}{ᶚ}% U+1D9A
+\DeclareTextCompositeCommand{\textrethookbelow}{L8U}{\textezh}{ᶚ}%
+\DeclareTextCompositeCommand{\textrethookbelow}{L8U}{\textyogh}{ᶚ}%
+% Ux1D9B – Ux1DBF
+\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{\textturnalpha}{ᶛ}%
+\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{c}{ᶜ}%
+\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{\textctc}{ᶝ}%
+\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{\dh}{ᶞ}%
+\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{\textrevepsilon}{ᶟ}%
+\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{f}{ᶠ}%
+\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{\textbardotlessj}{ᶡ}%
+\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{g}{ᶢ}
+\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{\textturnh}{ᶣ}%
+\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{\textbari}{ᶤ}%
+\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{\iota}{ᶥ}%
+\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{\textiota}{ᶥ}%
+\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{I}{ᶦ}%
+\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{\textsci}{ᶦ}%
+\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{\textbarsci}{ᶧ}%
+%\DeclareTextCommand{\textraisevibyi}{L8U}{ᶧ}% raised swedish viby-i
+\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{\textctj}{ᶨ}%
+\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{\textrtaill}{ᶩ}%
+\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{\textlhookl}{ᶪ}%
+\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{L}{ᶫ}%
+\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{\textscl}{ᶫ}%
+\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{\textltailm}{ᶬ}%
+\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{\textturnmrleg}{ᶭ}%
+\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{\textltailn}{ᶮ}%
+\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{\textrtailn}{ᶯ}%
+\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{N}{ᶰ}%
+\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{\textscn}{ᶰ}%
+\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{\textbaro}{ᶱ}%
+\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{\phi}{ᶲ}%
+\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{\textphi}{ᶲ}%
+\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{\textrhooks}{ᶳ}%
+\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{\esh}{ᶴ}%
+\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{\textesh}{ᶴ}%
+\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{\textlhookt}{ᶵ}%
+\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{\textbaru}{ᶶ}%
+\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{\upsilon}{ᶷ}%
+\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{\textupsilon}{ᶷ}%
+\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{\textscupsilon}{ᶷ}%
+\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{U}{ᶸ}%
+\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{\textscu}{ᶸ}%
+\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{\textscriptv}{ᶹ}%
+\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{\textturnv}{ᶺ}%
+\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{z}{ᶻ}%
+\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{\textrtailz}{ᶼ}%
+\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{\textctz}{ᶽ}%
+\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{\schwa}{ᶾ}%
+\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{\textschwa}{ᶾ}%
+\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{\theta}{ᶿ}%
+\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{\texttheta}{ᶿ}%
+
+% arrows
+\DeclareTextCommand{\textglobrise}{L8U}{↗}
+\DeclareTextCommand{\textglobfall}{L8U}{↘}
+
+
+\fi % end of \ifipaxmp
+
+\iflatEXTxmp
+
+%
+% Latin Extended Additional Ux1E00 – Ux1EFF
+%
+
+\DeclareTextCompositeCommand{\textsubring}{L8U}{A}{Ḁ}% U+1E00
+\DeclareTextCompositeCommand{\textsubring}{L8U}{a}{ḁ}% U+1E01
+\DeclareTextCompositeCommand{\.}{L8U}{B}{Ḃ}% U+1E02
+\DeclareTextCompositeCommand{\.}{L8U}{b}{ḃ}% U+1E03
+\DeclareTextCompositeCommand{\d}{L8U}{B}{Ḅ}% U+1E04
+\DeclareTextCompositeCommand{\d}{L8U}{b}{ḅ}% U+1E05
+\DeclareTextCompositeCommand{\b}{L8U}{B}{Ḇ}% U+1E06
+\DeclareTextCompositeCommand{\b}{L8U}{b}{ḇ}% U+1E07
+\DeclareTextCompositeCommand{\'}{L8U}{\c C}{Ḉ}% U+1E08
+\DeclareTextCompositeCommand{\'}{L8U}{\c{C}}{Ḉ}% U+1E08
+\DeclareTextCompositeCommand{\c}{L8U}{\'C}{Ḉ}% U+1E08
+\DeclareTextCompositeCommand{\'}{L8U}{\c c}{ḉ}% U+1E09
+\DeclareTextCompositeCommand{\'}{L8U}{\c{c}}{ḉ}% U+1E09
+\DeclareTextCompositeCommand{\c}{L8U}{\'c}{ḉ}% U+1E09
+%
+\DeclareTextCompositeCommand{\.}{L8U}{D}{Ḋ}% U+1E0A
+\DeclareTextCompositeCommand{\.}{L8U}{d}{ḋ}% U+1E0B
+\DeclareTextCompositeCommand{\d}{L8U}{D}{Ḍ}% U+1E0C
+\DeclareTextCompositeCommand{\d}{L8U}{d}{ḍ}% U+1E0D
+\DeclareTextCompositeCommand{\b}{L8U}{D}{Ḏ}% U+1E0E
+\DeclareTextCompositeCommand{\b}{L8U}{d}{ḏ}% U+1E0F
+\DeclareTextCompositeCommand{\c}{L8U}{D}{Ḑ}% U+1E10
+\DeclareTextCompositeCommand{\c}{L8U}{d}{ḑ}% U+1E11
+\DeclareTextCompositeCommand{\textsubcircum}{L8U}{D}{Ḓ}% U+1E12
+\DeclareTextCompositeCommand{\textsubcircum}{L8U}{d}{ḓ}% U+1E13
+\DeclareTextCompositeCommand{\textgravemacron}{L8U}{E}{Ḕ}% U+1E14
+\DeclareTextCompositeCommand{\textgravemacron}{L8U}{e}{ḕ}% U+1E15
+\DeclareTextCompositeCommand{\textacutemacron}{L8U}{E}{Ḗ}% U+1E16
+\DeclareTextCompositeCommand{\textacutemacron}{L8U}{e}{ḗ}% U+1E17
+\DeclareTextCompositeCommand{\textsubcircum}{L8U}{E}{Ḙ}% U+1E18
+\DeclareTextCompositeCommand{\textsubcircum}{L8U}{e}{ḙ}% U+1E19
+\DeclareTextCompositeCommand{\textsubtilde}{L8U}{E}{Ḛ}% U+1E1A
+\DeclareTextCompositeCommand{\textsubtilde}{L8U}{e}{ḛ}% U+1E1B
+\DeclareTextCompositeCommand{\u}{L8U}{\c E}{Ḝ}% U+1E1C
+\DeclareTextCompositeCommand{\u}{L8U}{\c{E}}{Ḝ}% U+1E1C
+\DeclareTextCompositeCommand{\c}{L8U}{\u E}{Ḝ}% U+1E1C
+\DeclareTextCompositeCommand{\c}{L8U}{\u{E}}{Ḝ}% U+1E1C
+\DeclareTextCompositeCommand{\u}{L8U}{\c e}{ḝ}% U+1E1D
+\DeclareTextCompositeCommand{\u}{L8U}{\c{e}}{ḝ}% U+1E1D
+\DeclareTextCompositeCommand{\c}{L8U}{\u e}{ḝ}% U+1E1D
+\DeclareTextCompositeCommand{\c}{L8U}{\u{e}}{ḝ}% U+1E1D
+%
+\DeclareTextCompositeCommand{\.}{L8U}{F}{Ḟ}% U+1E1E
+\DeclareTextCompositeCommand{\.}{L8U}{f}{ḟ}% U+1E1F
+% Ux1E20
+\DeclareTextCompositeCommand{\=}{L8U}{G}{Ḡ}% U+1E20
+\DeclareTextCompositeCommand{\=}{L8U}{g}{ḡ}% U+1E21
+\DeclareTextCompositeCommand{\.}{L8U}{H}{Ḣ}% U+1E22
+\DeclareTextCompositeCommand{\.}{L8U}{h}{ḣ}% U+1E23
+\DeclareTextCompositeCommand{\d}{L8U}{H}{Ḥ}% U+1E24
+\DeclareTextCompositeCommand{\d}{L8U}{h}{ḥ}% U+1E25
+\DeclareTextCompositeCommand{\"}{L8U}{H}{Ḧ}% U+1E26
+\DeclareTextCompositeCommand{\"}{L8U}{h}{ḧ}% U+1E27
+\DeclareTextCompositeCommand{\c}{L8U}{H}{Ḩ}% U+1E28
+\DeclareTextCompositeCommand{\c}{L8U}{h}{ḩ}% U+1E29
+\DeclareTextCompositeCommand{\textsubbreve}{L8U}{H}{Ḫ}% U+1E2A
+\DeclareTextCompositeCommand{\textsubbreve}{L8U}{h}{ḫ}% U+1E2B
+\DeclareTextCompositeCommand{\textsubtilde}{L8U}{I}{Ḭ}% U+1E2C
+\DeclareTextCompositeCommand{\textsubtilde}{L8U}{i}{ḭ}% U+1E2D
+\DeclareTextCompositeCommand{\'}{L8U}{\"I}{Ḯ}% U+1E2E
+\DeclareTextCompositeCommand{\'}{L8U}{\"i}{ḯ}% U+1E2F
+%
+\DeclareTextCompositeCommand{\'}{L8U}{K}{Ḱ}% U+1E30
+\DeclareTextCompositeCommand{\'}{L8U}{k}{ḱ}% U+1E31
+\DeclareTextCompositeCommand{\d}{L8U}{K}{Ḳ}% U+1E32
+\DeclareTextCompositeCommand{\d}{L8U}{k}{ḳ}% U+1E33
+\DeclareTextCompositeCommand{\b}{L8U}{K}{Ḵ}% U+1E34
+\DeclareTextCompositeCommand{\b}{L8U}{k}{ḵ}% U+1E35
+\DeclareTextCompositeCommand{\d}{L8U}{L}{Ḷ}% U+1E36
+\DeclareTextCompositeCommand{\d}{L8U}{l}{ḷ}% U+1E37
+\DeclareTextCompositeCommand{\d}{L8U}{\=L}{Ḹ}% U+1E38
+\DeclareTextCompositeCommand{\=}{L8U}{\d L}{Ḹ}% U+1E38
+\DeclareTextCompositeCommand{\=}{L8U}{\d{L}}{Ḹ}% U+1E38
+\DeclareTextCompositeCommand{\d}{L8U}{\=l}{ḹ}% U+1E39
+\DeclareTextCompositeCommand{\=}{L8U}{\d l}{ḹ}% U+1E39
+\DeclareTextCompositeCommand{\=}{L8U}{\d{l}}{ḹ}% U+1E39
+%
+\DeclareTextCompositeCommand{\b}{L8U}{L}{Ḻ}% U+1E3A
+\DeclareTextCompositeCommand{\b}{L8U}{l}{ḻ}% U+1E3B
+\DeclareTextCompositeCommand{\textsubcircum}{L8U}{L}{Ḽ}% U+1E3C
+\DeclareTextCompositeCommand{\textsubcircum}{L8U}{l}{ḽ}% U+1E3D
+\DeclareTextCompositeCommand{\'}{L8U}{M}{Ḿ}% U+1E3E
+\DeclareTextCompositeCommand{\'}{L8U}{m}{ḿ}% U+1E3F
+% Ux1E40
+\DeclareTextCompositeCommand{\.}{L8U}{M}{Ṁ}% U+1E40
+\DeclareTextCompositeCommand{\.}{L8U}{m}{ṁ}% U+1E41
+\DeclareTextCompositeCommand{\d}{L8U}{M}{Ṃ}% U+1E42
+\DeclareTextCompositeCommand{\d}{L8U}{m}{ṃ}% U+1E43
+\DeclareTextCompositeCommand{\.}{L8U}{N}{Ṅ}% U+1E44
+\DeclareTextCompositeCommand{\.}{L8U}{n}{ṅ}% U+1E45
+\DeclareTextCompositeCommand{\d}{L8U}{N}{Ṇ}% U+1E46
+\DeclareTextCompositeCommand{\d}{L8U}{n}{ṇ}% U+1E47
+\DeclareTextCompositeCommand{\b}{L8U}{N}{Ṉ}% U+1E48
+\DeclareTextCompositeCommand{\b}{L8U}{n}{ṉ}% U+1E49
+\DeclareTextCompositeCommand{\textsubcircum}{L8U}{N}{Ṋ}% U+1E4A
+\DeclareTextCompositeCommand{\textsubcircum}{L8U}{n}{ṋ}% U+1E4B
+\DeclareTextCompositeCommand{\'}{L8U}{\~O}{Ṍ}% U+1E4C
+\DeclareTextCompositeCommand{\'}{L8U}{\~o}{ṍ}% U+1E4D
+\DeclareTextCompositeCommand{\"}{L8U}{\~O}{Ṏ}% U+1E4E
+\DeclareTextCompositeCommand{\"}{L8U}{\~o}{ṏ}% U+1E4F
+%
+\DeclareTextCompositeCommand{\textgravemacron}{L8U}{O}{Ṑ}% U+1E50
+\DeclareTextCompositeCommand{\textgravemacron}{L8U}{o}{ṑ}% U+1E51
+\DeclareTextCompositeCommand{\textacutemacron}{L8U}{O}{Ṓ}% U+1E52
+\DeclareTextCompositeCommand{\textacutemacron}{L8U}{o}{ṓ}% U+1E53
+\DeclareTextCompositeCommand{\'}{L8U}{P}{Ṕ}% U+1E54
+\DeclareTextCompositeCommand{\'}{L8U}{p}{ṕ}% U+1E55
+\DeclareTextCompositeCommand{\.}{L8U}{P}{Ṗ}% U+1E56
+\DeclareTextCompositeCommand{\.}{L8U}{p}{ṗ}% U+1E57
+\DeclareTextCompositeCommand{\.}{L8U}{R}{Ṙ}% U+1E58
+\DeclareTextCompositeCommand{\.}{L8U}{r}{ṙ}% U+1E59
+\DeclareTextCompositeCommand{\d}{L8U}{R}{Ṛ}% U+1E5A
+\DeclareTextCompositeCommand{\d}{L8U}{r}{ṛ}% U+1E5B
+\DeclareTextCompositeCommand{\d}{L8U}{\=R}{Ṝ}% U+1E5C
+\DeclareTextCompositeCommand{\=}{L8U}{\d R}{Ṝ}% U+1E5C
+\DeclareTextCompositeCommand{\=}{L8U}{\d{R}}{Ṝ}% U+1E5C
+\DeclareTextCompositeCommand{\d}{L8U}{\=r}{ṝ}% U+1E5D
+\DeclareTextCompositeCommand{\=}{L8U}{\d r}{ṝ}% U+1E5D
+\DeclareTextCompositeCommand{\=}{L8U}{\d{r}}{ṝ}% U+1E5D
+%%
+\DeclareTextCompositeCommand{\b}{L8U}{R}{Ṟ}% U+1E5E
+\DeclareTextCompositeCommand{\b}{L8U}{r}{ṟ}% U+1E5F
+% Ux1E60
+\DeclareTextCompositeCommand{\.}{L8U}{S}{Ṡ}% U+1E60
+\DeclareTextCompositeCommand{\.}{L8U}{s}{ṡ}% U+1E61
+\DeclareTextCompositeCommand{\d}{L8U}{S}{Ṣ}% U+1E62
+\DeclareTextCompositeCommand{\d}{L8U}{s}{ṣ}% U+1E63
+\DeclareTextCompositeCommand{\.}{L8U}{\'S}{Ṥ}% U+1E64
+\DeclareTextCompositeCommand{\.}{L8U}{\'s}{ṥ}% U+1E65
+\DeclareTextCompositeCommand{\.}{L8U}{\v S}{Ṧ}% U+1E66
+\DeclareTextCompositeCommand{\.}{L8U}{\v{S}}{Ṧ}% U+1E66
+\DeclareTextCompositeCommand{\.}{L8U}{\v s}{ṧ}% U+1E67
+\DeclareTextCompositeCommand{\.}{L8U}{\v{s}}{ṧ}% U+1E67
+\DeclareTextCompositeCommand{\d}{L8U}{\.S}{Ṩ}% U+1E68
+\DeclareTextCompositeCommand{\.}{L8U}{\d S}{Ṩ}% U+1E68
+\DeclareTextCompositeCommand{\.}{L8U}{\d{S}}{Ṩ}% U+1E68
+\DeclareTextCompositeCommand{\d}{L8U}{\.s}{ṩ}% U+1E69
+\DeclareTextCompositeCommand{\.}{L8U}{\d s}{ṩ}% U+1E69
+\DeclareTextCompositeCommand{\.}{L8U}{\d{s}}{ṩ}% U+1E69
+%
+\DeclareTextCompositeCommand{\.}{L8U}{T}{Ṫ}% U+1E6A
+\DeclareTextCompositeCommand{\.}{L8U}{t}{ṫ}% U+1E6B
+\DeclareTextCompositeCommand{\d}{L8U}{T}{Ṭ}% U+1E6C
+\DeclareTextCompositeCommand{\d}{L8U}{t}{ṭ}% U+1E6D
+\DeclareTextCompositeCommand{\b}{L8U}{T}{Ṯ}% U+1E6E
+\DeclareTextCompositeCommand{\b}{L8U}{t}{ṯ}% U+1E6F
+\DeclareTextCompositeCommand{\textsubcircum}{L8U}{T}{Ṱ}% U+1E70
+\DeclareTextCompositeCommand{\textsubcircum}{L8U}{t}{ṱ}% U+1E71
+\DeclareTextCompositeCommand{\textsubumlaut}{L8U}{U}{Ṳ}% U+1E72
+\DeclareTextCompositeCommand{\textsubumlaut}{L8U}{u}{ṳ}% U+1E73
+\DeclareTextCompositeCommand{\textsubtilde}{L8U}{U}{Ṵ}% U+1E74
+\DeclareTextCompositeCommand{\textsubtilde}{L8U}{u}{ṵ}% U+1E75
+\DeclareTextCompositeCommand{\textsubcircum}{L8U}{U}{Ṷ}% U+1E76
+\DeclareTextCompositeCommand{\textsubcircum}{L8U}{u}{ṷ}% U+1E77
+\DeclareTextCompositeCommand{\'}{L8U}{\~U}{Ṹ}% U+1E78
+\DeclareTextCompositeCommand{\'}{L8U}{\~u}{ṹ}% U+1E79
+\DeclareTextCompositeCommand{\"}{L8U}{\~U}{Ṻ}% U+1E7A
+\DeclareTextCompositeCommand{\"}{L8U}{\~u}{ṻ}% U+1E7B
+%
+\DeclareTextCompositeCommand{\~}{L8U}{V}{Ṽ}% U+1E7C
+\DeclareTextCompositeCommand{\~}{L8U}{v}{ṽ}% U+1E7D
+\DeclareTextCompositeCommand{\d}{L8U}{V}{Ṿ}% U+1E7E
+\DeclareTextCompositeCommand{\d}{L8U}{v}{ṿ}% U+1E7F
+% Ux1E80
+\DeclareTextCompositeCommand{\`}{L8U}{W}{Ẁ}% U+1E80
+\DeclareTextCompositeCommand{\`}{L8U}{w}{ẁ}% U+1E81
+\DeclareTextCompositeCommand{\'}{L8U}{W}{Ẃ}% U+1E82
+\DeclareTextCompositeCommand{\'}{L8U}{w}{ẃ}% U+1E83
+\DeclareTextCompositeCommand{\"}{L8U}{W}{Ẅ}% U+1E84
+\DeclareTextCompositeCommand{\"}{L8U}{w}{ẅ}% U+1E85
+\DeclareTextCompositeCommand{\.}{L8U}{W}{Ẇ}% U+1E86
+\DeclareTextCompositeCommand{\.}{L8U}{w}{ẇ}% U+1E87
+\DeclareTextCompositeCommand{\d}{L8U}{W}{Ẉ}% U+1E88
+\DeclareTextCompositeCommand{\d}{L8U}{w}{ẉ}% U+1E89
+\DeclareTextCompositeCommand{\.}{L8U}{X}{Ẋ}% U+1E8A
+\DeclareTextCompositeCommand{\.}{L8U}{x}{ẋ}% U+1E8B
+\DeclareTextCompositeCommand{\"}{L8U}{X}{Ẍ}% U+1E8C
+\DeclareTextCompositeCommand{\"}{L8U}{x}{ẍ}% U+1E8D
+\DeclareTextCompositeCommand{\.}{L8U}{Y}{Ẏ}% U+1E8E
+\DeclareTextCompositeCommand{\.}{L8U}{y}{ẏ}% U+1E8F
+\DeclareTextCompositeCommand{\^}{L8U}{Z}{Ẑ}% U+1E90
+\DeclareTextCompositeCommand{\^}{L8U}{z}{ẑ}% U+1E91
+\DeclareTextCompositeCommand{\d}{L8U}{Z}{Ẓ}% U+1E92
+\DeclareTextCompositeCommand{\d}{L8U}{z}{ẓ}% U+1E93
+\DeclareTextCompositeCommand{\b}{L8U}{Z}{Ẕ}% U+1E94
+\DeclareTextCompositeCommand{\b}{L8U}{z}{ẕ}% U+1E95
+\DeclareTextCompositeCommand{\b}{L8U}{h}{ẖ}% U+1E96
+\DeclareTextCompositeCommand{\"}{L8U}{t}{ẗ}% U+1E97
+\DeclareTextCompositeCommand{\r}{L8U}{w}{ẘ}% U+1E98
+\DeclareTextCompositeCommand{\r}{L8U}{y}{ẙ}% U+1E99
+%\DeclareTextCompositeCommand{\smallhalfring}{L8U}{a}{ẚ}% U+1E9A
+\DeclareTextCompositeCommand{\.}{L8U}{\textlongs}{ẛ}% U+1E9B
+%\DeclareTextCompositeCommand{\texttipaB}{L8U}{\textlongs}{ẜ}% U+1E9C
+\DeclareTextCompositeCommand{\texttipaB}{L8U}{\textlongs}{ẝ}% U+1E9D
+
+\fi % end of \iflatEXTxmp
+
+\ifvnmxmp
+ \latEXTxmptrue
+ \DeclareTextCommand{\h}{L8U}[1]{#1̉}% Vietnamese hook above
+ \DeclareTextCommand{\abreve}{L8U}{ă}% U+0103
+ \DeclareTextCommand{\acircumflex}{L8U}{â}% U+00E2
+ \DeclareTextCommand{\ecircumflex}{L8U}{ê}% U+00EA
+ \DeclareTextCommand{\ocircumflex}{L8U}{ô}% U+00F4
+ \DeclareTextCommand{\ohorn}{L8U}{ơ}% U+01A1
+ \DeclareTextCommand{\uhorn}{L8U}{ư}% U+01B0
+ \DeclareTextCommand{\ABREVE}{L8U}{Ă}% U+0102
+ \DeclareTextCommand{\ACIRCUMFLEX}{L8U}{Â}% U+00C2
+ \DeclareTextCommand{\ECIRCUMFLEX}{L8U}{Ê}% U+00CA
+ \DeclareTextCommand{\OCIRCUMFLEX}{L8U}{Ô}% U+00D4
+ \DeclareTextCommand{\OHORN}{L8U}{Ơ}% U+01A0
+ \DeclareTextCommand{\UHORN}{L8U}{Ư}% U+01AF
+\fi
+
+\iflatEXTxmp
+
+%
+% Ux1EA0
+\DeclareTextCompositeCommand{\d}{L8U}{A}{Ạ}% U+1EA0
+\DeclareTextCompositeCommand{\d}{L8U}{a}{ạ}% U+1EA1
+%\DeclareTextCompositeCommand{\texttipam}{L8U}{\u A}{Ả}% U+1EA2
+%\DeclareTextCompositeCommand{\texttipam}{L8U}{\u{A}}{Ả}% U+1EA2
+%\DeclareTextCompositeCommand{\texttipam}{L8U}{\u a}{ả}% U+1EA3
+%\DeclareTextCompositeCommand{\texttipam}{L8U}{\u{a}}{ả}% U+1EA3
+\DeclareTextCompositeCommand{\'}{L8U}{\^A}{Ấ}% U+1EA4
+\DeclareTextCompositeCommand{\'}{L8U}{\^a}{ấ}% U+1EA5
+\DeclareTextCompositeCommand{\`}{L8U}{\^A}{Ấ}% U+1EA6
+\DeclareTextCompositeCommand{\`}{L8U}{\^a}{ấ}% U+1EA7
+%\DeclareTextCompositeCommand{\texttipam}{L8U}{\^A}{Ẩ}% U+1EA8
+%\DeclareTextCompositeCommand{\texttipam}{L8U}{\^a}{ẩ}% U+1EA9
+\DeclareTextCompositeCommand{\~}{L8U}{\^A}{Ẫ}% U+1EAA
+\DeclareTextCompositeCommand{\~}{L8U}{\^a}{ẫ}% U+1EAB
+\DeclareTextCompositeCommand{\d}{L8U}{\^A}{Ậ}% U+1EAC
+\DeclareTextCompositeCommand{\^}{L8U}{\d A}{Ậ}% U+1EAC
+\DeclareTextCompositeCommand{\^}{L8U}{\d{A}}{Ậ}% U+1EAC
+\DeclareTextCompositeCommand{\d}{L8U}{\^a}{ậ}% U+1EAD
+\DeclareTextCompositeCommand{\^}{L8U}{\d a}{ậ}% U+1EAD
+\DeclareTextCompositeCommand{\^}{L8U}{\d{a}}{Ắ}% U+1EAD
+\DeclareTextCompositeCommand{\'}{L8U}{\u A}{Ắ}% U+1EAE
+\DeclareTextCompositeCommand{\'}{L8U}{\u{A}}{Ắ}% U+1EAE
+\DeclareTextCompositeCommand{\'}{L8U}{\u a}{ắ}% U+1EAF
+\DeclareTextCompositeCommand{\'}{L8U}{\u{a}}{ắ}% U+1EAF
+%
+\DeclareTextCompositeCommand{\`}{L8U}{\u A}{Ằ}% U+1EB0
+\DeclareTextCompositeCommand{\`}{L8U}{\u{A}}{Ằ}% U+1EB0
+\DeclareTextCompositeCommand{\`}{L8U}{\u a}{ằ}% U+1EB1
+\DeclareTextCompositeCommand{\`}{L8U}{\u{a}}{ằ}% U+1EB1
+%\DeclareTextCompositeCommand{\texttipam}{L8U}{\u A}{Ẳ}% U+1EB2
+%\DeclareTextCompositeCommand{\texttipam}{L8U}{\u A}{ẳ}% U+1EB3
+\DeclareTextCompositeCommand{\~}{L8U}{\u A}{Ẵ}% U+1EB4
+\DeclareTextCompositeCommand{\~}{L8U}{\u{A}}{Ẵ}% U+1EB4
+\DeclareTextCompositeCommand{\~}{L8U}{\u a}{ẵ}% U+1EB5
+\DeclareTextCompositeCommand{\~}{L8U}{\u{a}}{ẵ}% U+1EB5
+\DeclareTextCompositeCommand{\d}{L8U}{\u A}{Ặ}% U+1EB6
+\DeclareTextCompositeCommand{\d}{L8U}{\u{A}}{Ặ}% U+1EB6
+\DeclareTextCompositeCommand{\u}{L8U}{\d A}{Ặ}% U+1EB6
+\DeclareTextCompositeCommand{\u}{L8U}{\d{A}}{Ặ}% U+1EB6
+\DeclareTextCompositeCommand{\d}{L8U}{\u a}{ặ}% U+1EB7
+\DeclareTextCompositeCommand{\d}{L8U}{\u{a}}{ặ}% U+1EB7
+\DeclareTextCompositeCommand{\u}{L8U}{\d a}{ặ}% U+1EB7
+\DeclareTextCompositeCommand{\u}{L8U}{\d{a}}{ặ}% U+1EB7
+\ifvnmxmp
+ %\DeclareTextCompositeCommand{\`}{L8U}{A}{À}% U+00C0
+ %\DeclareTextCompositeCommand{\'}{L8U}{A}{Á}% U+00C1
+ %\DeclareTextCompositeCommand{\~}{L8U}{A}{Ã}% U+00C3
+ %\DeclareTextCompositeCommand{\d}{L8U}{A}{Ạ}% U+1EA0
+ \DeclareTextCompositeCommand{\h}{L8U}{A}{Ả}% U+1EA2
+ \DeclareTextCompositeCommand{\'}{L8U}{\ACIRCUMFLEX}{Ấ}% U+1EA4
+ \DeclareTextCompositeCommand{\`}{L8U}{\ACIRCUMFLEX}{Ầ}% U+1EA6
+ \DeclareTextCompositeCommand{\h}{L8U}{\ACIRCUMFLEX}{Ẩ}% U+1EA8
+ \DeclareTextCompositeCommand{\~}{L8U}{\ACIRCUMFLEX}{Ẫ}% U+1EAA
+ \DeclareTextCompositeCommand{\d}{L8U}{\ACIRCUMFLEX}{Ậ}% U+1EAC
+ \DeclareTextCompositeCommand{\'}{L8U}{\ABREVE}{Ắ}% U+1EAE
+ \DeclareTextCompositeCommand{\`}{L8U}{\ABREVE}{Ằ}% U+1EB0
+ \DeclareTextCompositeCommand{\h}{L8U}{\ABREVE}{Ẳ}% U+1EB2
+ \DeclareTextCompositeCommand{\~}{L8U}{\ABREVE}{Ẵ}% U+1EB4
+ \DeclareTextCompositeCommand{\d}{L8U}{\ABREVE}{Ặ}% U+1EB6
+% lowercase
+ %\DeclareTextCompositeCommand{\`}{L8U}{a}{à}% U+00E0
+ %\DeclareTextCompositeCommand{\'}{L8U}{a}{á}% U+00E1
+ %\DeclareTextCompositeCommand{\~}{L8U}{a}{ã}% U+00E3
+ %\DeclareTextCompositeCommand{\d}{L8U}{a}{ạ}% U+1EA1
+ \DeclareTextCompositeCommand{\h}{L8U}{a}{ả}% U+1EA3
+ \DeclareTextCompositeCommand{\'}{L8U}{\acircumflex}{ấ}% U+1EA5
+ \DeclareTextCompositeCommand{\`}{L8U}{\acircumflex}{ầ}% U+1EA7
+ \DeclareTextCompositeCommand{\h}{L8U}{\acircumflex}{ẩ}% U+1EA9
+ \DeclareTextCompositeCommand{\~}{L8U}{\acircumflex}{ẫ}% U+1EAB
+ \DeclareTextCompositeCommand{\d}{L8U}{\acircumflex}{ậ}% U+1EAD
+ \DeclareTextCompositeCommand{\'}{L8U}{\abreve}{ắ}% U+1EAF
+ \DeclareTextCompositeCommand{\`}{L8U}{\abreve}{ằ}% U+1EB1
+ \DeclareTextCompositeCommand{\h}{L8U}{\abreve}{ẳ}% U+1EB3
+ \DeclareTextCompositeCommand{\~}{L8U}{\abreve}{ẵ}% U+1EB5
+ \DeclareTextCompositeCommand{\d}{L8U}{\abreve}{ặ}% U+1EB7
+\fi
+\DeclareTextCompositeCommand{\d}{L8U}{E}{Ẹ}% U+1EB8
+\DeclareTextCompositeCommand{\d}{L8U}{e}{ẹ}% U+1EB9
+%\DeclareTextCompositeCommand{\texttipam}{L8U}{E}{Ẻ}% U+1EBA
+%\DeclareTextCompositeCommand{\texttipam}{L8U}{e}{ẻ}% U+1EBB
+\DeclareTextCompositeCommand{\~}{L8U}{E}{Ẽ}% U+1EBC
+\DeclareTextCompositeCommand{\~}{L8U}{e}{ẽ}% U+1EBD
+\DeclareTextCompositeCommand{\'}{L8U}{\^E}{Ế}% U+1EBE
+\DeclareTextCompositeCommand{\'}{L8U}{\^e}{ế}% U+1EBF
+% Ux1EC0
+\DeclareTextCompositeCommand{\`}{L8U}{\^E}{Ề}% U+1EC0
+\DeclareTextCompositeCommand{\`}{L8U}{\^e}{ề}% U+1EC1
+%\DeclareTextCompositeCommand{\texttipam}{L8U}{\^E}{Ể}% U+1EC2
+%\DeclareTextCompositeCommand{\texttipam}{L8U}{\^e}{ể}% U+1EC3
+\DeclareTextCompositeCommand{\~}{L8U}{\^E}{Ễ}% U+1EC4
+\DeclareTextCompositeCommand{\~}{L8U}{\^e}{ễ}% U+1EC5
+\DeclareTextCompositeCommand{\d}{L8U}{\^E}{Ệ}% U+1EC6
+\DeclareTextCompositeCommand{\^}{L8U}{\d E}{Ệ}% U+1EC6
+\DeclareTextCompositeCommand{\^}{L8U}{\d{E}}{Ệ}% U+1EC6
+\DeclareTextCompositeCommand{\d}{L8U}{\^e}{ệ}% U+1EC7
+\DeclareTextCompositeCommand{\^}{L8U}{\d e}{ệ}% U+1EC7
+\DeclareTextCompositeCommand{\^}{L8U}{\d{e}}{ệ}% U+1EC7
+\ifvnmxmp
+ %\DeclareTextCompositeCommand{\`}{L8U}{E}{È}% U+00C8
+ %\DeclareTextCompositeCommand{\'}{L8U}{E}{É}% U+00C9
+ %\DeclareTextCompositeCommand{\d}{L8U}{E}{Ẹ}% U+1EB8
+ \DeclareTextCompositeCommand{\h}{L8U}{E}{Ẻ}% U+1EBA
+ %\DeclareTextCompositeCommand{\~}{L8U}{E}{Ẽ}% U+1EBC
+ \DeclareTextCompositeCommand{\'}{L8U}{\ECIRCUMFLEX}{Ế}% U+1EBE
+ \DeclareTextCompositeCommand{\`}{L8U}{\ECIRCUMFLEX}{Ề}% U+1EC0
+ \DeclareTextCompositeCommand{\h}{L8U}{\ECIRCUMFLEX}{Ể}% U+1EC2
+ \DeclareTextCompositeCommand{\~}{L8U}{\ECIRCUMFLEX}{Ễ}% U+1EC4
+ \DeclareTextCompositeCommand{\d}{L8U}{\ECIRCUMFLEX}{Ệ}% U+1EC6
+% lowercase
+ %\DeclareTextCompositeCommand{\`}{L8U}{e}{è}% U+00E8
+ %\DeclareTextCompositeCommand{\'}{L8U}{e}{é}% U+00E9
+ %\DeclareTextCompositeCommand{\d}{L8U}{e}{ẹ}% U+1EB9
+ \DeclareTextCompositeCommand{\h}{L8U}{e}{ẻ}% U+1EBB
+ %\DeclareTextCompositeCommand{\~}{L8U}{e}{ẽ}% U+1EBD
+ \DeclareTextCompositeCommand{\'}{L8U}{\ecircumflex}{ế}% U+1EBF
+ \DeclareTextCompositeCommand{\`}{L8U}{\ecircumflex}{ề}% U+1EC1
+ \DeclareTextCompositeCommand{\h}{L8U}{\ecircumflex}{ể}% U+1EC3
+ \DeclareTextCompositeCommand{\~}{L8U}{\ecircumflex}{ễ}% U+1EC5
+ \DeclareTextCompositeCommand{\d}{L8U}{\ecircumflex}{ệ}% U+1EC7
+\fi
+%\DeclareTextCompositeCommand{\texttipam}{L8U}{I}{Ỉ}% U+1EC8
+%\DeclareTextCompositeCommand{\texttipam}{L8U}{i}{ỉ}% U+1EC9
+%\DeclareTextCompositeCommand{\texttipam}{L8U}{\i}{ỉ}% U+1EC9
+\DeclareTextCompositeCommand{\d}{L8U}{I}{Ị}% U+1ECA
+\DeclareTextCompositeCommand{\d}{L8U}{i}{ị}% U+1ECB
+\ifvnmxmp
+ %\DeclareTextCompositeCommand{\`}{L8U}{I}{Ì}% U+00CC
+ %\DeclareTextCompositeCommand{\'}{L8U}{I}{Í}% U+00CD
+ %\DeclareTextCompositeCommand{\~}{L8U}{I}{Ĩ}% U+0128
+ \DeclareTextCompositeCommand{\h}{L8U}{I}{Ỉ}% U+1EC8
+ %\DeclareTextCompositeCommand{\d}{L8U}{I}{Ị}% U+1ECA
+% lowercase
+ %\DeclareTextCompositeCommand{\`}{L8U}{i}{ì}% U+00EC
+ %\DeclareTextCompositeCommand{\'}{L8U}{i}{í}% U+00ED
+ %\DeclareTextCompositeCommand{\~}{L8U}{i}{ĩ}% U+0129
+ \DeclareTextCompositeCommand{\h}{L8U}{i}{ỉ}% U+1EC9
+ \DeclareTextCompositeCommand{\h}{L8U}{\i}{ỉ}% U+1EC9
+ %\DeclareTextCompositeCommand{\d}{L8U}{i}{ị}% U+1ECB
+\fi
+\DeclareTextCompositeCommand{\d}{L8U}{O}{Ọ}% U+1ECC
+\DeclareTextCompositeCommand{\d}{L8U}{o}{ọ}% U+1ECD
+%\DeclareTextCompositeCommand{\texttipam}{L8U}{O}{Ỏ}% U+1ECE
+%\DeclareTextCompositeCommand{\texttipam}{L8U}{o}{ỏ}% U+1ECF
+%
+\DeclareTextCompositeCommand{\'}{L8U}{\^O}{Ố}% U+1ED0
+\DeclareTextCompositeCommand{\'}{L8U}{\^o}{ố}% U+1ED1
+\DeclareTextCompositeCommand{\`}{L8U}{\^O}{Ồ}% U+1ED2
+\DeclareTextCompositeCommand{\`}{L8U}{\^o}{ồ}% U+1ED3
+%\DeclareTextCompositeCommand{\texttipam}{L8U}{\^O}{Ổ}% U+1ED4
+%\DeclareTextCompositeCommand{\texttipam}{L8U}{\^o}{ổ}% U+1ED5
+\DeclareTextCompositeCommand{\~}{L8U}{\^O}{Ỗ}% U+1ED6
+\DeclareTextCompositeCommand{\~}{L8U}{\^o}{ỗ}% U+1ED7
+\DeclareTextCompositeCommand{\d}{L8U}{\^O}{Ộ}% U+1ED8
+\DeclareTextCompositeCommand{\^}{L8U}{\d O}{Ộ}% U+1ED8
+\DeclareTextCompositeCommand{\^}{L8U}{\d{O}}{Ộ}% U+1ED8
+\DeclareTextCompositeCommand{\d}{L8U}{\^o}{ộ}% U+1ED9
+\DeclareTextCompositeCommand{\^}{L8U}{\d o}{ộ}% U+1ED9
+\DeclareTextCompositeCommand{\^}{L8U}{\d{o}}{ộ}% U+1ED9
+\DeclareTextCompositeCommand{\'}{L8U}{\Ohorn}{Ố}% U+1EDA
+\DeclareTextCompositeCommand{\'}{L8U}{\ohorn}{ớ}% U+1EDB
+\DeclareTextCompositeCommand{\`}{L8U}{\Ohorn}{Ờ}% U+1EDC
+\DeclareTextCompositeCommand{\`}{L8U}{\ohorn}{ờ}% U+1EDD
+%\DeclareTextCompositeCommand{\texttipam}{L8U}{\Ohorn}{Ở}% U+1EDE
+%\DeclareTextCompositeCommand{\texttipam}{L8U}{\ohorn}{ở}% U+1EDF
+\DeclareTextCompositeCommand{\~}{L8U}{\Ohorn}{Ỡ}% U+1EE0
+\DeclareTextCompositeCommand{\~}{L8U}{\ohorn}{ỡ}% U+1EE1
+\DeclareTextCompositeCommand{\d}{L8U}{\Ohorn}{Ợ}% U+1EE2
+\DeclareTextCompositeCommand{\d}{L8U}{\ohorn}{ợ}% U+1EE3
+\ifvnmxmp
+ %\DeclareTextCompositeCommand{\`}{L8U}{O}{Ò}% U+00D2
+ %\DeclareTextCompositeCommand{\'}{L8U}{O}{Ó}% U+00D3
+ %\DeclareTextCompositeCommand{\~}{L8U}{O}{Õ}% U+00D5
+ %\DeclareTextCompositeCommand{\d}{L8U}{O}{Ọ}% U+1ECC
+ \DeclareTextCompositeCommand{\h}{L8U}{O}{Ỏ}% U+1ECE
+ \DeclareTextCompositeCommand{\'}{L8U}{\OCIRCUMFLEX}{Ố}% U+1ED0
+ \DeclareTextCompositeCommand{\`}{L8U}{\OCIRCUMFLEX}{Ồ}% U+1ED2
+ \DeclareTextCompositeCommand{\h}{L8U}{\OCIRCUMFLEX}{Ổ}% U+1ED4
+ \DeclareTextCompositeCommand{\~}{L8U}{\OCIRCUMFLEX}{Ỗ}% U+1ED6
+ \DeclareTextCompositeCommand{\d}{L8U}{\OCIRCUMFLEX}{Ộ}% U+1ED8
+ \DeclareTextCompositeCommand{\'}{L8U}{\OHORN}{Ớ}% U+1EDA
+ \DeclareTextCompositeCommand{\`}{L8U}{\OHORN}{Ờ}% U+1EDC
+ \DeclareTextCompositeCommand{\h}{L8U}{\OHORN}{Ở}% U+1EDE
+ \DeclareTextCompositeCommand{\~}{L8U}{\OHORN}{Ỡ}% U+1EE0
+ \DeclareTextCompositeCommand{\d}{L8U}{\OHORN}{Ợ}% U+1EE2
+% lowercase
+ %\DeclareTextCompositeCommand{\`}{L8U}{o}{ò}% U+00F2
+ %\DeclareTextCompositeCommand{\'}{L8U}{o}{ó}% U+00F3
+ %\DeclareTextCompositeCommand{\~}{L8U}{o}{õ}% U+00F5
+ %\DeclareTextCompositeCommand{\d}{L8U}{o}{ọ}% U+1ECD
+ \DeclareTextCompositeCommand{\h}{L8U}{o}{ỏ}% U+1ECF
+ \DeclareTextCompositeCommand{\'}{L8U}{\ocircumflex}{ố}% U+1ED1
+ \DeclareTextCompositeCommand{\`}{L8U}{\ocircumflex}{ồ}% U+1ED3
+ \DeclareTextCompositeCommand{\h}{L8U}{\ocircumflex}{ổ}% U+1ED5
+ \DeclareTextCompositeCommand{\~}{L8U}{\ocircumflex}{ỗ}% U+1ED7
+ \DeclareTextCompositeCommand{\d}{L8U}{\ocircumflex}{ộ}% U+1ED9
+ %\DeclareTextCompositeCommand{\'}{L8U}{\ohorn}{ớ}% U+1EDB
+ %\DeclareTextCompositeCommand{\`}{L8U}{\ohorn}{ờ}% U+1EDD
+ \DeclareTextCompositeCommand{\h}{L8U}{\ohorn}{ở}% U+1EDF
+ %\DeclareTextCompositeCommand{\~}{L8U}{\ohorn}{ỡ}% U+1EE1
+ %\DeclareTextCompositeCommand{\d}{L8U}{\ohorn}{ợ}% U+1EE3
+\fi
+\DeclareTextCompositeCommand{\d}{L8U}{U}{Ụ}% U+1EE4
+\DeclareTextCompositeCommand{\d}{L8U}{u}{ụ}% U+1EE5
+%\DeclareTextCompositeCommand{\texttipam}{L8U}{U}{Ủ}% U+1EE6
+%\DeclareTextCompositeCommand{\texttipam}{L8U}{u}{ủ}% U+1EE7
+\DeclareTextCompositeCommand{\'}{L8U}{\Uhorn}{Ứ}% U+1EE8
+\DeclareTextCompositeCommand{\'}{L8U}{\uhorn}{ứ}% U+1EE9
+\DeclareTextCompositeCommand{\`}{L8U}{\Uhorn}{Ừ}% U+1EEA
+\DeclareTextCompositeCommand{\`}{L8U}{\uhorn}{ừ}% U+1EEB
+%\DeclareTextCompositeCommand{\texttipam}{L8U}{\Uhorn}{Ử}% U+1EEC
+%\DeclareTextCompositeCommand{\texttipam}{L8U}{\uhorn}{ử}% U+1EED
+\DeclareTextCompositeCommand{\~}{L8U}{\Uhorn}{Ữ}% U+1EEE
+\DeclareTextCompositeCommand{\~}{L8U}{\uhorn}{ữ}% U+1EEF
+%
+\DeclareTextCompositeCommand{\d}{L8U}{\Uhorn}{Ự}% U+1EF0
+\DeclareTextCompositeCommand{\d}{L8U}{\uhorn}{ự}% U+1EF1
+\ifvnmxmp
+ %\DeclareTextCompositeCommand{\`}{L8U}{U}{Ù}% U+00D9
+ %\DeclareTextCompositeCommand{\'}{L8U}{U}{Ú}% U+00DA
+ %\DeclareTextCompositeCommand{\~}{L8U}{U}{Ũ}% U+0168
+ %\DeclareTextCompositeCommand{\d}{L8U}{U}{Ụ}% U+1EE4
+ \DeclareTextCompositeCommand{\h}{L8U}{U}{Ủ}% U+1EE6
+ \DeclareTextCompositeCommand{\'}{L8U}{\UHORN}{Ứ}% U+1EE8
+ \DeclareTextCompositeCommand{\`}{L8U}{\UHORN}{Ừ}% U+1EEA
+ \DeclareTextCompositeCommand{\h}{L8U}{\UHORN}{Ử}% U+1EEC
+ \DeclareTextCompositeCommand{\~}{L8U}{\UHORN}{Ữ}% U+1EEE
+ \DeclareTextCompositeCommand{\d}{L8U}{\UHORN}{Ự}% U+1EF0
+% lowercase
+ %\DeclareTextCompositeCommand{\`}{L8U}{u}{ù}% U+00F9
+ %\DeclareTextCompositeCommand{\'}{L8U}{u}{ú}% U+00FA
+ %\DeclareTextCompositeCommand{\~}{L8U}{u}{ũ}% U+0169
+ %\DeclareTextCompositeCommand{\d}{L8U}{u}{ụ}% U+1EE5
+ \DeclareTextCompositeCommand{\h}{L8U}{u}{ủ}% U+1EE7
+ %\DeclareTextCompositeCommand{\'}{L8U}{\uhorn}{ứ}% U+1EE9
+ %\DeclareTextCompositeCommand{\`}{L8U}{\uhorn}{ừ}% U+1EEB
+ \DeclareTextCompositeCommand{\h}{L8U}{\uhorn}{ử}% U+1EED
+ %\DeclareTextCompositeCommand{\~}{L8U}{\uhorn}{ữ}% U+1EEF
+ %\DeclareTextCompositeCommand{\d}{L8U}{\uhorn}{ự}% U+1EF1
+\fi
+\DeclareTextCompositeCommand{\`}{L8U}{Y}{Ỳ}% U+1EF2
+\DeclareTextCompositeCommand{\`}{L8U}{y}{ỳ}% U+1EF3
+\DeclareTextCompositeCommand{\d}{L8U}{Y}{Ỵ}% U+1EF4
+\DeclareTextCompositeCommand{\d}{L8U}{y}{ỵ}% U+1EF5
+%\DeclareTextCompositeCommand{\texttipam}{L8U}{Y}{Ỷ}% U+1EF6
+%\DeclareTextCompositeCommand{\texttipam}{L8U}{y}{ỷ}% U+1EF7
+\DeclareTextCompositeCommand{\~}{L8U}{Y}{Ỹ}% U+1EF8
+\DeclareTextCompositeCommand{\~}{L8U}{y}{ỹ}% U+1EF9
+\ifvnmxmp
+ %\DeclareTextCompositeCommand{\'}{L8U}{Y}{Ý}% U+00DD
+ %\DeclareTextCompositeCommand{\`}{L8U}{Y}{Ỳ}% U+1EF2
+ %\DeclareTextCompositeCommand{\d}{L8U}{Y}{Ỵ}% U+1EF4
+ \DeclareTextCompositeCommand{\h}{L8U}{Y}{Ỷ}% U+1EF6
+ %\DeclareTextCompositeCommand{\~}{L8U}{Y}{Ỹ}% U+1EF8
+% lowercase
+ %\DeclareTextCompositeCommand{\'}{L8U}{y}{ý}% U+00FD
+ %\DeclareTextCompositeCommand{\`}{L8U}{y}{ỳ}% U+1EF3
+ %\DeclareTextCompositeCommand{\d}{L8U}{y}{ỵ}% U+1EF5
+ \DeclareTextCompositeCommand{\h}{L8U}{y}{ỷ}% U+1EF7
+ %\DeclareTextCompositeCommand{\~}{L8U}{y}{ỹ}% U+1EF9
+\fi
+
+%\DeclareTextCommand{\LLwelsh}{L8U}{Ỻ}% U+1EFA
+%\DeclareTextCommand{\llwelsh}{L8U}{ỻ}% U+1EFB
+%\DeclareTextCommand{\Vwelsh}{L8U}{Ỽ}% U+1EFC
+%\DeclareTextCommand{\vwelsh}{L8U}{ỽ}% U+1EFD
+%\DeclareTextCommand{\Ylooped}{L8U}{Ỿ}% U+1EFE
+%\DeclareTextCommand{\ylooped}{L8U}{Ỿ}% U+1EFF
+
+\fi % end of \iflatEXTxmp
+
+%
+%
+% from ts1enc.def
+\DeclareTextCommand{\capitalcedilla}{L8U}[1]{#1̧}%cca7
+\DeclareTextCommand{\capitalogonek}{L8U}[1]{#1̨}%cca8
+\DeclareTextCommand{\capitalgrave}{L8U}[1]{#1̀}%cc80
+\DeclareTextCommand{\capitalacute}{L8U}[1]{#1́}%cc81
+\DeclareTextCommand{\capitalcircumflex}{L8U}[1]{#1̂}%cc82
+\DeclareTextCommand{\capitaltilde}{L8U}[1]{#1̃}%cc83
+\DeclareTextCommand{\capitaldieresis}{L8U}[1]{#1̈}%cc88
+\DeclareTextCommand{\capitalhungarumlaut}{L8U}[1]{#1̋}%cc8b
+\DeclareTextCommand{\capitalring}{L8U}[1]{#1̊}%cc8a
+\DeclareTextCommand{\capitalcaron}{L8U}[1]{#1̌}%cc8c
+\DeclareTextCommand{\capitalbreve}{L8U}[1]{#1̆}%cc86
+\DeclareTextCommand{\capitalmacron}{L8U}[1]{#1̄}%cc84
+\DeclareTextCommand{\capitaldotaccent}{L8U}[1]{#1̇}%cc87
+\DeclareTextCommand{\t}{L8U}[1]{#1͡}%cda1
+\DeclareTextCommand{\capitaltie}{L8U}[1]{#1͡}%cda1
+\DeclareTextCommand{\newtie}{L8U}[1]{#1⁀}%e28180 % or cc91
+\DeclareTextCommand{\capitalnewtie}{L8U}[1]{#1⁀}%e28180 % or cc91
+\DeclareTextCommand{\textcapitalcompwordmark}{L8U}{‌}%e2809c
+\DeclareTextCommand{\textascendercompwordmark}{L8U}{‌}%e2809c
+\DeclareTextCommand{\textquotestraightbase}{L8U}{‚}%e2809a
+\DeclareTextCommand{\textquotestraightdblbase}{L8U}{„}%e2809e
+%\DeclareTextCommand{\texttwelveudash}{L8U}{―}%e28095
+%\DeclareTextCommand{\textthreequartersemdash}{L8U}{‒}%e28092
+
+
+
+\DeclareTextCommand{\textblank}{L8U}{␢}%e290a2
+\DeclareTextCommand{\textvisiblespace}{L8U}{␣}% U+2423
+\DeclareTextCommand{\textbbslash}{L8U}{⑊}%* U+244A
+%\DeclareTextSymbol{\textdollar}{L8U}{`\$}%
+\DeclareTextSymbol{\textquotesingle}{L8U}{`\'}%
+\DeclareTextSymbol{\textasteriskcentered}{L8U}{`\*}
+%\DeclareTextCommand{\textdblhyphen}{L8U}{꞊}%ea9e8a ????
+\DeclareTextCommand{\textfractionsolidus}{L8U}{⁄}%e28184
+
+
+%
+% Miscellaneous symbols, Spacing modifiers
+%
+\DeclareTextCommand{\textasciicaron}{L8U}{ˇ}% U+02C7
+\DeclareTextCommand{\textasciigrave}{L8U}{ˋ}% U+02CB
+\DeclareTextCommand{\textasciibreve}{L8U}{˘}% U+02D8
+\DeclareTextCommand{\texthungarumlaut}{L8U}{˝}%
+\DeclareTextCommand{\textacutedbl}{L8U}{˝}% U+02DD or ˶ % U+02F6
+\DeclareTextCommand{\textgravedbl}{L8U}{˵}% U+02F5
+\DeclareTextCommand{\texttildelow}{L8U}{˷}% U+02F7
+
+\DeclareTextCommand{\textcentoldstyle}{L8U}{¢}%c2a2 %var-1: efb880
+\DeclareTextCommand{\textdollaroldstyle}{L8U}{`\$}
+
+%
+\DeclareTextCommand{\textcopyleft}{L8U}{©}%???? non-unicode
+\DeclareTextCommand{\textlnot}{L8U}{¬}%c2ac
+%\DeclareTextCommand{\-}{L8U}{­}%c2ad % don't override discretionary hyphen
+\DeclareTextCommand{\textsofthyphen}{L8U}{­}%c2ad
+
+%
+% General Punctuation Ux2000 – Ux205F
+%
+
+
+%
+% allow some control over spaces in math
+%
+\DeclareTextCommand{\textenquad}{L8U}{ }% U+2000
+\DeclareTextCommand{\textemquad}{L8U}{ }% U+2001
+\DeclareTextCommand{\textenspace}{L8U}{ }% U+2002
+\DeclareTextCommand{\textemspace}{L8U}{ }% U+2003
+\DeclareTextCommand{\textthreeperemspace}{L8U}{ }% U+2004
+\DeclareTextCommand{\textfourperemspace}{L8U}{ }% U+2005
+\DeclareTextCommand{\textsixperemspace}{L8U}{ }% U+2006
+\DeclareTextCommand{\textfigurespace}{L8U}{ }% U+2007
+\DeclareTextCommand{\textpuntuationspace}{L8U}{ }% U+2008
+\DeclareTextCommand{\textthinspace}{L8U}{ }% U+2009
+\DeclareTextCommand{\texthairspace}{L8U}{ }% U+200A
+\DeclareTextCommand{\textzerowidthspace}{L8U}{​}% U+200B
+
+\def\LIIXUmapmathspaces{%
+ \let\,\textsixperemspace
+ \let\;\textfourperemspace
+ \let\ \space %\textthreeperemspace
+ \let\quad\textenquad
+ \let\qquad\textemquad
+}
+
+
+\DeclareTextCommand{\textcompwordmark}{L8U}{‌}% U+200C may show as invisible
+\DeclareTextCommand{\liixu@ZWNJ}{L8U}{‌}% U+200C may show as invisible
+\DeclareTextCommand{\liixu@noboundary}{L8U}{‍}% U+200D may show as invisible
+%
+\DeclareTextCommand{\textthreequartersemdash}{L8U}{‒}% U+2012
+\DeclareTextCommand{\textendash}{L8U}{–}% U+2013
+\DeclareTextCommand{\textemdash}{L8U}{—}% U+2014
+\DeclareTextCommand{\texttwelveudash}{L8U}{―}% U+2015
+\DeclareTextCommand{\textbardbl}{L8U}{‖}% U+2016
+\DeclareTextCommand{\textdoublevertline}{L8U}{‖}% U+2016
+%
+\DeclareTextCommand{\textquoteleft}{L8U}{‘}% U+2018
+\DeclareTextCommand{\textquoteright}{L8U}{’}% U+2019
+\DeclareTextCommand{\quotesinglbase}{L8U}{‚}% U+201A
+%
+\DeclareTextCommand{\textquotedblleft}{L8U}{“}% U+201C
+\DeclareTextCommand{\textquotedblright}{L8U}{”}% U+201D
+\DeclareTextCommand{\quotedblbase}{L8U}{„}% U+201E
+%
+\DeclareTextCommand{\textdagger}{L8U}{†}%* U+2020
+\DeclareTextCommand{\textdaggerdbl}{L8U}{‡}% U+2021
+\DeclareTextCommand{\textbullet}{L8U}{•}%* U+2022
+%
+\DeclareTextCommand{\texthdotfor}{L8U}{‥}%* U+2025
+\DeclareTextCommand{\textellipsis}{L8U}{…}% U+2026
+%
+\DeclareTextCommand{\textperthousand}{L8U}{‰}% U+2030
+\DeclareTextCommand{\textpertenthousand}{L8U}{‱}% U+2031
+\DeclareTextCommand{\textprime}{L8U}{′}%* U+2032
+\DeclareTextCommand{\textsecond}{L8U}{″}%* U+2033
+\DeclareTextCommand{\textthird}{L8U}{‴}%* U+2034
+\DeclareTextCommand{\textbackprime}{L8U}{‵}%* U+2035
+%
+\DeclareTextCommand{\guilsinglleft}{L8U}{‹}% U+2039
+\DeclareTextCommand{\guilsinglright}{L8U}{›}% U+203A
+\DeclareTextCommand{\textreferencemark}{L8U}{※}% U+203B
+%
+\DeclareTextCommand{\textinterrobang}{L8U}{‽}% U+203D
+%
+\DeclareTextCommand{\textfractionsolidus}{L8U}{⁄}% U+2044
+\DeclareTextCommand{\textlquill}{L8U}{⁅}% U+2045
+\DeclareTextCommand{\textrquill}{L8U}{⁆}% U+2046
+%
+\DeclareTextCommand{\textdiscount}{L8U}{⁒}% U+2052
+%
+\DeclareTextCommand{\textlefttherefore}{L8U}{⁖}%* U+2056
+\DeclareTextCommand{\textfourth}{L8U}{⁗}%* U+2057
+\DeclareTextCommand{\textdiamonddots}{L8U}{⁘}%* U+2058
+
+
+%
+% Superscripts and Subscripts Ux2070 – Ux209F
+%
+
+\DeclareTextCommand{\textzerosuperior}{L8U}{⁰}%* U+2070
+\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{0}{⁰}
+\DeclareTextCommand{\textisuperior}{L8U}{ⁱ}%* U+2071
+\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{i}{ⁱ}
+%
+\DeclareTextCommand{\textfoursuperior}{L8U}{⁴}% U+2074
+\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{4}{⁴}
+\DeclareTextCommand{\textfivesuperior}{L8U}{⁵}% U+2075
+\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{5}{⁵}
+\DeclareTextCommand{\textsixsuperior}{L8U}{⁶}% U+2076
+\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{6}{⁶}
+\DeclareTextCommand{\textsevensuperior}{L8U}{⁷}% U+2077
+\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{7}{⁷}
+\DeclareTextCommand{\texteightsuperior}{L8U}{⁸}% U+2078
+\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{8}{⁸}
+\DeclareTextCommand{\textninesuperior}{L8U}{⁹}% U+2079
+\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{9}{⁹}
+\DeclareTextCommand{\textplussuperior}{L8U}{⁺}% U+207A
+\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{+}{⁺}
+\DeclareTextCommand{\textminussuperior}{L8U}{⁻}% U+207B
+\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{-}{⁻}
+\DeclareTextCommand{\textequalsuperior}{L8U}{⁼}% U+207C
+\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{=}{⁼}
+\DeclareTextCommand{\textparenleftsuperior}{L8U}{⁽}% U+207D
+\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{(}{⁽}
+\DeclareTextCommand{\textparenrightsuperior}{L8U}{⁾}% U+207E
+\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{)}{⁾}
+\DeclareTextCommand{\textnsuperior}{L8U}{ⁿ}% U+207F
+\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{n}{ⁿ}
+\DeclareTextCommand{\textzeroinferior}{L8U}{₀}% U+2080
+\DeclareTextCompositeCommand{\dotextsubscript}{L8U}{0}{₀}
+\DeclareTextCommand{\textoneinferior}{L8U}{₁}% U+2081
+\DeclareTextCompositeCommand{\dotextsubscript}{L8U}{1}{₁}
+\DeclareTextCommand{\texttwoinferior}{L8U}{₂}% U+2082
+\DeclareTextCompositeCommand{\dotextsubscript}{L8U}{2}{₂}
+\DeclareTextCommand{\textthreeinferior}{L8U}{₃}% U+2083
+\DeclareTextCompositeCommand{\dotextsubscript}{L8U}{3}{₃}
+\DeclareTextCommand{\textfourinferior}{L8U}{₄}% U+2084
+\DeclareTextCompositeCommand{\dotextsubscript}{L8U}{4}{₄}
+\DeclareTextCommand{\textfiveinferior}{L8U}{₅}% U+2085
+\DeclareTextCompositeCommand{\dotextsubscript}{L8U}{5}{₅}
+\DeclareTextCommand{\textsixinferior}{L8U}{₆}% U+2086
+\DeclareTextCompositeCommand{\dotextsubscript}{L8U}{6}{₆}
+\DeclareTextCommand{\textseveninferior}{L8U}{₇}% U+2087
+\DeclareTextCompositeCommand{\dotextsubscript}{L8U}{7}{₇}
+\DeclareTextCommand{\texteightinferior}{L8U}{₈}% U+2088
+\DeclareTextCompositeCommand{\dotextsubscript}{L8U}{8}{₈}
+\DeclareTextCommand{\textnineinferior}{L8U}{₉}% U+2089
+\DeclareTextCompositeCommand{\dotextsubscript}{L8U}{9}{₉}
+\DeclareTextCommand{\textplusinferior}{L8U}{₊}% U+208A
+\DeclareTextCompositeCommand{\dotextsubscript}{L8U}{+}{₊}
+\DeclareTextCommand{\textminusinferior}{L8U}{₋}% U+208B
+\DeclareTextCompositeCommand{\dotextsubscript}{L8U}{-}{₋}
+\DeclareTextCommand{\textequalsinferior}{L8U}{₌}% U+208C
+\DeclareTextCompositeCommand{\dotextsubscript}{L8U}{=}{₌}
+\DeclareTextCommand{\textparenleftinferior}{L8U}{₍}% U+208D
+\DeclareTextCompositeCommand{\dotextsubscript}{L8U}{(}{₍}
+\DeclareTextCommand{\textparenrightinferior}{L8U}{₎}% U+208E
+\DeclareTextCompositeCommand{\dotextsubscript}{L8U}{)}{₎}
+%
+\DeclareTextCommand{\textainferior}{L8U}{ₐ}% U+2090
+\DeclareTextCompositeCommand{\dotextsubscript}{L8U}{a}{ₐ}
+\DeclareTextCommand{\texteinferior}{L8U}{ₑ}% U+2091
+\DeclareTextCompositeCommand{\dotextsubscript}{L8U}{e}{ₑ}
+\DeclareTextCommand{\textoinferior}{L8U}{ₒ}% U+2092
+\DeclareTextCompositeCommand{\dotextsubscript}{L8U}{o}{ₒ}
+\DeclareTextCommand{\textxinferior}{L8U}{ₓ}% U+2093
+\DeclareTextCompositeCommand{\dotextsubscript}{L8U}{x}{ₓ}
+\DeclareTextCommand{\textschwainferior}{L8U}{ₔ}% U+2094
+\DeclareTextCompositeCommand{\dotextsubscript}{L8U}{\schwa}{ₔ}
+\DeclareTextCompositeCommand{\dotextsubscript}{L8U}{\textschwa}{ₔ}
+\DeclareTextCommand{\texthinferior}{L8U}{^^e2^^82^^95}% U+2095
+\DeclareTextCommand{\textHinferior}{L8U}{^^e2^^82^^95}% U+2095
+\DeclareTextCompositeCommand{\dotextsubscript}{L8U}{H}{^^e2^^82^^95}
+\DeclareTextCommand{\texthinferior}{L8U}{^^e2^^82^^96}% U+2096
+\DeclareTextCommand{\textKinferior}{L8U}{^^e2^^82^^96}% U+2096
+\DeclareTextCompositeCommand{\dotextsubscript}{L8U}{K}{^^e2^^82^^96}
+\DeclareTextCommand{\textlinferior}{L8U}{^^e2^^82^^97}% U+2097
+\DeclareTextCommand{\textLinferior}{L8U}{^^e2^^82^^97}% U+2097
+\DeclareTextCompositeCommand{\dotextsubscript}{L8U}{L}{^^e2^^82^^97}
+\DeclareTextCommand{\textminferior}{L8U}{^^e2^^82^^98}% U+2098
+\DeclareTextCommand{\textMinferior}{L8U}{^^e2^^82^^98}% U+2098
+\DeclareTextCompositeCommand{\dotextsubscript}{L8U}{M}{^^e2^^82^^98}
+\DeclareTextCommand{\textninferior}{L8U}{^^e2^^82^^99}% U+2099
+\DeclareTextCommand{\textNinferior}{L8U}{^^e2^^82^^99}% U+2099
+\DeclareTextCompositeCommand{\dotextsubscript}{L8U}{N}{^^e2^^82^^99}
+\DeclareTextCommand{\textpinferior}{L8U}{^^e2^^82^^9a}% U+209A
+\DeclareTextCommand{\textPinferior}{L8U}{^^e2^^82^^9a}% U+209A
+\DeclareTextCompositeCommand{\dotextsubscript}{L8U}{P}{^^e2^^82^^9A}
+\DeclareTextCommand{\textsinferior}{L8U}{^^e2^^82^^9b}% U+209B
+\DeclareTextCommand{\textSinferior}{L8U}{^^e2^^82^^9b}% U+209B
+\DeclareTextCompositeCommand{\dotextsubscript}{L8U}{S}{^^e2^^82^^9B}
+\DeclareTextCommand{\texttinferior}{L8U}{^^e2^^82^^9c}% U+209C
+\DeclareTextCommand{\textTinferior}{L8U}{^^e2^^82^^9c}% U+209C
+\DeclareTextCompositeCommand{\dotextsubscript}{L8U}{T}{^^e2^^82^^9C}
+
+
+%
+% Currency Symbols Ux20A0 – Ux20B5
+%
+\DeclareTextCommand{\textcolonmonetary}{L8U}{₡}% U+20A1
+\DeclareTextCommand{\textlira}{L8U}{₤}% U+20A4
+\DeclareTextCommand{\textnaira}{L8U}{₦}% U+20A6
+\DeclareTextCommand{\textpeseta}{L8U}{₧}% U+20A7
+\DeclareTextCommand{\textwon}{L8U}{₩}% U+20A9
+\DeclareTextCommand{\textdong}{L8U}{₫}% U+20AB
+\DeclareTextCommand{\texteuro}{L8U}{€}% U+20AC
+\DeclareTextCommand{\textDeleatur}{L8U}{₰}%* U+20B0
+\DeclareTextCommand{\textpeso}{L8U}{₱}% U+20B1
+\DeclareTextCommand{\textguarani}{L8U}{₲}% U+20B2
+
+\DeclareTextCommand{\textbaht}{L8U}{฿}% U+0E3F
+
+
+% UxFF10 — UxFF19
+\DeclareTextCommand{\textzerooldstyle}{L8U}{0}%efbc90
+\DeclareTextCommand{\textoneoldstyle}{L8U}{1}
+\DeclareTextCommand{\texttwooldstyle}{L8U}{2}
+\DeclareTextCommand{\textthreeoldstyle}{L8U}{3}
+\DeclareTextCommand{\textfouroldstyle}{L8U}{4}
+\DeclareTextCommand{\textfiveoldstyle}{L8U}{5}
+\DeclareTextCommand{\textsixoldstyle}{L8U}{6}
+\DeclareTextCommand{\textsevenoldstyle}{L8U}{7}
+\DeclareTextCommand{\texteightoldstyle}{L8U}{8}
+\DeclareTextCommand{\textnineoldstyle}{L8U}{9}
+
+
+
+% some of these may be used anyway, not in math
+
+%
+% Letterlike symbols Ux2100 – Ux214F
+%
+\DeclareTextCommand{\textcelsius}{L8U}{℃}% U+2103
+\DeclareTextCommand{\texthslash}{L8U}{ℏ}% U+210F
+\DeclareTextCommand{\textIm}{L8U}{ℑ}% U+2111
+\DeclareTextCommand{\textell}{L8U}{ℓ}% U+2113
+\DeclareTextCommand{\textnumero}{L8U}{№}% U+2116
+\DeclareTextCommand{\textcircledP}{L8U}{℗}% U+2117
+\DeclareTextCommand{\textwp}{L8U}{℘}% U+2118
+\DeclareTextCommand{\textRe}{L8U}{ℜ}% U+211C
+\DeclareTextCommand{\textrecipe}{L8U}{℞}% U+211E
+\DeclareTextCommand{\textservicemark}{L8U}{℠}% U+2120
+\DeclareTextCommand{\texttrademark}{L8U}{™}% U+2122
+\DeclareTextCommand{\textohm}{L8U}{Ω}% U+2126
+\DeclareTextCommand{\textmho}{L8U}{℧}% U+2127
+\DeclareTextCommand{\textriota}{L8U}{℩}% U+2129
+\DeclareTextCommand{\textangstrom}{L8U}{Å}% U+212B
+\DeclareTextCommand{\textestimated}{L8U}{℮}% U+212E
+\DeclareTextCommand{\textFinv}{L8U}{Ⅎ}% U+2132
+\DeclareTextCommand{\textaleph}{L8U}{ℵ}% U+2135
+\DeclareTextCommand{\textbeth}{L8U}{ℶ}% U+2136
+\DeclareTextCommand{\textgimel}{L8U}{ℷ}% U+2137
+\DeclareTextCommand{\textdaleth}{L8U}{ℸ}% U+2138
+\DeclareTextCommand{\textfax}{L8U}{℻}% U+213B
+\DeclareTextCommand{\textGame}{L8U}{⅁}% U+2141
+\DeclareTextCommand{\textinvamp}{L8U}{⅋}% U+214B
+
+\def\LIIXUmapmathletterlikes{%
+ \let\celsius\textcelsius
+ \let\hslash\texthslash
+ \let\Im\textIm
+ \let\ell\textell
+ \let\numero\textnumero
+ \let\circledP\textcircledP
+ \let\wp\textwp
+ \let\Re\textRe
+ \let\recipe\textrecipe
+ \let\servicemark\textservicemark
+ \let\trademark\texttrademark
+ \let\ohm\textohm
+ \let\mho\textmho
+ \let\riota\textriota
+ \let\angstrom\textangstrom
+ \let\estimated\textestimated
+ \let\Finv\textFinv
+ \let\aleph\textaleph
+ \let\beth\textbeth
+ \let\gimel\textgimel
+ \let\daleth\textdaleth
+ \let\fax\textfax
+ \let\Game\textGame
+ \let\invamp\textinvamp
+%
+ \let\nobreakspace\textnobreakspace
+ \let\dots\textdots
+ \let\dag\textdagger
+ \let\ddag\textdaggerdbl
+ \let\ddagger\textdaggerdbl
+ \let\bullet\textbullet
+ \let\mathdollar\textdollar
+ \let\$\textdollar
+ \let\pounds\textsterling
+ \let\mathsterling\textsterling
+ \let\mathparagraph\textparagragh
+ \let\P\textparagraph
+ \let\mathsection\textsection
+ \let\S\textsection
+ \let\partial\textpartial
+ \let\complement\textcomplement
+ \let\circledS\textcircledS
+ \let\hbar\texthbar
+ \let\eth\dh
+ \let\imath\i
+ \let\jmath\j
+ \let\SS\textSS
+}
+
+
+%
+% Number forms Ux2150 – Ux218F
+%
+\DeclareTextCommand{\textoneseventh}{L8U}{⅐}% U+2150
+\DeclareTextCommand{\textoneninth}{L8U}{⅑}% U+2151
+\DeclareTextCommand{\textonetenth}{L8U}{⅒}% U+2152
+\DeclareTextCommand{\textonethird}{L8U}{⅓}% U+2153
+\DeclareTextCommand{\texttwothirds}{L8U}{⅔}% U+2154
+\DeclareTextCommand{\textonefifth}{L8U}{⅕}% U+2155
+\DeclareTextCommand{\texttwofifths}{L8U}{⅖}% U+2156
+\DeclareTextCommand{\textthreefifths}{L8U}{⅗}% U+2157
+\DeclareTextCommand{\textfourfifths}{L8U}{⅘}% U+2158
+\DeclareTextCommand{\textonesixth}{L8U}{⅙}% U+2159
+\DeclareTextCommand{\textfivesixths}{L8U}{⅚}% U+215A
+\DeclareTextCommand{\textoneeighth}{L8U}{⅛}% U+215B
+\DeclareTextCommand{\textthreeeighths}{L8U}{⅜}% U+215C
+\DeclareTextCommand{\textfiveeighths}{L8U}{⅝}% U+215D
+\DeclareTextCommand{\textseveneighths}{L8U}{⅞}% U+215E
+%
+\DeclareTextCommand{\textrevc}{L8U}{ↄ}% U+2184
+%
+\DeclareTextCommand{\textzerothirds}{L8U}{↉}% U+2189
+
+\ifmathxmp
+%
+% Arrows Ux2190 – Ux21FF
+%
+\DeclareTextCommand{\textleftarrow}{L8U}{←}%* U+2190
+\DeclareTextCommand{\textuparrow}{L8U}{↑}%* U+2191
+\DeclareTextCommand{\textrightarrow}{L8U}{→}%* U+2192
+\DeclareTextCommand{\textdownarrow}{L8U}{↓}%* U+2193
+\DeclareTextCommand{\textleftrightarrow}{L8U}{↔}%* U+2194
+\DeclareTextCommand{\textupdownarrow}{L8U}{↕}%* U+2195
+\DeclareTextCommand{\textnwarrow}{L8U}{↖}%* U+2196
+\DeclareTextCommand{\textnearrow}{L8U}{↗}%* U+2197
+\DeclareTextCommand{\textsearrow}{L8U}{↘}%* U+2198
+\DeclareTextCommand{\textswarrow}{L8U}{↙}%* U+2199
+\DeclareTextCommand{\textnleftarrow}{L8U}{↚}%* U+219A
+\DeclareTextCommand{\textnrightarrow}{L8U}{↛}%* U+219B
+\DeclareTextCommand{\texttwoheadleftarrow}{L8U}{↞}%* U+219E
+\DeclareTextCommand{\textntwoheadleftarrow}{L8U}{↞̸}%* U+219E U+0338
+\DeclareTextCommand{\texttwoheaduparrow}{L8U}{↟}%* U+219F
+\DeclareTextCommand{\texttwoheadrightarrow}{L8U}{↠}%* U+21A0
+\DeclareTextCommand{\textntwoheadrightarrow}{L8U}{↠̸}%* U+21A0 U+0338
+\DeclareTextCommand{\texttwoheaddownarrow}{L8U}{↡}%* U+21A1
+\DeclareTextCommand{\textleftarrowtail}{L8U}{↢}%* U+21A2
+\DeclareTextCommand{\textrightarrowtail}{L8U}{↣}%* U+21A3
+\DeclareTextCommand{\textmapsto}{L8U}{↦}%* U+21A6
+\DeclareTextCommand{\texthookleftarrow}{L8U}{↩}%* U+21A9
+\DeclareTextCommand{\texthookrightarrow}{L8U}{↪}%* U+21AA
+\DeclareTextCommand{\textlooparrowleft}{L8U}{↫}%* U+21AB
+\DeclareTextCommand{\textlooparrowright}{L8U}{↬}%* U+21AC
+\DeclareTextCommand{\textnleftrightarrow}{L8U}{↮}%* U+21AE
+\DeclareTextCommand{\textlightning}{L8U}{↯}%* U+21AF
+\DeclareTextCommand{\textdlsh}{L8U}{↵}%* U+21B5
+\DeclareTextCommand{\textcurvearrowleft}{L8U}{↶}%* U+21B6
+\DeclareTextCommand{\textcurvearrowright}{L8U}{↷}%* U+21B7
+\DeclareTextCommand{\textleftharpoonup}{L8U}{↼}%* U+21BC
+\DeclareTextCommand{\textleftharpoondown}{L8U}{↽}%* U+21BD
+\DeclareTextCommand{\textupharpoonright}{L8U}{↾}%* U+21BE
+\DeclareTextCommand{\textupharpoonleft}{L8U}{↿}%* U+21BF
+\DeclareTextCommand{\textrightharpoonup}{L8U}{⇀}%* U+21C0
+\DeclareTextCommand{\textrightharpoondown}{L8U}{⇁}%* U+21C1
+\DeclareTextCommand{\textdownharpoonright}{L8U}{⇂}%* U+21C2
+\DeclareTextCommand{\textdownharpoonleft}{L8U}{⇃}%* U+21C3
+\DeclareTextCommand{\textrightleftarrows}{L8U}{⇄}%* U+21C4
+\DeclareTextCommand{\textupdownarrows}{L8U}{⇅}%* U+21C5
+\DeclareTextCommand{\textleftrightarrows}{L8U}{⇆}%* U+21C6
+\DeclareTextCommand{\textleftleftarrows}{L8U}{⇇}%* U+21C7
+\DeclareTextCommand{\textupuparrows}{L8U}{⇈}%* U+21C8
+\DeclareTextCommand{\textrightrightarrows}{L8U}{⇉}%* U+21C9
+\DeclareTextCommand{\textdowndownarrows}{L8U}{⇊}%* U+21CA
+\DeclareTextCommand{\textleftrightharpoons}{L8U}{⇋}%* U+21CB
+\DeclareTextCommand{\textrightleftharpoons}{L8U}{⇌}%* U+21CC
+\DeclareTextCommand{\textnLeftarrow}{L8U}{⇍}%* U+21CD
+\DeclareTextCommand{\textnLeftrightarrow}{L8U}{⇎}%* U+21CE
+\DeclareTextCommand{\textnRightarrow}{L8U}{⇏}%* U+21CF
+\DeclareTextCommand{\textLeftarrow}{L8U}{⇐}%* U+21D0
+\DeclareTextCommand{\textUparrow}{L8U}{⇑}%* U+21D1
+\DeclareTextCommand{\textRightarrow}{L8U}{⇒}%* U+21D2
+\DeclareTextCommand{\textDownarrow}{L8U}{⇓}%* U+21D3
+\DeclareTextCommand{\textLeftrightarrow}{L8U}{⇔}%* U+21D4
+\DeclareTextCommand{\textUpdownarrow}{L8U}{⇕}%* U+21D5
+\DeclareTextCommand{\textNwarrow}{L8U}{⇖}%* U+21D6
+\DeclareTextCommand{\textNearrow}{L8U}{⇗}%* U+21D7
+\DeclareTextCommand{\textSearrow}{L8U}{⇘}%* U+21D8
+\DeclareTextCommand{\textSwarrow}{L8U}{⇙}%* U+21D9
+\DeclareTextCommand{\textLleftarrow}{L8U}{⇚}%* U+21DA
+\DeclareTextCommand{\textRrightarrow}{L8U}{⇛}%* U+21DB
+\DeclareTextCommand{\textleftsquigarrow}{L8U}{⇜}%* U+21DC
+\DeclareTextCommand{\textrightsquigarrow}{L8U}{⇝}%* U+21DD
+\DeclareTextCommand{\textdashleftarrow}{L8U}{⇠}%* U+21E0
+\DeclareTextCommand{\textdasheduparrow}{L8U}{⇡}%* U+21E1
+\DeclareTextCommand{\textdashrightarrow}{L8U}{⇢}%* U+21E2
+\DeclareTextCommand{\textdasheddownarrow}{L8U}{⇣}%* U+21E3
+\DeclareTextCommand{\textpointer}{L8U}{⇨}%* U+21E8
+\DeclareTextCommand{\textdownuparrows}{L8U}{⇵}%* U+21F5
+\DeclareTextCommand{\textleftarrowtriangle}{L8U}{⇽}%* U+21FD
+\DeclareTextCommand{\textrightarrowtriangle}{L8U}{⇾}%* U+21FE
+\DeclareTextCommand{\textleftrightarrowtriangle}{L8U}{⇿}%* U+21FF
+
+
+%
+% Mathematical operators Ux2200 — Ux22FF
+%
+
+\DeclareTextCommand{\textforall}{L8U}{∀}%* U+2200
+\DeclareTextCommand{\textcomplement}{L8U}{∁}%* U+2201
+\DeclareTextCommand{\textpartial}{L8U}{∂}%* U+2202
+\DeclareTextCommand{\textexists}{L8U}{∃}%* U+2203
+\DeclareTextCommand{\textnexists}{L8U}{∄}%* U+2204
+\DeclareTextCommand{\textemptyset}{L8U}{∅}%* U+2205
+\DeclareTextCommand{\texttriangle}{L8U}{∆}%* U+2206
+\DeclareTextCommand{\textnabla}{L8U}{∇}%* U+2207
+\DeclareTextCommand{\textin}{L8U}{∈}%* U+2208
+\DeclareTextCommand{\textnotin}{L8U}{∉}%* U+2209
+\DeclareTextCommand{\textsmallin}{L8U}{∊}%* U+220A
+\DeclareTextCommand{\textni}{L8U}{∋}%* U+220B
+\DeclareTextCommand{\textnotowner}{L8U}{∌}%* U+220C
+\DeclareTextCommand{\textsmallowns}{L8U}{∍}%* U+220D
+%
+\DeclareTextCommand{\textprod}{L8U}{∏}%* U+220F
+\DeclareTextCommand{\textamalg}{L8U}{∐}%* U+2210
+\DeclareTextCommand{\textsum}{L8U}{∑}%* U+2211
+\DeclareTextCommand{\textminus}{L8U}{−}% U+2212
+\DeclareTextCommand{\textmp}{L8U}{∓}%* U+2213
+\DeclareTextCommand{\textdotplus}{L8U}{∔}%* U+2214
+\DeclareTextCommand{\textDivides}{L8U}{∕}%* U+2215
+\DeclareTextCommand{\textDividesNot}{L8U}{∕⃒}%* U+2215 U+20D2
+\DeclareTextCommand{\textsetminus}{L8U}{∖}%* U+2216
+\DeclareTextCommand{\textast}{L8U}{∗}%* U+2217
+\DeclareTextCommand{\textcirc}{L8U}{∘}%* U+2218
+\DeclareTextCommand{\textbulletoperator}{L8U}{∙}% U+2219
+\DeclareTextCommand{\textsurd}{L8U}{√}%* U+221A
+%
+\DeclareTextCommand{\textpropto}{L8U}{∝}%* U+221D
+\DeclareTextCommand{\textinfty}{L8U}{∞}%* U+221E
+%
+\DeclareTextCommand{\textangle}{L8U}{∠}%* U+2220
+\DeclareTextCommand{\textmeasuredangle}{L8U}{∡}%* U+2221
+\DeclareTextCommand{\textsphericalangle}{L8U}{∢}%* U+2222
+\DeclareTextCommand{\textmid}{L8U}{∣}%* U+2223
+\DeclareTextCommand{\textnmid}{L8U}{∤}%* U+2224
+\DeclareTextCommand{\textparallel}{L8U}{∥}%* U+2225
+\DeclareTextCommand{\textnparallel}{L8U}{∦}%* U+2226
+\DeclareTextCommand{\textwedge}{L8U}{∧}%* U+2227
+\DeclareTextCommand{\textowedge}{L8U}{∧⃝}%* U+2227 U+20DD
+\DeclareTextCommand{\textvee}{L8U}{∨}%* U+2228
+\DeclareTextCommand{\textovee}{L8U}{∨⃝}%* U+2228 U+20DD
+\DeclareTextCommand{\textcap}{L8U}{∩}%* U+2229
+\DeclareTextCommand{\textcup}{L8U}{∪}%* U+222A
+\DeclareTextCommand{\textint}{L8U}{∫}%* U+222B
+\DeclareTextCommand{\textiint}{L8U}{∬}%* U+222C
+\DeclareTextCommand{\textiiint}{L8U}{∭}%* U+222D
+\DeclareTextCommand{\textoint}{L8U}{∮}%* U+222E
+\DeclareTextCommand{\textoiint}{L8U}{∯}%* U+222F
+%
+\DeclareTextCommand{\textointclockwise}{L8U}{∲}%* U+2232
+\DeclareTextCommand{\textointctrclockwise}{L8U}{∳}%* U+2233
+\DeclareTextCommand{\texttherefore}{L8U}{∴}%* U+2234
+\DeclareTextCommand{\textbecause}{L8U}{∵}%* U+2235
+\DeclareTextCommand{\textvdotdot}{L8U}{∶}%* U+2236
+\DeclareTextCommand{\textsquaredots}{L8U}{∷}%* U+2237
+\DeclareTextCommand{\textdotminus}{L8U}{∸}%* U+2238
+\DeclareTextCommand{\texteqcolon}{L8U}{∹}%* U+2239
+%
+\DeclareTextCommand{\textsim}{L8U}{∼}%* U+223C
+\DeclareTextCommand{\textbacksim}{L8U}{∽}%* U+223D
+\DeclareTextCommand{\textnbacksim}{L8U}{∽̸}%* U+223D U+0338
+\DeclareTextCommand{\textwr}{L8U}{≀}%* U+2240
+\DeclareTextCommand{\textnsim}{L8U}{≁}%* U+2241
+\DeclareTextCommand{\texteqsim}{L8U}{≂}%* U+2242
+\DeclareTextCommand{\textneqsim}{L8U}{≂̸}%* U+2242 U+0338
+\DeclareTextCommand{\textsimeq}{L8U}{≃}%* U+2243
+\DeclareTextCommand{\textnsimeq}{L8U}{≄}%* U+2244
+\DeclareTextCommand{\textcong}{L8U}{≅}%* U+2245
+%
+\DeclareTextCommand{\textncong}{L8U}{≇}%* U+2247
+\DeclareTextCommand{\textapprox}{L8U}{≈}%* U+2248
+\DeclareTextCommand{\textnapprox}{L8U}{≉}%* U+2249
+\DeclareTextCommand{\textapproxeq}{L8U}{≊}%* U+224A
+\DeclareTextCommand{\textnapproxeq}{L8U}{≊̸}%* U+224A U+0338
+\DeclareTextCommand{\texttriplesim}{L8U}{≋}%* U+224B
+\DeclareTextCommand{\textntriplesim}{L8U}{≋̸}%* U+224B U+0338
+\DeclareTextCommand{\textbackcong}{L8U}{≌}%* U+224C
+\DeclareTextCommand{\textnbackcong}{L8U}{≌̸}%* U+224C U+0338
+\DeclareTextCommand{\textasymp}{L8U}{≍}%* U+224D
+\DeclareTextCommand{\textnasymp}{L8U}{≭}%* U+224D U+0338
+\DeclareTextCommand{\textBumpeq}{L8U}{≎}%* U+224E
+\DeclareTextCommand{\textnBumpeq}{L8U}{≎̸}%* U+224E U+0338
+\DeclareTextCommand{\textbumpeq}{L8U}{≏}%* U+224F
+\DeclareTextCommand{\textnbumpeq}{L8U}{≏̸}%* U+224F U+0338
+\DeclareTextCommand{\textdoteq}{L8U}{≐}%* U+2250
+\DeclareTextCommand{\textndoteq}{L8U}{≐̸}%* U+2250 U+0338
+\DeclareTextCommand{\textdoteqdot}{L8U}{≑}%* U+2251
+\DeclareTextCommand{\textnDoteq}{L8U}{≑̸}%* U+2251 U+0338
+\DeclareTextCommand{\textfallingdoteq}{L8U}{≒}%* U+2252
+\DeclareTextCommand{\textnfallingdoteq}{L8U}{≒̸}%* U+2252 U+0338
+\DeclareTextCommand{\textrisingdoteq}{L8U}{≓}%* U+2253
+\DeclareTextCommand{\textnrisingdoteq}{L8U}{≓̸}%* U+2253 U+0338
+\DeclareTextCommand{\textcolonequals}{L8U}{≔}%* U+2254
+\DeclareTextCommand{\textequalscolon}{L8U}{≕}%* U+2255
+\DeclareTextCommand{\texteqcirc}{L8U}{≖}%* U+2256
+\DeclareTextCommand{\textneqcirc}{L8U}{≖̸}%* U+2256 U+0338
+\DeclareTextCommand{\textcirceq}{L8U}{≗}%* U+2257
+\DeclareTextCommand{\textncirceq}{L8U}{≗̸}%* U+2257 U+0338
+%
+\DeclareTextCommand{\texthateq}{L8U}{≙}%* U+2259
+\DeclareTextCommand{\textnhateq}{L8U}{≙̸}%* U+2259 U+0338
+%
+\DeclareTextCommand{\texttriangleeq}{L8U}{≜}%* U+225C
+%
+\DeclareTextCommand{\textneq}{L8U}{≠}%* U+2260
+\DeclareTextCommand{\textne}{L8U}{≠}%* U+2260
+\DeclareTextCommand{\textequiv}{L8U}{≡}%* U+2261
+\DeclareTextCommand{\textnequiv}{L8U}{≢}%* U+2262
+%
+\DeclareTextCommand{\textleq}{L8U}{≤}%* U+2264
+\DeclareTextCommand{\textle}{L8U}{≤}%* U+2264
+\DeclareTextCommand{\textgeq}{L8U}{≥}%* U+2265
+\DeclareTextCommand{\textge}{L8U}{≥}%* U+2265
+\DeclareTextCommand{\textleqq}{L8U}{≦}%* U+2266
+\DeclareTextCommand{\textnleqq}{L8U}{≦̸}%* U+2266 U+0338
+\DeclareTextCommand{\textgeqq}{L8U}{≧}%* U+2267
+\DeclareTextCommand{\textngeqq}{L8U}{≧̸}%* U+2267 U+0338
+\DeclareTextCommand{\textlneqq}{L8U}{≨}%* U+2268
+\DeclareTextCommand{\textgneqq}{L8U}{≩}%* U+2269
+\DeclareTextCommand{\textll}{L8U}{≪}%* U+226A
+\DeclareTextCommand{\textnll}{L8U}{≪̸}%* U+226A U+0338
+\DeclareTextCommand{\textgg}{L8U}{≫}%* U+226B
+\DeclareTextCommand{\textngg}{L8U}{≫̸}%* U+226B U+0338
+\DeclareTextCommand{\textbetween}{L8U}{≬}%* U+226C
+%
+\DeclareTextCommand{\textnless}{L8U}{≮}%* U+226E
+\DeclareTextCommand{\textngtr}{L8U}{≯}%* U+226F
+\DeclareTextCommand{\textnleq}{L8U}{≰}%* U+2270
+\DeclareTextCommand{\textngeq}{L8U}{≱}%* U+2271
+\DeclareTextCommand{\textlesssim}{L8U}{≲}%* U+2272
+\DeclareTextCommand{\textgtrsim}{L8U}{≳}%* U+2273
+\DeclareTextCommand{\textnlesssim}{L8U}{≴}%* U+2274
+\DeclareTextCommand{\textngtrsim}{L8U}{≵}%* U+2275
+\DeclareTextCommand{\textlessgtr}{L8U}{≶}%* U+2276
+\DeclareTextCommand{\textgtrless}{L8U}{≷}%* U+2277
+\DeclareTextCommand{\textngtrless}{L8U}{≸}%* U+2278
+\DeclareTextCommand{\textnlessgtr}{L8U}{≹}%* U+2279
+\DeclareTextCommand{\textprec}{L8U}{≺}%* U+227A
+\DeclareTextCommand{\textsucc}{L8U}{≻}%* U+227B
+\DeclareTextCommand{\textpreccurlyeq}{L8U}{≼}%* U+227C
+\DeclareTextCommand{\textsucccurlyeq}{L8U}{≽}%* U+227D
+\DeclareTextCommand{\textprecsim}{L8U}{≾}%* U+227E
+\DeclareTextCommand{\textnprecsim}{L8U}{≾̸}%* U+227E U+0338
+\DeclareTextCommand{\textsuccsim}{L8U}{≿}%* U+227F
+\DeclareTextCommand{\textnsuccsim}{L8U}{≿̸}%* U+227F U+0338
+\DeclareTextCommand{\textnprec}{L8U}{⊀}%* U+2280
+\DeclareTextCommand{\textnsucc}{L8U}{⊁}%* U+2281
+\DeclareTextCommand{\textsubset}{L8U}{⊂}%* U+2282
+\DeclareTextCommand{\textsupset}{L8U}{⊃}%* U+2283
+\DeclareTextCommand{\textnsubset}{L8U}{⊄}%* U+2284
+\DeclareTextCommand{\textnsupset}{L8U}{⊅}%* U+2285
+\DeclareTextCommand{\textsubseteq}{L8U}{⊆}%* U+2286
+\DeclareTextCommand{\textsupseteq}{L8U}{⊇}%* U+2287
+\DeclareTextCommand{\textnsubseteq}{L8U}{⊈}%* U+2288
+\DeclareTextCommand{\textnsupseteq}{L8U}{⊉}%* U+2289
+\DeclareTextCommand{\textsubsetneq}{L8U}{⊊}%* U+228A
+\DeclareTextCommand{\textsupsetneq}{L8U}{⊋}%* U+228B
+%
+\DeclareTextCommand{\textcupdot}{L8U}{⊍}%* U+228D
+\DeclareTextCommand{\textcupplus}{L8U}{⊎}%* U+228E
+\DeclareTextCommand{\textsqsubset}{L8U}{⊏}%* U+228F
+\DeclareTextCommand{\textnsqsubset}{L8U}{⊏̸}%* U+228F U+0338
+\DeclareTextCommand{\textsqsupset}{L8U}{⊐}%* U+2290
+\DeclareTextCommand{\textnsqsupset}{L8U}{⊐̸}%* U+2290 U+0338
+\DeclareTextCommand{\textsqsubseteq}{L8U}{⊑}%* U+2291
+\DeclareTextCommand{\textnsqsubseteq}{L8U}{⋢}%* U+2291 U+0338
+\DeclareTextCommand{\textsqsupseteq}{L8U}{⊒}%* U+2292
+\DeclareTextCommand{\textnsqsupseteq}{L8U}{⋣}%* U+2292 U+0338
+\DeclareTextCommand{\textsqcap}{L8U}{⊓}%* U+2293
+\DeclareTextCommand{\textsqcup}{L8U}{⊔}%* U+2294
+\DeclareTextCommand{\textoplus}{L8U}{⊕}%* U+2295
+\DeclareTextCommand{\textominus}{L8U}{⊖}%* U+2296
+\DeclareTextCommand{\textotimes}{L8U}{⊗}%* U+2297
+\DeclareTextCommand{\textoslash}{L8U}{⊘}%* U+2298
+\DeclareTextCommand{\textodot}{L8U}{⊙}%* U+2299
+\DeclareTextCommand{\textcircledcirc}{L8U}{⊚}%* U+229A
+\DeclareTextCommand{\textcircledast}{L8U}{⊛}%* U+229B
+%
+\DeclareTextCommand{\textcircleddash}{L8U}{⊝}%* U+229D
+\DeclareTextCommand{\textboxplus}{L8U}{⊞}%* U+229E
+\DeclareTextCommand{\textboxminus}{L8U}{⊟}%* U+229F
+\DeclareTextCommand{\textboxtimes}{L8U}{⊠}%* U+22A0
+\DeclareTextCommand{\textboxdot}{L8U}{⊡}%* U+22A1
+\DeclareTextCommand{\textvdash}{L8U}{⊢}%* U+22A2
+\DeclareTextCommand{\textdashv}{L8U}{⊣}%* U+22A3
+\DeclareTextCommand{\textndashv}{L8U}{⊣̸}%* U+22A3 U+0338
+\DeclareTextCommand{\texttop}{L8U}{⊤}%* U+22A4
+\DeclareTextCommand{\textndownvdash}{L8U}{⊤̸}%* U+22A4 U+0338
+\DeclareTextCommand{\textbot}{L8U}{⊥}%* U+22A5
+\DeclareTextCommand{\textnupvdash}{L8U}{⊥̸}%* U+22A5 U+0338
+%
+\DeclareTextCommand{\textvDash}{L8U}{⊨}%* U+22A8
+\DeclareTextCommand{\textVdash}{L8U}{⊩}%* U+22A9
+\DeclareTextCommand{\textVvdash}{L8U}{⊪}%* U+22AA
+\DeclareTextCommand{\textnVvash}{L8U}{⊪̸}%* U+22AA U+0338
+\DeclareTextCommand{\textVDash}{L8U}{⊫}%* U+22AB
+\DeclareTextCommand{\textnvdash}{L8U}{⊬}%* U+22AC
+\DeclareTextCommand{\textnvDash}{L8U}{⊭}%* U+22AD
+\DeclareTextCommand{\textnVdash}{L8U}{⊮}%* U+22AE
+\DeclareTextCommand{\textnVDash}{L8U}{⊯}%* U+22AF
+%
+\DeclareTextCommand{\textlhd}{L8U}{⊲}%* U+22B2
+\DeclareTextCommand{\textrhd}{L8U}{⊳}%* U+22B3
+\DeclareTextCommand{\textunlhd}{L8U}{⊴}%* U+22B4
+\DeclareTextCommand{\textunrhd}{L8U}{⊵}%* U+22B5
+\DeclareTextCommand{\textmultimapdotbothA}{L8U}{⊶}%* U+22B6
+\DeclareTextCommand{\textmultimapdotbothB}{L8U}{⊷}%* U+22B7
+\DeclareTextCommand{\textmultimap}{L8U}{⊸}%* U+22B8
+%
+\DeclareTextCommand{\textveebar}{L8U}{⊻}%* U+22BB
+\DeclareTextCommand{\textbarwedge}{L8U}{⊼}%* U+22BC
+%
+\DeclareTextCommand{\textstar}{L8U}{⋆}%* U+22C6
+\DeclareTextCommand{\textdivideontimes}{L8U}{⋇}%* U+22C7
+\DeclareTextCommand{\textbowtie}{L8U}{⋈}%* U+22C8
+\DeclareTextCommand{\textltimes}{L8U}{⋉}%* U+22C9
+\DeclareTextCommand{\textrtimes}{L8U}{⋊}%* U+22CA
+\DeclareTextCommand{\textleftthreetimes}{L8U}{⋋}%* U+22CB
+\DeclareTextCommand{\textrightthreetimes}{L8U}{⋌}%* U+22CC
+\DeclareTextCommand{\textbacksimeq}{L8U}{⋍}%* U+22CD
+\DeclareTextCommand{\textnbacksimeq}{L8U}{⋍̸}%* U+22CD U+0338
+\DeclareTextCommand{\textcurlyvee}{L8U}{⋎}%* U+22CE
+\DeclareTextCommand{\textcurlywedge}{L8U}{⋏}%* U+22CF
+\DeclareTextCommand{\textSubset}{L8U}{⋐}%* U+22D0
+\DeclareTextCommand{\textnSubset}{L8U}{⋐̸}%* U+22D0 U+0338
+\DeclareTextCommand{\textSupset}{L8U}{⋑}%* U+22D1
+\DeclareTextCommand{\textnSupset}{L8U}{⋑̸}%* U+22D1 U+0338
+\DeclareTextCommand{\textCap}{L8U}{⋒}%* U+22D2
+\DeclareTextCommand{\textCup}{L8U}{⋓}%* U+22D3
+\DeclareTextCommand{\textpitchfork}{L8U}{⋔}%* U+22D4
+%
+\DeclareTextCommand{\textlessdot}{L8U}{⋖}%* U+22D6
+\DeclareTextCommand{\textgtrdot}{L8U}{⋗}%* U+22D7
+\DeclareTextCommand{\textlll}{L8U}{⋘}%* U+22D8
+\DeclareTextCommand{\textggg}{L8U}{⋙}%* U+22D9
+\DeclareTextCommand{\textlesseqgtr}{L8U}{⋚}%* U+22DA
+\DeclareTextCommand{\textgtreqless}{L8U}{⋛}%* U+22DB
+\DeclareTextCommand{\textcurlyeqprec}{L8U}{⋞}%* U+22DE
+\DeclareTextCommand{\textncurlyeqprec}{L8U}{⋞̸}%* U+22DE U+0338
+\DeclareTextCommand{\textcurlyeqsucc}{L8U}{⋟}%* U+22DF
+\DeclareTextCommand{\textncurlyeqsucc}{L8U}{⋟̸}%* U+22DF U+0338
+\DeclareTextCommand{\textnpreccurlyeq}{L8U}{⋠}%* U+22E0
+\DeclareTextCommand{\textnsucccurlyeq}{L8U}{⋡}%* U+22E1
+\DeclareTextCommand{\textnqsubseteq}{L8U}{⋢}%* U+22E2
+\DeclareTextCommand{\textnqsupseteq}{L8U}{⋣}%* U+22E3
+\DeclareTextCommand{\textsqsubsetneq}{L8U}{⋤}%* U+22E4
+\DeclareTextCommand{\textsqsupsetneq}{L8U}{⋥}%* U+22E5
+\DeclareTextCommand{\textlnsim}{L8U}{⋦}%* U+22E6
+\DeclareTextCommand{\textgnsim}{L8U}{⋧}%* U+22E7
+\DeclareTextCommand{\textprecnsim}{L8U}{⋨}%* U+22E8
+\DeclareTextCommand{\textsuccnsim}{L8U}{⋩}%* U+22E9
+\DeclareTextCommand{\textntriangleleft}{L8U}{⋪}%* U+22EA
+\DeclareTextCommand{\textntriangleright}{L8U}{⋫}%* U+22EB
+\DeclareTextCommand{\textntrianglelefteq}{L8U}{⋬}%* U+22EC
+\DeclareTextCommand{\textntrianglerighteq}{L8U}{⋭}%* U+22ED
+\DeclareTextCommand{\textvdots}{L8U}{⋮}%* U+22EE
+\DeclareTextCommand{\textcdots}{L8U}{⋯}%* U+22EF
+\DeclareTextCommand{\textudots}{L8U}{⋰}%* U+22F0
+\DeclareTextCommand{\textddots}{L8U}{⋱}%* U+22F1
+\DeclareTextCommand{\textbarin}{L8U}{⋶}%* U+22F6
+
+\fi % end of \ifmathxmp
+
+%
+% Miscellaneous technical Ux2300 –
+%
+\DeclareTextCommand{\textdiameter}{L8U}{⌀}%* U+2300
+%
+\DeclareTextCommand{\textbackneg}{L8U}{⌐}%* U+2310
+\DeclareTextCommand{\textwasylozenge}{L8U}{⌑}%* U+2311
+%
+\DeclareTextCommand{\textinvbackneg}{L8U}{⌙}%* U+2319
+\DeclareTextCommand{\textclock}{L8U}{⌚}%* U+231A
+%
+\DeclareTextCommand{\textulcorner}{L8U}{⌜}%* U+231C
+\DeclareTextCommand{\texturcorner}{L8U}{⌝}%* U+231D
+\DeclareTextCommand{\textllcorner}{L8U}{⌞}%* U+231E
+\DeclareTextCommand{\textlrcorner}{L8U}{⌟}%* U+231F
+%
+\DeclareTextCommand{\textfrown}{L8U}{⌢}%* U+2322
+\DeclareTextCommand{\textsmile}{L8U}{⌣}%* U+2323
+%
+\DeclareTextCommand{\textKeyboard}{L8U}{⌨}%* U+2328
+\DeclareTextCommand{\textlangle}{L8U}{〈}%* U+2329
+\DeclareTextCommand{\textrangle}{L8U}{〉}%* U+232A
+%
+\DeclareTextCommand{\textAPLinv}{L8U}{⌹}%* U+2339
+%
+\DeclareTextCommand{\textTumbler}{L8U}{⌼}%* U+233C
+\DeclareTextCommand{\textstmaryrdbaro}{L8U}{⌽}% U+233D
+%
+\DeclareTextCommand{\textnotslash}{L8U}{⌿}%* U+233F
+\DeclareTextCommand{\textnotbackslash}{L8U}{⍀}%* U+2340
+%
+\DeclareTextCommand{\textboxbackslash}{L8U}{⍂}%* U+2342
+%
+\DeclareTextCommand{\textAPLleftarrowbox}{L8U}{⍇}%* U+2347
+\DeclareTextCommand{\textAPLrightarrowbox}{L8U}{⍈}%* U+2348
+%
+\DeclareTextCommand{\textAPLuparrowbox}{L8U}{⍐}%* U+2350
+%
+\DeclareTextCommand{\textAPLdownarrowbox}{L8U}{⍗}%* U+2357
+%
+\DeclareTextCommand{\textAPLinput}{L8U}{⍞}%* U+235E
+%
+\DeclareTextCommand{\textRequest}{L8U}{⍰}%* U+2370
+%
+\DeclareTextCommand{\textBeam}{L8U}{⎓}%* U+2393
+\DeclareTextCommand{\texthexagon}{L8U}{⎔}%* U+2394
+\DeclareTextCommand{\textAPLbox}{L8U}{⎕}%* U+2395
+%
+\DeclareTextCommand{\textForwardToIndex}{L8U}{^^e2^^8f^^ad}%* U+23ED
+\DeclareTextCommand{\textRewindToIndex}{L8U}{^^e2^^8f^^ae}%* U+23EE
+
+% already declared
+%\DeclareTextCommand{\textblank}{L8U}{␢}% U+2422
+%\DeclareTextCommand{\textvisiblespace}{L8U}{␣}% U+2423
+%\DeclareTextCommand{\textbbslash}{L8U}{⑊}%* U+244A
+
+%
+% Enclosed Alphanumerics Ux2460 – Ux24FF
+%
+\DeclareTextCommand{\textcircled}{L8U}[1]{#1⃝}%e2839d
+%
+\DeclareTextCompositeCommand{\textcircled}{L8U}{1}{①}
+\DeclareTextCompositeCommand{\textcircled}{L8U}{2}{②}
+\DeclareTextCompositeCommand{\textcircled}{L8U}{3}{③}
+\DeclareTextCompositeCommand{\textcircled}{L8U}{4}{④}
+\DeclareTextCompositeCommand{\textcircled}{L8U}{5}{⑤}
+\DeclareTextCompositeCommand{\textcircled}{L8U}{6}{⑥}
+\DeclareTextCompositeCommand{\textcircled}{L8U}{7}{⑦}
+\DeclareTextCompositeCommand{\textcircled}{L8U}{8}{⑧}
+\DeclareTextCompositeCommand{\textcircled}{L8U}{9}{⑨}
+\DeclareTextCompositeCommand{\textcircled}{L8U}{10}{⑩}
+\DeclareTextCompositeCommand{\textcircled}{L8U}{11}{⑪}
+\DeclareTextCompositeCommand{\textcircled}{L8U}{12}{⑫}
+\DeclareTextCompositeCommand{\textcircled}{L8U}{13}{⑬}
+\DeclareTextCompositeCommand{\textcircled}{L8U}{14}{⑭}
+\DeclareTextCompositeCommand{\textcircled}{L8U}{15}{⑮}
+\DeclareTextCompositeCommand{\textcircled}{L8U}{16}{⑯}
+\DeclareTextCompositeCommand{\textcircled}{L8U}{17}{⑰}
+\DeclareTextCompositeCommand{\textcircled}{L8U}{18}{⑱}
+\DeclareTextCompositeCommand{\textcircled}{L8U}{19}{⑲}
+\DeclareTextCompositeCommand{\textcircled}{L8U}{20}{⑳}
+% Ux24B6 – Ux24EA
+\DeclareTextCompositeCommand{\textcircled}{L8U}{A}{Ⓐ}
+\DeclareTextCommand{\textCircledA}{L8U}{Ⓐ}%* U+24B6
+\DeclareTextCompositeCommand{\textcircled}{L8U}{B}{Ⓑ}
+\DeclareTextCompositeCommand{\textcircled}{L8U}{C}{Ⓒ}
+\DeclareTextCompositeCommand{\textcircled}{L8U}{D}{Ⓓ}
+\DeclareTextCompositeCommand{\textcircled}{L8U}{E}{Ⓔ}
+\DeclareTextCompositeCommand{\textcircled}{L8U}{F}{Ⓕ}
+\DeclareTextCommand{\textCleaningF}{L8U}{Ⓕ}%* U+24BB
+\DeclareTextCommand{\textCleaningFF}{L8U}{Ⓕ̲}%* U+24BB U+0332
+\DeclareTextCompositeCommand{\textcircled}{L8U}{G}{Ⓖ}
+\DeclareTextCompositeCommand{\textcircled}{L8U}{H}{Ⓗ}
+\DeclareTextCompositeCommand{\textcircled}{L8U}{I}{Ⓘ}
+\DeclareTextCompositeCommand{\textcircled}{L8U}{J}{Ⓙ}
+\DeclareTextCompositeCommand{\textcircled}{L8U}{K}{Ⓚ}
+\DeclareTextCompositeCommand{\textcircled}{L8U}{L}{Ⓛ}
+\DeclareTextCompositeCommand{\textcircled}{L8U}{M}{Ⓜ}
+\DeclareTextCompositeCommand{\textcircled}{L8U}{N}{Ⓝ}
+\DeclareTextCompositeCommand{\textcircled}{L8U}{O}{Ⓞ}
+\DeclareTextCompositeCommand{\textcircled}{L8U}{P}{Ⓟ}
+\DeclareTextCommand{\textCleaningP}{L8U}{Ⓟ}%* U+24C5
+\DeclareTextCommand{\textCleaningPP}{L8U}{Ⓟ̲}%* U+24C5 U+0332
+\DeclareTextCompositeCommand{\textcircled}{L8U}{Q}{Ⓠ}
+\DeclareTextCompositeCommand{\textcircled}{L8U}{R}{Ⓡ}
+\DeclareTextCompositeCommand{\textcircled}{L8U}{S}{Ⓢ}
+\DeclareTextCommand{\textcircledS}{L8U}{Ⓢ}
+\DeclareTextCompositeCommand{\textcircled}{L8U}{T}{Ⓣ}
+\DeclareTextCompositeCommand{\textcircled}{L8U}{U}{Ⓤ}
+\DeclareTextCompositeCommand{\textcircled}{L8U}{V}{Ⓥ}
+\DeclareTextCompositeCommand{\textcircled}{L8U}{W}{Ⓦ}
+\DeclareTextCompositeCommand{\textcircled}{L8U}{X}{Ⓧ}
+\DeclareTextCompositeCommand{\textcircled}{L8U}{Y}{Ⓨ}
+\DeclareTextCompositeCommand{\textcircled}{L8U}{Z}{Ⓩ}
+\DeclareTextCompositeCommand{\textcircled}{L8U}{a}{ⓐ}
+\DeclareTextCompositeCommand{\textcircled}{L8U}{b}{ⓑ}
+\DeclareTextCompositeCommand{\textcircled}{L8U}{c}{ⓒ}
+\DeclareTextCompositeCommand{\textcircled}{L8U}{d}{ⓓ}
+\DeclareTextCompositeCommand{\textcircled}{L8U}{e}{ⓔ}
+\DeclareTextCompositeCommand{\textcircled}{L8U}{f}{ⓕ}
+\DeclareTextCompositeCommand{\textcircled}{L8U}{g}{ⓖ}
+\DeclareTextCompositeCommand{\textcircled}{L8U}{h}{ⓗ}
+\DeclareTextCompositeCommand{\textcircled}{L8U}{i}{ⓘ}
+\DeclareTextCompositeCommand{\textcircled}{L8U}{j}{ⓙ}
+\DeclareTextCompositeCommand{\textcircled}{L8U}{k}{ⓚ}
+\DeclareTextCompositeCommand{\textcircled}{L8U}{l}{ⓛ}
+\DeclareTextCompositeCommand{\textcircled}{L8U}{m}{ⓜ}
+\DeclareTextCompositeCommand{\textcircled}{L8U}{n}{ⓝ}
+\DeclareTextCompositeCommand{\textcircled}{L8U}{o}{ⓞ}
+\DeclareTextCompositeCommand{\textcircled}{L8U}{p}{ⓟ}
+\DeclareTextCompositeCommand{\textcircled}{L8U}{q}{ⓠ}
+\DeclareTextCompositeCommand{\textcircled}{L8U}{r}{ⓡ}
+\DeclareTextCompositeCommand{\textcircled}{L8U}{s}{ⓢ}
+\DeclareTextCompositeCommand{\textcircled}{L8U}{t}{ⓣ}
+\DeclareTextCompositeCommand{\textcircled}{L8U}{u}{ⓤ}
+\DeclareTextCompositeCommand{\textcircled}{L8U}{v}{ⓥ}
+\DeclareTextCompositeCommand{\textcircled}{L8U}{w}{ⓦ}
+\DeclareTextCompositeCommand{\textcircled}{L8U}{x}{ⓧ}
+\DeclareTextCompositeCommand{\textcircled}{L8U}{y}{ⓨ}
+\DeclareTextCompositeCommand{\textcircled}{L8U}{z}{ⓩ}
+\DeclareTextCompositeCommand{\textcircled}{L8U}{0}{⓪}
+%
+% Ux3251 – Ux325F
+\DeclareTextCompositeCommand{\textcircled}{L8U}{21}{㉑}
+\DeclareTextCompositeCommand{\textcircled}{L8U}{22}{㉒}
+\DeclareTextCompositeCommand{\textcircled}{L8U}{23}{㉓}
+\DeclareTextCompositeCommand{\textcircled}{L8U}{24}{㉔}
+\DeclareTextCompositeCommand{\textcircled}{L8U}{25}{㉕}
+\DeclareTextCompositeCommand{\textcircled}{L8U}{26}{㉖}
+\DeclareTextCompositeCommand{\textcircled}{L8U}{27}{㉗}
+\DeclareTextCompositeCommand{\textcircled}{L8U}{28}{㉘}
+\DeclareTextCompositeCommand{\textcircled}{L8U}{29}{㉙}
+\DeclareTextCompositeCommand{\textcircled}{L8U}{30}{㉚}
+\DeclareTextCompositeCommand{\textcircled}{L8U}{31}{㉛}
+\DeclareTextCompositeCommand{\textcircled}{L8U}{32}{㉜}
+\DeclareTextCompositeCommand{\textcircled}{L8U}{33}{㉝}
+\DeclareTextCompositeCommand{\textcircled}{L8U}{34}{㉞}
+\DeclareTextCompositeCommand{\textcircled}{L8U}{35}{㉟}
+% Ux32B1 – Ux32BF
+\DeclareTextCompositeCommand{\textcircled}{L8U}{36}{㊱}
+\DeclareTextCompositeCommand{\textcircled}{L8U}{37}{㊲}
+\DeclareTextCompositeCommand{\textcircled}{L8U}{38}{㊳}
+\DeclareTextCompositeCommand{\textcircled}{L8U}{39}{㊴}
+\DeclareTextCompositeCommand{\textcircled}{L8U}{40}{㊵}
+\DeclareTextCompositeCommand{\textcircled}{L8U}{41}{㊶}
+\DeclareTextCompositeCommand{\textcircled}{L8U}{42}{㊷}
+\DeclareTextCompositeCommand{\textcircled}{L8U}{43}{㊸}
+\DeclareTextCompositeCommand{\textcircled}{L8U}{44}{㊹}
+\DeclareTextCompositeCommand{\textcircled}{L8U}{45}{㊺}
+\DeclareTextCompositeCommand{\textcircled}{L8U}{46}{㊻}
+\DeclareTextCompositeCommand{\textcircled}{L8U}{47}{㊼}
+\DeclareTextCompositeCommand{\textcircled}{L8U}{48}{㊽}
+\DeclareTextCompositeCommand{\textcircled}{L8U}{49}{㊾}
+\DeclareTextCompositeCommand{\textcircled}{L8U}{50}{㊿}
+
+%
+% Box drawing Ux2500 – Ux2575
+% Geometric shapes Ux25A0 – Ux25FF
+
+\DeclareTextCommand{\textCuttingLine}{L8U}{┄}%* U+2504
+%
+\DeclareTextCommand{\textUParrow}{L8U}{▲}%* U+25B2
+\DeclareTextCommand{\textbigtriangleup}{L8U}{△}%* U+25B3
+%
+\DeclareTextCommand{\textForward}{L8U}{▶}%* U+25B6
+\DeclareTextCommand{\texttriangleright}{L8U}{▷}%* U+25B7
+%
+\DeclareTextCommand{\textRHD}{L8U}{►}%* U+25BA
+%
+\DeclareTextCommand{\textDOWNarrow}{L8U}{▼}%* U+25BC
+\DeclareTextCommand{\textbigtriangledown}{L8U}{▽}%* U+25BD
+%
+\DeclareTextCommand{\textRewind}{L8U}{◀}%* U+25C0
+\DeclareTextCommand{\texttriangleleft}{L8U}{◁}%* U+25C1
+%
+\DeclareTextCommand{\textLHD}{L8U}{◄}%* U+25C4
+%
+\DeclareTextCommand{\textdiamond}{L8U}{◇}%* U+25C7
+%
+\DeclareTextCommand{\dotextlozenge}{L8U}{◊}%* U+25CA
+%
+\DeclareTextCommand{\textLEFTCIRCLE}{L8U}{◖}%* U+25D6
+\DeclareTextCommand{\textRIGHTCIRCLE}{L8U}{◗}%* U+25D7
+%
+\DeclareTextCommand{\textopenbullet}{L8U}{◦}%* U+25E6
+%
+\DeclareTextCommand{\textboxbar}{L8U}{◫}%* U+25EB
+%
+\DeclareTextCommand{\textbigcircle}{L8U}{◯}%* U+25EF
+
+%
+% Miscellaneous symbols (Dingbats)
+%
+
+\DeclareTextCommand{\textCloud}{L8U}{☁}%* U+2601
+%
+\DeclareTextCommand{\textFiveStar}{L8U}{★}%* U+2605
+\DeclareTextCommand{\textFiveStarOpen}{L8U}{☆}%* U+2606
+%
+\DeclareTextCommand{\textPhone}{L8U}{☎}%* U+260E
+%
+\DeclareTextCommand{\textboxempty}{L8U}{☐}%* U+2610
+\DeclareTextCommand{\textCheckedbox}{L8U}{☑}%* U+2611
+\DeclareTextCommand{\textCrossedbox}{L8U}{☒}%* U+2612
+%
+\DeclareTextCommand{\textCoffeecup}{L8U}{☕}%* U+2615
+%
+\DeclareTextCommand{\textHandCuffLeft}{L8U}{☚}%* U+261A
+\DeclareTextCommand{\textHandCuffRight}{L8U}{☛}%* U+261B
+\DeclareTextCommand{\textHandLeft}{L8U}{☜}%* U+261C
+%
+\DeclareTextCommand{\textHandRight}{L8U}{☞}%* U+261E
+%
+\DeclareTextCommand{\textRadioactivity}{L8U}{☢}%* U+2622
+\DeclareTextCommand{\textBiohazard}{L8U}{☣}%* U+2623
+%
+\DeclareTextCommand{\textAnkh}{L8U}{☥}%* U+2625
+%
+\DeclareTextCommand{\textYinYang}{L8U}{☯}%* U+262F
+%
+\DeclareTextCommand{\textfrownie}{L8U}{☹}%* U+2639
+\DeclareTextCommand{\textsmiley}{L8U}{☺}%* U+263A
+\DeclareTextCommand{\textblacksmiley}{L8U}{☻}%* U+263B
+\DeclareTextCommand{\textsun}{L8U}{☼}%* U+263C
+\DeclareTextCommand{\textleftmoon}{L8U}{☽}%* U+263D
+\DeclareTextCommand{\textrightmoon}{L8U}{☾}%* U+263E
+\DeclareTextCommand{\textmercury}{L8U}{☿}%* U+263F
+\DeclareTextCommand{\textPUfemale}{L8U}{♀}% U+2640
+\DeclareTextCommand{\textearth}{L8U}{♁}%* U+2641
+\DeclareTextCommand{\textmale}{L8U}{♂}%* U+2642
+\DeclareTextCommand{\textjupiter}{L8U}{♃}%* U+2643
+\DeclareTextCommand{\textsaturn}{L8U}{♄}%* U+2644
+\DeclareTextCommand{\texturanus}{L8U}{♅}%* U+2645
+\DeclareTextCommand{\textneptune}{L8U}{♆}%* U+2646
+\DeclareTextCommand{\textpluto}{L8U}{♇}%* U+2647
+\DeclareTextCommand{\textaries}{L8U}{♈}%* U+2648
+\DeclareTextCommand{\texttaurus}{L8U}{♉}%* U+2649
+\DeclareTextCommand{\textgemini}{L8U}{♊}%* U+264A
+\DeclareTextCommand{\textcancer}{L8U}{♋}%* U+264B
+\DeclareTextCommand{\textleo}{L8U}{♌}%* U+264C
+\DeclareTextCommand{\textvirgo}{L8U}{♍}%* U+264D
+\DeclareTextCommand{\textlibra}{L8U}{♎}%* U+264E
+\DeclareTextCommand{\textscorpio}{L8U}{♏}%* U+264F
+\DeclareTextCommand{\textsagittarius}{L8U}{♐}%* U+2650
+\DeclareTextCommand{\textcapricornus}{L8U}{♑}%* U+2651
+\DeclareTextCommand{\textaquarius}{L8U}{♒}%* U+2652
+\DeclareTextCommand{\textpisces}{L8U}{♓}%* U+2653
+%
+\DeclareTextCommand{\textspadesuitblack}{L8U}{♠}% U+2660
+\DeclareTextCommand{\textheartsuitwhite}{L8U}{♡}% U+2661
+\DeclareTextCommand{\textdiamondsuitwhite}{L8U}{♢}% U+2662
+\DeclareTextCommand{\textclubsuitblack}{L8U}{♣}% U+2663
+\DeclareTextCommand{\textspadesuitwhite}{L8U}{♤}% U+2664
+\DeclareTextCommand{\textheartsuitblack}{L8U}{♥}% U+2665
+\DeclareTextCommand{\textdiamondsuitblack}{L8U}{♦}% U+2666
+\DeclareTextCommand{\textclubsuitwhite}{L8U}{♧}% U+2667
+%
+\DeclareTextCommand{\textquarternote}{L8U}{♩}%* U+2669
+\DeclareTextCommand{\textmusicalnote}{L8U}{♪}% U+266A
+\DeclareTextCommand{\texttwonotes}{L8U}{♫}%* U+266B
+\DeclareTextCommand{\textsixteenthnote}{L8U}{♬}%* U+266C
+\DeclareTextCommand{\textflat}{L8U}{♭}%* U+266D
+\DeclareTextCommand{\textnatural}{L8U}{♮}%* U+266E
+\DeclareTextCommand{\textsharp}{L8U}{♯}%* U+266F
+%
+\DeclareTextCommand{\textrecycle}{L8U}{♲}%* U+2672
+%
+\DeclareTextCommand{\textWheelchair}{L8U}{♿}%* U+267F
+%
+\DeclareTextCommand{\textFlag}{L8U}{⚑}%* U+2691
+\DeclareTextCommand{\textMineSign}{L8U}{⚒}%* U+2692
+%
+\DeclareTextCommand{\textdsmilitary}{L8U}{⚔}%* U+2694
+\DeclareTextCommand{\textdsmedical}{L8U}{⚕}%* U+2695
+\DeclareTextCommand{\textdsjuridical}{L8U}{⚖}%* U+2696
+\DeclareTextCommand{\textdschemical}{L8U}{⚗}%* U+2697
+\DeclareTextCommand{\textdsbiological}{L8U}{⚘}%* U+2698
+%
+\DeclareTextCommand{\textdscommercial}{L8U}{⚚}%* U+269A
+%
+\DeclareTextCommand{\textmanstar}{L8U}{^^e2^^9a^^9d}%* U+269D
+%
+\DeclareTextCommand{\textdanger}{L8U}{⚠}%* U+26A0
+%
+\DeclareTextCommand{\textFemaleFemale}{L8U}{⚢}%* U+26A2
+\DeclareTextCommand{\textMaleMale}{L8U}{⚣}%* U+26A3
+\DeclareTextCommand{\textFemaleMale}{L8U}{⚤}%* U+26A4
+\DeclareTextCommand{\textHermaphrodite}{L8U}{⚥}%* U+26A5
+%
+\DeclareTextCommand{\textNeutral}{L8U}{⚪}%* U+26AA
+%
+\DeclareTextCommand{\textmarried}{L8U}{⚭}% U+26AD
+\DeclareTextCommand{\textdivorced}{L8U}{⚮}% U+26AE
+%
+\DeclareTextCommand{\textPUuncrfemale}{L8U}{⚲}% U+26B2
+%
+\DeclareTextCommand{\texthexstar}{L8U}{^^e2^^9a^^b9}%* U+26B9
+\DeclareTextCommand{\textSoccerBall}{L8U}{^^e2^^9a^^bd}% U+26BD
+\DeclareTextCommand{\textSunCload}{L8U}{^^e2^^9b^^85}%* U+26C5
+\DeclareTextCommand{\textRain}{L8U}{^^e2^^9b^^86}%* U+26C6
+\DeclareTextCommand{\textnoway}{L8U}{^^e2^^9b^^94}%* U+26D4
+\DeclareTextCommand{\textMountain}{L8U}{^^e2^^9b^^b0}%* U+26F0
+\DeclareTextCommand{\textTent}{L8U}{^^e2^^9b^^ba}%* U+26FA
+%
+% Dingbats
+%
+\DeclareTextCommand{\textScissorRightBrokenBottom}{L8U}{✁}% U+2701
+\DeclareTextCommand{\textScissorRight}{L8U}{✂}%* U+2702
+\DeclareTextCommand{\textScissorRightBrokenTop}{L8U}{✃}%* U+2703
+\DeclareTextCommand{\textScissorHollowRight}{L8U}{✄}%* U+2704
+%
+\DeclareTextCommand{\textPhoneHandset}{L8U}{✆}%* U+2706
+\DeclareTextCommand{\textTape}{L8U}{✇}%* U+2707
+\DeclareTextCommand{\textPlane}{L8U}{✈}%* U+2708
+\DeclareTextCommand{\textEnvelope}{L8U}{✉}%* U+2709
+%
+\DeclareTextCommand{\textPeace}{L8U}{✌}%* U+270C
+\DeclareTextCommand{\textWritingHand}{L8U}{✍}%* U+270D
+\DeclareTextCommand{\textPencilRightDown}{L8U}{✎}%* U+270E
+\DeclareTextCommand{\textPencilRight}{L8U}{✏}%* U+270F
+\DeclareTextCommand{\textPencilRightUp}{L8U}{✐}%* U+2710
+\DeclareTextCommand{\textNibRight}{L8U}{✑}%* U+2711
+\DeclareTextCommand{\textNibSolidRight}{L8U}{✒}%* U+2712
+\DeclareTextCommand{\textCheckmark}{L8U}{✓}%* U+2713
+\DeclareTextCommand{\textCheckmarkBold}{L8U}{✔}%* U+2714
+\DeclareTextCommand{\textXSolid}{L8U}{✕}%* U+2715
+\DeclareTextCommand{\textXSolidBold}{L8U}{✖}%* U+2716
+\DeclareTextCommand{\textXSolidBrush}{L8U}{✗}%* U+2717
+%
+\DeclareTextCommand{\textPlusOutline}{L8U}{✙}%* U+2719
+\DeclareTextCommand{\textPlus}{L8U}{✚}%* U+271A
+\DeclareTextCommand{\textPlusThinCenterOpen}{L8U}{✛}%* U+271B
+\DeclareTextCommand{\textPlusCenterOpen}{L8U}{✜}%* U+271C
+\DeclareTextCommand{\textCross}{L8U}{✝}%* U+271D
+\DeclareTextCommand{\textCrossOpenShadow}{L8U}{✞}%* U+271E
+\DeclareTextCommand{\textCrossOutline}{L8U}{✟}%* U+271F
+\DeclareTextCommand{\textCrossMaltese}{L8U}{✠}%* U+2720
+\DeclareTextCommand{\textDavidStar}{L8U}{✡}%* U+2721
+\DeclareTextCommand{\textFourAsterisk}{L8U}{✢}%* U+2722
+\DeclareTextCommand{\textJackStar}{L8U}{✣}%* U+2723
+\DeclareTextCommand{\textJackStarBold}{L8U}{✤}%* U+2724
+\DeclareTextCommand{\textClowerTips}{L8U}{✥}%* U+2725
+\DeclareTextCommand{\textFourStar}{L8U}{✦}%* U+2726
+\DeclareTextCommand{\textFourStarOpen}{L8U}{✧}%* U+2727
+\DeclareTextCommand{\textFiveStarOpenCircled}{L8U}{✪}%* U+272A
+\DeclareTextCommand{\textFiveStarCenterOpen}{L8U}{✫}%* U+272B
+\DeclareTextCommand{\textFiveStarOpenDotted}{L8U}{✬}%* U+272C
+\DeclareTextCommand{\textFiveStarOutline}{L8U}{✭}%* U+272D
+\DeclareTextCommand{\textFiveStarOutlineHeavy}{L8U}{✮}%* U+272E
+\DeclareTextCommand{\textFiveStarConvex}{L8U}{✯}%* U+272F
+\DeclareTextCommand{\textFiveStarShadow}{L8U}{✰}%* U+2730
+\DeclareTextCommand{\textAsteriskBold}{L8U}{✱}%* U+2731
+\DeclareTextCommand{\textAsteriskCenterOpen}{L8U}{✲}%* U+2732
+%
+\DeclareTextCommand{\textEightStarTaper}{L8U}{✴}%* U+2734
+\DeclareTextCommand{\textEightStarConvex}{L8U}{✵}%* U+2735
+\DeclareTextCommand{\textSixStar}{L8U}{✶}%* U+2736
+\DeclareTextCommand{\textEightStar}{L8U}{✷}%* U+2737
+\DeclareTextCommand{\textEightStarBold}{L8U}{✸}%* U+2738
+\DeclareTextCommand{\textTwelveStar}{L8U}{✹}%* U+2739
+\DeclareTextCommand{\textSixteenStarLight}{L8U}{✺}%* U+273A
+\DeclareTextCommand{\textSixFlowerPetalRemoved}{L8U}{✻}%* U+273B
+\DeclareTextCommand{\textSixFlowerOpenCenter}{L8U}{✼}%* U+273C
+\DeclareTextCommand{\textAsterisk}{L8U}{✽}%* U+273D
+\DeclareTextCommand{\textSixFlowerAlternate}{L8U}{✾}%* U+273E
+\DeclareTextCommand{\textFiveFlowerPetal}{L8U}{✿}%* U+273F
+\DeclareTextCommand{\textFiveFlowerOpen}{L8U}{❀}%* U+2740
+\DeclareTextCommand{\textEightFlowerPetal}{L8U}{❁}%* U+2741
+\DeclareTextCommand{\textSunshineOpenCircled}{L8U}{❂}%* U+2742
+\DeclareTextCommand{\textSixFlowerAltPetal}{L8U}{❃}%* U+2743
+\DeclareTextCommand{\textSnowflakeChevron}{L8U}{❄}%* U+2744
+\DeclareTextCommand{\textSnowflake}{L8U}{❅}%* U+2745
+\DeclareTextCommand{\textSnowflakeChevronBold}{L8U}{❆}%* U+2746
+\DeclareTextCommand{\textSparkle}{L8U}{❇}%* U+2747
+\DeclareTextCommand{\textSparkleBold}{L8U}{❈}%* U+2748
+\DeclareTextCommand{\textAsteriskRoundedEnds}{L8U}{❉}%* U+2749
+\DeclareTextCommand{\textEightFlowerPetalRemoved}{L8U}{❊}%* U+274A
+\DeclareTextCommand{\textEightAsterisk}{L8U}{❋}%* U+274B
+%
+\DeclareTextCommand{\textCircleShadow}{L8U}{❍}%* U+274D
+%
+\DeclareTextCommand{\textSquareShadowBottomRight}{L8U}{❏}%* U+274F
+\DeclareTextCommand{\textSquareTopRight}{L8U}{❐}%* U+2750
+\DeclareTextCommand{\textSquareCastShadowBottomRight}{L8U}{❑}%* U+2751
+\DeclareTextCommand{\textSquareCastShadowTopRight}{L8U}{❒}%* U+2752
+%
+\DeclareTextCommand{\textDiamandSolid}{L8U}{❖}%* U+2756
+%
+\DeclareTextCommand{\textRectangleThin}{L8U}{❘}%* U+2758
+\DeclareTextCommand{\textRectangle}{L8U}{❙}%* U+2759
+\DeclareTextCommand{\textRectangleBold}{L8U}{❚}%* U+275A
+
+
+\ifmathxmp
+%
+% Miscellaneous Math Symbols-A
+%
+\DeclareTextCommand{\textperp}{L8U}{⟂}%* U+27C2
+\DeclareTextCommand{\textnotperp}{L8U}{⟂}%* U+27C2 U+0338
+\DeclareTextCommand{\textveedot}{L8U}{⟇}%* U+27C7
+\DeclareTextCommand{\textwedgedot}{L8U}{⟑}%* U+27D1
+\DeclareTextCommand{\textleftspoon}{L8U}{⟜}%* U+27DC
+\DeclareTextCommand{\textlbrackdbl}{L8U}{⟦}%* U+27E6
+\DeclareTextCommand{\textrbrackdbl}{L8U}{⟧}%* U+27E7
+
+%
+% Supplementary Arrows-A
+%
+\DeclareTextCommand{\textcirclearrowleft}{L8U}{⟲}%* U+27F2
+\DeclareTextCommand{\textcirclearrowright}{L8U}{⟳}%* U+27F3
+%
+\DeclareTextCommand{\textlongleftarrow}{L8U}{⟵}%* U+27F5
+\DeclareTextCommand{\textlongrightarrow}{L8U}{⟶}%* U+27F6
+\DeclareTextCommand{\textlongleftrightarrow}{L8U}{⟷}%* U+27F7
+\DeclareTextCommand{\textLongleftarrow}{L8U}{⟸}%* U+27F8
+\DeclareTextCommand{\textLongrightarrow}{L8U}{⟹}%* U+27F9
+\DeclareTextCommand{\textLongleftrightarrow}{L8U}{⟺}%* U+27FA
+%
+\DeclareTextCommand{\textlongmapsto}{L8U}{⟼}%* U+27FC
+\DeclareTextCommand{\textLongmapsfrom}{L8U}{⟽}%* U+27FD
+\DeclareTextCommand{\textLongmapsto}{L8U}{⟾}%* U+27FE
+%
+
+%
+% Supplementary Arrows-B
+%
+\DeclareTextCommand{\textnwsearrow}{L8U}{⤡}%* U+2921
+\DeclareTextCommand{\textneswarrow}{L8U}{⤢}%* U+2922
+\DeclareTextCommand{\textlhooknwarrow}{L8U}{⤣}%* U+2923
+\DeclareTextCommand{\textrhooknearrow}{L8U}{⤤}%* U+2924
+\DeclareTextCommand{\textlhooksearrow}{L8U}{⤥}%* U+2925
+\DeclareTextCommand{\textrhookswarrow}{L8U}{⤦}%* U+2926
+%
+\DeclareTextCommand{\textleadsto}{L8U}{⤳}%* U+2933
+\DeclareTextCommand{\textrcurvearrowne}{L8U}{⤴}%* U+2934
+\DeclareTextCommand{\textlcurvearrowse}{L8U}{⤵}%* U+2935
+\DeclareTextCommand{\textlcurvearrowsw}{L8U}{⤶}%* U+2936
+\DeclareTextCommand{\textrcurvearrowse}{L8U}{⤷}%* U+2937
+\DeclareTextCommand{\textlcurvearrowdown}{L8U}{⤸}%* U+2938
+\DeclareTextCommand{\textrcurvearrowdown}{L8U}{⤹}%* U+2939
+\DeclareTextCommand{\textrcurvearrowleft}{L8U}{⤺}%* U+293A
+\DeclareTextCommand{\textrcurvearrowright}{L8U}{⤻}%* U+293B
+%
+\DeclareTextCommand{\textleftrightharpoon}{L8U}{⥊}%* U+294A
+\DeclareTextCommand{\textrightleftharpoon}{L8U}{⥋}%* U+294B
+\DeclareTextCommand{\textupdownharpoonrightleft}{L8U}{⥌}%* U+294C
+\DeclareTextCommand{\textupdownharpoonleftright}{L8U}{⥍}%* U+294D
+%
+\DeclareTextCommand{\textleftleftharpoons}{L8U}{⥢}%* U+2962
+\DeclareTextCommand{\textupupharpoons}{L8U}{⥣}%* U+2963
+\DeclareTextCommand{\textrightrightharpoons}{L8U}{⥤}%* U+2964
+\DeclareTextCommand{\textdowndownharpoons}{L8U}{⥥}%* U+2965
+%
+\DeclareTextCommand{\textleftbarharpoon}{L8U}{⥪}%* U+296A
+\DeclareTextCommand{\textbarleftharpoon}{L8U}{⥫}%* U+296B
+\DeclareTextCommand{\textrightbarharpoon}{L8U}{⥬}%* U+296C
+\DeclareTextCommand{\textbarrightharpoon}{L8U}{⥭}%* U+296D
+\DeclareTextCommand{\textupdownharpoons}{L8U}{⥮}%* U+296E
+\DeclareTextCommand{\textdownupharpoons}{L8U}{⥯}%* U+296F
+%
+\DeclareTextCommand{\textmoo}{L8U}{⥿̶}%* U+297F U+0336
+
+%
+% Miscellaneous Math Symbols-B
+%
+\DeclareTextCommand{\textllparenthesis}{L8U}{⦇}%* U+2987
+\DeclareTextCommand{\textrrparenthesis}{L8U}{⦈}%* U+2988
+%
+\DeclareTextCommand{\textinvdiameter}{L8U}{⦰}%* U+29B0
+%
+\DeclareTextCommand{\textobar}{L8U}{⦶}%* U+29B6
+%
+\DeclareTextCommand{\textobslash}{L8U}{⦸}%* U+29B8
+%
+\DeclareTextCommand{\textobot}{L8U}{⦺}%* U+29BA
+\DeclareTextCommand{\textNoChemicalCleaning}{L8U}{⦻}%* U+29BB
+%
+\DeclareTextCommand{\textolessthan}{L8U}{⧀}%* U+29C0
+\DeclareTextCommand{\textogreaterthan}{L8U}{⧁}%* U+29C1
+%
+\DeclareTextCommand{\textboxslash}{L8U}{⧄}%* U+29C4
+\DeclareTextCommand{\textboxbslash}{L8U}{⧅}%* U+29C5
+\DeclareTextCommand{\textboxast}{L8U}{⧆}%* U+29C6
+\DeclareTextCommand{\textboxcircle}{L8U}{⧇}%* U+29C7
+\DeclareTextCommand{\textboxbox}{L8U}{⧈}%* U+29C8
+%
+\DeclareTextCommand{\textValve}{L8U}{⧓}%* U+29D3
+\DeclareTextCommand{\textmultimapboth}{L8U}{⧟}%* U+29DF
+%
+\DeclareTextCommand{\textshuffle}{L8U}{⧢}%* U+29E2
+
+%
+% Supplemental Math Operators
+%
+\DeclareTextCommand{\textuplus}{L8U}{⨃}%* U+2A04
+\DeclareTextCommand{\textbigdoublewedge}{L8U}{⨇}%* U+2A07
+\DeclareTextCommand{\textbigdoublevee}{L8U}{⨈}%* U+2A08
+\DeclareTextCommand{\textJoin}{L8U}{⨝}%* U+2A1D
+%
+\DeclareTextCommand{\textfatsemi}{L8U}{⨟}%* U+2A1F
+\DeclareTextCommand{\textcircplus}{L8U}{⨢}%* U+2A22
+\DeclareTextCommand{\textminusdot}{L8U}{⨪}%* U+2A2A
+\DeclareTextCommand{\textdottimes}{L8U}{⨰}%* U+2A30
+\DeclareTextCommand{\textdtimes}{L8U}{⨲}%* U+2A32
+\DeclareTextCommand{\textodiv}{L8U}{⨸}%* U+2A38
+\DeclareTextCommand{\textinvneg}{L8U}{⨼}%* U+2A3C
+\DeclareTextCommand{\textcapdot}{L8U}{⩀}%* U+2A40
+\DeclareTextCommand{\textsqdoublecap}{L8U}{⩎}%* U+2A4E
+\DeclareTextCommand{\textsqdoublecup}{L8U}{⩏}%* U+2A4F
+\DeclareTextCommand{\textdoublewedge}{L8U}{⩕}%* U+2A55
+\DeclareTextCommand{\textdoublevee}{L8U}{⩖}%* U+2A56
+\DeclareTextCommand{\textdoublebarwedge}{L8U}{⩞}%* U+2A5E
+\DeclareTextCommand{\textveedoublebar}{L8U}{⩣}%* U+2A63
+\DeclareTextCommand{\texteqdot}{L8U}{⩦}%* U+2A66
+\DeclareTextCommand{\textneqdot}{L8U}{⩦}%* U+2A66 U+0338
+\DeclareTextCommand{\textcoloncolonequals}{L8U}{⩴}%* U+2A74
+\DeclareTextCommand{\textleqslant}{L8U}{⩽}%* U+2A7D
+\DeclareTextCommand{\textnleqslant}{L8U}{⩽̸}%* U+2A7D U+0338
+\DeclareTextCommand{\textgeqslant}{L8U}{⩾}%* U+2A7E
+\DeclareTextCommand{\textngeqslant}{L8U}{⩾̸}%* U+2A7E U+0338
+\DeclareTextCommand{\textlessapprox}{L8U}{⪅}%* U+2A85
+\DeclareTextCommand{\textnlessapprox}{L8U}{⪅̸}%* U+2A85 U+0338
+\DeclareTextCommand{\textgtrapprox}{L8U}{⪆}%* U+2A86
+\DeclareTextCommand{\textngtrapprox}{L8U}{⪆̸}%* U+2A86 U+0338
+\DeclareTextCommand{\textlneq}{L8U}{⪇}%* U+2A87
+\DeclareTextCommand{\textgneq}{L8U}{⪈}%* U+2A88
+\DeclareTextCommand{\textlnapprox}{L8U}{⪉}%* U+2A89
+\DeclareTextCommand{\textgnapprox}{L8U}{⪊}%* U+2A8A
+\DeclareTextCommand{\textlesseqqgtr}{L8U}{⪋}%* U+2A8B
+\DeclareTextCommand{\textgtreqqless}{L8U}{⪌}%* U+2A8C
+\DeclareTextCommand{\texteqslantless}{L8U}{⪕}%* U+2A95
+\DeclareTextCommand{\texteqslantgtr}{L8U}{⪖}%* U+2A96
+\DeclareTextCommand{\textleftslice}{L8U}{⪦}%* U+2AA6
+\DeclareTextCommand{\textrightslice}{L8U}{⪧}%* U+2AA7
+\DeclareTextCommand{\textpreceq}{L8U}{⪯}%* U+2AAF
+\DeclareTextCommand{\textnpreceq}{L8U}{⪯̸}%* U+2AAF U+0338
+\DeclareTextCommand{\textsucceq}{L8U}{⪰}%* U+2AB0
+\DeclareTextCommand{\textnsucceq}{L8U}{⪰̸}%* U+2AB0 U+0338
+\DeclareTextCommand{\textprecneq}{L8U}{⪱}%* U+2AB1
+\DeclareTextCommand{\textsuccneq}{L8U}{⪲}%* U+2AB2
+\DeclareTextCommand{\textpreceqq}{L8U}{⪳}%* U+2AB3
+\DeclareTextCommand{\textnpreceqq}{L8U}{⪳̸}%* U+2AB3 U+0338
+\DeclareTextCommand{\textsucceqq}{L8U}{⪴}%* U+2AB4
+\DeclareTextCommand{\textnsucceqq}{L8U}{⪴̸}%* U+2AB4 U+0338
+\DeclareTextCommand{\textprecneqq}{L8U}{⪵}%* U+2AB5
+\DeclareTextCommand{\textsuccneqq}{L8U}{⪶}%* U+2AB6
+\DeclareTextCommand{\textprecapprox}{L8U}{⪷}%* U+2AB7
+\DeclareTextCommand{\textnprecapprox}{L8U}{⪷̸}%* U+2AB7 U+0338
+\DeclareTextCommand{\textsuccapprox}{L8U}{⪸}%* U+2AB8
+\DeclareTextCommand{\textnsuccapprox}{L8U}{⪸̸}%* U+2AB8 U+0338
+\DeclareTextCommand{\textprecnapprox}{L8U}{⪹}%* U+2AB9
+\DeclareTextCommand{\textsuccnapprox}{L8U}{⪺}%* U+2ABA
+\DeclareTextCommand{\textsubseteqq}{L8U}{⫅}%* U+2AC5
+\DeclareTextCommand{\textnsubseteqq}{L8U}{⫅̸}%* U+2AC5 U+0338
+\DeclareTextCommand{\textsupseteqq}{L8U}{⫆}%* U+2AC6
+\DeclareTextCommand{\textnsupseteqq}{L8U}{⫆̸}%* U+2AC6 U+0338
+\DeclareTextCommand{\textdashV}{L8U}{⫣}%* U+2AE3
+\DeclareTextCommand{\textndashV}{L8U}{⫣̸}%* U+2AE3 U+0338
+\DeclareTextCommand{\textDashv}{L8U}{⫤}%* U+2AE4
+\DeclareTextCommand{\textnDashv}{L8U}{⫤̸}%* U+2AE4 U+0338
+\DeclareTextCommand{\textDashV}{L8U}{⫥}%* U+2AE5
+\DeclareTextCommand{\textnDashV}{L8U}{⫥̸}%* U+2AE5 U+0338
+\DeclareTextCommand{\textdownmodels}{L8U}{⫪}%* U+2AEA
+\DeclareTextCommand{\textndownmodels}{L8U}{⫪̸}%* U+2AEA U+0338
+\DeclareTextCommand{\textupmodels}{L8U}{⫫}%* U+2AEB
+\DeclareTextCommand{\textnupmodels}{L8U}{⫫̸}%* U+2AEB U+0338
+\DeclareTextCommand{\textupspoon}{L8U}{⫯}%* U+2AEF
+\DeclareTextCommand{\textinterleave}{L8U}{⫴}%* U+2AF4
+\DeclareTextCommand{\textsslash}{L8U}{⫽}%* U+2AFD
+%
+\fi % end of \ifmathxmp
+
+%
+\DeclareTextCommand{\textpentagon}{L8U}{⬠}%* U+2B20
+\DeclareTextCommand{\textvarhexagon}{L8U}{⬡}%* U+2B21
+
+\DeclareTextCommand{\textjinferior}{L8U}{ⱼ}%* U+2C7C
+\DeclareTextCompositeCommand{\dotextsubscript}{L8U}{j}{ⱼ}%
+\DeclareTextCompositeCommand{\dotextsuperscript}{L8U}{V}{ⱽ}%
+
+\DeclareTextCommand{\textslashdiv}{L8U}{⸓}%* U+2E13
+\DeclareTextCommand{\textinterrobangdown}{L8U}{⸘}% U+2E18
+\DeclareTextCommand{\textfivedots}{L8U}{⸭}%* U+2E2D
+
+
+
+\DeclareTextCommand{\textborn}{L8U}{✭}%e29cad or ????
+%\DeclareTextCommand{\textdivorced}{L8U}{⚮}%e29aae
+\DeclareTextCommand{\textdied}{L8U}{⚰}% e29ab0 or %e29c9d
+%\DeclareTextCommand{\textmarried}{L8U}{⚭}%e29aad
+\DeclareTextCommand{\textdblhyphenchar}{L8U}{꞊}%ea9e8a ????
+
+%
+% Modifier Tone Letters
+%
+\DeclareTextCommand{\textupstep}{L8U}{ꜛ}% U+A71B
+\DeclareTextCommand{\textdownstep}{L8U}{ꜜ}% U+A71C
+
+%
+% Latin Extended-D
+%
+\DeclareTextCommand{\textPUheng}{L8U}{ꜧ}% U+A727
+\DeclareTextCommand{\textPUlhookfour}{L8U}{Ꜭ}% U+A72C
+\DeclareTextCommand{\textPUscf}{L8U}{ꜰ}% U+A730
+\DeclareTextCommand{\textPUaolig}{L8U}{ꜵ}% U+A735
+\DeclareTextCommand{\textoo}{L8U}{ꝏ}%* U+A74F
+\DeclareTextCommand{\textcircumlow}{L8U}{ꞈ}% U+A788
+
+%
+% Latin Extended-E : U+AB30–AB6F Unicode v9.0
+% IPA
+%
+\DeclareTextCommand{\textscomega}{L8U}{^^ea^^ad^^a5}%* U+AB65
+
+%
+% Alphabetic Presentation Forms
+%
+%\DeclareTextCommand{\textff}{L8U}{ff}% U+FB00
+\DeclareTextCommand{\textfi}{L8U}{fi}% U+FB01
+\DeclareTextCommand{\textfl}{L8U}{fl}% U+FB02
+%\DeclareTextCommand{\textffi}{L8U}{ffi}% U+FB03
+%\DeclareTextCommand{\textffl}{L8U}{ffl}% U+FB04
+
+
+% Plane-1 math alphanumerics
+%
+% there's a lot that can be done here!
+%
+
+
+% some Plane-1 non-math characters
+
+%
+% Musical symbols Ux1D100 – Ux1D1FF
+%
+\DeclareTextCommand{\textGaPa}{L8U}{^^f0^^9d^^84^^bd}%* U+1D13D
+\DeclareTextCommand{\textAcPa}{L8U}{^^f0^^9d^^84^^be}%* U+1D13E
+\DeclareTextCommand{\textSePa}{L8U}{^^f0^^9d^^84^^bf}%* U+1D13F
+\DeclareTextCommand{\textZwPa}{L8U}{^^f0^^9d^^85^^80}%* U+1D140
+\DeclareTextCommand{\textfullnote}{L8U}{^^f0^^9d^^85^^9d}%* U+1D15D
+\DeclareTextCommand{\texthalfnote}{L8U}{^^f0^^9d^^85^^9e}%* U+1D15E
+\DeclareTextCommand{\textVier}{L8U}{^^f0^^9d^^85^^9f}%* U+1D15F
+\DeclareTextCommand{\textAcht}{L8U}{^^f0^^9d^^85^^a0}%* U+1D160
+\DeclareTextCommand{\textSech}{L8U}{^^f0^^9d^^85^^a1}%* U+1D161
+\DeclareTextCommand{\textZwdr}{L8U}{^^f0^^9d^^85^^a2}%* U+1D162
+
+%
+% Miscellaneous symbols and pictographs Ux1F300 – Ux1F5FF
+%
+\DeclareTextCommand{\textMundus}{L8U}{^^f0^^9f^^8c^^8d}%* U+1F30D
+\DeclareTextCommand{\textMoon}{L8U}{^^f0^^9f^^8c^^99}%* U+1F319
+\DeclareTextCommand{\textManFace}{L8U}{^^f0^^9f^^91^^a8}%* U+1F468
+\DeclareTextCommand{\textWomanFace}{L8U}{^^f0^^9f^^91^^a9}%* U+1F469
+\DeclareTextCommand{\textFax}{L8U}{^^f0^^9f^^93^^a0}%* U+1F4E0
+\DeclareTextCommand{\textFire}{L8U}{^^f0^^9f^^94^^a5}%* U+1F525
+
+%
+% Miscellaneous symbols and pictographs Ux1F680 – Ux1F6C5
+%
+\DeclareTextCommand{\textBicycle}{L8U}{^^f0^^9f^^9a^^b2}%* U+1F6B2
+\DeclareTextCommand{\textGentsroom}{L8U}{^^f0^^9f^^9a^^b9}%* U+1F6B9
+\DeclareTextCommand{\textLadiesroom}{L8U}{^^f0^^9f^^9a^^ba}%* U+1F6BA
+
+
+% constructed conposites
+%\DeclareTextCommand{\SS}{L8U}{SS}% or ẞ % Ux1E9E
+\DeclareTextCommand{\textcopyleft}{L8U}{ↄ⃝}% U+2184 U+20DD
+\DeclareTextCommand{\textccnc}{L8U}{`\$⃠}%* U+0024 U+20E0
+\DeclareTextCommand{\textccnd}{L8U}{=⃝}%* U+003D U+20DD
+\DeclareTextCommand{\textccsa}{L8U}{⟲⃝}%* U+27F2 U+20DD
+\DeclareTextCommand{\textInfo}{L8U}{𝐢⃞}%* U+1D422 U+20DE
+\DeclareTextCommand{\textCESign}{L8U}{CE}%* U+0043 U+0045
+%\DeclareTextCommand{\textCESign}{L8U}{СЄ}%* U+0421 U+0404 looks better
+
+
+
+% extra alias names
+%
+\DeclareTextCommand{\textglqq}{L8U}{\quotedblbase}%
+\DeclareTextCommand{\textgrqq}{L8U}{\textquotedblleft}%
+\DeclareTextCommand{\textglq}{L8U}{\quotesinglbase}%
+\DeclareTextCommand{\textgrq}{L8U}{\textquoteleft}%
+\DeclareTextCommand{\textflqq}{L8U}{\guillemotleft}%
+\DeclareTextCommand{\textfrqq}{L8U}{\guillemotright}%
+\DeclareTextCommand{\textflq}{L8U}{\guilsinglleft}%
+\DeclareTextCommand{\textfrq}{L8U}{\guilsinglright}%
+%\DeclareTextCommand{\textneg}{L8U}{\textlogicalnot}%*
+%\DeclareTextCommand{\texttimes}{L8U}{\textmultiply}%*
+%\DeclareTextCommand{\textdiv}{L8U}{\textdivide}%*
+%\DeclareTextCommand{\textpm}{L8U}{\textplusminus}%*
+%\DeclareTextCommand{\textcdot}{L8U}{\textperiodcentered}%*
+
+\endinput
+%%
+%% End of file `l8u-penc.def'.
diff --git a/macros/latex/contrib/pdfx/l8uarb-penc.def b/macros/latex/contrib/pdfx/l8uarb-penc.def
new file mode 100644
index 0000000000..aaa425b583
--- /dev/null
+++ b/macros/latex/contrib/pdfx/l8uarb-penc.def
@@ -0,0 +1,163 @@
+%%
+%% This is file `l8uarb-penc.def'
+%% Formerly known as l8uarb.def .
+%%
+%% l8uarb-penc.def
+%%
+%% This is a hand-written file, based upon t1enc.def
+%% with extensions for more composite characters.
+%%
+%% Copyright 2016, 2017 Ross Moore <ross.moore@mq.edu.au>
+%%
+\ProvidesFile{l8uarb-penc.def}
+ [2017/06/23 v0.5
+ Arabic support for UTF8 in XMP metadata]
+
+%
+% uses macro names from puarenc.def and ucs.sty
+%
+% defines command: \LIIXUmaparabicletters
+%
+%%%% Arabic Characters + marks Ux0600 – Ux06FF
+%
+\DeclareTextCommand{\textarabichamza}{L8U}{ء}% U+0621
+\DeclareTextCommand{\textarabicalefmadda}{L8U}{آ}% U+0622
+\DeclareTextCommand{\textarabicalefhamza}{L8U}{أ}% U+0623
+\DeclareTextCommand{\textarabicwawhamza}{L8U}{ؤ}% U+0624
+\DeclareTextCommand{\textarabicaleflowerhamza}{L8U}{إ}% U+0625
+\DeclareTextCommand{\textarabicyahamza}{L8U}{ئ}% U+0626
+\DeclareTextCommand{\textarabicalef}{L8U}{ا}% U+0627
+\DeclareTextCommand{\textarabicbaa}{L8U}{ب}% U+0628
+\DeclareTextCommand{\textarabicT}{L8U}{ة}% U+0629
+\DeclareTextCommand{\textarabictaa}{L8U}{ت}% U+062A
+\DeclareTextCommand{\textarabicthaa}{L8U}{ث}% U+062B
+\DeclareTextCommand{\textarabicjeem}{L8U}{ج}% U+062C
+\DeclareTextCommand{\textarabicHaa}{L8U}{ح}% U+062D
+\DeclareTextCommand{\textarabickha}{L8U}{خ}% U+062E
+\DeclareTextCommand{\textarabicdal}{L8U}{د}% U+062F
+\DeclareTextCommand{\textarabicdhal}{L8U}{ذ}% U+0630
+\DeclareTextCommand{\textarabicra}{L8U}{ر}% U+0631
+\DeclareTextCommand{\textarabiczay}{L8U}{ز}% U+0632
+\DeclareTextCommand{\textarabicseen}{L8U}{س}% U+0633
+\DeclareTextCommand{\textarabicsheen}{L8U}{ش}% U+0634
+\DeclareTextCommand{\textarabicsad}{L8U}{ص}% U+0635
+\DeclareTextCommand{\textarabicdad}{L8U}{ض}% U+0636
+\DeclareTextCommand{\textarabicTa}{L8U}{ط}% U+0637
+\DeclareTextCommand{\textarabicza}{L8U}{ظ}% U+0638
+\DeclareTextCommand{\textarabicayn}{L8U}{ع}% U+0639
+\DeclareTextCommand{\textarabicghayn}{L8U}{غ}% U+063A
+%
+\DeclareTextCommand{\textarabictatweel}{L8U}{ـ}% U+0640
+\DeclareTextCommand{\textarabicfa}{L8U}{ف}% U+0641
+\DeclareTextCommand{\textarabicqaf}{L8U}{ق}% U+0642
+\DeclareTextCommand{\textarabickaf}{L8U}{ك}% U+0643
+\DeclareTextCommand{\textarabiclam}{L8U}{ل}% U+0644
+\DeclareTextCommand{\textarabicmeem}{L8U}{م}% U+0645
+\DeclareTextCommand{\textarabicnun}{L8U}{ن}% U+0646
+\DeclareTextCommand{\textarabicha}{L8U}{ه}% U+0647
+\DeclareTextCommand{\textarabicwaw}{L8U}{و}% U+0648
+\DeclareTextCommand{\textarabicalefmaqsura}{L8U}{ى}% U+0649
+\DeclareTextCommand{\textarabicya}{L8U}{ي}% U+064A
+\DeclareTextCommand{\textarabicnasb}{L8U}{ً}% U+064B
+\DeclareTextCommand{\textarabicraff}{L8U}{ٌ}% U+064C
+\DeclareTextCommand{\textarabicjarr}{L8U}{ٍ}% U+064D
+\DeclareTextCommand{\textarabicfatha}{L8U}{َ}% U+064E
+\DeclareTextCommand{\textarabicdamma}{L8U}{ُ}% U+064F
+\DeclareTextCommand{\textarabickasra}{L8U}{ِ}% U+0650
+\DeclareTextCommand{\textarabicshadda}{L8U}{ّ}% U+0651
+\DeclareTextCommand{\textarabicsukun}{L8U}{ْ}% U+0652
+%
+\DeclareTextCommand{\textarabicpeh}{L8U}{پ}% U+067E
+%
+\DeclareTextCommand{\textarabictcheh}{L8U}{چ}% U+0686
+%
+\DeclareTextCommand{\textarabicjeh}{L8U}{ژ}% U+0698
+%
+\DeclareTextCommand{\textarabicfarsikaf}{L8U}{ک}% U+06A9
+\DeclareTextCommand{\textarabicgaf}{L8U}{گ}% U+06AF
+%
+\DeclareTextCommand{\textarabicfarsiya}{L8U}{ی}% U+06CC
+
+\def\LIIXUmaparabicletters{%
+ \let\hamza\textarabichamza
+ \let\alefmadda\textarabicalefmadda
+ \let\alefhamza\textarabicalefhamza
+ \let\wawhamza\textarabicwawhamza
+ \let\aleflowerhamza\textarabicaleflowerhamza
+ \let\yahamza\textarabicyahamza
+ \let\alef\textarabicalef
+ \let\baa\textarabicbaa
+ \let\T\textarabicT
+ \let\taa\textarabictaa
+ \let\thaa\textarabicthaa
+ \let\jeem\textarabicjeem
+ \let\Haa\textarabicHaa
+ \let\kha\textarabickha
+ \let\dal\textarabicdal
+ \let\dhal\textarabicdhal
+ \let\ra\textarabicra
+ \let\zay\textarabiczay
+ \let\seen\textarabicseen
+ \let\sheen\textarabicsheen
+ \let\sad\textarabicsad
+ \let\dad\textarabicdad
+ \let\Ta\textarabicTa
+ \let\za\textarabicza
+ \let\ayn\textarabicayn
+ \let\ghayn\textarabicghayn
+ \let\tatweel\textarabictatweel
+ \let\fa\textarabicfa
+ \let\qaf\textarabicqaf
+ \let\kaf\textarabickaf
+ \let\lam\textarabiclam
+ \let\meem\textarabicmeem
+ \let\nun\textarabicnun
+ \let\ha\textarabicha
+ \let\waw\textarabicwaw
+ \let\alefmaqsura\textarabicalefmaqsura
+ \let\ya\textarabicya
+ \let\nasb\textarabicnasb
+ \let\raff\textarabicraff
+ \let\jarr\textarabicjarr
+ \let\fatha\textarabicfatha
+ \let\damma\textarabicdamma
+ \let\kasra\textarabickasra
+ \let\shadda\textarabicshadda
+ \let\sukun\textarabicsukun
+ \let\peh\textarabicpeh
+ \let\tcheh\textarabictcheh
+ \let\jeh\textarabicjeh
+ \let\farsikaf\textarabicfarsikaf
+ \let\gaf\textarabicgaf
+ \let\farsiya\textarabicfarsiya
+}
+
+%
+% General Punctuation
+%
+
+% already declared in l8u-penc.def
+%\DeclareTextCommand{\ZWNJ}{L8U}{‌}% U+200C
+%\DeclareTextCommand{\liixu@noboundary}{L8U}{^^e2^^80^^8d}% U+200D
+
+
+%
+% Arabic Supplement Ux0750 – Ux077F
+%
+
+%
+% Arabic Extended-A Ux08A0 – Ux08FF
+%
+
+%
+% Arabic Presentation Forms-A UxFB50 – Ux0FDFF
+%
+
+%
+% Arabic Presentation Forms-B UxFE70 – Ux0FEFC
+%
+
+\endinput
+
+
+
diff --git a/macros/latex/contrib/pdfx/l8uarm-penc.def b/macros/latex/contrib/pdfx/l8uarm-penc.def
new file mode 100644
index 0000000000..6ef50ce230
--- /dev/null
+++ b/macros/latex/contrib/pdfx/l8uarm-penc.def
@@ -0,0 +1,580 @@
+%%
+%% This is file `l8uarm-penc.def'
+%% Formerly known as `l8uarm.def'
+%%
+%% l8uarm-penc.def
+%%
+%% This is a hand-written file, based upon ot6enc.def
+%% with extensions for more composite characters.
+%%
+%% Copyright 2016 Ross Moore <ross.moore@mq.edu.au>
+%%
+\ProvidesFile{l8uarm-penc.def}
+ [2017/06/23 v0.5
+ Armenian support for UTF8 in XMP metadata]
+
+%
+% uses macro names from armtex.sty and ucs.sty
+%
+% defines command: \LIIXUmaparmenianletters
+%
+
+%%%% Armenian Characters + marks Ux0530 – Ux058F
+%
+\DeclareTextCommand{\textArmayb}{L8U}{Ա}
+\DeclareTextCommand{\textArmben}{L8U}{Բ}
+\DeclareTextCommand{\textArmgim}{L8U}{Գ}
+\DeclareTextCommand{\textArmda}{L8U}{Դ}
+\DeclareTextCommand{\textArmech}{L8U}{Ե}
+\DeclareTextCommand{\textArmza}{L8U}{Զ}
+\DeclareTextCommand{\textArmeh}{L8U}{Է}
+\DeclareTextCommand{\textArmet}{L8U}{Ը}
+\DeclareTextCommand{\textArmto}{L8U}{Թ}
+\DeclareTextCommand{\textArmzhe}{L8U}{Ժ}
+\DeclareTextCommand{\textArmini}{L8U}{Ի}
+\DeclareTextCommand{\textArmliwn}{L8U}{Լ}
+\DeclareTextCommand{\textArmxeh}{L8U}{Խ}
+\DeclareTextCommand{\textArmca}{L8U}{Ծ}
+\DeclareTextCommand{\textArmken}{L8U}{Կ}
+\DeclareTextCommand{\textArmho}{L8U}{Հ}
+\DeclareTextCommand{\textArmja}{L8U}{Ձ}
+\DeclareTextCommand{\textArmghad}{L8U}{Ղ}
+\DeclareTextCommand{\textArmcheh}{L8U}{Ճ}
+\DeclareTextCommand{\textArmmen}{L8U}{Մ}
+\DeclareTextCommand{\textArmyi}{L8U}{Յ}
+\DeclareTextCommand{\textArmnow}{L8U}{Ն}
+\DeclareTextCommand{\textArmsha}{L8U}{Շ}
+\DeclareTextCommand{\textArmvo}{L8U}{Ո}
+\DeclareTextCommand{\textArmcha}{L8U}{Չ}
+\DeclareTextCommand{\textArmpeh}{L8U}{Պ}
+\DeclareTextCommand{\textArmjheh}{L8U}{Ջ}
+\DeclareTextCommand{\textArmra}{L8U}{Ռ}
+\DeclareTextCommand{\textArmseh}{L8U}{Ս}
+\DeclareTextCommand{\textArmvew}{L8U}{Վ}
+\DeclareTextCommand{\textArmtiwn}{L8U}{Տ}
+\DeclareTextCommand{\textArmreh}{L8U}{Ր}
+\DeclareTextCommand{\textArmco}{L8U}{Ց}
+\DeclareTextCommand{\textArmyiwn}{L8U}{Ւ}
+%\DeclareTextCommand{\textArmvovyun}{L8U}{Ւ}% ????
+\DeclareTextCommand{\textArmpiwr}{L8U}{Փ}
+\DeclareTextCommand{\textArmkeh}{L8U}{Ք}
+\DeclareTextCommand{\textArmoh}{L8U}{Օ}
+\DeclareTextCommand{\textArmfeh}{L8U}{Ֆ}
+
+\DeclareTextCommand{\textarmhalfring}{L8U}{ՙ}% Ux0559
+\DeclareTextCommand{\textarmapostrophe}{L8U}{՚}% Ux055A
+\DeclareTextCommand{\textarmemphasis}{L8U}{՛}% Ux055B
+\DeclareTextCommand{\textarmexclam}{L8U}{՜}% Ux055C
+\DeclareTextCommand{\textarmsepmark}{L8U}{՝}% Ux055D
+\DeclareTextCommand{\textarmquestion}{L8U}{՞}% Ux055E
+\DeclareTextCommand{\textarmabbrev}{L8U}{՟}% Ux055F
+
+\DeclareTextCommand{\textarmfullstop}{L8U}{։}% Ux0589
+\DeclareTextCommand{\textarmhyphen}{L8U}{֊}% Ux0589
+\DeclareTextCommand{\textarmuh}{L8U}{}% no character needed in XMP
+
+\DeclareTextCommand{\textarmendash}{L8U}{‐}% Ux2010
+\DeclareTextCommand{\textarmemdash}{L8U}{—}% Ux2014
+\DeclareTextCommand{\textarmdot}{L8U}{․}% Ux2024
+\DeclareTextCommand{\textarmellipsis}{L8U}{…}% Ux2026
+
+% normal ASCII range
+\DeclareTextCommand{\textarmparenright}{L8U}{)}
+\DeclareTextCommand{\textarmparenleft}{L8U}{(}
+\DeclareTextCommand{\textarmcomma}{L8U}{,}
+\DeclareTextCommand{\textarmbreaklig}{L8U}{}
+
+
+\DeclareTextCommand{\textarmayb}{L8U}{ա}
+\DeclareTextCommand{\textarmben}{L8U}{բ}
+\DeclareTextCommand{\textarmgim}{L8U}{գ}
+\DeclareTextCommand{\textarmda}{L8U}{դ}
+\DeclareTextCommand{\textarmech}{L8U}{ե}
+\DeclareTextCommand{\textarmza}{L8U}{զ}
+\DeclareTextCommand{\textarmeh}{L8U}{է}
+\DeclareTextCommand{\textarmet}{L8U}{ը}
+\DeclareTextCommand{\textarmto}{L8U}{թ}
+\DeclareTextCommand{\textarmzhe}{L8U}{ժ}
+\DeclareTextCommand{\textarmini}{L8U}{ի}
+\DeclareTextCommand{\textarmliwn}{L8U}{լ}
+\DeclareTextCommand{\textarmxeh}{L8U}{խ}
+\DeclareTextCommand{\textarmca}{L8U}{ծ}
+\DeclareTextCommand{\textarmken}{L8U}{կ}
+\DeclareTextCommand{\textarmho}{L8U}{հ}
+\DeclareTextCommand{\textarmja}{L8U}{ձ}
+\DeclareTextCommand{\textarmghad}{L8U}{ղ}
+\DeclareTextCommand{\textarmcheh}{L8U}{ճ}
+\DeclareTextCommand{\textarmmen}{L8U}{մ}
+\DeclareTextCommand{\textarmyi}{L8U}{յ}
+\DeclareTextCommand{\textarmnow}{L8U}{ն}
+\DeclareTextCommand{\textarmsha}{L8U}{շ}
+\DeclareTextCommand{\textarmvo}{L8U}{ո}
+\DeclareTextCommand{\textarmcha}{L8U}{չ}
+\DeclareTextCommand{\textarmpeh}{L8U}{պ}
+\DeclareTextCommand{\textarmjheh}{L8U}{ջ}
+\DeclareTextCommand{\textarmra}{L8U}{ռ}
+\DeclareTextCommand{\textarmseh}{L8U}{ս}
+\DeclareTextCommand{\textarmvew}{L8U}{վ}
+\DeclareTextCommand{\textarmtiwn}{L8U}{տ}
+\DeclareTextCommand{\textarmreh}{L8U}{ր}
+\DeclareTextCommand{\textarmco}{L8U}{ց}
+\DeclareTextCommand{\textarmyiwn}{L8U}{ւ}
+\DeclareTextCommand{\textarmvovyun}{L8U}{ու}% u, ow
+\DeclareTextCommand{\textarmpiwr}{L8U}{փ}
+\DeclareTextCommand{\textarmkeh}{L8U}{Ք}
+\DeclareTextCommand{\textarmoh}{L8U}{օ}
+\DeclareTextCommand{\textarmfeh}{L8U}{ֆ}
+\DeclareTextCommand{\textarmew}{L8U}{և}% Ux0587
+
+% extra ligatures
+%
+\DeclareTextCommand{\textarmmennulig}{L8U}{ﬓ}% UxFB13 mn
+\DeclareTextCommand{\textarmmenyechlig}{L8U}{ﬔ}% UxFB14 me
+\DeclareTextCommand{\textarmmeninilig}{L8U}{ﬕ}% UxFB15 mi
+\DeclareTextCommand{\textarmvevnulig}{L8U}{ﬖ}% UxFB16 vn
+\DeclareTextCommand{\textarmmenkhelig}{L8U}{ﬗ}% UxFB17 mk
+
+
+\DeclareTextCommand{\textarmabr}{L8U}[1]{#1⃐}% Ux20D0
+\DeclareTextCommand{\textarmreternity}{L8U}{^^d6^^8d}
+\DeclareTextCommand{\textarmleternity}{L8U}{^^d6^^8e}
+\DeclareTextCommand{\textarmdram}{L8U}{֏}
+%\DeclareTextCommand{\textanjgic}{L8U}{—}
+\DeclareTextCommand{\textArmTeX}{L8U}{ԱրմTeX}
+\DeclareTextCommand{\textlatArmTeX}{L8U}{ArmTeX}
+
+\gdef\LIIXUmaparmenianletters{%
+ \let\ArmTeX\textArmTeX
+ \let\latArmTeX\textlatArmTeX
+ \let\Armayb\textArmayb
+ \let\Armben\textArmben
+ \let\Armgim\textArmgim
+ \let\Armda\textArmda
+ \let\Armyech\textArmech
+ \let\Armza\textArmza
+ \let\Arme\textArmeh
+ \let\Armat\textArmet
+ \let\Armto\textArmto
+ \let\Armzhe\textArmzhe
+ \let\Armini\textArmini
+ \let\Armlyun\textArmliwn
+ \let\Armkhe\textArmxeh
+ \let\Armtsa\textArmca
+ \let\Armtsa\textArmca
+ \let\Armken\textArmken
+ \let\Armho\textArmho
+ \let\Armdza\textArmja
+ \let\Armghat\textArmghad
+ \let\Armcheh\textArmtche
+ \let\Armmen\textArmmen
+ \let\Armhi\textArmyi
+ \let\Armnu\textArmnow
+ \let\Armsha\textArmsha
+ \let\Armvo\textArmvo
+ \let\Armcha\textArmcha
+ \let\Armpe\textArmpeh
+ \let\Armje\textArmjheh
+ \let\Armra\textArmra
+ \let\Armse\textArmseh
+ \let\Armvev\textArmvew
+ \let\Armtyun\textArmtiwn
+ \let\Armre\textArmreh
+ \let\Armtso\textArmco
+ \let\Armvyun\textArmyiwn
+ \let\Armvovyun\textArmyiwn
+ \let\Armpyur\textArmpiwr
+ \let\Armke\textArmkeh
+ \let\Armo\textArmoh
+ \let\Armfe\textArmfeh
+%
+ \let\armayb\textarmayb
+ \let\armben\textbrmben
+ \let\armgim\textarmgim
+ \let\armda\textarmda
+ \let\armyech\textarmech
+ \let\armza\textarmza
+ \let\arme\textarmeh
+ \let\armat\textarmet
+ \let\armto\textarmto
+ \let\armzhe\textarmzhe
+ \let\armini\textarmini
+ \let\armlyun\textarmliwn
+ \let\armkhe\textarmxeh
+ \let\armtsa\textarmca
+ \let\armken\textarmken
+ \let\armho\textarmho
+ \let\armdza\textarmja
+ \let\armghat\textarmghad
+ \let\armcheh\textarmtche
+ \let\armmen\textarmmen
+ \let\armhi\textarmyi
+ \let\armnu\textarmnow
+ \let\armsha\textarmsha
+ \let\armvo\textarmvo
+ \let\armcha\textarmcha
+ \let\armpe\textarmpeh
+ \let\armje\textarmjheh
+ \let\armra\textarmra
+ \let\armse\textarmseh
+ \let\armvev\textarmvew
+ \let\armtyun\textarmtiwn
+ \let\armre\textarmreh
+ \let\armtso\textarmco
+ \let\armvyun\textarmyiwn
+ \let\armvovyun\textarmyiwn
+ \let\armpyur\textarmpiwr
+ \let\armke\textarmkeh
+ \let\armo\textarmoh
+ \let\armfe\textarmfeh
+ \let\armcomma\textarmcomma
+ \let\armsep\textarmsepmark
+ \let\armfullstop\textarmfullstop
+ \let\armapostrophe\textarmapostrophe
+ \let\armparenright\textarmparenright
+ \let\armparenleft\textarmparenleft
+% \let\armquotright\textquoteright
+ \let\armquotright\textguillemotright
+ \let\armquotleft\textguillemotleft
+% \let\armquotleft\textquoteleft
+ \let\armdot\textarmdot
+ \let\armew\textarmew
+ \let\armendash\textarmendash
+ \let\armyentamna\textarmhyphen
+ \let\armuh\textarmuh
+ \let\armexclam\textarmexclam
+ \let\armaccent\textarmemphasis
+ \let\armquestion\textarmquestion
+ \let\armeternity\textarmreternity
+ \let\armdram\textarmdram
+ \let\armnum\textarmhalfring
+ \let\armellipsis\textarmellipsis
+ \let\armsection\textsection
+ \let\textanjgic\textarmemdash
+ \let\armemdash\textarmemdash
+ \let\armbl\textarmbreaklig
+ \let\*\textarmbreaklig
+ \let\textbreaklig\textarmbreaklig
+ \let\armabbrev\textarmabbrev
+ \let\armabr\textarmabr
+% disable mode switches and font commands
+ \let\aroff\@empty
+ \def\armdate{}%
+ \def\armdateoff{}%
+ \def\armhyph{}%
+ \def\armhyphoff{}%
+ \def\armnames{}%
+ \def\armnamesoff{}%
+ \def\armtm{}%
+ \def\armtmfamily{}%
+ \def\armss{}%
+ \def\armssfamily{}%
+ \def\armmd{}%
+ \def\armmdseries{}%
+ \def\armbf{}%
+ \def\armbfseries{}%
+ \def\armup{}%
+ \def\armupshape{}%
+ \def\armit{}%
+ \def\armitshape{}%
+ \def\armsl{}%
+ \def\armslshape{}%
+ \def\artm{}%
+ \def\artmit{}%
+ \def\artmsl{}%
+ \def\artmbf{}%
+ \def\artmbfit{}%
+ \def\arss{}%
+ \def\arsssl{}%
+ \def\arssbf{}%
+ \def\arssbfsl{}%
+}
+
+
+\ifarmSCIxmp\else\expandafter\endinput\fi
+
+% implement transliteration for OT6 encoded input
+
+\DeclareTextCommand{\textarmenARMstring}{L8U}[1]{\textarmenARM@ii#1\@empty\@empty}
+\DeclareTextCommand{\textARM}{L8U}[1]{\textarmenARMstring{#1}}
+\DeclareTextCommand{\textARMenc}{L8U}[1]{#1}
+
+\def\textarmenARM@i#1{\textarmenARM@ii#1}%\@empty}
+\def\textarmenARM@ii#1#2\@empty{\ifx\@empty#2\@empty
+ \expandafter\@firstoftwo\else\expandafter\@secondoftwo\fi
+ {\textARMenc{#1}}{\textARMenc{#1}\textarmenARM@i#2\@empty}}
+
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{\TeX}{TeX}
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{\LaTeX}{LaTeX}
+
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{\*}{}
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{\textbreaklig}{}
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{\-}{}
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{\armuh}{\textarmuh}
+
+
+% use these bindings below, for readability
+\global\let\arm@en\liixu@checkemptyornext
+\global\let\arm@nc\liixu@checknextchar
+
+
+%
+% handle the Unconditional Hyphen macro
+%
+\DeclareTextCompositeCommand{\textarmuh}{L8U}{\textarmenARM@i}{\textarmgobblespace}%
+\DeclareTextCommand{\textarmgobblespace}{L8U}{}
+
+\obeyspaces
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{\sep}{\sep }%
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{ }{\space}%
+\DeclareTextCompositeCommand{\textarmuh}{L8U}{ }{\textarmuh}%
+\DeclareTextCompositeCommand{\textarmgobblespace}{L8U}{ }{\textarmenARM@i}%
+\catcode`\ 10
+
+
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{A}{Ա}% A
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{B}{Բ}% B
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{G}{%
+ \arm@en{G}{Գ}{\arm@nc{'}{Ժ}{\arm@nc{h}{Ղ}{\arm@nc{H}{Ղ}{Գ}}}}}% G or G' or Gh or GH
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{D}{%
+ \arm@en{D}{Դ}{\arm@nc{z}{Ձ}{\arm@nc{Z}{Ձ}{Դ}}}}% D or Dz or DZ
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{E}{%
+ \arm@en{E}{Ե}{\arm@nc{'}{Է}{Ե}}}% E or E'
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{Z}{Զ}% Z
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{I}{Ի}% I
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{L}{Լ}% L
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{X}{Խ}% X
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{K}{Կ}% K
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{H}{Հ}% H
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{M}{Մ}% M
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{Y}{Յ}% Y
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{N}{Ն}% N
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{O}{%
+ \arm@en{O}{Ո}{\arm@nc{'}{Օ}{\arm@nc{W}{ՈՒ}{Ո}}}}% O or O' or OW
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{P}{%
+ \arm@en{P}{Պ}{\arm@nc{'}{Փ}{\arm@nc{h}{Փ}{\arm@nc{H}{Փ}{Պ}}}}}% P or P' or Ph or PH
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{J}{%
+ \arm@en{J}{Ջ}{\arm@nc{'}{Ճ}{Ջ}}}% J or J'
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{S}{%
+ \arm@en{S}{Ս}{\arm@nc{h}{Շ}{\arm@nc{H}{Շ}{Ս}}}}% S or Sh or SH
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{V}{Վ}% V
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{T}{%
+ \arm@en{T}{Տ}{\arm@nc{'}{Թ}{\arm@nc{h}{Թ}{\arm@nc{H}{Թ}{Տ}}}}}% T or T' or Th or TH
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{R}{%
+ \arm@en{R}{Ր}{\arm@nc{'}{Ռ}{Ր}}}% R or R'
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{C}{%
+ \arm@en{C}{Ց}{\arm@nc{'}{Ծ}{\arm@nc{h}{Չ}{\arm@nc{H}{Չ}{Ց}}}}}% C or C' or Ch or CH
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{W}{Ւ}% W
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{U}{%
+ \arm@en{U}{ՈՒ}{\arm@nc{'}{Ը}{ՈՒ}}}% U or U'
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{Q}{Ք}% Q
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{F}{Ֆ}% F
+
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{a}{ա}% a
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{b}{բ}% b
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{g}{%
+ \arm@en{g}{գ}{\arm@nc{'}{ժ}{\arm@nc{h}{ղ}{գ}}}}% g or g' or gh
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{d}{%
+ \arm@en{d}{դ}{\arm@nc{z}{ձ}{դ}}}% d or dz
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{e}{%
+ \arm@en{e}{ե}{\arm@nc{'}{է}{\arm@nc{v}{և}{ե}}}}% e or e' or ev
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{z}{զ}% z
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{i}{ի}% i
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{l}{լ}% l
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{x}{խ}% x
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{k}{կ}% k
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{h}{հ}% h
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{m}{%
+ \arm@en{m}{մ}{\arm@nc{n}{ﬓ}{\arm@nc{e}{ﬔ}{%
+ \arm@nc{i}{ﬕ}{\arm@nc{k}{ﬗ}{մ}}}}}}% m or mn or me or mi or mk ligatures
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{y}{յ}% y
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{n}{ն}% n
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{o}{%
+ \arm@en{o}{ո}{\arm@nc{'}{օ}{\arm@nc{w}{ու}{ո}}}}% o or o' or ow
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{p}{%
+ \arm@en{p}{պ}{\arm@nc{'}{փ}{\arm@nc{h}{փ}{պ}}}}% p or p' or ph
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{j}{%
+ \arm@en{j}{ջ}{\arm@nc{'}{ճ}{ջ}}}% j or j'
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{s}{%
+ \arm@en{s}{ս}{\arm@nc{h}{շ}{ս}}}% s or sh
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{v}{%
+ \arm@en{v}{վ}{\arm@nc{n}{ﬖ}{վ}}}% v or vn
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{t}{%
+ \arm@en{t}{տ}{\arm@nc{'}{թ}{\arm@nc{h}{թ}{տ}}}}% t or t' or th
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{r}{%
+ \arm@en{r}{ր}{\arm@nc{'}{ռ}{ր}}}% r or r'
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{c}{%
+ \arm@en{c}{ց}{\arm@nc{'}{ծ}{\arm@nc{h}{չ}{ց}}}}% c or c' or ch
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{w}{ւ}% w
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{u}{%
+ \arm@en{u}{ու}{\arm@nc{'}{ը}{ու}}}% u or u'
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{q}{ք}% q
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{f}{ֆ}% f
+
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{~}{ }% no break space
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{\{}{\textbraceleft}%
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{\}}{\textbraceright}%
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{\!}{!}%
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{\$}{\textdollar}%
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{\%}{\textpercent}%
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{\?}{?}%
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{\#}{\texthash}%
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{\&}{\textand}%
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{"}{”}%
+
+% Armenian punctuation
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{:}{։}%
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{|}{՛}% emphasis mark
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{?}{՞}%
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{!}{՜}%
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{,}{,}% same character
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{\|}{—}%
+
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{(}{(}%
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{)}{)}%
+
+% multi-character punctuation
+
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{`}{\arm@en{`}{՝}{\arm@nc{`}{“}{՝}}}
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{'}{\arm@en{'}{՚}{\arm@nc{'}{”}{՚}}}
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{-}{\arm@en{-}{‐}% - or -- or ---
+ {\arm@nc{-}{\arm@en{-}{֊}{\arm@nc{-}{—}{֊}}}{‐}}}%
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{.}{\arm@en{.}{.}% . or .. or ... or ....
+ {\arm@nc{.}{\arm@en{.}{..}{\arm@nc{.}{\arm@en{.}{…}{\arm@nc{.}{…․}{…}}}{..}}}{.}}}
+
+% catch active chars < and >
+\catcode `\< \active
+\catcode `\> \active
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{<}{\arm@en{<}{«}{\arm@nc{<}{«}{«}}}
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{>}{\arm@en{>}{»}{\arm@nc{>}{»}{»}}}
+\catcode `\< 12
+\catcode `\> 12
+
+%\DeclareTextCompositeCommand{\textARMenc}{L8U}{\pdfx@lt}{\arm@en{<}{«}{\arm@nc{\pdfx@lt}{«}{«}}}
+%\DeclareTextCompositeCommand{\textARMenc}{L8U}{\pdfx@gt}{\arm@en{>}{»}{\arm@nc{\pdfx@gt}{»}{»}}}
+
+
+
+% ArmSCII8 encoding
+%
+
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{^^b2}{Ա}% Upper-case A (Ayb) letter.
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{^^b4}{Բ}% Upper-case B (Ben) letter.
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{^^b6}{Գ}% Upper-case G (Gim) letter.
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{^^b8}{Դ}% Upper-case D (Da) letter.
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{^^ba}{Ե}% Upper-case E (Yech) letter.
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{^^bc}{Զ}% Upper-case Z (Za) letter.
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{^^be}{Է}% Upper-case E' (E) letter.
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{^^c0}{Ը}% Upper-case U' (At) letter.
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{^^c2}{Թ}% Upper-case TH (To) letter.
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{^^c4}{Ժ}% Upper-case G' (Zhe) letter.
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{^^c6}{Ի}% Upper-case I (Ini) letter.
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{^^c8}{Լ}% Upper-case L (Lyun) letter.
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{^^ca}{Խ}% Upper-case X (Khe) letter.
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{^^cc}{Ծ}% Upper-case C' (Tsa) letter.
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{^^ce}{Կ}% Upper-case K (Ken) letter.
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{^^d0}{Հ}% Upper-case H (Ho) letter.
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{^^d2}{Ձ}% Upper-case DZ (Dza) letter.
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{^^d4}{Ղ}% Upper-case GH (Ghat) letter.
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{^^d6}{Ճ}% Upper-case J' (Tche) letter.
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{^^d8}{Մ}% Upper-case M (Men) letter.
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{^^da}{Յ}% Upper-case Y (Hi) letter.
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{^^dc}{Ն}% Upper-case N (Nu) letter.
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{^^de}{Շ}% Upper-case SH (Sha) letter.
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{^^e0}{Ո}% Upper-case O (Vo) letter.
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{^^e2}{Չ}% Upper-case CH (Cha) letter.
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{^^e4}{Պ}% Upper-case P (Pe) letter.
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{^^e6}{Ջ}% Upper-case J (Je) letter.
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{^^e8}{Ռ}% Upper-case R' (Ra) letter.
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{^^ea}{Ս}% Upper-case S (Se) letter.
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{^^ec}{Վ}% Upper-case V (Vev) letter.
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{^^ee}{Տ}% Upper-case T (Tyun) letter.
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{^^f0}{Ր}% Upper-case R (Re) letter.
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{^^f2}{Ց}% Upper-case C (Tso) letter.
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{^^f4}{Ւ}% Upper-case W (Vyun) letter.
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{^^f6}{Փ}% Upper-case PH (Pyur) letter.
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{^^f8}{Ք}% Upper-case Q (Ke) letter.
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{^^fa}{Օ}% Upper-case O' (O) letter.
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{^^fc}{Ֆ}% Upper-case F (Fe) letter.
+
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{^^b3}{ա}% Lower-case a (ayb) letter.
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{^^b5}{բ}% Lower-case b (ben) letter.
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{^^b7}{գ}% Lower-case g (gim) letter.
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{^^b9}{դ}% Lower-case d (da) letter.
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{^^bb}{ե}% Lower-case e (eych) letter.
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{^^bd}{զ}% Lower-case z (za) letter.
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{^^bf}{է}% Lower-case e' (e) letter.
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{^^c1}{ը}% Lower-case u' (at) letter.
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{^^c3}{թ}% Lower-case th (to) letter.
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{^^c5}{ժ}% Lower-case g' (zhe) letter.
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{^^c7}{ի}% Lower-case i (ini) letter.
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{^^c9}{լ}% Lower-case l (lyun) letter.
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{^^cb}{խ}% Lower-case x (khe) letter.
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{^^cd}{ծ}% Lower-case c' (tsa) letter.
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{^^cf}{կ}% Lower-case k (ken) letter.
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{^^d1}{հ}% Lower-case h (ho) letter.
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{^^d3}{ձ}% Lower-case dz (dza) letter.
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{^^d5}{ղ}% Lower-case gh (ghat) letter.
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{^^d7}{ճ}% Lower-case j' (tche) letter.
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{^^d9}{մ}% Lower-case m (men) letter.
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{^^db}{յ}% Lower-case y (hi) letter.
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{^^dd}{ն}% Lower-case n (nu) letter.
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{^^df}{շ}% Lower-case sh (sha) letter.
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{^^e1}{ո}% Lower-case o (vo) letter.
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{^^e3}{չ}% Lower-case ch (cha) letter.
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{^^e5}{պ}% Lower-case p (pe) letter.
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{^^e7}{ջ}% Lower-case j (je) letter.
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{^^e9}{ռ}% Lower-case r' (ra) letter.
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{^^eb}{ս}% Lower-case s (se) letter.
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{^^ed}{վ}% Lower-case v (vev) letter.
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{^^ef}{տ}% Lower-case t (tyun) letter.
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{^^f1}{ր}% Lower-case r (re) letter.
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{^^f3}{ց}% Lower-case c (tso) letter.
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{^^f5}{ւ}% Lower-case w (vyun) letter.
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{^^f7}{փ}% Lower-case ph (pyur) letter.
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{^^f9}{ք}% Lower-case q (ke) letter.
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{^^fb}{օ}% Lower-case o' (o) letter.
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{^^fd}{ֆ}% Lower-case f (fe) letter.
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{^^a0}{\ }% Non-breakable space symbol.
+
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{^^a1}{^^d6^^8d}% Eternity (armeternity) symbol.
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{^^a2}{§}% Section sign (armsection) symbol.
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{^^a3}{։}% Verjaket (armfullstop) symbol.
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{^^a4}{)}% Aj phakagic' (armparenright) symbol.
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{^^a5}{(}% Dzax phakagic' (armparenleft) symbol.
+%\DeclareTextCompositeCommand{\textARMenc}{L8U}{^^a6}{’}% Aj chakert (armquotright) symbol.
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{^^a6}{»}%
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{^^a7}{«}%
+%\DeclareTextCompositeCommand{\textARMenc}{L8U}{^^a7}{‘}% Dzax chakert(armquotleft) symbol.
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{^^a8}{—}% Anjatman gic' (armemdash) symbol.
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{^^a9}{.}% Mijaket (armdot) symbol.
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{^^aa}{՝}% Buth (armsep) symbol.
+%\DeclareTextCompositeCommand{\textARMenc}{L8U}{^^ab}{՝}% Storaket (armcoma) symbol.
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{^^ab}{,}% Storaket (armcoma) symbol.
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{^^ac}{‐}% Miuthyan gc'ik (armendash) symbol.
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{^^ad}{֊}% Toghadardzi nshan (armyentamna) symbol.
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{^^ae}{…}% Kaxman keter (armellipsis) symbol.
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{^^af}{՜}% Bacakanchakan nshan (armexclam) symbol.
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{^^b0}{՛}% Shesht (armaccent) symbol.
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{^^b1}{՞}% Harcakan nshan (armquestion) symbol.
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{^^fe}{՚}% Apatharc (armapostrophe) symbol.
+\DeclareTextCompositeCommand{\textARMenc}{L8U}{^^ff}{՚}% Apatharc (armapostrophe) symbol.
+
+%\DeclareTextCompositeCommand{\textARMenc}{L8U}{^^a0}{ }%
+%\DeclareTextCompositeCommand{\textARMenc}{L8U}{^^a1}{\armeternity}%
+%\DeclareTextCompositeCommand{\textARMenc}{L8U}{^^a2}{\armsection}%
+%\DeclareTextCompositeCommand{\textARMenc}{L8U}{^^a3}{\armfullstop}%
+%\DeclareTextCompositeCommand{\textARMenc}{L8U}{^^a4}{\armparenright}%
+%\DeclareTextCompositeCommand{\textARMenc}{L8U}{^^a5}{\armparenleft}%
+%\DeclareTextCompositeCommand{\textARMenc}{L8U}{^^a6}{\armquotright}%
+%\DeclareTextCompositeCommand{\textARMenc}{L8U}{^^a7}{\armquotleft}%
+%\DeclareTextCompositeCommand{\textARMenc}{L8U}{^^a8}{\armemdash}%
+%\DeclareTextCompositeCommand{\textARMenc}{L8U}{^^a9}{\armdot}%
+%\DeclareTextCompositeCommand{\textARMenc}{L8U}{^^aa}{\armsep}%
+%\DeclareTextCompositeCommand{\textARMenc}{L8U}{^^ab}{\armcomma}%
+%\DeclareTextCompositeCommand{\textARMenc}{L8U}{^^ac}{\armendash}%
+%\DeclareTextCompositeCommand{\textARMenc}{L8U}{^^ad}{\armyentamna}%
+%\DeclareTextCompositeCommand{\textARMenc}{L8U}{^^ae}{\armellipsis}%
+%\DeclareTextCompositeCommand{\textARMenc}{L8U}{^^af}{\armexclam}%
+%\DeclareTextCompositeCommand{\textARMenc}{L8U}{^^b0}{\armaccent}%
+%\DeclareTextCompositeCommand{\textARMenc}{L8U}{^^b1}{\armquestion}%
+
diff --git a/macros/latex/contrib/pdfx/l8ucyr-penc.def b/macros/latex/contrib/pdfx/l8ucyr-penc.def
new file mode 100644
index 0000000000..bd437b576f
--- /dev/null
+++ b/macros/latex/contrib/pdfx/l8ucyr-penc.def
@@ -0,0 +1,763 @@
+%%
+%% This is file `l8ucyr-penc.def'
+%% Formerly known as `l8ucyr.def'
+%%
+%% l8ucyr-penc.def
+%%
+%% This is a hand-written file, based upon t1enc.def
+%% with extensions for more composite characters.
+%%
+%% Copyright 2017 Ross Moore <ross.moore@mq.edu.au>
+%%
+\ProvidesFile{l8ucyr-penc.def}
+ [2017/06/23 v0.6
+ Cyrillic support for UTF8 in XMP metadata]
+
+%
+% uses macro names mostly from uni-4.def of the ucs.sty package
+%
+%%%% Cyrillic Characters + accents Ux0400 – Ux04FF
+%
+%\DeclareTextCommand{\U}{L8U}[1]{#1̆}% clashes with IPA usage
+\DeclareTextCommand{\U}{L8U}[1]{\u{#1}}%
+\DeclareTextCommand{\C}{L8U}[1]{#1̏}%
+\DeclareTextCommand{\CYRtitlo}{L8U}[1]{#1҃}%
+\DeclareTextCommand{\CYRpalatal}{L8U}[1]{#1҄}%
+\DeclareTextCommand{\CYRdasia}{L8U}[1]{#1҅}%
+\DeclareTextCommand{\CYRpsili}{L8U}[1]{#1҆}%
+\DeclareTextCommand{\CYRpokrytie}{L8U}[1]{#1҇}%
+\DeclareTextCommand{\CYRSDSC}{L8U}[1]{#1̧}%
+\DeclareTextCommand{\cyrlegion}{L8U}[1]{#1҈}%
+\DeclareTextCommand{\cyrleodr}{L8U}[1]{#1҉}%
+%
+%
+% Ux0400 — uppercase accents + extras
+%
+\DeclareTextCompositeCommand{\`}{L8U}{\CYRE}{Ѐ}
+%%\DeclareTextCompositeCommand{\`}{L8U}{Е}{Ѐ}
+%\DeclareTextCompositeCommand{\`}{L8U}{E}{Ѐ}% overrides È
+\DeclareTextCompositeCommand{\"}{L8U}{\CYRE}{Ё}
+%%\DeclareTextCompositeCommand{\"}{L8U}{Е}{Ё}
+\DeclareTextCommand{\CYRYO}{L8U}{Ё}
+%\DeclareTextCompositeCommand{\"}{L8U}{E}{Ё}% overrides Ë
+\DeclareTextCommand{\CYRDJE}{L8U}{Ђ}
+\DeclareTextCompositeCommand{\'}{L8U}{\CYRG}{Ѓ}
+%%\DeclareTextCompositeCommand{\'}{L8U}{Г}{Ѓ}
+\DeclareTextCommand{\CYRGJE}{L8U}{Ѓ}
+\DeclareTextCommand{\CYRIE}{L8U}{Є}
+\DeclareTextCommand{\CYRDZE}{L8U}{Ѕ}
+\DeclareTextCommand{\CYRII}{L8U}{І}
+\DeclareTextCompositeCommand{\"}{L8U}{\CYRII}{Ї}
+%%\DeclareTextCompositeCommand{\"}{L8U}{І}{Ї}
+\DeclareTextCommand{\CYRYI}{L8U}{Ї}
+%\DeclareTextCompositeCommand{\"}{L8U}{I}{Ї}% overrides Ï
+\DeclareTextCommand{\CYRJE}{L8U}{Ј}
+\DeclareTextCommand{\CYRLJE}{L8U}{Љ}
+\DeclareTextCommand{\CYRNJE}{L8U}{Њ}
+\DeclareTextCommand{\CYRTSHE}{L8U}{Ћ}
+\DeclareTextCompositeCommand{\'}{L8U}{\CYRK}{Ќ}
+%%\DeclareTextCompositeCommand{\'}{L8U}{К}{Ќ}
+\DeclareTextCommand{\CYRKJE}{L8U}{Ќ}
+%\DeclareTextCompositeCommand{\"}{L8U}{K}{Ќ}% ascii-K
+\DeclareTextCompositeCommand{\`}{L8U}{\CYRI}{Ѝ}
+%%\DeclareTextCompositeCommand{\`}{L8U}{И}{Ѝ}
+\DeclareTextCompositeCommand{\u}{L8U}{\CYRU}{Ў}
+\DeclareTextCompositeCommand{\U}{L8U}{\CYRU}{Ў}
+%%\DeclareTextCompositeCommand{\u}{L8U}{У}{Ў}
+%%\DeclareTextCompositeCommand{\U}{L8U}{У}{Ў}
+\DeclareTextCommand{\CYRUSHRT}{L8U}{Ў}
+\DeclareTextCommand{\CYRDZHE}{L8U}{Џ}
+% Ux0410 — uppercase
+\DeclareTextCommand{\CYRA}{L8U}{А}
+\DeclareTextCommand{\CYRB}{L8U}{Б}
+\DeclareTextCommand{\CYRV}{L8U}{В}
+\DeclareTextCommand{\CYRG}{L8U}{Г}
+\DeclareTextCommand{\CYRD}{L8U}{Д}
+\DeclareTextCommand{\CYRE}{L8U}{Е}
+\DeclareTextCommand{\CYRZH}{L8U}{Ж}
+\DeclareTextCommand{\CYRZ}{L8U}{З}
+\DeclareTextCommand{\CYRI}{L8U}{И}
+\DeclareTextCompositeCommand{\u}{L8U}{\CYRI}{Й}
+\DeclareTextCompositeCommand{\U}{L8U}{\CYRI}{Й}
+%%\DeclareTextCompositeCommand{\u}{L8U}{И}{Й}
+%%\DeclareTextCompositeCommand{\U}{L8U}{И}{Й}
+\DeclareTextCommand{\CYRISHRT}{L8U}{Й}
+\DeclareTextCommand{\CYRK}{L8U}{К}
+\DeclareTextCommand{\CYRL}{L8U}{Л}
+\DeclareTextCommand{\CYRM}{L8U}{М}
+\DeclareTextCommand{\CYRN}{L8U}{Н}
+\DeclareTextCommand{\CYRO}{L8U}{О}
+\DeclareTextCommand{\CYRP}{L8U}{П}
+\DeclareTextCommand{\CYRR}{L8U}{Р}
+\DeclareTextCommand{\CYRS}{L8U}{С}
+\DeclareTextCommand{\CYRT}{L8U}{Т}
+\DeclareTextCommand{\CYRU}{L8U}{У}
+\DeclareTextCommand{\CYRF}{L8U}{Ф}
+\DeclareTextCommand{\CYRH}{L8U}{Х}
+\DeclareTextCommand{\CYRC}{L8U}{Ц}
+\DeclareTextCommand{\CYRCH}{L8U}{Ч}
+\DeclareTextCommand{\CYRSH}{L8U}{Ш}
+\DeclareTextCommand{\CYRSHCH}{L8U}{Щ}
+\DeclareTextCommand{\CYRHRDSN}{L8U}{Ъ}
+\DeclareTextCommand{\texthardsign}{L8U}{Ъ}
+\DeclareTextCommand{\CYRERY}{L8U}{Ы}
+\DeclareTextCommand{\CYRDZHE}{L8U}{Ь}
+\DeclareTextCommand{\CYRSFTSN}{L8U}{Ь}
+\DeclareTextCommand{\textsoftsign}{L8U}{Ь}
+\DeclareTextCommand{\CYREREV}{L8U}{Э}
+\DeclareTextCommand{\CYRYU}{L8U}{Ю}
+\DeclareTextCommand{\CYRYA}{L8U}{Я}
+% Ux0430 — lowercase
+\DeclareTextCommand{\cyra}{L8U}{а}
+\DeclareTextCommand{\cyrb}{L8U}{б}
+\DeclareTextCommand{\cyrv}{L8U}{в}
+\DeclareTextCommand{\cyrg}{L8U}{г}
+\DeclareTextCommand{\cyrd}{L8U}{д}
+\DeclareTextCommand{\cyre}{L8U}{е}
+\DeclareTextCommand{\cyrzh}{L8U}{ж}
+\DeclareTextCommand{\cyrz}{L8U}{з}
+\DeclareTextCommand{\cyri}{L8U}{и}
+\DeclareTextCompositeCommand{\u}{L8U}{\cyri}{й}
+\DeclareTextCompositeCommand{\U}{L8U}{\cyri}{й}
+%%\DeclareTextCompositeCommand{\u}{L8U}{и}{й}
+%%\DeclareTextCompositeCommand{\U}{L8U}{и}{й}
+\DeclareTextCommand{\cyrishrt}{L8U}{й}
+\DeclareTextCommand{\cyrk}{L8U}{к}
+\DeclareTextCommand{\cyrl}{L8U}{л}
+\DeclareTextCommand{\cyrm}{L8U}{м}
+\DeclareTextCommand{\cyrn}{L8U}{н}
+\DeclareTextCommand{\cyro}{L8U}{о}
+\DeclareTextCommand{\cyrp}{L8U}{п}
+\DeclareTextCommand{\cyrr}{L8U}{р}
+\DeclareTextCommand{\cyrs}{L8U}{с}
+\DeclareTextCommand{\cyrt}{L8U}{т}
+\DeclareTextCommand{\cyru}{L8U}{у}
+\DeclareTextCommand{\cyrf}{L8U}{ф}
+\DeclareTextCommand{\cyrh}{L8U}{х}
+\DeclareTextCommand{\cyrc}{L8U}{ц}
+\DeclareTextCommand{\cyrch}{L8U}{ч}
+\DeclareTextCommand{\cyrsh}{L8U}{ш}
+\DeclareTextCommand{\cyrshch}{L8U}{щ}
+\DeclareTextCommand{\cyrhrdsn}{L8U}{ъ}
+\DeclareTextCommand{\cyrery}{L8U}{ы}
+\DeclareTextCommand{\cyrdzhe}{L8U}{ь}
+\DeclareTextCommand{\cyrsftsn}{L8U}{ь}
+\DeclareTextCommand{\cyrerev}{L8U}{э}
+\DeclareTextCommand{\cyryu}{L8U}{ю}
+\DeclareTextCommand{\cyrya}{L8U}{я}
+% Ux0450 — lowercase accents + extras
+\DeclareTextCompositeCommand{\`}{L8U}{\cyre}{ѐ}
+%%\DeclareTextCompositeCommand{\`}{L8U}{е}{ѐ}
+%\DeclareTextCompositeCommand{\`}{L8U}{e}{ѐ}% overrides è
+\DeclareTextCompositeCommand{\"}{L8U}{\cyre}{ё}
+%%\DeclareTextCompositeCommand{\"}{L8U}{е}{ё}
+\DeclareTextCommand{\cyryo}{L8U}{ё}
+%\DeclareTextCompositeCommand{\`}{L8U}{e}{ё}% overrides ë
+\DeclareTextCommand{\cyrdje}{L8U}{ђ}
+\DeclareTextCompositeCommand{\'}{L8U}{\cyrg}{ѓ}
+%%\DeclareTextCompositeCommand{\'}{L8U}{г}{ѓ}
+\DeclareTextCommand{\cyrgje}{L8U}{ѓ}
+\DeclareTextCommand{\cyrie}{L8U}{є}
+\DeclareTextCommand{\cyrdze}{L8U}{ѕ}
+\DeclareTextCommand{\cyrii}{L8U}{і}
+\DeclareTextCompositeCommand{\"}{L8U}{\cyrii}{ї}
+%%\DeclareTextCompositeCommand{\"}{L8U}{і}{ї}
+\DeclareTextCommand{\cyryi}{L8U}{ї}
+%\DeclareTextCompositeCommand{\"}{L8U}{i}{ї}% overrides ï
+\DeclareTextCommand{\cyrje}{L8U}{ј}
+\DeclareTextCommand{\cyrlje}{L8U}{љ}
+\DeclareTextCommand{\cyrnje}{L8U}{њ}
+\DeclareTextCommand{\cyrtshe}{L8U}{ћ}
+\DeclareTextCompositeCommand{\'}{L8U}{\cyrk}{ќ}
+%%\DeclareTextCompositeCommand{\'}{L8U}{к}{ќ}
+\DeclareTextCommand{\cyrkje}{L8U}{ќ}
+%\DeclareTextCompositeCommand{\"}{L8U}{k}{ќ}% ascii-k
+\DeclareTextCompositeCommand{\`}{L8U}{\cyri}{ѝ}
+%%\DeclareTextCompositeCommand{\`}{L8U}{и}{ѝ}
+\DeclareTextCompositeCommand{\u}{L8U}{\cyru}{ў}
+\DeclareTextCompositeCommand{\U}{L8U}{\cyru}{ў}
+\DeclareTextCompositeCommand{\U}{L8U}{\curu}{ў}% mistake in PD1 (2009)
+%%\DeclareTextCompositeCommand{\u}{L8U}{у}{ў}
+%%\DeclareTextCompositeCommand{\U}{L8U}{у}{ў}
+%\DeclareTextCompositeCommand{\u}{L8U}{y}{ў}% ascii-y
+\DeclareTextCommand{\cyrushrt}{L8U}{ў}
+\DeclareTextCommand{\cyrdzhe}{L8U}{џ}
+% Ux0460
+\DeclareTextCommand{\CYROMEGA}{L8U}{Ѡ}
+\DeclareTextCommand{\cyromega}{L8U}{ѡ}
+\DeclareTextCommand{\CYRYAT}{L8U}{Ѣ}
+\DeclareTextCommand{\cyryat}{L8U}{ѣ}
+\DeclareTextCommand{\CYRIOTEST}{L8U}{Ѥ}% mistake in ucs.sty ?
+\DeclareTextCommand{\CYRIOTE}{L8U}{Ѥ}
+\DeclareTextCommand{\cyriotest}{L8U}{ѥ}% mistake in ucs.sty ?
+\DeclareTextCommand{\cyriote}{L8U}{ѥ}
+\DeclareTextCommand{\CYRLYUS}{L8U}{Ѧ}
+\DeclareTextCommand{\cyrlyus}{L8U}{ѧ}
+\DeclareTextCommand{\CYRIOTLYUS}{L8U}{Ѩ}
+\DeclareTextCommand{\cyriotlyus}{L8U}{ѩ}
+\DeclareTextCommand{\CYRBYUS}{L8U}{Ѫ}
+\DeclareTextCommand{\cyrbyus}{L8U}{ѫ}
+\DeclareTextCommand{\CYRIOTBYUS}{L8U}{Ѭ}
+\DeclareTextCommand{\cyriotbyus}{L8U}{ѭ}
+\DeclareTextCommand{\CYRKSI}{L8U}{Ѯ}
+\DeclareTextCommand{\cyrksi}{L8U}{ѯ}
+\DeclareTextCommand{\CYRPSI}{L8U}{Ѱ}
+\DeclareTextCommand{\cyrpsi}{L8U}{ѱ}
+\DeclareTextCommand{\CYRFITA}{L8U}{Ѳ}
+\DeclareTextCommand{\cyrfita}{L8U}{ѳ}
+\DeclareTextCommand{\CYRIZH}{L8U}{Ѵ}
+\DeclareTextCommand{\cyrizh}{L8U}{ѵ}
+\DeclareTextCompositeCommand{\C}{L8U}{\CYRIZH}{Ѷ}
+%%\DeclareTextCompositeCommand{\C}{L8U}{Ѵ}{Ѷ}
+\DeclareTextCompositeCommand{\C}{L8U}{\cyrizh}{ѷ}
+%%\DeclareTextCompositeCommand{\C}{L8U}{ѵ}{ѷ}
+\DeclareTextCommand{\CYRVARUK}{L8U}{Ѹ}
+\DeclareTextCommand{\CYRUK}{L8U}{Ѹ}
+\DeclareTextCommand{\cyrvaruk}{L8U}{ѹ}
+\DeclareTextCommand{\cyruk}{L8U}{ѹ}
+\DeclareTextCommand{\CYROMRND}{L8U}{Ѻ}
+\DeclareTextCommand{\CYROMEGARND}{L8U}{Ѻ}
+\DeclareTextCommand{\cyromrnd}{L8U}{ѻ}
+\DeclareTextCommand{\cyromegarnd}{L8U}{ѻ}
+\DeclareTextCompositeCommand{\CYRtitlo}{L8U}{\CYROMEGA}{Ѽ}
+%%\DeclareTextCompositeCommand{\CYRtitlo}{L8U}{Ѡ}{Ѽ}
+\DeclareTextCommand{\CYROMEGATITLO}{L8U}{Ѽ}
+\DeclareTextCommand{\CYROMTLO}{L8U}{Ѽ}
+\DeclareTextCompositeCommand{\CYRtitlo}{L8U}{\cyromega}{ѽ}
+%%\DeclareTextCompositeCommand{\CYRtitlo}{L8U}{ѡ}{ѽ}
+\DeclareTextCommand{\cyromegatitlo}{L8U}{ѽ}
+\DeclareTextCommand{\cyromtlo}{L8U}{ѽ}
+\DeclareTextCommand{\CYROT}{L8U}{Ѿ}
+\DeclareTextCommand{\cyrot}{L8U}{ѿ}
+\DeclareTextCommand{\CYRKOPPA}{L8U}{Ҁ}
+\DeclareTextCommand{\cyrkoppa}{L8U}{ҁ}
+% Ux0482 more accents and diacritics
+\DeclareTextCommand{\CYRthousands}{L8U}{҂}
+\DeclareTextCompositeCommand{\CYRtitlo}{L8U}{\empty}{ ҃}
+\DeclareTextCompositeCommand{\CYRpalatal}{L8U}{\empty}{ ҄}
+\DeclareTextCompositeCommand{\CYRdasia}{L8U}{\empty}{ ҅}
+\DeclareTextCompositeCommand{\CYRpsili}{L8U}{\empty}{ ҆}
+\DeclareTextCompositeCommand{\CYRpokrytie}{L8U}{\empty}{ ҇}
+\DeclareTextCompositeCommand{\cyrlegion}{L8U}{\empty}{ ҈}
+\DeclareTextCompositeCommand{\cyrleodr}{L8U}{\empty}{ ҉}
+
+%\DeclareTextCompositeCommand{\???}{L8U}{\CYRISHRT}{Ҋ}
+%\DeclareTextCompositeCommand{\???}{L8U}{Й}{Ҋ}
+\DeclareTextCommand{\CYRISHRTDSC}{L8U}{Ҋ}
+%\DeclareTextCompositeCommand{\???}{L8U}{\cyrishrt}{ҋ}
+%\DeclareTextCompositeCommand{\???}{L8U}{й}{ҋ}
+\DeclareTextCommand{\cyrishrtdsc}{L8U}{ҋ}
+%%\DeclareTextCompositeCommand{\B}{L8U}{Ь}{Ҍ}
+\DeclareTextCommand{\CYRSEMISFTSN}{L8U}{Ҍ}
+%%\DeclareTextCompositeCommand{\B}{L8U}{ь}{ҍ}
+\DeclareTextCommand{\cyrsemisftsn}{L8U}{ҍ}
+\DeclareTextCommand{\CYRRTICK}{L8U}{Ҏ}
+\DeclareTextCommand{\cyrrtick}{L8U}{ҏ}
+% Ux0490
+\DeclareTextCommand{\CYRGUP}{L8U}{Ґ}
+\DeclareTextCommand{\cyrgup}{L8U}{ґ}
+\DeclareTextCompositeCommand{\B}{L8U}{\CYRG}{Ғ}
+%%\DeclareTextCompositeCommand{\B}{L8U}{Г}{Ғ}
+\DeclareTextCommand{\CYRGHCRS}{L8U}{Ғ}
+\DeclareTextCompositeCommand{\B}{L8U}{\cyrg}{ғ}
+%%\DeclareTextCompositeCommand{\B}{L8U}{г}{ғ}
+\DeclareTextCommand{\cyrghcrs}{L8U}{ғ}
+\DeclareTextCommand{\CYRGHK}{L8U}{Ҕ}
+\DeclareTextCommand{\cyrghk}{L8U}{ҕ}
+\DeclareTextCommand{\CYRZHDSC}{L8U}{Җ}
+\DeclareTextCommand{\cyrzhdsc}{L8U}{җ}
+\DeclareTextCompositeCommand{\c}{L8U}{\CYRZ}{Ҙ}
+%%\DeclareTextCompositeCommand{\c}{L8U}{З}{Ҙ}
+\DeclareTextCommand{\CYRZDSC}{L8U}{Ҙ}
+\DeclareTextCompositeCommand{\c}{L8U}{\cyrz}{ҙ}
+%%\DeclareTextCompositeCommand{\c}{L8U}{з}{ҙ}
+\DeclareTextCommand{\cyrzdsc}{L8U}{ҙ}
+\DeclareTextCommand{\CYRKDSC}{L8U}{Қ}
+\DeclareTextCommand{\cyrkdsc}{L8U}{қ}
+\DeclareTextCommand{\CYRKVCRS}{L8U}{Ҝ}
+\DeclareTextCommand{\cyrkvcrs}{L8U}{ҝ}
+\DeclareTextCompositeCommand{\B}{L8U}{\CYRK}{Ҟ}
+%%\DeclareTextCompositeCommand{\B}{L8U}{К}{Ҟ}
+\DeclareTextCommand{\CYRKHCRS}{L8U}{Ҟ}
+\DeclareTextCompositeCommand{\B}{L8U}{\cyrk}{ҟ}
+%%\DeclareTextCompositeCommand{\B}{L8U}{к}{ҟ}
+\DeclareTextCommand{\cyrkhcrs}{L8U}{ҟ}
+% Ux04A0
+\DeclareTextCommand{\CYRKBEAK}{L8U}{Ҡ}
+\DeclareTextCommand{\cyrkbeak}{L8U}{ҡ}
+\DeclareTextCommand{\CYRNDSC}{L8U}{Ң}
+\DeclareTextCommand{\cyrndsc}{L8U}{ң}
+\DeclareTextCommand{\CYRNG}{L8U}{Ҥ}
+\DeclareTextCommand{\cyrng}{L8U}{ҥ}
+\DeclareTextCommand{\CYRPHK}{L8U}{Ҧ}
+\DeclareTextCommand{\cyrphk}{L8U}{ҧ}
+\DeclareTextCommand{\CYRABHHA}{L8U}{Ҩ}
+\DeclareTextCommand{\cyrabhha}{L8U}{ҩ}
+\DeclareTextCompositeCommand{\CYRSDSC}{L8U}{\CYRS}{Ҫ}% error in PD1 (2009)
+\DeclareTextCompositeCommand{\c}{L8U}{\CYRS}{Ҫ}
+%%\DeclareTextCompositeCommand{\c}{L8U}{С}{Ҫ}
+\DeclareTextCompositeCommand{\k}{L8U}{\CYRS}{Ҫ}% PD1
+%%\DeclareTextCompositeCommand{\k}{L8U}{С}{Ҫ}% PD1
+\DeclareTextCompositeCommand{\c}{L8U}{\cyrs}{ҫ}
+%%\DeclareTextCompositeCommand{\k}{L8U}{с}{ҫ}% PD1
+\DeclareTextCompositeCommand{\k}{L8U}{\cyrs}{ҫ}% PD1
+%%\DeclareTextCompositeCommand{\c}{L8U}{с}{ҫ}
+\DeclareTextCommand{\cyrsdsc}{L8U}{ҫ}
+\DeclareTextCommand{\CYRTDSC}{L8U}{Ҭ}
+\DeclareTextCommand{\cyrtdsc}{L8U}{ҭ}
+\DeclareTextCommand{\CYRY}{L8U}{Ү}
+\DeclareTextCommand{\cyry}{L8U}{ү}
+% Ux04B0
+\DeclareTextCompositeCommand{\B}{L8U}{\CYRY}{Ұ}
+%%\DeclareTextCompositeCommand{\B}{L8U}{Ү}{Ұ}
+\DeclareTextCommand{\CYRYHCRS}{L8U}{Ұ}
+\DeclareTextCompositeCommand{\B}{L8U}{\cyry}{ұ}
+%%\DeclareTextCompositeCommand{\B}{L8U}{ү}{ұ}
+\DeclareTextCommand{\cyryhcrs}{L8U}{ұ}
+\DeclareTextCommand{\CYRHDSC}{L8U}{Ҳ}
+\DeclareTextCommand{\cyrhdsc}{L8U}{Ҳ}
+\DeclareTextCommand{\CYRTETSE}{L8U}{Ҵ}
+\DeclareTextCommand{\cyrtetse}{L8U}{ҵ}
+\DeclareTextCommand{\CYRCHRDSC}{L8U}{Ҷ}
+\DeclareTextCommand{\cyrchrdsc}{L8U}{ҷ}
+\DeclareTextCommand{\CYRCHVCRS}{L8U}{Ҹ}
+\DeclareTextCommand{\cyrchvcrs}{L8U}{ҹ}
+\DeclareTextCommand{\CYRSHHA}{L8U}{Һ}
+\DeclareTextCommand{\cyrshha}{L8U}{һ}
+\DeclareTextCommand{\CYRABHCH}{L8U}{Ҽ}
+\DeclareTextCommand{\cyrabhch}{L8U}{ҽ}
+\DeclareTextCompositeCommand{\k}{L8U}{\CYRABHCH}{Ҿ}
+%%\DeclareTextCompositeCommand{\k}{L8U}{Ҽ}{Ҿ}
+\DeclareTextCommand{\CYRABHCHDSC}{L8U}{Ҿ}
+\DeclareTextCompositeCommand{\k}{L8U}{\cyrabhch}{ҿ}
+%%\DeclareTextCompositeCommand{\k}{L8U}{ҽ}{ҿ}
+\DeclareTextCommand{\cyrabhchdsc}{L8U}{ҿ}
+% Ux04C0
+\DeclareTextCommand{\CYRpalochka}{L8U}{Ӏ}
+\DeclareTextCompositeCommand{\u}{L8U}{\CYRZH}{Ӂ}
+\DeclareTextCompositeCommand{\U}{L8U}{\CYRZH}{Ӂ}
+%%\DeclareTextCompositeCommand{\u}{L8U}{Ж}{ӂ}
+%%\DeclareTextCompositeCommand{\U}{L8U}{Ж}{ӂ}
+\DeclareTextCompositeCommand{\textpalhookbelow}{L8U}{\CYRK}{Ӄ}
+%%\DeclareTextCompositeCommand{\textpalhookbelow}{L8U}{К}{Ӄ}
+\DeclareTextCommand{\CYRKHK}{L8U}{Ӄ}
+\DeclareTextCompositeCommand{\textpalhookbelow}{L8U}{\cyrk}{ӄ}
+%%\DeclareTextCompositeCommand{\textpalhookbelow}{L8U}{к}{ӄ}
+\DeclareTextCommand{\cyrkhk}{L8U}{ӄ}
+\DeclareTextCommand{\CYRLDSC}{L8U}{Ӆ}
+\DeclareTextCommand{\cyrldsc}{L8U}{ӆ}
+\DeclareTextCompositeCommand{\textpalhookbelow}{L8U}{\CYRN}{Ӈ}
+%%\DeclareTextCompositeCommand{\textpalhookbelow}{L8U}{Н}{Ӈ}
+\DeclareTextCommand{\CYRNHK}{L8U}{Ӈ}
+\DeclareTextCompositeCommand{\textpalhookbelow}{L8U}{\cyrn}{ӈ}
+%%\DeclareTextCompositeCommand{\textpalhookbelow}{L8U}{н}{ӈ}
+\DeclareTextCommand{\cyrnhk}{L8U}{ӈ}
+\DeclareTextCommand{\CYRNTL}{L8U}{Ӊ}% ??? with tail
+\DeclareTextCommand{\cyrntl}{L8U}{ӊ}% ??? with tail
+\DeclareTextCommand{\CYRCHLDSC}{L8U}{Ӌ}
+\DeclareTextCommand{\cyrchldsc}{L8U}{ӌ}
+\DeclareTextCommand{\CYRMDSC}{L8U}{Ӎ}% PD1
+\DeclareTextCommand{\CYRMTL}{L8U}{Ӎ}% ??? with tail
+\DeclareTextCommand{\cyrmdsc}{L8U}{ӎ}% PD1
+\DeclareTextCommand{\cyrmtl}{L8U}{ӎ}% ??? with tail
+\DeclareTextCommand{\cyrpalochka}{L8U}{ӏ}% ???
+% Ux04D0 — Ux04FF
+\DeclareTextCompositeCommand{\u}{L8U}{\CYRA}{Ӑ}
+\DeclareTextCompositeCommand{\U}{L8U}{\CYRA}{Ӑ}
+%%\DeclareTextCompositeCommand{\u}{L8U}{А}{Ӑ}
+%%\DeclareTextCompositeCommand{\U}{L8U}{А}{Ӑ}
+\DeclareTextCompositeCommand{\u}{L8U}{\cyra}{ӑ}
+\DeclareTextCompositeCommand{\U}{L8U}{\cyra}{ӑ}
+%%\DeclareTextCompositeCommand{\u}{L8U}{а}{ӑ}
+%%\DeclareTextCompositeCommand{\U}{L8U}{а}{ӑ}
+\DeclareTextCompositeCommand{\"}{L8U}{\CYRA}{Ӓ}
+%%\DeclareTextCompositeCommand{\"}{L8U}{А}{Ӓ}
+\DeclareTextCompositeCommand{\"}{L8U}{\cyra}{ӓ}
+%%\DeclareTextCompositeCommand{\"}{L8U}{а}{ӓ}
+\DeclareTextCommand{\CYRAE}{L8U}{Ӕ}
+\DeclareTextCommand{\cyrae}{L8U}{ӕ}
+\DeclareTextCompositeCommand{\u}{L8U}{\CYRE}{Ӗ}
+\DeclareTextCompositeCommand{\U}{L8U}{\CYRE}{Ӗ}
+%%\DeclareTextCompositeCommand{\u}{L8U}{Е}{Ӗ}
+%%\DeclareTextCompositeCommand{\U}{L8U}{Е}{Ӗ}
+\DeclareTextCompositeCommand{\u}{L8U}{\cyre}{ӗ}
+\DeclareTextCompositeCommand{\U}{L8U}{\cyre}{ӗ}
+%%\DeclareTextCompositeCommand{\u}{L8U}{е}{ӗ}
+%%\DeclareTextCompositeCommand{\U}{L8U}{е}{ӗ}
+\DeclareTextCommand{\CYRSCHWA}{L8U}{Ә}
+\DeclareTextCommand{\cyrschwa}{L8U}{ә}
+\DeclareTextCompositeCommand{\"}{L8U}{\CYRSCHWA}{Ӛ}
+%%\DeclareTextCompositeCommand{\"}{L8U}{Ә}{Ӛ}
+\DeclareTextCompositeCommand{\"}{L8U}{\cyrschwa}{ӛ}
+%%\DeclareTextCompositeCommand{\"}{L8U}{ә}{ӛ}
+\DeclareTextCompositeCommand{\"}{L8U}{\CYRZH}{Ӝ}
+%%\DeclareTextCompositeCommand{\"}{L8U}{Ж}{Ӝ}
+\DeclareTextCompositeCommand{\"}{L8U}{\cyrzh}{ӝ}
+%%\DeclareTextCompositeCommand{\"}{L8U}{ж}{ӝ}
+\DeclareTextCompositeCommand{\"}{L8U}{\CYRZ}{Ӟ}
+%%\DeclareTextCompositeCommand{\"}{L8U}{З}{Ӟ}
+\DeclareTextCommand{\CYRABHDZE}{L8U}{Ӡ}
+\DeclareTextCompositeCommand{\"}{L8U}{\cyrz}{ӟ}
+%%\DeclareTextCompositeCommand{\"}{L8U}{з}{ӟ}
+\DeclareTextCommand{\cyrabhdze}{L8U}{ӡ}
+\DeclareTextCompositeCommand{\=}{L8U}{\CYRI}{Ӣ}
+%%\DeclareTextCompositeCommand{\=}{L8U}{И}{Ӣ}
+\DeclareTextCompositeCommand{\=}{L8U}{\cyri}{ӣ}
+%%\DeclareTextCompositeCommand{\=}{L8U}{и}{ӣ}
+\DeclareTextCompositeCommand{\"}{L8U}{\CYRI}{Ӥ}
+%%\DeclareTextCompositeCommand{\"}{L8U}{И}{Ӥ}
+\DeclareTextCompositeCommand{\"}{L8U}{\cyri}{ӥ}
+%%\DeclareTextCompositeCommand{\"}{L8U}{и}{ӥ}
+\DeclareTextCompositeCommand{\"}{L8U}{\CYRO}{Ӧ}
+%%\DeclareTextCompositeCommand{\"}{L8U}{О}{Ӧ}
+\DeclareTextCompositeCommand{\"}{L8U}{\cyro}{ӧ}
+%%\DeclareTextCompositeCommand{\"}{L8U}{о}{ӧ}
+\DeclareTextCommand{\CYROTLD}{L8U}{Ө}
+\DeclareTextCommand{\cyrotld}{L8U}{ө}
+\DeclareTextCompositeCommand{\"}{L8U}{\CYROTLD}{Ӫ}
+%%\DeclareTextCompositeCommand{\"}{L8U}{Ө}{Ӫ}
+\DeclareTextCompositeCommand{\"}{L8U}{\cyrotld}{ӫ}
+%%\DeclareTextCompositeCommand{\"}{L8U}{ө}{ӫ}
+\DeclareTextCompositeCommand{\"}{L8U}{\CYREREV}{Ӭ}
+%%\DeclareTextCompositeCommand{\"}{L8U}{Э}{Ӭ}
+\DeclareTextCompositeCommand{\"}{L8U}{\cyrerev}{ӭ}
+%%\DeclareTextCompositeCommand{\"}{L8U}{э}{ӭ}
+\DeclareTextCompositeCommand{\=}{L8U}{\CYRU}{Ӯ}
+%%\DeclareTextCompositeCommand{\=}{L8U}{У}{Ӯ}
+\DeclareTextCompositeCommand{\=}{L8U}{\cyru}{ӯ}
+%%\DeclareTextCompositeCommand{\=}{L8U}{у}{ӯ}
+\DeclareTextCompositeCommand{\"}{L8U}{\CYRU}{Ӱ}
+%%\DeclareTextCompositeCommand{\"}{L8U}{У}{Ӱ}
+\DeclareTextCompositeCommand{\"}{L8U}{\cyru}{ӱ}
+%%\DeclareTextCompositeCommand{\"}{L8U}{у}{ӱ}
+\DeclareTextCompositeCommand{\H}{L8U}{\CYRU}{Ӳ}
+%%\DeclareTextCompositeCommand{\H}{L8U}{У}{Ӳ}
+\DeclareTextCompositeCommand{\H}{L8U}{\cyru}{ӳ}
+%%\DeclareTextCompositeCommand{\H}{L8U}{у}{ӳ}
+\DeclareTextCompositeCommand{\"}{L8U}{\CYRCH}{Ӵ}
+%%\DeclareTextCompositeCommand{\"}{L8U}{Ч}{Ӵ}
+\DeclareTextCompositeCommand{\"}{L8U}{\cyrch}{ӵ}
+%%\DeclareTextCompositeCommand{\"}{L8U}{ч}{ӵ}
+\DeclareTextCommand{\CYRGDSC}{L8U}{Ӷ}
+\DeclareTextCommand{\cyrgdsc}{L8U}{ӷ}
+\DeclareTextCompositeCommand{\"}{L8U}{\CYRERY}{Ӹ}
+%%\DeclareTextCompositeCommand{\"}{L8U}{Ы}{Ӹ}
+\DeclareTextCompositeCommand{\"}{L8U}{\cyrery}{ӹ}
+%%\DeclareTextCompositeCommand{\"}{L8U}{ы}{ӹ}
+\DeclareTextCompositeCommand{\textpalhook}{L8U}{\CYRGHCRS}{Ӻ}
+%%\DeclareTextCompositeCommand{\textpalhook}{L8U}{Ғ}{Ӻ}
+\DeclareTextCompositeCommand{\textpalhook}{L8U}{\cyrghcrs}{ӻ}
+%%\DeclareTextCompositeCommand{\textpalhook}{L8U}{ғ}{ӻ}
+\DeclareTextCompositeCommand{\textpalhook}{L8U}{\CYRH}{Ӽ}
+%%\DeclareTextCompositeCommand{\textpalhook}{L8U}{Х}{Ӽ}
+\DeclareTextCommand{\CYRHHK}{L8U}{Ӽ}% PD1
+\DeclareTextCompositeCommand{\textpalhook}{L8U}{\cyrh}{ӽ}
+%%\DeclareTextCompositeCommand{\textpalhook}{L8U}{х}{ӽ}
+\DeclareTextCommand{\cyrhhk}{L8U}{ӽ}% PD1
+\DeclareTextCompositeCommand{\B}{L8U}{\CYRH}{Ӿ}
+%%\DeclareTextCompositeCommand{\B}{L8U}{Х}{Ӿ}
+\DeclareTextCompositeCommand{\B}{L8U}{\cyrh}{ӿ}
+%%\DeclareTextCompositeCommand{\B}{L8U}{х}{ӿ}
+
+
+%
+% Cyrillic Supplement Ux0500 – Ux0527
+%
+\DeclareTextCommand{\CYRKDE}{L8U}{Ԁ}
+\DeclareTextCommand{\cyrkde}{L8U}{ԁ}
+\DeclareTextCommand{\CYRKDJE}{L8U}{Ԃ}
+\DeclareTextCommand{\cyrkdje}{L8U}{ԃ}
+\DeclareTextCommand{\CYRKZJE}{L8U}{Ԅ}
+\DeclareTextCommand{\cyrkzje}{L8U}{ԅ}
+\DeclareTextCommand{\CYRKDZJE}{L8U}{Ԇ}
+\DeclareTextCommand{\cyrkdzje}{L8U}{ԇ}
+\DeclareTextCommand{\CYRKLJE}{L8U}{Ԉ}
+\DeclareTextCommand{\cyrklje}{L8U}{ԉ}
+\DeclareTextCommand{\CYRKNJE}{L8U}{Ԋ}
+\DeclareTextCommand{\cyrknje}{L8U}{ԋ}
+\DeclareTextCommand{\CYRKSJE}{L8U}{Ԍ}
+\DeclareTextCommand{\cyrksje}{L8U}{ԍ}
+\DeclareTextCommand{\CYRKTJE}{L8U}{Ԏ}
+\DeclareTextCommand{\cyrktje}{L8U}{ԏ}
+\DeclareTextCommand{\CYREPS}{L8U}{Ԑ}
+\DeclareTextCommand{\cyreps}{L8U}{ԑ}
+\DeclareTextCommand{\CYRLHK}{L8U}{Ԓ}
+\DeclareTextCommand{\cyrlhk}{L8U}{ԓ}
+\DeclareTextCommand{\CYRLHA}{L8U}{Ԕ}
+\DeclareTextCommand{\cyrlha}{L8U}{ԕ}
+\DeclareTextCommand{\CYRRHA}{L8U}{Ԗ}
+\DeclareTextCommand{\cyrrha}{L8U}{ԗ}
+\DeclareTextCommand{\CYRYAE}{L8U}{Ԙ}
+\DeclareTextCommand{\cyryae}{L8U}{ԙ}
+\DeclareTextCommand{\CYRQ}{L8U}{Ԛ}
+\DeclareTextCommand{\cyrq}{L8U}{ԛ}
+\DeclareTextCommand{\CYRW}{L8U}{Ԝ}
+\DeclareTextCommand{\cyrw}{L8U}{ԝ}
+\DeclareTextCommand{\CYRALKA}{L8U}{Ԟ}
+\DeclareTextCommand{\cyralka}{L8U}{ԟ}
+\DeclareTextCommand{\CYRLHK}{L8U}{Ԡ}
+\DeclareTextCommand{\cyrlhk}{L8U}{ԡ}
+\DeclareTextCommand{\CYRNHK}{L8U}{Ԣ}
+\DeclareTextCommand{\cyrnhk}{L8U}{ԣ}
+\DeclareTextCommand{\CYRPEDSC}{L8U}{Ԥ}
+\DeclareTextCommand{\cyrpedsc}{L8U}{ԥ}
+\DeclareTextCommand{\CYRSHHADSC}{L8U}{Ԧ}
+\DeclareTextCommand{\cyrshhadsc}{L8U}{ԧ}
+%
+%\endinput
+
+\ifcyrKOIxmp\else\expandafter\endinput\fi
+
+
+% direct input — upper 8-bit: ISO-8859-7
+
+\DeclareTextCommand{\textcyrKOIstring}{L8U}[1]{\textcyrKOI@ii#1\@empty\@empty}
+\def\textcyrKOI@i#1{\textcyrKOI@ii#1}%\@empty}
+\def\textcyrKOI@ii#1#2\@empty{%
+ \ifx\@empty#2\@empty
+ \expandafter\@firstoftwo\else\expandafter\@secondoftwo\fi
+ {\textKOIenc{#1}}{\textKOIenc{#1}\textcyrKOI@i#2\@empty}}
+
+% \textKOIenc{#1}%
+% \ifx\@empty#2\@empty\else\expandafter\textcyrKOI@i\fi#2\@empty}
+
+\DeclareTextCommand{\textKOIenc}{L8U}[1]{#1}
+\DeclareTextCommand{\textKOI}{L8U}[1]{\textcyrKOIstring{#1}}
+
+%\DeclareTextCompositeCommand{\textKOIenc}{L8U}{\sep}{\sep}%\restarttextKOI}
+
+\obeyspaces
+\DeclareTextCompositeCommand{\textKOIenc}{L8U}{\sep}{\sep }%
+\DeclareTextCompositeCommand{\textKOIenc}{L8U}{ }{\space}%
+\catcode`\ 10
+
+
+%%\DeclareTextCompositeCommand{\textKOIenc}{L8U}{^^80}{─}% Ux2500
+%%\DeclareTextCompositeCommand{\textKOIenc}{L8U}{^^81}{│}% Ux2502
+%%\DeclareTextCompositeCommand{\textKOIenc}{L8U}{^^82}{┌}% Ux250C
+%%\DeclareTextCompositeCommand{\textKOIenc}{L8U}{^^83}{┐}% Ux2510
+%%\DeclareTextCompositeCommand{\textKOIenc}{L8U}{^^84}{└}% Ux2514
+%%\DeclareTextCompositeCommand{\textKOIenc}{L8U}{^^85}{┘}% Ux2518
+%%\DeclareTextCompositeCommand{\textKOIenc}{L8U}{^^86}{├}% Ux251C
+%%\DeclareTextCompositeCommand{\textKOIenc}{L8U}{^^87}{┤}% Ux2524
+%%\DeclareTextCompositeCommand{\textKOIenc}{L8U}{^^88}{┬}% Ux252C
+%%\DeclareTextCompositeCommand{\textKOIenc}{L8U}{^^89}{┴}% Ux2534
+%%\DeclareTextCompositeCommand{\textKOIenc}{L8U}{^^8a}{┼}% Ux253C
+%%\DeclareTextCompositeCommand{\textKOIenc}{L8U}{^^8b}{▀}% Ux2580
+%%\DeclareTextCompositeCommand{\textKOIenc}{L8U}{^^8c}{▄}% Ux2584
+%%\DeclareTextCompositeCommand{\textKOIenc}{L8U}{^^8d}{█}% Ux2588
+%%\DeclareTextCompositeCommand{\textKOIenc}{L8U}{^^8e}{▌}% Ux258C
+%%\DeclareTextCompositeCommand{\textKOIenc}{L8U}{^^8f}{▐}% Ux2590
+%%\DeclareTextCompositeCommand{\textKOIenc}{L8U}{^^90}{░}% Ux2591
+%%\DeclareTextCompositeCommand{\textKOIenc}{L8U}{^^91}{▒}% Ux2592
+%%\DeclareTextCompositeCommand{\textKOIenc}{L8U}{^^92}{▓}% Ux2593
+%%\DeclareTextCompositeCommand{\textKOIenc}{L8U}{^^93}{⌠}% Ux2320
+\DeclareTextCompositeCommand{\textKOIenc}{L8U}{^^94}{■}% Ux25A0
+\DeclareTextCompositeCommand{\textKOIenc}{L8U}{^^95}{∙}% Ux2022
+\DeclareTextCompositeCommand{\textKOIenc}{L8U}{^^96}{√}%* U+221A
+\DeclareTextCompositeCommand{\textKOIenc}{L8U}{^^97}{∼}%* U+223C
+\DeclareTextCompositeCommand{\textKOIenc}{L8U}{^^98}{≤}%* U+2264
+\DeclareTextCompositeCommand{\textKOIenc}{L8U}{^^99}{≥}%* U+2265
+\DeclareTextCompositeCommand{\textKOIenc}{L8U}{^^9a}{\textnobreakspace}%
+\DeclareTextCompositeCommand{\textKOIenc}{L8U}{^^9b}{⌡}% Ux2321
+\DeclareTextCompositeCommand{\textKOIenc}{L8U}{^^9c}{\textdegree}%
+\DeclareTextCompositeCommand{\textKOIenc}{L8U}{^^9d}{\texttwosuperior}%
+\DeclareTextCompositeCommand{\textKOIenc}{L8U}{^^9e}{\textperiodcentered}%
+\DeclareTextCompositeCommand{\textKOIenc}{L8U}{^^9f}{\textdivide}%
+%%\DeclareTextCompositeCommand{\textKOIenc}{L8U}{^^a0}{═}% Ux2550
+%%\DeclareTextCompositeCommand{\textKOIenc}{L8U}{^^a1}{║}% Ux2551
+%%\DeclareTextCompositeCommand{\textKOIenc}{L8U}{^^a2}{╒}% Ux2552
+\DeclareTextCompositeCommand{\textKOIenc}{L8U}{^^a3}{\cyryo}
+\DeclareTextCompositeCommand{\textKOIenc}{L8U}{^^a4}{\cyrie}
+%%\DeclareTextCompositeCommand{\textKOIenc}{L8U}{^^a5}{╔}% Ux2554
+\DeclareTextCompositeCommand{\textKOIenc}{L8U}{^^a6}{\cyrii}
+\DeclareTextCompositeCommand{\textKOIenc}{L8U}{^^a7}{\cyryi}
+%%\DeclareTextCompositeCommand{\textKOIenc}{L8U}{^^a8}{╗}% Ux2557
+%%\DeclareTextCompositeCommand{\textKOIenc}{L8U}{^^a9}{╘}% Ux2558
+%%\DeclareTextCompositeCommand{\textKOIenc}{L8U}{^^aa}{╙}% Ux2559
+%%\DeclareTextCompositeCommand{\textKOIenc}{L8U}{^^ab}{╚}% Ux255A
+%%\DeclareTextCompositeCommand{\textKOIenc}{L8U}{^^ac}{╛}% Ux255B
+\DeclareTextCompositeCommand{\textKOIenc}{L8U}{^^ad}{\cyrgup}
+\DeclareTextCompositeCommand{\textKOIenc}{L8U}{^^ae}{\cyrushrt}
+%%\DeclareTextCompositeCommand{\textKOIenc}{L8U}{^^af}{╞}% Ux255E
+%%\DeclareTextCompositeCommand{\textKOIenc}{L8U}{^^b0}{╟}% Ux255F
+%%\DeclareTextCompositeCommand{\textKOIenc}{L8U}{^^b1}{╠}% Ux2560
+%%\DeclareTextCompositeCommand{\textKOIenc}{L8U}{^^b2}{╡}% Ux2561
+\DeclareTextCompositeCommand{\textKOIenc}{L8U}{^^b3}{\CYRYO}
+\DeclareTextCompositeCommand{\textKOIenc}{L8U}{^^b4}{\CYRIE}
+%%\DeclareTextCompositeCommand{\textKOIenc}{L8U}{^^b5}{╣}% Ux2563
+\DeclareTextCompositeCommand{\textKOIenc}{L8U}{^^b6}{\CYRII}
+\DeclareTextCompositeCommand{\textKOIenc}{L8U}{^^b7}{\CYRYI}
+%%\DeclareTextCompositeCommand{\textKOIenc}{L8U}{^^b8}{╦}% Ux2566
+%%\DeclareTextCompositeCommand{\textKOIenc}{L8U}{^^b9}{╧}% Ux2567
+%%\DeclareTextCompositeCommand{\textKOIenc}{L8U}{^^ba}{╨}% Ux2568
+%%\DeclareTextCompositeCommand{\textKOIenc}{L8U}{^^bb}{╩}% Ux2569
+%%\DeclareTextCompositeCommand{\textKOIenc}{L8U}{^^bc}{╪}% Ux256A
+\DeclareTextCompositeCommand{\textKOIenc}{L8U}{^^bd}{\CYRGUP}
+\DeclareTextCompositeCommand{\textKOIenc}{L8U}{^^be}{\CYRUSHRT}
+\DeclareTextCompositeCommand{\textKOIenc}{L8U}{^^bf}{\textcopyright}
+
+\DeclareTextCompositeCommand{\textKOIenc}{L8U}{^^c0}{\cyryu}%
+\DeclareTextCompositeCommand{\textKOIenc}{L8U}{^^c1}{\cyra}% Ux0410
+\DeclareTextCompositeCommand{\textKOIenc}{L8U}{^^c2}{\cyrb}
+\DeclareTextCompositeCommand{\textKOIenc}{L8U}{^^c3}{\cyrc}
+\DeclareTextCompositeCommand{\textKOIenc}{L8U}{^^c4}{\cyrd}
+\DeclareTextCompositeCommand{\textKOIenc}{L8U}{^^c5}{\cyre}
+\DeclareTextCompositeCommand{\textKOIenc}{L8U}{^^c6}{\cyrf}
+\DeclareTextCompositeCommand{\textKOIenc}{L8U}{^^c7}{\cyrg}
+\DeclareTextCompositeCommand{\textKOIenc}{L8U}{^^c8}{\cyrh}
+\DeclareTextCompositeCommand{\textKOIenc}{L8U}{^^c9}{\cyri}
+\DeclareTextCompositeCommand{\textKOIenc}{L8U}{^^ca}{\cyrishrt}
+\DeclareTextCompositeCommand{\textKOIenc}{L8U}{^^cb}{\cyrk}
+\DeclareTextCompositeCommand{\textKOIenc}{L8U}{^^cc}{\cyrl}
+\DeclareTextCompositeCommand{\textKOIenc}{L8U}{^^cd}{\cyrm}
+\DeclareTextCompositeCommand{\textKOIenc}{L8U}{^^ce}{\cyrn}
+\DeclareTextCompositeCommand{\textKOIenc}{L8U}{^^cf}{\cyro}
+\DeclareTextCompositeCommand{\textKOIenc}{L8U}{^^d0}{\cyrp}
+\DeclareTextCompositeCommand{\textKOIenc}{L8U}{^^d1}{\cyrya}
+\DeclareTextCompositeCommand{\textKOIenc}{L8U}{^^d2}{\cyrr}
+\DeclareTextCompositeCommand{\textKOIenc}{L8U}{^^d3}{\cyrs}
+\DeclareTextCompositeCommand{\textKOIenc}{L8U}{^^d4}{\cyrt}
+\DeclareTextCompositeCommand{\textKOIenc}{L8U}{^^d5}{\cyru}
+\DeclareTextCompositeCommand{\textKOIenc}{L8U}{^^d6}{\cyrzh}
+\DeclareTextCompositeCommand{\textKOIenc}{L8U}{^^d7}{\cyrv}
+\DeclareTextCompositeCommand{\textKOIenc}{L8U}{^^d8}{\cyrsftsn}
+\DeclareTextCompositeCommand{\textKOIenc}{L8U}{^^d9}{\cyrery}
+\DeclareTextCompositeCommand{\textKOIenc}{L8U}{^^da}{\cyrz}
+\DeclareTextCompositeCommand{\textKOIenc}{L8U}{^^db}{\cyrsh}
+\DeclareTextCompositeCommand{\textKOIenc}{L8U}{^^dc}{\cyrerev}
+\DeclareTextCompositeCommand{\textKOIenc}{L8U}{^^dd}{\cyrshch}
+\DeclareTextCompositeCommand{\textKOIenc}{L8U}{^^de}{\cyrch}
+\DeclareTextCompositeCommand{\textKOIenc}{L8U}{^^df}{\cyrhrdsn}
+
+\DeclareTextCompositeCommand{\textKOIenc}{L8U}{^^e0}{\CYRYU}
+\DeclareTextCompositeCommand{\textKOIenc}{L8U}{^^e1}{\CYRA}
+\DeclareTextCompositeCommand{\textKOIenc}{L8U}{^^e2}{\CYRB}
+\DeclareTextCompositeCommand{\textKOIenc}{L8U}{^^e3}{\CYRC}
+\DeclareTextCompositeCommand{\textKOIenc}{L8U}{^^e4}{\CYRD}
+\DeclareTextCompositeCommand{\textKOIenc}{L8U}{^^e5}{\CYRE}
+\DeclareTextCompositeCommand{\textKOIenc}{L8U}{^^e6}{\CYRF}
+\DeclareTextCompositeCommand{\textKOIenc}{L8U}{^^e7}{\CYRG}
+\DeclareTextCompositeCommand{\textKOIenc}{L8U}{^^e8}{\CYRH}
+\DeclareTextCompositeCommand{\textKOIenc}{L8U}{^^e9}{\CYRI}
+\DeclareTextCompositeCommand{\textKOIenc}{L8U}{^^ea}{\CYRISHRT}
+\DeclareTextCompositeCommand{\textKOIenc}{L8U}{^^eb}{\CYRK}
+\DeclareTextCompositeCommand{\textKOIenc}{L8U}{^^ec}{\CYRL}
+\DeclareTextCompositeCommand{\textKOIenc}{L8U}{^^ed}{\CYRM}
+\DeclareTextCompositeCommand{\textKOIenc}{L8U}{^^ee}{\CYRN}
+\DeclareTextCompositeCommand{\textKOIenc}{L8U}{^^ef}{\CYRO}
+\DeclareTextCompositeCommand{\textKOIenc}{L8U}{^^f0}{\CYRP}
+\DeclareTextCompositeCommand{\textKOIenc}{L8U}{^^f1}{\CYRYA}
+\DeclareTextCompositeCommand{\textKOIenc}{L8U}{^^f2}{\CYRR}
+\DeclareTextCompositeCommand{\textKOIenc}{L8U}{^^f3}{\CYRS}
+\DeclareTextCompositeCommand{\textKOIenc}{L8U}{^^f4}{\CYRT}
+\DeclareTextCompositeCommand{\textKOIenc}{L8U}{^^f5}{\CYRU}
+\DeclareTextCompositeCommand{\textKOIenc}{L8U}{^^f6}{\CYRZH}
+\DeclareTextCompositeCommand{\textKOIenc}{L8U}{^^f7}{\CYRV}
+\DeclareTextCompositeCommand{\textKOIenc}{L8U}{^^f8}{\CYRSFTSN}
+\DeclareTextCompositeCommand{\textKOIenc}{L8U}{^^f9}{\CYRERY}
+\DeclareTextCompositeCommand{\textKOIenc}{L8U}{^^fa}{\CYRZ}
+\DeclareTextCompositeCommand{\textKOIenc}{L8U}{^^fb}{\CYRSH}
+\DeclareTextCompositeCommand{\textKOIenc}{L8U}{^^fc}{\CYREREV}
+\DeclareTextCompositeCommand{\textKOIenc}{L8U}{^^fd}{\CYRSHCH}
+\DeclareTextCompositeCommand{\textKOIenc}{L8U}{^^fe}{\CYRCH}
+\DeclareTextCompositeCommand{\textKOIenc}{L8U}{^^ff}{\CYRHRDSN}
+
+%% These suspend \textKOI string parsing, so ...
+%
+\DeclareTextCompositeCommand{\'}{L8U}{\textcyrKOI@i}{\'}
+\DeclareTextCompositeCommand{\"}{L8U}{\textcyrKOI@i}{\"}
+\DeclareTextCompositeCommand{\`}{L8U}{\textcyrKOI@i}{\`}
+\DeclareTextCompositeCommand{\u}{L8U}{\textcyrKOI@i}{\u}
+\DeclareTextCompositeCommand{\U}{L8U}{\textcyrKOI@i}{\U}
+\DeclareTextCompositeCommand{\c}{L8U}{\textcyrKOI@i}{\c}
+\DeclareTextCompositeCommand{\k}{L8U}{\textcyrKOI@i}{\k}
+\DeclareTextCompositeCommand{\C}{L8U}{\textcyrKOI@i}{\C}
+\DeclareTextCompositeCommand{\CYRtitlo}{L8U}{\textcyrKOI@i}{\CYRtitlo}
+\DeclareTextCompositeCommand{\CYRpalatal}{L8U}{\textcyrKOI@i}{\CYRpalatal}
+\DeclareTextCompositeCommand{\CYRdasia}{L8U}{\textcyrKOI@i}{\CYRdasia}
+\DeclareTextCompositeCommand{\CYRpsili}{L8U}{\textcyrKOI@i}{\CYRpsili}
+\DeclareTextCompositeCommand{\CYRpokrytie}{L8U}{\textcyrKOI@i}{\CYRpokrytie}
+\DeclareTextCompositeCommand{\cyrlegion}{L8U}{\textcyrKOI@i}{\cyrlegion}
+\DeclareTextCompositeCommand{\cyrleodr}{L8U}{\textcyrKOI@i}{\cyrleodr}
+
+% ... we need a way to restart KOI string parsing after accents
+%
+\let\restarttextKOI\textcyrKOI@ii
+
+\DeclareTextCompositeCommand{\`}{L8U}{^^e5}{Ѐ\restarttextKOI}
+\DeclareTextCompositeCommand{\"}{L8U}{^^e5}{Ё\restarttextKOI}
+\DeclareTextCompositeCommand{\'}{L8U}{^^e7}{Ѓ\restarttextKOI}
+\DeclareTextCompositeCommand{\"}{L8U}{^^b6}{Ї\restarttextKOI}
+\DeclareTextCompositeCommand{\'}{L8U}{^^eb}{Ќ\restarttextKOI}
+\DeclareTextCompositeCommand{\`}{L8U}{^^e9}{Ѝ\restarttextKOI}
+\DeclareTextCompositeCommand{\u}{L8U}{^^f5}{Ў\restarttextKOI}
+\DeclareTextCompositeCommand{\U}{L8U}{^^f5}{Ў\restarttextKOI}
+\DeclareTextCompositeCommand{\u}{L8U}{^^e9}{Й\restarttextKOI}
+\DeclareTextCompositeCommand{\U}{L8U}{^^e9}{Й\restarttextKOI}
+\DeclareTextCompositeCommand{\u}{L8U}{^^c9}{й\restarttextKOI}
+\DeclareTextCompositeCommand{\U}{L8U}{^^c9}{й\restarttextKOI}
+\DeclareTextCompositeCommand{\`}{L8U}{^^c5}{ѐ\restarttextKOI}
+\DeclareTextCompositeCommand{\"}{L8U}{^^c5}{ё\restarttextKOI}
+\DeclareTextCompositeCommand{\'}{L8U}{^^c7}{ѓ\restarttextKOI}
+\DeclareTextCompositeCommand{\"}{L8U}{^^a6}{ї\restarttextKOI}
+\DeclareTextCompositeCommand{\'}{L8U}{^^cb}{ќ\restarttextKOI}
+\DeclareTextCompositeCommand{\`}{L8U}{^^c9}{ѝ\restarttextKOI}
+\DeclareTextCompositeCommand{\u}{L8U}{^^d5}{ў\restarttextKOI}
+\DeclareTextCompositeCommand{\U}{L8U}{^^d5}{ў\restarttextKOI}
+
+\DeclareTextCompositeCommand{\B}{L8U}{^^e7}{Ғ\restarttextKOI}
+\DeclareTextCompositeCommand{\B}{L8U}{^^c7}{ғ\restarttextKOI}
+\DeclareTextCompositeCommand{\c}{L8U}{^^fa}{Ҙ\restarttextKOI}
+\DeclareTextCompositeCommand{\c}{L8U}{^^da}{ҙ\restarttextKOI}
+\DeclareTextCompositeCommand{\B}{L8U}{^^eb}{Ҟ\restarttextKOI}
+\DeclareTextCompositeCommand{\B}{L8U}{^^cb}{ҟ\restarttextKOI}
+\DeclareTextCompositeCommand{\CYRSDSC}{L8U}{^^f3}{Ҫ\restarttextKOI}
+\DeclareTextCompositeCommand{\c}{L8U}{^^f3}{Ҫ\restarttextKOI}
+\DeclareTextCompositeCommand{\k}{L8U}{^^f3}{Ҫ\restarttextKOI}
+\DeclareTextCompositeCommand{\c}{L8U}{^^d3}{ҫ\restarttextKOI}
+\DeclareTextCompositeCommand{\k}{L8U}{^^d3}{ҫ\restarttextKOI}
+\DeclareTextCompositeCommand{\B}{L8U}{\CYRY}{Ұ\restarttextKOI}
+\DeclareTextCompositeCommand{\B}{L8U}{\cyry}{ұ\restarttextKOI}
+\DeclareTextCompositeCommand{\u}{L8U}{^^f6}{Ӂ\restarttextKOI}
+\DeclareTextCompositeCommand{\U}{L8U}{^^f6}{Ӂ\restarttextKOI}
+\DeclareTextCompositeCommand{\textpalhookbelow}{L8U}{^^eb}{Ӄ\restarttextKOI}
+\DeclareTextCompositeCommand{\textpalhookbelow}{L8U}{^^cb}{ӄ\restarttextKOI}
+\DeclareTextCompositeCommand{\textpalhookbelow}{L8U}{^^ee}{Ӈ\restarttextKOI}
+\DeclareTextCompositeCommand{\textpalhookbelow}{L8U}{^^ce}{ӈ\restarttextKOI}
+
+\DeclareTextCompositeCommand{\u}{L8U}{^^e1}{Ӑ\restarttextKOI}
+\DeclareTextCompositeCommand{\U}{L8U}{^^e1}{Ӑ\restarttextKOI}
+\DeclareTextCompositeCommand{\u}{L8U}{^^c1}{ӑ\restarttextKOI}
+\DeclareTextCompositeCommand{\U}{L8U}{^^c1}{ӑ\restarttextKOI}
+\DeclareTextCompositeCommand{\"}{L8U}{^^e1}{Ӓ\restarttextKOI}
+\DeclareTextCompositeCommand{\"}{L8U}{^^c1}{ӓ\restarttextKOI}
+\DeclareTextCompositeCommand{\u}{L8U}{^^e5}{Ӗ\restarttextKOI}
+\DeclareTextCompositeCommand{\U}{L8U}{^^e5}{Ӗ\restarttextKOI}
+\DeclareTextCompositeCommand{\u}{L8U}{^^c5}{ӗ\restarttextKOI}
+\DeclareTextCompositeCommand{\U}{L8U}{^^c5}{ӗ\restarttextKOI}
+\DeclareTextCompositeCommand{\"}{L8U}{^^f6}{Ӝ\restarttextKOI}
+\DeclareTextCompositeCommand{\"}{L8U}{^^d6}{ӝ\restarttextKOI}
+\DeclareTextCompositeCommand{\"}{L8U}{^^fa}{Ӟ\restarttextKOI}
+\DeclareTextCompositeCommand{\"}{L8U}{^^da}{ӟ\restarttextKOI}
+\DeclareTextCompositeCommand{\=}{L8U}{^^e9}{Ӣ\restarttextKOI}
+\DeclareTextCompositeCommand{\=}{L8U}{^^c9}{ӣ\restarttextKOI}
+\DeclareTextCompositeCommand{\"}{L8U}{^^e9}{Ӥ\restarttextKOI}
+\DeclareTextCompositeCommand{\"}{L8U}{^^c9}{ӥ\restarttextKOI}
+\DeclareTextCompositeCommand{\"}{L8U}{^^ef}{Ӧ\restarttextKOI}
+\DeclareTextCompositeCommand{\"}{L8U}{^^cf}{ӧ\restarttextKOI}
+\DeclareTextCompositeCommand{\=}{L8U}{^^f5}{Ӯ\restarttextKOI}
+\DeclareTextCompositeCommand{\=}{L8U}{^^d5}{ӯ\restarttextKOI}
+\DeclareTextCompositeCommand{\"}{L8U}{^^f5}{Ӱ\restarttextKOI}
+\DeclareTextCompositeCommand{\"}{L8U}{^^d5}{ӱ\restarttextKOI}
+\DeclareTextCompositeCommand{\H}{L8U}{^^f5}{Ӳ\restarttextKOI}
+\DeclareTextCompositeCommand{\H}{L8U}{^^d5}{ӳ\restarttextKOI}
+\DeclareTextCompositeCommand{\"}{L8U}{^^fe}{Ӵ\restarttextKOI}
+\DeclareTextCompositeCommand{\"}{L8U}{^^de}{ӵ\restarttextKOI}
+\DeclareTextCompositeCommand{\"}{L8U}{^^f9}{Ӹ\restarttextKOI}
+\DeclareTextCompositeCommand{\"}{L8U}{^^d9}{ӹ\restarttextKOI}
+\DeclareTextCompositeCommand{\textpalhook}{L8U}{^^e8}{Ӽ\restarttextKOI}
+\DeclareTextCompositeCommand{\textpalhook}{L8U}{^^c8}{ӽ\restarttextKOI}
+\DeclareTextCompositeCommand{\B}{L8U}{^^e8}{Ӿ\restarttextKOI}
+\DeclareTextCompositeCommand{\B}{L8U}{^^c8}{ӿ\restarttextKOI}
+
diff --git a/macros/latex/contrib/pdfx/l8udev-penc.def b/macros/latex/contrib/pdfx/l8udev-penc.def
new file mode 100644
index 0000000000..39616b7ae2
--- /dev/null
+++ b/macros/latex/contrib/pdfx/l8udev-penc.def
@@ -0,0 +1,196 @@
+%%
+%% This is file `l8udev-penc.def'
+%% Formerly known as `l8udev.def'
+%%
+%% l8udev-penc.def
+%%
+%% This is a hand-written file, based upon t1enc.def
+%% with extensions for more composite characters.
+%%
+%% Copyright 2016, 2017 Ross Moore <ross.moore@mq.edu.au>
+%%
+\ProvidesFile{l8udev-penc.def}
+ [2017/06/23 v0.5
+ Devanagari support for UTF8 in XMP metadata]
+
+%
+% uses macro names from ucs.sty
+%
+% defines command: \LIIXUmapdevaccents
+%
+%%%% Devanagari Characters and signs Ux0900 – Ux097F
+%
+\DeclareTextCommand{\textdevanagariinvcandrabindu}{L8U}[1]{#1ऀ}
+\DeclareTextCommand{\textdevanagaricandrabindu}{L8U}[1]{#1ँ}
+\DeclareTextCommand{\textdevanagarianusvara}{L8U}[1]{#1ं}
+\DeclareTextCommand{\textdevanagarivisarga}{L8U}[1]{#1ः}
+%
+\DeclareTextCommand{\textdevanagaria}{L8U}{अ}
+\DeclareTextCommand{\textdevanagariaa}{L8U}{आ}
+\DeclareTextCommand{\textdevanagarii}{L8U}{इ}
+\DeclareTextCommand{\textdevanagariii}{L8U}{ई}
+\DeclareTextCommand{\textdevanagariu}{L8U}{उ}
+\DeclareTextCommand{\textdevanagariuu}{L8U}{ऊ}
+\DeclareTextCommand{\textdevanagarivocalicr}{L8U}{ऋ}
+\DeclareTextCommand{\textdevanagarivocalicl}{L8U}{ऌ}
+\DeclareTextCommand{\textdevanagaricandrae}{L8U}{ऍ}
+\DeclareTextCommand{\textdevanagarishorte}{L8U}{ऎ}
+\DeclareTextCommand{\textdevanagarie}{L8U}{ए}
+% Ux0910
+\DeclareTextCommand{\textdevanagariai}{L8U}{ऐ}
+\DeclareTextCommand{\textdevanagaricandrao}{L8U}{ऑ}
+\DeclareTextCommand{\textdevanagarishorto}{L8U}{ऒ}
+\DeclareTextCommand{\textdevanagario}{L8U}{ओ}
+\DeclareTextCommand{\textdevanagariau}{L8U}{औ}
+\DeclareTextCommand{\textdevanagarika}{L8U}{क}
+\DeclareTextCommand{\textdevanagarikha}{L8U}{ख}
+\DeclareTextCommand{\textdevanagariga}{L8U}{ग}
+\DeclareTextCommand{\textdevanagarigha}{L8U}{घ}
+\DeclareTextCommand{\textdevanagaringa}{L8U}{ङ}
+\DeclareTextCommand{\textdevanagarica}{L8U}{च}
+\DeclareTextCommand{\textdevanagaricha}{L8U}{छ}
+\DeclareTextCommand{\textdevanagarija}{L8U}{ज}
+\DeclareTextCommand{\textdevanagarijha}{L8U}{झ}
+\DeclareTextCommand{\textdevanagarinya}{L8U}{ञ}
+\DeclareTextCommand{\textdevanagaritta}{L8U}{ट}
+% Ux0920
+\DeclareTextCommand{\textdevanagarittha}{L8U}{ठ}
+\DeclareTextCommand{\textdevanagaridda}{L8U}{ड}
+\DeclareTextCommand{\textdevanagariddha}{L8U}{ढ}
+\DeclareTextCommand{\textdevanagarinna}{L8U}{ण}
+\DeclareTextCommand{\textdevanagarita}{L8U}{त}
+\DeclareTextCommand{\textdevanagaritha}{L8U}{थ}
+\DeclareTextCommand{\textdevanagarida}{L8U}{द}
+\DeclareTextCommand{\textdevanagaridha}{L8U}{ध}
+\DeclareTextCommand{\textdevanagarina}{L8U}{न}
+\DeclareTextCommand{\textdevanagarinnna}{L8U}{ऩ}
+\DeclareTextCompositeCommand{\textdevanagarinukta}{L8U}{\textdevanagarina}{ऩ}
+\DeclareTextCompositeCommand{\textdevanagarinukta}{L8U}{न}{ऩ}
+\DeclareTextCommand{\textdevanagaripa}{L8U}{प}
+\DeclareTextCommand{\textdevanagaripha}{L8U}{फ}
+\DeclareTextCommand{\textdevanagariba}{L8U}{ब}
+\DeclareTextCommand{\textdevanagaribha}{L8U}{भ}
+\DeclareTextCommand{\textdevanagarima}{L8U}{म}
+\DeclareTextCommand{\textdevanagariya}{L8U}{य}
+% Ux0930
+\DeclareTextCommand{\textdevanagarira}{L8U}{र}
+\DeclareTextCommand{\textdevanagarirra}{L8U}{ऱ}
+\DeclareTextCompositeCommand{\textdevanagarinukta}{L8U}{\textdevanagarira}{ऱ}
+\DeclareTextCompositeCommand{\textdevanagarinukta}{L8U}{र}{ऱ}
+\DeclareTextCommand{\textdevanagarila}{L8U}{ल}
+\DeclareTextCommand{\textdevanagarilla}{L8U}{ळ}
+\DeclareTextCommand{\textdevanagarillla}{L8U}{ऴ}
+\DeclareTextCompositeCommand{\textdevanagarinukta}{L8U}{\textdevanagarilla}{ऴ}
+\DeclareTextCompositeCommand{\textdevanagarinukta}{L8U}{ळ}{ऴ}
+\DeclareTextCommand{\textdevanagariva}{L8U}{व}
+\DeclareTextCommand{\textdevanagarisha}{L8U}{श}
+\DeclareTextCommand{\textdevanagarissa}{L8U}{ष}
+\DeclareTextCommand{\textdevanagarisa}{L8U}{स}
+\DeclareTextCommand{\textdevanagariha}{L8U}{ह}
+%\DeclareTextCommand{\textdevanagarivoweloe}{L8U}[1]{#1ऺ}
+%\DeclareTextCommand{\textdevanagarivowelooe}{L8U}[1]{#1ऻ}
+\DeclareTextCommand{\textdevanagarinukta}{L8U}[1]{#1़}
+\DeclareTextCommand{\textdevanagariavagraha}{L8U}{ऽ}
+\DeclareTextCommand{\textdevanagarivowelaa}{L8U}[1]{#1ा}
+\DeclareTextCommand{\textdevanagarivoweli}{L8U}[1]{#1ि}
+% Ux0940
+\DeclareTextCommand{\textdevanagarivowelii}{L8U}[1]{#1ी}
+\DeclareTextCommand{\textdevanagarivowelu}{L8U}[1]{#1ु}
+\DeclareTextCommand{\textdevanagarivoweluu}{L8U}[1]{#1ू}
+\DeclareTextCommand{\textdevanagarivowelvocalicr}{L8U}[1]{#1ृ}
+\DeclareTextCommand{\textdevanagarivowelvocalicrr}{L8U}[1]{#1ॄ}
+\DeclareTextCommand{\textdevanagarivowelcandrae}{L8U}[1]{#1ॅ}
+\DeclareTextCommand{\textdevanagarivowelshorte}{L8U}[1]{#1ॆ}
+\DeclareTextCommand{\textdevanagarivowele}{L8U}[1]{#1े}
+\DeclareTextCommand{\textdevanagarivowelai}{L8U}[1]{#1ै}
+\DeclareTextCommand{\textdevanagarivowelcandrao}{L8U}[1]{#1ॉ}
+\DeclareTextCommand{\textdevanagarivowelshorto}{L8U}[1]{#1ॊ}
+\DeclareTextCommand{\textdevanagarivowelo}{L8U}[1]{#1ो}
+\DeclareTextCommand{\textdevanagarivowelau}{L8U}[1]{#1ौ}
+\DeclareTextCommand{\textdevanagarivirama}{L8U}[1]{#1्}
+%\DeclareTextCommand{\textdevanagarivowelpristhe}{L8U}[1]{#1ॎ}
+%\DeclareTextCommand{\textdevanagarivowelaw}{L8U}[1]{#1ॏ}
+% Ux0950
+\DeclareTextCommand{\textdevanagariom}{L8U}{ॐ}
+\DeclareTextCommand{\textdevanagariudatta}{L8U}[1]{#1॑}
+\DeclareTextCommand{\textdevanagarianudatta}{L8U}[1]{#1॒}
+\DeclareTextCommand{\textdevanagarigrave}{L8U}[1]{#1॓}
+%\DeclareTextCommand{\`}{L8U}[1]{#1॓}% which letters can receive this?
+\DeclareTextCommand{\textdevanagariacute}{L8U}[1]{#1॔}
+%\DeclareTextCommand{\'}{L8U}[1]{#1॔}% which letters can receive this?
+%\DeclareTextCommand{\textdevanagarivowellonge}{L8U}[1]{#1ॕ}
+%\DeclareTextCommand{\textdevanagarivowelue}{L8U}[1]{#1ॖ}
+%\DeclareTextCommand{\textdevanagarivoweluue}{L8U}[1]{#1ॗ}
+
+\def\LIIXUmapdevaccents{%
+ \let\devacccandrabindu\textdevanagaricandrabindu
+ \let\devaccanusvara\textdevanagarianusvara
+ \let\devaccvisarga\textdevanagarivisarga
+ \let\devaccacute\textdevanagariacute
+ \let\devaccgrave\textdevanagarigrave
+ \let\devaccnukta\textdevanagarinukta
+}
+%
+\DeclareTextCommand{\textdevanagariqa}{L8U}{क़}
+\DeclareTextCompositeCommand{\textdevanagarinukta}{L8U}{\textdevanagarika}{क़}
+\DeclareTextCompositeCommand{\textdevanagarinukta}{L8U}{क}{क़}
+\DeclareTextCommand{\textdevanagarikhha}{L8U}{ख़}
+\DeclareTextCompositeCommand{\textdevanagarinukta}{L8U}{\textdevanagarikha}{ख़}
+\DeclareTextCompositeCommand{\textdevanagarinukta}{L8U}{ख}{ख़}
+\DeclareTextCommand{\textdevanagarighha}{L8U}{ग़}
+\DeclareTextCompositeCommand{\textdevanagarinukta}{L8U}{\textdevanagariga}{ग़}
+\DeclareTextCompositeCommand{\textdevanagarinukta}{L8U}{ग}{ग़}
+\DeclareTextCommand{\textdevanagariza}{L8U}{ज़}
+\DeclareTextCompositeCommand{\textdevanagarinukta}{L8U}{\textdevanagarija}{ज़}
+\DeclareTextCompositeCommand{\textdevanagarinukta}{L8U}{ज}{ज़}
+\DeclareTextCommand{\textdevanagaridddha}{L8U}{ड़}
+\DeclareTextCompositeCommand{\textdevanagarinukta}{L8U}{\textdevanagaridda}{ड़}
+\DeclareTextCompositeCommand{\textdevanagarinukta}{L8U}{ड}{ड़}
+\DeclareTextCommand{\textdevanagarirha}{L8U}{ढ़}
+\DeclareTextCompositeCommand{\textdevanagarinukta}{L8U}{\textdevanagariddha}{ढ़}
+\DeclareTextCompositeCommand{\textdevanagarinukta}{L8U}{ढ}{ढ़}
+\DeclareTextCommand{\textdevanagarifa}{L8U}{फ़}
+\DeclareTextCompositeCommand{\textdevanagarinukta}{L8U}{\textdevanagaripha}{फ़}
+\DeclareTextCompositeCommand{\textdevanagarinukta}{L8U}{फ}{फ़}
+\DeclareTextCommand{\textdevanagariyya}{L8U}{य़}
+\DeclareTextCompositeCommand{\textdevanagarinukta}{L8U}{\textdevanagariya}{य़}
+\DeclareTextCompositeCommand{\textdevanagarinukta}{L8U}{य}{य़}
+% Ux0960
+\DeclareTextCommand{\textdevanagarivocalicrr}{L8U}{ॠ}
+\DeclareTextCommand{\textdevanagarivocalicll}{L8U}{ॡ}
+\DeclareTextCommand{\textdevanagarivowelvocalicl}{L8U}[1]{#1ॢ}
+\DeclareTextCommand{\textdevanagarivowelvocalicll}{L8U}[1]{#1ॣ}
+\DeclareTextCommand{\textdevanagaridanda}{L8U}{।}
+\DeclareTextCommand{\textdevanagaridoubledanda}{L8U}{॥}
+\DeclareTextCommand{\textdevanagarizero}{L8U}{०}
+\DeclareTextCommand{\textdevanagarione}{L8U}{१}
+\DeclareTextCommand{\textdevanagaritwo}{L8U}{२}
+\DeclareTextCommand{\textdevanagarithree}{L8U}{३}
+\DeclareTextCommand{\textdevanagarifour}{L8U}{४}
+\DeclareTextCommand{\textdevanagarifive}{L8U}{५}
+\DeclareTextCommand{\textdevanagarisix}{L8U}{६}
+\DeclareTextCommand{\textdevanagariseven}{L8U}{७}
+\DeclareTextCommand{\textdevanagarieight}{L8U}{८}
+\DeclareTextCommand{\textdevanagarinine}{L8U}{९}
+% Ux0970
+\DeclareTextCommand{\textdevanagariabbreviation}{L8U}{॰}
+\DeclareTextCommand{\textdevanagarihighdot}{L8U}[1]{#1ॱ}
+\DeclareTextCommand{\textdevanagaricandraa}{L8U}{ॲ}
+\DeclareTextCommand{\textdevanagarioe}{L8U}{ॳ}
+\DeclareTextCommand{\textdevanagariooe}{L8U}{ॴ}
+\DeclareTextCommand{\textdevanagariaw}{L8U}{ॵ}
+\DeclareTextCommand{\textdevanagariue}{L8U}{ॶ}
+\DeclareTextCommand{\textdevanagariuue}{L8U}{ॷ}
+\DeclareTextCommand{\textdevanagarimarwaridda}{L8U}{ॸ}
+\DeclareTextCommand{\textdevanagarizha}{L8U}{ॹ}
+\DeclareTextCommand{\textdevanagarijjya}{L8U}{ॺ}
+\DeclareTextCommand{\textdevanagarigga}{L8U}{ॻ}
+\DeclareTextCommand{\textdevanagarijja}{L8U}{ॼ}
+\DeclareTextCommand{\textdevanagariglottal}{L8U}{ॽ}
+\DeclareTextCommand{\textdevanagariddda}{L8U}{ॾ}
+\DeclareTextCommand{\textdevanagaribba}{L8U}{ॿ}
+
+\endinput
+
+
+
diff --git a/macros/latex/contrib/pdfx/l8ugrk-penc.def b/macros/latex/contrib/pdfx/l8ugrk-penc.def
new file mode 100644
index 0000000000..4904e29317
--- /dev/null
+++ b/macros/latex/contrib/pdfx/l8ugrk-penc.def
@@ -0,0 +1,1338 @@
+%%
+%% This is file `l8ugrk-penc.def'
+%% Formerly known as `l8ugrk.def'
+%%
+%% l8ugrk-penc.def
+%%
+%% This is a hand-written file, based upon t1enc.def
+%% with extensions for more composite characters.
+%%
+%% Copyright 2018 Ross Moore <ross.moore@mq.edu.au>
+%%
+\ProvidesFile{l8ugrk-penc.def}
+ [2018/11/28 v0.6
+ Greek support for UTF8 in XMP metadata]
+
+%
+% uses macro names mostly from greek.ucs
+%
+%
+% defines command: \LIIXUmapgreekletters
+%
+
+%%%% Greek Accent commands
+%% Combining accents Ux0300 – Ux036F
+
+\DeclareTextCommand{\textdialytika}{L8U}[1]{#1̈\restarttextLGR}% Ux0308 diaeresis
+\DeclareTextCommand{\textvaria}{L8U}[1]{#1̀\restarttextLGR}% tone mark Ux0340
+\DeclareTextCommand{\textoxia}{L8U}[1]{#1́\restarttextLGR}% tone mark Ux0341
+\DeclareTextCommand{\textperispomeni}{L8U}[1]{#1͂\restarttextLGR}% Ux0342
+\DeclareTextCommand{\textkoronis}{L8U}[1]{#1̓\restarttextLGR}% Ux0343
+\DeclareTextCommand{\textdialytikaoxia}{L8U}[1]{#1̈́\restarttextLGR}% Ux0344
+\DeclareTextCommand{\textsubiota}{L8U}[1]{#1ͅ\restarttextLGR}% Ux0345
+\DeclareTextCommand{\textsubiotachar}{L8U}{ͅ\restarttextLGR}% Ux0345 placed after characters
+
+\DeclareTextCommand{\textdasia}{L8U}[1]{#1͑\restarttextLGR}% left half-ring Ux0351
+\DeclareTextCommand{\textpsili}{L8U}[1]{#1͗\restarttextLGR}% tone mark Ux0357
+\DeclareTextCommand{\textdialytikaperispomeni}{L8U}[1]{῁#1\restarttextLGR}
+\DeclareTextCommand{\textpsilivaria}{L8U}[1]{῍#1\restarttextLGR}
+\DeclareTextCommand{\textpsilioxia}{L8U}[1]{῎#1\restarttextLGR}
+\DeclareTextCommand{\textpsiliperispomeni}{L8U}[1]{῏#1\restarttextLGR}
+\DeclareTextCommand{\textdasiavaria}{L8U}[1]{῝#1\restarttextLGR}
+\DeclareTextCommand{\textdasiaoxia}{L8U}[1]{῞#1\restarttextLGR}
+\DeclareTextCommand{\textdasiaperispomeni}{L8U}[1]{῟#1\restarttextLGR}
+
+\DeclareTextCommand{\textdialytikavaria}{L8U}[1]{#1̈̀\restarttextLGR}%
+
+\let\liixu@checksubiota\@firstoftwo
+\let\liixu@lookforsubiota\@firstoftwo
+\let\restarttextgreekLGR\@empty
+
+
+%%%% Greek Characters + diacritics Ux0370 – Ux03FF
+%
+%\DeclareTextCommand{\textdexiakeraia}{L8U}[1]{#1ʹ}
+%\DeclareTextCommand{\textaristerikeraia}{L8U}[1]{#1͵}
+%\DeclareTextCommand{\textsubiota}{L8U}[1]{#1ͺ}
+
+%
+% Heta upper+lower
+% Archaic Sampi upper+lower heta & old sampi
+\DeclareTextCommand{\textnumeralsigngreek}{L8U}{ʹ}
+\DeclareTextCommand{\textdexiakeraia}{L8U}{ʹ}
+%%\DeclareTextCommand{\anwtonos}{L8U}{ʹ}
+\DeclareTextCommand{\textnumeralsignlowergreek}{L8U}{͵}
+\DeclareTextCommand{\textaristerikeraia}{L8U}{͵}
+%%\DeclareTextCommand{\katwtonos}{L8U}{͵}
+% PamphylliaDigamma upper+lower
+% undefined
+\DeclareTextCompositeCommand{\textsubiota}{L8U}{\empty}{ͺ}
+\DeclareTextCompositeCommand{\textsubiota}{L8U}{\textcompwordmark}{ͺ}
+\DeclareTextCommand{\textsubiotaaccent}{L8U}{ͺ}
+%%\DeclareTextCommand{\Ypogegrammeni}{L8U}{͵}
+% lunate sigma reversed + dotted combinations
+%\DeclareTextCommand{\textquestion}{L8U}{;}
+\DeclareTextCommand{\texterotimatiko}{L8U}{;}
+% undefined
+\DeclareTextCompositeCommand{\'}{L8U}{\empty}{΄}
+\DeclareTextCommand{\textdialytikatonos}{L8U}[1]{#1΅}
+\DeclareTextCompositeCommand{\textdialytikatonos}{L8U}{\empty}{΅}
+\DeclareTextCompositeCommand{\textdialytikatonos}{L8U}{\textcompwordmark}{΅}
+% uppercase Ux0386 – Ux03AB
+\DeclareTextCompositeCommand{\'}{L8U}{\textAlpha}{Ά\restarttextLGR}
+\DeclareTextCompositeCommand{\'}{L8U}{Α}{Ά\restarttextLGR}
+%\DeclareTextCompositeCommand{\'}{L8U}{A}{Ά\restarttextLGR}% overrides Á
+\DeclareTextCommand{\textanoteleia}{L8U}{·}
+\DeclareTextCommand{\anoteleia}{L8U}{·}
+\DeclareTextCompositeCommand{\'}{L8U}{\textEpsilon}{Έ\restarttextLGR}
+\DeclareTextCompositeCommand{\'}{L8U}{Ε}{Έ\restarttextLGR}
+%\DeclareTextCompositeCommand{\'}{L8U}{E}{Έ\restarttextLGR}% overrides É
+\DeclareTextCompositeCommand{\'}{L8U}{\textEta}{Ή\restarttextLGR}
+\DeclareTextCompositeCommand{\'}{L8U}{Η}{Ή\restarttextLGR}
+%\DeclareTextCompositeCommand{\'}{L8U}{H}{Ή\restarttextLGR}%
+\DeclareTextCompositeCommand{\'}{L8U}{\textIota}{Ί\restarttextLGR}
+\DeclareTextCompositeCommand{\'}{L8U}{Ι}{Ί\restarttextLGR}
+%\DeclareTextCompositeCommand{\'}{L8U}{I}{Ί\restarttextLGR}% overrides Í
+\DeclareTextCompositeCommand{\'}{L8U}{\textOmicron}{Ό\restarttextLGR}
+\DeclareTextCompositeCommand{\'}{L8U}{Ο}{Ό\restarttextLGR}
+%\DeclareTextCompositeCommand{\'}{L8U}{O}{Ό\restarttextLGR}% overrides Ó
+\DeclareTextCompositeCommand{\'}{L8U}{\textUpsilon}{Ύ\restarttextLGR}
+\DeclareTextCompositeCommand{\'}{L8U}{Υ}{Ύ\restarttextLGR}
+%\DeclareTextCompositeCommand{\'}{L8U}{Y}{Ύ\restarttextLGR}% overrides Ý
+\DeclareTextCompositeCommand{\'}{L8U}{\textOmega}{Ώ\restarttextLGR}
+\DeclareTextCompositeCommand{\'}{L8U}{Ω}{Ώ\restarttextLGR}
+\DeclareTextCompositeCommand{\'}{L8U}{\textIotadieresis}{ΐ\restarttextLGR}% PD1
+\DeclareTextCompositeCommand{\textdialytikatonos}{L8U}{\textiota}{ΐ\restarttextLGR}
+\DeclareTextCommand{\textAlpha}{L8U}{\liixu@lookforsubiota{Α}{ᾼ}}
+\DeclareTextCommand{\textBeta}{L8U}{Β}
+\DeclareTextCommand{\textGamma}{L8U}{Γ}
+\DeclareTextCommand{\textDelta}{L8U}{Δ}
+\DeclareTextCommand{\textEpsilon}{L8U}{Ε}
+\DeclareTextCommand{\textZeta}{L8U}{Ζ}
+\DeclareTextCommand{\textEta}{L8U}{\liixu@lookforsubiota{Η}{ῌ}}
+\DeclareTextCommand{\textTheta}{L8U}{Θ}
+\DeclareTextCommand{\textIota}{L8U}{Ι}
+\DeclareTextCommand{\textKappa}{L8U}{Κ}
+\DeclareTextCommand{\textLambda}{L8U}{Λ}
+\DeclareTextCommand{\textMu}{L8U}{Μ}
+\DeclareTextCommand{\textNu}{L8U}{Ν}
+\DeclareTextCommand{\textXi}{L8U}{Ξ}
+\DeclareTextCommand{\textOmicron}{L8U}{Ο}
+\DeclareTextCommand{\textPi}{L8U}{Π}
+\DeclareTextCommand{\textRho}{L8U}{Ρ}
+%
+\DeclareTextCommand{\textSigma}{L8U}{Σ}
+\DeclareTextCommand{\textTau}{L8U}{Τ}
+\DeclareTextCommand{\textUpsilon}{L8U}{Υ}
+\DeclareTextCommand{\textPhi}{L8U}{Φ}
+\DeclareTextCommand{\textChi}{L8U}{Χ}
+\DeclareTextCommand{\textPsi}{L8U}{Ψ}
+\DeclareTextCommand{\textOmega}{L8U}{\liixu@lookforsubiota{Ω}{ῼ}}
+\DeclareTextCompositeCommand{\"}{L8U}{\textIota}{Ϊ\restarttextLGR}
+\DeclareTextCompositeCommand{\"}{L8U}{Ι}{Ϊ\restarttextLGR}
+\DeclareTextCommand{\textIotadieresis}{L8U}{Ϊ\restarttextLGR}
+\DeclareTextCompositeCommand{\textdialytika}{L8U}{I}{Ϊ\restarttextLGR}
+\DeclareTextCompositeCommand{\"}{L8U}{\textUpsilon}{Ϋ\restarttextLGR}
+\DeclareTextCompositeCommand{\"}{L8U}{Υ}{Ϋ\restarttextLGR}
+\DeclareTextCompositeCommand{\textdialytika}{L8U}{Y}{Ϋ\restarttextLGR}
+% lowercase Ux03AC – Ux03D6
+\DeclareTextCompositeCommand{\'}{L8U}{\textalpha}{\liixu@lookforsubiota{ά}{ᾴ}}
+\DeclareTextCompositeCommand{\'}{L8U}{α}{\liixu@lookforsubiota{ά}{ᾴ}}
+\DeclareTextCompositeCommand{\'}{L8U}{\textepsilon}{έ\restarttextLGR}
+\DeclareTextCompositeCommand{\'}{L8U}{ε}{έ\restarttextLGR}
+\DeclareTextCompositeCommand{\'}{L8U}{\texteta}{\liixu@lookforsubiota{ή}{ῄ}}
+\DeclareTextCompositeCommand{\'}{L8U}{η}{\liixu@lookforsubiota{ή}{ῄ}}
+\DeclareTextCompositeCommand{\'}{L8U}{\textiota}{ί\restarttextLGR}
+\DeclareTextCompositeCommand{\'}{L8U}{ι}{ί\restarttextLGR}
+\DeclareTextCompositeCommand{\textdialytikatonos}{L8U}{\textupsilon}{ΰ\restarttextLGR}
+\DeclareTextCompositeCommand{\textdialytikatonos}{L8U}{υ}{ΰ\restarttextLGR}
+\DeclareTextCompositeCommand{\"}{L8U}{\textupsilonacute}{ΰ\restarttextLGR}% PD1
+\DeclareTextCommand{\textalpha}{L8U}{\liixu@lookforsubiota{α}{ᾳ}}
+\DeclareTextCommand{\textbeta}{L8U}{β}
+\DeclareTextCommand{\textgamma}{L8U}{γ}
+\DeclareTextCommand{\textdelta}{L8U}{δ}
+\DeclareTextCommand{\textepsilon}{L8U}{ε}
+\DeclareTextCommand{\textzeta}{L8U}{ζ}
+\DeclareTextCommand{\texteta}{L8U}{\liixu@lookforsubiota{η}{ῃ}}
+\DeclareTextCommand{\texttheta}{L8U}{θ}% or ϑ Ux03D1
+\DeclareTextCommand{\textiota}{L8U}{ι}
+\DeclareTextCommand{\textkappa}{L8U}{κ}% or ϰ Ux03F0
+\DeclareTextCommand{\textlambda}{L8U}{λ}
+\DeclareTextCommand{\textmugreek}{L8U}{μ}% PD1
+%\DeclareTextCommand{\textmu}{L8U}{μ}% beware µ
+\DeclareTextCommand{\textnu}{L8U}{ν}
+\DeclareTextCommand{\textxi}{L8U}{ξ}
+\DeclareTextCommand{\textomicron}{L8U}{ο}
+\DeclareTextCommand{\textpi}{L8U}{π}
+\DeclareTextCommand{\textrho}{L8U}{ρ}% or ϱ Ux03F1
+\DeclareTextCommand{\textgrsigma}{L8U}{ς}
+\DeclareTextCommand{\textvarsigma}{L8U}{ς}
+%\DeclareTextCommand{\varsigma}{L8U}{ς}% beware math usage
+\DeclareTextCommand{\textsigma}{L8U}{σ}
+\DeclareTextCommand{\texttau}{L8U}{τ}
+\DeclareTextCommand{\textupsilon}{L8U}{υ}
+\DeclareTextCommand{\textphi}{L8U}{φ}
+\DeclareTextCommand{\textchi}{L8U}{χ}
+\DeclareTextCommand{\textpsi}{L8U}{ψ}
+\DeclareTextCommand{\textomega}{L8U}{\liixu@lookforsubiota{ω}{ῳ}}
+\DeclareTextCompositeCommand{\"}{L8U}{\textiota}{ϊ\restarttextLGR}
+\DeclareTextCompositeCommand{\"}{L8U}{ι}{ϊ}
+\DeclareTextCompositeCommand{\"}{L8U}{\textupsilon}{ϋ\restarttextLGR}
+\DeclareTextCompositeCommand{\"}{L8U}{υ}{ϋ\restarttextLGR}
+\DeclareTextCompositeCommand{\'}{L8U}{\textomicron}{ό\restarttextLGR}
+\DeclareTextCompositeCommand{\'}{L8U}{ο}{ό\restarttextLGR}
+\DeclareTextCompositeCommand{\'}{L8U}{\textupsilon}{ύ\restarttextLGR}
+\DeclareTextCompositeCommand{\'}{L8U}{υ}{ύ\restarttextLGR}
+\DeclareTextCommand{\textupsilonacute}{L8U}{ύ\restarttextLGR}% PD1
+\DeclareTextCompositeCommand{\'}{L8U}{\textomega}{ώ\restarttextLGR}
+\DeclareTextCompositeCommand{\'}{L8U}{ω}{ώ\restarttextLGR}
+\DeclareTextCommand{\textKai}{L8U}{Ϗ}
+\DeclareTextCommand{\textvarbeta}{L8U}{ϐ}
+%\DeclareTextCommand{\varbeta}{L8U}{ϐ}
+\DeclareTextCommand{\textvartheta}{L8U}{ϑ}% or θ
+%\DeclareTextCommand{\vartheta}{L8U}{ϑ}% beware math usage
+\DeclareTextCommand{\textvarupsilon}{L8U}{ϒ}
+\DeclareTextCompositeCommand{\'}{L8U}{\textupsilon}{ϓ\restarttextLGR}
+\DeclareTextCompositeCommand{\"}{L8U}{\textupsilon}{ϔ\restarttextLGR}
+\DeclareTextCommand{\textvarphi}{L8U}{ϕ}
+%\DeclareTextCommand{\varphi}{L8U}{ϕ}% beware math usage
+\DeclareTextCommand{\textvarpi}{L8U}{ϖ}
+%\DeclareTextCommand{\varpi}{L8U}{ϖ}% beware math usage
+\DeclareTextCommand{\textkai}{L8U}{ϗ}
+\DeclareTextCommand{\textQoppa}{L8U}{Ϙ}
+%%\DeclareTextCommand{\textoldKoppa}{L8U}{Ϙ}
+%%\DeclareTextCommand{\Qoppa}{L8U}{Ϙ}
+\DeclareTextCommand{\textqoppa}{L8U}{ϙ}
+%%\DeclareTextCommand{\textoldkoppa}{L8U}{ϙ}
+%%\DeclareTextCommand{\qoppa}{L8U}{ϙ}
+\DeclareTextCommand{\textStigmagreek}{L8U}{Ϛ}% PD1
+\DeclareTextCommand{\textStigma}{L8U}{Ϛ}
+%\DeclareTextCommand{\Stigma}{L8U}{Ϛ}
+\DeclareTextCommand{\textstigmagreek}{L8U}{ϛ}% PD1
+\DeclareTextCommand{\textstigma}{L8U}{ϛ}
+%\DeclareTextCommand{\stigma}{L8U}{ϛ}
+\DeclareTextCommand{\textDigammagreek}{L8U}{Ϝ}% PD1
+\DeclareTextCommand{\textDigamma}{L8U}{Ϝ}
+%\DeclareTextCommand{\Digamma}{L8U}{Ϝ}
+\DeclareTextCommand{\textdigammagreek}{L8U}{ϝ}% PD1
+\DeclareTextCommand{\textdigamma}{L8U}{ϝ}
+%\DeclareTextCommand{\ddigamma}{L8U}{ϝ}
+\DeclareTextCommand{\textKoppagreek}{L8U}{Ϟ}% PD1
+%\DeclareTextCommand{\textQoppa}{L8U}{Ϟ}% !!!
+\DeclareTextCommand{\textkoppagreek}{L8U}{ϟ}% PD1
+\DeclareTextCommand{\textkoppa}{L8U}{ϟ}
+%\DeclareTextCommand{\koppa}{L8U}{ϟ}
+%\DeclareTextCommand{\textqoppa}{L8U}{ϟ}% !!!
+\DeclareTextCommand{\textSampi}{Ugreek}{Ϡ}% PD1
+\DeclareTextCommand{\textSampi}{L8U}{Ϡ}
+%\DeclareTextCommand{\Sampi}{L8U}{Ϡ}
+\DeclareTextCommand{\textsampigreek}{L8U}{ϡ}% PD1
+\DeclareTextCommand{\textsampi}{L8U}{ϡ}
+%\DeclareTextCommand{\sampi}{L8U}{ϡ}
+\DeclareTextCommand{\textsanpi}{L8U}{ϡ}% mistaken spelling in greek.ucs
+% Coptic Ux03E2 – Ux03EF
+%\DeclareTextCommand{\textShei}{L8U}{Ϣ}
+%\DeclareTextCommand{\textshei}{L8U}{ϣ}
+%\DeclareTextCommand{\textFei}{L8U}{Ϥ}
+%\DeclareTextCommand{\textfei}{L8U}{ϥ}
+%\DeclareTextCommand{\textKhei}{L8U}{Ϧ}
+%\DeclareTextCommand{\textkhei}{L8U}{ϧ}
+%\DeclareTextCommand{\textHori}{L8U}{Ϩ}
+%\DeclareTextCommand{\texthori}{L8U}{ϩ}
+%\DeclareTextCommand{\textGangia}{L8U}{Ϫ}
+%\DeclareTextCommand{\textgangia}{L8U}{ϫ}
+%\DeclareTextCommand{\textShima}{L8U}{Ϭ}
+%\DeclareTextCommand{\textshima}{L8U}{ϭ}
+%\DeclareTextCommand{\textDei}{L8U}{Ϯ}
+%\DeclareTextCommand{\textdei}{L8U}{ϯ}
+% ancient and variant letter glyphs
+\DeclareTextCommand{\textvarkappa}{L8U}{ϰ}% or κ
+%\DeclareTextCommand{\varkappa}{L8U}{ϰ}% beware math usage
+\DeclareTextCommand{\textvarrho}{L8U}{ϱ}% or ρ
+%\DeclareTextCommand{\varrho}{L8U}{ϱ}% beware math usage
+%\DeclareTextCommand{\textlunatesigma}{L8U}{ϲ}
+%\DeclareTextCommand{\textjot}{L8U}{ϳ}
+\DeclareTextCommand{\textvarTheta}{L8U}{ϴ}%
+%\DeclareTextCommand{\varTheta}{L8U}{ϴ}% beware math usage
+\DeclareTextCommand{\textvarepsilon}{L8U}{ϵ}%
+%\DeclareTextCommand{\varepsilon}{L8U}{ϵ}% beware math usage
+%\DeclareTextCommand{\textrevepsilon}{L8U}{϶}
+%\DeclareTextCommand{\textSho}{L8U}{Ϸ}
+%\DeclareTextCommand{\textsho}{L8U}{ϸ}
+%\DeclareTextCommand{\textlunateSigma}{L8U}{Ϲ}
+%\DeclareTextCommand{\textSan}{L8U}{Ϻ}
+%\DeclareTextCommand{\textsan}{L8U}{ϻ}
+%\DeclareTextCommand{\textbarrho}{L8U}{ϼ}
+%\DeclareTextCommand{\textrevlunateSigma}{L8U}{Ͻ}
+%\DeclareTextCommand{\textdotlunateSigma}{L8U}{Ͼ}
+%\DeclareTextCommand{\textrevdotlunateSigma}{L8U}{Ͽ}
+
+\def\LIIXUmapgreekletters{%
+ \let\accdialytika\textdialytika % "
+ \let\acctonos\textoxia % '
+ \let\accdasia\textdasia % <
+ \let\accpsili\textpsili % >
+ \let\accvaria\textvaria % `
+ \let\accperispomeni\textperispomeni % ~
+%\let\prosgegrammeni\textsubiotaaccent % |
+%\let\ypogegrammeni\textsubiotaaccent % |
+ \let\ypogegrammeni |%
+ \let\prosgegrammeni |%
+%
+ \let\accdialytikaperispomeni\textdialytikaperispomeni % ῁
+ \let\accdialytikatonos\textdialytikaoxia % ΅
+ \let\accdialytikavaria\textdialytikavaria % ῭
+ \let\accdasiaperispomeni\textdasiaperispomeni % ῟
+ \let\accdasiavaria\textdasiavaria % ῝
+ \let\accdasiaoxia\textdasiaoxia % ῞
+ \let\accpsiliperispomeni\textpsiliperispomeni % ῏
+ \let\accpsilioxia\textpsilioxia % ῎
+ \let\accpsilivaria\textpsilivaria % ῍
+ \let\sampi\textsampi
+ \let\Sampi\textSampi
+ \let\koppa\textkoppa
+ \let\Koppa\textKoppa
+ \let\digamma\textdigamma
+ \let\ddigamma\textdigamma
+ \let\Digamma\textDigamma
+ \let\stigma\textstigma
+ \let\Stigma\textStigma
+ \let\accinvertedbrevebelow\textsubarch
+ \let\varbeta\textvarbeta
+ \let\varepsilon\textvarepsilon
+ \let\varpi\textvarpi
+ \let\varphi\textvarphi
+ \let\vartheta\textvartheta
+ \let\varupsilon\textvarupsilon
+ \let\varrho\textvarrho
+ \let\varTheta\textvarTheta
+ \let\textgreek\textLGR
+}
+
+%
+% Greek Extended Ux1F00 – Ux1FFF
+%
+% these are already defined above, using combining characters
+%
+%\DeclareTextCommand{\textkoronis}{L8U}[1]{#1᾽}
+%\DeclareTextCommand{\textpsili}{L8U}[1]{#1᾿}
+%\DeclareTextCommand{\textperispomeni}{L8U}[1]{#1῀}
+%\DeclareTextCommand{\textdialytikaperispomeni}{L8U}[1]{#1῁}
+%\DeclareTextCommand{\textpsilivaria}{L8U}[1]{#1῍}
+%\DeclareTextCommand{\textpsilioxia}{L8U}[1]{#1῎}
+%\DeclareTextCommand{\textpsiliperispomeni}{L8U}[1]{#1῏}
+%\DeclareTextCommand{\textdasiavaria}{L8U}[1]{#1῝}
+%\DeclareTextCommand{\textdasiaoxia}{L8U}[1]{#1῞}
+%\DeclareTextCommand{\textdasiaperispomeni}{L8U}[1]{#1῟}
+%\DeclareTextCommand{\textdialytikavaria}{L8U}[1]{#1῭}
+%\DeclareTextCommand{\textdialytikaoxia}{L8U}[1]{#1΅}
+%\DeclareTextCommand{\textvaria}{L8U}[1]{#1`}
+%\DeclareTextCommand{\textoxia}{L8U}[1]{#1´}
+%\DeclareTextCommand{\textdasia}{L8U}[1]{#1῾}
+
+\DeclareTextCommand{\textpsiliiota}{L8U}[1]{#1̓ͅ}
+\DeclareTextCommand{\textdasiaiota}{L8U}[1]{#1͑ͅ}
+\DeclareTextCommand{\textoxiaiota}{L8U}[1]{#1́ͅ}
+\DeclareTextCommand{\textvariaiota}{L8U}[1]{#1̀ͅ}
+\DeclareTextCommand{\textpsilivariaiota}{L8U}[1]{῍#1ͅ}
+\DeclareTextCommand{\textdasiavariaiota}{L8U}[1]{῝#1ͅ}
+\DeclareTextCommand{\textpsilioxiaiota}{L8U}[1]{῎#1ͅ}
+\DeclareTextCommand{\textdasiaoxiaiota}{L8U}[1]{῞#1ͅ}
+\DeclareTextCommand{\textpsiliperispomeniiota}{L8U}[1]{῏#1ͅ}
+\DeclareTextCommand{\textdasiaperispomeniiota}{L8U}[1]{῟#1ͅ}
+\DeclareTextCommand{\textperispomeniiota}{L8U}[1]{#1͂ͅ}%
+
+\DeclareTextCompositeCommand{\textsubiota}{L8U}{\textpsili}{\textpsiliiota}
+\DeclareTextCompositeCommand{\textsubiota}{L8U}{\textdasia}{\textdasiaiota}
+\DeclareTextCompositeCommand{\textsubiota}{L8U}{\textoxia}{\textoxiaiota}
+\DeclareTextCompositeCommand{\textsubiota}{L8U}{\textvaria}{\textvariaiota}
+\DeclareTextCompositeCommand{\textsubiota}{L8U}{\textpsilivaria}{\textpsilivariaiota}
+\DeclareTextCompositeCommand{\textsubiota}{L8U}{\textdasiavaria}{\textdasiavariaiota}
+\DeclareTextCompositeCommand{\textsubiota}{L8U}{\textpsilioxia}{\textpsilioxiaiota}
+\DeclareTextCompositeCommand{\textsubiota}{L8U}{\textdasiaoxia}{\textdasiaoxiaiota}
+\DeclareTextCompositeCommand{\textsubiota}{L8U}{\textpsiliperispomeni}{\textpsiliperispomeniiota}
+\DeclareTextCompositeCommand{\textsubiota}{L8U}{\textdasiaperispomeni}{\textdasiaperispomeniiota}
+
+\DeclareTextCompositeCommand{\textsubiota}{L8U}{>}{\textpsiliiota}
+\DeclareTextCompositeCommand{\textsubiota}{L8U}{<}{\textdasiaiota}
+\DeclareTextCompositeCommand{\textsubiota}{L8U}{'}{\textoxiaiota}
+\DeclareTextCompositeCommand{\textsubiota}{L8U}{`}{\textvariaiota}
+
+\DeclareTextCompositeCommand{\textpsili}{L8U}{\textalpha}{\liixu@checksubiota{ἀ}{ᾀ}}
+\DeclareTextCompositeCommand{\textdasia}{L8U}{\textalpha}{\liixu@checksubiota{ἁ}{ᾁ}}
+\DeclareTextCompositeCommand{\textpsilivaria}{L8U}{\textalpha}{\liixu@checksubiota{ἂ}{ᾂ}}
+\DeclareTextCompositeCommand{\textdasiavaria}{L8U}{\textalpha}{\liixu@checksubiota{ἃ}{ᾃ}}
+\DeclareTextCompositeCommand{\textpsilioxia}{L8U}{\textalpha}{\liixu@checksubiota{ἄ}{ᾄ}}
+\DeclareTextCompositeCommand{\textdasiaoxia}{L8U}{\textalpha}{\liixu@checksubiota{ἅ}{ᾅ}}
+\DeclareTextCompositeCommand{\textpsiliperispomeni}{L8U}{\textalpha}{\liixu@checksubiota{ἆ}{ᾆ}}
+\DeclareTextCompositeCommand{\textdasiaperispomeni}{L8U}{\textalpha}{\liixu@checksubiota{ἇ}{ᾇ}}
+\DeclareTextCompositeCommand{\textpsili}{L8U}{\textAlpha}{\liixu@checksubiota{Ἀ}{ᾈ}}
+\DeclareTextCompositeCommand{\textdasia}{L8U}{\textAlpha}{\liixu@checksubiota{Ἁ}{ᾉ}}
+\DeclareTextCompositeCommand{\textpsilivaria}{L8U}{\textAlpha}{\liixu@checksubiota{Ἂ}{ᾊ}}
+\DeclareTextCompositeCommand{\textdasiavaria}{L8U}{\textAlpha}{\liixu@checksubiota{Ἃ}{ᾋ}}
+\DeclareTextCompositeCommand{\textpsilioxia}{L8U}{\textAlpha}{\liixu@checksubiota{Ἄ}{ᾌ}}
+\DeclareTextCompositeCommand{\textdasiaoxia}{L8U}{\textAlpha}{\liixu@checksubiota{Ἅ}{ᾍ}}
+\DeclareTextCompositeCommand{\textpsiliperispomeni}{L8U}{\textAlpha}{\liixu@checksubiota{Ἆ}{ᾎ}}
+\DeclareTextCompositeCommand{\textdasiaperispomeni}{L8U}{\textAlpha}{\liixu@checksubiota{Ἇ}{ᾏ}}
+\DeclareTextCompositeCommand{\textpsili}{L8U}{\textepsilon}{ἐ\restarttextLGR}
+\DeclareTextCompositeCommand{\textdasia}{L8U}{\textepsilon}{ἑ\restarttextLGR}
+\DeclareTextCompositeCommand{\textpsilivaria}{L8U}{\textepsilon}{ἒ\restarttextLGR}
+\DeclareTextCompositeCommand{\textdasiavaria}{L8U}{\textepsilon}{ἓ\restarttextLGR}
+\DeclareTextCompositeCommand{\textpsilioxia}{L8U}{\textepsilon}{ἔ\restarttextLGR}
+\DeclareTextCompositeCommand{\textdasiaoxia}{L8U}{\textepsilon}{ἕ\restarttextLGR}
+%\DeclareTextCompositeCommand{\textpsiliperispomeni}{L8U}{\textepsilon}{}% not used
+%\DeclareTextCompositeCommand{\textdasiaperispomeni}{L8U}{\textepsilon}{}% not used
+\DeclareTextCompositeCommand{\textpsili}{L8U}{\textEpsilon}{Ἐ\restarttextLGR}
+\DeclareTextCompositeCommand{\textdasia}{L8U}{\textEpsilon}{Ἑ\restarttextLGR}
+\DeclareTextCompositeCommand{\textpsilivaria}{L8U}{\textEpsilon}{Ἒ\restarttextLGR}
+\DeclareTextCompositeCommand{\textdasiavaria}{L8U}{\textEpsilon}{Ἓ\restarttextLGR}
+\DeclareTextCompositeCommand{\textpsilioxia}{L8U}{\textEpsilon}{Ἔ\restarttextLGR}
+\DeclareTextCompositeCommand{\textdasiaoxia}{L8U}{\textEpsilon}{Ἕ\restarttextLGR}
+%\DeclareTextCompositeCommand{\textpsiliperispomeni}{L8U}{\textEpsilon}{}% not used
+%\DeclareTextCompositeCommand{\textdasiaperispomeni}{L8U}{\textEpsilon}{}% not used
+\DeclareTextCompositeCommand{\textpsili}{L8U}{\texteta}{\liixu@checksubiota{ἠ}{ᾐ}}
+\DeclareTextCompositeCommand{\textdasia}{L8U}{\texteta}{\liixu@checksubiota{ἡ}{ᾑ}}
+\DeclareTextCompositeCommand{\textpsilivaria}{L8U}{\texteta}{\liixu@checksubiota{ἢ}{ᾒ}}
+\DeclareTextCompositeCommand{\textdasiavaria}{L8U}{\texteta}{\liixu@checksubiota{ἣ}{ᾓ}}
+\DeclareTextCompositeCommand{\textpsilioxia}{L8U}{\texteta}{\liixu@checksubiota{ἤ}{ᾔ}}
+\DeclareTextCompositeCommand{\textdasiaoxia}{L8U}{\texteta}{\liixu@checksubiota{ἥ}{ᾕ}}
+\DeclareTextCompositeCommand{\textpsiliperispomeni}{L8U}{\texteta}{\liixu@checksubiota{ἦ}{ᾖ}}
+\DeclareTextCompositeCommand{\textdasiaperispomeni}{L8U}{\texteta}{\liixu@checksubiota{ἧ}{ᾗ}}
+\DeclareTextCompositeCommand{\textpsili}{L8U}{\textEta}{\liixu@checksubiota{Ἠ}{ᾘ}}
+\DeclareTextCompositeCommand{\textdasia}{L8U}{\textEta}{\liixu@checksubiota{Ἡ}{ᾙ}}
+\DeclareTextCompositeCommand{\textpsilivaria}{L8U}{\textEta}{\liixu@checksubiota{Ἢ}{ᾚ}}
+\DeclareTextCompositeCommand{\textdasiavaria}{L8U}{\textEta}{\liixu@checksubiota{Ἣ}{ᾛ}}
+\DeclareTextCompositeCommand{\textpsilioxia}{L8U}{\textEta}{\liixu@checksubiota{Ἤ}{ᾜ}}
+\DeclareTextCompositeCommand{\textdasiaoxia}{L8U}{\textEta}{\liixu@checksubiota{Ἥ}{ᾝ}}
+\DeclareTextCompositeCommand{\textpsiliperispomeni}{L8U}{\textEta}{\liixu@checksubiota{Ἦ}{ᾞ}}
+\DeclareTextCompositeCommand{\textdasiaperispomeni}{L8U}{\textEta}{\liixu@checksubiota{Ἧ}{ᾟ}}
+\DeclareTextCompositeCommand{\textpsili}{L8U}{\textiota}{ἰ\restarttextLGR}
+\DeclareTextCompositeCommand{\textdasia}{L8U}{\textiota}{ἱ\restarttextLGR}
+\DeclareTextCompositeCommand{\textpsilivaria}{L8U}{\textiota}{ἲ\restarttextLGR}
+\DeclareTextCompositeCommand{\textdasiavaria}{L8U}{\textiota}{ἳ\restarttextLGR}
+\DeclareTextCompositeCommand{\textpsilioxia}{L8U}{\textiota}{ἴ\restarttextLGR}
+\DeclareTextCompositeCommand{\textdasiaoxia}{L8U}{\textiota}{ἵ\restarttextLGR}
+\DeclareTextCompositeCommand{\textpsiliperispomeni}{L8U}{\textiota}{ἶ\restarttextLGR}
+\DeclareTextCompositeCommand{\textdasiaperispomeni}{L8U}{\textiota}{ἷ\restarttextLGR}
+\DeclareTextCompositeCommand{\textpsili}{L8U}{\textIota}{Ἰ\restarttextLGR}
+\DeclareTextCompositeCommand{\textdasia}{L8U}{\textIota}{Ἱ\restarttextLGR}
+\DeclareTextCompositeCommand{\textpsilivaria}{L8U}{\textIota}{Ἲ\restarttextLGR}
+\DeclareTextCompositeCommand{\textdasiavaria}{L8U}{\textIota}{Ἳ\restarttextLGR}
+\DeclareTextCompositeCommand{\textpsilioxia}{L8U}{\textIota}{Ἴ\restarttextLGR}
+\DeclareTextCompositeCommand{\textdasiaoxia}{L8U}{\textIota}{Ἵ\restarttextLGR}
+\DeclareTextCompositeCommand{\textpsiliperispomeni}{L8U}{\textIota}{Ἶ\restarttextLGR}
+\DeclareTextCompositeCommand{\textdasiaperispomeni}{L8U}{\textIota}{Ἷ\restarttextLGR}
+\DeclareTextCompositeCommand{\textpsili}{L8U}{\textomicron}{ὀ\restarttextLGR}
+\DeclareTextCompositeCommand{\textdasia}{L8U}{\textomicron}{ὁ\restarttextLGR}
+\DeclareTextCompositeCommand{\textpsilivaria}{L8U}{\textomicron}{ὂ\restarttextLGR}
+\DeclareTextCompositeCommand{\textdasiavaria}{L8U}{\textomicron}{ὃ\restarttextLGR}
+\DeclareTextCompositeCommand{\textpsilioxia}{L8U}{\textomicron}{ὄ\restarttextLGR}
+\DeclareTextCompositeCommand{\textdasiaoxia}{L8U}{\textomicron}{ὅ\restarttextLGR}
+%\DeclareTextCompositeCommand{\textpsiliperispomeni}{L8U}{\textomicron}{}% not used
+%\DeclareTextCompositeCommand{\textdasiaperispomeni}{L8U}{\textomicron}{}% not used
+\DeclareTextCompositeCommand{\textpsili}{L8U}{\textOmicron}{Ὀ\restarttextLGR}
+\DeclareTextCompositeCommand{\textdasia}{L8U}{\textOmicron}{Ὁ\restarttextLGR}
+\DeclareTextCompositeCommand{\textpsilivaria}{L8U}{\textOmicron}{Ὂ\restarttextLGR}
+\DeclareTextCompositeCommand{\textdasiavaria}{L8U}{\textOmicron}{Ὃ\restarttextLGR}
+\DeclareTextCompositeCommand{\textpsilioxia}{L8U}{\textOmicron}{Ὄ\restarttextLGR}
+\DeclareTextCompositeCommand{\textdasiaoxia}{L8U}{\textOmicron}{Ὅ\restarttextLGR}
+%\DeclareTextCompositeCommand{\textpsiliperispomeni}{L8U}{\textOmicron}{}% not used
+%\DeclareTextCompositeCommand{\textdasiaperispomeni}{L8U}{\textOmicron}{}% not used
+\DeclareTextCompositeCommand{\textpsili}{L8U}{\textupsilon}{ὐ\restarttextLGR}
+\DeclareTextCompositeCommand{\textdasia}{L8U}{\textupsilon}{ὑ\restarttextLGR}
+\DeclareTextCompositeCommand{\textpsilivaria}{L8U}{\textupsilon}{ὒ\restarttextLGR}
+\DeclareTextCompositeCommand{\textdasiavaria}{L8U}{\textupsilon}{ὓ\restarttextLGR}
+\DeclareTextCompositeCommand{\textpsilioxia}{L8U}{\textupsilon}{ὔ\restarttextLGR}
+\DeclareTextCompositeCommand{\textdasiaoxia}{L8U}{\textupsilon}{ὕ\restarttextLGR}
+\DeclareTextCompositeCommand{\textpsiliperispomeni}{L8U}{\textupsilon}{ὖ\restarttextLGR}
+\DeclareTextCompositeCommand{\textdasiaperispomeni}{L8U}{\textupsilon}{ὗ\restarttextLGR}
+%\DeclareTextCompositeCommand{\textpsili}{L8U}{\textUpsilon}{}% not used
+\DeclareTextCompositeCommand{\textdasia}{L8U}{\textUpsilon}{Ὑ\restarttextLGR}
+%\DeclareTextCompositeCommand{\textpsilivaria}{L8U}{\textUpsilon}{}% not used
+\DeclareTextCompositeCommand{\textdasiavaria}{L8U}{\textUpsilon}{Ὓ\restarttextLGR}
+%\DeclareTextCompositeCommand{\textpsilioxia}{L8U}{\textUpsilon}{}% not used
+\DeclareTextCompositeCommand{\textdasiaoxia}{L8U}{\textUpsilon}{Ὕ\restarttextLGR}
+%\DeclareTextCompositeCommand{\textpsiliperispomeni}{L8U}{\textUpsilon}{}% not used
+\DeclareTextCompositeCommand{\textdasiaperispomeni}{L8U}{\textUpsilon}{Ὗ\restarttextLGR}
+\DeclareTextCompositeCommand{\textpsili}{L8U}{\textomega}{\liixu@checksubiota{ὠ}{ᾠ}}
+\DeclareTextCompositeCommand{\textdasia}{L8U}{\textomega}{\liixu@checksubiota{ὡ}{ᾡ}}
+\DeclareTextCompositeCommand{\textpsilivaria}{L8U}{\textomega}{\liixu@checksubiota{ὢ}{ᾢ}}
+\DeclareTextCompositeCommand{\textdasiavaria}{L8U}{\textomega}{\liixu@checksubiota{ὣ}{ᾣ}}
+\DeclareTextCompositeCommand{\textpsilioxia}{L8U}{\textomega}{\liixu@checksubiota{ὤ}{ᾤ}}
+\DeclareTextCompositeCommand{\textdasiaoxia}{L8U}{\textomega}{\liixu@checksubiota{ὥ}{ᾥ}}
+\DeclareTextCompositeCommand{\textpsiliperispomeni}{L8U}{\textomega}{\liixu@checksubiota{ὦ}{ᾦ}}
+\DeclareTextCompositeCommand{\textdasiaperispomeni}{L8U}{\textomega}{\liixu@checksubiota{ὧ}{ᾧ}}
+\DeclareTextCompositeCommand{\textpsili}{L8U}{\textOmega}{\liixu@checksubiota{Ὠ}{ᾨ}}
+\DeclareTextCompositeCommand{\textdasia}{L8U}{\textOmega}{\liixu@checksubiota{Ὡ}{ᾩ}}
+\DeclareTextCompositeCommand{\textpsilivaria}{L8U}{\textOmega}{\liixu@checksubiota{Ὢ}{ᾪ}}
+\DeclareTextCompositeCommand{\textdasiavaria}{L8U}{\textOmega}{\liixu@checksubiota{Ὣ}{ᾫ}}
+\DeclareTextCompositeCommand{\textpsilioxia}{L8U}{\textOmega}{\liixu@checksubiota{Ὤ}{ᾬ}}
+\DeclareTextCompositeCommand{\textdasiaoxia}{L8U}{\textOmega}{\liixu@checksubiota{Ὥ}{ᾭ}}
+\DeclareTextCompositeCommand{\textpsiliperispomeni}{L8U}{\textOmega}{\liixu@checksubiota{Ὦ}{ᾮ}}
+\DeclareTextCompositeCommand{\textdasiaperispomeni}{L8U}{\textOmega}{\liixu@checksubiota{Ὧ}{ᾯ}}
+% Ux1F70
+\DeclareTextCompositeCommand{\textvaria}{L8U}{\textalpha}{\liixu@checksubiota{ὰ}{ᾲ}}
+\DeclareTextCompositeCommand{\textoxia}{L8U}{\textalpha}{\liixu@checksubiota{ά}{ᾴ}}
+\DeclareTextCompositeCommand{\textvaria}{L8U}{\textepsilon}{ὲ\restarttextLGR}
+\DeclareTextCompositeCommand{\textoxia}{L8U}{\textepsilon}{έ\restarttextLGR}
+\DeclareTextCompositeCommand{\textvaria}{L8U}{\texteta}{\liixu@checksubiota{ὴ}{ῂ}}
+\DeclareTextCompositeCommand{\textoxia}{L8U}{\texteta}{\liixu@checksubiota{ή}{ῄ}}
+\DeclareTextCompositeCommand{\textvaria}{L8U}{\textiota}{ὶ\restarttextLGR}
+\DeclareTextCompositeCommand{\textoxia}{L8U}{\textiota}{ί\restarttextLGR}
+\DeclareTextCompositeCommand{\textvaria}{L8U}{\textomicron}{ὸ\restarttextLGR}
+\DeclareTextCompositeCommand{\textoxia}{L8U}{\textomicron}{ό\restarttextLGR}
+\DeclareTextCompositeCommand{\textvaria}{L8U}{\textupsilon}{ὺ\restarttextLGR}
+\DeclareTextCompositeCommand{\textoxia}{L8U}{\textupsilon}{ύ\restarttextLGR}
+\DeclareTextCompositeCommand{\textvaria}{L8U}{\textomega}{\liixu@checksubiota{ὼ}{ῲ}}
+\DeclareTextCompositeCommand{\textoxia}{L8U}{\textomega}{\liixu@checksubiota{ώ}{ῴ}}
+% Ux1F80
+\DeclareTextCompositeCommand{\textpsiliiota}{L8U}{\textalpha}{ᾀ\restarttextLGR}
+\DeclareTextCompositeCommand{\textdasiaiota}{L8U}{\textalpha}{ᾁ\restarttextLGR}
+\DeclareTextCompositeCommand{\textpsilivariaiota}{L8U}{\textalpha}{ᾂ\restarttextLGR}
+\DeclareTextCompositeCommand{\textdasiavariaiota}{L8U}{\textalpha}{ᾃ\restarttextLGR}
+\DeclareTextCompositeCommand{\textpsilioxiaiota}{L8U}{\textalpha}{ᾄ\restarttextLGR}
+\DeclareTextCompositeCommand{\textdasiaoxiaiota}{L8U}{\textalpha}{ᾅ\restarttextLGR}
+\DeclareTextCompositeCommand{\textpsiliperispomeniiota}{L8U}{\textalpha}{ᾆ\restarttextLGR}
+\DeclareTextCompositeCommand{\textdasiaperispomeniiota}{L8U}{\textalpha}{ᾇ\restarttextLGR}
+\DeclareTextCompositeCommand{\textpsiliiota}{L8U}{\textAlpha}{ᾈ\restarttextLGR}
+\DeclareTextCompositeCommand{\textdasiaiota}{L8U}{\textAlpha}{ᾉ\restarttextLGR}
+\DeclareTextCompositeCommand{\textpsilivariaiota}{L8U}{\textAlpha}{ᾊ\restarttextLGR}
+\DeclareTextCompositeCommand{\textdasiavariaiota}{L8U}{\textAlpha}{ᾋ\restarttextLGR}
+\DeclareTextCompositeCommand{\textpsilioxiaiota}{L8U}{\textAlpha}{ᾌ\restarttextLGR}
+\DeclareTextCompositeCommand{\textdasiaoxiaiota}{L8U}{\textAlpha}{ᾍ\restarttextLGR}
+\DeclareTextCompositeCommand{\textpsiliperispomeniiota}{L8U}{\textAlpha}{ᾎ\restarttextLGR}
+\DeclareTextCompositeCommand{\textdasiaperispomeniiota}{L8U}{\textAlpha}{ᾏ\restarttextLGR}
+\DeclareTextCompositeCommand{\textpsiliiota}{L8U}{\texteta}{ᾐ\restarttextLGR}
+\DeclareTextCompositeCommand{\textdasiaiota}{L8U}{\texteta}{ᾑ\restarttextLGR}
+\DeclareTextCompositeCommand{\textpsilivariaiota}{L8U}{\texteta}{ᾒ\restarttextLGR}
+\DeclareTextCompositeCommand{\textdasiavariaiota}{L8U}{\texteta}{ᾓ\restarttextLGR}
+\DeclareTextCompositeCommand{\textpsilioxiaiota}{L8U}{\texteta}{ᾔ\restarttextLGR}
+\DeclareTextCompositeCommand{\textdasiaoxiaiota}{L8U}{\texteta}{ᾕ\restarttextLGR}
+\DeclareTextCompositeCommand{\textpsiliperispomeniiota}{L8U}{\texteta}{ᾖ\restarttextLGR}
+\DeclareTextCompositeCommand{\textdasiaperispomeniiota}{L8U}{\texteta}{ᾗ\restarttextLGR}
+\DeclareTextCompositeCommand{\textpsiliiota}{L8U}{\textEta}{ᾘ\restarttextLGR}
+\DeclareTextCompositeCommand{\textdasiaiota}{L8U}{\textEta}{ᾙ\restarttextLGR}
+\DeclareTextCompositeCommand{\textpsilivariaiota}{L8U}{\textEta}{ᾚ\restarttextLGR}
+\DeclareTextCompositeCommand{\textdasiavariaiota}{L8U}{\textEta}{ᾛ\restarttextLGR}
+\DeclareTextCompositeCommand{\textpsilioxiaiota}{L8U}{\textEta}{ᾜ\restarttextLGR}
+\DeclareTextCompositeCommand{\textdasiaoxiaiota}{L8U}{\textEta}{ᾝ\restarttextLGR}
+\DeclareTextCompositeCommand{\textpsiliperispomeniiota}{L8U}{\textEta}{ᾞ\restarttextLGR}
+\DeclareTextCompositeCommand{\textdasiaperispomeniiota}{L8U}{\textEta}{ᾟ\restarttextLGR}
+\DeclareTextCompositeCommand{\textpsiliiota}{L8U}{\textomega}{ᾠ\restarttextLGR}
+\DeclareTextCompositeCommand{\textdasiaiota}{L8U}{\textomega}{ᾡ\restarttextLGR}
+\DeclareTextCompositeCommand{\textpsilivariaiota}{L8U}{\textomega}{ᾢ\restarttextLGR}
+\DeclareTextCompositeCommand{\textdasiavariaiota}{L8U}{\textomega}{ᾣ\restarttextLGR}
+\DeclareTextCompositeCommand{\textpsilioxiaiota}{L8U}{\textomega}{ᾤ\restarttextLGR}
+\DeclareTextCompositeCommand{\textdasiaoxiaiota}{L8U}{\textomega}{ᾥ\restarttextLGR}
+\DeclareTextCompositeCommand{\textpsiliperispomeniiota}{L8U}{\textomega}{ᾦ\restarttextLGR}
+\DeclareTextCompositeCommand{\textdasiaperispomeniiota}{L8U}{\textomega}{ᾧ\restarttextLGR}
+\DeclareTextCompositeCommand{\textpsiliiota}{L8U}{\textOmega}{ᾨ\restarttextLGR}
+\DeclareTextCompositeCommand{\textdasiaiota}{L8U}{\textOmega}{ᾩ\restarttextLGR}
+\DeclareTextCompositeCommand{\textpsilivariaiota}{L8U}{\textOmega}{ᾪ\restarttextLGR}
+\DeclareTextCompositeCommand{\textdasiavariaiota}{L8U}{\textOmega}{ᾫ\restarttextLGR}
+\DeclareTextCompositeCommand{\textpsilioxiaiota}{L8U}{\textOmega}{ᾬ\restarttextLGR}
+\DeclareTextCompositeCommand{\textdasiaoxiaiota}{L8U}{\textOmega}{ᾭ\restarttextLGR}
+\DeclareTextCompositeCommand{\textpsiliperispomeniiota}{L8U}{\textOmega}{ᾮ\restarttextLGR}
+\DeclareTextCompositeCommand{\textdasiaperispomeniiota}{L8U}{\textOmega}{ᾯ\restarttextLGR}
+% Ux1FB0
+\DeclareTextCompositeCommand{\u}{L8U}{\textalpha}{ᾰ\restarttextLGR}
+\DeclareTextCompositeCommand{\=}{L8U}{\textalpha}{ᾱ\restarttextLGR}
+\DeclareTextCompositeCommand{\textvariaiota}{L8U}{\textalpha}{ᾲ\restarttextLGR}
+\DeclareTextCompositeCommand{\textsubiota}{L8U}{\textalpha}{ᾳ\restarttextLGR}
+\DeclareTextCompositeCommand{\textoxiaiota}{L8U}{\textalpha}{ᾴ\restarttextLGR}
+%
+\DeclareTextCompositeCommand{\textperispomeni}{L8U}{\textalpha}{ᾶ\restarttextLGR}
+\DeclareTextCompositeCommand{\textperispomeniiota}{L8U}{\textalpha}{ᾷ\restarttextLGR}
+\DeclareTextCompositeCommand{\u}{L8U}{\textAlpha}{Ᾰ\restarttextLGR}
+\DeclareTextCompositeCommand{\=}{L8U}{\textAlpha}{Ᾱ\restarttextLGR}
+\DeclareTextCompositeCommand{\textvaria}{L8U}{\textAlpha}{Ὰ\restarttextLGR}
+\DeclareTextCompositeCommand{\textoxia}{L8U}{\textAlpha}{Ά\restarttextLGR}
+\DeclareTextCompositeCommand{\textsubiota}{L8U}{\textAlpha}{ᾼ\restarttextLGR}
+\DeclareTextCompositeCommand{\textkoronis}{L8U}{\empty}{᾽\restarttextLGR}
+\DeclareTextCompositeCommand{\textkoronis}{L8U}{\textcompwordmark}{᾽\restarttextLGR}
+\DeclareTextCompositeCommand{\textsubiota}{L8U}{\empty}{ι\restarttextLGR}
+\DeclareTextCompositeCommand{\textsubiota}{L8U}{\textcompwordmark}{ι\restarttextLGR}
+\DeclareTextCompositeCommand{\textpsili}{L8U}{\empty}{᾿\restarttextLGR}
+\DeclareTextCompositeCommand{\textpsili}{L8U}{\textcompwordmark}{᾿\restarttextLGR}
+\DeclareTextCompositeCommand{\textperispomeni}{L8U}{\empty}{῀\restarttextLGR}
+\DeclareTextCompositeCommand{\textperispomeni}{L8U}{\textcompwordmark}{῀\restarttextLGR}
+\DeclareTextCompositeCommand{\textdialytikaperispomeni}{L8U}{\empty}{῁\restarttextLGR}
+\DeclareTextCompositeCommand{\textdialytikaperispomeni}{L8U}{\textcompwordmark}{῁\restarttextLGR}
+\DeclareTextCompositeCommand{\textvariaiota}{L8U}{\texteta}{ῂ\restarttextLGR}
+\DeclareTextCompositeCommand{\textsubiota}{L8U}{\texteta}{ῃ\restarttextLGR}
+\DeclareTextCompositeCommand{\textoxiaiota}{L8U}{\texteta}{ῄ\restarttextLGR}
+%
+\DeclareTextCompositeCommand{\textperispomeni}{L8U}{\texteta}{ῆ\restarttextLGR}
+\DeclareTextCompositeCommand{\textperispomeniiota}{L8U}{\texteta}{ῇ\restarttextLGR}
+\DeclareTextCompositeCommand{\textvaria}{L8U}{\textEpsilon}{Ὲ\restarttextLGR}
+\DeclareTextCompositeCommand{\textoxia}{L8U}{\textEpsilon}{Έ\restarttextLGR}
+\DeclareTextCompositeCommand{\textvaria}{L8U}{\textEta}{Ὴ\restarttextLGR}
+\DeclareTextCompositeCommand{\textoxia}{L8U}{\textEta}{Ή\restarttextLGR}
+\DeclareTextCompositeCommand{\textsubiota}{L8U}{\textEta}{ῌ\restarttextLGR}
+\DeclareTextCompositeCommand{\textdasiavaria}{L8U}{\empty}{῍\restarttextLGR}
+\DeclareTextCompositeCommand{\textdasiavaria}{L8U}{\textcompwordmark}{῍\restarttextLGR}
+\DeclareTextCompositeCommand{\textdasiaoxia}{L8U}{\empty}{῎\restarttextLGR}
+\DeclareTextCompositeCommand{\textdasiaoxia}{L8U}{\textcompwordmark}{῎\restarttextLGR}
+\DeclareTextCompositeCommand{\textdasiaperispomeni}{L8U}{\empty}{῏\restarttextLGR}
+\DeclareTextCompositeCommand{\textdasiaperispomeni}{L8U}{\textcompwordmark}{῏\restarttextLGR}
+\DeclareTextCompositeCommand{\u}{L8U}{\textiota}{ῐ\restarttextLGR}
+\DeclareTextCompositeCommand{\=}{L8U}{\textiota}{ῑ\restarttextLGR}
+\DeclareTextCompositeCommand{\textdialytikavaria}{L8U}{\textiota}{ῒ\restarttextLGR}
+\DeclareTextCompositeCommand{\textdialytikaoxia}{L8U}{\textiota}{ΐ\restarttextLGR}
+%
+\DeclareTextCompositeCommand{\textperispomeni}{L8U}{\textiota}{ῖ\restarttextLGR}
+\DeclareTextCompositeCommand{\textdialytikaperispomeni}{L8U}{\textiota}{ῗ\restarttextLGR}
+\DeclareTextCompositeCommand{\u}{L8U}{\textIota}{Ῐ\restarttextLGR}
+\DeclareTextCompositeCommand{\=}{L8U}{\textIota}{Ῑ\restarttextLGR}
+\DeclareTextCompositeCommand{\textvaria}{L8U}{\textIota}{Ὶ\restarttextLGR}
+\DeclareTextCompositeCommand{\textoxia}{L8U}{\textIota}{Ί\restarttextLGR}
+%
+\DeclareTextCompositeCommand{\textdasiavaria}{L8U}{\empty}{῝\restarttextLGR}
+\DeclareTextCompositeCommand{\textdasiavaria}{L8U}{\textcompwordmark}{῝\restarttextLGR}
+\DeclareTextCompositeCommand{\textdasiaoxia}{L8U}{\empty}{῞\restarttextLGR}
+\DeclareTextCompositeCommand{\textdasiaoxia}{L8U}{\textcompwordmark}{῞\restarttextLGR}
+\DeclareTextCompositeCommand{\textdasiaoxia}{L8U}{\empty}{῞\restarttextLGR}
+\DeclareTextCompositeCommand{\textdasiaperispomeni}{L8U}{\textcompwordmark}{῟\restarttextLGR}
+\DeclareTextCompositeCommand{\u}{L8U}{\textupsilon}{ῠ\restarttextLGR}
+\DeclareTextCompositeCommand{\=}{L8U}{\textupsilon}{ῡ\restarttextLGR}
+\DeclareTextCompositeCommand{\textdialytikavaria}{L8U}{\textupsilon}{ῢ\restarttextLGR}
+\DeclareTextCompositeCommand{\textdialytikaoxia}{L8U}{\textupsilon}{ΰ\restarttextLGR}
+\DeclareTextCompositeCommand{\textpsili}{L8U}{\textrho}{ῤ\restarttextLGR}
+\DeclareTextCompositeCommand{\textdasia}{L8U}{\textrho}{ῥ\restarttextLGR}
+\DeclareTextCompositeCommand{\textperispomeni}{L8U}{\textupsilon}{ῦ\restarttextLGR}
+\DeclareTextCompositeCommand{\textdialytikaperispomeni}{L8U}{\textupsilon}{ῧ\restarttextLGR}
+\DeclareTextCompositeCommand{\u}{L8U}{\textUpsilon}{Ῠ\restarttextLGR}
+\DeclareTextCompositeCommand{\=}{L8U}{\textUpsilon}{Ῡ\restarttextLGR}
+\DeclareTextCompositeCommand{\textvaria}{L8U}{\textUpsilon}{Ὺ\restarttextLGR}
+\DeclareTextCompositeCommand{\textoxia}{L8U}{\textUpsilon}{Ύ\restarttextLGR}
+\DeclareTextCompositeCommand{\textdasia}{L8U}{\textRho}{Ῥ\restarttextLGR}
+\DeclareTextCompositeCommand{\textdialytikavaria}{L8U}{\empty}{῭\restarttextLGR}
+\DeclareTextCompositeCommand{\textdialytikavaria}{L8U}{\textcompwordmark}{῭\restarttextLGR}
+\DeclareTextCompositeCommand{\textdialytikaoxia}{L8U}{\empty}{΅\restarttextLGR}
+\DeclareTextCompositeCommand{\textdialytikaoxia}{L8U}{\textcompwordmark}{΅\restarttextLGR}
+\DeclareTextCompositeCommand{\textvaria}{L8U}{\empty}{`\restarttextLGR}
+\DeclareTextCompositeCommand{\textvaria}{L8U}{\textcompwordmark}{`\restarttextLGR}
+%
+\DeclareTextCompositeCommand{\textvariaiota}{L8U}{\textomega}{ῲ\restarttextLGR}
+\DeclareTextCompositeCommand{\textsubiota}{L8U}{\textomega}{ῳ\restarttextLGR}
+\DeclareTextCompositeCommand{\textoxiaiota}{L8U}{\textomega}{ῴ\restarttextLGR}
+%
+\DeclareTextCompositeCommand{\textperispomeni}{L8U}{\textomega}{ῶ\restarttextLGR}
+\DeclareTextCompositeCommand{\textperispomeniiota}{L8U}{\textomega}{ῷ\restarttextLGR}
+\DeclareTextCompositeCommand{\textvaria}{L8U}{\textOmicron}{Ὸ\restarttextLGR}
+\DeclareTextCompositeCommand{\textoxia}{L8U}{\textOmicron}{Ό\restarttextLGR}
+\DeclareTextCompositeCommand{\textvaria}{L8U}{\textOmega}{Ὼ\restarttextLGR}
+\DeclareTextCompositeCommand{\textoxia}{L8U}{\textOmega}{Ώ\restarttextLGR}
+\DeclareTextCompositeCommand{\textsubiota}{L8U}{\textOmega}{ῼ\restarttextLGR}
+\DeclareTextCompositeCommand{\textoxia}{L8U}{\empty}{´\restarttextLGR}
+\DeclareTextCompositeCommand{\textoxia}{L8U}{\textcompwordmark}{´\restarttextLGR}
+\DeclareTextCompositeCommand{\textdasia}{L8U}{\empty}{῾\restarttextLGR}
+\DeclareTextCompositeCommand{\textdasia}{L8U}{\textcompwordmark}{῾\restarttextLGR}
+
+%
+% Attic numbers Ux010140 block
+%
+\DeclareTextCommand{\textpentedeka}{L8U}{𐅄}% Ux010144 attic 50
+\DeclareTextCommand{\textpentehekaton}{L8U}{𐅅}% Ux010145 attic 500
+\DeclareTextCommand{\textpenteqilioi}{L8U}{𐅆}% Ux010146 attic 5000
+\DeclareTextCommand{\textpentemuria}{L8U}{𐅇}% Ux010147 attic 50000
+%\DeclareTextCommand{\textpentedeka}{L8U}{𐅊}% Ux01014A attic 50 talents
+%\DeclareTextCommand{\textpentehekaton}{L8U}{𐅌}% Ux01014C attic 500 talents
+
+
+
+\ifgrkLGRxmp\else\expandafter\endinput\fi
+
+%\InputIfFileExists{greek.ldf}{%
+% \let\BabelModifiers\relax
+%}{}
+
+\DeclareTextCommand{\textgreekLGRstring}{L8U}[1]{\textgreekLGR@ii#1\@empty\@empty}
+\def\textgreekLGR@i#1{\textgreekLGR@ii#1}%\@empty}
+\def\textgreekLGR@ii#1#2\@empty{% \textLGRenc{#1}%
+ \ifx\@empty#2\@empty %\else\expandafter\textgreekLGR@i\fi#2\@empty}
+ \expandafter\@firstoftwo\else\expandafter\@secondoftwo\fi
+ {\textLGRenc{#1}\@empty}{\textLGRenc{#1}\textgreekLGR@i#2\@empty}}
+
+\DeclareTextCommand{\textLGRenc}{L8U}[1]{#1}
+\DeclareTextCommand{\textLGR}{L8U}[1]{\textgreekLGRstring{#1}}
+
+
+% use these bindings below, for readability
+\global\let\grk@en\liixu@checkemptyornext
+\global\let\grk@nc\liixu@checknextchar
+
+
+
+\DeclareTextCommand{\textsubarch}{L8U}[1]{#1̯}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{\textsubarch}{\liixu@textreorder\textsubarch}
+% this will not convert Latin characters into Greek ones. !!!!
+
+%\DeclareTextCommand{\accdialytika}{L8U}[1]{#1̈́}
+%\DeclareTextCommand{\acctonos}{L8U}[1]{#1́}
+%\DeclareTextCommand{\accdasia}{L8U}[1]{#1͑}% Ux0351
+%\DeclareTextCommand{\accpsili}{L8U}[1]{#1͗}% Ux0357
+%%\DeclareTextCommand{\accdasia}{L8U}[1]{#1҅}% Ux0485
+%%\DeclareTextCommand{\accpsili}{L8U}[1]{#1҆}% Ux0486
+%\DeclareTextCommand{\accvaria}{L8U}[1]{#1̀}
+%\DeclareTextCommand{\accperispomeni}{L8U}[1]{#1͂}
+%\DeclareTextCommand{\prosgegrammeni}{L8U}[1]{#1ͅ}
+%\DeclareTextCommand{\ypogegrammeni}{L8U}[1]{#1ͅ}
+
+\DeclareTextCompositeCommand{\textdialytika}{L8U}{\textgreekLGR@i}{\textdialytika}
+\DeclareTextCompositeCommand{\textoxia}{L8U}{\textgreekLGR@i}{\textoxia}
+\DeclareTextCompositeCommand{\textvaria}{L8U}{\textgreekLGR@i}{\textvaria}
+\DeclareTextCompositeCommand{\textperispomeni}{L8U}{\textgreekLGR@i}{\textperispomeni}
+\DeclareTextCompositeCommand{\textdasia}{L8U}{\textgreekLGR@i}{\textdasia}
+\DeclareTextCompositeCommand{\textpsili}{L8U}{\textgreekLGR@i}{\textpsili}
+\DeclareTextCompositeCommand{\textsubiota}{L8U}{\textgreekLGR@i}{\textsubiota}
+
+
+
+%% Are these needed, as the bare characters suffice???
+%%
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{\"}{\accdialytika}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{\'}{\acctonos}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{\`}{\accvaria}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{\~}{\accperispomeni}
+
+\DeclareTextCompositeCommand{\textdialytika}{L8U}{\'}{\accdialytikatonos}
+\DeclareTextCompositeCommand{\textdialytika}{L8U}{'}{\accdialytikatonos}
+\DeclareTextCompositeCommand{\textdialytika}{L8U}{\`}{\accdialytikavaria}
+\DeclareTextCompositeCommand{\textdialytika}{L8U}{`}{\accdialytikavaria}
+\DeclareTextCompositeCommand{\textdialytika}{L8U}{\~}{\accdialytikaperispomeni}
+\DeclareTextCompositeCommand{\textdialytika}{L8U}{~}{\accdialytikaperispomeni}
+
+\DeclareTextCompositeCommand{\textdasia}{L8U}{\'}{\accdasiaoxia}
+\DeclareTextCompositeCommand{\textdasia}{L8U}{'}{\accdasiaoxia}
+\DeclareTextCompositeCommand{\textdasia}{L8U}{\`}{\accdasiavaria}
+\DeclareTextCompositeCommand{\textdasia}{L8U}{`}{\accdasiavaria}
+\DeclareTextCompositeCommand{\textdasia}{L8U}{\~}{\accdasiaperispomeni}
+\DeclareTextCompositeCommand{\textdasia}{L8U}{~}{\accdasiaperispomeni}
+
+\DeclareTextCompositeCommand{\textpsili}{L8U}{\'}{\accpsilioxia}
+\DeclareTextCompositeCommand{\textpsili}{L8U}{'}{\accpsilioxia}
+\DeclareTextCompositeCommand{\textpsili}{L8U}{\`}{\accpsilivaria}
+\DeclareTextCompositeCommand{\textpsili}{L8U}{`}{\accpsilivaria}
+\DeclareTextCompositeCommand{\textpsili}{L8U}{\~}{\accpsiliperispomeni}
+\DeclareTextCompositeCommand{\textpsili}{L8U}{~}{\accpsiliperispomeni}
+
+\DeclareTextCompositeCommand{\textperispomeni}{L8U}{>}{\accpsiliperispomeni}
+\DeclareTextCompositeCommand{\textperispomeni}{L8U}{<}{\accdasiaperispomeni}
+
+
+
+%\def\liixu@dohardchecksubiota#1#2\ifx#3\else\expandafter#4\fi#5{%
+% \ifx|#5\@empty %% #2\expandafter#4\else#1\expandafter#4\expandafter#5\fi}
+% \expandafter\@firstoftwo\else\expandafter\@secondoftwo\fi
+% {#2#4}{#1#4#5}}
+
+\def\liixu@dohardchecksubiota#1#2\textgreekLGR@i#3{%
+ \ifx|#3\@empty\expandafter\@firstoftwo
+ \else\expandafter\@secondoftwo\fi
+ {#2\restarttextLGR}{#1\restarttextLGR#3}}%
+
+\def\liixu@dosimplechecksubiota#1#2#3{%
+ \ifx|#3\@empty\expandafter\@firstoftwo
+ \else\expandafter\@secondoftwo\fi
+ {#2\restarttextLGR}{#1\restarttextLGR#3}}%
+
+\let\liixu@checksubiota\liixu@dosimplechecksubiota
+%\let\liixu@lookforsubiota\liixu@dohardchecksubiota
+\let\restarttextLGR\textgreekLGR@ii
+
+\def\liixu@lookforsubiota#1#2{%
+ \grk@en{}{#1}{\liixu@dohardchecksubiota{#1}{#2}}}
+
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{!}{!}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{;}{.}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{?}{;}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{`}{\grk@en{`}{`}{\grk@nc{`}{`}{`}}}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{'}{\grk@en{'}{'}{\grk@nc{'}{'}{\textoxia}}}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{(}{\grk@en{(}{(}{\grk@nc{(}{\textguillemotleft}{(}}}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{)}{\grk@en{)}{)}{\grk@nc{)}{\textguillemotright}{)}}}
+
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{"}{\textdialytika}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{##}{\textdialytikaoxia}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{$}{\textdialytikavaria}
+%\DeclareTextCompositeCommand{\textLGRenc}{L8U}{\%}{}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{&}{·}% ano teleia
+%\DeclareTextCompositeCommand{\textLGRenc}{L8U}{'}{\textoxia}% gobble \textgreekLGR@i
+%\DeclareTextCompositeCommand{\textLGRenc}{L8U}{(}{}
+%\DeclareTextCompositeCommand{\textLGRenc}{L8U}{)}{}
+%\DeclareTextCompositeCommand{\textLGRenc}{L8U}{*}{}
+%\DeclareTextCompositeCommand{\textLGRenc}{L8U}{+}{}
+%\DeclareTextCompositeCommand{\textLGRenc}{L8U}{,}{}
+%\DeclareTextCompositeCommand{\textLGRenc}{L8U}{-}{}
+%\DeclareTextCompositeCommand{\textLGRenc}{L8U}{.}{}
+%\DeclareTextCompositeCommand{\textLGRenc}{L8U}{/}{}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{<}{\textdasia}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{>}{\textpsili}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{;}{;}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{@}{\textpsiliperispomeni}% dbl accent
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{A}{\liixu@lookforsubiota{Α}{ᾼ}}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{B}{Β}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{C}{\textdasiavaria}% dbl accent
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{D}{Δ}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{E}{Ε}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{F}{Φ}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{G}{Γ}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{H}{\liixu@lookforsubiota{Η}{ῌ}}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{I}{Ι}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{J}{Θ}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{K}{Κ}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{L}{Λ}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{M}{Μ}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{N}{Ν}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{O}{Ο}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{P}{Π}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{Q}{Χ}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{R}{Ρ}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{S}{Σ}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{T}{Τ}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{U}{Υ}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{V}{\textdasiaoxia}% dbl accent
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{W}{\liixu@lookforsubiota{Ω}{ῼ}}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{X}{Ξ}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{Y}{Ψ}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{Z}{Ζ}
+%
+%\DeclareTextCompositeCommand{\textLGRenc}{L8U}{\\}{\textdasiaperispomeni}% dbl accent
+%
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{^}{\textdasiaoxia}% dbl accent
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{_}{\textdasiavaria}% dbl accent
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{`}{\textvaria}% grave accent
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{a}{\liixu@lookforsubiota{α}{ᾳ}}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{b}{β}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{c}{ς}% final sigma
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{d}{δ}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{e}{ε}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{f}{φ}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{g}{γ}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{h}{\liixu@lookforsubiota{η}{ῃ}}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{i}{ι}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{j}{ϑ}% or θ
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{k}{ϰ}% or κ
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{l}{λ}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{m}{μ}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{n}{ν}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{o}{ο}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{p}{π}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{q}{χ}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{r}{ϱ}% or ρ
+%\DeclareTextCompositeCommand{\textLGRenc}{L8U}{s}{σ}
+%\DeclareTextCompositeCommand{\textLGRenc}{L8U}{s}{\text@checkfinalsigma}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{t}{τ}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{u}{υ}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{v}{}% non-final marker
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{w}{\liixu@lookforsubiota{ω}{ῳ}}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{x}{ξ}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{y}{ψ}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{z}{ζ}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{\{}{\guillemotleft}%
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{|}{\textsubiotaaccent}% place the combining char
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{\}}{\guillemotright}%
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{~}{\textperispomeni}%
+
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{\textAlpha}{\liixu@lookforsubiota{Α}{ᾼ}}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{\textBeta}{Β}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{\textGamma}{Γ}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{\textDelta}{Δ}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{\textEpsilon}{Ε}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{\textZeta}{Ζ}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{\textEta}{\liixu@lookforsubiota{Η}{ῌ}}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{\textTheta}{Θ}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{\textIota}{Ι}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{\textKappa}{Κ}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{\textLambda}{Λ}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{\textMu}{Μ}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{\textNu}{Ν}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{\textXi}{Ξ}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{\textOmicron}{Ο}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{\textPi}{Π}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{\textRho}{Ρ}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{\textSigma}{Σ}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{\textTau}{Τ}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{\textUpsilon}{Υ}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{\textPhi}{Φ}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{\textChi}{Χ}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{\textPsi}{Ψ}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{\textOmega}{\liixu@lookforsubiota{Ω}{ῼ}}
+
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{\textalpha}{\liixu@lookforsubiota{α}{ᾳ}}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{\textbeta}{β}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{\textgamma}{γ}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{\textdelta}{δ}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{\textepsilon}{ε}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{\textzeta}{ζ}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{\texteta}{\liixu@lookforsubiota{η}{ῃ}}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{\texttheta}{θ}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{\textiota}{ι}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{\textkappa}{κ}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{\textlambda}{λ}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{\textmugreek}{μ}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{\textmu}{μ}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{\textnu}{ν}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{\textxi}{ξ}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{\textomicron}{ο}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{\textpi}{π}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{\textrho}{ρ}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{\textgrsigma}{ς}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{\textvarsigma}{ς}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{\textsigma}{\text@checkfinalsigma}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{\texttau}{τ}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{\textupsilon}{υ}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{\textphi}{φ}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{\textchi}{χ}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{\textpsi}{ψ}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{\textomega}{\liixu@lookforsubiota{ω}{ῳ}}
+
+
+\def\liixu@recover@empty#1{#1\@empty}
+\DeclareTextCommand{\text@checkfinalsigma}{L8U}[1]{\textsigma\textgreekLGR@i#1}
+\DeclareTextCompositeCommand{\text@checkfinalsigma}{L8U}{v}{\textsigma}
+\DeclareTextCompositeCommand{\text@checkfinalsigma}{L8U}{\liixu@noboundary}{\textsigma}
+\obeyspaces
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{\sep}{\sep }%
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{ }{\space}%
+\DeclareTextCompositeCommand{\text@checkfinalsigma}{L8U}{ }{\textvarsigma\space}%
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{s}{\grk@en{s}{ς}{\grk@nc{ }{ς}{σ}}}
+\catcode`\ 10
+\DeclareTextCompositeCommand{\text@checkfinalsigma}{L8U}{\ }{\textvarsigma\space}
+\DeclareTextCompositeCommand{\text@checkfinalsigma}{L8U}{\@empty}{\textvarsigma\@empty}
+\DeclareTextCompositeCommand{\text@checkfinalsigma}{L8U}{\textgreekLGR@i}{\textvarsigma\textgreekLGR@i}
+\DeclareTextCompositeCommand{\text@checkfinalsigma}{L8U}{;}{\textvarsigma.}
+\DeclareTextCompositeCommand{\text@checkfinalsigma}{L8U}{?}{\textvarsigma;}
+
+\let\liixu@firstoftwo\@firstoftwo % only within \textLGR else \@empty
+
+%\DeclareTextCompositeCommand{\textdasia}{L8U}{`}{\textdasiavaria}
+%\DeclareTextCompositeCommand{\textdasia}{L8U}{\`}{\textdasiavaria}
+%\DeclareTextCompositeCommand{\textdasia}{L8U}{'}{\textdasiaoxia}
+%\DeclareTextCompositeCommand{\textdasia}{L8U}{\'}{\textdasiaoxia}
+%\DeclareTextCompositeCommand{\textdasia}{L8U}{~}{\textdasiaperispomeni}
+%\DeclareTextCompositeCommand{\textdasia}{L8U}{\~}{\textdasiaperispomeni}
+
+
+\DeclareTextCompositeCommand{\textpsili}{L8U}{a}{\liixu@checksubiota{ἀ}{ᾀ}}
+\DeclareTextCompositeCommand{\textdasia}{L8U}{a}{\liixu@checksubiota{ἁ}{ᾁ}}
+\DeclareTextCompositeCommand{\textpsilivaria}{L8U}{a}{\liixu@checksubiota{ἂ}{ᾂ}}
+\DeclareTextCompositeCommand{\textdasiavaria}{L8U}{a}{\liixu@checksubiota{ἃ}{ᾃ}}
+\DeclareTextCompositeCommand{\textpsilioxia}{L8U}{a}{\liixu@checksubiota{ἄ}{ᾄ}}
+\DeclareTextCompositeCommand{\textdasiaoxia}{L8U}{a}{\liixu@checksubiota{ἅ}{ᾅ}}
+\DeclareTextCompositeCommand{\textpsiliperispomeni}{L8U}{a}{\liixu@checksubiota{ἆ}{ᾆ}}
+\DeclareTextCompositeCommand{\textdasiaperispomeni}{L8U}{a}{\liixu@checksubiota{ἇ}{ᾇ}}
+\DeclareTextCompositeCommand{\textpsili}{L8U}{A}{\liixu@checksubiota{Ἀ}{ᾈ}}
+\DeclareTextCompositeCommand{\textdasia}{L8U}{A}{\liixu@checksubiota{Ἁ}{ᾉ}}
+\DeclareTextCompositeCommand{\textpsilivaria}{L8U}{A}{\liixu@checksubiota{Ἂ}{ᾊ}}
+\DeclareTextCompositeCommand{\textdasiavaria}{L8U}{A}{\liixu@checksubiota{Ἃ}{ᾋ}}
+\DeclareTextCompositeCommand{\textpsilioxia}{L8U}{A}{\liixu@checksubiota{Ἄ}{ᾌ}}
+\DeclareTextCompositeCommand{\textdasiaoxia}{L8U}{A}{\liixu@checksubiota{Ἅ}{ᾍ}}
+\DeclareTextCompositeCommand{\textpsiliperispomeni}{L8U}{A}{\liixu@checksubiota{Ἆ}{ᾎ}}
+\DeclareTextCompositeCommand{\textdasiaperispomeni}{L8U}{A}{\liixu@checksubiota{Ἇ}{ᾏ}}
+\DeclareTextCompositeCommand{\textpsili}{L8U}{e}{ἐ\restarttextLGR}
+\DeclareTextCompositeCommand{\textdasia}{L8U}{e}{ἑ\restarttextLGR}
+\DeclareTextCompositeCommand{\textpsilivaria}{L8U}{e}{ἒ\restarttextLGR}
+\DeclareTextCompositeCommand{\textdasiavaria}{L8U}{e}{ἓ\restarttextLGR}
+\DeclareTextCompositeCommand{\textpsilioxia}{L8U}{e}{ἔ\restarttextLGR}
+\DeclareTextCompositeCommand{\textdasiaoxia}{L8U}{e}{ἕ\restarttextLGR}
+%\DeclareTextCompositeCommand{\textpsiliperispomeni}{L8U}{e}{}% not used
+%\DeclareTextCompositeCommand{\textdasiaperispomeni}{L8U}{e}{}% not used
+\DeclareTextCompositeCommand{\textpsili}{L8U}{E}{Ἐ\restarttextLGR}
+\DeclareTextCompositeCommand{\textdasia}{L8U}{E}{Ἑ\restarttextLGR}
+\DeclareTextCompositeCommand{\textpsilivaria}{L8U}{E}{Ἒ\restarttextLGR}
+\DeclareTextCompositeCommand{\textdasiavaria}{L8U}{E}{Ἓ\restarttextLGR}
+\DeclareTextCompositeCommand{\textpsilioxia}{L8U}{E}{Ἔ\restarttextLGR}
+\DeclareTextCompositeCommand{\textdasiaoxia}{L8U}{E}{Ἕ\restarttextLGR}
+%\DeclareTextCompositeCommand{\textpsiliperispomeni}{L8U}{E}{}% not used
+%\DeclareTextCompositeCommand{\textdasiaperispomeni}{L8U}{E}{}% not used
+\DeclareTextCompositeCommand{\textpsili}{L8U}{h}{\liixu@checksubiota{ἠ}{ᾐ}}
+\DeclareTextCompositeCommand{\textdasia}{L8U}{h}{\liixu@checksubiota{ἡ}{ᾑ}}
+\DeclareTextCompositeCommand{\textpsilivaria}{L8U}{h}{\liixu@checksubiota{ἢ}{ᾒ}}
+\DeclareTextCompositeCommand{\textdasiavaria}{L8U}{h}{\liixu@checksubiota{ἣ}{ᾓ}}
+\DeclareTextCompositeCommand{\textpsilioxia}{L8U}{h}{\liixu@checksubiota{ἤ}{ᾔ}}
+\DeclareTextCompositeCommand{\textdasiaoxia}{L8U}{h}{\liixu@checksubiota{ἥ}{ᾕ}}
+\DeclareTextCompositeCommand{\textpsiliperispomeni}{L8U}{h}{\liixu@checksubiota{ἦ}{ᾖ}}
+\DeclareTextCompositeCommand{\textdasiaperispomeni}{L8U}{h}{\liixu@checksubiota{ἧ}{ᾗ}}
+\DeclareTextCompositeCommand{\textpsili}{L8U}{H}{\liixu@checksubiota{Ἠ}{ᾘ}}
+\DeclareTextCompositeCommand{\textdasia}{L8U}{H}{\liixu@checksubiota{Ἡ}{ᾙ}}
+\DeclareTextCompositeCommand{\textpsilivaria}{L8U}{H}{\liixu@checksubiota{Ἢ}{ᾚ}}
+\DeclareTextCompositeCommand{\textdasiavaria}{L8U}{H}{\liixu@checksubiota{Ἣ}{ᾛ}}
+\DeclareTextCompositeCommand{\textpsilioxia}{L8U}{H}{\liixu@checksubiota{Ἤ}{ᾜ}}
+\DeclareTextCompositeCommand{\textdasiaoxia}{L8U}{H}{\liixu@checksubiota{Ἥ}{ᾝ}}
+\DeclareTextCompositeCommand{\textpsiliperispomeni}{L8U}{H}{\liixu@checksubiota{Ἦ}{ᾞ}}
+\DeclareTextCompositeCommand{\textdasiaperispomeni}{L8U}{H}{\liixu@checksubiota{Ἧ}{ᾟ}}
+\DeclareTextCompositeCommand{\textpsili}{L8U}{i}{ἰ\restarttextLGR}
+\DeclareTextCompositeCommand{\textdasia}{L8U}{i}{ἱ\restarttextLGR}
+\DeclareTextCompositeCommand{\textpsilivaria}{L8U}{i}{ἲ\restarttextLGR}
+\DeclareTextCompositeCommand{\textdasiavaria}{L8U}{i}{ἳ\restarttextLGR}
+\DeclareTextCompositeCommand{\textpsilioxia}{L8U}{i}{ἴ\restarttextLGR}
+\DeclareTextCompositeCommand{\textdasiaoxia}{L8U}{i}{ἵ\restarttextLGR}
+\DeclareTextCompositeCommand{\textpsiliperispomeni}{L8U}{i}{ἶ\restarttextLGR}
+\DeclareTextCompositeCommand{\textdasiaperispomeni}{L8U}{i}{ἷ\restarttextLGR}
+\DeclareTextCompositeCommand{\textpsili}{L8U}{I}{Ἰ\restarttextLGR}
+\DeclareTextCompositeCommand{\textdasia}{L8U}{I}{Ἱ\restarttextLGR}
+\DeclareTextCompositeCommand{\textpsilivaria}{L8U}{I}{Ἲ\restarttextLGR}
+\DeclareTextCompositeCommand{\textdasiavaria}{L8U}{I}{Ἳ\restarttextLGR}
+\DeclareTextCompositeCommand{\textpsilioxia}{L8U}{I}{Ἴ\restarttextLGR}
+\DeclareTextCompositeCommand{\textdasiaoxia}{L8U}{I}{Ἵ\restarttextLGR}
+\DeclareTextCompositeCommand{\textpsiliperispomeni}{L8U}{I}{Ἶ\restarttextLGR}
+\DeclareTextCompositeCommand{\textdasiaperispomeni}{L8U}{I}{Ἷ\restarttextLGR}
+\DeclareTextCompositeCommand{\textpsili}{L8U}{o}{ὀ\restarttextLGR}
+\DeclareTextCompositeCommand{\textdasia}{L8U}{o}{ὁ\restarttextLGR}
+\DeclareTextCompositeCommand{\textpsilivaria}{L8U}{o}{ὂ\restarttextLGR}
+\DeclareTextCompositeCommand{\textdasiavaria}{L8U}{o}{ὃ\restarttextLGR}
+\DeclareTextCompositeCommand{\textpsilioxia}{L8U}{o}{ὄ\restarttextLGR}
+\DeclareTextCompositeCommand{\textdasiaoxia}{L8U}{o}{ὅ\restarttextLGR}
+%\DeclareTextCompositeCommand{\textpsiliperispomeni}{L8U}{o}{}% not used
+%\DeclareTextCompositeCommand{\textdasiaperispomeni}{L8U}{o}{}% not used
+\DeclareTextCompositeCommand{\textpsili}{L8U}{O}{Ὀ\restarttextLGR}
+\DeclareTextCompositeCommand{\textdasia}{L8U}{O}{Ὁ\restarttextLGR}
+\DeclareTextCompositeCommand{\textpsilivaria}{L8U}{O}{Ὂ\restarttextLGR}
+\DeclareTextCompositeCommand{\textdasiavaria}{L8U}{O}{Ὃ\restarttextLGR}
+\DeclareTextCompositeCommand{\textpsilioxia}{L8U}{O}{Ὄ\restarttextLGR}
+\DeclareTextCompositeCommand{\textdasiaoxia}{L8U}{O}{Ὅ\restarttextLGR}
+%\DeclareTextCompositeCommand{\textpsiliperispomeni}{L8U}{O}{}% not used
+%\DeclareTextCompositeCommand{\textdasiaperispomeni}{L8U}{O}{}% not used
+\DeclareTextCompositeCommand{\textpsili}{L8U}{u}{ὐ\restarttextLGR}
+\DeclareTextCompositeCommand{\textdasia}{L8U}{u}{ὑ\restarttextLGR}
+\DeclareTextCompositeCommand{\textpsilivaria}{L8U}{u}{ὒ\restarttextLGR}
+\DeclareTextCompositeCommand{\textdasiavaria}{L8U}{u}{ὓ\restarttextLGR}
+\DeclareTextCompositeCommand{\textpsilioxia}{L8U}{u}{ὔ\restarttextLGR}
+\DeclareTextCompositeCommand{\textdasiaoxia}{L8U}{u}{ὕ\restarttextLGR}
+\DeclareTextCompositeCommand{\textpsiliperispomeni}{L8U}{u}{ὖ\restarttextLGR}
+\DeclareTextCompositeCommand{\textdasiaperispomeni}{L8U}{u}{ὗ\restarttextLGR}
+%\DeclareTextCompositeCommand{\textpsili}{L8U}{U}{}% not used
+\DeclareTextCompositeCommand{\textdasia}{L8U}{U}{Ὑ\restarttextLGR}
+%\DeclareTextCompositeCommand{\textpsilivaria}{L8U}{U}{}% not used
+\DeclareTextCompositeCommand{\textdasiavaria}{L8U}{U}{Ὓ\restarttextLGR}
+%\DeclareTextCompositeCommand{\textpsilioxia}{L8U}{U}{}% not used
+\DeclareTextCompositeCommand{\textdasiaoxia}{L8U}{U}{Ὕ\restarttextLGR}
+%\DeclareTextCompositeCommand{\textpsiliperispomeni}{L8U}{U}{}% not used
+\DeclareTextCompositeCommand{\textdasiaperispomeni}{L8U}{U}{Ὗ\restarttextLGR}
+\DeclareTextCompositeCommand{\textpsili}{L8U}{w}{\liixu@checksubiota{ὠ}{ᾠ}}
+\DeclareTextCompositeCommand{\textdasia}{L8U}{w}{\liixu@checksubiota{ὡ}{ᾡ}}
+\DeclareTextCompositeCommand{\textpsilivaria}{L8U}{w}{\liixu@checksubiota{ὢ}{ᾢ}}
+\DeclareTextCompositeCommand{\textdasiavaria}{L8U}{w}{\liixu@checksubiota{ὣ}{ᾣ}}
+\DeclareTextCompositeCommand{\textpsilioxia}{L8U}{w}{\liixu@checksubiota{ὤ}{ᾤ}}
+\DeclareTextCompositeCommand{\textdasiaoxia}{L8U}{w}{\liixu@checksubiota{ὥ}{ᾥ}}
+\DeclareTextCompositeCommand{\textpsiliperispomeni}{L8U}{w}{\liixu@checksubiota{ὦ}{ᾦ}}
+\DeclareTextCompositeCommand{\textdasiaperispomeni}{L8U}{w}{\liixu@checksubiota{ὧ}{ᾧ}}
+\DeclareTextCompositeCommand{\textpsili}{L8U}{W}{\liixu@checksubiota{Ὠ}{ᾨ}}
+\DeclareTextCompositeCommand{\textdasia}{L8U}{W}{\liixu@checksubiota{Ὡ}{ᾩ}}
+\DeclareTextCompositeCommand{\textpsilivaria}{L8U}{W}{\liixu@checksubiota{Ὢ}{ᾪ}}
+\DeclareTextCompositeCommand{\textdasiavaria}{L8U}{W}{\liixu@checksubiota{Ὣ}{ᾫ}}
+\DeclareTextCompositeCommand{\textpsilioxia}{L8U}{W}{\liixu@checksubiota{Ὤ}{ᾬ}}
+\DeclareTextCompositeCommand{\textdasiaoxia}{L8U}{W}{\liixu@checksubiota{Ὥ}{ᾭ}}
+\DeclareTextCompositeCommand{\textpsiliperispomeni}{L8U}{W}{\liixu@checksubiota{Ὦ}{ᾮ}}
+\DeclareTextCompositeCommand{\textdasiaperispomeni}{L8U}{W}{\liixu@checksubiota{Ὧ}{ᾯ}}
+
+\DeclareTextCompositeCommand{\textvaria}{L8U}{a}{\liixu@checksubiota{ὰ}{ᾲ}}
+\DeclareTextCompositeCommand{\textoxia}{L8U}{a}{\liixu@checksubiota{ά}{ᾴ}}
+\DeclareTextCompositeCommand{\textvaria}{L8U}{e}{ὲ\restarttextLGR}
+\DeclareTextCompositeCommand{\textoxia}{L8U}{e}{έ\restarttextLGR}
+\DeclareTextCompositeCommand{\textvaria}{L8U}{h}{\liixu@checksubiota{ὴ}{ῂ}}
+\DeclareTextCompositeCommand{\textoxia}{L8U}{h}{\liixu@checksubiota{ή}{ῄ}}
+\DeclareTextCompositeCommand{\textvaria}{L8U}{i}{ὶ\restarttextLGR}
+\DeclareTextCompositeCommand{\textoxia}{L8U}{i}{ί\restarttextLGR}
+\DeclareTextCompositeCommand{\textvaria}{L8U}{o}{ὸ\restarttextLGR}
+\DeclareTextCompositeCommand{\textoxia}{L8U}{o}{ό\restarttextLGR}
+\DeclareTextCompositeCommand{\textvaria}{L8U}{u}{ὺ\restarttextLGR}
+\DeclareTextCompositeCommand{\textoxia}{L8U}{u}{ύ\restarttextLGR}
+\DeclareTextCompositeCommand{\textvaria}{L8U}{w}{\liixu@checksubiota{ὼ}{ῲ}}
+\DeclareTextCompositeCommand{\textoxia}{L8U}{w}{\liixu@checksubiota{ώ}{ῴ}}
+
+\DeclareTextCompositeCommand{\textpsiliiota}{L8U}{a}{ᾀ\restarttextLGR}
+\DeclareTextCompositeCommand{\textdasiaiota}{L8U}{a}{ᾁ\restarttextLGR}
+\DeclareTextCompositeCommand{\textpsilivariaiota}{L8U}{a}{ᾂ\restarttextLGR}
+\DeclareTextCompositeCommand{\textdasiavariaiota}{L8U}{a}{ᾃ\restarttextLGR}
+\DeclareTextCompositeCommand{\textpsilioxiaiota}{L8U}{a}{ᾄ\restarttextLGR}
+\DeclareTextCompositeCommand{\textdasiaoxiaiota}{L8U}{a}{ᾅ\restarttextLGR}
+\DeclareTextCompositeCommand{\textpsiliperispomeniiota}{L8U}{a}{ᾆ\restarttextLGR}
+\DeclareTextCompositeCommand{\textdasiaperispomeniiota}{L8U}{a}{ᾇ\restarttextLGR}
+\DeclareTextCompositeCommand{\textpsiliiota}{L8U}{A}{ᾈ\restarttextLGR}
+\DeclareTextCompositeCommand{\textdasiaiota}{L8U}{A}{ᾉ\restarttextLGR}
+\DeclareTextCompositeCommand{\textpsilivariaiota}{L8U}{A}{ᾊ\restarttextLGR}
+\DeclareTextCompositeCommand{\textdasiavariaiota}{L8U}{A}{ᾋ\restarttextLGR}
+\DeclareTextCompositeCommand{\textpsilioxiaiota}{L8U}{A}{ᾌ\restarttextLGR}
+\DeclareTextCompositeCommand{\textdasiaoxiaiota}{L8U}{A}{ᾍ\restarttextLGR}
+\DeclareTextCompositeCommand{\textpsiliperispomeniiota}{L8U}{A}{ᾎ\restarttextLGR}
+\DeclareTextCompositeCommand{\textdasiaperispomeniiota}{L8U}{A}{ᾏ\restarttextLGR}
+\DeclareTextCompositeCommand{\textpsiliiota}{L8U}{h}{ᾐ\restarttextLGR}
+\DeclareTextCompositeCommand{\textdasiaiota}{L8U}{h}{ᾑ\restarttextLGR}
+\DeclareTextCompositeCommand{\textpsilivariaiota}{L8U}{h}{ᾒ\restarttextLGR}
+\DeclareTextCompositeCommand{\textdasiavariaiota}{L8U}{h}{ᾓ\restarttextLGR}
+\DeclareTextCompositeCommand{\textpsilioxiaiota}{L8U}{h}{ᾔ\restarttextLGR}
+\DeclareTextCompositeCommand{\textdasiaoxiaiota}{L8U}{h}{ᾕ\restarttextLGR}
+\DeclareTextCompositeCommand{\textpsiliperispomeniiota}{L8U}{h}{ᾖ\restarttextLGR}
+\DeclareTextCompositeCommand{\textdasiaperispomeniiota}{L8U}{h}{ᾗ\restarttextLGR}
+\DeclareTextCompositeCommand{\textpsiliiota}{L8U}{H}{ᾘ\restarttextLGR}
+\DeclareTextCompositeCommand{\textdasiaiota}{L8U}{H}{ᾙ\restarttextLGR}
+\DeclareTextCompositeCommand{\textpsilivariaiota}{L8U}{H}{ᾚ\restarttextLGR}
+\DeclareTextCompositeCommand{\textdasiavariaiota}{L8U}{H}{ᾛ\restarttextLGR}
+\DeclareTextCompositeCommand{\textpsilioxiaiota}{L8U}{H}{ᾜ\restarttextLGR}
+\DeclareTextCompositeCommand{\textdasiaoxiaiota}{L8U}{H}{ᾝ\restarttextLGR}
+\DeclareTextCompositeCommand{\textpsiliperispomeniiota}{L8U}{H}{ᾞ\restarttextLGR}
+\DeclareTextCompositeCommand{\textdasiaperispomeniiota}{L8U}{H}{ᾟ\restarttextLGR}
+\DeclareTextCompositeCommand{\textpsiliiota}{L8U}{w}{ᾠ\restarttextLGR}
+\DeclareTextCompositeCommand{\textdasiaiota}{L8U}{w}{ᾡ\restarttextLGR}
+\DeclareTextCompositeCommand{\textpsilivariaiota}{L8U}{w}{ᾢ\restarttextLGR}
+\DeclareTextCompositeCommand{\textdasiavariaiota}{L8U}{w}{ᾣ\restarttextLGR}
+\DeclareTextCompositeCommand{\textpsilioxiaiota}{L8U}{w}{ᾤ\restarttextLGR}
+\DeclareTextCompositeCommand{\textdasiaoxiaiota}{L8U}{w}{ᾥ\restarttextLGR}
+\DeclareTextCompositeCommand{\textpsiliperispomeniiota}{L8U}{w}{ᾦ\restarttextLGR}
+\DeclareTextCompositeCommand{\textdasiaperispomeniiota}{L8U}{w}{ᾧ\restarttextLGR}
+\DeclareTextCompositeCommand{\textpsiliiota}{L8U}{W}{ᾨ\restarttextLGR}
+\DeclareTextCompositeCommand{\textdasiaiota}{L8U}{W}{ᾩ\restarttextLGR}
+\DeclareTextCompositeCommand{\textpsilivariaiota}{L8U}{W}{ᾪ\restarttextLGR}
+\DeclareTextCompositeCommand{\textdasiavariaiota}{L8U}{W}{ᾫ\restarttextLGR}
+\DeclareTextCompositeCommand{\textpsilioxiaiota}{L8U}{W}{ᾬ\restarttextLGR}
+\DeclareTextCompositeCommand{\textdasiaoxiaiota}{L8U}{W}{ᾭ\restarttextLGR}
+\DeclareTextCompositeCommand{\textpsiliperispomeniiota}{L8U}{W}{ᾮ\restarttextLGR}
+\DeclareTextCompositeCommand{\textdasiaperispomeniiota}{L8U}{W}{ᾯ\restarttextLGR}
+% Ux1FB0
+%\DeclareTextCompositeCommand{\u}{L8U}{a}{ᾰ\restarttextLGR}
+%\DeclareTextCompositeCommand{\=}{L8U}{a}{ᾱ\restarttextLGR}
+\DeclareTextCompositeCommand{\textvariaiota}{L8U}{a}{ᾲ\restarttextLGR}
+\DeclareTextCompositeCommand{\textsubiota}{L8U}{a}{ᾳ\restarttextLGR}
+\DeclareTextCompositeCommand{\textoxiaiota}{L8U}{a}{ᾴ\restarttextLGR}
+%
+\DeclareTextCompositeCommand{\textperispomeni}{L8U}{a}{ᾶ\restarttextLGR}
+\DeclareTextCompositeCommand{\textperispomeniiota}{L8U}{a}{ᾷ\restarttextLGR}
+%\DeclareTextCompositeCommand{\u}{L8U}{\textAlpha}{Ᾰ\restarttextLGR}
+%\DeclareTextCompositeCommand{\=}{L8U}{\textAlpha}{Ᾱ\restarttextLGR}
+\DeclareTextCompositeCommand{\textvaria}{L8U}{A}{Ὰ\restarttextLGR}
+\DeclareTextCompositeCommand{\textoxia}{L8U}{A}{Ά\restarttextLGR}
+\DeclareTextCompositeCommand{\textsubiota}{L8U}{A}{ᾼ\restarttextLGR}
+\DeclareTextCompositeCommand{\textvariaiota}{L8U}{h}{ῂ\restarttextLGR}
+\DeclareTextCompositeCommand{\textsubiota}{L8U}{h}{ῃ\restarttextLGR}
+\DeclareTextCompositeCommand{\textoxiaiota}{L8U}{h}{ῄ\restarttextLGR}
+\DeclareTextCompositeCommand{\textperispomeni}{L8U}{h}{ῆ\restarttextLGR}
+\DeclareTextCompositeCommand{\textperispomeniiota}{L8U}{h}{ῇ\restarttextLGR}
+\DeclareTextCompositeCommand{\textvaria}{L8U}{E}{Ὲ\restarttextLGR}
+\DeclareTextCompositeCommand{\textoxia}{L8U}{E}{Έ\restarttextLGR}
+\DeclareTextCompositeCommand{\textvaria}{L8U}{H}{Ὴ\restarttextLGR}
+\DeclareTextCompositeCommand{\textoxia}{L8U}{H}{Ή\restarttextLGR}
+\DeclareTextCompositeCommand{\textsubiota}{L8U}{H}{ῌ\restarttextLGR}
+%\DeclareTextCompositeCommand{\u}{L8U}{\textiota}{ῐ\restarttextLGR}
+%\DeclareTextCompositeCommand{\=}{L8U}{\textiota}{ῑ\restarttextLGR}
+\DeclareTextCompositeCommand{\textdialytikavaria}{L8U}{i}{ῒ\restarttextLGR}
+\DeclareTextCompositeCommand{\textdialytikaoxia}{L8U}{i}{ΐ\restarttextLGR}
+%
+\DeclareTextCompositeCommand{\textperispomeni}{L8U}{i}{ῖ\restarttextLGR}
+\DeclareTextCompositeCommand{\textdialytikaperispomeni}{L8U}{i}{ῗ\restarttextLGR}
+%\DeclareTextCompositeCommand{\u}{L8U}{\textIota}{Ῐ\restarttextLGR}
+%\DeclareTextCompositeCommand{\=}{L8U}{\textIota}{Ῑ\restarttextLGR}
+\DeclareTextCompositeCommand{\textvaria}{L8U}{I}{Ὶ\restarttextLGR}
+\DeclareTextCompositeCommand{\textoxia}{L8U}{I}{Ί\restarttextLGR}
+%
+%\DeclareTextCompositeCommand{\u}{L8U}{\textupsilon}{ῠ\restarttextLGR}
+%\DeclareTextCompositeCommand{\=}{L8U}{\textupsilon}{ῡ\restarttextLGR}
+\DeclareTextCompositeCommand{\textdialytikavaria}{L8U}{u}{ῢ\restarttextLGR}
+\DeclareTextCompositeCommand{\textdialytikaoxia}{L8U}{u}{ΰ\restarttextLGR}
+\DeclareTextCompositeCommand{\textpsili}{L8U}{r}{ῤ\restarttextLGR}
+\DeclareTextCompositeCommand{\textdasia}{L8U}{r}{ῥ\restarttextLGR}
+\DeclareTextCompositeCommand{\textperispomeni}{L8U}{u}{ῦ\restarttextLGR}
+\DeclareTextCompositeCommand{\textdialytikaperispomeni}{L8U}{u}{ῧ\restarttextLGR}
+\DeclareTextCompositeCommand{\u}{L8U}{U}{Ῠ\restarttextLGR}
+\DeclareTextCompositeCommand{\=}{L8U}{U}{Ῡ\restarttextLGR}
+\DeclareTextCompositeCommand{\textvaria}{L8U}{U}{Ὺ\restarttextLGR}
+\DeclareTextCompositeCommand{\textoxia}{L8U}{U}{Ύ\restarttextLGR}
+\DeclareTextCompositeCommand{\textdasia}{L8U}{R}{Ῥ\restarttextLGR}
+%
+\DeclareTextCompositeCommand{\textvariaiota}{L8U}{w}{ῲ\restarttextLGR}
+\DeclareTextCompositeCommand{\textsubiota}{L8U}{w}{ῳ\restarttextLGR}
+\DeclareTextCompositeCommand{\textoxiaiota}{L8U}{w}{ῴ\restarttextLGR}
+%
+\DeclareTextCompositeCommand{\textperispomeni}{L8U}{w}{ῶ\restarttextLGR}
+\DeclareTextCompositeCommand{\textperispomeniiota}{L8U}{w}{ῷ\restarttextLGR}
+\DeclareTextCompositeCommand{\textvaria}{L8U}{O}{Ὸ\restarttextLGR}
+\DeclareTextCompositeCommand{\textoxia}{L8U}{O}{Ό\restarttextLGR}
+\DeclareTextCompositeCommand{\textvaria}{L8U}{W}{Ὼ\restarttextLGR}
+\DeclareTextCompositeCommand{\textoxia}{L8U}{W}{Ώ\restarttextLGR}
+\DeclareTextCompositeCommand{\textsubiota}{L8U}{W}{ῼ\restarttextLGR}
+
+
+
+
+% direct input — upper 8-bit: ISO-8859-7
+
+%\DeclareTextCompositeCommand{\textLGRenc}{L8U}{^^80}{}
+%\DeclareTextCompositeCommand{\textLGRenc}{L8U}{^^81}{}
+%\DeclareTextCompositeCommand{\textLGRenc}{L8U}{^^82}{}
+%\DeclareTextCompositeCommand{\textLGRenc}{L8U}{^^83}{}
+%\DeclareTextCompositeCommand{\textLGRenc}{L8U}{^^84}{}
+%\DeclareTextCompositeCommand{\textLGRenc}{L8U}{^^85}{}
+%\DeclareTextCompositeCommand{\textLGRenc}{L8U}{^^86}{}
+%\DeclareTextCompositeCommand{\textLGRenc}{L8U}{^^87}{}
+%\DeclareTextCompositeCommand{\textLGRenc}{L8U}{^^88}{}
+%\DeclareTextCompositeCommand{\textLGRenc}{L8U}{^^89}{}
+%\DeclareTextCompositeCommand{\textLGRenc}{L8U}{^^8a}{}
+%\DeclareTextCompositeCommand{\textLGRenc}{L8U}{^^8b}{}
+%\DeclareTextCompositeCommand{\textLGRenc}{L8U}{^^8c}{}
+%\DeclareTextCompositeCommand{\textLGRenc}{L8U}{^^8d}{}
+%\DeclareTextCompositeCommand{\textLGRenc}{L8U}{^^8e}{}
+%\DeclareTextCompositeCommand{\textLGRenc}{L8U}{^^8f}{}
+%\DeclareTextCompositeCommand{\textLGRenc}{L8U}{^^90}{}
+%\DeclareTextCompositeCommand{\textLGRenc}{L8U}{^^91}{``}% ????
+%\DeclareTextCompositeCommand{\textLGRenc}{L8U}{^^92}{''}% ????
+%\DeclareTextCompositeCommand{\textLGRenc}{L8U}{^^93}{``}% ????
+%\DeclareTextCompositeCommand{\textLGRenc}{L8U}{^^94}{''}% ????
+%\DeclareTextCompositeCommand{\textLGRenc}{L8U}{^^95}{}%
+%\DeclareTextCompositeCommand{\textLGRenc}{L8U}{^^96}{}%
+%\DeclareTextCompositeCommand{\textLGRenc}{L8U}{^^97}{}%
+%\DeclareTextCompositeCommand{\textLGRenc}{L8U}{^^98}{}%
+%\DeclareTextCompositeCommand{\textLGRenc}{L8U}{^^99}{}%
+%\DeclareTextCompositeCommand{\textLGRenc}{L8U}{^^9a}{}%
+%\DeclareTextCompositeCommand{\textLGRenc}{L8U}{^^9b}{}%
+%\DeclareTextCompositeCommand{\textLGRenc}{L8U}{^^9c}{}%
+%\DeclareTextCompositeCommand{\textLGRenc}{L8U}{^^9d}{}%
+%\DeclareTextCompositeCommand{\textLGRenc}{L8U}{^^9e}{}%
+%\DeclareTextCompositeCommand{\textLGRenc}{L8U}{^^9f}{}% unused
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{^^a0}{ }
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{^^a1}{‘}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{^^a2}{’}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{^^a3}{£}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{^^a4}{€}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{^^a5}{₯}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{^^a6}{¦}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{^^a7}{§}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{^^a8}{¨}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{^^a9}{©}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{^^aa}{ͺ}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{^^ab}{«}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{^^ac}{¬}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{^^ad}{­}
+%\DeclareTextCompositeCommand{\textLGRenc}{L8U}{^^ae}{}% unused
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{^^af}{―}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{^^b0}{°}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{^^b1}{±}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{^^b2}{²}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{^^b3}{³}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{^^b4}{΄}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{^^b5}{΅}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{^^b6}{Ά}% Ux0386
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{^^b7}{·}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{^^b8}{Έ}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{^^b9}{Ή}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{^^ba}{Ί}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{^^bb}{»}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{^^bc}{Ό}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{^^bd}{½}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{^^be}{Ύ}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{^^bf}{Ώ}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{^^c0}{ΐ}% Ux0390
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{^^c1}{Α}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{^^c2}{Β}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{^^c3}{Γ}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{^^c4}{Δ}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{^^c5}{Ε}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{^^c6}{Ζ}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{^^c7}{Η}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{^^c8}{Θ}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{^^c9}{Ι}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{^^ca}{Κ}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{^^cb}{Λ}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{^^cc}{Μ}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{^^cd}{Ν}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{^^ce}{Ξ}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{^^cf}{Ο}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{^^d0}{Π}% Ux03A0
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{^^d1}{Ρ}
+%\DeclareTextCompositeCommand{\textLGRenc}{L8U}{^^d2}{}% unused
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{^^d3}{Σ}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{^^d4}{Τ}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{^^d5}{Υ}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{^^d6}{Φ}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{^^d7}{Χ}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{^^d8}{Ψ}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{^^d9}{Ω}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{^^da}{Ϊ}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{^^db}{Ϋ}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{^^dc}{ά}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{^^dd}{έ}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{^^de}{ή}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{^^df}{ί}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{^^e0}{ΰ}% Ux03B0
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{^^e1}{α}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{^^e2}{β}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{^^e3}{γ}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{^^e4}{δ}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{^^e5}{ε}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{^^e6}{ζ}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{^^e7}{η}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{^^e8}{θ}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{^^e9}{ι}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{^^ea}{κ}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{^^eb}{λ}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{^^ec}{μ}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{^^ed}{ν}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{^^ee}{ξ}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{^^ef}{ο}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{^^f0}{π}% Ux03C0
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{^^f1}{ρ}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{^^f2}{ς}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{^^f3}{σ}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{^^f4}{τ}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{^^f5}{υ}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{^^f6}{φ}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{^^f7}{χ}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{^^f8}{ψ}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{^^f9}{ω}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{^^fa}{ϊ}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{^^fb}{ϋ}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{^^fc}{ό}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{^^fd}{ύ}
+\DeclareTextCompositeCommand{\textLGRenc}{L8U}{^^fe}{ώ}
+%\DeclareTextCompositeCommand{\textLGRenc}{L8U}{^^ff}{}% not used
+
+
+
+% Greek numerals — upper & lower case
+%% this cannot work, due to place-value considerations.
+%% Instead, see \pdfxGreeknumeralsHack in l8uenc.def .
+
+\DeclareTextCommand{\textgreekNUMstring}{L8U}[1]{\textgreekNUM@ii#1\@empty\@empty}
+\def\textgreekNUM@i#1{\textgreekNUM@ii#1}
+\def\textgreekNUM@ii#1#2\@empty{%
+ \ifx\@empty#2\@empty
+ \expandafter\@firstoftwo\else\expandafter\@secondoftwo\fi
+ {\textgrkNUMenc{#1}\@empty}{\textgrkNUMenc{#1}\textgreekNUM@i#2\@empty}}
+
+\DeclareTextCommand{\textgreeknumstring}{L8U}[1]{\textgreeknum@ii#1\@empty\@empty}
+\def\textgreeknum@i#1{\textgreeknum@ii#1}
+\def\textgreeknum@ii#1#2\@empty{%
+ \ifx\@empty#2\@empty
+ \expandafter\@firstoftwo\else\expandafter\@secondoftwo\fi
+ {\textgrknumenc{#1}\@empty}{\textgrknumenc{#1}\textgreekNUM@i#2\@empty}}
+
+\DeclareTextCommand{\textgrkNUMenc}{L8U}[1]{#1}
+\DeclareTextCommand{\textgrknumenc}{L8U}[1]{#1}
+\DeclareTextCompositeCommand{\textgrkNUMenc}{L8U}{0}{}
+\DeclareTextCompositeCommand{\textgrkNUMenc}{L8U}{1}{}
+\DeclareTextCompositeCommand{\textgrkNUMenc}{L8U}{2}{}
+\DeclareTextCompositeCommand{\textgrkNUMenc}{L8U}{3}{}
+\DeclareTextCompositeCommand{\textgrkNUMenc}{L8U}{4}{}
+\DeclareTextCompositeCommand{\textgrkNUMenc}{L8U}{5}{}
+\DeclareTextCompositeCommand{\textgrkNUMenc}{L8U}{6}{}
+\DeclareTextCompositeCommand{\textgrkNUMenc}{L8U}{7}{}
+\DeclareTextCompositeCommand{\textgrkNUMenc}{L8U}{8}{}
+\DeclareTextCompositeCommand{\textgrkNUMenc}{L8U}{9}{}
+
+\DeclareTextCommand{\textgrknumenc}{L8U}[1]{#1}
+\DeclareTextCompositeCommand{\textgrknumenc}{L8U}{0}{}
+\DeclareTextCompositeCommand{\textgrknumenc}{L8U}{1}{}
+\DeclareTextCompositeCommand{\textgrknumenc}{L8U}{2}{}
+\DeclareTextCompositeCommand{\textgrknumenc}{L8U}{3}{}
+\DeclareTextCompositeCommand{\textgrknumenc}{L8U}{4}{}
+\DeclareTextCompositeCommand{\textgrknumenc}{L8U}{5}{}
+\DeclareTextCompositeCommand{\textgrknumenc}{L8U}{6}{}
+\DeclareTextCompositeCommand{\textgrknumenc}{L8U}{7}{}
+\DeclareTextCompositeCommand{\textgrknumenc}{L8U}{8}{}
+\DeclareTextCompositeCommand{\textgrknumenc}{L8U}{9}{}
+
+
+\endinput
+
+
+
diff --git a/macros/latex/contrib/pdfx/l8uheb-penc.def b/macros/latex/contrib/pdfx/l8uheb-penc.def
new file mode 100644
index 0000000000..0cad5a67d8
--- /dev/null
+++ b/macros/latex/contrib/pdfx/l8uheb-penc.def
@@ -0,0 +1,513 @@
+%%
+%% This is file `l8uheb-penc.def'
+%% formerly known as `l8uheb.def'
+%%
+%% l8uheb-penc.def
+%%
+%% This is a hand-written file, based upon various hebrew packages
+%% with extensions for more composite characters.
+%%
+%% Copyright 2018 Ross Moore <ross.moore@mq.edu.au>
+%%
+\ProvidesFile{l8uheb-penc.def}
+ [2018/11/15 v0.5
+ Hebrew support for UTF8 in XMP metadata]
+
+%
+% uses macro names from ../babel-hebrew/{he8,lhe}enc.def
+% and ../babel-hebrew/cp{1255,862}enc.def
+% and ../ucs/data/uni-5.def
+%
+% defines command: \LIIXUmaphebrewletters
+% parsers: \textLHE LHE transliterated ASCII
+% \textHEBO for cp862
+% \textHEB HE8 for ISO 8859-8, cp1255
+% with \newshequel at ^^a4
+
+\def\LIIXUmaphebrewletters{%
+ \let\sheva\textsheva
+ \let\hatafsegol\hebhatafsegol
+ \let\hatafpatah\hebhatafpatah
+ \let\hatafqamats\hebhatafqamats
+ \let\hiriq\hebhiriq
+ \let\tsere\hebtsere
+ \let\segol\hebsegol
+ \let\patah\hebpatah
+ \let\qamats\hebqamats
+ \let\holam\hebholam
+ \let\qubuts\hebqubuts
+ \let\dagesh\hebdagesh
+ \let\meteg\hebmeteg
+ \let\maqaf\hebmaqaf
+ \let\shindot\hebshindot
+ \let\sindot\hebsindot
+ \let\sofpasuq\hebsofpasuq
+ \let\nunhafukha\hebnunhafukha
+ \let\doublevav\hebdoublevav
+ \let\vavyod\hebvavyod
+ \let\doubleyod\hebdoubleyod
+ \let\geresh\hebgeresh
+ \let\gershayim\hebgershayim
+ \let\rafe\hebrafe
+ \let\newsheqel\textnewsheqel % Ux20AA
+ \let\lefttorightmark\textLR
+ \let\righttoleftmark\textRL
+ \let\hebsin\hebshin
+% \let\\text
+% \let\\text
+% \let\\text
+}
+
+%%%% Hebrew Characters + marks Ux0590 – Ux05FF
+%
+\DeclareTextCommand{\hebsheva}{L8U}[1]{ְ#1}% U+05B0
+\DeclareTextCommand{\hebhatafsegol}{L8U}[1]{ֱ#1}
+\DeclareTextCommand{\hebhatafpatah}{L8U}[1]{ֲ#1}
+\DeclareTextCommand{\hebhatafqamats}{L8U}[1]{ֳ#1}
+\DeclareTextCommand{\hebhiriq}{L8U}[1]{ִ#1}
+\DeclareTextCommand{\hebtsere}{L8U}[1]{ֵ#1}
+\DeclareTextCommand{\hebsegol}{L8U}[1]{ֶ#1}
+\DeclareTextCommand{\hebpatah}{L8U}[1]{ַ#1}
+\DeclareTextCommand{\hebqamats}{L8U}[1]{ָ#1}
+\DeclareTextCommand{\hebholam}{L8U}[1]{ֹ#1}
+%
+\DeclareTextCommand{\hebqubuts}{L8U}[1]{ֻ#1}% U+05BB
+\DeclareTextCommand{\hebdagesh}{L8U}[1]{ּ#1}% U+05BC
+\DeclareTextCommand{\hebmeteg}{L8U}[1]{ֽ#1}% U+05BD
+\DeclareTextCommand{\hebmaqaf}{L8U}{־}% ??? U+05BE
+\DeclareTextCommand{\hebrafe}{L8U}[1]{ֿ#1}% U+05BF
+%
+\DeclareTextCommand{\hebpaseq}{L8U}{׀}% U+05C0
+\DeclareTextCommand{\hebshindot}{L8U}[1]{ׁ#1}% U+05C1
+\DeclareTextCommand{\hebsindot}{L8U}[1]{ׂ#1}% U+05C2
+\DeclareTextCommand{\hebsofpasuq}{L8U}{׃}% U+05C3
+%\DeclareTextCommand{\hebhebupperdot}{L8U}{ׄ}% U+05C4
+%\DeclareTextCommand{\hebheblowerdot}{L8U}{ׅ}% U+05C5
+%\DeclareTextCommand{\hebnunhafukha}{L8U}{׃}% U+05C6
+%\DeclareTextCommand{\hebqamatsqatan}{L8U}{ׇ}% U+05C7
+%
+\DeclareTextCommand{\hebshindotdagesh}{L8U}[1]{#1ּׁ}% Ux05C1+Ux05BC
+\DeclareTextCommand{\hebsindotdagesh}{L8U}[1]{#1ּׂ}% Ux05C2+Ux05BC
+%
+\DeclareTextCommand{\hebalef}{L8U}{א}% U+05D0
+\DeclareTextCommand{\hebbet}{L8U}{ב}% U+05D1
+\DeclareTextCommand{\hebgimel}{L8U}{ג}% U+05D2
+\DeclareTextCommand{\hebdalet}{L8U}{ד}% U+05D3
+\DeclareTextCommand{\hebhe}{L8U}{ה}% U+05D4
+\DeclareTextCommand{\hebvav}{L8U}{ו}% U+05D5
+\DeclareTextCommand{\hebzayin}{L8U}{ז}% U+05D6
+\DeclareTextCommand{\hebhet}{L8U}{ח}% U+05D7
+\DeclareTextCommand{\hebtet}{L8U}{ט}% U+05D8
+\DeclareTextCommand{\hebyod}{L8U}{י}% U+05D9
+\DeclareTextCommand{\hebfinalkaf}{L8U}{ך}% U+05DA
+\DeclareTextCommand{\hebkaf}{L8U}{כ}% U+05DB
+\DeclareTextCommand{\heblamed}{L8U}{ל}% U+05DC
+\DeclareTextCommand{\hebfinalmem}{L8U}{ם}% U+05DD
+\DeclareTextCommand{\hebmem}{L8U}{מ}% U+05DE
+\DeclareTextCommand{\hebfinalnun}{L8U}{ן}% U+05DF
+\DeclareTextCommand{\hebnun}{L8U}{נ}% U+05E0
+\DeclareTextCommand{\hebsamekh}{L8U}{ס}% U+05E1
+\DeclareTextCommand{\hebayin}{L8U}{ע}% U+05E2
+\DeclareTextCommand{\hebfinalpe}{L8U}{ף}% U+05E3
+\DeclareTextCommand{\hebpe}{L8U}{פ}% U+05E4
+\DeclareTextCommand{\hebfinaltsadi}{L8U}{ץ}% U+05E5
+\DeclareTextCommand{\hebtsadi}{L8U}{צ}% U+05E6
+\DeclareTextCommand{\hebqof}{L8U}{ק}% U+05E7
+\DeclareTextCommand{\hebresh}{L8U}{ר}% U+05E8
+\DeclareTextCommand{\hebshin}{L8U}{ש}% U+05E9
+\DeclareTextCommand{\hebtav}{L8U}{ת}% U+05EA
+%
+\DeclareTextCommand{\hebdoublevav}{L8U}{װ}% U+05F0
+\DeclareTextCommand{\hebvavyod}{L8U}{ױ}% U+05F1
+\DeclareTextCommand{\hebdoubleyod}{L8U}{ײ}% U+05F2
+%\DeclareTextCommand{\hebgeresh}{L8U}{׳}% U+05F3
+%\DeclareTextCommand{\hebgershayim}{L8U}{״}% U+05F4
+
+\DeclareTextCommand{\textnewsheqel}{L8U}{₪}% U+20AA
+
+
+\DeclareTextCompositeCommand{\hebhiriq}{L8U}{\hebyod}{יִ}% UxFB1D
+\DeclareTextCompositeCommand{\hebshindot}{L8U}{\hebshin}{שׁ}% UxFB2A
+\DeclareTextCompositeCommand{\hebsindot}{L8U}{\hebshin}{שׂ}% UxFB2B
+\DeclareTextCompositeCommand{\hebshindot}{L8U}{\dagesh}{\hebshindotdagesh}%
+\DeclareTextCompositeCommand{\hebshindot}{L8U}{\hebdagesh}{\hebshindotdagesh}%
+\DeclareTextCompositeCommand{\hebshindotdagesh}{L8U}{\hebshin}{שּׁ}% UxFB2C
+\DeclareTextCompositeCommand{\hebsindot}{L8U}{\dagesh}{\hebsindotdagesh}%
+\DeclareTextCompositeCommand{\hebsindot}{L8U}{\hebdagesh}{\hebsindotdagesh}%
+\DeclareTextCompositeCommand{\hebsindotdagesh}{L8U}{\hebshin}{שּׂ}% UxFB2D
+\DeclareTextCompositeCommand{\hebpatah}{L8U}{\hebalef}{אַ}% UxFB2E
+\DeclareTextCompositeCommand{\hebqamats}{L8U}{\hebalef}{אָ}% UxFB2F
+\DeclareTextCompositeCommand{\hebdagesh}{L8U}{\hebalef}{אּ}% UxFB30 = &#64304;
+\DeclareTextCompositeCommand{\hebdagesh}{L8U}{\hebbet}{בּ}% UxFB31
+\DeclareTextCompositeCommand{\hebdagesh}{L8U}{\hebgimel}{גּ}% UxFB32
+\DeclareTextCompositeCommand{\hebdagesh}{L8U}{\hebdalet}{דּ}% UxFB33
+\DeclareTextCompositeCommand{\hebdagesh}{L8U}{\hebhe}{הּ}%
+\DeclareTextCompositeCommand{\hebdagesh}{L8U}{\hebvav}{וּ}%
+\DeclareTextCompositeCommand{\hebdagesh}{L8U}{\hebzayin}{זּ}% UxFB36
+\DeclareTextCompositeCommand{\hebdagesh}{L8U}{\hebtet}{טּ}%
+\DeclareTextCompositeCommand{\hebdagesh}{L8U}{\hebyod}{יּ}%
+\DeclareTextCompositeCommand{\hebdagesh}{L8U}{\hebfinalkaf}{ךּ}% UxFB3A
+\DeclareTextCompositeCommand{\hebdagesh}{L8U}{\hebkaf}{כּ}%
+\DeclareTextCompositeCommand{\hebdagesh}{L8U}{\heblamed}{לּ}% UxFB3C
+\DeclareTextCompositeCommand{\hebdagesh}{L8U}{\hebmem}{מּ}%
+\DeclareTextCompositeCommand{\hebdagesh}{L8U}{\hebnun}{נּ}%
+\DeclareTextCompositeCommand{\hebdagesh}{L8U}{\hebsamekh}{סּ}% UxFB41
+\DeclareTextCompositeCommand{\hebdagesh}{L8U}{\hebfinalpe}{ףּ}% UxFB43
+\DeclareTextCompositeCommand{\hebdagesh}{L8U}{\hebpe}{פּ}%
+\DeclareTextCompositeCommand{\hebdagesh}{L8U}{\hebtsadi}{צּ}% UxFB46
+\DeclareTextCompositeCommand{\hebdagesh}{L8U}{\hebqof}{קּ}% UxFB47
+\DeclareTextCompositeCommand{\hebdagesh}{L8U}{\hebresh}{רּ}% UxFB48
+\DeclareTextCompositeCommand{\hebdagesh}{L8U}{\hebshin}{שּ}% UxFB49
+\DeclareTextCompositeCommand{\hebdagesh}{L8U}{\hebtav}{תּ}% UxFB4A
+\DeclareTextCompositeCommand{\hebholam}{L8U}{\hebvav}{וֹ}% UxFB4B
+\DeclareTextCompositeCommand{\hebrafe}{L8U}{\hebbet}{בֿ}% UxFB4C
+\DeclareTextCompositeCommand{\hebrafe}{L8U}{\hebkaf}{כֿ}% UxFB4D
+\DeclareTextCompositeCommand{\hebrafe}{L8U}{\hebpe}{פֿ}% UxFB4e
+
+
+\ifhebHEBxmp\else\expandafter\endinput\fi
+
+% implement transliteration for LHE, HE8 encoded input
+
+\DeclareTextCommand{\texthebLHEstring}{L8U}[1]{\texthebLHE@ii#1\@empty\@empty}
+\DeclareTextCommand{\textLHE}{L8U}[1]{\texthebLHEstring{#1}}
+\DeclareTextCommand{\textLHEenc}{L8U}[1]{#1}
+
+\def\texthebLHE@i#1{\texthebLHE@ii#1}%
+\def\texthebLHE@ii#1#2\@empty{\ifx\@empty#2\@empty
+ \expandafter\@firstoftwo\else\expandafter\@secondoftwo\fi
+ {\textLHEenc{#1}}{\textLHEenc{#1}\texthebLHE@i#2\@empty}}
+
+\DeclareTextCommand{\texthebHEBstring}{L8U}[1]{\texthebHEB@ii#1\@empty\@empty}
+\DeclareTextCommand{\textHEB}{L8U}[1]{\texthebHEBstring{#1}}
+\DeclareTextCommand{\textHEBenc}{L8U}[1]{#1}
+
+\def\texthebHEB@i#1{\texthebHEB@ii#1}%
+\def\texthebHEB@ii#1#2\@empty{\ifx\@empty#2\@empty
+ \expandafter\@firstoftwo\else\expandafter\@secondoftwo\fi
+ {\textHEBenc{#1}}{\textHEBenc{#1}\texthebHEB@i#2\@empty}}
+
+\DeclareTextCommand{\texthebHEBOstring}{L8U}[1]{\texthebHEBO@ii#1\@empty\@empty}
+\DeclareTextCommand{\textHEBO}{L8U}[1]{\texthebHEBstring{#1}}
+\DeclareTextCommand{\textHEBOenc}{L8U}[1]{#1}
+
+\def\texthebHEBO@i#1{\texthebHEBO@ii#1}%
+\def\texthebHEBO@ii#1#2\@empty{\ifx\@empty#2\@empty
+ \expandafter\@firstoftwo\else\expandafter\@secondoftwo\fi
+ {\textHEBOenc{#1}}{\textHEBOenc{#1}\texthebHEBO@i#2\@empty}}
+
+\DeclareTextCompositeCommand{\textHEBenc}{L8U}{\TeX}{TeX}
+\DeclareTextCompositeCommand{\textHEBenc}{L8U}{\LaTeX}{LaTeX}
+\DeclareTextCompositeCommand{\textLHEenc}{L8U}{\TeX}{TeX}
+\DeclareTextCompositeCommand{\textLHEenc}{L8U}{\LaTeX}{LaTeX}
+\DeclareTextCompositeCommand{\textHEBOenc}{L8U}{\TeX}{TeX}
+\DeclareTextCompositeCommand{\textHEBOenc}{L8U}{\LaTeX}{LaTeX}
+
+
+% use these bindings below, for readability
+\global\let\heb@en\liixu@checkemptyornext
+\global\let\heb@nc\liixu@checknextchar
+
+
+\obeyspaces
+\DeclareTextCompositeCommand{\textHEBenc}{L8U}{\sep}{\textLR\sep }%
+\DeclareTextCompositeCommand{\textHEBenc}{L8U}{ }{\space}%
+\DeclareTextCompositeCommand{\textLHEenc}{L8U}{\sep}{\textLR\sep }%
+\DeclareTextCompositeCommand{\textLHEenc}{L8U}{ }{\space}%
+\DeclareTextCompositeCommand{\textHEBOenc}{L8U}{\sep}{\textLR\sep }%
+\DeclareTextCompositeCommand{\textHEBOenc}{L8U}{ }{\space}%
+\catcode`\ 10
+
+% LHE transliteration of ASCII codes
+%
+\DeclareTextCompositeCommand{\textLHEenc}{L8U}{`}{א}
+\DeclareTextCompositeCommand{\textLHEenc}{L8U}{a}{ב}
+\DeclareTextCompositeCommand{\textLHEenc}{L8U}{b}{ג}
+\DeclareTextCompositeCommand{\textLHEenc}{L8U}{c}{ד}
+\DeclareTextCompositeCommand{\textLHEenc}{L8U}{d}{ה}
+\DeclareTextCompositeCommand{\textLHEenc}{L8U}{e}{ו}
+\DeclareTextCompositeCommand{\textLHEenc}{L8U}{f}{ז}
+\DeclareTextCompositeCommand{\textLHEenc}{L8U}{g}{ח}
+\DeclareTextCompositeCommand{\textLHEenc}{L8U}{h}{ט}
+\DeclareTextCompositeCommand{\textLHEenc}{L8U}{i}{י}
+\DeclareTextCompositeCommand{\textLHEenc}{L8U}{j}{ך}
+\DeclareTextCompositeCommand{\textLHEenc}{L8U}{k}{כ}
+\DeclareTextCompositeCommand{\textLHEenc}{L8U}{l}{ל}
+\DeclareTextCompositeCommand{\textLHEenc}{L8U}{m}{ם}
+\DeclareTextCompositeCommand{\textLHEenc}{L8U}{n}{מ}
+\DeclareTextCompositeCommand{\textLHEenc}{L8U}{o}{ן}
+\DeclareTextCompositeCommand{\textLHEenc}{L8U}{p}{נ}
+\DeclareTextCompositeCommand{\textLHEenc}{L8U}{q}{ס}
+\DeclareTextCompositeCommand{\textLHEenc}{L8U}{r}{ע}
+\DeclareTextCompositeCommand{\textLHEenc}{L8U}{s}{ף}
+\DeclareTextCompositeCommand{\textLHEenc}{L8U}{t}{פ}
+\DeclareTextCompositeCommand{\textLHEenc}{L8U}{u}{ץ}
+\DeclareTextCompositeCommand{\textLHEenc}{L8U}{v}{צ}
+\DeclareTextCompositeCommand{\textLHEenc}{L8U}{w}{ק}
+\DeclareTextCompositeCommand{\textLHEenc}{L8U}{x}{ר}
+\DeclareTextCompositeCommand{\textLHEenc}{L8U}{y}{ש}
+\DeclareTextCompositeCommand{\textLHEenc}{L8U}{z}{ת}
+
+
+% HE8 encoding, based on ISO 8859-8 and cp1255
+%
+
+% cp1255 only
+%
+%\DeclareTextCompositeCommand{\textHEBenc}{L8U}{^^80}{}
+%\DeclareTextCompositeCommand{\textHEBenc}{L8U}{^^81}{}
+\DeclareTextCompositeCommand{\textHEBenc}{L8U}{^^82}{\quotesinglbase}
+\DeclareTextCompositeCommand{\textHEBenc}{L8U}{^^83}{\textflorin}
+\DeclareTextCompositeCommand{\textHEBenc}{L8U}{^^84}{\quotedblbase}
+\DeclareTextCompositeCommand{\textHEBenc}{L8U}{^^85}{\textellipsis}
+\DeclareTextCompositeCommand{\textHEBenc}{L8U}{^^86}{\textdagger}
+\DeclareTextCompositeCommand{\textHEBenc}{L8U}{^^87}{\textdaggerdbl}
+\DeclareTextCompositeCommand{\textHEBenc}{L8U}{^^88}{\textasciicircum}
+\DeclareTextCompositeCommand{\textHEBenc}{L8U}{^^89}{\textperthousand}
+%\DeclareTextCompositeCommand{\textHEBenc}{L8U}{^^8a}{}
+\DeclareTextCompositeCommand{\textHEBenc}{L8U}{^^8b}{\guilsinglleft}
+%\DeclareTextCompositeCommand{\textHEBenc}{L8U}{^^8c}{}
+%\DeclareTextCompositeCommand{\textHEBenc}{L8U}{^^8d}{}
+%\DeclareTextCompositeCommand{\textHEBenc}{L8U}{^^8e}{}
+%\DeclareTextCompositeCommand{\textHEBenc}{L8U}{^^8f}{}
+%\DeclareTextCompositeCommand{\textHEBenc}{L8U}{^^90}{}
+\DeclareTextCompositeCommand{\textHEBenc}{L8U}{^^91}{\textquoteleft}
+\DeclareTextCompositeCommand{\textHEBenc}{L8U}{^^92}{\textquoteright}
+\DeclareTextCompositeCommand{\textHEBenc}{L8U}{^^93}{\textquotedblleft}
+\DeclareTextCompositeCommand{\textHEBenc}{L8U}{^^94}{\textquotedblright}
+\DeclareTextCompositeCommand{\textHEBenc}{L8U}{^^95}{\textbullet}
+\DeclareTextCompositeCommand{\textHEBenc}{L8U}{^^96}{\textendash}
+\DeclareTextCompositeCommand{\textHEBenc}{L8U}{^^97}{\textemdash}
+\DeclareTextCompositeCommand{\textHEBenc}{L8U}{^^98}{\textasciitilde}
+\DeclareTextCompositeCommand{\textHEBenc}{L8U}{^99}{\texttrademark}
+%\DeclareTextCompositeCommand{\textHEBenc}{L8U}{^^9a}{}
+\DeclareTextCompositeCommand{\textHEBenc}{L8U}{^^9b}{\guilsinglright}
+%\DeclareTextCompositeCommand{\textHEBenc}{L8U}{^^9c}{}
+%\DeclareTextCompositeCommand{\textHEBenc}{L8U}{^^9d}{}
+%\DeclareTextCompositeCommand{\textHEBenc}{L8U}{^^9e}{}
+%\DeclareTextCompositeCommand{\textHEBenc}{L8U}{^^9f}{}
+
+\DeclareTextCompositeCommand{\textHEBenc}{L8U}{^^a0}{\textnobreakspace}
+%\DeclareTextCompositeCommand{\textHEBenc}{L8U}{^^a1}{}
+\DeclareTextCompositeCommand{\textHEBenc}{L8U}{^^a2}{\textcent}
+\DeclareTextCompositeCommand{\textHEBenc}{L8U}{^^a3}{\textsterling}
+%\DeclareTextCompositeCommand{\textHEBenc}{L8U}{^^a4}{\textcurrency}% 8859-8
+\DeclareTextCompositeCommand{\textHEBenc}{L8U}{^^a4}{\newsheqel}% cp1255
+\DeclareTextCompositeCommand{\textHEBenc}{L8U}{^^a5}{\textyen}
+\DeclareTextCompositeCommand{\textHEBenc}{L8U}{^^a6}{\textbrokenbar}
+\DeclareTextCompositeCommand{\textHEBenc}{L8U}{^^a7}{\textsection}
+\DeclareTextCompositeCommand{\textHEBenc}{L8U}{^^a8}{\textasciidieresis}
+\DeclareTextCompositeCommand{\textHEBenc}{L8U}{^^a9}{\textcopyright}
+\DeclareTextCompositeCommand{\textHEBenc}{L8U}{^^aa}{\texttimes}
+\DeclareTextCompositeCommand{\textHEBenc}{L8U}{^^ab}{\guillemotleft}
+\DeclareTextCompositeCommand{\textHEBenc}{L8U}{^^ac}{\textlogicalnot}
+\DeclareTextCompositeCommand{\textHEBenc}{L8U}{^^ad}{­}% discretionary hyphen (invisible)
+\DeclareTextCompositeCommand{\textHEBenc}{L8U}{^^ae}{\textregistered}
+\DeclareTextCompositeCommand{\textHEBenc}{L8U}{^^af}{textasciimacron}
+\DeclareTextCompositeCommand{\textHEBenc}{L8U}{^^b0}{\textdegree}
+\DeclareTextCompositeCommand{\textHEBenc}{L8U}{^^b1}{\textpm}
+\DeclareTextCompositeCommand{\textHEBenc}{L8U}{^^b2}{\texttwosuperior}
+\DeclareTextCompositeCommand{\textHEBenc}{L8U}{^^b3}{\textthreesuperior}
+\DeclareTextCompositeCommand{\textHEBenc}{L8U}{^^b4}{\textasciigrave}
+\DeclareTextCompositeCommand{\textHEBenc}{L8U}{^^b5}{\textmu}
+\DeclareTextCompositeCommand{\textHEBenc}{L8U}{^^b6}{\textparagraph}
+\DeclareTextCompositeCommand{\textHEBenc}{L8U}{^^b7}{\textperiodcentred}
+\DeclareTextCompositeCommand{\textHEBenc}{L8U}{^^b8}{\textasciicedilla}
+\DeclareTextCompositeCommand{\textHEBenc}{L8U}{^^b9}{\textonesuperior}
+\DeclareTextCompositeCommand{\textHEBenc}{L8U}{^^ba}{\textdiv}
+\DeclareTextCompositeCommand{\textHEBenc}{L8U}{^^bb}{\guillemotright}
+\DeclareTextCompositeCommand{\textHEBenc}{L8U}{^^bc}{\textonequarter}
+\DeclareTextCompositeCommand{\textHEBenc}{L8U}{^^bd}{\textonehalf}
+\DeclareTextCompositeCommand{\textHEBenc}{L8U}{^^be}{\textthreequarters}
+%\DeclareTextCompositeCommand{\textHEBenc}{L8U}{^^bf}{}
+
+% cp1255
+%
+\DeclareTextCompositeCommand{\textHEBenc}{L8U}{^^c0}{\hebsheva}
+\DeclareTextCompositeCommand{\textHEBenc}{L8U}{^^c1}{\hebhatafsegol}
+\DeclareTextCompositeCommand{\textHEBenc}{L8U}{^^c2}{\hebhatafpatah}
+\DeclareTextCompositeCommand{\textHEBenc}{L8U}{^^c3}{\hebhatafqamats}
+\DeclareTextCompositeCommand{\textHEBenc}{L8U}{^^c4}{\hebhiriq}
+\DeclareTextCompositeCommand{\textHEBenc}{L8U}{^^c5}{\hebtsere}
+\DeclareTextCompositeCommand{\textHEBenc}{L8U}{^^c6}{\hebsegol}
+\DeclareTextCompositeCommand{\textHEBenc}{L8U}{^^c7}{\hebpatah}
+\DeclareTextCompositeCommand{\textHEBenc}{L8U}{^^c8}{\hebqamats}
+\DeclareTextCompositeCommand{\textHEBenc}{L8U}{^^c9}{\hebholam}
+%\DeclareTextCompositeCommand{\textHEBenc}{L8U}{^^ca}{}
+\DeclareTextCompositeCommand{\textHEBenc}{L8U}{^^cb}{\hebqubuts}
+\DeclareTextCompositeCommand{\textHEBenc}{L8U}{^^cc}{\hebdagesh}
+\DeclareTextCompositeCommand{\textHEBenc}{L8U}{^^cd}{\hebmeteg}
+\DeclareTextCompositeCommand{\textHEBenc}{L8U}{^^ce}{\hebmaqaf}
+\DeclareTextCompositeCommand{\textHEBenc}{L8U}{^^cf}{\hebrafe}
+\DeclareTextCompositeCommand{\textHEBenc}{L8U}{^^d0}{\hebpaseq}
+\DeclareTextCompositeCommand{\textHEBenc}{L8U}{^^d1}{\hebshindot}
+\DeclareTextCompositeCommand{\textHEBenc}{L8U}{^^d2}{\hebsindot}
+\DeclareTextCompositeCommand{\textHEBenc}{L8U}{^^d3}{\hebsofpasuq}
+\DeclareTextCompositeCommand{\textHEBenc}{L8U}{^^d4}{\hebdoublevav}
+\DeclareTextCompositeCommand{\textHEBenc}{L8U}{^^d5}{\hebvavyod}
+\DeclareTextCompositeCommand{\textHEBenc}{L8U}{^^d6}{\hebdoubleyod}
+%\DeclareTextCompositeCommand{\textHEBenc}{L8U}{^^d7}{}
+%\DeclareTextCompositeCommand{\textHEBenc}{L8U}{^^d8}{}
+%\DeclareTextCompositeCommand{\textHEBenc}{L8U}{^^d9}{}
+%\DeclareTextCompositeCommand{\textHEBenc}{L8U}{^^da}{}
+%\DeclareTextCompositeCommand{\textHEBenc}{L8U}{^^db}{}
+%\DeclareTextCompositeCommand{\textHEBenc}{L8U}{^^dc}{}
+%\DeclareTextCompositeCommand{\textHEBenc}{L8U}{^^dd}{}
+%\DeclareTextCompositeCommand{\textHEBenc}{L8U}{^^de}{}
+%\DeclareTextCompositeCommand{\textHEBenc}{L8U}{^^df}{}
+
+
+% 8859-8 and cp1255
+%
+\DeclareTextCompositeCommand{\textHEBenc}{L8U}{^^e0}{\hebalef}
+\DeclareTextCompositeCommand{\textHEBenc}{L8U}{^^e1}{\hebbet}
+\DeclareTextCompositeCommand{\textHEBenc}{L8U}{^^e2}{\hebgimel}
+\DeclareTextCompositeCommand{\textHEBenc}{L8U}{^^e3}{\hebdalet}
+\DeclareTextCompositeCommand{\textHEBenc}{L8U}{^^e4}{\hebhe}
+\DeclareTextCompositeCommand{\textHEBenc}{L8U}{^^e5}{\hebvav}
+\DeclareTextCompositeCommand{\textHEBenc}{L8U}{^^e6}{\hebzayin}
+\DeclareTextCompositeCommand{\textHEBenc}{L8U}{^^e7}{\hebhet}
+\DeclareTextCompositeCommand{\textHEBenc}{L8U}{^^e8}{\hebtet}
+\DeclareTextCompositeCommand{\textHEBenc}{L8U}{^^e9}{\hebyod}
+\DeclareTextCompositeCommand{\textHEBenc}{L8U}{^^ea}{\hebfinalkaf}
+\DeclareTextCompositeCommand{\textHEBenc}{L8U}{^^eb}{\hebkaf}
+\DeclareTextCompositeCommand{\textHEBenc}{L8U}{^^ec}{\heblamed}
+\DeclareTextCompositeCommand{\textHEBenc}{L8U}{^^ed}{\hebfinalmem}
+\DeclareTextCompositeCommand{\textHEBenc}{L8U}{^^ee}{\hebmem}
+\DeclareTextCompositeCommand{\textHEBenc}{L8U}{^^ef}{\hebfinalnun}
+\DeclareTextCompositeCommand{\textHEBenc}{L8U}{^^f0}{\hebnun}
+\DeclareTextCompositeCommand{\textHEBenc}{L8U}{^^f1}{\hebsamekh}
+\DeclareTextCompositeCommand{\textHEBenc}{L8U}{^^f2}{\hebayin}
+\DeclareTextCompositeCommand{\textHEBenc}{L8U}{^^f3}{\hebfinalpe}
+\DeclareTextCompositeCommand{\textHEBenc}{L8U}{^^f4}{\hebpe}
+\DeclareTextCompositeCommand{\textHEBenc}{L8U}{^^f5}{\hebfinaltsadi}
+\DeclareTextCompositeCommand{\textHEBenc}{L8U}{^^f6}{\hebtsadi}
+\DeclareTextCompositeCommand{\textHEBenc}{L8U}{^^f7}{\hebqof}
+\DeclareTextCompositeCommand{\textHEBenc}{L8U}{^^f8}{\hebresh}
+\DeclareTextCompositeCommand{\textHEBenc}{L8U}{^^f9}{\hebshin}
+\DeclareTextCompositeCommand{\textHEBenc}{L8U}{^^fa}{\hebtav}
+%\DeclareTextCompositeCommand{\textHEBenc}{L8U}{^^fb}{}
+%\DeclareTextCompositeCommand{\textHEBenc}{L8U}{^^fc}{}
+
+\DeclareTextCompositeCommand{\textHEBenc}{L8U}{^^fe}{\textLR}
+\DeclareTextCompositeCommand{\textHEBenc}{L8U}{^^ff}{\textRL}
+
+
+\DeclareTextCompositeCommand{\hebhiriq}{L8U}{^^e9}{יִ}% UxFB1D
+\DeclareTextCompositeCommand{\hebshindot}{L8U}{^^f9}{שׁ}% UxFB2A
+\DeclareTextCompositeCommand{\hebsindot}{L8U}{^^f9}{שׂ}% UxFB2B
+\DeclareTextCompositeCommand{\hebshindot}{L8U}{^^cc}{\hebshindotdagesh}%
+\DeclareTextCompositeCommand{\hebshindotdagesh}{L8U}{^^f9}{שּׁ}% UxFB2C
+\DeclareTextCompositeCommand{\hebsindot}{L8U}{^^cc}{\hebsindotdagesh}%
+\DeclareTextCompositeCommand{\hebsindotdagesh}{L8U}{^^f9}{שּׂ}% UxFB2D
+\DeclareTextCompositeCommand{\hebpatah}{L8U}{^^e0}{אַ}% UxFB2E
+\DeclareTextCompositeCommand{\hebqamats}{L8U}{^^e0}{אָ}% UxFB2F
+\DeclareTextCompositeCommand{\hebdagesh}{L8U}{^^e0}{אּ}% UxFB30 = &#64304;
+\DeclareTextCompositeCommand{\hebdagesh}{L8U}{^^e1}{בּ}% UxFB31
+\DeclareTextCompositeCommand{\hebdagesh}{L8U}{^^e2}{גּ}% UxFB32
+\DeclareTextCompositeCommand{\hebdagesh}{L8U}{^^e3}{דּ}% UxFB33
+\DeclareTextCompositeCommand{\hebdagesh}{L8U}{^^e4}{הּ}% UxFB34
+\DeclareTextCompositeCommand{\hebdagesh}{L8U}{^^e5}{וּ}% UxFB35
+\DeclareTextCompositeCommand{\hebdagesh}{L8U}{^^e6}{זּ}% UxFB36
+\DeclareTextCompositeCommand{\hebdagesh}{L8U}{^^e8}{טּ}% UxFB38
+\DeclareTextCompositeCommand{\hebdagesh}{L8U}{^^e9}{יּ}% UxFB39
+\DeclareTextCompositeCommand{\hebdagesh}{L8U}{^^ea}{ךּ}% UxFB3A
+\DeclareTextCompositeCommand{\hebdagesh}{L8U}{^^eb}{כּ}% UxFB3B
+\DeclareTextCompositeCommand{\hebdagesh}{L8U}{^^ec}{לּ}% UxFB3C
+\DeclareTextCompositeCommand{\hebdagesh}{L8U}{^^ee}{מּ}% UxFB3E
+\DeclareTextCompositeCommand{\hebdagesh}{L8U}{^^f0}{נּ}% UxFB40
+\DeclareTextCompositeCommand{\hebdagesh}{L8U}{^^f1}{סּ}% UxFB41
+\DeclareTextCompositeCommand{\hebdagesh}{L8U}{^^f3}{ףּ}% UxFB43
+\DeclareTextCompositeCommand{\hebdagesh}{L8U}{^^f4}{פּ}% UxFB44
+\DeclareTextCompositeCommand{\hebdagesh}{L8U}{^^f6}{צּ}% UxFB46
+\DeclareTextCompositeCommand{\hebdagesh}{L8U}{^^f7}{קּ}% UxFB47
+\DeclareTextCompositeCommand{\hebdagesh}{L8U}{^^f8}{רּ}% UxFB48
+\DeclareTextCompositeCommand{\hebdagesh}{L8U}{^^f9}{שּ}% UxFB49
+\DeclareTextCompositeCommand{\hebdagesh}{L8U}{^^fa}{תּ}% UxFB4A
+\DeclareTextCompositeCommand{\hebholam}{L8U}{^^e5}{וֹ}% UxFB4B
+\DeclareTextCompositeCommand{\hebrafe}{L8U}{^^e1}{בֿ}% UxFB4C
+\DeclareTextCompositeCommand{\hebrafe}{L8U}{^^eb}{כֿ}% UxFB4D
+\DeclareTextCompositeCommand{\hebrafe}{L8U}{^^f4}{פֿ}% UxFB4E
+
+
+% cp862 HEBO = "old-style"
+%
+\DeclareTextCompositeCommand{\textHEBOenc}{L8U}{^^80}{\hebalef}
+\DeclareTextCompositeCommand{\textHEBOenc}{L8U}{^^81}{\hebbet}
+\DeclareTextCompositeCommand{\textHEBOenc}{L8U}{^^82}{\hebgimel}
+\DeclareTextCompositeCommand{\textHEBOenc}{L8U}{^^83}{\hebdalet}
+\DeclareTextCompositeCommand{\textHEBOenc}{L8U}{^^84}{\hebhe}
+\DeclareTextCompositeCommand{\textHEBOenc}{L8U}{^^85}{\hebvav}
+\DeclareTextCompositeCommand{\textHEBOenc}{L8U}{^^86}{\hebzayin}
+\DeclareTextCompositeCommand{\textHEBOenc}{L8U}{^^87}{\hebhet}
+\DeclareTextCompositeCommand{\textHEBOenc}{L8U}{^^88}{\hebtet}
+\DeclareTextCompositeCommand{\textHEBOenc}{L8U}{^^89}{\hebyod}
+\DeclareTextCompositeCommand{\textHEBOenc}{L8U}{^^8a}{\hebfinalkaf}
+\DeclareTextCompositeCommand{\textHEBOenc}{L8U}{^^8b}{\hebkaf}
+\DeclareTextCompositeCommand{\textHEBOenc}{L8U}{^^8c}{\heblamed}
+\DeclareTextCompositeCommand{\textHEBOenc}{L8U}{^^8d}{\hebfinalmem}
+\DeclareTextCompositeCommand{\textHEBOenc}{L8U}{^^8e}{\hebmem}
+\DeclareTextCompositeCommand{\textHEBOenc}{L8U}{^^8f}{\hebfinalnun}
+\DeclareTextCompositeCommand{\textHEBOenc}{L8U}{^^90}{\hebnun}
+\DeclareTextCompositeCommand{\textHEBOenc}{L8U}{^^91}{\hebsamekh}
+\DeclareTextCompositeCommand{\textHEBOenc}{L8U}{^^92}{\hebayin}
+\DeclareTextCompositeCommand{\textHEBOenc}{L8U}{^^93}{\hebfinalpe}
+\DeclareTextCompositeCommand{\textHEBOenc}{L8U}{^^94}{\hebpe}
+\DeclareTextCompositeCommand{\textHEBOenc}{L8U}{^^95}{\hebfinaltsadi}
+\DeclareTextCompositeCommand{\textHEBOenc}{L8U}{^^96}{\hebtsadi}
+\DeclareTextCompositeCommand{\textHEBOenc}{L8U}{^^97}{\hebqof}
+\DeclareTextCompositeCommand{\textHEBOenc}{L8U}{^^98}{\hebresh}
+\DeclareTextCompositeCommand{\textHEBOenc}{L8U}{^^99}{\hebshin}
+\DeclareTextCompositeCommand{\textHEBOenc}{L8U}{^^9a}{\hebtav}
+\DeclareTextCompositeCommand{\textHEBOenc}{L8U}{^^9b}{\textcent}
+\DeclareTextCompositeCommand{\textHEBOenc}{L8U}{^^9c}{\textstirling}
+\DeclareTextCompositeCommand{\textHEBOenc}{L8U}{^^9d}{\textyen}
+\DeclareTextCompositeCommand{\textHEBOenc}{L8U}{^^9e}{\textpeseta}
+\DeclareTextCompositeCommand{\textHEBOenc}{L8U}{^^9f}{\textflorin}
+\DeclareTextCompositeCommand{\textHEBOenc}{L8U}{^^a0}{\'{a}}
+\DeclareTextCompositeCommand{\textHEBOenc}{L8U}{^^a1}{\'{\i}}
+\DeclareTextCompositeCommand{\textHEBOenc}{L8U}{^^a2}{\'{o}}
+\DeclareTextCompositeCommand{\textHEBOenc}{L8U}{^^a3}{\'{u}}
+\DeclareTextCompositeCommand{\textHEBOenc}{L8U}{^^a4}{\~{n}}
+\DeclareTextCompositeCommand{\textHEBOenc}{L8U}{^^a5}{\~{N}}
+\DeclareTextCompositeCommand{\textHEBOenc}{L8U}{^^a6}{\textordfeminine}
+\DeclareTextCompositeCommand{\textHEBOenc}{L8U}{^^a7}{\textordmasculine}
+\DeclareTextCompositeCommand{\textHEBOenc}{L8U}{^^a8}{\textquestiondown}
+\DeclareTextCompositeCommand{\textHEBOenc}{L8U}{^^aa}{\textlogicalnot}
+\DeclareTextCompositeCommand{\textHEBOenc}{L8U}{^^ab}{\textonehalf}
+\DeclareTextCompositeCommand{\textHEBOenc}{L8U}{^^ac}{\textonequarter}
+\DeclareTextCompositeCommand{\textHEBOenc}{L8U}{^^ad}{\textexclamdown}
+\DeclareTextCompositeCommand{\textHEBOenc}{L8U}{^^ae}{\guillemotleft}
+\DeclareTextCompositeCommand{\textHEBOenc}{L8U}{^^af}{\guillemotright}
+\DeclareTextCompositeCommand{\textHEBOenc}{L8U}{^^e0}{\alpha}
+\DeclareTextCompositeCommand{\textHEBOenc}{L8U}{^^e1}{\ss}
+\DeclareTextCompositeCommand{\textHEBOenc}{L8U}{^^e2}{\Gamma}
+\DeclareTextCompositeCommand{\textHEBOenc}{L8U}{^^e3}{\pi}
+\DeclareTextCompositeCommand{\textHEBOenc}{L8U}{^^e4}{\Sigma}
+\DeclareTextCompositeCommand{\textHEBOenc}{L8U}{^^e5}{\sigma}
+\DeclareTextCompositeCommand{\textHEBOenc}{L8U}{^^e6}{\textmu}
+\DeclareTextCompositeCommand{\textHEBOenc}{L8U}{^^e7}{\tau}
+\DeclareTextCompositeCommand{\textHEBOenc}{L8U}{^^e8}{\Phi}
+\DeclareTextCompositeCommand{\textHEBOenc}{L8U}{^^e9}{\Theta}
+\DeclareTextCompositeCommand{\textHEBOenc}{L8U}{^^ea}{\Omega}
+\DeclareTextCompositeCommand{\textHEBOenc}{L8U}{^^eb}{\delta}
+\DeclareTextCompositeCommand{\textHEBOenc}{L8U}{^^ec}{\infty}
+\DeclareTextCompositeCommand{\textHEBOenc}{L8U}{^^ed}{\phi}
+\DeclareTextCompositeCommand{\textHEBOenc}{L8U}{^^ee}{\varepsilon}
+\DeclareTextCompositeCommand{\textHEBOenc}{L8U}{^^ef}{\cap}
+\DeclareTextCompositeCommand{\textHEBOenc}{L8U}{^^f0}{\equiv}
+\DeclareTextCompositeCommand{\textHEBOenc}{L8U}{^^f1}{\textpm}
+\DeclareTextCompositeCommand{\textHEBOenc}{L8U}{^^f2}{\ge}
+\DeclareTextCompositeCommand{\textHEBOenc}{L8U}{^^f3}{\le}
+%\DeclareTextCompositeCommand{\textHEBOenc}{L8U}{^^f4}{}
+%\DeclareTextCompositeCommand{\textHEBOenc}{L8U}{^^f5}{}
+\DeclareTextCompositeCommand{\textHEBOenc}{L8U}{^^f6}{\textdiv}
+\DeclareTextCompositeCommand{\textHEBOenc}{L8U}{^^f7}{\approx}
+\DeclareTextCompositeCommand{\textHEBOenc}{L8U}{^^f8}{\textdegree}
+\DeclareTextCompositeCommand{\textHEBOenc}{L8U}{^^f9}{\textperiodcentered}
+\DeclareTextCompositeCommand{\textHEBOenc}{L8U}{^^fa}{\textbullet}
+\DeclareTextCompositeCommand{\textHEBOenc}{L8U}{^^fb}{\textsurd}
+\DeclareTextCompositeCommand{\textHEBOenc}{L8U}{^^fc}{\textonesuperior}
+\DeclareTextCompositeCommand{\textHEBOenc}{L8U}{^^fd}{\texttwosuperior}
+\DeclareTextCompositeCommand{\textHEBOenc}{L8U}{^^fe}{\textblacksquare}
+\DeclareTextCompositeCommand{\textHEBOenc}{L8U}{^^ff}{\nobreakspace}
diff --git a/macros/latex/contrib/pdfx/l8ulat-penc.def b/macros/latex/contrib/pdfx/l8ulat-penc.def
new file mode 100644
index 0000000000..7bed49240c
--- /dev/null
+++ b/macros/latex/contrib/pdfx/l8ulat-penc.def
@@ -0,0 +1,1389 @@
+%%
+%% This is file `l8ulat-penc.def'
+%% Formerly known as `l8ulat.def'
+%%
+%% l8ulat-penc.def
+%%
+%% This is a hand-written file, based upon ot6enc.def
+%% with extensions for more composite characters.
+%%
+%% Copyright 2016 Ross Moore <ross.moore@mq.edu.au>
+%%
+\ProvidesFile{l8ulat-penc.def}
+ [2017/06/23 v0.5
+ Latin1–Latin9 conversion to UTF8 in XMP metadata]
+
+%
+% macro names and LICRs are provided elsewhere
+%
+% defines commands: \LIIXUmaplatinchars
+% \LIIXUcancelfontswitches
+%
+% defines parsers: \textLAT
+% \textLII
+% \textLIII
+% \textLIV
+% \textLTV
+% \textLVI
+% \textLVII
+% \textLIIX
+% \textLIX
+%
+
+\def\LIIXUmaplatinchars{%
+ \let\lat@en\liixu@checkemptyornext
+ \let\lat@nc\liixu@checknextchar
+}
+
+\def\LIIXUcancelfontswitches{%
+% disable mode switches and font commands
+% these should be handled already by hyperref
+ \def\textrm##1{##1}%
+ \def\textsf##1{##1}%
+ \def\texttt##1{##1}%
+ \def\textmd##1{##1}%
+ \def\textbf##1{##1}%
+ \def\textup##1{##1}%
+ \def\textit##1{##1}%
+ \def\textsl##1{##1}%
+ \def\textsc##1{##1}%
+ \def\emph##1{##1}%
+ \def\textnormal##1{##1}%
+ \let\rmfamily\empty
+ \let\rm\empty
+ \let\sffamily\empty
+ \let\sf\empty
+ \let\ttfamily\empty
+ \let\tt\empty
+ \let\mdseries\empty
+ \let\bfseries\empty
+ \let\bf\empty
+ \let\upshape\empty
+ \let\up\empty
+ \let\itshape\empty
+ \let\it\empty
+ \let\slshape\empty
+ \let\sl\empty
+ \let\scshape\empty
+ \let\sc\empty
+ \let\sbf\empty
+ \let\sbfsl\empty
+ \let\em\empty
+ \let\normalfont\empty
+}
+%
+
+% implement parsing of Latin-1 encoded input
+
+\DeclareTextCommand{\textLATstring}{L8U}[1]{\textLAT@ii#1\@empty\@empty\@empty\@empty}
+\DeclareTextCommand{\textLAT}{L8U}[1]{\textLATstring{#1}}
+\DeclareTextCommand{\textLATenc}{L8U}[1]{#1}
+
+\def\textLAT@i#1{\textLAT@ii#1}%
+\def\textLAT@ii#1#2\@empty{\ifx\@empty#2\@empty
+ \expandafter\@firstoftwo\else\expandafter\@secondoftwo\fi
+ {\textLATenc{#1}}{\textLATenc{#1}\textLAT@i#2\@empty}}
+
+
+% implement parsing of Latin-2 encoded input
+
+\DeclareTextCommand{\textLIIstring}{L8U}[1]{\textLII@ii#1\@empty\@empty\@empty\@empty}
+\DeclareTextCommand{\textLII}{L8U}[1]{\textLIIstring{#1}}
+\DeclareTextCommand{\textLIIenc}{L8U}[1]{#1}
+
+\def\textLII@i#1{\textLII@ii#1}%
+\def\textLII@ii#1#2\@empty{\ifx\@empty#2\@empty
+ \expandafter\@firstoftwo\else\expandafter\@secondoftwo\fi
+ {\textLIIenc{#1}}{\textLIIenc{#1}\textLII@i#2\@empty}}
+
+
+% implement parsing of Latin-3 encoded input
+
+\DeclareTextCommand{\textLIIIstring}{L8U}[1]{\textLIII@ii#1\@empty\@empty\@empty\@empty}
+\DeclareTextCommand{\textLIII}{L8U}[1]{\textLIIIstring{#1}}
+\DeclareTextCommand{\textLIIIenc}{L8U}[1]{#1}
+
+\def\textLIII@i#1{\textLIII@ii#1}%
+\def\textLIII@ii#1#2\@empty{\ifx\@empty#2\@empty
+ \expandafter\@firstoftwo\else\expandafter\@secondoftwo\fi
+ {\textLIIIenc{#1}}{\textLIIIenc{#1}\textLIII@i#2\@empty}}
+
+
+% implement parsing of Latin-4 encoded input
+
+\DeclareTextCommand{\textLIVstring}{L8U}[1]{\textLIV@ii#1\@empty\@empty\@empty\@empty}
+\DeclareTextCommand{\textLIV}{L8U}[1]{\textLIVstring{#1}}
+\DeclareTextCommand{\textLIVenc}{L8U}[1]{#1}
+
+\def\textLIV@i#1{\textLIV@ii#1}%
+\def\textLIV@ii#1#2\@empty{\ifx\@empty#2\@empty
+ \expandafter\@firstoftwo\else\expandafter\@secondoftwo\fi
+ {\textLIVenc{#1}}{\textLIVenc{#1}\textLIV@i#2\@empty}}
+
+
+% implement parsing of Latin-5 encoded input
+
+\DeclareTextCommand{\textLTVstring}{L8U}[1]{\textLTV@ii#1\@empty\@empty\@empty\@empty}
+\DeclareTextCommand{\textLTV}{L8U}[1]{\textLTVstring{#1}}
+\DeclareTextCommand{\textLTVenc}{L8U}[1]{#1}
+
+\def\textLTV@i#1{\textLTV@ii#1}%
+\def\textLTV@ii#1#2\@empty{\ifx\@empty#2\@empty
+ \expandafter\@firstoftwo\else\expandafter\@secondoftwo\fi
+ {\textLTVenc{#1}}{\textLTVenc{#1}\textLTV@i#2\@empty}}
+
+
+% implement parsing of Latin-6 encoded input
+
+\DeclareTextCommand{\textLVIstring}{L8U}[1]{\textLVI@ii#1\@empty\@empty\@empty\@empty}
+\DeclareTextCommand{\textLVI}{L8U}[1]{\textLVIstring{#1}}
+\DeclareTextCommand{\textLVIenc}{L8U}[1]{#1}
+
+\def\textLVI@i#1{\textLVI@ii#1}%
+\def\textLVI@ii#1#2\@empty{\ifx\@empty#2\@empty
+ \expandafter\@firstoftwo\else\expandafter\@secondoftwo\fi
+ {\textLVIenc{#1}}{\textLVIenc{#1}\textLVI@i#2\@empty}}
+
+
+% implement parsing of Latin-7 encoded input
+
+\DeclareTextCommand{\textLVIIstring}{L8U}[1]{\textLVII@ii#1\@empty\@empty\@empty\@empty}
+\DeclareTextCommand{\textLVII}{L8U}[1]{\textLVIIstring{#1}}
+\DeclareTextCommand{\textLVIIenc}{L8U}[1]{#1}
+
+\def\textLVII@i#1{\textLVII@ii#1}%
+\def\textLVII@ii#1#2\@empty{\ifx\@empty#2\@empty
+ \expandafter\@firstoftwo\else\expandafter\@secondoftwo\fi
+ {\textLVIIenc{#1}}{\textLVIIenc{#1}\textLVII@i#2\@empty}}
+
+
+% implement parsing of Latin-8 encoded input
+
+\DeclareTextCommand{\textLIIXstring}{L8U}[1]{\textLIIX@ii#1\@empty\@empty\@empty\@empty}
+\DeclareTextCommand{\textLIIX}{L8U}[1]{\textLIIXstring{#1}}
+\DeclareTextCommand{\textLIIXenc}{L8U}[1]{#1}
+
+\def\textLIIX@i#1{\textLIIX@ii#1}%
+\def\textLIIX@ii#1#2\@empty{\ifx\@empty#2\@empty
+ \expandafter\@firstoftwo\else\expandafter\@secondoftwo\fi
+ {\textLIIXenc{#1}}{\textLIIXenc{#1}\textLIIX@i#2\@empty}}
+
+
+% implement parsing of Latin-9 encoded input
+
+\DeclareTextCommand{\textLIXstring}{L8U}[1]{\textLIX@ii#1\@empty\@empty\@empty\@empty}
+\DeclareTextCommand{\textLIX}{L8U}[1]{\textLIXstring{#1}}
+\DeclareTextCommand{\textLIXenc}{L8U}[1]{#1}
+
+\def\textLIX@i#1{\textLIX@ii#1}%
+\def\textLIX@ii#1#2\@empty{\ifx\@empty#2\@empty
+ \expandafter\@firstoftwo\else\expandafter\@secondoftwo\fi
+ {\textLIXenc{#1}}{\textLIXenc{#1}\textLIX@i#2\@empty}}
+
+
+\obeyspaces
+\DeclareTextCompositeCommand{\textLATenc}{L8U}{ }{\space}%
+\DeclareTextCommand{\textLATgobblespace}{L8U}{\textLAT@i}
+\DeclareTextCompositeCommand{\textLATgobblespace}{L8U}{ }{\textLAT@i}%
+\DeclareTextCompositeCommand{\textLIIenc}{L8U}{ }{\space}%
+\DeclareTextCommand{\textLIIgobblespace}{L8U}{\textLII@i}
+\DeclareTextCompositeCommand{\textLIIgobblespace}{L8U}{ }{\textLII@i}%
+\DeclareTextCompositeCommand{\textLIIIenc}{L8U}{ }{\space}%
+\DeclareTextCommand{\textLIIIgobblespace}{L8U}{\textLIII@i}
+\DeclareTextCompositeCommand{\textLIIIgobblespace}{L8U}{ }{\textLIII@i}%
+\DeclareTextCompositeCommand{\textLIVenc}{L8U}{ }{\space}%
+\DeclareTextCommand{\textLIVgobblespace}{L8U}{\textLIV@i}
+\DeclareTextCompositeCommand{\textLIVgobblespace}{L8U}{ }{\textLIV@i}%
+\DeclareTextCompositeCommand{\textLTVenc}{L8U}{ }{\space}%
+\DeclareTextCommand{\textLTVgobblespace}{L8U}{\textLTV@i}
+\DeclareTextCompositeCommand{\textLTVgobblespace}{L8U}{ }{\textLTV@i}%
+\DeclareTextCompositeCommand{\textLVIenc}{L8U}{ }{\space}%
+\DeclareTextCommand{\textLVIgobblespace}{L8U}{\textLVI@i}
+\DeclareTextCompositeCommand{\textLVIgobblespace}{L8U}{ }{\textLVI@i}%
+\DeclareTextCommand{\textLVIIgobblespace}{L8U}{\textLVII@i}
+\DeclareTextCompositeCommand{\textLVIIenc}{L8U}{ }{\space}%
+\DeclareTextCompositeCommand{\textLVIIgobblespace}{L8U}{ }{\textLVII@i}%
+\DeclareTextCompositeCommand{\textLIIXenc}{L8U}{ }{\space}%
+\DeclareTextCommand{\textLIIXgobblespace}{L8U}{\textLIIX@i}
+\DeclareTextCompositeCommand{\textLIIXgobblespace}{L8U}{ }{\textLIIX@i}%
+\DeclareTextCompositeCommand{\textLIXenc}{L8U}{ }{\space}%
+\DeclareTextCommand{\textLIXgobblespace}{L8U}{\textLIX@i}
+\DeclareTextCompositeCommand{\textLIXgobblespace}{L8U}{ }{\textLIX@i}%
+\catcode`\ 10
+
+
+\DeclareTextCompositeCommand{\textLATenc}{L8U}{\-}{}
+\DeclareTextCompositeCommand{\textLATenc}{L8U}{~}{ }% no break space
+\DeclareTextCompositeCommand{\textLATenc}{L8U}{\{}{\textbraceleft}%
+\DeclareTextCompositeCommand{\textLATenc}{L8U}{\}}{\textbraceright}%
+\DeclareTextCompositeCommand{\textLATenc}{L8U}{\$}{\textdollar}%
+\DeclareTextCompositeCommand{\textLATenc}{L8U}{\%}{\textpercent}%
+\DeclareTextCompositeCommand{\textLATenc}{L8U}{\#}{\texthash}%
+\DeclareTextCompositeCommand{\textLATenc}{L8U}{\&}{\textand}%
+\DeclareTextCompositeCommand{\textLATenc}{L8U}{"}{”}%
+
+\DeclareTextCompositeCommand{\textLIIenc}{L8U}{\-}{}
+\DeclareTextCompositeCommand{\textLIIenc}{L8U}{~}{ }% no break space
+\DeclareTextCompositeCommand{\textLIIenc}{L8U}{\{}{\textbraceleft}%
+\DeclareTextCompositeCommand{\textLIIenc}{L8U}{\}}{\textbraceright}%
+\DeclareTextCompositeCommand{\textLIIenc}{L8U}{\$}{\textdollar}%
+\DeclareTextCompositeCommand{\textLIIenc}{L8U}{\%}{\textpercent}%
+\DeclareTextCompositeCommand{\textLIIenc}{L8U}{\#}{\texthash}%
+\DeclareTextCompositeCommand{\textLIIenc}{L8U}{\&}{\textand}%
+\DeclareTextCompositeCommand{\textLIIenc}{L8U}{"}{”}%
+
+\DeclareTextCompositeCommand{\textLIIIenc}{L8U}{\-}{}
+\DeclareTextCompositeCommand{\textLIIIenc}{L8U}{~}{ }% no break space
+\DeclareTextCompositeCommand{\textLIIIenc}{L8U}{\{}{\textbraceleft}%
+\DeclareTextCompositeCommand{\textLIIIenc}{L8U}{\}}{\textbraceright}%
+\DeclareTextCompositeCommand{\textLIIIenc}{L8U}{\$}{\textdollar}%
+\DeclareTextCompositeCommand{\textLIIIenc}{L8U}{\%}{\textpercent}%
+\DeclareTextCompositeCommand{\textLIIIenc}{L8U}{\#}{\texthash}%
+\DeclareTextCompositeCommand{\textLIIIenc}{L8U}{\&}{\textand}%
+\DeclareTextCompositeCommand{\textLIIIenc}{L8U}{"}{”}%
+
+\DeclareTextCompositeCommand{\textLIVenc}{L8U}{\-}{}
+\DeclareTextCompositeCommand{\textLIVenc}{L8U}{~}{ }% no break space
+\DeclareTextCompositeCommand{\textLIVenc}{L8U}{\{}{\textbraceleft}%
+\DeclareTextCompositeCommand{\textLIVenc}{L8U}{\}}{\textbraceright}%
+\DeclareTextCompositeCommand{\textLIVenc}{L8U}{\$}{\textdollar}%
+\DeclareTextCompositeCommand{\textLIVenc}{L8U}{\%}{\textpercent}%
+\DeclareTextCompositeCommand{\textLIVenc}{L8U}{\#}{\texthash}%
+\DeclareTextCompositeCommand{\textLIVenc}{L8U}{\&}{\textand}%
+\DeclareTextCompositeCommand{\textLIVenc}{L8U}{"}{”}%
+
+\DeclareTextCompositeCommand{\textLTVenc}{L8U}{\-}{}
+\DeclareTextCompositeCommand{\textLTVenc}{L8U}{~}{ }% no break space
+\DeclareTextCompositeCommand{\textLTVenc}{L8U}{\{}{\textbraceleft}%
+\DeclareTextCompositeCommand{\textLTVenc}{L8U}{\}}{\textbraceright}%
+\DeclareTextCompositeCommand{\textLTVenc}{L8U}{\$}{\textdollar}%
+\DeclareTextCompositeCommand{\textLTVenc}{L8U}{\%}{\textpercent}%
+\DeclareTextCompositeCommand{\textLTVenc}{L8U}{\#}{\texthash}%
+\DeclareTextCompositeCommand{\textLTVenc}{L8U}{\&}{\textand}%
+\DeclareTextCompositeCommand{\textLTVenc}{L8U}{"}{”}%
+
+\DeclareTextCompositeCommand{\textLVIenc}{L8U}{\-}{}
+\DeclareTextCompositeCommand{\textLVIenc}{L8U}{~}{ }% no break space
+\DeclareTextCompositeCommand{\textLVIenc}{L8U}{\{}{\textbraceleft}%
+\DeclareTextCompositeCommand{\textLVIenc}{L8U}{\}}{\textbraceright}%
+\DeclareTextCompositeCommand{\textLVIenc}{L8U}{\$}{\textdollar}%
+\DeclareTextCompositeCommand{\textLVIenc}{L8U}{\%}{\textpercent}%
+\DeclareTextCompositeCommand{\textLVIenc}{L8U}{\#}{\texthash}%
+\DeclareTextCompositeCommand{\textLVIenc}{L8U}{\&}{\textand}%
+\DeclareTextCompositeCommand{\textLVIenc}{L8U}{"}{”}%
+
+\DeclareTextCompositeCommand{\textLVIIenc}{L8U}{\-}{}
+\DeclareTextCompositeCommand{\textLVIIenc}{L8U}{~}{ }% no break space
+\DeclareTextCompositeCommand{\textLVIIenc}{L8U}{\{}{\textbraceleft}%
+\DeclareTextCompositeCommand{\textLVIIenc}{L8U}{\}}{\textbraceright}%
+\DeclareTextCompositeCommand{\textLVIIenc}{L8U}{\$}{\textdollar}%
+\DeclareTextCompositeCommand{\textLVIIenc}{L8U}{\%}{\textpercent}%
+\DeclareTextCompositeCommand{\textLVIIenc}{L8U}{\#}{\texthash}%
+\DeclareTextCompositeCommand{\textLVIIenc}{L8U}{\&}{\textand}%
+\DeclareTextCompositeCommand{\textLVIIenc}{L8U}{"}{”}%
+
+\DeclareTextCompositeCommand{\textLIIXenc}{L8U}{\-}{}
+\DeclareTextCompositeCommand{\textLIIXenc}{L8U}{~}{ }% no break space
+\DeclareTextCompositeCommand{\textLIIXenc}{L8U}{\{}{\textbraceleft}%
+\DeclareTextCompositeCommand{\textLIIXenc}{L8U}{\}}{\textbraceright}%
+\DeclareTextCompositeCommand{\textLIIXenc}{L8U}{\$}{\textdollar}%
+\DeclareTextCompositeCommand{\textLIIXenc}{L8U}{\%}{\textpercent}%
+\DeclareTextCompositeCommand{\textLIIXenc}{L8U}{\#}{\texthash}%
+\DeclareTextCompositeCommand{\textLIIXenc}{L8U}{\&}{\textand}%
+\DeclareTextCompositeCommand{\textLIIXenc}{L8U}{"}{”}%
+
+\DeclareTextCompositeCommand{\textLIXenc}{L8U}{\-}{}
+\DeclareTextCompositeCommand{\textLIXenc}{L8U}{~}{ }% no break space
+\DeclareTextCompositeCommand{\textLIXenc}{L8U}{\{}{\textbraceleft}%
+\DeclareTextCompositeCommand{\textLIXenc}{L8U}{\}}{\textbraceright}%
+\DeclareTextCompositeCommand{\textLIXenc}{L8U}{\$}{\textdollar}%
+\DeclareTextCompositeCommand{\textLIXenc}{L8U}{\%}{\textpercent}%
+\DeclareTextCompositeCommand{\textLIXenc}{L8U}{\#}{\texthash}%
+\DeclareTextCompositeCommand{\textLIXenc}{L8U}{\&}{\textand}%
+\DeclareTextCompositeCommand{\textLIXenc}{L8U}{"}{”}%
+
+
+
+% multi-character punctuation
+
+\DeclareTextCompositeCommand{\textLATenc}{L8U}{`}{\lat@en{`}{‘}{\lat@nc{`}{“}{‘}}}
+\DeclareTextCompositeCommand{\textLATenc}{L8U}{'}{\lat@en{'}{’}{\lat@nc{'}{”}{’}}}
+\DeclareTextCompositeCommand{\textLATenc}{L8U}{-}{\lat@en{-}{-}% - or -- or ---
+ {\lat@nc{-}{\lat@en{-}{–}{\lat@nc{-}{—}{–}}}{-}}}%
+\DeclareTextCompositeCommand{\textLATenc}{L8U}{.}{\lat@en{.}{.}% . or .. or ...
+ {\lat@nc{.}{\lat@en{.}{..}{\lat@nc{.}{…}{..}}}{.}}}
+%\DeclareTextCompositeCommand{\textLATenc}{L8U}{<}{\lat@en{<}{}{\lat@nc{<}{«}{«}}}
+%\DeclareTextCompositeCommand{\textLATenc}{L8U}{>}{\lat@en{>}{}{\lat@nc{<}{»}{»}}}
+
+\DeclareTextCompositeCommand{\textLIIenc}{L8U}{`}{\lat@en{`}{‘}{\lat@nc{`}{“}{‘}}}
+\DeclareTextCompositeCommand{\textLIIenc}{L8U}{'}{\lat@en{'}{’}{\lat@nc{'}{”}{’}}}
+\DeclareTextCompositeCommand{\textLIIenc}{L8U}{-}{\lat@en{-}{-}% - or -- or ---
+ {\lat@nc{-}{\lat@en{-}{–}{\lat@nc{-}{—}{–}}}{-}}}%
+\DeclareTextCompositeCommand{\textLIIenc}{L8U}{.}{\lat@en{.}{.}% . or .. or ...
+ {\lat@nc{.}{\lat@en{.}{..}{\lat@nc{.}{…}{..}}}{.}}}
+%\DeclareTextCompositeCommand{\textLIIenc}{L8U}{<}{\lat@en{<}{}{\lat@nc{<}{«}{«}}}
+%\DeclareTextCompositeCommand{\textLIIenc}{L8U}{>}{\lat@en{>}{}{\lat@nc{<}{»}{»}}}
+
+\DeclareTextCompositeCommand{\textLIIIenc}{L8U}{`}{\lat@en{`}{‘}{\lat@nc{`}{“}{‘}}}
+\DeclareTextCompositeCommand{\textLIIIenc}{L8U}{'}{\lat@en{'}{’}{\lat@nc{'}{”}{’}}}
+\DeclareTextCompositeCommand{\textLIIIenc}{L8U}{-}{\lat@en{-}{-}% - or -- or ---
+ {\lat@nc{-}{\lat@en{-}{–}{\lat@nc{-}{—}{–}}}{-}}}%
+\DeclareTextCompositeCommand{\textLIIIenc}{L8U}{.}{\lat@en{.}{.}% . or .. or ...
+ {\lat@nc{.}{\lat@en{.}{..}{\lat@nc{.}{…}{..}}}{.}}}
+%\DeclareTextCompositeCommand{\textLIIIenc}{L8U}{<}{\lat@en{<}{}{\lat@nc{<}{«}{«}}}
+%\DeclareTextCompositeCommand{\textLIIIenc}{L8U}{>}{\lat@en{>}{}{\lat@nc{<}{»}{»}}}
+
+\DeclareTextCompositeCommand{\textLIVenc}{L8U}{`}{\lat@en{`}{‘}{\lat@nc{`}{“}{‘}}}
+\DeclareTextCompositeCommand{\textLIVenc}{L8U}{'}{\lat@en{'}{’}{\lat@nc{'}{”}{’}}}
+\DeclareTextCompositeCommand{\textLIVenc}{L8U}{-}{\lat@en{-}{-}% - or -- or ---
+ {\lat@nc{-}{\lat@en{-}{–}{\lat@nc{-}{—}{–}}}{-}}}%
+\DeclareTextCompositeCommand{\textLIVenc}{L8U}{.}{\lat@en{.}{.}% . or .. or ...
+ {\lat@nc{.}{\lat@en{.}{..}{\lat@nc{.}{…}{..}}}{.}}}
+%\DeclareTextCompositeCommand{\textLIVenc}{L8U}{<}{\lat@en{<}{}{\lat@nc{<}{«}{«}}}
+%\DeclareTextCompositeCommand{\textLIVenc}{L8U}{>}{\lat@en{>}{}{\lat@nc{<}{»}{»}}}
+
+\DeclareTextCompositeCommand{\textLTVenc}{L8U}{`}{\lat@en{`}{‘}{\lat@nc{`}{“}{‘}}}
+\DeclareTextCompositeCommand{\textLTVenc}{L8U}{'}{\lat@en{'}{’}{\lat@nc{'}{”}{’}}}
+\DeclareTextCompositeCommand{\textLTVenc}{L8U}{-}{\lat@en{-}{-}% - or -- or ---
+ {\lat@nc{-}{\lat@en{-}{–}{\lat@nc{-}{—}{–}}}{-}}}%
+\DeclareTextCompositeCommand{\textLTVenc}{L8U}{.}{\lat@en{.}{.}% . or .. or ...
+ {\lat@nc{.}{\lat@en{.}{..}{\lat@nc{.}{…}{..}}}{.}}}
+%\DeclareTextCompositeCommand{\textLTVenc}{L8U}{<}{\lat@en{<}{}{\lat@nc{<}{«}{«}}}
+%\DeclareTextCompositeCommand{\textLTVenc}{L8U}{>}{\lat@en{>}{}{\lat@nc{<}{»}{»}}}
+
+\DeclareTextCompositeCommand{\textLVIenc}{L8U}{`}{\lat@en{`}{‘}{\lat@nc{`}{“}{‘}}}
+\DeclareTextCompositeCommand{\textLVIenc}{L8U}{'}{\lat@en{'}{’}{\lat@nc{'}{”}{’}}}
+\DeclareTextCompositeCommand{\textLVIenc}{L8U}{-}{\lat@en{-}{-}% - or -- or ---
+ {\lat@nc{-}{\lat@en{-}{–}{\lat@nc{-}{—}{–}}}{-}}}%
+\DeclareTextCompositeCommand{\textLVIenc}{L8U}{.}{\lat@en{.}{.}% . or .. or ...
+ {\lat@nc{.}{\lat@en{.}{..}{\lat@nc{.}{…}{..}}}{.}}}
+%\DeclareTextCompositeCommand{\textLVIenc}{L8U}{<}{\lat@en{<}{}{\lat@nc{<}{«}{«}}}
+%\DeclareTextCompositeCommand{\textLVIenc}{L8U}{>}{\lat@en{>}{}{\lat@nc{<}{»}{»}}}
+
+\DeclareTextCompositeCommand{\textLVIIenc}{L8U}{`}{\lat@en{`}{‘}{\lat@nc{`}{“}{‘}}}
+\DeclareTextCompositeCommand{\textLVIIenc}{L8U}{'}{\lat@en{'}{’}{\lat@nc{'}{”}{’}}}
+\DeclareTextCompositeCommand{\textLVIIenc}{L8U}{-}{\lat@en{-}{-}% - or -- or ---
+ {\lat@nc{-}{\lat@en{-}{–}{\lat@nc{-}{—}{–}}}{-}}}%
+\DeclareTextCompositeCommand{\textLVIIenc}{L8U}{.}{\lat@en{.}{.}% . or .. or ...
+ {\lat@nc{.}{\lat@en{.}{..}{\lat@nc{.}{…}{..}}}{.}}}
+%\DeclareTextCompositeCommand{\textLVIIenc}{L8U}{<}{\lat@en{<}{}{\lat@nc{<}{«}{«}}}
+%\DeclareTextCompositeCommand{\textLVIIenc}{L8U}{>}{\lat@en{>}{}{\lat@nc{<}{»}{»}}}
+
+\DeclareTextCompositeCommand{\textLIIXenc}{L8U}{`}{\lat@en{`}{‘}{\lat@nc{`}{“}{‘}}}
+\DeclareTextCompositeCommand{\textLIIXenc}{L8U}{'}{\lat@en{'}{’}{\lat@nc{'}{”}{’}}}
+\DeclareTextCompositeCommand{\textLIIXenc}{L8U}{-}{\lat@en{-}{-}% - or -- or ---
+ {\lat@nc{-}{\lat@en{-}{–}{\lat@nc{-}{—}{–}}}{-}}}%
+\DeclareTextCompositeCommand{\textLIIXenc}{L8U}{.}{\lat@en{.}{.}% . or .. or ...
+ {\lat@nc{.}{\lat@en{.}{..}{\lat@nc{.}{…}{..}}}{.}}}
+%\DeclareTextCompositeCommand{\textLIIXenc}{L8U}{<}{\lat@en{<}{}{\lat@nc{<}{«}{«}}}
+%\DeclareTextCompositeCommand{\textLIIXenc}{L8U}{>}{\lat@en{>}{}{\lat@nc{<}{»}{»}}}
+
+\DeclareTextCompositeCommand{\textLIXenc}{L8U}{`}{\lat@en{`}{‘}{\lat@nc{`}{“}{‘}}}
+\DeclareTextCompositeCommand{\textLIXenc}{L8U}{'}{\lat@en{'}{’}{\lat@nc{'}{”}{’}}}
+\DeclareTextCompositeCommand{\textLIXenc}{L8U}{-}{\lat@en{-}{-}% - or -- or ---
+ {\lat@nc{-}{\lat@en{-}{–}{\lat@nc{-}{—}{–}}}{-}}}%
+\DeclareTextCompositeCommand{\textLIXenc}{L8U}{.}{\lat@en{.}{.}% . or .. or ...
+ {\lat@nc{.}{\lat@en{.}{..}{\lat@nc{.}{…}{..}}}{.}}}
+%\DeclareTextCompositeCommand{\textLIXenc}{L8U}{<}{\lat@en{<}{}{\lat@nc{<}{«}{«}}}
+%\DeclareTextCompositeCommand{\textLIXenc}{L8U}{>}{\lat@en{>}{}{\lat@nc{<}{»}{»}}}
+
+
+
+
+% C0 Control Set
+%
+%%\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^00}{}% NUL null
+%%\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^01}{}% SOH Start of Heading
+%%\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^02}{}% STX Start of Text
+%%\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^03}{}% ETX End of Text
+%%\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^04}{}% EOT End of Transmission
+%%\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^05}{}% ENQ Enquiry
+%%\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^06}{}% ACK Acknowledge
+%%\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^07}{}% BEL Bell
+%%\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^08}{}% BS backspace
+%%\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^09}{}% HT horizontal tab
+%%\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^0a}{}% LF line-feed
+%%\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^0b}{}% VT vertical tab
+%%\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^0c}{}% FF form-feed
+%%\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^0d}{}% CR carriage return
+%%\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^0e}{}% SO Shift Out
+%%\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^0f}{}% SI Shift In
+%%\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^10}{}% DLE Data Link Escape
+%%\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^11}{}% DC1 Device Control 1 (XON)
+%%\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^12}{}% DC2 Device Control 2
+%%\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^13}{}% DC3 Device Control 3 (XOFF)
+%%\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^14}{}% DC4 Device Control 4
+%%\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^15}{}% NAK negative acknowledge
+%%\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^16}{}% SYN Synchronous idle
+%%\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^17}{}% ETB End of Transmission Block
+%%\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^18}{}% CAN Cancel
+%%\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^19}{}% EM End of Medium
+%%\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^1a}{}% SUB Substitute
+%%\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^1b}{}% ESC escape
+%%\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^1c}{}% FS File Separator
+%%\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^1d}{}% GS Group Separator
+%%\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^1e}{}% RS Record Separator
+%%\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^1f}{}% US Unit Separator
+
+%%\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^20}{}% SP space
+%%\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^7f}{}% DEL delete
+
+
+
+% C1 Control Set
+%
+%%\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^80}{}% PAD -- unused -- Padding
+%%\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^81}{}% HOP -- unused -- High Octet preset
+%%\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^82}{}% BPH Break permitted here
+%%\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^83}{}% NBH No break here
+%%\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^84}{}% IND -- unused -- Index
+%%\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^85}{}% NEL Next line
+%%\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^86}{}% SSA Start of selected area
+%%\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^87}{}% ESA End of selected area
+%%\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^88}{}% HTS Character Tabulation Set
+%%\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^89}{}% HTJ Character Tabulation with Justification
+%%\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^8a}{}% VTS Line Tabulation Set
+%%\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^8b}{}% PLD Partial Line Forward/Down
+%%\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^8c}{}% PLU Partial Line Backward/Up
+%%\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^8d}{}% RI Reverse Line Feed
+%%\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^8e}{}% SS2 Single Shift Two
+%%\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^8f}{}% SS3 Single Shift Three
+%%\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^90}{}% DCS Device control string
+%%\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^91}{}% PU1 Private Use 1
+%%\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^92}{}% PU2 Private Use 2
+%%\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^93}{}% STS Set Transmit state
+%%\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^94}{}% CCH Cancel
+%%\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^95}{}% MW Message waiting
+%%\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^96}{}% SPA Start of Guarded/Protected area
+%%\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^97}{}% EPA End of Guarded/Protected area
+%%\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^98}{}% SOS Start of string
+%%\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^99}{}% SGCI -- unused --
+%%\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^9a}{}% SCI single char introducer
+%%\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^9b}{}% CSI control sequence introducer
+%%\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^9c}{}% ST string terminator
+%%\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^9d}{}% OSC operating system command
+%%\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^9e}{}% PM privacy message
+%%\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^9f}{}% APC application program command
+
+
+
+% ISO-8859-1: Latin1 encoding: Western European CP-28591
+%
+\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^a0}{ }
+\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^a1}{¡}
+\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^a2}{¢}
+\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^a3}{£}
+\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^a4}{¤}
+\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^a5}{¥}
+\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^a6}{¦}
+\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^a7}{§}
+\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^a8}{¨}
+\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^a9}{©}
+\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^aa}{ª}
+\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^ab}{«}
+\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^ac}{¬}
+\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^ad}{­}
+\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^ae}{®}
+\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^af}{¯}
+\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^b0}{°}
+\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^b1}{±}
+\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^b2}{²}
+\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^b3}{³}
+\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^b4}{´}
+\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^b5}{µ}
+\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^b6}{¶}
+\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^b7}{·}
+\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^b8}{¸}
+\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^b9}{¹}
+\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^ba}{º}
+\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^bb}{»}
+\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^bc}{¼}
+\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^bd}{½}
+\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^be}{¾}
+\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^bf}{¿}
+
+\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^c0}{À}
+\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^c1}{Á}
+\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^c2}{Â}
+\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^c3}{Ã}
+\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^c4}{Ä}
+\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^c5}{Å}
+\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^c6}{Æ}
+\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^c7}{Ç}
+\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^c8}{È}
+\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^c9}{É}
+\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^ca}{Ê}
+\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^cb}{Ë}
+\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^cc}{Ì}
+\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^cd}{Í}
+\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^ce}{Î}
+\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^cf}{Ï}
+\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^d0}{Ð}
+\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^d1}{Ñ}
+\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^d2}{Ò}
+\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^d3}{Ó}
+\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^d4}{Ô}
+\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^d5}{Õ}
+\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^d6}{Ö}
+\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^d7}{×}
+\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^d8}{Ø}
+\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^d9}{Ù}
+\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^da}{Ú}
+\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^db}{Û}
+\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^dc}{Ü}
+\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^dd}{Ý}
+\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^de}{Þ}
+\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^df}{ß}
+
+\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^e0}{à}
+\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^e1}{á}
+\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^e2}{â}
+\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^e3}{ã}
+\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^e4}{ä}
+\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^e5}{å}
+\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^e6}{æ}
+\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^e7}{ç}
+\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^e8}{è}
+\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^e9}{é}
+\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^ea}{ê}
+\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^eb}{ë}
+\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^ec}{ì}
+\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^ed}{í}
+\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^ee}{î}
+\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^ef}{ï}
+\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^f0}{ð}
+\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^f1}{ñ}
+\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^f2}{ò}
+\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^f3}{ó}
+\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^f4}{ô}
+\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^f5}{õ}
+\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^f6}{ö}
+\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^f7}{÷}
+\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^f8}{ø}
+\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^f9}{ù}
+\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^fa}{ú}
+\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^fb}{û}
+\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^fc}{ü}
+\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^fd}{ý}
+\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^fe}{þ}
+\DeclareTextCompositeCommand{\textLATenc}{L8U}{^^ff}{ÿ}
+
+
+% ISO-8859-2: Latin2 encoding: Middle European CP-28592
+%
+\DeclareTextCompositeCommand{\textLIIenc}{L8U}{^^a0}{ }
+\DeclareTextCompositeCommand{\textLIIenc}{L8U}{^^a1}{Ą}% Ux0104
+\DeclareTextCompositeCommand{\textLIIenc}{L8U}{^^a2}{˘}% Ux02D8
+\DeclareTextCompositeCommand{\textLIIenc}{L8U}{^^a3}{Ł}% Ux0141
+\DeclareTextCompositeCommand{\textLIIenc}{L8U}{^^a4}{¤}%
+\DeclareTextCompositeCommand{\textLIIenc}{L8U}{^^a5}{Ľ}% Ux013D
+\DeclareTextCompositeCommand{\textLIIenc}{L8U}{^^a6}{Ś}% Ux015A
+\DeclareTextCompositeCommand{\textLIIenc}{L8U}{^^a7}{§}%
+\DeclareTextCompositeCommand{\textLIIenc}{L8U}{^^a8}{¨}%
+\DeclareTextCompositeCommand{\textLIIenc}{L8U}{^^a9}{Š}% Ux0160
+\DeclareTextCompositeCommand{\textLIIenc}{L8U}{^^aa}{Ş}% Ux015E
+\DeclareTextCompositeCommand{\textLIIenc}{L8U}{^^ab}{Ť}% Ux0164
+\DeclareTextCompositeCommand{\textLIIenc}{L8U}{^^ac}{Ź}% Ux0179
+\DeclareTextCompositeCommand{\textLIIenc}{L8U}{^^ad}{­}
+\DeclareTextCompositeCommand{\textLIIenc}{L8U}{^^ae}{Ž}% Ux017D
+\DeclareTextCompositeCommand{\textLIIenc}{L8U}{^^af}{Ż}% Ux017B
+\DeclareTextCompositeCommand{\textLIIenc}{L8U}{^^b0}{°}
+\DeclareTextCompositeCommand{\textLIIenc}{L8U}{^^b1}{ą}% Ux0105
+\DeclareTextCompositeCommand{\textLIIenc}{L8U}{^^b2}{˛}% Ux02DB
+\DeclareTextCompositeCommand{\textLIIenc}{L8U}{^^b3}{ł}% Ux0142
+\DeclareTextCompositeCommand{\textLIIenc}{L8U}{^^b4}{´}
+\DeclareTextCompositeCommand{\textLIIenc}{L8U}{^^b5}{ľ}% Ux013E
+\DeclareTextCompositeCommand{\textLIIenc}{L8U}{^^b6}{ś}% Ux015B
+\DeclareTextCompositeCommand{\textLIIenc}{L8U}{^^b7}{ˇ}% Ux02C7
+\DeclareTextCompositeCommand{\textLIIenc}{L8U}{^^b8}{¸}
+\DeclareTextCompositeCommand{\textLIIenc}{L8U}{^^b9}{š}% Ux0161
+\DeclareTextCompositeCommand{\textLIIenc}{L8U}{^^ba}{ş}% Ux015F
+\DeclareTextCompositeCommand{\textLIIenc}{L8U}{^^bb}{ť}% Ux0165
+\DeclareTextCompositeCommand{\textLIIenc}{L8U}{^^bc}{ź}% Ux017A
+\DeclareTextCompositeCommand{\textLIIenc}{L8U}{^^bd}{˝}% Ux02DD
+\DeclareTextCompositeCommand{\textLIIenc}{L8U}{^^be}{ž}% Ux017E
+\DeclareTextCompositeCommand{\textLIIenc}{L8U}{^^bf}{ż}% Ux017C
+
+\DeclareTextCompositeCommand{\textLIIenc}{L8U}{^^c0}{Ŕ}% Ux0154
+\DeclareTextCompositeCommand{\textLIIenc}{L8U}{^^c1}{Á}
+\DeclareTextCompositeCommand{\textLIIenc}{L8U}{^^c2}{Â}
+\DeclareTextCompositeCommand{\textLIIenc}{L8U}{^^c3}{Ă}% Ux0102
+\DeclareTextCompositeCommand{\textLIIenc}{L8U}{^^c4}{Ä}
+\DeclareTextCompositeCommand{\textLIIenc}{L8U}{^^c5}{Ĺ}% Ux0139
+\DeclareTextCompositeCommand{\textLIIenc}{L8U}{^^c6}{Ć}% Ux0106
+\DeclareTextCompositeCommand{\textLIIenc}{L8U}{^^c7}{Ç}
+\DeclareTextCompositeCommand{\textLIIenc}{L8U}{^^c8}{Č}% Ux010C
+\DeclareTextCompositeCommand{\textLIIenc}{L8U}{^^c9}{É}
+\DeclareTextCompositeCommand{\textLIIenc}{L8U}{^^ca}{Ę}% Ux0118
+\DeclareTextCompositeCommand{\textLIIenc}{L8U}{^^cb}{Ë}
+\DeclareTextCompositeCommand{\textLIIenc}{L8U}{^^cc}{Ě}% Ux011A
+\DeclareTextCompositeCommand{\textLIIenc}{L8U}{^^cd}{Í}
+\DeclareTextCompositeCommand{\textLIIenc}{L8U}{^^ce}{Î}
+\DeclareTextCompositeCommand{\textLIIenc}{L8U}{^^cf}{Ď}% Ux010E
+\DeclareTextCompositeCommand{\textLIIenc}{L8U}{^^d0}{Đ}% Ux0110
+\DeclareTextCompositeCommand{\textLIIenc}{L8U}{^^d1}{Ń}% Ux0143
+\DeclareTextCompositeCommand{\textLIIenc}{L8U}{^^d2}{Ň}% Ux0147
+\DeclareTextCompositeCommand{\textLIIenc}{L8U}{^^d3}{Ó}
+\DeclareTextCompositeCommand{\textLIIenc}{L8U}{^^d4}{Ô}
+\DeclareTextCompositeCommand{\textLIIenc}{L8U}{^^d5}{Ő}% Ux0150
+\DeclareTextCompositeCommand{\textLIIenc}{L8U}{^^d6}{Ö}
+\DeclareTextCompositeCommand{\textLIIenc}{L8U}{^^d7}{×}
+\DeclareTextCompositeCommand{\textLIIenc}{L8U}{^^d8}{Ř}% Ux0158
+\DeclareTextCompositeCommand{\textLIIenc}{L8U}{^^d9}{Ů}% Ux016E
+\DeclareTextCompositeCommand{\textLIIenc}{L8U}{^^da}{Ú}
+\DeclareTextCompositeCommand{\textLIIenc}{L8U}{^^db}{Ű}% Ux0170
+\DeclareTextCompositeCommand{\textLIIenc}{L8U}{^^dc}{Ü}
+\DeclareTextCompositeCommand{\textLIIenc}{L8U}{^^dd}{Ý}
+\DeclareTextCompositeCommand{\textLIIenc}{L8U}{^^de}{Ţ}% Ux0162
+\DeclareTextCompositeCommand{\textLIIenc}{L8U}{^^df}{ß}
+
+\DeclareTextCompositeCommand{\textLIIenc}{L8U}{^^e0}{ŕ}% Ux0155
+\DeclareTextCompositeCommand{\textLIIenc}{L8U}{^^e1}{á}
+\DeclareTextCompositeCommand{\textLIIenc}{L8U}{^^e2}{â}
+\DeclareTextCompositeCommand{\textLIIenc}{L8U}{^^e3}{ă}% Ux0103
+\DeclareTextCompositeCommand{\textLIIenc}{L8U}{^^e4}{ä}
+\DeclareTextCompositeCommand{\textLIIenc}{L8U}{^^e5}{ĺ}% Ux013A
+\DeclareTextCompositeCommand{\textLIIenc}{L8U}{^^e6}{ć}% Ux0107
+\DeclareTextCompositeCommand{\textLIIenc}{L8U}{^^e7}{ç}
+\DeclareTextCompositeCommand{\textLIIenc}{L8U}{^^e8}{č}% Ux010D
+\DeclareTextCompositeCommand{\textLIIenc}{L8U}{^^e9}{é}
+\DeclareTextCompositeCommand{\textLIIenc}{L8U}{^^ea}{ę}% Ux0119
+\DeclareTextCompositeCommand{\textLIIenc}{L8U}{^^eb}{ë}
+\DeclareTextCompositeCommand{\textLIIenc}{L8U}{^^ec}{ě}% Ux011B
+\DeclareTextCompositeCommand{\textLIIenc}{L8U}{^^ed}{í}
+\DeclareTextCompositeCommand{\textLIIenc}{L8U}{^^ee}{î}
+\DeclareTextCompositeCommand{\textLIIenc}{L8U}{^^ef}{ď}% Ux010F
+\DeclareTextCompositeCommand{\textLIIenc}{L8U}{^^f0}{đ}% Ux0111
+\DeclareTextCompositeCommand{\textLIIenc}{L8U}{^^f1}{ń}% Ux0144
+\DeclareTextCompositeCommand{\textLIIenc}{L8U}{^^f2}{ň}% Ux0148
+\DeclareTextCompositeCommand{\textLIIenc}{L8U}{^^f3}{ó}
+\DeclareTextCompositeCommand{\textLIIenc}{L8U}{^^f4}{ô}
+\DeclareTextCompositeCommand{\textLIIenc}{L8U}{^^f5}{ő}% Ux0151
+\DeclareTextCompositeCommand{\textLIIenc}{L8U}{^^f6}{ö}
+\DeclareTextCompositeCommand{\textLIIenc}{L8U}{^^f7}{÷}
+\DeclareTextCompositeCommand{\textLIIenc}{L8U}{^^f8}{ř}% Ux0159
+\DeclareTextCompositeCommand{\textLIIenc}{L8U}{^^f9}{ů}% Ux016F
+\DeclareTextCompositeCommand{\textLIIenc}{L8U}{^^fa}{ú}
+\DeclareTextCompositeCommand{\textLIIenc}{L8U}{^^fb}{ű}% Ux0171
+\DeclareTextCompositeCommand{\textLIIenc}{L8U}{^^fc}{ü}
+\DeclareTextCompositeCommand{\textLIIenc}{L8U}{^^fd}{ý}
+\DeclareTextCompositeCommand{\textLIIenc}{L8U}{^^fe}{ţ}% Ux0163
+\DeclareTextCompositeCommand{\textLIIenc}{L8U}{^^ff}{˙}% Ux02D9
+
+
+% ISO-8859-3: Latin3 encoding: South European CP-28593
+%
+\DeclareTextCompositeCommand{\textLIIIenc}{L8U}{^^a0}{ }
+\DeclareTextCompositeCommand{\textLIIIenc}{L8U}{^^a1}{Ħ}% Ux0126
+\DeclareTextCompositeCommand{\textLIIIenc}{L8U}{^^a2}{˘}% Ux02D8
+\DeclareTextCompositeCommand{\textLIIIenc}{L8U}{^^a3}{£}
+\DeclareTextCompositeCommand{\textLIIIenc}{L8U}{^^a4}{¤}
+\DeclareTextCompositeCommand{\textLIIIenc}{L8U}{^^a5}{¥}% unused
+\DeclareTextCompositeCommand{\textLIIIenc}{L8U}{^^a6}{Ĥ}% Ux0124
+\DeclareTextCompositeCommand{\textLIIIenc}{L8U}{^^a7}{§}
+\DeclareTextCompositeCommand{\textLIIIenc}{L8U}{^^a8}{¨}
+\DeclareTextCompositeCommand{\textLIIIenc}{L8U}{^^a9}{İ}% Ux0130
+\DeclareTextCompositeCommand{\textLIIIenc}{L8U}{^^aa}{Ş}% Ux015E
+\DeclareTextCompositeCommand{\textLIIIenc}{L8U}{^^ab}{Ğ}% Ux011E
+\DeclareTextCompositeCommand{\textLIIIenc}{L8U}{^^ac}{Ĵ}% Ux0134
+\DeclareTextCompositeCommand{\textLIIIenc}{L8U}{^^ad}{­}
+\DeclareTextCompositeCommand{\textLIIIenc}{L8U}{^^ae}{®}% unused
+\DeclareTextCompositeCommand{\textLIIIenc}{L8U}{^^af}{Ż}% Ux017B
+\DeclareTextCompositeCommand{\textLIIIenc}{L8U}{^^b0}{°}
+\DeclareTextCompositeCommand{\textLIIIenc}{L8U}{^^b1}{ħ}% Ux0127
+\DeclareTextCompositeCommand{\textLIIIenc}{L8U}{^^b2}{²}
+\DeclareTextCompositeCommand{\textLIIIenc}{L8U}{^^b3}{³}
+\DeclareTextCompositeCommand{\textLIIIenc}{L8U}{^^b4}{´}
+\DeclareTextCompositeCommand{\textLIIIenc}{L8U}{^^b5}{µ}
+\DeclareTextCompositeCommand{\textLIIIenc}{L8U}{^^b6}{ĥ}% Ux0125
+\DeclareTextCompositeCommand{\textLIIIenc}{L8U}{^^b7}{·}
+\DeclareTextCompositeCommand{\textLIIIenc}{L8U}{^^b8}{¸}
+\DeclareTextCompositeCommand{\textLIIIenc}{L8U}{^^b9}{ı}% Ux0131
+\DeclareTextCompositeCommand{\textLIIIenc}{L8U}{^^ba}{ş}% Ux015F
+\DeclareTextCompositeCommand{\textLIIIenc}{L8U}{^^bb}{ğ}% Ux011F
+\DeclareTextCompositeCommand{\textLIIIenc}{L8U}{^^bc}{ĵ}% Ux0135
+\DeclareTextCompositeCommand{\textLIIIenc}{L8U}{^^bd}{½}
+\DeclareTextCompositeCommand{\textLIIIenc}{L8U}{^^be}{¾}% unused
+\DeclareTextCompositeCommand{\textLIIIenc}{L8U}{^^bf}{ż}% Ux017C
+
+\DeclareTextCompositeCommand{\textLIIIenc}{L8U}{^^c0}{À}
+\DeclareTextCompositeCommand{\textLIIIenc}{L8U}{^^c1}{Á}
+\DeclareTextCompositeCommand{\textLIIIenc}{L8U}{^^c2}{Â}
+\DeclareTextCompositeCommand{\textLIIIenc}{L8U}{^^c3}{Ã}% unused
+\DeclareTextCompositeCommand{\textLIIIenc}{L8U}{^^c4}{Ä}
+\DeclareTextCompositeCommand{\textLIIIenc}{L8U}{^^c5}{Ċ}% Ux010A
+\DeclareTextCompositeCommand{\textLIIIenc}{L8U}{^^c6}{Ĉ}% Ux0108
+\DeclareTextCompositeCommand{\textLIIIenc}{L8U}{^^c7}{Ç}
+\DeclareTextCompositeCommand{\textLIIIenc}{L8U}{^^c8}{È}
+\DeclareTextCompositeCommand{\textLIIIenc}{L8U}{^^c9}{É}
+\DeclareTextCompositeCommand{\textLIIIenc}{L8U}{^^ca}{Ê}
+\DeclareTextCompositeCommand{\textLIIIenc}{L8U}{^^cb}{Ë}
+\DeclareTextCompositeCommand{\textLIIIenc}{L8U}{^^cc}{Ì}
+\DeclareTextCompositeCommand{\textLIIIenc}{L8U}{^^cd}{Í}
+\DeclareTextCompositeCommand{\textLIIIenc}{L8U}{^^ce}{Î}
+\DeclareTextCompositeCommand{\textLIIIenc}{L8U}{^^cf}{Ï}
+\DeclareTextCompositeCommand{\textLIIIenc}{L8U}{^^d0}{Ğ}% unused
+\DeclareTextCompositeCommand{\textLIIIenc}{L8U}{^^d1}{Ñ}
+\DeclareTextCompositeCommand{\textLIIIenc}{L8U}{^^d2}{Ò}
+\DeclareTextCompositeCommand{\textLIIIenc}{L8U}{^^d3}{Ó}
+\DeclareTextCompositeCommand{\textLIIIenc}{L8U}{^^d4}{Ô}
+\DeclareTextCompositeCommand{\textLIIIenc}{L8U}{^^d5}{Ġ}% Ux0120
+\DeclareTextCompositeCommand{\textLIIIenc}{L8U}{^^d6}{Ö}
+\DeclareTextCompositeCommand{\textLIIIenc}{L8U}{^^d7}{×}
+\DeclareTextCompositeCommand{\textLIIIenc}{L8U}{^^d8}{Ø}% Ux011C
+\DeclareTextCompositeCommand{\textLIIIenc}{L8U}{^^d9}{Ù}
+\DeclareTextCompositeCommand{\textLIIIenc}{L8U}{^^da}{Ú}
+\DeclareTextCompositeCommand{\textLIIIenc}{L8U}{^^db}{Û}
+\DeclareTextCompositeCommand{\textLIIIenc}{L8U}{^^dc}{Ü}
+\DeclareTextCompositeCommand{\textLIIIenc}{L8U}{^^dd}{Ŭ}% Ux016C
+\DeclareTextCompositeCommand{\textLIIIenc}{L8U}{^^de}{Ŝ}% Ux015C
+\DeclareTextCompositeCommand{\textLIIIenc}{L8U}{^^df}{ß}
+
+\DeclareTextCompositeCommand{\textLIIIenc}{L8U}{^^e0}{à}
+\DeclareTextCompositeCommand{\textLIIIenc}{L8U}{^^e1}{á}
+\DeclareTextCompositeCommand{\textLIIIenc}{L8U}{^^e2}{â}
+\DeclareTextCompositeCommand{\textLIIIenc}{L8U}{^^e3}{ã}% unused
+\DeclareTextCompositeCommand{\textLIIIenc}{L8U}{^^e4}{ä}
+\DeclareTextCompositeCommand{\textLIIIenc}{L8U}{^^e5}{ċ}% Ux010B
+\DeclareTextCompositeCommand{\textLIIIenc}{L8U}{^^e6}{ĉ}% Ux0109
+\DeclareTextCompositeCommand{\textLIIIenc}{L8U}{^^e7}{ç}
+\DeclareTextCompositeCommand{\textLIIIenc}{L8U}{^^e8}{è}
+\DeclareTextCompositeCommand{\textLIIIenc}{L8U}{^^e9}{é}
+\DeclareTextCompositeCommand{\textLIIIenc}{L8U}{^^ea}{ê}
+\DeclareTextCompositeCommand{\textLIIIenc}{L8U}{^^eb}{ë}
+\DeclareTextCompositeCommand{\textLIIIenc}{L8U}{^^ec}{ì}
+\DeclareTextCompositeCommand{\textLIIIenc}{L8U}{^^ed}{í}
+\DeclareTextCompositeCommand{\textLIIIenc}{L8U}{^^ee}{î}
+\DeclareTextCompositeCommand{\textLIIIenc}{L8U}{^^ef}{ï}
+\DeclareTextCompositeCommand{\textLIIIenc}{L8U}{^^f0}{ğ}% unused
+\DeclareTextCompositeCommand{\textLIIIenc}{L8U}{^^f1}{ñ}
+\DeclareTextCompositeCommand{\textLIIIenc}{L8U}{^^f2}{ò}
+\DeclareTextCompositeCommand{\textLIIIenc}{L8U}{^^f3}{ó}
+\DeclareTextCompositeCommand{\textLIIIenc}{L8U}{^^f4}{ô}
+\DeclareTextCompositeCommand{\textLIIIenc}{L8U}{^^f5}{ġ}% Ux0121
+\DeclareTextCompositeCommand{\textLIIIenc}{L8U}{^^f6}{ö}
+\DeclareTextCompositeCommand{\textLIIIenc}{L8U}{^^f7}{÷}
+\DeclareTextCompositeCommand{\textLIIIenc}{L8U}{^^f8}{ĝ}% Ux011D
+\DeclareTextCompositeCommand{\textLIIIenc}{L8U}{^^f9}{ù}
+\DeclareTextCompositeCommand{\textLIIIenc}{L8U}{^^fa}{ú}
+\DeclareTextCompositeCommand{\textLIIIenc}{L8U}{^^fb}{û}
+\DeclareTextCompositeCommand{\textLIIIenc}{L8U}{^^fc}{ü}
+\DeclareTextCompositeCommand{\textLIIIenc}{L8U}{^^fd}{ŭ}% Ux016D
+\DeclareTextCompositeCommand{\textLIIIenc}{L8U}{^^fe}{ŝ}% Ux015D
+\DeclareTextCompositeCommand{\textLIIIenc}{L8U}{^^ff}{˚}% Ux02D9
+
+
+% ISO-8859-4: Latin4 encoding: North European CP-28594
+%
+\DeclareTextCompositeCommand{\textLIVenc}{L8U}{^^a0}{ }
+\DeclareTextCompositeCommand{\textLIVenc}{L8U}{^^a1}{Ą}% Ux0104
+\DeclareTextCompositeCommand{\textLIVenc}{L8U}{^^a2}{ĸ}% Ux0138
+\DeclareTextCompositeCommand{\textLIVenc}{L8U}{^^a3}{Ŗ}% Ux0156
+\DeclareTextCompositeCommand{\textLIVenc}{L8U}{^^a4}{¤}
+\DeclareTextCompositeCommand{\textLIVenc}{L8U}{^^a5}{Ĩ}% Ux0128
+\DeclareTextCompositeCommand{\textLIVenc}{L8U}{^^a6}{ĸ}% Ux013B
+\DeclareTextCompositeCommand{\textLIVenc}{L8U}{^^a7}{§}
+\DeclareTextCompositeCommand{\textLIVenc}{L8U}{^^a8}{¨}
+\DeclareTextCompositeCommand{\textLIVenc}{L8U}{^^a9}{Š}% Ux0160
+\DeclareTextCompositeCommand{\textLIVenc}{L8U}{^^aa}{Ē}% Ux0112
+\DeclareTextCompositeCommand{\textLIVenc}{L8U}{^^ab}{Ģ}% Ux0122
+\DeclareTextCompositeCommand{\textLIVenc}{L8U}{^^ac}{Ŧ}% Ux0166
+\DeclareTextCompositeCommand{\textLIVenc}{L8U}{^^ad}{­}
+\DeclareTextCompositeCommand{\textLIVenc}{L8U}{^^ae}{Ž}% Ux017D
+\DeclareTextCompositeCommand{\textLIVenc}{L8U}{^^af}{¯}
+\DeclareTextCompositeCommand{\textLIVenc}{L8U}{^^b0}{°}
+\DeclareTextCompositeCommand{\textLIVenc}{L8U}{^^b1}{ą}% Ux0105
+\DeclareTextCompositeCommand{\textLIVenc}{L8U}{^^b2}{˜}% Ux02DB
+\DeclareTextCompositeCommand{\textLIVenc}{L8U}{^^b3}{ŗ}% Ux0157
+\DeclareTextCompositeCommand{\textLIVenc}{L8U}{^^b4}{´}
+\DeclareTextCompositeCommand{\textLIVenc}{L8U}{^^b5}{ĩ}% Ux0129
+\DeclareTextCompositeCommand{\textLIVenc}{L8U}{^^b6}{ļ}% Ux013C
+\DeclareTextCompositeCommand{\textLIVenc}{L8U}{^^b7}{ˇ}% Ux02C7
+\DeclareTextCompositeCommand{\textLIVenc}{L8U}{^^b8}{¸}
+\DeclareTextCompositeCommand{\textLIVenc}{L8U}{^^b9}{š}% Ux0161
+\DeclareTextCompositeCommand{\textLIVenc}{L8U}{^^ba}{ē}% Ux0113
+\DeclareTextCompositeCommand{\textLIVenc}{L8U}{^^bb}{ģ}% Ux0123
+\DeclareTextCompositeCommand{\textLIVenc}{L8U}{^^bc}{ŧ}% Ux0167
+\DeclareTextCompositeCommand{\textLIVenc}{L8U}{^^bd}{Ŋ}% Ux014A
+\DeclareTextCompositeCommand{\textLIVenc}{L8U}{^^be}{ž}% Ux017E
+\DeclareTextCompositeCommand{\textLIVenc}{L8U}{^^bf}{ŋ}% Ux014B
+
+\DeclareTextCompositeCommand{\textLIVenc}{L8U}{^^c0}{Ā}% Ux0100
+\DeclareTextCompositeCommand{\textLIVenc}{L8U}{^^c1}{Á}
+\DeclareTextCompositeCommand{\textLIVenc}{L8U}{^^c2}{Â}
+\DeclareTextCompositeCommand{\textLIVenc}{L8U}{^^c3}{Ã}
+\DeclareTextCompositeCommand{\textLIVenc}{L8U}{^^c4}{Ä}
+\DeclareTextCompositeCommand{\textLIVenc}{L8U}{^^c5}{Å}
+\DeclareTextCompositeCommand{\textLIVenc}{L8U}{^^c6}{Æ}
+\DeclareTextCompositeCommand{\textLIVenc}{L8U}{^^c7}{Į}% Ux012E
+\DeclareTextCompositeCommand{\textLIVenc}{L8U}{^^c8}{Č}% Ux010C
+\DeclareTextCompositeCommand{\textLIVenc}{L8U}{^^c9}{É}
+\DeclareTextCompositeCommand{\textLIVenc}{L8U}{^^ca}{Ę}% Ux0118
+\DeclareTextCompositeCommand{\textLIVenc}{L8U}{^^cb}{Ë}
+\DeclareTextCompositeCommand{\textLIVenc}{L8U}{^^cc}{Ė}% Ux0116
+\DeclareTextCompositeCommand{\textLIVenc}{L8U}{^^cd}{Í}
+\DeclareTextCompositeCommand{\textLIVenc}{L8U}{^^ce}{Î}
+\DeclareTextCompositeCommand{\textLIVenc}{L8U}{^^cf}{Ī}% Ux012A
+\DeclareTextCompositeCommand{\textLIVenc}{L8U}{^^d0}{Đ}% Ux0110
+\DeclareTextCompositeCommand{\textLIVenc}{L8U}{^^d1}{Ņ}% Ux0145
+\DeclareTextCompositeCommand{\textLIVenc}{L8U}{^^d2}{Ō}% Ux014C
+\DeclareTextCompositeCommand{\textLIVenc}{L8U}{^^d3}{Ķ}% Ux0136
+\DeclareTextCompositeCommand{\textLIVenc}{L8U}{^^d4}{Ô}
+\DeclareTextCompositeCommand{\textLIVenc}{L8U}{^^d5}{Õ}
+\DeclareTextCompositeCommand{\textLIVenc}{L8U}{^^d6}{Ö}
+\DeclareTextCompositeCommand{\textLIVenc}{L8U}{^^d7}{×}
+\DeclareTextCompositeCommand{\textLIVenc}{L8U}{^^d8}{Ø}
+\DeclareTextCompositeCommand{\textLIVenc}{L8U}{^^d9}{Ų}% Ux0172
+\DeclareTextCompositeCommand{\textLIVenc}{L8U}{^^da}{Ú}
+\DeclareTextCompositeCommand{\textLIVenc}{L8U}{^^db}{Û}
+\DeclareTextCompositeCommand{\textLIVenc}{L8U}{^^dc}{Ü}
+\DeclareTextCompositeCommand{\textLIVenc}{L8U}{^^dd}{Ũ}% Ux0168
+\DeclareTextCompositeCommand{\textLIVenc}{L8U}{^^de}{Ū}% Ux016A
+\DeclareTextCompositeCommand{\textLIVenc}{L8U}{^^df}{ß}
+
+\DeclareTextCompositeCommand{\textLIVenc}{L8U}{^^e0}{ā}% Ux0101
+\DeclareTextCompositeCommand{\textLIVenc}{L8U}{^^e1}{á}
+\DeclareTextCompositeCommand{\textLIVenc}{L8U}{^^e2}{â}
+\DeclareTextCompositeCommand{\textLIVenc}{L8U}{^^e3}{ã}
+\DeclareTextCompositeCommand{\textLIVenc}{L8U}{^^e4}{ä}
+\DeclareTextCompositeCommand{\textLIVenc}{L8U}{^^e5}{å}
+\DeclareTextCompositeCommand{\textLIVenc}{L8U}{^^e6}{æ}
+\DeclareTextCompositeCommand{\textLIVenc}{L8U}{^^e7}{į}% Ux012F
+\DeclareTextCompositeCommand{\textLIVenc}{L8U}{^^e8}{č}% Ux010D
+\DeclareTextCompositeCommand{\textLIVenc}{L8U}{^^e9}{é}
+\DeclareTextCompositeCommand{\textLIVenc}{L8U}{^^ea}{ę}% Ux0119
+\DeclareTextCompositeCommand{\textLIVenc}{L8U}{^^eb}{ë}
+\DeclareTextCompositeCommand{\textLIVenc}{L8U}{^^ec}{ė}% Ux0117
+\DeclareTextCompositeCommand{\textLIVenc}{L8U}{^^ed}{í}
+\DeclareTextCompositeCommand{\textLIVenc}{L8U}{^^ee}{î}
+\DeclareTextCompositeCommand{\textLIVenc}{L8U}{^^ef}{ī}% Ux012B
+\DeclareTextCompositeCommand{\textLIVenc}{L8U}{^^f0}{đ}% Ux0111
+\DeclareTextCompositeCommand{\textLIVenc}{L8U}{^^f1}{ņ}% Ux0146
+\DeclareTextCompositeCommand{\textLIVenc}{L8U}{^^f2}{ō}% Ux014D
+\DeclareTextCompositeCommand{\textLIVenc}{L8U}{^^f3}{ķ}% Ux0137
+\DeclareTextCompositeCommand{\textLIVenc}{L8U}{^^f4}{ô}
+\DeclareTextCompositeCommand{\textLIVenc}{L8U}{^^f5}{õ}
+\DeclareTextCompositeCommand{\textLIVenc}{L8U}{^^f6}{ö}
+\DeclareTextCompositeCommand{\textLIVenc}{L8U}{^^f7}{÷}
+\DeclareTextCompositeCommand{\textLIVenc}{L8U}{^^f8}{ø}
+\DeclareTextCompositeCommand{\textLIVenc}{L8U}{^^f9}{ų}% Ux0173
+\DeclareTextCompositeCommand{\textLIVenc}{L8U}{^^fa}{ú}
+\DeclareTextCompositeCommand{\textLIVenc}{L8U}{^^fb}{û}
+\DeclareTextCompositeCommand{\textLIVenc}{L8U}{^^fc}{ü}
+\DeclareTextCompositeCommand{\textLIVenc}{L8U}{^^fd}{ũ}% Ux0169
+\DeclareTextCompositeCommand{\textLIVenc}{L8U}{^^fe}{ū}% Ux016B
+\DeclareTextCompositeCommand{\textLIVenc}{L8U}{^^ff}{˙}% Ux02D9
+
+
+% ISO-8859-9: Latin5 encoding: Turkish
+%
+\DeclareTextCompositeCommand{\textLTVenc}{L8U}{^^a0}{ }
+\DeclareTextCompositeCommand{\textLTVenc}{L8U}{^^a1}{¡}
+\DeclareTextCompositeCommand{\textLTVenc}{L8U}{^^a2}{¢}
+\DeclareTextCompositeCommand{\textLTVenc}{L8U}{^^a3}{£}
+\DeclareTextCompositeCommand{\textLTVenc}{L8U}{^^a4}{¤}
+\DeclareTextCompositeCommand{\textLTVenc}{L8U}{^^a5}{¥}
+\DeclareTextCompositeCommand{\textLTVenc}{L8U}{^^a6}{¦}
+\DeclareTextCompositeCommand{\textLTVenc}{L8U}{^^a7}{§}
+\DeclareTextCompositeCommand{\textLTVenc}{L8U}{^^a8}{¨}
+\DeclareTextCompositeCommand{\textLTVenc}{L8U}{^^a9}{©}
+\DeclareTextCompositeCommand{\textLTVenc}{L8U}{^^aa}{ª}
+\DeclareTextCompositeCommand{\textLTVenc}{L8U}{^^ab}{«}
+\DeclareTextCompositeCommand{\textLTVenc}{L8U}{^^ac}{¬}
+\DeclareTextCompositeCommand{\textLTVenc}{L8U}{^^ad}{­}
+\DeclareTextCompositeCommand{\textLTVenc}{L8U}{^^ae}{®}
+\DeclareTextCompositeCommand{\textLTVenc}{L8U}{^^af}{¯}
+\DeclareTextCompositeCommand{\textLTVenc}{L8U}{^^b0}{°}
+\DeclareTextCompositeCommand{\textLTVenc}{L8U}{^^b1}{±}
+\DeclareTextCompositeCommand{\textLTVenc}{L8U}{^^b2}{²}
+\DeclareTextCompositeCommand{\textLTVenc}{L8U}{^^b3}{³}
+\DeclareTextCompositeCommand{\textLTVenc}{L8U}{^^b4}{´}
+\DeclareTextCompositeCommand{\textLTVenc}{L8U}{^^b5}{µ}
+\DeclareTextCompositeCommand{\textLTVenc}{L8U}{^^b6}{¶}
+\DeclareTextCompositeCommand{\textLTVenc}{L8U}{^^b7}{·}
+\DeclareTextCompositeCommand{\textLTVenc}{L8U}{^^b8}{¸}
+\DeclareTextCompositeCommand{\textLTVenc}{L8U}{^^b9}{¹}
+\DeclareTextCompositeCommand{\textLTVenc}{L8U}{^^ba}{º}
+\DeclareTextCompositeCommand{\textLTVenc}{L8U}{^^bb}{»}
+\DeclareTextCompositeCommand{\textLTVenc}{L8U}{^^bc}{¼}
+\DeclareTextCompositeCommand{\textLTVenc}{L8U}{^^bd}{½}
+\DeclareTextCompositeCommand{\textLTVenc}{L8U}{^^be}{¾}
+\DeclareTextCompositeCommand{\textLTVenc}{L8U}{^^bf}{¿}
+
+\DeclareTextCompositeCommand{\textLTVenc}{L8U}{^^c0}{À}
+\DeclareTextCompositeCommand{\textLTVenc}{L8U}{^^c1}{Á}
+\DeclareTextCompositeCommand{\textLTVenc}{L8U}{^^c2}{Â}
+\DeclareTextCompositeCommand{\textLTVenc}{L8U}{^^c3}{Ã}
+\DeclareTextCompositeCommand{\textLTVenc}{L8U}{^^c4}{Ä}
+\DeclareTextCompositeCommand{\textLTVenc}{L8U}{^^c5}{Å}
+\DeclareTextCompositeCommand{\textLTVenc}{L8U}{^^c6}{Æ}
+\DeclareTextCompositeCommand{\textLTVenc}{L8U}{^^c7}{Ç}
+\DeclareTextCompositeCommand{\textLTVenc}{L8U}{^^c8}{È}
+\DeclareTextCompositeCommand{\textLTVenc}{L8U}{^^c9}{É}
+\DeclareTextCompositeCommand{\textLTVenc}{L8U}{^^ca}{Ê}
+\DeclareTextCompositeCommand{\textLTVenc}{L8U}{^^cb}{Ë}
+\DeclareTextCompositeCommand{\textLTVenc}{L8U}{^^cc}{Ì}
+\DeclareTextCompositeCommand{\textLTVenc}{L8U}{^^cd}{Í}
+\DeclareTextCompositeCommand{\textLTVenc}{L8U}{^^ce}{Î}
+\DeclareTextCompositeCommand{\textLTVenc}{L8U}{^^cf}{Ï}
+\DeclareTextCompositeCommand{\textLTVenc}{L8U}{^^d0}{Ğ}% Ux011E
+\DeclareTextCompositeCommand{\textLTVenc}{L8U}{^^d1}{Ñ}
+\DeclareTextCompositeCommand{\textLTVenc}{L8U}{^^d2}{Ò}
+\DeclareTextCompositeCommand{\textLTVenc}{L8U}{^^d3}{Ó}
+\DeclareTextCompositeCommand{\textLTVenc}{L8U}{^^d4}{Ô}
+\DeclareTextCompositeCommand{\textLTVenc}{L8U}{^^d5}{Õ}
+\DeclareTextCompositeCommand{\textLTVenc}{L8U}{^^d6}{Ö}
+\DeclareTextCompositeCommand{\textLTVenc}{L8U}{^^d7}{×}
+\DeclareTextCompositeCommand{\textLTVenc}{L8U}{^^d8}{Ø}
+\DeclareTextCompositeCommand{\textLTVenc}{L8U}{^^d9}{Ù}
+\DeclareTextCompositeCommand{\textLTVenc}{L8U}{^^da}{Ú}
+\DeclareTextCompositeCommand{\textLTVenc}{L8U}{^^db}{Û}
+\DeclareTextCompositeCommand{\textLTVenc}{L8U}{^^dc}{Ü}
+\DeclareTextCompositeCommand{\textLTVenc}{L8U}{^^dd}{İ}% Ux0130
+\DeclareTextCompositeCommand{\textLTVenc}{L8U}{^^de}{Ş}% Ux015E
+\DeclareTextCompositeCommand{\textLTVenc}{L8U}{^^df}{ß}
+
+\DeclareTextCompositeCommand{\textLTVenc}{L8U}{^^e0}{à}
+\DeclareTextCompositeCommand{\textLTVenc}{L8U}{^^e1}{á}
+\DeclareTextCompositeCommand{\textLTVenc}{L8U}{^^e2}{â}
+\DeclareTextCompositeCommand{\textLTVenc}{L8U}{^^e3}{ã}
+\DeclareTextCompositeCommand{\textLTVenc}{L8U}{^^e4}{ä}
+\DeclareTextCompositeCommand{\textLTVenc}{L8U}{^^e5}{å}
+\DeclareTextCompositeCommand{\textLTVenc}{L8U}{^^e6}{æ}
+\DeclareTextCompositeCommand{\textLTVenc}{L8U}{^^e7}{ç}
+\DeclareTextCompositeCommand{\textLTVenc}{L8U}{^^e8}{è}
+\DeclareTextCompositeCommand{\textLTVenc}{L8U}{^^e9}{é}
+\DeclareTextCompositeCommand{\textLTVenc}{L8U}{^^ea}{ê}
+\DeclareTextCompositeCommand{\textLTVenc}{L8U}{^^eb}{ë}
+\DeclareTextCompositeCommand{\textLTVenc}{L8U}{^^ec}{ì}
+\DeclareTextCompositeCommand{\textLTVenc}{L8U}{^^ed}{í}
+\DeclareTextCompositeCommand{\textLTVenc}{L8U}{^^ee}{î}
+\DeclareTextCompositeCommand{\textLTVenc}{L8U}{^^ef}{ï}
+\DeclareTextCompositeCommand{\textLTVenc}{L8U}{^^f0}{ğ}% Ux011F
+\DeclareTextCompositeCommand{\textLTVenc}{L8U}{^^f1}{ñ}
+\DeclareTextCompositeCommand{\textLTVenc}{L8U}{^^f2}{ò}
+\DeclareTextCompositeCommand{\textLTVenc}{L8U}{^^f3}{ó}
+\DeclareTextCompositeCommand{\textLTVenc}{L8U}{^^f4}{ô}
+\DeclareTextCompositeCommand{\textLTVenc}{L8U}{^^f5}{õ}
+\DeclareTextCompositeCommand{\textLTVenc}{L8U}{^^f6}{ö}
+\DeclareTextCompositeCommand{\textLTVenc}{L8U}{^^f7}{÷}
+\DeclareTextCompositeCommand{\textLTVenc}{L8U}{^^f8}{ø}
+\DeclareTextCompositeCommand{\textLTVenc}{L8U}{^^f9}{ù}
+\DeclareTextCompositeCommand{\textLTVenc}{L8U}{^^fa}{ú}
+\DeclareTextCompositeCommand{\textLTVenc}{L8U}{^^fb}{û}
+\DeclareTextCompositeCommand{\textLTVenc}{L8U}{^^fc}{ü}
+\DeclareTextCompositeCommand{\textLTVenc}{L8U}{^^fd}{ı}% Ux0131
+\DeclareTextCompositeCommand{\textLTVenc}{L8U}{^^fe}{ş}% Ux015F
+\DeclareTextCompositeCommand{\textLTVenc}{L8U}{^^ff}{ÿ}
+
+
+
+% ISO-8859-10: Latin6 encoding: Nordic
+%
+
+\DeclareTextCompositeCommand{\textLVIenc}{L8U}{^^a0}{ }
+\DeclareTextCompositeCommand{\textLVIenc}{L8U}{^^a1}{Ą}% Ux0104
+\DeclareTextCompositeCommand{\textLVIenc}{L8U}{^^a2}{Ē}% Ux0112
+\DeclareTextCompositeCommand{\textLVIenc}{L8U}{^^a3}{Ģ}% Ux0122
+\DeclareTextCompositeCommand{\textLVIenc}{L8U}{^^a4}{Ī}% Ux012A
+\DeclareTextCompositeCommand{\textLVIenc}{L8U}{^^a5}{Ĩ}% Ux0128
+\DeclareTextCompositeCommand{\textLVIenc}{L8U}{^^a6}{Ķ}% Ux0136
+\DeclareTextCompositeCommand{\textLVIenc}{L8U}{^^a7}{§}
+\DeclareTextCompositeCommand{\textLVIenc}{L8U}{^^a8}{Ļ}% Ux013B
+\DeclareTextCompositeCommand{\textLVIenc}{L8U}{^^a9}{Đ}% Ux0110
+\DeclareTextCompositeCommand{\textLVIenc}{L8U}{^^aa}{Š}% Ux0160
+\DeclareTextCompositeCommand{\textLVIenc}{L8U}{^^ab}{Ŧ}% Ux0166
+\DeclareTextCompositeCommand{\textLVIenc}{L8U}{^^ac}{Ž}% Ux017D
+\DeclareTextCompositeCommand{\textLVIenc}{L8U}{^^ad}{­}
+\DeclareTextCompositeCommand{\textLVIenc}{L8U}{^^ae}{Ū}% Ux016A
+\DeclareTextCompositeCommand{\textLVIenc}{L8U}{^^af}{Ŋ}% Ux014A
+\DeclareTextCompositeCommand{\textLVIenc}{L8U}{^^b0}{°}
+\DeclareTextCompositeCommand{\textLVIenc}{L8U}{^^b1}{ą}% Ux0105
+\DeclareTextCompositeCommand{\textLVIenc}{L8U}{^^b2}{ē}% Ux0113
+\DeclareTextCompositeCommand{\textLVIenc}{L8U}{^^b3}{ģ}% Ux0123
+\DeclareTextCompositeCommand{\textLVIenc}{L8U}{^^b4}{ī}% Ux012B
+\DeclareTextCompositeCommand{\textLVIenc}{L8U}{^^b5}{ĩ}% Ux0129
+\DeclareTextCompositeCommand{\textLVIenc}{L8U}{^^b6}{ķ}% Ux0137
+\DeclareTextCompositeCommand{\textLVIenc}{L8U}{^^b7}{·}
+\DeclareTextCompositeCommand{\textLVIenc}{L8U}{^^b8}{ļ}% Ux013C
+\DeclareTextCompositeCommand{\textLVIenc}{L8U}{^^b9}{đ}% Ux0111
+\DeclareTextCompositeCommand{\textLVIenc}{L8U}{^^ba}{š}% Ux0161
+\DeclareTextCompositeCommand{\textLVIenc}{L8U}{^^bb}{ŧ}% Ux0167
+\DeclareTextCompositeCommand{\textLVIenc}{L8U}{^^bc}{ž}% Ux017E
+\DeclareTextCompositeCommand{\textLVIenc}{L8U}{^^bd}{―}% Ux2015
+\DeclareTextCompositeCommand{\textLVIenc}{L8U}{^^be}{ū}% Ux016B
+\DeclareTextCompositeCommand{\textLVIenc}{L8U}{^^bf}{ŋ}% Ux014B
+
+\DeclareTextCompositeCommand{\textLVIenc}{L8U}{^^c0}{Ā}% Ux0100
+\DeclareTextCompositeCommand{\textLVIenc}{L8U}{^^c1}{Á}
+\DeclareTextCompositeCommand{\textLVIenc}{L8U}{^^c2}{Â}
+\DeclareTextCompositeCommand{\textLVIenc}{L8U}{^^c3}{Ã}
+\DeclareTextCompositeCommand{\textLVIenc}{L8U}{^^c4}{Ä}
+\DeclareTextCompositeCommand{\textLVIenc}{L8U}{^^c5}{Å}
+\DeclareTextCompositeCommand{\textLVIenc}{L8U}{^^c6}{Æ}
+\DeclareTextCompositeCommand{\textLVIenc}{L8U}{^^c7}{Į}% Ux012E
+\DeclareTextCompositeCommand{\textLVIenc}{L8U}{^^c8}{Č}% Ux010C
+\DeclareTextCompositeCommand{\textLVIenc}{L8U}{^^c9}{É}
+\DeclareTextCompositeCommand{\textLVIenc}{L8U}{^^ca}{Ę}% Ux0118
+\DeclareTextCompositeCommand{\textLVIenc}{L8U}{^^cb}{Ë}
+\DeclareTextCompositeCommand{\textLVIenc}{L8U}{^^cc}{Ė}% Ux0116
+\DeclareTextCompositeCommand{\textLVIenc}{L8U}{^^cd}{Í}
+\DeclareTextCompositeCommand{\textLVIenc}{L8U}{^^ce}{Î}
+\DeclareTextCompositeCommand{\textLVIenc}{L8U}{^^cf}{Ï}
+\DeclareTextCompositeCommand{\textLVIenc}{L8U}{^^d0}{Ð}
+\DeclareTextCompositeCommand{\textLVIenc}{L8U}{^^d1}{Ņ}% Ux0145
+\DeclareTextCompositeCommand{\textLVIenc}{L8U}{^^d2}{Ō}% Ux014C
+\DeclareTextCompositeCommand{\textLVIenc}{L8U}{^^d3}{Ó}
+\DeclareTextCompositeCommand{\textLVIenc}{L8U}{^^d4}{Ô}
+\DeclareTextCompositeCommand{\textLVIenc}{L8U}{^^d5}{Õ}
+\DeclareTextCompositeCommand{\textLVIenc}{L8U}{^^d6}{Ö}
+\DeclareTextCompositeCommand{\textLVIenc}{L8U}{^^d7}{Ũ}% Ux0168
+\DeclareTextCompositeCommand{\textLVIenc}{L8U}{^^d8}{Ø}
+\DeclareTextCompositeCommand{\textLVIenc}{L8U}{^^d9}{Ų}% Ux0172
+\DeclareTextCompositeCommand{\textLVIenc}{L8U}{^^da}{Ú}
+\DeclareTextCompositeCommand{\textLVIenc}{L8U}{^^db}{Û}
+\DeclareTextCompositeCommand{\textLVIenc}{L8U}{^^dc}{Ü}
+\DeclareTextCompositeCommand{\textLVIenc}{L8U}{^^dd}{Ý}
+\DeclareTextCompositeCommand{\textLVIenc}{L8U}{^^de}{Þ}
+\DeclareTextCompositeCommand{\textLVIenc}{L8U}{^^df}{ß}
+
+\DeclareTextCompositeCommand{\textLVIenc}{L8U}{^^e0}{ā}% Ux0101
+\DeclareTextCompositeCommand{\textLVIenc}{L8U}{^^e1}{á}
+\DeclareTextCompositeCommand{\textLVIenc}{L8U}{^^e2}{â}
+\DeclareTextCompositeCommand{\textLVIenc}{L8U}{^^e3}{ã}
+\DeclareTextCompositeCommand{\textLVIenc}{L8U}{^^e4}{ä}
+\DeclareTextCompositeCommand{\textLVIenc}{L8U}{^^e5}{å}
+\DeclareTextCompositeCommand{\textLVIenc}{L8U}{^^e6}{æ}
+\DeclareTextCompositeCommand{\textLVIenc}{L8U}{^^e7}{į}% Ux012F
+\DeclareTextCompositeCommand{\textLVIenc}{L8U}{^^e8}{č}% Ux010D
+\DeclareTextCompositeCommand{\textLVIenc}{L8U}{^^e9}{é}
+\DeclareTextCompositeCommand{\textLVIenc}{L8U}{^^ea}{ę}% Ux0119
+\DeclareTextCompositeCommand{\textLVIenc}{L8U}{^^eb}{ë}
+\DeclareTextCompositeCommand{\textLVIenc}{L8U}{^^ec}{ė}% Ux0117
+\DeclareTextCompositeCommand{\textLVIenc}{L8U}{^^ed}{í}
+\DeclareTextCompositeCommand{\textLVIenc}{L8U}{^^ee}{î}
+\DeclareTextCompositeCommand{\textLVIenc}{L8U}{^^ef}{ï}
+\DeclareTextCompositeCommand{\textLVIenc}{L8U}{^^f0}{ð}
+\DeclareTextCompositeCommand{\textLVIenc}{L8U}{^^f1}{ņ}% Ux0146
+\DeclareTextCompositeCommand{\textLVIenc}{L8U}{^^f2}{ō}% Ux014D
+\DeclareTextCompositeCommand{\textLVIenc}{L8U}{^^f3}{ó}
+\DeclareTextCompositeCommand{\textLVIenc}{L8U}{^^f4}{ô}
+\DeclareTextCompositeCommand{\textLVIenc}{L8U}{^^f5}{õ}
+\DeclareTextCompositeCommand{\textLVIenc}{L8U}{^^f6}{ö}
+\DeclareTextCompositeCommand{\textLVIenc}{L8U}{^^f7}{ũ}% Ux0169
+\DeclareTextCompositeCommand{\textLVIenc}{L8U}{^^f8}{ø}
+\DeclareTextCompositeCommand{\textLVIenc}{L8U}{^^f9}{ų}% Ux0173
+\DeclareTextCompositeCommand{\textLVIenc}{L8U}{^^fa}{ú}
+\DeclareTextCompositeCommand{\textLVIenc}{L8U}{^^fb}{û}
+\DeclareTextCompositeCommand{\textLVIenc}{L8U}{^^fc}{ü}
+\DeclareTextCompositeCommand{\textLVIenc}{L8U}{^^fd}{ý}
+\DeclareTextCompositeCommand{\textLVIenc}{L8U}{^^fe}{þ}
+\DeclareTextCompositeCommand{\textLVIenc}{L8U}{^^ff}{ĸ}% Ux0138
+
+
+% ISO-8859-13: Latin7 encoding: Baltic Rim CP-28603
+%
+
+\DeclareTextCompositeCommand{\textLVIIenc}{L8U}{^^a0}{ }
+\DeclareTextCompositeCommand{\textLVIIenc}{L8U}{^^a1}{¡}
+\DeclareTextCompositeCommand{\textLVIIenc}{L8U}{^^a2}{¢}
+\DeclareTextCompositeCommand{\textLVIIenc}{L8U}{^^a3}{£}
+\DeclareTextCompositeCommand{\textLVIIenc}{L8U}{^^a4}{¤}
+\DeclareTextCompositeCommand{\textLVIIenc}{L8U}{^^a5}{¥}
+\DeclareTextCompositeCommand{\textLVIIenc}{L8U}{^^a6}{¦}
+\DeclareTextCompositeCommand{\textLVIIenc}{L8U}{^^a7}{§}
+\DeclareTextCompositeCommand{\textLVIIenc}{L8U}{^^a8}{¨}
+\DeclareTextCompositeCommand{\textLVIIenc}{L8U}{^^a9}{©}
+\DeclareTextCompositeCommand{\textLVIIenc}{L8U}{^^aa}{ª}
+\DeclareTextCompositeCommand{\textLVIIenc}{L8U}{^^ab}{«}
+\DeclareTextCompositeCommand{\textLVIIenc}{L8U}{^^ac}{¬}
+\DeclareTextCompositeCommand{\textLVIIenc}{L8U}{^^ad}{­}
+\DeclareTextCompositeCommand{\textLVIIenc}{L8U}{^^ae}{®}
+\DeclareTextCompositeCommand{\textLVIIenc}{L8U}{^^af}{¯}
+\DeclareTextCompositeCommand{\textLVIIenc}{L8U}{^^b0}{°}
+\DeclareTextCompositeCommand{\textLVIIenc}{L8U}{^^b1}{±}
+\DeclareTextCompositeCommand{\textLVIIenc}{L8U}{^^b2}{²}
+\DeclareTextCompositeCommand{\textLVIIenc}{L8U}{^^b3}{³}
+\DeclareTextCompositeCommand{\textLVIIenc}{L8U}{^^b4}{´}
+\DeclareTextCompositeCommand{\textLVIIenc}{L8U}{^^b5}{µ}
+\DeclareTextCompositeCommand{\textLVIIenc}{L8U}{^^b6}{¶}
+\DeclareTextCompositeCommand{\textLVIIenc}{L8U}{^^b7}{·}
+\DeclareTextCompositeCommand{\textLVIIenc}{L8U}{^^b8}{¸}
+\DeclareTextCompositeCommand{\textLVIIenc}{L8U}{^^b9}{¹}
+\DeclareTextCompositeCommand{\textLVIIenc}{L8U}{^^ba}{º}
+\DeclareTextCompositeCommand{\textLVIIenc}{L8U}{^^bb}{»}
+\DeclareTextCompositeCommand{\textLVIIenc}{L8U}{^^bc}{¼}
+\DeclareTextCompositeCommand{\textLVIIenc}{L8U}{^^bd}{½}
+\DeclareTextCompositeCommand{\textLVIIenc}{L8U}{^^be}{¾}
+\DeclareTextCompositeCommand{\textLVIIenc}{L8U}{^^bf}{¿}
+
+\DeclareTextCompositeCommand{\textLVIIenc}{L8U}{^^c0}{Ą}% Ux0104
+\DeclareTextCompositeCommand{\textLVIIenc}{L8U}{^^c1}{Į}% Ux012E
+\DeclareTextCompositeCommand{\textLVIIenc}{L8U}{^^c2}{Ā}% Ux0100
+\DeclareTextCompositeCommand{\textLVIIenc}{L8U}{^^c3}{Ć}% Ux0106
+\DeclareTextCompositeCommand{\textLVIIenc}{L8U}{^^c4}{Ä}
+\DeclareTextCompositeCommand{\textLVIIenc}{L8U}{^^c5}{Å}
+\DeclareTextCompositeCommand{\textLVIIenc}{L8U}{^^c6}{Ę}% Ux0118
+\DeclareTextCompositeCommand{\textLVIIenc}{L8U}{^^c7}{Ē}% Ux0112
+\DeclareTextCompositeCommand{\textLVIIenc}{L8U}{^^c8}{Č}% Ux010C
+\DeclareTextCompositeCommand{\textLVIIenc}{L8U}{^^c9}{É}
+\DeclareTextCompositeCommand{\textLVIIenc}{L8U}{^^ca}{Ź}% Ux0179
+\DeclareTextCompositeCommand{\textLVIIenc}{L8U}{^^cb}{Ė}% Ux0116
+\DeclareTextCompositeCommand{\textLVIIenc}{L8U}{^^cc}{Ģ}% Ux0122
+\DeclareTextCompositeCommand{\textLVIIenc}{L8U}{^^cd}{Ķ}% Ux0136
+\DeclareTextCompositeCommand{\textLVIIenc}{L8U}{^^ce}{Ī}% Ux012A
+\DeclareTextCompositeCommand{\textLVIIenc}{L8U}{^^cf}{Ļ}% Ux013B
+\DeclareTextCompositeCommand{\textLVIIenc}{L8U}{^^d0}{Š}% Ux0160
+\DeclareTextCompositeCommand{\textLVIIenc}{L8U}{^^d1}{Ń}% Ux0143
+\DeclareTextCompositeCommand{\textLVIIenc}{L8U}{^^d2}{Ņ}% Ux0145
+\DeclareTextCompositeCommand{\textLVIIenc}{L8U}{^^d3}{Ó}
+\DeclareTextCompositeCommand{\textLVIIenc}{L8U}{^^d4}{Ō}% Ux014C
+\DeclareTextCompositeCommand{\textLVIIenc}{L8U}{^^d5}{Õ}
+\DeclareTextCompositeCommand{\textLVIIenc}{L8U}{^^d6}{Ö}
+\DeclareTextCompositeCommand{\textLVIIenc}{L8U}{^^d7}{×}
+\DeclareTextCompositeCommand{\textLVIIenc}{L8U}{^^d8}{Ų}% Ux0172
+\DeclareTextCompositeCommand{\textLVIIenc}{L8U}{^^d9}{Ł}% Ux0141
+\DeclareTextCompositeCommand{\textLVIIenc}{L8U}{^^da}{Ś}% Ux015A
+\DeclareTextCompositeCommand{\textLVIIenc}{L8U}{^^db}{Ū}% Ux016A
+\DeclareTextCompositeCommand{\textLVIIenc}{L8U}{^^dc}{Ü}
+\DeclareTextCompositeCommand{\textLVIIenc}{L8U}{^^dd}{Ż}% Ux017B
+\DeclareTextCompositeCommand{\textLVIIenc}{L8U}{^^de}{Ž}% Ux017D
+\DeclareTextCompositeCommand{\textLVIIenc}{L8U}{^^df}{ß}
+
+\DeclareTextCompositeCommand{\textLVIIenc}{L8U}{^^e0}{ą}% Ux0105
+\DeclareTextCompositeCommand{\textLVIIenc}{L8U}{^^e1}{į}% Ux012F
+\DeclareTextCompositeCommand{\textLVIIenc}{L8U}{^^e2}{ā}% Ux0101
+\DeclareTextCompositeCommand{\textLVIIenc}{L8U}{^^e3}{ć}% Ux0107
+\DeclareTextCompositeCommand{\textLVIIenc}{L8U}{^^e4}{ä}
+\DeclareTextCompositeCommand{\textLVIIenc}{L8U}{^^e5}{å}
+\DeclareTextCompositeCommand{\textLVIIenc}{L8U}{^^e6}{ę}% Ux0119
+\DeclareTextCompositeCommand{\textLVIIenc}{L8U}{^^e7}{ē}% Ux0113
+\DeclareTextCompositeCommand{\textLVIIenc}{L8U}{^^e8}{č}% Ux010D
+\DeclareTextCompositeCommand{\textLVIIenc}{L8U}{^^e9}{é}
+\DeclareTextCompositeCommand{\textLVIIenc}{L8U}{^^ea}{ź}% Ux017A
+\DeclareTextCompositeCommand{\textLVIIenc}{L8U}{^^eb}{ė}% Ux0117
+\DeclareTextCompositeCommand{\textLVIIenc}{L8U}{^^ec}{ģ}% Ux0123
+\DeclareTextCompositeCommand{\textLVIIenc}{L8U}{^^ed}{ķ}% Ux0137
+\DeclareTextCompositeCommand{\textLVIIenc}{L8U}{^^ee}{ī}% Ux012B
+\DeclareTextCompositeCommand{\textLVIIenc}{L8U}{^^ef}{ļ}% Ux013C
+\DeclareTextCompositeCommand{\textLVIIenc}{L8U}{^^f0}{š}% Ux0161
+\DeclareTextCompositeCommand{\textLVIIenc}{L8U}{^^f1}{ń}% Ux0144
+\DeclareTextCompositeCommand{\textLVIIenc}{L8U}{^^f2}{ņ}% Ux0146
+\DeclareTextCompositeCommand{\textLVIIenc}{L8U}{^^f3}{ó}
+\DeclareTextCompositeCommand{\textLVIIenc}{L8U}{^^f4}{ō}% Ux014D
+\DeclareTextCompositeCommand{\textLVIIenc}{L8U}{^^f5}{õ}
+\DeclareTextCompositeCommand{\textLVIIenc}{L8U}{^^f6}{ö}
+\DeclareTextCompositeCommand{\textLVIIenc}{L8U}{^^f7}{÷}
+\DeclareTextCompositeCommand{\textLVIIenc}{L8U}{^^f8}{ų}% Ux0173
+\DeclareTextCompositeCommand{\textLVIIenc}{L8U}{^^f9}{ł}% Ux0142
+\DeclareTextCompositeCommand{\textLVIIenc}{L8U}{^^fa}{ś}% Ux015B
+\DeclareTextCompositeCommand{\textLVIIenc}{L8U}{^^fb}{ū}% Ux016B
+\DeclareTextCompositeCommand{\textLVIIenc}{L8U}{^^fc}{ü}
+\DeclareTextCompositeCommand{\textLVIIenc}{L8U}{^^fd}{ż}% Ux017C
+\DeclareTextCompositeCommand{\textLVIIenc}{L8U}{^^fe}{ž}% Ux017E
+\DeclareTextCompositeCommand{\textLVIIenc}{L8U}{^^ff}{’}% Ux2019
+
+
+% ISO-8859-14: Latin8 encoding: Celtic
+%
+\DeclareTextCompositeCommand{\textLIIXenc}{L8U}{^^a0}{ }
+\DeclareTextCompositeCommand{\textLIIXenc}{L8U}{^^a1}{Ḃ}% Ux1E02
+\DeclareTextCompositeCommand{\textLIIXenc}{L8U}{^^a2}{ḃ}% Ux1E03
+\DeclareTextCompositeCommand{\textLIIXenc}{L8U}{^^a3}{£}
+\DeclareTextCompositeCommand{\textLIIXenc}{L8U}{^^a4}{Ċ}% Ux010A
+\DeclareTextCompositeCommand{\textLIIXenc}{L8U}{^^a5}{ċ}% Ux010B
+\DeclareTextCompositeCommand{\textLIIXenc}{L8U}{^^a6}{Ḋ}% Ux1E0A
+\DeclareTextCompositeCommand{\textLIIXenc}{L8U}{^^a7}{§}
+\DeclareTextCompositeCommand{\textLIIXenc}{L8U}{^^a8}{Ẁ}% Ux1E80
+\DeclareTextCompositeCommand{\textLIIXenc}{L8U}{^^a9}{©}
+\DeclareTextCompositeCommand{\textLIIXenc}{L8U}{^^aa}{Ẃ}% Ux1E82
+\DeclareTextCompositeCommand{\textLIIXenc}{L8U}{^^ab}{ḋ}% Ux1E0B
+\DeclareTextCompositeCommand{\textLIIXenc}{L8U}{^^ac}{Ỳ}% Ux1EF2
+\DeclareTextCompositeCommand{\textLIIXenc}{L8U}{^^ad}{­}
+\DeclareTextCompositeCommand{\textLIIXenc}{L8U}{^^ae}{®}
+\DeclareTextCompositeCommand{\textLIIXenc}{L8U}{^^af}{Ÿ}% Ux0178
+\DeclareTextCompositeCommand{\textLIIXenc}{L8U}{^^b0}{Ḟ}% Ux1E1E
+\DeclareTextCompositeCommand{\textLIIXenc}{L8U}{^^b1}{ḟ}% Ux1E1F
+\DeclareTextCompositeCommand{\textLIIXenc}{L8U}{^^b2}{Ġ}% Ux0120
+\DeclareTextCompositeCommand{\textLIIXenc}{L8U}{^^b3}{ġ}% Ux0121
+\DeclareTextCompositeCommand{\textLIIXenc}{L8U}{^^b4}{Ṁ}% Ux1E40
+\DeclareTextCompositeCommand{\textLIIXenc}{L8U}{^^b5}{ṁ}% Ux1E41
+\DeclareTextCompositeCommand{\textLIIXenc}{L8U}{^^b6}{¶}
+\DeclareTextCompositeCommand{\textLIIXenc}{L8U}{^^b7}{Ṗ}% Ux1E56
+\DeclareTextCompositeCommand{\textLIIXenc}{L8U}{^^b8}{ẁ}% Ux1E81
+\DeclareTextCompositeCommand{\textLIIXenc}{L8U}{^^b9}{ṗ}% Ux1E57
+\DeclareTextCompositeCommand{\textLIIXenc}{L8U}{^^ba}{ẃ}% Ux1E83
+\DeclareTextCompositeCommand{\textLIIXenc}{L8U}{^^bb}{Ṡ}% Ux1E60
+\DeclareTextCompositeCommand{\textLIIXenc}{L8U}{^^bc}{ỳ}% Ux1EF3
+\DeclareTextCompositeCommand{\textLIIXenc}{L8U}{^^bd}{Ẅ}% Ux1E84
+\DeclareTextCompositeCommand{\textLIIXenc}{L8U}{^^be}{ẅ}% Ux1E85
+\DeclareTextCompositeCommand{\textLIIXenc}{L8U}{^^bf}{ṡ}% Ux1E61
+
+\DeclareTextCompositeCommand{\textLIIXenc}{L8U}{^^c0}{À}
+\DeclareTextCompositeCommand{\textLIIXenc}{L8U}{^^c1}{Á}
+\DeclareTextCompositeCommand{\textLIIXenc}{L8U}{^^c2}{Â}
+\DeclareTextCompositeCommand{\textLIIXenc}{L8U}{^^c3}{Ã}
+\DeclareTextCompositeCommand{\textLIIXenc}{L8U}{^^c4}{Ä}
+\DeclareTextCompositeCommand{\textLIIXenc}{L8U}{^^c5}{Å}
+\DeclareTextCompositeCommand{\textLIIXenc}{L8U}{^^c6}{Æ}
+\DeclareTextCompositeCommand{\textLIIXenc}{L8U}{^^c7}{Ç}
+\DeclareTextCompositeCommand{\textLIIXenc}{L8U}{^^c8}{È}
+\DeclareTextCompositeCommand{\textLIIXenc}{L8U}{^^c9}{É}
+\DeclareTextCompositeCommand{\textLIIXenc}{L8U}{^^ca}{Ê}
+\DeclareTextCompositeCommand{\textLIIXenc}{L8U}{^^cb}{Ë}
+\DeclareTextCompositeCommand{\textLIIXenc}{L8U}{^^cc}{Ì}
+\DeclareTextCompositeCommand{\textLIIXenc}{L8U}{^^cd}{Í}
+\DeclareTextCompositeCommand{\textLIIXenc}{L8U}{^^ce}{Î}
+\DeclareTextCompositeCommand{\textLIIXenc}{L8U}{^^cf}{Ï}
+\DeclareTextCompositeCommand{\textLIIXenc}{L8U}{^^d0}{Ŵ}% Ux0174
+\DeclareTextCompositeCommand{\textLIIXenc}{L8U}{^^d1}{Ñ}
+\DeclareTextCompositeCommand{\textLIIXenc}{L8U}{^^d2}{Ò}
+\DeclareTextCompositeCommand{\textLIIXenc}{L8U}{^^d3}{Ó}
+\DeclareTextCompositeCommand{\textLIIXenc}{L8U}{^^d4}{Ô}
+\DeclareTextCompositeCommand{\textLIIXenc}{L8U}{^^d5}{Õ}
+\DeclareTextCompositeCommand{\textLIIXenc}{L8U}{^^d6}{Ö}
+\DeclareTextCompositeCommand{\textLIIXenc}{L8U}{^^d7}{Ṫ}% Ux1E6A
+\DeclareTextCompositeCommand{\textLIIXenc}{L8U}{^^d8}{Ø}
+\DeclareTextCompositeCommand{\textLIIXenc}{L8U}{^^d9}{Ù}
+\DeclareTextCompositeCommand{\textLIIXenc}{L8U}{^^da}{Ú}
+\DeclareTextCompositeCommand{\textLIIXenc}{L8U}{^^db}{Û}
+\DeclareTextCompositeCommand{\textLIIXenc}{L8U}{^^dc}{Ü}
+\DeclareTextCompositeCommand{\textLIIXenc}{L8U}{^^dd}{Ý}
+\DeclareTextCompositeCommand{\textLIIXenc}{L8U}{^^de}{Ŷ}% Ux0176
+\DeclareTextCompositeCommand{\textLIIXenc}{L8U}{^^df}{ß}
+
+\DeclareTextCompositeCommand{\textLIIXenc}{L8U}{^^e0}{à}
+\DeclareTextCompositeCommand{\textLIIXenc}{L8U}{^^e1}{á}
+\DeclareTextCompositeCommand{\textLIIXenc}{L8U}{^^e2}{â}
+\DeclareTextCompositeCommand{\textLIIXenc}{L8U}{^^e3}{ã}
+\DeclareTextCompositeCommand{\textLIIXenc}{L8U}{^^e4}{ä}
+\DeclareTextCompositeCommand{\textLIIXenc}{L8U}{^^e5}{å}
+\DeclareTextCompositeCommand{\textLIIXenc}{L8U}{^^e6}{æ}
+\DeclareTextCompositeCommand{\textLIIXenc}{L8U}{^^e7}{ç}
+\DeclareTextCompositeCommand{\textLIIXenc}{L8U}{^^e8}{è}
+\DeclareTextCompositeCommand{\textLIIXenc}{L8U}{^^e9}{é}
+\DeclareTextCompositeCommand{\textLIIXenc}{L8U}{^^ea}{ê}
+\DeclareTextCompositeCommand{\textLIIXenc}{L8U}{^^eb}{ë}
+\DeclareTextCompositeCommand{\textLIIXenc}{L8U}{^^ec}{ì}
+\DeclareTextCompositeCommand{\textLIIXenc}{L8U}{^^ed}{í}
+\DeclareTextCompositeCommand{\textLIIXenc}{L8U}{^^ee}{î}
+\DeclareTextCompositeCommand{\textLIIXenc}{L8U}{^^ef}{ï}
+\DeclareTextCompositeCommand{\textLIIXenc}{L8U}{^^f0}{ŵ}% Ux0175
+\DeclareTextCompositeCommand{\textLIIXenc}{L8U}{^^f1}{ñ}
+\DeclareTextCompositeCommand{\textLIIXenc}{L8U}{^^f2}{ò}
+\DeclareTextCompositeCommand{\textLIIXenc}{L8U}{^^f3}{ó}
+\DeclareTextCompositeCommand{\textLIIXenc}{L8U}{^^f4}{ô}
+\DeclareTextCompositeCommand{\textLIIXenc}{L8U}{^^f5}{õ}
+\DeclareTextCompositeCommand{\textLIIXenc}{L8U}{^^f6}{ö}
+\DeclareTextCompositeCommand{\textLIIXenc}{L8U}{^^f7}{ṫ}% Ux1E6B
+\DeclareTextCompositeCommand{\textLIIXenc}{L8U}{^^f8}{ø}
+\DeclareTextCompositeCommand{\textLIIXenc}{L8U}{^^f9}{ù}
+\DeclareTextCompositeCommand{\textLIIXenc}{L8U}{^^fa}{ú}
+\DeclareTextCompositeCommand{\textLIIXenc}{L8U}{^^fb}{û}
+\DeclareTextCompositeCommand{\textLIIXenc}{L8U}{^^fc}{ü}
+\DeclareTextCompositeCommand{\textLIIXenc}{L8U}{^^fd}{ý}
+\DeclareTextCompositeCommand{\textLIIXenc}{L8U}{^^fe}{ŷ}% Ux0177
+\DeclareTextCompositeCommand{\textLIIXenc}{L8U}{^^ff}{ÿ}
+
+
+% ISO-8859-15: Latin9 encoding
+%
+\DeclareTextCompositeCommand{\textLIXenc}{L8U}{^^a0}{ }
+\DeclareTextCompositeCommand{\textLIXenc}{L8U}{^^a1}{¡}
+\DeclareTextCompositeCommand{\textLIXenc}{L8U}{^^a2}{¢}
+\DeclareTextCompositeCommand{\textLIXenc}{L8U}{^^a3}{£}
+\DeclareTextCompositeCommand{\textLIXenc}{L8U}{^^a4}{€}% Ux20AC
+\DeclareTextCompositeCommand{\textLIXenc}{L8U}{^^a5}{¥}
+\DeclareTextCompositeCommand{\textLIXenc}{L8U}{^^a6}{Š}% Ux0160
+\DeclareTextCompositeCommand{\textLIXenc}{L8U}{^^a7}{§}
+\DeclareTextCompositeCommand{\textLIXenc}{L8U}{^^a8}{š}% Ux0161
+\DeclareTextCompositeCommand{\textLIXenc}{L8U}{^^a9}{©}
+\DeclareTextCompositeCommand{\textLIXenc}{L8U}{^^aa}{ª}
+\DeclareTextCompositeCommand{\textLIXenc}{L8U}{^^ab}{«}
+\DeclareTextCompositeCommand{\textLIXenc}{L8U}{^^ac}{¬}
+\DeclareTextCompositeCommand{\textLIXenc}{L8U}{^^ad}{­}
+\DeclareTextCompositeCommand{\textLIXenc}{L8U}{^^ae}{®}
+\DeclareTextCompositeCommand{\textLIXenc}{L8U}{^^af}{¯}
+\DeclareTextCompositeCommand{\textLIXenc}{L8U}{^^b0}{°}
+\DeclareTextCompositeCommand{\textLIXenc}{L8U}{^^b1}{±}
+\DeclareTextCompositeCommand{\textLIXenc}{L8U}{^^b2}{²}
+\DeclareTextCompositeCommand{\textLIXenc}{L8U}{^^b3}{³}
+\DeclareTextCompositeCommand{\textLIXenc}{L8U}{^^b4}{Ž}% Ux017D
+\DeclareTextCompositeCommand{\textLIXenc}{L8U}{^^b5}{µ}
+\DeclareTextCompositeCommand{\textLIXenc}{L8U}{^^b6}{¶}
+\DeclareTextCompositeCommand{\textLIXenc}{L8U}{^^b7}{·}
+\DeclareTextCompositeCommand{\textLIXenc}{L8U}{^^b8}{ž}% Ux017E
+\DeclareTextCompositeCommand{\textLIXenc}{L8U}{^^b9}{¹}
+\DeclareTextCompositeCommand{\textLIXenc}{L8U}{^^ba}{º}
+\DeclareTextCompositeCommand{\textLIXenc}{L8U}{^^bb}{»}
+\DeclareTextCompositeCommand{\textLIXenc}{L8U}{^^bc}{Œ}% Ux0152
+\DeclareTextCompositeCommand{\textLIXenc}{L8U}{^^bd}{œ}% Ux0153
+\DeclareTextCompositeCommand{\textLIXenc}{L8U}{^^be}{Ÿ}% Ux0178
+\DeclareTextCompositeCommand{\textLIXenc}{L8U}{^^bf}{¿}
+
+\DeclareTextCompositeCommand{\textLIXenc}{L8U}{^^c0}{À}
+\DeclareTextCompositeCommand{\textLIXenc}{L8U}{^^c1}{Á}
+\DeclareTextCompositeCommand{\textLIXenc}{L8U}{^^c2}{Â}
+\DeclareTextCompositeCommand{\textLIXenc}{L8U}{^^c3}{Ã}
+\DeclareTextCompositeCommand{\textLIXenc}{L8U}{^^c4}{Ä}
+\DeclareTextCompositeCommand{\textLIXenc}{L8U}{^^c5}{Å}
+\DeclareTextCompositeCommand{\textLIXenc}{L8U}{^^c6}{Æ}
+\DeclareTextCompositeCommand{\textLIXenc}{L8U}{^^c7}{Ç}
+\DeclareTextCompositeCommand{\textLIXenc}{L8U}{^^c8}{È}
+\DeclareTextCompositeCommand{\textLIXenc}{L8U}{^^c9}{É}
+\DeclareTextCompositeCommand{\textLIXenc}{L8U}{^^ca}{Ê}
+\DeclareTextCompositeCommand{\textLIXenc}{L8U}{^^cb}{Ë}
+\DeclareTextCompositeCommand{\textLIXenc}{L8U}{^^cc}{Ì}
+\DeclareTextCompositeCommand{\textLIXenc}{L8U}{^^cd}{Í}
+\DeclareTextCompositeCommand{\textLIXenc}{L8U}{^^ce}{Î}
+\DeclareTextCompositeCommand{\textLIXenc}{L8U}{^^cf}{Ï}
+\DeclareTextCompositeCommand{\textLIXenc}{L8U}{^^d0}{×}
+\DeclareTextCompositeCommand{\textLIXenc}{L8U}{^^d1}{Ñ}
+\DeclareTextCompositeCommand{\textLIXenc}{L8U}{^^d2}{Ò}
+\DeclareTextCompositeCommand{\textLIXenc}{L8U}{^^d3}{Ó}
+\DeclareTextCompositeCommand{\textLIXenc}{L8U}{^^d4}{Ô}
+\DeclareTextCompositeCommand{\textLIXenc}{L8U}{^^d5}{Õ}
+\DeclareTextCompositeCommand{\textLIXenc}{L8U}{^^d6}{Ö}
+\DeclareTextCompositeCommand{\textLIXenc}{L8U}{^^d7}{×}
+\DeclareTextCompositeCommand{\textLIXenc}{L8U}{^^d8}{Ø}
+\DeclareTextCompositeCommand{\textLIXenc}{L8U}{^^d9}{Ù}
+\DeclareTextCompositeCommand{\textLIXenc}{L8U}{^^da}{Ú}
+\DeclareTextCompositeCommand{\textLIXenc}{L8U}{^^db}{Û}
+\DeclareTextCompositeCommand{\textLIXenc}{L8U}{^^dc}{Ü}
+\DeclareTextCompositeCommand{\textLIXenc}{L8U}{^^dd}{Ý}
+\DeclareTextCompositeCommand{\textLIXenc}{L8U}{^^de}{Þ}
+\DeclareTextCompositeCommand{\textLIXenc}{L8U}{^^df}{ß}
+
+\DeclareTextCompositeCommand{\textLIXenc}{L8U}{^^e0}{à}
+\DeclareTextCompositeCommand{\textLIXenc}{L8U}{^^e1}{á}
+\DeclareTextCompositeCommand{\textLIXenc}{L8U}{^^e2}{â}
+\DeclareTextCompositeCommand{\textLIXenc}{L8U}{^^e3}{ã}
+\DeclareTextCompositeCommand{\textLIXenc}{L8U}{^^e4}{ä}
+\DeclareTextCompositeCommand{\textLIXenc}{L8U}{^^e5}{å}
+\DeclareTextCompositeCommand{\textLIXenc}{L8U}{^^e6}{æ}
+\DeclareTextCompositeCommand{\textLIXenc}{L8U}{^^e7}{ç}
+\DeclareTextCompositeCommand{\textLIXenc}{L8U}{^^e8}{è}
+\DeclareTextCompositeCommand{\textLIXenc}{L8U}{^^e9}{é}
+\DeclareTextCompositeCommand{\textLIXenc}{L8U}{^^ea}{ê}
+\DeclareTextCompositeCommand{\textLIXenc}{L8U}{^^eb}{ë}
+\DeclareTextCompositeCommand{\textLIXenc}{L8U}{^^ec}{ì}
+\DeclareTextCompositeCommand{\textLIXenc}{L8U}{^^ed}{í}
+\DeclareTextCompositeCommand{\textLIXenc}{L8U}{^^ee}{î}
+\DeclareTextCompositeCommand{\textLIXenc}{L8U}{^^ef}{ï}
+\DeclareTextCompositeCommand{\textLIXenc}{L8U}{^^f0}{ð}
+\DeclareTextCompositeCommand{\textLIXenc}{L8U}{^^f1}{ñ}
+\DeclareTextCompositeCommand{\textLIXenc}{L8U}{^^f2}{ò}
+\DeclareTextCompositeCommand{\textLIXenc}{L8U}{^^f3}{ó}
+\DeclareTextCompositeCommand{\textLIXenc}{L8U}{^^f4}{ô}
+\DeclareTextCompositeCommand{\textLIXenc}{L8U}{^^f5}{õ}
+\DeclareTextCompositeCommand{\textLIXenc}{L8U}{^^f6}{ö}
+\DeclareTextCompositeCommand{\textLIXenc}{L8U}{^^f7}{÷}
+\DeclareTextCompositeCommand{\textLIXenc}{L8U}{^^f8}{ø}
+\DeclareTextCompositeCommand{\textLIXenc}{L8U}{^^f9}{ù}
+\DeclareTextCompositeCommand{\textLIXenc}{L8U}{^^fa}{ú}
+\DeclareTextCompositeCommand{\textLIXenc}{L8U}{^^fb}{û}
+\DeclareTextCompositeCommand{\textLIXenc}{L8U}{^^fc}{ü}
+\DeclareTextCompositeCommand{\textLIXenc}{L8U}{^^fd}{ý}
+\DeclareTextCompositeCommand{\textLIXenc}{L8U}{^^fe}{þ}
+\DeclareTextCompositeCommand{\textLIXenc}{L8U}{^^ff}{ÿ}
+
diff --git a/macros/latex/contrib/pdfx/l8umath-penc.def b/macros/latex/contrib/pdfx/l8umath-penc.def
new file mode 100644
index 0000000000..9a19afc1ef
--- /dev/null
+++ b/macros/latex/contrib/pdfx/l8umath-penc.def
@@ -0,0 +1,2525 @@
+%%
+%% This is file `l8umath-penc.def'
+%% Formerly known as `l8umath.def'
+%%
+%% l8umath-penc.def
+%%
+%% This is a hand-written file, based upon parts
+%% of puenc.def and other files, with extensions
+%% for more automation.
+%%
+%% Copyright 2016, 2017 Ross Moore <ross.moore@mq.edu.au>
+%%
+%% defines the following commands
+%% \LIIXUmapmathaccents
+%% \LIIXUmapisomathgreek
+%% \LIIXUmapmatharrowsA
+%% \LIIXUmapmathoperatorsA
+%% \LIIXUmapmathoperatorsB
+%% \LIIXUmapmiscmathsymbolsA
+%% \LIIXUmapsupparrowsA
+%% \LIIXUmapsupparrowsB
+%% \LIIXUmapmiscmathsymbolsB
+%% \LIIXUmapsuppmathoperators
+%% \LIIXUmapunimathgreek
+%% \LIIXUmapmathalphabets
+%%
+\ProvidesFile{l8umath-penc.def}
+ [2017/06/23 v0.6
+ Custom LaTeX file, for UTF8 encoded math symbols]
+
+%
+% Combining accents in math Ux0300, Ux1DC0 and Ux20D0 blocks
+%
+
+\DeclareTextCommand{\textmathacute}{L8U}[1]{#1́}% U+0301
+\DeclareTextCommand{\textmathbar}{L8U}[1]{#1̄}% U+0304
+\DeclareTextCommand{\textmathbreve}{L8U}[1]{#1̆}% U+0306
+\DeclareTextCommand{\textmathcheck}{L8U}[1]{#1̌}% U+030C
+\DeclareTextCommand{\textmathdot}{L8U}[1]{#1̇}% U+0307
+\DeclareTextCommand{\textmathddot}{L8U}[1]{#1̈}% U+0308
+\DeclareTextCommand{\textmathdddot}{L8U}[1]{#1⃛}% U+20DB
+\DeclareTextCommand{\textmathddddot}{L8U}[1]{#1⃜}% U+20DC
+\DeclareTextCommand{\textmathgrave}{L8U}[1]{#1̀}% U+0300
+\DeclareTextCommand{\textmathhat}{L8U}[1]{#1̂}% U+0302
+\DeclareTextCommand{\textmathring}{L8U}[1]{#1̊}% U+030A
+\DeclareTextCommand{\textmathtilde}{L8U}[1]{#1̃}% U+0303
+\DeclareTextCommand{\textmathvec}{L8U}[1]{#1⃗}% U+20D7
+\DeclareTextCommand{\textmathnot}{L8U}[1]{#1̷}% U+0337
+\DeclareTextCommand{\textmathunderleftarrow}{L8U}[1]{#1⃮}% U+20EE
+
+\DeclareTextCommand{\textmathwidehat}{L8U}[1]{\textmathdowidehat#1}
+\DeclareTextCommand{\textmathdowidehat}{L8U}[2]{#1᷍#2}% U+1DCD
+\DeclareTextCommand{\textmathwidetilde}{L8U}[1]{\textmathdowidetilde#1}
+\DeclareTextCommand{\textmathdowidetilde}{L8U}[2]{#1͠#2}% U+0360
+\DeclareTextCommand{\textmathoverline}{L8U}[1]{\textmathdooverline#1}
+\DeclareTextCommand{\textmathdooverline}{L8U}[2]{#1͞#2}% U+03FE
+\DeclareTextCommand{\textmathunderline}{L8U}[1]{\textmathdounderline#1}
+\DeclareTextCommand{\textmathdounderline}{L8U}[2]{#1͟#2}% U+03FF
+\DeclareTextCommand{\textmathunderrightarrow}{L8U}[1]{\textmathdounderrightarrow#1}
+\DeclareTextCommand{\textmathdounderrightarrow}{L8U}[2]{#1͢#2}% U+0362
+
+\DeclareTextCommand{\textmathnormal}{L8U}[1]{#1}% intended for math generally
+
+\DeclareTextCompositeCommand{\textmathnormal}{L8U}{\acute}{\liixu@mathreorder\textmathacute}
+\DeclareTextCompositeCommand{\textmathnormal}{L8U}{\bar}{\liixu@mathreorder\textmathbar}
+\DeclareTextCompositeCommand{\textmathnormal}{L8U}{\breve}{\liixu@mathreorder\textmathbreve}
+\DeclareTextCompositeCommand{\textmathnormal}{L8U}{\check}{\liixu@mathreorder\textmathcheck}
+\DeclareTextCompositeCommand{\textmathnormal}{L8U}{\dot}{\liixu@mathreorder\textmathdot}
+\DeclareTextCompositeCommand{\textmathnormal}{L8U}{\ddot}{\liixu@mathreorder\textmathddot}
+\DeclareTextCompositeCommand{\textmathnormal}{L8U}{\dddot}{\liixu@mathreorder\textmathdddot}
+\DeclareTextCompositeCommand{\textmathnormal}{L8U}{\ddddot}{\liixu@mathreorder\textmathddddot}
+\DeclareTextCompositeCommand{\textmathnormal}{L8U}{\grave}{\liixu@mathreorder\textmathgrave}
+\DeclareTextCompositeCommand{\textmathnormal}{L8U}{\hat}{\liixu@mathreorder\textmathhat}
+\DeclareTextCompositeCommand{\textmathnormal}{L8U}{\mathring}{\liixu@mathreorder\textmathring}
+\DeclareTextCompositeCommand{\textmathnormal}{L8U}{\tilde}{\liixu@mathreorder\textmathtilde}
+\DeclareTextCompositeCommand{\textmathnormal}{L8U}{\vec}{\liixu@mathreorder\textmathvec}
+\DeclareTextCompositeCommand{\textmathnormal}{L8U}{\not}{\liixu@mathreorder\textmathnot}
+\DeclareTextCompositeCommand{\textmathnormal}{L8U}{\underleftarrow}{\liixu@mathreorder\textmathunderleftarrow}
+
+\DeclareTextCompositeCommand{\textmathnormal}{L8U}{\widehat}{\liixu@mathreorder\textmathwidehat}
+\DeclareTextCompositeCommand{\textmathnormal}{L8U}{\widetilde}{\liixu@mathreorder\textmathwidetilde}
+\DeclareTextCompositeCommand{\textmathnormal}{L8U}{\overline}{\liixu@mathreorder\textmathoverline}
+\DeclareTextCompositeCommand{\textmathnormal}{L8U}{\underline}{\liixu@mathreorder\textmathunderline}
+\DeclareTextCompositeCommand{\textmathnormal}{L8U}{\underrightarrow}{\liixu@mathreorder\textmathunderrightarrow}
+
+\def\LIIXUmapmathaccents{%
+ \let\acute\textmathacute
+ \let\bar\textmathbar
+ \let\breve\textmathbreve
+ \let\check\textmathcheck
+ \let\dot\textmathdot
+ \let\ddot\textmathddot
+ \let\dddot\textmathdddot
+ \let\ddddot\textmathddddot
+ \let\grave\textmathgrave
+ \let\hat\textmathhat
+ \let\mathring\textmathring
+ \let\tilde\textmathtilde
+ \let\vec\textmathvec
+ \let\not\textmathnot
+ \let\underleftarrow\textmathunderleftarrow
+%
+ \let\widehat\textmathwidehat
+ \let\widetilde\textmathwidetilde
+ \let\overline\textmathoverline
+ \let\underline\textmathunderline
+ \let\underrightarrow\textmathunderrightarrow
+}
+
+
+%
+% Letterlike symbols Ux2100 – Ux214F
+%
+%\DeclareTextCommand{\textcelsius}{L8U}{℃}% U+2103
+%\DeclareTextCommand{\texthslash}{L8U}{ℏ}%* U+210F
+%\DeclareTextCommand{\textIm}{L8U}{ℑ}%* U+2111
+%\DeclareTextCommand{\textell}{L8U}{ℓ}%* U+2113
+%\DeclareTextCommand{\textnumero}{L8U}{№}% U+2116
+%\DeclareTextCommand{\textcircledP}{L8U}{℗}% U+2117
+%\DeclareTextCommand{\textwp}{L8U}{℘}%* U+2118
+%\DeclareTextCommand{\textRe}{L8U}{ℜ}%* U+211C
+%\DeclareTextCommand{\textrecipe}{L8U}{℞}% U+211E
+%\DeclareTextCommand{\textservicemark}{L8U}{℠}% U+2120
+%\DeclareTextCommand{\texttrademark}{L8U}{™}% U+2122
+%\DeclareTextCommand{\textohm}{L8U}{Ω}% U+2126
+%\DeclareTextCommand{\textmho}{L8U}{℧}%* U+2127
+%\DeclareTextCommand{\textriota}{L8U}{℩}%* U+2129
+%\DeclareTextCommand{\textangstrom}{L8U}{Å}% U+212B
+%\DeclareTextCommand{\textestimated}{L8U}{℮}% U+212E
+%\DeclareTextCommand{\textFinv}{L8U}{Ⅎ}%* U+2132
+%\DeclareTextCommand{\textaleph}{L8U}{ℵ}%* U+2135
+%\DeclareTextCommand{\textbeth}{L8U}{ℶ}%* U+2136
+%\DeclareTextCommand{\textgimel}{L8U}{ℷ}%* U+2137
+%\DeclareTextCommand{\textdaleth}{L8U}{ℸ}%* U+2138
+%\DeclareTextCommand{\textfax}{L8U}{℻}%* U+213B
+%\DeclareTextCommand{\textGame}{L8U}{⅁}%* U+2141
+%\DeclareTextCommand{\textinvamp}{L8U}{⅋}% U+214B
+
+
+\def\LIIXUmapisomathgreek{%
+ \let\alpha\textalpha
+ \let\beta\textbeta
+ \let\gamma\textgamma
+ \let\delta\textdelta
+ \let\epsilon\textvarepsilon % note var-swap
+ \let\zeta\textzeta
+ \let\eta\texteta
+ \let\theta\texttheta % possible var-swap
+ \let\iota\textiota
+ \let\kappa\textkappa % possible var-swap
+ \let\lambda\textlambda
+ \let\mu\textmugreek
+ \let\nu\textnu
+ \let\xi\textxi
+ \let\omicron\textomicron % not used in math
+ \let\pi\textpi
+ \let\rho\textrho % possible var-swap
+ \let\varsigma\textvarsigma
+ \let\sigma\textsigma
+ \let\tau\texttau
+ \let\upsilon\textupsilon
+ \let\phi\textvarphi % note var-swap
+ \let\chi\textchi
+ \let\psi\textpsi
+ \let\omega\textomega
+ \let\varepsilon\textepsilon % note var-swap
+ \let\varkappa\textvarkappa % possible var-swap
+ \let\vartheta\textvartheta % possible var-swap
+ \let\varupsilon\textvarupsilon
+ \let\varphi\textphi % note var-swap
+ \let\varpi\textvarpi
+ \let\varrho\textvarrho % possible var-swap
+ \let\Alpha\textAlpha % not used in math
+ \let\Beta\textBeta % not used in math
+ \let\Gamma\textGamma
+ \let\Delta\textDelta
+ \let\Epsilon\textEpsilon
+ \let\Zeta\textZeta
+ \let\Eta\textEta
+ \let\Theta\textTheta
+ \let\Iota\textIota
+ \let\Kappa\textKappa % not used in math
+ \let\Lambda\textLambda
+ \let\Mu\textMu
+ \let\Nu\textNu
+ \let\Xi\textXi
+ \let\Omicron\textOmicron % not used in math
+ \let\Pi\textPi
+ \let\Rho\textRho
+ \let\Sigma\textSigma
+ \let\Tau\textTau
+ \let\Upsilon\textUpsilon
+ \let\Phi\textPhi
+ \let\Chi\textChi
+ \let\Psi\textPsi
+ \let\Omega\textOmega
+ \let\varTheta\textvarTheta
+ \let\Digamma\textDigamma %
+ \let\digamma\textdigamma %
+}
+
+%
+% Arrows Ux2190 – Ux21FF
+%
+\DeclareTextCommand{\textleftarrow}{L8U}{←}%* U+2190
+\DeclareTextCommand{\textuparrow}{L8U}{↑}%* U+2191
+\DeclareTextCommand{\textrightarrow}{L8U}{→}%* U+2192
+\DeclareTextCommand{\textdownarrow}{L8U}{↓}%* U+2193
+\DeclareTextCommand{\textleftrightarrow}{L8U}{↔}%* U+2194
+\DeclareTextCommand{\textupdownarrow}{L8U}{↕}%* U+2195
+\DeclareTextCommand{\textnwarrow}{L8U}{↖}%* U+2196
+\DeclareTextCommand{\textnearrow}{L8U}{↗}%* U+2197
+\DeclareTextCommand{\textsearrow}{L8U}{↘}%* U+2198
+\DeclareTextCommand{\textswarrow}{L8U}{↙}%* U+2199
+\DeclareTextCommand{\textnleftarrow}{L8U}{↚}%* U+219A
+\DeclareTextCommand{\textnrightarrow}{L8U}{↛}%* U+219B
+\DeclareTextCommand{\texttwoheadleftarrow}{L8U}{↞}%* U+219E
+\DeclareTextCommand{\textntwoheadleftarrow}{L8U}{↞̸}%* U+219E U+0338
+\DeclareTextCommand{\texttwoheaduparrow}{L8U}{↟}%* U+219F
+\DeclareTextCommand{\texttwoheadrightarrow}{L8U}{↠}%* U+21A0
+\DeclareTextCommand{\textntwoheadrightarrow}{L8U}{↠̸}%* U+21A0 U+0338
+\DeclareTextCommand{\texttwoheaddownarrow}{L8U}{↡}%* U+21A1
+\DeclareTextCommand{\textleftarrowtail}{L8U}{↢}%* U+21A2
+\DeclareTextCommand{\textrightarrowtail}{L8U}{↣}%* U+21A3
+\DeclareTextCommand{\textmapsto}{L8U}{↦}%* U+21A6
+\DeclareTextCommand{\texthookleftarrow}{L8U}{↩}%* U+21A9
+\DeclareTextCommand{\texthookrightarrow}{L8U}{↪}%* U+21AA
+\DeclareTextCommand{\textlooparrowleft}{L8U}{↫}%* U+21AB
+\DeclareTextCommand{\textlooparrowright}{L8U}{↬}%* U+21AC
+\DeclareTextCommand{\textnleftrightarrow}{L8U}{↮}%* U+21AE
+\DeclareTextCommand{\textlightning}{L8U}{↯}%* U+21AF
+\DeclareTextCommand{\textdlsh}{L8U}{↵}%* U+21B5
+\DeclareTextCommand{\textcurvearrowleft}{L8U}{↶}%* U+21B6
+\DeclareTextCommand{\textcurvearrowright}{L8U}{↷}%* U+21B7
+\DeclareTextCommand{\textleftharpoonup}{L8U}{↼}%* U+21BC
+\DeclareTextCommand{\textleftharpoondown}{L8U}{↽}%* U+21BD
+\DeclareTextCommand{\textupharpoonright}{L8U}{↾}%* U+21BE
+\DeclareTextCommand{\textupharpoonleft}{L8U}{↿}%* U+21BF
+\DeclareTextCommand{\textrightharpoonup}{L8U}{⇀}%* U+21C0
+\DeclareTextCommand{\textrightharpoondown}{L8U}{⇁}%* U+21C1
+\DeclareTextCommand{\textdownharpoonright}{L8U}{⇂}%* U+21C2
+\DeclareTextCommand{\textdownharpoonleft}{L8U}{⇃}%* U+21C3
+\DeclareTextCommand{\textrightleftarrows}{L8U}{⇄}%* U+21C4
+\DeclareTextCommand{\textupdownarrows}{L8U}{⇅}%* U+21C5
+\DeclareTextCommand{\textleftrightarrows}{L8U}{⇆}%* U+21C6
+\DeclareTextCommand{\textleftleftarrows}{L8U}{⇇}%* U+21C7
+\DeclareTextCommand{\textupuparrows}{L8U}{⇈}%* U+21C8
+\DeclareTextCommand{\textrightrightarrows}{L8U}{⇉}%* U+21C9
+\DeclareTextCommand{\textdowndownarrows}{L8U}{⇊}%* U+21CA
+\DeclareTextCommand{\textleftrightharpoons}{L8U}{⇋}%* U+21CB
+\DeclareTextCommand{\textrightleftharpoons}{L8U}{⇌}%* U+21CC
+\DeclareTextCommand{\textnLeftarrow}{L8U}{⇍}%* U+21CD
+\DeclareTextCommand{\textnLeftrightarrow}{L8U}{⇎}%* U+21CE
+\DeclareTextCommand{\textnRightarrow}{L8U}{⇏}%* U+21CF
+\DeclareTextCommand{\textLeftarrow}{L8U}{⇐}%* U+21D0
+\DeclareTextCommand{\textUparrow}{L8U}{⇑}%* U+21D1
+\DeclareTextCommand{\textRightarrow}{L8U}{⇒}%* U+21D2
+\DeclareTextCommand{\textDownarrow}{L8U}{⇓}%* U+21D3
+\DeclareTextCommand{\textLeftrightarrow}{L8U}{⇔}%* U+21D4
+\DeclareTextCommand{\textUpdownarrow}{L8U}{⇕}%* U+21D5
+\DeclareTextCommand{\textNwarrow}{L8U}{⇖}%* U+21D6
+\DeclareTextCommand{\textNearrow}{L8U}{⇗}%* U+21D7
+\DeclareTextCommand{\textSearrow}{L8U}{⇘}%* U+21D8
+\DeclareTextCommand{\textSwarrow}{L8U}{⇙}%* U+21D9
+\DeclareTextCommand{\textLleftarrow}{L8U}{⇚}%* U+21DA
+\DeclareTextCommand{\textRrightarrow}{L8U}{⇛}%* U+21DB
+\DeclareTextCommand{\textleftsquigarrow}{L8U}{⇜}%* U+21DC
+\DeclareTextCommand{\textrightsquigarrow}{L8U}{⇝}%* U+21DD
+\DeclareTextCommand{\textdashleftarrow}{L8U}{⇠}%* U+21E0
+\DeclareTextCommand{\textdasheduparrow}{L8U}{⇡}%* U+21E1
+\DeclareTextCommand{\textdashrightarrow}{L8U}{⇢}%* U+21E2
+\DeclareTextCommand{\textdasheddownarrow}{L8U}{⇣}%* U+21E3
+\DeclareTextCommand{\textpointer}{L8U}{⇨}%* U+21E8
+\DeclareTextCommand{\textdownuparrows}{L8U}{⇵}%* U+21F5
+\DeclareTextCommand{\textleftarrowtriangle}{L8U}{⇽}%* U+21FD
+\DeclareTextCommand{\textrightarrowtriangle}{L8U}{⇾}%* U+21FE
+\DeclareTextCommand{\textleftrightarrowtriangle}{L8U}{⇿}%* U+21FF
+
+\def\LIIXUmapmatharrowsA{%
+ \let\leftarrow\textleftarrow
+ \let\uparrow\textuparrow
+ \let\rightarrow\textrightarrow
+ \let\downarrow\textdownarrow
+ \let\leftrightarrow\textleftrightarrow
+ \let\updownarrow\textupdownarrow
+ \let\nwarrow\textnwarrow
+ \let\nearrow\textnearrow
+ \let\searrow\textsearrow
+ \let\swarrow\textswarrow
+ \let\nleftarrow\textnleftarrow
+ \let\nrightarrow\textnrightarrow
+ \let\twoheadleftarrow\texttwoheadleftarrow
+ \let\ntwoheadleftarrow\textntwoheadleftarrow
+ \let\twoheaduparrow\texttwoheaduparrow
+ \let\twoheadrightarrow\texttwoheadrightarrow
+ \let\ntwoheadrightarrow\textntwoheadrightarrow
+ \let\twoheaddownarrow\texttwoheaddownarrow
+ \let\leftarrowtail\textleftarrowtail
+ \let\rightarrowtail\textrightarrowtail
+ \let\mapsto\textmapsto
+ \let\hookleftarrow\texthookleftarrow
+ \let\hookrightarrow\texthookrightarrow
+ \let\looparrowleft\textlooparrowleft
+ \let\looparrowright\textlooparrowright
+ \let\nleftrightarrow\textnleftrightarrow
+ \let\lightning\textlightning
+ \let\dlsh\textdlsh
+ \let\curvearrowleft\textcurvearrowleft
+ \let\curvearrowright\textcurvearrowright
+ \let\leftharpoonup\textleftharpoonup
+ \let\leftharpoondown\textleftharpoondown
+ \let\upharpoonright\textupharpoonright
+ \let\upharpoonleft\textupharpoonleft
+ \let\rightharpoonup\textrightharpoonup
+ \let\rightharpoondown\textrightharpoondown
+ \let\downharpoonright\textdownharpoonright
+ \let\downharpoonleft\textdownharpoonleft
+ \let\rightleftarrows\textrightleftarrows
+ \let\updownarrows\textupdownarrows
+ \let\leftrightarrows\textleftrightarrows
+ \let\leftleftarrows\textleftleftarrows
+ \let\upuparrows\textupuparrows
+ \let\rightrightarrows\textrightrightarrows
+ \let\downdownarrows\textdowndownarrows
+ \let\leftrightharpoons\textleftrightharpoons
+ \let\rightleftharpoons\textrightleftharpoons
+ \let\nLeftarrow\textnLeftarrow
+ \let\nLeftrightarrow\textnLeftrightarrow
+ \let\nRightarrow\textnRightarrow
+ \let\Leftarrow\textLeftarrow
+ \let\Uparrow\textUparrow
+ \let\Rightarrow\textRightarrow
+ \let\Downarrow\textDownarrow
+ \let\Leftrightarrow\textLeftrightarrow
+ \let\Updownarrow\textUpdownarrow
+ \let\Nwarrow\textNwarrow
+ \let\Nearrow\textNearrow
+ \let\Searrow\textSearrow
+ \let\Swarrow\textSwarrow
+ \let\Lleftarrow\textLleftarrow
+ \let\Rrightarrow\textRrightarrow
+ \let\leftsquigarrow\textleftsquigarrow
+ \let\rightsquigarrow\textrightsquigarrow
+ \let\dashleftarrow\textdashleftarrow
+ \let\dasheduparrow\textdasheduparrow
+ \let\dashrightarrow\textdashrightarrow
+ \let\dasheddownarrow\textdasheddownarrow
+ \let\pointer\textpointer
+ \let\downuparrows\textdownuparrows
+ \let\leftarrowtriangle\textleftarrowtriangle
+ \let\rightarrowtriangle\textrightarrowtriangle
+ \let\leftrightarrowtriangle\textleftrightarrowtriangle
+}
+
+%
+% Mathematical operators Ux2200 — Ux22FF
+%
+
+\DeclareTextCommand{\textforall}{L8U}{∀}%* U+2200
+\DeclareTextCommand{\textcomplement}{L8U}{∁}%* U+2201
+\DeclareTextCommand{\textpartial}{L8U}{∂}%* U+2202
+\DeclareTextCommand{\textexists}{L8U}{∃}%* U+2203
+\DeclareTextCommand{\textnexists}{L8U}{∄}%* U+2204
+\DeclareTextCommand{\textemptyset}{L8U}{∅}%* U+2205
+\DeclareTextCommand{\texttriangle}{L8U}{∆}%* U+2206
+\DeclareTextCommand{\textnabla}{L8U}{∇}%* U+2207
+\DeclareTextCommand{\textin}{L8U}{∈}%* U+2208
+\DeclareTextCommand{\textnotin}{L8U}{∉}%* U+2209
+\DeclareTextCommand{\textsmallin}{L8U}{∊}%* U+220A
+\DeclareTextCommand{\textni}{L8U}{∋}%* U+220B
+\DeclareTextCommand{\textnotowner}{L8U}{∌}%* U+220C
+\DeclareTextCommand{\textsmallowns}{L8U}{∍}%* U+220D
+%
+\DeclareTextCommand{\textprod}{L8U}{∏}%* U+220F
+\DeclareTextCommand{\textamalg}{L8U}{∐}%* U+2210
+\DeclareTextCommand{\textsum}{L8U}{∑}%* U+2211
+\DeclareTextCommand{\textminus}{L8U}{−}% U+2212
+\DeclareTextCommand{\textmp}{L8U}{∓}%* U+2213
+\DeclareTextCommand{\textdotplus}{L8U}{∔}%* U+2214
+\DeclareTextCommand{\textDivides}{L8U}{∕}%* U+2215
+\DeclareTextCommand{\textDividesNot}{L8U}{∕⃒}%* U+2215 U+20D2
+\DeclareTextCommand{\textsetminus}{L8U}{∖}%* U+2216
+\DeclareTextCommand{\textast}{L8U}{∗}%* U+2217
+\DeclareTextCommand{\textcirc}{L8U}{∘}%* U+2218
+\DeclareTextCommand{\textbulletoperator}{L8U}{∙}% U+2219
+\DeclareTextCommand{\textsurd}{L8U}{√}%* U+221A
+%
+\DeclareTextCommand{\textpropto}{L8U}{∝}%* U+221D
+\DeclareTextCommand{\textinfty}{L8U}{∞}%* U+221E
+%
+\DeclareTextCommand{\textangle}{L8U}{∠}%* U+2220
+\DeclareTextCommand{\textmeasuredangle}{L8U}{∡}%* U+2221
+\DeclareTextCommand{\textsphericalangle}{L8U}{∢}%* U+2222
+\DeclareTextCommand{\textmid}{L8U}{∣}%* U+2223
+\DeclareTextCommand{\textnmid}{L8U}{∤}%* U+2224
+\DeclareTextCommand{\textparallel}{L8U}{∥}%* U+2225
+\DeclareTextCommand{\textnparallel}{L8U}{∦}%* U+2226
+\DeclareTextCommand{\textwedge}{L8U}{∧}%* U+2227
+\DeclareTextCommand{\textowedge}{L8U}{∧⃝}%* U+2227 U+20DD
+\DeclareTextCommand{\textvee}{L8U}{∨}%* U+2228
+\DeclareTextCommand{\textovee}{L8U}{∨⃝}%* U+2228 U+20DD
+\DeclareTextCommand{\textcap}{L8U}{∩}%* U+2229
+\DeclareTextCommand{\textcup}{L8U}{∪}%* U+222A
+\DeclareTextCommand{\textint}{L8U}{∫}%* U+222B
+\DeclareTextCommand{\textiint}{L8U}{∬}%* U+222C
+\DeclareTextCommand{\textiiint}{L8U}{∭}%* U+222D
+\DeclareTextCommand{\textoint}{L8U}{∮}%* U+222E
+\DeclareTextCommand{\textoiint}{L8U}{∯}%* U+222F
+%
+\DeclareTextCommand{\textointclockwise}{L8U}{∲}%* U+2232
+\DeclareTextCommand{\textointctrclockwise}{L8U}{∳}%* U+2233
+\DeclareTextCommand{\texttherefore}{L8U}{∴}%* U+2234
+\DeclareTextCommand{\textbecause}{L8U}{∵}%* U+2235
+\DeclareTextCommand{\textvdotdot}{L8U}{∶}%* U+2236
+\DeclareTextCommand{\textsquaredots}{L8U}{∷}%* U+2237
+\DeclareTextCommand{\textdotminus}{L8U}{∸}%* U+2238
+\DeclareTextCommand{\texteqcolon}{L8U}{∹}%* U+2239
+%
+\DeclareTextCommand{\textsim}{L8U}{∼}%* U+223C
+\DeclareTextCommand{\textbacksim}{L8U}{∽}%* U+223D
+\DeclareTextCommand{\textnbacksim}{L8U}{∽̸}%* U+223D U+0338
+\DeclareTextCommand{\textwr}{L8U}{≀}%* U+2240
+\DeclareTextCommand{\textnsim}{L8U}{≁}%* U+2241
+\DeclareTextCommand{\texteqsim}{L8U}{≂}%* U+2242
+\DeclareTextCommand{\textneqsim}{L8U}{≂̸}%* U+2242 U+0338
+\DeclareTextCommand{\textsimeq}{L8U}{≃}%* U+2243
+\DeclareTextCommand{\textnsimeq}{L8U}{≄}%* U+2244
+\DeclareTextCommand{\textcong}{L8U}{≅}%* U+2245
+%
+\DeclareTextCommand{\textncong}{L8U}{≇}%* U+2247
+\DeclareTextCommand{\textapprox}{L8U}{≈}%* U+2248
+\DeclareTextCommand{\textnapprox}{L8U}{≉}%* U+2249
+\DeclareTextCommand{\textapproxeq}{L8U}{≊}%* U+224A
+\DeclareTextCommand{\textnapproxeq}{L8U}{≊̸}%* U+224A U+0338
+\DeclareTextCommand{\texttriplesim}{L8U}{≋}%* U+224B
+\DeclareTextCommand{\textntriplesim}{L8U}{≋̸}%* U+224B U+0338
+\DeclareTextCommand{\textbackcong}{L8U}{≌}%* U+224C
+\DeclareTextCommand{\textnbackcong}{L8U}{≌̸}%* U+224C U+0338
+\DeclareTextCommand{\textasymp}{L8U}{≍}%* U+224D
+\DeclareTextCommand{\textnasymp}{L8U}{≭}%* U+224D U+0338
+\DeclareTextCommand{\textBumpeq}{L8U}{≎}%* U+224E
+\DeclareTextCommand{\textnBumpeq}{L8U}{≎̸}%* U+224E U+0338
+\DeclareTextCommand{\textbumpeq}{L8U}{≏}%* U+224F
+\DeclareTextCommand{\textnbumpeq}{L8U}{≏̸}%* U+224F U+0338
+\DeclareTextCommand{\textdoteq}{L8U}{≐}%* U+2250
+\DeclareTextCommand{\textndoteq}{L8U}{≐̸}%* U+2250 U+0338
+\DeclareTextCommand{\textdoteqdot}{L8U}{≑}%* U+2251
+\DeclareTextCommand{\textnDoteq}{L8U}{≑̸}%* U+2251 U+0338
+\DeclareTextCommand{\textfallingdoteq}{L8U}{≒}%* U+2252
+\DeclareTextCommand{\textnfallingdoteq}{L8U}{≒̸}%* U+2252 U+0338
+\DeclareTextCommand{\textrisingdoteq}{L8U}{≓}%* U+2253
+\DeclareTextCommand{\textnrisingdoteq}{L8U}{≓̸}%* U+2253 U+0338
+\DeclareTextCommand{\textcolonequals}{L8U}{≔}%* U+2254
+\DeclareTextCommand{\textequalscolon}{L8U}{≕}%* U+2255
+\DeclareTextCommand{\texteqcirc}{L8U}{≖}%* U+2256
+\DeclareTextCommand{\textneqcirc}{L8U}{≖̸}%* U+2256 U+0338
+\DeclareTextCommand{\textcirceq}{L8U}{≗}%* U+2257
+\DeclareTextCommand{\textncirceq}{L8U}{≗̸}%* U+2257 U+0338
+%
+\DeclareTextCommand{\texthateq}{L8U}{≙}%* U+2259
+\DeclareTextCommand{\textnhateq}{L8U}{≙̸}%* U+2259 U+0338
+%
+\DeclareTextCommand{\texttriangleeq}{L8U}{≜}%* U+225C
+%
+\DeclareTextCommand{\textneq}{L8U}{≠}%* U+2260
+\DeclareTextCommand{\textne}{L8U}{≠}%* U+2260
+\DeclareTextCommand{\textequiv}{L8U}{≡}%* U+2261
+\DeclareTextCommand{\textnequiv}{L8U}{≢}%* U+2262
+%
+\DeclareTextCommand{\textleq}{L8U}{≤}%* U+2264
+\DeclareTextCommand{\textle}{L8U}{≤}%* U+2264
+\DeclareTextCommand{\textgeq}{L8U}{≥}%* U+2265
+\DeclareTextCommand{\textge}{L8U}{≥}%* U+2265
+\DeclareTextCommand{\textleqq}{L8U}{≦}%* U+2266
+\DeclareTextCommand{\textnleqq}{L8U}{≦̸}%* U+2266 U+0338
+\DeclareTextCommand{\textgeqq}{L8U}{≧}%* U+2267
+\DeclareTextCommand{\textngeqq}{L8U}{≧̸}%* U+2267 U+0338
+\DeclareTextCommand{\textlneqq}{L8U}{≨}%* U+2268
+\DeclareTextCommand{\textgneqq}{L8U}{≩}%* U+2269
+\DeclareTextCommand{\textll}{L8U}{≪}%* U+226A
+\DeclareTextCommand{\textnll}{L8U}{≪̸}%* U+226A U+0338
+\DeclareTextCommand{\textgg}{L8U}{≫}%* U+226B
+\DeclareTextCommand{\textngg}{L8U}{≫̸}%* U+226B U+0338
+\DeclareTextCommand{\textbetween}{L8U}{≬}%* U+226C
+%
+\DeclareTextCommand{\textnless}{L8U}{≮}%* U+226E
+\DeclareTextCommand{\textngtr}{L8U}{≯}%* U+226F
+\DeclareTextCommand{\textnleq}{L8U}{≰}%* U+2270
+\DeclareTextCommand{\textngeq}{L8U}{≱}%* U+2271
+\DeclareTextCommand{\textlesssim}{L8U}{≲}%* U+2272
+\DeclareTextCommand{\textgtrsim}{L8U}{≳}%* U+2273
+\DeclareTextCommand{\textnlesssim}{L8U}{≴}%* U+2274
+\DeclareTextCommand{\textngtrsim}{L8U}{≵}%* U+2275
+\DeclareTextCommand{\textlessgtr}{L8U}{≶}%* U+2276
+\DeclareTextCommand{\textgtrless}{L8U}{≷}%* U+2277
+\DeclareTextCommand{\textngtrless}{L8U}{≸}%* U+2278
+\DeclareTextCommand{\textnlessgtr}{L8U}{≹}%* U+2279
+\DeclareTextCommand{\textprec}{L8U}{≺}%* U+227A
+\DeclareTextCommand{\textsucc}{L8U}{≻}%* U+227B
+\DeclareTextCommand{\textpreccurlyeq}{L8U}{≼}%* U+227C
+\DeclareTextCommand{\textsucccurlyeq}{L8U}{≽}%* U+227D
+\DeclareTextCommand{\textprecsim}{L8U}{≾}%* U+227E
+\DeclareTextCommand{\textnprecsim}{L8U}{≾̸}%* U+227E U+0338
+\DeclareTextCommand{\textsuccsim}{L8U}{≿}%* U+227F
+\DeclareTextCommand{\textnsuccsim}{L8U}{≿̸}%* U+227F U+0338
+\DeclareTextCommand{\textnprec}{L8U}{⊀}%* U+2280
+\DeclareTextCommand{\textnsucc}{L8U}{⊁}%* U+2281
+\DeclareTextCommand{\textsubset}{L8U}{⊂}%* U+2282
+\DeclareTextCommand{\textsupset}{L8U}{⊃}%* U+2283
+\DeclareTextCommand{\textnsubset}{L8U}{⊄}%* U+2284
+\DeclareTextCommand{\textnsupset}{L8U}{⊅}%* U+2285
+\DeclareTextCommand{\textsubseteq}{L8U}{⊆}%* U+2286
+\DeclareTextCommand{\textsupseteq}{L8U}{⊇}%* U+2287
+\DeclareTextCommand{\textnsubseteq}{L8U}{⊈}%* U+2288
+\DeclareTextCommand{\textnsupseteq}{L8U}{⊉}%* U+2289
+\DeclareTextCommand{\textsubsetneq}{L8U}{⊊}%* U+228A
+\DeclareTextCommand{\textsupsetneq}{L8U}{⊋}%* U+228B
+%
+\DeclareTextCommand{\textcupdot}{L8U}{⊍}%* U+228D
+\DeclareTextCommand{\textcupplus}{L8U}{⊎}%* U+228E
+\DeclareTextCommand{\textsqsubset}{L8U}{⊏}%* U+228F
+\DeclareTextCommand{\textnsqsubset}{L8U}{⊏̸}%* U+228F U+0338
+\DeclareTextCommand{\textsqsupset}{L8U}{⊐}%* U+2290
+\DeclareTextCommand{\textnsqsupset}{L8U}{⊐̸}%* U+2290 U+0338
+\DeclareTextCommand{\textsqsubseteq}{L8U}{⊑}%* U+2291
+\DeclareTextCommand{\textnsqsubseteq}{L8U}{⋢}%* U+2291 U+0338
+\DeclareTextCommand{\textsqsupseteq}{L8U}{⊒}%* U+2292
+\DeclareTextCommand{\textnsqsupseteq}{L8U}{⋣}%* U+2292 U+0338
+\DeclareTextCommand{\textsqcap}{L8U}{⊓}%* U+2293
+\DeclareTextCommand{\textsqcup}{L8U}{⊔}%* U+2294
+\DeclareTextCommand{\textoplus}{L8U}{⊕}%* U+2295
+\DeclareTextCommand{\textominus}{L8U}{⊖}%* U+2296
+\DeclareTextCommand{\textotimes}{L8U}{⊗}%* U+2297
+\DeclareTextCommand{\textoslash}{L8U}{⊘}%* U+2298
+\DeclareTextCommand{\textodot}{L8U}{⊙}%* U+2299
+\DeclareTextCommand{\textcircledcirc}{L8U}{⊚}%* U+229A
+\DeclareTextCommand{\textcircledast}{L8U}{⊛}%* U+229B
+%
+\DeclareTextCommand{\textcircleddash}{L8U}{⊝}%* U+229D
+\DeclareTextCommand{\textboxplus}{L8U}{⊞}%* U+229E
+\DeclareTextCommand{\textboxminus}{L8U}{⊟}%* U+229F
+\DeclareTextCommand{\textboxtimes}{L8U}{⊠}%* U+22A0
+\DeclareTextCommand{\textboxdot}{L8U}{⊡}%* U+22A1
+\DeclareTextCommand{\textvdash}{L8U}{⊢}%* U+22A2
+\DeclareTextCommand{\textdashv}{L8U}{⊣}%* U+22A3
+\DeclareTextCommand{\textndashv}{L8U}{⊣̸}%* U+22A3 U+0338
+\DeclareTextCommand{\texttop}{L8U}{⊤}%* U+22A4
+\DeclareTextCommand{\textndownvdash}{L8U}{⊤̸}%* U+22A4 U+0338
+\DeclareTextCommand{\textbot}{L8U}{⊥}%* U+22A5
+\DeclareTextCommand{\textnupvdash}{L8U}{⊥̸}%* U+22A5 U+0338
+%
+\DeclareTextCommand{\textvDash}{L8U}{⊨}%* U+22A8
+\DeclareTextCommand{\textVdash}{L8U}{⊩}%* U+22A9
+\DeclareTextCommand{\textVvdash}{L8U}{⊪}%* U+22AA
+\DeclareTextCommand{\textnVvash}{L8U}{⊪̸}%* U+22AA U+0338
+\DeclareTextCommand{\textVDash}{L8U}{⊫}%* U+22AB
+\DeclareTextCommand{\textnvdash}{L8U}{⊬}%* U+22AC
+\DeclareTextCommand{\textnvDash}{L8U}{⊭}%* U+22AD
+\DeclareTextCommand{\textnVdash}{L8U}{⊮}%* U+22AE
+\DeclareTextCommand{\textnVDash}{L8U}{⊯}%* U+22AF
+%
+\DeclareTextCommand{\textlhd}{L8U}{⊲}%* U+22B2
+\DeclareTextCommand{\textrhd}{L8U}{⊳}%* U+22B3
+\DeclareTextCommand{\textunlhd}{L8U}{⊴}%* U+22B4
+\DeclareTextCommand{\textunrhd}{L8U}{⊵}%* U+22B5
+\DeclareTextCommand{\textmultimapdotbothA}{L8U}{⊶}%* U+22B6
+\DeclareTextCommand{\textmultimapdotbothB}{L8U}{⊷}%* U+22B7
+\DeclareTextCommand{\textmultimap}{L8U}{⊸}%* U+22B8
+%
+\DeclareTextCommand{\textveebar}{L8U}{⊻}%* U+22BB
+\DeclareTextCommand{\textbarwedge}{L8U}{⊼}%* U+22BC
+%
+\DeclareTextCommand{\textstar}{L8U}{⋆}%* U+22C6
+\DeclareTextCommand{\textdivideontimes}{L8U}{⋇}%* U+22C7
+\DeclareTextCommand{\textbowtie}{L8U}{⋈}%* U+22C8
+\DeclareTextCommand{\textltimes}{L8U}{⋉}%* U+22C9
+\DeclareTextCommand{\textrtimes}{L8U}{⋊}%* U+22CA
+\DeclareTextCommand{\textleftthreetimes}{L8U}{⋋}%* U+22CB
+\DeclareTextCommand{\textrightthreetimes}{L8U}{⋌}%* U+22CC
+\DeclareTextCommand{\textbacksimeq}{L8U}{⋍}%* U+22CD
+\DeclareTextCommand{\textnbacksimeq}{L8U}{⋍̸}%* U+22CD U+0338
+\DeclareTextCommand{\textcurlyvee}{L8U}{⋎}%* U+22CE
+\DeclareTextCommand{\textcurlywedge}{L8U}{⋏}%* U+22CF
+\DeclareTextCommand{\textSubset}{L8U}{⋐}%* U+22D0
+\DeclareTextCommand{\textnSubset}{L8U}{⋐̸}%* U+22D0 U+0338
+\DeclareTextCommand{\textSupset}{L8U}{⋑}%* U+22D1
+\DeclareTextCommand{\textnSupset}{L8U}{⋑̸}%* U+22D1 U+0338
+\DeclareTextCommand{\textCap}{L8U}{⋒}%* U+22D2
+\DeclareTextCommand{\textCup}{L8U}{⋓}%* U+22D3
+\DeclareTextCommand{\textpitchfork}{L8U}{⋔}%* U+22D4
+%
+\DeclareTextCommand{\textlessdot}{L8U}{⋖}%* U+22D6
+\DeclareTextCommand{\textgtrdot}{L8U}{⋗}%* U+22D7
+\DeclareTextCommand{\textlll}{L8U}{⋘}%* U+22D8
+\DeclareTextCommand{\textggg}{L8U}{⋙}%* U+22D9
+\DeclareTextCommand{\textlesseqgtr}{L8U}{⋚}%* U+22DA
+\DeclareTextCommand{\textgtreqless}{L8U}{⋛}%* U+22DB
+\DeclareTextCommand{\textcurlyeqprec}{L8U}{⋞}%* U+22DE
+\DeclareTextCommand{\textncurlyeqprec}{L8U}{⋞̸}%* U+22DE U+0338
+\DeclareTextCommand{\textcurlyeqsucc}{L8U}{⋟}%* U+22DF
+\DeclareTextCommand{\textncurlyeqsucc}{L8U}{⋟̸}%* U+22DF U+0338
+\DeclareTextCommand{\textnpreccurlyeq}{L8U}{⋠}%* U+22E0
+\DeclareTextCommand{\textnsucccurlyeq}{L8U}{⋡}%* U+22E1
+\DeclareTextCommand{\textnqsubseteq}{L8U}{⋢}%* U+22E2
+\DeclareTextCommand{\textnqsupseteq}{L8U}{⋣}%* U+22E3
+\DeclareTextCommand{\textsqsubsetneq}{L8U}{⋤}%* U+22E4
+\DeclareTextCommand{\textsqsupsetneq}{L8U}{⋥}%* U+22E5
+\DeclareTextCommand{\textlnsim}{L8U}{⋦}%* U+22E6
+\DeclareTextCommand{\textgnsim}{L8U}{⋧}%* U+22E7
+\DeclareTextCommand{\textprecnsim}{L8U}{⋨}%* U+22E8
+\DeclareTextCommand{\textsuccnsim}{L8U}{⋩}%* U+22E9
+\DeclareTextCommand{\textntriangleleft}{L8U}{⋪}%* U+22EA
+\DeclareTextCommand{\textntriangleright}{L8U}{⋫}%* U+22EB
+\DeclareTextCommand{\textntrianglelefteq}{L8U}{⋬}%* U+22EC
+\DeclareTextCommand{\textntrianglerighteq}{L8U}{⋭}%* U+22ED
+\DeclareTextCommand{\textvdots}{L8U}{⋮}%* U+22EE
+\DeclareTextCommand{\textcdots}{L8U}{⋯}%* U+22EF
+\DeclareTextCommand{\textudots}{L8U}{⋰}%* U+22F0
+\DeclareTextCommand{\textddots}{L8U}{⋱}%* U+22F1
+\DeclareTextCommand{\textbarin}{L8U}{⋶}%* U+22F6
+
+\def\LIIXUmapmathoperatorsA{%
+ \let\forall\textforall
+ \let\complement\textcomplement
+ \let\partial\textpartial
+ \let\exists\textexists
+ \let\nexists\textnexists
+ \let\emptyset\textemptyset
+ \let\triangle\texttriangle
+ \let\nabla\textnabla
+ \let\in\textin
+ \let\notin\textnotin
+ \let\smallin\textsmallin
+ \let\ni\textni
+ \let\notowner\textnotowner
+ \let\smallowns\textsmallowns
+ \let\prod\textprod
+ \let\amalg\textamalg
+ \let\sum\textsum
+ \let\minus\textminus
+ \let\mp\textmp
+ \let\dotplus\textdotplus
+ \let\Divides\textDivides
+ \let\DividesNot\textDividesNot
+ \let\setminus\textsetminus
+ \let\ast\textast
+ \let\circ\textcirc
+ \let\bulletoperator\textbulletoperator
+ \let\surd\textsurd
+ \let\propto\textpropto
+ \let\infty\textinfty
+ \let\angle\textangle
+ \let\measuredangle\textmeasuredangle
+ \let\sphericalangle\textsphericalangle
+ \let\mid\textmid
+ \let\nmid\textnmid
+ \let\parallel\textparallel
+ \let\nparallel\textnparallel
+ \let\wedge\textwedge
+ \let\land\textwedge
+ \let\owedge\textowedge
+ \let\vee\textvee
+ \let\lor\textvee
+ \let\ovee\textovee
+ \let\cap\textcap
+ \let\cup\textcup
+ \let\int\textint
+ \let\iint\textiint
+ \let\iiint\textiiint
+ \let\oint\textoint
+ \let\oiint\textoiint
+ \let\ointclockwise\textointclockwise
+ \let\ointctrclockwise\textointctrclockwise
+ \let\therefore\texttherefore
+ \let\because\textbecause
+ \let\vdotdot\textvdotdot
+ \let\squaredots\textsquaredots
+ \let\dotminus\textdotminus
+ \let\eqcolon\texteqcolon
+ \let\sim\textsim
+ \let\backsim\textbacksim
+ \let\nbacksim\textnbacksim
+ \let\wr\textwr
+ \let\nsim\textnsim
+ \let\eqsim\texteqsim
+ \let\neqsim\textneqsim
+ \let\simeq\textsimeq
+ \let\nsimeq\textnsimeq
+ \let\cong\textcong
+ \let\ncong\textncong
+ \let\approx\textapprox
+ \let\napprox\textnapprox
+ \let\approxeq\textapproxeq
+ \let\napproxeq\textnapproxeq
+ \let\triplesim\texttriplesim
+ \let\ntriplesim\textntriplesim
+ \let\backcong\textbackcong
+ \let\nbackcong\textnbackcong
+ \let\asymp\textasymp
+ \let\nasymp\textnasymp
+ \let\Bumpeq\textBumpeq
+ \let\nBumpeq\textnBumpeq
+ \let\bumpeq\textbumpeq
+ \let\nbumpeq\textnbumpeq
+ \let\doteq\textdoteq
+ \let\ndoteq\textndoteq
+ \let\doteqdot\textdoteqdot
+ \let\nDoteq\textnDoteq
+ \let\fallingdoteq\textfallingdoteq
+ \let\nfallingdoteq\textnfallingdoteq
+ \let\risingdoteq\textrisingdoteq
+ \let\nrisingdoteq\textnrisingdoteq
+ \let\colonequals\textcolonequals
+ \let\equalscolon\textequalscolon
+ \let\eqcirc\texteqcirc
+ \let\neqcirc\textneqcirc
+ \let\circeq\textcirceq
+ \let\ncirceq\textncirceq
+ \let\hateq\texthateq
+ \let\nhateq\textnhateq
+ \let\triangleeq\texttriangleeq
+ \let\neq\textneq
+ \let\ne\textne
+ \let\equiv\textequiv
+ \let\nequiv\textnequiv
+ \let\leq\textleq
+ \let\le\textle
+ \let\geq\textgeq
+ \let\ge\textge
+ \let\leqq\textleqq
+ \let\nleqq\textnleqq
+ \let\geqq\textgeqq
+ \let\ngeqq\textngeqq
+ \let\lneqq\textlneqq
+ \let\gneqq\textgneqq
+ \let\ll\textll
+ \let\nll\textnll
+ \let\gg\textgg
+ \let\ngg\textngg
+ \let\between\textbetween
+ \let\nless\textnless
+ \let\ngtr\textngtr
+ \let\nleq\textnleq
+ \let\ngeq\textngeq
+ \let\lesssim\textlesssim
+ \let\gtrsim\textgtrsim
+ \let\nlesssim\textnlesssim
+ \let\ngtrsim\textngtrsim
+ \let\lessgtr\textlessgtr
+ \let\gtrless\textgtrless
+ \let\ngtrless\textngtrless
+ \let\nlessgtr\textnlessgtr
+ \let\prec\textprec
+ \let\succ\textsucc
+ \let\preccurlyeq\textpreccurlyeq
+ \let\succcurlyeq\textsucccurlyeq
+ \let\precsim\textprecsim
+ \let\nprecsim\textnprecsim
+ \let\succsim\textsuccsim
+ \let\nsuccsim\textnsuccsim
+}
+\def\LIIXUmapmathoperatorsB{%
+ \let\nprec\textnprec
+ \let\nsucc\textnsucc
+ \let\subset\textsubset
+ \let\supset\textsupset
+ \let\nsubset\textnsubset
+ \let\nsupset\textnsupset
+ \let\subseteq\textsubseteq
+ \let\supseteq\textsupseteq
+ \let\nsubseteq\textnsubseteq
+ \let\nsupseteq\textnsupseteq
+ \let\subsetneq\textsubsetneq
+ \let\supsetneq\textsupsetneq
+ \let\cupdot\textcupdot
+ \let\cupplus\textcupplus
+ \let\sqsubset\textsqsubset
+ \let\nsqsubset\textnsqsubset
+ \let\sqsupset\textsqsupset
+ \let\nsqsupset\textnsqsupset
+ \let\sqsubseteq\textsqsubseteq
+ \let\nsqsubseteq\textnsqsubseteq
+ \let\sqsupseteq\textsqsupseteq
+ \let\nsqsupseteq\textnsqsupseteq
+ \let\sqcap\textsqcap
+ \let\sqcup\textsqcup
+ \let\oplus\textoplus
+ \let\ominus\textominus
+ \let\otimes\textotimes
+ \let\oslash\textoslash
+ \let\odot\textodot
+ \let\circledcirc\textcircledcirc
+ \let\ocirc\textcircledcirc
+ \let\circledast\textcircledast
+ \let\oast\textcircledast
+ \let\circleddash\textcircleddash
+ \let\boxplus\textboxplus
+ \let\boxminus\textboxminus
+ \let\boxtimes\textboxtimes
+ \let\boxdot\textboxdot
+ \let\vdash\textvdash
+ \let\dashv\textdashv
+ \let\ndashv\textndashv
+ \let\top\texttop
+ \let\ndownvdash\textndownvdash
+ \let\bot\textbot
+ \let\nupvdash\textnupvdash
+ \let\vDash\textvDash
+ \let\Vdash\textVdash
+ \let\Vvdash\textVvdash
+ \let\nVvash\textnVvash
+ \let\VDash\textVDash
+ \let\nvdash\textnvdash
+ \let\nvDash\textnvDash
+ \let\nVdash\textnVdash
+ \let\nVDash\textnVDash
+ \let\lhd\textlhd
+ \let\rhd\textrhd
+ \let\unlhd\textunlhd
+ \let\unrhd\textunrhd
+ \let\multimapdotbothA\textmultimapdotbothA
+ \let\multimapdotbothB\textmultimapdotbothB
+ \let\multimap\textmultimap
+ \let\veebar\textveebar
+ \let\barwedge\textbarwedge
+ \let\star\textstar
+ \let\divideontimes\textdivideontimes
+ \let\bowtie\textbowtie
+ \let\ltimes\textltimes
+ \let\rtimes\textrtimes
+ \let\leftthreetimes\textleftthreetimes
+ \let\rightthreetimes\textrightthreetimes
+ \let\backsimeq\textbacksimeq
+ \let\nbacksimeq\textnbacksimeq
+ \let\curlyvee\textcurlyvee
+ \let\curlywedge\textcurlywedge
+ \let\Subset\textSubset
+ \let\nSubset\textnSubset
+ \let\Supset\textSupset
+ \let\nSupset\textnSupset
+ \let\Cap\textCap
+ \let\doublecap\textCap
+ \let\Cup\textCup
+ \let\doublecup\textCup
+ \let\pitchfork\textpitchfork
+ \let\lessdot\textlessdot
+ \let\gtrdot\textgtrdot
+ \let\lll\textlll
+ \let\ggg\textggg
+ \let\lesseqgtr\textlesseqgtr
+ \let\gtreqless\textgtreqless
+ \let\curlyeqprec\textcurlyeqprec
+ \let\ncurlyeqprec\textncurlyeqprec
+ \let\curlyeqsucc\textcurlyeqsucc
+ \let\ncurlyeqsucc\textncurlyeqsucc
+ \let\npreccurlyeq\textnpreccurlyeq
+ \let\nsucccurlyeq\textnsucccurlyeq
+ \let\nqsubseteq\textnqsubseteq
+ \let\nqsupseteq\textnqsupseteq
+ \let\sqsubsetneq\textsqsubsetneq
+ \let\sqsupsetneq\textsqsupsetneq
+ \let\lnsim\textlnsim
+ \let\gnsim\textgnsim
+ \let\precnsim\textprecnsim
+ \let\succnsim\textsuccnsim
+ \let\ntriangleleft\textntriangleleft
+ \let\ntriangleright\textntriangleright
+ \let\ntrianglelefteq\textntrianglelefteq
+ \let\ntrianglerighteq\textntrianglerighteq
+ \let\vdots\textvdots
+ \let\cdots\textcdots
+ \let\udots\textudots
+ \let\ddots\textddots
+ \let\barin\textbarin
+}
+
+%
+% Miscellaneous Math Symbols-A Ux27C0 – Ux27EF
+%
+\DeclareTextCommand{\textperp}{L8U}{⟂}%* U+27C2
+\DeclareTextCommand{\textnotperp}{L8U}{⟂}%* U+27C2 U+0338
+\DeclareTextCommand{\textveedot}{L8U}{⟇}%* U+27C7
+\DeclareTextCommand{\textwedgedot}{L8U}{⟑}%* U+27D1
+\DeclareTextCommand{\textleftspoon}{L8U}{⟜}%* U+27DC
+\DeclareTextCommand{\textlbrackdbl}{L8U}{⟦}%* U+27E6
+\DeclareTextCommand{\textrbrackdbl}{L8U}{⟧}%* U+27E7
+
+\def\LIIXUmapmiscmathsymbolsA{%
+ \let\perp\textperp
+ \let\notperp\textnotperp
+ \let\veedot\textveedot
+ \let\wedgedot\textwedgedot
+ \let\leftspoon\textleftspoon
+ \let\tlbrackdbl\textlbrackdbl
+ \let\rbrackdbl\textrbrackdbl
+}
+
+%
+% Supplementary Arrows-A Ux27F0 – Ux27FF
+%
+\DeclareTextCommand{\textcirclearrowleft}{L8U}{⟲}%* U+27F2
+\DeclareTextCommand{\textcirclearrowright}{L8U}{⟳}%* U+27F3
+%
+\DeclareTextCommand{\textlongleftarrow}{L8U}{⟵}%* U+27F5
+\DeclareTextCommand{\textlongrightarrow}{L8U}{⟶}%* U+27F6
+\DeclareTextCommand{\textlongleftrightarrow}{L8U}{⟷}%* U+27F7
+\DeclareTextCommand{\textLongleftarrow}{L8U}{⟸}%* U+27F8
+\DeclareTextCommand{\textLongrightarrow}{L8U}{⟹}%* U+27F9
+\DeclareTextCommand{\textLongleftrightarrow}{L8U}{⟺}%* U+27FA
+%
+\DeclareTextCommand{\textlongmapsto}{L8U}{⟼}%* U+27FC
+\DeclareTextCommand{\textLongmapsfrom}{L8U}{⟽}%* U+27FD
+\DeclareTextCommand{\textLongmapsto}{L8U}{⟾}%* U+27FE
+%
+
+\def\LIIXUmapsupparrowsA{%
+ \let\circlearrowleft\textcirclearrowleft
+ \let\circlearrowright\textcirclearrowright
+ \let\longleftarrow\textlongleftarrow
+ \let\longrightarrow\textlongrightarrow
+ \let\longleftrightarrow\textlongleftrightarrow
+ \let\Longleftarrow\textLongleftarrow
+ \let\Longrightarrow\textLongrightarrow
+ \let\Longleftrightarrow\textLongleftrightarrow
+ \let\longmapsto\textlongmapsto
+ \let\Longmapsfrom\textLongmapsfrom
+ \let\Longmapsto\textLongmapsto
+}
+
+%
+% Supplementary Arrows-B Ux2900 – Ux297F
+%
+\DeclareTextCommand{\textnwsearrow}{L8U}{⤡}%* U+2921
+\DeclareTextCommand{\textneswarrow}{L8U}{⤢}%* U+2922
+\DeclareTextCommand{\textlhooknwarrow}{L8U}{⤣}%* U+2923
+\DeclareTextCommand{\textrhooknearrow}{L8U}{⤤}%* U+2924
+\DeclareTextCommand{\textlhooksearrow}{L8U}{⤥}%* U+2925
+\DeclareTextCommand{\textrhookswarrow}{L8U}{⤦}%* U+2926
+%
+\DeclareTextCommand{\textleadsto}{L8U}{⤳}%* U+2933
+\DeclareTextCommand{\textrcurvearrowne}{L8U}{⤴}%* U+2934
+\DeclareTextCommand{\textlcurvearrowse}{L8U}{⤵}%* U+2935
+\DeclareTextCommand{\textlcurvearrowsw}{L8U}{⤶}%* U+2936
+\DeclareTextCommand{\textrcurvearrowse}{L8U}{⤷}%* U+2937
+\DeclareTextCommand{\textlcurvearrowdown}{L8U}{⤸}%* U+2938
+\DeclareTextCommand{\textrcurvearrowdown}{L8U}{⤹}%* U+2939
+\DeclareTextCommand{\textrcurvearrowleft}{L8U}{⤺}%* U+293A
+\DeclareTextCommand{\textrcurvearrowright}{L8U}{⤻}%* U+293B
+%
+\DeclareTextCommand{\textleftrightharpoon}{L8U}{⥊}%* U+294A
+\DeclareTextCommand{\textrightleftharpoon}{L8U}{⥋}%* U+294B
+\DeclareTextCommand{\textupdownharpoonrightleft}{L8U}{⥌}%* U+294C
+\DeclareTextCommand{\textupdownharpoonleftright}{L8U}{⥍}%* U+294D
+%
+\DeclareTextCommand{\textleftleftharpoons}{L8U}{⥢}%* U+2962
+\DeclareTextCommand{\textupupharpoons}{L8U}{⥣}%* U+2963
+\DeclareTextCommand{\textrightrightharpoons}{L8U}{⥤}%* U+2964
+\DeclareTextCommand{\textdowndownharpoons}{L8U}{⥥}%* U+2965
+%
+\DeclareTextCommand{\textleftbarharpoon}{L8U}{⥪}%* U+296A
+\DeclareTextCommand{\textbarleftharpoon}{L8U}{⥫}%* U+296B
+\DeclareTextCommand{\textrightbarharpoon}{L8U}{⥬}%* U+296C
+\DeclareTextCommand{\textbarrightharpoon}{L8U}{⥭}%* U+296D
+\DeclareTextCommand{\textupdownharpoons}{L8U}{⥮}%* U+296E
+\DeclareTextCommand{\textdownupharpoons}{L8U}{⥯}%* U+296F
+%
+\DeclareTextCommand{\textmoo}{L8U}{⥿̶}%* U+297F U+0336
+
+\def\LIIXUmapsupparrowsB{%
+ \let\nwsearrow\textnwsearrow
+ \let\neswarrow\textneswarrow
+ \let\lhooknwarrow\textlhooknwarrow
+ \let\rhooknearrow\textrhooknearrow
+ \let\lhooksearrow\textlhooksearrow
+ \let\rhookswarrow\textrhookswarrow
+ \let\leadsto\textleadsto
+ \let\rcurvearrowne\textrcurvearrowne
+ \let\lcurvearrowse\textlcurvearrowse
+ \let\lcurvearrowsw\textlcurvearrowsw
+ \let\rcurvearrowse\textrcurvearrowse
+ \let\lcurvearrowdown\textlcurvearrowdown
+ \let\rcurvearrowdown\textrcurvearrowdown
+ \let\rcurvearrowleft\textrcurvearrowleft
+ \let\rcurvearrowright\textrcurvearrowright
+ \let\leftrightharpoon\textleftrightharpoon
+ \let\rightleftharpoon\textrightleftharpoon
+ \let\updownharpoonrightleft\textupdownharpoonrightleft
+ \let\updownharpoonleftright\textupdownharpoonleftright
+ \let\leftleftharpoons\textleftleftharpoons
+ \let\upupharpoons\textupupharpoons
+ \let\rightrightharpoons\textrightrightharpoons
+ \let\downdownharpoons\textdowndownharpoons
+ \let\leftbarharpoon\textleftbarharpoon
+ \let\barleftharpoon\textbarleftharpoon
+ \let\rightbarharpoon\textrightbarharpoon
+ \let\barrightharpoon\textbarrightharpoon
+ \let\updownharpoons\textupdownharpoons
+ \let\downupharpoons\textdownupharpoons
+ \let\moo\textmoo
+}
+
+%
+% Miscellaneous Math Symbols-B Ux2980 – Ux29FF
+%
+\DeclareTextCommand{\textllparenthesis}{L8U}{⦇}%* U+2987
+\DeclareTextCommand{\textrrparenthesis}{L8U}{⦈}%* U+2988
+%
+\DeclareTextCommand{\textinvdiameter}{L8U}{⦰}%* U+29B0
+%
+\DeclareTextCommand{\textobar}{L8U}{⦶}%* U+29B6
+%
+\DeclareTextCommand{\textobslash}{L8U}{⦸}%* U+29B8
+%
+\DeclareTextCommand{\textobot}{L8U}{⦺}%* U+29BA
+\DeclareTextCommand{\textNoChemicalCleaning}{L8U}{⦻}%* U+29BB
+%
+\DeclareTextCommand{\textolessthan}{L8U}{⧀}%* U+29C0
+\DeclareTextCommand{\textogreaterthan}{L8U}{⧁}%* U+29C1
+%
+\DeclareTextCommand{\textboxslash}{L8U}{⧄}%* U+29C4
+\DeclareTextCommand{\textboxbslash}{L8U}{⧅}%* U+29C5
+\DeclareTextCommand{\textboxast}{L8U}{⧆}%* U+29C6
+\DeclareTextCommand{\textboxcircle}{L8U}{⧇}%* U+29C7
+\DeclareTextCommand{\textboxbox}{L8U}{⧈}%* U+29C8
+%
+\DeclareTextCommand{\textValve}{L8U}{⧓}%* U+29D3
+\DeclareTextCommand{\textmultimapboth}{L8U}{⧟}%* U+29DF
+%
+\DeclareTextCommand{\textshuffle}{L8U}{⧢}%* U+29E2
+
+\def\LIIXUmapmiscmathsymbolsB{%
+ \let\llparenthesis\textllparenthesis
+ \let\rrparenthesis\textrrparenthesis
+ \let\invdiameter\textinvdiameter
+ \let\obar\textobar
+ \let\obslash\textobslash
+ \let\obot\textobot
+ \let\NoChemicalCleaning\textNoChemicalCleaning
+ \let\olessthan\textolessthan
+ \let\ogreaterthan\textogreaterthan
+ \let\boxslash\textboxslash
+ \let\boxbslash\textboxbslash
+ \let\boxast\textboxast
+ \let\boxcircle\textboxcircle
+ \let\boxbox\textboxbox
+ \let\Valve\textValve
+ \let\multimapboth\textmultimapboth
+ \let\shuffle\textshuffle
+}
+
+%
+% Supplemental Math Operators Ux2A00 – Ux2AFF
+%
+\DeclareTextCommand{\textuplus}{L8U}{⨃}%* U+2A04
+\DeclareTextCommand{\textbigdoublewedge}{L8U}{⨇}%* U+2A07
+\DeclareTextCommand{\textbigdoublevee}{L8U}{⨈}%* U+2A08
+\DeclareTextCommand{\textJoin}{L8U}{⨝}%* U+2A1D
+%
+\DeclareTextCommand{\textfatsemi}{L8U}{⨟}%* U+2A1F
+\DeclareTextCommand{\textcircplus}{L8U}{⨢}%* U+2A22
+\DeclareTextCommand{\textminusdot}{L8U}{⨪}%* U+2A2A
+\DeclareTextCommand{\textdottimes}{L8U}{⨰}%* U+2A30
+\DeclareTextCommand{\textdtimes}{L8U}{⨲}%* U+2A32
+\DeclareTextCommand{\textodiv}{L8U}{⨸}%* U+2A38
+\DeclareTextCommand{\textinvneg}{L8U}{⨼}%* U+2A3C
+\DeclareTextCommand{\textcapdot}{L8U}{⩀}%* U+2A40
+\DeclareTextCommand{\textsqdoublecap}{L8U}{⩎}%* U+2A4E
+\DeclareTextCommand{\textsqdoublecup}{L8U}{⩏}%* U+2A4F
+\DeclareTextCommand{\textdoublewedge}{L8U}{⩕}%* U+2A55
+\DeclareTextCommand{\textdoublevee}{L8U}{⩖}%* U+2A56
+\DeclareTextCommand{\textdoublebarwedge}{L8U}{⩞}%* U+2A5E
+\DeclareTextCommand{\textveedoublebar}{L8U}{⩣}%* U+2A63
+\DeclareTextCommand{\texteqdot}{L8U}{⩦}%* U+2A66
+\DeclareTextCommand{\textneqdot}{L8U}{⩦}%* U+2A66 U+0338
+\DeclareTextCommand{\textcoloncolonequals}{L8U}{⩴}%* U+2A74
+\DeclareTextCommand{\textleqslant}{L8U}{⩽}%* U+2A7D
+\DeclareTextCommand{\textnleqslant}{L8U}{⩽̸}%* U+2A7D U+0338
+\DeclareTextCommand{\textgeqslant}{L8U}{⩾}%* U+2A7E
+\DeclareTextCommand{\textngeqslant}{L8U}{⩾̸}%* U+2A7E U+0338
+\DeclareTextCommand{\textlessapprox}{L8U}{⪅}%* U+2A85
+\DeclareTextCommand{\textnlessapprox}{L8U}{⪅̸}%* U+2A85 U+0338
+\DeclareTextCommand{\textgtrapprox}{L8U}{⪆}%* U+2A86
+\DeclareTextCommand{\textngtrapprox}{L8U}{⪆̸}%* U+2A86 U+0338
+\DeclareTextCommand{\textlneq}{L8U}{⪇}%* U+2A87
+\DeclareTextCommand{\textgneq}{L8U}{⪈}%* U+2A88
+\DeclareTextCommand{\textlnapprox}{L8U}{⪉}%* U+2A89
+\DeclareTextCommand{\textgnapprox}{L8U}{⪊}%* U+2A8A
+\DeclareTextCommand{\textlesseqqgtr}{L8U}{⪋}%* U+2A8B
+\DeclareTextCommand{\textgtreqqless}{L8U}{⪌}%* U+2A8C
+\DeclareTextCommand{\texteqslantless}{L8U}{⪕}%* U+2A95
+\DeclareTextCommand{\texteqslantgtr}{L8U}{⪖}%* U+2A96
+\DeclareTextCommand{\textleftslice}{L8U}{⪦}%* U+2AA6
+\DeclareTextCommand{\textrightslice}{L8U}{⪧}%* U+2AA7
+\DeclareTextCommand{\textpreceq}{L8U}{⪯}%* U+2AAF
+\DeclareTextCommand{\textnpreceq}{L8U}{⪯̸}%* U+2AAF U+0338
+\DeclareTextCommand{\textsucceq}{L8U}{⪰}%* U+2AB0
+\DeclareTextCommand{\textnsucceq}{L8U}{⪰̸}%* U+2AB0 U+0338
+\DeclareTextCommand{\textprecneq}{L8U}{⪱}%* U+2AB1
+\DeclareTextCommand{\textsuccneq}{L8U}{⪲}%* U+2AB2
+\DeclareTextCommand{\textpreceqq}{L8U}{⪳}%* U+2AB3
+\DeclareTextCommand{\textnpreceqq}{L8U}{⪳̸}%* U+2AB3 U+0338
+\DeclareTextCommand{\textsucceqq}{L8U}{⪴}%* U+2AB4
+\DeclareTextCommand{\textnsucceqq}{L8U}{⪴̸}%* U+2AB4 U+0338
+\DeclareTextCommand{\textprecneqq}{L8U}{⪵}%* U+2AB5
+\DeclareTextCommand{\textsuccneqq}{L8U}{⪶}%* U+2AB6
+\DeclareTextCommand{\textprecapprox}{L8U}{⪷}%* U+2AB7
+\DeclareTextCommand{\textnprecapprox}{L8U}{⪷̸}%* U+2AB7 U+0338
+\DeclareTextCommand{\textsuccapprox}{L8U}{⪸}%* U+2AB8
+\DeclareTextCommand{\textnsuccapprox}{L8U}{⪸̸}%* U+2AB8 U+0338
+\DeclareTextCommand{\textprecnapprox}{L8U}{⪹}%* U+2AB9
+\DeclareTextCommand{\textsuccnapprox}{L8U}{⪺}%* U+2ABA
+\DeclareTextCommand{\textsubseteqq}{L8U}{⫅}%* U+2AC5
+\DeclareTextCommand{\textnsubseteqq}{L8U}{⫅̸}%* U+2AC5 U+0338
+\DeclareTextCommand{\textsupseteqq}{L8U}{⫆}%* U+2AC6
+\DeclareTextCommand{\textnsupseteqq}{L8U}{⫆̸}%* U+2AC6 U+0338
+\DeclareTextCommand{\textdashV}{L8U}{⫣}%* U+2AE3
+\DeclareTextCommand{\textndashV}{L8U}{⫣̸}%* U+2AE3 U+0338
+\DeclareTextCommand{\textDashv}{L8U}{⫤}%* U+2AE4
+\DeclareTextCommand{\textnDashv}{L8U}{⫤̸}%* U+2AE4 U+0338
+\DeclareTextCommand{\textDashV}{L8U}{⫥}%* U+2AE5
+\DeclareTextCommand{\textnDashV}{L8U}{⫥̸}%* U+2AE5 U+0338
+\DeclareTextCommand{\textdownmodels}{L8U}{⫪}%* U+2AEA
+\DeclareTextCommand{\textndownmodels}{L8U}{⫪̸}%* U+2AEA U+0338
+\DeclareTextCommand{\textupmodels}{L8U}{⫫}%* U+2AEB
+\DeclareTextCommand{\textnupmodels}{L8U}{⫫̸}%* U+2AEB U+0338
+\DeclareTextCommand{\textupspoon}{L8U}{⫯}%* U+2AEF
+\DeclareTextCommand{\textinterleave}{L8U}{⫴}%* U+2AF4
+\DeclareTextCommand{\textsslash}{L8U}{⫽}%* U+2AFD
+%
+
+\def\LIIXUmapsuppmathoperators{%
+ \let\uplus\textuplus
+ \let\bigdoublewedge\textbigdoublewedge
+ \let\bigdoublevee\textbigdoublevee
+ \let\Join\textJoin
+ \let\fatsemi\textfatsemi
+ \let\circplus\textcircplus
+ \let\minusdot\textminusdot
+ \let\dottimes\textdottimes
+ \let\dtimes\textdtimes
+ \let\odiv\textodiv
+ \let\invneg\textinvneg
+ \let\capdot\textcapdot
+ \let\sqdoublecap\textsqdoublecap
+ \let\sqdoublecup\textsqdoublecup
+ \let\doublewedge\textdoublewedge
+ \let\doublevee\textdoublevee
+ \let\doublebarwedge\textdoublebarwedge
+ \let\veedoublebar\textveedoublebar
+ \let\eqdot\texteqdot
+ \let\neqdot\textneqdot
+ \let\coloncolonequals\textcoloncolonequals
+ \let\leqslant\textleqslant
+ \let\nleqslant\textnleqslant
+ \let\geqslant\textgeqslant
+ \let\ngeqslant\textngeqslant
+ \let\lessapprox\textlessapprox
+ \let\nlessapprox\textnlessapprox
+ \let\gtrapprox\textgtrapprox
+ \let\ngtrapprox\textngtrapprox
+ \let\lneq\textlneq
+ \let\gneq\textgneq
+ \let\lnapprox\textlnapprox
+ \let\gnapprox\textgnapprox
+ \let\lesseqqgtr\textlesseqqgtr
+ \let\gtreqqless\textgtreqqless
+ \let\eqslantless\texteqslantless
+ \let\eqslantgtr\texteqslantgtr
+ \let\leftslice\textleftslice
+ \let\rightslice\textrightslice
+ \let\preceq\textpreceq
+ \let\npreceq\textnpreceq
+ \let\succeq\textsucceq
+ \let\nsucceq\textnsucceq
+ \let\precneq\textprecneq
+ \let\succneq\textsuccneq
+ \let\preceqq\textpreceqq
+ \let\npreceqq\textnpreceqq
+ \let\succeqq\textsucceqq
+ \let\nsucceqq\textnsucceqq
+ \let\precneqq\textprecneqq
+ \let\succneqq\textsuccneqq
+ \let\precapprox\textprecapprox
+ \let\nprecapprox\textnprecapprox
+ \let\succapprox\textsuccapprox
+ \let\nsuccapprox\textnsuccapprox
+ \let\precnapprox\textprecnapprox
+ \let\succnapprox\textsuccnapprox
+ \let\subseteqq\textsubseteqq
+ \let\nsubseteqq\textnsubseteqq
+ \let\supseteqq\textsupseteqq
+ \let\nsupseteqq\textnsupseteqq
+ \let\dashV\textdashV
+ \let\ndashV\textndashV
+ \let\Dashv\textDashv
+ \let\nDashv\textnDashv
+ \let\DashV\textDashV
+ \let\nDashV\textnDashV
+ \let\downmodels\textdownmodels
+ \let\ndownmodels\textndownmodels
+ \let\upmodels\textupmodels
+ \let\nupmodels\textnupmodels
+ \let\upspoon\textupspoon
+ \let\interleave\textinterleave
+ \let\sslash\textsslash
+}
+
+% Plane-1 math alphanumerics
+%
+% there's a lot that can be done here!
+%
+
+\DeclareTextCommand{\textmathrm}{L8U}[1]{#1}% intended for a single math-roman letter
+\DeclareTextCommand{\textmathbf}{L8U}[1]{#1}% intended for a single math-bold letter or digit
+\DeclareTextCommand{\textmathit}{L8U}[1]{#1}% intended for a single math-italic letter
+\DeclareTextCommand{\textmathbit}{L8U}[1]{#1}% intended for a single math-bold-italic letter
+\DeclareTextCommand{\textmathcal}{L8U}[1]{#1}% intended for a single math-script letter
+\DeclareTextCommand{\textmathbcal}{L8U}[1]{#1}% intended for a single math-bold-script letter
+\DeclareTextCommand{\textmathfrak}{L8U}[1]{#1}% intended for a single fraktur letter
+\DeclareTextCommand{\textmathfrakb}{L8U}[1]{#1}% intended for a single bold fraktur letter
+\DeclareTextCommand{\textmathbb}{L8U}[1]{#1}% intended for a single double-struck letter or digit
+\DeclareTextCommand{\textmathsf}{L8U}[1]{#1}% intended for a single math sans-serif letter or digit
+\DeclareTextCommand{\textmathsfb}{L8U}[1]{#1}% intended for a single math bold sans-serif letter or digit
+\DeclareTextCommand{\textmathsfit}{L8U}[1]{#1}% intended for a single math italic sans-serif letter
+\DeclareTextCommand{\textmathsbit}{L8U}[1]{#1}% intended for a single math bold-italic sans-serif letter
+\DeclareTextCommand{\textmathtt}{L8U}[1]{#1}% intended for a single math monspaced letter or digit
+
+
+\DeclareTextCommand{\textupgreekb}{L8U}[1]{#1}% intended for a single bold upright Greek letter
+\DeclareTextCommand{\textmathgreekit}{L8U}[1]{#1}% intended for a single italiced Greek letter
+\DeclareTextCommand{\textmathgreekbit}{L8U}[1]{#1}% intended for a single bold italiced Greek letter
+\DeclareTextCommand{\textmathgreeksbf}{L8U}[1]{#1}% intended for a single bold sans-serif Greek letter
+\DeclareTextCommand{\textmathgreeksbit}{L8U}[1]{#1}% intended for a single bold italiced sans-serif Greek letter
+
+\def\pdfx@null{}
+\DeclareTextCommand{\textmathrmstring}{L8U}[1]{\textmathrm@ii#1\@empty\@empty}
+\def\textmathrm@i#1{\textmathrm@ii#1}%\@empty}
+\def\textmathrm@ii#1#2\@empty{\textmathrm{#1}%
+ \ifx\@empty#2\@empty\else\expandafter\textmathrm@i\fi#2\@empty}
+
+\DeclareTextCommand{\textmathbfstring}{L8U}[1]{\textmathbf@ii#1\@empty\@empty}
+\def\textmathbf@i#1{\textmathbf@ii#1}%\@empty}
+\def\textmathbf@ii#1#2\@empty{\textmathbf{#1}%
+ \ifx\@empty#2\@empty\else\expandafter\textmathbf@ii\fi#2\@empty}
+
+\DeclareTextCommand{\textmathitstring}{L8U}[1]{\textmathit@ii#1\@empty\@empty}
+\def\textmathit@i#1{\textmathit@ii#1}%\@empty}
+\def\textmathit@ii#1#2\@empty{\textmathit{#1}%
+ \ifx\@empty#2\@empty\else\expandafter\textmathit@i\fi#2\@empty}
+
+\DeclareTextCommand{\textmathbitstring}{L8U}[1]{\textmathbit@ii#1\@empty\@empty}
+\def\textmathbit@i#1{\textmathbit@ii#1}%\@empty}
+\def\textmathbit@ii#1#2\@empty{\textmathbit{#1}%
+ \ifx\@empty#2\@empty\else\expandafter\textmathbit@i\fi#2\@empty}
+
+\DeclareTextCommand{\textmathcalstring}{L8U}[1]{\textmathcal@ii#1\@empty\@empty}
+\def\textmathcal@i#1{\textmathcal@ii#1}%\@empty}
+\def\textmathcal@ii#1#2\@empty{\textmathcal{#1}%
+ \ifx\@empty#2\@empty\else\expandafter\textmathcal@i\fi#2\@empty}
+
+\DeclareTextCommand{\textmathbcalstring}{L8U}[1]{\textmathbcal@ii#1\@empty\@empty}
+\def\textmathbcal@i#1{\textmathbcal@ii#1}%\@empty}
+\def\textmathbcal@ii#1#2\@empty{\textmathbcal{#1}%
+ \ifx\@empty#2\@empty\else\expandafter\textmathbcal@i\fi#2\@empty}
+
+\DeclareTextCommand{\textmathbbstring}{L8U}[1]{\textmathbb@ii#1\@empty\@empty}
+\def\textmathbb@i#1{\textmathbb@ii#1}%\@empty}
+\def\textmathbb@ii#1#2\@empty{\textmathbb{#1}%
+ \ifx\@empty#2\@empty\else\expandafter\textmathbb@i\fi#2\@empty}
+
+\DeclareTextCommand{\textmathfrakstring}{L8U}[1]{\textmathfrak@ii#1\@empty\@empty}
+\def\textmathfrak@i#1{\textmathfrak@ii#1}%\@empty}
+\def\textmathfrak@ii#1#2\@empty{\textmathfrak{#1}%
+ \ifx\@empty#2\@empty\else\expandafter\textmathfrak@i\fi#2\@empty}
+
+\DeclareTextCommand{\textmathfrakbstring}{L8U}[1]{\textmathfrakb@ii#1\@empty\@empty}
+\def\textmathfrakb@i#1{\textmathfrakb@ii#1}%\@empty}
+\def\textmathfrakb@ii#1#2\@empty{\textmathfrakb{#1}%
+ \ifx\@empty#2\@empty\else\expandafter\textmathfrakb@i\fi#2\@empty}
+
+\DeclareTextCommand{\textmathsfstring}{L8U}[1]{\textmathsf@ii#1\@empty\@empty}
+\def\textmathsf@i#1{\textmathsf@ii#1}%\@empty}
+\def\textmathsf@ii#1#2\@empty{\textmathsf{#1}%
+ \ifx\@empty#2\@empty\else\expandafter\textmathsf@i\fi#2\@empty}
+
+\DeclareTextCommand{\textmathsfitstring}{L8U}[1]{\textmathsfit@ii#1\@empty\@empty}
+\def\textmathsfit@i#1{\textmathsfit@ii#1}%\@empty}
+\def\textmathsfit@ii#1#2\@empty{\textmathsfit{#1}%
+ \ifx\@empty#2\@empty\else\expandafter\textmathsfit@i\fi#2\@empty}
+
+\DeclareTextCommand{\textmathsfbstring}{L8U}[1]{\textmathsfb@ii#1\@empty\@empty}
+\def\textmathsfb@i#1{\textmathsfb@ii#1}%\@empty}
+\def\textmathsfb@ii#1#2\@empty{\textmathsfb{#1}%
+ \ifx\@empty#2\@empty\else\expandafter\textmathsfb@i\fi#2\@empty}
+
+\DeclareTextCommand{\textmathsbitstring}{L8U}[1]{\textmathsbit@ii#1\@empty\@empty}
+\def\textmathsbit@i#1{\textmathsbit@ii#1}%\@empty}
+\def\textmathsbit@ii#1#2\@empty{\textmathsbit{#1}%
+ \ifx\@empty#2\@empty\else\expandafter\textmathsbit@i\fi#2\@empty}
+
+\DeclareTextCommand{\textmathttstring}{L8U}[1]{\textmathtt@ii#1\@empty\@empty}
+\def\textmathtt@i#1{\textmathtt@ii#1}%\@empty}
+\def\textmathtt@ii#1#2\@empty{\textmathtt{#1}%
+ \ifx\@empty#2\@empty\else\expandafter\textmathtt@i\fi#2\@empty}
+
+% allow superscripts and subscripts to be specified
+% within math-string commands.
+% This requires adjustments to the order of the on-coming tokens.
+\def\liixu@mathreorder#1#2\ifx#3\else\expandafter#4\fi#5{#1{#5}#4}
+
+\DeclareTextCompositeCommand{\textmathbf}{L8U}{^}{\liixu@mathreorder\textsuperstring}
+\DeclareTextCompositeCommand{\textmathbf}{L8U}{_}{\liixu@mathreorder\textsubstring}
+\DeclareTextCompositeCommand{\textmathrm}{L8U}{^}{\liixu@mathreorder\textsuperstring}
+\DeclareTextCompositeCommand{\textmathrm}{L8U}{_}{\liixu@mathreorder\textsubstring}
+\DeclareTextCompositeCommand{\textmathit}{L8U}{^}{\liixu@mathreorder\textsuperstring}
+\DeclareTextCompositeCommand{\textmathit}{L8U}{_}{\liixu@mathreorder\textsubstring}
+\DeclareTextCompositeCommand{\textmathbit}{L8U}{^}{\liixu@mathreorder\textsuperstring}
+\DeclareTextCompositeCommand{\textmathbit}{L8U}{_}{\liixu@mathreorder\textsubstring}
+\DeclareTextCompositeCommand{\textmathcal}{L8U}{^}{\liixu@mathreorder\textsuperstring}
+\DeclareTextCompositeCommand{\textmathcal}{L8U}{_}{\liixu@mathreorder\textsubstring}
+\DeclareTextCompositeCommand{\textmathbcal}{L8U}{^}{\liixu@mathreorder\textsuperstring}
+\DeclareTextCompositeCommand{\textmathbcal}{L8U}{_}{\liixu@mathreorder\textsubstring}
+\DeclareTextCompositeCommand{\textmathbb}{L8U}{^}{\liixu@mathreorder\textsuperstring}
+\DeclareTextCompositeCommand{\textmathbb}{L8U}{_}{\liixu@mathreorder\textsubstring}
+\DeclareTextCompositeCommand{\textmathfrak}{L8U}{^}{\liixu@mathreorder\textsuperstring}
+\DeclareTextCompositeCommand{\textmathfrak}{L8U}{_}{\liixu@mathreorder\textsubstring}
+\DeclareTextCompositeCommand{\textmathfrakb}{L8U}{^}{\liixu@mathreorder\textsuperstring}
+\DeclareTextCompositeCommand{\textmathfrakb}{L8U}{_}{\liixu@mathreorder\textsubstring}
+\DeclareTextCompositeCommand{\textmathsf}{L8U}{^}{\liixu@mathreorder\textsuperstring}
+\DeclareTextCompositeCommand{\textmathsf}{L8U}{_}{\liixu@mathreorder\textsubstring}
+\DeclareTextCompositeCommand{\textmathsfit}{L8U}{^}{\liixu@mathreorder\textsuperstring}
+\DeclareTextCompositeCommand{\textmathsfit}{L8U}{_}{\liixu@mathreorder\textsubstring}
+\DeclareTextCompositeCommand{\textmathsfb}{L8U}{^}{\liixu@mathreorder\textsuperstring}
+\DeclareTextCompositeCommand{\textmathsfb}{L8U}{_}{\liixu@mathreorder\textsubstring}
+\DeclareTextCompositeCommand{\textmathsbit}{L8U}{^}{\liixu@mathreorder\textsuperstring}
+\DeclareTextCompositeCommand{\textmathsbit}{L8U}{_}{\liixu@mathreorder\textsubstring}
+\DeclareTextCompositeCommand{\textmathtt}{L8U}{^}{\liixu@mathreorder\textsuperstring}
+\DeclareTextCompositeCommand{\textmathtt}{L8U}{_}{\liixu@mathreorder\textsubstring}
+
+\DeclareTextCommand{\textmathnormal}{L8U}[1]{#1}% intended for math generally
+\DeclareTextCommand{\textmathnormalstring}{L8U}[1]{\textmathnormal@ii#1\@empty\@empty}
+\def\textmathnormal@i#1{\textmathnormal@ii#1}% do we gobble \@empty's this way?
+\def\textmathnormal@ii#1#2\@empty{\textmathnormal{#1}%
+ \ifx\@empty#2\@empty\else\expandafter\textmathnormal@i\fi#2\@empty}
+
+\DeclareTextCompositeCommand{\textmathnormal}{L8U}{^}{\liixu@mathreorder\textsuperstring}
+\DeclareTextCompositeCommand{\textmathnormal}{L8U}{_}{\liixu@mathreorder\textsubstring}
+\DeclareTextCompositeCommand{\textmathnormal}{L8U}{\\}{\textLF}
+\DeclareTextCompositeCommand{\textmathnormal}{L8U}{\cr}{\textLF}
+\DeclareTextCompositeCommand{\textmathnormal}{L8U}{\crcr}{\textLF}
+
+\DeclareTextCommand{\textinlinemath}{L8U}{\liixu@getinlinemath}
+\def\liixu@getinlinemath#1\){\space\textmathnormalstring{#1}\space}
+\DeclareTextCommand{\textdisplaymath}{L8U}{\liixu@getdisplaymath}
+\def\liixu@getdisplaymath#1\]{\textLF\textmathnormalstring{#1}\textLF}
+
+\DeclareTextCompositeCommand{\textmathnormal}{L8U}{\mathrm}{\liixu@mathreorder\textmathrmstring}
+\DeclareTextCompositeCommand{\textmathnormal}{L8U}{\mathbf}{\liixu@mathreorder\textmathbfstring}
+\DeclareTextCompositeCommand{\textmathnormal}{L8U}{\mathit}{\liixu@mathreorder\textmathitstring}
+\DeclareTextCompositeCommand{\textmathnormal}{L8U}{\mathbit}{\liixu@mathreorder\textmathbitstring}
+\DeclareTextCompositeCommand{\textmathnormal}{L8U}{\mathcal}{\liixu@mathreorder\textmathcalstring}
+\DeclareTextCompositeCommand{\textmathnormal}{L8U}{\mathbcal}{\liixu@mathreorder\textmathbcalstring}
+\DeclareTextCompositeCommand{\textmathnormal}{L8U}{\mathbb}{\liixu@mathreorder\textmathbbstring}
+\DeclareTextCompositeCommand{\textmathnormal}{L8U}{\mathfrak}{\liixu@mathreorder\textmathfrakstring}
+\DeclareTextCompositeCommand{\textmathnormal}{L8U}{\mathfrakb}{\liixu@mathreorder\textmathfrakbstring}
+\DeclareTextCompositeCommand{\textmathnormal}{L8U}{\mathsf}{\liixu@mathreorder\textmathsfstring}
+\DeclareTextCompositeCommand{\textmathnormal}{L8U}{\mathsfit}{\liixu@mathreorder\textmathsfitstring}
+\DeclareTextCompositeCommand{\textmathnormal}{L8U}{\mathsfb}{\liixu@mathreorder\textmathsfbstring}
+\DeclareTextCompositeCommand{\textmathnormal}{L8U}{\mathsbit}{\liixu@mathreorder\textmathsbitstring}
+\DeclareTextCompositeCommand{\textmathnormal}{L8U}{\mathtt}{\liixu@mathreorder\textmathttstring}
+
+
+
+\def\LIIXUmapmathalphabets{%
+ \let\(\textinlinemath
+ \let\[\textdisplaymath
+ \let\mathnormal\textmathnormalstring
+ \let\mathrm\textmathrmstring
+ \let\mathup\textmathrmstring
+ \let\mbox\textmathrmstring
+ \let\mathit\textmathitstring
+% \let\mathnormal\textmathitstring
+ \let\mathbf\textmathbfstring
+ \let\mathbfup\textmathbfstring
+ \let\mathbold\textmathbitstring
+ \let\mathbb\textmathbbstring
+ \let\mathcal\textmathcalstring
+ \let\mathscr\textmathcalstring
+ \let\EuScript\textmathcalstring
+ \let\mathcalbf\textmathbcalstring
+ \let\mathbfcal\textmathbcalstring
+ \let\mathbfscr\textmathbcalstring
+ \let\mathsf\textmathsfstring
+ \let\mathsfup\textmathsfstring
+ \let\mathsfsl\textmathsfitstring
+ \let\mathsfbf\textmathsfbstring
+ \let\mathbfsfup\textmathsfbstring
+ \let\mathsfbfit\textmathsbitstring
+ \let\mathbfsfit\textmathsbitstring
+ \let\mathtt\textmathttstring
+ \let\mathfrak\textmathfrakstring
+ \let\EuFrak\textmathfrakstring
+ \let\mathfrakb\textmathfrakbstring
+ \let\mathbffrak\textmathfrakbstring
+}
+
+\DeclareTextCompositeCommand{\textmathbf}{L8U}{A}{𝐀}
+\DeclareTextCompositeCommand{\textmathbf}{L8U}{B}{𝐁}
+\DeclareTextCompositeCommand{\textmathbf}{L8U}{C}{𝐂}
+\DeclareTextCompositeCommand{\textmathbf}{L8U}{D}{𝐃}
+\DeclareTextCompositeCommand{\textmathbf}{L8U}{E}{𝐄}
+\DeclareTextCompositeCommand{\textmathbf}{L8U}{F}{𝐅}
+\DeclareTextCompositeCommand{\textmathbf}{L8U}{G}{𝐆}
+\DeclareTextCompositeCommand{\textmathbf}{L8U}{H}{𝐇}
+\DeclareTextCompositeCommand{\textmathbf}{L8U}{I}{𝐈}
+\DeclareTextCompositeCommand{\textmathbf}{L8U}{J}{𝐉}
+\DeclareTextCompositeCommand{\textmathbf}{L8U}{K}{𝐊}
+\DeclareTextCompositeCommand{\textmathbf}{L8U}{L}{𝐋}
+\DeclareTextCompositeCommand{\textmathbf}{L8U}{M}{𝐌}
+\DeclareTextCompositeCommand{\textmathbf}{L8U}{N}{𝐍}
+\DeclareTextCompositeCommand{\textmathbf}{L8U}{O}{𝐎}
+\DeclareTextCompositeCommand{\textmathbf}{L8U}{P}{𝐏}
+\DeclareTextCompositeCommand{\textmathbf}{L8U}{Q}{𝐐}
+\DeclareTextCompositeCommand{\textmathbf}{L8U}{R}{𝐑}
+\DeclareTextCompositeCommand{\textmathbf}{L8U}{S}{𝐒}
+\DeclareTextCompositeCommand{\textmathbf}{L8U}{T}{𝐓}
+\DeclareTextCompositeCommand{\textmathbf}{L8U}{U}{𝐔}
+\DeclareTextCompositeCommand{\textmathbf}{L8U}{V}{𝐕}
+\DeclareTextCompositeCommand{\textmathbf}{L8U}{W}{𝐖}
+\DeclareTextCompositeCommand{\textmathbf}{L8U}{X}{𝐗}
+\DeclareTextCompositeCommand{\textmathbf}{L8U}{Y}{𝐘}
+\DeclareTextCompositeCommand{\textmathbf}{L8U}{Z}{𝐙}
+\DeclareTextCompositeCommand{\textmathbf}{L8U}{a}{𝐚}
+\DeclareTextCompositeCommand{\textmathbf}{L8U}{b}{𝐛}
+\DeclareTextCompositeCommand{\textmathbf}{L8U}{c}{𝐜}
+\DeclareTextCompositeCommand{\textmathbf}{L8U}{d}{𝐝}
+\DeclareTextCompositeCommand{\textmathbf}{L8U}{e}{𝐞}
+\DeclareTextCompositeCommand{\textmathbf}{L8U}{f}{𝐟}
+\DeclareTextCompositeCommand{\textmathbf}{L8U}{g}{𝐠}
+\DeclareTextCompositeCommand{\textmathbf}{L8U}{h}{𝐡}
+\DeclareTextCompositeCommand{\textmathbf}{L8U}{i}{𝐢}
+\DeclareTextCompositeCommand{\textmathbf}{L8U}{j}{𝐣}
+\DeclareTextCompositeCommand{\textmathbf}{L8U}{k}{𝐤}
+\DeclareTextCompositeCommand{\textmathbf}{L8U}{l}{𝐥}
+\DeclareTextCompositeCommand{\textmathbf}{L8U}{m}{𝐦}
+\DeclareTextCompositeCommand{\textmathbf}{L8U}{n}{𝐧}
+\DeclareTextCompositeCommand{\textmathbf}{L8U}{o}{𝐨}
+\DeclareTextCompositeCommand{\textmathbf}{L8U}{p}{𝐩}
+\DeclareTextCompositeCommand{\textmathbf}{L8U}{q}{𝐪}
+\DeclareTextCompositeCommand{\textmathbf}{L8U}{r}{𝐫}
+\DeclareTextCompositeCommand{\textmathbf}{L8U}{s}{𝐬}
+\DeclareTextCompositeCommand{\textmathbf}{L8U}{t}{𝐭}
+\DeclareTextCompositeCommand{\textmathbf}{L8U}{u}{𝐮}
+\DeclareTextCompositeCommand{\textmathbf}{L8U}{v}{𝐯}
+\DeclareTextCompositeCommand{\textmathbf}{L8U}{w}{𝐰}
+\DeclareTextCompositeCommand{\textmathbf}{L8U}{x}{𝐱}
+\DeclareTextCompositeCommand{\textmathbf}{L8U}{y}{𝐲}
+\DeclareTextCompositeCommand{\textmathbf}{L8U}{z}{𝐳}
+
+\DeclareTextCompositeCommand{\textmathit}{L8U}{A}{𝐴}
+\DeclareTextCompositeCommand{\textmathit}{L8U}{B}{𝐵}
+\DeclareTextCompositeCommand{\textmathit}{L8U}{C}{𝐶}
+\DeclareTextCompositeCommand{\textmathit}{L8U}{D}{𝐷}
+\DeclareTextCompositeCommand{\textmathit}{L8U}{E}{𝐸}
+\DeclareTextCompositeCommand{\textmathit}{L8U}{F}{𝐹}
+\DeclareTextCompositeCommand{\textmathit}{L8U}{G}{𝐺}
+\DeclareTextCompositeCommand{\textmathit}{L8U}{H}{𝐻}
+\DeclareTextCompositeCommand{\textmathit}{L8U}{I}{𝐼}
+\DeclareTextCompositeCommand{\textmathit}{L8U}{J}{𝐽}
+\DeclareTextCompositeCommand{\textmathit}{L8U}{K}{𝐾}
+\DeclareTextCompositeCommand{\textmathit}{L8U}{L}{𝐿}
+\DeclareTextCompositeCommand{\textmathit}{L8U}{M}{𝑀}
+\DeclareTextCompositeCommand{\textmathit}{L8U}{N}{𝑁}
+\DeclareTextCompositeCommand{\textmathit}{L8U}{O}{𝑂}
+\DeclareTextCompositeCommand{\textmathit}{L8U}{P}{𝑃}
+\DeclareTextCompositeCommand{\textmathit}{L8U}{Q}{𝑄}
+\DeclareTextCompositeCommand{\textmathit}{L8U}{R}{𝑅}
+\DeclareTextCompositeCommand{\textmathit}{L8U}{S}{𝑆}
+\DeclareTextCompositeCommand{\textmathit}{L8U}{T}{𝑇}
+\DeclareTextCompositeCommand{\textmathit}{L8U}{U}{𝑈}
+\DeclareTextCompositeCommand{\textmathit}{L8U}{V}{𝑉}
+\DeclareTextCompositeCommand{\textmathit}{L8U}{W}{𝑊}
+\DeclareTextCompositeCommand{\textmathit}{L8U}{X}{𝑋}
+\DeclareTextCompositeCommand{\textmathit}{L8U}{Y}{𝑌}
+\DeclareTextCompositeCommand{\textmathit}{L8U}{Z}{𝑍}
+\DeclareTextCompositeCommand{\textmathit}{L8U}{a}{𝑎}
+\DeclareTextCompositeCommand{\textmathit}{L8U}{b}{𝑏}
+\DeclareTextCompositeCommand{\textmathit}{L8U}{c}{𝑐}
+\DeclareTextCompositeCommand{\textmathit}{L8U}{d}{𝑑}
+\DeclareTextCompositeCommand{\textmathit}{L8U}{e}{𝑒}
+\DeclareTextCompositeCommand{\textmathit}{L8U}{f}{𝑓}
+\DeclareTextCompositeCommand{\textmathit}{L8U}{g}{𝑔}
+\DeclareTextCompositeCommand{\textmathit}{L8U}{h}{ℎ}% U+210E
+\DeclareTextCompositeCommand{\textmathit}{L8U}{i}{𝑖}
+\DeclareTextCompositeCommand{\textmathit}{L8U}{j}{𝑗}
+\DeclareTextCompositeCommand{\textmathit}{L8U}{k}{𝑘}
+\DeclareTextCompositeCommand{\textmathit}{L8U}{l}{𝑙}
+\DeclareTextCompositeCommand{\textmathit}{L8U}{m}{𝑚}
+\DeclareTextCompositeCommand{\textmathit}{L8U}{n}{𝑛}
+\DeclareTextCompositeCommand{\textmathit}{L8U}{o}{𝑜}
+\DeclareTextCompositeCommand{\textmathit}{L8U}{p}{𝑝}
+\DeclareTextCompositeCommand{\textmathit}{L8U}{q}{𝑞}
+\DeclareTextCompositeCommand{\textmathit}{L8U}{r}{𝑟}
+\DeclareTextCompositeCommand{\textmathit}{L8U}{s}{𝑠}
+\DeclareTextCompositeCommand{\textmathit}{L8U}{t}{𝑡}
+\DeclareTextCompositeCommand{\textmathit}{L8U}{u}{𝑢}
+\DeclareTextCompositeCommand{\textmathit}{L8U}{v}{𝑣}
+\DeclareTextCompositeCommand{\textmathit}{L8U}{w}{𝑤}
+\DeclareTextCompositeCommand{\textmathit}{L8U}{x}{𝑥}
+\DeclareTextCompositeCommand{\textmathit}{L8U}{y}{𝑦}
+\DeclareTextCompositeCommand{\textmathit}{L8U}{z}{𝑧}
+
+\DeclareTextCompositeCommand{\textmathbit}{L8U}{A}{𝑨}
+\DeclareTextCompositeCommand{\textmathbit}{L8U}{B}{𝑩}
+\DeclareTextCompositeCommand{\textmathbit}{L8U}{C}{𝑪}
+\DeclareTextCompositeCommand{\textmathbit}{L8U}{D}{𝑫}
+\DeclareTextCompositeCommand{\textmathbit}{L8U}{E}{𝑬}
+\DeclareTextCompositeCommand{\textmathbit}{L8U}{F}{𝑭}
+\DeclareTextCompositeCommand{\textmathbit}{L8U}{G}{𝑮}
+\DeclareTextCompositeCommand{\textmathbit}{L8U}{H}{𝑯}
+\DeclareTextCompositeCommand{\textmathbit}{L8U}{I}{𝑰}
+\DeclareTextCompositeCommand{\textmathbit}{L8U}{J}{𝑱}
+\DeclareTextCompositeCommand{\textmathbit}{L8U}{K}{𝑲}
+\DeclareTextCompositeCommand{\textmathbit}{L8U}{L}{𝑳}
+\DeclareTextCompositeCommand{\textmathbit}{L8U}{M}{𝑴}
+\DeclareTextCompositeCommand{\textmathbit}{L8U}{N}{𝑵}
+\DeclareTextCompositeCommand{\textmathbit}{L8U}{O}{𝑶}
+\DeclareTextCompositeCommand{\textmathbit}{L8U}{P}{𝑷}
+\DeclareTextCompositeCommand{\textmathbit}{L8U}{Q}{𝑸}
+\DeclareTextCompositeCommand{\textmathbit}{L8U}{R}{𝑹}
+\DeclareTextCompositeCommand{\textmathbit}{L8U}{S}{𝑺}
+\DeclareTextCompositeCommand{\textmathbit}{L8U}{T}{𝑻}
+\DeclareTextCompositeCommand{\textmathbit}{L8U}{U}{𝑼}
+\DeclareTextCompositeCommand{\textmathbit}{L8U}{V}{𝑽}
+\DeclareTextCompositeCommand{\textmathbit}{L8U}{W}{𝑾}
+\DeclareTextCompositeCommand{\textmathbit}{L8U}{X}{𝑿}
+\DeclareTextCompositeCommand{\textmathbit}{L8U}{Y}{𝒀}
+\DeclareTextCompositeCommand{\textmathbit}{L8U}{Z}{𝒁}
+\DeclareTextCompositeCommand{\textmathbit}{L8U}{a}{𝒂}
+\DeclareTextCompositeCommand{\textmathbit}{L8U}{b}{𝒃}
+\DeclareTextCompositeCommand{\textmathbit}{L8U}{c}{𝒄}
+\DeclareTextCompositeCommand{\textmathbit}{L8U}{d}{𝒅}
+\DeclareTextCompositeCommand{\textmathbit}{L8U}{e}{𝒆}
+\DeclareTextCompositeCommand{\textmathbit}{L8U}{f}{𝒇}
+\DeclareTextCompositeCommand{\textmathbit}{L8U}{g}{𝒈}
+\DeclareTextCompositeCommand{\textmathbit}{L8U}{h}{𝒉}
+\DeclareTextCompositeCommand{\textmathbit}{L8U}{i}{𝒊}
+\DeclareTextCompositeCommand{\textmathbit}{L8U}{j}{𝒋}
+\DeclareTextCompositeCommand{\textmathbit}{L8U}{k}{𝒌}
+\DeclareTextCompositeCommand{\textmathbit}{L8U}{l}{𝒍}
+\DeclareTextCompositeCommand{\textmathbit}{L8U}{m}{𝒎}
+\DeclareTextCompositeCommand{\textmathbit}{L8U}{n}{𝒏}
+\DeclareTextCompositeCommand{\textmathbit}{L8U}{o}{𝒐}
+\DeclareTextCompositeCommand{\textmathbit}{L8U}{p}{𝒑}
+\DeclareTextCompositeCommand{\textmathbit}{L8U}{q}{𝒒}
+\DeclareTextCompositeCommand{\textmathbit}{L8U}{r}{𝒓}
+\DeclareTextCompositeCommand{\textmathbit}{L8U}{s}{𝒔}
+\DeclareTextCompositeCommand{\textmathbit}{L8U}{t}{𝒕}
+\DeclareTextCompositeCommand{\textmathbit}{L8U}{u}{𝒖}
+\DeclareTextCompositeCommand{\textmathbit}{L8U}{v}{𝒗}
+\DeclareTextCompositeCommand{\textmathbit}{L8U}{w}{𝒘}
+\DeclareTextCompositeCommand{\textmathbit}{L8U}{x}{𝒙}
+\DeclareTextCompositeCommand{\textmathbit}{L8U}{y}{𝒚}
+\DeclareTextCompositeCommand{\textmathbit}{L8U}{z}{𝒛}
+
+\DeclareTextCompositeCommand{\textmathcal}{L8U}{A}{𝒜}
+\DeclareTextCompositeCommand{\textmathcal}{L8U}{B}{ℬ}% U+212C
+\DeclareTextCompositeCommand{\textmathcal}{L8U}{C}{𝒞}
+\DeclareTextCompositeCommand{\textmathcal}{L8U}{D}{𝒟}
+\DeclareTextCompositeCommand{\textmathcal}{L8U}{E}{ℰ}% U+2130
+\DeclareTextCompositeCommand{\textmathcal}{L8U}{F}{ℱ}% U+2131
+\DeclareTextCompositeCommand{\textmathcal}{L8U}{G}{𝒢}
+\DeclareTextCompositeCommand{\textmathcal}{L8U}{H}{ℋ}% U+210B
+\DeclareTextCompositeCommand{\textmathcal}{L8U}{I}{ℐ}% U+2110
+\DeclareTextCompositeCommand{\textmathcal}{L8U}{J}{𝒥}
+\DeclareTextCompositeCommand{\textmathcal}{L8U}{K}{𝒦}
+\DeclareTextCompositeCommand{\textmathcal}{L8U}{L}{ℒ}% U+2112
+\DeclareTextCompositeCommand{\textmathcal}{L8U}{M}{ℳ}% U+2133
+\DeclareTextCompositeCommand{\textmathcal}{L8U}{N}{𝒩}
+\DeclareTextCompositeCommand{\textmathcal}{L8U}{O}{𝒪}
+\DeclareTextCompositeCommand{\textmathcal}{L8U}{P}{𝒫}
+\DeclareTextCompositeCommand{\textmathcal}{L8U}{Q}{𝒬}
+\DeclareTextCompositeCommand{\textmathcal}{L8U}{R}{ℛ}% U+211B
+\DeclareTextCompositeCommand{\textmathcal}{L8U}{S}{𝒮}
+\DeclareTextCompositeCommand{\textmathcal}{L8U}{T}{𝒯}
+\DeclareTextCompositeCommand{\textmathcal}{L8U}{U}{𝒰}
+\DeclareTextCompositeCommand{\textmathcal}{L8U}{V}{𝒱}
+\DeclareTextCompositeCommand{\textmathcal}{L8U}{W}{𝒲}
+\DeclareTextCompositeCommand{\textmathcal}{L8U}{X}{𝒳}
+\DeclareTextCompositeCommand{\textmathcal}{L8U}{Y}{𝒴}
+\DeclareTextCompositeCommand{\textmathcal}{L8U}{Z}{𝒵}
+\DeclareTextCompositeCommand{\textmathcal}{L8U}{a}{𝒶}
+\DeclareTextCompositeCommand{\textmathcal}{L8U}{b}{𝒷}
+\DeclareTextCompositeCommand{\textmathcal}{L8U}{c}{𝒸}
+\DeclareTextCompositeCommand{\textmathcal}{L8U}{d}{𝒹}
+\DeclareTextCompositeCommand{\textmathcal}{L8U}{e}{ℯ}% U+212F
+\DeclareTextCompositeCommand{\textmathcal}{L8U}{f}{𝒻}
+\DeclareTextCompositeCommand{\textmathcal}{L8U}{g}{ℊ}% U+210A
+\DeclareTextCompositeCommand{\textmathcal}{L8U}{h}{𝒽}
+\DeclareTextCompositeCommand{\textmathcal}{L8U}{i}{𝒾}
+\DeclareTextCompositeCommand{\textmathcal}{L8U}{j}{𝒿}
+\DeclareTextCompositeCommand{\textmathcal}{L8U}{k}{𝓀}
+\DeclareTextCompositeCommand{\textmathcal}{L8U}{l}{𝓁}
+\DeclareTextCompositeCommand{\textmathcal}{L8U}{m}{𝓂}
+\DeclareTextCompositeCommand{\textmathcal}{L8U}{n}{𝓃}
+\DeclareTextCompositeCommand{\textmathcal}{L8U}{o}{ℴ}% U+2134
+\DeclareTextCompositeCommand{\textmathcal}{L8U}{p}{𝓅}
+\DeclareTextCompositeCommand{\textmathcal}{L8U}{q}{𝓆}
+\DeclareTextCompositeCommand{\textmathcal}{L8U}{r}{𝓇}
+\DeclareTextCompositeCommand{\textmathcal}{L8U}{s}{𝓈}
+\DeclareTextCompositeCommand{\textmathcal}{L8U}{t}{𝓉}
+\DeclareTextCompositeCommand{\textmathcal}{L8U}{u}{𝓊}
+\DeclareTextCompositeCommand{\textmathcal}{L8U}{v}{𝓋}
+\DeclareTextCompositeCommand{\textmathcal}{L8U}{w}{𝓌}
+\DeclareTextCompositeCommand{\textmathcal}{L8U}{x}{𝓍}
+\DeclareTextCompositeCommand{\textmathcal}{L8U}{y}{𝓎}
+\DeclareTextCompositeCommand{\textmathcal}{L8U}{z}{𝓏}
+
+\DeclareTextCompositeCommand{\textmathbcal}{L8U}{A}{𝓐}
+\DeclareTextCompositeCommand{\textmathbcal}{L8U}{B}{𝓑}
+\DeclareTextCompositeCommand{\textmathbcal}{L8U}{C}{𝓒}
+\DeclareTextCompositeCommand{\textmathbcal}{L8U}{D}{𝓓}
+\DeclareTextCompositeCommand{\textmathbcal}{L8U}{E}{𝓔}
+\DeclareTextCompositeCommand{\textmathbcal}{L8U}{F}{𝓕}
+\DeclareTextCompositeCommand{\textmathbcal}{L8U}{G}{𝓖}
+\DeclareTextCompositeCommand{\textmathbcal}{L8U}{H}{𝓗}
+\DeclareTextCompositeCommand{\textmathbcal}{L8U}{I}{𝓘}
+\DeclareTextCompositeCommand{\textmathbcal}{L8U}{J}{𝓙}
+\DeclareTextCompositeCommand{\textmathbcal}{L8U}{K}{𝓚}
+\DeclareTextCompositeCommand{\textmathbcal}{L8U}{L}{𝓛}
+\DeclareTextCompositeCommand{\textmathbcal}{L8U}{M}{𝓜}
+\DeclareTextCompositeCommand{\textmathbcal}{L8U}{N}{𝓝}
+\DeclareTextCompositeCommand{\textmathbcal}{L8U}{O}{𝓞}
+\DeclareTextCompositeCommand{\textmathbcal}{L8U}{P}{𝓟}
+\DeclareTextCompositeCommand{\textmathbcal}{L8U}{Q}{𝓠}
+\DeclareTextCompositeCommand{\textmathbcal}{L8U}{R}{𝓡}
+\DeclareTextCompositeCommand{\textmathbcal}{L8U}{S}{𝓢}
+\DeclareTextCompositeCommand{\textmathbcal}{L8U}{T}{𝓣}
+\DeclareTextCompositeCommand{\textmathbcal}{L8U}{U}{𝓤}
+\DeclareTextCompositeCommand{\textmathbcal}{L8U}{V}{𝓥}
+\DeclareTextCompositeCommand{\textmathbcal}{L8U}{W}{𝓦}
+\DeclareTextCompositeCommand{\textmathbcal}{L8U}{X}{𝓧}
+\DeclareTextCompositeCommand{\textmathbcal}{L8U}{Y}{𝓨}
+\DeclareTextCompositeCommand{\textmathbcal}{L8U}{Z}{𝓩}
+\DeclareTextCompositeCommand{\textmathbcal}{L8U}{a}{𝓪}
+\DeclareTextCompositeCommand{\textmathbcal}{L8U}{b}{𝓫}
+\DeclareTextCompositeCommand{\textmathbcal}{L8U}{c}{𝓬}
+\DeclareTextCompositeCommand{\textmathbcal}{L8U}{d}{𝓭}
+\DeclareTextCompositeCommand{\textmathbcal}{L8U}{e}{𝓮}
+\DeclareTextCompositeCommand{\textmathbcal}{L8U}{f}{𝓯}
+\DeclareTextCompositeCommand{\textmathbcal}{L8U}{g}{𝓰}
+\DeclareTextCompositeCommand{\textmathbcal}{L8U}{h}{𝓱}
+\DeclareTextCompositeCommand{\textmathbcal}{L8U}{i}{𝓲}
+\DeclareTextCompositeCommand{\textmathbcal}{L8U}{j}{𝓳}
+\DeclareTextCompositeCommand{\textmathbcal}{L8U}{k}{𝓴}
+\DeclareTextCompositeCommand{\textmathbcal}{L8U}{l}{𝓵}
+\DeclareTextCompositeCommand{\textmathbcal}{L8U}{m}{𝓶}
+\DeclareTextCompositeCommand{\textmathbcal}{L8U}{n}{𝓷}
+\DeclareTextCompositeCommand{\textmathbcal}{L8U}{o}{𝓸}
+\DeclareTextCompositeCommand{\textmathbcal}{L8U}{p}{𝓹}
+\DeclareTextCompositeCommand{\textmathbcal}{L8U}{q}{𝓺}
+\DeclareTextCompositeCommand{\textmathbcal}{L8U}{r}{𝓻}
+\DeclareTextCompositeCommand{\textmathbcal}{L8U}{s}{𝓼}
+\DeclareTextCompositeCommand{\textmathbcal}{L8U}{t}{𝓽}
+\DeclareTextCompositeCommand{\textmathbcal}{L8U}{u}{𝓾}
+\DeclareTextCompositeCommand{\textmathbcal}{L8U}{v}{𝓿}
+\DeclareTextCompositeCommand{\textmathbcal}{L8U}{w}{𝔀}
+\DeclareTextCompositeCommand{\textmathbcal}{L8U}{x}{𝔁}
+\DeclareTextCompositeCommand{\textmathbcal}{L8U}{y}{𝔂}
+\DeclareTextCompositeCommand{\textmathbcal}{L8U}{z}{𝔃}
+
+\DeclareTextCompositeCommand{\textmathfrak}{L8U}{A}{𝔄}
+\DeclareTextCompositeCommand{\textmathfrak}{L8U}{B}{𝔅}
+\DeclareTextCompositeCommand{\textmathfrak}{L8U}{C}{ℭ}% U+212D
+\DeclareTextCompositeCommand{\textmathfrak}{L8U}{D}{𝔇}
+\DeclareTextCompositeCommand{\textmathfrak}{L8U}{E}{𝔈}
+\DeclareTextCompositeCommand{\textmathfrak}{L8U}{F}{𝔉}
+\DeclareTextCompositeCommand{\textmathfrak}{L8U}{G}{𝔊}
+\DeclareTextCompositeCommand{\textmathfrak}{L8U}{H}{ℌ}% U+210C
+\DeclareTextCompositeCommand{\textmathfrak}{L8U}{I}{ℑ}% U+2111
+\DeclareTextCompositeCommand{\textmathfrak}{L8U}{J}{𝔍}
+\DeclareTextCompositeCommand{\textmathfrak}{L8U}{K}{𝔎}
+\DeclareTextCompositeCommand{\textmathfrak}{L8U}{L}{𝔏}
+\DeclareTextCompositeCommand{\textmathfrak}{L8U}{M}{𝔐}
+\DeclareTextCompositeCommand{\textmathfrak}{L8U}{N}{𝔑}
+\DeclareTextCompositeCommand{\textmathfrak}{L8U}{O}{𝔒}
+\DeclareTextCompositeCommand{\textmathfrak}{L8U}{P}{𝔓}
+\DeclareTextCompositeCommand{\textmathfrak}{L8U}{Q}{𝔔}
+\DeclareTextCompositeCommand{\textmathfrak}{L8U}{R}{ℜ}% U+211C
+\DeclareTextCompositeCommand{\textmathfrak}{L8U}{S}{𝔖}
+\DeclareTextCompositeCommand{\textmathfrak}{L8U}{T}{𝔗}
+\DeclareTextCompositeCommand{\textmathfrak}{L8U}{U}{𝔘}
+\DeclareTextCompositeCommand{\textmathfrak}{L8U}{V}{𝔙}
+\DeclareTextCompositeCommand{\textmathfrak}{L8U}{W}{𝔚}
+\DeclareTextCompositeCommand{\textmathfrak}{L8U}{X}{𝔛}
+\DeclareTextCompositeCommand{\textmathfrak}{L8U}{Y}{𝔜}
+\DeclareTextCompositeCommand{\textmathfrak}{L8U}{Z}{ℨ}% U+2128
+\DeclareTextCompositeCommand{\textmathfrak}{L8U}{a}{𝔞}
+\DeclareTextCompositeCommand{\textmathfrak}{L8U}{b}{𝔟}
+\DeclareTextCompositeCommand{\textmathfrak}{L8U}{c}{𝔠}
+\DeclareTextCompositeCommand{\textmathfrak}{L8U}{d}{𝔡}
+\DeclareTextCompositeCommand{\textmathfrak}{L8U}{e}{𝔢}
+\DeclareTextCompositeCommand{\textmathfrak}{L8U}{f}{𝔣}
+\DeclareTextCompositeCommand{\textmathfrak}{L8U}{g}{𝔤}
+\DeclareTextCompositeCommand{\textmathfrak}{L8U}{h}{𝔥}
+\DeclareTextCompositeCommand{\textmathfrak}{L8U}{i}{𝔦}
+\DeclareTextCompositeCommand{\textmathfrak}{L8U}{j}{𝔧}
+\DeclareTextCompositeCommand{\textmathfrak}{L8U}{k}{𝔨}
+\DeclareTextCompositeCommand{\textmathfrak}{L8U}{l}{𝔩}
+\DeclareTextCompositeCommand{\textmathfrak}{L8U}{m}{𝔪}
+\DeclareTextCompositeCommand{\textmathfrak}{L8U}{n}{𝔫}
+\DeclareTextCompositeCommand{\textmathfrak}{L8U}{o}{𝔬}
+\DeclareTextCompositeCommand{\textmathfrak}{L8U}{p}{𝔭}
+\DeclareTextCompositeCommand{\textmathfrak}{L8U}{q}{𝔮}
+\DeclareTextCompositeCommand{\textmathfrak}{L8U}{r}{𝔯}
+\DeclareTextCompositeCommand{\textmathfrak}{L8U}{s}{𝔰}
+\DeclareTextCompositeCommand{\textmathfrak}{L8U}{t}{𝔱}
+\DeclareTextCompositeCommand{\textmathfrak}{L8U}{u}{𝔲}
+\DeclareTextCompositeCommand{\textmathfrak}{L8U}{v}{𝔳}
+\DeclareTextCompositeCommand{\textmathfrak}{L8U}{w}{𝔴}
+\DeclareTextCompositeCommand{\textmathfrak}{L8U}{x}{𝔵}
+\DeclareTextCompositeCommand{\textmathfrak}{L8U}{y}{𝔶}
+\DeclareTextCompositeCommand{\textmathfrak}{L8U}{z}{𝔷}
+
+\DeclareTextCompositeCommand{\textmathbb}{L8U}{A}{𝔸}
+\DeclareTextCompositeCommand{\textmathbb}{L8U}{B}{𝔹}
+\DeclareTextCompositeCommand{\textmathbb}{L8U}{C}{ℂ}% Ux2102
+\DeclareTextCompositeCommand{\textmathbb}{L8U}{D}{𝔻}
+\DeclareTextCompositeCommand{\textmathbb}{L8U}{E}{𝔼}
+\DeclareTextCompositeCommand{\textmathbb}{L8U}{F}{𝔽}
+\DeclareTextCompositeCommand{\textmathbb}{L8U}{G}{𝔾}
+\DeclareTextCompositeCommand{\textmathbb}{L8U}{H}{ℍ}% Ux210D
+\DeclareTextCompositeCommand{\textmathbb}{L8U}{I}{𝕀}
+\DeclareTextCompositeCommand{\textmathbb}{L8U}{J}{𝕁}
+\DeclareTextCompositeCommand{\textmathbb}{L8U}{K}{𝕂}
+\DeclareTextCompositeCommand{\textmathbb}{L8U}{L}{𝕃}
+\DeclareTextCompositeCommand{\textmathbb}{L8U}{M}{𝕄}
+\DeclareTextCompositeCommand{\textmathbb}{L8U}{N}{ℕ}% Ux2115
+\DeclareTextCompositeCommand{\textmathbb}{L8U}{O}{𝕆}
+\DeclareTextCompositeCommand{\textmathbb}{L8U}{P}{ℙ}% Ux2119
+\DeclareTextCompositeCommand{\textmathbb}{L8U}{Q}{ℚ}% Ux211A
+\DeclareTextCompositeCommand{\textmathbb}{L8U}{R}{ℝ}% Ux211D
+\DeclareTextCompositeCommand{\textmathbb}{L8U}{S}{𝕊}
+\DeclareTextCompositeCommand{\textmathbb}{L8U}{T}{𝕋}
+\DeclareTextCompositeCommand{\textmathbb}{L8U}{U}{𝕌}
+\DeclareTextCompositeCommand{\textmathbb}{L8U}{V}{𝕍}
+\DeclareTextCompositeCommand{\textmathbb}{L8U}{W}{𝕎}
+\DeclareTextCompositeCommand{\textmathbb}{L8U}{X}{𝕏}
+\DeclareTextCompositeCommand{\textmathbb}{L8U}{Y}{𝕐}
+\DeclareTextCompositeCommand{\textmathbb}{L8U}{Z}{ℤ}% Ux2124
+\DeclareTextCompositeCommand{\textmathbb}{L8U}{a}{𝕒}
+\DeclareTextCompositeCommand{\textmathbb}{L8U}{b}{𝕓}
+\DeclareTextCompositeCommand{\textmathbb}{L8U}{c}{𝕔}
+\DeclareTextCompositeCommand{\textmathbb}{L8U}{d}{𝕕}
+\DeclareTextCompositeCommand{\textmathbb}{L8U}{e}{𝕖}
+\DeclareTextCompositeCommand{\textmathbb}{L8U}{f}{𝕗}
+\DeclareTextCompositeCommand{\textmathbb}{L8U}{g}{𝕘}
+\DeclareTextCompositeCommand{\textmathbb}{L8U}{h}{𝕙}
+\DeclareTextCompositeCommand{\textmathbb}{L8U}{i}{𝕚}
+\DeclareTextCompositeCommand{\textmathbb}{L8U}{j}{𝕛}
+\DeclareTextCompositeCommand{\textmathbb}{L8U}{k}{𝕜}
+\DeclareTextCompositeCommand{\textmathbb}{L8U}{l}{𝕝}
+\DeclareTextCompositeCommand{\textmathbb}{L8U}{m}{𝕞}
+\DeclareTextCompositeCommand{\textmathbb}{L8U}{n}{𝕟}
+\DeclareTextCompositeCommand{\textmathbb}{L8U}{o}{𝕠}
+\DeclareTextCompositeCommand{\textmathbb}{L8U}{p}{𝕡}
+\DeclareTextCompositeCommand{\textmathbb}{L8U}{q}{𝕢}
+\DeclareTextCompositeCommand{\textmathbb}{L8U}{r}{𝕣}
+\DeclareTextCompositeCommand{\textmathbb}{L8U}{s}{𝕤}
+\DeclareTextCompositeCommand{\textmathbb}{L8U}{t}{𝕥}
+\DeclareTextCompositeCommand{\textmathbb}{L8U}{u}{𝕦}
+\DeclareTextCompositeCommand{\textmathbb}{L8U}{v}{𝕧}
+\DeclareTextCompositeCommand{\textmathbb}{L8U}{w}{𝕨}
+\DeclareTextCompositeCommand{\textmathbb}{L8U}{x}{𝕩}
+\DeclareTextCompositeCommand{\textmathbb}{L8U}{y}{𝕪}
+\DeclareTextCompositeCommand{\textmathbb}{L8U}{z}{𝕫}
+
+\DeclareTextCompositeCommand{\textmathfrakb}{L8U}{A}{𝕬}
+\DeclareTextCompositeCommand{\textmathfrakb}{L8U}{B}{𝕭}
+\DeclareTextCompositeCommand{\textmathfrakb}{L8U}{C}{𝕮}
+\DeclareTextCompositeCommand{\textmathfrakb}{L8U}{D}{𝕯}
+\DeclareTextCompositeCommand{\textmathfrakb}{L8U}{E}{𝕰}
+\DeclareTextCompositeCommand{\textmathfrakb}{L8U}{F}{𝕱}
+\DeclareTextCompositeCommand{\textmathfrakb}{L8U}{G}{𝕲}
+\DeclareTextCompositeCommand{\textmathfrakb}{L8U}{H}{𝕳}
+\DeclareTextCompositeCommand{\textmathfrakb}{L8U}{I}{𝕴}
+\DeclareTextCompositeCommand{\textmathfrakb}{L8U}{J}{𝕵}
+\DeclareTextCompositeCommand{\textmathfrakb}{L8U}{K}{𝕶}
+\DeclareTextCompositeCommand{\textmathfrakb}{L8U}{L}{𝕷}
+\DeclareTextCompositeCommand{\textmathfrakb}{L8U}{M}{𝕸}
+\DeclareTextCompositeCommand{\textmathfrakb}{L8U}{N}{𝕹}
+\DeclareTextCompositeCommand{\textmathfrakb}{L8U}{O}{𝕺}
+\DeclareTextCompositeCommand{\textmathfrakb}{L8U}{P}{𝕻}
+\DeclareTextCompositeCommand{\textmathfrakb}{L8U}{Q}{𝕼}
+\DeclareTextCompositeCommand{\textmathfrakb}{L8U}{R}{𝕽}
+\DeclareTextCompositeCommand{\textmathfrakb}{L8U}{S}{𝕾}
+\DeclareTextCompositeCommand{\textmathfrakb}{L8U}{T}{𝕿}
+\DeclareTextCompositeCommand{\textmathfrakb}{L8U}{U}{𝖀}
+\DeclareTextCompositeCommand{\textmathfrakb}{L8U}{V}{𝖁}
+\DeclareTextCompositeCommand{\textmathfrakb}{L8U}{W}{𝖂}
+\DeclareTextCompositeCommand{\textmathfrakb}{L8U}{X}{𝖃}
+\DeclareTextCompositeCommand{\textmathfrakb}{L8U}{Y}{𝖄}
+\DeclareTextCompositeCommand{\textmathfrakb}{L8U}{Z}{𝖅}
+\DeclareTextCompositeCommand{\textmathfrakb}{L8U}{a}{𝖆}
+\DeclareTextCompositeCommand{\textmathfrakb}{L8U}{b}{𝖇}
+\DeclareTextCompositeCommand{\textmathfrakb}{L8U}{c}{𝖈}
+\DeclareTextCompositeCommand{\textmathfrakb}{L8U}{d}{𝖉}
+\DeclareTextCompositeCommand{\textmathfrakb}{L8U}{e}{𝖊}
+\DeclareTextCompositeCommand{\textmathfrakb}{L8U}{f}{𝖋}
+\DeclareTextCompositeCommand{\textmathfrakb}{L8U}{g}{𝖌}
+\DeclareTextCompositeCommand{\textmathfrakb}{L8U}{h}{𝖍}
+\DeclareTextCompositeCommand{\textmathfrakb}{L8U}{i}{𝖎}
+\DeclareTextCompositeCommand{\textmathfrakb}{L8U}{j}{𝖏}
+\DeclareTextCompositeCommand{\textmathfrakb}{L8U}{k}{𝖐}
+\DeclareTextCompositeCommand{\textmathfrakb}{L8U}{l}{𝖑}
+\DeclareTextCompositeCommand{\textmathfrakb}{L8U}{m}{𝖒}
+\DeclareTextCompositeCommand{\textmathfrakb}{L8U}{n}{𝖓}
+\DeclareTextCompositeCommand{\textmathfrakb}{L8U}{o}{𝖔}
+\DeclareTextCompositeCommand{\textmathfrakb}{L8U}{p}{𝖕}
+\DeclareTextCompositeCommand{\textmathfrakb}{L8U}{q}{𝖖}
+\DeclareTextCompositeCommand{\textmathfrakb}{L8U}{r}{𝖗}
+\DeclareTextCompositeCommand{\textmathfrakb}{L8U}{s}{𝖘}
+\DeclareTextCompositeCommand{\textmathfrakb}{L8U}{t}{𝖙}
+\DeclareTextCompositeCommand{\textmathfrakb}{L8U}{u}{𝖚}
+\DeclareTextCompositeCommand{\textmathfrakb}{L8U}{v}{𝖛}
+\DeclareTextCompositeCommand{\textmathfrakb}{L8U}{w}{𝖜}
+\DeclareTextCompositeCommand{\textmathfrakb}{L8U}{x}{𝖝}
+\DeclareTextCompositeCommand{\textmathfrakb}{L8U}{y}{𝖞}
+\DeclareTextCompositeCommand{\textmathfrakb}{L8U}{z}{𝖟}
+
+\DeclareTextCompositeCommand{\textmathsf}{L8U}{A}{𝖠}
+\DeclareTextCompositeCommand{\textmathsf}{L8U}{B}{𝖡}
+\DeclareTextCompositeCommand{\textmathsf}{L8U}{C}{𝖢}
+\DeclareTextCompositeCommand{\textmathsf}{L8U}{D}{𝖣}
+\DeclareTextCompositeCommand{\textmathsf}{L8U}{E}{𝖤}
+\DeclareTextCompositeCommand{\textmathsf}{L8U}{F}{𝖥}
+\DeclareTextCompositeCommand{\textmathsf}{L8U}{G}{𝖦}
+\DeclareTextCompositeCommand{\textmathsf}{L8U}{H}{𝖧}
+\DeclareTextCompositeCommand{\textmathsf}{L8U}{I}{𝖨}
+\DeclareTextCompositeCommand{\textmathsf}{L8U}{J}{𝖩}
+\DeclareTextCompositeCommand{\textmathsf}{L8U}{K}{𝖪}
+\DeclareTextCompositeCommand{\textmathsf}{L8U}{L}{𝖫}
+\DeclareTextCompositeCommand{\textmathsf}{L8U}{M}{𝖬}
+\DeclareTextCompositeCommand{\textmathsf}{L8U}{N}{𝖭}
+\DeclareTextCompositeCommand{\textmathsf}{L8U}{O}{𝖮}
+\DeclareTextCompositeCommand{\textmathsf}{L8U}{P}{𝖯}
+\DeclareTextCompositeCommand{\textmathsf}{L8U}{Q}{𝖰}
+\DeclareTextCompositeCommand{\textmathsf}{L8U}{R}{𝖱}
+\DeclareTextCompositeCommand{\textmathsf}{L8U}{S}{𝖲}
+\DeclareTextCompositeCommand{\textmathsf}{L8U}{T}{𝖳}
+\DeclareTextCompositeCommand{\textmathsf}{L8U}{U}{𝖴}
+\DeclareTextCompositeCommand{\textmathsf}{L8U}{V}{𝖵}
+\DeclareTextCompositeCommand{\textmathsf}{L8U}{W}{𝖶}
+\DeclareTextCompositeCommand{\textmathsf}{L8U}{X}{𝖷}
+\DeclareTextCompositeCommand{\textmathsf}{L8U}{Y}{𝖸}
+\DeclareTextCompositeCommand{\textmathsf}{L8U}{Z}{𝖹}
+\DeclareTextCompositeCommand{\textmathsf}{L8U}{a}{𝖺}
+\DeclareTextCompositeCommand{\textmathsf}{L8U}{b}{𝖻}
+\DeclareTextCompositeCommand{\textmathsf}{L8U}{c}{𝖼}
+\DeclareTextCompositeCommand{\textmathsf}{L8U}{d}{𝖽}
+\DeclareTextCompositeCommand{\textmathsf}{L8U}{e}{𝖾}
+\DeclareTextCompositeCommand{\textmathsf}{L8U}{f}{𝖿}
+\DeclareTextCompositeCommand{\textmathsf}{L8U}{g}{𝗀}
+\DeclareTextCompositeCommand{\textmathsf}{L8U}{h}{𝗁}
+\DeclareTextCompositeCommand{\textmathsf}{L8U}{i}{𝗂}
+\DeclareTextCompositeCommand{\textmathsf}{L8U}{j}{𝗃}
+\DeclareTextCompositeCommand{\textmathsf}{L8U}{k}{𝗄}
+\DeclareTextCompositeCommand{\textmathsf}{L8U}{l}{𝗅}
+\DeclareTextCompositeCommand{\textmathsf}{L8U}{m}{𝗆}
+\DeclareTextCompositeCommand{\textmathsf}{L8U}{n}{𝗇}
+\DeclareTextCompositeCommand{\textmathsf}{L8U}{o}{𝗈}
+\DeclareTextCompositeCommand{\textmathsf}{L8U}{p}{𝗉}
+\DeclareTextCompositeCommand{\textmathsf}{L8U}{q}{𝗊}
+\DeclareTextCompositeCommand{\textmathsf}{L8U}{r}{𝗋}
+\DeclareTextCompositeCommand{\textmathsf}{L8U}{s}{𝗌}
+\DeclareTextCompositeCommand{\textmathsf}{L8U}{t}{𝗍}
+\DeclareTextCompositeCommand{\textmathsf}{L8U}{u}{𝗎}
+\DeclareTextCompositeCommand{\textmathsf}{L8U}{v}{𝗏}
+\DeclareTextCompositeCommand{\textmathsf}{L8U}{w}{𝗐}
+\DeclareTextCompositeCommand{\textmathsf}{L8U}{x}{𝗑}
+\DeclareTextCompositeCommand{\textmathsf}{L8U}{y}{𝗒}
+\DeclareTextCompositeCommand{\textmathsf}{L8U}{z}{𝗓}
+
+\DeclareTextCompositeCommand{\textmathsfb}{L8U}{A}{𝗔}
+\DeclareTextCompositeCommand{\textmathsfb}{L8U}{B}{𝗕}
+\DeclareTextCompositeCommand{\textmathsfb}{L8U}{C}{𝗖}
+\DeclareTextCompositeCommand{\textmathsfb}{L8U}{D}{𝗗}
+\DeclareTextCompositeCommand{\textmathsfb}{L8U}{E}{𝗘}
+\DeclareTextCompositeCommand{\textmathsfb}{L8U}{F}{𝗙}
+\DeclareTextCompositeCommand{\textmathsfb}{L8U}{G}{𝗚}
+\DeclareTextCompositeCommand{\textmathsfb}{L8U}{H}{𝗛}
+\DeclareTextCompositeCommand{\textmathsfb}{L8U}{I}{𝗜}
+\DeclareTextCompositeCommand{\textmathsfb}{L8U}{J}{𝗝}
+\DeclareTextCompositeCommand{\textmathsfb}{L8U}{K}{𝗞}
+\DeclareTextCompositeCommand{\textmathsfb}{L8U}{L}{𝗟}
+\DeclareTextCompositeCommand{\textmathsfb}{L8U}{M}{𝗠}
+\DeclareTextCompositeCommand{\textmathsfb}{L8U}{N}{𝗡}
+\DeclareTextCompositeCommand{\textmathsfb}{L8U}{O}{𝗢}
+\DeclareTextCompositeCommand{\textmathsfb}{L8U}{P}{𝗣}
+\DeclareTextCompositeCommand{\textmathsfb}{L8U}{Q}{𝗤}
+\DeclareTextCompositeCommand{\textmathsfb}{L8U}{R}{𝗥}
+\DeclareTextCompositeCommand{\textmathsfb}{L8U}{S}{𝗦}
+\DeclareTextCompositeCommand{\textmathsfb}{L8U}{T}{𝗧}
+\DeclareTextCompositeCommand{\textmathsfb}{L8U}{U}{𝗨}
+\DeclareTextCompositeCommand{\textmathsfb}{L8U}{V}{𝗩}
+\DeclareTextCompositeCommand{\textmathsfb}{L8U}{W}{𝗪}
+\DeclareTextCompositeCommand{\textmathsfb}{L8U}{X}{𝗫}
+\DeclareTextCompositeCommand{\textmathsfb}{L8U}{Y}{𝗬}
+\DeclareTextCompositeCommand{\textmathsfb}{L8U}{Z}{𝗭}
+\DeclareTextCompositeCommand{\textmathsfb}{L8U}{a}{𝗮}
+\DeclareTextCompositeCommand{\textmathsfb}{L8U}{b}{𝗯}
+\DeclareTextCompositeCommand{\textmathsfb}{L8U}{c}{𝗰}
+\DeclareTextCompositeCommand{\textmathsfb}{L8U}{d}{𝗱}
+\DeclareTextCompositeCommand{\textmathsfb}{L8U}{e}{𝗲}
+\DeclareTextCompositeCommand{\textmathsfb}{L8U}{f}{𝗳}
+\DeclareTextCompositeCommand{\textmathsfb}{L8U}{g}{𝗴}
+\DeclareTextCompositeCommand{\textmathsfb}{L8U}{h}{𝗵}
+\DeclareTextCompositeCommand{\textmathsfb}{L8U}{i}{𝗶}
+\DeclareTextCompositeCommand{\textmathsfb}{L8U}{j}{𝗷}
+\DeclareTextCompositeCommand{\textmathsfb}{L8U}{k}{𝗸}
+\DeclareTextCompositeCommand{\textmathsfb}{L8U}{l}{𝗹}
+\DeclareTextCompositeCommand{\textmathsfb}{L8U}{m}{𝗺}
+\DeclareTextCompositeCommand{\textmathsfb}{L8U}{n}{𝗻}
+\DeclareTextCompositeCommand{\textmathsfb}{L8U}{o}{𝗼}
+\DeclareTextCompositeCommand{\textmathsfb}{L8U}{p}{𝗽}
+\DeclareTextCompositeCommand{\textmathsfb}{L8U}{q}{𝗾}
+\DeclareTextCompositeCommand{\textmathsfb}{L8U}{r}{𝗿}
+\DeclareTextCompositeCommand{\textmathsfb}{L8U}{s}{𝘀}
+\DeclareTextCompositeCommand{\textmathsfb}{L8U}{t}{𝘁}
+\DeclareTextCompositeCommand{\textmathsfb}{L8U}{u}{𝘂}
+\DeclareTextCompositeCommand{\textmathsfb}{L8U}{v}{𝘃}
+\DeclareTextCompositeCommand{\textmathsfb}{L8U}{w}{𝘄}
+\DeclareTextCompositeCommand{\textmathsfb}{L8U}{x}{𝘅}
+\DeclareTextCompositeCommand{\textmathsfb}{L8U}{y}{𝘆}
+\DeclareTextCompositeCommand{\textmathsfb}{L8U}{z}{𝘇}
+
+\DeclareTextCompositeCommand{\textmathsfit}{L8U}{A}{𝘈}
+\DeclareTextCompositeCommand{\textmathsfit}{L8U}{B}{𝘉}
+\DeclareTextCompositeCommand{\textmathsfit}{L8U}{C}{𝘊}
+\DeclareTextCompositeCommand{\textmathsfit}{L8U}{D}{𝘋}
+\DeclareTextCompositeCommand{\textmathsfit}{L8U}{E}{𝘌}
+\DeclareTextCompositeCommand{\textmathsfit}{L8U}{F}{𝘍}
+\DeclareTextCompositeCommand{\textmathsfit}{L8U}{G}{𝘎}
+\DeclareTextCompositeCommand{\textmathsfit}{L8U}{H}{𝘏}
+\DeclareTextCompositeCommand{\textmathsfit}{L8U}{I}{𝘐}
+\DeclareTextCompositeCommand{\textmathsfit}{L8U}{J}{𝘑}
+\DeclareTextCompositeCommand{\textmathsfit}{L8U}{K}{𝘒}
+\DeclareTextCompositeCommand{\textmathsfit}{L8U}{L}{𝘓}
+\DeclareTextCompositeCommand{\textmathsfit}{L8U}{M}{𝘔}
+\DeclareTextCompositeCommand{\textmathsfit}{L8U}{N}{𝘕}
+\DeclareTextCompositeCommand{\textmathsfit}{L8U}{O}{𝘖}
+\DeclareTextCompositeCommand{\textmathsfit}{L8U}{P}{𝘗}
+\DeclareTextCompositeCommand{\textmathsfit}{L8U}{Q}{𝘘}
+\DeclareTextCompositeCommand{\textmathsfit}{L8U}{R}{𝘙}
+\DeclareTextCompositeCommand{\textmathsfit}{L8U}{S}{𝘚}
+\DeclareTextCompositeCommand{\textmathsfit}{L8U}{T}{𝘛}
+\DeclareTextCompositeCommand{\textmathsfit}{L8U}{U}{𝘜}
+\DeclareTextCompositeCommand{\textmathsfit}{L8U}{V}{𝘝}
+\DeclareTextCompositeCommand{\textmathsfit}{L8U}{W}{𝘞}
+\DeclareTextCompositeCommand{\textmathsfit}{L8U}{X}{𝘟}
+\DeclareTextCompositeCommand{\textmathsfit}{L8U}{Y}{𝘠}
+\DeclareTextCompositeCommand{\textmathsfit}{L8U}{Z}{𝘡}
+\DeclareTextCompositeCommand{\textmathsfit}{L8U}{a}{𝘢}
+\DeclareTextCompositeCommand{\textmathsfit}{L8U}{b}{𝘣}
+\DeclareTextCompositeCommand{\textmathsfit}{L8U}{c}{𝘤}
+\DeclareTextCompositeCommand{\textmathsfit}{L8U}{d}{𝘥}
+\DeclareTextCompositeCommand{\textmathsfit}{L8U}{e}{𝘦}
+\DeclareTextCompositeCommand{\textmathsfit}{L8U}{f}{𝘧}
+\DeclareTextCompositeCommand{\textmathsfit}{L8U}{g}{𝘨}
+\DeclareTextCompositeCommand{\textmathsfit}{L8U}{h}{𝘩}
+\DeclareTextCompositeCommand{\textmathsfit}{L8U}{i}{𝘪}
+\DeclareTextCompositeCommand{\textmathsfit}{L8U}{j}{𝘫}
+\DeclareTextCompositeCommand{\textmathsfit}{L8U}{k}{𝘬}
+\DeclareTextCompositeCommand{\textmathsfit}{L8U}{l}{𝘭}
+\DeclareTextCompositeCommand{\textmathsfit}{L8U}{m}{𝘮}
+\DeclareTextCompositeCommand{\textmathsfit}{L8U}{n}{𝘯}
+\DeclareTextCompositeCommand{\textmathsfit}{L8U}{o}{𝘰}
+\DeclareTextCompositeCommand{\textmathsfit}{L8U}{p}{𝘱}
+\DeclareTextCompositeCommand{\textmathsfit}{L8U}{q}{𝘲}
+\DeclareTextCompositeCommand{\textmathsfit}{L8U}{r}{𝘳}
+\DeclareTextCompositeCommand{\textmathsfit}{L8U}{s}{𝘴}
+\DeclareTextCompositeCommand{\textmathsfit}{L8U}{t}{𝘵}
+\DeclareTextCompositeCommand{\textmathsfit}{L8U}{u}{𝘶}
+\DeclareTextCompositeCommand{\textmathsfit}{L8U}{v}{𝘷}
+\DeclareTextCompositeCommand{\textmathsfit}{L8U}{w}{𝘸}
+\DeclareTextCompositeCommand{\textmathsfit}{L8U}{x}{𝘹}
+\DeclareTextCompositeCommand{\textmathsfit}{L8U}{y}{𝘺}
+\DeclareTextCompositeCommand{\textmathsfit}{L8U}{z}{𝘻}
+
+\DeclareTextCompositeCommand{\textmathsbit}{L8U}{A}{𝘼}
+\DeclareTextCompositeCommand{\textmathsbit}{L8U}{B}{𝘽}
+\DeclareTextCompositeCommand{\textmathsbit}{L8U}{C}{𝘾}
+\DeclareTextCompositeCommand{\textmathsbit}{L8U}{D}{𝘿}
+\DeclareTextCompositeCommand{\textmathsbit}{L8U}{E}{𝙀}
+\DeclareTextCompositeCommand{\textmathsbit}{L8U}{F}{𝙁}
+\DeclareTextCompositeCommand{\textmathsbit}{L8U}{G}{𝙂}
+\DeclareTextCompositeCommand{\textmathsbit}{L8U}{H}{𝙃}
+\DeclareTextCompositeCommand{\textmathsbit}{L8U}{I}{𝙄}
+\DeclareTextCompositeCommand{\textmathsbit}{L8U}{J}{𝙅}
+\DeclareTextCompositeCommand{\textmathsbit}{L8U}{K}{𝙆}
+\DeclareTextCompositeCommand{\textmathsbit}{L8U}{L}{𝙇}
+\DeclareTextCompositeCommand{\textmathsbit}{L8U}{M}{𝙈}
+\DeclareTextCompositeCommand{\textmathsbit}{L8U}{N}{𝙉}
+\DeclareTextCompositeCommand{\textmathsbit}{L8U}{O}{𝙊}
+\DeclareTextCompositeCommand{\textmathsbit}{L8U}{P}{𝙋}
+\DeclareTextCompositeCommand{\textmathsbit}{L8U}{Q}{𝙌}
+\DeclareTextCompositeCommand{\textmathsbit}{L8U}{R}{𝙍}
+\DeclareTextCompositeCommand{\textmathsbit}{L8U}{S}{𝙎}
+\DeclareTextCompositeCommand{\textmathsbit}{L8U}{T}{𝙏}
+\DeclareTextCompositeCommand{\textmathsbit}{L8U}{U}{𝙐}
+\DeclareTextCompositeCommand{\textmathsbit}{L8U}{V}{𝙑}
+\DeclareTextCompositeCommand{\textmathsbit}{L8U}{W}{𝙒}
+\DeclareTextCompositeCommand{\textmathsbit}{L8U}{X}{𝙓}
+\DeclareTextCompositeCommand{\textmathsbit}{L8U}{Y}{𝙔}
+\DeclareTextCompositeCommand{\textmathsbit}{L8U}{Z}{𝙕}
+\DeclareTextCompositeCommand{\textmathsbit}{L8U}{a}{𝙖}
+\DeclareTextCompositeCommand{\textmathsbit}{L8U}{b}{𝙗}
+\DeclareTextCompositeCommand{\textmathsbit}{L8U}{c}{𝙘}
+\DeclareTextCompositeCommand{\textmathsbit}{L8U}{d}{𝙙}
+\DeclareTextCompositeCommand{\textmathsbit}{L8U}{e}{𝙚}
+\DeclareTextCompositeCommand{\textmathsbit}{L8U}{f}{𝙛}
+\DeclareTextCompositeCommand{\textmathsbit}{L8U}{g}{𝙜}
+\DeclareTextCompositeCommand{\textmathsbit}{L8U}{h}{𝙝}
+\DeclareTextCompositeCommand{\textmathsbit}{L8U}{i}{𝙞}
+\DeclareTextCompositeCommand{\textmathsbit}{L8U}{j}{𝙟}
+\DeclareTextCompositeCommand{\textmathsbit}{L8U}{k}{𝙠}
+\DeclareTextCompositeCommand{\textmathsbit}{L8U}{l}{𝙡}
+\DeclareTextCompositeCommand{\textmathsbit}{L8U}{m}{𝙢}
+\DeclareTextCompositeCommand{\textmathsbit}{L8U}{n}{𝙣}
+\DeclareTextCompositeCommand{\textmathsbit}{L8U}{o}{𝙤}
+\DeclareTextCompositeCommand{\textmathsbit}{L8U}{p}{𝙥}
+\DeclareTextCompositeCommand{\textmathsbit}{L8U}{q}{𝙦}
+\DeclareTextCompositeCommand{\textmathsbit}{L8U}{r}{𝙧}
+\DeclareTextCompositeCommand{\textmathsbit}{L8U}{s}{𝙨}
+\DeclareTextCompositeCommand{\textmathsbit}{L8U}{t}{𝙩}
+\DeclareTextCompositeCommand{\textmathsbit}{L8U}{u}{𝙪}
+\DeclareTextCompositeCommand{\textmathsbit}{L8U}{v}{𝙫}
+\DeclareTextCompositeCommand{\textmathsbit}{L8U}{w}{𝙬}
+\DeclareTextCompositeCommand{\textmathsbit}{L8U}{x}{𝙭}
+\DeclareTextCompositeCommand{\textmathsbit}{L8U}{y}{𝙮}
+\DeclareTextCompositeCommand{\textmathsbit}{L8U}{z}{𝙯}
+
+\DeclareTextCompositeCommand{\textmathtt}{L8U}{A}{𝙰}
+\DeclareTextCompositeCommand{\textmathtt}{L8U}{B}{𝙱}
+\DeclareTextCompositeCommand{\textmathtt}{L8U}{C}{𝙲}
+\DeclareTextCompositeCommand{\textmathtt}{L8U}{D}{𝙳}
+\DeclareTextCompositeCommand{\textmathtt}{L8U}{E}{𝙴}
+\DeclareTextCompositeCommand{\textmathtt}{L8U}{F}{𝙵}
+\DeclareTextCompositeCommand{\textmathtt}{L8U}{G}{𝙶}
+\DeclareTextCompositeCommand{\textmathtt}{L8U}{H}{𝙷}
+\DeclareTextCompositeCommand{\textmathtt}{L8U}{I}{𝙸}
+\DeclareTextCompositeCommand{\textmathtt}{L8U}{J}{𝙹}
+\DeclareTextCompositeCommand{\textmathtt}{L8U}{K}{𝙺}
+\DeclareTextCompositeCommand{\textmathtt}{L8U}{L}{𝙻}
+\DeclareTextCompositeCommand{\textmathtt}{L8U}{M}{𝙼}
+\DeclareTextCompositeCommand{\textmathtt}{L8U}{N}{𝙽}
+\DeclareTextCompositeCommand{\textmathtt}{L8U}{O}{𝙾}
+\DeclareTextCompositeCommand{\textmathtt}{L8U}{P}{𝙿}
+\DeclareTextCompositeCommand{\textmathtt}{L8U}{Q}{𝚀}
+\DeclareTextCompositeCommand{\textmathtt}{L8U}{R}{𝚁}
+\DeclareTextCompositeCommand{\textmathtt}{L8U}{S}{𝚂}
+\DeclareTextCompositeCommand{\textmathtt}{L8U}{T}{𝚃}
+\DeclareTextCompositeCommand{\textmathtt}{L8U}{U}{𝚄}
+\DeclareTextCompositeCommand{\textmathtt}{L8U}{V}{𝚅}
+\DeclareTextCompositeCommand{\textmathtt}{L8U}{W}{𝚆}
+\DeclareTextCompositeCommand{\textmathtt}{L8U}{X}{𝚇}
+\DeclareTextCompositeCommand{\textmathtt}{L8U}{Y}{𝚈}
+\DeclareTextCompositeCommand{\textmathtt}{L8U}{Z}{𝚉}
+\DeclareTextCompositeCommand{\textmathtt}{L8U}{a}{𝚊}
+\DeclareTextCompositeCommand{\textmathtt}{L8U}{b}{𝚋}
+\DeclareTextCompositeCommand{\textmathtt}{L8U}{c}{𝚌}
+\DeclareTextCompositeCommand{\textmathtt}{L8U}{d}{𝚍}
+\DeclareTextCompositeCommand{\textmathtt}{L8U}{e}{𝚎}
+\DeclareTextCompositeCommand{\textmathtt}{L8U}{f}{𝚏}
+\DeclareTextCompositeCommand{\textmathtt}{L8U}{g}{𝚐}
+\DeclareTextCompositeCommand{\textmathtt}{L8U}{h}{𝚑}
+\DeclareTextCompositeCommand{\textmathtt}{L8U}{i}{𝚒}
+\DeclareTextCompositeCommand{\textmathtt}{L8U}{j}{𝚓}
+\DeclareTextCompositeCommand{\textmathtt}{L8U}{k}{𝚔}
+\DeclareTextCompositeCommand{\textmathtt}{L8U}{l}{𝚕}
+\DeclareTextCompositeCommand{\textmathtt}{L8U}{m}{𝚖}
+\DeclareTextCompositeCommand{\textmathtt}{L8U}{n}{𝚗}
+\DeclareTextCompositeCommand{\textmathtt}{L8U}{o}{𝚘}
+\DeclareTextCompositeCommand{\textmathtt}{L8U}{p}{𝚙}
+\DeclareTextCompositeCommand{\textmathtt}{L8U}{q}{𝚚}
+\DeclareTextCompositeCommand{\textmathtt}{L8U}{r}{𝚛}
+\DeclareTextCompositeCommand{\textmathtt}{L8U}{s}{𝚜}
+\DeclareTextCompositeCommand{\textmathtt}{L8U}{t}{𝚝}
+\DeclareTextCompositeCommand{\textmathtt}{L8U}{u}{𝚞}
+\DeclareTextCompositeCommand{\textmathtt}{L8U}{v}{𝚟}
+\DeclareTextCompositeCommand{\textmathtt}{L8U}{w}{𝚠}
+\DeclareTextCompositeCommand{\textmathtt}{L8U}{x}{𝚡}
+\DeclareTextCompositeCommand{\textmathtt}{L8U}{y}{𝚢}
+\DeclareTextCompositeCommand{\textmathtt}{L8U}{z}{𝚣}
+
+\DeclareTextCommand{\mathimath}{L8U}{𝚤}
+\DeclareTextCommand{\mathjmath}{L8U}{𝚥}
+
+\DeclareTextCompositeCommand{\textmathbf}{L8U}{\Alpha}{𝚨}
+\DeclareTextCompositeCommand{\textmathbf}{L8U}{\Beta}{𝚩}
+\DeclareTextCompositeCommand{\textmathbf}{L8U}{\Gamma}{𝚪}
+\DeclareTextCompositeCommand{\textmathbf}{L8U}{\Delta}{𝚫}
+\DeclareTextCompositeCommand{\textmathbf}{L8U}{\Epsilon}{𝚬}
+\DeclareTextCompositeCommand{\textmathbf}{L8U}{\Zeta}{𝚭}
+\DeclareTextCompositeCommand{\textmathbf}{L8U}{\Eta}{𝚮}
+\DeclareTextCompositeCommand{\textmathbf}{L8U}{\Theta}{𝚯}
+\DeclareTextCompositeCommand{\textmathbf}{L8U}{\Iota}{𝚰}
+\DeclareTextCompositeCommand{\textmathbf}{L8U}{\Kappa}{𝚱}
+\DeclareTextCompositeCommand{\textmathbf}{L8U}{\Lambda}{𝚲}
+\DeclareTextCompositeCommand{\textmathbf}{L8U}{\Mu}{𝚳}
+\DeclareTextCompositeCommand{\textmathbf}{L8U}{\Nu}{𝚴}
+\DeclareTextCompositeCommand{\textmathbf}{L8U}{\Xi}{𝚵}
+\DeclareTextCompositeCommand{\textmathbf}{L8U}{\Omicron}{𝚶}
+\DeclareTextCompositeCommand{\textmathbf}{L8U}{\Pi}{𝚷}
+\DeclareTextCompositeCommand{\textmathbf}{L8U}{\Rho}{𝚸}
+\DeclareTextCompositeCommand{\textmathbf}{L8U}{\varTheta}{𝚹}
+\DeclareTextCompositeCommand{\textmathbf}{L8U}{\Sigma}{𝚺}
+\DeclareTextCompositeCommand{\textmathbf}{L8U}{\Tau}{𝚻}
+\DeclareTextCompositeCommand{\textmathbf}{L8U}{\Upsilon}{𝚼}
+\DeclareTextCompositeCommand{\textmathbf}{L8U}{\Phi}{𝚽}
+\DeclareTextCompositeCommand{\textmathbf}{L8U}{\Chi}{𝚾}
+\DeclareTextCompositeCommand{\textmathbf}{L8U}{\Psi}{𝚿}
+\DeclareTextCompositeCommand{\textmathbf}{L8U}{\Omega}{𝛀}
+\DeclareTextCompositeCommand{\textmathbf}{L8U}{\nabla}{𝛁}
+
+\DeclareTextCompositeCommand{\textmathbf}{L8U}{\alpha}{𝛂}
+\DeclareTextCompositeCommand{\textmathbf}{L8U}{\beta}{𝛃}
+\DeclareTextCompositeCommand{\textmathbf}{L8U}{\gamma}{𝛄}
+\DeclareTextCompositeCommand{\textmathbf}{L8U}{\delta}{𝛅}
+\DeclareTextCompositeCommand{\textmathbf}{L8U}{\varepsilon}{𝛆}
+\DeclareTextCompositeCommand{\textmathbf}{L8U}{\zeta}{𝛇}
+\DeclareTextCompositeCommand{\textmathbf}{L8U}{\eta}{𝛈}
+\DeclareTextCompositeCommand{\textmathbf}{L8U}{\theta}{𝛉}
+\DeclareTextCompositeCommand{\textmathbf}{L8U}{\iota}{𝛊}
+\DeclareTextCompositeCommand{\textmathbf}{L8U}{\kappa}{𝛋}
+\DeclareTextCompositeCommand{\textmathbf}{L8U}{\lambda}{𝛌}
+\DeclareTextCompositeCommand{\textmathbf}{L8U}{\mu}{𝛍}
+\DeclareTextCompositeCommand{\textmathbf}{L8U}{\nu}{𝛎}
+\DeclareTextCompositeCommand{\textmathbf}{L8U}{\xi}{𝛏}
+\DeclareTextCompositeCommand{\textmathbf}{L8U}{\omicron}{𝛐}
+\DeclareTextCompositeCommand{\textmathbf}{L8U}{\pi}{𝛑}
+\DeclareTextCompositeCommand{\textmathbf}{L8U}{\rho}{𝛒}
+\DeclareTextCompositeCommand{\textmathbf}{L8U}{\varsigma}{𝛓}
+\DeclareTextCompositeCommand{\textmathbf}{L8U}{\sigma}{𝛔}
+\DeclareTextCompositeCommand{\textmathbf}{L8U}{\tau}{𝛕}
+\DeclareTextCompositeCommand{\textmathbf}{L8U}{\upsilon}{𝛖}
+\DeclareTextCompositeCommand{\textmathbf}{L8U}{\varphi}{𝛗}
+\DeclareTextCompositeCommand{\textmathbf}{L8U}{\chi}{𝛘}
+\DeclareTextCompositeCommand{\textmathbf}{L8U}{\psi}{𝛙}
+\DeclareTextCompositeCommand{\textmathbf}{L8U}{\omega}{𝛚}
+\DeclareTextCompositeCommand{\textmathbf}{L8U}{\partial}{𝛛}
+\DeclareTextCompositeCommand{\textmathbf}{L8U}{\epsilon}{𝛜}
+\DeclareTextCompositeCommand{\textmathbf}{L8U}{\vartheta}{𝛝}
+\DeclareTextCompositeCommand{\textmathbf}{L8U}{\varkappa}{𝛞}
+\DeclareTextCompositeCommand{\textmathbf}{L8U}{\phi}{𝛟}
+\DeclareTextCompositeCommand{\textmathbf}{L8U}{\varrho}{𝛠}
+\DeclareTextCompositeCommand{\textmathbf}{L8U}{\varpi}{𝛡}
+
+\DeclareTextCompositeCommand{\textmathit}{L8U}{\Alpha}{𝛢}
+\DeclareTextCompositeCommand{\textmathit}{L8U}{\Beta}{𝛣}
+\DeclareTextCompositeCommand{\textmathit}{L8U}{\Gamma}{𝛤}
+\DeclareTextCompositeCommand{\textmathit}{L8U}{\Delta}{𝛥}
+\DeclareTextCompositeCommand{\textmathit}{L8U}{\Epsilon}{𝛦}
+\DeclareTextCompositeCommand{\textmathit}{L8U}{\Zeta}{𝛧}
+\DeclareTextCompositeCommand{\textmathit}{L8U}{\Eta}{𝛨}
+\DeclareTextCompositeCommand{\textmathit}{L8U}{\Theta}{𝛩}
+\DeclareTextCompositeCommand{\textmathit}{L8U}{\Iota}{𝛪}
+\DeclareTextCompositeCommand{\textmathit}{L8U}{\Kappa}{𝛫}
+\DeclareTextCompositeCommand{\textmathit}{L8U}{\Lambda}{𝛬}
+\DeclareTextCompositeCommand{\textmathit}{L8U}{\Mu}{𝛭}
+\DeclareTextCompositeCommand{\textmathit}{L8U}{\Nu}{𝛮}
+\DeclareTextCompositeCommand{\textmathit}{L8U}{\Xi}{𝛯}
+\DeclareTextCompositeCommand{\textmathit}{L8U}{\Omicron}{𝛰}
+\DeclareTextCompositeCommand{\textmathit}{L8U}{\Pi}{𝛱}
+\DeclareTextCompositeCommand{\textmathit}{L8U}{\Rho}{𝛲}
+\DeclareTextCompositeCommand{\textmathit}{L8U}{\varTheta}{𝛳}
+\DeclareTextCompositeCommand{\textmathit}{L8U}{\Sigma}{𝛴}
+\DeclareTextCompositeCommand{\textmathit}{L8U}{\Tau}{𝛵}
+\DeclareTextCompositeCommand{\textmathit}{L8U}{\Upsilon}{𝛶}
+\DeclareTextCompositeCommand{\textmathit}{L8U}{\Phi}{𝛷}
+\DeclareTextCompositeCommand{\textmathit}{L8U}{\Chi}{𝛸}
+\DeclareTextCompositeCommand{\textmathit}{L8U}{\Psi}{𝛹}
+\DeclareTextCompositeCommand{\textmathit}{L8U}{\Omega}{𝛺}
+\DeclareTextCompositeCommand{\textmathit}{L8U}{\nabla}{𝛻}
+
+
+\DeclareTextCommand{\textmathalpha}{L8U}{𝛼}
+\DeclareTextCommand{\textmathbeta}{L8U}{𝛽}
+\DeclareTextCommand{\textmathgamma}{L8U}{𝛾}
+\DeclareTextCommand{\textmathdelta}{L8U}{𝛿}
+\DeclareTextCommand{\textmathvarepsilon}{L8U}{𝜀}
+\DeclareTextCommand{\textmathzeta}{L8U}{𝜁}
+\DeclareTextCommand{\textmatheta}{L8U}{𝜂}
+\DeclareTextCommand{\textmaththeta}{L8U}{𝜃}
+\DeclareTextCommand{\textmathiota}{L8U}{𝜄}
+\DeclareTextCommand{\textmathkappa}{L8U}{𝜅}
+\DeclareTextCommand{\textmathlambda}{L8U}{𝜆}
+\DeclareTextCommand{\textmathmu}{L8U}{𝜇}
+\DeclareTextCommand{\textmathnu}{L8U}{𝜈}
+\DeclareTextCommand{\textmathxi}{L8U}{𝜉}
+\DeclareTextCommand{\textmathomicron}{L8U}{𝜊}
+\DeclareTextCommand{\textmathpi}{L8U}{𝜋}
+\DeclareTextCommand{\textmathrho}{L8U}{𝜌}
+\DeclareTextCommand{\textmathvarsigma}{L8U}{𝜍}
+\DeclareTextCommand{\textmathsigma}{L8U}{𝜎}
+\DeclareTextCommand{\textmathtau}{L8U}{𝜏}
+\DeclareTextCommand{\textmathupsilon}{L8U}{𝜐}
+\DeclareTextCommand{\textmathvarphi}{L8U}{𝜑}
+\DeclareTextCommand{\textmathchi}{L8U}{𝜒}
+\DeclareTextCommand{\textmathpsi}{L8U}{𝜓}
+\DeclareTextCommand{\textmathomega}{L8U}{𝜔}
+\DeclareTextCommand{\textmathpartial}{L8U}{𝜕}
+\DeclareTextCommand{\textmathepsilon}{L8U}{𝜖}
+\DeclareTextCommand{\textmathvartheta}{L8U}{𝜗}
+\DeclareTextCommand{\textmathvarkappa}{L8U}{𝜘}
+\DeclareTextCommand{\textmathphi}{L8U}{𝜙}
+\DeclareTextCommand{\textmathvarrho}{L8U}{𝜚}
+\DeclareTextCommand{\textmathvarpi}{L8U}{𝜛}
+
+\DeclareTextCompositeCommand{\textmathbit}{L8U}{\Alpha}{𝜜}
+\DeclareTextCompositeCommand{\textmathbit}{L8U}{\Beta}{𝜝}
+\DeclareTextCompositeCommand{\textmathbit}{L8U}{\Gamma}{𝜞}
+\DeclareTextCompositeCommand{\textmathbit}{L8U}{\Delta}{𝜟}
+\DeclareTextCompositeCommand{\textmathbit}{L8U}{\Epsilon}{𝜠}
+\DeclareTextCompositeCommand{\textmathbit}{L8U}{\Zeta}{𝜡}
+\DeclareTextCompositeCommand{\textmathbit}{L8U}{\Eta}{𝜢}
+\DeclareTextCompositeCommand{\textmathbit}{L8U}{\Theta}{𝜣}
+\DeclareTextCompositeCommand{\textmathbit}{L8U}{\Iota}{𝜤}
+\DeclareTextCompositeCommand{\textmathbit}{L8U}{\Kappa}{𝜥}
+\DeclareTextCompositeCommand{\textmathbit}{L8U}{\Lambda}{𝜦}
+\DeclareTextCompositeCommand{\textmathbit}{L8U}{\Mu}{𝜧}
+\DeclareTextCompositeCommand{\textmathbit}{L8U}{\Nu}{𝜨}
+\DeclareTextCompositeCommand{\textmathbit}{L8U}{\Xi}{𝜩}
+\DeclareTextCompositeCommand{\textmathbit}{L8U}{\Omicron}{𝜪}
+\DeclareTextCompositeCommand{\textmathbit}{L8U}{\Pi}{𝜫}
+\DeclareTextCompositeCommand{\textmathbit}{L8U}{\Rho}{𝜬}
+\DeclareTextCompositeCommand{\textmathbit}{L8U}{\varTheta}{𝜭}
+\DeclareTextCompositeCommand{\textmathbit}{L8U}{\Sigma}{𝜮}
+\DeclareTextCompositeCommand{\textmathbit}{L8U}{\Tau}{𝜯}
+\DeclareTextCompositeCommand{\textmathbit}{L8U}{\Upsilon}{𝜰}
+\DeclareTextCompositeCommand{\textmathbit}{L8U}{\Phi}{𝜱}
+\DeclareTextCompositeCommand{\textmathbit}{L8U}{\Chi}{𝜲}
+\DeclareTextCompositeCommand{\textmathbit}{L8U}{\Psi}{𝜳}
+\DeclareTextCompositeCommand{\textmathbit}{L8U}{\Omega}{𝜴}
+\DeclareTextCompositeCommand{\textmathbit}{L8U}{\nabla}{𝜵}
+
+\DeclareTextCompositeCommand{\textmathbit}{L8U}{\alpha}{𝜶}
+\DeclareTextCompositeCommand{\textmathbit}{L8U}{\beta}{𝜷}
+\DeclareTextCompositeCommand{\textmathbit}{L8U}{\gamma}{𝜸}
+\DeclareTextCompositeCommand{\textmathbit}{L8U}{\delta}{𝜹}
+\DeclareTextCompositeCommand{\textmathbit}{L8U}{\varepsilon}{𝜺}
+\DeclareTextCompositeCommand{\textmathbit}{L8U}{\zeta}{𝜻}
+\DeclareTextCompositeCommand{\textmathbit}{L8U}{\eta}{𝜼}
+\DeclareTextCompositeCommand{\textmathbit}{L8U}{\theta}{𝜽}
+\DeclareTextCompositeCommand{\textmathbit}{L8U}{\iota}{𝜾}
+\DeclareTextCompositeCommand{\textmathbit}{L8U}{\kappa}{𝜿}
+\DeclareTextCompositeCommand{\textmathbit}{L8U}{\lambda}{𝝀}
+\DeclareTextCompositeCommand{\textmathbit}{L8U}{\mu}{𝝁}
+\DeclareTextCompositeCommand{\textmathbit}{L8U}{\nu}{𝝂}
+\DeclareTextCompositeCommand{\textmathbit}{L8U}{\xi}{𝝃}
+\DeclareTextCompositeCommand{\textmathbit}{L8U}{\omicron}{𝝄}
+\DeclareTextCompositeCommand{\textmathbit}{L8U}{\pi}{𝝅}
+\DeclareTextCompositeCommand{\textmathbit}{L8U}{\rho}{𝝆}
+\DeclareTextCompositeCommand{\textmathbit}{L8U}{\varsigma}{𝝇}
+\DeclareTextCompositeCommand{\textmathbit}{L8U}{\sigma}{𝝈}
+\DeclareTextCompositeCommand{\textmathbit}{L8U}{\tau}{𝝉}
+\DeclareTextCompositeCommand{\textmathbit}{L8U}{\upsilon}{𝝊}
+\DeclareTextCompositeCommand{\textmathbit}{L8U}{\varphi}{𝝋}
+\DeclareTextCompositeCommand{\textmathbit}{L8U}{\chi}{𝝌}
+\DeclareTextCompositeCommand{\textmathbit}{L8U}{\psi}{𝝍}
+\DeclareTextCompositeCommand{\textmathbit}{L8U}{\omega}{𝝎}
+\DeclareTextCompositeCommand{\textmathbit}{L8U}{\partial}{𝝏}
+\DeclareTextCompositeCommand{\textmathbit}{L8U}{\epsilon}{𝝐}
+\DeclareTextCompositeCommand{\textmathbit}{L8U}{\vartheta}{𝝑}
+\DeclareTextCompositeCommand{\textmathbit}{L8U}{\varkappa}{𝝒}
+\DeclareTextCompositeCommand{\textmathbit}{L8U}{\phi}{𝝓}
+\DeclareTextCompositeCommand{\textmathbit}{L8U}{\varrho}{𝝔}
+\DeclareTextCompositeCommand{\textmathbit}{L8U}{\varpi}{𝝕}
+
+\DeclareTextCompositeCommand{\textmathsfb}{L8U}{\Alpha}{𝝖}
+\DeclareTextCompositeCommand{\textmathsfb}{L8U}{\Beta}{𝝗}
+\DeclareTextCompositeCommand{\textmathsfb}{L8U}{\Gamma}{𝝘}
+\DeclareTextCompositeCommand{\textmathsfb}{L8U}{\Delta}{𝝙}
+\DeclareTextCompositeCommand{\textmathsfb}{L8U}{\Epsilon}{𝝚}
+\DeclareTextCompositeCommand{\textmathsfb}{L8U}{\Zeta}{𝝛}
+\DeclareTextCompositeCommand{\textmathsfb}{L8U}{\Eta}{𝝜}
+\DeclareTextCompositeCommand{\textmathsfb}{L8U}{\Theta}{𝝝}
+\DeclareTextCompositeCommand{\textmathsfb}{L8U}{\Iota}{𝝞}
+\DeclareTextCompositeCommand{\textmathsfb}{L8U}{\Kappa}{𝝟}
+\DeclareTextCompositeCommand{\textmathsfb}{L8U}{\Lambda}{𝝠}
+\DeclareTextCompositeCommand{\textmathsfb}{L8U}{\Mu}{𝝡}
+\DeclareTextCompositeCommand{\textmathsfb}{L8U}{\Nu}{𝝢}
+\DeclareTextCompositeCommand{\textmathsfb}{L8U}{\Xi}{𝝣}
+\DeclareTextCompositeCommand{\textmathsfb}{L8U}{\Omicron}{𝝤}
+\DeclareTextCompositeCommand{\textmathsfb}{L8U}{\Pi}{𝝥}
+\DeclareTextCompositeCommand{\textmathsfb}{L8U}{\Rho}{𝝦}
+\DeclareTextCompositeCommand{\textmathsfb}{L8U}{\varTheta}{𝝧}
+\DeclareTextCompositeCommand{\textmathsfb}{L8U}{\Sigma}{𝝨}
+\DeclareTextCompositeCommand{\textmathsfb}{L8U}{\Tau}{𝝩}
+\DeclareTextCompositeCommand{\textmathsfb}{L8U}{\Upsilon}{𝝪}
+\DeclareTextCompositeCommand{\textmathsfb}{L8U}{\Phi}{𝝫}
+\DeclareTextCompositeCommand{\textmathsfb}{L8U}{\Chi}{𝝬}
+\DeclareTextCompositeCommand{\textmathsfb}{L8U}{\Psi}{𝝭}
+\DeclareTextCompositeCommand{\textmathsfb}{L8U}{\Omega}{𝝮}
+\DeclareTextCompositeCommand{\textmathsfb}{L8U}{\nabla}{𝝯}
+
+\DeclareTextCompositeCommand{\textmathsfb}{L8U}{\alpha}{𝝰}
+\DeclareTextCompositeCommand{\textmathsfb}{L8U}{\beta}{𝝱}
+\DeclareTextCompositeCommand{\textmathsfb}{L8U}{\gamma}{𝝲}
+\DeclareTextCompositeCommand{\textmathsfb}{L8U}{\delta}{𝝳}
+\DeclareTextCompositeCommand{\textmathsfb}{L8U}{\varepsilon}{𝝴}
+\DeclareTextCompositeCommand{\textmathsfb}{L8U}{\zeta}{𝝵}
+\DeclareTextCompositeCommand{\textmathsfb}{L8U}{\eta}{𝝶}
+\DeclareTextCompositeCommand{\textmathsfb}{L8U}{\theta}{𝝷}
+\DeclareTextCompositeCommand{\textmathsfb}{L8U}{\iota}{𝝸}
+\DeclareTextCompositeCommand{\textmathsfb}{L8U}{\kappa}{𝝹}
+\DeclareTextCompositeCommand{\textmathsfb}{L8U}{\lambda}{𝝺}
+\DeclareTextCompositeCommand{\textmathsfb}{L8U}{\mu}{𝝻}
+\DeclareTextCompositeCommand{\textmathsfb}{L8U}{\nu}{𝝼}
+\DeclareTextCompositeCommand{\textmathsfb}{L8U}{\xi}{𝝽}
+\DeclareTextCompositeCommand{\textmathsfb}{L8U}{\omicron}{𝝾}
+\DeclareTextCompositeCommand{\textmathsfb}{L8U}{\pi}{𝝿}
+\DeclareTextCompositeCommand{\textmathsfb}{L8U}{\rho}{𝞀}
+\DeclareTextCompositeCommand{\textmathsfb}{L8U}{\varsigma}{𝞁}
+\DeclareTextCompositeCommand{\textmathsfb}{L8U}{\sigma}{𝞂}
+\DeclareTextCompositeCommand{\textmathsfb}{L8U}{\tau}{𝞃}
+\DeclareTextCompositeCommand{\textmathsfb}{L8U}{\upsilon}{𝞄}
+\DeclareTextCompositeCommand{\textmathsfb}{L8U}{\varphi}{𝞅}
+\DeclareTextCompositeCommand{\textmathsfb}{L8U}{\chi}{𝞆}
+\DeclareTextCompositeCommand{\textmathsfb}{L8U}{\psi}{𝞇}
+\DeclareTextCompositeCommand{\textmathsfb}{L8U}{\omega}{𝞈}
+\DeclareTextCompositeCommand{\textmathsfb}{L8U}{\partial}{𝞉}
+\DeclareTextCompositeCommand{\textmathsfb}{L8U}{\epsilon}{𝞊}
+\DeclareTextCompositeCommand{\textmathsfb}{L8U}{\vartheta}{𝞋}
+\DeclareTextCompositeCommand{\textmathsfb}{L8U}{\varkappa}{𝞌}
+\DeclareTextCompositeCommand{\textmathsfb}{L8U}{\phi}{𝞍}
+\DeclareTextCompositeCommand{\textmathsfb}{L8U}{\varrho}{𝞎}
+\DeclareTextCompositeCommand{\textmathsfb}{L8U}{\varpi}{𝞏}
+
+\DeclareTextCompositeCommand{\textmathsbit}{L8U}{\Alpha}{𝞐}
+\DeclareTextCompositeCommand{\textmathsbit}{L8U}{\Beta}{𝞑}
+\DeclareTextCompositeCommand{\textmathsbit}{L8U}{\Gamma}{𝞒}
+\DeclareTextCompositeCommand{\textmathsbit}{L8U}{\Delta}{𝞓}
+\DeclareTextCompositeCommand{\textmathsbit}{L8U}{\Epsilon}{𝞔}
+\DeclareTextCompositeCommand{\textmathsbit}{L8U}{\Zeta}{𝞕}
+\DeclareTextCompositeCommand{\textmathsbit}{L8U}{\Eta}{𝞖}
+\DeclareTextCompositeCommand{\textmathsbit}{L8U}{\Theta}{𝞗}
+\DeclareTextCompositeCommand{\textmathsbit}{L8U}{\Iota}{𝞘}
+\DeclareTextCompositeCommand{\textmathsbit}{L8U}{\Kappa}{𝞙}
+\DeclareTextCompositeCommand{\textmathsbit}{L8U}{\Lambda}{𝞚}
+\DeclareTextCompositeCommand{\textmathsbit}{L8U}{\Mu}{𝞛}
+\DeclareTextCompositeCommand{\textmathsbit}{L8U}{\Nu}{𝞜}
+\DeclareTextCompositeCommand{\textmathsbit}{L8U}{\Xi}{𝞝}
+\DeclareTextCompositeCommand{\textmathsbit}{L8U}{\Omicron}{𝞞}
+\DeclareTextCompositeCommand{\textmathsbit}{L8U}{\Pi}{𝞟}
+\DeclareTextCompositeCommand{\textmathsbit}{L8U}{\Rho}{𝞠}
+\DeclareTextCompositeCommand{\textmathsbit}{L8U}{\varTheta}{𝞡}
+\DeclareTextCompositeCommand{\textmathsbit}{L8U}{\Sigma}{𝞢}
+\DeclareTextCompositeCommand{\textmathsbit}{L8U}{\Tau}{𝞣}
+\DeclareTextCompositeCommand{\textmathsbit}{L8U}{\Upsilon}{𝞤}
+\DeclareTextCompositeCommand{\textmathsbit}{L8U}{\Phi}{𝞥}
+\DeclareTextCompositeCommand{\textmathsbit}{L8U}{\Chi}{𝞦}
+\DeclareTextCompositeCommand{\textmathsbit}{L8U}{\Psi}{𝞧}
+\DeclareTextCompositeCommand{\textmathsbit}{L8U}{\Omega}{𝞨}
+\DeclareTextCompositeCommand{\textmathsbit}{L8U}{\nabla}{𝞩}
+
+\DeclareTextCompositeCommand{\textmathsbit}{L8U}{\alpha}{𝞪}
+\DeclareTextCompositeCommand{\textmathsbit}{L8U}{\beta}{𝞫}
+\DeclareTextCompositeCommand{\textmathsbit}{L8U}{\gamma}{𝞬}
+\DeclareTextCompositeCommand{\textmathsbit}{L8U}{\delta}{𝞭}
+\DeclareTextCompositeCommand{\textmathsbit}{L8U}{\varepsilon}{𝞮}
+\DeclareTextCompositeCommand{\textmathsbit}{L8U}{\zeta}{𝞯}
+\DeclareTextCompositeCommand{\textmathsbit}{L8U}{\eta}{𝞰}
+\DeclareTextCompositeCommand{\textmathsbit}{L8U}{\theta}{𝞱}
+\DeclareTextCompositeCommand{\textmathsbit}{L8U}{\iota}{𝞲}
+\DeclareTextCompositeCommand{\textmathsbit}{L8U}{\kappa}{𝞳}
+\DeclareTextCompositeCommand{\textmathsbit}{L8U}{\lambda}{𝞴}
+\DeclareTextCompositeCommand{\textmathsbit}{L8U}{\mu}{𝞵}
+\DeclareTextCompositeCommand{\textmathsbit}{L8U}{\nu}{𝞶}
+\DeclareTextCompositeCommand{\textmathsbit}{L8U}{\xi}{𝞷}
+\DeclareTextCompositeCommand{\textmathsbit}{L8U}{\omicron}{𝞸}
+\DeclareTextCompositeCommand{\textmathsbit}{L8U}{\pi}{𝞹}
+\DeclareTextCompositeCommand{\textmathsbit}{L8U}{\rho}{𝞺}
+\DeclareTextCompositeCommand{\textmathsbit}{L8U}{\varsigma}{𝞻}
+\DeclareTextCompositeCommand{\textmathsbit}{L8U}{\sigma}{𝞼}
+\DeclareTextCompositeCommand{\textmathsbit}{L8U}{\tau}{𝞽}
+\DeclareTextCompositeCommand{\textmathsbit}{L8U}{\upsilon}{𝞾}
+\DeclareTextCompositeCommand{\textmathsbit}{L8U}{\varphi}{𝞿}
+\DeclareTextCompositeCommand{\textmathsbit}{L8U}{\chi}{𝟀}
+\DeclareTextCompositeCommand{\textmathsbit}{L8U}{\psi}{𝟁}
+\DeclareTextCompositeCommand{\textmathsbit}{L8U}{\omega}{𝟂}
+\DeclareTextCompositeCommand{\textmathsbit}{L8U}{\partial}{𝟃}
+\DeclareTextCompositeCommand{\textmathsbit}{L8U}{\epsilon}{𝟄}
+\DeclareTextCompositeCommand{\textmathsbit}{L8U}{\vartheta}{𝟅}
+\DeclareTextCompositeCommand{\textmathsbit}{L8U}{\varkappa}{𝟆}
+\DeclareTextCompositeCommand{\textmathsbit}{L8U}{\phi}{𝟇}
+\DeclareTextCompositeCommand{\textmathsbit}{L8U}{\varrho}{𝟈}
+\DeclareTextCompositeCommand{\textmathsbit}{L8U}{\varpi}{𝟉}
+
+\DeclareTextCompositeCommand{\textmathbf}{L8U}{\Digamma}{𝟊}
+\DeclareTextCompositeCommand{\textmathbf}{L8U}{\digamma}{𝟋}
+
+\DeclareTextCompositeCommand{\textmathbf}{L8U}{0}{𝟎}
+\DeclareTextCompositeCommand{\textmathbf}{L8U}{1}{𝟏}
+\DeclareTextCompositeCommand{\textmathbf}{L8U}{2}{𝟐}
+\DeclareTextCompositeCommand{\textmathbf}{L8U}{3}{𝟑}
+\DeclareTextCompositeCommand{\textmathbf}{L8U}{4}{𝟒}
+\DeclareTextCompositeCommand{\textmathbf}{L8U}{5}{𝟓}
+\DeclareTextCompositeCommand{\textmathbf}{L8U}{6}{𝟔}
+\DeclareTextCompositeCommand{\textmathbf}{L8U}{7}{𝟕}
+\DeclareTextCompositeCommand{\textmathbf}{L8U}{8}{𝟖}
+\DeclareTextCompositeCommand{\textmathbf}{L8U}{9}{𝟗}
+
+\DeclareTextCompositeCommand{\textmathbb}{L8U}{0}{𝟘}
+\DeclareTextCompositeCommand{\textmathbb}{L8U}{1}{𝟙}
+\DeclareTextCompositeCommand{\textmathbb}{L8U}{2}{𝟚}
+\DeclareTextCompositeCommand{\textmathbb}{L8U}{3}{𝟛}
+\DeclareTextCompositeCommand{\textmathbb}{L8U}{4}{𝟜}
+\DeclareTextCompositeCommand{\textmathbb}{L8U}{5}{𝟝}
+\DeclareTextCompositeCommand{\textmathbb}{L8U}{6}{𝟞}
+\DeclareTextCompositeCommand{\textmathbb}{L8U}{7}{𝟟}
+\DeclareTextCompositeCommand{\textmathbb}{L8U}{8}{𝟠}
+\DeclareTextCompositeCommand{\textmathbb}{L8U}{9}{𝟡}
+
+\DeclareTextCompositeCommand{\textmathsf}{L8U}{0}{𝟢}
+\DeclareTextCompositeCommand{\textmathsf}{L8U}{1}{𝟣}
+\DeclareTextCompositeCommand{\textmathsf}{L8U}{2}{𝟤}
+\DeclareTextCompositeCommand{\textmathsf}{L8U}{3}{𝟥}
+\DeclareTextCompositeCommand{\textmathsf}{L8U}{4}{𝟦}
+\DeclareTextCompositeCommand{\textmathsf}{L8U}{5}{𝟧}
+\DeclareTextCompositeCommand{\textmathsf}{L8U}{6}{𝟨}
+\DeclareTextCompositeCommand{\textmathsf}{L8U}{7}{𝟩}
+\DeclareTextCompositeCommand{\textmathsf}{L8U}{8}{𝟪}
+\DeclareTextCompositeCommand{\textmathsf}{L8U}{9}{𝟫}
+
+\DeclareTextCompositeCommand{\textmathsfb}{L8U}{0}{𝟬}
+\DeclareTextCompositeCommand{\textmathsfb}{L8U}{1}{𝟭}
+\DeclareTextCompositeCommand{\textmathsfb}{L8U}{2}{𝟮}
+\DeclareTextCompositeCommand{\textmathsfb}{L8U}{3}{𝟯}
+\DeclareTextCompositeCommand{\textmathsfb}{L8U}{4}{𝟰}
+\DeclareTextCompositeCommand{\textmathsfb}{L8U}{5}{𝟱}
+\DeclareTextCompositeCommand{\textmathsfb}{L8U}{6}{𝟲}
+\DeclareTextCompositeCommand{\textmathsfb}{L8U}{7}{𝟳}
+\DeclareTextCompositeCommand{\textmathsfb}{L8U}{8}{𝟴}
+\DeclareTextCompositeCommand{\textmathsfb}{L8U}{9}{𝟵}
+
+\DeclareTextCompositeCommand{\textmathtt}{L8U}{0}{𝟶}
+\DeclareTextCompositeCommand{\textmathtt}{L8U}{1}{𝟷}
+\DeclareTextCompositeCommand{\textmathtt}{L8U}{2}{𝟸}
+\DeclareTextCompositeCommand{\textmathtt}{L8U}{3}{𝟹}
+\DeclareTextCompositeCommand{\textmathtt}{L8U}{4}{𝟺}
+\DeclareTextCompositeCommand{\textmathtt}{L8U}{5}{𝟻}
+\DeclareTextCompositeCommand{\textmathtt}{L8U}{6}{𝟼}
+\DeclareTextCompositeCommand{\textmathtt}{L8U}{7}{𝟽}
+\DeclareTextCompositeCommand{\textmathtt}{L8U}{8}{𝟾}
+\DeclareTextCompositeCommand{\textmathtt}{L8U}{9}{𝟿}
+
+
+\def\LIIXUmapunimathgreek{%
+ \let\alpha\textmathalpha
+ \let\beta\textmathbeta
+ \let\gamma\textmathgamma
+ \let\delta\textmathdelta
+ \let\epsilon\textmathepsilon
+ \let\zeta\textmathzeta
+ \let\eta\textmatheta
+ \let\theta\textmaththeta
+ \let\iota\textmathiota
+ \let\kappa\textmathkappa
+ \let\lambda\textmathlambda
+ \let\mu\textmathmu
+ \let\nu\textmathnu
+ \let\xi\textmathxi
+ \let\omicron\textmathomicron
+ \let\pi\textmathpi
+ \let\rho\textmathrho
+ \let\varsigma\textmathvarsigma
+ \let\sigma\textmathsigma
+ \let\tau\textmathtau
+ \let\upsilon\mathupsilon
+ \let\phi\textmathphi
+ \let\chi\textmathchi
+ \let\psi\textmathpsi
+ \let\omega\textmathomega
+ \let\varepsilon\textmathvarepsilon
+ \let\vartheta\textmathvartheta
+ \let\varupsilon\textmathvarupsilon
+ \let\varkappa\textmathvarkappa
+ \let\varphi\textmathvarphi
+ \let\varpi\textmathvarpi
+ \let\partial\textmathpartial
+ \let\nabla\textmathnabla
+ \let\Alpha\textAlpha
+ \let\Beta\textBeta
+ \let\Gamma\textGamma
+ \let\Delta\textDelta
+ \let\Epsilon\textEpsilon
+ \let\Zeta\textZeta
+ \let\Eta\textEta
+ \let\Theta\textTheta
+ \let\Iota\textIota
+ \let\Kappa\textKappa
+ \let\Lambda\textLambda
+ \let\Mu\textMu
+ \let\Nu\textNu
+ \let\Xi\textXi
+ \let\Omicron\textOmicron
+ \let\Pi\textPi
+ \let\Rho\textRho
+ \let\Sigma\textSigma
+ \let\Tau\textTau
+ \let\Upsilon\textUpsilon
+ \let\Phi\textPhi
+ \let\Chi\textChi
+ \let\Psi\textPsi
+ \let\Omega\textOmega
+ \let\varTheta\textvarTheta
+ \let\partial\textmathpartial
+ \let\imath\mathimath
+ \let\jmath\mathjmath
+}
+
+\endinput
+%%
+%% End of file `l8umath.def'.
diff --git a/macros/latex/contrib/pdfx/manifest.txt b/macros/latex/contrib/pdfx/manifest.txt
new file mode 100644
index 0000000000..3194ea495d
--- /dev/null
+++ b/macros/latex/contrib/pdfx/manifest.txt
@@ -0,0 +1,158 @@
+% \iffalse meta-comment
+%
+% Copyright 2008-2016 CV Radhakrishnan and Han The Thanh
+% Copyright 2015-2018 Ross Moore and Peter Selinger
+%
+% This file is part of the 'pdfx' package.
+% ----------------------------------------
+%
+% It may be distributed and/or modified under the conditions of the
+% LaTeX Project Public License, either version 1.2 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.2
+% or later is part of all distributions of LaTeX version 1999/12/01 or
+% later.
+%
+% The list of all files belonging to the LaTeX package, 'pdfx.sty' is
+% given in the file `manifest.txt'.
+%
+% \fi
+%
+% CONTENTS
+
+README
+ Readme file
+
+pdfx.sty
+ the main package
+
+pdfx.pdf
+ package documentation
+
+glyphtounicode-cmr.tex
+ maps glyphnames in cmr font to Unicode
+
+glyphtounicode-ntx.tex
+ maps glyphnames in ntx text and math fonts to Unicode
+
+pdfa.xmp
+ XMP template for PDF/A documents
+
+pdfe.xmp
+ XMP template for PDF/E documents
+
+pdfvt.xmp
+ XMP template for PDF/VT documents
+
+pdfx.xmp
+ XMP template for PDF/X documents
+
+8bit.def
+ custom input encoding
+
+l8u-penc.def
+ custom output into UTF-8 format text metadata
+
+l8uarb-penc.def
+ supports arabic output into UTF-8 format metadata
+
+l8uarm-penc.def
+ supports armenian output into UTF-8 format metadata
+
+armglyphs.dfu
+ provides \pdfglyphname map to Unicode, for armenian characters
+
+l8ucyr-penc.def
+ supports cyrillic output into UTF-8 format metadata
+
+l8udev-penc.def
+ supports devanagari output into UTF-8 format metadata
+
+l8ugrk-penc.def
+ supports greek output into UTF-8 format metadata
+
+l8uheb-penc.def
+ supports hebrew output into UTF-8 format metadata
+
+l8ulat-penc.def
+ supports input from Latin-1 to Latin-9 encodings for UTF-8 format metadata
+
+l8umath-penc.def
+ supports mathematical symbols in UTF-8 format metadata
+
+AdobeColorProfiles.tex
+ defines commands for including Adobe profiles
+
+AdobeExternalProfiles.tex
+ defines commands for external Adobe profiles; PDF/X-4p, PDF/X-5pg
+
+CallasColorProfiles.tex
+ defines commands for profiles included with Callas pdfaPilot software
+
+sample.tex
+ example TeX document, no metadata included
+
+sample.xmpdata
+ example metadata file, for sample.tex
+
+small2e-pdfx.tex
+ example TeX document, with included metadata
+
+manifest.txt
+ file list, with descriptions
+
+Directory: src
+
+Makefile
+ make file for compiling documentation
+
+pdfx.dtx
+ main package with driver, including documentation
+
+pdfx.xmpdata
+ metadata for documentation as PDF/A-u2
+
+pdfx.ins
+ main installer batch file
+
+rvdtx.sty
+ extra package needed to compile documentation
+
+Armenian-example-UTF.png
+ shows how coding creates a UTF-8 sequence
+
+arm-start.tex
+ used to show example coding in a Figure
+
+koi8-example.tex
+ used to show example coding in a Figure
+
+koi8-example2.tex
+ used to show example coding in a Figure
+
+latin2-example.tex
+ used to show example coding in a Figure
+
+TL-POL-meta.png
+ screen-shot image used in a Figure
+
+TL-RU-LICRs.png
+ screen-shot image used in a Figure
+
+TL-RU-metadata.png
+ screen-shot image used in a Figure
+
+TL-RU-toc.png
+ screen-shot image used in a Figure
+
+armtex-meta.png
+ screen-shot image used in a Figure
+
+math-assign5.png
+ screen-shot image used in a Figure
+
+text89.def
+ maps bytes "80 to "9F to the '?' character, for visibility in a code listing
+
+usage-meta.png
+ screen-shot image used in a Figure
diff --git a/macros/latex/contrib/pdfx/pdfa.xmp b/macros/latex/contrib/pdfx/pdfa.xmp
new file mode 100644
index 0000000000..271cc62d92
--- /dev/null
+++ b/macros/latex/contrib/pdfx/pdfa.xmp
@@ -0,0 +1,203 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%
+%% File: pdfa.xmp (for pdfx.sty v1.6)
+%%
+%% Copyright (c) 2018, CV Radhakrishnan <cvr@river-valley.org>,
+%% Han The Thanh <thanh@river-valley.org>,
+%% Ross Moore <ross.moore@mq.edu.au>,
+%% Peter Selinger <selinger@mathstat.dal.ca>
+%%
+%% This file may be distributed and/or modified under the conditions
+%% of the LaTeX Project Public License, either version 1.2 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.2 or later is part of all distributions of LaTeX
+%% version 1999/12/01 or later.
+%%
+<x:xmpmeta xmlns:x="adobe:ns:meta/" x:xmptk="Adobe XMP Core 4.0-c316 44.253921, Sun Oct 01 2006 17:14:39">
+ <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
+% xmlns:pdf = "http://ns.adobe.com/pdf/1.3/"
+% xmlns:pdfx = "http://ns.adobe.com/pdfx/1.3/"
+% xmlns:pdfxid="http://www.npes.org/pdfx/ns/id/">
+% xmlns:pdfaid = "http://www.aiim.org/pdfa/ns/id/"
+% xmlns:xmp = "http://ns.adobe.com/xap/1.0/"
+% xmlns:xmpRights = "http://ns.adobe.com/xap/1.0/rights/"
+% xmlns:dc = "http://purl.org/dc/elements/1.1/"
+% xmlns:dcterms = "http://purl.org/dc/terms/"
+% xmlns:pdfaExtension = "http://www.aiim.org/pdfa/ns/extension/"
+% xmlns:pdfaField = "http://www.aiim.org/pdfa/ns/field#"
+% xmlns:pdfaProperty = "http://www.aiim.org/pdfa/ns/property#"
+% xmlns:pdfaSchema = "http://www.aiim.org/pdfa/ns/schema#"
+% xmlns:pdfaType = "http://www.aiim.org/pdfa/ns/type#"
+% xmlns:prism = "http://prismstandard.org/namespaces/basic/2.2/"
+%% RRM: Other possible namespaces.
+%% If these are used, then appropriate tags need to be declared, using
+%% pdfaExtension:schemas similarly to below for prism:
+% xmlns:pim = "http://prismstandard.org/namespaces/pim/2.2/"
+% xmlns:prl = "http://prismstandard.org/namespaces/prl/2.1/"
+% xmlns:pur = "http://prismstandard.org/namespaces/primusagerights/2.1/"
+% >
+ <rdf:Description rdf:about=""
+ xmlns:pdfaExtension="http://www.aiim.org/pdfa/ns/extension/"
+ xmlns:pdfaSchema="http://www.aiim.org/pdfa/ns/schema#"
+ xmlns:pdfaProperty="http://www.aiim.org/pdfa/ns/property#"
+%% RRM: do we really need the following two declarations ?
+% xmlns:pdfaType="http://www.aiim.org/pdfa/ns/type#"
+% xmlns:pdfaField="http://www.aiim.org/pdfa/ns/field#"
+ >
+ <pdfaExtension:schemas>
+ <rdf:Bag>
+ <rdf:li rdf:parseType="Resource">
+ <pdfaSchema:namespaceURI>http://ns.adobe.com/pdfx/1.3/</pdfaSchema:namespaceURI>
+ <pdfaSchema:prefix>pdfx</pdfaSchema:prefix>
+ <pdfaSchema:schema>PDF/X Schema</pdfaSchema:schema>
+ <pdfaSchema:property><rdf:Seq>
+ <rdf:li rdf:parseType="Resource">
+ <pdfaProperty:category>external</pdfaProperty:category>
+ <pdfaProperty:description>URL to an online version or preprint</pdfaProperty:description>
+ <pdfaProperty:name>AuthoritativeDomain</pdfaProperty:name>
+ <pdfaProperty:valueType>Text</pdfaProperty:valueType>
+ </rdf:li></rdf:Seq>
+ </pdfaSchema:property>
+ </rdf:li>
+%% RRM: this declares the namespace resource for PDF/UA metadata
+ <rdf:li rdf:parseType="Resource">
+ <pdfaSchema:namespaceURI>http://www.aiim.org/pdfua/ns/id/</pdfaSchema:namespaceURI>
+ <pdfaSchema:prefix>pdfuaid</pdfaSchema:prefix>
+ <pdfaSchema:schema>PDF/UA ID Schema</pdfaSchema:schema>
+ <pdfaSchema:property><rdf:Seq>
+ <rdf:li rdf:parseType="Resource">
+ <pdfaProperty:category>internal</pdfaProperty:category>
+ <pdfaProperty:description>Part of PDF/UA standard</pdfaProperty:description>
+ <pdfaProperty:name>part</pdfaProperty:name>
+ <pdfaProperty:valueType>Integer</pdfaProperty:valueType>
+ </rdf:li></rdf:Seq>
+ </pdfaSchema:property>
+ </rdf:li>
+%% RRM: this declares the namespace resource for PRISM metadata
+ <rdf:li rdf:parseType="Resource">
+ <pdfaSchema:schema>PRISM metadata</pdfaSchema:schema>
+ <pdfaSchema:namespaceURI>http://prismstandard.org/namespaces/basic/2.2/</pdfaSchema:namespaceURI>
+ <pdfaSchema:prefix>prism</pdfaSchema:prefix>
+ <pdfaSchema:property><rdf:Seq>
+%% RRM: Only need to define the tags that are actually used below. But \ifx ... \fi must be all on one line.
+%% declare prism:aggregationType
+%\ifx\xmp@PublicationType\@empty\else % need at least one field, for validation
+ <rdf:li rdf:parseType="Resource">^^J <pdfaProperty:name>aggregationType</pdfaProperty:name>^^J <pdfaProperty:valueType>Text</pdfaProperty:valueType>^^J <pdfaProperty:category>external</pdfaProperty:category>^^J <pdfaProperty:description>The type of publication. If defined, must be one of book, catalog, feed, journal, magazine, manual, newsletter, pamphlet.</pdfaProperty:description>^^J </rdf:li> %\fi
+%% declare prism:issn
+\ifx\xmp@Journalnumber\@empty\else <rdf:li rdf:parseType="Resource">^^J <pdfaProperty:name>issn</pdfaProperty:name>^^J <pdfaProperty:valueType>Text</pdfaProperty:valueType>^^J <pdfaProperty:category>external</pdfaProperty:category>^^J <pdfaProperty:description>The ISSN for the publication in which the resource was published</pdfaProperty:description>^^J </rdf:li>\fi
+%% declare prism:volume
+\ifx\xmp@Volume\@empty\else <rdf:li rdf:parseType="Resource">^^J <pdfaProperty:name>volume</pdfaProperty:name>^^J <pdfaProperty:valueType>Text</pdfaProperty:valueType>^^J <pdfaProperty:category>external</pdfaProperty:category>^^J <pdfaProperty:description>Additional identifier for the publication where the resource appeared, providing the Volume portion of the common Volume, Number scheme</pdfaProperty:description>^^J </rdf:li>\fi
+%% declare prism:number
+\ifx\xmp@Issue\@empty\else <rdf:li rdf:parseType="Resource">^^J <pdfaProperty:name>number</pdfaProperty:name>^^J <pdfaProperty:valueType>Text</pdfaProperty:valueType>^^J <pdfaProperty:category>external</pdfaProperty:category>^^J <pdfaProperty:description>Number of the Issue within the Volume</pdfaProperty:description>^^J </rdf:li>\fi
+%% declare prism:coverDisplayDate
+\ifx\xmp@CoverDisplayDate\@empty\else <rdf:li rdf:parseType="Resource">^^J <pdfaProperty:name>coverDisplayDate</pdfaProperty:name>^^J <pdfaProperty:valueType>Text</pdfaProperty:valueType>^^J <pdfaProperty:category>external</pdfaProperty:category>^^J <pdfaProperty:description>Date on the cover of a magazine issue, as a human-readable text string</pdfaProperty:description>^^J </rdf:li>\fi
+%% declare prism:coverDate
+\ifx\xmp@CoverDate\@empty\else <rdf:li rdf:parseType="Resource">^^J <pdfaProperty:name>coverDate</pdfaProperty:name>^^J <pdfaProperty:valueType>Date</pdfaProperty:valueType>^^J <pdfaProperty:category>external</pdfaProperty:category>^^J <pdfaProperty:description>Date on the cover of a magazine issue, suitable for storing in a database field with a 'date' data type</pdfaProperty:description>^^J </rdf:li>\fi
+%% declare prism:issueName
+\ifx\xmp@Journaltitle\@empty\else <rdf:li rdf:parseType="Resource">^^J <pdfaProperty:name>issueName</pdfaProperty:name>^^J <pdfaProperty:valueType>Text</pdfaProperty:valueType>^^J <pdfaProperty:category>external</pdfaProperty:category>^^J <pdfaProperty:description>Additional identifier, typically used for major issues of a magazine or other resource</pdfaProperty:description>^^J </rdf:li>\fi
+%% declare prism:pageRange
+\ifx\xmp@Firstpage\@empty\else <rdf:li rdf:parseType="Resource">^^J <pdfaProperty:name>pageRange</pdfaProperty:name>^^J <pdfaProperty:valueType>Text</pdfaProperty:valueType>^^J <pdfaProperty:category>external</pdfaProperty:category>^^J <pdfaProperty:description>Page range for the published print version of the resource</pdfaProperty:description>^^J </rdf:li>\fi
+%% declare prism:startingPage
+\ifx\xmp@Firstpage\@empty\else <rdf:li rdf:parseType="Resource">^^J <pdfaProperty:name>startingPage</pdfaProperty:name>^^J <pdfaProperty:valueType>Integer</pdfaProperty:valueType>^^J <pdfaProperty:category>external</pdfaProperty:category>^^J <pdfaProperty:description>First page number for the published version of the resource</pdfaProperty:description>^^J </rdf:li>\fi
+%% declare prism:endingPage
+\ifx\xmp@Lastpage\@empty\else <rdf:li rdf:parseType="Resource">^^J <pdfaProperty:name>endingPage</pdfaProperty:name>^^J <pdfaProperty:valueType>Integer</pdfaProperty:valueType>^^J <pdfaProperty:category>external</pdfaProperty:category>^^J <pdfaProperty:description>The last page number for the printed resource</pdfaProperty:description>^^J </rdf:li>\fi
+%% declare prism:doi
+\ifx\xmp@Doi\@empty\else <rdf:li rdf:parseType="Resource">^^J <pdfaProperty:name>doi</pdfaProperty:name>^^J <pdfaProperty:valueType>Text</pdfaProperty:valueType>^^J <pdfaProperty:category>external</pdfaProperty:category>^^J <pdfaProperty:description>Digital Object Identifier, DOI, for the article</pdfaProperty:description>^^J </rdf:li>\fi
+%% declare prism:url
+ <rdf:li rdf:parseType="Resource">^^J <pdfaProperty:name>url</pdfaProperty:name>^^J <pdfaProperty:valueType>URL</pdfaProperty:valueType>^^J <pdfaProperty:category>external</pdfaProperty:category>^^J <pdfaProperty:description>URL for the article or unit of content</pdfaProperty:description>^^J </rdf:li>
+%% RRM: more tags can be declared
+% <rdf:li rdf:parseType="Resource">
+% <pdfaProperty:name></pdfaProperty:name>
+% <pdfaProperty:valueType>Text</pdfaProperty:valueType>
+% <pdfaProperty:category>external</pdfaProperty:category>
+% <pdfaProperty:description></pdfaProperty:description>
+% </rdf:li>
+ </rdf:Seq></pdfaSchema:property>
+ </rdf:li>
+ </rdf:Bag>
+ </pdfaExtension:schemas>
+ </rdf:Description>
+ <rdf:Description rdf:about="" xmlns:pdf="http://ns.adobe.com/pdf/1.3/">
+ <pdf:Producer>\xmp@Producer</pdf:Producer>
+\ifx\xmp@@Keywords\@empty\else <pdf:Keywords>\xmp@@Keywords</pdf:Keywords>\fi
+ </rdf:Description>
+ <rdf:Description rdf:about="" xmlns:dc="http://purl.org/dc/elements/1.1/">
+ <dc:format>application/pdf</dc:format>
+\ifx\xmp@PublicationType\@empty\else <dc:type><rdf:Bag><rdf:li\xmp@checklang\xmp@lang@PublicationType>\xmp@PublicationType</rdf:li></rdf:Bag></dc:type>\fi
+\ifx\xmp@Title\@empty\else <dc:title><rdf:Alt><rdf:li\xmp@strictlang\xmp@lang@Title>\xmp@Title</rdf:li></rdf:Alt></dc:title>\fi
+\ifx\xmp@@Author\@empty\else <dc:creator><rdf:Seq><rdf:li\xmp@checklang\xmp@lang@Author>\xmp@@Author</rdf:li></rdf:Seq></dc:creator>\fi
+\ifx\xmp@Publisher\@empty\else <dc:publisher><rdf:Bag><rdf:li\xmp@checklang\xmp@lang@Publisher>\xmp@Publisher</rdf:li></rdf:Bag></dc:publisher>\fi
+\ifx\xmp@Language\@empty\else <dc:language><rdf:Bag><rdf:li>\xmp@Language</rdf:li></rdf:Bag></dc:language>\fi
+\ifx\xmp@Doi\@empty\else <dc:identifier>doi:\xmp@Doi</dc:identifier>\fi
+\ifx\xmp@ISBN\@empty\else <dc:identifier>ISBN:\xmp@ISBN</dc:identifier>\fi
+\ifx\xmp@URL\@empty\else <dc:identifier>URL:\xmp@URL</dc:identifier>\fi
+\ifx\xmp@Copyright\@empty\else <dc:rights><rdf:Alt><rdf:li\xmp@strictlang\xmp@lang@Copyright>\xmp@@Copyright</rdf:li></rdf:Alt></dc:rights>\fi
+\ifx\xmp@Subject\@empty\else <dc:description><rdf:Alt><rdf:li\xmp@strictlang\xmp@lang@Subject>\xmp@Subject</rdf:li></rdf:Alt></dc:description>\fi
+\ifx\xmp@Keywords\@empty\else <dc:subject><rdf:Bag><rdf:li\xmp@checklang\xmp@lang@Keywords>\xmp@Keywords</rdf:li></rdf:Bag></dc:subject>\fi
+\ifx\xmp@Source\@empty\else <dc:source>\xmp@Source</dc:source>\fi
+\ifx\xmp@Coverage\@empty\else <dc:coverage\xmp@checklang\xmp@lang@Coverage>\xmp@Coverage</dc:coverage>\fi
+\ifx\xmp@Date\@empty\else <dc:date><rdf:Seq><rdf:li>\xmp@Date</rdf:li></rdf:Seq></dc:date>\fi
+\ifx\xmp@Contributor\@empty\else <dc:contributor><rdf:Bag><rdf:li\xmp@checklang\xmp@lang@Contributor>\xmp@Contributor</rdf:li></rdf:Bag></dc:contributor>\fi
+\ifx\xmp@Relation\@empty\else <dc:relation><rdf:Bag><rdf:li\xmp@checklang\xmp@lang@Relation>\xmp@Relation</rdf:li></rdf:Bag></dc:relation>\fi
+ </rdf:Description>
+ <rdf:Description rdf:about="" xmlns:prism="http://prismstandard.org/namespaces/basic/2.2/">
+\ifx\xmp@PublicationType\@empty\else <prism:aggregationType\xmp@checklang\xmp@lang@PublicationType>\xmp@PublicationType</prism:aggregationType>\fi
+\ifx\xmp@Journalnumber\@empty\else <prism:issn>\xmp@Journalnumber</prism:issn>\fi
+\ifx\xmp@Volume\@empty\else <prism:volume>\xmp@Volume</prism:volume>\fi
+\ifx\xmp@Issue\@empty\else <prism:number>\xmp@Issue</prism:number>\fi
+\ifx\xmp@CoverDisplayDate\@empty\else <prism:coverDisplayDate\xmp@checklang\xmp@lang@CoverDisplayDate>\xmp@CoverDisplayDate</prism:coverDisplayDate>\fi
+\ifx\xmp@CoverDate\@empty\else <prism:coverDate>\xmp@CoverDate</prism:coverDate>\fi
+\ifx\xmp@Journaltitle\@empty\else <prism:issueName\xmp@checklang\xmp@lang@JournalTitle>\xmp@Journaltitle</prism:issueName>\fi
+\ifx\xmp@Firstpage\@empty\else <prism:pageRange>\xmp@Firstpage-\xmp@Lastpage</prism:pageRange>\fi
+\ifx\xmp@Firstpage\@empty\else <prism:startingPage>\xmp@Firstpage</prism:startingPage>\fi
+\ifx\xmp@Lastpage\@empty\else <prism:endingPage>\xmp@Lastpage</prism:endingPage>\fi
+\ifx\xmp@Doi\@empty\else <prism:doi>\xmp@Doi</prism:doi>\fi
+\ifx\xmp@Doi\@empty\else <prism:url>http://dx.doi.org/\xmp@Doi</prism:url>\fi
+\ifx\xmp@URL\@empty\else <prism:url>\xmp@URL</prism:url>\fi
+ </rdf:Description>
+%% RRM: Is this needed with PDF/A or only with PDF/X ???
+ <rdf:Description rdf:about="" xmlns:pdfx="http://ns.adobe.com/pdfx/1.3/">
+\ifx\xmp@AuthoritativeDomain\@empty\else<pdfx:AuthoritativeDomain><rdf:Bag><rdf:li>\xmp@AuthoritativeDomain</rdf:li></rdf:Bag></pdfx:AuthoritativeDomain>\fi
+ </rdf:Description>
+ <rdf:Description rdf:about="" xmlns:pdfaid="http://www.aiim.org/pdfa/ns/id/">
+ <pdfaid:part>\xmp@Part</pdfaid:part>
+ <pdfaid:conformance>\xmp@Conformance</pdfaid:conformance>
+ </rdf:Description>
+\ifx\xmp@PDFUA\@empty\else <rdf:Description rdf:about="" xmlns:pdfuaid="http://www.aiim.org/pdfua/ns/id/">^^J <pdfuaid:part>\xmp@UAlevel</pdfuaid:part>^^J </rdf:Description>\fi
+ <rdf:Description rdf:about="" xmlns:xmp="http://ns.adobe.com/xap/1.0/">
+ <xmp:CreatorTool>\xmp@CreatorTool</xmp:CreatorTool>
+ <xmp:ModifyDate>\xmp@convDate</xmp:ModifyDate>
+ <xmp:CreateDate>\xmp@convDate</xmp:CreateDate>
+ <xmp:MetadataDate>\xmp@convDate</xmp:MetadataDate>
+\ifx\xmp@Advisory\@empty\else <xmp:Advisory><rdf:Bag><rdf:li\xmp@checklang\xmp@lang@Advisory>\xmp@Advisory</rdf:li></rdf:Bag></xmp:Advisory>\fi
+\ifx\xmp@BaseURL\@empty\else <xmp:BaseURL>\xmp@BaseURL</xmp:BaseURL>\fi
+\ifx\xmp@Identifier\@empty\else <xmp:Identifier><rdf:Bag><rdf:li\xmp@checklang\xmp@lang@Identifier>\xmp@Identifier</rdf:li></rdf:Bag></xmp:Identifier>\fi
+\ifx\xmp@Nickname\@empty\else <xmp:Nickname\xmp@checklang\xmp@lang@Nickname>\xmp@Nickname</xmp:Nickname>\fi
+\ifx\xmp@Thumbnails\@empty\else <xmp:Thumbnails><rdf:Alt><rdf:li>\xmp@Thumbnails</rdf:li></rdf:Alt></xmp:Thumbnails>\fi
+ </rdf:Description>
+ <rdf:Description rdf:about="" xmlns:xmpRights = "http://ns.adobe.com/xap/1.0/rights/">
+\ifx\xmp@Copyright\@empty\else <xmpRights:Marked>\ifx\xmp@Copyrighted\@empty True\else\xmp@Copyrighted\fi</xmpRights:Marked>^^J <xmpRights:UsageTerms><rdf:Alt><rdf:li\xmp@strictlang\xmp@lang@Copyright>\xmp@@Copyright</rdf:li></rdf:Alt></xmpRights:UsageTerms>\fi
+\ifx\xmp@CopyrightURL\@empty\else <xmpRights:WebStatement>\xmp@CopyrightURL</xmpRights:WebStatement>\fi
+\ifx\xmp@Owner\@empty\else <xmpRights:Owner><rdf:Bag><rdf:li\xmp@checklang\xmp@lang@Owner>\xmp@Owner</rdf:li></rdf:Bag></xmpRights:Owner>\fi
+\ifx\xmp@CertificateURL\@empty\else <xmpRights:Certificate>\xmp@CertificateURL</xmpRights:Certificate>\fi
+ </rdf:Description>
+ <rdf:Description rdf:about="" xmlns:xmpMM="http://ns.adobe.com/xap/1.0/mm/">
+ <xmpMM:DocumentID>uuid:\xmp@docid</xmpMM:DocumentID>
+ <xmpMM:InstanceID>uuid:\xmp@instid</xmpMM:InstanceID>
+ </rdf:Description>
+ </rdf:RDF>
+</x:xmpmeta>
+% padding with 512 space characters to allow easier editing within a PDF
+\paddingline
+\paddingline
+\paddingline
+\paddingline
+%%
+%% End of pdfa.xmp
+%%
+%%
+
diff --git a/macros/latex/contrib/pdfx/pdfe.xmp b/macros/latex/contrib/pdfx/pdfe.xmp
new file mode 100644
index 0000000000..68c50c6d03
--- /dev/null
+++ b/macros/latex/contrib/pdfx/pdfe.xmp
@@ -0,0 +1,270 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%
+%% File: pdfe.xmp (for pdfx.sty v1.6)
+%%
+%% Copyright (c) 2018, CV Radhakrishnan <cvr@river-valley.org>,
+%% Han The Thanh <thanh@river-valley.org>,
+%% Ross Moore <ross.moore@mq.edu.au>,
+%% Peter Selinger <selinger@mathstat.dal.ca>
+%%
+%% This file may be distributed and/or modified under the conditions
+%% of the LaTeX Project Public License, either version 1.2 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.2 or later is part of all distributions of LaTeX
+%% version 1999/12/01 or later.
+%%
+<x:xmpmeta xmlns:x="adobe:ns:meta/" x:xmptk="Adobe XMP Core 4.0-c316 44.253921, Sun Oct 01 2006 17:14:39">
+ <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
+% xmlns:pdf = "http://ns.adobe.com/pdf/1.3/"
+% xmlns:pdfe = "http://www.aiim.org/pdfe/ns/id/"
+% xmlns:pdfx = "http://ns.adobe.com/pdfx/1.3/"
+% xmlns:pdfxid = "http://www.npes.org/pdfx/ns/id/">
+% xmlns:pdfaid = "http://www.aiim.org/pdfa/ns/id/"
+% xmlns:xmp = "http://ns.adobe.com/xap/1.0/"
+% xmlns:xmpRights = "http://ns.adobe.com/xap/1.0/rights/"
+% xmlns:dc = "http://purl.org/dc/elements/1.1/"
+% xmlns:dcterms = "http://purl.org/dc/terms/"
+% xmlns:pdfaExtension = "http://www.aiim.org/pdfa/ns/extension/"
+% xmlns:pdfaField = "http://www.aiim.org/pdfa/ns/field#"
+% xmlns:pdfaProperty = "http://www.aiim.org/pdfa/ns/property#"
+% xmlns:pdfaSchema = "http://www.aiim.org/pdfa/ns/schema#"
+% xmlns:pdfaType = "http://www.aiim.org/pdfa/ns/type#"
+% xmlns:prism = "http://prismstandard.org/namespaces/basic/2.2/"
+%% RRM: Other possible namespaces.
+%% If these are used, then appropriate tags need to be declared, using
+%% pdfaExtension:schemas similarly to below for prism:
+% xmlns:pim = "http://prismstandard.org/namespaces/pim/2.2/"
+% xmlns:prl = "http://prismstandard.org/namespaces/prl/2.1/"
+% xmlns:pur = "http://prismstandard.org/namespaces/primusagerights/2.1/"
+% >
+ <rdf:Description rdf:about=""
+ xmlns:pdfaExtension="http://www.aiim.org/pdfa/ns/extension/"
+ xmlns:pdfaSchema="http://www.aiim.org/pdfa/ns/schema#"
+ xmlns:pdfaProperty="http://www.aiim.org/pdfa/ns/property#"
+%% RRM: do we really need the following two declarations ?
+% xmlns:pdfaType="http://www.aiim.org/pdfa/ns/type#"
+% xmlns:pdfaField="http://www.aiim.org/pdfa/ns/field#"
+ >
+ <pdfaExtension:schemas>
+ <rdf:Bag>
+ <rdf:li rdf:parseType="Resource">
+ <pdfaSchema:namespaceURI>http://ns.adobe.com/pdf/1.3/</pdfaSchema:namespaceURI>
+ <pdfaSchema:prefix>pdf</pdfaSchema:prefix>
+ <pdfaSchema:schema>Adobe PDF Schema</pdfaSchema:schema>
+ <pdfaSchema:property><rdf:Seq>
+ <rdf:li rdf:parseType="Resource">
+ <pdfaProperty:category>internal</pdfaProperty:category>
+ <pdfaProperty:description>A name object indicating whether the document has been modified to include trapping information</pdfaProperty:description>
+ <pdfaProperty:name>Trapped</pdfaProperty:name>
+ <pdfaProperty:valueType>Text</pdfaProperty:valueType>
+ </rdf:li>
+ <rdf:li rdf:parseType="Resource">
+ <pdfaProperty:category>internal</pdfaProperty:category>
+ <pdfaProperty:description>PDF/X Part Version</pdfaProperty:description>
+ <pdfaProperty:name>Version</pdfaProperty:name>
+ <pdfaProperty:valueType>Text</pdfaProperty:valueType>
+ </rdf:li></rdf:Seq>
+ </pdfaSchema:property>
+ </rdf:li>
+ <rdf:li rdf:parseType="Resource">
+ <pdfaSchema:namespaceURI>http://ns.adobe.com/pdfx/1.3/</pdfaSchema:namespaceURI>
+ <pdfaSchema:prefix>pdfx</pdfaSchema:prefix>
+ <pdfaSchema:schema>PDF/X Schema</pdfaSchema:schema>
+ <pdfaSchema:property><rdf:Seq>
+ <rdf:li rdf:parseType="Resource">
+ <pdfaProperty:category>internal</pdfaProperty:category>
+ <pdfaProperty:description>ID of PDF/X standard</pdfaProperty:description>
+ <pdfaProperty:name>GTS_PDFXVersion</pdfaProperty:name>
+ <pdfaProperty:valueType>Text</pdfaProperty:valueType>
+ </rdf:li>
+ <rdf:li rdf:parseType="Resource">
+ <pdfaProperty:category>internal</pdfaProperty:category>
+ <pdfaProperty:description>Conformance level of PDF/X standard</pdfaProperty:description>
+ <pdfaProperty:name>GTS_PDFXConformance</pdfaProperty:name>
+ <pdfaProperty:valueType>Text</pdfaProperty:valueType>
+ </rdf:li>
+ <rdf:li rdf:parseType="Resource">
+ <pdfaProperty:category>internal</pdfaProperty:category>
+ <pdfaProperty:description>URL to an online version or preprint</pdfaProperty:description>
+ <pdfaProperty:name>AuthoritativeDomain</pdfaProperty:name>
+ <pdfaProperty:valueType>Text</pdfaProperty:valueType>
+ </rdf:li>
+ <rdf:li rdf:parseType="Resource">
+ <pdfaProperty:category>internal</pdfaProperty:category>
+ <pdfaProperty:description>Company creating the PDF</pdfaProperty:description>
+ <pdfaProperty:name>Company</pdfaProperty:name>
+ <pdfaProperty:valueType>Text</pdfaProperty:valueType>
+ </rdf:li>
+ <rdf:li rdf:parseType="Resource">
+ <pdfaProperty:category>internal</pdfaProperty:category>
+ <pdfaProperty:description>Date when document was last modified</pdfaProperty:description>
+ <pdfaProperty:name>SourceModified</pdfaProperty:name>
+ <pdfaProperty:valueType>Text</pdfaProperty:valueType>
+ </rdf:li></rdf:Seq>
+ </pdfaSchema:property>
+ </rdf:li>
+ <rdf:li rdf:parseType="Resource">
+ <pdfaSchema:namespaceURI>http://ns.adobe.com/xap/1.0/mm/</pdfaSchema:namespaceURI>
+ <pdfaSchema:prefix>xmpMM</pdfaSchema:prefix>
+ <pdfaSchema:schema>XMP Media Management Schema</pdfaSchema:schema>
+ <pdfaSchema:property><rdf:Seq>
+ <rdf:li rdf:parseType="Resource">
+ <pdfaProperty:category>internal</pdfaProperty:category>
+ <pdfaProperty:description>UUID based identifier for specific incarnation of a document</pdfaProperty:description>
+ <pdfaProperty:name>InstanceID</pdfaProperty:name>
+ <pdfaProperty:valueType>URI</pdfaProperty:valueType>
+ </rdf:li>
+ <rdf:li rdf:parseType="Resource">
+ <pdfaProperty:category>internal</pdfaProperty:category>
+ <pdfaProperty:description>The common identifier for all versions and renditions of a document.</pdfaProperty:description>
+ <pdfaProperty:name>OriginalDocumentID</pdfaProperty:name>
+ <pdfaProperty:valueType>URI</pdfaProperty:valueType>
+ </rdf:li></rdf:Seq>
+ </pdfaSchema:property>
+ </rdf:li>
+ <rdf:li rdf:parseType="Resource">
+ <pdfaSchema:namespaceURI>http://www.npes.org/pdfx/ns/id/</pdfaSchema:namespaceURI>
+ <pdfaSchema:prefix>pdfxid</pdfaSchema:prefix>
+ <pdfaSchema:schema>PDF/X ID Schema</pdfaSchema:schema>
+ <pdfaSchema:property><rdf:Seq>
+ <rdf:li rdf:parseType="Resource">
+ <pdfaProperty:category>internal</pdfaProperty:category>
+ <pdfaProperty:description>ID of PDF/X standard</pdfaProperty:description>
+ <pdfaProperty:name>GTS_PDFXVersion</pdfaProperty:name>
+ <pdfaProperty:valueType>Text</pdfaProperty:valueType>
+ </rdf:li></rdf:Seq>
+ </pdfaSchema:property>
+ </rdf:li>
+%% RRM: this declares the namespace resource for PRISM metadata
+ <rdf:li rdf:parseType="Resource">
+ <pdfaSchema:schema>PRISM metadata</pdfaSchema:schema>
+ <pdfaSchema:namespaceURI>http://prismstandard.org/namespaces/basic/2.2/</pdfaSchema:namespaceURI>
+ <pdfaSchema:prefix>prism</pdfaSchema:prefix>
+ <pdfaSchema:property><rdf:Seq>
+%% RRM: Only need to define the tags that are actually used below. But \ifx ... \fi must be all on one line.
+%% declare prism:aggregationType
+%\ifx\xmp@PublicationType\@empty\else % need at least one field, for validation
+ <rdf:li rdf:parseType="Resource">^^J <pdfaProperty:name>aggregationType</pdfaProperty:name>^^J <pdfaProperty:valueType>Text</pdfaProperty:valueType>^^J <pdfaProperty:category>external</pdfaProperty:category>^^J <pdfaProperty:description>The type of publication. If defined, must be one of book, catalog, feed, journal, magazine, manual, newsletter, pamphlet.</pdfaProperty:description>^^J </rdf:li> %\fi
+%% declare prism:issn
+\ifx\xmp@Journalnumber\@empty\else <rdf:li rdf:parseType="Resource">^^J <pdfaProperty:name>issn</pdfaProperty:name>^^J <pdfaProperty:valueType>Text</pdfaProperty:valueType>^^J <pdfaProperty:category>external</pdfaProperty:category>^^J <pdfaProperty:description>The ISSN for the publication in which the resource was published</pdfaProperty:description>^^J </rdf:li>\fi
+%% declare prism:volume
+\ifx\xmp@Volume\@empty\else <rdf:li rdf:parseType="Resource">^^J <pdfaProperty:name>volume</pdfaProperty:name>^^J <pdfaProperty:valueType>Text</pdfaProperty:valueType>^^J <pdfaProperty:category>external</pdfaProperty:category>^^J <pdfaProperty:description>Additional identifier for the publication where the resource appeared, providing the Volume portion of the common Volume, Number scheme</pdfaProperty:description>^^J </rdf:li>\fi
+%% declare prism:number
+\ifx\xmp@Issue\@empty\else <rdf:li rdf:parseType="Resource">^^J <pdfaProperty:name>number</pdfaProperty:name>^^J <pdfaProperty:valueType>Text</pdfaProperty:valueType>^^J <pdfaProperty:category>external</pdfaProperty:category>^^J <pdfaProperty:description>Number of the Issue within the Volume</pdfaProperty:description>^^J </rdf:li>\fi
+%% declare prism:coverDisplayDate
+\ifx\xmp@CoverDisplayDate\@empty\else <rdf:li rdf:parseType="Resource">^^J <pdfaProperty:name>coverDisplayDate</pdfaProperty:name>^^J <pdfaProperty:valueType>Text</pdfaProperty:valueType>^^J <pdfaProperty:category>external</pdfaProperty:category>^^J <pdfaProperty:description>Date on the cover of a magazine issue, as a human-readable text string</pdfaProperty:description>^^J </rdf:li>\fi
+%% declare prism:coverDate
+\ifx\xmp@CoverDate\@empty\else <rdf:li rdf:parseType="Resource">^^J <pdfaProperty:name>coverDate</pdfaProperty:name>^^J <pdfaProperty:valueType>Date</pdfaProperty:valueType>^^J <pdfaProperty:category>external</pdfaProperty:category>^^J <pdfaProperty:description>Date on the cover of a magazine issue, suitable for storing in a database field with a 'date' data type</pdfaProperty:description>^^J </rdf:li>\fi
+%% declare prism:issueName
+\ifx\xmp@Journaltitle\@empty\else <rdf:li rdf:parseType="Resource">^^J <pdfaProperty:name>issueName</pdfaProperty:name>^^J <pdfaProperty:valueType>Text</pdfaProperty:valueType>^^J <pdfaProperty:category>external</pdfaProperty:category>^^J <pdfaProperty:description>Additional identifier, typically used for major issues of a magazine or other resource</pdfaProperty:description>^^J </rdf:li>\fi
+%% declare prism:pageRange
+\ifx\xmp@Firstpage\@empty\else <rdf:li rdf:parseType="Resource">^^J <pdfaProperty:name>pageRange</pdfaProperty:name>^^J <pdfaProperty:valueType>Text</pdfaProperty:valueType>^^J <pdfaProperty:category>external</pdfaProperty:category>^^J <pdfaProperty:description>Page range for the published print version of the resource</pdfaProperty:description>^^J </rdf:li>\fi
+%% declare prism:startingPage
+\ifx\xmp@Firstpage\@empty\else <rdf:li rdf:parseType="Resource">^^J <pdfaProperty:name>startingPage</pdfaProperty:name>^^J <pdfaProperty:valueType>Integer</pdfaProperty:valueType>^^J <pdfaProperty:category>external</pdfaProperty:category>^^J <pdfaProperty:description>First page number for the published version of the resource</pdfaProperty:description>^^J </rdf:li>\fi
+%% declare prism:endingPage
+\ifx\xmp@Lastpage\@empty\else <rdf:li rdf:parseType="Resource">^^J <pdfaProperty:name>endingPage</pdfaProperty:name>^^J <pdfaProperty:valueType>Integer</pdfaProperty:valueType>^^J <pdfaProperty:category>external</pdfaProperty:category>^^J <pdfaProperty:description>The last page number for the printed resource</pdfaProperty:description>^^J </rdf:li>\fi
+%% declare prism:doi
+\ifx\xmp@Doi\@empty\else <rdf:li rdf:parseType="Resource">^^J <pdfaProperty:name>doi</pdfaProperty:name>^^J <pdfaProperty:valueType>Text</pdfaProperty:valueType>^^J <pdfaProperty:category>external</pdfaProperty:category>^^J <pdfaProperty:description>Digital Object Identifier, DOI, for the article</pdfaProperty:description>^^J </rdf:li>\fi
+%% declare prism:url
+ <rdf:li rdf:parseType="Resource">^^J <pdfaProperty:name>url</pdfaProperty:name>^^J <pdfaProperty:valueType>URL</pdfaProperty:valueType>^^J <pdfaProperty:category>external</pdfaProperty:category>^^J <pdfaProperty:description>URL for the article or unit of content</pdfaProperty:description>^^J </rdf:li>
+%% RRM: more tags can be declared
+% <rdf:li rdf:parseType="Resource">
+% <pdfaProperty:name></pdfaProperty:name>
+% <pdfaProperty:valueType>Text</pdfaProperty:valueType>
+% <pdfaProperty:category>external</pdfaProperty:category>
+% <pdfaProperty:description></pdfaProperty:description>
+% </rdf:li>
+ </rdf:Seq></pdfaSchema:property>
+ </rdf:li>
+ </rdf:Bag>
+ </pdfaExtension:schemas>
+ </rdf:Description>
+ <rdf:Description rdf:about="" xmlns:dc="http://purl.org/dc/elements/1.1/">
+ <dc:format>application/pdf</dc:format>
+\ifx\xmp@PublicationType\@empty\else <dc:type><rdf:Bag><rdf:li\xmp@checklang\xmp@lang@PublicationType>\xmp@PublicationType</rdf:li></rdf:Bag></dc:type>\fi
+\ifx\xmp@Title\@empty\else <dc:title><rdf:Alt><rdf:li\xmp@strictlang\xmp@lang@Title>\xmp@Title</rdf:li></rdf:Alt></dc:title>\fi
+\ifx\xmp@@Author\@empty\else <dc:creator><rdf:Seq><rdf:li\xmp@checklang\xmp@lang@Author>\xmp@@Author</rdf:li></rdf:Seq></dc:creator>\fi
+\ifx\xmp@Publisher\@empty\else <dc:publisher><rdf:Bag><rdf:li\xmp@checklang\xmp@lang@Publisher>\xmp@Publisher</rdf:li></rdf:Bag></dc:publisher>\fi
+\ifx\xmp@Language\@empty\else <dc:language><rdf:Bag><rdf:li>\xmp@Language</rdf:li></rdf:Bag></dc:language>\fi
+\ifx\xmp@Doi\@empty\else <dc:identifier>doi:\xmp@Doi</dc:identifier>\fi
+\ifx\xmp@ISBN\@empty\else <dc:identifier>ISBN:\xmp@ISBN</dc:identifier>\fi
+\ifx\xmp@URL\@empty\else <dc:identifier>URL:\xmp@URL</dc:identifier>\fi
+\ifx\xmp@Copyright\@empty\else <dc:rights><rdf:Alt><rdf:li\xmp@strictlang\xmp@lang@Copyright>\xmp@@Copyright</rdf:li></rdf:Alt></dc:rights>\fi
+\ifx\xmp@Subject\@empty\else <dc:description><rdf:Alt><rdf:li\xmp@strictlang\xmp@lang@Subject>\xmp@Subject</rdf:li></rdf:Alt></dc:description>\fi
+\ifx\xmp@Keywords\@empty\else <dc:subject><rdf:Bag><rdf:li\xmp@checklang\xmp@lang@Keywords>\xmp@Keywords</rdf:li></rdf:Bag></dc:subject>\fi
+\ifx\xmp@Source\@empty\else <dc:source>\xmp@Source</dc:source>\fi
+\ifx\xmp@Coverage\@empty\else <dc:coverage\xmp@checklang\xmp@lang@Coverage>\xmp@Coverage</dc:coverage>\fi
+\ifx\xmp@Date\@empty\else <dc:date><rdf:Seq><rdf:li>\xmp@Date</rdf:li></rdf:Seq></dc:date>\fi
+\ifx\xmp@Contributor\@empty\else <dc:contributor><rdf:Bag><rdf:li\xmp@checklang\xmp@lang@Contributor>\xmp@Contributor</rdf:li></rdf:Bag></dc:contributor>\fi
+\ifx\xmp@Relation\@empty\else <dc:relation><rdf:Bag><rdf:li\xmp@checklang\xmp@lang@Relation>\xmp@Relation</rdf:li></rdf:Bag></dc:relation>\fi
+ </rdf:Description>
+ <rdf:Description rdf:about="" xmlns:prism="http://prismstandard.org/namespaces/basic/2.2/">
+\ifx\xmp@PublicationType\@empty\else <prism:aggregationType\xmp@checklang\xmp@lang@PublicationType>\xmp@PublicationType</prism:aggregationType>\fi
+\ifx\xmp@Journalnumber\@empty\else <prism:issn>\xmp@Journalnumber</prism:issn>\fi
+\ifx\xmp@Volume\@empty\else <prism:volume>\xmp@Volume</prism:volume>\fi
+\ifx\xmp@Issue\@empty\else <prism:number>\xmp@Issue</prism:number>\fi
+\ifx\xmp@CoverDisplayDate\@empty\else <prism:coverDisplayDate\xmp@checklang\xmp@lang@CoverDisplayDate>\xmp@CoverDisplayDate</prism:coverDisplayDate>\fi
+\ifx\xmp@CoverDate\@empty\else <prism:coverDate>\xmp@CoverDate</prism:coverDate>\fi
+\ifx\xmp@Journaltitle\@empty\else <prism:issueName\xmp@checklang\xmp@lang@JournalTitle>\xmp@Journaltitle</prism:issueName>\fi
+\ifx\xmp@Firstpage\@empty\else <prism:pageRange>\xmp@Firstpage-\xmp@Lastpage</prism:pageRange>\fi
+\ifx\xmp@Firstpage\@empty\else <prism:startingPage>\xmp@Firstpage</prism:startingPage>\fi
+\ifx\xmp@Lastpage\@empty\else <prism:endingPage>\xmp@Lastpage</prism:endingPage>\fi
+\ifx\xmp@Doi\@empty\else <prism:doi>\xmp@Doi</prism:doi>\fi
+\ifx\xmp@Doi\@empty\else <prism:url>http://dx.doi.org/\xmp@Doi</prism:url>\fi
+\ifx\xmp@URL\@empty\else <prism:url>\xmp@URL</prism:url>\fi
+ </rdf:Description>
+ <rdf:Description rdf:about=""
+ xmlns:xmp="http://ns.adobe.com/xap/1.0/"
+ xmlns:pdf="http://ns.adobe.com/pdf/1.3/"
+ xmlns:pdfe="http://www.aiim.org/pdfe/ns/id/"
+ xmlns:pdfx="http://ns.adobe.com/pdfx/1.3/"
+% xmlns:pdfxid="http://www.npes.org/pdfx/ns/id/"
+ >
+ <xmp:CreatorTool>\xmp@CreatorTool</xmp:CreatorTool>
+ <xmp:ModifyDate>\xmp@convDate</xmp:ModifyDate>
+ <xmp:CreateDate>\xmp@convDate</xmp:CreateDate>
+ <xmp:MetadataDate>\xmp@convDate</xmp:MetadataDate>
+ <pdf:Producer>\xmp@Producer</pdf:Producer>
+\ifx\xmp@@Keywords\@empty\else <pdf:Keywords>\xmp@@Keywords</pdf:Keywords>\fi
+ <pdf:Trapped>False</pdf:Trapped>
+ <pdfe:ISO_PDFEVersion>PDF/E-\xmp@Part</pdfe:ISO_PDFEVersion>
+%\ifnum\xmp@Part<4 <pdf:Version>PDF/X-\xmp@Part</pdf:Version>\fi
+%\ifnum\xmp@Part>3 <pdfxid:GTS_PDFXVersion>PDF/X-\xmp@Part\xmp@Conformance</pdfxid:GTS_PDFXVersion>\fi
+% <pdfx:GTS_PDFXVersion>PDF/X-\xmp@Part\xmp@Conformance\ifnum\xmp@Part<4:\xmp@ReleaseDate</pdfx:GTS_PDFXVersion>\else</pdfx:GTS_PDFXVersion>\fi
+%\ifnum\xmp@Part<3 <pdfx:GTS_PDFXConformance>PDF/X-\xmp@Part\xmp@Conformance:\xmp@ReleaseDate</pdfx:GTS_PDFXConformance>\fi
+\ifx\xmp@AuthoritativeDomain\@empty\else <pdfx:AuthoritativeDomain><rdf:Bag><rdf:li>\xmp@AuthoritativeDomain</rdf:li></rdf:Bag></pdfx:AuthoritativeDomain>\fi
+\ifx\xmp@Advisory\@empty\else <xmp:Advisory><rdf:Bag><rdf:li\xmp@checklang\xmp@lang@Advisory>\xmp@Advisory</rdf:li></rdf:Bag></xmp:Advisory>\fi
+\ifx\xmp@BaseURL\@empty\else <xmp:BaseURL>\xmp@BaseURL</xmp:BaseURL>\fi
+\ifx\xmp@Identifier\@empty\else <xmp:Identifier><rdf:Bag><rdf:li\xmp@checklang\xmp@lang@Identifier>\xmp@Identifier</rdf:li></rdf:Bag></xmp:Identifier>\fi
+\ifx\xmp@Nickname\@empty\else <xmp:Nickname\xmp@checklang\xmp@lang@Nickname>\xmp@Nickname</xmp:Nickname>\fi
+\ifx\xmp@Thumbnails\@empty\else <xmp:Thumbnails><rdf:Alt><rdf:li>\xmp@Thumbnails</rdf:li></rdf:Alt></xmp:Thumbnails>\fi
+ </rdf:Description>
+ <rdf:Description rdf:about="" xmlns:xmpRights = "http://ns.adobe.com/xap/1.0/rights/">
+\ifx\xmp@Copyright\@empty\else <xmpRights:Marked>\ifx\xmp@Copyrighted\@empty True\else\xmp@Copyrighted\fi</xmpRights:Marked>^^J <xmpRights:UsageTerms><rdf:Alt><rdf:li\xmp@strictlang\xmp@lang@Copyright>\xmp@@Copyright</rdf:li></rdf:Alt></xmpRights:UsageTerms>\fi
+\ifx\xmp@CopyrightURL\@empty\else <xmpRights:WebStatement>\xmp@CopyrightURL</xmpRights:WebStatement>\fi
+\ifx\xmp@Owner\@empty\else <xmpRights:Owner><rdf:Bag><rdf:li\xmp@checklang\xmp@lang@Owner>\xmp@Owner</rdf:li></rdf:Bag></xmpRights:Owner>\fi
+\ifx\xmp@CertificateURL\@empty\else <xmpRights:Certificate>\xmp@CertificateURL</xmpRights:Certificate>\fi
+ </rdf:Description>
+ <rdf:Description rdf:about="" xmlns:xmpMM="http://ns.adobe.com/xap/1.0/mm/">
+ <xmpMM:DocumentID>uuid:\xmp@docid</xmpMM:DocumentID>
+ <xmpMM:InstanceID>uuid:\xmp@instid</xmpMM:InstanceID>
+\ifnum\xmp@Part>3 <xmpMM:RenditionClass>default</xmpMM:RenditionClass>\fi
+\ifnum\xmp@Part>3 <xmpMM:VersionID>1</xmpMM:VersionID>\fi
+ </rdf:Description>
+ </rdf:RDF>
+</x:xmpmeta>
+% padding with 512 space characters to allow easier editing within a PDF
+\paddingline
+\paddingline
+\paddingline
+\paddingline
+%%
+%% End of pdfx.xmp
+%%
+%%
+
+
diff --git a/macros/latex/contrib/pdfx/pdfvt.xmp b/macros/latex/contrib/pdfx/pdfvt.xmp
new file mode 100644
index 0000000000..49922d701b
--- /dev/null
+++ b/macros/latex/contrib/pdfx/pdfvt.xmp
@@ -0,0 +1,276 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%
+%% File: pdfvt.xmp (for pdfx.sty v1.6)
+%%
+%% Copyright (c) 2018, CV Radhakrishnan <cvr@river-valley.org>,
+%% Han The Thanh <thanh@river-valley.org>,
+%% Ross Moore <ross.moore@mq.edu.au>,
+%% Peter Selinger <selinger@mathstat.dal.ca>
+%%
+%% This file may be distributed and/or modified under the conditions
+%% of the LaTeX Project Public License, either version 1.2 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.2 or later is part of all distributions of LaTeX
+%% version 1999/12/01 or later.
+%%
+<x:xmpmeta xmlns:x="adobe:ns:meta/" x:xmptk="Adobe XMP Core 4.0-c316 44.253921, Sun Oct 01 2006 17:14:39">
+ <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
+% xmlns:pdf = "http://ns.adobe.com/pdf/1.3/"
+% xmlns:pdfe = "http://www.aiim.org/pdfe/ns/id/"
+% xmlns:pdfx = "http://ns.adobe.com/pdfx/1.3/"
+% xmlns:pdfxid = "http://www.npes.org/pdfx/ns/id/">
+% xmlns:pdfvtid = "http://www.npes.org/pdfvt/ns/id/"
+% xmlns:pdfaid = "http://www.aiim.org/pdfa/ns/id/"
+% xmlns:xmp = "http://ns.adobe.com/xap/1.0/"
+% xmlns:xmpRights = "http://ns.adobe.com/xap/1.0/rights/"
+% xmlns:dc = "http://purl.org/dc/elements/1.1/"
+% xmlns:dcterms = "http://purl.org/dc/terms/"
+% xmlns:pdfaExtension = "http://www.aiim.org/pdfa/ns/extension/"
+% xmlns:pdfaField = "http://www.aiim.org/pdfa/ns/field#"
+% xmlns:pdfaProperty = "http://www.aiim.org/pdfa/ns/property#"
+% xmlns:pdfaSchema = "http://www.aiim.org/pdfa/ns/schema#"
+% xmlns:pdfaType = "http://www.aiim.org/pdfa/ns/type#"
+% xmlns:prism = "http://prismstandard.org/namespaces/basic/2.2/"
+%% RRM: Other possible namespaces.
+%% If these are used, then appropriate tags need to be declared, using
+%% pdfaExtension:schemas similarly to below for prism:
+% xmlns:pim = "http://prismstandard.org/namespaces/pim/2.2/"
+% xmlns:prl = "http://prismstandard.org/namespaces/prl/2.1/"
+% xmlns:pur = "http://prismstandard.org/namespaces/primusagerights/2.1/"
+% >
+ <rdf:Description rdf:about=""
+ xmlns:pdfaExtension="http://www.aiim.org/pdfa/ns/extension/"
+ xmlns:pdfaSchema="http://www.aiim.org/pdfa/ns/schema#"
+ xmlns:pdfaProperty="http://www.aiim.org/pdfa/ns/property#"
+%% RRM: do we really need the following two declarations ?
+% xmlns:pdfaType="http://www.aiim.org/pdfa/ns/type#"
+% xmlns:pdfaField="http://www.aiim.org/pdfa/ns/field#"
+ >
+ <pdfaExtension:schemas>
+ <rdf:Bag>
+ <rdf:li rdf:parseType="Resource">
+ <pdfaSchema:namespaceURI>http://ns.adobe.com/pdf/1.3/</pdfaSchema:namespaceURI>
+ <pdfaSchema:prefix>pdf</pdfaSchema:prefix>
+ <pdfaSchema:schema>Adobe PDF Schema</pdfaSchema:schema>
+ <pdfaSchema:property><rdf:Seq>
+ <rdf:li rdf:parseType="Resource">
+ <pdfaProperty:category>internal</pdfaProperty:category>
+ <pdfaProperty:description>A name object indicating whether the document has been modified to include trapping information</pdfaProperty:description>
+ <pdfaProperty:name>Trapped</pdfaProperty:name>
+ <pdfaProperty:valueType>Text</pdfaProperty:valueType>
+ </rdf:li>
+ <rdf:li rdf:parseType="Resource">
+ <pdfaProperty:category>internal</pdfaProperty:category>
+ <pdfaProperty:description>PDF/X Part Version</pdfaProperty:description>
+ <pdfaProperty:name>Version</pdfaProperty:name>
+ <pdfaProperty:valueType>Text</pdfaProperty:valueType>
+ </rdf:li></rdf:Seq>
+ </pdfaSchema:property>
+ </rdf:li>
+ <rdf:li rdf:parseType="Resource">
+ <pdfaSchema:namespaceURI>http://ns.adobe.com/pdfx/1.3/</pdfaSchema:namespaceURI>
+ <pdfaSchema:prefix>pdfx</pdfaSchema:prefix>
+ <pdfaSchema:schema>PDF/X Schema</pdfaSchema:schema>
+ <pdfaSchema:property><rdf:Seq>
+ <rdf:li rdf:parseType="Resource">
+ <pdfaProperty:category>internal</pdfaProperty:category>
+ <pdfaProperty:description>ID of PDF/X standard</pdfaProperty:description>
+ <pdfaProperty:name>GTS_PDFXVersion</pdfaProperty:name>
+ <pdfaProperty:valueType>Text</pdfaProperty:valueType>
+ </rdf:li>
+ <rdf:li rdf:parseType="Resource">
+ <pdfaProperty:category>internal</pdfaProperty:category>
+ <pdfaProperty:description>Conformance level of PDF/X standard</pdfaProperty:description>
+ <pdfaProperty:name>GTS_PDFXConformance</pdfaProperty:name>
+ <pdfaProperty:valueType>Text</pdfaProperty:valueType>
+ </rdf:li>
+ <rdf:li rdf:parseType="Resource">
+ <pdfaProperty:category>internal</pdfaProperty:category>
+ <pdfaProperty:description>URL to an online version or preprint</pdfaProperty:description>
+ <pdfaProperty:name>AuthoritativeDomain</pdfaProperty:name>
+ <pdfaProperty:valueType>Text</pdfaProperty:valueType>
+ </rdf:li>
+ <rdf:li rdf:parseType="Resource">
+ <pdfaProperty:category>internal</pdfaProperty:category>
+ <pdfaProperty:description>Company creating the PDF</pdfaProperty:description>
+ <pdfaProperty:name>Company</pdfaProperty:name>
+ <pdfaProperty:valueType>Text</pdfaProperty:valueType>
+ </rdf:li>
+ <rdf:li rdf:parseType="Resource">
+ <pdfaProperty:category>internal</pdfaProperty:category>
+ <pdfaProperty:description>Date when document was last modified</pdfaProperty:description>
+ <pdfaProperty:name>SourceModified</pdfaProperty:name>
+ <pdfaProperty:valueType>Text</pdfaProperty:valueType>
+ </rdf:li></rdf:Seq>
+ </pdfaSchema:property>
+ </rdf:li>
+ <rdf:li rdf:parseType="Resource">
+ <pdfaSchema:namespaceURI>http://ns.adobe.com/xap/1.0/mm/</pdfaSchema:namespaceURI>
+ <pdfaSchema:prefix>xmpMM</pdfaSchema:prefix>
+ <pdfaSchema:schema>XMP Media Management Schema</pdfaSchema:schema>
+ <pdfaSchema:property><rdf:Seq>
+ <rdf:li rdf:parseType="Resource">
+ <pdfaProperty:category>internal</pdfaProperty:category>
+ <pdfaProperty:description>UUID based identifier for specific incarnation of a document</pdfaProperty:description>
+ <pdfaProperty:name>InstanceID</pdfaProperty:name>
+ <pdfaProperty:valueType>URI</pdfaProperty:valueType>
+ </rdf:li>
+ <rdf:li rdf:parseType="Resource">
+ <pdfaProperty:category>internal</pdfaProperty:category>
+ <pdfaProperty:description>The common identifier for all versions and renditions of a document.</pdfaProperty:description>
+ <pdfaProperty:name>OriginalDocumentID</pdfaProperty:name>
+ <pdfaProperty:valueType>URI</pdfaProperty:valueType>
+ </rdf:li></rdf:Seq>
+ </pdfaSchema:property>
+ </rdf:li>
+ <rdf:li rdf:parseType="Resource">
+ <pdfaSchema:namespaceURI>http://www.npes.org/pdfx/ns/id/</pdfaSchema:namespaceURI>
+ <pdfaSchema:prefix>pdfxid</pdfaSchema:prefix>
+ <pdfaSchema:schema>PDF/X ID Schema</pdfaSchema:schema>
+ <pdfaSchema:property><rdf:Seq>
+ <rdf:li rdf:parseType="Resource">
+ <pdfaProperty:category>internal</pdfaProperty:category>
+ <pdfaProperty:description>ID of PDF/X standard</pdfaProperty:description>
+ <pdfaProperty:name>GTS_PDFXVersion</pdfaProperty:name>
+ <pdfaProperty:valueType>Text</pdfaProperty:valueType>
+ </rdf:li></rdf:Seq>
+ </pdfaSchema:property>
+ </rdf:li>
+%% RRM: this declares the namespace resource for PRISM metadata
+ <rdf:li rdf:parseType="Resource">
+ <pdfaSchema:schema>PRISM metadata</pdfaSchema:schema>
+ <pdfaSchema:namespaceURI>http://prismstandard.org/namespaces/basic/2.2/</pdfaSchema:namespaceURI>
+ <pdfaSchema:prefix>prism</pdfaSchema:prefix>
+ <pdfaSchema:property><rdf:Seq>
+%% RRM: Only need to define the tags that are actually used below. But \ifx ... \fi must be all on one line.
+%% declare prism:aggregationType
+%\ifx\xmp@PublicationType\@empty\else % need at least one field, for validation
+ <rdf:li rdf:parseType="Resource">^^J <pdfaProperty:name>aggregationType</pdfaProperty:name>^^J <pdfaProperty:valueType>Text</pdfaProperty:valueType>^^J <pdfaProperty:category>external</pdfaProperty:category>^^J <pdfaProperty:description>The type of publication. If defined, must be one of book, catalog, feed, journal, magazine, manual, newsletter, pamphlet.</pdfaProperty:description>^^J </rdf:li> %\fi
+%% declare prism:issn
+\ifx\xmp@Journalnumber\@empty\else <rdf:li rdf:parseType="Resource">^^J <pdfaProperty:name>issn</pdfaProperty:name>^^J <pdfaProperty:valueType>Text</pdfaProperty:valueType>^^J <pdfaProperty:category>external</pdfaProperty:category>^^J <pdfaProperty:description>The ISSN for the publication in which the resource was published</pdfaProperty:description>^^J </rdf:li>\fi
+%% declare prism:volume
+\ifx\xmp@Volume\@empty\else <rdf:li rdf:parseType="Resource">^^J <pdfaProperty:name>volume</pdfaProperty:name>^^J <pdfaProperty:valueType>Text</pdfaProperty:valueType>^^J <pdfaProperty:category>external</pdfaProperty:category>^^J <pdfaProperty:description>Additional identifier for the publication where the resource appeared, providing the Volume portion of the common Volume, Number scheme</pdfaProperty:description>^^J </rdf:li>\fi
+%% declare prism:number
+\ifx\xmp@Issue\@empty\else <rdf:li rdf:parseType="Resource">^^J <pdfaProperty:name>number</pdfaProperty:name>^^J <pdfaProperty:valueType>Text</pdfaProperty:valueType>^^J <pdfaProperty:category>external</pdfaProperty:category>^^J <pdfaProperty:description>Number of the Issue within the Volume</pdfaProperty:description>^^J </rdf:li>\fi
+%% declare prism:coverDisplayDate
+\ifx\xmp@CoverDisplayDate\@empty\else <rdf:li rdf:parseType="Resource">^^J <pdfaProperty:name>coverDisplayDate</pdfaProperty:name>^^J <pdfaProperty:valueType>Text</pdfaProperty:valueType>^^J <pdfaProperty:category>external</pdfaProperty:category>^^J <pdfaProperty:description>Date on the cover of a magazine issue, as a human-readable text string</pdfaProperty:description>^^J </rdf:li>\fi
+%% declare prism:coverDate
+\ifx\xmp@CoverDate\@empty\else <rdf:li rdf:parseType="Resource">^^J <pdfaProperty:name>coverDate</pdfaProperty:name>^^J <pdfaProperty:valueType>Date</pdfaProperty:valueType>^^J <pdfaProperty:category>external</pdfaProperty:category>^^J <pdfaProperty:description>Date on the cover of a magazine issue, suitable for storing in a database field with a 'date' data type</pdfaProperty:description>^^J </rdf:li>\fi
+%% declare prism:issueName
+\ifx\xmp@Journaltitle\@empty\else <rdf:li rdf:parseType="Resource">^^J <pdfaProperty:name>issueName</pdfaProperty:name>^^J <pdfaProperty:valueType>Text</pdfaProperty:valueType>^^J <pdfaProperty:category>external</pdfaProperty:category>^^J <pdfaProperty:description>Additional identifier, typically used for major issues of a magazine or other resource</pdfaProperty:description>^^J </rdf:li>\fi
+%% declare prism:pageRange
+\ifx\xmp@Firstpage\@empty\else <rdf:li rdf:parseType="Resource">^^J <pdfaProperty:name>pageRange</pdfaProperty:name>^^J <pdfaProperty:valueType>Text</pdfaProperty:valueType>^^J <pdfaProperty:category>external</pdfaProperty:category>^^J <pdfaProperty:description>Page range for the published print version of the resource</pdfaProperty:description>^^J </rdf:li>\fi
+%% declare prism:startingPage
+\ifx\xmp@Firstpage\@empty\else <rdf:li rdf:parseType="Resource">^^J <pdfaProperty:name>startingPage</pdfaProperty:name>^^J <pdfaProperty:valueType>Integer</pdfaProperty:valueType>^^J <pdfaProperty:category>external</pdfaProperty:category>^^J <pdfaProperty:description>First page number for the published version of the resource</pdfaProperty:description>^^J </rdf:li>\fi
+%% declare prism:endingPage
+\ifx\xmp@Lastpage\@empty\else <rdf:li rdf:parseType="Resource">^^J <pdfaProperty:name>endingPage</pdfaProperty:name>^^J <pdfaProperty:valueType>Integer</pdfaProperty:valueType>^^J <pdfaProperty:category>external</pdfaProperty:category>^^J <pdfaProperty:description>The last page number for the printed resource</pdfaProperty:description>^^J </rdf:li>\fi
+%% declare prism:doi
+\ifx\xmp@Doi\@empty\else <rdf:li rdf:parseType="Resource">^^J <pdfaProperty:name>doi</pdfaProperty:name>^^J <pdfaProperty:valueType>Text</pdfaProperty:valueType>^^J <pdfaProperty:category>external</pdfaProperty:category>^^J <pdfaProperty:description>Digital Object Identifier, DOI, for the article</pdfaProperty:description>^^J </rdf:li>\fi
+%% declare prism:url
+ <rdf:li rdf:parseType="Resource">^^J <pdfaProperty:name>url</pdfaProperty:name>^^J <pdfaProperty:valueType>URL</pdfaProperty:valueType>^^J <pdfaProperty:category>external</pdfaProperty:category>^^J <pdfaProperty:description>URL for the article or unit of content</pdfaProperty:description>^^J </rdf:li>
+%% RRM: more tags can be declared
+% <rdf:li rdf:parseType="Resource">
+% <pdfaProperty:name></pdfaProperty:name>
+% <pdfaProperty:valueType>Text</pdfaProperty:valueType>
+% <pdfaProperty:category>external</pdfaProperty:category>
+% <pdfaProperty:description></pdfaProperty:description>
+% </rdf:li>
+ </rdf:Seq></pdfaSchema:property>
+ </rdf:li>
+ </rdf:Bag>
+ </pdfaExtension:schemas>
+ </rdf:Description>
+ <rdf:Description rdf:about="" xmlns:dc="http://purl.org/dc/elements/1.1/">
+ <dc:format>application/pdf</dc:format>
+\ifx\xmp@PublicationType\@empty\else <dc:type><rdf:Bag><rdf:li\xmp@checklang\xmp@lang@PublicationType>\xmp@PublicationType</rdf:li></rdf:Bag></dc:type>\fi
+\ifx\xmp@Title\@empty\else <dc:title><rdf:Alt><rdf:li\xmp@strictlang\xmp@lang@Title>\xmp@Title</rdf:li></rdf:Alt></dc:title>\fi
+\ifx\xmp@@Author\@empty\else <dc:creator><rdf:Seq><rdf:li\xmp@checklang\xmp@lang@Author>\xmp@@Author</rdf:li></rdf:Seq></dc:creator>\fi
+\ifx\xmp@Publisher\@empty\else <dc:publisher><rdf:Bag><rdf:li\xmp@checklang\xmp@lang@Publisher>\xmp@Publisher</rdf:li></rdf:Bag></dc:publisher>\fi
+\ifx\xmp@Language\@empty\else <dc:language><rdf:Bag><rdf:li>\xmp@Language</rdf:li></rdf:Bag></dc:language>\fi
+\ifx\xmp@Doi\@empty\else <dc:identifier>doi:\xmp@Doi</dc:identifier>\fi
+\ifx\xmp@ISBN\@empty\else <dc:identifier>ISBN:\xmp@ISBN</dc:identifier>\fi
+\ifx\xmp@URL\@empty\else <dc:identifier>URL:\xmp@URL</dc:identifier>\fi
+\ifx\xmp@Copyright\@empty\else <dc:rights><rdf:Alt><rdf:li\xmp@strictlang\xmp@lang@Copyright>\xmp@@Copyright</rdf:li></rdf:Alt></dc:rights>\fi
+\ifx\xmp@Subject\@empty\else <dc:description><rdf:Alt><rdf:li\xmp@strictlang\xmp@lang@Subject>\xmp@Subject</rdf:li></rdf:Alt></dc:description>\fi
+\ifx\xmp@Keywords\@empty\else <dc:subject><rdf:Bag><rdf:li\xmp@checklang\xmp@lang@Keywords>\xmp@Keywords</rdf:li></rdf:Bag></dc:subject>\fi
+\ifx\xmp@Source\@empty\else <dc:source>\xmp@Source</dc:source>\fi
+\ifx\xmp@Coverage\@empty\else <dc:coverage\xmp@checklang\xmp@lang@Coverage>\xmp@Coverage</dc:coverage>\fi
+\ifx\xmp@Date\@empty\else <dc:date><rdf:Seq><rdf:li>\xmp@Date</rdf:li></rdf:Seq></dc:date>\fi
+\ifx\xmp@Contributor\@empty\else <dc:contributor><rdf:Bag><rdf:li\xmp@checklang\xmp@lang@Contributor>\xmp@Contributor</rdf:li></rdf:Bag></dc:contributor>\fi
+\ifx\xmp@Relation\@empty\else <dc:relation><rdf:Bag><rdf:li\xmp@checklang\xmp@lang@Relation>\xmp@Relation</rdf:li></rdf:Bag></dc:relation>\fi
+ </rdf:Description>
+ <rdf:Description rdf:about="" xmlns:prism="http://prismstandard.org/namespaces/basic/2.2/">
+\ifx\xmp@PublicationType\@empty\else <prism:aggregationType\xmp@checklang\xmp@lang@PublicationType>\xmp@PublicationType</prism:aggregationType>\fi
+\ifx\xmp@Journalnumber\@empty\else <prism:issn>\xmp@Journalnumber</prism:issn>\fi
+\ifx\xmp@Volume\@empty\else <prism:volume>\xmp@Volume</prism:volume>\fi
+\ifx\xmp@Issue\@empty\else <prism:number>\xmp@Issue</prism:number>\fi
+\ifx\xmp@CoverDisplayDate\@empty\else <prism:coverDisplayDate\xmp@checklang\xmp@lang@CoverDisplayDate>\xmp@CoverDisplayDate</prism:coverDisplayDate>\fi
+\ifx\xmp@CoverDate\@empty\else <prism:coverDate>\xmp@CoverDate</prism:coverDate>\fi
+\ifx\xmp@Journaltitle\@empty\else <prism:issueName\xmp@checklang\xmp@lang@JournalTitle>\xmp@Journaltitle</prism:issueName>\fi
+\ifx\xmp@Firstpage\@empty\else <prism:pageRange>\xmp@Firstpage-\xmp@Lastpage</prism:pageRange>\fi
+\ifx\xmp@Firstpage\@empty\else <prism:startingPage>\xmp@Firstpage</prism:startingPage>\fi
+\ifx\xmp@Lastpage\@empty\else <prism:endingPage>\xmp@Lastpage</prism:endingPage>\fi
+\ifx\xmp@Doi\@empty\else <prism:doi>\xmp@Doi</prism:doi>\fi
+\ifx\xmp@Doi\@empty\else <prism:url>http://dx.doi.org/\xmp@Doi</prism:url>\fi
+\ifx\xmp@URL\@empty\else <prism:url>\xmp@URL</prism:url>\fi
+ </rdf:Description>
+ <rdf:Description rdf:about=""
+ xmlns:xmp="http://ns.adobe.com/xap/1.0/"
+ xmlns:pdf="http://ns.adobe.com/pdf/1.3/"
+ xmlns:pdfe="http://www.aiim.org/pdfe/ns/id/"
+ xmlns:pdfx="http://ns.adobe.com/pdfx/1.3/"
+ xmlns:pdfvtid="http://www.npes.org/pdfvt/ns/id/"
+ xmlns:pdfxid="http://www.npes.org/pdfx/ns/id/"
+ >
+ <xmp:CreatorTool>\xmp@CreatorTool</xmp:CreatorTool>
+ <xmp:ModifyDate>\xmp@convDate</xmp:ModifyDate>
+ <xmp:CreateDate>\xmp@convDate</xmp:CreateDate>
+ <xmp:MetadataDate>\xmp@convDate</xmp:MetadataDate>
+ <pdf:Producer>\xmp@Producer</pdf:Producer>
+\ifx\xmp@@Keywords\@empty\else <pdf:Keywords>\xmp@@Keywords</pdf:Keywords>\fi
+ <pdf:Trapped>False</pdf:Trapped>
+% <pdfe:ISO_PDFEVersion>PDF/E-\xmp@Part</pdfe:ISO_PDFEVersion>
+%\ifnum\xmp@Part<4 <pdf:Version>PDF/X-\xmp@Part</pdf:Version>\fi
+%\ifnum\xmp@Part>3 <pdfxid:GTS_PDFXVersion>PDF/X-\xmp@Part\xmp@Conformance</pdfxid:GTS_PDFXVersion>\fi
+% <pdfx:GTS_PDFXVersion>PDF/X-\xmp@Part\xmp@Conformance\ifnum\xmp@Part<4:\xmp@ReleaseDate</pdfx:GTS_PDFXVersion>\else</pdfx:GTS_PDFXVersion>\fi
+%\ifnum\xmp@Part<3 <pdfx:GTS_PDFXConformance>PDF/X-\xmp@Part\xmp@Conformance:\xmp@ReleaseDate</pdfx:GTS_PDFXConformance>\fi
+ <pdfxid:GTS_PDFXVersion>PDF/X-\xmp@Part\xmp@Conformance</pdfxid:GTS_PDFXVersion>
+ <pdfvtid:GTS_PDFVTVersion>PDF/VT-\xmp@vtPart\xmp@vtConformance</pdfvtid:GTS_PDFVTVersion>
+ <pdfvtid:GTS_PDFVTModDate>\xmp@convDate</pdfvtid:GTS_PDFVTModDate>
+\ifx\xmp@AuthoritativeDomain\@empty\else <pdfx:AuthoritativeDomain><rdf:Bag><rdf:li>\xmp@AuthoritativeDomain</rdf:li></rdf:Bag></pdfx:AuthoritativeDomain>\fi
+\ifx\xmp@Advisory\@empty\else <xmp:Advisory><rdf:Bag><rdf:li\xmp@checklang\xmp@lang@Advisory>\xmp@Advisory</rdf:li></rdf:Bag></xmp:Advisory>\fi
+\ifx\xmp@BaseURL\@empty\else <xmp:BaseURL>\xmp@BaseURL</xmp:BaseURL>\fi
+\ifx\xmp@Identifier\@empty\else <xmp:Identifier><rdf:Bag><rdf:li\xmp@checklang\xmp@lang@Identifier>\xmp@Identifier</rdf:li></rdf:Bag></xmp:Identifier>\fi
+\ifx\xmp@Nickname\@empty\else <xmp:Nickname\xmp@checklang\xmp@lang@Nickname>\xmp@Nickname</xmp:Nickname>\fi
+\ifx\xmp@Thumbnails\@empty\else <xmp:Thumbnails><rdf:Alt><rdf:li>\xmp@Thumbnails</rdf:li></rdf:Alt></xmp:Thumbnails>\fi
+ </rdf:Description>
+ <rdf:Description rdf:about="" xmlns:xmpRights = "http://ns.adobe.com/xap/1.0/rights/">
+\ifx\xmp@Copyright\@empty\else <xmpRights:Marked>\ifx\xmp@Copyrighted\@empty True\else\xmp@Copyrighted\fi</xmpRights:Marked>^^J <xmpRights:UsageTerms><rdf:Alt><rdf:li\xmp@strictlang\xmp@lang@Copyright>\xmp@@Copyright</rdf:li></rdf:Alt></xmpRights:UsageTerms>\fi
+\ifx\xmp@CopyrightURL\@empty\else <xmpRights:WebStatement>\xmp@CopyrightURL</xmpRights:WebStatement>\fi
+\ifx\xmp@Owner\@empty\else <xmpRights:Owner><rdf:Bag><rdf:li\xmp@checklang\xmp@lang@Owner>\xmp@Owner</rdf:li></rdf:Bag></xmpRights:Owner>\fi
+\ifx\xmp@CertificateURL\@empty\else <xmpRights:Certificate>\xmp@CertificateURL</xmpRights:Certificate>\fi
+ </rdf:Description>
+ <rdf:Description rdf:about="" xmlns:xmpMM="http://ns.adobe.com/xap/1.0/mm/">
+ <xmpMM:VersionID>\xmpMM@VersionID</xmpMM:VersionID>
+ <xmpMM:DocumentID>uuid:\xmp@docid</xmpMM:DocumentID>
+ <xmpMM:InstanceID>uuid:\xmp@instid</xmpMM:InstanceID>
+ <xmpMM:RenditionClass>default</xmpMM:RenditionClass>
+%\ifnum\xmp@Part>3 <xmpMM:VersionID>1</xmpMM:VersionID>\fi
+ </rdf:Description>
+ </rdf:RDF>
+</x:xmpmeta>
+% padding with 512 space characters to allow easier editing within a PDF
+\paddingline
+\paddingline
+\paddingline
+\paddingline
+%%
+%% End of pdfx.xmp
+%%
+%%
+
+
diff --git a/macros/latex/contrib/pdfx/pdfx.pdf b/macros/latex/contrib/pdfx/pdfx.pdf
new file mode 100644
index 0000000000..86e447b283
--- /dev/null
+++ b/macros/latex/contrib/pdfx/pdfx.pdf
Binary files differ
diff --git a/macros/latex/contrib/pdfx/pdfx.xmp b/macros/latex/contrib/pdfx/pdfx.xmp
new file mode 100644
index 0000000000..d6f8fd02e4
--- /dev/null
+++ b/macros/latex/contrib/pdfx/pdfx.xmp
@@ -0,0 +1,266 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%
+%% File: pdfx.xmp (for pdfx.sty v1.6)
+%%
+%% Copyright (c) 2018, CV Radhakrishnan <cvr@river-valley.org>,
+%% Han The Thanh <thanh@river-valley.org>,
+%% Ross Moore <ross.moore@mq.edu.au>,
+%% Peter Selinger <selinger@mathstat.dal.ca>
+%%
+%% This file may be distributed and/or modified under the conditions
+%% of the LaTeX Project Public License, either version 1.2 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.2 or later is part of all distributions of LaTeX
+%% version 1999/12/01 or later.
+%%
+<x:xmpmeta xmlns:x="adobe:ns:meta/" x:xmptk="Adobe XMP Core 4.0-c316 44.253921, Sun Oct 01 2006 17:14:39">
+ <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
+% xmlns:pdf = "http://ns.adobe.com/pdf/1.3/"
+% xmlns:pdfx = "http://ns.adobe.com/pdfx/1.3/"
+% xmlns:pdfxid="http://www.npes.org/pdfx/ns/id/">
+% xmlns:pdfaid = "http://www.aiim.org/pdfa/ns/id/"
+% xmlns:xmp = "http://ns.adobe.com/xap/1.0/"
+% xmlns:xmpRights = "http://ns.adobe.com/xap/1.0/rights/"
+% xmlns:dc = "http://purl.org/dc/elements/1.1/"
+% xmlns:dcterms = "http://purl.org/dc/terms/"
+% xmlns:pdfaExtension = "http://www.aiim.org/pdfa/ns/extension/"
+% xmlns:pdfaField = "http://www.aiim.org/pdfa/ns/field#"
+% xmlns:pdfaProperty = "http://www.aiim.org/pdfa/ns/property#"
+% xmlns:pdfaSchema = "http://www.aiim.org/pdfa/ns/schema#"
+% xmlns:pdfaType = "http://www.aiim.org/pdfa/ns/type#"
+% xmlns:prism = "http://prismstandard.org/namespaces/basic/2.2/"
+%% RRM: Other possible namespaces.
+%% If these are used, then appropriate tags need to be declared, using
+%% pdfaExtension:schemas similarly to below for prism:
+% xmlns:pim = "http://prismstandard.org/namespaces/pim/2.2/"
+% xmlns:prl = "http://prismstandard.org/namespaces/prl/2.1/"
+% xmlns:pur = "http://prismstandard.org/namespaces/primusagerights/2.1/"
+% >
+ <rdf:Description rdf:about=""
+ xmlns:pdfaExtension="http://www.aiim.org/pdfa/ns/extension/"
+ xmlns:pdfaSchema="http://www.aiim.org/pdfa/ns/schema#"
+ xmlns:pdfaProperty="http://www.aiim.org/pdfa/ns/property#"
+%% RRM: do we really need the following two declarations ?
+% xmlns:pdfaType="http://www.aiim.org/pdfa/ns/type#"
+% xmlns:pdfaField="http://www.aiim.org/pdfa/ns/field#"
+ >
+ <pdfaExtension:schemas>
+ <rdf:Bag>
+ <rdf:li rdf:parseType="Resource">
+ <pdfaSchema:namespaceURI>http://ns.adobe.com/pdf/1.3/</pdfaSchema:namespaceURI>
+ <pdfaSchema:prefix>pdf</pdfaSchema:prefix>
+ <pdfaSchema:schema>Adobe PDF Schema</pdfaSchema:schema>
+ <pdfaSchema:property><rdf:Seq>
+ <rdf:li rdf:parseType="Resource">
+ <pdfaProperty:category>internal</pdfaProperty:category>
+ <pdfaProperty:description>A name object indicating whether the document has been modified to include trapping information</pdfaProperty:description>
+ <pdfaProperty:name>Trapped</pdfaProperty:name>
+ <pdfaProperty:valueType>Text</pdfaProperty:valueType>
+ </rdf:li>
+ <rdf:li rdf:parseType="Resource">
+ <pdfaProperty:category>internal</pdfaProperty:category>
+ <pdfaProperty:description>PDF/X Part Version</pdfaProperty:description>
+ <pdfaProperty:name>Version</pdfaProperty:name>
+ <pdfaProperty:valueType>Text</pdfaProperty:valueType>
+ </rdf:li></rdf:Seq>
+ </pdfaSchema:property>
+ </rdf:li>
+ <rdf:li rdf:parseType="Resource">
+ <pdfaSchema:namespaceURI>http://ns.adobe.com/pdfx/1.3/</pdfaSchema:namespaceURI>
+ <pdfaSchema:prefix>pdfx</pdfaSchema:prefix>
+ <pdfaSchema:schema>PDF/X Schema</pdfaSchema:schema>
+ <pdfaSchema:property><rdf:Seq>
+ <rdf:li rdf:parseType="Resource">
+ <pdfaProperty:category>internal</pdfaProperty:category>
+ <pdfaProperty:description>ID of PDF/X standard</pdfaProperty:description>
+ <pdfaProperty:name>GTS_PDFXVersion</pdfaProperty:name>
+ <pdfaProperty:valueType>Text</pdfaProperty:valueType>
+ </rdf:li>
+ <rdf:li rdf:parseType="Resource">
+ <pdfaProperty:category>internal</pdfaProperty:category>
+ <pdfaProperty:description>Conformance level of PDF/X standard</pdfaProperty:description>
+ <pdfaProperty:name>GTS_PDFXConformance</pdfaProperty:name>
+ <pdfaProperty:valueType>Text</pdfaProperty:valueType>
+ </rdf:li>
+ <rdf:li rdf:parseType="Resource">
+ <pdfaProperty:category>internal</pdfaProperty:category>
+ <pdfaProperty:description>URL to an online version or preprint</pdfaProperty:description>
+ <pdfaProperty:name>AuthoritativeDomain</pdfaProperty:name>
+ <pdfaProperty:valueType>Text</pdfaProperty:valueType>
+ </rdf:li>
+ <rdf:li rdf:parseType="Resource">
+ <pdfaProperty:category>internal</pdfaProperty:category>
+ <pdfaProperty:description>Company creating the PDF</pdfaProperty:description>
+ <pdfaProperty:name>Company</pdfaProperty:name>
+ <pdfaProperty:valueType>Text</pdfaProperty:valueType>
+ </rdf:li>
+ <rdf:li rdf:parseType="Resource">
+ <pdfaProperty:category>internal</pdfaProperty:category>
+ <pdfaProperty:description>Date when document was last modified</pdfaProperty:description>
+ <pdfaProperty:name>SourceModified</pdfaProperty:name>
+ <pdfaProperty:valueType>Text</pdfaProperty:valueType>
+ </rdf:li></rdf:Seq>
+ </pdfaSchema:property>
+ </rdf:li>
+ <rdf:li rdf:parseType="Resource">
+ <pdfaSchema:namespaceURI>http://ns.adobe.com/xap/1.0/mm/</pdfaSchema:namespaceURI>
+ <pdfaSchema:prefix>xmpMM</pdfaSchema:prefix>
+ <pdfaSchema:schema>XMP Media Management Schema</pdfaSchema:schema>
+ <pdfaSchema:property><rdf:Seq>
+ <rdf:li rdf:parseType="Resource">
+ <pdfaProperty:category>internal</pdfaProperty:category>
+ <pdfaProperty:description>UUID based identifier for specific incarnation of a document</pdfaProperty:description>
+ <pdfaProperty:name>InstanceID</pdfaProperty:name>
+ <pdfaProperty:valueType>URI</pdfaProperty:valueType>
+ </rdf:li>
+ <rdf:li rdf:parseType="Resource">
+ <pdfaProperty:category>internal</pdfaProperty:category>
+ <pdfaProperty:description>The common identifier for all versions and renditions of a document.</pdfaProperty:description>
+ <pdfaProperty:name>OriginalDocumentID</pdfaProperty:name>
+ <pdfaProperty:valueType>URI</pdfaProperty:valueType>
+ </rdf:li></rdf:Seq>
+ </pdfaSchema:property>
+ </rdf:li>
+ <rdf:li rdf:parseType="Resource">
+ <pdfaSchema:namespaceURI>http://www.npes.org/pdfx/ns/id/</pdfaSchema:namespaceURI>
+ <pdfaSchema:prefix>pdfxid</pdfaSchema:prefix>
+ <pdfaSchema:schema>PDF/X ID Schema</pdfaSchema:schema>
+ <pdfaSchema:property><rdf:Seq>
+ <rdf:li rdf:parseType="Resource">
+ <pdfaProperty:category>internal</pdfaProperty:category>
+ <pdfaProperty:description>ID of PDF/X standard</pdfaProperty:description>
+ <pdfaProperty:name>GTS_PDFXVersion</pdfaProperty:name>
+ <pdfaProperty:valueType>Text</pdfaProperty:valueType>
+ </rdf:li></rdf:Seq>
+ </pdfaSchema:property>
+ </rdf:li>
+%% RRM: this declares the namespace resource for PRISM metadata
+ <rdf:li rdf:parseType="Resource">
+ <pdfaSchema:schema>PRISM metadata</pdfaSchema:schema>
+ <pdfaSchema:namespaceURI>http://prismstandard.org/namespaces/basic/2.2/</pdfaSchema:namespaceURI>
+ <pdfaSchema:prefix>prism</pdfaSchema:prefix>
+ <pdfaSchema:property><rdf:Seq>
+%% RRM: Only need to define the tags that are actually used below. But \ifx ... \fi must be all on one line.
+%% declare prism:aggregationType
+%\ifx\xmp@PublicationType\@empty\else % need at least one field, for validation
+ <rdf:li rdf:parseType="Resource">^^J <pdfaProperty:name>aggregationType</pdfaProperty:name>^^J <pdfaProperty:valueType>Text</pdfaProperty:valueType>^^J <pdfaProperty:category>external</pdfaProperty:category>^^J <pdfaProperty:description>The type of publication. If defined, must be one of book, catalog, feed, journal, magazine, manual, newsletter, pamphlet.</pdfaProperty:description>^^J </rdf:li> %\fi
+%% declare prism:issn
+\ifx\xmp@Journalnumber\@empty\else <rdf:li rdf:parseType="Resource">^^J <pdfaProperty:name>issn</pdfaProperty:name>^^J <pdfaProperty:valueType>Text</pdfaProperty:valueType>^^J <pdfaProperty:category>external</pdfaProperty:category>^^J <pdfaProperty:description>The ISSN for the publication in which the resource was published</pdfaProperty:description>^^J </rdf:li>\fi
+%% declare prism:volume
+\ifx\xmp@Volume\@empty\else <rdf:li rdf:parseType="Resource">^^J <pdfaProperty:name>volume</pdfaProperty:name>^^J <pdfaProperty:valueType>Text</pdfaProperty:valueType>^^J <pdfaProperty:category>external</pdfaProperty:category>^^J <pdfaProperty:description>Additional identifier for the publication where the resource appeared, providing the Volume portion of the common Volume, Number scheme</pdfaProperty:description>^^J </rdf:li>\fi
+%% declare prism:number
+\ifx\xmp@Issue\@empty\else <rdf:li rdf:parseType="Resource">^^J <pdfaProperty:name>number</pdfaProperty:name>^^J <pdfaProperty:valueType>Text</pdfaProperty:valueType>^^J <pdfaProperty:category>external</pdfaProperty:category>^^J <pdfaProperty:description>Number of the Issue within the Volume</pdfaProperty:description>^^J </rdf:li>\fi
+%% declare prism:coverDisplayDate
+\ifx\xmp@CoverDisplayDate\@empty\else <rdf:li rdf:parseType="Resource">^^J <pdfaProperty:name>coverDisplayDate</pdfaProperty:name>^^J <pdfaProperty:valueType>Text</pdfaProperty:valueType>^^J <pdfaProperty:category>external</pdfaProperty:category>^^J <pdfaProperty:description>Date on the cover of a magazine issue, as a human-readable text string</pdfaProperty:description>^^J </rdf:li>\fi
+%% declare prism:coverDate
+\ifx\xmp@CoverDate\@empty\else <rdf:li rdf:parseType="Resource">^^J <pdfaProperty:name>coverDate</pdfaProperty:name>^^J <pdfaProperty:valueType>Date</pdfaProperty:valueType>^^J <pdfaProperty:category>external</pdfaProperty:category>^^J <pdfaProperty:description>Date on the cover of a magazine issue, suitable for storing in a database field with a 'date' data type</pdfaProperty:description>^^J </rdf:li>\fi
+%% declare prism:issueName
+\ifx\xmp@Journaltitle\@empty\else <rdf:li rdf:parseType="Resource">^^J <pdfaProperty:name>issueName</pdfaProperty:name>^^J <pdfaProperty:valueType>Text</pdfaProperty:valueType>^^J <pdfaProperty:category>external</pdfaProperty:category>^^J <pdfaProperty:description>Additional identifier, typically used for major issues of a magazine or other resource</pdfaProperty:description>^^J </rdf:li>\fi
+%% declare prism:pageRange
+\ifx\xmp@Firstpage\@empty\else <rdf:li rdf:parseType="Resource">^^J <pdfaProperty:name>pageRange</pdfaProperty:name>^^J <pdfaProperty:valueType>Text</pdfaProperty:valueType>^^J <pdfaProperty:category>external</pdfaProperty:category>^^J <pdfaProperty:description>Page range for the published print version of the resource</pdfaProperty:description>^^J </rdf:li>\fi
+%% declare prism:startingPage
+\ifx\xmp@Firstpage\@empty\else <rdf:li rdf:parseType="Resource">^^J <pdfaProperty:name>startingPage</pdfaProperty:name>^^J <pdfaProperty:valueType>Integer</pdfaProperty:valueType>^^J <pdfaProperty:category>external</pdfaProperty:category>^^J <pdfaProperty:description>First page number for the published version of the resource</pdfaProperty:description>^^J </rdf:li>\fi
+%% declare prism:endingPage
+\ifx\xmp@Lastpage\@empty\else <rdf:li rdf:parseType="Resource">^^J <pdfaProperty:name>endingPage</pdfaProperty:name>^^J <pdfaProperty:valueType>Integer</pdfaProperty:valueType>^^J <pdfaProperty:category>external</pdfaProperty:category>^^J <pdfaProperty:description>The last page number for the printed resource</pdfaProperty:description>^^J </rdf:li>\fi
+%% declare prism:doi
+\ifx\xmp@Doi\@empty\else <rdf:li rdf:parseType="Resource">^^J <pdfaProperty:name>doi</pdfaProperty:name>^^J <pdfaProperty:valueType>Text</pdfaProperty:valueType>^^J <pdfaProperty:category>external</pdfaProperty:category>^^J <pdfaProperty:description>Digital Object Identifier, DOI, for the article</pdfaProperty:description>^^J </rdf:li>\fi
+%% declare prism:url
+ <rdf:li rdf:parseType="Resource">^^J <pdfaProperty:name>url</pdfaProperty:name>^^J <pdfaProperty:valueType>URL</pdfaProperty:valueType>^^J <pdfaProperty:category>external</pdfaProperty:category>^^J <pdfaProperty:description>URL for the article or unit of content</pdfaProperty:description>^^J </rdf:li>
+%% RRM: more tags can be declared
+% <rdf:li rdf:parseType="Resource">
+% <pdfaProperty:name></pdfaProperty:name>
+% <pdfaProperty:valueType>Text</pdfaProperty:valueType>
+% <pdfaProperty:category>external</pdfaProperty:category>
+% <pdfaProperty:description></pdfaProperty:description>
+% </rdf:li>
+ </rdf:Seq></pdfaSchema:property>
+ </rdf:li>
+ </rdf:Bag>
+ </pdfaExtension:schemas>
+ </rdf:Description>
+ <rdf:Description rdf:about="" xmlns:dc="http://purl.org/dc/elements/1.1/">
+ <dc:format>application/pdf</dc:format>
+\ifx\xmp@PublicationType\@empty\else <dc:type><rdf:Bag><rdf:li\xmp@checklang\xmp@lang@PublicationType>\xmp@PublicationType</rdf:li></rdf:Bag></dc:type>\fi
+\ifx\xmp@Title\@empty\else <dc:title><rdf:Alt><rdf:li\xmp@strictlang\xmp@lang@Title>\xmp@Title</rdf:li></rdf:Alt></dc:title>\fi
+\ifx\xmp@@Author\@empty\else <dc:creator><rdf:Seq><rdf:li\xmp@checklang\xmp@lang@Author>\xmp@@Author</rdf:li></rdf:Seq></dc:creator>\fi
+\ifx\xmp@Publisher\@empty\else <dc:publisher><rdf:Bag><rdf:li\xmp@checklang\xmp@lang@Publisher>\xmp@Publisher</rdf:li></rdf:Bag></dc:publisher>\fi
+\ifx\xmp@Language\@empty\else <dc:language><rdf:Bag><rdf:li>\xmp@Language</rdf:li></rdf:Bag></dc:language>\fi
+\ifx\xmp@Doi\@empty\else <dc:identifier>doi:\xmp@Doi</dc:identifier>\fi
+\ifx\xmp@ISBN\@empty\else <dc:identifier>ISBN:\xmp@ISBN</dc:identifier>\fi
+\ifx\xmp@URL\@empty\else <dc:identifier>URL:\xmp@URL</dc:identifier>\fi
+\ifx\xmp@Copyright\@empty\else <dc:rights><rdf:Alt><rdf:li\xmp@strictlang\xmp@lang@Copyright>\xmp@@Copyright</rdf:li></rdf:Alt></dc:rights>\fi
+\ifx\xmp@Subject\@empty\else <dc:description><rdf:Alt><rdf:li\xmp@strictlang\xmp@lang@Subject>\xmp@Subject</rdf:li></rdf:Alt></dc:description>\fi
+\ifx\xmp@Keywords\@empty\else <dc:subject><rdf:Bag><rdf:li\xmp@checklang\xmp@lang@Keywords>\xmp@Keywords</rdf:li></rdf:Bag></dc:subject>\fi
+\ifx\xmp@Source\@empty\else <dc:source>\xmp@Source</dc:source>\fi
+\ifx\xmp@Coverage\@empty\else <dc:coverage\xmp@checklang\xmp@lang@Coverage>\xmp@Coverage</dc:coverage>\fi
+\ifx\xmp@Date\@empty\else <dc:date><rdf:Seq><rdf:li>\xmp@Date</rdf:li></rdf:Seq></dc:date>\fi
+\ifx\xmp@Contributor\@empty\else <dc:contributor><rdf:Bag><rdf:li\xmp@checklang\xmp@lang@Contributor>\xmp@Contributor</rdf:li></rdf:Bag></dc:contributor>\fi
+\ifx\xmp@Relation\@empty\else <dc:relation><rdf:Bag><rdf:li\xmp@checklang\xmp@lang@Relation>\xmp@Relation</rdf:li></rdf:Bag></dc:relation>\fi
+ </rdf:Description>
+ <rdf:Description rdf:about="" xmlns:prism="http://prismstandard.org/namespaces/basic/2.2/">
+\ifx\xmp@PublicationType\@empty\else <prism:aggregationType\xmp@checklang\xmp@lang@PublicationType>\xmp@PublicationType</prism:aggregationType>\fi
+\ifx\xmp@Journalnumber\@empty\else <prism:issn>\xmp@Journalnumber</prism:issn>\fi
+\ifx\xmp@Volume\@empty\else <prism:volume>\xmp@Volume</prism:volume>\fi
+\ifx\xmp@Issue\@empty\else <prism:number>\xmp@Issue</prism:number>\fi
+\ifx\xmp@CoverDisplayDate\@empty\else <prism:coverDisplayDate\xmp@checklang\xmp@lang@CoverDisplayDate>\xmp@CoverDisplayDate</prism:coverDisplayDate>\fi
+\ifx\xmp@CoverDate\@empty\else <prism:coverDate>\xmp@CoverDate</prism:coverDate>\fi
+\ifx\xmp@Journaltitle\@empty\else <prism:issueName\xmp@checklang\xmp@lang@JournalTitle>\xmp@Journaltitle</prism:issueName>\fi
+\ifx\xmp@Firstpage\@empty\else <prism:pageRange>\xmp@Firstpage-\xmp@Lastpage</prism:pageRange>\fi
+\ifx\xmp@Firstpage\@empty\else <prism:startingPage>\xmp@Firstpage</prism:startingPage>\fi
+\ifx\xmp@Lastpage\@empty\else <prism:endingPage>\xmp@Lastpage</prism:endingPage>\fi
+\ifx\xmp@Doi\@empty\else <prism:doi>\xmp@Doi</prism:doi>\fi
+\ifx\xmp@Doi\@empty\else <prism:url>http://dx.doi.org/\xmp@Doi</prism:url>\fi
+\ifx\xmp@URL\@empty\else <prism:url>\xmp@URL</prism:url>\fi
+ </rdf:Description>
+ <rdf:Description rdf:about=""
+ xmlns:xmp="http://ns.adobe.com/xap/1.0/"
+ xmlns:pdf="http://ns.adobe.com/pdf/1.3/"
+ xmlns:pdfx="http://ns.adobe.com/pdfx/1.3/"
+ xmlns:pdfxid="http://www.npes.org/pdfx/ns/id/">
+ <xmp:CreatorTool>\xmp@CreatorTool</xmp:CreatorTool>
+ <xmp:ModifyDate>\xmp@convDate</xmp:ModifyDate>
+ <xmp:CreateDate>\xmp@convDate</xmp:CreateDate>
+ <xmp:MetadataDate>\xmp@convDate</xmp:MetadataDate>
+ <pdf:Producer>\xmp@Producer</pdf:Producer>
+\ifx\xmp@@Keywords\@empty\else <pdf:Keywords>\xmp@@Keywords</pdf:Keywords>\fi
+ <pdf:Trapped>False</pdf:Trapped>
+\ifnum\xmp@Part<4 <pdf:Version>PDF/X-\xmp@Part</pdf:Version>\fi
+\ifnum\xmp@Part>3 <pdfxid:GTS_PDFXVersion>PDF/X-\xmp@Part\xmp@Conformance</pdfxid:GTS_PDFXVersion>\fi
+ <pdfx:GTS_PDFXVersion>PDF/X-\xmp@Part\xmp@Conformance\ifnum\xmp@Part<4:\xmp@ReleaseDate</pdfx:GTS_PDFXVersion>\else</pdfx:GTS_PDFXVersion>\fi
+\ifnum\xmp@Part<3 <pdfx:GTS_PDFXConformance>PDF/X-\xmp@Part\xmp@Conformance:\xmp@ReleaseDate</pdfx:GTS_PDFXConformance>\fi
+\ifx\xmp@AuthoritativeDomain\@empty\else <pdfx:AuthoritativeDomain><rdf:Bag><rdf:li>\xmp@AuthoritativeDomain</rdf:li></rdf:Bag></pdfx:AuthoritativeDomain>\fi
+\ifx\xmp@Advisory\@empty\else <xmp:Advisory><rdf:Bag><rdf:li\xmp@checklang\xmp@lang@Advisory>\xmp@Advisory</rdf:li></rdf:Bag></xmp:Advisory>\fi
+\ifx\xmp@BaseURL\@empty\else <xmp:BaseURL>\xmp@BaseURL</xmp:BaseURL>\fi
+\ifx\xmp@Identifier\@empty\else <xmp:Identifier><rdf:Bag><rdf:li\xmp@checklang\xmp@lang@Identifier>\xmp@Identifier</rdf:li></rdf:Bag></xmp:Identifier>\fi
+\ifx\xmp@Nickname\@empty\else <xmp:Nickname\xmp@checklang\xmp@lang@Nickname>\xmp@Nickname</xmp:Nickname>\fi
+\ifx\xmp@Thumbnails\@empty\else <xmp:Thumbnails><rdf:Alt><rdf:li>\xmp@Thumbnails</rdf:li></rdf:Alt></xmp:Thumbnails>\fi
+ </rdf:Description>
+ <rdf:Description rdf:about="" xmlns:xmpRights = "http://ns.adobe.com/xap/1.0/rights/">
+\ifx\xmp@Copyright\@empty\else <xmpRights:Marked>\ifx\xmp@Copyrighted\@empty True\else\xmp@Copyrighted\fi</xmpRights:Marked>^^J <xmpRights:UsageTerms><rdf:Alt><rdf:li\xmp@strictlang\xmp@lang@Copyright>\xmp@@Copyright</rdf:li></rdf:Alt></xmpRights:UsageTerms>\fi
+\ifx\xmp@CopyrightURL\@empty\else <xmpRights:WebStatement>\xmp@CopyrightURL</xmpRights:WebStatement>\fi
+\ifx\xmp@Owner\@empty\else <xmpRights:Owner><rdf:Bag><rdf:li\xmp@checklang\xmp@lang@Owner>\xmp@Owner</rdf:li></rdf:Bag></xmpRights:Owner>\fi
+\ifx\xmp@CertificateURL\@empty\else <xmpRights:Certificate>\xmp@CertificateURL</xmpRights:Certificate>\fi
+ </rdf:Description>
+ <rdf:Description rdf:about="" xmlns:xmpMM="http://ns.adobe.com/xap/1.0/mm/">
+ <xmpMM:DocumentID>uuid:\xmp@docid</xmpMM:DocumentID>
+ <xmpMM:InstanceID>uuid:\xmp@instid</xmpMM:InstanceID>
+\ifnum\xmp@Part>3 <xmpMM:RenditionClass>default</xmpMM:RenditionClass>\fi
+\ifnum\xmp@Part>3 <xmpMM:VersionID>1</xmpMM:VersionID>\fi
+ </rdf:Description>
+ </rdf:RDF>
+</x:xmpmeta>
+% padding with 512 space characters to allow easier editing within a PDF
+\paddingline
+\paddingline
+\paddingline
+\paddingline
+%%
+%% End of pdfx.xmp
+%%
+%%
+
+
diff --git a/macros/latex/contrib/pdfx/sample.tex b/macros/latex/contrib/pdfx/sample.tex
new file mode 100644
index 0000000000..392678a63d
--- /dev/null
+++ b/macros/latex/contrib/pdfx/sample.tex
@@ -0,0 +1,77 @@
+%\pdfcompresslevel=0
+%\pdfobjcompresslevel=0
+%\providecommand{\pdfxopt}{x-1a,allxmp,mathxmp}
+\providecommand{\pdfxopt}{a-1b,allxmp,mathxmp}
+%\providecommand{\pdfxopt}{e-1,allxmp,mathxmp}
+%\providecommand{\pdfxopt}{a-1b,ua-1,allxmp,mathxmp}
+% XMP Metadata first
+\begin{filecontents*}{\jobname.xmpdata}
+\Title{Unicode: U₄(ℤ[1/√2, i]). —
+ ASCII: !"'()*+,-./:;<=>?@[]`|#$&~^_.
+ Four escaped symbols: \% \backslash\ \{ \}.
+}
+\Author[de-AT]{Gödel\sep[fr]Escher\sep[de]
+ÅąŅƅDžȅɅ
+ Bach\sep[en-US]
+ U₄(ℤ[1/√2, i]), !"'()*+,-./:;<=>?@[]`|#$&~^_, \% \backslash\ \{ \}}
+\Subject{This is the abstract. It's about ℤ[1/√2, i] and other rings. \mathbf{A\,+\,B \;=\; C*D/\alpha_{i}^{34}\beta}}
+\Keywords{the group U₄\sep and other stuff\sep Some
+ symbols: & # < > \copyright\ 2014\sp{20125621} }
+\Language{en-GB\sep en-US}
+\Copyright{Copyright \copyright\ 2014 \textLF The artist <currently> known as Ƭ̵̬}
+\CopyrightURL{http://www.mathstat.dal.ca/~selinger/copyright.html}
+\Creator{LaTeX + pdfx.sty with \pdfxopt\space option}
+\Source{\jobname.tex}
+\Coverage{PDF standards: PDF/A and PDF/X}
+\Relation{PDF/A\sep PDF/X\sep PDF/UA\sep PDF 2.0}
+\Contributor{\TeX\space Users Group}
+\PublicationType[en-US]{pamphlet}
+\Date{2018-12-25}
+\Date{2019-01-01}
+\Date{2019-04-07}
+\Date{2019-11-08}
+\Date{2019-12-21}
+\Journaltitle{abc \textLF \S \ddag \dots ÀÁÂÃÄ
+%ÅąŅƅDžȅɅ % A0 = 10100000
+ÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖ×ØÙÛÜÝß
+%Ņ
+%àĠŠƠǠȠ † % 85 = 10001010
+%⅀⅁⅒⅕⅘
+% ⠱ ⠲ ⠵ ⠷
+áâãäåæçèéêëìíîïðñòóôõö÷øùúûüýþÿ\P }
+% \dag \ddag \dots \S \P }
+% \textLF \(\mathbf{A}+\mathcal{B} = \mathfrak{C}*\mathsf{D}/\vec{\mathsfbf{E}}\widetilde{ab}\)}
+\end{filecontents*}
+%
+\documentclass{article}
+%\usepackage[utf8]{inputenc}
+%\usepackage[OT1,T1]{fontenc}
+\usepackage{amssymb}
+\usepackage{sansmath}
+\usepackage[\pdfxopt]{pdfx}
+%\usepackage[LY1]{fontenc}
+\usepackage[OT1,T1]{fontenc}
+\usepackage{textcomp,ptmxcomp,tipa,extraipa}
+
+\listfiles
+\tracingstats=2
+\begin{document}
+\noindent
+In this example, only the metadata matters;
+apart from checking accents: {\`a \'e \"u}
+and whether other characters still work consistently:
+
+\dag \ddag \dots \S \P \$
+$\bullet\dots \dag\ddag $
+
+\end{document}
+
+
+Memory usage before: 692&171340; after: 203&171195; still untouched: 4812814
+
+mathxmp
+Memory usage before: 692&183143; after: 203&182998; still untouched: 4800985
+
+allxmp
+Memory usage before: 692&189509; after: 203&189364; still untouched: 4794613
diff --git a/macros/latex/contrib/pdfx/small2e-pdfx.tex b/macros/latex/contrib/pdfx/small2e-pdfx.tex
new file mode 100644
index 0000000000..db895611bb
--- /dev/null
+++ b/macros/latex/contrib/pdfx/small2e-pdfx.tex
@@ -0,0 +1,136 @@
+% This is a small sample LaTeX input file (Version of 10 April 1994)
+%
+% Use this file as a model for making your own LaTeX input file.
+% Everything to the right of a % is a remark to you and is ignored by LaTeX.
+
+% The Local Guide tells how to run LaTeX.
+
+% WARNING! Do not type any of the following 10 characters except as directed:
+% & $ # % _ { } ^ ~ \
+%
+%%
+%% default option for pdfx.sty if not specified on the command-line.
+\providecommand{\pdfxopt}{a-1b}
+%%
+%% Use {filecontents} for the .xmpdata file before input encoding is specified.
+%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\begin{filecontents*}{\jobname.xmpdata}
+% a macro definition, used below
+\pdfxEnableCommands{% simple macro definitions can be provided everything expands to characters
+ \def\RossPete{Ross \& Pete}
+ }
+\Title{Sample LaTeX input file}% *not* set by LaTeX's \title
+\Author{LaTeX project team\sep River Valley Technologies\sep \RossPete}% *not* set by LaTeX's \author
+\Subject{Metadata for PDF/X, PDF/A and PDF/E conforming documents}
+\Keywords{pdfTeX\sep PDF/X-1a\sep PDF/A-1b\sep PDF/E-1}
+\Org{TeX Users Group}
+\CreatorTool{pdfTeX + pdfx.sty with options \pdfxopt}
+\Copyright{\Thanh, \CVR, \RossPete}
+\WebStatement{http://www.tug.org/}% should be URL to copyright statement on the web
+\Volume{latest in 2015}
+\Issue{???}
+\CoverDisplayDate{Special Issue, 2016}
+\CoverDate{2016-01-01}% must be in format YYYY-MM-DD or YYYY-MM
+\Doi{0.0.0.0}%
+\Lastpage{10}
+\Firstpage{1}%
+%\PublicationType{journal}% automatically set by \Journaltitle{?}
+\Journaltitle{TUGboat}%
+\Journalnumber{0896-3207}% ISSN
+%
+% some more macro definitions, used above
+\pdfxEnableCommands{\def\Thanh{H\`an Th\'{\^e} Thanh}\def\CVR{CV Radhakrishnan}}
+%
+% setting the color profile, these reproduce the defaults; use your own, if required
+%
+% RGB is used with PDF/A (4 parameters):
+\setRGBcolorprofile{sRGB_IEC61966-2-1_black_scaled.icc}{sRGB_IEC61966-2-1_black_scaled}{sRGB IEC61966 v2.1 with black scaling}{http://www.color.org}
+%
+% For Adobe Color Profiles, set the directory for your system
+%
+% e.g. on Mac OS X
+% What is it under Windows ?
+%
+\gdef\ColorProfileDir{/Library/Application Support/Adobe/Color/Profiles/Recommended/}
+%
+% For available profiles, see file AdobeColorProfiles.tex
+% For PDF/X-4p or PDF/X-5pg see file AdobeExternalProfiles.tex
+%
+% Now you can use the macros defined in those files:
+ \FOGRAXXXIX
+%
+% or CMYK is used with PDF/X (4 parameters)
+% \setCMYKcolorprofile{\ColorProfileDir coated_FOGRA39L_argl.icc}{Coated FOGRA39}{FOGRA39 (ISO Coated v2 300\%\space (ECI))}{http://www.color.org}
+\end{filecontents*}
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\documentclass{article} % Your input file must contain a \documentclass line and a package+option:
+\usepackage[\pdfxopt]{pdfx}
+%\usepackage[x-1]{pdfx}% for PDF/X-1a:2001
+%\usepackage[x-1a]{pdfx}% for PDF/X-1a:2003
+%\usepackage[x-3]{pdfx}% for PDF/X-3:2002
+%\usepackage[x-302]{pdfx}% for PDF/X-3:2002
+%\usepackage[x-303]{pdfx}% for PDF/X-3:2003
+%\usepackage[x-4]{pdfx}% for PDF/X-4
+%\usepackage[x-5g]{pdfx}% for PDF/X-5g
+%\usepackage[e-1]{pdfx}% for PDF/E-1
+%\usepackage[a-1b]{pdfx}% for PDF/A-1b
+%\usepackage[a-2b]{pdfx}% for PDF/A-2b
+%\usepackage[a-2u]{pdfx}% for PDF/A-2u
+%\usepackage[a-3b]{pdfx}% for PDF/A-3b
+%\usepackage[a-3u]{pdfx}% for PDF/A-3u
+%% PDF/A-1a, -2a, -3a requires fully tagged PDFs
+%\usepackage[a-1a]{pdfx}% for PDF/A-1a
+%\usepackage[a-2a]{pdfx}% for PDF/A-2a
+%\usepackage[a-3a]{pdfx}% for PDF/A-3a
+%% These later versions are not fully implemented yet.
+%\usepackage[x-4p]{pdfx}
+%\usepackage[x-5n]{pdfx}
+%\usepackage[x-5pg]{pdfx}
+%% PDF/VT requires special document structure, using DParts
+%\usepackage[vt-1]{pdfx}
+%\usepackage[vt-2]{pdfx}
+%\usepackage[vt-2s]{pdfx}
+%\usepackage[x-2]{pdfx}% obsolete/withdrawn
+%%% or one of these, or similar: in a later version
+%%\usepackage[a-3b,e-1,x-4]{pdfxmult}
+%%\usepackage[a-3b,e-1,x-3,vt-1]{pdfxmult}
+%%\usepackage[none]{pdfxmult}
+
+%\usepackage[utf8]{inputenc}
+%\usepackage[infoshow]{tracefnt}
+%\usepackage[T1]{fontenc}
+%\usepackage[hyperref,cmyk]{xcolor}
+%\hypersetup{xurlbordercolor=black,xlinkbordercolor=black,linkbordercolor=xlinkbordercolor}
+
+\begin{document} % plus the \end{document} command at the end.
+
+\section{Simple Text}\label{sec1}% % This command makes a section title.
+%
+Words are separated by one or more spaces. Paragraphs are separated by
+one or more blank lines. The output is not affected by adding extra
+spaces or extra blank lines to the input file.
+
+Double quotes are typed like this: ``quoted text''.
+Single quotes are typed like this: `single-quoted text'.
+
+Long dashes are typed as three dash characters---like this.
+
+Emphasized text is typed like this: \emph{this is emphasized}.
+Bold text is typed like this: \textbf{this is bold}.
+
+\subsection{A Warning or Two} % This command makes a subsection title.
+
+If you get too much space after a mid-sentence period---abbreviations
+like etc.\ are the common culprits)---then type a backslash followed by
+a space after the period, as in this sentence.
+
+Remember, don't type the 10 special characters (such as dollar sign and
+backslash) except as directed! The following seven are printed by
+typing a backslash in front of them: \$ \& \# \% \_ \{ and \}.
+The manual tells how to make other symbols.
+
+\bigskip\vfil
+\rightline{\footnotesize Jump back to Section~}%\tracingall\ref{sec1}.}
+
+\end{document} % The input file ends with this command.
diff --git a/macros/latex/contrib/pdfx/src/Armenian-example-UTF8.png b/macros/latex/contrib/pdfx/src/Armenian-example-UTF8.png
new file mode 100644
index 0000000000..a463eb1b3a
--- /dev/null
+++ b/macros/latex/contrib/pdfx/src/Armenian-example-UTF8.png
Binary files differ
diff --git a/macros/latex/contrib/pdfx/src/MANIFEST b/macros/latex/contrib/pdfx/src/MANIFEST
new file mode 100644
index 0000000000..5a872ffa1e
--- /dev/null
+++ b/macros/latex/contrib/pdfx/src/MANIFEST
@@ -0,0 +1,18 @@
+Armenian-example-UTF8.png
+Makefile
+TL-POL-meta.png
+TL-RU-LICRs.png
+TL-RU-metadata.png
+TL-RU-toc.png
+arm-start.tex
+armtex-meta.png
+koi8-example.tex
+koi8-example2.tex
+latin2-example.tex
+math-assign5.png
+pdfx.dtx
+pdfx.ins
+pdfx.sty
+rvdtx.sty
+text89.def
+usage-meta.png
diff --git a/macros/latex/contrib/pdfx/src/Makefile b/macros/latex/contrib/pdfx/src/Makefile
new file mode 100644
index 0000000000..7681e19012
--- /dev/null
+++ b/macros/latex/contrib/pdfx/src/Makefile
@@ -0,0 +1,42 @@
+##
+## Makefile
+##
+##
+##
+##
+##
+
+file=pdfx
+
+
+all: pdf out index changes
+ make pdf
+
+out:
+ if [ -f $(file).links ] ; then cp $(file).links tmp.links; fi ;
+# sed 's/BOOKMARK/fxmark/g;' tmp.out > x.out; mv x.out tmp.out ;
+
+pdf:
+ pdflatex -recorder $(file).dtx
+
+index:
+ makeindex -s gind.ist -o $(file).ind $(file).idx
+
+changes:
+ makeindex -s gglo.ist -o $(file).gls $(file).glo
+
+xview:
+ mupdf -r 100 $(file).pdf &>/dev/null
+
+view:
+ acroread $(file).pdf
+
+ins:
+ latex pdfx.ins
+
+diff:
+ diff $(file).sty ../$(file).sty |less
+
+copy:
+ cp $(file).sty ../
+
diff --git a/macros/latex/contrib/pdfx/src/TL-POL-meta.png b/macros/latex/contrib/pdfx/src/TL-POL-meta.png
new file mode 100644
index 0000000000..0401996fc7
--- /dev/null
+++ b/macros/latex/contrib/pdfx/src/TL-POL-meta.png
Binary files differ
diff --git a/macros/latex/contrib/pdfx/src/TL-RU-LICRs.png b/macros/latex/contrib/pdfx/src/TL-RU-LICRs.png
new file mode 100644
index 0000000000..baab67fd52
--- /dev/null
+++ b/macros/latex/contrib/pdfx/src/TL-RU-LICRs.png
Binary files differ
diff --git a/macros/latex/contrib/pdfx/src/TL-RU-metadata.png b/macros/latex/contrib/pdfx/src/TL-RU-metadata.png
new file mode 100644
index 0000000000..dfc60c4423
--- /dev/null
+++ b/macros/latex/contrib/pdfx/src/TL-RU-metadata.png
Binary files differ
diff --git a/macros/latex/contrib/pdfx/src/TL-RU-toc.png b/macros/latex/contrib/pdfx/src/TL-RU-toc.png
new file mode 100644
index 0000000000..b5cbdfc3ce
--- /dev/null
+++ b/macros/latex/contrib/pdfx/src/TL-RU-toc.png
Binary files differ
diff --git a/macros/latex/contrib/pdfx/src/arm-start.tex b/macros/latex/contrib/pdfx/src/arm-start.tex
new file mode 100644
index 0000000000..6f06c8c79a
--- /dev/null
+++ b/macros/latex/contrib/pdfx/src/arm-start.tex
@@ -0,0 +1,59 @@
+|%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%|\\
+|%%|\\
+|%% This is the `manual.tex' file (ArmTeX manual in Armenian).|\\
+| ... |\\
+|%%|\\
+|%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%|\\
+|\providecommand{\pdfxopts}{a-2u,armxmp,AR8xmp}|\\
+|\immediate\write18{rm \jobname.xmpdata}|\\
+|\begin{filecontents*}{\jobname.xmpdata}|\\
+|\Title{ArmTeX is a system for writing in Armenian with Plain TeX and/or LaTeX(2e).\textLF|\\
+| \textARM{\ArmTeX` {\aroff\TeX}-um ev {\aroff\LaTeX}-um Hayeren Lezvov Grelu Hamakarg}}|\\
+|\Author{Sergue\"i Dachian \textARM{--- Sergey DASHYAN}\sep Arnak Dalalyan |\\
+| \textARM{--- Ar'nak DALALYAN}\sep Vardan Akopian \textARM{--- Vardan HAKOBYAN}}|\\
+|\Copyright{\textcopyright 1997\textendash 2013 ArmTeX 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.}|\\
+|\CopyrightURL{http://www.latex-project.org/lppl.txt}|\\
+|\Subject{WARNING! This is the (almost unchanged) manual of the version 2.0. It will be |\\
+| replaced by the manual of the version 3.0 before this beta release becomes official. |\\
+| A (temporary) brief description of the new features of \latArmTeX~3.0 can be found at |\\
+| the end of the ``readme.txt'' file. \textLF|\\
+{\catcode`\|=12 \color{verbcolor}\texttt{ \string\textLF\string\textARM%
+ \{OWSHADROWT'YO|WN:}} |Sa tarberak 2.0-i (grethe anphophox) dzer'narkn e': Ayn |\\
+| kphoxarinvi tarberak 3.0-i dzer'narkov naxqan ays beta tho\-ghark\-man pashtonakanacowmu': |\\
+| \ArmTeX~3.0-i nor hnaravoruthyunneri (g'a\-ma\-na\-ka\-vor) hamar'ot nkaragrowmu' (angleren|\\
+| lezvov) karogh eq gu't\armuh nel~``}readme.txt\textARM{'' fayli verjum:}|\\
+| \textLF\textLF\textARM{Hamakargu' o'gtagorc'elu hamar bavakan e' karoghanal ayn kanchel dzer|\\
+| fayleric, tirapetel tar'qatesakneru' phoxogh hramannerin ev i\-ma\-nal the inchpes petq e' |\\
+| nermuc'el teqstu' steghnasharic: Ays gor\-c'o\-ghu\-thyun\-ne\-ru' nkaragrvac' en hajordogh |\\
+| ereq bag'innerum:}}|\\
+|\Keywords{\textARM{si\-ra\-marg}\sep \textARM{bu'\armuh nuthyun}\sep \textARM{Se\armuh van}|\\
+| \sep \textARM{tare\*verj}\sep \textARM{``mat''}\sep \textARM{``mat"}\sep \textARM{d\*zzal}|\\
+| \sep \textARM{t\*haj'}\sep \textARM{t\*has}}|\\
+|\CoverDisplayDate{1 June 1999 (\textARM{1-u' hunisi 1999 th.})}|\\
+|\Creator{pdfTeX + pdfx.sty with \pdfxopts\space options}|\\
+|\pdfxEnableCommands{\let\sl\empty%|\\
+| \xdef\sectAtitle{\textARM{Nerac'uthyun}}%|\\
+| \xdef\sectBtitle{\textARM{Tar'eri ev ketadrakan nshanneri greladzevu'}}%|\\
+| ... |\\
+| \xdef\sectFtitle{\textARM{Arm\TeX-i phophoxman patmuthyunu'}}%|\\
+|}|\\
+|\end{filecontents*}|\\
+| |\\
+|\documentclass[12pt,a4paper]{article}|\\
+|\usepackage[\pdfxopts]{pdfx}|\\
+|\hypersetup{colorlinks,allcolors=blue}|\\
+| ... |\\
+|\title{\ArmTeX$\,$` $\,${\aroff \TeX}-um ev {\aroff \LaTeX}-um Hayeren Lezvov |\\
+| Grelu Hamakarg\\ {\normalsize\aroff (\latArmTeX: a System for Writing in Armenian |\\
+| with \TeX\ and \LaTeX)}}|\\
+|\author{ ... }%|\\
+|\date{1-u' hunisi 1999 th.}|\\
+| ... |\\
+|\begin{document}|\\
+|\maketitle|\\
+| ... |\\
+|%\section{\sectAtitle}%{Nerac'uthyun}}|\\
+|\pdfxBookmark{\section}{\sectAtitle}{Nerac'uthyun}|\\
+| |
diff --git a/macros/latex/contrib/pdfx/src/armtex-meta.png b/macros/latex/contrib/pdfx/src/armtex-meta.png
new file mode 100644
index 0000000000..b66dc60e8a
--- /dev/null
+++ b/macros/latex/contrib/pdfx/src/armtex-meta.png
Binary files differ
diff --git a/macros/latex/contrib/pdfx/src/koi8-example.tex b/macros/latex/contrib/pdfx/src/koi8-example.tex
new file mode 100644
index 0000000000..fd2322edb9
--- /dev/null
+++ b/macros/latex/contrib/pdfx/src/koi8-example.tex
@@ -0,0 +1,36 @@
+|% $Id: texlive-ru.tex 34060 2014-05-16 19:52:41Z boris $|\\
+|% |\\
+|%\def\Status{1}|\\
+|\providecommand{\pdfxopts}{a-2u,KOIxmp}|\\
+|\providecommand{\thisyear}{2015}|\\
+|%\immediate\write18{rm \jobname.xmpdata}% uncomment for Unix-based systems |\\
+|\begin{filecontents*}{\jobname.xmpdata}|\\
+|\Title{\textKOI{ } TeX Live \textemdash \thisyear}|\\
+|\Author{\textKOI{: }}|\\
+|\Subject{\textKOI{ } |\\
+| TeX Live \textKOI{--- }TeX\textKOI{ } GNU/Linux |\\
+| \textKOI{ }UNIX\textKOI{}, MacOSX\textKOI{ Windows.}}|\\
+|\Keywords{TeX Live \thisyear\sep \textKOI{}\sep \textKOI{}\sep \TeX}|\\
+|\CoverDisplayDate{\textKOI{} \thisyear}|\\
+|\CoverDate{2015-05-06}|\\
+|\Copyrighted{False}|\\
+|\Copyright{Public Domain}|\\
+|\CopyrightURL{http://tug.org/texlive/}|\\
+|\Creator{pdfTeX + pdfx.sty with options \pdfxopts }|\\
+|\end{filecontents*}|\\
+|\documentclass{article}|\\
+|\usepackage[\pdfxopts]{pdfx}[2016/03/09]|\\
+|\PassOptionsToPackage{obeyspaces}{url}|\\
+|\let\tldocrussian=1 % for live4ht.cfg |\\
+|\usepackage{cmap}|\\
+|\usepackage{tex-live}|\\
+|\usepackage[koi8-r]{inputenc}|\\
+|\usepackage[russian]{babel}|\\
+| ... |\\
+|\begin{document}|\\
+|\title{%|\\
+| {\huge \textit{ \protect\TL{} "--- \thisyear}}%|\\
+|}|\\
+|\author{: \\[3mm]|\\
+| \url{http://tug.org/texlive/}}|\\
+|\date{ \thisyear}|
diff --git a/macros/latex/contrib/pdfx/src/koi8-example2.tex b/macros/latex/contrib/pdfx/src/koi8-example2.tex
new file mode 100644
index 0000000000..6c8e451ed5
--- /dev/null
+++ b/macros/latex/contrib/pdfx/src/koi8-example2.tex
@@ -0,0 +1,45 @@
+|% $Id: texlive-ru.tex 34060 2014-05-16 19:52:41Z boris $|\\
+|% |\\
+|%\def\Status{1}|\\
+|\providecommand{\pdfxopts}{a-2u,KOIxmp}|\\
+|\providecommand{\thisyear}{2015}|\\
+|%\immediate\write18{rm \jobname.xmpdata}% uncomment for Unix-based systems |\\
+|\begin{filecontents*}{\jobname.xmpdata}|\\
+|\Title{\IeC {\CYRR }\IeC {\cyru }\IeC {\cyrk }\IeC {\cyro }\IeC {\cyrv }\IeC {\cyro }|\\
+| \IeC {\cyrd }\IeC {\cyrs }\IeC {\cyrt }\IeC {\cyrv }\IeC {\cyro } \IeC {\cyrp }\IeC {\cyro }|\\
+| \IeC {\cyrl }\IeC {\cyrsftsn }\IeC {\cyrz }\IeC {\cyro }\IeC {\cyrv }\IeC {\cyra }\IeC {\cyrt }|\\
+| \IeC {\cyre }\IeC {\cyrl }\IeC {\cyrya } TeX Live \textemdash \thisyear}|\\
+|\Author{\IeC {\CYRR }\IeC {\cyre }\IeC {\cyrd }\IeC {\cyra }\IeC {\cyrk }\IeC {\cyrt }|\\
+| \IeC {\cyro }\IeC {\cyrr }: \IeC {\CYRK }\IeC {\cyra }\IeC {\cyrr }\IeC {\cyrl } |\\
+| \IeC {\CYRB }\IeC {\cyre }\IeC {\cyrr }\IeC {\cyrr }\IeC {\cyri }|\\
+|\Keywords{TeX Live \thisyear\sep \IeC {\CYRS }\IeC {\cyrt }\IeC {\cyrr }\IeC {\cyru }|\\
+| \IeC {\cyrk }\IeC {\cyrt }\IeC {\cyru }\IeC {\cyrr }\IeC {\cyra }\sep \IeC {\cyru }|\\
+| \IeC {\cyrs }\IeC {\cyrt }\IeC {\cyra }\IeC {\cyrn }\IeC {\cyro }\IeC {\cyrv }\IeC {\cyrk }|\\
+| \IeC {\cyri }\sep \TeX}|\\
+|\Subject{\IeC {\CYRV } \IeC {\cyrerev }\IeC {\cyrt }\IeC {\cyro }\IeC {\cyrm } \IeC {\cyrd }|\\
+| \IeC {\cyro }\IeC {\cyrk }\IeC {\cyru } ... |\\
+| ... |\\
+|\CoverDisplayDate{\IeC {\CYRM }\IeC {\cyra }\IeC {\cyrishrt } 2015}|\\
+|\CoverDate{2015-05-06}|\\
+|\Copyrighted{False}|
+\endinput
+|\Copyright{Public Domain}|\\
+|\CopyrightURL{http://tug.org/texlive/}|\\
+|\Creator{pdfTeX + pdfx.sty with options \pdfxopts }|\\
+|\end{filecontents*}|\\
+|\documentclass{article}|\\
+|\usepackage[\pdfxopts]{pdfx}[2016/03/09]|\\
+|\PassOptionsToPackage{obeyspaces}{url}|\\
+|\let\tldocrussian=1 % for live4ht.cfg |\\
+|\usepackage{cmap}|\\
+|\usepackage{tex-live}|\\
+|\usepackage[koi8-r]{inputenc}|\\
+|\usepackage[russian]{babel}|\\
+| ... |\\
+|\begin{document}|\\
+|\title{%|\\
+| {\huge \textit{ \protect\TL{} "--- \thisyear}}%|\\
+|}|\\
+|\author{: \\[3mm]|\\
+| \url{http://tug.org/texlive/}}|\\
+|\date{ \thisyear}|
diff --git a/macros/latex/contrib/pdfx/src/latin2-example.tex b/macros/latex/contrib/pdfx/src/latin2-example.tex
new file mode 100644
index 0000000000..80ba7874dc
--- /dev/null
+++ b/macros/latex/contrib/pdfx/src/latin2-example.tex
@@ -0,0 +1,46 @@
+|% iso8859-2|\\
+|% $Id: texlive-pl.tex, v. 53 2015/05/17|\\
+|% TeX Live documentation.|\\
+|% Originally written by Sebastian Rahtz and Michel Goossens,|\\
+|% now maintained by Karl Berry and others.|\\
+|% Polish translation and additions by Staszek Wawrykiewicz|\\
+|% (with a little help from my friends, while my guitar gently weeps ;-)|\\
+|% Public domain.|\\
+|% ----|\\
+|% UWAGA dla recenzentw/tumaczy: %%! to moje komentarze (StaW)|\\
+|% |\\
+|\providecommand{\pdfxopts}{a-2u,LATxmp}|\\
+|\providecommand{\thisyear}{2015}|\\
+|\begin{filecontents*}{\jobname.xmpdata}|\\
+|\Title{Przewodnik po TeX Live \thisyear}|\\
+|\Author{Redakcja: Karl Berry\sep \textLII{tumaczenie: Staszek Wawrykiewicz}}|\\
+|\Subject{\textLII{Niniejsza dokumentacja opisuje oprogramowanie \TeX\ Live |\\
+| -- dystrybucj \TeX-a wraz z~programami pomocniczymi, dostpn dla rnych wersji Unix,|\\
+| w~tym GNU/Linux, MacOSX i~Cygwin, oraz Windows.}\textLF\textLF Documentation originally|\\
+| written by Sebastian Rahtz and Michel Goossens, now maintained by Karl Berry and others.}|\\
+|\Keywords{TeX Live \thisyear\sep documentation\sep installation\sep \TeX}|\\
+|\Copyright{Public domain}\Copyrighted{False}|\\
+|\CopyrightURL{http://tug.org/texlive/}|\\
+|\CoverDisplayDate{Maj \thisyear}|\\
+|\CoverDate{\thisyear-05-17}|\\
+|\Creator{pdfTeX + pdfx.sty with options \pdfxopts, from TeX Live 2016}|\\
+|\end{filecontents*}|\\
+|% |\\
+|\documentclass{article}|\\
+|\let\tldocenglish=0 % for live4ht.cfg|\\
+|\let\textsl\textit|\\
+|\usepackage[\pdfxopts]{pdfx}[2016/04/13]|\\
+|\PassOptionsToPackage{obeyspaces}{url}|\\
+|\PassOptionsToPackage{breaklinks,colorlinks,linkcolor=hypercolor,citecolor=hypercolor,%|\\
+| urlcolor=hypercolor,filecolor=hypercolor,bookmarksopen,hyperindex}{hyperref}|\\
+|\hypersetup{breaklinks,colorlinks,allcolors=hypercolor}|\\
+|\usepackage{tex-live}|\\
+|\usepackage{polski} %% for PL|\\
+|\usepackage[latin2]{inputenc} %% for PL|\\
+|\usepackage[T1]{fontenc}|\\
+|...|\\
+|\begin{document}|\\
+|\title{\huge \textit{Przewodnik po \protect\TL{} 2015}}|\\
+|\author{Redakcja: Karl Berry; tumaczenie: Staszek Wawrykiewicz \\[3mm]|\\
+| \url{http://tug.org/texlive/}}|\\
+|\date{Maj 2015}|
diff --git a/macros/latex/contrib/pdfx/src/math-assign5.png b/macros/latex/contrib/pdfx/src/math-assign5.png
new file mode 100644
index 0000000000..b9dbf11cde
--- /dev/null
+++ b/macros/latex/contrib/pdfx/src/math-assign5.png
Binary files differ
diff --git a/macros/latex/contrib/pdfx/src/pdfx.dtx b/macros/latex/contrib/pdfx/src/pdfx.dtx
new file mode 100644
index 0000000000..ffdb92ee01
--- /dev/null
+++ b/macros/latex/contrib/pdfx/src/pdfx.dtx
@@ -0,0 +1,5634 @@
+% \iffalse meta-comment
+%
+% File: pdfx.dtx
+%
+% Copyright (c) 2019, CV Radhakrishnan <cvr@river-valley.org>,
+% Han The Thanh <thanh@river-valley.org>,
+% Ross Moore <ross.moore@mq.edu.au>,
+% Peter Selinger <selinger@mathstat.dal.ca>
+%
+% This file may be distributed and/or modified under the conditions
+% of the LaTeX Project Public License, either version 1.2 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.2 or later is part of all distributions of LaTeX
+% version 1999/12/01 or later.
+%
+% \fi
+%
+% \CheckSum{6309}
+% \iffalse
+%
+%<*driver>
+\pdfcompresslevel 9
+\providecommand{\pdfxopt}{a-2u}
+\providecommand{\lastyear}{2018}
+\providecommand{\thisyear}{2019}
+\begin{filecontents*}{./\jobname.xmpdata}
+\Title{Generation of PDF/X- and PDF/A-compliant PDFs with pdfTeX \textemdash\ pdfx.sty}
+\Author{\CVR\sep \Thanh\sep Ross Moore\sep Peter Selinger}
+\Subject{This package supports generation of PDF/X-, PDF/A- and PDF/E-compliant documents, in most of their variants, using pdfLaTeX, LuaLaTeX and XeLaTeX.}
+\Keywords{PDF/X-, PDF/A- and PDF/E-compliance\sep Multilingual Metadata\sep installation\sep \TeX Live \thisyear}
+\PublicationType{manual}
+\Contributor{Norbert Preining: 'colorprofiles' package}
+\Copyright{Public domain.}
+\Copyrighted{False}
+\CopyrightURL{http://tug.org/texlive/}
+\CoverDisplayDate{March \thisyear}
+\CoverDate{\thisyear-03-10}
+\CreatorTool{LaTeX + pdfx.sty with option \pdfxopt, from TeX Live \thisyear}
+\Date{2017-05-18\sep 2017-06-23\sep 2018-11-29\sep 2018-12-22\sep 2019-02-08\sep 2019-03-10}
+\Advisory{An earlier version of this documentation was published as: TUGboat 36, No.2, pp.136\textendash 142 (2015)}
+\Advisory{v1.6: Added XMP support for PDF/UA-1. Added more Metadata fields and Language support.}
+\Advisory{v1.6: Default RGB and CMYK profiles now require the colorprofiles.sty package.}
+\Relation{Requires the colorprofiles package for RGB and CMYK default profiles.}
+\Advisory{v1.6: Access more profiles, incl. to pdfaPilot's color profile folders.}
+\Advisory{v1.6: Revised glyphtounicode.sty to use variation selectors.}
+\Advisory{v1.6: altered maps to PUA codepoints.}
+\Advisory{v1.6: added more glyphs via glyphtounicode-ntx.tex }
+\Advisory{v1.6: Support for 8-bit Hebrew encodings, some Arabic and Devanagari.}
+\Advisory{v1.6: Updated documentation, incl. for LaTeX changes.}
+\Advisory{v1.6.1: Fixed issue with ifthen package; improved Metadata with LuaTeX and XeTeX.}
+\Advisory{v.1.6.1: Flexibility with page boxes for PDF/X.}
+\Advisory{v.1.6.2: Fixed passing of options to xcolor, and some glyphtounicode values.}
+\Advisory{v.1.6.2: Fixed encoding issue. Extra warning when colorprofiles.tex is missing.}
+\Advisory{v.1.6.3: Properly fixed encoding issue; supports \string\pdfomitcharset\ primitive.}
+\Advisory{v.1.6.3: Reference to veraPDF validation software; additions to glyphtounicode-ntx.tex.}
+\Advisory{v.1.6.3: Patched \string\mathaccentV\ to output accents after the base character.}
+\pdfxEnableCommands{%
+ \def\CVR{C.V. Radhakrishnan}\def\Thanh{H\`an Th\eee Thanh}%
+ \def\eee{^^c3^^aa^^cc^^81 }}
+\end{filecontents*}
+\PassOptionsToPackage{dvipsnames,svgnames}{xcolor}
+\documentclass[a4paper]{ltxdoc}
+\usepackage[\pdfxopt]{pdfx}
+\usepackage{rvdtx}
+\usepackage{graphicx}
+\usepackage[latin10]{inputenc}
+\input text89.def
+\usepackage[T1]{fontenc}
+\hypersetup{citecolor=blue}
+\pdfstringdefDisableCommands{\def\thinspace{}}
+\newcommand{\fixmd}{${}^{\mathrm f}$}
+\newcommand{\starmd}{${}^{\ast}$}
+\EnableCrossrefs
+\CodelineIndex
+\RecordChanges
+\begin{document}
+ \DocInput{\jobname.dtx}
+ \PrintChanges
+ \PrintIndex
+\end{document}
+%</driver>
+% \fi
+%
+% \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{pdfx.dtx}
+%
+% \DoNotIndex{\newcommand,\newenvironment}
+%
+% \DoNotIndex{\def,\edef,\gdef,\xdef,\global,\long,\let}
+% \DoNotIndex{\expandafter,\string,\the,\ifx,\else,\fi}
+% \DoNotIndex{\csname,\endcsname,\relax,\begingroup,\endgroup}
+% \DoNotIndex{\DeclareTextCommand,\DeclareTextCompositeCommand}
+% \DoNotIndex{\space,\@empty,\special,\@nil,\advance\@nnil,\z@,\@@mod}
+% \DoNotIndex{\\,\@gobble,\@@,\@fornoop,\@fortmp,\@ifundefined,\@firstoftwo,\@secondoftwo}
+% \DoNotIndex{\@tempcnta,\@tempcntb,\@tempboxa,\ifnot@empty,\@this,\@firstofone}
+% \DoNotIndex{\{,\},\alph,\bgroup,\dp,\ht,\kern,\egroup}
+% \DoNotIndex{\do,\end,\HN,\ifcase,\ifnum,\IfFileExists,\ifvmode}
+% \DoNotIndex{\ignorespaces,\immediate,\input,\item,\jobname}
+% \DoNotIndex{\leavevmode,\loop,\repeat,\makeatletter,\makeatother}
+% \DoNotIndex{\meaning,\newcounter,\next,\or,\par,\renewcommand}
+% \DoNotIndex{\renewcommand,\renewenvironment,\stepcounter}
+% \DoNotIndex{\Tg,\thepage,\unskip,\write,\advance,\{,\}}
+% \DoNotIndex{\@ifpackageloaded,\@ifclassloaded,\@pdfcreationdate,\@pdfcreator}
+% \DoNotIndex{\@pdfmoddate,\AtBeginDocument,\catcode,\DeclareOption}
+% \DoNotIndex{\endinput,\endlinechar,\errmessage,\everyeof,\futurelet}
+% \DoNotIndex{\Hy@DisableOption,\Hy@UseMaketitleInfos,\hypersetup}
+% \DoNotIndex{\inputencoding,\InputIfFileExists,\NeedsTeXFormat}
+% \DoNotIndex{\newif,\noexpand,\obeyspaces,\PackageError,\PDF@FinishDoc}
+% \DoNotIndex{\pdfcatalog,\pdfcreationdate,\pdfgeninterwordspace}
+% \DoNotIndex{\pdfinterwordspace,\pdfinterwordspaceoff,\pdfgentounicode}
+% \DoNotIndex{\pdfinfo,\pdfinterwordspaceon,\pdflastobj,\pdfmapline}
+% \DoNotIndex{\pdfmdfivesum,\pdfminorversion,\pdfobj,\pdfobjcompresslevel}
+% \DoNotIndex{\pdfpageattr,\pdfresetpageorigin,\pdfstringdef}
+% \DoNotIndex{\pdftexbanner,\ProcessOptions,\ProvidesPackage,\RequirePackage}
+% \DoNotIndex{\scantokens,\typeout,\vrule,\wd}
+%
+% \changes{v1.00}{2008/12/01}{Initial commit to the CVS.}
+% \changes{v1.01}{2008/12/10}{glyphtounicode-cmr.tex included with the package.}
+% \changes{v1.3}{2008/12/01}{Fix copyright in xmp files.}
+% \changes{v1.5.4}{2015/02/28}{Fixed timezone bug; Unicode support; more
+% PDF variants; added color profiles.}
+% \changes{v1.5.5}{2015/03/23}{Support for PDF/X-4p and PDF/X-5pg
+% with external color profiles.}
+% \changes{v1.5.6}{2016/02/05}{Suppressed `dummy-space' font warning;
+% removed spurious '?' in XMP packets; improved handling of Color Profiles;
+% ensure Hy@pdfatrue when building PDF/A, for link flags;
+% properly enables xcolor conversion of color models.}
+% \changes{v1.5.7}{2016/02/17}{Removed UTF-8 characters that appear in
+% the documentation only, within comments in the package source,
+% but result in a validation failure. Language support in XMP metadata.
+% Added macros for Windows and Mac system color profile directories.}
+% \changes{v1.5.8}{2016/05/03}{MediaBox, TrimBox, etc. derived from
+% the paperheight, paperwidth. Improved language support, incl. KOI8-R
+% encoded cyrillics, Armenian OT6, and LGR Greek encoding, incl. polytonic Greek.
+% All the encodings Latin-1--9 are supported for upper 8-bit characters.
+% Fixed the quoted file-name problem, evident with LuaTeX.
+% Method to generate correct bookmarks with non-active (transliterated) input.
+% Added support for XeLaTeX, improvements with LuaTeX. Updated documentation.}
+% \changes{v1.5.82}{2017/05/12}{%
+% Adjusted to changes in the LaTeX core, affecting macros for composite
+% commands; incl. \texttt{\textbackslash textsuperscript} and others.}%
+% \changes{v1.5.83}{2017/05/16}{Improved support for XeLaTeX and LuaLaTeX.}%
+% \changes{v1.5.84}{2017/05/18}{Fully expand options for hyperref. Better support
+% for extended IPA letters and modifiers. Adjusted release versions and dates.}%
+% \changes{v1.5.85}{2017/06/23}{Fixed bugs, and fully implemented L8U as
+% a pseudo-encoding; renamed L8U files into the form *-penc.def }%
+% \changes{v1.6}{2018/11/18}{Added XMP support for PDF/UA-1.
+% Added more Metadata fields and Language support.
+% Default RGB and CMYK profiles now require the colorprofiles.sty package.
+% Added file CallasColorProfiles.tex .
+% Revised glyphtounicode.sty to use variation selectors, altered maps to PUA
+% codepoints; added more glyphs via glyphtounicode-ntx.tex .
+% Support for 8-bit Hebrew encodings, some Arabic and Devanagari.
+% Updated documentation, incl. for LaTeX changes.
+% }%
+% \changes{v1.6.1}{2018/12/22}{Fixed issue with ifthen package;
+% improved Metadata with LuaTeX and XeTeX. Flexibility with page boxes for PDF/X.}%
+% \changes{v1.6.2}{2019/01/04}{Fixed passing of options to xcolor, and some glyphtounicode values.}%
+% \changes{v1.6.3}{2019/02/27}{Fixed encoding issues; support for new pdfomitcharset primitive;
+% reference to veraPDF validation software; additions to glyphtounicode-ntx.tex.}%
+% \title{Generation of PDF/X- and PDF/A-\penalty-200 compliant PDFs with \pdftex --- \texttt{pdfx.sty}}
+% \date{2019/02/27}
+% \version{1.6.3}
+% \keywords{PDF, PDF/A, PDF/X, pdf\TeX, \LaTeX, Multilingual Metadata}
+% \author{C.\,V.\,Radhakrishnan, \Thanh, Ross Moore {\upshape\small
+% and} Peter Selinger}
+% \contact{\texttt{[cvr,thanh]@river-valley.org},\\%
+% \texttt{ross.moore@mq.edu.au}, \texttt{selinger@mathstat.dal.ca}\hss}
+%
+% \maketitle
+%
+% \StopEventually{}
+%
+% \section[Introduction]{Introduction}
+%
+% This package\footnote{An earlier version of this documentation
+% was published as \cite{pdfx}. All the changes since then have been developed
+% and coded by the 3rd-listed author.}
+% currently supports generation of PDF/X-, PDF/A- and PDF/E-compliant
+% documents, using \pdftex, in most of their variants;
+% see the complete list in Section~\ref{ssec-options} below.
+% As of \TeX\,Live 2016 it now also works with Lua\LaTeX\ and Xe\LaTeX,
+% when using appropriate command-line options\footnote{%
+% The required invokation is:\quad
+% |xelatex --shell-escape -output-driver="xdvipdfmx -z 0" <filename>.tex |}, but
+% with some limitations --- see Sections~\ref{sssec-xetex} and \ref{sssec-luatex}.
+% By `supports', we mean that the package provides correct and sufficient
+% means to declare that a document conforms with a stated PDF variant
+% (PDF/X, PDF/A, PDF/E, PDF/VT, PDF/UA, etc.) along with the version and/or
+% level of conformance.
+% This package also allows appropriate Metadata and Color Profile
+% to be specified, according to the requirements of the PDF variant.
+%
+% Metadata elements, most of which must ultimately be written as XML
+% using the UTF-8 encoding, is provided via a file named |\jobname.xmpdata|,
+% for the running \LaTeX\ job. Without such a file, providing some required
+% information as well as a large range of optional data, a fully validating
+% PDF file cannot be achieved. The PDF can be created, having the correct
+% visual appearance on all pages, but it will not pass validation checks.
+% Sections~\ref{ssec-metadata} and \ref{ssec-multi} describe
+% how this file should be constructed.
+%
+% \medskip
+% What this package \emph{does not do} is to check for all the details
+% of document structure and type of content that may be required
+% (or restricted) within a PDF variant. For example, PDF/VT \cite{PDFVT} requires
+% well-structured parts, using Form XObject sections tagged as `/DPart'.
+% Similarly PDF/A-1a (and 2a and 3a) \cite{PDFA,PDFA2,PDFA3} require
+% a fully `Tagged PDF', including a detailed structure tagging which
+% envelops the complete contents of the document, as does also PDF/UA \cite{PDF-UA}.
+% This is beyond the current version of \LaTeX\ engines, as commonly shipped.
+% So while this package provides enough to meet the declaration,
+% metadata and font-handling aspects for these PDF/A variants,
+% it is not sufficient to produce fully conforming PDFs.
+% However, with extra \pdftex-based software or macro coding that \emph{is} capable
+% of producing `Tagged PDF', this package can be used as part of
+% the overall workflow to produce fully conforming documents.
+%
+%
+% \subsection{PDF standards}\label{ssec-standards}
+%
+% PDF/X and PDF/A are umbrella terms used to denote several ISO
+% standards \cite{PDFX,PDFX3,PDFX1a,PDFX4,PDFX5,PDFA,PDFA2,PDFA3}
+% that define different subsets of the PDF standard \cite{PDF17,ISO32000}.
+% The objective of PDF/X is to facilitate graphics exchange between
+% document creator and printer and therefore, has all requirements
+% related to printing. For instance, in PDF/X, all fonts need to be
+% embedded and all images need to be CMYK or spot colors. PDF/X-2 and
+% PDF/X-3 accept calibrated RGB and CIELAB colors along with all other
+% specifications of PDF/X.
+% Since 2005 other variants of PDF/X have emerged, as extra effects
+% (such as layering and transparency) have been supported within the PDF
+% standard itself. The full range of versions and conformance supported
+% in this package is discussed below in Section~\ref{ssec-options}.
+%
+% PDF/A defines a profile for archiving PDF documents, which ensures
+% the documents can be reproduced in the exact same way in years to
+% come. A key element to achieving this is that PDF/A documents
+% are 100\% self-contained. All the information needed to display the
+% document in the same manner every time is embedded in the file.
+% A PDF/A document is not permitted to be reliant on information from
+% external sources. Other restrictions include avoidance of
+% audio/video content, JavaScript and encryption.
+% Mandatory inclusion of fonts, color profile and standards-based metadata
+% are absolutely essential for PDF/A.
+% Later versions allow for use of image compression and file attachments.
+%
+% PDF/E is an ISO standard \cite{PDFE} intended for documents used in engineering workflows.
+% PDF/VT \cite{PDFVT} allows for high-volume customised form printing, such as utility bills.
+% PDF/UA (`Universal Accessibility') has emerged as a standard \cite{PDF-UA,PDFUA1,PDFUABSI}
+% supporting Assistive Technologies, incorporating web-accessibility guidelines (WCAG)
+% for electronic documents.
+% In future, PDF/H may emerge for health records and medical-related
+% documents. Other applications can be envisaged.
+% Declarations and Metadata are supported for the first three of these.
+% The others are the subject of further work; revised versions of this
+% package can be expected in later years.
+%
+% More complete descriptions of these standards and their usage can be
+% found on Wikipedia pages~\cite{wikiPDF}. These pages also include
+% comprehensive links to web resources, guides, commentaries, discussions
+% and whatever else is relevant to how the standards have been established
+% and how they can be used.
+%
+% \section[Usage]{Usage}\label{sec-usage}
+%
+% The package can be loaded with the command:
+% \begin{decl}
+% \defmacro{usepackage}|[<option>]{pdfx}|
+% \end{decl}
+% where the options are as follows.
+%
+% \subsection{Package options}\label{ssec-options}
+%
+% \subsubsection{PDF/A options}
+%
+% PDF/A is an ISO standard~\cite{PDFA,PDFA2,PDFA3} intended for long-term archiving of
+% electronic documents. It therefore emphasizes self-containedness and
+% reproducibility, as well as machine-readable metadata. The PDF/A
+% standard has three conformance levels `a', `b', and `u'. Level
+% `a' is the strictest, but is not yet fully implemented by the
+% |pdfx| package. Conformance level `u' has the same requirements as
+% level `b', but with the additional requirement that all text in
+% the document must have a Unicode mapping. However, the |pdfx|
+% package produces such Unicode mappings even in level `b' files.
+% The standard also has three different versions 1, 2, and 3, which
+% were standardized in 2005, 2011 and 2012, respectively. Earlier
+% versions contain a subset of the features of later versions, so for
+% maximum portability, it is preferable to use a lower-numbered
+% version, when the extra features allowed in higher versions are not used.
+% There is no conformance level `u' in version 1 of the standard.
+% Thus for many typical uses of PDF/A, it is sufficient to use PDF/A-1b.
+%
+% \begin{itemize}
+% \item |a-1a|: generate PDF/A-1a. Experimental, not fully implemented.
+% \item |a-1b|: generate PDF/A-1b.
+% \item |a-2a|: generate PDF/A-2a. Experimental, not fully implemented.
+% \item |a-2b|: generate PDF/A-2b.
+% \item |a-2u|: generate PDF/A-2u.
+% \item |a-3a|: generate PDF/A-3a. Experimental, not fully implemented.
+% \item |a-3b|: generate PDF/A-3b.
+% \item |a-3u|: generate PDF/A-3u.
+% \end{itemize}
+% By `Experimental, not fully implemented' here we mean primarily that
+% the document structure, as required for `Tagged PDF', is not handled
+% by this package. Using other \pdftex-based software that \emph{is}
+% capable of producing such complete tagging, conforming documents
+% can indeed be produced.
+%
+% \subsubsection{PDF/E options}
+%
+% PDF/E is an ISO standard~\cite{PDFE} intended for documents used in engineering
+% workflows. There is only one version of the PDF/E standard so far,
+% and it is called PDF/E-1.
+%
+% \begin{itemize}
+% \item |e-1|: generate PDF/E-1.
+% \item |e|: same as |e-1|.
+% \end{itemize}
+%
+% \subsubsection{PDF/UA options}
+%
+% PDF/UA is an ISO and ANSI standard~\cite{PDF-UA,PDFUABSI} intended for making
+% structured documents readable and navigable using Assistive Technology;
+% e.g., screen-readers, Braille keyboards and such-like.
+% Documents prepared this way can be easily saved in other formats which
+% preserve the structure, such as XML, HTML, and (Microsoft) Word-based formats.
+%
+% \begin{itemize}
+% \item |ua-1|: generate PDF/UA-1.
+% \item |ua|: same as |ua-1|.
+% \end{itemize}
+%
+% \subsubsection{PDF/VT options}
+%
+% PDF/VT is an ISO standard intended as an exchange format for
+% variable and transactional printing, and is an extension of the
+% PDF/X-4 standard. The standard specifies three PDF/VT conformance
+% levels. Level 1 is for single-file exchange, level 2 is for
+% multi-file exchange, and level 2s is for streamed delivery.
+% Currently, none of the PDF/VT conformance levels are fully
+% implemented by the |pdfx| package.
+%
+% \begin{itemize}
+% \item |vt-1|: generate PDF/VT-1, based on PDF/X-4. Experimental, not fully implemented
+% \item |vt-2|: generate PDF/VT-2, based on PDF/X-5pg. Experimental, not fully implemented.
+% \item |vt-2s|: generate PDF/VT-2s. Experimental, not fully implemented.
+% \end{itemize}
+% By `Experimental, not fully implemented' here we mean primarily that
+% the structuring of a document into `/DPart' sections, as Form XObjects,
+% is not handled by this package.
+% This \emph{is} possible with current \pdftex\ software,
+% but not yet in a way that lends itself easily to full automation, due to
+% requirements of knowing the internal object number of certain internal
+% PDF constructs. All the other aspects: PDFInfo declaration, Metadata
+% and Color Profile, of the PDF/VT variants are correctly handled.
+%
+% \subsubsection{PDF/X options}
+%
+% PDF/X is an ISO standard intended for graphics interchange. It
+% emphasizes printing-related requirements, such as embedded fonts and
+% color profiles. The PDF/X standard has a large number of variants
+% and conformance levels. The basic variants are X-1, X-1a,
+% X-3, X-4, and X-5. (Note that a revised version of the X-2 standard
+% was published in 2003 but withdrawn as an ISO standard in 2011,
+% basically due to lack of interest in using it).
+% The PDF/X-1a standard exists in revisions of 2001 and 2003,
+% the PDF/X-3 standard exists in revisions of 2002 and 2003,
+% and the PDF/X-4 and PDF/X-5 standards exist in revisions of 2008 and 2010.
+% Moreover, some of these standards have a `p' version, which permits the
+% use of an externally supplied color profile (instead of an embedded one),
+% and/or a `g' version, which permits the use of external graphical
+% content. Moreover, PDF/X-5 has an `n' version, which extends
+% PDF/X-4p by permitting additional `Custom' color spaces other than Grayscale,
+% RGB, and CMYK. For many typical uses of PDF/X, it is sufficient to
+% use PDF/X-1a.
+%
+% \begin{itemize}
+% \item |x-1|: generate PDF/X-1; now obsolete, doesn't validate.
+% \item |x-1a|: generate PDF/X-1a. Options |x-1a1| and |x-1a3| are
+% also available to specify PDF/X-1a:2001 or PDF/X-1a:2003 explicitly.
+% \item |x-2|: generate PDF/X-2; unpublished, doesn't validate.
+% \item |x-3|: generate PDF/X-3. Options |x-302| and |x-303| are
+% also available to specify PDF/X-3:2002 or PDF/X-3:2003 explicitly.
+% \item |x-4|: generate PDF/X-4. Options |x-408| and |x-410| are
+% also available to specify PDF/X-4:2008 or PDF/X-4:2010 explicitly.
+% \item |x-4p|: generate PDF/X-4p. Options |x-4p08| and |x-4p10| are
+% also available to specify PDF/X-4p:2008 or PDF/X-4p:2010 explicitly.
+% \item |x-5g|: generate PDF/X-5g. Options |x-5g08| and |x-5g10| are
+% also available to specify PDF/X-5g:2008 or PDF/X-5g:2010 explicitly.
+% \item |x-5n|: generate PDF/X-5n. Options |x-5n08| and |x-5n10| are
+% also available to specify PDF/X-5n:2008 or PDF/X-5n:2010 explicitly.
+% Experimental, not fully implemented.
+% \item |x-5pg|: generate PDF/X-5pg. Options |x-5pg08| and |x-5pg10| are
+% also available to specify PDF/X-5pg:2008 or PDF/X-5pg:2010 explicitly.
+% \end{itemize}
+%
+% \subsubsection{Other options}
+%
+% These options are experimental and should not normally be used.
+%
+% \begin{itemize}
+% \item |useBOM|: generate an explicit UTF-8 byte-order marker in the
+% embedded XMP metadata, and make the XMP packet writable. Neither
+% of these features are required by the PDF/A standard, but there
+% exist some PDF/A validators (reportedly |validatepdfa.com|) that
+% seem to require them. Note: the implementation of this feature is
+% experimental and may break with future updates to the |xmpincl|
+% package.
+% \item |noBOM|: do not generate the optional byte-order marker. (default)
+% \item |noerr|: avoids stopping when making PDF/X with an RGB profile,
+% and at other unusual situations; e.g., PDF/UA without also PDF/A.
+% \item |pdf12|: use PDF 1.2, overriding the version specified by the
+% applicable standard.\\This may produce a non-standard-conforming PDF file.
+% \item |pdf13|: use PDF 1.3, overriding the version specified by the
+% applicable standard.\\This may produce a non-standard-conforming PDF file.
+% \item |pdf14|: use PDF 1.4, overriding the version specified by the
+% applicable standard.\\This may produce a non-standard-conforming PDF file.
+% \item |pdf15|: use PDF 1.5, overriding the version specified by the
+% applicable standard.\\This may produce a non-standard-conforming PDF file.
+% \item |pdf16|: use PDF 1.6, overriding the version specified by the
+% applicable standard.\\This may produce a non-standard-conforming PDF file.
+% \item |pdf17|: use PDF 1.7, overriding the version specified by the
+% applicable standard.\\This may produce a non-standard-conforming PDF file.
+% \item |nocharset|: do not generate the Charset entry for fonts (\pdftex\ only).
+% \item |usecharset|: generate the Charset entry for fonts (\pdftex\ only).
+% \end{itemize}
+% The latter two options affect the value of the |\pdfomitcharset| primitive,
+% added to \pdftex\ in 2019, due to differing requirements for PDF/A-1
+% and other PDF/A versions. Indeed use of the |/Charset| entry for a font
+% is deprecated entirely for PDF 2.0~\cite{PDF20} and later.
+%
+% \subsubsection{XMP language options}\label{ssec-xmplang}
+%
+% These options allow for characters in alphabets other than those
+% used for English and Western European languages to be used
+% within the |.xmpdata| file (see Section~\ref{ssec-metadata}),
+% supported through \LaTeX\ character representation macros.
+% \begin{itemize}
+% \item |latxmp|: extended Latin blocks, |Ux0180|--|Ux024F|
+% and |Ux1E00|--|Ux1EFF|
+% \item |armxmp|: armenian letters and ligatures, |Ux0530|--|Ux058F|,
+% via macros |\armyba|, |\armfe|, |\armcomma|, etc.
+% \item |cyrxmp|: cyrillic letters and accents, |Ux0400|--|Ux04FF|
+% and |Ux0500|--|Ux0527| via macros |\cyra|, |\CYRN|, etc.
+% \item |grkxmp|: greek letters and diacritics, |Ux0370|--|Ux03FF|
+% and |Ux1F00|--|Ux1FFF| via macros |\textalpha|, |\textPi|, etc.
+% \item |hebxmp|: some hebrew letters and marks, |Ux05C0|--|Ux05F4|
+% via macros |\hebalef|, |\hebtav|, |\doubleyod|, etc.
+% \item |arbxmp|: some arabic letters and marks, |Ux0600|--|Ux06FF|
+% via macros |\hamza|, |\alef|, |\sukun|, etc.
+% \item |vnmxmp|: vietnamese letters and accents, |Ux1EA0|--|Ux1EFF|
+% via macros |\abreve|, |\uhorn|, |\ECIRCUMFLEX|, etc.
+% \item |ipaxmp|: phonetic extensions, |Ux0250|--|Ux02AF|
+% and |Ux1D00|--|Ux1DFF|
+% \item |mathxmp|: mathematical letters, symbols, operators
+% arrows, alphanumeric forms.
+% \item |allxmp|: all of the above, as well as those listed next;
+% used primarily for testing compatibility with other packages.
+% \end{itemize}
+% The characters supported by these options include those supported
+% by |hyperref.sty| via the |PDFdoc| encodings (|PD1| and |PU|)
+% for inclusion in PDF files. Extra support is provided for math
+% alphabets. For Armenian, the macros defined by Arm\TeX\ are supported.
+%
+% \medskip
+% Further options allow direct (enclosed) input of upper 8-bit
+% characters, from encodings such as Latin-1--Latin-9, KOI8-R,
+% LGR (Greek), ArmSSCI8, and a few more.
+% Use of these requires a carefully controlled parsing regime.
+% Here we list the package options that declare such content
+% may be present in the |.xmpdata| file.
+% A detailed account of how these are used is given
+% in~Section~\ref{ssec-multi} (``Multilingual Metadata'').
+% \begin{itemize}
+% \item |LATxmp|: support for direct use of the upper-range characters
+% (byte codes 160--255) for input encodings Latin1--Latin9, for
+% Latin-based alphabets as used in European countries and elsewhere.
+% This defines parser macros |\textLAT|, |\textLII|, \dots, |\textLIX|.
+% All support from |latxmp| is loaded also.
+% \item |KOIxmp|: support for direct use of cyrillic letters by use
+% of upper-range characters (byte codes 148--255) under input
+% encodings KOI8-R and KOIR8-RU, using |\textKOI| as parser macro.
+% All support from |cyrxmp| is loaded also.
+% \item |LGRxmp|: support for greek letters entered using either
+% the LGR input transliteration of ASCII characters, or the ISO-8859-7
+% encoding of upper-range characters (byte codes 160--255),
+% or a combination of both, using |\textLGR| as parser macro.
+% All support from |grkxmp| is loaded also.
+% \item |AR8xmp|: support for armenian letters entered using the
+% Arm\TeX~2.0 input transliteration of ASCII characters, or the
+% ArmSCII8 encoding of upper-range characters (byte codes 160--255),
+% or a combination of both, using |\textARM| as parser macro.
+% All support from |armxmp| is loaded also.
+% \item |HEBxmp|: support for hebrew letters entered using either
+% LHE input transliteration of ASCII characters, or the CP1255, CP862
+% or ISO-8859-8 (HE8) encoding of upper-range characters (byte codes 160--255),
+% or a combination of these using |\textLHE|, |\textHEBO|, |\textHEB| as parser macros.
+% All support from |hebxmp| is loaded also.
+% \end{itemize}
+% These `parser' options have received limited testing, so please
+% report any mistakes in the UTF-8 output that you may encounter.
+%
+% \subsection{Data file for metadata}\label{ssec-metadata}
+%
+% As mentioned above, standards-compliant PDF documents require
+% document-level metadata to be included.
+% This, known as an `XMP packet'~\cite{XMP-spec,XMP-ISO},
+% is like having a library catalog card included within the PDF itself. It is an unencrypted
+% portion of the PDF file, with data expressed in Extensible Markup Language (XML),
+% using Resource Description Format (RDF~\cite{RDF}) syntax, encoded as UTF-8
+% so readable by any text editing software on any modern computing platform.
+%
+% Some advantages of doing this are clear.
+% \begin{itemize}
+% \item For a librarian: cataloguing information is available within the file itself,
+% without the need to search explicitly in the visual layout of the content or elsewhere;
+% \item All actual libraries cataloguing this PDF can have consistent information;
+% including web-based indexing sites such as Google.
+% \item For the author(s): who can specify the kind of information most appropriate
+% to help readers understand the nature and purpose of the document.
+% \end{itemize}
+%
+% The |pdfx| package builds the XMP metadata from information supplied via a special data file
+% called |\jobname.xmpdata|. Here, |\jobname| is usually the basename of the document's main
+% |.tex| file. For example, if your document source is in the file |main.tex|,
+% then the metadata must be in a file called |main.xmpdata|.
+% None of the individual metadata fields are mandatory, but for most documents, it makes sense
+% to specify at least the title and the author. For more technical aspects of metadata
+% and its uses, consult the work of the Dublin Core Initiative~\cite{DC} and PRISM~\cite{PRISM}.
+%
+% Here is a short |.xmpdata| file:
+% \begin{decl}[]
+% |\Title{Baking through the ages}|\\
+% |\Author{A. Baker\sep C. Kneader}|\\
+% |\Language{en-GB}|\\
+% |\Keywords{cookies\sep muffins\sep cakes}|\\
+% |\Publisher{Baking International}|
+% \end{decl}
+% You should note that multiple authors and keywords have been separated
+% by |\sep|. This |\sep| macro serves a technical purpose and is
+% permitted within the |\Author|, |\Keywords|, and |\Publisher| fields,
+% as well as some others. See \S\ref{mdfields} below for a complete listing
+% of the supported author-supplied metadata fields.
+%
+% After processing, the local directory contains a file named such as
+% |pdfa.xmpi| or |pdfe.xmpi| or |pdfx.xmpi| according to the PDF variant desired.
+% This file is the complete XMP Metadata packet.
+% It can be checked for validity, using an online validator, such as at
+% \href{http://www.pdflib.com/knowledge-base/xmp-metadata/free-xmp-validator/}{www.pdflib.com}.
+% \textsf{veraPDF}~\cite{veraPDF} is Open Source software providing validation for PDF/A,
+% and other checkers useful in a PDF/A production setting.
+%
+% \textbf{Warning}: The |\jobname.xmpdata| file may be included in the
+% main document source, within a |{filecontents*}| environment,
+% provided this comes \emph{before} the |\documentclass| command, as follows.
+% \begin{decl}[]
+% |\begin{filecontents*}{\jobname.xmpdata}|\\
+% | \Title{Baking through the ages}|\\
+% | \Author{A. Baker\sep C. Kneader}|\\
+% | \Language{en-GB}|\\
+% | \Keywords{cookies\sep muffins\sep cakes}|\\
+% | \Publisher{Baking International}|\\
+% |\end{filecontents*}|\\
+% |\documentclass[11pt,a4paper]{article}|\\
+% |...|
+% \end{decl}
+% Including the metadata with the \LaTeX\ source is very convenient.
+% Having it at the top of the file also brings attention to it, placing emphasis on
+% the desirability of including metadata, and keeping it accurate while the main
+% content of the document is subject to changes or revision.
+% Macro definitions can also occur prior to the |\documentclass| command,
+% including any that may be needed within the metadata.
+% An example of this is apparent in Figure~\ref{koi8-code} occurring later.
+%
+% However, this ordering is also extremely important, else any non-ascii UTF-8 byte
+% sequences can become active characters and expand upon data being written out,
+% rather than remaining as inactive bytes.
+% If you edit the metadata supplied this way, remember to remove the
+% existing copy of |\jobname.xmpdata| file before the next processing run,
+% as \LaTeX\ does not write a new copy of the file when it exists on disk already,
+% within the current working directory or elsewhere that \LaTeX\ may find.
+% In development or testing situations the filename may need to be given as
+% |./\jobname.xmpdata|, else an older version may be loaded in error.
+%
+% Experienced users/programmers can employ the \verb|\write18| mechanism%
+% \footnote{If you don't already know what this is, they you probably
+% should not try using it |:-)|.}, together with the |--shell-escape| command-line
+% option, to automatically execute a shell command that removes |\jobname.xmpdata|
+% on every (or on selected) processing runs.
+% This is only useful when the metadata changes, for whatever reason.
+%
+% \medskip
+% Other places for the |{filecontents*}| environment can work,
+% but \emph{only} when it contains \emph{no} non-ascii UTF-8 byte sequences.
+% Since 2018, with default
+% See Section~\ref{ssec-symbols} below for more information on the macros
+% that can be safely used within |.xmpdata| metadata files.
+%
+% \subsection{List of supported metadata fields}\label{mdfields}
+%
+% Following is a complete list of user-definable metadata fields currently supported,
+% separated into particular groupings.
+% Each command is accompanied by the specific XML tagged field name (with namespace)
+% that is placed into the document-level Metadata packet, as well as the kind of information
+% being conveyed.
+% More may be added in the future.
+% These commands can \emph{only} be used within the |.xmpdata| file.
+%
+% Most commands take an optional argument specifying the natural language,
+% using RFC5646 (BCP 47)~\cite{BCP47} codes, in which the metadata field is given.
+% Languages for multiple entries can use e.g., |\sep[de] ...|.
+% Only those fields requiring a specific format (e.g. dates) do \emph{not}
+% support language specifiers; these are indicated with \fixmd.
+% Fields allowing more than one value are indicated with \starmd.
+% Multiple values may be given as separate instances of the macro, or as a single
+% instance with the values delimited by |\sep|, as in the example above.
+%
+% \subsubsection{General information:}
+%
+% \begin{itemize}
+% \item \starmd|\Author|: \hfill (|dc:creator|)\\
+% the document's human author(s). Separate multiple authors with |\sep|.
+% \item \starmd|\Title|: \hfill (|dc:title|)\\
+% the document's title; multiple language versions are supported.
+% \item \starmd\fixmd|\Language|: \hfill (|dc:language|)\\
+% list of languages used within the document.
+% \item \starmd|\Keywords|: \hfill (|dc:subject|)\\
+% list of keywords, separated with |\sep|.
+% \item \starmd|\Publisher|: \hfill (|dc:publisher|)\\
+% the publisher(s). Multiple pieces in a publishing chain should be separated with |\sep|.
+% \item \starmd|\Subject|: \hfill (|dc:description|)\\
+% the abstract, or short description.
+% \end{itemize}
+%
+% \subsubsection{Copyright information:}\label{sssec-copy}
+%
+% \begin{itemize}
+% \item |\Copyright|: \hfill (|dc:rights|)\\
+% a copyright statement.
+% \item \fixmd|\CopyrightURL|: \hfill (|xmpRights:WebStatement|)\\
+% location of a web page describing the owner
+% and/or rights statement for this document.
+% \item \fixmd|\Copyrighted|: \hfill (|xmpRights:Marked|)\\
+% `True' if the document is copyrighted, and `False' if it isn't.
+% This is automatically set to `True' if either |\Copyright| or |\CopyrightURL| is specified,
+% but this can be overridden.
+% For example, if the copyright statement is `Public Domain',
+% then specify also |\Copyrighted{False}|.
+% \item \starmd|\Owner|: \hfill (|xmpRights:Owner|)\\
+% specifies the owner(s) of the document or resource.
+% \item \fixmd|\CertificateURL|: \hfill (|xmpRights:Certificate|)\\
+% gives the URL to online proof of ownership, if available.
+% \end{itemize}
+%
+% \subsubsection{more Dublin Core metadata:}\label{sssec-dc}
+% From version 1.6 of |pdfx.sty|, the following fields can be used to provide a greater
+% range of information to be specified as metadata.
+% \begin{itemize}
+% \item \starmd|\Contributor|: \hfill (|dc:contributor|)\\
+% contributor(s) other than author(s) of the PDF document.
+% \item |\Coverage|: \hfill (|dc:coverage|)\\
+% statement about the extent or scope of the document's contents.
+% \item \starmd\fixmd|\Date|: \hfill (|dc:date|)\\
+% date(s) when something significant occurred relating to the resource (e.g., version changes);
+% must be in ISO date format |YYYY-MM-DD| or |YYYY-MM|.
+% \item \fixmd|\PublicationType|: \hfill (|dc:type|)\\
+% The type of publication. If specified, must be one of `book', `catalog', `feed', `journal',
+% `magazine', `manual', `newsletter', `pamphlet'. This is automatically set to `journal'
+% if |\Journaltitle| is specified (see below), but can be overridden.
+% \item \starmd|\Relation|: \hfill (|dc:relation|)\\
+% how this PDF or resource relates to other document(s) or resources.
+% \item \fixmd|\Source|: \hfill (|dc:source|)\\
+% specifies a source document from which the PDF is derived.
+% \item \fixmd|\Doi|: \hfill (|dc:identifier|, |prism:doi|, |prism:url|)\\
+% Digital Object Identifier (DOI) for the document, without the leading `doi:'.
+% \item \fixmd|\ISBN|: \hfill (|dc:identifier|)\\
+% the ISBN for the PDF itself, or Book/Monograph of which it is part.
+% \item \fixmd|\URLlink|: \hfill (|dc:identifier|, |prism:url|)\\
+% gives a URL address for an online copy of the document.
+% \end{itemize}
+%
+% The remaining Dublin Core field |(dc:format)| is always set to `|application/pdf|'.
+%
+% \subsubsection{Publication information:}\label{sssec-publ}
+% The following macros allow for inclusion of publication related metadata fields,
+% as specified by PRISM~\cite{PRISM} to meet publishing requirements.
+% \begin{itemize}
+% \item |\Journaltitle|: \hfill (|prism:issueName|)\\
+% The title of the journal in which the document was published.
+% \item \fixmd|\Journalnumber|: \hfill (|prism:issn|)\\
+% The ISSN for the journal/series in which the document was published.
+% \item \fixmd|\Volume|: \hfill (|prism:volume|)\\
+% Journal volume.
+% \item \fixmd|\Issue|: \hfill (|prism:number|)\\
+% Journal issue/number.
+% \item \fixmd|\Firstpage|: \hfill (|prism:startingPage|, |prism:pageRange|)\\
+% First page number of the published version of the document.
+% \item \fixmd|\Lastpage|: \hfill (|prism:endingPage|, |prism:pageRange|)\\
+% Last page number of the published version of the document.
+% \item |\CoverDisplayDate|: \hfill (|prism:coverDisplayDate|)\\
+% Date on the cover of the journal issue, as a human-readable text string.
+% \item \fixmd|\CoverDate|: \hfill (|prism:coverDate|)\\
+% Date on the cover of the journal issue, in a format suitable for storing in a database
+% field with a `date' data type; e.g. |YYYY-MM|, or |YYYY-MM-DD|.
+% \end{itemize}
+% This is an area which can be expanded, to deal with more kinds
+% of publication and metadata fields.
+% The ExtensionSchema \cite{TN0009} technique is used to add new fields.
+% Examples of this can be found in the template files |pdfx.xmp|, |pdfa.xmp|, |pdfe.xmp|.
+%
+% \subsubsection{Backward Compatibility}
+% The following macros are also recognised, for backward compatibility
+% with earlier versions of the package.
+% \begin{itemize}
+% \item \starmd|\AuthoritativeDomain|: \hfill (|pdfx:AuthoritativeDomain|)\\
+% specifies extra names (e.g., of companies) associated to the existence of the PDF or resource.
+% \item |\Creator|: \hfill (|xmp:CreatorTool|)\\
+% synonymous with |\CreatorTool| which is usually handled automatically anyway,
+% but can be over-ridden.
+% \item |\Org|: synonymous with |\Publisher|.
+% \item |\WebStatement|: synonymous with |\CopyrightURL|.
+% \end{itemize}
+%
+% \subsubsection{more XMP metadata:}\label{sssec-xmp}
+%
+% \begin{itemize}
+% \item \starmd|\Advisory|: \hfill (|xmp:Advisory|)\\
+% noteworthy information; e.g., revision data or changes.
+% \item \fixmd|\BaseURL|: \hfill (|xmp:BaseURL|)\\
+% base-URL for relative hyperlinks within the PDF.
+% \item \starmd|\Identifier|: \hfill (|xmp:Identifier|)\\
+% more advance forms than (|dc:identifier|); see~\cite{XMP-spec,XMP-ISO}.
+% \item |\Nickname|: \hfill (|xmp:Nickname|)\\
+% a pseudonym or `nickname' as a colloquial identifier for the resource.
+% \item \starmd|\Thumbnails|: \hfill (|xmp:Thumbnails|)\\
+% allows small page images to be associated with each page of the PDF.
+% An appropriate XML-compatible representation is required for such images.
+% \end{itemize}
+%
+% \subsubsection{PDF standards metadata:}\label{sssec-pdfstd}
+% The following metadata fields are generated automatically by the \LaTeX\ engine.
+% Some are dependent on the particular loading options that specify the desired compliance
+% with a PDF standard, and level of conformance.
+% There are no separate user-macros to alter these.
+% The first three dates are usually set to be identical.
+%
+% \begin{itemize}
+% \item (|xmp:CreateDate|) : creation date\&time of the PDF.
+% \item (|xmp:MetadataDate|) : creation date\&time of the Metadata for the PDF.
+% \item (|xmp:ModifyDate|) : date\&time of latest modifications to the PDF.
+% \item (|xmpMM:DocumentID|) : unique identifier for the PDF, based on MD5 sum.
+% \item (|xmpMM:InstanceID|) : unique identifier based on creation date\&time.
+% \item (|pdf:Producer|) : \TeX\ engine used; either `Lua\TeX', `Xe\TeX', `\pdftex'.
+% \item (|pdf:Trapped|) : currently always set to `False'.
+% \item (|pdfaid:part|) : |1|, |2| or |3| for PDF/A-?
+% \item (|pdfaid:conformance|) : |a|, |b| or |u| for PDF/A-??
+% \item (|pdfuaid:part|) : currently |1| for PDF/UA-1
+% \item (|pdfe:ISO_PDFEVersion|) : currently |1| for PDF/E-1
+% \item (|pdf:Version|) : |PDF/X-1|, |PDF/X-2| or |PDF/X-3|
+% \item (|pdfx:GTS_PDFXVersion|) : e.g., |PDF/X-1a:2003| up to PDF/X-3 ;
+% but no year for PDF/X-4 and PDF/X-5 variants
+% \item (|pdfx:GTS_PDFXConformance|) : e.g., |PDF/X-1a:2003| up to PDF/X-2
+% \item (|pdfxid:GTS_PDFXVersion|) : e.g., |PDF/X-4p:2008| after PDF/X-3
+% \item (|pdfvtid:GTS_PDFVTVersion|) : e.g., |PDF/VT-2s| for PDF/VT
+% \item (|pdfvtid:GTS_PDFVTModDate|) : same as |xmp:ModifyDate|
+% \end{itemize}
+%
+% \subsection{Symbols permitted in metadata}\label{ssec-symbols}
+%
+% Within the metadata, all printable ASCII characters except
+% |\|, |{|, |}| and |%| represent themselves. Also, all printable Unicode characters
+% from the basic multilingual plane (i.e., up to code point U+FFFF)
+% can be used directly with the UTF-8 encoding.
+% (Please note: encodings other than UTF-8 are not supported in the metadata,
+% except as arguments to `parser-macros'; see Section~\ref{ssec-xmplang}).
+% Consecutive whitespace characters are combined into a single space.
+% Whitespace after a macro such as |\copyright|, |\backslash|, or |\sep| is ignored.
+% Blank lines are not permitted.
+% Moreover, the following markup can be used:
+%
+% \begin{itemize}
+% \item ``|\ |'': a literal space (for example after a macro)
+% \item |\%|: a literal |%|
+% \item |\{|: a literal |{|
+% \item |\}|: a literal |}|
+% \item |\backslash|: a literal backslash |\|
+% \item |\copyright|: the copyright symbol \textcopyright
+% \end{itemize}
+% The macro |\sep| is permitted within |\Author|, |\Keywords|,
+% |\Publisher|, and other macros marked with \starmd\ above.
+% It's purpose is to separate multiple authors, keywords, etc.
+% to appear as separate list items appropriately and consistently
+% in the different ways that such information is represented
+% within the PDF file.
+% The package takes care of this when |\sep| is used.
+% For example, in the XMP metadata, it expands as |</rdf:li><rdf:li>| tagging.
+%
+% \subsubsection{PDF Info strings}\label{sssec-info}
+% When |\sep| is not used within its argument, the metadata from |\Title|,
+% |\Author| and |\Keywords| is also included in the PDF |/Info| dictionary.
+% When this is the case, validation for the declared standard
+% will occur only if the corresponding |/Info| item and XMP metadata field
+% convert to exactly the same Unicode string.
+% This cannot happen when |\sep| is used, so the |/Info| items are then not populated.
+%
+% Unfortunately not all PDF browsers (in particular, older ones and much Apple software)
+% give ready access to the XMP metadata packet. Some authors want to see everything
+% using e.g., the Unix/Linux command: |pdfinfo -enc UTF-8 |. In fact there is the |-meta|
+% option to get the complete metadata packet (in UTF-8 encoding).
+% This can give more than what one wants, so use it as follows:
+% \begin{decl}[]
+% pdfinfo -meta <filename>.pdf \textbar\ grep 'dc:'
+% \end{decl}
+% to extract just the Dublin Core metadata fields.
+%
+% Another possibility is to \emph{not} use |\sep| with multiple authors and/or keywords.
+% Instead replace it with simply `|, |'. We do not recommend doing this, as more sophisticated
+% metadata tools will see the result as a single value, rather than multiple authors, say.
+% Different language codes cannot be applied when done this way.
+% However, some authors may find this a satisfactory solution that suits their own tools.
+%
+%
+% \subsection{Macros permitted in metadata}\label{ssec-macros}
+%
+% Other \TeX\ macros actually can be used, provided the author is very
+% careful and not ask for too-complicated \TeX\ or \LaTeX\ expansions
+% into internal commands or non-character primitives; basically just accents,
+% macros for Latin-based special characters, and simple textual replacements,
+% perhaps with a simple parameter. A special macro |\pdfxEnableCommands{...}|
+% is provided to help resolve difficulties that may arise.
+%
+% Here is an example\footnote{ Other use cases are discussed with regard to
+% Figures~\ref{arm-code} and \ref{math-wflow}.} of the use of |\pdfxEnableCommands|,
+% which occurs with the name of one of our authors {(H\`an Th\'{\^e} Thanh)}
+% due to the doubly-accented letter \'{\^e}.
+% It is usual to define a macro such as: |\def\thanh{H\`an Th\'{\^e} Thanh}|.
+% In previous versions of the |pdfx| package, use of such a macro
+% within the |.xmpdata| file, in the |Copyright| information say,
+% could result in the accent macros expanding into internal primitives, such as
+% \begin{decl}[]
+% | H\unhbox \voidb@x \bgroup \let \unhbox \voidb@x \setbox \@tempboxa ... |
+% \end{decl}
+% going on for many lines. This clearly has no place within the XMP metadata.
+% To get around this, one could try using simplified macro definitions
+% \begin{decl}[]
+% | \pdfxEnableCommands{|\\
+% | \def\`#1{#1^^cc^80}\def\'#1{#1^^cc^81}\def\^#1{#1^^cc^82}}|
+% \end{decl}
+% \removelastskip\noindent
+% where the |^^cc^80|, |^^cc^81|, |^^cc^82| cause \TeX\ to generate the correct
+% UTF-8 bytes for `combining accent' characters.
+%
+% This works fine for metadata fields that appear just in the XMP packet.
+% However, it is not sufficient for the PDF |/Author| key, which must exactly match
+% with the |dc:creator| metadata element. What is needed instead is
+% \begin{decl}[]
+% | \pdfxEnableCommands{|\\
+% | \def\thanh{H^^c3^^a0n Th\eee Thanh}\def\eee{^^c3^^aa^^cc^^81 }}|
+% \end{decl}
+% \removelastskip\noindent
+% or the above with `\`a' typed directly as UTF-8 instead of |^^c3^^a0|
+% and `\^e' in UTF-8 for |^^c3^^aa|.
+% The reason for this is due to the |\pdfstringdef| command, which constructs
+% the accented latin letters as single combined characters \`a and \^e,
+% without resorting to combining accents, wherever possible.
+% If the Metadata does not have the same, irrespective of Unicode normalisation,
+% then validation fails.
+%
+% With version (1.5.6) of the |pdfx| package, such difficulties
+% have been overcome, at least for characters used in Western European,
+% Latin-based languages. The input encoding used when reading the |.xmpdata|
+% file now includes interpretations of \TeX's usual accent commands to
+% produce the required UTF-8 byte sequences.
+%
+% \medskip
+% Since version (1.5.8) this input encoding was extended to include
+% macro definitions covering \LaTeX's internal character representation
+% of other alphabets (e.g., extended Latin, Cyrillic, Greek, etc.).
+% However this can become memory intensive, requiring a large number of
+% macro definitions, most of which will never be used. So loading options
+% are provided, enabling a document author to choose only those that may
+% be relevant. Currently these are as in Section~\ref{ssec-xmplang}.
+%
+% A significant portion of the Unicode Basic Plane characters can be covered
+% this way. Modules could even be provided for CJK character sets and
+% mathematical symbols, etc. However, as this can become memory intensive,
+% significant testing will be required before these become a standard
+% part of the |pdfx| package.
+%
+%
+% \subsection{Color profiles}\label{sec-profiles}
+%
+% Most standards compliant PDF documents require a \emph{color
+% profile} to be embedded within the file. In a nutshell, such a profile
+% determines precisely how the colors used in the document will be
+% rendered when printed to a physical medium. This can be used to
+% ensure that the document will look exactly the same, even when it is
+% printed on different printers, with different paper types, etc.
+% The inclusion of a color profile is necessary to make the document
+% completely self-contained.
+%
+% Since most \LaTeX\ users are not graphics professionals and are not
+% particularly picky about colors, the |pdfx| package includes default
+% profiles that will be included when nothing else is specified.
+% Therefore, the average user doesn't have to do anything
+% special about color.
+%
+% For users who have a specific color profile they wish to use, it is
+% possible to do so by including a |\setRGBcolorprofile| or
+% |\setCMYKcolorprofile| command in the |.xmpdata| file. Note that
+% PDF/A and PDF/E require a profile of type `|mnrt|' (monitor) which
+% is usually an RGB color profile, while PDF/X and PDF/VT require type `|prtr|'
+% (printer) which is usually a CMYK color profile; but valid documents
+% can be created with the correct type designed for the other color space.
+% Use the following commands to specify an RGB or CMYK color profile,
+% respectively:
+%
+% \begin{decl}
+% \defmacro{setRGBcolorprofile}\marg{filename}\marg{identifier}\marg{info
+% string}\marg{registry URL}
+% \\[1ex]
+% \defmacro{setCMYKcolorprofile}\marg{filename}\marg{output
+% intent}\marg{identifier}\marg{registry URL}
+% \end{decl}
+% Within the arguments of these macros, the characters |<|, |>|, |&|,
+% |^|, |_|, |#|, |$|, and |~| can be used as themselves, but
+% |%| must be escaped as |\%|.
+%
+% From version (1.6) the default RGB and CMYK color profiles are now supplied
+% using the |colorprofiles| package by Norbert Preining and Ross Moore~\cite{colorp}.
+% Earlier versions of \texttt{pdfx.sty} set the defaults via:
+% \begin{decl}[]
+% |\setRGBcolorprofile{sRGB_IEC61966-2-1_black_scaled.icc}|\\
+% | {sRGB_IEC61966-2-1_black_scaled}|\\
+% | {sRGB IEC61966 v2.1 with black scaling}|\\
+% | {http://www.color.org}|\\[4pt]
+% |\setCMYKcolorprofile{coated_FOGRA39L_argl.icc}|\\
+% | {Coated FOGRA39}|\\
+% | {FOGRA39 (ISO Coated v2 300\% (ECI))}|\\
+% | {http://www.argyllcms.com/}|
+% \end{decl}
+% These can still be used if the files from earlier version are available
+% on your \TeX\ system, but they will need to be requested, as above.
+% Other color profile files may be obtained from the International
+% Color Consortium. Please take a look at
+% \url{http://www.color.org/iccprofile.xalter}.
+%
+% Alternatively, color profiles are shipped with many Adobe software
+% applications; these are then available for use also with non-Adobe
+% software. Now the |pdfx| package includes coding to streamline
+% inclusion of these profiles in PDF documents, or to specify
+% them as `external' profiles, with PDF/X-4p and PDF/X-5pg variants.
+% Two files |AdobeColorProfiles.tex| and |AdobeExternalProfiles.tex|
+% are distributed with the |pdfx| package. The latter is for use
+% with PDF/X-4p and PDF/X-5pg, which do not require color profiles to
+% be embedded, while the former can be used with other PDF/X variants.
+% Both define commands to use Color Profiles as follows.
+% \begin{decl}[]
+% \begin{tabular}{ll}
+% \texttt{\string\FOGRAXXXIX} & Coated FOGRA39 (ISO 12647-2:2004)\\
+% \texttt{\string\SWOPCGATSI} & U.S. Web Coated (SWOP) v2\\
+% \texttt{\string\JapanColorMMICoated} & Japan Color 2001 Coated\\
+% \texttt{\string\JapanColorMMIUncoated} & Japan Color 2001 Uncoated\\
+% \texttt{\string\JapanColorMMIINewspaper} & Japan Color 2002 Newspaper\\
+% \texttt{\string\JapanWebCoatedAd} & Japan Web Coated (Ad)\\
+% \texttt{\string\CoatedGRACoL} & Coated GRACoL 2006 (ISO 12647-2:2004)\\
+% \texttt{\string\SNAPCGATSII} & CGATS TR 002\\
+% \texttt{\string\SWOPCGATSIII} & CGATS TR 003\\
+% \texttt{\string\SWOPCGATSV} & CGATS TR 005\\
+% \texttt{\string\ISOWebCoated} & Web Coated FOGRA28 (ISO 12647-2:2004)\\
+% \texttt{\string\ISOCoatedECI} & ISO Coated v2 (ECI)\\
+% \texttt{\string\CoatedFOGRA} & Coated FOGRA27 (ISO 12647-2:2004)\\
+% \texttt{\string\WebCoatedFOGRA} & Web Coated FOGRA28 (ISO 12647-2:2004)\\
+% \texttt{\string\UncoatedFOGRA} & Uncoated FOGRA29 (ISO 12647-2:2004)\\
+% \texttt{\string\IFRAXXVI} & ISOnewspaper26v4 ISO/DIS 12647-3:2004\\
+% \texttt{\string\IFRAXXX} & ISOnewspaper30v4 ISO/DIS 12647-3:2004\\
+% \end{tabular}
+% \end{decl}
+% As of the time of first compiling this list, only the first six of these result in PDFs
+% which can validate with external profiles (i.e., for PDF/X-4p and PDF/X-5pg)
+% using the then-current versions of Adobe Acrobat Pro software. It is unclear
+% whether the others (incl.\,\verb|\IFRAXXVI| and \verb|\IFRAXXX|) failed due
+% to incorrect data or problems in the validation software.
+% Since then, with updates to Acrobat Pro, almost all the others have been verified
+% to work, except \verb|\IFRAXXX| which seems no longer available.
+% Thus these commands come with a `use at own risk' clause.
+%
+% For `external' profiles, there is a command |\setEXTERNALprofile|, taking 9 arguments,
+% that must be used. Consult |AdobeExternalProfiles.tex| for examples of its use.
+%
+% All but the last of the macros listed above can also be used for valid embedded profiles,
+% providing the corresponding files can be found.
+% The following macros are used to set the (absolute or relative) path,
+% on the local operating system, to the location of color profile files.
+% \begin{decl}
+% \defmacro{pdfxSetRGBcolorProfileDir}\marg{path to RGB color profiles}\\
+% \defmacro{pdfxSetCMYKcolorProfileDir}\marg{path to CMYK profiles}
+% \end{decl}
+% On a Macintosh, there are various places where the color profiles may be found.
+% One can use either a macro |\MacOSColordir| which expands
+% into the path for system-provided profiles:
+% \begin{decl}[]
+% |/System/Library/ColorSync/Profiles/|
+% \end{decl}
+% or the macro |\MacOSLibraryColordir| expanding to:
+% \begin{decl}[]
+% |/Library/ColorSync/Profiles/|
+% \end{decl}
+% or |\AdobeMacOSdir| which expands into the path:
+% \begin{decl}[]
+% |/Library/Application Support/Adobe/Color/Profiles/Recommended/|
+% \end{decl}
+% Under Windows an available macro is |\WindowsColordir| which expands to:
+% \begin{decl}[]
+% |C:\Windows\System32\Spool\Drivers\Color/|
+% \end{decl}
+% being the common location for color profiles.
+% Use these within the \verb|.xmpdata| file as, e.g.,
+% \begin{decl}[]
+% |\pdfxSetCMYKcolorProfileDir{\AdobeMacOSdir}|
+% \end{decl}
+% Authors may change the paths to suit their own circumstances, either
+% \emph{before} loading |pdfx.sty| or within the \verb|.xmpdata| file.
+%
+% PDF/A and PDF/E usually need an RGB profile, while PDF/X and PDF/VT
+% require a CMYK profile. It is possible to use a CMYK profile with PDF/A
+% or PDF/E by specifying |\setRGBcolorprofile{}{}{}{}| in the \verb|.xmpdata| file.
+% Beware however, that with PDF/A any coloured hyperlink annotations can
+% cause a validation problem, as these are interpreted as RGB colours
+% even when 4 components are given. This may be a bug in validators,
+% as PDF specifies that the number of components should match the color space.
+%
+% \subsubsection{`Custom' color spaces}\label{ssec-custom}
+%
+% It is also possible to specify `Custom' color spaces, other than RGB or CMYK.
+% Here is an example command |\viiIndigoTAC|, defined as follows:
+% \begin{decl}[]
+% \%\% Custom profile: 7C Indigo TAC370 (ColorLogic)\\
+% |\gdef\viiIndigoTAC{\let\CallasMacOSdir\CallasMacOSpdfaPilotdir |\\
+% | \setCUSTOMcolorprofile |\\
+% | {7C Indigo_TAC370_ColorLogic.icc}%|\\
+% | {\CallasProfilesdir}%|\\
+% | {7C Indigo TAC370 \string\(ColorLogic\string\)}% /ProfileName |\\
+% | {http://www.colorlogic.de}% /RegistryName |\\
+% | {7CLR}% number of colors specifier |\\
+% | {02400000}% ICC version |\\
+% | {/Cyan /Magenta /Yellow /Black /Orange /Green /Violet}% colour names |\\
+% | {48110b8b410ee6be015f3932c3167869}% CheckSum |\\
+% |}|
+% \end{decl}
+% which uses a profile that accompanies the \texttt{pdfaPilot} software from
+% Callas Software Gmbh~\cite{pdfaPilot}.
+% The macro |\CallasMacOSpdfaPilotdir|, defined in the file \texttt{CallasColorProfiles.tex},
+% specifies the directory where this Custom profile is located, when installed under MacOS.
+% One needs to |\input CallasColorProfiles.tex| \emph{before} loading the |pdfx| package.
+% Macros for other directories are also defined in this file.
+%
+% \subsection{Notes on the internal representation of metadata}
+%
+% Within the PDF file, metadata is deposited in two places: some data
+% goes into the native PDF |/Info| dictionary, and some data goes into
+% an XMP packet stored separately within the file. XMP is Adobe's
+% Extensible Metadata Platform~\cite{XMP-spec,XMP-ISO}, and is an XML-based format.
+% See \href{http://www.adobe.com/devnet/xmp/}{Adobe XMP Development Center}
+% for more exhaustive information about XMP.
+% An XMP Toolkit SDK which supports the GNU/Linux, Macintosh and Windows operating
+% systems is also available under modified BSD licence.
+%
+% Some of the metadata, such as the author, title, and keywords, can be
+% stored \emph{both} in the XMP packet and in the |/Info| dictionary.
+% For the resulting file to be standards-compliant, the two copies of the data
+% must be identical. This is taken care of automatically by the |pdfx| package,
+% except when |\sep| is used to handle multiple entries, as discussed above
+% in \S\ref{sssec-info}. In such cases the string is not included within the |/Info|
+% dictionary. Note that this is in accordance with the PDF 2.0 specification~\cite{PDF20},
+% which deprecates use of the |/Info| dictionary for such metadata.
+%
+% In principle, users can resort to alternate ways to create an XMP file
+% for inclusion in PDF. In this case, one should create a customised template
+% file |pdfa.xmp| or |pdfx.xmp| or |pdfe.xmp| (etc., depending on the PDF flavor)
+% containing the pre-defined data. This can be done by modifying the ones supplied
+% with the |pdfx| package. However, this is an error-prone process and is
+% \emph{not} recommended for most users.
+% If there is a particular field of metadata that you need and that is not currently
+% supported, please contact the package authors.
+%
+% |pdfx| makes use of the |xmpincl| package to include XMP data into
+% the PDF. The documentation of |xmpincl| package may help interested
+% users to understand the process of XMP data inclusion.
+%
+% \subsection{Tutorials and technical notes}
+%
+% A tutorial with step-by-step instructions for generating PDF/A files
+% can be found at:
+% \url{http://www.mathstat.dal.ca/~selinger/pdfa/}.
+%
+% Some technical notes about production problems the authors have
+% encountered while generating PDF/A compliant documents are available
+% here:
+% \url{http://support.river-valley.com/wiki/index.php?title=Generating_PDF/A_compliant_PDFs_from_pdftex}.
+% Be aware that this is based on use of an earlier version of the |pdfx| package,
+% so some of the advice may have been superseded.
+%
+%
+% \section[Installing]{Installing}
+% The |pdfx.dtx| package is available on CTAN as usual, via
+% \url{http://ctan.org/pkg/pdfx}. It is also included in
+% \TeX\ distributions such as Mac\TeX, \TeX\ Live and MiK\TeX.
+% Thus most users will not need to handle installation at all.
+%
+% For those wishing to do a manual installation, here are some notes.
+% The file |pdfx.dtx| is a composite document of program code and
+% documentation in \LaTeX{} format, in the tradition of \emph{literate
+% programming}. After having installed the package,
+% to get the documentation that you are reading now,
+% run (\textsc{pdf})\LaTeX{} on the file |pdfx.dtx|.
+% The resulting PDF should be valid as PDF/A-2u.
+% Or better, use the included |Makefile|, which will also regenerate the index.
+%
+% To install the package, first extract the program code; i.e., the
+% file |pdfx.sty|, by running \LaTeX{} or \TeX{} on the file |pdfx.ins|.
+% Create a directory named |pdfx| under |$TEXMF/tex/latex| and copy the files
+% |pdfx.sty|, |8bit.def|, |glyphtounicode-cmr.tex|, |glyphtounicode-ntx.tex| as well
+% as the other |*.tex|, |l8u*-penc.def| and |*.xmp| files, into it. Then update
+% \TeX's file database using the appropriate command for your distribution
+% and operating system (such as |texhash| or |mktexlsr|, or similar).
+%
+% \subsection{Limitations and dependencies}
+%
+% The |pdfx.sty| package works with \pdftex\ and also Lua\TeX\ and Xe\TeX\
+% with some minor limitations.
+% It further depends on the following other packages.
+% \begin{enumerate}
+% \item |xmpincl| for insertion of metadata into PDF.
+% \item |inputenc| to establish input-encoding infrastructure ---
+% see Section~\ref{ssec-L8U}.
+% \item |hyperref| for ensuring data is correctly encoded when being
+% written into the PDF file, and supporting features such as
+% hyperlinking, bookmarks, etc.
+% \item |xcolor| for ensuring consistent use of the color model
+% appropriate the PDF variant, within text and hyperlinks (when allowed).
+% \item |glyphtounicode.tex| (not Xe\LaTeX) maps glyph names
+% to corresponding Unicode code-points.
+% \item |ifluatex| allowing coding specific to Lua\LaTeX.
+% \item |ifxetex| allowing coding specific to Xe\LaTeX.
+% \item |luatex85| or |pdftexcmds| (Lua\TeX\ only) for access
+% to primitive commands using \pdftex\ macro names.
+% \item |stringenc| used to help generate proper bookmarks with transliterated input;
+% e.g., with |\textLGR| or |\textARM| --- see Section~\ref{sssec-arm}.
+% \end{enumerate}
+% Other files and packages are loaded as sub-packages or as
+% configuration files for these. Since some of these packages
+% may be loaded by existing documents we provide here advice on
+% how to deal with potential loading and option conflicts.
+%
+% Firstly, it is best if |pdfx| is the first package loaded; e.g.,
+% directly after the |\documentclass| line. This is not a strict requirement,
+% but it is worthwhile to deal with the metadata at the top of your \LaTeX\ source,
+% allowing correct options to be loaded to cope with validation aspects.
+%
+% Secondly, replace |\usepackage[<options>]{hyperref}| with |\hypersetup{<options>}|.
+% This deals with most loading issues with the |hyperref| package.
+% Note that PDF/X is a format intended for printing.
+% It forbids inclusion of hyperlinks and other actions, including via bookmarks.
+% To produce a validating PDF/X document, |pdfx| overrides internal macros
+% while keeping colors associated with link anchors.
+% To inhibit these colors also, you could specify options as follows.
+% \begin{decl}[]
+% |\hypersetup{colorlinks,allcolors=black}|
+% \end{decl}
+% Furthermore, options to set metadata components (such as |pdfauthor|,
+% |pdftitle|, |pdfsubject|, |pdfkeywords|, etc.) are disabled, since
+% |pdfx| has already taken care of this information.
+%
+% Thirdly, conflicts with other packages may be dealt with by simply
+% changing |\usepackage| to |\RequirePackage| within the document's
+% preamble. But this may not be possible when the |\usepackage|
+% or |\RequirePackage| command occurs within another package, or with
+% a specific set of options, thereby causing processing to stop.
+% Few packages have a command analogous to |\hypersetup|.
+% Instead |\PassOptionsToPackage{<options>}{<package>}| can help.
+% For |<options>| specify the ones associated with the loading yet to come.
+% This can give a smooth processing run, but you'll need to check whether
+% the results from those options have actually taken effect.
+% Some examples of this can be seen later, in Figures~\ref{koi8-code}
+% and \ref{tldoc-pol}.
+%
+% \subsubsection{Limitations using Xe\LaTeX}\label{sssec-xetex}
+%
+% To process a file using Xe\LaTeX, to produce a document that can
+% validate to a particular PDF standard, one need to use a command
+% to run the \TeX\ engine, as follows.
+% \begin{decl}[]
+% |xelatex -shell-escape -output-driver="xdvipdfmx -z 0" <filename>.tex |
+% \end{decl}
+% The |-shell-escape| option allows a command-line task to be run,
+% which writes the creation-date \& time of the running job into
+% a small file on disk. This data, written in a specific format, is then
+% read by the job for inclusion into several metadata fields.
+% This emulates the result of \pdftex's |\pdfcreationdate| primitive.
+% As there are security implications in allowing arbitrary commands to be run,
+% this need for |-shell-escape| must be viewed as imposing a limitation on the
+% work-flows in which this can be safely used.
+%
+% The |-output-driver="xdvipdfmx -z 0"| suppresses compression, which
+% is not allowed for the XMP metadata packet. Without this, the resulting PDF
+% may fail to pass validation tests.
+%
+% Xe\TeX\ is designed for processing UTF-8 input only. When presented
+% with \LaTeX\ source using a legacy encoding, such as |latin2| or |koi8-r|,
+% the input is accepted and a PDF produced. Yet there will be garbage
+% characters corresponding to each character entered from the upper range
+% (128--255). This is evident in the PDF content and bookmarks;
+% yet |pdfx| produces the correct XMP metadata packet.
+% So while the techniques explained later in Section~\ref{ssec-multi} are
+% valid, the PDF itself does not contain correct content.
+%
+% Not all fonts, in particular Open-Type fonts (OTF), naturally come with
+% mappings of the glyphs to Unicode code points. This is a requirement
+% with PDF/A, PDF/E and PDF/UA standards.
+% Use of such fonts can result in validation errors, such as:
+% \begin{itemize}
+% \item
+% CIDset in subset font is incomplete (font contains glyphs that are not listed).
+% \item
+% Type 2 CID font: CIDToGID map is invalid or missing.
+% \end{itemize}
+%
+% If one has access to Adobe's |Acrobat Pro| software, then its |Preflight|
+% utility can rewrite the uncompressed output from Xe\LaTeX\ into a valid
+% PDF standard, using compression of the contents but not of the XMP packet.
+% Similarly |Preflight| can sometimes fix the missing font information.
+%
+%
+% \subsubsection{Limitations using Lua\LaTeX}\label{sssec-luatex}
+%
+% Lua\LaTeX\ can handle the OTF font issues mentioned for Xe\LaTeX,
+% so can produce valid PDF/A documents where Xe\LaTeX\ fails.
+% However, since Lua\TeX\ expects all input source to be UTF8-encoded,
+% it cannot work at all with documents using older legacy encodings.
+% Instead one gets error messages such as:
+%\begin{decl}
+% |! String contains an invalid utf-8 sequence.|\\
+% |l.5 \Copyright{\textLII{UWAGA dla recenzent|\\
+% | �w/t³umaczy}}|\\
+% |? |
+%\end{decl}
+% from a document using |latin2| encoded characters.
+% Thus most of Section~\ref{ssec-multi} is just not applicable for Lua\LaTeX,
+% whereas it is for \pdftex.
+% This is essentially the same problem as described above for Xe\TeX,
+% but here Lua\TeX\ advises that there are problems as soon as it
+% encounters an invalid (for UTF-8) character. Some would regard
+% this as better than having the job run to completion, only to later
+% discover garbage content within the PDF.
+%
+%
+% \subsection{Files included}
+%
+% The following files are included in the package.
+% Some can be created from |pdfx.dtx|, using the |Makefile|.
+%
+% \subsubsection{Package files}
+%
+% \begin{itemize}
+% \item |pdfx.sty| --- main package file generated from |pdfx.dtx|.
+% \item |pdfa.xmp| --- specimen |xmp| template for PDF/A.
+% \item |pdfe.xmp| --- specimen |xmp| template for PDF/E.
+% \item |pdfvt.xmp| --- specimen |xmp| template for PDF/VT.
+% \item |pdfx.xmp| --- specimen |xmp| template for PDF/X.
+% \item |8bit.def| --- custom input encoding.
+% \item |l8u-penc.def| --- input encoding macro declarations.
+% \item |l8uarb-penc.def| --- input macro declarations for Arabic.
+% \item |l8uarm-penc.def| --- input macro declarations for Armenian.
+% \item |armglyphs.dfu| --- Unicode mapping for Armenian letters.
+% \item |l8ucyr-penc.def| --- input macro declarations for Cyrillic alphabet.
+% \item |l8udev-penc.def| --- input macro declarations for Devanagari.
+% \item |l8ugrk-penc.def| --- input macro declarations for Greek alphabet.
+% \item |l8uheb-penc.def| --- input macro declarations for Hebrew alphabet.
+% \item |l8ulat-penc.def| --- input macro declarations for Latin 1--9 encodings.
+% \item |l8umath-penc.def| --- input macro declarations for mathematical symbols.
+% \item |glyphtounicode-cmr.tex|, |glyphtounicode-ntx.tex| --- maps glyph names
+% to corresponding Unicode for Computer Modern and other \TeX-specific fonts.
+% \item |AdobeColorProfiles.tex| --- macros for inclusion of Adobe-supplied color profiles.
+% \item |AdobeExternalProfiles.tex| --- macros for use of external color profiles.
+% \item |CallasColorProfiles.tex| --- macros for profiles included with Callas pdfaPilot software.
+% \end{itemize}
+%
+% \subsubsection{Documentation \& Examples}
+%
+% \begin{itemize}
+% \item |README| --- usual top-level information.
+% \item |manifest.txt| --- file list.
+% \item |pdfx.pdf| --- package documentation.
+% \item |sample.tex|, |sample.xmpdata| --- a sample file with sample metadata.
+% \item |small2e-pdfx.tex| --- sample file with included metadata.
+% \end{itemize}
+%
+% \subsubsection{Sources}
+%
+% \begin{itemize}
+% \item |src/pdfx.dtx| --- composite package and documentation.
+% \item |src/pdfx.ins| --- installer batch file.
+% \item |src/pdfx.xmpdata| --- metadata for the documentation.
+% \item |src/rvdtx.sty| --- used by |pdfx.dtx|.
+% \item |src/Makefile| --- a Makefile for building the documentation.
+% \item |src/MANIFEST| --- list of files in this directory.
+% \item |src/text89.def| --- used with Figure\,\ref{ex-arm} in the documentation.
+% \item |src/{arm-start,koi8-example,koi8-example2,latin2-example}.tex|
+% --- used in the documentation with figures showing example coding.
+% \item |src/{TL-POL-meta,TL-RU-LICRs,TL-RU-metadata,TL-RU-toc,Armenian-example-UTF8,|\\
+% |armtex-meta,usage-meta,math-assign5}.png| --- screenshot images showing multilingual
+% and other metadata.
+% \end{itemize}
+%
+% \subsection{Miscellaneous information}
+%
+% The package is released under the \LaTeX{} Project Public
+% Licence. Bug reports, suggestions, feature requests, etc., may be
+% sent to the original authors at
+% \href{mailto:cvr@river-valley.org}{\ttfamily cvr@river-valley.org}
+% and/or
+% \href{mailto:thanh@river-valley.org}{\ttfamily thanh@river-valley.org},
+% or to the more recent contributors at
+% \href{mailto:ross.moore@mq.edu.au}{\ttfamily ross.moore@mq.edu.au}
+% and/or
+% \href{mailto:selinger@mathstat.dal.ca}{\ttfamily selinger@mathstat.dal.ca}.
+%
+%
+% \section[Multilingual and Technical Considerations]{Multilingual and Technical Considerations}\label{sec-meta}
+%
+% \TeX\ and \LaTeX\ have an on-going practice of including metadata within
+% the source files and package documentation. Usually this is done as comments
+% at the beginning of the file; such as the following from the English
+% language version of the 2015 \TeX\ Live documentation\footnote{%
+% found at |/usr/local/texlive/2016/texmf-dist/doc/texlive/texlive-en/|.}.
+% \begin{decl}[]
+% |$Id: texlive-en.tex 37205 2015-05-05 21:36:33Z karl $|\\
+% |TeX Live documentation. Originally written by Sebastian Rahtz and|\\
+% |Michel Goossens, now maintained by Karl Berry and others.|\\
+% |Public domain.|
+% \end{decl}
+% This provides information, ideally suited for copyright metadata
+% fields, as in Section~\ref{sssec-copy}, as well as for |\Subject|
+% and |\CoverDate| from Section~\ref{sssec-publ}.
+%
+% Also near the top of the file one finds front-matter content
+% \begin{decl}[]
+% |\title{%|\\
+% | {\huge \textit{The \TeX\ Live Guide---2015}}|\\
+% |}|\\
+% |\author{Karl Berry, editor \\[3mm]|\\
+% | \url{http://tug.org/texlive/}|\\
+% | }|\\
+% |\date{May 2015}|
+% \end{decl}
+% which supplies metadata information for the commands |\Title|, |\Author|,
+% |\CoverDisplayDate| also from Section~\ref{sssec-publ}, and |\CopyrightURL|.
+%
+% Most of the hundreds of thousands, if not millions of documents prepared
+% using \TeX, \LaTeX\ and other \TeX-based formats, include similar
+% metadata information, much of which currently does not accompany the
+% resulting PDF. It is becoming increasingly common, if not yet a legal
+% requirement, for PDFs to satisfy a standard that requires inclusion
+% of metadata. This is especially so for government agencies and institutions
+% receiving government funding, in several countries around the world.
+%
+% It is an aim of the |pdfx| to simplify the process of capturing and
+% including metadata within \LaTeX-produced PDFs, from both the author's
+% view and that of archivists. The extra features introduced with version
+% 1.5.8 take a large step in that direction.
+% This includes the ability, described in the next subsection, to reliably
+% include data presented in different text encodings, rather than being
+% restricted to UTF-8 only. It is a role of the software to make the
+% conversion, rather than rely on some 3rd party for a translation.
+%
+%
+% \subsection[Multilingual Metadata]{Multilingual Metadata}\label{ssec-multi}
+%
+% A cursory search of the documentation (|.../texmf-dist/doc|) subtree
+% of the forthcoming \TeX\,Live 2016 release reveals more than 730 different
+% |.tex| or |.dtx| document sources which specify an input encoding,
+% via the |\usepackage[...]{inputenc}| command. Roughly 380 (a bit more
+% than half) declare UTF-8 as the input encoding.
+% Of the remainder there are $\approx 20$ other encodings specified,
+% covering a range of languages for at least part of their content.
+% At some point in time, these documents may be required to have accurate
+% accompanying metadata, as part of conformance to a designated PDF
+% (or other) standard. There are libraries and archives that already must
+% meet such standards.
+%
+% We have shown above, in Section~\ref{ssec-metadata}, how the |.xmpdata|
+% file can be inserted into the document source, which then ensures that
+% metadata is reliably transferred along with the source itself.
+% This seems a good strategy, but are there any problems with it,
+% especially in a multi-lingual context?
+%
+% Modern editing software can require an encoding to be associated
+% with each file. This is what allows the correct characters to be shown,
+% from what is otherwise just a sequence of 8-bit bytes. The flip-side
+% is that arbitrary editing is not permitted. Add some UTF-8 data into
+% a file that is encoded as Latin-2 then try to save it. You may be asked
+% to specify a new encoding, or the application may even crash out entirely.
+% Maybe this happens \emph{accidentally}. It is not hard for a curly quote
+% (`) or endash (--) to be included; many editors have settings which can
+% do this with normal ascii input. Turn \emph{off} such settings.
+%
+% The approach that we advocate is that when editing to add metadata,
+% best is to:
+% \begin{enumerate}
+% \item
+% use the \emph{same encoding} as is specified for the file itself,
+% if known (as is usually the case);
+% \item
+% even if 1. is not possible, use Copy/Paste \emph{within} the document source
+% (e.g., for authors' names, addresses, affiliations, etc.) and from comments,
+% as in Section~\ref{sec-meta} above;
+% \item
+% avoid typing new characters, especially quotes and dashes, and be extra
+% careful with back-spacing to preserve the real meaning of copied content.
+% \end{enumerate}
+% Even if the original encoding is not known, use of Copy/Paste from other
+% parts of the document is normally not going to change its encoding.
+% This should not cause the file to become invalid due to mixed content.
+% In some situations it may be necessary to use an ASCII-only representation,
+% such as \LaTeX's LICR\footnote{LICR: \LaTeX\ Internal Character Representation;
+% or think `I $=$ Interchange'.} macros~\cite[\S\,7.11]{LC2}.
+%
+% \begin{figure}[htb]
+% \centering
+% \includegraphics[scale=.33]{TL-RU-metadata}
+% \caption{Metadata generated from the coding shown in Figure\,\ref{koi8-code},
+% viewed using Acrobat Pro's `Additional Metadata \dots' panel.}\label{koi8-meta}
+% \end{figure}
+% \begin{figure}[htb]
+% {\UseRawInputEncoding
+% \begin{decl}[]
+% \input{koi8-example}
+% \end{decl}
+% }%
+% \setbox0=\hbox{\kern-10cm\texttt{\`{ }\^{ }\~{ }\"{ }\r{ }\^{ }\u{ }\H{ }\'{ }\k{ }\v{ }\.{ }\i}}%
+% \ht0=0pt\dp0=0pt\box0\vskip-\baselineskip
+% \caption{Example of cyrillics in metadata, shown as if \texttt{T1}-encoded.
+% See Figure\,\ref{koi8-meta} for the actual result.}\label{koi8-code}
+% \end{figure}
+%
+% \subsubsection[Metadata with Cyrillics]{Metadata with Cyrillics}\label{sssec-cyr}
+%
+% Here is a `real-world' example, with Figure\,\ref{koi8-meta} showing the metadata
+% as could be produced for the Russian language version of the \TeX\ Live documentation,
+% from coding as shown in Figure\,\ref{koi8-code}.
+% The source file itself is actually encoded for KOI8-R, as indicated by the presence
+% of the code line |\usepackage[koi8-r]{inputenc}|,
+% but is deliberately shown here encoded as |T1|~\cite[p.\,449]{LC2}.
+% This difference is immaterial for checking the validity of the metadata.
+% For example, the stream of upper (accents, etc.) characters within
+% |\Title{\textKOI{ ... }}| is the same as within |\title{...\textit{ ... }}|.
+% Similarly for |\Author{\textKOI{...}}| and |\author{...}|, and |\CoverDate| and |\date|.
+% Strings for the |\Subject| and |\Keywords| are taken from the first actual paragraph
+% in the document, and from early subsection titles.
+%
+% It is the `parser' command/macro |\textKOI{ ... }| that indicates that the upper range
+% characters (having byte codes 128--255) are to be treated as KOI8-R characters,
+% rather than as part of UTF-8 byte sequences. It works by examining each byte in sequence,
+% and returning the appropriate UTF-8 2-byte sequence for the required cyrillic character.
+% This happens during the processing of data from |\jobname.xmpdata| for fleshing-out
+% the XMP metadata packet to be included within the final PDF/A document.
+%
+% The `parser' macros defined for various encodings, are given in Figure\,\ref{parsers}.
+% In Section\,\ref{ssec-xmplang} the package options are given
+% for loading the appropriate support for desired languages or alphabets.
+% Support for other encodings can be added, if there proves to be a need.
+%
+%\begin{figure}[ht]
+% \centering
+% \begin{tabular}{lll}\hline
+% macro & encodings & bytes 128--255 with languages\\\hline
+% |\textLAT| & Latin-1 & Western European \\
+% |\textLII| & Latin-2 & Middle European \\
+% |\textLIII| & Latin-3 & South European \\
+% |\textLIV| & Latin-4 & North European \\
+% |\textLTV| & Latin-5 & Turkish \\
+% |\textLVI| & Latin-6 & Nordic \\
+% |\textLVII| & Latin-7 & Baltic Rim \\
+% |\textLIIX| & Latin-8 & Celtic \\
+% |\textLIX| & Latin-9 & Western European, incl. \texteuro \\
+% |\textKOI| & KOI8-R, KOI8-RU & cyrillic alphabets \\
+% |\textLGR| & LGR, ISO-8859-7 & Greek \& Polytonic Greek\\
+% |\textARM| & Arm\TeX, ArmSCII8 & Armenian\\
+% |\textHEB| & HE8, ISO-8859-8, CP1255 & Hebrew\\
+% |\textHEBO| & CP862 & Hebrew\\
+% |\(...\)| & parses simple mathematical expressions\\\hline
+% \end{tabular}
+% \caption{Parser macros, defined for specific types of input.}\label{parsers}
+% \end{figure}
+% \begin{figure}[hbt]
+% \centering
+% \includegraphics[scale=.5]{TL-RU-LICRs}
+% \caption{How to see LICRs in the \texttt{.log} window.}\label{koi8-LICR}
+% \end{figure}
+%
+% With encoded characters marked in this way with a `parser' macro,
+% it is actually possible to mix UTF-8 metadata with other bytes;
+% provided, of course, you have an editor that allows such a file
+% to be created and saved. On the other hand, if you are unhappy with mixing
+% content having different encodings, then there is another way, based upon
+% \LaTeX's LICR macros~\cite[\S\,7.11]{LC2} for representing accented
+% and non-latin characters.
+% These are normally hidden away (`I $=$ Internal') but in fact can be seen
+% within auxiliary files, such as |.aux| and |.toc|, |.lof| and |.lot|.
+% This is how \LaTeX\ stores the knowledge of such characters for use in
+% a part of the document processing which may not have the same encoding
+% as the document as a whole, or may require characters generated using several
+% different encodings. Thus LICRs allow for a reliable representation
+% passed to a different context; think `I $=$ Interchange'.
+%
+% \begin{figure}[hbt]
+% {\UseRawInputEncoding
+% \begin{decl}[]
+% \input{koi8-example2}
+% \end{decl}
+% }%
+% \caption{Example of cyrillics in metadata, using LICRs.}\label{koi8-code2}
+% \end{figure}
+% \begin{figure}[htbp]
+% \centering
+% \includegraphics[scale=.5]{TL-RU-toc}
+% \caption{How to get desired LICRs into the \texttt{.toc} file.}\label{koi8-toc}
+% \end{figure}
+%
+% Figure~\ref{koi8-LICR} shows how to see this.
+% The document source in the lower portion clearly shows the cyrillic
+% input, whereas the |.log| messages in a command-line window above
+% reveal the LICR representation. A command |\showLICRs| is available
+% with |pdfx.sty| version 1.5.8, specifically to allow this.
+% Now the LICR representation can be copied directly from the |.log| file,
+% modulo slight difficulties due to the way long lines are broken.
+% As this representation is entirely with ASCII characters, it should not
+% cause any conflict with any UTF-8 metadata that you want within the same file.
+% The |.xmpdata| file might now look as in Figure~\ref{koi8-code2}.
+% Although very verbose, this should be resistant to any corruption due to
+% character encodings, and produces the same result within the PDF,
+% as in Figure~\ref{koi8-meta}.
+%
+% Alternatively one can exploit the |.toc| file, using \LaTeX's command
+% |\addtocontents|, as shown in Figure~\ref{koi8-toc}.
+% After processing the file, you can copy the LICR representations out
+% of the |.toc| file, taking care to remove anything of a non-character
+% nature (e.g., implementing the size and spacing of the letters in \TeX).
+%
+% Of course once you have harvested the metadata in this format, remove
+% or comment-out those extra |\showLICRs| to get uninterrupted processing.
+% Similarly comment-out the extra |\addtocontents| lines, else the real
+% Table-of-Contents will become corrupted with unwanted entries.
+% A couple more \LaTeX\ processing runs should restore the PDF to the
+% way you want it.
+%
+% \subsubsection[Metadata with Polish]{Metadata with Polish}\label{sssec-pol}
+%
+% The next example has upper-range bytes intended to represent Latin-2 encoded
+% characters, as used in Polish.
+% With the \LaTeX\ source starting as in Figure~\ref{tldoc-pol},
+% the resulting metadata is shown in Figure~\ref{tlmeta-pol}.
+%
+%\begin{figure}[htb]
+% \centering
+% \includegraphics[scale=.45]{TL-POL-meta}
+%\caption{Metadata generated from the coding shown in Figure~\ref{tldoc-pol}
+% for the Polish version of \TeX\ Live 2015 documentation, showing Latin-2 encoded
+% characters. The document is valid for PDF/A-2, after having been processed with
+% pdf-\LaTeX.}\label{tlmeta-pol}
+%\end{figure}
+%
+%\begin{figure}[!htp]
+% {\UseRawInputEncoding
+%\begin{decl}[]
+% \input{latin2-example}
+%\end{decl}
+% }%
+%\caption{Start of the \LaTeX\ source for the Polish version of \TeX\ Live
+% documentation. Although Latin-2 encoded, the bytes are shown here using
+% \LaTeX's \texttt{T1} encoding \cite[p.\,449]{LC2}.}\label{tldoc-pol}
+%\end{figure}
+%
+% Here the `parser macro' is |\textLII|, which can be seen in Figure~\ref{tldoc-pol}
+% to surround either complete metadata entries, or just those parts containing
+% polish accented (or other) characters in entries that also contain english words.
+% The macro |\textLF| provides a line-feed character for the UTF-8 output.
+%
+% As a technical note, the |\jobname.xmpdata| file is read with |\obeyspaces|
+% in effect. This causes space runs in the input to be replaced by a single
+% `active space' character, which ultimately expands into a normal space upon output.
+% This is needed to preserve inter-word spaces, which would otherwise
+% get lost during parsing, due to \TeX's pattern matching when reading macro arguments.
+% Each byte is examined individually, with normal letters |a-zA-Z| and most punctuation
+% characters passed through unchanged.
+%
+% \medskip\goodbreak
+% Let's understand better how this example was created. There are three files involved.
+%\begin{itemize}
+% \item |pdfx.dtx|, the source for this documentation, open in an editor with
+% encoding declared as UTF-8;
+% \item |texlive-pl.tex| the Polish documentation for \TeX\ Live, open in the
+% same editor with Latin-2 encoding;
+% \item |latin2-example.tex| which starts life as an empty file on disk.
+%\end{itemize}
+% \noindent
+% This latter file must be opened in the editor, with encoding declared as
+% Latin-2 (ISO-8859-2).
+% Next the preamble is copied from |texlive-pl.tex| and pasted into |latin2-example.tex|
+% which is then saved to disk. Further editing is done to |latin2-example.tex| to
+% add verbatim markers (\texttt{$\vert$...$\vert$}) and adjust line lengths for display
+% within Figure~\ref{tldoc-pol}. This file's contents is included as part of the
+% documentation via |\input{latin2-example}| within an environment that handles
+% presentation aspects, and (since 2018) declares |\UseRawInputEncoding|.
+%
+% What \emph{cannot} be done is to paste the preamble content directly into |pdfx.dtx|.
+% Consider what would then happen, using `t{\l}umaczy' (`translators', on line 10
+% following `UWAGA'). This word shows correctly in the Latin-2 encoded files.
+% It was typeset here using |\l| for the `\l' letter, having Unicode code-point
+% |Ux0142| (so UTF-8 byte pair |"C5|\,|"82|).
+% However, it occurs at slot |"B3| within Latin-2 encoding.
+% In the |T1| font encoding \cite[p.\,449]{LC2} the character glyph name
+% for slot |"B3| is |/scedilla|, which is what shows in Figure~\ref{tldoc-pol}.
+% When the `\l' is pasted directly into a UTF-8 file and shown verbatim,
+% the result is the pair of glyphs |"C5| (|/Aring|) and |"82| (|/Cacute|);
+% \emph{viz.} {\UseRawInputEncoding |tłumaczy|}.
+%
+% As with Figure~\ref{koi8-code} it is not important that the correct characters
+% are shown here, but that the metadata in |\jobname.xmpdata| corresponds to what
+% is used on the titlepage of the PDF; e.g., the contents of |\Title| and |\title|,
+% |\Author| and |\author|, etc.
+%
+%
+% \subsubsection[Metadata with Greek]{Metadata with Greek}\label{sssec-grk}
+%
+%\begin{figure}[!hb]
+% \centering
+% \includegraphics[scale=.43]{usage-meta}
+%\caption{Metadata generated from the coding shown in Figure~\ref{greek-code}
+% using the greek language specified via the LGR encoding.}\label{greek-meta}
+%\end{figure}
+%
+%\begin{figure}[!htp]
+%\begin{decl}[]
+%|% ... |\\
+%|% This file is part of the Babel system.|\\
+%|% --------------------------------------|\\
+%|% |\\
+%|% It may be distributed and/or modified under the |\\
+%|% conditions of the LaTeX Project Public License, either version 1.3|\\
+%|% ... |\\
+%{\color{verbcolor}\texttt{\% The Current Maintainer of this work is G\"unter Milde.}}\\
+%|% ... |\\
+%| |\\
+%|\providecommand{\pdfxopts}{a-2u,LGRxmp,LATxmp}|\\
+%|\begin{filecontents*}{\jobname.xmpdata}|\\
+%|\Title{Writing Greek with the "greek" option of the "babel" package}|\\
+%{\color{verbcolor}\texttt{\string\Author\{Apostolos Syropoulos\string\sep\ G\"unter Milde\}}}\\
+%|\Subject{This document describes the use of the Latin transliteration for Greek that is |\\
+%| defined by the LGR font encoding. Today, all modern LaTeX distributions support literal|\\
+%| input of Greek, which is the preferred method for new documents. [G. Milde 2013/12/02]}|\\
+%|\Keywords{\textLGR{monotonik'o}\sep \textLGR{polutonik'o}\sep \textgreek{oxe'ia} \sep |\\
+%{\catcode `\|=11 \color{verbcolor}
+%\texttt{\ \ \string\textgreek\{>a'erac\}\string\sep\ \string\textgreek\{>anate'ilh|\}\string\sep\ \string\textgreek\{qa"ide'uh|c\}\}}}| \sep |\\
+%| \textgreek{D'uskoloc} of \textgreek{M'enandroc}\textLF \textLGR{T'i f'hic? <Id`wn |\\
+%| >enj'ede pa~id'' >eleuj'eran\textLF t`ac plhs'ion N'umfac stefano~usan, S'wstrate,|\\
+%| \textLF >er~wn 'ap~hljec e>uj'uc? \sep |\\
+%| \textaristerikeraia\textalpha\textsampi\textqoppa\textzeta\textdexiakeraia\sep |\\
+%| \textaristerikeraia\textAlpha\textSampi\textQoppa\textZeta\textdexiakeraia}}|\\
+%|\CoverDate{1997-10-15}|\\
+%|\CoverDisplayDate{October 15, 1997}|\\
+%|\Copyright{This file is part of the Babel system.\textLF This file 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.}|\\
+%|\CopyrightURL{http://www.latex-project.org/lppl.txt}|\\
+%|\end{filecontents*}|\\
+%|%|\\
+%|\documentclass[11pt]{article}|\\
+%|\usepackage[\pdfxopts]{pdfx}[2016/04/13]|\\
+%|\hypersetup{colorlinks,allcolors=blue}|\\
+%|\usepackage[american,greek]{babel}|\\
+%|\languageattribute{greek}{polutoniko}|\\
+%|\usepackage{athnum,grmath}|\\
+%|\newcommand{\sg}{\selectlanguage{greek}}|\\
+%|\newcommand{\sa}{\selectlanguage{american}}|\\
+%|\begin{document}|\\
+%|\selectlanguage{american}|\\
+%|\title{Writing Greek with the \ttfamily greek\rmfamily\ option of the |\\
+%| \ttfamily babel\rmfamily\ package}|\\
+%|\author{Apostolos Syropoulos\\|\\
+%| ...\\...}|\\
+%|\date{October 15, 1997}|\\
+%|\maketitle|\\
+%|\abstract{\noindent|\\
+%|This document describes the use of the Latin transliteration for Greek that|\\
+%|is defined by the LGR font encoding. Today, all modern LaTeX distributions|\\
+%|support literal input of Greek, which is the preferred method for new|\\
+%|documents. [G. Milde 2013/12/02]}|
+%\end{decl}
+%\caption{Start of enriched \LaTeX\ source for a document describing how to typeset
+% in Greek, with added metadata demonstrating the LGR transliteration encoding.
+% }\label{greek-code}
+%\end{figure}
+%
+% Prior to proper support for UTF-8 input, a method for preparing document source
+% for the modern Greek language (and also for polytonic Greek), involved the use
+% of LGR encoded fonts. Such a font has Greek (instead of Latin) letters in the
+% slots for |a-zA-Z|, see~\cite[\S9.4.2]{LC2}. Thus ordinary ASCII letters are used
+% to produce the Greek characters; the mapping of ASCII to Greek is referred to as
+% a `transliteration' scheme. It serves as \emph{both} an input encoding, and as
+% a font encoding. Accents and diacritic marks are provided through ligatures
+% built-in to the fonts. Various documents can be found on the web\footnote{e.g.,
+% \url{http://milde.users.sourceforge.net/LGR/}} and
+% within \TeX\ Live distributions\footnote{%
+% TeXLive: \textcolor{urlcolor}{\texttt{.../2016/texmf-dist/doc/generic/babel-greek/}}}.
+%
+% Indeed the current maintainer G\"unther Milde states
+% ``The LGR transliteration does not work for PDF metadata''.
+% This is because there is no translation of LGR input into \LaTeX\ LICRs,
+% as happens with say |\usepackage[utf8]{inputenc}| for UTF-8 input,
+% or when upper 8-bit characters are present using |\usepackage[iso-8859-7]{inputenc}|.
+% With these, LICRs such as |\textAlpha|, |\textOmicron|, \dots, |\textomega|
+% are produced, which result in the correct characters for metadata and bookmarks,
+% perhaps employing Unicode `combining' characters for accented letters.
+% Using |pdfx| the UTF-8 characters can be put directly into the |.xmpdata| file;
+% LICRs are interpreted provided the |grkxmp| loading option has been specified.
+%
+% Using the methods of |pdfx| the metadata difficulty is remedied, as can be seen in
+% Figure~\ref{greek-meta} using coding as shown in Figure~\ref{greek-code}. This requires
+% the |LGRxmp| option and |\textLGR| `parser' macro. The original document source,
+% called |usage.tex|, can be found in the directory specified in the footnote below.
+% As this document is essentially an English description of how to use LGR for Greek,
+% we have used the `Keywords' field to provide examples of such usage.
+% Since a macro |\textgreek| can be used for greek portions within such documents,
+% this macro name is aliased to |\textLGR| within the context where metadata is processed.
+% Furthermore, parsing using |\textLGR| generates correct pre-composed characters
+% for letters with accents or diacritics. Bookmarks can also be generated from
+% LGR input, using a technique described in Section~\ref{sssec-arm}.
+%
+% \bigskip\noindent
+% The features available with different loading options are summarised here.
+% \begin{itemize}
+% \item
+% no option: all metadata in |.xmpdata| file is in UTF-8 (incl. ASCII)
+% \item
+% |grkxmp|: LICRs can be present; e.g. |\textAlpha|, |\textOmega|, etc.
+% \item
+% |LGRxmp|: supports LGR-encoded input and |ISO-8859-7| upper range characters,
+% using the |\textLGR| `parser' macro.
+% \end{itemize}
+% With |LGRxmp| specified, the features of |grkxmp| are also available; so any
+% lower-listed option allows data to be mixed with that for higher-listed ones.
+%
+%
+% The final piece to get validation for PDF/A from LGR input, is to specify
+% a Unicode point for the `|v|' used only in the strong `|sv|' ligature to obtain
+% a non-final `sigma' typeset in isolation.
+%\begin{decl}[]
+% |\pdfglyphtounicode{internalchar2}{200D}|
+%\end{decl}
+% This gives an interpretation as `zero-width joiner'.
+% There are two instances of this within |usage.tex|. Copy/Paste works as desired.
+% Using \pdftex\ the above command is done automatically.
+% Drivers, such as Xe\LaTeX\ lacking an implementation of |\pdfglyphtounicode|,
+% can fail to produce a valid PDF due to this rather minor deficiency.
+%
+% Greek numerals, using |\greeknumeral| or |\Greeknumeral| cannot work directly within
+% a |.xmpdata| file. However if such is desired, the following technique allows
+% correct LICRs to be found for use in the metadata.
+% At any convenient place within the \LaTeX\ source; e.g., near where the required
+% number is used, insert coding such as:
+% \begin{decl}[]
+% |{\pdfxGreeknumeralsHack \textgreek{\edef\num{\greeknumeral{1997}}\show\num}}%|
+% \end{decl}
+% Upon processing, the following will be written to the console or |.log|-window.
+% \begin{decl}[]
+%|> \num=macro:|\\
+%|->\LGR\textaristerikeraia \LGR\textalpha \LGR\textsampi \let \protect \LGR\text|\\
+%|dexiakeraia \LGR\textqoppa \let \protect \LGR\textdexiakeraia \LGR\textzeta \le|\\
+%|t \protect \LGR\textdexiakeraia \protect \LGR\textdexiakeraia .|\\
+%|<argument> ...um {\greeknumeral {1997}}\show \num |\\
+%| |\\
+%|l.90 ...k{\edef\num{\greeknumeral{1997}}\show\num}|\\
+%| }|\\
+%|? |
+% \end{decl}
+% from which the desired string of LICRs, is extracted; \emph{viz}.
+% \begin{decl}[]
+% |\textaristerikeraia\textalpha\textsampi\textqoppa\textzeta\textdexiakeraia|
+% \end{decl}
+% The corresponding trick does not work with |\Greeknumeral|, but the uppercasing
+% can be done manually from the string obtained using |\greeknumeral|,
+% \begin{decl}[]
+% |\textaristerikeraia\textAlpha\textSampi\textQoppa\textZeta\textdexiakeraia|
+% \end{decl}
+% leaving the initial and final |\text...keraia| macros as all lowercase.
+% For smooth processing, remove or comment-out the added line after collecting the LICRs.
+%
+%
+% \def\ArmTeX{Arm\kern -0.15em\TeX}%
+% \subsubsection[Metadata with Armenian]{Metadata with Armenian}\label{sssec-arm}
+%
+% \begin{figure}[!htbp]
+% \centering
+% \includegraphics[scale=.42]{armtex-meta}
+%\caption{Metadata generated from the coding shown in Figure~\ref{arm-code}
+% using the Armenian language specified using \ArmTeX\ transliteration.
+% Bookmarks have been generated in Armenian. Figure ~\ref{ex-arm} explains
+% how the word indicated in red is obtained via parsing.}\label{arm-meta}
+% \end{figure}
+%
+% \begin{figure}[!htbp]
+% \let\small\scriptsize
+% {\UseRawInputEncoding
+% \begin{decl}[]
+% \input{arm-start.tex}%
+% \end{decl}
+% }%
+% \caption{Enriched \LaTeX\ source for the Armenian version of the \ArmTeX\ manual,
+% with added metadata demonstrating the \ArmTeX\ transliteration scheme for \texttt{OT6} encoding.
+% Also shown is coding used to produce bookmarks from the transliteration.}\label{arm-code}
+% \end{figure}
+%
+% The \ArmTeX\ package\footnote{documentation: %
+% TeXLive: \textcolor{urlcolor}{\texttt{.../2016/texmf-dist/doc/generic/armenian/}}}
+% provides the method to typeset Armenian, with input being specified in various ways
+% including a transliteration scheme from ASCII input. This transliteration is directed
+% at the use of the |OT6| encoding, developed for this purpose.
+% Each way is supported by |pdfx.sty| with appropriate loading options, similar
+% to the support for Greek~(see Section~\ref{sssec-grk}).
+% \begin{itemize}
+% \item
+% no option: all metadata in |.xmpdata| file is in UTF-8 (incl. ASCII)
+% \item
+% |armxmp|: using LICR-like macro names; e.g. |\armAyb|, |\armsha|, |\armfe| etc.
+% \item
+% |AR8xmp|: using the \ArmTeX\ (|OT6|) transliteration scheme or with upper-range
+% characters in |ArmSCII8| encoding, using the `parser' macro |\textARM|.
+% \end{itemize}
+%
+% \goodbreak\noindent
+% There are 39 letters in the Armenian alphabet, so the transliteration includes
+% many 2-letter combinations to specify the desired character. Whereas Greek uses
+% punctuation symbols to specify diacritics, Armenian requires either ligatures
+% implemented in the |OT6|-encoded font, or careful parsing of the input into
+% LICR-like macros.
+% \LaTeX\ source\footnote{TeXLive: %
+% \textcolor{urlcolor}{\texttt{.../2016/texmf-dist/doc/generic/armenian/examples/latex/}}}
+% for the \ArmTeX\ documentation is available in both English and Armenian.
+% Figure~\ref{arm-meta} shows the result of enriching the Armenian version with relevant
+% metadata, using coding as shown in Figure~\ref{arm-code}.
+%
+% As in earlier examples, that metadata has come from the extensive comments at the head
+% of the \LaTeX\ source file (represented by |...| in Figure~\ref{arm-code}), and other
+% title-page material, such as title and author names in both English and Armenian.
+% Within the keywords are armenian words that are mentioned in the documentation as being
+% slightly tricky to represent in transliteration, to verify that the required tricks have
+% been correctly implemented.
+%
+% Also apparent in Figure~\ref{arm-meta} is the use of Armenian letters in the Bookmarks
+% pane, having been generated from the transliteration source. This requires a 3-step
+% process, as follows.
+% \begin{enumerate}
+% \item
+% conversion of transliterated source into UTF-8.
+% This is done as the |.xmpdata| file is processed, using |\pdfxEnableCommands|
+% to make global definitions; e.g,
+%\begin{decl}[]
+% |\xdef\sectAtitle{\textARM{Nerac'uthyun}}|
+%\end{decl}
+% capturing the section title in the form supplied in the \LaTeX\ source.
+% This can be seen in Figure~\ref{arm-code}, near the end of the |{filecontents*}|
+% environment, and at the bottom where the |\section| command would occur.
+% \item
+% conversion of the UTF-8 representation into |UTF16-be|, suitable for bookmark
+% strings within the PDF file. With \pdftex\ thishis is done using
+% |\StringEncodingConvert| from Heiko Oberdiek's |stringenc.sty| package.
+% Lua\LaTeX\ and Xe\LaTeX\ can use the UTF-8 representation directly.
+% \item
+% integration of the |UTF16-be| string (\pdftex) or UTF-8 string (Lua\TeX\ and Xe\TeX)
+% into the coding that would normally generate the bookmark from a provided section title,
+% in transliterated form.
+% \end{enumerate}
+% These last two steps are combined into a single command, to replace the usual
+% command for a section title; |\section|, |\subsection|, etc.
+% \begin{decl}[]
+% |\pdfxBookmark{\section}{\sectAtitle}{Nerac'uthyun}|
+% \end{decl}
+% Now |\pdfxBookmark| first checks that the macro passed as the 2nd argument
+% actually exists. If it does not, an error message is given and upon continuation
+% would just do |\section{Nerac'uthyun}| as normal.
+% When it does exist, then step 2 is done (by \pdftex) storing the result as |\pdfx@temp|.
+% With Lua\TeX\ and Xe\TeX, |\pdfx@temp| stores a copy of the UTF-8 data.
+% Then the commands needing to be executed are essentially
+%\begin{decl}[]
+% |\pdfstringdefDisableCommands{\let\sectAtitle\pdfx@temp}|\\
+% |\def\sectAtitle{Nerac'uthyun}|\\
+% |\section{\sectAtitle}|
+%\end{decl}
+% so that the correct section heading is displayed on the page,
+% but when |\sectAtitle| is processed to create a bookmark it is replaced
+% by the pre-prepared contents of |\pdfx@temp|.
+% There are some technicalities\footnote{In fact a small change is made
+% to how \textcolor{verbcolor}{\texttt{\string\@@writetorep}} is used.}
+% to make this work cleanly,
+% as just doing these commands would interfere with other uses of |\pdfstringdef|.
+% In case a long sectioning command has an optional argument, or a $*$-variant
+% is needed, then include it this way.
+%\begin{decl}[]
+% |\pdfxBookmark[Ar'avot e'r]{\section*}{\sectAtitle}{Ar'avot e'r, Araratyan dashti ...}|
+%\end{decl}
+%
+%
+% \subsubsection[Other Languages]{Other Languages}\label{sssec-other}
+%
+% There is support for Metadata using characters from other languages,
+% with corresponding loading options, as follows.
+% \begin{itemize}
+% \item |arbxmp| : Arabic;
+% via LICRs |\textarabicalef|, |\textarabicqaf|,\\ |\textarabicaleflowerhamza|, etc.
+% \item |devxmp| : Devanagari;
+% via LICRs |\textdevanagaria|, |\textdevanagarivocalicr|,\\ |\textdevanagaricandrabindu|, etc.
+% \item |hebxmp| : Hebrew;
+% via LICRs |\hebalef|, |\hebsamekh|, |\hebfinalpe| and accent marks |\segol|, |\qubuts|, etc.
+% \item |vnmxmp| : Vietnamese;
+% via LICRs |\ABREVE|, |\OCIRCUMFLEX|, |\uhorn| etc. and the combinations of multiple accents
+% applied as usual via |\'|, |\`|, |\^|, etc.
+% \end{itemize}
+% The LICRs include support mapping accented letters to precomposed glyphs, falling back on
+% `combining characters' only in unusual situations. Special input conventions or methods,
+% such as transliteration schemes, are \emph{not yet} supported.
+% Indeed, these options are largely untested, so any difficulties encountered should
+% be reported to the package authors. Requests to support extra input methods or other
+% language blocks should also be directed to the authors, along with pointers to where
+% the desired input methods are fully described.
+% Sample `real-world' documents would be greatly appreciated.
+%
+%
+% \subsection[L8U pseudo-encoding]{L8U pseudo-encoding}\label{ssec-L8U}
+%
+% To understand how |pdfx| handles the translation into UTF-8 of input that is not already
+% in that format, we'll briefly discuss \LaTeX's font-encoding mechanism, which is the
+% basis for LICR macros~\cite[\S\,7.11]{LC2}. As an example, consider the macro |\textgamma|
+% representing the lowercase Greek letter $\gamma$.
+% Various \LaTeX\ packages declare this as LICR in different ways, for different purposes.
+%\begin{decl}[]
+% |greek-fontenc/lgrenc.def:\DeclareTextSymbol{\textgamma}{LGR}{103}|\\
+% |tipa/t3enc.def:\DeclareTextSymbol\textgamma{T3}{71} % Gamma|\\
+% |greek-fontenc/greek-euenc.def:\DeclareTextCommand{\textgamma}{\LastDeclaredEncoding}{γ}|\\
+% |hyperref/puenc.def:\DeclareTextCommand{\textgamma}{PU}{\83\263}%* U+03B3|\\
+% |ucs/data/uni-2.def:\uc@dclc{611}{tipa}{\textgamma}%|\\
+% |ucs/data/uni-3.def:\uc@dclc{947}{default}{\textgamma}%|
+% \end{decl}
+% Here the |\uc@dclc| commands associate UTF-8 input of |Ux0263| (IPA small letter gamma)
+% and |Ux03B3| (Greek small letter gamma) internally with |\textgamma|,
+% whereas the others deal with output formats\footnote{Whereas {\color{verbcolor}\texttt{ucs.sty}}
+% handles UTF-8 input, mapping it to LICRs, with {\color{verbcolor}\texttt{pdfx.sty}}
+% we need the reverse mapping into UTF-8, not just from LICRs but also from legacy
+% 8-bit encodings and transliteration schemes.}.
+% In four of these examples there is a number, which refers to a position in an `encoding vector'
+% for the particular font used to place the character onto the printable page.
+% For example |LGR| refers to greek fonts, encoded as explained in Section~\ref{sssec-grk}.
+% IPA phonetics use the |T3| encoding, so |\textgamma| refers to a character
+% from a different Unicode block.
+%
+% With two of these cases there is no specific font.
+% For example, |PU| is used to create bookmark strings,
+% and other PDF string inclusions, using |\pdfstringdef| from the |hyperref| package.
+% With |greek-euenc.def| designed for Xe\TeX\ and Lua\TeX, the encoding can be variable,
+% with the output bytes being those for the UTF-8 encoding of $\gamma$, namely |^^ce^^b3|,
+% shown here as the |T1|-encoded pair |γ|.
+% The term `pseudo-encoding' has been coined by the \LaTeX\ team.
+% Although there is no actual font to determine the encoding, to an author there is essentially
+% no difference in how corresponding macros can be used to get a character placed into
+% an appropriate structure within the PDF.
+%
+% Thus there are 4 output forms for this character,
+% and we've not even considered how $\gamma$ is used in mathematics!
+% To handle these concurrently, one has internally-defined control-sequence names
+% \begin{decl}[]
+% |\LGR\textgamma=\char"67| \qquad where $6\times 16 + 7 = 103$\\
+% |\T3\textgamma=\char"47| \qquad where $4\times 16 + 7 = 71$\\
+% |\PU\textgamma=\long macro:->\83\263|\\
+% |\L8U\textgamma=\long macro:->γ|
+% \end{decl}
+% where the 2nd `\textbackslash' is part of the name\footnote{%
+% obtained using {\color{verbcolor}%
+% \texttt{\string\csname\space LGR\string\string\string\textgamma\string\endcsname}}.}.
+% The latter macro is explained below.
+% To use the specific version of the macro, \LaTeX\ maintains a `font-encoding'
+% parameter, set using |\fontencoding{...}| local to the surrounding environment grouping.
+%
+% To the above declarations of |\textgamma|, to deal with conversion to UTF-8,
+% the |pdfx| package adds the following declarations when the |LGRxmp| option is used.
+% \begin{decl}[]
+% |pdfx/l8ugrk.def:\DeclareTextCommand{\textgamma}{L8U}{γ}|\\
+% |pdfx/l8ugrk.def:\DeclareTextCompositeCommand{\textLGRenc}{L8U}{\textgamma}{γ}|\\
+% |pdfx/l8ugrk.def:\DeclareTextCompositeCommand{\textLGRenc}{L8U}{g}{γ} |\\
+% |pdfx/l8ugrk.def:\DeclareTextCompositeCommand{\textLGRenc}{L8U}{^^e3}{γ}|
+% \end{decl}
+% The pseudo-encoding name |L8U| indicates \textbf{L}ocal conversion into UTF-\textbf{8} \textbf{U}nicode,
+% as required for metadata, using |pdfx.sty|. Currently this pseudo-encoding is used in one place only;
+% during the interpretation of information supplied through the |\jobname.xmpdata| file.
+% This happens as part of the |pdfx| package, \emph{before} it uses |xmpincl.sty|.
+% Such specificity justifies being called a `Local' encoding.
+% However, other tasks may emerge requiring on-the-fly conversion to UTF-8.
+% In this case all the functionality of this pseudo-encoding could be shifted into a separate package,
+% and the name changed to reflect this more general usage.
+% Bookmarks from transliterated input, as described in Section~\ref{sssec-arm},
+% is possibly a sufficient reason to have a separate package. Another possibility is to
+% generate on-the-fly creation of UTF-8 strings, to be sent to Xe\TeX\ or Lua\TeX\ running
+% as a slave process to generate images of string using OTF fonts, which \pdftex\ currently
+% cannot handle. The result would then be imported back into the running job as an image.
+% The authors invite suggestions of how this |L8U| pseudo-encoding functionality can be put to
+% good use.
+%
+% \goodbreak
+% Accented letters normally use (e.g., from |t1enc.def|)
+%\begin{decl}[]
+% |\DeclareTextComposite{\`}{T1}{A}{192}|
+%\end{decl}
+% to get the pre-composed `\`A', rather than a composite built from \`{} and `A'.
+% The last parameter is an index into a font; however the |\DeclareTextCompositeCommand|
+% variant allows arbitrary coding as that final parameter, so can be the bytes for the
+% UTF-8 representation of a character.
+% In the above code lines, macros are defined as follows
+%\begin{decl}[]
+% |\\L8U\textLGRenc-\textgamma=macro:->γ|\\
+% |\\L8U\textLGRenc-g=macro:->γ|\\
+% |\\L8U\textLGRenc-|{\color{verbcolor}\texttt{\~a}}|=macro:->γ|
+%\end{decl}
+% where now the 2nd and 3rd (and perhaps 4th) `\textbackslash' are part of the name\footnote{%
+% obtained using {\color{verbcolor}%
+% \texttt{\string\csname\string\string\string\LGR\string\string\string\textLGRenc-\string\string\string\textgamma\string\endcsname}}.}.
+% This shows how the ascii letter `g' is associated with the UTF-8 bytes for $\gamma$,
+% and how the upper 8-bit character from |^^e3| can be similarly associated,
+% as in |ISO-8859-7| encoding.
+%
+% All these associations come together in the `parser' macro |\textLGR| which works as follows.
+% Firstly, |\textLGR| is declared for |L8U| pseudo-encoding only, where it expands as follows.
+%\begin{decl}[]
+% |\L8U\textLGR #1->\textgreekLGRstring {#1}|\\
+% |\L8U\textgreekLGRstring #1->\textgreekLGR@ii #1\@empty \@empty|\\
+% |\textgreekLGR@ii #1#2\@empty -> ... | coding to test what is in |#2|\\
+% | ... \textLGRenc{#1}\@empty | \quad if |#2| is |\@empty|\\
+% | ... \textLGRenc{#1}\textgreekLGR@i #2\@empty | \quad if |#2| has more tokens\\
+% |\textgreekLGR@i #1->\textgreekLGR@ii #1|
+%\end{decl}
+% Thus |\textLGRenc| is called on each token in the argument of |\textLGR|.
+% Now |\textLGRenc|, which is applicable only when |L8U| pseudo-encoding is in effect,
+% has a default expansion of just passing the character through unchanged; \emph{viz.}
+%\begin{decl}[]
+% |\DeclareTextCommand{\textLGRenc}{L8U}[1]{#1}|
+%\end{decl}
+% but by using |\DeclareTextCompositeCommand{\textLGRenc}{L8U}{...}{...}|,
+% alternate expansions apply with specific arguments, as shown above.
+% In particular, that final argument can include coding that `looks ahead' to find the next
+% character. This is used, for example, with diacritics in Greek, multi-letter sequences
+% for Armenian letters, and other special cases related to ligatures and punctuation symbols.
+% To illustrate this Figure~\ref{ex-arm} (below) follows the conversion of a specific word,
+% given in the transliteration for Armenian~(see Section~\ref{sssec-arm}).
+% This conversion occurs using only \TeX's macro-expansion ability.
+% Some details relevant to this example are explained there.
+%
+%\begin{figure}[!htbp]
+%\begin{decl}[]
+% |\textARM{Se\armuh van}|\\
+% |\textarmenARMstring {Se\armuh van}|\\
+% |\textarmenARM@ii Se\armuh van\@empty \@empty|\\
+% |\textARMenc {S}\textarmenARM@i e\armuh van\@empty \@empty|\\
+% |\arm@en{S}{Ս}{\arm@nc{h}{Շ}{\arm@nc{H}{Շ}{Ս}}}\textarmenARM@i e\armuh van\@empty ...|\\
+% |\arm@nc{h}{Շ}{\arm@nc{H}{Շ}{Ս}}\textarmenARM@i e\armuh van\@empty \@empty|\\
+% |\arm@nc{H}{Շ}{Ս}\textarmenARM@i e\armuh van\@empty \@empty|\\
+% |Ս\textarmenARM@i e\armuh van\@empty \@empty|\\
+% |Ս\textARMenc {e}\textarmenARM@i \armuh van\@empty \@empty|\\
+% |Ս\textARMenc {e}\textarmenARM@i \armuh van\@empty \@empty|\\
+% |Ս\arm@en{e}{ե}{\arm@nc{'}{է}{\arm@nc{v}{և}{ե}}}\textarmenARM@i \armuh van\@empty ...|\\
+% |Ս\arm@nc{'}{է}{\arm@nc{v}{և}{ե}}\textarmenARM@i \armuh van\@empty \@empty|\\
+% |Ս\arm@nc{v}{և}{ե}\textarmenARM@i \armuh van\@empty \@empty|\\
+% |Սե\textarmenARM@i \armuh van\@empty \@empty|\\
+% |Սե\textARMenc {\armuh }\textarmenARM@i van\@empty \@empty|\\
+% |Սե\textarmuh\textarmenARM@i van\@empty \@empty|\\
+% |Սե\\L8U\textarmuh-\textarmenARM@i van\@empty \@empty|\\
+% |Սե\textarmgobblespace van\@empty \@empty|\\
+% |Սե\\L8U\textarmgobblespace- van\@empty \@empty|\\
+% |Սե\textarmenARM@i van\@empty \@empty|\\
+% |Սե\textARMenc {v}\textarmenARM@i an\@empty \@empty|\\
+% |Սե\arm@en{v}{վ}{\arm@nc{n}{ﬖ}{վ}}\textarmenARM@i an\@empty \@empty|\\
+% |Սե\arm@nc{n}{ﬖ}{վ}\textarmenARM@i an\@empty \@empty|\\
+% |Սեվ\textarmenARM@i an\@empty \@empty|\\
+% |Սեվ\textARMenc {a}\textarmenARM@i n\@empty \@empty|\\
+% |Սեվա\textarmenARM@i n\@empty \@empty|\\
+% |Սեվա\textARMenc {n}\@empty|\\
+% |Սեվան\@empty|\\
+% |Սեվան|
+%\end{decl}
+% The macro |\armen@en| (named for \textbf{e}mpty or \textbf{n}ext),
+% looks ahead to see if the 5th-next argument token is |\@empty|,
+% signifying that there is nothing left of the original input.
+% (A closed bracing |{...}| counts as a single argument.) If |\@empty| the tokens in
+% the 2nd bracing are substituted, otherwise those in the 3rd bracing.
+% Similarly |\armen@nc| (named for \textbf{n}ext \textbf{c}haracter)
+% looks to see whether that 5th argument token matches with the character in the
+% 1st bracing. If so, the 2nd bracing's tokens are substituted, else those of the 3rd bracing.
+% This is how to cope with `Sh' or `SH', implemented as ligatures in an |OT6| encoded font,
+% denoting a different letter from a single `S'. The macro |\armuh| is used here
+% to \emph{prevent} a ligature from |ev| that would otherwise occur.
+% One writes |e\armuh v| to get the separate letters. As the space becomes an active token,
+% we need |\textarmgobblespace| to restart parsing appropriately.
+% Of course |\textarmenARM@i| behaves like |\textgreekLGR@i|
+% as explained earlier, with a test for |\@empty| as the 2nd token.
+% At the end, any remaining |\@empty| expand into nothing.
+%
+% \caption{Partial tracing of the conversion of an Armenian word, indicated by the red oval
+% in Figure~\ref{arm-meta}, from {\color{verbcolor}\texttt{OT6}} transliterated form into UTF-8 bytes.
+% In each line, \TeX\ expansion occurs at the position of the left-most `\textbackslash'.
+% The resulting bytes are shown here in {\color{verbcolor}\texttt{T1}} encoding,
+% as in previous examples, with {\color{verbcolor}\texttt{?}} indicating an invisible character
+% in the byte range {\color{verbcolor}\texttt{Ox80}--\texttt{Ox9f}}.
+% See Figure\,\ref{src-arm} for how this source appears with UTF-8 encoding.
+% }\label{ex-arm}
+% \bigskip
+%\end{figure}
+%
+% Note how in Figure~\ref{ex-arm} the Arm\TeX\ user macro |\armuh| gets aliased
+% to an LICR called |\textarmuh|. Since |\armuh| is already defined, not as an LICR,
+% it cannot be declared to be one without creating problems.
+% Instead, within the environment grouping where |L8U| pseudo-encoding is specified,
+% one uses |\let\armuh\textarmuh| within a `rebinding' macro command
+% |\LIIXUmaparmenianletters|\footnote{The start of the macro name is derived from pseudo-Roman
+% numerals: IX = 9, IIX = 8}
+% to get LICR functionality from user-commands.
+%\begin{decl}[]
+% |\def\LIIXUmaparmenianletters{%|\\
+% | \let\ArmTeX\textArmTeX|\\
+% | \let\Armayb\textArmayb|\\
+% | ... |\\
+% | \let\armuh\textarmuh |\\
+% | ... |\\
+% | \def\armbf{}%|\\
+% | ... }|
+%\end{decl}
+% As well as rebinding each command for a letter, the font style-switching commands
+% are aliased to do nothing, as these are not relevant to creating UTF-8 output.
+% Being localised by the |L8U| grouping, this causes no problem elsewhere within the document.
+% These are similar to macros |\psdaliasnames| and |\psdmapshortnames| from |hyperref.sty|,
+% which rebind user macros to LICRs, so that |PU| encoded versions of LICRs can be used.
+%
+% \begin{figure}[htb]
+% \includegraphics[scale=.625]{Armenian-example-UTF8.png}
+% \caption{Image of part of the source coding for Figure~\ref{ex-arm},
+% viewed as UTF-8 encoded, within editing software.}\label{src-arm}
+% \end{figure}
+%
+% Several other `rebinding' commands are defined, mostly with package-loading options.
+%\begin{itemize}
+% \item |\LIIXUmapTeXnames| always defined
+% \item |\LIIXUscriptcommands| handles |\textsuperscript|, |\textsubscript|, |\t|
+% \item |\LIIXUtipacommands| handles IPA letters and symbols
+% \item |\LIIXUmaparabicletters| with |arbxmp|
+% \item |\LIIXUmaparmenianletters| with |armxmp| and |AR8xmp|
+% \item |\LIIXUmapdevaccents| with |devxmp|
+% \item |\LIIXUmapgreekletters| with |grkxmp| and |LGRxmp|
+% \item |\LIIXUmaphebrewletters| with |hebxmp| and |HEBxmp|
+% \item |\LIIXUmaplatinchars| and |\LIIXUcancelfontswitches| with |LATxmp|
+% \item |\LIIXUmapmathletterlikes| always defined
+% \item |\LIIXUmapmathspaces| always defined
+% \item |\LIIXUmapmath...| with |mathxmp| --- see Section~\ref{ssec-math} below.
+%\end{itemize}
+% It may well be that more macro names can be added to some of these commands,
+% to allow macro usage within the metadata.
+% Suggestions for such additions should be sent to the |pdfx| package authors, along
+% with example documents. Similarly support for more languages can be requested.
+%
+% \subsection[Nested Parsing\,\textemdash\,Mathematics in Metadata]%
+% {Nested Parsing\,\textemdash\,Mathematics in Metadata}\label{ssec-math}
+%
+% Macro commands for many mathematical symbols can be used directly in metadata without extra
+% support; e.g., basic arithmetic operations, letter-like symbols, spacing commands.
+% Super- and subscripted letters and numerals can use |\textsuperscript| and |\textsubscript|
+% when there is an appropriate Unicode character (digits, comma, $+$/$-$/$=$, parentheses,
+% many letters but not all).
+%
+% When the |mathxmp| loading option is specified, many more symbols become available,
+% using `rebinding' macros. These are necessary, as the macros for mathematical symbols
+% are generally \emph{not} defined as LICRs, but use |\mathchar|. Thus new LICRs are needed,
+% and existing names bound to these.
+%\begin{decl}[]
+% |\LIIXUmapmathaccents| using `combining' characters from Unicode ranges at |Ux0300|, |Ux1DC0|, |Ux20D0|\\
+% |\LIIXUmapisomathgreek| using |Ux0391|--|Ux03F8| for greek symbols\\
+% |\LIIXUmapmatharrowsA| supporting symbols in the |Ux2190|--|Ux21FF| block\\
+% |\LIIXUmapmathoperatorsA| supporting symbols in the |Ux2200|--|Ux227F| block\\
+% |\LIIXUmapmathoperatorsB| supporting symbols in the |Ux2280|--|Ux22FF| block\\
+% |\LIIXUmapmiscmathsymbolsA| supporting some symbols in the |Ux27C0|--|Ux27EF| range\\
+% |\LIIXUmapsupparrowsA| supporting some symbols in the |Ux27F0|--|Ux27FF| block\\
+% |\LIIXUmapsupparrowsB| supporting some symbols in the |Ux2900|-–|Ux297F| block\\
+% |\LIIXUmapmiscmathsymbolsB| supporting symbols in the |Ux2980|--|Ux29FF| block\\
+% |\LIIXUmapsuppmathoperators| supporting symbols in the |Ux2A00|--|Ux2AFF| block\\
+% |\LIIXUmapunimathgreek| using |Ux1D6E2|--|Ux1D71B| for greek symbols\\
+% |\LIIXUmapmathalphabets| allows access to symbols in the |Ux1D400|--|Ux1D755| block
+%\end{decl}
+%
+% The `parser' macro idea can extends to handle a large class of mathematical expressions.
+%\begin{decl}[]
+% |\let\(\textinlinemath|\\
+% |\DeclareTextCommand{\textinlinemath}{L8U}{\liixu@getinlinemath}|\\
+% |\def\liixu@getinlinemath#1\){\space\textmathnormalstring{#1}\space}|\\
+% |\DeclareTextCommand{\textmathnormalstring}{L8U}[1]{\textmathnormal@ii#1\@empty\@empty}|\\
+% |\textmathnormal@ii #1#2\@empty -> ... | coding to test what is in |#2|\\
+% | ... \textmathnormal{#1}\@empty | \quad if |#2| is |\@empty|\\
+% | ... \textmathnormal{#1}\textmathnormal@i #2\@empty | \quad if |#2| has more tokens\\
+% |\let\[\textdisplaymath| defined similarly to call |\textmathnormalstring|
+%\end{decl}
+% This allows |\textmathnormal| to test each token, in particular mapping letters A--Za--z
+% into the Unicode range |Ux1D44E|--|Ux1D467| (except for $h$).
+% Mathematical styles, such as |\mathrm|, |\mathbf|, |\mathbb| etc. can now be handled
+% using declarations such as:
+%\begin{decl}[]
+% |\Dec...positeCommand{\textmathnormal}{L8U}{\mathrm}{\liixu@mathreorder\textmathrmstring}|\\
+% |\Dec...positeCommand{\textmathnormal}{L8U}{\mathbf}{\liixu@mathreorder\textmathbfstring}|\\
+%\end{decl}
+% where |\liixu@mathreorder| uses some \TeX\ pattern-matching to allow the |\textmathrmstring|
+% parser macro to work on the argument to |\mathrm| before allowing |\textmathnormal| parsing
+% to continue afterwards. We refer to this as `nested parsing'.
+%
+% Similarly `nested parsing' can be used with superscripts and subscripts using |^{...}| and |_{...}|
+% and to specify linebreaks, and even super-/subscripts within styles; viz.
+%\begin{decl}[]
+% |\Declar...CompositeCommand{\textmathnormal}{L8U}{^}{\liixu@mathreorder\textsuperstring}|\\
+% |\DeclareTextCompositeCommand{\textmathnormal}{L8U}{_}{\liixu@mathreorder\textsubstring}|\\
+% |\DeclareTextCompositeCommand{\textmathnormal}{L8U}{\\}{\textLF}|\\
+% |\DeclareTextCompositeCommand{\textmathnormal}{L8U}{\cr}{\textLF}|\\
+% |\DeclareTextCompositeCommand{\textmathrm}{L8U}{^}{\liixu@mathreorder\textsuperstring}|\\
+% |\DeclareTextCompositeCommand{\textmathrm}{L8U}{_}{\liixu@mathreorder\textsubstring}|
+%\end{decl}
+% Such `nested parsing' seems to be quite robust\footnote{%
+% ... so far, barring multi-line aligned environments.}, but a great deal more testing
+% is required to uncover cases which may require special handling.
+% An ultimate aim is to be able to just copy the \LaTeX\ source for the `Abstract' of a technical
+% paper into the |\Subject{...}| field of the |.xmpdata| file, with a large expectation that
+% it will `just work', or need only trivial edits to make it so.
+%
+%
+% \subsection[Metadata in a Production Workflow]{Metadata in a Production Workflow}\label{ssec-wflow}
+%
+%\begin{figure}[htbp]
+% \centering
+% \includegraphics[scale=.45]{math-assign5.png}
+% \caption{Metadata from student assignment papers, using information drawn from a database.
+% The start of the \LaTeX\ coding for this example is shown in Figure~\ref{math-wflow}.}\label{wflow-meta}
+%\end{figure}
+% \noindent
+% At Macquarie University, the Mathematics Department produces personalised topmatter
+% or coversheets for student assignments and tutorial papers using \LaTeX, incorporating
+% information that has been stored in a database. This is done by writing extra definitions
+% at the top of a copy of the \LaTeX\ source as prepared by the lecturers.
+% For example information analogous to the following
+%\begin{decl}[]
+% |\def\thestudentname{\utext{Moore} Ross}|\\
+% |\def\thestudentid{55507247}|\\
+% |\def\theunitcode{MATH337}|\\
+% |\def\theoffering{S116}|\\
+% |\def\thetaskname{Assignment 5}|\\
+% |\def\theassignmentnumber{5}|\\
+% |\def\theduedate{09/05 2016}|\\
+% |...|
+%\end{decl}
+% is prepended to the file shown in Figure~\ref{math-wflow},
+% for each student downloading their personalised assignment paper.
+% The \LaTeX\ source makes use of this information, including recording some of it
+% within the Metadata.
+%\begin{figure}[!htbp]
+%\begin{decl}[]
+% |\providecommand{\theassignmentnumber}{5}|\\
+% |\providecommand{\assignLecturer}{Dr Ross Moore}|\\
+% |\providecommand{\theunitcode}{MATH337}|\\
+% |\providecommand{\theunitname}{Algebra IIIA}|\\
+% |\providecommand{\theyear}{2016}|\\
+% |...|\\
+% |\def\assigntopics{orbits, stabilisers, groups of matrices}|\\
+% |\providecommand{\pdfxopts}{a-1b}|\\
+% |%% XMP metadata for PDF/A conformance|\\
+% |\begin{filecontents*}{\jobname.xmpdata}|\\
+% |\Title{\theunitcode\ \theoffering: Assignment \theassignmentnumber}|\\
+% |\Author{\assignLecturer}|\\
+% |\Copyright{Macquarie University, Mathematics Department}|\\
+% |\Subject{Assignment \theassignmentnumber, with coversheet personalised for \thestudentname,|\\
+% | id = \thestudentid}|\\
+% |\Keywords{\assigntopics}|\\
+% |\Creator{pdfTeX + pdfx.sty with \pdfxopts\space option}|\\
+% |\pdfxEnableCommands{\def\utext#1{#1,}}|\\
+% |\end{filecontents*}|\\
+% ||\\
+% |\documentclass[a4paper,11pt]{article}|\\
+% |\RequirePackage{assignments}|\\
+% |\usepackage[\pdfxopts]{pdfx}|
+%\end{decl}
+% \caption{Start of the \LaTeX\ source for an assignment paper, using macro expansion values
+% supplied via definitions prepended to this file.}\label{math-wflow}
+%\end{figure}
+% When preparing such documents \LaTeX's |\providecommand| is used to supply default values,
+% not drawn from the database; but when actually used, these are ignored as the required
+% information has been supplied using \TeX's |\def| command.
+% The resulting metadata is as in Figure~\ref{wflow-meta}, showing also how the information
+% is displayed at the top of the PDF file that is produced.
+% Notice how a command |\utext| is included to obtain the underlining of the surname within
+% the produced PDF. This is modified, using |\pdfxEnableCommands| in the |\jobname.xmpdata|
+% file, to just place a comma after the surname in the metadata, as it precedes the given name.
+%
+%\newpage\noindent
+% Another way that jobs can be customised using essentially the same \LaTeX\ source,
+% is via the command used to initiate the job. For example the file |sample.tex|,
+% accompanying the |pdfx| distribution, can be used to test the loading options to create
+% PDFs conforming to the various flavours of PDF/A, PDF/E and PDF/X.
+% Consider a shell script containing the following (Unix/Linux) commands.
+%\begin{decl}[]
+% |pdflatex "\def\pdfxopt{a-2b}\input sample.tex"|\\
+% |pdflatex "\def\pdfxopt{a-2b}\input sample.tex"|\\
+% |mv sample.pdf sample-a2b.pdf|\\
+% ||\\
+% |pdflatex "\def\pdfxopt{a-2u}\input sample.tex"|\\
+% |pdflatex "\def\pdfxopt{a-2u}\input sample.tex"|\\
+% |mv sample.pdf sample-a2u.pdf|\\
+% |...|
+%\end{decl}
+% With a 3-line block for each flavour, this produces a corresponding PDF
+% from the same \LaTeX\ source, named according to each particular variant.
+% A default |\providecommand{\pdfxopt}{a-1b}| at the start of |sample.tex| catches the case
+% of normal typesetting, doing nothing when |\pdfxopt| already has an expansion value.
+%
+% \goodbreak
+% \subsection[Further Developments]{Further Developments}\label{ssec-further}
+%
+% Prospects for further development of the |pdfx| package are as follows,
+% listed not necessarily in order of perceived importance.
+% \begin{itemize}
+% \item
+% Support for the |dvips| driver with Ghostscript as PDF producer; possible since |gs v9.21|.
+% \item
+% Separate the |L8U| pseudo-encoding support into a separate package.
+% \item
+% Conformance to multiple PDF standards; e.g. both PDF/A and PDF/E,
+% both PDF/A and PDF/X with RGB or CMYK color profile, other combinations.
+% \item
+% Explore delaying the processing of metadata until |\begin{document}|,
+% thereby allowing some fields to be set automatically from other information
+% supplied within the document preamble.
+% \item
+% Support for input using other legacy 8-bit encodings and transliterations.
+% \item
+% Support for more mathematical environments within the metadata.
+% \item
+% Support for more PRISM metadata fields, incl. PRISM 3.0~\cite{PRISM}.
+% \item
+% Explore ways to overcome incompatibilities that may arise with other packages.
+% \item
+% Full support for PDF/VT; in particular, transparency groups and PDF/VT-2s.
+% \item
+% Support for more aspects of PDF/UA and `Tagged PDF'.
+% \item
+% Develop ways to usefully use |L8U| apart from metadata and bookmarks.
+% \item
+% Support emerging standards based on PDF 2.0~\cite{PDF20}.
+% \end{itemize}
+%
+%
+% \section[Bibliography]{Bibliography}%
+% {\let\newpage\relax
+% \begin{thebibliography}{999}
+%
+% \bibitem{PDF17}Adobe Systems Inc.;
+% {PDF} Reference 1.7, November 2006.
+% Also available as \cite{ISO32000}.\\
+% \url{http://www.adobe.com/devnet/pdf/pdf_reference.html}.
+%
+% \bibitem{XMP-spec}Adobe Systems Inc.;
+% XMP Specification, Adding Intelligence to Media. September 2005.
+% Also available as ISO 16684-1:2012\,\cite{XMP-ISO}.\\
+% \url{http://www.adobe.com/devnet/xmp/}.
+%
+% \bibitem{PDFUA1} ANSI\,/\,AIIM\,/\,ISO\,14289-1:2012;
+% Document management applications --- Electronic document file format enhancement for accessibility
+% --- Part 1: Use of ISO\,32000-1\,(PDF/UA-1);
+% Technical Committee ISO/TC\,171/SC\,2 (July 2012).
+% \url{http://www.iso.org/iso/home/store/catalogue_tc/catalogue_detail.htm?csnumber=54564}.\\
+% Revised as ISO\,14289-1:2014 (December 2014):
+% \url{http://www.iso.org/iso/home/store/catalogue_tc/catalogue_detail.htm?csnumber=64599}.\\
+% Available from ANSI at \url{https://webstore.ansi.org/Standards/ISO/ISO142892014}.
+%
+% \bibitem{PDFUABSI} BS,/\,ISO\,14289-1:2014; Document Management Applications.
+% Electronic Document File Format Enhancement For Accessibility. Use Of ISO 32000-1 (PDF/UA-1) (British Standard)
+% \url{https://webstore.ansi.org/Standards/BSI/BSISO142892014}.
+%
+% \bibitem{pdfaPilot} Callas Software Gmbh.;
+% \texttt{pdfaPilot}, plug-in or desktop software for PDF/A versions.
+% \url{https://www.callassoftware.com/en/products/pdfapilot}.
+%
+% \bibitem{DC}
+% Dublin Core Metadata Element Set, Version 1.1, October 2010\\
+% \url{http://dublincore.org/documents/dces/}.
+%
+% \bibitem{BCP47}IETF; Best Current Practice \#47: Tags for Identifying Languages.
+% Incorporates RFC\,5646; obsoletes RFC\,4646. IETF Network Working Group, September 2009.
+% \url{https://tools.ietf.org/pdf/bcp47.pdf}.
+%
+% \bibitem{PDFX}ISO\,15930-1:2001;
+% Graphic technology --- Prepress digital data exchange --- Use of PDF --- Part 1:
+% Complete exchange using CMYK data (PDF/X-1 and PDF/X-1a).
+% Technical Committee ISO/TC\,130 (December 2001).
+% \url{http://www.iso.org/iso/home/store/catalogue_tc/catalogue_detail.htm?csnumber=29061}.
+%
+% \bibitem{PDFX3}ISO\,15930-3:2002;
+% Graphic technology --- Prepress digital data exchange --- Use of PDF --- Part 3:
+% Complete exchange suitable for colour-managed workflows (PDF/X-3).
+% Technical Committee ISO/TC\,130 (September 2002).
+% \url{http://www.iso.org/iso/home/store/catalogue_tc/catalogue_detail.htm?csnumber=34941}.
+%
+% \bibitem{PDFX1a}ISO\,15930-4:2003;
+% Graphic technology --- Prepress digital data exchange --- Use of PDF --- Part 4:
+% Complete exchange of CMYK and spot colour printing data using PDF 1.4 (PDF/X-1a).
+% Technical Committee ISO/TC\,130 (December 2003).
+% \url{http://www.iso.org/iso/home/store/catalogue_tc/catalogue_detail.htm?csnumber=39938}.
+%
+% \bibitem{PDFX3a}ISO\,15930-6:2003;
+% Graphic technology --- Prepress digital data exchange --- Use of PDF --- Part 6:
+% Complete exchange of printing data suitable for colour-managed workflows using PDF 1.4 (PDF/X-3).
+% Technical Committee ISO/TC\,130 (December 2003).
+% \url{http://www.iso.org/iso/home/store/catalogue_tc/catalogue_detail.htm?csnumber=39940}.
+%
+% \bibitem{PDFX4}ISO\,15930-7:2010;
+% Graphic technology --- Prepress digital data exchange --- Use of PDF --- Part 7:
+% Complete exchange of printing data (PDF/X-4) and partial exchange of printing data with external profile reference (PDF/X-4p) using PDF 1.6.
+% Technical Committee ISO/TC\,130 (July 2010).
+% \url{http://www.iso.org/iso/home/store/catalogue_tc/catalogue_detail.htm?csnumber=55843}.
+%
+% \bibitem{PDFX5}ISO\,15930-8:2010;
+% Graphic technology --- Prepress digital data exchange --- Use of PDF --- Part 8:
+% Partial exchange of printing data using PDF 1.6 (PDF/X-5). \hfil
+% Technical Committee ISO/TC\,130 (July 2010). \hfil
+% \url{http://www.iso.org/iso/home/store/catalogue_tc/catalogue_detail.htm?csnumber=55844}.
+% Revision via Corrigendum: ISO\,15930-8:2010/Cor\,1:2011 (August 2011);
+% \url{http://www.iso.org/iso/home/store/catalogue_tc/catalogue_detail.htm?csnumber=60210}.
+%
+% \bibitem{PDFVT}ISO\,16612-2:2010;
+% Graphic technology\,---\,Variable data exchange\,---\,Part 2:\hfil
+% Using PDF/X-4 \penalty-5000 and PDF/X-5 (PDF/VT-1 and PDF/VT-2).
+% Technical Committee ISO/TC\,130 (December 2005). \hfil
+% \href{http://www.iso.org/iso/home/store/catalogue_tc/catalogue_detail.htm?csnumber=38013}%
+% {{\small\tt http://www.iso.org/iso/home/store/catalogue\_tc/catalogue\_detail.htm?\penalty-200csnumber=38013}}.
+%
+% \bibitem{XMP-ISO}ISO\,16684-1:2012;
+% Graphic technology --- Extensible metadata platform (XMP) specification --- Part 1:
+% Data model, serialization and core properties.
+% Technical Committee ISO/TC\,130 (February 2012).
+% \url{http://www.iso.org/iso/home/store/catalogue_tc/catalogue_detail.htm?csnumber=57421}.
+%
+% \bibitem{PDFA}ISO\,19005-1:2005;
+% Document Management --- Electronic document file format for long term preservation
+% --- Part 1: Use of PDF\,1.4\,(PDF/A-1);
+% Technical Committee ISO/TC\,171/SC\,2 (Sept. 2005).
+% Revisions via Corrigenda: ISO\,19005-1:2005/Cor\,1:2007 (March 2007);
+% ISO\,19005-1:2005/Cor\,2:2011 (Dec. 2011). \\
+% \url{http://www.iso.org/iso/catalogue_detail?csnumber=38920}.
+%
+% \bibitem{PDFA2}ISO\,19005-2:2011;
+% Document Management --- Electronic document file format for long term preservation
+% --- Part 2: Use of ISO\,32000-1\,(PDF/A-2); \hfill
+% Technical Committee ISO/\penalty-200 TC\,171/SC\,2 (June 2011).\\
+% \url{http://www.iso.org/iso/catalogue_detail?csnumber=50655}.
+%
+% \bibitem{PDFA3}ISO\,19005-3:2012;
+% Document Management --- Electronic document file format for long term preservation
+% --- Part 3: Use of ISO\,32000-1 with support for embedded files (PDF/A-3);
+% Technical Committee ISO/TC\,171/SC\,2 (October 2012).\\
+% \url{http://www.iso.org/iso/catalogue_detail?csnumber=57229}.
+%
+% \bibitem{PDFE}ISO\,24517-1:2008;
+% Document Management --- Engineering document format using PDF --- Part 1:
+% Use of PDF 1.6 (PDF/E-1);
+% Technical Committee ISO/TC\,171/SC\,2 (May 2008).\\
+% \url{http://www.iso.org/iso/catalogue_detail?csnumber=42274}.
+%
+% \bibitem{ISO32000}ISO\,32000-1:2008;
+% Document management\,---\,Portable document format\,(PDF\,1.7);
+% Technical Committee ISO/TC\,171/SC\,2 (July 2008).
+% Also available as \cite{PDF17}.\\
+% \url{http://www.iso.org/iso/catalogue_detail?csnumber=51502}.
+%
+% \bibitem{PDF20}ISO\,32000-2:2017;
+% Document management --- Portable document format --- Part~2: PDF\,2.0;
+% Technical Committee ISO/TC\,171/SC\,2 Document file formats, EDMS systems
+% and authenticity of information. (July 2017)\\
+% \url{https://www.iso.org/standard/63534.html}.
+%
+% \bibitem{LC2} F.\,Mittelbach, M.\,Goossens with J.\,Braams, D.\,Carlisle, C.\,Rowley;
+% The \LaTeX\ Companion --- 2nd edition. Addison--Wesley (now Pearson Education Inc.), 2004.
+% ISBN 0-201-36299-6 (paperback).
+%
+% \bibitem{TN0009}PDF/A Competence Centre;
+% TechNote 0009: XMP Extension Schemas in PDF/A-1. (March 2008)
+% \href{https://www.pdfa.org/publication/technical-note-tn-0009-xmp-extension-schemas-in-pdfa-1/}%
+% {\small\tt https://www.pdfa.org/publication/technical-note-tn-0009-xmp-extension\penalty-200 -schemas-in-pdfa-1/}.
+%
+% \bibitem{PDF-UA}
+% PDF/UA Technical Implementation Guide: Understanding ISO\,14289-1 (PDF/UA-1). \penalty-200
+% AIIM Global Community of Information Professionals. \hfil
+% \href{http://www.aiim.org/Research-and-Publications/standards/committees/PDFUA/Technical-Implementation-Guide}%
+% {\small\tt http://www.aiim.org/Re\penalty-200 search-and-Publications/standards/committees/PDFUA/Technical-Implementation\penalty-200 -Guide}.
+%
+% \bibitem{colorp} N.\,Preining;
+% \texttt{colorprofiles} \textemdash\ Collection of free ICC profiles.
+% \TeX\ and \LaTeX\ package (by R.\,Moore), distributed with \TeX{}Live. (November 2018)\\
+% \url{https://ctan.org/pkg/colorprofiles}.
+%
+% \bibitem{PRISM}PRISM; Publishing Requirements for Industry Standard Metadata.
+% PRISM Metadata Initiative; Idealliance Working Group.
+% \url{http://www.idealliance.org/specifications/prism-metadata-initiative/prism}
+%
+% \bibitem{pdfx}C.\,V.\,Radhakrishnan, \Thanh, Ross Moore, Peter Selinger;
+% Generation of PDF/X- and PDF/A-compliant PDFs with \pdftex --- \texttt{pdfx.sty}.
+% TUGboat Vol.\,36, No.\,2; TUG 2015 Conference Proceedings. \TeX\ Users Group, 2015; pp.\,136--142.
+%
+% \bibitem{veraPDF} veraPDF. Industry Supported PDF/A Validation.
+% Software, dual-licensed under the GNU General Public License v3 or later (GPLv3+)
+% and Mozilla Public License v2 or later (MPLv2+). \url{https://verapdf.org}.
+% Wiki: \url{https://github.com/veraPDF/veraPDF-validation-profiles/wiki}
+%
+% \bibitem{RDF} World Wide Web Consortium (W3C);
+% Resource Description Format: RDF 1.1 XML Syntax. W3C Recommendation. (February 2014)
+% \url{https://www.w3.org/TR/rdf-syntax-grammar/}.
+%
+% \bibitem{wikiPDF}Wikipedia;
+% PDF/A: \url{https://en.wikipedia.org/wiki/PDF/A}\newline
+% PDF/E: \url{https://en.wikipedia.org/wiki/PDF/E}\newline
+% PDF/VT: \url{https://en.wikipedia.org/wiki/PDF/VT}\newline
+% PDF/UA: \url{https://en.wikipedia.org/wiki/PDF/UA}\newline
+% PDF/X: \url{https://en.wikipedia.org/wiki/PDF/X}
+%
+% \end{thebibliography}
+% }\goodbreak
+% \section[Implementation]{Implementation}
+%
+% \iffalse
+%<*package>
+% \fi \hfuzz=2.5pt%
+% \begin{macrocode}
+\@ifpackageloaded{pdfxmult}{%
+ \PackageError{pdfx}%
+ {^^JThis package may not be used in conjunction with the \space
+ pdfxmult \space package}%
+ {Type \space x <return> \space to exit; or just \space <return> \space
+ to continue without this package.}%
+ \expandafter\let\csname opt@pdfx.sty\endcsname\@empty\endinput
+}{}%
+\NeedsTeXFormat{LaTeX2e}
+\ProvidesPackage{pdfx}
+ [2019/02/27 v1.6.3 PDF/X and PDF/A support (CVR/HTH/RRM/PS)]
+
+\newif\ifpdfx@noBOM \pdfx@noBOMfalse % use a BOM in the XMP packet
+\newif\ifpdfx@x \pdfx@xfalse % PDF/X mode
+\newif\ifpdfx@e \pdfx@efalse % PDF/E mode; not fully implemented yet
+\newif\ifpdfx@ua\pdfx@uafalse % PDF/UA mode; not fully implemented yet
+\newif\ifpdfx@vt \pdfx@vtfalse % PDF/VT mode, extension of PDF/X
+\newif\ifno@iccprofile % used with PDF/X-4p and PDF/X-5pg
+\newif\ifpdfx@noerr % error messages become just warnings
+\newif\ifpdfx@omitcharset % used with pdfomitcharset primitive
+
+\DeclareOption{noerr}{\pdfx@noerrtrue}
+
+%% Not all combinations of the following parameters are meaningful.
+\def\xmp@Part{1} % PDF/A part: 1, 2, or 3
+\def\xmp@Conformance{B} % Conformance level: A, B, or U
+\def\xmp@ReleaseDate{2005} % 2001 for PDF/X-1, 2005 for PDF/A-1,
+ % 2010 for PDF/A-2, 2012 for PDF/A-3.
+
+\newcount\pdfx@minorversion
+\expandafter\ifx\csname pdfminorversion\endcsname\relax
+\else
+ \global\pdfx@minorversion=\the\pdfminorversion
+\fi
+
+\def\pdfx@ErrorWarning#1#2#3#4{%
+ \ifpdfx@noerr \PackageWarning{pdfx}{#1.^^J #2#3.^^J}%
+ \else \PackageError{pdfx}{#1}{#2#4.^^J
+ Use option 'noerr' to avoid this message.^^J}%
+ \fi}
+
+\def\pdfx@Xvn@message{%
+ \pdfx@ErrorWarning{PDF/X-5n has no default profile}%
+ {Provide your own}{; continuing to build a non-valid document}%
+ {, else continue to build a non-valid document}%
+}
+
+%% support pdfomitcharset primitive, added to pdfTeX in 2019
+\DeclareOption{nocharset}{\pdfx@omitcharsettrue}
+\DeclareOption{usecharset}{\pdfx@omitcharsetfalse}
+
+%% PDF/A options
+%% default is to create PDF/A-1b
+%% options can change this for PDF/X or higher levels of PDF/A
+\DeclareOption{a-1a}{\global\pdfx@xfalse\def\xmp@Part{1}%
+ \def\xmp@Conformance{A}\def\xmp@ReleaseDate{2005}%
+ \pdfx@omitcharsetfalse}
+\DeclareOption{a-1b}{\global\pdfx@xfalse\def\xmp@Part{1}%
+ \def\xmp@Conformance{B}\def\xmp@ReleaseDate{2005}%
+ \pdfx@omitcharsetfalse}
+\DeclareOption{a-2a}{\global\pdfx@xfalse\def\xmp@Part{2}%
+ \def\xmp@Conformance{A}\def\xmp@ReleaseDate{2010}%
+ \pdfx@omitcharsettrue}
+\DeclareOption{a-2b}{\global\pdfx@xfalse\def\xmp@Part{2}%
+ \def\xmp@Conformance{B}\def\xmp@ReleaseDate{2010}%
+ \pdfx@omitcharsettrue}
+\DeclareOption{a-2u}{\global\pdfx@xfalse\def\xmp@Part{2}%
+ \def\xmp@Conformance{U}\def\xmp@ReleaseDate{2010}%
+ \pdfx@omitcharsettrue}
+\DeclareOption{a-3a}{\global\pdfx@xfalse\def\xmp@Part{3}%
+ \def\xmp@Conformance{A}\def\xmp@ReleaseDate{2012}%
+ \pdfx@omitcharsettrue}
+\DeclareOption{a-3b}{\global\pdfx@xfalse\def\xmp@Part{3}%
+ \def\xmp@Conformance{B}\def\xmp@ReleaseDate{2012}%
+ \pdfx@omitcharsettrue}
+\DeclareOption{a-3u}{\global\pdfx@xfalse\def\xmp@Part{3}%
+ \def\xmp@Conformance{U}\def\xmp@ReleaseDate{2012}%
+ \pdfx@omitcharsettrue}
+%%
+%% PDF/X options
+%% comments added, using
+%% https://www.eci.org/_media/downloads/pdfx/pdfx_faq_english_nov05.pdf
+%% https://en.wikipedia.org/wiki/PDF/X#List_of_the_PDF.2FX_standards
+%%
+\DeclareOption{x-1}{\global\pdfx@xtrue\def\xmp@Part{1}% obsolete
+ \def\xmp@Conformance{a}\def\xmp@ReleaseDate{1999}% CMYK only
+ \global\pdfx@minorversion=2\relax
+ \pdfx@ErrorWarning{PDF/X-1:1999 is no longer an accepted standard}%
+ {Use option x-1a1 or x-1a3 }{; continuing to build a non-valid document}%
+ {, else continue to build a non-valid document.}%
+ }% effectively same as x-1a1
+\DeclareOption{x-1a}{\global\pdfx@xtrue\def\xmp@Part{1}% CMYK only
+ \def\xmp@Conformance{a}\def\xmp@ReleaseDate{2003}%
+ \global\pdfx@minorversion=3 }% same as x-1a3
+\DeclareOption{x-1a1}{\global\pdfx@xtrue\def\xmp@Part{1}%
+ \def\xmp@Conformance{a}\def\xmp@ReleaseDate{2001}% ISO 15930-1:2001
+ \global\pdfx@minorversion=3 }
+\DeclareOption{x-1a3}{\global\pdfx@xtrue\def\xmp@Part{1}%
+ \def\xmp@Conformance{a}\def\xmp@ReleaseDate{2003}% ISO 15930-4:2003
+ \global\pdfx@minorversion=3 }
+\DeclareOption{x-2}{\global\pdfx@xtrue\def\xmp@Part{2}% XMP Metadata
+%% \def\xmp@Conformance{}\def\xmp@ReleaseDate{2002}% ISO 15930-2:2003
+ \def\xmp@Conformance{}\def\xmp@ReleaseDate{2003}% ISO 15930-5, withdrawn 2011
+ \global\pdfx@minorversion=4\relax
+ \pdfx@ErrorWarning{PDF/X-2:2003 was never published as a standard}%
+ {Use option x-1a or x-3 }{; continuing to build a non-valid document}%
+ {, else continue to build a non-valid document}%
+ }% external OPI workflow, i.e. multiple files involved
+\DeclareOption{x-3}{\global\pdfx@xtrue\def\xmp@Part{3}% RGB allowed, but rare!
+ \def\xmp@Conformance{}\def\xmp@ReleaseDate{2003}%
+ \global\pdfx@minorversion=4 }% same as x-303
+\DeclareOption{x-302}{\global\pdfx@xtrue\def\xmp@Part{3}%
+ \def\xmp@Conformance{}\def\xmp@ReleaseDate{2002}% ISO 15930-3:2002
+ \global\pdfx@minorversion=3 }
+\DeclareOption{x-303}{\global\pdfx@xtrue\def\xmp@Part{3}%
+ \def\xmp@Conformance{}\def\xmp@ReleaseDate{2003}% ISO 15930-6:2003
+ \global\pdfx@minorversion=4 }
+%%% Later versions, yet to be fully implemented
+\DeclareOption{x-4}{\global\pdfx@xtrue\def\xmp@Part{4}%
+ \def\xmp@Conformance{}\def\xmp@ReleaseDate{2010}% ISO 15930-7:2010
+ \global\pdfx@minorversion=6 }% same as x-410
+\DeclareOption{x-4p}{\global\pdfx@xtrue\global\no@iccprofiletrue
+ \def\xmp@Part{4}\def\xmp@Conformance{p}\def\xmp@ReleaseDate{2010}%
+ \global\pdfx@minorversion=6 }% same as x-4p10
+\DeclareOption{x-408}{\global\pdfx@xtrue\def\xmp@Part{4}%
+ \def\xmp@Conformance{}\def\xmp@ReleaseDate{2008}% ISO 15930-7:2008
+ \global\pdfx@minorversion=6 }
+\DeclareOption{x-410}{\global\pdfx@xtrue\def\xmp@Part{4}%
+ \def\xmp@Conformance{}\def\xmp@ReleaseDate{2010}% ISO 15930-7:2010
+ \global\pdfx@minorversion=6 }
+\DeclareOption{x-4p08}{\global\pdfx@xtrue\global\no@iccprofiletrue
+ \def\xmp@Part{4}\def\xmp@Conformance{p}\def\xmp@ReleaseDate{2008}%
+ \global\pdfx@minorversion=6 }% ISO 15930-7:2010
+\DeclareOption{x-4p10}{\global\pdfx@xtrue\global\no@iccprofiletrue
+ \def\xmp@Part{4}\def\xmp@Conformance{p}\def\xmp@ReleaseDate{2010}%
+ \global\pdfx@minorversion=6 }% ISO 15930-7:2010
+\DeclareOption{x-5}{\global\pdfx@xtrue\def\xmp@Part{5}%
+ \def\xmp@Conformance{g}\def\xmp@ReleaseDate{2008}%
+ \global\pdfx@minorversion=6 }% ISO 15930-8:2010
+\DeclareOption{x-5g}{\global\pdfx@xtrue\def\xmp@Part{5}%
+ \def\xmp@Conformance{g}\def\xmp@ReleaseDate{2008}%
+ \global\pdfx@minorversion=6 }% ISO 15930-8:2010
+\DeclareOption{x-5n}{\global\pdfx@xtrue %\global\no@iccprofiletrue
+ \def\xmp@Part{5}\def\xmp@Conformance{n}\def\xmp@ReleaseDate{2010}%
+ \global\pdfx@minorversion=6 \pdfx@Xvn@message}% ISO 15930-8:2010
+\DeclareOption{x-5pg}{\global\pdfx@xtrue\global\no@iccprofiletrue
+ \def\xmp@Part{5}\def\xmp@Conformance{pg}\def\xmp@ReleaseDate{2010}%
+ \global\pdfx@minorversion=6 }% ISO 15930-8:2010
+\DeclareOption{x-508}{\global\pdfx@xtrue\def\xmp@Part{5}%
+ \def\xmp@Conformance{g}\def\xmp@ReleaseDate{2008}%
+ \global\pdfx@minorversion=6 }% ISO 15930-8:2008
+\DeclareOption{x-5g08}{\global\pdfx@xtrue\def\xmp@Part{5}%
+ \def\xmp@Conformance{g}\def\xmp@ReleaseDate{2008}%
+ \global\pdfx@minorversion=6 }% ISO 15930-8:2008
+\DeclareOption{x-5n08}{\global\pdfx@xtrue %\global\no@iccprofiletrue
+ \def\xmp@Part{5}\def\xmp@Conformance{n}\def\xmp@ReleaseDate{2008}%
+ \global\pdfx@minorversion=6 \pdfx@Xvn@message}% ISO 15930-8:2008
+\DeclareOption{x-5pg08}{\global\pdfx@xtrue\global\no@iccprofiletrue
+ \def\xmp@Part{5}\def\xmp@Conformance{pg}\def\xmp@ReleaseDate{2008}%
+ \global\pdfx@minorversion=6 }% ISO 15930-8:2008
+\DeclareOption{x-510}{\global\pdfx@xtrue\def\xmp@Part{5}%
+ \def\xmp@Conformance{g}\def\xmp@ReleaseDate{2010}%
+ \global\pdfx@minorversion=6 }% ISO 15930-8:2010
+\DeclareOption{x-5g10}{\global\pdfx@xtrue\def\xmp@Part{5}%
+ \def\xmp@Conformance{g}\def\xmp@ReleaseDate{2010}%
+ \global\pdfx@minorversion=6 }% ISO 15930-8:2010
+\DeclareOption{x-5n10}{\global\pdfx@xtrue %\global\no@iccprofiletrue
+ \def\xmp@Part{5}\def\xmp@Conformance{n}\def\xmp@ReleaseDate{2010}%
+ \global\pdfx@minorversion=6 \pdfx@Xvn@message}% ISO 15930-8:2010
+\DeclareOption{x-5pg10}{\global\pdfx@xtrue\global\no@iccprofiletrue
+ \def\xmp@Part{5}\def\xmp@Conformance{pg}\def\xmp@ReleaseDate{2010}%
+ \global\pdfx@minorversion=6 }% ISO 15930-8:2010
+%%
+%% PDF/E options
+%%
+\DeclareOption{e}{\global\pdfx@xfalse\global\pdfx@etrue
+ \def\xmp@Part{1}\def\xmp@Conformance{}\def\xmp@ReleaseDate{2008}%
+ \gdef\thepdfminorversion{6}% same as e-1
+ }
+\DeclareOption{e-1}{\global\pdfx@xfalse\global\pdfx@etrue
+ \def\xmp@Part{1}\def\xmp@Conformance{}\def\xmp@ReleaseDate{2008}%
+ \gdef\thepdfminorversion{6}% ISO 24517-1:2008
+ }
+%% PDF/UA options
+%%
+\let\xmp@PDFUA\@empty
+\DeclareOption{ua}{\global\pdfx@uatrue % ISO 14289-1:2012, 2014
+ \def\xmp@UAlevel{1}\let\xmp@PDFUA\relax}% same as ua-1
+\DeclareOption{ua-1}{\global\pdfx@uatrue % ISO 14289-1:2012, 2014
+ \def\xmp@UAlevel{1}\let\xmp@PDFUA\relax}
+%%
+%% PDF/VT options
+%%
+\DeclareOption{vt-1}{\global\pdfx@xtrue\global\pdfx@vttrue
+ \def\xmp@Part{4}\def\xmp@vtPart{1}\def\xmp@Conformance{}%
+ \def\xmp@vtConformance{}\def\xmp@ReleaseDate{2010}%
+ \gdef\xmpMM@VersionID{1}%
+ \global\pdfx@minorversion=6 }
+\DeclareOption{vt-2}{\global\pdfx@xtrue\global\pdfx@vttrue
+ \global\no@iccprofiletrue \gdef\xmpMM@VersionID{1}%
+ \def\xmp@Part{5}\def\xmp@vtPart{2}\def\xmp@Conformance{pg}%
+ \def\xmp@vtConformance{}\def\xmp@ReleaseDate{2010}%
+ \global\pdfx@minorversion=6 }
+\DeclareOption{vt-2s}{\global\pdfx@xtrue\global\pdfx@vttrue
+ \global\no@iccprofiletrue \gdef\xmpMM@VersionID{1}%
+ \def\xmp@Part{5}\def\xmp@vtPart{2}\def\xmp@Conformance{pg}%
+ \def\xmp@vtConformance{s}\def\xmp@ReleaseDate{2010}%
+ \global\pdfx@minorversion=6 }
+
+%% options to alter PDF minor version, in case needed in special circumstances
+\DeclareOption{pdf12}{\global\pdfx@minorversion=2 }% 1999
+\DeclareOption{pdf13}{\global\pdfx@minorversion=3 }% 2001 Acrobat 4 (ISBN 0-201-61588-6)
+\DeclareOption{pdf14}{\global\pdfx@minorversion=4 }% 2003 Acrobat 5 (ISBN 0-201-75839-3)
+\DeclareOption{pdf15}{\global\pdfx@minorversion=5 }% 2005 Acrobat 6
+\DeclareOption{pdf16}{\global\pdfx@minorversion=6 }% 2006 Acrobat 7 (ISBN 0-321-30474-8)
+\DeclareOption{pdf17}{\global\pdfx@minorversion=7 }% 2008 ISO 32000-1:2008
+
+%% inhibits writing the XMP byte-order marker
+\DeclareOption{noBOM}{\pdfx@noBOMtrue}
+\DeclareOption{useBOM}{\pdfx@noBOMfalse}
+
+%% options for language character macros in XMP metadata
+\newif\ifcyrxmp
+\newif\ifcyrKOIxmp
+\newif\ifgrkxmp
+\newif\ifgrkLGRxmp
+\newif\ifhebxmp
+\newif\ifhebHEBxmp
+\newif\ifarbxmp
+\newif\ifarmxmp
+\newif\ifarmSCIxmp
+\newif\ifdevxmp
+\newif\ifvnmxmp
+\newif\iflatEXTxmp
+\newif\iflatLATxmp
+\newif\ifipaxmp
+\newif\ifmathxmp
+
+\DeclareOption{latxmp}{\global\latEXTxmptrue}
+\DeclareOption{LATxmp}{\global\latLATxmptrue\global\latEXTxmptrue}
+\DeclareOption{cyrxmp}{\global\cyrxmptrue}
+\DeclareOption{KOIxmp}{\global\cyrKOIxmptrue\global\cyrxmptrue}
+\DeclareOption{grkxmp}{\global\grkxmptrue}
+\DeclareOption{LGRxmp}{\global\grkLGRxmptrue\global\grkxmptrue}
+\DeclareOption{hebxmp}{\global\hebxmptrue}
+\DeclareOption{HEBxmp}{\global\hebHEBxmptrue\global\hebxmptrue}
+\DeclareOption{arbxmp}{\global\arbxmptrue}
+\DeclareOption{armxmp}{\global\armxmptrue}
+\DeclareOption{AR8xmp}{\global\armSCIxmptrue\global\armxmptrue}
+\DeclareOption{devxmp}{\global\devxmptrue}
+\DeclareOption{vnmxmp}{\global\vnmxmptrue}
+\DeclareOption{ipaxmp}{\global\ipaxmptrue\global\latEXTxmptrue}
+\DeclareOption{mathxmp}{\global\mathxmptrue\global\grkxmptrue}
+
+%% all the above
+\DeclareOption{allxmp}{%
+ \global\cyrxmptrue
+ \global\cyrKOIxmptrue
+ \global\grkxmptrue
+ \global\grkLGRxmptrue
+ \global\hebxmptrue
+ \global\hebHEBxmptrue
+ \global\arbxmptrue
+ \global\armxmptrue
+ \global\armSCIxmptrue
+ \global\devxmptrue
+ \global\vnmxmptrue
+ \global\latEXTxmptrue
+ \global\latLATxmptrue
+ \global\vnmxmptrue
+ \global\ipaxmptrue
+ \global\mathxmptrue
+ \global\let\pdfx@useactivespacestrue\pdfx@useactivespacesfalse
+}
+
+\newif\ifpdfx@useactivespaces
+
+\ExecuteOptions{noBOM,a-1b}
+\ProcessOptions
+
+\ifpdfx@ua\ifpdfx@x\else
+ \expandafter\if\xmp@Conformance A\else
+ \pdfx@ErrorWarning{PDF/UA requires 'Tagged PDF' for any structure.^^J
+ Then PDF/A Conformance must be 'a'}%
+ {Use option 'a-\xmp@Part a'}%
+ {; continuing with a likely invalid document}%
+ {, or continue for a likely invalid document}%
+%%% \gdef\xmp@Conformance{A}% do we want this?
+\fi\fi\fi
+
+\expandafter\ifx\csname pdflastobj\endcsname\relax
+\else
+ \ifnum\pdflastobj >\z@ % pdftex has already written objects
+ \ifnum\pdfx@minorversion=\pdfminorversion\else
+ \PackageError{pdfx}%
+ {^^J(pdfx) Cannot change the \string\pdfminorversion^^J%
+ (pdfx) PDF version remains at 1.\the\pdfminorversion.^^J%
+ (pdfx) Use \string\pdfminorversion=\the\pdfx@minorversion\space
+ before \string\documentclass}%
+ {(pdfx) Another package or document-class has written objects into the PDF.^^J%
+ (pdfx) Hit return to continue with PDF version 1.\the\pdfminorversion.%
+ }%
+ \global\pdfx@minorversion=\the\pdfminorversion
+ \fi
+ \else
+ \global\pdfminorversion\pdfx@minorversion
+ \fi
+\fi
+
+\expandafter\ifx\csname thepdfminorversion\endcsname\relax
+ \expandafter\ifx\csname pdfminorversion\endcsname\relax
+ \else
+ \xdef\thepdfminorversion{\the\pdfminorversion}
+\fi\fi
+
+\expandafter\ifx\csname pdfminorversion\endcsname\relax
+ \gdef\thepdfminorversion{4}% assumed with XeTeX
+ \def\pdf@minorversion@xetex=#1{\gdef\thepdfminorversion{#1}}%
+ \let\pdfminorversion\pdf@minorversion@xetex
+\else
+ \ifnum\pdfminorversion < 4\relax
+ \ifpdfx@x
+ % more testing needed with PDF/X
+ \else
+ \pdfminorversion=4\relax % assumed for PDF/A ; options may change this for PDF/X
+ \gdef\thepdfminorversion{4}%
+ \fi
+ \else
+ \ifnum\pdfminorversion<\thepdfminorversion\relax
+ \global\pdfminorversion=\thepdfminorversion\relax
+ \fi
+ \fi
+\fi
+\expandafter\ifx\csname pdfresetpageorigin\endcsname\relax\else
+ \pdfresetpageorigin=0
+\fi
+
+\expandafter\ifx\csname pdfomitcharset\endcsname\relax\else
+ \ifpdfx@omitcharset
+ \pdfomitcharset = 1 %
+ %% do not create /Charset listings of font glyphs;
+ %% optional for PDF/A-2,3 and PDF 2.x
+ \else
+ \pdfomitcharset = 0 %
+ %% create the /Charset listings of font glyphs, required with PDF/A-1
+ \fi
+\fi
+
+\newif\ifpdfx@nopdfinfo
+\ifmathxmp\pdfx@nopdfinfotrue
+\else
+ \iflatLATxmp\pdfx@nopdfinfotrue
+\else
+ \ifgrkLGRxmp\pdfx@nopdfinfotrue
+\else
+ \ifhebHEBxmp\pdfx@nopdfinfotrue
+\else
+ \ifcyrKOIxmp\pdfx@nopdfinfotrue
+\else
+ \ifarmSCIxmp\pdfx@nopdfinfotrue
+\fi\fi\fi\fi\fi\fi
+
+\iflatLATxmp\pdfx@useactivespacestrue\fi
+\ifgrkLGRxmp\pdfx@useactivespacestrue\fi
+\ifhebHEBxmp\pdfx@useactivespacestrue\fi
+\ifcyrKOIxmp\pdfx@useactivespacestrue\fi
+\ifarmSCIxmp\pdfx@useactivespacestrue\fi
+
+\newif\ifpdfx@transliterated
+\ifgrkLGRxmp\pdfx@transliteratedtrue\fi
+\ifhebHEBxmp\pdfx@transliteratedtrue\fi
+\ifarmSCIxmp\pdfx@transliteratedtrue\fi
+
+\RequirePackage{iftex}
+\RequirePackage{ifpdf}
+%% Support for pdfTeX primitives when using XeTeX:
+\RequirePackage{ifxetex}
+\ifxetex
+ \def\pdfx@pages@xetex#1{\special{pdf:put @pages <<#1>>}}
+ \def\pdfx@pageattr@xetex#1{\special{pdf:put @thispage <<#1>>}}
+ \def\pdfx@docinfo@xetex#1{\special{pdf:put @docinfo <<#1>>}}
+ \def\pdfx@catalog@xetex#1{\special{pdf:put @catalog <<#1>>}}
+ \def\pdfx@mapline@xetex#1{\special{pdf:mapline #1}}%% does this work ??
+%% \def\pdfx@mapline@xetex#1{}
+ \def\pdf@compress@xetex=#1{}
+%%
+ \let\pdfpagesattr\pdfx@pages@xetex
+ \let\pdfinfo\pdfx@docinfo@xetex
+ \let\pdfcatalog\pdfx@catalog@xetex
+ \let\pdfmapline\pdfx@mapline@xetex
+ \let\pdfcompresslevel\pdf@compress@xetex
+ \let\pdfobjcompresslevel\pdf@compress@xetex
+\fi
+
+%%\newif\ifpdfx@pdfmark % control future support for dvips
+
+\RequirePackage{everyshi}
+\RequirePackage{ifluatex}
+\ifluatex
+ \IfFileExists{luatex85.sty}{% 2016+
+ \RequirePackage{luatex85}%
+ \edef\pdfcreationdate{\pdfcreationdate}%
+ }{% earlier versions
+ }%
+ \RequirePackage{pdftexcmds}%
+ \let\pdfx@mdfivesum\pdf@mdfivesum
+ \let\pdfescapestring\pdf@escapestring
+\else
+ \ifxetex
+ \expandafter\ifx\csname mdfivesum\endcsname\relax
+ % too early a version of XeTeX
+ \let\pdfx@mdfivesum\relax
+ \else
+ % since mid-2015
+ \let\pdfx@mdfivesum\mdfivesum
+ \fi
+ \else
+ \let\pdfx@mdfivesum\pdfmdfivesum
+ \fi
+\fi
+\def\pdfx@encodingfile{l8u-penc.def}
+
+\expandafter\ifx\csname pdftexbanner\endcsname\relax
+ \expandafter\ifx\csname luatexbanner\endcsname\relax
+ \else % luatex85
+ \let\pdftexbanner\luatexbanner
+ \fi
+\else % pdfTeX, but which version ???
+ {\endlinechar=-1
+ \everyeof{\noexpand}%
+ \xdef\pdfx@bannerstring{\expandafter\scantokens\expandafter{\pdftexbanner}}
+ }%
+ \def\pdfx@testbannerstr{%
+ This is pdfTeX, Version 3.14159265-2.6-1.40.15 (TeX Live 2014/dev)
+ kpathsea version 6.2.0dev}%
+ \ifx\pdfx@bannerstring\pdfx@testbannerstr
+ \typeout{This version of pdfTeX cannot write out upper-range character bytes,
+ 128-255.}%
+ \typeout{Any UTF-8 Unicode characters in the Metadata will not be written
+ correctly.}%
+ \typeout{Please update to a more stable version of pdfTeX.^^J}%
+ \fi
+\fi
+
+%% How to support XeTeX here ?
+\ifpdfx@x
+ \pdfobjcompresslevel=0 \relax
+ \expandafter\ifx\csname pdfinterwordspaceoff\endcsname\relax\else
+ \pdfinterwordspaceoff
+ \let\pdfinterwordspaceon\pdfinterwordspaceoff
+ \let\pdfinterwordspace\relax
+ \fi
+ \expandafter\ifx\csname pdfgeninterwordspace\endcsname\relax\else
+ \pdfgeninterwordspace=0 \relax
+ \fi
+ \begingroup
+ \dimen0=0.996264009963\paperwidth\relax
+ \edef\pdfx@mwidth{\strip@pt\dimen0}%
+ \advance\dimen0 -25\p@
+ \edef\pdfx@twidth{\strip@pt\dimen0}%
+ \dimen0=0.996264009963\paperheight\relax
+ \edef\pdfx@mheight{\strip@pt\dimen0}%
+ \advance\dimen0 -20\p@
+ \edef\pdfx@theight{\strip@pt\dimen0}%
+ \ifxetex
+ \xdef\pdfx@everypage@xetex{%
+ /MediaBox[0 0 \pdfx@mwidth\space \pdfx@mheight]^^J
+ /BleedBox[0 0 \pdfx@mwidth\space \pdfx@mheight]^^J
+ /CropBox[0 0 \pdfx@mwidth\space \pdfx@mheight]^^J
+ /TrimBox[25 20 \pdfx@twidth\space \pdfx@theight]%
+ }%
+ \fi
+ \edef\next{\endgroup\pdfpagesattr{%
+ /MediaBox[0 0 \pdfx@mwidth\space \pdfx@mheight]^^J
+%% /ArtBox[0 0 \pdfx@mwidth\space \pdfx@mheight]^^J
+ /BleedBox[0 0 \pdfx@mwidth\space \pdfx@mheight]^^J
+ /CropBox[0 0 \pdfx@mwidth\space \pdfx@mheight]^^J
+ /TrimBox[25 20 \pdfx@twidth\space \pdfx@theight]}
+ }\next
+ \ifxetex
+ \AtBeginDvi{%
+ \expandafter\immediate\pdfx@pageattr@xetex{\pdfx@everypage@xetex}}%
+ \EveryShipout{%
+ \expandafter\immediate\pdfx@pageattr@xetex{\pdfx@everypage@xetex}}%
+ \else
+ \EveryShipout{%
+ \expandafter\ifx\expandafter\relax\the\pdfpageattr\relax
+ \immediate\pdfpageattr\expandafter{\the\pdfpagesattr}%
+ \fi }%
+ \fi
+\else
+%% PDF/A-1b doesn't allow object compression
+ \ifnum\xmp@ReleaseDate=2005\relax
+ \expandafter\ifx\csname pdfobjcompresslevel\endcsname\relax
+ \else
+ \pdfobjcompresslevel=0\relax
+ \fi \fi
+\fi
+\ifxetex
+%% How to support XeTeX here ?
+\else
+ \ifnum\thepdfminorversion >3 \relax
+ \expandafter\ifx\csname pdfsuppresswarningdupmap\endcsname\relax
+ \expandafter\ifx\csname pdfmapline\endcsname\relax\else
+ \pdfmapline{+dummy-space <dummy-space.pfb}
+ \fi
+ \else
+ \advance\pdfsuppresswarningdupmap 1
+ \pdfmapline{+dummy-space <dummy-space.pfb}
+ \advance\pdfsuppresswarningdupmap -1
+ \fi
+ \expandafter\ifx\csname pdfgeninterwordspace\endcsname\relax\else
+ \pdfgeninterwordspace=1 \relax
+ \fi
+ \fi
+\fi
+
+\ifluatex\else\ifxetex\else
+ \@ifpackageloaded{inputenc}{%
+ }{%
+ \RequirePackage{inputenc}
+ % allow this to be loaded again cleanly
+ \expandafter\let\csname ver@inputenc.sty\endcsname\relax
+ }
+\fi\fi
+
+%% pseudo-declare the L8U encoding
+\expandafter\let\csname L8U-cmd\expandafter\endcsname\csname OT1-cmd\endcsname
+\@namedef{T@L8U}{}%
+\@namedef{D@L8U}{}%
+\@namedef{M@L8U}{}%
+
+%% adjust to LaTeX's 2018 change to the default encoding
+\expandafter\ifx\csname inputencodingname\endcsname\relax
+\else
+ \def\pdfx@restoreencoding#1{%
+ \@tempcnta=128
+ \loop
+ \catcode\@tempcnta=13
+ \advance\@tempcnta\@ne
+ \ifnum\@tempcnta<256
+ \repeat
+ \inputencoding{#1}%
+ \let\LastDeclaredEncoding\pdfx@LastDeclaredEncoding
+ \let\DeclareFontEncoding@\pdfx@DeclareFontEncoding@
+ \let\DeclareUnicodeCharacter\pdfx@DeclareUnicodeCharacter
+ }%
+ \AtEndOfPackage{\pdfx@restoreencoding\pdfx@inputencodingname}%
+ \let\pdfx@inputencodingname\inputencodingname
+ \global\let\pdfx@DeclareUnicodeCharacter\DeclareUnicodeCharacter
+ \global\let\pdfx@DeclareFontEncoding@\DeclareFontEncoding@
+ \UseRawInputEncoding
+\fi
+\InputIfFileExists{\pdfx@encodingfile}{}{}
+\expandafter\ifx\csname pdfx@inputencodingname\endcsname\relax
+\else
+ \let\inputencodingname\pdfx@inputencodingname
+%% \global\let\DeclareUnicodeCharacter\pdfx@DeclareUnicodeCharacter
+%% \global\let\DeclareFontEncoding@\DeclareFontEncoding@saved
+ \global\let\pdfx@LastDeclaredEncoding\LastDeclaredEncoding
+ \expandafter\inputencoding\expandafter{\inputencodingname}%
+\fi
+
+%%----------------------------------------------------------------------
+%% Macros for reading XMP data with special catcodes. Usage:
+%%
+%% \xmp@parse{continuation}{data}
+%%
+%% The effect is to read the data with special catcodes: '<', '>', and
+%% '&' are "active", and '^', '_', '#', '$', '~' are "other". The data
+%% is then bound to the locally scoped name \@this, and the
+%% continuation is called.
+\def\xmp@parse#1{%
+ \begingroup
+ \catcode`\<=13\catcode`\>=13\catcode`\&=13\catcode`\^=12
+ \catcode`\_=12\catcode`\#=12\catcode`\$=12\catcode`\~=12
+ \ifpdfx@useactivespaces\obeyspaces\fi % capture spaces as active characters
+ \xmp@doparse{#1}%
+}
+\def\afterxmp@parse{}% methods may change this
+\def\xmp@doparse#1#2{%
+ \def\@this{#2}#1
+ \endgroup
+ % do any post-processing
+ \afterxmp@parse
+ \def\afterxmp@parse{}%
+}
+
+%%----------------------------------------------------------------------
+%% Local commands. They are only brought into scope during the reading
+%% of xmpdata. Some fields can have a 'xml:lang' attribute; others must have.
+%% LANG values as in: (BCP 47) https://tools.ietf.org/html/rfc5646#appendix-A
+%%
+\def\xmp@lang@Default{x-default}
+\let\xmp@lang@Title\xmp@lang@Default
+\let\xmp@lang@Author\xmp@lang@Default
+\let\xmp@lang@Keywords\xmp@lang@Default
+\let\xmp@lang@Subject\xmp@lang@Default
+%%\def\xmp@lang@CreatorTool{\xmp@lang@Default}
+\let\xmp@lang@Producer\xmp@lang@Default
+%%\def\xmp@lang@Volume{\xmp@lang@Default}
+%%\def\xmp@lang@Issue{\xmp@lang@Default}
+\let\xmp@lang@Copyright\xmp@lang@Default
+\let\xmp@lang@PublicationType\xmp@lang@Default
+\let\xmp@lang@Publisher\xmp@lang@Default
+\let\xmp@lang@Coverage\xmp@lang@Default
+\let\xmp@lang@Contributor\xmp@lang@Default
+\let\xmp@lang@Relation\xmp@lang@Default
+%%% PRISM fields
+\let\xmp@lang@CoverDisplayDate\xmp@lang@Default
+\let\xmp@lang@JournalTitle\xmp@lang@Default
+%%\def\xmp@lang@JournalNumber{\xmp@lang@Default}
+%%% xmp: & xmpRights: fields
+\let\xmp@lang@Advisory\xmp@lang@Default
+\let\xmp@lang@Identifier\xmp@lang@Default
+\let\xmp@lang@Nickname\xmp@lang@Default
+\let\xmp@lang@Owner\xmp@lang@Default
+
+%% some validators require a language attribute for
+%% dc:title set via \Title
+%% dc:description set via \Subject
+%% dc:rights set via \Copyright
+%% xmpRights:UsageTerms set via \Copyright
+%%
+{\catcode `\" 12 \catcode`\: 12 \catcode`\= 12
+ \gdef\pdfx@xmp@checklang#1{%
+ \ifx #1\xmp@lang@Default\else\space xml:lang="#1"\fi}
+ \gdef\pdfx@xmp@strictlang#1{\space xml:lang="#1"}
+}% end of \catcodes
+\let\xmp@checklang\pdfx@xmp@checklang
+\let\xmp@strictlang\pdfx@xmp@strictlang
+
+\newcommand{\pdfx@Title}[1][]{%
+ \ifx\relax#1\relax\else\gdef\xmp@lang@Title{#1}\fi
+ \xmp@parse{\global\let\xmp@Title\@this}}
+
+%% allow for multiple authors, keywords and languages
+%% also: contributor, date, relation, type, thumbnails
+%% and AuthoritativeDomain, Advisory, Identifier, Owner
+\newcommand{\pdfx@Author}[1][]{%
+ \ifx\relax#1\relax\else\gdef\xmp@lang@Author{#1}\fi
+ \def\afterxmp@parse{\let\Author\pdfx@extraAuthor}%
+ \xmp@parse{\global\let\xmp@Author\@this}}
+\newcommand{\pdfx@Keywords}[1][]{%
+ \ifx\relax#1\relax\else\gdef\xmp@lang@Keywords{#1}\fi
+ \def\afterxmp@parse{\let\Keywords\pdfx@extraKeywords}%
+ \xmp@parse{\global\let\xmp@Keywords\@this}}
+\newcommand{\pdfx@Language}{%
+ \def\afterxmp@parse{\let\Language\pdfx@extraLanguages}%
+ \xmp@parse{\global\let\xmp@Language\@this}}
+
+\newcommand{\pdfx@AuthoritativeDomain}{%
+ \def\afterxmp@parse{\let\AuthoritativeDomain\pdfx@extraAuthoritativeDomain}%
+ \xmp@parse{\global\let\xmp@AuthoritativeDomain\@this}}
+\newcommand{\pdfx@Date}{%
+ \def\afterxmp@parse{\let\Date\pdfx@extraDate}%
+ \xmp@parse{\global\let\xmp@Date\@this}}
+\newcommand{\pdfx@Contributor}[1][]{%
+ \ifx\relax#1\relax\else\gdef\xmp@lang@Contributor{#1}\fi
+ \def\afterxmp@parse{\let\Contributor\pdfx@extraContributor}%
+ \xmp@parse{\global\let\xmp@Contributor\@this}}
+\newcommand{\pdfx@Relation}[1][]{%
+ \ifx\relax#1\relax\else\gdef\xmp@lang@Relation{#1}\fi
+ \def\afterxmp@parse{\let\Relation\pdfx@extraRelation}%
+ \xmp@parse{\global\let\xmp@Relation\@this}}
+%%\newcommand{\pdfx@Type}[1][]{%
+%% \ifx\relax#1\relax\else\gdef\xmp@lang@Type{#1}\fi
+%% \def\afterxmp@parse{\let\Type\pdfx@extraType}%
+%% \xmp@parse{\global\let\xmp@Type\@this}}
+
+\newcommand{\pdfx@Advisory}[1][]{%
+ \ifx\relax#1\relax\else\gdef\xmp@lang@Advisory{#1}\fi
+ \def\afterxmp@parse{\let\Advisory\pdfx@extraAdvisory}%
+ \xmp@parse{\global\let\xmp@Advisory\@this}}
+\newcommand{\pdfx@Identifier}[1][]{%
+ \ifx\relax#1\relax\else\gdef\xmp@lang@Identifier{#1}\fi
+ \def\afterxmp@parse{\let\Identifier\pdfx@extraIdentifier}%
+ \xmp@parse{\global\let\xmp@Identifier\@this}}
+\newcommand{\pdfx@Thumbnails}{%
+ \def\afterxmp@parse{\let\Thumbnails\pdfx@extraThumbnails}%
+ \xmp@parse{\global\let\xmp@Thumbnails\@this}}
+
+\newcommand{\pdfx@Owner}[1][]{%
+ \ifx\relax#1\relax\else\gdef\xmp@lang@Owner{#1}\fi
+ \def\afterxmp@parse{\let\Owner\pdfx@extraOwner}%
+ \xmp@parse{\global\let\xmp@Owner\@this}}
+
+{\obeyspaces%
+ \ifpdfx@useactivespaces\gdef\pdfx@insert@sep{\sep }%
+ \else\gdef\pdfx@insert@sep{\sep}\fi%
+}
+\newcommand{\pdfx@extraAuthor}[1][]{%
+ \ifx\relax#1\relax
+ \expandafter\expandafter\expandafter\gdef
+ \expandafter\expandafter\expandafter\xmp@Author
+ \expandafter\expandafter\expandafter{%
+ \expandafter\xmp@Author\pdfx@insert@sep}%
+ \else
+ \expandafter\expandafter\expandafter\gdef
+ \expandafter\expandafter\expandafter\xmp@Author
+ \expandafter\expandafter\expandafter{%
+ \expandafter\xmp@Author\pdfx@insert@sep[#1]}%
+ \fi
+ \def\afterxmp@parse{%
+ \expandafter\expandafter\expandafter\gdef
+ \expandafter\expandafter\expandafter\xmp@Author
+ \expandafter\expandafter\expandafter{%
+ \expandafter\xmp@Author\xmp@extraAuthor}%
+ }%
+ \xmp@parse{\global\let\xmp@extraAuthor\@this}%
+ }%
+\newcommand{\pdfx@extraKeywords}[1][]{%
+ \ifx\relax#1\relax
+ \expandafter\expandafter\expandafter\gdef
+ \expandafter\expandafter\expandafter\xmp@Keywords
+ \expandafter\expandafter\expandafter{%
+ \expandafter\xmp@Keywords\pdfx@insert@sep}%
+ \else%
+ \expandafter\expandafter\expandafter\gdef
+ \expandafter\expandafter\expandafter\xmp@Keywords
+ \expandafter\expandafter\expandafter{%
+ \expandafter\xmp@Keywords\pdfx@insert@sep[#1]}%
+ \fi%
+ \def\afterxmp@parse{%
+ \expandafter\expandafter\expandafter\gdef
+ \expandafter\expandafter\expandafter\xmp@Keywords
+ \expandafter\expandafter\expandafter{%
+ \expandafter\xmp@Keywords\xmp@extraKeywords}}%
+ \xmp@parse{\global\let\xmp@extraKeywords\@this}%
+ }%
+\newcommand{\pdfx@extraLanguages}{%
+ \expandafter\expandafter\expandafter\gdef
+ \expandafter\expandafter\expandafter\xmp@Language
+ \expandafter\expandafter\expandafter{%
+ \expandafter\xmp@Language\pdfx@insert@sep}%
+ \def\afterxmp@parse{%
+ \expandafter\expandafter\expandafter\gdef
+ \expandafter\expandafter\expandafter\xmp@Language
+ \expandafter\expandafter\expandafter{%
+ \expandafter\xmp@Language\xmp@extraLanguages}}%
+ \xmp@parse{\global\let\xmp@extraLanguages\@this}%
+ }%
+
+\newcommand{\pdfx@extraContributor}[1][]{%
+ \ifx\relax#1\relax
+ \expandafter\expandafter\expandafter\gdef
+ \expandafter\expandafter\expandafter\xmp@Contributor
+ \expandafter\expandafter\expandafter{%
+ \expandafter\xmp@Contributor\pdfx@insert@sep}%
+ \else
+ \expandafter\expandafter\expandafter\gdef
+ \expandafter\expandafter\expandafter\xmp@Contributor
+ \expandafter\expandafter\expandafter{%
+ \expandafter\xmp@Contributor\pdfx@insert@sep[#1]}%
+ \fi
+ \def\afterxmp@parse{%
+ \expandafter\expandafter\expandafter\gdef
+ \expandafter\expandafter\expandafter\xmp@Contributor
+ \expandafter\expandafter\expandafter{%
+ \expandafter\xmp@Contributor\xmp@extraContributor}%
+ }%
+ \xmp@parse{\global\let\xmp@extraContributor\@this}%
+ }%
+
+\newcommand{\pdfx@extraAuthoritativeDomain}{%
+ \expandafter\expandafter\expandafter\gdef
+ \expandafter\expandafter\expandafter\xmp@AuthoritativeDomain
+ \expandafter\expandafter\expandafter{%
+ \expandafter\xmp@AuthoritativeDomain\pdfx@insert@sep}%
+ \def\afterxmp@parse{%
+ \expandafter\expandafter\expandafter\gdef
+ \expandafter\expandafter\expandafter\xmp@AuthoritativeDomain
+ \expandafter\expandafter\expandafter{%
+ \expandafter\xmp@AuthoritativeDomain\xmp@extraAuthoritativeDomain}%
+ }%
+ \xmp@parse{\global\let\xmp@extraAuthoritativeDomain\@this}%
+ }%
+
+\newcommand{\pdfx@extraDate}{%
+ \expandafter\expandafter\expandafter\gdef
+ \expandafter\expandafter\expandafter\xmp@Date
+ \expandafter\expandafter\expandafter{%
+ \expandafter\xmp@Date\pdfx@insert@sep}%
+ \def\afterxmp@parse{%
+ \expandafter\expandafter\expandafter\gdef
+ \expandafter\expandafter\expandafter\xmp@Date
+ \expandafter\expandafter\expandafter{%
+ \expandafter\xmp@Date\xmp@extraDate}%
+ }%
+ \xmp@parse{\global\let\xmp@extraDate\@this}%
+ }%
+
+\newcommand{\pdfx@extraRelation}[1][]{%
+ \ifx\relax#1\relax
+ \expandafter\expandafter\expandafter\gdef
+ \expandafter\expandafter\expandafter\xmp@Relation
+ \expandafter\expandafter\expandafter{%
+ \expandafter\xmp@Relation\pdfx@insert@sep}%
+ \else
+ \expandafter\expandafter\expandafter\gdef
+ \expandafter\expandafter\expandafter\xmp@Relation
+ \expandafter\expandafter\expandafter{%
+ \expandafter\xmp@Relation\pdfx@insert@sep[#1]}%
+ \fi
+ \def\afterxmp@parse{%
+ \expandafter\expandafter\expandafter\gdef
+ \expandafter\expandafter\expandafter\xmp@Relation
+ \expandafter\expandafter\expandafter{%
+ \expandafter\xmp@Relation\xmp@extraRelation}%
+ }%
+ \xmp@parse{\global\let\xmp@extraRelation\@this}%
+ }%
+
+%%\newcommand{\pdfx@extraType}[1][]{%
+%%% \show\xmp@Type
+%% \ifx\relax#1\relax
+%% \expandafter\expandafter\expandafter\gdef
+%% \expandafter\expandafter\expandafter\xmp@Type
+%% \expandafter\expandafter\expandafter{%
+%% \expandafter\xmp@Type\pdfx@insert@sep}%
+%% \else
+%% \expandafter\expandafter\expandafter\gdef
+%% \expandafter\expandafter\expandafter\xmp@Type
+%% \expandafter\expandafter\expandafter{%
+%% \expandafter\xmp@Type\pdfx@insert@sep[#1]}%
+%% \fi
+%% \def\afterxmp@parse{%
+%% \expandafter\expandafter\expandafter\gdef
+%% \expandafter\expandafter\expandafter\xmp@Type
+%% \expandafter\expandafter\expandafter{%
+%% \expandafter\xmp@Type\xmp@extraType}%
+%% %\show\xmp@Type
+%% }%
+%% \xmp@parse{\global\let\xmp@extraType\@this}%
+%% }%
+
+\newcommand{\pdfx@extraAdvisory}[1][]{%
+ \ifx\relax#1\relax
+ \expandafter\expandafter\expandafter\gdef
+ \expandafter\expandafter\expandafter\xmp@Advisory
+ \expandafter\expandafter\expandafter{%
+ \expandafter\xmp@Advisory\pdfx@insert@sep}%
+ \else
+ \expandafter\expandafter\expandafter\gdef
+ \expandafter\expandafter\expandafter\xmp@Advisory
+ \expandafter\expandafter\expandafter{%
+ \expandafter\xmp@Advisory\pdfx@insert@sep[#1]}%
+ \fi
+ \def\afterxmp@parse{%
+ \expandafter\expandafter\expandafter\gdef
+ \expandafter\expandafter\expandafter\xmp@Advisory
+ \expandafter\expandafter\expandafter{%
+ \expandafter\xmp@Advisory\xmp@extraAdvisory}%
+ }%
+ \xmp@parse{\global\let\xmp@extraAdvisory\@this}%
+ }%
+
+\newcommand{\pdfx@extraIdentifier}[1][]{%
+ \ifx\relax#1\relax
+ \expandafter\expandafter\expandafter\gdef
+ \expandafter\expandafter\expandafter\xmp@Identifier
+ \expandafter\expandafter\expandafter{%
+ \expandafter\xmp@Identifier\pdfx@insert@sep}%
+ \else
+ \expandafter\expandafter\expandafter\gdef
+ \expandafter\expandafter\expandafter\xmp@Identifier
+ \expandafter\expandafter\expandafter{%
+ \expandafter\xmp@Identifier\pdfx@insert@sep[#1]}%
+ \fi
+ \def\afterxmp@parse{%
+ \expandafter\expandafter\expandafter\gdef
+ \expandafter\expandafter\expandafter\xmp@Identifier
+ \expandafter\expandafter\expandafter{%
+ \expandafter\xmp@Identifier\xmp@extraIdentifier}%
+ }%
+ \xmp@parse{\global\let\xmp@extraIdentifier\@this}%
+ }%
+
+\newcommand{\pdfx@extraThumbnails}[1][]{%
+ \ifx\relax#1\relax
+ \expandafter\expandafter\expandafter\gdef
+ \expandafter\expandafter\expandafter\xmp@Thumbnails
+ \expandafter\expandafter\expandafter{%
+ \expandafter\xmp@Thumbnails\pdfx@insert@sep}%
+ \else
+ \expandafter\expandafter\expandafter\gdef
+ \expandafter\expandafter\expandafter\xmp@Thumbnails
+ \expandafter\expandafter\expandafter{%
+ \expandafter\xmp@Thumbnails\pdfx@insert@sep[#1]}%
+ \fi
+ \def\afterxmp@parse{%
+ \expandafter\expandafter\expandafter\gdef
+ \expandafter\expandafter\expandafter\xmp@Thumbnails
+ \expandafter\expandafter\expandafter{%
+ \expandafter\xmp@Thumbnails\xmp@extraThumbnails}%
+ }%
+ \xmp@parse{\global\let\xmp@extraThumbnails\@this}%
+ }%
+
+\newcommand{\pdfx@extraOwner}[1][]{%
+ \ifx\relax#1\relax
+ \expandafter\expandafter\expandafter\gdef
+ \expandafter\expandafter\expandafter\xmp@Owner
+ \expandafter\expandafter\expandafter{%
+ \expandafter\xmp@Owner\pdfx@insert@sep}%
+ \else
+ \expandafter\expandafter\expandafter\gdef
+ \expandafter\expandafter\expandafter\xmp@Owner
+ \expandafter\expandafter\expandafter{%
+ \expandafter\xmp@Owner\pdfx@insert@sep[#1]}%
+ \fi
+ \def\afterxmp@parse{%
+ \expandafter\expandafter\expandafter\gdef
+ \expandafter\expandafter\expandafter\xmp@Owner
+ \expandafter\expandafter\expandafter{%
+ \expandafter\xmp@Owner\xmp@extraOwner}%
+ }%
+ \xmp@parse{\global\let\xmp@extraOwner\@this}%
+ }%
+
+\newcommand{\pdfx@Subject}[1][]{%
+ \ifx\relax#1\relax\else\gdef\xmp@lang@Subject{#1}\fi
+ \xmp@parse{\global\let\xmp@Subject\@this}}
+\newcommand{\pdfx@Producer}[1][]{%
+ \ifx\relax#1\relax\else\gdef\xmp@lang@Producer{#1}\fi
+ \xmp@parse{\global\let\xmp@Producer\@this}}
+\newcommand{\pdfx@Publisher}[1][]{%
+ \ifx\relax#1\relax\else\gdef\xmp@lang@Publisher{#1}\fi
+ \xmp@parse{\global\let\xmp@Publisher\@this}}
+\newcommand{\pdfx@Copyright}[1][]{%
+ \ifx\relax#1\relax\else\gdef\xmp@lang@Copyright{#1}\fi
+ \xmp@parse{\global\let\xmp@Copyright\@this%
+ \ifx\xmp@Copyrighted\@empty\gdef\xmp@Copyrighted{True}\fi}}
+
+\newcommand{\pdfx@Coverage}[1][]{%
+ \ifx\relax#1\relax\else\gdef\xmp@lang@Coverage{#1}\fi
+ \xmp@parse{\global\let\xmp@Coverage\@this}}
+
+%% PRISM Text fields
+\newcommand{\pdfx@CoverDisplayDate}[1][]{%
+ \ifx\relax#1\relax\else\gdef\xmp@lang@CoverDisplayDate{#1}\fi
+ \xmp@parse{\global\let\xmp@CoverDisplayDate\@this}}
+\newcommand{\pdfx@JournalTitle}[1][]{%
+ \ifx\relax#1\relax\else\gdef\xmp@lang@JournalTitle{#1}\fi
+ \ifx\xmp@PublicationType\@empty\gdef\xmp@PublicationType{journal}\fi
+ \xmp@parse{\global\let\xmp@JournalTitle\@this}}
+
+%% Uses PRISM Controlled Vocabulary:
+%% http://prismstandard.org/vocabularies/3.0/aggregationtype.xml
+%% blog, book, bookazine, catalog, feed, journal, magazine, manual
+%% newsletter, newspaper, other, report, pamphlet, vook, whitepaper
+%%
+\newcommand{\pdfx@PublicationType}[1][]{%
+ \ifx\relax#1\relax\else\gdef\xmp@lang@PublicationType{#1}\fi
+ \xmp@parse{\global\let\xmp@PublicationType\@this}}
+
+\def\pdfx@localcommands{
+ \let\Title\pdfx@Title
+ \let\Author\pdfx@Author
+ \let\Keywords\pdfx@Keywords
+ \let\Subject\pdfx@Subject
+ \let\Language\pdfx@Language
+ \def\CreatorTool{\xmp@parse{\global\let\xmp@CreatorTool\@this}}
+ \let\Producer\pdfx@Producer
+ \def\Volume{\xmp@parse{\global\let\xmp@Volume\@this}}
+ \def\Issue{\xmp@parse{\global\let\xmp@Issue\@this}}
+ \let\CoverDisplayDate\pdfx@CoverDisplayDate
+ \def\CoverDate{\xmp@parse{\global\let\xmp@CoverDate\@this}}
+ \let\Copyright\pdfx@Copyright
+ \def\CopyrightURL{\xmp@parse{\global\let\xmp@CopyrightURL\@this%
+ \ifx\xmp@Copyrighted\@empty\gdef\xmp@Copyrighted{True}\fi}}
+ \def\Copyrighted{\xmp@parse{\global\let\xmp@Copyrighted\@this}}
+ \def\Doi{\xmp@parse{\global\let\xmp@Doi\@this}}
+ \def\ISBN{\xmp@parse{\global\let\xmp@ISBN\@this}}
+ \def\URLlink{\xmp@parse{\global\let\xmp@URL\@this}}
+ \def\Lastpage{\xmp@parse{\global\let\xmp@Lastpage\@this}}
+ \def\Firstpage{\xmp@parse{\global\let\xmp@Firstpage\@this}}
+ \let\PublicationType\pdfx@PublicationType
+ \let\Journaltitle\pdfx@JournalTitle
+ \def\Journalnumber{\xmp@parse{\global\let\xmp@Journalnumber\@this}}
+ \let\Publisher\pdfx@Publisher
+ \let\Coverage\pdfx@Coverage
+ \def\Source{\xmp@parse{\global\let\xmp@Source\@this}}
+ \let\Contributor\pdfx@Contributor
+ \let\Date\pdfx@Date
+ \let\Relation\pdfx@Relation
+ \let\Advisory\pdfx@Advisory
+ \def\BaseURL{\xmp@parse{\global\let\xmp@BaseURL\@this}}
+ \let\Identifier\pdfx@Identifier
+ \let\Nickname\pdfx@Nickname
+ \let\Thumbnails\pdfx@Thumbnails
+ \let\Owner\pdfx@Owner
+ \def\CertificateURL{\xmp@parse{\global\let\xmp@CertificateURL\@this}}
+ \def\MMversionID{\xmp@parse{\global\let\xmpMM@versionID\@this}}
+%% \let\Type\pdfx@Type
+%%
+%% currently unused; for backward compatibility only
+ \let\AuthoritativeDomain\pdfx@AuthoritativeDomain
+ \let\Creator\CreatorTool % for backward compatibility
+ \let\Org\Publisher % for backward compatibility
+ \let\WebStatement\CopyrightURL % for backward compatibility
+}
+
+%%----------------------------------------------------------------------
+%% The following characters and markup can be used within the XMP data
+%% defined by \Author, \Title, and so on.
+%%
+%% * All printable non-whitespace ASCII characters except
+%% '%', '{', '}', '\' can be used as themselves.
+%%
+%% * All printable non-whitespace UTF-8 encoded Unicode characters
+%% from the basic multilingual plane can be used as themselves.
+%%
+%% * As usual, consecutive whitespace characters are contracted to a
+%% single space. Whitespace after a macro such as \copyright is
+%% ignored. Blank lines are not permitted.
+%%
+%% * The following markup can be used:
+%% '\ ' - a literal space (for example after a macro)
+%% \% - a literal '%'
+%% \{ - a literal '{'
+%% \} - a literal '}'
+%% \backslash - a literal '\'
+%% \copyright - the (c) copyright symbol
+%%
+%% \sep - only permitted within \Author, \Keywords, \Publisher.
+%%
+%% * For backward compatibility, \& and \TextCopyright are also
+%% provided. Their use is deprecated.
+
+%%----------------------------------------------------------------------
+%% The macro \pdfx@actives binds the active characters
+%% '&', '<', and '>' to \pdfx@amp, \pdfx@lt, and \pdfx@gt,
+%% respectively, without actually making them active.
+\begingroup
+ \catcode`\<=13
+ \catcode`\>=13
+ \catcode`\&=13
+ \gdef\pdfx@actives{
+ \def&{\pdfx@amp}
+ \def<{\pdfx@lt}
+ \def>{\pdfx@gt}
+ }
+\endgroup
+
+%%----------------------------------------------------------------------
+%% Markup bindings to be used during XMP generation.
+
+{%
+ \catcode`\<=12 \catcode`\>=12 \catcode`\/=12 \catcode`\:=12 \catcode`\"=12
+\obeyspaces\ifpdfx@useactivespaces%
+ \gdef\pdfx@sep {\pdfx@check@lang}%
+\else%
+ \gdef\pdfx@sep{\pdfx@check@lang}%
+\fi%
+ \xdef\pdfx@sep@nolang{</rdf:li>^^J <rdf:li>}%
+ \xdef\pdfx@sep@lang[#1]{</rdf:li>^^J <rdf:li xml:lang="#1">}%
+}% end of \obeyspaces and \catcode ....
+
+\def\pdfx@check@lang#1{%
+ \ifx[#1\expandafter\@firstoftwo
+ \else\expandafter\@secondoftwo\fi
+ {\pdfx@sep@lang#1}{\pdfx@sep@nolang#1}}
+
+\def\pdfx@xmpmarkup{%
+ \pdfx@actives
+ \edef\@amp{\expandafter\@gobble\string\&}%
+ \edef\@hash{\expandafter\@gobble\string\#}%
+ \edef\ {\expandafter\@gobble\string\ }%
+ \edef\%{\expandafter\@gobble\string\%}%
+ \edef\{{\expandafter\@gobble\string\{}%
+ \edef\}{\expandafter\@gobble\string\}}%
+ \edef\backslash{\expandafter\@gobble\string\\}%
+ \def\@unicode##1{\@amp\@hash x##1;}%
+ \def\pdfx@amp{\@unicode{0026}}%
+ \def\pdfx@lt{\@unicode{003c}}%
+ \def\pdfx@gt{\@unicode{003e}}%
+ \def\copyright{\@unicode{00A9}}%
+ \let\&\pdfx@amp % for backward compatibility
+ \let\TextCopyright\copyright % for backward compatibility
+ \let\sep\pdfx@sep
+ \pdfx@xmpunimarkup % only need this when writing XMP
+ \the\pdfxsafeforxmp@toks
+}
+
+%% cope with active spaces with LGR encoding
+%% and the spaces written out with \IeC in KOI8-r
+%% It's possible to have both together.
+\def\liixu@IeC#1#{\liixu@IeCi}
+\def\liixu@IeCi#1{\liixu@IeCii#1}
+\def\liixu@IeCii#1#2{#1}
+\def\liixu@enableIeC{\ifpdfx@useactivespaces
+ \let\IeC\liixu@IeC\else\def\IeC##1{##1}\fi}
+\def\liixu@numberline#1#{\liixu@numberlinei}
+\def\liixu@numberlinei#1{\liixu@numberlineii#1}
+\def\liixu@numberlineii#1{\textLF #1. }
+\def\liixu@enablenumberline{\ifpdfx@useactivespaces
+ \let\numberline\liixu@numberline
+ \else\def\numberline##1{\textLF ##1. }\fi}
+
+\def\pdfx@xmpunimarkup{%
+ \liixu@enableIeC
+ \liixu@enablenumberline
+ \def\empty{}% used in LICR patterns
+ \LIIXUscriptcommands
+ \LIIXUtipacommands
+ \LIIXUmapTeXnames
+%% from Hyperref's psdextra.def
+ \csname psdmapshortnames\endcsname
+ \csname psdaliasnames\endcsname
+%% from lu8enc.def
+ \csname LIIXUmapmathletterlikes\endcsname
+ \csname LIIXUmapmathspaces\endcsname
+ \iflatLATxmp
+ \LIIXUmaplatinchars
+ \LIIXUcancelfontswitches
+ \fi
+ \ifmathxmp
+ \let\(\textinlinemath
+ \let\[\textdisplaymath
+ \LIIXUmapmathaccents
+ \LIIXUmapisomathgreek
+ \LIIXUmapmatharrowsA
+ \LIIXUmapmathoperatorsA
+ \LIIXUmapmathoperatorsB
+ \LIIXUmapmiscmathsymbolsA
+ \LIIXUmapsupparrowsA
+ \LIIXUmapsupparrowsB
+ \LIIXUmapmiscmathsymbolsB
+ \LIIXUmapsuppmathoperators
+ \LIIXUmapunimathgreek
+ \LIIXUmapmathalphabets
+ \fi
+ \ifarbxmp \LIIXUmaparabicletters\fi
+ \ifarmxmp \LIIXUmaparmenianletters\fi
+ \ifdevxmp\LIIXUmapdevaccents\fi
+ \ifgrkxmp \LIIXUmapgreekletters\fi
+ \ifhebxmp \LIIXUmaphebrewletters\fi
+}
+
+%% In case macros are used in XMP Metadata, need a way to map these
+%% to simple text, rather than specific font characters, or whatever:
+\newtoks\pdfxsafeforxmp@toks
+\def\pdfxEnableCommands{% user command
+ \begingroup
+ \ifpdfx@useactivespaces\obeyspaces\fi
+ \pdfx@EnableCommands
+}
+\def\pdfx@EnableCommands#1{% internal command
+ \expandafter\global\expandafter\pdfxsafeforxmp@toks
+ \expandafter{\the\pdfxsafeforxmp@toks#1}%
+ \endgroup
+}
+
+%%----------------------------------------------------------------------
+%% Markup bindings to be used during PDF string generation.
+
+\def\pdfx@pdfmarkup{%
+ \pdfx@actives
+ \edef\%{\expandafter\@gobble\string\%}%
+ \edef\{{\expandafter\@gobble\string\{}%
+ \edef\}{\expandafter\@gobble\string\}}%
+ \edef\pdfx@backslash{\expandafter\@gobble\string\\}%
+ \def\backslash{\pdfx@backslash000\pdfx@backslash134}%
+ \edef\pdfx@amp{\expandafter\@gobble\string\&}%
+ \edef\pdfx@lt{\expandafter\@gobble\string\<}%
+ \edef\pdfx@gt{\expandafter\@gobble\string\>}%
+ \let\TextCopyright\copyright % for backward compatibility
+ \def\sep{; }%
+ %\let\sep\pdfx@sep
+%% Note: '\ ', \&, \copyright are already predefined by hyperref.
+%% allow LICRs to expand into PDF strings
+ \def\cf@encoding{PU}%
+ \def\9##1{\ifcase##1\string\0\or\string\1\or\string\2\or\string\3\fi}%
+ \def\8{\string\00}%
+ \def\0{\string\0}\def\1{\string\1}\def\2{\string\2}\def\3{\string\3}%
+ \pdfx@xmpunimarkup
+ \the\pdfxsafeforxmp@toks
+}
+
+%%----------------------------------------------------------------------
+%% Defaults
+\ifxetex
+ \def\xmp@Producer{XeTeX}
+\else\ifluatex
+ \def\xmp@Producer{LuaTeX}
+\else
+ \def\xmp@Producer{pdfTeX}
+\fi\fi
+\global\let\pdfxProducer\xmp@Producer
+
+\global\let\xmp@CreatorTool\@empty
+\global\let\xmp@Title\@empty
+\global\let\xmp@Author\@empty
+\global\let\xmp@Keywords\@empty
+\global\let\xmp@Subject\@empty
+\global\let\xmp@Language\@empty
+\global\let\xmp@Volume\@empty
+\global\let\xmp@Issue\@empty
+\global\let\xmp@CoverDisplayDate\@empty
+\global\let\xmp@CoverDate\@empty
+\global\let\xmp@Copyright\@empty
+\global\let\xmp@Copyrighted\@empty
+\global\let\xmp@CopyrightURL\@empty
+\gdef\xmp@WebStatement{\xmp@CopyrightURL}
+\global\let\xmp@Doi\@empty
+\global\let\xmp@ISBN\@empty
+\global\let\xmp@URL\@empty
+\global\let\xmp@Lastpage\@empty
+\global\let\xmp@Firstpage\@empty
+\global\let\xmp@PublicationType\@empty
+\global\let\xmp@Journaltitle\@empty
+\global\let\xmp@Journalnumber\@empty
+%%\global\let\xmp@Type\@empty
+\global\let\xmp@Contributor\@empty
+\global\let\xmp@Coverage\@empty
+\global\let\xmp@Date\@empty
+\global\let\xmp@Relation\@empty
+\global\let\xmp@Source\@empty
+\global\let\xmp@Publisher\@empty
+\gdef\xmp@Org{\xmp@Publisher}
+\global\let\xmp@AuthoritativeDomain\@empty
+\global\let\xmp@Advisory\@empty
+\global\let\xmp@BaseURL\@empty
+\global\let\xmp@Identifier\@empty
+\global\let\xmp@Nickname\@empty
+\global\let\xmp@Thumbnails\@empty
+\global\let\xmp@Owner\@empty
+\global\let\xmp@CertificateURL\@empty
+
+%%----------------------------------------------------------------------
+%% Alternative way to get the CreationDate using Lua for XeTeX
+\ifdefined\pdfcreationdate\else
+ \begingroup %% ensure correct catcodes, not done by \dospecials
+ \catcode`\:=12 \catcode`\.=12
+\begin{filecontents*}{creationdate.lua}
+ os.remove("creationdate.timestamp")
+ io.output("creationdate.timestamp"):write(os.date("\\edef\\tempa{\\string D:%Y%m%d%H%M%S}\n\\def\\tempb{%z}"))
+\end{filecontents*}
+ \endgroup
+ \ifnum\shellescape=1
+ \begingroup %% ensure correct catcodes when file is read in
+ \catcode`\'=12 \catcode`\.=12 \catcode`\:=12 \catcode`\+=12
+ \immediate\write18{texlua creationdate.lua}
+ \input{creationdate.timestamp}
+ \def\tempc#1#2#3#4#5{#1#2#3'#4#5'}
+ \edef\tempb{\expandafter\tempc\tempb}
+ \edef\x{\endgroup\def\noexpand\pdfcreationdate{\tempa\tempb}}\x
+ \else
+ \begingroup %% ensure correct catcodes in the error/warning messages
+ \catcode`\<=12 \catcode`\>=12 \catcode`\"=12 \catcode`\-=12
+ \catcode`\: 12 \catcode`\' 12 \catcode`\= 12
+ \ifpdfx@noerr
+ \PackageWarning{pdfx}{%
+ CreationDate is not properly supported;^^J
+ PDF validation may fail. To avoid this problem use:^^J
+ xelatex -shell-escape -output-driver="xdvipdfmx -z 0" <filename>^^J}
+ \else
+ \PackageError{pdfx}{%
+ CreationDate is not properly supported;^^J
+ PDF validation may fail.}{To avoid this problem use:^^J
+ xelatex -shell-escape -output-driver="xdvipdfmx -z 0" <filename> }
+ \fi
+ %% Using a constant date, to allow processing to finish smoothly.
+ \edef\x{\endgroup
+ \def\noexpand\pdfcreationdate{\string D:20181028075445+10'00'}}%
+ \x
+ \fi
+\fi
+
+%%----------------------------------------------------------------------
+\def\pdfx@findUUID#1{\edef\pdfx@tmpstring{\pdfx@mdfivesum{#1}}
+ \expandafter\pdfx@eightofnine\pdfx@tmpstring\end}
+\def\pdfx@eightofnine#1#2#3#4#5#6#7#8#9\end{%
+ \xdef\pdfx@eightchars{#1#2#3#4#5#6#7#8}
+ \pdfx@fouroffive#9\end}
+\def\pdfx@fouroffive#1#2#3#4#5\end{\xdef\pdfx@ffourchars{#1#2#3#4}
+ \pdfx@sfouroffive#5\end}
+\def\pdfx@sfouroffive#1#2#3#4#5\end{\xdef\pdfx@sfourchars{#1#2#3#4}
+ \pdfx@tfouroffive#5\end}
+\def\pdfx@tfouroffive#1#2#3#4#5\end{\xdef\pdfx@tfourchars{#1#2#3#4}
+ \xdef\pdfx@laststring{#5}}
+
+\def\pdfx@uuid{\pdfx@eightchars-%
+ \pdfx@ffourchars-%
+ \pdfx@sfourchars-%
+ \pdfx@tfourchars-%
+ \pdfx@laststring}
+
+\expandafter\ifx\csname pdfx@mdfivesum\endcsname\relax
+ \PackageError{pdfx}{%
+ No implementation for \string\pdfx@mdfivesum.^^J
+ \ifxetex XeTeX needs to be 2015 or later\fi
+ }{%
+ Continue without, but the PDF will not validate.
+ }%
+ \def\xmp@docid{}%
+ \def\pdfx@findUUID#1{}%
+ \def\pdfx@uuid{}%
+\else
+ \pdfx@findUUID{\jobname.pdf}
+ \edef\xmp@docid{\pdfx@uuid}
+\fi
+
+\expandafter\ifx\csname pdfcreationdate\endcsname\relax\relax
+ \PackageWarning{pdfx}{%
+ No implementation for \string\pdfxcreation .
+ }%
+ \def\xmp@instid{}%
+%%
+\else %% use the MD5 sum methods
+%%
+ \pdfx@findUUID{\pdfcreationdate}%
+ \edef\xmp@instid{\pdfx@uuid}
+\fi
+
+%%----------------------------------------------------------------------
+%% load xcolor before hyperref to get the link colors correct
+%%
+\PassOptionsToPackage{nosetpagesize}{color}
+\PassOptionsToPackage{nosetpagesize}{graphics}
+\@ifpackageloaded{xcolor}{%
+ % Beamer will have already loaded xcolor
+ % need to understand what options it used
+}{
+\ifpdfx@x
+ \RequirePackage[cmyk,hyperref]{xcolor}
+\else
+ \RequirePackage[rgb,hyperref]{xcolor}
+\fi
+}%
+
+%% loading puenc.def will kill a lot of what mathtext.sty established
+\@ifpackageloaded{mathtext}{%
+ \PackageWarningNoLine{pdfx}{pdfx.sty and hyperref.sty should be loaded^^J
+ before mathtext.sty , otherwise text symbols may not show in math mode.}%
+}{}
+
+\newif\ifpdfx@hluatex
+\IfFileExists{hluatex.def}{\pdfx@hluatextrue}{\pdfx@hluatexfalse}
+
+%% the "pdftex" option seems to work fine with LuaTeX
+\def\pdfx@luatest{\ifpdfx@hluatex luatex\else pdftex \fi}
+
+%% Hyperref options for PDF/X
+\edef\pdfx@pdfX@opts@pdftex{%
+ draft,pdftex,pdfpagemode=UseNone,bookmarks=false,%
+ pdfversion=1.\thepdfminorversion,pdfstartview=}
+\edef\pdfx@pdfX@opts@xetex{%
+ draft,xetex,pdfpagemode=UseNone,bookmarks=false,%
+ pdfversion=1.\thepdfminorversion,pdfstartview=}
+ \edef\pdfx@pdfX@opts@luatex{%
+ draft,\pdfx@luatest,pdfpagemode=UseNone,bookmarks=false,%
+ pdfversion=1.\thepdfminorversion,pdfstartview=}%
+
+\newif\ifpdfx@hyperrefloaded
+\expandafter\ifx\csname ifHy@pdfa\endcsname\relax\else\pdfx@hyperrefloadedtrue\fi
+
+%% Hyperref options for PDF/A and PDF/E
+\newtoks\pdfx@tmptoks
+\pdfx@tmptoks{%
+\ifHy@pdfa
+ \edef\pdfx@pdfAE@opts@pdftex{pdftex}%
+ \edef\pdfx@pdfAE@opts@xetex{xetex,pdfversion=1.\thepdfminorversion}%
+ \edef\pdfx@pdfAE@opts@luatex{\pdfx@luatest,pdfversion=1.\thepdfminorversion}%
+ \edef\pdfx@pdfAE@opts@pdfmark{pdfmark,pdfversion=1.\thepdfminorversion}%
+ \else
+ \edef\pdfx@pdfAE@opts@pdftex{pdftex,pdfa}%
+ \edef\pdfx@pdfAE@opts@xetex{xetex,pdfa,pdfversion=1.\thepdfminorversion}%
+ \edef\pdfx@pdfAE@opts@luatex{\pdfx@luatest,pdfa,pdfversion=1.\thepdfminorversion}%
+ \edef\pdfx@pdfAE@opts@pdfmark{pdfmark,pdfa,pdfversion=1.\thepdfminorversion}%
+ \fi
+}
+\ifpdfx@hyperrefloaded
+ \the\pdfx@tmptoks\relax
+\else
+ \edef\pdfx@pdfAE@opts@pdftex{pdftex,pdfa}%
+ \edef\pdfx@pdfAE@opts@xetex{xetex,pdfa,pdfversion=1.\thepdfminorversion}%
+ \edef\pdfx@pdfAE@opts@luatex{\pdfx@luatest,pdfa,pdfversion=1.\thepdfminorversion}%
+ \edef\pdfx@pdfAE@opts@pdfmark{pdfmark,pdfa,pdfversion=1.\thepdfminorversion}%
+\fi
+\pdfx@tmptoks{}%
+
+\ifpdfx@x
+ \@ifpackageloaded{hyperref}{%
+ \ifxetex
+ \expandafter\hypersetup\expandafter{\pdfx@pdfX@opts@xetex}
+ \else\ifluatex
+ \expandafter\hypersetup\expandafter{\pdfx@pdfX@opts@luatex}
+ \else
+ \expandafter\hypersetup\expandafter{\pdfx@pdfX@opts@pdftex}
+ \fi\fi
+ }{%
+ \ifxetex
+ \expandafter\RequirePackage\expandafter[\pdfx@pdfX@opts@xetex]{hyperref}
+ \else\ifluatex
+ \expandafter\RequirePackage\expandafter[\pdfx@pdfX@opts@luatex]{hyperref}
+ \else
+ \expandafter\RequirePackage\expandafter[\pdfx@pdfX@opts@pdftex]{hyperref}
+ \fi\fi
+ }%
+\else
+ \ifpdfx@e
+ \@ifpackageloaded{hyperref}{%
+ \ifxetex
+ \expandafter\hypersetup\expandafter{\pdfx@pdfAE@opts@xetex}
+ \else\ifluatex
+ \expandafter\hypersetup\expandafter{\pdfx@pdfAE@opts@luatex}
+ \else
+ \expandafter\hypersetup\expandafter{\pdfx@pdfAE@opts@pdftex}
+ \fi\fi
+ }{%
+ \ifxetex
+ \expandafter\RequirePackage\expandafter[\pdfx@pdfAE@opts@xetex]{hyperref}
+ \else\ifluatex
+ \expandafter\RequirePackage\expandafter[\pdfx@pdfAE@opts@luatex]{hyperref}
+ \else
+ \expandafter\RequirePackage\expandafter[\pdfx@pdfAE@opts@pdftex]{hyperref}
+ \fi\fi
+ }%
+ \else % generating PDF/A or ...
+ \@ifpackageloaded{hyperref}{%
+ \ifxetex
+ \expandafter\hypersetup\expandafter{\pdfx@pdfAE@opts@xetex}%
+ \else\ifluatex
+ \expandafter\hypersetup\expandafter{\pdfx@pdfAE@opts@luatex}%
+ \else
+ \expandafter\hypersetup\expandafter{\pdfx@pdfAE@opts@pdftex}%
+ \fi\fi
+ }{%
+ \ifxetex
+ \expandafter\RequirePackage\expandafter[\pdfx@pdfAE@opts@xetex]{hyperref}
+ \else\ifluatex
+ \expandafter\RequirePackage\expandafter[\pdfx@pdfAE@opts@luatex]{hyperref}
+ \else
+ \expandafter\RequirePackage\expandafter[\pdfx@pdfAE@opts@pdftex]{hyperref}
+ \fi\fi
+ }%
+\fi\fi
+\hypersetup{pdfencoding=auto}% unicode
+\expandafter\ifx\csname KV@Hyp@psdextra\endcsname\relax\else
+ \hypersetup{psdextra}
+\fi
+
+%% hyperref doesn't set the minor version for XeTeX
+\ifxetex
+ \special{pdf:minorversion \thepdfminorversion}
+\fi
+
+\ifx\xmp@CreatorTool\@empty
+ \edef\xmp@CreatorTool{\@pdfcreator}
+\fi
+
+\newif\ifpdfx@cmyk
+\newif\ifpdfx@custom
+\ifpdfx@x % PDF/X normally needs a CMYK color profile for printing
+ \global\pdfx@cmyktrue
+\fi
+%%----------------------------------------------------------------------
+%% ----- Color Profiles -------
+%% Define how to specify the profile, so the default
+%% can be over-ridden in the .xmpdata file.
+%%
+%% --- user-command --- RGB profile needed with PDF/A-??
+%% \setRGBcolorprofile{<filename>}{<identifier>}
+%% {<info string>}{<registry URL>}
+\def\setRGBcolorprofile{%
+ \begingroup
+ \catcode`\_ 11\relax\catcode`\& 11\relax\catcode`\~ 11\relax
+ \catcode`\% 11\relax
+ \edef\({\string\(}\edef\){\string\)}%
+ \pdfx@setrgbprofile}
+%%
+%% --- user-command --- CMYK profile needed with PDF/X-??
+%% \setCMYKcolorprofile{<filename>}{<output intent>}
+%% {<identifier>}{<registry URL>}
+\def\setCMYKcolorprofile{%
+ \begingroup
+ \catcode`\_ 11\relax\catcode`\& 11\relax\catcode`\~ 11\relax
+ \catcode`\% 11\relax
+ \edef\({\string\(}\edef\){\string\)}%
+ \pdfx@setcmykprofile}
+%%
+%% --- user-command --- DeviceGray profile needed with PDF/E-1
+%% \setGRAYcolorprofile{<filename>}{<output intent>}
+%% {<identifier>}{<registry URL>}
+\def\setGRAYcolorprofile{%
+ \begingroup
+ \catcode`\_ 11\relax\catcode`\& 11\relax\catcode`\~ 11\relax
+ \catcode`\% 11\relax
+ \edef\({\string\(}\edef\){\string\)}%
+ \pdfx@setgrayprofile}
+%%
+%% --- user-command --- External profile with PDF/X-4p and PDF/X-5pg
+%% \setEXTERNALprofile{<profilename>}{<output intent>}
+%% {<identifier>}{<registry URL>}{<color-space>}%
+%% {<ICC Version>}{<provider URL>}{<extra info>}{<Check Sum>}
+\def\setEXTERNALprofile{%
+ \begingroup
+ \catcode`\_ 11\relax\catcode`\& 11\relax\catcode`\~ 11\relax
+ \catcode`\% 11\relax
+ \edef\({\string\(}\edef\){\string\)}%
+ \ifno@iccprofile
+ \expandafter\pdfx@externalprofile
+ \else
+ \expandafter\pdfx@externalprofile@gobble
+ \fi
+ }
+%%
+%%
+\def\pdfx@setRGBcolorprofiledir#1{%
+ \xdef\pdfx@RGBcolorprofiledir{#1}%
+}
+\def\pdfx@setCMYKcolorprofiledir#1{%
+ \xdef\pdfx@CMYKcolorprofiledir{#1}%
+}
+\pdfx@setRGBcolorprofiledir{}
+\pdfx@setCMYKcolorprofiledir{}
+
+%% This does indeed work! Use it in .xmpdata files
+\providecommand{\MacOSColordir}{/System/Library/ColorSync/Profiles/}
+\providecommand{\MacOSLibraryColordir}{/Library/ColorSync/Profiles/}
+\providecommand{\AdobeMacOSdir}%
+ {/Library/Application Support/Adobe/Color/Profiles/Recommended/}
+\edef\pdfx@tmp{C:\string\Windows\string\System32\string\Spool%
+ \string\Drivers\string\Color\string/}
+\expandafter\providecommand\expandafter
+ {\expandafter\WindowsColordir\expandafter}\expandafter{\pdfx@tmp}
+%%\pdfx@setcolorprofiledir{\AdobeMacOSdir}
+
+%% overide that value using the following commands:
+\let\pdfxSetCMYKcolorProfileDir\pdfx@setCMYKcolorprofiledir
+\let\pdfxSetRGBcolorProfileDir\pdfx@setRGBcolorprofiledir
+%% for back-compatibility
+\let\pdfxSetColorProfileDir\pdfxSetCMYKcolorProfileDir
+%%
+\def\pdfx@setrgbprofile#1#2#3#4{%
+ \xdef\pdfx@rgb@profile{\pdfx@RGBcolorprofiledir#1}% valid file path/name
+ \xdef\pdfx@rgb@profilename{#1}% valid file name
+ \gdef\pdfx@rgb@identifier{#2}%
+ \gdef\pdfx@rgb@info{#3}%
+ \pdfstringdef\pdfx@rgb@registry{#4}% valid URL
+ \endgroup
+ \global\pdfx@cmykfalse
+ }% closes-off \setRGBcolorprofile
+%%
+\def\pdfx@setcmykprofile#1#2#3#4{%
+ \xdef\pdfx@cmyk@profile{\pdfx@CMYKcolorprofiledir#1}% valid file path/name
+ \xdef\pdfx@cmyk@profilename{#1}% valid file name
+%% \expandafter\gdef\expandafter\pdfx@cmyk@profile\expandafter
+%% {\pdfx@colorprofiledir#1}% valid file name
+ \gdef\pdfx@cmyk@intent{#2}%
+%% \pdfstringdef\pdfx@cmyk@intent{#2}% color intent
+ \gdef\pdfx@cmyk@identifier{#3}%
+%% \pdfstringdef\pdfx@cmyk@identifier{#3}% text string identifier
+ \gdef\pdfx@cmyk@registry{#4}%
+%% \pdfstringdef\pdfx@cmyk@registry{#4}% valid URL
+ \endgroup
+ \global\pdfx@cmyktrue
+ }% closes-off \setcmykcolorprofile
+%%
+\def\setCUSTOMcolorprofile{%
+ \begingroup
+ \catcode`\_ 11\relax\catcode`\& 11\relax\catcode`\~ 11\relax
+ \catcode`\% 11\relax
+ \edef\({\string\(}\edef\){\string\)}%
+ \pdfx@setcustomprofile
+}
+\def\pdfx@setcustomprofile#1#2#3#4#5#6#7#8{%
+ \xdef\pdfx@customcolorprofiledir{#2}% valid directory location
+ \xdef\pdfx@custom@profile{#1}% valid file name
+ \gdef\pdfx@custom@identifier{#3}%
+ \gdef\pdfx@custom@registry{#4}%
+ \gdef\pdfx@custom@numcolors{#5}% num-colors specifier
+ \gdef\pdfx@iccversion{#6}% Hex string for /ICCVersion < ... >
+ \gdef\pdfx@custom@colornames{#7}%
+ \gdef\pdfx@profile@checksum{#8}% Hex string for /CheckSum < ... >
+\endgroup
+ \global\pdfx@cmykfalse
+ \global\pdfx@customtrue
+ }% closes-off \pdfx@setcustomprofile
+%%
+\def\pdfx@setgrayprofile#1#2#3#4{%
+ \gdef\pdfx@gray@profile{#1}% valid file name
+ \gdef\pdfx@gray@intent{#2}%
+ \gdef\pdfx@gray@identifier{#3}%
+ \pdfstringdef\pdfx@gray@registry{#4}% valid URL
+ \endgroup}% closes-off \setGRAYcolorprofile
+%%
+\def\pdfx@externalprofile#1#2#3#4#5#6#7#8#9{%
+ \gdef\pdfx@extprofile{#1}% PDF string for /ProfileName
+ \gdef\pdfx@cmyk@intent{#2}% PDF string for /OutputCondition
+ \gdef\pdfx@cmyk@identifier{#3}% PDF string for /OutputConditionIdentifier
+ \gdef\pdfx@cmyk@registry{#4}% {http://www.color.org}%
+ \gdef\pdfx@profileCS{#5}% 4 bytes for /ProfileCS
+ \gdef\pdfx@iccversion{#6}% Hex string for /ICCVersion < ... >
+ \gdef\pdfx@colorURL{#7}% URL
+ \gdef\pdfx@cmyk@info{#8}% for /Info
+ \gdef\pdfx@profile@checksum{#9}% Hex string for /CheckSum < ... >
+ \endgroup}% closes-off \setEXTERNALprofile
+\def\pdfx@externalprofile@gobble#1#2#3#4#5#6#7#8#9{%
+ \PackageError{pdfx}{Wrong option for using an External Color profile}%
+ {Use one of the options: x-4p , x-4p08 , x-4p10 or x-5pg .}%
+ \endgroup}
+%%
+%% default color profiles
+
+{\catcode`\_ 12 \catcode`\& 12 \catcode`\~ 12
+ \gdef\pdfx@xprofile@cmykdefault{coated_FOGRA39L_argl.icc}
+ \gdef\pdfx@aprofile@rgbdefault{sRGB_IEC61966-2-1_black_scaled.icc}
+ \gdef\pdfx@eprofile@graydefault{Gray_linear.icc}
+ \gdef\pdfx@pprofile@externaldefault{FOGRA39}
+}% end of \catcode
+\xdef\pdfx@rgb@profile{\pdfx@aprofile@rgbdefault}
+\xdef\pdfx@cmyk@profile{\pdfx@xprofile@cmykdefault}
+\xdef\pdfx@gray@profile{\pdfx@eprofile@graydefault}
+\xdef\pdfx@external@profile{\pdfx@pprofile@externaldefault}
+
+%%----------------------------------------------------------------------
+%% License for the file sRGB_IEC61966-2-1_black_scaled.icc :
+%%
+%% Copyright International Color Consortium, 2009 -- http://www.color.org/
+%%
+%% It is hereby acknowledged that the file "sRGB_IEC61966-2-1_black_scaled.icc"
+%% is provided "AS IS" WITH NO EXPRESS OR IMPLIED WARRANTY.
+%%
+%% Licensing
+%%
+%% This profile is made available by the International Color Consortium,
+%% and may be copied, distributed, embedded, made, used, and sold without
+%% restriction. Altered versions of this profile shall have the original
+%% identification and copyright information removed and shall not be
+%% misrepresented as the original profile.
+%%
+%% Terms of use
+%%
+%% To anyone who acknowledges that the file "sRGB_IEC61966-2-1_black_scaled.icc"
+%% is provided "AS IS" WITH NO EXPRESS OR IMPLIED WARRANTY, permission to use,
+%% copy and distribute these file for any purpose is hereby granted without fee,
+%% provided that the file is not changed including the ICC copyright notice tag,
+%% and that the name of ICC shall not be used in advertising or publicity
+%% pertaining to distribution of the software without specific, written prior
+%% permission. ICC makes no representations about the suitability of this
+%% software for any purpose.
+%%
+%%----------------------------------------------------------------------
+
+\newif\ifpdfx@tryoldprofiles
+
+%% The colorprofiles package was added to TeXLive in October 2018.
+%% It allows the default Color Profiles to be maintained independent
+%% of the pdfx package.
+%% In particular sRGB_IEC61966-2-1_black_scaled.icc is no longer
+%% distributed with TeXLive 2018 and later.
+%% Older versions still have this file.
+%%
+\IfFileExists{colorprofiles.tex}{%
+ \RequirePackage{colorprofiles}[2018/11/01]%
+ \ifx\colorpro@rgb@profile\relax
+ \expandafter\pdfx@tryoldprofilestrue
+ \else
+ \begingroup %% \endgroup occurs within the macro expansion
+ \pdfx@setrgbprofile{\colorpro@rgb@profile
+ }{\colorpro@rgb@identifier
+ }{\colorpro@rgb@info
+ }{\colorpro@rgb@registry
+ }%
+ \begingroup %% \endgroup occurs within the macro expansion
+ \pdfx@setcmykprofile{\colorpro@cmyk@profile
+ }{\colorpro@cmyk@intent
+ }{\colorpro@cmyk@identifier
+ }{\colorpro@cmyk@registry
+ }%
+ \expandafter\pdfx@tryoldprofilesfalse
+ \fi
+}{%
+ \PackageWarning{pdfx}{%
+ The 'colorprofiles' package is not installed correctly.^^J
+ File 'colorprofiles.tex' is missing. Proceeding without it.
+ }%
+ \pdfx@tryoldprofilestrue
+}
+
+{\catcode`\| 14 \catcode`\% 12 \catcode`\_ 12 \catcode`\: 12
+ \catcode`\. 12 \catcode`\- 12 \catcode`\/ 12
+ \edef\@bchar{\expandafter\@gobble\string\\}|
+ \edef\({\string\(}\edef\){\string\)}|
+\ifpdfx@tryoldprofiles
+ || this will be used by TeXLive installations up to 2017.
+ \begingroup | \endgroup occurs within the macro expansion
+\expandafter\pdfx@setrgbprofile\expandafter
+ {sRGB_IEC61966-2-1_black_scaled.icc}|
+ {sRGB_IEC61966-2-1_black_scaled}|
+ {sRGB IEC61966 v2.1 with black scaling}|
+ {http://www.color.org}|
+ \begingroup | \endgroup occurs within the macro expansion
+\pdfx@setcmykprofile{coated_FOGRA39L_argl.icc}| coated_FOGRA39L_argl.icc
+ {Coated FOGRA39}|
+ {FOGRA39 \string\(ISO Coated v2 300%\space \string\(ECI\string\)\string\)}|
+ {http://www.argyllcms.com/}|{http://www.color.org}|
+\fi || end of \ifpdfx@tryoldprofiles
+ \begingroup | \endgroup occurs within the macro expansion
+\pdfx@setgrayprofile{Gray_linear.icc}|
+ {}|
+ {Custom}|
+ {http://www.freedesktop.org/wiki/OpenIcc}|
+\ifno@iccprofile
+ \begingroup | \endgroup occurs within the macro expansion
+ \pdfx@externalprofile{Coated FOGRA39 \(ISO 12647-2:2004\)}|
+ {Offset commercial and specialty printing according to ISO 12647-2:2004 |
+ / Amd 1, paper type 1 or 2 \(gloss or matte coated offset, 115 g/m2\), |
+ screen frequency 60/cm.}|
+ {FOGRA39}{http://www.color.org}{CMYK}{02100000}{http://www.adobe.com}|
+ {Coated FOGRA39 \(ISO 12647-2:2004\)}{74FF62F330BF0DBE4495B5720542D511}|
+\fi
+}% end of \catcode
+
+%%
+%%----------------------------------------------------------------------
+%% License for the file coated_FOGRA39L_argl.icc :
+%%
+%% The zlib/libpng License
+%%
+%% Copyright (c) 2008 Kai-Uwe Behrmann
+%%
+%% This software is provided 'as-is', without any express or implied
+%% warranty. In no event will the authors be held liable for any damages
+%% arising from the use of this software.
+%%
+%% Permission is granted to anyone to use this software for any purpose,
+%% including commercial applications, and to alter it and redistribute
+%% it freely, subject to the following restrictions:
+%%
+%% 1. The origin of this software must not be misrepresented; you
+%% must not claim that you wrote the original software. If you use
+%% this software in a product, an acknowledgment in the product
+%% documentation would be appreciated but is not required.
+%%
+%% 2. Altered source versions must be plainly marked as such, and
+%% must not be misrepresented as being the original software.
+%%
+%% 3. This notice may not be removed or altered from any source
+%% distribution.
+%%----------------------------------------------------------------------
+
+\newif\ifexternalICCprofiles
+\newif\ifpdfx@noXMPdata
+
+\begingroup
+%% override unneeded color-profile specifier
+ \ifpdfx@x
+ \ifno@iccprofile % PDF/X-4p and PDF/X-5pg PDF/VT-2
+ \begingroup
+ \def\pdfx@extprofiles@store{AdobeExternalProfiles.tex}%
+ \InputIfFileExists{\pdfx@extprofiles@store}%
+ {\global\externalICCprofilestrue \catcode `\# 12\relax}%
+ {\typeout{** pdfx: No file \pdfx@extprofiles@store\space
+ found for PDF/X-4p or PDF/X-5pg}}%
+ \endgroup
+ \else
+ \begingroup
+ \def\pdfx@profiles@store{AdobeColorProfiles.tex}%
+ \InputIfFileExists{\pdfx@profiles@store}%
+ {\global\externalICCprofilesfalse \catcode `\# 12\relax}%
+ {\typeout{** pdfx: No file \pdfx@profiles@store\space
+ found for PDF/X variants}}%
+ \endgroup
+%% \def\setRGBcolorprofile#1#2#3#4{%
+%% \PackageError{pdfx}{PDF/X requires a CMYK color profile}%
+%% {Just continue using the default CMYK profile.^^J}}%
+ \fi
+ \else
+%% load it, in case the macros are used in .xmpdata
+ \InputIfFileExists{AdobeColorProfiles.tex}{}{}%
+ \ifpdfx@e
+ \else
+ \def\setCMYKcolorprofile#1#2#3#4{}%
+ \def\setGRAYcolorprofile#1#2#3#4{}%
+ \fi\fi
+%%
+ \ifluatex\else\ifxetex\else
+ \inputencoding{8bit}%
+ \fi\fi
+ \makeatletter
+ \pdfx@localcommands
+%% Do this in a box, so any stray characters don't get into TeX's lists.
+\setbox0\hbox{%
+ \InputIfFileExists{\jobname.xmpdata}%
+ {\typeout{** pdfx: Metadata file \jobname.xmpdata read successfully.}}%
+ {\typeout{** pdfx: No file \jobname.xmpdata .
+ Metadata will be incomplete!}\aftergroup\pdfx@noXMPdatatrue}}
+\endgroup
+%% ----------------------------------------------------------------------
+
+\def\pdfx@LanguageSpec{}
+\def\pdfx@mainLanguage{en-US}% absolute default
+\def\pdfx@checkfor@sep#1#2\sep#3\pdfx@endparse{\def#1{#2}}
+\ifx\@empty\xmp@Language\else
+ \expandafter\pdfx@checkfor@sep\expandafter\pdfx@mainLanguage\xmp@Language
+ \sep\pdfx@endparse
+\fi
+\edef\pdfx@LanguageSpec{/Lang (\pdfx@mainLanguage)}
+
+%% ----------------------------------------------------------------------
+\begingroup
+ \catcode`\_ 12 \catcode`\" 12 \catcode`\' 12
+ \catcode`\< 12 \catcode`\> 12 \catcode`\/ 12 \catcode`\[ 12 \catcode`\] 12
+ \edef\@pctchar{\expandafter\@gobble\string\%}
+ \edef\@bchar{\expandafter\@gobble\string\\}
+ \edef\0{\string\0}
+ \edef\({\string\(}
+ \edef\){\string\)}
+%%
+ \def\pdfx@outcatalog@dict{%
+ \pdfx@LanguageSpec
+ /ViewerPreferences <</DisplayDocTitle true >>
+ /OutputIntents \pdfx@outintents % needs appropriate expansion
+ }%
+\ifpdfx@x % PDF/X needs a CMYK or RGB color profile for printing
+ \ifno@iccprofile % PDF/X-4p and PDF/X-5pg
+%%
+%% URL and metadata for the desired external Color Profile
+%%
+ \edef\pdfx@colorURL@dict{<</FS/URL/F(\pdfx@colorURL)>>}
+ \def\pdfx@colorprofile@dict{<< %
+ /CheckSum <\pdfx@profile@checksum>^^J%
+ /ICCVersion <\pdfx@iccversion>%
+ /ProfileCS (\pdfx@profileCS)^^J%
+ /ProfileName (\pdfx@extprofile)^^J%
+ /URLs [\OBJ@URLs] >>
+ }
+%% How to specify the PDF objects with different drivers
+ \ifxetex
+ \def\OBJ@URLs{ @colorURL }%
+ \def\OBJ@ICC{ @colorprofile }%
+ \immediate\special{pdf:obj \OBJ@URLs \pdfx@colorURL@dict }%
+ \immediate\special{pdf:obj \OBJ@ICC \pdfx@colorprofile@dict }%
+ \else % pdfTeX & LuaTeX
+ \immediate\pdfobj{\pdfx@colorURL@dict}%
+ \edef\OBJ@URLs{\the\pdflastobj\space 0 R}%
+ \immediate\pdfobj{\pdfx@colorprofile@dict}%
+ \edef\OBJ@ICC{\the\pdflastobj\space 0 R}%
+ \fi
+%% Output Intent dictionary, with object reference
+ \edef\pdfx@outintent@dict{%
+ /Type/OutputIntent
+ /S/GTS_PDFX^^J
+ /OutputCondition (\pdfx@cmyk@intent)^^J
+ /OutputConditionIdentifier (\pdfx@cmyk@identifier)^^J
+ /Info(\pdfx@cmyk@intent)^^J
+ /RegistryName(\pdfx@cmyk@registry)^^J
+%% extra dictionary required for PDF/X-4p and PDF/X-5pg
+ /DestOutputProfileRef \OBJ@ICC
+ }%
+%%
+ \else % PDF/X-1 , PDF/X-1a , PDF/X-3 , PDF/X-4 , PDF/X-5g
+%%
+ \ifpdfx@cmyk
+ \IfFileExists{"\pdfx@cmyk@profile"}{%
+ % embedded CMYK color profile
+ %%
+ %% Output Intent dictionary, with object reference
+ \def\pdfx@outintent@dict{%
+ /Type/OutputIntent
+ /S/GTS_PDFX^^J
+ /OutputCondition (\pdfx@cmyk@intent)^^J
+ /OutputConditionIdentifier (\pdfx@cmyk@identifier)^^J
+ /Info(\pdfx@cmyk@intent)^^J
+ /RegistryName(\pdfx@cmyk@registry)
+ /DestOutputProfile \OBJ@CMYK
+ }%
+ \def\pdfx@numcoords{/N 4}%
+%%
+ \ifxetex
+ \def\OBJ@CMYK{@colorprofile}%
+ \immediate\special{%
+ pdf:fstream \OBJ@CMYK (\pdfx@cmyk@profile) <<\pdfx@numcoords >>}%
+ \else % pdfTeX
+ \immediate\pdfobj stream attr{\pdfx@numcoords} file {\pdfx@cmyk@profile}%
+ \edef\OBJ@CMYK{\the\pdflastobj\space 0 R}%
+ \fi
+ \pdfcatalog{%
+ \pdfx@LanguageSpec
+ /OutputIntents [ <<
+ /Type/OutputIntent
+ /S/GTS_PDFX
+ /OutputCondition (\pdfx@cmyk@intent)%
+ /OutputConditionIdentifier (\pdfx@cmyk@identifier)%
+ /Info(\pdfx@cmyk@intent)%
+ /RegistryName(\pdfx@cmyk@registry)
+ /DestOutputProfile \OBJ@CMYK
+ >> ]}%
+ }{%
+ \PackageError{pdfx}{No color profile \pdfx@cmyk@profilename\space found
+ to use for CMYK printing colors.}%
+ {Is this the correct directory: \pdfx@CMYKcolorprofiledir\space ?}%
+ }% end of \IfFileExists for CMYK
+ \else\ifpdfx@custom
+%% allow Custom profile with PDF/X-5n
+ \IfFileExists{"\pdfx@customcolorprofiledir\pdfx@custom@profile"}{%
+%% embedded Custom color profile
+%%
+ %% Output Intent dictionary, with object reference
+ \def\pdfx@outintent@dict{%
+ /Type/OutputIntent
+ /S/GTS_PDFX^^J
+ /OutputConditionIdentifier (Custom)^^J
+ /OutputCondition (\pdfx@custom@identifier)^^J
+ /Info(\pdfx@custom@profile)^^J
+ /RegistryName(\pdfx@custom@registry)
+ /Registry(\pdfx@custom@registry)
+ /DestOutputProfileRef \OBJ@CustomDir
+ }%
+ \def\OBJ@CustomDir{<<
+ \pdfx@numcoords^^J
+ /URLs [ << /Type /Filespec ^^J/EF \OBJ@CustomFile^^J
+ /F (\pdfx@custom@profile) /UF (\pdfx@custom@profile) >>]^^J
+ >>}
+%% need more attributes:
+ \def\pdfx@numcoords{%
+ /CheckSum <\pdfx@profile@checksum>^^J%
+ /ICCVersion <\pdfx@iccversion>%
+ /ProfileName (\pdfx@custom@profile)^^J%
+ /ProfileCS (\pdfx@custom@numcolors)^^J%
+ /ColorantTable [\pdfx@custom@colornames]
+ }%
+ \def\pdfx@custom@filespec{%
+ /Type /EmbeddedFile >>^^J
+ /Subtype (application/vnd.iccprofile )
+ }%
+%%
+ \ifxetex
+ \def\OBJ@CustomFile{@colorprofile}%
+ \immediate\special{pdf:fstream \OBJ@CustomFile
+ (\pdfx@customcolorprofiledir\pdfx@custom@profile) <<\pdfx@custom@filespec >>}%
+ \else % pdfTeX
+ \immediate\pdfobj stream attr{\pdfx@custom@filespec} file %
+ {\pdfx@customcolorprofiledir\pdfx@custom@profile}%
+ \edef\OBJ@CustomFile{\the\pdflastobj\space 0 R}%
+ \fi
+ \pdfcatalog{%
+ \pdfx@LanguageSpec
+ /OutputIntents [ << \pdfx@outintent@dict >>]}%
+ }{%
+ \PackageError{pdfx}%
+ {No color profile \pdfx@custom@profile\space found to use for Custom printing colors.}%
+ {Is this the correct directory: \pdfx@customcolorprofiledir\space ?}%
+ }% end of \IfFileExists for Custom
+ \global\pdfx@cmyktrue % for TeX coloring
+%%
+ \else % allow RGB profile with PDF/X ???
+ \ifpdfx@noerr
+ \PackageWarning{pdfx}{PDF/X normally requires a CMYK color profile.^^J
+ Assuming RGB profile is of type 'prtr' not 'mntr'.^^J^^J}%
+ \else
+ \PackageError{pdfx}{PDF/X normally requires a CMYK color profile.}%
+ {To use RGB ensure profile is of type 'prtr' not 'mntr'.^^J^^J}%
+ \fi
+ % embedded RGB color profile
+ %%
+ %% Output Intent dictionary, with object reference
+ \def\pdfx@outintent@dict{%
+ /Type /OutputIntent
+ /S/GTS_PDFX^^J
+ /OutputConditionIdentifier (\pdfx@rgb@identifier)^^J
+ /DestOutputProfile \OBJ@RGB^^J
+ /Info(\pdfx@rgb@info)^^J
+ /RegistryName(\pdfx@rgb@registry)
+ }%
+ \IfFileExists{"\pdfx@rgb@profile"}{%
+ \def\pdfx@numcoords{/N 3 /Alternate/DeviceRGB}
+ \ifxetex
+ \immediate\special{%
+ pdf:fstream @colorprofile (\pdfx@rgb@profile) << \pdfx@numcoords >>}
+ \def\OBJ@RGB{@colorprofile}%
+ \else
+ \immediate\pdfobj stream attr{\pdfx@numcoords} file{\pdfx@rgb@profile}%
+ \edef\OBJ@RGB{\the\pdflastobj\space 0 R}%
+ \fi
+ \edef\pdfx@outintent@dict{%
+ /Type /OutputIntent
+ /S/GTS_PDFX
+ /OutputConditionIdentifier (\pdfx@rgb@identifier)%
+ /DestOutputProfile \OBJ@RGB
+ /Info(\pdfx@rgb@info)
+ /RegistryName(\pdfx@rgb@registry)
+ }%
+ \ifxetex
+ \def\OBJ@RGB{ @colorprofile }%
+ \immediate\special{%
+ pdf:fstream @colorprofile (\pdfx@rgb@profile) <<\pdfx@numcoords >>}
+ \else %% pdfTeX or LuaTeX
+ \immediate\pdfobj stream attr{\pdfx@numcoords} file{\pdfx@rgb@profile}%
+ \edef\OBJ@RGB{\the\pdflastobj\space 0 R}%
+ \fi
+ }{%
+ \PackageError{pdfx}%
+ {No color profile \pdfx@rgb@profilename\space found to use for RGB screen colors.}%
+ {Is this the correct directory: \pdfx@RGBcolorprofiledir\space ?}%
+ }% end of \IfFileExists for RGB
+ \fi % end of \ifpdfx@custom
+ \fi % end of \ifpdfx@cmyk
+ \fi % end of \ifno@iccprofile
+%% end of PDF/X
+\else
+%% PDF/A and PDF/E can specify a CMYK profile
+ \expandafter\ifx\expandafter\relax\pdfx@rgb@profile\relax
+ \global\pdfx@cmyktrue
+ \IfFileExists{"\pdfx@cmyk@profile"}{%
+ \def\pdfx@numcoords{/N 4}
+ % embedded CMYK color profile
+ \ifxetex
+ \def\OBJ@CMYK{@colorprofile}%
+ \special{pdf:fstream @colorprofile (\pdfx@cmyk@profile) <<\pdfx@numcoords >>}
+ \else %% pdfTeX or LuaTeX
+ \immediate\pdfobj stream attr{\pdfx@numcoords} file{\pdfx@cmyk@profile}%
+ \edef\OBJ@CMYK{\the\pdflastobj\space 0 R}%
+ \fi
+ \edef\pdfx@outintent@dict{%
+ /Type /OutputIntent
+ \ifpdfx@e
+ /S/ISO_PDFE1
+ \else
+ /S/GTS_PDFA1
+ \fi
+ /OutputCondition (\pdfx@cmyk@intent)% use this or /Info ?
+ /OutputConditionIdentifier (\pdfx@cmyk@identifier)%
+ /DestOutputProfile \OBJ@CMYK
+ /Info(\pdfx@cmyk@intent)%
+ /RegistryName(\pdfx@cmyk@registry)
+ }%
+ }{%
+ \PackageError{pdfx}{No color profile \pdfx@cmyk@profilename\space found
+ to use for CMYK printing colors.}%
+ {Is this the correct directory: \pdfx@CMYKcolorprofiledir\space ?}%
+ }% end of \IfFileExists for CMYK
+ \else
+%% PDF/A and PDF/E usually need an RGB color profile for on-screen rendering
+ \global\pdfx@cmykfalse
+ \expandafter\IfFileExists\expandafter{\pdfx@rgb@profile}{%
+ \def\pdfx@numcoords{/N 3 /Alternate/DeviceRGB}
+ \ifxetex
+ \def\OBJ@RGB{ @colorprofile }%
+ \immediate\special{pdf:fstream @colorprofile (\pdfx@rgb@profile) <<\pdfx@numcoords >>}
+ \else
+ \immediate\pdfobj stream attr{\pdfx@numcoords} file{\pdfx@rgb@profile}%
+ \edef\OBJ@RGB{\the\pdflastobj\space 0 R}%
+ \fi
+ \edef\pdfx@outintent@dict{%
+ /Type /OutputIntent
+ \ifpdfx@e
+ /S/ISO_PDFE1
+ \else
+ /S/GTS_PDFA1
+ \fi
+ /OutputConditionIdentifier (\pdfx@rgb@identifier)%
+ /DestOutputProfile \OBJ@RGB
+ /Info(\pdfx@rgb@info)
+ /RegistryName(\pdfx@rgb@registry)
+ }%
+ }{%
+ \PackageError{pdfx}%
+ {No color profile \pdfx@rgb@profilename\space found to use for RGB screen colors.}%
+ {Is this the correct directory: \pdfx@RGBcolorprofiledir\space ?}%
+ }% end of \IfFileExists for RGB
+ \fi % end of ifx for PDF/A or PDF/E
+\fi % end of ifpdfx@x
+%%
+ \expandafter\ifx\csname pdfx@outintent@dict\endcsname\relax
+ \else
+%%
+%% build the OutputIntent array
+%%
+ \ifxetex
+ \def\pdfx@outintents{ @outintentsarray }%
+ \def\pdfx@outintentref{ @outintent@dict }%
+ \immediate\special{pdf:obj \pdfx@outintentref << \pdfx@outintent@dict >>}
+ \immediate\special{pdf:obj \pdfx@outintents [ ]}%
+ \immediate\special{pdf:put \pdfx@outintents \pdfx@outintentref }%
+ \else
+ \immediate\pdfobj{<<\pdfx@outintent@dict>>}%
+ \edef\pdfx@outintents{[\the\pdflastobj\space 0 R]}%
+ \fi
+%%
+%% make the Catalog entry, if not already done
+%%
+ \ifx\pdfx@outcatalog@dict\relax
+ \else
+ \pdfcatalog{\pdfx@outcatalog@dict}%
+ \fi
+\fi % end of OutputIntent array and Catalog entry
+\endgroup
+
+%% ----------------------------------------------------------------------
+%% Make a version of \xmp@Keywords and \xmp@Author where \sep has been
+%% replaced by a comma. The first is for the pdf:Keywords property,
+%% which accepts a comma-separated string of keywords, and seems to be
+%% mandatory for PDF/A-1 compliance. The second is for the dc:creator
+%% property. Although it is defined to be a sequence of authors, Adobe
+%% Acrobat will in fact ignore and delete all except the first author.
+%% Therefore, it's safer to always separate authors by commas.
+
+\begingroup
+ \let\pdfx@xmpunimarkup\relax
+ \pdfx@xmpmarkup
+ \ifluatex\else\ifxetex\else
+ \inputencoding{8bit}%
+ \fi\fi
+ \makeatletter
+ \IfFileExists{\pdfx@encodingfile}{%
+ \def\cf@encoding{L8U}\fontencoding{L8U}%
+ }{}%
+ \let\protect\@typeset@protect
+ \pdfx@xmpmarkup %% !!!!! no longer needed
+%% \xdef\xmp@@Author{\xmp@Author}% no need to expand
+ \global\let\xmp@@Author\xmp@Author
+ \def\sep{; }% expand to replace \sep !!! no longer needed
+%% \xdef\xmp@@Copyright{\xmp@Copyright}%
+ \global\let\xmp@@Copyright\xmp@Copyright
+%% \xdef\xmp@@Keywords{\xmp@Keywords}%
+%% \global\let\xmp@@Keywords\xmp@Keywords
+%% \global\let\xmp@Keywords\@empty %
+ \global\let\xmp@@Keywords\@empty % don't use pdf:Keywords
+\endgroup
+
+%% ----------------------------------------------------------------------
+\def\xmp@convertDate{\pdfx@getYear}
+{\catcode`\D=12 \catcode`\:=12
+ \gdef\pdfx@getYear D:#1#2#3#4{\edef\pdfx@xYear{#1#2#3#4}\pdfx@getMonth}
+}
+\def\pdfx@getMonth#1#2{\edef\pdfx@xMonth{#1#2}\pdfx@getDay}
+\def\pdfx@getDay#1#2{\edef\pdfx@xDay{#1#2}\pdfx@getHour}
+\def\pdfx@getHour#1#2{\edef\pdfx@xHour{#1#2}\pdfx@getMin}
+\def\pdfx@getMin#1#2{\edef\pdfx@xMin{#1#2}\pdfx@getSec}
+\def\pdfx@getSec#1#2{\edef\pdfx@xSec{#1#2}\pdfx@getTZh}
+\def\pdfx@getTZh{\futurelet\pdfx@next\pdfx@getTzh@branches}
+
+{\catcode`\@=11 \catcode`\Z=12 \catcode`\+=12 \catcode`\-=12
+\gdef\pdfx@getTzh@branches{%
+ \ifx\pdfx@next Z\let\pdfx@getTzbranch\pdfx@getTznozone
+ \else\ifx\pdfx@next +\let\pdfx@getTzbranch\pdfx@getTzplus
+ \else\ifx\pdfx@next -\let\pdfx@getTzbranch\pdfx@getTzminus
+ \else\let\pdfx@getTzbranch\pdfx@getTzerror
+ \fi\fi\fi \pdfx@getTzbranch }
+
+\catcode`\0=12
+\gdef\pdfx@getTznozone Z#1\pdfx@getTzend{%
+ \edef\pdfx@xTzh{+00}\edef\pdfx@xTzm{00}}
+\gdef\pdfx@getTzplus +#1'#2'#3\pdfx@getTzend{%
+ \edef\pdfx@xTzh{+#1}\edef\pdfx@xTzm{#2}%
+ \ifx\relax#2\relax\def\pdfx@xTzm{00}\fi}
+\gdef\pdfx@getTzminus -#1'#2'#3\pdfx@getTzend{%
+ \edef\pdfx@xTzh{-#1}\edef\pdfx@xTzm{#2}%
+ \ifx\relax#2\relax\def\pdfx@xTzm{00}\fi}
+%%
+%% How to support XeTeX here ?
+\expandafter\ifx\csname pdfcreationdate\endcsname\relax
+%% \xdef\pdfx@convDate{2016-04-01}% April fool!
+%% \xdef\xmp@convDate{2016-04-01}% April fool!
+\else
+ \expandafter\expandafter\expandafter\xmp@convertDate\pdfcreationdate''\pdfx@getTzend
+ \xdef\pdfx@convDate{\pdfx@xYear\pdfx@xMonth\pdfx@xDay\pdfx@xHour
+ \pdfx@xMin\pdfx@xSec\pdfx@xTzh'\pdfx@xTzm'}%
+ \xdef\xmp@convDate{\pdfx@xYear-\pdfx@xMonth-\pdfx@xDay
+ T\pdfx@xHour:\pdfx@xMin:\pdfx@xSec\pdfx@xTzh:\pdfx@xTzm}%
+\fi
+}% end of \catcode
+
+%% ----------------------------------------------------------------------
+%% \pdfx@topdfstring\toka\tokb: Convert the string in \tokb to a format
+%% appropriate for PDF /Info strings, i.e., PDFDoc encoding or UTF-16
+%% encoding, and store the result in \toka As a special case, if \tokb
+%% is \@empty, set \toka to \@empty.
+
+\def\pdfx@topdfstring#1#2{%
+ \ifx#2\@empty
+ \global\let#1\empty
+ \else
+ \begingroup
+ \ifluatex\else\ifxetex\else
+ \inputencoding{utf8}%
+ \fi\fi
+ \hypersetup{pdfencoding=auto}%
+ \pdfstringdef#1{#2}%
+ \endgroup
+ \fi
+}
+
+%% ----------------------------------------------------------------------
+%% if high-bit characters are already encoded as active
+%% then \pdfstringdef probably changes their meaning
+%% so save these for later reversion.
+%%
+\newif\ifpdf@activechars
+{\ifnum\catcode`^^c0 = 13\relax \aftergroup\pdf@activecharstrue\fi}%
+%%
+%% normally not used with XeTeX or LuaTeX
+%%
+
+\ifpdf@activechars
+ \global\let\pdfx@save@co ^^c0\relax
+ \global\let\pdfx@save@ci ^^c1\relax
+ \global\let\pdfx@save@cii ^^c2\relax
+ \global\let\pdfx@save@ciii ^^c3\relax
+ \global\let\pdfx@save@civ ^^c4\relax
+ \global\let\pdfx@save@cv ^^c5\relax
+ \global\let\pdfx@save@cvi ^^c6\relax
+ \global\let\pdfx@save@cvii ^^c7\relax
+ \global\let\pdfx@save@cviii ^^c8\relax
+ \global\let\pdfx@save@cix ^^c9\relax
+ \global\let\pdfx@save@ca ^^ca\relax
+ \global\let\pdfx@save@cb ^^cb\relax
+ \global\let\pdfx@save@cc ^^cc\relax
+ \global\let\pdfx@save@cd ^^cd\relax
+ \global\let\pdfx@save@ce ^^ce\relax
+ \global\let\pdfx@save@cf ^^cf\relax
+ \global\let\pdfx@save@do ^^d0\relax
+ \global\let\pdfx@save@di ^^d1\relax
+ \global\let\pdfx@save@dii ^^d2\relax
+ \global\let\pdfx@save@diii ^^d3\relax
+ \global\let\pdfx@save@div ^^d4\relax
+ \global\let\pdfx@save@dv ^^d5\relax
+ \global\let\pdfx@save@dvi ^^d6\relax
+ \global\let\pdfx@save@dvii ^^d7\relax
+ \global\let\pdfx@save@dviii ^^d8\relax
+ \global\let\pdfx@save@dix ^^d9\relax
+ \global\let\pdfx@save@da ^^da\relax
+ \global\let\pdfx@save@db ^^db\relax
+ \global\let\pdfx@save@dc ^^dc\relax
+ \global\let\pdfx@save@dd ^^dd\relax
+ \global\let\pdfx@save@de ^^de\relax
+ \global\let\pdfx@save@df ^^df\relax
+ \global\let\pdfx@save@eo ^^e0\relax
+ \global\let\pdfx@save@ei ^^e1\relax
+ \global\let\pdfx@save@eii ^^e2\relax
+ \global\let\pdfx@save@eiii ^^e3\relax
+ \global\let\pdfx@save@eiv ^^e4\relax
+ \global\let\pdfx@save@ev ^^e5\relax
+ \global\let\pdfx@save@evi ^^e6\relax
+ \global\let\pdfx@save@evii ^^e7\relax
+ \global\let\pdfx@save@eviii ^^e8\relax
+ \global\let\pdfx@save@eix ^^e9\relax
+ \global\let\pdfx@save@ea ^^ea\relax
+ \global\let\pdfx@save@eb ^^eb\relax
+ \global\let\pdfx@save@ec ^^ec\relax
+ \global\let\pdfx@save@ed ^^ed\relax
+ \global\let\pdfx@save@ee ^^ee\relax
+ \global\let\pdfx@save@ef ^^ef\relax
+ \global\let\pdfx@save@fo ^^f0\relax
+ \global\let\pdfx@save@fi ^^f1\relax
+ \global\let\pdfx@save@fii ^^f2\relax
+ \global\let\pdfx@save@fiii ^^f3\relax
+\fi
+
+%% ----------------------------------------------------------------------
+%% detect when \sep is used for multiple authors
+%% then suppress the /Author field in PDF /Info
+\newif\ifpdfx@sep@infield@
+\let\pdfx@endparse\relax
+\def\pdfx@parseforsep#1\sep#2\pdfx@endparse{%
+ \pdfx@sep@infield@false
+ \ifx\relax#2\relax\else\pdfx@sep@infield@true\fi
+}
+
+\begingroup
+ \let\CATCODE\catcode
+ \let\ENDGROUP\endgroup
+ \let\GDEF\gdef
+ \CATCODE`\m 12 \CATCODE`\a 12 \CATCODE`\c 12 \CATCODE`\r 12 \CATCODE`\o 12
+ \CATCODE`\: 12 \CATCODE`\- 12 \CATCODE`\> 12
+ \GDEF\pdfx@DOSTRIP@MACRO macro:->#1\@{#1}%
+\ENDGROUP
+\def\pdfx@strip@macro#1{%
+ \expandafter\edef\expandafter#1\expandafter{%
+ \expandafter\pdfx@DOSTRIP@MACRO\meaning#1\@}%
+}
+
+%% Convert the relevant XMP properties to PDF strings, expanding markup
+%% (such as \sep, \&, \copyright, etc) in an appropriate way.
+%% These PDF strings are actually not always necessary, but if supplied they
+%% must match exactly what is in the XMP version. This may be impossible
+%% if math symbols are used; e.g. Plane-1 alphanumerics.
+%% Generally, it is better to *not* provide PDF-info strings;
+%% instead just providing metadata through XMP.
+%% This is not always enough — a driver may add it by default!
+%%
+%% But some PDF readers don't support XMP, so it is nice to have
+%% /Info fields, when this can be done reliably.
+%%
+%% 2018-12-16: load package outside the grouping
+\RequirePackage{stringenc}%
+\begingroup
+ \catcode`\| 0
+ \catcode `\\ 12
+ |gdef |pdfx@parsebackslash#1{%
+ |begingroup
+ |def |pdfx@parsemacro{#1}%
+ |def |pdfx@parseout{}%
+ |expandafter |pdfx@doparsebackslash#1\|pdfx@endparse
+ }
+ |gdef |pdfx@doparsebackslash#1\#2|pdfx@endparse{%
+ |edef |pdfx@parseout{|pdfx@parseout#1}%
+ |ifx |relax#2|relax
+ |let |next |pdfx@parseend
+ |else
+ |edef |pdfx@parseout{|pdfx@parseout \\}%
+ |def |next{|pdfx@doparsebackslash#2|pdfx@endparse}%
+ |fi |next
+ }
+|endgroup
+\def\pdfx@parseend{%
+ \edef\next{\endgroup\def\expandafter\noexpand\pdfx@parsemacro{\pdfx@parseout}}%
+ \next
+}%
+\begingroup
+%% \expandafter\ifx\csname pdf@escapehex\endcsname\relax
+%% \PackageWarning{pdfx}{%
+%% Missing an implementation of \string\pdf@escapehex ^^J
+%% Translated Metadata cannot be generated as PDF strings.^^J}%
+%% \def\pdfx@GeneratePdfString#1#2{}%
+%% \def\pdfx@ConvertUTFtoBE#1#2{}%
+%% \fi %%\else
+ \gdef\pdfx@GeneratePdfString#1#2{%
+ % converts a UTF-8 string to UTF-16be
+ \StringEncodingConvert{#1}{#2}{utf8}{utf16be}%
+ \edef\pdfx@tempii{#1}\relax
+ \xdef#1{\string\376\string\377\pdfescapestring{\pdfx@tempii}}%
+ }%
+ \gdef\pdfx@ConvertUTFtoBE#1#2{%
+ \setbox0=\hbox{% catch any rubbish escaping to the MVL
+ \def\cf@encoding{L8U}\fontencoding{L8U}%
+ \ifluatex
+%% \let\pdfescapestring\luaescapestring
+ \else\ifxetex\else
+ \inputencoding{8bit}%
+ \fi\fi
+%% \pdfx@xmpmarkup %% don't want some things
+ \pdfx@xmpunimarkup
+ \let\backslash\textbackslash
+ \edef\pdfx@temp{#2}% ensure XMP expands to UTF8
+ \ifluatex
+ \pdfx@parsebackslash\pdfx@temp
+ \pdfstringdef{#1}{\pdfx@temp}%
+ \else\ifxetex
+ \pdfx@parsebackslash\pdfx@temp
+ \pdfstringdef{#1}{\pdfx@temp}%
+ \else
+ \pdfx@GeneratePdfString{#1}{\pdfx@temp}%
+ \fi\fi
+ }% end of \setbox
+ }%
+%% \fi
+ \pdfx@pdfmarkup
+ \global\let\pdfx@pdfAuthor\@empty
+ \global\let\pdfx@pdfTitle\@empty
+ \global\let\pdfx@pdfSubject\@empty
+ \global\let\pdfx@pdfKeywords\@empty
+ \ifpdfx@nopdfinfo % transliterated strings present
+%% RRM: this may still work with parser macros ???
+ \expandafter\ifx\expandafter\relax\xmp@Title\relax\else
+ \pdfx@ConvertUTFtoBE{\pdfx@pdfTitle}{\xmp@Title}%
+ \fi
+ \expandafter\ifx\expandafter\relax\xmp@Subject\relax\else
+ \pdfx@ConvertUTFtoBE{\pdfx@pdfSubject}{\xmp@Subject}%
+ \fi
+\else %% pdfx@nopdfinfofalse
+ \expandafter\ifx\expandafter\relax\xmp@Title\relax\else
+ \ifluatex
+ \pdfx@ConvertUTFtoBE\pdfx@pdfTitle\xmp@Title
+ \else\ifxetex
+ \pdfx@ConvertUTFtoBE\pdfx@pdfTitle\xmp@Title
+ \else
+%% \pdfx@GeneratePdfString\pdfx@pdfTitle\xmp@Title % why does this fail ???
+ \pdfx@ConvertUTFtoBE{\pdfx@pdfTitle}{\xmp@Title}% ??? RRM 2019-02-17
+ \fi\fi
+ \fi
+ \expandafter\ifx\expandafter\relax\xmp@Subject\relax\else
+ \ifluatex
+ \pdfx@ConvertUTFtoBE\pdfx@pdfSubject\xmp@Subject
+ \else\ifxetex
+ \pdfx@ConvertUTFtoBE\pdfx@pdfSubject\xmp@Subject
+ \else
+%% \pdfx@GeneratePdfString\pdfx@pdfSubject\xmp@Subject % why does this fail ???
+ \pdfx@ConvertUTFtoBE{\pdfx@pdfSubject}{\xmp@Subject}% 2019-02-17
+ \fi\fi
+ \fi
+ \fi % end of \ifpdfx@nopdfinfo
+ \pdfx@topdfstring\pdfx@CreatorTool\xmp@CreatorTool
+ \pdfx@topdfstring\pdfx@Producer\xmp@Producer
+%% \pdfescapestring needed
+%% \expandafter\ifx\csname pdfescapestring\endcsname\relax
+%% \else
+ \expandafter\ifx\expandafter\relax\xmp@Author\relax
+ \else
+%% check for multiple authors with parser macro
+ \expandafter\pdfx@parseforsep\xmp@Author\sep\pdfx@endparse
+ \ifpdfx@sep@infield@
+ \else
+ \pdfx@ConvertUTFtoBE{\pdfx@pdfAuthor}{\xmp@Author}%
+ \fi %% end of \ifpdfx@sep@infield@
+ \fi %% end of \xmp@Author test
+ \expandafter\ifx\expandafter\relax\xmp@Keywords\relax
+ \else
+%% check for multiple keywords with parser macro
+ \expandafter\pdfx@parseforsep\xmp@Keywords\sep\pdfx@endparse
+ \ifpdfx@sep@infield@
+ \else
+ \pdfx@ConvertUTFtoBE{\pdfx@pdfKeywords}{\xmp@Keywords}%
+ \fi %% end of \ifpdfx@sep@infield@
+ \fi %% end of \xmp@Keywords test
+%%
+%% \fi %% end of \pdfescapestring test
+\endgroup
+
+%% Affects CMap creation for certain fonts, according to glyph names
+%% How to support XeTeX here ?
+%% Maybe it's best to be using an updated mmap.sty ?
+\ifxetex
+\else
+ \input glyphtounicode.tex
+ \input glyphtounicode-cmr.tex
+ \input glyphtounicode-ntx.tex
+ \pdfgentounicode=1
+\fi
+\ifgrkLGRxmp
+ \ifxetex\else
+ \pdfglyphtounicode{internalchar2}{200D}%
+\fi \fi
+
+%% patch to place accents *after* the base character, rather than before
+%% based on coding from mmap.sty by RRM
+\newif\ifPDFX@inaccent
+\let\LTX@add@accent\add@accent
+\def\PDFX@add@accent#1#2{%
+ \hmode@bgroup
+ \let \hmode@start@before@group \@firstofone
+ \setbox\@tempboxa\hbox{\PDFX@inaccenttrue
+ #2\global\mathchardef\accent@spacefactor\spacefactor}%
+ #2\kern-\wd\@tempboxa
+%% \ifdim\ht\@tempboxa>1ex\relax
+ \dimen@=\ht\@tempboxa\advance\dimen@-1ex\relax
+%%% reduce how much a nested accent is raised
+ \ifPDFX@inaccent\advance\dimen@-.2ex\relax\fi
+ \raise\dimen@\hbox to\wd\@tempboxa{\hss
+ \accent#1{\vphantom{#2}}\hss}%
+%% \else
+%% \accent#1{%\vphantom{#2}
+%% \vrule width\z@ height\ht\@tempboxa depth\dp\@tempboxa}%
+%% \fi
+ \egroup
+ \spacefactor\accent@spacefactor
+}
+%% same for named accents in math-mode
+\def\pdfx@mathaccentV#1#2#3#4#5{%
+ #5{\mathsurround=\z@\relax
+ \everymath{}%
+ \mathchoice
+ {\setbox\z@\hbox{$\displaystyle #5$}\kern-\wd\z@}%
+ {\setbox\z@\hbox{$\textstyle #5$}\kern-\wd\z@}%
+ {\setbox\z@\hbox{$\scriptstyle #5$}\kern-\wd\z@}%
+ {\setbox\z@\hbox{$\scriptscriptstyle #5$}\kern-\wd\z@}%
+ }%
+ \AMS@mathaccentV{#1}{#2}{#3}{#4}{\phantom{#5}}%
+}
+\AtBeginDocument{%
+ \@ifpackageloaded{amsmath}{%
+ \let\AMS@mathaccentV\mathaccentV
+ \let\mathaccentV\pdfx@mathaccentV}%
+}%
+
+%% How to support XeTeX here ?
+%%%%% adjust accent characters to the Unicode Combining variant %%%%
+\def\PDFX@combiningchars@unicode{%
+ \pdfglyphtounicode{grave}{0300}%
+ \pdfglyphtounicode{acute}{0301}%
+ \pdfglyphtounicode{circumflex}{0302}%
+ \pdfglyphtounicode{tilde}{0303}%
+ \pdfglyphtounicode{macron}{0304}%
+ \pdfglyphtounicode{Macronsmall}{0304}%
+ \pdfglyphtounicode{breve}{0306}%
+ \pdfglyphtounicode{dotaccent}{0307}%
+ \pdfglyphtounicode{Dotaccent}{0307}%
+ \pdfglyphtounicode{Dotaccentsmall}{0307}%
+ \pdfglyphtounicode{dieresis}{0308}%
+ \pdfglyphtounicode{ogonek}{0309}%
+ \pdfglyphtounicode{ring}{030A}%
+ \pdfglyphtounicode{hungarumlaut}{030B}%
+ \pdfglyphtounicode{caron}{030C}%
+ \pdfglyphtounicode{cedilla}{0327}%
+ \pdfglyphtounicode{commaaccent}{0326}% droid
+ % tie accents in berenisadf lm stix and others
+ \pdfglyphtounicode{tieaccentlowercase}{0311}%
+ \pdfglyphtounicode{tieaccentcapital}{0361}%
+ \pdfglyphtounicode{newtieaccentlowercase}{0311}%
+ \pdfglyphtounicode{newtieaccentcapital}{0361}%
+ % cm-unicode
+ \pdfglyphtounicode{space_uni030D}{030D}%
+ \pdfglyphtounicode{space_uni030E}{030E}%
+ \pdfglyphtounicode{space_uni030F}{030F}%
+ \pdfglyphtounicode{space_uni0311}{0311}%
+ \pdfglyphtounicode{space_uni0321}{0321}%
+ \pdfglyphtounicode{space_uni0322}{0322}%
+ \pdfglyphtounicode{space_uni032A}{032A}%
+ \pdfglyphtounicode{space_uni032B}{032B}%
+ \pdfglyphtounicode{space_uni0335}{0335}%
+ \pdfglyphtounicode{space_uni0337}{0337}%
+ \pdfglyphtounicode{space_uni033A}{033A}%
+ \pdfglyphtounicode{space_uni033B}{033B}%
+ \pdfglyphtounicode{space_uni033C}{033C}%
+ \pdfglyphtounicode{space_uni034D}{034D}%
+}
+
+\def\pdfx@check@accents{%
+ \ifx\add@accent\LTX@add@accent
+ \let\add@accent\PDFX@add@accent
+ \else
+ \expandafter\ifx\csname MT@orig@add@accent\endcsname\relax
+ \@ifpackageloaded{mmap}{}{%
+ \pdfx@ErrorWarning{another package has patched \string\add@accent }%
+ {Hit <return> to continue}{}{}}%
+ \else
+ \expandafter\let\csname MT@orig@add@accent\endcsname\PDFX@add@accent
+ \fi\fi
+ \ifxetex
+ \else
+ \PDFX@combiningchars@unicode
+%% this is now handled by glyphtounicode-ntx.tex
+%% \@ifpackageloaded{newtxmath}{%
+%% \pdfglyphtounicode{vec}{20D7}%
+%% \pdfglyphtounicode{rvec}{20D6}%
+%% \pdfglyphtounicode{lrvec}{20E1}%
+%% }{}%
+ \fi % end of \ifxetex
+ \let\pdfx@check@accents\unDefiNeD
+}
+\AtBeginDocument{\pdfx@check@accents}
+
+%% suppress hyperlinks when generating PDF/X
+\def\pdfx@linkfile@pdfX#1#2#3{%
+ \Hy@colorlink\@filecolor#1\Hy@xspace@end}
+\def\pdfx@linkstart@pdfX#1#2#3{%
+ \Hy@colorlink\@linkcolor#3\endgroup\Hy@xspace@end}
+\def\pdfx@linkurl@pdfX#1#2{%
+ \Hy@colorlink\@urlcolor#1\endgroup\Hy@xspace@end}
+\def\pdfx@StartlinkName@pdfX#1#2{}
+\def\pdfx@close@pdflink{\Hy@VerboseLinkStop\Hy@endcolorlink}%
+\def\pdfx@Acrobatmenu@noaction#1#2{#2}
+
+\ifpdfx@x
+ \let\hyper@linkfile\pdfx@linkfile@pdfX
+ \let\hyper@linkurl\pdfx@linkurl@pdfX
+ \let\hyper@linkstart\pdfx@linkstart@pdfX
+ \let\hyper@linkend\relax
+ \let\Hy@StartlinkName\pdfx@StartlinkName@pdfX
+ \let\close@pdflink\pdfx@close@pdflink
+ \let\AcrobatMenu\pdfx@Acrobatmenu@noaction
+ \Hy@bookmarksfalse
+%% {\def\sep{;}% should not be needed, but just in case
+ \AtBeginDocument{%
+ % cancel annotations and links
+ %
+ \def\PDF@FinishDoc{% ??? What uses this ???
+ \begingroup
+ \def\sep{; }% should not be needed, but just in case
+ \pdfinfo{%
+ \ifx\pdfx@pdfTitle\@empty\else /Title(\pdfx@pdfTitle)^^J\fi
+ \ifx\pdfx@pdfAuthor\@empty\else /Author(\pdfx@pdfAuthor)^^J\fi
+ \ifx\pdfx@pdfSubject\@empty\else /Subject(\pdfx@pdfSubject)^^J\fi
+ \ifx\pdfx@pdfKeywords\@empty\else /Keywords(\pdfx@pdfKeywords)^^J\fi
+ /Creator(\pdfx@CreatorTool)^^J%
+ \ifx\@pdfcreationdate\@empty
+ /CreationDate(D:\pdfx@convDate)%
+ \else
+ \ifxetex\else
+ /CreationDate(\@pdfcreationdate)%
+ \fi\fi
+ \ifx\@pdfmoddate\@empty
+ /ModDate(D:\pdfx@convDate)%
+ \else
+ /ModDate(\@pdfmoddate)%
+ \fi
+ ^^J/Producer(\pdfx@Producer)%
+ /Trapped/False^^J%
+ \ifnum\xmp@Part=1
+ /GTS_PDFXVersion(PDF/X-1\ifnum\xmp@ReleaseDate>2001
+ \xmp@Conformance\fi:\xmp@ReleaseDate)%
+ \else
+ /GTS_PDFXVersion(PDF/X-\xmp@Part\xmp@Conformance
+ \ifnum\xmp@Part< 4 :\xmp@ReleaseDate\fi)%
+ \fi
+ \ifnum\xmp@Part < 3
+ /GTS_PDFXConformance(PDF/X-\xmp@Part\xmp@Conformance
+ :\xmp@ReleaseDate)%
+ \fi
+ \ifpdfx@vt
+%% support for PDF/VT extensions of PDF/X-4 and PDF/X-5
+ /GTS_PDFVTVersion(PDF/VT-\xmp@vtPart\xmp@vtConformance)%
+ \fi
+ }%% end of PDF/X info
+ \endgroup %% end of scope for \sep
+ }%% end of \PDF@FinishDoc
+ }% end of \AtBeginDocument
+%% \pdfinfo{% order of these dictionary keys should not matter
+%% \ifx\pdfx@Author\@empty\else /Author(\pdfx@Author)\fi
+%% /CreationDate(D:\pdfx@convDate)%
+%% /Creator(\pdfx@CreatorTool)%
+%% \ifnum\xmp@Part=1
+%% /GTS_PDFXVersion(PDF/X-1\ifnum\xmp@ReleaseDate>2001
+%% \xmp@Conformance\fi:\xmp@ReleaseDate)%
+%% \else
+%% /GTS_PDFXVersion(PDF/X-\xmp@Part\xmp@Conformance
+%% \ifnum\xmp@Part< 4 :\xmp@ReleaseDate\fi)%
+%% \fi
+%% \ifnum\xmp@Part < 3
+%% /GTS_PDFXConformance(PDF/X-\xmp@Part\xmp@Conformance
+%% :\xmp@ReleaseDate)%
+%% \fi
+%%
+%% \ifpdfx@vt
+%%% support for PDF/VT extensions of PDF/X-4 and PDF/X-5
+%% /GTS_PDFVTVersion(PDF/VT-\xmp@vtPart\xmp@vtConformance)%
+%% \fi
+%% \ifx\pdfx@Keywords\@empty\else /Keywords(\pdfx@Keywords)\fi
+%% /ModDate(D:\pdfx@convDate)%
+%% /Producer(\pdfx@Producer)%
+%% \ifx\pdfx@Subject\@empty\else /Subject(\pdfx@Subject)\fi
+%% \ifx\pdfx@Title\@empty\else /Title(\pdfx@Title)\fi
+%% /Trapped/False%
+%% }% end of PDF/X info
+%% }% end of scope for \sep
+\else
+ \ifpdfx@e %% PDF/E
+ \AtBeginDocument{%
+ \def\PDF@FinishDoc{% ??? What uses this ???
+ \begingroup
+ \def\sep{; }% should not be needed, but just in case
+ \pdfinfo{%
+ \ifx\pdfx@pdfTitle\@empty\else /Title(\pdfx@pdfTitle)^^J\fi
+ \ifx\pdfx@pdfAuthor\@empty\else /Author(\pdfx@pdfAuthor)^^J\fi
+ \ifx\pdfx@pdfSubject\@empty\else /Subject(\pdfx@pdfSubject)^^J\fi
+ \ifx\pdfx@pdfKeywords\@empty\else /Keywords(\pdfx@pdfKeywords)^^J\fi
+ /Creator(\pdfx@CreatorTool)^^J%
+ \ifx\@pdfcreationdate\@empty
+ /CreationDate(D:\pdfx@convDate)%
+ \else
+ \ifxetex\else
+ /CreationDate(\@pdfcreationdate)%
+ \fi\fi
+ \ifx\@pdfmoddate\@empty
+ /ModDate(D:\pdfx@convDate)%
+ \else
+ /ModDate(\@pdfmoddate)%
+ \fi
+ ^^J/Producer(\pdfx@Producer)%
+ /Trapped/False^^J%
+ /GTS_PDFEVersion(PDF/E-1\xmp@Conformance:\xmp@ReleaseDate)%
+ }% end of PDF/E info
+ \endgroup %% end of scope for \sep
+ }% end of \PDF@FinishDoc
+ }% end of \AtBeginDocument
+%% {\def\sep{;}% should not be needed, but just in case
+%% \pdfinfo{% order of these dictionary keys should not matter
+%% \ifx\pdfx@Title\@empty\else /Title(\pdfx@Title)\fi
+%% \ifx\pdfx@Author\@empty\else /Author(\pdfx@Author)\fi
+%% \ifx\pdfx@Subject\@empty\else /Subject(\pdfx@Subject)\fi
+%% \ifx\pdfx@Keywords\@empty\else /Keywords(\pdfx@Keywords)\fi
+%% \ifx\pdfx@Author\@empty\else /Author(\pdfx@Author)\fi
+%% /CreationDate(\pdfx@convDate)%
+%% /Creator(\pdfx@CreatorTool)%
+%% /GTS_PDFEVersion(PDF/E-1\xmp@Conformance:\xmp@ReleaseDate)%
+%% \ifx\pdfx@Keywords\@empty\else /Keywords(\pdfx@Keywords)\fi
+%% /ModDate(D:\pdfx@convDate)%
+%% /Producer(\pdfx@Producer)%
+%% \ifx\pdfx@Subject\@empty\else /Subject(\pdfx@Subject)\fi
+%% \ifx\pdfx@Title\@empty\else /Title(\pdfx@Title)\fi
+%% /Trapped/False%
+%% }% end of PDF/E info
+%% }% end of scope for \sep
+ \else %% PDF/A
+ \def\pdfx@confA{a}%
+ \def\pdfx@confB{b}%
+ \def\pdfx@confU{u}%
+ \expandafter\def\expandafter\xmp@conf\expandafter
+ {\csname pdfx@conf\xmp@Conformance\endcsname}%
+ \AtBeginDocument{%
+ \def\PDF@FinishDoc{% ??? What uses this ???
+ \begingroup
+ \def\sep{; }% should not be needed, but just in case
+ \pdfinfo{%
+ \ifx\pdfx@pdfTitle\@empty\else /Title(\pdfx@pdfTitle)^^J\fi
+ \ifx\pdfx@pdfAuthor\@empty\else /Author(\pdfx@pdfAuthor)^^J\fi
+ \ifx\pdfx@pdfSubject\@empty\else /Subject(\pdfx@pdfSubject)^^J\fi
+ \ifx\pdfx@pdfKeywords\@empty\else /Keywords(\pdfx@pdfKeywords)^^J\fi
+ /Creator(\pdfx@CreatorTool)^^J%
+ \ifx\@pdfcreationdate\@empty
+ /CreationDate(D:\pdfx@convDate)%
+ \else
+ \ifxetex\else
+ /CreationDate(\@pdfcreationdate)%
+ \fi\fi
+ \ifx\@pdfmoddate\@empty
+ /ModDate(D:\pdfx@convDate)%
+ \else
+ /ModDate(\@pdfmoddate)%
+ \fi
+ ^^J/Producer(\pdfx@Producer)%
+ /Trapped/False^^J%
+ /GTS_PDFA1Version (PDF/A-\xmp@Part\xmp@conf:\xmp@ReleaseDate)%
+ }% end of PDF/A info
+ \endgroup %% end of scope for \sep
+ }% end of \PDF@FinishDoc
+ }% end of \AtBeginDocument
+\fi\fi
+
+%%----------------------------------------------------------------------
+%% 2018-12-16: xmpincl needs the ifthen package
+%% it should be loaded outside the grouping, else biblatex may barf
+%%
+\RequirePackage{ifthen}
+\begingroup
+%% override the \ifpdf check of xmpincl package, inside the grouping
+ \pdftrue
+ \RequirePackage{xmpincl}
+%% combine coding from xmpincl and hyperxml to support XeTeX
+\def\pdfx@xmpincl@xetex#1{%
+ \IfFileExists{#1.xmp}{%
+ \mcs@xmpincl@patchFile{#1}%
+ \begingroup
+ \special{pdf:fstream @pdfx@Metadata (#1.xmpi)
+ <<
+ /Type /Metadata
+ /Subtype /XML
+ >>
+ }%
+ \special{pdf:put @catalog
+ <<
+ /Metadata @pdfx@Metadata
+ >>
+ }%
+ \endgroup
+ }{%
+ \newcommand{\mcs@xmpincl@filename}{#1.xmp}%
+ \PackageError{xmpincl}%
+ {The file \mcs@xmpincl@filename\space was not found}%
+ {The file \mcs@xmpincl@filename\space The metadata file
+ wasn't found.\MessageBreak Oops.}%
+ }
+}
+\ifxetex
+ \let\includexmp\pdfx@xmpincl@xetex
+\fi
+
+%% macro provided by Leonardo E. Segovia on 2017-05-15
+%% <leonardo.segovia@cs.uns.edu.ar>
+\def\pdfx@xmpincl@luatex#1{%
+ \IfFileExists{#1.xmp}{%
+ \mcs@xmpincl@patchFile{#1}%
+ \begingroup
+ \pdfcompresslevel=0
+ \immediate\pdfobj uncompressed stream attr {/Type /Metadata /Subtype /XML}
+ file{#1.xmpi}%
+ \pdfcatalog{%\pdfx@LanguageSpec
+ /Metadata \the\pdflastobj\space 0 R}%
+ \endgroup
+ }{%
+ \newcommand{\mcs@xmpincl@filename}{#1.xmp}%
+ \PackageError{xmpincl}%
+ {The file \mcs@xmpincl@filename\space was not found}%
+ {The file \mcs@xmpincl@filename\space The metadata file
+ wasn't found.\MessageBreak Oops.}%
+ }
+}
+\ifluatex
+ \let\includexmp\pdfx@xmpincl@luatex
+\fi
+
+%%----------------------------------------------------------------------
+\begingroup
+ \ifpdfx@x
+ \ifpdfx@vt
+ \def\xmp@template{pdfvt}%
+ \else
+ \def\xmp@template{pdfx}% formerly pdfx-1a
+ \fi
+ \else
+ \ifpdfx@e
+ \def\xmp@template{pdfe}%
+ \else
+ \def\xmp@template{pdfa}%
+ \fi\fi
+ \catcode`\'=12 \catcode`\<=12 \catcode`\>=12 \catcode`\?=12
+ \catcode`\"=12 \catcode`\= 12 %% used within the template file
+%% patch commands from xmpincl.sty ...
+ \def\pdfx@xmpinclStart{% supply byte-order marker
+ <?xpacket begin='^^ef^^bb^^be' id='W5M0MpCehiHzreSzNTczkc9d' ?> %
+ }%
+ \def\pdfx@xmpinclStartAlt{% no byte-order marker
+ <?xpacket begin='' id='W5M0MpCehiHzreSzNTczkc9d' ?> %
+ }%
+ \def\pdfx@xmpinclEnd{% allow XMP packet to be writable
+ <?xpacket end='w'?> %
+ }%
+ \let\mcs@xmpinclStart\pdfx@xmpinclStart
+ \let\mcs@xmpinclStartAlt\pdfx@xmpinclStartAlt
+ \ifpdfx@noBOM % don't use the byte-order marker
+ \let\mcs@xmpinclStart\pdfx@xmpinclStartAlt
+ \fi
+ \let\mcs@xmpinclEnd\pdfx@xmpinclEnd
+%% ... preventing their redefinition
+ \def\newcommand#1#2{}%
+%%
+%% \def\pdfx@endeval{%
+%% \noexpand \TE@setvaltrue \noexpand \else
+%% \noexpand \TE@setvalfalse \noexpand \fi
+%% \noexpand \TE@negatefalse \noexpand \fi}%
+%% \let\TE@endeval\pdfx@endeval
+ \ifluatex\else\ifxetex\else
+ \inputencoding{8bit}%
+ \fi\fi
+ \makeatletter
+ \def\cf@encoding{L8U}\fontencoding{L8U}%
+ \providecommand{\ifnot@empty}[2]{\ifx#1\@empty\relax\else#2\fi}%
+ \pdfx@xmpmarkup
+\expandafter\global\expandafter
+ \let\csname L8U-cmd\expandafter\endcsname\csname U-cmd\endcsname
+ \def\cf@encoding{L8U}\fontencoding{L8U}%
+ \providecommand{\ifnot@empty}[2]{\ifx#1\@empty\relax\else#2\fi}%
+ \obeyspaces%
+%% beware 128 space characters -- for padding end of XMP packet
+ \gdef\paddingline{ }%
+ \typeout{Using XMP template file: \xmp@template.xmp}%
+ \includexmp{\xmp@template}%
+\endgroup
+
+%%
+%% revert active characters to previous encoding
+%%
+\ifpdf@activechars
+ \global\let ^^c0\pdfx@save@co
+ \global\let ^^c1\pdfx@save@ci
+ \global\let ^^c2\pdfx@save@cii
+ \global\let ^^c3\pdfx@save@ciii
+ \global\let ^^c4\pdfx@save@civ
+ \global\let ^^c5\pdfx@save@cv
+ \global\let ^^c6\pdfx@save@cvi
+ \global\let ^^c7\pdfx@save@cvii
+ \global\let ^^c8\pdfx@save@cviii
+ \global\let ^^c9\pdfx@save@cix
+ \global\let ^^ca\pdfx@save@ca
+ \global\let ^^cb\pdfx@save@cb
+ \global\let ^^cc\pdfx@save@cc
+ \global\let ^^cd\pdfx@save@cd
+ \global\let ^^ce\pdfx@save@ce
+ \global\let ^^cf\pdfx@save@cf
+ \global\let ^^d0\pdfx@save@do
+ \global\let ^^d1\pdfx@save@di
+ \global\let ^^d2\pdfx@save@dii
+ \global\let ^^d3\pdfx@save@diii
+ \global\let ^^d4\pdfx@save@div
+ \global\let ^^d5\pdfx@save@dv
+ \global\let ^^d6\pdfx@save@dvi
+ \global\let ^^d7\pdfx@save@dvii
+ \global\let ^^d8\pdfx@save@dviii
+ \global\let ^^d9\pdfx@save@dix
+ \global\let ^^da\pdfx@save@da
+ \global\let ^^db\pdfx@save@db
+ \global\let ^^dc\pdfx@save@dc
+ \global\let ^^dd\pdfx@save@dd
+ \global\let ^^de\pdfx@save@de
+ \global\let ^^df\pdfx@save@df
+ \global\let ^^e0\pdfx@save@eo
+ \global\let ^^e1\pdfx@save@ei
+ \global\let ^^e2\pdfx@save@eii
+ \global\let ^^e3\pdfx@save@eiii
+ \global\let ^^e4\pdfx@save@eiv
+ \global\let ^^e5\pdfx@save@ev
+ \global\let ^^e6\pdfx@save@evi
+ \global\let ^^e7\pdfx@save@evii
+ \global\let ^^e8\pdfx@save@eviii
+ \global\let ^^e9\pdfx@save@eix
+ \global\let ^^ea\pdfx@save@ea
+ \global\let ^^eb\pdfx@save@eb
+ \global\let ^^ec\pdfx@save@ec
+ \global\let ^^ed\pdfx@save@ed
+ \global\let ^^ee\pdfx@save@ee
+ \global\let ^^ef\pdfx@save@ef
+ \global\let ^^f0\pdfx@save@fo
+ \global\let ^^f1\pdfx@save@fi
+ \global\let ^^f2\pdfx@save@fii
+ \global\let ^^f3\pdfx@save@fiii
+\fi
+
+\endgroup
+
+%%
+%% controls the color model and conversions with xcolor package
+%%
+\ifpdfx@cmyk
+ %
+ % this will have been done already for PDF/X
+ %
+ \PassOptionsToPackage{cmyk,hyperref}{xcolor}
+ \def\pdfx@handlexcolor{\def\@@mod{cmyk}\selectcolormodel{cmyk}%
+ \convertcolorsUtrue\convertcolorsDtrue}
+ \ifpdfx@x
+ \else
+%% \AtBeginDocument{%
+%% \def\@linkcolor{0 1 1 0}%
+%% \def\@anchorcolor{0 0 0 1}%
+%% \def\@citecolor{1 0 1 0}%
+%% \def\@filecolor{.5 0 0 .5}%
+%% \def\@urlcolor{0 1 0 0}%
+%% \def\@menucolor{0 1 1 0}%
+%% \def\@runcolor{.5 0 0 .5}%
+%% \def\@linkbordercolor{0 1 1 0}%
+%% \def\@citebordercolor{1 0 1 0}%
+%% \def\@filebordercolor{.5 0 0 .5}%
+%% \def\@urlbordercolor{1 0 0 0}%
+%% \def\@menubordercolor{0 1 1 0}%
+%% \def\@runbordercolor{.7 0 0 .3}%
+%% \def\Fld@bcolor{0 0 0 0}%
+%% \def\Fld@bordercolor{0 1 1 0}%
+%% }
+ \fi
+\else
+ \PassOptionsToPackage{rgb,hyperref}{xcolor}
+ \def\pdfx@handlexcolor{\def\@@mod{rgb}\selectcolormodel{rgb}%
+ \convertcolorsUtrue\convertcolorsDtrue}
+\fi
+\@ifpackageloaded{xcolor}{\pdfx@handlexcolor
+ \ifpdfx@cmyk\else\color{black}\fi}{%
+ \AtBeginDocument{\@ifpackageloaded{xcolor}{\pdfx@handlexcolor}{}}
+}
+
+%%----------------------------------------------------------------------
+%% Disable some actions in Beamer navigation
+\@ifclassloaded{beamer}{%
+ \let\real@insertslidenavigationsymbol
+ \insertslidenavigationsymbol
+ \let\real@insertbackfindforwardnavigationsymbol
+ \insertbackfindforwardnavigationsymbol
+ \def\pdfx@insertslidenavigationsymbol{{%
+ \let\Acrobatmenu\pdfx@Acrobatmenu@noaction
+ \real@insertslidenavigationsymbol
+ }}%
+ \def\pdfx@insertbackfindforwardnavigationsymbol{{%
+ \let\Acrobatmenu\pdfx@Acrobatmenu@noaction
+ \real@insertbackfindforwardnavigationsymbol
+ }}%
+ \AtBeginDocument{%
+ \ifHy@pdfa
+ \let\insertslidenavigationsymbol
+ \pdfx@insertslidenavigationsymbol
+ \let\insertbackfindforwardnavigationsymbol
+ \pdfx@insertbackfindforwardnavigationsymbol
+ \fi}%
+}{}
+
+%%----------------------------------------------------------------------
+\ifpdfx@transliterated
+%% support for bookmarks with transliterated input
+ \ifxetex\let\pdf@escapehex\empty\fi % don't need it
+ \expandafter\ifx\csname pdf@escapehex\endcsname\relax
+ \PackageWarning{pdfx}{%
+ Missing an implementation of \string\pdf@escapehex ^^J
+ Translated Bookmarks cannot be generated.^^J}%
+ \newcommand{\pdfxBookmark}[4][]{#2[#1]{#4}}%
+ \else
+ \def\pdfx@GeneratePdfString#1#2{%
+ % converts a UTF-8 string to UTF-16be
+ \StringEncodingConvert{#1}{#2}{utf8}{utf16be}%
+ \edef#1{\string\376\string\377\pdfescapestring{#1}}%
+ }
+ \newtoks\pdfx@DisabledCommands
+ \def\pdfxDisableCommands#1{%
+ \expandafter\pdfx@DisabledCommands
+ \expandafter{\the\pdfx@DisabledCommands#1}}
+ \pdfxDisableCommands{%
+ \def\80{}% else \000\( --> \000\80\050 \000\000\050
+ \aftergroup\let\aftergroup\HyPsd@ConvertToUnicode\aftergroup\@gobble}
+ \let\Hy@@writetorep\@@writetorep
+ \def\pdfx@@writetorep#1#2#3#4#5{%
+ \begingroup
+ \pdfx@xmpunimarkup
+ \pdfx@prebookmark
+ \edef\pdfstringdefPreHook{%\pdfstringdefPreHook
+ \the\pdfx@DisabledCommands}%
+ \Hy@@writetorep{#1}{#2}{#3}{#4}{#5}%
+ \endgroup
+ }
+ \newcommand{\pdfxBookmark}[4][]{%
+ \ifx\relax#3\relax
+ \PackageError{pdfx}{Unknown macro \string#3.
+ A proper bookmark cannot be created}%
+ {Proceed to process the \string#1 as usual.}%
+ #2{#4}%
+ \else
+ \ifluatex % use the utf8 directly
+ \let\pdfx@temp#3\relax
+ \def\pdfx@prebookmark{%
+ \pdfx@DisabledCommands{}%
+ \let#3\pdfx@temp
+ }%
+ \else\ifxetex % use the utf8 directly
+ \let\pdfx@temp#3\relax
+ \def\pdfx@prebookmark{%
+ \pdfx@DisabledCommands{}%
+ \let#3\pdfx@temp
+ }%
+ \else
+ % convert the utf8 to utf16be
+ \pdfxBookmarkString\pdfx@temp{#3}%
+ \fi\fi
+ \let\@@writetorep\pdfx@@writetorep
+ \ifx\empty#1\empty
+ \def#3{#4}%
+ #2{#3}%
+ \else
+ \def#3{#1}%
+ #2[#3]{#4}%
+ \fi
+ \let\@@writetorep\Hy@@writetorep
+ \fi
+ \ignorespaces
+ }
+%% use as: \pdfxBookmark{\section}{\sectAtitle}{...}
+%% use as: \pdfxBookmark[<opt-title>]{\section}{\sectAtitle}{...}
+%% only needed by pdfTeX --- Lua-/XeTeX use the utf8 directly
+ \def\pdfxBookmarkString#1#2{%
+ \pdfx@GeneratePdfString#1{#2}%
+ \def\pdfx@prebookmark{%
+ \pdfxDisableCommands{\let#2#1}%
+ }%
+ }
+%% use as: \pdfxBookmarkString\PdfSectA\sectAtitle
+%% where \sectAtitle has been defined by e.g.
+%% \pdfxEnableCommands{\xdef\sectAtitle{\textLGR{...}}}
+
+ \fi % end of \ifx\pdf@escapehex\relax
+\fi % end of \ifpdfx@transliterated
+
+%%----------------------------------------------------------------------
+
+%% disable hyperref options,
+%% to prevent changes that will cause an incompatibility
+ \Hy@DisableOption{pdfauthor}%
+ \Hy@DisableOption{pdftitle}%
+ \Hy@DisableOption{pdfsubject}%
+ \Hy@DisableOption{pdfcreator}%
+ \Hy@DisableOption{pdfcreationdate}%
+ \Hy@DisableOption{pdfmoddate}%
+ \Hy@DisableOption{pdfproducer}%
+ \Hy@DisableOption{pdfkeywords}%
+%% once set correctly, don't let this change
+ \Hy@DisableOption{pdfa}\let\Hy@pdfafalse\relax\let\Hy@pdfatrue\relax
+\endinput
+%%
+%% End of file `pdfx.sty'.
+% \end{macrocode}
+% \iffalse
+%</package>
+% \fi
+% \Finale
+% \let\newpage\relax
+% \PrintIndex
+% \PrintChanges
+% \endinput
diff --git a/macros/latex/contrib/pdfx/src/pdfx.ins b/macros/latex/contrib/pdfx/src/pdfx.ins
new file mode 100644
index 0000000000..afd943fbb5
--- /dev/null
+++ b/macros/latex/contrib/pdfx/src/pdfx.ins
@@ -0,0 +1,41 @@
+\input docstrip.tex
+%\keepsilent
+\askforoverwritefalse
+
+\preamble
+
+ Copyright (c) 2019, CV Radhakrishnan <cvr@river-valley.org>,
+ Han The Thanh <thanh@river-valley.org>,
+ Ross Moore <ross.moore@mq.edu.au>,
+ Peter Selinger <selinger@mathstat.dal.ca>
+
+ This file may be distributed and/or modified under the conditions
+ of the LaTeX Project Public License, either version 1.2 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.2 or later is part of all distributions of LaTeX
+ version 1999/12/01 or later.
+
+\endpreamble
+
+\generate{\file{pdfx.sty}{\from{pdfx.dtx}{package}}}
+
+\obeyspaces
+\Msg{ *************************************************************}
+\Msg{ * *}
+\Msg{ * To finish the installation you have to move the files *}
+\Msg{ * into a directory searched by TeX: *}
+\Msg{ * *}
+\Msg{ * *}
+\Msg{ * To produce the documentation run the relevant file.dtx *}
+\Msg{ * through pdfLaTeX or use the Makefile which is far *}
+\Msg{ * more convenient. *}
+\Msg{ * *}
+\Msg{ * Happy TeXing! *}
+\Msg{ * *}
+\Msg{ *************************************************************}
+
+\endbatchfile
diff --git a/macros/latex/contrib/pdfx/src/pdfx.xmpdata b/macros/latex/contrib/pdfx/src/pdfx.xmpdata
new file mode 100644
index 0000000000..66eb644635
--- /dev/null
+++ b/macros/latex/contrib/pdfx/src/pdfx.xmpdata
@@ -0,0 +1,33 @@
+\Title{Generation of PDF/X- and PDF/A-compliant PDFs with pdfTeX \textemdash\ pdfx.sty}
+\Author{\CVR\sep \Thanh\sep Ross Moore\sep Peter Selinger}
+\Subject{This package supports generation of PDF/X-, PDF/A- and PDF/E-compliant documents, in most of their variants, using pdfLaTeX, LuaLaTeX and XeLaTeX.}
+\Keywords{PDF/X-, PDF/A- and PDF/E-compliance\sep Multilingual Metadata\sep installation\sep \TeX Live \thisyear}
+\PublicationType{manual}
+\Contributor{Norbert Preining: 'colorprofiles' package}
+\Copyright{Public domain.}
+\Copyrighted{False}
+\CopyrightURL{http://tug.org/texlive/}
+\CoverDisplayDate{March \thisyear}
+\CoverDate{\thisyear-03-10}
+\CreatorTool{LaTeX + pdfx.sty with option \pdfxopt, from TeX Live \thisyear}
+\Date{2017-05-18\sep 2017-06-23\sep 2018-11-29\sep 2018-12-22\sep 2019-02-08\sep 2019-03-10}
+\Advisory{An earlier version of this documentation was published as: TUGboat 36, No.2, pp.136\textendash 142 (2015)}
+\Advisory{v1.6: Added XMP support for PDF/UA-1. Added more Metadata fields and Language support.}
+\Advisory{v1.6: Default RGB and CMYK profiles now require the colorprofiles.sty package.}
+\Relation{Requires the colorprofiles package for RGB and CMYK default profiles.}
+\Advisory{v1.6: Access more profiles, incl. to pdfaPilot's color profile folders.}
+\Advisory{v1.6: Revised glyphtounicode.sty to use variation selectors.}
+\Advisory{v1.6: altered maps to PUA codepoints.}
+\Advisory{v1.6: added more glyphs via glyphtounicode-ntx.tex }
+\Advisory{v1.6: Support for 8-bit Hebrew encodings, some Arabic and Devanagari.}
+\Advisory{v1.6: Updated documentation, incl. for LaTeX changes.}
+\Advisory{v1.6.1: Fixed issue with ifthen package; improved Metadata with LuaTeX and XeTeX.}
+\Advisory{v.1.6.1: Flexibility with page boxes for PDF/X.}
+\Advisory{v.1.6.2: Fixed passing of options to xcolor, and some glyphtounicode values.}
+\Advisory{v.1.6.2: Fixed encoding issue. Extra warning when colorprofiles.tex is missing.}
+\Advisory{v.1.6.3: Properly fixed encoding issue; supports \string\pdfomitcharset\ primitive.}
+\Advisory{v.1.6.3: Reference to veraPDF validation software; additions to glyphtounicode-ntx.tex.}
+\Advisory{v.1.6.3: Patched \string\mathaccentV\ to output accents after the base character.}
+\pdfxEnableCommands{%
+ \def\CVR{C.V. Radhakrishnan}\def\Thanh{H\`an Th\eee Thanh}%
+ \def\eee{^^c3^^aa^^cc^^81 }}
diff --git a/macros/latex/contrib/pdfx/src/rvdtx.sty b/macros/latex/contrib/pdfx/src/rvdtx.sty
new file mode 100644
index 0000000000..1cc70d4877
--- /dev/null
+++ b/macros/latex/contrib/pdfx/src/rvdtx.sty
@@ -0,0 +1,409 @@
+%
+%
+% File: rvdtx.sty
+%
+% Auxiliary package to format *.dtx documents.
+%
+% Copyright (c) 2008, CV Radhakrishnan <cvr@river-valley.org>,
+%
+% This file may be distributed and/or modified under the conditions
+% of the LaTeX Project Public License, either version 1.2 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.2 or later is part of all distributions of LaTeX
+% version 1999/12/01 or later.
+%
+%
+\newcounter{colorscheme}
+
+\DeclareOption{red}{\setcounter{colorscheme}{0}}
+\DeclareOption{green}{\setcounter{colorscheme}{2}}
+\DeclareOption{orange}{\setcounter{colorscheme}{1}}
+\ProcessOptions
+
+\RequirePackage[dvipsnames,svgnames]{xcolor}
+
+\ifcase\thecolorscheme
+%
+% Red color spec (default)
+%
+ \colorlet{itemcolor}{DarkRed}
+ \colorlet{verbcolor}{Sepia}
+ \colorlet{botrulecolor}{DarkRed}
+ \colorlet{botbgcolor}{DarkRed}
+ \colorlet{botcolor}{white}
+ \colorlet{pgrulecolor}{DarkRed!10}
+ \colorlet{pgbgcolor}{DarkRed!50}
+
+ \colorlet{quicklinkrulecolor}{white}
+ \colorlet{quicklinkcolor}{white}
+ \colorlet{topverticalrule}{white}
+ \colorlet{titlecolor}{white}
+ \colorlet{hlinkcolor}{white}
+ \colorlet{hlinktricolor}{white}
+ \colorlet{linkcolor}{orange}
+ \colorlet{urlcolor}{orange}
+
+ \colorlet{arrayrulecolor}{olive!30}
+ \colorlet{seccolor}{brown}
+
+ \colorlet{toprulecolor}{DarkRed}
+ \colorlet{topbgcolor}{DarkRed}
+ \colorlet{topcolor}{orange}
+\or
+%
+% Orange color spec (default)
+%
+ \colorlet{itemcolor}{brown}
+ \colorlet{verbcolor}{Sepia}
+ \colorlet{botrulecolor}{orange!25}
+ \colorlet{botbgcolor}{orange!15}
+ \colorlet{botcolor}{orange!80}
+ \colorlet{pgrulecolor}{orange}
+ \colorlet{pgbgcolor}{white}
+
+ \colorlet{quicklinkrulecolor}{orange!40}
+ \colorlet{quicklinkcolor}{brown}
+ \colorlet{topverticalrule}{brown}
+ \colorlet{titlecolor}{brown}
+ \colorlet{hlinkcolor}{brown}
+ \colorlet{hlinktricolor}{orange!70}
+ \colorlet{linkcolor}{brown}
+ \colorlet{urlcolor}{brown}
+
+ \colorlet{arrayrulecolor}{olive!30}
+ \colorlet{seccolor}{brown}
+
+ \colorlet{toprulecolor}{orange!30}
+ \colorlet{topbgcolor}{orange!10}
+ \colorlet{topcolor}{brown!80}
+%
+%
+\or% Green color specs
+%
+%
+ \colorlet{itemcolor}{OliveGreen}
+ \colorlet{verbcolor}{OliveGreen}
+ \colorlet{botrulecolor}{GreenYellow!25}
+ \colorlet{botbgcolor}{GreenYellow!30}
+ \colorlet{botcolor}{Green!80}
+ \colorlet{pgrulecolor}{GreenYellow}
+ \colorlet{pgbgcolor}{white}
+
+ \colorlet{quicklinkrulecolor}{Green!40}
+ \colorlet{quicklinkcolor}{Green}
+ \colorlet{topverticalrule}{Green}
+ \colorlet{titlecolor}{DarkOliveGreen}
+ \colorlet{hlinkcolor}{DarkOliveGreen}
+ \colorlet{hlinktricolor}{Green!70}
+ \colorlet{linkcolor}{OliveGreen}
+ \colorlet{urlcolor}{OliveGreen}
+
+ \colorlet{arrayrulecolor}{olive!30}
+ \colorlet{seccolor}{OliveGreen}
+
+ \colorlet{toprulecolor}{GreenYellow!50}
+ \colorlet{topbgcolor}{GreenYellow!20}
+ \colorlet{topcolor}{GreenYellow!80}
+\fi
+%
+\def\floatpagefraction{.99}
+\usepackage{geometry}
+\geometry{top=2in,
+ bottom=1in,
+ left=2in,
+ right=1in,
+ a4paper}
+
+\RequirePackage{comment,xspace}
+\def\pdftex{pdf\TeX\xspace}
+\def\defmacro#1{\texttt{\@bsl#1}}
+\def\thanh{H\`an Th\^e Th\`anh\xspace}
+\def\Thanh{H\`an Th\'{\^e} Th\`anh\xspace}
+
+\let\@DRAFTout@Hook\@empty
+\newcommand{\DRAFTout}{\g@addto@macro\@DRAFTout@Hook}
+\newcommand{\@DRAFTout@Out}{%
+ \afterassignment\@DRAFTout@Test
+ \global\setbox\@cclv= %
+ }
+\newcommand{\@DRAFTout@Test}{%
+ \ifvoid\@cclv\relax
+ \aftergroup\@DRAFTout@Output
+ \else
+ \@DRAFTout@Output
+ \fi%
+ }
+\newcommand{\@DRAFTout@Output}{%
+ \@DRAFTout@Hook%
+ \@DRAFTout@Org@Out\box\@cclv%
+ }
+\newcommand{\@DRAFTout@Org@Out}{}
+\newcommand*{\@DRAFTout@Init}{%
+ \let\@DRAFTout@Org@Out\shipout
+ \let\shipout\@DRAFTout@Out
+ }
+\newdimen\OHeight
+\setlength\OHeight{\textheight}
+\addtolength\OHeight{\headheight}
+\addtolength\OHeight{\headsep}
+\addtolength\OHeight{\footskip}
+
+\newif\ifoverlay\overlayfalse
+
+\AtBeginDocument{\@DRAFTout@Init}
+\newcommand{\@DraftOverlay@Hook}{}
+\newcommand{\AddToDraftOverlay}{\g@addto@macro\@DraftOverlay@Hook}
+\newcommand{\ClearDraftOverlay}{\let\@DraftOverlay@Hook\@empty}
+\newcommand{\@DraftOverlay}{%
+ \ifx\@DraftOverlay@Hook\@empty
+ \else
+ \bgroup
+ \@tempdima=1in
+ \@tempcnta=\@tempdima
+ \@tempcntb=-\@tempdima
+ \advance\@tempcntb\paperheight
+ \ifoverlay
+ \global\setbox\@cclv\vbox{%
+ \box\@cclv
+ \vbox{\let\protect\relax%
+ \unitlength=1pt%
+ \pictur@(0,0)(\strip@pt\@tempdima,\strip@pt\@tempdimb)%
+ \@DraftOverlay@Hook%
+ \endpicture}}%
+ \else
+ \global\setbox\@cclv\vbox{%
+ \vbox{\let\protect\relax%
+ \unitlength=1sp%
+ \pictur@(0,0)(\@tempcnta,\@tempcntb)%
+ \@DraftOverlay@Hook%
+ \endpicture}%
+ \box\@cclv}%
+ \fi
+ \egroup
+ \fi
+}
+
+\definecolor{gray30}{gray}{.7}
+\definecolor{gray20}{gray}{.8}
+\definecolor{gray10}{gray}{.9}
+
+\DRAFTout{\@DraftOverlay}
+\long\def\puttext(#1)#2{\AddToDraftOverlay{%
+ \setlength{\unitlength}{1pt}\thinlines%
+ \put(#1){#2}}}
+
+\MakeShortVerb{\|}
+
+\IfFileExists{libertine.sty}{\RequirePackage[osf,tt]{libertine}}{}
+\IfFileExists{sourcesanspro.sty}
+ {\RequirePackage[osf,light,semibold]{sourcesanspro}}{}
+\IfFileExists{inconsolata.sty}{\RequirePackage[scaled=.95]{inconsolata}
+%\IfFileExists{inconsolata.sty}{\RequirePackage[scaled=.95,noupquote]{inconsolata}
+ \def\ttdefault{zi4}}{\def\ttdefault{cmtt}}
+
+\def\theCodelineNo{\reset@font\tiny\arabic{CodelineNo}}
+
+\def\@seccntformat#1{\llap{\csname the#1\endcsname.\hspace*{6pt}}}
+\def\section{\@startsection {section}{1}{\z@}%
+ {-3.5ex \@plus -1ex \@minus -.2ex}%
+ {2.3ex \@plus.2ex}%
+ {\normalfont\large\bfseries\color{seccolor}}}
+\def\subsection{\@startsection{subsection}{2}{\z@}%
+ {-3.25ex\@plus -1ex \@minus -.2ex}%
+ {1.5ex \@plus .2ex}%
+ {\normalfont\normalsize\bfseries\color{seccolor}}}
+\def\subsubsection{\@startsection{subsubsection}{3}{\z@}%
+ {-3.25ex\@plus -1ex \@minus -.2ex}%
+ {1.5ex \@plus .2ex}%
+ {\normalfont\normalsize\bfseries\color{seccolor}}}
+
+\let\sv@section\section
+
+\newwrite\qlinkwrite
+\immediate\openout\qlinkwrite=\jobname.links
+\renewcommand\section{\@ifstar{\star@section}{\normal@section}}
+\def\star@section#1{\def\next{#1}
+ \sv@section*{#1}%
+ \immediate\write\qlinkwrite{\string\fxmark{section.\thesection}%
+ {\expandafter\strip@prefix\meaning\next}}%
+}
+
+\newcommand\normal@section[2][]{\def\next{#1}
+ \ifx\next\@empty\def\next{#2}\else\if#1*\def\next{#1}\fi\fi
+ \sv@section[#1]{#2}%
+ \immediate\write\qlinkwrite{\string\fxmark{section.\thesection}%
+ {\expandafter\strip@prefix\meaning\next}}%
+}
+
+%\RequirePackage[draft]{pdfdraftcopy}
+% \draftstring{}
+ \puttext(0,36){\botstring}%
+ \puttext(0,842){\copy\topbox}
+
+\RequirePackage{colortbl}
+\arrayrulecolor{arrayrulecolor}
+\let\shline\hline
+\def\hline{\noalign{\vskip3pt}\shline\noalign{\vskip4pt}}
+
+\RequirePackage{hyperref}
+\hypersetup{pdftex,colorlinks}
+\def\Hlink#1#2{\hyperlink{#2}{\color{hlinktricolor}%
+ $\blacktriangleright$~\color{hlinkcolor}#1}}
+ \def\@linkcolor{linkcolor}
+ \def\@urlcolor{urlcolor}
+
+\pagestyle{empty}
+\def\version#1{\gdef\@version{#1}}
+\def\@version{1.0}
+\def\contact#1{\gdef\@contact{\texttt{#1}}}
+\def\author#1{\gdef\@author{#1}}
+\def\@author{River Valley Technologies}
+\def\@contact{\texttt{support@river-valley.com}}
+\def\keywords#1{\gdef\@keywords{#1}}
+\def\@keywords{\LaTeX, \xml}
+
+\long\def\Hrule{\\[-4pt]\hspace*{-3em}%
+ {\color{quicklinkrulecolor}\rule{\linewidth}{0pt}}\\}
+
+\long\def\fxmark#1#2{\Hlink{#2}{#1}\Hrule}
+
+\newbox\topbox
+\long\def\maketitle{\global\setbox\topbox=\vbox{\hsize=\paperwidth
+ \parindent=0pt
+ \fcolorbox{toprulecolor}{topbgcolor}%
+ {\parbox[t][1.5in][c]{\paperwidth}%
+ {\hspace*{15mm}%
+ \parbox[c]{.475\paperwidth}{\fontsize{18pt}{20pt}%
+ \raggedright\normalfont\sffamily \selectfont
+ \color{titlecolor} \@title\\[12pt]
+ \parbox{\linewidth}{\fontsize{12}{13.5}\fontseries{m}%
+ \sffamily\upshape\selectfont\@author\strut}%
+ }%
+ \hfill
+ \parbox[c][1.5in][c]{1mm}{\color{topverticalrule}%
+ \rule{.1pt}{1.5in}}%
+ \hfill
+ \parbox[c][1.5in][c]{.35\paperwidth}%
+ {\normalfont\footnotesize\sffamily\color{quicklinkcolor}%
+ \raggedcolumns\sffamily\fontsize{7.5}{8}\fontseries{m}\selectfont
+ \begin{multicols}{2}[QUICK LINKS]
+ \IfFileExists{tmp.links}{\input tmp.links}{}%
+ \end{multicols}%
+ }\hspace*{5mm}%
+ }%
+ }%
+ }%
+}
+\gdef\botstring{\fcolorbox{botrulecolor}{botbgcolor}%
+ {\parbox[t][.5in][t]{\paperwidth}%
+ {\normalfont\sffamily\fontseries{m}\footnotesize\selectfont%
+ \color{botcolor}%
+ \hspace*{5mm}\parbox[c][.5in][c]{.45\paperwidth}%
+ {\raggedright River Valley Technologies,
+ \href{http://www.river-valley.com}{%
+ \texttt{http://www.river-valley.com}}\\
+ \textsc{jwra} 34, Jagathy, Trivandrum
+ 695014, India
+ }\hfill%
+ \parbox[c][.5in][c]{1cm}
+ {\centering\sffamily\fontseries{m}\selectfont
+ \fcolorbox{pgrulecolor}{pgbgcolor}{\thepage}%
+ }\hfill
+ \parbox[c][.5in][c]{.45\paperwidth}
+ {\raggedleft\sffamily\fontsize{7.5}{8}\fontseries{m}\selectfont
+ \begin{tabular}{rl}%
+ Version:&\@version/\@date\\[3pt]
+ Contacts:&\parbox{.3\paperwidth}{\@contact}
+ \end{tabular}\hspace*{5mm}%
+ }%
+ }%
+ }%
+ }
+
+\RequirePackage{enumitem,amsfonts,amssymb}
+
+\setitemize[1]{label={\small\color{itemcolor}$\blacktriangleright$},itemsep=0pt}
+\setitemize[2]{label={\small\color{itemcolor}$\triangleright$},itemsep=0pt}
+\setenumerate[1]{label={\small\color{itemcolor}\arabic*.},itemsep=0pt}
+
+\def\MacroFont{\fontencoding\encodingdefault
+ \fontfamily\ttdefault
+ \fontseries\mddefault
+ \fontshape\updefault
+ \color{verbcolor}\selectfont}%
+
+\def\verbatim@font{\normalfont\color{verbcolor}\fontfamily{zi4}\selectfont}
+
+\def\verb{\relax\ifmmode\hbox\else\leavevmode\null\fi
+ \bgroup
+ \verb@eol@error \let\do\@makeother \dospecials
+ \verbatim@font\@noligs
+ \@ifstar\@sverb\@verb}
+
+
+\def\@lbr{\expandafter\@gobble\string\{}
+\def\@rbr{\expandafter\@gobble\string\}}
+\def\@bsl{\expandafter\@gobble\string\\}
+\def\@Bsl#1{\texttt{\@bsl#1}\xspace}
+\def\trics#1{\protect\@Bsl{#1}}
+\def\onecs#1{\protect\@Bsl{#1}}
+%\let\trics\onecs
+
+\c@GlossaryColumns=1
+\c@IndexColumns=2
+
+\def\index@prologue{\section[Index]{Index}%
+ \markboth{Index}{Index}%
+ Numbers written in italic refer to the page
+ where the corresponding entry is described;
+ numbers underlined refer to the
+ \ifcodeline@index
+ code line of the
+ \fi
+ definition; numbers in roman refer to the
+ \ifcodeline@index
+ code lines
+ \else
+ pages
+ \fi
+ where the entry is used.
+ }
+
+\renewcommand\glossary@prologue{%
+ \section[Change History]{Change History}\markboth {{Change History}}{{Change History}}
+}
+\renewenvironment{theglossary}{%
+ \glossary@prologue%][\GlossaryMin]%
+ \GlossaryParms \let\item\@idxitem \ignorespaces}%
+ {}
+
+\newenvironment{decl}[1][]%
+ {\par\small\addvspace{1.5ex plus 1ex}%
+ \vskip -\parskip
+ \ifx\relax#1\relax
+ \def\@decl@date{}%
+ \else
+ \def\@decl@date{\NEWfeature{#1}}%
+ \fi
+ \noindent%\hspace{-\leftmargini}%
+ \begin{tabular}{l}\hline\ignorespaces}%
+ {\\\hline\end{tabular}\nobreak\@decl@date\par\nobreak
+ \vspace{0.75ex}\vskip -\parskip\ignorespacesafterend\noindent}
+
+\def\Small{\fontsize{8.5}{9.5}\selectfont}
+\def\PDF{\@ifnextchar/{\@PDF}{\@@PDF}}
+\def\@PDF/#1{{\Small PDF/#1}}
+\def\PDFVT{{\Small PDF/VT}\xspace}
+\def\@@PDF{{\Small PDF}\xspace}
+\def\ISO{{\Small ISO}\xspace}
+\def\tsc#1{{\Small#1}\xspace}
+
+\endinput
+
+%%
+%% End of file 'rvdtx.sty'
+%%
diff --git a/macros/latex/contrib/pdfx/src/text89.def b/macros/latex/contrib/pdfx/src/text89.def
new file mode 100644
index 0000000000..30ae90ff7e
--- /dev/null
+++ b/macros/latex/contrib/pdfx/src/text89.def
@@ -0,0 +1,32 @@
+\DeclareInputText{128}{?}
+\DeclareInputText{129}{?}
+\DeclareInputText{130}{?}
+\DeclareInputText{131}{?}
+\DeclareInputText{132}{?}
+\DeclareInputText{133}{?}
+\DeclareInputText{134}{?}
+\DeclareInputText{135}{?}
+\DeclareInputText{136}{?}
+\DeclareInputText{137}{?}
+\DeclareInputText{138}{?}
+\DeclareInputText{139}{?}
+\DeclareInputText{140}{?}
+\DeclareInputText{141}{?}
+\DeclareInputText{142}{?}
+\DeclareInputText{143}{?}
+\DeclareInputText{144}{?}
+\DeclareInputText{145}{?}
+\DeclareInputText{146}{?}
+\DeclareInputText{147}{?}
+\DeclareInputText{148}{?}
+\DeclareInputText{149}{?}
+\DeclareInputText{150}{?}
+\DeclareInputText{151}{?}
+\DeclareInputText{152}{?}
+\DeclareInputText{153}{?}
+\DeclareInputText{154}{?}
+\DeclareInputText{155}{?}
+\DeclareInputText{156}{?}
+\DeclareInputText{157}{?}
+\DeclareInputText{158}{?}
+\DeclareInputText{159}{?}
diff --git a/macros/latex/contrib/pdfx/src/usage-meta.png b/macros/latex/contrib/pdfx/src/usage-meta.png
new file mode 100644
index 0000000000..4fb04ce4f2
--- /dev/null
+++ b/macros/latex/contrib/pdfx/src/usage-meta.png
Binary files differ