Pārlūkot izejas kodu

提交所有测试代码

weiwenhai 7 gadi atpakaļ
vecāks
revīzija
ee423ab12f
43 mainītis faili ar 7743 papildinājumiem un 2350 dzēšanām
  1. 5 0
      cqb-comm-utils/pom.xml
  2. 44 9
      cqb-comm-utils/src/main/java/com/qmth/cqb/utils/CommonUtils.java
  3. 4110 0
      cqb-comm-utils/src/main/resources/bjsf_paper_template.ftl
  4. BIN
      cqb-comm-utils/src/main/resources/quesDistinct.xlsx
  5. 1600 1597
      cqb-comm-utils/src/main/resources/sydx_paper_template.ftl
  6. 265 6
      cqb-gen-paper/src/main/java/com/qmth/cqb/genpaper/service/GenPaperService.java
  7. 43 56
      cqb-gen-paper/src/main/java/com/qmth/cqb/genpaper/web/GenPaperController.java
  8. 28 0
      cqb-paper/pom.xml
  9. 10 0
      cqb-paper/src/main/java/com/qmth/cqb/paper/dao/PaperDetailUnitRepo.java
  10. 67 0
      cqb-paper/src/main/java/com/qmth/cqb/paper/dto/QuestionDistributeDto.java
  11. 84 80
      cqb-paper/src/main/java/com/qmth/cqb/paper/model/ImportPaperCheck.java
  12. 8 0
      cqb-paper/src/main/java/com/qmth/cqb/paper/model/ImportPaperMsg.java
  13. 27 0
      cqb-paper/src/main/java/com/qmth/cqb/paper/model/PaperDetailUnit.java
  14. 16 16
      cqb-paper/src/main/java/com/qmth/cqb/paper/rpc/PrintCoursePaperClient.java
  15. 8 0
      cqb-paper/src/main/java/com/qmth/cqb/paper/service/ExportPaperService.java
  16. 143 24
      cqb-paper/src/main/java/com/qmth/cqb/paper/service/ImportPaperService.java
  17. 2 2
      cqb-paper/src/main/java/com/qmth/cqb/paper/service/PaperService.java
  18. 9 3
      cqb-paper/src/main/java/com/qmth/cqb/paper/service/export/DzkdExportPaperService.java
  19. 79 2
      cqb-paper/src/main/java/com/qmth/cqb/paper/service/export/ExportPaperAbstractService.java
  20. 9 3
      cqb-paper/src/main/java/com/qmth/cqb/paper/service/export/HzkjExportPaperService.java
  21. 9 3
      cqb-paper/src/main/java/com/qmth/cqb/paper/service/export/RjgcExportPaperService.java
  22. 9 3
      cqb-paper/src/main/java/com/qmth/cqb/paper/service/export/SddxExportPaperService.java
  23. 100 88
      cqb-paper/src/main/java/com/qmth/cqb/paper/service/export/SxsfExportPaperService.java
  24. 10 4
      cqb-paper/src/main/java/com/qmth/cqb/paper/service/export/SydxExportPaperService.java
  25. 11 7
      cqb-paper/src/main/java/com/qmth/cqb/paper/service/export/TjdxExportPaperService.java
  26. 9 3
      cqb-paper/src/main/java/com/qmth/cqb/paper/service/export/xajdExportPaperService.java
  27. 2 2
      cqb-paper/src/main/java/com/qmth/cqb/paper/service/impl/ExamFileServiceImpl.java
  28. 298 3
      cqb-paper/src/main/java/com/qmth/cqb/paper/service/impl/ExportPaperServiceImpl.java
  29. 8 7
      cqb-paper/src/main/java/com/qmth/cqb/paper/service/impl/ExtractConfigFileServiceImpl.java
  30. 3 0
      cqb-paper/src/main/java/com/qmth/cqb/paper/service/impl/ExtractConfigServiceImpl.java
  31. 18 17
      cqb-paper/src/main/java/com/qmth/cqb/paper/service/impl/PaperServiceImpl.java
  32. 13 0
      cqb-paper/src/main/java/com/qmth/cqb/paper/web/ExportPaperController.java
  33. 27 5
      cqb-paper/src/main/java/com/qmth/cqb/paper/web/PaperController.java
  34. 158 107
      cqb-question-resource/src/main/java/com/qmth/cqb/question/model/QuestionSearchCondition.java
  35. 1 1
      cqb-question-resource/src/main/java/com/qmth/cqb/question/service/PropertyService.java
  36. 7 0
      cqb-question-resource/src/main/java/com/qmth/cqb/question/service/QuesService.java
  37. 53 47
      cqb-question-resource/src/main/java/com/qmth/cqb/question/service/QuestionAudioService.java
  38. 0 2
      cqb-question-resource/src/main/java/com/qmth/cqb/question/service/impl/CoursePropertyServiceImpl.java
  39. 2 2
      cqb-question-resource/src/main/java/com/qmth/cqb/question/service/impl/PropertyServiceImpl.java
  40. 130 4
      cqb-question-resource/src/main/java/com/qmth/cqb/question/service/impl/QuesServiceImpl.java
  41. 170 108
      cqb-question-resource/src/main/java/com/qmth/cqb/question/service/impl/QuestionAudioServiceImpl.java
  42. 1 1
      cqb-question-resource/src/main/java/com/qmth/cqb/question/web/PropertyController.java
  43. 147 138
      cqb-question-resource/src/main/java/com/qmth/cqb/question/web/QuesController.java

+ 5 - 0
cqb-comm-utils/pom.xml

@@ -58,6 +58,11 @@
             <groupId>org.springframework.boot</groupId>
             <artifactId>spring-boot-starter-data-jpa</artifactId>
         </dependency>
+        
+        <dependency>
+        	<groupId>org.springframework.boot</groupId>
+            <artifactId>spring-boot-starter-freemarker</artifactId>
+        </dependency>
 
         <dependency>
             <groupId>mysql</groupId>

+ 44 - 9
cqb-comm-utils/src/main/java/com/qmth/cqb/utils/CommonUtils.java

@@ -8,9 +8,11 @@ import java.util.ArrayList;
 import java.util.Date;
 import java.util.HashMap;
 import java.util.Iterator;
+import java.util.LinkedHashMap;
 import java.util.List;
 import java.util.Map;
 import java.util.Properties;
+import java.util.Random;
 import java.util.regex.Matcher;
 import java.util.regex.Pattern;
 import java.util.stream.Stream;
@@ -482,7 +484,28 @@ public final class CommonUtils {
 		}
 		return idValues;
     }
-
+    
+    /**
+     * 截取a标签中的id的值
+     * @param htmlString
+     * @return
+     */
+    public static List<String> getTagANames(String htmlString){
+		List<String> list = new ArrayList<String>();
+		Pattern p = Pattern.compile("<a[^<>]*\\s+id=\"([0-9A-Za-z-_]+)\"\\s*"); 
+	    Matcher m = p.matcher(htmlString);
+	    while(m.find()) {
+		  String str = m.group(1);
+		  list.add(str);
+	    }
+	    return list;
+	}
+    
+    public static void main(String[] args){
+    	String htmlString = "<a id=\"111\" name=\"111\"><\\a><a id=\"222\" name=\"222\"><\\a>";
+    	System.out.println(getTagANames(htmlString));
+    }
+    
     /**
      * 保留两位小数
      * @param number
@@ -658,14 +681,6 @@ public final class CommonUtils {
 		return content;
 	}
 
-    public static void main(String[] args) throws Exception{
-        // QuesStructType quesStructType = getEnum(QuesStructType.class,"单选");
-        // System.out.println(quesStructType.getName());
-        // System.out.println(characterToNumber("A"));
-        System.out.println(formatDoubleFloor(3.61));
-        System.out.println(formatDoubleFloor(3.0));
-    }
-    
     /**
      * weiwenhai
      * 过滤题干中<>,不让反转
@@ -695,4 +710,24 @@ public final class CommonUtils {
     	htmlStr = htmlStr.replace("<p>", "").replace("</p>", "");
     	return htmlStr;
     }
+    
+    /**
+     * 生成不同的随机整数集合
+     * @param list
+     * @param size  数量
+     * @param original  随机数范围
+     * @return
+     */
+    public static List<Integer> getTandom(List<Integer> list,int size,int original){
+    	Random rand = new Random();
+		Integer i = rand.nextInt(original);
+		if(!list.contains(i) && i<size){
+			list.add(i);
+			if(list.size() == size){
+				return list;
+			}
+		}
+		getTandom(list,size,original);
+    	return list;
+    }
 }

+ 4110 - 0
cqb-comm-utils/src/main/resources/bjsf_paper_template.ftl

@@ -0,0 +1,4110 @@
+<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
+<?mso-application progid="Word.Document"?>
+<pkg:package xmlns:pkg="http://schemas.microsoft.com/office/2006/xmlPackage">
+	<pkg:part pkg:contentType="application/vnd.openxmlformats-package.relationships+xml" pkg:name="/_rels/.rels" pkg:padding="512">
+		<pkg:xmlData>
+			<Relationships xmlns="http://schemas.openxmlformats.org/package/2006/relationships">
+				<Relationship Id="rId3" Target="docProps/app.xml" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/extended-properties"/>
+				<Relationship Id="rId2" Target="docProps/core.xml" Type="http://schemas.openxmlformats.org/package/2006/relationships/metadata/core-properties"/>
+				<Relationship Id="rId1" Target="word/document.xml" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/officeDocument"/>
+			</Relationships>
+		</pkg:xmlData>
+	</pkg:part>
+	<pkg:part pkg:contentType="application/vnd.openxmlformats-package.relationships+xml" pkg:name="/word/_rels/document.xml.rels" pkg:padding="256">
+		<pkg:xmlData>
+			<Relationships xmlns="http://schemas.openxmlformats.org/package/2006/relationships">
+				<Relationship Id="rId8" Target="footer2.xml" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/footer"/>
+				<Relationship Id="rId3" Target="settings.xml" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/settings"/>
+				<Relationship Id="rId7" Target="footer1.xml" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/footer"/>
+				<Relationship Id="rId2" Target="styles.xml" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/styles"/>
+				<Relationship Id="rId1" Target="numbering.xml" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/numbering"/>
+				<Relationship Id="rId6" Target="endnotes.xml" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/endnotes"/>
+				<Relationship Id="rId5" Target="footnotes.xml" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/footnotes"/>
+				<Relationship Id="rId10" Target="theme/theme1.xml" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/theme"/>
+				<Relationship Id="rId4" Target="webSettings.xml" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/webSettings"/>
+				<Relationship Id="rId9" Target="fontTable.xml" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/fontTable"/>
+			</Relationships>
+		</pkg:xmlData>
+	</pkg:part>
+	<pkg:part pkg:contentType="application/vnd.openxmlformats-officedocument.wordprocessingml.document.main+xml" pkg:name="/word/document.xml">
+		<pkg:xmlData>
+			<w:document xmlns:m="http://schemas.openxmlformats.org/officeDocument/2006/math" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:r="http://schemas.openxmlformats.org/officeDocument/2006/relationships" xmlns:v="urn:schemas-microsoft-com:vml" xmlns:ve="http://schemas.openxmlformats.org/markup-compatibility/2006" xmlns:w="http://schemas.openxmlformats.org/wordprocessingml/2006/main" xmlns:w10="urn:schemas-microsoft-com:office:word" xmlns:wne="http://schemas.microsoft.com/office/word/2006/wordml" xmlns:wp="http://schemas.openxmlformats.org/drawingml/2006/wordprocessingDrawing">
+				<w:body>
+					<w:p w:rsidP="00C0008F" w:rsidR="00C0008F" w:rsidRDefault="00C0008F" w:rsidRPr="00D948E2">
+						<w:pPr>
+							<w:rPr>
+								<w:rFonts w:ascii="宋体" w:hAnsi="宋体"/>
+								<w:b/>
+								<w:bCs/>
+								<w:color w:val="FF0000"/>
+								<w:sz w:val="28"/>
+								<w:szCs w:val="28"/>
+							</w:rPr>
+						</w:pPr>
+					</w:p>
+					<w:p w:rsidP="001A2234" w:rsidR="001A2234" w:rsidRDefault="00523CD8" w:rsidRPr="00085453">
+						<w:pPr>
+							<w:ind w:left="-567" w:leftChars="-270"/>
+							<w:jc w:val="center"/>
+							<w:rPr>
+								<w:rFonts w:eastAsia="黑体"/>
+								<w:b/>
+								<w:bCs/>
+								<w:noProof/>
+								<w:sz w:val="32"/>
+								<w:szCs w:val="32"/>
+							</w:rPr>
+						</w:pPr>
+						<w:r>
+							<w:rPr>
+								<w:rFonts w:eastAsia="黑体"/>
+								<w:b/>
+								<w:bCs/>
+								<w:noProof/>
+								<w:sz w:val="32"/>
+								<w:szCs w:val="32"/>
+							</w:rPr>
+							<w:pict>
+								<v:shapetype coordsize="21600,21600" id="_x0000_t202" o:spt="202" path="m,l,21600r21600,l21600,xe">
+									<v:stroke joinstyle="miter"/>
+									<v:path gradientshapeok="t" o:connecttype="rect"/>
+								</v:shapetype>
+								<v:shape id="_x0000_s1254" stroked="f" style="position:absolute;left:0;text-align:left;margin-left:-63pt;margin-top:-39pt;width:81pt;height:803.4pt;z-index:1" type="#_x0000_t202">
+									<v:textbox style="layout-flow:vertical;mso-layout-flow-alt:bottom-to-top;mso-next-textbox:#_x0000_s1254">
+										<w:txbxContent>
+											<w:p w:rsidP="005E06FB" w:rsidR="005E06FB" w:rsidRDefault="005E06FB">
+												<w:pPr>
+													<w:spacing w:line="360" w:lineRule="auto"/>
+													<w:jc w:val="center"/>
+													<w:rPr>
+														<w:sz w:val="24"/>
+													</w:rPr>
+												</w:pPr>
+												<w:r>
+													<w:rPr>
+														<w:rFonts w:hint="eastAsia"/>
+														<w:sz w:val="24"/>
+													</w:rPr>
+													<w:t>姓名</w:t>
+												</w:r>
+												<w:r>
+													<w:rPr>
+														<w:rFonts w:hint="eastAsia"/>
+														<w:sz w:val="24"/>
+													</w:rPr>
+													<w:t xml:space="preserve">__________________ </w:t>
+												</w:r>
+												<w:r>
+													<w:rPr>
+														<w:rFonts w:hint="eastAsia"/>
+														<w:sz w:val="24"/>
+													</w:rPr>
+													<w:t>专业名称</w:t>
+												</w:r>
+												<w:r>
+													<w:rPr>
+														<w:rFonts w:hint="eastAsia"/>
+														<w:sz w:val="24"/>
+													</w:rPr>
+													<w:t>__________________</w:t>
+												</w:r>
+												<w:r>
+													<w:rPr>
+														<w:rFonts w:hint="eastAsia"/>
+														<w:sz w:val="24"/>
+													</w:rPr>
+													<w:t xml:space="preserve">  批次</w:t>
+												</w:r>
+												<w:r>
+													<w:rPr>
+														<w:rFonts w:hint="eastAsia"/>
+														<w:sz w:val="24"/>
+													</w:rPr>
+													<w:t>________________</w:t>
+												</w:r>
+												<w:r>
+													<w:rPr>
+														<w:rFonts w:hint="eastAsia"/>
+														<w:sz w:val="24"/>
+													</w:rPr>
+													<w:t>学号</w:t>
+												</w:r>
+												<w:r>
+													<w:rPr>
+														<w:rFonts w:hint="eastAsia"/>
+														<w:sz w:val="24"/>
+													</w:rPr>
+													<w:t>__________________</w:t>
+												</w:r>
+												<w:r>
+													<w:rPr>
+														<w:rFonts w:hint="eastAsia"/>
+														<w:sz w:val="24"/>
+													</w:rPr>
+													<w:t>学习中心</w:t>
+												</w:r>
+												<w:r>
+													<w:rPr>
+														<w:rFonts w:hint="eastAsia"/>
+														<w:sz w:val="24"/>
+													</w:rPr>
+													<w:t>_________________</w:t>
+												</w:r>
+											</w:p>
+											<w:p w:rsidP="005E06FB" w:rsidR="005E06FB" w:rsidRDefault="005E06FB">
+												<w:pPr>
+													<w:ind w:hanging="720" w:hangingChars="300" w:left="720"/>
+													<w:jc w:val="center"/>
+												</w:pPr>
+												<w:r>
+													<w:rPr>
+														<w:sz w:val="24"/>
+													</w:rPr>
+													<w:t>………………………………………</w:t>
+												</w:r>
+												<w:r>
+													<w:rPr>
+														<w:rFonts w:hint="eastAsia"/>
+														<w:sz w:val="24"/>
+													</w:rPr>
+													<w:t>密</w:t>
+												</w:r>
+												<w:r>
+													<w:rPr>
+														<w:sz w:val="24"/>
+													</w:rPr>
+													<w:t>………………………………………</w:t>
+												</w:r>
+												<w:r>
+													<w:rPr>
+														<w:rFonts w:hint="eastAsia"/>
+														<w:sz w:val="24"/>
+													</w:rPr>
+													<w:t>封</w:t>
+												</w:r>
+												<w:r>
+													<w:rPr>
+														<w:sz w:val="24"/>
+													</w:rPr>
+													<w:t>……………………………</w:t>
+												</w:r>
+												<w:r>
+													<w:rPr>
+														<w:rFonts w:hint="eastAsia"/>
+														<w:sz w:val="24"/>
+													</w:rPr>
+													<w:t>线</w:t>
+												</w:r>
+												<w:r>
+													<w:rPr>
+														<w:sz w:val="24"/>
+													</w:rPr>
+													<w:t>………………………………………</w:t>
+												</w:r>
+											</w:p>
+										</w:txbxContent>
+									</v:textbox>
+									<w10:wrap type="square"/>
+								</v:shape>
+							</w:pict>
+						</w:r>
+						<w:r w:rsidR="00467E4E" w:rsidRPr="00085453">
+							<w:rPr>
+								<w:rFonts w:eastAsia="黑体" w:hint="eastAsia"/>
+								<w:kern w:val="0"/>
+								<w:sz w:val="32"/>
+								<w:szCs w:val="32"/>
+							</w:rPr>
+							<w:t>北京师</w:t>
+						</w:r>
+						<w:r w:rsidR="00D66D60" w:rsidRPr="00085453">
+							<w:rPr>
+								<w:rFonts w:eastAsia="黑体" w:hint="eastAsia"/>
+								<w:kern w:val="0"/>
+								<w:sz w:val="32"/>
+								<w:szCs w:val="32"/>
+							</w:rPr>
+							<w:t>范大学继续教育与教师培训学院</w:t>
+						</w:r>
+					</w:p>
+					<w:p w:rsidP="00956E30" w:rsidR="00956E30" w:rsidRDefault="00956E30">
+						<w:pPr>
+							<w:widowControl/>
+							<w:spacing w:line="360" w:lineRule="auto"/>
+							<w:jc w:val="center"/>
+							<w:rPr>
+								<w:rFonts w:eastAsia="黑体"/>
+								<w:kern w:val="0"/>
+								<w:sz w:val="32"/>
+								<w:szCs w:val="32"/>
+							</w:rPr>
+						</w:pPr>
+						<w:r w:rsidRPr="00085453">
+							<w:rPr>
+								<w:rFonts w:eastAsia="黑体" w:hint="eastAsia"/>
+								<w:kern w:val="0"/>
+								<w:sz w:val="32"/>
+								<w:szCs w:val="32"/>
+							</w:rPr>
+							<w:t>网络教育期末考试</w:t>
+						</w:r>
+					</w:p>
+					<w:p w:rsidP="00515746" w:rsidR="001A2234" w:rsidRDefault="005103D6" w:rsidRPr="00515746">
+						<w:pPr>
+							<w:widowControl/>
+							<w:spacing w:line="360" w:lineRule="auto"/>
+							<w:jc w:val="center"/>
+							<w:rPr>
+								<w:rFonts w:eastAsia="黑体"/>
+								<w:kern w:val="0"/>
+								<w:sz w:val="28"/>
+								<w:szCs w:val="20"/>
+							</w:rPr>
+						</w:pPr>
+						<w:r>
+							<w:rPr>
+								<w:rFonts w:eastAsia="黑体"/>
+								<w:kern w:val="0"/>
+								<w:sz w:val="28"/>
+								<w:szCs w:val="20"/>
+							</w:rPr>
+							<w:t>《</w:t>
+						</w:r>
+						<w:r>
+							<w:rPr>
+								<w:rFonts w:eastAsia="黑体" w:hint="eastAsia"/>
+								<w:kern w:val="0"/>
+								<w:sz w:val="28"/>
+								<w:szCs w:val="20"/>
+							</w:rPr>
+							<w:t>${courseName}</w:t>
+						</w:r>
+						<w:r>
+							<w:rPr>
+								<w:rFonts w:eastAsia="黑体"/>
+								<w:kern w:val="0"/>
+								<w:sz w:val="28"/>
+								<w:szCs w:val="20"/>
+							</w:rPr>
+							<w:t>》试卷</w:t>
+						</w:r>
+					</w:p>
+					<w:p w:rsidP="007D79C6" w:rsidR="007D79C6" w:rsidRDefault="007D79C6">
+						<w:pPr>
+							<w:spacing w:line="480" w:lineRule="auto"/>
+							<w:rPr>
+								<w:rFonts w:ascii="宋体" w:hAnsi="宋体"/>
+								<w:b/>
+								<w:bCs/>
+								<w:szCs w:val="21"/>
+							</w:rPr>
+						</w:pPr>
+					</w:p>
+					<w:p w:rsidP="0075370A" w:rsidR="0075370A" w:rsidRDefault="0075370A" w:rsidRPr="00472865">
+						<w:pPr>
+							<w:widowControl/>
+							<w:spacing w:line="360" w:lineRule="auto"/>
+							<w:rPr>
+								<w:rFonts w:ascii="黑体" w:eastAsia="黑体" w:hAnsi="宋体"/>
+								<w:sz w:val="20"/>
+								<w:u w:val="single"/>
+							</w:rPr>
+						</w:pPr>
+						<w:r>
+							<w:rPr>
+								<w:rFonts w:ascii="黑体" w:eastAsia="黑体" w:hAnsi="宋体" w:hint="eastAsia"/>
+								<w:sz w:val="20"/>
+							</w:rPr>
+							<w:t>学习中心</w:t>
+						</w:r>
+						<w:r>
+							<w:rPr>
+								<w:rFonts w:ascii="黑体" w:eastAsia="黑体" w:hAnsi="宋体" w:hint="eastAsia"/>
+								<w:sz w:val="20"/>
+								<w:u w:val="single"/>
+							</w:rPr>
+							<w:t xml:space="preserve">      </w:t>
+						</w:r>
+						<w:r>
+							<w:rPr>
+								<w:rFonts w:ascii="黑体" w:eastAsia="黑体" w:hAnsi="宋体" w:hint="eastAsia"/>
+								<w:sz w:val="20"/>
+							</w:rPr>
+							<w:t xml:space="preserve"> 专业</w:t>
+						</w:r>
+						<w:r>
+							<w:rPr>
+								<w:rFonts w:ascii="黑体" w:eastAsia="黑体" w:hAnsi="宋体" w:hint="eastAsia"/>
+								<w:sz w:val="20"/>
+								<w:u w:val="single"/>
+							</w:rPr>
+							<w:t xml:space="preserve">     </w:t>
+						</w:r>
+						<w:r>
+							<w:rPr>
+								<w:rFonts w:ascii="黑体" w:eastAsia="黑体" w:hAnsi="宋体" w:hint="eastAsia"/>
+								<w:sz w:val="20"/>
+							</w:rPr>
+							<w:t xml:space="preserve"> 年级</w:t>
+						</w:r>
+						<w:r>
+							<w:rPr>
+								<w:rFonts w:ascii="黑体" w:eastAsia="黑体" w:hAnsi="宋体" w:hint="eastAsia"/>
+								<w:sz w:val="20"/>
+								<w:u w:val="single"/>
+							</w:rPr>
+							<w:t xml:space="preserve"/>
+						</w:r>
+						<w:r>
+							<w:rPr>
+								<w:rFonts w:ascii="黑体" w:eastAsia="黑体" w:hAnsi="宋体"/>
+								<w:sz w:val="20"/>
+							</w:rPr>
+							<w:t xml:space="preserve"/>
+						</w:r>
+						<w:r>
+							<w:rPr>
+								<w:rFonts w:ascii="黑体" w:eastAsia="黑体" w:hAnsi="宋体" w:hint="eastAsia"/>
+								<w:sz w:val="20"/>
+							</w:rPr>
+							<w:t xml:space="preserve"> 姓名</w:t>
+						</w:r>
+						<w:r>
+							<w:rPr>
+								<w:rFonts w:ascii="黑体" w:eastAsia="黑体" w:hAnsi="宋体" w:hint="eastAsia"/>
+								<w:sz w:val="20"/>
+								<w:u w:val="single"/>
+							</w:rPr>
+							<w:t xml:space="preserve">    </w:t>
+						</w:r>
+						<w:r>
+							<w:rPr>
+								<w:rFonts w:ascii="黑体" w:eastAsia="黑体" w:hAnsi="宋体" w:hint="eastAsia"/>
+								<w:sz w:val="20"/>
+							</w:rPr>
+							<w:t xml:space="preserve"> 学号</w:t>
+						</w:r>
+						<w:r>
+							<w:rPr>
+								<w:rFonts w:ascii="黑体" w:eastAsia="黑体" w:hAnsi="宋体" w:hint="eastAsia"/>
+								<w:sz w:val="20"/>
+								<w:u w:val="single"/>
+							</w:rPr>
+							<w:t xml:space="preserve"/>
+						</w:r>
+					</w:p>
+					<w:p w:rsidP="00E35AA6" w:rsidR="00E35AA6" w:rsidRDefault="00E35AA6">
+						<w:pPr>
+							<w:numPr>
+								<w:ilvl w:val="0"/>
+								<w:numId w:val="19"/>
+							</w:numPr>
+							<w:spacing w:line="360" w:lineRule="auto"/>
+							<w:rPr>
+								<w:rFonts w:ascii="宋体" w:hAnsi="宋体"/>
+								<w:bCs/>
+								<w:szCs w:val="21"/>
+							</w:rPr>
+						</w:pPr>
+						<w:r>
+							<w:rPr>
+								<w:rFonts w:ascii="宋体" w:hAnsi="宋体" w:hint="eastAsia"/>
+								<w:szCs w:val="21"/>
+							</w:rPr>
+							<w:t xml:space="preserve">注意事项: </w:t>
+						</w:r>
+						<w:r>
+							<w:rPr>
+								<w:rFonts w:ascii="宋体" w:hAnsi="宋体" w:hint="eastAsia"/>
+								<w:bCs/>
+								<w:szCs w:val="21"/>
+							</w:rPr>
+							<w:t>本试卷满本试卷满分:</w:t>
+						</w:r>
+						<w:r>
+							<w:rPr>
+								<w:rFonts w:ascii="宋体" w:hAnsi="宋体" w:hint="eastAsia"/>
+								<w:b/>
+								<w:bCs/>
+								<w:szCs w:val="21"/>
+							</w:rPr>
+							<w:t>100</w:t>
+						</w:r>
+						<w:r>
+							<w:rPr>
+								<w:rFonts w:ascii="宋体" w:hAnsi="宋体" w:hint="eastAsia"/>
+								<w:bCs/>
+								<w:szCs w:val="21"/>
+							</w:rPr>
+							<w:t>分;考试时间:</w:t>
+						</w:r>
+						<w:r>
+							<w:rPr>
+								<w:rFonts w:ascii="宋体" w:hAnsi="宋体" w:hint="eastAsia"/>
+								<w:b/>
+								<w:szCs w:val="21"/>
+							</w:rPr>
+							<w:t>90</w:t>
+						</w:r>
+						<w:r>
+							<w:rPr>
+								<w:rFonts w:ascii="宋体" w:hAnsi="宋体" w:hint="eastAsia"/>
+								<w:bCs/>
+								<w:szCs w:val="21"/>
+							</w:rPr>
+							<w:t>分钟;考试形式:</w:t>
+						</w:r>
+						<w:r>
+							<w:rPr>
+								<w:rFonts w:ascii="宋体" w:hAnsi="宋体" w:hint="eastAsia"/>
+								<w:b/>
+								<w:bCs/>
+								<w:color w:val="000000"/>
+								<w:szCs w:val="21"/>
+							</w:rPr>
+							<w:t>闭</w:t>
+						</w:r>
+						<w:r>
+							<w:rPr>
+								<w:rFonts w:ascii="宋体" w:hAnsi="宋体" w:hint="eastAsia"/>
+								<w:bCs/>
+								<w:szCs w:val="21"/>
+							</w:rPr>
+							<w:t>卷。</w:t>
+						</w:r>
+					</w:p>
+					<w:p w:rsidP="00F8046C" w:rsidR="00FB1452" w:rsidRDefault="001644BF" w:rsidRPr="00FB1452">
+						<w:pPr>
+							<w:spacing w:line="480" w:lineRule="auto"/>
+							<w:rPr>
+								<w:rFonts w:ascii="宋体" w:hAnsi="宋体" w:hint="eastAsia"/>
+								<w:b/>
+								<w:szCs w:val="21"/>
+							</w:rPr>
+						</w:pPr>
+					</w:p>
+					<!--循环大题-->
+	    <#if paperDetails?exists>
+	    <#list paperDetails as paperDetail>
+		<w:p w:rsidP="004D3783" w:rsidR="00687CD1" w:rsidRDefault="004D3783" w:rsidRPr="006E2D68">
+			<w:r>
+				<w:rPr>
+					<w:rFonts w:ascii="宋体" w:hAnsi="宋体" w:hint="eastAsia"/>
+					<w:b/>
+					<w:szCs w:val="21"/>
+				</w:rPr>
+				<w:t>${paperDetail.cnNum}</w:t>
+			</w:r>
+			 <w:r>
+				<w:rPr>
+					<w:rFonts w:ascii="宋体" w:hAnsi="宋体" w:hint="eastAsia"/>
+					<w:b/>
+					<w:szCs w:val="21"/>
+				</w:rPr>
+				<w:t>、</w:t>
+			</w:r>
+	        <w:r>
+				<w:rPr>
+					<w:rFonts w:ascii="宋体" w:hAnsi="宋体" w:hint="eastAsia"/>
+					<w:b/>
+					<w:szCs w:val="21"/>
+				</w:rPr>
+				<w:t>${paperDetail.name}</w:t>
+			</w:r>
+			<w:r>
+				<w:rPr>
+					<w:rFonts w:ascii="宋体" w:hAnsi="宋体" w:hint="eastAsia"/>
+					<w:b/>
+					<w:szCs w:val="21"/>
+				</w:rPr>
+				<w:t>${paperDetail.title}</w:t>
+			</w:r>
+		</w:p>
+		<#if paperDetail.titleDetail?exists>
+		<w:p w:rsidP="00F964A2" w:rsidR="00F964A2" w:rsidRDefault="004D3783">
+			<w:pPr>
+				<w:ind w:firstLine="420" w:left="100"/>
+				<w:rPr>
+					<w:rFonts w:ascii="宋体" w:hAnsi="宋体" w:hint="eastAsia"/>
+					<w:b/>
+					<w:szCs w:val="21"/>
+				</w:rPr>
+			</w:pPr>
+			<w:r>
+				<w:rPr>
+					<w:rFonts w:ascii="宋体" w:hAnsi="宋体" w:hint="eastAsia"/>
+					<w:b/>
+					<w:szCs w:val="21"/>
+				</w:rPr>
+				<w:t>${paperDetail.titleDetail}</w:t>
+			</w:r>
+			<w:r w:rsidR="00F964A2">
+				<w:rPr>
+					<w:rFonts w:ascii="宋体" w:hAnsi="宋体" w:hint="eastAsia"/>
+					<w:b/>
+					<w:szCs w:val="21"/>
+				</w:rPr>
+				<w:t xml:space="preserve"/>
+			</w:r>
+		</w:p>
+		</#if>
+	 	<!--循环小题-->
+	    <#if paperDetail.paperDetailUnits?exists>
+	    <#list paperDetail.paperDetailUnits as paperDetailUnit>
+	        ${paperDetailUnit.question.quesBodyWord}
+	    <#if paperDetailUnit.question.subQuestions?exists>
+	    <#list paperDetailUnit.question.subQuestions as subQuestion>
+	
+	        ${subQuestion.quesBodyWord}
+	
+	        <#if subQuestion.quesOptions?exists>
+	        <#list subQuestion.quesOptions as subQuesOption>
+	            ${subQuesOption.optionBodyWord}
+	        </#list>
+	        </#if>
+	    </#list>
+	    </#if>
+	
+	    <#if paperDetailUnit.question.quesOptions?exists>
+	    <#list paperDetailUnit.question.quesOptions as quesOption>
+	        ${quesOption.optionBodyWord}
+	     </#list>
+	    </#if>
+		<w:p w:rsidP="00852887" w:rsidR="00852887" w:rsidRDefault="00852887">
+			<w:pPr>
+				<w:spacing w:line="400" w:lineRule="exact"/>
+				<w:rPr>
+					<w:rFonts w:ascii="宋体" w:hAnsi="宋体"/>
+					<w:b/>
+					<w:sz w:val="28"/>
+					<w:szCs w:val="28"/>
+				</w:rPr>
+			</w:pPr>
+		</w:p>
+		</#list>
+	    </#if>
+	    </#list>
+	    </#if>
+					<w:sectPr w:rsidR="00852887" w:rsidRPr="00302E11" w:rsidSect="002136D5">
+						<w:footerReference r:id="rId7" w:type="even"/>
+						<w:footerReference r:id="rId8" w:type="default"/>
+						<w:pgSz w:code="8" w:h="16840" w:orient="landscape" w:w="23814"/>
+						<w:pgMar w:bottom="851" w:footer="992" w:gutter="0" w:header="851" w:left="1418" w:right="1418" w:top="568"/>
+						<w:pgNumType w:fmt="numberInDash"/>
+						<w:cols w:num="2" w:space="1134"/>
+						<w:docGrid w:linePitch="312" w:type="lines"/>
+					</w:sectPr>
+				</w:body>
+			</w:document>
+		</pkg:xmlData>
+	</pkg:part>
+	<pkg:part pkg:contentType="application/vnd.openxmlformats-officedocument.wordprocessingml.footnotes+xml" pkg:name="/word/footnotes.xml">
+		<pkg:xmlData>
+			<w:footnotes xmlns:m="http://schemas.openxmlformats.org/officeDocument/2006/math" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:r="http://schemas.openxmlformats.org/officeDocument/2006/relationships" xmlns:v="urn:schemas-microsoft-com:vml" xmlns:ve="http://schemas.openxmlformats.org/markup-compatibility/2006" xmlns:w="http://schemas.openxmlformats.org/wordprocessingml/2006/main" xmlns:w10="urn:schemas-microsoft-com:office:word" xmlns:wne="http://schemas.microsoft.com/office/word/2006/wordml" xmlns:wp="http://schemas.openxmlformats.org/drawingml/2006/wordprocessingDrawing">
+				<w:footnote w:id="-1" w:type="separator">
+					<w:p w:rsidR="00B009DE" w:rsidRDefault="00B009DE">
+						<w:r>
+							<w:separator/>
+						</w:r>
+					</w:p>
+				</w:footnote>
+				<w:footnote w:id="0" w:type="continuationSeparator">
+					<w:p w:rsidR="00B009DE" w:rsidRDefault="00B009DE">
+						<w:r>
+							<w:continuationSeparator/>
+						</w:r>
+					</w:p>
+				</w:footnote>
+			</w:footnotes>
+		</pkg:xmlData>
+	</pkg:part>
+	<pkg:part pkg:contentType="application/vnd.openxmlformats-officedocument.wordprocessingml.endnotes+xml" pkg:name="/word/endnotes.xml">
+		<pkg:xmlData>
+			<w:endnotes xmlns:m="http://schemas.openxmlformats.org/officeDocument/2006/math" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:r="http://schemas.openxmlformats.org/officeDocument/2006/relationships" xmlns:v="urn:schemas-microsoft-com:vml" xmlns:ve="http://schemas.openxmlformats.org/markup-compatibility/2006" xmlns:w="http://schemas.openxmlformats.org/wordprocessingml/2006/main" xmlns:w10="urn:schemas-microsoft-com:office:word" xmlns:wne="http://schemas.microsoft.com/office/word/2006/wordml" xmlns:wp="http://schemas.openxmlformats.org/drawingml/2006/wordprocessingDrawing">
+				<w:endnote w:id="-1" w:type="separator">
+					<w:p w:rsidR="00B009DE" w:rsidRDefault="00B009DE">
+						<w:r>
+							<w:separator/>
+						</w:r>
+					</w:p>
+				</w:endnote>
+				<w:endnote w:id="0" w:type="continuationSeparator">
+					<w:p w:rsidR="00B009DE" w:rsidRDefault="00B009DE">
+						<w:r>
+							<w:continuationSeparator/>
+						</w:r>
+					</w:p>
+				</w:endnote>
+			</w:endnotes>
+		</pkg:xmlData>
+	</pkg:part>
+	<pkg:part pkg:contentType="application/vnd.openxmlformats-officedocument.wordprocessingml.footer+xml" pkg:name="/word/footer1.xml">
+		<pkg:xmlData>
+			<w:ftr xmlns:m="http://schemas.openxmlformats.org/officeDocument/2006/math" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:r="http://schemas.openxmlformats.org/officeDocument/2006/relationships" xmlns:v="urn:schemas-microsoft-com:vml" xmlns:ve="http://schemas.openxmlformats.org/markup-compatibility/2006" xmlns:w="http://schemas.openxmlformats.org/wordprocessingml/2006/main" xmlns:w10="urn:schemas-microsoft-com:office:word" xmlns:wne="http://schemas.microsoft.com/office/word/2006/wordml" xmlns:wp="http://schemas.openxmlformats.org/drawingml/2006/wordprocessingDrawing">
+				<w:p w:rsidP="00494A57" w:rsidR="002A4355" w:rsidRDefault="005C7401">
+					<w:pPr>
+						<w:pStyle w:val="a3"/>
+						<w:ind w:right="360"/>
+					</w:pPr>
+					<w:r>
+						<w:rPr>
+							<w:rFonts w:hint="eastAsia"/>
+						</w:rPr>
+						<w:tab/>
+					</w:r>
+					<w:r>
+						<w:rPr>
+							<w:rFonts w:hint="eastAsia"/>
+						</w:rPr>
+						<w:t>第</w:t>
+					</w:r>
+					<w:r>
+						<w:rPr>
+							<w:rFonts w:hint="eastAsia"/>
+						</w:rPr>
+						<w:t>3</w:t>
+					</w:r>
+					<w:r>
+						<w:rPr>
+							<w:rFonts w:hint="eastAsia"/>
+						</w:rPr>
+						<w:t>页共</w:t>
+					</w:r>
+					<w:r>
+						<w:rPr>
+							<w:rFonts w:hint="eastAsia"/>
+						</w:rPr>
+						<w:t>4</w:t>
+					</w:r>
+					<w:r>
+						<w:rPr>
+							<w:rFonts w:hint="eastAsia"/>
+						</w:rPr>
+						<w:t>页</w:t>
+					</w:r>
+					<w:r>
+						<w:rPr>
+							<w:rFonts w:hint="eastAsia"/>
+						</w:rPr>
+						<w:tab/>
+					</w:r>
+					<w:r>
+						<w:rPr>
+							<w:rFonts w:hint="eastAsia"/>
+						</w:rPr>
+						<w:tab/>
+					</w:r>
+					<w:r>
+						<w:rPr>
+							<w:rFonts w:hint="eastAsia"/>
+						</w:rPr>
+						<w:tab/>
+					</w:r>
+					<w:r>
+						<w:rPr>
+							<w:rFonts w:hint="eastAsia"/>
+						</w:rPr>
+						<w:tab/>
+					</w:r>
+					<w:r>
+						<w:rPr>
+							<w:rFonts w:hint="eastAsia"/>
+						</w:rPr>
+						<w:tab/>
+					</w:r>
+					<w:r>
+						<w:rPr>
+							<w:rFonts w:hint="eastAsia"/>
+						</w:rPr>
+						<w:tab/>
+					</w:r>
+					<w:r>
+						<w:rPr>
+							<w:rFonts w:hint="eastAsia"/>
+						</w:rPr>
+						<w:tab/>
+					</w:r>
+					<w:r>
+						<w:rPr>
+							<w:rFonts w:hint="eastAsia"/>
+						</w:rPr>
+						<w:tab/>
+					</w:r>
+					<w:r>
+						<w:rPr>
+							<w:rFonts w:hint="eastAsia"/>
+						</w:rPr>
+						<w:tab/>
+					</w:r>
+					<w:r>
+						<w:rPr>
+							<w:rFonts w:hint="eastAsia"/>
+						</w:rPr>
+						<w:tab/>
+					</w:r>
+					<w:r>
+						<w:rPr>
+							<w:rFonts w:hint="eastAsia"/>
+						</w:rPr>
+						<w:tab/>
+					</w:r>
+					<w:r>
+						<w:rPr>
+							<w:rFonts w:hint="eastAsia"/>
+						</w:rPr>
+						<w:tab/>
+					</w:r>
+					<w:r>
+						<w:rPr>
+							<w:rFonts w:hint="eastAsia"/>
+						</w:rPr>
+						<w:tab/>
+					</w:r>
+					<w:r>
+						<w:rPr>
+							<w:rFonts w:hint="eastAsia"/>
+						</w:rPr>
+						<w:tab/>
+					</w:r>
+					<w:r>
+						<w:rPr>
+							<w:rFonts w:hint="eastAsia"/>
+						</w:rPr>
+						<w:tab/>
+					</w:r>
+					<w:r>
+						<w:rPr>
+							<w:rFonts w:hint="eastAsia"/>
+						</w:rPr>
+						<w:tab/>
+					</w:r>
+					<w:r>
+						<w:rPr>
+							<w:rFonts w:hint="eastAsia"/>
+						</w:rPr>
+						<w:tab/>
+					</w:r>
+					<w:r>
+						<w:rPr>
+							<w:rFonts w:hint="eastAsia"/>
+						</w:rPr>
+						<w:tab/>
+					</w:r>
+					<w:r>
+						<w:rPr>
+							<w:rFonts w:hint="eastAsia"/>
+						</w:rPr>
+						<w:tab/>
+					</w:r>
+					<w:r>
+						<w:rPr>
+							<w:rFonts w:hint="eastAsia"/>
+						</w:rPr>
+						<w:t>第</w:t>
+					</w:r>
+					<w:r>
+						<w:rPr>
+							<w:rFonts w:hint="eastAsia"/>
+						</w:rPr>
+						<w:t>4</w:t>
+					</w:r>
+					<w:r>
+						<w:rPr>
+							<w:rFonts w:hint="eastAsia"/>
+						</w:rPr>
+						<w:t>页共</w:t>
+					</w:r>
+					<w:r>
+						<w:rPr>
+							<w:rFonts w:hint="eastAsia"/>
+						</w:rPr>
+						<w:t>4</w:t>
+					</w:r>
+					<w:r>
+						<w:rPr>
+							<w:rFonts w:hint="eastAsia"/>
+						</w:rPr>
+						<w:t>页</w:t>
+					</w:r>
+				</w:p>
+			</w:ftr>
+		</pkg:xmlData>
+	</pkg:part>
+	<pkg:part pkg:contentType="application/vnd.openxmlformats-officedocument.wordprocessingml.footer+xml" pkg:name="/word/footer2.xml">
+		<pkg:xmlData>
+			<w:ftr xmlns:m="http://schemas.openxmlformats.org/officeDocument/2006/math" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:r="http://schemas.openxmlformats.org/officeDocument/2006/relationships" xmlns:v="urn:schemas-microsoft-com:vml" xmlns:ve="http://schemas.openxmlformats.org/markup-compatibility/2006" xmlns:w="http://schemas.openxmlformats.org/wordprocessingml/2006/main" xmlns:w10="urn:schemas-microsoft-com:office:word" xmlns:wne="http://schemas.microsoft.com/office/word/2006/wordml" xmlns:wp="http://schemas.openxmlformats.org/drawingml/2006/wordprocessingDrawing">
+				<w:p w:rsidP="00761A6D" w:rsidR="002A4355" w:rsidRDefault="00523CD8" w:rsidRPr="00761A6D">
+					<w:pPr>
+						<w:pStyle w:val="a3"/>
+						<w:jc w:val="center"/>
+						<w:rPr>
+							<w:sz w:val="21"/>
+							<w:szCs w:val="21"/>
+						</w:rPr>
+					</w:pPr>
+					<w:r w:rsidRPr="00761A6D">
+						<w:rPr>
+							<w:sz w:val="21"/>
+							<w:szCs w:val="21"/>
+						</w:rPr>
+						<w:fldChar w:fldCharType="begin"/>
+					</w:r>
+					<w:r w:rsidR="00761A6D" w:rsidRPr="00761A6D">
+						<w:rPr>
+							<w:sz w:val="21"/>
+							<w:szCs w:val="21"/>
+						</w:rPr>
+						<w:instrText xml:space="preserve">PAGE   \* MERGEFORMAT </w:instrText>
+					</w:r>
+					<w:r w:rsidRPr="00761A6D">
+						<w:rPr>
+							<w:sz w:val="21"/>
+							<w:szCs w:val="21"/>
+						</w:rPr>
+						<w:fldChar w:fldCharType="separate"/>
+					</w:r>
+					<w:r w:rsidR="00434DAC" w:rsidRPr="00434DAC">
+						<w:rPr>
+							<w:noProof/>
+							<w:sz w:val="21"/>
+							<w:szCs w:val="21"/>
+							<w:lang w:val="zh-CN"/>
+						</w:rPr>
+						<w:t>-</w:t>
+					</w:r>
+					<w:r w:rsidR="00434DAC">
+						<w:rPr>
+							<w:noProof/>
+							<w:sz w:val="21"/>
+							<w:szCs w:val="21"/>
+						</w:rPr>
+						<w:t xml:space="preserve">1 -</w:t>
+					</w:r>
+					<w:r w:rsidRPr="00761A6D">
+						<w:rPr>
+							<w:sz w:val="21"/>
+							<w:szCs w:val="21"/>
+						</w:rPr>
+						<w:fldChar w:fldCharType="end"/>
+					</w:r>
+				</w:p>
+			</w:ftr>
+		</pkg:xmlData>
+	</pkg:part>
+	<pkg:part pkg:contentType="application/vnd.openxmlformats-officedocument.theme+xml" pkg:name="/word/theme/theme1.xml">
+		<pkg:xmlData>
+			<a:theme name="Office 主题​​" xmlns:a="http://schemas.openxmlformats.org/drawingml/2006/main">
+				<a:themeElements>
+					<a:clrScheme name="Office">
+						<a:dk1>
+							<a:sysClr lastClr="000000" val="windowText"/>
+						</a:dk1>
+						<a:lt1>
+							<a:sysClr lastClr="FFFFFF" val="window"/>
+						</a:lt1>
+						<a:dk2>
+							<a:srgbClr val="1F497D"/>
+						</a:dk2>
+						<a:lt2>
+							<a:srgbClr val="EEECE1"/>
+						</a:lt2>
+						<a:accent1>
+							<a:srgbClr val="4F81BD"/>
+						</a:accent1>
+						<a:accent2>
+							<a:srgbClr val="C0504D"/>
+						</a:accent2>
+						<a:accent3>
+							<a:srgbClr val="9BBB59"/>
+						</a:accent3>
+						<a:accent4>
+							<a:srgbClr val="8064A2"/>
+						</a:accent4>
+						<a:accent5>
+							<a:srgbClr val="4BACC6"/>
+						</a:accent5>
+						<a:accent6>
+							<a:srgbClr val="F79646"/>
+						</a:accent6>
+						<a:hlink>
+							<a:srgbClr val="0000FF"/>
+						</a:hlink>
+						<a:folHlink>
+							<a:srgbClr val="800080"/>
+						</a:folHlink>
+					</a:clrScheme>
+					<a:fontScheme name="Office">
+						<a:majorFont>
+							<a:latin typeface="Cambria"/>
+							<a:ea typeface=""/>
+							<a:cs typeface=""/>
+							<a:font script="Jpan" typeface="MS ゴシック"/>
+							<a:font script="Hang" typeface="맑은 고딕"/>
+							<a:font script="Hans" typeface="宋体"/>
+							<a:font script="Hant" typeface="新細明體"/>
+							<a:font script="Arab" typeface="Times New Roman"/>
+							<a:font script="Hebr" typeface="Times New Roman"/>
+							<a:font script="Thai" typeface="Angsana New"/>
+							<a:font script="Ethi" typeface="Nyala"/>
+							<a:font script="Beng" typeface="Vrinda"/>
+							<a:font script="Gujr" typeface="Shruti"/>
+							<a:font script="Khmr" typeface="MoolBoran"/>
+							<a:font script="Knda" typeface="Tunga"/>
+							<a:font script="Guru" typeface="Raavi"/>
+							<a:font script="Cans" typeface="Euphemia"/>
+							<a:font script="Cher" typeface="Plantagenet Cherokee"/>
+							<a:font script="Yiii" typeface="Microsoft Yi Baiti"/>
+							<a:font script="Tibt" typeface="Microsoft Himalaya"/>
+							<a:font script="Thaa" typeface="MV Boli"/>
+							<a:font script="Deva" typeface="Mangal"/>
+							<a:font script="Telu" typeface="Gautami"/>
+							<a:font script="Taml" typeface="Latha"/>
+							<a:font script="Syrc" typeface="Estrangelo Edessa"/>
+							<a:font script="Orya" typeface="Kalinga"/>
+							<a:font script="Mlym" typeface="Kartika"/>
+							<a:font script="Laoo" typeface="DokChampa"/>
+							<a:font script="Sinh" typeface="Iskoola Pota"/>
+							<a:font script="Mong" typeface="Mongolian Baiti"/>
+							<a:font script="Viet" typeface="Times New Roman"/>
+							<a:font script="Uigh" typeface="Microsoft Uighur"/>
+							<a:font script="Geor" typeface="Sylfaen"/>
+						</a:majorFont>
+						<a:minorFont>
+							<a:latin typeface="Calibri"/>
+							<a:ea typeface=""/>
+							<a:cs typeface=""/>
+							<a:font script="Jpan" typeface="MS 明朝"/>
+							<a:font script="Hang" typeface="맑은 고딕"/>
+							<a:font script="Hans" typeface="宋体"/>
+							<a:font script="Hant" typeface="新細明體"/>
+							<a:font script="Arab" typeface="Arial"/>
+							<a:font script="Hebr" typeface="Arial"/>
+							<a:font script="Thai" typeface="Cordia New"/>
+							<a:font script="Ethi" typeface="Nyala"/>
+							<a:font script="Beng" typeface="Vrinda"/>
+							<a:font script="Gujr" typeface="Shruti"/>
+							<a:font script="Khmr" typeface="DaunPenh"/>
+							<a:font script="Knda" typeface="Tunga"/>
+							<a:font script="Guru" typeface="Raavi"/>
+							<a:font script="Cans" typeface="Euphemia"/>
+							<a:font script="Cher" typeface="Plantagenet Cherokee"/>
+							<a:font script="Yiii" typeface="Microsoft Yi Baiti"/>
+							<a:font script="Tibt" typeface="Microsoft Himalaya"/>
+							<a:font script="Thaa" typeface="MV Boli"/>
+							<a:font script="Deva" typeface="Mangal"/>
+							<a:font script="Telu" typeface="Gautami"/>
+							<a:font script="Taml" typeface="Latha"/>
+							<a:font script="Syrc" typeface="Estrangelo Edessa"/>
+							<a:font script="Orya" typeface="Kalinga"/>
+							<a:font script="Mlym" typeface="Kartika"/>
+							<a:font script="Laoo" typeface="DokChampa"/>
+							<a:font script="Sinh" typeface="Iskoola Pota"/>
+							<a:font script="Mong" typeface="Mongolian Baiti"/>
+							<a:font script="Viet" typeface="Arial"/>
+							<a:font script="Uigh" typeface="Microsoft Uighur"/>
+							<a:font script="Geor" typeface="Sylfaen"/>
+						</a:minorFont>
+					</a:fontScheme>
+					<a:fmtScheme name="Office">
+						<a:fillStyleLst>
+							<a:solidFill>
+								<a:schemeClr val="phClr"/>
+							</a:solidFill>
+							<a:gradFill rotWithShape="1">
+								<a:gsLst>
+									<a:gs pos="0">
+										<a:schemeClr val="phClr">
+											<a:tint val="50000"/>
+											<a:satMod val="300000"/>
+										</a:schemeClr>
+									</a:gs>
+									<a:gs pos="35000">
+										<a:schemeClr val="phClr">
+											<a:tint val="37000"/>
+											<a:satMod val="300000"/>
+										</a:schemeClr>
+									</a:gs>
+									<a:gs pos="100000">
+										<a:schemeClr val="phClr">
+											<a:tint val="15000"/>
+											<a:satMod val="350000"/>
+										</a:schemeClr>
+									</a:gs>
+								</a:gsLst>
+								<a:lin ang="16200000" scaled="1"/>
+							</a:gradFill>
+							<a:gradFill rotWithShape="1">
+								<a:gsLst>
+									<a:gs pos="0">
+										<a:schemeClr val="phClr">
+											<a:shade val="51000"/>
+											<a:satMod val="130000"/>
+										</a:schemeClr>
+									</a:gs>
+									<a:gs pos="80000">
+										<a:schemeClr val="phClr">
+											<a:shade val="93000"/>
+											<a:satMod val="130000"/>
+										</a:schemeClr>
+									</a:gs>
+									<a:gs pos="100000">
+										<a:schemeClr val="phClr">
+											<a:shade val="94000"/>
+											<a:satMod val="135000"/>
+										</a:schemeClr>
+									</a:gs>
+								</a:gsLst>
+								<a:lin ang="16200000" scaled="0"/>
+							</a:gradFill>
+						</a:fillStyleLst>
+						<a:lnStyleLst>
+							<a:ln algn="ctr" cap="flat" cmpd="sng" w="9525">
+								<a:solidFill>
+									<a:schemeClr val="phClr">
+										<a:shade val="95000"/>
+										<a:satMod val="105000"/>
+									</a:schemeClr>
+								</a:solidFill>
+								<a:prstDash val="solid"/>
+							</a:ln>
+							<a:ln algn="ctr" cap="flat" cmpd="sng" w="25400">
+								<a:solidFill>
+									<a:schemeClr val="phClr"/>
+								</a:solidFill>
+								<a:prstDash val="solid"/>
+							</a:ln>
+							<a:ln algn="ctr" cap="flat" cmpd="sng" w="38100">
+								<a:solidFill>
+									<a:schemeClr val="phClr"/>
+								</a:solidFill>
+								<a:prstDash val="solid"/>
+							</a:ln>
+						</a:lnStyleLst>
+						<a:effectStyleLst>
+							<a:effectStyle>
+								<a:effectLst>
+									<a:outerShdw blurRad="40000" dir="5400000" dist="20000" rotWithShape="0">
+										<a:srgbClr val="000000">
+											<a:alpha val="38000"/>
+										</a:srgbClr>
+									</a:outerShdw>
+								</a:effectLst>
+							</a:effectStyle>
+							<a:effectStyle>
+								<a:effectLst>
+									<a:outerShdw blurRad="40000" dir="5400000" dist="23000" rotWithShape="0">
+										<a:srgbClr val="000000">
+											<a:alpha val="35000"/>
+										</a:srgbClr>
+									</a:outerShdw>
+								</a:effectLst>
+							</a:effectStyle>
+							<a:effectStyle>
+								<a:effectLst>
+									<a:outerShdw blurRad="40000" dir="5400000" dist="23000" rotWithShape="0">
+										<a:srgbClr val="000000">
+											<a:alpha val="35000"/>
+										</a:srgbClr>
+									</a:outerShdw>
+								</a:effectLst>
+								<a:scene3d>
+									<a:camera prst="orthographicFront">
+										<a:rot lat="0" lon="0" rev="0"/>
+									</a:camera>
+									<a:lightRig dir="t" rig="threePt">
+										<a:rot lat="0" lon="0" rev="1200000"/>
+									</a:lightRig>
+								</a:scene3d>
+								<a:sp3d>
+									<a:bevelT h="25400" w="63500"/>
+								</a:sp3d>
+							</a:effectStyle>
+						</a:effectStyleLst>
+						<a:bgFillStyleLst>
+							<a:solidFill>
+								<a:schemeClr val="phClr"/>
+							</a:solidFill>
+							<a:gradFill rotWithShape="1">
+								<a:gsLst>
+									<a:gs pos="0">
+										<a:schemeClr val="phClr">
+											<a:tint val="40000"/>
+											<a:satMod val="350000"/>
+										</a:schemeClr>
+									</a:gs>
+									<a:gs pos="40000">
+										<a:schemeClr val="phClr">
+											<a:tint val="45000"/>
+											<a:shade val="99000"/>
+											<a:satMod val="350000"/>
+										</a:schemeClr>
+									</a:gs>
+									<a:gs pos="100000">
+										<a:schemeClr val="phClr">
+											<a:shade val="20000"/>
+											<a:satMod val="255000"/>
+										</a:schemeClr>
+									</a:gs>
+								</a:gsLst>
+								<a:path path="circle">
+									<a:fillToRect b="180000" l="50000" r="50000" t="-80000"/>
+								</a:path>
+							</a:gradFill>
+							<a:gradFill rotWithShape="1">
+								<a:gsLst>
+									<a:gs pos="0">
+										<a:schemeClr val="phClr">
+											<a:tint val="80000"/>
+											<a:satMod val="300000"/>
+										</a:schemeClr>
+									</a:gs>
+									<a:gs pos="100000">
+										<a:schemeClr val="phClr">
+											<a:shade val="30000"/>
+											<a:satMod val="200000"/>
+										</a:schemeClr>
+									</a:gs>
+								</a:gsLst>
+								<a:path path="circle">
+									<a:fillToRect b="50000" l="50000" r="50000" t="50000"/>
+								</a:path>
+							</a:gradFill>
+						</a:bgFillStyleLst>
+					</a:fmtScheme>
+				</a:themeElements>
+				<a:objectDefaults/>
+				<a:extraClrSchemeLst/>
+			</a:theme>
+		</pkg:xmlData>
+	</pkg:part>
+	<pkg:part pkg:contentType="application/vnd.openxmlformats-officedocument.wordprocessingml.settings+xml" pkg:name="/word/settings.xml">
+		<pkg:xmlData>
+			<w:settings xmlns:m="http://schemas.openxmlformats.org/officeDocument/2006/math" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:r="http://schemas.openxmlformats.org/officeDocument/2006/relationships" xmlns:sl="http://schemas.openxmlformats.org/schemaLibrary/2006/main" xmlns:v="urn:schemas-microsoft-com:vml" xmlns:w="http://schemas.openxmlformats.org/wordprocessingml/2006/main" xmlns:w10="urn:schemas-microsoft-com:office:word">
+				<w:zoom w:percent="100"/>
+				<w:bordersDoNotSurroundHeader/>
+				<w:bordersDoNotSurroundFooter/>
+				<w:stylePaneFormatFilter w:val="3F01"/>
+				<w:doNotTrackMoves/>
+				<w:defaultTabStop w:val="420"/>
+				<w:drawingGridHorizontalSpacing w:val="105"/>
+				<w:drawingGridVerticalSpacing w:val="156"/>
+				<w:displayHorizontalDrawingGridEvery w:val="0"/>
+				<w:displayVerticalDrawingGridEvery w:val="2"/>
+				<w:characterSpacingControl w:val="compressPunctuation"/>
+				<w:hdrShapeDefaults>
+					<o:shapedefaults spidmax="8194" v:ext="edit"/>
+				</w:hdrShapeDefaults>
+				<w:footnotePr>
+					<w:footnote w:id="-1"/>
+					<w:footnote w:id="0"/>
+				</w:footnotePr>
+				<w:endnotePr>
+					<w:endnote w:id="-1"/>
+					<w:endnote w:id="0"/>
+				</w:endnotePr>
+				<w:compat>
+					<w:spaceForUL/>
+					<w:balanceSingleByteDoubleByteWidth/>
+					<w:doNotLeaveBackslashAlone/>
+					<w:ulTrailSpace/>
+					<w:doNotExpandShiftReturn/>
+					<w:adjustLineHeightInTable/>
+					<w:useFELayout/>
+					<w:useNormalStyleForList/>
+					<w:doNotUseIndentAsNumberingTabStop/>
+					<w:useAltKinsokuLineBreakRules/>
+					<w:allowSpaceOfSameStyleInTable/>
+					<w:doNotSuppressIndentation/>
+					<w:doNotAutofitConstrainedTables/>
+					<w:autofitToFirstFixedWidthCell/>
+					<w:displayHangulFixedWidth/>
+					<w:splitPgBreakAndParaMark/>
+					<w:doNotVertAlignCellWithSp/>
+					<w:doNotBreakConstrainedForcedTable/>
+					<w:doNotVertAlignInTxbx/>
+					<w:useAnsiKerningPairs/>
+					<w:cachedColBalance/>
+				</w:compat>
+				<w:rsids>
+					<w:rsidRoot w:val="00704D29"/>
+					<w:rsid w:val="00013B5B"/>
+					<w:rsid w:val="00017BD2"/>
+					<w:rsid w:val="00021F05"/>
+					<w:rsid w:val="00024353"/>
+					<w:rsid w:val="00032AB6"/>
+					<w:rsid w:val="000335E0"/>
+					<w:rsid w:val="00037026"/>
+					<w:rsid w:val="00041207"/>
+					<w:rsid w:val="00045F7D"/>
+					<w:rsid w:val="000634FF"/>
+					<w:rsid w:val="000675A8"/>
+					<w:rsid w:val="00072663"/>
+					<w:rsid w:val="0007594E"/>
+					<w:rsid w:val="00085453"/>
+					<w:rsid w:val="0008659D"/>
+					<w:rsid w:val="00091494"/>
+					<w:rsid w:val="000A26C9"/>
+					<w:rsid w:val="000A4291"/>
+					<w:rsid w:val="000D249A"/>
+					<w:rsid w:val="000D7EE1"/>
+					<w:rsid w:val="0010199E"/>
+					<w:rsid w:val="0012364B"/>
+					<w:rsid w:val="00130ED7"/>
+					<w:rsid w:val="001400FE"/>
+					<w:rsid w:val="001409D1"/>
+					<w:rsid w:val="0015368E"/>
+					<w:rsid w:val="001577A3"/>
+					<w:rsid w:val="00163265"/>
+					<w:rsid w:val="001644BF"/>
+					<w:rsid w:val="00171408"/>
+					<w:rsid w:val="0018259D"/>
+					<w:rsid w:val="001973CF"/>
+					<w:rsid w:val="001A2234"/>
+					<w:rsid w:val="001A590C"/>
+					<w:rsid w:val="001A6F9A"/>
+					<w:rsid w:val="001C6D03"/>
+					<w:rsid w:val="001D2BFB"/>
+					<w:rsid w:val="001D3FD8"/>
+					<w:rsid w:val="001D6937"/>
+					<w:rsid w:val="001E1A48"/>
+					<w:rsid w:val="001E349E"/>
+					<w:rsid w:val="001F1FD6"/>
+					<w:rsid w:val="001F2AE4"/>
+					<w:rsid w:val="002075AC"/>
+					<w:rsid w:val="00210DBC"/>
+					<w:rsid w:val="002136D5"/>
+					<w:rsid w:val="00223926"/>
+					<w:rsid w:val="0023107D"/>
+					<w:rsid w:val="00256922"/>
+					<w:rsid w:val="00271759"/>
+					<w:rsid w:val="00275877"/>
+					<w:rsid w:val="00280430"/>
+					<w:rsid w:val="0028270C"/>
+					<w:rsid w:val="002A4355"/>
+					<w:rsid w:val="002A490A"/>
+					<w:rsid w:val="002B0EFC"/>
+					<w:rsid w:val="002C492A"/>
+					<w:rsid w:val="002E11A7"/>
+					<w:rsid w:val="002F1D39"/>
+					<w:rsid w:val="00300D05"/>
+					<w:rsid w:val="00300FB4"/>
+					<w:rsid w:val="00302E11"/>
+					<w:rsid w:val="003165E8"/>
+					<w:rsid w:val="00320B8A"/>
+					<w:rsid w:val="003271AC"/>
+					<w:rsid w:val="00330D81"/>
+					<w:rsid w:val="003452C5"/>
+					<w:rsid w:val="00352EB1"/>
+					<w:rsid w:val="00360193"/>
+					<w:rsid w:val="00361123"/>
+					<w:rsid w:val="00362DF0"/>
+					<w:rsid w:val="00366B8D"/>
+					<w:rsid w:val="00366D83"/>
+					<w:rsid w:val="00387887"/>
+					<w:rsid w:val="003907C3"/>
+					<w:rsid w:val="003925B0"/>
+					<w:rsid w:val="003D4B52"/>
+					<w:rsid w:val="003F2697"/>
+					<w:rsid w:val="003F2DB5"/>
+					<w:rsid w:val="00406040"/>
+					<w:rsid w:val="004072CF"/>
+					<w:rsid w:val="004110E9"/>
+					<w:rsid w:val="00434DAC"/>
+					<w:rsid w:val="00440B4B"/>
+					<w:rsid w:val="00442167"/>
+					<w:rsid w:val="0046265F"/>
+					<w:rsid w:val="00467E4E"/>
+					<w:rsid w:val="00473FDB"/>
+					<w:rsid w:val="004775A3"/>
+					<w:rsid w:val="004908DE"/>
+					<w:rsid w:val="00494A57"/>
+					<w:rsid w:val="00496628"/>
+					<w:rsid w:val="004B0E53"/>
+					<w:rsid w:val="004B2EDE"/>
+					<w:rsid w:val="004B4FE3"/>
+					<w:rsid w:val="004B56A1"/>
+					<w:rsid w:val="004D3783"/>
+					<w:rsid w:val="004D582C"/>
+					<w:rsid w:val="004E35AD"/>
+					<w:rsid w:val="004F12B4"/>
+					<w:rsid w:val="00505A8F"/>
+					<w:rsid w:val="005103D6"/>
+					<w:rsid w:val="0051564D"/>
+					<w:rsid w:val="00515746"/>
+					<w:rsid w:val="00523CD8"/>
+					<w:rsid w:val="0053449B"/>
+					<w:rsid w:val="00584DEB"/>
+					<w:rsid w:val="00595E9A"/>
+					<w:rsid w:val="005A1C06"/>
+					<w:rsid w:val="005A4541"/>
+					<w:rsid w:val="005B0CA3"/>
+					<w:rsid w:val="005C2812"/>
+					<w:rsid w:val="005C3104"/>
+					<w:rsid w:val="005C4F99"/>
+					<w:rsid w:val="005C6D37"/>
+					<w:rsid w:val="005C7401"/>
+					<w:rsid w:val="005D4AB5"/>
+					<w:rsid w:val="005E06FB"/>
+					<w:rsid w:val="00604C4E"/>
+					<w:rsid w:val="00607681"/>
+					<w:rsid w:val="006164E8"/>
+					<w:rsid w:val="0063790A"/>
+					<w:rsid w:val="00650B9D"/>
+					<w:rsid w:val="0066580D"/>
+					<w:rsid w:val="0067001D"/>
+					<w:rsid w:val="00672D0B"/>
+					<w:rsid w:val="00673A66"/>
+					<w:rsid w:val="00681FC6"/>
+					<w:rsid w:val="0068345B"/>
+					<w:rsid w:val="00686BEF"/>
+					<w:rsid w:val="00687CD1"/>
+					<w:rsid w:val="00691209"/>
+					<w:rsid w:val="006976BF"/>
+					<w:rsid w:val="00697C8B"/>
+					<w:rsid w:val="006A4731"/>
+					<w:rsid w:val="006B0A10"/>
+					<w:rsid w:val="006C3AF0"/>
+					<w:rsid w:val="006D7134"/>
+					<w:rsid w:val="006E2D68"/>
+					<w:rsid w:val="006E31F6"/>
+					<w:rsid w:val="006E50E5"/>
+					<w:rsid w:val="00704D29"/>
+					<w:rsid w:val="0075370A"/>
+					<w:rsid w:val="00755E9E"/>
+					<w:rsid w:val="00761A6D"/>
+					<w:rsid w:val="007620DA"/>
+					<w:rsid w:val="0077243B"/>
+					<w:rsid w:val="00790892"/>
+					<w:rsid w:val="00796618"/>
+					<w:rsid w:val="007A117C"/>
+					<w:rsid w:val="007C462F"/>
+					<w:rsid w:val="007D418E"/>
+					<w:rsid w:val="007D79C6"/>
+					<w:rsid w:val="007F0875"/>
+					<w:rsid w:val="007F0B73"/>
+					<w:rsid w:val="007F2C0B"/>
+					<w:rsid w:val="007F49E4"/>
+					<w:rsid w:val="0080095C"/>
+					<w:rsid w:val="00800F02"/>
+					<w:rsid w:val="00824944"/>
+					<w:rsid w:val="00846AEA"/>
+					<w:rsid w:val="00847F37"/>
+					<w:rsid w:val="00852887"/>
+					<w:rsid w:val="00872835"/>
+					<w:rsid w:val="008A675A"/>
+					<w:rsid w:val="008B3D93"/>
+					<w:rsid w:val="008C6A72"/>
+					<w:rsid w:val="008E6EC4"/>
+					<w:rsid w:val="008F220F"/>
+					<w:rsid w:val="0090557A"/>
+					<w:rsid w:val="0090721C"/>
+					<w:rsid w:val="009166C9"/>
+					<w:rsid w:val="00923DA0"/>
+					<w:rsid w:val="009260B5"/>
+					<w:rsid w:val="00930061"/>
+					<w:rsid w:val="00942CDF"/>
+					<w:rsid w:val="00950E61"/>
+					<w:rsid w:val="00955048"/>
+					<w:rsid w:val="009554A8"/>
+					<w:rsid w:val="00955E36"/>
+					<w:rsid w:val="00956E30"/>
+					<w:rsid w:val="00961BB1"/>
+					<w:rsid w:val="00967156"/>
+					<w:rsid w:val="00980DC7"/>
+					<w:rsid w:val="009914D1"/>
+					<w:rsid w:val="009A18EB"/>
+					<w:rsid w:val="009F69C1"/>
+					<w:rsid w:val="00A16045"/>
+					<w:rsid w:val="00A31223"/>
+					<w:rsid w:val="00A41C3A"/>
+					<w:rsid w:val="00A600F0"/>
+					<w:rsid w:val="00A64D36"/>
+					<w:rsid w:val="00A669E4"/>
+					<w:rsid w:val="00A91E20"/>
+					<w:rsid w:val="00AA16BB"/>
+					<w:rsid w:val="00AC3DDB"/>
+					<w:rsid w:val="00AC7C04"/>
+					<w:rsid w:val="00AD1A65"/>
+					<w:rsid w:val="00AD6F3A"/>
+					<w:rsid w:val="00AE0411"/>
+					<w:rsid w:val="00AF6276"/>
+					<w:rsid w:val="00AF70CE"/>
+					<w:rsid w:val="00B009DE"/>
+					<w:rsid w:val="00B02463"/>
+					<w:rsid w:val="00B15262"/>
+					<w:rsid w:val="00B22F2E"/>
+					<w:rsid w:val="00B56AFE"/>
+					<w:rsid w:val="00B56D1E"/>
+					<w:rsid w:val="00B570FB"/>
+					<w:rsid w:val="00B578C1"/>
+					<w:rsid w:val="00B6458D"/>
+					<w:rsid w:val="00B74F06"/>
+					<w:rsid w:val="00B91B1A"/>
+					<w:rsid w:val="00BA00F0"/>
+					<w:rsid w:val="00BB7424"/>
+					<w:rsid w:val="00BC611E"/>
+					<w:rsid w:val="00BE5DDC"/>
+					<w:rsid w:val="00C0008F"/>
+					<w:rsid w:val="00C051F1"/>
+					<w:rsid w:val="00C13F86"/>
+					<w:rsid w:val="00C15C76"/>
+					<w:rsid w:val="00C37B83"/>
+					<w:rsid w:val="00C52851"/>
+					<w:rsid w:val="00C52CFB"/>
+					<w:rsid w:val="00C55CC3"/>
+					<w:rsid w:val="00C91D8E"/>
+					<w:rsid w:val="00C93D1E"/>
+					<w:rsid w:val="00CA64A5"/>
+					<w:rsid w:val="00CB1F89"/>
+					<w:rsid w:val="00CB7C72"/>
+					<w:rsid w:val="00CE3A65"/>
+					<w:rsid w:val="00CF6269"/>
+					<w:rsid w:val="00CF6E1A"/>
+					<w:rsid w:val="00D02820"/>
+					<w:rsid w:val="00D07140"/>
+					<w:rsid w:val="00D17D54"/>
+					<w:rsid w:val="00D43792"/>
+					<w:rsid w:val="00D50577"/>
+					<w:rsid w:val="00D55C78"/>
+					<w:rsid w:val="00D66D60"/>
+					<w:rsid w:val="00D85659"/>
+					<w:rsid w:val="00D87C35"/>
+					<w:rsid w:val="00D948E2"/>
+					<w:rsid w:val="00DA04B6"/>
+					<w:rsid w:val="00DA558B"/>
+					<w:rsid w:val="00DD230C"/>
+					<w:rsid w:val="00DD6E04"/>
+					<w:rsid w:val="00DD7F46"/>
+					<w:rsid w:val="00DE376D"/>
+					<w:rsid w:val="00DF64E3"/>
+					<w:rsid w:val="00DF7B72"/>
+					<w:rsid w:val="00E05F09"/>
+					<w:rsid w:val="00E11ACF"/>
+					<w:rsid w:val="00E17E78"/>
+					<w:rsid w:val="00E30F8F"/>
+					<w:rsid w:val="00E35AA6"/>
+					<w:rsid w:val="00E56C79"/>
+					<w:rsid w:val="00E72F4D"/>
+					<w:rsid w:val="00E8529F"/>
+					<w:rsid w:val="00E965FC"/>
+					<w:rsid w:val="00EA2F18"/>
+					<w:rsid w:val="00EB1E10"/>
+					<w:rsid w:val="00EB3511"/>
+					<w:rsid w:val="00EB5A61"/>
+					<w:rsid w:val="00EB6BE7"/>
+					<w:rsid w:val="00EC68F5"/>
+					<w:rsid w:val="00EE1A58"/>
+					<w:rsid w:val="00EE27E1"/>
+					<w:rsid w:val="00F029FF"/>
+					<w:rsid w:val="00F17F9A"/>
+					<w:rsid w:val="00F30893"/>
+					<w:rsid w:val="00F3740E"/>
+					<w:rsid w:val="00F40516"/>
+					<w:rsid w:val="00F57C82"/>
+					<w:rsid w:val="00F675E5"/>
+					<w:rsid w:val="00F8046C"/>
+					<w:rsid w:val="00F825CF"/>
+					<w:rsid w:val="00F94B2F"/>
+					<w:rsid w:val="00FB0604"/>
+					<w:rsid w:val="00FB1452"/>
+					<w:rsid w:val="00FE08EA"/>
+					<w:rsid w:val="00FE5490"/>
+					<w:rsid w:val="00FF14B8"/>
+				</w:rsids>
+				<m:mathPr>
+					<m:mathFont m:val="Cambria Math"/>
+					<m:brkBin m:val="before"/>
+					<m:brkBinSub m:val="--"/>
+					<m:smallFrac m:val="off"/>
+					<m:dispDef/>
+					<m:lMargin m:val="0"/>
+					<m:rMargin m:val="0"/>
+					<m:defJc m:val="centerGroup"/>
+					<m:wrapIndent m:val="1440"/>
+					<m:intLim m:val="subSup"/>
+					<m:naryLim m:val="undOvr"/>
+				</m:mathPr>
+				<w:uiCompat97To2003/>
+				<w:themeFontLang w:eastAsia="zh-CN" w:val="en-US"/>
+				<w:clrSchemeMapping w:accent1="accent1" w:accent2="accent2" w:accent3="accent3" w:accent4="accent4" w:accent5="accent5" w:accent6="accent6" w:bg1="light1" w:bg2="light2" w:followedHyperlink="followedHyperlink" w:hyperlink="hyperlink" w:t1="dark1" w:t2="dark2"/>
+				<w:doNotIncludeSubdocsInStats/>
+				<w:shapeDefaults>
+					<o:shapedefaults spidmax="8194" v:ext="edit"/>
+					<o:shapelayout v:ext="edit">
+						<o:idmap data="1" v:ext="edit"/>
+					</o:shapelayout>
+				</w:shapeDefaults>
+				<w:decimalSymbol w:val="."/>
+				<w:listSeparator w:val=","/>
+			</w:settings>
+		</pkg:xmlData>
+	</pkg:part>
+	<pkg:part pkg:contentType="application/vnd.openxmlformats-officedocument.wordprocessingml.webSettings+xml" pkg:name="/word/webSettings.xml">
+		<pkg:xmlData>
+			<w:webSettings xmlns:r="http://schemas.openxmlformats.org/officeDocument/2006/relationships" xmlns:w="http://schemas.openxmlformats.org/wordprocessingml/2006/main">
+				<w:divs>
+					<w:div w:id="455612022">
+						<w:bodyDiv w:val="1"/>
+						<w:marLeft w:val="0"/>
+						<w:marRight w:val="0"/>
+						<w:marTop w:val="0"/>
+						<w:marBottom w:val="0"/>
+						<w:divBdr>
+							<w:top w:color="auto" w:space="0" w:sz="0" w:val="none"/>
+							<w:left w:color="auto" w:space="0" w:sz="0" w:val="none"/>
+							<w:bottom w:color="auto" w:space="0" w:sz="0" w:val="none"/>
+							<w:right w:color="auto" w:space="0" w:sz="0" w:val="none"/>
+						</w:divBdr>
+						<w:divsChild>
+							<w:div w:id="844171662">
+								<w:marLeft w:val="0"/>
+								<w:marRight w:val="0"/>
+								<w:marTop w:val="0"/>
+								<w:marBottom w:val="0"/>
+								<w:divBdr>
+									<w:top w:color="auto" w:space="0" w:sz="0" w:val="none"/>
+									<w:left w:color="auto" w:space="0" w:sz="0" w:val="none"/>
+									<w:bottom w:color="auto" w:space="0" w:sz="0" w:val="none"/>
+									<w:right w:color="auto" w:space="0" w:sz="0" w:val="none"/>
+								</w:divBdr>
+							</w:div>
+						</w:divsChild>
+					</w:div>
+				</w:divs>
+				<w:optimizeForBrowser/>
+			</w:webSettings>
+		</pkg:xmlData>
+	</pkg:part>
+	<pkg:part pkg:contentType="application/vnd.openxmlformats-officedocument.wordprocessingml.styles+xml" pkg:name="/word/styles.xml">
+		<pkg:xmlData>
+			<w:styles xmlns:r="http://schemas.openxmlformats.org/officeDocument/2006/relationships" xmlns:w="http://schemas.openxmlformats.org/wordprocessingml/2006/main">
+				<w:docDefaults>
+					<w:rPrDefault>
+						<w:rPr>
+							<w:rFonts w:ascii="Times New Roman" w:cs="Times New Roman" w:eastAsia="宋体" w:hAnsi="Times New Roman"/>
+							<w:lang w:bidi="ar-SA" w:eastAsia="zh-CN" w:val="en-US"/>
+						</w:rPr>
+					</w:rPrDefault>
+					<w:pPrDefault/>
+				</w:docDefaults>
+				<w:latentStyles w:count="267" w:defLockedState="0" w:defQFormat="0" w:defSemiHidden="0" w:defUIPriority="0" w:defUnhideWhenUsed="0">
+					<w:lsdException w:name="Normal" w:qFormat="1"/>
+					<w:lsdException w:name="heading 1" w:qFormat="1"/>
+					<w:lsdException w:name="heading 2" w:qFormat="1" w:semiHidden="1" w:unhideWhenUsed="1"/>
+					<w:lsdException w:name="heading 3" w:qFormat="1" w:semiHidden="1" w:unhideWhenUsed="1"/>
+					<w:lsdException w:name="heading 4" w:qFormat="1" w:semiHidden="1" w:unhideWhenUsed="1"/>
+					<w:lsdException w:name="heading 5" w:qFormat="1" w:semiHidden="1" w:unhideWhenUsed="1"/>
+					<w:lsdException w:name="heading 6" w:qFormat="1" w:semiHidden="1" w:unhideWhenUsed="1"/>
+					<w:lsdException w:name="heading 7" w:qFormat="1" w:semiHidden="1" w:unhideWhenUsed="1"/>
+					<w:lsdException w:name="heading 8" w:qFormat="1" w:semiHidden="1" w:unhideWhenUsed="1"/>
+					<w:lsdException w:name="heading 9" w:qFormat="1" w:semiHidden="1" w:unhideWhenUsed="1"/>
+					<w:lsdException w:name="header" w:uiPriority="99"/>
+					<w:lsdException w:name="footer" w:uiPriority="99"/>
+					<w:lsdException w:name="caption" w:qFormat="1" w:semiHidden="1" w:unhideWhenUsed="1"/>
+					<w:lsdException w:name="Title" w:qFormat="1"/>
+					<w:lsdException w:name="Subtitle" w:qFormat="1"/>
+					<w:lsdException w:name="Strong" w:qFormat="1"/>
+					<w:lsdException w:name="Emphasis" w:qFormat="1"/>
+					<w:lsdException w:name="Placeholder Text" w:semiHidden="1" w:uiPriority="99"/>
+					<w:lsdException w:name="No Spacing" w:qFormat="1" w:uiPriority="1"/>
+					<w:lsdException w:name="Light Shading" w:uiPriority="60"/>
+					<w:lsdException w:name="Light List" w:uiPriority="61"/>
+					<w:lsdException w:name="Light Grid" w:uiPriority="62"/>
+					<w:lsdException w:name="Medium Shading 1" w:uiPriority="63"/>
+					<w:lsdException w:name="Medium Shading 2" w:uiPriority="64"/>
+					<w:lsdException w:name="Medium List 1" w:uiPriority="65"/>
+					<w:lsdException w:name="Medium List 2" w:uiPriority="66"/>
+					<w:lsdException w:name="Medium Grid 1" w:uiPriority="67"/>
+					<w:lsdException w:name="Medium Grid 2" w:uiPriority="68"/>
+					<w:lsdException w:name="Medium Grid 3" w:uiPriority="69"/>
+					<w:lsdException w:name="Dark List" w:uiPriority="70"/>
+					<w:lsdException w:name="Colorful Shading" w:uiPriority="71"/>
+					<w:lsdException w:name="Colorful List" w:uiPriority="72"/>
+					<w:lsdException w:name="Colorful Grid" w:uiPriority="73"/>
+					<w:lsdException w:name="Light Shading Accent 1" w:uiPriority="60"/>
+					<w:lsdException w:name="Light List Accent 1" w:uiPriority="61"/>
+					<w:lsdException w:name="Light Grid Accent 1" w:uiPriority="62"/>
+					<w:lsdException w:name="Medium Shading 1 Accent 1" w:uiPriority="63"/>
+					<w:lsdException w:name="Medium Shading 2 Accent 1" w:uiPriority="64"/>
+					<w:lsdException w:name="Medium List 1 Accent 1" w:uiPriority="65"/>
+					<w:lsdException w:name="Revision" w:semiHidden="1" w:uiPriority="99"/>
+					<w:lsdException w:name="List Paragraph" w:qFormat="1" w:uiPriority="34"/>
+					<w:lsdException w:name="Quote" w:qFormat="1" w:uiPriority="29"/>
+					<w:lsdException w:name="Intense Quote" w:qFormat="1" w:uiPriority="30"/>
+					<w:lsdException w:name="Medium List 2 Accent 1" w:uiPriority="66"/>
+					<w:lsdException w:name="Medium Grid 1 Accent 1" w:uiPriority="67"/>
+					<w:lsdException w:name="Medium Grid 2 Accent 1" w:uiPriority="68"/>
+					<w:lsdException w:name="Medium Grid 3 Accent 1" w:uiPriority="69"/>
+					<w:lsdException w:name="Dark List Accent 1" w:uiPriority="70"/>
+					<w:lsdException w:name="Colorful Shading Accent 1" w:uiPriority="71"/>
+					<w:lsdException w:name="Colorful List Accent 1" w:uiPriority="72"/>
+					<w:lsdException w:name="Colorful Grid Accent 1" w:uiPriority="73"/>
+					<w:lsdException w:name="Light Shading Accent 2" w:uiPriority="60"/>
+					<w:lsdException w:name="Light List Accent 2" w:uiPriority="61"/>
+					<w:lsdException w:name="Light Grid Accent 2" w:uiPriority="62"/>
+					<w:lsdException w:name="Medium Shading 1 Accent 2" w:uiPriority="63"/>
+					<w:lsdException w:name="Medium Shading 2 Accent 2" w:uiPriority="64"/>
+					<w:lsdException w:name="Medium List 1 Accent 2" w:uiPriority="65"/>
+					<w:lsdException w:name="Medium List 2 Accent 2" w:uiPriority="66"/>
+					<w:lsdException w:name="Medium Grid 1 Accent 2" w:uiPriority="67"/>
+					<w:lsdException w:name="Medium Grid 2 Accent 2" w:uiPriority="68"/>
+					<w:lsdException w:name="Medium Grid 3 Accent 2" w:uiPriority="69"/>
+					<w:lsdException w:name="Dark List Accent 2" w:uiPriority="70"/>
+					<w:lsdException w:name="Colorful Shading Accent 2" w:uiPriority="71"/>
+					<w:lsdException w:name="Colorful List Accent 2" w:uiPriority="72"/>
+					<w:lsdException w:name="Colorful Grid Accent 2" w:uiPriority="73"/>
+					<w:lsdException w:name="Light Shading Accent 3" w:uiPriority="60"/>
+					<w:lsdException w:name="Light List Accent 3" w:uiPriority="61"/>
+					<w:lsdException w:name="Light Grid Accent 3" w:uiPriority="62"/>
+					<w:lsdException w:name="Medium Shading 1 Accent 3" w:uiPriority="63"/>
+					<w:lsdException w:name="Medium Shading 2 Accent 3" w:uiPriority="64"/>
+					<w:lsdException w:name="Medium List 1 Accent 3" w:uiPriority="65"/>
+					<w:lsdException w:name="Medium List 2 Accent 3" w:uiPriority="66"/>
+					<w:lsdException w:name="Medium Grid 1 Accent 3" w:uiPriority="67"/>
+					<w:lsdException w:name="Medium Grid 2 Accent 3" w:uiPriority="68"/>
+					<w:lsdException w:name="Medium Grid 3 Accent 3" w:uiPriority="69"/>
+					<w:lsdException w:name="Dark List Accent 3" w:uiPriority="70"/>
+					<w:lsdException w:name="Colorful Shading Accent 3" w:uiPriority="71"/>
+					<w:lsdException w:name="Colorful List Accent 3" w:uiPriority="72"/>
+					<w:lsdException w:name="Colorful Grid Accent 3" w:uiPriority="73"/>
+					<w:lsdException w:name="Light Shading Accent 4" w:uiPriority="60"/>
+					<w:lsdException w:name="Light List Accent 4" w:uiPriority="61"/>
+					<w:lsdException w:name="Light Grid Accent 4" w:uiPriority="62"/>
+					<w:lsdException w:name="Medium Shading 1 Accent 4" w:uiPriority="63"/>
+					<w:lsdException w:name="Medium Shading 2 Accent 4" w:uiPriority="64"/>
+					<w:lsdException w:name="Medium List 1 Accent 4" w:uiPriority="65"/>
+					<w:lsdException w:name="Medium List 2 Accent 4" w:uiPriority="66"/>
+					<w:lsdException w:name="Medium Grid 1 Accent 4" w:uiPriority="67"/>
+					<w:lsdException w:name="Medium Grid 2 Accent 4" w:uiPriority="68"/>
+					<w:lsdException w:name="Medium Grid 3 Accent 4" w:uiPriority="69"/>
+					<w:lsdException w:name="Dark List Accent 4" w:uiPriority="70"/>
+					<w:lsdException w:name="Colorful Shading Accent 4" w:uiPriority="71"/>
+					<w:lsdException w:name="Colorful List Accent 4" w:uiPriority="72"/>
+					<w:lsdException w:name="Colorful Grid Accent 4" w:uiPriority="73"/>
+					<w:lsdException w:name="Light Shading Accent 5" w:uiPriority="60"/>
+					<w:lsdException w:name="Light List Accent 5" w:uiPriority="61"/>
+					<w:lsdException w:name="Light Grid Accent 5" w:uiPriority="62"/>
+					<w:lsdException w:name="Medium Shading 1 Accent 5" w:uiPriority="63"/>
+					<w:lsdException w:name="Medium Shading 2 Accent 5" w:uiPriority="64"/>
+					<w:lsdException w:name="Medium List 1 Accent 5" w:uiPriority="65"/>
+					<w:lsdException w:name="Medium List 2 Accent 5" w:uiPriority="66"/>
+					<w:lsdException w:name="Medium Grid 1 Accent 5" w:uiPriority="67"/>
+					<w:lsdException w:name="Medium Grid 2 Accent 5" w:uiPriority="68"/>
+					<w:lsdException w:name="Medium Grid 3 Accent 5" w:uiPriority="69"/>
+					<w:lsdException w:name="Dark List Accent 5" w:uiPriority="70"/>
+					<w:lsdException w:name="Colorful Shading Accent 5" w:uiPriority="71"/>
+					<w:lsdException w:name="Colorful List Accent 5" w:uiPriority="72"/>
+					<w:lsdException w:name="Colorful Grid Accent 5" w:uiPriority="73"/>
+					<w:lsdException w:name="Light Shading Accent 6" w:uiPriority="60"/>
+					<w:lsdException w:name="Light List Accent 6" w:uiPriority="61"/>
+					<w:lsdException w:name="Light Grid Accent 6" w:uiPriority="62"/>
+					<w:lsdException w:name="Medium Shading 1 Accent 6" w:uiPriority="63"/>
+					<w:lsdException w:name="Medium Shading 2 Accent 6" w:uiPriority="64"/>
+					<w:lsdException w:name="Medium List 1 Accent 6" w:uiPriority="65"/>
+					<w:lsdException w:name="Medium List 2 Accent 6" w:uiPriority="66"/>
+					<w:lsdException w:name="Medium Grid 1 Accent 6" w:uiPriority="67"/>
+					<w:lsdException w:name="Medium Grid 2 Accent 6" w:uiPriority="68"/>
+					<w:lsdException w:name="Medium Grid 3 Accent 6" w:uiPriority="69"/>
+					<w:lsdException w:name="Dark List Accent 6" w:uiPriority="70"/>
+					<w:lsdException w:name="Colorful Shading Accent 6" w:uiPriority="71"/>
+					<w:lsdException w:name="Colorful List Accent 6" w:uiPriority="72"/>
+					<w:lsdException w:name="Colorful Grid Accent 6" w:uiPriority="73"/>
+					<w:lsdException w:name="Subtle Emphasis" w:qFormat="1" w:uiPriority="19"/>
+					<w:lsdException w:name="Intense Emphasis" w:qFormat="1" w:uiPriority="21"/>
+					<w:lsdException w:name="Subtle Reference" w:qFormat="1" w:uiPriority="31"/>
+					<w:lsdException w:name="Intense Reference" w:qFormat="1" w:uiPriority="32"/>
+					<w:lsdException w:name="Book Title" w:qFormat="1" w:uiPriority="33"/>
+					<w:lsdException w:name="Bibliography" w:semiHidden="1" w:uiPriority="37" w:unhideWhenUsed="1"/>
+					<w:lsdException w:name="TOC Heading" w:qFormat="1" w:semiHidden="1" w:uiPriority="39" w:unhideWhenUsed="1"/>
+				</w:latentStyles>
+				<w:style w:default="1" w:styleId="a" w:type="paragraph">
+					<w:name w:val="Normal"/>
+					<w:qFormat/>
+					<w:rsid w:val="00704D29"/>
+					<w:pPr>
+						<w:widowControl w:val="0"/>
+						<w:jc w:val="both"/>
+					</w:pPr>
+					<w:rPr>
+						<w:kern w:val="2"/>
+						<w:sz w:val="21"/>
+						<w:szCs w:val="24"/>
+					</w:rPr>
+				</w:style>
+				<w:style w:styleId="1" w:type="paragraph">
+					<w:name w:val="heading 1"/>
+					<w:basedOn w:val="a"/>
+					<w:next w:val="a"/>
+					<w:link w:val="1Char"/>
+					<w:qFormat/>
+					<w:rsid w:val="00B02463"/>
+					<w:pPr>
+						<w:keepNext/>
+						<w:widowControl/>
+						<w:ind w:firstLine="435"/>
+						<w:jc w:val="left"/>
+						<w:outlineLvl w:val="0"/>
+					</w:pPr>
+					<w:rPr>
+						<w:rFonts w:ascii="宋体" w:hAnsi="宋体"/>
+						<w:kern w:val="0"/>
+						<w:sz w:val="28"/>
+						<w:lang/>
+					</w:rPr>
+				</w:style>
+				<w:style w:styleId="2" w:type="paragraph">
+					<w:name w:val="heading 2"/>
+					<w:basedOn w:val="a"/>
+					<w:next w:val="a"/>
+					<w:link w:val="2Char"/>
+					<w:semiHidden/>
+					<w:unhideWhenUsed/>
+					<w:qFormat/>
+					<w:rsid w:val="00B02463"/>
+					<w:pPr>
+						<w:keepNext/>
+						<w:keepLines/>
+						<w:spacing w:after="260" w:before="260" w:line="416" w:lineRule="auto"/>
+						<w:outlineLvl w:val="1"/>
+					</w:pPr>
+					<w:rPr>
+						<w:rFonts w:ascii="Cambria" w:hAnsi="Cambria"/>
+						<w:b/>
+						<w:bCs/>
+						<w:sz w:val="32"/>
+						<w:szCs w:val="32"/>
+						<w:lang/>
+					</w:rPr>
+				</w:style>
+				<w:style w:default="1" w:styleId="a0" w:type="character">
+					<w:name w:val="Default Paragraph Font"/>
+					<w:uiPriority w:val="1"/>
+					<w:semiHidden/>
+					<w:unhideWhenUsed/>
+				</w:style>
+				<w:style w:default="1" w:styleId="a1" w:type="table">
+					<w:name w:val="Normal Table"/>
+					<w:uiPriority w:val="99"/>
+					<w:semiHidden/>
+					<w:unhideWhenUsed/>
+					<w:qFormat/>
+					<w:tblPr>
+						<w:tblInd w:type="dxa" w:w="0"/>
+						<w:tblCellMar>
+							<w:top w:type="dxa" w:w="0"/>
+							<w:left w:type="dxa" w:w="108"/>
+							<w:bottom w:type="dxa" w:w="0"/>
+							<w:right w:type="dxa" w:w="108"/>
+						</w:tblCellMar>
+					</w:tblPr>
+				</w:style>
+				<w:style w:default="1" w:styleId="a2" w:type="numbering">
+					<w:name w:val="No List"/>
+					<w:uiPriority w:val="99"/>
+					<w:semiHidden/>
+					<w:unhideWhenUsed/>
+				</w:style>
+				<w:style w:styleId="a3" w:type="paragraph">
+					<w:name w:val="footer"/>
+					<w:basedOn w:val="a"/>
+					<w:link w:val="Char"/>
+					<w:uiPriority w:val="99"/>
+					<w:rsid w:val="00704D29"/>
+					<w:pPr>
+						<w:tabs>
+							<w:tab w:pos="4153" w:val="center"/>
+							<w:tab w:pos="8306" w:val="right"/>
+						</w:tabs>
+						<w:snapToGrid w:val="0"/>
+						<w:jc w:val="left"/>
+					</w:pPr>
+					<w:rPr>
+						<w:sz w:val="18"/>
+						<w:szCs w:val="18"/>
+						<w:lang/>
+					</w:rPr>
+				</w:style>
+				<w:style w:styleId="a4" w:type="character">
+					<w:name w:val="page number"/>
+					<w:basedOn w:val="a0"/>
+					<w:rsid w:val="00704D29"/>
+				</w:style>
+				<w:style w:styleId="a5" w:type="paragraph">
+					<w:name w:val="header"/>
+					<w:basedOn w:val="a"/>
+					<w:link w:val="Char0"/>
+					<w:uiPriority w:val="99"/>
+					<w:rsid w:val="00595E9A"/>
+					<w:pPr>
+						<w:pBdr>
+							<w:bottom w:color="auto" w:space="1" w:sz="6" w:val="single"/>
+						</w:pBdr>
+						<w:tabs>
+							<w:tab w:pos="4153" w:val="center"/>
+							<w:tab w:pos="8306" w:val="right"/>
+						</w:tabs>
+						<w:snapToGrid w:val="0"/>
+						<w:jc w:val="center"/>
+					</w:pPr>
+					<w:rPr>
+						<w:sz w:val="18"/>
+						<w:szCs w:val="18"/>
+						<w:lang/>
+					</w:rPr>
+				</w:style>
+				<w:style w:customStyle="1" w:styleId="Char0" w:type="character">
+					<w:name w:val="页眉 Char"/>
+					<w:link w:val="a5"/>
+					<w:uiPriority w:val="99"/>
+					<w:rsid w:val="00595E9A"/>
+					<w:rPr>
+						<w:kern w:val="2"/>
+						<w:sz w:val="18"/>
+						<w:szCs w:val="18"/>
+					</w:rPr>
+				</w:style>
+				<w:style w:customStyle="1" w:styleId="1Char" w:type="character">
+					<w:name w:val="标题 1 Char"/>
+					<w:link w:val="1"/>
+					<w:rsid w:val="00B02463"/>
+					<w:rPr>
+						<w:rFonts w:ascii="宋体" w:hAnsi="宋体"/>
+						<w:sz w:val="28"/>
+						<w:szCs w:val="24"/>
+					</w:rPr>
+				</w:style>
+				<w:style w:customStyle="1" w:styleId="2Char" w:type="character">
+					<w:name w:val="标题 2 Char"/>
+					<w:link w:val="2"/>
+					<w:semiHidden/>
+					<w:rsid w:val="00B02463"/>
+					<w:rPr>
+						<w:rFonts w:ascii="Cambria" w:cs="Times New Roman" w:eastAsia="宋体" w:hAnsi="Cambria"/>
+						<w:b/>
+						<w:bCs/>
+						<w:kern w:val="2"/>
+						<w:sz w:val="32"/>
+						<w:szCs w:val="32"/>
+					</w:rPr>
+				</w:style>
+				<w:style w:customStyle="1" w:styleId="MTDisplayEquation" w:type="paragraph">
+					<w:name w:val="MTDisplayEquation"/>
+					<w:basedOn w:val="a"/>
+					<w:next w:val="a"/>
+					<w:rsid w:val="00B02463"/>
+					<w:pPr>
+						<w:widowControl/>
+						<w:tabs>
+							<w:tab w:pos="4540" w:val="center"/>
+							<w:tab w:pos="9080" w:val="right"/>
+						</w:tabs>
+						<w:jc w:val="left"/>
+					</w:pPr>
+					<w:rPr>
+						<w:rFonts w:ascii="宋体" w:hAnsi="宋体"/>
+						<w:kern w:val="0"/>
+						<w:sz w:val="28"/>
+					</w:rPr>
+				</w:style>
+				<w:style w:customStyle="1" w:styleId="Char" w:type="character">
+					<w:name w:val="页脚 Char"/>
+					<w:link w:val="a3"/>
+					<w:uiPriority w:val="99"/>
+					<w:rsid w:val="00B570FB"/>
+					<w:rPr>
+						<w:kern w:val="2"/>
+						<w:sz w:val="18"/>
+						<w:szCs w:val="18"/>
+					</w:rPr>
+				</w:style>
+				<w:style w:styleId="a6" w:type="paragraph">
+					<w:name w:val="Balloon Text"/>
+					<w:basedOn w:val="a"/>
+					<w:link w:val="Char1"/>
+					<w:rsid w:val="00B570FB"/>
+					<w:rPr>
+						<w:sz w:val="18"/>
+						<w:szCs w:val="18"/>
+						<w:lang/>
+					</w:rPr>
+				</w:style>
+				<w:style w:customStyle="1" w:styleId="Char1" w:type="character">
+					<w:name w:val="批注框文本 Char"/>
+					<w:link w:val="a6"/>
+					<w:rsid w:val="00B570FB"/>
+					<w:rPr>
+						<w:kern w:val="2"/>
+						<w:sz w:val="18"/>
+						<w:szCs w:val="18"/>
+					</w:rPr>
+				</w:style>
+				<w:style w:styleId="a7" w:type="paragraph">
+					<w:name w:val="No Spacing"/>
+					<w:link w:val="Char2"/>
+					<w:uiPriority w:val="1"/>
+					<w:qFormat/>
+					<w:rsid w:val="00B570FB"/>
+					<w:rPr>
+						<w:rFonts w:ascii="Calibri" w:hAnsi="Calibri"/>
+						<w:sz w:val="22"/>
+						<w:szCs w:val="22"/>
+					</w:rPr>
+				</w:style>
+				<w:style w:customStyle="1" w:styleId="Char2" w:type="character">
+					<w:name w:val="无间隔 Char"/>
+					<w:link w:val="a7"/>
+					<w:uiPriority w:val="1"/>
+					<w:rsid w:val="00B570FB"/>
+					<w:rPr>
+						<w:rFonts w:ascii="Calibri" w:hAnsi="Calibri"/>
+						<w:sz w:val="22"/>
+						<w:szCs w:val="22"/>
+						<w:lang w:bidi="ar-SA" w:eastAsia="zh-CN" w:val="en-US"/>
+					</w:rPr>
+				</w:style>
+				<w:style w:styleId="a8" w:type="paragraph">
+					<w:name w:val="List Paragraph"/>
+					<w:basedOn w:val="a"/>
+					<w:uiPriority w:val="34"/>
+					<w:qFormat/>
+					<w:rsid w:val="001A590C"/>
+					<w:pPr>
+						<w:ind w:firstLine="420" w:firstLineChars="200"/>
+					</w:pPr>
+				</w:style>
+				<w:style w:styleId="20" w:type="paragraph">
+					<w:name w:val="List 2"/>
+					<w:basedOn w:val="a"/>
+					<w:rsid w:val="00DE376D"/>
+					<w:pPr>
+						<w:ind w:hanging="200" w:left="100"/>
+					</w:pPr>
+					<w:rPr>
+						<w:szCs w:val="20"/>
+					</w:rPr>
+				</w:style>
+				<w:style w:styleId="a9" w:type="paragraph">
+					<w:name w:val="Document Map"/>
+					<w:basedOn w:val="a"/>
+					<w:link w:val="Char3"/>
+					<w:rsid w:val="001A2234"/>
+					<w:rPr>
+						<w:rFonts w:ascii="宋体"/>
+						<w:sz w:val="18"/>
+						<w:szCs w:val="18"/>
+						<w:lang/>
+					</w:rPr>
+				</w:style>
+				<w:style w:customStyle="1" w:styleId="Char3" w:type="character">
+					<w:name w:val="文档结构图 Char"/>
+					<w:link w:val="a9"/>
+					<w:rsid w:val="001A2234"/>
+					<w:rPr>
+						<w:rFonts w:ascii="宋体"/>
+						<w:kern w:val="2"/>
+						<w:sz w:val="18"/>
+						<w:szCs w:val="18"/>
+					</w:rPr>
+				</w:style>
+				<w:style w:styleId="aa" w:type="table">
+					<w:name w:val="Table Grid"/>
+					<w:basedOn w:val="a1"/>
+					<w:rsid w:val="001A2234"/>
+					<w:tblPr>
+						<w:tblInd w:type="dxa" w:w="0"/>
+						<w:tblBorders>
+							<w:top w:color="000000" w:space="0" w:sz="4" w:val="single"/>
+							<w:left w:color="000000" w:space="0" w:sz="4" w:val="single"/>
+							<w:bottom w:color="000000" w:space="0" w:sz="4" w:val="single"/>
+							<w:right w:color="000000" w:space="0" w:sz="4" w:val="single"/>
+							<w:insideH w:color="000000" w:space="0" w:sz="4" w:val="single"/>
+							<w:insideV w:color="000000" w:space="0" w:sz="4" w:val="single"/>
+						</w:tblBorders>
+						<w:tblCellMar>
+							<w:top w:type="dxa" w:w="0"/>
+							<w:left w:type="dxa" w:w="108"/>
+							<w:bottom w:type="dxa" w:w="0"/>
+							<w:right w:type="dxa" w:w="108"/>
+						</w:tblCellMar>
+					</w:tblPr>
+				</w:style>
+			</w:styles>
+		</pkg:xmlData>
+	</pkg:part>
+	<pkg:part pkg:contentType="application/vnd.openxmlformats-officedocument.wordprocessingml.fontTable+xml" pkg:name="/word/fontTable.xml">
+		<pkg:xmlData>
+			<w:fonts xmlns:r="http://schemas.openxmlformats.org/officeDocument/2006/relationships" xmlns:w="http://schemas.openxmlformats.org/wordprocessingml/2006/main">
+				<w:font w:name="Times New Roman">
+					<w:panose1 w:val="02020603050405020304"/>
+					<w:charset w:val="00"/>
+					<w:family w:val="roman"/>
+					<w:pitch w:val="variable"/>
+					<w:sig w:csb0="000001FF" w:csb1="00000000" w:usb0="E0002EFF" w:usb1="C000785B" w:usb2="00000009" w:usb3="00000000"/>
+				</w:font>
+				<w:font w:name="宋体">
+					<w:altName w:val="SimSun"/>
+					<w:panose1 w:val="02010600030101010101"/>
+					<w:charset w:val="86"/>
+					<w:family w:val="auto"/>
+					<w:pitch w:val="variable"/>
+					<w:sig w:csb0="00040001" w:csb1="00000000" w:usb0="00000003" w:usb1="288F0000" w:usb2="00000016" w:usb3="00000000"/>
+				</w:font>
+				<w:font w:name="Wingdings">
+					<w:panose1 w:val="05000000000000000000"/>
+					<w:charset w:val="02"/>
+					<w:family w:val="auto"/>
+					<w:pitch w:val="variable"/>
+					<w:sig w:csb0="80000000" w:csb1="00000000" w:usb0="00000000" w:usb1="10000000" w:usb2="00000000" w:usb3="00000000"/>
+				</w:font>
+				<w:font w:name="Cambria">
+					<w:panose1 w:val="02040503050406030204"/>
+					<w:charset w:val="00"/>
+					<w:family w:val="roman"/>
+					<w:pitch w:val="variable"/>
+					<w:sig w:csb0="0000019F" w:csb1="00000000" w:usb0="E00006FF" w:usb1="400004FF" w:usb2="00000000" w:usb3="00000000"/>
+				</w:font>
+				<w:font w:name="Calibri">
+					<w:panose1 w:val="020F0502020204030204"/>
+					<w:charset w:val="00"/>
+					<w:family w:val="swiss"/>
+					<w:pitch w:val="variable"/>
+					<w:sig w:csb0="000001FF" w:csb1="00000000" w:usb0="E0002AFF" w:usb1="C000247B" w:usb2="00000009" w:usb3="00000000"/>
+				</w:font>
+				<w:font w:name="黑体">
+					<w:altName w:val="SimHei"/>
+					<w:panose1 w:val="02010609060101010101"/>
+					<w:charset w:val="86"/>
+					<w:family w:val="modern"/>
+					<w:pitch w:val="fixed"/>
+					<w:sig w:csb0="00040001" w:csb1="00000000" w:usb0="800002BF" w:usb1="38CF7CFA" w:usb2="00000016" w:usb3="00000000"/>
+				</w:font>
+			</w:fonts>
+		</pkg:xmlData>
+	</pkg:part>
+	<pkg:part pkg:contentType="application/vnd.openxmlformats-package.core-properties+xml" pkg:name="/docProps/core.xml" pkg:padding="256">
+		<pkg:xmlData>
+			<cp:coreProperties xmlns:cp="http://schemas.openxmlformats.org/package/2006/metadata/core-properties" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:dcmitype="http://purl.org/dc/dcmitype/" xmlns:dcterms="http://purl.org/dc/terms/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
+				<dc:title>电子科技大学网络教育考卷(A1卷)</dc:title>
+				<dc:creator>ThinkPad</dc:creator>
+				<cp:lastModifiedBy>weiwenhai</cp:lastModifiedBy>
+				<cp:revision>2</cp:revision>
+				<cp:lastPrinted>2015-05-19T08:52:00Z</cp:lastPrinted>
+				<dcterms:created xsi:type="dcterms:W3CDTF">2018-05-10T10:30:00Z</dcterms:created>
+				<dcterms:modified xsi:type="dcterms:W3CDTF">2018-05-10T10:30:00Z</dcterms:modified>
+			</cp:coreProperties>
+		</pkg:xmlData>
+	</pkg:part>
+	<pkg:part pkg:contentType="application/vnd.openxmlformats-officedocument.wordprocessingml.numbering+xml" pkg:name="/word/numbering.xml">
+		<pkg:xmlData>
+			<w:numbering xmlns:m="http://schemas.openxmlformats.org/officeDocument/2006/math" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:r="http://schemas.openxmlformats.org/officeDocument/2006/relationships" xmlns:v="urn:schemas-microsoft-com:vml" xmlns:ve="http://schemas.openxmlformats.org/markup-compatibility/2006" xmlns:w="http://schemas.openxmlformats.org/wordprocessingml/2006/main" xmlns:w10="urn:schemas-microsoft-com:office:word" xmlns:wne="http://schemas.microsoft.com/office/word/2006/wordml" xmlns:wp="http://schemas.openxmlformats.org/drawingml/2006/wordprocessingDrawing">
+				<w:abstractNum w:abstractNumId="0">
+					<w:nsid w:val="01F00F88"/>
+					<w:multiLevelType w:val="hybridMultilevel"/>
+					<w:tmpl w:val="24FAE628"/>
+					<w:lvl w:ilvl="0" w:tplc="8C0626B4">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="japaneseCounting"/>
+						<w:lvlText w:val="%1、"/>
+						<w:lvlJc w:val="left"/>
+						<w:pPr>
+							<w:ind w:hanging="456" w:left="598"/>
+						</w:pPr>
+						<w:rPr>
+							<w:rFonts w:hint="default"/>
+						</w:rPr>
+					</w:lvl>
+					<w:lvl w:ilvl="1" w:tentative="1" w:tplc="04090019">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="lowerLetter"/>
+						<w:lvlText w:val="%2)"/>
+						<w:lvlJc w:val="left"/>
+						<w:pPr>
+							<w:ind w:hanging="420" w:left="840"/>
+						</w:pPr>
+					</w:lvl>
+					<w:lvl w:ilvl="2" w:tentative="1" w:tplc="0409001B">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="lowerRoman"/>
+						<w:lvlText w:val="%3."/>
+						<w:lvlJc w:val="right"/>
+						<w:pPr>
+							<w:ind w:hanging="420" w:left="1260"/>
+						</w:pPr>
+					</w:lvl>
+					<w:lvl w:ilvl="3" w:tentative="1" w:tplc="0409000F">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="decimal"/>
+						<w:lvlText w:val="%4."/>
+						<w:lvlJc w:val="left"/>
+						<w:pPr>
+							<w:ind w:hanging="420" w:left="1680"/>
+						</w:pPr>
+					</w:lvl>
+					<w:lvl w:ilvl="4" w:tentative="1" w:tplc="04090019">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="lowerLetter"/>
+						<w:lvlText w:val="%5)"/>
+						<w:lvlJc w:val="left"/>
+						<w:pPr>
+							<w:ind w:hanging="420" w:left="2100"/>
+						</w:pPr>
+					</w:lvl>
+					<w:lvl w:ilvl="5" w:tentative="1" w:tplc="0409001B">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="lowerRoman"/>
+						<w:lvlText w:val="%6."/>
+						<w:lvlJc w:val="right"/>
+						<w:pPr>
+							<w:ind w:hanging="420" w:left="2520"/>
+						</w:pPr>
+					</w:lvl>
+					<w:lvl w:ilvl="6" w:tentative="1" w:tplc="0409000F">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="decimal"/>
+						<w:lvlText w:val="%7."/>
+						<w:lvlJc w:val="left"/>
+						<w:pPr>
+							<w:ind w:hanging="420" w:left="2940"/>
+						</w:pPr>
+					</w:lvl>
+					<w:lvl w:ilvl="7" w:tentative="1" w:tplc="04090019">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="lowerLetter"/>
+						<w:lvlText w:val="%8)"/>
+						<w:lvlJc w:val="left"/>
+						<w:pPr>
+							<w:ind w:hanging="420" w:left="3360"/>
+						</w:pPr>
+					</w:lvl>
+					<w:lvl w:ilvl="8" w:tentative="1" w:tplc="0409001B">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="lowerRoman"/>
+						<w:lvlText w:val="%9."/>
+						<w:lvlJc w:val="right"/>
+						<w:pPr>
+							<w:ind w:hanging="420" w:left="3780"/>
+						</w:pPr>
+					</w:lvl>
+				</w:abstractNum>
+				<w:abstractNum w:abstractNumId="1">
+					<w:nsid w:val="020A5E2D"/>
+					<w:multiLevelType w:val="hybridMultilevel"/>
+					<w:tmpl w:val="066CBE6A"/>
+					<w:lvl w:ilvl="0" w:tplc="2DAA272E">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="japaneseCounting"/>
+						<w:lvlText w:val="%1、"/>
+						<w:lvlJc w:val="left"/>
+						<w:pPr>
+							<w:tabs>
+								<w:tab w:pos="420" w:val="num"/>
+							</w:tabs>
+							<w:ind w:hanging="420" w:left="420"/>
+						</w:pPr>
+					</w:lvl>
+					<w:lvl w:ilvl="1" w:tplc="82741D52">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="decimal"/>
+						<w:lvlText w:val="%2、"/>
+						<w:lvlJc w:val="left"/>
+						<w:pPr>
+							<w:tabs>
+								<w:tab w:pos="780" w:val="num"/>
+							</w:tabs>
+							<w:ind w:hanging="360" w:left="780"/>
+						</w:pPr>
+					</w:lvl>
+					<w:lvl w:ilvl="2" w:tplc="0409001B">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="decimal"/>
+						<w:lvlText w:val="%3."/>
+						<w:lvlJc w:val="left"/>
+						<w:pPr>
+							<w:tabs>
+								<w:tab w:pos="2160" w:val="num"/>
+							</w:tabs>
+							<w:ind w:hanging="360" w:left="2160"/>
+						</w:pPr>
+					</w:lvl>
+					<w:lvl w:ilvl="3" w:tplc="0409000F">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="decimal"/>
+						<w:lvlText w:val="%4."/>
+						<w:lvlJc w:val="left"/>
+						<w:pPr>
+							<w:tabs>
+								<w:tab w:pos="2880" w:val="num"/>
+							</w:tabs>
+							<w:ind w:hanging="360" w:left="2880"/>
+						</w:pPr>
+					</w:lvl>
+					<w:lvl w:ilvl="4" w:tplc="04090019">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="decimal"/>
+						<w:lvlText w:val="%5."/>
+						<w:lvlJc w:val="left"/>
+						<w:pPr>
+							<w:tabs>
+								<w:tab w:pos="3600" w:val="num"/>
+							</w:tabs>
+							<w:ind w:hanging="360" w:left="3600"/>
+						</w:pPr>
+					</w:lvl>
+					<w:lvl w:ilvl="5" w:tplc="0409001B">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="decimal"/>
+						<w:lvlText w:val="%6."/>
+						<w:lvlJc w:val="left"/>
+						<w:pPr>
+							<w:tabs>
+								<w:tab w:pos="4320" w:val="num"/>
+							</w:tabs>
+							<w:ind w:hanging="360" w:left="4320"/>
+						</w:pPr>
+					</w:lvl>
+					<w:lvl w:ilvl="6" w:tplc="0409000F">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="decimal"/>
+						<w:lvlText w:val="%7."/>
+						<w:lvlJc w:val="left"/>
+						<w:pPr>
+							<w:tabs>
+								<w:tab w:pos="5040" w:val="num"/>
+							</w:tabs>
+							<w:ind w:hanging="360" w:left="5040"/>
+						</w:pPr>
+					</w:lvl>
+					<w:lvl w:ilvl="7" w:tplc="04090019">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="decimal"/>
+						<w:lvlText w:val="%8."/>
+						<w:lvlJc w:val="left"/>
+						<w:pPr>
+							<w:tabs>
+								<w:tab w:pos="5760" w:val="num"/>
+							</w:tabs>
+							<w:ind w:hanging="360" w:left="5760"/>
+						</w:pPr>
+					</w:lvl>
+					<w:lvl w:ilvl="8" w:tplc="0409001B">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="decimal"/>
+						<w:lvlText w:val="%9."/>
+						<w:lvlJc w:val="left"/>
+						<w:pPr>
+							<w:tabs>
+								<w:tab w:pos="6480" w:val="num"/>
+							</w:tabs>
+							<w:ind w:hanging="360" w:left="6480"/>
+						</w:pPr>
+					</w:lvl>
+				</w:abstractNum>
+				<w:abstractNum w:abstractNumId="2">
+					<w:nsid w:val="08DF0269"/>
+					<w:multiLevelType w:val="hybridMultilevel"/>
+					<w:tmpl w:val="009CA026"/>
+					<w:lvl w:ilvl="0" w:tplc="47C0FD24">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="decimal"/>
+						<w:lvlText w:val="%1、"/>
+						<w:lvlJc w:val="left"/>
+						<w:pPr>
+							<w:tabs>
+								<w:tab w:pos="720" w:val="num"/>
+							</w:tabs>
+							<w:ind w:hanging="360" w:left="720"/>
+						</w:pPr>
+						<w:rPr>
+							<w:rFonts w:hint="eastAsia"/>
+						</w:rPr>
+					</w:lvl>
+					<w:lvl w:ilvl="1" w:tentative="1" w:tplc="04090019">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="lowerLetter"/>
+						<w:lvlText w:val="%2)"/>
+						<w:lvlJc w:val="left"/>
+						<w:pPr>
+							<w:tabs>
+								<w:tab w:pos="1200" w:val="num"/>
+							</w:tabs>
+							<w:ind w:hanging="420" w:left="1200"/>
+						</w:pPr>
+					</w:lvl>
+					<w:lvl w:ilvl="2" w:tentative="1" w:tplc="0409001B">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="lowerRoman"/>
+						<w:lvlText w:val="%3."/>
+						<w:lvlJc w:val="right"/>
+						<w:pPr>
+							<w:tabs>
+								<w:tab w:pos="1620" w:val="num"/>
+							</w:tabs>
+							<w:ind w:hanging="420" w:left="1620"/>
+						</w:pPr>
+					</w:lvl>
+					<w:lvl w:ilvl="3" w:tentative="1" w:tplc="0409000F">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="decimal"/>
+						<w:lvlText w:val="%4."/>
+						<w:lvlJc w:val="left"/>
+						<w:pPr>
+							<w:tabs>
+								<w:tab w:pos="2040" w:val="num"/>
+							</w:tabs>
+							<w:ind w:hanging="420" w:left="2040"/>
+						</w:pPr>
+					</w:lvl>
+					<w:lvl w:ilvl="4" w:tentative="1" w:tplc="04090019">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="lowerLetter"/>
+						<w:lvlText w:val="%5)"/>
+						<w:lvlJc w:val="left"/>
+						<w:pPr>
+							<w:tabs>
+								<w:tab w:pos="2460" w:val="num"/>
+							</w:tabs>
+							<w:ind w:hanging="420" w:left="2460"/>
+						</w:pPr>
+					</w:lvl>
+					<w:lvl w:ilvl="5" w:tentative="1" w:tplc="0409001B">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="lowerRoman"/>
+						<w:lvlText w:val="%6."/>
+						<w:lvlJc w:val="right"/>
+						<w:pPr>
+							<w:tabs>
+								<w:tab w:pos="2880" w:val="num"/>
+							</w:tabs>
+							<w:ind w:hanging="420" w:left="2880"/>
+						</w:pPr>
+					</w:lvl>
+					<w:lvl w:ilvl="6" w:tentative="1" w:tplc="0409000F">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="decimal"/>
+						<w:lvlText w:val="%7."/>
+						<w:lvlJc w:val="left"/>
+						<w:pPr>
+							<w:tabs>
+								<w:tab w:pos="3300" w:val="num"/>
+							</w:tabs>
+							<w:ind w:hanging="420" w:left="3300"/>
+						</w:pPr>
+					</w:lvl>
+					<w:lvl w:ilvl="7" w:tentative="1" w:tplc="04090019">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="lowerLetter"/>
+						<w:lvlText w:val="%8)"/>
+						<w:lvlJc w:val="left"/>
+						<w:pPr>
+							<w:tabs>
+								<w:tab w:pos="3720" w:val="num"/>
+							</w:tabs>
+							<w:ind w:hanging="420" w:left="3720"/>
+						</w:pPr>
+					</w:lvl>
+					<w:lvl w:ilvl="8" w:tentative="1" w:tplc="0409001B">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="lowerRoman"/>
+						<w:lvlText w:val="%9."/>
+						<w:lvlJc w:val="right"/>
+						<w:pPr>
+							<w:tabs>
+								<w:tab w:pos="4140" w:val="num"/>
+							</w:tabs>
+							<w:ind w:hanging="420" w:left="4140"/>
+						</w:pPr>
+					</w:lvl>
+				</w:abstractNum>
+				<w:abstractNum w:abstractNumId="3">
+					<w:nsid w:val="0958232F"/>
+					<w:multiLevelType w:val="hybridMultilevel"/>
+					<w:tmpl w:val="30E88CE0"/>
+					<w:lvl w:ilvl="0" w:tplc="5C989B96">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="japaneseCounting"/>
+						<w:lvlText w:val="%1、"/>
+						<w:lvlJc w:val="left"/>
+						<w:pPr>
+							<w:ind w:hanging="720" w:left="720"/>
+						</w:pPr>
+						<w:rPr>
+							<w:rFonts w:hint="default"/>
+						</w:rPr>
+					</w:lvl>
+					<w:lvl w:ilvl="1" w:tentative="1" w:tplc="04090019">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="lowerLetter"/>
+						<w:lvlText w:val="%2)"/>
+						<w:lvlJc w:val="left"/>
+						<w:pPr>
+							<w:ind w:hanging="420" w:left="840"/>
+						</w:pPr>
+					</w:lvl>
+					<w:lvl w:ilvl="2" w:tentative="1" w:tplc="0409001B">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="lowerRoman"/>
+						<w:lvlText w:val="%3."/>
+						<w:lvlJc w:val="right"/>
+						<w:pPr>
+							<w:ind w:hanging="420" w:left="1260"/>
+						</w:pPr>
+					</w:lvl>
+					<w:lvl w:ilvl="3" w:tentative="1" w:tplc="0409000F">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="decimal"/>
+						<w:lvlText w:val="%4."/>
+						<w:lvlJc w:val="left"/>
+						<w:pPr>
+							<w:ind w:hanging="420" w:left="1680"/>
+						</w:pPr>
+					</w:lvl>
+					<w:lvl w:ilvl="4" w:tentative="1" w:tplc="04090019">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="lowerLetter"/>
+						<w:lvlText w:val="%5)"/>
+						<w:lvlJc w:val="left"/>
+						<w:pPr>
+							<w:ind w:hanging="420" w:left="2100"/>
+						</w:pPr>
+					</w:lvl>
+					<w:lvl w:ilvl="5" w:tentative="1" w:tplc="0409001B">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="lowerRoman"/>
+						<w:lvlText w:val="%6."/>
+						<w:lvlJc w:val="right"/>
+						<w:pPr>
+							<w:ind w:hanging="420" w:left="2520"/>
+						</w:pPr>
+					</w:lvl>
+					<w:lvl w:ilvl="6" w:tentative="1" w:tplc="0409000F">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="decimal"/>
+						<w:lvlText w:val="%7."/>
+						<w:lvlJc w:val="left"/>
+						<w:pPr>
+							<w:ind w:hanging="420" w:left="2940"/>
+						</w:pPr>
+					</w:lvl>
+					<w:lvl w:ilvl="7" w:tentative="1" w:tplc="04090019">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="lowerLetter"/>
+						<w:lvlText w:val="%8)"/>
+						<w:lvlJc w:val="left"/>
+						<w:pPr>
+							<w:ind w:hanging="420" w:left="3360"/>
+						</w:pPr>
+					</w:lvl>
+					<w:lvl w:ilvl="8" w:tentative="1" w:tplc="0409001B">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="lowerRoman"/>
+						<w:lvlText w:val="%9."/>
+						<w:lvlJc w:val="right"/>
+						<w:pPr>
+							<w:ind w:hanging="420" w:left="3780"/>
+						</w:pPr>
+					</w:lvl>
+				</w:abstractNum>
+				<w:abstractNum w:abstractNumId="4">
+					<w:nsid w:val="124F2661"/>
+					<w:multiLevelType w:val="hybridMultilevel"/>
+					<w:tmpl w:val="311EC340"/>
+					<w:lvl w:ilvl="0" w:tplc="7C9A8072">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="decimal"/>
+						<w:lvlText w:val="%1、"/>
+						<w:lvlJc w:val="left"/>
+						<w:pPr>
+							<w:ind w:hanging="720" w:left="720"/>
+						</w:pPr>
+						<w:rPr>
+							<w:rFonts w:hint="default"/>
+							<w:color w:val="auto"/>
+						</w:rPr>
+					</w:lvl>
+					<w:lvl w:ilvl="1" w:tentative="1" w:tplc="04090019">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="lowerLetter"/>
+						<w:lvlText w:val="%2)"/>
+						<w:lvlJc w:val="left"/>
+						<w:pPr>
+							<w:ind w:hanging="420" w:left="840"/>
+						</w:pPr>
+					</w:lvl>
+					<w:lvl w:ilvl="2" w:tentative="1" w:tplc="0409001B">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="lowerRoman"/>
+						<w:lvlText w:val="%3."/>
+						<w:lvlJc w:val="right"/>
+						<w:pPr>
+							<w:ind w:hanging="420" w:left="1260"/>
+						</w:pPr>
+					</w:lvl>
+					<w:lvl w:ilvl="3" w:tentative="1" w:tplc="0409000F">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="decimal"/>
+						<w:lvlText w:val="%4."/>
+						<w:lvlJc w:val="left"/>
+						<w:pPr>
+							<w:ind w:hanging="420" w:left="1680"/>
+						</w:pPr>
+					</w:lvl>
+					<w:lvl w:ilvl="4" w:tentative="1" w:tplc="04090019">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="lowerLetter"/>
+						<w:lvlText w:val="%5)"/>
+						<w:lvlJc w:val="left"/>
+						<w:pPr>
+							<w:ind w:hanging="420" w:left="2100"/>
+						</w:pPr>
+					</w:lvl>
+					<w:lvl w:ilvl="5" w:tentative="1" w:tplc="0409001B">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="lowerRoman"/>
+						<w:lvlText w:val="%6."/>
+						<w:lvlJc w:val="right"/>
+						<w:pPr>
+							<w:ind w:hanging="420" w:left="2520"/>
+						</w:pPr>
+					</w:lvl>
+					<w:lvl w:ilvl="6" w:tentative="1" w:tplc="0409000F">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="decimal"/>
+						<w:lvlText w:val="%7."/>
+						<w:lvlJc w:val="left"/>
+						<w:pPr>
+							<w:ind w:hanging="420" w:left="2940"/>
+						</w:pPr>
+					</w:lvl>
+					<w:lvl w:ilvl="7" w:tentative="1" w:tplc="04090019">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="lowerLetter"/>
+						<w:lvlText w:val="%8)"/>
+						<w:lvlJc w:val="left"/>
+						<w:pPr>
+							<w:ind w:hanging="420" w:left="3360"/>
+						</w:pPr>
+					</w:lvl>
+					<w:lvl w:ilvl="8" w:tentative="1" w:tplc="0409001B">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="lowerRoman"/>
+						<w:lvlText w:val="%9."/>
+						<w:lvlJc w:val="right"/>
+						<w:pPr>
+							<w:ind w:hanging="420" w:left="3780"/>
+						</w:pPr>
+					</w:lvl>
+				</w:abstractNum>
+				<w:abstractNum w:abstractNumId="5">
+					<w:nsid w:val="136B1AD3"/>
+					<w:multiLevelType w:val="hybridMultilevel"/>
+					<w:tmpl w:val="BDF04116"/>
+					<w:lvl w:ilvl="0" w:tplc="CBA85F62">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="decimal"/>
+						<w:lvlText w:val="%1、"/>
+						<w:lvlJc w:val="left"/>
+						<w:pPr>
+							<w:ind w:hanging="360" w:left="482"/>
+						</w:pPr>
+						<w:rPr>
+							<w:rFonts w:hint="default"/>
+						</w:rPr>
+					</w:lvl>
+					<w:lvl w:ilvl="1" w:tentative="1" w:tplc="04090019">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="lowerLetter"/>
+						<w:lvlText w:val="%2)"/>
+						<w:lvlJc w:val="left"/>
+						<w:pPr>
+							<w:ind w:hanging="420" w:left="962"/>
+						</w:pPr>
+					</w:lvl>
+					<w:lvl w:ilvl="2" w:tentative="1" w:tplc="0409001B">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="lowerRoman"/>
+						<w:lvlText w:val="%3."/>
+						<w:lvlJc w:val="right"/>
+						<w:pPr>
+							<w:ind w:hanging="420" w:left="1382"/>
+						</w:pPr>
+					</w:lvl>
+					<w:lvl w:ilvl="3" w:tentative="1" w:tplc="0409000F">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="decimal"/>
+						<w:lvlText w:val="%4."/>
+						<w:lvlJc w:val="left"/>
+						<w:pPr>
+							<w:ind w:hanging="420" w:left="1802"/>
+						</w:pPr>
+					</w:lvl>
+					<w:lvl w:ilvl="4" w:tentative="1" w:tplc="04090019">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="lowerLetter"/>
+						<w:lvlText w:val="%5)"/>
+						<w:lvlJc w:val="left"/>
+						<w:pPr>
+							<w:ind w:hanging="420" w:left="2222"/>
+						</w:pPr>
+					</w:lvl>
+					<w:lvl w:ilvl="5" w:tentative="1" w:tplc="0409001B">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="lowerRoman"/>
+						<w:lvlText w:val="%6."/>
+						<w:lvlJc w:val="right"/>
+						<w:pPr>
+							<w:ind w:hanging="420" w:left="2642"/>
+						</w:pPr>
+					</w:lvl>
+					<w:lvl w:ilvl="6" w:tentative="1" w:tplc="0409000F">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="decimal"/>
+						<w:lvlText w:val="%7."/>
+						<w:lvlJc w:val="left"/>
+						<w:pPr>
+							<w:ind w:hanging="420" w:left="3062"/>
+						</w:pPr>
+					</w:lvl>
+					<w:lvl w:ilvl="7" w:tentative="1" w:tplc="04090019">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="lowerLetter"/>
+						<w:lvlText w:val="%8)"/>
+						<w:lvlJc w:val="left"/>
+						<w:pPr>
+							<w:ind w:hanging="420" w:left="3482"/>
+						</w:pPr>
+					</w:lvl>
+					<w:lvl w:ilvl="8" w:tentative="1" w:tplc="0409001B">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="lowerRoman"/>
+						<w:lvlText w:val="%9."/>
+						<w:lvlJc w:val="right"/>
+						<w:pPr>
+							<w:ind w:hanging="420" w:left="3902"/>
+						</w:pPr>
+					</w:lvl>
+				</w:abstractNum>
+				<w:abstractNum w:abstractNumId="6">
+					<w:nsid w:val="14A814D2"/>
+					<w:multiLevelType w:val="hybridMultilevel"/>
+					<w:tmpl w:val="603AF3EE"/>
+					<w:lvl w:ilvl="0" w:tplc="C39CEFC0">
+						<w:start w:val="2"/>
+						<w:numFmt w:val="japaneseCounting"/>
+						<w:lvlText w:val="%1、"/>
+						<w:lvlJc w:val="left"/>
+						<w:pPr>
+							<w:ind w:hanging="420" w:left="1018"/>
+						</w:pPr>
+						<w:rPr>
+							<w:rFonts w:hint="default"/>
+						</w:rPr>
+					</w:lvl>
+					<w:lvl w:ilvl="1" w:tentative="1" w:tplc="04090019">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="lowerLetter"/>
+						<w:lvlText w:val="%2)"/>
+						<w:lvlJc w:val="left"/>
+						<w:pPr>
+							<w:ind w:hanging="420" w:left="1438"/>
+						</w:pPr>
+					</w:lvl>
+					<w:lvl w:ilvl="2" w:tentative="1" w:tplc="0409001B">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="lowerRoman"/>
+						<w:lvlText w:val="%3."/>
+						<w:lvlJc w:val="right"/>
+						<w:pPr>
+							<w:ind w:hanging="420" w:left="1858"/>
+						</w:pPr>
+					</w:lvl>
+					<w:lvl w:ilvl="3" w:tentative="1" w:tplc="0409000F">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="decimal"/>
+						<w:lvlText w:val="%4."/>
+						<w:lvlJc w:val="left"/>
+						<w:pPr>
+							<w:ind w:hanging="420" w:left="2278"/>
+						</w:pPr>
+					</w:lvl>
+					<w:lvl w:ilvl="4" w:tentative="1" w:tplc="04090019">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="lowerLetter"/>
+						<w:lvlText w:val="%5)"/>
+						<w:lvlJc w:val="left"/>
+						<w:pPr>
+							<w:ind w:hanging="420" w:left="2698"/>
+						</w:pPr>
+					</w:lvl>
+					<w:lvl w:ilvl="5" w:tentative="1" w:tplc="0409001B">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="lowerRoman"/>
+						<w:lvlText w:val="%6."/>
+						<w:lvlJc w:val="right"/>
+						<w:pPr>
+							<w:ind w:hanging="420" w:left="3118"/>
+						</w:pPr>
+					</w:lvl>
+					<w:lvl w:ilvl="6" w:tentative="1" w:tplc="0409000F">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="decimal"/>
+						<w:lvlText w:val="%7."/>
+						<w:lvlJc w:val="left"/>
+						<w:pPr>
+							<w:ind w:hanging="420" w:left="3538"/>
+						</w:pPr>
+					</w:lvl>
+					<w:lvl w:ilvl="7" w:tentative="1" w:tplc="04090019">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="lowerLetter"/>
+						<w:lvlText w:val="%8)"/>
+						<w:lvlJc w:val="left"/>
+						<w:pPr>
+							<w:ind w:hanging="420" w:left="3958"/>
+						</w:pPr>
+					</w:lvl>
+					<w:lvl w:ilvl="8" w:tentative="1" w:tplc="0409001B">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="lowerRoman"/>
+						<w:lvlText w:val="%9."/>
+						<w:lvlJc w:val="right"/>
+						<w:pPr>
+							<w:ind w:hanging="420" w:left="4378"/>
+						</w:pPr>
+					</w:lvl>
+				</w:abstractNum>
+				<w:abstractNum w:abstractNumId="7">
+					<w:nsid w:val="28417ACF"/>
+					<w:multiLevelType w:val="hybridMultilevel"/>
+					<w:tmpl w:val="C8BC8F82"/>
+					<w:lvl w:ilvl="0" w:tplc="34922146">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="japaneseCounting"/>
+						<w:lvlText w:val="(%1)"/>
+						<w:lvlJc w:val="left"/>
+						<w:pPr>
+							<w:tabs>
+								<w:tab w:pos="720" w:val="num"/>
+							</w:tabs>
+							<w:ind w:hanging="720" w:left="720"/>
+						</w:pPr>
+					</w:lvl>
+					<w:lvl w:ilvl="1" w:tplc="04090019">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="decimal"/>
+						<w:lvlText w:val="%2."/>
+						<w:lvlJc w:val="left"/>
+						<w:pPr>
+							<w:tabs>
+								<w:tab w:pos="1248" w:val="num"/>
+							</w:tabs>
+							<w:ind w:hanging="360" w:left="1248"/>
+						</w:pPr>
+					</w:lvl>
+					<w:lvl w:ilvl="2" w:tplc="0409001B">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="decimal"/>
+						<w:lvlText w:val="%3."/>
+						<w:lvlJc w:val="left"/>
+						<w:pPr>
+							<w:tabs>
+								<w:tab w:pos="1968" w:val="num"/>
+							</w:tabs>
+							<w:ind w:hanging="360" w:left="1968"/>
+						</w:pPr>
+					</w:lvl>
+					<w:lvl w:ilvl="3" w:tplc="0409000F">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="decimal"/>
+						<w:lvlText w:val="%4."/>
+						<w:lvlJc w:val="left"/>
+						<w:pPr>
+							<w:tabs>
+								<w:tab w:pos="2688" w:val="num"/>
+							</w:tabs>
+							<w:ind w:hanging="360" w:left="2688"/>
+						</w:pPr>
+					</w:lvl>
+					<w:lvl w:ilvl="4" w:tplc="04090019">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="decimal"/>
+						<w:lvlText w:val="%5."/>
+						<w:lvlJc w:val="left"/>
+						<w:pPr>
+							<w:tabs>
+								<w:tab w:pos="3408" w:val="num"/>
+							</w:tabs>
+							<w:ind w:hanging="360" w:left="3408"/>
+						</w:pPr>
+					</w:lvl>
+					<w:lvl w:ilvl="5" w:tplc="0409001B">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="decimal"/>
+						<w:lvlText w:val="%6."/>
+						<w:lvlJc w:val="left"/>
+						<w:pPr>
+							<w:tabs>
+								<w:tab w:pos="4128" w:val="num"/>
+							</w:tabs>
+							<w:ind w:hanging="360" w:left="4128"/>
+						</w:pPr>
+					</w:lvl>
+					<w:lvl w:ilvl="6" w:tplc="0409000F">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="decimal"/>
+						<w:lvlText w:val="%7."/>
+						<w:lvlJc w:val="left"/>
+						<w:pPr>
+							<w:tabs>
+								<w:tab w:pos="4848" w:val="num"/>
+							</w:tabs>
+							<w:ind w:hanging="360" w:left="4848"/>
+						</w:pPr>
+					</w:lvl>
+					<w:lvl w:ilvl="7" w:tplc="04090019">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="decimal"/>
+						<w:lvlText w:val="%8."/>
+						<w:lvlJc w:val="left"/>
+						<w:pPr>
+							<w:tabs>
+								<w:tab w:pos="5568" w:val="num"/>
+							</w:tabs>
+							<w:ind w:hanging="360" w:left="5568"/>
+						</w:pPr>
+					</w:lvl>
+					<w:lvl w:ilvl="8" w:tplc="0409001B">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="decimal"/>
+						<w:lvlText w:val="%9."/>
+						<w:lvlJc w:val="left"/>
+						<w:pPr>
+							<w:tabs>
+								<w:tab w:pos="6288" w:val="num"/>
+							</w:tabs>
+							<w:ind w:hanging="360" w:left="6288"/>
+						</w:pPr>
+					</w:lvl>
+				</w:abstractNum>
+				<w:abstractNum w:abstractNumId="8">
+					<w:nsid w:val="3B7F32BF"/>
+					<w:multiLevelType w:val="hybridMultilevel"/>
+					<w:tmpl w:val="AF12CBBE"/>
+					<w:lvl w:ilvl="0" w:tplc="86363766">
+						<w:start w:val="2"/>
+						<w:numFmt w:val="japaneseCounting"/>
+						<w:lvlText w:val="%1、"/>
+						<w:lvlJc w:val="left"/>
+						<w:pPr>
+							<w:ind w:hanging="420" w:left="1018"/>
+						</w:pPr>
+						<w:rPr>
+							<w:rFonts w:hint="default"/>
+						</w:rPr>
+					</w:lvl>
+					<w:lvl w:ilvl="1" w:tentative="1" w:tplc="04090019">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="lowerLetter"/>
+						<w:lvlText w:val="%2)"/>
+						<w:lvlJc w:val="left"/>
+						<w:pPr>
+							<w:ind w:hanging="420" w:left="1438"/>
+						</w:pPr>
+					</w:lvl>
+					<w:lvl w:ilvl="2" w:tentative="1" w:tplc="0409001B">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="lowerRoman"/>
+						<w:lvlText w:val="%3."/>
+						<w:lvlJc w:val="right"/>
+						<w:pPr>
+							<w:ind w:hanging="420" w:left="1858"/>
+						</w:pPr>
+					</w:lvl>
+					<w:lvl w:ilvl="3" w:tentative="1" w:tplc="0409000F">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="decimal"/>
+						<w:lvlText w:val="%4."/>
+						<w:lvlJc w:val="left"/>
+						<w:pPr>
+							<w:ind w:hanging="420" w:left="2278"/>
+						</w:pPr>
+					</w:lvl>
+					<w:lvl w:ilvl="4" w:tentative="1" w:tplc="04090019">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="lowerLetter"/>
+						<w:lvlText w:val="%5)"/>
+						<w:lvlJc w:val="left"/>
+						<w:pPr>
+							<w:ind w:hanging="420" w:left="2698"/>
+						</w:pPr>
+					</w:lvl>
+					<w:lvl w:ilvl="5" w:tentative="1" w:tplc="0409001B">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="lowerRoman"/>
+						<w:lvlText w:val="%6."/>
+						<w:lvlJc w:val="right"/>
+						<w:pPr>
+							<w:ind w:hanging="420" w:left="3118"/>
+						</w:pPr>
+					</w:lvl>
+					<w:lvl w:ilvl="6" w:tentative="1" w:tplc="0409000F">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="decimal"/>
+						<w:lvlText w:val="%7."/>
+						<w:lvlJc w:val="left"/>
+						<w:pPr>
+							<w:ind w:hanging="420" w:left="3538"/>
+						</w:pPr>
+					</w:lvl>
+					<w:lvl w:ilvl="7" w:tentative="1" w:tplc="04090019">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="lowerLetter"/>
+						<w:lvlText w:val="%8)"/>
+						<w:lvlJc w:val="left"/>
+						<w:pPr>
+							<w:ind w:hanging="420" w:left="3958"/>
+						</w:pPr>
+					</w:lvl>
+					<w:lvl w:ilvl="8" w:tentative="1" w:tplc="0409001B">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="lowerRoman"/>
+						<w:lvlText w:val="%9."/>
+						<w:lvlJc w:val="right"/>
+						<w:pPr>
+							<w:ind w:hanging="420" w:left="4378"/>
+						</w:pPr>
+					</w:lvl>
+				</w:abstractNum>
+				<w:abstractNum w:abstractNumId="9">
+					<w:nsid w:val="3E4A52E5"/>
+					<w:multiLevelType w:val="hybridMultilevel"/>
+					<w:tmpl w:val="48684CE4"/>
+					<w:lvl w:ilvl="0" w:tplc="1BAE2AB8">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="upperLetter"/>
+						<w:lvlText w:val="%1."/>
+						<w:lvlJc w:val="left"/>
+						<w:pPr>
+							<w:ind w:hanging="360" w:left="780"/>
+						</w:pPr>
+						<w:rPr>
+							<w:rFonts w:hint="default"/>
+						</w:rPr>
+					</w:lvl>
+					<w:lvl w:ilvl="1" w:tentative="1" w:tplc="04090019">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="lowerLetter"/>
+						<w:lvlText w:val="%2)"/>
+						<w:lvlJc w:val="left"/>
+						<w:pPr>
+							<w:ind w:hanging="420" w:left="1260"/>
+						</w:pPr>
+					</w:lvl>
+					<w:lvl w:ilvl="2" w:tentative="1" w:tplc="0409001B">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="lowerRoman"/>
+						<w:lvlText w:val="%3."/>
+						<w:lvlJc w:val="right"/>
+						<w:pPr>
+							<w:ind w:hanging="420" w:left="1680"/>
+						</w:pPr>
+					</w:lvl>
+					<w:lvl w:ilvl="3" w:tentative="1" w:tplc="0409000F">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="decimal"/>
+						<w:lvlText w:val="%4."/>
+						<w:lvlJc w:val="left"/>
+						<w:pPr>
+							<w:ind w:hanging="420" w:left="2100"/>
+						</w:pPr>
+					</w:lvl>
+					<w:lvl w:ilvl="4" w:tentative="1" w:tplc="04090019">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="lowerLetter"/>
+						<w:lvlText w:val="%5)"/>
+						<w:lvlJc w:val="left"/>
+						<w:pPr>
+							<w:ind w:hanging="420" w:left="2520"/>
+						</w:pPr>
+					</w:lvl>
+					<w:lvl w:ilvl="5" w:tentative="1" w:tplc="0409001B">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="lowerRoman"/>
+						<w:lvlText w:val="%6."/>
+						<w:lvlJc w:val="right"/>
+						<w:pPr>
+							<w:ind w:hanging="420" w:left="2940"/>
+						</w:pPr>
+					</w:lvl>
+					<w:lvl w:ilvl="6" w:tentative="1" w:tplc="0409000F">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="decimal"/>
+						<w:lvlText w:val="%7."/>
+						<w:lvlJc w:val="left"/>
+						<w:pPr>
+							<w:ind w:hanging="420" w:left="3360"/>
+						</w:pPr>
+					</w:lvl>
+					<w:lvl w:ilvl="7" w:tentative="1" w:tplc="04090019">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="lowerLetter"/>
+						<w:lvlText w:val="%8)"/>
+						<w:lvlJc w:val="left"/>
+						<w:pPr>
+							<w:ind w:hanging="420" w:left="3780"/>
+						</w:pPr>
+					</w:lvl>
+					<w:lvl w:ilvl="8" w:tentative="1" w:tplc="0409001B">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="lowerRoman"/>
+						<w:lvlText w:val="%9."/>
+						<w:lvlJc w:val="right"/>
+						<w:pPr>
+							<w:ind w:hanging="420" w:left="4200"/>
+						</w:pPr>
+					</w:lvl>
+				</w:abstractNum>
+				<w:abstractNum w:abstractNumId="10">
+					<w:nsid w:val="41ED52A7"/>
+					<w:multiLevelType w:val="hybridMultilevel"/>
+					<w:tmpl w:val="3F480736"/>
+					<w:lvl w:ilvl="0" w:tplc="F9F83B52">
+						<w:start w:val="3"/>
+						<w:numFmt w:val="japaneseCounting"/>
+						<w:lvlText w:val="%1、"/>
+						<w:lvlJc w:val="left"/>
+						<w:pPr>
+							<w:ind w:hanging="432" w:left="1486"/>
+						</w:pPr>
+						<w:rPr>
+							<w:rFonts w:hint="default"/>
+						</w:rPr>
+					</w:lvl>
+					<w:lvl w:ilvl="1" w:tentative="1" w:tplc="04090019">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="lowerLetter"/>
+						<w:lvlText w:val="%2)"/>
+						<w:lvlJc w:val="left"/>
+						<w:pPr>
+							<w:ind w:hanging="420" w:left="1894"/>
+						</w:pPr>
+					</w:lvl>
+					<w:lvl w:ilvl="2" w:tentative="1" w:tplc="0409001B">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="lowerRoman"/>
+						<w:lvlText w:val="%3."/>
+						<w:lvlJc w:val="right"/>
+						<w:pPr>
+							<w:ind w:hanging="420" w:left="2314"/>
+						</w:pPr>
+					</w:lvl>
+					<w:lvl w:ilvl="3" w:tentative="1" w:tplc="0409000F">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="decimal"/>
+						<w:lvlText w:val="%4."/>
+						<w:lvlJc w:val="left"/>
+						<w:pPr>
+							<w:ind w:hanging="420" w:left="2734"/>
+						</w:pPr>
+					</w:lvl>
+					<w:lvl w:ilvl="4" w:tentative="1" w:tplc="04090019">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="lowerLetter"/>
+						<w:lvlText w:val="%5)"/>
+						<w:lvlJc w:val="left"/>
+						<w:pPr>
+							<w:ind w:hanging="420" w:left="3154"/>
+						</w:pPr>
+					</w:lvl>
+					<w:lvl w:ilvl="5" w:tentative="1" w:tplc="0409001B">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="lowerRoman"/>
+						<w:lvlText w:val="%6."/>
+						<w:lvlJc w:val="right"/>
+						<w:pPr>
+							<w:ind w:hanging="420" w:left="3574"/>
+						</w:pPr>
+					</w:lvl>
+					<w:lvl w:ilvl="6" w:tentative="1" w:tplc="0409000F">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="decimal"/>
+						<w:lvlText w:val="%7."/>
+						<w:lvlJc w:val="left"/>
+						<w:pPr>
+							<w:ind w:hanging="420" w:left="3994"/>
+						</w:pPr>
+					</w:lvl>
+					<w:lvl w:ilvl="7" w:tentative="1" w:tplc="04090019">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="lowerLetter"/>
+						<w:lvlText w:val="%8)"/>
+						<w:lvlJc w:val="left"/>
+						<w:pPr>
+							<w:ind w:hanging="420" w:left="4414"/>
+						</w:pPr>
+					</w:lvl>
+					<w:lvl w:ilvl="8" w:tentative="1" w:tplc="0409001B">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="lowerRoman"/>
+						<w:lvlText w:val="%9."/>
+						<w:lvlJc w:val="right"/>
+						<w:pPr>
+							<w:ind w:hanging="420" w:left="4834"/>
+						</w:pPr>
+					</w:lvl>
+				</w:abstractNum>
+				<w:abstractNum w:abstractNumId="11">
+					<w:nsid w:val="47445126"/>
+					<w:multiLevelType w:val="hybridMultilevel"/>
+					<w:tmpl w:val="A0B2366C"/>
+					<w:lvl w:ilvl="0" w:tplc="5406C7EA">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="japaneseCounting"/>
+						<w:lvlText w:val="%1、"/>
+						<w:lvlJc w:val="left"/>
+						<w:pPr>
+							<w:ind w:hanging="456" w:left="456"/>
+						</w:pPr>
+						<w:rPr>
+							<w:rFonts w:hint="default"/>
+							<w:lang w:val="en-US"/>
+						</w:rPr>
+					</w:lvl>
+					<w:lvl w:ilvl="1" w:tentative="1" w:tplc="04090019">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="lowerLetter"/>
+						<w:lvlText w:val="%2)"/>
+						<w:lvlJc w:val="left"/>
+						<w:pPr>
+							<w:ind w:hanging="420" w:left="840"/>
+						</w:pPr>
+					</w:lvl>
+					<w:lvl w:ilvl="2" w:tentative="1" w:tplc="0409001B">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="lowerRoman"/>
+						<w:lvlText w:val="%3."/>
+						<w:lvlJc w:val="right"/>
+						<w:pPr>
+							<w:ind w:hanging="420" w:left="1260"/>
+						</w:pPr>
+					</w:lvl>
+					<w:lvl w:ilvl="3" w:tentative="1" w:tplc="0409000F">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="decimal"/>
+						<w:lvlText w:val="%4."/>
+						<w:lvlJc w:val="left"/>
+						<w:pPr>
+							<w:ind w:hanging="420" w:left="1680"/>
+						</w:pPr>
+					</w:lvl>
+					<w:lvl w:ilvl="4" w:tentative="1" w:tplc="04090019">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="lowerLetter"/>
+						<w:lvlText w:val="%5)"/>
+						<w:lvlJc w:val="left"/>
+						<w:pPr>
+							<w:ind w:hanging="420" w:left="2100"/>
+						</w:pPr>
+					</w:lvl>
+					<w:lvl w:ilvl="5" w:tentative="1" w:tplc="0409001B">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="lowerRoman"/>
+						<w:lvlText w:val="%6."/>
+						<w:lvlJc w:val="right"/>
+						<w:pPr>
+							<w:ind w:hanging="420" w:left="2520"/>
+						</w:pPr>
+					</w:lvl>
+					<w:lvl w:ilvl="6" w:tentative="1" w:tplc="0409000F">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="decimal"/>
+						<w:lvlText w:val="%7."/>
+						<w:lvlJc w:val="left"/>
+						<w:pPr>
+							<w:ind w:hanging="420" w:left="2940"/>
+						</w:pPr>
+					</w:lvl>
+					<w:lvl w:ilvl="7" w:tentative="1" w:tplc="04090019">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="lowerLetter"/>
+						<w:lvlText w:val="%8)"/>
+						<w:lvlJc w:val="left"/>
+						<w:pPr>
+							<w:ind w:hanging="420" w:left="3360"/>
+						</w:pPr>
+					</w:lvl>
+					<w:lvl w:ilvl="8" w:tentative="1" w:tplc="0409001B">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="lowerRoman"/>
+						<w:lvlText w:val="%9."/>
+						<w:lvlJc w:val="right"/>
+						<w:pPr>
+							<w:ind w:hanging="420" w:left="3780"/>
+						</w:pPr>
+					</w:lvl>
+				</w:abstractNum>
+				<w:abstractNum w:abstractNumId="12">
+					<w:nsid w:val="4B4270F7"/>
+					<w:multiLevelType w:val="hybridMultilevel"/>
+					<w:tmpl w:val="24FAE628"/>
+					<w:lvl w:ilvl="0" w:tplc="8C0626B4">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="japaneseCounting"/>
+						<w:lvlText w:val="%1、"/>
+						<w:lvlJc w:val="left"/>
+						<w:pPr>
+							<w:ind w:hanging="456" w:left="598"/>
+						</w:pPr>
+						<w:rPr>
+							<w:rFonts w:hint="default"/>
+						</w:rPr>
+					</w:lvl>
+					<w:lvl w:ilvl="1" w:tentative="1" w:tplc="04090019">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="lowerLetter"/>
+						<w:lvlText w:val="%2)"/>
+						<w:lvlJc w:val="left"/>
+						<w:pPr>
+							<w:ind w:hanging="420" w:left="840"/>
+						</w:pPr>
+					</w:lvl>
+					<w:lvl w:ilvl="2" w:tentative="1" w:tplc="0409001B">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="lowerRoman"/>
+						<w:lvlText w:val="%3."/>
+						<w:lvlJc w:val="right"/>
+						<w:pPr>
+							<w:ind w:hanging="420" w:left="1260"/>
+						</w:pPr>
+					</w:lvl>
+					<w:lvl w:ilvl="3" w:tentative="1" w:tplc="0409000F">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="decimal"/>
+						<w:lvlText w:val="%4."/>
+						<w:lvlJc w:val="left"/>
+						<w:pPr>
+							<w:ind w:hanging="420" w:left="1680"/>
+						</w:pPr>
+					</w:lvl>
+					<w:lvl w:ilvl="4" w:tentative="1" w:tplc="04090019">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="lowerLetter"/>
+						<w:lvlText w:val="%5)"/>
+						<w:lvlJc w:val="left"/>
+						<w:pPr>
+							<w:ind w:hanging="420" w:left="2100"/>
+						</w:pPr>
+					</w:lvl>
+					<w:lvl w:ilvl="5" w:tentative="1" w:tplc="0409001B">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="lowerRoman"/>
+						<w:lvlText w:val="%6."/>
+						<w:lvlJc w:val="right"/>
+						<w:pPr>
+							<w:ind w:hanging="420" w:left="2520"/>
+						</w:pPr>
+					</w:lvl>
+					<w:lvl w:ilvl="6" w:tentative="1" w:tplc="0409000F">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="decimal"/>
+						<w:lvlText w:val="%7."/>
+						<w:lvlJc w:val="left"/>
+						<w:pPr>
+							<w:ind w:hanging="420" w:left="2940"/>
+						</w:pPr>
+					</w:lvl>
+					<w:lvl w:ilvl="7" w:tentative="1" w:tplc="04090019">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="lowerLetter"/>
+						<w:lvlText w:val="%8)"/>
+						<w:lvlJc w:val="left"/>
+						<w:pPr>
+							<w:ind w:hanging="420" w:left="3360"/>
+						</w:pPr>
+					</w:lvl>
+					<w:lvl w:ilvl="8" w:tentative="1" w:tplc="0409001B">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="lowerRoman"/>
+						<w:lvlText w:val="%9."/>
+						<w:lvlJc w:val="right"/>
+						<w:pPr>
+							<w:ind w:hanging="420" w:left="3780"/>
+						</w:pPr>
+					</w:lvl>
+				</w:abstractNum>
+				<w:abstractNum w:abstractNumId="13">
+					<w:nsid w:val="4C1E62C7"/>
+					<w:multiLevelType w:val="hybridMultilevel"/>
+					<w:tmpl w:val="D17645AE"/>
+					<w:lvl w:ilvl="0" w:tplc="A2FE6240">
+						<w:start w:val="3"/>
+						<w:numFmt w:val="japaneseCounting"/>
+						<w:lvlText w:val="%1、"/>
+						<w:lvlJc w:val="left"/>
+						<w:pPr>
+							<w:ind w:hanging="456" w:left="1054"/>
+						</w:pPr>
+						<w:rPr>
+							<w:rFonts w:hint="default"/>
+						</w:rPr>
+					</w:lvl>
+					<w:lvl w:ilvl="1" w:tentative="1" w:tplc="04090019">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="lowerLetter"/>
+						<w:lvlText w:val="%2)"/>
+						<w:lvlJc w:val="left"/>
+						<w:pPr>
+							<w:ind w:hanging="420" w:left="1438"/>
+						</w:pPr>
+					</w:lvl>
+					<w:lvl w:ilvl="2" w:tentative="1" w:tplc="0409001B">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="lowerRoman"/>
+						<w:lvlText w:val="%3."/>
+						<w:lvlJc w:val="right"/>
+						<w:pPr>
+							<w:ind w:hanging="420" w:left="1858"/>
+						</w:pPr>
+					</w:lvl>
+					<w:lvl w:ilvl="3" w:tentative="1" w:tplc="0409000F">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="decimal"/>
+						<w:lvlText w:val="%4."/>
+						<w:lvlJc w:val="left"/>
+						<w:pPr>
+							<w:ind w:hanging="420" w:left="2278"/>
+						</w:pPr>
+					</w:lvl>
+					<w:lvl w:ilvl="4" w:tentative="1" w:tplc="04090019">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="lowerLetter"/>
+						<w:lvlText w:val="%5)"/>
+						<w:lvlJc w:val="left"/>
+						<w:pPr>
+							<w:ind w:hanging="420" w:left="2698"/>
+						</w:pPr>
+					</w:lvl>
+					<w:lvl w:ilvl="5" w:tentative="1" w:tplc="0409001B">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="lowerRoman"/>
+						<w:lvlText w:val="%6."/>
+						<w:lvlJc w:val="right"/>
+						<w:pPr>
+							<w:ind w:hanging="420" w:left="3118"/>
+						</w:pPr>
+					</w:lvl>
+					<w:lvl w:ilvl="6" w:tentative="1" w:tplc="0409000F">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="decimal"/>
+						<w:lvlText w:val="%7."/>
+						<w:lvlJc w:val="left"/>
+						<w:pPr>
+							<w:ind w:hanging="420" w:left="3538"/>
+						</w:pPr>
+					</w:lvl>
+					<w:lvl w:ilvl="7" w:tentative="1" w:tplc="04090019">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="lowerLetter"/>
+						<w:lvlText w:val="%8)"/>
+						<w:lvlJc w:val="left"/>
+						<w:pPr>
+							<w:ind w:hanging="420" w:left="3958"/>
+						</w:pPr>
+					</w:lvl>
+					<w:lvl w:ilvl="8" w:tentative="1" w:tplc="0409001B">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="lowerRoman"/>
+						<w:lvlText w:val="%9."/>
+						<w:lvlJc w:val="right"/>
+						<w:pPr>
+							<w:ind w:hanging="420" w:left="4378"/>
+						</w:pPr>
+					</w:lvl>
+				</w:abstractNum>
+				<w:abstractNum w:abstractNumId="14">
+					<w:nsid w:val="5D4023F1"/>
+					<w:multiLevelType w:val="hybridMultilevel"/>
+					<w:tmpl w:val="8BDE2A18"/>
+					<w:lvl w:ilvl="0" w:tplc="3006B55E">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="japaneseCounting"/>
+						<w:lvlText w:val="%1、"/>
+						<w:lvlJc w:val="left"/>
+						<w:pPr>
+							<w:ind w:hanging="456" w:left="1054"/>
+						</w:pPr>
+						<w:rPr>
+							<w:rFonts w:hint="default"/>
+						</w:rPr>
+					</w:lvl>
+					<w:lvl w:ilvl="1" w:tentative="1" w:tplc="04090019">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="lowerLetter"/>
+						<w:lvlText w:val="%2)"/>
+						<w:lvlJc w:val="left"/>
+						<w:pPr>
+							<w:ind w:hanging="420" w:left="1438"/>
+						</w:pPr>
+					</w:lvl>
+					<w:lvl w:ilvl="2" w:tentative="1" w:tplc="0409001B">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="lowerRoman"/>
+						<w:lvlText w:val="%3."/>
+						<w:lvlJc w:val="right"/>
+						<w:pPr>
+							<w:ind w:hanging="420" w:left="1858"/>
+						</w:pPr>
+					</w:lvl>
+					<w:lvl w:ilvl="3" w:tentative="1" w:tplc="0409000F">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="decimal"/>
+						<w:lvlText w:val="%4."/>
+						<w:lvlJc w:val="left"/>
+						<w:pPr>
+							<w:ind w:hanging="420" w:left="2278"/>
+						</w:pPr>
+					</w:lvl>
+					<w:lvl w:ilvl="4" w:tentative="1" w:tplc="04090019">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="lowerLetter"/>
+						<w:lvlText w:val="%5)"/>
+						<w:lvlJc w:val="left"/>
+						<w:pPr>
+							<w:ind w:hanging="420" w:left="2698"/>
+						</w:pPr>
+					</w:lvl>
+					<w:lvl w:ilvl="5" w:tentative="1" w:tplc="0409001B">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="lowerRoman"/>
+						<w:lvlText w:val="%6."/>
+						<w:lvlJc w:val="right"/>
+						<w:pPr>
+							<w:ind w:hanging="420" w:left="3118"/>
+						</w:pPr>
+					</w:lvl>
+					<w:lvl w:ilvl="6" w:tentative="1" w:tplc="0409000F">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="decimal"/>
+						<w:lvlText w:val="%7."/>
+						<w:lvlJc w:val="left"/>
+						<w:pPr>
+							<w:ind w:hanging="420" w:left="3538"/>
+						</w:pPr>
+					</w:lvl>
+					<w:lvl w:ilvl="7" w:tentative="1" w:tplc="04090019">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="lowerLetter"/>
+						<w:lvlText w:val="%8)"/>
+						<w:lvlJc w:val="left"/>
+						<w:pPr>
+							<w:ind w:hanging="420" w:left="3958"/>
+						</w:pPr>
+					</w:lvl>
+					<w:lvl w:ilvl="8" w:tentative="1" w:tplc="0409001B">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="lowerRoman"/>
+						<w:lvlText w:val="%9."/>
+						<w:lvlJc w:val="right"/>
+						<w:pPr>
+							<w:ind w:hanging="420" w:left="4378"/>
+						</w:pPr>
+					</w:lvl>
+				</w:abstractNum>
+				<w:abstractNum w:abstractNumId="15">
+					<w:nsid w:val="676568D8"/>
+					<w:multiLevelType w:val="hybridMultilevel"/>
+					<w:tmpl w:val="ACFCB264"/>
+					<w:lvl w:ilvl="0" w:tplc="9CAACE1C">
+						<w:numFmt w:val="bullet"/>
+						<w:lvlText w:val="☆"/>
+						<w:lvlJc w:val="left"/>
+						<w:pPr>
+							<w:tabs>
+								<w:tab w:pos="360" w:val="num"/>
+							</w:tabs>
+							<w:ind w:hanging="360" w:left="360"/>
+						</w:pPr>
+						<w:rPr>
+							<w:rFonts w:ascii="宋体" w:cs="Times New Roman" w:eastAsia="宋体" w:hAnsi="宋体" w:hint="eastAsia"/>
+							<w:b/>
+						</w:rPr>
+					</w:lvl>
+					<w:lvl w:ilvl="1" w:tentative="1" w:tplc="04090003">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="bullet"/>
+						<w:lvlText w:val=""/>
+						<w:lvlJc w:val="left"/>
+						<w:pPr>
+							<w:tabs>
+								<w:tab w:pos="840" w:val="num"/>
+							</w:tabs>
+							<w:ind w:hanging="420" w:left="840"/>
+						</w:pPr>
+						<w:rPr>
+							<w:rFonts w:ascii="Wingdings" w:hAnsi="Wingdings" w:hint="default"/>
+						</w:rPr>
+					</w:lvl>
+					<w:lvl w:ilvl="2" w:tentative="1" w:tplc="04090005">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="bullet"/>
+						<w:lvlText w:val=""/>
+						<w:lvlJc w:val="left"/>
+						<w:pPr>
+							<w:tabs>
+								<w:tab w:pos="1260" w:val="num"/>
+							</w:tabs>
+							<w:ind w:hanging="420" w:left="1260"/>
+						</w:pPr>
+						<w:rPr>
+							<w:rFonts w:ascii="Wingdings" w:hAnsi="Wingdings" w:hint="default"/>
+						</w:rPr>
+					</w:lvl>
+					<w:lvl w:ilvl="3" w:tentative="1" w:tplc="04090001">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="bullet"/>
+						<w:lvlText w:val=""/>
+						<w:lvlJc w:val="left"/>
+						<w:pPr>
+							<w:tabs>
+								<w:tab w:pos="1680" w:val="num"/>
+							</w:tabs>
+							<w:ind w:hanging="420" w:left="1680"/>
+						</w:pPr>
+						<w:rPr>
+							<w:rFonts w:ascii="Wingdings" w:hAnsi="Wingdings" w:hint="default"/>
+						</w:rPr>
+					</w:lvl>
+					<w:lvl w:ilvl="4" w:tentative="1" w:tplc="04090003">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="bullet"/>
+						<w:lvlText w:val=""/>
+						<w:lvlJc w:val="left"/>
+						<w:pPr>
+							<w:tabs>
+								<w:tab w:pos="2100" w:val="num"/>
+							</w:tabs>
+							<w:ind w:hanging="420" w:left="2100"/>
+						</w:pPr>
+						<w:rPr>
+							<w:rFonts w:ascii="Wingdings" w:hAnsi="Wingdings" w:hint="default"/>
+						</w:rPr>
+					</w:lvl>
+					<w:lvl w:ilvl="5" w:tentative="1" w:tplc="04090005">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="bullet"/>
+						<w:lvlText w:val=""/>
+						<w:lvlJc w:val="left"/>
+						<w:pPr>
+							<w:tabs>
+								<w:tab w:pos="2520" w:val="num"/>
+							</w:tabs>
+							<w:ind w:hanging="420" w:left="2520"/>
+						</w:pPr>
+						<w:rPr>
+							<w:rFonts w:ascii="Wingdings" w:hAnsi="Wingdings" w:hint="default"/>
+						</w:rPr>
+					</w:lvl>
+					<w:lvl w:ilvl="6" w:tentative="1" w:tplc="04090001">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="bullet"/>
+						<w:lvlText w:val=""/>
+						<w:lvlJc w:val="left"/>
+						<w:pPr>
+							<w:tabs>
+								<w:tab w:pos="2940" w:val="num"/>
+							</w:tabs>
+							<w:ind w:hanging="420" w:left="2940"/>
+						</w:pPr>
+						<w:rPr>
+							<w:rFonts w:ascii="Wingdings" w:hAnsi="Wingdings" w:hint="default"/>
+						</w:rPr>
+					</w:lvl>
+					<w:lvl w:ilvl="7" w:tentative="1" w:tplc="04090003">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="bullet"/>
+						<w:lvlText w:val=""/>
+						<w:lvlJc w:val="left"/>
+						<w:pPr>
+							<w:tabs>
+								<w:tab w:pos="3360" w:val="num"/>
+							</w:tabs>
+							<w:ind w:hanging="420" w:left="3360"/>
+						</w:pPr>
+						<w:rPr>
+							<w:rFonts w:ascii="Wingdings" w:hAnsi="Wingdings" w:hint="default"/>
+						</w:rPr>
+					</w:lvl>
+					<w:lvl w:ilvl="8" w:tentative="1" w:tplc="04090005">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="bullet"/>
+						<w:lvlText w:val=""/>
+						<w:lvlJc w:val="left"/>
+						<w:pPr>
+							<w:tabs>
+								<w:tab w:pos="3780" w:val="num"/>
+							</w:tabs>
+							<w:ind w:hanging="420" w:left="3780"/>
+						</w:pPr>
+						<w:rPr>
+							<w:rFonts w:ascii="Wingdings" w:hAnsi="Wingdings" w:hint="default"/>
+						</w:rPr>
+					</w:lvl>
+				</w:abstractNum>
+				<w:abstractNum w:abstractNumId="16">
+					<w:nsid w:val="7A3B7293"/>
+					<w:multiLevelType w:val="hybridMultilevel"/>
+					<w:tmpl w:val="A32E9C5C"/>
+					<w:lvl w:ilvl="0" w:tplc="4C8299D4">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="japaneseCounting"/>
+						<w:lvlText w:val="(%1)"/>
+						<w:lvlJc w:val="left"/>
+						<w:pPr>
+							<w:tabs>
+								<w:tab w:pos="1620" w:val="num"/>
+							</w:tabs>
+							<w:ind w:hanging="720" w:left="1620"/>
+						</w:pPr>
+						<w:rPr>
+							<w:rFonts w:hint="eastAsia"/>
+						</w:rPr>
+					</w:lvl>
+					<w:lvl w:ilvl="1" w:tplc="F8405D5E">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="decimal"/>
+						<w:lvlText w:val="(%2)"/>
+						<w:lvlJc w:val="left"/>
+						<w:pPr>
+							<w:tabs>
+								<w:tab w:pos="720" w:val="num"/>
+							</w:tabs>
+							<w:ind w:hanging="720" w:left="720"/>
+						</w:pPr>
+						<w:rPr>
+							<w:rFonts w:hint="eastAsia"/>
+						</w:rPr>
+					</w:lvl>
+					<w:lvl w:ilvl="2" w:tentative="1" w:tplc="0409001B">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="lowerRoman"/>
+						<w:lvlText w:val="%3."/>
+						<w:lvlJc w:val="right"/>
+						<w:pPr>
+							<w:tabs>
+								<w:tab w:pos="1260" w:val="num"/>
+							</w:tabs>
+							<w:ind w:hanging="420" w:left="1260"/>
+						</w:pPr>
+					</w:lvl>
+					<w:lvl w:ilvl="3" w:tentative="1" w:tplc="0409000F">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="decimal"/>
+						<w:lvlText w:val="%4."/>
+						<w:lvlJc w:val="left"/>
+						<w:pPr>
+							<w:tabs>
+								<w:tab w:pos="1680" w:val="num"/>
+							</w:tabs>
+							<w:ind w:hanging="420" w:left="1680"/>
+						</w:pPr>
+					</w:lvl>
+					<w:lvl w:ilvl="4" w:tentative="1" w:tplc="04090019">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="lowerLetter"/>
+						<w:lvlText w:val="%5)"/>
+						<w:lvlJc w:val="left"/>
+						<w:pPr>
+							<w:tabs>
+								<w:tab w:pos="2100" w:val="num"/>
+							</w:tabs>
+							<w:ind w:hanging="420" w:left="2100"/>
+						</w:pPr>
+					</w:lvl>
+					<w:lvl w:ilvl="5" w:tentative="1" w:tplc="0409001B">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="lowerRoman"/>
+						<w:lvlText w:val="%6."/>
+						<w:lvlJc w:val="right"/>
+						<w:pPr>
+							<w:tabs>
+								<w:tab w:pos="2520" w:val="num"/>
+							</w:tabs>
+							<w:ind w:hanging="420" w:left="2520"/>
+						</w:pPr>
+					</w:lvl>
+					<w:lvl w:ilvl="6" w:tentative="1" w:tplc="0409000F">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="decimal"/>
+						<w:lvlText w:val="%7."/>
+						<w:lvlJc w:val="left"/>
+						<w:pPr>
+							<w:tabs>
+								<w:tab w:pos="2940" w:val="num"/>
+							</w:tabs>
+							<w:ind w:hanging="420" w:left="2940"/>
+						</w:pPr>
+					</w:lvl>
+					<w:lvl w:ilvl="7" w:tentative="1" w:tplc="04090019">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="lowerLetter"/>
+						<w:lvlText w:val="%8)"/>
+						<w:lvlJc w:val="left"/>
+						<w:pPr>
+							<w:tabs>
+								<w:tab w:pos="3360" w:val="num"/>
+							</w:tabs>
+							<w:ind w:hanging="420" w:left="3360"/>
+						</w:pPr>
+					</w:lvl>
+					<w:lvl w:ilvl="8" w:tentative="1" w:tplc="0409001B">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="lowerRoman"/>
+						<w:lvlText w:val="%9."/>
+						<w:lvlJc w:val="right"/>
+						<w:pPr>
+							<w:tabs>
+								<w:tab w:pos="3780" w:val="num"/>
+							</w:tabs>
+							<w:ind w:hanging="420" w:left="3780"/>
+						</w:pPr>
+					</w:lvl>
+				</w:abstractNum>
+				<w:abstractNum w:abstractNumId="17">
+					<w:nsid w:val="7AF01177"/>
+					<w:multiLevelType w:val="hybridMultilevel"/>
+					<w:tmpl w:val="995AA33A"/>
+					<w:lvl w:ilvl="0" w:tplc="B330B920">
+						<w:start w:val="2"/>
+						<w:numFmt w:val="japaneseCounting"/>
+						<w:lvlText w:val="%1、"/>
+						<w:lvlJc w:val="left"/>
+						<w:pPr>
+							<w:ind w:hanging="420" w:left="1438"/>
+						</w:pPr>
+						<w:rPr>
+							<w:rFonts w:hint="default"/>
+						</w:rPr>
+					</w:lvl>
+					<w:lvl w:ilvl="1" w:tentative="1" w:tplc="04090019">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="lowerLetter"/>
+						<w:lvlText w:val="%2)"/>
+						<w:lvlJc w:val="left"/>
+						<w:pPr>
+							<w:ind w:hanging="420" w:left="1858"/>
+						</w:pPr>
+					</w:lvl>
+					<w:lvl w:ilvl="2" w:tentative="1" w:tplc="0409001B">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="lowerRoman"/>
+						<w:lvlText w:val="%3."/>
+						<w:lvlJc w:val="right"/>
+						<w:pPr>
+							<w:ind w:hanging="420" w:left="2278"/>
+						</w:pPr>
+					</w:lvl>
+					<w:lvl w:ilvl="3" w:tentative="1" w:tplc="0409000F">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="decimal"/>
+						<w:lvlText w:val="%4."/>
+						<w:lvlJc w:val="left"/>
+						<w:pPr>
+							<w:ind w:hanging="420" w:left="2698"/>
+						</w:pPr>
+					</w:lvl>
+					<w:lvl w:ilvl="4" w:tentative="1" w:tplc="04090019">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="lowerLetter"/>
+						<w:lvlText w:val="%5)"/>
+						<w:lvlJc w:val="left"/>
+						<w:pPr>
+							<w:ind w:hanging="420" w:left="3118"/>
+						</w:pPr>
+					</w:lvl>
+					<w:lvl w:ilvl="5" w:tentative="1" w:tplc="0409001B">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="lowerRoman"/>
+						<w:lvlText w:val="%6."/>
+						<w:lvlJc w:val="right"/>
+						<w:pPr>
+							<w:ind w:hanging="420" w:left="3538"/>
+						</w:pPr>
+					</w:lvl>
+					<w:lvl w:ilvl="6" w:tentative="1" w:tplc="0409000F">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="decimal"/>
+						<w:lvlText w:val="%7."/>
+						<w:lvlJc w:val="left"/>
+						<w:pPr>
+							<w:ind w:hanging="420" w:left="3958"/>
+						</w:pPr>
+					</w:lvl>
+					<w:lvl w:ilvl="7" w:tentative="1" w:tplc="04090019">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="lowerLetter"/>
+						<w:lvlText w:val="%8)"/>
+						<w:lvlJc w:val="left"/>
+						<w:pPr>
+							<w:ind w:hanging="420" w:left="4378"/>
+						</w:pPr>
+					</w:lvl>
+					<w:lvl w:ilvl="8" w:tentative="1" w:tplc="0409001B">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="lowerRoman"/>
+						<w:lvlText w:val="%9."/>
+						<w:lvlJc w:val="right"/>
+						<w:pPr>
+							<w:ind w:hanging="420" w:left="4798"/>
+						</w:pPr>
+					</w:lvl>
+				</w:abstractNum>
+				<w:abstractNum w:abstractNumId="18">
+					<w:nsid w:val="7BA06C7E"/>
+					<w:multiLevelType w:val="hybridMultilevel"/>
+					<w:tmpl w:val="E6BEA64C"/>
+					<w:lvl w:ilvl="0" w:tplc="C3B2F75A">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="japaneseCounting"/>
+						<w:lvlText w:val="%1、"/>
+						<w:lvlJc w:val="left"/>
+						<w:pPr>
+							<w:ind w:hanging="456" w:left="456"/>
+						</w:pPr>
+						<w:rPr>
+							<w:rFonts w:hint="default"/>
+						</w:rPr>
+					</w:lvl>
+					<w:lvl w:ilvl="1" w:tentative="1" w:tplc="04090019">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="lowerLetter"/>
+						<w:lvlText w:val="%2)"/>
+						<w:lvlJc w:val="left"/>
+						<w:pPr>
+							<w:ind w:hanging="420" w:left="840"/>
+						</w:pPr>
+					</w:lvl>
+					<w:lvl w:ilvl="2" w:tentative="1" w:tplc="0409001B">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="lowerRoman"/>
+						<w:lvlText w:val="%3."/>
+						<w:lvlJc w:val="right"/>
+						<w:pPr>
+							<w:ind w:hanging="420" w:left="1260"/>
+						</w:pPr>
+					</w:lvl>
+					<w:lvl w:ilvl="3" w:tentative="1" w:tplc="0409000F">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="decimal"/>
+						<w:lvlText w:val="%4."/>
+						<w:lvlJc w:val="left"/>
+						<w:pPr>
+							<w:ind w:hanging="420" w:left="1680"/>
+						</w:pPr>
+					</w:lvl>
+					<w:lvl w:ilvl="4" w:tentative="1" w:tplc="04090019">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="lowerLetter"/>
+						<w:lvlText w:val="%5)"/>
+						<w:lvlJc w:val="left"/>
+						<w:pPr>
+							<w:ind w:hanging="420" w:left="2100"/>
+						</w:pPr>
+					</w:lvl>
+					<w:lvl w:ilvl="5" w:tentative="1" w:tplc="0409001B">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="lowerRoman"/>
+						<w:lvlText w:val="%6."/>
+						<w:lvlJc w:val="right"/>
+						<w:pPr>
+							<w:ind w:hanging="420" w:left="2520"/>
+						</w:pPr>
+					</w:lvl>
+					<w:lvl w:ilvl="6" w:tentative="1" w:tplc="0409000F">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="decimal"/>
+						<w:lvlText w:val="%7."/>
+						<w:lvlJc w:val="left"/>
+						<w:pPr>
+							<w:ind w:hanging="420" w:left="2940"/>
+						</w:pPr>
+					</w:lvl>
+					<w:lvl w:ilvl="7" w:tentative="1" w:tplc="04090019">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="lowerLetter"/>
+						<w:lvlText w:val="%8)"/>
+						<w:lvlJc w:val="left"/>
+						<w:pPr>
+							<w:ind w:hanging="420" w:left="3360"/>
+						</w:pPr>
+					</w:lvl>
+					<w:lvl w:ilvl="8" w:tentative="1" w:tplc="0409001B">
+						<w:start w:val="1"/>
+						<w:numFmt w:val="lowerRoman"/>
+						<w:lvlText w:val="%9."/>
+						<w:lvlJc w:val="right"/>
+						<w:pPr>
+							<w:ind w:hanging="420" w:left="3780"/>
+						</w:pPr>
+					</w:lvl>
+				</w:abstractNum>
+				<w:num w:numId="1">
+					<w:abstractNumId w:val="2"/>
+				</w:num>
+				<w:num w:numId="2">
+					<w:abstractNumId w:val="16"/>
+				</w:num>
+				<w:num w:numId="3">
+					<w:abstractNumId w:val="7"/>
+					<w:lvlOverride w:ilvl="0">
+						<w:startOverride w:val="1"/>
+					</w:lvlOverride>
+					<w:lvlOverride w:ilvl="1">
+						<w:startOverride w:val="1"/>
+					</w:lvlOverride>
+					<w:lvlOverride w:ilvl="2">
+						<w:startOverride w:val="1"/>
+					</w:lvlOverride>
+					<w:lvlOverride w:ilvl="3">
+						<w:startOverride w:val="1"/>
+					</w:lvlOverride>
+					<w:lvlOverride w:ilvl="4">
+						<w:startOverride w:val="1"/>
+					</w:lvlOverride>
+					<w:lvlOverride w:ilvl="5">
+						<w:startOverride w:val="1"/>
+					</w:lvlOverride>
+					<w:lvlOverride w:ilvl="6">
+						<w:startOverride w:val="1"/>
+					</w:lvlOverride>
+					<w:lvlOverride w:ilvl="7">
+						<w:startOverride w:val="1"/>
+					</w:lvlOverride>
+					<w:lvlOverride w:ilvl="8">
+						<w:startOverride w:val="1"/>
+					</w:lvlOverride>
+				</w:num>
+				<w:num w:numId="4">
+					<w:abstractNumId w:val="3"/>
+				</w:num>
+				<w:num w:numId="5">
+					<w:abstractNumId w:val="9"/>
+				</w:num>
+				<w:num w:numId="6">
+					<w:abstractNumId w:val="18"/>
+				</w:num>
+				<w:num w:numId="7">
+					<w:abstractNumId w:val="11"/>
+				</w:num>
+				<w:num w:numId="8">
+					<w:abstractNumId w:val="0"/>
+				</w:num>
+				<w:num w:numId="9">
+					<w:abstractNumId w:val="12"/>
+				</w:num>
+				<w:num w:numId="10">
+					<w:abstractNumId w:val="1"/>
+					<w:lvlOverride w:ilvl="0">
+						<w:startOverride w:val="1"/>
+					</w:lvlOverride>
+					<w:lvlOverride w:ilvl="1">
+						<w:startOverride w:val="1"/>
+					</w:lvlOverride>
+					<w:lvlOverride w:ilvl="2">
+						<w:startOverride w:val="1"/>
+					</w:lvlOverride>
+					<w:lvlOverride w:ilvl="3">
+						<w:startOverride w:val="1"/>
+					</w:lvlOverride>
+					<w:lvlOverride w:ilvl="4">
+						<w:startOverride w:val="1"/>
+					</w:lvlOverride>
+					<w:lvlOverride w:ilvl="5">
+						<w:startOverride w:val="1"/>
+					</w:lvlOverride>
+					<w:lvlOverride w:ilvl="6">
+						<w:startOverride w:val="1"/>
+					</w:lvlOverride>
+					<w:lvlOverride w:ilvl="7">
+						<w:startOverride w:val="1"/>
+					</w:lvlOverride>
+					<w:lvlOverride w:ilvl="8">
+						<w:startOverride w:val="1"/>
+					</w:lvlOverride>
+				</w:num>
+				<w:num w:numId="11">
+					<w:abstractNumId w:val="4"/>
+				</w:num>
+				<w:num w:numId="12">
+					<w:abstractNumId w:val="5"/>
+				</w:num>
+				<w:num w:numId="13">
+					<w:abstractNumId w:val="14"/>
+				</w:num>
+				<w:num w:numId="14">
+					<w:abstractNumId w:val="6"/>
+				</w:num>
+				<w:num w:numId="15">
+					<w:abstractNumId w:val="8"/>
+				</w:num>
+				<w:num w:numId="16">
+					<w:abstractNumId w:val="17"/>
+				</w:num>
+				<w:num w:numId="17">
+					<w:abstractNumId w:val="13"/>
+				</w:num>
+				<w:num w:numId="18">
+					<w:abstractNumId w:val="10"/>
+				</w:num>
+				<w:num w:numId="19">
+					<w:abstractNumId w:val="15"/>
+					<w:lvlOverride w:ilvl="0"/>
+					<w:lvlOverride w:ilvl="1">
+						<w:startOverride w:val="1"/>
+					</w:lvlOverride>
+					<w:lvlOverride w:ilvl="2">
+						<w:startOverride w:val="1"/>
+					</w:lvlOverride>
+					<w:lvlOverride w:ilvl="3">
+						<w:startOverride w:val="1"/>
+					</w:lvlOverride>
+					<w:lvlOverride w:ilvl="4">
+						<w:startOverride w:val="1"/>
+					</w:lvlOverride>
+					<w:lvlOverride w:ilvl="5">
+						<w:startOverride w:val="1"/>
+					</w:lvlOverride>
+					<w:lvlOverride w:ilvl="6">
+						<w:startOverride w:val="1"/>
+					</w:lvlOverride>
+					<w:lvlOverride w:ilvl="7">
+						<w:startOverride w:val="1"/>
+					</w:lvlOverride>
+					<w:lvlOverride w:ilvl="8">
+						<w:startOverride w:val="1"/>
+					</w:lvlOverride>
+				</w:num>
+			</w:numbering>
+		</pkg:xmlData>
+	</pkg:part>
+	<pkg:part pkg:contentType="application/vnd.openxmlformats-officedocument.extended-properties+xml" pkg:name="/docProps/app.xml" pkg:padding="256">
+		<pkg:xmlData>
+			<Properties xmlns="http://schemas.openxmlformats.org/officeDocument/2006/extended-properties" xmlns:vt="http://schemas.openxmlformats.org/officeDocument/2006/docPropsVTypes">
+				<Template>Normal.dotm</Template>
+				<TotalTime>1</TotalTime>
+				<Pages>1</Pages>
+				<Words>20</Words>
+				<Characters>118</Characters>
+				<Application>Microsoft Office Word</Application>
+				<DocSecurity>0</DocSecurity>
+				<Lines>1</Lines>
+				<Paragraphs>1</Paragraphs>
+				<ScaleCrop>false</ScaleCrop>
+				<Company>Microsoft</Company>
+				<LinksUpToDate>false</LinksUpToDate>
+				<CharactersWithSpaces>137</CharactersWithSpaces>
+				<SharedDoc>false</SharedDoc>
+				<HyperlinksChanged>false</HyperlinksChanged>
+				<AppVersion>12.0000</AppVersion>
+			</Properties>
+		</pkg:xmlData>
+	</pkg:part>
+</pkg:package>

BIN
cqb-comm-utils/src/main/resources/quesDistinct.xlsx


+ 1600 - 1597
cqb-comm-utils/src/main/resources/sydx_paper_template.ftl

@@ -1,1597 +1,1600 @@
-<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
-<?mso-application progid="Word.Document"?>
-<pkg:package xmlns:pkg="http://schemas.microsoft.com/office/2006/xmlPackage">
-    <pkg:part pkg:name="/_rels/.rels" pkg:contentType="application/vnd.openxmlformats-package.relationships+xml" pkg:padding="512">
-        <pkg:xmlData>
-            <Relationships xmlns="http://schemas.openxmlformats.org/package/2006/relationships">
-                <Relationship Id="rId1" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/officeDocument" Target="word/document.xml"/>
-                <Relationship Id="rId2" Type="http://schemas.openxmlformats.org/package/2006/relationships/metadata/core-properties" Target="docProps/core.xml"/>
-                <Relationship Id="rId3" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/extended-properties" Target="docProps/app.xml"/>
-            </Relationships>
-        </pkg:xmlData>
-    </pkg:part>
-    <pkg:part pkg:name="/word/_rels/document.xml.rels" pkg:contentType="application/vnd.openxmlformats-package.relationships+xml" pkg:padding="256">
-        <pkg:xmlData>
-            <Relationships xmlns="http://schemas.openxmlformats.org/package/2006/relationships">
-                <Relationship Id="rId3" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/settings" Target="settings.xml"/>
-                <Relationship Id="rId4" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/webSettings" Target="webSettings.xml"/>
-                <Relationship Id="rId5" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/footnotes" Target="footnotes.xml"/>
-                <Relationship Id="rId6" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/endnotes" Target="endnotes.xml"/>
-                <Relationship Id="rId7" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/header" Target="header1.xml"/>
-                <Relationship Id="rId8" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/footer" Target="footer1.xml"/>
-                <Relationship Id="rId9" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/fontTable" Target="fontTable.xml"/>
-                <Relationship Id="rId10" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/theme" Target="theme/theme1.xml"/>
-                <Relationship Id="rId1" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/styles" Target="styles.xml"/>
-                <Relationship Id="rId2" Type="http://schemas.microsoft.com/office/2007/relationships/stylesWithEffects" Target="stylesWithEffects.xml"/>
-            </Relationships>
-        </pkg:xmlData>
-    </pkg:part>
-    <pkg:part pkg:name="/word/document.xml" pkg:contentType="application/vnd.openxmlformats-officedocument.wordprocessingml.document.main+xml">
-        <pkg:xmlData>
-            <w:document mc:Ignorable="w14 wp14" xmlns:wpc="http://schemas.microsoft.com/office/word/2010/wordprocessingCanvas" xmlns:mo="http://schemas.microsoft.com/office/mac/office/2008/main" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" xmlns:mv="urn:schemas-microsoft-com:mac:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:r="http://schemas.openxmlformats.org/officeDocument/2006/relationships" xmlns:m="http://schemas.openxmlformats.org/officeDocument/2006/math" xmlns:v="urn:schemas-microsoft-com:vml" xmlns:wp14="http://schemas.microsoft.com/office/word/2010/wordprocessingDrawing" xmlns:wp="http://schemas.openxmlformats.org/drawingml/2006/wordprocessingDrawing" xmlns:w10="urn:schemas-microsoft-com:office:word" xmlns:w="http://schemas.openxmlformats.org/wordprocessingml/2006/main" xmlns:w14="http://schemas.microsoft.com/office/word/2010/wordml" xmlns:wpg="http://schemas.microsoft.com/office/word/2010/wordprocessingGroup" xmlns:wpi="http://schemas.microsoft.com/office/word/2010/wordprocessingInk" xmlns:wne="http://schemas.microsoft.com/office/word/2006/wordml" xmlns:wps="http://schemas.microsoft.com/office/word/2010/wordprocessingShape">
-                <w:body>
-                    <w:p w14:paraId="3A033879" w14:textId="6D153FE6" w:rsidR="00097880" w:rsidRPr="00974876" w:rsidRDefault="00F24E78" w:rsidP="00974876">
-                        <w:pPr>
-                            <w:spacing w:beforeLines="50" w:before="217"/>
-                            <w:jc w:val="center"/>
-                            <w:rPr>
-                                <w:rFonts w:ascii="黑体" w:eastAsia="黑体" w:hAnsi="黑体" w:hint="eastAsia"/>
-                                <w:b/>
-                                <w:sz w:val="52"/>
-                                <w:szCs w:val="44"/>
-                            </w:rPr>
-                        </w:pPr>
-                        <w:r w:rsidRPr="00974876">
-                            <w:rPr>
-                                <w:rFonts w:ascii="黑体" w:eastAsia="黑体" w:hAnsi="黑体" w:hint="eastAsia"/>
-                                <w:b/>
-                                <w:sz w:val="52"/>
-                                <w:szCs w:val="44"/>
-                            </w:rPr>
-                            <w:t>${title}</w:t>
-                        </w:r>
-                    </w:p>
-                    <w:p w14:paraId="59CB5E42" w14:textId="367D1B47" w:rsidR="00974876" w:rsidRPr="00974876" w:rsidRDefault="00974876" w:rsidP="00974876">
-                        <w:pPr>
-                            <w:spacing w:beforeLines="50" w:before="217"/>
-                            <w:jc w:val="center"/>
-                            <w:rPr>
-                                <w:rFonts w:ascii="黑体" w:eastAsia="黑体" w:hAnsi="黑体" w:hint="eastAsia"/>
-                                <w:b/>
-                                <w:sz w:val="28"/>
-                                <w:szCs w:val="44"/>
-                            </w:rPr>
-                        </w:pPr>
-                        <w:r w:rsidRPr="00974876">
-                            <w:rPr>
-                                <w:rFonts w:ascii="黑体" w:eastAsia="黑体" w:hAnsi="黑体" w:hint="eastAsia"/>
-                                <w:b/>
-                                <w:sz w:val="28"/>
-                                <w:szCs w:val="44"/>
-                            </w:rPr>
-                            <w:t>${subTitle}</w:t>
-                        </w:r>
-                    </w:p>
-                    <w:p w14:paraId="012E5706" w14:textId="2384D476" w:rsidR="005E6C64" w:rsidRPr="00974876" w:rsidRDefault="00974876" w:rsidP="00974876">
-                        <w:pPr>
-                            <w:spacing w:beforeLines="50" w:before="217" w:afterLines="50" w:after="217"/>
-                            <w:jc w:val="center"/>
-                            <w:rPr>
-                                <w:rFonts w:ascii="黑体" w:eastAsia="黑体" w:hAnsi="黑体" w:hint="eastAsia"/>
-                                <w:bCs/>
-                                <w:sz w:val="28"/>
-                                <w:szCs w:val="28"/>
-                            </w:rPr>
-                        </w:pPr>
-                        <w:r w:rsidRPr="00974876">
-                            <w:rPr>
-                                <w:rFonts w:ascii="黑体" w:eastAsia="黑体" w:hAnsi="黑体" w:hint="eastAsia"/>
-                                <w:bCs/>
-                                <w:sz w:val="28"/>
-                                <w:szCs w:val="28"/>
-                            </w:rPr>
-                            <w:t>《</w:t>
-                        </w:r>
-                        <w:r w:rsidR="00F24E78" w:rsidRPr="00974876">
-                            <w:rPr>
-                                <w:rFonts w:ascii="黑体" w:eastAsia="黑体" w:hAnsi="黑体" w:hint="eastAsia"/>
-                                <w:bCs/>
-                                <w:sz w:val="28"/>
-                                <w:szCs w:val="28"/>
-                            </w:rPr>
-                            <w:t>${courseName}</w:t>
-                        </w:r>
-                        <w:r w:rsidRPr="00974876">
-                            <w:rPr>
-                                <w:rFonts w:ascii="黑体" w:eastAsia="黑体" w:hAnsi="黑体" w:hint="eastAsia"/>
-                                <w:bCs/>
-                                <w:sz w:val="28"/>
-                                <w:szCs w:val="28"/>
-                            </w:rPr>
-                            <w:t>》</w:t>
-                        </w:r>
-                    </w:p>
-                    <!--循环大题-->
-                    <#if paperDetails?exists>
-                    <#list paperDetails as paperDetail>
-                    <w:p w14:paraId="69CD38D9" w14:textId="04C0CD44" w:rsidR="00097880" w:rsidRDefault="00C62FAC" w:rsidP="00430FE2">
-                        <w:pPr>
-                            <w:adjustRightInd w:val="0"/>
-                            <w:snapToGrid w:val="0"/>
-                            <w:spacing w:beforeLines="30" w:before="130" w:line="320" w:lineRule="exact"/>
-                            <w:rPr>
-                                <w:color w:val="000000"/>
-                                <w:szCs w:val="21"/>
-                            </w:rPr>
-                        </w:pPr>
-                        <w:r>
-                            <w:rPr>
-                                <w:rFonts w:hint="eastAsia"/>
-                                <w:color w:val="000000"/>
-                                <w:szCs w:val="21"/>
-                            </w:rPr>
-                            <w:t>${paperDetail.cnNum}</w:t>
-                        </w:r>
-                        <w:r w:rsidR="00574041" w:rsidRPr="00574041">
-                            <w:rPr>
-                                <w:rFonts w:hint="eastAsia"/>
-                                <w:color w:val="000000"/>
-                                <w:szCs w:val="21"/>
-                            </w:rPr>
-                            <w:t>.</w:t>
-                        </w:r>
-                        <w:r w:rsidR="00EC5025">
-                            <w:rPr>
-                                <w:rFonts w:hint="eastAsia"/>
-                                <w:color w:val="000000"/>
-                                <w:szCs w:val="21"/>
-                            </w:rPr>
-                            <w:t>${paperDetail.name}</w:t>
-                        </w:r>
-                        <w:r w:rsidR="009804AF">
-                            <w:rPr>
-                                <w:rFonts w:hint="eastAsia"/>
-                                <w:color w:val="000000"/>
-                                <w:szCs w:val="21"/>
-                            </w:rPr>
-                            <w:t>(</w:t>
-                        </w:r>
-                        <w:r w:rsidR="00974876">
-                            <w:rPr>
-                                <w:rFonts w:hint="eastAsia"/>
-                                <w:color w:val="000000"/>
-                                <w:szCs w:val="21"/>
-                            </w:rPr>
-                            <w:t>${paperDetail.title}</w:t>
-                        </w:r>
-                        <w:r w:rsidR="009804AF">
-                            <w:rPr>
-                                <w:rFonts w:hint="eastAsia"/>
-                                <w:color w:val="000000"/>
-                                <w:szCs w:val="21"/>
-                            </w:rPr>
-                            <w:t>)</w:t>
-                        </w:r>
-                    </w:p>
-                    <w:p w14:paraId="58E61D59" w14:textId="77777777" w:rsidR="00A8194A" w:rsidRDefault="00A8194A" w:rsidP="00430FE2">
-                        <w:pPr>
-                            <w:adjustRightInd w:val="0"/>
-                            <w:snapToGrid w:val="0"/>
-                            <w:spacing w:beforeLines="30" w:before="130" w:line="320" w:lineRule="exact"/>
-                            <w:rPr>
-                                <w:color w:val="000000"/>
-                                <w:szCs w:val="21"/>
-                            </w:rPr>
-                        </w:pPr>
-                    </w:p>
-                    <!--循环小题-->
-                    <#if paperDetail.paperDetailUnits?exists>
-                    <#list paperDetail.paperDetailUnits as paperDetailUnit>
-
-                        ${paperDetailUnit.question.quesBodyWord}
-
-                    <#if paperDetailUnit.question.subQuestions?exists>
-                    <#list paperDetailUnit.question.subQuestions as subQuestion>
-
-                        ${subQuestion.quesBodyWord}
-
-                        <#if subQuestion.quesOptions?exists>
-                        <#list subQuestion.quesOptions as subQuesOption>
-                            ${subQuesOption.optionBodyWord}
-                        </#list>
-                        </#if>
-                        <#if subQuestion.quesAnswerWord??>
-                            ${subQuestion.quesAnswerWord}
-                        </#if>
-                    </#list>
-                    </#if>
-
-                    <#if paperDetailUnit.question.quesOptions?exists>
-                    <#list paperDetailUnit.question.quesOptions as quesOption>
-                        ${quesOption.optionBodyWord}
-                     </#list>
-                    </#if>
-                        <#if paperDetailUnit.question.quesAnswerWord??>
-                            ${paperDetailUnit.question.quesAnswerWord}
-                        </#if>
-
-                    <w:p w14:paraId="15CFB5D6" w14:textId="77777777" w:rsidR="003D5A89" w:rsidRDefault="003D5A89" w:rsidP="00757E54">
-                        <w:pPr>
-                            <w:adjustRightInd w:val="0"/>
-                            <w:snapToGrid w:val="0"/>
-                            <w:spacing w:line="320" w:lineRule="exact"/>
-                            <w:rPr>
-                                <w:color w:val="000000"/>
-                                <w:szCs w:val="21"/>
-                            </w:rPr>
-                        </w:pPr>
-                    </w:p>
-                    <w:p w14:paraId="5C7F80BF" w14:textId="77777777" w:rsidR="003D5A89" w:rsidRDefault="003D5A89" w:rsidP="00757E54">
-                        <w:pPr>
-                            <w:adjustRightInd w:val="0"/>
-                            <w:snapToGrid w:val="0"/>
-                            <w:spacing w:line="320" w:lineRule="exact"/>
-                            <w:rPr>
-                                <w:color w:val="000000"/>
-                                <w:szCs w:val="21"/>
-                            </w:rPr>
-                        </w:pPr>
-                    </w:p>
-                    </#list>
-                    </#if>
-                    </#list>
-                    </#if>
-                    <w:sectPr w:rsidR="003D5A89" w:rsidSect="00FF43E5">
-                        <w:headerReference w:type="default" r:id="rId7"/>
-                        <w:footerReference w:type="default" r:id="rId8"/>
-                        <w:pgSz w:w="16840" w:h="23820" w:code="9"/>
-                        <w:pgMar w:top="2098" w:right="1814" w:bottom="2098" w:left="1814" w:header="851" w:footer="1814" w:gutter="0"/>
-                        <w:cols w:space="425"/>
-                        <w:docGrid w:type="lines" w:linePitch="435"/>
-                    </w:sectPr>
-                </w:body>
-            </w:document>
-        </pkg:xmlData>
-    </pkg:part>
-    <pkg:part pkg:name="/word/footnotes.xml" pkg:contentType="application/vnd.openxmlformats-officedocument.wordprocessingml.footnotes+xml">
-        <pkg:xmlData>
-            <w:footnotes mc:Ignorable="w14 wp14" xmlns:wpc="http://schemas.microsoft.com/office/word/2010/wordprocessingCanvas" xmlns:mo="http://schemas.microsoft.com/office/mac/office/2008/main" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" xmlns:mv="urn:schemas-microsoft-com:mac:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:r="http://schemas.openxmlformats.org/officeDocument/2006/relationships" xmlns:m="http://schemas.openxmlformats.org/officeDocument/2006/math" xmlns:v="urn:schemas-microsoft-com:vml" xmlns:wp14="http://schemas.microsoft.com/office/word/2010/wordprocessingDrawing" xmlns:wp="http://schemas.openxmlformats.org/drawingml/2006/wordprocessingDrawing" xmlns:w10="urn:schemas-microsoft-com:office:word" xmlns:w="http://schemas.openxmlformats.org/wordprocessingml/2006/main" xmlns:w14="http://schemas.microsoft.com/office/word/2010/wordml" xmlns:wpg="http://schemas.microsoft.com/office/word/2010/wordprocessingGroup" xmlns:wpi="http://schemas.microsoft.com/office/word/2010/wordprocessingInk" xmlns:wne="http://schemas.microsoft.com/office/word/2006/wordml" xmlns:wps="http://schemas.microsoft.com/office/word/2010/wordprocessingShape">
-                <w:footnote w:type="separator" w:id="-1">
-                    <w:p w14:paraId="3933DA74" w14:textId="77777777" w:rsidR="005E6C64" w:rsidRDefault="005E6C64">
-                        <w:r>
-                            <w:separator/>
-                        </w:r>
-                    </w:p>
-                </w:footnote>
-                <w:footnote w:type="continuationSeparator" w:id="0">
-                    <w:p w14:paraId="45E4E26E" w14:textId="77777777" w:rsidR="005E6C64" w:rsidRDefault="005E6C64">
-                        <w:r>
-                            <w:continuationSeparator/>
-                        </w:r>
-                    </w:p>
-                </w:footnote>
-            </w:footnotes>
-        </pkg:xmlData>
-    </pkg:part>
-    <pkg:part pkg:name="/word/endnotes.xml" pkg:contentType="application/vnd.openxmlformats-officedocument.wordprocessingml.endnotes+xml">
-        <pkg:xmlData>
-            <w:endnotes mc:Ignorable="w14 wp14" xmlns:wpc="http://schemas.microsoft.com/office/word/2010/wordprocessingCanvas" xmlns:mo="http://schemas.microsoft.com/office/mac/office/2008/main" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" xmlns:mv="urn:schemas-microsoft-com:mac:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:r="http://schemas.openxmlformats.org/officeDocument/2006/relationships" xmlns:m="http://schemas.openxmlformats.org/officeDocument/2006/math" xmlns:v="urn:schemas-microsoft-com:vml" xmlns:wp14="http://schemas.microsoft.com/office/word/2010/wordprocessingDrawing" xmlns:wp="http://schemas.openxmlformats.org/drawingml/2006/wordprocessingDrawing" xmlns:w10="urn:schemas-microsoft-com:office:word" xmlns:w="http://schemas.openxmlformats.org/wordprocessingml/2006/main" xmlns:w14="http://schemas.microsoft.com/office/word/2010/wordml" xmlns:wpg="http://schemas.microsoft.com/office/word/2010/wordprocessingGroup" xmlns:wpi="http://schemas.microsoft.com/office/word/2010/wordprocessingInk" xmlns:wne="http://schemas.microsoft.com/office/word/2006/wordml" xmlns:wps="http://schemas.microsoft.com/office/word/2010/wordprocessingShape">
-                <w:endnote w:type="separator" w:id="-1">
-                    <w:p w14:paraId="4AB009BF" w14:textId="77777777" w:rsidR="005E6C64" w:rsidRDefault="005E6C64">
-                        <w:r>
-                            <w:separator/>
-                        </w:r>
-                    </w:p>
-                </w:endnote>
-                <w:endnote w:type="continuationSeparator" w:id="0">
-                    <w:p w14:paraId="72409104" w14:textId="77777777" w:rsidR="005E6C64" w:rsidRDefault="005E6C64">
-                        <w:r>
-                            <w:continuationSeparator/>
-                        </w:r>
-                    </w:p>
-                </w:endnote>
-            </w:endnotes>
-        </pkg:xmlData>
-    </pkg:part>
-    <pkg:part pkg:name="/word/header1.xml" pkg:contentType="application/vnd.openxmlformats-officedocument.wordprocessingml.header+xml">
-        <pkg:xmlData>
-            <w:hdr mc:Ignorable="w14 wp14" xmlns:wpc="http://schemas.microsoft.com/office/word/2010/wordprocessingCanvas" xmlns:mo="http://schemas.microsoft.com/office/mac/office/2008/main" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" xmlns:mv="urn:schemas-microsoft-com:mac:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:r="http://schemas.openxmlformats.org/officeDocument/2006/relationships" xmlns:m="http://schemas.openxmlformats.org/officeDocument/2006/math" xmlns:v="urn:schemas-microsoft-com:vml" xmlns:wp14="http://schemas.microsoft.com/office/word/2010/wordprocessingDrawing" xmlns:wp="http://schemas.openxmlformats.org/drawingml/2006/wordprocessingDrawing" xmlns:w10="urn:schemas-microsoft-com:office:word" xmlns:w="http://schemas.openxmlformats.org/wordprocessingml/2006/main" xmlns:w14="http://schemas.microsoft.com/office/word/2010/wordml" xmlns:wpg="http://schemas.microsoft.com/office/word/2010/wordprocessingGroup" xmlns:wpi="http://schemas.microsoft.com/office/word/2010/wordprocessingInk" xmlns:wne="http://schemas.microsoft.com/office/word/2006/wordml" xmlns:wps="http://schemas.microsoft.com/office/word/2010/wordprocessingShape">
-                <w:p w14:paraId="01C235D6" w14:textId="77777777" w:rsidR="005E6C64" w:rsidRDefault="005E6C64" w:rsidP="00097880">
-                    <w:pPr>
-                        <w:pStyle w:val="a3"/>
-                        <w:pBdr>
-                            <w:bottom w:val="none" w:sz="0" w:space="0" w:color="auto"/>
-                        </w:pBdr>
-                    </w:pPr>
-                </w:p>
-            </w:hdr>
-        </pkg:xmlData>
-    </pkg:part>
-    <pkg:part pkg:name="/word/footer1.xml" pkg:contentType="application/vnd.openxmlformats-officedocument.wordprocessingml.footer+xml">
-        <pkg:xmlData>
-            <w:ftr mc:Ignorable="w14 wp14" xmlns:wpc="http://schemas.microsoft.com/office/word/2010/wordprocessingCanvas" xmlns:mo="http://schemas.microsoft.com/office/mac/office/2008/main" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" xmlns:mv="urn:schemas-microsoft-com:mac:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:r="http://schemas.openxmlformats.org/officeDocument/2006/relationships" xmlns:m="http://schemas.openxmlformats.org/officeDocument/2006/math" xmlns:v="urn:schemas-microsoft-com:vml" xmlns:wp14="http://schemas.microsoft.com/office/word/2010/wordprocessingDrawing" xmlns:wp="http://schemas.openxmlformats.org/drawingml/2006/wordprocessingDrawing" xmlns:w10="urn:schemas-microsoft-com:office:word" xmlns:w="http://schemas.openxmlformats.org/wordprocessingml/2006/main" xmlns:w14="http://schemas.microsoft.com/office/word/2010/wordml" xmlns:wpg="http://schemas.microsoft.com/office/word/2010/wordprocessingGroup" xmlns:wpi="http://schemas.microsoft.com/office/word/2010/wordprocessingInk" xmlns:wne="http://schemas.microsoft.com/office/word/2006/wordml" xmlns:wps="http://schemas.microsoft.com/office/word/2010/wordprocessingShape">
-                <w:p w14:paraId="6B6A5894" w14:textId="13CDC3DA" w:rsidR="005E6C64" w:rsidRPr="00070B9E" w:rsidRDefault="005E6C64" w:rsidP="00070B9E">
-                    <w:pPr>
-                        <w:pStyle w:val="a4"/>
-                        <w:jc w:val="center"/>
-                    </w:pPr>
-                    <w:r w:rsidRPr="00070B9E">
-                        <w:rPr>
-                            <w:rFonts w:hint="eastAsia"/>
-                            <w:kern w:val="0"/>
-                            <w:sz w:val="21"/>
-                            <w:szCs w:val="21"/>
-                        </w:rPr>
-                        <w:t>试卷第</w:t>
-                    </w:r>
-                    <w:sdt>
-                        <w:sdtPr>
-                            <w:rPr>
-                                <w:rFonts w:eastAsiaTheme="minorEastAsia"/>
-                                <w:sz w:val="21"/>
-                                <w:szCs w:val="21"/>
-                            </w:rPr>
-                            <w:id w:val="-1918230034"/>
-                            <w:docPartObj>
-                                <w:docPartGallery w:val="Page Numbers (Bottom of Page)"/>
-                                <w:docPartUnique/>
-                            </w:docPartObj>
-                        </w:sdtPr>
-                        <w:sdtEndPr/>
-                        <w:sdtContent>
-                            <w:sdt>
-                                <w:sdtPr>
-                                    <w:rPr>
-                                        <w:rFonts w:eastAsiaTheme="minorEastAsia"/>
-                                        <w:sz w:val="21"/>
-                                        <w:szCs w:val="21"/>
-                                    </w:rPr>
-                                    <w:id w:val="98381352"/>
-                                    <w:docPartObj>
-                                        <w:docPartGallery w:val="Page Numbers (Top of Page)"/>
-                                        <w:docPartUnique/>
-                                    </w:docPartObj>
-                                </w:sdtPr>
-                                <w:sdtEndPr/>
-                                <w:sdtContent>
-                                    <w:r w:rsidRPr="007D3C9C">
-                                        <w:rPr>
-                                            <w:rFonts w:eastAsiaTheme="minorEastAsia"/>
-                                            <w:bCs/>
-                                            <w:sz w:val="21"/>
-                                            <w:szCs w:val="21"/>
-                                        </w:rPr>
-                                        <w:fldChar w:fldCharType="begin"/>
-                                    </w:r>
-                                    <w:r w:rsidRPr="007D3C9C">
-                                        <w:rPr>
-                                            <w:rFonts w:eastAsiaTheme="minorEastAsia"/>
-                                            <w:bCs/>
-                                            <w:sz w:val="21"/>
-                                            <w:szCs w:val="21"/>
-                                        </w:rPr>
-                                        <w:instrText>PAGE</w:instrText>
-                                    </w:r>
-                                    <w:r w:rsidRPr="007D3C9C">
-                                        <w:rPr>
-                                            <w:rFonts w:eastAsiaTheme="minorEastAsia"/>
-                                            <w:bCs/>
-                                            <w:sz w:val="21"/>
-                                            <w:szCs w:val="21"/>
-                                        </w:rPr>
-                                        <w:fldChar w:fldCharType="separate"/>
-                                    </w:r>
-                                    <w:r w:rsidR="00FF43E5">
-                                        <w:rPr>
-                                            <w:rFonts w:eastAsiaTheme="minorEastAsia"/>
-                                            <w:bCs/>
-                                            <w:noProof/>
-                                            <w:sz w:val="21"/>
-                                            <w:szCs w:val="21"/>
-                                        </w:rPr>
-                                        <w:t>1</w:t>
-                                    </w:r>
-                                    <w:r w:rsidRPr="007D3C9C">
-                                        <w:rPr>
-                                            <w:rFonts w:eastAsiaTheme="minorEastAsia"/>
-                                            <w:bCs/>
-                                            <w:sz w:val="21"/>
-                                            <w:szCs w:val="21"/>
-                                        </w:rPr>
-                                        <w:fldChar w:fldCharType="end"/>
-                                    </w:r>
-                                    <w:r w:rsidRPr="007D3C9C">
-                                        <w:rPr>
-                                            <w:rFonts w:eastAsiaTheme="minorEastAsia"/>
-                                            <w:kern w:val="0"/>
-                                            <w:sz w:val="21"/>
-                                            <w:szCs w:val="21"/>
-                                        </w:rPr>
-                                        <w:t>页(共</w:t>
-                                    </w:r>
-                                    <w:r w:rsidRPr="007D3C9C">
-                                        <w:rPr>
-                                            <w:rFonts w:eastAsiaTheme="minorEastAsia"/>
-                                            <w:bCs/>
-                                            <w:sz w:val="21"/>
-                                            <w:szCs w:val="21"/>
-                                        </w:rPr>
-                                        <w:fldChar w:fldCharType="begin"/>
-                                    </w:r>
-                                    <w:r w:rsidRPr="007D3C9C">
-                                        <w:rPr>
-                                            <w:rFonts w:eastAsiaTheme="minorEastAsia"/>
-                                            <w:bCs/>
-                                            <w:sz w:val="21"/>
-                                            <w:szCs w:val="21"/>
-                                        </w:rPr>
-                                        <w:instrText>NUMPAGES</w:instrText>
-                                    </w:r>
-                                    <w:r w:rsidRPr="007D3C9C">
-                                        <w:rPr>
-                                            <w:rFonts w:eastAsiaTheme="minorEastAsia"/>
-                                            <w:bCs/>
-                                            <w:sz w:val="21"/>
-                                            <w:szCs w:val="21"/>
-                                        </w:rPr>
-                                        <w:fldChar w:fldCharType="separate"/>
-                                    </w:r>
-                                    <w:r w:rsidR="00FF43E5">
-                                        <w:rPr>
-                                            <w:rFonts w:eastAsiaTheme="minorEastAsia"/>
-                                            <w:bCs/>
-                                            <w:noProof/>
-                                            <w:sz w:val="21"/>
-                                            <w:szCs w:val="21"/>
-                                        </w:rPr>
-                                        <w:t>1</w:t>
-                                    </w:r>
-                                    <w:r w:rsidRPr="007D3C9C">
-                                        <w:rPr>
-                                            <w:rFonts w:eastAsiaTheme="minorEastAsia"/>
-                                            <w:bCs/>
-                                            <w:sz w:val="21"/>
-                                            <w:szCs w:val="21"/>
-                                        </w:rPr>
-                                        <w:fldChar w:fldCharType="end"/>
-                                    </w:r>
-                                    <w:r w:rsidRPr="007D3C9C">
-                                        <w:rPr>
-                                            <w:rFonts w:eastAsiaTheme="minorEastAsia"/>
-                                            <w:kern w:val="0"/>
-                                            <w:sz w:val="21"/>
-                                            <w:szCs w:val="21"/>
-                                        </w:rPr>
-                                        <w:t>页)</w:t>
-                                    </w:r>
-                                </w:sdtContent>
-                            </w:sdt>
-                        </w:sdtContent>
-                    </w:sdt>
-                </w:p>
-            </w:ftr>
-        </pkg:xmlData>
-    </pkg:part>
-    <pkg:part pkg:name="/word/theme/theme1.xml" pkg:contentType="application/vnd.openxmlformats-officedocument.theme+xml">
-        <pkg:xmlData>
-            <a:theme name="Office 主题​​" xmlns:a="http://schemas.openxmlformats.org/drawingml/2006/main">
-                <a:themeElements>
-                    <a:clrScheme name="Office">
-                        <a:dk1>
-                            <a:sysClr val="windowText" lastClr="000000"/>
-                        </a:dk1>
-                        <a:lt1>
-                            <a:sysClr val="window" lastClr="FFFFFF"/>
-                        </a:lt1>
-                        <a:dk2>
-                            <a:srgbClr val="1F497D"/>
-                        </a:dk2>
-                        <a:lt2>
-                            <a:srgbClr val="EEECE1"/>
-                        </a:lt2>
-                        <a:accent1>
-                            <a:srgbClr val="4F81BD"/>
-                        </a:accent1>
-                        <a:accent2>
-                            <a:srgbClr val="C0504D"/>
-                        </a:accent2>
-                        <a:accent3>
-                            <a:srgbClr val="9BBB59"/>
-                        </a:accent3>
-                        <a:accent4>
-                            <a:srgbClr val="8064A2"/>
-                        </a:accent4>
-                        <a:accent5>
-                            <a:srgbClr val="4BACC6"/>
-                        </a:accent5>
-                        <a:accent6>
-                            <a:srgbClr val="F79646"/>
-                        </a:accent6>
-                        <a:hlink>
-                            <a:srgbClr val="0000FF"/>
-                        </a:hlink>
-                        <a:folHlink>
-                            <a:srgbClr val="800080"/>
-                        </a:folHlink>
-                    </a:clrScheme>
-                    <a:fontScheme name="Office">
-                        <a:majorFont>
-                            <a:latin typeface="Cambria"/>
-                            <a:ea typeface=""/>
-                            <a:cs typeface=""/>
-                            <a:font script="Jpan" typeface="MS ゴシック"/>
-                            <a:font script="Hang" typeface="맑은 고딕"/>
-                            <a:font script="Hans" typeface="宋体"/>
-                            <a:font script="Hant" typeface="新細明體"/>
-                            <a:font script="Arab" typeface="Times New Roman"/>
-                            <a:font script="Hebr" typeface="Times New Roman"/>
-                            <a:font script="Thai" typeface="Angsana New"/>
-                            <a:font script="Ethi" typeface="Nyala"/>
-                            <a:font script="Beng" typeface="Vrinda"/>
-                            <a:font script="Gujr" typeface="Shruti"/>
-                            <a:font script="Khmr" typeface="MoolBoran"/>
-                            <a:font script="Knda" typeface="Tunga"/>
-                            <a:font script="Guru" typeface="Raavi"/>
-                            <a:font script="Cans" typeface="Euphemia"/>
-                            <a:font script="Cher" typeface="Plantagenet Cherokee"/>
-                            <a:font script="Yiii" typeface="Microsoft Yi Baiti"/>
-                            <a:font script="Tibt" typeface="Microsoft Himalaya"/>
-                            <a:font script="Thaa" typeface="MV Boli"/>
-                            <a:font script="Deva" typeface="Mangal"/>
-                            <a:font script="Telu" typeface="Gautami"/>
-                            <a:font script="Taml" typeface="Latha"/>
-                            <a:font script="Syrc" typeface="Estrangelo Edessa"/>
-                            <a:font script="Orya" typeface="Kalinga"/>
-                            <a:font script="Mlym" typeface="Kartika"/>
-                            <a:font script="Laoo" typeface="DokChampa"/>
-                            <a:font script="Sinh" typeface="Iskoola Pota"/>
-                            <a:font script="Mong" typeface="Mongolian Baiti"/>
-                            <a:font script="Viet" typeface="Times New Roman"/>
-                            <a:font script="Uigh" typeface="Microsoft Uighur"/>
-                            <a:font script="Geor" typeface="Sylfaen"/>
-                        </a:majorFont>
-                        <a:minorFont>
-                            <a:latin typeface="Calibri"/>
-                            <a:ea typeface=""/>
-                            <a:cs typeface=""/>
-                            <a:font script="Jpan" typeface="MS 明朝"/>
-                            <a:font script="Hang" typeface="맑은 고딕"/>
-                            <a:font script="Hans" typeface="宋体"/>
-                            <a:font script="Hant" typeface="新細明體"/>
-                            <a:font script="Arab" typeface="Arial"/>
-                            <a:font script="Hebr" typeface="Arial"/>
-                            <a:font script="Thai" typeface="Cordia New"/>
-                            <a:font script="Ethi" typeface="Nyala"/>
-                            <a:font script="Beng" typeface="Vrinda"/>
-                            <a:font script="Gujr" typeface="Shruti"/>
-                            <a:font script="Khmr" typeface="DaunPenh"/>
-                            <a:font script="Knda" typeface="Tunga"/>
-                            <a:font script="Guru" typeface="Raavi"/>
-                            <a:font script="Cans" typeface="Euphemia"/>
-                            <a:font script="Cher" typeface="Plantagenet Cherokee"/>
-                            <a:font script="Yiii" typeface="Microsoft Yi Baiti"/>
-                            <a:font script="Tibt" typeface="Microsoft Himalaya"/>
-                            <a:font script="Thaa" typeface="MV Boli"/>
-                            <a:font script="Deva" typeface="Mangal"/>
-                            <a:font script="Telu" typeface="Gautami"/>
-                            <a:font script="Taml" typeface="Latha"/>
-                            <a:font script="Syrc" typeface="Estrangelo Edessa"/>
-                            <a:font script="Orya" typeface="Kalinga"/>
-                            <a:font script="Mlym" typeface="Kartika"/>
-                            <a:font script="Laoo" typeface="DokChampa"/>
-                            <a:font script="Sinh" typeface="Iskoola Pota"/>
-                            <a:font script="Mong" typeface="Mongolian Baiti"/>
-                            <a:font script="Viet" typeface="Arial"/>
-                            <a:font script="Uigh" typeface="Microsoft Uighur"/>
-                            <a:font script="Geor" typeface="Sylfaen"/>
-                        </a:minorFont>
-                    </a:fontScheme>
-                    <a:fmtScheme name="Office">
-                        <a:fillStyleLst>
-                            <a:solidFill>
-                                <a:schemeClr val="phClr"/>
-                            </a:solidFill>
-                            <a:gradFill rotWithShape="1">
-                                <a:gsLst>
-                                    <a:gs pos="0">
-                                        <a:schemeClr val="phClr">
-                                            <a:tint val="50000"/>
-                                            <a:satMod val="300000"/>
-                                        </a:schemeClr>
-                                    </a:gs>
-                                    <a:gs pos="35000">
-                                        <a:schemeClr val="phClr">
-                                            <a:tint val="37000"/>
-                                            <a:satMod val="300000"/>
-                                        </a:schemeClr>
-                                    </a:gs>
-                                    <a:gs pos="100000">
-                                        <a:schemeClr val="phClr">
-                                            <a:tint val="15000"/>
-                                            <a:satMod val="350000"/>
-                                        </a:schemeClr>
-                                    </a:gs>
-                                </a:gsLst>
-                                <a:lin ang="16200000" scaled="1"/>
-                            </a:gradFill>
-                            <a:gradFill rotWithShape="1">
-                                <a:gsLst>
-                                    <a:gs pos="0">
-                                        <a:schemeClr val="phClr">
-                                            <a:shade val="51000"/>
-                                            <a:satMod val="130000"/>
-                                        </a:schemeClr>
-                                    </a:gs>
-                                    <a:gs pos="80000">
-                                        <a:schemeClr val="phClr">
-                                            <a:shade val="93000"/>
-                                            <a:satMod val="130000"/>
-                                        </a:schemeClr>
-                                    </a:gs>
-                                    <a:gs pos="100000">
-                                        <a:schemeClr val="phClr">
-                                            <a:shade val="94000"/>
-                                            <a:satMod val="135000"/>
-                                        </a:schemeClr>
-                                    </a:gs>
-                                </a:gsLst>
-                                <a:lin ang="16200000" scaled="0"/>
-                            </a:gradFill>
-                        </a:fillStyleLst>
-                        <a:lnStyleLst>
-                            <a:ln w="9525" cap="flat" cmpd="sng" algn="ctr">
-                                <a:solidFill>
-                                    <a:schemeClr val="phClr">
-                                        <a:shade val="95000"/>
-                                        <a:satMod val="105000"/>
-                                    </a:schemeClr>
-                                </a:solidFill>
-                                <a:prstDash val="solid"/>
-                            </a:ln>
-                            <a:ln w="25400" cap="flat" cmpd="sng" algn="ctr">
-                                <a:solidFill>
-                                    <a:schemeClr val="phClr"/>
-                                </a:solidFill>
-                                <a:prstDash val="solid"/>
-                            </a:ln>
-                            <a:ln w="38100" cap="flat" cmpd="sng" algn="ctr">
-                                <a:solidFill>
-                                    <a:schemeClr val="phClr"/>
-                                </a:solidFill>
-                                <a:prstDash val="solid"/>
-                            </a:ln>
-                        </a:lnStyleLst>
-                        <a:effectStyleLst>
-                            <a:effectStyle>
-                                <a:effectLst>
-                                    <a:outerShdw blurRad="40000" dist="20000" dir="5400000" rotWithShape="0">
-                                        <a:srgbClr val="000000">
-                                            <a:alpha val="38000"/>
-                                        </a:srgbClr>
-                                    </a:outerShdw>
-                                </a:effectLst>
-                            </a:effectStyle>
-                            <a:effectStyle>
-                                <a:effectLst>
-                                    <a:outerShdw blurRad="40000" dist="23000" dir="5400000" rotWithShape="0">
-                                        <a:srgbClr val="000000">
-                                            <a:alpha val="35000"/>
-                                        </a:srgbClr>
-                                    </a:outerShdw>
-                                </a:effectLst>
-                            </a:effectStyle>
-                            <a:effectStyle>
-                                <a:effectLst>
-                                    <a:outerShdw blurRad="40000" dist="23000" dir="5400000" rotWithShape="0">
-                                        <a:srgbClr val="000000">
-                                            <a:alpha val="35000"/>
-                                        </a:srgbClr>
-                                    </a:outerShdw>
-                                </a:effectLst>
-                                <a:scene3d>
-                                    <a:camera prst="orthographicFront">
-                                        <a:rot lat="0" lon="0" rev="0"/>
-                                    </a:camera>
-                                    <a:lightRig rig="threePt" dir="t">
-                                        <a:rot lat="0" lon="0" rev="1200000"/>
-                                    </a:lightRig>
-                                </a:scene3d>
-                                <a:sp3d>
-                                    <a:bevelT w="63500" h="25400"/>
-                                </a:sp3d>
-                            </a:effectStyle>
-                        </a:effectStyleLst>
-                        <a:bgFillStyleLst>
-                            <a:solidFill>
-                                <a:schemeClr val="phClr"/>
-                            </a:solidFill>
-                            <a:gradFill rotWithShape="1">
-                                <a:gsLst>
-                                    <a:gs pos="0">
-                                        <a:schemeClr val="phClr">
-                                            <a:tint val="40000"/>
-                                            <a:satMod val="350000"/>
-                                        </a:schemeClr>
-                                    </a:gs>
-                                    <a:gs pos="40000">
-                                        <a:schemeClr val="phClr">
-                                            <a:tint val="45000"/>
-                                            <a:shade val="99000"/>
-                                            <a:satMod val="350000"/>
-                                        </a:schemeClr>
-                                    </a:gs>
-                                    <a:gs pos="100000">
-                                        <a:schemeClr val="phClr">
-                                            <a:shade val="20000"/>
-                                            <a:satMod val="255000"/>
-                                        </a:schemeClr>
-                                    </a:gs>
-                                </a:gsLst>
-                                <a:path path="circle">
-                                    <a:fillToRect l="50000" t="-80000" r="50000" b="180000"/>
-                                </a:path>
-                            </a:gradFill>
-                            <a:gradFill rotWithShape="1">
-                                <a:gsLst>
-                                    <a:gs pos="0">
-                                        <a:schemeClr val="phClr">
-                                            <a:tint val="80000"/>
-                                            <a:satMod val="300000"/>
-                                        </a:schemeClr>
-                                    </a:gs>
-                                    <a:gs pos="100000">
-                                        <a:schemeClr val="phClr">
-                                            <a:shade val="30000"/>
-                                            <a:satMod val="200000"/>
-                                        </a:schemeClr>
-                                    </a:gs>
-                                </a:gsLst>
-                                <a:path path="circle">
-                                    <a:fillToRect l="50000" t="50000" r="50000" b="50000"/>
-                                </a:path>
-                            </a:gradFill>
-                        </a:bgFillStyleLst>
-                    </a:fmtScheme>
-                </a:themeElements>
-                <a:objectDefaults/>
-                <a:extraClrSchemeLst/>
-            </a:theme>
-        </pkg:xmlData>
-    </pkg:part>
-    <pkg:part pkg:name="/word/settings.xml" pkg:contentType="application/vnd.openxmlformats-officedocument.wordprocessingml.settings+xml">
-        <pkg:xmlData>
-            <w:settings mc:Ignorable="w14" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:r="http://schemas.openxmlformats.org/officeDocument/2006/relationships" xmlns:m="http://schemas.openxmlformats.org/officeDocument/2006/math" xmlns:v="urn:schemas-microsoft-com:vml" xmlns:w10="urn:schemas-microsoft-com:office:word" xmlns:w="http://schemas.openxmlformats.org/wordprocessingml/2006/main" xmlns:w14="http://schemas.microsoft.com/office/word/2010/wordml" xmlns:sl="http://schemas.openxmlformats.org/schemaLibrary/2006/main">
-                <w:zoom w:percent="150"/>
-                <w:bordersDoNotSurroundHeader/>
-                <w:bordersDoNotSurroundFooter/>
-                <w:proofState w:spelling="clean" w:grammar="clean"/>
-                <w:stylePaneFormatFilter w:val="3F01" w:allStyles="1" w:customStyles="0" w:latentStyles="0" w:stylesInUse="0" w:headingStyles="0" w:numberingStyles="0" w:tableStyles="0" w:directFormattingOnRuns="1" w:directFormattingOnParagraphs="1" w:directFormattingOnNumbering="1" w:directFormattingOnTables="1" w:clearFormatting="1" w:top3HeadingStyles="1" w:visibleStyles="0" w:alternateStyleNames="0"/>
-                <w:defaultTabStop w:val="420"/>
-                <w:drawingGridHorizontalSpacing w:val="105"/>
-                <w:drawingGridVerticalSpacing w:val="435"/>
-                <w:displayHorizontalDrawingGridEvery w:val="0"/>
-                <w:characterSpacingControl w:val="compressPunctuation"/>
-                <w:hdrShapeDefaults>
-                    <o:shapedefaults v:ext="edit" spidmax="2050"/>
-                </w:hdrShapeDefaults>
-                <w:footnotePr>
-                    <w:footnote w:id="-1"/>
-                    <w:footnote w:id="0"/>
-                </w:footnotePr>
-                <w:endnotePr>
-                    <w:endnote w:id="-1"/>
-                    <w:endnote w:id="0"/>
-                </w:endnotePr>
-                <w:compat>
-                    <w:spaceForUL/>
-                    <w:balanceSingleByteDoubleByteWidth/>
-                    <w:doNotLeaveBackslashAlone/>
-                    <w:ulTrailSpace/>
-                    <w:doNotExpandShiftReturn/>
-                    <w:adjustLineHeightInTable/>
-                    <w:useFELayout/>
-                    <w:compatSetting w:name="compatibilityMode" w:uri="http://schemas.microsoft.com/office/word" w:val="14"/>
-                    <w:compatSetting w:name="overrideTableStyleFontSizeAndJustification" w:uri="http://schemas.microsoft.com/office/word" w:val="1"/>
-                    <w:compatSetting w:name="enableOpenTypeFeatures" w:uri="http://schemas.microsoft.com/office/word" w:val="1"/>
-                    <w:compatSetting w:name="doNotFlipMirrorIndents" w:uri="http://schemas.microsoft.com/office/word" w:val="1"/>
-                </w:compat>
-                <w:rsids>
-                    <w:rsidRoot w:val="00097880"/>
-                    <w:rsid w:val="00032C9E"/>
-                    <w:rsid w:val="00040F2F"/>
-                    <w:rsid w:val="0006124A"/>
-                    <w:rsid w:val="00063B9B"/>
-                    <w:rsid w:val="00070B9E"/>
-                    <w:rsid w:val="00075B8D"/>
-                    <w:rsid w:val="0007685A"/>
-                    <w:rsid w:val="00097880"/>
-                    <w:rsid w:val="000D4AC3"/>
-                    <w:rsid w:val="000F4283"/>
-                    <w:rsid w:val="00110C92"/>
-                    <w:rsid w:val="00153753"/>
-                    <w:rsid w:val="00177009"/>
-                    <w:rsid w:val="00195A56"/>
-                    <w:rsid w:val="00226D45"/>
-                    <w:rsid w:val="0028721C"/>
-                    <w:rsid w:val="002B6566"/>
-                    <w:rsid w:val="00324193"/>
-                    <w:rsid w:val="003A479C"/>
-                    <w:rsid w:val="003B5EF6"/>
-                    <w:rsid w:val="003B7191"/>
-                    <w:rsid w:val="003D5A89"/>
-                    <w:rsid w:val="003D7262"/>
-                    <w:rsid w:val="00423EE5"/>
-                    <w:rsid w:val="00430FE2"/>
-                    <w:rsid w:val="00460051"/>
-                    <w:rsid w:val="00467132"/>
-                    <w:rsid w:val="00497D71"/>
-                    <w:rsid w:val="004B69E8"/>
-                    <w:rsid w:val="004E66B2"/>
-                    <w:rsid w:val="004F543C"/>
-                    <w:rsid w:val="00517A21"/>
-                    <w:rsid w:val="00574041"/>
-                    <w:rsid w:val="00576D0C"/>
-                    <w:rsid w:val="005C192C"/>
-                    <w:rsid w:val="005C592F"/>
-                    <w:rsid w:val="005D30EC"/>
-                    <w:rsid w:val="005E6C64"/>
-                    <w:rsid w:val="006256AF"/>
-                    <w:rsid w:val="0063380F"/>
-                    <w:rsid w:val="00681035"/>
-                    <w:rsid w:val="00692287"/>
-                    <w:rsid w:val="006C2185"/>
-                    <w:rsid w:val="00703B43"/>
-                    <w:rsid w:val="0071469F"/>
-                    <w:rsid w:val="007224D1"/>
-                    <w:rsid w:val="007253D9"/>
-                    <w:rsid w:val="00757B9C"/>
-                    <w:rsid w:val="00757E54"/>
-                    <w:rsid w:val="007760B2"/>
-                    <w:rsid w:val="00776F80"/>
-                    <w:rsid w:val="007B25AC"/>
-                    <w:rsid w:val="007B656F"/>
-                    <w:rsid w:val="007C044A"/>
-                    <w:rsid w:val="007C31D0"/>
-                    <w:rsid w:val="007C551B"/>
-                    <w:rsid w:val="007E01D1"/>
-                    <w:rsid w:val="008239B8"/>
-                    <w:rsid w:val="00852C57"/>
-                    <w:rsid w:val="00852E4F"/>
-                    <w:rsid w:val="0089447C"/>
-                    <w:rsid w:val="008E795C"/>
-                    <w:rsid w:val="0094646F"/>
-                    <w:rsid w:val="00950F33"/>
-                    <w:rsid w:val="00965B17"/>
-                    <w:rsid w:val="00974876"/>
-                    <w:rsid w:val="009804AF"/>
-                    <w:rsid w:val="00985EFB"/>
-                    <w:rsid w:val="009A14B0"/>
-                    <w:rsid w:val="009A1711"/>
-                    <w:rsid w:val="00A052CD"/>
-                    <w:rsid w:val="00A31E04"/>
-                    <w:rsid w:val="00A32E54"/>
-                    <w:rsid w:val="00A42ED9"/>
-                    <w:rsid w:val="00A74712"/>
-                    <w:rsid w:val="00A8194A"/>
-                    <w:rsid w:val="00A87B57"/>
-                    <w:rsid w:val="00A913BA"/>
-                    <w:rsid w:val="00A945C6"/>
-                    <w:rsid w:val="00AA358F"/>
-                    <w:rsid w:val="00AA630E"/>
-                    <w:rsid w:val="00AC5FB3"/>
-                    <w:rsid w:val="00AD27CB"/>
-                    <w:rsid w:val="00AF49C6"/>
-                    <w:rsid w:val="00B10706"/>
-                    <w:rsid w:val="00B262C2"/>
-                    <w:rsid w:val="00B46ADE"/>
-                    <w:rsid w:val="00B963C7"/>
-                    <w:rsid w:val="00BA4604"/>
-                    <w:rsid w:val="00BD30D2"/>
-                    <w:rsid w:val="00C00E2B"/>
-                    <w:rsid w:val="00C14CC9"/>
-                    <w:rsid w:val="00C40249"/>
-                    <w:rsid w:val="00C5483B"/>
-                    <w:rsid w:val="00C62FAC"/>
-                    <w:rsid w:val="00C66982"/>
-                    <w:rsid w:val="00C854BB"/>
-                    <w:rsid w:val="00CA2F5E"/>
-                    <w:rsid w:val="00D05D1D"/>
-                    <w:rsid w:val="00D21C3F"/>
-                    <w:rsid w:val="00D52CCC"/>
-                    <w:rsid w:val="00D9781C"/>
-                    <w:rsid w:val="00DB0CB3"/>
-                    <w:rsid w:val="00DE5559"/>
-                    <w:rsid w:val="00DF790F"/>
-                    <w:rsid w:val="00E20128"/>
-                    <w:rsid w:val="00E441A6"/>
-                    <w:rsid w:val="00E470C7"/>
-                    <w:rsid w:val="00E57B71"/>
-                    <w:rsid w:val="00E60449"/>
-                    <w:rsid w:val="00EA765B"/>
-                    <w:rsid w:val="00EB33B3"/>
-                    <w:rsid w:val="00EC5025"/>
-                    <w:rsid w:val="00EF1006"/>
-                    <w:rsid w:val="00F07FBD"/>
-                    <w:rsid w:val="00F17E43"/>
-                    <w:rsid w:val="00F24E78"/>
-                    <w:rsid w:val="00F325CF"/>
-                    <w:rsid w:val="00F44AF9"/>
-                    <w:rsid w:val="00FB74AE"/>
-                    <w:rsid w:val="00FC5A19"/>
-                    <w:rsid w:val="00FD0974"/>
-                    <w:rsid w:val="00FE31B1"/>
-                    <w:rsid w:val="00FF43E5"/>
-                </w:rsids>
-                <m:mathPr>
-                    <m:mathFont m:val="Cambria Math"/>
-                    <m:brkBin m:val="before"/>
-                    <m:brkBinSub m:val="--"/>
-                    <m:smallFrac m:val="0"/>
-                    <m:dispDef/>
-                    <m:lMargin m:val="0"/>
-                    <m:rMargin m:val="0"/>
-                    <m:defJc m:val="centerGroup"/>
-                    <m:wrapIndent m:val="1440"/>
-                    <m:intLim m:val="subSup"/>
-                    <m:naryLim m:val="undOvr"/>
-                </m:mathPr>
-                <w:themeFontLang w:val="en-US" w:eastAsia="zh-CN"/>
-                <w:clrSchemeMapping w:bg1="light1" w:t1="dark1" w:bg2="light2" w:t2="dark2" w:accent1="accent1" w:accent2="accent2" w:accent3="accent3" w:accent4="accent4" w:accent5="accent5" w:accent6="accent6" w:hyperlink="hyperlink" w:followedHyperlink="followedHyperlink"/>
-                <w:doNotIncludeSubdocsInStats/>
-                <w:doNotAutoCompressPictures/>
-                <w:shapeDefaults>
-                    <o:shapedefaults v:ext="edit" spidmax="2050"/>
-                    <o:shapelayout v:ext="edit">
-                        <o:idmap v:ext="edit" data="1"/>
-                    </o:shapelayout>
-                </w:shapeDefaults>
-                <w:decimalSymbol w:val="."/>
-                <w:listSeparator w:val=","/>
-                <w14:docId w14:val="1601E0DE"/>
-            </w:settings>
-        </pkg:xmlData>
-    </pkg:part>
-    <pkg:part pkg:name="/word/webSettings.xml" pkg:contentType="application/vnd.openxmlformats-officedocument.wordprocessingml.webSettings+xml">
-        <pkg:xmlData>
-            <w:webSettings mc:Ignorable="w14" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" xmlns:r="http://schemas.openxmlformats.org/officeDocument/2006/relationships" xmlns:w="http://schemas.openxmlformats.org/wordprocessingml/2006/main" xmlns:w14="http://schemas.microsoft.com/office/word/2010/wordml">
-                <w:optimizeForBrowser/>
-                <w:doNotSaveAsSingleFile/>
-            </w:webSettings>
-        </pkg:xmlData>
-    </pkg:part>
-    <pkg:part pkg:name="/word/stylesWithEffects.xml" pkg:contentType="application/vnd.ms-word.stylesWithEffects+xml">
-        <pkg:xmlData>
-            <w:styles mc:Ignorable="w14 wp14" xmlns:wpc="http://schemas.microsoft.com/office/word/2010/wordprocessingCanvas" xmlns:mo="http://schemas.microsoft.com/office/mac/office/2008/main" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" xmlns:mv="urn:schemas-microsoft-com:mac:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:r="http://schemas.openxmlformats.org/officeDocument/2006/relationships" xmlns:m="http://schemas.openxmlformats.org/officeDocument/2006/math" xmlns:v="urn:schemas-microsoft-com:vml" xmlns:wp14="http://schemas.microsoft.com/office/word/2010/wordprocessingDrawing" xmlns:wp="http://schemas.openxmlformats.org/drawingml/2006/wordprocessingDrawing" xmlns:w10="urn:schemas-microsoft-com:office:word" xmlns:w="http://schemas.openxmlformats.org/wordprocessingml/2006/main" xmlns:w14="http://schemas.microsoft.com/office/word/2010/wordml" xmlns:wpg="http://schemas.microsoft.com/office/word/2010/wordprocessingGroup" xmlns:wpi="http://schemas.microsoft.com/office/word/2010/wordprocessingInk" xmlns:wne="http://schemas.microsoft.com/office/word/2006/wordml" xmlns:wps="http://schemas.microsoft.com/office/word/2010/wordprocessingShape">
-                <w:docDefaults>
-                    <w:rPrDefault>
-                        <w:rPr>
-                            <w:rFonts w:ascii="Times New Roman" w:eastAsia="宋体" w:hAnsi="Times New Roman" w:cs="Times New Roman"/>
-                            <w:lang w:val="en-US" w:eastAsia="zh-CN" w:bidi="ar-SA"/>
-                        </w:rPr>
-                    </w:rPrDefault>
-                    <w:pPrDefault/>
-                </w:docDefaults>
-                <w:latentStyles w:defLockedState="0" w:defUIPriority="0" w:defSemiHidden="0" w:defUnhideWhenUsed="0" w:defQFormat="0" w:count="276">
-                    <w:lsdException w:name="Normal" w:qFormat="1"/>
-                    <w:lsdException w:name="heading 1" w:qFormat="1"/>
-                    <w:lsdException w:name="heading 2" w:semiHidden="1" w:unhideWhenUsed="1" w:qFormat="1"/>
-                    <w:lsdException w:name="heading 3" w:semiHidden="1" w:unhideWhenUsed="1" w:qFormat="1"/>
-                    <w:lsdException w:name="heading 4" w:semiHidden="1" w:unhideWhenUsed="1" w:qFormat="1"/>
-                    <w:lsdException w:name="heading 5" w:semiHidden="1" w:unhideWhenUsed="1" w:qFormat="1"/>
-                    <w:lsdException w:name="heading 6" w:semiHidden="1" w:unhideWhenUsed="1" w:qFormat="1"/>
-                    <w:lsdException w:name="heading 7" w:semiHidden="1" w:unhideWhenUsed="1" w:qFormat="1"/>
-                    <w:lsdException w:name="heading 8" w:semiHidden="1" w:unhideWhenUsed="1" w:qFormat="1"/>
-                    <w:lsdException w:name="heading 9" w:semiHidden="1" w:unhideWhenUsed="1" w:qFormat="1"/>
-                    <w:lsdException w:name="footer" w:uiPriority="99"/>
-                    <w:lsdException w:name="caption" w:semiHidden="1" w:unhideWhenUsed="1" w:qFormat="1"/>
-                    <w:lsdException w:name="Title" w:qFormat="1"/>
-                    <w:lsdException w:name="Subtitle" w:qFormat="1"/>
-                    <w:lsdException w:name="Strong" w:qFormat="1"/>
-                    <w:lsdException w:name="Emphasis" w:qFormat="1"/>
-                    <w:lsdException w:name="Placeholder Text" w:semiHidden="1" w:uiPriority="99"/>
-                    <w:lsdException w:name="No Spacing" w:uiPriority="1" w:qFormat="1"/>
-                    <w:lsdException w:name="Light Shading" w:uiPriority="60"/>
-                    <w:lsdException w:name="Light List" w:uiPriority="61"/>
-                    <w:lsdException w:name="Light Grid" w:uiPriority="62"/>
-                    <w:lsdException w:name="Medium Shading 1" w:uiPriority="63"/>
-                    <w:lsdException w:name="Medium Shading 2" w:uiPriority="64"/>
-                    <w:lsdException w:name="Medium List 1" w:uiPriority="65"/>
-                    <w:lsdException w:name="Medium List 2" w:uiPriority="66"/>
-                    <w:lsdException w:name="Medium Grid 1" w:uiPriority="67"/>
-                    <w:lsdException w:name="Medium Grid 2" w:uiPriority="68"/>
-                    <w:lsdException w:name="Medium Grid 3" w:uiPriority="69"/>
-                    <w:lsdException w:name="Dark List" w:uiPriority="70"/>
-                    <w:lsdException w:name="Colorful Shading" w:uiPriority="71"/>
-                    <w:lsdException w:name="Colorful List" w:uiPriority="72"/>
-                    <w:lsdException w:name="Colorful Grid" w:uiPriority="73"/>
-                    <w:lsdException w:name="Light Shading Accent 1" w:uiPriority="60"/>
-                    <w:lsdException w:name="Light List Accent 1" w:uiPriority="61"/>
-                    <w:lsdException w:name="Light Grid Accent 1" w:uiPriority="62"/>
-                    <w:lsdException w:name="Medium Shading 1 Accent 1" w:uiPriority="63"/>
-                    <w:lsdException w:name="Medium Shading 2 Accent 1" w:uiPriority="64"/>
-                    <w:lsdException w:name="Medium List 1 Accent 1" w:uiPriority="65"/>
-                    <w:lsdException w:name="Revision" w:semiHidden="1" w:uiPriority="99"/>
-                    <w:lsdException w:name="List Paragraph" w:uiPriority="34" w:qFormat="1"/>
-                    <w:lsdException w:name="Quote" w:uiPriority="29" w:qFormat="1"/>
-                    <w:lsdException w:name="Intense Quote" w:uiPriority="30" w:qFormat="1"/>
-                    <w:lsdException w:name="Medium List 2 Accent 1" w:uiPriority="66"/>
-                    <w:lsdException w:name="Medium Grid 1 Accent 1" w:uiPriority="67"/>
-                    <w:lsdException w:name="Medium Grid 2 Accent 1" w:uiPriority="68"/>
-                    <w:lsdException w:name="Medium Grid 3 Accent 1" w:uiPriority="69"/>
-                    <w:lsdException w:name="Dark List Accent 1" w:uiPriority="70"/>
-                    <w:lsdException w:name="Colorful Shading Accent 1" w:uiPriority="71"/>
-                    <w:lsdException w:name="Colorful List Accent 1" w:uiPriority="72"/>
-                    <w:lsdException w:name="Colorful Grid Accent 1" w:uiPriority="73"/>
-                    <w:lsdException w:name="Light Shading Accent 2" w:uiPriority="60"/>
-                    <w:lsdException w:name="Light List Accent 2" w:uiPriority="61"/>
-                    <w:lsdException w:name="Light Grid Accent 2" w:uiPriority="62"/>
-                    <w:lsdException w:name="Medium Shading 1 Accent 2" w:uiPriority="63"/>
-                    <w:lsdException w:name="Medium Shading 2 Accent 2" w:uiPriority="64"/>
-                    <w:lsdException w:name="Medium List 1 Accent 2" w:uiPriority="65"/>
-                    <w:lsdException w:name="Medium List 2 Accent 2" w:uiPriority="66"/>
-                    <w:lsdException w:name="Medium Grid 1 Accent 2" w:uiPriority="67"/>
-                    <w:lsdException w:name="Medium Grid 2 Accent 2" w:uiPriority="68"/>
-                    <w:lsdException w:name="Medium Grid 3 Accent 2" w:uiPriority="69"/>
-                    <w:lsdException w:name="Dark List Accent 2" w:uiPriority="70"/>
-                    <w:lsdException w:name="Colorful Shading Accent 2" w:uiPriority="71"/>
-                    <w:lsdException w:name="Colorful List Accent 2" w:uiPriority="72"/>
-                    <w:lsdException w:name="Colorful Grid Accent 2" w:uiPriority="73"/>
-                    <w:lsdException w:name="Light Shading Accent 3" w:uiPriority="60"/>
-                    <w:lsdException w:name="Light List Accent 3" w:uiPriority="61"/>
-                    <w:lsdException w:name="Light Grid Accent 3" w:uiPriority="62"/>
-                    <w:lsdException w:name="Medium Shading 1 Accent 3" w:uiPriority="63"/>
-                    <w:lsdException w:name="Medium Shading 2 Accent 3" w:uiPriority="64"/>
-                    <w:lsdException w:name="Medium List 1 Accent 3" w:uiPriority="65"/>
-                    <w:lsdException w:name="Medium List 2 Accent 3" w:uiPriority="66"/>
-                    <w:lsdException w:name="Medium Grid 1 Accent 3" w:uiPriority="67"/>
-                    <w:lsdException w:name="Medium Grid 2 Accent 3" w:uiPriority="68"/>
-                    <w:lsdException w:name="Medium Grid 3 Accent 3" w:uiPriority="69"/>
-                    <w:lsdException w:name="Dark List Accent 3" w:uiPriority="70"/>
-                    <w:lsdException w:name="Colorful Shading Accent 3" w:uiPriority="71"/>
-                    <w:lsdException w:name="Colorful List Accent 3" w:uiPriority="72"/>
-                    <w:lsdException w:name="Colorful Grid Accent 3" w:uiPriority="73"/>
-                    <w:lsdException w:name="Light Shading Accent 4" w:uiPriority="60"/>
-                    <w:lsdException w:name="Light List Accent 4" w:uiPriority="61"/>
-                    <w:lsdException w:name="Light Grid Accent 4" w:uiPriority="62"/>
-                    <w:lsdException w:name="Medium Shading 1 Accent 4" w:uiPriority="63"/>
-                    <w:lsdException w:name="Medium Shading 2 Accent 4" w:uiPriority="64"/>
-                    <w:lsdException w:name="Medium List 1 Accent 4" w:uiPriority="65"/>
-                    <w:lsdException w:name="Medium List 2 Accent 4" w:uiPriority="66"/>
-                    <w:lsdException w:name="Medium Grid 1 Accent 4" w:uiPriority="67"/>
-                    <w:lsdException w:name="Medium Grid 2 Accent 4" w:uiPriority="68"/>
-                    <w:lsdException w:name="Medium Grid 3 Accent 4" w:uiPriority="69"/>
-                    <w:lsdException w:name="Dark List Accent 4" w:uiPriority="70"/>
-                    <w:lsdException w:name="Colorful Shading Accent 4" w:uiPriority="71"/>
-                    <w:lsdException w:name="Colorful List Accent 4" w:uiPriority="72"/>
-                    <w:lsdException w:name="Colorful Grid Accent 4" w:uiPriority="73"/>
-                    <w:lsdException w:name="Light Shading Accent 5" w:uiPriority="60"/>
-                    <w:lsdException w:name="Light List Accent 5" w:uiPriority="61"/>
-                    <w:lsdException w:name="Light Grid Accent 5" w:uiPriority="62"/>
-                    <w:lsdException w:name="Medium Shading 1 Accent 5" w:uiPriority="63"/>
-                    <w:lsdException w:name="Medium Shading 2 Accent 5" w:uiPriority="64"/>
-                    <w:lsdException w:name="Medium List 1 Accent 5" w:uiPriority="65"/>
-                    <w:lsdException w:name="Medium List 2 Accent 5" w:uiPriority="66"/>
-                    <w:lsdException w:name="Medium Grid 1 Accent 5" w:uiPriority="67"/>
-                    <w:lsdException w:name="Medium Grid 2 Accent 5" w:uiPriority="68"/>
-                    <w:lsdException w:name="Medium Grid 3 Accent 5" w:uiPriority="69"/>
-                    <w:lsdException w:name="Dark List Accent 5" w:uiPriority="70"/>
-                    <w:lsdException w:name="Colorful Shading Accent 5" w:uiPriority="71"/>
-                    <w:lsdException w:name="Colorful List Accent 5" w:uiPriority="72"/>
-                    <w:lsdException w:name="Colorful Grid Accent 5" w:uiPriority="73"/>
-                    <w:lsdException w:name="Light Shading Accent 6" w:uiPriority="60"/>
-                    <w:lsdException w:name="Light List Accent 6" w:uiPriority="61"/>
-                    <w:lsdException w:name="Light Grid Accent 6" w:uiPriority="62"/>
-                    <w:lsdException w:name="Medium Shading 1 Accent 6" w:uiPriority="63"/>
-                    <w:lsdException w:name="Medium Shading 2 Accent 6" w:uiPriority="64"/>
-                    <w:lsdException w:name="Medium List 1 Accent 6" w:uiPriority="65"/>
-                    <w:lsdException w:name="Medium List 2 Accent 6" w:uiPriority="66"/>
-                    <w:lsdException w:name="Medium Grid 1 Accent 6" w:uiPriority="67"/>
-                    <w:lsdException w:name="Medium Grid 2 Accent 6" w:uiPriority="68"/>
-                    <w:lsdException w:name="Medium Grid 3 Accent 6" w:uiPriority="69"/>
-                    <w:lsdException w:name="Dark List Accent 6" w:uiPriority="70"/>
-                    <w:lsdException w:name="Colorful Shading Accent 6" w:uiPriority="71"/>
-                    <w:lsdException w:name="Colorful List Accent 6" w:uiPriority="72"/>
-                    <w:lsdException w:name="Colorful Grid Accent 6" w:uiPriority="73"/>
-                    <w:lsdException w:name="Subtle Emphasis" w:uiPriority="19" w:qFormat="1"/>
-                    <w:lsdException w:name="Intense Emphasis" w:uiPriority="21" w:qFormat="1"/>
-                    <w:lsdException w:name="Subtle Reference" w:uiPriority="31" w:qFormat="1"/>
-                    <w:lsdException w:name="Intense Reference" w:uiPriority="32" w:qFormat="1"/>
-                    <w:lsdException w:name="Book Title" w:uiPriority="33" w:qFormat="1"/>
-                    <w:lsdException w:name="Bibliography" w:semiHidden="1" w:uiPriority="37" w:unhideWhenUsed="1"/>
-                    <w:lsdException w:name="TOC Heading" w:semiHidden="1" w:uiPriority="39" w:unhideWhenUsed="1" w:qFormat="1"/>
-                </w:latentStyles>
-                <w:style w:type="paragraph" w:default="1" w:styleId="a">
-                    <w:name w:val="Normal"/>
-                    <w:qFormat/>
-                    <w:rsid w:val="00097880"/>
-                    <w:pPr>
-                        <w:widowControl w:val="0"/>
-                        <w:jc w:val="both"/>
-                    </w:pPr>
-                    <w:rPr>
-                        <w:kern w:val="2"/>
-                        <w:sz w:val="21"/>
-                        <w:szCs w:val="24"/>
-                    </w:rPr>
-                </w:style>
-                <w:style w:type="character" w:default="1" w:styleId="a0">
-                    <w:name w:val="Default Paragraph Font"/>
-                    <w:uiPriority w:val="1"/>
-                    <w:semiHidden/>
-                    <w:unhideWhenUsed/>
-                </w:style>
-                <w:style w:type="table" w:default="1" w:styleId="a1">
-                    <w:name w:val="Normal Table"/>
-                    <w:uiPriority w:val="99"/>
-                    <w:semiHidden/>
-                    <w:unhideWhenUsed/>
-                    <w:tblPr>
-                        <w:tblInd w:w="0" w:type="dxa"/>
-                        <w:tblCellMar>
-                            <w:top w:w="0" w:type="dxa"/>
-                            <w:left w:w="108" w:type="dxa"/>
-                            <w:bottom w:w="0" w:type="dxa"/>
-                            <w:right w:w="108" w:type="dxa"/>
-                        </w:tblCellMar>
-                    </w:tblPr>
-                </w:style>
-                <w:style w:type="numbering" w:default="1" w:styleId="a2">
-                    <w:name w:val="No List"/>
-                    <w:uiPriority w:val="99"/>
-                    <w:semiHidden/>
-                    <w:unhideWhenUsed/>
-                </w:style>
-                <w:style w:type="paragraph" w:styleId="a3">
-                    <w:name w:val="header"/>
-                    <w:basedOn w:val="a"/>
-                    <w:rsid w:val="00097880"/>
-                    <w:pPr>
-                        <w:pBdr>
-                            <w:bottom w:val="single" w:sz="6" w:space="1" w:color="auto"/>
-                        </w:pBdr>
-                        <w:tabs>
-                            <w:tab w:val="center" w:pos="4153"/>
-                            <w:tab w:val="right" w:pos="8306"/>
-                        </w:tabs>
-                        <w:snapToGrid w:val="0"/>
-                        <w:jc w:val="center"/>
-                    </w:pPr>
-                    <w:rPr>
-                        <w:sz w:val="18"/>
-                        <w:szCs w:val="18"/>
-                    </w:rPr>
-                </w:style>
-                <w:style w:type="paragraph" w:styleId="a4">
-                    <w:name w:val="footer"/>
-                    <w:basedOn w:val="a"/>
-                    <w:link w:val="a5"/>
-                    <w:uiPriority w:val="99"/>
-                    <w:rsid w:val="00097880"/>
-                    <w:pPr>
-                        <w:tabs>
-                            <w:tab w:val="center" w:pos="4153"/>
-                            <w:tab w:val="right" w:pos="8306"/>
-                        </w:tabs>
-                        <w:snapToGrid w:val="0"/>
-                        <w:jc w:val="left"/>
-                    </w:pPr>
-                    <w:rPr>
-                        <w:sz w:val="18"/>
-                        <w:szCs w:val="18"/>
-                    </w:rPr>
-                </w:style>
-                <w:style w:type="paragraph" w:styleId="a6">
-                    <w:name w:val="Plain Text"/>
-                    <w:basedOn w:val="a"/>
-                    <w:rsid w:val="00097880"/>
-                    <w:rPr>
-                        <w:rFonts w:ascii="宋体" w:hAnsi="Courier New" w:cs="Courier New"/>
-                        <w:szCs w:val="21"/>
-                    </w:rPr>
-                </w:style>
-                <w:style w:type="paragraph" w:customStyle="1" w:styleId="MSMincho">
-                    <w:name w:val="MS Mincho"/>
-                    <w:basedOn w:val="a"/>
-                    <w:rsid w:val="00097880"/>
-                    <w:rPr>
-                        <w:rFonts w:ascii="MS Mincho" w:eastAsia="MS Mincho" w:hAnsi="MS Mincho"/>
-                        <w:sz w:val="24"/>
-                    </w:rPr>
-                </w:style>
-                <w:style w:type="paragraph" w:customStyle="1" w:styleId="1">
-                    <w:name w:val="1"/>
-                    <w:basedOn w:val="a"/>
-                    <w:rsid w:val="00097880"/>
-                    <w:pPr>
-                        <w:widowControl/>
-                        <w:jc w:val="left"/>
-                    </w:pPr>
-                    <w:rPr>
-                        <w:noProof/>
-                        <w:kern w:val="0"/>
-                        <w:sz w:val="24"/>
-                        <w:lang w:eastAsia="de-DE"/>
-                    </w:rPr>
-                </w:style>
-                <w:style w:type="character" w:customStyle="1" w:styleId="a5">
-                    <w:name w:val="页脚字符"/>
-                    <w:basedOn w:val="a0"/>
-                    <w:link w:val="a4"/>
-                    <w:uiPriority w:val="99"/>
-                    <w:rsid w:val="00070B9E"/>
-                    <w:rPr>
-                        <w:kern w:val="2"/>
-                        <w:sz w:val="18"/>
-                        <w:szCs w:val="18"/>
-                    </w:rPr>
-                </w:style>
-            </w:styles>
-        </pkg:xmlData>
-    </pkg:part>
-    <pkg:part pkg:name="/word/fontTable.xml" pkg:contentType="application/vnd.openxmlformats-officedocument.wordprocessingml.fontTable+xml">
-        <pkg:xmlData>
-            <w:fonts mc:Ignorable="w14" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" xmlns:r="http://schemas.openxmlformats.org/officeDocument/2006/relationships" xmlns:w="http://schemas.openxmlformats.org/wordprocessingml/2006/main" xmlns:w14="http://schemas.microsoft.com/office/word/2010/wordml">
-                <w:font w:name="Times New Roman">
-                    <w:panose1 w:val="02020603050405020304"/>
-                    <w:charset w:val="00"/>
-                    <w:family w:val="auto"/>
-                    <w:pitch w:val="variable"/>
-                    <w:sig w:usb0="00000003" w:usb1="00000000" w:usb2="00000000" w:usb3="00000000" w:csb0="00000001" w:csb1="00000000"/>
-                </w:font>
-                <w:font w:name="宋体">
-                    <w:panose1 w:val="02010600030101010101"/>
-                    <w:charset w:val="50"/>
-                    <w:family w:val="auto"/>
-                    <w:pitch w:val="variable"/>
-                    <w:sig w:usb0="00000003" w:usb1="288F0000" w:usb2="00000016" w:usb3="00000000" w:csb0="00040001" w:csb1="00000000"/>
-                </w:font>
-                <w:font w:name="Courier New">
-                    <w:panose1 w:val="02070309020205020404"/>
-                    <w:charset w:val="00"/>
-                    <w:family w:val="auto"/>
-                    <w:pitch w:val="variable"/>
-                    <w:sig w:usb0="00000003" w:usb1="00000000" w:usb2="00000000" w:usb3="00000000" w:csb0="00000001" w:csb1="00000000"/>
-                </w:font>
-                <w:font w:name="MS Mincho">
-                    <w:altName w:val="MS 明朝"/>
-                    <w:charset w:val="80"/>
-                    <w:family w:val="modern"/>
-                    <w:pitch w:val="fixed"/>
-                    <w:sig w:usb0="E00002FF" w:usb1="6AC7FDFB" w:usb2="00000012" w:usb3="00000000" w:csb0="0002009F" w:csb1="00000000"/>
-                </w:font>
-                <w:font w:name="黑体">
-                    <w:panose1 w:val="02010609060101010101"/>
-                    <w:charset w:val="50"/>
-                    <w:family w:val="auto"/>
-                    <w:pitch w:val="variable"/>
-                    <w:sig w:usb0="800002BF" w:usb1="38CF7CFA" w:usb2="00000016" w:usb3="00000000" w:csb0="00040001" w:csb1="00000000"/>
-                </w:font>
-                <w:font w:name="Arial">
-                    <w:panose1 w:val="020B0604020202020204"/>
-                    <w:charset w:val="00"/>
-                    <w:family w:val="auto"/>
-                    <w:pitch w:val="variable"/>
-                    <w:sig w:usb0="00000003" w:usb1="00000000" w:usb2="00000000" w:usb3="00000000" w:csb0="00000001" w:csb1="00000000"/>
-                </w:font>
-                <w:font w:name="Cambria">
-                    <w:panose1 w:val="02040503050406030204"/>
-                    <w:charset w:val="00"/>
-                    <w:family w:val="auto"/>
-                    <w:pitch w:val="variable"/>
-                    <w:sig w:usb0="E00002FF" w:usb1="400004FF" w:usb2="00000000" w:usb3="00000000" w:csb0="0000019F" w:csb1="00000000"/>
-                </w:font>
-                <w:font w:name="Calibri">
-                    <w:panose1 w:val="020F0502020204030204"/>
-                    <w:charset w:val="00"/>
-                    <w:family w:val="auto"/>
-                    <w:pitch w:val="variable"/>
-                    <w:sig w:usb0="E10002FF" w:usb1="4000ACFF" w:usb2="00000009" w:usb3="00000000" w:csb0="0000019F" w:csb1="00000000"/>
-                </w:font>
-            </w:fonts>
-        </pkg:xmlData>
-    </pkg:part>
-    <pkg:part pkg:name="/docProps/core.xml" pkg:contentType="application/vnd.openxmlformats-package.core-properties+xml" pkg:padding="256">
-        <pkg:xmlData>
-            <cp:coreProperties xmlns:cp="http://schemas.openxmlformats.org/package/2006/metadata/core-properties" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:dcterms="http://purl.org/dc/terms/" xmlns:dcmitype="http://purl.org/dc/dcmitype/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
-                <dc:title>绝密★启用前</dc:title>
-                <dc:creator>QMTH</dc:creator>
-                <cp:lastModifiedBy>悦 宋</cp:lastModifiedBy>
-                <cp:revision>22</cp:revision>
-                <cp:lastPrinted>2010-11-01T11:38:00Z</cp:lastPrinted>
-                <dcterms:created xsi:type="dcterms:W3CDTF">2017-03-14T10:02:00Z</dcterms:created>
-                <dcterms:modified xsi:type="dcterms:W3CDTF">2017-04-21T10:31:00Z</dcterms:modified>
-            </cp:coreProperties>
-        </pkg:xmlData>
-    </pkg:part>
-    <pkg:part pkg:name="/word/styles.xml" pkg:contentType="application/vnd.openxmlformats-officedocument.wordprocessingml.styles+xml">
-        <pkg:xmlData>
-            <w:styles mc:Ignorable="w14" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" xmlns:r="http://schemas.openxmlformats.org/officeDocument/2006/relationships" xmlns:w="http://schemas.openxmlformats.org/wordprocessingml/2006/main" xmlns:w14="http://schemas.microsoft.com/office/word/2010/wordml">
-                <w:docDefaults>
-                    <w:rPrDefault>
-                        <w:rPr>
-                            <w:rFonts w:ascii="Times New Roman" w:eastAsia="宋体" w:hAnsi="Times New Roman" w:cs="Times New Roman"/>
-                            <w:lang w:val="en-US" w:eastAsia="zh-CN" w:bidi="ar-SA"/>
-                        </w:rPr>
-                    </w:rPrDefault>
-                    <w:pPrDefault/>
-                </w:docDefaults>
-                <w:latentStyles w:defLockedState="0" w:defUIPriority="0" w:defSemiHidden="0" w:defUnhideWhenUsed="0" w:defQFormat="0" w:count="276">
-                    <w:lsdException w:name="Normal" w:qFormat="1"/>
-                    <w:lsdException w:name="heading 1" w:qFormat="1"/>
-                    <w:lsdException w:name="heading 2" w:semiHidden="1" w:unhideWhenUsed="1" w:qFormat="1"/>
-                    <w:lsdException w:name="heading 3" w:semiHidden="1" w:unhideWhenUsed="1" w:qFormat="1"/>
-                    <w:lsdException w:name="heading 4" w:semiHidden="1" w:unhideWhenUsed="1" w:qFormat="1"/>
-                    <w:lsdException w:name="heading 5" w:semiHidden="1" w:unhideWhenUsed="1" w:qFormat="1"/>
-                    <w:lsdException w:name="heading 6" w:semiHidden="1" w:unhideWhenUsed="1" w:qFormat="1"/>
-                    <w:lsdException w:name="heading 7" w:semiHidden="1" w:unhideWhenUsed="1" w:qFormat="1"/>
-                    <w:lsdException w:name="heading 8" w:semiHidden="1" w:unhideWhenUsed="1" w:qFormat="1"/>
-                    <w:lsdException w:name="heading 9" w:semiHidden="1" w:unhideWhenUsed="1" w:qFormat="1"/>
-                    <w:lsdException w:name="footer" w:uiPriority="99"/>
-                    <w:lsdException w:name="caption" w:semiHidden="1" w:unhideWhenUsed="1" w:qFormat="1"/>
-                    <w:lsdException w:name="Title" w:qFormat="1"/>
-                    <w:lsdException w:name="Subtitle" w:qFormat="1"/>
-                    <w:lsdException w:name="Strong" w:qFormat="1"/>
-                    <w:lsdException w:name="Emphasis" w:qFormat="1"/>
-                    <w:lsdException w:name="Placeholder Text" w:semiHidden="1" w:uiPriority="99"/>
-                    <w:lsdException w:name="No Spacing" w:uiPriority="1" w:qFormat="1"/>
-                    <w:lsdException w:name="Light Shading" w:uiPriority="60"/>
-                    <w:lsdException w:name="Light List" w:uiPriority="61"/>
-                    <w:lsdException w:name="Light Grid" w:uiPriority="62"/>
-                    <w:lsdException w:name="Medium Shading 1" w:uiPriority="63"/>
-                    <w:lsdException w:name="Medium Shading 2" w:uiPriority="64"/>
-                    <w:lsdException w:name="Medium List 1" w:uiPriority="65"/>
-                    <w:lsdException w:name="Medium List 2" w:uiPriority="66"/>
-                    <w:lsdException w:name="Medium Grid 1" w:uiPriority="67"/>
-                    <w:lsdException w:name="Medium Grid 2" w:uiPriority="68"/>
-                    <w:lsdException w:name="Medium Grid 3" w:uiPriority="69"/>
-                    <w:lsdException w:name="Dark List" w:uiPriority="70"/>
-                    <w:lsdException w:name="Colorful Shading" w:uiPriority="71"/>
-                    <w:lsdException w:name="Colorful List" w:uiPriority="72"/>
-                    <w:lsdException w:name="Colorful Grid" w:uiPriority="73"/>
-                    <w:lsdException w:name="Light Shading Accent 1" w:uiPriority="60"/>
-                    <w:lsdException w:name="Light List Accent 1" w:uiPriority="61"/>
-                    <w:lsdException w:name="Light Grid Accent 1" w:uiPriority="62"/>
-                    <w:lsdException w:name="Medium Shading 1 Accent 1" w:uiPriority="63"/>
-                    <w:lsdException w:name="Medium Shading 2 Accent 1" w:uiPriority="64"/>
-                    <w:lsdException w:name="Medium List 1 Accent 1" w:uiPriority="65"/>
-                    <w:lsdException w:name="Revision" w:semiHidden="1" w:uiPriority="99"/>
-                    <w:lsdException w:name="List Paragraph" w:uiPriority="34" w:qFormat="1"/>
-                    <w:lsdException w:name="Quote" w:uiPriority="29" w:qFormat="1"/>
-                    <w:lsdException w:name="Intense Quote" w:uiPriority="30" w:qFormat="1"/>
-                    <w:lsdException w:name="Medium List 2 Accent 1" w:uiPriority="66"/>
-                    <w:lsdException w:name="Medium Grid 1 Accent 1" w:uiPriority="67"/>
-                    <w:lsdException w:name="Medium Grid 2 Accent 1" w:uiPriority="68"/>
-                    <w:lsdException w:name="Medium Grid 3 Accent 1" w:uiPriority="69"/>
-                    <w:lsdException w:name="Dark List Accent 1" w:uiPriority="70"/>
-                    <w:lsdException w:name="Colorful Shading Accent 1" w:uiPriority="71"/>
-                    <w:lsdException w:name="Colorful List Accent 1" w:uiPriority="72"/>
-                    <w:lsdException w:name="Colorful Grid Accent 1" w:uiPriority="73"/>
-                    <w:lsdException w:name="Light Shading Accent 2" w:uiPriority="60"/>
-                    <w:lsdException w:name="Light List Accent 2" w:uiPriority="61"/>
-                    <w:lsdException w:name="Light Grid Accent 2" w:uiPriority="62"/>
-                    <w:lsdException w:name="Medium Shading 1 Accent 2" w:uiPriority="63"/>
-                    <w:lsdException w:name="Medium Shading 2 Accent 2" w:uiPriority="64"/>
-                    <w:lsdException w:name="Medium List 1 Accent 2" w:uiPriority="65"/>
-                    <w:lsdException w:name="Medium List 2 Accent 2" w:uiPriority="66"/>
-                    <w:lsdException w:name="Medium Grid 1 Accent 2" w:uiPriority="67"/>
-                    <w:lsdException w:name="Medium Grid 2 Accent 2" w:uiPriority="68"/>
-                    <w:lsdException w:name="Medium Grid 3 Accent 2" w:uiPriority="69"/>
-                    <w:lsdException w:name="Dark List Accent 2" w:uiPriority="70"/>
-                    <w:lsdException w:name="Colorful Shading Accent 2" w:uiPriority="71"/>
-                    <w:lsdException w:name="Colorful List Accent 2" w:uiPriority="72"/>
-                    <w:lsdException w:name="Colorful Grid Accent 2" w:uiPriority="73"/>
-                    <w:lsdException w:name="Light Shading Accent 3" w:uiPriority="60"/>
-                    <w:lsdException w:name="Light List Accent 3" w:uiPriority="61"/>
-                    <w:lsdException w:name="Light Grid Accent 3" w:uiPriority="62"/>
-                    <w:lsdException w:name="Medium Shading 1 Accent 3" w:uiPriority="63"/>
-                    <w:lsdException w:name="Medium Shading 2 Accent 3" w:uiPriority="64"/>
-                    <w:lsdException w:name="Medium List 1 Accent 3" w:uiPriority="65"/>
-                    <w:lsdException w:name="Medium List 2 Accent 3" w:uiPriority="66"/>
-                    <w:lsdException w:name="Medium Grid 1 Accent 3" w:uiPriority="67"/>
-                    <w:lsdException w:name="Medium Grid 2 Accent 3" w:uiPriority="68"/>
-                    <w:lsdException w:name="Medium Grid 3 Accent 3" w:uiPriority="69"/>
-                    <w:lsdException w:name="Dark List Accent 3" w:uiPriority="70"/>
-                    <w:lsdException w:name="Colorful Shading Accent 3" w:uiPriority="71"/>
-                    <w:lsdException w:name="Colorful List Accent 3" w:uiPriority="72"/>
-                    <w:lsdException w:name="Colorful Grid Accent 3" w:uiPriority="73"/>
-                    <w:lsdException w:name="Light Shading Accent 4" w:uiPriority="60"/>
-                    <w:lsdException w:name="Light List Accent 4" w:uiPriority="61"/>
-                    <w:lsdException w:name="Light Grid Accent 4" w:uiPriority="62"/>
-                    <w:lsdException w:name="Medium Shading 1 Accent 4" w:uiPriority="63"/>
-                    <w:lsdException w:name="Medium Shading 2 Accent 4" w:uiPriority="64"/>
-                    <w:lsdException w:name="Medium List 1 Accent 4" w:uiPriority="65"/>
-                    <w:lsdException w:name="Medium List 2 Accent 4" w:uiPriority="66"/>
-                    <w:lsdException w:name="Medium Grid 1 Accent 4" w:uiPriority="67"/>
-                    <w:lsdException w:name="Medium Grid 2 Accent 4" w:uiPriority="68"/>
-                    <w:lsdException w:name="Medium Grid 3 Accent 4" w:uiPriority="69"/>
-                    <w:lsdException w:name="Dark List Accent 4" w:uiPriority="70"/>
-                    <w:lsdException w:name="Colorful Shading Accent 4" w:uiPriority="71"/>
-                    <w:lsdException w:name="Colorful List Accent 4" w:uiPriority="72"/>
-                    <w:lsdException w:name="Colorful Grid Accent 4" w:uiPriority="73"/>
-                    <w:lsdException w:name="Light Shading Accent 5" w:uiPriority="60"/>
-                    <w:lsdException w:name="Light List Accent 5" w:uiPriority="61"/>
-                    <w:lsdException w:name="Light Grid Accent 5" w:uiPriority="62"/>
-                    <w:lsdException w:name="Medium Shading 1 Accent 5" w:uiPriority="63"/>
-                    <w:lsdException w:name="Medium Shading 2 Accent 5" w:uiPriority="64"/>
-                    <w:lsdException w:name="Medium List 1 Accent 5" w:uiPriority="65"/>
-                    <w:lsdException w:name="Medium List 2 Accent 5" w:uiPriority="66"/>
-                    <w:lsdException w:name="Medium Grid 1 Accent 5" w:uiPriority="67"/>
-                    <w:lsdException w:name="Medium Grid 2 Accent 5" w:uiPriority="68"/>
-                    <w:lsdException w:name="Medium Grid 3 Accent 5" w:uiPriority="69"/>
-                    <w:lsdException w:name="Dark List Accent 5" w:uiPriority="70"/>
-                    <w:lsdException w:name="Colorful Shading Accent 5" w:uiPriority="71"/>
-                    <w:lsdException w:name="Colorful List Accent 5" w:uiPriority="72"/>
-                    <w:lsdException w:name="Colorful Grid Accent 5" w:uiPriority="73"/>
-                    <w:lsdException w:name="Light Shading Accent 6" w:uiPriority="60"/>
-                    <w:lsdException w:name="Light List Accent 6" w:uiPriority="61"/>
-                    <w:lsdException w:name="Light Grid Accent 6" w:uiPriority="62"/>
-                    <w:lsdException w:name="Medium Shading 1 Accent 6" w:uiPriority="63"/>
-                    <w:lsdException w:name="Medium Shading 2 Accent 6" w:uiPriority="64"/>
-                    <w:lsdException w:name="Medium List 1 Accent 6" w:uiPriority="65"/>
-                    <w:lsdException w:name="Medium List 2 Accent 6" w:uiPriority="66"/>
-                    <w:lsdException w:name="Medium Grid 1 Accent 6" w:uiPriority="67"/>
-                    <w:lsdException w:name="Medium Grid 2 Accent 6" w:uiPriority="68"/>
-                    <w:lsdException w:name="Medium Grid 3 Accent 6" w:uiPriority="69"/>
-                    <w:lsdException w:name="Dark List Accent 6" w:uiPriority="70"/>
-                    <w:lsdException w:name="Colorful Shading Accent 6" w:uiPriority="71"/>
-                    <w:lsdException w:name="Colorful List Accent 6" w:uiPriority="72"/>
-                    <w:lsdException w:name="Colorful Grid Accent 6" w:uiPriority="73"/>
-                    <w:lsdException w:name="Subtle Emphasis" w:uiPriority="19" w:qFormat="1"/>
-                    <w:lsdException w:name="Intense Emphasis" w:uiPriority="21" w:qFormat="1"/>
-                    <w:lsdException w:name="Subtle Reference" w:uiPriority="31" w:qFormat="1"/>
-                    <w:lsdException w:name="Intense Reference" w:uiPriority="32" w:qFormat="1"/>
-                    <w:lsdException w:name="Book Title" w:uiPriority="33" w:qFormat="1"/>
-                    <w:lsdException w:name="Bibliography" w:semiHidden="1" w:uiPriority="37" w:unhideWhenUsed="1"/>
-                    <w:lsdException w:name="TOC Heading" w:semiHidden="1" w:uiPriority="39" w:unhideWhenUsed="1" w:qFormat="1"/>
-                </w:latentStyles>
-                <w:style w:type="paragraph" w:default="1" w:styleId="a">
-                    <w:name w:val="Normal"/>
-                    <w:qFormat/>
-                    <w:rsid w:val="00097880"/>
-                    <w:pPr>
-                        <w:widowControl w:val="0"/>
-                        <w:jc w:val="both"/>
-                    </w:pPr>
-                    <w:rPr>
-                        <w:kern w:val="2"/>
-                        <w:sz w:val="21"/>
-                        <w:szCs w:val="24"/>
-                    </w:rPr>
-                </w:style>
-                <w:style w:type="character" w:default="1" w:styleId="a0">
-                    <w:name w:val="Default Paragraph Font"/>
-                    <w:uiPriority w:val="1"/>
-                    <w:semiHidden/>
-                    <w:unhideWhenUsed/>
-                </w:style>
-                <w:style w:type="table" w:default="1" w:styleId="a1">
-                    <w:name w:val="Normal Table"/>
-                    <w:uiPriority w:val="99"/>
-                    <w:semiHidden/>
-                    <w:unhideWhenUsed/>
-                    <w:tblPr>
-                        <w:tblInd w:w="0" w:type="dxa"/>
-                        <w:tblCellMar>
-                            <w:top w:w="0" w:type="dxa"/>
-                            <w:left w:w="108" w:type="dxa"/>
-                            <w:bottom w:w="0" w:type="dxa"/>
-                            <w:right w:w="108" w:type="dxa"/>
-                        </w:tblCellMar>
-                    </w:tblPr>
-                </w:style>
-                <w:style w:type="numbering" w:default="1" w:styleId="a2">
-                    <w:name w:val="No List"/>
-                    <w:uiPriority w:val="99"/>
-                    <w:semiHidden/>
-                    <w:unhideWhenUsed/>
-                </w:style>
-                <w:style w:type="paragraph" w:styleId="a3">
-                    <w:name w:val="header"/>
-                    <w:basedOn w:val="a"/>
-                    <w:rsid w:val="00097880"/>
-                    <w:pPr>
-                        <w:pBdr>
-                            <w:bottom w:val="single" w:sz="6" w:space="1" w:color="auto"/>
-                        </w:pBdr>
-                        <w:tabs>
-                            <w:tab w:val="center" w:pos="4153"/>
-                            <w:tab w:val="right" w:pos="8306"/>
-                        </w:tabs>
-                        <w:snapToGrid w:val="0"/>
-                        <w:jc w:val="center"/>
-                    </w:pPr>
-                    <w:rPr>
-                        <w:sz w:val="18"/>
-                        <w:szCs w:val="18"/>
-                    </w:rPr>
-                </w:style>
-                <w:style w:type="paragraph" w:styleId="a4">
-                    <w:name w:val="footer"/>
-                    <w:basedOn w:val="a"/>
-                    <w:link w:val="a5"/>
-                    <w:uiPriority w:val="99"/>
-                    <w:rsid w:val="00097880"/>
-                    <w:pPr>
-                        <w:tabs>
-                            <w:tab w:val="center" w:pos="4153"/>
-                            <w:tab w:val="right" w:pos="8306"/>
-                        </w:tabs>
-                        <w:snapToGrid w:val="0"/>
-                        <w:jc w:val="left"/>
-                    </w:pPr>
-                    <w:rPr>
-                        <w:sz w:val="18"/>
-                        <w:szCs w:val="18"/>
-                    </w:rPr>
-                </w:style>
-                <w:style w:type="paragraph" w:styleId="a6">
-                    <w:name w:val="Plain Text"/>
-                    <w:basedOn w:val="a"/>
-                    <w:rsid w:val="00097880"/>
-                    <w:rPr>
-                        <w:rFonts w:ascii="宋体" w:hAnsi="Courier New" w:cs="Courier New"/>
-                        <w:szCs w:val="21"/>
-                    </w:rPr>
-                </w:style>
-                <w:style w:type="paragraph" w:customStyle="1" w:styleId="MSMincho">
-                    <w:name w:val="MS Mincho"/>
-                    <w:basedOn w:val="a"/>
-                    <w:rsid w:val="00097880"/>
-                    <w:rPr>
-                        <w:rFonts w:ascii="MS Mincho" w:eastAsia="MS Mincho" w:hAnsi="MS Mincho"/>
-                        <w:sz w:val="24"/>
-                    </w:rPr>
-                </w:style>
-                <w:style w:type="paragraph" w:customStyle="1" w:styleId="1">
-                    <w:name w:val="1"/>
-                    <w:basedOn w:val="a"/>
-                    <w:rsid w:val="00097880"/>
-                    <w:pPr>
-                        <w:widowControl/>
-                        <w:jc w:val="left"/>
-                    </w:pPr>
-                    <w:rPr>
-                        <w:noProof/>
-                        <w:kern w:val="0"/>
-                        <w:sz w:val="24"/>
-                        <w:lang w:eastAsia="de-DE"/>
-                    </w:rPr>
-                </w:style>
-                <w:style w:type="character" w:customStyle="1" w:styleId="a5">
-                    <w:name w:val="页脚字符"/>
-                    <w:basedOn w:val="a0"/>
-                    <w:link w:val="a4"/>
-                    <w:uiPriority w:val="99"/>
-                    <w:rsid w:val="00070B9E"/>
-                    <w:rPr>
-                        <w:kern w:val="2"/>
-                        <w:sz w:val="18"/>
-                        <w:szCs w:val="18"/>
-                    </w:rPr>
-                </w:style>
-            </w:styles>
-        </pkg:xmlData>
-    </pkg:part>
-    <pkg:part pkg:name="/docProps/app.xml" pkg:contentType="application/vnd.openxmlformats-officedocument.extended-properties+xml" pkg:padding="256">
-        <pkg:xmlData>
-            <Properties xmlns="http://schemas.openxmlformats.org/officeDocument/2006/extended-properties" xmlns:vt="http://schemas.openxmlformats.org/officeDocument/2006/docPropsVTypes">
-                <Template>Normal.dotm</Template>
-                <TotalTime>11</TotalTime>
-                <Pages>1</Pages>
-                <Words>17</Words>
-                <Characters>102</Characters>
-                <Application>Microsoft Macintosh Word</Application>
-                <DocSecurity>0</DocSecurity>
-                <Lines>1</Lines>
-                <Paragraphs>1</Paragraphs>
-                <ScaleCrop>false</ScaleCrop>
-                <Company>Lenovo (Beijing) Limited</Company>
-                <LinksUpToDate>false</LinksUpToDate>
-            <CharactersWithSpaces>118</CharactersWithSpaces>
-            <SharedDoc>false</SharedDoc>
-            <HyperlinksChanged>false</HyperlinksChanged>
-            <AppVersion>14.0000</AppVersion>
-        </Properties>
-    </pkg:xmlData>
-</pkg:part>
-</pkg:package>
+<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
+<?mso-application progid="Word.Document"?>
+<pkg:package xmlns:pkg="http://schemas.microsoft.com/office/2006/xmlPackage">
+    <pkg:part pkg:name="/_rels/.rels" pkg:contentType="application/vnd.openxmlformats-package.relationships+xml" pkg:padding="512">
+        <pkg:xmlData>
+            <Relationships xmlns="http://schemas.openxmlformats.org/package/2006/relationships">
+                <Relationship Id="rId1" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/officeDocument" Target="word/document.xml"/>
+                <Relationship Id="rId2" Type="http://schemas.openxmlformats.org/package/2006/relationships/metadata/core-properties" Target="docProps/core.xml"/>
+                <Relationship Id="rId3" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/extended-properties" Target="docProps/app.xml"/>
+            </Relationships>
+        </pkg:xmlData>
+    </pkg:part>
+    <pkg:part pkg:name="/word/_rels/document.xml.rels" pkg:contentType="application/vnd.openxmlformats-package.relationships+xml" pkg:padding="256">
+        <pkg:xmlData>
+            <Relationships xmlns="http://schemas.openxmlformats.org/package/2006/relationships">
+                <Relationship Id="rId3" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/settings" Target="settings.xml"/>
+                <Relationship Id="rId4" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/webSettings" Target="webSettings.xml"/>
+                <Relationship Id="rId5" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/footnotes" Target="footnotes.xml"/>
+                <Relationship Id="rId6" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/endnotes" Target="endnotes.xml"/>
+                <Relationship Id="rId7" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/header" Target="header1.xml"/>
+                <Relationship Id="rId8" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/footer" Target="footer1.xml"/>
+                <Relationship Id="rId9" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/fontTable" Target="fontTable.xml"/>
+                <Relationship Id="rId10" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/theme" Target="theme/theme1.xml"/>
+                <Relationship Id="rId1" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/styles" Target="styles.xml"/>
+                <Relationship Id="rId2" Type="http://schemas.microsoft.com/office/2007/relationships/stylesWithEffects" Target="stylesWithEffects.xml"/>
+            </Relationships>
+        </pkg:xmlData>
+    </pkg:part>
+    <pkg:part pkg:name="/word/document.xml" pkg:contentType="application/vnd.openxmlformats-officedocument.wordprocessingml.document.main+xml">
+        <pkg:xmlData>
+            <w:document mc:Ignorable="w14 wp14" xmlns:wpc="http://schemas.microsoft.com/office/word/2010/wordprocessingCanvas" xmlns:mo="http://schemas.microsoft.com/office/mac/office/2008/main" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" xmlns:mv="urn:schemas-microsoft-com:mac:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:r="http://schemas.openxmlformats.org/officeDocument/2006/relationships" xmlns:m="http://schemas.openxmlformats.org/officeDocument/2006/math" xmlns:v="urn:schemas-microsoft-com:vml" xmlns:wp14="http://schemas.microsoft.com/office/word/2010/wordprocessingDrawing" xmlns:wp="http://schemas.openxmlformats.org/drawingml/2006/wordprocessingDrawing" xmlns:w10="urn:schemas-microsoft-com:office:word" xmlns:w="http://schemas.openxmlformats.org/wordprocessingml/2006/main" xmlns:w14="http://schemas.microsoft.com/office/word/2010/wordml" xmlns:wpg="http://schemas.microsoft.com/office/word/2010/wordprocessingGroup" xmlns:wpi="http://schemas.microsoft.com/office/word/2010/wordprocessingInk" xmlns:wne="http://schemas.microsoft.com/office/word/2006/wordml" xmlns:wps="http://schemas.microsoft.com/office/word/2010/wordprocessingShape">
+                <w:body>
+                    <w:p w14:paraId="3A033879" w14:textId="6D153FE6" w:rsidR="00097880" w:rsidRPr="00974876" w:rsidRDefault="00F24E78" w:rsidP="00974876">
+                        <w:pPr>
+                            <w:spacing w:beforeLines="50" w:before="217"/>
+                            <w:jc w:val="center"/>
+                            <w:rPr>
+                                <w:rFonts w:ascii="黑体" w:eastAsia="黑体" w:hAnsi="黑体" w:hint="eastAsia"/>
+                                <w:b/>
+                                <w:sz w:val="52"/>
+                                <w:szCs w:val="44"/>
+                            </w:rPr>
+                        </w:pPr>
+                        <w:r w:rsidRPr="00974876">
+                            <w:rPr>
+                                <w:rFonts w:ascii="黑体" w:eastAsia="黑体" w:hAnsi="黑体" w:hint="eastAsia"/>
+                                <w:b/>
+                                <w:sz w:val="52"/>
+                                <w:szCs w:val="44"/>
+                            </w:rPr>
+                            <w:t>${title}</w:t>
+                        </w:r>
+                    </w:p>
+                    <w:p w14:paraId="59CB5E42" w14:textId="367D1B47" w:rsidR="00974876" w:rsidRPr="00974876" w:rsidRDefault="00974876" w:rsidP="00974876">
+                        <w:pPr>
+                            <w:spacing w:beforeLines="50" w:before="217"/>
+                            <w:jc w:val="center"/>
+                            <w:rPr>
+                                <w:rFonts w:ascii="黑体" w:eastAsia="黑体" w:hAnsi="黑体" w:hint="eastAsia"/>
+                                <w:b/>
+                                <w:sz w:val="28"/>
+                                <w:szCs w:val="44"/>
+                            </w:rPr>
+                        </w:pPr>
+                        <w:r w:rsidRPr="00974876">
+                            <w:rPr>
+                                <w:rFonts w:ascii="黑体" w:eastAsia="黑体" w:hAnsi="黑体" w:hint="eastAsia"/>
+                                <w:b/>
+                                <w:sz w:val="28"/>
+                                <w:szCs w:val="44"/>
+                            </w:rPr>
+                            <w:t>${subTitle}</w:t>
+                        </w:r>
+                    </w:p>
+                    <w:p w14:paraId="012E5706" w14:textId="2384D476" w:rsidR="005E6C64" w:rsidRPr="00974876" w:rsidRDefault="00974876" w:rsidP="00974876">
+                        <w:pPr>
+                            <w:spacing w:beforeLines="50" w:before="217" w:afterLines="50" w:after="217"/>
+                            <w:jc w:val="center"/>
+                            <w:rPr>
+                                <w:rFonts w:ascii="黑体" w:eastAsia="黑体" w:hAnsi="黑体" w:hint="eastAsia"/>
+                                <w:bCs/>
+                                <w:sz w:val="28"/>
+                                <w:szCs w:val="28"/>
+                            </w:rPr>
+                        </w:pPr>
+                        <w:r w:rsidRPr="00974876">
+                            <w:rPr>
+                                <w:rFonts w:ascii="黑体" w:eastAsia="黑体" w:hAnsi="黑体" w:hint="eastAsia"/>
+                                <w:bCs/>
+                                <w:sz w:val="28"/>
+                                <w:szCs w:val="28"/>
+                            </w:rPr>
+                            <w:t>《</w:t>
+                        </w:r>
+                        <w:r w:rsidR="00F24E78" w:rsidRPr="00974876">
+                            <w:rPr>
+                                <w:rFonts w:ascii="黑体" w:eastAsia="黑体" w:hAnsi="黑体" w:hint="eastAsia"/>
+                                <w:bCs/>
+                                <w:sz w:val="28"/>
+                                <w:szCs w:val="28"/>
+                            </w:rPr>
+                            <w:t>${courseName}</w:t>
+                        </w:r>
+                        <w:r w:rsidRPr="00974876">
+                            <w:rPr>
+                                <w:rFonts w:ascii="黑体" w:eastAsia="黑体" w:hAnsi="黑体" w:hint="eastAsia"/>
+                                <w:bCs/>
+                                <w:sz w:val="28"/>
+                                <w:szCs w:val="28"/>
+                            </w:rPr>
+                            <w:t>》</w:t>
+                        </w:r>
+                    </w:p>
+                    <!--循环大题-->
+                    <#if paperDetails?exists>
+                    <#list paperDetails as paperDetail>
+                    <w:p w14:paraId="69CD38D9" w14:textId="04C0CD44" w:rsidR="00097880" w:rsidRDefault="00C62FAC" w:rsidP="00430FE2">
+                        <w:pPr>
+                            <w:adjustRightInd w:val="0"/>
+                            <w:snapToGrid w:val="0"/>
+                            <w:spacing w:beforeLines="30" w:before="130" w:line="320" w:lineRule="exact"/>
+                            <w:rPr>
+                                <w:color w:val="000000"/>
+                                <w:szCs w:val="21"/>
+                            </w:rPr>
+                        </w:pPr>
+                        <w:r>
+                            <w:rPr>
+                                <w:rFonts w:hint="eastAsia"/>
+                                <w:color w:val="000000"/>
+                                <w:szCs w:val="21"/>
+                            </w:rPr>
+                            <w:t>${paperDetail.cnNum}</w:t>
+                        </w:r>
+                        <w:r w:rsidR="00574041" w:rsidRPr="00574041">
+                            <w:rPr>
+                                <w:rFonts w:hint="eastAsia"/>
+                                <w:color w:val="000000"/>
+                                <w:szCs w:val="21"/>
+                            </w:rPr>
+                            <w:t>.</w:t>
+                        </w:r>
+                        <w:r w:rsidR="00EC5025">
+                            <w:rPr>
+                                <w:rFonts w:hint="eastAsia"/>
+                                <w:color w:val="000000"/>
+                                <w:szCs w:val="21"/>
+                            </w:rPr>
+                            <w:t>${paperDetail.name}</w:t>
+                        </w:r>
+                        <w:r w:rsidR="009804AF">
+                            <w:rPr>
+                                <w:rFonts w:hint="eastAsia"/>
+                                <w:color w:val="000000"/>
+                                <w:szCs w:val="21"/>
+                            </w:rPr>
+                            <w:t>(</w:t>
+                        </w:r>
+                        <w:r w:rsidR="00974876">
+                            <w:rPr>
+                                <w:rFonts w:hint="eastAsia"/>
+                                <w:color w:val="000000"/>
+                                <w:szCs w:val="21"/>
+                            </w:rPr>
+                            <w:t>${paperDetail.title}</w:t>
+                        </w:r>
+                        <w:r w:rsidR="009804AF">
+                            <w:rPr>
+                                <w:rFonts w:hint="eastAsia"/>
+                                <w:color w:val="000000"/>
+                                <w:szCs w:val="21"/>
+                            </w:rPr>
+                            <w:t>)</w:t>
+                        </w:r>
+                    </w:p>
+                    <w:p w14:paraId="58E61D59" w14:textId="77777777" w:rsidR="00A8194A" w:rsidRDefault="00A8194A" w:rsidP="00430FE2">
+                        <w:pPr>
+                            <w:adjustRightInd w:val="0"/>
+                            <w:snapToGrid w:val="0"/>
+                            <w:spacing w:beforeLines="30" w:before="130" w:line="320" w:lineRule="exact"/>
+                            <w:rPr>
+                                <w:color w:val="000000"/>
+                                <w:szCs w:val="21"/>
+                            </w:rPr>
+                        </w:pPr>
+                    </w:p>
+                    <!--循环小题-->
+                    <#if paperDetail.paperDetailUnits?exists>
+                    <#list paperDetail.paperDetailUnits as paperDetailUnit>
+
+                        ${paperDetailUnit.question.quesBodyWord}
+
+                    <#if paperDetailUnit.question.subQuestions?exists>
+                    <#list paperDetailUnit.question.subQuestions as subQuestion>
+
+                        ${subQuestion.quesBodyWord}
+
+                        <#if subQuestion.quesOptions?exists>
+                        <#list subQuestion.quesOptions as subQuesOption>
+                            ${subQuesOption.optionBodyWord}
+                        </#list>
+                        </#if>
+                        <!-- 
+	                        <#if subQuestion.quesAnswerWord??>
+	                            ${subQuestion.quesAnswerWord}
+	                        </#if>
+                        -->
+                    </#list>
+                    </#if>
+
+                    <#if paperDetailUnit.question.quesOptions?exists>
+                    <#list paperDetailUnit.question.quesOptions as quesOption>
+                        ${quesOption.optionBodyWord}
+                     </#list>
+                    </#if>
+                    	<!-- 
+                    		<#if paperDetailUnit.question.quesAnswerWord??>
+                            	${paperDetailUnit.question.quesAnswerWord}
+                        	</#if>
+                    	-->
+                    <w:p w14:paraId="15CFB5D6" w14:textId="77777777" w:rsidR="003D5A89" w:rsidRDefault="003D5A89" w:rsidP="00757E54">
+                        <w:pPr>
+                            <w:adjustRightInd w:val="0"/>
+                            <w:snapToGrid w:val="0"/>
+                            <w:spacing w:line="320" w:lineRule="exact"/>
+                            <w:rPr>
+                                <w:color w:val="000000"/>
+                                <w:szCs w:val="21"/>
+                            </w:rPr>
+                        </w:pPr>
+                    </w:p>
+                    <w:p w14:paraId="5C7F80BF" w14:textId="77777777" w:rsidR="003D5A89" w:rsidRDefault="003D5A89" w:rsidP="00757E54">
+                        <w:pPr>
+                            <w:adjustRightInd w:val="0"/>
+                            <w:snapToGrid w:val="0"/>
+                            <w:spacing w:line="320" w:lineRule="exact"/>
+                            <w:rPr>
+                                <w:color w:val="000000"/>
+                                <w:szCs w:val="21"/>
+                            </w:rPr>
+                        </w:pPr>
+                    </w:p>
+                    </#list>
+                    </#if>
+                    </#list>
+                    </#if>
+                    <w:sectPr w:rsidR="003D5A89" w:rsidSect="00FF43E5">
+                        <w:headerReference w:type="default" r:id="rId7"/>
+                        <w:footerReference w:type="default" r:id="rId8"/>
+                        <w:pgSz w:w="16840" w:h="23820" w:code="9"/>
+                        <w:pgMar w:top="2098" w:right="1814" w:bottom="2098" w:left="1814" w:header="851" w:footer="1814" w:gutter="0"/>
+                        <w:cols w:space="425"/>
+                        <w:docGrid w:type="lines" w:linePitch="435"/>
+                    </w:sectPr>
+                </w:body>
+            </w:document>
+        </pkg:xmlData>
+    </pkg:part>
+    <pkg:part pkg:name="/word/footnotes.xml" pkg:contentType="application/vnd.openxmlformats-officedocument.wordprocessingml.footnotes+xml">
+        <pkg:xmlData>
+            <w:footnotes mc:Ignorable="w14 wp14" xmlns:wpc="http://schemas.microsoft.com/office/word/2010/wordprocessingCanvas" xmlns:mo="http://schemas.microsoft.com/office/mac/office/2008/main" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" xmlns:mv="urn:schemas-microsoft-com:mac:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:r="http://schemas.openxmlformats.org/officeDocument/2006/relationships" xmlns:m="http://schemas.openxmlformats.org/officeDocument/2006/math" xmlns:v="urn:schemas-microsoft-com:vml" xmlns:wp14="http://schemas.microsoft.com/office/word/2010/wordprocessingDrawing" xmlns:wp="http://schemas.openxmlformats.org/drawingml/2006/wordprocessingDrawing" xmlns:w10="urn:schemas-microsoft-com:office:word" xmlns:w="http://schemas.openxmlformats.org/wordprocessingml/2006/main" xmlns:w14="http://schemas.microsoft.com/office/word/2010/wordml" xmlns:wpg="http://schemas.microsoft.com/office/word/2010/wordprocessingGroup" xmlns:wpi="http://schemas.microsoft.com/office/word/2010/wordprocessingInk" xmlns:wne="http://schemas.microsoft.com/office/word/2006/wordml" xmlns:wps="http://schemas.microsoft.com/office/word/2010/wordprocessingShape">
+                <w:footnote w:type="separator" w:id="-1">
+                    <w:p w14:paraId="3933DA74" w14:textId="77777777" w:rsidR="005E6C64" w:rsidRDefault="005E6C64">
+                        <w:r>
+                            <w:separator/>
+                        </w:r>
+                    </w:p>
+                </w:footnote>
+                <w:footnote w:type="continuationSeparator" w:id="0">
+                    <w:p w14:paraId="45E4E26E" w14:textId="77777777" w:rsidR="005E6C64" w:rsidRDefault="005E6C64">
+                        <w:r>
+                            <w:continuationSeparator/>
+                        </w:r>
+                    </w:p>
+                </w:footnote>
+            </w:footnotes>
+        </pkg:xmlData>
+    </pkg:part>
+    <pkg:part pkg:name="/word/endnotes.xml" pkg:contentType="application/vnd.openxmlformats-officedocument.wordprocessingml.endnotes+xml">
+        <pkg:xmlData>
+            <w:endnotes mc:Ignorable="w14 wp14" xmlns:wpc="http://schemas.microsoft.com/office/word/2010/wordprocessingCanvas" xmlns:mo="http://schemas.microsoft.com/office/mac/office/2008/main" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" xmlns:mv="urn:schemas-microsoft-com:mac:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:r="http://schemas.openxmlformats.org/officeDocument/2006/relationships" xmlns:m="http://schemas.openxmlformats.org/officeDocument/2006/math" xmlns:v="urn:schemas-microsoft-com:vml" xmlns:wp14="http://schemas.microsoft.com/office/word/2010/wordprocessingDrawing" xmlns:wp="http://schemas.openxmlformats.org/drawingml/2006/wordprocessingDrawing" xmlns:w10="urn:schemas-microsoft-com:office:word" xmlns:w="http://schemas.openxmlformats.org/wordprocessingml/2006/main" xmlns:w14="http://schemas.microsoft.com/office/word/2010/wordml" xmlns:wpg="http://schemas.microsoft.com/office/word/2010/wordprocessingGroup" xmlns:wpi="http://schemas.microsoft.com/office/word/2010/wordprocessingInk" xmlns:wne="http://schemas.microsoft.com/office/word/2006/wordml" xmlns:wps="http://schemas.microsoft.com/office/word/2010/wordprocessingShape">
+                <w:endnote w:type="separator" w:id="-1">
+                    <w:p w14:paraId="4AB009BF" w14:textId="77777777" w:rsidR="005E6C64" w:rsidRDefault="005E6C64">
+                        <w:r>
+                            <w:separator/>
+                        </w:r>
+                    </w:p>
+                </w:endnote>
+                <w:endnote w:type="continuationSeparator" w:id="0">
+                    <w:p w14:paraId="72409104" w14:textId="77777777" w:rsidR="005E6C64" w:rsidRDefault="005E6C64">
+                        <w:r>
+                            <w:continuationSeparator/>
+                        </w:r>
+                    </w:p>
+                </w:endnote>
+            </w:endnotes>
+        </pkg:xmlData>
+    </pkg:part>
+    <pkg:part pkg:name="/word/header1.xml" pkg:contentType="application/vnd.openxmlformats-officedocument.wordprocessingml.header+xml">
+        <pkg:xmlData>
+            <w:hdr mc:Ignorable="w14 wp14" xmlns:wpc="http://schemas.microsoft.com/office/word/2010/wordprocessingCanvas" xmlns:mo="http://schemas.microsoft.com/office/mac/office/2008/main" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" xmlns:mv="urn:schemas-microsoft-com:mac:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:r="http://schemas.openxmlformats.org/officeDocument/2006/relationships" xmlns:m="http://schemas.openxmlformats.org/officeDocument/2006/math" xmlns:v="urn:schemas-microsoft-com:vml" xmlns:wp14="http://schemas.microsoft.com/office/word/2010/wordprocessingDrawing" xmlns:wp="http://schemas.openxmlformats.org/drawingml/2006/wordprocessingDrawing" xmlns:w10="urn:schemas-microsoft-com:office:word" xmlns:w="http://schemas.openxmlformats.org/wordprocessingml/2006/main" xmlns:w14="http://schemas.microsoft.com/office/word/2010/wordml" xmlns:wpg="http://schemas.microsoft.com/office/word/2010/wordprocessingGroup" xmlns:wpi="http://schemas.microsoft.com/office/word/2010/wordprocessingInk" xmlns:wne="http://schemas.microsoft.com/office/word/2006/wordml" xmlns:wps="http://schemas.microsoft.com/office/word/2010/wordprocessingShape">
+                <w:p w14:paraId="01C235D6" w14:textId="77777777" w:rsidR="005E6C64" w:rsidRDefault="005E6C64" w:rsidP="00097880">
+                    <w:pPr>
+                        <w:pStyle w:val="a3"/>
+                        <w:pBdr>
+                            <w:bottom w:val="none" w:sz="0" w:space="0" w:color="auto"/>
+                        </w:pBdr>
+                    </w:pPr>
+                </w:p>
+            </w:hdr>
+        </pkg:xmlData>
+    </pkg:part>
+    <pkg:part pkg:name="/word/footer1.xml" pkg:contentType="application/vnd.openxmlformats-officedocument.wordprocessingml.footer+xml">
+        <pkg:xmlData>
+            <w:ftr mc:Ignorable="w14 wp14" xmlns:wpc="http://schemas.microsoft.com/office/word/2010/wordprocessingCanvas" xmlns:mo="http://schemas.microsoft.com/office/mac/office/2008/main" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" xmlns:mv="urn:schemas-microsoft-com:mac:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:r="http://schemas.openxmlformats.org/officeDocument/2006/relationships" xmlns:m="http://schemas.openxmlformats.org/officeDocument/2006/math" xmlns:v="urn:schemas-microsoft-com:vml" xmlns:wp14="http://schemas.microsoft.com/office/word/2010/wordprocessingDrawing" xmlns:wp="http://schemas.openxmlformats.org/drawingml/2006/wordprocessingDrawing" xmlns:w10="urn:schemas-microsoft-com:office:word" xmlns:w="http://schemas.openxmlformats.org/wordprocessingml/2006/main" xmlns:w14="http://schemas.microsoft.com/office/word/2010/wordml" xmlns:wpg="http://schemas.microsoft.com/office/word/2010/wordprocessingGroup" xmlns:wpi="http://schemas.microsoft.com/office/word/2010/wordprocessingInk" xmlns:wne="http://schemas.microsoft.com/office/word/2006/wordml" xmlns:wps="http://schemas.microsoft.com/office/word/2010/wordprocessingShape">
+                <w:p w14:paraId="6B6A5894" w14:textId="13CDC3DA" w:rsidR="005E6C64" w:rsidRPr="00070B9E" w:rsidRDefault="005E6C64" w:rsidP="00070B9E">
+                    <w:pPr>
+                        <w:pStyle w:val="a4"/>
+                        <w:jc w:val="center"/>
+                    </w:pPr>
+                    <w:r w:rsidRPr="00070B9E">
+                        <w:rPr>
+                            <w:rFonts w:hint="eastAsia"/>
+                            <w:kern w:val="0"/>
+                            <w:sz w:val="21"/>
+                            <w:szCs w:val="21"/>
+                        </w:rPr>
+                        <w:t>试卷第</w:t>
+                    </w:r>
+                    <w:sdt>
+                        <w:sdtPr>
+                            <w:rPr>
+                                <w:rFonts w:eastAsiaTheme="minorEastAsia"/>
+                                <w:sz w:val="21"/>
+                                <w:szCs w:val="21"/>
+                            </w:rPr>
+                            <w:id w:val="-1918230034"/>
+                            <w:docPartObj>
+                                <w:docPartGallery w:val="Page Numbers (Bottom of Page)"/>
+                                <w:docPartUnique/>
+                            </w:docPartObj>
+                        </w:sdtPr>
+                        <w:sdtEndPr/>
+                        <w:sdtContent>
+                            <w:sdt>
+                                <w:sdtPr>
+                                    <w:rPr>
+                                        <w:rFonts w:eastAsiaTheme="minorEastAsia"/>
+                                        <w:sz w:val="21"/>
+                                        <w:szCs w:val="21"/>
+                                    </w:rPr>
+                                    <w:id w:val="98381352"/>
+                                    <w:docPartObj>
+                                        <w:docPartGallery w:val="Page Numbers (Top of Page)"/>
+                                        <w:docPartUnique/>
+                                    </w:docPartObj>
+                                </w:sdtPr>
+                                <w:sdtEndPr/>
+                                <w:sdtContent>
+                                    <w:r w:rsidRPr="007D3C9C">
+                                        <w:rPr>
+                                            <w:rFonts w:eastAsiaTheme="minorEastAsia"/>
+                                            <w:bCs/>
+                                            <w:sz w:val="21"/>
+                                            <w:szCs w:val="21"/>
+                                        </w:rPr>
+                                        <w:fldChar w:fldCharType="begin"/>
+                                    </w:r>
+                                    <w:r w:rsidRPr="007D3C9C">
+                                        <w:rPr>
+                                            <w:rFonts w:eastAsiaTheme="minorEastAsia"/>
+                                            <w:bCs/>
+                                            <w:sz w:val="21"/>
+                                            <w:szCs w:val="21"/>
+                                        </w:rPr>
+                                        <w:instrText>PAGE</w:instrText>
+                                    </w:r>
+                                    <w:r w:rsidRPr="007D3C9C">
+                                        <w:rPr>
+                                            <w:rFonts w:eastAsiaTheme="minorEastAsia"/>
+                                            <w:bCs/>
+                                            <w:sz w:val="21"/>
+                                            <w:szCs w:val="21"/>
+                                        </w:rPr>
+                                        <w:fldChar w:fldCharType="separate"/>
+                                    </w:r>
+                                    <w:r w:rsidR="00FF43E5">
+                                        <w:rPr>
+                                            <w:rFonts w:eastAsiaTheme="minorEastAsia"/>
+                                            <w:bCs/>
+                                            <w:noProof/>
+                                            <w:sz w:val="21"/>
+                                            <w:szCs w:val="21"/>
+                                        </w:rPr>
+                                        <w:t>1</w:t>
+                                    </w:r>
+                                    <w:r w:rsidRPr="007D3C9C">
+                                        <w:rPr>
+                                            <w:rFonts w:eastAsiaTheme="minorEastAsia"/>
+                                            <w:bCs/>
+                                            <w:sz w:val="21"/>
+                                            <w:szCs w:val="21"/>
+                                        </w:rPr>
+                                        <w:fldChar w:fldCharType="end"/>
+                                    </w:r>
+                                    <w:r w:rsidRPr="007D3C9C">
+                                        <w:rPr>
+                                            <w:rFonts w:eastAsiaTheme="minorEastAsia"/>
+                                            <w:kern w:val="0"/>
+                                            <w:sz w:val="21"/>
+                                            <w:szCs w:val="21"/>
+                                        </w:rPr>
+                                        <w:t>页(共</w:t>
+                                    </w:r>
+                                    <w:r w:rsidRPr="007D3C9C">
+                                        <w:rPr>
+                                            <w:rFonts w:eastAsiaTheme="minorEastAsia"/>
+                                            <w:bCs/>
+                                            <w:sz w:val="21"/>
+                                            <w:szCs w:val="21"/>
+                                        </w:rPr>
+                                        <w:fldChar w:fldCharType="begin"/>
+                                    </w:r>
+                                    <w:r w:rsidRPr="007D3C9C">
+                                        <w:rPr>
+                                            <w:rFonts w:eastAsiaTheme="minorEastAsia"/>
+                                            <w:bCs/>
+                                            <w:sz w:val="21"/>
+                                            <w:szCs w:val="21"/>
+                                        </w:rPr>
+                                        <w:instrText>NUMPAGES</w:instrText>
+                                    </w:r>
+                                    <w:r w:rsidRPr="007D3C9C">
+                                        <w:rPr>
+                                            <w:rFonts w:eastAsiaTheme="minorEastAsia"/>
+                                            <w:bCs/>
+                                            <w:sz w:val="21"/>
+                                            <w:szCs w:val="21"/>
+                                        </w:rPr>
+                                        <w:fldChar w:fldCharType="separate"/>
+                                    </w:r>
+                                    <w:r w:rsidR="00FF43E5">
+                                        <w:rPr>
+                                            <w:rFonts w:eastAsiaTheme="minorEastAsia"/>
+                                            <w:bCs/>
+                                            <w:noProof/>
+                                            <w:sz w:val="21"/>
+                                            <w:szCs w:val="21"/>
+                                        </w:rPr>
+                                        <w:t>1</w:t>
+                                    </w:r>
+                                    <w:r w:rsidRPr="007D3C9C">
+                                        <w:rPr>
+                                            <w:rFonts w:eastAsiaTheme="minorEastAsia"/>
+                                            <w:bCs/>
+                                            <w:sz w:val="21"/>
+                                            <w:szCs w:val="21"/>
+                                        </w:rPr>
+                                        <w:fldChar w:fldCharType="end"/>
+                                    </w:r>
+                                    <w:r w:rsidRPr="007D3C9C">
+                                        <w:rPr>
+                                            <w:rFonts w:eastAsiaTheme="minorEastAsia"/>
+                                            <w:kern w:val="0"/>
+                                            <w:sz w:val="21"/>
+                                            <w:szCs w:val="21"/>
+                                        </w:rPr>
+                                        <w:t>页)</w:t>
+                                    </w:r>
+                                </w:sdtContent>
+                            </w:sdt>
+                        </w:sdtContent>
+                    </w:sdt>
+                </w:p>
+            </w:ftr>
+        </pkg:xmlData>
+    </pkg:part>
+    <pkg:part pkg:name="/word/theme/theme1.xml" pkg:contentType="application/vnd.openxmlformats-officedocument.theme+xml">
+        <pkg:xmlData>
+            <a:theme name="Office 主题​​" xmlns:a="http://schemas.openxmlformats.org/drawingml/2006/main">
+                <a:themeElements>
+                    <a:clrScheme name="Office">
+                        <a:dk1>
+                            <a:sysClr val="windowText" lastClr="000000"/>
+                        </a:dk1>
+                        <a:lt1>
+                            <a:sysClr val="window" lastClr="FFFFFF"/>
+                        </a:lt1>
+                        <a:dk2>
+                            <a:srgbClr val="1F497D"/>
+                        </a:dk2>
+                        <a:lt2>
+                            <a:srgbClr val="EEECE1"/>
+                        </a:lt2>
+                        <a:accent1>
+                            <a:srgbClr val="4F81BD"/>
+                        </a:accent1>
+                        <a:accent2>
+                            <a:srgbClr val="C0504D"/>
+                        </a:accent2>
+                        <a:accent3>
+                            <a:srgbClr val="9BBB59"/>
+                        </a:accent3>
+                        <a:accent4>
+                            <a:srgbClr val="8064A2"/>
+                        </a:accent4>
+                        <a:accent5>
+                            <a:srgbClr val="4BACC6"/>
+                        </a:accent5>
+                        <a:accent6>
+                            <a:srgbClr val="F79646"/>
+                        </a:accent6>
+                        <a:hlink>
+                            <a:srgbClr val="0000FF"/>
+                        </a:hlink>
+                        <a:folHlink>
+                            <a:srgbClr val="800080"/>
+                        </a:folHlink>
+                    </a:clrScheme>
+                    <a:fontScheme name="Office">
+                        <a:majorFont>
+                            <a:latin typeface="Cambria"/>
+                            <a:ea typeface=""/>
+                            <a:cs typeface=""/>
+                            <a:font script="Jpan" typeface="MS ゴシック"/>
+                            <a:font script="Hang" typeface="맑은 고딕"/>
+                            <a:font script="Hans" typeface="宋体"/>
+                            <a:font script="Hant" typeface="新細明體"/>
+                            <a:font script="Arab" typeface="Times New Roman"/>
+                            <a:font script="Hebr" typeface="Times New Roman"/>
+                            <a:font script="Thai" typeface="Angsana New"/>
+                            <a:font script="Ethi" typeface="Nyala"/>
+                            <a:font script="Beng" typeface="Vrinda"/>
+                            <a:font script="Gujr" typeface="Shruti"/>
+                            <a:font script="Khmr" typeface="MoolBoran"/>
+                            <a:font script="Knda" typeface="Tunga"/>
+                            <a:font script="Guru" typeface="Raavi"/>
+                            <a:font script="Cans" typeface="Euphemia"/>
+                            <a:font script="Cher" typeface="Plantagenet Cherokee"/>
+                            <a:font script="Yiii" typeface="Microsoft Yi Baiti"/>
+                            <a:font script="Tibt" typeface="Microsoft Himalaya"/>
+                            <a:font script="Thaa" typeface="MV Boli"/>
+                            <a:font script="Deva" typeface="Mangal"/>
+                            <a:font script="Telu" typeface="Gautami"/>
+                            <a:font script="Taml" typeface="Latha"/>
+                            <a:font script="Syrc" typeface="Estrangelo Edessa"/>
+                            <a:font script="Orya" typeface="Kalinga"/>
+                            <a:font script="Mlym" typeface="Kartika"/>
+                            <a:font script="Laoo" typeface="DokChampa"/>
+                            <a:font script="Sinh" typeface="Iskoola Pota"/>
+                            <a:font script="Mong" typeface="Mongolian Baiti"/>
+                            <a:font script="Viet" typeface="Times New Roman"/>
+                            <a:font script="Uigh" typeface="Microsoft Uighur"/>
+                            <a:font script="Geor" typeface="Sylfaen"/>
+                        </a:majorFont>
+                        <a:minorFont>
+                            <a:latin typeface="Calibri"/>
+                            <a:ea typeface=""/>
+                            <a:cs typeface=""/>
+                            <a:font script="Jpan" typeface="MS 明朝"/>
+                            <a:font script="Hang" typeface="맑은 고딕"/>
+                            <a:font script="Hans" typeface="宋体"/>
+                            <a:font script="Hant" typeface="新細明體"/>
+                            <a:font script="Arab" typeface="Arial"/>
+                            <a:font script="Hebr" typeface="Arial"/>
+                            <a:font script="Thai" typeface="Cordia New"/>
+                            <a:font script="Ethi" typeface="Nyala"/>
+                            <a:font script="Beng" typeface="Vrinda"/>
+                            <a:font script="Gujr" typeface="Shruti"/>
+                            <a:font script="Khmr" typeface="DaunPenh"/>
+                            <a:font script="Knda" typeface="Tunga"/>
+                            <a:font script="Guru" typeface="Raavi"/>
+                            <a:font script="Cans" typeface="Euphemia"/>
+                            <a:font script="Cher" typeface="Plantagenet Cherokee"/>
+                            <a:font script="Yiii" typeface="Microsoft Yi Baiti"/>
+                            <a:font script="Tibt" typeface="Microsoft Himalaya"/>
+                            <a:font script="Thaa" typeface="MV Boli"/>
+                            <a:font script="Deva" typeface="Mangal"/>
+                            <a:font script="Telu" typeface="Gautami"/>
+                            <a:font script="Taml" typeface="Latha"/>
+                            <a:font script="Syrc" typeface="Estrangelo Edessa"/>
+                            <a:font script="Orya" typeface="Kalinga"/>
+                            <a:font script="Mlym" typeface="Kartika"/>
+                            <a:font script="Laoo" typeface="DokChampa"/>
+                            <a:font script="Sinh" typeface="Iskoola Pota"/>
+                            <a:font script="Mong" typeface="Mongolian Baiti"/>
+                            <a:font script="Viet" typeface="Arial"/>
+                            <a:font script="Uigh" typeface="Microsoft Uighur"/>
+                            <a:font script="Geor" typeface="Sylfaen"/>
+                        </a:minorFont>
+                    </a:fontScheme>
+                    <a:fmtScheme name="Office">
+                        <a:fillStyleLst>
+                            <a:solidFill>
+                                <a:schemeClr val="phClr"/>
+                            </a:solidFill>
+                            <a:gradFill rotWithShape="1">
+                                <a:gsLst>
+                                    <a:gs pos="0">
+                                        <a:schemeClr val="phClr">
+                                            <a:tint val="50000"/>
+                                            <a:satMod val="300000"/>
+                                        </a:schemeClr>
+                                    </a:gs>
+                                    <a:gs pos="35000">
+                                        <a:schemeClr val="phClr">
+                                            <a:tint val="37000"/>
+                                            <a:satMod val="300000"/>
+                                        </a:schemeClr>
+                                    </a:gs>
+                                    <a:gs pos="100000">
+                                        <a:schemeClr val="phClr">
+                                            <a:tint val="15000"/>
+                                            <a:satMod val="350000"/>
+                                        </a:schemeClr>
+                                    </a:gs>
+                                </a:gsLst>
+                                <a:lin ang="16200000" scaled="1"/>
+                            </a:gradFill>
+                            <a:gradFill rotWithShape="1">
+                                <a:gsLst>
+                                    <a:gs pos="0">
+                                        <a:schemeClr val="phClr">
+                                            <a:shade val="51000"/>
+                                            <a:satMod val="130000"/>
+                                        </a:schemeClr>
+                                    </a:gs>
+                                    <a:gs pos="80000">
+                                        <a:schemeClr val="phClr">
+                                            <a:shade val="93000"/>
+                                            <a:satMod val="130000"/>
+                                        </a:schemeClr>
+                                    </a:gs>
+                                    <a:gs pos="100000">
+                                        <a:schemeClr val="phClr">
+                                            <a:shade val="94000"/>
+                                            <a:satMod val="135000"/>
+                                        </a:schemeClr>
+                                    </a:gs>
+                                </a:gsLst>
+                                <a:lin ang="16200000" scaled="0"/>
+                            </a:gradFill>
+                        </a:fillStyleLst>
+                        <a:lnStyleLst>
+                            <a:ln w="9525" cap="flat" cmpd="sng" algn="ctr">
+                                <a:solidFill>
+                                    <a:schemeClr val="phClr">
+                                        <a:shade val="95000"/>
+                                        <a:satMod val="105000"/>
+                                    </a:schemeClr>
+                                </a:solidFill>
+                                <a:prstDash val="solid"/>
+                            </a:ln>
+                            <a:ln w="25400" cap="flat" cmpd="sng" algn="ctr">
+                                <a:solidFill>
+                                    <a:schemeClr val="phClr"/>
+                                </a:solidFill>
+                                <a:prstDash val="solid"/>
+                            </a:ln>
+                            <a:ln w="38100" cap="flat" cmpd="sng" algn="ctr">
+                                <a:solidFill>
+                                    <a:schemeClr val="phClr"/>
+                                </a:solidFill>
+                                <a:prstDash val="solid"/>
+                            </a:ln>
+                        </a:lnStyleLst>
+                        <a:effectStyleLst>
+                            <a:effectStyle>
+                                <a:effectLst>
+                                    <a:outerShdw blurRad="40000" dist="20000" dir="5400000" rotWithShape="0">
+                                        <a:srgbClr val="000000">
+                                            <a:alpha val="38000"/>
+                                        </a:srgbClr>
+                                    </a:outerShdw>
+                                </a:effectLst>
+                            </a:effectStyle>
+                            <a:effectStyle>
+                                <a:effectLst>
+                                    <a:outerShdw blurRad="40000" dist="23000" dir="5400000" rotWithShape="0">
+                                        <a:srgbClr val="000000">
+                                            <a:alpha val="35000"/>
+                                        </a:srgbClr>
+                                    </a:outerShdw>
+                                </a:effectLst>
+                            </a:effectStyle>
+                            <a:effectStyle>
+                                <a:effectLst>
+                                    <a:outerShdw blurRad="40000" dist="23000" dir="5400000" rotWithShape="0">
+                                        <a:srgbClr val="000000">
+                                            <a:alpha val="35000"/>
+                                        </a:srgbClr>
+                                    </a:outerShdw>
+                                </a:effectLst>
+                                <a:scene3d>
+                                    <a:camera prst="orthographicFront">
+                                        <a:rot lat="0" lon="0" rev="0"/>
+                                    </a:camera>
+                                    <a:lightRig rig="threePt" dir="t">
+                                        <a:rot lat="0" lon="0" rev="1200000"/>
+                                    </a:lightRig>
+                                </a:scene3d>
+                                <a:sp3d>
+                                    <a:bevelT w="63500" h="25400"/>
+                                </a:sp3d>
+                            </a:effectStyle>
+                        </a:effectStyleLst>
+                        <a:bgFillStyleLst>
+                            <a:solidFill>
+                                <a:schemeClr val="phClr"/>
+                            </a:solidFill>
+                            <a:gradFill rotWithShape="1">
+                                <a:gsLst>
+                                    <a:gs pos="0">
+                                        <a:schemeClr val="phClr">
+                                            <a:tint val="40000"/>
+                                            <a:satMod val="350000"/>
+                                        </a:schemeClr>
+                                    </a:gs>
+                                    <a:gs pos="40000">
+                                        <a:schemeClr val="phClr">
+                                            <a:tint val="45000"/>
+                                            <a:shade val="99000"/>
+                                            <a:satMod val="350000"/>
+                                        </a:schemeClr>
+                                    </a:gs>
+                                    <a:gs pos="100000">
+                                        <a:schemeClr val="phClr">
+                                            <a:shade val="20000"/>
+                                            <a:satMod val="255000"/>
+                                        </a:schemeClr>
+                                    </a:gs>
+                                </a:gsLst>
+                                <a:path path="circle">
+                                    <a:fillToRect l="50000" t="-80000" r="50000" b="180000"/>
+                                </a:path>
+                            </a:gradFill>
+                            <a:gradFill rotWithShape="1">
+                                <a:gsLst>
+                                    <a:gs pos="0">
+                                        <a:schemeClr val="phClr">
+                                            <a:tint val="80000"/>
+                                            <a:satMod val="300000"/>
+                                        </a:schemeClr>
+                                    </a:gs>
+                                    <a:gs pos="100000">
+                                        <a:schemeClr val="phClr">
+                                            <a:shade val="30000"/>
+                                            <a:satMod val="200000"/>
+                                        </a:schemeClr>
+                                    </a:gs>
+                                </a:gsLst>
+                                <a:path path="circle">
+                                    <a:fillToRect l="50000" t="50000" r="50000" b="50000"/>
+                                </a:path>
+                            </a:gradFill>
+                        </a:bgFillStyleLst>
+                    </a:fmtScheme>
+                </a:themeElements>
+                <a:objectDefaults/>
+                <a:extraClrSchemeLst/>
+            </a:theme>
+        </pkg:xmlData>
+    </pkg:part>
+    <pkg:part pkg:name="/word/settings.xml" pkg:contentType="application/vnd.openxmlformats-officedocument.wordprocessingml.settings+xml">
+        <pkg:xmlData>
+            <w:settings mc:Ignorable="w14" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:r="http://schemas.openxmlformats.org/officeDocument/2006/relationships" xmlns:m="http://schemas.openxmlformats.org/officeDocument/2006/math" xmlns:v="urn:schemas-microsoft-com:vml" xmlns:w10="urn:schemas-microsoft-com:office:word" xmlns:w="http://schemas.openxmlformats.org/wordprocessingml/2006/main" xmlns:w14="http://schemas.microsoft.com/office/word/2010/wordml" xmlns:sl="http://schemas.openxmlformats.org/schemaLibrary/2006/main">
+                <w:zoom w:percent="150"/>
+                <w:bordersDoNotSurroundHeader/>
+                <w:bordersDoNotSurroundFooter/>
+                <w:proofState w:spelling="clean" w:grammar="clean"/>
+                <w:stylePaneFormatFilter w:val="3F01" w:allStyles="1" w:customStyles="0" w:latentStyles="0" w:stylesInUse="0" w:headingStyles="0" w:numberingStyles="0" w:tableStyles="0" w:directFormattingOnRuns="1" w:directFormattingOnParagraphs="1" w:directFormattingOnNumbering="1" w:directFormattingOnTables="1" w:clearFormatting="1" w:top3HeadingStyles="1" w:visibleStyles="0" w:alternateStyleNames="0"/>
+                <w:defaultTabStop w:val="420"/>
+                <w:drawingGridHorizontalSpacing w:val="105"/>
+                <w:drawingGridVerticalSpacing w:val="435"/>
+                <w:displayHorizontalDrawingGridEvery w:val="0"/>
+                <w:characterSpacingControl w:val="compressPunctuation"/>
+                <w:hdrShapeDefaults>
+                    <o:shapedefaults v:ext="edit" spidmax="2050"/>
+                </w:hdrShapeDefaults>
+                <w:footnotePr>
+                    <w:footnote w:id="-1"/>
+                    <w:footnote w:id="0"/>
+                </w:footnotePr>
+                <w:endnotePr>
+                    <w:endnote w:id="-1"/>
+                    <w:endnote w:id="0"/>
+                </w:endnotePr>
+                <w:compat>
+                    <w:spaceForUL/>
+                    <w:balanceSingleByteDoubleByteWidth/>
+                    <w:doNotLeaveBackslashAlone/>
+                    <w:ulTrailSpace/>
+                    <w:doNotExpandShiftReturn/>
+                    <w:adjustLineHeightInTable/>
+                    <w:useFELayout/>
+                    <w:compatSetting w:name="compatibilityMode" w:uri="http://schemas.microsoft.com/office/word" w:val="14"/>
+                    <w:compatSetting w:name="overrideTableStyleFontSizeAndJustification" w:uri="http://schemas.microsoft.com/office/word" w:val="1"/>
+                    <w:compatSetting w:name="enableOpenTypeFeatures" w:uri="http://schemas.microsoft.com/office/word" w:val="1"/>
+                    <w:compatSetting w:name="doNotFlipMirrorIndents" w:uri="http://schemas.microsoft.com/office/word" w:val="1"/>
+                </w:compat>
+                <w:rsids>
+                    <w:rsidRoot w:val="00097880"/>
+                    <w:rsid w:val="00032C9E"/>
+                    <w:rsid w:val="00040F2F"/>
+                    <w:rsid w:val="0006124A"/>
+                    <w:rsid w:val="00063B9B"/>
+                    <w:rsid w:val="00070B9E"/>
+                    <w:rsid w:val="00075B8D"/>
+                    <w:rsid w:val="0007685A"/>
+                    <w:rsid w:val="00097880"/>
+                    <w:rsid w:val="000D4AC3"/>
+                    <w:rsid w:val="000F4283"/>
+                    <w:rsid w:val="00110C92"/>
+                    <w:rsid w:val="00153753"/>
+                    <w:rsid w:val="00177009"/>
+                    <w:rsid w:val="00195A56"/>
+                    <w:rsid w:val="00226D45"/>
+                    <w:rsid w:val="0028721C"/>
+                    <w:rsid w:val="002B6566"/>
+                    <w:rsid w:val="00324193"/>
+                    <w:rsid w:val="003A479C"/>
+                    <w:rsid w:val="003B5EF6"/>
+                    <w:rsid w:val="003B7191"/>
+                    <w:rsid w:val="003D5A89"/>
+                    <w:rsid w:val="003D7262"/>
+                    <w:rsid w:val="00423EE5"/>
+                    <w:rsid w:val="00430FE2"/>
+                    <w:rsid w:val="00460051"/>
+                    <w:rsid w:val="00467132"/>
+                    <w:rsid w:val="00497D71"/>
+                    <w:rsid w:val="004B69E8"/>
+                    <w:rsid w:val="004E66B2"/>
+                    <w:rsid w:val="004F543C"/>
+                    <w:rsid w:val="00517A21"/>
+                    <w:rsid w:val="00574041"/>
+                    <w:rsid w:val="00576D0C"/>
+                    <w:rsid w:val="005C192C"/>
+                    <w:rsid w:val="005C592F"/>
+                    <w:rsid w:val="005D30EC"/>
+                    <w:rsid w:val="005E6C64"/>
+                    <w:rsid w:val="006256AF"/>
+                    <w:rsid w:val="0063380F"/>
+                    <w:rsid w:val="00681035"/>
+                    <w:rsid w:val="00692287"/>
+                    <w:rsid w:val="006C2185"/>
+                    <w:rsid w:val="00703B43"/>
+                    <w:rsid w:val="0071469F"/>
+                    <w:rsid w:val="007224D1"/>
+                    <w:rsid w:val="007253D9"/>
+                    <w:rsid w:val="00757B9C"/>
+                    <w:rsid w:val="00757E54"/>
+                    <w:rsid w:val="007760B2"/>
+                    <w:rsid w:val="00776F80"/>
+                    <w:rsid w:val="007B25AC"/>
+                    <w:rsid w:val="007B656F"/>
+                    <w:rsid w:val="007C044A"/>
+                    <w:rsid w:val="007C31D0"/>
+                    <w:rsid w:val="007C551B"/>
+                    <w:rsid w:val="007E01D1"/>
+                    <w:rsid w:val="008239B8"/>
+                    <w:rsid w:val="00852C57"/>
+                    <w:rsid w:val="00852E4F"/>
+                    <w:rsid w:val="0089447C"/>
+                    <w:rsid w:val="008E795C"/>
+                    <w:rsid w:val="0094646F"/>
+                    <w:rsid w:val="00950F33"/>
+                    <w:rsid w:val="00965B17"/>
+                    <w:rsid w:val="00974876"/>
+                    <w:rsid w:val="009804AF"/>
+                    <w:rsid w:val="00985EFB"/>
+                    <w:rsid w:val="009A14B0"/>
+                    <w:rsid w:val="009A1711"/>
+                    <w:rsid w:val="00A052CD"/>
+                    <w:rsid w:val="00A31E04"/>
+                    <w:rsid w:val="00A32E54"/>
+                    <w:rsid w:val="00A42ED9"/>
+                    <w:rsid w:val="00A74712"/>
+                    <w:rsid w:val="00A8194A"/>
+                    <w:rsid w:val="00A87B57"/>
+                    <w:rsid w:val="00A913BA"/>
+                    <w:rsid w:val="00A945C6"/>
+                    <w:rsid w:val="00AA358F"/>
+                    <w:rsid w:val="00AA630E"/>
+                    <w:rsid w:val="00AC5FB3"/>
+                    <w:rsid w:val="00AD27CB"/>
+                    <w:rsid w:val="00AF49C6"/>
+                    <w:rsid w:val="00B10706"/>
+                    <w:rsid w:val="00B262C2"/>
+                    <w:rsid w:val="00B46ADE"/>
+                    <w:rsid w:val="00B963C7"/>
+                    <w:rsid w:val="00BA4604"/>
+                    <w:rsid w:val="00BD30D2"/>
+                    <w:rsid w:val="00C00E2B"/>
+                    <w:rsid w:val="00C14CC9"/>
+                    <w:rsid w:val="00C40249"/>
+                    <w:rsid w:val="00C5483B"/>
+                    <w:rsid w:val="00C62FAC"/>
+                    <w:rsid w:val="00C66982"/>
+                    <w:rsid w:val="00C854BB"/>
+                    <w:rsid w:val="00CA2F5E"/>
+                    <w:rsid w:val="00D05D1D"/>
+                    <w:rsid w:val="00D21C3F"/>
+                    <w:rsid w:val="00D52CCC"/>
+                    <w:rsid w:val="00D9781C"/>
+                    <w:rsid w:val="00DB0CB3"/>
+                    <w:rsid w:val="00DE5559"/>
+                    <w:rsid w:val="00DF790F"/>
+                    <w:rsid w:val="00E20128"/>
+                    <w:rsid w:val="00E441A6"/>
+                    <w:rsid w:val="00E470C7"/>
+                    <w:rsid w:val="00E57B71"/>
+                    <w:rsid w:val="00E60449"/>
+                    <w:rsid w:val="00EA765B"/>
+                    <w:rsid w:val="00EB33B3"/>
+                    <w:rsid w:val="00EC5025"/>
+                    <w:rsid w:val="00EF1006"/>
+                    <w:rsid w:val="00F07FBD"/>
+                    <w:rsid w:val="00F17E43"/>
+                    <w:rsid w:val="00F24E78"/>
+                    <w:rsid w:val="00F325CF"/>
+                    <w:rsid w:val="00F44AF9"/>
+                    <w:rsid w:val="00FB74AE"/>
+                    <w:rsid w:val="00FC5A19"/>
+                    <w:rsid w:val="00FD0974"/>
+                    <w:rsid w:val="00FE31B1"/>
+                    <w:rsid w:val="00FF43E5"/>
+                </w:rsids>
+                <m:mathPr>
+                    <m:mathFont m:val="Cambria Math"/>
+                    <m:brkBin m:val="before"/>
+                    <m:brkBinSub m:val="--"/>
+                    <m:smallFrac m:val="0"/>
+                    <m:dispDef/>
+                    <m:lMargin m:val="0"/>
+                    <m:rMargin m:val="0"/>
+                    <m:defJc m:val="centerGroup"/>
+                    <m:wrapIndent m:val="1440"/>
+                    <m:intLim m:val="subSup"/>
+                    <m:naryLim m:val="undOvr"/>
+                </m:mathPr>
+                <w:themeFontLang w:val="en-US" w:eastAsia="zh-CN"/>
+                <w:clrSchemeMapping w:bg1="light1" w:t1="dark1" w:bg2="light2" w:t2="dark2" w:accent1="accent1" w:accent2="accent2" w:accent3="accent3" w:accent4="accent4" w:accent5="accent5" w:accent6="accent6" w:hyperlink="hyperlink" w:followedHyperlink="followedHyperlink"/>
+                <w:doNotIncludeSubdocsInStats/>
+                <w:doNotAutoCompressPictures/>
+                <w:shapeDefaults>
+                    <o:shapedefaults v:ext="edit" spidmax="2050"/>
+                    <o:shapelayout v:ext="edit">
+                        <o:idmap v:ext="edit" data="1"/>
+                    </o:shapelayout>
+                </w:shapeDefaults>
+                <w:decimalSymbol w:val="."/>
+                <w:listSeparator w:val=","/>
+                <w14:docId w14:val="1601E0DE"/>
+            </w:settings>
+        </pkg:xmlData>
+    </pkg:part>
+    <pkg:part pkg:name="/word/webSettings.xml" pkg:contentType="application/vnd.openxmlformats-officedocument.wordprocessingml.webSettings+xml">
+        <pkg:xmlData>
+            <w:webSettings mc:Ignorable="w14" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" xmlns:r="http://schemas.openxmlformats.org/officeDocument/2006/relationships" xmlns:w="http://schemas.openxmlformats.org/wordprocessingml/2006/main" xmlns:w14="http://schemas.microsoft.com/office/word/2010/wordml">
+                <w:optimizeForBrowser/>
+                <w:doNotSaveAsSingleFile/>
+            </w:webSettings>
+        </pkg:xmlData>
+    </pkg:part>
+    <pkg:part pkg:name="/word/stylesWithEffects.xml" pkg:contentType="application/vnd.ms-word.stylesWithEffects+xml">
+        <pkg:xmlData>
+            <w:styles mc:Ignorable="w14 wp14" xmlns:wpc="http://schemas.microsoft.com/office/word/2010/wordprocessingCanvas" xmlns:mo="http://schemas.microsoft.com/office/mac/office/2008/main" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" xmlns:mv="urn:schemas-microsoft-com:mac:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:r="http://schemas.openxmlformats.org/officeDocument/2006/relationships" xmlns:m="http://schemas.openxmlformats.org/officeDocument/2006/math" xmlns:v="urn:schemas-microsoft-com:vml" xmlns:wp14="http://schemas.microsoft.com/office/word/2010/wordprocessingDrawing" xmlns:wp="http://schemas.openxmlformats.org/drawingml/2006/wordprocessingDrawing" xmlns:w10="urn:schemas-microsoft-com:office:word" xmlns:w="http://schemas.openxmlformats.org/wordprocessingml/2006/main" xmlns:w14="http://schemas.microsoft.com/office/word/2010/wordml" xmlns:wpg="http://schemas.microsoft.com/office/word/2010/wordprocessingGroup" xmlns:wpi="http://schemas.microsoft.com/office/word/2010/wordprocessingInk" xmlns:wne="http://schemas.microsoft.com/office/word/2006/wordml" xmlns:wps="http://schemas.microsoft.com/office/word/2010/wordprocessingShape">
+                <w:docDefaults>
+                    <w:rPrDefault>
+                        <w:rPr>
+                            <w:rFonts w:ascii="Times New Roman" w:eastAsia="宋体" w:hAnsi="Times New Roman" w:cs="Times New Roman"/>
+                            <w:lang w:val="en-US" w:eastAsia="zh-CN" w:bidi="ar-SA"/>
+                        </w:rPr>
+                    </w:rPrDefault>
+                    <w:pPrDefault/>
+                </w:docDefaults>
+                <w:latentStyles w:defLockedState="0" w:defUIPriority="0" w:defSemiHidden="0" w:defUnhideWhenUsed="0" w:defQFormat="0" w:count="276">
+                    <w:lsdException w:name="Normal" w:qFormat="1"/>
+                    <w:lsdException w:name="heading 1" w:qFormat="1"/>
+                    <w:lsdException w:name="heading 2" w:semiHidden="1" w:unhideWhenUsed="1" w:qFormat="1"/>
+                    <w:lsdException w:name="heading 3" w:semiHidden="1" w:unhideWhenUsed="1" w:qFormat="1"/>
+                    <w:lsdException w:name="heading 4" w:semiHidden="1" w:unhideWhenUsed="1" w:qFormat="1"/>
+                    <w:lsdException w:name="heading 5" w:semiHidden="1" w:unhideWhenUsed="1" w:qFormat="1"/>
+                    <w:lsdException w:name="heading 6" w:semiHidden="1" w:unhideWhenUsed="1" w:qFormat="1"/>
+                    <w:lsdException w:name="heading 7" w:semiHidden="1" w:unhideWhenUsed="1" w:qFormat="1"/>
+                    <w:lsdException w:name="heading 8" w:semiHidden="1" w:unhideWhenUsed="1" w:qFormat="1"/>
+                    <w:lsdException w:name="heading 9" w:semiHidden="1" w:unhideWhenUsed="1" w:qFormat="1"/>
+                    <w:lsdException w:name="footer" w:uiPriority="99"/>
+                    <w:lsdException w:name="caption" w:semiHidden="1" w:unhideWhenUsed="1" w:qFormat="1"/>
+                    <w:lsdException w:name="Title" w:qFormat="1"/>
+                    <w:lsdException w:name="Subtitle" w:qFormat="1"/>
+                    <w:lsdException w:name="Strong" w:qFormat="1"/>
+                    <w:lsdException w:name="Emphasis" w:qFormat="1"/>
+                    <w:lsdException w:name="Placeholder Text" w:semiHidden="1" w:uiPriority="99"/>
+                    <w:lsdException w:name="No Spacing" w:uiPriority="1" w:qFormat="1"/>
+                    <w:lsdException w:name="Light Shading" w:uiPriority="60"/>
+                    <w:lsdException w:name="Light List" w:uiPriority="61"/>
+                    <w:lsdException w:name="Light Grid" w:uiPriority="62"/>
+                    <w:lsdException w:name="Medium Shading 1" w:uiPriority="63"/>
+                    <w:lsdException w:name="Medium Shading 2" w:uiPriority="64"/>
+                    <w:lsdException w:name="Medium List 1" w:uiPriority="65"/>
+                    <w:lsdException w:name="Medium List 2" w:uiPriority="66"/>
+                    <w:lsdException w:name="Medium Grid 1" w:uiPriority="67"/>
+                    <w:lsdException w:name="Medium Grid 2" w:uiPriority="68"/>
+                    <w:lsdException w:name="Medium Grid 3" w:uiPriority="69"/>
+                    <w:lsdException w:name="Dark List" w:uiPriority="70"/>
+                    <w:lsdException w:name="Colorful Shading" w:uiPriority="71"/>
+                    <w:lsdException w:name="Colorful List" w:uiPriority="72"/>
+                    <w:lsdException w:name="Colorful Grid" w:uiPriority="73"/>
+                    <w:lsdException w:name="Light Shading Accent 1" w:uiPriority="60"/>
+                    <w:lsdException w:name="Light List Accent 1" w:uiPriority="61"/>
+                    <w:lsdException w:name="Light Grid Accent 1" w:uiPriority="62"/>
+                    <w:lsdException w:name="Medium Shading 1 Accent 1" w:uiPriority="63"/>
+                    <w:lsdException w:name="Medium Shading 2 Accent 1" w:uiPriority="64"/>
+                    <w:lsdException w:name="Medium List 1 Accent 1" w:uiPriority="65"/>
+                    <w:lsdException w:name="Revision" w:semiHidden="1" w:uiPriority="99"/>
+                    <w:lsdException w:name="List Paragraph" w:uiPriority="34" w:qFormat="1"/>
+                    <w:lsdException w:name="Quote" w:uiPriority="29" w:qFormat="1"/>
+                    <w:lsdException w:name="Intense Quote" w:uiPriority="30" w:qFormat="1"/>
+                    <w:lsdException w:name="Medium List 2 Accent 1" w:uiPriority="66"/>
+                    <w:lsdException w:name="Medium Grid 1 Accent 1" w:uiPriority="67"/>
+                    <w:lsdException w:name="Medium Grid 2 Accent 1" w:uiPriority="68"/>
+                    <w:lsdException w:name="Medium Grid 3 Accent 1" w:uiPriority="69"/>
+                    <w:lsdException w:name="Dark List Accent 1" w:uiPriority="70"/>
+                    <w:lsdException w:name="Colorful Shading Accent 1" w:uiPriority="71"/>
+                    <w:lsdException w:name="Colorful List Accent 1" w:uiPriority="72"/>
+                    <w:lsdException w:name="Colorful Grid Accent 1" w:uiPriority="73"/>
+                    <w:lsdException w:name="Light Shading Accent 2" w:uiPriority="60"/>
+                    <w:lsdException w:name="Light List Accent 2" w:uiPriority="61"/>
+                    <w:lsdException w:name="Light Grid Accent 2" w:uiPriority="62"/>
+                    <w:lsdException w:name="Medium Shading 1 Accent 2" w:uiPriority="63"/>
+                    <w:lsdException w:name="Medium Shading 2 Accent 2" w:uiPriority="64"/>
+                    <w:lsdException w:name="Medium List 1 Accent 2" w:uiPriority="65"/>
+                    <w:lsdException w:name="Medium List 2 Accent 2" w:uiPriority="66"/>
+                    <w:lsdException w:name="Medium Grid 1 Accent 2" w:uiPriority="67"/>
+                    <w:lsdException w:name="Medium Grid 2 Accent 2" w:uiPriority="68"/>
+                    <w:lsdException w:name="Medium Grid 3 Accent 2" w:uiPriority="69"/>
+                    <w:lsdException w:name="Dark List Accent 2" w:uiPriority="70"/>
+                    <w:lsdException w:name="Colorful Shading Accent 2" w:uiPriority="71"/>
+                    <w:lsdException w:name="Colorful List Accent 2" w:uiPriority="72"/>
+                    <w:lsdException w:name="Colorful Grid Accent 2" w:uiPriority="73"/>
+                    <w:lsdException w:name="Light Shading Accent 3" w:uiPriority="60"/>
+                    <w:lsdException w:name="Light List Accent 3" w:uiPriority="61"/>
+                    <w:lsdException w:name="Light Grid Accent 3" w:uiPriority="62"/>
+                    <w:lsdException w:name="Medium Shading 1 Accent 3" w:uiPriority="63"/>
+                    <w:lsdException w:name="Medium Shading 2 Accent 3" w:uiPriority="64"/>
+                    <w:lsdException w:name="Medium List 1 Accent 3" w:uiPriority="65"/>
+                    <w:lsdException w:name="Medium List 2 Accent 3" w:uiPriority="66"/>
+                    <w:lsdException w:name="Medium Grid 1 Accent 3" w:uiPriority="67"/>
+                    <w:lsdException w:name="Medium Grid 2 Accent 3" w:uiPriority="68"/>
+                    <w:lsdException w:name="Medium Grid 3 Accent 3" w:uiPriority="69"/>
+                    <w:lsdException w:name="Dark List Accent 3" w:uiPriority="70"/>
+                    <w:lsdException w:name="Colorful Shading Accent 3" w:uiPriority="71"/>
+                    <w:lsdException w:name="Colorful List Accent 3" w:uiPriority="72"/>
+                    <w:lsdException w:name="Colorful Grid Accent 3" w:uiPriority="73"/>
+                    <w:lsdException w:name="Light Shading Accent 4" w:uiPriority="60"/>
+                    <w:lsdException w:name="Light List Accent 4" w:uiPriority="61"/>
+                    <w:lsdException w:name="Light Grid Accent 4" w:uiPriority="62"/>
+                    <w:lsdException w:name="Medium Shading 1 Accent 4" w:uiPriority="63"/>
+                    <w:lsdException w:name="Medium Shading 2 Accent 4" w:uiPriority="64"/>
+                    <w:lsdException w:name="Medium List 1 Accent 4" w:uiPriority="65"/>
+                    <w:lsdException w:name="Medium List 2 Accent 4" w:uiPriority="66"/>
+                    <w:lsdException w:name="Medium Grid 1 Accent 4" w:uiPriority="67"/>
+                    <w:lsdException w:name="Medium Grid 2 Accent 4" w:uiPriority="68"/>
+                    <w:lsdException w:name="Medium Grid 3 Accent 4" w:uiPriority="69"/>
+                    <w:lsdException w:name="Dark List Accent 4" w:uiPriority="70"/>
+                    <w:lsdException w:name="Colorful Shading Accent 4" w:uiPriority="71"/>
+                    <w:lsdException w:name="Colorful List Accent 4" w:uiPriority="72"/>
+                    <w:lsdException w:name="Colorful Grid Accent 4" w:uiPriority="73"/>
+                    <w:lsdException w:name="Light Shading Accent 5" w:uiPriority="60"/>
+                    <w:lsdException w:name="Light List Accent 5" w:uiPriority="61"/>
+                    <w:lsdException w:name="Light Grid Accent 5" w:uiPriority="62"/>
+                    <w:lsdException w:name="Medium Shading 1 Accent 5" w:uiPriority="63"/>
+                    <w:lsdException w:name="Medium Shading 2 Accent 5" w:uiPriority="64"/>
+                    <w:lsdException w:name="Medium List 1 Accent 5" w:uiPriority="65"/>
+                    <w:lsdException w:name="Medium List 2 Accent 5" w:uiPriority="66"/>
+                    <w:lsdException w:name="Medium Grid 1 Accent 5" w:uiPriority="67"/>
+                    <w:lsdException w:name="Medium Grid 2 Accent 5" w:uiPriority="68"/>
+                    <w:lsdException w:name="Medium Grid 3 Accent 5" w:uiPriority="69"/>
+                    <w:lsdException w:name="Dark List Accent 5" w:uiPriority="70"/>
+                    <w:lsdException w:name="Colorful Shading Accent 5" w:uiPriority="71"/>
+                    <w:lsdException w:name="Colorful List Accent 5" w:uiPriority="72"/>
+                    <w:lsdException w:name="Colorful Grid Accent 5" w:uiPriority="73"/>
+                    <w:lsdException w:name="Light Shading Accent 6" w:uiPriority="60"/>
+                    <w:lsdException w:name="Light List Accent 6" w:uiPriority="61"/>
+                    <w:lsdException w:name="Light Grid Accent 6" w:uiPriority="62"/>
+                    <w:lsdException w:name="Medium Shading 1 Accent 6" w:uiPriority="63"/>
+                    <w:lsdException w:name="Medium Shading 2 Accent 6" w:uiPriority="64"/>
+                    <w:lsdException w:name="Medium List 1 Accent 6" w:uiPriority="65"/>
+                    <w:lsdException w:name="Medium List 2 Accent 6" w:uiPriority="66"/>
+                    <w:lsdException w:name="Medium Grid 1 Accent 6" w:uiPriority="67"/>
+                    <w:lsdException w:name="Medium Grid 2 Accent 6" w:uiPriority="68"/>
+                    <w:lsdException w:name="Medium Grid 3 Accent 6" w:uiPriority="69"/>
+                    <w:lsdException w:name="Dark List Accent 6" w:uiPriority="70"/>
+                    <w:lsdException w:name="Colorful Shading Accent 6" w:uiPriority="71"/>
+                    <w:lsdException w:name="Colorful List Accent 6" w:uiPriority="72"/>
+                    <w:lsdException w:name="Colorful Grid Accent 6" w:uiPriority="73"/>
+                    <w:lsdException w:name="Subtle Emphasis" w:uiPriority="19" w:qFormat="1"/>
+                    <w:lsdException w:name="Intense Emphasis" w:uiPriority="21" w:qFormat="1"/>
+                    <w:lsdException w:name="Subtle Reference" w:uiPriority="31" w:qFormat="1"/>
+                    <w:lsdException w:name="Intense Reference" w:uiPriority="32" w:qFormat="1"/>
+                    <w:lsdException w:name="Book Title" w:uiPriority="33" w:qFormat="1"/>
+                    <w:lsdException w:name="Bibliography" w:semiHidden="1" w:uiPriority="37" w:unhideWhenUsed="1"/>
+                    <w:lsdException w:name="TOC Heading" w:semiHidden="1" w:uiPriority="39" w:unhideWhenUsed="1" w:qFormat="1"/>
+                </w:latentStyles>
+                <w:style w:type="paragraph" w:default="1" w:styleId="a">
+                    <w:name w:val="Normal"/>
+                    <w:qFormat/>
+                    <w:rsid w:val="00097880"/>
+                    <w:pPr>
+                        <w:widowControl w:val="0"/>
+                        <w:jc w:val="both"/>
+                    </w:pPr>
+                    <w:rPr>
+                        <w:kern w:val="2"/>
+                        <w:sz w:val="21"/>
+                        <w:szCs w:val="24"/>
+                    </w:rPr>
+                </w:style>
+                <w:style w:type="character" w:default="1" w:styleId="a0">
+                    <w:name w:val="Default Paragraph Font"/>
+                    <w:uiPriority w:val="1"/>
+                    <w:semiHidden/>
+                    <w:unhideWhenUsed/>
+                </w:style>
+                <w:style w:type="table" w:default="1" w:styleId="a1">
+                    <w:name w:val="Normal Table"/>
+                    <w:uiPriority w:val="99"/>
+                    <w:semiHidden/>
+                    <w:unhideWhenUsed/>
+                    <w:tblPr>
+                        <w:tblInd w:w="0" w:type="dxa"/>
+                        <w:tblCellMar>
+                            <w:top w:w="0" w:type="dxa"/>
+                            <w:left w:w="108" w:type="dxa"/>
+                            <w:bottom w:w="0" w:type="dxa"/>
+                            <w:right w:w="108" w:type="dxa"/>
+                        </w:tblCellMar>
+                    </w:tblPr>
+                </w:style>
+                <w:style w:type="numbering" w:default="1" w:styleId="a2">
+                    <w:name w:val="No List"/>
+                    <w:uiPriority w:val="99"/>
+                    <w:semiHidden/>
+                    <w:unhideWhenUsed/>
+                </w:style>
+                <w:style w:type="paragraph" w:styleId="a3">
+                    <w:name w:val="header"/>
+                    <w:basedOn w:val="a"/>
+                    <w:rsid w:val="00097880"/>
+                    <w:pPr>
+                        <w:pBdr>
+                            <w:bottom w:val="single" w:sz="6" w:space="1" w:color="auto"/>
+                        </w:pBdr>
+                        <w:tabs>
+                            <w:tab w:val="center" w:pos="4153"/>
+                            <w:tab w:val="right" w:pos="8306"/>
+                        </w:tabs>
+                        <w:snapToGrid w:val="0"/>
+                        <w:jc w:val="center"/>
+                    </w:pPr>
+                    <w:rPr>
+                        <w:sz w:val="18"/>
+                        <w:szCs w:val="18"/>
+                    </w:rPr>
+                </w:style>
+                <w:style w:type="paragraph" w:styleId="a4">
+                    <w:name w:val="footer"/>
+                    <w:basedOn w:val="a"/>
+                    <w:link w:val="a5"/>
+                    <w:uiPriority w:val="99"/>
+                    <w:rsid w:val="00097880"/>
+                    <w:pPr>
+                        <w:tabs>
+                            <w:tab w:val="center" w:pos="4153"/>
+                            <w:tab w:val="right" w:pos="8306"/>
+                        </w:tabs>
+                        <w:snapToGrid w:val="0"/>
+                        <w:jc w:val="left"/>
+                    </w:pPr>
+                    <w:rPr>
+                        <w:sz w:val="18"/>
+                        <w:szCs w:val="18"/>
+                    </w:rPr>
+                </w:style>
+                <w:style w:type="paragraph" w:styleId="a6">
+                    <w:name w:val="Plain Text"/>
+                    <w:basedOn w:val="a"/>
+                    <w:rsid w:val="00097880"/>
+                    <w:rPr>
+                        <w:rFonts w:ascii="宋体" w:hAnsi="Courier New" w:cs="Courier New"/>
+                        <w:szCs w:val="21"/>
+                    </w:rPr>
+                </w:style>
+                <w:style w:type="paragraph" w:customStyle="1" w:styleId="MSMincho">
+                    <w:name w:val="MS Mincho"/>
+                    <w:basedOn w:val="a"/>
+                    <w:rsid w:val="00097880"/>
+                    <w:rPr>
+                        <w:rFonts w:ascii="MS Mincho" w:eastAsia="MS Mincho" w:hAnsi="MS Mincho"/>
+                        <w:sz w:val="24"/>
+                    </w:rPr>
+                </w:style>
+                <w:style w:type="paragraph" w:customStyle="1" w:styleId="1">
+                    <w:name w:val="1"/>
+                    <w:basedOn w:val="a"/>
+                    <w:rsid w:val="00097880"/>
+                    <w:pPr>
+                        <w:widowControl/>
+                        <w:jc w:val="left"/>
+                    </w:pPr>
+                    <w:rPr>
+                        <w:noProof/>
+                        <w:kern w:val="0"/>
+                        <w:sz w:val="24"/>
+                        <w:lang w:eastAsia="de-DE"/>
+                    </w:rPr>
+                </w:style>
+                <w:style w:type="character" w:customStyle="1" w:styleId="a5">
+                    <w:name w:val="页脚字符"/>
+                    <w:basedOn w:val="a0"/>
+                    <w:link w:val="a4"/>
+                    <w:uiPriority w:val="99"/>
+                    <w:rsid w:val="00070B9E"/>
+                    <w:rPr>
+                        <w:kern w:val="2"/>
+                        <w:sz w:val="18"/>
+                        <w:szCs w:val="18"/>
+                    </w:rPr>
+                </w:style>
+            </w:styles>
+        </pkg:xmlData>
+    </pkg:part>
+    <pkg:part pkg:name="/word/fontTable.xml" pkg:contentType="application/vnd.openxmlformats-officedocument.wordprocessingml.fontTable+xml">
+        <pkg:xmlData>
+            <w:fonts mc:Ignorable="w14" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" xmlns:r="http://schemas.openxmlformats.org/officeDocument/2006/relationships" xmlns:w="http://schemas.openxmlformats.org/wordprocessingml/2006/main" xmlns:w14="http://schemas.microsoft.com/office/word/2010/wordml">
+                <w:font w:name="Times New Roman">
+                    <w:panose1 w:val="02020603050405020304"/>
+                    <w:charset w:val="00"/>
+                    <w:family w:val="auto"/>
+                    <w:pitch w:val="variable"/>
+                    <w:sig w:usb0="00000003" w:usb1="00000000" w:usb2="00000000" w:usb3="00000000" w:csb0="00000001" w:csb1="00000000"/>
+                </w:font>
+                <w:font w:name="宋体">
+                    <w:panose1 w:val="02010600030101010101"/>
+                    <w:charset w:val="50"/>
+                    <w:family w:val="auto"/>
+                    <w:pitch w:val="variable"/>
+                    <w:sig w:usb0="00000003" w:usb1="288F0000" w:usb2="00000016" w:usb3="00000000" w:csb0="00040001" w:csb1="00000000"/>
+                </w:font>
+                <w:font w:name="Courier New">
+                    <w:panose1 w:val="02070309020205020404"/>
+                    <w:charset w:val="00"/>
+                    <w:family w:val="auto"/>
+                    <w:pitch w:val="variable"/>
+                    <w:sig w:usb0="00000003" w:usb1="00000000" w:usb2="00000000" w:usb3="00000000" w:csb0="00000001" w:csb1="00000000"/>
+                </w:font>
+                <w:font w:name="MS Mincho">
+                    <w:altName w:val="MS 明朝"/>
+                    <w:charset w:val="80"/>
+                    <w:family w:val="modern"/>
+                    <w:pitch w:val="fixed"/>
+                    <w:sig w:usb0="E00002FF" w:usb1="6AC7FDFB" w:usb2="00000012" w:usb3="00000000" w:csb0="0002009F" w:csb1="00000000"/>
+                </w:font>
+                <w:font w:name="黑体">
+                    <w:panose1 w:val="02010609060101010101"/>
+                    <w:charset w:val="50"/>
+                    <w:family w:val="auto"/>
+                    <w:pitch w:val="variable"/>
+                    <w:sig w:usb0="800002BF" w:usb1="38CF7CFA" w:usb2="00000016" w:usb3="00000000" w:csb0="00040001" w:csb1="00000000"/>
+                </w:font>
+                <w:font w:name="Arial">
+                    <w:panose1 w:val="020B0604020202020204"/>
+                    <w:charset w:val="00"/>
+                    <w:family w:val="auto"/>
+                    <w:pitch w:val="variable"/>
+                    <w:sig w:usb0="00000003" w:usb1="00000000" w:usb2="00000000" w:usb3="00000000" w:csb0="00000001" w:csb1="00000000"/>
+                </w:font>
+                <w:font w:name="Cambria">
+                    <w:panose1 w:val="02040503050406030204"/>
+                    <w:charset w:val="00"/>
+                    <w:family w:val="auto"/>
+                    <w:pitch w:val="variable"/>
+                    <w:sig w:usb0="E00002FF" w:usb1="400004FF" w:usb2="00000000" w:usb3="00000000" w:csb0="0000019F" w:csb1="00000000"/>
+                </w:font>
+                <w:font w:name="Calibri">
+                    <w:panose1 w:val="020F0502020204030204"/>
+                    <w:charset w:val="00"/>
+                    <w:family w:val="auto"/>
+                    <w:pitch w:val="variable"/>
+                    <w:sig w:usb0="E10002FF" w:usb1="4000ACFF" w:usb2="00000009" w:usb3="00000000" w:csb0="0000019F" w:csb1="00000000"/>
+                </w:font>
+            </w:fonts>
+        </pkg:xmlData>
+    </pkg:part>
+    <pkg:part pkg:name="/docProps/core.xml" pkg:contentType="application/vnd.openxmlformats-package.core-properties+xml" pkg:padding="256">
+        <pkg:xmlData>
+            <cp:coreProperties xmlns:cp="http://schemas.openxmlformats.org/package/2006/metadata/core-properties" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:dcterms="http://purl.org/dc/terms/" xmlns:dcmitype="http://purl.org/dc/dcmitype/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
+                <dc:title>绝密★启用前</dc:title>
+                <dc:creator>QMTH</dc:creator>
+                <cp:lastModifiedBy>悦 宋</cp:lastModifiedBy>
+                <cp:revision>22</cp:revision>
+                <cp:lastPrinted>2010-11-01T11:38:00Z</cp:lastPrinted>
+                <dcterms:created xsi:type="dcterms:W3CDTF">2017-03-14T10:02:00Z</dcterms:created>
+                <dcterms:modified xsi:type="dcterms:W3CDTF">2017-04-21T10:31:00Z</dcterms:modified>
+            </cp:coreProperties>
+        </pkg:xmlData>
+    </pkg:part>
+    <pkg:part pkg:name="/word/styles.xml" pkg:contentType="application/vnd.openxmlformats-officedocument.wordprocessingml.styles+xml">
+        <pkg:xmlData>
+            <w:styles mc:Ignorable="w14" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" xmlns:r="http://schemas.openxmlformats.org/officeDocument/2006/relationships" xmlns:w="http://schemas.openxmlformats.org/wordprocessingml/2006/main" xmlns:w14="http://schemas.microsoft.com/office/word/2010/wordml">
+                <w:docDefaults>
+                    <w:rPrDefault>
+                        <w:rPr>
+                            <w:rFonts w:ascii="Times New Roman" w:eastAsia="宋体" w:hAnsi="Times New Roman" w:cs="Times New Roman"/>
+                            <w:lang w:val="en-US" w:eastAsia="zh-CN" w:bidi="ar-SA"/>
+                        </w:rPr>
+                    </w:rPrDefault>
+                    <w:pPrDefault/>
+                </w:docDefaults>
+                <w:latentStyles w:defLockedState="0" w:defUIPriority="0" w:defSemiHidden="0" w:defUnhideWhenUsed="0" w:defQFormat="0" w:count="276">
+                    <w:lsdException w:name="Normal" w:qFormat="1"/>
+                    <w:lsdException w:name="heading 1" w:qFormat="1"/>
+                    <w:lsdException w:name="heading 2" w:semiHidden="1" w:unhideWhenUsed="1" w:qFormat="1"/>
+                    <w:lsdException w:name="heading 3" w:semiHidden="1" w:unhideWhenUsed="1" w:qFormat="1"/>
+                    <w:lsdException w:name="heading 4" w:semiHidden="1" w:unhideWhenUsed="1" w:qFormat="1"/>
+                    <w:lsdException w:name="heading 5" w:semiHidden="1" w:unhideWhenUsed="1" w:qFormat="1"/>
+                    <w:lsdException w:name="heading 6" w:semiHidden="1" w:unhideWhenUsed="1" w:qFormat="1"/>
+                    <w:lsdException w:name="heading 7" w:semiHidden="1" w:unhideWhenUsed="1" w:qFormat="1"/>
+                    <w:lsdException w:name="heading 8" w:semiHidden="1" w:unhideWhenUsed="1" w:qFormat="1"/>
+                    <w:lsdException w:name="heading 9" w:semiHidden="1" w:unhideWhenUsed="1" w:qFormat="1"/>
+                    <w:lsdException w:name="footer" w:uiPriority="99"/>
+                    <w:lsdException w:name="caption" w:semiHidden="1" w:unhideWhenUsed="1" w:qFormat="1"/>
+                    <w:lsdException w:name="Title" w:qFormat="1"/>
+                    <w:lsdException w:name="Subtitle" w:qFormat="1"/>
+                    <w:lsdException w:name="Strong" w:qFormat="1"/>
+                    <w:lsdException w:name="Emphasis" w:qFormat="1"/>
+                    <w:lsdException w:name="Placeholder Text" w:semiHidden="1" w:uiPriority="99"/>
+                    <w:lsdException w:name="No Spacing" w:uiPriority="1" w:qFormat="1"/>
+                    <w:lsdException w:name="Light Shading" w:uiPriority="60"/>
+                    <w:lsdException w:name="Light List" w:uiPriority="61"/>
+                    <w:lsdException w:name="Light Grid" w:uiPriority="62"/>
+                    <w:lsdException w:name="Medium Shading 1" w:uiPriority="63"/>
+                    <w:lsdException w:name="Medium Shading 2" w:uiPriority="64"/>
+                    <w:lsdException w:name="Medium List 1" w:uiPriority="65"/>
+                    <w:lsdException w:name="Medium List 2" w:uiPriority="66"/>
+                    <w:lsdException w:name="Medium Grid 1" w:uiPriority="67"/>
+                    <w:lsdException w:name="Medium Grid 2" w:uiPriority="68"/>
+                    <w:lsdException w:name="Medium Grid 3" w:uiPriority="69"/>
+                    <w:lsdException w:name="Dark List" w:uiPriority="70"/>
+                    <w:lsdException w:name="Colorful Shading" w:uiPriority="71"/>
+                    <w:lsdException w:name="Colorful List" w:uiPriority="72"/>
+                    <w:lsdException w:name="Colorful Grid" w:uiPriority="73"/>
+                    <w:lsdException w:name="Light Shading Accent 1" w:uiPriority="60"/>
+                    <w:lsdException w:name="Light List Accent 1" w:uiPriority="61"/>
+                    <w:lsdException w:name="Light Grid Accent 1" w:uiPriority="62"/>
+                    <w:lsdException w:name="Medium Shading 1 Accent 1" w:uiPriority="63"/>
+                    <w:lsdException w:name="Medium Shading 2 Accent 1" w:uiPriority="64"/>
+                    <w:lsdException w:name="Medium List 1 Accent 1" w:uiPriority="65"/>
+                    <w:lsdException w:name="Revision" w:semiHidden="1" w:uiPriority="99"/>
+                    <w:lsdException w:name="List Paragraph" w:uiPriority="34" w:qFormat="1"/>
+                    <w:lsdException w:name="Quote" w:uiPriority="29" w:qFormat="1"/>
+                    <w:lsdException w:name="Intense Quote" w:uiPriority="30" w:qFormat="1"/>
+                    <w:lsdException w:name="Medium List 2 Accent 1" w:uiPriority="66"/>
+                    <w:lsdException w:name="Medium Grid 1 Accent 1" w:uiPriority="67"/>
+                    <w:lsdException w:name="Medium Grid 2 Accent 1" w:uiPriority="68"/>
+                    <w:lsdException w:name="Medium Grid 3 Accent 1" w:uiPriority="69"/>
+                    <w:lsdException w:name="Dark List Accent 1" w:uiPriority="70"/>
+                    <w:lsdException w:name="Colorful Shading Accent 1" w:uiPriority="71"/>
+                    <w:lsdException w:name="Colorful List Accent 1" w:uiPriority="72"/>
+                    <w:lsdException w:name="Colorful Grid Accent 1" w:uiPriority="73"/>
+                    <w:lsdException w:name="Light Shading Accent 2" w:uiPriority="60"/>
+                    <w:lsdException w:name="Light List Accent 2" w:uiPriority="61"/>
+                    <w:lsdException w:name="Light Grid Accent 2" w:uiPriority="62"/>
+                    <w:lsdException w:name="Medium Shading 1 Accent 2" w:uiPriority="63"/>
+                    <w:lsdException w:name="Medium Shading 2 Accent 2" w:uiPriority="64"/>
+                    <w:lsdException w:name="Medium List 1 Accent 2" w:uiPriority="65"/>
+                    <w:lsdException w:name="Medium List 2 Accent 2" w:uiPriority="66"/>
+                    <w:lsdException w:name="Medium Grid 1 Accent 2" w:uiPriority="67"/>
+                    <w:lsdException w:name="Medium Grid 2 Accent 2" w:uiPriority="68"/>
+                    <w:lsdException w:name="Medium Grid 3 Accent 2" w:uiPriority="69"/>
+                    <w:lsdException w:name="Dark List Accent 2" w:uiPriority="70"/>
+                    <w:lsdException w:name="Colorful Shading Accent 2" w:uiPriority="71"/>
+                    <w:lsdException w:name="Colorful List Accent 2" w:uiPriority="72"/>
+                    <w:lsdException w:name="Colorful Grid Accent 2" w:uiPriority="73"/>
+                    <w:lsdException w:name="Light Shading Accent 3" w:uiPriority="60"/>
+                    <w:lsdException w:name="Light List Accent 3" w:uiPriority="61"/>
+                    <w:lsdException w:name="Light Grid Accent 3" w:uiPriority="62"/>
+                    <w:lsdException w:name="Medium Shading 1 Accent 3" w:uiPriority="63"/>
+                    <w:lsdException w:name="Medium Shading 2 Accent 3" w:uiPriority="64"/>
+                    <w:lsdException w:name="Medium List 1 Accent 3" w:uiPriority="65"/>
+                    <w:lsdException w:name="Medium List 2 Accent 3" w:uiPriority="66"/>
+                    <w:lsdException w:name="Medium Grid 1 Accent 3" w:uiPriority="67"/>
+                    <w:lsdException w:name="Medium Grid 2 Accent 3" w:uiPriority="68"/>
+                    <w:lsdException w:name="Medium Grid 3 Accent 3" w:uiPriority="69"/>
+                    <w:lsdException w:name="Dark List Accent 3" w:uiPriority="70"/>
+                    <w:lsdException w:name="Colorful Shading Accent 3" w:uiPriority="71"/>
+                    <w:lsdException w:name="Colorful List Accent 3" w:uiPriority="72"/>
+                    <w:lsdException w:name="Colorful Grid Accent 3" w:uiPriority="73"/>
+                    <w:lsdException w:name="Light Shading Accent 4" w:uiPriority="60"/>
+                    <w:lsdException w:name="Light List Accent 4" w:uiPriority="61"/>
+                    <w:lsdException w:name="Light Grid Accent 4" w:uiPriority="62"/>
+                    <w:lsdException w:name="Medium Shading 1 Accent 4" w:uiPriority="63"/>
+                    <w:lsdException w:name="Medium Shading 2 Accent 4" w:uiPriority="64"/>
+                    <w:lsdException w:name="Medium List 1 Accent 4" w:uiPriority="65"/>
+                    <w:lsdException w:name="Medium List 2 Accent 4" w:uiPriority="66"/>
+                    <w:lsdException w:name="Medium Grid 1 Accent 4" w:uiPriority="67"/>
+                    <w:lsdException w:name="Medium Grid 2 Accent 4" w:uiPriority="68"/>
+                    <w:lsdException w:name="Medium Grid 3 Accent 4" w:uiPriority="69"/>
+                    <w:lsdException w:name="Dark List Accent 4" w:uiPriority="70"/>
+                    <w:lsdException w:name="Colorful Shading Accent 4" w:uiPriority="71"/>
+                    <w:lsdException w:name="Colorful List Accent 4" w:uiPriority="72"/>
+                    <w:lsdException w:name="Colorful Grid Accent 4" w:uiPriority="73"/>
+                    <w:lsdException w:name="Light Shading Accent 5" w:uiPriority="60"/>
+                    <w:lsdException w:name="Light List Accent 5" w:uiPriority="61"/>
+                    <w:lsdException w:name="Light Grid Accent 5" w:uiPriority="62"/>
+                    <w:lsdException w:name="Medium Shading 1 Accent 5" w:uiPriority="63"/>
+                    <w:lsdException w:name="Medium Shading 2 Accent 5" w:uiPriority="64"/>
+                    <w:lsdException w:name="Medium List 1 Accent 5" w:uiPriority="65"/>
+                    <w:lsdException w:name="Medium List 2 Accent 5" w:uiPriority="66"/>
+                    <w:lsdException w:name="Medium Grid 1 Accent 5" w:uiPriority="67"/>
+                    <w:lsdException w:name="Medium Grid 2 Accent 5" w:uiPriority="68"/>
+                    <w:lsdException w:name="Medium Grid 3 Accent 5" w:uiPriority="69"/>
+                    <w:lsdException w:name="Dark List Accent 5" w:uiPriority="70"/>
+                    <w:lsdException w:name="Colorful Shading Accent 5" w:uiPriority="71"/>
+                    <w:lsdException w:name="Colorful List Accent 5" w:uiPriority="72"/>
+                    <w:lsdException w:name="Colorful Grid Accent 5" w:uiPriority="73"/>
+                    <w:lsdException w:name="Light Shading Accent 6" w:uiPriority="60"/>
+                    <w:lsdException w:name="Light List Accent 6" w:uiPriority="61"/>
+                    <w:lsdException w:name="Light Grid Accent 6" w:uiPriority="62"/>
+                    <w:lsdException w:name="Medium Shading 1 Accent 6" w:uiPriority="63"/>
+                    <w:lsdException w:name="Medium Shading 2 Accent 6" w:uiPriority="64"/>
+                    <w:lsdException w:name="Medium List 1 Accent 6" w:uiPriority="65"/>
+                    <w:lsdException w:name="Medium List 2 Accent 6" w:uiPriority="66"/>
+                    <w:lsdException w:name="Medium Grid 1 Accent 6" w:uiPriority="67"/>
+                    <w:lsdException w:name="Medium Grid 2 Accent 6" w:uiPriority="68"/>
+                    <w:lsdException w:name="Medium Grid 3 Accent 6" w:uiPriority="69"/>
+                    <w:lsdException w:name="Dark List Accent 6" w:uiPriority="70"/>
+                    <w:lsdException w:name="Colorful Shading Accent 6" w:uiPriority="71"/>
+                    <w:lsdException w:name="Colorful List Accent 6" w:uiPriority="72"/>
+                    <w:lsdException w:name="Colorful Grid Accent 6" w:uiPriority="73"/>
+                    <w:lsdException w:name="Subtle Emphasis" w:uiPriority="19" w:qFormat="1"/>
+                    <w:lsdException w:name="Intense Emphasis" w:uiPriority="21" w:qFormat="1"/>
+                    <w:lsdException w:name="Subtle Reference" w:uiPriority="31" w:qFormat="1"/>
+                    <w:lsdException w:name="Intense Reference" w:uiPriority="32" w:qFormat="1"/>
+                    <w:lsdException w:name="Book Title" w:uiPriority="33" w:qFormat="1"/>
+                    <w:lsdException w:name="Bibliography" w:semiHidden="1" w:uiPriority="37" w:unhideWhenUsed="1"/>
+                    <w:lsdException w:name="TOC Heading" w:semiHidden="1" w:uiPriority="39" w:unhideWhenUsed="1" w:qFormat="1"/>
+                </w:latentStyles>
+                <w:style w:type="paragraph" w:default="1" w:styleId="a">
+                    <w:name w:val="Normal"/>
+                    <w:qFormat/>
+                    <w:rsid w:val="00097880"/>
+                    <w:pPr>
+                        <w:widowControl w:val="0"/>
+                        <w:jc w:val="both"/>
+                    </w:pPr>
+                    <w:rPr>
+                        <w:kern w:val="2"/>
+                        <w:sz w:val="21"/>
+                        <w:szCs w:val="24"/>
+                    </w:rPr>
+                </w:style>
+                <w:style w:type="character" w:default="1" w:styleId="a0">
+                    <w:name w:val="Default Paragraph Font"/>
+                    <w:uiPriority w:val="1"/>
+                    <w:semiHidden/>
+                    <w:unhideWhenUsed/>
+                </w:style>
+                <w:style w:type="table" w:default="1" w:styleId="a1">
+                    <w:name w:val="Normal Table"/>
+                    <w:uiPriority w:val="99"/>
+                    <w:semiHidden/>
+                    <w:unhideWhenUsed/>
+                    <w:tblPr>
+                        <w:tblInd w:w="0" w:type="dxa"/>
+                        <w:tblCellMar>
+                            <w:top w:w="0" w:type="dxa"/>
+                            <w:left w:w="108" w:type="dxa"/>
+                            <w:bottom w:w="0" w:type="dxa"/>
+                            <w:right w:w="108" w:type="dxa"/>
+                        </w:tblCellMar>
+                    </w:tblPr>
+                </w:style>
+                <w:style w:type="numbering" w:default="1" w:styleId="a2">
+                    <w:name w:val="No List"/>
+                    <w:uiPriority w:val="99"/>
+                    <w:semiHidden/>
+                    <w:unhideWhenUsed/>
+                </w:style>
+                <w:style w:type="paragraph" w:styleId="a3">
+                    <w:name w:val="header"/>
+                    <w:basedOn w:val="a"/>
+                    <w:rsid w:val="00097880"/>
+                    <w:pPr>
+                        <w:pBdr>
+                            <w:bottom w:val="single" w:sz="6" w:space="1" w:color="auto"/>
+                        </w:pBdr>
+                        <w:tabs>
+                            <w:tab w:val="center" w:pos="4153"/>
+                            <w:tab w:val="right" w:pos="8306"/>
+                        </w:tabs>
+                        <w:snapToGrid w:val="0"/>
+                        <w:jc w:val="center"/>
+                    </w:pPr>
+                    <w:rPr>
+                        <w:sz w:val="18"/>
+                        <w:szCs w:val="18"/>
+                    </w:rPr>
+                </w:style>
+                <w:style w:type="paragraph" w:styleId="a4">
+                    <w:name w:val="footer"/>
+                    <w:basedOn w:val="a"/>
+                    <w:link w:val="a5"/>
+                    <w:uiPriority w:val="99"/>
+                    <w:rsid w:val="00097880"/>
+                    <w:pPr>
+                        <w:tabs>
+                            <w:tab w:val="center" w:pos="4153"/>
+                            <w:tab w:val="right" w:pos="8306"/>
+                        </w:tabs>
+                        <w:snapToGrid w:val="0"/>
+                        <w:jc w:val="left"/>
+                    </w:pPr>
+                    <w:rPr>
+                        <w:sz w:val="18"/>
+                        <w:szCs w:val="18"/>
+                    </w:rPr>
+                </w:style>
+                <w:style w:type="paragraph" w:styleId="a6">
+                    <w:name w:val="Plain Text"/>
+                    <w:basedOn w:val="a"/>
+                    <w:rsid w:val="00097880"/>
+                    <w:rPr>
+                        <w:rFonts w:ascii="宋体" w:hAnsi="Courier New" w:cs="Courier New"/>
+                        <w:szCs w:val="21"/>
+                    </w:rPr>
+                </w:style>
+                <w:style w:type="paragraph" w:customStyle="1" w:styleId="MSMincho">
+                    <w:name w:val="MS Mincho"/>
+                    <w:basedOn w:val="a"/>
+                    <w:rsid w:val="00097880"/>
+                    <w:rPr>
+                        <w:rFonts w:ascii="MS Mincho" w:eastAsia="MS Mincho" w:hAnsi="MS Mincho"/>
+                        <w:sz w:val="24"/>
+                    </w:rPr>
+                </w:style>
+                <w:style w:type="paragraph" w:customStyle="1" w:styleId="1">
+                    <w:name w:val="1"/>
+                    <w:basedOn w:val="a"/>
+                    <w:rsid w:val="00097880"/>
+                    <w:pPr>
+                        <w:widowControl/>
+                        <w:jc w:val="left"/>
+                    </w:pPr>
+                    <w:rPr>
+                        <w:noProof/>
+                        <w:kern w:val="0"/>
+                        <w:sz w:val="24"/>
+                        <w:lang w:eastAsia="de-DE"/>
+                    </w:rPr>
+                </w:style>
+                <w:style w:type="character" w:customStyle="1" w:styleId="a5">
+                    <w:name w:val="页脚字符"/>
+                    <w:basedOn w:val="a0"/>
+                    <w:link w:val="a4"/>
+                    <w:uiPriority w:val="99"/>
+                    <w:rsid w:val="00070B9E"/>
+                    <w:rPr>
+                        <w:kern w:val="2"/>
+                        <w:sz w:val="18"/>
+                        <w:szCs w:val="18"/>
+                    </w:rPr>
+                </w:style>
+            </w:styles>
+        </pkg:xmlData>
+    </pkg:part>
+    <pkg:part pkg:name="/docProps/app.xml" pkg:contentType="application/vnd.openxmlformats-officedocument.extended-properties+xml" pkg:padding="256">
+        <pkg:xmlData>
+            <Properties xmlns="http://schemas.openxmlformats.org/officeDocument/2006/extended-properties" xmlns:vt="http://schemas.openxmlformats.org/officeDocument/2006/docPropsVTypes">
+                <Template>Normal.dotm</Template>
+                <TotalTime>11</TotalTime>
+                <Pages>1</Pages>
+                <Words>17</Words>
+                <Characters>102</Characters>
+                <Application>Microsoft Macintosh Word</Application>
+                <DocSecurity>0</DocSecurity>
+                <Lines>1</Lines>
+                <Paragraphs>1</Paragraphs>
+                <ScaleCrop>false</ScaleCrop>
+                <Company>Lenovo (Beijing) Limited</Company>
+                <LinksUpToDate>false</LinksUpToDate>
+            <CharactersWithSpaces>118</CharactersWithSpaces>
+            <SharedDoc>false</SharedDoc>
+            <HyperlinksChanged>false</HyperlinksChanged>
+            <AppVersion>14.0000</AppVersion>
+        </Properties>
+    </pkg:xmlData>
+</pkg:part>
+</pkg:package>

+ 265 - 6
cqb-gen-paper/src/main/java/com/qmth/cqb/genpaper/service/GenPaperService.java

@@ -5,6 +5,7 @@ import java.math.RoundingMode;
 import java.util.ArrayList;
 import java.util.Collections;
 import java.util.HashMap;
+import java.util.HashSet;
 import java.util.Iterator;
 import java.util.LinkedList;
 import java.util.List;
@@ -16,6 +17,7 @@ import com.qmth.cqb.utils.enums.PaperStructType;
 
 import org.apache.commons.lang3.StringUtils;
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.boot.autoconfigure.info.ProjectInfoProperties.Build;
 import org.springframework.stereotype.Service;
 
 import com.qmth.cqb.base.dao.CourseRepo;
@@ -203,12 +205,271 @@ public class GenPaperService {
         }
 
     }
+    
+    /**
+     * 按分数在选定的试卷中随机抽取题,组成一套新的试卷
+     * @author 	weiwenhai
+     * @param 	genPaperDto
+     * @param 	type
+     * @return	Map<String, Object>
+     */
+    public Map<String, Object> genPaperByScoreW(GenPaperDto genPaperDto) {
+    	//定义返回给前端的集合
+    	Map<String, Object> paperMsgMap = new HashMap<String, Object>();
+    	//获取所有试卷与抽题数
+    	Map<String, Double> paperMap = genPaperDto.getSimpleParams();
+    	paperMsgMap = extractByQuestioScore(paperMap,paperMsgMap,genPaperDto);
+    	return paperMsgMap;
+    }
+    
+    //通过题目分数组卷
+    private Map<String, Object> extractByQuestioScore(Map<String, Double> paperMap,Map<String, Object> paperMsgMap,GenPaperDto genPaperDto){
+    	if(paperMap != null && paperMap.size()>0){
+    		//定义随机选中的小题集合
+    		List<PaperDetailUnit> selectedUnits = new ArrayList<PaperDetailUnit>();
+    		//将所有小题按questionId去重,并按试卷分类
+    		Map<String, List<PaperDetailUnit>> unitMap = sortUnitsByPaper(paperMap);
+    		//随机抽题
+    		for(String paperId : paperMap.keySet()){
+    			//随机抽取分数
+    			Double needScore = paperMap.get(paperId);
+    			//取到该试卷下所有小题
+    			List<PaperDetailUnit> unitList = unitMap.get(paperId);
+    			//试卷总分
+    			Double paperScore = unitList.get(0).getPaper().getTotalScore();
+    			if(paperScore.doubleValue() < needScore.doubleValue()){
+    				paperMsgMap.put("msg", unitList.get(0).getPaper().getName() + "分数不够");
+                    return paperMsgMap;
+    			}
+    			//生成随机抽取的题号
+    			List<Integer> questionsIndex = new ArrayList<Integer>();
+    			questionsIndex = CommonUtils.getTandom(questionsIndex, unitList.size(), unitList.size());
+    			//定义随机抽题的数量
+    			double lastScore = 0;
+    			List<PaperDetailUnit> newDetailUnits = new ArrayList<PaperDetailUnit>();
+    			for(Integer index:questionsIndex){
+    				PaperDetailUnit newUnit = unitList.get(index);
+    				//如果抽题的数量大于所需的题量,跳出循环
+    				if(lastScore >= needScore.doubleValue()){
+    					break;
+    				}
+    				lastScore += newUnit.getScore();
+					newUnit.setId(null);
+					newUnit.setCreator(genPaperDto.getCreator());
+					newUnit.setCreateTime(CommonUtils.getCurDateTime());
+					newDetailUnits.add(newUnit);
+    			}
+    			selectedUnits.addAll(newDetailUnits);
+    		}
+    		//把集合里面的小题按相同的大题分类
+    		Map<String, List<PaperDetailUnit>> map = sortPaperDeatilUnit(selectedUnits);
+    		//构建新的大题
+    		List<PaperDetail> paperDetails = buildPaperDetail(map,genPaperDto);
+    		//构建新的试卷
+    		Paper paper = buildPaper(map,genPaperDto,paperDetails);
+            paperMsgMap.put("paper", paper);
+            paperMsgMap.put("msg", "success");
+    	}
+    	return null;
+    }
 
     /**
      * 按每套试卷需要抽取的题目数量随机抽取题,组成一套新的试卷
-     * 
-     * @return
+     * @author 	weiwenhai
+     * @param 	genPaperDto
+     * @param 	type
+     * @return	Map<String, Object>
      */
+    public Map<String, Object> genPaperByQuestionNumW(GenPaperDto genPaperDto) {
+    	//定义返回给前端的集合
+    	Map<String, Object> paperMsgMap = new HashMap<String, Object>();
+    	//获取所有试卷与抽题数
+    	Map<String, Double> paperMap = genPaperDto.getSimpleParams();
+    	paperMsgMap = extractByQuestionNum(paperMap,paperMsgMap,genPaperDto);
+    	return paperMsgMap;
+    }
+    
+    //通过题目数量组卷
+    private Map<String, Object> extractByQuestionNum(Map<String, Double> paperMap,Map<String, Object> paperMsgMap,GenPaperDto genPaperDto){
+    	if(paperMap != null && paperMap.size()>0){
+    		//定义随机选中的小题集合
+    		List<PaperDetailUnit> selectedUnits = new ArrayList<PaperDetailUnit>();
+    		//将所有小题按questionId去重,并按试卷分类
+    		Map<String, List<PaperDetailUnit>> unitMap = sortUnitsByPaper(paperMap);
+        	//随机抽题
+    		for(String paperId : paperMap.keySet()){
+    			//随机抽题数量
+    			Integer needNumber = Integer.valueOf(paperMap.get(paperId).intValue());
+    			//取到该试卷下所有小题
+    			List<PaperDetailUnit> unitList = unitMap.get(paperId);
+    			//计算所有题目数量
+    			int questionSum = countQuestions(unitList);
+    			if(needNumber>questionSum){
+    				paperMsgMap.put("msg", unitList.get(0).getPaper().getName() + "题源不够");
+                    return paperMsgMap;
+    			}
+    			//生成随机抽取的题号
+    			List<Integer> questionsIndex = new ArrayList<Integer>();
+    			questionsIndex = CommonUtils.getTandom(questionsIndex, needNumber, questionSum);
+    			//定义随机抽题的数量
+    			int lastNumber = 0;
+    			List<PaperDetailUnit> newDetailUnits = new ArrayList<PaperDetailUnit>();
+    			for(Integer index:questionsIndex){
+    				PaperDetailUnit newUnit = unitList.get(index);
+    				//如果抽题的数量大于所需的题量,跳出循环
+    				if(lastNumber >= needNumber){
+    					break;
+    				}
+    				//如果是套题,取子题数量
+    				if(unitList.get(index).getQuestion().getQuestionType() == QuesStructType.NESTED_ANSWER_QUESTION){
+    					List<Question> subQuestions = newUnit.getQuestion().getSubQuestions();
+    					lastNumber += subQuestions.size();
+    				}else {
+    					lastNumber += 1;
+					}
+					newUnit.setId(null);
+					newUnit.setCreator(genPaperDto.getCreator());
+					newUnit.setCreateTime(CommonUtils.getCurDateTime());
+					newDetailUnits.add(newUnit);
+    			}
+    			selectedUnits.addAll(newDetailUnits);
+    		}
+    		//把集合里面的小题按相同的大题分类
+    		Map<String, List<PaperDetailUnit>> map = sortPaperDeatilUnit(selectedUnits);
+    		//构建新的大题
+    		List<PaperDetail> paperDetails = buildPaperDetail(map,genPaperDto);
+    		//构建新的试卷
+    		Paper paper = buildPaper(map,genPaperDto,paperDetails);
+            paperMsgMap.put("paper", paper);
+            paperMsgMap.put("msg", "success");
+    	}
+    	return paperMsgMap;
+    }
+    
+    //将所有小题按questionId去重,并按试卷分类
+    private Map<String, List<PaperDetailUnit>> sortUnitsByPaper(Map<String, Double> paperMap){
+    	if(paperMap != null && paperMap.size()>0){
+    		//所有小题集合
+    		List<PaperDetailUnit> oldUnits = new ArrayList<PaperDetailUnit>();
+    		//取到试卷id
+    		for(String paperId : paperMap.keySet()){
+    			//取到所有小题
+    			Paper paper = paperRepo.findOne(paperId);
+    			List<PaperDetailUnit> unitList = unitRepo.findByPaperOrderByNumber(paper);
+    			oldUnits.addAll(unitList);
+    		}
+    		//如果是卷库来源,进行questionId去重
+    		Set<PaperDetailUnit> spareUnits = new HashSet<PaperDetailUnit>();
+        	spareUnits.addAll(oldUnits);
+        	Map<String, List<PaperDetailUnit>> map = new HashMap<String, List<PaperDetailUnit>>();
+    		List<PaperDetailUnit> units = null;
+    		for(PaperDetailUnit unit:spareUnits){
+    			if(map.get(unit.getPaper().getId()) == null){
+    				units = new ArrayList<PaperDetailUnit>();
+    			}else {
+    				units = map.get(unit.getPaper().getId());
+				}
+    			units.add(unit);
+    			map.put(unit.getPaper().getId(), units);
+    		}
+    		return map;
+    	}
+    	return null;
+    }
+    
+    //构建新的试卷
+    private Paper buildPaper(Map<String, List<PaperDetailUnit>> map,GenPaperDto genPaperDto,List<PaperDetail> paperDetails){
+    	Paper paper = this.constuctPaperByPaperDetails(paperDetails, genPaperDto);
+    	double sum = 0;
+    	for(String name:map.keySet()) {
+    		List<PaperDetailUnit> units = map.get(name);
+    		for(PaperDetailUnit unit:units){
+    			sum += unit.getScore() * unit.getQuestion().getDifficultyDegree();
+    		}
+		}
+    	BigDecimal b = new BigDecimal(sum / paper.getTotalScore());
+		Double difficulty = b.setScale(2,BigDecimal.ROUND_HALF_UP).doubleValue();
+		//赋值难度
+		paper.setDifficultyDegree(difficulty);
+    	paper = paperRepo.save(paper);
+    	for(int i=0;i<paperDetails.size();i++){
+    		PaperDetail paperDetail = paperDetails.get(i);
+    		paperDetail.setNumber(i+1);
+    		paperDetail.setPaper(paper);
+    		paperDetail = paperDetailRepo.save(paperDetail);
+    		List<PaperDetailUnit> units = map.get(paperDetail.getName());
+    		for(int j=0;j<units.size();j++){
+    			PaperDetailUnit paperDetailUnit = units.get(j);
+    			paperDetailUnit.setPaper(paper);
+    			paperDetailUnit.setPaperDetail(paperDetail);
+    			paperDetailUnit.setNumber(j+1);
+    			unitRepo.save(paperDetailUnit);
+    		}
+    	}
+    	return paper;
+    }
+    
+    //构建新的大题
+    private List<PaperDetail> buildPaperDetail(Map<String, List<PaperDetailUnit>> map,GenPaperDto genPaperDto){
+    	//定义新的大题集合
+    	List<PaperDetail> paperDetails = new ArrayList<PaperDetail>();
+    	Double score = 0d;
+    	for(String name:map.keySet()){
+    		PaperDetail paperDetail = new PaperDetail();
+    		paperDetail.setName(name);
+    		paperDetail.setCreateTime(CommonUtils.getCurDateTime());
+    		paperDetail.setCreator(genPaperDto.getCreator());
+    		List<PaperDetailUnit> paperDetailUnits = map.get(name);
+    		for(PaperDetailUnit unit:paperDetailUnits){
+    			score += unit.getScore();
+    		}
+    		paperDetail.setScore(score);
+    		paperDetail.setUnitCount(paperDetailUnits.size());
+    		paperDetails.add(paperDetail);
+    	}
+    	return paperDetails;
+    }
+    
+    //把集合里面的小题按相同的大题分类
+    
+    //把集合里面相同大题的小题分类
+    private Map<String, List<PaperDetailUnit>> sortPaperDeatilUnit(List<PaperDetailUnit> selectedUnits) {
+		Map<String, List<PaperDetailUnit>> map = new HashMap<String, List<PaperDetailUnit>>();
+		List<PaperDetailUnit> units = null;
+		if(selectedUnits != null && selectedUnits.size()>0){
+			for(PaperDetailUnit unit:selectedUnits){
+				String name = unit.getPaperDetail().getName();
+				if(map.get(name) != null){
+					units = map.get(name);
+				}else {
+					units = new ArrayList<PaperDetailUnit>();
+				}
+				units.add(unit);
+				map.put(name, units);
+			}
+		}
+		return map;
+	}
+    
+    //计算所有题目数量
+
+	//计算所有题目数量
+    private int countQuestions(List<PaperDetailUnit> unitList) {
+    	int sum = 0;
+		if(unitList != null && unitList.size()>0){
+			for(PaperDetailUnit unit:unitList){
+				if(unit.getQuestion().getQuestionType() == QuesStructType.NESTED_ANSWER_QUESTION){
+					List<Question> subQuestions = unit.getQuestion().getSubQuestions();
+					sum += subQuestions.size();
+				}else {
+					sum += 1;
+				}
+			}
+		}
+		return sum;
+	}
+    
+    //gaoxing
     public Map<String, Object> genPaperByQuestionNum(GenPaperDto genPaperDto) {
         String msg = "";
         Map<String, Object> paperMsgMap = new HashMap<String, Object>();
@@ -243,7 +504,7 @@ public class GenPaperService {
                     } else {
                         List<Integer> sumList = new ArrayList<Integer>();
                         sumList = CombinationUtils.combiantion(nestQums, needQuesNum, ranmdomNum);
-                        selectedUnits.addAll(this.getNeedUnits(sumList, unitList, needQuesNum));// 有套题情况
+                        selectedUnits.addAll(this.getNeedUnits(sumList, unitList, needQuesNum));//有套题情况
                     }
                 } else {
                     msg = "题源不足,请检查题源";
@@ -257,10 +518,9 @@ public class GenPaperService {
         paperMsgMap.put("paper", paper);
         paperMsgMap.put("msg", msg);
         return paperMsgMap;
-
     }
 
-    /**
+	/**
      * 构造大题
      * 
      * @param units
@@ -494,7 +754,6 @@ public class GenPaperService {
                 chooseNestNum.add(i);
             }
         }
-
         return chooseNestNum;
 
     }

+ 43 - 56
cqb-gen-paper/src/main/java/com/qmth/cqb/genpaper/web/GenPaperController.java

@@ -17,17 +17,17 @@ import com.qmth.cqb.genpaper.model.GenPaperDto;
 import com.qmth.cqb.genpaper.service.GenPaperService;
 import com.qmth.cqb.paper.service.PaperService;
 import com.qmth.cqb.utils.enums.PaperType;
-import com.qmth.cqb.utils.enums.RandomGenPaperPolicy;
 
 import cn.com.qmth.examcloud.common.uac.annotation.Uac;
 import cn.com.qmth.examcloud.common.uac.entity.AccessUser;
 import cn.com.qmth.examcloud.common.uac.enums.RoleMeta;
 import cn.com.qmth.examcloud.common.uac.enums.UacPolicy;
-import cn.com.qmth.examcloud.common.util.ErrorMsg;
 import io.swagger.annotations.ApiOperation;
 
 /**
- * Created by songyue on 16/12/28.
+ * Created by weiwenhai on 16/12/28.
+ * update by wwh on 2018/5/21
+ * @describle 重写简易组卷逻辑
  */
 @RestController
 @RequestMapping("${api_cqb}/")
@@ -42,64 +42,51 @@ public class GenPaperController {
     @ApiOperation(value = "简易随机组卷", notes = "简易随机组卷")
     @Uac(roles={RoleMeta.QUESTION_ADMIN,RoleMeta.SUPER_ADMIN},policy=UacPolicy.IN)
     @PostMapping("/genPaper/simple")
-    public ResponseEntity genPaperSimple(HttpServletRequest request, @RequestBody GenPaperDto genPaperDto) {
+    public ResponseEntity<Object> genPaperSimple(HttpServletRequest request, @RequestBody GenPaperDto genPaperDto) {
         AccessUser user = (AccessUser) request.getAttribute("accessUser");
         genPaperDto.setOrgId(user.getRootOrgId().toString());
         genPaperDto.setCreator(user.getName());
         Map<String, Object> paperMap = new HashMap<String, Object>();
-        String paperName = genPaperDto.getPaperName();
-        //判断试卷名称是否一样
         try {
-			boolean result;
-			result = paperService.checkPaperName(paperName, PaperType.GENERATE,user.getRootOrgId()+"");
+        	//判断试卷名称是否一样
+			boolean result = paperService.checkPaperName(genPaperDto.getPaperName(), PaperType.GENERATE,user.getRootOrgId()+"");
 			if(!result){
-				String msg = "考试试卷:"+paperName+"已经存在";
-				paperMap.put("msg", msg);
-	            return new ResponseEntity(paperMap, HttpStatus.INTERNAL_SERVER_ERROR);
+				paperMap.put("msg", "考试试卷:"+genPaperDto.getPaperName()+"已经存在");
+	            return new ResponseEntity<Object>(paperMap, HttpStatus.INTERNAL_SERVER_ERROR);
+			}
+			//如果是组一套试卷
+			if (genPaperDto.getGenNumber() == 1) {
+				//判断抽题类型  按数量  按分数
+	            if (genPaperDto.getSimpleGenPaperPolicy().getKey() == 1L) {
+	                paperMap = genPaperService.genPaperByQuestionNum(genPaperDto);
+	            }else {
+	                paperMap = genPaperService.genPaperByScore(genPaperDto);
+	            }
+	        }else {
+	        	//如果是组多套试卷
+				for(int i = 1; i <= genPaperDto.getGenNumber(); i++){
+					genPaperDto.setPaperName(genPaperDto.getPaperName() + "_" + i);
+					//判断抽题类型  按数量  按分数
+					if (genPaperDto.getSimpleGenPaperPolicy().getKey() == 1L) {
+		                paperMap.putAll(genPaperService.genPaperByQuestionNum(genPaperDto));
+		            }else {
+		            	paperMap.putAll(genPaperService.genPaperByScore(genPaperDto));
+		            }
+					if (!paperMap.get("msg").equals("success")) {
+						return new ResponseEntity<Object>(paperMap, HttpStatus.INTERNAL_SERVER_ERROR);
+                    }
+				}
 			}
 		} catch (Exception e) {
-			return new ResponseEntity(e.getMessage(),HttpStatus.INTERNAL_SERVER_ERROR);
+			return new ResponseEntity<Object>(e.getMessage(),HttpStatus.INTERNAL_SERVER_ERROR);
 		}
-        if (genPaperDto.getGenNumber() == 1) {
-            if (genPaperDto.getSimpleGenPaperPolicy().getKey() == 1L) {
-                paperMap = genPaperService.genPaperByQuestionNum(genPaperDto);
-            } else if (genPaperDto.getSimpleGenPaperPolicy().getKey() == 2L) {
-                paperMap = genPaperService.genPaperByScore(genPaperDto);
-            }
-        } else if (genPaperDto.getGenNumber() > 1) {
-            if (genPaperDto.getSimpleGenPaperPolicy() == RandomGenPaperPolicy.BY_QUESTIONNUM) {
-                for (int i = 1; i <= genPaperDto.getGenNumber(); i++) {
-                    genPaperDto.setPaperName(paperName + "_" + i);
-                    paperMap.putAll(genPaperService.genPaperByQuestionNum(genPaperDto));
-                    if (!paperMap.get("msg").equals("success")) {
-                        break;
-                    }
-                }
-
-            } else if (genPaperDto.getSimpleGenPaperPolicy() == RandomGenPaperPolicy.BY_SCORE) {
-                for (int i = 1; i <= genPaperDto.getGenNumber(); i++) {
-                    genPaperDto.setPaperName(paperName + "_" + i);
-                    paperMap.putAll(genPaperService.genPaperByScore(genPaperDto));
-                    if (!paperMap.get("msg").equals("success")) {
-                        break;
-                    }
-                }
-
-            }
-
-        }
-        if (paperMap.get("msg").equals("success")) {
-            return new ResponseEntity(paperMap, HttpStatus.OK);
-        } else {
-            return new ResponseEntity(paperMap, HttpStatus.INTERNAL_SERVER_ERROR);
-        }
-
+        return new ResponseEntity<Object>(paperMap, HttpStatus.OK);
     }
 
     @ApiOperation(value = "精细组卷", notes = "精细组卷")
     @Uac(roles={RoleMeta.QUESTION_ADMIN,RoleMeta.SUPER_ADMIN},policy=UacPolicy.IN)
     @PostMapping("/genPaper/normal")
-    public ResponseEntity genPaperNormal(HttpServletRequest request, @RequestBody GenPaperDto genPaperDto) {
+    public ResponseEntity<Object> genPaperNormal(HttpServletRequest request, @RequestBody GenPaperDto genPaperDto) {
         AccessUser user = (AccessUser) request.getAttribute("accessUser");
         genPaperDto.setOrgId(user.getRootOrgId().toString());
         genPaperDto.setCreator(user.getName());
@@ -112,10 +99,10 @@ public class GenPaperController {
 			if(!result){
 				String msg = "考试试卷:"+paperName+"已经存在";
 				paperMap.put("msg", msg);
-	            return new ResponseEntity(paperMap, HttpStatus.INTERNAL_SERVER_ERROR);
+	            return new ResponseEntity<Object>(paperMap, HttpStatus.INTERNAL_SERVER_ERROR);
 			}
 		} catch (Exception e) {
-			return new ResponseEntity(e.getMessage(),HttpStatus.INTERNAL_SERVER_ERROR);
+			return new ResponseEntity<Object>(e.getMessage(),HttpStatus.INTERNAL_SERVER_ERROR);
 		}
         if (genPaperDto.getGenNumber() > 1) {
             for (int i = 1; i <= genPaperDto.getGenNumber(); i++) {
@@ -129,16 +116,16 @@ public class GenPaperController {
             paperMap = genPaperService.genPaper(genPaperDto);
         }
         if (paperMap.get("msg").equals("success")) {
-            return new ResponseEntity(paperMap, HttpStatus.OK);
+            return new ResponseEntity<Object>(paperMap, HttpStatus.OK);
         } else {
-            return new ResponseEntity(paperMap, HttpStatus.INTERNAL_SERVER_ERROR);
+            return new ResponseEntity<Object>(paperMap, HttpStatus.INTERNAL_SERVER_ERROR);
         }
     }
 
     @ApiOperation(value = "蓝图组卷", notes = "蓝图组卷")
     @Uac(roles={RoleMeta.QUESTION_ADMIN,RoleMeta.SUPER_ADMIN},policy=UacPolicy.IN)
     @PostMapping("/genPaper/blue")
-    public ResponseEntity genPaperBlue(HttpServletRequest request, @RequestBody GenPaperDto genPaperDto) {
+    public ResponseEntity<Object> genPaperBlue(HttpServletRequest request, @RequestBody GenPaperDto genPaperDto) {
         AccessUser user = (AccessUser) request.getAttribute("accessUser");
         genPaperDto.setOrgId(user.getRootOrgId().toString());
         genPaperDto.setCreator(user.getName());
@@ -151,10 +138,10 @@ public class GenPaperController {
 			if(!result){
 				String msg = "考试试卷:"+paperName+"已经存在";
 				paperMap.put("msg", msg);
-	            return new ResponseEntity(paperMap, HttpStatus.INTERNAL_SERVER_ERROR);
+	            return new ResponseEntity<Object>(paperMap, HttpStatus.INTERNAL_SERVER_ERROR);
 			}
 		} catch (Exception e) {
-			return new ResponseEntity(e.getMessage(),HttpStatus.INTERNAL_SERVER_ERROR);
+			return new ResponseEntity<Object>(e.getMessage(),HttpStatus.INTERNAL_SERVER_ERROR);
 		}
         if (genPaperDto.getGenNumber() > 1) {
             for (int i = 1; i <= genPaperDto.getGenNumber(); i++) {
@@ -168,9 +155,9 @@ public class GenPaperController {
             paperMap = genPaperService.genBluePaper(genPaperDto);
         }
         if (paperMap.get("msg").equals("success")) {
-            return new ResponseEntity(paperMap, HttpStatus.OK);
+            return new ResponseEntity<Object>(paperMap, HttpStatus.OK);
         } else {
-            return new ResponseEntity(paperMap, HttpStatus.INTERNAL_SERVER_ERROR);
+            return new ResponseEntity<Object>(paperMap, HttpStatus.INTERNAL_SERVER_ERROR);
         }
     }
 

+ 28 - 0
cqb-paper/pom.xml

@@ -38,5 +38,33 @@
             <artifactId>mongodb-driver</artifactId>
             <version>3.4.2</version>
         </dependency>
+        
+        
+        <dependency>
+			<groupId>cn.afterturn</groupId>
+			<artifactId>easypoi-base</artifactId>
+			<version>3.0.1</version>
+		</dependency>
+		<dependency>
+			<groupId>cn.afterturn</groupId>
+			<artifactId>easypoi-web</artifactId>
+			<version>3.0.1</version>
+		</dependency>
+		<dependency>
+			<groupId>cn.afterturn</groupId>
+			<artifactId>easypoi-annotation</artifactId>
+			<version>3.0.1</version>
+		</dependency>
+		<dependency>
+			<groupId>net.sourceforge.jexcelapi</groupId>
+			<artifactId>jxl</artifactId>
+			<version>2.6.10</version>
+		</dependency>
+		<dependency>
+			<groupId>org.apache.poi</groupId>
+			<artifactId>poi-ooxml</artifactId>
+			<version>3.14</version>
+		</dependency>
+        
     </dependencies>
 </project>

+ 10 - 0
cqb-paper/src/main/java/com/qmth/cqb/paper/dao/PaperDetailUnitRepo.java

@@ -1,8 +1,10 @@
 package com.qmth.cqb.paper.dao;
 
 import cn.com.qmth.examcloud.common.dto.question.enums.QuesStructType;
+
 import com.qmth.cqb.paper.model.Paper;
 import com.qmth.cqb.paper.model.PaperDetail;
+
 import org.springframework.data.mongodb.repository.MongoRepository;
 import org.springframework.data.repository.query.QueryByExampleExecutor;
 
@@ -37,4 +39,12 @@ public interface PaperDetailUnitRepo extends MongoRepository<PaperDetailUnit, St
      * @return
      */
     PaperDetailUnit findTopByPaperDetailOrderByNumberAsc(PaperDetail paperDetail);
+    
+    /**
+     * 查询试卷中的第几个试题
+     * @param paper
+     * @param number
+     * @return
+     */
+    PaperDetailUnit findByPaperAndNumber(Paper paper,Integer number);
 }

+ 67 - 0
cqb-paper/src/main/java/com/qmth/cqb/paper/dto/QuestionDistributeDto.java

@@ -0,0 +1,67 @@
+package com.qmth.cqb.paper.dto;
+
+import java.util.Map;
+
+/**
+ * @author 		weiwenhai
+ * @date   		2018.5.3
+ * @company		qmth
+ * @describle	试题分布
+ */
+public class QuestionDistributeDto {
+	
+	private String coursePropertyName;//属性名称
+	
+	private String firstPropertyName;//一级属性
+	
+	private String secondPropertyName;//二级属性
+	
+	/**
+	 * key: 题型-公开度-难度   例:单选题-公开-难(101)
+	 */
+	private Map<Long, Long> map;
+	
+	public QuestionDistributeDto(){
+		
+	}
+	
+	public QuestionDistributeDto(String coursePropertyName,String firstPropertyName,String secondPropertyName,Map<Long, Long> map){
+		this.coursePropertyName = coursePropertyName;
+		this.firstPropertyName = firstPropertyName;
+		this.secondPropertyName = secondPropertyName;
+		this.map = map;
+	}
+
+	public String getCoursePropertyName() {
+		return coursePropertyName;
+	}
+
+	public void setCoursePropertyName(String coursePropertyName) {
+		this.coursePropertyName = coursePropertyName;
+	}
+
+	public String getFirstPropertyName() {
+		return firstPropertyName;
+	}
+
+	public void setFirstPropertyName(String firstPropertyName) {
+		this.firstPropertyName = firstPropertyName;
+	}
+
+	public String getSecondPropertyName() {
+		return secondPropertyName;
+	}
+
+	public void setSecondPropertyName(String secondPropertyName) {
+		this.secondPropertyName = secondPropertyName;
+	}
+
+	public Map<Long, Long> getMap() {
+		return map;
+	}
+
+	public void setMap(Map<Long, Long> map) {
+		this.map = map;
+	}
+
+}

+ 84 - 80
cqb-paper/src/main/java/com/qmth/cqb/paper/model/ImportPaperCheck.java

@@ -1,80 +1,84 @@
-package com.qmth.cqb.paper.model;
-
-/**
- * Created by songyue on 17/3/12.
- */
-public class ImportPaperCheck {
-    public String errorInfo;
-    public String quesGroup;
-    public String quesType;
-    public String quesName;
-    public String quesCount;
-    public String quesScore;
-    public int index;
-
-    public String getErrorInfo() {
-        return errorInfo;
-    }
-
-    public void setErrorInfo(String errorInfo) {
-        this.errorInfo = errorInfo;
-    }
-
-    public String getQuesGroup() {
-        return quesGroup;
-    }
-
-    public void setQuesGroup(String quesGroup) {
-        this.quesGroup = quesGroup;
-    }
-
-    public String getQuesType() {
-        return quesType;
-    }
-
-    public void setQuesType(String quesType) {
-        this.quesType = quesType;
-    }
-
-    public String getQuesName() {
-        return quesName;
-    }
-
-    public void setQuesName(String quesName) {
-        this.quesName = quesName;
-    }
-
-    public String getQuesCount() {
-        return quesCount;
-    }
-
-    public void setQuesCount(String quesCount) {
-        this.quesCount = quesCount;
-    }
-
-    public String getQuesScore() {
-        return quesScore;
-    }
-
-    public void setQuesScore(String quesScore) {
-        this.quesScore = quesScore;
-    }
-
-    public int getIndex() {
-        return index;
-    }
-
-    public void setIndex(int index) {
-        this.index = index;
-    }
-
-    public ImportPaperCheck() {
-        this.errorInfo = "";
-        this.quesGroup = "";
-        this.quesType = "";
-        this.quesName = "";
-        this.quesCount = "";
-        this.quesScore = "";
-        this.index = 0;
-    }
-}
+package com.qmth.cqb.paper.model;
+
+/**
+ * Created by songyue on 17/3/12.
+ */
+public class ImportPaperCheck {
+    public String errorInfo;
+    public String quesGroup;
+    public String quesType;
+    public String quesName;
+    public String quesCount;
+    public String quesScore;
+    public int nestedHeadNumber;//套题
+    public int nestedQuesNumber;//套题数量
+    public int index;
+
+    public String getErrorInfo() {
+        return errorInfo;
+    }
+
+    public void setErrorInfo(String errorInfo) {
+        this.errorInfo = errorInfo;
+    }
+
+    public String getQuesGroup() {
+        return quesGroup;
+    }
+
+    public void setQuesGroup(String quesGroup) {
+        this.quesGroup = quesGroup;
+    }
+
+    public String getQuesType() {
+        return quesType;
+    }
+
+    public void setQuesType(String quesType) {
+        this.quesType = quesType;
+    }
+
+    public String getQuesName() {
+        return quesName;
+    }
+
+    public void setQuesName(String quesName) {
+        this.quesName = quesName;
+    }
+
+    public String getQuesCount() {
+        return quesCount;
+    }
+
+    public void setQuesCount(String quesCount) {
+        this.quesCount = quesCount;
+    }
+
+    public String getQuesScore() {
+        return quesScore;
+    }
+
+    public void setQuesScore(String quesScore) {
+        this.quesScore = quesScore;
+    }
+
+    public int getIndex() {
+        return index;
+    }
+
+    public void setIndex(int index) {
+        this.index = index;
+    }
+
+    public ImportPaperCheck() {
+        this.errorInfo = "";
+        this.quesGroup = "";
+        this.quesType = "";
+        this.quesName = "";
+        this.quesCount = "";
+        this.quesScore = "";
+        this.index = 0;
+        this.nestedQuesNumber = 0;
+        this.nestedHeadNumber = 0;
+    }
+}

+ 8 - 0
cqb-paper/src/main/java/com/qmth/cqb/paper/model/ImportPaperMsg.java

@@ -164,5 +164,13 @@ public class ImportPaperMsg {
      * [公开度]
      */
     public static final String publicity = "[公开度]";
+    /**
+     * [套题]
+     */
+    public static final String nestedQuestion_start = "[套题]";
+    /**
+     * [套题数量]
+     */
+    public static final String nestedQuestion_number = "[套题数量]";
 }
 

+ 27 - 0
cqb-paper/src/main/java/com/qmth/cqb/paper/model/PaperDetailUnit.java

@@ -272,4 +272,31 @@ public class PaperDetailUnit implements Serializable, Comparable<PaperDetailUnit
     public String getDetailId(){
         return this.paperDetail.getId();
     }
+
+	@Override
+	public int hashCode() {
+		final int prime = 31;
+		int result = 1;
+		result = prime * result
+				+ ((question == null) ? 0 : question.hashCode());
+		return result;
+	}
+
+	@Override
+	public boolean equals(Object obj) {
+		if (this == obj)
+			return true;
+		if (obj == null)
+			return false;
+		if (getClass() != obj.getClass())
+			return false;
+		PaperDetailUnit other = (PaperDetailUnit) obj;
+		if (question == null) {
+			if (other.question != null)
+				return false;
+		} else if (!question.equals(other.question))
+			return false;
+		return true;
+	}
+    
 }

+ 16 - 16
cqb-paper/src/main/java/com/qmth/cqb/paper/rpc/PrintCoursePaperClient.java

@@ -1,16 +1,16 @@
-package com.qmth.cqb.paper.rpc;
-
-import org.springframework.cloud.netflix.feign.FeignClient;
-import org.springframework.web.bind.annotation.RequestBody;
-import org.springframework.web.bind.annotation.RequestHeader;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RequestMethod;
-
-import cn.com.qmth.examcloud.common.dto.print.CoursePaperDto;
-
-@FeignClient(value = "ExamCloud-service-print")
-public interface PrintCoursePaperClient {
-	
-	@RequestMapping(method=RequestMethod.POST, value="/api/ecs_print/coursePaper")
-	public String saveCoursePaper(@RequestHeader("user_token") String user_token,@RequestBody CoursePaperDto coursePaperDto);
-}
+package com.qmth.cqb.paper.rpc;
+
+import org.springframework.cloud.netflix.feign.FeignClient;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestHeader;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RequestMethod;
+
+import cn.com.qmth.examcloud.common.dto.print.CoursePaperDto;
+
+@FeignClient(value = "weiwenhai-ExamCloud-service-print")
+public interface PrintCoursePaperClient {
+	
+	@RequestMapping(method=RequestMethod.POST, value="/api/ecs_print/coursePaper")
+	public String saveCoursePaper(@RequestHeader("user_token") String user_token,@RequestBody CoursePaperDto coursePaperDto);
+}

+ 8 - 0
cqb-paper/src/main/java/com/qmth/cqb/paper/service/ExportPaperService.java

@@ -1,5 +1,6 @@
 package com.qmth.cqb.paper.service;
 
+import java.io.IOException;
 import java.util.List;
 
 import javax.servlet.http.HttpServletResponse;
@@ -27,4 +28,11 @@ public interface ExportPaperService {
 	 * @throws Exception
 	 */
 	public void exportPaperFiles(List<String> paperList,String serviceName,String exportContentList,HttpServletResponse response, String loginName, String examType)  throws Exception;
+
+	/**
+	 * 导出课程下的试题分布Excel
+	 * @param courseNo
+	 * @param response
+	 */
+	public void downQuestionDistribute(String courseNo,HttpServletResponse response) throws IOException;
 }

+ 143 - 24
cqb-paper/src/main/java/com/qmth/cqb/paper/service/ImportPaperService.java

@@ -289,8 +289,8 @@ public class ImportPaperService {
                 importPaperCheck.setErrorInfo(importPaperCheck.quesName+ImportPaperMsg.errMsg_10);
                 throw new PaperException(importPaperCheck.errorInfo);
 
-            } else if (pText.matches("^\\d{1,}\\.[\\s\\S]*")
-                    || (isNested(importPaperCheck) && !pText.startsWith(ImportPaperMsg.left_bracket))) {
+            } else if ((pText.matches("^\\d{1,}\\.[\\s\\S]*") && !pText.startsWith(ImportPaperMsg.left_bracket))
+                    || (isNested(importPaperCheck) && pText.startsWith(ImportPaperMsg.nestedQuestion_start))) {
                 if(paperDetail == null){
                     throw new PaperException("导入文件格式有误,必须有大题头信息,且以 [ 开头!");
                 }
@@ -385,7 +385,9 @@ public class ImportPaperService {
         return pText.startsWith(ImportPaperMsg.left_bracket)
                 && !pText.startsWith(ImportPaperMsg.answer_word)
                 && !pText.startsWith(ImportPaperMsg.score_word)
-                && !pText.startsWith(ImportPaperMsg.subQuestionType_word);
+                && !pText.startsWith(ImportPaperMsg.subQuestionType_word)
+                && !pText.startsWith(ImportPaperMsg.nestedQuestion_start)
+                && !pText.startsWith(ImportPaperMsg.nestedQuestion_number);
     }
 
     public boolean isHeader(String pText){
@@ -396,7 +398,9 @@ public class ImportPaperService {
                 || pText.startsWith(ImportPaperMsg.score_word)
                 || pText.startsWith(ImportPaperMsg.answer_word)
                 || pText.startsWith(ImportPaperMsg.subQuestionType_word)
-                || pText.startsWith(ImportPaperMsg.subQuesScore_word);
+                || pText.startsWith(ImportPaperMsg.subQuesScore_word)
+                || pText.startsWith(ImportPaperMsg.nestedQuestion_start)
+                || pText.startsWith(ImportPaperMsg.nestedQuestion_number);
     }
 
     /**
@@ -562,6 +566,59 @@ public class ImportPaperService {
         importPaperCheck.setIndex(i);
     }
 
+    /**
+     * 处理套题的头信息
+     * @param pList
+     * @param index
+     * @param subQuesNum
+     * @param question
+     * @param importPaperCheck
+     * @param wordMLPackage
+     * @throws Exception 
+     */
+    public void processNestedQuestionHead(List<Object> pList, int index, int subQuesNum,Question question, 
+    		ImportPaperCheck importPaperCheck) throws Exception{
+    	int i = 0;
+    	for(i=index;i<pList.size();i++){
+    		P pHeader = (P)pList.get(i);
+    		P pNextHeader = (P)pList.get(i+1);
+    		String tmpText = DocxProcessUtil.getPText(pHeader);
+            String nextTmpText = DocxProcessUtil.getPText(pNextHeader);
+            if (StringUtils.isEmpty(tmpText)) {
+                // 跳过空白段落
+                continue;
+            } else if (tmpText.startsWith(ImportPaperMsg.nestedQuestion_start)) {
+				if(!nextTmpText.startsWith(ImportPaperMsg.nestedQuestion_number)){
+					importPaperCheck.setErrorInfo("[套题]的下一题头应该是[套题数量],当前读到的信息为:“"+nextTmpText+"”,请检查word中格式问题");
+                	throw new PaperException(importPaperCheck.errorInfo);
+				}
+				if(StringUtils.isBlank(getContent(nextTmpText,ImportPaperMsg.nestedQuestion_start))){
+					importPaperCheck.setErrorInfo("[套题]的后面没有值,当前读到的信息为:“"+nextTmpText+"”,请检查word中格式问题");
+                	throw new PaperException(importPaperCheck.errorInfo);
+				}
+				if(StringUtils.isBlank(getContent(nextTmpText,ImportPaperMsg.nestedQuestion_number))){
+					importPaperCheck.setErrorInfo("[套题数量]的后面没有值,当前读到的信息为:“"+nextTmpText+"”,请检查word中格式问题");
+                	throw new PaperException(importPaperCheck.errorInfo);
+				}
+				Pattern pattern = Pattern.compile("[0-9]*");
+				boolean isHeadNumber = pattern.matcher(getContent(tmpText,ImportPaperMsg.nestedQuestion_start)).matches();
+				boolean isNumber = pattern.matcher(getContent(nextTmpText,ImportPaperMsg.nestedQuestion_number)).matches();
+				if(!isHeadNumber){
+			    	importPaperCheck.setErrorInfo("[套题]后面应该为整数,当前读到的信息为:“"+tmpText+"”,请检查word中格式问题");
+                	throw new PaperException(importPaperCheck.errorInfo);
+			    }
+			    if(!isNumber){
+			    	importPaperCheck.setErrorInfo("[套题数量]应该为整数,当前读到的信息为:“"+nextTmpText+"”,请检查word中格式问题");
+                	throw new PaperException(importPaperCheck.errorInfo);
+			    }
+			    importPaperCheck.nestedHeadNumber = Integer.parseInt(getContent(tmpText,ImportPaperMsg.nestedQuestion_start));
+			    importPaperCheck.nestedQuesNumber = Integer.parseInt(getContent(nextTmpText,ImportPaperMsg.nestedQuestion_number));
+			} else {
+				importPaperCheck.setIndex(i+1);
+				break;
+			}
+    	}
+    }
     /**
      * 处理题干信息
      *
@@ -651,10 +708,13 @@ public class ImportPaperService {
                 // 跳过空白段落
                 continue;
             } else if (DocxProcessUtil.isNumPr(pOption)) {
-                // 检测到序列
-                importPaperCheck.setErrorInfo(getQuesNumInfo(importPaperCheck.quesName, subQuesNum)+ImportPaperMsg.errMsg_11);
+            	// 检测到序列
+            	if(importPaperCheck.nestedHeadNumber!= 0){
+        			importPaperCheck.setErrorInfo(importPaperCheck.quesName+"第"+importPaperCheck.nestedHeadNumber+"个题"+subQuesNum+ImportPaperMsg.errMsg_11);
+        		}else {
+        			importPaperCheck.setErrorInfo(getQuesNumInfo(importPaperCheck.quesName, subQuesNum)+ImportPaperMsg.errMsg_11);
+    			}
                 throw new PaperException(importPaperCheck.errorInfo);
-
             } else if (tmpText.matches("^[a-zA-Z]\\.[\\s\\S]*")) {
                 // 检测到选项开始段落
                 // 创建试题选项
@@ -662,7 +722,11 @@ public class ImportPaperService {
                 current = new QuesOption();
                 int optionNumber = DocxProcessUtil.getOptionNum(tmpText);
                 if(optionNumber != number){
-                    importPaperCheck.setErrorInfo(getQuesNumInfo(importPaperCheck.quesName, subQuesNum)+ImportPaperMsg.errMsg_13);
+                	if(importPaperCheck.nestedHeadNumber!= 0){
+            			importPaperCheck.setErrorInfo(importPaperCheck.quesName+"第"+importPaperCheck.nestedHeadNumber+"个题"+subQuesNum+ImportPaperMsg.errMsg_13);
+            		}else {
+            			importPaperCheck.setErrorInfo(getQuesNumInfo(importPaperCheck.quesName, subQuesNum)+ImportPaperMsg.errMsg_13);
+        			}
                     throw new PaperException(importPaperCheck.errorInfo);
                 }
                 current.setNumber(String.valueOf(optionNumber));
@@ -689,7 +753,11 @@ public class ImportPaperService {
         }
         importPaperCheck.setIndex(i);
         if (optionCount < 2) {
-            importPaperCheck.setErrorInfo(getQuesNumInfo(importPaperCheck.quesName, subQuesNum)+ "中选项格式不正确或有缺失\n");
+        	if(importPaperCheck.nestedHeadNumber!= 0){
+    			importPaperCheck.setErrorInfo(importPaperCheck.quesName+"第"+importPaperCheck.nestedHeadNumber+"个题"+subQuesNum+"中选项格式不正确或有缺失\n");
+    		}else {
+    			importPaperCheck.setErrorInfo(getQuesNumInfo(importPaperCheck.quesName, subQuesNum)+"中选项格式不正确或有缺失\n");
+			}
             throw new PaperException(importPaperCheck.errorInfo);
         } else {
             question.setQuesOptions(quesOptions);
@@ -842,7 +910,11 @@ public class ImportPaperService {
     		ImportPaperCheck importPaperCheck, int subQuesNum,Paper paper, List<QuesProperty> quesProperties) throws Exception{
 		//一级属性为空,二级属性有值
 		if(StringUtils.isBlank(firstProperty) && StringUtils.isNotBlank(secondProperty)){
-			importPaperCheck.setErrorInfo(getQuesNumInfo(importPaperCheck.quesName, subQuesNum)+"中,小题一级属性值为空,请检查");
+			if(importPaperCheck.nestedHeadNumber!= 0){
+    			importPaperCheck.setErrorInfo(importPaperCheck.quesName+"第"+importPaperCheck.nestedHeadNumber+"个题"+subQuesNum+"中,小题一级属性值为空,请检查");
+    		}else {
+    			importPaperCheck.setErrorInfo(getQuesNumInfo(importPaperCheck.quesName, subQuesNum)+"中,小题一级属性值为空,请检查");
+			}
     		throw new PaperException(importPaperCheck.errorInfo);
 		}
 		//一级属性,二级属性都有值
@@ -852,7 +924,11 @@ public class ImportPaperService {
 			//根据课程查询所有课程属性树
 			List<CourseProperty> courseProperties = coursePropertyRepo.findByCourseCodeAndEnable(paper.getCourse().getCode(), true);
 			if(courseProperties == null || courseProperties.size()<1){
-				importPaperCheck.setErrorInfo(getQuesNumInfo(importPaperCheck.quesName, subQuesNum)+"中,没有设置课程属性结构,请先设置课程属性结构");
+				if(importPaperCheck.nestedHeadNumber!= 0){
+	    			importPaperCheck.setErrorInfo(importPaperCheck.quesName+"第"+importPaperCheck.nestedHeadNumber+"个题"+subQuesNum+"中,没有设置课程属性结构,请先设置课程属性结构");
+	    		}else {
+	    			importPaperCheck.setErrorInfo(getQuesNumInfo(importPaperCheck.quesName, subQuesNum)+"中,没有设置课程属性结构,请先设置课程属性结构");
+				}
 	    		throw new PaperException(importPaperCheck.errorInfo);
 			}
 			for(CourseProperty courseProperty:courseProperties){
@@ -860,7 +936,7 @@ public class ImportPaperService {
 				//查询一级属性是否存在
 				List<Property> propertieParents = propertyRepo.findAll(Example.of(propertyParent));
 				//存在一级属性
-				if(propertieParents != null || propertieParents.size()>0){
+				if(propertieParents != null && propertieParents.size()>0){
 					isFirstEmpty = false;
 					for(Property proParent:propertieParents){
 						Property propertySon = new Property(secondProperty,proParent.getId(),courseProperty.getId());
@@ -881,11 +957,19 @@ public class ImportPaperService {
 				}
 			}
 			if(isFirstEmpty){
-				importPaperCheck.setErrorInfo(getQuesNumInfo(importPaperCheck.quesName, subQuesNum)+"中,小题一级属性值与课程属性中一级属性不匹配,请检查");
+				if(importPaperCheck.nestedHeadNumber!= 0){
+	    			importPaperCheck.setErrorInfo(importPaperCheck.quesName+"第"+importPaperCheck.nestedHeadNumber+"个题"+subQuesNum+"中,小题一级属性值与课程属性中一级属性不匹配,请检查");
+	    		}else {
+	    			importPaperCheck.setErrorInfo(getQuesNumInfo(importPaperCheck.quesName, subQuesNum)+"中,小题一级属性值与课程属性中一级属性不匹配,请检查");
+				}
 	    		throw new PaperException(importPaperCheck.errorInfo);
 			}
 			if(isSecondEmpty){
-				importPaperCheck.setErrorInfo(getQuesNumInfo(importPaperCheck.quesName, subQuesNum)+"中,小题二级属性值与课程属性中二级属性不匹配,请检查");
+				if(importPaperCheck.nestedHeadNumber!= 0){
+	    			importPaperCheck.setErrorInfo(importPaperCheck.quesName+"第"+importPaperCheck.nestedHeadNumber+"个题"+subQuesNum+"中,小题二级属性值与课程属性中二级属性不匹配,请检查");
+	    		}else {
+	    			importPaperCheck.setErrorInfo(getQuesNumInfo(importPaperCheck.quesName, subQuesNum)+"中,小题二级属性值与课程属性中二级属性不匹配,请检查");
+				}
 	    		throw new PaperException(importPaperCheck.errorInfo);
 			}
 		}
@@ -896,7 +980,11 @@ public class ImportPaperService {
 			//根据课程查询所有课程属性树
 			List<CourseProperty> courseProperties = coursePropertyRepo.findByCourseCodeAndEnable(paper.getCourse().getCode(), true);
 			if(courseProperties == null || courseProperties.size()<1){
-				importPaperCheck.setErrorInfo(getQuesNumInfo(importPaperCheck.quesName, subQuesNum)+"中,没有设置课程属性结构,请先设置课程属性结构");
+				if(importPaperCheck.nestedHeadNumber!= 0){
+	    			importPaperCheck.setErrorInfo(importPaperCheck.quesName+"第"+importPaperCheck.nestedHeadNumber+"个题"+subQuesNum+"中,没有设置课程属性结构,请先设置课程属性结构");
+	    		}else {
+	    			importPaperCheck.setErrorInfo(getQuesNumInfo(importPaperCheck.quesName, subQuesNum)+"中,没有设置课程属性结构,请先设置课程属性结构");
+				}
 	    		throw new PaperException(importPaperCheck.errorInfo);
 			}
 			for(CourseProperty courseProperty:courseProperties){
@@ -924,11 +1012,19 @@ public class ImportPaperService {
 				}
 			}
 			if(isFirstEmpty){
-				importPaperCheck.setErrorInfo(getQuesNumInfo(importPaperCheck.quesName, subQuesNum)+"中,小题一级属性值与课程属性中一级属性不匹配,请检查");
+				if(importPaperCheck.nestedHeadNumber!= 0){
+	    			importPaperCheck.setErrorInfo(importPaperCheck.quesName+"第"+importPaperCheck.nestedHeadNumber+"个题"+subQuesNum+"中,小题一级属性值与课程属性中一级属性不匹配,请检查");
+	    		}else {
+	    			importPaperCheck.setErrorInfo(getQuesNumInfo(importPaperCheck.quesName, subQuesNum)+"中,小题一级属性值与课程属性中一级属性不匹配,请检查");
+				}
 	    		throw new PaperException(importPaperCheck.errorInfo);
 			}
 			if(isSecondEmpty){
-				importPaperCheck.setErrorInfo(getQuesNumInfo(importPaperCheck.quesName, subQuesNum)+"中,小题二级属性值与课程属性中二级属性不匹配,请检查");
+				if(importPaperCheck.nestedHeadNumber!= 0){
+	    			importPaperCheck.setErrorInfo(importPaperCheck.quesName+"第"+importPaperCheck.nestedHeadNumber+"个题"+subQuesNum+"中,小题二级属性值与课程属性中二级属性不匹配,请检查");
+	    		}else {
+	    			importPaperCheck.setErrorInfo(getQuesNumInfo(importPaperCheck.quesName, subQuesNum)+"中,小题二级属性值与课程属性中二级属性不匹配,请检查");
+				}
 	    		throw new PaperException(importPaperCheck.errorInfo);
 			}
 		}//一级,二级都为空
@@ -947,19 +1043,35 @@ public class ImportPaperService {
     private void checkAttributeIsFull(String firstProperty,String secondProperty, Double difficulty, 
     		Boolean publicity,ImportPaperCheck importPaperCheck,int subQuesNum) throws Exception{
     	if(firstProperty == null){
-    		importPaperCheck.setErrorInfo(getQuesNumInfo(importPaperCheck.quesName, subQuesNum)+"中,小题一级属性缺失,请检查");
+    		if(importPaperCheck.nestedHeadNumber!= 0){
+    			importPaperCheck.setErrorInfo(importPaperCheck.quesName+"第"+importPaperCheck.nestedHeadNumber+"个题"+subQuesNum+"中,小题一级属性缺失,请检查");
+    		}else {
+    			importPaperCheck.setErrorInfo(getQuesNumInfo(importPaperCheck.quesName, subQuesNum)+"中,小题一级属性缺失,请检查");
+			}
     		throw new PaperException(importPaperCheck.errorInfo);
     	}
     	if(secondProperty == null){
-    		importPaperCheck.setErrorInfo(getQuesNumInfo(importPaperCheck.quesName, subQuesNum)+"中,小题二级属性缺失,请检查");
+    		if(importPaperCheck.nestedHeadNumber!= 0){
+    			importPaperCheck.setErrorInfo(importPaperCheck.quesName+"第"+importPaperCheck.nestedHeadNumber+"个题"+subQuesNum+"中,小题二级属性缺失,请检查");
+    		}else {
+    			importPaperCheck.setErrorInfo(getQuesNumInfo(importPaperCheck.quesName, subQuesNum)+"中,小题二级属性缺失,请检查");
+			}
     		throw new PaperException(importPaperCheck.errorInfo);
     	}
     	if(difficulty == null){
-    		importPaperCheck.setErrorInfo(getQuesNumInfo(importPaperCheck.quesName, subQuesNum)+"中,小题难度缺失,请检查");
+    		if(importPaperCheck.nestedHeadNumber!= 0){
+    			importPaperCheck.setErrorInfo(importPaperCheck.quesName+"第"+importPaperCheck.nestedHeadNumber+"个题"+subQuesNum+"中,小题难度缺失,请检查");
+    		}else {
+    			importPaperCheck.setErrorInfo(getQuesNumInfo(importPaperCheck.quesName, subQuesNum)+"中,小题难度缺失,请检查");
+			}
     		throw new PaperException(importPaperCheck.errorInfo);
     	}
     	if(publicity == null){
-    		importPaperCheck.setErrorInfo(getQuesNumInfo(importPaperCheck.quesName, subQuesNum)+"中,小题公开性缺失,请检查");
+    		if(importPaperCheck.nestedHeadNumber!= 0){
+    			importPaperCheck.setErrorInfo(importPaperCheck.quesName+"第"+importPaperCheck.nestedHeadNumber+"个题"+subQuesNum+"中,小题公开性缺失,请检查");
+    		}else {
+    			importPaperCheck.setErrorInfo(getQuesNumInfo(importPaperCheck.quesName, subQuesNum)+"中,小题公开性缺失,请检查");
+			}
     		throw new PaperException(importPaperCheck.errorInfo);
     	}
 	}
@@ -999,8 +1111,10 @@ public class ImportPaperService {
             ImportPaperCheck importPaperCheck, WordprocessingMLPackage wordMLPackage,Paper paper) throws Exception {
         // 题型
         String nestedQuesType = "";
+        //处理套题的头信息
+        processNestedQuestionHead(pList,index,0,question,importPaperCheck);
         // 设置套题题干
-        processQuesBody(pList, index, 0,question, importPaperCheck, wordMLPackage);
+        processQuesBody(pList, importPaperCheck.index, 0,question, importPaperCheck, wordMLPackage);
         // 创建小题集合
         List<Question> subQuesList = new ArrayList<Question>();
         Question subQues = null;
@@ -1061,6 +1175,11 @@ public class ImportPaperService {
                 return;
             }
         }
+        //判断子题数量是否一样
+        if(importPaperCheck.nestedQuesNumber!=subQuesList.size()){
+        	importPaperCheck.setErrorInfo(importPaperCheck.quesName+"第"+importPaperCheck.nestedHeadNumber+"个套题"+"中,套题数量与子题数量不一样,请检查套题");
+        	throw new PaperException(importPaperCheck.errorInfo);
+        }
         question.setSubQuestions(subQuesList);
         // 设置套题主题干的 难度,公开度,一级属性,二级属性
         setAttributes(question,subQuesList);
@@ -1262,13 +1381,13 @@ public class ImportPaperService {
     		if(unitNumMap.containsKey(key)){
     			int value = unitNumMap.get(key);
     			if(paperDetailUnit.getQuestionType()==QuesStructType.NESTED_ANSWER_QUESTION){
-    				unitNumMap.put(key,value+paperDetailUnit.getSubScoreList().size());
+    				unitNumMap.put(key,value+1);
     			}else{
     				unitNumMap.put(key, value+1);
     			}
     		}else{
     			if(paperDetailUnit.getQuestionType()==QuesStructType.NESTED_ANSWER_QUESTION){
-    				unitNumMap.put(key,paperDetailUnit.getSubScoreList().size());
+    				unitNumMap.put(key,1);
     			}else{
     				unitNumMap.put(key, 1);
     			}

+ 2 - 2
cqb-paper/src/main/java/com/qmth/cqb/paper/service/PaperService.java

@@ -207,7 +207,7 @@ public interface PaperService {
 
     public void checkPaperNameNew(String paperName, String orgId)throws Exception;
 
-    public Page<Paper> getImportPapersNotInIds(PaperSearchInfo paperSearchInfo, String[] ids, int curPage,int pageSize);
+    public Page<Paper> getPapersNotInIds(PaperSearchInfo paperSearchInfo, String[] ids, int curPage,int pageSize,PaperType paperType);
     /**
      * 将选中的导入试卷复制为卷库试卷
      */
@@ -275,5 +275,5 @@ public interface PaperService {
 	 * 根据试卷id查询主观题与客观题的数量
 	 * @param paperId
 	 */
-	public Map<String, QuestionAllTypeDto> findQuestionStructure(String paperId,AccessUser user) throws Exception;
+	public QuestionAllTypeDto findQuestionStructure(String paperId,AccessUser user) throws Exception;
 }

+ 9 - 3
cqb-paper/src/main/java/com/qmth/cqb/paper/service/export/DzkdExportPaperService.java

@@ -292,13 +292,13 @@ public class DzkdExportPaperService extends ExportPaperAbstractService {
 	}
 	
 	@Override
-    public void uploadFile(ExtractConfig extractConfig,String paperId,ExportStructure exportStructure,AccessUser accessUser) throws Exception{
+    public void uploadFile(ExtractConfig extractConfig,String paperId,AccessUser accessUser) throws Exception{
     	PaperExp paperExp = initPaperExp(paperId);
     	setSplitPaperDetailExp(paperExp,paperExp.getPaperDetails());
         if (paperExp!=null) {
         	String currNum = CommonUtils.getCurNum();
         	//没有试卷结构导出设置
-        	if(exportStructure==null){
+        	/*if(exportStructure==null){
         		//上传试卷
         		uploadPaperOrAnswerFile(paperExp,extractConfig,accessUser,currNum,DZKD_TEMPLATE_PAPER,ExamFileType.PAPER);
 	        	//上传答案
@@ -316,7 +316,13 @@ public class DzkdExportPaperService extends ExportPaperAbstractService {
         	}else if(exportStructure!=null&&exportStructure.getExportType()==ExportType.ONLINE){
         		//上传机考JSON文件
         		uploadComputerTestFile(extractConfig,accessUser);
-        	}
+        	}*/
+        	//上传试卷
+    		uploadPaperOrAnswerFile(paperExp,extractConfig,accessUser,currNum,DZKD_TEMPLATE_PAPER,ExamFileType.PAPER);
+        	//上传答案
+    		uploadPaperOrAnswerFile(paperExp,extractConfig,accessUser,currNum,DZKD_TEMPLATE_ANSWER,ExamFileType.ANSWER);
+    		//上传机考JSON文件
+    		uploadComputerTestFile(extractConfig,accessUser);
         }
     }
 

+ 79 - 2
cqb-paper/src/main/java/com/qmth/cqb/paper/service/export/ExportPaperAbstractService.java

@@ -186,6 +186,9 @@ public abstract class ExportPaperAbstractService {
 	//武汉软件工程职业学院模板
 	protected static Template RJGC_TMPLATE_PAPER;
 	protected static Template RJGC_TMPLATE_ANSWER;
+	
+	//北京师范模板
+	protected static Template BJSF_TMPLATE_PAPER;
 
 	@Value("${upyun.bucketName}")
 	protected String bucketName;
@@ -243,6 +246,8 @@ public abstract class ExportPaperAbstractService {
 			
 			RJGC_TMPLATE_PAPER = CONFIGURATION.getTemplate("rjgc_paper_template.ftl", ENCODING);
 			RJGC_TMPLATE_ANSWER = CONFIGURATION.getTemplate("rjgc_answer_template.ftl", ENCODING);
+			
+			BJSF_TMPLATE_PAPER = CONFIGURATION.getTemplate("bjsf_paper_template.ftl", ENCODING);
 		} catch (Exception e) {
 			e.printStackTrace();
 		}
@@ -270,7 +275,7 @@ public abstract class ExportPaperAbstractService {
 	 * @param accessUser
 	 * @throws Exception
 	 */
-    public abstract void uploadFile(ExtractConfig extractConfig,String paperId,ExportStructure exportStructure,AccessUser accessUser)  throws Exception;
+    public abstract void uploadFile(ExtractConfig extractConfig,String paperId,AccessUser accessUser)  throws Exception;
     
     public PaperExp initPaperExp(String paperId) throws Exception{
     	PaperExp paperExp = initPaperExpService.initPaperExp(paperId);
@@ -823,15 +828,18 @@ public abstract class ExportPaperAbstractService {
     	for(Long sortNumber:map.keySet()){
     		List<PaperDetailUnitExp> paperDetailUnitExps = map.get(sortNumber);
     		int number = 1;
+    		int order = 1;//套题序号
     		if(paperDetailUnitExps != null && paperDetailUnitExps.size()>0){
     			for(int i = 0;i<paperDetailUnitExps.size();i++){
     				PaperDetailUnitExp paperDetailUnitExp = paperDetailUnitExps.get(i);
     				if(paperDetailUnitExp.getQuestionType() == QuesStructType.NESTED_ANSWER_QUESTION){
+    					paperDetailUnitExp.setNumber(order);
     					List<Question> subQuestions = paperDetailUnitExp.getQuestion().getSubQuestions();
     					for(int j = 0;j<subQuestions.size();j++){
     						subQuestions.get(j).setNumber(number+j);
     					}
     					number += subQuestions.size();
+    					order++;
     				}else {
     					paperDetailUnitExp.setNumber(number);
     					number++;
@@ -1096,7 +1104,6 @@ public abstract class ExportPaperAbstractService {
 			e.printStackTrace();
 		}
     }
-    
 
    	/**
      * 获得主观题导出结构,并上传至又拍云
@@ -1366,5 +1373,75 @@ public abstract class ExportPaperAbstractService {
 		return paperType;
     }
     
+    /**
+     * 下载试卷音频
+     * @param paperId
+     * @param zipFileName
+     */
+	public void downloadAudio(PaperExp paperExp, String zipFileName) {
+		//取到所有大题
+		List<PaperDetailExp> paperDetailExps = paperExp.getPaperDetails();
+		if(paperDetailExps != null && paperDetailExps.size()>0){
+			for(PaperDetailExp paperDetailExp:paperDetailExps){
+				//取到所有小题
+				List<PaperDetailUnitExp> paperDetailUnitExps = paperDetailExp.getPaperDetailUnits();
+				if(paperDetailUnitExps != null && paperDetailUnitExps.size()>0){
+					for(PaperDetailUnitExp unit:paperDetailUnitExps){
+						if(unit.getQuestion().getHasAudio()!=null&&unit.getQuestion().getHasAudio()){
+							List<QuestionAudio> questionAudios = questionAudioService.findQuestionAudiosByQuestionId(unit.getQuestion().getId());
+							for(QuestionAudio audio:questionAudios){
+								String audioFileName = paperExp.getCourseName()
+														+"_"+paperExp.getName()
+														+"_试卷_"
+														+"_"+getAudioFileName(audio,unit,paperDetailExp);
+								UpYun upyun = new UpYun(bucketName,userName,password);
+								File file = new File(TEMP_FILE_EXP+File.separator+zipFileName+File.separator+audioFileName);
+								upyun.readFile(audio.getFileUrl(), file);
+							}
+						}
+					}
+				}
+			}
+		}
+	}
+	
+	/**
+	 * 计算取得音频文件名称
+	 * @param audio
+	 * @param unit
+	 * @return
+	 */
+	private String getAudioFileName(QuestionAudio audio,PaperDetailUnitExp unit,PaperDetailExp paperDetailExp){
+		String questionAudioId = audio.getId();
+		StringBuffer audioFileName = new StringBuffer(paperDetailExp.getNumber()+"_"+unit.getNumber()+"_");
+		Question question = unit.getQuestion();
+		List<String> idvaluesBody = CommonUtils.getTagANames(question.getQuesBody());
+		if(idvaluesBody.contains(questionAudioId)){
+			audioFileName.append("1");//题干
+			audioFileName.append("_");
+			int index = idvaluesBody.indexOf(questionAudioId);
+			audioFileName.append(index+1);
+		}else{
+			List<QuesOption> options = question.getQuesOptions();
+			if(options!=null&&options.size()>0){
+				for(QuesOption option:options){
+					List<String> idvaluesOption = CommonUtils.getTagANames(option.getOptionBody());
+					if(idvaluesOption.contains(questionAudioId)){
+						audioFileName.append("2");//选项
+						audioFileName.append("_");
+						audioFileName.append(CommonUtils.getOptionNum(Integer.parseInt(option.getNumber())-1));
+						audioFileName.append("_");
+						int index = idvaluesOption.indexOf(questionAudioId);
+						audioFileName.append(index+1);
+						break;
+					}
+				}
+			}
+		}
+		audioFileName.append(".");
+		audioFileName.append(audio.getFileSuffixes());
+		return audioFileName.toString();
+	}
+    
 }
 

+ 9 - 3
cqb-paper/src/main/java/com/qmth/cqb/paper/service/export/HzkjExportPaperService.java

@@ -52,12 +52,12 @@ public class HzkjExportPaperService extends ExportPaperAbstractService {
 	}
 
 	@Override
-    public void uploadFile(ExtractConfig extractConfig,String paperId,ExportStructure exportStructure,AccessUser accessUser) throws Exception{
+    public void uploadFile(ExtractConfig extractConfig,String paperId,AccessUser accessUser) throws Exception{
 		PaperExp paperExp = initPaperExp(paperId);
         if (paperExp!=null) {
         	String currNum = CommonUtils.getCurNum();
         	//没有试卷结构导出设置
-        	if(exportStructure==null){
+        	/*if(exportStructure==null){
         		//上传试卷
         		uploadPaperOrAnswerFile(paperExp,extractConfig,accessUser,currNum,HZKJ_TEMPLATE_PAPER,ExamFileType.PAPER);
 	        	//上传答案
@@ -75,7 +75,13 @@ public class HzkjExportPaperService extends ExportPaperAbstractService {
         	}else if(exportStructure!=null&&exportStructure.getExportType()==ExportType.ONLINE){
         		//上传机考JSON文件
         		uploadComputerTestFile(extractConfig,accessUser);
-        	}
+        	}*/
+        	//上传试卷
+    		uploadPaperOrAnswerFile(paperExp,extractConfig,accessUser,currNum,HZKJ_TEMPLATE_PAPER,ExamFileType.PAPER);
+        	//上传答案
+    		uploadPaperOrAnswerFile(paperExp,extractConfig,accessUser,currNum,HZKJ_TEMPLATE_ANSWER,ExamFileType.ANSWER);
+    		//上传机考JSON文件
+    		uploadComputerTestFile(extractConfig,accessUser);
         }
     }
 

+ 9 - 3
cqb-paper/src/main/java/com/qmth/cqb/paper/service/export/RjgcExportPaperService.java

@@ -45,7 +45,7 @@ public class RjgcExportPaperService extends ExportPaperAbstractService {
 	}
 
 	@Override
-    public void uploadFile(ExtractConfig extractConfig,String paperId,ExportStructure exportStructure,AccessUser accessUser) throws Exception{
+    public void uploadFile(ExtractConfig extractConfig,String paperId,AccessUser accessUser) throws Exception{
 		PaperExp paperExp = initPaperExp(paperId);
         if (paperExp!=null) {
         	String currNum = CommonUtils.getCurNum();
@@ -56,7 +56,7 @@ public class RjgcExportPaperService extends ExportPaperAbstractService {
         	examFile.setOrgId(extractConfig.getOrgId());
         	examFileService.deleteExamFile(examFile);*/
         	//没有试卷结构导出设置
-        	if(exportStructure==null){
+        	/*if(exportStructure==null){
         		//上传试卷
         		uploadPaperOrAnswerFile(paperExp,extractConfig,accessUser,currNum,SXSF_TEMPLATE_PAPER,ExamFileType.PAPER);
 	        	//上传答案
@@ -74,7 +74,13 @@ public class RjgcExportPaperService extends ExportPaperAbstractService {
         	}else if(exportStructure!=null&&exportStructure.getExportType()==ExportType.ONLINE){
         		//上传机考JSON文件
         		uploadComputerTestFile(extractConfig,accessUser);
-        	}
+        	}*/
+        	//上传试卷
+    		uploadPaperOrAnswerFile(paperExp,extractConfig,accessUser,currNum,SXSF_TEMPLATE_PAPER,ExamFileType.PAPER);
+        	//上传答案
+    		uploadPaperOrAnswerFile(paperExp,extractConfig,accessUser,currNum,SXSF_TEMPLATE_ANSWER,ExamFileType.ANSWER);
+    		//上传机考JSON文件
+    		uploadComputerTestFile(extractConfig,accessUser);
         }
     }
 

+ 9 - 3
cqb-paper/src/main/java/com/qmth/cqb/paper/service/export/SddxExportPaperService.java

@@ -53,12 +53,12 @@ public class SddxExportPaperService extends ExportPaperAbstractService{
 	}
 
 	@Override
-    public void uploadFile(ExtractConfig extractConfig,String paperId,ExportStructure exportStructure,AccessUser accessUser) throws Exception{
+    public void uploadFile(ExtractConfig extractConfig,String paperId,AccessUser accessUser) throws Exception{
 		PaperExp paperExp = initPaperExp(paperId);
         if (paperExp!=null) {
         	String currNum = CommonUtils.getCurNum();
         	//没有试卷结构导出设置
-        	if(exportStructure==null){
+        	/*if(exportStructure==null){
         		//上传试卷
         		uploadPaperOrAnswerFile(paperExp,extractConfig,accessUser,currNum,SDDX_TEMPLATE_PAPER,ExamFileType.PAPER);
 	        	//上传答案
@@ -76,7 +76,13 @@ public class SddxExportPaperService extends ExportPaperAbstractService{
         	}else if(exportStructure!=null&&exportStructure.getExportType()==ExportType.ONLINE){
         		//上传机考JSON文件
         		uploadComputerTestFile(extractConfig,accessUser);
-        	}
+        	}*/
+        	//上传试卷
+    		uploadPaperOrAnswerFile(paperExp,extractConfig,accessUser,currNum,SDDX_TEMPLATE_PAPER,ExamFileType.PAPER);
+        	//上传答案
+    		uploadPaperOrAnswerFile(paperExp,extractConfig,accessUser,currNum,SDDX_TEMPLATE_ANSWER,ExamFileType.ANSWER);
+    		//上传机考JSON文件
+    		uploadComputerTestFile(extractConfig,accessUser);
         }
     }
 }

+ 100 - 88
cqb-paper/src/main/java/com/qmth/cqb/paper/service/export/SxsfExportPaperService.java

@@ -1,88 +1,100 @@
-package com.qmth.cqb.paper.service.export;
-
-import java.io.File;
-import java.util.List;
-
-import org.springframework.stereotype.Service;
-
-import cn.com.qmth.examcloud.common.uac.entity.AccessUser;
-
-import com.qmth.cqb.paper.dto.PaperExp;
-import com.qmth.cqb.paper.model.ExportStructure;
-import com.qmth.cqb.paper.model.ExtractConfig;
-import com.qmth.cqb.paper.model.QuestionTypeNum;
-import com.qmth.cqb.utils.CommonUtils;
-import com.qmth.cqb.utils.enums.ExamFileType;
-import com.qmth.cqb.utils.enums.ExportType;
-import com.qmth.cqb.utils.word.DocxProcessUtil;
-
-/**
- * @author  	chenken
- * @date    	2017年7月7日 上午11:29:49
- * @company 	QMTH
- * @description 陕西师范大学导出、上传文件service
- */
-@Service("sxsfExportPaperService")
-public class SxsfExportPaperService extends ExportPaperAbstractService {
-	
-	@Override
-    public void downloadPaper(String paperId,String zipFileName,String examType) throws Exception {
-		PaperExp paperExp = initPaperExp(paperId);
-		if(paperExp!=null){
-			String paperfileName = paperExp.getName()+"_"+paperExp.getCourseNo()+"_"+ExamFileType.PAPER.getName()+DOCX_SUFFIX;
-			File file = new File(TEMP_FILE_EXP+File.separator+zipFileName+File.separator+paperfileName);
-			if(examType.equals("offLine")){
-				DocxProcessUtil.exportWordNew(paperExp, file,SXSF_OUTLINE_TEMPLATE_PAPER);
-			}else{
-				DocxProcessUtil.exportWordNew(paperExp, file,SXSF_TEMPLATE_PAPER);
-			}
-			DocxProcessUtil.processImage(zipFileName+File.separator+paperfileName,getPkgList(paperId));
-		}
-    }
-	
-	@Override
-	public void downloadPaperAnswer(String paperId, String zipFileName)throws Exception {
-		PaperExp paperExp = initPaperExp(paperId);
-		if(paperExp!=null){
-			String answerFileName = paperExp.getName()+"_"+paperExp.getCourseNo()+"_"+ExamFileType.ANSWER.getName()+DOCX_SUFFIX;
-			File file = new File(TEMP_FILE_EXP+File.separator+zipFileName+File.separator+answerFileName);
-			DocxProcessUtil.exportWordNew(paperExp,file,SXSF_TEMPLATE_ANSWER);
-			DocxProcessUtil.processImage(zipFileName+File.separator+answerFileName,getPkgList(paperId));
-		}
-	}
-
-	@Override
-    public void uploadFile(ExtractConfig extractConfig,String paperId,ExportStructure exportStructure,AccessUser accessUser) throws Exception{
-		PaperExp paperExp = initPaperExp(paperId);
-        if (paperExp!=null) {
-        	String currNum = CommonUtils.getCurNum();
-        	//删除原有试卷文件
-        	/*ExamFile examFile = new ExamFile();
-        	examFile.setExamId(extractConfig.getExamId()+"");
-        	examFile.setCourseId(extractConfig.getCourseCode());
-        	examFile.setOrgId(extractConfig.getOrgId());
-        	examFileService.deleteExamFile(examFile);*/
-        	//没有试卷结构导出设置
-        	if(exportStructure==null){
-        		//上传试卷
-        		uploadPaperOrAnswerFile(paperExp,extractConfig,accessUser,currNum,SXSF_TEMPLATE_PAPER,ExamFileType.PAPER);
-	        	//上传答案
-        		uploadPaperOrAnswerFile(paperExp,extractConfig,accessUser,currNum,SXSF_TEMPLATE_ANSWER,ExamFileType.ANSWER);
-        	}else if(exportStructure!=null&&exportStructure.getExportType()==ExportType.NORMAL){
-        		List<QuestionTypeNum> questionTypeNums = exportStructure.getQuestionTypeNums();
-        		//检查试卷中客观题的数量是否大于试卷导出设置中的设置的数量
-        		checkObjectiveDetailsNum(paperExp,questionTypeNums);
-	    		//上传试卷
-        		uploadPaperOrAnswerFile(paperExp,extractConfig,accessUser,currNum,SXSF_TEMPLATE_PAPER,ExamFileType.PAPER);
-	        	//上传答案
-        		uploadPaperOrAnswerFile(paperExp,extractConfig,accessUser,currNum,SXSF_TEMPLATE_ANSWER,ExamFileType.ANSWER);
-				//上传试卷结构   不能在上传试卷和答案之前
-        		uploadPaperStructure(paperExp,extractConfig,accessUser,currNum,questionTypeNums);
-        	}else if(exportStructure!=null&&exportStructure.getExportType()==ExportType.ONLINE){
-        		//上传机考JSON文件
-        		uploadComputerTestFile(extractConfig,accessUser);
-        	}
-        }
-    }
-
-}
+package com.qmth.cqb.paper.service.export;
+
+import java.io.File;
+import java.util.List;
+
+import org.docx4j.openpackaging.packages.WordprocessingMLPackage;
+import org.springframework.stereotype.Service;
+
+import cn.com.qmth.examcloud.common.uac.entity.AccessUser;
+
+import com.qmth.cqb.paper.dto.PaperExp;
+import com.qmth.cqb.paper.model.ExportStructure;
+import com.qmth.cqb.paper.model.ExtractConfig;
+import com.qmth.cqb.paper.model.QuestionTypeNum;
+import com.qmth.cqb.utils.CommonUtils;
+import com.qmth.cqb.utils.enums.ExamFileType;
+import com.qmth.cqb.utils.enums.ExportType;
+import com.qmth.cqb.utils.word.DocxProcessUtil;
+
+/**
+ * @author  	chenken
+ * @date    	2017年7月7日 上午11:29:49
+ * @company 	QMTH
+ * @description 陕西师范大学导出、上传文件service
+ */
+@Service("sxsfExportPaperService")
+public class SxsfExportPaperService extends ExportPaperAbstractService {
+	
+	@Override
+    public void downloadPaper(String paperId,String zipFileName,String examType) throws Exception {
+		PaperExp paperExp = super.initPaperExp(paperId);
+		if(paperExp!=null){
+			String paperfileName = paperExp.getName()+"_"+paperExp.getCourseNo()+"_"+ExamFileType.PAPER.getName()+DOCX_SUFFIX;
+			File file = new File(TEMP_FILE_EXP+File.separator+zipFileName+File.separator+paperfileName);
+			if(examType.equals("offLine")){
+				DocxProcessUtil.exportWordNew(paperExp, file,SXSF_OUTLINE_TEMPLATE_PAPER);
+			}else{
+				//DocxProcessUtil.exportWordNew(paperExp, file,BJSF_TMPLATE_PAPER);
+				DocxProcessUtil.exportWordNew(paperExp, file,SXSF_TEMPLATE_PAPER);
+			}
+			DocxProcessUtil.processImage(zipFileName+File.separator+paperfileName,getPkgList(paperId));
+			//下载音频
+			super.downloadAudio(paperExp, zipFileName);
+		}
+    }
+	
+	@Override
+	public void downloadPaperAnswer(String paperId, String zipFileName)throws Exception {
+		PaperExp paperExp = initPaperExp(paperId);
+		if(paperExp!=null){
+			String answerFileName = paperExp.getName()+"_"+paperExp.getCourseNo()+"_"+ExamFileType.ANSWER.getName()+DOCX_SUFFIX;
+			File file = new File(TEMP_FILE_EXP+File.separator+zipFileName+File.separator+answerFileName);
+			DocxProcessUtil.exportWordNew(paperExp,file,SXSF_TEMPLATE_ANSWER);
+			DocxProcessUtil.processImage(zipFileName+File.separator+answerFileName,getPkgList(paperId));
+		}
+	}
+
+	@Override
+    public void uploadFile(ExtractConfig extractConfig,String paperId,AccessUser accessUser) throws Exception{
+		PaperExp paperExp = initPaperExp(paperId);
+        if (paperExp!=null) {
+        	String currNum = CommonUtils.getCurNum();
+        	//删除原有试卷文件
+        	/*ExamFile examFile = new ExamFile();
+        	examFile.setExamId(extractConfig.getExamId()+"");
+        	examFile.setCourseId(extractConfig.getCourseCode());
+        	examFile.setOrgId(extractConfig.getOrgId());
+        	examFileService.deleteExamFile(examFile);*/
+        	//没有试卷结构导出设置
+        	/*if(exportStructure==null){
+        		//上传试卷
+        		uploadPaperOrAnswerFile(paperExp,extractConfig,accessUser,currNum,SXSF_TEMPLATE_PAPER,ExamFileType.PAPER);
+	        	//上传答案
+        		uploadPaperOrAnswerFile(paperExp,extractConfig,accessUser,currNum,SXSF_TEMPLATE_ANSWER,ExamFileType.ANSWER);
+        	}else if(exportStructure!=null&&exportStructure.getExportType()==ExportType.NORMAL){
+        		List<QuestionTypeNum> questionTypeNums = exportStructure.getQuestionTypeNums();
+        		//检查试卷中客观题的数量是否大于试卷导出设置中的设置的数量
+        		checkObjectiveDetailsNum(paperExp,questionTypeNums);
+	    		//上传试卷
+        		uploadPaperOrAnswerFile(paperExp,extractConfig,accessUser,currNum,SXSF_TEMPLATE_PAPER,ExamFileType.PAPER);
+	        	//上传答案
+        		uploadPaperOrAnswerFile(paperExp,extractConfig,accessUser,currNum,SXSF_TEMPLATE_ANSWER,ExamFileType.ANSWER);
+				//上传试卷结构   不能在上传试卷和答案之前
+        		uploadPaperStructure(paperExp,extractConfig,accessUser,currNum,questionTypeNums);
+        	}else if(exportStructure!=null&&exportStructure.getExportType()==ExportType.ONLINE){
+        		//上传机考JSON文件
+        		uploadComputerTestFile(extractConfig,accessUser);
+        	}*/
+        	//checkObjectiveDetailsNum(paperExp,questionTypeNums);
+        	//上传试卷
+    		uploadPaperOrAnswerFile(paperExp,extractConfig,accessUser,currNum,SXSF_TEMPLATE_PAPER,ExamFileType.PAPER);
+        	//上传答案
+    		uploadPaperOrAnswerFile(paperExp,extractConfig,accessUser,currNum,SXSF_TEMPLATE_ANSWER,ExamFileType.ANSWER);
+    		//上传机考JSON文件
+    		uploadComputerTestFile(extractConfig,accessUser);
+    		//uploadPaperStructure(paperExp,extractConfig,accessUser,currNum,questionTypeNums);
+        }
+    }
+
+}

+ 10 - 4
cqb-paper/src/main/java/com/qmth/cqb/paper/service/export/SydxExportPaperService.java

@@ -94,7 +94,7 @@ public class SydxExportPaperService extends ExportPaperAbstractService{
 	public void downloadPaperAnswer(String paperId, String zipFileName)throws Exception {
     	PaperExp paperExp = initExportSydxPaper(paperId);
 		if(paperExp!=null){
-			String paperfileName = paperExp.getCourseNo()+"_"+ExamFileType.PAPER.getName()+DOCX_SUFFIX;
+			String paperfileName = paperExp.getCourseNo()+"_"+ExamFileType.ANSWER.getName()+DOCX_SUFFIX;
 			File file = new File(TEMP_FILE_EXP+File.separator+zipFileName+File.separator+paperfileName);
 			DocxProcessUtil.exportWordNew(paperExp, file,SYDX_TEMPLATE_ANSWER);
 			DocxProcessUtil.processImage(zipFileName+File.separator+paperfileName,getPkgList(paperId));
@@ -103,13 +103,13 @@ public class SydxExportPaperService extends ExportPaperAbstractService{
 	}
     
     @Override
-    public void uploadFile(ExtractConfig extractConfig,String paperId,ExportStructure exportStructure,AccessUser accessUser) throws Exception{
+    public void uploadFile(ExtractConfig extractConfig,String paperId,AccessUser accessUser) throws Exception{
     	PaperExp exportPaperExp = initExportSydxPaper(paperId);
     	PaperExp exportPaperStructureExp = initExportSydxPaper(paperId);
         if (exportPaperExp!=null&&exportPaperStructureExp!=null) {
         	String currNum = CommonUtils.getCurNum();
         	//没有试卷结构导出设置
-        	if(exportStructure==null){
+        	/*if(exportStructure==null){
         		//上传试卷
         		uploadPaperOrAnswerFile(exportPaperExp,extractConfig,accessUser,currNum,SYDX_TEMPLATE_PAPER,ExamFileType.PAPER);
 	        	//上传答案
@@ -127,7 +127,13 @@ public class SydxExportPaperService extends ExportPaperAbstractService{
         	}else if(exportStructure!=null&&exportStructure.getExportType()==ExportType.ONLINE){
         		//上传机考JSON文件
         		uploadComputerTestFile(extractConfig,accessUser);
-        	}
+        	}*/
+        	//上传试卷
+    		uploadPaperOrAnswerFile(exportPaperExp,extractConfig,accessUser,currNum,SYDX_TEMPLATE_PAPER,ExamFileType.PAPER);
+        	//上传答案
+    		uploadPaperOrAnswerFile(exportPaperExp,extractConfig,accessUser,currNum,SYDX_TEMPLATE_ANSWER,ExamFileType.ANSWER);
+    		//上传机考JSON文件
+    		uploadComputerTestFile(extractConfig,accessUser);
         }
     }
 	

+ 11 - 7
cqb-paper/src/main/java/com/qmth/cqb/paper/service/export/TjdxExportPaperService.java

@@ -3,8 +3,6 @@ package com.qmth.cqb.paper.service.export;
 import java.io.File;
 import java.util.List;
 
-
-
 import org.docx4j.openpackaging.packages.WordprocessingMLPackage;
 import org.springframework.stereotype.Service;
 
@@ -32,7 +30,7 @@ public class TjdxExportPaperService extends ExportPaperAbstractService {
     public void downloadPaper(String paperId,String zipFileName,String examType) throws Exception {
 		PaperExp paperExp = initPaperExp(paperId);
 		if(paperExp!=null){
-			String paperfileName = paperExp.getCourseNo()+"_"+ExamFileType.PAPER.getName()+DOCX_SUFFIX;
+			String paperfileName = paperExp.getName()+"_"+paperExp.getCourseNo()+"_"+ExamFileType.PAPER.getName()+DOCX_SUFFIX;
 			File file = new File(TEMP_FILE_EXP+File.separator+zipFileName+File.separator+paperfileName);
 			if(examType.equals("offLine")){
 				//生成考试说明的word片段
@@ -50,7 +48,7 @@ public class TjdxExportPaperService extends ExportPaperAbstractService {
 	public void downloadPaperAnswer(String paperId, String zipFileName)throws Exception {
 		PaperExp paperExp = initPaperExp(paperId);
 		if(paperExp!=null){
-			String answerFileName = paperExp.getCourseNo()+"_"+ExamFileType.ANSWER.getName()+DOCX_SUFFIX;
+			String answerFileName = paperExp.getName()+"_"+paperExp.getCourseNo()+"_"+ExamFileType.ANSWER.getName()+DOCX_SUFFIX;
 			File file = new File(TEMP_FILE_EXP+File.separator+zipFileName+File.separator+answerFileName);
 			DocxProcessUtil.exportWordNew(paperExp,file,TJDX_TEMPLATE_ANSWER);
 			DocxProcessUtil.processImage(zipFileName+File.separator+answerFileName,getPkgList(paperId));
@@ -58,12 +56,12 @@ public class TjdxExportPaperService extends ExportPaperAbstractService {
 	}
 
 	@Override
-    public void uploadFile(ExtractConfig extractConfig,String paperId,ExportStructure exportStructure,AccessUser accessUser) throws Exception{
+    public void uploadFile(ExtractConfig extractConfig,String paperId,AccessUser accessUser) throws Exception{
 		PaperExp paperExp = initPaperExp(paperId);
         if (paperExp!=null) {
         	String currNum = CommonUtils.getCurNum();
         	//没有试卷结构导出设置
-        	if(exportStructure==null){
+        	/*if(exportStructure==null){
         		//上传试卷
         		uploadPaperOrAnswerFile(paperExp,extractConfig,accessUser,currNum,TJDX_TEMPLATE_PAPER,ExamFileType.PAPER);
 	        	//上传答案
@@ -81,7 +79,13 @@ public class TjdxExportPaperService extends ExportPaperAbstractService {
         	}else if(exportStructure!=null&&exportStructure.getExportType()==ExportType.ONLINE){
         		//上传机考JSON文件
         		uploadComputerTestFile(extractConfig,accessUser);
-        	}
+        	}*/
+        	//上传试卷
+    		uploadPaperOrAnswerFile(paperExp,extractConfig,accessUser,currNum,TJDX_TEMPLATE_PAPER,ExamFileType.PAPER);
+        	//上传答案
+    		uploadPaperOrAnswerFile(paperExp,extractConfig,accessUser,currNum,TJDX_TEMPLATE_ANSWER,ExamFileType.ANSWER);
+    		//上传机考JSON文件
+    		uploadComputerTestFile(extractConfig,accessUser);
         }
     }
     

+ 9 - 3
cqb-paper/src/main/java/com/qmth/cqb/paper/service/export/xajdExportPaperService.java

@@ -48,12 +48,12 @@ public class xajdExportPaperService extends ExportPaperAbstractService{
 	}
 
 	@Override
-    public void uploadFile(ExtractConfig extractConfig,String paperId,ExportStructure exportStructure,AccessUser accessUser) throws Exception{
+    public void uploadFile(ExtractConfig extractConfig,String paperId,AccessUser accessUser) throws Exception{
 		PaperExp paperExp = initPaperExp(paperId);
         if (paperExp!=null) {
         	String currNum = CommonUtils.getCurNum();
         	//没有试卷结构导出设置
-        	if(exportStructure==null){
+        	/*if(exportStructure==null){
         		//上传试卷
         		uploadPaperOrAnswerFile(paperExp,extractConfig,accessUser,currNum,XAJD_TEMPLATE_PAPER,ExamFileType.PAPER);
 	        	//上传答案
@@ -71,7 +71,13 @@ public class xajdExportPaperService extends ExportPaperAbstractService{
         	}else if(exportStructure!=null&&exportStructure.getExportType()==ExportType.ONLINE){
         		//上传机考JSON文件
         		uploadComputerTestFile(extractConfig,accessUser);
-        	}
+        	}*/
+        	//上传试卷
+    		uploadPaperOrAnswerFile(paperExp,extractConfig,accessUser,currNum,XAJD_TEMPLATE_PAPER,ExamFileType.PAPER);
+        	//上传答案
+    		uploadPaperOrAnswerFile(paperExp,extractConfig,accessUser,currNum,XAJD_TEMPLATE_ANSWER,ExamFileType.ANSWER);
+    		//上传机考JSON文件
+    		uploadComputerTestFile(extractConfig,accessUser);
         }
     }
 	

+ 2 - 2
cqb-paper/src/main/java/com/qmth/cqb/paper/service/impl/ExamFileServiceImpl.java

@@ -78,10 +78,10 @@ public class ExamFileServiceImpl implements ExamFileService{
 		}
 		List<String> exportContentList = exportPaperInfoModel.getExportContentList();
 		//批量导出时,不直接导出试卷结构
-		if(exportPaperInfoModel.getExportWay()==ExportWay.BATCH){
+		/*if(exportPaperInfoModel.getExportWay()==ExportWay.BATCH){
 			exportContentList.remove(ExamFileType.PAPER_STRUCTURE_OBJECTIVE.name());
 			exportContentList.remove(ExamFileType.PAPER_STRUCTURE_SUBJECTIVE.name());
-		}
+		}*/
 		if(exportContentList.size()>0){
 			List<String> examFileTypes = new ArrayList<String>();
 			for(int i = 0;i<exportContentList.size();i++){

+ 298 - 3
cqb-paper/src/main/java/com/qmth/cqb/paper/service/impl/ExportPaperServiceImpl.java

@@ -1,29 +1,48 @@
 package com.qmth.cqb.paper.service.impl;
 
 import java.io.File;
+import java.io.FileInputStream;
 import java.io.FileNotFoundException;
 import java.io.FileOutputStream;
 import java.io.IOException;
+import java.io.InputStream;
+import java.io.OutputStream;
 import java.util.ArrayList;
+import java.util.Comparator;
 import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
+import java.util.TreeMap;
 import java.util.regex.Matcher;
 import java.util.regex.Pattern;
 
 import javax.servlet.http.HttpServletResponse;
 
+import main.java.com.UpYun;
+
 import org.apache.commons.io.FileUtils;
 import org.apache.commons.io.IOUtils;
 import org.apache.commons.lang3.StringUtils;
+import org.apache.poi.ss.usermodel.Cell;
+import org.apache.poi.ss.usermodel.Row;
+import org.apache.poi.ss.usermodel.Sheet;
+import org.apache.poi.ss.usermodel.Workbook;
+import org.apache.poi.xssf.usermodel.XSSFWorkbook;
 import org.docx4j.Docx4J;
 import org.docx4j.openpackaging.packages.WordprocessingMLPackage;
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.beans.factory.annotation.Value;
 import org.springframework.data.mongodb.core.MongoTemplate;
+import org.springframework.data.mongodb.core.query.Criteria;
+import org.springframework.data.mongodb.core.query.Query;
 import org.springframework.stereotype.Service;
 
+import cn.afterturn.easypoi.excel.entity.params.ExcelExportEntity;
+import cn.com.qmth.examcloud.common.dto.question.enums.QuesStructType;
+
 import com.google.gson.Gson;
 import com.qmth.cqb.paper.dao.PaperRepo;
+import com.qmth.cqb.paper.dto.QuestionDistributeDto;
 import com.qmth.cqb.paper.model.Paper;
 import com.qmth.cqb.paper.model.PaperDetail;
 import com.qmth.cqb.paper.model.PaperDetailUnit;
@@ -38,8 +57,14 @@ import com.qmth.cqb.paper.service.ExportPaperService;
 import com.qmth.cqb.paper.service.PaperDetailService;
 import com.qmth.cqb.paper.service.PaperService;
 import com.qmth.cqb.paper.service.export.ExportPaperAbstractService;
+import com.qmth.cqb.question.dao.CoursePropertyRepo;
+import com.qmth.cqb.question.dao.QuestionAudioRepo;
+import com.qmth.cqb.question.model.CourseProperty;
+import com.qmth.cqb.question.model.Property;
 import com.qmth.cqb.question.model.QuesOption;
 import com.qmth.cqb.question.model.Question;
+import com.qmth.cqb.question.model.QuestionAudio;
+import com.qmth.cqb.question.service.PropertyService;
 import com.qmth.cqb.utils.CommonUtils;
 import com.qmth.cqb.utils.FileDisposeUtil;
 import com.qmth.cqb.utils.SpringContextUtils;
@@ -64,10 +89,28 @@ public class ExportPaperServiceImpl implements ExportPaperService{
 	
 	@Autowired
     private MongoTemplate mongoTemplate;
+	
+	@Autowired
+	private CoursePropertyRepo coursePropertyRepo;
+	
+	@Autowired
+	private PropertyService propertyService;
+	
+	@Autowired
+	private QuestionAudioRepo questionAudioRepo;
+	
+	@Value("${upyun.bucketName}")
+	protected String bucketName;
+	
+	@Value("${upyun.userName}")
+	protected String userName;
+	
+	@Value("${upyun.password}")
+	protected String password;
 
 	@Override
 	public void exportPaperFile(String paperId,String serviceName,String exportContentList,HttpServletResponse response,String loginName, String examType) throws Exception {
-		ExportPaperAbstractService exportPaperAbstractService = (ExportPaperAbstractService) SpringContextUtils.getBeanById("tjdxExportPaperService");
+		ExportPaperAbstractService exportPaperAbstractService = (ExportPaperAbstractService) SpringContextUtils.getBeanById("sxsfExportPaperService");
 		//根据试卷id查询试卷 
 		Paper paper = paperRepo.findOne(paperId);
 		List<Paper> papers = new ArrayList<Paper>();
@@ -135,11 +178,77 @@ public class ExportPaperServiceImpl implements ExportPaperService{
 			dirFile.mkdirs();
 		}
 		makeComputerTestPaperToJsonFile(paper.getCourse().getCode(),computerTestPaper,jsonDirectory);
+		downloadAudio(computerTestPaper,jsonDirectory);
 		//将文件夹打包成zip压缩包放在docxExport下
 		FileDisposeUtil.fileToZip(jsonDirectory,TEMP_FILE_EXP+File.separator+zipFileName,paper.getCourse().getCode()+"_"+paper.getName());
 	}
 	
-	 /**
+	 private void downloadAudio(ComputerTestPaper computerTestPaper,String jsonDirectory) {
+		//取到所有大题
+		List<ComputerTestPaperDetail> details = computerTestPaper.getDetails();
+		if(details != null && details.size()>0){
+			for(ComputerTestPaperDetail detail:details){
+				//取到所有小题集合
+				List<ComputerTestQuestion> questions = detail.getQuestions();
+				if(questions != null && questions.size()>0){
+					for(ComputerTestQuestion question:questions){
+						int bodyNum = 1;
+						//取到题干
+						Sections body = question.getBody();
+						List<Section> sections = body.getSections();
+						for(Section section:sections){
+							List<Block> blocks = section.getBlocks();
+							for(Block block:blocks){
+								if(block.getType().equals("audio")){
+									String id = block.getValue();
+									QuestionAudio questionAudio = questionAudioRepo.findOne(id);
+									String audioFileName = computerTestPaper.getCourseCode() + "_" +
+														 	computerTestPaper.getName() + "_" +"_试卷_"+
+														 	detail.getNumber()+"_"+question.getNumber()+
+														 	"_1_"+bodyNum+"."+ questionAudio.getFileSuffixes();
+									UpYun upyun = new UpYun(bucketName,userName,password);
+									File file = new File(jsonDirectory+File.separator+audioFileName);
+									upyun.readFile(questionAudio.getFileUrl(), file);
+									bodyNum++;
+								}
+							}
+						}
+						//取到选项
+						List<ComputerTestOption> options = question.getOptions();
+						if(options != null && options.size()>0){
+							for(ComputerTestOption computerTestOption:options){
+								int optionNum = 1;
+								//获取选项主体
+								Sections optionBody = computerTestOption.getBody();
+								List<Section> optionSections = optionBody.getSections();
+								if(optionSections != null && optionSections.size()>0){
+									for(Section optionSection:optionSections){
+										List<Block> blocks = optionSection.getBlocks();
+										for(Block block:blocks){
+											if(block.getType().equals("audio")){
+												String id = block.getValue();
+												QuestionAudio questionAudio = questionAudioRepo.findOne(id);
+												String audioFileName = computerTestPaper.getCourseCode() + "_" +
+																	 	computerTestPaper.getName() + "_" +"_试卷_"+
+																	 	detail.getNumber()+"_"+question.getNumber()+
+																	 	"_2_"+computerTestOption.getNumber()+"_"+optionNum +"."+ questionAudio.getFileSuffixes();
+												UpYun upyun = new UpYun(bucketName,userName,password);
+												File file = new File(jsonDirectory+File.separator+audioFileName);
+												upyun.readFile(questionAudio.getFileUrl(), file);
+												optionNum++;
+											}
+										}
+									}
+								}
+							}
+						}
+					}
+				}
+			}
+		}
+	}
+
+	/**
      * 构建机考数据包实体类
      * @param extractConfig
      * @return
@@ -356,7 +465,7 @@ public class ExportPaperServiceImpl implements ExportPaperService{
 
 	@Override
 	public void exportPaperFiles(List<String> paperIds,String serviceName,String exportContentList, HttpServletResponse response,String loginName,String examType) throws Exception {
-		ExportPaperAbstractService exportPaperAbstractService = (ExportPaperAbstractService) SpringContextUtils.getBeanById(serviceName);
+		ExportPaperAbstractService exportPaperAbstractService = (ExportPaperAbstractService) SpringContextUtils.getBeanById("sydxExportPaperService");
 		//根据试卷id查询所有试卷
 		List<Paper> papers = CommonUtils.toList(paperRepo.findAll(paperIds));
 		String zipFileName = loginName;
@@ -401,5 +510,191 @@ public class ExportPaperServiceImpl implements ExportPaperService{
 		FileDisposeUtil.downloadFile(CommonUtils.getCurDate() +".zip", TEMP_FILE_EXP+File.separator+zipFileName+".zip",response);
 		deteleFolder(TEMP_FILE_EXP,zipFileName);
 	}
+
+	@Override
+	public void downQuestionDistribute(String courseNo,HttpServletResponse response) throws IOException {
+		//1.生成导出Excle的list集合
+		List<QuestionDistributeDto> questionDistributeDtos = new ArrayList<QuestionDistributeDto>();
+		//2.根据课程code查询课程属性集合
+		List<CourseProperty> courseProperties = coursePropertyRepo.findByCourseCodeAndEnable(courseNo, true);
+		//3.遍历课程属性集合,根据课程属性查询一级
+		if(courseProperties != null && courseProperties.size()>0){
+			for(CourseProperty courseProperty:courseProperties){
+				List<Property> parentProperties = propertyService.findPropertyParents(courseProperty.getId(), courseProperty.getOrgId());
+				if(parentProperties != null && parentProperties.size()>0){
+					for(Property parentProperty:parentProperties){
+						List<Property> sonProperties = propertyService.findPropertySons(parentProperty.getId());
+						if(sonProperties != null && sonProperties.size()>0){
+							for(Property sonProperty:sonProperties){
+								//单选题集合
+								List<Question> sinList = questionList(courseNo, courseProperty, QuesStructType.SINGLE_ANSWER_QUESTION, parentProperty, sonProperty);
+								//多选题集合
+								List<Question> mulList = questionList(courseNo, courseProperty, QuesStructType.MULTIPLE_ANSWER_QUESTION, parentProperty, sonProperty);
+								//判断题集合
+								List<Question> bolList = questionList(courseNo, courseProperty, QuesStructType.BOOL_ANSWER_QUESTION, parentProperty, sonProperty);
+								//计算所有题型数量
+								Map<Long,Long> map = countQuesType(sinList,mulList,bolList);
+								QuestionDistributeDto questionDistributeDto = new QuestionDistributeDto(courseProperty.getName(),parentProperty.getName(),sonProperty.getName(),map);
+								questionDistributeDtos.add(questionDistributeDto);
+							}
+						}else {
+							//一级属性不为空,二级属性为空
+							//单选题集合
+							List<Question> sinList = questionList(courseNo, courseProperty, QuesStructType.SINGLE_ANSWER_QUESTION, parentProperty, null);
+							//多选题集合
+							List<Question> mulList = questionList(courseNo, courseProperty, QuesStructType.MULTIPLE_ANSWER_QUESTION, parentProperty, null);
+							//判断题集合
+							List<Question> bolList = questionList(courseNo, courseProperty, QuesStructType.BOOL_ANSWER_QUESTION, parentProperty, null);
+							//计算所有题型数量
+							Map<Long,Long> map = countQuesType(sinList,mulList,bolList);
+							QuestionDistributeDto questionDistributeDto = new QuestionDistributeDto(courseProperty.getName(),parentProperty.getName(),null,map);
+							questionDistributeDtos.add(questionDistributeDto);
+						}
+					}
+				}else {
+					//一级属性为空
+					QuestionDistributeDto questionDistributeDto = new QuestionDistributeDto(courseProperty.getName(),null,null,null);
+					questionDistributeDtos.add(questionDistributeDto);
+				}
+			}
+		}
+		//生成Excel导出
+		writeExcel(questionDistributeDtos,21,courseNo,response);
+	}
+	
+	/**
+	 * 数据源		questionDistributeDtos
+	 * Excel列数	cloumnCount
+	 * @param questionDistributeDtos
+	 * @param cloumnCount
+	 * @throws IOException 
+	 */
+	private void writeExcel(List<QuestionDistributeDto> questionDistributeDtos,int cloumnCount,String courseNo,HttpServletResponse response) throws IOException {
+		//读取Excel模板
+		InputStream in = this.getClass().getResourceAsStream("/quesDistinct.xlsx");
+		Workbook workBook = new XSSFWorkbook(in);
+		System.out.println(workBook.getAllNames());
+		//获取第一个工作页
+		Sheet sheet = workBook.getSheetAt(0);
+		System.out.println(sheet.getSheetName());
+		//往Excel中写入数据,从第5行开始
+		for(int i=0;i<questionDistributeDtos.size();i++){
+			//创建一行:从第五行开始,跳过表头
+			Row row = sheet.createRow(i+4);
+			//获取这行的记录
+			QuestionDistributeDto questionDistributeDto = questionDistributeDtos.get(i);
+			//每列赋值
+			row.createCell(0).setCellValue(questionDistributeDto.getCoursePropertyName());
+			row.createCell(1).setCellValue(questionDistributeDto.getFirstPropertyName());
+			row.createCell(2).setCellValue(questionDistributeDto.getSecondPropertyName());
+			Map<Long,Long> map = questionDistributeDto.getMap();
+			if(map == null){
+				for(int j=0;j<18;j++){
+					row.createCell(j+3).setCellValue(0);
+				}
+			}else {
+				int j = 3;
+				for(Long key:map.keySet()){
+					row.createCell(j).setCellValue(map.get(key));
+					j++;
+				}
+			}
+		}
+		File file = new File(TEMP_FILE_EXP + File.separator + "试题分布.xlsx");
+		OutputStream out = new FileOutputStream(file);
+		workBook.write(out);
+		out.close();
+		FileDisposeUtil.downloadFile(courseNo+"试题分布.xlsx", TEMP_FILE_EXP + File.separator + "试题分布.xlsx",response);
+		FileUtils.deleteQuietly(file);
+	}
+
+	private Map<Long, Long> countQuesType(List<Question> sinList,List<Question> mulList, List<Question> bolList) {
+		Map<Long,Long> map = new TreeMap<Long, Long>();
+		map = buildMap(sinList, map, 1);
+		map = buildMap(mulList, map, 2);
+		map = buildMap(bolList, map, 3);
+		//给map的键排序
+		Map<Long, Long> resultMap = sortMapByKey(map);
+		return resultMap;
+	}
+
+	private Map<Long, Long> sortMapByKey(Map<Long, Long> map) {
+		if (map == null || map.isEmpty()) {
+            return null;
+        }
+		Map<Long, Long> sortMap = new TreeMap<Long, Long>(new Comparator<Long>() {
+			public int compare(Long l1,Long l2){
+				return l1.compareTo(l2);
+			}
+		});
+		sortMap.putAll(map);
+		return sortMap;
+	}
+
+	private Map<Long, Long> buildMap(List<Question> quesList,Map<Long, Long> map,int questionType) {
+		//初始化map
+		for(int i=1;i<7;i++){
+			if(i<4){
+				map.put((long) (questionType*100+i), 0L);
+			}else {
+				map.put((long) (questionType*100+10+i-3), 0L);
+			}
+		}
+		for(Question question:quesList){
+			if(question.getPublicity()){
+				//公开
+				if(question.getDifficulty().equals("难")){
+					map = buildMapSum(questionType*100+1,map);
+				}else if(question.getDifficulty().equals("中")) {
+					map = buildMapSum(questionType*100+2,map);
+				}else{
+					map = buildMapSum(questionType*100+3,map);
+				}
+			}else {
+				//非公开
+				if(question.getDifficulty().equals("难")){
+					map = buildMapSum(questionType*100+11,map);
+				}else if(question.getDifficulty().equals("中")){
+					map = buildMapSum(questionType*100+12,map);
+				}else{
+					map = buildMapSum(questionType*100+13,map);
+				}
+			}
+		}
+		return map;
+	}
 	
+	private Map<Long, Long> buildMapSum(long key, Map<Long, Long> map) {
+		Long sum = map.get(key);
+		map.put(key, sum+1);
+		return map;
+	}
+
+	public List<Question> questionList(String courseNo,CourseProperty courseProperty,QuesStructType quesStructType,Property parentProperty,Property sonProperty){
+		Query query = new Query();
+		query.addCriteria(Criteria.where("orgId").is(courseProperty.getOrgId().toString()));
+		query.addCriteria(Criteria.where("course.enable").is("true"));
+		query.addCriteria(Criteria.where("course.code").is(courseNo));
+		query.addCriteria(Criteria.where("questionType").is(quesStructType.name()));
+		query.addCriteria(Criteria.where("quesProperties.coursePropertyName").is(courseProperty.getName()));
+		//二级属性不为空,那么一级属性也不为空
+        if(sonProperty != null && sonProperty.getId() != null){
+        	query.addCriteria(Criteria.where("quesProperties").elemMatch(Criteria.where("firstProperty.id").is(Long.valueOf(parentProperty.getId())).and("secondProperty.id").is(Long.valueOf(sonProperty.getId()))));
+        }else {
+        	if(parentProperty != null && parentProperty.getId() != null){
+            	query.addCriteria(Criteria.where("quesProperties").elemMatch(Criteria.where("firstProperty.id").is(Long.valueOf(parentProperty.getId()))));
+            }
+        }
+        List<Question> questionList = this.mongoTemplate.find(query, Question.class);
+		return questionList;
+	}
+	
+	
+	public static void main(String[] args) {
+		System.out.println("a");
+		Map<Long, Long> map = new HashMap<Long, Long>();
+		map.put(1l, 1l);
+		map.put(1l, 2l);
+		System.out.println(map.get(1l));
+	}
 }

+ 8 - 7
cqb-paper/src/main/java/com/qmth/cqb/paper/service/impl/ExtractConfigFileServiceImpl.java

@@ -131,10 +131,11 @@ public class ExtractConfigFileServiceImpl implements ExtractConfigFileService {
 	@Override
 	public void saveExtractConfigAndBuildPaperFile(ExtractConfig extractConfig,Integer isbuildFile,AccessUser accessUser) throws Exception {
 		//查询试卷导出设置
+		/* 调卷规则保存,不需要查询试卷结构
 		ExportStructure exportStructure = null;
 		if(isbuildFile==1){
 			exportStructure = exportStructureService.findStructureByExamId(extractConfig.getExamId()+"");
-		}
+		}*/
 		//生成试卷
 		Map<String, String> finishedPaperIdMap = extractConfigService.saveExtractConfig(extractConfig,accessUser);
     	if(isbuildFile==1){
@@ -150,7 +151,7 @@ public class ExtractConfigFileServiceImpl implements ExtractConfigFileService {
     		while(iterator.hasNext()){
     			Entry<String,String> entry = iterator.next();
     			String paperId = entry.getValue();
-    			uploadPaperFile(extractConfig,paperId,exportStructure,accessUser);
+    			uploadPaperFile(extractConfig,paperId,accessUser);
     		}
     	}
 	}
@@ -163,13 +164,13 @@ public class ExtractConfigFileServiceImpl implements ExtractConfigFileService {
 	 * @param accessUser
 	 * @throws Exception
 	 */
-	private void uploadPaperFile(ExtractConfig extractConfig,String paperId,ExportStructure exportStructure,AccessUser accessUser) throws Exception {
+	private void uploadPaperFile(ExtractConfig extractConfig,String paperId,AccessUser accessUser) throws Exception {
 		ExportServiceManage esm = exportServiceManageRepo.findByOrgName(accessUser.getRootOrgName());
 		if(esm == null){
 			esm = exportServiceManageRepo.findByOrgName("陕西师范大学");
 		}
     	ExportPaperAbstractService exportPaperAbstractService = (ExportPaperAbstractService) SpringContextUtils.getBeanById(esm.getExportServiceName());
-    	exportPaperAbstractService.uploadFile(extractConfig,paperId,exportStructure,accessUser);
+    	exportPaperAbstractService.uploadFile(extractConfig,paperId,accessUser);
 	}
 	
     @Override
@@ -194,12 +195,12 @@ public class ExtractConfigFileServiceImpl implements ExtractConfigFileService {
 		FileDisposeUtil.createDirectory(downloadDir);
 		//创建压缩文件的文件夹
 		FileDisposeUtil.createDirectory(downZipDir);
-		ExportStructure exportStructure = exportStructureService.findStructureByExamId(exportModel.getExamId()+"");
+		/*ExportStructure exportStructure = exportStructureService.findStructureByExamId(exportModel.getExamId()+"");
 		if(exportStructure==null){
 			exportStructure = new ExportStructure();
 			exportStructure.setExportType(ExportType.NORMAL);
 		}
-		//如果是普通类型的批量导出
+		//如果是普通类型的批量导出  导出试卷结构
 		if(exportModel.getExportWay()==ExportWay.BATCH){
 			Map<String,String> paperIds = checkAllCourseByExamId(exportModel.getExamId(),exportStructure.getExportType());
 			if(exportStructure.getExportType()==ExportType.NORMAL){
@@ -207,7 +208,7 @@ public class ExtractConfigFileServiceImpl implements ExtractConfigFileService {
 					makePaperStructure(downloadDir,exportStructure.getExamName(),paperIds,exportStructure);
 				}
 			}
-		}
+		}*/
 		//根据条件获取到文件下载路径,下载文件到服务器的downloadDirectory文件夹
 		List<ExamFile> examFiles = examFileService.findExamFileListByExportPaperInfoModel(exportModel);
 		if(examFiles!=null&&examFiles.size()>0){

+ 3 - 0
cqb-paper/src/main/java/com/qmth/cqb/paper/service/impl/ExtractConfigServiceImpl.java

@@ -1048,6 +1048,9 @@ public class ExtractConfigServiceImpl implements ExtractConfigService {
 	}
 	
 	public String startWithP(String s,Integer number,boolean option){
+		if(s==null){
+			return null;
+		}
 		if(number == -2){
 			if(s.startsWith("<p>")){
 				s = s.replaceAll("<p>","<p style=\"margin-left:40px;\">").replaceAll("<p style=\"margin-left:40px;\">", "<p style=\"margin-left:20px;\">");

+ 18 - 17
cqb-paper/src/main/java/com/qmth/cqb/paper/service/impl/PaperServiceImpl.java

@@ -956,14 +956,14 @@ public class PaperServiceImpl implements PaperService{
         }
     }
 
-    public Page<Paper> getImportPapersNotInIds(PaperSearchInfo paperSearchInfo, String[] ids, int curPage,int pageSize) {
+    public Page<Paper> getPapersNotInIds(PaperSearchInfo paperSearchInfo, String[] ids, int curPage,int pageSize,PaperType paperType) {
     	Set<String> selectedIds = new HashSet<>();
     	for (String id : ids) {
     	    selectedIds.add(id);
     	}
     	Query query = new Query();
         query.addCriteria(Criteria.where("orgId").is(paperSearchInfo.getOrgId()));
-    	query.addCriteria(Criteria.where("paperType").is(PaperType.IMPORT));
+    	query.addCriteria(Criteria.where("paperType").is(paperType));
     	query.addCriteria(Criteria.where("course.code").is(paperSearchInfo.getCourseNo()));
     	query.addCriteria(Criteria.where("id").nin(selectedIds));
     	long total = this.mongoTemplate.count(query, Paper.class);
@@ -1152,12 +1152,17 @@ public class PaperServiceImpl implements PaperService{
     		//根据试卷查询所有的小题,根据文件名匹配出当前小题ID
     		Question question = null; 
     		String numbers[] = file.getOriginalFilename().split("_");
-        	List<PaperDetailUnit> paperDetailUnits = paperDetailUnitRepo.findByPaperOrderByNumber(paper);
+    		/**
+    		 * 注释代码功能,查询试卷中某个试题
+    		 * 循环耗时,直接从数据查询对象
+    		 */
+        	/*List<PaperDetailUnit> paperDetailUnits = paperDetailUnitRepo.findByPaperOrderByNumber(paper);
         	for(PaperDetailUnit paperDetailUnit:paperDetailUnits){
         		if(paperDetailUnit.getNumber().toString().equals(numbers[0])){
         			question = paperDetailUnit.getQuestion();
         		}
-        	}
+        	}*/
+    		question = paperDetailUnitRepo.findByPaperAndNumber(paper, Integer.valueOf(numbers[0])).getQuestion();
         	uploadAudioFile(paperId,question.getId(),file,accessUser);
         	appendAudioTag(file.getOriginalFilename(),question.getId());
     	}
@@ -1263,22 +1268,22 @@ public class PaperServiceImpl implements PaperService{
 				//添加大题标题
 				if(StringUtils.isBlank(paperDetail.getTitle())){
 					//htmlList.add(("<p>"+paperDetail.getCnNum()+"、"+paperDetail.getName()+"</p>").replaceAll("'", "&apos"));
-					htmlList.add(("<p>"+paperDetail.getCnNum()+"、"+paperDetail.getName()+"</p>").replaceAll("'", "&apos"));
+					htmlList.add(("<p class='paperDetailTitle'>"+paperDetail.getCnNum()+"、"+paperDetail.getName()+"</p>").replaceAll("'", "&apos"));
 				}else {
-					htmlList.add("<p>"+paperDetail.getCnNum()+"、"+paperDetail.getName()+paperDetail.getTitle()+"</p>");
+					htmlList.add("<p class='paperDetailTitle'>"+paperDetail.getCnNum()+"、"+paperDetail.getName()+paperDetail.getTitle()+"</p>");
 				}
 				if(paperDetail.getPaperDetailUnits() != null && paperDetail.getPaperDetailUnits().size()>0){
 					for(PaperDetailUnitExp paperDetailUnitExp:paperDetail.getPaperDetailUnits()){
 						Question question = paperDetailUnitExp.getQuestion();
 						//添加题干
 						String questionBody = CommonUtils.deleteHtmlP(paperDetailUnitExp.getNumber()+"."+question.getQuesBody()+"("+paperDetailUnitExp.getScore()+"分)");
-						htmlList.add("<p>"+questionBody+"</p>");
+						htmlList.add("<p class='questionBody'>"+questionBody+"</p>");
 						//判断是否为选择题
 						if(paperDetailUnitExp.getQuestionType()==QuesStructType.SINGLE_ANSWER_QUESTION || paperDetailUnitExp.getQuestionType()==QuesStructType.MULTIPLE_ANSWER_QUESTION){
 							for(QuesOption quesOption:question.getQuesOptions()){
 								//添加选项
 								String questionOption = CommonUtils.deleteHtmlP(CommonUtils.getOptionNum(Integer.parseInt(quesOption.getNumber())-1)+"."+quesOption.getOptionBody());
-								htmlList.add("<p>"+questionOption+"</p>");
+								htmlList.add("<p class='selectOption'>"+questionOption+"</p>");
 							}
 						}
 						//判断是否为套题
@@ -1288,13 +1293,13 @@ public class PaperServiceImpl implements PaperService{
 							for(Question subQuestion:subQuestions){
 								//添加子题题干
 								String subQuestionBody = CommonUtils.deleteHtmlP(subQuestion.getQuesParams().get("number")+"."+subQuestion.getQuesBody()+"("+subQuestion.getScore()+"分)");
-								htmlList.add("<p>"+subQuestionBody+"</p>");
+								htmlList.add("<p class='questionBody'>"+subQuestionBody+"</p>");
 								//判断是否为选择题
-								if(subQuestion.getQuestionType()==QuesStructType.SINGLE_ANSWER_QUESTION || subQuestion.getQuestionType()==QuesStructType.BOOL_ANSWER_QUESTION){
+								if(subQuestion.getQuestionType()==QuesStructType.SINGLE_ANSWER_QUESTION || subQuestion.getQuestionType()==QuesStructType.MULTIPLE_ANSWER_QUESTION){
 									for(QuesOption quesOption:subQuestion.getQuesOptions()){
 										//添加选项
 										String questionOption = CommonUtils.deleteHtmlP(CommonUtils.getOptionNum(Integer.parseInt(quesOption.getNumber())-1)+"."+quesOption.getOptionBody());
-										htmlList.add("<p>"+questionOption+"</p>");
+										htmlList.add("<p class='selectOption'>"+questionOption+"</p>");
 									}
 								}
 							}
@@ -1325,7 +1330,7 @@ public class PaperServiceImpl implements PaperService{
 	}
 
 	@Override
-	public Map<String, QuestionAllTypeDto> findQuestionStructure(String paperId,AccessUser user) throws Exception {
+	public QuestionAllTypeDto findQuestionStructure(String paperId,AccessUser user) throws Exception {
 		//根据paperId查询新的对象
 		ExportServiceManage esm = exportServiceManageRepo.findByOrgName(user.getRootOrgName());
 		if(esm == null){
@@ -1353,11 +1358,7 @@ public class PaperServiceImpl implements PaperService{
     			subjectiveQuestionStructureList.add(new SubjectiveQuestionStructure(paperExp,paperDetailExp,unit,null));
     		}
     	}
-    	//生成map集合返回给硬刷平台
-    	Map<String, QuestionAllTypeDto> map = new HashMap<String, QuestionAllTypeDto>();
-    	QuestionAllTypeDto questionAllTypeDto = new QuestionAllTypeDto(objectiveQuestionStructureList, subjectiveQuestionStructureList);
-    	map.put("questionAllTypeDto", questionAllTypeDto);
-    	return map;
+    	return new QuestionAllTypeDto(objectiveQuestionStructureList, subjectiveQuestionStructureList);
 	}
 
 	public List<PaperDetailExp> buildPaperDetailExp(List<PaperDetailExp> objectiveDetails) {

+ 13 - 0
cqb-paper/src/main/java/com/qmth/cqb/paper/web/ExportPaperController.java

@@ -1,5 +1,6 @@
 package com.qmth.cqb.paper.web;
 
+import java.io.IOException;
 import java.util.List;
 import java.util.stream.Collectors;
 import java.util.stream.Stream;
@@ -90,4 +91,16 @@ public class ExportPaperController {
 		}
     	log.info("导出结束");
     }
+    
+    @ApiOperation(value="导出试题分布数量", notes="导出试题分布数量")
+    @GetMapping(value = "/paper/course/question/{courseNo}")
+    public void downQuestionDistribute(HttpServletResponse response,@PathVariable String courseNo){
+    	log.info("开始导出Excel");
+    	try {
+			exportPaperService.downQuestionDistribute(courseNo,response);
+		} catch (IOException e) {
+			// TODO Auto-generated catch block
+			e.printStackTrace();
+		}
+    }
 }

+ 27 - 5
cqb-paper/src/main/java/com/qmth/cqb/paper/web/PaperController.java

@@ -178,6 +178,30 @@ public class PaperController {
         paperSearchInfo.setOrgId(user.getRootOrgId().toString());
         return new ResponseEntity(paperService.getGenPapers(paperSearchInfo, curPage, pageSize), HttpStatus.OK);
     }
+    
+    /**
+     * 
+     * @param request
+     * @param paperSearchInfo
+     * @param ids
+     * @param curPage
+     * @param pageSize
+     * @return
+     */
+    @ApiOperation(value = "查询所有导入试卷(not in paperIds)", notes = "查询所有导入试卷(not in paperIds)")
+    @Uac(roles={RoleMeta.QUESTION_ADMIN,RoleMeta.SUPER_ADMIN},policy=UacPolicy.IN)
+    @GetMapping(value = "/genPaper/{ids}/{curPage}/{pageSize}")
+    public ResponseEntity<Object> getGenPapersNotInIds(HttpServletRequest request, @ModelAttribute PaperSearchInfo paperSearchInfo, 
+    		@PathVariable String[] ids, @PathVariable int curPage, @PathVariable int pageSize) {
+        AccessUser user = (AccessUser) request.getAttribute("accessUser");
+        paperSearchInfo.setOrgId(user.getRootOrgId().toString());
+        if (ids != null && ids.length > 0) {
+            return new ResponseEntity<Object>(paperService.getPapersNotInIds(paperSearchInfo, ids, curPage, pageSize,PaperType.GENERATE),
+                    HttpStatus.OK);
+        } else {
+            return new ResponseEntity<Object>(paperService.getGenPapers(paperSearchInfo, curPage, pageSize), HttpStatus.OK);
+        }
+    }
 
     /**
      * 删除试卷
@@ -507,12 +531,11 @@ public class PaperController {
         AccessUser user = (AccessUser) request.getAttribute("accessUser");
         paperSearchInfo.setOrgId(user.getRootOrgId().toString());
         if (ids != null && ids.length > 0) {
-            return new ResponseEntity(paperService.getImportPapersNotInIds(paperSearchInfo, ids, curPage, pageSize),
+            return new ResponseEntity(paperService.getPapersNotInIds(paperSearchInfo, ids, curPage, pageSize,PaperType.IMPORT),
                     HttpStatus.OK);
         } else {
             return new ResponseEntity(paperService.getImportPapers(paperSearchInfo, curPage, pageSize), HttpStatus.OK);
         }
-
     }
 
     /**
@@ -620,9 +643,8 @@ public class PaperController {
     
     @ApiOperation(value="根据试卷id查询主观题与客观题数量", notes="根据试卷id查询主观题与客观题数量")
     @GetMapping(value="/questionStructure")
-    public Map<String, QuestionAllTypeDto> findQuestionStructure(HttpServletRequest request,@RequestParam("paperId") String paperId, @RequestHeader("user_token") String user_token) throws Exception{
+    public QuestionAllTypeDto findQuestionStructure(HttpServletRequest request,@RequestParam("paperId") String paperId, @RequestHeader("user_token") String user_token) throws Exception{
     	AccessUser user = (AccessUser) request.getAttribute("accessUser");
-    	Map<String, QuestionAllTypeDto> map = paperService.findQuestionStructure(paperId,user);
-		return map;
+		return paperService.findQuestionStructure(paperId,user);
     }
 }

+ 158 - 107
cqb-question-resource/src/main/java/com/qmth/cqb/question/model/QuestionSearchCondition.java

@@ -1,107 +1,158 @@
-package com.qmth.cqb.question.model;
-
-import java.util.Map;
-
-import org.apache.commons.lang3.StringUtils;
-
-import cn.com.qmth.examcloud.common.dto.question.enums.QuesStructType;
-
-public class QuestionSearchCondition {
-
-    private String id;
-
-    private QuesStructType questionType;// 试题类型名称
-
-    private String createTime;// 创建时间
-
-    private String updateTime;// 更新时间
-
-    private Map<String, String> quesParams;// 试题其他属性
-
-    private String courseNo;// 课程CODE
-
-    private String orgId;
-
-    private String courseLevel;//课程层次
-
-    private String courseMajor;//课程专业
-
-    public String getId() {
-        return id;
-    }
-
-    public void setId(String id) {
-        this.id = id;
-    }
-
-    public QuesStructType getQuestionType() {
-        return questionType;
-    }
-
-    public void setQuestionType(QuesStructType questionType) {
-        this.questionType = questionType;
-    }
-
-    public String getCreateTime() {
-        return createTime;
-    }
-
-    public void setCreateTime(String createTime) {
-        this.createTime = createTime;
-    }
-
-    public String getUpdateTime() {
-        return updateTime;
-    }
-
-    public void setUpdateTime(String updateTime) {
-        this.updateTime = updateTime;
-    }
-
-    public Map<String, String> getQuesParams() {
-        return quesParams;
-    }
-
-    public void setQuesParams(Map<String, String> quesParams) {
-        this.quesParams = quesParams;
-    }
-
-    public String getCourseNo() {
-        return courseNo;
-    }
-
-    public void setCourseNo(String courseNo) {
-        if (StringUtils.isBlank(courseNo)) {
-            this.courseNo = null;
-        } else {
-            this.courseNo = courseNo;
-        }
-    }
-
-    public String getOrgId() {
-        return orgId;
-    }
-
-    public void setOrgId(String orgId) {
-        this.orgId = orgId;
-    }
-
-    public String getCourseLevel() {
-        return courseLevel;
-    }
-
-    public void setCourseLevel(String courseLevel) {
-        this.courseLevel = courseLevel;
-    }
-
-    public String getCourseMajor() {
-        return courseMajor;
-    }
-
-    public void setCourseMajor(String courseMajor) {
-        this.courseMajor = courseMajor;
-    }
-
-    public QuestionSearchCondition() {
-    }
-}
+package com.qmth.cqb.question.model;
+
+import java.util.Map;
+
+import org.apache.commons.lang3.StringUtils;
+
+import cn.com.qmth.examcloud.common.dto.question.enums.QuesStructType;
+
+public class QuestionSearchCondition {
+
+    private String id;
+
+    private QuesStructType questionType;// 试题类型名称
+
+    private String createTime;// 创建时间
+
+    private String updateTime;// 更新时间
+
+    private Map<String, String> quesParams;// 试题其他属性
+
+    private String courseNo;// 课程CODE
+
+    private String orgId;
+
+    private String courseLevel;//课程层次
+
+    private String courseMajor;//课程专业
+    
+    private Boolean publicity;//公开度
+    
+    private String coursePropertyName;//属性名
+    
+    private String firstPropertyId;//一级属性
+    
+    private String secondPropertyId;//二级属性
+    
+    private String difficulty;// 难度
+
+    public String getId() {
+        return id;
+    }
+
+    public void setId(String id) {
+        this.id = id;
+    }
+
+    public QuesStructType getQuestionType() {
+        return questionType;
+    }
+
+    public void setQuestionType(QuesStructType questionType) {
+        this.questionType = questionType;
+    }
+
+    public String getCreateTime() {
+        return createTime;
+    }
+
+    public void setCreateTime(String createTime) {
+        this.createTime = createTime;
+    }
+
+    public String getUpdateTime() {
+        return updateTime;
+    }
+
+    public void setUpdateTime(String updateTime) {
+        this.updateTime = updateTime;
+    }
+
+    public Map<String, String> getQuesParams() {
+        return quesParams;
+    }
+
+    public void setQuesParams(Map<String, String> quesParams) {
+        this.quesParams = quesParams;
+    }
+
+    public String getCourseNo() {
+        return courseNo;
+    }
+
+    public void setCourseNo(String courseNo) {
+        if (StringUtils.isBlank(courseNo)) {
+            this.courseNo = null;
+        } else {
+            this.courseNo = courseNo;
+        }
+    }
+
+    public String getOrgId() {
+        return orgId;
+    }
+
+    public void setOrgId(String orgId) {
+        this.orgId = orgId;
+    }
+
+    public String getCourseLevel() {
+        return courseLevel;
+    }
+
+    public void setCourseLevel(String courseLevel) {
+        this.courseLevel = courseLevel;
+    }
+
+    public String getCourseMajor() {
+        return courseMajor;
+    }
+
+    public void setCourseMajor(String courseMajor) {
+        this.courseMajor = courseMajor;
+    }
+
+    public QuestionSearchCondition() {
+    }
+
+	public String getCoursePropertyName() {
+		return coursePropertyName;
+	}
+
+	public void setCoursePropertyName(String coursePropertyName) {
+		this.coursePropertyName = coursePropertyName;
+	}
+
+	public String getFirstPropertyId() {
+		return firstPropertyId;
+	}
+
+	public void setFirstPropertyId(String firstPropertyId) {
+		this.firstPropertyId = firstPropertyId;
+	}
+
+	public String getSecondPropertyId() {
+		return secondPropertyId;
+	}
+
+	public void setSecondPropertyId(String secondPropertyId) {
+		this.secondPropertyId = secondPropertyId;
+	}
+
+	public String getDifficulty() {
+		return difficulty;
+	}
+
+	public void setDifficulty(String difficulty) {
+		this.difficulty = difficulty;
+	}
+
+	public Boolean getPublicity() {
+		return publicity;
+	}
+
+	public void setPublicity(Boolean publicity) {
+		this.publicity = publicity;
+	}
+
+}

+ 1 - 1
cqb-question-resource/src/main/java/com/qmth/cqb/question/service/PropertyService.java

@@ -68,7 +68,7 @@ public interface PropertyService {
 	 * @param property
 	 * @return
 	 */
-	public List<Property> findPropertyParents(Long coursePropertyId, AccessUser user);
+	public List<Property> findPropertyParents(Long coursePropertyId, Long orgId);
 	
 	/**
 	 * 上移

+ 7 - 0
cqb-question-resource/src/main/java/com/qmth/cqb/question/service/QuesService.java

@@ -85,4 +85,11 @@ public interface QuesService {
      * @return
      */
     public void setSelectQuestionAnswer(Question question,String optionOrder);
+    
+    /**
+     * 查询题目数量
+     * @param searchCondition
+     * @return
+     */
+    public long findQuesCount(QuestionSearchCondition searchCondition);
 }

+ 53 - 47
cqb-question-resource/src/main/java/com/qmth/cqb/question/service/QuestionAudioService.java

@@ -1,47 +1,53 @@
-package com.qmth.cqb.question.service;
-
-import java.util.List;
-
-import cn.com.qmth.examcloud.common.uac.entity.AccessUser;
-
-import com.qmth.cqb.question.model.Question;
-import com.qmth.cqb.question.model.QuestionAudio;
-
-/**
- * @author  	chenken
- * @date    	2017年8月1日 上午11:26:40
- * @company 	QMTH
- * @description QuestionRadioService.java
- */
-public interface QuestionAudioService {
-	
-	/**
-	 * 使用ID查询音频
-	 * @param id
-	 * @return
-	 */
-	public QuestionAudio findAudioById(String id);
-	/**
-	 * 保存试题音频文件记录
-	 * @param questionRadio
-	 */
-	public void saveQuestionAudio(QuestionAudio questionAudio,AccessUser accessUser);
-	 /**
-	  * 根据试题ID获取音频文件
-	  * @return
-	  */
-	public List<QuestionAudio> findQuestionAudiosByQuestionId(String questionId);
-	/**
-	 * 根据questionId和文件名称查询对象
-	 * @param questionId
-	 * @param fileName
-	 * @return  
-	 */
-	public QuestionAudio findByQuestionIdAndFileName(String questionId,String fileName);
-	/**
-	 * 删除不在试题中的音频
-	 * @param question
-	 */
-	public void deleteAudioNotInQuestion(Question question);
-}
-
+package com.qmth.cqb.question.service;
+
+import java.util.List;
+
+import cn.com.qmth.examcloud.common.uac.entity.AccessUser;
+
+import com.qmth.cqb.question.model.Question;
+import com.qmth.cqb.question.model.QuestionAudio;
+
+/**
+ * @author  	chenken
+ * @date    	2017年8月1日 上午11:26:40
+ * @company 	QMTH
+ * @description QuestionRadioService.java
+ */
+public interface QuestionAudioService {
+	
+	/**
+	 * 使用ID查询音频
+	 * @param id
+	 * @return
+	 */
+	public QuestionAudio findAudioById(String id);
+	/**
+	 * 保存试题音频文件记录
+	 * @param questionRadio
+	 */
+	public void saveQuestionAudio(QuestionAudio questionAudio,AccessUser accessUser);
+	 /**
+	  * 根据试题ID获取音频文件
+	  * @return
+	  */
+	public List<QuestionAudio> findQuestionAudiosByQuestionId(String questionId);
+	/**
+	 * 根据questionId和文件名称查询对象
+	 * @param questionId
+	 * @param fileName
+	 * @return  
+	 */
+	public QuestionAudio findByQuestionIdAndFileName(String questionId,String fileName);
+	/**
+	 * 删除不在试题中的音频
+	 * @param question
+	 */
+	public void deleteAudioNotInQuestion(Question question);
+	
+	/**
+	 * 给音频排序
+	 * @param question
+	 */
+	public void sortAudio(Question question);
+}
+

+ 0 - 2
cqb-question-resource/src/main/java/com/qmth/cqb/question/service/impl/CoursePropertyServiceImpl.java

@@ -4,8 +4,6 @@ import java.util.ArrayList;
 import java.util.List;
 
 import javax.persistence.criteria.Predicate;
-import javax.persistence.criteria.Root;
-import javax.persistence.criteria.Subquery;
 
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.data.domain.Page;

+ 2 - 2
cqb-question-resource/src/main/java/com/qmth/cqb/question/service/impl/PropertyServiceImpl.java

@@ -143,8 +143,8 @@ public class PropertyServiceImpl implements PropertyService{
 	}
 
 	@Override
-	public List<Property> findPropertyParents(Long coursePropertyId, AccessUser user) {
-		List<Property> properties = propertyRepo.findByOrgIdAndCoursePropertyIdAndParentIdOrderByNumber(user.getRootOrgId(), coursePropertyId, 0l);
+	public List<Property> findPropertyParents(Long coursePropertyId, Long orgId) {
+		List<Property> properties = propertyRepo.findByOrgIdAndCoursePropertyIdAndParentIdOrderByNumber(orgId, coursePropertyId, 0l);
 		return properties;
 	}
 

+ 130 - 4
cqb-question-resource/src/main/java/com/qmth/cqb/question/service/impl/QuesServiceImpl.java

@@ -1,17 +1,29 @@
 package com.qmth.cqb.question.service.impl;
 
 import java.util.List;
+import java.util.Map;
 import java.util.Set;
 import java.util.regex.Pattern;
 
+import javax.xml.bind.JAXBElement;
+
 import com.qmth.cqb.question.dao.QuesPkgPathRepo;
 import com.qmth.cqb.question.model.*;
 
 import org.apache.commons.lang3.StringEscapeUtils;
 import org.apache.commons.lang3.StringUtils;
 import org.docx4j.Docx4J;
+import org.docx4j.XmlUtils;
+import org.docx4j.dml.CTPositiveSize2D;
+import org.docx4j.dml.wordprocessingDrawing.Inline;
+import org.docx4j.jaxb.Context;
 import org.docx4j.openpackaging.exceptions.InvalidFormatException;
 import org.docx4j.openpackaging.packages.WordprocessingMLPackage;
+import org.docx4j.wml.Body;
+import org.docx4j.wml.Drawing;
+import org.docx4j.wml.P;
+import org.docx4j.wml.PPr;
+import org.docx4j.wml.R;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.data.domain.Page;
 import org.springframework.data.domain.PageImpl;
@@ -161,6 +173,8 @@ public class QuesServiceImpl implements QuesService{
         updateQuesBody(question);
         if(question.getHasAudio()!=null&&question.getHasAudio()){
         	questionAudioService.deleteAudioNotInQuestion(question);
+        	//给音频重新排序
+        	questionAudioService.sortAudio(question);
         	//如果根据questionId查询不出音频了,将hasAudio设置为false
 			List<QuestionAudio> questionAudios = questionAudioRepo.findByQuestionId(question.getId());
 			if(questionAudios.size()==0){
@@ -170,7 +184,7 @@ public class QuesServiceImpl implements QuesService{
         return quesRepo.save(question);
     }
 
-    private void updateQuesBody(Question question) {
+	private void updateQuesBody(Question question) {
     	String newQuesBody = question.getQuesBody().replaceAll("______", "###");
         question.setQuesBody(newQuesBody);
 	}
@@ -210,8 +224,22 @@ public class QuesServiceImpl implements QuesService{
         if(searchCondition.getQuestionType() != null){
             query.addCriteria(Criteria.where("questionType").is(searchCondition.getQuestionType()));
         }
+        if(searchCondition.getPublicity() != null){
+        	query.addCriteria(Criteria.where("publicity").is(searchCondition.getPublicity()));
+        }
+        if(searchCondition.getCoursePropertyName() != null){
+        	query.addCriteria(Criteria.where("quesProperties.coursePropertyName").is(searchCondition.getCoursePropertyName()));
+        }
+        //二级属性不为空,那么一级属性也不为空
+        if(searchCondition.getSecondPropertyId() !=null){
+        	query.addCriteria(Criteria.where("quesProperties").elemMatch(Criteria.where("firstProperty.id").is(Long.valueOf(searchCondition.getFirstPropertyId())).and("secondProperty.id").is(Long.valueOf(searchCondition.getSecondPropertyId()))));
+        }else {
+        	if(searchCondition.getFirstPropertyId() !=null){
+            	query.addCriteria(Criteria.where("quesProperties").elemMatch(Criteria.where("firstProperty.id").is(Long.valueOf(searchCondition.getFirstPropertyId()))));
+            }
+        }
         long count = this.mongoTemplate.count(query, Question.class);
-//        query.with(new Sort(new Sort.Order(Sort.Direction.DESC,"createTime")));
+//      query.with(new Sort(new Sort.Order(Sort.Direction.DESC,"createTime")));
         query.limit(pageSize);
         query.skip((curPage - 1) * pageSize);
         List<Question> questionList = this.mongoTemplate.find(query, Question.class);
@@ -231,6 +259,21 @@ public class QuesServiceImpl implements QuesService{
         if(StringUtils.isEmpty(searchCondition.getCourseMajor())){
             searchCondition.setCourseMajor(null);
         }
+        if(StringUtils.isEmpty(String.valueOf(searchCondition.getPublicity()))){
+        	searchCondition.setPublicity(null);
+        }
+        if(StringUtils.isEmpty(searchCondition.getCoursePropertyName())){
+        	searchCondition.setCoursePropertyName(null);
+        }
+        if(StringUtils.isEmpty(searchCondition.getFirstPropertyId())){
+        	searchCondition.setFirstPropertyId(null);
+        }
+        if(StringUtils.isEmpty(searchCondition.getSecondPropertyId())){
+        	searchCondition.setSecondPropertyId(null);
+        }
+        if(StringUtils.isEmpty(searchCondition.getDifficulty())){
+        	searchCondition.setDifficulty(null);
+        }
     }
 
     /**
@@ -350,12 +393,15 @@ public class QuesServiceImpl implements QuesService{
         String quesBody = question.getQuesBody();
         String quesAnswer = question.getQuesAnswer();
         if(!StringUtils.isEmpty(quesBody)){
-            question.setQuesBodyWord(DocxProcessUtil.html2Docx(wordMLPackage, CommonUtils.formatHtml(quesBody)));
+        	StringBuffer pWordMl = new StringBuffer();
+            question.setQuesBodyWord(reduceImage(quesBody,pWordMl,wordMLPackage));
         }
         if(!StringUtils.isEmpty(quesAnswer)
                 && (question.getQuestionType() == QuesStructType.FILL_BLANK_QUESTION
                 || question.getQuestionType() == QuesStructType.TEXT_ANSWER_QUESTION)){
-            question.setQuesAnswerWord(DocxProcessUtil.html2Docx(wordMLPackage, CommonUtils.formatHtml(quesAnswer)));
+            //question.setQuesAnswerWord(DocxProcessUtil.html2Docx(wordMLPackage, CommonUtils.formatHtml(quesAnswer)));
+        	StringBuffer pWordMl = new StringBuffer();
+        	question.setQuesAnswerWord(reduceImage(quesAnswer,pWordMl,wordMLPackage));
         }
         if(!StringUtils.isEmpty(quesAnswer) && question.getQuestionType() == QuesStructType.BOOL_ANSWER_QUESTION){
         	quesAnswer = "<p>" + quesAnswer + "</p>";
@@ -377,6 +423,52 @@ public class QuesServiceImpl implements QuesService{
         }
     }
     
+    //如果图片过大,改变图片大小
+    private String reduceImage(String html,StringBuffer pWordMl,WordprocessingMLPackage wordMLPackage) throws Exception{
+    	String bodyString = DocxProcessUtil.html2Docx(wordMLPackage, CommonUtils.formatHtml(html));
+    	if(bodyString.indexOf("cx")>-1 || bodyString.indexOf("cy")>-1){
+    		String tmpStr = DocxProcessUtil.BODY_HEADER + bodyString + DocxProcessUtil.BODY_TAIL;
+    		Body body = (Body)XmlUtils.unmarshalString(tmpStr,Context.jc,Body.class);
+            List<Object> pList = body.getContent();
+            for(Object op:pList){
+            	P p = (P) op;
+            	List<Object> rList = p.getContent();
+            	for(Object or:rList){
+            		if(or instanceof R){
+            			R r = (R)or;
+                		List<Object> draList = r.getContent();
+            			for(Object odra:draList){
+            				if(odra instanceof JAXBElement){
+            					JAXBElement<?> jaxbElement = (JAXBElement<?>)odra;
+            					if(jaxbElement.getValue() instanceof Drawing){
+            						Drawing drawing = (Drawing)jaxbElement.getValue();
+                        			List<Object> inList = drawing.getAnchorOrInline();
+                        			for(Object oin:inList){
+                        				Inline inline = (Inline)oin;
+                        				CTPositiveSize2D extent = inline.getExtent();
+                        				if(extent.getCx()>4000000){
+                        					extent.setCx(3000000);
+                        				}
+                        				if(extent.getCy()>6000000){
+                        					extent.setCy(5000000);
+                        				}
+                        			}
+            					}
+            				}
+                		}
+            		}
+            	}
+            }
+			for(Object pObj:pList){
+                if(pObj instanceof P){
+                    pWordMl.append(DocxProcessUtil.formatPWordMl(XmlUtils.marshaltoString(pObj)));
+                }
+            }
+			return pWordMl.toString();
+    	}
+    	return bodyString;
+    }
+    
     private String makeQuesAnswerWord(String quesAnswer){
     	String template = "<w:p xmlns:w=\"http://schemas.openxmlformats.org/wordprocessingml/2006/main\" w:rsidR=\"00F65544\" w:rsidP=\"00F65544\" w:rsidRDefault=\"001738E2\">"+
 							    "<w:r w:rsidR=\"00F65544\">"+
@@ -434,6 +526,7 @@ public class QuesServiceImpl implements QuesService{
 			}
 		}
 	}
+	
 
 	private String getSelectQuestionAnswer(Question question,String optionOrder){
 		String answer = "";
@@ -462,5 +555,38 @@ public class QuesServiceImpl implements QuesService{
 		}
 		return answer;
 	}
+
+	@Override
+	public long findQuesCount(QuestionSearchCondition searchCondition) {
+		formatQuesCondition(searchCondition);
+		Query query = new Query();
+        query.addCriteria(Criteria.where("orgId").is(searchCondition.getOrgId()));
+        query.addCriteria(Criteria.where("course.enable").is("true"));
+        if(StringUtils.isNotBlank(searchCondition.getCourseNo())){
+            query.addCriteria(Criteria.where("course.code").is(searchCondition.getCourseNo()));
+        }
+        if(searchCondition.getQuestionType() != null){
+            query.addCriteria(Criteria.where("questionType").is(searchCondition.getQuestionType()));
+        }
+        if(searchCondition.getPublicity() != null){
+        	query.addCriteria(Criteria.where("publicity").is(searchCondition.getPublicity()));
+        }
+        if(searchCondition.getCoursePropertyName() != null){
+        	query.addCriteria(Criteria.where("quesProperties.coursePropertyName").is(searchCondition.getCoursePropertyName()));
+        }
+        if(searchCondition.getDifficulty() != null){
+        	query.addCriteria(Criteria.where("difficulty").is(searchCondition.getDifficulty()));
+        }
+        //二级属性不为空,那么一级属性也不为空
+        if(searchCondition.getSecondPropertyId() !=null){
+        	query.addCriteria(Criteria.where("quesProperties").elemMatch(Criteria.where("firstProperty.id").is(Long.valueOf(searchCondition.getFirstPropertyId())).and("secondProperty.id").is(Long.valueOf(searchCondition.getSecondPropertyId()))));
+        }else {
+        	if(searchCondition.getFirstPropertyId() !=null){
+            	query.addCriteria(Criteria.where("quesProperties").elemMatch(Criteria.where("firstProperty.id").is(Long.valueOf(searchCondition.getFirstPropertyId()))));
+            }
+        }
+        long count = this.mongoTemplate.count(query, Question.class);
+		return count;
+	}
 }
 

+ 170 - 108
cqb-question-resource/src/main/java/com/qmth/cqb/question/service/impl/QuestionAudioServiceImpl.java

@@ -1,108 +1,170 @@
-package com.qmth.cqb.question.service.impl;
-
-import java.util.Date;
-import java.util.Iterator;
-import java.util.List;
-
-import main.java.com.UpYun;
-
-import org.apache.commons.lang3.StringUtils;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.beans.factory.annotation.Value;
-import org.springframework.stereotype.Service;
-import org.springframework.util.Assert;
-
-import cn.com.qmth.examcloud.common.uac.entity.AccessUser;
-
-import com.qmth.cqb.question.dao.QuesRepo;
-import com.qmth.cqb.question.dao.QuestionAudioRepo;
-import com.qmth.cqb.question.model.QuesOption;
-import com.qmth.cqb.question.model.Question;
-import com.qmth.cqb.question.model.QuestionAudio;
-import com.qmth.cqb.question.service.QuestionAudioService;
-
-/**
- * @author  	chenken
- * @date    	2017年8月1日 上午11:27:33
- * @company 	QMTH
- * @description QuestionRadioServiceImpl.java
- */
-@Service("questionAudioService")
-public class QuestionAudioServiceImpl implements QuestionAudioService{
-
-	@Autowired
-	private QuestionAudioRepo questionAudioRepo;
-	
-	@Autowired
-	private QuesRepo quesRepo;
-	
-	@Value("${upyun.bucketName}")
-	protected String bucketName;
-	
-	@Value("${upyun.userName}")
-	protected String userName;
-	
-	@Value("${upyun.password}")
-	protected String password;
-	
-	@Override
-	public void saveQuestionAudio(QuestionAudio questionAudio,AccessUser accessUser) {
-		QuestionAudio questionAudio2 = findByQuestionIdAndFileName(questionAudio.getQuestionId(),questionAudio.getFileName());
-    	if(questionAudio2 != null){
-    		UpYun upYun = new UpYun(bucketName, userName, password);
-    		upYun.deleteFile(questionAudio2.getFileUrl());
-    		questionAudioRepo.delete(questionAudio2);
-    	}
-		questionAudio.setCreateTime(new Date());
-		questionAudio.setCreateUser(accessUser.getName());
-		questionAudioRepo.save(questionAudio);
-	}
-
-	@Override
-	public List<QuestionAudio> findQuestionAudiosByQuestionId(String questionId) {
-		Assert.hasLength(questionId, "questionId不能为空");
-		return questionAudioRepo.findByQuestionId(questionId);
-	}
-
-	@Override
-	public QuestionAudio findByQuestionIdAndFileName(String questionId,String fileName) {
-		if(StringUtils.isBlank(questionId)||StringUtils.isBlank(fileName)){
-			return null;
-		}
-		return questionAudioRepo.findByQuestionIdAndFileName(questionId,fileName);
-	}
-
-	@Override
-	public void deleteAudioNotInQuestion(Question question) {
-		if(question.getHasAudio()!=null&&question.getHasAudio()){
-			List<QuestionAudio> questionAudios = questionAudioRepo.findByQuestionId(question.getId());
-			StringBuffer buffer = new StringBuffer();
-			buffer.append(question.getQuesBody());
-			if(question.getQuesOptions()!=null&&question.getQuesOptions().size()>0){
-				for(QuesOption option:question.getQuesOptions()){
-					buffer.append(option.getOptionBody());
-				}
-			}
-			String questionBodyAndOptionStr = buffer.toString();
-			Iterator<QuestionAudio> audioIterator = questionAudios.iterator();
-			while(audioIterator.hasNext()){
-				QuestionAudio audio = audioIterator.next();
-				if(!questionBodyAndOptionStr.contains(audio.getFileName())){
-					UpYun upYun = new UpYun(bucketName, userName, password);
-					upYun.deleteFile(audio.getFileUrl());
-					questionAudioRepo.delete(audio);
-				}
-			}
-		}
-	}
-
-	@Override
-	public QuestionAudio findAudioById(String id) {
-		if(StringUtils.isNotBlank(id)){
-			return questionAudioRepo.findOne(id);
-		}
-		return null;
-	}
-
-}
-
+package com.qmth.cqb.question.service.impl;
+
+import java.util.ArrayList;
+import java.util.Date;
+import java.util.Iterator;
+import java.util.LinkedHashMap;
+import java.util.List;
+import java.util.Map;
+import java.util.regex.Matcher;
+import java.util.regex.Pattern;
+
+import main.java.com.UpYun;
+
+import org.apache.commons.lang3.StringUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.beans.factory.annotation.Value;
+import org.springframework.stereotype.Service;
+import org.springframework.util.Assert;
+
+import cn.com.qmth.examcloud.common.uac.entity.AccessUser;
+
+import com.qmth.cqb.question.dao.QuesRepo;
+import com.qmth.cqb.question.dao.QuestionAudioRepo;
+import com.qmth.cqb.question.model.QuesOption;
+import com.qmth.cqb.question.model.Question;
+import com.qmth.cqb.question.model.QuestionAudio;
+import com.qmth.cqb.question.service.QuestionAudioService;
+
+/**
+ * @author  	chenken
+ * @date    	2017年8月1日 上午11:27:33
+ * @company 	QMTH
+ * @description QuestionRadioServiceImpl.java
+ */
+@Service("questionAudioService")
+public class QuestionAudioServiceImpl implements QuestionAudioService{
+
+	@Autowired
+	private QuestionAudioRepo questionAudioRepo;
+	
+	@Autowired
+	private QuesRepo quesRepo;
+	
+	@Value("${upyun.bucketName}")
+	protected String bucketName;
+	
+	@Value("${upyun.userName}")
+	protected String userName;
+	
+	@Value("${upyun.password}")
+	protected String password;
+	
+	@Override
+	public void saveQuestionAudio(QuestionAudio questionAudio,AccessUser accessUser) {
+		QuestionAudio questionAudio2 = findByQuestionIdAndFileName(questionAudio.getQuestionId(),questionAudio.getFileName());
+		if(questionAudio2 != null){
+			questionAudio.setId(questionAudio2.getId());
+    		UpYun upYun = new UpYun(bucketName, userName, password);
+    		upYun.deleteFile(questionAudio2.getFileUrl());
+    		questionAudioRepo.delete(questionAudio2);
+    	}
+		questionAudio.setCreateTime(new Date());
+		questionAudio.setCreateUser(accessUser.getName());
+		questionAudioRepo.save(questionAudio);
+	}
+
+	@Override
+	public List<QuestionAudio> findQuestionAudiosByQuestionId(String questionId) {
+		Assert.hasLength(questionId, "questionId不能为空");
+		return questionAudioRepo.findByQuestionId(questionId);
+	}
+
+	@Override
+	public QuestionAudio findByQuestionIdAndFileName(String questionId,String fileName) {
+		if(StringUtils.isBlank(questionId)||StringUtils.isBlank(fileName)){
+			return null;
+		}
+		return questionAudioRepo.findByQuestionIdAndFileName(questionId,fileName);
+	}
+
+	@Override
+	public void deleteAudioNotInQuestion(Question question) {
+		if(question.getHasAudio()!=null&&question.getHasAudio()){
+			List<QuestionAudio> questionAudios = questionAudioRepo.findByQuestionId(question.getId());
+			StringBuffer buffer = new StringBuffer();
+			buffer.append(question.getQuesBody());
+			if(question.getQuesOptions()!=null&&question.getQuesOptions().size()>0){
+				for(QuesOption option:question.getQuesOptions()){
+					buffer.append(option.getOptionBody());
+				}
+			}
+			String questionBodyAndOptionStr = buffer.toString();
+			Iterator<QuestionAudio> audioIterator = questionAudios.iterator();
+			while(audioIterator.hasNext()){
+				QuestionAudio audio = audioIterator.next();
+				if(!questionBodyAndOptionStr.contains(audio.getFileName())){
+					UpYun upYun = new UpYun(bucketName, userName, password);
+					upYun.deleteFile(audio.getFileUrl());
+					questionAudioRepo.delete(audio);
+				}
+			}
+		}
+	}
+
+	@Override
+	public QuestionAudio findAudioById(String id) {
+		if(StringUtils.isNotBlank(id)){
+			return questionAudioRepo.findOne(id);
+		}
+		return null;
+	}
+
+	@Override
+	public void sortAudio(Question question) {
+		if(question.getHasAudio()!=null&&question.getHasAudio()){
+			StringBuffer buffer = new StringBuffer();
+			buffer.append(question.getQuesBody());
+			if(question.getQuesOptions()!=null&&question.getQuesOptions().size()>0){
+				for(QuesOption option:question.getQuesOptions()){
+					buffer.append(option.getOptionBody());
+				}
+			}
+			String questionBodyAndOptionStr = buffer.toString();
+			//定义一个集合添加音频信息
+			Map<String, String> map = getFileNames(questionBodyAndOptionStr);
+			//循环替换
+			for(String key:map.keySet()){
+				questionBodyAndOptionStr = questionBodyAndOptionStr.replace(key, map.get(key));
+			}
+			//替换并更新数据
+			for(String key:map.keySet()){
+				String fileName = key;
+				questionBodyAndOptionStr = questionBodyAndOptionStr.replace(map.get(key), map.get(key).substring(0, map.get(key).indexOf("@")));
+				QuestionAudio questionAudio = questionAudioRepo.findByQuestionIdAndFileName(question.getId(),fileName);
+				questionAudio.setFileName(map.get(key).substring(0, map.get(key).indexOf("@")));
+				questionAudioRepo.save(questionAudio);
+			}
+		}
+	}
+	
+	private Map<String, String> getFileNames(String str){
+		StringBuffer buffer = new StringBuffer();
+		Map<String, String> map = new LinkedHashMap<String, String>();
+		Pattern p = Pattern.compile("<a\\s+[^<>]*\\s+name=\"([^<>\"]*)\"[^<>]*>"); 
+	    Matcher m = p.matcher(str);
+	    int i = 1;
+	    int y = 1;
+	    while(m.find()) {
+		  String name = m.group(1);
+		  if(name.substring(0, name.indexOf("_")+1).contains("2")){
+			  buffer.append(name.substring(0,name.lastIndexOf("_")));
+			  buffer.append(i);
+			  buffer.append(name.substring(name.lastIndexOf(".")));
+			  buffer.append("@temp");
+		      map.put(m.group(1), buffer.toString());
+		      i++;
+		  }else {
+			  buffer.append(name.substring(0,name.lastIndexOf("_")));
+			  buffer.append(y);
+			  buffer.append(name.substring(name.lastIndexOf(".")));
+			  buffer.append("@temp");
+		      map.put(m.group(1), buffer.toString());
+		      y++;
+		  }
+	    }
+	    return map;
+	}
+
+}
+

+ 1 - 1
cqb-question-resource/src/main/java/com/qmth/cqb/question/web/PropertyController.java

@@ -119,7 +119,7 @@ public class PropertyController {
 	public ResponseEntity<Object> findParents(HttpServletRequest request, @PathVariable Long coursePropertyId){
 		AccessUser accessUser = (AccessUser)request.getAttribute("accessUser");
 		if(accessUser != null){
-			List<Property> properties = propertyService.findPropertyParents(coursePropertyId, accessUser);
+			List<Property> properties = propertyService.findPropertyParents(coursePropertyId, accessUser.getRootOrgId());
 			return new ResponseEntity<Object>(properties,HttpStatus.OK);
 		}
 		return new ResponseEntity<Object>(HttpStatus.NOT_FOUND);

+ 147 - 138
cqb-question-resource/src/main/java/com/qmth/cqb/question/web/QuesController.java

@@ -1,138 +1,147 @@
-package com.qmth.cqb.question.web;
-
-import java.util.List;
-
-import javax.servlet.http.HttpServletRequest;
-
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.http.HttpStatus;
-import org.springframework.http.ResponseEntity;
-import org.springframework.web.bind.annotation.DeleteMapping;
-import org.springframework.web.bind.annotation.GetMapping;
-import org.springframework.web.bind.annotation.ModelAttribute;
-import org.springframework.web.bind.annotation.PathVariable;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.PutMapping;
-import org.springframework.web.bind.annotation.RequestBody;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
-
-import com.google.gson.Gson;
-import com.qmth.cqb.question.dao.QuesRepo;
-import com.qmth.cqb.question.model.Question;
-import com.qmth.cqb.question.model.QuestionSearchCondition;
-import com.qmth.cqb.question.service.QuesService;
-
-import cn.com.qmth.examcloud.common.uac.annotation.Uac;
-import cn.com.qmth.examcloud.common.uac.entity.AccessUser;
-import cn.com.qmth.examcloud.common.uac.enums.RoleMeta;
-import cn.com.qmth.examcloud.common.uac.enums.UacPolicy;
-import io.swagger.annotations.ApiOperation;
-
-/**
- * Created by songyue on 16/12/28.
- */
-@RestController
-@RequestMapping("${api_cqb}/")
-public class QuesController {
-
-    @Autowired
-    QuesService quesService;
-
-    @Autowired
-    QuesRepo quesRepo;
-
-    @Autowired
-    Gson gson;
-
-    /**
-     * 获取试题
-     * 
-     * @param id
-     * @return
-     */
-    @ApiOperation(value = "获取试题", notes = "获取试题")
-    @Uac(roles={RoleMeta.QUESTION_ADMIN,RoleMeta.SUPER_ADMIN},policy=UacPolicy.IN)
-    @GetMapping(value = "/question/{id}")
-    public ResponseEntity getQuesById(@PathVariable String id) {
-        Question ques = quesRepo.findOne(id);
-        quesService.formatQues(ques);
-        return new ResponseEntity(ques, HttpStatus.OK);
-    }
-
-    /**
-     * 分页查询试题
-     * 
-     * @return
-     */
-    @ApiOperation(value = "分页查询试题", notes = "分页查询试题")
-    @Uac(roles={RoleMeta.QUESTION_ADMIN,RoleMeta.SUPER_ADMIN},policy=UacPolicy.IN)
-    @GetMapping(value = "/question/{curPage}/{pageSize}")
-    public ResponseEntity getAllQuestion(HttpServletRequest request,
-                                        @ModelAttribute QuestionSearchCondition searchCondition,
-                                        @PathVariable int curPage, 
-                                        @PathVariable int pageSize) {
-        AccessUser user = (AccessUser) request.getAttribute("accessUser");
-        searchCondition.setOrgId(user.getRootOrgId().toString());
-        return new ResponseEntity(quesService.findAll(searchCondition, curPage, pageSize), HttpStatus.OK);
-    }
-
-    /**
-     * 更新试题信息
-     * 
-     * @param
-     * @return
-     */
-    @ApiOperation(value = "更新试题", notes = "更新试题")
-    @Uac(roles={RoleMeta.QUESTION_ADMIN,RoleMeta.SUPER_ADMIN},policy=UacPolicy.IN)
-    @PutMapping(value = "/question")
-    public ResponseEntity updateQuestion(@RequestBody Question question) {
-        quesService.saveQues(question);
-        return new ResponseEntity(HttpStatus.OK);
-    }
-
-    /**
-     * 新增试题
-     * 
-     * @param question
-     * @return
-     */
-    @ApiOperation(value = "新增试题", notes = "新增试题")
-    @Uac(roles={RoleMeta.QUESTION_ADMIN,RoleMeta.SUPER_ADMIN},policy=UacPolicy.IN)
-    @PostMapping(value = "/question")
-    public ResponseEntity addQuestion(HttpServletRequest request,
-                                      @RequestBody Question question) {
-        return new ResponseEntity(quesService.saveQues(question), HttpStatus.CREATED);
-    }
-
-    /**
-     * 删除试题
-     * 
-     * @param id
-     * @return
-     */
-    @ApiOperation(value = "删除试题", notes = "删除试题")
-    @Uac(roles={RoleMeta.QUESTION_ADMIN,RoleMeta.SUPER_ADMIN},policy=UacPolicy.IN)
-    @DeleteMapping(value = "/question/{id}")
-    public ResponseEntity removeQuestion(@PathVariable String id) {
-        quesRepo.delete(id);
-        return new ResponseEntity(HttpStatus.OK);
-    }
-
-    /**
-     * 删除套题子题
-     * 
-     * @param id
-     * @return
-     */
-    @ApiOperation(value = "删除套题子题", notes = "删除套题子题")
-    @Uac(roles={RoleMeta.QUESTION_ADMIN,RoleMeta.SUPER_ADMIN},policy=UacPolicy.IN)
-    @PutMapping(value = "/question/{id}/{number}")
-    public ResponseEntity removeQuestion(@PathVariable String id, @PathVariable String number) {
-        Question question = quesRepo.findOne(id);
-        List<Question> subQuestions = question.getSubQuestions();
-        subQuestions.remove(Integer.parseInt(number));
-        return new ResponseEntity(quesRepo.save(question), HttpStatus.OK);
-    }
-
-}
+package com.qmth.cqb.question.web;
+
+import java.util.List;
+
+import javax.servlet.http.HttpServletRequest;
+
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.http.HttpStatus;
+import org.springframework.http.ResponseEntity;
+import org.springframework.web.bind.annotation.DeleteMapping;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.ModelAttribute;
+import org.springframework.web.bind.annotation.PathVariable;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.PutMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+import com.google.gson.Gson;
+import com.qmth.cqb.question.dao.QuesRepo;
+import com.qmth.cqb.question.model.Question;
+import com.qmth.cqb.question.model.QuestionSearchCondition;
+import com.qmth.cqb.question.service.QuesService;
+
+import cn.com.qmth.examcloud.common.uac.annotation.Uac;
+import cn.com.qmth.examcloud.common.uac.entity.AccessUser;
+import cn.com.qmth.examcloud.common.uac.enums.RoleMeta;
+import cn.com.qmth.examcloud.common.uac.enums.UacPolicy;
+import io.swagger.annotations.ApiOperation;
+
+/**
+ * Created by songyue on 16/12/28.
+ */
+@RestController
+@RequestMapping("${api_cqb}/")
+public class QuesController {
+
+    @Autowired
+    QuesService quesService;
+
+    @Autowired
+    QuesRepo quesRepo;
+
+    @Autowired
+    Gson gson;
+
+    /**
+     * 获取试题
+     * 
+     * @param id
+     * @return
+     */
+    @ApiOperation(value = "获取试题", notes = "获取试题")
+    @Uac(roles={RoleMeta.QUESTION_ADMIN,RoleMeta.SUPER_ADMIN},policy=UacPolicy.IN)
+    @GetMapping(value = "/question/{id}")
+    public ResponseEntity getQuesById(@PathVariable String id) {
+        Question ques = quesRepo.findOne(id);
+        quesService.formatQues(ques);
+        return new ResponseEntity(ques, HttpStatus.OK);
+    }
+
+    /**
+     * 分页查询试题
+     * 
+     * @return
+     */
+    @ApiOperation(value = "分页查询试题", notes = "分页查询试题")
+    @Uac(roles={RoleMeta.QUESTION_ADMIN,RoleMeta.SUPER_ADMIN},policy=UacPolicy.IN)
+    @GetMapping(value = "/question/{curPage}/{pageSize}")
+    public ResponseEntity getAllQuestion(HttpServletRequest request,
+                                        @ModelAttribute QuestionSearchCondition searchCondition,
+                                        @PathVariable int curPage, 
+                                        @PathVariable int pageSize) {
+        AccessUser user = (AccessUser) request.getAttribute("accessUser");
+        searchCondition.setOrgId(user.getRootOrgId().toString());
+        return new ResponseEntity(quesService.findAll(searchCondition, curPage, pageSize), HttpStatus.OK);
+    }
+
+    /**
+     * 更新试题信息
+     * 
+     * @param
+     * @return
+     */
+    @ApiOperation(value = "更新试题", notes = "更新试题")
+    @Uac(roles={RoleMeta.QUESTION_ADMIN,RoleMeta.SUPER_ADMIN},policy=UacPolicy.IN)
+    @PutMapping(value = "/question")
+    public ResponseEntity updateQuestion(@RequestBody Question question) {
+        quesService.saveQues(question);
+        return new ResponseEntity(HttpStatus.OK);
+    }
+
+    /**
+     * 新增试题
+     * 
+     * @param question
+     * @return
+     */
+    @ApiOperation(value = "新增试题", notes = "新增试题")
+    @Uac(roles={RoleMeta.QUESTION_ADMIN,RoleMeta.SUPER_ADMIN},policy=UacPolicy.IN)
+    @PostMapping(value = "/question")
+    public ResponseEntity addQuestion(HttpServletRequest request,
+                                      @RequestBody Question question) {
+        return new ResponseEntity(quesService.saveQues(question), HttpStatus.CREATED);
+    }
+
+    /**
+     * 删除试题
+     * 
+     * @param id
+     * @return
+     */
+    @ApiOperation(value = "删除试题", notes = "删除试题")
+    @Uac(roles={RoleMeta.QUESTION_ADMIN,RoleMeta.SUPER_ADMIN},policy=UacPolicy.IN)
+    @DeleteMapping(value = "/question/{id}")
+    public ResponseEntity removeQuestion(@PathVariable String id) {
+        quesRepo.delete(id);
+        return new ResponseEntity(HttpStatus.OK);
+    }
+
+    /**
+     * 删除套题子题
+     * 
+     * @param id
+     * @return
+     */
+    @ApiOperation(value = "删除套题子题", notes = "删除套题子题")
+    @Uac(roles={RoleMeta.QUESTION_ADMIN,RoleMeta.SUPER_ADMIN},policy=UacPolicy.IN)
+    @PutMapping(value = "/question/{id}/{number}")
+    public ResponseEntity removeQuestion(@PathVariable String id, @PathVariable String number) {
+        Question question = quesRepo.findOne(id);
+        List<Question> subQuestions = question.getSubQuestions();
+        subQuestions.remove(Integer.parseInt(number));
+        return new ResponseEntity(quesRepo.save(question), HttpStatus.OK);
+    }
+
+    @ApiOperation(value = "查询题目数量", notes = "查询题目数量")
+    @Uac(roles={RoleMeta.QUESTION_ADMIN,RoleMeta.SUPER_ADMIN},policy=UacPolicy.IN)
+    @GetMapping(value = "/question/count")
+    public ResponseEntity<Object> getQuesCount(HttpServletRequest request,@ModelAttribute QuestionSearchCondition searchCondition){
+    	AccessUser user = (AccessUser) request.getAttribute("accessUser");
+        searchCondition.setOrgId(user.getRootOrgId().toString());
+        long count = quesService.findQuesCount(searchCondition);
+        return new ResponseEntity<Object>(count, HttpStatus.OK);
+    }
+}