You are on page 1of 17

/*-------------------------------------------------------------------*/

/*
Carpenter's Complete Guide to the SAS Macro Language,
*/
/*
Second Edition
*/
/*
by Art Carpenter
*/
/*
Copyright(c) 2004 by SAS Institute Inc., Cary, NC, USA
*/
/*
SAS Publications order # 59224
*/
/*
ISBN 1-58025-239-7
*/
/*-------------------------------------------------------------------*/
/*
*/
/* This material is provided "as is" by SAS Institute Inc. There
*/
/* are no warranties, expressed or implied, as to merchantability or */
/* fitness for a particular purpose regarding the materials or code */
/* contained herein. The Institute is not responsible for errors
*/
/* in this material as it now exists or will exist, nor does the
*/
/* Institute provide technical support for it.
*/
/*
*/
/*-------------------------------------------------------------------*/
/* Questions or problem reports concerning this material may be
*/
/* addressed to the author:
*/
/*
*/
/* SAS Institute Inc.
*/
/* Books by Users
*/
/* Attn: Art Carpenter
*/
/* SAS Campus Drive
*/
/* Cary, NC
27513
*/
/*
*/
/*
*/
/* If you prefer, you can send email to: sasbbu@sas.com
*/
/* Use this for subject field:
*/
/*
Comments for Art Carpenter
*/
/*
*/
/*-------------------------------------------------------------------*/
/* Date Last Updated:
02APR04
*/
/*-------------------------------------------------------------------*/
/*
*/
/* NOTE FROM ART CARPENTER:
*/
/* This code is for your use, but may not be resold.
*/
/* Not all code from the book has been included in this text file.
*/
/* I have selected only complete macros and program parts that I
*/
/* think that you are most likely to need. The remaining code should */
/* be fairly easy to reconstruct.
*/
/*
*/
/* In order to facilitate your search for a particular piece of code,*/
/* Sections and Macro names are offset by three asterisks, for
*/
/* example the macro %EXIST in Section 7.6.1 could be found by
*/
/* searching for:
*/
/*
***7.6.1
*/
/*
***%EXIST
*/
/* Please note that some macros, such as %EXIST, can be found in
*/
/* various forms in more than one section of the book. Consult
*/
/* Appendix 4 to determine in which section(s) a given macro can be */
/* found.
*/
/*-------------------------------------------------------------------*;
**********************;
***2.6.1

***
**********************;
data old;
do batch=1 to 3;
conc=2;
datadate='02jan97'd;
datatime = '09:00't;
output;
end;
format datadate mmddyy10. datatime time5.;
run;
data new;
set old;
if batch = 2 then do;
conc=2.5;
datadate="&sysdate"d;
datatime="&systime"t;
end;
run;
proc print data=new;
title1 'Drug concentration';
title2 "Mod date &sysdate";
run;
**********************;
**********************;
***2.6.3
***
**********************;
* Copy the current version of the COMBINE files
* to COMBTEMP;
proc datasets memtype=data;
copy in=combine out=combtemp;
quit;
%put SYSERR is &syserr;
**********************;
**********************;
***2.7.1
***
**********************;
%let cln = Beth;
proc sql noprint;
select count(*)
into :nobs
from clinics(where=(clinname=:"&cln"));
quit;
%put number of clinics for &cln is &nobs;
**********************;
**********************;
***2.7.2

***
**********************;
data class;
input @3 name $ 8. grade $1.;
cards;
Billy
B
Jon
C
Sally
A
run;
data school;
input @3 name $ 8. gradcode $1.;
cards;
Billy
Y
Frank
Y
Jon
N
Laura
Y
Sally
Y
run;
proc sql noprint;
select quote(name)
into :clnames separated by ' '
from class;
quit;
data clasgrad;
set school (where=(name in(&clnames)));
run;
proc print data=clasgrad;
title 'Class Graduate Status';
run;
**********************;
**********************;
***2.10
***
**********************;
**************************************************;
* The data set, SASCLASS.CLINICS, contains 80
*;
* observations and 20 variables. The following *;
* program will be used to complete the first
*;
* exercise in this chapter.
*;
**************************************************;
PROC PLOT DATA=SASCLASS.CLINICS;
PLOT EDU * DOB;
TITLE1 "YEARS OF EDUCATION COMPARED TO BIRTH DATE";
RUN;
PROC CHART DATA=SASCLASS.CLINICS;
VBAR WT / SUMVAR=HT TYPE=MEAN;
TITLE1 "AVERAGE HEIGHT FOR WEIGHT GROUPS";
RUN;
**********************;

**********************;
***3.1.1
***%LOOK
**********************;
%LET DSN = CLINICS;
%MACRO LOOK;
PROC CONTENTS DATA=&dsn;
TITLE "DATA SET &dsn";
RUN;
PROC PRINT DATA=&dsn (OBS=10);
RUN;
%MEND LOOK;
**********************;
**********************;
***3.4
***%PGM
**********************;
%macro pgm;
pgm;
recall;
zoom on;
%mend pgm;
**********************;
**********************;
***3.5.2
***%ZPGM
**********************;
option cmdmac;
%macro zpgm / cmd;
pgm;
recall;
zoom on;
%mend zpgm;
**********************;
**********************;
***3.8
***
**********************;
*******************************************************;
**** The class data set, CLINICS, contains 80
****;
**** observations and 20 variables. The following ****;
**** program will be used to complete the first two****;
**** exercises in this chapter.
****;
*******************************************************;
PROC PLOT DATA=SASCLASS.CLINICS;

PLOT EDU * DOB;


TITLE1 'YEARS OF EDUCATION COMPARED TO BIRTH DATE';
RUN;
PROC CHART DATA=SASCLASS.CLINICS;
VBAR WT / SUMVAR=HT TYPE=MEAN;
TITLE1 'AVERAGE HEIGHT FOR WEIGHT GROUPS';
RUN;
**********************;
**********************;
***4.2.1
***%LOOK
**********************;
%MACRO LOOK(dsn,obs);
PROC CONTENTS DATA=&dsn;
TITLE "DATA SET &dsn";
RUN;
PROC PRINT DATA=&dsn (OBS=&obs);
TITLE2 "FIRST &obs OBSERVATIONS";
RUN;
%MEND LOOK;
%look(sasclass.clinics,10)
**********************;
**********************;
***4.2.2
***%SORTIT version 1
**********************;
%MACRO SORTIT(DSN,BY1,BY2,BY3);
PROC SORT DATA=&DSN;
BY &BY1 &BY2 &BY3;
RUN;
%MEND SORTIT;
**********************;
**********************;
***4.2.2
***%SORTIT version 2
**********************;
%MACRO SORTIT(DSN,BYLIST);
PROC SORT DATA=&DSN;
BY &BYLIST;
RUN;
%MEND SORTIT;
**********************;
**********************;
***4.3.1
***%LOOK
**********************;
%MACRO LOOK(dsn=CLINICS,obs=);

PROC CONTENTS DATA=&dsn;


TITLE "DATA SET &dsn";
RUN;
PROC PRINT DATA=&dsn (OBS=&obs);
TITLE2 "FIRST &obs OBSERVATIONS";
RUN;
%MEND LOOK;
**********************;
**********************;
***4.4.2
***%LOOK
**********************;
%MACRO LOOK(dsn,obs=10);
PROC CONTENTS DATA=&dsn;
TITLE "DATA SET &dsn";
RUN;
PROC PRINT DATA=&dsn (OBS=&obs);
TITLE2 "FIRST &obs OBSERVATIONS";
RUN;
%MEND LOOK;
**********************;
**********************;
***4.6
***
**********************;
********************************************************;
**** The class data set, CLINICS, contains 80
****;
**** observations and 20 variables. The following ****;
**** program will be used to complete exercise 3
****;
**** in this chapter.
****;
********************************************************;
PROC PLOT DATA=SASCLASS.CLINICS;
PLOT EDU * DOB;
TITLE1 'YEARS OF EDUCATION COMPARED TO BIRTH DATE';
RUN;
PROC CHART DATA=SASCLASS.CLINICS;
VBAR WT / SUMVAR=HT TYPE=MEAN;
TITLE1 'AVERAGE HEIGHT FOR WEIGHT GROUPS';
RUN;
**********************;
**********************;
***5.1.1 a
***%DOBOTH
***%LOOK
***%SORTIT

**********************;
%MACRO DOBOTH;
%SORTIT(CLINICS,LNAME,FNAME)
%LOOK(OBS=10)
%MEND DOBOTH;
%MACRO LOOK(dsn=CLINICS,obs=);
PROC CONTENTS DATA=&dsn;
TITLE "DATA SET &dsn";
RUN;
PROC PRINT DATA=&dsn (OBS=&obs);
TITLE2 "FIRST &obs OBSERVATIONS";
RUN;
%MEND LOOK;
%MACRO SORTIT(DSN,BY1,BY2,BY3);
PROC SORT DATA=&DSN;
BY &BY1 &BY2 &BY3;
RUN;
%MEND SORTIT;
**********************;
**********************;
***5.1.1 b
***%DOBOTH
***%LOOK
***%SORTIT
**********************;
%MACRO DOBOTH(d,o,b1,b2,b3);
%SORTIT(&d,&b1,&b2,&b3)
%LOOK(&d,&o)
%MEND DOBOTH;
%MACRO LOOK(dsn,obs);
PROC CONTENTS DATA=&dsn;
TITLE "DATA SET &dsn";
RUN;
PROC PRINT DATA=&dsn (OBS=&obs);
TITLE2 "FIRST &obs OBSERVATIONS";
RUN;
%MEND LOOK;
%MACRO SORTIT(DSET,BY1,BY2,BY3);
PROC SORT DATA=&DSET;
BY &BY1 &BY2 &BY3;
RUN;
%MEND SORTIT;
**********************;
**********************;
***5.2.3
***%TESTIN
**********************;
%macro testin(var,varlist);
%if &var in &varlist %then

%put Found |&var| in |&varlist|;


%mend testin;
%testin(aa, aa bb cc)
%testin(AA, aa bb cc)
**********************;
**********************;
***5.3.1
***%DOBOTH
**********************;
%MACRO DOBOTH(dsn,obs,by1,by2,by3);
%IF &BY1 ^= %THEN %DO;
PROC SORT DATA=&DSN;
BY &BY1 &BY2 &BY3;
RUN;
%END;
PROC CONTENTS DATA=&dsn;
TITLE "DATA SET &dsn";
RUN;
PROC PRINT DATA=&dsn
%IF &OBS>0 %THEN %DO;
(OBS=&obs);
TITLE2 "FIRST &obs OBSERVATIONS"
%END;
;
RUN;
%MEND DOBOTH;
**********************;
**********************;
***5.3.2a
***%ALLYEAR
**********************;
%MACRO ALLYR(START,STOP);
%DO YEAR = &START %TO &STOP;
DATA TEMP;
SET YR&YEAR;
YEAR = 1900 + &YEAR;
RUN;
PROC APPEND BASE=ALLYEAR DATA=TEMP;
RUN;
%END;
%MEND ALLYR;
**********************;
**********************;
***5.3.2b
***%ALLYEAR
**********************;
%MACRO ALLYR(START,STOP);

DATA ALLYEAR;
SET
%DO YEAR = &START %TO &STOP;
YR&YEAR(IN=IN&YEAR)
%END;;
YEAR = 1900
%DO YEAR = &START %TO &STOP;
+ (IN&YEAR*&YEAR)
%END;;
RUN;
%MEND ALLYR;
**********************;
**********************;
***5.3.3
***%ALLYEAR
**********************;
%MACRO ALLYR(START,STOP);
%LET CNT = 0;
%DO %UNTIL(&YEAR >= &STOP);
%LET YEAR = %EVAL(&CNT + &START);
DATA TEMP;
SET YR&YEAR;
YEAR = 1900 + &YEAR;
RUN;
PROC APPEND BASE=ALLYEAR DATA=TEMP;
RUN;
%LET CNT = %EVAL(&CNT + 1);
%END;
%MEND ALLYR;
**********************;
**********************;
***5.3.4
***%ALLYEAR
**********************;
%MACRO ALLYR(START,STOP);
%LET YEAR = &START;
%DO %WHILE(&YEAR <= &STOP);
DATA TEMP;
SET YR&YEAR;
YEAR = 1900 + &YEAR;
RUN;
PROC APPEND BASE=ALLYEAR DATA=TEMP;
RUN;
%LET YEAR = %EVAL(&YEAR + 1);
%END;
%MEND ALLYR;

**********************;
**********************;
***5.4.2a
***%ONE
***%TWO
**********************;
%let outside = AAA;
%macro one;
%global inone;
%let inone = BBB;
%mend one;
%macro two;
%let intwo = CCC;
%mend two;
%macro last;
%one %two
%put &outside &inone &intwo;
%mend last;
%last
**********************;
**********************;
***5.4.2b
***%OUTSIDE
***%INSIDE
**********************;
%macro outside;
%let aa = 5;
%inside(3)
%put outside &aa;
%mend outside;
%macro inside(aa);
%put inside &aa;
%mend inside;
%outside
**********************;
**********************;
***5.4.2c
***%OUTSIDE
***%INSIDE
**********************;
%macro inside(var);
%let bb = &var;
%put inside &bb;
%mend inside;

%* This LET statement makes &BB global;


%let bb = 5;
%inside(3)
%put outside &bb;
**********************;
**********************;
***5.4.2d
***%INSIDE
**********************;
%macro inside(var);
%local bb;
%let bb = &var;
%put inside &bb;
%mend inside;
%let bb = 5;
%inside(3)
%put outside &bb;
**********************;
**********************;
***5.4.5
***%DSNPROMPT
**********************;
%macro dsnprompt(lib=sasuser);
%* prompt user to for data set name;
%window verdsn color=white
#2 @5 "Specify the data set of interest"
#3 @5 "for the library &lib"
#4 @5 'Enter Name: '
dsn 20 ATTR=UNDERLINE REQUIRED=YES ;
%display verdsn;
proc print data=&lib..&dsn;
run;
%mend dsnprompt;
%dsnprompt(lib=sasclass)
**********************;
**********************;
***5.6.9
***
**********************;
%let a = AAA;
%macro try;
%put &a;
%if &a
= AAA %then
%if '&a' = 'AAA' %then
%if 'AAA' = 'AAA' %then
%if "&a" = "AAA" %then
%if "&a" = 'AAA' %then

%put
%put
%put
%put
%put

no quotes;
single quotes;
exact strings;
double quotes;
mixed quotes;

%if "&a" = AAA %then %put quotes on one side only;


%mend;
%try
**********************;
**********************;
***6.2.1a
***%LOOK
**********************;
DATA CONTROL;
DSNAME='CLINICS';
NOBS='5';
RUN;
%MACRO LOOK;
DATA _NULL_;
SET CONTROL;
CALL SYMPUT('DSN',DSNAME);
CALL SYMPUT('OBS',NOBS);
RUN;
PROC CONTENTS DATA=&DSN;
RUN;
PROC PRINT DATA=&DSN (OBS=&OBS);
RUN;
%MEND LOOK;
**********************;
**********************;
***6.2.1b
***%PLOTIT
**********************;
%MACRO PLOTIT;
PROC SORT DATA=CLINICS;
BY REGION;
RUN;
* Count the unique regions and create
* a macro variable for each value.;
DATA _NULL_;
SET CLINICS;
BY REGION;
IF FIRST.REGION THEN DO;
* Count the regions;
I+1;
* Create char var with count (II). Allow;
* up to 99 unique regions;
II=LEFT(PUT(I,2.));
* Assign value of region to a mac var;
CALL SYMPUT('REG'||II,REGION);
CALL SYMPUT('TOTAL',II);
END;
RUN;
* Do a separate PROC GPLOT step for;
* each unique region;
%DO I=1 %TO &TOTAL;
PROC GPLOT DATA=CLINICS;

PLOT HT * WT;
WHERE REGION="&&REG&I";
TITLE1 "Height/Weight for REGION &&REG&I";
RUN;
%END;
%MEND PLOTIT;
**********************;
**********************;
***6.2.1c
***%PLOTIT
**********************;
%MACRO PLOTIT;
PROC SORT DATA=CLINICS
OUT=REGCLN(KEEP=REGION)
NODUPKEY;
BY REGION;
RUN;
DATA _NULL_;
SET REGCLN END=EOF;
* Count the regions;
I+1;
* Create char var with count (II);
II=LEFT(PUT(I,2.));
CALL SYMPUT('REG'||II,REGION);
IF EOF THEN CALL SYMPUT('TOTAL',II);
RUN;
%DO I=1 %TO &TOTAL;
PROC GPLOT DATA=CLINICS;
PLOT HT * WT;
WHERE REGION="&&REG&I";
TITLE1 "Height/Weight for REGION &&REG&I";
RUN;
%END;
%MEND PLOTIT;
**********************;
**********************;
***6.2.1d
***%DOIT
**********************;
* 1993 Water quality data.
*************************************************;
data a1
(keep=datetime station depth temp ph do cond salinity);
input datetime datetime13. @15 station $3.
depth temp ph do cond salinity;
label datetime = 'date and time of sample collection'
station = 'station'
depth
= 'water depth (ft)'
temp
= 'temperature (C)'
ph
= 'pH'
do
= 'dissolved oxygen'
cond
= 'conductivity'
salinity = 'salinity';

format datetime datetime13.;


datalines;
06FEB93:09:15 TS3 0 13.6 7.9 8.8 20.3 12.1
06FEB93:09:15 TS3 1 13.5 7.9 8.7 20.4 12.2
06FEB93:09:15 TS3 2 13.5 7.88 8.7 22.1 13.3
06FEB93:09:15 TS3 3 14.1 8.05 9 46.2 29.9
06FEB93:09:15 TS3 4 14.2 8.05 8.9 48.1 31.3
10FEB93:11:51 TS3 0 13.9 7.91 9.5 0.57 0.27
10FEB93:11:51 TS3 1 13.9 7.89 9.5 0.57 0.27
10FEB93:11:51 TS3 2 13.9 7.88 9.4 0.57 0.27
10FEB93:11:51 TS3 3 13.8 7.88 9.5 0.57 0.27
10FEB93:11:51 TS3 4 13.8 7.87 9.4 0.56 0.27
16FEB93:07:36 TS3 0 12.9 7.86 9.1 8.8 4.9
16FEB93:07:36 TS3 1 12.9 7.85 9 9.3 5.19
16FEB93:07:36 TS3 2 13 7.85 8.8 9.7 5.4316FEB93:07:36 TS3 3 13 7.86 8.8
9.7 5.43
16FEB93:07:36 TS3 4 13 7.85 8.7 9.3 5.19
20FEB93:09:08 TS3 0 13.1 7.99 9.9 0.78 0.38
20FEB93:09:08 TS3 1 13.1 7.99 9.9 0.78 0.38
20FEB93:09:08 TS3 2 13.1 7.99 9.9 0.76 0.37
20FEB93:09:08 TS3 3 13.1 7.98 9.8 0.76 0.37
20FEB93:09:08 TS3 4 13.1 7.97 9.8 0.75 0.36
02MAR93:12:31 TS3 0 14.9 8.03 10.1 0.83 0.41
02MAR93:12:31 TS3 1 14.9 8.03 10.1 0.83 0.41
02MAR93:12:31 TS3 2 14.9 8.01 10.1 0.82 0.41
02MAR93:12:31 TS3 3 14.9 8.01 10 0.82 0.41
02MAR93:12:31 TS3 4 14.9 8.02 10 0.8 0.39
02MAR93:12:31 TS3 5 14.9 8.02 10 0.8 0.39
07MAR93:08:56 TS3 0 14.4 7.92 8.6 11 6.22
07MAR93:08:56 TS3 1 14.3 7.92 8.7 11 6.22
07MAR93:08:56 TS3 2 14.3 7.92 8.7 11.5 6.53
07MAR93:08:56 TS3 3 14.3 7.91 8.7 11.2 6.35
07MAR93:08:56 TS3 4 14.3 7.9 8.8 11.2 6.35
07MAR93:08:56 TS3 5 14.5 8.06 8.8 36.4 23
15MAR93:14:20 TS3 0 19.7 8.35 10.9 1.3 0.65
15MAR93:14:20 TS3 1 19.6 8.33 10.9 1.28 0.64
15MAR93:14:20 TS3 2 19.6 8.34 11.1 1.3 0.65
15MAR93:14:20 TS3 3 19.6 8.34 11.4 1.3 0.65
15MAR93:14:20 TS3 4 19.7 8.33 11.6 1.43 0.71
27MAR93:13:40 TS3 0 16.9 8.4 9.5 0.85 0.42
27MAR93:13:40 TS3 1 16.9 8.39 9.4 0.85 0.42
27MAR93:13:40 TS3 2 16.9 8.39 9.4 0.85 0.42
27MAR93:13:40 TS3 3 16.9 8.38 9.4 0.83 0.41
27MAR93:13:40 TS3 4 16.9 8.38 9.4 0.84 0.41
27MAR93:13:40 TS3 5 16.9 8.36 9.4 0.84 0.41
01APR93:11:03 TS3 0 19 8.42 10 1.44 0.7
01APR93:11:03 TS3 2 19 8.41 9.9 1.44 0.7
01APR93:11:03 TS3 4 18.9 8.4 9.8 1.41 0.7
01APR93:11:03 TS3 6 18.8 8.39 9.6 1.42 0.7
03APR93:06:22 TS3 0 15.2 7.88 7.9 16.2 9.5
03APR93:06:22 TS3 1 15.2 7.88 7.7 17.1 10
03APR93:06:22 TS3 2 15.2 8.01 8.4 49.2 32.1
03APR93:06:22 TS3 3 15.2 8.03 8.3 50.9 33.4
03APR93:06:22 TS3 4 15.2 8.03 8.3 50.8 33.3
03APR93:06:22 TS3 5 15.2 8.03 8.3 50.5 33.1
06APR93:09:00 TS3 0 15.7 . 8.4 51.4 33.8
06APR93:09:00 TS3 2 15.6 8.14 . 51.5 33.8

06APR93:09:00
06APR93:09:00
07APR93:09:15
07APR93:09:15
07APR93:09:15
07APR93:09:15
22APR93:10:20
22APR93:10:20
22APR93:10:20
22APR93:10:20
24APR93:12:06
24APR93:12:06
24APR93:12:06
24APR93:12:06
29APR93:12:09
29APR93:12:09
29APR93:12:09
29APR93:12:09
29APR93:12:09
29APR93:12:09
05MAY93:09:24
05MAY93:09:24
05MAY93:09:24
05MAY93:09:24
15MAY93:11:25
15MAY93:11:25
15MAY93:11:25
15MAY93:11:25
23MAY93:12:06
23MAY93:12:06
23MAY93:12:06
23MAY93:12:06
01JUN93:12:00
01JUN93:12:00
01JUN93:12:00
01JUN93:12:00
03JUN93:20:08
03JUN93:20:08
03JUN93:20:08
03JUN93:20:08
04JUN93:06:02
04JUN93:06:02
04JUN93:06:02
04JUN93:06:02
11JUN93:09:50
11JUN93:09:50
11JUN93:09:50
11JUN93:09:50
16JUN93:13:03
16JUN93:13:03
16JUN93:13:03
8.1 51.7 34
06FEB93:09:43
06FEB93:09:43
06FEB93:09:43
06FEB93:09:43
06FEB93:09:43

TS3
TS3
TS3
TS3
TS3
TS3
TS3
TS3
TS3
TS3
TS3
TS3
TS3
TS3
TS3
TS3
TS3
TS3
TS3
TS3
TS3
TS3
TS3
TS3
TS3
TS3
TS3
TS3
TS3
TS3
TS3
TS3
TS3
TS3
TS3
TS3
TS3
TS3
TS3
TS3
TS3
TS3
TS3
TS3
TS3
TS3
TS3
TS3
TS3
TS3
TS3

4
6
0
2
4
6
0
2
4
6
0
2
4
6
0
1
2
4
5
6
0
2
4
6
0
2
4
6
0
2
4
6
0
2
4
6
0
2
4
6
0
2
4
6
0
2
4
6
0
2
4

. 8.12 . . .
15.6 8.11 8.1 . .
17.1 8.16 8.8 49.8 32.6
17.1 8.16 8.6 49.8 32.6
17.1 8.15 8.6 49.7 32.5
17.1 8.14 8.5 49.8 32.6
17.1 8.22 8.6 48.5 31.6
17.1 8.2 8.6 48.5 31.6
17 8.19 8.5 48.5 31.6
17 8.15 8.1 48.5 31.6
18.8 8.1 8.3 45.5 29.5
18.8 8.09 8.1 45.5 29.5
18.8 8.1 8 45.3 29.3
18.8 8.13 7.8 45.5 29.5
21.8 8.07 7.2 28.2 17.3
21.4 8.15 7.7 35.7 22.5
21.2 8.19 7.7 39.7 25.3
20.7 8.17 7.8 41.8 26.8
19.9 8.16 7.2 41.8 26.8
18.8 8.08 5.9 45.3 29.3
17.7 8.18 7.9 51 33.5
17.7 8.18 7.9 50.8 33.3
17.7 8.17 7.8 51 33.5
17.7 8.17 7.8 50.8 33.3
19.6 8.11 7.2 42.8 27.5
19.3 8.13 7.2 44.9 29
19.2 8.13 7.2 45.8 29.7
18.5 8.15 7.5 46.8 30.4
17.4 8.19 7.8 51.3 33.7
17.3 8.19 7.8 51.2 33.6
17.3 8.18 7.7 51.1 33.5
17.3 8.18 7.7 51.2 33.6
18.9 8.13 8.8 50.7 33.2
18.8 8.12 8.8 50.8 33.8
18.8 8.11 8.7 50.7 33.2
18.7 8.12 8.6 50.7 33.2
18.6 8.31 8 52.7 34.7
18.6 8.31 8 52.6 34.6
18.5 8.3 8 52.6 34.6
18.5 8.31 8 52.5 34.6
19.9 8.08 5.1 50.2 32.9
19.8 8.07 5 50.4 33
19.9 8.07 5 50.3 32.9
19.9 8.07 4.9 50.3 32.9
23 7.92 3.8 51 33.5
23 7.92 3.8 51.1 33.5
22.9 7.92 3.8 50.7 33.2
22.7 7.92 3.7 51.1 33.5
22.1 8.16 8.5 52.3 34.4
22 8.15 8.2 52.1 34.3
22 8.15 8.1 51.9 34.116JUN93:13:03 TS3 6 22 8.15

TS6
TS6
TS6
TS6
TS6

0
1
2
3
4

13.9 8.07 8.8 32.5 20.3


13.9 8.05 8.7 38.1 24.2
14 8.06 8.6 44.6 28.8
14.1 8.06 8.4 45.5 29.4
14.1 8.04 8.6 49.2 32.1

06FEB93:09:43
06FEB93:09:43
10FEB93:12:22
10FEB93:12:22
10FEB93:12:22
10FEB93:12:22
10FEB93:12:22
10FEB93:12:22
16FEB93:08:18
16FEB93:08:18
16FEB93:08:18
16FEB93:08:18
16FEB93:08:18
20FEB93:09:50
20FEB93:09:50
20FEB93:09:50
20FEB93:09:50
20FEB93:09:50
20FEB93:09:50
20FEB93:09:50
20FEB93:09:50
20FEB93:09:50
02MAR93:14:20
02MAR93:14:20
02MAR93:14:20
02MAR93:14:20
07MAR93:10:30
07MAR93:10:30
07MAR93:10:30
07MAR93:10:30
07MAR93:10:30
07MAR93:10:30
15MAR93:16:43
15MAR93:16:43
15MAR93:16:43
15MAR93:16:43
15MAR93:16:43
27MAR93:14:57
27MAR93:14:57
27MAR93:14:57
27MAR93:14:57
27MAR93:14:57
01APR93:13:40
01APR93:13:40
01APR93:13:40
01APR93:13:40
03APR93:08:03
06APR93:11:08
06APR93:11:08
06APR93:11:08
06APR93:11:08
06APR93:11:08
06APR93:11:08
07APR93:10:49
07APR93:10:49
07APR93:10:49
07APR93:10:49

TS6
TS6
TS6
TS6
TS6
TS6
TS6
TS6
TS6
TS6
TS6
TS6
TS6
TS6
TS6
TS6
TS6
TS6
TS6
TS6
TS6
TS6
TS6
TS6
TS6
TS6
TS6
TS6
TS6
TS6
TS6
TS6
TS6
TS6
TS6
TS6
TS6
TS6
TS6
TS6
TS6
TS6
TS6
TS6
TS6
TS6
TS6
TS6
TS6
TS6
TS6
TS6
TS6
TS6
TS6
TS6
TS6

5 14.2 8.06 8.7 50.3 32.9


6 14.3 8.06 8.7 51.1 33.5
0 14.2 7.96 9.5 0.59 0.29
1 14.1 7.94 9.4 0.59 0.29
2 13.8 7.92 9.2 0.82 0.4
3 13.8 7.88 9.1 1.07 0.53
4 13.7 7.86 8.8 1.76 0.89
5 13.6 7.78 8.4 3.82 2
0 13.6 8.32 9.7 3.4 1.77
1 13.6 8.26 9.6 4.39 2.33
2 13.6 8.2 9.5 5.34 2.87
3 13.5 8.08 9.1 7.97 4.4
4 13.6 7.86 8.8 15 8.7
0 13.4 8.02 9.7 1.08 0.53
1 13.3 7.97 9.7 1.06 0.53
2 13.2 7.97 9.7 1.1 0.54
3 13.4 7.96 9.5 2.83 1.46
4 13.5 7.96 9.3 4.56 2.42
5 13.8 7.95 9.2 7.25 3.98
6 14.8 8.13 8.4 8.8 4.89
7 15.2 8.03 7.6 28.2 17.3
7.5 15.2 8.02 7.1 30.6 18.9
0 16 8.21 10.9 0.89 0.43
1 15.9 8.2 10.8 0.87 0.42
2 15.9 8.19 10.7 0.87 0.42
2.5 15.9 8.19 10.6 0.88 0.43
0 16.2 8.08 9.3 7.61 4.18
1 15.8 8.11 9.5 11.7 6.65
2 15.3 8.14 10 18.3 10.8
3 14.9 8.09 10.4 25.6 15.6
4 14.6 8.06 10.7 27.2 16.7
5 14.5 8.04 10.5 31.4 19.5
0 19.2 8.39 . 0.92 0.45
1 19.3 8.38 . 0.92 0.45
2 19.3 8.38 . 0.94 0.46
3 19.3 8.37 . 0.93 0.45
3.5 19.4 8.37 . 0.93 0.45
0 18 8.6 11.6 3.71 1.95
1 17.6 8.67 12.4 4.75 2.54
2 17.4 8.59 11.8 9.24 5.2
3 17.3 8.6 11.8 9.89 5.6
3.5 17.3 8.59 11.9 10.1 5.7
0 23.9 9.56 23.3 3.85 2
1 23.9 9.55 23.6 3.82 2
2 23.9 9.53 23.1 3.75 2
3 23.9 9.53 23 3.79 2
0 16.8 8.2 8.7 10.1 5.7
0 17 8 8.2 25.6 15.6
1 16.8 8.06 8.3 33.8 21.2
2 16.4 8.14 9.2 43.1 27.7
3 16.3 8.16 9.6 44.5 28.7
4 16.2 8.17 9.7 46 29.8
5 16.2 8.17 9.8 46 29.8
0 18 7.88 7.3 7.4 4.1
1 17.5 8.13 8.1 49 32
2 17.5 8.13 8.1 48.9 31.9
3 17.5 8.12 8.1 49.1 32.1

07APR93:10:49
07APR93:10:49
22APR93:11:45
22APR93:11:45
22APR93:11:45
22APR93:11:45
22APR93:11:45
24APR93:14:05
24APR93:14:05
24APR93:14:05
24APR93:14:05
29APR93:13:42
29APR93:13:42
29APR93:13:42
29APR93:13:42
05MAY93:11:03
05MAY93:11:03
05MAY93:11:03
05MAY93:11:03
15MAY93:13:54
15MAY93:13:54
15MAY93:13:54
15MAY93:13:54
23MAY93:15:04
23MAY93:15:04
23MAY93:15:04
01JUN93:14:07
01JUN93:14:07
01JUN93:14:07
01JUN93:14:07
03JUN93:21:20
03JUN93:21:20
03JUN93:21:20
03JUN93:21:20
03JUN93:21:20
04JUN93:07:20
04JUN93:07:20
04JUN93:07:20
04JUN93:07:20

TS6
TS6
TS6
TS6
TS6
TS6
TS6
TS6
TS6
TS6
TS6
TS6
TS6
TS6
TS6
TS6
TS6
TS6
TS6
TS6
TS6
TS6
TS6
TS6
TS6
TS6
TS6
TS6
TS6
TS6
TS6
TS6
TS6
TS6
TS6
TS6
TS6
TS6
TS6

4 17.5 8.13 8 49.6 32.4


5 17.5 8.13 8 49.5 32.4
0 18.7 7.84 8.4 45.5 29.5
1 18.3 7.82 8.8 47.5 30.9
2 18.2 7.92 8.7 48.1 31.3
3 18.2 7.9 8.7 48.1 31.3
4 18.2 7.97 8.6 48.1 31.3
0 21.5 8.28 10.2 45.6 29.5
1 21.5 8.27 9.9 45.4 29.4
2 21.3 8.28 9.8 45.4 29.4
3.5 21.3 8.29 9.7 45.6 29.5
0 25.7 8.22 8.2 40.2 25.7
1 25.7 8.21 8.1 40.7 26
2 25.8 8.2 8.1 40.1 25.6
3 26.1 8.2 8 40.4 25.7
0 18.6 8.19 8.2 50.5 33.1
2 18.6 8.19 8.2 50.3 32.9
4 18.6 8.18 8.2 50.5 33.1
5 18.6 8.18 8.1 50.1 32.8
0 23.9 8.1 7 46.2 30
1 23.9 8.11 7.2 46.3 30
2 24 8.15 7.5 47.3 30.8
3 24.1 8.16 7.6 47.5 30.9
0 19.8 8.2 8.1 51.3 33.7
2 19.8 8.2 8.1 51.7 34
4 19.8 8.2 8.1 51.1 33.5
0 25.5 8.23 7.8 52.9 34.9
1 25.3 8.22 7.7 52.6 34.6
2 25.5 8.22 7.7 52.7 34.7
3 25.5 8.21 7.6 52.7 34.7
0 18.5 8.34 7.9 52.9 34.9
2 18.5 8.33 7.8 52.9 34.9
4 18.5 8.33 7.8 52.9 34.9
6 18.5 8.33 7.7 53 34.9
8 18.5 8.33 7.6 52.9 34.9
0 18.8 8.05 3.6 52.2 34.4
1 18.7 8.05 3.6 52.7 34.7
2 18.8 8.04 3.5 51.6 33.9
3 18.8 8.04 3.4 51.

You might also like