ࡱ> [ cbjbj .ΐΐ[**mmmmm$|||5777777$^f[m|||||[mmp:::|j mm5:|5::Bhw,u0G5(of!0Չē9ēww&ēm||:|||||[[:|||||||ē|||||||||* 3: Format Statement The format statement associates formats with the variables in the SAS data step. General form of the format statement is: FORMAT variable(s) format; Where the format is in the following form: <$>format. $ : for character format format: format name (such as: date, comma, dollar etc.) w: Total width including all characters . Required delimiter d Number of decimal places Selected SAS formats: Standard Numeric format: w.d 5.2 12.46 12.2 123456789.12 Standard Character format: $w. $3. ABC $8. PROGRAMS Use comma in number: COMMAw.d comma6.0 12,345 comma9.2 12,345.12 Currency, dollar DOLLARw.d Dollar6.0 $2,345 Dollar10.2 $12,345.12 Date format DATEw. date7. 16FEB03 date9. 16FEB2003 YYMMDDw. yymmdd10. 2003-02-16 MMDDYY. mmddyy10. 02/16/2003 yymmn6. 200701 monyy7. FEB2012 Use format in data step data show_format; number=1234.1; format number comma7.1; name = 'His name is Tom'; format name $15. ; balance=123456.28; format balance dollar11.2; * Try dollar10.2. Then try dollar3.2 to see w.d format message; dt=today(); format dt mmddyy10.; format dt date9.; * If format is redefined, the last format will over write the early ones; run; proc print data= show_format; run; Creating user defined format: PROC FORMAT Using PROC FORMAT, user can create user defined format. General form of the proc format step; PROC FORMAT; VALUE format-name range1 = label range2 = label ; rangen = label ; RUN; Format-name: For V9, a numeric format name can be up to 32 characters in length; a character format name can be up to 31 characters in length. For character values, the 1st character has to be $, the 2nd character has to be letter or _. For numeric values, the 1st character has to be letter or _. The last character cannot be number. Cannot be a name of SAS format. Label: Can be up to 32,768 (2^15) characters in length Usually enclosed in quotes, but is not required. Range(s) Can be single value Range of values Example: libname cdat '/courses/ddbf9765ba27fe300'; data cdat.random_number; do i=1 to 100; number=int(ranuni(1)*100); if number<33 then type='A'; else if number<66 then type='B'; else type='C'; output; end; run; proc format; value range low - 20 = '<= 20' 21 - 40 = '21 - 40' 41 - 60 = '41 - 60' 61 - 80 = '61 - 80' 81 - high = '80+' ; value $risk 'A' = 'Low Risk' 'B' = 'Middle' 'C' = 'High Risk'; run; data rn_fmt; set cdat.random_number; fmt_num = put(number,range.); fmt_risk= put(type, $risk.); new_number=number; new_type=type; format new_number range.; format new_type $risk. ; run; proc contents data=rn_fmt; run; proc print data=rn_fmt(obs=20); run; Note: Another difference between IF and WHERE: IF can only be used in data step. WHERE can be used in both data step and PROC. proc print data=rn_fmt; where type='A'; run; Note: Though variable type='A' is formated to 'Low Risk', in side the SAS data, the value of type is still 'A'. If you use where type='Low Risk';, there will be no observation be selected. proc print data=rn_fmt; if type='A'; * When use IF in PROC, ERROR will be generated as following; run; 45 proc print data=rn_fmt; 46 if type='A'; -- 180 ERROR 180-322: Statement is not valid or it is used out of proper order. 47 run; NOTE: The SAS System stopped processing this step because of errors. NOTE: PROCEDURE PRINT used: real time 0.00 seconds LABEL Statement The LABEL statement permanently associates descriptive labels with variables. Syntax: LABLE variable1 =label-1 variable2=label-2 variablen=label-n ; Where variable1, variable2 are variable names, label1, label2, are labels. In version6, variable can be up to 40 characters, including blanks. In version8 &9, variable can be up to 256 characters. Example: data stocks; set cdat.stocks2; label ticker = 'Ticker Name' price = 'Stock Price' industry='Type of Industry'; run; proc contents data=stocks; run; proc print data=stocks label; run; Variable labels can be seen from the output of the PROC CONTENTS. Variable labels can replace variable names in SAS output. Variable labels used automatically by many procedures. Permanent and temporal association of FORMAT and LABEL When FORMAT or LABEL statements are used in DATA STEP, a permanent association between variable name and its FORMAT or LABEL is build for variable attribute. This information is in the descriptor part of the dataset, and can be viewed by PROC CONTENTS. Example: Permanent association libname cdat '/courses/ddbf9765ba27fe300; data stocks; set cdat.stocks2; label ticker = 'Ticker Name' price = 'Stock Price' industry='Type of Industry'; format ticker $5. price 6.2 industry $6.; run; proc contents data=stocks; run; When FORMAT or LABEL statements are used in PROC STEP, a temporal association between variable name and its FORMAT or LABEL is build for variable attribute. This information can be viewed in the output of the procedure, but can not be viewed by PROC CONTENTS. Example: Temporal association libname cdat '/courses/ddbf9765ba27fe300'; proc print data=cdat.stocks2 label; label ticker = 'Ticker Name' price = 'Stock Price' industry = 'Type of Industry'; format ticker $5. price 6.2 industry $6.; run; proc contents data=cdat.stocks; run; Change Variable Attributes Change Variable NMAE: Use RENAME option in data step option; (rename= (oldname=newname)); data show_rename1; set cdat.date_time(rename= (bdd=birth_day bmm=birth_month byy=birth_year)); run; * oldname=nemwname; proc contents data=show_rename1; run; data show_rename2(rename= (bdd=birth_day bmm=birth_month byy=birth_year)); set cdat.date_time; run; proc contents data=show_rename2; run; Note: RENAME can be used either in input or output date set. When use RENAME in the input data step option, the old variable name(s) will not be available inside the data step. Use RENAME statement in the data step: oldname=newname; data show_rename; set cdat.date_time; rename bdd = birth_day bmm = birth_month byy = birth_year; * old_name = new_name; run; proc contents data=show_rename; run; Note: When use RENAME in the data step, the new name is not available in the data step. Use Windows interface to change variable attributes. Select tab, then double click the icon, then double click the library name that contain the SAS data set, then Right click on the data set name, select , Right click on the vriable you want to rename, then select . At this window, you can change variable name and label. Use PROC DATASETS (see following) Change Variable FORMAT and LABEL: Use FORMAT or LABEL statement. Use Windows interface. 3. Use PROC DATASETS PROC DATASETS: PROC DATASETS is a procedure to manage SAS data library. It has many functions. For details, see SAS Procedures Guide. At this time, we only use this procedure to change data set attribute. The advantage of using this method is that it change variable attribute at the data set descriptor directly without reading the whole data set. Therefore it is an very efficient way, especially for large data set. proc format; value range low - 20 = '< 20' 21 - 40 = '21 - 40' 41 - 60 = '41 - 60' 61 - 80 = '60 - 80' 81 - high = '80+' ; value $risk 'A' = 'Low Risk' 'B' = 'Middle' 'C' = 'High Risk'; run; data rn_fmt; set cdat.random_number; fmt_num = put(number,range.); fmt_risk= put(type, $risk.); format number range.; format type $risk. ; run; proc contents data=rn_fmt; run; proc datasets library=work; modify rn_fmt ; * rn_fmt is the dataset name; format number 4.0 type $1.; rename fmt_num = range fmt_risk = risk_level; run; quit; proc contents data=rn_fmt; run; Reading External data and Excl spread sheet with the Import Wizard Demonstration in the class. Reading External Data with PROC IMPORT General form of IMPORT procedure: PROC IMPORT OUT=out_data_name DATAFILE = external_file_name DBMS = identifiers ; GETNAMES = YES ; RUN; The following are the available DBMS Specifications Identifier Input Data Source File Extension ======== ============================== =========== ACCESS MS Access database .MDB ACCESS97 MS Access database 97 .MDB ACCESS2000 MS Access database 2000 .MDB DBF dBASE file .DBF WK1 Lotus 1 spreadsheet .WK1 WK3 Lotus 3 spreadsheet .WK3 WK4 Lotus 4 spreadsheet .WK4 EXCEL5 Excel Version 5 spreadsheet .XLS EXCEL97 Excel 97 spreadsheet .XLS EXCEL2000 Excel 2000 spreadsheet .XLS DLM delimited file (default delimiter is a blank) .* CSV delimited file (comma delimited file) .CSV TAB delimited file (tab-delimited file) .TXT Example: Read Excel file PROC IMPORT OUT=dow DATAFILE = ''c:\sas_class\classdata\dow_history.xls' DBMS = EXCEL REPLACE; GETNAMES = YES; * Sheet = dow_history; RUN; proc contents data=dow; run; options ls=120; proc print data=dow(obs=10); run; Example: Read comma delimited (.CSV) file. *.csv file is comma delimited file. It can be opened by Excel directly. PROC IMPORT OUT=clia_comma DATAFILE = 'c:\sas_class\classdata\clia_comma.csv' DBMS = CSV REPLACE; GETNAMES = YES; RUN; proc contents data=clia_comma; run; options ls=256; proc print data=clia_comma(obs=10); run; Reading Excel file using Microsoft Office Libname Engine: libname exl 'c:\sas_class\classdata\dow_history.xls'; proc datasets library=exl; run; data daw; set exl.'Sheet1$'n; run; Example: Export SAS Data Set to Excel file proc export data=cdat.Stocks outfile="c:\temp\Stock.xls" dbms=EXCEL replace; run; Example: Export SAS Data Set to CSV file proc export data=cdat.Stocks outfile="c:\temp\Stock.CSV" dbms=CSV replace; run; Data Step Programming Reading Selected Variables Keep or DROP selected variables using data step KEEP or DROP option libname cdat '/courses/ddbf9765ba27fe300'; data clia2; set cdat.clia (KEEP = BK000031 GENETIC_TESTING_INSTITUTE_GTI_MA HIGH PLATELET_GLYCOPROTEIN_IIB_IIIA_R VAR5 ); * or DROP; run; data clia2(KEEP = BK000031 GENETIC_TESTING_INSTITUTE_GTI_MA HIGH PLATELET_GLYCOPROTEIN_IIB_IIIA_R VAR5 ); * or DROP; set cdat.clia ; run; Note: KEEP or DROP can be use in both input and output data set. When use in input dataset, only the kept variables are read. Therefore it is more efficient, but variables that are not kept will not be available for the data step. KEEP or DROP selected variables using KEEP or DROP statement data clia2; set cdat.clia ; KEEP K000031 GENETIC_TESTING_INSTITUTE_GTI_MA HIGH PLATELET_GLYCOPROTEIN_IIB_IIIA_R VAR5 ; run; Note: KEEP or DROP statement applies to all output data sets. Therefore all input data set variables are available for data step processing before it output to the output data set. Example for Useful short hand writing for keep and drop option and statement: Run the following data step and proc contents, review the output window, and view data. Dont nee to understand the array for now. data Keep_demo; length c1 c2 $8; array aa(10); do i=1 to 10; do j=1 to 10; aa(j)=j; end; c1='CHAR'; c2='CHAR2'; output; end; run; proc contents data=keep_demo; run; proc print data=keep_demo; run; data b; set keep_demo (keep=aa1-aa5); * keep option keeps aa1, aa2, aa5; run; data b; set keep_demo; keep aa1 - aa5; * keep statement keeps aa1, aa2, aa5; run; data c; set keep_demo (keep=aa:); * keep option keeps all vars start with aa; run; data d; set keep_demo (keep= _numeric_); run; data e; set keep_demo (keep= _character_); run; IF THEN and logical comparison Syntax IF expression THEN statement; Example 1: Writing a serious of mutually exclusive conditions. * In the following program, the values of variable NUMBER is random number between 1 and 100.; libname cdat '/courses/ddbf9765ba27fe300'; data rn; set cdat.random_number; if number < 25 then quartile = 1; else if number < 50 then quartile = 2; else if number < 75 then quartile = 3; else quartile = 4; run; Example 2: Two dimensional lookup. Suppose there are two variables x and y. For each x and y variable there is a coefficient value as the following 2D table: Y 1 2 3 X 1 11 12 13 2 21 22 23 3 31 32 33 The follow program implement this 2D look up table in the SAS code: data xy; input x y; cards; 1 1 1 2 1 3 2 1 2 2 2 3 3 1 3 2 3 3 ; run; data lookup_xy; set xy; if x=1 and y=1 then coef=11; else if x=1 and y=2 then coef=12; else if x=1 and y=3 then coef=13; else if x=2 and y=1 then coef=21; else if x=2 and y=2 then coef=22; else if x=2 and y=3 then coef=23; else if x=3 and y=1 then coef=31; else if x=3 and y=2 then coef=32; else coef=33; run; Note: For small 2D look up table, this method is easy to use, and easy to understand. But for large multiple dimensional lookup table, this method can be tedious and not very efficient. For example, for a 2D 10X10 table, there are going to have 100 line of IF THEN statements. Later in this class we will study the array look up method. Operators can be used in IF conditions: Symbol Operator Meaning = EQ equal to ^= NE not equal to > GT greater than < LT less than >= GE greater then or equal to <= LE less than or equal to Examples: IF balance NE . and balance > 0 then bal_flg=1; Perform more than one action for one IF THEN condition Example: IF class = ANIMAL THEN obj1 = DOG; IF class = ANIMAL THEN obj2 = CAT; IF class = ANIMAL THEN obj3 = DUCK; IF class = AUTO THEN obj1 = CAR; IF class = AUTO THEN obj2 = TRUCK; IF class = AUTO THEN obj3 = SUV; Note: For each THEN statement, only one action can be done. If for one if condition, multiple tasks need to be done, multiple IF condition has to be repeated. This is obviously not efficient. DO statement Syntax: DO; One or more SAS statements; END; The DO END statement allows a group of SAS statement to executed as a unit. Example: IF class = 'ANIMAL' THEN DO; obj1 = 'DOG'; obj2 = 'CAT'; obj3 = 'DUCK'; END; ELSE IF class = 'AUTO' THEN DO; obj1 = 'CAR'; obj2 = 'TRUCK'; obj3 = 'SUV'; END; Note: For every DO; statement, there must be an END; followed. DO, Iterative statement Syntax: DO index_var = specification-1 <, specification-n>; More SAS statements; END; Examples: Do month = JAN, FEB, MAR, APR, MAY; DO INDEX = 3, 5, 8, 9, 12; DO i = 1 to 10; DO i = 1 to last; DO i = a to b+2; DO i = 1 to 20 by 2; DO i = 10 to 1 by 1; Example: DO iterative In the following example, the first data step create a data set that has only one variable, path_name, its value is full path and filenames. The second data step use DO loop and SCAN function to find the filename from the path_name variable, and put the filename in the LOG window. data file_list; input path_name $ 1-60; cards; c:\sas_class\classdata\stocks2.sas7bdat c:\sas_class\doc\class_note.doc c:\Program Files\SAS Institute\SAS\v8\autoexec.sas ; run; data aa(drop=i j temp); length temp $60 filename $60; set file_list; do i=1 to 100; temp=scan(path_name,i,'\'); if temp='' then do; j=i-1; filename=scan(path_name,j,'\'); put filename; *** i=100; * method 1; leave; * method 2; end; end; run; SELECT STATEMENT; Syntax SELECT <(select-expression)>; WHEN-1 (when-expression-1 <..., when-expression-n>) statement; <... WHEN-n (when-expression-1 <..., when-expression-n>) statement;> END; Example: data saletax; input state $ sale; cards; PA 345530 PA 945432 DE 456567 DE 345089 DE 94378 FL 247893 FL 104738 CA 753408 CA 948578 TX 342566 TX 654677 ; run; data temp; set saletax; length note $40; select (state); when ('PA') tax=sale*.03; when ('DE') tax=sale*.07; when ('FL') do; tax=sale*0.0; Note='No State Sale Tax'; end; when ('CA') tax=sale*.09; when ('TX') do; tax=sale*0.0; Note='No State Sale Tax'; end; otherwise; end; run; Comparisons between select statement and ifthen statement: When there are many conditions, Select Statement is more convenient. If there are only a few conditions, If Then is more convenient. DO UNTIL(expression); Executes statements in a DO loop repetitively until a condition is true. Example: The following program perform the same task as the above program using DO iterative. Obviously, for this kind of task, DO UNTIL is more convenient. data file_list; input path_name $ 1-60; cards; c:\sas_class\classdata\stocks2.sas7bdat c:\sas_class\doc\class_note.doc c:\Program Files\SAS Institute\SAS\v8\autoexec.sas ; run; data aa(drop=i temp); length temp $60 filename $60; set file_list; i=0; do until (temp=''); i=i+1; temp=scan(path_name,i,'\'); end; i=i-1; filename=scan(path_name,i,'\'); put filename; run; DO WHILE (expression); Executes statements repetitively while a condition is true. Example: The following program perform the same task as the above program. data file_list; input path_name $ 1-60; cards; c:\sas_class\classdata\stocks2.sas7bdat c:\sas_class\doc\class_note.doc c:\Program Files\SAS Institute\SAS\v8\autoexec.sas ; run; data aa(drop=i temp); length temp $60 filename $60; set file_list; i=0; do while (temp ne ''); i=i+1; temp=scan(path_name,i,'\'); end; i=i-1; filename=scan(path_name,i,'\'); put filename; run; Another example of using DO statement with array: Libname cdat /courses/ddbf9765ba27fe300; data bal; set cdat.bal_12_mth; array bal_(12); do i=1 to 12; bal_(i)=bal_(i) + bal_(i)*0.03; end; Total_Balance=sum(of bal_1 - bal_12); run; Note: Without output statement, within a do loop, all iterations work with variables in one observation. Only until RUN, the data step goes to the next observation. o r # [ d i k l  % D L f  " & F L R X ` 궟n,hqB*OJQJ^JfHphq 2hq5B* OJQJ\^JfHphq ,hqB*OJQJ^JfHphq 2hq5B* OJQJ\^JfHphq hB5B*\phhq5B*\phh hq5hqh\LYhq5CJaJ&c D n $ 2 E d t  h^ `hgdqgdqgdq^gdq  % ? L f " 4 N j m I J a z 7$8$H$gdq  h^ `hgdqgdqgdq` h  H e k o x ~ һҤҊҤsҤҤsYUQUh ;hU@2hq5B* OJQJ\^JfHphq ,hqB* OJQJ^JfHphq 2hq5B* OJQJ\^JfHphq ,hqB*OJQJ^JfHphq ,hqB* OJQJ^JfHphq ,hqB*OJQJ^JfHphq ,hqB* OJQJ^JfHphq  @Ay!"1Ty & Fgdq & Fgdqgdqgdq 7$8$H$gdU@gdU@gdq 7$8$H$gdq3?@A!"1.0Tjy| 3<CIüðâââââÝÝÝÙÙââÒ{d,hqB*OJQJ^JfHphq ,hqB*OJQJ^JfHphq hq5\h8 hqH* hq5hq5CJaJh\LYhq5CJaJ h\LYhqhqhU@,hU@B*OJQJ^JfHphq :hU@hU@B*CJOJQJ^JaJfHphq % !23<g(6>CDQ 7$8$H$gdq & F 8h`gdqgdq & Fgdq & Fgdqh^hgdqgdqIJdegk #&.49<>黡ppppp黊p黊黊2hq5B* OJQJ\^JfHphq ,hqB*OJQJ^JfHphq 2hq5B* OJQJ\^JfHphq ,hqB*OJQJ^JfHphq ,hh5B*CJOJQJ^JaJph,hqB* OJQJ^JfHphq ,>ADHIOTYqsv}#-03;ϸϞχϞϞχϞϞχϞϞpϞχϸχχχχ,hEB* OJQJ^JfHphq ,hqB* OJQJ^JfHphq 2hq5B* OJQJ\^JfHphq ,hqB*OJQJ^JfHphq ,hqB*OJQJ^JfHphq 2hq5B* OJQJ\^JfHphq ,Qa~ $<X]^p /ASe 7$8$H$gdq;EHKVX[^b &28/2AEFNOSehp2hq5B* OJQJ\^JfHphq ,hqB* OJQJ^JfHphq ,hqB*OJQJ^JfHphq 2hq5B* OJQJ\^JfHphq ,hqB* OJQJ^JfHphq ,hqB*OJQJ^JfHphq ,hij   Z[^aٿ釀iR,hqB* OJQJ^JfHphq ,hqB*OJQJ^JfHphq hTnhqhqCJOJQJ,hqB* OJQJ^JfHphq ,hqB*OJQJ^JfHphq 2hq5B* OJQJ\^JfHphq hqhqCJOJQJaJ,hqB*OJQJ^JfHphq ejkW[`a~ 7$8$H$gdqgdq^gdqacqu~;By}+- ϸϡϊsϊlh\hWh hq5hTnhq5CJaJhq hTnhq,hqB*OJQJ^JfHphq ,hqB* OJQJ^JfHphq ,hqB* OJQJ^JfHphq ,hqB*OJQJ^JfHphq ,hqB*OJQJ^JfHphq 2hq5B* OJQJ\^JfHphq C_ %-JK   * ? _  ^gdqgdqgdqgdq 7$8$H$gdq ! - 0 B G Q ^ q ~ !!"""""# # #ϸϸϡϡϡϸϸϸϚ}ϡ h|hqh`hq5B*ph hq5hq hCGchq,hqB* OJQJ^JfHphq ,hqB*OJQJ^JfHphq ,hqB*OJQJ^JfHphq 2hq5B* OJQJ\^JfHphq + 2!l!!!!!!"""&#3#I#j#`gdqgdq & F hh^hgdqgdq & Fgdq & Fgdqgdq^gdq 7$8$H$gdq #$#&#*#7#:#M#R#\#i#}###############$$ $ $$$$$W$ҸҡҡҊҊҊҡsYsҸҸҸҡҸUhq2hq5B* OJQJ\^JfHphq ,hqB* OJQJ^JfHphq ,hqB* OJQJ^JfHphq ,hqB*OJQJ^JfHphq 2hq5B* OJQJ\^JfHphq ,hqB*OJQJ^JfHphq ,hh5B*CJOJQJ^JaJph!j########$$$#%$%C%n%%%%%%%&)&B&G&^gdq & F hh^hgdqgdqgdq 7$8$H$gdqW$`$$%#%$%C%J%P%Q%k%l%n%r%s%x%y%}%%%%%%%%%%%&&&&%&ѺrrѺѺѺѺ[,hqB* OJQJ^JfHphq 2hq5B* OJQJ\^JfHphq ,hh5B*CJOJQJ^JaJph,hqB* OJQJ^JfHphq ,hqB*OJQJ^JfHphq ,hqB*OJQJ^JfHphq h|hqhqh`hq5B*ph %&(&=&@&B&E&H&L&M&U&V&Z&h&k&l&o&&&&&&&&&&&&H'K'O'e'g'k'l't'u'ϸϞϞϞχϞσwrrrχϞ[ϞϞ,hqB* OJQJ^JfHphq hq5h)hq5CJaJhq,hqB*OJQJ^JfHphq 2hq5B* OJQJ\^JfHphq ,hqB* OJQJ^JfHphq ,hqB*OJQJ^JfHphq 2hq5B* OJQJ\^JfHphq #G&H&h&m&n&o&&&&&&&H'f'g''''''''(((( & Fgdqgdqgdq^gdq 7$8$H$gdqu'y''''''''''''(((((((((( )))")6)<)))))))))))))))"*W*++++),9,ҸҸҸҸҸҸұґҸҸҸҸ҇ hq5\hqCJOJQJ,hqB* OJQJ^JfHphq hq5hq h)hq2hq5B* OJQJ\^JfHphq ,hqB*OJQJ^JfHphq ,hqB*OJQJ^JfHphq 2(( ))3)M)i)))))))!*"*W*+++++++ & Fgdq^gdqh^hgdqgdq 7$8$H$gdq & Fgdqgdq+,',(,),9,:,---- .+.J.i........../3/ 7$8$H$gdq 7$8$H$gdqgdqgdq & Fgdq9,:,,--------... .....!.*.6.8.;.=.@.I.U.W.Z.\._.h.r.t.~........̵̵mmmmmmm,hqB* OJQJ^JfHphq 2hq5B* OJQJ\^JfHphq ,hqB*OJQJ^JfHphq ,hqB*OJQJ^JfHphq 2hq5B* OJQJ\^JfHphq hq hq5h hqhhqCJOJQJ*...............*/0/J/P/W/]/e/k/p/v/~/////////////////////,hqB* OJQJ^JfHphq ,hqB*OJQJ^JfHphq 2hq5B* OJQJ\^JfHphq ,hqB* OJQJ^JfHphq ,hqB*OJQJ^JfHphq -3/S/T/m///////0(0B0c0h0n00000000011^gdqgdqgdqgdqgdq 7$8$H$gdq//0000#0&0+010c0f0h0l0n0r0s0{0|000000000001<1һҡҊһppppһple]lSlNl hq5hlPhq5hhqOJQJ h)hqhq2hq5B* OJQJ\^JfHphq ,hqB* OJQJ^JfHphq 2hq5B* OJQJ\^JfHphq ,hqB*OJQJ^JfHphq ,hqB*OJQJ^JfHphq ,hqB* OJQJ^JfHphq 1<1[1111111142u2222393_3333 4D4y44444gdq^gdqgdq<1G1111111111444444444444555!5,535J5K5W5ηηr[,h4z B*OJQJ^JfHphq ,h?9*B* OJQJ^JfHphq ,hqB* OJQJ^JfHphq ,hqB*OJQJ^JfHphq ,hqB*OJQJ^JfHphq 2hq5B* OJQJ\^JfHphq h)hq hq5\hq hq544555J5d5i5j555555555.6J66666666667gdq^gdq 7$8$H$gdqW5b5d5g5j5n5o5w5x5|5555555555555555555555.6263696;6>6O6W6[6ҸҸҸҡҸҡ҇ҸҸҡҡ҇ҸҀ{wҸҡҡhq hq5 h)hq2hq5B* OJQJ\^JfHphq ,hqB*OJQJ^JfHphq 2hq5B* OJQJ\^JfHphq ,hqB*OJQJ^JfHphq ,h4z B* OJQJ^JfHphq '[6666666666666666666666666777777777W7^7c77888888^9a9::һһҡҡҡһҡһ҇ҡҡһһ҇ҡҀyҡҡһҡҡ hq5\ h)hq2hq5B* OJQJ\^JfHphq 2hq5B* OJQJ\^JfHphq ,hqB*OJQJ^JfHphq ,hqB*OJQJ^JfHphq ,hqB* OJQJ^JfHphq /777W788^9 ::e;<<<C<D<<V====>>/>R>j>gdq 7$8$H$gd,gd,gd, 7$8$H$gdqgdq^gdq:h;k;<<<<C<D<====>>>>>#>.>/>5>F>K>R>X>i>j>m>o>p>>>>>>鴯pd__ hq5h):hq5CJaJh,h,OJQJ^JaJh,h,5\hqh,CJOJQJ^JaJh,h,OJQJ^J h,h, h,5h,2hq5B* OJQJ\^JfHphq ,hqB*OJQJ^JfHphq ,hqB*OJQJ^JfHphq #j>o>>>>>>???C???? @@@+@_@w@@@@ 7$8$H$gdqgdq 7$8$H$gd1gd1 & Fgdqgdqgdq$a$gdqgd,>>>>>??????#?&??ηΆeN7N,hqB*OJQJ^JfHphq ,hqB*OJQJ^JfHphq 2hq5B* OJQJ\^JfHphq h@1hq2h1h1B*OJQJ^JfHphq ,hh5B*CJOJQJ^JaJph,h1B* OJQJ^JfHphq ,h1B*OJQJ^JfHphq ,h1B*OJQJ^JfHphq h1 ?@ @ @@@@@@@@@@@ B B!BFBLBBBdDhDxD~DDDDDDDDDDDDDҸҸҡҸҚvҡ\ҡ\ҡ\ҡ2hq5B* OJQJ\^JfHphq hqCJOJQJhq5OJQJhqOJQJ hq5hq h@1hq,hqB*OJQJ^JfHphq 2hq5B* OJQJ\^JfHphq ,hqB*OJQJ^JfHphq ,hqB* OJQJ^JfHphq $@@@0AAAA!B-BABBBTBBBBBBBCCC9D^gdq^gdq 7$8$H$gdq h7$8$H$`hgdq & Fgdq`gdqgdqgdqgdq9DdDtDDDDDDDDD EEEE4E9E:EUEZE[EcEEEEEE FF 7$8$H$gdqgdqDDDDDDDDDDDDDDDDDEE EEEEEEE#E$E(E4E7E9EZE[E_EfEiEEp,h1B*OJQJ^JfHphq 2hq5B* OJQJ\^JfHphq ,hqB* OJQJ^JfHphq ,hqB*OJQJ^JfHphq 2hq5B* OJQJ\^JfHphq ,hqB*OJQJ^JfHphq %EEEEEEEEEEF F FFFFF(F0F3F_FbFdFeFiFpFsFFFFFFFFFFFF̵̵̵̵ie̵̵̵ie` hq5hq0hqB*CJOJQJ^JfHphq 6hq5B* CJOJQJ\^JfHphq ,hqB*OJQJ^JfHphq ,hqB*OJQJ^JfHphq 2hq5B* OJQJ\^JfHphq 2hq5B*OJQJ\^JfHphq %FFF_FdFeFmFFFFFFFFFG-G.GnGGGGHH HKHvHgdqgdq^gdq 7$8$H$gdqF.G8GGGGGGGGGH H(H*H5H7H8HQHQMQOQRQTQUQQQQQRRTT"T'T4T5T6T8T:T?TATTTTTTTTTTTTUUһҴһwwһ`ґґһwwһ,hqB*OJQJ^JfHphq 2hq5B* OJQJ\^JfHphq 2hq5B* OJQJ\^JfHphq hq5hq hzhq,hqB*OJQJ^JfHphq ,hqB*OJQJ^JfHphq ,hqB* OJQJ^JfHphq %QQ RRRRNRjRkR|R}RRRRRRRRRR TTT:TATiTT 7$8$H$gdq^gdqgdqgdqTTTTTTTU"UDUZUdUuUUUUUVV VVV!V"V*VJVV^gdqgdqgdq 7$8$H$gdqUUUUUUUU U>UAUJULURUTUUUYU`UbUrUsUUUUUUUUUUUUUUUVVV V VVplhq2hq5B* OJQJ\^JfHphq ,h-B*OJQJ^JfHphq ,hqB* OJQJ^JfHphq 2hq5B* OJQJ\^JfHphq ,hqB*OJQJ^JfHphq ,hqB*OJQJ^JfHphq (V!VVVVWWW%W*W,WWWWWWWWWWWWWWWXXXԽԽԽu^,h[ZB*OJQJ^JfHphq 2hq5B* OJQJ\^JfHphq ,hqB*OJQJ^JfHphq ,hqB*OJQJ^JfHphq ,hqB*OJQJ^JfHphq 2hq5B* OJQJ\^JfHphq hzhqhq hq5\VVVVVVVV W%W,W8WDWPW\WgWsWWWWWWWWWWWW 7$8$H$gdq^gdqgdqWWX7XYXXXXYYY Y!YYYYDZZZZ[[=[][[[[gdqgdq^gdq 7$8$H$gdqX XXXX!X#X'X2X5X:X>X@XDXFXHXSXVXtXXXXXXXXXXXXXXXXXXXXXYYYYYYYYfYYYYҸҡҸҡҡҸҡҡҸҡҡҸҡҡҡ҇҃h5hq2hq5B* OJQJ\^JfHphq ,hqB*OJQJ^JfHphq 2hq5B* OJQJ\^JfHphq ,hqB*OJQJ^JfHphq ,hqB* OJQJ^JfHphq 2YYYYYYYYYZZZZ[ [ [ [[[[[[[[[[[[[[[[[[[[[[[[«‘‘«z«‘‘«‘««,hqB*OJQJ^JfHphq 2hq5B* OJQJ\^JfHphq ,hqB*OJQJ^JfHphq ,hqB*OJQJ^JfHphq 2hq5B* OJQJ\^JfHphq hq5h5hq'[[[[[[\\0\8\B\e\v\{\|\\\]],]G]N]v]]]]]gdqgdq^gd&j 7$8$H$gdq[[ \ \*\-\3\6\?\@\_\b\h\k\v\y\{\|\\] ]/]4]A]B]C]E]G]L]N]]]]]]]]]ҸҡҸҡ҇Ҁ{wҡҸҸҡ`҇҇ҡ,hqB*OJQJ^JfHphq hq hq5 hzhq2hq5B* OJQJ\^JfHphq ,hqB*OJQJ^JfHphq 2hq5B* OJQJ\^JfHphq ,hqB*OJQJ^JfHphq ,hqB* OJQJ^JfHphq %]]] ^^#^=^J^l^t^~^^^^^^__)``;aaMbbbbgdqgd>^gdq 7$8$H$gdq]]^^ ^^ ^!^&^(^)^.^8^:^G^H^f^i^o^r^{^|^^^^^^^^^^^___ϸϸϸϡϡϸϡϸχσ|xexWh>B*OJQJ^Jph$hh5B*OJQJ^Jphh> hq5\hq2hq5B* OJQJ\^JfHphq ,hqB* OJQJ^JfHphq ,hqB*OJQJ^JfHphq ,hqB*OJQJ^JfHphq 2hq5B* OJQJ\^JfHphq "_____-`2`8`:`````````\a`aaabbbbcccȱȱȗȱȗȱȗȗȱȐvhqh[[,aJ$ hq5\hzhq5\ hzhq2hq5B* OJQJ\^JfHphq ,hqB*OJQJ^JfHphq ,hqB*OJQJ^JfHphq 2hq5B* OJQJ\^JfHphq h>h>bcccgdq,1h/ =!"#$% ^) 2 0@P`p2( 0@P`p 0@P`p 0@P`p 0@P`p 0@P`p 0@P`p8XV~_HmH nHsH tH@`@ [[,NormalCJ_HaJmH sH tH D@D [[, Heading 1$@&5OJQJaJ\\ q Heading 2$<@& 56CJOJQJ\]^JaJVV q Heading 3$<@&5CJOJQJ\^JaJJJ q Heading 4$<@&5CJ\aJNN q Heading 5 <@&56CJ\]aJHH q Heading 6 <@&5CJ\aJ:: q Heading 7 <@&@@ q Heading 8 <@&6]N N q Heading 9 <@&CJOJQJ^JaJDA D Default Paragraph FontRiR  Table Normal4 l4a (k (No List TT qHeading 2 Char 56CJOJQJ\]^JaJNN qHeading 3 Char5CJOJQJ\^JaJBB qHeading 4 Char5CJ\aJH!H qHeading 5 Char56CJ\]aJB1B qHeading 6 Char5CJ\aJ<A< qHeading 7 CharCJaJBQB qHeading 8 Char6CJ]aJHaH qHeading 9 CharCJOJQJ^JaJBOB [[,Definition TermaJhJOrJ [[,Definition List h^haJh<< [[,Header  !CJaJ.. q Footer Char< < qFooter  !CJaJBB qBody Text Char B*CJph<B< q Body Text B*aJph88 qBody Text 2 CharDPD q Body Text 2 dxCJaJ*W* qStrong5\:>: "qTitle!$a$5CJ\aJ6!6 !q Title Char 5CJ\HJ2H $qSubtitle#$a$5CJPJ\nHtHLAL #q Subtitle Char5CJPJ\aJnHtHVQV &qBody Text Indent CharCJPJaJnHtHPCbP %qBody Text Indent &h^h PJnHtHNqN (qBody Text 3 Char5B*CJ\hphZQZ 'q Body Text 3('5B*\aJfHhphq PK![Content_Types].xmlj0Eжr(΢Iw},-j4 wP-t#bΙ{UTU^hd}㨫)*1P' ^W0)T9<l#$yi};~@(Hu* Dנz/0ǰ $ X3aZ,D0j~3߶b~i>3\`?/[G\!-Rk.sԻ..a濭?PK!֧6 _rels/.relsj0 }Q%v/C/}(h"O = C?hv=Ʌ%[xp{۵_Pѣ<1H0ORBdJE4b$q_6LR7`0̞O,En7Lib/SeеPK!kytheme/theme/themeManager.xml M @}w7c(EbˮCAǠҟ7՛K Y, e.|,H,lxɴIsQ}#Ր ֵ+!,^$j=GW)E+& 8PK!Ptheme/theme/theme1.xmlYOo6w toc'vuر-MniP@I}úama[إ4:lЯGRX^6؊>$ !)O^rC$y@/yH*񄴽)޵߻UDb`}"qۋJחX^)I`nEp)liV[]1M<OP6r=zgbIguSebORD۫qu gZo~ٺlAplxpT0+[}`jzAV2Fi@qv֬5\|ʜ̭NleXdsjcs7f W+Ն7`g ȘJj|h(KD- dXiJ؇(x$( :;˹! I_TS 1?E??ZBΪmU/?~xY'y5g&΋/ɋ>GMGeD3Vq%'#q$8K)fw9:ĵ x}rxwr:\TZaG*y8IjbRc|XŻǿI u3KGnD1NIBs RuK>V.EL+M2#'fi ~V vl{u8zH *:(W☕ ~JTe\O*tHGHY}KNP*ݾ˦TѼ9/#A7qZ$*c?qUnwN%Oi4 =3ڗP 1Pm \\9Mؓ2aD];Yt\[x]}Wr|]g- eW )6-rCSj id DЇAΜIqbJ#x꺃 6k#ASh&ʌt(Q%p%m&]caSl=X\P1Mh9MVdDAaVB[݈fJíP|8 քAV^f Hn- "d>znNJ ة>b&2vKyϼD:,AGm\nziÙ.uχYC6OMf3or$5NHT[XF64T,ќM0E)`#5XY`פ;%1U٥m;R>QD DcpU'&LE/pm%]8firS4d 7y\`JnίI R3U~7+׸#m qBiDi*L69mY&iHE=(K&N!V.KeLDĕ{D vEꦚdeNƟe(MN9ߜR6&3(a/DUz<{ˊYȳV)9Z[4^n5!J?Q3eBoCM m<.vpIYfZY_p[=al-Y}Nc͙ŋ4vfavl'SA8|*u{-ߟ0%M07%<ҍPK! ѐ'theme/theme/_rels/themeManager.xml.relsM 0wooӺ&݈Э5 6?$Q ,.aic21h:qm@RN;d`o7gK(M&$R(.1r'JЊT8V"AȻHu}|$b{P8g/]QAsم(#L[PK-![Content_Types].xmlPK-!֧6 +_rels/.relsPK-!kytheme/theme/themeManager.xmlPK-!Ptheme/theme/theme1.xmlPK-! ѐ' theme/theme/_rels/themeManager.xml.relsPK] [ ` I>;ha #W$%&u'9,./<1W5[6:>?DEFHJK7QUVXY[]_c2579:<=?ACEFHKLNPRSUWX[\^_bcfijmnprs Qe j#G&(+3/147j>@9DFvH5J2MPQTVW[]bc3468;>@BDGIJMOQTVYZ]`adeghkloqt8@0(  B S  ?[c#'258UWln < C D H l ~ c i s z  '1TZ?G]dv|4=CJKO[f%&)*569:DT[\d !!!!!#!1!=!@!C!L!W!Z!]!h!s!v!y!!!!!!!!(#/#&&&'''#'/'6'>'''''''2(9(L(T(W(a(((((M)Z)m))*+,,W-b-}--------?.I...../ ///G/N/W/^/_/b/0022U4`444Z5^5#6.656<6X6\66666'707885:>:?<B<i<r<<<<<<<)=2=J=S=j=s===>&>->/>K>O>[>]>t>}>>>????@@ @@AABB$B%B8B9BGBPBYB[ByB}BBBBBBBCC3C7CYC]C~CCCCEEF FIIoJpJJJJJJJJJNKWKKKLL(L1LLLLLMMMM2M=MMMMMMMO OOORRRSSSSSSSSSTTT)T;TUUUUUVVVVCVDVZVeVwVxVVVVVVVXXGYHYOYPYYYZYQZ^Z[ EF),7:$DK"&?FRXx|.0UXek~3?< C g k  . 4 9 < > A D H T ` k n  X [ ^ b }  &/2AEeh ]_  [^eiEI!-0BGhpFJ&*7:MRt|CJnr(4<BEHLhkHKgk  !!!"!6!.O.Z...........//W/^/00^1a122h3k344D4H4Z5_55566X6]6j6m66677#7&777 8 88888888899!:%:1:4:F:S:::::d<h<x<~<<<<<<<<<<<== ======4=7=:=>=U=X=[=_=f=i========= > >>>>>_>b>e>i>p>s>>>>>>>>>>??*???????@ @(@2@N@R@y@}@@@@@AAAAAAB B BBBBBBB B!B%B&B*B+B/B0B4B5B9BPPPPPQQQQQQQQQQQCR\RkRRRRRSSSSSSSSSSSSTT3T6TETNThTkTvTyTTTTTU U/U4UGULUUUUUUU VV&V(VPVUVoVrVVVVVVVVVWWWW-X2XXXEYGYYY_ZcZZZ[333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333"1" < #)$66U=f=DD!#<[" ;" #4dl4n&% %igb( p)l/m|+z0, IXTV--4dl4.9 `p<^Jf\A `A S;D Jbn\qK DK DP4dl4MQ #TtU*qO3V Q'V2LY\h  bƠRUN7d !wf%TO?i ktj(,o lq XwT|zy dYlz@:B} *@xh h^h`OJQJo(@xh ^`OJQJo(o@xh 8^8`OJQJo(@xh ^`OJQJo(@xh ^`OJQJo(o@xh p^p`OJQJo(@xh  ^ `OJQJo(@xh @ ^@ `OJQJo(o@xh  ^ `OJQJo(h ^`OJQJo(h ^`OJQJo(oh pp^p`OJQJo(h @ @ ^@ `OJQJo(h ^`OJQJo(oh ^`OJQJo(h ^`OJQJo(h ^`OJQJo(oh PP^P`OJQJo(h ^`OJQJo(h ^`OJQJo(oh pp^p`OJQJo(h @ @ ^@ `OJQJo(h ^`OJQJo(oh ^`OJQJo(h ^`OJQJo(h ^`OJQJo(oh PP^P`OJQJo(h ^`OJQJo(h ^`OJQJo(oh pp^p`OJQJo(h @ @ ^@ `OJQJo(h ^`OJQJo(oh ^`OJQJo(h ^`OJQJo(h ^`OJQJo(oh PP^P`OJQJo(h ^`OJQJo(h ^`OJQJo(oh pp^p`OJQJo(h @ @ ^@ `OJQJo(h ^`OJQJo(oh ^`OJQJo(h ^`OJQJo(h ^`OJQJo(oh PP^P`OJQJo(h ^`OJQJo(h ^`OJQJo(oh pp^p`OJQJo(h @ @ ^@ `OJQJo(h ^`OJQJo(oh ^`OJQJo(h ^`OJQJo(h ^`OJQJo(oh PP^P`OJQJo(h ^`OJQJo(h ^`OJQJo(oh pp^p`OJQJo(h @ @ ^@ `OJQJo(h ^`OJQJo(oh ^`OJQJo(h ^`OJQJo(h ^`OJQJo(oh PP^P`OJQJo(^`o(.^`.pLp^p`L.@ @ ^@ `.^`.L^`L.^`.^`.PLP^P`L.h ^`OJQJo(h ^`OJQJo(oh pp^p`OJQJo(h @ @ ^@ `OJQJo(h ^`OJQJo(oh ^`OJQJo(h ^`OJQJo(h ^`OJQJo(oh PP^P`OJQJo(88^8`o(.^`. L ^ `L.  ^ `.xx^x`.HLH^H`L.^`.^`.L^`L.@8^`.^`OJQJo(hH hh^h`OJQJo(@xh h^h`OJQJo(@xh ^`OJQJo(o@xh 8^8`OJQJo(@xh ^`OJQJo(@xh ^`OJQJo(o@xh p^p`OJQJo(@xh  ^ `OJQJo(@xh @ ^@ `OJQJo(o@xh  ^ `OJQJo(hh^h`.h ^`OJQJo(h ^`OJQJo(oh pp^p`OJQJo(h @ @ ^@ `OJQJo(h ^`OJQJo(oh ^`OJQJo(h ^`OJQJo(h ^`OJQJo(oh PP^P`OJQJo( hh^h`OJQJo(h HH^H`OJQJo(h ^`OJQJo(oh ^`OJQJo(h   ^ `OJQJo(h ^`OJQJo(oh XX^X`OJQJo(h ((^(`OJQJo(h ^`OJQJo(oh ^`OJQJo(h^`OJPJQJ^Jo(h^`OJQJ^Jo(hHohpp^p`OJQJo(hHh@ @ ^@ `OJQJo(hHh^`OJQJ^Jo(hHoh^`OJQJo(hHh^`OJQJo(hHh^`OJQJ^Jo(hHohPP^P`OJQJo(hHh ^`OJQJo(h ^`OJQJo(oh pp^p`OJQJo(h @ @ ^@ `OJQJo(h ^`OJQJo(oh ^`OJQJo(h ^`OJQJo(h ^`OJQJo(oh PP^P`OJQJo(@xh h^h`OJQJo(@xh ^`OJQJo(o@xh 8^8`OJQJo(@xh ^`OJQJo(@xh ^`OJQJo(o@xh p^p`OJQJo(@xh  ^ `OJQJo(@xh @ ^@ `OJQJo(o@xh  ^ `OJQJo( hh^h`OJQJo(h ^`OJQJo(h ^`OJQJo(oh pp^p`OJQJo(h @ @ ^@ `OJQJo(h ^`OJQJo(oh ^`OJQJo(h ^`OJQJo(h ^`OJQJo(oh PP^P`OJQJo( hh^h`OJQJo( hh^h`OJQJo( hh^h`OJQJo(h ^`OJQJo(h ^`OJQJo(oh pp^p`OJQJo(h @ @ ^@ `OJQJo(h ^`OJQJo(oh ^`OJQJo(h ^`OJQJo(h ^`OJQJo(oh PP^P`OJQJo( hh^h`OJQJo(hh^h`.@xh h^h`OJQJo(@xh ^`OJQJo(o@xh 8^8`OJQJo(@xh ^`OJQJo(@xh ^`OJQJo(o@xh p^p`OJQJo(@xh  ^ `OJQJo(@xh @ ^@ `OJQJo(o@xh  ^ `OJQJo( hh^h`OJQJo(h88^8`OJQJo(hHh^`OJQJ^Jo(hHoh  ^ `OJQJo(hHh  ^ `OJQJo(hHhxx^x`OJQJ^Jo(hHohHH^H`OJQJo(hHh^`OJQJo(hHh^`OJQJ^Jo(hHoh^`OJQJo(hHh ^`OJQJo(h pp^p`OJQJo(oh @ @ ^@ `OJQJo(h ^`OJQJo(h ^`OJQJo(oh ^`OJQJo(h ^`OJQJo(h PP^P`OJQJo(oh   ^ `OJQJo( ^`OJQJo(h ^`OJQJo(h ^`OJQJo(oh pp^p`OJQJo(h @ @ ^@ `OJQJo(h ^`OJQJo(oh ^`OJQJo(h ^`OJQJo(h ^`OJQJo(oh PP^P`OJQJo(h ^`OJQJo(h ^`OJQJo(oh pp^p`OJQJo(h @ @ ^@ `OJQJo(h ^`OJQJo(oh ^`OJQJo(h ^`OJQJo(h ^`OJQJo(oh PP^P`OJQJo(h ^`OJQJo(h   ^ `OJQJo(oh   ^ `OJQJo(h xx^x`OJQJo(h HH^H`OJQJo(oh ^`OJQJo(h ^`OJQJo(h ^`OJQJo(oh ^`OJQJo( hh^h`OJQJo(h808^8`0o(.^`.pLp^p`L.@ @ ^@ `.^`.L^`L.^`.^`.PLP^P`L. hh^h`OJQJo(^`CJOJQJo(^`CJOJQJo(opp^p`CJOJQJo(@ @ ^@ `CJOJQJo(^`CJOJQJo(^`CJOJQJo(^`CJOJQJo(^`CJOJQJo(PP^P`CJOJQJo( hh^h`OJQJo( hh^h`OJQJo(^`o(.^`.pLp^p`L.@ @ ^@ `.^`.L^`L.^`.^`.PLP^P`L. hh^h`OJQJo(h 88^8`OJQJo(h ^`OJQJo(oh   ^ `OJQJo(h   ^ `OJQJo(h xx^x`OJQJo(oh HH^H`OJQJo(h ^`OJQJo(h ^`OJQJo(oh ^`OJQJo(^`OJQJo(hH0LY\dYlz`p<$TXw5V-->!B}zy`ADP#w#m|+S;D#<["O3Vi U b\qKgb(.9N7dDKn&%lq!wfk;"\AMQO?i(,o,BV JwT0,J%p)JQ'V#TP @h 8^8`OJQJo(00                                             _                          Lز                                            std4z U@{!?9*[[,vN[Z&jSqZ@Ey2B18,q> ;nr-5[[@MMP!MM[X@UnknownG.Cx Times New Roman5Symbol3. *Cx Arial?= *Cx Courier NewU5  SAS MonospaceConsolas;(SimSun[SO;WingdingsA$BCambria Math"qh&Fw1g M. M.q24W[W[ 2QKX ?[[,2!xx Start Day 3;yihong Yihong Zhang0                           ! " # $ % & ' ( ) * + , - . / Oh+'0l  ( 4 @LT\dStart Day 3;yihong Normal.dotmYihong Zhang22Microsoft Office Word@~I@lZx@,G5 M՜.+,0 hp  Drexel University.W[  Start Day 3; Title  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuwxyz{|}Root Entry FP?0G5Data v1Table~WordDocument.SummaryInformation(DocumentSummaryInformation8CompObjy  F'Microsoft Office Word 97-2003 Document MSWordDocWord.Document.89q