<html><head><meta name="color-scheme" content="light dark"></head><body><pre style="word-wrap: break-word; white-space: pre-wrap;">% \iffalse
%&lt;*driver&gt;
\ProvidesFile{xduts.dtx}
[2023/03/23 v6.1.4.2 Xidian University TeX Suite]
%&lt;/driver&gt;
%&lt;class|sty&gt;\NeedsTeXFormat{LaTeX2e}
%&lt;class|sty&gt;\RequirePackage{expl3}
%&lt;xdufont&gt;\ProvidesExplPackage{xdufont}
%&lt;xduugtp&gt;\ProvidesExplClass{xduugtp}
%&lt;xdupgthesis&gt;\ProvidesExplClass{xdupgthesis}
%&lt;xduugthesis&gt;\ProvidesExplClass{xduugthesis}
%&lt;class|sty&gt;  {2023/03/23}{6.1.4.2}
%&lt;xdufont&gt;  {Xidian University Font package}
%&lt;xduugtp&gt;  {Xidian University Undergraduate Thesis Proposal class}
%&lt;xdupgthesis&gt;  {Xidian University Postgraduate Thesis document class}
%&lt;xduugthesis&gt;  {Xidian University Undergraduate Thesis document class}
%&lt;*driver&gt;
\PassOptionsToPackage{AutoFakeBold=3}{xeCJK}
\RequirePackage{silence}
\WarningsOff[hyperref,tocloft,latexfont]
\renewcommand{\message}[1]{}
\documentclass{ctxdoc}
\changes{v4.3.0.2}{2023/01/30}{遘ｻ髯､譁�｡｣郛冶ｯ題ｭｦ蜻雁柱豸域�}
\changes{v1.9.0.0}{2022/05/03}{謾ｯ謖∽ｸｭ譁�蛾｡ｹ鮟倩ｮ､蛟ｼ蜉�邊抑
\changes{v1.9.0.0}{2022/05/03}{蠅槫､ｧfunction邇ｯ蠅�將蟄仙ｮｽ蠎ｦ}
\addtolength{\marginparwidth}{5mm}
\geometry{hmargin={0mm,10mm}}
\changes{v0.6.0.0}{2022/04/10}{蠅槫刈xdufont螳丞桁}
\changes{v0.5.2.1}{2022/04/09}{菫ｮ謾ｹ鬘ｹ逶ｮ蜷咲ｧｰ}
\changes{v0.4.2.1}{2022/04/05}{隹�紛譁�｡｣逶ｮ蠖慕ｼｩ霑孺
\usepackage{tocloft}
\setlength{\cftsecindent}{0em}
\setlength{\cftsubsecindent}{1em}
\setlength{\cftsubsubsecindent}{2em}
\setlength{\cftparaindent}{3em}
\setlength{\cftsubparaindent}{4em}
\ctexset{
  secnumdepth = 5,
  subparagraph = {
    afterskip = 1ex plus .2ex,
    runin = false
  }
}
\setcounter{tocdepth}{5}
\ctexset{punct=quanjiao}
\usepackage{pifont}
\newcommand{\cmark}{\ding{51}}
\usepackage{subcaption}
\changes{v5.1.0.1}{2023/02/22}{菫ｮ謾ｹ譁�｡｣蜀�｡ｨ譬ｼ譬ｷ蠑殉
\DeclareCaptionLabelSeparator{customskip}{\hskip.75em}
\captionsetup{font=bf,labelsep=customskip}
\usepackage{tabularray}
\changes{v2.16.1.3}{2022/11/27}{菫ｮ謾ｹ譁�｡｣荳ｭcaption蟄嶺ｽ捺�ｷ蠑殉
\setlength{\intextsep}{\the\abovecaptionskip}
\SetTblrOuter[tblr,longtblr]{presep=\belowcaptionskip+\intextsep,headsep=\abovecaptionskip}
\SetTblrStyle{caption-tag}{font=\bfseries}
\SetTblrStyle{caption-text}{font=\bfseries}
\DefTblrTemplate{caption-sep}{default}{\hskip.75em}
\DefTblrTemplate{conthead-text}{default}{\textbf{(扈ｭ陦ｨ)}}
\DefTblrTemplate{contfoot-text}{default}{\textbf{謗･荳矩｡ｵ}}
\changes{v6.1.2.1}{2023/03/09}{菫ｮ謾ｹ譁�｡｣莠､蜿牙ｼ慕畑譬ｷ蠑殉
\changes{v4.4.5.1}{2023/02/11}{遘ｻ髯､譁�｡｣蟇ｹxspace逧�ｾ晁ｵ凡
% 莠､蜿牙ｼ慕畑
\NewDocumentCommand{\secrefx}{m}{隨ｬ\nobreakspace\ref{#1}\nobreakspace{}闃�}
\NewDocumentCommand{\tabrefx}{mO{\space}}{陦ｨ\nobreakspace\ref{#1}#2}
\NewDocumentCommand{\figrefx}{mO{\space}}{蝗ｾ\nobreakspace\ref{#1}#2}
% 騾蛾｡ｹ
\NewDocumentCommand{\optx}{O{\space}mO{\space}}{#1{\ttfamily\seqsplit{#2}}#3}
% \name LaTeX3謗ｧ蛻ｶ蠎丞�
\NewDocumentCommand{\csx}{O{\space}mO{\space}}{#1\cs{#2}#3}
% \name LaTeX2e蜻ｽ莉､
\NewDocumentCommand{\tnx}{O{\space}mO{\space}}{#1\tn{#2}#3}
% &lt;name&gt; 髞ｮ蛟ｼ
\NewDocumentCommand{\metax}{O{\space}mO{\space}}{#1\meta{#2}#3}
% LaTeX3髞ｮ蛟ｼ蟇ｹ
\newcommand{\breakablethinspace}{\hskip.16667em\relax}
\NewDocumentCommand{\kvoptx}{O{\space}mmO{\space}}{#1\texttt{#2\breakablethinspace=\breakablethinspace#3}#4}
% {&lt;name&gt;} 蠢�牙盾謨ｰ
\NewDocumentCommand{\margx}{O{\space}mO{\space}}{#1\marg{#2}#3}
% [&lt;name&gt;] 蜿ｯ騾牙盾謨ｰ
\NewDocumentCommand{\oargx}{O{\space}mO{\space}}{#1\oarg{#2}#3}
% 譁�ｻｶ
\usepackage{seqsplit}
\NewDocumentCommand{\filex}{O{\space}mO{\space}}{#1{\ttfamily\seqsplit{#2}}#3}
% 邇ｯ蠅�
\NewDocumentCommand{\envx}{O{\space}mO{\space}}{#1\env{#2}#3}
% 螳丞桁
\NewDocumentCommand{\pkgx}{O{\space}mO{\space}}{#1\pkg{#2}#3}
% 譁�｡｣邀ｻ
\NewDocumentCommand{\clsx}{O{\space}mO{\space}}{#1\cls{#2}#3}
% 蛟ｼ
\NewDocumentCommand{\valuex}{O{\space}mO{\space}}{#1{\ttfamily\seqsplit{#2}}#3}
% 遞句ｺ�
\NewDocumentCommand{\cmdx}{O{\space}mO{\space}}{#1{\ttfamily\seqsplit{#2}}#3}
% 體ｾ謗･
\NewDocumentCommand{\footurl}{m}{\footnote{\url{#1}}}
\NewDocumentCommand{\footctan}{m}{\footnote{\href{https://mirrors.cloud.tencent.com/CTAN/#1}{\ttfamily CTAN://#1}}}
% logo
\changes{v4.1.1.1}{2023/01/21}{菫ｮ豁｣LOGO蟄怜ｽ｢鬮伜ｺｦ}
\newfontfamily{\ffmfamily}[Scale=MatchUppercase]{ffmb10.otf}
\NewDocumentCommand{\xduts}{O{\space}mO{\space}}{#1{\ffmfamily XDUTS}#3}
\NewDocumentCommand{\bibtex}{O{\space}mO{\space}}{#1\hologo{BibTeX}#3}
\NewDocumentCommand{\biblatex}{O{\space}mO{\space}}{#1 Bib\LaTeX #3}
% arguments list
\setlist[arguments]{label=\texttt{\#\arabic*}\,:}
% 豬ｮ蜉ｨ菴馴ｻ倩ｮ､隶ｾ鄂ｮ
\makeatletter
\renewcommand{\fps@table}{htbp}
\makeatother
% listings
\changes{v2.14.1.2}{2022/11/23}{菫ｮ謾ｹ遉ｺ萓倶ｻ｣遐∫ｼｩ霑孺
\changes{v2.14.1.1}{2022/11/22}{菫ｮ謾ｹ遉ｺ萓倶ｻ｣遐∵�ｷ蠑殉
\usepackage{listings}
\lstset{
language        = [LaTeX]TeX,
gobble          = 1,
basewidth       = 0.5em,
breaklines      = true,
basicstyle      = \small\ttfamily,
backgroundcolor = \color{gray9!25},
texcsstyle      = *[1]{\color{brown3}},
texcsstyle      = *[2]{\color{teal3}},
texcsstyle      = *[3]{\color{azure3}},
texcsstyle      = *[4]{\color{violet3}},
texcsstyle      = *[5]{\color{yellow3}},
emphstyle       = [6]{\color{blue3}},
texcs           = [1]{documentclass,usepackage},
texcs           = [2]{begin,end},
texcs           = [3]{part,chapter,section,subsection,subsubsection,paragraph,subparagraph},
texcs           = [4]{xdusetup,anon,noauxwrite},
texcs           = [5]{textbf,textsl,textsf,par,item,caption,parencite},
emph            = [6]{document,tabular,edubg,resresult,appendixes},
literate        = {\$}{{\textcolor{purple3}{\$}}}{1}
                  {\{}{{\textcolor{purple3}{\{}}}{1}
                  {\}}{{\textcolor{purple3}{\}}}}{1}
                  {[}{{\textcolor{purple3}{[}}}{1}
                  {]}{{\textcolor{purple3}{]}}}{1}
                  {=}{{\textcolor{purple3}{=}}}{1}
                  {\&amp;}{{\textcolor{purple3}{\&amp;}}}{1}
                  {\\\\}{{\textcolor{purple3}{\textbackslash{}\textbackslash{}}}}{2}
}
\changes{v2.14.1.2}{2022/11/23}{蠅槫刈遉ｺ萓倶ｻ｣遐∵困陦檎ｬｦ鬮倅ｺｮ}
\makeatletter
\lst@AddToHook{SelectCharTable}
{\ifx\lst@literate\@empty\else\expandafter\lst@Literate\lst@literate{}\relax\z@\fi}
\makeatother
\RenewDocumentCommand{\floatpagefraction}{}{.8}
\usepackage[nolinks]{qrcode}
\usepackage{fontawesome5}
\usepackage{tikz}
\changes{v3.1.1.1}{2022/12/04}{謇句�鬥夜｡ｵ蠅槫刈豌ｴ蜊ｰ}
\usepackage[firstpageonly=true]{draftwatermark}
\DraftwatermarkOptions{angle=45,fontsize=40pt,color={gray9!25}}
\ExplSyntaxOn
\SetWatermarkText{\prg_replicate:nn{18}{\prg_replicate:nn{6}{\xduts[]{}[]~}\xduts[]{}[]\\[30pt]}}
\ExplSyntaxOff
\begin{document}
\changes{v2.18.1.1}{2022/12/01}{髫占酪貅千�√∫沿譛ｬ蜥檎ｴ｢蠑扶
\OnlyDescription
\DocInput{\jobname.dtx}
% \IndexLayout
% \PrintChanges
% \PrintIndex
\end{document}
%&lt;/driver&gt;
% \fi
% \GetFileInfo{\jobname.dtx}
% \title{\bfseries\xduts[]{}謇句�}
% \hypersetup{pdftitle=XDUTS謇句�}
% \author{\href{https://github.com/note286/}{note286}}
% \date{\href{https://github.com/note286/xduts/releases/tag/\fileversion/}{\fileversion}~(\filedate)}
% \maketitle
% \thispagestyle{empty}
% \begin{abstract}
% \xduts[]{}譏ｯ髱｢蜷題･ｿ螳臥鳩蟄千ｧ第橿螟ｧ蟄ｦ譛ｬ遘醍函/遐皮ｩｶ逕溽噪\LaTeXiii{}螳丞桁蜥梧枚譯｣邀ｻ螂苓｣�ｼ�
% 莉�髪謖―XeLaTeX{}��
% 莉�髪謖―TeXLive{}縲｀ac\TeX{}縲―MiKTeX{}��
% 謾ｯ謖仝indows縲［acOS縲；NU/Linux縲＾verleaf蜥卦eXPage縲�
% \end{abstract}
% \changes{v4.4.5.4}{2023/02/11}{譖ｴ譁ｰ隶ｸ蜿ｯ隸∫沿譛ｬ蜿ｷ}
% \renewcommand{\abstractname}{蜈崎ｴ｣螢ｰ譏枝
% \begin{abstract}
% 蝨ｨ菴ｿ逕ｨ\xduts{}譌ｶ�碁ｻ倩ｮ､菴�蜷梧э莉･荳句�螳ｹ��
% \begin{enumerate}
% \item \xduts[]{}菴懆�ｸ榊ｯｹ菴ｿ逕ｨ\xduts{}莠ｧ逕溽噪譬ｼ蠑丞ｮ｡譟･髣ｮ鬚倩ｴ溯ｴ｣縲�
% \item \xduts[]{}逧�書蟶��螳�\LaTeX{} Project Public License Version 1.3c謌匁峩鬮倡沿譛ｬ\footurl{https://www.latex-project.org/lppl.txt}縲�
% \item 莉ｻ菴穂ｸｪ莠ｺ謌也ｻ�ｻ�ｻ･\xduts{}荳ｺ蝓ｺ遑霑幄｡御ｿｮ謾ｹ謌匁黄螻慕函謌先眠逧ЫLaTeX{}螳丞桁/譁�｡｣邀ｻ��
% 隸ｷ荳･譬ｼ驕ｵ螳�\LaTeX{} Project Public License��
% 逕ｱ莠手ｿ晉官蜊剰ｮｮ閠悟ｼ戊ｵｷ逧�ｻｻ菴慕ｺ�郤ｷ莠臥ｫｯ蝮�ｸ蚕xduts{}菴懆�裏蜈ｳ縲�
% \end{enumerate}
% \end{abstract}
% \clearpage
% \begin{documentation}
% \changes{v2.12.1.1}{2022/07/28}{菴ｿ逕ｨ\clsx{l3doc}譁�｡｣蜥悟ｮ樒鴫邇ｯ蠅マ
% \section*{\contentsname\markright{\contentsname}}
% \makeatletter
% \@starttoc{toc}
% \makeatother
% \clearpage
% \changes{v4.4.5.2}{2023/02/11}{隹�紛譁�｡｣莉狗ｻ埼｡ｺ蠎殉
% \changes{v2.14.1.3}{2022/11/23}{菫ｮ謾ｹ譁�｡｣謗ｪ霎栲
% \section{莉狗ｻ閤
% \xduts[]{}(Xidian University \TeX{} Suite)
% 譏ｯ荳ｺ莠�ｸｮ蜉ｩ隘ｿ螳臥鳩蟄千ｧ第橿螟ｧ蟄ｦ譛ｬ遘醍函/遐皮ｩｶ逕滓腸蜀吝ｼ鬚俶冠蜻�/蟄ｦ菴崎ｮｺ譁�所蜈ｶ莉匁枚譯｣
% 閠檎ｼ門�逧ЫLaTeXiii{}螳丞桁蜥梧枚譯｣邀ｻ螂苓｣�ｼ檎岼蜑肴怏��
% \begin{itemize}
% \item \pkgx[]{xdufont.sty}[]�御ｸｭ/闍ｱ/謨ｰ蟄ｦ蟄嶺ｽ馴�鄂ｮ螳丞桁縲�
% \item \clsx[]{xduugtp.cls}[]�梧悽遘醍函豈穂ｸ夊ｮｾ隶｡隶ｺ譁�ｼ鬚俶冠蜻頑枚譯｣邀ｻ縲�
% \item \clsx[]{xduugthesis.cls}[]�梧悽遘醍函豈穂ｸ夊ｮｾ隶｡隶ｺ譁�枚譯｣邀ｻ縲�
% \item \clsx[]{xdupgthesis.cls}[]�檎�皮ｩｶ逕溷ｭｦ菴崎ｮｺ譁�枚譯｣邀ｻ縲�
% \end{itemize}
% 蜊ｳ蟆�髪謖�ｼ�
% \begin{itemize}
% \item \clsx[]{xdupgtp.cls}[]�檎�皮ｩｶ逕溷ｭｦ菴崎ｮｺ譁�ｼ鬚俶冠蜻頑枚譯｣邀ｻ縲�
% \end{itemize}
% \par
% \changes{v1.2.0.1}{2022/04/19}{蠅槫刈GitHub Discussions}
% 譛ｬ譁�｡｣蟆�ｰｽ驥丞ｮ梧紛蝨ｰ莉狗ｻ構xduts{}逧�ｽｿ逕ｨ譁ｹ豕包ｼ�
% 螯よ怏荳肴ｸ�･壻ｹ句､�ｼ梧�閠�Φ謠仙�謾ｹ霑帛ｻｺ隶ｮ��
% 蜿ｯ莉･蝨ｨGitHub Discussions\footurl{https://github.com/note286/xduts/discussions/}
% 蜿ゆｸ手ｮｨ隶ｺ謌匁署髣ｮ縲�
% 螯ら｡ｮ螳喀xduts{}蟄伜惠bug��
% 蜿ｯ莉･蝨ｨGitHub Issues\footurl{https://github.com/note286/xduts/issues/}
% 蜈ｷ菴捺緒霑ｰ縲ょ嘗螟厄ｼ圭textbf{荳肴磁蜿嶺ｻｻ菴姫ull Requests}縲�
% \section{菴ｿ逕ｨ隸ｴ譏枝
% \label{菴ｿ逕ｨ隸ｴ譏枝
% 縲贋ｸ莉ｽ�井ｸ榊､ｪ�臥ｮ遏ｭ逧ЫLaTeXe{}莉狗ｻ阪欺footctan{info/lshort/chinese/lshort-zh-cn.pdf}
% 荳ｭ謠仙所逧��螳ｹ譛ｬ譁�｡｣蟆�ｸ榊�襍倩ｿｰ縲�
% 豁､螟厄ｼ悟惠\secrefx{菴ｿ逕ｨ蟒ｺ隶ｮ}荳ｭ扈吝�莠�Κ蛻�ｽｿ逕ｨ蟒ｺ隶ｮ縲�
% \xduts[]{}荳ｭ逧�園譛牙ｮ丞桁蜥梧枚譯｣邀ｻ莉��鄂ｮ莠�ｮ樒鴫蜉溯�謇髴逧�ｮ丞桁��
% 蟇ｹ莠主ｸｸ逕ｨ逧�ｮ丞桁螯�\pkgx{subcaption}[]縲―pkgx[]{algorithm}[]縲―pkgx[]{algpseudocodex}[]縲／^A
% \pkgx[]{amsmath}[]縲―pkgx[]{theorem}蜥圭pkgx{siunitx}遲噂textbf{蝮�悴蜀�ｽｮ}��
% 逕ｨ謌ｷ蜿ｯ莉･蜿りソsecrefx{蜈ｼ螳ｹ諤ｧ隸ｴ譏枝隗�怙豎り�陦悟刈霓ｽ縲�
% 逶ｸ蠎疲�ｼ蠑剰ｧ�激蝮�ｷｲ螳樒鴫�檎畑謌ｷ莉�怙隕∵腸蜀呎枚遶�蜀�ｮｹ蜊ｳ蜿ｯ�瑚ｯｷ蜍ｿ髫乗э豺ｻ蜉�譬ｼ蠑丈ｿｮ謾ｹ蜻ｽ莉､縲�
% \changes{v1.1.2.1}{2022/04/15}{蠅槫刈鮟倩ｮ､蛟ｼ隸ｴ譏枝
% \textbf{驛ｨ蛻��ｷ蠑冗噪鮟倩ｮ､蛟ｼ蟷ｶ荳堺ｸ･譬ｼ隨ｦ蜷亥ｭｦ譬｡隗�激}��
% 逕ｨ謌ｷ蜿ｯ莉･扈灘粋蟄ｦ譬｡隗�激蟷ｶ蜿りソsecrefx{蜉溯�隸ｴ譏枝蜉溯�隸ｴ譏手�陦御ｿｮ謾ｹ縲�
% \par
% 隸ｷ蝨ｨ譛譁ｰ迚�\LaTeX{}邇ｯ蠅�ｸｭ菴ｿ逕ｨ譛譁ｰ迚�\xduts{}[]��
% 隶､逵滄�隸ｻ逶ｸ蠎泌ｮ丞桁/譁�｡｣邀ｻ菴ｿ逕ｨ隸ｴ譏守ｫ�闃ょ錘蜊ｳ蜿ｯ菴ｿ逕ｨ\xduts{}[]縲�
% \changes{v6.0.1.1}{2023/03/04}{菫ｮ豁｣譁�｡｣荳ｭ驛ｨ蛻���｢倅ｹｦ遲ｾ蟄礼ｬｦ}
% \subsection{\textsf{xdufont}螳丞桁}
% \pkgx[]{xdufont}螳丞桁蝓ｺ莠蚕pkgx{xeCJK}螳丞桁蜥圭pkgx{unicode-math}螳丞桁��
% 蝨ｨ荳ｭ譁�ｭ嶺ｽ馴�鄂ｮ譁ｹ髱｢逶ｸ霎�ｺ蚕pkgx{ctex}螳丞桁逧�ｸｻ隕∽ｼ伜漢荳ｺ鮟倩ｮ､謾ｯ謖∝ｮ倶ｽ鍋ｲ嶺ｽ薙∵万菴難ｼ�
% 蜀�ｽｮ螟夂ｧ榊ｭ嶺ｽ馴�鄂ｮ�悟庄莉ｻ諢乗政驟堺ｸｭ/闍ｱ/謨ｰ蟄ｦ蟄嶺ｽ難ｼ梧峩蜉�隨ｦ蜷域�｡蜀�推遘肴枚譯｣逧�腸蜀呵ｦ∵ｱゅ�
% \par
% \pkgx[]{xdufont}螳丞桁蜿ｯ莉･謳ｭ驟堺ｻｻ諢乗枚譯｣邀ｻ霑幄｡御ｽｿ逕ｨ�御ｾ句ｦゑｼ�
% \begin{lstlisting}
% \documentclass{article}
% \usepackage{xdufont}
% \xdusetup{}
% \begin{document}
% 螳倶ｽ貼textbf{蜉�邊抑\textsl{蜉�譁怡
% \textsf{鮟台ｽ党\textbf{\textsf{蜉�邊抑}\textsl{\textsf{蜉�譁怡}
% \end{document}
% \end{lstlisting}
% \par
% \secrefx{郛冶ｯ挿莉狗ｻ堺ｺ�ｦゆｽ慕ｼ冶ｯ托ｼ圭secrefx{蜿よ焚隶ｾ鄂ｮ}莉狗ｻ堺ｺ�ｦゆｽ戊�螳壻ｹ蛾�鄂ｮ�悟�菴鍋噪驟咲ｽｮ騾蛾｡ｹ隗―secrefx{蟄嶺ｽ馴蛾｡ｹ}縲�
% \par
% 蟄ｦ莨壻ｻ･荳顔畑豕募錘蜊ｳ蜿ｯ菴ｿ逕ｨ\pkgx{xdufont}螳丞桁縲�
% \subsection{\textsf{xduugtp}譁�｡｣邀ｻ}
% \clsx[]{xduugtp}譁�｡｣邀ｻ蝓ｺ莠蚕clsx{ctexart}譁�｡｣邀ｻ��
% 謠蝉ｾ帛､夂ｧ榊ｭ嶺ｽ馴�鄂ｮ�御ｿ｡諱ｯ蠖募�萓ｿ謐ｷ縲�
% 隸ｷ蝨ｨ髦�ｯｻ縲願･ｿ螳臥鳩蟄千ｧ第橿螟ｧ蟄ｦ譛ｬ遘第ｯ戊ｮｾ隶ｾ隶｡�郁ｮｺ譁�ｼ牙ｼ鬚俶冠蜻翫句錘蜀堺ｽｿ逕ｨ\clsx{xduugtp}譁�｡｣邀ｻ縲�
% \par
% 菴ｿ逕ｨ\clsx{xduugtp}譁�｡｣邀ｻ逧�怙蟆冗､ｺ萓句ｦゆｸ区園遉ｺ��
% \begin{lstlisting}
% \documentclass{xduugtp}
% \xdusetup{}
% \begin{document}
% \section{隶ｺ譁�錐遘ｰ蜿企｡ｹ逶ｮ譚･貅図
% \section{遐皮ｩｶ逶ｮ逧�柱諢丈ｹ厭
% \section{蝗ｽ蜀�､也�皮ｩｶ邇ｰ迥ｶ蜥悟書螻戊ｶ句漢}
% \section{荳ｻ隕∫�皮ｩｶ蜀�ｮｹ縲∬ｦ∬ｧ｣蜀ｳ逧�琉鬚伜所譛ｬ譁�噪蛻晄ｭ･譁ｹ譯�}
% \section{蟾･菴懃噪荳ｻ隕�亳谿ｵ縲∬ｿ帛ｺｦ蜥悟ｮ梧�譌ｶ髣ｴ}
% \section{蟾ｲ霑幄｡檎噪蜑肴悄蜃�､�ｷ･菴怡
% \section{謖�ｯｼ謨吝ｸ域э隗±
% \section{蟄ｦ髯｢螳｡譬ｸ諢剰ｧ±
% \end{document}
% \end{lstlisting}
% \par
% \secrefx{郛冶ｯ挿莉狗ｻ堺ｺ�ｦゆｽ慕ｼ冶ｯ托ｼ�
% \secrefx{蜿り�枚迪ｮ蠑慕畑}莉狗ｻ堺ｺ�ｦゆｽ募ｼ慕畑蜿り�枚迪ｮ��
% \secrefx{蜿よ焚隶ｾ鄂ｮ}莉狗ｻ堺ｺ�ｦゆｽ戊�螳壻ｹ蛾�鄂ｮ縲�
% 蜈ｶ荳ｭ�悟ｭ嶺ｽ馴蛾｡ｹ隗―secrefx{蟄嶺ｽ馴蛾｡ｹ}��
% 蜿り�枚迪ｮ驟咲ｽｮ隗―secrefx{蜿り�枚迪ｮ驟咲ｽｮ}��
% 謾ｯ謖∫噪菫｡諱ｯ蠖募�騾蛾｡ｹ隗―secrefx{菫｡諱ｯ蠖募�}縲�
% \par
% 蟄ｦ莨壻ｻ･荳顔畑豕募錘蜊ｳ蜿ｯ菴ｿ逕ｨ\clsx{xduugtp}譁�｡｣邀ｻ縲�
% \subsection{\textsf{xduugthesis}譁�｡｣邀ｻ}
% \clsx[]{xduugthesis}譁�｡｣邀ｻ蝓ｺ莠蚕clsx{ctexbook}譁�｡｣邀ｻ��
% 謠蝉ｾ帛､夂ｧ榊ｭ嶺ｽ馴�鄂ｮ�碁Κ蛻��ｷ蠑丞庄閾ｪ螳壻ｹ会ｼ御ｿ｡諱ｯ蠖募�萓ｿ謐ｷ縲�
% \changes{v1.3.1.1}{2022/04/26}{闍ｱ譁�悽遘醍函豈穂ｸ夊ｮｾ隶｡隗�激蜿り�ｯｴ譏枝
% 隸ｷ蝨ｨ髦�ｯｻ縲頑悽遘醍函豈穂ｸ夊ｮｾ隶｡�郁ｮｺ譁�ｼ牙ｷ･菴懈焔蜀後句錘蜀堺ｽｿ逕ｨ\clsx{xduugthesis}譁�｡｣邀ｻ縲�
% \par
% 菴ｿ逕ｨ\clsx{xduugthesis}譁�｡｣邀ｻ逧�怙蟆冗､ｺ萓句ｦゆｸ区園遉ｺ��
% \begin{lstlisting}
% \documentclass{xduugthesis}
% \xdusetup{}
% \begin{document}
% \chapter{谺｢霑枝
% 菴ｿ逕ｨ\LaTeX{}��
% \end{document}
% \end{lstlisting}
% \par
% \changes{v1.30.0.1}{2022/06/20}{遘ｻ髯､info蠖募�遉ｺ萓急
% \secrefx{郛冶ｯ挿莉狗ｻ堺ｺ�ｦゆｽ慕ｼ冶ｯ托ｼ�
% \secrefx{蜿り�枚迪ｮ蠑慕畑}莉狗ｻ堺ｺ�ｦゆｽ募ｼ慕畑蜿り�枚迪ｮ��
% \secrefx{蜿よ焚隶ｾ鄂ｮ}莉狗ｻ堺ｺ�ｦゆｽ戊�螳壻ｹ蛾�鄂ｮ縲�
% 蜈ｶ荳ｭ�悟ｭ嶺ｽ馴蛾｡ｹ隗―secrefx{蟄嶺ｽ馴蛾｡ｹ}��
% 驛ｨ蛻�恭譁�ｭ嶺ｽ灘�謐｢隗―secrefx{闍ｱ譁�ｭ嶺ｽ党��
% 譬�｢俶焚蟄ｦ蟄嶺ｽ馴�鄂ｮ隗―secrefx{譬�｢俶焚蟄ｦ蟄嶺ｽ馴�鄂ｮ}��
% 蜿り�枚迪ｮ驟咲ｽｮ隗―secrefx{蜿り�枚迪ｮ驟咲ｽｮ}��
% 鬘ｵ髱｢驟咲ｽｮ隗―secrefx{鬘ｵ髱｢驟咲ｽｮ}��
% \changes{v2.12.0.1}{2022/07/01}{譛ｬ遘醍函豈穂ｸ夊ｮｾ隶｡蠅槫刈譁�ｻｶ驟咲ｽｮ}
% 譁�ｻｶ驟咲ｽｮ隗―secrefx{譁�ｻｶ驟咲ｽｮ}��
% 莠､蜿牙ｼ慕畑驟咲ｽｮ隗―secrefx{莠､蜿牙ｼ慕畑驟咲ｽｮ}��
% caption驟咲ｽｮ隗―secrefx{caption驟咲ｽｮ}��
% 蝗ｾ陦ｨ驟咲ｽｮ隗―secrefx{蝗ｾ陦ｨ驟咲ｽｮ}��
% 邂玲ｳ暮�鄂ｮ隗―secrefx{邂玲ｳ暮�鄂ｮ}��
% 遶�闃る�鄂ｮ隗―secrefx{遶�闃る�鄂ｮ}��
% 謾ｯ謖∫噪菫｡諱ｯ蠖募�騾蛾｡ｹ隗―secrefx{菫｡諱ｯ蠖募�}縲�
% \par
% 蟄ｦ莨壻ｻ･荳顔畑豕募錘蜊ｳ蜿ｯ菴ｿ逕ｨ\clsx{xduugthesis}譁�｡｣邀ｻ縲�
% \changes{v1.4.0.0}{2022/04/26}{蠅槫刈遐皮ｩｶ逕溷ｭｦ菴崎ｮｺ譁�}
% \changes{v1.30.0.2}{2022/06/20}{遐皮ｩｶ逕溷ｭｦ菴崎ｮｺ譁�枚譯｣}
% \changes{v2.2.1.1}{2022/06/23}{遘ｻ髯､遐皮ｩｶ逕溷ｭｦ菴崎ｮｺ譁�ｸｭ蜈ｳ莠守ｫ�闃る�鄂ｮ逧�枚譯｣}
% \subsection{\textsf{xdupgthesis}譁�｡｣邀ｻ}
% \clsx[]{xdupgthesis}譁�｡｣邀ｻ蝓ｺ莠蚕clsx{ctexbook}譁�｡｣邀ｻ��
% 謠蝉ｾ帛､夂ｧ榊ｭ嶺ｽ馴�鄂ｮ�碁Κ蛻��ｷ蠑丞庄閾ｪ螳壻ｹ会ｼ御ｿ｡諱ｯ蠖募�萓ｿ謐ｷ縲�
% 隸ｷ蝨ｨ髦�ｯｻ縲願･ｿ螳臥鳩蟄千ｧ第橿螟ｧ蟄ｦ遐皮ｩｶ逕溷ｭｦ菴崎ｮｺ譁�ｨ｡譚ｿ��2015蟷ｴ菫ｮ隶｢迚茨ｼ�-2022.11菫ｮ隶｢縲句錘蜀堺ｽｿ逕ｨ\clsx{xdupgthesis}譁�｡｣邀ｻ縲�
% 荳謎ｸ壼ｭｦ菴咲｡募｣ｫ隸ｷ鬚晏､夜�隸ｻ縲願･ｿ螳臥鳩蟄千ｧ第橿螟ｧ蟄ｦ荳謎ｸ壼ｭｦ菴咲｡募｣ｫ蟄ｦ菴崎ｮｺ譁�ｰ�擇蜿贋ｸｭ闍ｱ譁�｢伜錐鬘ｵ讓｡譚ｿ��2015蟷ｴ迚茨ｼ�-2022.11菫ｮ隶｢縲具ｼ�
% 謦ｰ蜀呵恭譁�ｭｦ菴崎ｮｺ譁�ｯｷ鬚晏､夜�隸ｻ縲願･ｿ螳臥鳩蟄千ｧ第橿螟ｧ蟄ｦ闍ｱ譁�ｭｦ菴崎ｮｺ譁�腸蜀咏嶌蜈ｳ隗�ｮ壹九�
% \par
% 菴ｿ逕ｨ\clsx{xdupgthesis}譁�｡｣邀ｻ逧�怙蟆冗､ｺ萓句ｦゆｸ区園遉ｺ��
% \begin{lstlisting}
% \documentclass{xdupgthesis}
% \xdusetup{}
% \begin{document}
% \chapter{谺｢霑枝
% 菴ｿ逕ｨ\LaTeX{}��
% \end{document}
% \end{lstlisting}
% \par
% \secrefx{郛冶ｯ挿莉狗ｻ堺ｺ�ｦゆｽ慕ｼ冶ｯ托ｼ�
% \secrefx{蜿り�枚迪ｮ蠑慕畑}莉狗ｻ堺ｺ�ｦゆｽ募ｼ慕畑蜿り�枚迪ｮ��
% \secrefx{蜿よ焚隶ｾ鄂ｮ}莉狗ｻ堺ｺ�ｦゆｽ戊�螳壻ｹ蛾�鄂ｮ縲�
% 蜈ｶ荳ｭ�悟ｭ嶺ｽ馴蛾｡ｹ隗―secrefx{蟄嶺ｽ馴蛾｡ｹ}��
% 驛ｨ蛻�恭譁�ｭ嶺ｽ灘�謐｢隗―secrefx{闍ｱ譁�ｭ嶺ｽ党��
% 譬�｢俶焚蟄ｦ蟄嶺ｽ馴�鄂ｮ隗―secrefx{譬�｢俶焚蟄ｦ蟄嶺ｽ馴�鄂ｮ}��
% 隸ｭ險驟咲ｽｮ隗―secrefx{隸ｭ險驟咲ｽｮ}��
% 蜿り�枚迪ｮ驟咲ｽｮ隗―secrefx{蜿り�枚迪ｮ驟咲ｽｮ}��
% 鬘ｵ髱｢驟咲ｽｮ隗―secrefx{鬘ｵ髱｢驟咲ｽｮ}��
% \changes{v2.12.0.1}{2022/07/01}{遐皮ｩｶ逕溷ｭｦ菴崎ｮｺ譁�｢槫刈譁�ｻｶ驟咲ｽｮ}
% 譁�ｻｶ驟咲ｽｮ隗―secrefx{譁�ｻｶ驟咲ｽｮ}��
% 莠､蜿牙ｼ慕畑驟咲ｽｮ隗―secrefx{莠､蜿牙ｼ慕畑驟咲ｽｮ}��
% caption驟咲ｽｮ隗―secrefx{caption驟咲ｽｮ}��
% 蝗ｾ陦ｨ驟咲ｽｮ隗―secrefx{蝗ｾ陦ｨ驟咲ｽｮ}��
% 邂玲ｳ暮�鄂ｮ隗―secrefx{邂玲ｳ暮�鄂ｮ}��
% 蟇ｹ辣ｧ陦ｨ驟咲ｽｮ隗―secrefx{蟇ｹ辣ｧ陦ｨ驟咲ｽｮ}��
% 菴懆�ｮ莉矩�鄂ｮ隗―secrefx{菴懆�ｮ莉矩�鄂ｮ}縲�
% 謾ｯ謖∫噪菫｡諱ｯ蠖募�騾蛾｡ｹ隗―secrefx{菫｡諱ｯ蠖募�}縲�
% 鬘ｵ髱｢蜥御ｿ｡諱ｯ遘ｻ髯､隗―secrefx{鬘ｵ髱｢蜥御ｿ｡諱ｯ遘ｻ髯､}縲�
% \par
% 蟄ｦ莨壻ｻ･荳顔畑豕募錘蜊ｳ蜿ｯ菴ｿ逕ｨ\clsx{xdupgthesis}譁�｡｣邀ｻ縲�
% 蜿ｦ螟厄ｼ悟惠\secrefx{鬚晏､門多莉､}蜥圭secrefx{鬚晏､門粥閭ｽ}荳ｭ謠蝉ｾ帑ｺ�Κ蛻�｢晏､門多莉､蜥悟粥閭ｽ譚･蠅槫ｼｺ謗堤沿謨域棡縲�
% \changes{v1.3.0.1}{2022/04/20}{蠅槫刈蜈ｼ螳ｹ諤ｧ隸ｴ譏枝
% \section{蜈ｼ螳ｹ諤ｧ隸ｴ譏枝
% \label{蜈ｼ螳ｹ諤ｧ隸ｴ譏枝
% \clsx[]{xduugthesis}蜥圭clsx{xdupgthesis}譁�｡｣邀ｻ蟇ｹ驛ｨ蛻�ｸｸ隗∝ｮ丞桁霑幄｡御ｺ�宙蟇ｹ諤ｧ蝨ｰ騾る���
% 髴隕∵ｳｨ諢冗噪譏ｯ�瑚ｿ吩ｺ帛ｮ丞桁莉埼怙逕ｨ謌ｷ隗�怙豎り�陦悟刈霓ｽ縲�
% \subsection{邂玲ｳ扶
% 荳ｻ隕�る�邂玲ｳ募�螳ｹ蟄怜捷蜥碁ｻ倩ｮ､豬ｮ蜉ｨ菴咲ｽｮ縲�^^A
% \pkgx[]{algorithm}螳丞桁謠蝉ｾ帑ｺ�ｮ玲ｳ墓ｵｮ蜉ｨ菴貼envx{algorithm}邇ｯ蠅�ｼ�
% 蜿ｯ莉･謳ｭ驟構pkgx{algpseudocodex}遲牙ｮ丞桁菴ｿ逕ｨ縲�^^A
% \pkgx[]{algorithm2e}螳丞桁謠蝉ｾ帑ｺ�ｮ玲ｳ慕識蠅�ｼ�
% 隸･螳丞桁謠蝉ｾ帷噪\envx{algorithm}邇ｯ蠅�ｮ樣刔蟆�ｵｮ蜉ｨ菴謎ｸ守ｮ玲ｳ募�螳ｹ蜷井ｺ御ｸｺ荳縲�
% \subsection{蝗ｾ迚�}
% \changes{v1.13.5.1}{2022/05/08}{陦･蜈�ｭ仙崟蠑慕畑譬ｷ蠑乗枚譯｣}
% 荳ｻ隕�る�蟄仙崟caption蟄嶺ｽ灘ｭ怜捷蜥悟ｭ仙崟蠑慕畑譬ｷ蠑擾ｼ�
% \changes{v1.4.1.1}{2022/04/27}{菫ｮ豁｣蟄仙崟騾る�螳丞桁蜷咲ｧｰ}
% 蛹�峡\pkgx{subcaption}螳丞桁蜥圭pkgx{subfig}螳丞桁縲�
% \subsection{陦ｨ譬ｼ}
% 荳ｻ隕�る�陦ｨ譬ｼ蜀�ｮｹ蟄怜捷��
% 蛹�峡謇譛我ｽｿ逕ｨ\envx{table}豬ｮ蜉ｨ菴鍋噪陦ｨ譬ｼ縲／^A
% \pkgx[]{tabularray}螳丞桁謠蝉ｾ帷噪\envx{tblr}[]縲―envx[]{longtblr}邇ｯ蠅�
% 蜥圭pkgx{longtable}螳丞桁謠蝉ｾ帷噪\envx{longtable}邇ｯ蠅��
% \changes{v4.1.1.0}{2023/01/16}{騾る�蟄占｡ｨ譬ｷ蠑殉
% 莉･蜿企る�蟄占｡ｨcaption蟄嶺ｽ灘ｭ怜捷蜥悟ｭ占｡ｨ蠑慕畑譬ｷ蠑擾ｼ�
% 蛹�峡\pkgx{subcaption}螳丞桁蜥圭pkgx{subfig}螳丞桁縲�
% \changes{v4.4.5.5}{2023/02/15}{蠅槫刈螳夂炊邇ｯ蠅��螳壻ｹ牙ｻｺ隶ｮ}
% \changes{v4.0.0.1}{2022/12/11}{蠅槫刈菴ｿ逕ｨ蟒ｺ隶ｮ}
% \section{菴ｿ逕ｨ蟒ｺ隶ｮ}
% \label{菴ｿ逕ｨ蟒ｺ隶ｮ}
% 譛ｬ闃ゆｸｻ隕�宙蟇ｹ\clsx{xduugthesis}蜥圭clsx{xdupgthesis}譁�｡｣邀ｻ謠仙�菴ｿ逕ｨ蟒ｺ隶ｮ��
% 逕ｨ謌ｷ莉榊庄荳埼�螳域悽闃ら噪蟒ｺ隶ｮ蟷ｶ譬ｹ謐ｮ閾ｪ蟾ｱ逧�￥螂ｽ霑幄｡御ｽｿ逕ｨ縲�
% \par
% 螳丞桁譁ｹ髱｢�悟惠\secrefx{蜈ｼ螳ｹ諤ｧ隸ｴ譏枝荳ｭ謠仙芦蟾ｲ騾る�螟夂ｧ榊ｮ丞桁縲�
% 菴�弍�檎罰莠主推遘榊次蝗��碁Κ蛻�ｮ丞桁蟾ｲ荳榊ｻｺ隶ｮ菴ｿ逕ｨ縲�
% 謗ｨ闕蝉ｽｿ逕ｨ\pkgx{algorithm}蜥圭pkgx{algpseudocodex}螳丞桁謗堤沿邂玲ｳ包ｼ�
% 謗ｨ闕蝉ｽｿ逕ｨ\pkgx{subcaption}螳丞桁謗堤沿蟄仙崟蜥悟ｭ占｡ｨ��
% 謗ｨ闕蝉ｽｿ逕ｨ\pkgx{tabularray}螳丞桁謗堤沿\textbf{謇譛臥噪陦ｨ譬ｼ}��
% 謗ｨ闕蝉ｽｿ逕ｨ\pkgx{enumitem}螳丞桁菫ｮ謾ｹ蛻苓｡ｨ邇ｯ蠅��ｷ蠑擾ｼ�
% 謗ｨ闕蝉ｽｿ逕ｨ\pkgx{theorem}螳丞桁菫ｮ謾ｹ螳夂炊邇ｯ蠅��ｷ蠑擾ｼ�
% 謗ｨ闕蝉ｽｿ逕ｨ\pkgx{siunitx}螳丞桁謗堤沿蜊穂ｽ阪�
% 蜿ｦ螟厄ｼ御ｸ崎ｦ∝刈霓ｽ莉ｻ菴穂ｸ主盾閠�枚迪ｮ蜥御ｸｭ闍ｱ譁�ｭ嶺ｽ鍋嶌蜈ｳ逧�ｮ丞桁縲�
% 菴ｿ逕ｨ螳丞桁謠蝉ｾ帷噪蜉溯�譌ｶ�圭textbf{隸ｷ髦�ｯｻ逶ｸ蠎皮噪螳丞桁譁�｡｣}縲�
% \par
% 蟄嶺ｽ捺婿髱｢�御ｸｭ譁�∬恭譁�柱謨ｰ蟄ｦ蟄嶺ｽ灘插謠蝉ｾ帑ｺ�､夂ｧ埼�鄂ｮ縲�
% 蟇ｹ莠惹ｸｭ闍ｱ譁�ｭ嶺ｽ難ｼ檎畑謌ｷ蜿ｯ莉･譬ｹ謐ｮ閾ｪ蟾ｱ逧�万螂ｽ騾画叫蜷磯ら噪驟咲ｽｮ��
% 驛ｨ蛻��鄂ｮ蟇ｹ蠎皮噪蟄嶺ｽ灘庄閭ｽ髴隕∬�陦瑚ｴｭ荵ｰ蟷ｶ螳芽｣��
% 蟇ｹ莠取焚蟄ｦ蟄嶺ｽ難ｼ悟ｻｺ隶ｮ逕ｨ謌ｷ騾画叫荳荳ｪ荳手恭譁�ｭ嶺ｽ捺政驟咲噪謨ｰ蟄ｦ蟄嶺ｽ薙�
% 豕ｨ諢擾ｼ悟ｽ謎ｽｿ逕ｨ髱曚omputer Modern蟄嶺ｽ捺慮��
% 驛ｨ蛻�多莉､�井ｾ句ｦゑｼ悟刈邊礼ｭ会ｼ牙庄閭ｽ荳惹ｼ�扈滓婿蠑丈ｸ榊酔��
% 隸ｷ髦�ｯｻ\pkgx{unicode-math}螳丞桁譁�｡｣縲�
% \section{蜉溯�隸ｴ譏枝
% \label{蜉溯�隸ｴ譏枝
% 隸ｷ譬ｹ謐ｮ\secrefx{菴ｿ逕ｨ隸ｴ譏枝荳ｭ逶ｸ蠎泌ｮ丞桁/譁�｡｣邀ｻ逧�ｯｴ譏取擂騾画叫諤ｧ蝨ｰ髦�ｯｻ譛ｬ闃ょ�螳ｹ縲�
% \subsection{郛冶ｯ挿
% \label{郛冶ｯ挿
% \changes{v0.5.1.2}{2022/04/07}{蠅槫刈郛冶ｯ題ｯｴ譏枝
% \xduts[]{}莉�髪謖―XeLaTeX{}��
% 蜿り�枚迪ｮ蜷守ｫｯ遞句ｺ城ｻ倩ｮ､荳ｺ\cmdx{biber}[]�御ｹ溷庄莉･蜿りソsecrefx{蜿り�枚迪ｮ驟咲ｽｮ}蛻�困荳ｺ\cmdx{bibtex}[]縲�
% \subsection{蜿り�枚迪ｮ蠑慕畑}
% \label{蜿り�枚迪ｮ蠑慕畑}
% \changes{v4.3.0.1}{2023/01/30}{菫ｮ謾ｹ譁�｡｣荳ｭ蜈ｳ莠主盾閠�枚迪ｮ逧�緒霑ｰ}
% \xduts[]{}謠蝉ｾ帑ｺ�ｸ､遘榊盾閠�枚迪ｮ螟�炊譁ｹ蠑擾ｼ�
% 荳遘肴弍\pkgx{natbib}螳丞桁謳ｭ驟構pkgx{gbt7714}螳丞桁�悟錘遶ｯ遞句ｺ丈ｸｺ\cmdx{bibtex}[]��
% 蜿ｦ荳遘肴弍\pkgx{biblatex}螳丞桁�悟錘遶ｯ遞句ｺ丈ｸｺ\cmdx{biber}[]縲�
% 蠑慕畑蜿り�枚迪ｮ譌ｶ�圭tnx[]{cite}荳ｺ荳頑���ｷ蠑擾ｼ圭tnx[]{parencite}荳ｺ髱樔ｸ頑���ｷ蠑上�
% \subsection{蜿よ焚隶ｾ鄂ｮ}
% \label{蜿よ焚隶ｾ鄂ｮ}
% \changes{v4.4.2.1}{2023/02/08}{菫ｮ豁｣謗･蜿｣譁�｡｣隸ｴ譏取�ｷ蠑殉
% \changes{v0.5.1.1}{2022/04/06}{蠅槫刈xdusetup驟咲ｽｮ譁�｡｣}
% \changes{v1.30.0.1}{2022/06/20}{菫ｮ謾ｹxdusetup驟咲ｽｮ譁�｡｣}
% \begin{function}[added=2022-03-07]{\xdusetup}
%   \begin{syntax}
%     \tn{xdusetup}\marg{髞ｮ蛟ｼ蛻苓｡ｨ}
%   \end{syntax}
% \xduts[]{}謠蝉ｾ帑ｺ�ｸ邉ｻ蛻鈴蛾｡ｹ�悟庄閾ｪ陦碁�鄂ｮ縲�
% 霓ｽ蜈･螳丞桁/譁�｡｣邀ｻ荵句錘�御ｻ･荳区園譛蛾蛾｡ｹ蝮�庄騾夊ｿ�ｻ滉ｸ逧�多莉､\tnx{xdusetup}譚･隶ｾ鄂ｮ縲�^^A
% \tnx[]{xdusetup}逧�盾謨ｰ譏ｯ荳扈�罰�郁恭譁�ｼ蛾怜捷髫泌ｼ逧�蛾｡ｹ蛻苓｡ｨ��
% 荳区枚荳ｭ蟆匁峡蜿ｷ蜀��蜃ｺ莠�凶蟷ｲ荳ｪ蜈∬ｮｸ逧�蛾｡ｹ�悟�荳ｭ蜉�邊礼噪荳ｺ鮟倩ｮ､騾蛾｡ｹ縲�
% 蛻苓｡ｨ荳ｭ逧�蛾｡ｹ騾壼ｸｸ譏ｯ\kvoptx{\metax[]{key}[]}{\metax[]{value}[]}逧�ｽ｢蠑上�^^A
% \tnx[]{xdusetup}驥�畑\LaTeXiii{}鬟取�ｼ逧�醗蛟ｼ隶ｾ鄂ｮ��
% 謾ｯ謖∽ｸ榊酔邀ｻ蝙倶ｻ･蜿雁､夂ｧ榊ｱよｬ｡逧�蛾｡ｹ隶ｾ螳壹�
% 髞ｮ蛟ｼ蛻苓｡ｨ荳ｭ�娯忿=|窶晏ｷｦ蜿ｳ逧�ｩｺ譬ｼ荳榊ｽｱ蜩崎ｮｾ鄂ｮ��
% 菴�怙豕ｨ諢擾ｼ悟盾謨ｰ蛻苓｡ｨ荳ｭ荳榊庄莉･蜃ｺ邇ｰ遨ｺ陦後�
% 荳莠幃蛾｡ｹ蛹�性蟄宣蛾｡ｹ�悟ｦ�\optx{style}蜥圭optx{info}遲会ｼ�
% 螳�ｻｬ蜿ｯ莉･謖牙ｦゆｸ倶ｸ､遘咲ｭ我ｻｷ譁ｹ蠑乗擂隶ｾ螳夲ｼ�
% \end{function}
% \begin{lstlisting}
% \xdusetup{
%   style = { cjk-font = fandol, latin-font = gyre },
%   info  = {
%     title      = {隶ｺ螯ゆｽ戊ｮｩ逕ｨ謌ｷ\\隶､逵滄�隸ｻ譁�｡｣},
%     author     = {蠑�荳厭,
%     department = {謗堤沿蟄ｦ髯｢},
%     abstract   = {chapters/abstract-zh.tex},
%     keywords*  = {Dummy,Keywords,Here,it is}
%   }
% }
% \end{lstlisting}
% 謌冶�
% \begin{lstlisting}
% \xdusetup{
%   style / cjk-font   = fandol,
%   style / latin-font = gyre,
%   info  / title      = {隶ｺ螯ゆｽ戊ｮｩ逕ｨ謌ｷ\\隶､逵滄�隸ｻ譁�｡｣},
%   info  / author     = {蠑�荳厭,
%   info  / department = {謗堤沿蟄ｦ髯｢},
%   info  / abstract   = {chapters/abstract-zh.tex},
%   info  / keywords*  = {Dummy,Keywords,Here,it is}
% }
% \end{lstlisting}
% \subsection{蟄嶺ｽ馴蛾｡ｹ}
% \label{蟄嶺ｽ馴蛾｡ｹ}
% \begin{function}[added=2022-03-06,updated=2023-02-20]{style/cjk-font}
%   \begin{syntax}
%     \opt{style/cjk-font} = adobe|(fandol)|founder|hanyi|sinotype|win|none
%   \end{syntax}
% 隶ｾ鄂ｮ荳ｭ譁�ｭ嶺ｽ難ｼ悟�菴馴�鄂ｮ隗―tabrefx{tab:cjk-font}[]縲�
% \end{function}
% \begin{optdesc}
%   \item[adobe] \filex[]{adobesongstd-light.otf}[]縲―filex[]{adobekaitistd-regular.otf}[]縲―filex[]{adobeheitistd-regular.otf}蜥圭filex{Adobe-Fangsong-Std-R-Font.otf}[]縲�
%   \item[fandol] \filex[]{FandolSong-Regular.otf}[]縲―filex[]{FandolSong-Bold.otf}[]縲―filex[]{FandolKai-Regular.otf}[]縲―filex[]{FandolHei-Regular.otf}[]縲―filex[]{FandolHei-Bold.otf}蜥圭filex{FandolFang-Regular.otf}[]縲�
%   \item[founder] \filex[]{FZShuSong-Z01.ttf}[]縲―filex[]{FZKai-Z03.ttf}[]縲―filex[]{FZHei-B01.ttf}蜥圭filex{FZFSK.TTF}[]縲�
%   \item[hanyi] \filex[]{HYShuSongErS.ttf}[]縲―filex[]{HYKaiTiS.ttf}[]縲―filex[]{HYZhongHeiTiS.ttf}蜥圭filex{HYFangSongS.ttf}[]縲�
%   \item[sinotype] \filex[]{STSONG.TTF}[]縲―filex[]{STKAITI.TTF}[]縲―filex[]{STXIHEI.TTF}[]縲―filex[]{STHeiti.ttf}蜥圭filex{STFANGSO.TTF}[]縲�
%   \item[win] \filex[]{simsun.ttc}[]縲―filex[]{simkai.ttf}[]縲―filex[]{simhei.ttf}蜥圭filex{simfang.ttf}[]縲�
%   \item[none] 蜈ｳ髣ｭ蜀�ｽｮ荳ｭ譁�ｭ嶺ｽ馴�鄂ｮ�碁怙閾ｪ陦碁�鄂ｮ荳ｭ譁�ｭ嶺ｽ薙�
% \end{optdesc}
% \changes{v2.16.1.1}{2022/11/27}{菫ｮ謾ｹ荳ｭ譁�ｭ嶺ｽ馴�鄂ｮ陦ｨ譁�｡｣譬ｷ蠑殉
% \begin{table}
% \caption{荳ｭ譁�ｭ嶺ｽ馴�鄂ｮ}
% \label{tab:cjk-font}
% \begin{tblr}
% {
% width          = \linewidth,
% colspec        = {Q[c,m]*{4}{X[c,m]}},
% hline{1,3,Z}   = {wd=.08em},
% hline{2}       = {2-3}{wd=.08em,leftpos=-1,rightpos=-1,endpos=true},
% row{odd[3-Z]}  = {bg=gray9!40},
% cell{1}{2}     = {c=2}{},
% cell{1}{1,4,5} = {r=2}{},
% cell{3-Z}{1}   = {font=\ttfamily},
% row{1-2}       = {font=\bfseries}
% }
% 騾蛾｡ｹ蜷咲ｧｰ &amp; 鄂鈴ｩｬ譌�         &amp;                &amp; 譌�陦ｬ郤ｿ譌�       &amp; 謇灘ｭ玲惻譌�       \\
%          &amp; 逶ｴ遶�/蛟ｾ譁懷ｽ｢迥ｶ  &amp; 諢丞､ｧ蛻ｩ蠖｢迥ｶ     &amp;                &amp;                \\
% adobe    &amp; Adobe 螳倶ｽ� Std &amp; Adobe 讌ｷ菴� Std &amp; Adobe 鮟台ｽ� Std &amp; Adobe 莉ｿ螳� Std \\
% fandol   &amp; FandolSong     &amp; FandolKai      &amp; FandolHei      &amp; FandolFang     \\
% founder  &amp; 譁ｹ豁｣荵ｦ螳欺_GBK  &amp; 譁ｹ豁｣讌ｷ菴貼_GBK  &amp; 譁ｹ豁｣鮟台ｽ貼_GBK  &amp; 譁ｹ豁｣莉ｿ螳欺_GBK  \\
% hanyi    &amp; 豎我ｻｪ荵ｦ螳倶ｺ郡    &amp; 豎我ｻｪ讌ｷ菴鉄      &amp; 豎我ｻｪ荳ｭ鮟全      &amp; 豎我ｻｪ莉ｿ螳鬼      \\
% sinotype &amp; 蜊取枚螳倶ｽ�       &amp; 蜊取枚讌ｷ菴�       &amp; 蜊取枚扈�ｻ�/鮟台ｽ�  &amp; 蜊取枚莉ｿ螳�       \\
% win      &amp; 荳ｭ譏灘ｮ倶ｽ�       &amp; 荳ｭ譏捺･ｷ菴�       &amp; 荳ｭ譏馴ｻ台ｽ�       &amp; 荳ｭ譏謎ｻｿ螳�       \\
% \end{tblr}
% \end{table}
% \begin{function}[added=2022-04-01]{style/cjk-fake-bold}
%   \begin{syntax}
%     \opt{style/cjk-fake-bold} = \meta{莨ｪ邊嶺ｽ鍋ｲ礼ｻ�ｨ句ｺｦ}
%   \end{syntax}
% 隶ｾ鄂ｮ荳ｭ譁�ｭ嶺ｽ謎ｼｪ邊嶺ｽ鍋ｲ礼ｻ�ｨ句ｺｦ縲るｻ倩ｮ､荳ｺ\valuex{3}[]�悟ｯｹ莠朱Κ蛻�ｭ伜惠蟇ｹ蠎皮ｲ嶺ｽ灘ｭ嶺ｽ鍋噪荳ｭ譁�ｭ嶺ｽ難ｼ悟ｦ�FandolSong蜥熊andolHei遲会ｼ瑚ｯ･騾蛾｡ｹ荳咲函謨医�
% \end{function}
% \begin{function}[added=2022-04-01]{style/cjk-fake-slant}
%   \begin{syntax}
%     \opt{style/cjk-fake-slant} = \meta{莨ｪ譁應ｽ灘ｾ譁懃ｨ句ｺｦ}
%   \end{syntax}
% 隶ｾ鄂ｮ荳ｭ譁�ｭ嶺ｽ謎ｼｪ譁應ｽ灘ｾ譁懃ｨ句ｺｦ縲るｻ倩ｮ､荳ｺ\valuex{0.2}[]縲�
% \end{function}
% \changes{v6.1.4.2}{2023/03/23}{陦･蜈�TeX Live蜀�ｽｮ蟄嶺ｽ捺枚莉ｶ蜷閤
% \changes{v5.4.0.1}{2023/02/23}{菫ｮ豁｣譁�｡｣蜀�恭譁�ｭ嶺ｽ馴�鄂ｮ陦ｨ譬ｼ髞呵ｯｯ}
% \begin{function}[added=2022-03-06,updated=2023-02-23]{style/latin-font}
%   \begin{syntax}
%     \opt{style/latin-font} = (gyre)|tac|tacn|tcc|thcs|tll|none
%   \end{syntax}
% 隶ｾ鄂ｮ闍ｱ譁�ｭ嶺ｽ難ｼ悟�菴馴�鄂ｮ隗―tabrefx{tab:latin-font}[]縲�
% \end{function}
% \begin{optdesc}
%   \item[gyre] \filex[]{texgyretermes-regular.otf}[]縲―filex[]{texgyretermes-bold.otf}[]縲―filex[]{texgyretermes-italic.otf}[]縲―filex[]{texgyretermes-bolditalic.otf}[]縲―filex[]{texgyreheros-regular.otf}[]縲―filex[]{texgyreheros-bold.otf}[]縲―filex[]{texgyreheros-italic.otf}[]縲―filex[]{texgyreheros-bolditalic.otf}[]縲―filex[]{texgyrecursor-regular.otf}[]縲―filex[]{texgyrecursor-bold.otf}[]縲―filex[]{texgyrecursor-italic.otf}蜥圭filex{texgyrecursor-bolditalic.otf}[]縲�
%   \item[tac] \filex[]{times.ttf}[]縲―filex[]{timesbd.ttf}[]縲―filex[]{timesi.ttf}[]縲―filex[]{timesbi.ttf}[]縲―filex[]{arial.ttf}[]縲―filex[]{arialbd.ttf}[]縲―filex[]{ariali.ttf}[]縲―filex[]{arialbi.ttf}[]縲―filex[]{consola.ttf}[]縲―filex[]{consolab.ttf}[]縲―filex[]{consolai.ttf}蜥圭filex{consolaz.ttf}[]縲�
%   \item[tacn] \filex[]{times.ttf}[]縲―filex[]{timesbd.ttf}[]縲―filex[]{timesi.ttf}[]縲―filex[]{timesbi.ttf}[]縲―filex[]{arial.ttf}[]縲―filex[]{arialbd.ttf}[]縲―filex[]{ariali.ttf}[]縲―filex[]{arialbi.ttf}[]縲―filex[]{cour.ttf}[]縲―filex[]{courbd.ttf}[]縲―filex[]{couri.ttf}蜥圭filex{courbi.ttf}[]縲�
%   \item[tcc] \filex[]{times.ttf}[]縲―filex[]{timesbd.ttf}[]縲―filex[]{timesi.ttf}[]縲―filex[]{timesbi.ttf}[]縲―filex[]{cmunss.otf}[]縲―filex[]{cmunsx.otf}[]縲―filex[]{cmunsi.otf}[]縲―filex[]{cmunso.otf}[]縲―filex[]{cmuntt.otf}[]縲―filex[]{cmuntb.otf}[]縲―filex[]{cmunit.otf}蜥圭filex{cmuntx.otf}縲�
%   \item[thcs] \filex[]{times.ttf}[]縲―filex[]{timesbd.ttf}[]縲―filex[]{timesi.ttf}[]縲―filex[]{timesbi.ttf}[]縲―filex[]{Helvetica.ttf}[]縲―filex[]{Helvetica~Bold.ttf}[]縲―filex[]{Helvetica~Oblique.ttf}[]縲―filex[]{Helvetica~Bold~Oblique.ttf}[]縲―filex[]{CourierStd.otf}[]縲―filex[]{CourierStd-Bold.otf}[]縲―filex[]{CourierStd-Oblique.otf}蜥圭filex{CourierStd-BoldOblique.otf}[]縲�
%   \item[tll] \filex[]{times.ttf}[]縲―filex[]{timesbd.ttf}[]縲―filex[]{timesi.ttf}[]縲―filex[]{timesbi.ttf}[]縲―filex[]{LinBiolinum_R.otf}[]縲―filex[]{LinBiolinum_RB.otf}[]縲―filex[]{LinBiolinum_RI.otf}[]縲―filex[]{LinBiolinum_RBO.otf}[]縲―filex[]{LinLibertine_M.otf}[]縲―filex[]{LinLibertine_MB.otf}[]縲―filex[]{LinLibertine_MO.otf}蜥圭filex{LinLibertine_MBO.otf}縲�
%   \item[none] 蜈ｳ髣ｭ蜀�ｽｮ闍ｱ譁�ｭ嶺ｽ馴�鄂ｮ�碁怙閾ｪ陦碁�鄂ｮ闍ｱ譁�ｭ嶺ｽ薙�
% \end{optdesc}
% \changes{v2.16.1.1}{2022/11/27}{菫ｮ謾ｹ闍ｱ譁�ｭ嶺ｽ馴�鄂ｮ陦ｨ譁�｡｣譬ｷ蠑殉
% \begin{table}
% \caption{闍ｱ譁�ｭ嶺ｽ馴�鄂ｮ}
% \label{tab:latin-font}
% \begin{tblr}
% {
% width          = \linewidth,
% colspec        = {Q[c,m]*{3}{X[-1,c,m]}},
% hline{1,2,Z}   = {wd=.08em},
% row{even[2-Z]} = {bg=gray9!40},
% cell{2-Z}{1}   = {font=\ttfamily},
% row{1}         = {font=\bfseries}
% }
% 騾蛾｡ｹ蜷咲ｧｰ &amp; 鄂鈴ｩｬ譌�          &amp; 譌�陦ｬ郤ｿ譌�         &amp; 謇灘ｭ玲惻譌�               \\
% gyre     &amp; TeX Gyre Termes &amp; TeX Gyre Heros   &amp; TeX Gyre Cursor        \\
% tac      &amp; Times New Roman &amp; Arial            &amp; Consolas               \\
% tacn     &amp; Times New Roman &amp; Arial            &amp; Courier New            \\
% tcc      &amp; Times New Roman &amp; CMU Sans Serif   &amp; CMU Typewriter Text    \\
% thcs     &amp; Times New Roman &amp; Helvetica        &amp; Courier Std            \\
% tll      &amp; Times New Roman &amp; Linux Biolinum O &amp; Linux Libertine Mono O \\
% \end{tblr}
% \end{table}
% \begin{function}[added=2023-01-28]{style/latin-sans-scale,style/latin-mono-scale}
%   \begin{syntax}
%     \opt{style/latin-sans-scale} = upper|lower|(off)
%     \opt{style/latin-mono-scale} = upper|lower|(off)
%   \end{syntax}
% 蛹ｹ驟肴裏陦ｬ郤ｿ譌丞柱謇灘ｭ玲惻譌丞ｭ礼ｬｦ鬮伜ｺｦ縲�
% \end{function}
% \begin{optdesc}
%   \item[upper] 謖牙､ｧ蜀吝ｭ玲ｯ咲噪鬮伜ｺｦ郛ｩ謾ｾ莉･蛹ｹ驟咲ｽ鈴ｩｬ譌丞ｭ嶺ｽ薙�
%   \item[lower] 謖牙ｰ丞�蟄玲ｯ咲噪鬮伜ｺｦ郛ｩ謾ｾ莉･蛹ｹ驟咲ｽ鈴ｩｬ譌丞ｭ嶺ｽ薙�
%   \item[off] 荳咲ｼｩ謾ｾ縲�
% \end{optdesc}
% \begin{function}[added=2022-03-06,updated=2022-11-27]{style/math-font}
%   \begin{syntax}
%     \opt{style/math-font} = asana|cambria|(cm)|fira|garamond|lm|...|termes|xits|none
%   \end{syntax}
% 隶ｾ鄂ｮ謨ｰ蟄ｦ蟄嶺ｽ難ｼ悟�菴馴�鄂ｮ隗―tabrefx{tab:math-font}[]縲る勁Computer Modern蟄嶺ｽ灘､厄ｼ悟插菴ｿ逕ｨ\pkgx{unicode-math}螳丞桁隹�畑蟄嶺ｽ薙�
% \end{function}
% \changes{v2.16.1.1}{2022/11/27}{菫ｮ謾ｹ謨ｰ蟄ｦ蟄嶺ｽ馴�鄂ｮ陦ｨ譁�｡｣譬ｷ蠑殉
% \changes{v0.1.4.1}{2022/04/04}{謨ｰ蟄ｦ蟄嶺ｽ馴｣取�ｼ莉狗ｻ閤
% \begin{optdesc}
%   \item[cambria] \filex[]{cambria.ttc}[]縲�
%   \item[none] 蜈ｳ髣ｭ蜀�ｽｮ謨ｰ蟄ｦ蟄嶺ｽ馴�鄂ｮ�碁怙閾ｪ陦碁�鄂ｮ謨ｰ蟄ｦ蟄嶺ｽ薙�
% \end{optdesc}
% \begin{tblr}
% [
% long,
% caption = {謨ｰ蟄ｦ蟄嶺ｽ馴�鄂ｮ},
% label   = {tab:math-font}
% ]
% {
% width          = \linewidth,
% colspec        = {X[2,c,m]X[3,c,m]},
% hline{1,2,Z}   = {wd=.08em},
% row{even[2-Z]} = {bg=gray9!40},
% cell{2-Z}{1}   = {font=\ttfamily},
% row{1}         = {font=\bfseries},
% rowhead        = 1
% }
% 騾蛾｡ｹ蜷咲ｧｰ       &amp; 蟄嶺ｽ灘錐遘ｰ                 \\
% asana          &amp; Asana Math               \\
% cambria        &amp; Cambria Math             \\
% cm             &amp; Computer Modern          \\
% concrete       &amp; Concrete Math            \\
% erewhon        &amp; Erewhon Math             \\
% euler          &amp; Euler Math               \\
% fira           &amp; Fira Math                \\
% garamond       &amp; Garamond Math            \\
% gfsneohellenic &amp; GFS Neohellenic Math     \\
% kp             &amp; KpMath                   \\
% libertinus     &amp; Libertinus Math          \\
% lm             &amp; Latin Modern Math        \\
% newcm          &amp; New Computer Modern Math \\
% stix2          &amp; STIX Two Math            \\
% stix           &amp; STIX Math                \\
% xcharter       &amp; XCharter Math            \\
% xits           &amp; XITS Math                \\
% bonum          &amp; TeX Gyre Bonum Math      \\
% dejavu         &amp; TeX Gyre DejaVu Math     \\
% pagella        &amp; TeX Gyre Pagella Math    \\
% schola         &amp; TeX Gyre Schola Math     \\
% termes         &amp; TeX Gyre Termes Math     \\
% \end{tblr}
% \begin{function}[added=2022-03-14]{style/unicode-math}
%   \begin{syntax}
%     \opt{style/unicode-math} = \marg{unicode-math螳丞桁騾蛾｡ｹ}
%   \end{syntax}
% 菫ｮ謾ｹ\pkgx{unicode-math}鮟倩ｮ､騾蛾｡ｹ�悟�菴馴�鄂ｮ蜿りソpkgx{unicode-math}螳丞桁譁�｡｣�御ｻ�惠謨ｰ蟄ｦ蟄嶺ｽ謎ｸ堺ｸｺComputer Modern譌ｶ譛画譜縲�
% \end{function}
% \begin{function}[added=2022-03-07]{style/font-type}
%   \begin{syntax}
%     \opt{style/font-type} = (font)|file
%   \end{syntax}
% 隶ｾ鄂ｮ蟄嶺ｽ楢ｰ�畑譁ｹ蠑上�
% \end{function}
% \begin{optdesc}
%   \item[font] 逶ｸ蠎泌ｭ嶺ｽ灘ｷｲ螳芽｣�ｼ御ｽｿ逕ｨ蟄嶺ｽ灘錐遘ｰ隹�畑蟄嶺ｽ薙�
%   \item[file] 逶ｸ蠎泌ｭ嶺ｽ捺悴螳芽｣�ｼ御ｽｿ逕ｨ蟄嶺ｽ捺枚莉ｶ蜷咲ｧｰ隹�畑蟄嶺ｽ難ｼ碁ょ粋Overleaf謌傍eXPage遲牙惠郤ｿ蟷ｳ蜿ｰ�梧�荳肴婿萓ｿ螳芽｣�ｭ嶺ｽ鍋噪諠��縲�
% \end{optdesc}
% \begin{function}[added=2022-03-07]{style/font-path}
%   \begin{syntax}
%     \opt{style/font-path} = \marg{霍ｯ蠕м
%   \end{syntax}
% 隶ｾ鄂ｮ蟄嶺ｽ捺枚莉ｶ霍ｯ蠕�ｼ悟叉\metax{霍ｯ蠕м逶ｮ蠖募�蟄伜お蜈ｨ驛ｨ謇髴荳ｭ譁�∬恭譁�柱謨ｰ蟄ｦ蟄嶺ｽ捺枚莉ｶ�御ｻ�惠\optx{font-type}遲我ｺ旨file|譌ｶ譛画譜�碁ｻ倩ｮ､蛟ｼ荳ｺ\valuex{fonts}[]縲�
% \end{function}
% \subsection{闍ｱ譁�ｭ嶺ｽ党
% \label{闍ｱ譁�ｭ嶺ｽ党
% \begin{function}[added=2022-04-01]{style/en-cjk-font}
%   \begin{syntax}
%     \opt{style/en-cjk-font} = true|(false)
%   \end{syntax}
% 蛻�困蟄嶺ｽ捺酪譌ｶ�瑚恭譁�弍蜷ｦ菴ｿ逕ｨ荳ｭ譁�ｭ嶺ｽ薙ゆｸｻ隕∽ｽ懃畑莠主ｰ�擇縲∫ｫ�闃よ��｢倥…aption縲�｡ｵ逵蛾｡ｵ閼壹∝盾閠�枚迪ｮ蛻苓｡ｨ遲峨�
% \end{function}
% \begin{optdesc}
%   \item[true] 闍ｱ譁�ｽｿ逕ｨ逶ｸ蟇ｹ蠎泌ｭ嶺ｽ捺酪逧�ｸｭ譁�ｭ嶺ｽ薙�
%   \item[false] 闍ｱ譁�ｽｿ逕ｨ逶ｸ蟇ｹ蠎泌ｭ嶺ｽ捺酪逧�恭譁�ｭ嶺ｽ薙�
% \end{optdesc}
% \subsection{譬�｢俶焚蟄ｦ蟄嶺ｽ馴�鄂ｮ}
% \label{譬�｢俶焚蟄ｦ蟄嶺ｽ馴�鄂ｮ}
% \begin{function}[added=2023-02-03]{style/title-bold-math}
%   \begin{syntax}
%     \opt{style/title-bold-math} = true|(false)
%   \end{syntax}
% 譏ｯ蜷ｦ閾ｪ蜉ｨ蜉�邊怜ｦゆｸ倶ｽ咲ｽｮ荳ｭ逧�焚蟄ｦ蟄嶺ｽ難ｼ�
% 荳ｭ譁��皮ｩｶ逕溷ｭｦ菴崎ｮｺ譁�ｸｭ�悟ｰ�擇蜥碁｢伜錐鬘ｵ荳ｭ闍ｱ譁���｢假ｼ梧ｭ｣譁�園譛臥ｺｧ蛻ｫ譬�｢伜柱逶ｮ蠖穂ｸ郤ｧ譬�｢假ｼ�
% 闍ｱ譁��皮ｩｶ逕溷ｭｦ菴崎ｮｺ譁�ｸｭ�悟ｰ�擇蜥碁｢伜錐鬘ｵ荳ｭ闍ｱ譁���｢假ｼ梧ｭ｣譁�ｺ御ｸ牙屁莠泌�郤ｧ譬�｢伜柱荳ｭ譁�岼蠖穂ｸ郤ｧ譬�｢假ｼ�
% 譛ｬ遘醍函豈穂ｸ夊ｮｾ隶｡隶ｺ譁�ｸｭ�悟ｰ�擇譬�｢假ｼ御ｸｭ闍ｱ譁��髞ｮ隸搾ｼ檎岼蠖穂ｸ郤ｧ譬�｢伜柱豁｣譁�ｸ郤ｧ譬�｢倥�
% 逶ｮ蜑堺ｻ�髪謖，omputer Modern謨ｰ蟄ｦ蟄嶺ｽ薙�
% \end{function}
% \begin{optdesc}
%   \item[true] 蜉�邊励�
%   \item[false] 荳榊刈邊励�
% \end{optdesc}
% \subsection{隸ｭ險驟咲ｽｮ}
% \label{隸ｭ險驟咲ｽｮ}
% \begin{function}[added=2022-03-29]{style/language}
%   \begin{syntax}
%     \opt{style/language} = (zh)|en
%   \end{syntax}
% 隶ｾ鄂ｮ隶ｺ譁�ｯｭ險縲�
% \end{function}
% \begin{optdesc}
%   \item[zh] 荳ｭ譁��
%   \item[en] 闍ｱ譁�よｳｨ諢擾ｼ檎�皮ｩｶ逕溷ｭｦ菴崎ｮｺ譁�ｸ莠御ｸ臥ｺｧ譬�｢伜多莉､隸ｷ蜿りソsecrefx{闍ｱ譁��皮ｩｶ逕溷ｭｦ菴崎ｮｺ譁���｢�}縲�
% \end{optdesc}
% \subsection{蜿り�枚迪ｮ驟咲ｽｮ}
% \label{蜿り�枚迪ｮ驟咲ｽｮ}
% \begin{function}[added=2022-04-02,updated=2022-04-03]{style/bib-backend}
%   \begin{syntax}
%     \opt{style/bib-backend} = bibtex|(biblatex)
%   \end{syntax}
% 隶ｾ鄂ｮ蜿り�枚迪ｮ謾ｯ謖∵婿蠑上�
% \end{function}
% \begin{optdesc}
%   \item[bibtex] 菴ｿ逕ｨ\bibtex{}螟�炊蜿り�枚迪ｮ�悟錘遶ｯ遞句ｺ丈ｸｺ\cmdx{bibtex}[]縲�
%   \item[biblatex] 菴ｿ逕ｨ\biblatex{}螟�炊蜿り�枚迪ｮ�悟錘遶ｯ遞句ｺ丈ｸｺ\cmdx{biber}[]縲�
% \end{optdesc}
% \changes{v1.31.0.0}{2022/06/21}{菫ｮ謾ｹ\pkgx{biblatex}鮟倩ｮ､騾蛾｡ｹ}
% \begin{function}[added=2022-06-21]{style/biblatex-option}
%   \begin{syntax}
%     \opt{style/biblatex-option} = \marg{biblatex螳丞桁騾蛾｡ｹ}
%   \end{syntax}
% 菫ｮ謾ｹ\pkgx{biblatex}鮟倩ｮ､騾蛾｡ｹ�悟�菴馴�鄂ｮ蜿りソpkgx{biblatex-gb7714-2015}螳丞桁譁�｡｣��
% 莉�惠\optx{style/bib-backend}遲我ｺ旨biblatex|譌ｶ譛画譜縲ゆｾ句ｦゑｼ�
% \begin{lstlisting}
% \xdusetup{ style / biblatex-option = { gbnamefmt = quanpin } }
% \end{lstlisting}
% \end{function}
% \subsection{鬘ｵ髱｢驟咲ｽｮ}
% \label{鬘ｵ髱｢驟咲ｽｮ}
% \begin{function}[added=2022-04-12]{style/symmetric-margin}
%   \begin{syntax}
%     \opt{style/symmetric-margin} = true|(false)
%   \end{syntax}
% 隶ｾ鄂ｮ蟾ｦ蜿ｳ鬘ｵ霎ｹ霍晄弍蜷ｦ蟇ｹ遘ｰ縲�
% \end{function}
% \begin{optdesc}
%   \item[true] 蟇ｹ遘ｰ縲�
%   \item[false] 荳榊ｯｹ遘ｰ縲�
% \end{optdesc}
% \begin{function}[added=2022-05-08]{style/page-vertical-align}
%   \begin{syntax}
%     \opt{style/page-vertical-align} = 蛻�淵蟇ｹ鮨酢(鬘ｶ驛ｨ蟇ｹ鮨�)
%   \end{syntax}
% 隶ｾ鄂ｮ鬘ｵ髱｢蝙ら峩譁ｹ蜷醍噪蟇ｹ鮨先婿蠑上�
% \end{function}
% \begin{optdesc}
%   \item[蛻�淵蟇ｹ鮨疹 鬘ｵ髱｢鬮伜ｺｦ蝮�劇蝨ｰ蝪ｫ貊｡�御ｽｿ豈丈ｸ鬘ｵ逧�ｺ暮Κ逶ｴ謗･蟇ｹ鮨舌�
%   \item[鬘ｶ驛ｨ蟇ｹ鮨疹 鬘ｵ髱｢荳ｭ逧��螳ｹ菫晄戟螳�噪閾ｪ辟ｶ鬮伜ｺｦ�梧ｯ丈ｸ鬘ｵ逧�｡ｵ髱｢蠎暮Κ逕ｨ遨ｺ逋ｽ蝪ｫ貊｡縲�
% \end{optdesc}
% \subsection{譁�ｻｶ驟咲ｽｮ}
% \label{譁�ｻｶ驟咲ｽｮ}
% \begin{function}[added=2022-07-01]{style/file-search-path}
%   \begin{syntax}
%     \opt{style/file-search-path} = \marg{霍ｯ蠕м
%   \end{syntax}
% 隶ｾ鄂ｮ譁�ｻｶ謳懃ｴ｢霍ｯ蠕�ｼ悟庄逕ｨ莠蚕tnx{input}[]縲―tnx[]{include}蜥圭tnx{includegraphics}[]��
% 螟壻ｸｪ霍ｯ蠕�ｹ矩龍髴隕∽ｽｿ逕ｨ闍ｱ譁�濠隗帝怜捷髫泌ｼ縲�
% 隶ｾ鄂ｮ蜷蚕tnx{input}[]縲―tnx[]{include}蜥圭tnx{includegraphics}莉�怙蝪ｫ蜀呎枚莉ｶ蜷阪�
% \end{function}
% \begin{function}[added=2022-07-01]{style/fix-input,style/fix-include,style/fix-includegraphics}
%   \begin{syntax}
%     \opt{style/fix-input} = true|(false)
%     \opt{style/fix-include} = true|(false)
%     \opt{style/fix-includegraphics} = true|(false)
%   \end{syntax}
% TEXMF譬第頗邏｢莨伜�郤ｧ鬮倅ｺ守畑謌ｷ閾ｪ螳壻ｹ臥噪譁�ｻｶ謳懃ｴ｢霍ｯ蠕�ｼ�
% 螯よ棡蝨ｨTEXMF譬大�蟄伜惠蜷悟錐譁�ｻｶ�悟�莨壼ｯｼ閾ｴ髞呵ｯｯ逧�枚莉ｶ陲ｫ蜉�霓ｽ縲�
% 騾夊ｿ�ｸｺ\tnx{input}[]縲―tnx[]{include}蜥圭tnx{includegraphics}蜻ｽ莉､謇楢｡･荳∝庄莉･驕ｿ蜈崎ｯ･髣ｮ鬚倥�
% 螯よ棡逕ｨ謌ｷ逧ЫTeX{}謌門崟迚�ｭ画枚莉ｶ荳堺ｸ撒EXMF譬大�譁�ｻｶ蜷悟錐�梧�荳蚕TeX{}荳ｻ譁�ｻｶ蝨ｨ蜷御ｸ逶ｮ蠖包ｼ悟�譌�髴謇楢｡･荳√�
% \end{function}
% \subsection{莠､蜿牙ｼ慕畑驟咲ｽｮ}
% \label{莠､蜿牙ｼ慕畑驟咲ｽｮ}
% \begin{function}[added=2022-04-16,updated=2022-05-08]{style/ref-add-space}
%   \begin{syntax}
%     \opt{style/ref-add-space} = true|(false)
%   \end{syntax}
% 譏ｯ蜷ｦ閾ｪ蜉ｨ隹�紛\tnx{ref}蜥圭tnx{pageref}荳､萓ｧ荳ｭ闍ｱ譁�龍遨ｺ逋ｽ縲�
% \end{function}
% \begin{optdesc}
%   \item[true] 閾ｪ蜉ｨ隹�紛\tnx{ref}蜥圭tnx{pageref}荳､萓ｧ荳ｭ闍ｱ譁�龍遨ｺ逋ｽ縲�
% 譛ｪ驕ｿ蜈堺ｺｧ逕滉ｸ肴ｭ｣蟶ｸ逧�ｩｺ逋ｽ螳ｽ蠎ｦ�瑚ｯｷ荳崎ｦ∝惠\tnx{ref}蜥圭tnx{pageref}荳､萓ｧ霎灘�遨ｺ譬ｼ縲�
% 莉�惠\optx{language}遲我ｺ旨zh|譌ｶ譛画譜縲�
% 隸ｷ荳崎ｦ∽ｽｿ逕ｨ\pkgx{subcaption}螳丞桁逧�署萓帷噪\tnx{subref}蜥圭tnx{subref*}蜻ｽ莉､縲�
%   \item[false] 菫晄戟蜴溷ｧ欺tnx{ref}蜥圭tnx{pageref}蜻ｽ莉､謨域棡縲�
% \end{optdesc}
% \subsection{Caption驟咲ｽｮ}
% \label{caption驟咲ｽｮ}
% \changes{v1.0.0.0}{2022/04/14}{隶ｾ鄂ｮ蝗ｾ縲∬｡ｨ縲∫ｮ玲ｳ墓��ｭｾ荳主錘髱｢譬�｢倅ｹ矩龍逧�龍霍掵
% \begin{function}[added=2022-04-14]{style/caption-label-sep}
%   \begin{syntax}
%     \opt{style/caption-label-sep} = \meta{髣ｴ霍掵
%   \end{syntax}
% 隶ｾ鄂ｮ蝗ｾ縲∬｡ｨ縲∫ｮ玲ｳ墓��ｭｾ荳主錘髱｢譬�｢倅ｹ矩龍逧�龍霍晢ｼ碁ｻ倩ｮ､蛟ｼ荳ｺ\valuex{0.75em}[]縲�
% \end{function}
% \subsection{蝗ｾ陦ｨ驟咲ｽｮ}
% \label{蝗ｾ陦ｨ驟咲ｽｮ}
% \changes{v3.0.0.0}{2022/12/03}{隶ｾ鄂ｮ蝗ｾ陦ｨcaption譬ｼ蠑殉
% \begin{function}[added=2022-12-03]{style/ft-caption-format}
%   \begin{syntax}
%     \opt{style/ft-caption-format} = plain|(hang)
%   \end{syntax}
% 隶ｾ鄂ｮ蝗ｾ陦ｨcaption譬ｼ蠑上�
% \begin{optdesc}
%   \item[plain] 譌�郛ｩ霑幢ｼ悟叉閾ｪ辟ｶ谿ｵ關ｽ縲�
%   \item[hang] 謔ｬ謖らｼｩ霑帙�
% \end{optdesc}
% \end{function}
% \changes{v3.0.0.0}{2022/12/03}{隶ｾ鄂ｮ蝗ｾ陦ｨcaption蟇ｹ鮨先婿蠑殉
% \begin{function}[added=2022-12-03]{style/ft-caption-align}
%   \begin{syntax}
%     \opt{style/ft-caption-align} = left|centering|(centering-left)
%   \end{syntax}
% 隶ｾ鄂ｮ蝗ｾ陦ｨcaption蟇ｹ鮨先婿蠑上�
% \begin{optdesc}
%   \item[left] 蟾ｦ蟇ｹ鮨舌�
%   \item[centering] 螻�ｸｭ縲�
%   \item[centering-left] 蜿ｪ譛我ｸ陦梧慮螻�ｸｭ�悟､夊｡梧慮蟾ｦ蟇ｹ鮨舌�
% \end{optdesc}
% \end{function}
% \changes{v6.1.0.0}{2023/03/04}{蠅槫刈蝗ｾ陦ｨ蟇ｹ鮨先磁蜿｣}
% \begin{function}[added=2023-03-04]{style/figure-align,style/table-align}
%   \begin{syntax}
%     \opt{style/figure-align} = left|(centering)|right
%     \opt{style/table-align} = left|(centering)|right
%   \end{syntax}
% 隶ｾ鄂ｮ\envx{figure}蜥圭envx{table}邇ｯ蠅�ｸｭ蜀�ｮｹ蟇ｹ鮨先婿蠑上�
% \end{function}
% \begin{optdesc}
%   \item[left] 蟾ｦ蟇ｹ鮨舌�
%   \item[centering] 螻�ｸｭ縲�
%   \item[right] 蜿ｳ蟇ｹ鮨舌�
% \end{optdesc}
% \changes{v0.10.0.1}{2022/04/13}{陦･蜈�｡ｨ譬ｼ蜀�ｮｹ蟄怜捷譁�｡｣隸ｴ譏枝
% \begin{function}[added=2022-04-13,updated=2022-04-15]{style/table-small-font}
%   \begin{syntax}
%     \opt{style/table-small-font} = (true)|false
%   \end{syntax}
% 隶ｾ鄂ｮ陦ｨ譬ｼ蜀�ｮｹ蟄怜捷譏ｯ蜷ｦ荳ｺ莠泌捷縲�
% \end{function}
% \begin{optdesc}
%   \item[true] 莠泌捷縲�
%   \item[false] 蟆丞屁蜿ｷ縲�
% \end{optdesc}
% \subsection{邂玲ｳ暮�鄂ｮ}
% \label{邂玲ｳ暮�鄂ｮ}
% \changes{v5.0.0.0}{2023/02/17}{邊ｾ邂邂玲ｳ墓磁蜿｣蜷咲ｧｰ}
% \begin{function}[added=2022-06-25,updated=2023-02-17]{style/alg-small-caption}
%   \begin{syntax}
%     \opt{style/alg-small-caption} = (true)|false
%   \end{syntax}
% 隶ｾ鄂ｮ邂玲ｳ苗aption蟄怜捷譏ｯ蜷ｦ荳ｺ莠泌捷縲�
% \end{function}
% \begin{optdesc}
%   \item[true] 莠泌捷縲�
%   \item[false] 蟆丞屁蜿ｷ縲�
% \end{optdesc}
% \begin{function}[added=2022-04-15,updated=2023-02-17]{style/alg-small-font}
%   \begin{syntax}
%     \opt{style/alg-small-font} = (true)|false
%   \end{syntax}
% 隶ｾ鄂ｮ邂玲ｳ募�螳ｹ蟄怜捷譏ｯ蜷ｦ荳ｺ莠泌捷縲�
% \end{function}
% \begin{optdesc}
%   \item[true] 莠泌捷縲�
%   \item[false] 蟆丞屁蜿ｷ縲�
% \end{optdesc}
% \changes{v3.0.0.0}{2022/12/03}{隶ｾ鄂ｮ邂玲ｳ苗aption譬ｼ蠑殉
% \begin{function}[added=2022-12-03]{style/alg-caption-format}
%   \begin{syntax}
%     \opt{style/alg-caption-format} = plain|(hang)
%   \end{syntax}
% 隶ｾ鄂ｮ邂玲ｳ苗aption譬ｼ蠑上�
% \begin{optdesc}
%   \item[plain] 譌�郛ｩ霑幢ｼ悟叉閾ｪ辟ｶ谿ｵ關ｽ縲�
%   \item[hang] 謔ｬ謖らｼｩ霑帙�
% \end{optdesc}
% \end{function}
% \changes{v3.0.0.0}{2022/12/03}{隶ｾ鄂ｮ邂玲ｳ苗aption蟇ｹ鮨先婿蠑殉
% \begin{function}[added=2022-12-03]{style/alg-caption-align}
%   \begin{syntax}
%     \opt{style/alg-caption-align} = (left)|centering|centering-left
%   \end{syntax}
% 隶ｾ鄂ｮ邂玲ｳ苗aption蟇ｹ鮨先婿蠑上�
% \begin{optdesc}
%   \item[left] 蟾ｦ蟇ｹ鮨舌�
%   \item[centering] 螻�ｸｭ縲�
%   \item[centering-left] 蜿ｪ譛我ｸ陦梧慮螻�ｸｭ�悟､夊｡梧慮蟾ｦ蟇ｹ鮨舌�
% \end{optdesc}
% \end{function}
% \changes{v3.1.0.0}{2022/12/03}{隶ｾ鄂ｮ邂玲ｳ穂ｸ臥ｺｿ髣ｴ霍掵
% \begin{function}[added=2022-12-03]{style/add-alg-rule-vspace}
%   \begin{syntax}
%     \opt{style/add-alg-rule-vspace} = true|(false)
%   \end{syntax}
% 隶ｾ鄂ｮ譏ｯ蜷ｦ荳ｺruled譬ｷ蠑冗噪邂玲ｳ慕識蠅�噪荳画擅讓ｪ郤ｿ蠅槫刈郤ｵ蜷鷹龍霍昴�
% \begin{optdesc}
%   \item[true] 蠅槫刈縲�
%   \item[false] 荳榊｢槫刈縲�
% \end{optdesc}
% \end{function}
% \subsection{遶�闃る�鄂ｮ}
% \label{遶�闃る�鄂ｮ}
% \begin{function}[added=2022-04-05]{style/before-skip}
%   \begin{syntax}
%     \opt{style/before-skip} = \marg{髣ｴ霍晏�陦ｨ}
%   \end{syntax}
% 隶ｾ鄂ｮ遶�闃よ��｢伜燕逧�桙逶ｴ髣ｴ霍晢ｼ碁ｻ倩ｮ､蛟ｼ荳ｺ\valuex{\{24pt, 18pt, 12pt, 12pt, 12pt, 12pt\}}[]�悟�蛻ｫ蟇ｹ蠎能tnx{chapter}[]縲―tnx[]{section}[]縲―tnx[]{subsection}[]縲―tnx[]{subsubsection}[]縲―tnx[]{paragraph}蜥圭tnx{subparagraph}縲�
% \end{function}
% \begin{function}[added=2022-04-05]{style/after-skip}
%   \begin{syntax}
%     \opt{style/after-skip} = \marg{髣ｴ霍晏�陦ｨ}
%   \end{syntax}
% 隶ｾ鄂ｮ遶�闃よ��｢伜錘逧�桙逶ｴ髣ｴ霍晢ｼ碁ｻ倩ｮ､蛟ｼ荳ｺ\valuex{\{18pt, 12pt, 6pt, 6pt, 6pt, 6pt\}}[]�悟�蛻ｫ蟇ｹ蠎能tnx{chapter}[]縲―tnx[]{section}[]縲―tnx[]{subsection}[]縲―tnx[]{subsubsection}[]縲―tnx[]{paragraph}蜥圭tnx{subparagraph}縲�
% \end{function}
% \begin{function}[added=2022-04-11]
%   {
%     style/chap-zihao,
%     style/sec-zihao,
%     style/subsec-zihao,
%     style/subsubsec-zihao,
%     style/para-zihao,
%     style/subpara-zihao
%   }
%   \begin{syntax}
%     \opt{style/chap-zihao} = 0|-0|1|-1|2|-2|3|-3|4|-4|5|-5|6|-6|7|8
%     \opt{style/sec-zihao} = 0|-0|1|-1|2|-2|3|-3|4|-4|5|-5|6|-6|7|8
%     \opt{style/subsec-zihao} = 0|-0|1|-1|2|-2|3|-3|4|-4|5|-5|6|-6|7|8
%     \opt{style/subsubsec-zihao} = 0|-0|1|-1|2|-2|3|-3|4|-4|5|-5|6|-6|7|8
%     \opt{style/para-zihao} = 0|-0|1|-1|2|-2|3|-3|4|-4|5|-5|6|-6|7|8
%     \opt{style/subpara-zihao} = 0|-0|1|-1|2|-2|3|-3|4|-4|5|-5|6|-6|7|8
%   \end{syntax}
% 隶ｾ鄂ｮ遶�闃よ��｢伜ｭ怜捷縲�
% 蠖楢ｮｺ譁�ｯｭ險荳ｺ荳ｭ譁�慮�碁ｻ倩ｮ､蛟ｼ蛻�悪荳ｺ\valuex{3}[]縲―valuex[]{4}[]縲―valuex[]{4}[]縲―valuex[]{4}[]縲―valuex[]{4}蜥圭valuex{4}縲�
% 蠖楢ｮｺ譁�ｯｭ險荳ｺ闍ｱ譁�慮�碁ｻ倩ｮ､蛟ｼ蛻�悪荳ｺ\valuex{4}[]縲―valuex[]{-4}[]縲―valuex[]{-4}[]縲―valuex[]{-4}[]縲―valuex[]{-4}蜥圭valuex{-4}縲�
% \end{function}
% \begin{optdesc}
%   \item[0] 蛻晏捷
%   \item[竏�0] 蟆丞�蜿ｷ
%   \item[1] 荳蜿ｷ
%   \item[-1] 蟆丈ｸ蜿ｷ
%   \item[2] 莠悟捷
%   \item[-2] 蟆丈ｺ悟捷
%   \item[3] 荳牙捷
%   \item[-3] 蟆丈ｸ牙捷
%   \item[4] 蝗帛捷
%   \item[-4] 蟆丞屁蜿ｷ
%   \item[5] 莠泌捷
%   \item[-5] 蟆丈ｺ泌捷
%   \item[6] 蜈ｭ蜿ｷ
%   \item[-6] 蟆丞�蜿ｷ
%   \item[7] 荳�捷
%   \item[8] 蜈ｫ蜿ｷ
% \end{optdesc}
% \subsection{蟇ｹ辣ｧ陦ｨ驟咲ｽｮ}
% \label{蟇ｹ辣ｧ陦ｨ驟咲ｽｮ}
% \begin{function}[added=2022-06-05]{style/customize-los,style/customize-loa}
%   \begin{syntax}
%     \opt{style/customize-los} = (true)|false
%     \opt{style/customize-loa} = (true)|false
%   \end{syntax}
% 譏ｯ蜷ｦ螳悟�閾ｪ螳壻ｹ臥ｬｦ蜿ｷ蟇ｹ辣ｧ陦ｨ蜥檎ｼｩ逡･隸ｭ蟇ｹ辣ｧ陦ｨ縲�
% \end{function}
% \begin{optdesc}
%   \item[true] 螳悟�閾ｪ螳壻ｹ臥ｬｦ蜿ｷ蟇ｹ辣ｧ陦ｨ蜥檎ｼｩ逡･隸ｭ蟇ｹ辣ｧ陦ｨ�悟ｯｹ辣ｧ陦ｨ逕ｱ逕ｨ謌ｷ閾ｪ陦梧賜迚医�
% 蝨ｨ\secrefx{菫｡諱ｯ蠖募�}荳ｭ謠仙所逧Ыoptx{info/los}蜥圭optx{info/loa}荳ｭ蟇ｹ蠎皮噪譁�ｻｶ荳ｭ蜿ｯ莉･騾夊ｿ�｡ｨ譬ｼ謌門�陦ｨ遲画婿蠑丞ｮ樒鴫蟇ｹ辣ｧ陦ｨ�御ｾ句ｦゑｼ�
% \begin{lstlisting}
% \begin{tabular}{ll}
% 隨ｦ蜿ｷ         &amp; 隨ｦ蜿ｷ蜷咲ｧｰ \\
% $\pi$        &amp; 蝨�捉邇�   \\
% $\mathbb{R}$ &amp; 螳樊焚     \\
% \end{tabular}
% \end{lstlisting}
%   \item[false] 菴ｿ逕ｨ蜀�ｽｮ逧�渕莠蚕envx{longtblr}邇ｯ蠅�ｼ�\pkgx{tabularray}螳丞桁�牙ｮ樒鴫逧�
% 隨ｦ蜿ｷ蟇ｹ辣ｧ陦ｨ蜥檎ｼｩ逡･隸ｭ蟇ｹ辣ｧ陦ｨ譬ｷ蠑上�
% 蝨ｨ\secrefx{菫｡諱ｯ蠖募�}荳ｭ謠仙所逧Ыoptx{info/los}蜥圭optx{info/loa}荳ｭ蟇ｹ蠎皮噪譁�ｻｶ莉�怙蝪ｫ蜀咏嶌蠎泌�謨ｰ逧��螳ｹ蜊ｳ蜿ｯ�御ｾ句ｦゑｼ�
% \begin{lstlisting}
% $\pi$        &amp; 蝨�捉邇� \\
% $\mathbb{R}$ &amp; 螳樊焚   \\
% \end{lstlisting}
% \end{optdesc}
% \changes{v2.10.2.1}{2022/06/28}{菫ｮ謾ｹ蟇ｹ辣ｧ陦ｨ鮟倩ｮ､蛻玲�ｼ蠑殉
% \begin{function}[added=2022-06-05,updated=2022-06-28]{style/colspec-los,style/colspec-loa}
%   \begin{syntax}
%     \opt{style/colspec-los} = \marg{隨ｦ蜿ｷ蟇ｹ辣ｧ陦ｨ蛻玲�ｼ蠑殉
%     \opt{style/colspec-loa} = \marg{郛ｩ逡･隸ｭ蟇ｹ辣ｧ陦ｨ蛻玲�ｼ蠑殉
%   \end{syntax}
% 隶ｾ鄂ｮ隨ｦ蜿ｷ蟇ｹ辣ｧ陦ｨ蜥檎ｼｩ逡･隸ｭ蟇ｹ辣ｧ陦ｨ蛻玲�ｼ蠑擾ｼ�
% 隨ｦ蜿ｷ蟇ｹ辣ｧ陦ｨ蛻玲�ｼ蠑城ｻ倩ｮ､蛟ｼ荳ｺ\valuex{Q[l,h]X[l,h]}[]縲�
% 郛ｩ逡･隸ｭ蟇ｹ辣ｧ陦ｨ蛻玲�ｼ蠑城ｻ倩ｮ､蛟ｼ荳ｺ\valuex{Q[l,h]X[l,h]X[l,h]}[]縲�
% 隸ｭ豕募盾閠ソpkgx{tabularray}螳丞桁\valuex{colspec}騾蛾｡ｹ縲�
% 莉�惠\optx{style/customize-los}蜥圭optx{style/customize-loa}遲我ｺ蚕valuex{false}譌ｶ譛画譜縲�
% \end{function}
% \begin{function}[added=2022-06-05]{style/title-row-los,style/title-row-loa}
%   \begin{syntax}
%     \opt{style/title-row-los} = true|(false)
%     \opt{style/title-row-loa} = true|(false)
%   \end{syntax}
% 譏ｯ蜷ｦ豈城｡ｵ蝮�仞遉ｺ隨ｦ蜿ｷ蟇ｹ辣ｧ陦ｨ蜥檎ｼｩ逡･隸ｭ蟇ｹ辣ｧ陦ｨ譬�｢倩｡後�
% 莉�惠\optx{style/customize-los}蜥圭optx{style/customize-loa}遲我ｺ蚕valuex{false}譌ｶ譛画譜縲�
% \end{function}
% \begin{optdesc}
%   \item[true] 豈城｡ｵ蝮�仞遉ｺ隨ｦ蜿ｷ蟇ｹ辣ｧ陦ｨ蜥檎ｼｩ逡･隸ｭ蟇ｹ辣ｧ陦ｨ譬�｢倩｡後�
%   \item[false] 莉�ｬｬ荳鬘ｵ譏ｾ遉ｺ譏ｾ遉ｺ隨ｦ蜿ｷ蟇ｹ辣ｧ陦ｨ蜥檎ｼｩ逡･隸ｭ蟇ｹ辣ｧ陦ｨ譬�｢倩｡後�
% \end{optdesc}
% \changes{v1.26.0.0}{2022/06/07}{菴懆�ｮ莉矩�鄂ｮ}
% \subsection{菴懆�ｮ莉矩�鄂ｮ}
% \label{菴懆�ｮ莉矩�鄂ｮ}
% \changes{v1.28.4.1}{2022/06/19}{菫ｮ豁｣菴懆�ｮ莉狗､ｺ萓急
% \begin{function}[added=2022-06-07]{style/customize-edubg,style/customize-resresult}
%   \begin{syntax}
%     \opt{style/customize-edubg} = (true)|false
%     \opt{style/customize-resresult} = (true)|false
%   \end{syntax}
% 譏ｯ蜷ｦ螳悟�閾ｪ螳壻ｹ我ｽ懆�ｮ莉倶ｸｭ謨呵ご閭梧勹蜥梧判隸ｻ遑募｣ｫ蟄ｦ菴肴悄髣ｴ逧��皮ｩｶ謌先棡縲�
% \end{function}
% \begin{optdesc}
%   \item[true] 螳悟�閾ｪ螳壻ｹ我ｽ懆�ｮ莉倶ｸｭ謨呵ご閭梧勹蜥梧判隸ｻ遑募｣ｫ蟄ｦ菴肴悄髣ｴ逧��皮ｩｶ謌先棡�檎罰逕ｨ謌ｷ閾ｪ陦梧賜迚医�
% 蝨ｨ\secrefx{菫｡諱ｯ蠖募�}荳ｭ謠仙所逧Ыoptx{info/bio}荳ｭ蟇ｹ蠎皮噪譁�ｻｶ荳ｭ
% 蜿ｯ莉･騾夊ｿ�ｮｵ關ｽ縲∬｡ｨ譬ｼ謌門�陦ｨ遲画婿蠑乗賜迚域蕗閧ｲ閭梧勹蜥梧判隸ｻ遑募｣ｫ蟄ｦ菴肴悄髣ｴ逧��皮ｩｶ謌先棡�御ｾ句ｦゑｼ�
% \begin{lstlisting}
% \section{蝓ｺ譛ｬ諠��}
% 蠑�荳会ｼ檎塙�碁剳隘ｿ隘ｿ螳我ｺｺ��1982蟷ｴ8譛亥�逕滂ｼ瑚･ｿ螳臥鳩蟄千ｧ第橿螟ｧ蟄ｦXX蟄ｦ髯｢XX荳謎ｸ�2008郤ｧ遑募｣ｫ遐皮ｩｶ逕溘�
% \section{謨呵ご閭梧勹}
% 2001.08��2005.07 隘ｿ螳臥鳩蟄千ｧ第橿螟ｧ蟄ｦ�梧悽遘托ｼ御ｸ謎ｸ夲ｼ夂鳩蟄蝉ｿ｡諱ｯ蟾･遞�
% \par
% 2008.08�� 隘ｿ螳臥鳩蟄千ｧ第橿螟ｧ蟄ｦ�檎｡募｣ｫ遐皮ｩｶ逕滂ｼ御ｸ謎ｸ夲ｼ夂鳩逎∝惻荳主ｾｮ豕｢謚譛ｯ
% \section{謾ｻ隸ｻ遑募｣ｫ蟄ｦ菴肴悄髣ｴ逧��皮ｩｶ謌先棡}
% \subsection{蜿題｡ｨ蟄ｦ譛ｯ隶ｺ譁�}
% [1] XXX, XXX, XXX. Rapid development technique for drip irrigation emitters[J]. RP Journal,UK.,2003,9(2): 104-110.(SCI: 672CZ, EI: 03187452127)
% \par
% [2] XXX, XXX, XXX. 蝓ｺ莠主ｿｫ騾滓�蝙句宛騾�逧�ｻｴ邂｡蠢ｫ騾溷宛騾�謚譛ｯ遐皮ｩｶ[J]. 隘ｿ螳我ｺ､騾壼､ｧ蟄ｦ蟄ｦ謚･, 2001, 15(9): 935-939. (EI: 02226959521)
% \subsection{逕ｳ隸ｷ�域肢譚�ｼ我ｸ灘茜}
% [1] XXX, XXX, XXX遲�. 荳灘茜蜷咲ｧｰ: 蝗ｽ蛻ｫ,荳灘茜蜿ｷ[P]. 蜃ｺ迚域律譛�.
% \subsection{蜿ゆｸ守ｧ醍�秘｡ｹ逶ｮ蜿願執螂凡
% [1] XXX鬘ｹ逶ｮ, 鬘ｹ逶ｮ蜷咲ｧｰ, 襍ｷ豁｢譌ｶ髣ｴ, 螳梧�諠��, 菴懆�ｴ｡迪ｮ縲�
% \par
% [2] XXX, XXX, XXX遲�. 遘醍�秘｡ｹ逶ｮ蜷咲ｧｰ. 髯戊･ｿ逵∫ｧ第橿霑帶ｭ･荳臥ｭ牙･�, 闔ｷ螂匁律譛�.
% \end{lstlisting}
%   \item[false] 菴ｿ逕ｨ蜀�ｽｮ逧�渕莠蚕envx{tblr}邇ｯ蠅�ｼ�\pkgx[]{tabularray}螳丞桁�牙ｮ樒鴫逧�
% 謨呵ご閭梧勹陦ｨ譬ｼ邇ｯ蠅ソenvx{edubg}蜥悟渕莠蚕envx{enumerate}邇ｯ蠅�ｼ�\pkgx[]{enumitem}螳丞桁�牙ｮ樒鴫逧�
% 謾ｻ隸ｻ遑募｣ｫ蟄ｦ菴肴悄髣ｴ逧��皮ｩｶ謌先棡蛻苓｡ｨ邇ｯ蠅ソenvx{resresult}縲�
% 蝨ｨ\secrefx{菫｡諱ｯ蠖募�}荳ｭ謠仙所逧Ыoptx{info/bio}荳ｭ蟇ｹ蠎皮噪譁�ｻｶ荳ｭ菴ｿ逕ｨ\envx{edubg}蜥圭envx{resresult}邇ｯ蠅�叉蜿ｯ�御ｾ句ｦゑｼ�
% \begin{lstlisting}
% \section{蝓ｺ譛ｬ諠��}
% 蠑�荳会ｼ檎塙�碁剳隘ｿ隘ｿ螳我ｺｺ��1982蟷ｴ8譛亥�逕滂ｼ瑚･ｿ螳臥鳩蟄千ｧ第橿螟ｧ蟄ｦXX蟄ｦ髯｢XX荳謎ｸ�2008郤ｧ遑募｣ｫ遐皮ｩｶ逕溘�
% \section{謨呵ご閭梧勹}
% \begin{edubg}
% 2001.08��2005.07 &amp; 隘ｿ螳臥鳩蟄千ｧ第橿螟ｧ蟄ｦ�梧悽遘托ｼ御ｸ謎ｸ夲ｼ夂鳩蟄蝉ｿ｡諱ｯ蟾･遞欺\
% 2008.08�� &amp; 隘ｿ螳臥鳩蟄千ｧ第橿螟ｧ蟄ｦ�檎｡募｣ｫ遐皮ｩｶ逕滂ｼ御ｸ謎ｸ夲ｼ夂鳩逎∝惻荳主ｾｮ豕｢謚譛ｯ\\
% \end{edubg}
% \section{謾ｻ隸ｻ遑募｣ｫ蟄ｦ菴肴悄髣ｴ逧��皮ｩｶ謌先棡}
% \subsection{蜿題｡ｨ蟄ｦ譛ｯ隶ｺ譁�}
% \begin{resresult}
% \item XXX, XXX, XXX. Rapid development technique for drip irrigation emitters[J]. RP Journal,UK.,2003,9(2): 104-110.(SCI: 672CZ, EI: 03187452127)
% \item XXX, XXX, XXX. 蝓ｺ莠主ｿｫ騾滓�蝙句宛騾�逧�ｻｴ邂｡蠢ｫ騾溷宛騾�謚譛ｯ遐皮ｩｶ[J]. 隘ｿ螳我ｺ､騾壼､ｧ蟄ｦ蟄ｦ謚･, 2001, 15(9): 935-939. (EI: 02226959521)
% \end{resresult}
% \subsection{逕ｳ隸ｷ�域肢譚�ｼ我ｸ灘茜}
% \begin{resresult}
% \item XXX, XXX, XXX遲�. 荳灘茜蜷咲ｧｰ: 蝗ｽ蛻ｫ,荳灘茜蜿ｷ[P]. 蜃ｺ迚域律譛�.
% \end{resresult}
% \subsection{蜿ゆｸ守ｧ醍�秘｡ｹ逶ｮ蜿願執螂凡
% \begin{resresult}
% \item XXX鬘ｹ逶ｮ, 鬘ｹ逶ｮ蜷咲ｧｰ, 襍ｷ豁｢譌ｶ髣ｴ, 螳梧�諠��, 菴懆�ｴ｡迪ｮ縲�
% \item XXX, XXX, XXX遲�. 遘醍�秘｡ｹ逶ｮ蜷咲ｧｰ. 髯戊･ｿ逵∫ｧ第橿霑帶ｭ･荳臥ｭ牙･�, 闔ｷ螂匁律譛�.
% \end{resresult}
% \end{lstlisting}
% \end{optdesc}
% \subsection{菫｡諱ｯ蠖募�}
% \label{菫｡諱ｯ蠖募�}
% \changes{v2.18.1.0}{2022/12/01}{蠅槫刈荳謎ｸ壼忽螢ｫ譬｡螟門ｯｼ蟶亥柱闍ｱ譁�ｭｦ菴咲ｱｻ蛻ｫ菫｡諱ｯ蠖募�}
% \changes{v2.16.1.1}{2022/11/27}{菫ｮ謾ｹ菫｡諱ｯ蠖募�騾蛾｡ｹ蛻�ｱｻ陦ｨ譁�｡｣譬ｷ蠑殉
% \changes{v1.9.0.0}{2022/05/03}{蠅槫刈菫｡諱ｯ蠖募�騾蛾｡ｹ蛻�ｱｻ陦ｨ}
% \changes{v1.10.3.1}{2022/05/04}{遘ｻ髯､荳謎ｸ壼忽螢ｫ譬｡螟門ｯｼ蟶井ｿ｡諱ｯ蠖募�}
% 逕ｨ謌ｷ譬ｹ謐ｮ\tabrefx{tblr:info}騾画叫逶ｸ蠎皮噪騾蛾｡ｹ蟷ｶ菴ｿ逕ｨ\secrefx{蜿よ焚隶ｾ鄂ｮ}荳ｭ逧�婿蠑剰ｿ幄｡御ｿ｡諱ｯ蠖募�縲�
% \begin{tblr}
% [
% long,
% caption = {菫｡諱ｯ蠖募�騾蛾｡ｹ蛻�ｱｻ},
% label   = {tblr:info}
% ]
% {
% width          = \linewidth,
% colspec        = {Q[l,m]*{7}{X[c,m]}},
% cell{1}{3}     = {c=2}{},
% cell{1}{5}     = {c=4}{},
% cell{2}{2}     = {r=2}{},
% cell{2}{3,5,7} = {c=2}{},
% hline{1,4,Z}   = {wd=.08em},
% hline{2}       = {2-2}{wd=.08em,leftpos=-1,rightpos=-1,endpos=true},
% hline{2}       = {3-4}{wd=.08em,leftpos=-1,rightpos=-1,endpos=true},
% hline{2}       = {5-8}{wd=.08em,leftpos=-1,rightpos=-1,endpos=true},
% hline{3}       = {3-4}{wd=.08em,leftpos=-1,rightpos=-1,endpos=true},
% hline{3}       = {5-6}{wd=.08em,leftpos=-1,rightpos=-1,endpos=true},
% hline{3}       = {7-8}{wd=.08em,leftpos=-1,rightpos=-1,endpos=true},
% row{odd[4-Z]}  = {bg=gray9!40},
% cell{4-Z}{1}   = {font=\ttfamily},
% row{1-3}       = {font=\bfseries},
% rowhead        = 3
% }
%                  &amp; 蠑鬚�   &amp; 豈穂ｸ夊ｮｾ隶｡ &amp;        &amp; 蟄ｦ菴崎ｮｺ譁� &amp;        &amp;        &amp;        \\
%                  &amp; 譛ｬ遘�   &amp; 譛ｬ遘�     &amp;        &amp; 遑募｣ｫ     &amp;        &amp; 蜊壼｣ｫ   &amp;        \\
%                  &amp;        &amp; 譬｡蜀�     &amp; 譬｡螟�   &amp; 蟄ｦ譛ｯ     &amp; 荳謎ｸ�   &amp; 蟄ｦ譛ｯ   &amp; 荳謎ｸ�   \\
% graduate-type    &amp;        &amp;          &amp;        &amp; \cmark   &amp; \cmark &amp; \cmark &amp; \cmark \\
% degree-type      &amp;        &amp;          &amp;        &amp; \cmark   &amp; \cmark &amp; \cmark &amp; \cmark \\
% degree           &amp;        &amp;          &amp;        &amp; \cmark   &amp; \cmark &amp; \cmark &amp; \cmark \\
% degree*          &amp;        &amp;          &amp;        &amp;          &amp; \cmark &amp;        &amp; \cmark \\
% title            &amp;        &amp; \cmark   &amp; \cmark &amp; \cmark   &amp; \cmark &amp; \cmark &amp; \cmark \\
% title*           &amp;        &amp;          &amp;        &amp; \cmark   &amp; \cmark &amp; \cmark &amp; \cmark \\
% department       &amp; \cmark &amp; \cmark   &amp; \cmark &amp; \cmark   &amp; \cmark &amp; \cmark &amp; \cmark \\
% major            &amp; \cmark &amp; \cmark   &amp; \cmark &amp; \cmark   &amp;        &amp; \cmark &amp;        \\
% major*           &amp;        &amp;          &amp;        &amp; \cmark   &amp;        &amp; \cmark &amp;        \\
% sub-major        &amp;        &amp;          &amp;        &amp; \cmark   &amp;        &amp; \cmark &amp;        \\
% domain           &amp;        &amp;          &amp;        &amp;          &amp; \cmark &amp;        &amp; \cmark \\
% author           &amp; \cmark &amp; \cmark   &amp; \cmark &amp; \cmark   &amp; \cmark &amp; \cmark &amp; \cmark \\
% author*          &amp;        &amp;          &amp;        &amp; \cmark   &amp; \cmark &amp; \cmark &amp; \cmark \\
% supervisor       &amp; \cmark &amp; \cmark   &amp;        &amp; \cmark   &amp; \cmark &amp; \cmark &amp; \cmark \\
% supervisor*      &amp;        &amp;          &amp;        &amp; \cmark   &amp; \cmark &amp; \cmark &amp; \cmark \\
% supv-dept        &amp;        &amp; \cmark   &amp;        &amp;          &amp;        &amp;        &amp;        \\
% supv-ent         &amp;        &amp;          &amp; \cmark &amp;          &amp; \cmark &amp;        &amp; \cmark \\
% supv-ent*        &amp;        &amp;          &amp;        &amp;          &amp; \cmark &amp;        &amp; \cmark \\
% supv-school      &amp;        &amp;          &amp; \cmark &amp;          &amp;        &amp;        &amp;        \\
% supv-title       &amp;        &amp;          &amp;        &amp; \cmark   &amp; \cmark &amp; \cmark &amp; \cmark \\
% supv-title*      &amp;        &amp;          &amp;        &amp; \cmark   &amp; \cmark &amp; \cmark &amp; \cmark \\
% supv-ent-title   &amp;        &amp;          &amp;        &amp;          &amp; \cmark &amp;        &amp; \cmark \\
% supv-ent-title*  &amp;        &amp;          &amp;        &amp;          &amp; \cmark &amp;        &amp; \cmark \\
% class            &amp; \cmark &amp;          &amp;        &amp;          &amp;        &amp;        &amp;        \\
% class-id         &amp;        &amp; \cmark   &amp; \cmark &amp;          &amp;        &amp;        &amp;        \\
% student-id       &amp; \cmark &amp; \cmark   &amp; \cmark &amp; \cmark   &amp; \cmark &amp; \cmark &amp; \cmark \\
% clc              &amp;        &amp;          &amp;        &amp; \cmark   &amp; \cmark &amp; \cmark &amp; \cmark \\
% secret-level     &amp;        &amp;          &amp;        &amp; \cmark   &amp; \cmark &amp; \cmark &amp; \cmark \\
% secret-year      &amp;        &amp;          &amp;        &amp; \cmark   &amp; \cmark &amp; \cmark &amp; \cmark \\
% submit-date      &amp; \cmark &amp;          &amp;        &amp; \cmark   &amp; \cmark &amp; \cmark &amp; \cmark \\
% statement-scan   &amp;        &amp;          &amp;        &amp; \cmark   &amp; \cmark &amp; \cmark &amp; \cmark \\
% statement-sign   &amp;        &amp;          &amp;        &amp; \cmark   &amp; \cmark &amp; \cmark &amp; \cmark \\
% sign             &amp; \cmark &amp;          &amp;        &amp;          &amp;        &amp;        &amp;        \\
% date             &amp; \cmark &amp;          &amp;        &amp;          &amp;        &amp;        &amp;        \\
% abstract         &amp;        &amp; \cmark   &amp; \cmark &amp; \cmark   &amp; \cmark &amp; \cmark &amp; \cmark \\
% abstract*        &amp;        &amp; \cmark   &amp; \cmark &amp; \cmark   &amp; \cmark &amp; \cmark &amp; \cmark \\
% keywords         &amp;        &amp; \cmark   &amp; \cmark &amp; \cmark   &amp; \cmark &amp; \cmark &amp; \cmark \\
% keywords*        &amp;        &amp; \cmark   &amp; \cmark &amp; \cmark   &amp; \cmark &amp; \cmark &amp; \cmark \\
% los              &amp;        &amp;          &amp;        &amp; \cmark   &amp; \cmark &amp; \cmark &amp; \cmark \\
% loa              &amp;        &amp;          &amp;        &amp; \cmark   &amp; \cmark &amp; \cmark &amp; \cmark \\
% bib-resource     &amp; \cmark &amp; \cmark   &amp; \cmark &amp; \cmark   &amp; \cmark &amp; \cmark &amp; \cmark \\
% appendix         &amp;        &amp; \cmark   &amp; \cmark &amp; \cmark   &amp; \cmark &amp; \cmark &amp; \cmark \\
% acknowledgements &amp;        &amp; \cmark   &amp; \cmark &amp; \cmark   &amp; \cmark &amp; \cmark &amp; \cmark \\
% bio              &amp;        &amp;          &amp;        &amp; \cmark   &amp; \cmark &amp; \cmark &amp; \cmark \\
% \end{tblr}
% \changes{v1.9.0.0}{2022/05/03}{蠅槫刈遐皮ｩｶ逕滉ｿ｡諱ｯ蠖募�騾蛾｡ｹ譁�｡｣}
% \begin{function}[added=2022-05-02,updated=2022-05-03]{info/graduate-type}
%   \begin{syntax}
%     \opt{info/graduate-type} = (遑募｣ｫ)|蜊壼｣ｫ
%   \end{syntax}
% 隶ｾ鄂ｮ遐皮ｩｶ逕溽ｱｻ蝙九�
% \end{function}
% \begin{optdesc}
%   \item[遑募｣ｫ] 遑募｣ｫ遐皮ｩｶ逕溘�
%   \item[蜊壼｣ｫ] 蜊壼｣ｫ遐皮ｩｶ逕溘�
% \end{optdesc}
% \begin{function}[added=2022-05-03]{info/degree-type}
%   \begin{syntax}
%     \opt{info/degree-type} = (蟄ｦ譛ｯ)|荳謎ｸ�
%   \end{syntax}
% 隶ｾ鄂ｮ遐皮ｩｶ逕溷ｭｦ菴咲ｱｻ蝙九�
% \end{function}
% \begin{optdesc}
%   \item[蟄ｦ譛ｯ] 蟄ｦ譛ｯ蟄ｦ菴阪�
%   \item[荳謎ｸ咯 荳謎ｸ壼ｭｦ菴阪�
% \end{optdesc}
% \begin{function}[added=2022-05-03]{info/degree,info/degree*}
%   \begin{syntax}
%     \opt{info/degree} = \meta{遐皮ｩｶ逕溷ｭｦ菴咲ｱｻ蛻ｫ荳ｭ譁�錐遘ｰ}
%     \opt{info/degree*} = \meta{遐皮ｩｶ逕溷ｭｦ菴咲ｱｻ蛻ｫ闍ｱ譁�錐遘ｰ}
%   \end{syntax}
% 隶ｾ鄂ｮ遐皮ｩｶ逕溷ｭｦ菴咲ｱｻ蛻ｫ縲�
% \end{function}
% \begin{function}[added=2022-04-01,updated=2022-05-30]{info/title,info/title*}
%   \begin{syntax}
%     \opt{info/title} = \meta{隶ｺ譁�ｸｭ譁���｢�}
%     \opt{info/title*} = \meta{隶ｺ譁�恭譁���｢�}
%   \end{syntax}
% 隶ｾ鄂ｮ隶ｺ譁���｢倥ょｻｺ隶ｮ菴ｿ逕ｨ謐｢陦梧而蛻ｶ隨ｦ��|\\|�画焔蜉ｨ蛻ｶ螳壽困陦御ｽ咲せ��
% 譛ｬ遘第ｯ穂ｸ夊ｮｾ隶｡隶ｺ譁�怙螟壻ｸ､陦鯉ｼ檎�皮ｩｶ逕溷ｭｦ菴崎ｮｺ譁�裏髯仙宛縲�
% \end{function}
% \begin{function}[added=2022-04-01]{info/department}
%   \begin{syntax}
%     \opt{info/department} = \meta{髯｢邉ｻ蜷咲ｧｰ}
%   \end{syntax}
% 隶ｾ鄂ｮ髯｢邉ｻ蜷咲ｧｰ縲�
% \end{function}
% \begin{function}[added=2022-04-01,updated=2022-05-03]{info/major,info/major*}
%   \begin{syntax}
%     \opt{info/major} = \meta{荳謎ｸ壼錐遘ｰ/荳郤ｧ蟄ｦ遘大錐遘ｰ}
%     \opt{info/major*} = \meta{荳郤ｧ蟄ｦ遘題恭譁�錐遘ｰ}
%   \end{syntax}
% 隶ｾ鄂ｮ荳謎ｸ壼錐遘ｰ/荳郤ｧ蟄ｦ遘大錐遘ｰ縲�
% \end{function}
% \begin{function}[added=2022-05-03]{info/sub-major}
%   \begin{syntax}
%     \opt{info/sub-major} = \meta{莠檎ｺｧ蟄ｦ遘大錐遘ｰ}
%   \end{syntax}
% 隶ｾ鄂ｮ莠檎ｺｧ蟄ｦ遘大錐遘ｰ縲�
% \end{function}
% \begin{function}[added=2022-05-03]{info/domain}
%   \begin{syntax}
%     \opt{info/domain} = \meta{鬚�沺}
%   \end{syntax}
% 隶ｾ鄂ｮ鬚�沺蜷咲ｧｰ縲�
% \end{function}
% \begin{function}[added=2022-04-01,updated=2022-05-03]{info/author,info/author*}
%   \begin{syntax}
%     \opt{info/author} = \meta{菴懆�ｧ灘錐}
%     \opt{info/author*} = \meta{菴懆�ｧ灘錐諡ｼ髻ｳ}
%   \end{syntax}
% 隶ｾ鄂ｮ菴懆�ｧ灘錐縲�
% \end{function}
% \begin{function}[added=2022-04-01,updated=2022-05-03]{info/supervisor,info/supervisor*}
%   \begin{syntax}
%     \opt{info/supervisor} = \meta{蟇ｼ蟶亥ｧ灘錐}
%     \opt{info/supervisor*} = \meta{蟇ｼ蟶亥ｧ灘錐諡ｼ髻ｳ}
%   \end{syntax}
% 隶ｾ鄂ｮ蟇ｼ蟶亥ｧ灘錐縲�
% \end{function}
% \changes{v5.0.0.0}{2023/02/17}{邊ｾ邂驛ｨ蛻�ｿ｡諱ｯ蠖募�謗･蜿｣蜷咲ｧｰ}
% \begin{function}[added=2022-04-01,updated=2023-02-17]{info/supv-dept}
%   \begin{syntax}
%     \opt{info/supv-dept} = \meta{髯｢蜀�ｯｼ蟶亥ｧ灘錐}
%   \end{syntax}
% 隶ｾ鄂ｮ髯｢蜀�ｯｼ蟶亥ｧ灘錐縲�
% \end{function}
% \begin{function}[added=2022-04-01,updated=2023-02-17]{info/supv-ent,info/supv-ent*}
%   \begin{syntax}
%     \opt{info/supv-ent} = \meta{譬｡螟門ｯｼ蟶亥ｧ灘錐}
%     \opt{info/supv-ent*} = \meta{譬｡螟門ｯｼ蟶亥ｧ灘錐諡ｼ髻ｳ}
%   \end{syntax}
% 隶ｾ鄂ｮ譬｡螟門ｯｼ蟶亥ｧ灘錐縲�
% \end{function}
% \begin{function}[added=2022-04-01,updated=2023-02-17]{info/supv-school}
%   \begin{syntax}
%     \opt{info/supv-school} = \meta{譬｡蜀�ｯｼ蟶亥ｧ灘錐}
%   \end{syntax}
% 隶ｾ鄂ｮ譬｡蜀�ｯｼ蟶亥ｧ灘錐縲�
% \end{function}
% \begin{function}[added=2022-05-03,updated=2023-02-17]{info/supv-title,info/supv-title*}
%   \begin{syntax}
%     \opt{info/supv-title} = \meta{蟇ｼ蟶郁′遘ｰ}
%     \opt{info/supv-title*} = \meta{蟇ｼ蟶郁′遘ｰ闍ｱ譁�錐遘ｰ}
%   \end{syntax}
% 隶ｾ鄂ｮ蟇ｼ蟶郁′遘ｰ縲�
% \end{function}
% \begin{function}[added=2022-05-03,updated=2023-02-17]{info/supv-ent-title,info/supv-ent-title*}
%   \begin{syntax}
%     \opt{info/supv-ent-title} = \meta{譬｡螟門ｯｼ蟶郁′遘ｰ}
%     \opt{info/supv-ent-title*} = \meta{譬｡螟門ｯｼ蟶郁′遘ｰ闍ｱ譁�錐遘ｰ}
%   \end{syntax}
% 隶ｾ鄂ｮ譬｡螟門ｯｼ蟶郁′遘ｰ縲�
% \end{function}
% \begin{function}[added=2022-12-31]{info/class}
%   \begin{syntax}
%     \opt{info/class} = \meta{逡迎
%   \end{syntax}
% 隶ｾ鄂ｮ逡鯉ｼ悟叉豈穂ｸ壼ｹｴ莉ｽ縲�
% \end{function}
% \begin{function}[added=2022-04-01]{info/class-id}
%   \begin{syntax}
%     \opt{info/class-id} = \meta{菴懆�少郤ｧ蜿ｷ}
%   \end{syntax}
% 隶ｾ鄂ｮ菴懆�少郤ｧ蜿ｷ縲�
% \end{function}
% \begin{function}[added=2022-04-01]{info/student-id}
%   \begin{syntax}
%     \opt{info/student-id} = \meta{菴懆�ｭｦ蜿ｷ}
%   \end{syntax}
% 隶ｾ鄂ｮ菴懆�ｭｦ蜿ｷ縲�
% \end{function}
% \begin{function}[added=2022-05-03]{info/clc}
%   \begin{syntax}
%     \opt{info/clc} = \meta{荳ｭ蝗ｾ蛻�ｱｻ蜿ｷ}
%   \end{syntax}
% 隶ｾ鄂ｮ荳ｭ蝗ｾ蛻�ｱｻ蜿ｷ縲�
% \end{function}
% \begin{function}[added=2022-05-03]{info/secret-level}
%   \begin{syntax}
%     \opt{info/secret-level} = 遘伜ｯ�|(蜈ｬ蠑)
%   \end{syntax}
% 隶ｾ鄂ｮ蟇�ｺｧ縲�
% \end{function}
% \begin{function}[added=2022-05-30]{info/secret-year}
%   \begin{syntax}
%     \opt{info/secret-year} = \meta{菫晏ｯ�ｹｴ髯図
%   \end{syntax}
% 隶ｾ鄂ｮ菫晏ｯ�ｹｴ髯撰ｼ御ｻ�惠\optx{secret-level}遲我ｺ旨遘伜ｯ�|譌ｶ譛画譜縲�
% \end{function}
% \changes{v1.17.0.1}{2022/05/29}{遐皮ｩｶ逕溷ｭｦ菴崎ｮｺ譁�署莠､譌･譛滓�ｼ蠑殉
% \begin{function}[added=2022-05-03,updated=2022-12-31]{info/submit-date}
%   \begin{syntax}
%     \opt{info/submit-date} = \meta{yyyy-mm}
%     \opt{info/submit-date} = \meta{yyyy-mm-dd}
%   \end{syntax}
% 隶ｾ鄂ｮ謠蝉ｺ､譌･譛滂ｼ悟ｦよ棡逡咏ｩｺ�悟�閾ｪ蜉ｨ菴ｿ逕ｨ郛冶ｯ大ｽ灘､ｩ譌･譛溘�
% \end{function}
% \changes{v2.1.0.0}{2022/06/22}{螢ｰ譏朱｡ｵ謇ｫ謠乗枚莉ｶ霍ｯ蠕м
% \begin{function}[added=2022-06-22]{info/statement-scan}
%   \begin{syntax}
%     \opt{info/statement-scan} = \marg{蟄ｦ菴崎ｮｺ譁�峡蛻帶ｧ螢ｰ譏主柱蜈ｳ莠手ｮｺ譁�ｽｿ逕ｨ謗域揀逧�ｯｴ譏朱｡ｵ謇ｫ謠乗枚莉ｶ霍ｯ蠕м
%   \end{syntax}
% 隶ｾ鄂ｮ蟄ｦ菴崎ｮｺ譁�峡蛻帶ｧ螢ｰ譏主柱蜈ｳ莠手ｮｺ譁�ｽｿ逕ｨ謗域揀逧�ｯｴ譏朱｡ｵ謇ｫ謠乗枚莉ｶ霍ｯ蠕��
% \end{function}
% \changes{v2.2.0.0}{2022/06/23}{螢ｰ譏朱｡ｵ遲ｾ蜷肴枚莉ｶ霍ｯ蠕м
% \begin{function}[added=2022-06-23]{info/statement-sign}
%   \begin{syntax}
%     \opt{info/statement-sign} = \marg{譁�ｻｶ霍ｯ蠕�1,譁�ｻｶ霍ｯ蠕�2,譁�ｻｶ霍ｯ蠕�3,譁�ｻｶ霍ｯ蠕�4,譁�ｻｶ霍ｯ蠕�5,譁�ｻｶ霍ｯ蠕�6}
%   \end{syntax}
% 隶ｾ鄂ｮ螢ｰ譏朱｡ｵ遲ｾ蜷肴枚莉ｶ霍ｯ蠕��
% 譁�ｻｶ謾ｯ謖∵�ｼ蠑丈ｸ蚕tnx{includegraphics}荳閾ｴ�悟ｻｺ隶ｮ譁�ｻｶ荳ｺ騾乗�閭梧勹荳比ｻ�怏鮟題牡�悟ｹｶ蟆ｽ驥丞㍼蟆題ｾｹ霍昴�
% \end{function}
% \begin{optdesc}
%   \item[譁�ｻｶ霍ｯ蠕�1] 蟄ｦ菴崎ｮｺ譁�峡蛻帶ｧ螢ｰ譏取悽莠ｺ遲ｾ蜷肴枚莉ｶ霍ｯ蠕��
%   \item[譁�ｻｶ霍ｯ蠕�2] 蟄ｦ菴崎ｮｺ譁�峡蛻帶ｧ螢ｰ譏取律譛滓枚莉ｶ霍ｯ蠕��
%   \item[譁�ｻｶ霍ｯ蠕�3] 蜈ｳ莠手ｮｺ譁�ｽｿ逕ｨ謗域揀逧�ｯｴ譏取悽莠ｺ遲ｾ蜷肴枚莉ｶ霍ｯ蠕��
%   \item[譁�ｻｶ霍ｯ蠕�4] 蜈ｳ莠手ｮｺ譁�ｽｿ逕ｨ謗域揀逧�ｯｴ譏取律譛滓枚莉ｶ霍ｯ蠕��
%   \item[譁�ｻｶ霍ｯ蠕�5] 蜈ｳ莠手ｮｺ譁�ｽｿ逕ｨ謗域揀逧�ｯｴ譏主ｯｼ蟶育ｭｾ蜷肴枚莉ｶ霍ｯ蠕��
%   \item[譁�ｻｶ霍ｯ蠕�6] 蜈ｳ莠手ｮｺ譁�ｽｿ逕ｨ謗域揀逧�ｯｴ譏取律譛滓枚莉ｶ霍ｯ蠕��
% \end{optdesc}
% \begin{function}[added=2022-12-31]{info/sign}
%   \begin{syntax}
%     \opt{info/sign} = \marg{譁�ｻｶ霍ｯ蠕�1,譁�ｻｶ霍ｯ蠕�2}
%   \end{syntax}
% 隶ｾ鄂ｮ蠑鬚俶冠蜻顔ｭｾ蜷肴枚莉ｶ霍ｯ蠕��
% 譁�ｻｶ謾ｯ謖∵�ｼ蠑丈ｸ蚕tnx{includegraphics}荳閾ｴ�悟ｻｺ隶ｮ譁�ｻｶ荳ｺ騾乗�閭梧勹荳比ｻ�怏鮟題牡�悟ｹｶ蟆ｽ驥丞㍼蟆題ｾｹ霍昴�
% \end{function}
% \begin{optdesc}
%   \item[譁�ｻｶ霍ｯ蠕�1] 謖�ｯｼ謨吝ｸ域э隗∫ｭｾ蜷肴枚莉ｶ霍ｯ蠕��
%   \item[譁�ｻｶ霍ｯ蠕�2] 蟄ｦ髯｢螳｡譬ｸ諢剰ｧ∫ｭｾ蜷肴枚莉ｶ霍ｯ蠕��
% \end{optdesc}
% \begin{function}[added=2022-12-31]{info/date}
%   \begin{syntax}
%     \opt{info/date} = \marg{譌･譛�1,譌･譛�2}
%   \end{syntax}
% 隶ｾ鄂ｮ蠑鬚俶冠蜻顔ｭｾ蜷肴律譛滂ｼ梧�ｼ蠑丈ｸｺ\margx{yyyy-mm-dd}[]�悟ｦよ棡逡咏ｩｺ�悟�閾ｪ蜉ｨ菴ｿ逕ｨ郛冶ｯ大ｽ灘､ｩ譌･譛溘�
% \end{function}
% \begin{optdesc}
%   \item[譌･譛�1] 謖�ｯｼ謨吝ｸ域э隗∫ｭｾ蜷肴律譛溘�
%   \item[譌･譛�2] 蟄ｦ髯｢螳｡譬ｸ諢剰ｧ∫ｭｾ蜷肴律譛溘�
% \end{optdesc}
% \begin{function}[added=2022-04-02]{info/abstract,info/abstract*}
%   \begin{syntax}
%     \opt{info/abstract} = \marg{荳ｭ譁�遭隕∵枚莉ｶ霍ｯ蠕м
%     \opt{info/abstract*} = \marg{闍ｱ譁�遭隕∵枚莉ｶ霍ｯ蠕м
%   \end{syntax}
% 隶ｾ鄂ｮ鞫倩ｦ∵枚莉ｶ霍ｯ蠕�ｼ檎嶌蠎疲枚莉ｶ蜀�ｻ�腸蜀呎遭隕∝�螳ｹ�梧裏髴莉ｻ菴慕識蠅��
% \end{function}
% \begin{function}[added=2022-04-02]{info/keywords,info/keywords*}
%   \begin{syntax}
%     \opt{info/keywords} = \marg{荳ｭ譁��髞ｮ隸閤
%     \opt{info/keywords*} = \marg{闍ｱ譁��髞ｮ隸閤
%   \end{syntax}
% 隶ｾ鄂ｮ蜈ｳ髞ｮ隸搾ｼ悟�髞ｮ隸堺ｹ矩龍髴隕∽ｽｿ逕ｨ闍ｱ譁�濠隗帝怜捷髫泌ｼ縲�
% \end{function}
% \changes{v1.22.0.0}{2022/06/05}{隨ｦ蜿ｷ蟇ｹ辣ｧ陦ｨ譁�ｻｶ霍ｯ蠕м
% \begin{function}[added=2022-06-05]{info/los}
%   \begin{syntax}
%     \opt{info/los} = \marg{隨ｦ蜿ｷ蟇ｹ辣ｧ陦ｨ譁�ｻｶ霍ｯ蠕м
%   \end{syntax}
% 隶ｾ鄂ｮ隨ｦ蜿ｷ蟇ｹ辣ｧ陦ｨ譁�ｻｶ霍ｯ蠕��
% \end{function}
% \changes{v1.22.0.0}{2022/06/05}{郛ｩ逡･隸ｭ蟇ｹ辣ｧ陦ｨ譁�ｻｶ霍ｯ蠕м
% \begin{function}[added=2022-06-05]{info/loa}
%   \begin{syntax}
%     \opt{info/loa} = \marg{郛ｩ逡･隸ｭ蟇ｹ辣ｧ陦ｨ譁�ｻｶ霍ｯ蠕м
%   \end{syntax}
% 隶ｾ鄂ｮ郛ｩ逡･隸ｭ蟇ｹ辣ｧ陦ｨ譁�ｻｶ霍ｯ蠕��
% \end{function}
% \changes{v2.0.0.0}{2022/06/21}{菫ｮ謾ｹ蜿り�枚迪ｮ譁�ｻｶ霍ｯ蠕�蛾｡ｹ蜷咲ｧｰ}
% \begin{function}[added=2022-06-21]{info/bib-resource}
%   \begin{syntax}
%     \opt{info/bib-resource} = \marg{蜿り�枚迪ｮ譁�ｻｶ霍ｯ蠕м
%   \end{syntax}
% 隶ｾ鄂ｮ蜿り�枚迪ｮ\filex{.bib}譁�ｻｶ霍ｯ蠕�ｼ悟､壻ｸｪ譁�ｻｶ荵矩龍髴隕∽ｽｿ逕ｨ闍ｱ譁�濠隗帝怜捷髫泌ｼ縲�
% \end{function}
% \changes{v4.0.0.0}{2022/12/11}{蠅槫刈髯�ｽ墓枚莉ｶ謗･蜿｣}
% \begin{function}[added=2022-12-11]{info/appendix}
%   \begin{syntax}
%     \opt{info/appendix} = \marg{髯�ｽ墓枚莉ｶ霍ｯ蠕м
%   \end{syntax}
% 隶ｾ鄂ｮ髯�ｽ墓枚莉ｶ霍ｯ蠕�ｼ悟､壻ｸｪ譁�ｻｶ荵矩龍髴隕∽ｽｿ逕ｨ闍ｱ譁�濠隗帝怜捷髫泌ｼ縲�
% \end{function}
% \begin{function}[added=2022-04-02]{info/acknowledgements}
%   \begin{syntax}
%     \opt{info/acknowledgements} = \marg{閾ｴ隹｢譁�ｻｶ霍ｯ蠕м
%   \end{syntax}
% 隶ｾ鄂ｮ閾ｴ隹｢譁�ｻｶ霍ｯ蠕�ｼ檎嶌蠎疲枚莉ｶ蜀�ｻ�腸蜀呵�隹｢蜀�ｮｹ�梧裏髴莉ｻ菴慕識蠅��
% \end{function}
% \begin{function}[added=2022-06-07]{info/bio}
%   \begin{syntax}
%     \opt{info/bio} = \marg{菴懆�ｮ莉玖ｷｯ蠕м
%   \end{syntax}
% 隶ｾ鄂ｮ菴懆�ｮ莉区枚莉ｶ霍ｯ蠕�ｼ梧枚莉ｶ蜀�ｮｹ蜿ｯ蜿りソsecrefx{菴懆�ｮ莉矩�鄂ｮ}荳ｭ逧�､ｺ萓九�
% \end{function}
% \changes{v6.1.4.1}{2023/03/14}{譖ｴ譁ｰ遐皮ｩｶ逕滉ｿ｡諱ｯ謗ｨ闕仙ｼ}
% \changes{v2.18.1.0}{2022/12/01}{蠅槫刈荳謎ｸ壼忽螢ｫ菫｡諱ｯ蠖募�謗ｨ闕仙ｼ譚･貅図
% \changes{v2.12.2.1}{2022/11/20}{隹�紛遐皮ｩｶ逕滉ｿ｡諱ｯ謗ｨ闕仙ｼ螻慕､ｺ譬ｷ蠑殉
% \changes{v1.26.11.2}{2022/06/18}{遐皮ｩｶ逕滉ｿ｡諱ｯ謗ｨ闕仙ｼ}
% \subsubsection{遐皮ｩｶ逕滉ｿ｡諱ｯ謗ｨ闕仙ｼ}
% \label{遐皮ｩｶ逕滉ｿ｡諱ｯ謗ｨ闕仙ｼ}
% 莉･荳狗�皮ｩｶ逕滉ｿ｡諱ｯ謗ｨ闕仙ｼ蝮�擂閾ｪ
% 縲願･ｿ螳臥鳩蟄千ｧ第橿螟ｧ蟄ｦ遐皮ｩｶ逕溷ｭｦ菴崎ｮｺ譁�ｨ｡譚ｿ��2015蟷ｴ菫ｮ隶｢迚茨ｼ�-2022.11菫ｮ隶｢縲九�
% 縲願･ｿ螳臥鳩蟄千ｧ第橿螟ｧ蟄ｦ荳謎ｸ壼ｭｦ菴咲｡募｣ｫ蟄ｦ菴崎ｮｺ譁�ｰ�擇蜿贋ｸｭ闍ｱ譁�｢伜錐鬘ｵ讓｡譚ｿ��2015蟷ｴ迚茨ｼ�-2022.11菫ｮ隶｢縲句柱
% 縲願･ｿ螳臥鳩蟄千ｧ第橿螟ｧ蟄ｦ荳謎ｸ壼ｭｦ菴榊忽螢ｫ蟄ｦ菴崎ｮｺ譁�ｰ�擇蜿贋ｸｭ闍ｱ譁�｢伜錐鬘ｵ讓｡譚ｿ-2022.11縲具ｼ�
% 譌�莉ｻ菴穂ｿｮ謾ｹ�御ｻ�ｾ帛盾閠��
% \setlength\parindent{0pt}
% \begin{itemize}
% \item \optx{degree} (蟄ｦ譛ｯ遑募｣ｫ縲∝ｭｦ譛ｯ蜊壼｣ｫ)
% \par
% 蟾･蟄ｦ遑募｣ｫ縲�
% 蟾･蟄ｦ蜊壼｣ｫ縲�
% 蜩ｲ蟄ｦ遑募｣ｫ縲�
% 扈乗ｵ主ｭｦ遑募｣ｫ縲�
% 豕募ｭｦ遑募｣ｫ縲�
% 謨呵ご蟄ｦ遑募｣ｫ縲�
% 譁�ｭｦ遑募｣ｫ縲�
% 逅�ｭｦ遑募｣ｫ縲�
% 逅�ｭｦ蜊壼｣ｫ縲�
% 蜀帑ｺ句ｭｦ遑募｣ｫ縲�
% 蜀帑ｺ句ｭｦ蜊壼｣ｫ縲�
% 邂｡逅�ｭｦ遑募｣ｫ縲�
% 邂｡逅�ｭｦ蜊壼｣ｫ
% \item \optx{degree} (荳謎ｸ夂｡募｣ｫ)
% \par
% 驥題檮遑募｣ｫ縲�
% 蠎皮畑扈溯ｮ｡遑募｣ｫ縲�
% 鄙ｻ隸醍｡募｣ｫ縲�
% 逕ｵ蟄蝉ｿ｡諱ｯ遑募｣ｫ縲�
% 譛ｺ譴ｰ遑募｣ｫ縲�
% 譚先侭荳主喧蟾･遑募｣ｫ縲�
% 蟾･蝠�ｮ｡逅�｡募｣ｫ縲�
% 蜈ｬ蜈ｱ邂｡逅�｡募｣ｫ縲�
% 蝗ｾ荵ｦ諠�冠遑募｣ｫ縲�
% 蟾･遞狗ｮ｡逅�｡募｣ｫ縲�
% 蟾･遞狗｡募｣ｫ
% \item \optx{degree} (荳謎ｸ壼忽螢ｫ)
% \par
% 逕ｵ蟄蝉ｿ｡諱ｯ蜊壼｣ｫ縲�
% 譛ｺ譴ｰ蜊壼｣ｫ縲�
% 蟾･遞句忽螢ｫ
% \item \optx{degree*} (荳謎ｸ夂｡募｣ｫ)
% \par
% Finance縲�
% Applied Statistics縲�
% Translation縲�
% Electronic Information縲�
% Machinery縲�
% Material and Chemistry縲�
% Business Administration縲�
% Public Administration縲�
% Engineering Administration縲�
% Engineering
% \item \optx{degree*} (荳謎ｸ壼忽螢ｫ)
% \par
% Electronic Information縲�
% Machinery縲�
% Engineering
% \item \optx{department}
% \par
% 騾壻ｿ｡蟾･遞句ｭｦ髯｢縲�
% 逕ｵ蟄仙ｷ･遞句ｭｦ髯｢縲�
% 隶｡邂玲惻遘大ｭｦ荳取橿譛ｯ蟄ｦ髯｢縲�
% 譛ｺ逕ｵ蟾･遞句ｭｦ髯｢縲�
% 蜈臥鳩蟾･遞句ｭｦ髯｢縲�
% 迚ｩ逅�ｭｦ髯｢縲�
% 扈乗ｵ惹ｸ守ｮ｡逅�ｭｦ髯｢縲�
% 謨ｰ蟄ｦ荳守ｻ溯ｮ｡蟄ｦ髯｢縲�
% 莠ｺ譁�ｭｦ髯｢縲�
% 螟門嵜隸ｭ蟄ｦ髯｢縲�
% 蠕ｮ逕ｵ蟄仙ｭｦ髯｢縲�
% 逕溷多遘大ｭｦ謚譛ｯ蟄ｦ髯｢縲�
% 遨ｺ髣ｴ遘大ｭｦ荳取橿譛ｯ蟄ｦ髯｢縲�
% 蜈郁ｿ帶攝譁吩ｸ守ｺｳ邀ｳ遘第橿蟄ｦ髯｢縲�
% 鄂醍ｻ應ｸ惹ｿ｡諱ｯ螳牙�蟄ｦ髯｢縲�
% 鬩ｬ蜈区昜ｸｻ荵牙ｭｦ髯｢縲�
% 莠ｺ蟾･譎ｺ閭ｽ蟄ｦ髯｢縲�
% 髮��逕ｵ霍ｯ遐皮ｩｶ髯｢
% \item \optx{major}
% \par
% 蜩ｲ蟄ｦ縲�
% 蠎皮畑扈乗ｵ主ｭｦ縲�
% 鬩ｬ蜈区昜ｸｻ荵臥炊隶ｺ縲�
% 菴楢ご蟄ｦ縲�
% 螟門嵜隸ｭ險譁�ｭｦ縲�
% 謨ｰ蟄ｦ縲�
% 迚ｩ逅�ｭｦ縲�
% 扈溯ｮ｡蟄ｦ縲�
% 蜉帛ｭｦ縲�
% 譛ｺ譴ｰ蟾･遞九�
% 蜈牙ｭｦ蟾･遞九�
% 莉ｪ蝎ｨ遘大ｭｦ荳取橿譛ｯ縲�
% 譚先侭遘大ｭｦ荳主ｷ･遞九�
% 逕ｵ豌泌ｷ･遞九�
% 逕ｵ蟄千ｧ大ｭｦ荳取橿譛ｯ縲�
% 菫｡諱ｯ荳朱壻ｿ｡蟾･遞九�
% 謗ｧ蛻ｶ遘大ｭｦ荳主ｷ･遞九�
% 隶｡邂玲惻遘大ｭｦ荳取橿譛ｯ縲�
% 莠､騾夊ｿ占ｾ灘ｷ･遞九�
% 逕溽黄蛹ｻ蟄ｦ蟾･遞九�
% 霓ｯ莉ｶ蟾･遞九�
% 鄂醍ｻ懃ｩｺ髣ｴ螳牙�縲�
% 蜀幃弌謖�硯蟄ｦ縲�
% 邂｡逅�ｧ大ｭｦ荳主ｷ･遞九�
% 蟾･蝠�ｮ｡逅��
% 蝗ｾ荵ｦ諠�冠荳取｡｣譯育ｮ｡逅��
% 髮��逕ｵ霍ｯ遘大ｭｦ荳主ｷ･遞�
% \item \optx{major*}
% \par
% Philosophy縲�
% Applied Economics縲�
% Marxist Theory縲�
% Sports Science縲�
% Foreign Languages and Literature縲�
% Mathematics縲�
% Physics縲�
% Statistics縲�
% Mechanics縲�
% Mechanical Engineering縲�
% Optical Engineering縲�
% Instrument Science and Technology縲�
% Materials Science and Engineering縲�
% Electrical Engineering縲�
% Electronics Science and Technology縲�
% Information and Communications Engineering縲�
% Control Science and Engineering縲�
% Computer Science and Technology縲�
% Communication and Transportation Engineering縲�
% Biomedical Engineering縲�
% Software Engineering縲�
% Cyber Security縲�
% Military Command Science縲�
% Management Science and Engineering縲�
% Business Administration縲�
% Science of Library, Information and Archival
% \item \optx{sub-major}
% \par
% 鄒主ｭｦ縲�
% 螳玲蕗蟄ｦ縲�
% 蝗ｽ豌醍ｻ乗ｵ主ｭｦ縲�
% 驥題檮蟄ｦ縲�
% 莠ｧ荳夂ｻ乗ｵ主ｭｦ縲�
% 鬩ｬ蜈区昜ｸｻ荵牙渕譛ｬ蜴溽炊縲�
% 諤晄Φ謾ｿ豐ｻ謨呵ご縲�
% 菴楢ご謨呵ご隶ｭ扈�ｭｦ縲�
% 闍ｱ隸ｭ隸ｭ險譁�ｭｦ縲�
% 螟門嵜隸ｭ險蟄ｦ蜿雁ｺ皮畑隸ｭ險蟄ｦ縲�
% 隶｡邂玲焚蟄ｦ縲�
% 讎ら紫隶ｺ荳取焚逅�ｻ溯ｮ｡縲�
% 蠎皮畑謨ｰ蟄ｦ縲�
% 霑千ｭｹ蟄ｦ荳取而蛻ｶ隶ｺ縲�
% 遲臥ｦｻ蟄蝉ｽ鍋黄逅��
% 蜃晁★諤∫黄逅��
% 蜈牙ｭｦ縲�
% 譌�郤ｿ逕ｵ迚ｩ逅��
% 扈溯ｮ｡蟄ｦ縲�
% 蟾･遞句鴨蟄ｦ縲�
% 譛ｺ譴ｰ蛻ｶ騾�蜿雁�閾ｪ蜉ｨ蛹悶�
% 譛ｺ譴ｰ逕ｵ蟄仙ｷ･遞九�
% 譛ｺ譴ｰ隶ｾ隶｡蜿顔炊隶ｺ縲�
% 逕ｵ蟄先惻譴ｰ遘大ｭｦ荳取橿譛ｯ縲�
% 蟾･荳夊ｮｾ隶｡縲�
% 蜈牙ｭｦ蟾･遞九�
% 邊ｾ蟇�ｻｪ蝎ｨ蜿頑惻譴ｰ縲�
% 豬玖ｯ戊ｮ｡驥乗橿譛ｯ蜿贋ｻｪ蝎ｨ縲�
% 譚先侭迚ｩ逅�ｸ主喧蟄ｦ縲�
% 譚先侭蟄ｦ縲�
% 逕ｵ譛ｺ荳守鳩蝎ｨ縲�
% 逕ｵ蜉帷鳩蟄蝉ｸ守鳩蜉帑ｼ�蜉ｨ縲�
% 迚ｩ逅�鳩蟄仙ｭｦ縲�
% 逕ｵ霍ｯ荳守ｳｻ扈溘�
% 蠕ｮ逕ｵ蟄仙ｭｦ荳主崋菴鍋鳩蟄仙ｭｦ縲�
% 逕ｵ逎∝惻荳主ｾｮ豕｢謚譛ｯ縲�
% 菫｡諱ｯ蟇ｹ謚玲橿譛ｯ縲�
% 髮��逕ｵ霍ｯ邉ｻ扈溯ｮｾ隶｡縲�
% 騾壻ｿ｡荳惹ｿ｡諱ｯ邉ｻ扈溘�
% 菫｡蜿ｷ荳惹ｿ｡諱ｯ螟�炊縲�
% 譎ｺ閭ｽ菫｡諱ｯ螟�炊縲�
% 遨ｺ髣ｴ菫｡諱ｯ遘大ｭｦ荳取橿譛ｯ縲�
% 謗ｧ蛻ｶ逅�ｮｺ荳取而蛻ｶ蟾･遞九�
% 譽豬区橿譛ｯ荳手�蜉ｨ蛹冶｣�ｽｮ縲�
% 邉ｻ扈溷ｷ･遞九�
% 讓｡蠑剰ｯ�悪荳取匱閭ｽ邉ｻ扈溘�
% 蟇ｼ闊ｪ縲∝宛蟇ｼ荳取而蛻ｶ縲�
% 隶｡邂玲惻邉ｻ扈溽ｻ捺桷縲�
% 隶｡邂玲惻霓ｯ莉ｶ荳守炊隶ｺ縲�
% 隶｡邂玲惻蠎皮畑謚譛ｯ縲�
% 莠､騾壻ｿ｡諱ｯ蟾･遞句所謗ｧ蛻ｶ縲�
% 逕溽黄蛹ｻ蟄ｦ蟾･遞九�
% 逕溽黄譚先侭荳守ｻ��蟾･遞九�
% 霓ｯ莉ｶ蟾･遞九�
% 霓ｯ莉ｶ蟾･遞区橿譛ｯ縲�
% 蜀帑ｺ矩壻ｿ｡蟄ｦ縲�
% 蟇��∝ｭｦ縲�
% 邂｡逅�ｧ大ｭｦ荳主ｷ･遞九�
% 邂｡逅�憧蟄ｦ縲�
% 莨夊ｮ｡蟄ｦ縲�
% 莨∽ｸ夂ｮ｡逅��
% 謚譛ｯ扈乗ｵ主所邂｡逅��
% 蝗ｾ荵ｦ鬥�ｭｦ縲�
% 諠�冠蟄ｦ縲�
% 蜈蛾壻ｿ｡縲�
% 菫｡諱ｯ螳牙�縲�
% 逕溽黄菫｡諱ｯ遘大ｭｦ荳取橿譛ｯ縲�
% 譛ｺ蝎ｨ莠ｺ謚譛ｯ縲�
% 驕･諢滉ｿ｡諱ｯ遘大ｭｦ荳取橿譛ｯ縲�
% 遨ｺ髣ｴ遘大ｭｦ荳取橿譛ｯ縲�
% 鬩ｬ蜈区昜ｸｻ荵我ｸｭ蝗ｽ蛹也�皮ｩｶ縲�
% 螟門嵜譁�ｭｦ縲�
% 鄙ｻ隸大ｭｦ縲�
% 蝓ｺ遑謨ｰ蟄ｦ縲�
% 豬∽ｽ灘鴨蟄ｦ縲�
% 蝗ｺ菴灘鴨蟄ｦ縲�
% 譎ｺ閭ｽ譛ｺ逕ｵ邉ｻ扈溷所豬区而謚譛ｯ縲�
% 遨ｺ髣ｴ遘大ｭｦ莉ｪ蝎ｨ荳守鳩逎∝ｮ樣ｪ梧橿譛ｯ縲�
% 鬟櫁｡悟勣豬区而荳主ｯｼ闊ｪ蛻ｶ蟇ｼ縲�
% 譎ｺ閭ｽ譽豬倶ｸ取眠蝙倶ｼ�諢溷勣
% \item \optx{domain} (荳謎ｸ夂｡募｣ｫ)
% \par
% 驥題檮縲�
% 蠎皮畑扈溯ｮ｡縲�
% 闍ｱ隸ｭ隨碑ｯ代�
% 譁ｰ荳莉｣逕ｵ蟄蝉ｿ｡諱ｯ謚譛ｯ�亥性驥丞ｭ先橿譛ｯ遲会ｼ峨�
% 騾壻ｿ｡蟾･遞具ｼ亥性螳ｽ蟶ｦ鄂醍ｻ懊∫ｧｻ蜉ｨ騾壻ｿ｡遲会ｼ峨�
% 髮��逕ｵ霍ｯ蟾･遞九�
% 隶｡邂玲惻謚譛ｯ縲�
% 霓ｯ莉ｶ蟾･遞九�
% 謗ｧ蛻ｶ蟾･遞九�
% 莉ｪ蝎ｨ莉ｪ陦ｨ蟾･遞九�
% 蜈臥鳩菫｡諱ｯ蟾･遞九�
% 逕溽黄蛹ｻ蟄ｦ蟾･遞九�
% 莠ｺ蟾･譎ｺ閭ｽ縲�
% 鄂醍ｻ應ｸ惹ｿ｡諱ｯ螳牙�縲�
% 譛ｺ譴ｰ縲�
% 譚先侭荳主喧蟾･縲�
% 蟾･蝠�ｮ｡逅��
% 蜈ｬ蜈ｱ邂｡逅��
% 蝗ｾ荵ｦ諠�冠縲�
% 蟾･遞狗ｮ｡逅��
% 迚ｩ豬∝ｷ･遞倶ｸ守ｮ｡逅��
% 譛ｺ譴ｰ蟾･遞九�
% 蜈牙ｭｦ蟾･遞九�
% 譚先侭蟾･遞九�
% 逕ｵ蟄蝉ｸ朱壻ｿ｡蟾･遞九�
% 闊ｪ螟ｩ蟾･遞九�
% 鬘ｹ逶ｮ邂｡逅��
% 迚ｩ豬∝ｷ･遞�
% \item \optx{domain} (荳謎ｸ壼忽螢ｫ)
% \par
% 逕ｵ蟄蝉ｸ惹ｿ｡諱ｯ縲�
% 蜈郁ｿ帛宛騾�縲�
% 逕ｵ蟄蝉ｿ｡諱ｯ縲�
% 譛ｺ譴ｰ
% \item \optx{supv-title}
% \par
% 謨呎肢縲�
% 蜑ｯ謨呎肢
% \item \optx{supv-title*}
% \par
% Professor縲�
% Associate Professor
% \item \optx{supv-ent-title}
% \par
% 遐皮ｩｶ蜻倥�
% 蜑ｯ遐皮ｩｶ蜻倥�
% 鬮伜ｷ･
% \item \optx{supv-ent-title*}
% \par
% Research Fellow縲�
% Associate Research Fellow縲�
% Senior Engineer
% \end{itemize}
% \setlength\parindent{2em}
% \subsection{鬘ｵ髱｢蜥御ｿ｡諱ｯ遘ｻ髯､}
% \label{鬘ｵ髱｢蜥御ｿ｡諱ｯ遘ｻ髯､}
% \changes{v6.1.1.1}{2023/03/06}{菫ｮ豁｣譁�｡｣荳ｭ鬘ｵ髱｢遘ｻ髯､蛟ｼ譬ｷ蠑殉
% \changes{v6.0.0.0}{2023/03/02}{菫ｮ豁｣鬚伜錐鬘ｵ髞ｮ蛟ｼ}
% \changes{v2.12.1.0}{2022/07/03}{鬘ｵ髱｢蜥御ｿ｡諱ｯ遘ｻ髯､騾蛾｡ｹ蠅槫刈蛻�ｻм
% \begin{function}[added=2022-06-26,updated=2023-03-02]{style/remove-page}
%   \begin{syntax}
%     \opt{style/remove-page} = \texttt{\char`\{}蟆�擇|鬚伜錐鬘ｵ|螢ｰ譏朱｡ｵ|鞫倩ｦ－邏｢蠑怖蟇ｹ辣ｧ陦ｨ|逶ｮ蠖怖髯�ｽ怖蜿り�枚迪ｮ|閾ｴ隹｢|菴懆�ｮ莉欺texttt{\char`\}}
%   \end{syntax}
% 隶ｾ鄂ｮ遘ｻ髯､逧�｡ｵ髱｢�悟庄螟夐会ｼ悟､壻ｸｪ蛟ｼ荵矩龍髴隕∽ｽｿ逕ｨ闍ｱ譁�濠隗帝怜捷髫泌ｼ�御ｾ句ｦゑｼ�
% \begin{lstlisting}
% \xdusetup{ style / remove-page = { 蟆�擇, 鬚伜錐鬘ｵ, 閾ｴ隹｢ } }
% \end{lstlisting}
% \end{function}
% \begin{optdesc}
%   \item[鬚伜錐鬘ｵ] 荳ｭ闍ｱ譁�｢伜錐鬘ｵ縲�
%   \item[鞫倩ｦ‐ 荳ｭ闍ｱ譁�遭隕√�
%   \item[邏｢蠑評 蝗ｾ迚�ｴ｢蠑募柱陦ｨ譬ｼ邏｢蠑輔�
%   \item[蟇ｹ辣ｧ陦ｨ] 隨ｦ蜿ｷ蟇ｹ辣ｧ陦ｨ蜥檎ｼｩ逡･隸ｭ蟇ｹ辣ｧ陦ｨ縲�
% \end{optdesc}
% \begin{function}[added=2022-06-26]{style/remove-header}
%   \begin{syntax}
%     \opt{style/remove-header} = true|(false)
%   \end{syntax}
% 隶ｾ鄂ｮ譏ｯ蜷ｦ遘ｻ髯､鬘ｵ逵峨�
% \end{function}
% \begin{function}[added=2022-06-26]{style/remove-footer}
%   \begin{syntax}
%     \opt{style/remove-footer} = true|(false)
%   \end{syntax}
% 隶ｾ鄂ｮ譏ｯ蜷ｦ遘ｻ髯､鬘ｵ閼壹�
% \end{function}
% \begin{function}[added=2022-06-26]{style/anonymous}
%   \begin{syntax}
%     \opt{anonymous} = true|(false)
%   \end{syntax}
% 隶ｾ鄂ｮ譏ｯ蜷ｦ蠑蜷ｯ蛹ｿ蜷搾ｼ御ｸ蚕secrefx{鬚晏､門多莉､}荳ｭ逧Ыtnx{anon}謳ｭ驟堺ｽｿ逕ｨ縲�
% \end{function}
% \subsection{鬚晏､門多莉､}
% \label{鬚晏､門多莉､}
% \subsubsection{\tn{noauxwrite}}
% \label{noauxwrite}
% \begin{function}[added=2022-05-13]{\noauxwrite}
%   \begin{syntax}
%     \tn{noauxwrite}\marg{蜿り�枚迪ｮ蠑慕畑蜻ｽ莉､}
%   \end{syntax}
% \tnx[]{noauxwrite}蜈∬ｮｸ豺ｻ蜉�荳榊ｽｱ蜩咲鴫譛牙ｼ慕畑蛻苓｡ｨ鬘ｺ蠎冗噪蠑慕畑縲�
% 荳荳ｪ邂蜊慕噪萓句ｭ仙ｦゆｸ区園遉ｺ��
% \begin{lstlisting}
% \caption{譛ｬ譁�ｸ取枚迪ｮ\noauxwrite{\parencite{譟先枚迪ｮ}}隶｡邂怜ｼ髞蟇ｹ豈媒
% \end{lstlisting}
% \end{function}
% \changes{v1.30.0.0}{2022/06/20}{闍ｱ譁��皮ｩｶ逕溷ｭｦ菴崎ｮｺ譁���｢�}
% \subsubsection{闍ｱ譁��皮ｩｶ逕溷ｭｦ菴崎ｮｺ譁���｢�}
% \label{闍ｱ譁��皮ｩｶ逕溷ｭｦ菴崎ｮｺ譁���｢�}
% \begin{function}[added=2022-06-20,updated=2023-01-28]{\chapter,\section,\subsection}
%   \begin{syntax}
%     \tn{chapter}\marg{闍ｱ譁���｢�}\oarg{荳ｭ譁���｢�}
%     \tn{section}\marg{闍ｱ譁���｢�}\oarg{荳ｭ譁���｢�}
%     \tn{subsection}\marg{闍ｱ譁���｢�}\oarg{荳ｭ譁���｢�}
%   \end{syntax}
% 蝨ｨ闍ｱ譁��皮ｩｶ逕溷ｭｦ菴崎ｮｺ譁�ｸｭ荳莠御ｸ臥ｺｧ譬�｢倅ｸｺ荳ｭ闍ｱ蜿瑚ｯｭ�悟�莉也ｺｧ蛻ｫ譬�｢倅ｸｺ闍ｱ譁��
% 荳荳ｪ邂蜊慕噪萓句ｭ仙ｦゆｸ区園遉ｺ��
% \begin{lstlisting}
% \chapter{This Is Chapter}[霑呎弍荳郤ｧ譬�｢肋
% \section{This Is Section}[霑呎弍莠檎ｺｧ譬�｢肋
% \subsection{This Is Subsection}[霑呎弍荳臥ｺｧ譬�｢肋
% \subsubsection{This Is Subsubsection}
% \paragraph{This Is Paragraph}
% \subparagraph{This Is Subparagraph}
% \end{lstlisting}
% \end{function}
% \subsubsection{蛹ｿ蜷榊多莉､}
% \label{蛹ｿ蜷榊多莉､}
% \begin{function}[added=2022-06-26]{\anon}
%   \begin{syntax}
%     \tn{anon}\oarg{蛹ｿ蜷榊�螳ｹ}\marg{髱槫諺蜷榊�螳ｹ}
%   \end{syntax}
% 譬ｹ謐ｮ\optx{style/anonymous}逧�憾諤∵擂譏ｾ遉ｺ逶ｸ蠎皮噪\metax{蛹ｿ蜷榊�螳ｹ}蜥圭metax{髱槫諺蜷榊�螳ｹ}[]縲�
% 蜈ｶ荳ｭ\oargx{蛹ｿ蜷榊�螳ｹ}荳ｺ蜿ｯ騾牙盾謨ｰ�碁ｻ倩ｮ､荳ｺXXX縲�
% 荳荳ｪ邂蜊慕噪萓句ｭ仙ｦゆｸ区園遉ｺ��
% \begin{lstlisting}
% \anon[XX]{蠑�荳厭
% \end{lstlisting}
% 蠖貼optx{style/anonymous}荳ｺ\valuex{true}[]�瑚ｾ灘�XX�帛ｽ貼optx{style/anonymous}荳ｺ\valuex{false}[]�瑚ｾ灘�蠑�荳峨�
% \end{function}
% \subsection{鬚晏､門粥閭ｽ}
% \label{鬚晏､門粥閭ｽ}
% \changes{v1.26.11.1}{2022/06/17}{蟶ｦ謨吝ｯｼ蟶井ｸ取撃蜷榊ｯｼ蟶�}
% \subsubsection{蟶ｦ謨吝ｯｼ蟶井ｸ取撃蜷榊ｯｼ蟶�}
% 蟾ｲ蜥悟ｭｦ菴榊萱遑ｮ隶､�悟ｯｹ莠守�皮ｩｶ逕滂ｼ悟ｦよ撃蜷榊ｯｼ蟶井ｸ主ｸｦ謨吝ｯｼ蟶井ｸ肴弍荳莠ｺ逧�ｼ�
% 莉�怙蝪ｫ蜀吝ｸｦ謨吝ｯｼ蟶茨ｼ梧裏髴蝪ｫ蜀呎撃蜷榊ｯｼ蟶医�
% 螯よ怏迚ｹ谿企怙豎ゑｼ碁怙隕∝｡ｫ蜀吩ｸ､菴崎∝ｸ茨ｼ�
% 蜿ｯ蝨ｨ\optx{info/supervisor}[]縲―optx[]{info/supervisor*}[]縲／^A
% \optx[]{info/supv-title}蜥圭optx{info/supv-title*}荳ｭ
% 菴ｿ逕ｨ騾怜捷蛻�囈荳､菴崎∝ｸ育噪菫｡諱ｯ縲�
% \changes{v2.10.1.1}{2022/06/26}{逶ｸ莨ｼ諤ｧ譽豬九∫峇螳｡蜥梧歓譟･隸�ｼｰ}
% \subsubsection{逶ｸ莨ｼ諤ｧ譽豬九∫峇螳｡蜥梧歓譟･隸�ｼｰ}
% 蟇ｹ莠守嶌莨ｼ諤ｧ譽豬九∫峇螳｡蜥梧歓譟･隸�ｼｰ�御ｸｻ隕∝�荳ｺ荳､遘肴桃菴懶ｼ�
% 荳遘肴弍鬘ｵ髱｢遘ｻ髯､�悟嘗螟紋ｸ遘肴弍菫｡諱ｯ逧�嚼阯丞柱譖ｿ謐｢縲�
% 鬘ｵ髱｢遘ｻ髯､隸ｷ蜿りソsecrefx{鬘ｵ髱｢蜥御ｿ｡諱ｯ遘ｻ髯､}��
% 菫｡諱ｯ髫占酪隸ｷ閾ｪ陦悟唖髯､謌匁ｳｨ驥顔嶌蠎皮噪菫｡諱ｯ蠖募�騾蛾｡ｹ��
% 菫｡諱ｯ譖ｿ謐｢隸ｷ閾ｪ陦御ｿｮ謾ｹ逶ｸ蠎皮噪菫｡諱ｯ蠖募�騾蛾｡ｹ��
% 菴懆�ｮ莉矩Κ蛻�噪菫｡諱ｯ蛹ｿ蜷崎ｯｷ蜿りソsecrefx{蛹ｿ蜷榊多莉､}縲�
% 逕ｨ謌ｷ譬ｹ謐ｮ蟄ｦ譬｡蜥悟ｭｦ髯｢逧��菴楢ｦ∵ｱゑｼ�
% 扈�粋菴ｿ逕ｨ莉･荳贋ｸ､遘肴桃菴懈擂逕滓�隨ｦ蜷育嶌莨ｼ諤ｧ譽豬九∫峇螳｡蜥梧歓譟･隸�ｼｰ隕∵ｱら噪隶ｺ譁��
% \changes{v2.14.0.0}{2022/11/21}{髫占酪驛ｨ蛻�ｴ｢蠑募柱蟇ｹ辣ｧ陦ｨ}
% \subsubsection{髫占酪驛ｨ蛻�ｴ｢蠑募柱蟇ｹ辣ｧ陦ｨ}
% 逕ｱ莠主ｭ伜惠謠貞崟邏｢蠑輔∬｡ｨ譬ｼ邏｢蠑輔∫ｬｦ蜿ｷ蟇ｹ辣ｧ陦ｨ謌也ｼｩ逡･隸ｭ蟇ｹ辣ｧ陦ｨ荳ｺ遨ｺ逧�ュ蜀ｵ��
% 謨�髪謖�嚼阯乗薯蝗ｾ邏｢蠑輔∬｡ｨ譬ｼ邏｢蠑輔∫ｬｦ蜿ｷ蟇ｹ辣ｧ陦ｨ謌也ｼｩ逡･隸ｭ蟇ｹ辣ｧ陦ｨ�御ｾ句ｦゑｼ�
% \begin{lstlisting}
% \xdusetup{ style / remove-page = { 謠貞崟邏｢蠑�, 隨ｦ蜿ｷ蟇ｹ辣ｧ陦ｨ } }
% \end{lstlisting}
% \section{雍｡迪ｮ閠�}
% \xduts[]{}逧�ｼ蜿題ｿ�ｨ倶ｸｭ�悟髪荳扈ｴ謚､閠�ｸｺ
% \href{https://github.com/note286/}{\ttfamily @note286}縲�
% \changes{v1.15.0.1}{2022/05/15}{蠅槫刈\clsx{xduugthesis}蜀�ｵ倶ｺｺ蜻�}
% 蜈ｶ荳ｭ�悟惠\clsx{xduugthesis}逧�ｼ蜿題ｿ�ｨ倶ｸｭ�型^A
% \href{https://github.com/Ke-Huo}{\ttfamily @Ke-Huo}縲／^A
% \href{https://github.com/GRHun}{\ttfamily @RH}縲／^A
% \href{https://github.com/songyueran}{\ttfamily @syr-bloom}
% 遲我ｺｺ蜿ゆｸ惹ｺ��豬九�
% \changes{v6.1.0.1}{2023/03/04}{蠅槫刈襍槫勧閾ｴ隹｢}
% \changes{v4.4.5.3}{2023/02/11}{蠅槫刈閾ｴ隹｢蜿り�得謗･}
% \section{閾ｴ隹｢}
% 蝨ｨ蟄ｦ荵�譁�ｭｦ郛也ｨ狗噪霑�ｨ倶ｸｭ��
% 縲雁惠\LaTeX{}荳ｭ霑幄｡梧枚蟄ｦ郛也ｨ九欺footurl{https://liam.page/2015/01/23/literate-programming-in-latex/}
% 蜥後絵ood things come in little packages: An introduction to writing .ins and .dtx files縲欺footurl{https://www.tug.org/TUGboat/tb29-2/tb92pakin.pdf}
% 謠蝉ｾ帑ｺ�ｾ亥､ｧ蟶ｮ蜉ｩ縲�
% 蝨ｨ譁�｡｣逧�ｼ門�霑�ｨ倶ｸｭ�悟盾閠�ｺ�^^A
% \filex{ctex.dtx}[]\footurl{https://github.com/CTeX-org/ctex-kit/blob/master/ctex/ctex.dtx}縲／^A
% \filex[]{fduthesis.dtx}[]\footurl{https://github.com/stone-zeng/fduthesis/blob/main/source/fduthesis.dtx}縲／^A
% \filex[]{njuthesis.dtx}[]\footurl{https://github.com/nju-lug/NJUThesis/blob/master/source/njuthesis.dtx}\space{}蜥型^A
% \filex{thuthesis.dtx}[]\footurl{https://github.com/tuna/thuthesis/blob/master/thuthesis.dtx}縲�
% \par
% 蜷梧慮�碁撼蟶ｸ諢溯ｰ｢襍槫勧\xduts{}逧�酔蟄ｦ莉ｬ�御ｽ�莉ｬ逧�ｵ槫勧隶ｩ謌第怏謖∫ｻｭ扈ｴ謚､逧�勘蜉帙�^^A
% 荵滓─隹｢謇譛牙惠GitHub蜥檎攸諤昜ｸ雁渚鬥磯琉鬚伜柱謠仙�蟒ｺ隶ｮ逧�酔蟄ｦ縲∬∝ｸ井ｻｬ�型^A
% \xduts[]{}逧�戟扈ｭ蜿大ｱ包ｼ檎ｦｻ荳榊ｼ菴�莉ｬ逧�ｸｮ蜉ｩ荳取髪謖√�
% \changes{v4.0.1.1}{2022/12/12}{蠅槫刈謾ｯ莉伜ｮ晉ｺ｢蛹�ｺ檎ｻｴ遐±
% \changes{v3.1.1.3}{2022/12/10}{莠檎ｻｴ遐∝｢槫刈蝗ｾ譬�}
% \changes{v3.1.1.2}{2022/12/06}{蠅槫刈QQ謾ｯ莉倅ｺ檎ｻｴ遐±
% \changes{v2.16.1.2}{2022/11/27}{菫ｮ豁｣譁�｡｣荳ｭ蝗ｾ迚�ｼ慕畑髣ｴ霍掵
% \changes{v2.15.0.1}{2022/11/26}{蠅槫刈襍槫勧莠檎ｻｴ遐±
% \section{襍槫勧}
% 螯よ棡\xduts{}蟇ｹ菴�譛画園蟶ｮ蜉ｩ��
% 蜿ｯ莉･謇ｫ謠十figrefx{fig:zanzhu}荳ｭ逧�ｺ檎ｻｴ遐∵擂襍槫勧\xduts{}[]��
% 蟷ｶ螟�ｳｨ\xduts{}謌門�莉也嶌蜈ｳ蟄玲�ｷ莉･萓ｿ莠守｡ｮ隶､谺ｾ鬘ｹ譚･貅舌�
% \ExplSyntaxOn
% \str_set_convert:Nnnn \l_xduts_alipay_red_packet_qr_str {%
% 68747470733A2F2F71722E616C697061792E636F6D2F31317731333035336232617236757438%
% 71386C6A323062} { utf8/hex } { }
% \newcommand{\alipayredpacketqr}{\str_use:N \l_xduts_alipay_red_packet_qr_str}
% \str_set_convert:Nnnn \l_xduts_alipay_qr_str {%
% 68747470733A2F2F71722E616C697061792E636F6D2F666B7831353935393164716575747463%
% 77626175726235} { utf8/hex } { }
% \newcommand{\alipayqr}{\str_use:N \l_xduts_alipay_qr_str}
% \str_set_convert:Nnnn \l_xduts_wxp_qr_str {%
% 7778703A2F2F6632663074504D4D506D3161616467483665396162527030446E317746337344%
% 6C6468764350382D66765346424577} { utf8/hex } { }
% \newcommand{\wxpqr}{\str_use:N \l_xduts_wxp_qr_str}
% \str_set_convert:Nnnn \l_xduts_qq_qr_str {%
% 68747470733A2F2F692E7169616E62616F2E71712E636F6D2F77616C6C65742F737172636F64%
% 652E68746D3F6D3D74656E70617926613D3126753D313138333133313434372661633D434145%
% 517438365574415159343457366E415934414549675A4755775A6D51314D6A55784E3249354E%
% 32566A4D4455794E445A684D32457A4D6A45325A6A55314E7A512533445F7878785F7369676E%
% 266E3D4361726F6C26663D77616C6C6574 } { utf8/hex } { }
% \newcommand{\qqqr}{\str_use:N \l_xduts_qq_qr_str}
% \ExplSyntaxOff
% \definecolor{alipayredpacketc}{RGB}{198,48,56}
% \definecolor{alipayc}{RGB}{22,120,255}
% \definecolor{weixinc}{RGB}{7,193,96}
% \definecolor{qqc}{RGB}{18,184,246}
% \NewDocumentCommand{\qrcodex}{mmm}{
% \begin{tikzpicture}
% \node at (0,0) {\textcolor{#3!30}{\qrcode[height=.21\textwidth]{#1}}};
% \node at (current bounding box.center) {\textcolor{#3}{\scalebox{2.1}{\faIcon{#2}}}};
% \end{tikzpicture}
% }
% \begin{figure}[htbp]
% \centering
% \mbox{}\hfill
% \subcaptionbox{謇ｫ遐�｢�ｺ｢蛹�}{\qrcodex{\alipayredpacketqr}{alipay}{alipayredpacketc}}\hfill
% \subcaptionbox{謾ｯ莉伜ｮ掵{\qrcodex{\alipayqr}{alipay}{alipayc}}\hfill
% \subcaptionbox{蠕ｮ菫｡謾ｯ莉�}{\qrcodex{\wxpqr}{weixin}{weixinc}}\hfill
% \subcaptionbox{QQ謾ｯ莉�}{\qrcodex{\qqqr}{qq}{qqc}}
% \hfill\mbox{}
% \caption{襍槫勧莠檎ｻｴ遐±
% \label{fig:zanzhu}
% \end{figure}
% \clearpage
% \end{documentation}
% \StopEventually{}
% \begin{implementation}
% \addtocontents{toc}{\protect\value{tocdepth}=5}
% \section{莉｣遐∝ｮ樒鴫}
% \changes{v0.1.0.0}{2022/04/03}{蝓ｺ譛ｬ螳梧�譛ｬ遘第ｯ穂ｸ夊ｮｾ隶｡隶ｺ譁�ｨ｡譚ｿ}
% \setlength\parindent{0pt}
%    \begin{macrocode}
%&lt;@@=xdu&gt;
%    \end{macrocode}
% \subsection{螳丞桁蜥梧枚譯｣邀ｻ}
%    \begin{macrocode}
%&lt;*class|sty&gt;
%    \end{macrocode}
%    \begin{macrocode}
\RequirePackage { xparse, l3keys2e }
%    \end{macrocode}
% \changes{v5.5.0.0}{2023/03/01}{謚大宛\pkgx{fontspec}蟇ｹ謨ｰ蟄ｦ蟄嶺ｽ鍋噪菫ｮ謾ｹ}
% \begin{macro}{\PassOptionsToPackage}
% 謚大宛\pkgx{fontspec}蟇ｹ謨ｰ蟄ｦ蟄嶺ｽ鍋噪菫ｮ謾ｹ縲�
%    \begin{macrocode}
\PassOptionsToPackage { no-math } { fontspec }
%    \end{macrocode}
% \end{macro}
% \begin{macro}{\PassOptionsToPackage}
% 蠢ｽ逡･蟄嶺ｽ楢ｭｦ蜻翫�
%    \begin{macrocode}
\PassOptionsToPackage { quiet } { xeCJK }
%    \end{macrocode}
% \end{macro}
%    \begin{macrocode}
%&lt;/class|sty&gt;
%&lt;*class&gt;
%    \end{macrocode}
% \begin{macro}{\PassOptionsToClass,\LoadClass}
% \changes{v0.3.2.0}{2022/04/04}{菫ｮ豁｣陦碁龍霍昜ｸｺ1.5蛟閤
% \changes{v1.8.1.0}{2022/05/03}{菫ｮ豁｣鬘ｵ髱｢蟆ｺ蟇ｸ}
% \changes{v1.9.2.0}{2022/05/04}{菫ｮ豁｣陦碁龍霍昜ｸｺ1.625蛟閤
% 蜉�霓ｽ\clsx{ctexbook}謌暴clsx{ctexart}譁�｡｣邀ｻ縲�
% \\
% \LaTeX{}荳ｭ蝓ｺ譛ｬ陦瑚ｷ晄弍蟄怜捷螟ｧ蟆冗噪1.2蛟搾ｼ勲icrosoft Word荳ｭ蝓ｺ譛ｬ陦瑚ｷ晄弍蟄怜捷螟ｧ蟆冗噪1.3蛟搾ｼ�
% Microsoft Word荳ｭ1.5蛟崎｡瑚ｷ晢ｼ檎嶌蠖謎ｺ鮫aTeX荳ｭ$1.5\times\frac{1.3}{1.2}=1.625$蛟崎｡瑚ｷ昴�
%    \begin{macrocode}
\PassOptionsToClass
  {
    a4paper,
    zihao=-4,
    sub4section,
%&lt;xduugthesis&gt;    linespread = 1.625,
    fontset    = none
  }
%&lt;thesis&gt;  { ctexbook }
%&lt;tp&gt;  { ctexart }
%&lt;thesis&gt;\LoadClass { ctexbook }
%&lt;tp&gt;\LoadClass { ctexart }
%    \end{macrocode}
% \end{macro}
% 隶ｾ鄂ｮ郤ｸ蠑�蟆ｺ蟇ｸ荳ｺA4縲�
%    \begin{macrocode}
\RequirePackage { geometry        }
\geometry       { paper = a4paper }
%    \end{macrocode}
%    \begin{macrocode}
%&lt;/class&gt;
%&lt;*thesis&gt;
%    \end{macrocode}
%    \begin{macrocode}
\RequirePackage { fancyhdr        }
\RequirePackage { xeCJKfntef      }
\RequirePackage { graphicx        }
%    \end{macrocode}
%    \begin{macrocode}
%&lt;/thesis&gt;
%&lt;*xdufont&gt;
%    \end{macrocode}
%    \begin{macrocode}
\RequirePackage { xeCJK           }
%    \end{macrocode}
%    \begin{macrocode}
%&lt;/xdufont&gt;
%    \end{macrocode}
% \subsection{蟄嶺ｽ馴�鄂ｮ}
%    \begin{macrocode}
%&lt;*class|xdufont&gt;
%    \end{macrocode}
% \begin{variable}
%   {
%     \l_@@_cjk_font_tl,
%     \l_@@_fake_bold_tl,
%     \l_@@_fake_slant_tl,
%     \l_@@_latin_font_tl,
%     \l_@@_latin_sans_scale_tl,
%     \l_@@_latin_mono_scale_tl,
%     \l_@@_math_font_tl,
%     \l_@@_unicode_math_tl,
%     \l_@@_font_type_tl,
%     \l_@@_font_path_tl
%   }
% 荳ｭ譁�ｭ嶺ｽ馴�鄂ｮ蜷咲ｧｰ縲�
%    \begin{macrocode}
\tl_new:N \l_@@_cjk_font_tl
%    \end{macrocode}
% \changes{v0.8.2.0}{2022/04/12}{菫ｮ螟広aTeX3譁ｰ謗･蜿｣蟇ｼ閾ｴ逧Оverleaf譌�豕慕ｼ冶ｯ挿
% 荳ｭ譁�ｭ嶺ｽ謎ｼｪ邊嶺ｽ鍋ｲ礼ｻ�ｨ句ｺｦ縲�
%    \begin{macrocode}
\tl_new:N \l_@@_fake_bold_tl
%    \end{macrocode}
% 荳ｭ譁�ｭ嶺ｽ謎ｼｪ譁應ｽ灘ｾ譁懃ｨ句ｺｦ縲�
%    \begin{macrocode}
\tl_new:N \l_@@_fake_slant_tl
%    \end{macrocode}
% 闍ｱ譁�ｭ嶺ｽ馴�鄂ｮ蜷咲ｧｰ縲�
%    \begin{macrocode}
\tl_new:N \l_@@_latin_font_tl
%    \end{macrocode}
% 蛹ｹ驟肴裏陦ｬ郤ｿ譌丞柱謇灘ｭ玲惻譌丞ｭ礼ｬｦ鬮伜ｺｦ縲�
%    \begin{macrocode}
\tl_new:N \l_@@_latin_sans_scale_tl
\tl_new:N \l_@@_latin_mono_scale_tl
%    \end{macrocode}
% 謨ｰ蟄ｦ蟄嶺ｽ馴�鄂ｮ蜷咲ｧｰ縲�
%    \begin{macrocode}
\tl_new:N \l_@@_math_font_tl
%    \end{macrocode}
% unicode-math驟咲ｽｮ騾蛾｡ｹ縲�
%    \begin{macrocode}
\tl_new:N \l_@@_unicode_math_tl
%    \end{macrocode}
% 蟄嶺ｽ灘錐遘ｰ/譁�ｻｶ蜷咲ｧｰ縲�
%    \begin{macrocode}
\tl_new:N \l_@@_font_type_tl
%    \end{macrocode}
% 蟄嶺ｽ捺枚莉ｶ霍ｯ蠕��
%    \begin{macrocode}
\tl_new:N \l_@@_font_path_tl
%    \end{macrocode}
% \end{variable}
% \begin{macro}{\keys_define:nn}
% 螳壻ｹ画�ｷ蠑城醗蛟ｼ縲�
%    \begin{macrocode}
\keys_define:nn { xdu / style }
  {
%    \end{macrocode}
% 荳ｭ譁�ｭ嶺ｽ馴�鄂ｮ縲�
%    \begin{macrocode}
    cjk-font .choices:nn =
      { win, adobe, founder, hanyi, sinotype, fandol, none }
      { \tl_set_eq:NN \l_@@_cjk_font_tl \l_keys_choice_tl },
%    \end{macrocode}
% 荳ｭ譁�ｭ嶺ｽ謎ｼｪ邊嶺ｽ鍋ｲ礼ｻ�ｨ句ｺｦ縲�
%    \begin{macrocode}
    cjk-fake-bold .tl_set:N = \l_@@_fake_bold_tl,
%    \end{macrocode}
% 荳ｭ譁�ｭ嶺ｽ謎ｼｪ譁應ｽ灘ｾ譁懃ｨ句ｺｦ縲�
%    \begin{macrocode}
    cjk-fake-slant .tl_set:N = \l_@@_fake_slant_tl,
%    \end{macrocode}
% 蛹ｹ驟肴裏陦ｬ郤ｿ譌丞柱謇灘ｭ玲惻譌丞ｭ礼ｬｦ鬮伜ｺｦ縲�
%    \begin{macrocode}
    latin-sans-scale .choices:nn = { upper, lower, off }
      { \tl_set_eq:NN \l_@@_latin_sans_scale_tl \l_keys_choice_tl },
    latin-mono-scale .choices:nn = { upper, lower, off }
      { \tl_set_eq:NN \l_@@_latin_mono_scale_tl \l_keys_choice_tl },
%    \end{macrocode}
% 闍ｱ譁�ｭ嶺ｽ馴�鄂ｮ縲�
%    \begin{macrocode}
    latin-font .choices:nn = { gyre, tac, tacn, tcc, thcs, tll, none }
      { \tl_set_eq:NN \l_@@_latin_font_tl \l_keys_choice_tl },
%    \end{macrocode}
% 謨ｰ蟄ｦ蟄嶺ｽ馴�鄂ｮ縲�
%    \begin{macrocode}
    math-font .choices:nn =
      {
        asana, bonum, cambria, cm, concrete, dejavu, erewhon, euler,
        fira, garamond, gfsneohellenic, kp, libertinus, lm, newcm,
        pagella, schola, stix, stix2, termes, xcharter, xits, none
      }
      { \tl_set_eq:NN \l_@@_math_font_tl \l_keys_choice_tl },
    unicode-math .tl_set:N = \l_@@_unicode_math_tl,
%    \end{macrocode}
% 蟄嶺ｽ楢ｰ�畑譁ｹ蠑城�鄂ｮ�梧枚莉ｶ蜷咲ｧｰ/蟄嶺ｽ灘錐遘ｰ縲�
%    \begin{macrocode}
    font-type .choices:nn = { font, file }
      { \tl_set_eq:NN \l_@@_font_type_tl \l_keys_choice_tl },
%    \end{macrocode}
% 蟄嶺ｽ捺枚莉ｶ霍ｯ蠕��鄂ｮ縲�
%    \begin{macrocode}
    font-path .tl_set:N = \l_@@_font_path_tl
  }
%    \end{macrocode}
% \end{macro}
% \begin{macro}{\keys_set:nn}
% \changes{v0.9.1.0}{2022/04/13}{菫ｮ謾ｹ荳ｭ闍ｱ譁�ｭ嶺ｽ馴ｻ倩ｮ､驟咲ｽｮ}
% 蛻晏ｧ玖ｮｾ鄂ｮ縲�
%    \begin{macrocode}
\keys_set:nn { xdu }
  {
    style / cjk-font         = fandol,
    style / cjk-fake-bold    = 3,
    style / cjk-fake-slant   = 0.2,
    style / latin-font       = gyre,
    style / latin-sans-scale = off,
    style / latin-mono-scale = off,
    style / math-font        = cm,
    style / unicode-math     = { },
    style / font-type        = font,
    style / font-path        = fonts
  }
%    \end{macrocode}
% \end{macro}
% \changes{v0.5.1.0}{2022/04/06}{蛻､譁ｭ謫堺ｽ懃ｳｻ扈滓弍蜷ｦ譏ｯmacOS}
% \changes{v0.5.1.0}{2022/04/06}{蜉�霓ｽ蟄嶺ｽ捺慮閾ｪ蜉ｨ蛻､譁ｭ譏ｯ蜷ｦ荳ｺmacOS蟷ｳ蜿ｰ}
% \begin{macro}{\@@_select_font:nn}
% 閾ｪ蜉ｨ騾画叫蟄嶺ｽ捺枚莉ｶ蜷咲ｧｰ謌門ｭ嶺ｽ灘錐遘ｰ縲�
% \begin{arguments}
%   \item 蟄嶺ｽ灘錐遘ｰ縲�
%   \item 蟄嶺ｽ捺枚莉ｶ蜷咲ｧｰ縲�
% \end{arguments}
%    \begin{macrocode}
\cs_new:Npn \@@_select_font:nn #1#2
  {
    \str_if_eq:NNTF { \l_@@_font_type_tl } { font }
      { #1 }
      { #2 }
  }
%    \end{macrocode}
% \end{macro}
% \begin{macro}{\@@_font_path:}
% 蠖馴画叫菴ｿ逕ｨ蟄嶺ｽ捺枚莉ｶ驟咲ｽｮ蟄嶺ｽ捺慮�瑚ｮｾ鄂ｮ蟄嶺ｽ捺枚莉ｶ霍ｯ蠕��
%    \begin{macrocode}
\cs_new:Npn \@@_font_path:
  {
    \str_if_eq:NNTF { \l_@@_font_type_tl } { font }
      { }
      { Path = \l_@@_font_path_tl / , }
  }
%    \end{macrocode}
% \end{macro}
% \subsubsection{荳ｭ譁�ｭ嶺ｽ党
% \begin{macro}{\@@_cfg_cjk_font_sub_b:}
% 荳ｭ譁�ｲ嶺ｽ薙�
%    \begin{macrocode}
\cs_new:Npn \@@_cfg_cjk_font_sub_b:n #1
  {
    BoldFont = { #1 }
  }
%    \end{macrocode}
% \end{macro}
% \begin{macro}{\@@_cfg_cjk_font_sub_fb:n}
% 荳ｭ譁�ｼｪ邊嶺ｽ薙�
%    \begin{macrocode}
\cs_new:Npn \@@_cfg_cjk_font_sub_fb:n #1
  {
    BoldFont     = { #1 },
    BoldFeatures = { FakeBold = \l_@@_fake_bold_tl }
  }
%    \end{macrocode}
% \end{macro}
% \begin{macro}{\@@_cfg_cjk_font_sub_fs:n}
% 荳ｭ譁�ｼｪ譁應ｽ薙�
%    \begin{macrocode}
\cs_new:Npn \@@_cfg_cjk_font_sub_fs:n #1
  {
    SlantedFont     = { #1 },
    SlantedFeatures = { FakeSlant = \l_@@_fake_slant_tl }
  }
%    \end{macrocode}
% \end{macro}
% \begin{macro}{\@@_cfg_cjk_font_sub_fbfs:n}
% 荳ｭ譁�ｼｪ邊玲万菴薙�
%    \begin{macrocode}
\cs_new:Npn \@@_cfg_cjk_font_sub_fbfs:n #1
  {
    BoldSlantedFont     = { #1 },
    BoldSlantedFeatures =
      {
        FakeBold  = \l_@@_fake_bold_tl,
        FakeSlant = \l_@@_fake_slant_tl
      }
  }
%    \end{macrocode}
% \end{macro}
% \begin{macro}{\@@_cfg_cjk_font_sub_bfs:n}
% 荳ｭ譁�ｲ嶺ｼｪ譁應ｽ薙�
%    \begin{macrocode}
\cs_new:Npn \@@_cfg_cjk_font_sub_bfs:n #1
  {
    BoldSlantedFont     = { #1 },
    BoldSlantedFeatures = { FakeSlant = \l_@@_fake_slant_tl }
  }
%    \end{macrocode}
% \end{macro}
% \begin{macro}{\@@_cfg_cjk_font_sub_i:n}
% 荳ｭ譁�э螟ｧ蛻ｩ菴薙�
%    \begin{macrocode}
\cs_new:Npn \@@_cfg_cjk_font_sub_i:n #1
  {
    ItalicFont = { #1 }
  }
%    \end{macrocode}
% \end{macro}
% \begin{macro}{\@@_cfg_cjk_font_sub_fi:n}
% 荳ｭ譁�ｼｪ諢丞､ｧ蛻ｩ菴難ｼ悟叉莨ｪ譁應ｽ薙�
%    \begin{macrocode}
\cs_new:Npn \@@_cfg_cjk_font_sub_fi:n #1
  {
    ItalicFont     = { #1 },
    ItalicFeatures = { FakeSlant = \l_@@_fake_slant_tl }
  }
%    \end{macrocode}
% \end{macro}
% \begin{macro}{\@@_cfg_cjk_font_sub_ifb:n}
% 荳ｭ譁�э螟ｧ蛻ｩ菴謎ｼｪ邊嶺ｽ薙�
%    \begin{macrocode}
\cs_new:Npn \@@_cfg_cjk_font_sub_ifb:n #1
  {
    BoldItalicFont     = { #1 },
    BoldItalicFeatures = { FakeBold = \l_@@_fake_bold_tl }
  }
%    \end{macrocode}
% \end{macro}
% \begin{macro}{\@@_cfg_cjk_font_sub_fifb:n}
% 荳ｭ譁�ｼｪ諢丞､ｧ蛻ｩ菴謎ｼｪ邊嶺ｽ薙�
%    \begin{macrocode}
\cs_new:Npn \@@_cfg_cjk_font_sub_fifb:n #1
  {
    BoldItalicFont     = { #1 },
    BoldItalicFeatures =
      {
        FakeBold  = \l_@@_fake_bold_tl,
        FakeSlant = \l_@@_fake_slant_tl
      }
  }
%    \end{macrocode}
% \end{macro}
% \begin{macro}{\@@_cfg_cjk_font_r:n}
% 驟咲ｽｮ荳ｭ譁�ｭ嶺ｽ難ｼ悟桁諡ｬ邊嶺ｽ薙∵万菴薙∵万邊嶺ｽ薙∵э螟ｧ蛻ｩ菴薙∫ｲ玲э螟ｧ蛻ｩ菴薙�
%    \begin{macrocode}
\cs_new:Npn \@@_cfg_cjk_font_r:n #1
  {
    \@@_cfg_cjk_font_sub_fb:n   { #1 },
    \@@_cfg_cjk_font_sub_fs:n   { #1 },
    \@@_cfg_cjk_font_sub_fbfs:n { #1 },
    \@@_cfg_cjk_font_sub_fi:n   { #1 },
    \@@_cfg_cjk_font_sub_fifb:n { #1 }
  }
%    \end{macrocode}
% \end{macro}
% \begin{macro}{\@@_cfg_cjk_font_rb:nn}
% 驟咲ｽｮ荳ｭ譁�ｭ嶺ｽ難ｼ悟桁諡ｬ邊嶺ｽ薙∵万菴薙∵万邊嶺ｽ薙∵э螟ｧ蛻ｩ菴薙∫ｲ玲э螟ｧ蛻ｩ菴難ｼ悟�荳ｭ邊嶺ｽ灘柱譁懃ｲ嶺ｽ謎ｸｺ蜈ｶ莉門ｭ嶺ｽ薙�
% \begin{arguments}
%   \item 蟶ｸ隗�ｭ嶺ｽ薙�
%   \item 邊嶺ｽ灘ｭ嶺ｽ薙�
% \end{arguments}
%    \begin{macrocode}
\cs_new:Npn \@@_cfg_cjk_font_rb:nn #1#2
  {
    \@@_cfg_cjk_font_sub_b:n    { #2 },
    \@@_cfg_cjk_font_sub_fs:n   { #1 },
    \@@_cfg_cjk_font_sub_bfs:n  { #2 },
    \@@_cfg_cjk_font_sub_fi:n   { #1 },
    \@@_cfg_cjk_font_sub_fifb:n { #1 }
  }
%    \end{macrocode}
% \end{macro}
% \begin{macro}{\@@_cfg_cjk_font_ri:nn}
% 驟咲ｽｮ荳ｭ譁�ｭ嶺ｽ難ｼ悟桁諡ｬ邊嶺ｽ薙∵万菴薙∵万邊嶺ｽ薙∵э螟ｧ蛻ｩ菴薙∫ｲ玲э螟ｧ蛻ｩ菴難ｼ悟�荳ｭ諢丞､ｧ蛻ｩ菴灘柱邊玲э螟ｧ蛻ｩ菴謎ｸｺ蜈ｶ莉門ｭ嶺ｽ薙�
% \begin{arguments}
%   \item 蟶ｸ隗�ｭ嶺ｽ薙�
%   \item 諢丞､ｧ蛻ｩ菴灘ｭ嶺ｽ薙�
% \end{arguments}
%    \begin{macrocode}
\cs_new:Npn \@@_cfg_cjk_font_ri:nn #1#2
  {
    \@@_cfg_cjk_font_sub_fb:n   { #1 },
    \@@_cfg_cjk_font_sub_fs:n   { #1 },
    \@@_cfg_cjk_font_sub_fbfs:n { #1 },
    \@@_cfg_cjk_font_sub_i:n    { #2 },
    \@@_cfg_cjk_font_sub_ifb:n  { #2 }
  }
%    \end{macrocode}
% \end{macro}
% \begin{macro}{\@@_cfg_cjk_font_rbi:nnn}
% 驟咲ｽｮ荳ｭ譁�ｭ嶺ｽ難ｼ悟桁諡ｬ邊嶺ｽ薙∵万菴薙∵万邊嶺ｽ薙∵э螟ｧ蛻ｩ菴薙∫ｲ玲э螟ｧ蛻ｩ菴難ｼ悟�荳ｭ邊嶺ｽ薙∵万邊嶺ｽ薙∵э螟ｧ蛻ｩ菴灘柱邊玲э螟ｧ蛻ｩ菴謎ｸｺ蜈ｶ莉門ｭ嶺ｽ薙�
% \begin{arguments}
%   \item 蟶ｸ隗�ｭ嶺ｽ薙�
%   \item 邊嶺ｽ灘ｭ嶺ｽ薙�
%   \item 諢丞､ｧ蛻ｩ菴灘ｭ嶺ｽ薙�
% \end{arguments}
%    \begin{macrocode}
\cs_new:Npn \@@_cfg_cjk_font_rbi:nnn #1#2#3
  {
    \@@_cfg_cjk_font_sub_b:n   { #2 },
    \@@_cfg_cjk_font_sub_fs:n  { #1 },
    \@@_cfg_cjk_font_sub_bfs:n { #2 },
    \@@_cfg_cjk_font_sub_i:n   { #3 },
    \@@_cfg_cjk_font_sub_ifb:n { #3 }
  }
%    \end{macrocode}
% \end{macro}
% \begin{macro}{\@@_set_cjk_main_font:nn,\@@_set_cjk_main_font:nnn}
% 驟咲ｽｮ荳ｭ譁�ｽ鈴ｩｬ譌丞ｭ嶺ｽ薙�
% \begin{arguments}
%   \item 螳倶ｽ灘ｭ嶺ｽ薙�
%   \item 讌ｷ菴灘ｭ嶺ｽ薙�
% \end{arguments}
%    \begin{macrocode}
\cs_new:Npn \@@_set_cjk_main_font:nn #1#2
  {
    \setCJKmainfont { #1 }
      [ \@@_font_path: \@@_cfg_cjk_font_ri:nn { #1 } { #2 } ]
  }
\cs_new:Npn \@@_set_cjk_main_font:nnn #1#2#3
  {
    \setCJKmainfont { #1 }
      [ \@@_font_path: \@@_cfg_cjk_font_rbi:nnn { #1 } { #2 } { #3 } ]
  }
%    \end{macrocode}
% \end{macro}
% \begin{macro}{\@@_set_cjk_sans_font:n,\@@_set_cjk_sans_font:nn}
% 驟咲ｽｮ荳ｭ譁�裏陦ｬ郤ｿ譌丞ｭ嶺ｽ薙�
%    \begin{macrocode}
\cs_new:Npn \@@_set_cjk_sans_font:n #1
  {
    \setCJKsansfont { #1 }
      [ \@@_font_path: \@@_cfg_cjk_font_r:n { #1 } ]
  }
\cs_new:Npn \@@_set_cjk_sans_font:nn #1#2
  {
    \setCJKsansfont { #1 }
      [ \@@_font_path: \@@_cfg_cjk_font_rb:nn { #1 } { #2 } ]
  }
%    \end{macrocode}
% \end{macro}
% \begin{macro}{\@@_set_cjk_mono_font:n}
% 驟咲ｽｮ荳ｭ譁�ｭ牙ｮｽ譌丞ｭ嶺ｽ薙�
%    \begin{macrocode}
\cs_new:Npn \@@_set_cjk_mono_font:n #1
  {
    \setCJKmonofont { #1 }
      [ \@@_font_path: \@@_cfg_cjk_font_r:n { #1 } ]
  }
%    \end{macrocode}
% \end{macro}
% \begin{macro}{\@@_load_cjk_font_win:}
% 荳ｭ譁�ｭ嶺ｽ馴�鄂ｮ\valuex{win}[]縲�
%    \begin{macrocode}
\cs_new:Npn \@@_load_cjk_font_win:
  {
    \@@_set_cjk_main_font:nn
      { \@@_select_font:nn { SimSun   } { simsun.ttc  } }
      { \@@_select_font:nn { KaiTi    } { simkai.ttf  } }
    \@@_set_cjk_sans_font:n
      { \@@_select_font:nn { SimHei   } { simhei.ttf  } }
    \@@_set_cjk_mono_font:n
      { \@@_select_font:nn { FangSong } { simfang.ttf } }
  }
%    \end{macrocode}
% \end{macro}
% \begin{macro}{\@@_load_cjk_font_adobe:}
% 荳ｭ譁�ｭ嶺ｽ馴�鄂ｮ\valuex{adobe}[]縲�
%    \begin{macrocode}
\cs_new:Npn \@@_load_cjk_font_adobe:
  {
    \@@_set_cjk_main_font:nn
      { \@@_select_font:nn { Adobe~Song~Std     } { adobesongstd-light.otf        } }
      { \@@_select_font:nn { Adobe~Kaiti~Std    } { adobekaitistd-regular.otf     } }
    \@@_set_cjk_sans_font:n
      { \@@_select_font:nn { Adobe~Heiti~Std    } { adobeheitistd-regular.otf     } }
    \@@_set_cjk_mono_font:n
      { \@@_select_font:nn { Adobe~Fangsong~Std } { Adobe-Fangsong-Std-R-Font.otf } }
  }
%    \end{macrocode}
% \end{macro}
% \begin{macro}{\@@_load_cjk_font_founder:}
% \changes{v0.5.1.0}{2022/04/06}{騾る�macOS蟷ｳ蜿ｰ譁ｹ豁｣蟄嶺ｽ党
% 荳ｭ譁�ｭ嶺ｽ馴�鄂ｮ\valuex{founder}[]縲�
%    \begin{macrocode}
\cs_new:Npn \@@_load_cjk_font_founder:
  {
    \@@_set_cjk_main_font:nn
      { \@@_select_font:nn { FZShuSong-Z01  } { FZShuSong-Z01.ttf } }
      { \@@_select_font:nn { FZKai-Z03      } { FZKai-Z03.ttf     } }
    \@@_set_cjk_sans_font:n
      { \@@_select_font:nn { FZHei-B01      } { FZHei-B01.ttf     } }
    \@@_set_cjk_mono_font:n
      { \@@_select_font:nn { FZFangSong-Z02 } { FZFSK.TTF         } }
  }
%    \end{macrocode}
% \end{macro}
% \changes{v5.1.0.0}{2023/02/20}{蠅槫刈豎我ｻｪ蟄嶺ｽ党
% \begin{macro}{\@@_load_cjk_font_hanyi:}
% 荳ｭ譁�ｭ嶺ｽ馴�鄂ｮ\valuex{hanyi}[]縲�
%    \begin{macrocode}
\cs_new:Npn \@@_load_cjk_font_hanyi:
  {
    \@@_set_cjk_main_font:nn
      { \@@_select_font:nn { HYShuSongErS } { HYShuSongErS.ttf  } }
      { \@@_select_font:nn { HYKaiTiS     } { HYKaiTiS.ttf      } }
    \@@_set_cjk_sans_font:n
      { \@@_select_font:nn { HYZhongHei   } { HYZhongHeiTiS.ttf } }
    \@@_set_cjk_mono_font:n
      { \@@_select_font:nn { HYFangSongS  } { HYFangSongS.ttf   } }
  }
%    \end{macrocode}
% \end{macro}
% \begin{macro}{\@@_load_cjk_font_sinotype:}
% 荳ｭ譁�ｭ嶺ｽ馴�鄂ｮ\valuex{sinotype}[]縲�
%    \begin{macrocode}
\cs_new:Npn \@@_load_cjk_font_sinotype:
  {
    \@@_set_cjk_main_font:nn
      { \@@_select_font:nn { STSong     } { STSONG.TTF   } }
      { \@@_select_font:nn { STKaiti    } { STKAITI.TTF  } }
    \@@_set_cjk_sans_font:nn
      { \@@_select_font:nn { STXihei    } { STXIHEI.TTF  } }
      { \@@_select_font:nn { STHeiti    } { STHeiti.ttf  } }
    \@@_set_cjk_mono_font:n
      { \@@_select_font:nn { STFangsong } { STFANGSO.TTF } }
  }
%    \end{macrocode}
% \end{macro}
% \begin{macro}{\@@_load_cjk_font_fandol:}
% \changes{v0.5.1.0}{2022/04/06}{騾る�macOS蟷ｳ蜿ｰFandol蟄嶺ｽ党
% 荳ｭ譁�ｭ嶺ｽ馴�鄂ｮ\valuex{fandol}[]縲�
%    \begin{macrocode}
\cs_new:Npn \@@_load_cjk_font_fandol:
  {
    \@@_set_cjk_main_font:nnn
      { FandolSong-Regular.otf }
      { FandolSong-Bold.otf    }
      { FandolKai-Regular.otf  }
    \@@_set_cjk_sans_font:nn
      { FandolHei-Regular.otf  }
      { FandolHei-Bold.otf     }
    \@@_set_cjk_mono_font:n
      { FandolFang-Regular.otf }
  }
%    \end{macrocode}
% \end{macro}
% \begin{macro}{\@@_load_cjk_font_none:}
% 荳ｭ譁�ｭ嶺ｽ馴�鄂ｮ\valuex{none}[]縲�
%    \begin{macrocode}
\cs_new:Npn \@@_load_cjk_font_none: { }
%    \end{macrocode}
% \end{macro}
% \subsubsection{闍ｱ譁�ｭ嶺ｽ党
% \begin{macro}{\@@_set_latin_font:nnn}
% 驟咲ｽｮ闍ｱ譁�ｭ嶺ｽ薙�
%    \begin{macrocode}
\cs_new:Npn \@@_set_latin_font:nnn #1#2#3
  {
    BoldFont        = { #1 },
    SlantedFont     = { #2 },
    BoldSlantedFont = { #3 },
    ItalicFont      = { #2 },
    BoldItalicFont  = { #3 }
  }
%    \end{macrocode}
% \end{macro}
% \changes{v6.1.2.0}{2023/03/07}{菫ｮ豁｣蛹ｹ驟肴遠蟄玲惻譌丞ｭ礼ｬｦ鬮伜ｺｦ}
% \changes{v4.3.0.0}{2023/01/28}{蛹ｹ驟肴裏陦ｬ郤ｿ譌丞柱謇灘ｭ玲惻譌丞ｭ礼ｬｦ鬮伜ｺｦ}
% \changes{v0.8.3.0}{2022/04/13}{蛹ｹ驟榊ｰ丞�蟄玲ｯ榊ｭ礼ｬｦ鬮伜ｺｦ}
% \begin{macro}{\@@_set_latin_sans_scale:,\@@_set_latin_mono_scale:}
% 蛹ｹ驟肴裏陦ｬ郤ｿ譌丞柱謇灘ｭ玲惻譌丞ｭ礼ｬｦ鬮伜ｺｦ縲�
%    \begin{macrocode}
\cs_new:Npn \@@_set_latin_sans_scale: { }
\cs_new:Npn \@@_set_latin_mono_scale: { }
\ctex_at_end_preamble:n
  {
    \tl_if_eq:NnTF \l_@@_latin_sans_scale_tl { upper }
      { \cs_set:Npn \@@_set_latin_sans_scale: { Scale = MatchUppercase , } }
      {
        \tl_if_eq:NnT \l_@@_latin_sans_scale_tl { lower }
          { \cs_set:Npn \@@_set_latin_sans_scale: { Scale = MatchLowercase , } }
      }
    \tl_if_eq:NnTF \l_@@_latin_mono_scale_tl { upper }
      { \cs_set:Npn \@@_set_latin_mono_scale: { Scale = MatchUppercase , } }
      {
        \tl_if_eq:NnT \l_@@_latin_mono_scale_tl { lower }
          { \cs_set:Npn \@@_set_latin_mono_scale: { Scale = MatchLowercase , } }
      }
  }
%    \end{macrocode}
% \end{macro}
% \begin{macro}{\@@_off_latin_ligatures:}
% \changes{v0.8.3.0}{2022/04/13}{蜈ｳ髣ｭ霑槫ｭ抑
% 蜈ｳ髣ｭ霑槫ｭ励�
%    \begin{macrocode}
\cs_new:Npn \@@_off_latin_ligatures:
  { Ligatures = CommonOff , }
%    \end{macrocode}
% \end{macro}
% \begin{macro}{\@@_set_latin_main_font:nnnnn}
% 驟咲ｽｮ闍ｱ譁�ｽ鈴ｩｬ譌丞ｭ嶺ｽ難ｼ悟盾謨ｰ蛻�悪荳ｺ蟄嶺ｽ灘錐遘ｰ縲∝ｭ嶺ｽ捺枚莉ｶ蜷咲ｧｰ�亥ｸｸ隗�∫ｲ嶺ｽ薙∵э螟ｧ蛻ｩ菴薙∫ｲ玲э螟ｧ蛻ｩ菴難ｼ峨�
% \begin{arguments}
%   \item 蟄嶺ｽ灘錐遘ｰ縲�
%   \item 蟶ｸ隗�ｭ嶺ｽ灘錐遘ｰ縲�
%   \item 邊嶺ｽ灘ｭ嶺ｽ灘錐遘ｰ縲�
%   \item 諢丞､ｧ蛻ｩ菴灘ｭ嶺ｽ灘錐遘ｰ縲�
%   \item 邊玲э螟ｧ蛻ｩ菴灘ｭ嶺ｽ灘錐遘ｰ縲�
% \end{arguments}
%    \begin{macrocode}
\cs_new:Npn \@@_set_latin_main_font:nnnnn #1#2#3#4#5
  {
    \str_if_eq:NNTF { \l_@@_font_type_tl } { font }
      { \setmainfont { #1 } }
      {
        \setmainfont { #2 }
          [
            \@@_font_path:
            \@@_set_latin_font:nnn { #3 } { #4 } { #5 }
          ]
      }
  }
%    \end{macrocode}
% \end{macro}
% \begin{macro}{\@@_set_latin_sans_font:nnnnn}
% \changes{v0.8.3.0}{2022/04/13}{菫ｮ豁｣闍ｱ譁�裏陦ｬ郤ｿ譌丞ｭ嶺ｽ灘ｭ礼ｬｦ鬮伜ｺｦ}
% 驟咲ｽｮ闍ｱ譁�裏陦ｬ郤ｿ譌丞ｭ嶺ｽ難ｼ悟盾謨ｰ蛻�悪荳ｺ蟄嶺ｽ灘錐遘ｰ縲∝ｭ嶺ｽ捺枚莉ｶ蜷咲ｧｰ�亥ｸｸ隗�∫ｲ嶺ｽ薙∵э螟ｧ蛻ｩ菴薙∫ｲ玲э螟ｧ蛻ｩ菴難ｼ峨�
% \begin{arguments}
%   \item 蟄嶺ｽ灘錐遘ｰ縲�
%   \item 蟶ｸ隗�ｭ嶺ｽ灘錐遘ｰ縲�
%   \item 邊嶺ｽ灘ｭ嶺ｽ灘錐遘ｰ縲�
%   \item 諢丞､ｧ蛻ｩ菴灘ｭ嶺ｽ灘錐遘ｰ縲�
%   \item 邊玲э螟ｧ蛻ｩ菴灘ｭ嶺ｽ灘錐遘ｰ縲�
% \end{arguments}
%    \begin{macrocode}
\cs_new:Npn \@@_set_latin_sans_font:nnnnn #1#2#3#4#5
  {
    \str_if_eq:NNTF { \l_@@_font_type_tl } { font }
      { \setsansfont { #1 } [ \@@_set_latin_sans_scale: ] }
      {
        \setsansfont { #2 }
          [
            \@@_font_path:
            \@@_set_latin_sans_scale:
            \@@_set_latin_font:nnn { #3 } { #4 } { #5 }
          ]
      }
  }
%    \end{macrocode}
% \end{macro}
% \begin{macro}{\@@_set_latin_mono_font:nnnnn}
% \changes{v0.8.3.0}{2022/04/13}{菫ｮ豁｣闍ｱ譁�ｭ牙ｮｽ譌丞ｭ嶺ｽ灘ｭ礼ｬｦ鬮伜ｺｦ蟷ｶ蜿匁ｶ郁ｿ槫ｭ抑
% 驟咲ｽｮ闍ｱ譁�ｭ牙ｮｽ譌丞ｭ嶺ｽ難ｼ悟盾謨ｰ蛻�悪荳ｺ蟄嶺ｽ灘錐遘ｰ縲∝ｭ嶺ｽ捺枚莉ｶ蜷咲ｧｰ�亥ｸｸ隗�∫ｲ嶺ｽ薙∵э螟ｧ蛻ｩ菴薙∫ｲ玲э螟ｧ蛻ｩ菴難ｼ峨�
% \begin{arguments}
%   \item 蟄嶺ｽ灘錐遘ｰ縲�
%   \item 蟶ｸ隗�ｭ嶺ｽ灘錐遘ｰ縲�
%   \item 邊嶺ｽ灘ｭ嶺ｽ灘錐遘ｰ縲�
%   \item 諢丞､ｧ蛻ｩ菴灘ｭ嶺ｽ灘錐遘ｰ縲�
%   \item 邊玲э螟ｧ蛻ｩ菴灘ｭ嶺ｽ灘錐遘ｰ縲�
% \end{arguments}
%    \begin{macrocode}
\cs_new:Npn \@@_set_latin_mono_font:nnnnn #1#2#3#4#5
  {
    \str_if_eq:NNTF { \l_@@_font_type_tl } { font }
      { \setmonofont { #1 } [ \@@_set_latin_mono_scale: \@@_off_latin_ligatures: ] }
      {
        \setmonofont { #2 }
          [
            \@@_font_path:
            \@@_set_latin_mono_scale:
            \@@_off_latin_ligatures:
            \@@_set_latin_font:nnn { #3 } { #4 } { #5 }
          ]
      }
  }
%    \end{macrocode}
% \end{macro}
% \begin{macro}{\@@_set_latin_main_font:nnnn}
% \changes{v0.9.0.0}{2022/04/13}{驟咲ｽｮTeX Live蜀�ｽｮ闍ｱ譁�ｽ鈴ｩｬ譌丞ｭ嶺ｽ党
% 驟咲ｽｮ闍ｱ譁�ｽ鈴ｩｬ譌丞ｭ嶺ｽ難ｼ悟盾謨ｰ蛻�悪荳ｺ蟄嶺ｽ捺枚莉ｶ蜷咲ｧｰ�亥ｸｸ隗�∫ｲ嶺ｽ薙∵э螟ｧ蛻ｩ菴薙∫ｲ玲э螟ｧ蛻ｩ菴難ｼ峨�
% \begin{arguments}
%   \item 蟶ｸ隗�ｭ嶺ｽ灘錐遘ｰ縲�
%   \item 邊嶺ｽ灘ｭ嶺ｽ灘錐遘ｰ縲�
%   \item 諢丞､ｧ蛻ｩ菴灘ｭ嶺ｽ灘錐遘ｰ縲�
%   \item 邊玲э螟ｧ蛻ｩ菴灘ｭ嶺ｽ灘錐遘ｰ縲�
% \end{arguments}
%    \begin{macrocode}
\cs_new:Npn \@@_set_latin_main_font:nnnn #1#2#3#4
  {
    \setmainfont { #1 }
      [
        \@@_set_latin_font:nnn { #2 } { #3 } { #4 }
      ]
  }
%    \end{macrocode}
% \end{macro}
% \begin{macro}{\@@_set_latin_sans_font:nnnn}
% \changes{v0.9.0.0}{2022/04/13}{驟咲ｽｮTeX Live蜀�ｽｮ闍ｱ譁�裏陦ｬ郤ｿ譌丞ｭ嶺ｽ党
% 驟咲ｽｮ闍ｱ譁�裏陦ｬ郤ｿ譌丞ｭ嶺ｽ難ｼ悟盾謨ｰ蛻�悪荳ｺ蟄嶺ｽ捺枚莉ｶ蜷咲ｧｰ�亥ｸｸ隗�∫ｲ嶺ｽ薙∵э螟ｧ蛻ｩ菴薙∫ｲ玲э螟ｧ蛻ｩ菴難ｼ峨�
% \begin{arguments}
%   \item 蟶ｸ隗�ｭ嶺ｽ灘錐遘ｰ縲�
%   \item 邊嶺ｽ灘ｭ嶺ｽ灘錐遘ｰ縲�
%   \item 諢丞､ｧ蛻ｩ菴灘ｭ嶺ｽ灘錐遘ｰ縲�
%   \item 邊玲э螟ｧ蛻ｩ菴灘ｭ嶺ｽ灘錐遘ｰ縲�
% \end{arguments}
%    \begin{macrocode}
\cs_new:Npn \@@_set_latin_sans_font:nnnn #1#2#3#4
  {
    \setsansfont { #1 }
      [
        \@@_set_latin_sans_scale:
        \@@_set_latin_font:nnn { #2 } { #3 } { #4 }
      ]
  }
%    \end{macrocode}
% \end{macro}
% \begin{macro}{\@@_set_latin_mono_font:nnnn}
% \changes{v0.9.0.0}{2022/04/13}{驟咲ｽｮTeX Live蜀�ｽｮ闍ｱ譁�ｭ牙ｮｽ譌丞ｭ嶺ｽ党
% 驟咲ｽｮ闍ｱ譁�ｭ牙ｮｽ譌丞ｭ嶺ｽ難ｼ悟盾謨ｰ蛻�悪荳ｺ蟄嶺ｽ捺枚莉ｶ蜷咲ｧｰ�亥ｸｸ隗�∫ｲ嶺ｽ薙∵э螟ｧ蛻ｩ菴薙∫ｲ玲э螟ｧ蛻ｩ菴難ｼ峨�
% \begin{arguments}
%   \item 蟶ｸ隗�ｭ嶺ｽ灘錐遘ｰ縲�
%   \item 邊嶺ｽ灘ｭ嶺ｽ灘錐遘ｰ縲�
%   \item 諢丞､ｧ蛻ｩ菴灘ｭ嶺ｽ灘錐遘ｰ縲�
%   \item 邊玲э螟ｧ蛻ｩ菴灘ｭ嶺ｽ灘錐遘ｰ縲�
% \end{arguments}
%    \begin{macrocode}
\cs_new:Npn \@@_set_latin_mono_font:nnnn #1#2#3#4
  {
    \setmonofont { #1 }
      [
        \@@_set_latin_mono_scale:
        \@@_off_latin_ligatures:
        \@@_set_latin_font:nnn { #2 } { #3 } { #4 }
      ]
  }
%    \end{macrocode}
% \end{macro}
% \begin{macro}{\@@_load_latin_font_tac:}
% \changes{v1.12.0.0}{2022/05/06}{蠅槫刈Arial蜥靴onsolas闍ｱ譁�ｭ嶺ｽ馴�鄂ｮ}
% 闍ｱ譁�ｭ嶺ｽ馴�鄂ｮ\valuex{tac}[]縲�
%    \begin{macrocode}
\cs_new:Npn \@@_load_latin_font_tac:
  {
    \@@_set_latin_main_font:nnnnn
      { Times~New~Roman } { times.ttf   } { timesbd.ttf  } { timesi.ttf   } { timesbi.ttf  }
    \@@_set_latin_sans_font:nnnnn
      { Arial           } { arial.ttf   } { arialbd.ttf  } { ariali.ttf   } { arialbi.ttf  }
    \@@_set_latin_mono_font:nnnnn
      { Consolas        } { consola.ttf } { consolab.ttf } { consolai.ttf } { consolaz.ttf }
  }
%    \end{macrocode}
% \end{macro}
% \begin{macro}{\@@_load_latin_font_tacn:}
% 闍ｱ譁�ｭ嶺ｽ馴�鄂ｮ\valuex{tacn}[]縲�
%    \begin{macrocode}
\cs_new:Npn \@@_load_latin_font_tacn:
  {
    \@@_set_latin_main_font:nnnnn
      { Times~New~Roman } { times.ttf } { timesbd.ttf } { timesi.ttf } { timesbi.ttf }
    \@@_set_latin_sans_font:nnnnn
      { Arial           } { arial.ttf } { arialbd.ttf } { ariali.ttf } { arialbi.ttf }
    \@@_set_latin_mono_font:nnnnn
      { Courier~New     } { cour.ttf  } { courbd.ttf  } { couri.ttf  } { courbi.ttf  }
  }
%    \end{macrocode}
% \end{macro}
% \begin{macro}{\@@_load_latin_font_tcc:}
% \changes{v5.3.0.0}{2023/02/23}{蠅槫刈tcc邉ｻ蛻苓恭譁�ｭ嶺ｽ馴�鄂ｮ}
% 闍ｱ譁�ｭ嶺ｽ馴�鄂ｮ\valuex{tcc}[]縲�
%    \begin{macrocode}
\cs_new:Npn \@@_load_latin_font_tcc:
  {
    \@@_set_latin_main_font:nnnnn
      { Times~New~Roman }
      { times.ttf       }
      { timesbd.ttf     }
      { timesi.ttf      }
      { timesbi.ttf     }
    \@@_set_latin_sans_font:nnnn
      { cmunss.otf      }
      { cmunsx.otf      }
      { cmunsi.otf      }
      { cmunso.otf      }
    \@@_set_latin_mono_font:nnnn
      { cmuntt.otf      }
      { cmuntb.otf      }
      { cmunit.otf      }
      { cmuntx.otf      }
  }
%    \end{macrocode}
% \end{macro}
% \begin{macro}{\@@_load_latin_font_thcs:}
% 闍ｱ譁�ｭ嶺ｽ馴�鄂ｮ\valuex{thcs}[]縲�
%    \begin{macrocode}
\cs_new:Npn \@@_load_latin_font_thcs:
  {
    \@@_set_latin_main_font:nnnnn
      { Times~New~Roman            }
      { times.ttf                  }
      { timesbd.ttf                }
      { timesi.ttf                 }
      { timesbi.ttf                }
    \@@_set_latin_sans_font:nnnnn
      { Helvetica                  }
      { Helvetica.ttf              }
      { Helvetica~Bold.ttf         }
      { Helvetica~Oblique.ttf      }
      { Helvetica~Bold~Oblique.ttf }
    \@@_set_latin_mono_font:nnnnn
      { Courier~Std                }
      { CourierStd.otf             }
      { CourierStd-Bold.otf        }
      { CourierStd-Oblique.otf     }
      { CourierStd-BoldOblique.otf }
  }
%    \end{macrocode}
% \end{macro}
% \begin{macro}{\@@_load_latin_font_tll:}
% \changes{v5.3.0.0}{2023/02/23}{蠅槫刈tll邉ｻ蛻苓恭譁�ｭ嶺ｽ馴�鄂ｮ}
% 闍ｱ譁�ｭ嶺ｽ馴�鄂ｮ\valuex{tll}[]縲�
%    \begin{macrocode}
\cs_new:Npn \@@_load_latin_font_tll:
  {
    \@@_set_latin_main_font:nnnnn
      { Times~New~Roman      }
      { times.ttf            }
      { timesbd.ttf          }
      { timesi.ttf           }
      { timesbi.ttf          }
    \@@_set_latin_sans_font:nnnn
      { LinBiolinum_R.otf    }
      { LinBiolinum_RB.otf   }
      { LinBiolinum_RI.otf   }
      { LinBiolinum_RBO.otf  }
    \@@_set_latin_mono_font:nnnn
      { LinLibertine_M.otf   }
      { LinLibertine_MB.otf  }
      { LinLibertine_MO.otf  }
      { LinLibertine_MBO.otf }
  }
%    \end{macrocode}
% \end{macro}
% \begin{macro}{\@@_load_latin_font_gyre:}
% \changes{v0.9.0.0}{2022/04/13}{蠅槫刈gyre邉ｻ蛻苓恭譁�ｭ嶺ｽ馴�鄂ｮ}
% 闍ｱ譁�ｭ嶺ｽ馴�鄂ｮ\valuex{gyre}[]縲�
%    \begin{macrocode}
\cs_new:Npn \@@_load_latin_font_gyre:
  {
    \@@_set_latin_main_font:nnnn
      { texgyretermes-regular.otf    }
      { texgyretermes-bold.otf       }
      { texgyretermes-italic.otf     }
      { texgyretermes-bolditalic.otf }
    \@@_set_latin_sans_font:nnnn
      { texgyreheros-regular.otf     }
      { texgyreheros-bold.otf        }
      { texgyreheros-italic.otf      }
      { texgyreheros-bolditalic.otf  }
    \@@_set_latin_mono_font:nnnn
      { texgyrecursor-regular.otf    }
      { texgyrecursor-bold.otf       }
      { texgyrecursor-italic.otf     }
      { texgyrecursor-bolditalic.otf }
  }
%    \end{macrocode}
% \end{macro}
% \begin{macro}{\@@_load_latin_font_none:}
% 闍ｱ譁�ｭ嶺ｽ馴�鄂ｮ\valuex{none}[]縲�
%    \begin{macrocode}
\cs_new:Npn \@@_load_latin_font_none: { }
%    \end{macrocode}
% \end{macro}
% \subsubsection{謨ｰ蟄ｦ蟄嶺ｽ党
% \changes{v6.1.1.0}{2023/03/06}{菫ｮ螟構pkgx{unicode-math}荳倶ｹｦ遲ｾ荳ｭ蜈ｬ蠑殉
% \changes{v5.6.0.0}{2023/03/01}{隶ｾ鄂ｮ\pkgx{unicode-math}荳狗ｮ礼ｬｦ蟄嶺ｽ謎ｸｺ謨ｰ蟄ｦ蟄嶺ｽ党
% \changes{v1.14.1.0}{2022/05/10}{菴ｿ逕ｨ\tnx{PassOptionsToPackage}莨�騾箪pkgx{unicode-math}螳丞桁蜿よ焚}
% \begin{macro}{\@@_load_unicode_math_pkg:}
% 蜉�霓ｽ\pkgx{unicode-math}螳丞桁蟷ｶ隶ｾ鄂ｮ邂礼ｬｦ蟄嶺ｽ謎ｸｺ謨ｰ蟄ｦ蟄嶺ｽ薙�
%    \begin{macrocode}
\cs_new:Npn \@@_load_unicode_math_pkg:
  {
    \PassOptionsToPackage { \l_@@_unicode_math_tl } { unicode-math }
    \RequirePackage  { unicode-math }
    \setoperatorfont { \symup       }
    \hypersetup      { psdextra     }
  }
%    \end{macrocode}
% \end{macro}
% \begin{macro}{\@@_load_math_font_cambria:}
% 謨ｰ蟄ｦ蟄嶺ｽ馴�鄂ｮ\valuex{cambria}[]縲�
%    \begin{macrocode}
\cs_new:Npn \@@_load_math_font_cambria:
  {
    \@@_load_unicode_math_pkg:
    \str_if_eq:NNTF { \l_@@_font_type_tl } { font }
      { \setmathfont { Cambria~Math } }
      { \setmathfont { cambria.ttc } [ Path = \l_@@_font_path_tl/, FontIndex = 1 ] }
  }
%    \end{macrocode}
% \end{macro}
% \begin{macro}{\@@_define_math_font:nn}
% 謇ｹ驥丞ｮ壻ｹ画焚蟄ｦ蟄嶺ｽ馴�鄂ｮ縲�
% \changes{v2.16.1.0}{2022/11/27}{菫ｮ謾ｹXITS Math謨ｰ蟄ｦ蟄嶺ｽ楢ｰ�畑譁ｹ蠑殉
% \changes{v2.16.0.0}{2022/11/27}{蠅槫刈闍･蟷ｲ謨ｰ蟄ｦ蟄嶺ｽ党
% \changes{v2.15.0.0}{2022/11/26}{蠅槫刈New Computer Modern Math謨ｰ蟄ｦ蟄嶺ｽ党
% \changes{v2.13.0.0}{2022/11/21}{蠅槫刈Erewhon Math謨ｰ蟄ｦ蟄嶺ｽ党
% \changes{v0.2.0.0}{2022/04/04}{蠅槫刈Garamond Math謨ｰ蟄ｦ蟄嶺ｽ党
% \changes{v0.5.1.0}{2022/04/06}{騾る�macOS蟷ｳ蜿ｰMacTeX蜀�ｽｮ謨ｰ蟄ｦ蟄嶺ｽ党
% \begin{arguments}
%   \item 驟咲ｽｮ蜷咲ｧｰ縲�
%   \item 蟄嶺ｽ灘錐遘ｰ縲�
% \end{arguments}
%    \begin{macrocode}
\cs_new:Npn \@@_define_math_font:nn #1#2
  {
    \cs_new:cpn { @@_load_math_font_ #1 : }
      {
        \@@_load_unicode_math_pkg:
        \setmathfont { #2 }
      }
  }
\clist_map_inline:nn
  {
    { asana          } { Asana-Math.otf             },
    { concrete       } { Concrete-Math.otf          },
    { erewhon        } { Erewhon-Math.otf           },
    { euler          } { Euler-Math.otf             },
    { fira           } { FiraMath-Regular.otf       },
    { garamond       } { Garamond-Math.otf          },
    { gfsneohellenic } { GFSNeohellenicMath.otf     },
    { kp             } { KpMath-Regular.otf         },
    { libertinus     } { LibertinusMath-Regular.otf },
    { lm             } { latinmodern-math.otf       },
    { newcm          } { NewCMMath-Regular.otf      },
    { stix           } { STIXMath-Regular.otf       },
    { stix2          } { STIXTwoMath-Regular.otf    },
    { xcharter       } { XCharter-Math.otf          },
    { xits           } { XITSMath-Regular.otf       },
    { bonum          } { texgyrebonum-math.otf      },
    { dejavu         } { texgyredejavu-math.otf     },
    { pagella        } { texgyrepagella-math.otf    },
    { schola         } { texgyreschola-math.otf     },
    { termes         } { texgyretermes-math.otf     }
  }
  { \@@_define_math_font:nn #1 }
%    \end{macrocode}
% \end{macro}
% \changes{v0.5.1.0}{2022/04/06}{騾る�macOS蟷ｳ蜿ｰMacTeX蜀�ｽｮXITSMath謨ｰ蟄ｦ蟄嶺ｽ党
% \changes{v2.12.1.0}{2022/07/03}{遘ｻ髯､XITSMath謨ｰ蟄ｦ蟄嶺ｽ灘�菴呵ｯｭ蜿･}
% \begin{macro}{\@@_load_math_font_cm:}
% 謨ｰ蟄ｦ蟄嶺ｽ馴�鄂ｮ\valuex{cm}[]縲�
%    \begin{macrocode}
\cs_new:Npn \@@_load_math_font_cm: { }
%    \end{macrocode}
% \end{macro}
% \begin{macro}{\@@_load_math_font_none:}
% 謨ｰ蟄ｦ蟄嶺ｽ馴�鄂ｮ\valuex{none}[]縲�
%    \begin{macrocode}
\cs_new:Npn \@@_load_math_font_none: { }
%    \end{macrocode}
% \end{macro}
% \subsubsection{蜉�霓ｽ蟄嶺ｽ党
% \begin{macro}{\@@_load_font:}
% 蜉�霓ｽ荳ｭ譁�ｭ嶺ｽ薙∬恭譁�ｭ嶺ｽ灘柱謨ｰ蟄ｦ蟄嶺ｽ薙�
%    \begin{macrocode}
\cs_new:Npn \@@_load_font:
  {
    \use:c { @@_load_cjk_font_   \l_@@_cjk_font_tl   : }
    \use:c { @@_load_latin_font_ \l_@@_latin_font_tl : }
    \use:c { @@_load_math_font_  \l_@@_math_font_tl  : }
  }
%    \end{macrocode}
% 蝨ｨ蟇ｼ險蛹ｺ譛ｫ蟆ｾ蜉�霓ｽ荳ｭ譁�ｭ嶺ｽ薙∬恭譁�ｭ嶺ｽ灘柱謨ｰ蟄ｦ蟄嶺ｽ薙�
%    \begin{macrocode}
\ctex_at_end_preamble:n { \@@_load_font: }
%    \end{macrocode}
% \end{macro}
%    \begin{macrocode}
%&lt;/class|xdufont&gt;
%&lt;*thesis|tp&gt;
%    \end{macrocode}
% \subsection{菫｡諱ｯ蠖募�}
% \changes{v1.8.0.0}{2022/05/02}{諡��菫｡諱ｯ蠖募�騾蛾｡ｹ}
% \begin{variable}
%   {
%     \l_@@_title_tl,
%     \l_@@_title_i_tl,
%     \l_@@_title_ii_tl,
%     \l_@@_dept_str,
%     \l_@@_major_str,
%     \l_@@_author_str,
%     \l_@@_supv_clist,
%     \l_@@_supv_ent_str,
%     \l_@@_student_id_str,
%     \l_@@_abstract_zh_tl,
%     \l_@@_abstract_en_tl,
%     \l_@@_keywords_zh_clist,
%     \l_@@_keywords_en_clist,
%     \l_@@_bib_file_clist,
%     \l_@@_appendix_clist,
%     \l_@@_ack_tl
%   }
% 隶ｺ譁���｢倥�
%    \begin{macrocode}
\tl_new:N \l_@@_title_tl
\tl_new:N \l_@@_title_i_tl
\tl_new:N \l_@@_title_ii_tl
%    \end{macrocode}
% 髯｢邉ｻ蜷咲ｧｰ縲�
%    \begin{macrocode}
\str_new:N \l_@@_dept_str
%    \end{macrocode}
% 荳謎ｸ壼錐遘ｰ縲�
%    \begin{macrocode}
\str_new:N \l_@@_major_str
%    \end{macrocode}
% 菴懆�ｧ灘錐縲�
%    \begin{macrocode}
\str_new:N \l_@@_author_str
%    \end{macrocode}
% 蟇ｼ蟶亥ｧ灘錐縲�
%    \begin{macrocode}
\clist_new:N \l_@@_supv_clist
%    \end{macrocode}
% 譬｡螟門ｯｼ蟶亥ｧ灘錐縲�
%    \begin{macrocode}
\str_new:N \l_@@_supv_ent_str
%    \end{macrocode}
% 菴懆�ｭｦ蜿ｷ縲�
%    \begin{macrocode}
\str_new:N \l_@@_student_id_str
%    \end{macrocode}
% 荳ｭ譁�遭隕√�
%    \begin{macrocode}
\tl_new:N \l_@@_abstract_zh_tl
%    \end{macrocode}
% 闍ｱ譁�遭隕√�
%    \begin{macrocode}
\tl_new:N \l_@@_abstract_en_tl
%    \end{macrocode}
% 荳ｭ譁��髞ｮ隸阪�
%    \begin{macrocode}
\clist_new:N \l_@@_keywords_zh_clist
%    \end{macrocode}
% 闍ｱ譁��髞ｮ隸阪�
%    \begin{macrocode}
\clist_new:N \l_@@_keywords_en_clist
%    \end{macrocode}
% 蜿り�枚迪ｮ譁�ｻｶ縲�
%    \begin{macrocode}
\clist_new:N \l_@@_bib_file_clist
%    \end{macrocode}
% 髯�ｽ輔�
%    \begin{macrocode}
\clist_new:N \l_@@_appendix_clist
%    \end{macrocode}
% 閾ｴ隹｢縲�
%    \begin{macrocode}
\tl_new:N \l_@@_ack_tl
%    \end{macrocode}
% \end{variable}
% \begin{macro}{\keys_define:nn}
% 螳壻ｹ我ｿ｡諱ｯ髞ｮ蛟ｼ縲�
%    \begin{macrocode}
\keys_define:nn { xdu / info }
  {
%    \end{macrocode}
% 隶ｺ譁���｢倥�
%    \begin{macrocode}
    title .tl_set:N = \l_@@_title_tl,
%    \end{macrocode}
% 髯｢邉ｻ蜷咲ｧｰ縲�
%    \begin{macrocode}
    department .tl_set:N = \l_@@_dept_str,
%    \end{macrocode}
% 荳謎ｸ壼錐遘ｰ縲�
%    \begin{macrocode}
    major .tl_set:N = \l_@@_major_str,
%    \end{macrocode}
% 菴懆�ｧ灘錐縲�
%    \begin{macrocode}
    author .tl_set:N = \l_@@_author_str,
%    \end{macrocode}
% 蟇ｼ蟶亥ｧ灘錐縲�
%    \begin{macrocode}
    supervisor .clist_set:N = \l_@@_supv_clist,
%    \end{macrocode}
% 譬｡螟門ｯｼ蟶亥ｧ灘錐縲�
%    \begin{macrocode}
    supv-ent .tl_set:N = \l_@@_supv_ent_str,
    supervisor-enterprise .tl_set:N = \l_@@_supv_ent_str,
%    \end{macrocode}
% 菴懆�ｭｦ蜿ｷ縲�
%    \begin{macrocode}
    student-id .tl_set:N = \l_@@_student_id_str,
%    \end{macrocode}
% 荳ｭ譁�遭隕√�
%    \begin{macrocode}
    abstract .tl_set:N = \l_@@_abstract_zh_tl,
%    \end{macrocode}
% 闍ｱ譁�遭隕√�
%    \begin{macrocode}
    abstract* .tl_set:N = \l_@@_abstract_en_tl,
%    \end{macrocode}
% 荳ｭ譁��髞ｮ隸阪�
%    \begin{macrocode}
    keywords .clist_set:N = \l_@@_keywords_zh_clist,
%    \end{macrocode}
% 闍ｱ譁��髞ｮ隸阪�
%    \begin{macrocode}
    keywords* .clist_set:N = \l_@@_keywords_en_clist,
%    \end{macrocode}
% 蜿り�枚迪ｮ譁�ｻｶ縲�
%    \begin{macrocode}
    bib-resource .clist_set:N = \l_@@_bib_file_clist,
%    \end{macrocode}
% 髯�ｽ輔�
%    \begin{macrocode}
    appendix .clist_set:N = \l_@@_appendix_clist,
%    \end{macrocode}
% 閾ｴ隹｢縲�
%    \begin{macrocode}
    acknowledgements .tl_set:N = \l_@@_ack_tl
  }
%    \end{macrocode}
% \end{macro}
% \begin{macro}{\keys_set:nn}
% 蛻晏ｧ玖ｮｾ鄂ｮ縲�
%    \begin{macrocode}
\keys_set:nn { xdu }
  {
    info / title                 = { },
    info / department            = { },
    info / major                 = { },
    info / author                = { },
    info / supervisor            = { },
    info / supv-ent              = { },
    info / supervisor-enterprise = { },
    info / student-id            = { },
    info / abstract              = { },
    info / abstract*             = { },
    info / keywords              = { },
    info / keywords*             = { },
    info / bib-resource          = { },
    info / appendix              = { },
    info / acknowledgements      = { }
  }
%    \end{macrocode}
% \end{macro}
% \begin{variable}
%   {
%     \l_@@_supv_str,
%     \l_@@_supv_ii_str
%   }
% \changes{v1.16.0.0}{2022/05/22}{諡��蟇ｼ蟶亥ｧ灘錐}
% 諡��蟇ｼ蟶亥ｧ灘錐縲�
%    \begin{macrocode}
\str_new:N \l_@@_supv_str
\str_new:N \l_@@_supv_ii_str
\ctex_at_end_preamble:n
  {
    \str_set:Nx \l_@@_supv_str    { \clist_item:Nn \l_@@_supv_clist { 1 } }
    \str_set:Nx \l_@@_supv_ii_str { \clist_item:Nn \l_@@_supv_clist { 2 } }
  }
%    \end{macrocode}
% \end{variable}
%    \begin{macrocode}
%&lt;/thesis|tp&gt;
%&lt;*xduugtp&gt;
%    \end{macrocode}
% \subsubsection{譛ｬ遘醍函蠑鬚俶冠蜻笠
% \begin{variable}
%   {
%     \l_@@_class_str,
%     \l_@@_submit_date_str,
%     \l_@@_sign_clist,
%     \l_@@_date_clist
%   }
% 逡後�
%    \begin{macrocode}
\str_new:N \l_@@_class_str
%    \end{macrocode}
% 謠蝉ｺ､譌･譛溘�
%    \begin{macrocode}
\str_new:N \l_@@_submit_date_str
%    \end{macrocode}
% 遲ｾ蜷肴枚莉ｶ霍ｯ蠕��
%    \begin{macrocode}
\clist_new:N \l_@@_sign_clist
%    \end{macrocode}
% 遲ｾ蜷肴律譛溘�
%    \begin{macrocode}
\clist_new:N \l_@@_date_clist
%    \end{macrocode}
% \end{variable}
% \begin{macro}{\keys_define:nn}
% 螳壻ｹ我ｿ｡諱ｯ髞ｮ蛟ｼ縲�
%    \begin{macrocode}
\keys_define:nn { xdu / info }
  {
%    \end{macrocode}
% 逡後�
%    \begin{macrocode}
    class .tl_set:N = \l_@@_class_str,
%    \end{macrocode}
% 謠蝉ｺ､譌･譛溘�
%    \begin{macrocode}
    submit-date .tl_set:N = \l_@@_submit_date_str,
%    \end{macrocode}
% 遲ｾ蜷肴枚莉ｶ霍ｯ蠕��
%    \begin{macrocode}
    sign .clist_set:N = \l_@@_sign_clist,
%    \end{macrocode}
% 遲ｾ蜷肴律譛溘�
%    \begin{macrocode}
    date .clist_set:N = \l_@@_date_clist
  }
%    \end{macrocode}
% \end{macro}
% \begin{macro}{\keys_set:nn}
% 蛻晏ｧ玖ｮｾ鄂ｮ縲�
%    \begin{macrocode}
\keys_set:nn { xdu }
  {
    info / class       = { },
    info / submit-date = { },
    info / sign        = { },
    info / date        = { }
  }
%    \end{macrocode}
% \end{macro}
%    \begin{macrocode}
%&lt;/xduugtp&gt;
%&lt;*xduugthesis&gt;
%    \end{macrocode}
% \subsubsection{譛ｬ遘醍函}
% \begin{variable}
%   {
%     \l_@@_supv_dept_str,
%     \l_@@_supv_sch_str,
%     \l_@@_class_id_str
%   }
% 髯｢蜀�ｯｼ蟶亥ｧ灘錐縲�
%    \begin{macrocode}
\str_new:N \l_@@_supv_dept_str
%    \end{macrocode}
% 譬｡蜀�ｯｼ蟶亥ｧ灘錐縲�
%    \begin{macrocode}
\str_new:N \l_@@_supv_sch_str
%    \end{macrocode}
% 菴懆�少郤ｧ蜿ｷ縲�
%    \begin{macrocode}
\str_new:N \l_@@_class_id_str
%    \end{macrocode}
% \end{variable}
% \begin{macro}{\keys_define:nn}
% 螳壻ｹ我ｿ｡諱ｯ髞ｮ蛟ｼ縲�
%    \begin{macrocode}
\keys_define:nn { xdu / info }
  {
%    \end{macrocode}
% 髯｢蜀�ｯｼ蟶亥ｧ灘錐縲�
%    \begin{macrocode}
    supv-dept .tl_set:N = \l_@@_supv_dept_str,
    supervisor-department .tl_set:N = \l_@@_supv_dept_str,
%    \end{macrocode}
% 譬｡蜀�ｯｼ蟶亥ｧ灘錐縲�
%    \begin{macrocode}
    supv-school .tl_set:N = \l_@@_supv_sch_str,
    supervisor-school .tl_set:N = \l_@@_supv_sch_str,
%    \end{macrocode}
% 菴懆�少郤ｧ蜿ｷ縲�
%    \begin{macrocode}
    class-id .tl_set:N = \l_@@_class_id_str
  }
%    \end{macrocode}
% \end{macro}
% \begin{macro}{\keys_set:nn}
% 蛻晏ｧ玖ｮｾ鄂ｮ縲�
%    \begin{macrocode}
\keys_set:nn { xdu }
  {
    info / supv-dept             = { },
    info / supervisor-department = { },
    info / supv-school           = { },
    info / supervisor-school     = { },
    info / class-id              = { }
  }
%    \end{macrocode}
% \end{macro}
%    \begin{macrocode}
%&lt;/xduugthesis&gt;
%&lt;*xdupgthesis&gt;
%    \end{macrocode}
% \subsubsection{遐皮ｩｶ逕毳
% \changes{v1.9.0.0}{2022/05/03}{蠅槫刈遐皮ｩｶ逕滉ｿ｡諱ｯ蠖募�騾蛾｡ｹ}
% \begin{variable}
%   {
%     \l_@@_gr_type_tl,
%     \l_@@_degree_type_tl,
%     \l_@@_degree_str,
%     \l_@@_degree_en_str,
%     \l_@@_author_en_str,
%     \l_@@_supv_en_clist,
%     \l_@@_supv_ent_en_str,
%     \l_@@_supv_t_clist,
%     \l_@@_supv_t_en_clist,
%     \l_@@_supv_ent_t_str,
%     \l_@@_supv_ent_t_en_str,
%     \l_@@_title_en_str,
%     \l_@@_major_en_str,
%     \l_@@_sub_major_str,
%     \l_@@_domain_str,
%     \l_@@_clc_str,
%     \l_@@_secret_lv_str,
%     \l_@@_secret_year_str,
%     \l_@@_submit_date_str,
%     \l_@@_statement_scan_str,
%     \l_@@_statement_sign_clist,
%     \l_@@_los_str,
%     \l_@@_loa_str,
%     \l_@@_bio_str
%   }
% 遐皮ｩｶ逕溽ｱｻ蝙九�
%    \begin{macrocode}
\tl_new:N \l_@@_gr_type_tl
%    \end{macrocode}
% 蟄ｦ菴咲ｱｻ蝙九�
%    \begin{macrocode}
\tl_new:N \l_@@_degree_type_tl
%    \end{macrocode}
% 蟄ｦ菴咲ｱｻ蛻ｫ縲�
%    \begin{macrocode}
\str_new:N \l_@@_degree_str
\str_new:N \l_@@_degree_en_str
%    \end{macrocode}
% 菴懆�ｧ灘錐諡ｼ髻ｳ縲�
%    \begin{macrocode}
\str_new:N \l_@@_author_en_str
%    \end{macrocode}
% 蟇ｼ蟶亥ｧ灘錐諡ｼ髻ｳ縲�
%    \begin{macrocode}
\clist_new:N \l_@@_supv_en_clist
%    \end{macrocode}
% 譬｡螟門ｯｼ蟶亥ｧ灘錐諡ｼ髻ｳ縲�
%    \begin{macrocode}
\str_new:N \l_@@_supv_ent_en_str
%    \end{macrocode}
% 蟇ｼ蟶郁′遘ｰ縲�
%    \begin{macrocode}
\clist_new:N \l_@@_supv_t_clist
\clist_new:N \l_@@_supv_t_en_clist
%    \end{macrocode}
% 譬｡螟門ｯｼ蟶郁′遘ｰ縲�
%    \begin{macrocode}
\str_new:N \l_@@_supv_ent_t_str
\str_new:N \l_@@_supv_ent_t_en_str
%    \end{macrocode}
% 隶ｺ譁���｢倩恭譁��
%    \begin{macrocode}
\str_new:N \l_@@_title_en_str
%    \end{macrocode}
% 荳郤ｧ蟄ｦ遘題恭譁�錐遘ｰ縲�
%    \begin{macrocode}
\str_new:N \l_@@_major_en_str
%    \end{macrocode}
% 莠檎ｺｧ蟄ｦ遘代�
%    \begin{macrocode}
\str_new:N \l_@@_sub_major_str
%    \end{macrocode}
% 鬚�沺縲�
%    \begin{macrocode}
\str_new:N \l_@@_domain_str
%    \end{macrocode}
% 荳ｭ蝗ｾ蛻�ｱｻ蜿ｷ縲�
%    \begin{macrocode}
\str_new:N \l_@@_clc_str
%    \end{macrocode}
% 蟇�ｺｧ縲�
%    \begin{macrocode}
\str_new:N \l_@@_secret_lv_str
%    \end{macrocode}
% 菫晏ｯ�ｹｴ髯舌�
%    \begin{macrocode}
\str_new:N \l_@@_secret_year_str
%    \end{macrocode}
% 謠蝉ｺ､譌･譛溘�
%    \begin{macrocode}
\str_new:N \l_@@_submit_date_str
%    \end{macrocode}
% 螢ｰ譏朱｡ｵ謇ｫ謠乗枚莉ｶ霍ｯ蠕��
%    \begin{macrocode}
\str_new:N \l_@@_statement_scan_str
%    \end{macrocode}
% 螢ｰ譏朱｡ｵ遲ｾ蜷肴枚莉ｶ霍ｯ蠕��
%    \begin{macrocode}
\clist_new:N \l_@@_statement_sign_clist
%    \end{macrocode}
% 隨ｦ蜿ｷ蟇ｹ辣ｧ陦ｨ譁�ｻｶ霍ｯ蠕��
%    \begin{macrocode}
\str_new:N \l_@@_los_str
%    \end{macrocode}
% 郛ｩ逡･隸ｭ蟇ｹ辣ｧ陦ｨ譁�ｻｶ霍ｯ蠕��
%    \begin{macrocode}
\str_new:N \l_@@_loa_str
%    \end{macrocode}
% 菴懆�ｮ莉区枚莉ｶ霍ｯ蠕��
%    \begin{macrocode}
\str_new:N \l_@@_bio_str
%    \end{macrocode}
% \end{variable}
% \begin{macro}{\keys_define:nn}
% 螳壻ｹ我ｿ｡諱ｯ髞ｮ蛟ｼ縲�
%    \begin{macrocode}
\keys_define:nn { xdu / info }
  {
%    \end{macrocode}
% 遐皮ｩｶ逕溽ｱｻ蝙九�
%    \begin{macrocode}
    graduate-type .choices:nn = { 遑募｣ｫ, 蜊壼｣ｫ }
      { \tl_set_eq:NN \l_@@_gr_type_tl \l_keys_choice_tl },
%    \end{macrocode}
% 蟄ｦ菴咲ｱｻ蝙九�
%    \begin{macrocode}
    degree-type .choices:nn = { 蟄ｦ譛ｯ, 荳謎ｸ� }
      { \tl_set_eq:NN \l_@@_degree_type_tl \l_keys_choice_tl },
%    \end{macrocode}
% 蟄ｦ菴咲ｱｻ蛻ｫ縲�
%    \begin{macrocode}
    degree .tl_set:N = \l_@@_degree_str,
    degree* .tl_set:N = \l_@@_degree_en_str,
%    \end{macrocode}
% 菴懆�ｧ灘錐諡ｼ髻ｳ縲�
%    \begin{macrocode}
    author* .tl_set:N = \l_@@_author_en_str,
%    \end{macrocode}
% 蟇ｼ蟶亥ｧ灘錐諡ｼ髻ｳ縲�
%    \begin{macrocode}
    supervisor* .clist_set:N = \l_@@_supv_en_clist,
%    \end{macrocode}
% 譬｡螟門ｯｼ蟶亥ｧ灘錐諡ｼ髻ｳ縲�
%    \begin{macrocode}
    supv-ent* .tl_set:N = \l_@@_supv_ent_en_str,
    supervisor-enterprise* .tl_set:N = \l_@@_supv_ent_en_str,
%    \end{macrocode}
% 蟇ｼ蟶郁′遘ｰ縲�
%    \begin{macrocode}
    supv-title .clist_set:N = \l_@@_supv_t_clist,
    supervisor-title .clist_set:N = \l_@@_supv_t_clist,
    supv-title* .clist_set:N = \l_@@_supv_t_en_clist,
    supervisor-title* .clist_set:N = \l_@@_supv_t_en_clist,
%    \end{macrocode}
% 譬｡螟門ｯｼ蟶郁′遘ｰ縲�
%    \begin{macrocode}
    supv-ent-title .tl_set:N = \l_@@_supv_ent_t_str,
    supervisor-enterprise-title .tl_set:N = \l_@@_supv_ent_t_str,
    supv-ent-title* .tl_set:N = \l_@@_supv_ent_t_en_str,
    supervisor-enterprise-title* .tl_set:N = \l_@@_supv_ent_t_en_str,
%    \end{macrocode}
% 隶ｺ譁���｢倩恭譁��
%    \begin{macrocode}
    title* .tl_set:N = \l_@@_title_en_str,
%    \end{macrocode}
% 荳郤ｧ蟄ｦ遘題恭譁�錐遘ｰ縲�
%    \begin{macrocode}
    major* .tl_set:N = \l_@@_major_en_str,
%    \end{macrocode}
% 莠檎ｺｧ蟄ｦ遘代�
%    \begin{macrocode}
    sub-major .tl_set:N = \l_@@_sub_major_str,
%    \end{macrocode}
% 鬚�沺縲�
%    \begin{macrocode}
    domain .tl_set:N = \l_@@_domain_str,
%    \end{macrocode}
% 荳ｭ蝗ｾ蛻�ｱｻ蜿ｷ縲�
%    \begin{macrocode}
    clc .tl_set:N = \l_@@_clc_str,
%    \end{macrocode}
% 蟇�ｺｧ縲�
%    \begin{macrocode}
    secret-level .choices:nn = { 遘伜ｯ�, 蜈ｬ蠑 }
      { \tl_set_eq:NN \l_@@_secret_lv_str \l_keys_choice_tl },
%    \end{macrocode}
% 菫晏ｯ�ｹｴ髯舌�
%    \begin{macrocode}
    secret-year .tl_set:N = \l_@@_secret_year_str,
%    \end{macrocode}
% 謠蝉ｺ､譌･譛溘�
%    \begin{macrocode}
    submit-date .tl_set:N = \l_@@_submit_date_str,
%    \end{macrocode}
% 螢ｰ譏朱｡ｵ謇ｫ謠乗枚莉ｶ霍ｯ蠕��
%    \begin{macrocode}
    statement-scan .tl_set:N = \l_@@_statement_scan_str,
%    \end{macrocode}
% 螢ｰ譏朱｡ｵ遲ｾ蜷肴枚莉ｶ霍ｯ蠕��
%    \begin{macrocode}
    statement-sign .clist_set:N = \l_@@_statement_sign_clist,
%    \end{macrocode}
% 隨ｦ蜿ｷ蟇ｹ辣ｧ陦ｨ譁�ｻｶ霍ｯ蠕��
%    \begin{macrocode}
    los .tl_set:N = \l_@@_los_str,
%    \end{macrocode}
% 郛ｩ逡･隸ｭ蟇ｹ辣ｧ陦ｨ譁�ｻｶ霍ｯ蠕��
%    \begin{macrocode}
    loa .tl_set:N = \l_@@_loa_str,
%    \end{macrocode}
% 菴懆�ｮ莉区枚莉ｶ霍ｯ蠕��
%    \begin{macrocode}
    bio .tl_set:N = \l_@@_bio_str
  }
%    \end{macrocode}
% \end{macro}
% \begin{macro}{\keys_set:nn}
% \changes{v1.7.1.0}{2022/05/02}{隶ｾ鄂ｮ遐皮ｩｶ逕溽ｱｻ蝙矩ｻ倩ｮ､蛟ｼ}
% \changes{v1.7.2.0}{2022/05/02}{菫ｮ豁｣guard}
% 蛻晏ｧ玖ｮｾ鄂ｮ縲�
%    \begin{macrocode}
\keys_set:nn { xdu }
  {
    info / graduate-type                = 遑募｣ｫ,
    info / degree-type                  = 蟄ｦ譛ｯ,
    info / degree                       = { },
    info / degree*                      = { },
    info / author*                      = { },
    info / supervisor*                  = { },
    info / supv-ent*                    = { },
    info / supervisor-enterprise*       = { },
    info / supv-title                   = { },
    info / supervisor-title             = { },
    info / supv-title*                  = { },
    info / supervisor-title*            = { },
    info / supv-ent-title               = { },
    info / supervisor-enterprise-title  = { },
    info / supv-ent-title*              = { },
    info / supervisor-enterprise-title* = { },
    info / title*                       = { },
    info / major*                       = { },
    info / sub-major                    = { },
    info / domain                       = { },
    info / clc                          = { },
    info / secret-level                 = 蜈ｬ蠑,
    info / secret-year                  = { },
    info / submit-date                  = { },
    info / statement-scan               = { },
    info / statement-sign               = { },
    info / los                          = { },
    info / loa                          = { },
    info / bio                          = { }
  }
%    \end{macrocode}
% \end{macro}
% \begin{variable}
%   {
%     \l_@@_supv_en_str,
%     \l_@@_supv_ii_en_str,
%     \l_@@_supv_t_str,
%     \l_@@_supv_ii_t_str,
%     \l_@@_supv_t_en_str,
%     \l_@@_supv_ii_t_en_str
%   }
% \changes{v1.16.0.0}{2022/05/22}{諡��蟇ｼ蟶郁恭譁�ｧ灘錐蜥御ｸｭ闍ｱ譁�′遘ｰ}
% 諡��蟇ｼ蟶郁恭譁�ｧ灘錐蜥御ｸｭ闍ｱ譁�′遘ｰ縲�
%    \begin{macrocode}
\str_new:N \l_@@_supv_en_str
\str_new:N \l_@@_supv_ii_en_str
\str_new:N \l_@@_supv_t_str
\str_new:N \l_@@_supv_ii_t_str
\str_new:N \l_@@_supv_t_en_str
\str_new:N \l_@@_supv_ii_t_en_str
\ctex_at_end_preamble:n
  {
    \str_set:Nx \l_@@_supv_en_str
      { \clist_item:Nn \l_@@_supv_en_clist   { 1 } }
    \str_set:Nx \l_@@_supv_ii_en_str
      { \clist_item:Nn \l_@@_supv_en_clist   { 2 } }
    \str_set:Nx \l_@@_supv_t_str
      { \clist_item:Nn \l_@@_supv_t_clist    { 1 } }
    \str_set:Nx \l_@@_supv_ii_t_str
      { \clist_item:Nn \l_@@_supv_t_clist    { 2 } }
    \str_set:Nx \l_@@_supv_t_en_str
      { \clist_item:Nn \l_@@_supv_t_en_clist { 1 } }
    \str_set:Nx \l_@@_supv_ii_t_en_str
      { \clist_item:Nn \l_@@_supv_t_en_clist { 2 } }
  }
%    \end{macrocode}
% \end{variable}
% \changes{v2.7.0.0}{2022/06/26}{鬘ｵ髱｢遘ｻ髯､蠑蜈ｳ}
% \subsection{鬘ｵ髱｢遘ｻ髯､蠑蜈ｳ}
% \label{鬘ｵ髱｢遘ｻ髯､蠑蜈ｳ}
% \begin{variable}
%   {
%     \l_@@_rm_page_clist,
%     \l_@@_rm_header_bool,
%     \l_@@_rm_footer_bool
%   }
% 鬘ｵ髱｢遘ｻ髯､蠑蜈ｳ縲�
%    \begin{macrocode}
\clist_new:N \l_@@_rm_page_clist
%    \end{macrocode}
% 鬘ｵ逵臥ｧｻ髯､蠑蜈ｳ縲�
%    \begin{macrocode}
\bool_new:N \l_@@_rm_header_bool
%    \end{macrocode}
% 鬘ｵ閼夂ｧｻ髯､蠑蜈ｳ縲�
%    \begin{macrocode}
\bool_new:N \l_@@_rm_footer_bool
%    \end{macrocode}
% \end{variable}
% \begin{macro}{\keys_define:nn}
% 螳壻ｹ画�ｷ蠑城醗蛟ｼ縲�
%    \begin{macrocode}
\keys_define:nn { xdu / style }
  {
%    \end{macrocode}
% 隶ｾ鄂ｮ鬘ｵ髱｢遘ｻ髯､蠑蜈ｳ縲�
%    \begin{macrocode}
    remove-page .clist_set:N = \l_@@_rm_page_clist,
    remove-header .bool_set:N = \l_@@_rm_header_bool,
    remove-footer .bool_set:N = \l_@@_rm_footer_bool
  }
%    \end{macrocode}
% \end{macro}
% \begin{macro}{\keys_set:nn}
% 蛻晏ｧ玖ｮｾ鄂ｮ縲�
%    \begin{macrocode}
\keys_set:nn { xdu }
  {
    style / remove-page   = { },
    style / remove-header = false,
    style / remove-footer = false
  }
%    \end{macrocode}
% \end{macro}
% \begin{variable}
%   {
%     \l_@@_rm_cover_bool,
%     \l_@@_rm_title_page_bool,
%     \l_@@_rm_statement_bool,
%     \l_@@_rm_abstract_bool,
%     \l_@@_rm_lof_bool,
%     \l_@@_rm_lot_bool,
%     \l_@@_rm_los_bool,
%     \l_@@_rm_loa_bool,
%     \l_@@_rm_toc_bool,
%     \l_@@_rm_appendix_bool,
%     \l_@@_rm_ref_bool,
%     \l_@@_rm_ack_bool,
%     \l_@@_rm_bio_bool
%   }
% 蟆�擇縲�
%    \begin{macrocode}
\bool_new:N \l_@@_rm_cover_bool
%    \end{macrocode}
% 荳ｭ闍ｱ譁�｢伜錐鬘ｵ縲�
%    \begin{macrocode}
\bool_new:N \l_@@_rm_title_page_bool
%    \end{macrocode}
% 螢ｰ譏朱｡ｵ縲�
%    \begin{macrocode}
\bool_new:N \l_@@_rm_statement_bool
%    \end{macrocode}
% 荳ｭ闍ｱ譁�遭隕√�
%    \begin{macrocode}
\bool_new:N \l_@@_rm_abstract_bool
%    \end{macrocode}
% 邏｢蠑輔�
%    \begin{macrocode}
\bool_new:N \l_@@_rm_lof_bool
\bool_new:N \l_@@_rm_lot_bool
%    \end{macrocode}
% 隨ｦ蜿ｷ蟇ｹ辣ｧ陦ｨ蜥檎ｼｩ逡･隸ｭ蟇ｹ辣ｧ陦ｨ縲�
%    \begin{macrocode}
\bool_new:N \l_@@_rm_los_bool
\bool_new:N \l_@@_rm_loa_bool
%    \end{macrocode}
% 逶ｮ蠖輔�
%    \begin{macrocode}
\bool_new:N \l_@@_rm_toc_bool
%    \end{macrocode}
% 髯�ｽ輔�
%    \begin{macrocode}
\bool_new:N \l_@@_rm_appendix_bool
%    \end{macrocode}
% 蜿り�枚迪ｮ縲�
%    \begin{macrocode}
\bool_new:N \l_@@_rm_ref_bool
%    \end{macrocode}
% 閾ｴ隹｢縲�
%    \begin{macrocode}
\bool_new:N \l_@@_rm_ack_bool
%    \end{macrocode}
% 菴懆�ｮ莉九�
%    \begin{macrocode}
\bool_new:N \l_@@_rm_bio_bool
%    \end{macrocode}
% \end{variable}
% \begin{macro}{\clist_if_in:NnT,\bool_set_true:N}
% 隶ｾ鄂ｮ鬘ｵ髱｢遘ｻ髯､蠑蜈ｳ蟶�ｰ泌ｼ縲�
%    \begin{macrocode}
\ctex_at_end_preamble:n
  {
    \clist_if_in:NnT \l_@@_rm_page_clist { 蟆�擇 }
      { \bool_set_true:N \l_@@_rm_cover_bool }
    \clist_if_in:NnT \l_@@_rm_page_clist { 謠仙錐鬘ｵ }
      { \bool_set_true:N \l_@@_rm_title_page_bool }
    \clist_if_in:NnT \l_@@_rm_page_clist { 鬚伜錐鬘ｵ }
      { \bool_set_true:N \l_@@_rm_title_page_bool }
    \clist_if_in:NnT \l_@@_rm_page_clist { 螢ｰ譏朱｡ｵ }
      { \bool_set_true:N \l_@@_rm_statement_bool }
    \clist_if_in:NnT \l_@@_rm_page_clist { 鞫倩ｦ� }
      { \bool_set_true:N \l_@@_rm_abstract_bool }
    \clist_if_in:NnT \l_@@_rm_page_clist { 邏｢蠑� }
      {
        \bool_set_true:N \l_@@_rm_lof_bool
        \bool_set_true:N \l_@@_rm_lot_bool
      }
    \clist_if_in:NnT \l_@@_rm_page_clist { 謠貞崟邏｢蠑� }
      { \bool_set_true:N \l_@@_rm_lof_bool }
    \clist_if_in:NnT \l_@@_rm_page_clist { 陦ｨ譬ｼ邏｢蠑� }
      { \bool_set_true:N \l_@@_rm_lot_bool }
    \clist_if_in:NnT \l_@@_rm_page_clist { 蟇ｹ辣ｧ陦ｨ }
      {
        \bool_set_true:N \l_@@_rm_los_bool
        \bool_set_true:N \l_@@_rm_loa_bool
      }
    \clist_if_in:NnT \l_@@_rm_page_clist { 隨ｦ蜿ｷ蟇ｹ辣ｧ陦ｨ }
      { \bool_set_true:N \l_@@_rm_los_bool }
    \clist_if_in:NnT \l_@@_rm_page_clist { 郛ｩ逡･隸ｭ蟇ｹ辣ｧ陦ｨ }
      { \bool_set_true:N \l_@@_rm_loa_bool }
    \clist_if_in:NnT \l_@@_rm_page_clist { 逶ｮ蠖� }
      { \bool_set_true:N \l_@@_rm_toc_bool }
    \clist_if_in:NnT \l_@@_rm_page_clist { 髯�ｽ� }
      { \bool_set_true:N \l_@@_rm_appendix_bool }
    \clist_if_in:NnT \l_@@_rm_page_clist { 蜿り�枚迪ｮ }
      { \bool_set_true:N \l_@@_rm_ref_bool }
    \clist_if_in:NnT \l_@@_rm_page_clist { 閾ｴ隹｢ }
      { \bool_set_true:N \l_@@_rm_ack_bool }
    \clist_if_in:NnT \l_@@_rm_page_clist { 菴懆�ｮ莉� }
      { \bool_set_true:N \l_@@_rm_bio_bool }
  }
%    \end{macrocode}
% \end{macro}
% \changes{v2.10.0.0}{2022/06/26}{蛹ｿ蜷榊多莉､}
% \subsection{蛹ｿ蜷肴桃菴怡
% \label{蛹ｿ蜷肴桃菴怡
% \begin{variable}{\l_@@_anon_bool}
% 蛹ｿ蜷榊ｼ蜈ｳ縲�
%    \begin{macrocode}
\bool_new:N \l_@@_anon_bool
%    \end{macrocode}
% \end{variable}
% \begin{macro}{\keys_define:nn}
% 螳壻ｹ画�ｷ蠑城醗蛟ｼ縲�
%    \begin{macrocode}
\keys_define:nn { xdu / style }
  {
%    \end{macrocode}
% 蛹ｿ蜷肴桃菴懊�
%    \begin{macrocode}
    anonymous .bool_set:N = \l_@@_anon_bool
  }
%    \end{macrocode}
% \end{macro}
% \begin{macro}{\keys_set:nn}
% 蛻晏ｧ玖ｮｾ鄂ｮ縲�
%    \begin{macrocode}
\keys_set:nn { xdu }
  {
    style / anonymous = false
  }
%    \end{macrocode}
% \end{macro}
% \begin{macro}{\anon}
% 蛹ｿ蜷榊多莉､縲�
%    \begin{macrocode}
\NewDocumentCommand \anon { O { XXX } m }
  {
    \bool_if:NTF \l_@@_anon_bool
      { #1 } { #2 }
  }
%    \end{macrocode}
% \end{macro}
%    \begin{macrocode}
%&lt;/xdupgthesis&gt;
%&lt;*thesis|xduugtp&gt;
%    \end{macrocode}
% \subsection{譬�ｭｾ螳城�鄂ｮ}
% \label{譬�ｭｾ螳城�鄂ｮ}
% \begin{macro}
%   {
%     \figurename,
%     \figname,
%     \tablename,
%     \tabname,
%   }
% \changes{v1.21.0.0}{2022/06/01}{驟咲ｽｮ蝗ｾ陦ｨ譬�ｭｾ螳殉
%    \begin{macrocode}
\cs_set:Npn \figurename { \@@_lang_switch:nn { 蝗ｾ } { Figure } }
\cs_new_eq:NN \figname \figurename
\cs_set:Npn \tablename  { \@@_lang_switch:nn { 陦ｨ } { Table  } }
\cs_new_eq:NN \tabname \tablename
%    \end{macrocode}
% \end{macro}
% \subsection{譬ｷ蠑城�鄂ｮ}
% \begin{variable}
%   {
%     \l_@@_title_bold_math_bool,
%     \l_@@_en_cjk_font_bool,
%     \l_@@_lang_tl,
%     \l_@@_bib_tool_tl,
%     \l_@@_biblatex_option_tl,
%     \l_@@_search_path_clist,
%     \l_@@_fix_input_bool,
%     \l_@@_fix_include_bool,
%     \l_@@_fix_graphics_bool,
%     \l_@@_ref_add_space_bool,
%     \l_@@_cap_label_sep_tl,
%     \l_@@_ft_cap_format_tl,
%     \l_@@_alg_cap_format_tl,
%     \l_@@_ft_cap_align_tl,
%     \l_@@_alg_cap_align_tl,
%     \l_@@_add_alg_rule_vspace_bool,
%     \l_@@_tab_small_bool,
%     \l_@@__figure_align_tl,
%     \l_@@__table_align_tl,
%     \l_@@_alg_small_cap_bool,
%     \l_@@_alg_small_bool,
%     \l_@@_before_skip_clist,
%     \l_@@_after_skip_clist,
%     \l_@@_chap_tl,
%     \l_@@_sec_tl,
%     \l_@@_subsec_tl,
%     \l_@@_subsubsec_tl,
%     \l_@@_para_tl,
%     \l_@@_subpara_tl,
%     \l_@@_sym_mgn_bool,
%     \l_@@_page_v_align_tl
%   }
% 譬�｢俶焚蟄ｦ蟄嶺ｽ捺弍蜷ｦ蜉�邊励�
%    \begin{macrocode}
\bool_new:N \l_@@_title_bold_math_bool
%    \end{macrocode}
% \changes{v2.12.0.2}{2022/07/01}{邊ｾ邂蜿倬㍼蜷咲ｧｰ}
% 闍ｱ譁�弍蜷ｦ菴ｿ逕ｨ荳ｭ譁�ｭ嶺ｽ薙�
%    \begin{macrocode}
\bool_new:N \l_@@_en_cjk_font_bool
%    \end{macrocode}
% 隸ｭ險縲�
%    \begin{macrocode}
\tl_new:N \l_@@_lang_tl
%    \end{macrocode}
% 蜿り�枚迪ｮ謾ｯ謖∵婿蠑上�
%    \begin{macrocode}
\tl_new:N \l_@@_bib_tool_tl
%    \end{macrocode}
% 菫ｮ謾ｹ\pkgx{biblatex}鮟倩ｮ､騾蛾｡ｹ縲�
%    \begin{macrocode}
\tl_new:N \l_@@_biblatex_option_tl
%    \end{macrocode}
% 隶ｾ鄂ｮ譁�ｻｶ謳懃ｴ｢霍ｯ蠕��
%    \begin{macrocode}
\clist_new:N \l_@@_search_path_clist
%    \end{macrocode}
% 譏ｯ蜷ｦ菫ｮ螟肴枚莉ｶ蟇ｼ蜈･蜻ｽ莉､縲�
%    \begin{macrocode}
\bool_new:N \l_@@_fix_input_bool
\bool_new:N \l_@@_fix_include_bool
\bool_new:N \l_@@_fix_graphics_bool
%    \end{macrocode}
% 譏ｯ蜷ｦ蝨ｨ\tnx{ref}蜥圭tnx{pageref}荳､萓ｧ閾ｪ蜉ｨ隹�紛荳ｭ闍ｱ譁�龍遨ｺ逋ｽ縲�
%    \begin{macrocode}
\tl_new:N \l_@@_ref_add_space_bool
%    \end{macrocode}
% 譬�ｭｾ荳主錘髱｢譬�｢倅ｹ矩龍逧�龍霍昴�
%    \begin{macrocode}
\tl_new:N \l_@@_cap_label_sep_tl
%    \end{macrocode}
% 蝗ｾ縲∬｡ｨ縲∫ｮ玲ｳ苗aption譬ｼ蠑上�
%    \begin{macrocode}
\tl_new:N \l_@@_ft_cap_format_tl
\tl_new:N \l_@@_alg_cap_format_tl
%    \end{macrocode}
% 蝗ｾ縲∬｡ｨ縲∫ｮ玲ｳ苗aption蟇ｹ鮨先婿蠑上�
%    \begin{macrocode}
\tl_new:N \l_@@_ft_cap_align_tl
\tl_new:N \l_@@_alg_cap_align_tl
%    \end{macrocode}
% 隶ｾ鄂ｮ邂玲ｳ穂ｸ臥ｺｿ髣ｴ霍昴�
%    \begin{macrocode}
\bool_new:N \l_@@_add_alg_rule_vspace_bool
%    \end{macrocode}
% 隶ｾ鄂ｮ陦ｨ譬ｼ蟄怜捷譏ｯ蜷ｦ荳ｺ莠泌捷縲�
%    \begin{macrocode}
\bool_new:N \l_@@_tab_small_bool
%    \end{macrocode}
% 隶ｾ鄂ｮ蝗ｾ陦ｨ蜀�ｮｹ蟇ｹ鮨先婿蠑上�
%    \begin{macrocode}
\tl_new:N \l_@@_figure_align_tl
\tl_new:N \l_@@_table_align_tl
%    \end{macrocode}
% 隶ｾ鄂ｮ邂玲ｳ匹aption蟄怜捷譏ｯ蜷ｦ荳ｺ莠泌捷縲�
%    \begin{macrocode}
\bool_new:N \l_@@_alg_small_cap_bool
%    \end{macrocode}
% 隶ｾ鄂ｮ邂玲ｳ募�螳ｹ蟄怜捷譏ｯ蜷ｦ荳ｺ莠泌捷縲�
%    \begin{macrocode}
\bool_new:N \l_@@_alg_small_bool
%    \end{macrocode}
% 隶ｾ鄂ｮ遶�闃よ��｢伜燕蜷守噪蝙ら峩髣ｴ霍昴�
%    \begin{macrocode}
\clist_new:N \l_@@_before_skip_clist
\clist_new:N \l_@@_after_skip_clist
%    \end{macrocode}
% 隶ｾ鄂ｮ遶�闃よ��｢伜ｭ怜捷縲�
%    \begin{macrocode}
\tl_new:N \l_@@_chap_tl
\tl_new:N \l_@@_sec_tl
\tl_new:N \l_@@_subsec_tl
\tl_new:N \l_@@_subsubsec_tl
\tl_new:N \l_@@_para_tl
\tl_new:N \l_@@_subpara_tl
%    \end{macrocode}
% 隶ｾ鄂ｮ鬘ｵ霎ｹ霍晄弍蜷ｦ蟇ｹ遘ｰ縲�
%    \begin{macrocode}
\bool_new:N \l_@@_sym_mgn_bool
%    \end{macrocode}
% 隶ｾ鄂ｮ鬘ｵ髱｢蝙ら峩譁ｹ蜷醍噪蟇ｹ鮨先婿蠑上�
%    \begin{macrocode}
\tl_new:N \l_@@_page_v_align_tl
%    \end{macrocode}
% \end{variable}
% \begin{macro}{\keys_define:nn}
% 螳壻ｹ画�ｷ蠑城醗蛟ｼ縲�
%    \begin{macrocode}
\keys_define:nn { xdu / style }
  {
%    \end{macrocode}
% 譬�｢俶焚蟄ｦ蟄嶺ｽ捺弍蜷ｦ蜉�邊励�
%    \begin{macrocode}
    title-bold-math .bool_set:N = \l_@@_title_bold_math_bool,
%    \end{macrocode}
% 闍ｱ譁�弍蜷ｦ菴ｿ逕ｨ荳ｭ譁�ｭ嶺ｽ薙�
%    \begin{macrocode}
    en-cjk-font .bool_set:N = \l_@@_en_cjk_font_bool,
%    \end{macrocode}
% 隶ｺ譁�ｯｭ險驟咲ｽｮ縲�
%    \begin{macrocode}
    language .choices:nn = { zh, en }
      { \tl_set_eq:NN \l_@@_lang_tl \l_keys_choice_tl },
%    \end{macrocode}
% 蜿り�枚迪ｮ謾ｯ謖∵婿蠑城�鄂ｮ縲�
%    \begin{macrocode}
    bib-backend .choices:nn = { bibtex, biblatex }
      { \tl_set_eq:NN \l_@@_bib_tool_tl \l_keys_choice_tl },
%    \end{macrocode}
% 菫ｮ謾ｹ\pkgx{biblatex}鮟倩ｮ､騾蛾｡ｹ縲�
%    \begin{macrocode}
    biblatex-option .tl_set:N = \l_@@_biblatex_option_tl,
%    \end{macrocode}
% 隶ｾ鄂ｮ譁�ｻｶ謳懃ｴ｢霍ｯ蠕��
%    \begin{macrocode}
    file-search-path .clist_set:N = \l_@@_search_path_clist,
%    \end{macrocode}
% 譏ｯ蜷ｦ菫ｮ螟肴枚莉ｶ蟇ｼ蜈･蜻ｽ莉､縲�
%    \begin{macrocode}
    fix-input .bool_set:N = \l_@@_fix_input_bool,
    fix-include .bool_set:N = \l_@@_fix_include_bool,
    fix-includegraphics .bool_set:N = \l_@@_fix_graphics_bool,
%    \end{macrocode}
% 譏ｯ蜷ｦ蝨ｨ\tnx{ref}蜥圭tnx{pageref}荳､萓ｧ閾ｪ蜉ｨ隹�紛荳ｭ闍ｱ譁�龍遨ｺ逋ｽ縲�
%    \begin{macrocode}
    ref-add-space .bool_set:N = \l_@@_ref_add_space_bool,
%    \end{macrocode}
% 譬�ｭｾ荳主錘髱｢譬�｢倅ｹ矩龍逧�龍霍昴�
%    \begin{macrocode}
    caption-label-sep .tl_set:N = \l_@@_cap_label_sep_tl,
%    \end{macrocode}
% 蝗ｾ縲∬｡ｨ縲∫ｮ玲ｳ苗aption譬ｼ蠑上�
%    \begin{macrocode}
    ft-caption-format .choices:nn = { plain, hang }
      { \tl_set_eq:NN \l_@@_ft_cap_format_tl \l_keys_choice_tl },
    alg-caption-format .choices:nn = { plain, hang }
      { \tl_set_eq:NN \l_@@_alg_cap_format_tl \l_keys_choice_tl },
%    \end{macrocode}
% 蝗ｾ縲∬｡ｨ縲∫ｮ玲ｳ苗aption蟇ｹ鮨先婿蠑上�
%    \begin{macrocode}
    ft-caption-align .choices:nn = { left, centering, centering-left }
      { \tl_set_eq:NN \l_@@_ft_cap_align_tl \l_keys_choice_tl },
    alg-caption-align .choices:nn = { left, centering, centering-left }
      { \tl_set_eq:NN \l_@@_alg_cap_align_tl \l_keys_choice_tl },
%    \end{macrocode}
% 隶ｾ鄂ｮ邂玲ｳ穂ｸ臥ｺｿ髣ｴ霍昴�
%    \begin{macrocode}
    add-alg-rule-vspace .bool_set:N = \l_@@_add_alg_rule_vspace_bool,
%    \end{macrocode}
% 隶ｾ鄂ｮ陦ｨ譬ｼ蟄怜捷譏ｯ蜷ｦ荳ｺ莠泌捷縲�
%    \begin{macrocode}
    table-small-font .bool_set:N = \l_@@_tab_small_bool,
%    \end{macrocode}
% 隶ｾ鄂ｮ蝗ｾ陦ｨ蜀�ｮｹ蟇ｹ鮨先婿蠑上�
%    \begin{macrocode}
    figure-align .choices:nn = { left, centering, right }
      { \tl_set_eq:NN \l_@@_figure_align_tl \l_keys_choice_tl },
    table-align .choices:nn = { left, centering, right }
      { \tl_set_eq:NN \l_@@_table_align_tl \l_keys_choice_tl },
%    \end{macrocode}
% 隶ｾ鄂ｮ邂玲ｳ匹aption蟄怜捷譏ｯ蜷ｦ荳ｺ莠泌捷縲�
%    \begin{macrocode}
    alg-small-caption .bool_set:N = \l_@@_alg_small_cap_bool,
    algorithm-small-caption .bool_set:N = \l_@@_alg_small_cap_bool,
%    \end{macrocode}
% 隶ｾ鄂ｮ邂玲ｳ募�螳ｹ蟄怜捷譏ｯ蜷ｦ荳ｺ莠泌捷縲�
%    \begin{macrocode}
    alg-small-font .bool_set:N = \l_@@_alg_small_bool,
    algorithm-small-font .bool_set:N = \l_@@_alg_small_bool,
%    \end{macrocode}
% 隶ｾ鄂ｮ遶�闃よ��｢伜燕逧�桙逶ｴ髣ｴ霍昴�
%    \begin{macrocode}
    before-skip .clist_set:N = \l_@@_before_skip_clist,
%    \end{macrocode}
% 隶ｾ鄂ｮ遶�闃よ��｢伜錘逧�桙逶ｴ髣ｴ霍昴�
%    \begin{macrocode}
    after-skip .clist_set:N = \l_@@_after_skip_clist,
%    \end{macrocode}
% 隶ｾ鄂ｮ遶�闃よ��｢伜ｭ怜捷縲�
%    \begin{macrocode}
    chap-zihao .tl_set:N = \l_@@_chap_tl,
    sec-zihao .tl_set:N = \l_@@_sec_tl,
    subsec-zihao .tl_set:N = \l_@@_subsec_tl,
    subsubsec-zihao .tl_set:N = \l_@@_subsubsec_tl,
    para-zihao .tl_set:N = \l_@@_para_tl,
    subpara-zihao .tl_set:N = \l_@@_subpara_tl,
%    \end{macrocode}
% 隶ｾ鄂ｮ鬘ｵ霎ｹ霍晄弍蜷ｦ蟇ｹ遘ｰ縲�
%    \begin{macrocode}
    symmetric-margin .bool_set:N = \l_@@_sym_mgn_bool,
%    \end{macrocode}
% 隶ｾ鄂ｮ鬘ｵ髱｢蝙ら峩譁ｹ蜷醍噪蟇ｹ鮨先婿蠑上�
%    \begin{macrocode}
    page-vertical-align .tl_set:N = \l_@@_page_v_align_tl
  }
%    \end{macrocode}
% \end{macro}
% \begin{macro}{\keys_set:nn}
% 蛻晏ｧ玖ｮｾ鄂ｮ縲�
%    \begin{macrocode}
\keys_set:nn { xdu }
  {
    style / title-bold-math         = false,
    style / en-cjk-font             = false,
    style / language                = zh,
    style / bib-backend             = biblatex,
    style / biblatex-option         = { },
    style / file-search-path        = { },
    style / fix-input               = false,
    style / fix-include             = false,
    style / fix-includegraphics     = false,
    style / ref-add-space           = false,
    style / caption-label-sep       = 0.75em,
    style / ft-caption-format       = hang,
    style / alg-caption-format      = hang,
    style / ft-caption-align        = centering-left,
    style / alg-caption-align       = left,
    style / add-alg-rule-vspace     = false,
    style / table-small-font        = true,
    style / figure-align            = centering,
    style / table-align             = centering,
    style / alg-small-caption       = true,
    style / algorithm-small-caption = true,
    style / alg-small-font          = true,
    style / algorithm-small-font    = true,
    style / before-skip             = { 24pt, 18pt, 12pt, 12pt, 12pt, 12pt },
    style / after-skip              = { 18pt, 12pt, 6pt, 6pt, 6pt, 6pt },
    style / symmetric-margin        = false,
    style / page-vertical-align     = 鬘ｶ驛ｨ蟇ｹ鮨�
  }
%    \end{macrocode}
% \end{macro}
% \changes{v4.4.0.0}{2023/02/03}{譬�｢俶焚蟄ｦ蟄嶺ｽ馴�鄂ｮ}
% \subsection{譬�｢俶焚蟄ｦ蟄嶺ｽ馴�鄂ｮ}
% \begin{macro}{\@@_bold_math:}
% 閾ｪ螳壻ｹ画焚蟄ｦ蟄嶺ｽ灘刈邊怜多莉､縲�
%    \begin{macrocode}
\cs_new:Npn \@@_bold_math: { }
\ctex_at_end_preamble:n
  {
    \bool_if:NT \l_@@_title_bold_math_bool
      {
        \tl_if_eq:NnT \l_@@_math_font_tl { cm }
          { \cs_set_eq:NN \@@_bold_math: \boldmath }
      }
  }
%    \end{macrocode}
% \end{macro}
%    \begin{macrocode}
%&lt;/thesis|xduugtp&gt;
%&lt;*xdupgthesis&gt;
%    \end{macrocode}
% \changes{v1.22.0.0}{2022/06/05}{蟇ｹ辣ｧ陦ｨ譬ｷ蠑城�鄂ｮ}
% \subsection{蟇ｹ辣ｧ陦ｨ譬ｷ蠑城�鄂ｮ}
% \begin{variable}
%   {
%     \l_@@_customize_los_bool,
%     \l_@@_customize_loa_bool,
%     \l_@@_colspec_los_tl,
%     \l_@@_colspec_loa_tl,
%     \l_@@_title_row_los_bool,
%     \l_@@_title_row_los_bool,
%   }
% 譏ｯ蜷ｦ螳悟�閾ｪ螳壻ｹ臥ｬｦ蜿ｷ蟇ｹ辣ｧ縲�
%    \begin{macrocode}
\bool_new:N \l_@@_customize_los_bool
%    \end{macrocode}
% 譏ｯ蜷ｦ螳悟�閾ｪ螳壻ｹ臥ｼｩ逡･隸ｭ蟇ｹ辣ｧ陦ｨ縲�
%    \begin{macrocode}
\bool_new:N \l_@@_customize_loa_bool
%    \end{macrocode}
% 隨ｦ蜿ｷ蟇ｹ辣ｧ陦ｨ蛻玲�ｼ蠑上�
%    \begin{macrocode}
\tl_new:N \l_@@_colspec_los_tl
%    \end{macrocode}
% 郛ｩ逡･隸ｭ蟇ｹ辣ｧ陦ｨ蛻玲�ｼ蠑上�
%    \begin{macrocode}
\tl_new:N \l_@@_colspec_loa_tl
%    \end{macrocode}
% 譏ｯ蜷ｦ豈城｡ｵ蝮�仞遉ｺ隨ｦ蜿ｷ蟇ｹ辣ｧ陦ｨ譬�｢倩｡後�
%    \begin{macrocode}
\bool_new:N \l_@@_title_row_los_bool
%    \end{macrocode}
% 譏ｯ蜷ｦ豈城｡ｵ蝮�仞遉ｺ郛ｩ逡･隸ｭ蟇ｹ辣ｧ陦ｨ譬�｢倩｡後�
%    \begin{macrocode}
\bool_new:N \l_@@_title_row_loa_bool
%    \end{macrocode}
% \end{variable}
% \begin{macro}{\keys_define:nn}
% 螳壻ｹ我ｿ｡諱ｯ髞ｮ蛟ｼ縲�
%    \begin{macrocode}
\keys_define:nn { xdu / style }
  {
%    \end{macrocode}
% 譏ｯ蜷ｦ螳悟�閾ｪ螳壻ｹ臥ｬｦ蜿ｷ蟇ｹ辣ｧ縲�
%    \begin{macrocode}
    customize-los .bool_set:N = \l_@@_customize_los_bool,
%    \end{macrocode}
% 譏ｯ蜷ｦ螳悟�閾ｪ螳壻ｹ臥ｼｩ逡･隸ｭ蟇ｹ辣ｧ陦ｨ縲�
%    \begin{macrocode}
    customize-loa .bool_set:N = \l_@@_customize_loa_bool,
%    \end{macrocode}
% 隨ｦ蜿ｷ蟇ｹ辣ｧ陦ｨ蛻玲�ｼ蠑上�
%    \begin{macrocode}
    colspec-los .tl_set:N = \l_@@_colspec_los_tl,
%    \end{macrocode}
% 郛ｩ逡･隸ｭ蟇ｹ辣ｧ陦ｨ蛻玲�ｼ蠑上�
%    \begin{macrocode}
    colspec-loa .tl_set:N = \l_@@_colspec_loa_tl,
%    \end{macrocode}
% 譏ｯ蜷ｦ豈城｡ｵ蝮�仞遉ｺ隨ｦ蜿ｷ蟇ｹ辣ｧ陦ｨ譬�｢倩｡後�
%    \begin{macrocode}
    title-row-los .bool_set:N = \l_@@_title_row_los_bool,
%    \end{macrocode}
% 譏ｯ蜷ｦ豈城｡ｵ蝮�仞遉ｺ郛ｩ逡･隸ｭ蟇ｹ辣ｧ陦ｨ譬�｢倩｡後�
%    \begin{macrocode}
    title-row-loa .bool_set:N = \l_@@_title_row_loa_bool
  }
%    \end{macrocode}
% \end{macro}
% \begin{macro}{\keys_set:nn}
% 蛻晏ｧ玖ｮｾ鄂ｮ縲�
%    \begin{macrocode}
\keys_set:nn { xdu }
  {
    style / customize-los = true,
    style / customize-loa = true,
    style / colspec-los   = { Q[l,h]X[l,h] },
    style / colspec-loa   = { Q[l,h]X[l,h]X[l,h] },
    style / title-row-los = false,
    style / title-row-loa = false
  }
%    \end{macrocode}
% \end{macro}
% \changes{v1.26.0.0}{2022/06/07}{菴懆�ｮ莉区�ｷ蠑城�鄂ｮ}
% \subsection{菴懆�ｮ莉区�ｷ蠑城�鄂ｮ}
% \begin{variable}
%   {
%     \l_@@_cust_edubg_bool,
%     \l_@@_cust_resresult_bool
%   }
% 譏ｯ蜷ｦ螳悟�閾ｪ螳壻ｹ我ｽ懆�ｮ莉倶ｸｭ謨呵ご閭梧勹縲�
%    \begin{macrocode}
\bool_new:N \l_@@_cust_edubg_bool
%    \end{macrocode}
% 譏ｯ蜷ｦ螳悟�閾ｪ螳壻ｹ我ｽ懆�ｮ莉倶ｸｭ謾ｻ隸ｻ遑募｣ｫ蟄ｦ菴肴悄髣ｴ逧��皮ｩｶ謌先棡縲�
%    \begin{macrocode}
\bool_new:N \l_@@_cust_resresult_bool
%    \end{macrocode}
% \end{variable}
% \begin{macro}{\keys_define:nn}
% 螳壻ｹ我ｿ｡諱ｯ髞ｮ蛟ｼ縲�
%    \begin{macrocode}
\keys_define:nn { xdu / style }
  {
%    \end{macrocode}
% 譏ｯ蜷ｦ螳悟�閾ｪ螳壻ｹ我ｽ懆�ｮ莉倶ｸｭ謨呵ご閭梧勹縲�
%    \begin{macrocode}
    customize-edubg .bool_set:N = \l_@@_cust_edubg_bool,
%    \end{macrocode}
% 譏ｯ蜷ｦ螳悟�閾ｪ螳壻ｹ我ｽ懆�ｮ莉倶ｸｭ謾ｻ隸ｻ遑募｣ｫ蟄ｦ菴肴悄髣ｴ逧��皮ｩｶ謌先棡縲�
%    \begin{macrocode}
    customize-resresult .bool_set:N = \l_@@_cust_resresult_bool
  }
%    \end{macrocode}
% \end{macro}
% \begin{macro}{\keys_set:nn}
% 蛻晏ｧ玖ｮｾ鄂ｮ縲�
%    \begin{macrocode}
\keys_set:nn { xdu }
  {
    style / customize-edubg     = true,
    style / customize-resresult = true
  }
%    \end{macrocode}
% \end{macro}
%    \begin{macrocode}
%&lt;/xdupgthesis&gt;
%&lt;*class|xdufont&gt;
%    \end{macrocode}
% \subsection{髞ｮ蛟ｼ騾蛾｡ｹ}
% \begin{macro}{\xdusetup}
% 逕ｨ謌ｷ隶ｾ鄂ｮ謗･蜿｣縲�
%    \begin{macrocode}
\NewDocumentCommand \xdusetup { m }
  { \keys_set:nn { xdu } { #1 } }
%    \end{macrocode}
% \end{macro}
% \begin{macro}{\keys_define:nn}
% 螳壻ｹ牙���meta�蛾醗蛟ｼ蟇ｹ縲�
%    \begin{macrocode}
\keys_define:nn { xdu }
  {
    style .meta:nn = { xdu / style } { #1 },
    info  .meta:nn = { xdu / info  } { #1 }
  }
%    \end{macrocode}
% \end{macro}
% \begin{macro}{\ProcessKeysOptions}
% 螟�炊騾蛾｡ｹ縲�
%    \begin{macrocode}
\ProcessKeysOptions { xdu / style }
%    \end{macrocode}
% \end{macro}
%    \begin{macrocode}
%&lt;/class|xdufont&gt;
%&lt;*xdupgthesis&gt;
%    \end{macrocode}
% \subsection{蜀�Κ譁�悽}
% \begin{variable}{l_@@_header_str}
% \changes{v1.7.0.0}{2022/05/02}{遐皮ｩｶ逕滄｡ｵ逵画枚譛ｬ}
% 遐皮ｩｶ逕滄｡ｵ逵画枚譛ｬ縲�
%    \begin{macrocode}
\str_new:N \l_@@_header_str
\ctex_at_end_preamble:n
  {
    \@@_lang_switch:nn
      {
        \tl_if_eq:NnTF \l_@@_gr_type_tl { 遑募｣ｫ }
          { \str_set:Nn \l_@@_header_str { 隘ｿ螳臥鳩蟄千ｧ第橿螟ｧ蟄ｦ遑募｣ｫ蟄ｦ菴崎ｮｺ譁� } }
          { \str_set:Nn \l_@@_header_str { 隘ｿ螳臥鳩蟄千ｧ第橿螟ｧ蟄ｦ蜊壼｣ｫ蟄ｦ菴崎ｮｺ譁� } }
      }
      {
        \tl_if_eq:NnTF \l_@@_gr_type_tl { 遑募｣ｫ }
          {
            \str_set:Nn \l_@@_header_str
              { Master~Thesis~of~XIDIAN~UNIVERSITY }
          }
          {
            \str_set:Nn \l_@@_header_str
              { Doctoral~Dissertation~of~XIDIAN~UNIVERSITY }
          }
      }
  }
%    \end{macrocode}
% \end{variable}
%    \begin{macrocode}
%&lt;/xdupgthesis&gt;
%&lt;*thesis&gt;
%    \end{macrocode}
% \subsection{蜀�Κ蜃ｽ謨ｰ}
% \begin{macro}{\@@_lang_switch:nn}
% 譬ｹ謐ｮ隶ｺ譁�ｯｭ險閾ｪ蜉ｨ騾画叫荳ｭ譁�ｯｹ蠎泌�螳ｹ謌冶恭譁�ｯｹ蠎泌�螳ｹ縲�
% \begin{arguments}
%   \item 荳ｭ譁�ｯｹ蠎泌�螳ｹ縲�
%   \item 闍ｱ譁�ｯｹ蠎泌�螳ｹ縲�
% \end{arguments}
%    \begin{macrocode}
\cs_new:Npn \@@_lang_switch:nn #1#2
  {
    \str_if_eq:NNTF { \l_@@_lang_tl } { zh }
      { #1 }
      { #2 }
  }
%    \end{macrocode}
% \end{macro}
% \begin{macro}{\@@_rm_family:,\@@_sf_family:,\@@_tt_family:}
% 蛻�困蟄嶺ｽ捺酪譌ｶ�瑚恭譁��ｹ謐ｮ驟咲ｽｮ騾画叫譏ｯ蜷ｦ菴ｿ逕ｨ荳ｭ譁�ｭ嶺ｽ薙�
%    \begin{macrocode}
\cs_new:Npn \@@_rm_family:
  { \bool_if:NTF \l_@@_en_cjk_font_bool { \CJKfamily+ { rm } } { \rmfamily } }
\cs_new:Npn \@@_sf_family:
  { \bool_if:NTF \l_@@_en_cjk_font_bool { \CJKfamily+ { sf } } { \sffamily } }
\cs_new:Npn \@@_tt_family:
  { \bool_if:NTF \l_@@_en_cjk_font_bool { \CJKfamily+ { tt } } { \ttfamily } }
%    \end{macrocode}
% \end{macro}
% \changes{v4.3.1.0}{2023/02/03}{菫ｮ螟肴悽遘第ｯ戊ｮｾ隶ｺ譁�｡ｵ逵牙�蠑乗仞遉ｺ}
% \begin{variable}{\l_@@_pure_title_tl}
% 遘ｻ髯､譬�｢倅ｸｭ謐｢陦檎ｬｦ縲�
%    \begin{macrocode}
\ctex_at_end_preamble:n
  {
    \tl_new:N \l_@@_pure_title_tl
    \tl_set_eq:NN \l_@@_pure_title_tl \l_@@_title_tl
    \tl_remove_all:Nn \l_@@_pure_title_tl { \\ }
  }
%    \end{macrocode}
% \end{variable}
% \changes{v4.0.2.0}{2022/12/26}{遘ｻ髯､譛ｬ遘醍函豈穂ｸ夊ｮｾ隶｡譬�｢倩�蜉ｨ謐｢陦悟粥閭ｽ}
% \begin{macro}{\@@_split_title:Nn,\@@_split_title:NV}
% 諡��譬�｢倥�
% \begin{arguments}
%   \item 諡��蜷取��｢倥�
%   \item 諡��蜑肴��｢倥�
% \end{arguments}
%    \begin{macrocode}
\cs_new_protected:Npn \@@_split_title:Nn #1#2
  {
    \seq_new:N \l_@@_title_seq
    \tl_if_in:nnTF { #2 } { \\ }
      {
        \seq_set_split:Nnn \l_@@_title_seq { \\ } { #2 }
        \clist_set_from_seq:NN #1 \l_@@_title_seq
      }
      { \clist_set:Nx #1 { #2 } }
  }
\cs_generate_variant:Nn \@@_split_title:Nn { NV }
%    \end{macrocode}
% \end{macro}
% \begin{macro}{\@@_uline:n}
% 扈伜宛荳句�郤ｿ縲�
%    \begin{macrocode}
\cs_new:Npn \@@_uline:n #1
  { \CJKunderline [ thickness = 0.5pt ] { #1 } }
%    \end{macrocode}
% \end{macro}
% \begin{macro}{\@@_tl_set_if_empty:Nn}
% \changes{v0.7.0.0}{2022/04/11}{蟇ｹ遨ｺ蜃ｭ謐ｮ陦ｨ襍句ｼ}
% 蟇ｹ遨ｺ蜃ｭ謐ｮ陦ｨ襍句ｼ縲�
%    \begin{macrocode}
\cs_new:Npn \@@_tl_set_if_empty:Nn #1#2
  { \tl_if_empty:NT #1 { \tl_set:Nn #1 { #2 } } }
%    \end{macrocode}
% \end{macro}
% \begin{macro}{\@@_get_text_width:Nn,\@@_get_text_width:NV}
% 闔ｷ蜿匁枚譛ｬ螳ｽ蠎ｦ縲�
% \begin{arguments}
%   \item 譁�悽螳ｽ蠎ｦ縲�
%   \item 譁�悽縲�
% \end{arguments}
%    \begin{macrocode}
\cs_new:Npn \@@_get_text_width:Nn #1#2
  {
    \box_clear_new:N \l_@@_tmp_box
    \hbox_set:Nn \l_@@_tmp_box { #2 }
    \dim_set:Nn #1 { \box_wd:N \l_@@_tmp_box }
  }
\cs_generate_variant:Nn \@@_get_text_width:Nn { NV }
%    \end{macrocode}
% \end{macro}
% \changes{v4.4.5.0}{2023/02/09}{菫ｮ螟堺ｹｦ遲ｾ荳ｭ逶ｮ蠖戊ｷｳ霓ｬ蠑ょｸｸ}
% \begin{macro}{\@@_add_bookmark:n}
% 荳ｺ蠖灘燕菴咲ｽｮ豺ｻ蜉�荵ｦ遲ｾ縲�
%    \begin{macrocode}
\cs_new:Npn \@@_add_bookmark:n #1
  {
    \cleardoublepage
    \currentpdfbookmark { #1 } { #1 }
  }
%    \end{macrocode}
% \end{macro}
% \begin{macro}{\@@_add_toc:n}
% 遶�闃よｷｻ蜉�逶ｮ蠖輔�
%    \begin{macrocode}
\cs_new:Npn \@@_add_toc:n #1
  {
    \cleardoublepage
    \phantomsection
    \addcontentsline { toc } { chapter } { #1 }
  }
%    \end{macrocode}
% \end{macro}
% \begin{macro}{\@@_n_chapter_head:n}
% 譁ｰ蟒ｺ譌�郛門捷遶�闃ょｹｶ豺ｻ蜉�鬘ｵ逵牙柱荵ｦ遲ｾ縲�
%    \begin{macrocode}
\cs_new:Npn \@@_n_chapter_head:n #1
  {
    \@@_add_bookmark:n { #1 }
    \chapter*          { #1 }
    \markboth          { #1 } { }
  }
%    \end{macrocode}
% \end{macro}
% \begin{macro}{\@@_n_chapter_head_ii:nn}
% 譁ｰ蟒ｺ譌�郛門捷遶�闃ょｹｶ豺ｻ蜉�鬘ｵ逵牙柱荵ｦ遲ｾ蟷ｶ蜊慕峡隶ｾ鄂ｮ譬�｢俶�ｷ蠑上�
% \begin{arguments}
%   \item 遶�闃よ��｢伜､��
%   \item 遶�闃よ��｢俶�ｷ蠑上�
% \end{arguments}
%    \begin{macrocode}
\cs_new:Npn \@@_n_chapter_head_ii:nn #1#2
  {
    \group_begin:
      \ctexset { chapter / format = { #2 } }
      \@@_n_chapter_head:n { #1 }
    \group_end:
  }
%    \end{macrocode}
% \end{macro}
% \begin{macro}{\@@_n_chapter_head:nn}
% \changes{v1.1.4.0}{2022/04/16}{譁ｰ蟒ｺ譌�郛門捷遶�闃ょｹｶ蜊慕峡豺ｻ蜉�鬘ｵ逵牙柱荵ｦ遲ｾ}
% 譁ｰ蟒ｺ譌�郛門捷遶�闃ょｹｶ豺ｻ蜉�鬘ｵ逵牙柱荵ｦ遲ｾ�悟､夂畑莠守ｫ�闃よ��｢倅ｸｺ2荳ｪ豎牙ｭ礼噪諠��縲�
% \begin{arguments}
%   \item 荵ｦ遲ｾ蜥碁｡ｵ逵牙､��
%   \item 遶�闃よ��｢伜､��
% \end{arguments}
%    \begin{macrocode}
\cs_new:Npn \@@_n_chapter_head:nn #1#2
  {
    \@@_add_bookmark:n { #1 }
    \chapter*          { #2 }
    \markboth          { #1 } { }
  }
%    \end{macrocode}
% \end{macro}
% \begin{macro}{\@@_n_chapter_head_ii:nnn}
% \changes{v1.2.1.0}{2022/04/19}{譁ｰ蟒ｺ譌�郛門捷遶�闃ょｹｶ蜊慕峡豺ｻ蜉�鬘ｵ逵牙柱荵ｦ遲ｾ蟷ｶ蜊慕峡隶ｾ鄂ｮ譬�｢俶�ｷ蠑殉
% 譁ｰ蟒ｺ譌�郛門捷遶�闃ょｹｶ豺ｻ蜉�鬘ｵ逵牙柱荵ｦ遲ｾ蟷ｶ蜊慕峡隶ｾ鄂ｮ譬�｢俶�ｷ蠑擾ｼ悟､夂畑莠守ｫ�闃よ��｢倅ｸｺ2荳ｪ豎牙ｭ礼噪諠��縲�
% \begin{arguments}
%   \item 遶�闃よ��｢伜､��
%   \item 荵ｦ遲ｾ蜥碁｡ｵ逵牙､��
%   \item 遶�闃よ��｢俶�ｷ蠑上�
% \end{arguments}
%    \begin{macrocode}
\cs_new:Npn \@@_n_chapter_head_ii:nnn #1#2#3
  {
    \group_begin:
      \ctexset { chapter / format = { #3 } }
      \@@_n_chapter_head:nn { #1 } { #2 }
    \group_end:
  }
%    \end{macrocode}
% \end{macro}
% \begin{macro}{\@@_n_chapter_head_toc:n}
% 譁ｰ蟒ｺ譌�郛門捷遶�闃ょｹｶ豺ｻ蜉�逶ｮ蠖募所鬘ｵ逵峨�
%    \begin{macrocode}
\cs_new:Npn \@@_n_chapter_head_toc:n #1
  {
    \@@_add_toc:n { #1 }
    \chapter* { #1 }
    \markboth { #1 } { }
  }
%    \end{macrocode}
% \end{macro}
% \begin{macro}{\@@_n_chapter_head_toc:nn}
% \changes{v1.1.4.0}{2022/04/16}{譁ｰ蟒ｺ譌�郛門捷遶�闃ょｹｶ蜊慕峡豺ｻ蜉�逶ｮ蠖募所鬘ｵ逵厭
% 譁ｰ蟒ｺ譌�郛門捷遶�闃ょｹｶ豺ｻ蜉�逶ｮ蠖募所鬘ｵ逵会ｼ悟､夂畑莠守ｫ�闃よ��｢倅ｸｺ2荳ｪ豎牙ｭ礼噪諠��縲�
% \begin{arguments}
%   \item 逶ｮ蠖輔∽ｹｦ遲ｾ縲�｡ｵ逵牙､��
%   \item 遶�闃よ��｢伜､��
% \end{arguments}
%    \begin{macrocode}
\cs_new:Npn \@@_n_chapter_head_toc:nn #1#2
  {
    \@@_add_toc:n { #1 }
    \chapter* { #2 }
    \markboth { #1 } { }
  }
%    \end{macrocode}
% \end{macro}
% \begin{macro}{\@@_n_chapter_head_toc_ii:nn}
% \changes{v1.28.1.0}{2022/06/18}{譁ｰ蟒ｺ譌�郛門捷遶�闃ょｹｶ蜊慕峡豺ｻ蜉�逶ｮ蠖募所鬘ｵ逵牙ｹｶ蜊慕峡隶ｾ鄂ｮ譬�｢俶�ｷ蠑殉
% 譁ｰ蟒ｺ譌�郛門捷遶�闃ょｹｶ蜊慕峡豺ｻ蜉�逶ｮ蠖募所鬘ｵ逵牙ｹｶ蜊慕峡隶ｾ鄂ｮ譬�｢俶�ｷ蠑上�
% \begin{arguments}
%   \item 逶ｮ蠖輔∽ｹｦ遲ｾ縲�｡ｵ逵牙､��
%   \item 遶�闃よ��｢伜､��
% \end{arguments}
%    \begin{macrocode}
\cs_new:Npn \@@_n_chapter_head_toc_ii:nn #1#2
  {
    \group_begin:
      \ctexset { chapter / format = { #2 } }
      \@@_n_chapter_head_toc:n { #1 }
    \group_end:
  }
%    \end{macrocode}
% \end{macro}
% \begin{macro}{\@@_typeout_keywords:nNn}
% \changes{v1.20.0.0}{2022/05/30}{蜈∬ｮｸ蜈ｳ髞ｮ隸肴��ｭｾ蟶ｦ譬ｼ蠑殉
% 謗堤沿蜈ｳ髞ｮ隸阪�
% \begin{arguments}
%   \item 譬�ｭｾ蜷咲ｧｰ縲�
%   \item 蜈ｳ髞ｮ隸榊�陦ｨ縲�
%   \item 蜈ｳ髞ｮ隸榊�髫皮ｬｦ縲�
% \end{arguments}
%    \begin{macrocode}
\cs_new:Npn \@@_typeout_keywords:nNn #1#2#3
  {
    \tl_clear_new:N \l_@@_keywords_label_str
    \tl_set:Nn \l_@@_keywords_label_tl { #1 }
    \dim_zero_new:N \l_@@_keywords_label_dim
    \@@_get_text_width:NV \l_@@_keywords_label_dim \l_@@_keywords_label_tl
    \begin { list } { \l_@@_keywords_label_tl }
      {
        \labelwidth  \l_@@_keywords_label_dim
        \labelsep    \c_zero_dim
        \rightmargin \c_zero_dim
        \leftmargin  \l_@@_keywords_label_dim
      }
      \item \clist_use:Nnnn #2 { #3 } { #3 } { #3 }
    \end { list }
  }
%    \end{macrocode}
% \end{macro}
%    \begin{macrocode}
%&lt;/thesis&gt;
%&lt;*thesis|xduugtp&gt;
%    \end{macrocode}
% \begin{macro}{\@@_str_max_dim:Nn}
% \changes{v1.26.4.0}{2022/06/10}{隶｡邂怜ｭ礼ｬｦ荳ｲ螟壼､ｧ髟ｿ蠎ｦ}
% 隶｡邂怜ｭ礼ｬｦ荳ｲ螟壼､ｧ髟ｿ蠎ｦ縲�
% \begin{arguments}
%   \item 譛螟ｧ蛟ｼ髟ｿ蠎ｦ縲�
%   \item 蟄礼ｬｦ荳ｲ縲�
% \end{arguments}
%    \begin{macrocode}
\dim_new:N \l_@@_str_dim
\box_new:N \l_@@_str_box
\cs_new:Npn \@@_str_max_dim:Nn #1#2
  {
    \hbox_set:Nn \l_@@_str_box { #2 }
    \dim_set:Nn \l_@@_str_dim { \box_wd:N \l_@@_str_box }
    \dim_set:Nn #1  { \dim_max:nn { \l_@@_str_dim } { #1 } }
  }
%    \end{macrocode}
% \end{macro}
%    \begin{macrocode}
%&lt;/thesis|xduugtp&gt;
%&lt;*thesis&gt;
%    \end{macrocode}
% \subsection{鬚晏､門多莉､}
% \begin{macro}{\noauxwrite}
% \changes{v1.15.0.0}{2022/05/13}{\tnx[]{noauxwrite}蜈∬ｮｸ豺ｻ蜉�荳榊ｽｱ蜩咲鴫譛牙ｼ慕畑蛻苓｡ｨ鬘ｺ蠎冗噪蠑慕畑}
% \tnx[]{noauxwrite}蜈∬ｮｸ豺ｻ蜉�荳榊ｽｱ蜩咲鴫譛牙ｼ慕畑蛻苓｡ｨ鬘ｺ蠎冗噪蠑慕畑縲�
%    \begin{macrocode}
\NewDocumentCommand \noauxwrite { m }
  {
    \if@filesw
      \@fileswfalse
      #1
      \@fileswtrue
    \else
      #1
    \fi
  }
%    \end{macrocode}
% \end{macro}
% \subsection{鬘ｵ髱｢隶ｾ鄂ｮ}
% \subsubsection{鬘ｵ髱｢蟆ｺ蟇ｸ}
% \begin{macro}{\geometry,\newgeometry,\savegeometry}
% \changes{v2.14.1.0}{2022/11/21}{謾ｯ謖∝､夊｡碁｡ｵ逵厭
% \changes{v1.5.1.0}{2022/05/01}{菫ｮ豁｣鬘ｵ閼夐ｫ伜ｺｦ}
% \changes{v1.5.2.0}{2022/05/02}{菫ｮ豁｣蠎暮Κ鬘ｵ霎ｹ霍晞ｫ伜ｺｦ}
% \changes{v1.26.8.0}{2022/06/13}{菫ｮ豁｣遐皮ｩｶ逕滄｡ｵ逵蛾ｫ伜ｺｦ}
% 豁｣譁�｡ｵ髱｢縲�
% \begin{description}
% \item[譛ｬ遘醍函] 荳�3縲∽ｸ�2縲∝�3縲∝､�2�幄｣�ｮ｢郤ｿ1�幃｡ｵ逵�2縲�｡ｵ閼�1縲�
% \item[遐皮ｩｶ逕歉 荳�3縲―textbf{荳�2.5}縲∝�2.5縲∝､�2.5�幄｣�ｮ｢郤ｿ0.5�幃｡ｵ逵�2縲�｡ｵ閼�$2.5-1.75=0.75$縲�
% 螳樊ｵ倶ｸ�3.14�敬eadheight蜥敬eadsep蝮�ｸｺ螳樊ｵ九�
% \end{description}
%    \begin{macrocode}
\newgeometry
  {
%&lt;*xduugthesis&gt;
    top           = 3cm,
    bottom        = 2cm,
    inner         = 3cm,
    outer         = 2cm,
    bindingoffset = 1cm,
    head          = 2cm,
    foot          = 1cm
%&lt;/xduugthesis&gt;
%&lt;*xdupgthesis&gt;
    top           = 3.14cm,
    bottom        = 2.5cm,
    inner         = 2.5cm,
    outer         = 2.5cm,
    bindingoffset = 0.5cm,
    headheight    = 60pt,
    headsep       = 10pt,
    foot          = 0.75cm
%&lt;/xdupgthesis&gt;
  }
\savegeometry { main }
%    \end{macrocode}
% \changes{v1.5.1.0}{2022/05/01}{菫ｮ豁｣鬘ｵ閼夐ｫ伜ｺｦ}
% \changes{v1.5.2.0}{2022/05/02}{菫ｮ豁｣蠎暮Κ鬘ｵ霎ｹ霍晞ｫ伜ｺｦ}
% 蟾ｦ蜿ｳ蟇ｹ遘ｰ豁｣譁�｡ｵ髱｢縲�
% \begin{description}
% \item[譛ｬ遘醍函] 荳�3縲∽ｸ�2縲∝�3縲∝､�3�幃｡ｵ逵�2縲�｡ｵ閼�1縲�
% \item[遐皮ｩｶ逕歉 荳�3縲―textbf{荳�2.5}縲∝�2.75縲∝､�2.75�幃｡ｵ逵�2縲�｡ｵ閼�$2.5-1.75=0.75$縲�
% \end{description}
%    \begin{macrocode}
\newgeometry
  {
%&lt;*xduugthesis&gt;
    top    = 3cm,
    bottom = 2cm,
    inner  = 3cm,
    outer  = 3cm,
    head   = 2cm,
    foot   = 1cm
%&lt;/xduugthesis&gt;
%&lt;*xdupgthesis&gt;
    top        = 3.14cm,
    bottom     = 2.5cm,
    inner      = 2.75cm,
    outer      = 2.75cm,
    headheight = 60pt,
    headsep    = 10pt,
    foot       = 0.75cm
%&lt;/xdupgthesis&gt;
  }
\savegeometry { main-sym }
%    \end{macrocode}
% \changes{v0.10.3.0}{2022/04/14}{菫ｮ螟榊ｰ�擇雜�｡ｵ}
% 蟆�擇鬘ｵ髱｢縲�
% \begin{description}
% \item[譛ｬ遘醍函] 荳�2.5縲∽ｸ�2縲∝�3縲∝､�2縲�
% \item[遐皮ｩｶ逕歉 荳�3縲∽ｸ�1縲∝�3縲∝､�2.5縲�
% \end{description}
%    \begin{macrocode}
\newgeometry
  {
%&lt;*xduugthesis&gt;
    top    = 2.5cm,
    bottom = 2cm,
    inner  = 3cm,
    outer  = 2cm
%&lt;/xduugthesis&gt;
%&lt;*xdupgthesis&gt;
    top    = 3cm,
    bottom = 1cm,
    inner  = 3cm,
    outer  = 2.5cm
%&lt;/xdupgthesis&gt;
  }
\savegeometry { cover }
%    \end{macrocode}
% \changes{v2.1.0.0}{2022/06/22}{譌�鬘ｵ霎ｹ霍晞｡ｵ髱｢}
% 譌�鬘ｵ霎ｹ霍晞｡ｵ髱｢縲�
%    \begin{macrocode}
%&lt;*xdupgthesis&gt;
\newgeometry  { margin = 0cm }
\savegeometry { nomargin     }
%&lt;/xdupgthesis&gt;
%    \end{macrocode}
% \end{macro}
%    \begin{macrocode}
%&lt;/thesis&gt;
%&lt;*tp&gt;
%    \end{macrocode}
% \changes{v4.1.0.0}{2022/12/31}{隶ｾ鄂ｮ譛ｬ遘醍函豈穂ｸ夊ｮｾ隶｡蠑鬚俶冠蜻企｡ｵ霎ｹ霍掵
% \begin{macro}{\newgeometry,\savegeometry,\loadgeometry}
% 隶ｾ鄂ｮ譛ｬ遘醍函豈穂ｸ夊ｮｾ隶｡蠑鬚俶冠蜻企｡ｵ霎ｹ霍昴�
%    \begin{macrocode}
\newgeometry
  {
    left       = 3.17cm,
    right      = 3.17cm,
    top        = 2.54cm,
    bottom     = 2.54cm,
    footskip   = 0cm,
    headsep    = 0cm,
    headheight = 0cm
  }
\savegeometry { main }
\loadgeometry { main }
%    \end{macrocode}
% \end{macro}
%    \begin{macrocode}
%&lt;/tp&gt;
%&lt;*thesis&gt;
%    \end{macrocode}
% \begin{macro}{\@@_load_main_geometry:}
% \changes{v0.8.0.0}{2022/04/12}{譬ｹ謐ｮ逕ｨ謌ｷ驟咲ｽｮ蜉�霓ｽ豁｣譁�｡ｵ霎ｹ霍晞�鄂ｮ}
% 譬ｹ謐ｮ逕ｨ謌ｷ驟咲ｽｮ蜉�霓ｽ豁｣譁�｡ｵ霎ｹ霍晞�鄂ｮ縲�
%    \begin{macrocode}
\cs_new:Npn \@@_load_main_geometry:
  {
    \bool_if:NTF \l_@@_sym_mgn_bool
      { \loadgeometry { main-sym } }
      { \loadgeometry { main     } }
  }
%    \end{macrocode}
% \end{macro}
% \subsubsection{鬘ｵ逵蛾｡ｵ閼嘲
% \begin{macro}
%   {
%     \@@_chinese:,
%     \@@_arabic:,
%     \@@_roman:,
%     \@@_Roman:,
%     \@@_alph:,
%     \@@_Alph:,
%     \@@_fnsymbol:
%   }
% \changes{v1.2.2.0}{2022/04/20}{螳壻ｹ牙ｺ丞捷霓ｬ謐｢蜃ｽ謨ｰ}
% 螳壻ｹ牙ｺ丞捷霓ｬ謐｢蜃ｽ謨ｰ縲�
%    \begin{macrocode}
\clist_map_inline:nn
  {
    { chinese  },
    { arabic   },
    { roman    },
    { Roman    },
    { alph     },
    { Alph     },
    { fnsymbol }
  }
  { \cs_new_eq:cc { @@ _ #1 : } { #1 } }
%    \end{macrocode}
% \end{macro}
% \begin{variable}{\l_@@_chaptername}
% \changes{v1.2.2.0}{2022/04/20}{鬘ｵ逵牙�驛ｨ闍ｱ譁�ｫ�闃ょ錐}
% 鬘ｵ逵牙�驛ｨ闍ｱ譁�ｫ�闃ょ錐縲�
%    \begin{macrocode}
\tl_set:Nn \chaptername { Chapter }
\tl_new:N \l_@@_chaptername
\tl_set_eq:NN \l_@@_chaptername \chaptername
%    \end{macrocode}
% \end{variable}
% \begin{macro}{\chaptermark}
% 隶ｾ鄂ｮ螂�焚鬘ｵ鬘ｵ逵我ｸｺ遶�譬�｢倥�
%    \begin{macrocode}
\renewcommand { \chaptermark } [ 1 ]
  {
    \markboth
      {
        \@@_lang_switch:nn
          { \CTEXthechapter }
          { \l_@@_chaptername \space \@@_Roman: { chapter } }
        \quad #1
      }
      { }
  }
%    \end{macrocode}
% \end{macro}
% \begin{macro}{\fancypagestyle}
% \changes{v0.1.1.0}{2022/04/03}{菫ｮ豁｣鬘ｵ逵牙ｭ怜捷}
% \changes{v1.6.0.0}{2022/05/02}{隶ｾ鄂ｮ鬘ｵ閼夐｡ｵ遐±
% \changes{v1.7.0.0}{2022/05/02}{隶ｾ鄂ｮ鬘ｵ逵厭
% \changes{v1.26.9.0}{2022/06/13}{菫ｮ豁｣鬘ｵ逵画枚蟄怜柱蜿梧ｨｪ郤ｿ鬮伜ｺｦ}
% \changes{v2.8.0.0}{2022/06/26}{遐皮ｩｶ逕溷ｭｦ菴崎ｮｺ譁�髪謖∫ｧｻ髯､鬘ｵ逵厭
% \changes{v2.9.0.0}{2022/06/26}{遐皮ｩｶ逕溷ｭｦ菴崎ｮｺ譁�髪謖∫ｧｻ髯､鬘ｵ閼嘲
% \changes{v2.9.1.0}{2022/06/26}{遐皮ｩｶ逕溷ｭｦ菴崎ｮｺ譁�髪謖∫ｧｻ髯､鬘ｵ逵牙曙讓ｪ郤ｿ}
% 隶ｾ鄂ｮ豁｣譁�｡ｵ逵蛾｡ｵ閼壹�
% \begin{description}
% \item[譛ｬ遘醍函] 鬘ｵ逵会ｼ壼ｮ倶ｽ謎ｺ泌捷�悟ｱ�ｸｭ謗貞�縲ょｷｦ髱｢鬘ｵ逵我ｸｺ隶ｺ譁�｢倡岼�悟承髱｢鬘ｵ逵我ｸｺ遶�谺｡蜥檎ｫ�譬�｢倥る｡ｵ逵牙ｺ募�郤ｿ逧�ｮｽ蠎ｦ荳ｺ0.75逎�る｡ｵ遐�ｼ壼ｮ倶ｽ灘ｰ丈ｺ泌捷�梧賜蝨ｨ鬘ｵ逵芽｡檎噪譛螟紋ｾｧ�御ｸ榊刈莉ｻ菴穂ｿｮ鬣ｰ縲�
% \item[遐皮ｩｶ逕歉 鬘ｵ逵芽ｮｾ鄂ｮ�壼黒髱｢鬘ｵ遐�｡ｵ逵画��｢倅ｸｺ遶�闃る｢倡岼�梧ｯ丈ｸ遶�闃ら噪襍ｷ蟋矩｡ｵ蠢�｡ｻ蝨ｨ蜊暮擇鬘ｵ遐�ｼ悟曙髱｢鬘ｵ遐�｡ｵ逵画��｢倡ｻ滉ｸ荳ｺ窶懆･ｿ螳臥鳩蟄千ｧ第橿螟ｧ蟄ｦ蜊�/遑募｣ｫ蟄ｦ菴崎ｮｺ譁�晢ｼ碁｡ｵ逵画��｢伜ｱ�ｸｭ謗貞��悟ｭ嶺ｽ謎ｸｺ螳倶ｽ難ｼ悟ｭ怜捷荳ｺ莠泌捷縲る｡ｵ逵画枚蟄嶺ｸ区ｷｻ蜉�蜿梧ｨｪ郤ｿ�悟曙讓ｪ郤ｿ螳ｽ蠎ｦ荳ｺ0.5逎�る｡ｵ逵臥噪窶懆･ｿ螳臥鳩蟄千ｧ第橿螟ｧ蟄ｦ蜊壼｣ｫ/遑募｣ｫ蟄ｦ菴崎ｮｺ譁�晉ｻ滉ｸ鄙ｻ隸第��咼octoral Dissertation of XIDIAN UNIVERSITY/Master Thesis of XIDIAN UNIVERSITY縲る｡ｵ遐∬ｮｾ鄂ｮ�壼燕鄂ｮ驛ｨ蛻�噪鬘ｵ遐∫畑鄂鈴ｩｬ謨ｰ蟄玲��ｯ�ｼ悟ｭ嶺ｽ謎ｸｺTimes New Roman�悟ｭ怜捷荳ｺ蟆丈ｺ泌捷�帑ｸｻ菴馴Κ蛻�噪鬘ｵ遐∫畑髦ｿ諡我ｼｯ謨ｰ蟄玲��ｯ�ｼ悟ｭ嶺ｽ謎ｸｺ螳倶ｽ難ｼ悟ｭ怜捷荳ｺ蟆丈ｺ泌捷縲る｡ｵ遐∫ｻ滉ｸ螻�ｺ朱｡ｵ髱｢蠎慕ｫｯ荳ｭ驛ｨ�御ｸ榊刈莉ｻ菴穂ｿｮ鬣ｰ縲�
% \end{description}
%    \begin{macrocode}
\fancypagestyle { plain }
  {
    \pagestyle { fancy }
    \fancyhf { }
%&lt;*xduugthesis&gt;
    \fancyhead [ CE ] { \@@_rm_family: \zihao { 5  } \l_@@_pure_title_tl }
    \fancyhead [ CO ] { \@@_rm_family: \zihao { 5  } \leftmark            }
    \fancyhead [ LE ] { \@@_rm_family: \zihao { -5 } \thepage             }
    \fancyhead [ RO ] { \@@_rm_family: \zihao { -5 } \thepage             }
    \renewcommand { \headrulewidth } { 0.75pt }
%&lt;/xduugthesis&gt;
%&lt;*xdupgthesis&gt;
    \bool_if:NF \l_@@_rm_header_bool
      {
        \fancyhead [ CE ] { \@@_rm_family: \zihao { 5  } \l_@@_header_str     }
        \fancyhead [ CO ] { \@@_rm_family: \zihao { 5  } \leftmark            }
      }
    \bool_if:NTF \l_@@_rm_footer_bool
      { \fancyfoot [ C ] { } }
      { \fancyfoot [ C ] { \@@_rm_family: \zihao { -5 } \thepage } }
    \cs_set:Npn \headrulewidth { 0.5pt }
    \bool_if:NTF \l_@@_rm_header_bool
      { \cs_set:Npn \headrule { } }
      {
        \cs_set:Npn \headrule
          {
            \hrule \@height 0pt
            \skip_vertical:N 2pt
            \hrule \@height \headrulewidth
            \skip_vertical:N \headrulewidth
            \hrule \@height \headrulewidth
            \skip_vertical:N -\headrulewidth
          }
      }
%&lt;/xdupgthesis&gt;
  }
%&lt;*xdupgthesis&gt;
\fancypagestyle { front }
  {
    \pagestyle { plain }
    \bool_if:NTF \l_@@_rm_footer_bool
      { \fancyfoot [ C ] { } }
      { \fancyfoot [ C ] { \rmfamily \zihao { -5 } \thepage } }
  }
%&lt;/xdupgthesis&gt;
%    \end{macrocode}
% \end{macro}
% \subsubsection{蟇ｹ鮨先婿蠑殉
% \begin{macro}{\raggedbottom,\flushbottom}
% \changes{v1.13.0.0}{2022/05/08}{隶ｾ鄂ｮ鬘ｵ髱｢蝙ら峩譁ｹ蜷醍噪蟇ｹ鮨先婿蠑殉
%    \begin{macrocode}
\ctex_at_end_preamble:n
  {
    \tl_if_eq:NnTF \l_@@_page_v_align_tl { 鬘ｶ驛ｨ蟇ｹ鮨� }
      { \raggedbottom }
      { \flushbottom  }
  }
%    \end{macrocode}
% \end{macro}
%    \begin{macrocode}
%&lt;/thesis&gt;
%&lt;*xduugthesis&gt;
%    \end{macrocode}
% \subsection{譬�｢倩ｮｾ鄂ｮ}
% \subsubsection{譛ｬ遘醍函}
% 荳ｭ譁�ｫ�譬�｢倬ｻ台ｽ難ｼ御ｸ牙捷�悟ｱ�ｸｭ謗貞�縲り鰍譬�｢伜ｮ倶ｽ難ｼ悟屁蜿ｷ�悟ｱ�ｸｭ謗貞�縲り恭譁�ｸ郤ｧ譬�｢伜ｭ嶺ｽ謎ｸｺTimes New Roman�悟屁蜿ｷ�梧ｭ｣菴難ｼ悟ｷｦ蟇ｹ鮨撰ｼ御ｻ･螟ｧ蜀咏ｽ鈴ｩｬ謨ｰ蟄暦ｼ�I縲！I 遲会ｼ画���蠎丞捷縲ょ�菴吝推郤ｧ譬�｢倡噪蟄嶺ｽ灘插荳ｺTimes New Roman�悟ｰ丞屁蜿ｷ�梧ｭ｣菴薙ゆｺ檎ｺｧ蜿贋ｻ･荳狗ｺｧ蛻ｫ逧���｢倅ｾ晄ｬ｡郛ｩ霑�4荳ｪ闍ｱ譁�ｭ礼ｬｦ�御ｻ･1.1��1.2��1.1.1��1.1.2蠖｢蠑乗���蠎丞捷縲�
% \paragraph{遶�闃ょｱよｬ｡}
% \begin{macro}{\ctexset}
% 隶ｾ鄂ｮ遶�闃ょｱよｬ｡荳ｺsubparagraph縲�
%    \begin{macrocode}
\ctexset { secnumdepth=5 }
%    \end{macrocode}
% \end{macro}
% \paragraph{遶�闃ょ錐蟄抑
% \begin{macro}{\ctexset}
% 隶ｾ鄂ｮ遶�闃ら噪蜷榊ｭ励�
%    \begin{macrocode}
\ctexset
  {
    chapter       / name =
      {
        \@@_lang_switch:nn { 隨ｬ } { \l_@@_chaptername \space },
        \@@_lang_switch:nn { 遶� } { }
      },
    section       / name = { },
    subsection    / name = { },
    subsubsection / name = { },
    paragraph     / name = { },
    subparagraph  / name = { }
  }
%    \end{macrocode}
% \end{macro}
% \paragraph{遶�闃らｼ門捷}
% \begin{macro}{\ctexset}
% \changes{v1.2.1.0}{2022/04/19}{菫ｮ豁｣闍ｱ譁�ｮｺ譁���｢伜ｺ丞捷}
% 隶ｾ鄂ｮ遶�闃らｼ門捷逧�焚蟄苓ｾ灘�譬ｼ蠑上�
%    \begin{macrocode}
\ctex_at_end_preamble:n
  {
    \@@_lang_switch:nn
      {
        \ctexset
          {
            chapter       / number = { \chinese { chapter } },
            section       / number = { \thesection          },
            subsection    / number = { \thesubsection       },
            subsubsection / number = { \thesubsubsection    },
            paragraph     / number = { \theparagraph        },
            subparagraph  / number = { \thesubparagraph     }
          }
      }
      {
        \ctexset
          {
            chapter       / number = { \Roman { chapter }           },
            section       / number = { \thesection                  },
            subsection    / number = { \thesubsection               },
            subsubsection / number = { ( \roman { subsubsection } ) },
            paragraph     / number = { ( \alph { paragraph } )      },
            subparagraph  / number = { ( \arabic { subparagraph } ) }
          }
      }
  }
%    \end{macrocode}
% \end{macro}
% \paragraph{遶�闃ょ柱譬�｢�}
% \begin{macro}{\@@_zh_t:nnn}
% 隶ｾ鄂ｮ荳ｭ譁�ｫ�闃ょ錐蟄怜柱髫丞錘逧���｢伜�螳ｹ譬ｼ蠑上�
% \begin{arguments}
%   \item 蟄嶺ｽ捺酪縲�
%   \item 蟄怜捷縲�
%   \item 菴咲ｽｮ縲�
% \end{arguments}
%    \begin{macrocode}
\cs_new:Npn \@@_zh_t:nnn #1#2#3
  {
    \use:c { @@_ #1 _family : }
    \zihao { \use:c { l_@@_ #2 _tl } }
    \str_if_eq:ccTF { #3 } { c }
      { \centering   }
      { \raggedright }
  }
%    \end{macrocode}
% \end{macro}
% \begin{macro}{\@@_en_t:nnn}
% \changes{v4.4.0.0}{2023/02/03}{譛ｬ遘醍函闍ｱ譁�ｯ穂ｸ夊ｮｾ隶｡謇譛臥ｺｧ蛻ｫ譬�｢倅ｸｭ謨ｰ蟄ｦ蟄嶺ｽ灘刈邊抑
% \changes{v1.2.1.0}{2022/04/19}{闍ｱ譁�ｫ�闃よ�ｷ蠑丞｢槫刈菴咲ｽｮ蜿よ焚}
% 隶ｾ鄂ｮ闍ｱ譁�ｫ�闃ょ錐蟄怜柱髫丞錘逧���｢伜�螳ｹ譬ｼ蠑上�
% \begin{arguments}
%   \item 蟄怜捷縲�
%   \item 菴咲ｽｮ縲�
% \end{arguments}
%    \begin{macrocode}
\cs_new:Npn \@@_en_t:nn #1#2
  {
    \rmfamily
    \zihao { \use:c { l_@@_ #1 _tl } }
    \bfseries \@@_bold_math:
    \str_if_eq:ccTF { #2 } { c }
      { \centering   }
      { \raggedright }
  }
%    \end{macrocode}
% \end{macro}
% \begin{macro}{\ctexset}
% \changes{v4.4.0.0}{2023/02/03}{譛ｬ遘醍函豈穂ｸ夊ｮｾ隶｡荳郤ｧ譬�｢倅ｸｭ謨ｰ蟄ｦ蟄嶺ｽ灘刈邊抑
% \changes{v0.7.0.0}{2022/04/11}{閾ｪ螳壻ｹ臥ｫ�闃よ��｢伜ｭ怜捷}
% 隶ｾ鄂ｮ遶�闃ょ錐蟄怜柱髫丞錘逧���｢伜�螳ｹ譬ｼ蠑上�
%    \begin{macrocode}
\ctex_at_end_preamble:n
  {
    \@@_lang_switch:nn
      {
        \@@_tl_set_if_empty:Nn \l_@@_chap_tl      { 3 }
        \@@_tl_set_if_empty:Nn \l_@@_sec_tl       { 4 }
        \@@_tl_set_if_empty:Nn \l_@@_subsec_tl    { 4 }
        \@@_tl_set_if_empty:Nn \l_@@_subsubsec_tl { 4 }
        \@@_tl_set_if_empty:Nn \l_@@_para_tl      { 4 }
        \@@_tl_set_if_empty:Nn \l_@@_subpara_tl   { 4 }
        \ctexset
          {
            chapter       / format = { \@@_zh_t:nnn { sf } { chap      } { c } \@@_bold_math: },
            section       / format = { \@@_zh_t:nnn { rm } { sec       } { c } },
            subsection    / format = { \@@_zh_t:nnn { rm } { subsec    } { l } },
            subsubsection / format = { \@@_zh_t:nnn { rm } { subsubsec } { l } },
            paragraph     / format = { \@@_zh_t:nnn { rm } { para      } { l } },
            subparagraph  / format = { \@@_zh_t:nnn { rm } { subpara   } { l } }
          }
      }
      {
        \@@_tl_set_if_empty:Nn \l_@@_chap_tl      { 3  }
        \@@_tl_set_if_empty:Nn \l_@@_sec_tl       { 4  }
        \@@_tl_set_if_empty:Nn \l_@@_subsec_tl    { -4 }
        \@@_tl_set_if_empty:Nn \l_@@_subsubsec_tl { -4 }
        \@@_tl_set_if_empty:Nn \l_@@_para_tl      { -4 }
        \@@_tl_set_if_empty:Nn \l_@@_subpara_tl   { -4 }
        \ctexset
          {
            chapter       / format = { \@@_en_t:nn { chap      } { c } },
            section       / format = { \@@_en_t:nn { sec       } { l } },
            subsection    / format = { \@@_en_t:nn { subsec    } { l } },
            subsubsection / format = { \@@_en_t:nn { subsubsec } { l } },
            paragraph     / format = { \@@_en_t:nn { para      } { l } },
            subparagraph  / format = { \@@_en_t:nn { subpara   } { l } }
          }
      }
  }
%    \end{macrocode}
% \end{macro}
% \begin{macro}{\ctexset}
% 隶ｾ鄂ｮ遶�闃よ��｢伜燕蜷守噪蝙ら峩髣ｴ霍昴�
% \changes{v0.4.0.0}{2022/04/05}{隶ｾ鄂ｮ遶�闃よ��｢伜燕蜷守噪蝙ら峩髣ｴ霍掵
%    \begin{macrocode}
\ctexset
  {
    chapter       / fixskip    = true,
    section       / fixskip    = true,
    subsection    / fixskip    = true,
    subsubsection / fixskip    = true,
    paragraph     / fixskip    = true,
    subparagraph  / fixskip    = true,
    chapter       / beforeskip = { \clist_item:Nn \l_@@_before_skip_clist { 1 } },
    section       / beforeskip = { \clist_item:Nn \l_@@_before_skip_clist { 2 } },
    subsection    / beforeskip = { \clist_item:Nn \l_@@_before_skip_clist { 3 } },
    subsubsection / beforeskip = { \clist_item:Nn \l_@@_before_skip_clist { 4 } },
    paragraph     / beforeskip = { \clist_item:Nn \l_@@_before_skip_clist { 5 } },
    subparagraph  / beforeskip = { \clist_item:Nn \l_@@_before_skip_clist { 6 } },
    chapter       / afterskip  = { \clist_item:Nn \l_@@_after_skip_clist  { 1 } },
    section       / afterskip  = { \clist_item:Nn \l_@@_after_skip_clist  { 2 } },
    subsection    / afterskip  = { \clist_item:Nn \l_@@_after_skip_clist  { 3 } },
    subsubsection / afterskip  = { \clist_item:Nn \l_@@_after_skip_clist  { 4 } },
    paragraph     / afterskip  = { \clist_item:Nn \l_@@_after_skip_clist  { 5 } },
    subparagraph  / afterskip  = { \clist_item:Nn \l_@@_after_skip_clist  { 6 } }
  }
%    \end{macrocode}
% \end{macro}
%    \begin{macrocode}
%&lt;/xduugthesis&gt;
%&lt;*xdupgthesis&gt;
%    \end{macrocode}
% \changes{v1.27.0.0}{2022/06/18}{遐皮ｩｶ逕溷ｭｦ菴崎ｮｺ譁�ｫ�闃よ��｢俶�ｷ蠑殉
% \subsubsection{遐皮ｩｶ逕毳
% \paragraph{遶�闃ょｱよｬ｡}
% \begin{macro}{\ctexset}
% 隶ｾ鄂ｮ遶�闃ょｱよｬ｡荳ｺsubparagraph縲�
%    \begin{macrocode}
\ctexset { secnumdepth=5 }
%    \end{macrocode}
% \end{macro}
% \paragraph{遶�闃ょ錐蟄抑
% \begin{macro}{\ctexset}
% \changes{v1.29.2.0}{2022/06/19}{菫ｮ豁｣闍ｱ譁��皮ｩｶ逕溷ｭｦ菴崎ｮｺ譁�ｸ郤ｧ譬�｢伜錐遘ｰ}
% 隶ｾ鄂ｮ遶�闃ら噪蜷榊ｭ励�
%    \begin{macrocode}
\ctex_at_end_preamble:n
  {
    \@@_lang_switch:nn
      { \ctexset { chapter / name = { 隨ｬ, 遶�        } } }
      { \ctexset { chapter / name = { Chapter\space } } }
  }
\ctexset
  {
    section       / name = {        },
    subsection    / name = {        },
    subsubsection / name = { ��, �� },
    paragraph     / name = { ��, �� },
    subparagraph  / name = { ��, �� }
  }
%    \end{macrocode}
% \end{macro}
% \paragraph{遶�闃らｼ門捷}
% \begin{macro}{\ctexset}
% \changes{v1.29.2.0}{2022/06/19}{菫ｮ豁｣闍ｱ譁��皮ｩｶ逕溷ｭｦ菴崎ｮｺ譁�ｸ郤ｧ譬�｢俶焚蟄苓ｾ灘�譬ｼ蠑殉
% 隶ｾ鄂ｮ遶�闃らｼ門捷逧�焚蟄苓ｾ灘�譬ｼ蠑上�
%    \begin{macrocode}
\ctex_at_end_preamble:n
  {
    \@@_lang_switch:nn
      { \ctexset { chapter / number = { \chinese { chapter } } } }
      { \ctexset { chapter / number = { \Roman   { chapter } } } }
  }
\ctexset
  {
    section       / number = { \thesection               },
    subsection    / number = { \thesubsection            },
    subsubsection / number = { \arabic { subsubsection } },
    paragraph     / number = { \alph { paragraph }       },
    subparagraph  / number = { \roman { subparagraph }   }
  }
%    \end{macrocode}
% \end{macro}
% \paragraph{遶�闃よ�ｼ蠑殉
% \begin{macro}
%   {
%     \@@_sec_format_i:n,
%     \@@_sec_format_ii:,
%     \@@_sec_format_iii:,
%     \ctexset
%   }
% \changes{v4.4.0.0}{2023/02/03}{遐皮ｩｶ逕溷ｭｦ菴崎ｮｺ譁���｢倅ｸｭ謨ｰ蟄ｦ蟄嶺ｽ灘刈邊抑
% \changes{v1.29.2.0}{2022/06/19}{菫ｮ豁｣闍ｱ譁��皮ｩｶ逕溷ｭｦ菴崎ｮｺ譁�ｸ郤ｧ譬�｢伜ｭ嶺ｽ党
% 隶ｾ鄂ｮ遶�闃ょ錐蟄怜柱髫丞錘逧���｢伜�螳ｹ譬ｼ蠑上�
%    \begin{macrocode}
\cs_new:Npn \@@_sec_format_i:n #1
  {
    \@@_rm_family:
    \bfseries \@@_bold_math:
    \zihao { #1 }
    \dim_set:Nn \baselineskip { 20pt }
  }
\cs_new:Npn \@@_sec_format_ii:
  {
    \@@_sf_family:
    \centering
    \@@_bold_math:
    \zihao { 3 }
    \dim_set:Nn \baselineskip { 20pt }
  }
\cs_new:Npn \@@_sec_format_iii:
  { \@@_rm_family: \centering \zihao { 3 } \dim_set:Nn \baselineskip { 20pt } }
\ctex_at_end_preamble:n
  {
    \@@_lang_switch:nn
      { \ctexset { chapter / format = { \@@_sec_format_ii:  } } }
      { \ctexset { chapter / format = { \@@_sec_format_iii: } } }
  }
\ctexset
  {
    section       / format = { \@@_sec_format_i:n { -3 } },
    subsection    / format = { \@@_sec_format_i:n { 4  } },
    subsubsection / format = { \@@_sec_format_i:n { 4  } },
    paragraph     / format = { \@@_sec_format_i:n { 4  } },
    subparagraph  / format = { \@@_sec_format_i:n { 4  } }
  }
%    \end{macrocode}
% \end{macro}
% \paragraph{遶�闃らｼ門捷荳取��｢倬龍霍掵
% \begin{macro}{\ctexset}
% 隶ｾ鄂ｮ遶�闃らｼ門捷荳取��｢倬龍霍昴�
%    \begin{macrocode}
\ctexset
  {
    chapter       / aftername = { \quad   },
    section       / aftername = { \enskip },
    subsection    / aftername = { \enskip },
    subsubsection / aftername = { },
    paragraph     / aftername = { },
    subparagraph  / aftername = { }
  }
%    \end{macrocode}
% \end{macro}
% \paragraph{遶�闃らｼｩ霑孺
% \begin{macro}{\ctexset}
% 隶ｾ鄂ｮ遶�闃よ��｢俶悽霄ｫ逧�ｦ冶｡檎ｼｩ霑帙�
%    \begin{macrocode}
\ctexset
  {
    chapter       / indent = { 0bp  },
    section       / indent = { 0bp  },
    subsection    / indent = { 24bp },
    subsubsection / indent = { 24bp },
    paragraph     / indent = { 24bp },
    subparagraph  / indent = { 24bp }
  }
%    \end{macrocode}
% \end{macro}
% \paragraph{遶�闃る龍霍掵
% \begin{macro}{\ctexset}
% 隶ｾ鄂ｮ遶�闃よ��｢伜燕蜷守噪蝙ら峩髣ｴ霍昴�
%    \begin{macrocode}
\ctexset
  {
    chapter       / beforeskip = { 6pt  },
    section       / beforeskip = { 18pt },
    subsection    / beforeskip = { 12pt },
    subsubsection / beforeskip = { 12pt },
    paragraph     / beforeskip = { 12pt },
    subparagraph  / beforeskip = { 12pt },
    chapter       / afterskip  = { 18pt },
    section       / afterskip  = { 12pt },
    subsection    / afterskip  = { 6pt  },
    subsubsection / afterskip  = { 6pt  },
    paragraph     / afterskip  = { 6pt  },
    subparagraph  / afterskip  = { 6pt  }
  }
%    \end{macrocode}
% \end{macro}
%    \begin{macrocode}
%&lt;/xdupgthesis&gt;
%&lt;*thesis&gt;
%    \end{macrocode}
% \subsection{逶ｮ蠖扶
% \begin{macro}{\RequirePackage}
% \changes{v0.4.1.0}{2022/04/05}{隶ｾ鄂ｮ逶ｮ蠖墓�ｷ蠑殉
% \changes{v1.14.1.0}{2022/05/10}{菴ｿ逕ｨ\tnx{PassOptionsToPackage}莨�騾箪pkgx{tocloft}螳丞桁蜿よ焚}
% 隶ｾ鄂ｮ逶ｮ蠖墓�ｷ蠑上�
%    \begin{macrocode}
\PassOptionsToPackage { titles } { tocloft }
\RequirePackage { tocloft }
%    \end{macrocode}
% \end{macro}
%    \begin{macrocode}
%&lt;/thesis&gt;
%&lt;*xduugthesis&gt;
%    \end{macrocode}
% \subsubsection{譛ｬ遘醍函}
% \begin{variable}{\cftchapleader}
% 菫ｮ謾ｹ逶ｮ蠖穂ｸｭ荳郤ｧ譬�｢伜ｼ募ｯｼ轤ｹ縲�
%    \begin{macrocode}
\cs_set:Npn \cftchapleader { \bfseries \cftdotfill { \cftdotsep } }
%    \end{macrocode}
% \end{variable}
% \begin{variable}
%   {
%     \cftbeforechapskip,
%     \cftbeforesecskip
%   }
% \changes{v1.10.1.0}{2022/05/04}{菫ｮ豁｣逶ｮ蠖墓擅逶ｮ髣ｴ霍掵
% 隶ｾ鄂ｮ荳郤ｧ譬�｢倅ｸ主�菴吝推郤ｧ譬�｢俶擅逶ｮ蜑榊桙逶ｴ髣ｴ霍昜ｸ閾ｴ縲�
%    \begin{macrocode}
\dim_set_eq:NN \cftbeforechapskip \cftbeforesecskip
%    \end{macrocode}
% \end{variable}
% \begin{variable}
%   {
%     \cftchapfont,
%     \cftchappagefont
%   }
% \changes{v4.4.0.0}{2023/02/03}{譛ｬ遘醍函豈穂ｸ夊ｮｾ隶｡逶ｮ蠖穂ｸ郤ｧ譬�｢倅ｸｭ謨ｰ蟄ｦ蟄嶺ｽ灘刈邊抑
% 隶ｾ鄂ｮ荳郤ｧ譬�｢伜所逶ｸ蠎秘｡ｵ遐∝ｭ嶺ｽ灘ｭ怜捷縲�
%    \begin{macrocode}
\clist_map_inline:nn
  {
    \cftchapfont,
    \cftchappagefont
  }
  { \renewcommand { #1 } { \@@_rm_family: \zihao { -4 } \bfseries \@@_bold_math: } }
%    \end{macrocode}
% \end{variable}
% \begin{variable}
%   {
%     \cftsecfont,,
%     \cftsubsecfont,,
%     \cftsubsubsecfont,,
%     \cftparafont,,
%     \cftsubparafont,,
%     \cftsecpagefont,,
%     \cftsubsecpagefont,,
%     \cftsubsubsecpagefont,,
%     \cftparapagefont,,
%     \cftsubparapagefont
%   }
% 隶ｾ鄂ｮ莠御ｸ牙屁莠泌�郤ｧ譬�｢伜所逶ｸ蠎秘｡ｵ遐∝ｭ嶺ｽ灘ｭ怜捷縲�
%    \begin{macrocode}
\clist_map_inline:nn
  {
    \cftsecfont,
    \cftsubsecfont,
    \cftsubsubsecfont,
    \cftparafont,
    \cftsubparafont,
    \cftsecpagefont,
    \cftsubsecpagefont,
    \cftsubsubsecpagefont,
    \cftparapagefont,
    \cftsubparapagefont
  }
  { \renewcommand { #1 } { \@@_rm_family: \zihao { -4 } } }
%    \end{macrocode}
% \end{variable}
%    \begin{macrocode}
%&lt;/xduugthesis&gt;
%&lt;*xdupgthesis&gt;
%    \end{macrocode}
% \changes{v1.28.0.0}{2022/06/18}{遐皮ｩｶ逕溷ｭｦ菴崎ｮｺ譁�岼蠖墓�ｷ蠑殉
% \subsubsection{遐皮ｩｶ逕毳
% \begin{variable}{\cftdotsep}
% 菫ｮ謾ｹ蠑募ｯｼ轤ｹ荵矩龍逧�ｷ晉ｦｻ縲�
%    \begin{macrocode}
\cs_set:Npn \cftdotsep { 0 }
%    \end{macrocode}
% \end{variable}
% \begin{variable}{\cftchapleader}
% 菫ｮ謾ｹ逶ｮ蠖穂ｸｭ荳郤ｧ譬�｢伜ｼ募ｯｼ轤ｹ縲�
%    \begin{macrocode}
\cs_set:Npn \cftchapleader { \cftdotfill { \cftdotsep } }
%    \end{macrocode}
% \end{variable}
% \begin{variable}
%   {
%     \cftbeforechapskip,
%     \cftbeforesecskip
%   }
% 隶ｾ鄂ｮ荳郤ｧ譬�｢倅ｸ主�菴吝推郤ｧ譬�｢俶擅逶ｮ蜑榊桙逶ｴ髣ｴ霍昜ｸ閾ｴ縲�
%    \begin{macrocode}
\dim_set_eq:NN \cftbeforechapskip \cftbeforesecskip
%    \end{macrocode}
% \end{variable}
% \begin{variable}{\cftchapfont}
% \changes{v4.4.0.0}{2023/02/03}{荳ｭ譁��皮ｩｶ逕溷ｭｦ菴崎ｮｺ譁�岼蠖穂ｸｭ荳郤ｧ譬�｢倅ｸｭ謨ｰ蟄ｦ蟄嶺ｽ灘刈邊抑
% \changes{v1.29.2.0}{2022/06/19}{菫ｮ豁｣闍ｱ譁��皮ｩｶ逕溷ｭｦ菴崎ｮｺ譁�岼蠖穂ｸｭ荳郤ｧ譬�｢伜ｭ嶺ｽ党
% 隶ｾ鄂ｮ荳郤ｧ譬�｢伜ｭ嶺ｽ灘ｭ怜捷縲�
%    \begin{macrocode}
\ctex_at_end_preamble:n
  {
    \@@_lang_switch:nn
      { \cs_set:Npn \cftchapfont { \@@_sf_family: \@@_bold_math: \zihao { -4 } } }
      { \cs_set:Npn \cftchapfont { \@@_rm_family: \zihao { -4 } } }
  }
%    \end{macrocode}
% \end{variable}
% \begin{variable}
%   {
%     \cftsecfont,
%     \cftsubsecfont,
%     \cftchappagefont,
%     \cftsecpagefont,
%     \cftsubsecpagefont
%   }
% 隶ｾ鄂ｮ莠御ｸ臥ｺｧ譬�｢伜所荳莠御ｸ臥ｺｧ譬�｢倬｡ｵ遐∝ｭ嶺ｽ灘ｭ怜捷縲�
%    \begin{macrocode}
\clist_map_inline:nn
  {
    \cftsecfont,
    \cftsubsecfont,
    \cftchappagefont,
    \cftsecpagefont,
    \cftsubsecpagefont
  }
  { \renewcommand { #1 } { \@@_rm_family: \zihao { -4 } } }
%    \end{macrocode}
% \end{variable}
%    \begin{macrocode}
%&lt;/xdupgthesis&gt;
%&lt;*thesis&gt;
%    \end{macrocode}
% \subsection{譁�ｻｶ驟咲ｽｮ}
% \begin{macro}
%   {
%     \input,
%     \include,
%     \includegraphics
%   }
% \changes{v2.12.0.0}{2022/07/01}{驟咲ｽｮ譁�ｻｶ謳懃ｴ｢霍ｯ蠕м
% 驟咲ｽｮ譁�ｻｶ謳懃ｴ｢霍ｯ蠕��
%    \begin{macrocode}
\ctex_at_end_preamble:n
  {
    \seq_if_empty:NF \l_@@_search_path_clist
      {
        \clist_map_inline:Nn \l_@@_search_path_clist
          { \seq_put_right:Nn \l_file_search_path_seq { #1 } }
      }
    \bool_if:NT \l_@@_fix_input_bool
      {
        \cs_new_eq:NN \@@_org_input:n \input
        \RenewDocumentCommand { \input } { m }
          { \@@_org_input:n { ./ #1 } }
      }
    \bool_if:NT \l_@@_fix_include_bool
      {
        \cs_new_eq:NN \@@_org_include:n \include
        \RenewDocumentCommand { \include } { m }
          { \@@_org_include:n { ./ #1 } }
      }
    \bool_if:NT \l_@@_fix_graphics_bool
      {
        \cs_new_eq:NN \@@_org_includegraphics:n \includegraphics
        \RenewDocumentCommand { \includegraphics } { o m }
          {
            \IfNoValueTF { #1 }
              { \@@_org_includegraphics:n        { ./ #2 } }
              { \@@_org_includegraphics:n [ #1 ] { ./ #2 } }
          }
      }
  }
%    \end{macrocode}
% \end{macro}
% \subsection{蜈ｬ蠑殉
% \begin{macro}{\theequation}
% 驥榊ｮ壻ｹ牙�蠑冗ｼ門捷譬ｷ蠑上�
%    \begin{macrocode}
\renewcommand { \theequation } { \thechapter - \arabic { equation } }
%    \end{macrocode}
% \end{macro}
% \subsection{豬ｮ蜉ｨ菴党
% \begin{variable}
%   {
%     \topfraction,
%     \floatpagefraction
%   }
% \changes{v2.11.0.0}{2022/06/30}{髯仙宛豬ｮ蜉ｨ邇ｯ蠅�頃逕ｨ螟ｧ蟆殉
% 髯仙宛豬ｮ蜉ｨ邇ｯ蠅�頃逕ｨ螟ｧ蟆上�
%    \begin{macrocode}
\cs_set:Npn \topfraction       { .8 }
\cs_set:Npn \floatpagefraction { .8 }
%    \end{macrocode}
% \end{variable}
% \subsection{邂玲ｳ扶
% \begin{macro}{\ALG@name,\algorithmcfname}
% \changes{v1.1.1.0}{2022/04/15}{豎牙喧邂玲ｳ墓��ｭｾ蜷咲ｧｰ}
% 邂玲ｳ墓��ｭｾ蜷咲ｧｰ縲�
%    \begin{macrocode}
\ctex_at_end_preamble:n
  {
    \clist_map_inline:nn
      {
        { \algorithmname   },
        { \ALG@name        },
        { \algorithmcfname }
      }
      { \cs_set:Npn #1 { \@@_lang_switch:nn { 邂玲ｳ� } { Algorithm } } }
  }
%    \end{macrocode}
% \end{macro}
% \begin{macro}{\thealgorithm,\floatplacement}
% \changes{v0.10.1.0}{2022/04/13}{驥榊ｮ壻ｹ臥ｮ玲ｳ慕ｼ門捷譬ｷ蠑殉
% \changes{v0.10.2.0}{2022/04/14}{菫ｮ豁｣邂玲ｳ慕識蠅�悴蜉�霓ｽ蟇ｼ閾ｴ逧�裏豕慕ｼ冶ｯ挿
% \changes{v0.10.4.0}{2022/04/14}{菫ｮ豁｣\pkgx{algorithm}邂玲ｳ慕ｼ門捷譬ｷ蠑殉
% \changes{v1.0.1.0}{2022/04/14}{菫ｮ謾ｹ\pkgx{algorithm}邂玲ｳ墓ｵｮ蜉ｨ菴馴ｻ倩ｮ､豬ｮ蜉ｨ菴咲ｽｮ}
% \changes{v1.1.2.0}{2022/04/15}{譽豬区弍蜷ｦ蜉�霓ｽ\pkgx{algorithm}}
% 驥榊ｮ壻ｹ噂pkgx{algorithm}螳丞桁邂玲ｳ慕ｼ門捷譬ｷ蠑丞ｹｶ菫ｮ謾ｹ鮟倩ｮ､豬ｮ蜉ｨ菴咲ｽｮ縲�
%    \begin{macrocode}
\PassOptionsToPackage { chapter } { algorithm }
\ctex_at_end_preamble:n
  {
    \@ifpackageloaded { algorithm }
      {
        \cs_if_exist:NT \thealgorithm
          {
            \floatplacement { algorithm } { tbp }
            \cs_set:Npn \thealgorithm { \thechapter . \arabic { algorithm } }
%    \end{macrocode}
% \end{macro}
% \begin{macro}{\renewenvironment}
% \changes{v1.1.0.0}{2022/04/15}{隶ｾ鄂ｮ\pkgx{algorithm}邂玲ｳ募�螳ｹ蟄怜捷}
% 隶ｾ鄂ｮ\pkgx{algorithm}邂玲ｳ募�螳ｹ蟄怜捷縲�
%    \begin{macrocode}
            \bool_if:NT \l_@@_alg_small_bool
              {
                \renewenvironment { algorithm }
                  {
                    \@nameuse { fst@algorithm }
                    \@float@setevery { algorithm }
                    \ctex_gadd_ltxhook:nn
                      { cmd/@floatboxreset/after }
                      { \zihao { 5 } }
                    \@float { algorithm }
                  }
                  { \float@end }
              }
          }
      }
      { }
  }
%    \end{macrocode}
% \end{macro}
% \begin{macro}{\thealgocf}
% \changes{v0.10.4.0}{2022/04/14}{菫ｮ豁｣\pkgx{algorithm2e}邂玲ｳ慕ｼ門捷譬ｷ蠑殉
% \changes{v1.1.2.0}{2022/04/15}{譽豬区弍蜷ｦ蜉�霓ｽ\pkgx{algorithm2e}[]}
% 驥榊ｮ壻ｹ噂pkgx{algorithm2e}螳丞桁邂玲ｳ慕ｼ門捷譬ｷ蠑上�
%    \begin{macrocode}
\PassOptionsToPackage { algochapter } { algorithm2e }
\ctex_at_end_preamble:n
  {
    \@ifpackageloaded { algorithm2e }
      {
        \cs_if_exist:NT \thealgocf
          {
            \cs_set:Npn \thealgocf { \thechapter . \arabic { algocf } }
%    \end{macrocode}
% \end{macro}
% \begin{macro}{\renewenvironment}
% \changes{v1.0.3.0}{2022/04/15}{菫ｮ謾ｹ\pkgx{algorithm2e}邂玲ｳ墓ｵｮ蜉ｨ菴馴ｻ倩ｮ､豬ｮ蜉ｨ菴咲ｽｮ}
% 菫ｮ謾ｹ\pkgx{algorithm2e}邂玲ｳ墓ｵｮ蜉ｨ菴馴ｻ倩ｮ､豬ｮ蜉ｨ菴咲ｽｮ縲�
%    \begin{macrocode}
            \renewenvironment { \algocf@envname } [ 1 ] [ tbp ]
              {
                \setboolean { algocf@algostar } { false }
                \setboolean { algocf@procenvironment } { false }
                \gdef \algocfautorefname { \algorithmautorefname }
                \begin { algocf@algorithm } [ #1 ] \ignorespaces
              }
              { \end { algocf@algorithm } \ignorespacesafterend }
%    \end{macrocode}
% \end{macro}
% \begin{macro}{\SetAlFnt}
% \changes{v1.1.0.0}{2022/04/15}{隶ｾ鄂ｮ\pkgx{algorithm2e}邂玲ｳ募�螳ｹ蟄怜捷}
% 隶ｾ鄂ｮ\pkgx{algorithm2e}邂玲ｳ募�螳ｹ蟄怜捷縲�
%    \begin{macrocode}
            \bool_if:NT \l_@@_alg_small_bool
              { \SetAlFnt { \zihao { 5 } } }
          }
      }
      { }
  }
%    \end{macrocode}
% \end{macro}
% \subsection{Caption}
% \begin{macro}{\DeclareCaptionLabelSeparator,\DeclareCaptionFont,\captionsetup}
% \changes{v6.0.1.0}{2023/03/03}{菫ｮ豁｣蟄仙崟蟄占｡ｨcaption蝙ら峩髣ｴ霍掵
% \changes{v5.2.0.0}{2023/02/23}{隶ｾ鄂ｮ蝗ｾ陦ｨcaption蜑榊錘蝙ら峩髣ｴ霍掵
% \changes{v3.0.0.0}{2022/12/03}{隶ｾ鄂ｮ蝗ｾ陦ｨcaption譬ｼ蠑殉
% \changes{v2.17.0.0}{2022/11/28}{隶ｾ鄂ｮ蝗ｾ陦ｨcaption譬ｼ蠑殉
% \changes{v0.1.2.0}{2022/04/03}{隶ｾ鄂ｮ蝗ｾ迚���ｭｾ荳主錘髱｢譬�｢倅ｹ矩龍逧�龍霍掵
% \changes{v0.1.3.0}{2022/04/03}{隶ｾ鄂ｮ蝗ｾ迚���ｭｾ荳取��｢伜ｭ嶺ｽ灘ｭ怜捷}
% \changes{v2.10.1.0}{2022/06/26}{菫ｮ螟咲ｮ玲ｳ墓��ｭｾ荳取��｢伜ｭ嶺ｽ灘ｭ怜捷隴ｦ蜻笠
% 隶ｾ鄂ｮ蝗ｾ陦ｨ譬�ｭｾ荳主錘髱｢譬�｢倅ｹ矩龍逧�龍霍晏所caption蟄嶺ｽ灘ｭ怜捷縲�
%    \begin{macrocode}
\PassOptionsToPackage { ruled } { caption }
\RequirePackage { caption }
\DeclareCaptionLabelSeparator { customskip } { \hskip \l_@@_cap_label_sep_tl }
\DeclareCaptionFont { customfont   } { \@@_rm_family: \zihao { 5 } }
\captionsetup
  {
    strut    = off,
    labelsep = customskip,
    font     = customfont
  }
\captionsetup [ subfigure ] { strut = on, skip = 0pt }
\captionsetup [ subtable  ] { strut = on, skip = 0pt }
\dim_set_eq:NN \intextsep \abovecaptionskip
\ctex_at_end_preamble:n
  {
    \tl_if_eq:NnTF \l_@@_ft_cap_format_tl { hang }
      { \captionsetup { format = hang  } }
      { \captionsetup { format = plain } }
    \tl_if_eq:NnTF \l_@@_ft_cap_align_tl { left }
      { \captionsetup { singlelinecheck = false, justification = justified } }
      {
        \tl_if_eq:NnTF \l_@@_ft_cap_align_tl { centering }
          { \captionsetup { singlelinecheck = false, justification = centerlast } }
          { \captionsetup { singlelinecheck = true, justification = justified   } }
      }
  }
%    \end{macrocode}
% \end{macro}
% \begin{macro}{\DeclareCaptionFont,\captionsetup*}
% \changes{v4.4.2.0}{2023/02/06}{菫ｮ豁｣\pkgx{algorithm}邂玲ｳ苗aption蟇ｹ鮨先婿蠑殉
% \changes{v3.1.1.0}{2022/12/04}{菫ｮ豁｣\pkgx{algorithm}邂玲ｳ苗aption譬ｼ蠑剰ｮｾ鄂ｮ}
% \changes{v3.0.0.0}{2022/12/03}{隶ｾ鄂ｮ\pkgx{algorithm}邂玲ｳ苗aption譬ｼ蠑殉
% \changes{v2.18.0.0}{2022/11/28}{隶ｾ鄂ｮ\pkgx{algorithm}邂玲ｳ苗aption蟇ｹ鮨先婿蠑殉
% \changes{v2.17.0.0}{2022/11/28}{隶ｾ鄂ｮ\pkgx{algorithm}邂玲ｳ苗aption譬ｼ蠑殉
% \changes{v1.0.4.0}{2022/04/15}{隶ｾ鄂ｮ\pkgx{algorithm}邂玲ｳ墓��ｭｾ荳取��｢伜ｭ嶺ｽ灘ｭ怜捷蜿頑��ｭｾ荳主錘髱｢譬�｢倅ｹ矩龍逧�龍霍掵
% \changes{v1.1.3.0}{2022/04/15}{菫ｮ豁｣\pkgx{algorithm}邂玲ｳ墓��ｭｾ蟄嶺ｽ鍋ｳｻ蛻抑
% \changes{v2.6.0.0}{2022/06/25}{隶ｾ鄂ｮ\pkgx{algorithm}邂玲ｳ匹aption蟄怜捷譏ｯ蜷ｦ荳ｺ莠泌捷}
% 隶ｾ鄂ｮ\pkgx{algorithm}邂玲ｳ墓��ｭｾ荳取��｢伜ｭ嶺ｽ灘ｭ怜捷蜿頑��ｭｾ荳主錘髱｢譬�｢倅ｹ矩龍逧�龍霍昴�
%    \begin{macrocode}
\DeclareCaptionFont { algcustomfont }
  {
    \@@_rm_family:
    \bool_if:NTF \l_@@_alg_small_cap_bool
      { \zihao { 5  } }
      { \zihao { -4 } }
  }
\captionsetup* [ algorithm ]
  {
    labelsep  = customskip,
    labelfont = algcustomfont,
    font      = algcustomfont
  }
\ctex_at_end_preamble:n
  {
    \tl_if_eq:NnTF \l_@@_alg_cap_format_tl { hang }
      { \captionsetup* [ algorithm ] { format = hang  } }
      { \captionsetup* [ algorithm ] { format = plain } }
    \captionsetup* [ ruled ] { strut = off }
    \tl_if_eq:NnTF \l_@@_alg_cap_align_tl { left }
      {
        \captionsetup* [ algorithm ]
          { singlelinecheck = false, justification = justified }
      }
      {
        \tl_if_eq:NnTF \l_@@_alg_cap_align_tl { centering }
          {
            \captionsetup* [ algorithm ]
              { singlelinecheck = false, justification = centerlast }
          }
          {
            \captionsetup* [ ruled     ] { singlelinecheck = true    }
            \captionsetup* [ algorithm ] { justification = justified }
          }
      }
  }
%    \end{macrocode}
% \end{macro}
% \changes{v4.4.1.0}{2023/02/06}{菫ｮ豁｣\pkgx{algorithm}邂玲ｳ穂ｸ臥ｺｿ髣ｴ霍晞�鄂ｮ}
% \changes{v3.1.0.0}{2022/12/03}{隶ｾ鄂ｮ\pkgx{algorithm}邂玲ｳ穂ｸ臥ｺｿ髣ｴ霍掵
% \begin{macro}{\ctex_at_end_preamble:n}
% 隶ｾ鄂ｮ\pkgx{algorithm}邂玲ｳ穂ｸ臥ｺｿ髣ｴ霍昴�
%    \begin{macrocode}
\ctex_at_end_preamble:n
  {
    \bool_if:NT \l_@@_add_alg_rule_vspace_bool
      {
        \@ifpackageloaded { algorithm }
          {
            \cs_set:Npn \fs@ruled
              {
                \cs_set_eq:NN \@fs@capt \floatc@plain
                \cs_set:Npn   \@fs@pre  { \hrule height .8pt depth 0pt \kern 5pt }
                \cs_set:Npn   \@fs@post { \kern 5pt \hrule \relax                }
                \cs_set:Npn   \@fs@mid  { \kern 5pt \hrule \kern 5pt             }
                \cs_set_eq:NN \@fs@iftopcapt \iftrue
              }
          }
          { }
      }
  }
%    \end{macrocode}
% \end{macro}
% \begin{macro}{\SetAlgoCaptionSeparator,\SetAlCapNameFnt,\SetAlCapFnt}
% \changes{v2.18.0.0}{2022/11/29}{隶ｾ鄂ｮ\pkgx{algorithm2e}邂玲ｳ苗aption蟇ｹ鮨先婿蠑殉
% \changes{v2.17.0.0}{2022/11/28}{隶ｾ鄂ｮ\pkgx{algorithm2e}邂玲ｳ苗aption譬ｼ蠑殉
% \changes{v1.0.0.0}{2022/04/14}{菫ｮ豁｣\pkgx{algorithm2e}邂玲ｳ墓��ｭｾ荳主錘髱｢譬�｢倅ｹ矩龍逧�龍霍掵
% \changes{v1.0.4.0}{2022/04/15}{菫ｮ豁｣\pkgx{algorithm2e}邂玲ｳ墓��ｭｾ荳取��｢伜ｭ嶺ｽ灘ｭ怜捷}
% \changes{v2.6.0.0}{2022/06/25}{隶ｾ鄂ｮ\pkgx{algorithm2e}邂玲ｳ匹aption蟄怜捷譏ｯ蜷ｦ荳ｺ莠泌捷}
% 隶ｾ鄂ｮ\pkgx{algorithm2e}邂玲ｳ墓��ｭｾ荳取��｢伜ｭ嶺ｽ灘ｭ怜捷蜿頑��ｭｾ荳主錘髱｢譬�｢倅ｹ矩龍逧�龍霍昴�
%    \begin{macrocode}
\ctex_at_end_preamble:n
  {
    \@ifpackageloaded { algorithm2e }
      {
        \SetAlgoCaptionSeparator { \hbox_to_wd:nn { \l_@@_cap_label_sep_tl } { } }
        \bool_if:NTF \l_@@_alg_small_cap_bool
          {
            \SetAlCapNameFnt         { \@@_rm_family: \zihao { 5  } }
            \SetAlCapFnt             { \@@_rm_family: \zihao { 5  } }
          }
          {
            \SetAlCapNameFnt         { \@@_rm_family: \zihao { -4 } }
            \SetAlCapFnt             { \@@_rm_family: \zihao { -4 } }
          }
        \SetAlCapSty { }
%    \end{macrocode}
% 隶ｾ鄂ｮ\pkgx{algorithm2e}邂玲ｳ苗aption譬ｼ蠑丞所蟇ｹ鮨先婿蠑上�
%    \begin{macrocode}
        \RenewDocumentCommand { \algocf@makecaption } { mm }
          {
            \box_clear_new:N \l_@@_algiie_capt_box
            \hbox_set:Nn \l_@@_algiie_capt_box
              { \AlCapFnt #1 \algocf@capseparator \AlCapNameFnt #2 }
            \dim_compare:nNnTF { \box_wd:N \l_@@_algiie_capt_box } &gt; { \hsize }
              {
                \tl_if_eq:NnTF \l_@@_alg_cap_format_tl { hang }
                  {
                    \tl_if_eq:NnTF \l_@@_alg_cap_align_tl { centering }
                      {
                        \makebox { \AlCapFnt #1 \algocf@capseparator }
                        \makebox
                          {
                            \parbox [ t ] { \hsize }
                              { \centering \AlCapNameFnt #2 }
                          }
                      }
                      {
                        \makebox { \AlCapFnt #1 \algocf@capseparator }
                        \makebox { \parbox [ t ] { \hsize } { \AlCapNameFnt #2 } }
                      }
                  }
                  {
                    \tl_if_eq:NnTF \l_@@_alg_cap_align_tl { centering }
                      {
                        \parbox { \columnwidth }
                          { \centering \AlCapFnt #1 \algocf@capseparator \AlCapNameFnt #2 }
                      }
                      {
                        \parbox { \columnwidth }
                          { \AlCapFnt #1 \algocf@capseparator \AlCapNameFnt #2 }
                      }
                  }
              }
              {
                \tl_if_eq:NnTF \l_@@_alg_cap_align_tl { left }
                  {
                    \parbox { \columnwidth }
                      { \AlCapFnt #1 \algocf@capseparator \AlCapNameFnt #2 }
                  }
                  {
                    \parbox { \columnwidth }
                      { \centering \AlCapFnt #1 \algocf@capseparator \AlCapNameFnt #2 }
                  }
              }
          }
        \RenewDocumentCommand { \algocf@makecaption@ruled } { mm }
          { \global \sbox \algocf@capbox { \algocf@makecaption { #1 } { #2 } } }
        \RenewDocumentCommand { \algocf@makecaption@boxed } { mm }
          { \global \sbox \algocf@capbox { \algocf@makecaption { #1 } { #2 } } }
      }
      { }
  }
%    \end{macrocode}
% \end{macro}
% \changes{v4.4.1.0}{2023/02/06}{菫ｮ豁｣\pkgx{algorithm2e}邂玲ｳ穂ｸ臥ｺｿ髣ｴ霍晞�鄂ｮ}
% \changes{v3.1.0.0}{2022/12/03}{隶ｾ鄂ｮ\pkgx{algorithm2e}邂玲ｳ穂ｸ臥ｺｿ髣ｴ霍掵
% \begin{macro}{\ctex_at_end_preamble:n}
% 隶ｾ鄂ｮ\pkgx{algorithm2e}邂玲ｳ穂ｸ臥ｺｿ髣ｴ霍昴�
%    \begin{macrocode}
\ctex_at_end_preamble:n
  {
    \bool_if:NT \l_@@_add_alg_rule_vspace_bool
      {
        \@ifpackageloaded { algorithm2e }
          {
            \dim_set:Nn \interspacetitleruled { 5pt }
            \dim_set:Nn \interspacealgoruled  { 5pt }
          }
          { }
      }
  }
%    \end{macrocode}
% \end{macro}
% \begin{macro}{\@@_tblr_caption_box:n}
% \changes{v2.16.2.0}{2022/11/27}{\envx[]{longtblr}邇ｯ蠅�紛鬘ｵ螳ｽ逧�caption逶貞ｭ図
% \pkgx[]{tabularray}荳ｭ\envx{longtblr}邇ｯ蠅�紛鬘ｵ螳ｽ逧�caption逶貞ｭ舌�
%    \begin{macrocode}
\cs_new:Npn \@@_tblr_caption_box:n #1
  { \makebox [ \tablewidth ] { \parbox { \columnwidth } { #1 } } }
%    \end{macrocode}
% \end{macro}
% \begin{macro}{\SetTblrStyle,\DefTblrTemplate}
% \changes{v5.2.0.0}{2023/02/23}{騾る�\pkgx{tabularray}螳丞桁caption蜑榊錘蝙ら峩髣ｴ霍掵
% \changes{v2.17.0.0}{2022/11/28}{隶ｾ鄂ｮ\pkgx{tabularray}荳ｭ\envx{longtblr}邇ｯ蠅ツaption譬ｼ蠑殉
% \changes{v2.16.3.0}{2022/11/27}{騾る�荳榊酔隸ｭ險荳狗噪\envx{longtblr}邇ｯ蠅�ｸｭ譬�｢伜柱蟆ｾ驛ｨ逧�ｻｭ陦ｨ譁�悽}
% \changes{v2.16.2.0}{2022/11/27}{菫ｮ豁｣\envx{longtblr}邇ｯ蠅ツaption螳ｽ蠎ｦ}
% \changes{v1.11.0.0}{2022/05/06}{騾る�\pkgx{tabularray}螳丞桁caption譬ｷ蠑殉
% 隶ｾ鄂ｮ\pkgx{tabularray}螳丞桁荳ｭ陦ｨ譬ｼ譬�ｭｾ荳主錘髱｢譬�｢倅ｹ矩龍逧�龍霍晏所caption蟄嶺ｽ灘ｭ怜捷縲�
%    \begin{macrocode}
\ctex_at_end_preamble:n
  {
    \@ifpackageloaded { tabularray }
      {
        \SetTblrOuter [ tblr, longtblr, talltblr ]
          { presep = \belowcaptionskip + \intextsep, headsep = \abovecaptionskip }
        \SetTblrStyle { head } { font = \@@_rm_family: \zihao { 5 } }
        \DefTblrTemplate { caption-sep } { default }
          { \hskip \l_@@_cap_label_sep_tl }
        \tl_if_eq:NnTF \l_@@_cap_format_tl { hang }
          {
            \DefTblrTemplate { firsthead } { default }
              { \@@_tblr_caption_box:n { \UseTblrTemplate { caption  } { default } } }
            \DefTblrTemplate { middlehead, lasthead } { default }
              { \@@_tblr_caption_box:n { \UseTblrTemplate { capcont  } { default } } }
          }
          {
            \DefTblrTemplate { firsthead } { default }
              { \@@_tblr_caption_box:n { \UseTblrTemplate { caption  } { plain } } }
            \DefTblrTemplate { middlehead, lasthead } { default }
              { \@@_tblr_caption_box:n { \UseTblrTemplate { capcont  } { plain } } }
          }
        \DefTblrTemplate { firstfoot, middlefoot } { default }
          { \@@_tblr_caption_box:n { \UseTblrTemplate { contfoot } { default } } }
        \DefTblrTemplate { lastfoot } { default }
          {
            \@@_tblr_caption_box:n
              {
                \UseTblrTemplate { note   } { default }
                \UseTblrTemplate { remark } { default }
              }
          }
        \DefTblrTemplate { conthead-text } { default }
          { \@@_lang_switch:nn { �育ｻｭ陦ｨ�� } { (Continued) } }
        \DefTblrTemplate { contfoot-text } { default }
          { \@@_lang_switch:nn { 謗･荳矩｡ｵ } { Continued~on~next~page } }
      }
      { }
  }
%    \end{macrocode}
% \end{macro}
% \subsection{蝗ｾ迚�}
% \changes{v6.1.0.0}{2023/03/04}{隶ｾ鄂ｮ\envx{figure}邇ｯ蠅�ｸｭ蜀�ｮｹ蟇ｹ鮨先婿蠑殉
% \begin{macro}{\@floatboxreset}
% 隶ｾ鄂ｮ\envx{figure}邇ｯ蠅�ｸｭ蜀�ｮｹ蟇ｹ鮨先婿蠑上�
%    \begin{macrocode}
\ctex_at_end_preamble:n
  {
    \tl_if_eq:NnTF \l_@@_figure_align_tl { left }
      {
          \AtBeginEnvironment { figure }
            { \g@addto@macro { \@floatboxreset } { \raggedright } }
      }
      {
        \tl_if_eq:NnTF \l_@@_figure_align_tl { centering }
          {
            \AtBeginEnvironment { figure }
              { \g@addto@macro { \@floatboxreset } { \centering } }
          }
          {
            \AtBeginEnvironment { figure }
              { \g@addto@macro { \@floatboxreset } { \raggedleft } }
          }
      }
  }
%    \end{macrocode}
% \end{macro}
% \begin{macro}{\PassOptionsToPackage,\captionsetup*}
% \changes{v0.4.2.0}{2022/04/05}{隶ｾ鄂ｮ蟄仙崟譬�ｭｾ荳取��｢伜ｭ嶺ｽ灘ｭ怜捷}
% 隶ｾ鄂ｮ蟄仙崟譬�ｭｾ荳取��｢伜ｭ嶺ｽ灘ｭ怜捷�梧髪謖―pkgx{subfig}蜥圭pkgx{subcaption}螳丞桁縲�
%    \begin{macrocode}
\PassOptionsToPackage { font = small } { subfig }
\captionsetup* [ sub ] { font = customfont }
%    \end{macrocode}
% \end{macro}
% \begin{macro}{\captionsetup}
% \changes{v1.13.4.0}{2022/05/08}{隶ｾ鄂ｮ\pkgx{subfig}螳丞桁蟄仙崟蠑慕畑譬ｷ蠑殉
% 隶ｾ鄂ｮ\pkgx{subfig}螳丞桁蟄仙崟蠑慕畑譬ｷ蠑上�
%    \begin{macrocode}
\ctex_at_end_preamble:n
  {
    \@ifpackageloaded { subfig }
      { \captionsetup [ subfloat ] { subrefformat = parens } }
      { }
  }
%    \end{macrocode}
% \end{macro}
% \begin{macro}{\thesubfigure}
% \changes{v4.1.1.0}{2023/01/16}{騾る�蟄占｡ｨ譬ｷ蠑殉
% \changes{v1.13.5.0}{2022/05/08}{隶ｾ鄂ｮ\pkgx{subcaption}螳丞桁蟄仙崟蠑慕畑譬ｷ蠑殉
% \changes{v1.20.1.0}{2022/05/30}{菫ｮ螟構pkgx{subcaption}螳丞桁蟄仙崟譬�ｭｾ譬ｷ蠑殉
% 隶ｾ鄂ｮ\pkgx{subcaption}螳丞桁蟄仙崟蟄占｡ｨ蠑慕畑譬ｷ蠑上�
%    \begin{macrocode}
\PassOptionsToPackage { labelformat = simple } { subcaption }
\ctex_at_end_preamble:n
  {
    \@ifpackageloaded { subcaption }
      {
        \cs_set:Npn \thesubfigure { ( \alph { subfigure } ) }
        \cs_set:Npn \thesubtable  { ( \alph { subtable  } ) }
      }
      { }
  }
%    \end{macrocode}
% \end{macro}
% \subsection{陦ｨ譬ｼ}
% \changes{v6.1.0.0}{2023/03/04}{隶ｾ鄂ｮ\envx{table}邇ｯ蠅�ｸｭ蜀�ｮｹ蟇ｹ鮨先婿蠑殉
% \begin{macro}{\@floatboxreset}
% 隶ｾ鄂ｮ\envx{table}邇ｯ蠅�ｸｭ蜀�ｮｹ蟇ｹ鮨先婿蠑上�
%    \begin{macrocode}
\ctex_at_end_preamble:n
  {
    \tl_if_eq:NnTF \l_@@_table_align_tl { left }
      {
          \AtBeginEnvironment { table }
            { \g@addto@macro { \@floatboxreset } { \raggedright } }
      }
      {
        \tl_if_eq:NnTF \l_@@_table_align_tl { centering }
          {
            \AtBeginEnvironment { table }
              { \g@addto@macro { \@floatboxreset } { \centering } }
          }
          {
            \AtBeginEnvironment { table }
              { \g@addto@macro { \@floatboxreset } { \raggedleft } }
          }
      }
  }
%    \end{macrocode}
% \end{macro}
% \changes{v6.1.0.0}{2023/03/04}{菫ｮ謾ｹ陦ｨ譬ｼ蟄怜捷隶ｾ鄂ｮ譁ｹ豕扶
% \changes{v0.10.0.0}{2022/04/13}{隶ｾ鄂ｮ陦ｨ譬ｼ蟄怜捷譏ｯ蜷ｦ荳ｺ莠泌捷}
% \changes{v1.0.2.0}{2022/04/14}{菫ｮ螟崎｡ｨ譬ｼ莠泌捷蟄玲裏豕戊ｮｾ螳壽ｵｮ蜉ｨ菴咲ｽｮ}
% \begin{macro}{\@floatboxreset}
% 隶ｾ鄂ｮ陦ｨ譬ｼ蟄怜捷譏ｯ蜷ｦ荳ｺ莠泌捷縲�
%    \begin{macrocode}
\ctex_at_end_preamble:n
  {
    \bool_if:NT \l_@@_tab_small_bool
      {
        \AtBeginEnvironment { table }
          { \g@addto@macro { \@floatboxreset } { \small } }
      }
  }
%    \end{macrocode}
% \end{macro}
% \begin{macro}{longtable}
% \changes{v1.3.0.0}{2022/04/20}{隶ｾ鄂ｮ\envx{longtable}邇ｯ蠅�ｭ怜捷譏ｯ蜷ｦ荳ｺ莠泌捷}
% 隶ｾ鄂ｮ\pkgx{longtable}螳丞桁荳ｭ\envx{longtable}邇ｯ蠅�ｭ怜捷譏ｯ蜷ｦ荳ｺ莠泌捷縲�
%    \begin{macrocode}
\ctex_at_end_preamble:n
  {
    \@ifpackageloaded { longtable }
      {
        \bool_if:NT \l_@@_tab_small_bool
          {
            \ctex_gadd_ltxhook:nn
              { env/longtable/begin }
              { \small }
          }
      }
      { }
  }
%    \end{macrocode}
% \end{macro}
% \begin{macro}{tblr,longtblr}
% \changes{v1.11.0.0}{2022/05/06}{騾る�\pkgx{tabularray}螳丞桁荳ｭ\envx{tblr}蜥圭envx{longtblr}邇ｯ蠅�ｭ怜捷}
% 隶ｾ鄂ｮ\pkgx{tabularray}螳丞桁荳ｭ\envx{tblr}蜥圭envx{longtblr}邇ｯ蠅�ｭ怜捷譏ｯ蜷ｦ荳ｺ莠泌捷縲�
%    \begin{macrocode}
\ctex_at_end_preamble:n
  {
    \@ifpackageloaded { tabularray }
      {
        \bool_if:NT \l_@@_tab_small_bool
          {
            \ctex_gadd_ltxhook:nn
              { env/tblr/begin }
              { \small }
            \ctex_gadd_ltxhook:nn
              { env/longtblr/begin }
              { \small }
          }
      }
      { }
  }
%    \end{macrocode}
% \end{macro}
%    \begin{macrocode}
%&lt;/thesis&gt;
%&lt;*thesis|tp&gt;
%    \end{macrocode}
% \subsection{雜�得謗･蜥訓DF蜈�焚謐ｮ}
% \begin{macro}{\hypersetup}
% \changes{v0.5.0.0}{2022/04/05}{豺ｻ蜉�PDF荳ｻ鬚伜�謨ｰ謐ｮ}
% \changes{v1.10.0.0}{2022/05/04}{豺ｻ蜉�PDF蠎皮畑遞句ｺ丞�謨ｰ謐ｮ}
% 驟咲ｽｮ雜�得謗･蜥訓DF蜈�焚謐ｮ縲�
%    \begin{macrocode}
\RequirePackage { hyperref }
\hypersetup
  {
    bookmarksnumbered,
    hidelinks
  }
\ctex_at_end_preamble:n
  {
    \hypersetup
      {
%&lt;thesis&gt;        pdftitle   = \l_@@_pure_title_tl,
%&lt;xduugtp&gt;        pdfsubject = { 隘ｿ螳臥鳩蟄千ｧ第橿螟ｧ蟄ｦ譛ｬ遘醍函豈穂ｸ夊ｮｺ譁�ｼ郁ｮｾ隶｡�牙ｼ鬚俶冠蜻� },
%&lt;xduugtp&gt;        pdfcreator = { XeLaTeX~with~xduugtp~class~in~XDUTS },
%&lt;xduugthesis&gt;        pdfsubject = { 隘ｿ螳臥鳩蟄千ｧ第橿螟ｧ蟄ｦ譛ｬ遘第ｯ穂ｸ夊ｮｾ隶｡隶ｺ譁� },
%&lt;xduugthesis&gt;        pdfcreator = { XeLaTeX~with~xduugthesis~class~in~XDUTS },
%&lt;xdupgthesis&gt;        pdfsubject = \l_@@_header_str,
%&lt;xdupgthesis&gt;        pdfcreator = { XeLaTeX~with~xdupgthesis~class~in~XDUTS },
        pdfauthor  = \l_@@_author_str
      }
  }
%    \end{macrocode}
% \end{macro}
%    \begin{macrocode}
%&lt;/thesis|tp&gt;
%&lt;*thesis&gt;
%    \end{macrocode}
% \subsection{莠､蜿牙ｼ慕畑}
% \begin{macro}{\ref,\pageref}
% \changes{v1.2.0.0}{2022/04/16}{莨伜喧荳ｭ譁�識蠅�ｸ欺tnx{ref}荳､萓ｧ荳ｭ闍ｱ譁�龍遨ｺ逋ｽ}
% \changes{v1.13.3.0}{2022/05/08}{莨伜喧荳ｭ譁�識蠅�ｸ欺tnx{pageref}荳､萓ｧ荳ｭ闍ｱ譁�龍遨ｺ逋ｽ}
% 莨伜喧荳ｭ譁�識蠅�ｸ欺tnx{ref}蜥圭tnx{pageref}荳､萓ｧ荳ｭ闍ｱ譁�龍遨ｺ逋ｽ縲�
%    \begin{macrocode}
\ctex_at_end_preamble:n
  {
    \bool_if:NT \l_@@_ref_add_space_bool
      {
        \str_if_eq:NNT { \l_@@_lang_tl } { zh }
          {
            \RequirePackage { xspace }
            \xspaceaddexceptions { 縲ゑｼ滂ｼ�ｼ後�ｼ幢ｼ壺懌昶倪吮披ｦ.��-�楪ｷ縲翫�&lt;&gt;�ｿ }
            \cs_generate_variant:Nn \str_if_in:nnTF { xnTF }
            \ctex_after_end_preamble:n
              {
                \cs_set_eq:NN \@@_trad_ref:n \ref
                \cs_set:Npn \ref #1
                  {
                    \str_if_in:xnTF { \__hyp_get_anchor:n { #1 } } { chapter }
                      {         \@@_trad_ref:n { #1 }         }
                      { \xspace \@@_trad_ref:n { #1 } \xspace }
                  }
                \cs_set_eq:NN \@@_trad_page_ref:n \pageref
                \cs_set:Npn \pageref #1
                  { \xspace \@@_trad_page_ref:n { #1 } \xspace }
              }
          }
      }
  }
%    \end{macrocode}
% \end{macro}
%    \begin{macrocode}
%&lt;/thesis&gt;
%&lt;*thesis|tp&gt;
%    \end{macrocode}
% \subsection{蜿り�枚迪ｮ}
% \begin{macro}{\@@_begin_document:n}
% 髓ｩ蟄舌�
%    \begin{macrocode}
\cs_new_protected:Npn \@@_begin_document:n #1
  { \ctex_gadd_ltxhook:nn { env/document/begin } { #1 } }
%    \end{macrocode}
% \end{macro}
% \begin{macro}{\RequirePackage,\bibliographystyle,\addbibresource}
% \changes{v1.13.6.0}{2022/05/09}{遘ｻ髯､\pkgx{natbib}螳丞桁譏ｾ蠑剰ｰ�畑}
% \changes{v1.14.0.0}{2022/05/10}{荳ｺ\bibtex{}謠蝉ｾ媾tnx{parencite}蜻ｽ莉､}
% \changes{v1.14.1.0}{2022/05/10}{菴ｿ逕ｨ\tnx{PassOptionsToPackage}莨�騾箪pkgx{gbt7714}蜥圭pkgx{biblatex}螳丞桁蜿よ焚}
% \changes{v2.2.4.0}{2022/06/24}{菫ｮ謾ｹ蜿り�枚迪ｮ\bibtex{}譬�ｭｾ蜿ｳ蟇ｹ鮨図
% \changes{v2.2.5.0}{2022/06/24}{菫ｮ謾ｹ\bibtex{}蜥圭pkgx{biblatex}蟄嶺ｽ馴�鄂ｮ譁ｹ蠑殉
% \changes{v2.7.1.0}{2022/06/26}{菫ｮ謾ｹ\pkgx{biblatex}荳ｭ譁懈擒蟄礼ｬｦ蟄嶺ｽ捺酪}
% 蜿り�枚迪ｮ縲�
%    \begin{macrocode}
\PassOptionsToPackage { sort&amp;compress       } { gbt7714  }
\PassOptionsToPackage { style = gb7714-2015 } { biblatex }
\@@_begin_document:n
  {
    \tl_if_eq:NnTF \l_@@_bib_tool_tl { bibtex }
      {
        \RequirePackage { gbt7714 }
        \bibliographystyle { gbt7714-numerical }
        \cs_set:Npn \@biblabel #1 { \hfill [ #1 ] }
        \cs_set:Npn \bibsection { }
        \dim_set:Nn \bibsep { 0pt }
        \NewDocumentCommand \parencite { m }
          { \group_begin: \citestyle { numbers } \cite { #1 } \group_end: }
      }
      {
        \PassOptionsToPackage { \l_@@_biblatex_option_tl } { biblatex }
        \RequirePackage { biblatex }
        \clist_map_inline:Nn \l_@@_bib_file_clist { \addbibresource { #1 } }
        \defbibheading { bibliography } [ ] { }
        \dim_set:Nn \biblabelsep { 1ex }
        \dim_set:Nn \bibitemsep { 0pt }
        \cs_set_eq:NN \SlashFont \rmfamily
      }
%    \end{macrocode}
% \bibtex[]{}蜥圭pkgx{biblatex}騾夂畑蟄嶺ｽ灘ｭ怜捷驟咲ｽｮ縲�
%    \begin{macrocode}
    \cs_set:Npn \bibfont
      {
%&lt;xdupgthesis&gt;        \rmfamily
%&lt;xduugthesis&gt;        \@@_rm_family:
%&lt;thesis&gt;        \zihao { 5 }
%&lt;tp&gt;        \zihao { -4 }
%&lt;xdupgthesis&gt;        \dim_set:Nn \baselineskip { 20pt }
      }
  }
%    \end{macrocode}
%    \begin{macrocode}
%&lt;*xdupgthesis&gt;
%    \end{macrocode}
% \changes{v4.4.4.0}{2023/02/09}{邊ｾ邂遐皮ｩｶ逕溷ｭｦ菴崎ｮｺ譁�ｧｻ髯､蜿り�枚迪ｮ蛻苓｡ｨ螳丞桁隹�畑}
% \changes{v2.12.2.0}{2022/08/15}{菫ｮ豁｣譛ｬ遘第ｯ穂ｸ夊ｮｾ隶｡蜿り�枚迪ｮ蛻苓｡ｨ郛冶ｯ鷹漠隸ｯ}
% \changes{v2.7.0.0}{2022/06/26}{\bibtex[]{}荳句�隶ｸ荳咲函謌先枚迪ｮ蛻苓｡ｨ}
% \bibtex[]{}荳句�隶ｸ荳咲函謌先枚迪ｮ蛻苓｡ｨ縲�
%    \begin{macrocode}
\ctex_at_end_preamble:n
  {
    \tl_if_eq:NnT \l_@@_bib_tool_tl { bibtex }
      {
        \bool_if:NT \l_@@_rm_ref_bool
          { \RequirePackage { bibentry } }
      }
  }
%    \end{macrocode}
%    \begin{macrocode}
%&lt;/xdupgthesis&gt;
%    \end{macrocode}
% \end{macro}
%    \begin{macrocode}
%&lt;/thesis|tp&gt;
%&lt;*thesis&gt;
%    \end{macrocode}
% \subsection{髯�ｽ扶
% \begin{macro}{\@@_appendix:}
% 髯�ｽ慕識蠅��
% \changes{v0.3.0.0}{2022/04/04}{蠅槫刈髯�ｽ慕識蠅マ
% \changes{v0.3.1.0}{2022/04/04}{菫ｮ豁｣髯�ｽ穂ｸｭ蝗ｾ陦ｨ郛門捷譬ｷ蠑殉
% \changes{v0.10.2.0}{2022/04/14}{菫ｮ豁｣髯�ｽ穂ｸｭ邂玲ｳ慕ｼ門捷譬ｷ蠑殉
% \changes{v0.10.4.0}{2022/04/14}{菫ｮ豁｣髯�ｽ穂ｸｭ\pkgx{algorithm2e}邂玲ｳ慕ｼ門捷譬ｷ蠑殉
% \changes{v1.2.2.0}{2022/04/20}{菫ｮ豁｣闍ｱ譁�刋蠖慕ｼ門捷}
%    \begin{macrocode}
\cs_new:Npn \@@_appendix:
  {
    \cs_set:Npn \appendixname { \@@_lang_switch:nn { 髯�ｽ� } { Appendix } }
    \tl_set_eq:NN \l_@@_chaptername \appendixname
    \cs_set_eq:NN \@@_Roman: \@@_Alph:
    \appendix
    \renewcommand { \thefigure } { \thechapter \arabic { figure } }
    \renewcommand { \thetable  } { \thechapter \arabic { table  } }
    \cs_if_exist:NT \thealgorithm
      { \cs_set:Npn \thealgorithm { \thechapter \arabic { algorithm } } }
    \cs_if_exist:NT \thealgocf
      { \cs_set:Npn \thealgocf { \thechapter \arabic { algocf } } }
    \bool_if_exist:NTF \l_@@_rm_appendix_bool
      {
        \bool_if:NF \l_@@_rm_appendix_bool
          {
            \clist_map_inline:Nn \l_@@_appendix_clist
              { \file_if_exist_input:n { ##1 } }
          }
      }
      {
        \clist_map_inline:Nn \l_@@_appendix_clist
          { \file_if_exist_input:n { ##1 } }
      }
  }
%    \end{macrocode}
%    \begin{macrocode}
%&lt;/thesis&gt;
%    \end{macrocode}
% \end{macro}
%    \begin{macrocode}
%&lt;*xduugthesis&gt;
%    \end{macrocode}
% \changes{v1.26.7.1}{2022/06/12}{謨ｴ逅�ｻ｣遐∫ｻ捺桷}
% \subsection{蜑崎ｨ驛ｨ蛻�}
% \subsubsection{譛ｬ遘醍函}
% \paragraph{蜑崎ｨ扈�ｻｶ}
% \begin{macro}{\@@_cover_i:nn}
% 扈伜宛迴ｭ郤ｧ蜥悟ｭｦ蜿ｷ縲�
% \begin{arguments}
%   \item 譬�ｭｾ蜷咲ｧｰ縲�
%   \item 迴ｭ郤ｧ蜥悟ｭｦ蜿ｷ蟇ｹ蠎泌ｼ縲�
% \end{arguments}
%    \begin{macrocode}
\cs_new:Npn \@@_cover_i:nn #1#2
  {
    \vbox_to_ht:nn { 12pt }
      {
        \mode_leave_vertical:
        \hfill
        \hbox:n
          {
            \@@_rm_family: \zihao { -4 } \bfseries
            \hbox_to_wd:nn { 3em } { #1 }
            \skip_horizontal:n { 1em }
            \@@_uline:n { \hbox_to_wd:nn { 15ex } { \hfil #2 \hfil } }
            \skip_horizontal:n { 1.5cm }
          }
      }
  }
%    \end{macrocode}
% \end{macro}
% \begin{macro}{\@@_cover_ii:nnn}
% \changes{v0.6.1.0}{2022/04/11}{菫ｮ螟考ogo荳榊ｭ伜惠蟇ｼ閾ｴ逧�裏豕慕ｼ冶ｯ挿
% \changes{v1.13.1.0}{2022/05/08}{菴ｿ逕ｨ陞榊粋logo譁�ｻｶ}
% 扈伜宛隘ｿ逕ｵlogo縲�
% \begin{arguments}
%   \item 逶貞ｭ宣ｫ伜ｺｦ縲�
%   \item logo鬮伜ｺｦ縲�
%   \item logo邀ｻ蝙九�
% \end{arguments}
%    \begin{macrocode}
\cs_new:Npn \@@_cover_ii:nnn #1#2#3
  {
    \vbox_to_ht:nn { #1 }
      {
        \mode_leave_vertical:
        \hfil
        \file_if_exist:nT { xdulogo.pdf }
          {
            \str_if_eq:nnTF { #3 } { text }
              { \includegraphics [ page = 1, height = #2 ] { xdulogo.pdf } }
              { \includegraphics [ page = 2, height = #2 ] { xdulogo.pdf } }
          }
        \hfil
      }
  }
%    \end{macrocode}
% \end{macro}
% \begin{macro}{\@@_cover_iii:nnnnn}
% 扈伜宛隶ｺ譁�ｿ｡諱ｯ縲�
% \begin{arguments}
%   \item 譬�ｭｾ螳ｽ蠎ｦ縲�
%   \item 譬�ｭｾ蜷咲ｧｰ縲�
%   \item 蟄嶺ｽ捺酪縲�
%   \item 蟄怜捷縲�
%   \item 隶ｺ譁�ｿ｡諱ｯ縲�
% \end{arguments}
%    \begin{macrocode}
\cs_new:Npn \@@_cover_iii:nnnnn #1#2#3#4#5
  {
    \vbox_to_ht:nn { 42.5pt }
      {
        \vfill
        \mode_leave_vertical:
        \hfil
        \hbox:n
          {
            \@@_rm_family:
            \zihao { 3 }
            \hbox_to_wd:nn { #1 } { \bfseries #2 }
            \skip_horizontal:n { 1em }
            \zihao { -3 }
            \@@_uline:n
              {
                \hbox_to_wd:nn { 16em }
                  { \hfil \use:c { @@_ #3 _family : } \zihao { #4 } #5 \hfil }
              }
          }
        \hfil
      }
  }
%    \end{macrocode}
% \end{macro}
% \begin{variable}{\l_@@_is_ent_bool,\l_@@_is_wide_bool}
% \changes{v0.8.1.0}{2022/04/12}{蟆�擇蟇ｼ蟶域��ｭｾ譬�ｿ嶺ｽ閤
% 譏ｯ蜷ｦ荳ｺ譬｡螟匁ｯ戊ｮｾ�梧弍蜷ｦ荳ｺ螳ｽ蜷咲ｧｰ縲�
%    \begin{macrocode}
\bool_new:N \l_@@_is_ent_bool
\bool_new:N \l_@@_is_wide_bool
%    \end{macrocode}
% \end{variable}
% \begin{macro}{\@@_cover_iii:nnnn}
% \changes{v0.8.1.0}{2022/04/12}{菴ｿ逕ｨ譬�ｿ嶺ｽ崎ｮ｡邂苓ｮｺ譁�ｿ｡諱ｯ譬�ｭｾ螳ｽ蠎ｦ}
% \changes{v0.1.4.0}{2022/04/03}{閾ｪ蜉ｨ隹�紛隶ｺ譁�ｿ｡諱ｯ譬�ｭｾ螳ｽ蠎ｦ}
% 扈伜宛隶ｺ譁�ｿ｡諱ｯ蟷ｶ閾ｪ蜉ｨ隹�紛隶ｺ譁�ｿ｡諱ｯ譬�ｭｾ螳ｽ蠎ｦ縲�
% \begin{arguments}
%   \item 譬�ｭｾ蜷咲ｧｰ縲�
%   \item 蟄嶺ｽ捺酪縲�
%   \item 蟄怜捷縲�
%   \item 隶ｺ譁�ｿ｡諱ｯ縲�
% \end{arguments}
%    \begin{macrocode}
\ctex_at_end_preamble:n
  {
    \tl_if_blank:VF \l_@@_supv_dept_str
      { \bool_set_true:N \l_@@_is_wide_bool }
    \tl_if_blank:VF \l_@@_supv_ent_str
      { \bool_set_true:N \l_@@_is_wide_bool }
    \tl_if_blank:VF \l_@@_supv_sch_str
      { \bool_set_true:N \l_@@_is_wide_bool }
    \cs_new:Npn \@@_cover_iii:nnnn #1#2#3#4
      {
        \bool_if:NTF \l_@@_is_wide_bool
          { \@@_cover_iii:nnnnn { 6em } { #1 } { #2 } { #3 } { #4 } }
          { \@@_cover_iii:nnnnn { 4em } { #1 } { #2 } { #3 } { #4 } }
      }
  }
%    \end{macrocode}
% \end{macro}
% \paragraph{驥榊ｮ壻ｹ噂tn{frontmatter}}
% \begin{macro}{\frontmatter,\@@_frontmatter:}
% \changes{v1.9.1.0}{2022/05/04}{菫ｮ豁｣蟆�擇蜈�ｴ�菴咲ｽｮ蜿雁ｰｺ蟇ｸ}
% 謗堤沿蜑崎ｨ驛ｨ蛻��
%    \begin{macrocode}
\RenewDocumentCommand { \frontmatter } { } { }
\cs_new:Npn \@@_frontmatter:
  {
    \loadgeometry { cover }
    \pagestyle    { empty }
    \dim_set:Nn \parindent { 0pt }
%    \end{macrocode}
% 謗堤沿迴ｭ郤ｧ蜥悟ｭｦ蜿ｷ縲�
%    \begin{macrocode}
    \@@_cover_i:nn   { 迴ｭ郤ｧ } { \l_@@_class_id_str   }
    \@@_cover_i:nn   { 蟄ｦ蜿ｷ } { \l_@@_student_id_str }
    \skip_vertical:n { 30pt }
%    \end{macrocode}
% 謗堤沿隘ｿ逕ｵ譁�ｭ様ogo縲�
%    \begin{macrocode}
    \@@_cover_ii:nnn { 65pt } { 35pt } { text }
%    \end{macrocode}
% \changes{v1.13.2.0}{2022/05/08}{菫ｮ豁｣蟆�擇譬�｢伜￥遘ｻ}
% 謗堤沿蟆�擇譬�｢倥�
%    \begin{macrocode}
    \vbox_to_ht:nn { 90pt }
      {
        \mode_leave_vertical:
        \hfil
        \hbox_to_wd:nn { 375pt } { \sffamily \zihao { 0 } 譛ｬ遘第ｯ穂ｸ夊ｮｾ隶｡隶ｺ譁� }
        \hfil
      }
%    \end{macrocode}
% 謗堤沿隘ｿ逕ｵlogo縲�
%    \begin{macrocode}
    \@@_cover_ii:nnn { 140pt } { 120pt } { icon }
%    \end{macrocode}
% \changes{v4.4.0.0}{2023/02/03}{譛ｬ遘第ｯ戊ｮｾ隶ｺ譁���｢倅ｸｭ蜈ｬ蠑丞ｭ嶺ｽ灘刈邊抑
% \changes{v4.3.1.0}{2023/02/03}{菫ｮ螟肴悽遘第ｯ戊ｮｾ隶ｺ譁���｢伜�蠑乗仞遉ｺ}
% 諡��隶ｺ譁���｢伜ｹｶ謗堤沿縲�
%    \begin{macrocode}
    \clist_new:N \l_@@_title_clist
    \@@_split_title:NV \l_@@_title_clist \l_@@_title_tl
    \tl_set:Nx \l_@@_title_i_tl  { \clist_item:Nn  \l_@@_title_clist { 1 } }
    \tl_set:Nx \l_@@_title_ii_tl { \clist_item:Nn  \l_@@_title_clist { 2 } }
    \@@_cover_iii:nnnn { 鬚倡岼 } { sf } { 3 } { \@@_bold_math: \l_@@_title_i_tl }
    \tl_if_blank:VF \l_@@_title_ii_tl
      { \@@_cover_iii:nnnn { } { sf } { 3 } { \@@_bold_math: \l_@@_title_ii_tl } }
%    \end{macrocode}
% 謗堤沿蟄ｦ髯｢縲∽ｸ謎ｸ壹∝ｭｦ逕溷ｧ灘錐縲�
%    \begin{macrocode}
    \@@_cover_iii:nnnn { 蟄ｦ髯｢     } { rm } { -3 } { \l_@@_dept_str   }
    \@@_cover_iii:nnnn { 荳謎ｸ�     } { rm } { -3 } { \l_@@_major_str  }
    \@@_cover_iii:nnnn { 蟄ｦ逕溷ｧ灘錐 } { rm } { -3 } { \l_@@_author_str }
%    \end{macrocode}
% \changes{v0.8.1.0}{2022/04/12}{菫ｮ豁｣蟆�擇隶ｺ譁�ｿ｡諱ｯ譬�ｭｾ螳ｽ蠎ｦ}
% 譬｡螟匁ｯ戊ｮｾ�梧賜迚域�｡螟門ｯｼ蟶亥ｧ灘錐縲∵�｡蜀�ｯｼ蟶亥ｧ灘錐縲�
%    \begin{macrocode}
    \tl_if_blank:VF \l_@@_supv_ent_str
      { \bool_set_true:N \l_@@_is_ent_bool }
    \tl_if_blank:VF \l_@@_supv_sch_str
      { \bool_set_true:N \l_@@_is_ent_bool }
    \bool_if:NTF \l_@@_is_ent_bool
      {
        \@@_cover_iii:nnnn { 譬｡螟門ｯｼ蟶亥ｧ灘錐 } { rm } { -3 } { \l_@@_supv_ent_str }
        \@@_cover_iii:nnnn { 譬｡蜀�ｯｼ蟶亥ｧ灘錐 } { rm } { -3 } { \l_@@_supv_sch_str }
      }
%    \end{macrocode}
% \changes{v1.15.1.0}{2022/05/21}{菴ｿ逕ｨ\csx{group_begin:}蜥圭csx{group_end:}譖ｿ謐｢蛻�ｻм
% 譬｡蜀�ｯ戊ｮｾ�梧賜迚亥ｯｼ蟶亥ｧ灘錐縲�劼蜀�ｯｼ蟶亥ｧ灘錐縲�
%    \begin{macrocode}
      \group_begin:
        \@@_cover_iii:nnnn { 蟇ｼ蟶亥ｧ灘錐 } { rm } { -3 } { \l_@@_supv_str }
        \tl_if_blank:VF \l_@@_supv_dept_str
          {
            \@@_cover_iii:nnnn
              { 髯｢蜀�ｯｼ蟶亥ｧ灘錐        }
              { rm                  }
              { -3                  }
              { \l_@@_supv_dept_str }
          }
      \group_end:
    \cleardoublepage
%    \end{macrocode}
% \changes{v0.8.0.0}{2022/04/12}{謾ｯ謖∝ｯｹ遘ｰ鬘ｵ霎ｹ霍掵
% \changes{v1.10.2.0}{2022/05/04}{菫ｮ豁｣豁｣譁�燕鬘ｵ遐∵�ｷ蠑殉
% 譖ｴ謐｢鬘ｵ髱｢蟆ｺ蟇ｸ縲�｡ｵ髱｢譬ｷ蠑丞柱鬘ｵ遐∵�ｷ蠑上�
%    \begin{macrocode}
    \@@_load_main_geometry:
    \pagestyle     { plain }
    \pagenumbering { roman }
%    \end{macrocode}
% \changes{v1.2.1.0}{2022/04/19}{菫ｮ豁｣闍ｱ譁�ｮｺ譁�ｸ倶ｸｭ譁�遭隕∵��｢俶�ｷ蠑殉
% 荳ｭ譁�遭隕�ｼ悟ｮ倶ｽ灘ｰ丞屁蜿ｷ縲�
%    \begin{macrocode}
    \@@_lang_switch:nn
      { \@@_n_chapter_head:nn { 鞫倩ｦ� } { 鞫� { \quad } 隕� } }
      {
        \@@_n_chapter_head_ii:nnn
          { 鞫倩ｦ� }
          { 鞫� { \quad } 隕� }
          { \@@_sf_family: \zihao { 3 } \centering }
      }
    \group_begin:
      \dim_set:Nn \parindent { 2 \ccwd }
      \rmfamily \zihao { -4 }
      \file_if_exist_input:n { \l_@@_abstract_zh_tl }
    \group_end:
%    \end{macrocode}
% \changes{v1.10.3.0}{2022/05/04}{菴ｿ逕ｨ蠑ｹ諤ｧ髟ｿ蠎ｦ蛻�囈蜈ｳ髞ｮ隸閤
% 蜈ｳ髞ｮ隸榊ｼｹ諤ｧ蛻�囈髣ｴ霍昴�
%    \begin{macrocode}
    \cs_new:Npn \@@_keywords_space: { \hspace { 2em plus 1em minus 1em } }
%    \end{macrocode}
% \changes{v4.4.0.0}{2023/02/03}{譛ｬ遘醍函豈穂ｸ夊ｮｾ隶｡荳ｭ譁��髞ｮ隸堺ｸｭ謨ｰ蟄ｦ蟄嶺ｽ灘刈邊抑
% 荳ｭ譁��髞ｮ隸搾ｼ碁ｻ台ｽ灘ｰ丞屁蜿ｷ縲�
%    \begin{macrocode}
    \group_begin:
      \sffamily \@@_bold_math: \zihao { -4 } \par
      \@@_typeout_keywords:nNn
        { 蜈ｳ髞ｮ隸搾ｼ� } { \l_@@_keywords_zh_clist } { \@@_keywords_space: }
    \group_end:
    \cleardoublepage
%    \end{macrocode}
% 闍ｱ譁�遭隕�ｼ卦imes New Roman蟄嶺ｽ難ｼ悟ｰ丞屁蜿ｷ縲�
% \changes{v0.4.3.0}{2022/04/05}{菫ｮ豁｣闍ｱ譁�遭隕∵��｢伜ｭ嶺ｽ党
%    \begin{macrocode}
    \@@_n_chapter_head_ii:nn
      { ABSTRACT } { \rmfamily \zihao { 3 } \bfseries \centering }
    \group_begin:
      \dim_set:Nn \parindent { 2 \ccwd }
      \rmfamily \zihao { -4 }
      \file_if_exist_input:n { \l_@@_abstract_en_tl }
    \group_end:
%    \end{macrocode}
% \changes{v4.4.0.0}{2023/02/03}{譛ｬ遘醍函豈穂ｸ夊ｮｾ隶｡闍ｱ譁��髞ｮ隸堺ｸｭ謨ｰ蟄ｦ蟄嶺ｽ灘刈邊抑
% 闍ｱ譁��髞ｮ隸搾ｼ卦imes New Roman蟄嶺ｽ灘刈邊暦ｼ悟ｰ丞屁蜿ｷ縲�
%    \begin{macrocode}
    \group_begin:
      \rmfamily \zihao { -4 } \bfseries \@@_bold_math: \par
      \@@_typeout_keywords:nNn
        { Keywords�� } { \l_@@_keywords_en_clist } { \@@_keywords_space: }
    \group_end:
    \cleardoublepage
%    \end{macrocode}
% \changes{v1.1.4.0}{2022/04/16}{荳ｺ逶ｮ蠖慕ｫ�闃よ��｢伜｢槫刈髣ｴ霍掵
% \changes{v1.1.5.0}{2022/04/16}{逶ｮ蠖穂ｸｭ遘ｻ髯､逶ｮ蠖慕ｫ�闃�}
% 逶ｮ蠖輔�
%    \begin{macrocode}
    \setcounter { tocdepth } { 5 }
    \@@_n_chapter_head:nn
      { \@@_lang_switch:nn { 逶ｮ蠖�            } { Contents } }
      { \@@_lang_switch:nn { 逶ｮ { \quad } 蠖� } { Contents } }
    \@starttoc { toc }
    \cleardoublepage
  }
%    \end{macrocode}
% \end{macro}
%    \begin{macrocode}
%&lt;/xduugthesis&gt;
%&lt;*xdupgthesis&gt;
%    \end{macrocode}
% \subsubsection{遐皮ｩｶ逕毳
% \paragraph{蟆�擇}
% \begin{variable}
%   {
%     \l_@@_phd,
%     \l_@@_master,
%     \l_@@_ac,
%     \l_@@_pro
%   }
% \changes{v2.18.1.0}{2022/12/01}{遘ｻ髯､驛ｨ蛻��皮ｩｶ逕溽ｱｻ蝙句ｸ�ｰ泌序驥殉
% \changes{v1.16.0.0}{2022/05/22}{遐皮ｩｶ逕溽ｱｻ蛻ｫ}
% \changes{v1.17.0.0}{2022/05/28}{蠅槫刈蟄ｦ譛ｯ蜥御ｸ謎ｸ夂�皮ｩｶ逕溷ｸ�ｰ泌序驥殉
% \changes{v1.18.0.0}{2022/05/29}{蠅槫刈遑募｣ｫ蜥悟忽螢ｫ遐皮ｩｶ逕溷ｸ�ｰ泌序驥殉
% 遐皮ｩｶ逕溽ｱｻ蛻ｫ縲�
%    \begin{macrocode}
\bool_new:N \l_@@_phd
\bool_new:N \l_@@_master
\bool_new:N \l_@@_ac
\bool_new:N \l_@@_pro
\ctex_at_end_preamble:n
  {
    \tl_if_eq:NnTF \l_@@_gr_type_tl { 遑募｣ｫ }
      { \bool_set_true:N \l_@@_master }
      { \bool_set_true:N \l_@@_phd }
    \tl_if_eq:NnTF \l_@@_degree_type_tl { 蟄ｦ譛ｯ }
      { \bool_set_true:N \l_@@_ac  }
      { \bool_set_true:N \l_@@_pro }
  }
%    \end{macrocode}
% \end{variable}
% \begin{macro}{\@@_cover_i:nnnnn}
% \changes{v1.16.0.0}{2022/05/22}{扈伜宛遐皮ｩｶ逕溷ｰ�擇蜊戊｡悟�螳ｹ}
% \changes{v1.17.0.0}{2022/05/28}{扈伜宛遐皮ｩｶ逕溷ｰ�擇蜥碁｢伜錐鬘ｵ蜊戊｡悟�螳ｹ}
% 扈伜宛遐皮ｩｶ逕溷ｰ�擇蜥碁｢伜錐鬘ｵ蜊戊｡悟�螳ｹ縲�
% \begin{arguments}
%   \item 逶貞ｭ宣ｫ伜ｺｦ縲�
%   \item 蟄嶺ｽ捺酪縲�
%   \item 蟄怜捷縲�
%   \item 譏ｯ蜷ｦ蜉�邊励�
%   \item 逶貞ｭ仙�螳ｹ縲�
% \end{arguments}
%    \begin{macrocode}
\cs_new:Npn \@@_cover_i:nnnnn #1#2#3#4#5
  {
    \dim_set:Nn \baselineskip { 20pt }
    \vbox_to_ht:nn { #1 }
      {
        \vfill
        \mode_leave_vertical:
        \hfil
        \use:c { #2 family } \zihao { #3 }
        \str_if_eq:nnTF { #4 } { bf } { \bfseries } { }
        #5
        \hfil
      }
  }
%    \end{macrocode}
% \end{macro}
% \begin{macro}{\@@_cover_ii:nnnn}
% \changes{v1.16.0.0}{2022/05/22}{扈伜宛遐皮ｩｶ逕溷ｰ�擇隶ｺ譁�ｿ｡諱ｯ}
% \changes{v1.26.4.0}{2022/06/10}{遐皮ｩｶ逕溷ｰ�擇隶ｺ譁�ｿ｡諱ｯ蜿ｯ謖�ｮ壼ｮｽ蠎ｦ}
% 扈伜宛遐皮ｩｶ逕溷ｰ�擇隶ｺ譁�ｿ｡諱ｯ縲�
% \begin{arguments}
%   \item 譬�ｭｾ螳ｽ蠎ｦ縲�
%   \item 譬�ｭｾ蜷咲ｧｰ縲�
%   \item 逶貞ｭ仙ｮｽ蠎ｦ縲�
%   \item 逶貞ｭ仙�螳ｹ縲�
% \end{arguments}
%    \begin{macrocode}
\cs_new:Npn \@@_cover_ii:nnnn #1#2#3#4
  {
    \dim_set:Nn \baselineskip { 20pt }
    \vbox_to_ht:nn { 25pt }
      {
        \vfill
        \mode_leave_vertical:
        \hfil
        \hbox:n
          {
            \zihao { 4 } \bfseries
            \hbox_to_wd:nn { #1 } { \sffamily #2 }
            \skip_horizontal:n { 0.5em }
            \@@_uline:n
              {
                \skip_horizontal:n { 9em - #1 }
                \hbox_to_wd:nn { #3 } { \hfil \rmfamily #4 \hfil }
              }
          }
        \hfil
      }
  }
%    \end{macrocode}
% \end{macro}
% \begin{macro}{\@@_cover_iii:nnnn}
% \changes{v1.17.0.0}{2022/05/28}{扈伜宛遐皮ｩｶ逕滉ｸｭ譁�｢伜錐鬘ｵ鬘ｶ驛ｨ菫｡諱ｯ}
% 扈伜宛遐皮ｩｶ逕滉ｸｭ譁�｢伜錐鬘ｵ鬘ｶ驛ｨ菫｡諱ｯ縲�
% \begin{arguments}
%   \item 譬�ｭｾ螳ｽ蠎ｦ縲�
%   \item 譬�ｭｾ蜷咲ｧｰ縲�
%   \item 蛟ｼ螳ｽ蠎ｦ縲�
%   \item 蛟ｼ蜀�ｮｹ縲�
% \end{arguments}
%    \begin{macrocode}
\cs_new:Npn \@@_cover_iii:nnnn #1#2#3#4
  {
    \dim_set:Nn \baselineskip { 20pt }
    \hbox:n
      {
        \rmfamily \zihao { 5 } \bfseries
        \hbox_to_wd:nn { #1 } { #2 }
        \skip_horizontal:n { 0.5em }
        \@@_uline:n { \hbox_to_wd:nn { #3 } { \hfil #4 \hfil } }
      }
  }
%    \end{macrocode}
% \end{macro}
% \begin{macro}{\@@_en_month:n}
% \changes{v1.18.0.0}{2022/05/29}{闍ｱ譁�怦莉ｽ}
% 闍ｱ譁�怦莉ｽ縲�
%    \begin{macrocode}
\cs_new:Npn \@@_en_month:n #1
  {
    \str_case:Vn #1
      {
        { 1  } { January   }
        { 2  } { February  }
        { 3  } { March     }
        { 4  } { April     }
        { 5  } { May       }
        { 6  } { June      }
        { 7  } { July      }
        { 8  } { August    }
        { 9  } { September }
        { 10 } { October   }
        { 11 } { November  }
        { 12 } { December  }
        { 01 } { January   }
        { 02 } { February  }
        { 03 } { March     }
        { 04 } { April     }
        { 05 } { May       }
        { 06 } { June      }
        { 07 } { July      }
        { 08 } { August    }
        { 09 } { September }
      }
  }
%    \end{macrocode}
% \end{macro}
% \begin{macro}{\@@_zh_today:,\@@_en_today:}
% \changes{v1.17.0.0}{2022/05/28}{荳ｭ譁�ｻ頑律蟷ｴ譛�}
% \changes{v1.18.0.0}{2022/05/29}{闍ｱ譁�ｻ頑律蟷ｴ譛�}
% 莉頑律蟷ｴ譛医�
%    \begin{macrocode}
\cs_new:Npn \@@_zh_today:
  { \int_use:N \c_sys_year_int 蟷ｴ \int_use:N \c_sys_month_int 譛� }
\cs_new:Npn \@@_en_today:
  { \@@_en_month:n { \c_sys_month_int } ~ \int_use:N \c_sys_year_int }
%    \end{macrocode}
% \end{macro}
% \begin{macro}{\@@_split_submit_date:N}
% \changes{v1.17.0.0}{2022/05/28}{諡��謠蝉ｺ､譌･譛滉ｸｺ蟷ｴ蜥梧怦}
% 諡��謠蝉ｺ､譌･譛滉ｸｺ蟷ｴ蜥梧怦縲�
%    \begin{macrocode}
\seq_new:N \l_@@_submit_date_seq
\cs_new:Npn \@@_split_submit_date:N #1
  {
    \seq_set_split:NnV \l_@@_submit_date_seq { - } \l_@@_submit_date_str
    \clist_set_from_seq:NN #1 \l_@@_submit_date_seq
  }
%    \end{macrocode}
% \end{macro}
% \begin{macro}{\@@_zh_submit_date:}
% \changes{v1.17.0.0}{2022/05/28}{荳ｭ譁�署莠､譌･譛毳
% 荳ｭ譁�署莠､譌･譛溘�
%    \begin{macrocode}
\clist_new:N \l_@@_submit_date_clist
\cs_new:Npn \@@_zh_submit_date:
  {
    \str_if_empty:NTF \l_@@_submit_date_str
      { \@@_zh_today: }
      {
        \@@_split_submit_date:N \l_@@_submit_date_clist
        \clist_item:Nn \l_@@_submit_date_clist { 1 } 蟷ｴ
        \clist_item:Nn \l_@@_submit_date_clist { 2 } 譛�
      }
  }
%    \end{macrocode}
% \end{macro}
% \begin{macro}{\@@_en_submit_date:}
% \changes{v1.18.0.0}{2022/05/29}{闍ｱ譁�署莠､譌･譛毳
% 闍ｱ譁�署莠､譌･譛溘�
%    \begin{macrocode}
\str_new:N \l_@@_submit_date_month_str
\cs_new:Npn \@@_en_submit_date:
  {
    \str_if_empty:NTF \l_@@_submit_date_str
      { \@@_en_today: }
      {
        \@@_split_submit_date:N \l_@@_submit_date_clist
        \str_set:Nx \l_@@_submit_date_month_str
          { \clist_item:Nn \l_@@_submit_date_clist { 2 } }
        \@@_en_month:n { \l_@@_submit_date_month_str } ~
        \clist_item:Nn \l_@@_submit_date_clist { 1 }
      }
  }
%    \end{macrocode}
% \end{macro}
% \begin{macro}{\@@_cover_author_info:}
% \changes{v2.18.1.0}{2022/12/01}{菫ｮ豁｣荳謎ｸ壼忽螢ｫ蟆�擇蜥碁｢伜錐鬘ｵ菫｡諱ｯ}
% \changes{v1.26.4.0}{2022/06/10}{遐皮ｩｶ逕溷ｰ�擇蠎暮Κ菴懆�ｿ｡諱ｯ}
% 遐皮ｩｶ逕溷ｰ�擇蠎暮Κ菴懆�ｿ｡諱ｯ縲�
%    \begin{macrocode}
\cs_new:Npn \@@_cover_author_info:
  {
%    \end{macrocode}
% 隶｡邂嶺ｽ懆�ｿ｡諱ｯ譛螟ｧ螳ｽ蠎ｦ縲�
%    \begin{macrocode}
    \rmfamily \zihao { 4 }
    \dim_new:N \l_@@_cover_author_info_dim
    \dim_set:Nn \l_@@_cover_author_info_dim { 7em }
    \@@_str_max_dim:Nn \l_@@_cover_author_info_dim { \l_@@_author_str }
    \bool_if:NTF \l_@@_pro
      {
        \@@_str_max_dim:Nn \l_@@_cover_author_info_dim
          { \l_@@_supv_str \enskip \l_@@_supv_t_str }
        \str_if_empty:NF \l_@@_supv_ii_str
          {
            \@@_str_max_dim:Nn \l_@@_cover_author_info_dim
              { \l_@@_supv_ii_str \enskip \l_@@_supv_ii_t_str }
          }
        \@@_str_max_dim:Nn \l_@@_cover_author_info_dim
          { \l_@@_supv_ent_str \enskip \l_@@_supv_ent_t_str }
      }
      {
        \@@_str_max_dim:Nn \l_@@_cover_author_info_dim
          { \l_@@_supv_str \enskip \l_@@_supv_t_str }
        \str_if_empty:NF \l_@@_supv_ii_str
          {
            \@@_str_max_dim:Nn \l_@@_cover_author_info_dim
              { \l_@@_supv_ii_str \enskip \l_@@_supv_ii_t_str }
          }
      }
    \@@_str_max_dim:Nn \l_@@_cover_author_info_dim { \l_@@_degree_str }
    \dim_add:Nn \l_@@_cover_author_info_dim { 3em }
%    \end{macrocode}
% 謗堤沿蟆�擇隶ｺ譁�ｿ｡諱ｯ縲�
%    \begin{macrocode}
    \@@_cover_ii:nnnn { 4em } { 菴懆�ｧ灘錐 }
      { \l_@@_cover_author_info_dim }
      { \l_@@_author_str }
    \bool_if:NTF \l_@@_pro
      {
        \@@_cover_ii:nnnn { 9em } { 蟄ｦ譬｡蟇ｼ蟶亥ｧ灘錐縲∬′遘ｰ }
          { \l_@@_cover_author_info_dim }
          { \l_@@_supv_str \enskip \l_@@_supv_t_str }
        \str_if_empty:NF \l_@@_supv_ii_str
          {
            \@@_cover_ii:nnnn { 9em } { }
              { \l_@@_cover_author_info_dim }
              { \l_@@_supv_ii_str \enskip \l_@@_supv_ii_t_str }
          }
        \@@_cover_ii:nnnn { 9em } { 莨∽ｸ壼ｯｼ蟶亥ｧ灘錐縲∬′遘ｰ }
          { \l_@@_cover_author_info_dim }
          { \l_@@_supv_ent_str \enskip \l_@@_supv_ent_t_str }
      }
      {
        \@@_cover_ii:nnnn { 9em } { 謖�ｯｼ謨吝ｸ亥ｧ灘錐縲∬′遘ｰ }
          { \l_@@_cover_author_info_dim }
          { \l_@@_supv_str \enskip \l_@@_supv_t_str }
        \str_if_empty:NF \l_@@_supv_ii_str
          {
            \@@_cover_ii:nnnn { 9em } { }
              { \l_@@_cover_author_info_dim }
              { \l_@@_supv_ii_str \enskip \l_@@_supv_ii_t_str }
          }
      }
    \@@_cover_ii:nnnn { 6em } { 逕ｳ隸ｷ蟄ｦ菴咲ｱｻ蛻ｫ }
      { \l_@@_cover_author_info_dim }
      { \l_@@_degree_str }
  }
%    \end{macrocode}
% \end{macro}
% \paragraph{荳ｭ譁�｢伜錐鬘ｵ}
% \begin{macro}{\@@_zh_title_page_info:}
% \changes{v1.26.7.0}{2022/06/11}{諡��遐皮ｩｶ逕滉ｸｭ譁�｢伜錐鬘ｵ蠎暮Κ菫｡諱ｯ}
% 荳ｭ譁�｢伜錐鬘ｵ蠎暮Κ菫｡諱ｯ縲�
%    \begin{macrocode}
\cs_new:Npn \@@_zh_title_page_info:
  {
%    \end{macrocode}
% \changes{v1.26.6.0}{2022/06/11}{遐皮ｩｶ逕滉ｸｭ譁�｢伜錐鬘ｵ蠎暮Κ菫｡諱ｯ螳ｽ蠎ｦ豬矩㍼}
% 蠎暮Κ菫｡諱ｯ螳ｽ蠎ｦ豬矩㍼縲�
%    \begin{macrocode}
    \rmfamily \zihao { 4 }
    \dim_new:N \l_@@_zh_title_page_info_dim
    \@@_str_max_dim:Nn \l_@@_zh_title_page_info_dim
      { 菴懆�ｧ灘錐�喀l_@@_author_str }
    \bool_if:NTF \l_@@_ac
      {
        \@@_str_max_dim:Nn \l_@@_zh_title_page_info_dim
          { 荳郤ｧ蟄ｦ遘托ｼ喀l_@@_major_str }
        \@@_str_max_dim:Nn \l_@@_zh_title_page_info_dim
          { 莠檎ｺｧ蟄ｦ遘托ｼ育�皮ｩｶ譁ｹ蜷托ｼ会ｼ喀l_@@_sub_major_str }
      }
      {
        \@@_str_max_dim:Nn \l_@@_zh_title_page_info_dim
          { 鬚�\qquad{}蝓滂ｼ喀l_@@_domain_str }
      }
      \@@_str_max_dim:Nn \l_@@_zh_title_page_info_dim
        { 蟄ｦ菴咲ｱｻ蛻ｫ�喀l_@@_degree_str }
    \bool_if:NTF \l_@@_pro
      {
        \@@_str_max_dim:Nn \l_@@_zh_title_page_info_dim
          { 蟄ｦ譬｡蟇ｼ蟶亥ｧ灘錐縲∬′遘ｰ�喀l_@@_supv_str \enskip \l_@@_supv_t_str }
        \str_if_empty:NF \l_@@_supv_ii_str
          {
            \@@_str_max_dim:Nn \l_@@_zh_title_page_info_dim
              { 蟄ｦ譬｡蟇ｼ蟶亥ｧ灘錐縲∬′遘ｰ�喀l_@@_supv_ii_str \enskip \l_@@_supv_ii_t_str }
          }
        \@@_str_max_dim:Nn \l_@@_zh_title_page_info_dim
          { 莨∽ｸ壼ｯｼ蟶亥ｧ灘錐縲∬′遘ｰ�喀l_@@_supv_ent_str \enskip \l_@@_supv_ent_t_str }
      }
      {
        \@@_str_max_dim:Nn \l_@@_zh_title_page_info_dim
          { 謖�ｯｼ謨吝ｸ亥ｧ灘錐縲∬′遘ｰ�喀l_@@_supv_str \enskip \l_@@_supv_t_str }
        \str_if_empty:NF \l_@@_supv_ii_str
          {
            \@@_str_max_dim:Nn \l_@@_zh_title_page_info_dim
              { 謖�ｯｼ謨吝ｸ亥ｧ灘錐縲∬′遘ｰ�喀l_@@_supv_ii_str \enskip \l_@@_supv_ii_t_str }
          }
      }
    \@@_str_max_dim:Nn \l_@@_zh_title_page_info_dim
      { 蟄ｦ\qquad{}髯｢�喀l_@@_dept_str }
    \@@_str_max_dim:Nn \l_@@_zh_title_page_info_dim
      { 謠蝉ｺ､譌･譛滂ｼ喀@@_zh_submit_date: }
%    \end{macrocode}
% \changes{v1.26.6.0}{2022/06/11}{遐皮ｩｶ逕滉ｸｭ譁�｢伜錐鬘ｵ蠎暮Κ菫｡諱ｯ閾ｪ蜉ｨ螻�ｸｭ}
% \changes{v1.26.10.0}{2022/06/17}{菫ｮ豁｣荳ｭ譁�｢伜錐鬘ｵ蠎暮Κ菫｡諱ｯ蟄嶺ｽ鍋ｳｻ蛻抑
% 蠎暮Κ菫｡諱ｯ縲�
%    \begin{macrocode}
    \dim_new:N \l_@@_zh_title_page_info_skip_dim
    \dim_set_eq:NN \l_@@_zh_title_page_info_skip_dim \linewidth
    \dim_sub:Nn \l_@@_zh_title_page_info_skip_dim { \l_@@_zh_title_page_info_dim }
    \skip_horizontal:n { \dim_eval:n { \l_@@_zh_title_page_info_skip_dim / 2 } }
    \vbox:n
      {
        \rmfamily \zihao { 4 }
        \dim_set:Nn \baselineskip { 32pt }
        { \bfseries 菴懆�ｧ灘錐�� } \l_@@_author_str
        \bool_if:NTF \l_@@_ac
          {
            \par
            { \bfseries 荳郤ｧ蟄ｦ遘托ｼ� } \l_@@_major_str
            \par
            { \bfseries 莠檎ｺｧ蟄ｦ遘托ｼ育�皮ｩｶ譁ｹ蜷托ｼ会ｼ� } \l_@@_sub_major_str
          }
          {
            \par
            { \bfseries 鬚�\qquad{}蝓滂ｼ� } \l_@@_domain_str
          }
        \par
        { \bfseries 蟄ｦ菴咲ｱｻ蛻ｫ�� } \l_@@_degree_str
        \bool_if:NTF \l_@@_pro
          {
            \par
            { \bfseries 蟄ｦ譬｡蟇ｼ蟶亥ｧ灘錐縲∬′遘ｰ�� }
            \l_@@_supv_str \enskip \l_@@_supv_t_str
            \str_if_empty:NF \l_@@_supv_ii_str
              {
                \par
                \phantom { 蟄ｦ譬｡蟇ｼ蟶亥ｧ灘錐縲∬′遘ｰ�� }
                \l_@@_supv_ii_str \enskip \l_@@_supv_ii_t_str
              }
            \par
            { \bfseries 莨∽ｸ壼ｯｼ蟶亥ｧ灘錐縲∬′遘ｰ�� }
            \l_@@_supv_ent_str \enskip \l_@@_supv_ent_t_str
          }
          {
            \par
            { \bfseries 謖�ｯｼ謨吝ｸ亥ｧ灘錐縲∬′遘ｰ�� }
            \l_@@_supv_str \enskip \l_@@_supv_t_str
            \str_if_empty:NF \l_@@_supv_ii_str
              {
                \par
                \phantom { 謖�ｯｼ謨吝ｸ亥ｧ灘錐縲∬′遘ｰ�� }
                \l_@@_supv_ii_str \enskip \l_@@_supv_ii_t_str
              }
          }
        \par
        { \bfseries 蟄ｦ\qquad{}髯｢�� } \l_@@_dept_str
        \par
        { \bfseries 謠蝉ｺ､譌･譛滂ｼ� } \@@_zh_submit_date:
      }
  }
%    \end{macrocode}
% \end{macro}
% \begin{macro}{\@@_zh_title_page:}
% \changes{v1.17.0.0}{2022/05/28}{荳ｭ譁�｢伜錐鬘ｵ}
% 荳ｭ譁�｢伜錐鬘ｵ縲�
%    \begin{macrocode}
\cs_new:Npn \@@_zh_title_page:
  {
%    \end{macrocode}
% 鬘ｶ驛ｨ菫｡諱ｯ縲�
%    \begin{macrocode}
    \vbox:n { }
    \skip_vertical:n { -7.5pt }
    \dim_set:Nn \baselineskip { 15.6bp }
    \vbox:n
      {
        \mode_leave_vertical:
        \@@_cover_iii:nnnn { 4em } { 蟄ｦ譬｡莉｣遐� } { 7em } { 10701                }
        \hfill
        \@@_cover_iii:nnnn { 3em } { 蟄ｦ蜿ｷ     } { 7em } { \l_@@_student_id_str }
      }
    \vbox:n
      {
        \mode_leave_vertical:
        \@@_cover_iii:nnnn { 4em } { 蛻�ｱｻ蜿ｷ   } { 7em } { \l_@@_clc_str        }
        \hfill
        \@@_cover_iii:nnnn { 3em } { 蟇�ｺｧ     } { 7em } { \l_@@_secret_lv_str  }
      }
%    \end{macrocode}
% 蟄ｦ譬｡蜷咲ｧｰ蜥瑚ｮｺ譁�ｱｻ蝙九�
%    \begin{macrocode}
    \@@_cover_i:nnnnn { 100pt  } { sf } { 1  } { bf } { 隘ｿ螳臥鳩蟄千ｧ第橿螟ｧ蟄ｦ   }
    \@@_cover_i:nnnnn { 85pt   } { rm } { -1 } { bf } { \l_@@_gr_type_tl 蟄ｦ菴崎ｮｺ譁� }
%    \end{macrocode}
% \changes{v4.4.0.0}{2023/02/03}{遐皮ｩｶ逕滉ｸｭ譁�｢伜錐鬘ｵ譬�｢倅ｸｭ謨ｰ蟄ｦ蟄嶺ｽ灘刈邊抑
% \changes{v1.18.1.0}{2022/05/30}{荳肴究蛻��皮ｩｶ逕滉ｸｭ譁�｢伜錐鬘ｵ譬�｢�}
% 隶ｺ譁���｢倥�
%    \begin{macrocode}
    \skip_vertical:n { 87.5pt }
    \vbox_to_ht:nn { 150pt }
      {
        \rmfamily \zihao { 2 } \bfseries \@@_bold_math: \centering
        \dim_set:Nn \baselineskip { 30pt }
        \l_@@_title_tl
      }
%    \end{macrocode}
% 蠎暮Κ菫｡諱ｯ縲�
%    \begin{macrocode}
    \group_begin:
      \@@_zh_title_page_info:
    \group_end:
    \cleardoublepage
  }
%    \end{macrocode}
% \end{macro}
% \paragraph{荳ｭ譁�｢伜錐鬘ｵ}
% \begin{macro}{\@@_en_title_supv:n}
% \changes{v1.18.0.0}{2022/05/29}{闍ｱ譁�｢伜錐鬘ｵ蠎暮Κ蟇ｼ蟶亥ｧ灘錐諡ｼ髻ｳ逶貞ｭ図
% 闍ｱ譁�｢伜錐鬘ｵ蠎暮Κ蟇ｼ蟶亥ｧ灘錐諡ｼ髻ｳ逶貞ｭ舌�
%    \begin{macrocode}
\dim_new:N \l_@@_supv_dim
\dim_new:N \l_@@_supv_max_dim
\box_new:N \l_@@_supv_box
\cs_new:Npn \@@_en_title_supv:n #1
  {
    \rmfamily \zihao { 3 }
    \dim_zero:N \l_@@_supv_max_dim
    \hbox_set:Nn \l_@@_supv_box { \l_@@_supv_en_str }
    \dim_set:Nn \l_@@_supv_dim { \box_wd:N \l_@@_supv_box }
    \dim_set:Nn \l_@@_supv_max_dim
      { \dim_max:nn { \l_@@_supv_dim } { \l_@@_supv_max_dim } }
    \str_if_empty:NF \l_@@_supv_ii_str
      {
        \hbox_set:Nn \l_@@_supv_box { \l_@@_supv_ii_en_str }
        \dim_set:Nn \l_@@_supv_dim { \box_wd:N \l_@@_supv_box }
        \dim_set:Nn \l_@@_supv_max_dim
          { \dim_max:nn { \l_@@_supv_dim } { \l_@@_supv_max_dim } }
      }
    \bool_if:NT \l_@@_pro
      {
        \hbox_set:Nn \l_@@_supv_box { \l_@@_supv_ent_en_str }
        \dim_set:Nn \l_@@_supv_dim { \box_wd:N \l_@@_supv_box }
        \dim_set:Nn \l_@@_supv_max_dim
          { \dim_max:nn { \l_@@_supv_dim } { \l_@@_supv_max_dim } }
      }
    \hbox_to_wd:nn { \l_@@_supv_max_dim } { #1 \hfil } \quad
  }
%    \end{macrocode}
% \end{macro}
% \begin{macro}{\@@_en_title_supv_t:n}
% \changes{v1.18.0.0}{2022/05/29}{闍ｱ譁�｢伜錐鬘ｵ蠎暮Κ蟇ｼ蟶郁恭譁�′遘ｰ逶貞ｭ図
% 闍ｱ譁�｢伜錐鬘ｵ蠎暮Κ蟇ｼ蟶郁恭譁�′遘ｰ逶貞ｭ舌�
%    \begin{macrocode}
\dim_new:N \l_@@_supv_t_dim
\dim_new:N \l_@@_supv_t_max_dim
\box_new:N \l_@@_supv_t_box
\cs_new:Npn \@@_en_title_supv_t:n #1
  {
    \rmfamily \zihao { 3 }
    \dim_zero:N \l_@@_supv_t_max_dim
    \hbox_set:Nn \l_@@_supv_t_box { \l_@@_supv_t_en_str }
    \dim_set:Nn \l_@@_supv_t_dim { \box_wd:N \l_@@_supv_t_box }
    \dim_set:Nn \l_@@_supv_t_max_dim
      { \dim_max:nn { \l_@@_supv_t_dim } { \l_@@_supv_t_max_dim } }
    \str_if_empty:NF \l_@@_supv_ii_str
      {
        \hbox_set:Nn \l_@@_supv_t_box { \l_@@_supv_ii_t_en_str }
        \dim_set:Nn \l_@@_supv_t_dim { \box_wd:N \l_@@_supv_t_box }
        \dim_set:Nn \l_@@_supv_t_max_dim
          { \dim_max:nn { \l_@@_supv_t_dim } { \l_@@_supv_t_max_dim } }
      }
    \bool_if:NT \l_@@_pro
      {
        \hbox_set:Nn \l_@@_supv_t_box { \l_@@_supv_ent_t_en_str }
        \dim_set:Nn \l_@@_supv_t_dim { \box_wd:N \l_@@_supv_t_box }
        \dim_set:Nn \l_@@_supv_t_max_dim
          { \dim_max:nn { \l_@@_supv_t_dim } { \l_@@_supv_t_max_dim } }
      }
    \hbox_to_wd:nn { \l_@@_supv_t_max_dim } { #1 \hfil } \quad
  }
%    \end{macrocode}
% \end{macro}
% \begin{macro}{\@@_en_title_page:}
% \changes{v4.4.0.0}{2023/02/03}{遐皮ｩｶ逕溯恭譁�｢伜錐鬘ｵ譬�｢倅ｸｭ謨ｰ蟄ｦ蟄嶺ｽ灘刈邊抑
% \changes{v1.18.0.0}{2022/05/29}{闍ｱ譁�｢伜錐鬘ｵ}
% \changes{v1.26.1.0}{2022/06/07}{菫ｮ螟堺ｽ懆�蕎髻ｳ荳ｺ遨ｺ譌�豕慕ｼ冶ｯ挿
% \changes{v1.26.11.0}{2022/06/17}{菫ｮ螟埼撼荳謎ｸ夂｡募｣ｫ闍ｱ譁�｢伜錐鬘ｵ闍ｱ譁�ｸ郤ｧ蟄ｦ遘挿
% 闍ｱ譁�｢伜錐鬘ｵ縲�
%    \begin{macrocode}
\cs_new:Npn \@@_en_title_page:
  {
    \vbox:n { }
    \skip_vertical:n { -3.5pt }
    \dim_set:Nn \baselineskip { 30pt }
    \vbox_to_ht:nn { 170pt }
      {
        \rmfamily \zihao { 2 } \bfseries \@@_bold_math: \centering
        \dim_set:Nn \baselineskip { 30pt }
        \l_@@_title_en_str
      }
    \vbox_to_ht:nn { 360pt }
      {
        \rmfamily \zihao { 3 } \centering
        \dim_set:Nn \baselineskip { 30pt }
        A
        \bool_if:NTF \l_@@_master { ~thesis~ } { ~dissertation~ }
        submitted~to\\
        XIDIAN~UNIVERSITY\\
        in~partial~fulfillment~of~the~requirements\\
        for~the~degree~of
        \bool_if:NTF \l_@@_master { ~Master\\ } { ~Doctor~of~Philosophy\\ }
        in
        \bool_if:NTF \l_@@_pro
          { ~\l_@@_degree_en_str\\ }
          { ~\l_@@_major_en_str\\  }
      }
    \vbox:n
      {
        \rmfamily \zihao { 3 } \centering
        \dim_set:Nn \baselineskip { 30pt }
        By\\
        \l_@@_author_en_str
        \str_if_empty:NTF \l_@@_author_en_str
          { \skip_vertical:N \baselineskip }
          { \\ }
        Supervisor:~\@@_en_title_supv:n { \l_@@_supv_en_str }
        Title:~\@@_en_title_supv_t:n { \l_@@_supv_t_en_str } \\
        \str_if_empty:NF \l_@@_supv_ii_str
          {
            \phantom { Supervisor:~ } \@@_en_title_supv:n { \l_@@_supv_ii_en_str }
            \phantom { Title:~ } \@@_en_title_supv_t:n { \l_@@_supv_ii_t_en_str } \\
          }
        \bool_if:NT \l_@@_pro
          {
            Supervisor:~ \@@_en_title_supv:n { \l_@@_supv_ent_en_str }
            Title:~ \@@_en_title_supv_t:n { \l_@@_supv_ent_t_en_str } \\
          }
        \@@_en_submit_date:
      }
    \cleardoublepage
  }
%    \end{macrocode}
% \end{macro}
% \paragraph{螢ｰ譏朱｡ｵ}
% \begin{macro}
%   {
%     \@@_statement_scan_sign_uline:n,
%     \@@_statement_scan_sign:nnnn
%   }
% \changes{v2.2.0.0}{2022/06/23}{螢ｰ譏朱｡ｵ遲ｾ蟄玲沖謠乗枚莉ｶ}
% 螢ｰ譏朱｡ｵ遲ｾ蟄玲沖謠乗枚莉ｶ縲�
%    \begin{macrocode}
\cs_new:Npn \@@_statement_scan_sign_uline:n #1
  {
    \@@_uline:n
      {
        \vbox_to_ht:nn { 17.5pt }
          {
            \vfil
            \hbox_to_wd:nn { 10em }
              {
                \hfil
                \includegraphics [ width = 10em, height = 25pt, keepaspectratio ] { #1 }
                \hfil
              }
          }
      }
  }
\cs_new:Npn \@@_statement_scan_sign:nnnn #1#2#3#4
  {
    \vbox_to_ht:nn { 30pt }
      {
        \vfil
        #1��
        \@@_statement_scan_sign_uline:n { #2 }
        \hfill
        #3��
        \@@_statement_scan_sign_uline:n { #4 }
      }
  }
%    \end{macrocode}
% \end{macro}
% \begin{macro}{\@@_statement:}
% \changes{v1.19.0.0}{2022/05/30}{蟄ｦ菴崎ｮｺ譁�峡蛻帶ｧ螢ｰ譏主柱蜈ｳ莠手ｮｺ譁�ｽｿ逕ｨ謗域揀逧�ｯｴ譏枝
% \changes{v2.2.0.0}{2022/06/23}{謾ｯ謖∝｣ｰ譏朱｡ｵ謠貞�遲ｾ蟄玲沖謠乗枚莉ｶ}
% 蟄ｦ菴崎ｮｺ譁�峡蛻帶ｧ螢ｰ譏主柱蜈ｳ莠手ｮｺ譁�ｽｿ逕ｨ謗域揀逧�ｯｴ譏弱�
%    \begin{macrocode}
\cs_new:Npn \@@_statement:
  {
    \vbox:n { }
    \skip_vertical:n { -7.5pt }
    \vbox_to_ht:nn { 60pt }
      {
        \rmfamily \zihao { 4 } \bfseries \centering
        \dim_set:Nn \baselineskip { 20pt }
        隘ｿ螳臥鳩蟄千ｧ第橿螟ｧ蟄ｦ\\
        蟄ｦ菴崎ｮｺ譁�峡蛻帶ｧ�域�蛻帶眠諤ｧ�牙｣ｰ譏�
      }
    \vbox_to_ht:nn { 120pt }
      {
        \rmfamily \zihao { -4 }
        \dim_set:Nn \parindent { 2em }
        \dim_set:Nn \baselineskip { 20pt }
        遘画価蟄ｦ譬｡荳･隹ｨ逧�ｭｦ鬟主柱莨倩憶逧�ｧ大ｭｦ驕灘ｾｷ�梧悽莠ｺ螢ｰ譏取園蜻井ｺ､逧�ｮｺ譁�弍謌台ｸｪ莠ｺ蝨ｨ蟇ｼ蟶域欠
        蟇ｼ荳玖ｿ幄｡檎噪遐皮ｩｶ蟾･菴懷所蜿門ｾ礼噪遐皮ｩｶ謌先棡縲ょｰｽ謌第園遏･�碁勁莠�枚荳ｭ迚ｹ蛻ｫ蜉�莉･譬�ｳｨ蜥瑚�隹｢
        荳ｭ謇鄂怜�逧��螳ｹ莉･螟厄ｼ瑚ｮｺ譁�ｸｭ荳榊桁蜷ｫ蜈ｶ莉紋ｺｺ蟾ｲ扈丞書陦ｨ謌匁腸蜀呵ｿ�噪遐皮ｩｶ謌先棡�帑ｹ滉ｸ榊桁
        蜷ｫ荳ｺ闔ｷ蠕苓･ｿ螳臥鳩蟄千ｧ第橿螟ｧ蟄ｦ謌門�螳�蕗閧ｲ譛ｺ譫�噪蟄ｦ菴肴�隸∽ｹｦ閠御ｽｿ逕ｨ霑�噪譚先侭縲ゆｸ取�荳
        蜷悟ｷ･菴懃噪蜷御ｺ句ｯｹ譛ｬ遐皮ｩｶ謇蛛夂噪莉ｻ菴戊ｴ｡迪ｮ蝮�ｷｲ蝨ｨ隶ｺ譁�ｸｭ菴應ｺ��遑ｮ逧�ｯｴ譏主ｹｶ陦ｨ遉ｺ莠�ｰ｢諢上�
        \par
        蟄ｦ菴崎ｮｺ譁�凶譛我ｸ榊ｮ樔ｹ句､�ｼ梧悽莠ｺ謇ｿ諡�ｸ蛻�ｳ募ｾ玖ｴ｣莉ｻ縲�
        \vfil
      }
    \clist_if_empty:NT \l_@@_statement_sign_clist
      { \skip_vertical:n { 20pt } }
    \vbox_to_ht:nn { 175pt }
      {
        \rmfamily \zihao { -4 }
        \dim_set:Nn \parindent { 2em }
        \dim_set:Nn \baselineskip { 20pt }
        \clist_if_empty:NTF \l_@@_statement_sign_clist
          {
            譛ｬ莠ｺ遲ｾ蜷搾ｼ喀@@_uline:n { \skip_horizontal:n { 10em } }
            \hfill
            譌･\qquad{}譛滂ｼ喀@@_uline:n { \skip_horizontal:n { 10em } }
          }
          {
            \@@_statement_scan_sign:nnnn
              { 譛ｬ莠ｺ遲ｾ蜷�     } { \clist_item:Nn \l_@@_statement_sign_clist { 1 } }
              { 譌･\qquad{}譛� } { \clist_item:Nn \l_@@_statement_sign_clist { 2 } }
          }
      }
    \clist_if_empty:NF \l_@@_statement_sign_clist
      { \skip_vertical:n { 20pt } }
    \vbox_to_ht:nn { 60pt }
      {
        \rmfamily \zihao { 4 } \bfseries \centering
        \dim_set:Nn \baselineskip { 20pt }
        隘ｿ螳臥鳩蟄千ｧ第橿螟ｧ蟄ｦ\\
        蜈ｳ莠手ｮｺ譁�ｽｿ逕ｨ謗域揀逧�ｯｴ譏�
      }
    \vbox_to_ht:nn { 120pt }
      {
        \rmfamily \zihao { -4 }
        \dim_set:Nn \parindent { 2em }
        \dim_set:Nn \baselineskip { 20pt }
        譛ｬ莠ｺ螳悟�莠�ｧ｣隘ｿ螳臥鳩蟄千ｧ第橿螟ｧ蟄ｦ譛牙�菫晉蕗蜥御ｽｿ逕ｨ蟄ｦ菴崎ｮｺ譁�噪隗�ｮ夲ｼ悟叉�夂�皮ｩｶ逕溷惠譬｡
        謾ｻ隸ｻ蟄ｦ菴肴悄髣ｴ隶ｺ譁�ｷ･菴懃噪遏･隸�ｺｧ譚�ｱ樔ｺ手･ｿ螳臥鳩蟄千ｧ第橿螟ｧ蟄ｦ縲ょｭｦ譬｡譛画揀菫晉蕗騾∽ｺ､隶ｺ譁�
        逧�､榊魂莉ｶ�悟�隶ｸ譟･髦�∝滄�隶ｺ譁�ｼ帛ｭｦ譬｡蜿ｯ莉･蜈ｬ蟶�ｮｺ譁�噪蜈ｨ驛ｨ謌夜Κ蛻��螳ｹ�悟�隶ｸ驥�畑
        蠖ｱ蜊ｰ縲∫ｼｩ蜊ｰ謌門�螳�､榊宛謇区ｮｵ菫晏ｭ倩ｮｺ譁�ょ酔譌ｶ譛ｬ莠ｺ菫晁ｯ�ｼ檎ｻ灘粋蟄ｦ菴崎ｮｺ譁��皮ｩｶ謌先棡螳梧�
        逧�ｮｺ譁�∝書譏惹ｸ灘茜遲画�譫懶ｼ檎ｽｲ蜷榊黒菴堺ｸｺ隘ｿ螳臥鳩蟄千ｧ第橿螟ｧ蟄ｦ縲�
        \par
        菫晏ｯ�噪蟄ｦ菴崎ｮｺ譁�惠
        \str_if_eq:NNTF \l_@@_secret_lv_str { 遘伜ｯ� }
          {
            \str_if_empty:NTF \l_@@_secret_year_str
              { \@@_uline:n { \skip_horizontal:n { 1.5em } } }
              { \@@_uline:n { \enskip \l_@@_secret_year_str \enskip } }
          }
          { \@@_uline:n { \skip_horizontal:n { 1.5em } } }
        蟷ｴ隗｣蟇�錘騾ら畑譛ｬ謗域揀荵ｦ縲�
        \vfil
      }
    \clist_if_empty:NT \l_@@_statement_sign_clist
      { \skip_vertical:n { 20pt } }
    \vbox:n
      {
        \rmfamily \zihao { -4 }
        \dim_set:Nn \parindent { 2em }
        \dim_set:Nn \baselineskip { 40pt }
        \clist_if_empty:NTF \l_@@_statement_sign_clist
          {
            譛ｬ莠ｺ遲ｾ蜷搾ｼ喀@@_uline:n { \skip_horizontal:n { 10em } }
            \hfill
            蟇ｼ蟶育ｭｾ蜷搾ｼ喀@@_uline:n { \skip_horizontal:n { 10em } }
            \par
            譌･\qquad{}譛滂ｼ喀@@_uline:n { \skip_horizontal:n { 10em } }
            \hfill
            譌･\qquad{}譛滂ｼ喀@@_uline:n { \skip_horizontal:n { 10em } }
          }
          {
            \@@_statement_scan_sign:nnnn
              { 譛ｬ莠ｺ遲ｾ蜷�     } { \clist_item:Nn \l_@@_statement_sign_clist { 3 } }
              { 蟇ｼ蟶育ｭｾ蜷�     } { \clist_item:Nn \l_@@_statement_sign_clist { 5 } }
            \par
            \@@_statement_scan_sign:nnnn
              { 譌･\qquad{}譛� } { \clist_item:Nn \l_@@_statement_sign_clist { 4 } }
              { 譌･\qquad{}譛� } { \clist_item:Nn \l_@@_statement_sign_clist { 6 } }
          }
      }
    \cleardoublepage
  }
%    \end{macrocode}
% \end{macro}
% \paragraph{荳ｭ闍ｱ譁�遭隕±
% \begin{macro}{\@@_zh_abstract_keywords:}
% \changes{v1.20.0.0}{2022/05/30}{荳ｭ譁�遭隕∝柱蜈ｳ髞ｮ隸閤
% \changes{v1.28.1.0}{2022/06/18}{豺ｻ蜉�荳ｭ譁�遭隕∬�逶ｮ蠖扶
% \changes{v1.28.2.0}{2022/06/18}{菫ｮ豁｣闍ｱ譁�ｯｭ險荳倶ｸｭ譁�遭隕∵��｢俶�ｷ蠑殉
% 荳ｭ譁�遭隕∝柱蜈ｳ髞ｮ隸阪�
%    \begin{macrocode}
\cs_new:Npn \@@_zh_abstract_keywords:
  {
%    \end{macrocode}
% 荳ｭ譁�遭隕√�
%    \begin{macrocode}
    \@@_n_chapter_head_toc:nn { 鞫倩ｦ� } { 鞫� { \quad } 隕� }
    \@@_lang_switch:nn { } { \@@_add_zh_toc:nn { chapter } { 鞫倩ｦ� } }
    \group_begin:
      \dim_set:Nn \parindent { 2 \ccwd }
      \rmfamily \zihao { -4 }
      \dim_set:Nn \baselineskip { 20pt }
      \file_if_exist_input:n { \l_@@_abstract_zh_tl }
    \group_end:
%    \end{macrocode}
% 荳ｭ譁��髞ｮ隸阪�
%    \begin{macrocode}
    \group_begin:
      \rmfamily \zihao { -4 }
      \dim_set:Nn \baselineskip { 20pt }
      \skip_vertical:n { 20pt }
      \@@_typeout_keywords:nNn
        { \textbf { 蜈ｳ髞ｮ隸� } �� } { \l_@@_keywords_zh_clist } { �� }
    \group_end:
    \cleardoublepage
  }
%    \end{macrocode}
% \end{macro}
% \begin{macro}{\@@_en_abstract_keywords:}
% \changes{v1.20.0.0}{2022/05/30}{闍ｱ譁�遭隕∝柱蜈ｳ髞ｮ隸閤
% \changes{v1.28.1.0}{2022/06/18}{豺ｻ蜉�闍ｱ譁�遭隕∬�逶ｮ蠖扶
% \changes{v1.28.2.0}{2022/06/18}{菫ｮ豁｣闍ｱ譁�遭隕∵��｢俶�ｷ蠑殉
% \changes{v1.28.3.0}{2022/06/18}{菫ｮ豁｣逶ｮ蠖穂ｸｭ闍ｱ譁�遭隕∵��｢俶�ｷ蠑殉
% 闍ｱ譁�遭隕∝柱蜈ｳ髞ｮ隸阪�
%    \begin{macrocode}
\cs_new:Npn \@@_en_abstract_keywords:
  {
%    \end{macrocode}
% 闍ｱ譁�遭隕√�
%    \begin{macrocode}
    \@@_n_chapter_head_toc_ii:nn
      { \textrm { ABSTRACT } } { \centering \rmfamily \zihao { 3 } \dim_set:Nn \baselineskip { 20pt } }
    \@@_lang_switch:nn { } { \@@_add_zh_toc:nn { chapter } { \textrm { ABSTRACT } } }
    \group_begin:
      \dim_set:Nn \parskip { 20pt }
      \rmfamily \zihao { -4 }
      \dim_set:Nn \baselineskip { 20pt }
      \file_if_exist:nT { \l_@@_abstract_en_tl } { \skip_vertical:n { -20pt } }
      \file_if_exist_input:n { \l_@@_abstract_en_tl }
    \group_end:
%    \end{macrocode}
% 闍ｱ譁��髞ｮ隸阪�
%    \begin{macrocode}
    \group_begin:
      \rmfamily \zihao { -4 }
      \dim_set:Nn \baselineskip { 20pt }
      \skip_vertical:n { 20pt }
      \@@_typeout_keywords:nNn
        { \textbf { Keywords } �� } { \l_@@_keywords_en_clist } { ,~ }
    \group_end:
    \cleardoublepage
  }
%    \end{macrocode}
% \end{macro}
% \paragraph{蝗ｾ陦ｨ邏｢蠑扶
% \begin{macro}{\@@_loft_label_num_width:nN}
% \changes{v1.21.0.0}{2022/06/01}{隶｡邂怜崟陦ｨ邏｢蠑慕ｼ門捷譬�ｭｾ譛螟ｧ螳ｽ蠎ｦ}
% 隶｡邂怜崟陦ｨ邏｢蠑慕ｼ門捷譬�ｭｾ譛螟ｧ螳ｽ蠎ｦ縲�
%    \begin{macrocode}
\cs_new:Npn \@@_loft_label_num_width:nN #1#2
  {
%    \end{macrocode}
% 隸ｻ蜿也ｴ｢蠑墓枚莉ｶ縲�
%    \begin{macrocode}
    \tl_clear_new:N \l_@@_loft_tl
    \file_get:nnN
      { \jobname.#1 }
      { \let\do\@makeother \dospecials }
      \l_@@_loft_tl
%    \end{macrocode}
% 菴ｿ逕ｨ豁｣蛻呵｡ｨ霎ｾ蠑丞源驟咲ｴ｢蠑慕ｼ門捷縲�
%    \begin{macrocode}
    \seq_clear_new:N \l_@@_loft_label_num_seq
    \cs_generate_variant:Nn \regex_extract_all:nnN { nVN }
    \str_if_eq:nnTF { #1 } { lof }
      {
        \regex_extract_all:nVN
          { \\contentsline\ \{figure\}\{\\numberline\ \{\K[0-9A-Z\.]+ }
          \l_@@_loft_tl \l_@@_loft_label_num_seq
      }
      {
        \regex_extract_all:nVN
          { \\contentsline\ \{table\}\{\\numberline\ \{\K[0-9A-Z\.]+ }
          \l_@@_loft_tl \l_@@_loft_label_num_seq
      }
%    \end{macrocode}
% 隶｡邂玲園譛臥ｴ｢蠑慕ｼ門捷逧�怙螟ｧ螳ｽ蠎ｦ縲�
%    \begin{macrocode}
    \dim_zero_new:N \l_@@_loft_label_num_dim
    \seq_map_inline:Nn \l_@@_loft_label_num_seq
      {
        \@@_get_text_width:Nn \l_@@_loft_label_num_dim { ##1 }
        \dim_set:Nn #2 { \dim_max:nn { \l_@@_loft_label_num_dim } { #2 } }
      }
  }
%    \end{macrocode}
% \end{macro}
% \begin{macro}{\@@_list_of_figure:}
% \changes{v1.21.0.0}{2022/05/31}{謠貞崟邏｢蠑扶
% \changes{v1.28.1.0}{2022/06/18}{豺ｻ蜉�謠貞崟邏｢蠑戊�逶ｮ蠖扶
% \changes{v1.29.3.0}{2022/06/19}{菫ｮ豁｣謠貞崟邏｢蠑募ｭ怜捷}
% 謠貞崟邏｢蠑輔�
%    \begin{macrocode}
\cs_new:Npn \@@_list_of_figure:
  {
    \@@_n_chapter_head_toc:n
      { \@@_lang_switch:nn { 謠貞崟邏｢蠑� } { List~of~Figures } }
    \@@_lang_switch:nn { } { \@@_add_zh_toc:nn { chapter } { 謠貞崟邏｢蠑� } }
    \group_begin:
      \addtocontents { lof } { \vspace { 10pt } }
      \renewcommand { \addvspace } [1] { }
%    \end{macrocode}
% 驟咲ｽｮ譁�悽譬�ｭｾ蜿雁ｮｽ蠎ｦ縲�
%    \begin{macrocode}
      \tl_set:Nn \cftfigpresnum {  \figurename \space }
      \dim_zero_new:N \l_@@_lof_label_dim
      \@@_get_text_width:NV \l_@@_lof_label_dim \cftfigpresnum
      \dim_set:Nn \cftfignumwidth { \l_@@_lof_label_dim }
%    \end{macrocode}
% 驟咲ｽｮ邏｢蠑慕ｼ門捷譬�ｭｾ螳ｽ蠎ｦ縲�
%    \begin{macrocode}
      \dim_new:N \l_@@_lof_label_num_max_dim
      \@@_loft_label_num_width:nN { lof } \l_@@_lof_label_num_max_dim
      \dim_add:Nn \cftfignumwidth { \l_@@_lof_label_num_max_dim }
      \dim_add:Nn \cftfignumwidth { .75em }
      \dim_set:Nn \cftfigindent { 0pt }
%    \end{macrocode}
% 謗堤沿邏｢蠑戊｡ｨ縲�
%    \begin{macrocode}
      \rmfamily \zihao { -4 } \dim_set:Nn \baselineskip { 20pt }
      \@starttoc { lof }
    \group_end:
    \cleardoublepage
  }
%    \end{macrocode}
% \end{macro}
% \begin{macro}{\@@_list_of_table:}
% \changes{v1.21.0.0}{2022/05/31}{陦ｨ譬ｼ邏｢蠑扶
% \changes{v1.28.1.0}{2022/06/18}{豺ｻ蜉�陦ｨ譬ｼ邏｢蠑戊�逶ｮ蠖扶
% \changes{v1.29.3.0}{2022/06/19}{菫ｮ豁｣陦ｨ譬ｼ邏｢蠑募ｭ怜捷}
% 陦ｨ譬ｼ邏｢蠑輔�
%    \begin{macrocode}
\cs_new:Npn \@@_list_of_table:
  {
    \@@_n_chapter_head_toc:n
      { \@@_lang_switch:nn { 陦ｨ譬ｼ邏｢蠑� } { List~of~Tables } }
    \@@_lang_switch:nn { } { \@@_add_zh_toc:nn { chapter } { 陦ｨ譬ｼ邏｢蠑� } }
    \group_begin:
      \addtocontents { lot } { \vspace { 10pt } }
      \renewcommand { \addvspace } [1] { }
%    \end{macrocode}
% 驟咲ｽｮ譁�悽譬�ｭｾ蜿雁ｮｽ蠎ｦ縲�
%    \begin{macrocode}
      \tl_set:Nn \cfttabpresnum {  \tablename \space }
      \dim_zero_new:N \l_@@_lot_label_dim
      \@@_get_text_width:NV \l_@@_lot_label_dim \cfttabpresnum
      \dim_set:Nn \cfttabnumwidth { \l_@@_lot_label_dim }
%    \end{macrocode}
% 驟咲ｽｮ邏｢蠑慕ｼ門捷譬�ｭｾ螳ｽ蠎ｦ縲�
%    \begin{macrocode}
      \dim_new:N \l_@@_lot_label_num_max_dim
      \@@_loft_label_num_width:nN { lot } \l_@@_lot_label_num_max_dim
      \dim_add:Nn \cfttabnumwidth { \l_@@_lot_label_num_max_dim }
      \dim_add:Nn \cfttabnumwidth { .75em }
      \dim_set:Nn \cfttabindent { 0pt }
%    \end{macrocode}
% 謗堤沿邏｢蠑戊｡ｨ縲�
%    \begin{macrocode}
      \rmfamily \zihao { -4 } \dim_set:Nn \baselineskip { 20pt }
      \@starttoc { lot }
    \group_end:
    \cleardoublepage
  }
%    \end{macrocode}
% \end{macro}
% \paragraph{蟇ｹ辣ｧ陦ｨ}
% \begin{macro}{\UseTblrLibrary,\NewTblrTheme}
% \changes{v1.22.0.0}{2022/06/05}{蟇ｹ辣ｧ陦ｨ譬ｷ蠑殉
% 蟇ｹ辣ｧ陦ｨ譬ｷ蠑上�
%    \begin{macrocode}
\ctex_at_end_preamble:n
  {
    \bool_new:N \l_@@_load_tabularray_bool
    \bool_if:NF \l_@@_customize_los_bool
      { \bool_set_true:N \l_@@_load_tabularray_bool }
    \bool_if:NF \l_@@_customize_loa_bool
      { \bool_set_true:N \l_@@_load_tabularray_bool }
    \bool_if:NT \l_@@_load_tabularray_bool
      {
        \RequirePackage { tabularray }
        \UseTblrLibrary { functional }
        \NewTblrTheme { losloatheme }
          {
            \DefTblrTemplate { caption-tag   } { default } { }
            \DefTblrTemplate { caption-sep   } { default } { }
            \DefTblrTemplate { caption-text  } { default } { }
            \DefTblrTemplate { conthead-text } { default } { }
            \DefTblrTemplate { contfoot-text } { default } { }
          }
      }
    \cs_generate_variant:Nn \__tblr_parse_colrow_spec:nn { nV }
  }
%    \end{macrocode}
% \end{macro}
% \begin{variable}{\l_@@_losa_add_skip_dim}
% \changes{v2.10.2.0}{2022/06/28}{蟇ｹ辣ｧ陦ｨ陦碁龍霍晁｡･蛛ｿ蛟ｼ}
% 蟇ｹ辣ｧ陦ｨ陦碁龍霍晁｡･蛛ｿ蛟ｼ��
% $20pt-12bp\times(72.27/72)pt/bp\times1.2\times1.3=1.2098pt$縲�
%    \begin{macrocode}
\dim_new:N \l_@@_losa_add_skip_dim
\dim_set:Nn \l_@@_losa_add_skip_dim { 1.2098pt }
%    \end{macrocode}
% \end{variable}
% \begin{macro}{\@@_symbols_list:}
% \changes{v1.22.0.0}{2022/06/05}{隨ｦ蜿ｷ蟇ｹ辣ｧ陦ｨ}
% \changes{v1.26.2.0}{2022/06/09}{菫ｮ螟咲ｬｦ蜿ｷ蟇ｹ辣ｧ陦ｨ蛻玲�ｼ蠑剰ｧ｣譫宣漠隸ｯ}
% \changes{v1.26.3.0}{2022/06/09}{菫ｮ螟咲ｬｦ蜿ｷ蟇ｹ辣ｧ陦ｨ譁�ｻｶ蟇ｼ蜈･謗･蜿｣}
% \changes{v1.26.5.0}{2022/06/10}{菫ｮ螟咲ｬｦ蜿ｷ蟇ｹ辣ｧ陦ｨ遨ｺ譁�ｻｶ譬�｢倩｡碁漠隸ｯ}
% \changes{v1.28.1.0}{2022/06/18}{豺ｻ蜉�隨ｦ蜿ｷ蟇ｹ辣ｧ陦ｨ閾ｳ逶ｮ蠖扶
% \changes{v1.29.1.0}{2022/06/19}{菫ｮ螟咲ｬｦ蜿ｷ蟇ｹ辣ｧ陦ｨ蠑戊ｵｷ逧�ｫ�闃よｮｵ蜑肴ｮｵ蜷朱龍霍晞漠隸ｯ}
% \changes{v2.2.1.0}{2022/06/23}{遘ｻ髯､陦ｨ譬ｼ邏｢蠑穂ｸｭ逕滓�逧�ｬｦ蜿ｷ蟇ｹ辣ｧ陦ｨ}
% \changes{v2.10.2.0}{2022/06/28}{菫ｮ豁｣隨ｦ蜿ｷ蟇ｹ辣ｧ陦ｨ陦悟�陦碁龍霍掵
% 隨ｦ蜿ｷ蟇ｹ辣ｧ陦ｨ縲�
%    \begin{macrocode}
\cs_new:Npn \@@_symbols_list:
  {
    \@@_n_chapter_head_toc:n
      { \@@_lang_switch:nn { 隨ｦ蜿ｷ蟇ｹ辣ｧ陦ｨ } { List~of~Symbols } }
    \@@_lang_switch:nn { } { \@@_add_zh_toc:nn { chapter } { 隨ｦ蜿ｷ蟇ｹ辣ｧ陦ｨ } }
%    \end{macrocode}
% 譏ｯ蜷ｦ螳悟�閾ｪ螳壻ｹ臥ｬｦ蜿ｷ蟇ｹ辣ｧ陦ｨ縲�
%    \begin{macrocode}
    \bool_if:NTF \l_@@_customize_los_bool
      { \file_if_exist_input:n { \l_@@_los_str } }
      {
%    \end{macrocode}
% 驟咲ｽｮ隨ｦ蜿ｷ蟇ｹ辣ｧ陦ｨ譬�｢倩｡後�
%    \begin{macrocode}
        \tl_new:N \l_@@_los_head_tl
        \@@_lang_switch:nn
          { \tl_set:Nn \l_@@_los_head_tl { 隨ｦ蜿ｷ &amp; 隨ｦ蜿ｷ蜷咲ｧｰ \\        } }
          { \tl_set:Nn \l_@@_los_head_tl { Notation &amp; Description \\ } }
%    \end{macrocode}
% 譏ｯ蜷ｦ豈城｡ｵ蝮�仞遉ｺ隨ｦ蜿ｷ蟇ｹ辣ｧ陦ｨ譬�｢倩｡後�
%    \begin{macrocode}
        \tl_new:N \l_@@_los_rowhead_tl
        \bool_if:NTF \l_@@_title_row_los_bool
          { \tl_set:Nn \l_@@_los_rowhead_tl { 1 } }
          { \tl_set:Nn \l_@@_los_rowhead_tl { 0 } }
%    \end{macrocode}
% 菴ｿ逕ｨ\envx{longtblr}邇ｯ蠅�賜迚育ｬｦ蜿ｷ蟇ｹ辣ｧ陦ｨ縲�
%    \begin{macrocode}
        \tl_new:N \l_@@_los_begin_tblr_tl
        \tl_set:Nx \l_@@_los_begin_tblr_tl
          {
            \exp_not:n
              {
                \begin { longtblr }
                  [
                    evaluate = \fileIfExistInput,
                    expand   = \l_@@_los_head_tl,
                    entry    = none,
                    theme    = losloatheme
                  ]
              }
              {
                colspec = { \exp_not:V \l_@@_colspec_los_tl },
                \exp_not:n
                  {
                    rowhead  = \int_compare:nNnTF
                                 { \value { rowcount } } &gt; { 1 }
                                 { \l_@@_los_rowhead_tl } { 0 },
                    cells    = {
                                 font = \rmfamily \zihao { -4 }
                                 \dim_add:Nn \baselineskip { \l_@@_losa_add_skip_dim }
                               },
                    abovesep = 0pt,
                    belowsep = \l_@@_losa_add_skip_dim
                  }
              }
          }
        \tl_use:N \l_@@_los_begin_tblr_tl
          \l_@@_los_head_tl
          \fileIfExistInput { \l_@@_los_str }
        \end { longtblr }
      }
  }
%    \end{macrocode}
% \end{macro}
% \begin{macro}{\@@_abbreviations_list:}
% \changes{v1.22.0.0}{2022/06/05}{郛ｩ逡･隸ｭ蟇ｹ辣ｧ陦ｨ}
% \changes{v1.26.2.0}{2022/06/09}{菫ｮ螟咲ｼｩ逡･隸ｭ蟇ｹ辣ｧ陦ｨ蛻玲�ｼ蠑剰ｧ｣譫宣漠隸ｯ}
% \changes{v1.26.3.0}{2022/06/09}{菫ｮ螟咲ｼｩ逡･隸ｭ蟇ｹ辣ｧ陦ｨ譁�ｻｶ蟇ｼ蜈･謗･蜿｣}
% \changes{v1.26.5.0}{2022/06/10}{菫ｮ螟咲ｼｩ逡･隸ｭ蟇ｹ辣ｧ陦ｨ遨ｺ譁�ｻｶ譬�｢倩｡碁漠隸ｯ}
% \changes{v1.28.1.0}{2022/06/18}{豺ｻ蜉�郛ｩ逡･隸ｭ蟇ｹ辣ｧ陦ｨ閾ｳ逶ｮ蠖扶
% \changes{v1.29.1.0}{2022/06/19}{菫ｮ螟咲ｼｩ逡･隸ｭ蟇ｹ辣ｧ陦ｨ蠑戊ｵｷ逧�ｫ�闃よｮｵ蜑肴ｮｵ蜷朱龍霍晞漠隸ｯ}
% \changes{v2.2.1.0}{2022/06/23}{遘ｻ髯､陦ｨ譬ｼ邏｢蠑穂ｸｭ逕滓�逧�ｼｩ逡･隸ｭ蟇ｹ辣ｧ陦ｨ}
% \changes{v2.10.2.0}{2022/06/28}{菫ｮ豁｣郛ｩ逡･隸ｭ蟇ｹ辣ｧ陦ｨ陦悟�陦碁龍霍掵
% 郛ｩ逡･隸ｭ蟇ｹ辣ｧ陦ｨ縲�
%    \begin{macrocode}
\cs_new:Npn \@@_abbreviations_list:
  {
    \@@_n_chapter_head_toc:n
      { \@@_lang_switch:nn { 郛ｩ逡･隸ｭ蟇ｹ辣ｧ陦ｨ } { List~of~Abbreviations } }
    \@@_lang_switch:nn { } { \@@_add_zh_toc:nn { chapter } { 郛ｩ逡･隸ｭ蟇ｹ辣ｧ陦ｨ } }
%    \end{macrocode}
% 譏ｯ蜷ｦ螳悟�閾ｪ螳壻ｹ臥ｼｩ逡･隸ｭ蟇ｹ辣ｧ陦ｨ縲�
%    \begin{macrocode}
    \bool_if:NTF \l_@@_customize_loa_bool
      { \file_if_exist_input:n { \l_@@_loa_str } }
      {
%    \end{macrocode}
% 驟咲ｽｮ郛ｩ逡･隸ｭ蟇ｹ辣ｧ陦ｨ譬�｢倩｡後�
%    \begin{macrocode}
        \tl_new:N \l_@@_loa_head_tl
        \@@_lang_switch:nn
          {
            \tl_set:Nn \l_@@_loa_head_tl
              { 郛ｩ逡･隸ｭ &amp; 闍ｱ譁��遘ｰ &amp; 荳ｭ譁�ｯｹ辣ｧ \\ }
          }
          {
            \tl_set:Nn \l_@@_loa_head_tl
              { Abbreviation &amp; English~Full~Name &amp; Chinese~Full~Name \\ }
          }
%    \end{macrocode}
% 譏ｯ蜷ｦ豈城｡ｵ蝮�仞遉ｺ郛ｩ逡･隸ｭ蟇ｹ辣ｧ陦ｨ譬�｢倩｡後�
%    \begin{macrocode}
        \tl_new:N \l_@@_loa_rowhead_tl
        \bool_if:NTF \l_@@_title_row_loa_bool
          { \tl_set:Nn \l_@@_loa_rowhead_tl { 1 } }
          { \tl_set:Nn \l_@@_loa_rowhead_tl { 0 } }
%    \end{macrocode}
% 菴ｿ逕ｨ\envx{longtblr}邇ｯ蠅�賜迚育ｼｩ逡･隸ｭ蟇ｹ辣ｧ陦ｨ縲�
%    \begin{macrocode}
        \tl_new:N \l_@@_loa_begin_tblr_tl
        \tl_set:Nx \l_@@_loa_begin_tblr_tl
          {
            \exp_not:n
              {
                \begin { longtblr }
                  [
                    evaluate = \fileIfExistInput,
                    expand   = \l_@@_loa_head_tl,
                    entry    = none,
                    theme    = losloatheme
                  ]
              }
              {
                colspec = { \exp_not:V \l_@@_colspec_loa_tl },
                \exp_not:n
                  {
                    rowhead  = \int_compare:nNnTF
                                 { \value { rowcount } } &gt; { 1 }
                                 { \l_@@_loa_rowhead_tl } { 0 },
                    cells    = {
                                 font = \rmfamily \zihao { -4 }
                                 \dim_add:Nn \baselineskip { \l_@@_losa_add_skip_dim }
                               },
                    abovesep = 0pt,
                    belowsep = \l_@@_losa_add_skip_dim
                  }
              }
          }
        \tl_use:N \l_@@_loa_begin_tblr_tl
          \l_@@_loa_head_tl
          \fileIfExistInput { \l_@@_loa_str }
        \end { longtblr }
      }
  }
%    \end{macrocode}
% \end{macro}
% \begin{macro}{\@@_add_zh_toc:nn}
% \changes{v4.4.0.0}{2023/02/03}{荳ｭ譁�岼蠖穂ｸ郤ｧ譬�｢俶焚蟄ｦ蟄嶺ｽ灘刈邊抑
% \changes{v1.30.0.0}{2022/06/20}{豺ｻ蜉�遶�闃り�荳ｭ譁�岼蠖扶
%    \begin{macrocode}
\cs_new:Npn \@@_add_zh_toc:nn #1#2
  {
    \str_if_eq:NNTF { #1 } { chapter }
      {
        \phantomsection \addcontentsline { zh.toc }
          { #1 } { \@@_sf_family: \@@_bold_math: #2 }
      }
      { \phantomsection \addcontentsline { zh.toc } { #1 } { #2 } }
  }
%    \end{macrocode}
% \end{macro}
% \paragraph{驥榊ｮ壻ｹ噂tn{frontmatter}}
% \begin{macro}{\frontmatter,\@@_frontmatter:}
% \changes{v1.5.0.0}{2022/05/01}{隶ｾ鄂ｮ蟆�擇鬘ｵ霎ｹ霍掵
% \changes{v1.6.0.0}{2022/05/02}{隶ｾ鄂ｮ鬘ｵ閼夐｡ｵ遐±
% \changes{v1.16.0.0}{2022/05/22}{扈伜宛遐皮ｩｶ逕溷ｰ�擇}
% \changes{v2.7.0.0}{2022/06/26}{遐皮ｩｶ逕溷ｭｦ菴崎ｮｺ譁�髪謖∫ｧｻ髯､蜑崎ｨ驛ｨ蛻�｡ｵ髱｢}
% 謗堤沿蜑崎ｨ驛ｨ蛻��
%    \begin{macrocode}
\RenewDocumentCommand { \frontmatter } { } { }
\cs_new:Npn \@@_frontmatter:
  {
    \loadgeometry { cover }
    \pagestyle    { empty }
    \dim_set:Nn \parindent { 0pt }
    \dim_set:Nn \baselineskip { 20pt }
    \bool_if:NF \l_@@_rm_cover_bool
      {
%    \end{macrocode}
% \changes{v4.4.0.0}{2023/02/03}{遐皮ｩｶ逕溷ｰ�擇譬�｢倅ｸｭ謨ｰ蟄ｦ蟄嶺ｽ灘刈邊抑
% \changes{v1.18.1.0}{2022/05/30}{荳肴究蛻��皮ｩｶ逕溷ｰ�擇譬�｢�}
% 蟆�擇譬�｢倥�
%    \begin{macrocode}
        \vbox:n { }
        \skip_vertical:n { 435pt }
        \vbox_to_ht:nn { 120pt }
          {
            \rmfamily \zihao { 2 } \bfseries \@@_bold_math: \centering
            \dim_set:Nn \baselineskip { 30pt }
            \l_@@_title_tl
          }
%    \end{macrocode}
% 蟆�擇蠎暮Κ菴懆�ｿ｡諱ｯ縲�
%    \begin{macrocode}
        \@@_cover_author_info:
        \cleardoublepage
      }
%    \end{macrocode}
% 荳ｭ闍ｱ譁�｢伜錐鬘ｵ縲�
%    \begin{macrocode}
    \bool_if:NF \l_@@_rm_title_page_bool
      {
        \@@_lang_switch:nn
          { \@@_zh_title_page: \@@_en_title_page: }
          { \@@_en_title_page: \@@_zh_title_page: }
      }
%    \end{macrocode}
% 螢ｰ譏朱｡ｵ縲�
%    \begin{macrocode}
    \bool_if:NF \l_@@_rm_statement_bool
      {
        \file_if_exist:nTF { \l_@@_statement_scan_str }
          {
            \loadgeometry { nomargin }
            \vbox_to_ht:nn { \textheight }
              {
                \vfil
                \centering
                \includegraphics
                  [ width = \textwidth, height = \textheight, keepaspectratio ]
                  { \l_@@_statement_scan_str }
                \vfil
              }
            \cleardoublepage
          }
          { \@@_statement: }
      }
%    \end{macrocode}
% 譖ｴ謾ｹ鬘ｵ髱｢譬ｷ蠑上�
%    \begin{macrocode}
    \@@_load_main_geometry:
    \pagestyle     { front }
    \pagenumbering { Roman }
    \dim_set:Nn \baselineskip { 20pt }
%    \end{macrocode}
% 荳ｭ闍ｱ譁�遭隕√�
%    \begin{macrocode}
    \bool_if:NF \l_@@_rm_abstract_bool
      {
        \@@_lang_switch:nn
          { \@@_zh_abstract_keywords: \@@_en_abstract_keywords: }
          { \@@_en_abstract_keywords: \@@_zh_abstract_keywords: }
      }
%    \end{macrocode}
% 蝗ｾ陦ｨ邏｢蠑輔�
%    \begin{macrocode}
    \bool_if:NF \l_@@_rm_lof_bool
      { \@@_list_of_figure: }
    \bool_if:NF \l_@@_rm_lot_bool
      { \@@_list_of_table: }
%    \end{macrocode}
% 隨ｦ蜿ｷ蟇ｹ辣ｧ陦ｨ蜥檎ｼｩ逡･隸ｭ蟇ｹ辣ｧ陦ｨ縲�
%    \begin{macrocode}
    \bool_if:NF \l_@@_rm_los_bool
      { \@@_symbols_list: }
    \bool_if:NF \l_@@_rm_loa_bool
      { \@@_abbreviations_list: }
%    \end{macrocode}
% \changes{v1.23.0.0}{2022/06/05}{遐皮ｩｶ逕溷ｭｦ菴崎ｮｺ譁�岼蠖扶
% \changes{v1.28.0.0}{2022/06/18}{隶ｾ鄂ｮ遐皮ｩｶ逕溷ｭｦ菴崎ｮｺ譁�岼蠖墓ｷｱ蠎ｦ}
% 逶ｮ蠖輔�
%    \begin{macrocode}
    \bool_if:NF \l_@@_rm_toc_bool
      {
        \setcounter { tocdepth } { 2 }
        \@@_n_chapter_head:nn
          { \@@_lang_switch:nn { 逶ｮ蠖�            } { Contents } }
          { \@@_lang_switch:nn { 逶ｮ { \quad } 蠖� } { Contents } }
        \@starttoc { toc }
        \cleardoublepage
%    \end{macrocode}
% \changes{v1.30.0.0}{2022/06/20}{闍ｱ譁��皮ｩｶ逕溷ｭｦ菴崎ｮｺ譁�ｸｭ譁�岼蠖扶
% 闍ｱ譁��皮ｩｶ逕溷ｭｦ菴崎ｮｺ譁�ｸｭ譁�岼蠖輔�
%    \begin{macrocode}
        \@@_lang_switch:nn { }
          {
            \setcounter { tocdepth } { 2 }
            \@@_n_chapter_head:nn { 逶ｮ蠖� } { \@@_sf_family: 逶ｮ { \quad } 蠖� }
            \@starttoc { zh.toc }
            \cleardoublepage
          }
      }
  }
%    \end{macrocode}
% \end{macro}
%    \begin{macrocode}
%&lt;/xdupgthesis&gt;
%&lt;*xduugthesis&gt;
%    \end{macrocode}
% \subsection{豁｣譁�Κ蛻�}
% \subsubsection{譛ｬ遘醍函}
% \begin{macro}{\mainmatter,\@@_mainmatter:}
% \changes{v0.8.0.0}{2022/04/12}{謾ｯ謖∝ｯｹ遘ｰ鬘ｵ霎ｹ霍掵
% 謗堤沿豁｣譁�Κ蛻��
%    \begin{macrocode}
\RenewDocumentCommand { \mainmatter } { } { }
\cs_new:Npn \@@_mainmatter:
  {
    \@@_load_main_geometry:
    \pagestyle     { plain  }
    \pagenumbering { arabic }
    \dim_set:Nn \parindent { 2 \ccwd }
    \rmfamily \zihao { -4 }
  }
%    \end{macrocode}
% \end{macro}
%    \begin{macrocode}
%&lt;/xduugthesis&gt;
%&lt;*xdupgthesis&gt;
%    \end{macrocode}
% \subsubsection{遐皮ｩｶ逕毳
% \begin{macro}{\mainmatter,\@@_mainmatter:}
% \changes{v1.5.0.0}{2022/05/01}{隶ｾ鄂ｮ豁｣譁�｡ｵ霎ｹ霍掵
% \changes{v1.6.0.0}{2022/05/02}{隶ｾ鄂ｮ鬘ｵ閼夐｡ｵ遐±
% \changes{v1.23.1.0}{2022/06/05}{隶ｾ鄂ｮ豁｣譁�ｭ怜捷蜥瑚｡碁龍霍掵
% \changes{v2.10.3.0}{2022/06/28}{菫ｮ豁｣蜈ｬ蠑丈ｸ取ｭ｣譁�龍霍掵
% 謗堤沿豁｣譁�Κ蛻��
%    \begin{macrocode}
\RenewDocumentCommand { \mainmatter } { } { }
\cs_new:Npn \@@_mainmatter:
  {
    \@@_load_main_geometry:
    \pagestyle     { plain  }
    \pagenumbering { arabic }
    \dim_set:Nn \parindent { 2 \ccwd }
    \rmfamily \zihao { -4 }
    \dim_set:Nn \baselineskip { 20pt }
%    \end{macrocode}
% \changes{v4.2.0.0}{2023/01/28}{菫ｮ謾ｹ闍ｱ譁��皮ｩｶ逕溷ｭｦ菴崎ｮｺ譁���｢伜多莉､蜿よ焚譬ｼ蠑殉
% \changes{v1.30.0.0}{2022/06/20}{闍ｱ譁��皮ｩｶ逕溷ｭｦ菴崎ｮｺ譁�岼蠖穂ｸｭ豁｣譁�ｸ莠御ｸ臥ｺｧ荳ｭ闍ｱ蜿瑚ｯｭ譬�｢�}
% 闍ｱ譁��皮ｩｶ逕溷ｭｦ菴崎ｮｺ譁�岼蠖穂ｸｭ豁｣譁�ｸ莠御ｸ臥ｺｧ荳ｭ闍ｱ蜿瑚ｯｭ譬�｢倥�
%    \begin{macrocode}
    \@@_lang_switch:nn { }
      {
        \cs_new_eq:NN \@@_org_chapter:n \chapter
        \RenewDocumentCommand { \chapter } { m o }
          {
            \@@_org_chapter:n { ##1 }
            \@@_add_zh_toc:nn { chapter }
              {
                \numberline { 隨ｬ \chinese { chapter } 遶� \hspace { .3em } }
                \IfNoValueTF { ##2 } { ##1 } { ##2 }
              }
          }
        \cs_new_eq:NN \@@_org_section:n \section
        \RenewDocumentCommand { \section } { m o }
          {
            \@@_org_section:n { ##1 }
            \@@_add_zh_toc:nn { section }
              { \numberline { \thesection } \IfNoValueTF { ##2 } { ##1 } { ##2 } }
          }
        \cs_new_eq:NN \@@_org_subsection:n \subsection
        \RenewDocumentCommand { \subsection } { m o }
          {
            \@@_org_subsection:n { ##1 }
            \@@_add_zh_toc:nn { subsection }
              { \numberline { \thesubsection } \IfNoValueTF { ##2 } { ##1 } { ##2 } }
          }
      }
%    \end{macrocode}
% 菫ｮ豁｣蜈ｬ蠑丈ｸ取ｭ｣譁�龍霍昴�
%    \begin{macrocode}
    \dim_set:Nn \abovedisplayskip      { 12bp }
    \dim_set:Nn \belowdisplayskip      { 12bp }
    \dim_set:Nn \abovedisplayshortskip { 0bp  }
    \dim_set:Nn \belowdisplayshortskip { 12bp }
  }
%    \end{macrocode}
% \end{macro}
%    \begin{macrocode}
%&lt;/xdupgthesis&gt;
%&lt;*xduugthesis&gt;
%    \end{macrocode}
% \subsection{蜷手ｮｰ驛ｨ蛻�}
% \subsubsection{譛ｬ遘醍函}
% \begin{macro}{\backmatter,\@@_backmatter:}
% 謗堤沿蜷手ｮｰ驛ｨ蛻��
%    \begin{macrocode}
\RenewDocumentCommand { \backmatter } { } { }
\cs_new:Npn \@@_backmatter:
  {
%    \end{macrocode}
% \changes{v1.1.4.0}{2022/04/16}{荳ｺ閾ｴ隹｢遶�闃よ��｢伜｢槫刈髣ｴ霍掵
% 閾ｴ隹｢縲�
%    \begin{macrocode}
    \@@_n_chapter_head_toc:nn
      { \@@_lang_switch:nn { 閾ｴ隹｢            } { Acknowledgements } }
      { \@@_lang_switch:nn { 閾ｴ { \quad } 隹｢ } { Acknowledgements } }
    \group_begin:
      \dim_set:Nn \parindent { 2 \ccwd }
      \rmfamily \zihao { -4 }
      \file_if_exist_input:n { \l_@@_ack_tl }
    \group_end:
%    \end{macrocode}
% 蜿り�枚迪ｮ縲�
% \changes{v0.2.1.0}{2022/04/04}{蜿り�枚迪ｮ豺ｻ蜉�閾ｳ逶ｮ蠖扶
% \changes{v0.5.2.0}{2022/04/07}{菫ｮ豁｣蜿り�枚迪ｮ蛻苓｡ｨ蟄嶺ｽ灘ｭ怜捷}
% \changes{v1.3.1.0}{2022/04/21}{菫ｮ螟榊盾閠�枚迪ｮ蛻苓｡ｨ蟄嶺ｽ灘ｭ怜捷}
% \changes{v1.4.1.0}{2022/04/27}{菫ｮ螟甲ibtex莠ｧ逕溽噪螟壻ｽ吝盾閠�枚迪ｮ蛻苓｡ｨ遶�闃�}
% \changes{v2.2.2.0}{2022/06/24}{菫ｮ豁｣譛ｬ遘醍函豈穂ｸ夊ｮｾ隶｡蜿り�枚迪ｮ陦碁龍霍掵
% \changes{v2.2.3.0}{2022/06/24}{菫ｮ謾ｹ譛ｬ遘醍函豈穂ｸ夊ｮｾ隶｡蜿り�枚迪ｮ\bibtex{}蟄嶺ｽ灘ｭ怜捷隶ｾ鄂ｮ譁ｹ蠑殉
% \changes{v2.2.5.0}{2022/06/24}{菫ｮ謾ｹ譛ｬ遘醍函豈穂ｸ夊ｮｾ隶｡蜿り�枚迪ｮ譬�ｭｾ荳取枚迪ｮ蜀�ｮｹ逧�龍霍掵
% \changes{v2.6.1.0}{2022/06/25}{菫ｮ豁｣譛ｬ遘醍函豈穂ｸ夊ｮｾ隶｡蜿り�枚迪ｮ譁懈擒隨ｦ蜿ｷ蟄嶺ｽ党
%    \begin{macrocode}
    \cs_set:Npn \bibname { \@@_lang_switch:nn { 蜿り�枚迪ｮ } { Bibliography } }
    \@@_n_chapter_head_toc:n { \bibname }
    \group_begin:
      \tl_if_eq:NnTF \l_@@_bib_tool_tl { bibtex }
        {
          \dim_set:Nn \labelsep { 1ex }
          \bibliography { \l_@@_bib_file_clist }
        }
        { \printbibliography }
    \group_end:
%    \end{macrocode}
% 譛ｬ遘醍函豈穂ｸ夊ｮｾ隶｡髯�ｽ輔�
%    \begin{macrocode}
    \@@_appendix:
  }
%    \end{macrocode}
% \end{macro}
%    \begin{macrocode}
%&lt;/xduugthesis&gt;
%&lt;*xdupgthesis&gt;
%    \end{macrocode}
% \subsubsection{遐皮ｩｶ逕毳
% \begin{macro}{\RequirePackage,\newenvironment}
% \changes{v1.26.0.0}{2022/06/07}{菴懆�ｮ莉区�ｷ蠑殉
% 菴懆�ｮ莉区�ｷ蠑上�
%    \begin{macrocode}
\ctex_at_end_preamble:n
  {
%    \end{macrocode}
% 隶｡邂怜�陦ｨ蜥瑚｡ｨ譬ｼ郛ｩ霑幄ｷ晉ｦｻ縲�
%    \begin{macrocode}
      \dim_new:N \l_@@_bio_indent_dim
      \box_new:N \l_@@_bio_indent_box
      \hbox_set:Nn \l_@@_bio_indent_box { \rmfamily \zihao { -3 } \bfseries 1. \quad}
      \dim_set:Nn \l_@@_bio_indent_dim { \box_wd:N \l_@@_bio_indent_box }
%    \end{macrocode}
% 螳壻ｹ画蕗閧ｲ閭梧勹陦ｨ譬ｼ邇ｯ蠅��
%    \begin{macrocode}
    \bool_if:NF \l_@@_cust_edubg_bool
      {
        \RequirePackage { tabularray }
        \newenvironment { edubg }
          {
            \dim_set:Nn \parindent { 0pt }
            \begin { tblr }
              {
                colspec = { @{ \skip_horizontal:N \l_@@_bio_indent_dim } lX @{ } },
                rows    = { font = \zihao { -4 } \dim_set:Nn \baselineskip { 20pt } }
              }
          }
          {
            \end { tblr }
            \dim_set:Nn \parindent { 2 \ccwd }
          }
      }
%    \end{macrocode}
% 螳壻ｹ臥�皮ｩｶ謌先棡蛻苓｡ｨ縲�
%    \begin{macrocode}
    \bool_if:NF \l_@@_cust_resresult_bool
      {
        \RequirePackage { enumitem }
        \SetEnumitemKey { resresult }
          {
            label   = {[}\arabic*{]},
            left    = \l_@@_bio_indent_dim,
            align   = right,
            parsep  = 0pt,
            itemsep = 0pt,
            topsep  = 0pt
          }
        \newenvironment { resresult }
          { \begin { enumerate } [ resresult ] }
          { \end { enumerate } }
      }
  }
%    \end{macrocode}
% \end{macro}
% \changes{v2.7.0.0}{2022/06/26}{遐皮ｩｶ逕溷ｭｦ菴崎ｮｺ譁�髪謖∫ｧｻ髯､蜷手ｮｰ驛ｨ蛻�｡ｵ髱｢}
% \begin{macro}{\backmatter,\@@_backmatter:}
% 謗堤沿蜷手ｮｰ驛ｨ蛻��
%    \begin{macrocode}
\RenewDocumentCommand { \backmatter } { } { }
\cs_new:Npn \@@_backmatter:
  {
%    \end{macrocode}
% 遐皮ｩｶ逕溷ｭｦ菴崎ｮｺ譁�刋蠖輔�
%    \begin{macrocode}
    \@@_appendix:
%    \end{macrocode}
% \changes{v1.30.0.0}{2022/06/20}{諱｢螟崎恭譁��皮ｩｶ逕溷ｭｦ菴崎ｮｺ譁�錘隶ｰ荳莠御ｸ臥ｺｧ譬�｢伜多莉､}
% 諱｢螟崎恭譁��皮ｩｶ逕溷ｭｦ菴崎ｮｺ譁�錘隶ｰ荳莠御ｸ臥ｺｧ譬�｢伜多莉､縲�
%    \begin{macrocode}
    \@@_lang_switch:nn { }
      {
        \cs_set_eq:NN \chapter \@@_org_chapter:n
        \cs_set_eq:NN \section \@@_org_section:n
        \cs_set_eq:NN \subsection \@@_org_subsection:n
      }
%    \end{macrocode}
% \changes{v1.25.0.0}{2022/06/05}{遐皮ｩｶ逕溷ｭｦ菴崎ｮｺ譁�盾閠�枚迪ｮ}
% \changes{v2.2.2.0}{2022/06/24}{菫ｮ豁｣遐皮ｩｶ逕溷ｭｦ菴崎ｮｺ譁�盾閠�枚迪ｮ陦碁龍霍掵
% \changes{v2.2.3.0}{2022/06/24}{菫ｮ謾ｹ遐皮ｩｶ逕溷ｭｦ菴崎ｮｺ譁�盾閠�枚迪ｮ\bibtex{}蟄嶺ｽ灘ｭ怜捷隶ｾ鄂ｮ譁ｹ蠑殉
% \changes{v2.2.5.0}{2022/06/24}{菫ｮ謾ｹ遐皮ｩｶ逕溷ｭｦ菴崎ｮｺ譁�盾閠�枚迪ｮ譬�ｭｾ荳取枚迪ｮ蜀�ｮｹ逧�龍霍掵
% \changes{v2.6.1.0}{2022/06/25}{菫ｮ豁｣遐皮ｩｶ逕溷ｭｦ菴崎ｮｺ譁�盾閠�枚迪ｮ譁懈擒隨ｦ蜿ｷ蟄嶺ｽ党
% 蜿り�枚迪ｮ縲�
%    \begin{macrocode}
    \bool_if:NF \l_@@_rm_ref_bool
      {
        \cs_set:Npn \bibname { \@@_lang_switch:nn { 蜿り�枚迪ｮ } { Bibliography } }
        \@@_n_chapter_head_toc:n { \bibname }
        \@@_lang_switch:nn { } { \@@_add_zh_toc:nn { chapter } { 蜿り�枚迪ｮ } }
      }
    \group_begin:
      \tl_if_eq:NnTF \l_@@_bib_tool_tl { bibtex }
        {
          \bool_if:NTF \l_@@_rm_ref_bool
            { \nobibliography { \l_@@_bib_file_clist } }
            {
              \dim_set:Nn \labelsep { 1ex }
              \bibliography { \l_@@_bib_file_clist }
            }
        }
        {
          \bool_if:NF \l_@@_rm_ref_bool
            { \printbibliography }
        }
    \group_end:
%    \end{macrocode}
% \changes{v1.24.0.0}{2022/06/05}{遐皮ｩｶ逕溷ｭｦ菴崎ｮｺ譁��隹｢}
% 閾ｴ隹｢縲�
%    \begin{macrocode}
    \bool_if:NF \l_@@_rm_ack_bool
      {
        \@@_n_chapter_head_toc:nn
          { \@@_lang_switch:nn { 閾ｴ隹｢            } { Acknowledgements } }
          { \@@_lang_switch:nn { 閾ｴ { \quad } 隹｢ } { Acknowledgements } }
        \@@_lang_switch:nn { } { \@@_add_zh_toc:nn { chapter } { 閾ｴ隹｢ } }
        \group_begin:
          \dim_set:Nn \parindent { 2 \ccwd }
          \rmfamily \zihao { -4 }
          \dim_set:Nn \baselineskip { 20pt }
          \file_if_exist_input:n { \l_@@_ack_tl }
        \group_end:
      }
%    \end{macrocode}
% \changes{v1.26.0.0}{2022/06/07}{遐皮ｩｶ逕溷ｭｦ菴崎ｮｺ譁�ｽ懆�ｮ莉急
% \changes{v1.28.4.0}{2022/06/18}{遘ｻ髯､遐皮ｩｶ逕溷ｭｦ菴崎ｮｺ譁�岼蠖穂ｸｭ菴懆�ｮ莉倶ｺ御ｸ臥ｺｧ譬�｢�}
% 菴懆�ｮ莉九�
%    \begin{macrocode}
    \bool_if:NF \l_@@_rm_bio_bool
      {
        \@@_n_chapter_head_toc:n
          { \@@_lang_switch:nn { 菴懆�ｮ莉� } { Author~Biography } }
        \@@_lang_switch:nn { } { \@@_add_zh_toc:nn { chapter } { 菴懆�ｮ莉� } }
        \group_begin:
          \dim_set:Nn \parindent { 2 \ccwd }
          \rmfamily \zihao { -4 }
          \dim_set:Nn \baselineskip { 20pt }
%    \end{macrocode}
% \changes{v4.0.1.0}{2022/12/11}{蜈ｼ螳ｹ\pkgx{calc}蛹�}
% 驟咲ｽｮ菴懆�ｮ莉矩Κ蛻���｢俶�ｷ蠑上�
%    \begin{macrocode}
          \ctexset
            {
                section    / number = { \arabic { section } . },
                section    / format = { \rmfamily \zihao { -3 } \bfseries \raggedright },
                subsection / number = { \arabic { section } . \arabic { subsection } },
                subsection / format = { \rmfamily \zihao { 4 } \bfseries \raggedright },
                subsection / indent = { \l_@@_bio_indent_dim }
            }
%    \end{macrocode}
% \changes{v6.1.3.0}{2023/03/13}{菫ｮ螟咲�皮ｩｶ逕溷ｭｦ菴崎ｮｺ譁�ｽ懆�ｮ莉倶ｹｦ遲ｾ豺ｱ蠎ｦ}
% \changes{v4.4.3.0}{2023/02/09}{菫ｮ螟咲�皮ｩｶ逕溷ｭｦ菴崎ｮｺ譁�ｹｦ遲ｾ豺ｱ蠎ｦ}
% 菴懆�ｮ莉区枚莉ｶ縲�
%    \begin{macrocode}
          \addtocontents { toc } { \protect \setcounter { tocdepth } { 0 } }
          \setcounter { tocdepth } { 0 }
          \file_if_exist_input:n { \l_@@_bio_str }
          \addtocontents { toc } { \protect \setcounter { tocdepth } { 2 } }
          \setcounter { tocdepth } { 2 }
        \group_end:
      }
%    \end{macrocode}
% \changes{v6.1.4.0}{2023/03/13}{菫ｮ螟咲�皮ｩｶ逕溷ｭｦ菴崎ｮｺ譁�ｰｾ鬘ｵ郛ｺ螟ｱ}
%    \begin{macrocode}
    \cleardoublepage
  }
%    \end{macrocode}
% \end{macro}
%    \begin{macrocode}
%&lt;/xdupgthesis&gt;
%&lt;*thesis&gt;
%    \end{macrocode}
% \subsection{蜑崎ｨ縲∵ｭ｣譁�柱蜷手ｮｰ驛ｨ蛻�}
% \changes{v4.0.0.0}{2022/12/11}{譛ｬ遘醍函豈穂ｸ夊ｮｾ隶｡蜥檎�皮ｩｶ逕溷ｭｦ菴崎ｮｺ譁�ｷｻ蜉�蜑崎ｨ縲∵ｭ｣譁�柱蜷手ｮｰ驛ｨ蛻�}
% 譛ｬ遘醍函豈穂ｸ夊ｮｾ隶｡蜥檎�皮ｩｶ逕溷ｭｦ菴崎ｮｺ譁�ｷｻ蜉�蜑崎ｨ縲∵ｭ｣譁�柱蜷手ｮｰ驛ｨ蛻��
%    \begin{macrocode}
\ctex_after_end_preamble:n { \@@_frontmatter: \@@_mainmatter: }
\AtEndDocument             { \@@_backmatter:                  }
%    \end{macrocode}
%    \begin{macrocode}
%&lt;/thesis&gt;
%&lt;*xduugtp&gt;
%    \end{macrocode}
% \changes{v4.1.0.0}{2022/12/31}{蠅槫刈譛ｬ遘醍函豈穂ｸ夊ｮｾ隶｡蠑鬚俶冠蜻笠
% \subsection{譛ｬ遘醍函豈穂ｸ夊ｮｾ隶｡蠑鬚俶冠蜻笠
% \begin{macro}{\tcbset}
% 閾ｪ螳壻ｹ臥ｺｿ譯��ｷ蠑上�
%    \begin{macrocode}
\PassOptionsToPackage { breakable } { tcolorbox }
\RequirePackage       { tcolorbox }
\dim_new:N \l_@@_box_margin_dim
\dim_set:Nn \l_@@_box_margin_dim { 5pt }
\dim_new:N \l_@@_box_rule_dim
\dim_set:Nn \l_@@_box_rule_dim { 0.5pt }
\tcbset
  {
    standard~jigsaw,
    sharp~corners    = all,
    colframe         = black,
    opacityback      = 0,
    boxsep           = 0pt,
    boxrule          = \l_@@_box_rule_dim,
    top              = \l_@@_box_margin_dim,
    bottom           = \l_@@_box_margin_dim,
    left             = \l_@@_box_margin_dim,
    right            = \l_@@_box_margin_dim,
    beforeafter~skip = 0pt,
    before~upper     =
      {
        \dim_set:Nn \parindent    { 2em  }
        \dim_set:Nn \baselineskip { 20pt }
      }
  }
\tcbset
  {
    tpboxi/.style =
      {
        breakable        = true,
        height~fixed~for = first~and~middle
      },
    tpboxii/.style =
      {
        breakable        = true,
        height~fixed~for = all,
        height~fill      = maximum
      },
    tpboxiii/.style =
      {
        height           = .5\textheight + .5\l_@@_box_rule_dim,
        space~to~upper   = true,
        lower~separated  = false,
        halign~lower     = flush~right
      }
  }
%    \end{macrocode}
% \end{macro}
% \begin{macro}{tpbox}
% 閾ｪ螳壻ｹ噂envx{tpbox}邇ｯ蠅�ｼ御ｾｿ莠主ｮ樒鴫逕ｨ謌ｷ豁｣譁�ｾ灘�荳ｺ遨ｺ莠ｦ蜿ｯ郛冶ｯ代�
%    \begin{macrocode}
\RequirePackage { graphicx }
\int_new:N \l_@@_sign_no_int
\int_set:Nn \l_@@_sign_no_int { 1 }
\NewDocumentEnvironment { tpbox } { oo }
  { \IfNoValueF { #1 } { \begin { tcolorbox } [ #1 ] } }
  {
    \IfNoValueF { #1 }
      {
        \IfNoValueF { #2 }
          {
            \tcblower
            遲ｾ蜷�
            \clist_if_empty:NTF \l_@@_sign_clist
              { \skip_horizontal:n { 6em } \hbox:n { } }
              {
                \skip_horizontal:n { 1em }
                \includegraphics [ width = 10em, height = 25pt, keepaspectratio ]
                  {
                    \str_if_eq:nnTF { #2 } { 謖�ｯｼ謨吝ｸ域э隗� }
                      { \clist_item:Nn \l_@@_sign_clist { 1 } }
                      { \clist_item:Nn \l_@@_sign_clist { 2 } }
                  }
              }
            \\
            \clist_if_empty:NTF \l_@@_date_clist
              { \@@_zh_today: }
              {
                \str_if_eq:nnTF { #2 } { 謖�ｯｼ謨吝ｸ域э隗� }
                  { \clist_item:Nn \l_@@_zh_date_clist { 1 } }
                  { \clist_item:Nn \l_@@_zh_date_clist { 2 } }
              }
          }
        \end { tcolorbox }
      }
  }
%    \end{macrocode}
% \end{macro}
% \begin{macro}{\@@_bib:}
%    \begin{macrocode}
\cs_new:Npn \@@_bib:
  {
    \cs_set:Npn \bibname { 蜿り�枚迪ｮ }
    \subsection* { \bibname }
    \group_begin:
      \tl_if_eq:NnTF \l_@@_bib_tool_tl { bibtex }
        {
          \dim_set:Nn \labelsep { 1ex }
          \bibliography { \l_@@_bib_file_clist }
        }
        { \printbibliography }
    \group_end:
  }
%    \end{macrocode}
% \end{macro}
% \begin{macro}{\section}
% 驥榊ｮ壻ｹ噂tnx{section}蜻ｽ莉､縲�
%    \begin{macrocode}
\cs_new_eq:NN \@@_org_sec:n \section
\RenewDocumentCommand \section { m }
  {
    \str_case:nnTF { #1 }
      {
        { 隶ｺ譁�錐遘ｰ蜿企｡ｹ逶ｮ譚･貅� }
          {
            \end   { tpbox }
            \begin { tpbox } [tpboxi]
          }
        { 遐皮ｩｶ逶ｮ逧�柱諢丈ｹ� }
          {
            \end   { tpbox }
            \skip_vertical:n { -\l_@@_box_rule_dim }
            \skip_vertical:n { \z@skip }
            \begin { tpbox } [ tpboxii ]
          }
        { 蝗ｽ蜀�､也�皮ｩｶ邇ｰ迥ｶ蜥悟書螻戊ｶ句漢 }
          {
            \end   { tpbox }
            \begin { tpbox } [ tpboxii ]
          }
        { 荳ｻ隕∫�皮ｩｶ蜀�ｮｹ縲∬ｦ∬ｧ｣蜀ｳ逧�琉鬚伜所譛ｬ譁�噪蛻晄ｭ･譁ｹ譯� }
          {
            \@@_bib:
            \end   { tpbox }
            \begin { tpbox } [ tpboxii ]
          }
        { 蟾･菴懃噪荳ｻ隕�亳谿ｵ縲∬ｿ帛ｺｦ蜥悟ｮ梧�譌ｶ髣ｴ }
          {
            \end   { tpbox }
            \begin { tpbox } [ tpboxi ]
          }
        { 蟾ｲ霑幄｡檎噪蜑肴悄蜃�､�ｷ･菴� }
          {
            \end   { tpbox }
            \skip_vertical:n { -\l_@@_box_rule_dim }
            \skip_vertical:n { \z@skip }
            \begin { tpbox } [ tpboxii ]
          }
        { 謖�ｯｼ謨吝ｸ域э隗� }
          {
            \end   { tpbox }
            \begin { tpbox } [ tpboxiii ] [ 謖�ｯｼ謨吝ｸ域э隗� ]
          }
        { 蟄ｦ髯｢螳｡譬ｸ諢剰ｧ� }
          {
            \end   { tpbox }
            \skip_vertical:n { -\l_@@_box_rule_dim }
            \skip_vertical:n { \z@skip }
            \begin { tpbox } [ tpboxiii ] [ 蟄ｦ髯｢螳｡譬ｸ諢剰ｧ� ]
          }
      }
      { \@@_org_sec:n { #1 } }
      { }
  }
%    \end{macrocode}
% \end{macro}
% \begin{macro}{\pagestyle}
% 遘ｻ髯､鬘ｵ遐√�
%    \begin{macrocode}
\pagestyle { empty }
%    \end{macrocode}
% \end{macro}
% \begin{macro}{\ctexset}
% 隶ｾ鄂ｮ譬�｢俶�ｷ蠑上�
%    \begin{macrocode}
\ctexset
  {
    section       / name       = { ,縲�   },
    subsection    / name       = { ��,�� },
    subsubsection / name       = { ��,�� },
    section       / number     = { \chinese { section       } },
    subsection    / number     = { \chinese { subsection    } },
    subsubsection / number     = { \arabic  { subsubsection } },
    section       / format     = { \raggedright \zihao { -4 } },
    subsection    / format     = { \raggedright \zihao { -4 } },
    subsubsection / format     = { \raggedright \zihao { -4 } },
    section       / aftername  = { },
    subsection    / aftername  = { },
    subsubsection / aftername  = { },
    section       / beforeskip = { 0pt },
    subsection    / beforeskip = { 8pt },
    subsubsection / beforeskip = { 8pt },
    section       / afterskip  = { 0pt },
    subsection    / afterskip  = { 0pt },
    subsubsection / afterskip  = { 0pt },
    section       / indent     = { 0em },
    subsection    / indent     = { 0em },
    subsubsection / indent     = { 2em },
  }
%    \end{macrocode}
% \end{macro}
% \begin{macro}{\@@_uline:n,\@@_uline:nn}
% 荳句�郤ｿ縲�
%    \begin{macrocode}
\RequirePackage { xeCJKfntef }
\cs_new:Npn \@@_uline:n #1
  { \CJKunderline [ thickness = 1pt ] { #1 } }
\cs_new:Npn \@@_uline:nn #1#2
  { \CJKunderline [ thickness = 1pt ] { \hbox_to_wd:nn { #1 } { \hfil #2 \hfil } } }
%    \end{macrocode}
% \end{macro}
% \begin{variable}{\l_@@_cover_author_info_dim}
% 闔ｷ蜿門ｰ�擇菴懆�ｿ｡諱ｯ譛螟ｧ螳ｽ蠎ｦ縲�
%    \begin{macrocode}
\dim_new:N \l_@@_cover_author_info_dim
\dim_set:Nn \l_@@_cover_author_info_dim { 5em }
\ctex_at_end_preamble:n
  {
    \rmfamily \zihao { -3 }
    \@@_str_max_dim:Nn \l_@@_cover_author_info_dim { \l_@@_author_str     }
    \@@_str_max_dim:Nn \l_@@_cover_author_info_dim { \l_@@_major_str      }
    \@@_str_max_dim:Nn \l_@@_cover_author_info_dim { \l_@@_student_id_str }
    \@@_str_max_dim:Nn \l_@@_cover_author_info_dim { \l_@@_supv_str       }
    \dim_add:Nn \l_@@_cover_author_info_dim { 2em }
  }
%    \end{macrocode}
% \end{variable}
% \begin{macro}{\@@_cover_author_info:nn}
% 扈伜宛蟆�擇菴懆�ｿ｡諱ｯ縲�
%    \begin{macrocode}
\cs_new:Npn \@@_cover_author_info:nn #1#2
  {
    \vbox_to_ht:nn { 31pt }
      {
        \mode_leave_vertical:
        \hfil
        \hbox:n
          {
            \rmfamily \zihao { -3 }
            \hbox_to_wd:nn { 4em } { #1 }
            \skip_horizontal:n { 0.5em }
            \@@_uline:nn { \l_@@_cover_author_info_dim } { #2 }
          }
        \hfil
      }
  }
%    \end{macrocode}
% \end{macro}
% \begin{variable}{\l_@@_pure_dept_str}
% 遘ｻ髯､譛ｫ蟆ｾ逧�ｭｦ髯｢莠悟ｭ励�
%    \begin{macrocode}
\cs_generate_variant:Nn \str_if_eq:nnTF { xnTF }
\ctex_at_end_preamble:n
  {
    \str_new:N \l_@@_pure_dept_str
    \str_if_eq:xnTF { \str_range:Nnn \l_@@_dept_str { -2 } { -1 } } { 蟄ｦ髯｢ }
      { \str_set:Nx \l_@@_pure_dept_str { \str_range:Nnn \l_@@_dept_str { 1 } { -3 } } }
      { \str_set:NV \l_@@_pure_dept_str \l_@@_dept_str }
  }
%    \end{macrocode}
% \end{variable}
% \begin{macro}{\@@_zh_today:}
% 莉頑律蟷ｴ譛域律縲�
%    \begin{macrocode}
\cs_new:Npn \@@_zh_today:
  {
    \int_use:N \c_sys_year_int  蟷ｴ
    \int_use:N \c_sys_month_int 譛�
    \int_use:N \c_sys_day_int   譌･
  }
%    \end{macrocode}
% \end{macro}
% \begin{macro}{\@@_split_submit_date:N}
% 諡��謠蝉ｺ､譌･譛滉ｸｺ蟷ｴ縲∵怦蜥梧律縲�
%    \begin{macrocode}
\seq_new:N \l_@@_submit_date_seq
\cs_new:Npn \@@_split_submit_date:N #1
  {
    \seq_set_split:NnV \l_@@_submit_date_seq { - } \l_@@_submit_date_str
    \clist_set_from_seq:NN #1 \l_@@_submit_date_seq
  }
%    \end{macrocode}
% \end{macro}
% \begin{macro}{\@@_zh_submit_date:}
% \changes{v1.17.0.0}{2022/05/28}{荳ｭ譁�署莠､譌･譛毳
% 荳ｭ譁�署莠､譌･譛溘�
%    \begin{macrocode}
\clist_new:N \l_@@_submit_date_clist
\cs_new:Npn \@@_zh_submit_date:
  {
    \str_if_empty:NTF \l_@@_submit_date_str
      { \@@_zh_today: }
      {
        \@@_split_submit_date:N \l_@@_submit_date_clist
        \clist_item:Nn \l_@@_submit_date_clist { 1 } 蟷ｴ
        \clist_item:Nn \l_@@_submit_date_clist { 2 } 譛�
        \clist_item:Nn \l_@@_submit_date_clist { 3 } 譌･
      }
  }
%    \end{macrocode}
% \end{macro}
% \begin{variable}
%   {
%     \l_@@_zh_date_clist,
%     \l_@@_zh_date_one_clist,
%     \l_@@_date_seq
%   }
% 譬ｼ蠑丞喧蠑鬚倡ｭｾ蜷肴律譛溘�
%    \begin{macrocode}
\clist_new:N \l_@@_zh_date_clist
\clist_new:N \l_@@_zh_date_one_clist
\seq_new:N \l_@@_date_seq
\ctex_at_end_preamble:n
  {
    \clist_map_inline:Nn \l_@@_date_clist
      {
        \seq_set_split:Nnn \l_@@_date_seq { - } { #1 }
        \clist_set_from_seq:NN \l_@@_zh_date_one_clist \l_@@_date_seq
        \clist_put_right:Nx \l_@@_zh_date_clist
          {
            \clist_item:Nn \l_@@_zh_date_one_clist { 1 } 蟷ｴ
            \clist_item:Nn \l_@@_zh_date_one_clist { 2 } 譛�
            \clist_item:Nn \l_@@_zh_date_one_clist { 3 } 譌･
          }
      }
  }
%    \end{macrocode}
% \end{variable}
% \begin{macro}{\@@_cover:,\ctex_after_end_preamble:n}
% 扈伜宛蟆�擇縲�
%    \begin{macrocode}
\cs_new:Npn \@@_cover:
  {
    \vbox:n { }
    \skip_vertical:n { -5pt }
    \vbox_to_ht:nn { 85pt }
      {
        \rmfamily \zihao { -2 } \centering
        隘ｿ螳臥鳩蟄千ｧ第橿螟ｧ蟄ｦ \@@_uline:n { \l_@@_pure_dept_str } 蟄ｦ髯｢
      }
    \vbox_to_ht:nn { 32.5pt }
      {
        \sffamily \zihao { 2 } \centering
        譛ｬ遘醍函豈穂ｸ夊ｮｺ譁�ｼ郁ｮｾ隶｡�牙ｼ鬚俶冠蜻�
      }
    \vbox_to_ht:nn { 171pt }
      {
        \CJKfamily+ { sf } \zihao { -3 } \centering
        ��\l_@@_class_str{} 螻奇ｼ�
      }
    \@@_cover_author_info:nn { 蟄ｦ逕溷ｧ灘錐 } { \l_@@_author_str     }
    \@@_cover_author_info:nn { 荳謎ｸ�     } { \l_@@_major_str      }
    \@@_cover_author_info:nn { 蟄ｦ蜿ｷ     } { \l_@@_student_id_str }
    \@@_cover_author_info:nn { 謖�ｯｼ謨吝ｸ� } { \l_@@_supv_str       }
    \skip_vertical:n { 92pt }
    \vbox_to_ht:nn { 81.5pt }
      {
        \rmfamily \zihao { 4 } \centering
        \@@_zh_submit_date:
      }
    \vbox:n
      {
        \rmfamily \zihao { 5 } \centering
        �域悽陦ｨ荳蠑丈ｸ我ｻｽ�悟ｭｦ逕溘∵欠蟇ｼ謨吝ｸ医∝ｭｦ髯｢蜷�ｸ莉ｽ��
      }
  }
\ctex_after_end_preamble:n { \@@_cover: \clearpage }
%    \end{macrocode}
% \end{macro}
% \begin{macro}{\ctex_after_end_preamble:n,\AtEndDocument}
% 螳樒鴫逕ｨ謌ｷ豁｣譁�ｸｺ遨ｺ蜿ｯ郛冶ｯ代�
%    \begin{macrocode}
\ctex_after_end_preamble:n { \begin { tpbox } }
\AtEndDocument             { \end   { tpbox } }
%    \end{macrocode}
% \end{macro}
%    \begin{macrocode}
%&lt;/xduugtp&gt;
%    \end{macrocode}
%    \begin{macrocode}
%&lt;@@=&gt;
%    \end{macrocode}
% \end{implementation}
% \Finale
</pre></body></html>