From 3049e7662346cd99dbe3e384fdbf562cfaee08e3 Mon Sep 17 00:00:00 2001 From: SwitWu <2401336502@qq.com> Date: Wed, 29 May 2024 21:55:58 +0800 Subject: [PATCH] delete doc --- doc/back/package.tex | 22 - doc/back/template-points.tex | 695 ---------- doc/back/todo.tex | 113 -- doc/body/cover.tex | 32 - doc/body/introduction.tex | 17 - doc/figures/whu-logo.pdf | Bin 16692 -> 0 bytes doc/whu-thesis-doc-setup.tex | 75 -- doc/whu-thesis-doc.tex | 62 - doc/xdyydoc.cls | 1156 ----------------- ...3\345\215\217\350\256\256\344\271\246.doc" | Bin 28672 -> 13824 bytes 10 files changed, 2172 deletions(-) delete mode 100644 doc/back/package.tex delete mode 100644 doc/back/template-points.tex delete mode 100644 doc/back/todo.tex delete mode 100644 doc/body/cover.tex delete mode 100644 doc/body/introduction.tex delete mode 100644 doc/figures/whu-logo.pdf delete mode 100644 doc/whu-thesis-doc-setup.tex delete mode 100644 doc/whu-thesis-doc.tex delete mode 100644 doc/xdyydoc.cls diff --git a/doc/back/package.tex b/doc/back/package.tex deleted file mode 100644 index 4343258..0000000 --- a/doc/back/package.tex +++ /dev/null @@ -1,22 +0,0 @@ -% !TeX root = ../whu-thesis-doc.tex - -\section{宏包依赖} - -\begin{itemize} - \item \cls{ctexbook}:中文书籍文档类 - \item \pkg{etoolbox}:命令环境补丁 - \item \pkg{geometry}:页面设置 - \item \pkg{filehook}:给宏包打补丁 - \item \pkg{fontspec}:字体处理 - \item \pkg{xeCJK}、\pkg{xeCJKfntef}:中文处理 - \item \pkg{fancyhdr}:页眉页脚 - \item \pkg{enumitem}:列表环境设置 - \item \pkg{tikzpagenodes}:页面定位 - \item \pkg{graphicx}:插图 - \item \pkg{varwidth}:“弹性版” \env{minipage} 环境 - \item \pkg{tocloft}:目录格式修改 - \item \pkg{footmisc}:脚注处理 - \item \pkg{tabularray}:表格 - \item \pkg{caption}:图表格式 - \item \pkg{amsthm}、\pkg{thmtools}:定理类环境 -\end{itemize} \ No newline at end of file diff --git a/doc/back/template-points.tex b/doc/back/template-points.tex deleted file mode 100644 index 4e54c4d..0000000 --- a/doc/back/template-points.tex +++ /dev/null @@ -1,695 +0,0 @@ -% !TeX root = ../whu-thesis-doc.tex - - -\section{模版开发要点} - -本模版开发主要参考的文件来自: - -\begin{itemize} - \item \href{http://210.42.121.231/bysj/}{武汉大学毕业论文(设计)智能管理系统} - \item \href{https://gs.whu.edu.cn/info/1022/3235.htm}{武汉大学硕士学位论文印制规定} - \item \href{https://gs.whu.edu.cn/info/1022/3231.htm}{武汉大学博士学位论文撰写及印制规格的规定} -\end{itemize} - -此节将整理规范文件中的格式要点,主要目的: - -\begin{enumerate} - \item 方便开发者在开发 \cls{whu-thesis} 过程中不遗漏,有序地进行开发; - \item 用户可以通过此节内容核查格式; - \item 若模版开发后规范进行了修改,可以方便地与之前的版本进行对比更新。 -\end{enumerate} - - -% \subsection{开题报告} - -% 《武汉大学本科生毕业论文(设计)工作管理办法(修订)》中提到: - -% \begin{description} -% \item[第十四条] 学生根据指导教师拟定的任务书,在查阅相关资料后遵照教师要求填 写《武汉大学本科生毕业论文(设计)开题报告》。开题工作须在下发任务书两周内 完成。学院(系)可根据情况采取多种形式组织开题报告会。 -% \end{description} - -% 要点: -% \begin{itemize} -% \item 《武汉大学本科生毕业论文(设计)开题报告》 -% \end{itemize} - - -\subsection{本科} - -以下来自《武汉大学本科生毕业论文(设计)书写印制规范》(下面简称本科规范) - - -\subsubsection{论文题目} - -\begin{reference} - 论文题目应以最恰当、最简明的词语准确概括整个论文的核心内容,避免使用不常见的缩略词、缩写字。中文题目一般不宜超过 24 个字,必要时可增加副标题。外文题目一般不宜超过 12 个实词。 -\end{reference} - -\begin{points} - \item 中文题目不超过 24 个字 - \item 可以加副标题,但没有副标题的格式要求 - \item 外文(不止英文)题目不超过 12 个 \emph{实词} -\end{points} - - -\subsubsection{摘要和关键词} - -\begin{reference} - 摘要内容应概括地反映出本论文的主要内容,主要说明本论文的研究目的、内容、方法、成果和结论。要突出本论文的创造性成果或新见解,不要与引言相混淆。语言力求精练、准确。在摘要的下方另起一行,注明本文的关键词(3—5 个)。摘要与关键词应在同一页。英文摘要内容与中文摘要相同。最下方一行为英文关键词(Keywords 3—5 个)。 - - …… - - 摘要正文下空一行顶格打印“关键词”款项,每个关键词之间用“;”分开,最 后一个关键词不打标点符号,英文摘要应另起一页。具体示例见中、英文摘要示例。 -\end{reference} - -\begin{points} - \item 中文关键词在摘要下方另起一行,但是英文关键词是最下方一行,两者不太统一?但是本科规范中的示例两者看上去效果是相同的。黄正华老师的模版的处理是采取两者都是最下方一行。想的解决办法是开发键值(并且中英文单独控制,但也可以统一控制,比如 \opt{abstract-keywords-position}、\opt{abstract-keywords-position-zh}、\opt{abstract-keywords-position-en} ): - \begin{itemize} - \item \opt{newline}:关键词在摘要换行后 - \item \opt{newblankline}:关键词在摘要换行并空一行后 - \item \opt{bottom}:关键词置于页底(\tn{vfill}) - \end{itemize} - \item 关键词效果从示例看不出来(因为没有换行)。黄正华老师模版是正文效果。计划设计键值实现正文和悬挂两种效果。 - \item 英文摘要另起一页 - \item 中文关键词用的是 \emph{西文的分号} 分割 -\end{points} - - -\subsubsection{目录} - -\begin{reference} - 论文目录是论文的提纲,也是论文各章节组成部分的小标题。目录应按照章、节、条三级标题编写,采用阿拉伯数字分级编号,要求标题层次清晰。目录中的标题要与正文中的标题一致。 - - …… - - 目录应包括章、节、条三级标题,目录和正文中的标题题序统一按照“1……、 1.1……、1.1.1……”的格式编写,目录中各章节题序中的阿拉伯数字用 Time New Roman 体。 -\end{reference} - -\begin{points} - \item 目录是三级 - \item 目录标题和正文标题相同:也就是去掉 \tn{section} 的可选参数(打个补丁或者重定义) - \item “结论”不编号? -\end{points} - - -\subsubsection{正文} - -\begin{reference} - 正文各章节应拟标题,每章结束后应另起一页。标题要简明扼要,不应使用标点符号。各章、节、条的层次按照“1……、1.1……、1.1.1……”标识,条以下具体款项的层次依次按照“1.1.1.1”、“(1)”、“\circledtext{1}”标识。 -\end{reference} - -\begin{points} - \item \tn{chapter} 后另起一页 - \item 标题中不能有标点符号(能否检测来给报错?) - \item \tn{subsubsection} 要编号 - \item \tn{enumerate} 的第一层和第二层改为括号和带圈数字 -\end{points} - - -\subsubsection{中外文参考文献} - -\begin{reference} - 毕业论文的撰写应本着严谨求实的科学态度,凡有引用他人成果之处,均应按论文中所引用的顺序列于文末,并且所有参考文献必须在正文中有引用标注。参考文献 的著录均应符合国家有关标准(按照 GB7714—2005《文后参考文献著录格式》执行)。 一篇论著在论文中多处引用时,在参考文献中只应出现一次,序号以第一次出现的位置为准。 -\end{reference} - -\begin{points} - \item 本科参考文献的格式就是国标+顺序编码制 -\end{points} - - - -\subsubsection{名词术语} - -\begin{reference} - 全文应统一科技名词术语、行业通用术语以及设备、元器件的名称。有国家标准 的应采用标准中规定的术语,没有国家标准的应使用行业通用术语或名称。特定含义 的名词术语或新名词应加以说明或注释。 -\end{reference} - -\begin{points} - \item 增加“符号表”(名称可以由用户设置) -\end{points} - - -\subsubsection{字体和字号设置} - -\begin{longtblr}[% - caption = {本科模版:除封面和学术声明外的字体和字号设置} -]{% - vlines, hlines, - width = \textwidth, - colspec = {X[1,l]X[1,c]}, - rows = {m} -} - 论文题目 & 黑体2号\\ - 各章标题 & 黑体小2号\\ - 各节的一级标题 & 黑体4号\\ - 各节的二级标题 & 黑体小4号\\ - 各节的三级标题 & 黑体小4号\\ - 款项 & 黑体小4号\\ - 正文 & 宋体小4号\\ - 中文摘要、结论、参考文献标题 & 黑体小2号\\ - 中文摘要、结论、参考文献内容 & 宋体小4号\\ - 英文摘要标题 & Time New Roman 大写粗体小2号\\ - 英文摘要内容 & Time New Roman 体小4号\\ - 中文关键词标题 & 黑体小4号\\ - 中文关键词 & 宋体小4号\\ - 英文关键词标题 & Time New Roman 粗体小4号\\ - 英文关键词 & Time New Roman 小4号\\ - 目录标题 & 黑体小2号\\ - 目录内容中章的标题 - (含结论、参考文献、致谢、附录标题) & 黑体4号\\ - 目录中其他内容 & 宋体小4号\\ - 论文页码 & 页面底端居中、阿拉伯数字(Time New Roman 5 号) 连续编码 \\ - 页眉与页脚 & 宋体5号居中\\ -\end{longtblr} - -\begin{longtblr}[% - caption = {本科模版:封面的字体和字号设置} -]{% - vlines, hlines, - width = \textwidth, - colspec = {X[1,l]X[1,c]}, - rows = {m} -} - 学号 & 黑体5号\\ - 密级 & 黑体5号\\ - 武汉大学本科生毕业论文(设计) & 宋体1号居中\\ - 论文题目 & 黑体2号居中\\ - 院(系)名称 & 宋体小3号\\ - 专业名称 & 宋体小3号\\ - 学生姓名 & 宋体小3号\\ - 指导教师 & 宋体小3号\\ - 年月 & 宋体3号\\ -\end{longtblr} - -\begin{longtblr}[% - caption = {本科模版:学术声明的字体和字号设置} -]{% - vlines, hlines, - width = \textwidth, - colspec = {X[1,l]X[1,c]}, - rows = {m} -} - 郑重声明 & 宋体粗体2号居中\\ - 声明内容 & 宋体4号\\ -\end{longtblr} - - -\subsubsection{页面尺寸} - -\begin{reference} - 页边距标准:上边距为 25mm,下边距为 20mm,左边距为 30mm,右边距为 30mm。 -\end{reference} - -参考黄老师模版设置: -\begin{latexcode} - \RequirePackage[top=2.7truecm,bottom=2.2truecm,left=3truecm,right=3truecm,includefoot,xetex]{geometry} -\end{latexcode} - - -\subsubsection{行距和行间距} - -\begin{reference} - 段前、段后及行间距:章标题的段前为 0.8 行,段后为 0.5 行;节标题段前为 0.5行,段后 0.5 行; 标题以外的文字行距为“固定值”23 磅,字符间距为“标准”。 -\end{reference} - -\begin{points} - \item \tn{chapter}:章标题的段前为 0.8 行,段后为 0.5 行 - \item \tn{section}:节标题段前为 0.5行,段后 0.5 行 - \item 正文行距:“固定值”23 磅 -\end{points} - - -\subsubsection{公式} - -\begin{reference} - 公式应另起一行居中,统一用公式编辑器编辑。公式与编号之间不加虚线。公式 较长时应在“=”前转行或在“+、-、×、÷”运算符号处转行,等号或运算符号 应在转行后的行首,公式的编号用圆括号括起来放在公式右边行末。 - - 公式序号按章编排,如第 3 章第 2 个公式序号为“(3.2)”,附录中的第 n 个公式 用序号“(An)”表示。文中引用公式时,采用“见公式(3.2)”表述。具体见公式图 表示例。 -\end{reference} - -\begin{points} - \item 正文公式编号形如“(3.2)” - \item 附录公式编号形如“(An)”,A 表示附录的计数器的大写英文形式 -\end{points} - - -\subsubsection{表格} - -\begin{reference} - 每一个表格都应有表标题和表序号。表序号一般按章编排,如第 2 章第 4 个表的 序号为“表 2.4”。表标题和表序之间应空一格,表标题中不能使用标点符号,表标题 和表序号居中置于表上方(黑体小 4 号,数字和字母为 Time New Roman 粗体小 4 号)。 引用表格应在表标题的右上角加引文序号。 - - 表与表标题、表序号为一个整体,不得拆开排版为两页。当页空白不够排版该表整体时,可将其后文字部分提前,将表移至次页最前面。 - - 统计表一律采用开口表格的标准格式,具体见公式图表示例。 -\end{reference} - -\begin{points} - \item 表 label 形如 |表2.4 字号设置|,表序和标题之间采用空格 - \item 表标题字号:黑体小 4 号,数字和字母为 Time New Roman 粗体小 4 号(计划用 \tn{newfontfamily} 单独给英文配置一个字体比如 \tn{whuboldtnr},参考知乎 \url{https://www.zhihu.com/question/463975644} ) - \item 引用表格应在表标题的右上角加引文序号?(暂时不懂这个的含义) - \item “表与表标题、表序号为一个整体,不得拆开排版为两页。”暂时理解为表标题和内容不能分成两页,即“表 xxx”在一页,内容在下一页。但是浮动体应该不会出现这种情况。个人觉得不是说不能长表格 - \item “当页空白不够排版该表整体时,可将其后文字部分提前,将表移至次页最前面。”这不就是浮动体的 \opt{t} 选项吗?(doge) - \item 统计表有何不同?暂时不懂 -\end{points} - - -\subsubsection{图} - -\begin{reference} - 每幅插图应有图标题和图序号。图序号按章编排,如第 1 章第 4 幅插图序号为“图1.4”。图序号之后空一格写图标题,图序号和图标题居中置于图下方,用小 4 号宋体。 引用图应在图标题右上角标注引文序号。图中若有分图,分图号用(a)、(b)等置于 分图下、图标题之上。 - - 图中的各部分中文或数字标示应置于图标题之上(有分图者置于分图序号之上)。 - - 图与图标题、图序号为一个整体,不得拆开排版为两页。当页空白不够排版该图 整体时,可将其后文字部分提前,将图移至次页最前面。 -\end{reference} - -\begin{points} - \item 图 label 形如 |图2.4 xxx|,图序和标题之间采用空格 - \item 图标题字号:小 4 号宋体 - \item 子图的设置:序号为 |(a)| - \item “图与图标题、图序号为一个整体,不得拆开排版为两页。当页空白不够排版该图 整体时,可将其后文字部分提前,将图移至次页最前面。”:直接浮动体的 \opt{ht} 完事 -\end{points} - - -\subsubsection{脚注} - -\begin{reference} - 注释是对论文中特定名词或新名词的注解。注释可用页末注或篇末注的一种。选择页末注的应在注释与正文之间加细线分隔,线宽度为 1 磅,线的长度不应超过纸张的三分之一宽度。同一页类列出多个注释的,应根据注释的先后顺序编排序号。字体为宋体 5 号,注释序号以“\circledtext{1}、\circledtext{2}”等数字形式标示在被注释词条的右上角。页末或 篇末注释条目的序号应按照“\circledtext{1}、\circledtext{2}”等数字形式与被注释词条保持一致。 -\end{reference} - -\begin{points} - \item 脚注的线粗细为 1pt - \item 长度不超过纸张的三分之一宽度 - \item 脚注字体为 5 号宋体 - \item 形式为带圈数字 -\end{points} - - -\subsubsection{附录} - -\begin{reference} - 论文附录依次用大写字母“附录 A、附录 B、附录 C……”表示,附录内的分级 序号可采用“附 A1、附 A1.1、附 A1.1.1”等表示,图、表、公式均依此类推为“图 A1、表 A1、式(A1)”等。 -\end{reference} - -\begin{points} - \item section 层级及以下三个层级为阿拉伯数字 - \item 图表层级和 section 一样(那如果只有 subsection 没有 subsubsection,只显示 1.1) - \item 公式编号改为 A1 -\end{points} - - -\subsubsection{装订和印刷} - -\begin{reference} - 封面 $\to$ 学术声明 $\to$ 中文摘要 $\to$ 英文摘要 $\to$ 目录 $\to$ 正文 $\to$ 参考文献 $\to$ 致谢 $\to$ 附录 -\end{reference} - - - -\subsection{硕士} - -以下来自《武汉大学硕士学位论文印制规定》 - -\subsubsection{装订顺序} - -\begin{choices}[label = \arabic*.] - \item 封面 - \item 论文英文题目 - \item 论文原创性声明 - \item 中文摘要 - \item 英文摘要 - \item 目录 - \item 引言(绪论) - \item 正文 - \item 中外文参考文献 - \item 附录 - \item 致谢或后记 -\end{choices} - - -\subsubsection{目录} - -\begin{reference} - 目录是论文的提纲,也是论文组成部分的小标题。排列顺序是:1.中文摘要;2.英文摘要;3.引言(绪论);4.正文章节;5.参考文献;6.致谢或后记。 -\end{reference} - -\begin{points} - \item 目录本身不在目录里 - \item 目录缩进没有要求。给用户提供键值控制。 - \item 目录层级没有要求。给用户提供键值控制。 - \item 样式参考示例文件 -\end{points} - - -\subsubsection{页面设置} - -\begin{reference} - 论文用A4纸(210×297mm)标准大小的白纸,必须双面印制,前置部分例外。 -\end{reference} - -\begin{points} - \item 前置部分单面打印,正文双面打印。(只需要在前置部分加空白页即可) -\end{points} - -\begin{reference} - 论文在印制时,纸张四周留足空白边缘,即:每页上方(天头)、下方(地脚)、左侧(订口)、右侧(切口)应分别留出25mm以上的空白边缘。 -\end{reference} - -\begin{points} - \item 页面尺寸没有直接的要求,只有 25mm 以上。参考黄老师模版设置。 -\end{points} - - -\subsubsection{页眉页脚} - -\begin{reference} - 页眉从中文摘要开始至论文末,偶数页码内容为:武汉大学硕士学位论文,奇数页码内容为学位论文题目。 -\end{reference} - -\begin{points} - \item 页眉奇偶不同 - \item 从中文摘要开始有页眉 - \item 偶数页:武汉大学硕士学位论文 - \item 奇数页:学位论文题目 - \item 位置应该是中间 -\end{points} - -\begin{reference} - 论文的页码由引言(绪论)的首页开始,作为第1页,并为右页,一律用阿拉伯数字连续编排页码,必须统一标注在每页页脚中部。 -\end{reference} - -\begin{points} - \item 其实就是正文开始有页码(虽然规范里貌似把“引言”和“正文”分开了,但是 \LaTeX{} 里其实就是 \tn{mainmatter} 后面的内容) - \item 第一页为右页其实就是 \cls{book} 类的 \opt{openright} 选项 - \item 正文页码阿拉伯数字 - \item 正文页码在页脚中间 -\end{points} - - -\subsubsection{论文题目} - -\begin{reference} - 题目必须用楷体标准一号字标注于明显的位置,应是集中概括论文最重要的内容,一般不超过20个字,以有助于选定关键词和编制题录。题目不能用缩略词,首字母缩写字、字符、代号和公式等,题目语意未尽,可用副标题补充说明。外语专业的论文题目一般采用英文,英文题目不宜超过10个实词。 -\end{reference} - -\begin{points} - \item 字号为楷体1号 -\end{points} - - -\begin{reference} - 论文英文题目专用一页纸,“英文题目”用Times New Roman字体二号字,其下“研究生姓名”用Times New Roman字体四号字;外语专业应为中文题目。 -\end{reference} - -\begin{points} - \item 英文题目另起一页 - \item 字号为Times new Roman字体二号字 - \item “研究生姓名”用Times new Roman字体四号字 - \item “外语专业”填写中文 -\end{points} - - -\subsubsection{封面} - -\begin{reference} - 论文封面的格式,请严格按“标准样本”(学术型硕士详见附件一,专业型硕士详见附件二)制作。 -\end{reference} - -\begin{points} - \item 要严格基于示例制作封面 -\end{points} - - -\subsubsection{论文原创性声明} - -\begin{reference} - 论文原创性声明用黑体小二号字,内容用宋体四号字。 -\end{reference} - -\begin{points} - \item 抬头黑体小二号 - \item 内容宋体四号字 -\end{points} - - -\subsubsection{摘要和关键词} - -\begin{reference} - 中文摘要用黑体小二号字,内容用宋体小四号字,页码用罗马数字单独编排,并标注在每页页脚中部。 -\end{reference} - -\begin{points} - \item “中文摘要”:黑体小二号 - \item 中文摘要内容:宋体小四号 - \item 页码:罗马数字,页脚中间 -\end{points} - -\begin{reference} - 英文摘要用加粗Times New Roman小二号字,内容用Times New Roman小四号字,页码续接中文摘要的页码。 -\end{reference} - -\begin{points} - \item “英文摘要”:加粗Times New Roman小二号(直接用本科表标题设置的那个字体) - \item 英文摘要内容:Times New Roman小四 - \item 页码续接中文摘要(要注意插入空白页后还连不连续) -\end{points} - -\begin{reference} - 每篇论文必须选取3-5个中、英文关键词,排在其论文摘要的左下方,用黑体小四号字。 -\end{reference} - -\begin{points} - \item 位置左下方?那接口和本科一样就行,用户自己选择 - \item 黑体小四(中英都是?) -\end{points} - - -\subsubsection{正文} - -\begin{reference} - 正文是学位论文的核心部分,必须由另页开始,一级标题之间换页,二级标题之间空行;内容一律用宋体小四号字,字间距设置为标准字间距,行间距设置为最小值20磅,各章、节应有序号。 -\end{reference} - -\begin{points} - \item \tn{chapter} 新起一页(默认效果) - \item 二级标题之间空行是指 \tn{section} 之间的间距只有一个空行? - \item 正文字体为宋体小四 - \item 行间距:20磅 -\end{points} - - -\subsubsection{参考文献} - -\begin{reference} - 参考文献用黑体四号字,内容用宋体五号字。 -\end{reference} - -\begin{points} - \item 标题黑体四号字 - \item 内容宋体五号字 -\end{points} - -更多细节要看 \file{.doc} 文件的内容进行微调。 - - -\subsection{博士} - -以下来自《武汉大学博士学位论文印制规定》 - - -\subsubsection{装订顺序} - -\begin{choices}[label = \arabic*.] - \item 封面 - \item 论文英文题目 - \item 论文原创性声明 - \item 学位论文使用授权协议书 - \item 博士生自认为的论文创新点 - \item 中文摘要 - \item 英文摘要 - \item 目录 - \item 引言 - \item 正文 - \item 中外文参考文献 - \item 攻博期间发表的与学位论文相关的科研成果目录 - \item 后记/致谢 -\end{choices} - - -\subsubsection{目录} - -\begin{reference} - 目录是论文的提纲,也是论文组成部分的小标题。排列顺序是:1、中文摘要2、英文摘要3、引言4、正文章节5、中外文参考文献6、攻博期间发表的科研成果目录7、后记(可不要此项)。每项须标明页码。 -\end{reference} - -\begin{points} - \item 目录本身不在目录里 - \item 目录缩进没有要求。给用户提供键值控制。 - \item 目录层级没有要求。给用户提供键值控制。 - \item 样式参考示例文件 -\end{points} - - -\subsubsection{页面设置} - -\begin{reference} - 论文用A4张(210×2976mm)标准大小的白纸打印;正文部分双面印制。 -\end{reference} - -\begin{points} - \item 前置部分单面打印,正文双面打印。(只需要在前置部分加空白页即可) -\end{points} - -\begin{reference} - 论文在打印时,纸张四周留足空白边缘,每页上方(天头)和左侧(订口)应分别留边25mm以上,下方(地脚)和右侧(切口)分别留边25mm以上。 -\end{reference} - -\begin{points} - \item 页面尺寸没有直接的要求,只有 25mm 以上。参考黄老师模版设置。 -\end{points} - - -\subsubsection{页眉页脚} - -\begin{reference} - 页眉从中文摘要开始至论文末,偶数页码内容为“武汉大学博士学位论文”,奇数页码内容为学位论文题目。 -\end{reference} - -\begin{points} - \item 页眉奇偶不同 - \item 从中文摘要开始有页眉 - \item 偶数页:武汉大学博士学位论文 - \item 奇数页:学位论文题目 - \item 位置应该是中间 -\end{points} - -\begin{reference} - 论文的页码由引言(绪论)的首页开始,作为第1页,并为右页,一律用阿拉伯数字连续编排页码,必须统一标注在每页页脚中部。 -\end{reference} - -\begin{points} - \item 其实就是正文开始有页码(虽然规范里貌似把“引言”和“正文”分开了,但是 \LaTeX{} 里其实就是 \tn{mainmatter} 后面的内容) - \item 第一页为右页其实就是 \cls{book} 类的 \opt{openright} 选项 - \item 正文页码阿拉伯数字 - \item 正文页码在页脚中间 -\end{points} - - -\subsubsection{论文题目} - -\begin{reference} - 题目必须用楷体标准一号字标注于明显的位置,应是集中概括论文最重要的内容,一般不超过20个字,以有助于选定关键词和编制题录。题目不能用缩略词,首字母缩写字、字符、代号和公式等,题目语意未尽,可用副标题补充说明。外语专业的论文题目一般采用英文,英文题目不宜超过10个实词。 -\end{reference} - -\begin{points} - \item 字号为楷体1号 -\end{points} - - -\begin{reference} - 论文英文题目专用一页纸,“英文题目”用Times New Roman字体二号字,其下“研究生姓名”用Times New Roman字体四号字;外语专业应为中文题目。 -\end{reference} - -\begin{points} - \item 英文题目另起一页 - \item 字号为Times new Roman字体二号字 - \item “研究生姓名”用Times new Roman字体四号字 - \item “外语专业”填写中文 -\end{points} - - -\subsubsection{封面} - -\begin{reference} - 论文封面的格式,请严格按“标准样本”(学术型硕士详见附件一,专业型硕士详见附件二)制作。 -\end{reference} - -\begin{points} - \item 要严格基于示例制作封面 -\end{points} - - -\subsubsection{论文原创性声明} - -\begin{reference} - “论文原创性声明”用黑体小二号字,内容用宋体四号字 -\end{reference} - -\begin{points} - \item 抬头黑体小二号 - \item 内容宋体四号字 -\end{points} - - -\subsubsection{摘要和关键词} - -\begin{reference} - “中文摘要”用黑体小二号字,内容用宋体小四号字,页码用罗马数字单独编排,并标注在每页页脚中部。 -\end{reference} - -\begin{points} - \item “中文摘要”:黑体小二号 - \item 中文摘要内容:宋体小四号 - \item 页码:罗马数字,页脚中间 -\end{points} - -\begin{reference} - “英文摘要”用加粗Times New Roman小二号字,内容用Times New Roman小四号字,页码续接中文摘要的页码。 -\end{reference} - -\begin{points} - \item “英文摘要”:加粗Times New Roman小二号(直接用本科表标题设置的那个字体) - \item 英文摘要内容:Times New Roman小四 - \item 页码续接中文摘要(要注意插入空白页后还连不连续) -\end{points} - -\begin{reference} - 每篇论文必须选取3-5个中、英文关键词,排在其论文摘要的左下方,用黑体小四号字。 -\end{reference} - -\begin{points} - \item 位置左下方?那接口和本科一样就行,用户自己选择 - \item 黑体小四(中英都是?) -\end{points} - - -\subsubsection{正文} - - -\begin{reference} - 正文是学位论文的核心部分,必须另页开始,一级标题之间换页,二级标题之间空行;内容一律用宋体小四号字,字间距设置为标准字间距,行间距设置为最小值20磅,各章、节应有序号。 -\end{reference} - -\begin{points} - \item \tn{chapter} 新起一页(默认效果) - \item 二级标题之间空行是指 \tn{section} 之间的间距只有一个空行? - \item 正文字体为宋体小四 - \item 行间距:20磅 -\end{points} - - -\subsubsection{参考文献} - -\begin{reference} - 参考文献用黑体四号字,内容用宋体五号字。 -\end{reference} - -\begin{points} - \item 标题黑体四号字 - \item 内容宋体五号字 -\end{points} - -更多细节要看 \file{.doc} 文件的内容进行微调。 - - -\subsubsection{书脊} - -\begin{reference} - 书脊(专指博士学位论文)。书脊上应用仿宋体四号字于上方标明论文题目,下方注明研究生姓名。 -\end{reference} - -\begin{points} - \item 字体仿宋体四号字 - \item 可以参考 \cls{whu-thesis} 和 \cls{thuthesis} 对书脊的处理 - \item 可以设计在加了 |-shell-escape| 才编译书脊(类似于一次编译有两种 PDF) -\end{points} \ No newline at end of file diff --git a/doc/back/todo.tex b/doc/back/todo.tex deleted file mode 100644 index a439b47..0000000 --- a/doc/back/todo.tex +++ /dev/null @@ -1,113 +0,0 @@ -% !TeX root = ../whu-thesis-doc.tex - -\section{To-do} - -\subsection{大方向} - -\begin{itemize} - \item 写一些用户注意事项 - \begin{itemize} - \item 层级(见本科规范P11的 |(九)正文|) - \item \href{https://github.com/whutug/whu-thesis/issues/63}{\#63}:参考文献中出现重音时的处理和 backend 有关 - \end{itemize} - \item 尽可能复刻黄老师的模版效果并优化代码 - \item 参考外语学院的 word 模版,提供调整接口 - \item 参考 BenjaminHb 对学术硕士的需求的调整 - \item 尝试用 \LaTeX{} 复刻硕士开题报告的表格 - \item 整理 github 上的 issues 和 discussions - \item 不放过规范的每一个细节,将一些细节给用户写清楚。基于不同的规范来写三个版本(本硕博)的模版示例 - \item 不同学院的差异通过自主定义的配置文件实现(配合 issues 或者手册等让用户知道怎么改) - \item 学习 \cls{fduthesis}、 \cls{thuthesis}、\cls{ustcthesis}、\cls{ucasthesis}、 \cls{sjtuthesis}、\cls{gdutthesis}、\cls{xdupgthesis} 等模版的细节处理 - \item 增加一些宏包使用样例,比如 \pkg{tabularray}、\pkg{fixdif}、\pkg{listings} 等 - \item 学习 \cls{thuthesis} 等模版的程序文件来处理以及 github 的 actions - \item 模版完善后移植到 gitee 上 -\end{itemize} - -\subsection{细节问题} -\begin{itemize} - \item 实现诸如 \tn{AtEndPreamble} 之类的钩子,取消对 \pkg{etoolbox} 的依赖 -\end{itemize} - - -\subsection{待开发} - -\subsubsection{本科} - -\begin{itemize} - \item 封面接口 -\end{itemize} - - -\subsubsection{硕士} - -\begin{itemize} - \item 封面接口 -\end{itemize} - - -\subsubsection{博士} - -\begin{itemize} - \item 封面接口 - \item 攻博期间发表的与学位论文相关的科研成果目录(参考 \cls{CCNUthesis}) -\end{itemize} - - - -\subsection{issues 问题解决 To-do} - -\begin{itemize} - \item 图表目录的 label 宽度问题(参考西电论文模版的设置) - \item \href{https://github.com/whutug/whu-thesis/issues/159}{\#159}:增加页眉的上方横线的控制接口 - \item \href{https://github.com/whutug/whu-thesis/issues/153}{\#153}、\href{https://github.com/whutug/whu-thesis/issues/142}{\#142}、\href{https://github.com/whutug/whu-thesis/issues/125}{\#125}、\href{https://github.com/whutug/whu-thesis/issues/120}{\#120}、\href{https://github.com/whutug/whu-thesis/issues/94}{\#94}、\href{https://github.com/whutug/whu-thesis/issues/8}{\#8}、\href{https://github.com/whutug/whu-thesis/discussions/123}{\#123}:数学字体的配置,注意 \tn{mathscr}、\tn{mathcal} 和 \tn{mathbb} 的效果(参考 \cls{fduthesis} 的 \href{https://github.com/stone-zeng/fduthesis/discussions/270}{\#270} - \item \href{https://github.com/whutug/whu-thesis/issues/151}{\#151}:参考文献的排序问题(提供接口选择) - \item \href{https://github.com/whutug/whu-thesis/issues/148}{issue \#148}、\href{https://github.com/whutug/whu-thesis/discussions/147}{discussion \#147}:本科模版增加接口使得中英文摘要和目录页的页码为罗马数字 - \item \href{https://github.com/whutug/whu-thesis/issues/142}{\#142}:算法的配置问题、图表题的参考文献引用问题 - \item \href{https://github.com/whutug/whu-thesis/issues/132}{\#132}、\href{https://github.com/whutug/whu-thesis/issues/24}{\#24}:增加超链接的框接口(参考 \cls{fduthesis}) - \item \href{https://github.com/whutug/whu-thesis/issues/131}{\#131}:处理浮动体和文字之间的间距(参考 \href{https://github.com/sikouhjw/gdutthesis/blob/c3cc2de5bfa47f7bf1b88c0884cca60119d6fd82/gdutthesis.cls#L1106-L1132}{\cls{gdutthesis} 的补丁}) - \item \href{https://github.com/whutug/whu-thesis/issues/130}{\#130}:配置好 A4 纸张 - \item \href{https://github.com/whutug/whu-thesis/issues/152}{\#152}、\href{https://github.com/whutug/whu-thesis/issues/117}{\#117}、\href{https://github.com/whutug/whu-thesis/issues/44}{\#44}:硕博模版上传图书馆需要去掉所有空白页(关键点在于页码、页眉的处理)处理好空白页(给用户提供接口,比如要不要空白页,然后空白页有无页码等) - \item \href{https://github.com/whutug/whu-thesis/issues/128}{\#128}:个人信息接口需要填写两个的话,要允许有一个缺失 - \item \href{https://github.com/whutug/whu-thesis/issues/92}{\#92}:攻博期间发表的科研成果编号问题(参考 \cls{CCNUthesis}),提供键值让用户选择是否编号(有没有可能通过 \tn{bibentry} 和 \tn{nobibliography} 之类进行处理) - \item \href{https://github.com/whutug/whu-thesis/issues/85}{\#85}、\href{https://github.com/whutug/whu-thesis/issues/76}{\#76}:处理参考文献的引用命令 - \item \href{https://github.com/whutug/whu-thesis/issues/80}{\#80}:整合 zepinglee 写的本科 bst 到模版中 - \item \href{https://github.com/whutug/whu-thesis/issues/74}{\#74}、\href{https://github.com/whutug/whu-thesis/issues/72}{\#72}、\href{https://github.com/whutug/whu-thesis/issues/56}{\#56}、\href{https://github.com/whutug/whu-thesis/issues/39}{\#39}、\href{https://github.com/whutug/whu-thesis/issues/30}{\#30}:中文字体的配置 - \item \href{https://github.com/whutug/whu-thesis/issues/71}{\#71}:重定义 \tn{figureautorefname} 等名称来使用 \tn{autoref} - \item \href{https://github.com/whutug/whu-thesis/issues/70}{\#70}:配置好 \pkg{hyperref} 宏包 - \item \href{https://github.com/whutug/whu-thesis/issues/67}{\#67}:本硕如果有硕士期间研究成果要添加,可以放在附录 - \item \href{https://github.com/whutug/whu-thesis/issues/61}{\#61}、\href{https://github.com/whutug/whu-thesis/issues/53}{\#53}、\href{https://github.com/whutug/whu-thesis/issues/46}{\#46}、\href{https://github.com/whutug/whu-thesis/issues/36}{\#36}、\href{https://github.com/whutug/whu-thesis/issues/4}{\#4}:参考文献的样式问题 - \item \href{https://github.com/whutug/whu-thesis/issues/135}{\#135}、\href{https://github.com/whutug/whu-thesis/issues/66}{\#66}、\href{https://github.com/whutug/whu-thesis/issues/51}{\#51}、\href{https://github.com/whutug/whu-thesis/issues/50}{\#50}、\href{https://github.com/whutug/whu-thesis/issues/3}{\#3}、\href{https://github.com/whutug/whu-thesis/discussions/103}{discussion \#103}:增加接口控制的目录缩进(subsub 的可以默认设置为 sub + 2em) - \item \href{https://github.com/whutug/whu-thesis/issues/55}{\#55}:测试图表标题内的参考文献引用 - \item \href{https://github.com/whutug/whu-thesis/issues/52}{\#52}:兼容 \tn{bm} 宏包? - \item \href{https://github.com/whutug/whu-thesis/issues/47}{\#47}:title 中含有公式的测试 - \item \href{https://github.com/whutug/whu-thesis/issues/38}{\#38}:\pkg{biblatex} 与钩子的问题 - \item \href{https://github.com/whutug/whu-thesis/issues/10}{\#10}:\pkg{listings} 配置? - \item \href{https://github.com/whutug/whu-thesis/issues/1}{\#1}:提供用户几种编辑器或 overleaf 的编译方式示例 -\end{itemize} - - -\subsection{discussions 问题解决 To-do} - -\begin{itemize} - \item \href{https://github.com/whutug/whu-thesis/discussions/164}{\#164}:增加联合导师的接口 - \item \href{https://github.com/whutug/whu-thesis/discussions/163}{\#163}:\tn{section} 中引用测试 - \item \href{https://github.com/whutug/whu-thesis/discussions/160}{\#160}:超链接的颜色接口 - \item \href{https://github.com/whutug/whu-thesis/discussions/160}{\#160}:参考文献字号问题 - \item \href{https://github.com/whutug/whu-thesis/discussions/157}{\#157}:公式和文本的数字字体测试 - \item \href{https://github.com/whutug/whu-thesis/discussions/155}{\#155}:参考文献的同名问题 - \item \href{https://github.com/whutug/whu-thesis/discussions/154}{\#154}:文献只引用标题问题 - \item \href{https://github.com/whutug/whu-thesis/discussions/136}{\#136}:参考文献的溢出问题 - \item \href{https://github.com/whutug/whu-thesis/discussions/134}{\#134}:参考文献的“标准”类的引用问题 - \item \href{https://github.com/whutug/whu-thesis/discussions/124}{\#124}:设计硕博的目录层级接口 - \item \href{https://github.com/whutug/whu-thesis/discussions/111}{\#111}:脚注的序号和文字的距离调整 - \item \href{https://github.com/whutug/whu-thesis/discussions/105}{\#105}:宏包依赖(尽可能减少宏包依赖,而增加宏包载入的配置) - \item \href{https://github.com/whutug/whu-thesis/discussions/104}{\#104}:提供标点符号的接口(开明等) - \item \href{https://github.com/whutug/whu-thesis/discussions/103}{\#103}:参考文献中的破折号(页码等) - \item \href{https://github.com/whutug/whu-thesis/discussions/100}{\#100}:多 \file{.bib} 文件 - \item \href{https://github.com/whutug/whu-thesis/discussions/98}{\#98}:word 模版制作? - \item \href{https://github.com/whutug/whu-thesis/discussions/89}{\#89}:重新设计图表索引(目录)接口(去掉键值而改为命令形式) - \item \href{https://github.com/whutug/whu-thesis/discussions/78}{\#78}:增加版本检测 - \item \href{https://github.com/whutug/whu-thesis/discussions/75}{\#75}:参考文献的引用 - \item \href{https://github.com/whutug/whu-thesis/discussions/42}{\#42}:考虑把封面和扉页用 \pkg{xtemplate} 重构使得能够兼容更多学院的要求 - \item \href{https://github.com/whutug/whu-thesis/discussions/43}{\#43}:Docker 镜像、github 的actions -\end{itemize} \ No newline at end of file diff --git a/doc/body/cover.tex b/doc/body/cover.tex deleted file mode 100644 index 2730705..0000000 --- a/doc/body/cover.tex +++ /dev/null @@ -1,32 +0,0 @@ -% !TeX root = ../whu-thesis-doc.tex - -\begin{abstract} - 武汉大学学位论文 \LaTeX{} 模板 \cls{whu-thesis} 基于本科生院的论文撰写规范制作,同时参考研究生院提供的《研究生学位论文规范》,用于生成符合武汉大学学位论文排版要求和相应的国家规范、行业标准的学位论文,旨在为同学提供毕业论文书写的方便。 -\end{abstract} - -\def\abstractname{Abstract} -\begin{abstract} -The \cls{whu-thesis} class is intended for typesetting Wuhan University dissertations with \LaTeX{}, providing support for bachelor, master, and doctoral thesis. -\end{abstract} - -\vspace{2cm} -\def\abstractname{特别声明} -\begin{abstract} -在使用本模板时,我们默认您同意以下内容: -\begin{enumerate} - \item 本模板通过 LPPL 1.3c 协议开放源代码,您可以随意使用编译出的 PDF 文件。 - \item 本模板与学校官方部门并不存在合作关系,作者不对使用本模板产生的格式审查问题负责。 - \item 遇到本文档没有覆盖的问题属于正常情况,欢迎提交反馈意见。 -\end{enumerate} -\end{abstract} - -\begin{tikzpicture}[remember picture, overlay] - \node[opacity = 0.1] at ([shift={(0.2\textwidth, -0.45\textheight)}]current page text area.north west){% - \includegraphics[width=26cm]{../figures/whu-logo.pdf} - }; - % \node[opacity = 0.1] at ([shift={(-0.1\textwidth, -0.45\textheight)}]current page text area.north east){% - % \includegraphics[width=26cm]{whu-logo.png} - % }; -\end{tikzpicture} -\thispagestyle{plain} -\clearpage \ No newline at end of file diff --git a/doc/body/introduction.tex b/doc/body/introduction.tex deleted file mode 100644 index 6317498..0000000 --- a/doc/body/introduction.tex +++ /dev/null @@ -1,17 +0,0 @@ -% !TeX root = ../whu-thesis-doc.tex - -\section{介绍} - -目前在网上可搜索到的武汉大学学位论文 \LaTeX{} 模版主要有: - -\begin{enumerate} - \item 武汉大学\href{http://aff.whu.edu.cn/huangzh/}{黄正华老师}编写的\href{http://aff.whu.edu.cn/huangzh/#:~:text=%E4%B8%8B%E5%88%97-,%E6%AF%95%E4%B8%9A%E8%AE%BA%E6%96%87%E6%A8%A1%E6%9D%BF,-%2C%20%E9%80%82%E7%94%A8%E4%BA%8E%20TeX}{模版} (最近更新为 2016 年); - \item \href{https://github.com/imfing}{imfing} 于 2019 年首先开发了 \cls{whu-thesis},\href{https://github.com/T0nyX1ang}{Tony Xiang} 参与小部分开发,最后 \href{https://github.com/tanukihee}{ListLee} 于 2020 年\href{https://github.com/whutug/whu-thesis/commit/d488438b7819ddf5a128081a50b118d8fd4ec1ef}{用 \LaTeX3 重构了 \cls{whu-thesis}},但由于维护者工作原因,于 2021 年六月份后无人继续维护 \cls{whu-thesis}; - \item \href{https://github.com/BenjaminHb/whu-thesis}{BenjaminHb} 针对学术硕士需求,基于 whu-tug 编写的 \href{https://github.com/whutug/whu-thesis}{\cls{whu-thesis}} (本模版2022年重构前的 v0.6d 版本)进行调整。 -\end{enumerate} - -但是黄老师的模版开发时间较早,部分配置可能已经过时,且并没有统一本硕博三个模版;BenjaminHb 对学术硕士的需求单独调整完全可以通过代码的调整在 \cls{whu-thesis} 中实现(比如提供键值接口);而 \cls{whu-thesis} 在 2021 年 6 月后无人维护。 - -随着关于 \cls{whu-thesis} 的\href{https://github.com/whutug/whu-thesis/issues}{问题}和\href{https://github.com/whutug/whu-thesis/discussions}{讨论}不断增多,模版的优化需求日渐强烈。\href{https://github.com/xkwxdyy}{xdyyxkw} 在 2022 年接手 \cls{whu-thesis} 的维护后,于 2022 年 8 月重新梳理教务处规范、已有的部分学院的需求差异,基于黄正华老师的模板、v0.6d 版本的 \cls{whu-thesis} 与 issues 和 discussions 中的问题和需求,对 \cls{whu-thesis} 进行整体重构工作。(从此之后版本号风格变成 v$x.y.z$) - -本模板将借鉴前辈经验,重新设计,并使用 \LaTeX3 编写,以适应 \TeX{} 技术发展潮流;同时还将构建一套简洁的接口,方便用户使用。主要参考:复旦大学 \cls{fduthesis}、清华大学 \cls{thuthesis}、中国科学技术大学 \cls{ustcthesis}、中国科学院大学 \cls{ucasthesis} 以及上海交通大学 \cls{sjtuthesis} 等成熟的学位论文 \LaTeX{} 模版,同时也会参考 xkwxdyy 于 2022 年开发的华中师范大学学位论文模版 \cls{CCNUthesis},并吸取模版开发过程中的教训,总结经验,努力开发一个优质的 \cls{whu-thesis}。 diff --git a/doc/figures/whu-logo.pdf b/doc/figures/whu-logo.pdf deleted file mode 100644 index 3532143d589e2a38bd9572d930e421e455362a56..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 16692 zcma*P1CS-%w(q;jw%My}+qP}nwr$(C*=5^ym%7~LE_JD2ef#Wv--&l_yn8cN8OUrh>7xnTabbgNmE6>%WeO zJ2=~Y#sAv>%Yq4(K~Ysqlm06qGkGIBGaw~BgNLOXovnj~1HGfEIn}@W6^$&+E0FUmtTHTvu&{$CP>1oW!NknMLeI#~#l^}FGWV zr5KC{ni+K6`%cgxWB?p0?D_u``=8kVp9(YmGx;wi{&&@7`2R1+e~I_y{x9`dzhvY5 z((C_~i0Pl&D*yL$B-hVR%9*t@d6!>)5KS>N!sHCPnbmEbxHHi;faL%$5SqN^t#{PG z(cIAW_#BgPL*I&#nIBgf^BeO11Dm6sn!zdoL`-)erJOjbq2+SqgDZyThh?S_W@U(Xl& zg5vSN_F8>95cdhqM4ouvvGPyGne`3+I*l^C2h_R#t($w&GuO7M?F?8?LM(k?o3VuJ z8!NbKT-&@S%42bbuhv^6{_yu}>onhZ3wq$z;JG2J2kVg7Oyo=WF`9pR zD&08q_cPU|V6Q0S(cxpx$oL9xX$^Euy%#3Rj8^i~o)4vY&P)y`u^IDi?BL`^aZOcQ zOG5Qe2}0FgFR6(0ba1Hsgltse8f%>Lo0y+YtN;TH)#s>gFujxi;5% z29+cQq^tCebH`x@C;H_<@N0Hd{M3)RtOHRQ#uc~=QJuDKzX7KmX+7D>#9QbWp?o(M z8GDWmi!0!XdfeAc&KJqZ6WE#DCc;;+fF z%zJ%zayc1QV6OyN%u&_b5Na>QCoKE&VbVzIrTWD?Um@%{A+u^&*HR7Yz6&q+v`8%QKHLKs#6! zc))Zj(QQ;a4ToYGz1yGzL97RbXnBu0%OtPk0lNPAIXcvtC8n`dOaSSaYHhlWjG~5b z<g^ zWCi&h{rhv&IB$^D$Y|9K3=^_^u=^=+U-IVTUhQpTJ|mofQ`#W(n|#~cTXSnD2_8OH zj5&`2eLV(ZH_^sVOa}L)7I_~O5cuSuR(%~MPGfI3zkPzy>d7@x)Z_CR00YFmIBmBS zhR&K&jQmNYweHmh^GIu4NT8U_dI>HJ+8A3!O>tEhaLpElmzunYCecOi`s;1cVXkAZ zktDRn`!QImcIHLAp+3Q2UIOA-x&AuL`U-kW!jNFxfr4Fsx`;SWGCj+C@=rNEjghq5 z?d9wCRMrdC@{I^0%H?(Y$@~#iRBNB?J$_q=AcELp99En@~U+MNl(~xWplOy;Ut01r>O~ z6CCsW8LA6znc6o0D^VN51{?Knxq5ozGd@sdN`>Fyfaj;df21=0MpfF{O-Cu%TmCS@^(m6CjMH-$_f) zWleEPyYA+Li&8sTI^D@*S0p}(($le|gRph#2o92-P*zh(3Z7?0zU6xKwRPKIk%PdGVy0Wp1> zlM=obXE}eiSt~pO&|xYFf<+k+7zPMn)e{BsCOWO?eWeGp9bmMn= zt6HPTevIx^ff}tD?kl+GW+*G?S{L_`usdq0lPtAwhn-Cd|F7HNwDOe1sSik%w9jrimg^E5zDpQN020J(mh7xW{n+U#m5 z=L<0a77>^vFwu+$Z*_0?7*`X=F2}+UoE#v`XO1A=2~!aGBwtCbq+|3ZmO9tB2I<|G zol^a_;%A&t;!HF^87G8bFDH?*6osA@K>lcJWSsY08hX7k(^gg11k)9&0+?p1?}0wo zN(7}!bBW*v^~C{wAnq-dl+yM)L55iji|Y6`LUKl73s*-;XT7=U&8EP6wh5R zM6z5R`J7vg(>Cr2^8z~6JaMaC2^}Db%ez22yVOje=n5;0$j&ke`zQ(xqOyixNmZ1= z*D!E(Mk@O*m0BMHH(Ta>XCgzBd7kRc9c-cBVW9H5xAXd!)ZYpjrLam2G-T-yNS!G@ z+Q`Ckvt|dR7A!x5-q?e>PRDj_q=NLXVo7ea>B1U5W@x#ck>VuuLOS^#0CFGz$S%K$ ztF4*+wD(hp6g!=vK3GxTK%)gQ%+zaf5PF z10RF!6=`wQLBbH*%>cQo%)o(Kk$XU?f>f&q5#j)L@oKNm!X6XN0z~pD)o6AHl86Q- zH@iM9vgd(si5d!Rp*&9G0-6@+lb>JEELzH$=0R{^WRYAbQD5^U9&Wj9C~k;)#98kU zt)SFelaGAiK+S3yh+}%3C4dRAH*6op-bbNAjA)9B%Q_UOi?N=k5N0O{r}T{J0@^O2 z9ZSzp9K0l|sinapwH}F@wn1oZ@>f4pQQQEz68kcc*)~;iT5L|JwPZBk7~JiJax`~o z(G<@c6e1P2l<&(=IxI zxJ-Pmc#>2&%LfH$t%K5HSxCPFK}My-7I#Eji(C2wJAV7DE4n3IpCMt@qaTt1VVAvz zxjTo+)nE?_TmDQ;>R!ZMkHhXEce?aZ6(>WIEP7SNAM_01Ky?kz3l^_+Km0>`n8CAM zl)%?8MN@Z`b~b=Fj|uaG7^YL>Z+55+9X4&44_1zs+#<8~0#ae8H_iqhXG%xTtV^`& zg_nL~PXm(`2d4TUf2fsk(sl$s%O-y|qeM~OGGqF}XaDP&mPb%LH6pW^CN-CKYaJ-E zHds?TcbMfqR6gfcD}ynTbYE<@sf4D9LN0lkzHUm@n^15rlKFX;$V1RHwBP+9U|@DC zx#jj*o3Doc!$c`kgb{>5O?9vsZ6#9%J>waSk9^V8nc;6Lx~Kb8s37@bk}|1AJxpZF z5xrhxRw+GTd&#jZL9%n(6(6pg9P<~^)XI)^XHTN}2jbbxRcUCh*K5~!6fx%rfnQJz zfJl#n=gLbg;a-QP*vOVu8`BA*u$mSD8JXCyi0u3`OznzjnLbN>4wJ~0x`WLyD-lQX z6!iwD8*my~Y|S7{$|Da`T;j+;hocXEi@WbGW(5e7<{p(<*idp+Bk~WPM68@Nz7J~FM?`A0%J zc3a4e$Xn@vqHqyyXcFb5z37ct8SUVxU*z0@mK&1v;qK)-$jAsz=V&%eaoZq~uG2!% z175OJ3Wb)I4hQJM=P@)8=4H!}q|j{_}g2PfHoDD^j6XVU6!9zs2$B{dXg4nPA1P3Og;;H>ttm7`-+$*3HPK zMP6gS|9;jN#a(Mgpacwz{b|zrg$7xdxj=IQdNN1ZLNKGvm?p7#X89P5k(n!GL~$YP z&c6`=we5;08x@G5zQ1K=8XX-RSmZIGI%*)g#I@w5sbmeLFG8TZ6@&iavYft(OS+j) z7#uqZWL2qT^>R;nN2k+HH?j=$s-79{A8=>zWi<6Fh=bOZVH2kC`izcEG<>2v$HeeC ziFxM=JK%5DKD)-$Q6cSu9V~;Sh6Kq>GkY%VgxT$*HkMs}eI-WF`4;nzQdLlJyGurZ zU%q;7U%fz?Y>W!LERkDGpm%BXitHUUhI^)tVp~>#$8*?Pr~ftfZg22;^qYdIMxmqP znm%Te2spb4+L|%cMt%=8Kmst2Uj`D@#&KZTg12+jek~y@CoG4Dt+PwK*ghY2Mq1^_ zl9ikCr1&H?>#UTG5MYNZZw20P4^Q?*D|HW1&37|x{lHZbKBsfb(jYbouKN@0=D{Pa zGvYujr>#jv&>+hY;D#VJ)no?at1cWEn!S6>^ZHG)aeIYLY91XtOng66MB2(%#Y@JUtvovNLNl3NW+JmF ziW9~0pjDnNJ{R*OvtSW?U^_GzhdXR8qQg|iad{*T8qzI;4ey3@>l6oV*O=gb}# zRi4KJ(R%DKFXq9 z=`TIP4S3@FCbO5MJRC1mqCzp+C3{V9Fu%wtEux~IWHrD486D$LT-Tk4iiFy@S5gWT zEVBf2dJ{%N<7C#v#e<0nDFd9pn!aGgQt3L!!~!o5nmt43IK?R}3MYEp(JxT8QphXi zbJ4qt6mzyEaitsb$TUwcFV=FKN)!bo zRx{f%-D{I8faMR7$I$%{G=mmMU@wngr{iq0C*cz8 zIu_GMbF|S6GQyGi?dYI|`wYYrR*2hTFBin7{&8|~GQciK$uZp*{iC=HPjl2tjmniu z@xlj1_=c_?3`&~Oitpheczl(P&UPciomnPstGGq-^^+U|0k zDx6-6&-|x4k3SqFKgMPv5*YQzc5_eIn?0mxV8R1xNU@`Wb6|O`aN_r=bXFn+VPm-T zPZU8DnE2dos|I8^;bln`S8=7xffhNlc{`)Es5@{WU5ZR&KS_8qPE5z{!uc%izM-ya z@W!m(#{EWRh$<)Thh+I^kF-J36l0)SED}hTHeP6+I=jMaQY)Gn$Eh~ZISYk(4!(SX zsJz@zK~U5ag3CB}RwGfTeQK=0gQj(HNJYRK8T=Iv;B-=g9n^|qCpx`=X|+cJZ^ITT zz4>j1cx+SZl8$FEvw%#-E~@yEt`Nlmevp4+1@ss6!-SaD2ziVhexPI$y#zK!j_gqG zp3n5v9P00Cf-M2l{T1L9&JSnSZ7EuTEii`f_`s+jB0vy6ZJ;qi;2|nYxrtznX`Ya~ zERQy73~;F^4jRO|=jo7UB6y36Xc(MiyPkcbK#IULYdSd!F77ZLPEL0)V-!1yv zO+3Ctm84mM6WUJy#G?xDC4^h&YUsXd#3<)7)b4+de&cvOcxESzGZ#?98pW5E6yzjV zyElT{MfE(Et_Pb5E2?O9SxpMV+br@Q=2xB&>>3cU_HSW>veUg%x2);M#~=%w35tv< z)~TM*34fu-t(=OV$B%t=U{~#h4uT!nab+zq@@Uj0Y|Pg@P#5d50K*Eh8K)EQeHpr9V>A-Krz#pj+&-der-Nr zt^JM|TD>-yLCe^|W^n<8(YLNMOj!CMRSyT2zBzHY8dTTjx{hG%W>hnV?C-N<@7IiA ziXRRD9E^F4K$?Cg*1C zPdxB}zmvWKqdDbtI$A+;vWw)dkh|^_`(%}SC>ptpGh ztfJqEoUXZ9Dv$OWd~}@K(l&8v;8!2H#=Fo6kM_F}Ei2Lr=?(2sya?-z3F>ZXTU_dzL@J>XQ z)xl4mc@Tizl_mZrDmNm{jUXy+)XBJz4h4%WR={#0C~%;y;$(Y$)6QRo$dk!hgrxK> zv6q&}QGy?SGD4*(AD%eN+8m{~Pc7XChk=?7(GIs2^)IEMk~$>0;M_&nM6GyRxD(uX z-#I`+3x^)!eJfnB4sc*)3b4~5tmrLU(sE}<4FI%^TqYX<67e!n;v3g<`6Fyouvz`s z4ZZN>yweWpp2OhjY`as6I+E?^a+<@4 zGRMX#DDKevm%YTGf?{=$3f*WaS5$Ox+7nJ^bXmg}*Xp)_r-4hS!l}{{OY||z36&=C z5|1e^5~8YOy^QfTTS@DQ4d49=c|PoYDuQ+8oq31tZ_9j{%;X2hZPIiGQTc5-3oEWJ zf0p9LZ&SGc4K`wQr{EA{!i12Aidk~<`9}9SepU&)Jz?A`SL+w<7Z^*W=sKl{bIBh@ z(&C^^J3qqOnLq(giXLHYdt*TGh6YjghoSstA$NRz4yH%$?hvT9=KUJ)=#-MG+c{R= zLxv8M?G$G^H6H!+w7GQKueSXojQ?QFe*U%up)B`2ZV)l38I6#DLfiANXTpUYn~C5A zw!+V4(@a8>RO~GVgm7U&8N}7b)cqP<41h$ZQ8R&WT_qR)R?fcYTg73cw7-W?$^hcw zm{^K`wC4jV9r<(}g^5+*gU2KfRp)vicNfF9T~*F~hZeKA3aaH!)|#Yo;W!yt#4MId z=cU$_HRE@+*SMoW1E%jaONiQXF!XJXLS_=54-ihWWZ9_3p7;Je~6RhN7R;RV>quVVh zg{5lc+qqWRvWD3vzZEWia833wn>7~|S*b^O4mqv);m$x$Zt{vX`B|#8Z282s)86xB z=IB9_VBaHp5YXNaBv!XGgF+vG=ZZJ+P^M<_g`&QrqfclJV5Y=yR8xm}x0yjDXGI4j zg$m()cQ-X_-4H@k@6)ac@as#2$TDe-~l}o9S zQZwTNG7-fCm-h0C6G_Y4sGepr(btnae}LP{wM>bRneO(g+3I(HyuJsKo{Y6W)Z|U+ zxT~)v(Z#eh?%%APvqJGQg)>r|ymOUpo)0v$c-)x2w1cgqKGJbZ>wt!qV(=T_$W)?1 zLEx9@oz(LwN|Ke&jJr|9kxle{M*q?LfRm&!J*G zS|{7jC~LmQL%+0qgsiLUscX3NZ#0%MQV}+aPzLh^hBWai_@(has&=j!r`$d+@zLsMXktdXaOPDQHuDBUSWC5Ke11g>Y1!dmD3BxX{6M#Tno0R6o~52VFV+qnpqzwd zZ!e>i35Mko{baea?t_ku;o2|`a``@2PmfQK6ul~c*|=g>t@?mrA5?FEM`yZ~DrY7X zucvGw9-*1sa4`n@1HA}FMO!G;l9Z!Q<(DcqvmAhNgbGtjUQTMGkk$<9fy3+$P)Hds zo|B(06pR&z^a9~FLcaLg`fDx#OEg#@r9%3<_|MDUrK?8TZA6vQ{X{vFy=dY}DQamC z#75S_^^X&BLQ!mzxGt2<5Wh%j(%9yGu~Bu`~`PVz!NSfC7?tAgj6 zTsHn=3k`y-1ia&u%ME0pV3D;sDtF ztSQV|DXJv!6+Po1R1y)`V&+(Lvf{M`~x@&GRv4NS?^oXkKqW zOeKZ1C5I_)HcD%y1DZlBaB*ibOsX}m@wscbEtff+GJiYRBO>nQP_iGMa)Uy$1Io4v z9sB!V6<@TiOg{+L9^5iy(j$6@TT<4tr%->FE*(-d=3!d0O4gi5Q`17L2zhI+;x1gT z6f@#FPA1wQ=w!dQy_J9lw>A2DXh$EW+!)=(I4jhy+`4%!L8L7!dd$~&6GUS5jnOEt z*ayP>T{)qAYQvzLqNYUVkO+P9eVpH;`#{Qosx_#hhCMi~8Pe&he-20AW@A2_YSR9$ zwHmK!9Z4PJDCse1!{L6{=e_j{KbbntZeol79^=`OV1REb{L<@^{)tyW<9;hq20I7a z6_u37K{DtAX)3dNHt)&BDcBTpMd;ZB3r2ap%3o6fZxsm);Si5Gxp-}7)ZSoz^bds( zVRsDQybn~x-Mv8lZP*@mW_5H& z(Doj}Cw)&No{Z`sx-m$M)(Z$;`d*i-sTKzdqr!`t9X;XL?ojV8Vq64`3<+EZ(_As% z68jsva-I@Ak%QwrP6eJU04m%!cYv!E))6&-@#JhLq zOexxVM|EBrXItUbgM$>Qr0#n23TQIC9DAo!8R*1GXlIxYQZ3uw)mtHWeF4@xKPoiW zfS!9gA=BVhzdi>1<>2j3BtHZtQ=|Cv_1|aOoxVdfhNC5b@AWziT>CzLd@oq_NQQkfV2I~-`uh>`>hqY!{1VV2kivxW_Yn!$ z6-1&wX(y0MjN@bmJ<>u>YQLA zxK!%IDJgz<_vX8FJQhr*Ygpk^adRA@oR1YWqC(;n?hyH>3CTZ-lj*Xtw-vFk&`>e< z&Kg!e3hEi(2FYwvg__~8%VI^y*cG1$#cF+OC$th*BJO0^mBAYn z9cTQf;@X^PYEj>WGCsbFVo^zy{M!K;BhSlVN(V71Z<*Abj5(Oifyi4*0zR%=6;TbG>)9PH{whWrQSml3FyA z3Cdnr`Y!lq18^IAZr};OT0d5+N(T?fgp)~|c6wYi`xxl4vb z*FNDMhupuQ9oPbjn&jhHeR8I^BK2X5x*8UJ6L7@g}jr9 zUJ7n??cxgjjdCcP^zgxu_ zuhv<_{?OrWA127?tdP(6$_>knE>l_1myaVt3nJ$Fx;qRVM04l)*aXxk=h+PcuOB7p zmkR%D=fVC6bo?IcLCeSMTg;A{sYgoIMf3^>f$$SKd`FI|nkiclb55#XD^B9mT?%uV zX{MonTG7#y4|3wu!aOad|07fu`@T@S08ts0iM7h--i&bAAdSp}@S!{_zoh)>tYK6^ z^Q7bp#Cdb}O@m{%UV0&^#$eXeE%ohC*Y#FQT^FH^-UCf48}#B)v0beGP<=9Xn7tdS z6iOCvN${fKwB`!&jWBipc4qfgg8TezXIP>`OK;#pA9$q`j+S8z4ijjN z0$XkDe-RD`G0fw2Jm*gZ=a`X^5-JmYs-O<9JPiT_WmT#kZK+^C#~8om%-v5O@MESY zl>ZPNSJx@TaQyc03kiG#O87-Qj;uAx70tu*Z#IOP306y+r6=aA5O}!5z4*KW^zSk% zAG~3KhIrE}YQhS`J+~a)^s&Ha1i>+|0))*1+X3ZonTp&u`ct{Qoy*f8x%y8O9t>eY zE{}_FDM%M383-HS@)QVrA6zd=_uW4_BxM8=pM&dCMmVpULwEISe0Juq*B|71EslX3mH2{JxWz z{{!v%^Xl_rY`gnZ$m4I$ywn1_Be^RR2rF;W+l*rXgiSizB;!|JMbokC&Q~wsSev(THX&tYBAvsigKts*6I0UPuI`jxudxtC*otZf^Y!YwUP7xK0x3o8bA7d9UPuLa*D=sVY zGU^h9xurPu9$brc=;trX%R%t7#<&J|yf{Qn#Un#6);@HgAuT4MCsEziRq9&6NDqvd zQfgO`uZ-@)^cn>zkUQ195H$o}y7QYrfLJGuWP~ z#!r)zKKEf_eM6EuI;UhlhY!wWsHu+=U=YT3PKp;;lB(G9FZa zH)<*fN{%>5Ou`=wi};R%yW(JD7=T@|qzcxl`sS;ny35gye$cCFP5uqi`+JdONa3_b zN^>w%qJ9RInwT^b&LX*{P++c0vl983Ya~Rz6>Lg z^K(v&W6Tt?{qp@Y+7xB4;qsiIW@i@mJP}|YtONn=Fu66|hO@Y+pDxmckx;e0xZz|W z1H}Y?k`fn!eQV*={icEnM*mUrvj1Tda1#_Hk}K{C>^B}QR~0K_Eob2mE~>feM*Bl+ zagFyd#c;rYJwEahvtgh&7 zbEt!Kq7u4_DcW1+M^aOH=SCBIv~xvGW?JXbTy`Fj^HC<`v}j;Sbrm%Q)LZm)*zyUv za#e360#h72_3X`nyZNC#DiZ2f4A@TJ}T4RP@8N7hY`y62!Q#6yuZ8W6V!Aa6W2H_VH_ynYh`q) zP78wqsB|TSQHh~TQ&}-~{U);ztLUzvQkta`$+}Rfw*@~+BMMY=QM6%qlil9| zzhRwvOD-q65uM^E$+Do#?qe^?r^;rd=cl6o2Gm5mAiI}VVKA!|H)}M}to7<7JC7YN zm{H&VFl0^{qPJ!lHlF>1NaU!tq@-@2&a2QP9Vg?%(hQNAd4|~H{p$4^c~FHuuACwL zyF}LjUo9i#z3#obe2?-jT-o#Dy!3$ijONi+dE$XO{|FO1s~}EaXHVT%O&)4MNn)bf zV7Uvmv=I|wh~LO`RBhSZfOoI-R{6{d=DO>gxK=RY8XXvBM`Q(5I@!n*RF!cVx0?z9 z4c)w<5{wkXgQQCPX2^%Nub9|L17Bjy=3y=@G8O8|_YOVr%3!R&yXZ&jEq>IBCmbw! zAsy&b@IK3`1}o{{IkcQvu55h?O1R_3T>hQ9;+7g}>;ra4CxXIo+#Qw#lAxR4uI(iT z6m|#nV+e<0`%N=G9=UrrhE>OwttB&hcU%@TGz*)9OQfkEizi4lt*hmw=q^|q{5TO^ zoEh0-*&XN3RYHwmltYM@CRHX|y5;c42AM-DemFr!=s>Z4T1LcVI~i3bpkibkE4tZX zQ@szoIi88SIX(dcX@{Lis)v$Lu;DV;moDljGqg6UKl)ZX42vegjgjAEH^d!+T{-B_ z_}~?Jfu$f(2-ox%Vlj`kq?5z-UoVAKmZTvRF+=oAmY6^Gv!-+WY50T^vM&y4KqPQF ztA2M1l!4Htr+fcU*r!5~lsMhNmPEH?A;4AeWoJ);HBvo(1WCq#)p;C4xOKs#>sNdk z_$U|ANk3MQ4LK(ivuz3_24mWF*?(Uq2lISI)u^laOysR=a*86mgl5J3J+2YbQ|uyo&G!Ri)W~-m@I1%miGm z+*5U}7ZNDI&xw*%)aS}L|Lz7TLSwJ2U(I0;*y+H(_`aT5=AUvi)fLB@o7CY$>&K-E zAK@F=BmlcLvZsc1Rv_>er&&joMKv}5=%UXF{tMSzZ*{&j(5Lh|k~xya4sY%F8q#X0|Go5Xz6UT>+9%x2}X zs*3VE6nLtRUF5evsqz%Z8e%oq#Yv__q^xYZa4>yYF3fz1!vYk0DdoQ8h%9-YM;D&2Fs&)9rCRz9d=p$j)b+kRX{B%% zr08enwUcJ(Pbz__dWjSxr=F7jA2a8wlyLIn4n+#9Dx-7UG$ztZ`&OjAVW1|&Nsx~r zQb6P?!dFC)2sB$ol5>B0C|m^Oh|U^s)9?WGi(N|UsWdh4y^I>A!etc_2R;L+MR+kC z$%8va^bva1jE31raM4a6iNdAqp*S8FXI|@FGJ%Kyt zPW!OeS!GUtuuhQWK^k>h3k)x_Ked|9ajLaS?lE&qr%5&|`p>p<1IeZFzK z3VR`(GKp0T5?F*E-a3r88H!$~R_oE!>Z>Kv-ogQD{t^~q5%R08gOp;%Ax4TnixrYF zHy{_{{gY~C_D)pNMmYkb6_-j-vm<3m1nH$^GU@D==;;}vMSodYr^lkKN&n)sp2VQf z>c}l7?rfrH6&Y(%V3A6gmWNpCv%%Nvlt0$#dVVdfIeR2y>$m***kidijG8&tI!n%S z+92VCpnYw9dcIs)Z9Ov*(1%7@gKxkmJ4Gp!vz=+X+9>=&92!2uYg;;?S5}wZPISCZ zPKB9;fzrzjZL;a`>}o-6Qq5S~s9~AGb#C{9)m=6VA;xOyGN@*ci?RjY#e6Ft{_NqtUzr+PL8y6H|#j)1q>thuNz+(Ats2MO_i}j?K)h<-VxT z`oPSyK^5Rjn|>fNl?|44)j0vK`*AB_(N4Uz>iFgZB5ypJi{Q5q14^Hx z(PL%()=9uoXqg6+kF-doxYF@rc}^<}yV+7FaaLw(t<$(8jnX3cbD28?>NBwbJ8%4( zIyKz4&&#QlLv%;Xg-GN8lw)-FC}=)R$0`MFW+4K~9TxeB7Ru^K>G4WUl1g6Wq)&gP zd7v2B?$S!PKuBDF)f|RD$TF~tc<1d+-Alt zwKw846E+YuZ;v>lu@DCBj0__s96hX8k|4N|3s#ELIsfR-{Sp_ z#Nxph8VHvDi1!>RrHU`26SHK-%{UrTqM`hA@oH<}u@ngD!S>u%Rn37&S@{G*&!)Ci z(s!bhk@xWu7DEJ}IgWdoHT=MB(Rxm=)q8M)^4er10xOHrnRSIY+09H>BMJ*yY>8I3ad}T zl;Q0*=}~rA@%p$5WY3{6o`{Z?8-k3R4VY_qz}=@t*$PyP%E!ZH{EjRs}1&%_V|Xn zKGr_XJ?2wMT=VY!7Kh`_Vt7;QofAR`r%hE+E!}dt@P+S1v2L)fG>R9Fwekh9X8_Bq zpiI-1u3}y4A!V)WTp)+4rNaPZDK#e~I8vY{LrD0kAPcW8=|p9< z@#Hz)5^hK^dAP8Qk0vSk(q^&jfIJc zjggUwm4=a%f{~Hp%TCV0^#5d{>TKlbXlD9_R~y;7nEi)vcC)oLHnO+>Cl^&qD;MC` z=f85I1*)4lyL^QPvd}ZJGO=+nv$L_#G1IgEC)t0c2$Z#QHv|5Y6&29N(a6=(#mork z{%=QidKUVxIel@+|3tBBb`EdJg^jj9O z`y}EQ(?~1nXg0xe)lzg>F$k?PsgyeO!DUHHYH5-a7or<|9fkWfg5JbwN9oU0?&h;r z6z8Aa3*%cJl!TxL?|n||2Vw59fo#-2l?r)_5oe*+xWoHK>o&D$!*%RUHlEuOSgXHi z^{Oap3R$F*)6}hN=_w-L*m^(v3wzYVJ0spP!NqQL;#s6mN5giOlO-^PnY5r;MNSsm z!CE5(UxfI@0IiWnbo|0*tlQ2ArwM{N%DrC&F8gYhn#7eBG1IYfoOQbQtlD~3YvFLQ zN?X+n&p&%W%`8-SXb*qNXgjEso6p}Frhk)!sRaZi&hO>04|9j@B=^Kzue5osKh`92 zq#75fiI^V;u(j>gHvCQXe|vrSu?}-3wfi1=sD&WRETiP$S4^O4;8#2zz%Y$eG|f;H zk&k`h(sE;I;rtjdQzmmQ!5Qr`DdxlI55|p9%=5oF_y0Th|8L@3*~}c4LCW6L>|b;| z6WbTptzzYE24rG`WzYcXFaeo?O#iUn4i2tgBPhDJGjhtOQ VoxhY|VrSuEge4;rQxJ#!e*hW^zT5x+ diff --git a/doc/whu-thesis-doc-setup.tex b/doc/whu-thesis-doc-setup.tex deleted file mode 100644 index 429ba35..0000000 --- a/doc/whu-thesis-doc-setup.tex +++ /dev/null @@ -1,75 +0,0 @@ -\usepackage{xeCJKfntef, xpinyin} -\usepackage{graphicx} -\usepackage{tabularray} -\usepackage{circledtext} -\usepackage{exam-zh-choices} - -\graphicspath{{figures/}} - -\hypersetup{ - pdftitle = {whu-thesis}, - pdfauthor = {夏康玮} -} -% 全角标点放在引号中,需要改成半角式,否则间距过大,不好看 -\def\FSID{“{\xeCJKsetup{PunctStyle=banjiao}。}”} % U+3002 -\def\FSFW{“{\xeCJKsetup{PunctStyle=banjiao}.}”} % U+FF0E -\def\COFW{“{\xeCJKsetup{PunctStyle=banjiao}:}”} % U+FF1A -\def\SCFW{“{\xeCJKsetup{PunctStyle=banjiao};}”} % U+FF1B - - -\title{\textcolor{MaterialIndigo800}{% - \textbf{whu-thesis: 武汉大学学位论文 \LaTeX \xpinyin[font=\sffamily,format=\color{MaterialIndigo800}]{模}{mu2}板}}} -\author{whutug% - \thanks{% - \url{https://github.com/whutug} - } -} -\date{2023/06/11\quad v0.0.1% - \thanks{% - \url{https://github.com/whutug/whu-thesis} - } -} - - -\ExplSyntaxOn -\RenewDocumentCommand \emph { m } - { - \group_begin: - \bfseries - \CJKunderline*{#1} - \group_end: - } - -\NewDocumentEnvironment { reference } { O{\ttfamily} +b } - { - \par - #1 - #2 - }{\par} - -\NewDocumentEnvironment { points } { O{要点} +b } - { - \par - \addvspace { .5em plus .5em } - \noindent \textbf{#1}: - \begin { enumerate } - [ - leftmargin = 0pt , - itemindent = 3.5em , - labelsep = 0.5em , - labelwidth = 1.5em , - align = right , - label = { \arabic * . } , - ] - #2 - } - { - \end { enumerate } - \par \addvspace { 1em plus .5em } - } -\ExplSyntaxOff - -\setlist[itemize, 1] - { - leftmargin = 3em - } \ No newline at end of file diff --git a/doc/whu-thesis-doc.tex b/doc/whu-thesis-doc.tex deleted file mode 100644 index 5b7c5ec..0000000 --- a/doc/whu-thesis-doc.tex +++ /dev/null @@ -1,62 +0,0 @@ -\documentclass{xdyydoc} -\input{whu-thesis-doc-setup.tex} - - -\begin{document} - -% 封面的页边距 - -\newgeometry{ - left = 1.25 in, - right = 1.25 in, - top = 1.25 in, - bottom = 1.00 in -} - -\maketitle - -\input{./body/cover.tex} - - -% 用户手册的页边距 - -\newgeometry{ - left = 1.75 in, - right = 0.80 in, - top = 1.25 in, - bottom = 1.00 in -} - -\tableofcontents - - -% 介绍 -\input{./body/introduction.tex} -% 安装 -% \input{./body/installation.tex} - -% \clearpage -% 使用 -% \input{./body/usage.tex} - - -% 宏包依赖情况 -\input{./back/package.tex} -% 主要更新 -% \input{./back/main-changelog.tex} - -% 参与开发 -% \input{./back/development.tex} - - -% 关于作者 -% \input{./back/about-author.tex} - - -% 模版开发要点 -\input{./back/template-points.tex} - -% To-do -\input{./back/todo.tex} - -\end{document} \ No newline at end of file diff --git a/doc/xdyydoc.cls b/doc/xdyydoc.cls deleted file mode 100644 index be61ec7..0000000 --- a/doc/xdyydoc.cls +++ /dev/null @@ -1,1156 +0,0 @@ -\NeedsTeXFormat{LaTeX2e}[2020/10/01] -\ProvidesExplClass{xdyydoc} - {2022-04-26}{0.1a}{Documentation class for CCNUthesis} -\@namedef{ver@thumbpdf.sty}{9999/99/99} -\LoadClass[a4paper, full]{l3doc} -\RequirePackage[heading, sub3section, fontset=none]{ctex} -\RequirePackage{% - caption, - geometry, - graphicx, - listings, - makecell, - siunitx, - tabularx, - threeparttable, - unicode-math, - xcolor, - ninecolors, - xcolor-material, - xunicode, - zref-base, - tikz, - tikzpagenodes, - tcolorbox, - accsupp, % PDF accessibility support - MnSymbol, - lstautogobble -} -\tcbuselibrary{listings} -\tcbuselibrary{hooks, skins, xparse, breakable} -% \tcbuselibrary{hooks, minted, skins, xparse, breakable} -\definecolor{main}{HTML}{5989cf} % setting main color to be used -\definecolor{sub}{HTML}{cde4ff} % setting sub color to be used -\def\macro@code{% - \topsep \MacrocodeTopsep - \@beginparpenalty \predisplaypenalty - \partopsep \z@skip - \trivlist \parskip \z@ \item[]% - \MacroFont - \leftskip\@totalleftmargin \advance\leftskip\MacroIndent - \rightskip\z@ \parindent\z@ \parfillskip\@flushglue - \blank@linefalse \def\par{\ifblank@line - \leavevmode\fi - \blank@linetrue\@@par - \penalty\interlinepenalty} - \obeylines - \let\do\do@noligs \verbatim@nolig@list - \let\do\@makeother \dospecials - \global\@newlistfalse - \global\@minipagefalse - \init@crossref} -\ExplSyntaxOn -\tl_new:N \l__fdudoc_tmpa_tl -\tl_new:N \l__fdudoc_tmpb_tl -\cs_new_protected:Npn \__fdudoc_patch_cmd:Nnn #1#2#3 - { - \ctex_patch_cmd_once:NnnnTF #1 { } {#2} {#3} - { } { \ctex_patch_failure:N #1 } - } -\cs_new_protected:Npn \__fdudoc_preto_cmd:Nn #1#2 - { - \ctex_preto_cmd:NnnTF #1 { } {#2} - { } { \ctex_patch_failure:N #1 } - } -\cs_new_protected:Npn \__fdudoc_appto_cmd:Nn #1#2 - { - \ctex_appto_cmd:NnnTF #1 { } {#2} - { } { \ctex_patch_failure:N #1 } - } -\cs_set_protected_nopar:Npn \xmacro@code - { \__fdudoc_marco_code:w } -\cs_set_protected_nopar:Npn \sxmacro@code - { - \fontspec_print_visible_spaces: - \xmacro@code - } -\cs_new_protected_nopar:Npn \__fdudoc_marco_code:w - { - \ifcodeline@index - \__fdudoc_marco_code_every_par:n { \__fdudoc_code_line_no: } - \else: - \__fdudoc_marco_code_every_par:n { } - \fi: - \__fdudoc_make_finish_tag:x { \@currenvir } - \__fdudoc_macro_code_start:w - } -\cs_new_protected:Npn \__fdudoc_marco_code_every_par:n #1 - { - \everypar - { - \everypar {#1} - \if@inlabel - \global \@inlabelfalse \@noparlistfalse - \llap { \box \@labels \hskip \leftskip } - \fi - #1 - } - } -\group_begin: - \int_set:Nn \tex_endlinechar:D { -1 } - \use:n - { - \char_set_catcode_active:n { 32 } - \tl_const:Nn \c__fdudoc_active_space_tl - } - { } -\group_end: -\group_begin: - \char_set_catcode_active:n { 13 } - \cs_new_protected:Npx \__fdudoc_make_finish_tag:n #1 - { - \tl_set:Nn \exp_not:N \l__fdudoc_macro_code_finish_tl - { - \c_percent_str - \prg_replicate:nn { 4 } - { \exp_not:o { \c__fdudoc_active_space_tl } } - \exp_not:o { \active@escape@char } end - \c_left_brace_str #1 \c_right_brace_str - \exp_not:N ^^M - } - } - \cs_generate_variant:Nn \__fdudoc_make_finish_tag:n { x } - \cs_new_protected:Npn \__fdudoc_macro_code_start:w #1 - { - \str_if_eq:nnTF {#1} { ^^M } - { \__fdudoc_macro_code_read_line:w } - { \__fdudoc_macro_code_read_line:w #1 } - } - \cs_new_protected:Npn \__fdudoc_macro_code_read_line:w #1 ^^M - { - \tl_set:Nn \l__fdudoc_macro_code_line_tl { #1 ^^M } - \tl_if_eq:NNTF - \l__fdudoc_macro_code_line_tl \l__fdudoc_macro_code_finish_tl - { \exp_args:Nx \end { \@currenvir } } - { - \__fdudoc_macro_code_process_line: - \__fdudoc_macro_code_read_line:w - } - } - \cs_new_protected:Npn \__fdudoc_swap_cr: - { - \exp_after:wN - \__fdudoc_swap_cr_aux:w \l__fdudoc_macro_code_line_tl - } - \cs_new_protected:Npn \__fdudoc_swap_cr_aux:w #1 ^^M - { - \group_insert_after:N ^^M - \tl_set:Nn \l__fdudoc_macro_code_line_tl {#1} - } - \tl_const:Nn \c__fdudoc_active_cr_tl { ^^M } -\group_end: -\tl_new:N \l__fdudoc_macro_code_line_tl -\tl_new:N \l__fdudoc_macro_code_finish_tl -\tl_new:N \g__fdudoc_macro_code_verbatim_stop_tl -\cs_new_protected_nopar:Npn \__fdudoc_process_normal_line: - { - \str_case_e:nnF - { \str_head:N \l__fdudoc_macro_code_line_tl } - { - { \c_percent_str } - { - \__fdudoc_check_angle:x - { \tl_tail:N \l__fdudoc_macro_code_line_tl } - } - { \c_hash_str } - { \__fdudoc_output_comment_line: } - } - { \__fdudoc_output_line: } - } -\cs_new_protected_nopar:Npn \__fdudoc_process_verbatim_line: - { - \tl_if_eq:NNTF \l__fdudoc_macro_code_line_tl - \g__fdudoc_macro_code_verbatim_stop_tl - { - \tl_gclear:N \g__fdudoc_macro_code_verbatim_stop_tl - \cs_gset_eq:NN \__fdudoc_macro_code_process_line: - \__fdudoc_process_normal_line: - \__fdudoc_output_module:nn - { \color { verb@guard } } - { - \__fdudoc_swap_cr: - \__fdudoc_module_pop:n { \l__fdudoc_macro_code_line_tl } - } - } - { \tl_use:N \l__fdudoc_macro_code_line_tl } - } -\cs_new_eq:NN \__fdudoc_macro_code_process_line: - \__fdudoc_process_normal_line: -\DeclareDocumentCommand \CheckModules { } - { - \cs_set_eq:NN \__fdudoc_macro_code_process_line: - \__fdudoc_process_normal_line: - } -\DeclareDocumentCommand \DontCheckModules { } - { - \cs_set_eq:NN \__fdudoc_macro_code_process_line: - \__fdudoc_output_line: - } -\cs_new_protected:Npn \__fdudoc_check_angle:n #1 - { - \str_if_eq:eeTF { \str_head:n {#1} } { < } - { \__fdudoc_check_module:x { \tl_tail:n {#1} } } - { \__fdudoc_output_comment_line: } - } -\cs_generate_variant:Nn \__fdudoc_check_angle:n { x } -\cs_new_protected:Npn \__fdudoc_check_module:n #1 - { - \str_case_e:nnF { \str_head:n {#1} } - { - { * } { \__fdudoc_module_star:w } - { / } { \__fdudoc_module_slash:w } - { @ } { \__fdudoc_module_at:w } - { < } { \__fdudoc_module_verb:w } - } - { \__fdudoc_module_pm:w } - #1 \q_stop - } -\cs_generate_variant:Nn \__fdudoc_check_module:n { x } -\group_begin: - \char_set_catcode_active:N \> - \cs_new_protected:Npn \__fdudoc_module_star:w #1 > #2 \q_stop - { - \tl_set:Nn \l__fdudoc_tmpa_tl {#2} - \tl_if_eq:NNTF \l__fdudoc_tmpa_tl \c__fdudoc_active_cr_tl - { - \__fdudoc_output_module:nn - { \__fdudoc_star_color: } - { - \__fdudoc_module_push:n - { \__fdudoc_module_angle:n {#1} } - } - } - { - \__fdudoc_output_module_left:nn - { \__fdudoc_star_color: } - { - \__fdudoc_module_push:n - { \__fdudoc_module_angle:n {#1} } - } - } - \__fdudoc_output_line:n {#2} - } - \cs_new_protected:Npn \__fdudoc_module_slash:w #1 > #2 \q_stop - { - \tl_set:Nn \l__fdudoc_tmpa_tl {#2} - \tl_if_eq:NNTF \l__fdudoc_tmpa_tl \c__fdudoc_active_cr_tl - { - \__fdudoc_output_module:nn - { \__fdudoc_slash_color: } - { - \__fdudoc_module_pop:n - { \__fdudoc_module_angle:n {#1} } - } - } - { - \__fdudoc_output_module_left:nn - { \__fdudoc_slash_color: } - { - \__fdudoc_module_pop:n - { \__fdudoc_module_angle:n {#1} } - } - } - \__fdudoc_output_line:n {#2} - } - \cs_new_protected:Npn \__fdudoc_module_at:w @ @ = #1 > #2 \q_stop - { - \__fdudoc_output_module:nn - { \color { at@guard } } - { \__fdudoc_module_angle:n { @ @ = #1 } } - \tl_gset:Nn \g__codedoc_module_name_tl {#1} - \__fdudoc_output_line:n {#2} - } - \cs_new_protected:Npn \__fdudoc_module_verb:w #1 \q_stop - { - \cs_gset_eq:NN \__fdudoc_macro_code_process_line: - \__fdudoc_process_verbatim_line: - \tl_gset:Nx \g__fdudoc_macro_code_verbatim_stop_tl - { \c_percent_str \tl_tail:n {#1} } - \__fdudoc_output_module:nn - { \color { verb@guard } } - { - \__fdudoc_swap_cr: - \__fdudoc_module_push:n { \l__fdudoc_macro_code_line_tl } - } - } - \cs_new_protected:Npn \__fdudoc_module_pm:w #1 > #2 \q_stop - { - \__fdudoc_output_module_left:nn - { \__fdudoc_pm_color: } - { \__fdudoc_module_angle:n {#1} } - \__fdudoc_output_line:n {#2} - } -\group_end: -\cs_new_protected:Npn \__fdudoc_output_line:n #1 - { - \tl_set:Nn \l__fdudoc_macro_code_line_tl {#1} - \tl_if_eq:NNTF - \l__fdudoc_macro_code_line_tl \c__fdudoc_active_cr_tl - { \tl_use:N \l__fdudoc_macro_code_line_tl } - { - \str_if_eq:eeTF - { \str_head:N \l__fdudoc_macro_code_line_tl } { \c_percent_str } - { \__fdudoc_output_comment_line: } { \__fdudoc_output_line: } - } - } -\cs_new_protected_nopar:Npn \__fdudoc_output_line: - { - \tex_noindent:D - \__fdudoc_replace_at_at:N \l__fdudoc_macro_code_line_tl - \tl_use:N \l__fdudoc_macro_code_line_tl - } -\cs_new_protected:Npn \__fdudoc_output_comment_line: - { - \tex_noindent:D - \group_begin: - \__fdudoc_swap_cr: - \color { code@gray } \slshape \__fdudoc_output_line: - \group_end: - } -\cs_new_protected:Npn \__fdudoc_replace_at_at:N #1 - { - \tl_if_empty:NF \g__codedoc_module_name_tl - { \__fdudoc_replace_at_at_aux:No #1 \g__codedoc_module_name_tl } - } -\cs_new_protected:Npn \__fdudoc_replace_at_at_aux:Nn #1#2 - { - \tl_replace_all:Nnn #1 { _ @ @ } { _ _ #2 } - \tl_replace_all:Nnn #1 { @ @ } { _ _ #2 } - } -\cs_generate_variant:Nn \__fdudoc_replace_at_at_aux:Nn { No } -\cs_new_protected_nopar:Npn \__fdudoc_module_push:n - { \__fdudoc_module_push_aux:on { \int_use:N \c@HD@hypercount } } -\cs_new_protected:Npn \__fdudoc_module_push_aux:nn #1 - { - \seq_gpush:Nn \g__fdudoc_module_dest_seq {#1} - \hypersetup { hidelinks } - \exp_args:Nx \hdclindex - { \zref@extractdefault { HD.#1 } { guard@end } { 1 } } { } - } -\cs_generate_variant:Nn \__fdudoc_module_push_aux:nn { on } -\cs_new_protected_nopar:Npn \__fdudoc_module_pop:n - { - \seq_gpop:NNTF \g__fdudoc_module_dest_seq \l__fdudoc_tmpa_tl - { \__fdudoc_module_pop_aux:on { \l__fdudoc_tmpa_tl } } - { \BOOM \use:n } - } -\cs_new_protected:Npn \__fdudoc_module_pop_aux:nn #1 - { - \zref@labelbylist { HD.#1 } { fdudoc } - \hypersetup { hidelinks } - \hdclindex {#1} { } - } -\cs_generate_variant:Nn \__fdudoc_module_pop_aux:nn { on } -\seq_new:N \g__fdudoc_module_dest_seq -\zref@newlist { fdudoc } -\zref@newprop { guard@end } [ 1 ] - { \int_eval:n { \c@HD@hypercount - 1 } } -\zref@addprop { fdudoc } { guard@end } -\cs_set_protected:Npn \MacroFont - { - \linespread { 1.05 } - \small \ttfamily \mdseries \upshape - \__fdudoc_verb_addon: - } -\cs_new_protected:Npn \__fdudoc_output_module:nn #1#2 - { - \tex_noindent:D - \group_begin: - #1 - \footnotesize \normalfont \sffamily #2 - \group_end: - } -\cs_new_protected:Npn \__fdudoc_output_module_left:nn #1#2 - { - \tex_noindent:D - \hbox_overlap_left:n - { - \__fdudoc_output_module:nn {#1} {#2} - \skip_horizontal:n { \leftskip + \smallskipamount } - } - } -\cs_new_protected_nopar:Npn \__fdudoc_star_color: - { - \seq_gpop:NNTF \g__fdudoc_star_color_seq \current@color - { \set@color } - { \__fdudoc_select_color: } - \seq_gpush:No \g__fdudoc_slash_color_seq { \current@color } - } -\cs_new_protected_nopar:Npn \__fdudoc_slash_color: - { - \seq_gpop:NNTF \g__fdudoc_slash_color_seq \current@color - { - \set@color - \seq_gpush:No \g__fdudoc_star_color_seq { \current@color } - } - { \BOOM } - } -\cs_new_protected_nopar:Npn \__fdudoc_pm_color: - { - \seq_get:NNTF \g__fdudoc_star_color_seq \current@color - { \set@color } - { - \__fdudoc_select_color: - \seq_gpush:No \g__fdudoc_star_color_seq { \current@color } - } - } -\seq_new:N \g__fdudoc_star_color_seq -\seq_new:N \g__fdudoc_slash_color_seq -\cs_new_protected_nopar:Npn \__fdudoc_select_color: - { \color { guard@series!!+ } } -\definecolorseries { guard@series } - { cmyk } { last } { blue } { purple } -\resetcolorseries [ 3 ] { guard@series } -\definecolor { verb@guard } { named } { MaterialLime600 } -\definecolor { at@guard } { named } { MaterialPink } -\definecolor { code@gray } { named } { MaterialGrey } -\cs_new_protected:Npn \__fdudoc_module_angle:n #1 - { < #1 > } -\cs_new_protected_nopar:Npn \__fdudoc_code_line_no: - { - \int_gincr:N \c@CodelineNo - \hbox_overlap_left:n - { - \hbox_to_wd:nn - { \MacroIndent } - { - \HD@target - \tex_hss:D \__fdudoc_code_line_no_style: - \theCodelineNo \enspace - } - \tex_kern:D \@totalleftmargin - } - } -\tl_set:Nn \theCodelineNo { \arabic { CodelineNo } } -\cs_new_protected_nopar:Npn \__fdudoc_code_line_no_style: - { \color { code@gray } \normalfont \sffamily \tiny } -\cs_set_protected:Npn \HD@SetMacroIndent #1 - { - \group_begin: - \settowidth \MacroIndent - { - \__fdudoc_code_line_no_style: - \prg_replicate:nn { \tl_count:n {#1} } { 0 } - \enspace - } - \dim_gset_eq:NN \MacroIndent \MacroIndent - \group_end: - } -\sys_if_engine_xetex:TF - { - \cs_set_eq:NN \__fdudoc_verb_addon: \xeCJKVerbAddon - \cs_set:Nn \__fdudoc_plain_punct_style: - { \xeCJKsetup { PunctStyle = plain } } - \cs_set:Nn \__fdudoc_disable_ecglue: - { \xeCJKsetup { CJKecglue } } - \__fdudoc_appto_cmd:Nn \meta@font@select - { \mode_if_inner:T { \__fdudoc_disable_ecglue: } } - } - { - \cs_set_eq:NN \__fdudoc_verb_addon: \prg_do_nothing: - \cs_set_eq:NN \__fdudoc_plain_punct_style: \prg_do_nothing: - \cs_set:Nn \__fdudoc_disable_ecglue: - { \ltjsetparameter { autoxspacing = false } } - \__fdudoc_appto_cmd:Nn \meta@font@select - { \__fdudoc_disable_ecglue: } - } -\BeforeBeginEnvironment { function } - { \par \nointerlineskip } -\AtEndEnvironment { function } - { - \par - \cs_gset:Nx \__fdudoc_fix_previous_depth: - { \prevdepth = \the \prevdepth \space } - } -\AfterEndEnvironment { function } - { \__fdudoc_fix_previous_depth: } -\AtBeginEnvironment { syntax } - { - \linespread { 1.2 } - \__fdudoc_plain_punct_style: - \__fdudoc_disable_ecglue: - } -\AtBeginEnvironment { ccnusyntax } - { - \cs_set:Npn \lparen { \textup { ( } } - \cs_set:Npn \rparen { \textup { ) } } - \char_set_catcode_active:N | - \char_set_catcode_active:N < - \char_set_catcode_active:N ( - \char_set_active_eq:NN | \orbar - \char_set_active_eq:NN < \syntaxopt@aux - \char_set_active_eq:NN ( \defaultval@aux - } -\cs_new_eq:NN \__fdudoc_ltx_changes:nnn \changes@ -\cs_set_protected:Npn \changes@ #1#2 - { - \__fdudoc_save_version_date:nn {#1} {#2} - \__fdudoc_ltx_changes:nnn {#1} {#2} - } -\prop_new:N \g__fdudoc_version_date_prop -\cs_new_protected:Npn \__fdudoc_save_version_date:nn #1#2 - { - \prop_get:NnNTF \g__fdudoc_version_date_prop - {#1} \l__fdudoc_tmpa_tl - { - \exp_after:wN - \__fdudoc_save_version_date_aux:nnnn \l__fdudoc_tmpa_tl - {#2} {#1} - } - { \__fdudoc_save_version_date_aux:nnn {#1} {#2} {#2} } - } -\cs_new_protected:Npn \__fdudoc_save_version_date_aux:nnnn #1#2#3#4 - { - \__fdudoc_if_date_later:nnTF {#1} {#3} - { \__fdudoc_save_version_date_aux:nnn {#4} {#3} {#2} } - { - \__fdudoc_if_date_later:nnT {#3} {#2} - { \__fdudoc_save_version_date_aux:nnn {#4} {#1} {#3} } - } - } -\cs_new_protected:Npn \__fdudoc_save_version_date_aux:nnn #1#2#3 - { \prop_gput:Nnn \g__fdudoc_version_date_prop {#1} { {#2} {#3} } } -\prg_new_conditional:Npnn \__fdudoc_if_date_later:nn #1#2 { TF, T } - { - \if_int_compare:w - \__fdudoc_parse_date:w #1 / / / 0 \q_stop > - \__fdudoc_parse_date:w #2 / / / 0 \q_stop \exp_stop_f: - \prg_return_true: - \else: - \prg_return_false: - \fi: - } -\cs_new:Npn \__fdudoc_parse_date:w #1/#2/#3/ #4 \q_stop - { #1#2#3 } -\cs_new_protected:Npn \CTEX@versionitem #1 \efill - { - \@idxitem - \prop_get:NnNTF \g__fdudoc_version_date_prop - {#1} \l__fdudoc_tmpa_tl - { - \exp_after:wN - \__fdudoc_print_version_date:nnn \l__fdudoc_tmpa_tl - {#1} - } - { \BOOM } - } -\cs_new_protected:Npn \__fdudoc_print_version_date:nnn #1#2#3 - { - \noindent - \Hy@raisedlink { \belowpdfbookmark {#3} { HD.#3 } } - \textbf {#3} \hfill - \hbox:n - { - \footnotesize - \str_if_eq:nnTF {#1} {#2} - { ( #1 ) } { ( #1 ~ -- ~ #2 ) } - } - \par \nopagebreak - } -\ctex_patch_cmd:Nnn \HDorg@theglossary - { \let \item \@idxitem } - { \let \item \CTEX@versionitem } -\ctex_patch_cmd:Nnn \@wrglossary - { hdpindex } - { - \ifnum \c@HD@hypercount = \z@ - hdpindex - \else - hdclindex { \the \c@HD@hypercount } - \fi - } -\ctex_patch_cmd:Nnn \@addtocurcol - { \vskip \intextsep } - { - \edef \save@first@penalty { \the \lastpenalty } \unpenalty - \ifnum \lastpenalty = \@M - \unpenalty - \else - \penalty \save@first@penalty \relax - \fi - \ifnum \outputpenalty < -\@Mii - \addvspace\intextsep - \vskip\parskip - \else - \addvspace\intextsep - \fi - } -\ctex_patch_cmd:Nnn \@addtocurcol - { - \vskip \intextsep - \ifnum \outputpenalty < -\@Mii - \vskip -\parskip - \fi - } - { - \ifnum \outputpenalty < -\@Mii - \aftergroup \vskip \aftergroup \intextsep - \aftergroup \nointerlineskip - \else - \vskip \intextsep - \fi - } -\ctex_patch_cmd:Nnn \@getpen { \@M } { \@Mi } -\ctex_patch_cmd:Nnn \l@section { 2.5em } { 1.5em } -\ctex_patch_cmd:Nnn \l@subsection { 2.5em } { 1.5em } -\__fdudoc_preto_cmd:Nn \@thehead - { \cs_set_eq:cN { MakeUppercase \space } \@iden } -\ctex_patch_cmd:Nnn \HDorg@thebibliography - { \section* } { \section } -\cs_set_eq:NN \thebibliography \HDorg@thebibliography -\__fdudoc_appto_cmd:Nn \GlossaryParms - { - \raggedcolumns - \cs_set_eq:NN \Hy@writebookmark \HDorg@writebookmark - \cs_set:Npn \@idxitem { \par \hangindent 2em } - \cs_set:Npn \subitem { \@idxitem \hspace* { 1em } } - \cs_set:Npn \subsubitem { \@idxitem \hspace* { 2em } } - } -\ctex_patch_cmd:Nnn \HoLogo@LaTeXe - { \hbox { \HOLOGO@MathSetup 2 $ _{ \textstyle \varepsilon } $ } } - { - \hbox - { - \mathsurround 0pt \relax - 2 - \if b \expandafter \@car \f@series \@nil - $ _{ \textstyle \symbf { \varepsilon } } $ - \else - $ _{ \textstyle \varepsilon } $ - \fi - } - } -\ctex_patch_cmd:Nnn \SpecialMainEnvIndex - { (environment) } { ~ 环境 } -\ctex_patch_cmd:Nnn \SpecialMainEnvIndex - { environments: } { 环境: } -\ctex_patch_cmd:Nnn \HDorg@SpecialEnvIndex - { (environment) } { ~ 环境 } -\ctex_patch_cmd:Nnn \HDorg@SpecialEnvIndex - { environments: } { 环境: } -\cs_set_eq:NN \list \__codedoc_oldlist:nn -\__fdudoc_patch_cmd:Nnn \__codedoc_function_descr_start:w - { \noindent } - { \skip_vertical:n { -\parskip } \noindent } -\__fdudoc_preto_cmd:Nn \__codedoc_function_assemble: - { - \box_if_empty:NTF \g__codedoc_syntax_box - { \skip_zero:N \medskipamount } - { \skip_add:Nn \medskipamount { \parskip } } - } -\__fdudoc_patch_cmd:Nnn \__codedoc_typeset_functions: - { \small \ttfamily } { \footnotesize \ttfamily } -\__fdudoc_preto_cmd:Nn \__codedoc_typeset_functions: - { \MacroFont } -\__fdudoc_patch_cmd:Nnn \__codedoc_macro_init: - { \hbox:n } { \MacroFont \hbox:n } -\__fdudoc_patch_cmd:Nnn \__codedoc_macro_dump: - { \hbox_unpack_drop:N } { \MacroFont \hbox_unpack_drop:N } -\__fdudoc_patch_cmd:Nnn \__codedoc_meta_original:n - { \ensuremath \langle } { \textlangle } -\__fdudoc_patch_cmd:Nnn \__codedoc_meta_original:n - { \ensuremath \rangle } { \textrangle } -\cs_set_eq:NN \__codedoc_macro_end_style:n \use_none:n -\cs_set_protected:Npn \__codedoc_typeset_TF: - { - \group_begin: - \exp_args:No \__codedoc_if_macro_internal:nT \l__codedoc_tmpa_tl - { \color [ gray ] { 0.5 } } - \itshape TF - \makebox [ 0 pt ] [ r ] - { - \color { red } - \underline { \phantom { \itshape TF } \kern -0.1 em } - } - \group_end: - } -\cs_set_protected:Npn \__codedoc_macro_typeset_one:nN #1#2 - { - \vbox_set:Nn \l__codedoc_macro_box - { - \MacroFont - \vbox_unpack_drop:N \l__codedoc_macro_box - \hbox_set:Nn \l_tmpa_box - { \__codedoc_print_macroname:nN {#1} #2 } - \dim_set:Nn \l_tmpa_dim - { \marginparwidth - \labelsep - \marginparsep } - \dim_compare:nNnT { \box_wd:N \l_tmpa_box } > \l_tmpa_dim - { - \box_resize_to_wd_and_ht:Nnn \l_tmpa_box - { \l_tmpa_dim } { \box_ht:N \l_tmpa_box } - } - \hbox_overlap_left:n - { - \box_use:N \l_tmpa_box - \skip_horizontal:n { \marginparsep - \labelsep } - } - } - \int_incr:N \l__codedoc_macro_int - } -\cs_set_protected:Npn \__codedoc_print_macroname:nN #1#2 - { - \strut - \__codedoc_get_hyper_target:xN - { - \exp_not:n {#1} - \bool_if:NT #2 { \tl_to_str:n {TF} } - } - \l__codedoc_tmpa_tl - \cs_if_exist:cTF { r@ \l__codedoc_tmpa_tl } - { \exp_args:NNo \label@hyperref [ \l__codedoc_tmpa_tl ] } - { \use:n } - { - \tl_set:Nn \l__codedoc_tmpa_tl {#1} - \tl_replace_all:Non \l__codedoc_tmpa_tl - { \c_catcode_other_space_tl } - { \fontspec_visible_space: } - \__codedoc_macroname_prefix:o \l__codedoc_tmpa_tl - \__codedoc_macroname_suffix:N #2 - } - } -\cs_set_protected:Npn \__codedoc_special_index_module:nnnnN #1#2#3#4#5 - { - \use:x - { - \exp_not:n { \__codedoc_special_index_aux:nnnnnnn {#1} {#2} } - \tl_if_empty:nTF {#3} - { { } { } { } { } } - { - \str_if_eq:eeTF {#3} { TeX } - { - { TeX~ and~ LaTeX2e } - { \string \TeX{}~ 和~ \string \LaTeXe{} } - } - { {#3} { \string \pkg {#3} } } - \bool_if:NTF #5 - { { commands~ internal } { ~ 内部命令: } } - { { commands } { ~ 命令: } } - } - } - {#4} - } -\cs_new_protected:Npn \__codedoc_special_index_aux:nnnnnnn #1#2#3#4#5#6#7 - { - \tl_set:Nn \l__codedoc_index_escaped_key_tl {#1} - \__codedoc_quote_special_char:N \l__codedoc_index_escaped_key_tl - \__codedoc_special_index_set:Nn - \l__codedoc_index_escaped_macro_tl {#2} - \str_if_eq:onTF { \@currenvir } { macrocode } - { \codeline@wrindex } - { - \str_case:nnF {#7} - { - { main } { \codeline@wrindex } - { usage } { \index } - } - { \HD@target \index } - } - { - \tl_if_empty:nF { #3 #4 #5 #6 } - { #3 #5 \actualchar #4 #6 \levelchar } - \l__codedoc_index_escaped_key_tl - \actualchar - { - \token_to_str:N \verbatim@font \c_space_tl - \l__codedoc_index_escaped_macro_tl - } - \encapchar - hdclindex { \the \c@HD@hypercount } {#7} - } - } -\DeclareDocumentCommand \StopSpecialIndexModule { } - { - \cs_set_eq:NN - \__codedoc_special_index_module:nnnnN \use_none:nnnnn - } -\tl_map_inline:nn { \actualchar \encapchar \levelchar } - { \exp_args:Nx \DoNotIndex { \bslash \tl_to_str:N #1 } } -\RenewDocumentCommand \meta { m } - { - \group_begin: - \sys_if_engine_xetex:T { \xeCJKsetup { CJKecglue = { } } } - \__codedoc_meta:n {#1} - \group_end: - } -\msg_redirect_name:nnn { l3doc } { foreign-internal } { log } -\msg_redirect_name:nnn { l3doc } { print-changes-howto } { log } -\msg_redirect_name:nnn { l3doc } { print-index-howto } { log } -\ExplSyntaxOff -\AtBeginDocument{% - \addtocontents{toc}{\StopSpecialIndexModule}} -\pdfstringdefDisableCommands{% - \let\path\meta - \let\opt\@firstofone} -\let\@multitoc@starttoc\@starttoc -\renewcommand*\@starttoc[1]{% - \begin{multicols}{2}% - \@multitoc@starttoc{#1}% - \end{multicols}} -\renewcommand\@makefntext[1]{\parindent 0em\noindent\@makefnmark~#1} -\IndexPrologue{% - \section{\indexname}% - \textit{意大利体的数字表示对应索引项出现的页码; - 带下划线的数字表示定义对应索引项的代码行号; - 其他则表示使用对应索引项的代码行号。}} -\def\IndexLayout{% - \newgeometry{% - left = 0.85 in, - right = 0.85 in, - top = 1.25 in, - bottom = 1.00 in}% - \setlength\IndexMin{0.5\textheight}% - \ctexset{section/numbering=false}% - \StopSpecialIndexModule} -\def\indexname{代码索引} -\GlossaryPrologue{\section{\glossaryname}} -\def\glossaryname{修订记录} -\setmainfont{LibertinusSerif}[% - Extension = .otf, - UprightFont = *-Regular, - BoldFont = *-Bold, - ItalicFont = *-Italic, - BoldItalicFont = *-BoldItalic, - Scale = 1.1] -\setsansfont{IBMPlexSansCondensed}[% - Extension = .otf, - UprightFont = *-Regular, - BoldFont = *-Bold, - ItalicFont = *-Italic, - BoldItalicFont = *-BoldItalic] -% \setmonofont{Iosevka Slab}[% -% UprightFont = * Light, -% BoldFont = * Semibold, -% ItalicFont = * Light Oblique, -% BoldItalicFont = * Semibold Oblique, -% Scale = MatchLowercase] -\setmonofont{cmun}[% - Extension = .otf, - UprightFont = *btl, - BoldFont = *tb, - ItalicFont = *bto, - BoldItalicFont = *tx, - HyphenChar = None] -\setmathfont{LibertinusMath-Regular.otf} -\setmathfont {NewCMMath-Book} - [ - Extension = .otf, - StylisticSet = 1, - range = { \subsetneqq, \supsetneqq, \checkmark} , - ] -\setCJKmainfont{Source Han Serif SC}[% - ItalicFont = FandolKai, - CharacterWidth = Full] -\setCJKsansfont{Source Han Sans SC}[% - ItalicFont = *, - CharacterWidth = Full] -\setCJKmonofont{Source Han Sans SC}[% - UprightFont = * Normal, - BoldFont = * Bold, - AutoFakeSlant = 0.1763, % = tan(10 deg) - Scale = 0.8903, - CharacterWidth = Full] -\ctexset{% - section/name = {第,节}, - section/format+ = \raggedright, - paragraph/runin = false, - paragraph/numbering = false, - punct = kaiming} -\xeCJKsetwidth{·}{0.5em} -\setcounter{secnumdepth}{4} -\setcounter{tocdepth}{3} -\pagestyle{plain} -\sisetup{% - inter-unit-product = \ensuremath{{}\cdot{}}, - range-phrase = {--}, - uncertainty-mode = separate} -\hypersetup{% - bookmarksdepth = 4, - bookmarksnumbered = true, - colorlinks = true, - citecolor = MaterialGreen, - linkcolor = MaterialPink, - urlcolor = MaterialIndigo} -\captionsetup{labelsep=quad, font+=bf} -\newcolumntype{C}{>{\centering\arraybackslash}X} -\setlist{noitemsep, topsep=\smallskipamount} -\setlist[1]{labelindent=\parindent} -\setlist[enumerate]{leftmargin=*} -\setlist[itemize]{leftmargin=*} -\newlist{optdesc}{description}{3} -\setlist[optdesc]{% - font = \mdseries\small\ttfamily, - align = right, - listparindent = \parindent, - labelsep = \marginparsep, - labelindent = -\marginparsep, - leftmargin = *} -\renewlist{tablenotes}{description}{1} -\setlist[tablenotes]{% - format = \normalfont\itshape\tnote@item, - labelwidth = 0.5em, - itemindent = 0pt, - rightmargin = \tabcolsep, - leftmargin = \the\dimexpr\tabcolsep+1em\relax, - after = \@noparlisttrue} -\AtBeginEnvironment{tablenotes}{% - \setlength\parindent{2\ccwd}% - \normalfont\footnotesize} -\AtBeginEnvironment{threeparttable}{% - \stepcounter{tpt@id}% - \edef\curr@tpt@id{tpt@\arabic{tpt@id}}} -\newcounter{tpt@id} -\def\tnote@item#1{% - \Hy@raisedlink{\hyper@anchor{\curr@tpt@id-#1}}#1} -\def\TPTtagStyle#1{\textit{\hyperlink{\curr@tpt@id-#1}{#1}}} -\def\UrlAlphabet{% - \do\a\do\b\do\c\do\d\do\e\do\f\do\g\do\h\do\i\do\j% - \do\k\do\l\do\m\do\n\do\o\do\p\do\q\do\r\do\s\do\t% - \do\u\do\v\do\w\do\x\do\y\do\z\do\A\do\B\do\C\do\D% - \do\E\do\F\do\G\do\H\do\I\do\J\do\K\do\L\do\M\do\N% - \do\O\do\P\do\Q\do\R\do\S\do\T\do\U\do\V\do\W\do\X% - \do\Y\do\Z} -\def\UrlDigits{% - \do\1\do\2\do\3\do\4\do\5\do\6\do\7\do\8\do\9\do\0} -\g@addto@macro\UrlBreaks{\UrlOrds} -\g@addto@macro\UrlBreaks{\UrlAlphabet} -\g@addto@macro\UrlBreaks{\UrlDigits} -\DoNotIndex{\begin,\end, - \a,\b,\c,\d,\e,\f,\g,\h,\i,\j,\k,\l,\m, - \n,\o,\p,\q,\r,\s,\t,\u,\v,\w,\x,\y,\z, - \A,\B,\C,\D,\E,\F,\G,\H,\I,\J,\K,\L,\M, - \N,\O,\P,\Q,\R,\S,\T,\U,\V,\W,\X,\Y,\Z, - \0,\1,\2,\3,\4,\5,\6,\7,\8,\9} -\EnableCrossrefs -\CodelineIndex -\RecordChanges -\newcommand*\exptarget{\Hy@raisedlink{\hypertarget{expstar}{}}} -\newcommand*\rexptarget{\Hy@raisedlink{\hypertarget{rexpstar}{}}} -\newcommand*\expstar{\hyperlink{expstar}{$^^^^263b$}} -\newcommand*\rexpstar{\hyperlink{rexpstar}{$^^^^263a$}} -\ExplSyntaxOn -\cs_set_eq:NN \__codedoc_typeset_exp: \expstar -\cs_set_eq:NN \__codedoc_typeset_rexp: \rexpstar -\ExplSyntaxOff -\renewcommand*\marg[1]{\{\meta{#1}\}} -\renewcommand*\oarg[1]{[\meta{#1}]} -\renewcommand*\parg[1]{(\meta{#1})} -\DeclareDocumentCommand\opt{m}{\texttt{#1}} -\DeclareDocumentCommand\kvopt{mm} - {\texttt{#1\breakablethinspace=\breakablethinspace#2}} -\def\breakablethinspace{\hskip 0.16667em\relax} -\def\syntaxopt#1{\textit{#1}} -\def\defaultval#1{\textbf{\textup{#1}}} -\def\syntaxopt@aux#1>{\syntaxopt{#1}} -\def\defaultval@aux#1){\defaultval{#1}} -\def\orbar{\textup{\textbar}} -\def\TF{true\orbar false} -\def\TTF{\defaultval{true}\orbar false} -\def\TFF{true\orbar\defaultval{false}} -\DeclareDocumentEnvironment{arguments}{} - {\enumerate[% - label={\texttt{\#\arabic*:~}}, labelsep=0pt, nolistsep]}% - {\endenumerate} -\def\TeX{\hologo{TeX}} -\def\LaTeX{\hologo{LaTeX}} -\def\LaTeXe{\hologo{LaTeXe}} -\def\pdfTeX{\hologo{pdfTeX}} -\def\pdfLaTeX{\hologo{pdfLaTeX}} -\def\XeTeX{\hologo{XeTeX}} -\def\XeLaTeX{\hologo{XeLaTeX}} -\def\LuaTeX{\hologo{LuaTeX}} -\def\LuaLaTeX{\hologo{LuaLaTeX}} -\def\AmSLaTeX{\hologo{AmSLaTeX}} -\def\TeXLive{\TeX\ Live} -\def\MiKTeX{\hologo{MiKTeX}} -\def\BibTeX{\hologo{BibTeX}} -\def\BibTeX{\hologo{BibTeX}} -\def\biber{\hologo{biber}} -\def\TikZ{Ti\emph{k}Z} -\renewcommand*\env[1]{\textbf{\texttt{#1}}} -\newcommand*\bashcmd[1]{\texttt{#1}} -\lst@CCPutMacro\lst@ProcessOther {"2D}{\lst@ttfamily{-{}}{-{}}} -\@empty\z@\@empty -\lstdefinestyle{style@base} - { - basewidth = 0.5 em, - gobble = 2, - lineskip = 2 pt, - frame = l, - framerule = 1 pt, - framesep = 3 pt, - escapeinside = {(*}{*)}, - basicstyle = \small\ttfamily\color{MaterialGrey900}, - keywordstyle = \bfseries\color{MaterialIndigo}, - commentstyle = \itshape\color{MaterialGrey600}, - stringstyle = \color{MaterialRed}, - backgroundcolor = \color{MaterialGrey50} - } -\lstdefinestyle{style@shell} - { - style = style@base, - rulecolor = \color{MaterialPink}, - language = bash, - alsoletter = {-}, - emphstyle = \color{MaterialGreen800} - } -\lstdefinestyle{style@latex} - { - style = style@base, - rulecolor = \color{MaterialIndigo}, - language = [LaTeX]TeX, - alsoletter = {*, -}, - texcsstyle = *\color{MaterialDeepOrange}, - emphstyle = [1]\color{MaterialGreen800}, - emphstyle = [2]\color{MaterialTeal}, - morekeywords={document}, - autogobble = true, - morecomment = [l][\color{gray6}\itshape]{\%}, - breaklines, - % breakatwhitespace, - prebreak = {\mbox{$ \rhookswarrow $}}, - postbreak = {\mbox{$ \lhookrightarrow $\quad}}, - breakindent = 10pt, - % linewidth = \linewidth - } -\lstdefinestyle{style@syntax} - { - basewidth = 0.5 em, - gobble = 4, - escapeinside = {(*}{*)}, - language = [LaTeX]TeX, - alsoletter = {*, -}, - basicstyle = \footnotesize\ttfamily\color{MaterialGrey900}, - keywordstyle = \bfseries\color{MaterialIndigo}, - commentstyle = \itshape\color{MaterialGrey600}, - texcsstyle = *\color{MaterialDeepOrange}, - emphstyle = [1]\color{MaterialGreen800}, - emphstyle = [2]\color{MaterialTeal} - } -\lstnewenvironment{bashcode}[1][]{% - \lstset{style=style@shell, #1}}{} -\lstnewenvironment{shellcode}[1][]{% - \lstset{style=style@shell, #1}}{} -\lstnewenvironment{latexcode}[1][]{% - \lstset{style=style@latex, breaklines = true, #1}}{} -\lstnewenvironment{ccnusyntax}[1][]{% - \lstset{style=style@syntax, #1}\vspace{-1.8ex}}{} -\lstdefinelanguage{mylatex}{ - language={[LaTeX]TeX}, - texcsstyle =*\color{azure4}\bfseries, - keywordstyle=\color{green5}\bfseries, - morekeywords={document}, - autogobble = true, - morecomment = [l][\color{gray6}\itshape]{\%}, -} - -\newtcblisting{latexexample}[2][]{% - % breakable, - skin = bicolor, - colbacklower = white, - fonttitle = \ttfamily, - boxrule = 1pt, - toprule = 1pt, % top rule weight - bottomrule = 1pt, % bottom rule weight - left = 2mm, - parbox = false, - before upper = \indent, - title = {#2}, - #1, - listing options = { - language = mylatex, - % style = tcblatex, - numbers = left, - % numberfirstline=true, - stepnumber=1, - numbersep =0pt, - numberstyle=\tiny\color{red!75!black}, - basicstyle = \small\ttfamily, - breaklines, - % breakatwhitespace, - prebreak = {\mbox{$ \rhookswarrow $}}, - postbreak = {\mbox{$ \lhookrightarrow $\quad}}, - breakindent = 10pt, - autogobble = true, - } -} - - - -% make line numbers unable to be selected -% ref: https://liam.page/2013/11/04/LaTeX-listings-copy/ -\ExplSyntaxOn -\newcommand\emptyaccsupp[1]{ - \BeginAccSupp{ActualText={}} #1 \EndAccSupp{} -} - -\renewcommand\theFancyVerbLine{ - \emptyaccsupp{ - \textcolor[rgb]{0.5, 0.5, 1.0}{ - \scriptsize\arabic{FancyVerbLine} - } - } -} -\ExplSyntaxOff - - -% option "minted options app" has been added to tcolorbox, -% "hooks" library since v4.21, see -% https://github.com/T-F-S/tcolorbox/issues/73 -% \makeatletter -% \tcbset{ -% % see tcbminted.code.tex, def of "minted options" -% % minted options/.store in=\kvtcb@minted@options, -% minted options app/.code=\appto\kvtcb@minted@options{,#1} -% } -% \makeatother - -% define new option -\fvset{gobble=0} -\tcbset{ - example options/.style={ - skin=bicolor, - colbacklower=white, - fonttitle=\sffamily, - % minted options app={ - % % line numbers - % linenos, - % numberfirstline=true, - % stepnumber=1, - % numbersep=5pt, - % % break point - % breakbefore=\\, - % } - }, - example title/.style 2 args={ - title=Example\ifblank{#1}{}{ #1}\ifblank{#2}{}{: #2} - } -} - - -% % new env: example -% % #1 - , tcb-listing options -% % #2 - , title -% \NewTCBListing[auto counter]{latexexample}{ O{} m }{ -% example options, -% example title={\thetcbcounter}{#2}, -% #1 -% } - -% % new env: example* -% % like example, except that it is un-numbered -% \NewTCBListing{latexexample*}{ O{} m }{ -% example options, -% example title={}{#2}, -% #1 -% } -% %% diff --git "a/reference/\345\215\232\345\243\253/\346\255\246\346\261\211\345\244\247\345\255\246\345\255\246\344\275\215\350\256\272\346\226\207\344\275\277\347\224\250\346\216\210\346\235\203\345\215\217\350\256\256\344\271\246.doc" "b/reference/\345\215\232\345\243\253/\346\255\246\346\261\211\345\244\247\345\255\246\345\255\246\344\275\215\350\256\272\346\226\207\344\275\277\347\224\250\346\216\210\346\235\203\345\215\217\350\256\256\344\271\246.doc" index 002ce2ee8060d7bf0afe2d20c2d613d3dec53eb5..4d78208fd6c4c7cff37a3ce080d2361114ca106d 100644 GIT binary patch literal 13824 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 literal 28672 zcmeHQ2Ut|cw?Dhf(tDE@Sr8EwVd;p1AgCzPK}A%gEbP)dRzLy8@();|CN@;;iV$n; zy~Z9Dqed)PVnd@6V`SesyIkE6Nlaee_r3p@9lqZ^Q_h?-b7t<`JLR(H&gwKQt24O; zZJZZyphc_#iZbym^gA(OZ2%YaQ(TK!ET(8j1bXG}zsLfQR~~@qVig5|rm%g~hyd8K z=#&ArX#r?LTyk9UhF>=PB8mOYMM2pR+>!fCB};;9)EWN3iNz?e)wSnm(zi=I5lYf9 z(Z%{w{~ys-76~IY0(t6MBR@vfF?|oF6J^o^%>W)?O-{7t`!iZ?Kw1FW(*33YY>YpM zl-#FKE97(O2(TP8Uf}_FVE7*9w?Nv~F?L||woPZ^+oL2`)-m!J%G8_Tq3|^fD4~4} zkq)EFM=0r=i}7vcv<>?i156+TwK_%~6aG}n)Q{{f>)Og|8|kg`wZ>MM@s#V93x++wef>6vns|jVJ2O|{103hxr`{L zy+}_zwi9D#hBEq@FhiOA?NNrWEoJ&6L)**G#54MtaC@|^9wyA#nF+T?8M#dRwxxfT z-j@HL3N!81Ub)+gXUh9mX?yZ$Y}Ud7G+qzKE9~`L(8a5Yf&xB4&K z!JqwUKw`?k)Gkqp(TUN4!8>P66%+;AAS-LO&0poGd=+VK__k zmyK75=yP|ZxmHbWbOq6CT2nnCBs>W?8w9zjp@OY;N6&c&;t4X9Kk)n=%L@X3(S zqO#D`P|m0am5O18al+6Cm1UvdM6>xC06{Fi%~0DUl6o$_Iw(9Qca*wVJwhw?L(aya zli@vr-VLe$YT)=N!Pmu9iyOg<=DnS8vrt*=3qCLy20}Qfh*|vluPlU&6)2r*-I#QH z#>w!&FrVQqZ7sW0uT(%N3SkOwMDO|3{!H6bn^QYe+rB_p zV*62hGHux`+h~tv1Gi)Y7i9xS+70}Mt^L3*Spnb32L2oU_;dsn1JF$nvRI&3?aoR{ zpl%Hs2B1@Vo28rJ-vThy?>LOckZfARZ_*l=G*tuOSYeVnW{b6I8~gJ+*;pk#)LV%q zXqBrrv(4zUtTT;2_OPro1WBn?D^)?-7^E4|c5Lzq-7(|s3~sT_(0zq8vgD6a3z}FV z44o?YFa~-A4U4uJI_1lL^OPe-1m}dlolu(Z7iu0uW0g&wTO2bo^MZ9NX(XK)Q5_T) zPd+wZS$re-sASB&Gwo=!W&}MY5>jaNr>6+>lu;HJj@O7#5u4zeh4k-ZPc#+4=U6n8 z(u~gzhMOo8FH2?lTeX7Cz*(4bLEbbhLn?}v{9geb@=C;D>ziTvm8U% z;E_o~t$FQaJ6`QkAB$RLB}+u7$||lEqH`@khuUzCQEdZ9y>cz}VY!oAKyCrK1>_cx zTR?6Bxdr4FkXt}*0l5X_7LZ#&ZUMOkI?-tG`j}jjJqX7w7D^ig>iSx(vK2r{xL^TKa!%10)45hGMcODCBiVN`V(C{~vb?Po z@QhpQ78|p*Mgq}Ufe-J6co|al)+KjsykF~=RL|I&;#oR0Iy{)T`hp045^qMT{uza_ ze<>XGg3NZj#cbA>J;MW&zwdWR1dL zEJoYGmt-xL9o9@oB8jiag|TrDQu_<13T%@|r#3zVXj3v4;V03o!}0@lmUb(@stmuZ zZX-!9S;bPVy5J5i_AkU1EO#uw9?PldkH`eA{WtDQg$B}whv3Hm9MDsJFN~_7AiT@>!f-|q3&3W zvxSxn7KE{EQ9t&1+O0#anUeEbTrdC!D;Cxy0JRZ!NB~DcAA5>2a#_IS>AUsl@T3{u zDR@K%qJ1;ca|P+SF%e@k1vw+_#-ycgm~|@o5MR4rb6HEtxo!2?J8f3hpIJVzV502> zEu*`2J(4R*omEcUEO@*lWT$eE+)mnYXTBUCSyOSRO4Df0PZ19zM+wUkCf-@I{^i@J zU3XpS<`BXu>9XOa%A8SGt_*E_s?YEG<*JB>OM3P;nv+`5srtH-)mYI)vq_C6z4Z1M zdQZK#&F1OMSBL!<&4<6-^mC&#(k5I2}R9 z{c?qZG=aU$H83_kHc608okRWGK-EJ$ZSPwXmlafAb&KC+(=YDpQ#HF@gYO~}pJP=Q zmR`Hkc&Ehe%uW4E3j;KwY!@kMOc$KCE8pHU!FILjn(zJ1j@YK&I%aV1;TWS6TmGYW zbKvou(21QcRhDhsdV_a)YxheQ&unju`o=2RbH;$74=y%$z1{CocWYI)`^O7^%q&fR z5k6K!@xUd$BFPk6S_KCx_T#9)4AXu_dpkWh?>{~xzDvHzfV_3}b*93L{p+H?yEDe~ zhsERalU$sFel$(4@b@pDJg!Rj_CXfwi{UC(CpQi3+O6M@F%65qyzwe%xAj0%AMPuQ z=V!d0H6PpUw0F$Ipu^|9bY{QU@i6l2(B6J=OSMF1&U;MXJ^jW-Yhc+Oi^Sg6ff<9U z3q*I`HQU|JGnie@tEy=9NFTQ>?8Gk@X1|OzKJ`;?3y0mNSvs-Y3d><8suN&Br)^tC ztlePOZ^6-y)3X#(H&yiiuFHd~XZP*?`QD`Mv$CG?wRO6$?J&W5+*fW{{_6SeHOZxm zPP*y|%{Q-7nmpy#s^F(KS`M}byM^NnetJI7)z0qLtGVTCxm&n9Yu;4nc0G`}J2heY z=t{MX`6>TVi|$#(8J*nm%ER367bl-N3$@QmRt}kOd3Jcg#_vy#G4y`@sQ0t{m7~^v z^D|rgMbE{i8;7j_!9TBVu*UJiji+y2>9&6BX@OFPw_(iELsy0`eDZo-i5qW5%;G}@ z_Rd36?0zWj+yBmUv*Aixt_6N`zfvdZ+R7%E;!TlZKdW=ERwm6ibhuqNd~S-)-qZa$ zfXVUNQA!v*V=Lqup!nCGdg< zoY!*b5te#%(qV_oVS|1yhYcx{oq?x^S-hEw8<%*Q+M2xM1t^a^bXdb)`d|ykMXoUv0?jGos5G^B8I438}R)z%j@S?UAq_Of3s!DuCgxA?It-d zy*cKGt=9{BTzPwT`}KaWCS2&>>(Rz@`LC{zo*L(5IY6z;T^+%O)vIQX_#)ANUTv`Y zuG%#ZzkObLx63N4(oLe6g3L+#rzon_crEYtxXgVLYuAq=>qlyp0fIC$WU?fe&) z#~5As!qf2bt4Rl5bEaL=H2=QQV9%n(YT2%d+f}~3<)pV|x$&Zi`jcgIyDoU=ad6%6 zwR!>TO)d>ypHtmv?W=x2u;j?~h5TZkQS|;(>odKtEWb5+vaxaUzH58j)MiXO7&XOz z${7C(MxtH!<0D*rPG%puuHgN2?qPrP7oR^L?latX^F)rQi%MANh_p#NY{zBjuCy&l z3cZjwzS=Bmgl&-Fijq}V*4SV1ynCnm;eQ$itHrEPSZ?>~+o@6D=DSzd^+`pK#PG(= zLRZH_*Dco^bSZoFcF}<#bN|wa=wVY_UA|rK%pJC&bJV-}j~Xs-cHE!%ONy}WYsC{y zn?$U_T;G8Hoo=s>t5xg%eZgyow3QQ>w#Bm<2S2xw-SC7a8ODw*~bcywtTv$Bb z`AOPOC)3V|&KqQGQa@7@Kd;n1ZTn8Y&4adOh9CPz^WNI3j`c&Ns?C^`os1vzGPM9BHGn_ND>feZdc`tL%chCX?B!>2ppO z`MiEr6rD3~YS$F^rnR0XJfGM;Vas?49loD^VsHF{$cuYUeVx#?)0|Llo*?d0$I6KZ zf7z*2^W&Zyz82LxA6kn{`8!s;x$m{wz*+faW%vfS)l=_|-?VX3(YP0NN7Va&GqGOX z`Acz*K|p?FK*sUSd$tS93mr^1Cr3pV*B%^l&i_=4OQd__kd$7R7ackEYH-i;+q;j{ zF3|E*x!%lsr}Vl{w+a0Rn>^CkdbYW0yXDWze4I+QOxoa;q@-1CT0PQie?vltG)K{p z%Ud5lsNOR#?Q&A@hxf88+@n+SXOCHW;p&^rd((50pW7~8Jg)xv){)TMD*T{K+# zScN`*qETb3Y&SJ_@0X%o^B14ci+B9NLAcID+2i3CSzjGU+wu5w?=ZulX;*tC)Q+C~ zd4}5)gQQsjHi6bwVK#OS3$iu444Sj(-1LYy#Wn6LDu&#(T(QdM_^xyQ&3O~6o-brg zIAXOYPJ8?%FrF9km3Z?zcav#J_U48oTS9$uu9k6amLL7Lq0_>3gB4Cj@7#I#=KHF% z*gf!jgZAD|kxj;ZI^9I*8W7~J24;l6GP5E~(6*A^;E2-@Z z$p=a2KPE}?deT-#+fML7#xgt+DO;L9=n^3TTzoI0Bk)`piM3y(N}=9;@O6lnFUZaj zWu$vrI@s|od4lx#j0917lBZ>4ME@S{mb{$Y*z|XKC+6)}xQg@cbz* z7;q&Y7t*YX4i(cfCF3WfV^otn#erfIEhMp#4_hCnxgS7bZ|L|Og`q6G;2GcI;$px< zt=cGn-837caNgTQGdD>_TrJW9P7@!)TAWJQbs6ZP|ks1)=RT&gGbojOphb7Ui(?l60$w+aj0IU(c5f2a#5tPVA zs3Wux+6X;_J|YG&8X-ayB8n075DO6J5cGXgJ>n|j27)VD{iPM)PXnoUMf5~aekJ@e z6h8!cAF4$km7grxh#*IGh$>>i7+jE}vxWxg3NYS;3wqvMSenlTYg0worKAi6Jyl?K zqzX)TR)r0NRH2hV4Rjne;q7QmSgmIW20aWxsAU4H6Fb5%MGLrVXbBG!I)jI@HQecF z4Q9QqVUBYb7~9bn!hP)Fl+YeN({_R<#!jHZb%EV}F0e+?6;ubiLRN??L~=YpXzc-G zZ9PCCxEFjT=naACo}i=e1sYmDu)^L4HsLygN~|wb^Zj6>Yd=U4^@Fzq`{N9501ONC zhZW)e(7|aS{KO7`mAV1okrMzx-GiXnB?#`vg+Q};7$^jUL%wn(oE{Jft2Bqh@|5B5 z$bTdRjTnhE2Bw9?K)LH^nBXOV!~F!{>YD_8^@K2iCxnJ>LKxvCf}y@5*l&>xIkw3# ztA8>aP)dbmDH$+oSSGw0lm+IQSztXe3#uG);N{pH$y$Y_SpnQmD}bWlv2d^dI9Mkf z2fVcLU|CcM%X$^TcZePqoRIjYORAbbTJ(67eB`75EqcNLT>uEtaQYv54f8Yt+z79Ja| zhd`(GFxt8X4DD;6SKm#bm9+^1)i=Y>KHK2YpluKdJ7A#e4)}4@KA0YQ2uczUN!EH6 z^*jy@nI|B_;uNg(JdJnIS(s^m0d#dP!xW<{uz&0oc;i+Ni;Ql9X3#BoJNy>7+1`e6 zws&9{_CC9g_aIStA51$xfKZPg;kCvi*fX{Xa!j7X9^P}fuJIC5BVNLE(M!14wHem* zY=%PPH;~!oS6E`z0(YZYV5hJJW)-$b`Y{bj)aS_&5##MkJ0`)92f0|fTo?$-Xie(xKUU(&n_W+1M-d4eVW5x+0W$wdhtH1Hq-rDkHB zl#2&JScWtVC;ToY95QfiF!v+zxsp}G+}6Btm^-^wp1njbt#HO+jb!zHo11S`(RUvP!r|prC7q2Z(!fA&hGerqnl~J84yvJ>w5(cODkz7o z@Qe*r<9Yak((0DBQeR0q=@z6i;|qePq>f4)6*im8R%o}5(p!h}&<)L48Nf%{LJC}L zA;ng`k9gQ8Kcbf`E43640wtYXh+I6Z)pO-?e9fw6t>MsiCcadB?K^-#el}g8KjI5a zlfKR<0H>0y^V?Xdy>OYl)x&{4V2X?8ouMl(y4&Hxe=odc`oKt-2+Ls&)WUW+#y-I| z;2H9ad7tsDd3>HD&xz;3<5;*_viNL1hp)m{<7@D>_&R(8eg}R>zH5s|i&u+xi(kv| zmJuzZT3BMXm@8HitBBRbn)tzpsn}fXDfSkR5RVj(5;sWR3#t77gtNk}tY{byD_|v- z+=yq!Q|7Dk)%luyZN5I=kpCG!swKK*WQ&4W8Ozd394)>jZv4w7P*$qqZh=KGxtRV1 zhphV^?N9jMIB9E=1Qo}UEUBbl-?b}LIbfKCw@IwUQnm^KSc7egA3Ybf2gybj-X?9! zF4bfqy@8~G)~hxSXUu>g8OvxKd+)07?OQC?eIJ&36mV?Ik=zL%d~I0%jlmY|Y&gdL zuIkjh4P{GTya^U+ub-t1-MehQ%E!1=Owd6}>6Hk|xd1`;Z#9Bis}?~sp#2C%#J31) zu6hJL1|B15rt>R;nn@Xj(M;I}sX9_;q_hp{jg+2FgOTF&4kD0hBOQU1cG41%l78x7 zG^1jAN?SkajLZ>aBl$x<(j7!o=~TOfjNCK{@5k~|M_cxTR?6Bxdr4F_$Mv!NArL7rPG%d*_mq3nUC{-+cz~d|KEb3xjM~ThaqTQJ{m#u z{aggi_a`7|ji40K0WlLn$2sY|H_hJ{A!z_cxTj1Yp0h&+K+?(do zw0}?Mho>JMHT8z(z72(=vc#h z*HC^_^2-=>ZoIfP)=zS%EcQLmU-hWs33x_7(ND=wXHS@egbsKRF%}QG(fQNA<1|q} z3p3I^^Qro2ZA^zcKDwc3{cJo}>W4JG_3SRS!>2kE)K3DVQ;{XpymiIOr=OfDWCq%*VaJDa~@e@hbgUVqz~|F!bCqkbB+rJY+ju?Qdf?Y(PP{XRw{Dee2Ly)Gxi`Ozc*%W5eme~0rQz3PcJA=9 P=hs