summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/xelatex
diff options
context:
space:
mode:
authorJonathan Kew <jfkthame@googlemail.com>2006-09-15 15:31:59 +0000
committerJonathan Kew <jfkthame@googlemail.com>2006-09-15 15:31:59 +0000
commitd8ed1d31bf3ef5cdd91c34bbd0dc4d8d026e8b4b (patch)
treea9907f2ba73ffc51535d5b1fa0bfb0b2b39883ee /Master/texmf-dist/tex/xelatex
parent433cd9a731d3e97c7d2df22a6cebe37aa64054f9 (diff)
added ini files etc for xetex-based formats, moved fontspec and xltxtra packages from xetex to xelatex subdir
git-svn-id: svn://tug.org/texlive/trunk@2132 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex/xelatex')
-rw-r--r--Master/texmf-dist/tex/xelatex/config/crop.cfg17
-rw-r--r--Master/texmf-dist/tex/xelatex/config/geometry.cfg16
-rw-r--r--Master/texmf-dist/tex/xelatex/config/hyperref.cfg14
-rw-r--r--Master/texmf-dist/tex/xelatex/config/xelatex.ini8
-rw-r--r--Master/texmf-dist/tex/xelatex/fontspec/fontspec.cfg25
-rw-r--r--Master/texmf-dist/tex/xelatex/fontspec/fontspec.sty1028
-rw-r--r--Master/texmf-dist/tex/xelatex/graphics/color.cfg43
-rw-r--r--Master/texmf-dist/tex/xelatex/graphics/graphics.cfg68
-rw-r--r--Master/texmf-dist/tex/xelatex/graphics/xetex.def439
-rw-r--r--Master/texmf-dist/tex/xelatex/xltxtra/xltxtra.sty156
10 files changed, 1814 insertions, 0 deletions
diff --git a/Master/texmf-dist/tex/xelatex/config/crop.cfg b/Master/texmf-dist/tex/xelatex/config/crop.cfg
new file mode 100644
index 00000000000..63a658bc53a
--- /dev/null
+++ b/Master/texmf-dist/tex/xelatex/config/crop.cfg
@@ -0,0 +1,17 @@
+% crop.cfg for xetex - JK - 2006-06-07
+% This attempts to persuade crop.sty to work with xetex
+% Public domain
+
+\@ifundefined{XeTeXversion}{}{
+ %% Use the "pdftex" driver (i.e., \pdfpagewidth, \pdfpageheight) with XeTeX
+ \def\CROP@reqdriver{pdftex}
+
+ %% make crop.sty believe this is valid
+ \@ifundefined{pdfoutput}{
+ \newcount\pdfoutput \pdfoutput=1
+ }{}
+}
+
+\endinput
+
+%% End of file `crop.cfg'.
diff --git a/Master/texmf-dist/tex/xelatex/config/geometry.cfg b/Master/texmf-dist/tex/xelatex/config/geometry.cfg
new file mode 100644
index 00000000000..d98cc4b6062
--- /dev/null
+++ b/Master/texmf-dist/tex/xelatex/config/geometry.cfg
@@ -0,0 +1,16 @@
+%% geometry.cfg for XeLaTeX - JK 2006-06-07
+% Public domain
+
+\@ifundefined{XeTeXversion}{}{
+ %% Use the "pdftex" driver (i.e., \pdfpagewidth, \pdfpageheight) with XeTeX
+ \Gm@setdriver{pdftex}
+
+ %% make geometry.sty believe this is valid
+ \@ifundefined{pdfoutput}{
+ \newcount\pdfoutput \pdfoutput=1
+ }{}
+}
+
+\endinput
+
+%% End of file `geometry.cfg'.
diff --git a/Master/texmf-dist/tex/xelatex/config/hyperref.cfg b/Master/texmf-dist/tex/xelatex/config/hyperref.cfg
new file mode 100644
index 00000000000..17c89c29b16
--- /dev/null
+++ b/Master/texmf-dist/tex/xelatex/config/hyperref.cfg
@@ -0,0 +1,14 @@
+% config file for hyperref.sty with xetex
+% Jonathan Kew
+% Public domain
+
+\ProvidesFile{hyperref.cfg}%
+ [2006/06/07 v1.2b hyperref configuration of XeTeX]
+% Change default driver to "hdvipdfm" instead of "hypertex",
+% requires hyperref 2002/06/05 v6.72s
+\providecommand*{\Hy@defaultdriver}{hdvipdfm}%
+
+% force the driver choice for xetex
+\@ifundefined{XeTeXversion}{}{\ExecuteOptions{dvipdfm}}
+
+\endinput
diff --git a/Master/texmf-dist/tex/xelatex/config/xelatex.ini b/Master/texmf-dist/tex/xelatex/config/xelatex.ini
new file mode 100644
index 00000000000..a4d7ecd4622
--- /dev/null
+++ b/Master/texmf-dist/tex/xelatex/config/xelatex.ini
@@ -0,0 +1,8 @@
+% xelatex.ini
+% jonathan kew
+% updated: 18 May 2006
+% Public domain
+\XeTeXuseglyphmetrics=1
+\input unicode-letters
+\input latex.ltx
+\dump
diff --git a/Master/texmf-dist/tex/xelatex/fontspec/fontspec.cfg b/Master/texmf-dist/tex/xelatex/fontspec/fontspec.cfg
new file mode 100644
index 00000000000..1741bba6d7d
--- /dev/null
+++ b/Master/texmf-dist/tex/xelatex/fontspec/fontspec.cfg
@@ -0,0 +1,25 @@
+
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%% FOR BACKWARDS COMPATIBILITY WITH PREVIOUS VERSIONS %%%
+
+\newcommand\newfeaturecode[3]{%
+ \define@key{zf}{#1}[]{\zf@make@feature{#2}{#3}{}}}
+
+\aliasfontfeature{BoldFont}{Bold}
+\aliasfontfeature{ItalicFont}{Italic}
+\aliasfontfeature{BoldItalicFont}{BoldItalic}
+\aliasfontfeature{SmallCapsFont}{SmallCaps}
+\aliasfontfeature{Style}{StyleOptions}
+\aliasfontfeature{Contextuals}{Swashes}
+\aliasfontfeatureoption{Contextuals}{Swash}{Contextual}
+\aliasfontfeatureoption{Letters}{UppercaseSmallCaps}{SMALLCAPS}
+\aliasfontfeatureoption{Letters}{UppercasePetiteCaps}{PETITECAPS}
+
+%%%%%%%%%%%%%%%%%%%%%%%
+%%% FOR CONVENIENCE %%%
+
+\newfontscript{Kana}{kana}
+\newfontscript{Maths}{math}
+\newfontscript{CJK}{hani}
+
diff --git a/Master/texmf-dist/tex/xelatex/fontspec/fontspec.sty b/Master/texmf-dist/tex/xelatex/fontspec/fontspec.sty
new file mode 100644
index 00000000000..86e8e054a71
--- /dev/null
+++ b/Master/texmf-dist/tex/xelatex/fontspec/fontspec.sty
@@ -0,0 +1,1028 @@
+%%
+%% This is file `fontspec.sty',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% fontspec.dtx (with options: `fontspec')
+%%
+%% ________________________________
+%% The fontspec package for XeLaTeX
+%% (C) 2004--2006 Will Robertson
+%%
+%% License information appended.
+%%
+%%
+\ProvidesPackage{fontspec}
+ [2006/06/07 v1.10 Advanced font selection for XeLaTeX]
+
+\unless\ifdefined\XeTeXversion
+ \@latex@error{^^J
+ *************************************************^^J
+ *** Sorry! ^^J
+ *** The fontspec package only works with XeTeX. ^^J
+ *************************************************}
+\fi
+\newif\ifzf@firsttime
+\newif\ifzf@tfm
+\newif\ifzf@atsui
+\newif\ifzf@icu
+\newif\ifzf@mm
+\newif\ifzf@math@euler
+\newif\ifzf@math@lucida
+\newif\ifzf@euler@package@loaded
+\newif\ifzf@package@babel@loaded
+\newcount\c@zf@newff
+\newcount\c@zf@index
+\newcount\c@zf@script
+\newcount\c@zf@language
+\newcommand\zf@PackageError[2]{\PackageError{fontspec}{#1}{#2}}
+\newcommand\zf@PackageWarning[1]{\PackageWarning{fontspec}{#1}}
+\newcommand\zf@PackageInfo[1]{\PackageInfo{fontspec}{#1}}
+\RequirePackage{calc}
+\RequirePackage{xkeyval}[2005/05/07]
+\def\zf@enc{U}
+\renewcommand\encodingdefault{\zf@enc}
+\def\cyrillicencoding{U}%
+\def\latinencoding{U}%
+\g@addto@macro\document{%
+ \def\cyrillicencoding{U}%
+ \def\latinencoding{U}}
+\newcommand*\fontspec[2][]{%
+ \zf@fontspec{#1}{#2}%
+ \fontfamily\zf@family\selectfont
+ \ignorespaces}
+\newcommand*\setromanfont[2][]{%
+ \zf@fontspec{#1}{#2}%
+ \let\rmdefault\zf@family
+ \normalfont}
+\newcommand*\setsansfont[2][]{%
+ \zf@fontspec{#1}{#2}%
+ \let\sfdefault\zf@family
+ \normalfont}
+\newcommand*\setmonofont[2][]{%
+ \zf@fontspec{#1}{#2}%
+ \let\ttdefault\zf@family
+ \normalfont}
+\newcommand*\setmathrm[2][]{%
+ \zf@fontspec{#1}{#2}%
+ \let\zf@rmmaths\zf@family}
+\newcommand*\setboldmathrm[2][]{%
+ \zf@fontspec{#1}{#2}%
+ \let\zf@rmboldmaths\zf@family}
+\newcommand*\setmathsf[2][]{%
+ \zf@fontspec{#1}{#2}%
+ \let\zf@sfmaths\zf@family}
+\newcommand*\setmathtt[2][]{%
+ \zf@fontspec{#1}{#2}%
+ \let\zf@ttmaths\zf@family}
+\@onlypreamble\setmathrm
+\@onlypreamble\setboldmathrm
+\@onlypreamble\setmathsf
+\@onlypreamble\setmathtt
+\def\zf@rmmaths{\rmdefault}
+\def\zf@sfmaths{\sfdefault}
+\def\zf@ttmaths{\ttdefault}
+\newcommand*\newfontinstance[1]{%
+ \@ifnextchar[{\newfontinstance@i#1}{\newfontinstance@i#1[]}}
+\def\newfontinstance@i#1[#2]#3{%
+ \zf@fontspec{#2}{#3}%
+ \edef#1{\noexpand\fontfamily{\zf@family}\noexpand\selectfont}}
+\newcommand*\defaultfontfeatures[1]{\def\zf@default@options{#1,}}
+\let\zf@default@options\@empty
+\newcommand*\addfontfeatures[1]{%
+ \let\zf@default@options@old\zf@default@options
+ \let\zf@default@options\@empty
+ \edef\zf@thisinfo{}%
+ \edef\@tempa{%
+ \noexpand\zf@fontspec
+ {\csname zf@family@options\f@family\endcsname,#1}%
+ {\csname zf@family@fontname\f@family\endcsname}}%
+ \@tempa
+ \fontfamily\zf@family\selectfont
+ \let\zf@default@options\zf@default@options@old
+ \ignorespaces}
+\let\addfontfeature\addfontfeatures
+\newcommand*\newfontfeature[2]{%
+ \stepcounter{zf@newff}%
+ \def@cx{+zf-#1}{+zf-\the\c@zf@newff}%
+ \define@key[zf]{options}{#1}[]{%
+ \zf@update@family{\csname+zf-#1\endcsname}%
+ \zf@update@ff{#2}}}
+\newcommand*\newAATfeature[4]{%
+ \unless\ifcsname zf@options@#1\endcsname
+ \zf@define@font@feature{#1}%
+ \fi
+ \key@ifundefined[zf]{#1}{#2}{}{%
+ \zf@PackageWarning{Option '#2' of font feature '#1' overwritten.}}%
+ \zf@define@feature@option{#1}{#2}{#3}{#4}{}}
+\newcommand*\newICUfeature[3]{%
+ \unless\ifcsname zf@options@#1\endcsname
+ \zf@define@font@feature{#1}%
+ \fi
+ \key@ifundefined[zf]{#1}{#2}{}{%
+ \zf@PackageWarning{Option '#2' of font feature '#1' overwritten.}}%
+ \zf@define@feature@option{#1}{#2}{}{}{#3}}
+\newcommand*\aliasfontfeature[2]{\multi@alias@key{#1}{#2}}
+\newcommand*\aliasfontfeatureoption[3]{\keyval@alias@key[zf@feat]{#1}{#2}{#3}}
+\newcommand*\newfontscript[2]{%
+ \define@key[zf@feat]{Script}{#1}[]{%
+ \zf@check@ot@script{#2}%
+ \if@tempswa
+ \c@zf@script\@tempcnta\relax
+ \xdef\zf@script@name{#1}%
+ \xdef\zf@family@long{\zf@family@long+script=#1}%
+ \xdef\zf@pre@ff{script=#2,\zf@pre@ff}%
+ \else
+ \zf@PackageWarning{Font \fontname\zf@basefont does not contain script '#1'}%
+ \fi}}
+\newcommand*\newfontlanguage[2]{%
+ \define@key[zf@feat]{Lang}{#1}[]{%
+ \zf@check@ot@lang{#2}%
+ \if@tempswa
+ \c@zf@language\@tempcnta\relax
+ \xdef\zf@language@name{#1}%
+ \xdef\zf@family@long{\zf@family@long+lang=#1}%
+ \xdef\zf@pre@ff{\zf@pre@ff language=#2,}%
+ \else
+ \zf@PackageWarning{Font \fontname\zf@basefont does not contain
+ language '#1' for script '\zf@script@name'}%
+ \fi}}
+\providecommand\def@cx[2]{\expandafter\edef\csname#1\endcsname{#2}}
+\providecommand\gdef@cx[2]{\expandafter\xdef\csname#1\endcsname{#2}}
+\providecommand\let@cc[2]{\expandafter\let\csname#1\expandafter\endcsname\csname#2\endcsname}
+\newcommand*\zf@fontspec[2]{%
+ \begingroup
+ \zf@init
+ \edef\zf@fontname{#2}%
+ \let\zf@family@long\zf@fontname
+ \setkeys*[zf]{preparse}{#1}%
+ \edef\zf@font@feat{\zf@font@feat\XKV@rm}%
+ \unless\ifdefined\zf@basefont
+ \font\zf@basefont="\zf@fontname\zf@suffix" at \f@size pt
+ \fi
+ \zf@set@font@type
+ \zf@firsttimetrue
+ \zf@get@feature@requests{\zf@font@feat}%
+ \zf@firsttimefalse
+ \unless\ifcsname zf@UID@\zf@family@long\endcsname
+ \ifcsname c@zf@famc@#2\endcsname
+ \expandafter\stepcounter\else
+ \expandafter\newcounter\fi
+ {zf@famc@#2}%
+ \def@cx{zf@UID@\zf@family@long}{%
+ \zap@space#2 \@empty
+ (\expandafter\the\csname c@zf@famc@#2\endcsname)}%
+ \fi
+ \xdef\zf@family{\@nameuse{zf@UID@\zf@family@long}}%
+ \unless\ifcsname zf@family@fontname\zf@family\endcsname
+ \zf@PackageInfo{Defining font family for "#2"
+ with options [\zf@default@options #1]}%
+ \gdef@cx{zf@family@fontname\zf@family}{\zf@fontname}%
+ \gdef@cx{zf@family@options\zf@family}{\zf@default@options #1}%
+ \gdef@cx{zf@family@fontdef\zf@family}{\zf@fontname\zf@suffix:\zf@pre@ff\zf@ff}%
+ \DeclareFontFamily{\zf@enc}{\zf@family}{}%
+ \zf@make@font@shapes{\zf@fontname}{\mddefault}{\updefault}{\zf@font@feat\zf@up@feat}%
+ \ifx\zf@bf\@empty
+ \zf@make@font@shapes[\zf@fontname]{/B}{\bfdefault}{\updefault}{\zf@font@feat\zf@bf@feat}%
+ \else
+ \zf@make@font@shapes{\zf@bf}{\bfdefault}{\updefault}{\zf@font@feat\zf@bf@feat}%
+ \fi
+ \ifx\zf@it\@empty
+ \zf@make@font@shapes[\zf@fontname]{/I}{\mddefault}{\itdefault}{\zf@font@feat\zf@it@feat}%
+ \else
+ \zf@make@font@shapes{\zf@it}{\mddefault}{\itdefault}{\zf@font@feat\zf@it@feat}%
+ \fi
+ \ifx\zf@bfit\@empty
+ \ifx\zf@bf\@empty
+ \ifx\zf@it\@empty
+ \zf@make@font@shapes[\zf@fontname]{/BI}{\bfdefault}{\itdefault}{\zf@font@feat\zf@bfit@feat}%
+ \else
+ \zf@make@font@shapes[\zf@it]{/B}{\bfdefault}{\itdefault}{\zf@font@feat\zf@bfit@feat}%
+ \fi
+ \else
+ \zf@make@font@shapes[\zf@bf]{/I}{\bfdefault}{\itdefault}{\zf@font@feat\zf@bfit@feat}%
+ \fi
+ \else
+ \zf@make@font@shapes{\zf@bfit}{\bfdefault}{\itdefault}{\zf@font@feat\zf@bfit@feat}%
+ \fi
+ \fi
+ \endgroup
+ }
+\newcommand*\zf@set@font@type{%
+ \zf@tfmfalse \zf@atsuifalse \zf@icufalse \zf@mmfalse
+ \ifcase\XeTeXfonttype\zf@basefont
+ \zf@tfm
+ \or
+ \zf@atsuitrue
+ \ifnum\XeTeXcountvariations\zf@basefont > 0
+ \zf@mmtrue
+ \fi
+ \or
+ \zf@icutrue
+ \fi}
+\newcommand*\zf@make@font@shapes[5][]{%
+ \bgroup
+ \edef\@tempa{#1}%
+ \ifx\@tempa\@empty\else
+ \font\@tempfonta="#1\zf@suffix" at \f@size pt
+ \edef\@tempa{\fontname\@tempfonta}%
+ \fi
+ \font\@tempfontb="#1#2\zf@suffix" at \f@size pt
+ \edef\@tempb{\fontname\@tempfontb}%
+ \ifx\@tempa\@tempb
+ \zf@PackageInfo{Could not resolve font #1#2 (it might not exist)}%
+ \else
+ \edef\zf@fontname{#1#2}%
+ \let\zf@basefont\@tempfontb
+ \zf@DeclareFontShape{#3}{#4}{#5}%
+ \ifx\zf@sc\@empty
+ \zf@make@smallcaps
+ \ifx\zf@smallcaps\@empty\else
+ \zf@DeclareFontShape[\zf@smallcaps]{#3}
+ {\ifx#4\itdefault\sidefault\else\scdefault\fi}{#5\zf@sc@feat}%
+ \fi
+ \else
+ \edef\zf@fontname{\zf@sc}%
+ \zf@DeclareFontShape{#3}
+ {\ifx#4\itdefault\sidefault\else\scdefault\fi}{#5\zf@sc@feat}%
+ \fi
+ \fi
+ \egroup}
+\newcommand\zf@DeclareFontShape[4][]{%
+ \zf@get@feature@requests{#4}%
+ \def\@tempb{"\zf@fontname\zf@suffix:\zf@pre@ff\zf@ff#1"}%
+ \zf@PackageInfo{\string\font\space is \@tempb}%
+ \edef\@tempa{\noexpand
+ \DeclareFontShape{\zf@enc}{\zf@family}{#2}{#3}
+ {<->\zf@scale\@tempb}{\zf@adjust}}%
+ \@tempa
+ \edef\@tempa{#3}\edef\@tempb{\itdefault}%
+ \ifx\@tempa\@tempb
+ \edef\@tempa{\noexpand
+ \DeclareFontShape{\zf@enc}{\zf@family}{#2}{\sldefault}
+ {<->sub*\zf@family/#2/\itdefault}{\zf@adjust}}%
+ \@tempa
+ \fi}
+\newcommand*{\zf@update@family}[1]{%
+ \ifzf@firsttime
+ \xdef\zf@family@long{\zf@family@long#1}%
+ \fi}
+\newcommand*\zf@get@feature@requests[1]{%
+ \let\zf@ff \@empty
+ \let\zf@scale \@empty
+ \let\zf@adjust \@empty
+ \edef\@tempa{\noexpand\setkeys[zf]{options}{\zf@default@options#1}}%
+ \@tempa}
+\newcommand*\zf@init{%
+ \let\zf@pre@ff \@empty
+ \let\zf@font@feat \@empty
+ \let\zf@suffix \@empty
+ \let\zf@bf \@empty
+ \let\zf@it \@empty
+ \let\zf@bfit \@empty
+ \let\zf@sc \@empty
+ \let\zf@up@feat \@empty
+ \let\zf@bf@feat \@empty
+ \let\zf@it@feat \@empty
+ \let\zf@bfit@feat \@empty
+ \let\zf@sc@feat \@empty
+ \c@zf@script 1818326126\relax
+ \def\zf@script@name{Latin}%
+ \c@zf@language 0\relax
+ \def\zf@language@name{Default}%
+}
+\newcommand*\zf@make@smallcaps{%
+ \let\zf@smallcaps\@empty
+ \ifzf@atsui
+ \zf@make@aat@feature@string{3}{3}%
+ \unless\ifx\zf@thisfontfeature\@empty
+ \edef\zf@smallcaps{\zf@thisfontfeature;}%
+ \fi
+ \fi
+ \ifzf@icu
+ \zf@check@ot@feat{+smcp}%
+ \if@tempswa
+ \edef\zf@smallcaps{+smcp,}%
+ \fi
+ \fi}
+\newcommand*\zf@update@ff[1]{%
+ \unless\ifzf@firsttime
+ \xdef\zf@ff{\zf@ff #1\ifzf@icu,\else;\fi}%
+ \fi}
+\newcommand*\zf@make@feature[3]{%
+ \ifzf@atsui
+ \zf@make@aat@feature@string{#1}{#2}%
+ \ifx\zf@thisfontfeature\@empty
+ \zf@PackageWarning{%
+ AAT feature '\XKV@tfam=\XKV@tkey'
+ (#1,#2) not available in font \fontname\zf@basefont}%
+ \else
+ \zf@update@family{+#1,#2}%
+ \zf@update@ff\zf@thisfontfeature
+ \fi
+ \fi
+ \ifzf@icu
+ \zf@check@ot@feat{#3}%
+ \if@tempswa
+ \zf@update@family{#3}%
+ \zf@update@ff{#3}%
+ \else
+ \zf@PackageWarning{%
+ OpenType feature '\XKV@tfam=\XKV@tkey' (#3)
+ not available in font \fontname\zf@basefont, script
+ '\zf@script@name', language '\zf@language@name'}%
+ \fi
+ \fi}
+\newcommand*\zf@define@font@feature[1]{%
+ \define@key[zf]{options}{#1}{{\setkeys[zf@feat]{#1}{##1}}}}
+\newcommand*\zf@define@feature@option[5]{%
+ \define@key[zf@feat]{#1}{#2}[]{\zf@make@feature{#3}{#4}{#5}}}
+\newcommand*\keyval@alias@key[4][KV]{%
+ \let@cc{#1@#2@#4}{#1@#2@#3}%
+ \let@cc{#1@#2@#4@default}{#1@#2@#3@default}}
+\newcommand*\multi@alias@key[2]{
+ \key@ifundefined[zf]{preparse}{#1}
+ {\key@ifundefined[zf]{options}{#1}
+ {\zf@PackageError{The feature #1 doesn't appear to be defined}
+ {It looks like you're trying to rename a feature that doesn't exist.}}
+ {\keyval@alias@key[zf]{options}{#1}{#2}}}
+ {\keyval@alias@key[zf]{preparse}{#1}{#2}}}
+\newcommand*\zf@make@aat@feature@string[2]{%
+ \edef\zf@this@featurename{\XeTeXfeaturename\zf@basefont #1}%
+ \ifx\zf@this@featurename\@empty
+ \let\zf@thisfontfeature\@empty
+ \else
+ \edef\zf@this@selectionname{\XeTeXselectorname\zf@basefont #1 #2}%
+ \ifx\zf@this@selectionname\@empty
+ \let\zf@thisfontfeature\@empty
+ \else
+ \edef\zf@thisfontfeature{%
+ \ifnum\XeTeXisexclusivefeature\zf@basefont #1 > 0
+ \zf@this@featurename=\zf@this@selectionname
+ \else
+ \ifodd #2
+ \zf@this@featurename=!\zf@this@selectionname
+ \else
+ \zf@this@featurename=\zf@this@selectionname
+ \fi
+ \fi}%
+ \fi
+ \fi}
+\newcommand\zf@iv@strnum[1]{%
+ \zf@iv@strnum@i#1 \@nil}
+\def\zf@iv@strnum@i#1 \@nil{%
+ \zf@iv@strnum@ii#1\@empty\@empty\@nil}
+\def\zf@iv@strnum@ii#1#2#3#4#5\@nil{%
+ \@tempcnta\z@
+ \@tempcntb`#1\relax
+ \multiply\@tempcntb"1000000\advance\@tempcnta\@tempcntb
+ \@tempcntb`#2
+ \multiply\@tempcntb"10000\advance\@tempcnta\@tempcntb
+ \expandafter\@tempcntb\ifx\@empty#332\else`#3\fi
+ \multiply\@tempcntb"100\advance\@tempcnta\@tempcntb
+ \expandafter\@tempcntb\ifx\@empty#432\else`#4\fi
+ \advance\@tempcnta\@tempcntb}
+\newcommand\zf@v@strnum[1]{%
+ \expandafter\zf@iv@strnum@i\@gobble#1 \@nil}
+\newcommand\zf@check@ot@script[1]{%
+ \zf@iv@strnum{#1}%
+ \@tempcntb\XeTeXOTcountscripts\zf@basefont
+ \c@zf@index\z@ \@tempswafalse
+ \loop\ifnum\c@zf@index<\@tempcntb
+ \ifnum\XeTeXOTscripttag\zf@basefont\c@zf@index=\@tempcnta
+ \@tempswatrue
+ \c@zf@index\@tempcntb
+ \else
+ \advance\c@zf@index\@ne
+ \fi
+ \repeat}
+\newcommand\zf@check@ot@lang[1]{%
+ \zf@iv@strnum{#1}%
+ \@tempcntb\XeTeXOTcountlanguages\zf@basefont\c@zf@script
+ \c@zf@index\z@ \@tempswafalse
+ \loop\ifnum\c@zf@index<\@tempcntb
+ \ifnum\XeTeXOTlanguagetag\zf@basefont\c@zf@script\c@zf@index=\@tempcnta
+ \@tempswatrue
+ \c@zf@index\@tempcntb
+ \else
+ \advance\c@zf@index\@ne
+ \fi
+ \repeat}
+\newcommand*\zf@check@ot@feat[1]{%
+ \@tempcntb\XeTeXOTcountfeatures\zf@basefont\c@zf@script\c@zf@language
+ \zf@v@strnum{#1}%
+ \c@zf@index\z@ \@tempswafalse
+ \loop\ifnum\c@zf@index<\@tempcntb
+ \ifnum\XeTeXOTfeaturetag\zf@basefont\c@zf@script\c@zf@language\c@zf@index=\@tempcnta
+ \@tempswatrue
+ \c@zf@index\@tempcntb
+ \else
+ \advance\c@zf@index\@ne
+ \fi
+ \repeat}
+\define@key[zf]{preparse}{BoldFont}{%
+ \zf@partial@fontname#1\@nil
+ \let\zf@bf\@tempa
+ \edef\zf@family@long{\zf@family@long bf:#1}}
+\define@key[zf]{preparse}{ItalicFont}{%
+ \zf@partial@fontname#1\@nil
+ \let\zf@it\@tempa
+ \edef\zf@family@long{\zf@family@long it:#1}}
+\define@key[zf]{preparse}{BoldItalicFont}{%
+ \zf@partial@fontname#1\@nil
+ \let\zf@bfit\@tempa
+ \edef\zf@family@long{\zf@family@long bfit:#1}}
+\define@key[zf]{options}{SmallCapsFont}{%
+ \zf@partial@fontname#1\@nil
+ \let\zf@sc\@tempa
+ \zf@update@family{sc:\zap@space #1 \@empty}}
+\def\zf@partial@fontname#1#2\@nil{%
+ \if#1*\relax
+ \edef\@tempa{\zf@fontname#2}%
+ \else
+ \edef\@tempa{#1#2}%
+ \fi}
+\define@key[zf]{preparse}{UprightFeatures}{%
+ \def\zf@up@feat{,#1}%
+ \edef\zf@family@long{\zf@family@long rmfeat:#1}}
+\define@key[zf]{preparse}{BoldFeatures}{%
+ \def\zf@bf@feat{,#1}%
+ \edef\zf@family@long{\zf@family@long bffeat:#1}}
+\define@key[zf]{preparse}{ItalicFeatures}{%
+ \def\zf@it@feat{,#1}%
+ \edef\zf@family@long{\zf@family@long itfeat:#1}}
+\define@key[zf]{preparse}{BoldItalicFeatures}{%
+ \def\zf@bfit@feat{,#1}%
+ \edef\zf@family@long{\zf@family@long bfitfeat:#1}}
+\define@key[zf]{options}{SmallCapsFeatures}{%
+ \unless\ifzf@firsttime\def\zf@sc@feat{,#1}\fi
+ \zf@update@family{scfeat:\zap@space #1 \@empty}}
+\define@choicekey[zf]{preparse}{Renderer}{AAT,ICU}{%
+ \edef\zf@suffix{\zf@suffix/#1}%
+ \font\zf@basefont="\zf@fontname\zf@suffix" at \f@size pt
+ \edef\zf@family@long{\zf@family@long +rend:#1}}
+\define@key[zf]{preparse}{Script}{%
+ \edef\zf@suffix{\zf@suffix/ICU}%
+ \font\zf@basefont="\zf@fontname\zf@suffix" at \f@size pt
+ \edef\zf@family@long{\zf@family@long +script:#1}
+ {\setkeys[zf@feat]{Script}{#1}}}
+\define@key[zf]{preparse}{Language}{%
+ \edef\zf@suffix{\zf@suffix/ICU}%
+ \font\zf@basefont="\zf@fontname\zf@suffix" at \f@size pt
+ \edef\zf@family@long{\zf@family@long +language:#1}
+ {\setkeys[zf@feat]{Lang}{#1}}}
+\define@key[zf]{options}{Scale}{%
+ \edef\@tempa{#1}%
+ \edef\@tempb{MatchLowercase}%
+ \ifx\@tempa\@tempb
+ \zf@calc@scale{5}%
+ \else
+ \edef\@tempb{MatchUppercase}%
+ \ifx\@tempa\@tempb
+ \zf@calc@scale{8}%
+ \else
+ \edef\zf@scale{#1}%
+ \fi
+ \fi
+ \zf@update@family{+scale:\zf@scale}%
+ \edef\zf@scale{s*[\zf@scale]}}
+\newcommand\zf@calc@scale[1]{%
+ \begingroup
+ \rmfamily
+ \setlength\@tempdima{\fontdimen#1\font}%
+ \setlength\@tempdimb{\fontdimen#1\zf@basefont}%
+ \setlength\@tempdimc{1pt*\ratio{\@tempdima}{\@tempdimb}}%
+ \xdef\zf@scale{\strip@pt\@tempdimc}
+ \zf@PackageInfo{\zf@fontname\space scale = \zf@scale}%
+ \endgroup}
+\define@key[zf]{options}{WordSpace}{%
+ \zf@update@family{+wordspace:#1}%
+ \unless\ifzf@firsttime
+ \zf@wordspace@parse#1,\zf@@ii,\zf@@iii,\zf@@
+ \fi}
+\def\zf@wordspace@parse#1,#2,#3,#4\zf@@{%
+ \def\@tempa{#4}%
+ \ifx\@tempa\@empty
+ \g@addto@macro\zf@adjust{%
+ \fontdimen2\font#1\fontdimen2\font
+ \fontdimen3\font#1\fontdimen3\font
+ \fontdimen4\font#1\fontdimen4\font}%
+ \else
+ \g@addto@macro\zf@adjust{%
+ \fontdimen2\font#1\fontdimen2\font
+ \fontdimen3\font#2\fontdimen3\font
+ \fontdimen4\font#3\fontdimen4\font}%
+ \fi}
+\define@key[zf]{options}{PunctuationSpace}{%
+ \zf@update@family{+punctspace:#1}%
+ \g@addto@macro\zf@adjust{%
+ \fontdimen7\font#1\fontdimen7\font}}
+\define@key[zf]{options}{LetterSpace}{%
+ \zf@update@family{+tracking:#1}%
+ \zf@update@ff{letterspace=#1}}
+\define@key[zf]{options}{HyphenChar}{%
+ \zf@update@family{+hyphenchar:#1}%
+ \edef\@tempa{#1}%
+ \edef\@tempb{None}%
+ \ifx\@tempa\@tempb
+ \g@addto@macro\zf@adjust{\hyphenchar\font-1\relax}%
+ \else
+ \zf@check@one@char#1\zf@@
+ \ifx\@tempb\@empty
+ \g@addto@macro\zf@adjust{%
+ {\expandafter\hyphenchar\expandafter
+ \font\expandafter`#1}}%
+ \else
+ \g@addto@macro\zf@adjust{\hyphenchar\font#1\relax}
+ \fi
+ \fi}
+\def\zf@check@one@char#1#2\zf@@{\def\@tempb{#2}}
+\define@key[zf]{options}{Colour}{%
+ \zf@update@family{+col:#1}%
+ \zf@update@ff{color=#1}}
+\keyval@alias@key[zf]{options}{Colour}{Color}
+\define@key[zf]{options}{Mapping}{%
+ \zf@update@family{+map:#1}%
+ \zf@update@ff{mapping=#1}}
+\define@key[zf]{options}{Weight}{%
+ \zf@update@family{+weight:#1}%
+ \zf@update@ff{weight=#1}}
+\define@key[zf]{options}{Width}{%
+ \zf@update@family{+width:#1}%
+ \zf@update@ff{width=#1}}
+\define@key[zf]{options}{OpticalSize}{%
+ \ifzf@icu
+ \edef\zf@suffix{\zf@suffix/S=#1}%
+ \zf@update@family{+size:#1}
+ \fi
+ \ifzf@mm
+ \zf@update@family{+size:#1}%
+ \zf@update@ff{optical size=#1}
+ \fi
+ \ifzf@icu\else
+ \ifzf@mm\else
+ \ifzf@firsttime
+ \zf@PackageWarning
+ {\fontname\zf@basefont\space doesn't appear to have an Optical Size axis}
+ \fi
+ \fi
+ \fi}
+\zf@define@font@feature{Ligatures}
+\zf@define@feature@option{Ligatures}{Required} {1}{0}{+rlig}
+\zf@define@feature@option{Ligatures}{NoRequired} {1}{1}{-rlig}
+\zf@define@feature@option{Ligatures}{Common} {1}{2}{+liga}
+\zf@define@feature@option{Ligatures}{NoCommon} {1}{3}{-liga}
+\zf@define@feature@option{Ligatures}{Rare} {1}{4}{+dlig}
+\zf@define@feature@option{Ligatures}{NoRare} {1}{5}{-dlig}
+\zf@define@feature@option{Ligatures}{Discretionary} {1}{4}{+dlig}
+\zf@define@feature@option{Ligatures}{NoDiscretionary}{1}{5}{-dlig}
+\zf@define@feature@option{Ligatures}{Contextual} {}{} {+clig}
+\zf@define@feature@option{Ligatures}{NoContextual} {}{} {-clig}
+\zf@define@feature@option{Ligatures}{Historical} {}{} {+hlig}
+\zf@define@feature@option{Ligatures}{NoHistorical} {}{} {-hlig}
+\zf@define@feature@option{Ligatures}{Logos} {1}{6} {}
+\zf@define@feature@option{Ligatures}{NoLogos} {1}{7} {}
+\zf@define@feature@option{Ligatures}{Rebus} {1}{8} {}
+\zf@define@feature@option{Ligatures}{NoRebus} {1}{9} {}
+\zf@define@feature@option{Ligatures}{Diphthong} {1}{10}{}
+\zf@define@feature@option{Ligatures}{NoDiphthong} {1}{11}{}
+\zf@define@feature@option{Ligatures}{Squared} {1}{12}{}
+\zf@define@feature@option{Ligatures}{NoSquared} {1}{13}{}
+\zf@define@feature@option{Ligatures}{AbbrevSquared} {1}{14}{}
+\zf@define@feature@option{Ligatures}{NoAbbrevSquared}{1}{15}{}
+\zf@define@feature@option{Ligatures}{Icelandic} {1}{32}{}
+\zf@define@feature@option{Ligatures}{NoIcelandic} {1}{33}{}
+\zf@define@font@feature{Letters}
+\zf@define@feature@option{Letters}{Normal}{3}{0}{}
+\zf@define@feature@option{Letters}{Uppercase}{3}{1}{+case}
+\zf@define@feature@option{Letters}{Lowercase}{3}{2}{}
+\zf@define@feature@option{Letters}{SmallCaps}{3}{3}{+smcp}
+\zf@define@feature@option{Letters}{PetiteCaps}{}{}{+pcap}
+\zf@define@feature@option{Letters}{UppercaseSmallCaps}{}{}{+c2sc}
+\zf@define@feature@option{Letters}{UppercasePetiteCaps}{}{}{+c2pc}
+\zf@define@feature@option{Letters}{InitialCaps}{3}{4}{}
+\zf@define@feature@option{Letters}{Unicase}{}{}{+unic}
+\zf@define@font@feature{Numbers}
+\zf@define@feature@option{Numbers}{Monospaced}{6}{0}{+tnum}
+\zf@define@feature@option{Numbers}{Proportional}{6}{1}{+pnum}
+\zf@define@feature@option{Numbers}{Lowercase}{21}{0}{+onum}
+\zf@define@feature@option{Numbers}{OldStyle}{21}{0}{+onum}
+\zf@define@feature@option{Numbers}{Uppercase}{21}{1}{+lnum}
+\zf@define@feature@option{Numbers}{Lining}{21}{1}{+lnum}
+\zf@define@feature@option{Numbers}{SlashedZero}{14}{5}{+zero}
+\zf@define@feature@option{Numbers}{NoSlashedZero}{14}{4}{-zero}
+\zf@define@font@feature{Contextuals}
+\zf@define@feature@option{Contextuals}{Swash}{}{}{+cswh}
+\zf@define@feature@option{Contextuals}{NoSwash}{}{}{-cswh}
+\zf@define@feature@option{Contextuals}{WordInitial}{8}{0}{+init}
+\zf@define@feature@option{Contextuals}{NoWordInitial}{8}{1}{-init}
+\zf@define@feature@option{Contextuals}{WordFinal}{8}{2}{+fina}
+\zf@define@feature@option{Contextuals}{NoWordFinal}{8}{3}{-fina}
+\zf@define@feature@option{Contextuals}{LineInitial}{8}{4}{}
+\zf@define@feature@option{Contextuals}{NoLineInitial}{8}{5}{}
+\zf@define@feature@option{Contextuals}{LineFinal}{8}{6}{+falt}
+\zf@define@feature@option{Contextuals}{NoLineFinal}{8}{7}{-falt}
+\zf@define@feature@option{Contextuals}{Inner}{8}{8}{+medi}
+\zf@define@feature@option{Contextuals}{NoInner}{8}{9}{-medi}
+\zf@define@font@feature{Diacritics}
+\zf@define@feature@option{Diacritics}{Show}{9}{0}{}
+\zf@define@feature@option{Diacritics}{Hide}{9}{1}{}
+\zf@define@feature@option{Diacritics}{Decompose}{9}{2}{}
+\zf@define@font@feature{Kerning}
+\zf@define@feature@option{Kerning}{Uppercase}{}{}{+cpsp}
+\zf@define@feature@option{Kerning}{On}{}{}{+kern}
+\zf@define@feature@option{Kerning}{Off}{}{}{-kern}
+\zf@define@font@feature{VerticalPosition}
+\zf@define@feature@option{VerticalPosition}{Normal}{10}{0}{}
+\zf@define@feature@option{VerticalPosition}{Superior}{10}{1}{+sups}
+\zf@define@feature@option{VerticalPosition}{Inferior}{10}{2}{+subs}
+\zf@define@feature@option{VerticalPosition}{ScientificInferior}{}{}{+sinf}
+\zf@define@feature@option{VerticalPosition}{Ordinal}{10}{3}{+ordn}
+\zf@define@feature@option{VerticalPosition}{Numerator}{}{}{+numr}
+\zf@define@feature@option{VerticalPosition}{Denominator}{}{}{+dnom}
+\zf@define@font@feature{Fractions}
+\zf@define@feature@option{Fractions}{On}{11}{1}{+frac}
+\zf@define@feature@option{Fractions}{Off}{11}{0}{-frac}
+\zf@define@feature@option{Fractions}{Diagonal}{11}{2}{}
+\zf@define@feature@option{Fractions}{Alternate}{}{}{+afrc}
+\define@key[zf]{options}{Alternate}{%
+ \setkeys*[zf@feat]{Alternate}{#1}%
+ \unless\ifx\XKV@rm\@empty
+ \zf@make@feature{17}{#1}{}%
+ \fi}
+\define@key[zf]{options}{Variant}{%
+ \setkeys*[zf@feat]{Variant}{#1}%
+ \unless\ifx\XKV@rm\@empty
+ \zf@make@feature{18}{#1}{+ss\two@digits{#1}}%
+ \fi}
+\zf@define@font@feature{Style}
+\zf@define@feature@option{Style}{Alternate}{}{}{+salt}
+\zf@define@feature@option{Style}{Italic}{32}{2}{+ital}
+\zf@define@feature@option{Style}{Ruby}{28}{2}{+ruby}
+\zf@define@feature@option{Style}{Swash}{}{}{+swsh}
+\zf@define@feature@option{Style}{Historic}{}{}{+hist}
+\zf@define@feature@option{Style}{Display}{19}{1}{}
+\zf@define@feature@option{Style}{Engraved}{19}{2}{}
+\zf@define@feature@option{Style}{TitlingCaps}{19}{4}{+titl}
+\zf@define@feature@option{Style}{TallCaps}{19}{5}{}
+\zf@define@feature@option{Style}{HorizontalKana}{}{}{+hkna}
+\zf@define@feature@option{Style}{VerticalKana}{}{}{+vkna}
+\zf@define@font@feature{CJKShape}
+\zf@define@feature@option{CJKShape}{Traditional}{20}{0}{+trad}
+\zf@define@feature@option{CJKShape}{Simplified}{20}{1}{+smpl}
+\zf@define@feature@option{CJKShape}{JIS1978}{20}{2}{+jp78}
+\zf@define@feature@option{CJKShape}{JIS1983}{20}{3}{+jp83}
+\zf@define@feature@option{CJKShape}{JIS1990}{20}{4}{+jp90}
+\zf@define@feature@option{CJKShape}{Expert}{20}{10}{+expt}
+\zf@define@feature@option{CJKShape}{NLC}{20}{13}{+nlck}
+\zf@define@font@feature{CharacterWidth}
+\zf@define@feature@option{CharacterWidth}{Proportional}{22}{0}{+pwid}
+\zf@define@feature@option{CharacterWidth}{Full}{22}{1}{+fwid}
+\zf@define@feature@option{CharacterWidth}{Half}{22}{2}{+hwid}
+\zf@define@feature@option{CharacterWidth}{Third}{22}{3}{+twid}
+\zf@define@feature@option{CharacterWidth}{Quarter}{22}{4}{+qwid}
+\zf@define@feature@option{CharacterWidth}{AlternateProportional}{22}{5}{+palt}
+\zf@define@feature@option{CharacterWidth}{AlternateHalf}{22}{6}{+halt}
+\zf@define@feature@option{CharacterWidth}{Default}{22}{7}{}
+\zf@define@font@feature{Annotation}
+\zf@define@feature@option{Annotation}{Off}{24}{0}{-nalt}
+\zf@define@feature@option{Annotation}{On}{}{}{+nalt}
+\zf@define@feature@option{Annotation}{Box}{24}{1}{}
+\zf@define@feature@option{Annotation}{RoundedBox}{24}{2}{}
+\zf@define@feature@option{Annotation}{Circle}{24}{3}{}
+\zf@define@feature@option{Annotation}{BlackCircle}{24}{4}{}
+\zf@define@feature@option{Annotation}{Parenthesis}{24}{5}{}
+\zf@define@feature@option{Annotation}{Period}{24}{6}{}
+\zf@define@feature@option{Annotation}{RomanNumerals}{24}{7}{}
+\zf@define@feature@option{Annotation}{Diamond}{24}{8}{}
+\zf@define@feature@option{Annotation}{BlackSquare}{24}{9}{}
+\zf@define@feature@option{Annotation}{BlackRoundSquare}{24}{10}{}
+\zf@define@feature@option{Annotation}{DoubleCircle}{24}{11}{}
+\zf@define@font@feature{Vertical}
+\define@key[zf@feat]{Vertical}{RotatedGlyphs}[]{%
+ \ifzf@icu
+ \zf@make@feature{}{}{+vrt2}%
+ \else
+ \zf@update@family{+vert}%
+ \zf@update@ff{vertical}%
+ \fi}
+\newfontscript{Arabic}{arab} \newfontscript{Armenian}{armn}
+\newfontscript{Balinese}{bali} \newfontscript{Bengali}{beng}
+\newfontscript{Bopomofo}{bopo} \newfontscript{Braille}{brai}
+\newfontscript{Buginese}{bugi} \newfontscript{Buhid}{buhd}
+\newfontscript{Byzantine Music}{byzm} \newfontscript{Canadian Syllabics}{cans}
+\newfontscript{Cherokee}{cher}
+\newfontscript{CJK Ideographic}{hani} \newfontscript{Coptic}{copt}
+\newfontscript{Cypriot Syllabary}{cprt} \newfontscript{Cyrillic}{cyrl}
+\newfontscript{Default}{DFLT} \newfontscript{Deseret}{dsrt}
+\newfontscript{Devanagari}{deva} \newfontscript{Ethiopic}{ethi}
+\newfontscript{Georgian}{geor} \newfontscript{Glagolitic}{glag}
+\newfontscript{Gothic}{goth} \newfontscript{Greek}{grek}
+\newfontscript{Gujarati}{gujr} \newfontscript{Gurmukhi}{guru}
+\newfontscript{Hangul Jamo}{jamo} \newfontscript{Hangul}{hang}
+\newfontscript{Hanunoo}{hano} \newfontscript{Hebrew}{hebr}
+\newfontscript{Hiragana and Katakana}{kana}
+\newfontscript{Javanese}{java} \newfontscript{Kannada}{knda}
+\newfontscript{Kharosthi}{khar} \newfontscript{Khmer}{khmr}
+\newfontscript{Lao}{lao } \newfontscript{Latin}{latn}
+\newfontscript{Limbu}{limb} \newfontscript{Linear B}{linb}
+\newfontscript{Malayalam}{mlym} \newfontscript{Math}{math}
+\newfontscript{Mongolian}{mong}
+\newfontscript{Musical Symbols}{musc} \newfontscript{Myanmar}{mymr}
+\newfontscript{N'ko}{nko } \newfontscript{Ogham}{ogam}
+\newfontscript{Old Italic}{ital} \newfontscript{Old Persian Cuneiform}{xpeo}
+\newfontscript{Oriya}{orya} \newfontscript{Osmanya}{osma}
+\newfontscript{Phags-pa}{phag} \newfontscript{Phoenician}{phnx}
+\newfontscript{Runic}{runr} \newfontscript{Shavian}{shaw}
+\newfontscript{Sinhala}{sinh} \newfontscript{Sumero-Akkadian Cuneiform}{xsux}
+\newfontscript{Syloti Nagri}{sylo} \newfontscript{Syriac}{syrc}
+\newfontscript{Tagalog}{tglg} \newfontscript{Tagbanwa}{tagb}
+\newfontscript{Tai Le}{tale} \newfontscript{Tai Lu}{talu}
+\newfontscript{Tamil}{taml} \newfontscript{Telugu}{telu}
+\newfontscript{Thaana}{thaa} \newfontscript{Thai}{thai}
+\newfontscript{Tibetan}{tibt} \newfontscript{Tifinagh}{tfng}
+\newfontscript{Ugaritic Cuneiform}{ugar}\newfontscript{Yi}{yi }
+\newfontlanguage{Abaza}{ABA}\newfontlanguage{Abkhazian}{ABK}\newfontlanguage{Adyghe}{ADY}
+\newfontlanguage{Afrikaans}{AFK}\newfontlanguage{Afar}{AFR}\newfontlanguage{Agaw}{AGW}
+\newfontlanguage{Altai}{ALT}\newfontlanguage{Amharic}{AMH}\newfontlanguage{Arabic}{ARA}
+\newfontlanguage{Aari}{ARI}\newfontlanguage{Arakanese}{ARK}\newfontlanguage{Assamese}{ASM}
+\newfontlanguage{Athapaskan}{ATH}\newfontlanguage{Avar}{AVR}\newfontlanguage{Awadhi}{AWA}
+\newfontlanguage{Aymara}{AYM}\newfontlanguage{Azeri}{AZE}\newfontlanguage{Badaga}{BAD}
+\newfontlanguage{Baghelkhandi}{BAG}\newfontlanguage{Balkar}{BAL}\newfontlanguage{Baule}{BAU}
+\newfontlanguage{Berber}{BBR}\newfontlanguage{Bench}{BCH}\newfontlanguage{Bible Cree}{BCR}
+\newfontlanguage{Belarussian}{BEL}\newfontlanguage{Bemba}{BEM}\newfontlanguage{Bengali}{BEN}
+\newfontlanguage{Bulgarian}{BGR}\newfontlanguage{Bhili}{BHI}\newfontlanguage{Bhojpuri}{BHO}
+\newfontlanguage{Bikol}{BIK}\newfontlanguage{Bilen}{BIL}\newfontlanguage{Blackfoot}{BKF}
+\newfontlanguage{Balochi}{BLI}\newfontlanguage{Balante}{BLN}\newfontlanguage{Balti}{BLT}
+\newfontlanguage{Bambara}{BMB}\newfontlanguage{Bamileke}{BML}\newfontlanguage{Breton}{BRE}
+\newfontlanguage{Brahui}{BRH}\newfontlanguage{Braj Bhasha}{BRI}\newfontlanguage{Burmese}{BRM}
+\newfontlanguage{Bashkir}{BSH}\newfontlanguage{Beti}{BTI}\newfontlanguage{Catalan}{CAT}
+\newfontlanguage{Cebuano}{CEB}\newfontlanguage{Chechen}{CHE}\newfontlanguage{Chaha Gurage}{CHG}
+\newfontlanguage{Chattisgarhi}{CHH}\newfontlanguage{Chichewa}{CHI}\newfontlanguage{Chukchi}{CHK}
+\newfontlanguage{Chipewyan}{CHP}\newfontlanguage{Cherokee}{CHR}\newfontlanguage{Chuvash}{CHU}
+\newfontlanguage{Comorian}{CMR}\newfontlanguage{Coptic}{COP}\newfontlanguage{Cree}{CRE}
+\newfontlanguage{Carrier}{CRR}\newfontlanguage{Crimean Tatar}{CRT}\newfontlanguage{Church Slavonic}{CSL}
+\newfontlanguage{Czech}{CSY}\newfontlanguage{Danish}{DAN}\newfontlanguage{Dargwa}{DAR}
+\newfontlanguage{Woods Cree}{DCR}\newfontlanguage{German}{DEU}\newfontlanguage{Default}{DFLT}
+\newfontlanguage{Dogri}{DGR}\newfontlanguage{Divehi}{DIV}\newfontlanguage{Djerma}{DJR}
+\newfontlanguage{Dangme}{DNG}\newfontlanguage{Dinka}{DNK}\newfontlanguage{Dungan}{DUN}
+\newfontlanguage{Dzongkha}{DZN}\newfontlanguage{Ebira}{EBI}\newfontlanguage{Eastern Cree}{ECR}
+\newfontlanguage{Edo}{EDO}\newfontlanguage{Efik}{EFI}\newfontlanguage{Greek}{ELL}
+\newfontlanguage{English}{ENG}\newfontlanguage{Erzya}{ERZ}\newfontlanguage{Spanish}{ESP}
+\newfontlanguage{Estonian}{ETI}\newfontlanguage{Basque}{EUQ}\newfontlanguage{Evenki}{EVK}
+\newfontlanguage{Even}{EVN}\newfontlanguage{Ewe}{EWE}\newfontlanguage{French Antillean}{FAN}
+\newfontlanguage{Farsi}{FAR}\newfontlanguage{Finnish}{FIN}\newfontlanguage{Fijian}{FJI}
+\newfontlanguage{Flemish}{FLE}\newfontlanguage{Forest Nenets}{FNE}\newfontlanguage{Fon}{FON}
+\newfontlanguage{Faroese}{FOS}\newfontlanguage{French}{FRA}\newfontlanguage{Frisian}{FRI}
+\newfontlanguage{Friulian}{FRL}\newfontlanguage{Futa}{FTA}\newfontlanguage{Fulani}{FUL}
+\newfontlanguage{Ga}{GAD}\newfontlanguage{Gaelic}{GAE}\newfontlanguage{Gagauz}{GAG}
+\newfontlanguage{Galician}{GAL}\newfontlanguage{Garshuni}{GAR}\newfontlanguage{Garhwali}{GAW}
+\newfontlanguage{Ge'ez}{GEZ}\newfontlanguage{Gilyak}{GIL}\newfontlanguage{Gumuz}{GMZ}
+\newfontlanguage{Gondi}{GON}\newfontlanguage{Greenlandic}{GRN}\newfontlanguage{Garo}{GRO}
+\newfontlanguage{Guarani}{GUA}\newfontlanguage{Gujarati}{GUJ}\newfontlanguage{Haitian}{HAI}
+\newfontlanguage{Halam}{HAL}\newfontlanguage{Harauti}{HAR}\newfontlanguage{Hausa}{HAU}
+\newfontlanguage{Hawaiin}{HAW}\newfontlanguage{Hammer-Banna}{HBN}\newfontlanguage{Hiligaynon}{HIL}
+\newfontlanguage{Hindi}{HIN}\newfontlanguage{High Mari}{HMA}\newfontlanguage{Hindko}{HND}
+\newfontlanguage{Ho}{HO}\newfontlanguage{Harari}{HRI}\newfontlanguage{Croatian}{HRV}
+\newfontlanguage{Hungarian}{HUN}\newfontlanguage{Armenian}{HYE}\newfontlanguage{Igbo}{IBO}
+\newfontlanguage{Ijo}{IJO}\newfontlanguage{Ilokano}{ILO}\newfontlanguage{Indonesian}{IND}
+\newfontlanguage{Ingush}{ING}\newfontlanguage{Inuktitut}{INU}\newfontlanguage{Irish}{IRI}
+\newfontlanguage{Irish Traditional}{IRT}\newfontlanguage{Icelandic}{ISL}\newfontlanguage{Inari Sami}{ISM}
+\newfontlanguage{Italian}{ITA}\newfontlanguage{Hebrew}{IWR}\newfontlanguage{Javanese}{JAV}
+\newfontlanguage{Yiddish}{JII}\newfontlanguage{Japanese}{JAN}\newfontlanguage{Judezmo}{JUD}
+\newfontlanguage{Jula}{JUL}\newfontlanguage{Kabardian}{KAB}\newfontlanguage{Kachchi}{KAC}
+\newfontlanguage{Kalenjin}{KAL}\newfontlanguage{Kannada}{KAN}\newfontlanguage{Karachay}{KAR}
+\newfontlanguage{Georgian}{KAT}\newfontlanguage{Kazakh}{KAZ}\newfontlanguage{Kebena}{KEB}
+\newfontlanguage{Khutsuri Georgian}{KGE}\newfontlanguage{Khakass}{KHA}\newfontlanguage{Khanty-Kazim}{KHK}
+\newfontlanguage{Khmer}{KHM}\newfontlanguage{Khanty-Shurishkar}{KHS}\newfontlanguage{Khanty-Vakhi}{KHV}
+\newfontlanguage{Khowar}{KHW}\newfontlanguage{Kikuyu}{KIK}\newfontlanguage{Kirghiz}{KIR}
+\newfontlanguage{Kisii}{KIS}\newfontlanguage{Kokni}{KKN}\newfontlanguage{Kalmyk}{KLM}
+\newfontlanguage{Kamba}{KMB}\newfontlanguage{Kumaoni}{KMN}\newfontlanguage{Komo}{KMO}
+\newfontlanguage{Komso}{KMS}\newfontlanguage{Kanuri}{KNR}\newfontlanguage{Kodagu}{KOD}
+\newfontlanguage{Korean Old Hangul}{KOH}\newfontlanguage{Konkani}{KOK}\newfontlanguage{Kikongo}{KON}
+\newfontlanguage{Komi-Permyak}{KOP}\newfontlanguage{Korean}{KOR}\newfontlanguage{Komi-Zyrian}{KOZ}
+\newfontlanguage{Kpelle}{KPL}\newfontlanguage{Krio}{KRI}\newfontlanguage{Karakalpak}{KRK}
+\newfontlanguage{Karelian}{KRL}\newfontlanguage{Karaim}{KRM}\newfontlanguage{Karen}{KRN}
+\newfontlanguage{Koorete}{KRT}\newfontlanguage{Kashmiri}{KSH}\newfontlanguage{Khasi}{KSI}
+\newfontlanguage{Kildin Sami}{KSM}\newfontlanguage{Kui}{KUI}\newfontlanguage{Kulvi}{KUL}
+\newfontlanguage{Kumyk}{KUM}\newfontlanguage{Kurdish}{KUR}\newfontlanguage{Kurukh}{KUU}
+\newfontlanguage{Kuy}{KUY}\newfontlanguage{Koryak}{KYK}\newfontlanguage{Ladin}{LAD}
+\newfontlanguage{Lahuli}{LAH}\newfontlanguage{Lak}{LAK}\newfontlanguage{Lambani}{LAM}
+\newfontlanguage{Lao}{LAO}\newfontlanguage{Latin}{LAT}\newfontlanguage{Laz}{LAZ}
+\newfontlanguage{L-Cree}{LCR}\newfontlanguage{Ladakhi}{LDK}\newfontlanguage{Lezgi}{LEZ}
+\newfontlanguage{Lingala}{LIN}\newfontlanguage{Low Mari}{LMA}\newfontlanguage{Limbu}{LMB}
+\newfontlanguage{Lomwe}{LMW}\newfontlanguage{Lower Sorbian}{LSB}\newfontlanguage{Lule Sami}{LSM}
+\newfontlanguage{Lithuanian}{LTH}\newfontlanguage{Luba}{LUB}\newfontlanguage{Luganda}{LUG}
+\newfontlanguage{Luhya}{LUH}\newfontlanguage{Luo}{LUO}\newfontlanguage{Latvian}{LVI}
+\newfontlanguage{Majang}{MAJ}\newfontlanguage{Makua}{MAK}\newfontlanguage{Malayalam Traditional}{MAL}
+\newfontlanguage{Mansi}{MAN}\newfontlanguage{Marathi}{MAR}\newfontlanguage{Marwari}{MAW}
+\newfontlanguage{Mbundu}{MBN}\newfontlanguage{Manchu}{MCH}\newfontlanguage{Moose Cree}{MCR}
+\newfontlanguage{Mende}{MDE}\newfontlanguage{Me'en}{MEN}\newfontlanguage{Mizo}{MIZ}
+\newfontlanguage{Macedonian}{MKD}\newfontlanguage{Male}{MLE}\newfontlanguage{Malagasy}{MLG}
+\newfontlanguage{Malinke}{MLN}\newfontlanguage{Malayalam Reformed}{MLR}\newfontlanguage{Malay}{MLY}
+\newfontlanguage{Mandinka}{MND}\newfontlanguage{Mongolian}{MNG}\newfontlanguage{Manipuri}{MNI}
+\newfontlanguage{Maninka}{MNK}\newfontlanguage{Manx Gaelic}{MNX}\newfontlanguage{Moksha}{MOK}
+\newfontlanguage{Moldavian}{MOL}\newfontlanguage{Mon}{MON}\newfontlanguage{Moroccan}{MOR}
+\newfontlanguage{Maori}{MRI} \newfontlanguage{Maithili}{MTH} \newfontlanguage{Maltese}{MTS}
+\newfontlanguage{Mundari}{MUN} \newfontlanguage{Naga-Assamese}{NAG} \newfontlanguage{Nanai}{NAN}
+\newfontlanguage{Naskapi}{NAS} \newfontlanguage{N-Cree}{NCR} \newfontlanguage{Ndebele}{NDB}
+\newfontlanguage{Ndonga}{NDG} \newfontlanguage{Nepali}{NEP} \newfontlanguage{Newari}{NEW}
+\newfontlanguage{Nagari}{NGR} \newfontlanguage{Norway House Cree}{NHC} \newfontlanguage{Nisi}{NIS}
+\newfontlanguage{Niuean}{NIU} \newfontlanguage{Nkole}{NKL} \newfontlanguage{N'ko}{NKO}
+\newfontlanguage{Dutch}{NLD} \newfontlanguage{Nogai}{NOG} \newfontlanguage{Norwegian}{NOR}
+\newfontlanguage{Northern Sami}{NSM} \newfontlanguage{Northern Tai}{NTA} \newfontlanguage{Esperanto}{NTO}
+\newfontlanguage{Nynorsk}{NYN} \newfontlanguage{Oji-Cree}{OCR} \newfontlanguage{Ojibway}{OJB}
+\newfontlanguage{Oriya}{ORI} \newfontlanguage{Oromo}{ORO} \newfontlanguage{Ossetian}{OSS}
+\newfontlanguage{Palestinian Aramaic}{PAA} \newfontlanguage{Pali}{PAL} \newfontlanguage{Punjabi}{PAN}
+\newfontlanguage{Palpa}{PAP} \newfontlanguage{Pashto}{PAS} \newfontlanguage{Polytonic Greek}{PGR}
+\newfontlanguage{Pilipino}{PIL} \newfontlanguage{Palaung}{PLG} \newfontlanguage{Polish}{PLK}
+\newfontlanguage{Provencal}{PRO} \newfontlanguage{Portuguese}{PTG} \newfontlanguage{Chin}{QIN}
+\newfontlanguage{Rajasthani}{RAJ} \newfontlanguage{R-Cree}{RCR} \newfontlanguage{Russian Buriat}{RBU}
+\newfontlanguage{Riang}{RIA} \newfontlanguage{Rhaeto-Romanic}{RMS} \newfontlanguage{Romanian}{ROM}
+\newfontlanguage{Romany}{ROY} \newfontlanguage{Rusyn}{RSY} \newfontlanguage{Ruanda}{RUA}
+\newfontlanguage{Russian}{RUS} \newfontlanguage{Sadri}{SAD} \newfontlanguage{Sanskrit}{SAN}
+\newfontlanguage{Santali}{SAT} \newfontlanguage{Sayisi}{SAY} \newfontlanguage{Sekota}{SEK}
+\newfontlanguage{Selkup}{SEL} \newfontlanguage{Sango}{SGO} \newfontlanguage{Shan}{SHN}
+\newfontlanguage{Sibe}{SIB} \newfontlanguage{Sidamo}{SID} \newfontlanguage{Silte Gurage}{SIG}
+\newfontlanguage{Skolt Sami}{SKS} \newfontlanguage{Slovak}{SKY} \newfontlanguage{Slavey}{SLA}
+\newfontlanguage{Slovenian}{SLV} \newfontlanguage{Somali}{SML} \newfontlanguage{Samoan}{SMO}
+\newfontlanguage{Sena}{SNA} \newfontlanguage{Sindhi}{SND} \newfontlanguage{Sinhalese}{SNH}
+\newfontlanguage{Soninke}{SNK} \newfontlanguage{Sodo Gurage}{SOG} \newfontlanguage{Sotho}{SOT}
+\newfontlanguage{Albanian}{SQI} \newfontlanguage{Serbian}{SRB} \newfontlanguage{Saraiki}{SRK}
+\newfontlanguage{Serer}{SRR} \newfontlanguage{South Slavey}{SSL} \newfontlanguage{Southern Sami}{SSM}
+\newfontlanguage{Suri}{SUR} \newfontlanguage{Svan}{SVA} \newfontlanguage{Swedish}{SVE}
+\newfontlanguage{Swadaya Aramaic}{SWA} \newfontlanguage{Swahili}{SWK} \newfontlanguage{Swazi}{SWZ}
+\newfontlanguage{Sutu}{SXT} \newfontlanguage{Syriac}{SYR} \newfontlanguage{Tabasaran}{TAB}
+\newfontlanguage{Tajiki}{TAJ} \newfontlanguage{Tamil}{TAM} \newfontlanguage{Tatar}{TAT}
+\newfontlanguage{TH-Cree}{TCR} \newfontlanguage{Telugu}{TEL} \newfontlanguage{Tongan}{TGN}
+\newfontlanguage{Tigre}{TGR} \newfontlanguage{Tigrinya}{TGY} \newfontlanguage{Thai}{THA}
+\newfontlanguage{Tahitian}{THT} \newfontlanguage{Tibetan}{TIB} \newfontlanguage{Turkmen}{TKM}
+\newfontlanguage{Temne}{TMN} \newfontlanguage{Tswana}{TNA} \newfontlanguage{Tundra Nenets}{TNE}
+\newfontlanguage{Tonga}{TNG} \newfontlanguage{Todo}{TOD} \newfontlanguage{Turkish}{TUR}
+\newfontlanguage{Tsonga}{TSG} \newfontlanguage{Turoyo Aramaic}{TUA} \newfontlanguage{Tulu}{TUL}
+\newfontlanguage{Tuvin}{TUV} \newfontlanguage{Twi}{TWI} \newfontlanguage{Udmurt}{UDM}
+\newfontlanguage{Ukrainian}{UKR} \newfontlanguage{Urdu}{URD} \newfontlanguage{Upper Sorbian}{USB}
+\newfontlanguage{Uyghur}{UYG} \newfontlanguage{Uzbek}{UZB} \newfontlanguage{Venda}{VEN}
+\newfontlanguage{Vietnamese}{VIT} \newfontlanguage{Wa}{WA} \newfontlanguage{Wagdi}{WAG}
+\newfontlanguage{West-Cree}{WCR} \newfontlanguage{Welsh}{WEL} \newfontlanguage{Wolof}{WLF}
+\newfontlanguage{Tai Lue}{XBD} \newfontlanguage{Xhosa}{XHS} \newfontlanguage{Yakut}{YAK}
+\newfontlanguage{Yoruba}{YBA} \newfontlanguage{Y-Cree}{YCR} \newfontlanguage{Yi Classic}{YIC}
+\newfontlanguage{Yi Modern}{YIM} \newfontlanguage{Chinese Hong Kong}{ZHH}
+\newfontlanguage{Chinese Phonetic}{ZHP} \newfontlanguage{Chinese Simplified}{ZHS}
+\newfontlanguage{Chinese Traditional}{ZHT} \newfontlanguage{Zande}{ZND} \newfontlanguage{Zulu}{ZUL}
+\providecommand*{\sidefault}{si}
+\DeclareRobustCommand{\sishape}{%
+ \not@math@alphabet\sishape\relax
+ \fontshape\sidefault\selectfont}
+\DeclareTextFontCommand{\textsi}{\sishape}
+\newcommand*{\zf@merge@shape}[3]{%
+ \edef\@tempa{#1}%
+ \edef\@tempb{#2}%
+ \ifx\f@shape\@tempb
+ \ifcsname\f@encoding/\f@family/\f@series/#3\endcsname
+ \edef\@tempa{#3}%
+ \fi
+ \fi
+ \fontshape{\@tempa}\selectfont}
+\DeclareRobustCommand{\itshape}{%
+ \not@math@alphabet\itshape\mathit
+ \zf@merge@shape\itdefault\scdefault\sidefault}
+\DeclareRobustCommand{\slshape}{%
+ \not@math@alphabet\slshape\relax
+ \zf@merge@shape\sldefault\scdefault\sidefault}
+\DeclareRobustCommand{\scshape}{%
+ \not@math@alphabet\scshape\relax
+ \zf@merge@shape\scdefault\itdefault\sidefault}
+\DeclareRobustCommand{\upshape}{%
+ \not@math@alphabet\upshape\relax
+ \zf@merge@shape\updefault\sidefault\scdefault}
+\AtBeginDocument{%
+ \DeclareRobustCommand\em
+ {\@nomath\em
+ \edef\@tempa{\f@shape}%
+ \edef\@tempb{\itdefault}%
+ \ifx\@tempa\@tempb
+ \eminnershape
+ \else
+ \emshape
+ \fi}}
+\DeclareTextFontCommand{\emph}{\em}
+\let\emshape\itshape
+\let\eminnershape\upshape
+\@ifpackageloaded{euler}{\zf@euler@package@loadedtrue}
+ {\zf@euler@package@loadedfalse}
+\AtBeginDocument{%
+ \let\zf@font@warning\@font@warning
+ \let\@font@warning\@font@info
+ \@ifpackageloaded{euler}{%
+ \ifzf@euler@package@loaded
+ \zf@math@eulertrue
+ \else
+ \zf@PackageError{The euler package must be loaded BEFORE fontspec}
+ {fontspec only overwrites euler's attempt to \MessageBreak
+ define the maths text fonts if fontspec is \MessageBreak
+ loaded after euler. Type <return> to proceed\MessageBreak
+ with incorrect \protect\mathit, \protect\mathbf, etc}
+ \fi}{}
+ \@ifpackageloaded{lucbmath}{\zf@math@lucidatrue}{}
+ \@ifpackageloaded{lucidabr}{\zf@math@lucidatrue}{}
+ \@ifpackageloaded{lucimatx}{\zf@math@lucidatrue}{}
+ \DeclareSymbolFont{legacymaths}{OT1}{cmr}{m}{n}
+ \SetSymbolFont{legacymaths}{bold}{OT1}{cmr}{bx}{n}
+ \DeclareMathAccent{\acute} {\mathalpha}{legacymaths}{19}
+ \DeclareMathAccent{\grave} {\mathalpha}{legacymaths}{18}
+ \DeclareMathAccent{\ddot} {\mathalpha}{legacymaths}{127}
+ \DeclareMathAccent{\tilde} {\mathalpha}{legacymaths}{126}
+ \DeclareMathAccent{\bar} {\mathalpha}{legacymaths}{22}
+ \DeclareMathAccent{\breve} {\mathalpha}{legacymaths}{21}
+ \DeclareMathAccent{\check} {\mathalpha}{legacymaths}{20}
+ \DeclareMathAccent{\hat} {\mathalpha}{legacymaths}{94} % too bad, euler
+ \DeclareMathAccent{\dot} {\mathalpha}{legacymaths}{95}
+ \DeclareMathAccent{\mathring}{\mathalpha}{legacymaths}{23}
+ \begingroup
+ \mathchardef\@tempa="603A %
+ \let\next\egroup
+ \ifx\colon\@tempa
+ \DeclareMathSymbol{\colon}{\mathpunct}{legacymaths}{58}
+ \fi
+ \endgroup
+ \ifzf@math@euler\else
+ \DeclareMathSymbol{!}{\mathclose}{legacymaths}{33}
+ \DeclareMathSymbol{:}{\mathrel} {legacymaths}{58}
+ \DeclareMathSymbol{;}{\mathpunct}{legacymaths}{59}
+ \DeclareMathSymbol{?}{\mathclose}{legacymaths}{63}
+ \ifzf@math@lucida\else
+ \DeclareMathSymbol{0}{\mathalpha}{legacymaths}{`0}
+ \DeclareMathSymbol{1}{\mathalpha}{legacymaths}{`1}
+ \DeclareMathSymbol{2}{\mathalpha}{legacymaths}{`2}
+ \DeclareMathSymbol{3}{\mathalpha}{legacymaths}{`3}
+ \DeclareMathSymbol{4}{\mathalpha}{legacymaths}{`4}
+ \DeclareMathSymbol{5}{\mathalpha}{legacymaths}{`5}
+ \DeclareMathSymbol{6}{\mathalpha}{legacymaths}{`6}
+ \DeclareMathSymbol{7}{\mathalpha}{legacymaths}{`7}
+ \DeclareMathSymbol{8}{\mathalpha}{legacymaths}{`8}
+ \DeclareMathSymbol{9}{\mathalpha}{legacymaths}{`9}
+ \DeclareMathSymbol{\Gamma}{\mathalpha}{legacymaths}{0}
+ \DeclareMathSymbol{\Delta}{\mathalpha}{legacymaths}{1}
+ \DeclareMathSymbol{\Theta}{\mathalpha}{legacymaths}{2}
+ \DeclareMathSymbol{\Lambda}{\mathalpha}{legacymaths}{3}
+ \DeclareMathSymbol{\Xi}{\mathalpha}{legacymaths}{4}
+ \DeclareMathSymbol{\Pi}{\mathalpha}{legacymaths}{5}
+ \DeclareMathSymbol{\Sigma}{\mathalpha}{legacymaths}{6}
+ \DeclareMathSymbol{\Upsilon}{\mathalpha}{legacymaths}{7}
+ \DeclareMathSymbol{\Phi}{\mathalpha}{legacymaths}{8}
+ \DeclareMathSymbol{\Psi}{\mathalpha}{legacymaths}{9}
+ \DeclareMathSymbol{\Omega}{\mathalpha}{legacymaths}{10}
+ \DeclareMathSymbol{+}{\mathbin}{legacymaths}{43}
+ \DeclareMathSymbol{=}{\mathrel}{legacymaths}{61}
+ \DeclareMathDelimiter{(}{\mathopen} {legacymaths}{40}{largesymbols}{0}
+ \DeclareMathDelimiter{)}{\mathclose}{legacymaths}{41}{largesymbols}{1}
+ \DeclareMathDelimiter{[}{\mathopen} {legacymaths}{91}{largesymbols}{2}
+ \DeclareMathDelimiter{]}{\mathclose}{legacymaths}{93}{largesymbols}{3}
+ \DeclareMathDelimiter{/}{\mathord}{legacymaths}{47}{largesymbols}{14}
+ \DeclareMathSymbol{\mathdollar}{\mathord}{legacymaths}{36}
+ \fi
+ \fi
+ \DeclareSymbolFont{operators}\zf@enc\zf@rmmaths\mddefault\updefault
+ \SetSymbolFont{operators}{normal}\zf@enc\zf@rmmaths\mddefault\updefault
+ \SetMathAlphabet\mathrm{normal}\zf@enc\zf@rmmaths\mddefault\updefault
+ \SetMathAlphabet\mathit{normal}\zf@enc\zf@rmmaths\mddefault\itdefault
+ \SetMathAlphabet\mathbf{normal}\zf@enc\zf@rmmaths\bfdefault\updefault
+ \SetMathAlphabet\mathsf{normal}\zf@enc\zf@sfmaths\mddefault\updefault
+ \SetMathAlphabet\mathtt{normal}\zf@enc\zf@ttmaths\mddefault\updefault
+ \SetSymbolFont{operators}{bold}\zf@enc\zf@rmmaths\bfdefault\updefault
+ \ifdefined\zf@rmboldmaths
+ \SetMathAlphabet\mathrm{bold}\zf@enc\zf@rmboldmaths\mddefault\updefault
+ \SetMathAlphabet\mathbf{bold}\zf@enc\zf@rmboldmaths\bfdefault\updefault
+ \SetMathAlphabet\mathit{bold}\zf@enc\zf@rmboldmaths\mddefault\itdefault
+ \else
+ \SetMathAlphabet\mathrm{bold}\zf@enc\zf@rmmaths\bfdefault\updefault
+ \SetMathAlphabet\mathit{bold}\zf@enc\zf@rmmaths\bfdefault\itdefault
+ \fi
+ \SetMathAlphabet\mathsf{bold}\zf@enc\zf@sfmaths\bfdefault\updefault
+ \SetMathAlphabet\mathtt{bold}\zf@enc\zf@ttmaths\bfdefault\updefault
+ \let\font@warning\zf@font@warning}
+\DeclareOption{config}{%
+ \InputIfFileExists{fontspec.cfg}
+ {\typeout{fontspec.cfg loaded.}}
+ {\typeout{fontspec.cfg would be loaded now if it existed.}}}
+\DeclareOption{noconfig}{}
+\DeclareOption{quiet}{\let\zf@PackageWarning\zf@PackageInfo}
+\ExecuteOptions{config}
+\ProcessOptions
+%%
+%% Copyright 2005 by Will Robertson <will@guerilla.net.au>
+%%
+%% Distributable under the LaTeX Project Public License,
+%% version 1.3b or higher (your choice). The latest version of
+%% this license is at: http://www.latex-project.org/lppl.txt
+%%
+%% This work is "maintained" (as per LPPL maintenance status)
+%% by Will Robertson.
+%%
+%% This work consists of the file fontspec.dtx
+%% and the derived files fontspec.sty and fontspec.pdf.
+%%
+%%
+%% End of file `fontspec.sty'.
diff --git a/Master/texmf-dist/tex/xelatex/graphics/color.cfg b/Master/texmf-dist/tex/xelatex/graphics/color.cfg
new file mode 100644
index 00000000000..0271726719e
--- /dev/null
+++ b/Master/texmf-dist/tex/xelatex/graphics/color.cfg
@@ -0,0 +1,43 @@
+\ProvidesFile{color.cfg}%
+ [2005/10/12 v1.3b color configuration of teTeX/TeXLive, extended for XeTeX]
+
+% 2005/10/12 moved this here to avoid shipping modified graphics.sty
+\DeclareOption{xetex}{\def\Gin@driver{xetex.def}}
+
+% Select an appropriate default driver
+\begingroup
+ \chardef\x=0\relax
+ % check pdfTeX
+ \@ifundefined{pdfoutput}{}{%
+ \ifcase\pdfoutput
+ \else
+ \chardef\x=1\relax
+ \fi
+ }%
+ % check VTeX
+ \@ifundefined{OpMode}{}{%
+ \chardef\x=2\relax
+ }%
+ % check XeTeX
+ \@ifundefined{XeTeXversion}{}{%
+ \chardef\x=3\relax
+ }%
+\expandafter\endgroup
+\ifcase\x
+ % default case
+ \def\Gin@driver{dvips.def}%
+ \ExecuteOptions{dvips}%
+\or
+ % pdfTeX is running in pdf mode
+ \def\Gin@driver{pdftex.def}%
+ \ExecuteOptions{pdftex}%
+\or
+ % VTeX is running
+ \def\Gin@driver{vtex.def}%
+ \ExecuteOptions{vtex}%
+\else
+ % XeTeX is running
+ \def\Gin@driver{xetex.def}%
+ \ExecuteOptions{xetex}%
+\fi
+\endinput
diff --git a/Master/texmf-dist/tex/xelatex/graphics/graphics.cfg b/Master/texmf-dist/tex/xelatex/graphics/graphics.cfg
new file mode 100644
index 00000000000..d9fe21767e6
--- /dev/null
+++ b/Master/texmf-dist/tex/xelatex/graphics/graphics.cfg
@@ -0,0 +1,68 @@
+\ProvidesFile{graphics.cfg}%
+ [2005/10/12 v1.3b graphics configuration of teTeX/TeXLive, extended for XeTeX]
+
+% 2005/10/12 moved this here to avoid shipping modified graphics.sty
+\DeclareOption{xetex}{\def\Gin@driver{xetex.def}}
+
+% Select an appropriate default driver
+\begingroup
+ \chardef\x=0\relax
+ % check pdfTeX
+ \@ifundefined{pdfoutput}{}{%
+ \ifcase\pdfoutput
+ \else
+ \chardef\x=1\relax
+ \fi
+ }%
+ % check VTeX
+ \@ifundefined{OpMode}{}{%
+ \chardef\x=2\relax
+ }%
+ % check XeTeX
+ \@ifundefined{XeTeXversion}{}{%
+ \chardef\x=3\relax
+ }%
+\expandafter\endgroup
+\ifcase\x
+ % default case
+ \def\Gin@driver{dvips.def}%
+ \ExecuteOptions{dvips}%
+\or
+ % pdfTeX is running in pdf mode
+ \def\Gin@driver{pdftex.def}%
+ \ExecuteOptions{pdftex}%
+\or
+ % VTeX is running
+ \def\Gin@driver{vtex.def}%
+ \ExecuteOptions{vtex}%
+\else
+ % XeTeX is running
+ \def\Gin@driver{xetex.def}%
+ \ExecuteOptions{xetex}%
+\fi
+
+% Fix for dvips and xdvi versions that can uncompress
+% graphic files without an explicite call of gunzip.
+% (The fix is not applied for miniltx.tex, because
+% \AtEndOfPackage is not available in plainTeX.)
+\begingroup\expandafter\expandafter\expandafter\endgroup
+\expandafter\ifx\csname AtEndOfPackage\endcsname\relax
+\else
+ \AtEndOfPackage{%
+ \begingroup
+ \@ifundefined{DeclareGraphicsRule}{%
+ \endgroup
+ }{%
+ \def\x{dvips.def}%
+ \expandafter\endgroup
+ \ifx\x\Gin@driver
+ \DeclareGraphicsRule{.pz}{eps}{.bb}{}%
+ \DeclareGraphicsRule{.eps.Z}{eps}{.eps.bb}{}%
+ \DeclareGraphicsRule{.ps.Z}{eps}{.ps.bb}{}%
+ \DeclareGraphicsRule{.ps.gz}{eps}{.ps.bb}{}%
+ \DeclareGraphicsRule{.eps.gz}{eps}{.eps.bb}{}%
+ \fi
+ }%
+ }%
+\fi
+\endinput
diff --git a/Master/texmf-dist/tex/xelatex/graphics/xetex.def b/Master/texmf-dist/tex/xelatex/graphics/xetex.def
new file mode 100644
index 00000000000..feefc27f01d
--- /dev/null
+++ b/Master/texmf-dist/tex/xelatex/graphics/xetex.def
@@ -0,0 +1,439 @@
+%%
+%% This is file `xetex.def',
+%% based upon other drivers for LaTeX color and graphics support.
+%%
+%% Copyright 2004, 2005 Ross Moore <ross@maths.mq.edu.au>
+%% modified by Jonathan Kew <jonathan_kew@sil.org>
+%%
+%% This file is *not yet* part of the Standard LaTeX `Graphics Bundle'.
+%% It may be distributed under the terms of the LaTeX Project Public
+%% License, as described in lppl.txt in the base LaTeX distribution.
+%% Either version 1.0 or, at your option, any later version.
+%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% Version History
+%%
+%% 2006/08/10 [JK] Version v0.92 correct type-check in \G@measure@QTm;
+%% remove \G@PDF@ext, apply \lowercase instead;
+%% make \XeTeXquote have catcode 12 rather than 11;
+%% explicit space after "filename.ext" (reqd by xetex 0.995)
+%%
+%% 2006/07/19 [JK] Version v0.91 use \special{color ...} rather than
+%% \special{x:textcolor ...} etc, for compatibility with
+%% both xdv2pdf and xdvipdfmx drivers;
+%% added .bmp to list of recognized graphics extensions
+%%
+%% 2006/01/09 [JK] Version v0.9 removed support for XeTeX versions
+%% prior to 0.6 (when the \XeTeXpicfile parameters were
+%% modified), to avoid problem when \XeTeXrevision inc. letters
+%%
+%% 2005/10/12 Version v0.8 removed spurious space in \convertHEX@
+%% -- found by Morten Hogholm
+%%
+%% 2004/05/09 Version v0.7 changed support for \pagecolor, adapted
+%% from pdftex.def, to put a \special in the \shipout ;
+%% this driver should now work with miniltx.tex ;
+%% changed some control-sequence names;
+%% implemented HSB to RGB color conversion
+%% identified the redundant (v0.5) coding more clearly.
+%%
+%% 2004/05/08 Version v0.6 properly implements scaling and rotations
+%% following the coding used with pdftex.def ;
+%% implemented `viewport' and prepared for `clip';
+%% don't rely on " to have correct catcode;
+%% altered the suffix order for graphics, to be:
+%% .pdf .png .jpg .pict .tif ....
+%%
+%% 2004/04/29 Version v0.5 adapts to the changed names for the
+%% graphics inclusion primitives, and version strings.
+%%
+%% 2004/04/23 Version v0.41 works with graphics.sty as well as
+%% graphicx.sty ; \G@pdf@ext is '.pdf';
+%% similarly define and use \G@PDF@ext for '.PDF';
+%% removed some log-messages.
+%%
+%% 2004/04/22 Version v0.4 designed to work with XeTeX v0.4
+%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\ProvidesFile{xetex.def}
+ [2006/08/10 v0.92 LaTeX color/graphics driver for XeTeX (RRM, mod. JK)]
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+% make sure we can use " with correct catcode
+{\catcode`\"=12
+ \gdef\XeTeXquote{"}%
+}
+
+% miniltx.tex does not define \PackageWarning
+% or \PackageWarningNoLine.
+\@ifundefined{PackageWarning}{%
+ \def\PackageWarning#1#2{%
+ \begingroup
+ \newlinechar=10 %
+ \def\MessageBreak{%
+ ^^J(#1)\@spaces\@spaces\@spaces\@spaces
+ }%
+ \immediate\write16{^^JPackage #1 Warning: #2\on@line.^^J}%
+ \endgroup
+ }%
+}{}
+\@ifundefined{PackageWarningNoLine}{%
+ \def\PackageWarningNoLine#1#2{%
+ \PackageWarning{#1}{#2\@gobble}%
+ }%
+}{}
+\@ifundefined{on@line}{%
+ \def\on@line{ on input line \the\inputlineno}%
+}{}
+\@ifundefined{@spaces}{%
+ \def\@spaces{\space\space\space\space}%
+}{}
+\def\GXT@warn{\PackageWarning{xetex.def}}%
+\ifx\Gin@log\@undefined
+ \def\Gin@log{\message}
+\fi
+
+% Colour Support. The following models may be used.
+% * rgb \
+% * cmyk \
+% * gray /-- all passed directly to the driver
+% * hsb /
+% * RGB ---- converted to rgb here
+% * named
+%
+\def\c@lor@arg#1{%
+ \dimen@#1\p@
+ \ifdim\dimen@<\z@\dimen@\maxdimen\fi
+ \ifdim\dimen@>\p@
+ \PackageError{color}{Argument `#1' not in range [0,1]}\@ehd
+ \fi}
+\def\color@gray#1#2{%
+ \c@lor@arg{#2}%
+ \edef#1{gray #2}%
+ }
+\def\color@cmyk#1#2{\c@lor@@cmyk#2\@@#1}
+\def\c@lor@@cmyk#1,#2,#3,#4\@@#5{%
+ \c@lor@arg{#4}%
+ \c@lor@arg{#1}%
+ \c@lor@arg{#2}%
+ \c@lor@arg{#3}%
+ \edef#5{cmyk #1 #2 #3 #4}%
+ }
+\def\color@rgb#1#2{\c@lor@@rgb#2\@@#1}
+\def\c@lor@@rgb#1,#2,#3\@@#4{%
+ \c@lor@arg{#1}%
+ \c@lor@arg{#2}%
+ \c@lor@arg{#3}%
+ \edef#4{rgb #1 #2 #3}%
+ }
+\def\color@RGB#1#2{\c@lor@@RGB#2\@@#1}
+\def\c@lor@@RGB#1,#2,#3\@@#4{%
+ \c@lor@RGB@rgb{#1}\@tempa
+ \c@lor@RGB@rgb{#2}\@tempb
+ \c@lor@RGB@rgb{#3}\@tempc
+ \c@lor@@rgb\@tempa,\@tempb,\@tempc\@@#4%
+ }
+\def\c@lor@RGB@rgb#1#2{%
+ \dimen@#1\p@
+ \divide\dimen@\@cclv
+ \edef#2{\strip@pt\dimen@}}
+\def\color@hsb#1#2{\c@lor@@hsb#2\@@#1}
+\def\c@lor@@hsb#1,#2,#3\@@#4{%
+ \c@lor@arg{#1}%
+ \c@lor@arg{#2}%
+ \c@lor@arg{#3}%
+ \edef#4{hsb #1 #2 #3}%
+ }
+\def\color@named#1#2{\c@lor@@named#2,,\@@#1}
+\def\c@lor@@named#1,#2,#3\@@#4{%
+ \@ifundefined{col@#1}%
+ {\PackageError{color}{Undefined color `#1'}\@ehd}%
+ {\edef#4{ #1}}%
+ }
+
+\def\current@color{gray 0}
+
+%
+% v0.02t: support for \pagecolor
+\def\set@page@color{%
+ \global\let\current@page@color\current@color
+ \@ifundefined{GXTorg@shipout}{%
+ \global\let\GXTorg@shipout\shipout
+ \gdef\shipout{%
+ \afterassignment\GXT@shipout
+ \global\setbox\@cclv=%
+ }%
+ \gdef\GXT@shipout{%
+ \ifvoid\@cclv\relax
+ \aftergroup\GXT@@shipout
+ \GXT@setpagecolor
+ \else
+ \GXTorg@shipout\vbox{%
+ \GXT@setpagecolor
+ \box\@cclv
+ }%
+ \fi
+ }%
+ \gdef\GXT@@shipout{%
+ \GXTorg@shipout\box\@cclv\relax
+ }%
+ \gdef\GXT@setpagecolor{%
+ \special{background \current@page@color}%
+ }%
+ }{}%
+}
+
+\def\set@color@stack{%
+ \special{color push \current@color}%
+ \aftergroup\reset@color
+}
+\def\set@color@nostack{%
+ \special{color \current@color}%
+ \aftergroup\reset@color
+}
+\def\reset@color@nostack{%
+ \special{color \current@color}%
+ \expandafter\checkfor@moreresets
+}
+\def\reset@color@stack{%
+ \special{color pop}%
+ \expandafter\checkfor@moreresets
+}
+\def\checkfor@moreresets{\futurelet\tmp\checkfor@moreresets@}
+\def\checkfor@moreresets@{%
+ \ifx\tmp\reset@color\expandafter\gobble@color\fi}
+\def\gobble@color#1{\checkfor@moreresets}
+
+\def\define@color@named#1#2{%
+ \expandafter\edef\csname col@#1\endcsname{#2}}
+%
+\def\check@for@XeTeX@colorstack{%
+ \expandafter\ifx\csname use@XeTeX@colorstack\endcsname\relax
+ \let\set@color\set@color@stack
+ \let\reset@color\reset@color@stack
+ \let\checkfor@moreresets\relax
+ \else
+ \let\set@color\set@color@nostack
+ \let\reset@color\reset@color@nostack
+ \fi
+}
+%
+% use \noXeTeXcolorstack to turn off the color-stack
+% mechanism; use it within the preamble only.
+% This may be useful with some packages
+% e.g. TeXpower which makes partial page-builds.
+%
+\def\noXeTeXcolorstack{\def\use@XeTeX@colorstack{}}
+\AtBeginDocument{\check@for@XeTeX@colorstack}
+%
+% < end of color support for XeTeX >
+
+% < graphics inclusion for XeTeX >
+%
+% PDF is a special case which has extra features
+\def\G@pdf@ext{.pdf}
+
+% \Gin@XeTeX@page: page number of pdf image or \@empty otherwise.
+% This code adapted from pdftex.def
+\let\Gin@XeTeX@page\@empty
+\begingroup
+ \toks@{\define@key{Gin}{page}{\def\Gin@XeTeX@page{#1}}}%
+ \@ifundefined{define@key}{%
+ \edef\x{\endgroup\noexpand\AtBeginDocument{%
+ \noexpand\@ifundefined{define@key}{}{\the\toks@}}%
+ }\x
+ }{\expandafter\endgroup\the\toks@}
+
+% rotating graphics is supported, but
+% rotation of arbitrary material is not supported yet
+%
+\def\GXT@erotate#1#2{\Grot@setangle{#1}\hbox{#2}}%
+\def\set@GXT@erotate{\let\Gin@erotate\GXT@erotate}
+%\AtBeginDocument{\set@GXT@erotate}
+
+\expandafter\ifx\csname XeTeXpicfile\endcsname\relax
+ \let\picfile@cmd\picfile
+ \let\pdffile@cmd\pdffile
+\else
+ \let\picfile@cmd\XeTeXpicfile
+ \let\pdffile@cmd\XeTeXpdffile
+\fi
+
+% all graphics are handled by Apple's QuickTime
+%
+\def\XeTeX@include@QTm#1{%
+ \def\picpage{}%
+ \lowercase{\edef\type@ext{\Gin@ext}}%
+ \ifx\type@ext\G@pdf@ext
+ \ifx\Gin@XeTeX@page\@empty\else
+ \edef\picpage{ page\Gin@XeTeX@page}\fi
+ \def\picfilecommand{\pdffile@cmd}%
+ \else
+ \def\picfilecommand{\picfile@cmd}%
+ \fi
+ \edef\picfileargs{ \XeTeXquote#1\XeTeXquote\space\picpage}%
+ \Gin@log{%
+ <use \picfileargs>%
+ }%
+ \ifx\Gscale@start\relax
+ \setbox\z@=\hbox{\expandafter\picfilecommand\picfileargs}%
+ \edef\next{\box\z@\egroup
+ \def\noexpand\width{\the\wd\z@}\relax
+ \def\noexpand\height{\the\ht\z@}\bgroup}%
+ \expandafter\next
+ \else
+ \XeTeX@scaleinclude{#1}%
+ \fi
+}
+\def\XeTeX@scaleinclude#1{%
+ \def\@tempa{!}%
+ \ifx\Gin@scaley\@tempa
+ \let\Gin@scaley\Gin@scalex
+ \else
+ \ifx\Gin@scalex\@tempa\let\Gin@scalex\Gin@scaley\fi
+ \fi
+ \hbox{%
+ \Gscale@box{\Gin@scalex}[\Gin@scaley]{%
+ \@ifundefined{Gin@vllx}{%
+ \GXT@viewportfalse
+ % without viewport/trim clipping does not make sense
+ % for XeTeX
+ \Gin@clipfalse
+ }{}%
+ \ifGin@clip
+ \GXT@warn{No clipping support in XeTeX yet}%
+ \if!\Gin@vllx\Gin@vlly\Gin@vurx\Gin@vury!%
+ \else
+ \let\GXT@clipend\GXT@DoClipEnd
+ \setbox\@tempboxa\hbox\bgroup
+ \fi
+ \fi
+ \ifGXT@viewport
+ \ifdim\Gin@vlly\p@=\z@
+ \else
+ \lower\Gin@vlly bp\hbox\bgroup
+ \fi
+ \ifdim\Gin@vllx\p@=\z@
+ \else
+ \hskip-\Gin@vllx bp\relax
+ \fi
+ \fi
+%
+ \expandafter\picfilecommand\picfileargs
+%
+ \ifGXT@viewport
+ \ifdim\Gin@vlly\p@=\z@
+ \else
+ \egroup
+ \fi
+ \GXT@clipend
+ \fi
+ }%
+ }%
+}
+\newif\ifGXT@viewport
+\GXT@viewporttrue
+\let\GXT@clipend\relax
+\def\GXT@DoClipEnd{%
+ \egroup
+ \dp\@tempboxa\z@
+ % \Gin@urx and \Gin@ury already contain the correct values,
+ % so both cases viewport and trim can be handled together:
+ \dimen@\Gin@urx\p@
+ \advance\dimen@ -\Gin@vllx\p@
+ \wd\@tempboxa\strip@pt\dimen@ bp\relax
+ \dimen@\Gin@ury\p@
+ \advance\dimen@ -\Gin@vlly\p@
+ \ht\@tempboxa\strip@pt\dimen@ bp\relax
+ % when clipping is implemented for XeTeX
+ % make the changes here:
+ \box\@tempboxa
+}
+
+
+\def\Gread@QTm#1{\IfFileExists{\Gin@base.bb}%
+ {\Gread@eps{\Gin@base.bb}}%
+ {\G@measure@QTm{\Gin@base}{\Gin@ext}}%
+}
+\def\G@measure@QTm#1#2{%
+ % \@warning{measuring size of QuickTime graphic #1#2}%
+ \bgroup
+ \lowercase{\edef\type@ext{#2}}%
+ \ifx\type@ext\G@pdf@ext
+ \ifx\Gin@XeTeX@page\@empty \def\picpage{}%
+ \else \edef\picpage{ page\Gin@XeTeX@page}\fi
+ \fi
+ \setbox0=\hbox{%
+ \ifx\type@ext\G@pdf@ext
+ \edef\piccommand{\noexpand\pdffile@cmd
+ \XeTeXquote#1#2\XeTeXquote\space\picpage}%
+ \else
+ \edef\piccommand{\noexpand\picfile@cmd
+ \XeTeXquote#1#2\XeTeXquote\space}%
+ \fi
+ \piccommand
+ }\dimen0=\wd0 \dimen2=\ht0
+ \edef\next{\egroup
+ \def\noexpand\Gin@urx{\strip@pt\dimen0}%
+ \def\noexpand\Gin@ury{\strip@pt\dimen2}}%
+ \next
+ \Gin@defaultbp\Gin@llx{0}%
+ \Gin@defaultbp\Gin@lly{0}%
+ \expandafter\Gin@defaultbp\expandafter\Gin@urx\expandafter{\Gin@urx}%
+ \expandafter\Gin@defaultbp\expandafter\Gin@ury\expandafter{\Gin@ury}%
+% \typeout{XeTeX: HiRes BoundingBox = (0,0)\space x (\Gin@urx,\Gin@ury) }%
+ \Gin@nat@width=\Gin@urx\p@
+ \Gin@nat@height=\Gin@ury\p@
+ % these emulate \@begin@tempboxa
+ \edef\width{\the\Gin@nat@width}%
+ \edef\height{\the\Gin@nat@height}%
+ \def\depth{0pt}%
+ \let\totalheight\@ovri
+ \totalheight\height
+}
+
+\let\Ginclude@QTm\XeTeX@include@QTm
+
+% For a new graphics type, you can include a line here ...
+\@namedef{Gin@rule@.pdf}#1{{QTm}{QTm}{#1}}
+\@namedef{Gin@rule@.gif}#1{{QTm}{QTm}{#1}}
+\@namedef{Gin@rule@.jpg}#1{{QTm}{QTm}{#1}}
+\@namedef{Gin@rule@.mac}#1{{QTm}{QTm}{#1}}
+\@namedef{Gin@rule@.pict}#1{{QTm}{QTm}{#1}}
+\@namedef{Gin@rule@.png}#1{{QTm}{QTm}{#1}}
+\@namedef{Gin@rule@.psd}#1{{QTm}{QTm}{#1}}
+\@namedef{Gin@rule@.sgi}#1{{QTm}{QTm}{#1}}
+\@namedef{Gin@rule@.tga}#1{{QTm}{QTm}{#1}}
+\@namedef{Gin@rule@.tif}#1{{QTm}{QTm}{#1}}
+\@namedef{Gin@rule@.bmp}#1{{QTm}{QTm}{#1}}
+
+% movies not supported yet:
+%\@namedef{Gin@rule@.qt}#1{{QTm}{QTm}{#1}}
+%\@namedef{Gin@rule@.mpg}#1{{QTm}{QTm}{#1}}
+%\@namedef{Gin@rule@.mov}#1{{QTm}{QTm}{#1}}
+%\@namedef{Gin@rule@.moov}#1{{QTm}{QTm}{#1}}
+
+
+% ... though this default rule will try QuickTime anyway ...
+\@namedef{Gin@rule@*}#1{{QTm}{QTm}{#1}}
+
+% ... and add it's extension here
+\def\Gin@extensions{.pdf,.png,.jpg,.bmp,.pict,.tif,.psd,.mac,.sga,.tga,.gif}
+
+%
+% Rotation & Scaling
+% supported from xetex v0.6 onwards
+%
+
+\def\Grot@start{\wd\z@\z@
+ \special{x:gsave}\special{x:rotate \Grot@angle}}
+\def\Grot@end{\special{x:grestore}}
+
+\def\Gscale@start{%
+ \special{x:gsave}\special{x:scale \Gscale@x\space\Gscale@y}}
+\let\Gscale@end\Grot@end
+%
+
+\endinput
+%%
+%% End of file `xetex.def'.
diff --git a/Master/texmf-dist/tex/xelatex/xltxtra/xltxtra.sty b/Master/texmf-dist/tex/xelatex/xltxtra/xltxtra.sty
new file mode 100644
index 00000000000..c8527e2fd5c
--- /dev/null
+++ b/Master/texmf-dist/tex/xelatex/xltxtra/xltxtra.sty
@@ -0,0 +1,156 @@
+%%
+%% This is file `xltxtra.sty',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% xltxtra.dtx (with options: `package')
+%%
+%% ____________________________
+%% The xltxtra package
+%% (C) 2006 Will Robertson
+%% License information appended
+%%
+%%
+\unless\ifdefined\XeTeXversion
+ \@latex@error{^^J
+ *************************************************^^J
+ *** The xltxtra package only works with XeTeX ***^^J
+ *************************************************}
+\fi
+\ProvidesPackage{xltxtra}
+ [2006/06/08 v0.1 Improvements for the XeTeX/LaTeX format]
+\newcommand*\TeXlogospacing[5]{%
+ \DeclareRobustCommand\TeX{%
+ \leavevmode
+ \smash{%
+ T\kern#1
+ \lower#3\hbox{E}\kern#2 X}%
+ \spacefactor1000\relax}
+ \DeclareRobustCommand{\LaTeX}{%
+ \leavevmode
+ \smash{
+ L\kern#4%
+ {\sbox\z@ T%
+ \vbox to\ht\z@{\hbox{\check@mathfonts
+ \fontsize\sf@size\z@
+ \math@fontsfalse\selectfont
+ A}%
+ \vss}%
+ }%
+ \kern#5%
+ \TeX}}
+ \DeclareRobustCommand\XeTeX{%
+ \leavevmode
+ \smash{%
+ X\lower #3
+ \hbox{\kern #2
+ \ifnum\XeTeXcharglyph"018E > 0
+ \char"018E\relax
+ \else\ifdim\fontdimen1\font=0pt
+ \reflectbox{E}%
+ \else % rotation is about the origin, so we need to adjust positioning
+ \XeTeXuseglyphmetrics=1%
+ \setbox0=\hbox{E}\dimen0=\ht0\advance\dimen0by\dp0%
+ \raise\dimen0\hbox{\rotatebox{180}{\box0}}%
+ \fi\fi
+ }\kern#1\TeX}}}
+\TeXlogospacing{-0.15em}{-0.15em}{0.5ex}{-0.36em}{-0.15em}
+\RequirePackage{etex}
+\RequirePackage{fixltx2e}[2006/03/24]
+\newcommand*\robust@let@nc[2]{%
+ \expandafter\let\expandafter#1\csname #2 \endcsname}
+\DeclareRobustCommand{\-}{%
+ \discretionary{%
+ \char\ifnum\hyphenchar\font<\z@
+ \xlx@defaulthyphenchar
+ \else
+ \hyphenchar\font
+ \fi}{}{}}
+\def\xlx@defaulthyphenchar{`\-}
+\robust@let@nc\faketextsubscript{textsubscript}
+\robust@let@nc\faketextsuperscript{textsuperscript}
+\DeclareRobustCommand*\textsubscript{%
+ \@ifstar{\faketextsubscript}{\@@textsubscript}}
+\newcommand\@@textsubscript[1]{%
+ \begingroup
+ \c@zf@script 1818326126\relax
+ \font\zf@basefont="\csname zf@family@fontdef\f@family\endcsname" at \f@size pt
+ \zf@set@font@type
+ \ifzf@atsui
+ \zf@make@aat@feature@string{10}{2}%
+ \unless\ifx\zf@thisfontfeature\@empty
+ {\addfontfeature{VerticalPosition=Inferior}#1}%
+ \else
+ \faketextsubscript{#1}%
+ \fi
+ \fi
+ \ifzf@icu
+ \zf@check@ot@feat{+subs}%
+ \if@tempswa
+ {\addfontfeature{VerticalPosition=Inferior}#1}%
+ \else
+ \zf@check@ot@feat{+sinf}%
+ \if@tempswa
+ {\addfontfeature{VerticalPosition=ScientificInferior}#1}%
+ \else
+ \faketextsubscript{#1}%
+ \fi
+ \fi
+ \fi
+ \endgroup}
+\DeclareRobustCommand*\textsuperscript{%
+ \@ifstar{\faketextsuperscript}{\@@textsuperscript}}
+\newcommand\@@textsuperscript[1]{%
+ \begingroup
+ \c@zf@script 1818326126\relax
+ \font\zf@basefont="\csname zf@family@fontdef\f@family\endcsname" at \f@size pt
+ \zf@set@font@type
+ \ifzf@atsui
+ \zf@make@aat@feature@string{10}{1}%
+ \unless\ifx\zf@thisfontfeature\@empty
+ {\addfontfeature{VerticalPosition=Superior}#1}%
+ \else
+ \faketextsuperscript{#1}%
+ \fi
+ \fi
+ \ifzf@icu
+ \zf@check@ot@feat{+sups}%
+ \if@tempswa
+ {\addfontfeature{VerticalPosition=Superior}#1}%
+ \else
+ \faketextsuperscript{#1}%
+ \fi
+ \fi
+ \endgroup}
+\newcommand*\vfrac[2]{%
+ \begingroup
+ \c@zf@script 1818326126\relax
+ \font\zf@basefont="\csname zf@family@fontdef\f@family\endcsname" at \f@size pt
+ \zf@set@font@type
+ \ifzf@atsui
+ {\addfontfeature{VerticalPosition=Superior}#1}%
+ \textfractionsolidus
+ {\addfontfeature{VerticalPosition=Inferior}#2}%
+ \fi
+ \ifzf@icu
+ {\addfontfeature{VerticalPosition=Numerator}#1}%
+ \textfractionsolidus
+ {\addfontfeature{VerticalPosition=Denominator}#2}%
+ \fi
+ \endgroup}
+%%
+%% Copyright (C) 2006 by Will Robertson <wspr81@gmail.com>
+%%
+%% Distributable under the LaTeX Project Public License,
+%% version 1.3b or higher (your choice). The latest version of
+%% this license is at: http://www.latex-project.org/lppl.txt
+%%
+%% This work is "maintained" (as per LPPL maintenance status)
+%% by Will Robertson.
+%%
+%% This work consists of the file xltxtra.dtx
+%% and the derived files xltxtra.sty and xltxtra.pdf.
+%%
+%%
+%% End of file `xltxtra.sty'.