summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/source/latex/glossaries
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2010-07-11 01:01:04 +0000
committerKarl Berry <karl@freefriends.org>2010-07-11 01:01:04 +0000
commita244b7a21a9c64e40eca4fcbb4c3603abb8e5eba (patch)
tree3f50deda0482cbd948f86a9c347629cd9a611ea5 /Master/texmf-dist/source/latex/glossaries
parente809aa65617c1c3929bc38a59f37a4a0d0c6822c (diff)
glossaries 2.07 (10jul10)
git-svn-id: svn://tug.org/texlive/trunk@19358 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/source/latex/glossaries')
-rw-r--r--Master/texmf-dist/source/latex/glossaries/glossaries.dtx14
-rw-r--r--Master/texmf-dist/source/latex/glossaries/glossaries.ins98
-rw-r--r--Master/texmf-dist/source/latex/glossaries/glossaries.sty3442
3 files changed, 107 insertions, 3447 deletions
diff --git a/Master/texmf-dist/source/latex/glossaries/glossaries.dtx b/Master/texmf-dist/source/latex/glossaries/glossaries.dtx
index 4d9e85e4c5a..43a001e0367 100644
--- a/Master/texmf-dist/source/latex/glossaries/glossaries.dtx
+++ b/Master/texmf-dist/source/latex/glossaries/glossaries.dtx
@@ -26,7 +26,7 @@
% -author "Nicola Talbot"
% -codetitle "Glossaries Documented Code"
% glossaries
-% Created on 2010/6/14 13:44
+% Created on 2010/7/10 12:21
%\fi
%\iffalse
%<*package>
@@ -102,7 +102,7 @@
%\MakeShortVerb{"}
%\DeleteShortVerb{\|}
%
-% \title{glossaries.sty v2.06:
+% \title{glossaries.sty v2.07:
% \LaTeXe\ Package to Assist Generating Glossaries}
% \author{Nicola L.C. Talbot\\[10pt]
%School of Computing Sciences\\
@@ -111,7 +111,7 @@
%NR4 7TJ. United Kingdom.\\
%\url{http://theoval.cmp.uea.ac.uk/~nlct/}}
%
-% \date{2010-06-14}
+% \date{2010-07-10}
% \maketitle
%
%This is the user manual for the \styfmt{glossaries} package. Other
@@ -5145,7 +5145,7 @@
% This package requires \LaTeXe.
% \begin{macrocode}
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{glossaries}[2010/06/14 v2.06 (NLCT)]
+\ProvidesPackage{glossaries}[2010/07/10 v2.07 (NLCT)]
% \end{macrocode}
% Required packages:
% \begin{macrocode}
@@ -11147,7 +11147,11 @@ counter as its value}}{%
% \cs{glsaddall}:
% \begin{macrocode}
\define@key{glossadd}{counter}{\def\@gls@counter{#1}}
-\define@key{glossadd}{format}{\def\@glo@format{#1}}
+% \end{macrocode}
+%\changes{2.07}{2010 Jul 10}{glssadd format key stored in \cs{@glsnumberformat}
+%(was mistakenly stored in \cs{@glo@format})}
+% \begin{macrocode}
+\define@key{glossadd}{format}{\def\@glsnumberformat{#1}}
% \end{macrocode}
% This key is only used by \cs{glsaddall}:
% \begin{macrocode}
diff --git a/Master/texmf-dist/source/latex/glossaries/glossaries.ins b/Master/texmf-dist/source/latex/glossaries/glossaries.ins
new file mode 100644
index 00000000000..86a04b70a07
--- /dev/null
+++ b/Master/texmf-dist/source/latex/glossaries/glossaries.ins
@@ -0,0 +1,98 @@
+% glossaries.ins generated using makedtx version 0.94b 2010/7/10 12:21
+\input docstrip
+
+\preamble
+
+ glossaries.dtx
+ Copyright 2010 Nicola Talbot
+
+ This work may be distributed and/or modified under the
+ conditions of the LaTeX Project Public License, either version 1.3
+ of this license of (at your option) any later version.
+ The latest version of this license is in
+ http://www.latex-project.org/lppl.txt
+ and version 1.3 or later is part of all distributions of LaTeX
+ version 2005/12/01 or later.
+
+ This work has the LPPL maintenance status `maintained'.
+
+ The Current Maintainer of this work is Nicola Talbot.
+
+ This work consists of the files glossaries.dtx and glossaries.ins and the derived files glossaries.sty, mfirstuc.sty, glossary-hypernav.sty, glossary-list.sty, glossary-long.sty, glossary-longragged.sty, glossary-super.sty, glossary-superragged.sty, glossary-tree.sty, glossaries-accsupp.sty, glossaries-babel.sty, glossaries-polyglossia.sty, glossaries-dictionary-Brazilian.dict, glossaries-dictionary-Danish.dict, glossaries-dictionary-Dutch.dict, glossaries-dictionary-English.dict, glossaries-dictionary-French.dict, glossaries-dictionary-German.dict, glossaries-dictionary-Irish.dict, glossaries-dictionary-Italian.dict, glossaries-dictionary-Magyar.dict, glossaries-dictionary-Polish.dict, glossaries-dictionary-Serbian.dict, glossaries-dictionary-Spanish.dict, minimalgls.tex, sample-custom-acronym.tex, sample.tex, sample4col.tex, sampleaccsupp.tex, sampleAcr.tex, sampleAcrDesc.tex, sampleacronyms.tex, sampleDB.tex, sampleDesc.tex, sampleEq.tex, sampleEqPg.tex, sampleNtn.tex, sampleSec.tex, sampletree.tex, sampleutf8.tex, samplexdy.tex, samplexdy-mc.xdy, database1.tex, database2.tex, glossaries.perl.
+
+\endpreamble
+
+\askforoverwritefalse
+
+\generate{\file{glossaries.sty}{\usepreamble\defaultpreamble
+\usepostamble\defaultpostamble\from{glossaries.dtx}{glossaries.sty,package}}
+\file{mfirstuc.sty}{\usepreamble\defaultpreamble
+\usepostamble\defaultpostamble\from{glossaries.dtx}{mfirstuc.sty,package}}
+\file{glossary-hypernav.sty}{\usepreamble\defaultpreamble
+\usepostamble\defaultpostamble\from{glossaries.dtx}{glossary-hypernav.sty,package}}
+\file{glossary-list.sty}{\usepreamble\defaultpreamble
+\usepostamble\defaultpostamble\from{glossaries.dtx}{glossary-list.sty,package}}
+\file{glossary-long.sty}{\usepreamble\defaultpreamble
+\usepostamble\defaultpostamble\from{glossaries.dtx}{glossary-long.sty,package}}
+\file{glossary-longragged.sty}{\usepreamble\defaultpreamble
+\usepostamble\defaultpostamble\from{glossaries.dtx}{glossary-longragged.sty,package}}
+\file{glossary-super.sty}{\usepreamble\defaultpreamble
+\usepostamble\defaultpostamble\from{glossaries.dtx}{glossary-super.sty,package}}
+\file{glossary-superragged.sty}{\usepreamble\defaultpreamble
+\usepostamble\defaultpostamble\from{glossaries.dtx}{glossary-superragged.sty,package}}
+\file{glossary-tree.sty}{\usepreamble\defaultpreamble
+\usepostamble\defaultpostamble\from{glossaries.dtx}{glossary-tree.sty,package}}
+\file{glossaries-accsupp.sty}{\usepreamble\defaultpreamble
+\usepostamble\defaultpostamble\from{glossaries.dtx}{glossaries-accsupp.sty,package}}
+\file{glossaries-babel.sty}{\usepreamble\defaultpreamble
+\usepostamble\defaultpostamble\from{glossaries.dtx}{glossaries-babel.sty,package}}
+\file{glossaries-polyglossia.sty}{\usepreamble\defaultpreamble
+\usepostamble\defaultpostamble\from{glossaries.dtx}{glossaries-polyglossia.sty,package}}
+\file{glossaries-dictionary-Brazilian.dict}{\usepreamble\defaultpreamble
+\usepostamble\defaultpostamble\from{glossaries.dtx}{glossaries-dictionary-Brazilian.dict,package}}
+\file{glossaries-dictionary-Danish.dict}{\usepreamble\defaultpreamble
+\usepostamble\defaultpostamble\from{glossaries.dtx}{glossaries-dictionary-Danish.dict,package}}
+\file{glossaries-dictionary-Dutch.dict}{\usepreamble\defaultpreamble
+\usepostamble\defaultpostamble\from{glossaries.dtx}{glossaries-dictionary-Dutch.dict,package}}
+\file{glossaries-dictionary-English.dict}{\usepreamble\defaultpreamble
+\usepostamble\defaultpostamble\from{glossaries.dtx}{glossaries-dictionary-English.dict,package}}
+\file{glossaries-dictionary-French.dict}{\usepreamble\defaultpreamble
+\usepostamble\defaultpostamble\from{glossaries.dtx}{glossaries-dictionary-French.dict,package}}
+\file{glossaries-dictionary-German.dict}{\usepreamble\defaultpreamble
+\usepostamble\defaultpostamble\from{glossaries.dtx}{glossaries-dictionary-German.dict,package}}
+\file{glossaries-dictionary-Irish.dict}{\usepreamble\defaultpreamble
+\usepostamble\defaultpostamble\from{glossaries.dtx}{glossaries-dictionary-Irish.dict,package}}
+\file{glossaries-dictionary-Italian.dict}{\usepreamble\defaultpreamble
+\usepostamble\defaultpostamble\from{glossaries.dtx}{glossaries-dictionary-Italian.dict,package}}
+\file{glossaries-dictionary-Magyar.dict}{\usepreamble\defaultpreamble
+\usepostamble\defaultpostamble\from{glossaries.dtx}{glossaries-dictionary-Magyar.dict,package}}
+\file{glossaries-dictionary-Polish.dict}{\usepreamble\defaultpreamble
+\usepostamble\defaultpostamble\from{glossaries.dtx}{glossaries-dictionary-Polish.dict,package}}
+\file{glossaries-dictionary-Serbian.dict}{\usepreamble\defaultpreamble
+\usepostamble\defaultpostamble\from{glossaries.dtx}{glossaries-dictionary-Serbian.dict,package}}
+\file{glossaries-dictionary-Spanish.dict}{\usepreamble\defaultpreamble
+\usepostamble\defaultpostamble\from{glossaries.dtx}{glossaries-dictionary-Spanish.dict,package}}
+\file{minimalgls.tex}{\nopreamble\nopostamble\from{glossaries.dtx}{minimalgls.tex}}
+\file{sample-custom-acronym.tex}{\nopreamble\nopostamble\from{glossaries.dtx}{sample-custom-acronym.tex}}
+\file{sample.tex}{\nopreamble\nopostamble\from{glossaries.dtx}{sample.tex}}
+\file{sample4col.tex}{\nopreamble\nopostamble\from{glossaries.dtx}{sample4col.tex}}
+\file{sampleaccsupp.tex}{\nopreamble\nopostamble\from{glossaries.dtx}{sampleaccsupp.tex}}
+\file{sampleAcr.tex}{\nopreamble\nopostamble\from{glossaries.dtx}{sampleAcr.tex}}
+\file{sampleAcrDesc.tex}{\nopreamble\nopostamble\from{glossaries.dtx}{sampleAcrDesc.tex}}
+\file{sampleacronyms.tex}{\nopreamble\nopostamble\from{glossaries.dtx}{sampleacronyms.tex}}
+\file{sampleDB.tex}{\nopreamble\nopostamble\from{glossaries.dtx}{sampleDB.tex}}
+\file{sampleDesc.tex}{\nopreamble\nopostamble\from{glossaries.dtx}{sampleDesc.tex}}
+\file{sampleEq.tex}{\nopreamble\nopostamble\from{glossaries.dtx}{sampleEq.tex}}
+\file{sampleEqPg.tex}{\nopreamble\nopostamble\from{glossaries.dtx}{sampleEqPg.tex}}
+\file{sampleNtn.tex}{\nopreamble\nopostamble\from{glossaries.dtx}{sampleNtn.tex}}
+\file{sampleSec.tex}{\nopreamble\nopostamble\from{glossaries.dtx}{sampleSec.tex}}
+\file{sampletree.tex}{\nopreamble\nopostamble\from{glossaries.dtx}{sampletree.tex}}
+\file{sampleutf8.tex}{\nopreamble\nopostamble\from{glossaries.dtx}{sampleutf8.tex}}
+\file{samplexdy.tex}{\nopreamble\nopostamble\from{glossaries.dtx}{samplexdy.tex}}
+\file{samplexdy-mc.xdy}{\nopreamble\nopostamble\from{glossaries.dtx}{samplexdy-mc.xdy}}
+\file{database1.tex}{\nopreamble\nopostamble\from{glossaries.dtx}{database1.tex}}
+\file{database2.tex}{\nopreamble\nopostamble\from{glossaries.dtx}{database2.tex}}
+\file{glossaries.perl}{\nopreamble\nopostamble\from{glossaries.dtx}{glossaries.perl}}
+}
+
+\endbatchfile
diff --git a/Master/texmf-dist/source/latex/glossaries/glossaries.sty b/Master/texmf-dist/source/latex/glossaries/glossaries.sty
deleted file mode 100644
index b1cfd0b2f65..00000000000
--- a/Master/texmf-dist/source/latex/glossaries/glossaries.sty
+++ /dev/null
@@ -1,3442 +0,0 @@
-%%
-%% This is file `glossaries.sty',
-%% generated with the docstrip utility.
-%%
-%% The original source files were:
-%%
-%% glossaries.dtx (with options: `glossaries.sty,package')
-%%
-%% glossaries.dtx
-%% Copyright 2010 Nicola Talbot
-%%
-%% This work may be distributed and/or modified under the
-%% conditions of the LaTeX Project Public License, either version 1.3
-%% of this license of (at your option) any later version.
-%% The latest version of this license is in
-%% http://www.latex-project.org/lppl.txt
-%% and version 1.3 or later is part of all distributions of LaTeX
-%% version 2005/12/01 or later.
-%%
-%% This work has the LPPL maintenance status `maintained'.
-%%
-%% The Current Maintainer of this work is Nicola Talbot.
-%%
-%% This work consists of the files glossaries.dtx and glossaries.ins and the derived files glossaries.sty, mfirstuc.sty, glossary-hypernav.sty, glossary-list.sty, glossary-long.sty, glossary-longragged.sty, glossary-super.sty, glossary-superragged.sty, glossary-tree.sty, glossaries-accsupp.sty, glossaries-babel.sty, glossaries-polyglossia.sty, glossaries-dictionary-Brazilian.dict, glossaries-dictionary-Danish.dict, glossaries-dictionary-Dutch.dict, glossaries-dictionary-English.dict, glossaries-dictionary-French.dict, glossaries-dictionary-German.dict, glossaries-dictionary-Irish.dict, glossaries-dictionary-Italian.dict, glossaries-dictionary-Magyar.dict, glossaries-dictionary-Polish.dict, glossaries-dictionary-Serbian.dict, glossaries-dictionary-Spanish.dict, minimalgls.tex, sample-custom-acronym.tex, sample.tex, sample4col.tex, sampleaccsupp.tex, sampleAcr.tex, sampleAcrDesc.tex, sampleacronyms.tex, sampleDB.tex, sampleDesc.tex, sampleEq.tex, sampleEqPg.tex, sampleNtn.tex, sampleSec.tex, sampletree.tex, sampleutf8.tex, samplexdy.tex, samplexdy-mc.xdy, database1.tex, database2.tex, glossaries.perl.
-%%
-%% \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 \~}
-\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{glossaries}[2010/06/14 v2.06 (NLCT)]
-\RequirePackage{ifthen}
-\RequirePackage{xkeyval}[2006/11/18]
-\RequirePackage{mfirstuc}
-\RequirePackage{xfor}
-\RequirePackage{amsgen}
-\define@boolkey{glossaries.sty}[gls]{toc}[true]{}
-\define@boolkey{glossaries.sty}[gls]{numberline}[true]{}
-\@ifundefined{chapter}{\newcommand*{\@@glossarysec}{section}}{%
- \newcommand*{\@@glossarysec}{chapter}}
-\define@choicekey{glossaries.sty}{section}{part,chapter,section,%
-subsection,subsubsection,paragraph,subparagraph}[section]{%
- \renewcommand*{\@@glossarysec}{#1}}
-\newcommand*{\@@glossarysecstar}{*}
-\newcommand*{\@@glossaryseclabel}{}
-\newcommand*{\glsautoprefix}{}
-\define@choicekey{glossaries.sty}{numberedsection}[\val\nr]{%
-false,nolabel,autolabel}[nolabel]{%
- \ifcase\nr\relax
- \renewcommand*{\@@glossarysecstar}{*}%
- \renewcommand*{\@@glossaryseclabel}{}%
- \or
- \renewcommand*{\@@glossarysecstar}{}%
- \renewcommand*{\@@glossaryseclabel}{}%
- \or
- \renewcommand*{\@@glossarysecstar}{}%
- \renewcommand*{\@@glossaryseclabel}{%
- \label{\glsautoprefix\@glo@type}}%
- \fi
-}
-\newcommand*{\@glossary@default@style}{list}
-\define@key{glossaries.sty}{style}{%
-\renewcommand*{\@glossary@default@style}{#1}}
-\newcommand*{\glossaryentrynumbers}[1]{#1}
-\DeclareOptionX{nonumberlist}{%
-\renewcommand*{\glossaryentrynumbers}[1]{}}
-\newcommand*{\@gls@loadlong}{\RequirePackage{glossary-long}}
-\DeclareOptionX{nolong}{\renewcommand*{\@gls@loadlong}{}}
-\IfFileExists{supertabular.sty}{%
- \newcommand*{\@gls@loadsuper}{\RequirePackage{glossary-super}}}{%
- \newcommand*{\@gls@loadsuper}{}}
-\DeclareOptionX{nosuper}{\renewcommand*{\@gls@loadsuper}{}}
-\newcommand*{\@gls@loadlist}{\RequirePackage{glossary-list}}
-\DeclareOptionX{nolist}{\renewcommand*{\@gls@loadlist}{}}
-\newcommand*{\@gls@loadtree}{\RequirePackage{glossary-tree}}
-\DeclareOptionX{notree}{\renewcommand*{\@gls@loadtree}{}}
-\DeclareOptionX{nostyles}{%
- \renewcommand*{\@gls@loadlong}{}%
- \renewcommand*{\@gls@loadsuper}{}%
- \renewcommand*{\@gls@loadlist}{}%
- \renewcommand*{\@gls@loadtree}{}%
- \let\@glossary@default@style\relax
-}
-\newcommand*{\glsdefmain}{%
- \newglossary{main}{gls}{glo}{\glossaryname}%
-}
-\newcommand*{\glsdefaulttype}{main}
-\newcommand*{\acronymtype}{\glsdefaulttype}
-\DeclareOptionX{nomain}{%
- \let\glsdefaulttype\relax
- \renewcommand*{\glsdefmain}{}%
-}
-\define@boolkey{glossaries.sty}[gls]{acronym}[true]{%
- \DeclareAcronymList{acronym}%
-}
-\newcommand*{\@glsacronymlists}{}
-\newcommand*{\@addtoacronymlists}[1]{%
- \ifx\@glsacronymlists\@empty
- \protected@xdef\@glsacronymlists{#1}%
- \else
- \protected@xdef\@glsacronymlists{\@glsacronymlists,#1}%
- \fi
-}
-\newcommand*{\DeclareAcronymList}[1]{%
- \glsIfListOfAcronyms{#1}{}{\@addtoacronymlists{#1}}%
-}
-\newcommand{\glsIfListOfAcronyms}[1]{%
- \edef\@do@gls@islistofacronyms{%
- \noexpand\@gls@islistofacronyms{#1}{\@glsacronymlists}}%
- \@do@gls@islistofacronyms
-}
-\newcommand{\@gls@islistofacronyms}[4]{%
- \def\gls@islistofacronyms##1,#1,##2\end@gls@islistofacronyms{%
- \def\@before{##1}\def\@after{##2}}%
- \gls@islistofacronyms,#2,#1,\@nil\end@gls@islistofacronyms
- \ifx\@after\@nnil
- #4%
- \else
- #3%
- \fi
-}
-\newif\if@glsisacronymlist
-\newcommand*{\gls@checkisacronymlist}[1]{%
- \glsIfListOfAcronyms{#1}%
- {\@glsisacronymlisttrue}{\@glsisacronymlistfalse}%
-}
-\newcommand*{\SetAcronymLists}[1]{%
- \renewcommand*{\@glsacronymlists}{#1}%
-}
-\define@key{glossaries.sty}{acronymlists}{%
- \@addtoacronymlists{#1}%
-}
-\newcommand{\glscounter}{page}
-\define@key{glossaries.sty}{counter}{%
- \renewcommand*{\glscounter}{#1}%
-}
-\newcommand*{\@gls@sanitizedesc}{\@onelevel@sanitize\@glo@desc}
-\newcommand*{\@gls@sanitizename}{\@onelevel@sanitize\@glo@name}
-\newcommand*{\@gls@sanitizesymbol}{\@onelevel@sanitize\@glo@symbol}
-\define@boolkey[gls]{sanitize}{description}[true]{%
-\ifgls@sanitize@description
- \renewcommand*{\@gls@sanitizedesc}{\@onelevel@sanitize\@glo@desc}%
-\else
- \renewcommand*{\@gls@sanitizedesc}{}%
-\fi
-}
-\define@boolkey[gls]{sanitize}{name}[true]{%
-\ifgls@sanitize@name
- \renewcommand*{\@gls@sanitizename}{\@onelevel@sanitize\@glo@name}%
-\else
- \renewcommand*{\@gls@sanitizename}{}%
-\fi}
-\define@boolkey[gls]{sanitize}{symbol}[true]{%
-\ifgls@sanitize@symbol
- \renewcommand*{\@gls@sanitizesymbol}{%
-\@onelevel@sanitize\@glo@symbol}%
-\else
- \renewcommand*{\@gls@sanitizesymbol}{}%
-\fi}
-\define@key{glossaries.sty}{sanitize}[description=true,symbol=true,
-name=true]{%
-\ifthenelse{\equal{#1}{none}}{%
-\renewcommand*{\@gls@sanitizedesc}{}%
-\renewcommand*{\@gls@sanitizename}{}%
-\renewcommand*{\@gls@sanitizesymbol}{}%
-}{\setkeys[gls]{sanitize}{#1}}%
-}
-\define@boolkey{glossaries.sty}[gls]{translate}[true]{}
-\glstranslatefalse
-\@ifpackageloaded{translator}{\glstranslatetrue}{%
-\@ifpackageloaded{babel}{\glstranslatetrue}{%
-\@ifpackageloaded{polyglossia}{\glstranslatetrue}{}}}
-\define@boolkey{glossaries.sty}[gls]{hyperfirst}[true]{}
-\glshyperfirsttrue
-\define@boolkey{glossaries.sty}[glsacr]{footnote}[true]{%
-\ifthenelse{\boolean{glsacrdescription}}{}%
-{\renewcommand*{\@gls@sanitizedesc}{}}%
-}
-\define@boolkey{glossaries.sty}[glsacr]{description}[true]{%
- \renewcommand*{\@gls@sanitizesymbol}{}%
-}
-\define@boolkey{glossaries.sty}[glsacr]{smallcaps}[true]{%
- \renewcommand*{\@gls@sanitizesymbol}{}%
-}
-\define@boolkey{glossaries.sty}[glsacr]{smaller}[true]{%
- \renewcommand*{\@gls@sanitizesymbol}{}%
-}
-\define@boolkey{glossaries.sty}[glsacr]{dua}[true]{%
- \renewcommand*{\@gls@sanitizesymbol}{}%
-}
-\define@boolkey{glossaries.sty}[glsacr]{shortcuts}[true]{}
-\newcommand*{\glsorder}{word}
-\newcommand*{\@glsorder}[1]{}
-\define@choicekey{glossaries.sty}{order}{word,letter}{%
- \def\glsorder{#1}}
-\newif\ifglsxindy
-\glsxindyfalse
-\DeclareOptionX{makeindex}{\glsxindyfalse}
-\define@boolkey[gls]{xindy}{glsnumbers}[true]{}
-\gls@xindy@glsnumberstrue
-\def\@xdy@main@language{\rootlanguagename}%
-\define@key[gls]{xindy}{language}{\def\@xdy@main@language{#1}}
-\@ifundefined{inputencodingname}{%
- \def\gls@codepage{}}{%
- \def\gls@codepage{\inputencodingname}
-}
-\define@key[gls]{xindy}{codepage}{\def\gls@codepage{#1}}
-\define@key{glossaries.sty}{xindy}[]{%
- \glsxindytrue
- \setkeys[gls]{xindy}{#1}%
-}
-\newcommand*{\GlossariesWarning}[1]{%
- \PackageWarning{glossaries}{#1}%
-}
-\newcommand*{\GlossariesWarningNoLine}[1]{%
- \PackageWarningNoLine{glossaries}{#1}%
-}
-\DeclareOptionX{nowarn}{%
- \renewcommand*{\GlossariesWarning}[1]{}%
- \renewcommand*{\GlossariesWarningNoLine}[1]{}%
-}
-\ProcessOptionsX
-\ifglstranslate
- \@ifpackageloaded{babel}{\IfFileExists{translator.sty}{%
- \RequirePackage{translator}}{}}{}
-\fi
-\ifthenelse{\equal{\glscounter}{section}}{%
-\@ifundefined{chapter}{}{%
-\let\@gls@old@chapter\@chapter
-\def\@chapter[#1]#2{\@gls@old@chapter[{#1}]{#2}%
-\@ifundefined{hyperdef}{}{\hyperdef{section}{\thesection}{}}}}}{}
-\newcommand*{\@gls@onlypremakeg}{}
-\newcommand*{\@onlypremakeg}[1]{%
-\ifx\@gls@onlypremakeg\@empty
- \def\@gls@onlypremakeg{#1}%
-\else
- \expandafter\toks@\expandafter{\@gls@onlypremakeg}%
- \edef\@gls@onlypremakeg{\the\toks@,\noexpand#1}%
-\fi}
-\newcommand*{\@disable@onlypremakeg}{%
-\@for\@thiscs:=\@gls@onlypremakeg\do{%
- \expandafter\@disable@premakecs\@thiscs%
-}}
-\newcommand*{\@disable@premakecs}[1]{%
- \def#1{\PackageError{glossaries}{\string#1\space may only be
- used before \string\makeglossaries}{You can't use
- \string#1\space after \string\makeglossaries}}%
-}
-\providecommand*{\glossaryname}{Glossary}
-\providecommand*{\acronymname}{Acronyms}
-\newcommand*{\glssettoctitle}[1]{%
-\def\glossarytoctitle{\csname @glotype@#1@title\endcsname}}
-\providecommand*{\entryname}{Notation}
-\providecommand*{\descriptionname}{Description}
-\providecommand*{\symbolname}{Symbol}
-\providecommand*{\pagelistname}{Page List}
-\providecommand*{\glssymbolsgroupname}{Symbols}
-\providecommand*{\glsnumbersgroupname}{Numbers}
-\newcommand*{\glspluralsuffix}{s}
-\providecommand*{\seename}{see}
-\providecommand*{\andname}{\&}
-\newcommand*{\addglossarytocaptions}[1]{%
- \@ifundefined{captions#1}{}{%
- \expandafter\let\expandafter\@gls@tmp\csname captions#1\endcsname
- \expandafter\toks@\expandafter{\@gls@tmp
- \renewcommand*{\glossaryname}{\translate{Glossary}}%
- }%
- \expandafter\edef\csname captions#1\endcsname{\the\toks@}%
- }%
-}
-\ifglstranslate
- \@ifpackageloaded{translator}{%
- \usedictionary{glossaries-dictionary}%
- \addglossarytocaptions{portuges}%
- \addglossarytocaptions{portuguese}%
- \addglossarytocaptions{brazil}%
- \addglossarytocaptions{brazilian}%
- \addglossarytocaptions{danish}%
- \addglossarytocaptions{dutch}%
- \addglossarytocaptions{afrikaans}%
- \addglossarytocaptions{english}%
- \addglossarytocaptions{UKenglish}%
- \addglossarytocaptions{USenglish}%
- \addglossarytocaptions{american}%
- \addglossarytocaptions{australian}%
- \addglossarytocaptions{british}%
- \addglossarytocaptions{canadian}%
- \addglossarytocaptions{newzealand}%
- \addglossarytocaptions{french}%
- \addglossarytocaptions{frenchb}%
- \addglossarytocaptions{francais}%
- \addglossarytocaptions{acadian}%
- \addglossarytocaptions{canadien}%
- \addglossarytocaptions{german}%
- \addglossarytocaptions{germanb}%
- \addglossarytocaptions{austrian}%
- \addglossarytocaptions{naustrian}%
- \addglossarytocaptions{ngerman}%
- \addglossarytocaptions{irish}%
- \addglossarytocaptions{italian}%
- \addglossarytocaptions{magyar}%
- \addglossarytocaptions{hungarian}%
- \addglossarytocaptions{polish}%
- \addglossarytocaptions{spanish}%
- \renewcommand*{\glssettoctitle}[1]{%
- \ifthenelse{\equal{#1}{main}}{%
- \translatelet{\glossarytoctitle}{Glossary}}{%
- \ifthenelse{\equal{#1}{acronym}}{%
- \translatelet{\glossarytoctitle}{Acronyms}}{%
- \def\glossarytoctitle{\csname @glotype@#1@title\endcsname}}}}%
- \renewcommand*{\glossaryname}{\translate{Glossary}}%
- \renewcommand*{\acronymname}{\translate{Acronyms}}%
- \renewcommand*{\entryname}{\translate{Notation (glossaries)}}%
- \renewcommand*{\descriptionname}{%
- \translate{Description (glossaries)}}%
- \renewcommand*{\symbolname}{\translate{Symbol (glossaries)}}%
- \renewcommand*{\pagelistname}{%
- \translate{Page List (glossaries)}}%
- \renewcommand*{\glssymbolsgroupname}{%
- \translate{Symbols (glossaries)}}%
- \renewcommand*{\glsnumbersgroupname}{%
- \translate{Numbers (glossaries)}}%
- }{%
- \@ifpackageloaded{babel}%
- {\RequirePackage{glossaries-babel}}%
- {%
- \@ifpackageloaded{polyglossia}{%
- \RequirePackage{glossaries-polyglossia}}{}%
- }}
-\fi
-\newcommand*{\glspostdescription}{.}
-\newcommand*{\nopostdesc}{}
-\newcommand*{\@nopostdesc}{%
- \let\org@glspostdescription\glspostdescription
- \def\glspostdescription{%
- \let\glspostdescription\org@glspostdescription}%
-}
-\newcommand{\glspar}{\par}
-\ifglsxindy
- \newcommand{\setStyleFile}[1]{%
- \renewcommand{\istfilename}{#1.xdy}}
-\else
- \newcommand{\setStyleFile}[1]{%
- \renewcommand{\istfilename}{#1.ist}}
-\fi
-\@onlypremakeg\setStyleFile
-\ifglsxindy
- \def\istfilename{\jobname.xdy}
-\else
- \def\istfilename{\jobname.ist}
-\fi
-\newcommand*{\@istfilename}[1]{}
-\newcommand*{\glscompositor}{.}
-\newcommand*{\glsSetCompositor}[1]{%
- \renewcommand*{\glscompositor}{#1}}
-\@onlypremakeg\glsSetCompositor
-\newcommand*{\@glsAlphacompositor}{\glscompositor}
-\ifglsxindy
- \newcommand*\glsSetAlphaCompositor[1]{%
- \renewcommand*\@glsAlphacompositor{#1}}
-\else
- \newcommand*\glsSetAlphaCompositor[1]{%
- \glsnoxindywarning\glsSetAlphaCompositor}
-\fi
-\@onlypremakeg\glsSetAlphaCompositor
-\newcommand*{\gls@suffixF}{}
-\newcommand*{\glsSetSuffixF}[1]{%
- \renewcommand*{\gls@suffixF}{#1}}
-\@onlypremakeg\glsSetSuffixF
-\newcommand*{\gls@suffixFF}{}
-\newcommand*{\glsSetSuffixFF}[1]{%
- \renewcommand*{\gls@suffixFF}{#1}}
-\@ifundefined{hyperlink}{%
-\newcommand*{\glsnumberformat}[1]{#1}}{%
-\newcommand*{\glsnumberformat}[1]{\glshypernumber{#1}}}
-\newcommand{\delimN}{, }
-\newcommand{\delimR}{--}
-\newcommand*{\glossarypreamble}{}
-\newcommand*{\glossarypostamble}{}
-\newcommand*{\glossarysection}[2][\@gls@title]{%
- \def\@gls@title{#2}%
- \@ifundefined{phantomsection}{%
- \@glossarysection{#1}{#2}}{\@p@glossarysection{#1}{#2}}%
- \glossarymark{\glossarytoctitle}%
-}
-\@ifundefined{glossarymark}{%
- \newcommand{\glossarymark}[1]{\@mkboth{#1}{#1}}
-}{%
- \GlossariesWarning{overriding \string\glossarymark}%
- \@ifclassloaded{memoir}%
- {
- \renewcommand{\glossarymark}[1]{%
- \markboth{\memUChead{#1}}{\memUChead{#1}}%
- }
- }
- {
- \renewcommand{\glossarymark}[1]{\@mkboth{#1}{#1}}
- }
-}
-\newcommand*{\setglossarysection}[1]{%
-\setkeys{glossaries.sty}{section=#1}}
-\newcommand*{\@glossarysection}[2]{%
-\ifx\@@glossarysecstar\@empty
- \csname\@@glossarysec\endcsname{#2}%
-\else
- \csname\@@glossarysec\endcsname*{#2}%
- \@gls@toc{#1}{\@@glossarysec}%
-\fi
-\@@glossaryseclabel}
-\newcommand*{\@p@glossarysection}[2]{%
-\glsclearpage
-\phantomsection
-\ifx\@@glossarysecstar\@empty
- \csname\@@glossarysec\endcsname{#2}%
-\else
- \@gls@toc{#1}{\@@glossarysec}%
- \csname\@@glossarysec\endcsname*{#2}%
-\fi
-\@@glossaryseclabel}
-\newcommand*{\gls@doclearpage}{%
-\ifthenelse{\equal{\@@glossarysec}{chapter}}{%
-\@ifundefined{cleardoublepage}{\clearpage}{\cleardoublepage}}{}%
-}
-\newcommand*{\glsclearpage}{\gls@doclearpage}
-\newcommand*{\@gls@toc}[2]{%
-\ifglstoc
- \ifglsnumberline
- \addcontentsline{toc}{#2}{\numberline{}#1}%
- \else
- \addcontentsline{toc}{#2}{#1}%
- \fi
-\fi}
-\newcommand*{\glsnoxindywarning}[1]{%
- \GlossariesWarning{Not in xindy mode --- ignoring \string#1}%
-}
-\ifglsxindy
- \edef\@xdyattributes{\string"default\string"}%
-\fi
-\ifglsxindy
- \def\@xdylocref{}
-\fi
-\ifglsxindy
- \newcommand*\GlsAddXdyAttribute[1]{%
- \edef\@xdyattributes{\@xdyattributes ^^J \string"#1\string"}%
- \expandafter\toks@\expandafter{\@xdylocref}%
- \edef\@xdylocref{\the\toks@ ^^J%
- (markup-locref
- :open \string"\string~n\string\setentrycounter
- {\noexpand\glscounter}%
- \expandafter\string\csname#1\endcsname
- \expandafter\@gobble\string\{\string" ^^J
- :close \string"\expandafter\@gobble\string\}\string" ^^J
- :attr \string"#1\string")}}
- \@onlypremakeg\GlsAddXdyAttribute
-\else
- \newcommand*\GlsAddXdyAttribute[1]{%
- \glsnoxindywarning\GlsAddXdyAttribute}
-\fi
-\ifglsxindy
- \GlsAddXdyAttribute{glsnumberformat}
- \GlsAddXdyAttribute{textrm}
- \GlsAddXdyAttribute{textsf}
- \GlsAddXdyAttribute{texttt}
- \GlsAddXdyAttribute{textbf}
- \GlsAddXdyAttribute{textmd}
- \GlsAddXdyAttribute{textit}
- \GlsAddXdyAttribute{textup}
- \GlsAddXdyAttribute{textsl}
- \GlsAddXdyAttribute{textsc}
- \GlsAddXdyAttribute{emph}
- \GlsAddXdyAttribute{glshypernumber}
- \GlsAddXdyAttribute{hyperrm}
- \GlsAddXdyAttribute{hypersf}
- \GlsAddXdyAttribute{hypertt}
- \GlsAddXdyAttribute{hyperbf}
- \GlsAddXdyAttribute{hypermd}
- \GlsAddXdyAttribute{hyperit}
- \GlsAddXdyAttribute{hyperup}
- \GlsAddXdyAttribute{hypersl}
- \GlsAddXdyAttribute{hypersc}
- \GlsAddXdyAttribute{hyperemph}
-\fi
-\def\@xdyuseralphabets{}
-\ifglsxindy
- \newcommand*{\GlsAddXdyAlphabet}[2]{%
- \edef\@xdyuseralphabets{%
- \@xdyuseralphabets ^^J
- (define-alphabet "#1" (#2))}}
-\else
- \newcommand*{\GlsAddXdyAlphabet}[2]{%
- \glsnoxindywarning\GlsAddXdyAlphabet}
-\fi
-\def\@xdyuserlocationdefs{}
-\def\@xdyuserlocationnames{}
-\ifglsxindy
- \newcommand*{\GlsAddXdyLocation}[2]{%
- \edef\@xdyuserlocationdefs{%
- \@xdyuserlocationdefs ^^J%
- (define-location-class \string"#1\string"^^J\space\space
- \space(#2))
- }%
- \edef\@xdyuserlocationnames{%
- \@xdyuserlocationnames^^J\space\space\space
- \string"#1\string"}%
- }
- \@onlypremakeg\GlsAddXdyLocation
-\else
- \newcommand*{\GlsAddXdyLocation}[2]{%
- \glsnoxindywarning\GlsAddXdyLocation}
-\fi
-\ifglsxindy
- \edef\@xdylocationclassorder{^^J\space\space\space
- \string"roman-page-numbers\string"^^J\space\space\space
- \string"arabic-page-numbers\string"^^J\space\space\space
- \string"arabic-section-numbers\string"^^J\space\space\space
- \string"alpha-page-numbers\string"^^J\space\space\space
- \string"Roman-page-numbers\string"^^J\space\space\space
- \string"Alpha-page-numbers\string"^^J\space\space\space
- \string"Appendix-page-numbers\string"
- \@xdyuserlocationnames^^J\space\space\space
- \string"see\string"
- }
-\fi
-\ifglsxindy
- \newcommand*\GlsSetXdyLocationClassOrder[1]{%
- \def\@xdylocationclassorder{#1}}
-\else
- \newcommand*\GlsSetXdyLocationClassOrder[1]{%
- \glsnoxindywarning\GlsSetXdyLocationClassOrder}
-\fi
-\ifglsxindy
- \def\@xdysortrules{}
-\fi
-\ifglsxindy
- \newcommand*\GlsAddSortRule[2]{%
- \expandafter\toks@\expandafter{\@xdysortrules}%
- \protected@edef\@xdysortrules{\the\toks@ ^^J
- (sort-rule \string"#1\string" \string"#2\string")}%
- }
-\else
- \newcommand*\GlsAddSortRule[2]{%
- \glsnoxindywarning\GlsAddSortRule}
-\fi
-\ifglsxindy
- \def\@xdyrequiredstyles{tex}
-\fi
-\ifglsxindy
- \newcommand*\GlsAddXdyStyle[1]{%
- \edef\@xdyrequiredstyles{\@xdyrequiredstyles,#1}}%
-\else
- \newcommand*\GlsAddXdyStyle[1]{%
- \glsnoxindywarning\GlsAddXdyStyle}
-\fi
-\ifglsxindy
- \newcommand*\GlsSetXdyStyles[1]{%
- \edef\@xdyrequiredstyles{#1}}
-\else
- \newcommand*\GlsSetXdyStyles[1]{%
- \glsnoxindywarning\GlsSetXdyStyles}
-\fi
-\ifglsxindy
- \@ifpackageloaded{babel}{%
- \def\findrootlanguage{\begingroup
- \escapechar=-1\relax
- \edef\languagename{%
- \expandafter\string\csname\languagename\endcsname}%
- \def\NeedsTeXFormat##1[##2]{}%
- \def\ProvidesPackage##1[##2]{}%
- \let\LdfInit\relax
- \def\languageattribute##1##2{}%
- \def\DeclareOption##1##2{%
- \ifx##1*\expandafter\endinput\else
- \edef\testlanguage{\expandafter\string\csname##1\endcsname}%
- \ifx\testlanguage\languagename##2\fi
- \fi}
- \def\input##1{\stripldf##1}%
- \def\stripldf##1.ldf{\gdef\rootlanguagename{##1}}%
- \@@input babel.sty
- \endgroup}%
- }{%
- \@ifpackageloaded{ngerman}{%
- \def\findrootlanguage{%
- \def\rootlanguagename{german}}%
- }{%
- \def\findrootlanguage{%
- \def\rootlanguagename{english}}%
- }%
- }%
-\fi
-\def\rootlanguagename{english}
-\def\@xdylanguage#1#2{}
-\ifglsxindy
- \newcommand*\GlsSetXdyLanguage[2][\glsdefaulttype]{%
- \ifglossaryexists{#1}{%
- \expandafter\def\csname @xdy@#1@language\endcsname{#2}%
- }{%
- \PackageError{glossaries}{Can't set language type for
- glossary type `#1' --- no such glossary}{%
- You have specified a glossary type that doesn't exist}}}
-\else
- \newcommand*\GlsSetXdyLanguage[2][]{%
- \glsnoxindywarning\GlsSetXdyLanguage}
-\fi
-\def\@gls@codepage#1#2{}
-\ifglsxindy
- \newcommand*{\GlsSetXdyCodePage}[1]{%
- \renewcommand*{\gls@codepage}{#1}%
- }
-\else
- \newcommand*{\GlsSetXdyCodePage}[1]{%
- \glsnoxindywarning\GlsSetXdyCodePage}
-\fi
-\ifglsxindy
- \ifgls@xindy@glsnumbers
- \def\@xdylettergroups{(define-letter-group
- \string"glsnumbers\string"^^J\space\space\space
- :prefixes (\string"0\string" \string"1\string"
- \string"2\string" \string"3\string" \string"4\string"
- \string"5\string" \string"6\string" \string"7\string"
- \string"8\string" \string"9\string")^^J\space\space\space
- :before \string"\@glsfirstletter\string")}
- \else
- \def\@xdylettergroups{}
- \fi
-\fi
- \newcommand*\GlsAddLetterGroup[2]{%
- \expandafter\toks@\expandafter{\@xdylettergroups}%
- \protected@edef\@xdylettergroups{\the\toks@^^J%
- (define-letter-group \string"#1\string"^^J\space\space\space#2)}%
- }%
-\newcommand*{\forallglossaries}[3][\@glo@types]{%
- \@for#2:=#1\do{\ifx#2\@empty\else#3\fi}%
-}
-\newcommand*{\forglsentries}[3][\glsdefaulttype]{%
- \edef\@@glo@list{\csname glolist@#1\endcsname}%
- \@for#2:=\@@glo@list\do{\ifx#2\@empty\else#3\fi}%
-}
-\newcommand*{\forallglsentries}[3][\@glo@types]{%
-\expandafter\forallglossaries\expandafter[#1]{\@@this@glo@}{%
-\forglsentries[\@@this@glo@]{#2}{#3}}}
-\newcommand{\ifglossaryexists}[3]{%
- \@ifundefined{@glotype@#1@out}{#3}{#2}%
-}
-\newcommand{\ifglsentryexists}[3]{%
-\@ifundefined{glo@#1@name}{#3}{#2}}
-\newcommand*{\ifglsused}[3]{\ifthenelse{\boolean{glo@#1@flag}}{#2}{#3}}
-\newcommand{\glsdoifexists}[2]{%
- \ifglsentryexists{#1}{#2}{%
- \PackageError{glossaries}{Glossary entry `#1' has not been
- defined}{You need to define a glossary entry before you
- can use it.}}%
-}
-\newcommand{\glsdoifnoexists}[2]{%
- \ifglsentryexists{#1}{%
- \PackageError{glossaries}{Glossary entry `#1' has already
- been defined}{}}{#2}%
-}
-\newcommand*{\@glo@types}{,}
-\newcommand*{\newglossary}[5][glg]{%
-\ifglossaryexists{#2}{%
- \PackageError{glossaries}{Glossary type `#2' already exists}{%
- You can't define a new glossary called `#2' because it already
- exists}%
-}{%
- \ifx\glsdefaulttype\relax
- \gdef\glsdefaulttype{#2}%
- \fi
- \toks@{#2}\edef\@glo@types{\@glo@types\the\toks@,}%
- \expandafter\gdef\csname glolist@#2\endcsname{,}%
- \expandafter\def\csname @glotype@#2@in\endcsname{#3}%
- \expandafter\def\csname @glotype@#2@out\endcsname{#4}%
- \expandafter\def\csname @glotype@#2@title\endcsname{#5}%
- \protected@write\@auxout{}{\string\@newglossary{#2}{#1}{#3}{#4}}%
- \@ifundefined{gls@#2@display}{%
- \expandafter\gdef\csname gls@#2@display\endcsname{%
- \glsdisplay}}{}%
- \@ifundefined{gls@#2@displayfirst}{%
- \expandafter\gdef\csname gls@#2@displayfirst\endcsname{%
- \glsdisplayfirst}}{}%
- \@ifnextchar[{\@gls@setcounter{#2}}%
- {\@gls@setcounter{#2}[\glscounter]}}}
-\newcommand*{\altnewglossary}[3]{%
- \newglossary[#2-glg]{#1}{#2-gls}{#2-glo}{#3}%
-}
-\@onlypreamble{\newglossary}
-\@onlypremakeg\newglossary
-\newcommand*{\@newglossary}[4]{}
-\def\@gls@setcounter#1[#2]{%
-\expandafter\def\csname @glotype@#1@counter\endcsname{#2}%
-}
-\newcommand*{\@gls@getcounter}[1]{%
-\csname @glotype@#1@counter\endcsname}
-\glsdefmain
-\define@key{glossentry}{name}{%
-\def\@glo@name{#1}%
-}
-\define@key{glossentry}{description}{%
-\def\@glo@desc{#1}%
-}
-\define@key{glossentry}{descriptionplural}{%
-\def\@glo@descplural{#1}%
-}
-\define@key{glossentry}{sort}{%
-\def\@glo@sort{#1}}
-\define@key{glossentry}{text}{%
-\def\@glo@text{#1}%
-}
-\define@key{glossentry}{plural}{%
-\def\@glo@plural{#1}%
-}
-\define@key{glossentry}{first}{%
-\def\@glo@first{#1}%
-}
-\define@key{glossentry}{firstplural}{%
-\def\@glo@firstplural{#1}%
-}
-\define@key{glossentry}{symbol}{%
-\def\@glo@symbol{#1}%
-}
-\define@key{glossentry}{symbolplural}{%
-\def\@glo@symbolplural{#1}%
-}
-\define@key{glossentry}{type}{%
-\def\@glo@type{#1}}
-\define@key{glossentry}{counter}{%
-\@ifundefined{c@#1}{\PackageError{glossaries}{There is no counter
-called `#1'}{The counter key should have the name of a valid
-counter as its value}}{%
-\def\@glo@counter{#1}}}
-\define@key{glossentry}{see}{%
-\def\@glo@see{#1}}
-\define@key{glossentry}{parent}{%
-\def\@glo@parent{#1}}
-\define@key{glossentry}{nonumberlist}[none]{%
-\def\@glo@prefix{\glsnonextpages}}
-\define@key{glossentry}{user1}{%
- \def\@glo@useri{#1}%
-}
-\define@key{glossentry}{user2}{%
- \def\@glo@userii{#1}%
-}
-\define@key{glossentry}{user3}{%
- \def\@glo@useriii{#1}%
-}
-\define@key{glossentry}{user4}{%
- \def\@glo@useriv{#1}%
-}
-\define@key{glossentry}{user5}{%
- \def\@glo@userv{#1}%
-}
-\define@key{glossentry}{user6}{%
- \def\@glo@uservi{#1}%
-}
-\newcommand*{\@glsnoname}{%
- \PackageError{glossaries}{name key required in
- \string\newglossaryentry\space for entry `\@glo@label'}{You
- haven't specified the entry name}}
-\newcommand*{\@glsdefaultplural}{\@glo@text\glspluralsuffix}
-\newcommand*{\@glsdefaultsort}{\@glo@name}
-\newcount\gls@level
-\DeclareRobustCommand{\newglossaryentry}[2]{%
-\glsdoifnoexists{#1}{%
-\def\@glo@label{#1}%
-\let\@glo@name\@glsnoname
-\def\@glo@desc{\PackageError{glossaries}{description key required in
-\string\newglossaryentry\space for entry `\@glo@label'}{You haven't specified the entry description}}%
-\def\@glo@descplural{\@glo@desc}%
-\def\@glo@type{\glsdefaulttype}%
-\def\@glo@symbol{\relax}%
-\def\@glo@symbolplural{\@glo@symbol}%
-\def\@glo@text{\@glo@name}%
-\let\@glo@plural\@glsdefaultplural
-\let\@glo@first\relax
-\let\@glo@firstplural\relax
-\let\@glo@sort\@glsdefaultsort
-\def\@glo@counter{\@gls@getcounter{\@glo@type}}%
-\def\@glo@see{}%
-\def\@glo@parent{}%
-\def\@glo@prefix{}%
-\def\@glo@useri{}%
-\def\@glo@userii{}%
-\def\@glo@useriii{}%
-\def\@glo@useriv{}%
-\def\@glo@userv{}%
-\def\@glo@uservi{}%
- \@newglossaryentryprehook
-\setkeys{glossentry}{#2}%
-\@ifundefined{glolist@\@glo@type}{\PackageError{glossaries}{%
-Glossary type '\@glo@type' has not been defined}{%
-You need to define a new glossary type, before making entries
-in it}}{%
-\protected@edef\@glolist@{\csname glolist@\@glo@type\endcsname}%
-\expandafter\xdef\csname glolist@\@glo@type\endcsname{\@glolist@{#1},}%
-}%
-\gls@level=0\relax
-\ifx\@glo@parent\@empty
- \expandafter\gdef\csname glo@#1@parent\endcsname{}%
-\else
- \ifthenelse{\equal{#1}{\@glo@parent}}{%
- \PackageError{glossaries}{Entry `#1' can't be its own parent}{}%
- \def\@glo@parent{}%
- \expandafter\gdef\csname glo@#1@parent\endcsname{}%
- }{%
- \ifglsentryexists{\@glo@parent}{%
- \expandafter\xdef\csname glo@#1@parent\endcsname{\@glo@parent}%
- \gls@level=\csname glo@\@glo@parent @level\endcsname\relax
- \advance\gls@level by 1\relax
- \ifx\@glo@name\@glsnoname
- \expandafter\let\expandafter\@glo@name
- \csname glo@\@glo@parent @name\endcsname
- \ifx\@glo@plural\@glsdefaultplural
- \expandafter\let\expandafter\@glo@plural
- \csname glo@\@glo@parent @plural\endcsname
- \fi
- \fi
- }{%
- \PackageError{glossaries}{Invalid parent `\@glo@parent'
- for entry `#1' - parent doesn't exist}{Parent entries
- must be defined before their children}%
- \def\@glo@parent{}%
- \expandafter\gdef\csname glo@#1@parent\endcsname{}%
- }%
- }%
-\fi
-\expandafter\xdef\csname glo@#1@level\endcsname{\number\gls@level}%
-\ifx\relax\@glo@firstplural
- \ifx\relax\@glo@first
- \def\@glo@firstplural{\@glo@plural}%
- \def\@glo@first{\@glo@text}%
- \else
- \def\@glo@firstplural{\@glo@first\glspluralsuffix}%
- \fi
-\else
- \ifx\relax\@glo@first
- \def\@glo@first{\@glo@text}%
- \fi
-\fi
-\expandafter
- \protected@xdef\csname glo@#1@text\endcsname{\@glo@text}%
-\expandafter
- \protected@xdef\csname glo@#1@plural\endcsname{\@glo@plural}%
-\expandafter
- \protected@xdef\csname glo@#1@first\endcsname{\@glo@first}%
-\expandafter
- \protected@xdef\csname glo@#1@firstpl\endcsname{\@glo@firstplural}%
-\expandafter
- \protected@xdef\csname glo@#1@type\endcsname{\@glo@type}%
-\expandafter
- \protected@xdef\csname glo@#1@counter\endcsname{\@glo@counter}%
-\expandafter
- \protected@xdef\csname glo@#1@useri\endcsname{\@glo@useri}%
-\expandafter
- \protected@xdef\csname glo@#1@userii\endcsname{\@glo@userii}%
-\expandafter
- \protected@xdef\csname glo@#1@useriii\endcsname{\@glo@useriii}%
-\expandafter
- \protected@xdef\csname glo@#1@useriv\endcsname{\@glo@useriv}%
-\expandafter
- \protected@xdef\csname glo@#1@userv\endcsname{\@glo@userv}%
-\expandafter
- \protected@xdef\csname glo@#1@uservi\endcsname{\@glo@uservi}%
-\@gls@sanitizename
-\expandafter\protected@xdef\csname glo@#1@name\endcsname{\@glo@name}%
-\def\@glo@@desc{\@glo@first}%
-\ifx\@glo@desc\@glo@@desc
- \let\@glo@desc\@glo@first
-\fi
-\@gls@sanitizedesc
-\expandafter\protected@xdef\csname glo@#1@desc\endcsname{\@glo@desc}%
-\expandafter\protected@xdef\csname glo@#1@descplural\endcsname{\@glo@descplural}%
-\ifx\@glo@sort\@glsdefaultsort
- \let\@glo@sort\@glo@name
-\fi
-\@onelevel@sanitize\@glo@sort
-\expandafter\protected@xdef\csname glo@#1@sort\endcsname{\@glo@sort}%
-\def\@glo@@symbol{\@glo@text}%
-\ifx\@glo@symbol\@glo@@symbol
- \let\@glo@symbol\@glo@text
-\fi
-\@gls@sanitizesymbol
-\expandafter\protected@xdef\csname glo@#1@symbol\endcsname{\@glo@symbol}%
-\expandafter\protected@xdef\csname glo@#1@symbolplural\endcsname{\@glo@symbolplural}%
-\expandafter\gdef\csname glo@#1@flagfalse\endcsname{%
-\expandafter\global\expandafter
-\let\csname ifglo@#1@flag\endcsname\iffalse}%
-\expandafter\gdef\csname glo@#1@flagtrue\endcsname{%
-\expandafter\global\expandafter
-\let\csname ifglo@#1@flag\endcsname\iftrue}%
-\csname glo@#1@flagfalse\endcsname
-\ifx\@glo@see\@empty
-\else
- \protected@edef\@do@glssee{%
- \noexpand\@gls@fixbraces\noexpand\@glo@list\@glo@see
- \noexpand\@nil
- \noexpand\expandafter\noexpand\@glssee\noexpand\@glo@list{#1}}%
- \@do@glssee
-\fi
-}%
- \@glo@storeentry{#1}%
- \@newglossaryentryposthook
-}
-\newcommand*{\@newglossaryentryprehook}{}
-\newcommand*{\@newglossaryentryposthook}{}
-\ifglsxindy
- \newcommand*{\@glossaryentryfield}{\string\\glossaryentryfield}
-\else
- \newcommand*{\@glossaryentryfield}{\string\glossaryentryfield}
-\fi
-\ifglsxindy
- \newcommand*{\@glossarysubentryfield}{%
- \string\\glossarysubentryfield}
-\else
- \newcommand*{\@glossarysubentryfield}{%
- \string\glossarysubentryfield}
-\fi
-\newcommand{\@glo@storeentry}[1]{%
-\protected@edef\@glo@sort{\csname glo@#1@sort\endcsname}%
-\@gls@checkmkidxchars\@glo@sort
-\protected@edef\@@glo@name{\csname glo@#1@name\endcsname}%
-\@gls@checkmkidxchars\@@glo@name
-\ifglsxindy
- \protected@edef\@glo@name{\string\\glsnamefont{\@@glo@name}}%
-\else
- \protected@edef\@glo@name{\string\glsnamefont{\@@glo@name}}%
-\fi
-\protected@edef\@glo@desc{\csname glo@#1@desc\endcsname}%
-\@gls@checkmkidxchars\@glo@desc
-\protected@edef\@glo@symbol{\csname glo@#1@symbol\endcsname}%
-\@gls@checkmkidxchars\@glo@symbol
-\@gls@checkmkidxchars\@glo@prefix
-\edef\@glo@parent{\csname glo@#1@parent\endcsname}%
-\ifglsxindy
- \ifx\@glo@parent\@empty
- \expandafter\protected@xdef\csname glo@#1@index\endcsname{%
- (\string"\@glo@sort\string" %
- \string"\@glo@prefix\@glossaryentryfield{#1}{\@glo@name
- }{\@glo@desc}{\@glo@symbol}\string") %
- }%
- \else
- \expandafter\protected@xdef\csname glo@#1@index\endcsname{%
- \csname glo@\@glo@parent @index\endcsname
- (\string"\@glo@sort\string" %
- \string"\@glo@prefix\@glossarysubentryfield%
- {\csname glo@#1@level\endcsname}{#1}{\@glo@name
- }{\@glo@desc}{\@glo@symbol}\string") %
- }%
- \fi
-\else
- \ifx\@glo@parent\@empty
- \@onelevel@sanitize\@glo@prefix
- \expandafter\protected@xdef\csname glo@#1@index\endcsname{%
- \@glo@sort\@gls@actualchar\@glo@prefix
- \@glossaryentryfield{#1}{\@glo@name}{\@glo@desc
- }{\@glo@symbol}%
- }%
- \else
- \expandafter\protected@xdef\csname glo@#1@index\endcsname{%
- \csname glo@\@glo@parent @index\endcsname\@gls@levelchar
- \@glo@sort\@gls@actualchar\@glo@prefix
- \@glossarysubentryfield
- {\csname glo@#1@level\endcsname}{#1}{\@glo@name}{\@glo@desc
- }{\@glo@symbol}%
- }%
- \fi
-\fi
-}
-\newcommand*{\glsreset}[1]{%
-\glsdoifexists{#1}{%
-\expandafter\global\csname glo@#1@flagfalse\endcsname}}
-\newcommand*{\glslocalreset}[1]{%
-\glsdoifexists{#1}{%
-\expandafter\let\csname ifglo@#1@flag\endcsname\iffalse}}
-\newcommand*{\glsunset}[1]{%
-\glsdoifexists{#1}{%
-\expandafter\global\csname glo@#1@flagtrue\endcsname}}
-\newcommand*{\glslocalunset}[1]{%
-\glsdoifexists{#1}{%
-\expandafter\let\csname ifglo@#1@flag\endcsname\iftrue}}
-\newcommand*{\glsresetall}[1][\@glo@types]{%
-\forallglsentries[#1]{\@glsentry}{%
-\glsreset{\@glsentry}}}
-\newcommand*{\glslocalresetall}[1][\@glo@types]{%
-\forallglsentries[#1]{\@glsentry}{%
-\glslocalreset{\@glsentry}}}
-\newcommand*{\glsunsetall}[1][\@glo@types]{%
-\forallglsentries[#1]{\@glsentry}{%
-\glsunset{\@glsentry}}}
-\newcommand*{\glslocalunsetall}[1][\@glo@types]{%
-\forallglsentries[#1]{\@glsentry}{%
-\glslocalunset{\@glsentry}}}
-\newcommand*{\loadglsentries}[2][\@gls@default]{%
-\let\@gls@default\glsdefaulttype
-\def\glsdefaulttype{#1}\input{#2}%
-\let\glsdefaulttype\@gls@default}
-\@onlypreamble{\loadglsentries}
-\newcommand*{\glstextformat}[1]{#1}
-\newcommand*{\glsdisplayfirst}[4]{#1#4}
-\newcommand*{\glsdisplay}[4]{#1#4}
-\newcommand*{\defglsdisplay}[2][\glsdefaulttype]{%
-\expandafter\def\csname gls@#1@display\endcsname##1##2##3##4{#2}}
-\newcommand*{\defglsdisplayfirst}[2][\glsdefaulttype]{%
-\expandafter\def\csname gls@#1@displayfirst\endcsname##1##2##3##4{#2}}
-\define@key{glslink}{counter}{%
-\@ifundefined{c@#1}{\PackageError{glossaries}{There is no counter
-called `#1'}{The counter key should have the name of a valid
-counter as its value}}{%
-\def\@gls@counter{#1}}}
-\define@key{glslink}{format}{%
-\def\@glsnumberformat{#1}}
-\define@boolkey{glslink}{hyper}[true]{}
-\newcommand{\glslink}{%
-\@ifstar\@sgls@link\@gls@@link}
-\newcommand*{\@sgls@link}[1][]{\@gls@@link[hyper=false,#1]}
-\newcommand*{\@gls@@link}[3][]{%
- \ifglsentryexists{#2}%
- {%
- \@gls@link[#1]{#2}{#3}%
- }{%
- \PackageError{glossaries}{Glossary entry `#2' has not been
- defined}{You need to define a glossary entry before you
- can use it.}%
- \glstextformat{#3}%
- }%
-}
-\def\@gls@link[#1]#2#3{%
- \leavevmode
- \def\glslabel{#2}%
- \def\@glsnumberformat{glsnumberformat}%
- \edef\@gls@counter{\csname glo@#2@counter\endcsname}%
- \KV@glslink@hypertrue
- \setkeys{glslink}{#1}%
- \edef\theglsentrycounter{\expandafter\noexpand
- \csname the\@gls@counter\endcsname}%
- \@do@wrglossary{#2}%
- \ifKV@glslink@hyper
- \@glslink{glo:#2}{\glstextformat{#3}}%
- \else
- \glstextformat{#3}\relax
- \fi
-}
-\def\@set@glo@numformat#1#2#3{%
-\expandafter\@glo@check@mkidxrangechar#3\@nil
-\protected@edef#1{\@glo@prefix setentrycounter{#2}%
-\expandafter\string\csname\@glo@suffix\endcsname}%
-\@gls@checkmkidxchars#1}
-\def\@glo@check@mkidxrangechar#1#2\@nil{%
-\if#1(\relax
- \def\@glo@prefix{(}%
- \if\relax#2\relax
- \def\@glo@suffix{glsnumberformat}%
- \else
- \def\@glo@suffix{#2}%
- \fi
-\else
- \if#1)\relax
- \def\@glo@prefix{)}%
- \if\relax#2\relax
- \def\@glo@suffix{glsnumberformat}%
- \else
- \def\@glo@suffix{#2}%
- \fi
- \else
- \def\@glo@prefix{}\def\@glo@suffix{#1#2}%
- \fi
-\fi}
-\newcommand*{\@gls@escbsdq}[1]{%
- \def\@gls@checkedmkidx{}%
- \let\gls@xdystring=#1\relax
- \@onelevel@sanitize\gls@xdystring
- \edef\do@gls@xdycheckbackslash{%
- \noexpand\@gls@xdycheckbackslash\gls@xdystring\noexpand\@nil
- \@backslashchar\@backslashchar\noexpand\null}%
- \do@gls@xdycheckbackslash
- \expandafter\@gls@updatechecked\@gls@checkedmkidx{\gls@xdystring}%
- \def\@gls@checkedmkidx{}%
- \expandafter\@gls@xdycheckquote\gls@xdystring\@nil""\null
- \expandafter\@gls@updatechecked\@gls@checkedmkidx{\gls@xdystring}%
- \let#1=\gls@xdystring
-}
-\newcommand{\@gls@checkmkidxchars}[1]{%
-\ifglsxindy
- \@gls@escbsdq{#1}%
-\else
- \def\@gls@checkedmkidx{}%
- \expandafter\@gls@checkquote#1\@nil""\null
- \expandafter\@gls@updatechecked\@gls@checkedmkidx{#1}%
- \def\@gls@checkedmkidx{}%
- \expandafter\@gls@checkescquote#1\@nil\"\"\null
- \expandafter\@gls@updatechecked\@gls@checkedmkidx{#1}%
- \def\@gls@checkedmkidx{}%
- \expandafter\@gls@checkescactual#1\@nil\?\?\null
- \expandafter\@gls@updatechecked\@gls@checkedmkidx{#1}%
- \def\@gls@checkedmkidx{}%
- \expandafter\@gls@checkactual#1\@nil??\null
- \expandafter\@gls@updatechecked\@gls@checkedmkidx{#1}%
- \def\@gls@checkedmkidx{}%
- \expandafter\@gls@checkbar#1\@nil||\null
- \expandafter\@gls@updatechecked\@gls@checkedmkidx{#1}%
- \def\@gls@checkedmkidx{}%
- \expandafter\@gls@checkescbar#1\@nil\|\|\null
- \expandafter\@gls@updatechecked\@gls@checkedmkidx{#1}%
- \def\@gls@checkedmkidx{}%
- \expandafter\@gls@checklevel#1\@nil!!\null
- \expandafter\@gls@updatechecked\@gls@checkedmkidx{#1}%
-\fi
-}
-\def\@gls@updatechecked#1\@nil#2{\def#2{#1}}
-\newtoks\@gls@tmpb
-\def\@gls@checkquote#1"#2"#3\null{%
-\@gls@tmpb=\expandafter{\@gls@checkedmkidx}%
-\toks@={#1}%
-\ifx\null#2\null
- \ifx\null#3\null
- \edef\@gls@checkedmkidx{\the\@gls@tmpb\the\toks@}%
- \def\@@gls@checkquote{\relax}%
- \else
- \edef\@gls@checkedmkidx{\the\@gls@tmpb\the\toks@
- \@gls@quotechar\@gls@quotechar\@gls@quotechar\@gls@quotechar}%
- \def\@@gls@checkquote{\@gls@checkquote#3\null}%
- \fi
-\else
- \edef\@gls@checkedmkidx{\the\@gls@tmpb\the\toks@
- \@gls@quotechar\@gls@quotechar}%
- \ifx\null#3\null
- \def\@@gls@checkquote{\@gls@checkquote#2""\null}%
- \else
- \def\@@gls@checkquote{\@gls@checkquote#2"#3\null}%
- \fi
-\fi
-\@@gls@checkquote}
-\def\@gls@checkescquote#1\"#2\"#3\null{%
-\@gls@tmpb=\expandafter{\@gls@checkedmkidx}%
-\toks@={#1}%
-\ifx\null#2\null
- \ifx\null#3\null
- \edef\@gls@checkedmkidx{\the\@gls@tmpb\the\toks@}%
- \def\@@gls@checkescquote{\relax}%
- \else
- \edef\@gls@checkedmkidx{\the\@gls@tmpb\the\toks@
- \@gls@quotechar\string\"\@gls@quotechar
- \@gls@quotechar\string\"\@gls@quotechar}%
- \def\@@gls@checkescquote{\@gls@checkescquote#3\null}%
- \fi
-\else
- \edef\@gls@checkedmkidx{\the\@gls@tmpb\the\toks@
- \@gls@quotechar\string\"\@gls@quotechar}%
- \ifx\null#3\null
- \def\@@gls@checkescquote{\@gls@checkescquote#2\"\"\null}%
- \else
- \def\@@gls@checkescquote{\@gls@checkescquote#2\"#3\null}%
- \fi
-\fi
-\@@gls@checkescquote}
-\def\@gls@checkescactual#1\?#2\?#3\null{%
-\@gls@tmpb=\expandafter{\@gls@checkedmkidx}%
-\toks@={#1}%
-\ifx\null#2\null
- \ifx\null#3\null
- \edef\@gls@checkedmkidx{\the\@gls@tmpb\the\toks@}%
- \def\@@gls@checkescactual{\relax}%
- \else
- \edef\@gls@checkedmkidx{\the\@gls@tmpb\the\toks@
- \@gls@quotechar\string\"\@gls@actualchar
- \@gls@quotechar\string\"\@gls@actualchar}%
- \def\@@gls@checkescactual{\@gls@checkescactual#3\null}%
- \fi
-\else
- \edef\@gls@checkedmkidx{\the\@gls@tmpb\the\toks@
- \@gls@quotechar\string\"\@gls@actualchar}%
- \ifx\null#3\null
- \def\@@gls@checkescactual{\@gls@checkescactual#2\?\?\null}%
- \else
- \def\@@gls@checkescactual{\@gls@checkescactual#2\?#3\null}%
- \fi
-\fi
-\@@gls@checkescactual}
-\def\@gls@checkescbar#1\|#2\|#3\null{%
-\@gls@tmpb=\expandafter{\@gls@checkedmkidx}%
-\toks@={#1}%
-\ifx\null#2\null
- \ifx\null#3\null
- \edef\@gls@checkedmkidx{\the\@gls@tmpb\the\toks@}%
- \def\@@gls@checkescbar{\relax}%
- \else
- \edef\@gls@checkedmkidx{\the\@gls@tmpb\the\toks@
- \@gls@quotechar\string\"\@gls@encapchar
- \@gls@quotechar\string\"\@gls@encapchar}%
- \def\@@gls@checkescbar{\@gls@checkescbar#3\null}%
- \fi
-\else
- \edef\@gls@checkedmkidx{\the\@gls@tmpb\the\toks@
- \@gls@quotechar\string\"\@gls@encapchar}%
- \ifx\null#3\null
- \def\@@gls@checkescbar{\@gls@checkescbar#2\|\|\null}%
- \else
- \def\@@gls@checkescbar{\@gls@checkescbar#2\|#3\null}%
- \fi
-\fi
-\@@gls@checkescbar}
-\def\@gls@checkesclevel#1\!#2\!#3\null{%
-\@gls@tmpb=\expandafter{\@gls@checkedmkidx}%
-\toks@={#1}%
-\ifx\null#2\null
- \ifx\null#3\null
- \edef\@gls@checkedmkidx{\the\@gls@tmpb\the\toks@}%
- \def\@@gls@checkesclevel{\relax}%
- \else
- \edef\@gls@checkedmkidx{\the\@gls@tmpb\the\toks@
- \@gls@quotechar\string\"\@gls@levelchar
- \@gls@quotechar\string\"\@gls@levelchar}%
- \def\@@gls@checkesclevel{\@gls@checkesclevel#3\null}%
- \fi
-\else
- \edef\@gls@checkedmkidx{\the\@gls@tmpb\the\toks@
- \@gls@quotechar\string\"\@gls@levelchar}%
- \ifx\null#3\null
- \def\@@gls@checkesclevel{\@gls@checkesclevel#2\!\!\null}%
- \else
- \def\@@gls@checkesclevel{\@gls@checkesclevel#2\!#3\null}%
- \fi
-\fi
-\@@gls@checkesclevel}
-\def\@gls@checkbar#1|#2|#3\null{%
-\@gls@tmpb=\expandafter{\@gls@checkedmkidx}%
-\toks@={#1}%
-\ifx\null#2\null
- \ifx\null#3\null
- \edef\@gls@checkedmkidx{\the\@gls@tmpb\the\toks@}%
- \def\@@gls@checkbar{\relax}%
- \else
- \edef\@gls@checkedmkidx{\the\@gls@tmpb\the\toks@
- \@gls@quotechar\@gls@encapchar\@gls@quotechar\@gls@encapchar}%
- \def\@@gls@checkbar{\@gls@checkbar#3\null}%
- \fi
-\else
- \edef\@gls@checkedmkidx{\the\@gls@tmpb\the\toks@
- \@gls@quotechar\@gls@encapchar}%
- \ifx\null#3\null
- \def\@@gls@checkbar{\@gls@checkbar#2||\null}%
- \else
- \def\@@gls@checkbar{\@gls@checkbar#2|#3\null}%
- \fi
-\fi
-\@@gls@checkbar}
-\def\@gls@checklevel#1!#2!#3\null{%
-\@gls@tmpb=\expandafter{\@gls@checkedmkidx}%
-\toks@={#1}%
-\ifx\null#2\null
- \ifx\null#3\null
- \edef\@gls@checkedmkidx{\the\@gls@tmpb\the\toks@}%
- \def\@@gls@checklevel{\relax}%
- \else
- \edef\@gls@checkedmkidx{\the\@gls@tmpb\the\toks@
- \@gls@quotechar\@gls@levelchar\@gls@quotechar\@gls@levelchar}%
- \def\@@gls@checklevel{\@gls@checklevel#3\null}%
- \fi
-\else
- \edef\@gls@checkedmkidx{\the\@gls@tmpb\the\toks@
- \@gls@quotechar\@gls@levelchar}%
- \ifx\null#3\null
- \def\@@gls@checklevel{\@gls@checklevel#2!!\null}%
- \else
- \def\@@gls@checklevel{\@gls@checklevel#2!#3\null}%
- \fi
-\fi
-\@@gls@checklevel}
-\def\@gls@checkactual#1?#2?#3\null{%
-\@gls@tmpb=\expandafter{\@gls@checkedmkidx}%
-\toks@={#1}%
-\ifx\null#2\null
- \ifx\null#3\null
- \edef\@gls@checkedmkidx{\the\@gls@tmpb\the\toks@}%
- \def\@@gls@checkactual{\relax}%
- \else
- \edef\@gls@checkedmkidx{\the\@gls@tmpb\the\toks@
- \@gls@quotechar\@gls@actualchar\@gls@quotechar\@gls@actualchar}%
- \def\@@gls@checkactual{\@gls@checkactual#3\null}%
- \fi
-\else
- \edef\@gls@checkedmkidx{\the\@gls@tmpb\the\toks@
- \@gls@quotechar\@gls@actualchar}%
- \ifx\null#3\null
- \def\@@gls@checkactual{\@gls@checkactual#2??\null}%
- \else
- \def\@@gls@checkactual{\@gls@checkactual#2?#3\null}%
- \fi
-\fi
-\@@gls@checkactual}
-\def\@gls@xdycheckquote#1"#2"#3\null{%
-\@gls@tmpb=\expandafter{\@gls@checkedmkidx}%
-\toks@={#1}%
-\ifx\null#2\null
- \ifx\null#3\null
- \edef\@gls@checkedmkidx{\the\@gls@tmpb\the\toks@}%
- \def\@@gls@xdycheckquote{\relax}%
- \else
- \edef\@gls@checkedmkidx{\the\@gls@tmpb\the\toks@
- \string\"\string\"}%
- \def\@@gls@xdycheckquote{\@gls@xdycheckquote#3\null}%
- \fi
-\else
- \edef\@gls@checkedmkidx{\the\@gls@tmpb\the\toks@
- \string\"}%
- \ifx\null#3\null
- \def\@@gls@xdycheckquote{\@gls@xdycheckquote#2""\null}%
- \else
- \def\@@gls@xdycheckquote{\@gls@xdycheckquote#2"#3\null}%
- \fi
-\fi
-\@@gls@xdycheckquote
-}
-\edef\def@gls@xdycheckbackslash{%
- \noexpand\def\noexpand\@gls@xdycheckbackslash##1\@backslashchar
- ##2\@backslashchar##3\noexpand\null{%
- \noexpand\@gls@tmpb=\noexpand\expandafter
- {\noexpand\@gls@checkedmkidx}%
- \noexpand\toks@={##1}%
- \noexpand\ifx\noexpand\null##2\noexpand\null
- \noexpand\ifx\noexpand\null##3\noexpand\null
- \noexpand\edef\noexpand\@gls@checkedmkidx{%
- \noexpand\the\noexpand\@gls@tmpb\noexpand\the\noexpand\toks@}%
- \noexpand\def\noexpand\@@gls@xdycheckbackslash{\relax}%
- \noexpand\else
- \noexpand\edef\noexpand\@gls@checkedmkidx{%
- \noexpand\the\noexpand\@gls@tmpb\noexpand\the\noexpand\toks@
- \@backslashchar\@backslashchar\@backslashchar\@backslashchar}%
- \noexpand\def\noexpand\@@gls@xdycheckbackslash{%
- \noexpand\@gls@xdycheckbackslash##3\noexpand\null}%
- \noexpand\fi
- \noexpand\else
- \noexpand\edef\noexpand\@gls@checkedmkidx{%
- \noexpand\the\noexpand\@gls@tmpb\noexpand\the\noexpand\toks@
- \@backslashchar\@backslashchar}%
- \noexpand\ifx\noexpand\null##3\noexpand\null
- \noexpand\def\noexpand\@@gls@xdycheckbackslash{%
- \noexpand\@gls@xdycheckbackslash##2\@backslashchar
- \@backslashchar\noexpand\null}%
- \noexpand\else
- \noexpand\def\noexpand\@@gls@xdycheckbackslash{%
- \noexpand\@gls@xdycheckbackslash##2\@backslashchar
- ##3\noexpand\null}%
- \noexpand\fi
- \noexpand\fi
- \noexpand\@@gls@xdycheckbackslash
- }%
-}
-\def@gls@xdycheckbackslash
-\@ifundefined{hyperlink}{%
- \gdef\@glslink#1#2{#2}%
-}{%
- \gdef\@glslink#1#2{\hyperlink{#1}{#2}}%
-}
-\newlength\gls@tmplen
-\@ifundefined{hypertarget}{%
- \gdef\@glstarget#1#2{#2}%
-}{%
- \gdef\@glstarget#1#2{%
- \settoheight{\gls@tmplen}{#2}%
- \raisebox{\gls@tmplen}{\hypertarget{#1}{}}#2}%
-}
-\newcommand{\glsdisablehyper}{%
-\renewcommand*\@glslink[2]{##2}%
-\renewcommand*\@glstarget[2]{##2}}
-\newcommand{\glsenablehyper}{%
-\renewcommand*\@glslink[2]{\hyperlink{##1}{##2}}%
-\renewcommand*\@glstarget[2]{%
- \settoheight{\gls@tmplen}{##2}%
- \raisebox{\gls@tmplen}{\hypertarget{##1}{}}##2}}
-\newcommand*{\gls}{\@ifstar\@sgls\@gls}
-\newcommand*{\@sgls}[1][]{\@gls[hyper=false,#1]}
-\newcommand*{\@gls}[2][]{%
-\new@ifnextchar[{\@gls@{#1}{#2}}{\@gls@{#1}{#2}[]}}
-\def\@gls@#1#2[#3]{%
-\glsdoifexists{#2}{\edef\@glo@type{\glsentrytype{#2}}%
-\def\@gls@link@opts{#1}%
-\def\@gls@link@label{#2}%
-\ifglsused{#2}%
-{%
- \def\@glo@text{%
- \csname gls@\@glo@type @display\endcsname
- {\glsentrytext{#2}}{\glsentrydesc{#2}}{\glsentrysymbol{#2}}{#3}}%
-}%
-{%
- \def\@glo@text{%
- \csname gls@\@glo@type @displayfirst\endcsname
- {\glsentryfirst{#2}}{\glsentrydesc{#2}}{\glsentrysymbol{#2}}{#3}}%
-}%
-\ifglsused{#2}{%
- \@gls@link[#1]{#2}{\@glo@text}%
-}{%
- \gls@checkisacronymlist\@glo@type
- \ifthenelse{\(\boolean{@glsisacronymlist}\AND
- \boolean{glsacrfootnote}\) \OR \NOT\boolean{glshyperfirst}}{%
- \@gls@link[#1,hyper=false]{#2}{\@glo@text}%
- }{%
- \@gls@link[#1]{#2}{\@glo@text}%
- }%
-}%
-\glsunset{#2}}%
-}
-\newcommand*{\Gls}{\@ifstar\@sGls\@Gls}
-\newcommand*{\@sGls}[1][]{\@Gls[hyper=false,#1]}
-\newcommand*{\@Gls}[2][]{%
-\new@ifnextchar[{\@Gls@{#1}{#2}}{\@Gls@{#1}{#2}[]}}
-\def\@Gls@#1#2[#3]{%
-\glsdoifexists{#2}{\edef\@glo@type{\glsentrytype{#2}}%
-\def\@gls@link@opts{#1}%
-\def\@gls@link@label{#2}%
-\def\glslabel{#2}%
-\ifglsused{#2}%
-{%
- \protected@edef\@glo@text{%
- \csname gls@\@glo@type @display\endcsname
- {\glsentrytext{#2}}{\glsentrydesc{#2}}%
- {\glsentrysymbol{#2}}{#3}}%
-}%
-{%
- \protected@edef\@glo@text{%
- \csname gls@\@glo@type @displayfirst\endcsname
- {\glsentryfirst{#2}}{\glsentrydesc{#2}}%
- {\glsentrysymbol{#2}}{#3}}%
-}%
-\ifglsused{#2}{%
- \@gls@link[#1]{#2}{%
- \expandafter\makefirstuc\expandafter{\@glo@text}}%
-}{%
- \gls@checkisacronymlist\@glo@type
- \ifthenelse{\(\boolean{@glsisacronymlist}\AND
- \boolean{glsacrfootnote}\) \OR \NOT\boolean{glshyperfirst}}{%
- \@gls@link[#1,hyper=false]{#2}{%
- \expandafter\makefirstuc\expandafter{\@glo@text}}%
- }{%
- \@gls@link[#1]{#2}{%
- \expandafter\makefirstuc\expandafter{\@glo@text}}%
- }%
-}%
-\glsunset{#2}}%
-}
-\newcommand*{\GLS}{\@ifstar\@sGLS\@GLS}
-\newcommand*{\@sGLS}[1][]{\@GLS[hyper=false,#1]}
-\newcommand*{\@GLS}[2][]{%
-\new@ifnextchar[{\@GLS@{#1}{#2}}{\@GLS@{#1}{#2}[]}}
-\def\@GLS@#1#2[#3]{%
-\glsdoifexists{#2}{\edef\@glo@type{\glsentrytype{#2}}%
-\def\@gls@link@opts{#1}%
-\def\@gls@link@label{#2}%
-\ifglsused{#2}{\def\@glo@text{%
-\csname gls@\@glo@type @display\endcsname
-{\glsentrytext{#2}}{\glsentrydesc{#2}}{\glsentrysymbol{#2}}{#3}}}{%
-\def\@glo@text{%
-\csname gls@\@glo@type @displayfirst\endcsname
-{\glsentryfirst{#2}}{\glsentrydesc{#2}}{\glsentrysymbol{#2}}{#3}}}%
-\ifglsused{#2}{%
- \@gls@link[#1]{#2}{\MakeUppercase{\@glo@text}}%
-}{%
- \gls@checkisacronymlist\@glo@type
- \ifthenelse{\(\boolean{@glsisacronymlist}\AND
- \boolean{glsacrfootnote}\) \OR \NOT\boolean{glshyperfirst}}{%
- \@gls@link[#1,hyper=false]{#2}{\MakeUppercase{\@glo@text}}%
- }{%
- \@gls@link[#1]{#2}{\MakeUppercase{\@glo@text}}%
- }%
-}%
-\glsunset{#2}}%
-}
-\newcommand*{\glspl}{\@ifstar\@sglspl\@glspl}
-\newcommand*{\@sglspl}[1][]{\@glspl[hyper=false,#1]}
-\newcommand*{\@glspl}[2][]{%
-\new@ifnextchar[{\@glspl@{#1}{#2}}{\@glspl@{#1}{#2}[]}}
-\def\@glspl@#1#2[#3]{%
-\glsdoifexists{#2}{\edef\@glo@type{\glsentrytype{#2}}%
-\def\@gls@link@opts{#1}%
-\def\@gls@link@label{#2}%
-\ifglsused{#2}%
-{%
- \def\@glo@text{%
- \csname gls@\@glo@type @display\endcsname
- {\glsentryplural{#2}}{\glsentrydescplural{#2}}%
- {\glsentrysymbolplural{#2}}{#3}}%
-}%
-{%
- \def\@glo@text{%
- \csname gls@\@glo@type @displayfirst\endcsname
- {\glsentryfirstplural{#2}}{\glsentrydescplural{#2}}%
- {\glsentrysymbolplural{#2}}{#3}}%
-}%
-\ifglsused{#2}{%
- \@gls@link[#1]{#2}{\@glo@text}%
-}{%
- \gls@checkisacronymlist\@glo@type
- \ifthenelse{\(\boolean{@glsisacronymlist}\AND
- \boolean{glsacrfootnote}\) \OR \NOT\boolean{glshyperfirst}}{%
- \@gls@link[#1,hyper=false]{#2}{\@glo@text}%
- }{%
- \@gls@link[#1]{#2}{\@glo@text}%
- }%
-}%
-\glsunset{#2}}%
-}
-\newcommand*{\Glspl}{\@ifstar\@sGlspl\@Glspl}
-\newcommand*{\@sGlspl}[1][]{\@Glspl[hyper=false,#1]}
-\newcommand*{\@Glspl}[2][]{%
-\new@ifnextchar[{\@Glspl@{#1}{#2}}{\@Glspl@{#1}{#2}[]}}
-\def\@Glspl@#1#2[#3]{%
-\glsdoifexists{#2}{\edef\@glo@type{\glsentrytype{#2}}%
-\def\@gls@link@opts{#1}%
-\def\@gls@link@label{#2}%
-\def\glslabel{#2}%
-\ifglsused{#2}%
-{%
- \protected@edef\@glo@text{%
- \csname gls@\@glo@type @display\endcsname
- {\glsentryplural{#2}}{\glsentrydescplural{#2}}%
- {\glsentrysymbolplural{#2}}{#3}}%
-}%
-{%
- \protected@edef\@glo@text{%
- \csname gls@\@glo@type @displayfirst\endcsname
- {\glsentryfirstplural{#2}}{\glsentrydescplural{#2}}%
- {\glsentrysymbolplural{#2}}{#3}}%
-}%
-\ifglsused{#2}{%
- \@gls@link[#1]{#2}{%
- \expandafter\makefirstuc\expandafter{\@glo@text}}%
-}{%
- \gls@checkisacronymlist\@glo@type
- \ifthenelse{\(\boolean{@glsisacronymlist}\AND
- \boolean{glsacrfootnote}\) \OR \NOT\boolean{glshyperfirst}}{%
- \@gls@link[#1,hyper=false]{#2}{%
- \expandafter\makefirstuc\expandafter{\@glo@text}}%
- }{%
- \@gls@link[#1]{#2}{%
- \expandafter\makefirstuc\expandafter{\@glo@text}}%
- }%
-}%
-\glsunset{#2}}%
-}
-\newcommand*{\GLSpl}{\@ifstar\@sGLSpl\@GLSpl}
-\newcommand*{\@sGLSpl}[1][]{\@GLSpl[hyper=false,#1]}
-\newcommand*{\@GLSpl}[2][]{%
-\new@ifnextchar[{\@GLSpl@{#1}{#2}}{\@GLSpl@{#1}{#2}[]}}
-\def\@GLSpl@#1#2[#3]{%
-\glsdoifexists{#2}{\edef\@glo@type{\glsentrytype{#2}}%
-\def\@gls@link@opts{#1}%
-\def\@gls@link@label{#2}%
-\ifglsused{#2}{\def\@glo@text{%
-\csname gls@\@glo@type @display\endcsname
-{\glsentryplural{#2}}{\glsentrydescplural{#2}}{%
-\glsentrysymbolplural{#2}}{#3}}}{%
-\def\@glo@text{%
-\csname gls@\@glo@type @displayfirst\endcsname
-{\glsentryfirstplural{#2}}{\glsentrydescplural{#2}}{%
-\glsentrysymbolplural{#2}}{#3}}}%
-\ifglsused{#2}{%
- \@gls@link[#1]{#2}{\MakeUppercase{\@glo@text}}%
-}{%
- \gls@checkisacronymlist\@glo@type
- \ifthenelse{\(\boolean{@glsisacronymlist}\AND
- \boolean{glsacrfootnote}\) \OR \NOT\boolean{glshyperfirst}}{%
- \@gls@link[#1,hyper=false]{#2}{\MakeUppercase{\@glo@text}}%
- }{%
- \@gls@link[#1]{#2}{\MakeUppercase{\@glo@text}}%
- }%
-}%
-\glsunset{#2}}%
-}
-\newcommand*{\glsdisp}{\@ifstar\@sglsdisp\@glsdisp}
-\newcommand*{\@sglsdisp}[1][]{\@glsdisp[hyper=false,#1]}
-\newcommand*{\@glsdisp}[3][]{%
- \glsdoifexists{#2}{%
- \edef\@glo@type{\glsentrytype{#2}}%
- \def\@gls@link@opts{#1}%
- \def\@gls@link@label{#2}%
- \ifglsused{#2}%
- {%
- \def\@glo@text{%
- \csname gls@\@glo@type @display\endcsname
- {#3}{\glsentrydesc{#2}}{\glsentrysymbol{#2}}{}}%
- }%
- {%
- \def\@glo@text{%
- \csname gls@\@glo@type @displayfirst\endcsname
- {#3}{\glsentrydesc{#2}}{\glsentrysymbol{#2}}{}}%
- }%
- \ifglsused{#2}%
- {%
- \@gls@link[#1]{#2}{\@glo@text}%
- }%
- {%
- \gls@checkisacronymlist\@glo@type
- \ifthenelse{\(\boolean{@glsisacronymlist}\AND
- \boolean{glsacrfootnote}\) \OR \NOT\boolean{glshyperfirst}}%
- {%
- \@gls@link[#1,hyper=false]{#2}{\@glo@text}%
- }%
- {%
- \@gls@link[#1]{#2}{\@glo@text}%
- }%
- }%
- \glsunset{#2}%
- }%
-}
-\newcommand*{\glstext}{\@ifstar\@sglstext\@glstext}
-\newcommand*{\@sglstext}[1][]{\@glstext[hyper=false,#1]}
-\newcommand*{\@glstext}[2][]{%
-\new@ifnextchar[{\@glstext@{#1}{#2}}{\@glstext@{#1}{#2}[]}}
-\def\@glstext@#1#2[#3]{%
-\glsdoifexists{#2}{\edef\@glo@type{\glsentrytype{#2}}%
-\protected@edef\@glo@text{\glsentrytext{#2}}%
-\@gls@link[#1]{#2}{\@glo@text#3}%
-}%
-}
-\newcommand*{\GLStext}{\@ifstar\@sGLStext\@GLStext}
-\newcommand*{\@sGLStext}[1][]{\@GLStext[hyper=false,#1]}
-\newcommand*{\@GLStext}[2][]{%
-\new@ifnextchar[{\@GLStext@{#1}{#2}}{\@GLStext@{#1}{#2}[]}}
-\def\@GLStext@#1#2[#3]{%
-\glsdoifexists{#2}{\edef\@glo@type{\glsentrytype{#2}}%
-\protected@edef\@glo@text{\glsentrytext{#2}}%
-\@gls@link[#1]{#2}{\MakeUppercase{\@glo@text#3}}%
-}%
-}
-\newcommand*{\Glstext}{\@ifstar\@sGlstext\@Glstext}
-\newcommand*{\@sGlstext}[1][]{\@Glstext[hyper=false,#1]}
-\newcommand*{\@Glstext}[2][]{%
-\new@ifnextchar[{\@Glstext@{#1}{#2}}{\@Glstext@{#1}{#2}[]}}
-\def\@Glstext@#1#2[#3]{%
-\glsdoifexists{#2}{\edef\@glo@type{\glsentrytype{#2}}%
-\protected@edef\@glo@text{\glsentrytext{#2}}%
-\@gls@link[#1]{#2}{%
- \expandafter\makefirstuc\expandafter{\@glo@text}#3}%
-}%
-}
-\newcommand*{\glsfirst}{\@ifstar\@sglsfirst\@glsfirst}
-\newcommand*{\@sglsfirst}[1][]{\@glsfirst[hyper=false,#1]}
-\newcommand*{\@glsfirst}[2][]{%
-\new@ifnextchar[{\@glsfirst@{#1}{#2}}{\@glsfirst@{#1}{#2}[]}}
-\def\@glsfirst@#1#2[#3]{%
-\glsdoifexists{#2}{\edef\@glo@type{\glsentrytype{#2}}%
-\protected@edef\@glo@text{\glsentryfirst{#2}}%
-\@gls@link[#1]{#2}{\@glo@text#3}%
-}%
-}
-\newcommand*{\Glsfirst}{\@ifstar\@sGlsfirst\@Glsfirst}
-\newcommand*{\@sGlsfirst}[1][]{\@Glsfirst[hyper=false,#1]}
-\newcommand*{\@Glsfirst}[2][]{%
-\new@ifnextchar[{\@Glsfirst@{#1}{#2}}{\@Glsfirst@{#1}{#2}[]}}
-\def\@Glsfirst@#1#2[#3]{%
-\glsdoifexists{#2}{\edef\@glo@type{\glsentrytype{#2}}%
-\protected@edef\@glo@text{\glsentryfirst{#2}}%
-\@gls@link[#1]{#2}{%
- \expandafter\makefirstuc\expandafter{\@glo@text}#3}%
-}%
-}
-\newcommand*{\GLSfirst}{\@ifstar\@sGLSfirst\@GLSfirst}
-\newcommand*{\@sGLSfirst}[1][]{\@GLSfirst[hyper=false,#1]}
-\newcommand*{\@GLSfirst}[2][]{%
-\new@ifnextchar[{\@GLSfirst@{#1}{#2}}{\@GLSfirst@{#1}{#2}[]}}
-\def\@GLSfirst@#1#2[#3]{%
-\glsdoifexists{#2}{\edef\@glo@type{\glsentrytype{#2}}%
-\protected@edef\@glo@text{\glsentryfirst{#2}}%
-\@gls@link[#1]{#2}{\MakeUppercase{\@glo@text#3}}%
-}%
-}
-\newcommand*{\glsplural}{\@ifstar\@sglsplural\@glsplural}
-\newcommand*{\@sglsplural}[1][]{\@glsplural[hyper=false,#1]}
-\newcommand*{\@glsplural}[2][]{%
-\new@ifnextchar[{\@glsplural@{#1}{#2}}{\@glsplural@{#1}{#2}[]}}
-\def\@glsplural@#1#2[#3]{%
-\glsdoifexists{#2}{\edef\@glo@type{\glsentrytype{#2}}%
-\protected@edef\@glo@text{\glsentryplural{#2}}%
-\@gls@link[#1]{#2}{\@glo@text#3}%
-}%
-}
-\newcommand*{\Glsplural}{\@ifstar\@sGlsplural\@Glsplural}
-\newcommand*{\@sGlsplural}[1][]{\@Glsplural[hyper=false,#1]}
-\newcommand*{\@Glsplural}[2][]{%
-\new@ifnextchar[{\@Glsplural@{#1}{#2}}{\@Glsplural@{#1}{#2}[]}}
-\def\@Glsplural@#1#2[#3]{%
-\glsdoifexists{#2}{\edef\@glo@type{\glsentrytype{#2}}%
-\protected@edef\@glo@text{\glsentryplural{#2}}%
-\@gls@link[#1]{#2}{%
- \expandafter\makefirstuc\expandafter{\@glo@text}#3}%
-}%
-}
-\newcommand*{\GLSplural}{\@ifstar\@sGLSplural\@GLSplural}
-\newcommand*{\@sGLSplural}[1][]{\@GLSplural[hyper=false,#1]}
-\newcommand*{\@GLSplural}[2][]{%
-\new@ifnextchar[{\@GLSplural@{#1}{#2}}{\@GLSplural@{#1}{#2}[]}}
-\def\@GLSplural@#1#2[#3]{%
-\glsdoifexists{#2}{\edef\@glo@type{\glsentrytype{#2}}%
-\protected@edef\@glo@text{\glsentryplural{#2}}%
-\@gls@link[#1]{#2}{\MakeUppercase{\@glo@text#3}}%
-}%
-}
-\newcommand*{\glsfirstplural}{\@ifstar\@sglsfirstplural\@glsfirstplural}
-\newcommand*{\@sglsfirstplural}[1][]{\@glsfirstplural[hyper=false,#1]}
-\newcommand*{\@glsfirstplural}[2][]{%
-\new@ifnextchar[{\@glsfirstplural@{#1}{#2}}{\@glsfirstplural@{#1}{#2}[]}}
-\def\@glsfirstplural@#1#2[#3]{%
-\glsdoifexists{#2}{\edef\@glo@type{\glsentrytype{#2}}%
-\protected@edef\@glo@text{\glsentryfirstplural{#2}}%
-\@gls@link[#1]{#2}{\@glo@text#3}%
-}%
-}
-\newcommand*{\Glsfirstplural}{\@ifstar\@sGlsfirstplural\@Glsfirstplural}
-\newcommand*{\@sGlsfirstplural}[1][]{\@Glsfirstplural[hyper=false,#1]}
-\newcommand*{\@Glsfirstplural}[2][]{%
-\new@ifnextchar[{\@Glsfirstplural@{#1}{#2}}{\@Glsfirstplural@{#1}{#2}[]}}
-\def\@Glsfirstplural@#1#2[#3]{%
-\glsdoifexists{#2}{\edef\@glo@type{\glsentrytype{#2}}%
-\protected@edef\@glo@text{\glsentryfirstplural{#2}}%
-\@gls@link[#1]{#2}{%
- \expandafter\makefirstuc\expandafter{\@glo@text}#3}%
-}%
-}
-\newcommand*{\GLSfirstplural}{\@ifstar\@sGLSfirstplural\@GLSfirstplural}
-\newcommand*{\@sGLSfirstplural}[1][]{\@GLSfirstplural[hyper=false,#1]}
-\newcommand*{\@GLSfirstplural}[2][]{%
-\new@ifnextchar[{\@GLSfirstplural@{#1}{#2}}{\@GLSfirstplural@{#1}{#2}[]}}
-\def\@GLSfirstplural@#1#2[#3]{%
-\glsdoifexists{#2}{\edef\@glo@type{\glsentrytype{#2}}%
-\protected@edef\@glo@text{\glsentryfirstplural{#2}}%
-\@gls@link[#1]{#2}{\MakeUppercase{\@glo@text#3}}%
-}%
-}
-\newcommand*{\glsname}{\@ifstar\@sglsname\@glsname}
-\newcommand*{\@sglsname}[1][]{\@glsname[hyper=false,#1]}
-\newcommand*{\@glsname}[2][]{%
-\new@ifnextchar[{\@glsname@{#1}{#2}}{\@glsname@{#1}{#2}[]}}
-\def\@glsname@#1#2[#3]{%
-\glsdoifexists{#2}{\edef\@glo@type{\glsentrytype{#2}}%
-\protected@edef\@glo@text{\glsentryname{#2}}%
-\@gls@link[#1]{#2}{\@glo@text#3}%
-}%
-}
-\newcommand*{\Glsname}{\@ifstar\@sGlsname\@Glsname}
-\newcommand*{\@sGlsname}[1][]{\@Glsname[hyper=false,#1]}
-\newcommand*{\@Glsname}[2][]{%
-\new@ifnextchar[{\@Glsname@{#1}{#2}}{\@Glsname@{#1}{#2}[]}}
-\def\@Glsname@#1#2[#3]{%
-\glsdoifexists{#2}{\edef\@glo@type{\glsentrytype{#2}}%
-\protected@edef\@glo@text{\glsentryname{#2}}%
-\@gls@link[#1]{#2}{%
- \expandafter\makefirstuc\expandafter{\@glo@text}#3}%
-}%
-}
-\newcommand*{\GLSname}{\@ifstar\@sGLSname\@GLSname}
-\newcommand*{\@sGLSname}[1][]{\@GLSname[hyper=false,#1]}
-\newcommand*{\@GLSname}[2][]{%
-\new@ifnextchar[{\@GLSname@{#1}{#2}}{\@GLSname@{#1}{#2}[]}}
-\def\@GLSname@#1#2[#3]{%
-\glsdoifexists{#2}{\edef\@glo@type{\glsentrytype{#2}}%
-\protected@edef\@glo@text{\glsentryname{#2}}%
-\@gls@link[#1]{#2}{\MakeUppercase{\@glo@text#3}}%
-}%
-}
-\newcommand*{\glsdesc}{\@ifstar\@sglsdesc\@glsdesc}
-\newcommand*{\@sglsdesc}[1][]{\@glsdesc[hyper=false,#1]}
-\newcommand*{\@glsdesc}[2][]{%
-\new@ifnextchar[{\@glsdesc@{#1}{#2}}{\@glsdesc@{#1}{#2}[]}}
-\def\@glsdesc@#1#2[#3]{%
-\glsdoifexists{#2}{\edef\@glo@type{\glsentrytype{#2}}%
-\protected@edef\@glo@text{\glsentrydesc{#2}}%
-\@gls@link[#1]{#2}{\@glo@text#3}%
-}%
-}
-\newcommand*{\Glsdesc}{\@ifstar\@sGlsdesc\@Glsdesc}
-\newcommand*{\@sGlsdesc}[1][]{\@Glsdesc[hyper=false,#1]}
-\newcommand*{\@Glsdesc}[2][]{%
-\new@ifnextchar[{\@Glsdesc@{#1}{#2}}{\@Glsdesc@{#1}{#2}[]}}
-\def\@Glsdesc@#1#2[#3]{%
-\glsdoifexists{#2}{\edef\@glo@type{\glsentrytype{#2}}%
-\protected@edef\@glo@text{\glsentrydesc{#2}}%
-\@gls@link[#1]{#2}{%
- \expandafter\makefirstuc\expandafter{\@glo@text}#3}%
-}%
-}
-\newcommand*{\GLSdesc}{\@ifstar\@sGLSdesc\@GLSdesc}
-\newcommand*{\@sGLSdesc}[1][]{\@GLSdesc[hyper=false,#1]}
-\newcommand*{\@GLSdesc}[2][]{%
-\new@ifnextchar[{\@GLSdesc@{#1}{#2}}{\@GLSdesc@{#1}{#2}[]}}
-\def\@GLSdesc@#1#2[#3]{%
-\glsdoifexists{#2}{\edef\@glo@type{\glsentrytype{#2}}%
-\protected@edef\@glo@text{\glsentrydesc{#2}}%
-\@gls@link[#1]{#2}{\MakeUppercase{\@glo@text#3}}%
-}%
-}
-\newcommand*{\glsdescplural}{\@ifstar\@sglsdescplural\@glsdescplural}
-\newcommand*{\@sglsdescplural}[1][]{\@glsdescplural[hyper=false,#1]}
-\newcommand*{\@glsdescplural}[2][]{%
-\new@ifnextchar[{\@glsdescplural@{#1}{#2}}{\@glsdescplural@{#1}{#2}[]}}
-\def\@glsdescplural@#1#2[#3]{%
-\glsdoifexists{#2}{\edef\@glo@type{\glsentrytype{#2}}%
-\protected@edef\@glo@text{\glsentrydescplural{#2}}%
-\@gls@link[#1]{#2}{\@glo@text#3}%
-}%
-}
-\newcommand*{\Glsdescplural}{\@ifstar\@sGlsdescplural\@Glsdescplural}
-\newcommand*{\@sGlsdescplural}[1][]{\@Glsdescplural[hyper=false,#1]}
-\newcommand*{\@Glsdescplural}[2][]{%
-\new@ifnextchar[{\@Glsdescplural@{#1}{#2}}{\@Glsdescplural@{#1}{#2}[]}}
-\def\@Glsdescplural@#1#2[#3]{%
-\glsdoifexists{#2}{\edef\@glo@type{\glsentrytype{#2}}%
-\protected@edef\@glo@text{\glsentrydescplural{#2}}%
-\@gls@link[#1]{#2}{%
- \expandafter\makefirstuc\expandafter{\@glo@text}#3}%
-}%
-}
-\newcommand*{\GLSdescplural}{\@ifstar\@sGLSdescplural\@GLSdescplural}
-\newcommand*{\@sGLSdescplural}[1][]{\@GLSdescplural[hyper=false,#1]}
-\newcommand*{\@GLSdescplural}[2][]{%
-\new@ifnextchar[{\@GLSdescplural@{#1}{#2}}{\@GLSdescplural@{#1}{#2}[]}}
-\def\@GLSdescplural@#1#2[#3]{%
-\glsdoifexists{#2}{\edef\@glo@type{\glsentrytype{#2}}%
-\protected@edef\@glo@text{\glsentrydescplural{#2}}%
-\@gls@link[#1]{#2}{\MakeUppercase{\@glo@text#3}}%
-}%
-}
-\newcommand*{\glssymbol}{\@ifstar\@sglssymbol\@glssymbol}
-\newcommand*{\@sglssymbol}[1][]{\@glssymbol[hyper=false,#1]}
-\newcommand*{\@glssymbol}[2][]{%
-\new@ifnextchar[{\@glssymbol@{#1}{#2}}{\@glssymbol@{#1}{#2}[]}}
-\def\@glssymbol@#1#2[#3]{%
-\glsdoifexists{#2}{\edef\@glo@type{\glsentrytype{#2}}%
-\protected@edef\@glo@text{\glsentrysymbol{#2}}%
-\@gls@link[#1]{#2}{\@glo@text#3}%
-}%
-}
-\newcommand*{\Glssymbol}{\@ifstar\@sGlssymbol\@Glssymbol}
-\newcommand*{\@sGlssymbol}[1][]{\@Glssymbol[hyper=false,#1]}
-\newcommand*{\@Glssymbol}[2][]{%
-\new@ifnextchar[{\@Glssymbol@{#1}{#2}}{\@Glssymbol@{#1}{#2}[]}}
-\def\@Glssymbol@#1#2[#3]{%
-\glsdoifexists{#2}{\edef\@glo@type{\glsentrytype{#2}}%
-\protected@edef\@glo@text{\glsentrysymbol{#2}}%
-\@gls@link[#1]{#2}{%
- \expandafter\makefirstuc\expandafter{\@glo@text}#3}%
-}%
-}
-\newcommand*{\GLSsymbol}{\@ifstar\@sGLSsymbol\@GLSsymbol}
-\newcommand*{\@sGLSsymbol}[1][]{\@GLSsymbol[hyper=false,#1]}
-\newcommand*{\@GLSsymbol}[2][]{%
-\new@ifnextchar[{\@GLSsymbol@{#1}{#2}}{\@GLSsymbol@{#1}{#2}[]}}
-\def\@GLSsymbol@#1#2[#3]{%
-\glsdoifexists{#2}{\edef\@glo@type{\glsentrytype{#2}}%
-\protected@edef\@glo@text{\glsentrysymbol{#2}}%
-\@gls@link[#1]{#2}{\MakeUppercase{\@glo@text#3}}%
-}%
-}
-\newcommand*{\glssymbolplural}{\@ifstar\@sglssymbolplural\@glssymbolplural}
-\newcommand*{\@sglssymbolplural}[1][]{\@glssymbolplural[hyper=false,#1]}
-\newcommand*{\@glssymbolplural}[2][]{%
-\new@ifnextchar[{\@glssymbolplural@{#1}{#2}}{\@glssymbolplural@{#1}{#2}[]}}
-\def\@glssymbolplural@#1#2[#3]{%
-\glsdoifexists{#2}{\edef\@glo@type{\glsentrytype{#2}}%
-\protected@edef\@glo@text{\glsentrysymbolplural{#2}}%
-\@gls@link[#1]{#2}{\@glo@text#3}%
-}%
-}
-\newcommand*{\Glssymbolplural}{\@ifstar\@sGlssymbolplural\@Glssymbolplural}
-\newcommand*{\@sGlssymbolplural}[1][]{\@Glssymbolplural[hyper=false,#1]}
-\newcommand*{\@Glssymbolplural}[2][]{%
-\new@ifnextchar[{\@Glssymbolplural@{#1}{#2}}{\@Glssymbolplural@{#1}{#2}[]}}
-\def\@Glssymbolplural@#1#2[#3]{%
-\glsdoifexists{#2}{\edef\@glo@type{\glsentrytype{#2}}%
-\protected@edef\@glo@text{\glsentrysymbolplural{#2}}%
-\@gls@link[#1]{#2}{%
- \expandafter\makefirstuc\expandafter{\@glo@text}#3}%
-}%
-}
-\newcommand*{\GLSsymbolplural}{\@ifstar\@sGLSsymbolplural\@GLSsymbolplural}
-\newcommand*{\@sGLSsymbolplural}[1][]{\@GLSsymbolplural[hyper=false,#1]}
-\newcommand*{\@GLSsymbolplural}[2][]{%
-\new@ifnextchar[{\@GLSsymbolplural@{#1}{#2}}{\@GLSsymbolplural@{#1}{#2}[]}}
-\def\@GLSsymbolplural@#1#2[#3]{%
-\glsdoifexists{#2}{\edef\@glo@type{\glsentrytype{#2}}%
-\protected@edef\@glo@text{\glsentrysymbolplural{#2}}%
-\@gls@link[#1]{#2}{\MakeUppercase{\@glo@text#3}}%
-}%
-}
-\newcommand*{\glsuseri}{\@ifstar\@sglsuseri\@glsuseri}
-\newcommand*{\@sglsuseri}[1][]{\@glsuseri[hyper=false,#1]}
-\newcommand*{\@glsuseri}[2][]{%
-\new@ifnextchar[{\@glsuseri@{#1}{#2}}{\@glsuseri@{#1}{#2}[]}}
-\def\@glsuseri@#1#2[#3]{%
-\glsdoifexists{#2}{\edef\@glo@type{\glsentrytype{#2}}%
-\protected@edef\@glo@text{\glsentryuseri{#2}}%
-\@gls@link[#1]{#2}{\@glo@text#3}%
-}%
-}
-\newcommand*{\Glsuseri}{\@ifstar\@sGlsuseri\@Glsuseri}
-\newcommand*{\@sGlsuseri}[1][]{\@Glsuseri[hyper=false,#1]}
-\newcommand*{\@Glsuseri}[2][]{%
-\new@ifnextchar[{\@Glsuseri@{#1}{#2}}{\@Glsuseri@{#1}{#2}[]}}
-\def\@Glsuseri@#1#2[#3]{%
-\glsdoifexists{#2}{\edef\@glo@type{\glsentrytype{#2}}%
-\protected@edef\@glo@text{\glsentryuseri{#2}}%
-\@gls@link[#1]{#2}{%
- \expandafter\makefirstuc\expandafter{\@glo@text}#3}%
-}%
-}
-\newcommand*{\GLSuseri}{\@ifstar\@sGLSuseri\@GLSuseri}
-\newcommand*{\@sGLSuseri}[1][]{\@GLSuseri[hyper=false,#1]}
-\newcommand*{\@GLSuseri}[2][]{%
-\new@ifnextchar[{\@GLSuseri@{#1}{#2}}{\@GLSuseri@{#1}{#2}[]}}
-\def\@GLSuseri@#1#2[#3]{%
-\glsdoifexists{#2}{\edef\@glo@type{\glsentrytype{#2}}%
-\protected@edef\@glo@text{\glsentryuseri{#2}}%
-\@gls@link[#1]{#2}{\MakeUppercase{\@glo@text#3}}%
-}%
-}
-\newcommand*{\glsuserii}{\@ifstar\@sglsuserii\@glsuserii}
-\newcommand*{\@sglsuserii}[1][]{\@glsuserii[hyper=false,#1]}
-\newcommand*{\@glsuserii}[2][]{%
-\new@ifnextchar[{\@glsuserii@{#1}{#2}}{\@glsuserii@{#1}{#2}[]}}
-\def\@glsuserii@#1#2[#3]{%
-\glsdoifexists{#2}{\edef\@glo@type{\glsentrytype{#2}}%
-\protected@edef\@glo@text{\glsentryuserii{#2}}%
-\@gls@link[#1]{#2}{\@glo@text#3}%
-}%
-}
-\newcommand*{\Glsuserii}{\@ifstar\@sGlsuserii\@Glsuserii}
-\newcommand*{\@sGlsuserii}[1][]{\@Glsuserii[hyper=false,#1]}
-\newcommand*{\@Glsuserii}[2][]{%
-\new@ifnextchar[{\@Glsuserii@{#1}{#2}}{\@Glsuserii@{#1}{#2}[]}}
-\def\@Glsuserii@#1#2[#3]{%
-\glsdoifexists{#2}{\edef\@glo@type{\glsentrytype{#2}}%
-\protected@edef\@glo@text{\glsentryuserii{#2}}%
-\@gls@link[#1]{#2}{%
- \expandafter\makefirstuc\expandafter{\@glo@text}#3}%
-}%
-}
-\newcommand*{\GLSuserii}{\@ifstar\@sGLSuserii\@GLSuserii}
-\newcommand*{\@sGLSuserii}[1][]{\@GLSuserii[hyper=false,#1]}
-\newcommand*{\@GLSuserii}[2][]{%
-\new@ifnextchar[{\@GLSuserii@{#1}{#2}}{\@GLSuserii@{#1}{#2}[]}}
-\def\@GLSuserii@#1#2[#3]{%
-\glsdoifexists{#2}{\edef\@glo@type{\glsentrytype{#2}}%
-\protected@edef\@glo@text{\glsentryuserii{#2}}%
-\@gls@link[#1]{#2}{\MakeUppercase{\@glo@text#3}}%
-}%
-}
-\newcommand*{\glsuseriii}{\@ifstar\@sglsuseriii\@glsuseriii}
-\newcommand*{\@sglsuseriii}[1][]{\@glsuseriii[hyper=false,#1]}
-\newcommand*{\@glsuseriii}[2][]{%
-\new@ifnextchar[{\@glsuseriii@{#1}{#2}}{\@glsuseriii@{#1}{#2}[]}}
-\def\@glsuseriii@#1#2[#3]{%
-\glsdoifexists{#2}{\edef\@glo@type{\glsentrytype{#2}}%
-\protected@edef\@glo@text{\glsentryuseriii{#2}}%
-\@gls@link[#1]{#2}{\@glo@text#3}%
-}%
-}
-\newcommand*{\Glsuseriii}{\@ifstar\@sGlsuseriii\@Glsuseriii}
-\newcommand*{\@sGlsuseriii}[1][]{\@Glsuseriii[hyper=false,#1]}
-\newcommand*{\@Glsuseriii}[2][]{%
-\new@ifnextchar[{\@Glsuseriii@{#1}{#2}}{\@Glsuseriii@{#1}{#2}[]}}
-\def\@Glsuseriii@#1#2[#3]{%
-\glsdoifexists{#2}{\edef\@glo@type{\glsentrytype{#2}}%
-\protected@edef\@glo@text{\glsentryuseriii{#2}}%
-\@gls@link[#1]{#2}{%
- \expandafter\makefirstuc\expandafter{\@glo@text}#3}%
-}%
-}
-\newcommand*{\GLSuseriii}{\@ifstar\@sGLSuseriii\@GLSuseriii}
-\newcommand*{\@sGLSuseriii}[1][]{\@GLSuseriii[hyper=false,#1]}
-\newcommand*{\@GLSuseriii}[2][]{%
-\new@ifnextchar[{\@GLSuseriii@{#1}{#2}}{\@GLSuseriii@{#1}{#2}[]}}
-\def\@GLSuseriii@#1#2[#3]{%
-\glsdoifexists{#2}{\edef\@glo@type{\glsentrytype{#2}}%
-\protected@edef\@glo@text{\glsentryuseriii{#2}}%
-\@gls@link[#1]{#2}{\MakeUppercase{\@glo@text#3}}%
-}%
-}
-\newcommand*{\glsuseriv}{\@ifstar\@sglsuseriv\@glsuseriv}
-\newcommand*{\@sglsuseriv}[1][]{\@glsuseriv[hyper=false,#1]}
-\newcommand*{\@glsuseriv}[2][]{%
-\new@ifnextchar[{\@glsuseriv@{#1}{#2}}{\@glsuseriv@{#1}{#2}[]}}
-\def\@glsuseriv@#1#2[#3]{%
-\glsdoifexists{#2}{\edef\@glo@type{\glsentrytype{#2}}%
-\protected@edef\@glo@text{\glsentryuseriv{#2}}%
-\@gls@link[#1]{#2}{\@glo@text#3}%
-}%
-}
-\newcommand*{\Glsuseriv}{\@ifstar\@sGlsuseriv\@Glsuseriv}
-\newcommand*{\@sGlsuseriv}[1][]{\@Glsuseriv[hyper=false,#1]}
-\newcommand*{\@Glsuseriv}[2][]{%
-\new@ifnextchar[{\@Glsuseriv@{#1}{#2}}{\@Glsuseriv@{#1}{#2}[]}}
-\def\@Glsuseriv@#1#2[#3]{%
-\glsdoifexists{#2}{\edef\@glo@type{\glsentrytype{#2}}%
-\protected@edef\@glo@text{\glsentryuseriv{#2}}%
-\@gls@link[#1]{#2}{%
- \expandafter\makefirstuc\expandafter{\@glo@text}#3}%
-}%
-}
-\newcommand*{\GLSuseriv}{\@ifstar\@sGLSuseriv\@GLSuseriv}
-\newcommand*{\@sGLSuseriv}[1][]{\@GLSuseriv[hyper=false,#1]}
-\newcommand*{\@GLSuseriv}[2][]{%
-\new@ifnextchar[{\@GLSuseriv@{#1}{#2}}{\@GLSuseriv@{#1}{#2}[]}}
-\def\@GLSuseriv@#1#2[#3]{%
-\glsdoifexists{#2}{\edef\@glo@type{\glsentrytype{#2}}%
-\protected@edef\@glo@text{\glsentryuseriv{#2}}%
-\@gls@link[#1]{#2}{\MakeUppercase{\@glo@text#3}}%
-}%
-}
-\newcommand*{\glsuserv}{\@ifstar\@sglsuserv\@glsuserv}
-\newcommand*{\@sglsuserv}[1][]{\@glsuserv[hyper=false,#1]}
-\newcommand*{\@glsuserv}[2][]{%
-\new@ifnextchar[{\@glsuserv@{#1}{#2}}{\@glsuserv@{#1}{#2}[]}}
-\def\@glsuserv@#1#2[#3]{%
-\glsdoifexists{#2}{\edef\@glo@type{\glsentrytype{#2}}%
-\protected@edef\@glo@text{\glsentryuserv{#2}}%
-\@gls@link[#1]{#2}{\@glo@text#3}%
-}%
-}
-\newcommand*{\Glsuserv}{\@ifstar\@sGlsuserv\@Glsuserv}
-\newcommand*{\@sGlsuserv}[1][]{\@Glsuserv[hyper=false,#1]}
-\newcommand*{\@Glsuserv}[2][]{%
-\new@ifnextchar[{\@Glsuserv@{#1}{#2}}{\@Glsuserv@{#1}{#2}[]}}
-\def\@Glsuserv@#1#2[#3]{%
-\glsdoifexists{#2}{\edef\@glo@type{\glsentrytype{#2}}%
-\protected@edef\@glo@text{\glsentryuserv{#2}}%
-\@gls@link[#1]{#2}{%
- \expandafter\makefirstuc\expandafter{\@glo@text}#3}%
-}%
-}
-\newcommand*{\GLSuserv}{\@ifstar\@sGLSuserv\@GLSuserv}
-\newcommand*{\@sGLSuserv}[1][]{\@GLSuserv[hyper=false,#1]}
-\newcommand*{\@GLSuserv}[2][]{%
-\new@ifnextchar[{\@GLSuserv@{#1}{#2}}{\@GLSuserv@{#1}{#2}[]}}
-\def\@GLSuserv@#1#2[#3]{%
-\glsdoifexists{#2}{\edef\@glo@type{\glsentrytype{#2}}%
-\protected@edef\@glo@text{\glsentryuserv{#2}}%
-\@gls@link[#1]{#2}{\MakeUppercase{\@glo@text#3}}%
-}%
-}
-\newcommand*{\glsuservi}{\@ifstar\@sglsuservi\@glsuservi}
-\newcommand*{\@sglsuservi}[1][]{\@glsuservi[hyper=false,#1]}
-\newcommand*{\@glsuservi}[2][]{%
-\new@ifnextchar[{\@glsuservi@{#1}{#2}}{\@glsuservi@{#1}{#2}[]}}
-\def\@glsuservi@#1#2[#3]{%
-\glsdoifexists{#2}{\edef\@glo@type{\glsentrytype{#2}}%
-\protected@edef\@glo@text{\glsentryuservi{#2}}%
-\@gls@link[#1]{#2}{\@glo@text#3}%
-}%
-}
-\newcommand*{\Glsuservi}{\@ifstar\@sGlsuservi\@Glsuservi}
-\newcommand*{\@sGlsuservi}[1][]{\@Glsuservi[hyper=false,#1]}
-\newcommand*{\@Glsuservi}[2][]{%
-\new@ifnextchar[{\@Glsuservi@{#1}{#2}}{\@Glsuservi@{#1}{#2}[]}}
-\def\@Glsuservi@#1#2[#3]{%
-\glsdoifexists{#2}{\edef\@glo@type{\glsentrytype{#2}}%
-\protected@edef\@glo@text{\glsentryuservi{#2}}%
-\@gls@link[#1]{#2}{%
- \expandafter\makefirstuc\expandafter{\@glo@text}#3}%
-}%
-}
-\newcommand*{\GLSuservi}{\@ifstar\@sGLSuservi\@GLSuservi}
-\newcommand*{\@sGLSuservi}[1][]{\@GLSuservi[hyper=false,#1]}
-\newcommand*{\@GLSuservi}[2][]{%
-\new@ifnextchar[{\@GLSuservi@{#1}{#2}}{\@GLSuservi@{#1}{#2}[]}}
-\def\@GLSuservi@#1#2[#3]{%
-\glsdoifexists{#2}{\edef\@glo@type{\glsentrytype{#2}}%
-\protected@edef\@glo@text{\glsentryuservi{#2}}%
-\@gls@link[#1]{#2}{\MakeUppercase{\@glo@text#3}}%
-}%
-}
-\newcommand*{\glsentryname}[1]{\csname glo@#1@name\endcsname}
-\newcommand*{\Glsentryname}[1]{%
-\protected@edef\@glo@text{\csname glo@#1@name\endcsname}%
-\expandafter\makefirstuc\expandafter{\@glo@text}}
-\newcommand*{\glsentrydesc}[1]{\csname glo@#1@desc\endcsname}
-\newcommand*{\Glsentrydesc}[1]{%
-\protected@edef\@glo@text{\csname glo@#1@desc\endcsname}%
-\expandafter\makefirstuc\expandafter{\@glo@text}}
-\newcommand*{\glsentrydescplural}[1]{%
-\csname glo@#1@descplural\endcsname}
-\newcommand*{\Glsentrydescplural}[1]{%
-\protected@edef\@glo@text{\csname glo@#1@descplural\endcsname}%
-\expandafter\makefirstuc\expandafter{\@glo@text}}
-\newcommand*{\glsentrytext}[1]{\csname glo@#1@text\endcsname}
-\newcommand*{\Glsentrytext}[1]{%
-\protected@edef\@glo@text{\csname glo@#1@text\endcsname}%
-\expandafter\makefirstuc\expandafter{\@glo@text}}
-\newcommand*{\glsentryplural}[1]{\csname glo@#1@plural\endcsname}
-\newcommand*{\Glsentryplural}[1]{%
-\protected@edef\@glo@text{\csname glo@#1@plural\endcsname}%
-\expandafter\makefirstuc\expandafter{\@glo@text}}
-\newcommand*{\glsentrysymbol}[1]{\csname glo@#1@symbol\endcsname}
-\newcommand*{\Glsentrysymbol}[1]{%
-\protected@edef\@glo@text{\csname glo@#1@symbol\endcsname}%
-\expandafter\makefirstuc\expandafter{\@glo@text}}
-\newcommand*{\glsentrysymbolplural}[1]{%
-\csname glo@#1@symbolplural\endcsname}
-\newcommand*{\Glsentrysymbolplural}[1]{%
-\protected@edef\@glo@text{\csname glo@#1@symbolplural\endcsname}%
-\expandafter\makefirstuc\expandafter{\@glo@text}}
-\newcommand*{\glsentryfirst}[1]{\csname glo@#1@first\endcsname}
-\newcommand*{\Glsentryfirst}[1]{%
-\protected@edef\@glo@text{\csname glo@#1@first\endcsname}%
-\expandafter\makefirstuc\expandafter{\@glo@text}}
-\newcommand*{\glsentryfirstplural}[1]{%
-\csname glo@#1@firstpl\endcsname}
-\newcommand*{\Glsentryfirstplural}[1]{%
-\protected@edef\@glo@text{\csname glo@#1@firstpl\endcsname}%
-\expandafter\makefirstuc\expandafter{\@glo@text}}
-\newcommand*{\glsentrytype}[1]{\csname glo@#1@type\endcsname}
-\newcommand*{\glsentrysort}[1]{\csname glo@#1@sort\endcsname}
-\newcommand*{\glsentryuseri}[1]{\csname glo@#1@useri\endcsname}
-\newcommand*{\Glsentryuseri}[1]{%
-\protected@edef\@glo@text{\csname glo@#1@useri\endcsname}%
-\expandafter\makefirstuc\expandafter{\@glo@text}}
-\newcommand*{\glsentryuserii}[1]{\csname glo@#1@userii\endcsname}
-\newcommand*{\Glsentryuserii}[1]{%
-\protected@edef\@glo@text{\csname glo@#1@userii\endcsname}%
-\expandafter\makefirstuc\expandafter{\@glo@text}}
-\newcommand*{\glsentryuseriii}[1]{\csname glo@#1@useriii\endcsname}
-\newcommand*{\Glsentryuseriii}[1]{%
-\protected@edef\@glo@text{\csname glo@#1@useriii\endcsname}%
-\expandafter\makefirstuc\expandafter{\@glo@text}}
-\newcommand*{\glsentryuseriv}[1]{\csname glo@#1@useriv\endcsname}
-\newcommand*{\Glsentryuseriv}[1]{%
-\protected@edef\@glo@text{\csname glo@#1@useriv\endcsname}%
-\expandafter\makefirstuc\expandafter{\@glo@text}}
-\newcommand*{\glsentryuserv}[1]{\csname glo@#1@userv\endcsname}
-\newcommand*{\Glsentryuserv}[1]{%
-\protected@edef\@glo@text{\csname glo@#1@userv\endcsname}%
-\expandafter\makefirstuc\expandafter{\@glo@text}}
-\newcommand*{\glsentryuservi}[1]{\csname glo@#1@uservi\endcsname}
-\newcommand*{\Glsentryuservi}[1]{%
-\protected@edef\@glo@text{\csname glo@#1@uservi\endcsname}%
-\expandafter\makefirstuc\expandafter{\@glo@text}}
-\newcommand*{\glshyperlink}[2][\glsentryname{\@glo@label}]{%
-\def\@glo@label{#2}%
-\@glslink{glo:#2}{#1}}
-\define@key{glossadd}{counter}{\def\@gls@counter{#1}}
-\define@key{glossadd}{format}{\def\@glo@format{#1}}
-\define@key{glossadd}{types}{\def\@glo@type{#1}}
-\newcommand*{\glsadd}[2][]{%
-\glsdoifexists{#2}{%
-\def\@glsnumberformat{glsnumberformat}%
-\edef\@gls@counter{\csname glo@#2@counter\endcsname}%
-\setkeys{glossadd}{#1}%
-\edef\theglsentrycounter{\expandafter\noexpand
- \csname the\@gls@counter\endcsname}%
-\@do@wrglossary{#2}%
-}}
-\newcommand*{\glsaddall}[1][]{%
-\edef\@glo@type{\@glo@types}%
-\setkeys{glossadd}{#1}%
-\forallglsentries[\@glo@type]{\@glo@entry}{%
-\glsadd[#1]{\@glo@entry}}%
-}
-\edef\glsopenbrace{\expandafter\@gobble\string\{}
-\edef\glsclosebrace{\expandafter\@gobble\string\}}
-\edef\glsquote#1{\string"#1\string"}
-\ifglsxindy
- \newcommand*{\@glsfirstletter}{A}
-\fi
-\ifglsxindy
- \newcommand*{\GlsSetXdyFirstLetterAfterDigits}[1]{%
- \renewcommand*{\@glsfirstletter}{#1}}
-\else
- \newcommand*{\GlsSetXdyFirstLetterAfterDigits}[1]{%
- \glsnoxindywarning\GlsSetXdyFirstLetterAfterDigits}
-\fi
-\newcommand*{\@glsminrange}{2}
-\ifglsxindy
- \newcommand*{\GlsSetXdyMinRangeLength}[1]{%
- \renewcommand*{\@glsminrange}{#1}}
-\else
- \newcommand*{\GlsSetXdyMinRangeLength}[1]{%
- \glsnoxindywarning\GlsSetXdyMinRangeLength}
-\fi
-\newwrite\istfile
-\ifglsxindy
- \def\writeist{%
- \openout\istfile=\istfilename
- \write\istfile{;; xindy style file created by the glossaries
- package}%
- \write\istfile{;; for document '\jobname' on
- \the\year-\the\month-\the\day}%
- \write\istfile{^^J; required styles^^J}
- \@for\@xdystyle:=\@xdyrequiredstyles\do{%
- \ifx\@xdystyle\@empty
- \else
- \protected@write\istfile{}{(require
- \string"\@xdystyle.xdy\string")}%
- \fi
- }%
- \write\istfile{^^J%
- ; list of allowed attributes (number formats)^^J}%
- \write\istfile{(define-attributes ((\@xdyattributes)))}%
- \write\istfile{^^J; user defined alphabets^^J}%
- \write\istfile{\@xdyuseralphabets}%
- \write\istfile{^^J; location class definitions^^J}%
- \protected@edef\@gls@roman{\@roman{0\string"
- \string"roman-numbers-lowercase\string" :sep \string"}}%
- \@onelevel@sanitize\@gls@roman
- \edef\@tmp{\string" \string"roman-numbers-lowercase\string"
- :sep \string"}%
- \@onelevel@sanitize\@tmp
- \ifx\@tmp\@gls@roman
- \write\istfile{(define-location-class
- \string"roman-page-numbers\string"^^J\space\space\space
- (\string"roman-numbers-lowercase\string")
- :min-range-length \@glsminrange)}%
- \else
- \write\istfile{(define-location-class
- \string"roman-page-numbers\string"^^J\space\space\space
- (:sep "\@gls@roman")
- :min-range-length \@glsminrange)}%
- \fi
- \write\istfile{(define-location-class
- \string"Roman-page-numbers\string"^^J\space\space\space
- (\string"roman-numbers-uppercase\string")
- :min-range-length \@glsminrange)}%
- \write\istfile{(define-location-class
- \string"arabic-page-numbers\string"^^J\space\space\space
- (\string"arabic-numbers\string")
- :min-range-length \@glsminrange)}%
- \write\istfile{(define-location-class
- \string"alpha-page-numbers\string"^^J\space\space\space
- (\string"alpha\string")
- :min-range-length \@glsminrange)}%
- \write\istfile{(define-location-class
- \string"Alpha-page-numbers\string"^^J\space\space\space
- (\string"ALPHA\string")
- :min-range-length \@glsminrange)}%
- \write\istfile{(define-location-class
- \string"Appendix-page-numbers\string"^^J\space\space\space
- (\string"ALPHA\string"
- :sep \string"\@glsAlphacompositor\string"
- \string"arabic-numbers\string")
- :min-range-length \@glsminrange)}%
- \write\istfile{(define-location-class
- \string"arabic-section-numbers\string"^^J\space\space\space
- (\string"arabic-numbers\string"
- :sep \string"\glscompositor\string"
- \string"arabic-numbers\string")
- :min-range-length \@glsminrange)}%
- \write\istfile{^^J; user defined location classes}%
- \write\istfile{\@xdyuserlocationdefs}%
- \write\istfile{^^J; define cross-reference class^^J}%
- \write\istfile{(define-crossref-class \string"see\string"
- :unverified )}%
- \write\istfile{(markup-crossref-list
- :class \string"see\string"^^J\space\space\space
- :open \string"\string\glsseeformat\string"
- :close \string"{}\string")}%
- \write\istfile{^^J; define the order of the location classes}%
- \write\istfile{(define-location-class-order
- (\@xdylocationclassorder))}%
- \write\istfile{^^J; define the glossary markup^^J}%
- \write\istfile{(markup-index^^J\space\space\space
- :open \string"\string
- \glossarysection[\string\glossarytoctitle]{\string
- \glossarytitle}\string\glossarypreamble\string~n\string\begin
- {theglossary}\string\glossaryheader\string~n\string" ^^J\space
- \space\space:close \string"\expandafter\@gobble
- \string\%\string~n\string
- \end{theglossary}\string\glossarypostamble
- \string~n\string" ^^J\space\space\space
- :tree)}%
- \write\istfile{(markup-letter-group-list
- :sep \string"\string\glsgroupskip\string~n\string")}%
- \write\istfile{(markup-indexentry
- :open \string"\string\relax \string\glsresetentrylist
- \string~n\string")}%
- \write\istfile{(markup-locclass-list :open
- \string"\glsopenbrace\string\glossaryentrynumbers
- \glsopenbrace\string\relax\space \string"^^J\space\space\space
- :sep \string", \string"
- :close \string"\glsclosebrace\glsclosebrace\string")}%
- \write\istfile{(markup-locref-list
- :sep \string"\string\delimN\space\string")}%
- \write\istfile{(markup-range
- :sep \string"\string\delimR\space\string")}%
- \@onelevel@sanitize\gls@suffixF
- \@onelevel@sanitize\gls@suffixFF
- \ifx\gls@suffixF\@empty
- \else
- \write\istfile{(markup-range
- :close "\gls@suffixF" :length 1 :ignore-end)}%
- \fi
- \ifx\gls@suffixFF\@empty
- \else
- \write\istfile{(markup-range
- :close "\gls@suffixFF" :length 2 :ignore-end)}%
- \fi
- \write\istfile{^^J; define format to use for locations^^J}%
- \write\istfile{\@xdylocref}%
- \write\istfile{^^J; define letter group list format^^J}%
- \write\istfile{(markup-letter-group-list
- :sep \string"\string\glsgroupskip\string~n\string")}%
- \write\istfile{^^J; letter group headings^^J}%
- \write\istfile{(markup-letter-group
- :open-head \string"\string\glsgroupheading
- \glsopenbrace\string"^^J\space\space\space
- :close-head \string"\glsclosebrace\string")}%
- \write\istfile{^^J; additional letter groups^^J}%
- \write\istfile{\@xdylettergroups}%
- \write\istfile{^^J; additional sort rules^^J}
- \write\istfile{\@xdysortrules}%
- \noist}
-\else
- \edef\@gls@actualchar{\string?}
- \edef\@gls@encapchar{\string|}
- \edef\@gls@levelchar{\string!}
- \edef\@gls@quotechar{\string"}
- \def\writeist{\relax
- \openout\istfile=\istfilename
- \write\istfile{\expandafter\@gobble\string\% makeindex style file
- created by the glossaries package}
- \write\istfile{\expandafter\@gobble\string\% for document
- '\jobname' on \the\year-\the\month-\the\day}
- \write\istfile{actual '\@gls@actualchar'}
- \write\istfile{encap '\@gls@encapchar'}
- \write\istfile{level '\@gls@levelchar'}
- \write\istfile{quote '\@gls@quotechar'}
- \write\istfile{keyword \string"\string\\glossaryentry\string"}
- \write\istfile{preamble \string"\string\\glossarysection[\string
- \\glossarytoctitle]{\string\\glossarytitle}\string
- \\glossarypreamble\string\n\string\\begin{theglossary}\string
- \\glossaryheader\string\n\string"}
- \write\istfile{postamble \string"\string\%\string\n\string
- \\end{theglossary}\string\\glossarypostamble\string\n
- \string"}
- \write\istfile{group_skip \string"\string\\glsgroupskip\string\n
- \string"}
- \write\istfile{item_0 \string"\string\%\string\n\string"}
- \write\istfile{item_1 \string"\string\%\string\n\string"}
- \write\istfile{item_2 \string"\string\%\string\n\string"}
- \write\istfile{item_01 \string"\string\%\string\n\string"}
- \write\istfile{item_x1
- \string"\string\\relax \string\\glsresetentrylist\string\n
- \string"}
- \write\istfile{item_12 \string"\string\%\string\n\string"}
- \write\istfile{item_x2
- \string"\string\\relax \string\\glsresetentrylist\string\n
- \string"}
- \write\istfile{delim_0 \string"\string\{\string
- \\glossaryentrynumbers\string\{\string\\relax \string"}
- \write\istfile{delim_1 \string"\string\{\string
- \\glossaryentrynumbers\string\{\string\\relax \string"}
- \write\istfile{delim_2 \string"\string\{\string
- \\glossaryentrynumbers\string\{\string\\relax \string"}
- \write\istfile{delim_t \string"\string\}\string\}\string"}
- \write\istfile{delim_n \string"\string\\delimN \string"}
- \write\istfile{delim_r \string"\string\\delimR \string"}
- \write\istfile{headings_flag 1}
- \write\istfile{heading_prefix
- \string"\string\\glsgroupheading\string\{\string"}
- \write\istfile{heading_suffix
- \string"\string\}\string\\relax
- \string\\glsresetentrylist \string"}
- \write\istfile{symhead_positive \string"glssymbols\string"}
- \write\istfile{numhead_positive \string"glsnumbers\string"}
- \write\istfile{page_compositor \string"\glscompositor\string"}
- \@gls@escbsdq\gls@suffixF
- \@gls@escbsdq\gls@suffixFF
- \ifx\gls@suffixF\@empty
- \else
- \write\istfile{suffix_2p \string"\gls@suffixF\string"}
- \fi
- \ifx\gls@suffixFF\@empty
- \else
- \write\istfile{suffix_3p \string"\gls@suffixFF\string"}
- \fi
- \noist
- }
-\fi
-\newcommand{\noist}{\let\writeist\relax}
-\newcommand*{\@makeglossary}[1]{%
-\ifglossaryexists{#1}{%
-\edef\glo@out{\csname @glotype@#1@out\endcsname}%
-\expandafter\newwrite\csname glo@#1@file\endcsname
-\edef\@glo@file{\csname glo@#1@file\endcsname}%
-\immediate\openout\@glo@file=\jobname.\glo@out
-\@gls@renewglossary
-\PackageInfo{glossaries}{Writing glossary file \jobname.\glo@out}
-\writeist
-}{\PackageError{glossaries}{%
-Glossary type `#1' not defined}{New glossaries must be defined before
-using \string\makeglossary}}}
-\newcommand*{\warn@nomakeglossaries}{%
- \GlossariesWarningNoLine{\string\makeglossaries\space
- hasn't been used,^^Jthe glossaries will not be updated}%
-}
-\newcommand*{\makeglossaries}{%
- \protected@write\@auxout{}{\string\@istfilename{\istfilename}}%
- \protected@write\@auxout{}{\string\@glsorder{\glsorder}}
- \@for\@glo@type:=\@glo@types\do{%
- \ifthenelse{\equal{\@glo@type}{}}{}{%
- \@makeglossary{\@glo@type}}%
- }%
- \renewcommand*\newglossary[4][]{%
- \PackageError{glossaries}{New glossaries
- must be created before \string\makeglossaries}{You need
- to move \string\makeglossaries\space after all your
- \string\newglossary\space commands}}%
- \let\@makeglossary\relax
- \let\makeglossary\relax
- \let\makeglossaries\relax
- \@disable@onlypremakeg
- \let\warn@nomakeglossaries\relax
-}
-\let\makeglossary\makeglossaries
-\AtEndDocument{%
- \warn@nomakeglossaries
- \warn@noprintglossary
-}
-\renewcommand*{\glossary}[1][\glsdefaulttype]{%
-\@glossary[#1]}
-\def\@glossary[#1]{\index}
-\newcommand{\@gls@renewglossary}{%
-\gdef\@glossary[##1]{\@bsphack\begingroup\@wrglossary{##1}}%
-\let\@gls@renewglossary\@empty
-}
-\renewcommand*{\@wrglossary}[2]{%
- \expandafter\protected@write\csname glo@#1@file\endcsname{}{#2}%
- \endgroup\@esphack
-}
-\newcommand{\@do@wrglossary}[1]{%
-\ifglsxindy
- \expandafter\@glo@check@mkidxrangechar\@glsnumberformat\@nil
- \def\@glo@range{}%
- \expandafter\if\@glo@prefix(\relax
- \def\@glo@range{:open-range}%
- \else
- \expandafter\if\@glo@prefix)\relax
- \def\@glo@range{:close-range}%
- \fi
- \fi
-\protected@edef\@glslocref{\theglsentrycounter}%
-\@gls@checkmkidxchars\@glslocref
- \glossary[\csname glo@#1@type\endcsname]{%
- (indexentry :tkey (\csname glo@#1@index\endcsname)
- :locref \string"\@glslocref\string" %
- :attr \string"\@glo@suffix\string" \@glo@range
- )
- }%
-\else
- \@set@glo@numformat\@glo@numfmt\@gls@counter\@glsnumberformat
- \glossary[\csname glo@#1@type\endcsname]{%
- \string\glossaryentry{\csname glo@#1@index\endcsname
- \@gls@encapchar\@glo@numfmt}{\theglsentrycounter}}%
-\fi
-}
-\newcommand{\@do@seeglossary}[2]{%
-\ifglsxindy
- \glossary[\csname glo@#1@type\endcsname]{%
- (indexentry
- :tkey (\csname glo@#1@index\endcsname)
- :xref (\string"#2\string")
- :attr \string"see\string"
- )
- }%
-\else
- \glossary[\csname glo@#1@type\endcsname]{%
- \string\glossaryentry{\csname glo@#1@index\endcsname
- \@gls@encapchar glsseeformat#2}{Z}}%
-\fi
-}
-\def\@gls@fixbraces#1#2#3\@nil{%
- \ifx#2[\relax
- \def#1{#2#3}%
- \else
- \def#1{{#2#3}}%
- \fi
-}
-\newcommand*{\glssee}[3][\seename]{%
- \@do@seeglossary{#2}{[#1]{#3}}}
-\newcommand*{\@glssee}[3][\seename]{%
- \glssee[#1]{#3}{#2}}
-\newcommand*{\glsseeformat}[3][\seename]{\emph{#1} \glsseelist{#2}}
-\newcommand*{\glsseelist}[1]{%
- \let\@gls@dolast\relax
- \let\@gls@donext\relax
- \@for\@gls@thislabel:=#1\do{%
- \ifx\@xfor@nextelement\@nnil
- \@gls@dolast
- \else
- \@gls@donext
- \fi
- \glsseeitem{\@gls@thislabel}%
- \let\@gls@dolast\glsseelastsep
- \let\@gls@donext\glsseesep
- }%
-}
-\newcommand*{\glsseelastsep}{\space\andname\space}
-\newcommand*{\glsseesep}{, }
-\newcommand*{\glsseeitem}[1]{\glshyperlink{#1}}
-\def\warn@noprintglossary{\GlossariesWarningNoLine{No
- \string\printglossary\space or \string\printglossaries\space
- found.^^JThis document will not have a glossary}}
-\@ifundefined{printglossary}{}{%
- \GlossariesWarning{Overriding \string\printglossary}%
- \let\printglossary\undefined
-}
-\newcommand*{\printglossary}[1][type=\glsdefaulttype]{%
- \ifglsxindy\findrootlanguage\fi
- \def\@glo@type{\glsdefaulttype}%
- \def\glossarytitle{\csname @glotype@\@glo@type @title\endcsname}%
- \def\@glossarystyle{}%
- \def\gls@dotoctitle{\glssettoctitle{\@glo@type}}%
- \let\@org@glossaryentrynumbers\glossaryentrynumbers
- \bgroup
- \setkeys{printgloss}{#1}%
- \let\org@glossaryentrynumbers\glossaryentrynumbers
- \let\glsnonextpages\@glsnonextpages
- \let\nopostdesc\@nopostdesc
- \gls@dotoctitle
- \@glossarystyle
- \makeatletter
- \@input@{\jobname.\csname @glotype@\@glo@type @in\endcsname}%
-\IfFileExists{\jobname.\csname @glotype@\@glo@type @in\endcsname}{}%
-{\null}%
- \ifglsxindy
- \@ifundefined{@xdy@\@glo@type @language}{%
- \protected@write\@auxout{}{%
- \string\@xdylanguage{\@glo@type}{\@xdy@main@language}}%
- }{%
- \protected@write\@auxout{}{%
- \string\@xdylanguage{\@glo@type}{\csname @xdy@\@glo@type
- @language\endcsname}}%
- }%
- \protected@write\@auxout{}{%
- \string\@gls@codepage{\@glo@type}{\gls@codepage}}%
- \fi
- \egroup
- \global\let\glossaryentrynumbers\@org@glossaryentrynumbers
- \global\let\warn@noprintglossary\relax
-}
-\newcommand*{\printglossaries}{%
-\forallglossaries{\@@glo@type}{\printglossary[type=\@@glo@type]}}
-\define@key{printgloss}{type}{\def\@glo@type{#1}}
-\define@key{printgloss}{title}{\def\glossarytitle{#1}}
-\define@key{printgloss}{toctitle}{\def\glossarytoctitle{#1}%
-\let\gls@dotoctitle\relax
-}
-\define@key{printgloss}{style}{%
-\@ifundefined{@glsstyle@#1}{\PackageError{glossaries}{Glossary
-style `#1' undefined}{}}{%
-\def\@glossarystyle{\csname @glsstyle@#1\endcsname}}}
-\define@choicekey{printgloss}{numberedsection}[\val\nr]{%
-false,nolabel,autolabel}[nolabel]{%
-\ifcase\nr\relax
- \renewcommand*{\@@glossarysecstar}{*}%
- \renewcommand*{\@@glossaryseclabel}{}%
-\or
- \renewcommand*{\@@glossarysecstar}{}%
- \renewcommand*{\@@glossaryseclabel}{}%
-\or
- \renewcommand*{\@@glossarysecstar}{}%
- \renewcommand*{\@@glossaryseclabel}{\label{\glsautoprefix\@glo@type}}%
-\fi}
-\define@boolkey{printgloss}[gls]{nonumberlist}[true]{%
-\ifglsnonumberlist
- \def\glossaryentrynumbers##1{}%
-\else
- \def\glossaryentrynumbers##1{##1}%
-\fi}
-\newcommand*{\@glsnonextpages}{%
- \gdef\glossaryentrynumbers##1{%
- \glsresetentrylist}}
-\newcommand*{\glsresetentrylist}{%
- \global\let\glossaryentrynumbers\org@glossaryentrynumbers}
-\newcommand*{\glsnonextpages}{}
-\@ifundefined{theglossary}{%
- \newenvironment{theglossary}{}{}%
-}{%
- \GlossariesWarning{overriding `theglossary' environment}%
- \renewenvironment{theglossary}{}{}%
-}
-\newcommand*{\glossaryheader}{}
-\newcommand*{\glstarget}[2]{\@glstarget{glo:#1}{#2}}
-\newcommand*{\glossaryentryfield}[5]{%
-\noindent\textbf{\glstarget{#1}{#2}} #4 #3. #5\par}
-\newcommand*{\glossarysubentryfield}[6]{%
-\glstarget{#2}{\strut}#4. #6\par}
-\newcommand*{\glsgroupskip}{}
-\newcommand*{\glsgroupheading}[1]{}
-\newcommand*{\glsgetgrouptitle}[1]{%
-\@ifundefined{#1groupname}{#1}{\csname #1groupname\endcsname}}
-\newcommand*{\glsgetgrouplabel}[1]{%
-\ifthenelse{\equals{#1}{\glssymbolsgroupname}}{glssymbols}{%
-\ifthenelse{\equals{#1}{\glsnumbersgroupname}}{glsnumbers}{#1}}}
-\newcommand*{\setentrycounter}[1]{\def\glsentrycounter{#1}}
-\newcommand*{\glossarystyle}[1]{%
-\@ifundefined{@glsstyle@#1}{\PackageError{glossaries}{Glossary
-style `#1' undefined}{}}{%
-\csname @glsstyle@#1\endcsname}}
-\newcommand{\newglossarystyle}[2]{%
-\@ifundefined{@glsstyle@#1}{%
-\expandafter\def\csname @glsstyle@#1\endcsname{#2}}{%
-\PackageError{glossaries}{Glossary style `#1' is already defined}{}}}
-\newcommand*{\glsnamefont}[1]{#1}
-\@ifundefined{hyperlink}{%
-\def\glshypernumber#1{#1}}{%
-\def\glshypernumber#1{%
- \@glshypernumber#1\nohyperpage{}\@nil}}
-\def\@glshypernumber#1\nohyperpage#2#3\@nil{%
- \ifx\\#1\\%
- \else
- \@delimR#1\delimR\delimR\\%
- \fi
- \ifx\\#2\\%
- \else
- #2%
- \fi
- \ifx\\#3\\%
- \else
- \@glshypernumber#3\@nil
- \fi
-}
-\def\@delimR#1\delimR #2\delimR #3\\{%
-\ifx\\#2\\%
- \@delimN{#1}%
-\else
- \@gls@numberlink{#1}\delimR\@gls@numberlink{#2}%
-\fi}
-\def\@delimN#1{\@@delimN#1\delimN \delimN\\}
-\def\@@delimN#1\delimN #2\delimN#3\\{%
-\ifx\\#3\\%
- \@gls@numberlink{#1}%
-\else
- \@gls@numberlink{#1}\delimN\@gls@numberlink{#2}%
-\fi
-}
-\def\@gls@numberlink#1{%
-\begingroup
- \toks@={}%
- \@gls@removespaces#1 \@nil
-\endgroup}
-\def\@gls@removespaces#1 #2\@nil{%
- \toks@=\expandafter{\the\toks@#1}%
- \ifx\\#2\\%
- \edef\x{\the\toks@}%
- \ifx\x\empty
- \else
- \hyperlink{\glsentrycounter.\the\toks@}{\the\toks@}%
- \fi
- \else
- \@gls@ReturnAfterFi{%
- \@gls@removespaces#2\@nil
- }%
- \fi
-}
-\long\def\@gls@ReturnAfterFi#1\fi{\fi#1}
-\newcommand*{\hyperrm}[1]{\textrm{\glshypernumber{#1}}}
-\newcommand*{\hypersf}[1]{\textsf{\glshypernumber{#1}}}
-\newcommand*{\hypertt}[1]{\texttt{\glshypernumber{#1}}}
-\newcommand*{\hyperbf}[1]{\textbf{\glshypernumber{#1}}}
-\newcommand*{\hypermd}[1]{\textmd{\glshypernumber{#1}}}
-\newcommand*{\hyperit}[1]{\textit{\glshypernumber{#1}}}
-\newcommand*{\hypersl}[1]{\textsl{\glshypernumber{#1}}}
-\newcommand*{\hyperup}[1]{\textup{\glshypernumber{#1}}}
-\newcommand*{\hypersc}[1]{\textsc{\glshypernumber{#1}}}
-\newcommand*{\hyperemph}[1]{\emph{\glshypernumber{#1}}}
-\ifglsacronym
- \newglossary[alg]{acronym}{acr}{acn}{\acronymname}
- \renewcommand*{\acronymtype}{acronym}
-\fi
-\newcommand{\oldacronym}[4][\gls@label]{%
- \def\gls@label{#2}%
- \newacronym[#4]{#1}{#2}{#3}%
- \@ifundefined{xspace}{%
- \expandafter\edef\csname#1\endcsname{%
- \noexpand\@ifstar{\noexpand\Gls{#1}}{\noexpand\gls{#1}}}%
- }{%
- \expandafter\edef\csname#1\endcsname{%
- \noexpand\@ifstar{\noexpand\Gls{#1}\noexpand\xspace}{%
- \noexpand\gls{#1}\noexpand\xspace}}%
- }%
-}
- \newcommand{\newacronym}[4][]{}
-\newcommand*{\acrpluralsuffix}{\glspluralsuffix}
-\newcommand*{\glsshortkey}{text}
-\newcommand*{\glsshortpluralkey}{plural}
-\newcommand*{\glslongkey}{description}
-\newcommand*{\glslongpluralkey}{descriptionplural}
-\newcommand*{\acrshort}[2][]{%
- \new@ifnextchar[{\@acrshort{#1}{#2}}{\@acrshort{#1}{#2}[]}}
-\newcommand*{\Acrshort}[2][]{%
- \new@ifnextchar[{\@Acrshort{#1}{#2}}{\@Acrshort{#1}{#2}[]}}
-\newcommand*{\ACRshort}[2][]{%
- \new@ifnextchar[{\@ACRshort{#1}{#2}}{\@ACRshort{#1}{#2}[]}}
-\newcommand*{\acrshortpl}[2][]{%
- \new@ifnextchar[{\@acrshortpl{#1}{#2}}{\@acrshortpl{#1}{#2}[]}}
-\newcommand*{\Acrshortpl}[2][]{%
- \new@ifnextchar[{\@Acrshortpl{#1}{#2}}{\@Acrshortpl{#1}{#2}[]}}
-\newcommand*{\ACRshortpl}[2][]{%
- \new@ifnextchar[{\@ACRshortpl{#1}{#2}}{\@ACRshortpl{#1}{#2}[]}}
-\newcommand*{\acrlong}[2][]{%
- \new@ifnextchar[{\@acrlong{#1}{#2}}{\@acrlong{#1}{#2}[]}}
-\newcommand*{\Acrlong}[2][]{%
- \new@ifnextchar[{\@Acrlong{#1}{#2}}{\@Acrlong{#1}{#2}[]}}
-\newcommand*{\ACRlong}[2][]{%
- \new@ifnextchar[{\@ACRlong{#1}{#2}}{\@ACRlong{#1}{#2}[]}}
-\newcommand*{\acrlongpl}[2][]{%
- \new@ifnextchar[{\@acrlongpl{#1}{#2}}{\@acrlongpl{#1}{#2}[]}}
-\newcommand*{\Acrlongpl}[2][]{%
- \new@ifnextchar[{\@Acrlongpl{#1}{#2}}{\@Acrlongpl{#1}{#2}[]}}
-\newcommand*{\ACRlongpl}[2][]{%
- \new@ifnextchar[{\@ACRlongpl{#1}{#2}}{\@ACRlongpl{#1}{#2}[]}}
-\newcommand*{\acrfull}[2][]{%
- \new@ifnextchar[{\@acrfull{#1}{#2}}{\@acrfull{#1}{#2}[]}}
-\newcommand*{\Acrfull}[2][]{%
- \new@ifnextchar[{\@Acrfull{#1}{#2}}{\@Acrfull{#1}{#2}[]}}
-\newcommand*{\ACRfull}[2][]{%
- \new@ifnextchar[{\@ACRfull{#1}{#2}}{\@ACRfull{#1}{#2}[]}}
-\newcommand*{\acrfullpl}[2][]{%
- \new@ifnextchar[{\@acrfullpl{#1}{#2}}{\@acrfullpl{#1}{#2}[]}}
-\newcommand*{\Acrfullpl}[2][]{%
- \new@ifnextchar[{\@Acrfullpl{#1}{#2}}{\@Acrfullpl{#1}{#2}[]}}
-\newcommand*{\ACRfullpl}[2][]{%
- \new@ifnextchar[{\@ACRfullpl{#1}{#2}}{\@ACRfullpl{#1}{#2}[]}}
-\newcommand{\acronymfont}[1]{#1}
-\newcommand{\firstacronymfont}[1]{\acronymfont{#1}}
-\newcommand*{\acrnameformat}[2]{\acronymfont{#1}}
-\newtoks\glskeylisttok
-\newtoks\glslabeltok
-\newtoks\glsshorttok
-\newtoks\glslongtok
-\newcommand*{\newacronymhook}{}
-\newcommand*{\SetDefaultAcronymDisplayStyle}[1]{%
- \defglsdisplay[#1]{##1##4}%
- \defglsdisplayfirst[#1]{##1##4}%
-}
-\newcommand*{\DefaultNewAcronymDef}{%
- \edef\@do@newglossaryentry{%
- \noexpand\newglossaryentry{\the\glslabeltok}%
- {%
- type=\acronymtype,%
- name={\the\glsshorttok},%
- description={\the\glslongtok},%
- text={\the\glsshorttok},%
- sort={\the\glsshorttok},%
- descriptionplural={\the\glslongtok\noexpand\acrpluralsuffix},%
- first={\the\glslongtok\space(\the\glsshorttok)},%
- plural={\the\glsshorttok\noexpand\acrpluralsuffix},%
- firstplural={\noexpand\@glo@descplural\space
- (\noexpand\@glo@plural)},%
- \the\glskeylisttok
- }%
- }%
- \@do@newglossaryentry
-}
-\newcommand*{\SetDefaultAcronymStyle}{%
- \@for\@gls@type:=\@glsacronymlists\do{%
- \SetDefaultAcronymDisplayStyle{\@gls@type}%
- }%
- \renewcommand{\newacronym}[4][]{%
- \ifx\@glsacronymlists\@empty
- \def\@glo@type{\acronymtype}%
- \setkeys{glossentry}{##1}%
- \DeclareAcronymList{\@glo@type}%
- \SetDefaultAcronymDisplayStyle{\@glo@type}%
- \fi
- \glskeylisttok{##1}%
- \glslabeltok{##2}%
- \glsshorttok{##3}%
- \glslongtok{##4}%
- \newacronymhook
- \DefaultNewAcronymDef
- }%
- \renewcommand*{\acrpluralsuffix}{\glspluralsuffix}%
- \renewcommand*{\glsshortkey}{text}%
- \renewcommand*{\glsshortpluralkey}{plural}%
- \renewcommand*{\glslongkey}{description}%
- \renewcommand*{\glslongpluralkey}{descriptionplural}%
- \def\@acrshort##1##2[##3]{\@glstext@{##1}{##2}[##3]}%
- \def\@Acrshort##1##2[##3]{\@Glstext@{##1}{##2}[##3]}%
- \def\@ACRshort##1##2[##3]{\@GLStext@{##1}{##2}[##3]}%
- \def\@acrshortpl##1##2[##3]{\@glsplural@{##1}{##2}[##3]}%
- \def\@Acrshortpl##1##2[##3]{\@Glsplural@{##1}{##2}[##3]}%
- \def\@ACRshortpl##1##2[##3]{\@GLSplural@{##1}{##2}[##3]}%
- \def\@acrlong##1##2[##3]{\@glsdesc@{##1}{##2}[##3]}%
- \def\@Acrlong##1##2[##3]{\@Glsdesc@{##1}{##2}[##3]}%
- \def\@ACRlong##1##2[##3]{\@GLSdesc@{##1}{##2}[##3]}%
- \def\@acrlongpl##1##2[##3]{\@glsdescplural@{##1}{##2}[##3]}%
- \def\@Acrlongpl##1##2[##3]{\@Glsdescplural@{##1}{##2}[##3]}%
- \def\@ACRlongpl##1##2[##3]{\@GLSdescplural@{##1}{##2}[##3]}%
- \def\@acrfull##1##2[##3]{\@glsfirst@{##1}{##2}[##3]}%
- \def\@Acrfull##1##2[##3]{\@Glsfirst@{##1}{##2}[##3]}%
- \def\@ACRfull##1##2[##3]{\@GLSfirst@{##1}{##2}[##3]}%
- \def\@acrfullpl##1##2[##3]{\@glsfirstplural@{##1}{##2}[##3]}%
- \def\@Acrfullpl##1##2[##3]{\@Glsfirstplural@{##1}{##2}[##3]}%
- \def\@ACRfullpl##1##2[##3]{\@GLSfirstplural@{##1}{##2}[##3]}%
-}
-\newcommand*{\SetDescriptionFootnoteAcronymDisplayStyle}[1]{%
- \defglsdisplayfirst[#1]{%
- \firstacronymfont{##1}##4%
- \protect\footnote{%
- \glslink[\@gls@link@opts]{\@gls@link@label}{##3}}}%
- \defglsdisplay[#1]{\acronymfont{##1}##4}%
-}
-\newcommand*{\DescriptionFootnoteNewAcronymDef}{%
- \edef\@do@newglossaryentry{%
- \noexpand\newglossaryentry{\the\glslabeltok}%
- {%
- type=\acronymtype,%
- name={\noexpand\acronymfont{\the\glsshorttok}},%
- sort={\the\glsshorttok},%
- text={\the\glsshorttok},%
- plural={\the\glsshorttok\noexpand\acrpluralsuffix},%
- symbol={\the\glslongtok},%
- symbolplural={\the\glslongtok\noexpand\acrpluralsuffix},%
- \the\glskeylisttok
- }%
- }%
- \@do@newglossaryentry
-}
-\newcommand*{\SetDescriptionFootnoteAcronymStyle}{%
- \renewcommand{\newacronym}[4][]{%
- \ifx\@glsacronymlists\@empty
- \def\@glo@type{\acronymtype}%
- \setkeys{glossentry}{##1}%
- \DeclareAcronymList{\@glo@type}%
- \SetDescriptionFootnoteAcronymDisplayStyle{\@glo@type}%
- \fi
- \glskeylisttok{##1}%
- \glslabeltok{##2}%
- \glsshorttok{##3}%
- \glslongtok{##4}%
- \newacronymhook
- \DescriptionFootnoteNewAcronymDef
- }%
- \def\glsshortkey{text}%
- \def\glsshortpluralkey{plural}%
- \def\glslongkey{symbol}%
- \def\glslongpluralkey{symbolplural}%
- \def\@acrshort##1##2[##3]{%
- \acronymfont{\@glstext@{##1}{##2}[##3]}}%
- \def\@Acrshort##1##2[##3]{%
- \acronymfont{\@Glstext@{##1}{##2}[##3]}}%
- \def\@ACRshort##1##2[##3]{%
- \acronymfont{\@GLStext@{##1}{##2}[##3]}}%
- \def\@acrshortpl##1##2[##3]{%
- \acronymfont{\@glsplural@{##1}{##2}[##3]}}%
- \def\@Acrshortpl##1##2[##3]{%
- \acronymfont{\@Glsplural@{##1}{##2}[##3]}}%
- \def\@ACRshortpl##1##2[##3]{%
- \acronymfont{\@GLSplural@{##1}{##2}[##3]}}%
- \def\@acrlong##1##2[##3]{\@glssymbol@{##1}{##2}[##3]}%
- \def\@Acrlong##1##2[##3]{\@Glssymbol@{##1}{##2}[##3]}%
- \def\@ACRlong##1##2[##3]{\@GLSsymbol@{##1}{##2}[##3]}%
- \def\@acrlongpl##1##2[##3]{\@glssymbolplural@{##1}{##2}[##3]}%
- \def\@Acrlongpl##1##2[##3]{\@Glssymbolplural@{##1}{##2}[##3]}%
- \def\@ACRlongpl##1##2[##3]{\@GLSsymbolplural@{##1}{##2}[##3]}%
- \def\@acrfull##1##2[##3]{\@glssymbol@{##1}{##2}[##3]
- (\acronymfont{\@glstext@{##1}{##2}[##3]})}%
- \def\@Acrfull##1##2[##3]{\@Glssymbol@{##1}{##2}[##3]
- (\acronymfont{\@glstext@{##1}{##2}[##3]})}%
- \def\@ACRfull##1##2[##3]{\@GLSsymbol@{##1}{##2}[##3]
- (\acronymfont{\@GLStext@{##1}{##2}[##3]})}%
- \def\@acrfullpl##1##2[##3]{\@glssymbolplural@{##1}{##2}[##3]
- (\acronymfont{\@glsplural@{##1}{##2}[##3]})}%
- \def\@Acrfullpl##1##2[##3]{\@Glssymbolplural@{##1}{##2}[##3]
- (\acronymfont{\@glsplural@{##1}{##2}[##3]})}%
- \def\@ACRfullpl##1##2[##3]{\@GLSsymbolplural@{##1}{##2}[##3]
- (\acronymfont{\@GLSplural@{##1}{##2}[##3]})}%
- \@for\@gls@type:=\@glsacronymlists\do{%
- \SetDescriptionFootnoteAcronymDisplayStyle{\@gls@type}%
- }%
- \ifglsacrsmallcaps
- \renewcommand*{\acronymfont}[1]{\textsc{##1}}%
- \renewcommand*{\acrpluralsuffix}{%
- \textup{\glspluralsuffix}}%
- \else
- \ifglsacrsmaller
- \renewcommand*{\acronymfont}[1]{\textsmaller{##1}}%
- \fi
- \fi
- \ifglsacrdua
- \PackageError{glossaries}{Option clash: `footnote' and `dua'
- can't both be set}{}%
- \fi
-}%
-\newcommand*{\SetDescriptionDUAAcronymDisplayStyle}[1]{%
- \defglsdisplay[#1]{##1##4}%
- \defglsdisplayfirst[#1]{##1##4}%
-}
-\newcommand*{\DescriptionDUANewAcronymDef}{%
- \edef\@do@newglossaryentry{%
- \noexpand\newglossaryentry{\the\glslabeltok}%
- {%
- type=\acronymtype,%
- name={\the\glslongtok},%
- sort={\the\glslongtok},
- text={\the\glslongtok},%
- plural={\the\glslongtok\noexpand\acrpluralsuffix},%
- symbol={\the\glsshorttok},%
- symbolplural={\the\glsshorttok\noexpand\acrpluralsuffix},%
- \the\glskeylisttok
- }%
- }%
- \@do@newglossaryentry
-}
-\newcommand*{\SetDescriptionDUAAcronymStyle}{%
- \ifglsacrsmallcaps
- \PackageError{glossaries}{Option clash: `smallcaps' and `dua'
- can't both be set}{}%
- \else
- \ifglsacrsmaller
- \PackageError{glossaries}{Option clash: `smaller' and `dua'
- can't both be set}{}%
- \fi
- \fi
- \renewcommand{\newacronym}[4][]{%
- \ifx\@glsacronymlists\@empty
- \def\@glo@type{\acronymtype}%
- \setkeys{glossentry}{##1}%
- \DeclareAcronymList{\@glo@type}%
- \SetDescriptionDUAAcronymDisplayStyle{\@glo@type}%
- \fi
- \glskeylisttok{##1}%
- \glslabeltok{##2}%
- \glsshorttok{##3}%
- \glslongtok{##4}%
- \newacronymhook
- \DescriptionDUANewAcronymDef
- }%
- \def\glsshortkey{symbol}%
- \def\glsshortpluralkey{symbolplural}%
- \def\glslongkey{first}%
- \def\glslongpluralkey{plural}%
- \def\@acrshort##1##2[##3]{%
- \acronymfont{\@glssymbol@{##1}{##2}[##3]}}%
- \def\@Acrshort##1##2[##3]{%
- \acronymfont{\@Glssymbol@{##1}{##2}[##3]}}%
- \def\@ACRshort##1##2[##3]{%
- \acronymfont{\@GLSsymbol@{##1}{##2}[##3]}}%
- \def\@acrshortpl##1##2[##3]{%
- \acronymfont{\@glssymbolplural@{##1}{##2}[##3]}}%
- \def\@Acrshortpl##1##2[##3]{%
- \acronymfont{\@Glssymbolplural@{##1}{##2}[##3]}}%
- \def\@ACRshortpl##1##2[##3]{%
- \acronymfont{\@GLSsymbolplural@{##1}{##2}[##3]}}%
- \def\@acrlong##1##2[##3]{\@glsfirst@{##1}{##2}[##3]}%
- \def\@Acrlong##1##2[##3]{\@Glsfirst@{##1}{##2}[##3]}%
- \def\@ACRlong##1##2[##3]{\@GLSfirst@{##1}{##2}[##3]}%
- \def\@acrlongpl##1##2[##3]{\@glsfirstplural@{##1}{##2}[##3]}%
- \def\@Acrlongpl##1##2[##3]{\@Glsfirstplural@{##1}{##2}[##3]}%
- \def\@ACRlongpl##1##2[##3]{\@GLSfirstplural@{##1}{##2}[##3]}%
- \def\@acrfull##1##2[##3]{\@glsfirst@{##1}{##2}[##3]
- (\acronymfont{\@glssymbol@{##1}{##2}[##3]})}%
- \def\@Acrfull##1##2[##3]{\@Glsfirst@{##1}{##2}[##3]
- (\acronymfont{\@glssymbol@{##1}{##2}[##3]})}%
- \def\@ACRfull##1##2[##3]{\@GLSfirst@{##1}{##2}[##3]
- (\acronymfont{\@GLSsymbol@{##1}{##2}[##3]})}%
- \def\@acrfullpl##1##2[##3]{\@glsfirstplural@{##1}{##2}[##3]
- (\acronymfont{\@glssymbolplural@{##1}{##2}[##3]})}%
- \def\@Acrfullpl##1##2[##3]{\@Glsfirstplural@{##1}{##2}[##3]
- (\acronymfont{\@glssymbolplural@{##1}{##2}[##3]})}%
- \def\@ACRfullpl##1##2[##3]{\@GLSfirstplural@{##1}{##2}[##3]
- (\acronymfont{\@GLSsymbolplural@{##1}{##2}[##3]})}%
- \@for\@gls@type:=\@glsacronymlists\do{%
- \SetDescriptionDUAAcronymDisplayStyle{\@gls@type}%
- }%
-}%
-\newcommand*{\SetDescriptionAcronymDisplayStyle}[1]{%
- \defglsdisplayfirst[#1]{%
- ##1##4 (\firstacronymfont{##3})}%
- \defglsdisplay[#1]{\acronymfont{##1}##4}%
-}
-\newcommand*{\DescriptionNewAcronymDef}{%
- \edef\@do@newglossaryentry{%
- \noexpand\newglossaryentry{\the\glslabeltok}%
- {%
- type=\acronymtype,%
- name={\noexpand
- \acrnameformat{\the\glsshorttok}{\the\glslongtok}},%
- sort={\the\glsshorttok},%
- first={\the\glslongtok},%
- firstplural={\the\glslongtok\noexpand\acrpluralsuffix},%
- text={\the\glsshorttok},%
- plural={\the\glsshorttok\noexpand\acrpluralsuffix},%
- symbol={\noexpand\@glo@text},%
- symbolplural={\noexpand\@glo@plural},%
- \the\glskeylisttok}%
- }%
- \@do@newglossaryentry
-}
-\newcommand*{\SetDescriptionAcronymStyle}{%
- \renewcommand{\newacronym}[4][]{%
- \ifx\@glsacronymlists\@empty
- \def\@glo@type{\acronymtype}%
- \setkeys{glossentry}{##1}%
- \DeclareAcronymList{\@glo@type}%
- \SetDescriptionAcronymDisplayStyle{\@glo@type}%
- \fi
- \glskeylisttok{##1}%
- \glslabeltok{##2}%
- \glsshorttok{##3}%
- \glslongtok{##4}%
- \newacronymhook
- \DescriptionNewAcronymDef
- }%
- \def\glsshortkey{text}%
- \def\glsshortpluralkey{plural}%
- \def\glslongkey{first}%
- \def\glslongpluralkey{firstplural}%
- \def\@acrshort##1##2[##3]{%
- \acronymfont{\@glstext@{##1}{##2}[##3]}}%
- \def\@Acrshort##1##2[##3]{%
- \acronymfont{\@Glstext@{##1}{##2}[##3]}}%
- \def\@ACRshort##1##2[##3]{%
- \acronymfont{\@GLStext@{##1}{##2}[##3]}}%
- \def\@acrshortpl##1##2[##3]{%
- \acronymfont{\@glsplural@{##1}{##2}[##3]}}%
- \def\@Acrshortpl##1##2[##3]{%
- \acronymfont{\@Glsplural@{##1}{##2}[##3]}}%
- \def\@ACRshortpl##1##2[##3]{%
- \acronymfont{\@GLSplural@{##1}{##2}[##3]}}%
- \def\@acrlong##1##2[##3]{\@glsfirst@{##1}{##2}[##3]}%
- \def\@Acrlong##1##2[##3]{\@Glsfirst@{##1}{##2}[##3]}%
- \def\@ACRlong##1##2[##3]{\@GLSfirst@{##1}{##2}[##3]}%
- \def\@acrlongpl##1##2[##3]{\@glsfirstplural@{##1}{##2}[##3]}%
- \def\@Acrlongpl##1##2[##3]{\@Glsfirstplural@{##1}{##2}[##3]}%
- \def\@ACRlongpl##1##2[##3]{\@GLSfirstplural@{##1}{##2}[##3]}%
- \def\@acrfull##1##2[##3]{\@glsfirst@{##1}{##2}[##3]
- (\acronymfont{\@glssymbol@{##1}{##2}[##3]})}%
- \def\@Acrfull##1##2[##3]{\@Glsfirst@{##1}{##2}[##3]
- (\acronymfont{\@glssymbol@{##1}{##2}[##3]})}%
- \def\@ACRfull##1##2[##3]{\@GLSfirst@{##1}{##2}[##3]
- (\acronymfont{\@GLSsymbol@{##1}{##2}[##3]})}%
- \def\@acrfullpl##1##2[##3]{\@glsfirstplural@{##1}{##2}[##3]
- (\acronymfont{\@glssymbolplural@{##1}{##2}[##3]})}%
- \def\@Acrfullpl##1##2[##3]{\@Glsfirstplural@{##1}{##2}[##3]
- (\acronymfont{\@glssymbolplural@{##1}{##2}[##3]})}%
- \def\@ACRfullpl##1##2[##3]{\@GLSfirstplural@{##1}{##2}[##3]
- (\acronymfont{\@GLSsymbolplural@{##1}{##2}[##3]})}%
- \@for\@gls@type:=\@glsacronymlists\do{%
- \SetDescriptionAcronymDisplayStyle{\@gls@type}%
- }%
- \ifglsacrsmallcaps
- \renewcommand{\acronymfont}[1]{\textsc{##1}}
- \renewcommand*{\acrpluralsuffix}{%
- \textup{\glspluralsuffix}}%
- \else
- \ifglsacrsmaller
- \renewcommand*{\acronymfont}[1]{\textsmaller{##1}}%
- \fi
- \fi
-}%
-\newcommand*{\SetFootnoteAcronymDisplayStyle}[1]{%
- \defglsdisplayfirst[#1]{%
- \firstacronymfont{##1}##4\protect\footnote{%
- \protect\glslink
- [\@gls@link@opts]{\@gls@link@label}{##2}}}%
- \defglsdisplay[#1]{\acronymfont{##1}##4}%
-}
-\newcommand*{\FootnoteNewAcronymDef}{%
- \edef\@do@newglossaryentry{%
- \noexpand\newglossaryentry{\the\glslabeltok}%
- {%
- type=\acronymtype,%
- name={\noexpand\acronymfont{\the\glsshorttok}},%
- sort={\the\glsshorttok},%
- text={\the\glsshorttok},%
- plural={\the\glsshorttok\noexpand\acrpluralsuffix},%
- description={\the\glslongtok},%
- descriptionplural={\the\glslongtok\noexpand\acrpluralsuffix},%
- \the\glskeylisttok
- }%
- }%
- \@do@newglossaryentry
-}
-\newcommand*{\SetFootnoteAcronymStyle}{%
- \renewcommand{\newacronym}[4][]{%
- \ifx\@glsacronymlists\@empty
- \def\@glo@type{\acronymtype}%
- \setkeys{glossentry}{##1}%
- \DeclareAcronymList{\@glo@type}%
- \SetFootnoteAcronymDisplayStyle{\@glo@type}%
- \fi
- \glskeylisttok{##1}%
- \glslabeltok{##2}%
- \glsshorttok{##3}%
- \glslongtok{##4}%
- \newacronymhook
- \FootnoteNewAcronymDef
- }%
- \def\glsshortkey{text}%
- \def\glsshortpluralkey{plural}%
- \def\glslongkey{description}%
- \def\glslongpluralkey{descriptionplural}%
- \@for\@gls@type:=\@glsacronymlists\do{%
- \SetFootnoteAcronymDisplayStyle{\@gls@type}%
- }%
- \def\@acrshort##1##2[##3]{\acronymfont{\@glstext@{##1}{##2}[##3]}}%
- \def\@Acrshort##1##2[##3]{\acronymfont{\@Glstext@{##1}{##2}[##3]}}%
- \def\@ACRshort##1##2[##3]{\acronymfont{\@GLStext@{##1}{##2}[##3]}}%
- \def\@acrshortpl##1##2[##3]{%
- \acronymfont{\@glsplural@{##1}{##2}[##3]}}%
- \def\@Acrshortpl##1##2[##3]{%
- \acronymfont{\@Glsplural@{##1}{##2}[##3]}}%
- \def\@ACRshortpl##1##2[##3]{%
- \acronymfont{\@GLSplural@{##1}{##2}[##3]}}%
- \def\@acrlong##1##2[##3]{\@glsdesc@{##1}{##2}[##3]}%
- \def\@Acrlong##1##2[##3]{\@Glsdesc@{##1}{##2}[##3]}%
- \def\@ACRlong##1##2[##3]{\@GLSdesc@{##1}{##2}[##3]}%
- \def\@acrlongpl##1##2[##3]{\@glsdescplural@{##1}{##2}[##3]}%
- \def\@Acrlongpl##1##2[##3]{\@Glsdescplural@{##1}{##2}[##3]}%
- \def\@ACRlongpl##1##2[##3]{\@GLSdescplural@{##1}{##2}[##3]}%
- \def\@acrfull##1##2[##3]{\@glsdesc@{##1}{##2}[##3]
- (\@glstext@{##1}{##2}[##3])}%
- \def\@Acrfull##1##2[##3]{\@Glsdesc@{##1}{##2}[##3]
- (\@glstext@{##1}{##2}[##3])}%
- \def\@ACRfull##1##2[##3]{\@GLSdesc@{##1}{##2}[##3]
- (\@GLStext@{##1}{##2}[##3])}%
- \def\@acrfullpl##1##2[##3]{\@glsdescplural@{##1}{##2}[##3]
- (\@glsplural@{##1}{##2}[##3])}%
- \def\@Acrfullpl##1##2[##3]{\@Glsdesctext@{##1}{##2}[##3]
- (\@glsplural@{##1}{##2}[##3])}%
- \def\@ACRfullpl##1##2[##3]{\@GLSdesctext@{##1}{##2}[##3]
- (\@GLSplural@{##1}{##2}[##3])}%
- \ifglsacrsmallcaps
- \renewcommand*{\acronymfont}[1]{\textsc{##1}}%
- \renewcommand*{\acrpluralsuffix}{%
- \textup{\glspluralsuffix}}%
- \else
- \ifglsacrsmaller
- \renewcommand*{\acronymfont}[1]{\textsmaller{##1}}%
- \fi
- \fi
- \ifglsacrdua
- \PackageError{glossaries}{Option clash: `footnote' and `dua'
- can't both be set}{}%
- \fi
-}%
-\newcommand*{\SetSmallAcronymDisplayStyle}[1]{%
- \defglsdisplayfirst[#1]{##1##4 (\firstacronymfont{##3})}
- \defglsdisplay[#1]{\acronymfont{##1}##4}%
-}
-\newcommand*{\SmallNewAcronymDef}{%
- \edef\@do@newglossaryentry{%
- \noexpand\newglossaryentry{\the\glslabeltok}%
- {%
- type=\acronymtype,%
- name={\noexpand\acronymfont{\the\glsshorttok}},%
- sort={\the\glsshorttok},%
- text={\noexpand\@glo@symbol},%
- plural={\noexpand\@glo@symbolplural},%
- first={\the\glslongtok},%
- firstplural={\the\glslongtok\noexpand\acrpluralsuffix},%
- description={\noexpand\@glo@first},%
- descriptionplural={\noexpand\@glo@firstplural},%
- symbol={\the\glsshorttok},%
- symbolplural={\the\glsshorttok\noexpand\acrpluralsuffix},%
- \the\glskeylisttok
- }%
- }%
- \@do@newglossaryentry
-}
-\newcommand*{\SetSmallAcronymStyle}{%
- \renewcommand{\newacronym}[4][]{%
- \ifx\@glsacronymlists\@empty
- \def\@glo@type{\acronymtype}%
- \setkeys{glossentry}{##1}%
- \DeclareAcronymList{\@glo@type}%
- \SetSmallAcronymDisplayStyle{\@glo@type}%
- \fi
- \glskeylisttok{##1}%
- \glslabeltok{##2}%
- \glsshorttok{##3}%
- \glslongtok{##4}%
- \newacronymhook
- \SmallNewAcronymDef
- }%
- \def\glsshortkey{symbol}%
- \def\glsshortpluralkey{symbolplural}%
- \def\glslongkey{first}%
- \def\glslongpluralkey{firstplural}%
- \@for\@gls@type:=\@glsacronymlists\do{%
- \SetSmallAcronymDisplayStyle{\@gls@type}%
- }%
- \ifglsacrsmallcaps
- \renewcommand*{\acronymfont}[1]{\textsc{##1}}
- \renewcommand*{\acrpluralsuffix}{%
- \textup{\glspluralsuffix}}%
- \else
- \renewcommand*{\acronymfont}[1]{\textsmaller{##1}}
- \fi
- \def\@acrshort##1##2[##3]{%
- \acronymfont{\@glstext@{##1}{##2}[##3]}}%
- \def\@Acrshort##1##2[##3]{%
- \acronymfont{\@Glstext@{##1}{##2}[##3]}}%
- \def\@ACRshort##1##2[##3]{%
- \acronymfont{\@GLStext@{##1}{##2}[##3]}}%
- \def\@acrshortpl##1##2[##3]{%
- \acronymfont{\@glsplural@{##1}{##2}[##3]}}%
- \def\@Acrshortpl##1##2[##3]{%
- \acronymfont{\@Glsplural@{##1}{##2}[##3]}}%
- \def\@ACRshortpl##1##2[##3]{%
- \acronymfont{\@GLSplural@{##1}{##2}[##3]}}%
- \def\@acrlong##1##2[##3]{\@glsfirst@{##1}{##2}[##3]}%
- \def\@Acrlong##1##2[##3]{\@Glsfirst@{##1}{##2}[##3]}%
- \def\@ACRlong##1##2[##3]{\@GLSfirst@{##1}{##2}[##3]}%
- \def\@acrlongpl##1##2[##3]{\@glsfirstplural@{##1}{##2}[##3]}%
- \def\@Acrlongpl##1##2[##3]{\@Glsfirstplural@{##1}{##2}[##3]}%
- \def\@ACRlongpl##1##2[##3]{\@GLSfirstplural@{##1}{##2}[##3]}%
- \def\@acrfull##1##2[##3]{\@glsfirst@{##1}{##2}[##3]
- (\acronymfont{\@glstext@{##1}{##2}[##3]})}%
- \def\@Acrfull##1##2[##3]{\@Glsfirst@{##1}{##2}[##3]
- (\acronymfont{\@glstext@{##1}{##2}[##3]})}%
- \def\@ACRfull##1##2[##3]{\@GLSfirst@{##1}{##2}[##3]
- (\acronymfont{\@GLStext@{##1}{##2}[##3]})}%
- \def\@acrfullpl##1##2[##3]{\@glsfirstplural@{##1}{##2}[##3]
- (\acronymfont{\@glsplural@{##1}{##2}[##3]})}
- \def\@Acrfullpl##1##2[##3]{\@Glsfirstplural@{##1}{##2}[##3]
- (\acronymfont{\@glsplural@{##1}{##2}[##3]})}
- \def\@ACRfullpl##1##2[##3]{\@GLSfirstplural@{##1}{##2}[##3]
- (\acronymfont{\@GLSplural@{##1}{##2}[##3]})}
- \ifglsacrdua
- \ifglsacrsmallcaps
- \PackageError{glossaries}{Option clash: `smallcaps' and `dua'
- can't both be set}{}%
- \else
- \PackageError{glossaries}{Option clash: `smaller' and `dua'
- can't both be set}{}%
- \fi
- \fi
-}%
-\newcommand*{\SetDUADisplayStyle}[1]{%
- \defglsdisplay[#1]{##1##4}%
- \defglsdisplayfirst[#1]{##1##4}%
-}
-\newcommand*{\DUANewAcronymDef}{%
- \edef\@do@newglossaryentry{%
- \noexpand\newglossaryentry{\the\glslabeltok}%
- {%
- type=\acronymtype,%
- name={\the\glsshorttok},%
- text={\the\glslongtok},%
- plural={\the\glslongtok\noexpand\acrpluralsuffix},%
- description={\the\glslongtok},%
- symbol={\the\glsshorttok},%
- symbolplural={\the\glsshorttok\noexpand\acrpluralsuffix},%
- \the\glskeylisttok
- }%
- }%
- \@do@newglossaryentry
-}
-\newcommand*{\SetDUAStyle}{%
- \renewcommand{\newacronym}[4][]{%
- \ifx\@glsacronymlists\@empty
- \def\@glo@type{\acronymtype}%
- \setkeys{glossentry}{##1}%
- \DeclareAcronymList{\@glo@type}%
- \SetDUADisplayStyle{\@glo@type}%
- \fi
- \glskeylisttok{##1}%
- \glslabeltok{##2}%
- \glsshorttok{##3}%
- \glslongtok{##4}%
- \newacronymhook
- \DUANewAcronymDef
- }%
- \def\glsshortkey{symbol}%
- \def\glsshortpluralkey{symbolplural}%
- \def\glslongkey{text}%
- \def\glslongpluralkey{plural}%
- \@for\@gls@type:=\@glsacronymlists\do{%
- \SetDUADisplayStyle{\@gls@type}%
- }%
- \def\@acrshort##1##2[##3]{\@glssymbol@{##1}{##2}[##3]}%
- \def\@Acrshort##1##2[##3]{\@Glssymbol@{##1}{##2}[##3]}%
- \def\@ACRshort##1##2[##3]{\@GLSsymbol@{##1}{##2}[##3]}%
- \def\@acrshortpl##1##2[##3]{\@glssymbolplural@{##1}{##2}[##3]}%
- \def\@Acrshortpl##1##2[##3]{\@Glssymbolplural@{##1}{##2}[##3]}%
- \def\@ACRshortpl##1##2[##3]{\@GLSsymbolplural@{##1}{##2}[##3]}%
- \def\@acrlong##1##2[##3]{\@glstext@{##1}{##2}[##3]}%
- \def\@Acrlong##1##2[##3]{\@Glstext@{##1}{##2}[##3]}%
- \def\@ACRlong##1##2[##3]{\@GLStext@{##1}{##2}[##3]}%
- \def\@acrlongpl##1##2[##3]{\@glsplural@{##1}{##2}[##3]}%
- \def\@Acrlongpl##1##2[##3]{\@Glsplural@{##1}{##2}[##3]}%
- \def\@ACRlongpl##1##2[##3]{\@GLSplural@{##1}{##2}[##3]}%
- \def\@acrfull##1##2[##3]{\@glstext@{##1}{##2}[##3]
- (\acronymfont{\@glssymbol@{##1}{##2}[##3]})}%
- \def\@Acrfull##1##2[##3]{\@Glstext@{##1}{##2}[##3]
- (\acronymfont{\@glssymbol@{##1}{##2}[##3]})}%
- \def\@ACRfull##1##2[##3]{\@GLStext@{##1}{##2}[##3]
- (\acronymfont{\@GLSsymbol@{##1}{##2}[##3]})}%
- \def\@acrfullpl##1##2[##3]{\@glsplural@{##1}{##2}[##3]
- (\acronymfont{\@glssymbolplural@{##1}{##2}[##3]})}%
- \def\@Acrfullpl##1##2[##3]{\@Glsplural@{##1}{##2}[##3]
- (\acronymfont{\@glssymbolplural@{##1}{##2}[##3]})}%
- \def\@ACRfullpl##1##2[##3]{\@GLSplural@{##1}{##2}[##3]
- (\acronymfont{\@GLSsymbolplural@{##1}{##2}[##3]})}%
-}%
-\newcommand*{\SetAcronymStyle}{%
- \SetDefaultAcronymStyle
- \ifglsacrdescription
- \ifglsacrfootnote
- \SetDescriptionFootnoteAcronymStyle
- \else
- \ifglsacrdua
- \SetDescriptionDUAAcronymStyle
- \else
- \SetDescriptionAcronymStyle
- \fi
- \fi
- \else
- \ifglsacrfootnote
- \SetFootnoteAcronymStyle
- \else
- \ifthenelse{\boolean{glsacrsmallcaps}\OR
- \boolean{glsacrsmaller}}%
- {%
- \SetSmallAcronymStyle
- }%
- {%
- \ifglsacrdua
- \SetDUAStyle
- \fi
- }%
- \fi
- \fi
-}
-\SetAcronymStyle
-\newcommand*{\SetCustomDisplayStyle}[1]{%
- \defglsdisplay[#1]{##1##4}%
- \defglsdisplayfirst[#1]{##1##4}%
-}
-\newcommand*{\CustomAcronymFields}{%
- name={\the\glsshorttok},%
- description={\the\glslongtok},%
- first={\the\glslongtok\space(\the\glsshorttok)},%
- firstplural={\the\glslongtok\noexpand\acrpluralsuffix\space
- (\the\glsshorttok)}%
- text={\the\glsshorttok},%
- plural={\the\glsshorttok\noexpand\acrpluralsuffix}%
-}
-\newcommand*{\CustomNewAcronymDef}{%
- \protected@edef\@do@newglossaryentry{%
- \noexpand\newglossaryentry{\the\glslabeltok}%
- {%
- type=\acronymtype,%
- user1={\the\glsshorttok},%
- user2={\the\glsshorttok\noexpand\acrpluralsuffix},%
- user3={\the\glslongtok},%
- user4={\the\glslongtok\noexpand\acrpluralsuffix},%
- \CustomAcronymFields,%
- \the\glskeylisttok
- }%
- }%
- \@do@newglossaryentry
-}
-\newcommand*{\SetCustomStyle}{%
- \renewcommand{\newacronym}[4][]{%
- \ifx\@glsacronymlists\@empty
- \def\@glo@type{\acronymtype}%
- \setkeys{glossentry}{##1}%
- \DeclareAcronymList{\@glo@type}%
- \SetCustomDisplayStyle{\@glo@type}%
- \fi
- \glskeylisttok{##1}%
- \glslabeltok{##2}%
- \glsshorttok{##3}%
- \glslongtok{##4}%
- \newacronymhook
- \CustomNewAcronymDef
- }%
- \def\glsshortkey{user1}%
- \def\glsshortpluralkey{user2}%
- \def\glslongkey{user3}%
- \def\glslongpluralkey{user4}%
- \@for\@gls@type:=\@glsacronymlists\do{%
- \SetCustomDisplayStyle{\@gls@type}%
- }%
- \def\@acrshort##1##2[##3]{\@glsuseri@{##1}{##2}[##3]}%
- \def\@Acrshort##1##2[##3]{\@Glsuseri@{##1}{##2}[##3]}%
- \def\@ACRshort##1##2[##3]{\@GLSuseri@{##1}{##2}[##3]}%
- \def\@acrshortpl##1##2[##3]{\@glsuserii@{##1}{##2}[##3]}%
- \def\@Acrshortpl##1##2[##3]{\@Glsuserii@{##1}{##2}[##3]}%
- \def\@ACRshortpl##1##2[##3]{\@GLSuserii@{##1}{##2}[##3]}%
- \def\@acrlong##1##2[##3]{\@glsuseriii@{##1}{##2}[##3]}%
- \def\@Acrlong##1##2[##3]{\@Glsuseriii@{##1}{##2}[##3]}%
- \def\@ACRlong##1##2[##3]{\@GLSuseriii@{##1}{##2}[##3]}%
- \def\@acrlongpl##1##2[##3]{\@glsuseriv@{##1}{##2}[##3]}%
- \def\@Acrlongpl##1##2[##3]{\@Glsuseriv@{##1}{##2}[##3]}%
- \def\@ACRlongpl##1##2[##3]{\@GLSuseriv@{##1}{##2}[##3]}%
- \def\@acrfull##1##2[##3]{\@glsuseriii@{##1}{##2}[##3]
- (\acronymfont{\@glsuseri@{##1}{##2}[##3]})}%
- \def\@Acrfull##1##2[##3]{\@Glsuseriii@{##1}{##2}[##3]
- (\acronymfont{\@glsuseri@{##1}{##2}[##3]})}%
- \def\@ACRfull##1##2[##3]{\@GLSuseriii@{##1}{##2}[##3]
- (\acronymfont{\@GLSuseri@{##1}{##2}[##3]})}%
- \def\@acrfullpl##1##2[##3]{\@glsuseriv@{##1}{##2}[##3]
- (\acronymfont{\@glsuserii@{##1}{##2}[##3]})}%
- \def\@Acrfullpl##1##2[##3]{\@Glsuseriv@{##1}{##2}[##3]
- (\acronymfont{\@glsuserii@{##1}{##2}[##3]})}%
- \def\@ACRfullpl##1##2[##3]{\@GLSuseriv@{##1}{##2}[##3]
- (\acronymfont{\@GLSuserii@{##1}{##2}[##3]})}%
-}%
-\newcommand*{\DefineAcronymSynonyms}{%
- \let\acs\acrshort
- \let\Acs\Acrshort
- \let\acsp\acrshortpl
- \let\Acsp\Acrshortpl
- \let\acl\acrlong
- \let\aclp\acrlongpl
- \let\Acl\Acrlong
- \let\Aclp\Acrlongpl
- \let\acf\acrfull
- \let\acfp\acrfullpl
- \let\Acf\Acrfull
- \let\Acfp\Acrfullpl
- \let\ac\gls
- \let\Ac\Gls
- \let\acp\glspl
- \let\Acp\Glspl
-}
-\ifglsacrshortcuts
- \DefineAcronymSynonyms
-\fi
-\RequirePackage{glossary-hypernav}
-\@gls@loadlist
-\@gls@loadlong
-\@gls@loadsuper
-\@gls@loadtree
-\ifx\@glossary@default@style\relax
-\else
- \glossarystyle{\@glossary@default@style}
-\fi
-\endinput
-%%
-%% End of file `glossaries.sty'.