dejagnu.ps   [plain text]


%!PS-Adobe-2.0
%%Creator: dvips(k) 5.85 Copyright 1999 Radical Eye Software
%%Title: dejagnu.dvi
%%Pages: 60
%%PageOrder: Ascend
%%BoundingBox: 0 0 596 842
%%DocumentPaperSizes: a4
%%EndComments
%DVIPSWebPage: (www.radicaleye.com)
%DVIPSCommandLine: dvips -f dejagnu.dvi
%DVIPSParameters: dpi=600, compressed
%DVIPSSource:  TeX output 1999.09.19:2152
%%BeginProcSet: texc.pro
%!
/TeXDict 300 dict def TeXDict begin/N{def}def/B{bind def}N/S{exch}N/X{S
N}B/A{dup}B/TR{translate}N/isls false N/vsize 11 72 mul N/hsize 8.5 72
mul N/landplus90{false}def/@rigin{isls{[0 landplus90{1 -1}{-1 1}ifelse 0
0 0]concat}if 72 Resolution div 72 VResolution div neg scale isls{
landplus90{VResolution 72 div vsize mul 0 exch}{Resolution -72 div hsize
mul 0}ifelse TR}if Resolution VResolution vsize -72 div 1 add mul TR[
matrix currentmatrix{A A round sub abs 0.00001 lt{round}if}forall round
exch round exch]setmatrix}N/@landscape{/isls true N}B/@manualfeed{
statusdict/manualfeed true put}B/@copies{/#copies X}B/FMat[1 0 0 -1 0 0]
N/FBB[0 0 0 0]N/nn 0 N/IEn 0 N/ctr 0 N/df-tail{/nn 8 dict N nn begin
/FontType 3 N/FontMatrix fntrx N/FontBBox FBB N string/base X array
/BitMaps X/BuildChar{CharBuilder}N/Encoding IEn N end A{/foo setfont}2
array copy cvx N load 0 nn put/ctr 0 N[}B/sf 0 N/df{/sf 1 N/fntrx FMat N
df-tail}B/dfs{div/sf X/fntrx[sf 0 0 sf neg 0 0]N df-tail}B/E{pop nn A
definefont setfont}B/Cw{Cd A length 5 sub get}B/Ch{Cd A length 4 sub get
}B/Cx{128 Cd A length 3 sub get sub}B/Cy{Cd A length 2 sub get 127 sub}
B/Cdx{Cd A length 1 sub get}B/Ci{Cd A type/stringtype ne{ctr get/ctr ctr
1 add N}if}B/id 0 N/rw 0 N/rc 0 N/gp 0 N/cp 0 N/G 0 N/CharBuilder{save 3
1 roll S A/base get 2 index get S/BitMaps get S get/Cd X pop/ctr 0 N Cdx
0 Cx Cy Ch sub Cx Cw add Cy setcachedevice Cw Ch true[1 0 0 -1 -.1 Cx
sub Cy .1 sub]/id Ci N/rw Cw 7 add 8 idiv string N/rc 0 N/gp 0 N/cp 0 N{
rc 0 ne{rc 1 sub/rc X rw}{G}ifelse}imagemask restore}B/G{{id gp get/gp
gp 1 add N A 18 mod S 18 idiv pl S get exec}loop}B/adv{cp add/cp X}B
/chg{rw cp id gp 4 index getinterval putinterval A gp add/gp X adv}B/nd{
/cp 0 N rw exit}B/lsh{rw cp 2 copy get A 0 eq{pop 1}{A 255 eq{pop 254}{
A A add 255 and S 1 and or}ifelse}ifelse put 1 adv}B/rsh{rw cp 2 copy
get A 0 eq{pop 128}{A 255 eq{pop 127}{A 2 idiv S 128 and or}ifelse}
ifelse put 1 adv}B/clr{rw cp 2 index string putinterval adv}B/set{rw cp
fillstr 0 4 index getinterval putinterval adv}B/fillstr 18 string 0 1 17
{2 copy 255 put pop}for N/pl[{adv 1 chg}{adv 1 chg nd}{1 add chg}{1 add
chg nd}{adv lsh}{adv lsh nd}{adv rsh}{adv rsh nd}{1 add adv}{/rc X nd}{
1 add set}{1 add clr}{adv 2 chg}{adv 2 chg nd}{pop nd}]A{bind pop}
forall N/D{/cc X A type/stringtype ne{]}if nn/base get cc ctr put nn
/BitMaps get S ctr S sf 1 ne{A A length 1 sub A 2 index S get sf div put
}if put/ctr ctr 1 add N}B/I{cc 1 add D}B/bop{userdict/bop-hook known{
bop-hook}if/SI save N @rigin 0 0 moveto/V matrix currentmatrix A 1 get A
mul exch 0 get A mul add .99 lt{/QV}{/RV}ifelse load def pop pop}N/eop{
SI restore userdict/eop-hook known{eop-hook}if showpage}N/@start{
userdict/start-hook known{start-hook}if pop/VResolution X/Resolution X
1000 div/DVImag X/IEn 256 array N 2 string 0 1 255{IEn S A 360 add 36 4
index cvrs cvn put}for pop 65781.76 div/vsize X 65781.76 div/hsize X}N
/p{show}N/RMat[1 0 0 -1 0 0]N/BDot 260 string N/Rx 0 N/Ry 0 N/V{}B/RV/v{
/Ry X/Rx X V}B statusdict begin/product where{pop false[(Display)(NeXT)
(LaserWriter 16/600)]{A length product length le{A length product exch 0
exch getinterval eq{pop true exit}if}{pop}ifelse}forall}{false}ifelse
end{{gsave TR -.1 .1 TR 1 1 scale Rx Ry false RMat{BDot}imagemask
grestore}}{{gsave TR -.1 .1 TR Rx Ry scale 1 1 false RMat{BDot}
imagemask grestore}}ifelse B/QV{gsave newpath transform round exch round
exch itransform moveto Rx 0 rlineto 0 Ry neg rlineto Rx neg 0 rlineto
fill grestore}B/a{moveto}B/delta 0 N/tail{A/delta X 0 rmoveto}B/M{S p
delta add tail}B/b{S p tail}B/c{-4 M}B/d{-3 M}B/e{-2 M}B/f{-1 M}B/g{0 M}
B/h{1 M}B/i{2 M}B/j{3 M}B/k{4 M}B/w{0 rmoveto}B/l{p -4 w}B/m{p -3 w}B/n{
p -2 w}B/o{p -1 w}B/q{p 1 w}B/r{p 2 w}B/s{p 3 w}B/t{p 4 w}B/x{0 S
rmoveto}B/y{3 2 roll p a}B/bos{/SS save N}B/eos{SS restore}B end

%%EndProcSet
TeXDict begin 39158280 55380996 1000 600 600 (dejagnu.dvi)
@start
%DVIPSBitmapFont: Fa cmtt12 14.4 6
/Fa 6 118 df<EC1FF891B57E010314E0010F14F84980017F8090B7FC48D9F80F1380DA
C00113C048496C13E04848C7123F4848EC1FF049140F484815F81607484815FCA2484814
03A24915FEA200FF1501A290B7FCA517FCA290CAFC7FA2127FA27F123F6D15FCA26C6CEC
01FE7F6C6C14036C6C14076DEC0FFC6C6D131F6C01E0EB7FF86C9039FC03FFF06DB612E0
6D15C06D158001071500010114FC6D6C13E0020790C7FC2F3679B43E>101
D<ED07FC3B3FFF803FFF804891B512E0B500C38002C78002CF806C01DF806C9038FFF80F
D8003F9038C003FFED00014A7F4A815C177F5CA25CA35CB3A8003FB5D8C07FB51280486E
B612C0B66C15E0A36C4A15C06C4A6C14803B347FB33E>110 D<EE07FE263FFFF890387F
FFC0484AB512E0B5D8FC0714F05D4B14F86C5C6C91387FFC0FD80003EBFFC002FD903800
07F0DAFFFEEB03E003F890C7FC5D5DA25D5DA292C9FCA25CA45CB3A3003FB612FC4881B7
FCA37E6C5D35347CB33E>114 D<903901FFF00F011F9038FE1F8090B612BF000315FF5A
5A5A393FFE003F01F01307D87FC0130190C8FC5A48157FA47EEE3F00D87FC091C7FC13F0
EA3FFE381FFFF06CEBFFC06C14FE6C6E7EC615E0013F14F8010780D9003F7F02007F0307
1380030013C0003EED3FE0007F151F48150F17F06D1407A37FA26D140F6D15E0161F01FC
EC3FC06D14FF9026FFC00F138091B612005E485D013F5C6D14E0D8FC0714802778007FF8
C7FC2C3677B43E>I<147C14FC497EAD003FB712FC5AB87EA36C5EA2260001FEC9FCB3A6
173FA2EF7F80A76E14FF6D16006F5A9238C007FE91387FF01F92B55A6E5C6E5C6E5C6E14
80020149C7FC9138003FF031437DC13E>I<263FFF80EB7FFF4892B5FCB56C4880A36C80
6C81D8003FEC007FB3AC17FFA25E5E80011F140F6E5B02FE90B612806DB812C06D17E083
010114FE6DDAF83F13C0023F01E01480020790C9FC3B347FB23E>I
E
%EndDVIPSBitmapFont
%DVIPSBitmapFont: Fb cmbxti10 14.4 1
/Fb 1 47 df<13FCEA03FF000F13804813C05AA25AA2B5FCA31480A214006C5A6C5A6C5A
EA0FE0121271912B>46 D E
%EndDVIPSBitmapFont
%DVIPSBitmapFont: Fc cmsl9 9 23
/Fc 23 122 df<ED1FE0913801FFF8913807F01E91381F80074A485A02FEEB3F80495A5C
4948140013074A131E93C7FCA3130F5CA5011F147C000FB612FCA339001F80031501133F
02005BA415035B017E5CA4150713FE495CA4150F1201495CA40003141F3A7FFFC3FFFEA2
B5FC29357EB42B>12 D<387FFFF8A4B512F015057D921A>45 D<EB07FCEB3FFF9038F80F
C03901C003E0D803F07F6D6C7EA248486C7E12035BC8FCA21401A2EC7FF8EB07FFEB3FE1
EBFF013803F803EA0FF0D81FE05BEA3FC01380007F1560EB000748ECE0C05A140FA2141F
007F90383BE180EC73E33A1F81E1FF00390FFF81FE3901FE007823237CA126>97
D<137EEA1FFE5B123F1201A2120012015BA512035BA50007137F9038E1FFC09038E781F0
9038FE00FC01F8137E49133E4848133FED1F805BA216C0A2121F5BA4153F003F158090C7
FCA3ED7F00A24814FE007E5C4A5A007F13035D397B8007C039F1C01F8026E0E07EC7FC38
C07FF838001FC0223578B32B>I<ECFF80010713E090381F807890383E001C01FC137C48
4813FE485A0007EB01FCEBE000484813F8001F1400A2485AA2127F90C8FCA45A5AA3127E
A2007F1430A26C147015E06C6C13C0380FC0033907E007003803F03E3800FFF8EB1FC01F
237CA122>I<167EED1FFE16FC153F1501A416F8A41503A216F0A4150714FE903907FFC7
E090381F81E790387E007749133F4848131F4848130F484814C0120F485AA24848131FA2
007F158090C7FCA3153F5A481500A3127E5DA2157E6C14FE14016C13036C6C487E2607C0
0E13F03803E07C3800FFF090393F80FC0027357BB32B>I<EB03FCEB0FFF90383E0FC090
38FC03E0D801F813F03803F001D807E013F8380FC000121F5B123F48C7FCA312FEB6FCA2
48C8FCA35AA51560127E15E0003EEB01C0003FEB03806CEB0700380F800E3807E07C3801
FFF038003F801D237BA122>I<163C91387F01FF903901FFE3CF903907C1FF0F90391F80
FC1F90393F007C0E017EEB3E005B153F485AA35D157E5BA25D6D5B0000495A90387C03E0
9038FE0FC02601CFFFC7FC380383F80180C8FCA21207A37F90B57E6C14F015FC6C804880
380F800048C7EA3F80003E141F48140F12FC5AA3151F16006C143E007C5C6C5C6CEB03F0
3907E01FC00001B5C7FC38003FF028337FA126>103 D<EB01F8137F5C13FF1307A21303
13075CA5130F5CA5011F13FE913883FF8091388F07E0EC9C0302B813F014F0EB3FE014C0
1480A2140015075B017E14E0A4150F13FE4914C0A4151F1201491480A40003143F3A7FFF
C7FFFCA2B5FC26347EB32B>I<EB0380EB0FC0EB1FE0A314C0A2EB070090C7FCAA131FEA
07FFA3C67EA3137EA513FE5BA512015BA512035BA41207B5FCA313337EB215>I<EB03F0
13FF14E0A2130FA21307130F14C0A5131F1480A5133F1400A55B137EA513FE5BA512015B
A512035BA41207B51280A2140014347EB315>108 D<90260F80FFEB07F82603FF839038
C01FFE48903A8F03E0781F913B9C01F0E00F8026007FB8D9F9C013C0D93FF0EBFB8002E0
EBFF0002C05B02805BA202005BA2490103141F017E4A1480A501FE0107143F494A1400A5
0001020F5C494A137EA40003021F14FE3D7FFFC3FFFE1FFFF0A2B500C75C3C217EA041>
I<90380F80FE3A03FF83FF804890388F07E0EC9C0326007FB813F0EB3FF014E014C01480
A2140015075B017E14E0A4150F13FE4914C0A4151F1201491480A40003143F3A7FFFC7FF
FCA2B5FC26217EA02B>I<14FF010713C090381F81F090383E00F80178133C4848133E48
487FA248481480120F4848130FED1FC0123F90C7FCA25AA400FEEC3F80A31600007E5C15
7EA25D003E5C003F495A6C495A6C6C485A6C6C485A2603F03EC7FC3800FFF8EB3FC02223
7CA126>I<903803E07F9039FFE1FFC0489038E781F09138FE00FC26000FF8137E6D5A49
487F17805C161F17C0A2131F5CA4163F013F158091C7FCA2167F17005E495C017E495A5E
017F13034B5A9039FF800FC06E485A9026FCE07EC7FCEC7FF8EC1FC091C9FC1201A25BA4
1203A25B487EB512C05CA22A3080A02B>I<90383E03E03907FE1FF8143C000FEB71FC38
007EE1EB7FC1EC81F815F091C7FCA2137EA213FE5BA512015BA512035BA41207B512C0A3
1E217EA01E>114 D<903807F83890383FFF7890387C07F03801E0013803C00048481370
A2120F90C712607FA26D130013F0EBFF806C13F86C13FE6C7F6C1480013F13C013019038
001FE0140F003013071403A2007014C0A21278EC0780127CEC0F0000FE131E38F7807C38
E1FFF038C07F801D237EA11E>I<13065BA4131CA25BA2137813F812011203485A381FFF
FEB5FCA23803F000A212075BA5120F5BA5121FEB8018A41438003F13301300A214706C13
60EB80E0380F81C0EBC3803803FF00EA00FC172F7AAD1E>I<D801F0131F007FEB07FF00
FF5BA2000F1300000780A249137EA415FE120F495BA41401121F01805BA41403123F4948
5AA2140F6C131F819039807FFF80380FC0E73803FFC7C6903807E000212279A02B>I<3A
7FFF803FFCA2B538007FF8D807F8EB1FC06C48EB0F00150E150C7F00015C153815306D5B
12005D140101FE5BD97E03C7FCA21406137F6D5A141C141814B0131F14E0A25C130F5C91
C8FCA2130626217A9F29>I<3C7FFF1FFF80FFF0A2B5028113E03C0FF003FC007F800007
6D48EB3E00171C0003010014185FA24A6C5B13F80001D9037C5BA20206495AA291260C7E
03C7FCD800FC5C9138183E060238130E0230130C9138703F18EB7E604A6C5AA2D97F805B
16E0D93F005B150F013E5CA2013C91C8FC131C0118130634217A9F37>I<3B03FFFC0FFF
C014F85A3B003FE007F800010FEB03E0ED0780010791C7FC903803F00E6E5A01015B6E5A
01005BEC7FC05D6EC8FC81141F4A7E4A7E14E7903801C7F0EB038390380701F8010E7FEB
1C00497F0178137ED801F8137F00074A7E267FFC0113FC00FF5BA22A207F9F29>I<90B5
EB7FF8A248EDFFF026000FF0EB3F806D48EB1E00161C6E13180103143816305E8001015C
15015E6E48C7FC13001506150EECFE0CEC7E18A25D147F6E5A15E05D5D141F92C8FCA214
0E140CA25C143814305CA25CEA3C01007C5BD8FC03C9FC5B130EEA701CEA7878EA3FE0EA
0F802D30819F29>I E
%EndDVIPSBitmapFont
%DVIPSBitmapFont: Fd cmti9 9 16
/Fd 16 121 df<121C127F12FFA412FE12380808778718>46 D<EB03F0EB0FF890383E1C
6090387C0FF0EBF807EA01F0EA03E00007EB03E0EA0FC0A2381F800715C0EA3F00A2140F
481480127EA2141F00FE14005A1506EC3F07EC3E0F150E147E007C141EECFE1CEB01FCD8
3C03133C393E07BE38391F0E1E783907FC0FF03901F003C0202278A027>97
D<14FCEB07FF90381F078090383E03C0EBFC013801F8033803F0073807E00F13C0120F39
1F80070091C7FC48C8FCA35A127EA312FE5AA4007C14C0EC01E0A2EC03C06CEB0F80EC1F
006C137C380F81F03803FFC0C648C7FC1B2278A023>99 D<ED0FC0EC03FFA21680EC001F
A31600A25DA2153EA2157EA2157CA215FCA2903803F0F8EB0FF8EB3E1DEB7C0F496C5AEA
01F0EA03E000071303D80FC05BA2381F8007A2D83F005BA2140F5A007E5CA2141F12FE48
91C7FC1506EC3F075DEC3E0E147E007C141EECFE1CEB01FCD83C03133C393E07BE38391F
0E1E783907FC0FF03901F003C0223578B327>I<EB03F8EB0FFEEB3E0F9038F807803801
F003EA03E0EA07C0120FEA1F801407D83F0013005C007E133EEB03F8387FFFE04848C7FC
00FCC8FCA45AA4EC0180EC03C0A2007CEB0780EC1F00003C133E6C13F8380F03E03807FF
80D801FCC7FC1A2277A023>I<EB0FC0EA03FFA25CEA001FA391C8FCA25BA2133EA2137E
A2137CA213FCA29038F83F80ECFFE03901FBE0F09038FF80F8EC007849137C485A5B5BA2
484813FC5D5BA2000F13015D1380A2001F13035DEB0007EDC0C048ECC1E0020F13C0003E
1481A2007E1483ED0380007C1407160000FC140E151E48EB07F80070EB01F023357BB327
>104 D<EB0180EB07E0A2130FEB07C0EB038090C7FCABEA01F0EA03FCEA0F1E120E121C
123C1238EA783E1270A2137EEAF07CEA60FCC65AA212015BA212035BA2000713C0EBC1E0
000F13C01381A21383EB038013071400130E131EEA07F8EA01F013337AB118>I<133FEA
07FF5A13FEEA007EA3137CA213FCA213F8A21201A213F0A21203A213E0A21207A213C0A2
120FA21380A2121FA21300A25AA2123EA2127EA2127C1318EAFC1C133CEAF838A2137813
7012F013F0EAF8E01279EA3FC0EA0F00103579B314>108 D<2703C003F8137F3C0FF00F
FE01FFC03C1E783C1F07C1E03C1C7CF00F8F01F03B3C3DE0079E0026383FC001FC7FD97F
805B007001005B5E137ED8F0FC90380FC00100E05FD860F8148012000001021F13036049
1400A200034A13076049013E130FF081800007027EEC83C0051F138049017C1403A2000F
02FC1407053E130049495CEF1E0E001F01015D183C010049EB0FF0000E6D48EB03E03A22
7AA03F>I<3903C007F0390FF01FFC391E787C1E391C7CF01F393C3DE00F26383FC01380
EB7F8000781300EA707EA2D8F0FC131F00E01500EA60F8120000015C153E5BA20003147E
157C4913FCEDF8180007153C0201133801C013F0A2000F1578EDE070018014F016E0001F
ECE1C015E390C7EAFF00000E143E26227AA02B>I<011E137C90387F81FF9039F3C387C0
9039E3EF03E03901E1FE01D9C1FC13F0EBC3F8000313F0018314F814E0EA078713070003
13C01200010F130316F01480A2011F130716E01400A249EB0FC0A2013EEB1F80A2017EEB
3F00017F133E5D5D9038FF81F09038FDC3E09038F8FF80027EC7FC000190C8FCA25BA212
03A25BA21207A25BB5FCA325307FA027>112 D<3903C00FC0390FF03FF0391E78F07839
1C7DE03C393C3FC0FC00381380EB7F00007814F8D8707E13701500EAF0FC12E0EA60F812
001201A25BA21203A25BA21207A25BA2120FA25BA2121FA290C8FC120E1E227AA020>
114 D<1303EB0F80A3131FA21400A25BA2133EA2137EA2137C387FFFF8A2B5FC3800F800
A21201A25BA21203A25BA21207A25BA2120FA25B1460001F13F014E01300130114C01303
001E1380EB07005BEA0F1EEA07F8EA01E015307AAE19>116 D<01F01338D803FC13FCEA
0F1E120E121C123C0038147CEA783E0070143CA2137ED8F07C1338EA60FCC65A15780001
14705BA215F0000314E05BA2EC01C0A2EBC003158014071500EBE00EA26C6C5A3800F878
EB7FE0EB1F801E227AA023>118 D<D801F01538D803FC010E13FCD80F1E131E000E143E
121C123C0038027E137CD8783E137C0070163CA2017E13FCD8F07C491338EA60FCC65A02
01147800014A137013F0A2020314F0000316E001E05BA2160117C001C013C00207EB0380
A29039E00FE0071700021F130E3A01F03DF01E3A00F878F83C90393FF03FF090390FC00F
C02E227AA033>I<011F137C90387FC1FF3A01E1E787803A03C0F703C0903880FE0FEA07
004813FC000E1580001E9038F80700001C91C7FC1301003C5B1218120013035CA31307A2
5C1506010F130F150E14800038141ED87C1F131C00FC143C1538013F5B39F07FC0E03970
F3C3C0393FE1FF80260F807EC7FC22227CA023>I E
%EndDVIPSBitmapFont
%DVIPSBitmapFont: Fe cmr9 9 71
/Fe 71 123 df<91393FE00FE0903A01FFF83FF8903A07E01EF83C903A1F800FF07E903A
3F001FE0FE017E133F4914C0485A1738484890381F8000ACB812C0A33B03F0001F8000B3
A7486C497EB50083B5FCA32F357FB42D>11 D<EC1FE0ECFFFC903803F01E90390FC00780
EB1F8090393F000FC0017E131F5BA2485AED0F8092C7FCA9ED0FC0B7FCA33901F8001F15
0FB3A6486CEB1FE0267FFFC1B5FCA328357FB42B>I<DA1FE013FF9126FFFC0713E0903B
03F01E1F80F0903B0FC0077E003CD91F805B90273F001FF8137E017E4A13FE495CA24848
5C030F147C95C7FCA9187EB912FEA33B01F8000FC000187EB3A6486C496C13FF297FFFC1
FFFE0F13F8A33D357FB440>14 D<003C13F0387E01F838FF03FCA2EB83FEA2EA7F81383D
80F600011306A40003130EEB000CA248131C00061318000E1338000C1330001C13704813
E0387001C00060138017177EB326>34 D<123C127EB4FCA21380A2127F123D1201A41203
1300A25A1206120E120C121C5A5A126009177AB315>39 D<14C01301EB0380EB0F00130E
5B133C5B5BA2485A485AA212075B120F90C7FC5AA2121E123EA3123C127CA55AB0127CA5
123C123EA3121E121FA27E7F12077F1203A26C7E6C7EA213787F131C7F130FEB0380EB01
C01300124A79B71E>I<12C07E1270123C121C7E120F6C7E6C7EA26C7E6C7EA27F137813
7C133C133EA2131E131FA37F1480A5EB07C0B0EB0F80A514005BA3131E133EA2133C137C
137813F85BA2485A485AA2485A48C7FC120E5A123C12705A5A124A7CB71E>I<123C127E
B4FCA21380A2127F123D1201A412031300A25A1206120E120C121C5A5A126009177A8715
>44 D<123C127E12FFA4127E123C08087A8715>46 D<EB0FE0EB7FFCEBF83E3903E00F80
3907C007C0EB8003000F14E0391F0001F0A24814F8A2003E1300007E14FCA500FE14FEB2
007E14FCA56CEB01F8A36C14F0A2390F8003E03907C007C0A23903E00F803900F83E00EB
7FFCEB0FE01F347DB126>48 D<13075B5B137FEA07FFB5FC13BFEAF83F1200B3B3A2497E
007FB51280A319327AB126>I<EB3FC0EBFFF0000313FC380F80FF391E007F80001CEB3F
C048EB1FE048130F15F00060130712FC6C14F87E1403A3007E1307123CC7FC15F0A2140F
15E0EC1FC0A2EC3F801500147E5C495A5C495A495A495A49C7FC133E133C4913185B485A
48481330485A48C7FC001C1470001FB512F05A5AB612E0A31D327CB126>I<EB1FE0EBFF
FC4813FF3907E03F80390F001FC0001EEB0FE0001CEB07F0123F018013F8140313C01380
A2381F0007C7FC15F0A2EC0FE015C0141FEC3F80EC7E00EB01F8EB7FE014FCEB003FEC1F
C0EC0FE0EC07F015F8140315FC140115FEA3127EB4FCA415FC48130312780070EB07F86C
14F0003C130F001FEB1FE0390FE03F800003B51200C613FCEB1FE01F347DB126>I<EC01
C0A214031407A2140F141FA2143F147F146F14CF1301EB038F140F1307130E130C131C13
381330137013E013C0EA0180120313001206120E120C5A123812305A12E0B71280A3C738
0FC000A94A7E0107B51280A321337EB226>I<000C14C0380FC00F90B5128015005C5C14
F014C0D80C18C7FC90C8FCA9EB0FC0EB7FF8EBF07C380FC03F9038001F80EC0FC0120E00
0CEB07E0A2C713F01403A215F8A41218127E12FEA315F0140712F8006014E01270EC0FC0
6C131F003C14806CEB7F00380F80FE3807FFF8000113E038003F801D347CB126>I<14FE
903807FF80011F13E090383F00F0017C13703901F801F8EBF003EA03E01207EA0FC0EC01
F04848C7FCA248C8FCA35A127EEB07F0EB1FFC38FE381F9038700F809038E007C039FFC0
03E0018013F0EC01F8130015FC1400A24814FEA5127EA4127F6C14FCA26C1301018013F8
000F14F0EBC0030007EB07E03903E00FC03901F81F806CB51200EB3FFCEB0FE01F347DB1
26>I<1230123C003FB6FCA34814FEA215FC0070C7123800601430157015E04814C01401
EC0380C7EA07001406140E5C141814385CA25CA2495A1303A3495AA2130FA3131F91C7FC
A25BA55BA9131C20347CB126>I<EB0FE0EB7FFC90B5FC3903F01F803907C007C0390F00
03E0000EEB01F0001E1300001C14F8003C1478A3123EA2003F14F86D13F0EBC001D81FF0
13E09038F803C0390FFE07803907FF0F006C13DE6C13F87EEB3FFE8001F713C0D803E313
E0D8078013F0390F007FF8001E131F003EEB07FC003C1303481301EC007E12F848143EA2
151EA37E153C1278007C14787E6C14F0390F8003E03907F01FC00001B5120038007FFCEB
1FE01F347DB126>I<EB0FE0EB7FF8EBFFFE3803F83F3907E00F80390FC007C0D81F8013
E0EC03F0EA3F0048EB01F8127EA200FE14FC1400A415FEA5007E1301A2127F7E1403EA1F
80000F13073807C00E3803E01C3801F03838007FF090381FC0FC90C7FC1401A215F8A215
F01403001F14E0383F800715C0140FEC1F809038003F00001C137E381F01FC380FFFF000
0313C0C690C7FC1F347DB126>I<123C127E12FFA4127E123C1200B0123C127E12FFA412
7E123C08207A9F15>I<15E0A34A7EA24A7EA34A7EA3EC0DFE140CA2EC187FA34A6C7EA2
02707FEC601FA202E07FECC00FA2D901807F1507A249486C7EA301066D7EA2010E80010F
B5FCA249800118C77EA24981163FA2496E7EA3496E7EA20001821607487ED81FF04A7ED8
FFFE49B512E0A333367DB53A>65 D<DA03FE130C91393FFF801C91B512E0903A03FE01F8
3C903A0FF0003C7CD91FC0EB0EFCD97F80130701FEC7120348481401000315005B484815
7C485A173C485A171C123F5B007F160CA390C9FC481600AB7E6D150CA3123F7F001F161C
17186C7E17386C6C15306C6C15706D15E012016C6CEC01C0D97F80EB0380D91FC0EB0F00
D90FF0131ED903FE13FC0100B512F0023F13C0DA03FEC7FC2E377CB437>67
D<B77E16F016FE3A01FE0001FF00009138003FC0EE0FE0707E707E707E707E177E177FEF
3F80A2EF1FC0A3EF0FE0A418F0AA18E0A3171F18C0A21880173F18005F17FE5F4C5AEE07
F04C5AEE3FC000014AB45AB748C7FC16F8168034337EB23B>I<B812C0A3D803FCC7127F
0001150FEE03E01601A21600A21760A403061330A41700150EA2151E157E90B512FEA390
38FC007E151E150EA21506170CA3171892C7FCA41738A21770A217F01601160316070003
157FB812E0A32E337DB234>I<B81280A3D803FCC7FC0001151FEE07C01603A21601A216
00A41760150CA31700A2151CA2153C15FC90B5FCA3EBFC00153C151CA2150CA592C8FCAB
487EB512FEA32B337DB232>I<DA03FE130C91393FFF801C91B512E0903A03FE01F83C90
3A0FF0003C7CD91FC0EB0EFCD97F80130701FEC7120348481401000315005B4848157C48
5A173C485A171C123F5B007F160CA390C9FC4893C7FCAA0303B512E07E7F92390003FE00
705A123F7F121FA26C7E7F12076C7E7F6C6C14036C7E6D6C1307D91FC0EB0E7CD90FF0EB
1C3CD903FEEBF81C0100B5EAF00C023F01C0C7FCDA03FEC8FC33377CB43C>I<B512FEA3
000113006C5AB3B3A7487EB512FEA317337EB21C>73 D<017FB5FCA39038003FE0EC1FC0
B3B1127EB4FCA4EC3F805A0060140000705B6C13FE6C485A380F03F03803FFC0C690C7FC
20357DB227>I<B500FE903807FFF8A3000190C7000113006C48EC00FC17F04C5A4C5A4C
C7FC160E5E5E5E5E4B5A4B5A4BC8FC150E5D5D15F84A7E14034A7EEC0EFF5C4A6C7E4A6C
7EECE01FD9FFC07F4A6C7E4A6C7E5B6F7E6F7EA26F7E707EA2707E707E160F83707E707E
A283486C913807FF80B500FE013F13FCA336337EB23C>I<B512FEA3D803FEC9FC6C5AB3
A9EE0180A416031700A45EA25E5E5E5E16FE00031407B7FCA329337DB230>I<D8FFFC92
3801FFF86D5DA20003EFFE00D801BFED06FCA3D99F80140CA2D98FC01418A3D987E01430
A2D983F01460A3D981F814C0A3D980FCEB0180A2027EEB0300A36E1306A26E6C5AA36E6C
5AA36E6C5AA26E6C5AA36E6C5AA3913800FD80A2037FC7FCA3486C133ED80FF04B7EB501
1C90387FFFF8A33D337CB246>I<D8FFFE91381FFFF87F80C6030013006E143CD9DFE014
18EBCFF0A2EBC7F8EBC3FCA2EBC1FEEBC0FF6E7EA26E7E6E7EA26E7E6E7E6E7EA26E7E6E
7EA2ED7F80ED3FC0ED1FE0A2ED0FF0ED07F8A2ED03FCED01FEED00FFA2EE7F98EE3FD8A2
EE1FF8160F1607A216031601A2486C1400D807F81578B500C01438A2171835337EB23A>
I<EC07FC91387FFFC0903901FC07F0903907E000FCD90F80133E013FC76C7E017E6E7E49
6E7E48486E7E48486E7EA248486E7E000F8249157E001F167FA24848ED3F80A2007F17C0
A290C9121FA24817E0AB6C17C06D153FA3003F17806D157FA2001F17006D5D000F5E6C6C
4A5AA26C6C4A5A00015E6C6C4A5A017E4A5A6D4A5AD91FC0017FC7FCD907E013FC903901
FC07F09039007FFFC0DA07FCC8FC33377CB43C>I<B612FEEDFFC016F03A03FC0007FC00
01EC00FE167FEE3F80EE1FC017E0160FA217F0A617E0A2EE1FC0A2EE3F80EE7F0016FEED
07F890B65A168001FCC9FCB3A2487EB512F8A32C337DB234>I<EC07FC91387FFFC09039
01FC07F0903907E000FC4948137E013FC7EA1F80017E6E7E496E7E48486E7E0003824914
0148486E7E000F8249157E001F167FA24848ED3F80A2007F17C0A390C9121F4817E0AB6C
17C0A26D153FA2003F1780A26D157F001F1700A2270FE001F013FE0007D907FC5B9039F0
0E0E013B03F80C0703F8000190391C0383F03B00FC180187E0017EECCFC0013FECDF8090
271F9C00FFC7FCD907EC13FC902701FE07F013609038007FFF913807FC7091C7007813E0
A2EE7C01EE7E0393387F07C0EE3FFFA21880821800705A705AEE01F033447CB43C>I<B6
12FCEDFF8016F03A01FE0007FC0000EC01FEED007F707E707E83160F83A65FA24C5AA24C
5A047EC7FC4B5AED0FF090B612C093C8FC9039FE001FC0ED07F06F7E6F7E150082167E16
7FA583A5180C17C0A2043F131C486C1618B500FEEB1FE0040F1338933807F070C93801FF
E09338003F8036357EB239>I<90381FE00390387FFC0748B5FC3907F01FCF390F8003FF
48C7FC003E80814880A200788000F880A46C80A27E92C7FC127F13C0EA3FF013FF6C13F0
6C13FF6C14C06C14F0C680013F7F01037F9038003FFF140302001380157F153FED1FC015
0F12C0A21507A37EA26CEC0F80A26C15006C5C6C143E6C147E01C05B39F1FC03F800E0B5
12E0011F138026C003FEC7FC22377CB42B>I<007FB712FEA390398007F001D87C00EC00
3E0078161E0070160EA20060160600E01607A3481603A6C71500B3AB4A7E011FB512FCA3
30337DB237>I<B500F0903803FFF8A3D807FEC8EA7FC06C48ED1F000001161E6D151C00
001618A26D15386D1530A26D6C5CA26E14E0011F5DA26D6C495AA28001074AC7FCA26D6C
1306A28001015CA26E131C01001418806E5BA2ED8070023F1360A26E6C5AA215E1020F5B
A2DA07F3C8FCA215FBEC03FEA36E5AA26E5AA31570A235357EB23A>86
D<B5D8F007B539800FFFF0A3000390C7273FF000011300D801FC6E48EB007C1A386D140F
00001930836D020715706D1860A26E496C14E0013F60A26ED919FC1301011F60A26ED930
FE1303010F95C7FCA26ED9607F5B01071706A26E9039C03F800E0103170CA2913BFC0180
1FC01C01011718A2913BFE03000FE03801001730A2DAFF06EB07F0027F5EA2038CEB03F8
023F5EA203D8EB01FC021FEDFD80A203F0EB00FF020F93C8FCA24B800207157EA24B143E
0203153CA24B141C020115184C357FB24F>I<267FFFFC90B512C0A3000101E090381FF8
0026007F80EB0FC0013F6E5A6E91C7FC6D6C130E010F140C6E5B6D6C133801035C6E1360
6D6C13E06D6C485A5EDA7F83C8FCEC3FC715C6EC1FECEC0FFC5D14076E7EA26E7E815C6F
7E9138063FC0140E4A6C7E9138180FF0EC380702707F91386003FCECC0010101804A6C7E
49C77E4981010E6E7E010C6E7E131C496E7E01786E7E13FCD807FEEC1FFEB56C90B512F8
A335337EB23A>I<EAFFF0A4EAF000B3B3B3ADEAFFF0A40C4B79B715>91
D<0003130C48131C000E133848137000181360003813E0003013C0EA700100601380A2EA
E00300C01300A400DE137800FF13FCEB83FEA2EA7F81A2383F00FC001E1378171774B326
>I<EAFFF0A41200B3B3B3AD12FFA40C4B7FB715>I<12035A120E5A121812381230127012
60A212E05AA412DEB4FC1380A2127FA2EA3F00121E09177BB315>96
D<EB7F803803FFF0380F80FC381C003E003F133F6D6C7E6E7EA26E7EEA1F00C7FCA4EB01
FF131FEBFF873803FC07EA0FF0EA1FC0EA3F80127F13004815C05AA3140FA26C131F6C13
3B3A3F8071F180391FC1E1FF2607FFC013003900FE003C22237DA126>I<EA03F012FFA3
12071203AEEC3F80ECFFE09038F3C0F89038F7007E01FE7F49EB1F8049EB0FC05BED07E0
16F0A2150316F8AA16F0150716E0A2ED0FC07F6DEB1F8001ECEB3F0001CF137C90388381
F8903801FFE0C76CC7FC25357EB32B>I<EB07F8EB3FFF9038FC07C03901F000E03903E0
03F03807C007120FEA1F80123F90380003E04890C7FCA2127E12FEAA127FA26C14187F00
1F14386D1330000F14706C6C13E03903F001C03900FC0F8090383FFE00EB07F01D237EA1
22>I<153FEC0FFFA3EC007F81AEEB07F0EB3FFCEBFC0F3901F003BF3907E001FF48487E
48487F8148C7FCA25A127E12FEAA127E127FA27E6C6C5BA26C6C5B6C6C4813803A03F007
BFFC3900F81E3FEB3FFCD90FE0130026357DB32B>I<EB0FE0EB7FFCEBF83F3903F00F80
D807E013C0390FC007E0381F800315F0EA3F0014014814F8127EA212FEA2B6FCA248C8FC
A5127E127FA26C1418A26C6C1338000F14306D13706C6C13E03901F003C03900FC0F00EB
3FFEEB07F01D237EA122>I<EB01FCEB07FF90381F078090383E0FC0EB7C1F13FCEA01F8
A20003EB070049C7FCACB512F0A3D803F0C7FCB3A7487E387FFFE0A31A357FB417>I<15
1F90391FC07F809039FFF8E3C03901F07FC73907E03F033A0FC01F83809039800F800000
1F80EB00074880A66C5CEB800F000F5CEBC01F6C6C48C7FCEBF07C380EFFF8380C1FC000
1CC9FCA3121EA2121F380FFFFEECFFC06C14F06C14FC4880381F0001003EEB007F4880ED
1F8048140FA56C141F007C15006C143E6C5C390FC001F83903F007E0C6B51280D91FFCC7
FC22337EA126>I<EA03F012FFA312071203AEEC1FC0EC7FF09038F1E0FC9038F3807C90
38F7007E13FE497FA25BA25BB3486CEB7F80B538C7FFFCA326347EB32B>I<EA0780EA0F
C0EA1FE0A4EA0FC0EA0780C7FCAAEA07E012FFA3120F1207B3A6EA0FF0B5FCA310337EB2
15>I<EB03C0EB07E0EB0FF0A4EB07E0EB03C090C7FCAAEB03F013FFA313071303B3B012
38127C00FE13E0130714C0130F007C138038381F00EA1FFCEA07F0144384B217>I<EA03
F012FFA312071203AF913803FFE0A36E1300EC00F8EC01E05D4A5A020FC7FC141C5C5C14
F0EBF3F8EBF7FC13FEEBFC7EEBF87F496C7E141F6E7E8114076E7E8114016E7E81486CEB
FF80B500C313F0A324347EB329>I<EA07E012FFA3120F1207B3B3A7EA0FF0B5FCA31034
7EB315>I<2703F01FE013FF00FF90267FF80313C0903BF1E07C0F03E0903BF3803E1C01
F02807F7003F387FD803FE1470496D486C7EA2495CA2495CB3486C496C487EB53BC7FFFE
3FFFF0A33C217EA041>I<3903F01FC000FFEB7FF09038F1E0FC9038F3807C3907F7007E
EA03FE497FA25BA25BB3486CEB7F80B538C7FFFCA326217EA02B>I<EB07F0EB3FFE9038
FC1F803901F007C03903C001E000078048486C7E48C7127CA248147E003E143E007E143F
A300FE1580A8007E1500A36C147EA26C147C6D13FC6C6C485A00075C3903F007E03900FC
1F80D93FFEC7FCEB07F021237EA126>I<3903F03F8000FFEBFFE09038F3C0F89038F700
7ED807FE7F6C48EB1F804914C049130F16E0ED07F0A3ED03F8A9150716F0A216E0150F16
C06D131F6DEB3F80160001FF13FC9038F381F89038F1FFE0D9F07FC7FC91C8FCAA487EB5
12C0A325307EA02B>I<903807F00390383FFC07EBFC0F3901F8038F3807E001000F14DF
48486CB4FC497F123F90C77E5AA25A5AA9127FA36C6C5B121F6D5B000F5B3907E003BF39
03F0073F3800F81EEB3FF8EB0FE090C7FCAAED7F8091380FFFFCA326307DA029>I<3803
E07C38FFE1FF9038E38F809038E71FC0EA07EEEA03ECA29038FC0F8049C7FCA35BB2487E
B512E0A31A217FA01E>I<EBFF06000713CE381F00FE003C133E48131E140E5A1406A27E
A200FE90C7FC6C7EEA7FFC383FFFC014F0000F7F6C7FC67FEB0FFF1300EC3F8000C0131F
140F6C1307A37E15006C5B6C130E6C5B38F7807838E1FFE038C07F8019237EA11E>I<13
30A51370A313F0A21201A212031207381FFFFEB5FCA23803F000AF1403A814073801F806
A23800FC0EEB7E1CEB1FF8EB07E0182F7FAD1E>I<D803F0133F00FFEB0FFFA30007EB00
7F000380B35DA35D12016D4813800000903803BFFC90387E073FEB1FFED907F813002622
7EA02B>I<B5EBFFF0A3D80FF0EB3F800007EC1F000003140E150C6D131C00011418A26C
6C5BA26D1370017E1360137F6D5BA290381F8180A214C3010F90C7FCA2EB07E6A214FE6D
5AA26D5AA36D5AA2146024217E9F29>I<B53A1FFF81FFF0A33C07F801FC003F8001F049
EB1E0000030100141C816C6C017C1318A26D017E1338000002FE1330A290267E01FF5B15
9F168090263F030F5BA216C0903A1F8607C180A202C613E390260FCC0390C7FCA2D907FC
13F6ECF80116FE6D486C5AA36D481378A36D48133034217F9F37>I<B53801FFF8A32603
FE0013806C48EB7C0000001478017E1370017F5B90383F81C090381F8380D90FC3C7FCEB
07E614FE6D5A6D5A6D7E80805B9038039F809038071FC09038060FE0EB0C0790381C03F0
496C7E01707FEBF000000180000FECFF8026FFFC0313FCA326207F9F29>I<3A7FFF807F
F8A33A07F8001FC00003EC0F800001EC070015066C6C5BA26D131C017E1318A26D5BA2EC
8070011F1360ECC0E0010F5BA2903807E180A214F3010390C7FC14FBEB01FEA26D5AA314
78A21430A25CA214E05CA2495A1278D8FC03C8FCA21306130EEA701CEA7838EA1FF0EA0F
C025307F9F29>I<003FB512F0A2EB000F003C14E00038EB1FC00030EB3F800070137F15
00006013FE495A13035CC6485A495AA2495A495A49C7FC153013FE485A12035B48481370
485A001F14604913E0485A387F000348130F90B5FCA21C207E9F22>I
E
%EndDVIPSBitmapFont
%DVIPSBitmapFont: Ff cmtt9 9 51
/Ff 51 122 df<00101320007C13F838FE01FCAAEAFC00007C13F8A900381370161778AE
27>34 D<EB01C0EB03E0130F131FEB3FC0EB7F80EBFE00485A5B1203485A5B485AA2485A
A248C7FCA3127EA45AAC127EA47EA36C7EA26C7EA26C7E7F6C7E12017F6C7EEB7F80EB3F
C0EB1FE0130F1303EB01C0133A73B327>40 D<127012F812FE7E6C7E6C7EEA0FE06C7E12
037F6C7E1200137EA27FA2EB1F80A3EB0FC0A4EB07E0ACEB0FC0A4EB1F80A3EB3F00A213
7EA25B1201485A5B1207485AEA3FC0485A48C7FC5A12F81270133A7AB327>I<007FB512
F8B612FCA46C14F81E067C9927>45 D<121EEA7F80A2EAFFC0A4EA7F80A2EA1E000A0A72
8927>I<1538157C15FCA2140115F8140315F0140715E0140F15C0141F1580143F1500A2
5C147E14FE5C13015C13035C13075C130F5CA2131F5C133F91C7FC5B137E13FE5B12015B
12035BA212075B120F5B121F5B123F90C8FC5A127E12FE5AA25A12781E3A7CB327>I<EB
07E0EB3FFC497E90B5FC4814803903FC3FC03907F00FE0390FE007F0EBC003391F8001F8
A248C712FCA2003E147C007E147EA3007C143E00FC143FAC007E147EA46C14FCA2EB8001
001F14F8EBC003000F14F0EBE0073907F00FE03903FC3FC06CB512806C14006D5A6D5AEB
07E020307DAE27>I<007FB512FEB7FCA4003F14FEC9FCA6003FB512FEB7FCA46C14FE20
127D9F27>61 D<EB03F0497EA2497EA4143CEB1F3EA5EB3F3FA3EB3E1FA2017E7FA4496C
7EA548486C7EA390B5FCA24880A3EBF003A248486C7EA4000F803A7FFC0FFF8000FF15C0
6D5A497E007F1580222F7EAE27>65 D<387FFFFC14FFB612C06C80813907E00FF81407EC
01FC6E7EA2157E157F811680151FA316C0150FABED1F80A3153F1600A25D15FEA24A5A4A
5A140F007FB55A5DB65A6C91C7FC14FC222E7FAD27>68 D<007FB61280B712C0A37E3907
E0000FA6ED078092C7FCA4EC07804A7EA390B5FCA5EBE00FA36E5A91C8FCA4ED03C0ED07
E0A7007FB6FCB7FCA36C15C0232E7FAD27>I<007FB61280B712C0A37E3907E0000FA6ED
078092C7FCA4EC07804A7EA390B5FCA5EBE00FA36E5A91C8FCAC387FFF80B57EA36C5B22
2E7EAD27>I<903807F03890381FFC7C90387FFFFC90B5FC5A3803FC1F3807F00F380FE0
07EBC003001F13011380123F90C7FCA2127EA2157892C7FC5AA8EC1FFF4A1380A3007E6D
1300EC00FCA36C1301A21380121FEBC003120FEBE0073807F00F3803FC1F6CB5FC7EEB7F
FE90381FFC78D907F0C7FC21307DAE27>I<007FB512E0B612F0A36C14E039001F8000B3
B2007FB512E0B612F0A36C14E01C2E7BAD27>73 D<387FFFC080B5FC7E5CD803F0C8FCB3
AAED0780ED0FC0A7007FB6FCA2B7FC7E1680222E7FAD27>76 D<3A7FF003FFE0486C4813
F0A213FC007F6D13E000079038003E0013DEA313CFA3148013C714C0A213C314E0A213C1
14F0A3EBC0F8A31478147CA2143C143EA2141E141F140FA3EC07BEA3EC03FEEA7FFCEAFF
FE1401A26C486C5A242E7FAD27>78 D<EBFFFC0007EBFF80001F14E0A24814F0EBC00F39
7F8007F8EB0003007E1301A348EB00FCB3A76C1301007E14F8A3007F1303EB8007393FE0
1FF090B5FC6C14E0A200071480C6EBFC001E307CAE27>I<007FB5FCB612E081816C8039
07E003FEEC00FF81ED3F80151F16C0150FA6151F1680153FED7F005DEC03FE90B55A5D5D
5D92C7FC01E0C8FCADEA7FFEB5FCA36C5A222E7FAD27>I<387FFFF0B512FE6E7E816C80
3907E01FF014076E7E1401811400A514015D14034A5A141F90B55A5D5DA281EBE01F6E7E
14076E7EA816F0EDF1F8A4397FFE01FBB5EBFFF08016E06C48EB7FC0C8EA1F00252F7FAD
27>82 D<90387FC0E03901FFF1F0000713FF5A5AEA3FE0EB801F387F000F007E130712FE
5A1403A3EC01E06C90C7FC127E127FEA3FC013F86CB47E6C13F86C13FE6CEBFF80C614C0
010F13E0010013F0140FEC07F81403140115FC1400127812FCA46CEB01F8A26C13039038
8007F09038F01FE090B5FC15C0150000F85B38701FF81E307CAE27>I<007FB61280B712
C0A439FC03F00FA60078EC0780000091C7FCB3AB90B512C04880A36C5C222E7EAD27>I<
3A7FFE01FFF8B54813FCA36C486C13F83A07E0001F80B3AB6D133F00031500A26D5B0001
147E6D13FE6C6C485A90387F87F814FF6D5B010F13C06D5BD901FEC7FC262F80AD27>I<
3A7FFC03FFE06D5A00FF15F0007F15E0497E3A07E0007E00A46C6C5BA4EBF80100015CA4
6C6C485AA490387E07E0A56D485AA4011F5B149FA3010F90C7FCA5EB07FEA46D5AA26D5A
242F7FAD27>I<D87FE0EB7FE0486CEBFFF0A36C48EB7FE0001FC7EA0F80A76C6CEB1F00
A614F0EB81F83907C3FC3EA4149CEBC79EA30003143CA301E7137CEBEF9FA2140FA20001
1478A49038FE07F8A300005CA2EBFC0390387801E0242F7FAD27>I<393FFC1FFE387FFE
3F815D383FFC1F3903F00FE001F85B1201EBFC1F00005CEBFE3F017E90C7FCEB7F7FEB3F
7E14FE6D5AA26D5AA26D5AA21303130780130F80131F80EB3F7E147F497E017E7F141F01
FC7F140FD801F87F14071203496C7E120701E07F3A7FFC0FFF8000FF15C06D5A497E007F
1580222E7EAD27>I<007FB512F8B612FCA46C14F81E067C7E27>95
D<3803FFC0000F13F04813FC4813FF811380EC1FC0381F000F000480C71207A2EB0FFF13
7F0003B5FC120F5A383FFC07EA7FC0130012FE5AA46C130F007F131FEBC0FF6CB612806C
15C07E000313F1C69038807F8022207C9F27>97 D<EA7FE0487EA3127F1203A914FF01F3
13C090B512F08181EC81FE49C67E49EB3F8049131F16C049130FA216E01507A6150F16C0
7F151F6DEB3F80157F6DEBFF009038FF83FEECFFFC5D5D01F313C02601E0FEC7FC232E7F
AD27>I<EB0FFF017F13C048B512E04814F05A380FF807EA1FE0393FC003E09038800080
48C8FC127EA212FE5AA67E127EA2007F14F0393F8001F813C0381FE003390FF80FF06CB5
FC6C14E06C14C06C6C1300EB0FF81D207B9F27>I<EC3FF04A7EA3143F1401A9EB0FE1EB
7FFD48B5FC5A5A380FF83F381FE00F383FC007EB8003EA7F00007E1301A212FE5AA67E00
7E1303A2127F6C1307EB800F381FE01F380FF03F6CB612C06C15E06C13FD38007FF9D91F
E013C0232E7EAD27>I<EB0FF8EB3FFE90B51280000314C04814E0390FFC0FF0391FE003
F8EBC001D83F8013FC48C7FC127E157E12FEB612FEA415FC00FCC8FC7E127E127F6C143C
6D137E6C7E01F013FE390FFC07FC6CB5FC000114F86C14F0013F13C0903807FE001F207D
9F27>I<EC1FF0ECFFF84913FC4913FE5BEB0FF014C0011F137CEC8000A6007FB512F0B6
12F8A36C14F039001F8000B3A4003FB512C04814E0A36C14C01F2E7EAD27>I<153F9039
1FC0FF80D97FF313C048B612E05A4814EF390FF07F873A1FC01FC3C0EDC000EB800F4848
6C7EA66C6C485AEBC01FA2390FF07F8090B5C7FC5C485BEB7FF0EB1FC090C9FCA27F6CB5
FC15E015F84814FE4880EB8001007EC7EA3F80007C140F00FC15C0481407A46C140F007C
1580007F143F6C6CEB7F009038F807FF6CB55A000714F86C5CC614C0D90FFCC7FC23337E
A027>I<EA7FE0487EA3127F1203A9147F9038F1FFC001F713F090B5FC8114C1EC01FCEB
FE005B5BA25BB03A7FFF83FFE0B500C713F0A36C018313E0242E7FAD27>I<130F497E49
7EA46D5A6DC7FC90C8FCA7383FFF80487FA37EEA000FB3A4007FB512F0B6FC15F815F07E
1D2F7BAE27>I<143C147E14FFA4147E143C1400A73801FFFE4813FFA37EC7123FB3B014
7E1238007C13FE38FE01FC1303B512F814F06C13E06C13803807FE0018407CAE27>I<EA
7FE07F12FF127FA21201A991383FFFC04A13E0A36E13C0913803F8004A5A4A5A4A5A4A5A
02FFC7FCEBF1FEEBF3FCEBF7F8EBFFFC8080143F496C7E496C7E01F87FEBF0076E7E6E7E
816E7E157E3A7FFFC1FFF002C313F8B512E36C13C316F0252E80AD27>I<387FFF80B57E
A37EEA000FB3B2007FB512F8B612FCA36C14F81E2E7CAD27>I<397F07C01F3AFF9FF07F
C09039FFF9FFE091B57E7E3A0FFC7FF1F89038F03FC001E0138001C01300A3EB803EB03A
7FF0FFC3FF486C01E3138001F913E701F813E36C4801C313002920819F27>I<387FE07F
39FFF1FFC001F713F090B5FC6C80000313C1EC01FCEBFE005B5BA25BB03A7FFF83FFE0B5
00C713F0A36C018313E024207F9F27>I<EB1FE0EB7FF83801FFFE487F481480390FF03F
C0391FC00FE0393F8007F0EB00034814F8007E1301A248EB00FCA76C1301007E14F8A200
7F1303393F8007F0A2391FE01FE0390FF03FC06CB512806C14006C5B38007FF8EB1FE01E
207C9F27>I<387FE0FFD8FFF313C090B512F0816C800003EB81FE49C67E49EB3F804913
1F16C049130FA216E01507A6150F16C07F151F6DEB3F80157F6DEBFF009038FF83FEECFF
FC5D5D01F313C0D9F0FEC7FC91C8FCAC387FFF80B57EA36C5B23317F9F27>I<90380FF0
3C90383FFE7E90B5FC000314FE5A380FFC1F381FE007EBC003383F800148C7FC127EA200
FE147E5AA67E007E14FEA2007F1301EA3F80EBC003381FE007380FF81F6CB5FC7E6C147E
38007FFCEB0FF090C7FCAC91381FFFF8A24A13FC6E13F8A226317E9F27>I<397FFC03FC
39FFFE0FFF023F13804A13C0007F90B5FC39007FFE1F14F89138F00F809138E002004AC7
FC5CA291C8FCA2137EAD007FB57EB67EA36C5C22207E9F27>I<9038FFF3800007EBFFC0
121F5A5AEB803F38FC000F5AA2EC07806C90C7FCEA7F8013FC383FFFF06C13FC000713FF
00011480D8000F13C09038003FE014070078EB03F000FC1301A27E14036CEB07E0EBE01F
90B512C01580150000FB13FC38707FF01C207B9F27>I<133C137EA8007FB512F0B612F8
A36C14F0D8007EC7FCAE1518157EA415FE6D13FC1483ECFFF86D13F06D13E0010313C001
0013001F297EA827>I<397FE01FF8486C487EA3007F131F00031300B21401A21403EBFC
0F6CB612E016F07EEB3FFE90390FF87FE024207F9F27>I<3A7FFC0FFF80486C4813C0A3
6C486C13803A07C000F800EBE00100035CA2EBF00300015CA2EBF80700005CA390387C0F
80A36D48C7FCA3EB3F3FEB1F3EA214FE6D5AA36D5AA26D5A22207E9F27>I<3A7FFE07FF
E000FF15F06D5A497E007F15E03A0F80001F00A36D5B0007143EA414F0EBC1F83903E3FC
7CA4EBE79EA200011478A301F713F8A2EBFF0F6C5CA3EBFE0790387C03E024207F9F27>
I<393FFC1FFF486C5A168016006C487E3901F807E06C6C485A4A5A017E90C7FC6D5AEB1F
7E5C6D5A13076D5A5C80497E130F497E143EEB3E3FEB7E1F90387C0F8001F87F00016D7E
3803F0033A7FFE1FFF80A2B54813C06C486C1380A222207E9F27>I<3A7FFC0FFF80486C
4813C0A36C486C13803A07E000F800000313015D13F00001130301F85B1200A26D485A13
7CA290387E0F80133EA2011F90C7FC5CA2130F149E14BE130714FC1303A25C1301A25CA2
13035CA213075C1208EA3E0F007F5B131FD87E7FC8FCEA7FFE6C5A5B6C5AEA07C022317E
9F27>I E
%EndDVIPSBitmapFont
%DVIPSBitmapFont: Fg cmtt12 13.14 5
/Fg 5 121 df<EC3FFF49B512E0010714F8011F8049805B90B7FC48EBE001481300485A
EA0FF8496D5A4848147C93C7FC485A5B127F90CAFCA35A5AA97E7EA27F123F6D141F6DEC
3F80121F6C7E01FC147F6C6CECFF006C6C6C5A6C9038F00FFE91B55A6C6C5C6D5C6D5C01
071480010149C7FC9038003FF0293278B038>99 D<EC3FE0903801FFFC010713FF011F14
C04980498090B67E489038E03FFC4890380007FE48481301D80FF86D7E49804848158049
143F003F16C049141F127F90C8FC17E0160F5A90B7FCA617C048CAFC7E7EA27FA26C7EEE
07C06C6CEC0FE07F6C7ED807FE141F6DEC3FC06C01C013FF6CD9FC0713806C90B612006D
5C6D5C010F5C010314E001001480DA1FFCC7FC2B327AB038>101
D<ED3FC03A3FFE01FFF8267FFF0713FEB5001F7F4A804A806C90B67E6C02C07F3B007FFE
001FF802F86D7E4A13034A6D7E5C707E4A80188091C8123FA318C0171FA9173F6E1580A2
177FA26EECFF00A26E495A6E13034C5A6E495A02FE133F6E6CB45A92B55A6E5C6E5C6E91
C7FC6E13FC020313F09138007F8092C9FCB0383FFFFE487FB67EA36C91C9FC6C5B32487F
AF38>112 D<EB01E0497E1307AB003FB712804816C0B8FCA46C1680260007F0C8FCB3A4
EE03E0EE07F0A66E130F17E06D6C131F6EEB3FC0903901FF81FF92B512806D15006E5B6E
5B6E13F002075B020190C7FC2C3D7DBB38>116 D<3B3FFFE007FFFC486D487FB56C487F
A36C496C5B6C496C5B28007F8000FEC7FC013F495A6D6C485A6D6C485AEB07F04B5A6D6C
485AD901FC5B903800FE3F4BC8FCEC7FFE6E5A141F6E5A5D6E5A814A7E141F4A7E157EEC
7E7F4A7E01016D7E02F87F49486C7E0107130749486C7E02C07F011F6D7E49486C7E49C7
FC167F277FFFE003B5FCB56C481480A56C496C1400312F7DAE38>120
D E
%EndDVIPSBitmapFont
%DVIPSBitmapFont: Fh cmb10 10.95 45
/Fh 45 121 df<147814F81301EB03F0EB07E0EB0FC0A2EB1F80133FEB7F00A213FEA248
5A1203A25B1207A2485AA3121F5BA2123FA4485AA612FFB3A2127FA66C7EA4121FA27F12
0FA36C7EA212037FA212016C7EA2137FA2EB3F80131FEB0FC0A2EB07E0EB03F0EB01F813
001478155A78C323>40 D<127012F87E127E7E6C7EA26C7E7F6C7EA26C7EA26C7E7FA212
007FA2EB7F80A314C0133FA214E0A4EB1FF0A614F8B3A214F0A6EB3FE0A414C0A2137F14
80A3EBFF00A25B1201A25B485AA2485AA2485A5B485AA248C7FC127E5A5A1270155A7BC3
23>I<EA0FC0EA1FE0EA3FF0EA7FF8EAFFFCA313FEA3127F123F121FEA0FDEEA001EA213
3E133CA2137CA2137813F813F01201EA03E0EA07C0A2EA0F80EA1F00121E120C0F207B8D
19>44 D<EA0FC0EA1FE0EA3FF0EA7FF8EAFFFCA6EA7FF8EA3FF0EA1FE0EA0FC00E0E7B8D
19>46 D<EB01FE90380FFFC0013F13F090B512FC48EB87FE3903FE01FF48486C1380A248
48EB7FC0001F15E049133FA2003F15F0A3007F15F8A500FF15FCB3A3007F15F8A6003F15
F0A36C6CEB7FE0A2000F15C06D13FF000715806C6C4813003901FF87FE6CEBFFFC013F13
F06D5BD901FEC7FC263D7DBB2D>48 D<143C147CEB01FC1307131FEA03FFB5FCA4EAFC1F
1200B3B3A8007FB6FCA5203C7ABB2D>I<EB0FFC90387FFF8048B512E04814F84880390F
F07FFE391F801FFF48486C1380387FC00701E014C0486C6C13E013F88016F0A4EA7FF0EA
3FE0EA1FC0EA0700C7FC16E05CA216C04A1380A24A13005D4A5A5D4A5A5D4A5A4A5A4990
C7FC5CEB03F8903907F001F0EB0FE014C090391F8003E0EB3F00137E5B491307485A48B6
FC4815C05AA25A5A5AB7FC1680A4243C7CBB2D>I<EB0FFC90383FFFC090B512F0488039
03F83FFC3907E00FFED80FC07F486C6C138013F801FC14C0123F13FEA5EA1FFC1680EA0F
F8D803E01400C75A5D5D4A5A5DEC7FE090381FFFC092C7FC15C015F09038003FF8EC0FFE
816E1380A216C06E13E0A316F0EA0FC0EA1FE0EA3FF0EA7FF8EAFFFCA416E0A2495A007F
15C013F0263FC00F13801600391FF83FFE6CB55A6C5C000114E06C6C1380D90FFCC7FC24
3D7CBB2D>I<000E1407D80F80133F9038F801FF90B6FC5D5DA25D5D5D158092C7FC14FC
14F00180C8FCA9EB87FE90389FFFC090B512F0819038FC0FFC9038F007FE9038C003FF01
80148016C0497EC714E0A416F0A21207EA1FC0EA3FE0EA7FF012FF13F8A316E013F0A26C
484813C01380D87E0014806C491300391FC00FFE390FF03FFC6CB55A6C5C6C14C06C91C7
FCEB1FF8243D7CBB2D>53 D<EC3FE0903801FFF801077F011F7F90383FF07F90397FC01F
809038FF807F48EB00FF484913C048485AA2EA0FFCA2121FA2003F6D1380496C1300157E
007F91C7FCA314309038F9FF80D8FFFB13E090B512F881EC07FE496C7E496C1380A216C0
A201F814E0A316F0A6127FA5123F16E0A2121F16C0EA0FFC168000075B01FE14003903FF
0FFE6CEBFFFC6C5C013F5B6D13C0D903FEC7FC243D7CBB2D>I<EB07FE90381FFFC0017F
13F090B57E3901FE0FFC3903F803FE48486C7E000F6D1380A2485AED7FC0123FA37FA27F
7F6DEBFF806D7E6E13006C13F1ECFBFE6CEBFFFC5D6C14E0A26C14F86C806C8081481580
5AD807FB14C0EA0FF048486C13E0003F131F497E007F010313F08000FF7F49137F153FA2
151FA416E06C7E153F6D14C0003F147F6D14803A1FF801FF00390FFE07FE6CB55A6C5CC6
5C013F13C0D907FEC7FC243D7CBB2D>56 D<EB07FE90383FFF8090B512E0488048EB0FF8
48486C7E48486C7E001F80497E003F1580A2127F16C0A212FF16E0A516F0A6127FA3003F
5BA2121FA26C6C5A6C6C5A6CB6FC7E38007FFDD91FF913E0EB00C11401A3D807E014C0EA
0FF0486C5AD83FFC1480A316004A5AA249485AD81FF05B9038E03FF0000F495A90B55A6C
5C6C91C7FCC613FCEB3FE0243D7CBB2D>I<ED07804B7E4B7EA34B7EA34B7EA34B7EA34A
7FA34A7FA24A8015CFA2020F801587A2021F801503A2023F80EC3E01A2027E80EC7C00A2
4A6D7EA20101814A133FA20103814A7FA249B77EA34982A29138800007011F8291C77EA2
496E7F133EA2496E7FA201FC8249157FB500F0013FB512FCA53E3F7DBE45>65
D<B712FEEEFFE017F817FE83C69026F0001F1380040713C07013E0A27013F0A28218F8A7
18F05EA218E05E18C04C1380041F1300EE7FFC91B612F017C017F817FE913AF00007FF80
7013C07013E07013F018F8177F18FCA318FEA3173F177FA418FCA217FF18F85E18F04C13
E0160FB912C018005F17F01780373E7CBD41>I<B712FCEEFFC017F017FC17FFC69026F0
003F7F04077F040113F082717E717E717E170F84831980A219C083A219E0A519F0A483A5
5FA419E0A519C0A25F1980A24D1300A24D5A4D5A177F4D5A4C5B04075B043F5BB9C7FC5F
17F817C004FCC8FC3C3E7CBD46>68 D<B812FEA483C69038F8003F16071601828383A2EF
1F80A3170FED01F0A3EF07C0A3150394C7FCA21507151F91B5FCA5ECF81F1507150318F8
A21501EF01F0A592C71203A218E0A21707A2170F171F18C0173F17FF1603161FB9FCA218
80A3353D7CBC3C>I<B612F8A5C6EBF800B3B3B0B612F8A51D3E7DBD24>73
D<B600F890B512F8A5C601F8C73803F8004D5A4D5A4D5A4D5A4DC7FC17FE4C5A4C5A4C5A
4C5A4C5A4C5A4CC8FC16FE4B5A4B5A4B5A4B5A151F4B7E4B7EA24B7E14F902FB7F91B6FC
15DF039F7F158F030F7F4A6C7F4A7E02F880816F7F83167F83707E82848284707F828482
84707F177F84B6D8F80FB512FCA53E3E7CBD47>75 D<B500FC93B512F86E5DA36E5DC6F1
F800A26FEC07BFA301FD6DEC0F3FA201FC6D141EA36E6C143CA36E6C1478A36E6C14F0A2
6E6CEB01E0A36E6CEB03C0A36E9038800780A36E9038C00F00A26EEBE01EA36F6C5AA36F
6C5AA36F6C5AA26FB45AA36F5BA36F5BA36F90C7FCA26F5AB500FC033FB512F8A2167CA2
16384D3E7CBD56>77 D<B712F816FF17E08317FCC6D9F0007FEE1FFF7013808218C08218
E0A318F0A818E0A318C05E18804C13005EEEFFFE91B612F85F17C04CC7FC02F8C9FCB3A4
B612F8A5343E7CBD3E>80 D<B600F890B512F8A5C601F8C8EAF800B3B3A5017F150160A2
80013F1503606D6C1407010F4B5A6E4A5A6D6D133F6D6D01FFC7FC6D9038F807FE6D6CB5
5A6E5C020F14E0020314809126003FFCC8FC3D3F7CBD46>85 D<B600F0010FB5FCA5C601
F8C8EA1F00A26E5D017F163EA26E157E013F167C6E15FC6D5EA26F13016D5EA26D6D495A
A26F13076D5EA26F130F6D5E816D4BC7FCA26F5B027F143EA26F137E023F147C6F13FC6E
5CA216816E5CA216C36E5C16E76E5CA216FF6E5CA36E91C8FCA26F5AA36F5AA36F5AA26F
5AA36F5AA2403F7EBD45>I<B600E0B6D8F007B51280A500019026F0000101F8C73807C0
0070160F6C6D6184177F6D6C4EC7FC84173F6D6C183E177F846E187E6D92B5147C856F17
FC6D4A5E05F77F03C016016D02035E05E313E003E016036D02075E05C113F003F016076D
61DC0F8013F803F8160F6D6193391F007FFC03FC161F027F95C8FC4C14FE043E013F5BDA
3FFE163E047E14FF047C6D137EDA1FFF167C04FC15FC4C7F6E5FA24C7F6E5FA24C7F6E5F
A24C7F6E5FA24C7F6E5FA293C8127FA26F93C9FC037E81033E153E593F7EBD5E>I<EB0F
FE90387FFFC048B512F04814FC3907FC0FFE48486C7E6D6C7F486C7E82A26E7FA36C5A6C
5AEA01E0C8FC5C49B5FC131F90B6FC000313F84813C0481300EA1FFC485A127F5B12FF5B
A45CA26C6C5A16F83B3FF807BFFF80391FFC1F3F390FFFFE1F6C497E0001EBF80326003F
E0C8FC292B7EA92C>97 D<13FFB5FCA512077EAF4AB4FC020F13E0023F13F891B57E9138
FE07FFDAF8011380DAE00013C05C4AEB7FE017F0A3EE3FF8A317FCAC17F8A3EE7FF0A217
E06E13FF17C06E481380DAF80313009138FE0FFE9039FC7FFFFC496C13F0496C13C0C7D8
03FEC7FC2E407FBE33>I<EB03FF011F13E0017F13F890B57E48EB83FE3903FE01FF0007
5B4848481380121F13F8123FA2127F496C13006E5AEC007800FF91C7FCAC127FA27F003F
EC07C0A26C6C130F16806C6C131F000715006C6C137F6CEBC1FE6CEBFFFC6D13F0011F5B
010390C7FC222B7DA928>I<16FF92B5FCA5150781AFEB01FF011F13E3017F13FB90B7FC
4813C148EB003F48487F48487F001F805B123FA2485AA312FFAC127FA36C7EA3001F5C6C
6C5B00074A13806D4913FC2603FF83B5FCC690B6FC6D13F7011F13C7903A03FE07FC002E
407DBE33>I<49B47E010F13F0013F7F90B512FE48EBC3FF48010013804848EB7FC04848
133F001F15E05B003FEC1FF0A2485A150F16F8A212FFA290B6FCA401F0C8FCA5127FA37F
003F15F8A26C6C1301000F15F06D13036C6CEB07E06C9038800FC06C9038F07F806C6CB5
12006D5B010F13F8010013C0252B7EA92A>I<EC1FF8ECFFFE01077F491480D91FF813C0
D93FE013E0EB7FC1EBFF81481301A348486C13C0ED7F80ED3F0092C7FCAAB6FCA5000390
C8FCB3ACB6FCA523407EBF1C>I<D907FE13FC90393FFFC3FE90B5EAF7FF4891B5128048
130F3907FC03FE3A0FF801FF7F001FEDFF00496C13BE1680003F81A7001F5DA26D5A000F
92C7FC6C6C485A3903FF0FFCECFFF8485CD80F3F13C0D907FEC8FC90CAFC5AA27FA213E0
90B512F015FF6C15C0826C816C8182120F4881393FE0003FD87F80EB07FF150148C7FC81
A56D5B007F5D6D13036C6C495AD81FF8EB1FF86CB4EBFFF06C90B55A000115806C6C49C7
FC010713E0293D7EA82D>I<13FFB5FCA512077EAFED7FE0913801FFF802077F4A7F9138
1FC3FFDA3E031380147CEC780102F014C014E0A214C0A31480B3A4B5D8FE1F13FFA5303F
7EBE33>I<EA01F8487E487E487E481380A66C13006C5A6C5A6C5AC8FCA913FFB5FCA512
077EB3ABB512F8A515407EBF19>I<EC1F80EC3FC0EC7FE0ECFFF04913F8A66D13F0EC7F
E0EC3FC0EC1F8091C7FCA9EC07F8EB0FFFA5EB003F141FB3B3A2EA1F80EA3FC0EA7FE0EA
FFF015F0143FA2EC7FE015C0397FE0FF80D83FC113006CB45A6C5B6C13F0C613801D5387
BF1C>I<13FFB5FCA512077EB092B512E0A592380FE0004B5A4B5A4BC7FC15FE4A5A4A5A
4A5A4A5A4A5A143FECFFE0A28181A2ECDFFCEC8FFE140F6E7E6E7FA26E7F6E7FA26F7E6F
7EA26F7E6F7EB539FC7FFFF8A52D3F7FBE30>I<13FFB5FCA512077EB3B3AFB512FCA516
3F7EBE19>I<01FFD97FE0EB3FF0B52601FFF8EBFFFC0207D9FC037F4A6D487F91281FC3
FF0FE17FDA3E03D99F017F0007017C14BE6CD97801EBBC0002F002F88002E05CA202C05C
A302805CB3A4B5D8FE1FD9FF0FEBFF80A549297EA84C>I<01FFEB7FE0B53801FFF80207
7F4A7F91381FC3FFDA3E0313800007137C6CEB780102F014C014E0A214C0A31480B3A4B5
D8FE1F13FFA530297EA833>I<49B47E010F13F0013F13FC90B6FC48018113803A03FE00
7FC04848EB3FE0000F15F049131F001F15F8A24848EB0FFCA2007F15FEA400FF15FFAB00
7F15FEA3003F15FC6D131F001F15F8A26C6CEB3FF0000715E06C6CEB7FC03A01FF81FF80
6C90B51200013F13FC010F13F001011380282B7EA92D>I<9038FF01FFB5000F13E0023F
13F891B57E9138FE0FFFDAF80313800003D9E00113C014C04A6C13E017F0167FA217F8A2
163F17FCACEE7FF8A317F016FF17E0804B13C06E481380DAF80713009138FE0FFE91B55A
02BF13F0029F13C0DA83FEC7FC0280C8FCACB512FEA52E3B7FA833>I<3901FE07F800FF
EB0FFE91383FFF804A13C0EC7C7F9138F8FFE03807FFF06C5B5CA2ED7FC09138803F80ED
1F0092C7FCA291C8FCB3A3B6FCA523297FA827>114 D<90387FE1E03803FFFB4813FF5A
381FE07F383F801F387F000F007E130712FE1403A27EA26DC7FC13F013FF6C13F014FC6C
13FF15806C14C07E6C14E0000114F06C7E010313F8EB003F140F0078130712F814037EA3
6C14F06C1307A29038800FE09038F03FC090B51280150000F813FC38E03FF01D2B7DA924
>I<131FA65BA55BA25BA25A5A5A001FEBFFC0B6FCA4000790C7FCB3EC03E0A97EEC87C0
A26CEBCF806C13FF6D1300EB1FFEEB07F81B3B7EB923>I<D9FF80EB7FC0B5EB7FFFA500
0714036C80B3A55DA35D7E4B13E0DAC01E13FF6CEBE07E6DB45A6D5B010F13E001010180
1300302A7EA833>I<B500E1B53887FFF8A50007903B801FF0003F006C6F133E150F02C0
157E6C4A6C137CA26C01E05D4B7EA2D97FF04A5AED7FFF157DD93FF84A5A03FD138303F8
1387D91FFCECC7C014FD9238F07FCFD90FFFECEF80A29238E03FFF6D93C7FCA24B7E6D5D
A2ED800F6D5DA2ED00076D5DA24A1303027E5C027C13013D287EA742>119
D<3B7FFFFC7FFFE0A5C69039E007E0004B5A90387FF01FD93FF85B4BC7FC90381FFC7EEB
0FFE5D6D6C5A7F5D6D5B7FA26E7E143F814A7E14FF81497FEB03F301078002E17FEB0FC0
49487F6F7E90383F003F017E806F7EB500E0B512F8A52D287FA730>I
E
%EndDVIPSBitmapFont
%DVIPSBitmapFont: Fi cmbx12 13.14 37
/Fi 37 122 df<923807FFE092B512FC020714FF021F81027F9038007FC0902601FFF0EB
0FE04901C0497E4990C7487ED90FFC147F011F824A14FF495AA2137F5CA2715A715A715A
EF078094C8FCA7EF07FCB9FCA526007FF0C7123F171FB3B3A2003FB5D8E00FB512F8A53D
4D7ECC44>12 D<EA07E0EA1FF8EA3FFCEA7FFEA2B5FCA6EA7FFEA2EA3FFCEA1FF8EA07E0
1010778F22>46 D<EC0FFC91B512C0010714F8498090393FFC0FFF90267FE0017F49486C
7F48496D7E4890C76C7E49141F000782000F8249140F001F82A3003F824980A2007F1780
A600FF17C0B3A4007F1780A6003F17006D5CA2001F5EA3000F5E6D141F00075E6D143F6C
5E6C6D495A6C6D495A90267FF0035B90263FFC0F90C7FC010FB512FC6D5C010014C0DA0F
FCC8FC32487BC63D>48 D<15F014011407141F147FEB03FF137FB6FCA313FC1380C7FCB3
B3B2007FB712E0A52B4777C63D>I<ECFFF80107EBFF80013F14F090B612FC4881480101
EBFF802707F8003F13C0D80FE0010F13E0D81F806D13F0003F80D87FF06D13F86D15FC6D
7F00FF16FE6D147FA217FF82A36C5A6C5A6C5A6C5AC95A17FEA3EEFFFCA24B13F817F05D
17E04B13C017804B13004B5A4B5A5EED7FE04B5A4A5B4A90C7FCEC07FC4A5A4A5A4B131F
EC3F804AC7FC14FE4948143E495AEB07E0495A4948147E49C8FC017E15FE90B7FC4816FC
5A5A5A5A5A5AB8FC17F8A430477AC63D>I<EC3FFE0103B512E0010F14FC013F14FF9026
7FE01F7F9026FF000713E0D801FC6D7FD803F07F486C6D7FD80FFE817F486D80167FA380
5C16FF7E91C75B6C5A6C5AD80020495B90C75C5D5F4B5B5F031F90C7FCED3FFC4AB45A49
B512E0168016E016FC90C7EA3FFF030713C06F7F6F7F6F7F83707E83A2701380A318C0EA
07E0EA1FF8487E487EA2B5FCA31880A25E491600127F494A5A6C485D01E05B001F4A5BD8
0FFC495B2707FFC03F13C06C90B65AC64BC7FC013F14F8010714E09026007FFEC8FC3248
7BC63D>I<EE07E0160FA2161F163F167F16FFA25D5D5DA25D5D5DA2157D15FDEC01F915
F1EC03E11407EC0FC1EC1F811501143F147E14FC14F8EB01F01303EB07E014C0EB0F8013
1FEB3F00133E5B13FC485A485A5B1207485A485A90C7FC123E127E5AB912FCA5C80003EB
E000AD023FB612FCA536487DC73D>I<D8038015E001E0140301FC143F9039FFE003FF91
B612C017801700A25E5E16F05E5E93C7FC15FC15F001E790C8FC01E0C9FCAAEC1FFC01E1
B512C001E714F001EF14FC9039FFE01FFFDA0007138001FC6D13C001F06D13E04915F049
7F17F8C913FC167F17FEA417FFA3EA0FC0EA3FF0487EA2487EA317FEA34914FF6C4815FC
5B018015F86CC74813F07F6C6C4913E0D80FF04913C0D807FC011F13806CB46CB512006C
90B512FC6C5D013F14C0010F91C7FC010113F030487AC63D>I<121F7F7F13FE90B812E0
A45A18C0188018005F5FA25F485E90C8EA07E0007E4B5A5F007C151F4CC7FC167E5E485D
15014B5A4B5AC8485A4B5AA24BC8FC157EA25D1401A24A5A1407A24A5AA2141FA24A5AA2
147FA314FFA3495BA45BA55BAA6D5BA26D90C9FCEB007C334B79C93D>55
D<93261FFF80EB01C00307B500F81303033F02FE13074AB7EAC00F0207EEE03F021F903A
FE007FF87F027F01E0903807FCFF91B5C70001B5FC010301FC6E7E4901F0151F4901C081
4949814990C97E494882494882485B48197F4A173F5A4A171F5A5C48190FA2485B1A07A2
5AA297C7FC91CDFCA2B5FCAD7EA280A2F207C07EA36C7FA26C190F6E18807E6E171F6C1A
006E5F6C193E6C6D177E6D6C5F6D6C4C5A6D6D15036D6D4B5A6D01F04B5A6D01FCED3FC0
010001FFEDFF806E01E0D903FEC7FC021F01FEEB3FFC020790B612F002015EDA003F92C8
FC030714FCDB001F13804A4D79CB59>67 D<B912F0F0FF8019F019FC19FFD8001F902680
000114C0DD001F7F060713F806017F726C7E737E737F737F737F8587737F8587A2747EA3
8786A21C80A51CC0A586A462A51C80A51C00A26263A2631AFF636163614F5B634F5B073F
90C7FC4F5A4F5A06035B061F5B4DB512C0BBC8FC19FC19F0198006F0C9FC524B7CCA5E>
I<BBFCA41A80D8001F01C0C7FC181F18038484197F193F191F1AC0190FA31907A4171FF1
03E0A496C7FCA25FA25F5F5E160792B6FCA5EDC0071601828383A283A794C9FCB1B8FCA5
434A7CC94D>70 D<B712FEA5D8000FEBE000B3B3B3ABB712FEA5274B7DCA2E>73
D<B8FCA5D8001F01C0C9FCB3B3A4193EA4197E197CA519FCA31801A2F003F8A21807180F
181F183F187FEF01FF1707173FBA12F0A53F4B7BCA4A>76 D<B600E04DB612806F5FA26F
5FA2D8001F09FCC7FC6FEF0F7FA2DABFFE171EA2DA9FFF173CA3028F6D1678A202876D16
F0A202836DED01E0A302816DED03C0A202806DED0780A26F6CED0F00A36F6C151EA26F6C
5DA26F6D5CA26F6D5CA36F6D495AA26F6D495AA26F6D495AA3706C49C7FCA2706C131EA2
706C5BA3706D5AA2706D5AA270EBE1E0A370EBF3C0A270EBFF80A27190C8FCA2715AA371
5AA2715A497EB600F06D480103B71280A3715A715A694B7BCA74>I<B912C018FCF0FF80
19F085D8001F902680000713FE05007F063F1380060F13C07213E01AF0841AF8A27213FC
A31AFEA81AFCA34E13F8A21AF0601AE04E13C0063F138095B51200050713FC92B75A19E0
96C7FC18F803C0CAFCB3ABB712FCA5474B7BCA54>80 D<B9FC18F8F0FF8019E019F8D800
0F9026C0000713FE9439007FFF80061F7F727F727F727F84868684A286A862A24E5BA262
4E5B4E5B4E5B4E5B95B5C8FC050713FC92B712F0198006FCC9FC18FF9226C0003F13C005
0713F0717F717F717F187F85727FA28486A786A71C3E86A28474137E72157C726D13FCB7
00FC6D9038FE01F872EBFF8373EBFFF0071F14E007031480CD383FFE00574C7CCA5C>82
D<DA7FFCEB01C00103B5EAC003011FECF00749ECFC0F90B7121F48D9E00F13BF4890C713
FFD807FC141F4848804848140382484880177F485A173F171F12FFA2170F7FA217077F7F
7F6D92C7FC6D7E6C13F014FF15F86CECFF8016F86C15FF6C16C0836C826C826C826C8201
3F816D1680010716C01300020F15E01400030714F0ED007F160F16037013F882177F1278
00F8163FA3171FA27E18F0A27EA26CEE3FE07F18C001E0157F6DEDFF8001FC160001FF14
0302E0EB0FFED97FFEEB3FFC486CB612F0D8FC0F5DD8F803158048C66C49C7FC48010313
F0354D79CB44>I<B700F8023FB512F8A5D8001F01C0C9380FE000745AB3B3AD6D180F63
811A1F6D96C7FC626D7F1A7E6D7F6D606E6C4B5A6E6CED07F06E6C4B5A6E01C0EC3FC06E
01F049B45A020101FF011F90C8FC6E91B55A033F15F8030715E0030092C9FC040713F055
4C7CCA5E>85 D<B700F00203B6FCA5D8001F01E0C93803FC00745A6D61811A036D6D5F1A
076D6D5F1A0F6D616F161FA26D6D94C7FC626E6D153E1A7E6E177C7015FC6E5F8219016E
6D5D19036E5F7014076E5F82190F6E6D5D191F6E6D92C8FC616F153E83197E6F6D137C19
FC6F6D5B18016F5DEFF003A26F01F85B18076F01FC5B180F6F5DEFFE1F6F92C9FC17FF60
7013BE18FE705BA2705BA3705BA2705BA2705BA3705BA27090CAFCA2177EA2584C7ECA5D
>I<ECFFFC010FEBFFC0017F14F090B612FC489038803FFE3B03FC0007FF80486C6D7F6D
7F486D6C7F83167F83A2707E6C90C7FC6C5A6C5AC9FCA5ED1FFF021FB5FC49B6FC130F01
3FEBC03F9038FFFE00000313F04813C04890C7FC485A485AA2485AA2485AA4167FA26D14
FF007F15EF6D01017F6C6C903907CFFF806C6CD90F8F13FE6C9038E07F076C9038FFFE03
00014A7ED8003F9038F0007F0103018090C7FC37347CB23C>97 D<EB7FC0B5FCA512037E
B3ED07FF037F13E002C1B512FC02C714FF9126CFF80F7F9126DFC0017F02FFC77F4AEC3F
F002F8814A6E7E717E4A81831980A37113C0A319E0AC19C0A35F1980A219005F606E141F
6E5D4D5A6E4A5A02BF4A5A91261FC0035B9027FE0FF01F5B496CB548C7FCD9F80114F849
6C6C13E0C8D80FFEC8FC3B4D7CCB44>I<91380FFF8091B512F8010314FF010F15804948
C613C0D97FF8EB1FE0D9FFE0EB3FF04849137F4849EBFFF84890C7FCA2485A121FA24848
EC7FF0EE3FE0EE1FC0007F92C7FC5BA212FFAC127FA27FA2123FA26C6C153EA26C6C157E
177C6C6D14FC6C6D14F86C6D13036C6DEB07F0D97FFCEB1FE06DB4EBFFC0010F90B51200
01035C010014F0020F13802F347CB237>I<EF1FF0EE3FFFA51600177FB3EC0FFF91B512
E0010314F8010F14FC013FEB01FF903A7FF8003FFFD9FFE0130F48497F48497F4890C77E
48815B121F5B123FA2127F5BA312FFAC127FA36C7EA3121F6D5C120F6C6C5C6C6D5B6C5D
6C01E0013F7F6D6C49EBFFE090393FFE03FE6DB512F801075C0100148091261FFC00EBC0
003B4D7CCB44>I<EC0FFF91B512F0010314FC010F14FF90263FFE077F90267FF0007F49
486D7E4801806D7E486F7E4890C7120F484881707E121F491403003F82A2127F5B701380
A212FFA390B8FCA401F8CAFCA5127FA27FA2123FA26C6CED0F80A26C6C151F6C17006E5C
6C6D147E6C6D5C6C6D495AD93FFCEB07F0903A1FFF803FE0010790B55A010192C7FC6D6C
13FC020713C031347DB238>I<DA7FFCEB0FE00103B538807FF8010F9138E1FFFC013F02
FB13FE903A7FF01FFFF39026FFC007138348D90001130348168348486DEBC1FCEFC0F800
0FEEE00049147F001F82A9000F5E6D14FF00075EA26C6C495B6C93C7FC6C9038C007FE91
38F01FFC4890B55A01EF14E0D803C314809026C07FFCC8FC000790CAFCA47FA27F13FC90
B612FCEEFFC06C16F817FE6C8218806C17C06D16E00003B812F0120FD81FFCC7000F13F8
D83FF0140049153F4848ED1FFC00FF160F491507A56D150F007F17F86D151F6C6CED3FF0
6C6CED7FE0D80FFE913801FFC06C6C6C010713806C01F8017F1300C690B612FC013F15F0
01071580D9003F01F0C7FC37497DB13D>103 D<13FCEA03FF487F487FA2487FA66C5BA2
6C5B6C90C7FCEA00FC90C8FCABEB7FC0B5FCA512037EB3B3A2B61280A5194D7BCC22>
105 D<EB7FC0B5FCA512037EB3B3B3AAB61280A5194C7BCB22>108
D<90287FC001FFC0EC7FF0B5010F01FC0103B5FC033F6D010F804B6D4980DBFE07902680
3F817F9126C1F801903AC07E007FF00003D9C3E0DAE0F8806C9026C78000D9F1E06D7E02
CFC7EBF3C002DEEDF780DD7FFF6E7E02FC93C7FC4A5DA24A5DA34A5DB3AAB6D8C03FB5D8
F00FB512FCA55E327BB167>I<903A7FC001FFC0B5010F13F8033F7F4B13FFDBFE077F91
38C1F00300039026C3E0017F6CD9C78080ECCF0014DE02DC6D7F14FC5CA25CA35CB3AAB6
D8C07FEBFFE0A53B327BB144>I<913807FF80027F13F80103B6FC010F15C090261FFE01
7F903A7FF0003FF849486D7E480180EB07FE4890C76C7E4817804980000F17C048486E13
E0A2003F17F0A249157F007F17F8A400FF17FCAB007F17F8A46C6CEDFFF0A2001F17E0A2
6C6C4A13C0A26C6C4A13806C6D4913006C5E6C01E0EB1FFC6D6C495A903A3FFE01FFF001
0FB612C0010392C7FCD9007F13F80207138036347DB23D>I<90397FC007FFB5017F13E0
02C1B512FC02C714FF9126CFF80F7F9126DFC0037F000301FFC77F6C496E7E02F8814A6E
7E717E4A81831980A28319C0A37113E0AC19C05FA319805F19005F606E143F6E5D4D5A6E
4A5A02FF495BDBC0075B9126EFF01F5B02E7B548C7FC02E114F8DAE07F13E0DB0FFEC8FC
92CAFCAFB612C0A53B477CB144>I<9039FF803FE0B5EBFFF8028113FE02837FDA87E113
80EC8F830003D99F0713C06C139E14BCA214F8A24A6C13806F13006F5A4A90C7FCA45CB3
A8B612E0A52A327CB132>114 D<903907FF8070017FEBF1F048B6FC1207380FFC01391F
E0003F4848130F491307127F90C71203A2481401A27FA27F01F090C7FC13FCEBFFC06C13
FEECFFE06C14FC6C806CECFF806C15C06C15E06C15F06C7E011F14F8010114FCEB000FEC
007FED1FFE0078140F00F8140715037E1501A27E16FC7E15036D14F86D13076D14F001F8
EB1FE001FFEBFFC04890B51280486C1400D8F81F13FCD8E00313C027347CB230>I<14F8
A51301A41303A21307A2130FA2131F133F137F13FF1203000F90B512F0B7FCA426007FF8
C7FCB3A7167CAA013F14F880A290391FFE01F0010F1303903907FF87E06DEBFFC06D1480
6D6C1300EC0FFC26467EC430>I<D97FE0EC3FF0B5EC7FFFA5000315016C81B3AC5EA25E
A25E7E6EEB0F7F017F021E7F6E017CEBFFE090393FFE01F86DB512F0010714E0010114C0
9027003FFE00EBC0003B337BB144>I<007FB500C090387FFFE0A5C601F0C73803F8006E
5D017F5E6E1407013F5E80170F011F5E6E141F6D93C7FC6F5B6D153E6F137E6D157C6F13
FCA26D6D5B16016D5DEDF803027F5CEDFC07023F5CEDFE0F021F5C15FF161F6E91C8FC16
BF6E13BE16FE6E5BA26E5BA36E5BA26F5AA26F5AA26F5AA393C9FC5D153E157E157CD81F
8013FC486C5B387FE001D8FFF05B14035D14074A5A49485A007F133F4948CAFC383F81FE
381FFFF86C5B6C13C0C648CBFC3B477EB041>121 D E
%EndDVIPSBitmapFont
%DVIPSBitmapFont: Fj cmr8 8 6
/Fj 6 100 df<B512C0A412047F9018>45 D<DA1FF013C09138FFFE01903903F00F8390
390F8001E3013FC71277017C143F4848141F4848140F48481407A248481403121F491401
123F90C8FC481500A300FE1600AB127F17C0A27E7F001F15016D1580120F6C6C1403EE07
006C6C14066C6C140ED8007C5C013F147890390F8001E0903903F00FC0902600FFFEC7FC
EC1FF02A2F7CAD33>67 D<B712FEA23903F800010001EC003E828282A282A31780160115
18A293C7FCA31538157815F890B5FCA2EBF800157815381518A21760A392C712C0A41601
17801603A21607160F163F0003913801FF00B8FCA22B2D7EAC30>69
D<B612C015FC3903F8007F0001EC0FC06F7E6F7E6F7E82150082A55E15015E4B5A4B5A4B
5A037FC7FC90B512FC15F09038F800FC153E6F7E150F826F7EA582A5170316F815031707
486C903801FC0EB539F000FE1CEE3FF8C9EA07E0302E7DAC34>82
D<007FB712F8A29039000FC003007C150000701638A200601618A200E0161CA248160CA5
C71500B3A94A7E011FB512E0A22E2D7EAC33>84 D<EB1FE0EB7FFC3801F01E3803E00739
07C01F80EA0F80EA1F005A003EEB0F00007E90C7FCA2127C12FCA9127EA215C07E6C1301
01801380380FC0033907E007003801F03E38007FF8EB1FC01A207E9E1F>99
D E
%EndDVIPSBitmapFont
%DVIPSBitmapFont: Fk cmsy9 9 2
/Fk 2 106 df<EB0180EB03C01307A21480130FA2EB1F00A2131E133EA25BA2137813F8
A2485AA25B1203A2485AA25B120FA248C7FCA2121E123EA25AA2127812F8A41278127CA2
7EA2121E121FA26C7EA212077FA26C7EA212017FA26C7EA21378137CA27FA2131E131FA2
EB0F80A2130714C0A21303EB0180124A79B71E>104 D<126012F07EA21278127CA27EA2
121E121FA26C7EA212077FA26C7EA212017FA26C7EA21378137CA27FA2131E131FA2EB0F
80A2130714C0A41480130FA2EB1F00A2131E133EA25BA2137813F8A2485AA25B1203A248
5AA25B120FA248C7FCA2121E123EA25AA2127812F8A25A1260124A7CB71E>I
E
%EndDVIPSBitmapFont
%DVIPSBitmapFont: Fl cmtt12 17.28 6
/Fl 6 118 df<ED7FF00203B5FC021F14E0027F14F849B67E4915FF010F824982498249
EBC01F9027FFFE00037F4801F801007F48496E7E02C0143F48496E7E4890C8120F491507
001F8349815B003F18804981A2127F4917C08312FF90B9FCA71980190001C0CBFC7F127F
A37F123F7FA26C6C163F6DEE7F806C6CEEFFC0A26C6D5C14E06C6D4A13806C01FC5C6C6D
021F130090267FFFC05B6D9039F801FFFE6D90B65A6D5E6D5E6D5E01005E023F92C7FC02
0F14FC020114E09126001FFEC8FC3A4179BF4A>101 D<EE1FFC263FFFF090B57E48D9F8
0714E0DAFC1F14F8B5498092B67E14FD6C90B8FC856CEDE01FD8000FDA00077F03FC7F4B
7F4B7F4B815D4B147FA292C8FCA25CA45CB3AC003FB690B612F848038115FCA2B700C315
FEA36C038115FCA26C030015F8473F7FBE4A>110 D<EF0FFE003FB591B512C048DA8003
14F0B6D8C00F14F8043F14FC93B6FC03C115FE15C36C14C76C02CFEBF80FC701DF13C092
B5380007FC04FCEB03F84CEB01F004E090C7FC5E5E93C9FC5DA25DA25DA25DA25DA45DB3
A6003FB712F84882B8FC83A35F7E6C5E3F3F7BBE4A>114 D<913A1FFF800F800103B5EA
F81F011F9138FF3FC0017F15FF48B8FC5A5A5A5A48EBE00049C7121FD87FF880491403D8
FFC080A25B82A37FEF7F806C7E01F892C7FC13FE383FFFC06C13FE6CEBFFF86CECFFE06C
15FC6CEDFF806C6C15F0011F81010315FED9007F8002011580DA000F14C0DB003F13E016
07040113F0D83F809138007FF8007F163F486CED1FFC170F7F1707A27FA26D150FA27F6D
ED1FF86D157F02C0ECFFF06E130302FC013F13E091B712C0A2188001BF1600019F15FC01
0F15F0010315C0267E007F49C7FC007C010713E0364176BF4A>I<EC0FC04A7E4A7EAF00
3FB812FC4883BAFCA56C5F6C5FC7D83FF0C9FCB3ABF00FC0F01FE0F03FF0A76F147FA2F0
FFE06E6C5B6F4913C06F5B6ED9E03F138093B61200806E5D6E15F86E5D6F5C6F1480030F
01FCC7FC030013C03C507DCE4A>I<263FFFF049B57E486D49806E82B55CA36C81A26C81
D8000F91C7127FB3B118FFA35F5F6E5C5F6E5C6D6D137FDBF003B612F86D90B812FCA26D
18FE7F6E4A7E6E02FC14FC6EECE03F0207DA801F13F89126007FF8C9FC473F7FBD4A>I
E
%EndDVIPSBitmapFont
%DVIPSBitmapFont: Fm lcircle10 10 4
/Fm 4 12 df<EA7FC0EAFFFEEBFFE06C13FCC66CB4FC010313C09038003FF0EC07FCEC01
FE9138007F80ED1FC0ED07F06F7EED00FC167E82707E707E707E707E1601707E83177C83
A2831880170FEF07C0A2170318E0A2170118F0A2170018F8A21878A4187CA2183CA71818
3636B28364>8 D<1818183CA7187CA21878A418F8A218F01701A218E01703A218C01707
A2EF0F80171F1800173EA25F17FC5F4C5A16034C5A4C5A4C5A4CC7FC167E5EED03F84B5A
ED1FC0ED7F80DA01FEC8FCEC07FCEC3FF0903803FFC0017F90C9FC387FFFFCB512E049CA
FCEA7FC03636B2B564>I<126012F0A77EA21278A3127CA2123C123EA2121E121FA27E7F
A26C7E7F12036C7EA26C7E7F137E133E7F806D7E6D7E6D7E6D7E6D7E147F6E7EEC0FC0EC
07F0EC03FCEC00FFED7FC0ED1FF8ED07FF030113FC9239007FFFF8040F13FC1601933800
07F8363680B564>I<EF07F8933801FFFC160F047F13F8923901FFFC00030790C7FCED1F
F8ED7FC04BC8FCEC03FCEC07F0EC0FC0EC3F804AC9FC14FC495A495A495A495A495A91CA
FC133E137E5B5B485AA2485A12075B485AA290CBFC5AA2121E123EA2123C127CA21278A3
12F8A25AA712603636808364>I E
%EndDVIPSBitmapFont
%DVIPSBitmapFont: Fn cmti10 10.95 37
/Fn 37 122 df<933807FF80043F13E09338FE00F8DB01F0133EDB07E0130E4B48131F4C
137F031F14FF4BC7FCA218FE157E1878180015FE5DA31401A25DA414030103B712F0A218
E0903A0003F000070207140F4B14C0A3171F020F15805DA2173F1800141F5D5F177EA214
3F92C712FE5FA34A1301027EECF81CA3160302FEECF03C4A1538A21878187013014A0101
13F018E0933800F1C0EF7F804948EC1F0094C7FCA35C1307A2001E5B127F130F00FF5BA2
49CAFC12FEEAF81EEA703CEA7878EA1FF0EA07C0385383BF33>12
D<EA01E0EA07F8120FA2EA1FFCA4EA0FF8EA0798EA001813381330A21370136013E013C0
1201EA0380EA07001206120E5A5A5A5A5A0E1C7A891C>44 D<120FEA3FC0127FA212FFA3
1380EA7F00123C0A0A77891C>46 D<131EEB3F80137FEBFFC05AA214806C13005B133C90
C7FCB3120FEA3FC0127FA212FFA35B6CC7FC123C122777A61C>58
D<9339FF8001C0030F13E0033F9038F803809239FF807E07913A03FC001F0FDA0FF0EB07
1FDA1FC0ECBF00DA7F806DB4FC4AC77E495AD903F86E5A495A130F4948157E4948157C49
5A13FF91C9FC4848167812035B1207491670120FA2485A95C7FC485AA3127F5BA312FF5B
A490CCFCA2170FA2170EA2171E171C173C173817786C16706D15F04C5A003F5E6D140300
1F4B5A6D4AC8FC000F151E6C6C5C6C6C14F86C6C495A6C6CEB07C090397FC03F8090261F
FFFEC9FC010713F0010013803A4272BF41>67 D<49B812F8A390260003FEC7121F18074B
14031801F000F014075DA3140F5D19E0A2141F4B1338A2EF7801023F027013C04B91C7FC
A217F0027F5CED80011603160F91B65AA3ED001F49EC07805CA3010392C8FC5CF003804C
13070107020E14005C93C75A180E010F161E4A151C183CA2011F5E5C60A2013F15014A4A
5A1707017F150F4D5A4A147F01FF913807FF80B9FCA295C7FC3D3E7BBD3E>69
D<49B6FC5BA2D9000313005D5DA314075DA3140F5DA3141F5DA3143F5DA3147F5DA314FF
92C7FCA35B5CA313035CA313075CA3130F5CA3131F5CA3133F5CA2137FA25C497EB67EA3
283E7BBD23>73 D<49B5933807FFFC496062D90003F0FC00505ADBBF805E1A771AEF1407
033F923801CFE0A2F1039F020FEE071F020E606F6C140E1A3F021E161C021C04385BA2F1
707F143C023804E090C7FCF001C0629126780FE0495A02705FF00700F00E0114F002E003
1C5BA2F03803010116704A6C6C5D18E019070103ED01C00280DA03805BA2943807000F13
070200020E5C5FDB03F8141F495D010E4B5CA24D133F131E011CDAF9C05CEEFB80197F01
3C6DB4C7FC013895C8FC5E01784A5C13F8486C4A5CD807FE4C7EB500F04948B512FE16E0
1500563E7BBD52>77 D<EEFFC0030713F892383F80FE9238FC003FDA03F0EB0F804A486D
7EDA1F80804AC76C7E027E6E7E4A81494814004948811307495A4948157F133F5C49C9FC
4917805B1201485AA212075B000F17FFA25B121F190048485DA448484B5AA34D5AA25B4D
5A12FF60171F60007F163F604D5AA24DC7FC5F003F15014C5A6D5D001F4B5A4C5A6C6C4A
5A4C5A6C6C4AC8FC000315FC6C6C495A6C6CEB07E0017FEB1F8090261FC07EC9FC903807
FFF801001380394273BF46>79 D<49B77E18F018FC903B0003FE0003FEEF00FF4BEC7F80
F03FC00207151F19E05DA2020F16F0A25DA2141FF03FE05DA2023F16C0187F4B1580A202
7FEDFF00604B495A4D5A02FF4A5A4D5A92C7EA3FC04CB4C7FC4990B512FC17E04ACAFCA2
1303A25CA21307A25CA2130FA25CA2131FA25CA2133FA25CA2137FA25C497EB67EA33C3E
7BBD3E>I<49B612FCEFFF8018F0903B0003FE000FF8EF03FE4BEB00FF8419800207ED3F
C05DA219E0140F5DA3021FED7FC05DA2F0FF80143F4B15004D5A60027F4A5A4B495A4D5A
EF3F8002FF02FEC7FC92380007F892B512E01780499038000FE04A6D7E707E707E010381
4A130083A213075CA25E130F5C5F1603131F5CA3013F020714404A16E05F017F160119C0
4A01031303496C1680B6D8800113079438FE0F009338007E1ECAEA3FFCEF07F03B407BBD
42>82 D<92390FF001C0ED7FFE4AB5EA0380913907F80FC791390FC003EF91391F8001FF
4AC71300027E805C495A4948143EA2495AA2010F153C5CA3011F1538A38094C7FC80A214
FC6DB4FC15F015FE6DEBFFC06D14F06D14FC6D80143F020F7F020180EC001F150303007F
167F163FA2161FA212075A5F120EA2001E153F94C7FCA2163E003E157E167C003F15FC4B
5A486C5C4B5A6D495AD87DE0EB1F80D8F8F849C8FC017F13FE39F03FFFF8D8E00F13E048
C690C9FC32427ABF33>I<48B9FCA25A903AFE001FF00101F89138E0007FD807E0163E49
013F141E5B48C75BA2001E147FA2001C4B131C123C003814FFA2007892C7FC12704A153C
00F01738485CC716001403A25DA21407A25DA2140FA25DA2141FA25DA2143FA25DA2147F
A25DA214FFA292C9FCA25BA25CA21303A25CEB0FFE003FB67E5AA2383D71BC41>I<277F
FFFE01B500FC90B512E0B5FCA20003902680000790C7380FFC006C90C701FCEC07F04972
5A04035EA26350C7FCA20407150EA2040F5D1A3C041F153862163B6216734F5A6D14E303
014B5A6C15C303034BC8FC1683DB0703140E191E030E151C61031C7F61ED380161157003
F04A5A15E002014B5A15C0DA03804AC9FC60DA0700140E60140E605C029C5D14B8D97FF8
5D5C715A5C4A5DA24A92CAFC5F91C7FC705A137E5F137C5F137801705D53406EBD5B>87
D<147E49B47E903907C1C38090391F80EFC090383F00FF017E137F4914804848133F485A
A248481400120F5B001F5C157E485AA215FE007F5C90C7FCA21401485C5AA21403EDF038
5AA21407EDE078020F1370127C021F13F0007E013F13E0003E137FECF3E1261F01E313C0
3A0F8781E3803A03FF00FF00D800FC133E252977A72E>97 D<EB1FC0EA0FFF5CA2EA003F
A291C7FCA25BA2137EA213FEA25BA21201A25BA21203A25B147E3907F1FF809038F783E0
9038EF01F013FE390FF800F8A24913FC49137C485A157E5B15FE123FA290C7FCA2481301
15FC127EA2140300FE14F85AA2EC07F0A215E048130F15C0141F15800078EB3F00127C14
7E003C5B383E01F8381E03E06C485A6CB4C7FCEA01F81F4076BE2A>I<EC1FE0ECFFF890
3803F03E903807C00F90381F8007D93F001380017E131F49137F485A485A000715005B00
0F147E484890C7FCA2485AA3127F90C9FCA35A5AA6481403007E5C5D151E003E5C5D6C5C
EC03E0390F800F802603E07EC7FC3801FFF838003FC0212977A72A>I<EE3F80ED1FFF17
00A2ED007FA2167EA216FEA25EA21501A25EA21503A25EA21507A25E147E903801FF8F90
3807C1CF90391F80EFC090383F00FF017E137F5B48486D5A485AA2485A000F92C7FC5B00
1F5CA24848137EA215FE127F90C75AA214015A485CA2140316384814F0A2140716789138
0FE070127C021F13F0007E013F5B003E137FECF3E1261F01E35B3A0F8781E3802703FF00
FFC7FCD800FC133E294077BE2E>I<EC3F80903801FFE0903807E0F890381F803CEB3E00
01FC131E485A485A12074848133E49133C121F4848137C15F8EC03F0397F000FE0ECFF80
B5EAFC0014C048C8FCA45AA61506150E151E007C143C15786C14F0EC01E06CEB07C0390F
801F003807C0FC3801FFF038007F801F2976A72A>I<167C4BB4FC923807C78092380F83
C0ED1F87161FED3F3FA2157EA21780EE0E004BC7FCA414015DA414035DA30103B512F8A3
90260007E0C7FCA3140F5DA5141F5DA4143F92C8FCA45C147EA414FE5CA413015CA4495A
A4495AA4495A121E127F5C12FF49C9FCA2EAFE1EEAF83C1270EA7878EA3FE0EA0F802A53
83BF1C>I<EC03F0EC0FFC91383E0E1C9138FC077E903901F003FE1303903807E001D90F
C013FCEB1F80A2EB3F004914F8137E01FE1303A2484814F0A2150712034914E0A2150F12
074914C0A2151FA216805B153F1203ED7F006D5BA200015B0000495A9038F80F7E90387C
1EFEEB1FF8903807E0FC90C7FC1401A25DA21403A25D001C1307007F5C48130F5D4A5A4A
C7FC48137E00F85B387C03F0381FFFC0D803FEC8FC273B7CA72A>I<EB01FC13FF5CA213
03A25CA21307A25CA2130FA25CA2131FA25CA2133FA291C8FCEC03F890387F0FFE91383E
0F80D97E7813C0ECE007D9FFC013E014801400A2485A5BA25B0003140F16C05BA2000714
1F16805BA2000F143F16005B5D001F147EEDFE074913FCA2003F0101130FEDF80E130016
1E48ECF01CA2007E1538A200FE1570020013E048EC7FC00038EC1F0028407ABE2E>I<14
78EB01FCA21303A314F8EB00E01400AD137C48B4FC38038F80EA0707000E13C0121E121C
EA3C0F1238A2EA781F00701380A2EAF03F140012005B137E13FE5BA212015BA212035B14
38120713E0000F1378EBC070A214F0EB80E0A2EB81C01383148038078700EA03FEEA00F8
163E79BC1C>I<EB01FC13FF5CA21303A25CA21307A25CA2130FA25CA2131FA25CA2133F
A291C8FCED03E049EB0FF8ED3C3C017EEB707CEDE1FC9038FE01C1EC03839038FC070314
0E0001011C13F891383800E0494813001460000313E0EBF9C0EBF78001FEC8FC1207EBFF
E0EBE7F8EBE0FE000F137F6E7EEBC01F6E7E121F16701380A2003F15F0021F13E0010013
80A248148116C0007EEB0F83168000FE14879138078F0048EB03FE0038EB00F826407ABE
2A>107 D<EB07F0EA03FF14E0A2EA000FA214C0A2131FA21480A2133FA21400A25BA213
7EA213FEA25BA21201A25BA21203A25BA21207A25BA2120FA25BA2121FA25BA2123FA290
C7FCA25A1307127EA2EAFE0F130E12FCA2131E131CA2EA7C381378EA3C70EA1FE0EA0780
144079BE17>I<D801F0D93F80137F3D07FC01FFE003FFC03D0F3E07C1F80F83F03D0E1F
0F00FC1E01F8001E011C90387C3800001C49D97E707F003C01F05C0038157F4A5C26783F
C05C12704A91C7FC91C7127E00F003FE1301494A5CEA007EA20301140301FE5F495CA203
031407000160495C180F03075D0003051F13E0494A1480A2030FEC3F810007F001C0495C
A2031F91383E0380120F494AEC0700A2033F150E001FEF1E1C4991C7EA0FF80007C7000E
EC03E0432979A74A>I<D801F0EB3F803A07FC01FFE03A0F3E07C1F83A0E1F0F00FC001E
011C137C001C49137E003C13F012385C38783FC012705C91C7FC00F015FE495CEA007EA2
150101FE5C5BA2150300015D5B15075E0003020F13704914C0A2031F13F00007ED80E05B
1681EE01C0120F49EC0380A2EE0700001FEC0F0E49EB07FC0007C7EA01F02C2979A733>
I<EC1FC0ECFFF8903803F07C90380FC01FEB1F8090393F000F80017E14C0491307484814
E0485A12075B000F15F0485AA2485AA2ED0FE0127F90C7FCA2151F4815C05AA2ED3F80A2
ED7F00A248147E007C5C007E13015D4A5A003E495A6C495A4A5A260F803EC7FC3807C0FC
3801FFF038003F80242977A72E>I<903903E001F890390FF807FE903A1E7C1E0F80903A
1C3E3C07C0013C137801389038E003E0EB783F017001C013F0ED80019038F07F0001E015
F8147E1603000113FEA2C75AA20101140717F05CA20103140F17E05CA20107EC1FC0A24A
1480163F010F15005E167E5E131F4B5A6E485A4B5A90393FB80F80DA9C1FC7FCEC0FFCEC
03E049C9FCA2137EA213FEA25BA21201A25BA21203A2387FFFE0B5FCA22D3A80A72E>I<
D801F013FC3A07FC07FF803A0F3E0F03C0260E1F1C13E0001EEB380F001C1370003CEBE0
1F123814C0D8783F14C00070903880070092C7FC91C8FC12F05BEA007EA313FE5BA31201
5BA312035BA312075BA3120F5BA3121F5B0007C9FC232979A726>114
D<EC7F80903801FFE0903807C0F890381F003C013E131C013C131E017C133E49137E15FE
A2000114FCA215706D13007FEBFFC014FC6C13FF15806D13C06D13E0010F13F01300140F
14071403120C123F387F80011403D8FF0013E0A300FCEB07C000F0EB0F8012700078EB1F
006C133C381F01F83807FFE0C690C7FC1F297AA725>I<EB01C0EB03F01307A25CA2130F
A25CA2131FA25CA2133FA291C7FCA2007FB51280B6FC1500D8007EC7FC13FEA25BA21201
A25BA21203A25BA21207A25BA2120FA25BA2121F141C1380A2003F133C1438EB00781470
14F05C495AEA1F03495A6C48C7FCEA07FCEA01F0193A78B81E>I<137C48B4141C26038F
80137EEA0707000E7F001E15FE121CD83C0F5C12381501EA781F007001805BA2D8F03F13
03140000005D5B017E1307A201FE5C5B150F1201495CA2151F0003EDC1C0491481A2153F
1683EE0380A2ED7F07000102FF13005C01F8EBDF0F00009038079F0E90397C0F0F1C9039
1FFC07F8903907F001F02A2979A731>I<017CEB01C048B4EB07F038038F80EA0707000E
01C013F8121E001C1403EA3C0F0038EC01F0A2D8781F130000705BA2EAF03F91C712E012
005B017E130116C013FE5B1503000115805BA2ED07001203495B150EA25DA25D15780001
14706D5B0000495A6D485AD97E0FC7FCEB1FFEEB03F0252979A72A>I<017C167048B491
387001FC3A038F8001F8EA0707000E01C015FE001E1403001CEDF000EA3C0F0038177C15
07D8781F4A133C00701380A2D8F03F130F020049133812005B017E011F14784C137013FE
5B033F14F0000192C712E05BA2170100034A14C049137E17031880A2EF070015FE170E00
010101141E01F86D131C0000D9039F5BD9FC076D5A903A3E0F07C1E0903A1FFC03FFC090
2703F0007FC7FC372979A73C>I<903903F001F890390FFC07FE90393C1E0E0F9026780F
1C138001F0EBB83FD801E013F89039C007F07FEA0380000714E0D9000F140048151C000E
4AC7FCA2001E131FA2C75BA2143F92C8FCA35C147EA314FE4A131CA30101143C001E1538
003F491378D87F811470018314F000FF5D9039077801C039FE0F7C033A7C0E3C07802778
3C1E1EC7FC391FF80FFC3907E003F029297CA72A>I<137C48B4143826038F8013FCEA07
07000E7F001E1401001C15F8EA3C0F12381503D8781F14F000701380A2D8F03F13070200
13E012005B017E130F16C013FE5B151F1201491480A2153F000315005BA25D157EA315FE
5D00011301EBF8030000130790387C1FF8EB3FF9EB07E1EB00035DA21407000E5CEA3F80
007F495AA24A5AD8FF0090C7FC143E007C137E00705B387801F0383803E0381E0FC06CB4
C8FCEA03F8263B79A72C>I E
%EndDVIPSBitmapFont
%DVIPSBitmapFont: Fo cmcsc10 10.95 19
/Fo 19 121 df<DB1FF8EB01804AB5EA8003020FECE007913A3FF803F80F9139FF80007C
4948C7EA1E1FD907FCEC0FBFD90FF0EC07FF49488049488049488049C9127F4848163F12
0349161F12074848160FA2485A1807123F5B1803127FA34993C7FC12FFAB0407B512FE12
7F7FDC000113C09438007F80123FA27F121FA26C7EA26C7E12037F6C7E7E6D6C15FF6D7E
6D6C5C6D7ED907FCEC03DFD901FFEC0F8F6D01C0EB3F07913A3FF801FC03020FB5EAF001
020102C0C7FC9126001FFCC8FC3F427ABF4D>71 D<B56C91387FFFFC8080D8007F030313
806E913800FE006E157C1838EB77FCEB73FE80137101707F6E7EA26E7E6E7EA26E7E6E7E
A26E7E6E7EA26E7F6F7EA26F7E6F7EA26F7E6F7E8215036F7E6F1380A2EE7FC0EE3FE0A2
EE1FF0EE0FF8A2EE07FCEE03FEA2EE01FF7013B8A2EF7FF8173FA2171F170F1707A21703
01F81501487ED807FF1500B500F81578A218383E3E7BBD4A>78 D<B600C090387FFFFCA3
000101E0C70003138026007F80913800FE00187C1838B3B3A4013F16786E1570A218F001
1F5E6E1401010F5E6D6C1403606D6C14076D6C4AC7FC6D6C141E027F147C91393FC001F8
91390FF00FE00203B55A020049C8FCED1FF03E407BBD4A>85 D<EC01E0A24A7EA34A7EA3
4A7EA24A7E141CA2EC3CFFEC387FA24A6C7EA34A6C7EA2010180ECC00FA249486C7EA349
486C7EA24980010E1301010FB5FC4980A2011CC7FC49147FA20178810170143FA201F081
49141F1201486C811207486CEC3FF8D8FFFE49B512C0A332317DB038>97
D<B612FEEDFFC016F03A03FC0007F86C48EB01FE1500167F1780163F17C0A61780167F17
0016FE4B5AED07F0ED7FE090B6128016F09039F80001FC6F7EEE7F80163FEE1FC017E016
0F17F0A617E0161FA2EE3FC0EE7F80923801FF00486CEB07FEB712F85E93C7FC2C2F7CAE
35>I<DA0FF81330DA7FFF13700103B5EAC0F090390FFC03F190391FE000F9D97F80133F
01FEC7121F4848140F48481407485A000F1503491401121F491400123F5B127F1770A248
C9FC1700AA6C6C1570A3123F6D15F0121F6D15E0000F15016D15C0000715036C6C15806C
6C14076C6CEC0F00D97F80133ED91FE05B90390FFC03F00103B55AD9007F1380DA0FF8C7
FC2C317BAF36>I<B612FEEDFFE016F83A03FE0007FC6C48EB00FFEE3F80707E707E707E
707E160183160083A2177FA41880AA1800A317FEA34C5A5F16034C5A5FEE1FC04C5A04FF
C7FC486CEB07FEB712F816E093C8FC312F7DAE39>I<B81280A3D803FEC7FC6C48EC1FC0
160F16071603A21601A317E0ED0E00A31700A2151E153E157E90B512FEA39038FC007E15
3E151E150EA21738A392C71270A417F0A2EE01E0A216031607161F486C14FFB812C0A32D
2F7DAE33>I<B8FCA33903FE00016C489038003F80161F160F1607A21603A317C0160115
0EA293C7FCA3151E153E157E90B512FEA39038FC007E153E151E150EA592C8FCAA487EB5
12FCA32A2F7DAE31>I<DA0FF81360DAFFFE13E00103EBFF8190390FF807E390393FC000
F34948137F01FEC7123F4848141F4848140F48481407120F491403485A003F1501A25B00
7F1500A348C9FC1700A8031FB5FCA26C7E9238001FF0EE0FE0123F7FA26C7E120F7F1207
6C7E6C7E6C6C141FD97F80133FD93FE0137B90390FFC03F10103B512E00100EC8060DA0F
FCC7FC30317BAF3A>I<B512F8A33803FE006C5AB3B3A3487EB512F8A3152F7DAE1B>105
D<D8FFFE923807FFF0A3D803FF92380FFC006C5FD9DF80141DA3D9CFC01439A2D9C7E014
71A3D9C3F014E1A2D9C1F8EB01C1A3D9C0FCEB0381A2027EEB0701A36E130EA291381F80
1CA391380FC038A2913807E070A3913803F0E0A3913801F9C0A2913800FF80A3486CEB7F
00487E486C013E497EB5008091B512F0A2151C3C2F7CAE44>109
D<D8FFFC91387FFFC07F7F0001923807FC006E6D5A6E6D5AD9DFE06D5AA2EBCFF0EBC7F8
EBC3FCA2EBC1FEEBC0FF6E7EA26E7E6E7EA26E7E6E7E6E7EA26E7E6E7EED7F80A2ED3FC0
ED1FE0ED0FF0A2ED07F8ED03FCA2ED01FEED00FF167FA2163F161F160F487E486C140748
6C1403B56C1301A21600322F7DAE38>I<EC1FF891B5FC903907F00FE090390FC003F001
3FC712FC017E147E49804848EC1F804848EC0FC04848EC07E0000F16F0491403001F16F8
491401003F16FCA2007F16FE90C9FCA34816FFAA6C6CEC01FEA3003F16FCA26D1403001F
16F86C6CEC07F0A26C6CEC0FE0000316C06C6CEC1F806C6CEC3F00017E147E6D5C90390F
C003F0903907F00FE00100B5C7FCEC1FF830317BAF3A>I<B612FEEDFFC016F03A03FE00
07FC6C48EB01FEED007FEE3F80A2EE1FC0A217E0A617C0A2EE3F80A2EE7F00ED01FCED07
F890B612E0168001FCC9FCB2487EB512F8A32B2F7DAE33>I<90383FC00C9038FFF81C00
03EBFE3C390FE03FFC381F8007EB0003003E1301481300157C5A153CA36C141CA27E6C14
006C7E13E013FE383FFFE06C13FE6CEBFF806C14E0000114F06C6C13F8010F13FC1300EC
07FE14011400157F153F12E0151FA37EA2151E6C143E6C143C6C147C6C14F89038C001F0
39FBF807E000F1B512C0D8E07F130038C007FC20317BAF2A>115
D<007FB712F8A39039801FF0073A7E000FE00000781678A20070163800F0163CA348161C
A5C71500B3A8EC3FF8011FB512F0A32E2E7CAD36>I<B500F890387FFFC0A3D803FEC738
07FC006C486E5A705A705AB3AB000015016D5D1603017E5D017F14076D6C49C7FC131F6D
6C133ED907F05B903903FC03F00100B55A023F1380DA07FCC8FC32307DAE38>I<3B7FFF
F001FFFEA30003D9C00013E0C649EB7F80017F027EC7FC167C6D6C13786D6C5B6D6C5B15
016D6C485AD903FC5B15076D6C48C8FC903800FF1EEC7F9C15BCEC3FF86E5AA2140F6E7E
14034A7E4A7EEC1EFF141C91383C7F804A6C7E14709138F01FE049486C7E49486C7E1480
01076D7E49486C7E130E011E6D7E496E7E017C6E7E13FC000382D80FFEEC7FF8B549B512
C0A3322F7DAE38>120 D E
%EndDVIPSBitmapFont
%DVIPSBitmapFont: Fp cmr7 7 3
/Fp 3 52 df<13381378EA01F8121F12FE12E01200B3AB487EB512F8A215267BA521>49
D<13FF000313E0380E03F0381800F848137C48137E00787F12FC6CEB1F80A4127CC7FC15
005C143E147E147C5C495A495A5C495A010EC7FC5B5B903870018013E0EA018039030003
0012065A001FB5FC5A485BB5FCA219267DA521>I<13FF000313E0380F01F8381C007C00
30137E003C133E007E133FA4123CC7123E147E147C5C495AEB07E03801FF8091C7FC3800
01E06D7E147C80143F801580A21238127C12FEA21500485B0078133E00705B6C5B381F01
F03807FFC0C690C7FC19277DA521>I E
%EndDVIPSBitmapFont
%DVIPSBitmapFont: Fq cmsl10 10.95 42
/Fq 42 122 df<EEFF80030F13F092383FC0789238FE001CDA03F8130E4A48133FDA1FE0
13FF4A5A4B5AEC7F005C5CEE00FE010115784A1400A513035CA4EE01FC0007B7FC17F8A2
3A0007F0000F1607A2130F4A14F0A4160F131F4A14E0A4161F133F4A14C0A4163F137F91
C71380A4167F5B491500A31201486C903801FF80B5D8F83F13FC5DA230407EBF33>12
D<007FB5FCA2B512FEA418067C961E>45 D<13F0EA01FC1203EA07FEA313FCA2EA03F8EA
01E0C7FCB3121EEA3F80EA7FC012FFA41380EA7F00123C0F2778A619>58
D<17E016011603831607A2160FA2161F83163FA2167F167716F7EEE7FCED01E316C31503
16831507EE03FEED0F01150E151E151C153C03387FED7800157015F05D4A4880177F4A5A
A24AC7FCA2020E81173F5C021FB6FC5CA20270C7EA3FE0171F5CA2495AA2494881170F49
C8FCA2130EA24982013C1507A2137CD801FE4B7E2607FF80EC3FFEB500F00107B512FC19
F85E3E417DC044>65 D<013FB7FC18E018FC903B007FE00007FE6E48903801FF80943800
7FC05DF03FE0F01FF0A3027F16F892C8FCA54A16F04A153F19E0187F19C0F0FF8001014B
13004A4A5A4D5AEF1FF04D5ADC03FFC7FC49B612F8EFFF8002F8C7EA3FE0EF0FF0EF07FC
717E010715014A81711380A319C0130F5CA5011F4B13805C19005F601707013F4B5A4A4A
5A4D5A4D5A017F913801FF8001FF020F90C7FCB812FC17F094C8FC3D3E7DBD40>I<DCFF
C01338030F01F01378037F01FC13F0913A01FF803F01913A07FC000781DA1FE0EB03C3DA
7FC0EB01E74AC812FF4948ED7FE0D907FC153F495A4948151F495A4948150F494816C018
074890C9FC485AA2485A000F1880491603121FA248481607A295C7FC485AA412FF5BA75B
A2181C183C1838A27F007F1778187018F0003F5F6D150160001F16036C6C4B5A95C7FC6C
6C5D6C6C151E6C6C5D6C6C15F86D6C495A6D6CEB07C0D91FF0EB1F80D907FE01FEC8FC01
01B512F86D6C13E0DA07FEC9FC3D4276BF42>I<013FB7FC18E018F8903B007FF0000FFE
6E48EB01FF9438007FC04B6E7E180F85727E727E147F4B6E7EA2727EA302FF178092C9FC
A54918C05CA41A8013034A5DA41A0013074A5DA261A24E5A130F4A5E180F61181F61011F
4C5A5C4E5A4EC7FC4D5A4D5A013F4B5A4A4A5AEF3FE0EF7F80017F4A48C8FC01FFEC1FFC
B812F0178004FCC9FC423E7DBD45>I<013FB812F8A39026007FF0C7127F6E48140F1803
4B14011800A31978147F4B1570A502FF143892C7FCA3190017784915704A14F016011603
160F91B6FC495DA29138FC001F16071603160101075D5CA2197019F019E0010F4A5A4A90
C7120119C0A218031980011F16075CF00F00A260181E013F163E4A157E4D5A1703017F15
0F01FFEDFFF8B9FCA2603D3E7DBD3E>I<013FB812E0A3903A007FF000016E48EB003F18
0F4B14071803A31801147F4B15C0A514FF92C71270A395C7FC17F0495D5C160116031607
161F49B65AA39138FC003F160F160701075D4A1303A5010F4AC8FC5C93C9FCA4131F5CA5
133F5CA3137FEBFFF0B612F8A33B3E7DBD3B>I<4BB46C1370031F01F013F0037F9038FC
01E0913A03FF807E03913A0FF8000F83DA1FE0EB07C7DA7F80EB01EF4AC812FFD903FE16
C04948157F4948153F495A4948151F495A4948168091C9120F5A485AA2485A000F180049
82121FA248485EA295C7FC485AA412FF5BA6043FB512E05BA29339001FFC00715AA2607F
127FA2171F123F6D5EA2121F7F000F163F6C7E6C6C4B5A7F6C6C15FF6C6DEB01EFD93FC0
EB07C7D91FF0EB1F87D907FE9038FE03800101B5EAF8016D6C01E0C8FCDA07FEC9FC3C42
76BF47>I<011FB512FC5BA29039003FF8006E5AA25DA5143F5DA5147F5DA514FF92C7FC
A55B5CA513035CA513075CA5130F5CA5131F5CA3133F497E007FB512F0A2B6FC263E7EBD
21>73 D<013FB512FEA25E9026007FF8C8FCEC3FE0A25DA5147F5DA514FF92C9FCA55B5C
A513035CA513075CA21838A21870130F5CA218E0A3011F15014A15C01703A21707EF0F80
013F151F4A143F177FEFFF00017F140301FF143FB9FC5FA2353E7DBD39>76
D<90263FFFE0023FB5FC6F16FEA29026003FF8020313C0021F030013004A6C157C023B16
3C6F15381439810238167802787FDA707F157082153F82031F15F002F07FDAE00F5D8215
078203031401010180DAC0015D82811780047F1303010315C04A013F5C17E0161F17F004
0F1307010715F891C7000791C7FC17FC160317FE04015B4915FF010E6E130E188E177F18
CEEF3FDE011E16FE011C6F5AA2170FA21707133C01386F5A133C017C150113FE2607FF80
1400B512FC18705C483E7DBD44>78 D<923803FF80031F13F09238FE01FE913903F0003F
DA0FC0EB1FC0DA3F80EB07E0027EC76C7E49486E7E49488149486E7E4948157F495A013F
17804948ED3FC049C9FCA24848EE1FE012035B000718F05B120FA2485A19F8123F5BA212
7FA219F04848163FA5F07FE0A35BF0FFC0A219805F19007F4D5A127F4D5A60003F160F6D
5E001F4C5A4D5A6C6C4B5A95C7FC6C6C15FE00034B5A6C6C4A5A6C6C4A5A017FEC1FC06D
6C495AD90FE001FEC8FC903903F807F80100B512C0DA0FFCC9FC3D4276BF47>I<013FB6
12F017FF18E0903B007FF0003FF86E48EB07FCEF01FE4B6D7EF07F8019C0183F19E0147F
4B15F0A502FFED7FE092C8FCA219C0F0FF80A2494B13004A5D4D5AEF0FF04D5AEF7F8001
03DA07FEC7FC91B612F017809139FC0007E0EE03F8EE00FC0107814A147F717EA284A213
0F5CA484011F157F5CA41902013F17075CA2F0F00F017F170E496C143FB600E0011F131C
94380FF83C4B01071378CA3801FFE09438003F8040407DBD43>82
D<9239FF8003800207EBF007021F9038FC0F0091387F00FE02FCEB1F1FD903F0EB07BF49
486DB4FC49487F4A6D5A49C8FC49157E133E137E173E49153CA57F1738A26D92C7FC8080
80EB7FFEECFFE06D13FEEDFFC06D14F06D14FC010380010080143F020380DA003F7F1503
1500707E163F161FA2160F121CA31607160F003C5EA35F003E151F94C7FC007E5D007F15
3E6D5C16FC01E0495AD87DF0495AD8FCFCEB0FC03AF87F803F8027F01FFFFEC8FCD8E007
13F839C0007FC031427BBF33>I<0007B912F0A33C0FFE000FF8003F01F0160F01C04A13
034848160190C7FC121EF000E048141F5E1238A212781270153F5E5AA3C81600157F5EA5
15FF93C9FCA55C5DA514035DA514075DA5140F5DA3141FEC7FFC0003B7FCA33C3D76BC42
>I<B600E090B512FC4B15F8A2000101C0C7000F13006C49EC03FCEF01F091C9FC60A317
015A495EA417031203495EA4170712074993C7FCA45F120F49150EA4171E121F49151CA4
173C123F491538A31778177017F05F001F15015F16036D4A5A000F93C8FC5E6C6C141E6C
6C5C000115F86C6C495A017FEB07C090393FC03F8090260FFFFEC9FC010313F89038007F
C03E4073BD44>I<B6017FB5D88007B512804A1A00A2000701C0010101E0C713F06C90C8
0180EC3FC06C48735A99C7FC057F150E1B1E6D191C6C1A3C1B3805FF15787214705E636E
EB03BF017F4E5AEE073F505A040E7F051F4AC8FC161C6E170E013F143862167804706D5B
EEF00F04E05D90381FE00104C015F003035E0480140106F85B9226070007130302F05F01
0F010E150797C9FC5D190E4BEB03FC616E5A01075F5D61DAF9C014FE05015BECFB8002FF
6F5A7F92C75CA24A93CAFC835C606D5A605C604A15781870594074BD5D>87
D<EC7FC0903803FFF890380FC07E90383E003F496D7E01FF6D7E82A248140782A26C5A13
7890C7120FA25EA2EC03FF147F903807FF1FEB1FE0D97F805B3801FE00EA03F8485A4848
133F485A003F5D49EC81C048C7FCA2157F48ED03804814FFA2007F5B913903BF07009038
80073F3A3FC00E1F8E260FE03C13FC3A03FFF00FF83A007FC003E02A2A7CA82D>97
D<EB3F80EA1FFFA3C6FC137FA291C9FCA55B5BA512015BA4EC07F80003EB3FFF9039F8F8
0FC09039FBE003E09039FF8001F891C77E5B4848147E49147F5B821780A2120F5B17C0A3
167F001F16805BA4EEFF00123F5B4B5AA24B5A5E007F4A5AA24B5A6D495A4BC7FCD87CE0
137E39F87001F839F03C07E039E00FFF80260003FCC8FC2A4077BE33>I<EC1FF0ECFFFE
903903F01F8090390FC003C0D93F0013E0017E130F49131F000115F04848EB3FE0485AA2
4848EB1FC0001FEC0F004990C7FC123FA2485AA412FF90C9FCA96CEC0380150716006C6C
5B151E001F5C6C6C5B6C6C5B6C6C485A3901F80F8026007FFEC7FCEB0FF0242A7AA828>
I<EE03F8ED01FFA3ED000F1607A217F0A4160FA217E0A4161FA217C0A491380FF03FECFF
FC902603F81F138090390FC007BF90391F8003FF90387E0001497F0001157F4848150048
5A120F5B001F5D485A5E5B127FA2150112FF90C75BA41503A25EA37E1507A26C4A5A7F00
1F141F6C6C133F6C6CEBFFF83B03F001EFFFC03900F80F8F90383FFE0FD90FF0EBE0002D
407ABE33>I<EC3FE0903801FFF8903807E07E90380F801F90393F000F80017E14C049EB
07E0485A12034848EB03F0485AA2121F5B123FA248481307A290B6FCA2D8FF80C8FC90C9
FCA87EED01C015036C15806D1307001FEC0F006D131E000F5C6C6C5B6C6C485A3900FC07
C0D93FFFC7FCEB07F8242A7BA828>I<ED07F0ED3FFCEDFC1E913803F03F4A48B4FC4A48
1380141FEC3F81DA7F0113008102FE137C93C7FCA213015CA513035CA50007B512F8A326
0007F0C8FCA3130F5CA5131F5CA5133F5CA5137F91C9FCA55B5BA4EA03FF007F13FEB5FC
A229407DBF1C>I<177C913907F803FE91393FFE0F8F9139FC0F9C3F903901F007F89039
07E003E0D90FC013F0011F903801F80C02801400133FD97F007FA315035B495CA3017E49
5A5E150F6D5C6D495A90263F803EC7FCECC0FC903871FFF09038E07F8091C9FC485AA47F
A27F90B512F8EDFF806C15E016F86D8048B6FC3A07E0000FFED80F801300003FC8127F00
3E815A00FC815AA25E163EA25E6C15FC007C4A5A6C4A5A6CEC0FC0D80FC0013FC7FC3903
F801FCC6B512F0010F90C8FC303D7FA82D>I<147FEB3FFFA313017FA25CA513015CA513
035CA4ED07F80107EB1FFF9139F0781FC09138F1E00F9139F38007E0ECF70002FE14F049
5A5CA25CA24A130F131F4A14E0A4161F133F4A14C0A4163F137F91C71380A4167F5B4915
00A300015D486C491380B5D8F87F13FCA32E3F7DBE33>I<1478EB01FE130314FFA25B14
FE130314FCEB00F01400ACEB03F8EA01FF14F0A2EA001F130FA314E0A5131F14C0A5133F
1480A5137F1400A55B5BA4EA03FF007F13F0A2B5FC183E7DBD1A>I<147FEB3FFFA31301
7FA25CA513015CA513035CA501070103B5FC02F014FEA26F13F06F1380EEFE00010F14F8
4A485AED03C04B5A031FC7FC153E011F13784A5AECC3E0ECC7F0ECCFF814FF497F14F9EC
E1FE14C04A7E4A7E4980017E133F82151F82150F01FE8049130782A2000181486C49B4FC
B5D8F03F13F04B13E0A2303F7EBE30>107 D<143FEB1FFF5BA213017FA214FEA5130114
FCA5130314F8A5130714F0A5130F14E0A5131F14C0A5133F1480A5137F1400A55B5BA4EA
03FF007F13F8A2B5FC183F7DBE1A>I<902707F007F8EB03FCD803FFD91FFF90380FFF80
913CE0781FC03C0FE09126E1E00FEBF0073E001FE38007E1C003F090260FE700EBE38002
EEDAF70013F802FC14FE02D85C14F84A5CA24A5C011F020F14074A4A14F0A5013F021F14
0F4A4A14E0A5017F023F141F91C74914C0A549027F143F4992C71380A300014B147F486C
496DEBFFC0B5D8F87FD9FC3F13FEA347287DA74C>I<903907F007F8D803FFEB1FFF9139
E0781FC09138E1E00F3B001FE38007E090380FE70002EE14F014FC14D814F85CA24A130F
131F4A14E0A4161F133F4A14C0A4163F137F91C71380A4167F5B491500A300015D486C49
1380B5D8F87F13FCA32E287DA733>I<EC0FF0ECFFFE903903F01F8090390FC007C049C6
6C7E013E6D7E01FC6D7E48488049147C0003157E485A000F157F5B121FA2485AA2007F16
80A2170048C85AA54B5AA25E5A6C4A5A7E4B5A5E6C140F6C6C5C4B5A6C6C013EC7FC6C6C
5B6C6C485A3900FC0FE090383FFF80D90FF8C8FC292A7BA82D>I<91387F01FE903A7FFF
0FFFC09139FE3E03F09238F801F8903A01FFE000FE4B137F6D497F4990C713804A15C04A
141FA218E0A20103150F5C18F0A3171F010716E05CA3173F18C0130F4A147F1880A2EFFF
004C5A011F5D16034C5A6E495AEE1FC06E495AD93FDC017EC7FC91388F01F8913883FFE0
028090C8FC92C9FC137FA291CAFCA45BA25BA31201487EB512F8A3343A81A733>I<9039
07F01F80D803FFEB7FE09138E1E1F09138E387F839001FE707EB0FE614EE02FC13F002D8
13E09138F801804AC7FCA25C131FA25CA4133F5CA5137F91C8FCA55B5BA31201487EB512
FEA325287EA724>114 D<9138FF81C0010713E390381F807F90397C003F8049131F4848
130F5B00031407A248481400A27FA27F6D90C7FCEBFF8014FC6C13FF6C14C015F06C6C7F
011F7F13079038007FFE1403140100381300157EA2123C153E157E007C147CA2007E1478
15F8007F495A4A5A486C485A26F9E01FC7FC38E0FFFC38C01FE0222A7DA824>I<EB0380
A4130791C7FCA25BA25BA2133EA2137E13FE12011207001FB512C0B6FCA2D801FCC7FCA3
12035BA512075BA5120F5BA41407001F130E13C0A4141E141C1380A26D5AA2000F5B14F0
3807E1E03801FF80D8007EC7FC1A3978B723>I<01FE147F00FFEC7FFF4914FEA2000714
0300031401A34914FCA4150312074914F8A41507120F4914F0A4150F121F4914E0A2151F
A3153F4914C0157F15FFEC01DF3A0FC003BFE09138073FFF3803F01E3801FFF826003FE0
1380282977A733>I<B539E007FFF05D17E02707FE000313006C48EB01FC6F5A5E00014A
5A5EA24B5A6D1307000092C7FC5D150E6D5B7F5DA25D1480013F5B14815D14C3011F5B02
C7C8FCA214CE14EEEB0FFCA25CA26D5A5CA25CA26D5A2C2878A630>I<B500C3B53803FF
FCA204FE14F8290FFE003FE00013C0D807F86D48EB7F000003173E183C150F18386D5E00
01141F705B153F4D5A15776D4B5A0000ECE7F04DC7FCEC01C3170E9038FF0383017F5D91
380703F85FEC0E01021E5CD93F9C14F002BC6D5A02B813FDDAF8005B4A13FF5F6D5A94C8
FC5C4A137E167C6DC7FC1678010E14383E2878A642>I<48B539C07FFFC0A33C000FFE00
3FF8006D48EB1FE0010315800101023EC7FC6E133C01005C027F5B6F5A91383F81C0EDC3
80DA1FC7C8FC15EFEC0FFE6E5A5D140381A24A7E140FEC1E7F023C7FEC383F02707FECE0
1F010180903803C00F49486C7ED90F007F491303017E80D801FE80D807FF497EB5D8803F
13F8A332277FA630>I<90B539E007FFF05E18E0902707FE000313006D48EB01FC705A5F
01014A5A5F16036E5C0100140794C7FC160E805E805E1678ED8070023F13F05EED81C015
C191381FC38015C793C8FC15EF15EEEC0FFCA25DA26E5AA25DA26E5A5DA24AC9FC5C140E
141E141C5C121C003F5B5A485B495A130300FE5B4848CAFCEA701EEA783CEA3FF0EA0FC0
343A80A630>I E
%EndDVIPSBitmapFont
%DVIPSBitmapFont: Fr cmtt10 10.95 88
/Fr 88 127 df<121C127FEAFF80B3EA7F00B2123EC7FCA8121C127FA2EAFF80A3EA7F00
A2121C09396DB830>33 D<00101304007C131F00FEEB3F80A26C137FA248133FB2007E14
00007C7F003C131E00101304191C75B830>I<903907C007C0A2496C487EA8011F131FA2
02C05BA3007FB7FCA2B81280A36C16006C5D3A007F807F80A2020090C7FCA9495BA2003F
90B512FE4881B81280A36C1600A22701FC01FCC7FCA300031303A201F85BA76C486C5AA2
29387DB730>I<1438147C14FCA4EB03FF011F13E090B512FC4880000780481580261FFE
FD13C09039F0FC3FE0D83FC0131FD87F80EB0FF001001307007E15F800FE14035A1507A3
6CEC03F0A2007F91C7FC138013C0EA3FF0EA1FFE13FF6C13FF6C14E0000114F86C6C7F01
1F7F01037F0100148002FD13C09138FC7FE0151FED0FF015070018EC03F8127E1501B4FC
A35AA26CEC03F07E01801307ED0FE0D83FC0131F01F0EB7FC0D81FFEB512806CB612006C
5C6C5CC614F0013F13C0D907FEC7FCEB00FCA5147C143825477BBE30>I<EA07C0EA0FF0
EA1FF8A213FCA213FE120F1207EA007EA513FE13FCA2120113F81203EA07F0120FEA1FE0
127FEAFFC013801300127C12380F1D70B730>39 D<141E147F14FF5BEB03FEEB07FCEB0F
F0EB1FE0EB3FC0EB7F80EBFF00485A5B12035B485A120F5BA2485AA2123F5BA2127F90C7
FCA412FEAD127FA47F123FA27F121FA26C7EA27F12076C7E7F12017F6C7EEB7F80EB3FC0
EB1FE0EB0FF0EB07FCEB03FEEB01FF7F147F141E184771BE30>I<127812FE7E7F6C7E6C
7EEA0FF06C7E6C7E6C7E6C7EEB7F80133F14C0131FEB0FE014F01307A2EB03F8A214FC13
01A214FE1300A4147FAD14FEA4130114FCA2130314F8A2EB07F0A2130F14E0EB1FC0133F
1480137FEBFF00485A485A485A485AEA3FE0485A485A90C7FC5A1278184778BE30>I<14
E0497E497EA60038EC0380007EEC0FC0D8FF83EB3FE001C3137F9038F3F9FF267FFBFB13
C06CB61280000FECFE00000314F86C5C6C6C13C0011F90C7FC017F13C048B512F0488000
0F14FE003FECFF80267FFBFB13C026FFF3F913E09038C3F87F0183133FD87E03EB0FC000
38EC0380000091C7FCA66D5A6D5A23277AAE30>I<143EA2147FAF007FB7FCA2B81280A3
6C1600A2C76CC8FCAF143EA229297DAF30>I<EA03E0EA0FF0EA1FF813FCEA3FFEA213FF
A27EA27E1203EA007FA2137E13FEEA01FC1203EA07F8EA3FF0127FEAFFE0EA7F80130012
3C1019708B30>I<007FB612F0A2B712F8A36C15F0A225077B9E30>I<120FEA3FC0EA7FE0
A2EAFFF0A4EA7FE0A2EA3FC0EA0F000C0C6E8B30>I<16F01501ED03F8A21507A2ED0FF0
A2ED1FE0A2ED3FC0A2ED7F80A2EDFF00A24A5AA25D1403A24A5AA24A5AA24A5AA24A5AA2
4A5AA24AC7FCA2495AA25C1303A2495AA2495AA2495AA2495AA2495AA249C8FCA2485AA2
5B1203A2485AA2485AA2485AA2485AA2485AA248C9FCA25AA2127CA225477BBE30>I<14
FE903807FFC0497F013F13F8497F90B57E48EB83FF4848C6138049137F4848EB3FC04848
EB1FE049130F001F15F0491307A24848EB03F8A290C712014815FCA400FEEC00FEAD6C14
016C15FCA36D1303003F15F8A26D1307001F15F0A26D130F6C6CEB1FE0A26C6CEB3FC06C
6CEB7F806D13FF2601FF8313006CEBFFFE6D5B6D5B010F13E06D5BD900FEC7FC273A7CB8
30>I<EB03C0497EA2130FA2131FA2133F137F13FF1203123FB5FCA213EF138FEA7E0F12
00B3B0003FB512F84814FCB612FEA26C14FC6C14F81F3977B830>I<EB07FC90383FFFC0
90B512F00003804814FE4880261FF80F1380263FE00113C09038C0007F4848EB3FE090C7
121FED0FF04814075A6C15F81503A3127E1218C8FCA2150716F0150F16E0151F16C0153F
ED7F8015FF4A13005DEC07FC4A5A4A5A4A5A4A5A4A5A4990C7FC495A495AEB0FF0EB3FE0
495A495A4890C8FC4848EB01F04848EB03F8485AEA1FE048B6FCB7FCA37E6C15F025397B
B830>I<EB03FF013F13E090B512F84814FE4880481580260FFE0113C09038F0007F4848
EB1FE0150F16F01507A26C5A6C5AC8FC150F16E0A2151FED3FC0157FEDFF800207130090
3807FFFE495B5D8115FF6D1480D9000113C09138003FE0ED1FF0ED07F8150316FC150116
FE1500A21218127EB4FCA2150116FC4814036C15F86C6C13076DEB1FF0D83FF0133F3A1F
FE01FFE06CB612C06C15806CECFE00C65C013F13F001031380273A7CB830>I<EC03FC4A
7E140F141FA2143F147F157E14FEA2EB01FCEB03F8A2EB07F0A2EB0FE0EB1FC0A2EB3F80
A2EB7F0013FEA2485A485AA2485AA2485A485AA2485AA248C7FC12FEB8FC1780A46C1600
C8007EC7FCAA91387FFFFE91B6FCA46E5B29397DB830>I<000FB612804815C05AA31680
0180C8FCAEEB83FF019F13C090B512F015FC8181D9FE0313809039F0007FC049133F0180
EB1FE06CC7120F000E15F0C81207A216F81503A31218127EA2B4FC150716F048140F6C15
E06C141F6DEB3FC06D137F3A3FE001FF80261FFC0F13006CB55A6C5C6C5C6C14E06C6C13
80D90FFCC7FC25397BB730>I<EC0FF8EC7FFF49B51280010714E0131F4914F090387FF8
0F9039FFC007F84813803803FE005B485A4848EB03F0ED01E0484890C7FC5B123F5BA212
7FEB000C903803FFE0010F13F8D8FF3F13FE48B6FCB7128016C09039FE007FE001F8EB1F
F001E0130F49EB07F8ED03FC5B90C7120116FE1500A37EA46C7E15016D14FC121F6D1303
000FEC07F86D130F6C6CEB1FF06DEB3FE03A03FF81FFC06C90B512806C15006D5B011F13
F8010713E001011380273A7CB830>I<127CB712FC16FEA416FC48C7EA0FF816F0ED1FE0
007CEC3FC0C8EA7F80EDFF00A24A5A4A5A5D14075D140F5D4A5AA24A5AA24AC7FCA25C5C
13015CA213035CA213075CA4495AA6131F5CA96D5A6DC8FC273A7CB830>I<49B4FC011F
13F0017F13FC90B57E0003ECFF804815C048010113E03A1FF8003FF049131FD83FC0EB07
F8A24848EB03FC90C71201A56D1303003F15F86D13076C6CEB0FF06C6CEB1FE0D807FCEB
7FC03A03FF83FF806C90B512006C6C13FC011F13F0497F90B512FE48802607FE0013C0D8
0FF8EB3FE0D81FE0EB0FF04848EB07F8491303007F15FC90C712014815FE481400A66C14
016C15FC6D1303003F15F86D1307D81FF0EB1FF06D133F3A0FFF01FFE06C90B512C06C15
80C6ECFE006D5B011F13F0010190C7FC273A7CB830>I<49B4FC010F13E0013F13F890B5
7E4880488048010113803A0FFC007FC0D81FF0EB3FE04848131F49EB0FF048481307A290
C7EA03F85A4815FC1501A416FEA37E7E6D130315076C7E6C6C130F6D133FD80FFC13FF6C
B6FC7E6C14FE6C14F9013FEBE1FC010F138190380060011400ED03F8A2150716F0150F00
0F15E0486C131F486CEB3FC0157FEDFF804A1300EC07FE391FF01FFC90B55A6C5C6C5C6C
1480C649C7FCEB3FF0273A7CB830>I<120FEA3FC0EA7FE0A2EAFFF0A4EA7FE0A2EA3FC0
EA0F00C7FCAF120FEA3FC0EA7FE0A2EAFFF0A4EA7FE0A2EA3FC0EA0F000C276EA630>I<
EA03C0EA0FF0EA1FF8A2EA3FFCA4EA1FF8A2EA0FF0EA03C0C7FCAFEA03C0EA0FF0121F13
F8123F13FCA3121FA2120F12031200120113F8120313F01207EA1FE0123FEA7FC0EAFF80
EA7F00127E12380E3470A630>I<16F01503ED07F8151F157FEDFFF014034A13C0021F13
8091383FFE00ECFFF8495B010713C0495BD93FFEC7FC495A3801FFF0485B000F13804890
C8FCEA7FFC5BEAFFE05B7FEA7FF87FEA1FFF6C7F000313E06C7F38007FFC6D7E90380FFF
806D7F010113F06D7FEC3FFE91381FFF80020713C06E13F01400ED7FF8151F1507ED03F0
1500252F7BB230>I<007FB7FCA2B81280A36C16006C5DCBFCA7003FB612FE4881B81280
A36C1600A229157DA530>I<1278127EB4FC13C07FEA7FF813FEEA1FFF6C13C000037F6C
13F86C6C7EEB1FFF6D7F010313E06D7F9038007FFC6E7E91380FFF806E13C0020113F080
ED3FF8151F153FEDFFF05C020713C04A138091383FFE004A5A903801FFF0495B010F1380
4990C7FCEB7FFC48485A4813E0000F5B4890C8FCEA7FFE13F8EAFFE05B90C9FC127E1278
252F7BB230>I<EB1FFE90B512E0000314F8000F14FE4880481580267FF80313C09038C0
007F48C7121F16E0150FA3127E151F0018EC7FC0C812FF020313804A13004A5AEC1FF84A
5AEC7FC04A5A92C7FC495AA2495A5CA213075CA86D5A90C9FCA8EB01C0EB07F0A2497EA3
6D5AA2EB01C023397AB830>I<EC1FE0ECFFF8010313FE010F7F4914804914C090397FF0
3FE09038FF800F4890380007F0D803FC13033A07F801FBF89038F007FF380FE01F4A13FC
EA1FC0495A003FEBFF0F903800FE07903901FC03FE007FEBF801EA7E03ECF000A2EAFE07
00FC49137EAA00FE6D13FED87E0314FCA2ECF801D87F0114F8003FEBFC03903900FE07F0
903880FF0F001F90387FFFE06D6C13C0EA0FE06E13803A07F007FE009038F801F86C6CC7
127C6CB414FE6CEB800390387FF01F6DB512FC6D14F86D14E0010314C00100EBFE00EC1F
F0273A7CB830>I<147F4A7EA2497FA4497F14F7A401077F14E3A3010F7FA314C1A2011F
7FA490383F80FEA590387F007FA4498049133F90B6FCA34881A39038FC001F0003814913
0FA4000781491307A2D87FFFEB7FFFB56CB51280A46C496C130029397DB830>I<007FB5
12F0B612FE6F7E82826C813A03F8001FF815076F7E1501A26F7EA615015EA24B5A1507ED
1FF0ED7FE090B65A5E4BC7FC6F7E16E0829039F8000FF8ED03FC6F7E1500167FA3EE3F80
A6167F1700A25E4B5A1503ED1FFC007FB6FCB75A5E16C05E6C02FCC7FC29387EB730>I<
91387F803C903903FFF03E49EBFC7E011F13FE49EBFFFE5B9038FFE07F48EB801F3903FE
000F484813075B48481303A2484813015B123F491300A2127F90C8FC167C16005A5AAC7E
7EA2167C6D14FE123FA27F121F6D13016C6C14FCA26C6CEB03F86D13076C6CEB0FF03901
FF801F6C9038E07FE06DB512C06D14806D1400010713FC6D13F09038007FC0273A7CB830
>I<003FB512E04814FCB67E6F7E6C816C813A03F8007FF0ED1FF8150F6F7E6F7E15016F
7EA2EE7F80A2163F17C0161FA4EE0FE0AC161F17C0A3163F1780A2167F17005E4B5A1503
4B5A150F4B5AED7FF0003FB65A485DB75A93C7FC6C14FC6C14E02B387FB730>I<007FB7
FCB81280A47ED803F8C7123FA8EE1F0093C7FCA4157C15FEA490B5FCA6EBF800A4157C92
C8FCA5EE07C0EE0FE0A9007FB7FCB8FCA46C16C02B387EB730>I<003FB712804816C0B8
FCA27E7ED801FCC7121FA8EE0F8093C7FCA5153E157FA490B6FCA69038FC007FA4153E92
C8FCAE383FFFF8487FB5FCA27E6C5B2A387EB730>I<02FF13F00103EBC0F8010F13F101
3F13FD4913FF90B6FC4813C1EC007F4848133F4848131F49130F485A491307121F5B123F
491303A2127F90C7FC6F5A92C8FC5A5AA892B5FC4A14805CA26C7F6C6D1400ED03F8A27F
003F1407A27F121F6D130F120F7F6C6C131FA2D803FE133F6C6C137FECC1FF6C90B5FC7F
6D13FB010F13F30103EBC1F0010090C8FC293A7DB830>I<3B3FFF800FFFE0486D4813F0
B56C4813F8A26C496C13F06C496C13E0D803F8C7EAFE00B290B6FCA601F8C7FCB3A23B3F
FF800FFFE0486D4813F0B56C4813F8A26C496C13F06C496C13E02D387FB730>I<007FB6
FCB71280A46C1500260007F0C7FCB3B3A8007FB6FCB71280A46C1500213879B730>I<49
B512F04914F85BA27F6D14F090C7EAFE00B3B3123C127EB4FCA24A5A1403EB8007397FF0
1FF86CB55A5D6C5C00075C000149C7FC38003FF025397AB730>I<383FFFF8487FB57EA2
6C5B6C5BD801FCC9FCB3B0EE0F80EE1FC0A9003FB7FC5AB8FCA27E6C16802A387EB730>
76 D<D83FF8ECFFE0486C4913F0486C4913F8A2007F16F06C6C4913E00007160001EF14
BFEC800FA39039E7C01F3FA4ECE03F01E3133EA2ECF07EA201E1137CA2ECF8FCA201E013
F8A214FDEC7DF0A3147FEC3FE0A3EC1FC0A2EC070091C7FCADD83FFC903801FFE0486C49
13F0B54913F8A26C486D13F06C486D13E02D387FB730>I<D83FFC90381FFF80486C4913
C0B54913E0A26C6D6C13C06C6E13800003913801F800EBF7C0A3EBF3E0A314F013F1A214
F8A213F014FCA2147C147EA2143E143FA2141FA21581A2140F15C1A2140715E1A2140315
F1A21401A215F91400A3157DA3153FEA3FFF481380B5EAC01FA26CEB800F6C496C5A2B38
7EB730>I<90383FFFE048B512FC000714FF4815804815C04815E0EBF80001E0133FD87F
80EB0FF0A290C71207A44815F8481403B3A96C1407A26C15F0A36D130FA26D131F6C6CEB
3FE001F813FF90B6FC6C15C06C15806C1500000114FCD8003F13E0253A7BB830>I<007F
B512F0B612FE6F7E16E0826C813903F8003FED0FFCED03FE15016F7EA2821780163FA616
7F17005EA24B5A1503ED0FFCED3FF890B6FC5E5E16804BC7FC15F001F8C9FCB0387FFFC0
B57EA46C5B29387EB730>I<003FB57E4814F0B612FC15FF6C816C812603F8017F913800
3FF0151F6F7E15071503821501A515035E1507150F4B5A153F4AB45A90B65A5E93C7FC5D
8182D9F8007FED3FE0151F150F821507A817F8EEF1FCA53A3FFF8003FB4801C0EBFFF8B5
6C7E17F06C496C13E06C49EB7FC0C9EA1F002E397FB730>82 D<90390FF803C0D97FFF13
E048B512C74814F74814FF5A381FF80F383FE001497E4848137F90C7123F5A48141FA215
0FA37EED07C06C91C7FC7F7FEA3FF0EA1FFEEBFFF06C13FF6C14E0000114F86C80011F13
FF01031480D9003F13C014019138007FE0151FED0FF0A2ED07F8A2007C140312FEA56C14
0716F07F6DEB0FE06D131F01F8EB3FC001FF13FF91B51280160000FD5CD8FC7F13F8D8F8
1F5BD878011380253A7BB830>I<003FB712C04816E0B8FCA43AFE003F800FA8007CED07
C0C791C7FCB3B1011FB5FC4980A46D91C7FC2B387EB730>I<3B7FFFC007FFFCB56C4813
FEA46C496C13FCD803F8C7EA3F80B3B16D147F00011600A36C6C14FE6D13016D5CEC8003
90393FE00FF890391FF83FF06DB55A6D5C6D5C6D91C7FC9038007FFCEC1FF02F3980B730
>I<D87FFE90380FFFC0B54913E06E5AA24A7E6C486D13C0D807F0903801FC00A26D1303
00035DA46C6C495AA46C6C495AA46D131F6D5CA3EC803F013F5CA46D6C48C7FCA490380F
E0FEA401075B14F1A301035BA314FB01015BA314FFA26D5BA46E5A6E5A2B397EB730>I<
D83FFC903801FFE0486C4913F000FF16F8A2007F16F06C486D13E0D81FC09038001FC000
0F1680A76D143F00071600A7000390380F803E9039F01FC07EEC3FE0A3EC7FF0A2147D00
01157CA29039F8FDF8FCA314F8A300005D01F913FCA2ECF07CA201FD137DA2017D5CECE0
3DA3017F133FA2ECC01FA2013F5CA2EC800F6D486C5A2D397FB730>I<3A3FFF01FFF848
01837F02C77FA202835B6C01015B3A01FC007F806D91C7FC00005C6D5BEB7F01EC81FCEB
3F8314C3011F5B14E7010F5B14FF6D5BA26D5BA26D5BA26D90C8FCA4497FA2497FA2815B
81EB0FE781EB1FC381EB3F8181EB7F0081497F49800001143F49800003141F4980000714
0FD87FFEEB7FFFB590B5128080A25C6C486D130029387DB730>I<007FB5FCB61280A415
0048C8FCB3B3B3A5B6FC1580A46C140019476DBE30>91 D<127CA212FEA27EA26C7EA26C
7EA26C7EA26C7EA26C7EA26C7EA212017FA26C7EA26D7EA26D7EA26D7EA26D7EA26D7EA2
6D7EA2130180A26D7EA26E7EA26E7EA26E7EA26E7EA26E7EA26E7EA2140181A26E7EA2ED
7F80A2ED3FC0A2ED1FE0A2ED0FF0A2ED07F8A21503A2ED01F0150025477BBE30>I<007F
B5FCB61280A47EC7123FB3B3B3A5007FB5FCB6FCA46C140019477DBE30>I<1307EB1FC0
EB7FF0497E000313FE000FEBFF80003F14E0D87FFD13F039FFF07FF8EBC01FEB800F38FE
0003007CEB01F00010EB00401D0E77B730>I<007FB612F0A2B712F8A36C15F0A225077B
7D30>I<1338137CEA01FE12031207EA0FFC13F0EA1FE013C0EA3F8013005A127EA212FE
5AA5EAFFC013E013F0127FA2123FA2EA1FE0EA07C00F1D70BE30>I<EB3FFC48B57E4814
E04880488048809038F00FFE9038E001FF806F7E6C48133F6C4880C8121FA491B5FC130F
137F48B6FC12075A48EBC01F383FFC00EA7FE0138048C7FC5AA46C143FA26C6C137F9038
C001FF263FF80FEBFFC06CB712E0A2000714F76C14C3C6020013C0D93FF090C7FC2B2A7C
A830>I<EA3FFC487E12FFA2127F123F1200AAEC03FE91381FFF80027F13E091B57E90B6
12FC82ECFE079138F001FF4A6C13804A137F4AEB3FC091C7121F4915E0160FA217F01607
A8160FA217E07F161F6EEB3FC0A26EEB7F806E13FFDAF00313009138FC0FFE91B55A5E49
5CD97E7F13C0D93C1F90C7FC90380003FC2C3980B730>I<ECFFE0010713FC011F7F017F
7F90B612804815C048EB807F3907FC003F485A485A49EB1F804848EB0F004990C7FC127F
90C9FCA25A5AA87E7EA27F003FEC07C06DEB0FE06C7E6D131F6C6C14C0D807FE133F9039
FFC0FF806C90B5FCC615006D5B011F13F801075B01011380232A7AA830>I<913801FFE0
4A7F5CA28080EC0007AAEB03FE90381FFF874913E790B6FC5A5A481303380FFC00D81FF0
133F49131F485A150F4848130790C7FCA25AA25AA87E6C140FA27F003F141F6D133F6C7E
6D137F390FF801FF2607FE07EBFFC06CB712E06C16F06C14F76D01C713E0011F010313C0
D907FCC8FC2C397DB730>I<49B4FC010713E0011F13F8017F7F90B57E48804801811380
3A07FC007FC04848133FD81FE0EB1FE0150F484814F0491307127F90C7FCED03F85A5AB7
FCA516F048C9FC7E7EA27F003FEC01F06DEB03F86C7E6C7E6D1307D807FEEB1FF03A03FF
C07FE06C90B5FC6C15C0013F14806DEBFE00010713F8010013C0252A7CA830>I<EDFF80
020713E0021F13F05C4A13F891B5FC491387903803FE079138FC03F0903907F800C04A13
00A8003FB612C04815E0B7FCA36C15C0260007F0C7FCB3A9003FB512FE4880B71280A26C
15006C5C25397DB830>I<D903FC13FF90261FFF8713C04913DF90B712E05A5A2607FE07
138F903AF801FE07C048486C6CC7FCA2497F001F8149133FA56D137F000F92C7FC6D5BA2
6C6C485AEBFE0790B55A5D485C15C001DF5BD9C3FCC8FC01C0C9FCA37F7F6CB512F015FF
6C15C04815F0488148813A3FE0001FFE0180130148C8127F007E8100FE168048151FA56C
153F007FED7F006D5C6C6C495A01F013076CB4EB7FFC6C90B55A6C5D000115C06C6C91C7
FC011F13FC010113C02B3E7DA730>I<EA3FFC487E12FFA2127F123F1200AAEC01FE9138
0FFF80023F13E091B57E90B67EA29138FE07FCECF8039138E001FE14C0EC8000A291C7FC
A25BB3A23B3FFFF81FFFF8486D4813FCB500FE14FEA26C01FC14FC6C496C13F82F3880B7
30>I<14E0EB03F8A2497EA36D5AA2EB00E091C8FCA9381FFFF8487F5AA27E7EEA0001B3
A9003FB612C04815E0B7FCA27E6C15C023397AB830>I<EC01C0EC07F0A2EC0FF8A3EC07
F0A2EC01C091C7FCA990B512F04814F8A47EEB0003B3B3A5EC07F0A2123C007EEB0FE0B4
131FEC3FC0147F90B512806C14005C6C5B000F13F0000313C01D4E7CB830>I<EA7FF848
7EA4127F1200AB0203B512804A14C017E0A217C06E14809139001FE0004B5A4B5A4BC7FC
4A5A4A5AEC0FF84A5A4A5A4A5A4A5A01FD7F90B57E8114F7ECE3F8ECC1FCEC81FEEC00FF
497F496D7E6F7E826F7E15076F7E6F7E3B7FFFF81FFFE0B56C4813F017F8A217F06C496C
13E02D387FB730>I<387FFFF8B57EA47EEA0001B3B3A8007FB612F0B712F8A46C15F025
387BB730>I<02FC137E3B7FC3FF01FF80D8FFEF01877F90B500CF7F15DF92B57E6C010F
13872607FE07EB03F801FC13FE9039F803FC01A201F013F8A301E013F0B3A23C7FFE0FFF
07FF80B548018F13C0A46C486C01071380322881A730>I<EC01FE3A3FFC0FFF80267FFE
3F13E000FF90B57E90B67E7E6C9038FE07FCC6EBF8039138E001FE14C0EC8000A291C7FC
A25BB3A23B3FFFF81FFFF8486D4813FCB500FE14FEA26C01FC14FC6C496C13F82F2880A7
30>I<49B4FC010F13E0013F13F8497F90B57E0003ECFF8014013A07FC007FC04848EB3F
E0D81FE0EB0FF0A24848EB07F8491303007F15FC90C71201A300FEEC00FEA86C14016C15
FCA26D1303003F15F86D13076D130F6C6CEB1FF06C6CEB3FE06D137F3A07FF01FFC06C90
B512806C15006C6C13FC6D5B010F13E0010190C7FC272A7CA830>I<EC03FE3A3FFC1FFF
80267FFE7F13E000FF90B57E90B612FC6C816CEBFE07C69038F001FF4A6C13804A137F4A
EB3FC091C7121F4915E0160FA217F01607A8160FA217E07F161F6EEB3FC0A26EEB7F806E
13FFDAF00313009138FC0FFE91B55A5E495C6E13C0021F90C7FCEC03FC91C9FCAD383FFF
F8487FB57EA26C5B6C5B2C3C80A730>I<49B413F8010FEBC1FC013F13F14913FD48B6FC
5A481381390FFC007F49131F4848130F491307485A491303127F90C7FC15015A5AA77E7E
15037FA26C6C1307150F6C6C131F6C6C133F01FC137F3907FF01FF6C90B5FC6C14FD6C14
F9013F13F1010F13C1903803FE0190C7FCAD92B512F84A14FCA46E14F82E3C7DA730>I<
ED07F83A3FFF803FFF486DB51280B512C302CF14C06C13DF6C9038FFFC3FD8001F13E092
38801F809238000F004A90C7FC5C5C5CA25CA45CAF003FB512FC4880B7FCA26C5C6C5C2A
287EA730>I<90381FFC1E48B5129F000714FF5A5A5A387FF007EB800100FEC7FC4880A4
6C143E007F91C7FC13E06CB4FC6C13FC6CEBFF806C14E0000114F86C6C7F01037F903800
0FFF02001380007C147F00FEEC1FC0A2150F7EA27F151F6DEB3F806D137F9039FC03FF00
90B6FC5D5D00FC14F0D8F83F13C026780FFEC7FC222A79A830>I<EB0780497E131FA900
3FB612E04815F0B7FCA36C15E026001FC0C7FCB216F8ED01FCA5ECE003010FEB07F814F0
9138FC1FF06DB512E06D14C016806D14009038007FFCEC1FF026337EB130>I<D83FFCEB
3FFC486C497E00FF14FFA2007F147F003F143F00001400B3A41501A2150315076D130F90
3A7FC07FFFF891B612FC6D15FE7F6D4913FC6D9038F87FF8010001C0C7FC2F2880A630>
I<3B3FFFC07FFF80486DB512C0B515E0A26C16C06C496C13803B01F80003F000A26D1307
00005DA26D130F017E5CA2017F131F6D5CA2EC803F011F91C7FCA26E5A010F137EA2ECE0
FE01075BA214F101035BA3903801FBF0A314FF6D5BA36E5A6E5A2B277EA630>I<3B3FFF
C01FFFE0486D4813F0B515F8A26C16F06C496C13E0D807E0C7EA3F00A26D5C0003157EA5
6D14FE00015DEC0F80EC1FC0EC3FE0A33A00FC7FF1F8A2147DA2ECFDF9017C5C14F8A301
7E13FBA290393FF07FE0A3ECE03FA2011F5C90390F800F802D277FA630>I<3A3FFF81FF
FC4801C37FB580A26C5D6C01815BC648C66CC7FC137FEC80FE90383F81FC90381FC3F8EB
0FE3ECE7F06DB45A6D5B7F6D5B92C8FC147E147F5C497F81903803F7E0EB07E790380FE3
F0ECC1F890381F81FC90383F80FE90387F007E017E137F01FE6D7E48486D7E267FFF80B5
FCB500C1148014E3A214C16C0180140029277DA630>I<3B3FFFC07FFF80486DB512C0B5
15E0A26C16C06C496C13803B01FC0003F000A2000014076D5C137E150F017F5C7F151FD9
1F805BA214C0010F49C7FCA214E00107137EA2EB03F0157C15FCEB01F85DA2EB00F9ECFD
F0147D147FA26E5AA36E5AA35DA2143F92C8FCA25C147EA2000F13FE486C5AEA3FC1EBC3
F81387EB8FF0EBFFE06C5B5C6C90C9FC6C5AEA01F02B3C7EA630>I<001FB612FC4815FE
5AA316FC90C7EA0FF8ED1FF0ED3FE0ED7FC0EDFF80003E491300C7485A4A5A4A5A4A5A4A
5A4A5A4A5A4990C7FC495A495A495A495A495A495A4948133E4890C7127F485A485A485A
485A485A48B7FCB8FCA46C15FE28277DA630>I<ED3FF0913803FFF8140F5C147F16F091
38FFF00092C7FC495A5CB3A21303495A133F383FFFF0B55A5C91C8FC14C080003F7F3800
3FF813076D7E1301B3A2806D7E15F091387FFFF016F8141F8014039138003FF025477BBE
30>I<127CA212FEB3B3B3AD127CA207476CBE30>I<EA7FE0EAFFFE6D7E8014F07EC66C7E
13076D7E1301B3A2806D7E15E091387FFFE06E13F8801407141F5C4A13E09138FFE00092
C7FC495A5CB3A21303495A137F387FFFF0B5FC14C05C49C8FCEA7FE025477BBE30>I<01
7C133848B4137C48EB80FE4813C14813C348EBEFFC397FEFFFF0D8FF8713E0010713C048
6C1380D87C0113003838007C1F0C78B730>I E
%EndDVIPSBitmapFont
%DVIPSBitmapFont: Fs cmbx12 17.28 40
/Fs 40 121 df<EA01FCEA07FF4813804813C04813E04813F014F8B5FCA214FCA314FEA2
7EA27E7E6C13BE6C133EEA01FCC7FCA2147E147CA314FC14F8A2130114F01303A2EB07E0
A2EB0FC0A2EB1F80EB3F005B13FE485A485A485A485A5B6C5A6CC7FC173174942D>44
D<16F04B7E1507151F153FEC01FF1407147F010FB5FCB7FCA41487EBF007C7FCB3B3B3B3
007FB91280A6395E74DD51>49 D<913801FFF8021FEBFFC091B612F8010315FF010F16C0
013F8290267FFC0114F89027FFE0003F7F4890C7000F7F48486E7FD807F86E148048486E
14C048486E14E048486F13F001FC17F8486C816D17FC6E80B56C16FE8380A219FFA283A3
6C5BA26C5B6C90C8FCD807FC5DEA01F0CA14FEA34D13FCA219F85F19F04D13E0A294B512
C019804C14004C5B604C5B4C5B604C13804C90C7FC4C5A4C5A4B13F05F4B13804B90C8FC
4B5AED1FF84B5A4B5A4B48143F4A5B4A48C8FC4A5A4A48157E4A5A4A5AEC7F8092C9FC02
FE16FE495A495A4948ED01FCD90FC0150749B8FC5B5B90B9FC5A4818F85A5A5A5A5ABAFC
A219F0A4405E78DD51>I<92B5FC020F14F8023F14FF49B712C04916F0010FD9C01F13FC
90271FFC00077FD93FE001017F49486D8049C86C7F484883486C6F7F14C0486D826E806E
82487FA4805CA36C5E4A5E6C5B6C5B6C495E011FC85A90C95CA294B55A614C91C7FC604C
5B4C5B4C5B4C5B047F138092260FFFFEC8FC020FB512F817E094C9FC17F817FF91C7003F
13E0040713F8040113FE707F717F7113E085717FA2717F85A285831A80A31AC0EA03FCEA
0FFF487F487F487FA2B57EA31A80A34D14005C7E4A5E5F6C495E49C8485BD81FF85F000F
5ED807FE92B55A6C6C6C4914806C01F0010791C7FC6C9026FF803F5B6D90B65A011F16F0
010716C001014BC8FCD9001F14F0020149C9FC426079DD51>I<F01F804E7E187F18FFA2
5F5F5F5FA25F5F5FA294B5FC5E5E5EA25E5EEE3FBFEE7F3FA216FEED01FCED03F8ED07F0
A2ED0FE0ED1FC0ED3F8016005D15FE4A5A4A5AA24A5A4A5A4A5A4A5AA24AC7FC14FE495A
5C1303495A495A495A5C133F49C8FC13FE485AA2485A485A485A5B121F485A48C9FC12FE
BCFCA6CA6CEBC000B1037FB8FCA6485E7CDD51>I<01C0EE01C0D801F8160F01FF167F02
F0EC07FFDAFF8090B5FC92B7128019006060606060606095C7FC17FC5F17E0178004FCC8
FC16E09026FC3FFCC9FC91CBFCADED3FFE0203B512F0020F14FE023F6E7E91B712E001FD
D9E00F7F9027FFFE00037F02F801007F02E06EB4FC02806E138091C8FC496F13C04917E0
7113F0EA00F090C914F8A219FC83A219FEA419FFA3EA03F0EA0FFC487E487E487FA2B57E
A319FEA35C4D13FC6C90C8FC5B4917F8EA3FF001804B13F06D17E0001F5E6C6C17C06D4B
1380D807FC92B512006C6C4A5B6C6C6C01075B6C01E0011F5BD97FFE90B55A6DB712C001
0F93C7FC6D15FC010115F0D9003F1480020301F0C8FC406078DD51>I<EE1FFF0303B512
E0031F14F892B612FE0203814AD9FC037F021F9039C0007FC04A90C7EA1FE0DAFFFC6E7E
494914074949EC7FF8494914FF49495B4949497F4990C7FC495D5C13FF485BA25A4A6E5B
5A715B48496E5B725A4894C8FCA35AA35C48913801FFE0030F13FE033F6D7E4B14E092B6
12F89126E1FE037FB53AE3F0007FFEDAE7E06D7EDAEFC06D7F4B6D7F02FFC76C7F4A8271
7F4A82A24A828385A24A1780A54A17C0A37EA77EA47E6E1780A27EA21A007E4D5B7E6E5E
7E6E5E6C4C5B6D7E013F4B5B6D6C4A5B6D01C0495B6D6D90B5C7FC6DD9FC0713FC6D90B6
5A6D5E023F15C0020F92C8FC020114F8DA001F1380426079DD51>I<EA07E0120F7F13FC
EBFFFC91B912F8A45AA21AF01AE01AC01A801A00A248606161616101E0C9123F01804C5A
48CA485A4D90C7FC60007E4C5A17074D5A4D5A4D5A485F4D5A17FF4C90C8FCC9485A5F4C
5A160F4C5A5F163F4C5A16FF5F5D94C9FC5D5D5E150FA24B5AA2153FA24B5AA215FFA34A
5BA25CA35CA44A5BA45CA65CAD6E5BA26E5BDA03FECAFC6E5A456377E051>I<91380FFF
F849B612C0010F15F8013F15FE496F7E2701FFF80080480180011F13F0D807FCC700077F
D80FF080484882003F8301F880486C827FB5178080A76C90C7FC4C14006C5A6C5AD807F0
4A5BC95C5E4C5B604C5B4C138093B5C7FC4B13FC5F4B13E05F4B5B4B90C8FC5E5E4B5A5E
4B5AA25E4B5AA293C9FCA215FEA35DAE5D92CAFCABEC01FCEC07FF4A7F023F13E0A24A7F
A291B57EA76E5BA26E5BA2020F13806E90C9FCEC01FC396577E44C>63
D<F00FE04E7EA24E7EA34E7EA24E7EA34D7FA24D80A24D80A34D80A24D80A34D80A2DD7F
BF7FA2181F05FF8017FE04016D7FA24D7E04038217F804076D80A24D7E040F8217E0041F
6D80A24D7F043F825F047F6E7FA294C77E4C825E03016F7FA24C800303845E03076F80A2
4C80030F845E031F6F80A24C81033F845E037F707F93B9FCA292BA7EA24A85A203FCC912
070203865D020771805D86020F864B82021F865D87023F864B83027F8692CBFC874A864A
840101875C496C728090381FFFC0B700E092B812FEA66F647BE37A>65
D<4DB5ED03C0057F02F014070407B600FE140F047FDBFFC0131F4BB800F0133F030F05FC
137F033F9127F8007FFE13FF92B6C73807FF814A02F0020113C3020702C09138007FE74A
91C9001FB5FC023F01FC16074A01F08291B54882490280824991CB7E4949844949844949
8449865D49498490B5FC484A84A2484A84A24891CD127FA25A4A1A3F5AA348491A1FA448
99C7FCA25CA3B5FCB07EA380A27EA2F50FC0A26C7FA37E6E1A1F6C1D80A26C801D3F6C6E
1A00A26C6E616D1BFE6D7F6F4E5A7F6D6D4E5A6D6D4E5A6D6D4E5A6D6E171F6D02E04D5A
6E6DEFFF806E01FC4C90C7FC020F01FFEE07FE6E02C0ED1FF8020102F8ED7FF06E02FF91
3803FFE0033F02F8013F1380030F91B648C8FC030117F86F6C16E004071680DC007F02F8
C9FC050191CAFC626677E375>67 D<BB12E0F2FF801BF01BFE757E1CF0D800010280C700
0780DF007F13FE080F6D7E0801807480093F7F090F13FC757F757F877580767F8A88767F
8A888AA2767FA28A881F80A37614C0A41FE0A5881FF0B05214E0A51FC0A4521480A31F00
6466A2525BA2525BA2525B666499B55A515C5191C7FC515B515B515B097F5B50B512C008
075C083F91C8FC0707B512FCBD12F01CC051C9FC1BF81B8008E0CAFC6C627AE17C>I<4D
B5ED03C0057F02F014070407B600FE140F047FDBFFC0131F4BB800F0133F030F05FC137F
033F9127F8007FFE13FF92B6C73807FF814A02F0020113C3020702C09138007FE74A91C9
001FB5FC023F01FC16074A01F08291B54882490280824991CB7E49498449498449498449
865D49498490B5FC484A84A2484A84A24891CD127FA25A4A1A3F5AA348491A1FA44899C8
FCA25CA3B5FCB07E071FB812F880A37EA296C70001ECC000A26C7FA37E807EA26C80A26C
80A26C807F6D7F816D7F7F6D7F6D6D5F6D14C06D6E5E6E7F6E01FC5E020F01FF5E6E02C0
ED7FEF020102F8EDFFC76E02FF02071383033F02FC013F1301030F91B638FC007F03014D
131F6F6C04E01307040704801301DC007F02F8CAFC050191CBFC6D6677E37F>71
D<B96C90B91280A6D8000102C0C9000102C0C7FCB3B3A293BBFCA604C0C91201B3B3A6B9
6C90B91280A671627AE17E>I<B912E0A6C702E0C7FCB3B3B3B3AEB912E0A633627CE13C>
I<B700E0040FB7128082828282A2D800016EDC000101FCC7FC719338001FC08383A28302
FD808302FC80816F7F6F806F8084816F806F806F8084707F827080708085708082708070
8085717F83718071807180868371807180727F8672808472807280877280847280737F87
731480857314C07314E01CF07314F8857314FC7413FE7413FF1D9F867414DF7414FF86A2
86868787A287878787A28787888888A288888890261FFFC084B712F8881D7F1D3F1D1F77
5A71627AE17E>78 D<DBFFFCEC01E0020FD9FFE01303027F02FC130749B7130F0107EEC0
1F011F16F049D9C007EBF83F4948C7383FFE7FD9FFF8020FB5FC4801E014014849804849
153F91C97E484882001F834982003F83845B007F187FA2193FA200FF181FA27F190FA27F
A26D17078080806C01F893C7FC80ECFF8015F86CECFFC016FC6CEDFFE017FE6CEEFFE018
F86C17FE6C717E6C846C846D17F86D836D836D8313036D18806D6C17C0020F17E01401DA
000F16F01500040715F8EE007F1703050014FC183F84060713FE84A2007C8300FC83A219
7FA3193F7EA31AFC7EA27F1AF86D177F7F1AF06D17FF6D18E06D5E01FF18C06E4B138002
E04B130002F84B5A02FFED3FFC01CF01E0ECFFF8018301FF010F5B010191B65A6D6C5E48
011F93C7FC48010315FC48D9003F14E048020149C8FC476677E35A>83
D<001FBEFCA64849C79126E0000F148002E0180091C8171F498601F81A0349864986A249
1B7FA2491B3F007F1DC090C9181FA4007E1C0FA600FE1DE0481C07A5CA95C7FCB3B3B3A3
021FBAFCA663617AE070>I<B96C023FB612FEA6D8000102C0CA0007EBF000E2007FC7FC
B3B3B3AA656D63A2821C01806570170380525A6E7F6E4F5A70171F6E626E6D4D5A6E6D17
7F525A6E6E030390C8FC033F01E04B5A6F6DED1FFC6F01FCED7FF80303D9FF80903803FF
E06F02F8017F5B6F6C90B7C9FC041F5E040716F8040016C0050F4ACAFCDD003F13C06F64
7AE17C>I<B800F8011FB80203B7FCA6D8000F91C9000102E0CAEBFE006D72F20FF07072
715A230F6D73627072171F6D6A708277173F6D7397C7FC70846B6E72197E707217FE6E72
6170855118016E6870731503636E68704C6E15076E68718451180F6EDE7E7F607172151F
6E06FE61714B7E08016F153F6E4E6C95C8FC71840803616F4D6C177E7102076F15FE6F66
714B7E080F7013016F4D6C5F7185081F18036F4D6C5F71023F7013076F94C75F72845018
0F6F047E6E5E7272131F1AFE6F4C6E5EDEE00171133F6F4C6E93C9FC06F084070361704B
6E157E06F87213FE1907704B6E5DDEFC0F1881704B6E5D06FE19C1071F18C3704B6E5DDE
FF3F18E7706407BFC9FC07FF18FF704A705CA3704A705CA27099CAFC4F82A27149705BA3
7149705BA27149705BA37149705BA37190CB5BA27148725AA37148725A714872CBFCA063
7DE1A7>87 D<913803FFFE027FEBFFF00103B612FE010F6F7E4916E090273FFE001F7FD9
7FE001077FD9FFF801017F486D6D7F717E486D6E7F85717FA2717FA36C496E7FA26C5B6D
5AEB1FC090C9FCA74BB6FC157F0207B7FC147F49B61207010F14C0013FEBFE004913F048
B512C04891C7FC485B4813F85A5C485B5A5CA2B55AA45FA25F806C5E806C047D7F6EEB01
F96C6DD903F1EBFF806C01FED90FE114FF6C9027FFC07FC01580000191B5487E6C6C4B7E
011F02FC130F010302F001011400D9001F90CBFC49437CC14E>97
D<903807FF80B6FCA6C6FC7F7FB3A8EFFFF8040FEBFF80047F14F00381B612FC038715FF
038F010014C0DBBFF0011F7FDBFFC001077F93C76C7F4B02007F03F8824B6F7E4B6F1380
4B17C0851BE0A27313F0A21BF8A37313FCA41BFEAE1BFCA44F13F8A31BF0A24F13E0A24F
13C06F17804F1300816F4B5A6F4A5B4AB402075B4A6C6C495B9126F83FE0013F13C09127
F00FFC03B55A4A6CB648C7FCDAC00115F84A6C15E091C7001F91C8FC90C8000313E04F65
7BE35A>I<F17FF8050FB5FCA6EF000F8484B3A892380FFF804AB512F8020F14FE023FEC
FF8391B712E301039138807FF3499039F8000FFB011F01E00103B5FC494913004990C87E
49488148498148834A815A485BA2485BA25AA3485BA4B5FCAE7EA46C7FA37EA26C7FA26C
5F806C5F6C6D5D6C6D5D017F93B5FC6D6C6C0103806D6D49806D01F0D91FF7EBFFFE6D90
39FE01FFE7010190B612876D6CECFE07021F14F8020314E09127003FFE00ECC0004F657B
E35A>100 D<92380FFFC04AB512FC020FECFF80023F15E091B712F80103D9FE037F4990
39F0007FFF011F01C0011F7F49496D7F4990C76C7F49486E7F48498048844A804884485B
727E5A5C48717EA35A5C721380A2B5FCA391B9FCA41A0002C0CBFCA67EA380A27EA27E6E
160FF11F806C183F6C7FF17F006C7F6C6D16FE6C17016D6C4B5A6D6D4A5A6D01E04A5A6D
6DEC3FE0010301FC49B45A6D9026FFC01F90C7FC6D6C90B55A021F15F8020715E0020092
C8FC030713F041437CC14A>I<EE3FFC0307B51280033F14C04AB612F0020715F84A9038
F03FFC4AEB807F913A7FFE00FFFE4A5A4B4813FF4913F05B4913E0A24913C0A27013FE49
49EB7FFCEF3FF8EF1FF0EF07C094C7FCB0B812C0A6D8001F01C0C8FCB3B3B0007FB612FC
A638657CE431>I<F107F8DB7FFEEC3FFE020FB5D8F001B5FC027FDAFE03148049B7128F
49DCDFFD13C0010FD9F00FEBFFC149D9800114014990C7EBFC0349486E6C7E4948EC3FFF
48496E018113800780130048F0C03E97C7FC48496E7FA34884A96C60A36C6D4A5BA26C60
A26C6D4A90C8FC6D6C4A5A6D6C4A5A6D6D485BDBF00F5B4990B612C060D97C7F4AC9FCD9
FC0F14F09126007FFECAFC92CCFC1201A47FA27F8014F091B77E18FE6CEFFFC019F06D17
FC19FF6D846D846D846D84013F8490BAFC0003854801E0C712014890C9000F7F48481601
4848EE007F4848717E8512FF5B85A56D5F007F616D173F003F616D177F6C6C4D5A6C01C0
03035B6C6D4B5B6C01F8031F5BC601FF92B5C7FC6D01F8011F5B011F90B712F8010717E0
010094C8FC020F15F0DA003F01FCC9FC4A607CC151>I<903807FF80B6FCA6C6FC7F7FB3
A8EF1FFF94B512F0040714FC041F14FF4C8193267FE07F7F922781FE001F7FDB83F86D7F
DB87F07FDB8FC0814C7F039FC78015BE03BC8003FC825DA25DA25DA45DB3B2B7D8F007B7
1280A651647BE35A>I<EB0FE0EB3FF8497E48B5FCA24880A24880A76C5CA26C91C7FCA2
38007FFC6D5AEB0FE090C9FCAF903807FF80007FB5FCA6C6FC7F7FB3B3AEB712C0A62265
7BE42C>I<ED01FCED07FF4B1380033F13E0A24B13F0A292B512F8A76F13F0A26F13E0A2
030F13806F1300ED01FC92C8FCAFEEFFF8021FB5FCA6EC000F8181B3B3B3AAEA07F0EA1F
FC487E487EB56C4813F0A317E05D17C05D17806C4948130049495A6C48495A261FFE0313
F06CB65A6C158000014AC7FC6C6C13F8010713802D8288E431>I<903807FF80B6FCA6C6
FC7F7FB3B3B3B3ADB712E0A623647BE32C>108 D<902607FF80D91FFFEEFFF8B691B500
F00207EBFF80040702FC023F14E0041F02FF91B612F84C6F488193267FE07F6D4801037F
922781FE001F9027E00FF0007FC6DA83F86D9026F01FC06D7F6DD987F06D4A487F6DD98F
C0DBF87EC7804C6D027C80039FC76E488203BEEEFDF003BC6E4A8003FC04FF834B5FA24B
5FA24B94C8FCA44B5EB3B2B7D8F007B7D8803FB612FCA67E417BC087>I<902607FF80EB
1FFFB691B512F0040714FC041F14FF4C8193267FE07F7F922781FE001F7FC6DA83F86D7F
6DD987F07F6DD98FC0814C7F039FC78015BE03BC8003FC825DA25DA25DA45DB3B2B7D8F0
07B71280A651417BC05A>I<923807FFE092B6FC020715E0021F15F8027F15FE494848C6
6C6C7E010701F0010F13E04901C001037F49496D7F4990C87F49486F7E49486F7E48496F
13804819C04A814819E048496F13F0A24819F8A348496F13FCA34819FEA4B518FFAD6C19
FEA46C6D4B13FCA36C19F8A26C6D4B13F0A26C19E06C6D4B13C0A26C6D4B13806C6D4B13
006D6C4B5A6D6D495B6D6D495B010701F0010F13E06D01FE017F5B010090B7C7FC023F15
FC020715E0020092C8FC030713E048437CC151>I<902607FF80EBFFF8B6010FEBFF8004
7F14F00381B612FC038715FF038F010114C09227BFF0003F7FC6DAFFC0010F7F6D91C76C
7F6D496E7F03F86E7F4B6E7F4B17804B6F13C0A27313E0A27313F0A21BF885A21BFCA385
1BFEAE4F13FCA41BF861A21BF0611BE0611BC06F92B512801B006F5C6F4A5B6F4A5B03FF
4A5B70495B04E0017F13C09226CFFC03B55A03C7B648C7FC03C115F803C015E0041F91C8
FC040313E093CBFCB3A3B712F0A64F5D7BC05A>I<D90FFFEB0FFCB690383FFF8093B512
E04B14F04B14F8923907FC7FFC92390FE0FFFEC6EC1F806DD93F0113FF6D133E157E157C
15F8A215F07013FEA24BEB7FFCEF3FF8EF0FE04B90C7FCA55DB3B0B712F8A638417BC042
>114 D<913A3FFF8007800107B5EAF81F011FECFE7F017F91B5FC48B8FC48EBE0014890
C7121FD80FFC1407D81FF0801600485A007F167F49153FA212FF171FA27F7F7F6D92C7FC
13FF14E014FF6C14F8EDFFC06C15FC16FF6C16C06C16F06C826C826C826C82013F168001
0F16C01303D9007F15E0020315F0EC001F1500041F13F81607007C150100FC81177F6C16
3FA2171F7EA26D16F0A27F173F6D16E06D157F6D16C001FEEDFF806D0203130002C0EB0F
FE02FCEB7FFC01DFB65A010F5DD8FE0315C026F8007F49C7FC48010F13E035437BC140>
I<EC07E0A6140FA5141FA3143FA2147FA214FF5BA25B5B5B5B137F48B5FC000F91B512FE
B8FCA5D8001F01E0C8FCB3AFEF0FC0AC171F6D6D1480A2173F6D16006F5B6D6D137E6D6D
5B6DEBFF836EEBFFF86E5C020F14C002035C9126003FFCC7FC325C7DDA3F>I<902607FF
C0ED3FFEB60207B5FCA6C6EE00076D826D82B3B3A260A360A2607F60183E6D6D147E4E7F
6D6D4948806D6DD907F0ECFF806D01FFEB3FE06D91B55A6E1500021F5C020314F8DA003F
018002F0C7FC51427BC05A>I<B70081B600FC0103B512FCA6C66C0180C701FCC8381FFE
006F6FED03F86D047F5F856F6E16076D646F70140F6D705F866F6E161F6D646F4A6D143F
6D99C7FC4E7F6F616D1B7E6F4A6D14FE6D6395B57E7001FC15016E62DCC0016E13036EDB
F87F5D05038004E0496C14076E62DCF007ED800F6E4B6C5D050F15C004F8496C141F6E62
DCFC1FEDE03F6E4B6C92C8FC053F15F004FE496C5C6E197E7048EDF8FE6E027E6D5C05FE
15FC4D6D13FD6F601BFF6F496E5BA24D806F60A26F496E5BA24D806F60A26F496E90C9FC
A294C87E6F5FA26F486F5A047C6F5A6E417DBF75>119 D<007FB600C0017FB512F8A6D8
001F01F8C70007EBF0006D040190C7FC6D6D5D6D6D4A5A6D6D4A5A70495A6D4C5A6E7F6E
6D495A6E6D495A7049C8FC6E4A5A6E6D485A6E6D485A6E13FFEF8FF06EEC9FE06FEBFFC0
6F5C6F91C9FC5F6F5B816F7F6F7F8481707F8493B57E4B805D4B80DB0FF37FDB1FE17F04
C080153F4B486C7F4B486C7F4A486D7F4A486D7F4A5A4B6D7F020F6E7F4A486D7F4A486D
804A5A4AC86C7F49486F7F4A6F7F0107707FEB3FFFB600F049B7FCA650407EBF55>I
E
%EndDVIPSBitmapFont
%DVIPSBitmapFont: Ft cmsy10 10.95 2
/Ft 2 16 df<EE7FFE0307B512E0033F14FC92B7FC0203D9C00313C0DA0FFCC7EA3FF0DA
3FE0EC07FCDA7F80EC01FED901FEC9EA7F80D903F8EE1FC0D907E0EE07E04948707E4948
707E49CB7E017E187E498449844848F00F8000031AC04918074848F003E0A24848F001F0
A248CD12F8A2001E1A78003E1A7CA2003C1A3C007C1A3EA200781A1EA300F81A1FA2481A
0FAB6C1A1FA200781A1EA3007C1A3EA2003C1A3C003E1A7CA2001E1A78001F1AF8A26C6C
F001F0A26C6CF003E0A26C6CF007C06D180F00011A806C6CF01F006D60017E187E6D606D
6C4C5A6D6C4C5A6D6C4C5AD903F8EE1FC0D901FEEE7F809026007F80DA01FEC7FCDA3FE0
EC07FCDA0FFCEC3FF0913B03FFC003FFC0020090B6C8FC033F14FC030714E09226007FFE
C9FC50557BC05B>13 D<EB0FFCEB3FFF90B512C0000314F04880488048804880A2481580
A3B712C0AA6C1580A36C1500A26C5C6C5C6C5C6C5CC614C0013F90C7FCEB0FFC22227BA7
2D>15 D E
%EndDVIPSBitmapFont
%DVIPSBitmapFont: Fu cmbx12 14.4 61
/Fu 61 123 df<EEFFFC031FEBFF804AB612E0020781021F9038C00FF8913A7FFE0003FC
DAFFF0EB00FE4949EB03FF4901805B4990C7487F49485CA2495A4D7F013F6F5B5CA37190
C7FC715AEF01F894C9FCA90403B512C0BAFCA526003FFCC7120783B3B3A6003FB5D8FC03
B612C0A542547DD34B>12 D<EA07F0EA1FF8487E487E7FB5FC1480A314C0A37EA27E7EEA
07F3EA0003A213071480A3130F1400A25B131E133E133C137C5BA2485A485A485A485A48
C7FC121E120C1228769025>44 D<B712F0AB240B7F9F2D>I<EA07F0487E487E487E487E
B51280A76C13006C5A6C5A6C5A6C5A1111769025>I<157815FC14031407141F14FF130F
0007B5FCB6FCA2147F13F0EAF800C7FCB3B3B3A6007FB712FEA52F4E76CD43>49
D<EC3FFE0103B512E0010F14FC013F14FF90B712C048D9C07F7F2703FE000F13F8D807F8
01037FD80FE06D7F48486D7F48488001F01680486C6E13C07F486C6E13E07FA27013F0A5
6C5AA26C5AEA0FF0EA03C0C914E05EA218C05E1880A24C13005F4C5A4B5B5F4B5B5F4B5B
4B90C7FC4B5A5E4B5AED7FE04B5A4A5B4A48C8FC4A5A5D4A48EB01F04A5AEC3F804AC7FC
02FEEC03E0495A495A495A495AD91F80140749C8FC013E150F017FB7FC90B812C05A5A5A
5A5A5A5AB9FC1880A4344E79CD43>I<91380FFFC091B512FC0107ECFF80011F15E09026
3FF8077F9026FF800113FC4848C76C7ED803F86E7E491680D807FC8048B416C080486D15
E0A4805CA36C17C06C5B6C90C75AD801FC1680C9FC4C13005FA24C5A4B5B4B5B4B13C04B
5BDBFFFEC7FC91B512F816E016FCEEFF80DA000713E0030113F89238007FFE707E701380
7013C018E07013F0A218F8A27013FCA218FEA2EA03E0EA0FF8487E487E487EB57EA318FC
A25E18F891C7FC6C17F0495C6C4816E001F04A13C06C484A1380D80FF84A13006CB44A5A
6CD9F0075BC690B612F06D5D011F1580010302FCC7FCD9001F1380374F7ACD43>I<177C
17FEA2160116031607160FA2161F163F167FA216FF5D5DA25D5DED1FBFED3F3F153E157C
15FCEC01F815F0EC03E01407EC0FC01580EC1F005C147E147C5C1301495A495A5C495A13
1F49C7FC133E5B13FC485A5B485A1207485A485A90C8FC123E127E5ABA12C0A5C96C48C7
FCAF020FB712C0A53A4F7CCE43>I<D80380150ED807E0157E01FEEC03FED9FFF0137F91
B65A5F5F5F5F5F94C7FC5E5E16F016C093C8FC15F801E190C9FC01E0CAFCABEC0FFF027F
13F001E3B512FE01E76E7E9026FFF8077FDAC0017F49C713F8496E7E49143F4981496E7E
6C481680C9FC18C08218E0A418F0A3EA0FE0487E487E487E487EA418E0A35B6C484A13C0
5B491680003EC85A003F17006C6C4A5A6D5D6C6C4A5AD807F8495BD803FE01075B2701FF
C03F5B6C90B65A013F4AC7FC6D14F8010314C09026007FF8C8FC344F79CD43>I<ED0FFF
92B512E0020780021F14FC91397FFE03FE903A01FFF0007F4901C0EB3F804990C7121F49
48EC7FC0494814FF49484913E049485B01FF5C485BA2485B5AA2486F13C04A6D1380486F
1300177E94C7FC5AA291CAFC5AA21508913801FFF8020713FFB54814C04A14F04AC66C7E
023C6D7E4A6D7E4A6D7E7013804A15C0A24A15E07013F05C18F8A491C714FCA37EA67EA4
6C17F880A27E18F06C5D18E06C6D15C07E6E4913806C6D15006D6C495A6D6CEB7FFC6DB4
48485A6D90B55A010315C0010092C7FC023F13FC020713C0364F7ACD43>I<121F7F7FEB
FF8091B81280A45A1900606060A2606060485F0180C86CC7FC007EC95A4C5A007C4B5A5F
4C5A160F4C5A484B5A4C5A94C8FC16FEC812014B5A5E4B5A150F4B5AA24B5AA24B5A15FF
A24A90C9FCA25C5D1407A2140FA25D141FA2143FA4147F5DA314FFA55BAC6D5BA2EC3FC0
6E5A395279D043>I<91380FFF8091B512F8010314FE010F6E7E4901037F90267FF8007F
4948EB3FF048496D7E484980486F7E484980824817805A91C714C05A7013E0A218F0B5FC
A318F8A618FCA46C5DA37EA25E6C7F6C5DA26C5D6C7F6C6D137B6C6D13F390387FF80301
1FB512E36D14C30103028313F89039007FFE03EC00401500A218F05EA3D801F816E0487E
486C16C0487E486D491380A218005E5F4C5A91C7FC6C484A5A494A5A49495B6C48495BD8
03FC010F5B9027FF807FFEC7FC6C90B55A6C6C14F06D14C0010F49C8FC010013F0364F7A
CD43>57 D<91B5FC010F14F8017F14FF90B712C00003D9C00F7F2707FC00017FD80FE06D
7F48486E7E48C87FD87FE06E7E7F7F486C1680A66C5A18006C485C6C5AC9485A5F4B5B4B
5B4B5B4B5B4B90C7FC16FC4B5A4B5A16C04B5A93C8FC4A5A5D14035D5D14075DA25D140F
A25DAB91CAFCAAEC1FC04A7EECFFF8497FA2497FA76D5BA26D5BEC3FE06E5A315479D340
>63 D<171F4D7E4D7EA24D7EA34C7FA24C7FA34C7FA34C7FA24C7FA34C8083047F80167E
8304FE804C7E03018116F8830303814C7E03078116E083030F814C7E031F81168083033F
8293C77E4B82157E8403FE824B800201835D840203834B800207835D844AB87EA24A83A3
DA3F80C88092C97E4A84A2027E8202FE844A82010185A24A820103854A82010785A24A82
010F855C011F717FEBFFFCB600F8020FB712E0A55B547BD366>65
D<BA12C019FEF1FFC01AF01AFCD8000701F0C7000313FFDE007F7F737F070F7F737F8785
87858785A287A84F5BA263616361634F5B4F5B077F90C7FC4E485A060713F892B812E097
C8FC861AF003F0C7000313FE9539003FFF80070F13E0737F07017F87737F747E1C807413
C0A27413E0A31CF0A386A362A31CE0A2621CC0A250138097B5FC1C004F5B19074F5B073F
13F04EB55ABC128098C7FC1AF81AC007F8C8FC54527CD160>I<932601FFFCEC01C0047F
D9FFC013030307B600F81307033F03FE131F92B8EA803F0203DAE003EBC07F020F01FCC7
383FF0FF023F01E0EC0FF94A01800203B5FC494848C9FC4901F882494982494982494982
4949824990CA7E494883A2484983485B1B7F485B481A3FA24849181FA3485B1B0FA25AA2
98C7FC5CA2B5FCAE7EA280A2F307C07EA36C7FA21B0F6C6D1980A26C1A1F6C7F1C006C6D
606C6D187EA26D6C606D6D4C5A6D6D16036D6D4C5A6D6D4C5A6D01FC4C5A6D6DEE7F806D
6C6C6C4BC7FC6E01E0EC07FE020F01FEEC1FF80203903AFFE001FFF0020091B612C0033F
93C8FC030715FCDB007F14E0040101FCC9FC525479D261>I<BA7E19FCF1FF801AF01AFC
D8000701F0C7000F13FF060014C0071F7F070713F807017F737F747E747F747F86747F74
7F8886888688A2757EA31D8087A21DC0A51DE0A387A963A31DC0A51D80A2631D00A3515A
A2646264505B6264505B505B5090C7FCF2FFFE4F5B07075B071F5B96B512C0060F91C8FC
BB5A1AF01AC007FCC9FC19805B527CD167>I<BC1280A5D8000701F8C7000114C0F0001F
19071901851A7F1A3F1A1FA2F20FE0A21A07A31A03A318F81BF01A01A497C7FC1701A317
031707170F177F92B6FCA59238F8007F170F170717031701A317001B3EA31B7CA395C8FC
A21BFCA21BF8A21A01A31A031BF01A071A0FA21A1F1A3FF27FE0F101FF1907191F0603B5
FCBCFCA21BC0A34F517CD058>I<BB12FEA5D8000701F8C700077FF0007F191F19078585
8586861B80A21A1FA31A0FA41BC006F81307A497C7FCA31701A317031707170F177F92B6
FCA59238F8007F170F170717031701A31700A795C9FCB3B812F8A54A517CD055>I<9326
01FFFCEC01C0047FD9FFC013030307B600F81307033F03FE131F92B8EA803F0203DAE003
EBC07F020F01FCC7383FF0FF023F01E0EC0FF94A01800203B5FC494848C9FC4901F88249
49824949824949824949824990CA7E494883A2484983485B1B7F485B481A3FA24849181F
A3485B1B0FA25AA298C8FC5CA2B5FCAE6C057FB712E0A280A36C94C7003FEBC000A36C7F
A36C7FA27E6C7FA26C7F6C7FA26D7E6D7F6D7F6D6D5E6D7F6D01FC93B5FC6D13FF6D6C6D
5C6E01F0EC07FB020F01FEEC1FF10203903AFFF001FFE0020091B6EAC07F033FEE001F03
0703FC1307DB007F02E01301040149CAFC5B5479D26A>I<B8D8C003B8FCA5D8000701F8
C9001FEBE000B3AE92BAFCA503F8C9121FB3B1B8D8C003B8FCA560527CD169>I<B812C0
A5D8000701F8C7FCB3B3B3B2B812C0A52A527CD132>I<B800C091B612F8A5D8000701F8
C90003EBF8009738007F8051C7FC505AF203F8F20FF0505A505A505A50C8FCF101FCF107
F84F5A4F5A4F5A4F5A07FEC9FCF003FC4E5A4E5A4E5A4E5A4E5ADD01FECAFC4D5A4D5A4D
5A4D7E173F4D7E4C487E4C7F5E4C804C804C80EEFF7F9226F9FE3F7FDBFBFC809226FFF8
1F7F4C7EDCC0077F0480804C7E4B6D804B6D804B8284727F727F8684727F727F87847280
87737F85737F87737F85737F88857380747F888697B512FCB800C0013FECFFFEA55F527C
D169>75 D<B812F8A5D8000701F8CAFCB3B3A91A7CA41AFC1AF8A51901A31903A219071A
F0190FA2191F193F197F19FF180360183F4DB5FCBB12E0A546527CD151>I<B600FC073F
B512FE6F61A26F96B6FCA2D80007F5C00070EF01EFA202EF6DEF03CFA202E76DEF078FA2
02E36DEF0F0FA202E16D171EA302E06D173CA26F6C1778A26F6C17F0A26F6DED01E0A26F
6DED03C0A36F6DED0780A26F6DED0F00A26F6D151EA26F6D5DA3706C5DA2706C5DA2706D
495AA2706D495AA2706D495AA3706D49C7FCA2706D131EA2706D5BA2716C5BA3716C5BA2
71EB81E0A271EBC3C0A271EBE780A27101FFC8FCA3715BA2715BA2725AA2725AA2D93FFC
6F5AB74DB712FEA2725AA2725A77527CD180>I<B600FC93B7FC8181A282D800076E9239
003FFC0070EE07E08282A28202EF7F02E77F02E380A202E18002E0806F7F6F7F6F7FA26F
7F6F7F6F806F80A26F80707F707F707F707FA2707F7080708070808583717F717F717F71
7FA27114807114C07114E07213F07213F8A27213FC7213FE7213FF721487A27214C77214
E77313F77313FF85A285858585A28586868686A286868686A2D93FFC187FB7173F1B1F1B
0F1B07755A60527CD169>I<93380FFFC00303B6FC031F15E092B712FC0203D9FC0013FF
020F01C0010F13C0023F90C7000313F0DA7FFC02007F494848ED7FFE4901E0ED1FFF4949
6F7F49496F7F4990C96C7F49854948707F4948707FA24849717E48864A83481B804A8348
1BC0A2481BE04A83A2481BF0A348497113F8A5B51AFCAF6C1BF86E5FA46C1BF0A26E5F6C
1BE0A36C6D4D13C0A26C6D4D1380A26C1B006C6D4D5A6E5E6C626D6C4C5B6D6D4B5B6D6D
4B5B6D6D4B5B6D6D4B5B6D6D4B90C7FC6D6D4B5A6D01FF02035B023F01E0011F13F0020F
01FC90B512C0020390B7C8FC020016FC031F15E0030392C9FCDB001F13E0565479D265>
I<BAFC19F819FF1AE086D8000701F0C7001F13FC060113FF726C13807313C0070F13E01B
F0857313F81BFCA27313FEA41BFFA81BFEA31BFC61A21BF84F13F04F13E0614F13C04F13
004E485A061F5B92B812F01AC04FC7FC19E003F8CBFCB3AEB812C0A550527CD15C>I<93
380FFFC00303B6FC031F15E092B712FC0203D9FC0013FF020F01C0010F13C0023F90C700
0313F0DA7FFC02007F902601FFF0ED3FFE49496F7E49496F7F49496F7F4990C96C7F4948
707F4948707F01FF854A177F48864849717EA24849711380A2481BC04A83481BE0A24A83
481BF0A3481BF8A291CB7EA3B51AFCAF6C1BF8A26E5FA36C1BF0A36C6D4D13E0A36C1BC0
6E5F6C1B806E5F6CDB01FE16006C6D902607FF80495A4C13E06C6D013F6D495A017F9126
7F03F85C6D6C90277C00FC015B6D6C49D97E035B6D01806E485B6D6D48D91F8F5B6D01E0
039F90C7FC6D01F06EB45A6DD9FCF85DDA3FFF6E13F0020F6D4913C0020301FF90B5C8FC
020091B512FC031F180C0303181EDB001FEBE3FE93C7EA01FF74133E74137E7413FEF2F8
077290B5FC1CFCA285A21CF8A2851CF07314E0A27314C0731480731400735B9638007FF8
F21FE0576A79D265>I<B912F0F0FF8019F819FF1AC0D8000701F0C714F0060F7F060113
FE727F737F737F85737F87A2737FA387A863A2616363A24F5B4F5B4F90C8FC4F5A06035B
060F13F095B512C092B8C9FC19F819E019F89226F0000313FE9439007FFF80727F727F72
7F727F727F8684A28684A787A71D1C75133EA38575137E73157C7513FC731401B86C6D90
38F803F807039038FE07F07390B512E0736C14C0080F1400CEEA7FFC5F537CD164>I<91
260FFF80130791B500F85B010702FF5B011FEDC03F49EDF07F9026FFFC006D5A4801E0EB
0FFD4801800101B5FC4848C87E48488149150F001F824981123F4981007F82A28412FF84
A27FA26D82A27F7F6D93C7FC14C06C13F014FF15F86CECFF8016FC6CEDFFC017F06C16FC
6C16FF6C17C06C836C836D826D82010F821303010082021F16801400030F15C0ED007F04
0714E01600173F050F13F08383A200788200F882A3187FA27EA219E07EA26CEFFFC0A27F
6D4B13806D17006D5D01FC4B5A01FF4B5A02C04A5A02F8EC7FF0903B1FFFC003FFE0486C
90B65AD8FC0393C7FC48C66C14FC48010F14F048D9007F90C8FC3C5479D24B>I<003FBC
1280A59126C0003F9038C0007F49C71607D87FF8060113C001E08449197F49193F90C817
1FA2007E1A0FA3007C1A07A500FC1BE0481A03A6C994C7FCB3B3AC91B912F0A553517BD0
5E>I<B800C00103B612FCA5D8000701F8CAEBF000F31F80B3B3B11B3FA26D97C7FC8163
7F1B7E6D6D17FE505A6E7E505A6E6D15076E4D5A6E6D4B5A6E6D4B5A6E01F84B5A6E6DDA
03FFC8FC6E6CB46CEB0FFE6F9039F001FFF8030F90B65A030316C0DB007F92C9FC040F14
F8DC007F13805E537CD167>I<B700FE031FB512FEA5D8001F01F0CA383FFE00F307F06D
626F170F6D62811B1F6D6D601B3F6D97C7FC6F5F6D197E821BFE6E6D5E1A016E6D5E1A03
6E60701507A26E6D5E1A0F6E6D5E1A1F6E6070153FA26E6D93C8FC626E6E147E1AFE6F5E
711301A26F6D5C19036F6D5C19076F5E71130FA26F6D5C191F6F6D5C193F6F93C9FC715B
A26FEC807E19FE706D5A18C1705C18E3705C18F318F770EBFFE0A2705CA2705CA37091CA
FCA2705BA2715AA3715AA2715AA2715A715A5F537DD166>I<B700FC017FB600FE91B612
F0A5D8003F01C0C8001F01E0C9EBF8006F71EE0FC06D7161876F1C1F6D7196C7FC6F8373
606D1E3E6F836D7160876F1CFC6D666F4B801F016D66704A806E525A88704A17076E059F
5F70021F80080F160F6E6570023F806EDC3E074CC8FC8870027E5F6EDC7C03163E7002FC
804F6C167E6E1C7C700101814F6C16FC6E745B70010317016E4C6D5D060716C00580496D
14036F63DDC00F16E04F6D14076F07F05BDDE01F170F6F92C76C5D1DF8DDF03E6E141F6F
98C9FCDDF87E16FC067C6E5C6FF1FE3EDDFCFC177E6F4A6E147C1DFFDDFFF06E14FC6F62
A24E816F62A270496F5BA24E817061A295C97E7061A270487090CAFCA37048705AA24D16
01040360A27048705A84537DD18B>I<003FB7D88003B7FCA5D8000749C8000701F8C7FC
6D6D9238007F806D6E93C8FC7015FE6D17016E6D5D704A5A6E16076E6D4A5A6E6D5D4F5A
6E6D143F6E6D4A5A7191C9FC6E16FE6EECC00171485A6F5D6F6D485A6FEBF80F71485A6F
5D6F6D485AEFFF7F6F4ACAFC6F5C6F5CA2705B705B8482707F707FA2707F7080855E4C80
855E4C80DC3FCF7F058F7FEE7F074C6C7FDB01FE814C7E4B486C8003076E7F4B48814C7F
4B486D7F033F824C7F4BC76C7F4B6E7F4A5A4B6E804A486E800207844A48814B6F7F4A48
83023F824A486F7F92C96C7F02FE840101830103718090263FFFC084B76C0103B712F8A5
5D527CD166>I<EC7FFF0107B512F0013F14FE90B77E48D9E00F7F2703FE000113F0486C
6D7F6EEB3FFC48826E131F83707FA36C496D7FA26C90C7FC6C5AC9FCA6037FB5FC020FB6
FC91B7FC01071487013FEBF0074913803901FFFC004813F0485B485B485B4890C7FC5A5B
A2485AA45EA26D5C007F151D163D6C6C02797F6C6D01F113F86C9026C003E1EBFFE06C90
26F81FC014F06C90B5487EC6ED001F011F01FC010713E0010101E090C8FC3C387CB641>
97 D<EB3FF0B5FCA51203C6FCB3A4923801FFE0030F13FE033FEBFFC092B612F002F301
017F913AF7F8003FFEDAFFE0EB0FFF03806D7F92C76C7F4A6E7F4A824A6E7FA2727EA285
A28584A31A80AC1A00A44E5AA36118FF616E4A5BA26E4A5B6E4A5B6F495BDACFC04990C7
FCDA87F0EB7FFC913A03FE03FFF849C6B612E0496D148049011F01FCC8FC90C7000313C0
41547BD24B>I<913801FFF8021FEBFF8091B612F0010315FC010F9038C00FFE903A1FFE
0001FFD97FFC491380D9FFF05B4817C048495B5C5A485BA2486F138091C7FC486F130070
5A4892C8FC5BA312FFAD127F7FA27EA2EF03E06C7F17076C6D15C07E6E140F6CEE1F806C
6DEC3F006C6D147ED97FFE5C6D6CEB03F8010F9038E01FF0010390B55A01001580023F49
C7FC020113E033387CB63C>I<4DB47E0407B5FCA5EE001F1707B3A4913801FFE0021F13
FC91B6FC010315C7010F9038E03FE74990380007F7D97FFC0101B5FC49487F4849143F48
4980485B83485B5A91C8FC5AA3485AA412FFAC127FA36C7EA37EA26C7F5F6C6D5C7E6C6D
5C6C6D49B5FC6D6C4914E0D93FFED90FEFEBFF80903A0FFFC07FCF6D90B5128F0101ECFE
0FD9003F13F8020301C049C7FC41547CD24B>I<913803FFC0023F13FC49B6FC010715C0
4901817F903A3FFC007FF849486D7E49486D7E4849130F48496D7E48178048497F18C048
8191C7FC4817E0A248815B18F0A212FFA490B8FCA318E049CAFCA6127FA27F7EA218E06C
EE01F06E14037E6C6DEC07E0A26C6DEC0FC06C6D141F6C6DEC3F806D6CECFF00D91FFEEB
03FE903A0FFFC03FF8010390B55A010015C0021F49C7FC020113F034387CB63D>I<ED3F
FC0203B5FC020F14C0023F14E09139FFF81FF0499038C03FF849EB807F49903800FFFC49
5A495AA2495AA2EE7FF8495AEE3FF0EE0FC093C7FCAEB712E0A526007FF8C8FCB3B3A700
7FB512FEA52E547CD329>I<DA3FFF14FF0103B5D8F00713C0010FDAFC1F13E0013FECFF
7F90267FFC0F9038FF9FF09026FFE001EBF83F48496C13E0484990387FF01F4890C7D83F
F813E0489338FC0FC0F0078048486E6CC7FCA2003F82A9001F5EA26C6C4A5AA26C5E6C6D
495A6C6D495A6C6D485BDAFC0F5B4890B6C8FCD803EF14FC01C314F02607C03F90C9FC91
CBFCA2120FA37FA213F813FE90B7FC6C16F817FF18C06C836C836C836D828448B9FC1207
4848C700031480D81FF8EC003F4848150748486F13C083485A83A56D5D007F18806D5D00
3F18006C6C4B5AD80FFEED1FFC6C6C6CEC7FF86C01E049485A6C01FE011F5B6C6CB71280
010F03FCC7FC010115E0D9000F01FCC8FC3C4F7CB543>I<EB3FF0B5FCA51203C6FCB3A4
EE1FFC93B512C0030314F0030F8092391FE07FFC92393F001FFE037C8003F07FDAF1E081
ECF3C0DAF7807F8502FFC7FC5CA25CA45CB3ACB6D8F807B612C0A542537BD24B>I<137F
497E000313E0487FA2487FA76C5BA26C5BC613806DC7FC90C8FCADEB3FF0B5FCA512017E
B3B3A6B612E0A51B547BD325>I<157FEDFF80020313E04A13F0A24A13F8A76E13F0A26E
13E002001380ED7F0092C7FCADED1FF891B5FCA51401EC007FB3B3B1EA0780EA1FE0487E
487E486C13FF16F0A216E05C16C04A13806C4848130049485A003F495A000FB512F06C5C
0001148026001FFCC7FC256C87D329>I<EB3FF0B5FCA51203C6FCB3A54CB512F8A59339
003FFE00EF1FF0EF3FC04D5A4DC7FCEE03FEEE07F84C5A4C5AEE7FC04CC8FC4B5A4B5AED
0FF8ED1FE04B7E4B7EECF1FF02F37F02F77F91B6FC83159F030F7F02FE80DAF8077F4A7E
6F7F6F7F83707E82707F84707F707F82707F84707F177F717E4D13C0B6D8F003B6FCA540
537CD247>I<EB3FF0B5FCA512017EB3B3B3B1B612F0A51C537BD225>I<D93FF0D91FFCED
FFE0B591B500C0010713FE030302F0011F6D7E030F6E017F8092271FE07FFCD9FF037F92
2A3F001FFE01F8007F0003027C9126FF03E080C602F06DD90780137FDAF1E0038FC77FDA
F3C0159EDAF7806D01BC143F07FC8102FFC75C4A5EA24A5EA44A5EB3ACB6D8F807B6D8C0
3FB512FEA567367BB570>I<D93FF0EB1FFCB591B512C0030314F0030F8092391FE07FFC
92393F001FFE0003027C80C602F07FDAF1E081ECF3C0DAF7807F8502FFC7FC5CA25CA45C
B3ACB6D8F807B612C0A542367BB54B>I<913801FFE0021F13FE91B612C0010315F0010F
9038807FFC903A1FFC000FFED97FF86D6C7E49486D7F48496D7F48496D7F4A147F488348
90C86C7EA24883A248486F7EA3007F1880A400FF18C0AC007F1880A3003F18006D5DA26C
5FA26C5F6E147F6C5F6C6D4A5A6C6D495B6C6D495B6D6C495BD93FFE011F90C7FC903A0F
FF807FFC6D90B55A010015C0023F91C8FC020113E03A387CB643>I<903A3FF001FFE0B5
010F13FE033FEBFFC092B612F002F301017F913AF7F8007FFE0003D9FFE0EB1FFFC60280
6D7F92C76C7F4A824A6E7F4A6E7FA2717FA285187F85A4721380AC1A0060A36118FFA261
5F616E4A5BA26E4A5B6E4A5B6F495B6F4990C7FC03F0EBFFFC9126FBFE075B02F8B612E0
6F1480031F01FCC8FC030313C092CBFCB1B612F8A5414D7BB54B>I<90397FE003FEB590
380FFF80033F13E04B13F09238FE1FF89139E1F83FFC0003D9E3E013FEC6ECC07FECE780
14EF150014EE02FEEB3FFC5CEE1FF8EE0FF04A90C7FCA55CB3AAB612FCA52F367CB537>
114 D<903903FFF00F013FEBFE1F90B7FC120348EB003FD80FF81307D81FE0130148487F
4980127F90C87EA24881A27FA27F01F091C7FC13FCEBFFC06C13FF15F86C14FF16C06C15
F06C816C816C81C681013F1580010F15C01300020714E0EC003F030713F015010078EC00
7F00F8153F161F7E160FA27E17E07E6D141F17C07F6DEC3F8001F8EC7F0001FEEB01FE90
39FFC00FFC6DB55AD8FC1F14E0D8F807148048C601F8C7FC2C387CB635>I<143EA6147E
A414FEA21301A313031307A2130F131F133F13FF5A000F90B6FCB8FCA426003FFEC8FCB3
A9EE07C0AB011FEC0F8080A26DEC1F0015806DEBC03E6DEBF0FC6DEBFFF86D6C5B021F5B
020313802A4D7ECB34>I<D93FF8913801FFC0B50207B5FCA50003ED001FC61607B3AE5F
A35FA2017F5D173B177B6D6C14F3DC01E313F06D6CD907C3EBFFC0903A0FFFC03F836D90
B51203010114FE6D6C13F8020701E091C7FC42377BB54B>I<B600F00107B5FCA5000101
F8C8EA7FE06C6DED3F00A2017F163E6E157E013F167C6E15FC6D5E6F13016D5E8117036D
5E6F13076D5E6F130F6D5E6F131F6D93C7FC815F6E6C133E177E023F147C6F13FC6E5C16
816E5C16C3A26EEBE3E016E76E5C16FF6E5CA26E91C8FCA26F5AA36F5AA26F5AA26F5AA2
6F5A6F5A40367DB447>I<B6D8E07FB5D8C003B512C0A5000101F0C701F0C7381FF8006E
027FED07E06C715DA26E023F150F017F705DA26E181F013F4B6C92C7FC6E606D70143E94
B5FC6F177E6D4A6E137C03C001F315FC6D715B160303E001E114016D020702E05B03F013
C06D71485A160F03F8D9807F13076D05F85B93381F003F03FC160F027F4902FC5BDBFE3E
011F131F023F04FE90C8FC167EDBFF7C010F5B6E01FCECFF3E4C6D137E6E5FA24C7F6E5F
4C7F6E5FA24C7F6E5F4C147FA26E5F93C8123F6F5EA2033E6FC9FC5A367DB461>I<007F
B500F090387FFFFEA5C66C48C7000F90C7FC6D6CEC07F86D6D5C6D6D495A6D4B5A6F495A
6D6D91C8FC6D6D137E6D6D5B91387FFE014C5A6E6C485A6EEB8FE06EEBCFC06EEBFF806E
91C9FCA26E5B6E5B6F7E6F7EA26F7F834B7F4B7F92B5FCDA01FD7F03F87F4A486C7E4A48
6C7E020F7FDA1FC0804A486C7F4A486C7F02FE6D7F4A6D7F495A49486D7F01076F7E4948
6E7E49486E7FEBFFF0B500FE49B612C0A542357EB447>I<B600F00107B5FCA5C601F8C8
EA7FE06EED3F00A26D6C153E187E013F167C6E15FC6D5E6F13016D5E6F13036D5E811707
6D6D5C170F6D6D5C171F6D93C7FC6F5B027F143E6F137E023F147C6F13FCA26E6D5A1681
6EEBC1F016C36E5C16E76E5C16FF6E5CA26E91C8FCA36F5AA26F5AA26F5AA26F5AA26F5A
A35E150F5E151F93C9FC5DD81FC0133E486C137E486C137C486C13FC5D14015D14034A5A
6C48485A49485A263FC07FCAFCEB81FE6CB45A6C13F000035BC690CBFC404D7DB447>I<
001FB8FC1880A3912680007F130001FCC7B5FC01F0495B495D49495B495B4B5B48C75C5D
4B5B5F003E4A90C7FC92B5FC4A5B5E4A5B5CC7485B5E4A5B5C4A5B93C8FC91B5FC495B5D
4949EB0F805B495B5D495B49151F4949140092C7FC495A485E485B5C485E485B4A5C4849
5B4815074849495A91C712FFB8FCA37E31357CB43C>I E
%EndDVIPSBitmapFont
%DVIPSBitmapFont: Fv cmr10 10.95 82
/Fv 82 125 df<4AB4EB0FE0021F9038E03FFC913A7F00F8FC1ED901FC90383FF03FD907
F090397FE07F80494801FF13FF4948485BD93F805C137F0200ED7F00EF003E01FE6D91C7
FC82ADB97EA3C648C76CC8FCB3AE486C4A7E007FD9FC3FEBFF80A339407FBF35>11
D<4AB4FC021F13C091387F01F0903901FC0078D907F0131C4948133E494813FF49485A13
7F1400A213FE6F5A163893C7FCAA167FB8FCA33900FE00018182B3AC486CECFF80007FD9
FC3F13FEA32F407FBF33>I<4AB47E021F13F791387F00FFEB01F8903807F001EB0FE0EB
1FC0EB3F80137F14008101FE80AEB8FCA3C648C77EB3AE486CECFF80007FD9FC3F13FEA3
2F407FBF33>I<4AB4ECFF80021FD9C00F13E0913B7F01F03F80F8903C01F80078FE003C
D907F0D93FF8130E49484948131F49484948EB7F804948484913FF137F02005CA201FE92
C7FC6FED7F0070141C96C7FCAAF13F80BBFCA3C648C76CC7FC197F193FB3AC486C4A6CEB
7FC0007FD9FC3FD9FE1FB5FCA348407FBF4C>I<121EEA7F80EAFFC0A9EA7F80ACEA3F00
AC121EAB120CC7FCA8121EEA7F80A2EAFFC0A4EA7F80A2EA1E000A4179C019>33
D<001E130F397F803FC000FF137F01C013E0A201E013F0A3007F133F391E600F30000013
00A401E01370491360A3000114E04913C00003130101001380481303000EEB070048130E
0018130C0038131C003013181C1C7DBE2D>I<121EEA7F8012FF13C0A213E0A3127FEA1E
601200A413E013C0A312011380120313005A120E5A1218123812300B1C79BE19>39
D<1430147014E0EB01C0EB03801307EB0F00131E133E133C5B13F85B12015B1203A2485A
A2120F5BA2121F90C7FCA25AA3123E127EA6127C12FCB2127C127EA6123E123FA37EA27F
120FA27F1207A26C7EA212017F12007F13787F133E131E7FEB07801303EB01C0EB00E014
701430145A77C323>I<12C07E12707E7E121E7E6C7E7F12036C7E7F12007F1378137CA2
7FA2133F7FA21480130FA214C0A3130714E0A6130314F0B214E01307A614C0130FA31480
A2131F1400A25B133EA25BA2137813F85B12015B485A12075B48C7FC121E121C5A5A5A5A
145A7BC323>I<121EEA7F8012FF13C0A213E0A3127FEA1E601200A413E013C0A3120113
80120313005A120E5A1218123812300B1C798919>44 D<B512FEA617067F961E>I<121E
EA7F80A2EAFFC0A4EA7F80A2EA1E000A0A798919>I<ED0180ED03C01507A21680150FA2
16005DA2151E153EA2153C157CA2157815F8A25D1401A25D1403A25D1407A25D140FA24A
C7FCA2141E143EA2143C147CA2147814F8A25C1301A25C1303A25C1307A25C130FA291C8
FC5BA2131E133EA25BA2137813F8A25B1201A25B1203A25B1207A25B120FA290C9FC5AA2
121E123EA2123C127CA2127812F8A25A1260225B7BC32D>I<EB01FE90380FFFC090383F
03F090387C00F849137C48487F48487F4848EB0F80A2000F15C04848EB07E0A3003F15F0
A290C712034815F8A64815FCB3A26C15F8A56C6CEB07F0A3001F15E0A36C6CEB0FC0A26C
6CEB1F80000315006C6C133E6C6C5B017C5B90383F03F090380FFFC0D901FEC7FC263F7D
BC2D>I<EB01C013031307131F137FEA07FFB5FC139FEAF81F1200B3B3ACEB7FF0B612F8
A31D3D78BC2D>I<EB07FC90383FFF8090B512E03903F01FF83907C007FC390F0001FE00
1E6D7E001C1580003CEC7FC05AED3FE01270B4FC6DEB1FF07FA56C5A6CC7FC120CC813E0
153FA216C0157F168015FF16004A5A5D4A5A4A5A5D4A5A4A5A4AC7FC147E147C5C495A49
5A495A495A49C71270133E133C5B4914E0485A485A485A48C7120148B6FCA25A4815C0B7
FCA3243D7CBC2D>I<EB07FC90383FFF809038F80FE03901E003F839078001FCD80F007F
000E6D7E001E1580D81F80137F486C14C07FA27F5BA2121F6C5AC8138015FF1600A24A5A
A24A5A5DEC07E04A5A023FC7FCEB1FFCECFF809038000FE0EC07F86E7E6E7E6E7E1680ED
7FC0A216E0153FA216F0A2120C123F487E487EA316E0A249137F6CC713C01278EDFF807E
6C4913006C495A3907C007FC3903F80FF0C6B55A013F1380D907F8C7FC243F7CBC2D>I<
150E151E153EA2157EA215FE1401A21403EC077E1406140E141CA214381470A214E0EB01
C0A2EB0380EB0700A2130E5BA25B5BA25B5B1201485A90C7FC5A120E120C121C5AA25A5A
B8FCA3C8EAFE00AC4A7E49B6FCA3283E7EBD2D>I<00061403D80780131F01F813FE90B5
FC5D5D5D15C092C7FC14FCEB3FE090C9FCACEB01FE90380FFF8090383E03E090387001F8
496C7E49137E497F90C713800006141FC813C0A216E0150FA316F0A3120C127F7F12FFA4
16E090C7121F12FC007015C012780038EC3F80123C6CEC7F00001F14FE6C6C485A6C6C48
5A3903F80FE0C6B55A013F90C7FCEB07F8243F7CBC2D>I<EC1FE0ECFFF8903803F03E90
380FC00F90391F000780133E017EEB1FC049133F4848137F12035B12074848EB3F80ED1F
00001F91C7FC5BA2123FA3485AA214FE903887FF8039FF8F07E090389C01F09038B800FC
01B0137E13F0497F16804914C0A2ED1FE0A34914F0A5127FA6123F6D14E0A2121FED3FC0
A26C6C1480A20007EC7F006C6C137E6C6C5B6C6C485A90387E07F06DB45A010F1380D903
FCC7FC243F7CBC2D>I<1238123C123F90B612FCA316F85A16F016E00078C712010070EC
03C0ED078016005D48141E151C153C5DC8127015F04A5A5D14034A5A92C7FC5C141EA25C
A2147C147814F8A213015C1303A31307A3130F5CA2131FA6133FAA6D5A0107C8FC26407B
BD2D>I<EB03FC90381FFF8090387C07E09038F001F83901E0007C48487F48487F48C7FC
ED0F80121E16C0003E1407A4123FA26DEB0F807F6C6C131F6D140001FC133E6C6C5B9038
FF80786C6D5A6CEBF3E06CEBFF806C91C7FC133F6D13C06D7F013F13F801787F48486C7E
3903E01FFF48486C1380260F800313C048487E489038007FE0003E143F007E141F007CEC
0FF01507481403A31501A46C15E0007C1403A2007E15C06C14076CEC0F806DEB1F006C6C
133ED807F05B3901FC03F86CB512E0011F1380D903FCC7FC243F7CBC2D>I<EB03FCEB1F
FF90387E07C09038FC03F048486C7E48486C7E4848137C000F147E4848137F81003F1580
5B007F15C0A2151F12FF16E0A516F0A5127F153FA36C7EA2001F147F120F6C6C13FF6D13
DF000313013900F8039F90387E0F1FD91FFE13E0EB07F090C7FCA2ED3FC0A41680157FD8
0F801400487E486C13FEA24A5A5D49485AEB8007391E000FE0001F495A260FC07FC7FC38
03FFFE6C13F838003FC0243F7CBC2D>I<121EEA7F80A2EAFFC0A4EA7F80A2EA1E00C7FC
B3121EEA7F80A2EAFFC0A4EA7F80A2EA1E000A2779A619>I<121EEA7F80A2EAFFC0A4EA
7F80A2EA1E00C7FCB3121E127FEAFF80A213C0A4127F121E1200A412011380A312031300
5A1206120E120C121C5A1230A20A3979A619>I<EB1FF890B5FC3903E01FC0390F0007F0
001EEB03F848EB01FC4814FE140000FE14FF7E7FA46CC7FC123EC7EA01FEA2EC03FCEC07
F815F0EC0FC0EC1F80EC3F00143E5C147814F85C13015CA2495AA25CAB91C7FC90C8FCA8
EB0780EB1FE0A2497EA46D5AA2EB078020407BBF2B>63 D<15074B7EA34B7EA34B7EA34B
7EA34B7E15E7A2913801C7FC15C3A291380381FEA34AC67EA3020E6D7EA34A6D7EA34A6D
7EA34A6D7EA34A6D7EA349486D7E91B6FCA249819138800001A249C87EA24982010E157F
A2011E82011C153FA2013C820138151FA2017882170F13FC00034C7ED80FFF4B7EB500F0
010FB512F8A33D417DC044>65 D<B712FCEEFF8017F00001903980000FF86C6CC7EA03FE
707E701380EF7FC0EF3FE0A2EF1FF0A218F8A3170F171FA318F0A2EF3FE0177F18C0EFFF
804C1300EE03FCEE0FF8EE7FE091B6C7FC17E091C7EA07FCEE01FE933800FF80EF7FC0EF
3FE0EF1FF018F8170F18FC1707A218FEA718FC170FA2EF1FF818F0173FEF7FE0EFFFC004
03138048486C90380FFE00B85A17E094C7FC373E7DBD40>I<DB3FF01306912603FFFE13
0E020F9038FF801E913A3FF007E03E9139FF8000F8D903FEC7EA7C7ED907F8EC1EFE4948
140FD93FE0140749481403495A91C812014848150012034848167E5B000F173EA2484816
1EA2123F5B180E127FA349160012FFAC127F7F180EA2123FA27F001F171E181C6C7EA200
07173C6D16386C6C1678000117706C6C16F06EEC01E06D6C15C06D6C1403D90FF0EC0780
6D6CEC1F00D903FE143E902600FF8013F891393FF007F0020FB512C0020391C7FC913800
3FF037427BBF42>I<B712FCEEFF8017E000019039C0001FF86C6C48EB03FEEE00FF717E
717EEF0FE084717E717E170184717EA21980187F19C0A3F03FE0A519F0AB19E0A5F07FC0
A21980A218FF19004D5AA24D5A6017074D5A4D5AEF7FC04DC7FCEE03FE48486CEB1FF8B8
5A178004FCC8FC3C3E7DBD45>I<B912E0A300019038C000016C6C48EB001FEF0FF01703
A217011700A31870A41838161CA41800A2163CA2167C16FC150391B5FCA3EC8003150016
7C163CA2161CA21807A3180E93C7FCA4181E181CA2183CA2187CA218F817011703170717
1F48486CEB01FFB912F0A3383E7DBD3E>I<B91280A300019038C000036C6C48EB007FEF
1FC0170F1707A21703A31701A4EF00E0A21638A31800A31678A216F81501150791B5FCA3
EC8007150115001678A21638A693C8FCAF3801FFE0B612F0A3333E7DBD3B>I<DB3FE013
0C912603FFFE131C021F9038FF803C913A7FF00FC07C9139FF0001F0D903FC90380078FC
4948143DD91FE0141F4948140F4948140701FF15034890C8FC491501485A000716005B00
0F177C5B001F173CA2485AA2181C127FA25B95C7FC12FFAB041FB512F0127FA26D913900
0FFE00EF03FC123FA27F121FA26C7EA212077F12036C7E7F6C7F6D6C14076D7E6D6C140F
D907F8141ED903FEEC3C7C902600FF80EBF83C913A7FF007F01C021FB5EAC00C020391C8
FC9138003FF03C427BBF47>I<B6D8C01FB512F8A3000101E0C7383FFC0026007F80EC0F
F0B3A691B7FCA30280C7120FB3A92601FFE0EC3FFCB6D8C01FB512F8A33D3E7DBD44>I<
B612F0A3C6EBF000EB3FC0B3B3B2EBFFF0B612F0A31C3E7EBD21>I<011FB512FCA3D900
0713006E5A1401B3B3A6123FEA7F80EAFFC0A44A5A1380D87F005B007C130700385C003C
495A6C495A6C495A2603E07EC7FC3800FFF8EB3FC026407CBD2F>I<B600C090387FFFFC
A3000101E0C7000F138026007F80913807FE0018F818E0604D5A4DC7FC173E5F5F4C5A4C
5A4C5A4C5A4CC8FC163E5E5E4B5A4B5AED07804B7E151F4B7E4B7E15FF913881EFF89138
83C7FCEC878791388F03FE91389E01FF14BCDAF8007F4A6D7E5C4A6D7E4A6D7EA2707E70
7EA2707E707EA2707F717E84173F717E717EA2717E848419802601FFE04A13C0B600C090
B6FCA3403E7DBD47>I<B612F8A3000101E0C9FC38007F80B3B0EF0380A517071800A45F
A35FA25F5F5F4C5A160748486C133FB8FCA3313E7DBD39>I<B500C093383FFFF0A30001
6D93387FF800D8007F18E0D977F016EFA3D973F8ED01CFA2D971FCED038FA3D970FEED07
0FA26E150E80A26E6C141CA36E6C1438A26E6C1470A36E6C14E0A26E6CEB01C0A36E6CEB
0380A36E6CEB0700A2037F130EA36F6C5AA26F6C5AA36F6C5AA25FED07F0A2923803F9C0
A36FB45AA26F90C7FCA213F8486C147ED807FFEF3FF8B500F8013C011FB512F0A34C3E7D
BD53>I<B56C91B512F88080D8007F030713006EEC01FC6E6E5A1870EB77FCEB73FEA2EB
71FF01707FA26E7E6E7EA26E7E6E7EA26E7E6E7EA26E7E6E7FA26F7E6F7EA26F7E6F7EA2
6F7E6F7EA26F7E6F1380A2EE7FC0EE3FE0A2EE1FF0EE0FF8A2EE07FCEE03FEA2EE01FF70
13F0A2177F173FA2171F170FA2170701F81503487ED807FF1501B500F81400A218703D3E
7DBD44>I<ED7FE0913807FFFE91391FC03F8091397E0007E04948EB03F8D907F0EB00FE
4948147F49486E7E49486E7E49C86C7E01FE6F7E00018349150300038348486F7EA24848
6F7EA2001F188049167F003F18C0A3007F18E049163FA300FF18F0AC007F18E06D167FA4
003F18C0A26C6CEEFF80A36C6C4B1300A26C6C4B5A00035F6D150700015F6C6C4B5A6D5E
6D6C4A5A6D6C4A5A6D6C4AC7FC6D6C14FED901FCEB03F8D9007FEB0FE091391FC03F8091
2607FFFEC8FC9138007FE03C427BBF47>I<B712F8EEFF8017E000019039C0003FF86C6C
48EB07FCEE01FE707EEF7F80EF3FC018E0A2EF1FF0A218F8A818F0A2EF3FE0A218C0EF7F
80EFFF004C5AEE07FCEE3FF091B612C04CC7FC0280C9FCB3A73801FFE0B612C0A3353E7D
BD3E>I<B712C016FCEEFF800001D9C00013E06C6C48EB1FF0EE07FCEE01FE707E84717E
A2717EA284A760177F606017FF95C7FCEE01FCEE07F8EE1FE0EEFF8091B500FCC8FC16F0
91388001FCED003FEE1FC0707E707E83160383160183A383A484A4F0C004190EA28218E0
057F131E2601FFE0161CB600C0EB3FF094381FF83805071370CA3801FFE09438003F803F
407DBD43>82 D<D907FC130C90391FFF801C017FEBF03C3901FC03F83A03F0007E7CD807
C0EB1FFC4848130F001F140748C71203003E1401007E1400A2007C157C12FCA2163CA36C
151CA27EA26C6C14007F7FEA3FF8EBFF806C13F86CEBFF806C14F06C14FC6C14FF6C15C0
013F14E0010714F0EB007F020713F89138007FFC150FED07FE15031501ED00FFA200E015
7FA3163FA27EA3163E7E167E6C157C6C15FC6C15F86D13016DEB03F06DEB07E0D8F9FCEB
0FC03AF07F803F8090391FFFFE00D8E00713F839C0007FC028427BBF33>I<003FB91280
A3903AF0007FE001018090393FC0003F48C7ED1FC0007E1707127C00781703A300701701
A548EF00E0A5C81600B3B14B7E4B7E0107B612FEA33B3D7DBC42>I<B600C090B512F8A3
000101E0C70007130026007F80EC01FC715A1870B3B3A4013F16F06E5DA21701011F5E80
010F15036E4A5A010793C7FC6D6C5C6D6C141E6D6C5C027F14F86E6C485A91390FF00FE0
0203B51280020049C8FCED1FF03D407DBD44>I<B691380FFFFEA3000301E0020113E06C
01809138007F806CEF3F00017F163E181C6E153C013F1638A26E1578011F1670A26D6C5D
A26E140101075EA26E140301035EA26D6C4AC7FCA2806D150EA26F131E027F141CA26F13
3C023F1438A26E6C5BA26F13F0020F5CA2EDF80102075CA26E6C485AA2EDFE07020191C8
FCA26F5A6E130EA2ED7F9CA216DCED3FF8A36F5AA36F5AA26F5AA36F5A3F407EBD44>I<
B500FE017FB5D88007B5FCA3000301C0010101E0C713F86C90C849EC3FE07148EC0F807E
7215006E143F017F190E84A26D6C60A24D7E6D6C60A2EFE7F86D6C60A2933801C3FC6E18
F001076104037F6E0281140101036104077F17006D6C4D5AA2040EEB7F806D6C4DC7FCA2
4CEB3FC0DA7F80160EA24CEB1FE003C0161E023F171C047814F0DBE070010F133C021F17
3804F014F84C1307DA0FF05EA2DBF1C0EB03FCDA07F95EA2DBFB80EB01FEDA03FF6F5AA2
93C8FCA26E5FA24B157F020094C8FCA24B81037C153EA20378151E0338151C58407EBD5D
>I<007FB5D8C003B512E0A3C649C7EBFC00D93FF8EC3FE06D48EC1F806D6C92C7FC171E
6D6C141C6D6C143C5F6D6C14706D6D13F04C5ADA7FC05B023F13036F485ADA1FF090C8FC
020F5BEDF81E913807FC1C163C6E6C5A913801FF7016F06E5B6F5AA26F7E6F7EA2828215
3FED3BFEED71FF15F103E07F913801C07F0203804B6C7EEC07004A6D7E020E6D7E5C023C
6D7E02386D7E14784A6D7E4A6D7F130149486E7E4A6E7E130749C86C7E496F7E497ED9FF
C04A7E00076DEC7FFFB500FC0103B512FEA33F3E7EBD44>I<B66C0103B51280A3000101
F0C8EBF8006C6C48ED3FC0725A013F041EC7FC6D7E606D6C15386D6C1578606D6C5D6E14
016D5E6D6D1303606E6C49C8FC6E6C5B170E6E6C131E171C6E6C5B6E6C137817706E6C13
F06F5B6E13016EEB83C05FED7FC7DB3FE7C9FC16EFED1FFE5E150F6F5AB3A4ED1FFC020F
B512FCA3413E7FBD44>I<EAFFFCA4EAF000B3B3B3B3ABEAFFFCA40E5B77C319>91
D<486C13C00003130101001380481303000EEB070048130E0018130C0038131C00301318
0070133800601330A300E01370481360A400CFEB678039FFC07FE001E013F0A3007F133F
A2003F131F01C013E0390F0007801C1C73BE2D>I<EAFFFCA4EA003CB3B3B3B3ABEAFFFC
A40E5B7FC319>I<EA0180120313005A120E5A12181238123012701260A312E05AA412CF
EAFFC013E0A3127FA2123F13C0EA0F000B1C7ABE19>96 D<EB0FF8EBFFFE3903F01F8039
078007E0000F6D7E9038E001F8D81FF07F6E7EA3157F6C5AEA0380C8FCA4EC1FFF0103B5
FC90381FF87FEB7F803801FC00EA07F8EA0FE0485A485AA248C7FCEE038012FEA315FFA3
007F5BEC03BF3B3F80071F8700261FC00E13CF3A07F03C0FFE3A01FFF807FC3A003FC001
F0292A7DA82D>I<EA01FC12FFA3120712031201B1EC03FC91381FFF8091387C07E09039
FDE001F09039FFC000FC4A137E91C77E49158049141F17C0EE0FE0A217F0A2160717F8AA
17F0A2160FA217E0161F17C06D1580EE3F006D5C6E13FE9039F3C001F89039F1E003F090
39E0780FC09026C03FFFC7FCC7EA07F82D407EBE33>I<49B4FC010F13E090383F00F801
7C131E4848131F4848137F0007ECFF80485A5B121FA24848EB7F00151C007F91C7FCA290
C9FC5AAB6C7EA3003FEC01C07F001F140316806C6C13076C6C14000003140E6C6C131E6C
6C137890383F01F090380FFFC0D901FEC7FC222A7DA828>I<ED01FC15FFA31507150315
01B114FF010713E190381F80F990387E003D49131FD803F81307485A4913034848130112
1F123F5B127FA290C7FCA25AAA7E7FA2123FA26C7E000F14037F000714076C6C497E6C6C
497ED8007C017913F890383F01F190380FFFC1903A01FE01FC002D407DBE33>I<EB01FE
90380FFFC090383F03F09038FC01F848486C7E4848137E48487F000F158049131F001F15
C04848130FA2127F16E090C7FCA25AA290B6FCA290C9FCA67EA27F123F16E06C7E150100
0F15C06C6C13036DEB07806C6C1400C66C131E017E5B90381F80F8903807FFE0010090C7
FC232A7EA828>I<EC1FC0EC7FF8903801F83C903807E07E90380FC0FFEB1FC1EB3F8114
01137FEC00FE01FE137C1500AEB6FCA3C648C7FCB3AE487E007F13FFA320407EBF1C>I<
167C903903F801FF903A1FFF078F8090397E0FDE1F9038F803F83803F001A23B07E000FC
0600000F6EC7FC49137E001F147FA8000F147E6D13FE00075C6C6C485AA23901F803E039
03FE0FC026071FFFC8FCEB03F80006CAFC120EA3120FA27F7F6CB512E015FE6C6E7E6C15
E06C810003813A0FC0001FFC48C7EA01FE003E140048157E825A82A46C5D007C153E007E
157E6C5D6C6C495A6C6C495AD803F0EB0FC0D800FE017FC7FC90383FFFFC010313C0293D
7EA82D>I<EA01FC12FFA3120712031201B1EC01FE913807FFC091381E07E091387803F0
9138E001F8D9FDC07F148001FF6D7E91C7FCA25BA25BB3A6486C497EB5D8F87F13FCA32E
3F7DBE33>I<EA01E0EA07F8A2487EA46C5AA2EA01E0C8FCACEA01FC127FA31207120312
01B3AC487EB512F0A3143E7DBD1A>I<1478EB01FEA2EB03FFA4EB01FEA2EB00781400AC
147FEB7FFFA313017F147FB3B3A5123E127F38FF807E14FEA214FCEB81F8EA7F01387C03
F0381E07C0380FFF803801FC00185185BD1C>I<EA01FC12FFA3120712031201B292B512
80A392383FFC0016E0168093C7FC153C5D5D4A5AEC07C04A5A4AC8FC143E147F4A7E13FD
9038FFDFC0EC9FE0140F496C7E01FC7F496C7E1401816E7E81826F7E151F826F7EA28248
6C14FEB539F07FFFE0A32B3F7EBE30>I<EA01FC12FFA3120712031201B3B3B1487EB512
F8A3153F7DBE1A>I<2701F801FE14FF00FF902707FFC00313E0913B1E07E00F03F0913B
7803F03C01F80007903BE001F87000FC2603F9C06D487F000101805C01FBD900FF147F91
C75B13FF4992C7FCA2495CB3A6486C496CECFF80B5D8F87FD9FC3F13FEA347287DA74C>
I<3901F801FE00FF903807FFC091381E07E091387803F000079038E001F82603F9C07F00
01138001FB6D7E91C7FC13FF5BA25BB3A6486C497EB5D8F87F13FCA32E287DA733>I<14
FF010713E090381F81F890387E007E01F8131F4848EB0F804848EB07C04848EB03E0000F
15F04848EB01F8A2003F15FCA248C812FEA44815FFA96C15FEA36C6CEB01FCA3001F15F8
6C6CEB03F0A26C6CEB07E06C6CEB0FC06C6CEB1F80D8007EEB7E0090383F81FC90380FFF
F0010090C7FC282A7EA82D>I<3901FC03FC00FF90381FFF8091387C0FE09039FDE003F0
3A03FFC001FC6C496C7E91C7127F49EC3F805BEE1FC017E0A2EE0FF0A3EE07F8AAEE0FF0
A4EE1FE0A2EE3FC06D1580EE7F007F6E13FE9138C001F89039FDE007F09039FC780FC0DA
3FFFC7FCEC07F891C9FCAD487EB512F8A32D3A7EA733>I<02FF131C0107EBC03C90381F
80F090397F00387C01FC131CD803F8130E4848EB0FFC150748481303121F485A1501485A
A448C7FCAA6C7EA36C7EA2001F14036C7E15076C6C130F6C7E6C6C133DD8007E13799038
3F81F190380FFFC1903801FE0190C7FCAD4B7E92B512F8A32D3A7DA730>I<3901F807E0
00FFEB1FF8EC787CECE1FE3807F9C100031381EA01FB1401EC00FC01FF1330491300A35B
B3A5487EB512FEA31F287EA724>I<90383FC0603901FFF8E03807C03F381F000F003E13
07003C1303127C0078130112F81400A27E7E7E6D1300EA7FF8EBFFC06C13F86C13FE6C7F
6C1480000114C0D8003F13E0010313F0EB001FEC0FF800E01303A214017E1400A27E15F0
7E14016C14E06CEB03C0903880078039F3E01F0038E0FFFC38C01FE01D2A7DA824>I<13
1CA6133CA4137CA213FCA2120112031207001FB512C0B6FCA2D801FCC7FCB3A215E0A912
009038FE01C0A2EB7F03013F138090381F8700EB07FEEB01F81B397EB723>I<D801FC14
FE00FF147FA3000714030003140100011400B3A51501A31503120015076DEB06FF017E01
0E13806D4913FC90381FC078903807FFE00100903880FE002E297DA733>I<B539E00FFF
E0A32707FE000313006C48EB00FC5E00015D7F00005DA26D13016D5CA26D6C485AA2ECC0
07011F91C7FCA290380FE00EA2ECF01E0107131CA26D6C5AA2ECFC7801011370A2ECFEF0
01005BA2EC7FC0A36E5AA26EC8FCA3140E2B287EA630>I<B53BC3FFFE03FFF8A3290FFE
003FE00013C06C486D48EB3F806C4817006D010F141E00016F131C15076D163C00004A6C
1338A2017F5E4B7E151DD93F805DED3DFC1538D91FC04A5AED78FE9238707E03D90FE001
7F5BEDE03F02F0140701070387C7FC9138F1C01F02F9148F010315CE9138FB800F02FF14
DE6D15FCED00076D5DA24A1303027E5CA2027C1301023C5C023813003D287EA642>I<B5
39F01FFFE0A30003D9C00F1300C690388007F8D97F0013E002805BD93FC05B011F49C7FC
90380FE00EECF01E6D6C5A01035B6D6C5A6E5AEB00FF6E5A6E5A81141F814A7E81147BEC
F1FC903801E1FEECC0FF01037F49486C7ED90F007F011E6D7E013E130F496D7E01FC8048
6C80000F4A7EB539803FFFF8A32D277FA630>I<B539E00FFFE0A32707FE000313006C48
EB01FC6F5A00015D7F00005DA2017F495AA2EC8003013F5CA26D6C48C7FCA26E5A010F13
0EA26D6C5AA2ECF83C01031338A26D6C5AA2ECFEF001005BA2EC7FC0A36E5AA36EC8FCA2
140EA2141E141C143C1438A2147800181370127EB45BA2495AA248485AD87E07C9FCEA78
0EEA3C3CEA1FF8EA07E02B3A7EA630>I<001FB61280A2EBE0000180140049485A001E49
5A121C4A5A003C495A141F00385C4A5A147F5D4AC7FCC6485AA2495A495A130F5C495A90
393FC00380A2EB7F80EBFF005A5B484813071207491400485A48485BA248485B4848137F
00FF495A90B6FCA221277EA628>I<B812F0A22C0280982D>I<BE12C0A25A0280985B>I
E
%EndDVIPSBitmapFont
%DVIPSBitmapFont: Fw cmbx12 20.736 19
/Fw 19 120 df<BDFC1CFCF4FFC01DF81DFF1EC01EF88AC7003F91C96C14FF090315C0E1
007F800A0F14F80A03800A00800B3F7F7780778077800B018077808C8A787F787FA27880
8D8A8D8A8D8A8DA28D8AA28DA28BA28DA42280A38BA322C0B22280A367A32200A4699CB5
FCA269A3545CA2696669666966695491C7FC6668545B9BB55A65535C535C535C0B3F5C9A
B6C8FC5214FC0A0F5C0A3F5C0903B612C0097F5DBF48C9FC1EF81EE01E800BFCCAFC1DE0
52CBFC99CCFC82767AF594>68 D<BF12FCA48AA4C7003F0280C8123F1B01F3003F1C0776
7F1C008989898989A2891F8089A289A31E7FA21FC0A21E3FA3F20FF0A3F61FE0A49BC7FC
A21A1FA31A3FA21A7FA21AFF1903190F197F94B7FCA8943880007F190F190319001A7FA2
1A3FA21A1FA31A0FA997CBFCB3A9BBFCA86B757AF47A>70 D<96267FFFE01670063FB6ED
01F80503B700F01403053F04FC14074CB96C130F040706E0131F043F72133F93BA00FC13
7F0303DC00076D13FF030F03C09039003FFF814B02FCC8000713C3037F02E0030113F792
B600806F6CB5FC02034ACA121F4A02F8834A02E0834A4A1701027F4A8391B548CC7E494A
85495C4C854988494A85494A85495C8A4991CDFC90B54886A2484A1B7FA2481E3F5D481E
1F5D5A1F0FA2485CA3481E075DA2795A489BC9FCA45DA2B6FCB27EA26F0403BA12C0A47E
A3816C96C8000302F8C7FCA36C80A36C80A27E817E817E817F6D80827F6D806D806D8082
6D6E606D806E80021F6E5F6E02F05F6E806E02FE5F0200DAFFC05E6F02F04BB6FC031F02
FE030713CF6FDAFFE0021F138703039226FF8003B51201030093B6EAFC00043F4E133F04
0706E0131F04014E1307DC003F4CC71201050304F8EC0070DD003F038092C8FCDE007F01
F0CCFC827A75F798>I<001FC012F8A7481FFC03F0C76C91C7120F92C8EF007F02F81B1F
02E01B0702801B0191C984491D7F491D3F491D1FA2491D0FA2491D07007F1FFEA2491D03
A4491D01A700FF1FFF90CA85A6CB1A00B3B3B3AD4ABC12C0A8787479F387>84
D<92383FFFF80207B612E0027F15FC49B87E010717E0011F83499026F0007F13FC4948C7
000F7F90B502036D7E486E6D806F6D80727F486E6E7F8486727FA28684A26C5C72806C5C
6D90C8FC6D5AEB0FF8EB03E090CAFCA70507B6FC041FB7FC0303B8FC157F0203B9FC021F
ECFE0391B612800103ECF800010F14C04991C7FC017F13FC90B512F04814C0485C4891C8
FC485B5A485B5C5A5CA2B5FC5CA360A36E5DA26C5F6E5D187E6C6D846E4A48806C6D4A48
14FC6C6ED90FF0ECFFFC6C02E090263FE07F14FE00019139FC03FFC06C91B6487E013F4B
487E010F4B1307010303F01301D9003F0280D9003F13FC020101F8CBFC57507ACE5E>97
D<93387FFF80030FB512FC037FECFF804AB712E0020716F8021F16FE027FD9F8077F49B5
D8C000804991C7003F13E04901FC020F7F49496E7F49498049496E7F49496E7F90B55A48
727E92C914804884485B1BC048841BE0485BA27313F05AA25C5AA21BF885A2B5FCA391BA
FCA41BF002F8CCFCA67EA3807EA47E806CF103F0F207F86C7F1A0F6C6E17F06C191F6F17
E06C6E163F6D6DEE7FC06D6D16FF6D6D4B13806D6D4B13006D6D6CEC0FFE6D02E0EC3FFC
6D02F8ECFFF86D9126FFC00F5B023F91B65A020F178002034CC7FC020016F8031F15E003
0392C8FCDB000F13E04D507BCE58>101 D<F37F80922607FFFC913807FFE092B600E001
1F13F8020703FC017F13FC021FDBFF01B512FE027F16C349B800F7EBBFFF49DA803F9038
FFF83F010F9026FC000714C04901F00101EC007F49496D148049496E6D7E90B517E04B6E
15FE48F1F01F4891C86C9038F80FFCF307F098C7FC48496F7FA34885AB6C61A36C6D4B5B
A36C6E4A5B6C616F5C6D606D6D91B55A6D6D4991C8FC6D01FC01075B9226FF803F13F893
B65A4917C0D93F1F93C9FC020715FCD97E0015E0030701FCCAFC01FE90CDFCA412017FA2
80A280808014FE6C90B812C019FF1AF01AFC6DF0FF801BE06D851BFC6D856D856D1A806D
1AC05B011F1AE0137F48BC12F0000701FCC9FC4801E0040314F84849EE007F4849171F91
CB1207487313FC5B00FF855B86A56D60007F1BF86D60A26C6D4D13F06E5F6C6D4D13E06C
6D4D13C06C01FC94B512806C01FF04031400C602C0030F13FC6D01F8037F5B011FD9FFE0
011FB512E0010791B8128001014EC7FC6D6C17F8020F17C0DA007F03F8C8FC03014AC9FC
58727BCE61>103 D<903801FFFCB6FCA8C67E131F7FB3AD95380FFFE095B512FE05036E
7E050F15E0053F15F84D81932701FFF01F7F4CD900077FDC07FC6D80DC0FF06D80DC1FC0
7F4C48824CC8FC047E6F7F5EEDFDF85E03FF707F5EA25EA25EA293C9FCA45DB3B3A6B8D8
E003B81280A8617879F76C>I<EB01FCEB07FF011F13C0497F497F90B57EA24880A24880
A76C5CA26C5CA26D5B6D5B6D5B010790C8FCEB01FC90CAFCB2903801FFFC007FB5FCA8C6
7E131F7FB3B3B3A5B81280A8297979F835>I<EE01FCEE07FF041F13C04C13E04C13F093
B512F8A24B14FCA24B14FEA76F14FCA26F14F8A27013F07013E07013C004071300EE01FC
93C8FCB2EFFFFE92B6FCA8ED003F160F82B3B3B3B3A3EA01FCEA07FF487F487F487F486D
15FC5EB57EA218F85E18F018E05E6C494913C018804A90B512006C4A5B6C49485B6CD9E0
1F5B6C90B612E06C5EC693C7FC013F14F8010F14C09026007FFCC8FC379B8BF83B>I<90
3801FFFCB6FCA8C67E131F7FB3AE0603B612FEA8DE001F01F8C7FC070713804F90C8FCF1
3FFE4F5AF1FFF04E5B4E5B4E5B061F90C9FC4E5AF07FF84E5A4D5B05075B4D5B4D48CAFC
4D5A4D5A4D5A04035B4C7F4C7F5E4C7F4C7F03FDB6FC92B7FC858585A204F98004E0804C
804C7E4C6C7F4B6D7F4B824B7F7180718086837180727F8684727F728087847280728087
84737F737F87854F14C0B8D88007B712F0A85C787AF766>I<902601FFF891260FFFE093
383FFF80B692B500FE0303B512F805036E6C020F14FE050F03E0023F6E7E053F03F891B7
12E04D6F4982932701FFF01F6D0107D9C07F7F4CD900076D90270FFC001F7FDC07FC6D91
26801FF06D7FC66CDA0FF06D9126C03FC06D7F011FDA1FC06D4BC77E6D4A48DCE0FE834C
C8ECE1FC047E6FD9F1F86E804CEFF3F0DBF9F8EFF7E04C6003FB7001FF6F804C6015FF4C
95C9FCA24C5FA293C95CA44B60B3B3A6B8D8E003B8D8800FB712FEA8974E79CDA2>109
D<902601FFF891380FFFE0B692B512FE05036E7E050F15E0053F15F84D81932701FFF01F
7F4CD900077FDC07FC6D80C66CDA0FF06D80011FDA1FC07F6D4A48824CC8FC047E6F7F5E
EDF9F85E03FB707F5E15FF5EA25EA293C9FCA45DB3B3A6B8D8E003B81280A8614E79CD6C
>I<93381FFFE00303B6FC031F15E092B712FC020316FF020F17C0023FD9FC0014F091B5
00C0010F13FC4991C700037F4901FC02007F010F496F13C049496F7F49496F7F4B814949
6F7F90B5C96C7F4886A24849707F481B80A248497014C0A2481BE0A348497113F0A3481B
F8A5B51AFCAE6C1BF8A46C1BF06E94B5FCA36C1BE0A26C6D4C14C0A26C1B806E5E6C1B00
6C6E4B5BA26C6E4B5B6D6D4B5B6D6D4B5B6D6D4B5B6D6D92B55A6D01FF02035C6D02C001
0F91C7FC010002FC90B512FC6E90B75A021F17E00207178002014CC8FCDA003F15F00303
92C9FCDB001F13E056507BCE61>I<902601FFF8EB07FEB691383FFFC094B512F0040380
4C14FE4C8093261FFC3F138093263FE07F13C0DC7F80B5FCC66C5D011FDAFE0114E06DEB
F9FC16F815FB16F016E015FF16C07114C05E72138095381FFE0093C76C5AF001E095C8FC
A25DA65DB3B3A2B812F8A8434E7ACD4F>114 D<912603FFFCEB0780027F9039FFE00FC0
0103B6EAF83F010FEDFEFF013F92B5FC49EB000F2601FFF01300480180143F4890C8120F
4848814848814981123F83485A187FA212FF6D163FA37F7F6DEE1F8002C092C7FC14F014
FEECFFF06CECFF8016FEEEFFE06C16FC6C16FF18C06C836C17F86C836C836C83013F1780
6D17C0010717E0010117F0EB003F020716F8EC001F030015FC1607EE007F051F13FE1707
007E82B482836D167FA2183F7F181FA27F19FC7FA26D163F6D17F86D167F19F06D16FF6E
4A13E002E04A13C06E4A138002FE023F1300913AFFC003FFFE01E790B65A01C316F00180
16C026FE003F92C7FC48010714F80070D9007F90C8FC3F507ACE4C>I<15FFA75CA55CA4
5CA25CA25CA25CA25C91B5FCA25B5B5B131F5B90B9FC120FBAFCA6D8000791C9FCB3B3A3
F01FE0AE183F7014C07F187F7014806D16FF826D4B13006E6D485AEEFE0F6E90B55A020F
5D6E5D020115C06E6C5C031F49C7FC030113F03B6E7CEC4B>I<DAFFFE933803FFF8B603
03B6FCA8C66CEE0001011F717E6D84B3B3A862A497B5FCA261A2616D5F1ADF6F150F6DEF
1F9F073F806D6EDA7F1F13FF6D6ED901FEEDFF8070EB07FC023F01FEEB3FF86E90B612F0
6E16C0020316800200EDFE00031F14F80300028003C0C7FC614F79CD6C>I<B7D8FE01B7
00F00103B612E0A8D8003F01FCC8003F01E0C80007EBE0006D0B0090C7FC6F6F6D5DA26D
666F6F6D15036D66701A07737F6D667070150F6D4D60701A1F876D4D607071143F6E4C60
701A7F886E4C607003BF6D14FF6E04FF95C8FC6670031F7F6E4B60704A6C6D130318036E
640580496C6D13076E03076005C0180F4F6C7F6E030F6005E0496C6D131F6E031F6005F0
183F4F6C14806F023F6005F8496DEBC07F6F027F6005FC18FF4F6D7F6F02FF95C9FC7190
C76C13F16F90B55F1DF34E6E13FB6F624E6E13FFA26F624E806F62A24E806F624E807061
A24E8170614E817096CAFCA295C97E70604D160F0407604D16077048705A834E7CCC8C>
119 D E
%EndDVIPSBitmapFont
%DVIPSBitmapFont: Fx cmr10 10 1
/Fx 1 112 df<EB03FE90380FFF8090383E03E09038F800F84848137C48487F48487F48
48EB0F80001F15C090C712074815E0A2007EEC03F0A400FE15F8A9007E15F0A2007F1407
6C15E0A26C6CEB0FC0000F15806D131F6C6CEB3F006C6C137EC66C13F890387E03F09038
1FFFC0D903FEC7FC25277EA52A>111 D E
%EndDVIPSBitmapFont
end
%%EndProlog
%%BeginSetup
%%Feature: *Resolution 600dpi
TeXDict begin
%%BeginPaperSize: a4
a4
%%EndPaperSize

%%EndSetup
%%Page: 1 1
1 0 bop 316 83 a Fx(o)150 1112 y Fw(The)64 b(DejaGn)-5
b(u)65 b(T)-16 b(esting)65 b(F)-16 b(ramew)-5 b(ork)p
150 1212 3600 34 v 2787 1308 a Fv(for)31 b(DejaGn)m(u)g(V)-8
b(ersion)30 b(1.3)3395 1525 y(Jan)g(1996)150 5068 y Fu(Rob)45
b(Sa)l(v)l(o)l(y)l(e)p 150 5141 3600 17 v eop
%%Page: 2 2
2 1 bop 3105 408 a Fv(Cygn)m(us)30 b(Supp)s(ort)150 4480
y(Cop)m(yrigh)m(t)602 4477 y(c)577 4480 y Ft(\015)g Fv(92,)i(93,)f(94,)
h(95,)f(1996)h(F)-8 b(ree)32 b(Soft)m(w)m(are)f(F)-8
b(oundation,)30 b(Inc.)150 4615 y(P)m(ermission)g(is)i(gran)m(ted)h(to)
f(mak)m(e)i(and)d(distribute)f(v)m(erbatim)i(copies)g(of)g(this)f(man)m
(ual)h(pro)m(vided)f(the)150 4725 y(cop)m(yrigh)m(t)g(notice)f(and)g
(this)f(p)s(ermission)f(notice)i(are)h(preserv)m(ed)f(on)h(all)e
(copies.)150 4859 y(P)m(ermission)36 b(is)i(gran)m(ted)g(to)h(cop)m(y)g
(and)f(distribute)e(mo)s(di\014ed)g(v)m(ersions)h(of)i(this)e(man)m
(ual)g(under)g(the)150 4969 y(conditions)j(for)i(v)m(erbatim)g(cop)m
(ying,)j(pro)m(vided)40 b(also)i(that)h(the)f(en)m(tire)g(resulting)e
(deriv)m(ed)h(w)m(ork)h(is)150 5078 y(distributed)27
b(under)i(the)i(terms)f(of)h(a)f(p)s(ermission)e(notice)i(iden)m(tical)
f(to)j(this)d(one.)150 5213 y(P)m(ermission)i(is)i(gran)m(ted)g(to)h
(cop)m(y)g(and)f(distribute)d(translations)i(of)i(this)e(man)m(ual)g
(in)m(to)h(another)g(lan-)150 5322 y(guage,)f(under)d(the)h(ab)s(o)m(v)
m(e)i(conditions)d(for)h(mo)s(di\014ed)e(v)m(ersions.)p
eop
%%Page: 1 3
1 2 bop 150 -116 a Fv(Chapter)30 b(1:)41 b(What)31 b(is)e(DejaGn)m(u?)
2349 b(1)150 100 y Fs(1)80 b(What)54 b(is)g(DejaGn)l(u?)275
334 y Fv(DejaGn)m(u)35 b(is)e(a)i(framew)m(ork)g(for)f(testing)h(other)
g(programs.)53 b(Its)34 b(purp)s(ose)f(is)g(to)j(pro)m(vide)d(a)i
(single)150 443 y(fron)m(t)30 b(end)g(for)g(all)g(tests.)41
b(Bey)m(ond)31 b(this,)f(DejaGn)m(u)h(o\013ers)f(sev)m(eral)h(adv)-5
b(an)m(tages)32 b(for)f(testing:)199 578 y(1.)61 b(The)32
b(\015exibilit)m(y)e(and)i(consistency)h(of)g(the)g(DejaGn)m(u)g
(framew)m(ork)g(mak)m(e)h(it)e(easy)i(to)f(write)f(tests)330
687 y(for)e(an)m(y)h(program.)199 822 y(2.)61 b(DejaGn)m(u)21
b(pro)m(vides)f(a)h(la)m(y)m(er)g(of)g(abstraction)g(whic)m(h)e(allo)m
(ws)h(y)m(ou)h(to)g(write)f(tests)i(that)f(are)g(p)s(ortable)330
932 y(to)35 b(an)m(y)f(host)g(or)g(target)h(where)f(a)g(program)g(m)m
(ust)g(b)s(e)f(tested.)52 b(F)-8 b(or)35 b(instance,)g(a)f(test)h(for)f
(GDB)330 1041 y(can)26 b(run)e(\(from)i(an)m(y)g(Unix)f(based)g(host\))
h(on)g(an)m(y)g(target)h(arc)m(hitecture)g(that)f(DejaGn)m(u)h(supp)s
(orts.)330 1151 y(Curren)m(tly)d(DejaGn)m(u)j(runs)d(tests)j(on)f(sev)m
(eral)g(single)f(b)s(oard)g(computers,)i(whose)f(op)s(erating)f(soft-)
330 1260 y(w)m(are)31 b(ranges)f(from)g(just)g(a)h(b)s(o)s(ot)f
(monitor)g(to)h(a)g(full-\015edged,)d(Unix-lik)m(e)h(realtime)h(OS.)199
1395 y(3.)61 b(All)36 b(tests)j(ha)m(v)m(e)g(the)f(same)g(output)f
(format.)63 b(This)36 b(mak)m(es)j(it)e(easy)i(to)f(in)m(tegrate)h
(testing)f(in)m(to)330 1504 y(other)c(soft)m(w)m(are)i(dev)m(elopmen)m
(t)e(pro)s(cesses.)51 b(DejaGn)m(u's)35 b(output)f(is)f(designed)g(to)h
(b)s(e)g(parsed)f(b)m(y)330 1614 y(other)e(\014ltering)d(script,)i(and)
g(it)f(is)h(also)g(h)m(uman)g(readable.)275 1773 y(DejaGn)m(u)h(is)e
(written)h(in)f Fr(expect)p Fv(,)g(whic)m(h)g(in)g(turn)g(uses)h
Fq(Tcl)p Fv(|T)-8 b(o)s(ol)29 b(command)h(language.)275
1908 y(Running)21 b(tests)k(requires)d(t)m(w)m(o)k(things:)36
b(the)24 b(testing)g(framew)m(ork,)i(and)d(the)h(test)h(suites)e
(themselv)m(es.)150 2017 y(T)-8 b(ests)35 b(are)g(usually)d(written)i
(in)f Fr(expect)g Fv(using)g(Tcl,)i(but)f(y)m(ou)h(can)g(also)g(use)f
(a)h(Tcl)f(script)f(to)i(run)f(a)150 2127 y(test)f(suite)f(that)g(is)g
(not)g(based)g(on)g Fr(expect)p Fv(.)44 b(\()p Fr(expect)31
b Fv(script)g(\014lenames)g(con)m(v)m(en)m(tionally)i(use)f(`)p
Fr(.exp)p Fv(')150 2237 y(as)h(a)g(su\016x;)g(for)g(example,)g(the)g
(main)f(implemen)m(tation)f(of)i(the)g(DejaGn)m(u)h(test)f(driv)m(er)f
(is)f(in)h(the)h(\014le)150 2346 y(`)p Fr(runtest.exp)p
Fv('.\))p eop
%%Page: 2 4
2 3 bop 150 -116 a Fv(2)2409 b(DejaGn)m(u)32 b(T)-8 b(esting)30
b(F)-8 b(ramew)m(ork)p eop
%%Page: 3 5
3 4 bop 150 -116 a Fv(Chapter)30 b(2:)41 b(What)31 b(is)e(new)h(in)f
(this)h(release)g(?)1937 b(3)150 100 y Fs(2)80 b(What)54
b(is)g(new)f(in)h(this)g(release)f(?)275 334 y Fv(This)39
b(release)i(has)f(a)h(n)m(um)m(b)s(er)f(of)h(substan)m(tial)f(c)m
(hanges)h(o)m(v)m(er)i(v)m(ersion)d(1.2.)73 b(The)40
b(most)h(visible)150 443 y(c)m(hange)29 b(is)f(that)h(the)f(v)m(ersion)
g(of)g(exp)s(ect)h(and)f(Tcl)f(included)f(in)h(the)h(release)h(are)f
(up-to-date)i(with)d(the)150 553 y(curren)m(t)j(stable)g(net)h
(releases.)41 b(Other)30 b(c)m(hanges)h(are:)199 687
y(1.)61 b(The)35 b(con\014g)h(sub-system)f(in)f(DejaGn)m(u)j(has)e(b)s
(een)g(completely)g(redesigned.)55 b(It)36 b(no)m(w)g(supp)s(orts)330
797 y(testing)30 b(on)h(remote)g(hosts)f(as)h(w)m(ell)e(as)i(remote)g
(targets.)199 932 y(2.)61 b(More)23 b(builtin)c(supp)s(ort)h(for)i
(building)d(target)24 b(binaries)c(with)h(the)h(correct)i(link)m(er)c
(\015ags.)39 b(Curren)m(tly)330 1041 y(this)29 b(only)h(w)m(orks)g
(with)f(GCC,)h(preferably)f(with)g(a)i(target)h(supp)s(ort)d(b)m(y)h
Fr(libgloss)p Fv(.)199 1176 y(3.)61 b(Lots)31 b(of)f(little)f(bug)h
(\014xes)g(from)g(a)h(y)m(ear)g(of)g(hea)m(vy)g(use)f(here)g(at)h(Cygn)
m(us)f(Supp)s(ort.)199 1310 y(4.)61 b(DejaGn)m(u)31 b(no)m(w)g(uses)f
Fr(autoconf)e Fv(for)i(con\014guration.)199 1445 y(5.)61
b(New)38 b(test)g(cases)h(for)e(DejaGn)m(u)h(ha)m(v)m(e)h(b)s(een)e
(added)g(for)g(the)h(new)f(features,)j(plus)35 b(the)j
Fr(")p Fv({to)s(ol)p Fr(")330 1554 y Fv(option)30 b(bug)g(in)f(the)h
(1.2)i(testsuite)e(has)g(b)s(een)g(\014xed.)199 1689
y(6.)61 b(The)30 b Fr(--tool)f Fv(option)g(is)h(no)m(w)g(optional.)199
1823 y(7.)61 b Fr(runtest)26 b Fv(when)g(searc)m(hing)i(for)f(test)i
(driv)m(ers)d(ignores)h(all)f(directories)h(named)g(SCCS,)f(R)m(CS,)i
(and)330 1933 y(CVS.)199 2067 y(8.)61 b(There)30 b(is)f(no)m(w)h(a)h
(generic)f(k)m(eyw)m(ord)h(based)e(test)j(harness)d(that)i(uses)e
(commen)m(ts)i(in)e(source)i(co)s(de)330 2177 y(to)g(con)m(trol)g(ho)m
(w)f(eac)m(h)i(test)f(case)h(gets)f(built)d(and)i(run.)199
2311 y(9.)61 b(There)30 b(is)f(no)m(w)i(some)f(supp)s(ort)f(for)h
(running)e(a)j(testsuite)f(with)f(m)m(ultiple)f(passes.)150
2569 y Fu(2.1)68 b(Running)45 b(existing)h(tests)275
2761 y Fv(T)-8 b(o)25 b(run)e(tests)j(from)e(an)h(existing)e
(collection,)j(\014rst)e(use)h Fr(configure)d Fv(as)j(usual)e(to)j(set)
f(up)f(the)h(source)150 2871 y(directory)30 b(con)m(taining)g(the)g
(tests.)42 b(Then)29 b(try)h(running)390 3000 y Fr(make)47
b(check)275 3134 y Fv(If)29 b(the)h Fr(check)e Fv(target)j(exists,)f
(it)f(usually)e(sa)m(v)m(es)k(y)m(ou)f(some)g(trouble|for)f(instance,)h
(it)f(can)h(set)g(up)150 3244 y(an)m(y)h(auxiliary)d(programs)i(or)g
(other)h(\014les)e(needed)h(b)m(y)g(the)h(tests.)275
3378 y(Once)e(y)m(ou)i(ha)m(v)m(e)g(run)e(`)p Fr(make)g(check)p
Fv(')g(to)i(build)c(an)m(y)j(auxiliary)e(\014les,)h(y)m(ou)h(migh)m(t)g
(w)m(an)m(t)h(to)f(call)g(the)150 3488 y(test)e(driv)m(er)d
Fr(runtest)g Fv(directly)h(to)h(rep)s(eat)g(the)g(tests.)40
b(Y)-8 b(ou)28 b(ma)m(y)f(also)g(ha)m(v)m(e)h(to)f(call)f
Fr(runtest)f Fv(directly)150 3597 y(for)30 b(test)h(collections)f(with)
f(no)i Fr(check)e Fv(target)j(in)d(the)h(`)p Fr(Makefile)p
Fv('.)p eop
%%Page: 4 6
4 5 bop 150 -116 a Fv(4)2409 b(DejaGn)m(u)32 b(T)-8 b(esting)30
b(F)-8 b(ramew)m(ork)275 83 y(T)m(ypically)g(,)39 b(y)m(ou)g(m)m(ust)f
(use)h(t)m(w)m(o)h(command-line)d(options:)56 b(`)p Fr(--tool)p
Fv(',)40 b(to)f(sp)s(ecify)e(whic)m(h)h(set)h(of)150
193 y(tests)31 b(to)g(run)612 160 y Fp(1)648 193 y Fv(,)g(and)e(`)p
Fr(--srcdir)p Fv(',)g(to)i(sp)s(ecify)e(where)h(to)h(\014nd)e(test)j
(directories.)275 327 y(F)-8 b(or)27 b(example,)h(if)d(the)i(directory)
g(`)p Fr(gdb/testsuite)p Fv(')c(con)m(tains)k(a)h(collection)e(of)h
(DejaGn)m(u)h(tests)f(for)150 437 y Fo(gdb)p Fv(,)j(y)m(ou)h(can)g(run)
e(them)h(lik)m(e)g(this:)390 565 y Fr(eg$)47 b(cd)g(gdb/testsuite)390
669 y(eg$)g(runtest)f(--tool)g(gdb)150 773 y Fn(T)-7
b(est)33 b(output)g(fol)5 b(lows,)34 b(ending)f(with:)390
980 y Fr(===)47 b(gdb)g(Summary)f(===)390 1188 y(#)h(of)h(expected)d
(passes)h(508)390 1292 y(#)h(of)h(expected)d(failures)h(103)390
1396 y(/usr/latest/bin/gdb)d(version)i(4.14.4)h(-nx)275
1530 y Fv(Y)-8 b(ou)20 b(can)h(use)f(the)h(option)e(`)p
Fr(--srcdir)p Fv(')g(to)i(p)s(oin)m(t)e(to)i(some)g(other)g(directory)f
(con)m(taining)g(a)g(collection)150 1640 y(of)31 b(tests:)390
1768 y Fr(eg$)47 b(runtest)f(--tool)g(gdb)h(--srcdir)e
(/devo/gdb/testsuite)275 1903 y Fv(These)d(examples)g(assume)h(a)g
Fq(nativ)m(e)48 b Fv(con\014guration,)d(where)d(the)h(same)g(computer)g
(runs)e(b)s(oth)150 2012 y Fr(runtest)31 b Fv(and)h(the)h(tests)h
(themselv)m(es.)48 b(When)33 b(y)m(ou)g(ha)m(v)m(e)h(a)f
Fq(cross)k Fv(con\014guration,)c(the)g(tests)h(run)d(on)150
2122 y(a)j(di\013eren)m(t)f(computer,)h(con)m(trolled)f(b)m(y)g(the)h
(host)f(running)e Fr(runtest)p Fv(.)47 b(In)33 b(this)f(situation,)h(y)
m(ou)h(need)150 2232 y(the)d(option)e(`)p Fr(--name)p
Fv(')h(to)h(sp)s(ecify)e(the)h(net)m(w)m(ork)h(address)f(for)g(the)h
(other)f(computer:)390 2360 y Fr(eg$)47 b(runtest)f(--tool)g(gdb)h
(--name)f(vx9.munist.com)275 2495 y Fv(If)24 b(y)m(ou)h(alw)m(a)m(ys)g
(use)f(the)h(same)g(option)f(v)-5 b(alues,)25 b(y)m(ou)g(can)g(record)g
(them)g(in)e(a)i(\014le)f(called)f(`)p Fr(site.exp)p
Fv(',)150 2604 y(rather)33 b(than)g(t)m(yping)f(them)h(eac)m(h)h(time.)
48 b(See)34 b(Chapter)e(4)h([Setting)g(defaults)f(for)h
Fr(runtest)e Fv(options],)150 2714 y(page)g(15.)275 2848
y(By)36 b(default,)g Fr(runtest)e Fv(prin)m(ts)g(only)h(the)h(names)f
(of)h(the)g(tests)h(it)e(runs,)h(output)f(from)g(an)m(y)h(tests)150
2958 y(that)41 b(ha)m(v)m(e)g(unexp)s(ected)e(results,)j(and)d(a)i
(summary)e(sho)m(wing)g(ho)m(w)h(man)m(y)g(tests)h(passed)e(and)h(ho)m
(w)150 3068 y(man)m(y)26 b(failed.)38 b(T)-8 b(o)26 b(displa)m(y)e
(output)h(from)h(all)e(tests)j(\(whether)e(or)h(not)g(they)g(b)s(eha)m
(v)m(e)g(as)h(exp)s(ected\),)g(use)150 3177 y(the)36
b(`)p Fr(--all)p Fv(')f(option.)56 b(F)-8 b(or)37 b(more)f(v)m(erb)s
(ose)g(output)f(ab)s(out)g(pro)s(cesses)h(b)s(eing)e(run,)i(comm)m
(unication,)150 3287 y(and)f(so)h(on,)h(use)e(`)p Fr(--verbose)p
Fv('.)55 b(T)-8 b(o)36 b(see)g(ev)m(en)g(more)g(output,)h(use)e(m)m
(ultiple)f(`)p Fr(--verbose)p Fv(')f(options.)150 3396
y(See)j(Chapter)f(3)i([Using)e Fr(runtest)p Fv(],)h(page)g(9,)i(for)e
(a)g(more)g(detailed)f(explanation)g(of)h(eac)m(h)h Fr(runtest)150
3506 y Fv(option.)275 3641 y(T)-8 b(est)28 b(output)f(go)s(es)h(in)m
(to)g(t)m(w)m(o)h(\014les)d(in)h(y)m(our)g(curren)m(t)h(directory:)38
b(summary)27 b(output)g(in)f(`)p Fq(to)s(ol)p Fr(.sum)p
Fv(',)150 3750 y(and)31 b(detailed)g(output)h(in)f(`)p
Fq(to)s(ol)p Fr(.log)p Fv('.)45 b(\()p Fq(to)s(ol)35
b Fv(refers)d(to)h(the)f(collection)f(of)i(tests;)g(for)f(example,)g
(after)150 3860 y(a)37 b(run)e(with)g(`)p Fr(--tool)29
b(gdb)p Fv(',)38 b(lo)s(ok)e(for)h(output)f(\014les)f(`)p
Fr(gdb.sum)p Fv(')g(and)h(`)p Fr(gdb.log)p Fv('.\))59
b(See)36 b(Section)h(5.7)150 3969 y([The)30 b(\014les)f(DejaGn)m(u)j
(writes],)e(page)h(35.)p 150 4070 1200 4 v 192 4136 a
Fp(1)275 4169 y Fv(`)p Fr(--tool)p Fv(')h(selects)j(a)f(particular)f
(suite)g(of)h(tests,)i Fn(not)43 b Fv(the)34 b(name)g(of)h(the)f
(executable)g(program)g(to)275 4279 y(run.)55 b(See)36
b(Chapter)f(4)h([Con\014guration)f(dep)s(enden)m(t)f(v)-5
b(alues],)37 b(page)g(15,)h(for)d(information)f(on)i(the)275
4388 y(v)-5 b(ariables)29 b(that)i(y)m(ou)f(can)h(use)f(to)h(sp)s
(ecify)e(the)i(names)f(of)g(programs)g(to)i(run.)p eop
%%Page: 5 7
5 6 bop 150 -116 a Fv(Chapter)30 b(2:)41 b(What)31 b(is)e(new)h(in)f
(this)h(release)g(?)1937 b(5)150 83 y Fu(2.2)68 b(What)45
b(do)t(es)g(a)g(DejaGn)l(u)h(test)f(lo)t(ok)h(lik)l(e?)275
276 y Fv(Eac)m(h)32 b(DejaGn)m(u)i(test)f(is)e(an)h Fr(expect)f
Fv(script;)h(the)h(tests)g(v)-5 b(ary)32 b(widely)e(in)h(complexit)m(y)
-8 b(,)33 b(dep)s(ending)150 385 y(on)d(the)h(nature)f(of)g(the)h(to)s
(ol)f(and)g(the)h(feature)g(tested.)275 520 y(Here)38
b(is)e(a)i(v)m(ery)g(simple)d Fo(gdb)i Fv(test|one)i(of)f(the)f
(simplest)f(tests)i(shipp)s(ed)d(with)h(DejaGn)m(u)i(\(ex-)150
629 y(tracted)31 b(from)f(`)p Fr(gdb.t00/echo.exp)p Fv('\):)1556
596 y Fp(2)150 713 y Fm(\013)p 200 713 3554 4 v 3553
w(\010)p 150 1833 4 1072 v 178 866 a Fr(#)48 b(send)e(a)i(string)e(to)h
(the)g(GDB)g(stdin:)178 970 y(send)g("echo)f(Hello)h(world!\\n")178
1177 y(#)h(inspect)d(the)i(GDB)g(stdout)f(for)h(the)g(correct)f(reply,)
178 1281 y(#)i(and)f(determine)e(whether)h(the)h(test)f(passes)g(or)h
(fails:)178 1385 y(expect)f({)274 1489 y(-re)h("Hello)f(world.*$prompt)
e($")190 b({)47 b(pass)g("Echo)f(test")h(})274 1593 y(-re)g("$prompt)e
($")811 b({)47 b(fail)g("Echo)f(test")h(})274 1696 y(timeout)1191
b({)47 b(fail)g("\(timeout\))e(Echo)i(test")f(})274 1800
y(})p 3803 1833 V 150 1885 a Fm(\012)p 200 1885 3554
4 v 3553 w(\011)275 2029 y Fv(Though)33 b(brief,)g(this)g(example)h(is)
f(a)h(complete)h(test.)53 b(It)34 b(illustrates)e(some)i(of)g(the)h
(main)e(features)150 2139 y(of)e(DejaGn)m(u)g(test)g(scripts:)225
2274 y Ft(\017)60 b Fv(The)31 b(test)h(case)h(do)s(es)e(not)h(start)g
(the)g(tested)g(program)f(\()p Fo(gdb)h Fv(in)e(this)g(case\);)k(all)c
(test)j(scripts)d(for)330 2383 y(in)m(teractiv)m(e)h(to)s(ols)f(can)h
(assume)f(the)h(corresp)s(onding)d(to)s(ol)i(is)g(running.)225
2518 y Ft(\017)60 b Fv(Commen)m(ts)31 b(start)f(with)g(`)p
Fr(#)p Fv('.)225 2652 y Ft(\017)60 b Fv(The)20 b(main)f(commands)h(y)m
(ou)h(use)f(to)h(con)m(trol)g(a)f(tested)i(program)e(are)h
Fr(send)e Fv(\(to)i(giv)m(e)g(it)f(commands\))330 2762
y(and)30 b Fr(expect)e Fv(\(to)k(analyze)f(its)e(resp)s(onses\).)225
2896 y Ft(\017)60 b Fv(The)33 b Fr(expect)e Fv(command)i(uses)g(a)h
(list)d(of)j(pairs;)f(a)h(pattern)f(\(regular)g(expression)f(if)g(`)p
Fr(-re)p Fv(')h(sp)s(ec-)330 3006 y(i\014ed\),)i(follo)m(w)m(ed)g(b)m
(y)g(an)f(action)i(to)f(run)f(if)g(the)h(pattern)g(matc)m(hes)h(output)
e(from)h(the)g(program.)330 3115 y(Only)29 b(the)h(action)h(for)f(the)h
Fn(\014rst)39 b Fv(matc)m(hing)31 b(pattern)f(will)e(execute.)225
3250 y Ft(\017)60 b Fv(T)-8 b(est)31 b(cases)g(use)f(the)h(commands)f
Fr(pass)f Fv(and)h Fr(fail)f Fv(to)i(record)g(the)f(test)h(outcome.)150
3507 y Fu(2.3)68 b(Design)46 b(goals)275 3700 y Fv(DejaGn)m(u)d(grew)f
(out)h(of)f(the)h(in)m(ternal)e(needs)h(of)g(Cygn)m(us)g(Supp)s(ort.)75
b(Cygn)m(us)41 b(main)m(tains)h(and)150 3809 y(enhances)24
b(a)g(v)-5 b(ariet)m(y)24 b(of)f(free)h(programs)f(in)g(man)m(y)h
(di\013eren)m(t)f(en)m(vironmen)m(ts,)h(and)f(w)m(e)h(needed)g(a)g
(testing)150 3919 y(to)s(ol)30 b(that:)225 4054 y Ft(\017)60
b Fv(is)29 b(useful)g(to)i(dev)m(elop)s(ers)f(while)e(\014xing)h(bugs;)
225 4188 y Ft(\017)60 b Fv(automates)32 b(running)c(man)m(y)i(tests)h
(during)d(a)j(soft)m(w)m(are)h(release)f(pro)s(cess;)225
4323 y Ft(\017)60 b Fv(is)29 b(p)s(ortable)h(among)h(a)f(v)-5
b(ariet)m(y)31 b(of)g(host)f(computers;)225 4457 y Ft(\017)60
b Fv(supp)s(orts)28 b(cross-dev)m(elopmen)m(t)k(testing;)225
4591 y Ft(\017)60 b Fv(p)s(ermits)29 b(testing)h(in)m(teractiv)m(e)h
(programs,)g(lik)m(e)e Fo(gdb)p Fv(;)i(and)225 4726 y
Ft(\017)60 b Fv(p)s(ermits)29 b(testing)h(batc)m(h)h(orien)m(ted)f
(programs,)h(lik)m(e)e Fo(gcc)p Fv(.)p 150 4822 1200
4 v 192 4888 a Fp(2)275 4921 y Fv(More)42 b(recen)m(t)h
Fo(gdb)f Fv(tests)h(use)e(the)h(`)p Fr(gdb_test)p Fv(')f(pro)s(cedure.)
74 b(An)42 b(equiv)-5 b(alen)m(t)41 b(test)i(using)d(that)275
5031 y(pro)s(cedure)29 b(is)g(`)i Fr(gdb_test)d("echo)h(Hello)g
(world!")f("Hello)h(world!")f Fv(')p eop
%%Page: 6 8
6 7 bop 150 -116 a Fv(6)2409 b(DejaGn)m(u)32 b(T)-8 b(esting)30
b(F)-8 b(ramew)m(ork)275 83 y(Some)28 b(of)g(the)h(requiremen)m(ts)e
(pro)m(v)m(ed)i(c)m(hallenging.)39 b(F)-8 b(or)29 b(example,)f(in)m
(teractiv)m(e)i(programs)d(do)i(not)150 193 y(lend)35
b(themselv)m(es)h(v)m(ery)h(w)m(ell)e(to)i(automated)h(testing.)58
b(But)37 b(all)e(the)h(requiremen)m(ts)g(are)h(imp)s(ortan)m(t:)150
302 y(for)29 b(instance,)g(it)g(is)f(imp)s(erativ)m(e)g(to)h(mak)m(e)h
(sure)f(that)g Fo(gdb)g Fv(w)m(orks)g(as)g(w)m(ell)f(when)g
(cross-debugging)h(as)150 412 y(it)h(do)s(es)g(in)f(a)i(nativ)m(e)g
(con\014guration.)275 546 y(Probably)d(the)i(greatest)i(c)m(hallenge)e
(w)m(as)g(testing)g(in)f(a)h(cross-dev)m(elopmen)m(t)h(en)m(vironmen)m
(t)f(\(whic)m(h)150 656 y(can)38 b(b)s(e)e(a)i(real)f(nigh)m(tmare\).)
62 b(Most)38 b(cross-dev)m(elopmen)m(t)h(en)m(vironmen)m(ts)d(are)i
(customized)f(b)m(y)h(eac)m(h)150 765 y(dev)m(elop)s(er.)60
b(Ev)m(en)38 b(when)e(buying)f(pac)m(k)-5 b(aged)39 b(b)s(oards)d(from)
g(v)m(endors)h(there)h(are)f(man)m(y)g(di\013erences.)150
875 y(The)e(comm)m(unication)g(in)m(terfaces)g(v)-5 b(ary)36
b(from)f(a)g(serial)f(line)g(to)i(ethernet.)56 b(DejaGn)m(u)36
b(w)m(as)g(designed)150 985 y(with)e(a)j(mo)s(dular)c(comm)m(unication)
i(setup,)i(so)f(that)h(eac)m(h)g(kind)c(of)j(comm)m(unication)g(can)g
(b)s(e)f(added)150 1094 y(as)30 b(required,)e(and)h(supp)s(orted)e
(thereafter.)42 b(Once)29 b(a)h(comm)m(unication)f(pro)s(cedure)f(is)h
(co)s(ded,)g(an)m(y)h(test)150 1204 y(can)h(use)f(it.)41
b(Curren)m(tly)29 b(DejaGn)m(u)i(can)g(use)f Fr(rsh)p
Fv(,)g Fr(rlogin)p Fv(,)f Fr(telnet)p Fv(,)g Fr(tip)p
Fv(,)h Fr(kermit)p Fv(,)f(and)h Fr(mondfe)f Fv(for)150
1313 y(remote)i(comm)m(unications.)275 1448 y(Julia)20
b(Menapace)j(\014rst)f(coined)f(the)i(term)f(\\Deja)i(Gn)m(u")e(to)h
(describ)s(e)d(an)i(earlier)g(testing)g(framew)m(ork)150
1557 y(at)40 b(Cygn)m(us)e(Supp)s(ort.)64 b(When)38 b(w)m(e)i(replaced)
e(it)g(with)g(the)h(Exp)s(ect-based)g(framew)m(ork,)i(it)d(w)m(as)i
(lik)m(e)150 1667 y(DejaGn)m(u)31 b(all)e(o)m(v)m(er)j(again)6
b(.)22 b(.)g(.)150 1924 y Fu(2.4)68 b(A)44 b(POSIX)h(conforming)g(test)
h(framew)l(ork)275 2117 y Fv(DejaGn)m(u)31 b(conforms)f(to)h(the)g
Fo(posix)e Fv(standard)h(for)g(test)h(framew)m(orks.)275
2252 y Fo(posix)j Fv(standard)h(1003.3)j(de\014nes)d(what)g(a)h
(testing)g(framew)m(ork)g(needs)f(to)h(pro)m(vide,)h(in)d(order)h(to)
150 2361 y(p)s(ermit)23 b(the)i(creation)g(of)g Fo(posix)f
Fv(conformance)h(test)h(suites.)38 b(This)23 b(standard)h(is)f
(primarily)f(orien)m(ted)i(to)150 2471 y(running)k Fo(posix)i
Fv(conformance)h(tests,)h(but)d(its)h(requiremen)m(ts)g(also)h(supp)s
(ort)d(testing)j(of)g(features)g(not)150 2580 y(related)22
b(to)h Fo(posix)f Fv(conformance.)38 b Fo(posix)22 b
Fv(1003.3)j(do)s(es)d(not)g(sp)s(ecify)f(a)i(particular)d(testing)j
(framew)m(ork,)150 2690 y(but)30 b(at)h(this)e(time)h(there)h(is)e
(only)h(one)g(other)h Fo(posix)f Fv(conforming)f(test)i(framew)m(ork:)
41 b Fo(tet)p Fv(.)3320 2657 y Fp(3)275 2824 y Fv(The)26
b Fo(posix)h Fv(do)s(cumen)m(tation)g(refers)f(to)i Fq(assertions)p
Fv(.)40 b(An)26 b(assertion)h(is)f(a)i(description)d(of)j(b)s(eha)m
(vior.)150 2934 y(F)-8 b(or)41 b(example,)j(if)39 b(a)i(standard)f(sa)m
(ys)h(\\The)g(sun)e(shall)g(shine",)j(a)f(corresp)s(onding)e(assertion)
h(migh)m(t)150 3044 y(b)s(e)c(\\The)h(sun)f(is)g(shining.")58
b(A)37 b(test)g(based)g(on)g(this)f(assertion)g(w)m(ould)g(pass)g(or)h
(fail)f(dep)s(ending)e(on)150 3153 y(whether)d(it)f(is)g(da)m(ytime)i
(or)f(nigh)m(ttime.)42 b(It)32 b(is)e(imp)s(ortan)m(t)g(to)i(note)g
(that)g(the)f(standard)f(b)s(eing)g(tested)150 3263 y(is)g(nev)m(er)h
(1003.3;)i(the)e(standard)f(b)s(eing)g(tested)h(is)f(some)h(other)g
(standard,)f(for)h(whic)m(h)e(the)i(assertions)150 3372
y(w)m(ere)g(written.)275 3507 y(As)g(there)g(is)g(no)g(test)h(suite)e
(to)i(test)h Fn(testing)g(fr)-5 b(ameworks)41 b Fv(for)31
b Fo(posix)g Fv(1003.3)j(conformance,)e(v)m(eri-)150
3616 y(fying)c(conformance)i(to)h(this)d(standard)h(is)f(done)h(b)m(y)h
(rep)s(eatedly)e(reading)h(the)h(standard)e(and)h(exp)s(eri-)150
3726 y(men)m(ting.)40 b(One)28 b(of)h(the)g(main)f(things)f(1003.3)32
b(do)s(es)c(sp)s(ecify)g(is)f(the)i(set)h(of)f(allo)m(w)m(ed)f(output)h
(messages,)150 3836 y(and)39 b(their)g(de\014nitions.)66
b(F)-8 b(our)41 b(messages)f(are)g(supp)s(orted)e(for)i(a)g(required)e
(feature)i(of)g Fo(posix)f Fv(con-)150 3945 y(forming)g(systems,)k(and)
c(a)i(\014fth)e(for)h(a)h(conditional)d(feature.)71 b(DejaGn)m(u)41
b(supp)s(orts)d(the)j(use)f(of)g(all)150 4055 y(\014v)m(e)h(output)f
(messages;)46 b(in)40 b(this)f(sense)h(a)h(test)h(suite)d(that)i(uses)f
(exactly)i(these)e(messages)i(can)f(b)s(e)150 4164 y(considered)29
b Fo(posix)h Fv(conforming.)40 b(These)30 b(de\014nitions)e(sp)s(ecify)
h(the)h(output)g(of)h(a)g(test)g(case:)150 4399 y Fr(PASS)288
b Fv(A)30 b(test)i(has)e(succeeded.)41 b(That)30 b(is,)g(it)g
(demonstrated)g(that)h(the)g(assertion)f(is)f(true.)150
4583 y Fr(XFAIL)240 b Fo(posix)41 b Fv(1003.3)k(do)s(es)d(not)g(incorp)
s(orate)g(the)g(notion)g(of)g(exp)s(ected)h(failures,)g(so)g
Fr(PASS)p Fv(,)630 4692 y(instead)32 b(of)h Fr(XPASS)p
Fv(,)g(m)m(ust)f(also)h(b)s(e)g(returned)e(for)i(test)h(cases)g(whic)m
(h)d(w)m(ere)j(exp)s(ected)f(to)630 4802 y(fail)24 b(and)h(did)e(not.)
40 b(This)23 b(means)i(that)h Fr(PASS)e Fv(is)h(in)f(some)i(sense)f
(more)g(am)m(biguous)g(than)g(if)630 4912 y Fr(XPASS)j
Fv(is)g(also)h(used.)40 b(F)-8 b(or)30 b(information)d(on)i
Fr(XPASS)f Fv(and)g Fr(XFAIL)p Fv(,)h(see)g(Chapter)g(3)g([Using)630
5021 y Fr(runtest)p Fv(],)g(page)i(9.)p 150 5122 1200
4 v 192 5188 a Fp(3)275 5221 y Fo(tet)d Fv(w)m(as)h(created)h(b)m(y)f
(Unisoft)f(for)h(a)g(consortium)f(comprised)g(of)h(X/Op)s(en,)g(Unix)e
(In)m(ternational,)275 5331 y(and)i(the)i(Op)s(en)e(Soft)m(w)m(are)i(F)
-8 b(oundation.)p eop
%%Page: 7 9
7 8 bop 150 -116 a Fv(Chapter)30 b(2:)41 b(What)31 b(is)e(new)h(in)f
(this)h(release)g(?)1937 b(7)150 83 y Fr(FAIL)288 b Fv(A)27
b(test)g Fn(has)35 b Fv(pro)s(duced)25 b(the)h(bug)g(it)g(w)m(as)h(in)m
(tended)e(to)i(capture.)40 b(That)26 b(is,)h(it)f(has)g(demon-)630
193 y(strated)32 b(that)g(the)g(assertion)g(is)f(false.)44
b(The)31 b Fr(FAIL)g Fv(message)i(is)d(based)i(on)f(the)h(test)h(case)
630 302 y(only)-8 b(.)40 b(Other)30 b(messages)i(are)e(used)g(to)h
(indicate)e(a)i(failure)e(of)h(the)h(framew)m(ork.)630
437 y(As)c(with)g Fr(PASS)p Fv(,)g Fo(posix)f Fv(tests)j(m)m(ust)e
(return)f Fr(FAIL)h Fv(rather)g(than)g Fr(XFAIL)f Fv(ev)m(en)i(if)f(a)h
(failure)630 546 y(w)m(as)j(exp)s(ected.)150 731 y Fr(UNRESOLVED)630
840 y Fv(A)k(test)i(pro)s(duced)c(indeterminate)h(results.)54
b(Usually)-8 b(,)36 b(this)e(means)h(the)h(test)g(executed)630
950 y(in)g(an)h(unexp)s(ected)f(fashion;)k(this)c(outcome)j(requires)c
(that)j(a)g(h)m(uman)e(b)s(eing)g(go)i(o)m(v)m(er)630
1059 y(results,)c(to)h(determine)e(if)g(the)h(test)h(should)d(ha)m(v)m
(e)k(passed)d(or)h(failed.)50 b(This)33 b(message)i(is)630
1169 y(also)25 b(used)g(for)g(an)m(y)h(test)h(that)f(requires)e(h)m
(uman)g(in)m(terv)m(en)m(tion)i(b)s(ecause)f(it)g(is)g(b)s(ey)m(ond)g
(the)630 1279 y(abilities)h(of)i(the)h(testing)f(framew)m(ork.)40
b(An)m(y)28 b(unresolv)m(ed)g(test)h(should)d(resolv)m(ed)i(to)h
Fr(PASS)630 1388 y Fv(or)h Fr(FAIL)g Fv(b)s(efore)g(a)g(test)i(run)d
(can)h(b)s(e)g(considered)f(\014nished.)630 1523 y(Note)h(that)f(for)f
Fo(posix)p Fv(,)g(eac)m(h)i(assertion)e(m)m(ust)g(pro)s(duce)f(a)i
(test)g(result)e(co)s(de.)41 b(If)27 b(the)i(test)630
1632 y(isn't)36 b(actually)g(run,)h(it)f(m)m(ust)g(pro)s(duce)g
Fr(UNRESOLVED)d Fv(rather)k(than)f(just)g(lea)m(ving)g(that)630
1742 y(test)g(out)f(of)g(the)g(output.)54 b(This)33 b(means)i(that)g(y)
m(ou)h(ha)m(v)m(e)g(to)g(b)s(e)e(careful)g(when)g(writing)630
1851 y(tests,)g(to)f(not)g(carelessly)f(use)g(tcl)h(statemen)m(ts)h
(lik)m(e)e Fr(return)p Fv(|if)e(y)m(ou)j(alter)f(the)h(\015o)m(w)g(of)
630 1961 y(con)m(trol)25 b(of)g(the)g(tcl)g(co)s(de)g(y)m(ou)h(m)m(ust)
e(insure)f(that)j(ev)m(ery)g(test)f(still)e(pro)s(duces)h(some)h
(result)630 2071 y(co)s(de.)630 2205 y(Here)31 b(are)g(some)f(of)h(the)
g(w)m(a)m(ys)g(a)g(test)g(ma)m(y)g(wind)d(up)h Fr(UNRESOLVED)p
Fv(:)705 2340 y Ft(\017)60 b Fv(A)30 b(test's)i(execution)e(is)g(in)m
(terrupted.)705 2474 y Ft(\017)60 b Fv(A)34 b(test)g(do)s(es)f(not)h
(pro)s(duce)e(a)i(clear)f(result.)49 b(This)32 b(is)g(usually)f(b)s
(ecause)j(there)g(w)m(as)810 2584 y(an)h Fr(ERROR)e Fv(from)i(DejaGn)m
(u)h(while)d(pro)s(cessing)h(the)h(test,)i(or)e(b)s(ecause)g(there)g(w)
m(ere)810 2693 y(three)41 b(or)f(more)h Fr(WARNING)e
Fv(messages.)72 b(An)m(y)41 b Fr(WARNING)d Fv(or)j Fr(ERROR)e
Fv(messages)j(can)810 2803 y(in)m(v)-5 b(alidate)32 b(the)h(output)f
(of)h(the)h(test.)49 b(This)31 b(usually)g(requires)g(a)j(h)m(uman)e(b)
s(eing)f(to)810 2912 y(examine)k(the)g(output)f(to)i(determine)e(what)g
(really)g(happ)s(ened|and)f(to)i(impro)m(v)m(e)810 3022
y(the)c(test)g(case.)705 3156 y Ft(\017)60 b Fv(A)30
b(test)i(dep)s(ends)c(on)j(a)f(previous)f(test,)j(whic)m(h)d(fails.)705
3291 y Ft(\017)60 b Fv(The)30 b(test)h(w)m(as)g(set)g(up)e(incorrectly)
-8 b(.)150 3475 y Fr(UNTESTED)96 b Fv(A)31 b(test)h(w)m(as)g(not)f
(run.)42 b(This)29 b(is)h(a)i(placeholder,)e(used)g(when)h(there)g(is)f
(no)h(real)g(test)h(case)630 3585 y(y)m(et.)150 3744
y(The)j(only)h(remaining)e(output)h(message)i(left)f(is)f(in)m(tended)g
(to)i(test)g(features)f(that)g(are)h(sp)s(eci\014ed)d(b)m(y)150
3854 y(the)d(applicable)d Fo(posix)h Fv(standard)h(as)h(conditional:)
150 4038 y Fr(UNSUPPORTED)630 4148 y Fv(There)40 b(is)g(no)g(supp)s
(ort)f(for)h(the)h(tested)g(case.)72 b(This)39 b(ma)m(y)i(mean)g(that)g
(a)g(conditional)630 4257 y(feature)30 b(of)f(an)g(op)s(erating)g
(system,)g(or)h(of)f(a)g(compiler,)g(is)f(not)h(implemen)m(ted.)39
b(DejaGn)m(u)630 4367 y(also)23 b(uses)g(this)g(message)h(when)e(a)i
(testing)g(en)m(vironmen)m(t)f(\(often)h(a)f(\\bare)h(b)s(oard")f
(target\))630 4477 y(lac)m(ks)31 b(basic)f(supp)s(ort)e(for)i
(compiling)f(or)h(running)e(the)i(test)i(case.)42 b(F)-8
b(or)31 b(example,)f(a)h(test)630 4586 y(for)38 b(the)h(system)f
(subroutine)e Fr(gethostname)f Fv(w)m(ould)i(nev)m(er)i(w)m(ork)f(on)g
(a)h(target)h(b)s(oard)630 4696 y(running)28 b(only)h(a)i(b)s(o)s(ot)f
(monitor.)275 4855 y(DejaGn)m(u)g(uses)f(the)h(same)h(output)e(pro)s
(cedures)g(to)h(pro)s(duce)f(these)h(messages)h(for)e(all)g(test)i
(suites,)150 4965 y(and)i(these)h(pro)s(cedures)e(are)h(already)g(kno)m
(wn)g(to)h(conform)f(to)h Fo(posix)f Fv(1003.3.)52 b(F)-8
b(or)34 b(a)g(DejaGn)m(u)g(test)150 5074 y(suite)28 b(to)i(conform)f
(to)h Fo(posix)e Fv(1003.3,)k(y)m(ou)d(m)m(ust)g(a)m(v)m(oid)h(the)f
Fr(setup_xfail)d Fv(pro)s(cedure)i(as)h(describ)s(ed)150
5184 y(in)21 b(the)i Fr(PASS)e Fv(section)i(ab)s(o)m(v)m(e,)i(and)d(y)m
(ou)h(m)m(ust)g(b)s(e)e(careful)h(to)i(return)d Fr(UNRESOLVED)f
Fv(where)i(appropriate,)150 5293 y(as)31 b(describ)s(ed)d(in)h(the)i
Fr(UNRESOLVED)c Fv(section)k(ab)s(o)m(v)m(e.)p eop
%%Page: 8 10
8 9 bop 150 -116 a Fv(8)2409 b(DejaGn)m(u)32 b(T)-8 b(esting)30
b(F)-8 b(ramew)m(ork)150 83 y Fu(2.5)68 b(F)-11 b(uture)44
b(directions)275 276 y Fv(In)28 b(the)h(near)g(future,)f(there)i(are)f
(t)m(w)m(o)h(parallel)d(directions)h(for)h(DejaGn)m(u)h(dev)m(elopmen)m
(t.)40 b(The)29 b(\014rst)150 385 y(is)g(to)j(add)d(supp)s(ort)g(for)h
(more)h(hosts)f(and)g(targets.)275 520 y(The)d(second)g(w)m(ould)g(p)s
(ermit)f(testing)h(programs)h(with)e(a)i(more)g(complex)f(in)m
(terface,)i(whether)e(text)150 629 y(based)j(or)h(GUI)g(based.)42
b(Tw)m(o)31 b(comp)s(onen)m(ts)g(already)f(exist:)42
b(a)31 b(Tcl)f(based)g(X)h(windo)m(w)f(to)s(olkit,)g(and)h(a)150
739 y(terminal)h(pac)m(k)-5 b(age)36 b(for)e Fr(expect)p
Fv(.)49 b(Both)35 b(of)f(these)g(could)f(b)s(e)g(merged)h(in)m(to)g
(DejaGn)m(u)h(in)d(a)j(w)m(a)m(y)f(that)150 848 y(p)s(ermits)29
b(testing)h(programs)g(that)h(run)e(in)g(eac)m(h)j(en)m(vironmen)m(t.)
275 983 y(Mean)m(while,)26 b(w)m(e)g(hop)s(e)f(DejaGn)m(u)i(enables)e
(the)h(creation)g(of)g(test)h(suites)e(for)g(conformance)i(to)f
Fo(ansi)150 1093 y Fv(C)33 b(and)g(C)p Fr(++)p Fv(,)h(to)g
Fo(posix)p Fv(,)g(and)g(to)g(other)g(standards.)49 b(W)-8
b(e)35 b(encourage)g(y)m(ou)f(to)h(mak)m(e)f(an)m(y)g(test)h(suites)150
1202 y(y)m(ou)c(create)h(freely)d(a)m(v)-5 b(ailable,)30
b(under)f(the)i(same)g(terms)f(as)g(DejaGn)m(u)i(itself.)150
1460 y Fu(2.6)68 b(Tcl)45 b(and)f(Exp)t(ect)275 1652
y Fv(Tcl)25 b(w)m(as)h(in)m(tro)s(duced)e(in)h(a)h(pap)s(er)f(b)m(y)h
(John)f(K.)h(Ousterhout)f(at)i(the)f(1990)i(Win)m(ter)d(Usenix)h
(confer-)150 1762 y(ence,)h Fq(Tcl:)38 b(An)25 b(Em)m(b)s(eddable)f
(Command)g(Language)p Fv(.)40 b(That)26 b(pap)s(er)e(is)g(included)f
(in)h(P)m(ostScript)h(form)150 1871 y(in)32 b(the)i(`)p
Fr(doc)p Fv(')f(sub)s(directory)f(of)h(the)h(Tcl)f(distribution.)46
b(The)34 b(v)m(ersion)f(of)g(Tcl)g(included)e(in)h(DejaGn)m(u)150
1981 y(at)f(this)e(time)h(is)g(Tcl)f(7.4p3.)275 2115
y(Don)h(Lib)s(es)f(in)m(tro)s(duced)f Fr(expect)h Fv(in)g(his)f(pap)s
(er)h Fq(exp)s(ect:)42 b(Curing)28 b(Those)i(Uncon)m(trollable)f(Fits)h
(of)150 2225 y(In)m(teraction)38 b Fv(at)h(the)f(1990)h(Summer)e
(Usenix)f(conference.)64 b(The)37 b(pap)s(er)g(is)g(included)e(in)h(P)m
(ostScript)150 2335 y(form)27 b(in)g(the)h Fr(expect)e
Fv(distribution)f(\(as)j(are)h(sev)m(eral)f(other)g(pap)s(ers)f(ab)s
(out)g Fr(expect)p Fv(\).)39 b(The)27 b(v)m(ersion)h(of)150
2444 y(exp)s(ect)j(included)d(in)h(DejaGn)m(u)i(at)g(this)e(time)h(is)g
(exp)s(ect)h(5.18.0.)p eop
%%Page: 9 11
9 10 bop 150 -116 a Fv(Chapter)30 b(3:)41 b(Using)29
b Fr(runtest)2499 b Fv(9)150 100 y Fs(3)80 b(Using)54
b Fl(runtest)275 334 y Fr(runtest)28 b Fv(is)i(the)h(executable)g(test)
h(driv)m(er)d(for)i(DejaGn)m(u.)42 b(Y)-8 b(ou)31 b(can)g(sp)s(ecify)e
(t)m(w)m(o)k(kinds)28 b(of)j(things)150 443 y(on)25 b(the)g
Fr(runtest)e Fv(command)i(line:)37 b(command)24 b(line)g(options,)h
(and)g(Tcl)f(v)-5 b(ariables)24 b(for)h(the)g(test)h(scripts.)150
553 y(The)k(options)g(are)g(listed)f(alphab)s(etically)f(b)s(elo)m(w.)
275 687 y Fr(runtest)g Fv(returns)h(an)i(exit)f(co)s(de)h(of)f
Fr(1)h Fv(if)e(an)m(y)i(test)g(has)f(an)h(unexp)s(ected)f(result;)f
(otherwise)h(\(if)g(all)150 797 y(tests)h(pass)f(or)g(fail)g(as)g(exp)s
(ected\))h(it)f(returns)f Fr(0)h Fv(as)h(the)g(exit)f(co)s(de.)275
932 y Fr(runtest)25 b Fv(\015ags)i(the)g(outcome)i(of)e(eac)m(h)h(test)
g(as)g(one)f(of)g(these)h(cases.)41 b(\(See)27 b(Section)g(2.4)h([A)g
(POSIX)150 1041 y(conforming)f(test)h(framew)m(ork],)h(page)f(6,)h(for)
e(a)h(discussion)d(of)i(ho)m(w)h Fo(posix)e Fv(sp)s(eci\014es)h(the)g
(meanings)g(of)150 1151 y(these)k(cases.\))150 1310 y
Fr(PASS)288 b Fv(The)29 b(most)g(desirable)f(outcome:)41
b(the)29 b(test)i(succeeded,)f(and)e(w)m(as)i(exp)s(ected)f(to)h
(succeed.)150 1469 y Fr(XPASS)240 b Fv(A)26 b(pleasan)m(t)h(kind)d(of)j
(failure:)37 b(a)26 b(test)h(w)m(as)g(exp)s(ected)g(to)g(fail,)f(but)f
(succeeded.)40 b(This)24 b(ma)m(y)630 1579 y(indicate)h(progress;)i
(insp)s(ect)e(the)h(test)h(case)g(to)f(determine)f(whether)g(y)m(ou)i
(should)c(amend)630 1689 y(it)30 b(to)h(stop)f(exp)s(ecting)h(failure.)
150 1848 y Fr(FAIL)288 b Fv(A)33 b(test)g(failed,)g(although)f(it)g(w)m
(as)h(exp)s(ected)g(to)g(succeed.)49 b(This)31 b(ma)m(y)i(indicate)f
(regress;)630 1958 y(insp)s(ect)d(the)i(test)g(case)g(and)f(the)h
(failing)d(soft)m(w)m(are)k(to)f(lo)s(cate)g(the)g(bug.)150
2117 y Fr(XFAIL)240 b Fv(A)38 b(test)g(failed,)h(but)e(it)g(w)m(as)h
(exp)s(ected)g(to)h(fail.)61 b(This)36 b(result)h(indicates)g(no)g(c)m
(hange)i(in)630 2227 y(a)33 b(kno)m(wn)g(bug.)47 b(If)33
b(a)g(test)h(fails)d(b)s(ecause)i(the)g(op)s(erating)f(system)h(where)g
(the)g(test)h(runs)630 2336 y(lac)m(ks)d(some)g(facilit)m(y)e(required)
g(b)m(y)h(the)g(test,)i(the)e(outcome)i(is)e Fr(UNSUPPORTED)d
Fv(instead.)150 2496 y Fr(UNRESOLVED)630 2605 y Fv(Output)39
b(from)h(a)h(test)h(requires)d(man)m(ual)h(insp)s(ection;)j(the)e(test)
h(suite)d(could)h(not)h(au-)630 2715 y(tomatically)e(determine)f(the)i
(outcome.)68 b(F)-8 b(or)40 b(example,)i(y)m(our)d(tests)h(can)f(rep)s
(ort)g(this)630 2824 y(outcome)32 b(is)d(when)g(a)i(test)g(do)s(es)g
(not)f(complete)h(as)g(exp)s(ected.)150 2984 y Fr(UNTESTED)96
b Fv(A)28 b(test)h(case)f(is)f(not)h(y)m(et)h(complete,)g(and)f(in)e
(particular)g(cannot)j(y)m(et)f(pro)s(duce)f(a)h Fr(PASS)f
Fv(or)630 3093 y Fr(FAIL)p Fv(.)39 b(Y)-8 b(ou)28 b(can)h(also)f(use)g
(this)f(outcome)i(in)e(dumm)m(y)g(\\tests")j(that)e(note)h(explicitly)d
(the)630 3203 y(absence)31 b(of)f(a)h(real)f(test)h(case)h(for)e(a)h
(particular)d(prop)s(ert)m(y)-8 b(.)150 3362 y Fr(UNSUPPORTED)630
3472 y Fv(A)32 b(test)h(dep)s(ends)d(on)i(a)h(conditionally)c(a)m(v)-5
b(ailable)32 b(feature)g(that)h(do)s(es)f(not)g(exist)g(\(in)f(the)630
3582 y(con\014gured)40 b(testing)h(en)m(vironmen)m(t\).)71
b(F)-8 b(or)42 b(example,)h(y)m(ou)e(can)g(use)g(this)e(outcome)j(to)
630 3691 y(rep)s(ort)f(on)h(a)h(test)g(case)g(that)g(do)s(es)e(not)i(w)
m(ork)f(on)g(a)g(particular)f(target)i(b)s(ecause)g(its)630
3801 y(op)s(erating)30 b(system)g(supp)s(ort)f(do)s(es)h(not)h(include)
d(a)j(required)d(subroutine.)275 3960 y Fr(runtest)g
Fv(ma)m(y)j(also)f(displa)m(y)f(the)h(follo)m(wing)f(messages:)150
4120 y Fr(ERROR)240 b Fv(Indicates)43 b(a)g(ma)5 b(jor)43
b(problem)f(\(detected)j(b)m(y)e(the)g(test)h(case)g(itself)7
b(\))43 b(in)e(running)g(the)630 4229 y(test.)65 b(This)37
b(is)g(usually)f(an)i(unreco)m(v)m(erable)h(error,)h(suc)m(h)e(as)h(a)f
(missing)e(\014le)i(or)g(loss)g(of)630 4339 y(comm)m(unication)30
b(to)i(the)f(target.)44 b(\()p Fo(posix)30 b Fv(test)i(suites)e(should)
f(not)i(emit)g(this)f(message;)630 4448 y(use)g Fr(UNSUPPORTED)p
Fv(,)e Fr(UNTESTED)p Fv(,)g(or)i Fr(UNRESOLVED)e Fv(instead,)i(as)g
(appropriate.\))150 4608 y Fr(WARNING)144 b Fv(Indicates)30
b(a)h(p)s(ossible)e(problem)g(in)g(running)f(the)j(test.)43
b(Usually)29 b(w)m(arnings)g(corresp)s(ond)630 4717 y(to)24
b(reco)m(v)m(erable)g(errors,)g(or)f(displa)m(y)e(an)h(imp)s(ortan)m(t)
g(message)i(ab)s(out)f(the)g(follo)m(wing)e(tests.)150
4877 y Fr(NOTE)288 b Fv(An)30 b(informational)e(message)k(ab)s(out)e
(the)h(test)g(case.)275 5036 y(This)h(is)g(the)i(full)e(set)i(of)g
(command)g(line)e(options)h(that)i Fr(runtest)d Fv(recognizes.)51
b(Argumen)m(ts)34 b(ma)m(y)150 5146 y(b)s(e)c(abbreviated)f(to)j(the)e
(shortest)h(unique)d(string.)p eop
%%Page: 10 12
10 11 bop 150 -116 a Fv(10)2364 b(DejaGn)m(u)32 b(T)-8
b(esting)30 b(F)-8 b(ramew)m(ork)390 83 y Fr(runtest)46
b(--tool)g Fq(to)s(ol)99 b Fr([)47 b Fq(testsuite)p Fr(.exp)g(...)g(])
390 187 y([)g Fq(testsuite)p Fr(.exp="testfile1)d(...")j(])390
291 y([)g Fq(tclv)-5 b(ar)7 b Fr(=)p Fq(v)-5 b(alue)5
b Fr(...)46 b(])390 394 y([)h(--all)g(])95 b([)47 b(--baud)g
Fq(baud-rate)52 b Fr(])96 b([)47 b(--connect)e Fq(t)m(yp)s(e)53
b Fr(])390 498 y([)47 b(--debug)f(])95 b([)48 b(--help)e(])95
b([)48 b(--host)e Fq(string)54 b Fr(])390 602 y([)47
b(--mail)g(")p Fq(name)52 b Fr(...)o(")c(])95 b([)47
b(--name)g Fq(string)54 b Fr(])390 706 y([)47 b(--name)g
Fq(name)52 b Fr(])96 b([)47 b(--outdir)f Fq(path)h Fr(])390
809 y([)g(--objdir)f Fq(path)i Fr(])95 b([)47 b(--reboot)f(])390
913 y([)h(--srcdir)f Fq(path)i Fr(])95 b([)47 b(--strace)f
Fq(n)h Fr(])390 1017 y([)g(--target)f Fq(string)55 b
Fr(--build)45 b Fq(string)55 b Fr(])390 1121 y([)47 b(-v)h(|)f
(--verbose)e(])96 b([)47 b(-V)g(|)h(--version)d(])95
b([)48 b(--D)p Fq(n)e Fr(])150 1273 y(--tool)29 b Fq(to)s(ol)630
1382 y(to)s(ol)39 b Fv(sp)s(eci\014es)c(what)h(set)g(of)g(tests)h(to)f
(run,)g(and)g(what)f(initialization)e(mo)s(dule)h(to)j(use.)630
1492 y Fq(to)s(ol)c Fv(is)c(used)g Fn(only)38 b Fv(for)30
b(these)g(t)m(w)m(o)h(purp)s(oses:)39 b(it)29 b(is)f
Fn(not)39 b Fv(used)29 b(to)i(name)e(the)h(executable)630
1601 y(program)25 b(to)h(test.)40 b(Executable)25 b(to)s(ol)g(names)g
(\(and)g(paths\))g(are)h(recorded)f(in)f(`)p Fr(site.exp)p
Fv(')630 1711 y(\(see)g(Chapter)e(4)i([Con\014guration)d(dep)s(enden)m
(t)h(v)-5 b(alues],)25 b(page)e(15\),)j(and)c(y)m(ou)i(can)f(o)m(v)m
(erride)630 1820 y(them)30 b(b)m(y)h(sp)s(ecifying)d(Tcl)h(v)-5
b(ariables)29 b(on)i(the)f(command)g(line.)630 1951 y(F)-8
b(or)33 b(example,)g(including)c(`)p Fr(--tool)g(gcc)p
Fv(')j(on)h(the)f Fr(runtest)f Fv(command)h(line)f(runs)g(tests)630
2061 y(from)37 b(all)g(test)h(sub)s(directories)d(whose)j(names)f(matc)
m(h)i(`)p Fr(gcc.*)p Fv(',)g(and)e(uses)g(one)h(of)g(the)630
2170 y(initialization)27 b(mo)s(dules)h(named)i(`)p Fr
(config/*-gcc.exp)p Fv('.)36 b(T)-8 b(o)31 b(sp)s(ecify)d(the)j(name)f
(of)g(the)630 2280 y(compiler)19 b(\(p)s(erhaps)g(as)i(an)g(alternativ)
m(e)g(path)f(to)h(what)g Fr(runtest)d Fv(w)m(ould)h(use)i(b)m(y)f
(default\),)630 2390 y(use)30 b(`)p Fr(GCC=)p Fq(binname)5
b Fv(')28 b(on)j(the)f Fr(runtest)e Fv(command)j(line.)150
2541 y Fq(testsuite)p Fr(.exp)f(...)630 2651 y Fv(Sp)s(ecify)j(the)i
(names)f(of)h(testsuites)f(to)i(run.)51 b(By)35 b(default,)g
Fr(runtest)e Fv(runs)f(all)i(tests)h(for)630 2760 y(the)c(to)s(ol,)g
(but)g(y)m(ou)g(can)g(restrict)g(it)f(to)i(particular)d(testsuites)i(b)
m(y)g(giving)f(the)h(names)g(of)630 2870 y(the)g(`)p
Fr(.exp)p Fv(')e Fr(expect)g Fv(scripts)g(that)i(con)m(trol)g(them.)630
3001 y Fq(testsuite)p Fv(.exp)g(ma)m(y)g(not)f(include)f(path)h
(information;)f(use)h(plain)e(\014lenames.)150 3152 y
Fq(test\014le)p Fr(.exp="testfile1)e(...")630 3262 y
Fv(Sp)s(ecify)38 b(a)j(subset)e(of)i(tests)g(in)d(a)j(suite)e(to)i
(run.)69 b(F)-8 b(or)41 b(compiler)d(or)i(assem)m(bler)g(tests,)630
3372 y(whic)m(h)31 b(often)i(use)f(a)g(single)f(`)p Fr(.exp)p
Fv(')h(script)f(co)m(v)m(ering)i(man)m(y)g(di\013eren)m(t)f(source)g
(\014les,)g(this)630 3481 y(option)h(allo)m(ws)h(y)m(ou)g(to)h(further)
e(restrict)h(the)g(tests)h(b)m(y)f(listing)d(particular)i(source)h
(\014les)630 3591 y(to)e(compile.)41 b(Some)31 b(to)s(ols)g(ev)m(en)g
(supp)s(ort)e(wildcards)g(here.)42 b(The)30 b(wildcards)f(supp)s(orted)
630 3700 y(dep)s(end)g(up)s(on)f(the)j(to)s(ol,)g(but)e(t)m(ypically)g
(they)i(are)g Fr(?)p Fv(,)f Fr(*)p Fv(,)g(and)g Fr([chars])p
Fv(.)150 3852 y Fq(tclv)-5 b(ar)7 b Fr(=)p Fq(v)-5 b(alue)630
3962 y Fv(Y)d(ou)30 b(can)g(de\014ne)f(Tcl)g(v)-5 b(ariables)28
b(for)h(use)h(b)m(y)f(y)m(our)h(test)g(scripts)f(in)f(the)i(same)g(st)m
(yle)g(used)630 4071 y(with)43 b Fr(make)h Fv(for)h(en)m(vironmen)m(t)f
(v)-5 b(ariables.)82 b(F)-8 b(or)46 b(example,)i(`)p
Fr(runtest)29 b(GDB=gdb.old)p Fv(')630 4181 y(de\014nes)39
b(a)h(v)-5 b(ariable)38 b(called)h(`)p Fr(GDB)p Fv(';)44
b(when)39 b(y)m(our)h(scripts)e(refer)i(to)g(`)p Fr($GDB)p
Fv(')f(in)g(this)f(run,)630 4290 y(they)31 b(use)f(the)g(v)-5
b(alue)30 b(`)p Fr(gdb.old)p Fv('.)630 4421 y(The)f(default)g(Tcl)g(v)
-5 b(ariables)28 b(used)h(for)h(most)g(to)s(ols)g(are)g(de\014ned)e(in)
h(the)g(main)g(DejaGn)m(u)630 4531 y Fr(Makefile)p Fv(;)50
b(their)44 b(v)-5 b(alues)44 b(are)i(captured)e(in)g(the)h(`)p
Fr(site.exp)p Fv(')e(\014le.)83 b(See)45 b(Chapter)g(4)630
4640 y([Con\014guration)29 b(dep)s(enden)m(t)h(v)-5 b(alues],)30
b(page)h(15.)150 4792 y Fr(--all)240 b Fv(Displa)m(y)38
b(all)f(test)j(output.)64 b(By)39 b(default,)h Fr(runtest)d
Fv(sho)m(ws)h(only)g(the)g(output)g(of)h(tests)630 4902
y(that)33 b(pro)s(duce)f(unexp)s(ected)g(results;)g(that)h(is,)g(tests)
g(with)e(status)i(`)p Fr(FAIL)p Fv(')f(\(unexp)s(ected)630
5011 y(failure\),)25 b(`)p Fr(XPASS)p Fv(')f(\(unexp)s(ected)h
(success\),)i(or)e(`)p Fr(ERROR)p Fv(')f(\(a)i(sev)m(ere)g(error)f(in)f
(the)h(test)h(case)630 5121 y(itself)7 b(\).)57 b(Sp)s(ecify)34
b(`)p Fr(--all)p Fv(')h(to)i(see)f(output)g(for)g(tests)g(with)f
(status)h(`)p Fr(PASS)p Fv(')g(\(success,)i(as)630 5230
y(exp)s(ected\))c(`)p Fr(XFAIL)p Fv(')f(\(failure,)g(as)h(exp)s
(ected\),)i(or)d(`)p Fr(WARNING)p Fv(')f(\(minor)h(error)g(in)f(the)i
(test)630 5340 y(case)d(itself)7 b(\).)p eop
%%Page: 11 13
11 12 bop 150 -116 a Fv(Chapter)30 b(3:)41 b(Using)29
b Fr(runtest)2453 b Fv(11)150 83 y Fr(--baud)29 b Fq(baud-rate)150
193 y Fr(-b)h Fq(baud-rate)630 302 y Fv(Set)g(the)f(default)g(baud)f
(rate)i(to)g(something)f(other)h(than)f(9600.)42 b(\(Some)30
b(serial)e(in)m(terface)630 412 y(programs,)i(lik)m(e)g
Fr(tip)p Fv(,)g(use)g(a)g(separate)i(initialization)27
b(\014le)j(instead)f(of)i(this)e(v)-5 b(alue.\))150 571
y Fr(--connect)28 b Fq(t)m(yp)s(e)630 681 y Fv(Connect)d(to)g(a)g
(target)h(testing)f(en)m(vironmen)m(t)f(as)h(sp)s(eci\014ed)e(b)m(y)h
Fq(t)m(yp)s(e)p Fv(,)j(if)c(the)i(target)h(is)e(not)630
790 y(the)36 b(computer)g(running)e Fr(runtest)p Fv(.)56
b(F)-8 b(or)37 b(example,)h(use)d(`)p Fr(--connect)p
Fv(')g(to)h(c)m(hange)i(the)630 900 y(program)27 b(used)g(to)i(connect)
f(to)g(a)g(\\bare)g(b)s(oard")f(b)s(o)s(ot)h(monitor.)39
b(The)27 b(c)m(hoices)h(for)g Fq(t)m(yp)s(e)630 1010
y Fv(in)k(the)i(DejaGn)m(u)g(1.0)h(distribution)30 b(are)k(`)p
Fr(rlogin)p Fv(',)f(`)p Fr(telnet)p Fv(',)g(`)p Fr(rsh)p
Fv(',)i(`)p Fr(tip)p Fv(',)f(`)p Fr(kermit)p Fv(',)630
1119 y(and)c(`)p Fr(mondfe)p Fv('.)630 1254 y(The)j(default)f(for)h
(this)f(option)h(dep)s(ends)e(on)i(the)g(con\014guration)g(\(see)h
(Section)f(5.5)h([Re-)630 1363 y(mote)h(targets)g(supp)s(orted],)e
(page)i(32\).)52 b(The)33 b(default)g(is)f(c)m(hosen)j(to)f(b)s(e)f
(the)h(most)g(con-)630 1473 y(v)m(enien)m(t)e(comm)m(unication)f(metho)
s(d)g(a)m(v)-5 b(ailable,)32 b(but)f(often)h(other)g(alternativ)m(es)g
(w)m(ork)g(as)630 1582 y(w)m(ell;)c(y)m(ou)h(ma)m(y)g(\014nd)d(it)i
(useful)f(to)i(try)f(alternativ)m(e)g(connect)i(metho)s(ds)d(if)g(y)m
(ou)i(susp)s(ect)f(a)630 1692 y(comm)m(unication)i(problem)f(with)g(y)m
(our)h(testing)h(target.)150 1851 y Fr(--debug)144 b
Fv(T)-8 b(urns)23 b(on)i(the)f Fr(expect)f Fv(in)m(ternal)h(debugging)f
(output.)39 b(Debugging)24 b(output)h(is)e(displa)m(y)m(ed)630
1961 y(as)44 b(part)g(of)g(the)g Fr(runtest)e Fv(output,)47
b(and)c(logged)i(to)f(a)h(\014le)e(called)g(`)p Fr(dbg.log)p
Fv('.)79 b(The)630 2071 y(extra)25 b(debugging)d(output)i(do)s(es)f
Fn(not)34 b Fv(app)s(ear)23 b(on)h(standard)f(output,)i(unless)d(the)i
(v)m(erb)s(ose)630 2180 y(lev)m(el)33 b(is)g(greater)i(than)e(2)i
(\(for)e(instance,)i(to)f(see)h(debug)d(output)i(immediately)-8
b(,)33 b(sp)s(ecify)630 2290 y(`)p Fr(--debug)c(-v)g(-v)p
Fv('\).)57 b(The)35 b(debugging)g(output)g(sho)m(ws)g(all)g(attempts)i
(at)f(matc)m(hing)g(the)630 2399 y(test)e(output)f(of)g(the)h(to)s(ol)f
(with)f(the)h(scripted)f(patterns)i(describing)c(exp)s(ected)k(output.)
630 2509 y(The)c(output)g(generated)h(with)e(`)p Fr(--strace)p
Fv(')g(also)h(go)s(es)h(in)m(to)g(`)p Fr(dbg.log)p Fv('.)150
2668 y Fr(--help)150 2778 y(-he)336 b Fv(Prin)m(ts)25
b(out)h(a)h(short)e(summary)g(of)h(the)h Fr(runtest)d
Fv(options,)i(then)g(exits)g(\(ev)m(en)h(if)e(y)m(ou)h(also)630
2888 y(sp)s(ecify)j(other)i(options\).)150 3047 y Fr(--host)e
Fq(string)630 3156 y(string)47 b Fv(is)39 b(a)i(full)d(con\014guration)
i(\\triple")f(name)h(as)h(used)e(b)m(y)i Fr(configure)p
Fv(.)67 b(Use)41 b(this)630 3266 y(option)30 b(to)h(o)m(v)m(erride)g
(the)f(default)g(string)f(recorded)i(b)m(y)f(y)m(our)h
(con\014guration's)e(c)m(hoice)j(of)630 3376 y(host.)40
b(This)27 b(c)m(hoice)j(do)s(es)f(not)g(c)m(hange)h(ho)m(w)f(an)m
(ything)f(is)g(actually)g(con\014gured)g(unless)g({)630
3485 y(build)21 b(is)h(also)i(sp)s(eci\014ed;)g(it)f(a\013ects)i
Fn(only)33 b Fv(DejaGn)m(u)24 b(pro)s(cedures)f(that)h(compare)g(the)g
(host)630 3595 y(string)39 b(with)f(particular)g(v)-5
b(alues.)68 b(The)39 b(pro)s(cedures)f Fr(ishost)p Fv(,)j
Fr(istarget)p Fv(,)f Fr(isnative)p Fv(,)630 3704 y(and)d
Fr(setup_xfail)d Fv(are)k(a\013ected)i(b)m(y)d(`)p Fr(--host)p
Fv('.)61 b(In)37 b(this)g(usage,)j Fr(host)c Fv(refers)h(to)i(the)630
3814 y(mac)m(hine)f(that)h(the)f(tests)h(are)g(to)g(b)s(e)e(run)g(on,)j
(whic)m(h)d(ma)m(y)i(not)g(b)s(e)e(the)i(same)f(as)h(the)630
3924 y Fr(build)27 b Fv(mac)m(hine.)39 b(If)28 b Fr(--build)e
Fv(is)i(also)g(sp)s(eci\014ed,)f(then)h Fr(--host)e Fv(refers)i(to)h
(the)f(mac)m(hine)630 4033 y(that)j(the)g(tests)g(wil,)d(b)s(e)i(run)f
(on,)i(not)f(the)h(mac)m(hine)f(DejaGn)m(u)h(is)e(run)g(on.)150
4193 y Fr(--build)f Fq(string)630 4302 y(string)39 b
Fv(is)32 b(a)h(full)e(con\014guration)h(\\triple")g(name)g(as)h(used)f
(b)m(y)h Fr(configure)p Fv(.)45 b(This)31 b(is)h(the)630
4412 y(t)m(yp)s(e)c(of)h(mac)m(hine)f(DejaGn)m(u)h(and)e(the)i(to)s
(ols)f(to)g(b)s(e)g(tested)h(are)g(built)d(on.)39 b(F)-8
b(or)29 b(a)g(normal)630 4521 y(cross)h(this)g(is)f(the)i(same)g(as)f
(the)h(host,)f(but)g(for)g(a)h(canadian)f(cross,)h(they)f(are)h(sep)s
(erate.)150 4681 y Fr(--name)e Fq(name)630 4790 y(name)44
b Fv(is)37 b(a)i(name)g(for)f(the)h(particular)e(testing)h(target)j
(mac)m(hine)d(\(for)h(cross)f(testing\).)630 4900 y(If)31
b(the)i(testing)f(target)h(has)f(IP)g(net)m(w)m(ork)g(supp)s(ort)f
(\(for)h(example,)g Fr(RPC)f Fv(or)h Fr(NFS)p Fv(\),)g(this)f(is)630
5010 y(the)38 b(net)m(w)m(ork)g(name)g(for)f(the)h(target)h(itself.)61
b(\()p Fq(name)43 b Fv(is)37 b Fn(not)i(the)h(c)-5 b(on\014gur)g(ation)
41 b(string)630 5119 y Fv(y)m(ou)26 b(sp)s(ecify)f(as)h(a)h(target)h
(with)c Fr(configure)p Fv(;)i(the)g(`)p Fr(--name)p Fv(')f(option)g
(names)h(a)h(particular)630 5229 y(target,)38 b(rather)e(than)f
(describing)e(a)j(class)f(of)g(targets.\))58 b(F)-8 b(or)36
b(targets)h(that)f(connect)g(in)p eop
%%Page: 12 14
12 13 bop 150 -116 a Fv(12)2364 b(DejaGn)m(u)32 b(T)-8
b(esting)30 b(F)-8 b(ramew)m(ork)630 83 y(other)25 b(w)m(a)m(ys,)i(the)
e(meaning)g(of)g(the)g Fq(name)30 b Fv(string)24 b(dep)s(ends)f(on)i
(the)g(connection)g(metho)s(d.)630 193 y(See)31 b(Section)f(5.5)h
([Remote)h(targets)g(supp)s(orted],)d(page)i(32.)150
352 y Fr(--name)e Fq(string)630 462 y Fv(Sp)s(ecify)24
b(a)j(net)m(w)m(ork)g(name)f(of)g(testing)h(target)g(or)f(its)g(host.)
39 b(The)26 b(particular)e(names)i(that)630 571 y(are)f(meaningful)e
(with)g(`)p Fr(--name)p Fv(')h(will)e(dep)s(end)h(on)h(y)m(our)h(site)g
(con\014guration,)g(and)f(on)h(the)630 681 y(connection)31
b(proto)s(col:)42 b(for)31 b(example,)g Fr(tip)f Fv(connections)h
(require)e(names)i(from)g(a)g(serial)630 790 y(line)24
b(con\014guration)i(\014le)f(\(usually)f(called)h(`)p
Fr(/etc/remote)p Fv('\),)g(while)g Fr(telnet)f Fv(connections)630
900 y(use)30 b(IP)g(hostnames.)150 1059 y Fr(--objdir)e
Fq(path)630 1169 y Fv(Use)45 b Fq(path)g Fv(as)g(the)g(top)g(directory)
f(con)m(taining)g(an)m(y)h(auxiliary)e(compiled)g(test)i(co)s(de.)630
1279 y(This)28 b(defaults)i(to)h(`)p Fr(.)p Fv('.)41
b(Use)30 b(this)f(option)h(to)h(lo)s(cate)g(pre-compiled)e(test)i(co)s
(de.)41 b(Y)-8 b(ou)31 b(can)630 1388 y(normally)e(prepare)g(an)m(y)i
(auxiliary)d(\014les)h(needed)h(with)g Fr(make)p Fv(.)150
1548 y Fr(--outdir)e Fq(path)630 1657 y Fv(W)-8 b(rite)28
b(output)e(logs)h(in)f(directory)h Fq(path)p Fv(.)39
b(The)27 b(default)f(is)h(`)p Fr(.)p Fv(',)h(the)f(directory)g(where)g
(y)m(ou)630 1767 y(start)k Fr(runtest)p Fv(.)39 b(This)29
b(option)h(a\013ects)i(only)e(the)h(summary)e(and)h(the)h(detailed)e
(log)i(\014les)630 1876 y(`)p Fq(to)s(ol)p Fr(.sum)p
Fv(')k(and)g(`)p Fq(to)s(ol)p Fr(.log)p Fv('.)57 b(The)35
b(DejaGn)m(u)i(debug)e(log)h(`)p Fr(dbg.log)p Fv(')e(alw)m(a)m(ys)j
(app)s(ears)630 1986 y(\(when)30 b(requested\))g(in)f(the)i(lo)s(cal)f
(directory)-8 b(.)150 2145 y Fr(--reboot)96 b Fv(Reb)s(o)s(ot)27
b(the)g(target)i(b)s(oard)d(when)g Fr(runtest)f Fv(initializes.)36
b(Usually)-8 b(,)27 b(when)f(running)e(tests)630 2255
y(on)33 b(a)h(separate)g(target)g(b)s(oard,)g(it)e(is)h(safer)g(to)h
(reb)s(o)s(ot)f(the)g(target)i(to)f(b)s(e)e(certain)h(of)h(its)630
2364 y(state.)42 b(Ho)m(w)m(ev)m(er,)33 b(when)c(dev)m(eloping)h(test)h
(scripts,)e(reb)s(o)s(oting)h(tak)m(es)h(a)g(lot)g(of)f(time.)150
2524 y Fr(--srcdir)e Fq(path)630 2633 y Fv(Use)40 b Fq(path)f
Fv(as)h(the)g(top)g(directory)f(for)g(test)i(scripts)d(to)i(run.)67
b Fr(runtest)38 b Fv(lo)s(oks)h(in)f(this)630 2743 y(directory)27
b(for)h(an)m(y)g(sub)s(directory)d(whose)j(name)f(b)s(egins)f(with)h
(the)h(to)s(olname)f(\(sp)s(eci\014ed)630 2853 y(with)32
b(`)p Fr(--tool)p Fv('\).)49 b(F)-8 b(or)34 b(instance,)g(with)e(`)p
Fr(--tool)d(gdb)p Fv(',)34 b Fr(runtest)d Fv(uses)i(tests)h(in)f(sub)s
(di-)630 2962 y(rectories)i(`)p Fr(gdb.*)p Fv(')e(\(with)h(the)g(usual)
f(shell-lik)m(e)g(\014lename)g(expansion\).)53 b(If)34
b(y)m(ou)g(do)h(not)630 3072 y(use)j(`)p Fr(--srcdir)p
Fv(',)g Fr(runtest)e Fv(lo)s(oks)h(for)h(test)h(directories)e(under)f
(the)i(curren)m(t)g(w)m(orking)630 3181 y(directory)-8
b(.)150 3341 y Fr(--strace)28 b Fq(n)630 3450 y Fv(T)-8
b(urn)21 b(on)g(in)m(ternal)g(tracing)h(for)g Fr(expect)p
Fv(,)g(to)h Fq(n)e Fv(lev)m(els)g(deep.)38 b(By)22 b(adjusting)f(the)h
(lev)m(el,)i(y)m(ou)630 3560 y(can)g(con)m(trol)g(the)f(exten)m(t)i(to)
f(whic)m(h)e(y)m(our)i(output)f(expands)f(m)m(ulti-lev)m(el)g(Tcl)h
(statemen)m(ts.)630 3670 y(This)h(allo)m(ws)h(y)m(ou)h(to)g(ignore)g
(some)g(lev)m(els)f(of)h Fr(case)e Fv(or)i Fr(if)f Fv(statemen)m(ts.)41
b(Eac)m(h)26 b(pro)s(cedure)630 3779 y(call)k(or)g(con)m(trol)h
(structure)f(coun)m(ts)h(as)f(one)h(\\lev)m(el".)630
3914 y(The)49 b(output)h(is)f(recorded)g(in)g(the)h(same)g(\014le,)k(`)
p Fr(dbg.log)p Fv(',)f(used)c(for)h(output)f(from)630
4023 y(`)p Fr(--debug)p Fv('.)150 4183 y Fr(--target)28
b Fq(string)630 4292 y Fv(Use)j(this)f(option)h(to)h(o)m(v)m(erride)f
(the)g(default)f(setting)h(\(running)e(nativ)m(e)i(tests\).)44
b Fq(string)38 b Fv(is)630 4402 y(a)29 b(full)e(con\014guration)h
(\\triple")g(name)1955 4369 y Fp(1)2021 4402 y Fv(as)h(used)f(b)m(y)h
Fr(configure)p Fv(.)38 b(This)27 b(option)h(c)m(hanges)630
4511 y(the)43 b(con\014guration)f Fr(runtest)f Fv(uses)h(for)h(the)g
(default)f(to)s(ol)g(names,)k(and)c(other)h(setup)630
4621 y(information.)59 b(See)37 b(section)g(\\Using)g
Fr(configure)p Fv(")e(in)g Fq(Cygn)m(us)h(con\014gure)5
b Fv(,)39 b(for)e(details)630 4731 y(ab)s(out)30 b Fr(configure)e
Fv(names.)p 150 4829 1200 4 v 192 4895 a Fp(1)275 4928
y Fv(Con\014guration)h(triples)f(ha)m(v)m(e)k(the)e(form)g(`)p
Fq(cpu)p Fr(-)p Fq(v)m(endor)p Fr(-)p Fq(os)t Fv('.)p
eop
%%Page: 13 15
13 14 bop 150 -116 a Fv(Chapter)30 b(3:)41 b(Using)29
b Fr(runtest)2453 b Fv(13)150 83 y Fr(--verbose)150 193
y(-v)384 b Fv(T)-8 b(urns)32 b(on)h(more)h(output.)50
b(Rep)s(eating)33 b(this)f(option)h(increases)g(the)h(amoun)m(t)g(of)f
(output)630 302 y(displa)m(y)m(ed.)65 b(Lev)m(el)39 b(one)g(\(`)p
Fr(-v)p Fv('\))h(is)e(simply)e(test)k(output.)66 b(Lev)m(el)40
b(t)m(w)m(o)g(\(`)p Fr(-v)30 b(-v)p Fv('\))39 b(sho)m(ws)630
412 y(messages)46 b(on)f(options,)k(con\014guration,)g(and)c(pro)s
(cess)f(con)m(trol.)86 b(V)-8 b(erb)s(ose)46 b(messages)630
521 y(app)s(ear)31 b(in)e(the)j(detailed)e(\(`)p Fr(*.log)p
Fv('\))h(log)g(\014le,)g(but)f(not)i(in)e(the)h(summary)f(\(`)p
Fr(*.sum)p Fv('\))h(log)630 631 y(\014le.)150 790 y Fr(--version)150
900 y(-V)384 b Fv(Prin)m(ts)26 b(out)h(the)g(v)m(ersion)g(n)m(um)m(b)s
(ers)f(of)h(DejaGn)m(u,)i Fr(expect)c Fv(and)h(Tcl,)i(and)e(exits)h
(without)630 1010 y(running)h(an)m(y)i(tests.)150 1169
y Fr(-D0)150 1279 y(-D1)336 b Fv(Start)26 b(the)g(in)m(ternal)e(Tcl)h
(debugger.)39 b(The)25 b(Tcl)g(debugger)h(supp)s(orts)e(breakp)s(oin)m
(ts,)h(single)630 1388 y(stepping,)42 b(and)e(other)g(common)h
(debugging)e(activities.)70 b(\(See)41 b Fq(A)g(Debugger)g(for)f(Tcl)
630 1498 y(Applications)32 b Fv(b)m(y)e(Don)h(Lib)s(es.)1722
1465 y Fp(2)1758 1498 y Fv(\))630 1632 y(If)c(y)m(ou)h(sp)s(ecify)e(`)p
Fr(-D1)p Fv(',)j(the)e Fr(expect)f Fv(shell)g(stops)i(at)g(a)g(breakp)s
(oin)m(t)f(as)h(so)s(on)f(as)h(DejaGn)m(u)630 1742 y(in)m(v)m(ok)m(es)j
(it.)630 1876 y(If)i(y)m(ou)h(sp)s(ecify)f(`)p Fr(-D0)p
Fv(',)h(DejaGn)m(u)h(starts)f(as)g(usual,)f(but)g(y)m(ou)h(can)g(en)m
(ter)g(the)g(debugger)630 1986 y(b)m(y)c(sending)f(an)h(in)m(terrupt)f
(\(e.g.)42 b(b)m(y)31 b(t)m(yping)2219 1983 y Fk(h)p
2244 1930 106 4 v 2244 1986 a Fj(C-c)p 2244 2001 V 2345
1983 a Fk(i)2375 1986 y Fv(\).)p 150 5099 1200 4 v 192
5165 a Fp(2)275 5198 y Fv(Distributed)d(in)h(P)m(ostScript)h(form)g
(with)f Fr(expect)g Fv(as)h(the)h(\014le)275 5308 y(`)p
Fr(expect/tcl-debug.ps)p Fv('.)p eop
%%Page: 14 16
14 15 bop 150 -116 a Fv(14)2364 b(DejaGn)m(u)32 b(T)-8
b(esting)30 b(F)-8 b(ramew)m(ork)p eop
%%Page: 15 17
15 16 bop 150 -116 a Fv(Chapter)30 b(4:)41 b(Setting)30
b Fr(runtest)e Fv(defaults)2055 b(15)150 100 y Fs(4)80
b(Setting)53 b Fl(runtest)g Fs(defaults)275 334 y Fv(The)46
b(site)g(con\014guration)h(\014le,)j(`)p Fr(site.exp)p
Fv(',)f(captures)e(con\014guration-dep)s(enden)m(t)e(v)-5
b(alues)47 b(and)150 443 y(propagates)36 b(them)f(to)h(the)g(DejaGn)m
(u)g(test)g(en)m(vironmen)m(t)f(using)f(Tcl)g(v)-5 b(ariables.)54
b(This)33 b(ties)i(the)h(De-)150 553 y(jaGn)m(u)30 b(test)i(scripts)d
(in)m(to)h(the)h Fr(configure)d Fv(and)h Fr(make)h Fv(programs.)275
687 y(DejaGn)m(u)h(supp)s(orts)d(more)j(than)f(one)h(`)p
Fr(site.exp)p Fv(')d(\014le.)40 b(The)30 b(m)m(ultiple)e(instances)i
(of)h(`)p Fr(site.exp)p Fv(')150 797 y(are)f(loaded)f(in)g(a)h(\014xed)
f(order)g(built)f(in)m(to)h(DejaGn)m(u)i(\(the)f(more)g(lo)s(cal)f
(last\).)41 b(The)29 b(\014rst)g(\014le)g(loaded)g(is)150
907 y(the)i(optional)e Fr(~/.dejagnurc)p Fv(,)e(then)j(the)h(lo)s(cal)f
(\014les,)f(and)h(\014nally)e(the)j(global)f(\014le.)199
1041 y(1.)61 b(There)23 b(is)f(am)i(optional)e(\\master")j(`)p
Fr(site.exp)p Fv(',)e(capturing)g(con\014guration)f(v)-5
b(alues)23 b(that)h(apply)e(to)330 1151 y(DejaGn)m(u)32
b(across)g(the)f(b)s(oard,)g(in)f(eac)m(h)i(con\014guration-sp)s
(eci\014c)e(sub)s(directory)f(of)j(the)f(DejaGn)m(u)330
1260 y(library)g(directory)-8 b(.)49 b Fr(runtest)31
b Fv(loads)i(these)g(v)-5 b(alues)33 b(\014rst.)48 b(See)34
b(App)s(endix)c(A)j([Con\014guring)f(and)330 1370 y(Installing)h
(DejaGn)m(u],)38 b(page)f(49.)57 b(The)35 b(master)h(`)p
Fr(site.exp)p Fv(')e(con)m(tains)i(the)f(default)g(v)-5
b(alues)35 b(for)330 1479 y(all)f(targets)j(and)d(hosts)h(supp)s(orted)
f(b)m(y)h(DejaGn)m(u.)56 b(This)33 b(master)j(\014le)e(is)g(iden)m
(ti\014ed)g(b)m(y)h(setting)330 1589 y(the)27 b(en)m(vironmen)m(t)g(v)
-5 b(ariable)26 b Fr(DEJAGNU)f Fv(to)j(the)g(name)f(of)g(the)h(\014le.)
39 b(This)25 b(is)h(also)h(refered)g(to)h(as)g(the)330
1699 y(\\global")j(con\014g)f(\014le.)199 1833 y(2.)61
b(An)m(y)31 b(directory)f(con)m(taining)g(a)h(con\014gured)f(test)h
(suite)f(also)g(has)h(a)g(`)p Fr(site.exp)p Fv(',)e(capturing)g(con-)
330 1943 y(\014guration)g(v)-5 b(alues)29 b(sp)s(eci\014c)f(to)i(the)g
(to)s(ol)g(under)e(test.)41 b(Since)29 b Fr(runtest)f
Fv(loads)h(these)h(v)-5 b(alues)29 b(last,)330 2052 y(the)40
b(individual)35 b(test)40 b(con\014guration)g(can)f(either)h(rely)e(on)
i(and)f(use,)j(or)e(o)m(v)m(erride,)i(an)m(y)e(of)g(the)330
2162 y(global)30 b(v)-5 b(alues)29 b(from)h(the)h(\\master")g(`)p
Fr(site.exp)p Fv('.)330 2296 y(Y)-8 b(ou)24 b(can)g(usually)e(generate)
j(or)f(up)s(date)f(the)h(testsuite)g(`)p Fr(site.exp)p
Fv(')e(b)m(y)i(t)m(yping)f(`)p Fr(make)30 b(site.exp)p
Fv(')330 2406 y(in)f(the)i(test)g(suite)f(directory)-8
b(,)30 b(after)h(the)g(test)g(suite)f(is)f(con\014gured.)199
2540 y(3.)61 b(Y)-8 b(ou)34 b(can)h(also)e(ha)m(v)m(e)j(a)e(\014le)f
(in)g(y)m(our)g(home)h(directory)g(called)f Fr(.dejagnurc)p
Fv(.)48 b(This)33 b(gets)h(loaded)330 2650 y(\014rst)j(b)s(efore)g(the)
g(other)h(con\014g)f(\014les.)61 b(Usually)36 b(this)g(is)h(used)f(for)
h(p)s(ersonal)f(stu\013,)j(lik)m(e)e(setting)330 2760
y Fr(all_flag)28 b Fv(so)j(all)e(the)i(output)f(gets)h(prin)m(ted,)e
(or)h(v)m(erb)s(osit)m(y)h(lev)m(els.)275 2919 y(Y)-8
b(ou)29 b(can)g(further)f(o)m(v)m(erride)h(the)g(default)g(v)-5
b(alues)28 b(in)g(a)h(user-editable)f(section)h(of)g(an)m(y)g(`)p
Fr(site.exp)p Fv(',)150 3029 y(or)h(b)m(y)h(setting)f(v)-5
b(ariables)29 b(on)h(the)h Fr(runtest)d Fv(command)i(line.)150
3253 y Fi(4.0.1)63 b(Con\014g)41 b(V)-10 b(ariables)275
3445 y Fv(DejaGn)m(u)35 b(uses)f(a)h(named)g(arra)m(y)g(in)e(Tcl)h(to)i
(hold)d(all)h(the)h(info)e(for)i(eac)m(h)h(mac)m(hine.)53
b(In)34 b(the)h(case)150 3555 y(of)30 b(a)g(canadian)f(cross,)h(this)e
(means)i(host)f(information)f(as)i(w)m(ell)f(as)g(target)j
(information.)38 b(The)29 b(named)150 3665 y(arra)m(y)38
b(is)e(called)g Fr(target_info)p Fv(,)g(and)g(it)h(has)g(t)m(w)m(o)h
(indices.)59 b(The)36 b(follo)m(wing)g(\014elds)f(are)j(part)f(of)g
(the)150 3774 y(arra)m(y)-8 b(.)150 3934 y Fr(name)288
b Fv(The)36 b(name)g(of)g(the)g(target.)59 b(\(mostly)36
b(for)g(error)g(messages\))h(This)d(should)g(also)i(b)s(e)g(the)630
4043 y(string)24 b(used)g(for)h(this)e(target's)k(arra)m(y)-8
b(.)40 b(It)25 b(should)e(also)i(b)s(e)f(the)h(same)g(as)h(the)f(link)m
(er)e(script)630 4153 y(so)38 b(w)m(e)g(can)g(\014nd)e(them)h
(dynamically)-8 b(.)60 b(This)36 b(should)g(b)s(e)g(the)i(same)g(as)g
(the)f(argumen)m(t)630 4262 y(used)30 b(for)g Fr(push_target{})p
Fv(.)150 4422 y Fr(ldflags)144 b Fv(This)45 b(is)g(the)i(link)m(er)d
(\015ags)j(required)e(to)i(pro)s(duce)e(a)i(fully)d(link)m(ed)h
(executable.)89 b(F)-8 b(or)630 4531 y Fr(libgloss)28
b Fv(supp)s(orted)h(targets)i(this)f(is)f(usually)f(just)i(the)h(name)f
(of)h(the)f(link)m(er)f(script.)150 4691 y Fr(config)192
b Fv(The)37 b(target)j(canonical)d(for)h(this)e(target.)65
b(This)36 b(is)h(used)g(b)m(y)g(some)i(init)d(\014les)g(to)j(mak)m(e)
630 4800 y(sure)30 b(the)g(target)i(is)e(supp)s(orted.)150
4960 y Fr(cflags)192 b Fv(The)30 b(\015ags)g(required)f(to)i(pro)s
(duce)e(an)i(ob)5 b(ject)31 b(\014le)e(from)h(a)h(source)g(\014le.)150
5119 y Fr(connect)144 b Fv(This)29 b(is)h(the)h(connectmo)s(de)g(for)g
(this)e(target.)44 b(This)29 b(is)g(for)i(b)s(oth)f(IP)g(and)h(serial)e
(connec-)630 5229 y(tions.)40 b(T)m(ypically)29 b(this)g(is)g(either)h
Fr(telnet)p Fv(,)f Fr(rlogin)p Fv(,)g(or)h Fr(rsh)p Fv(.)p
eop
%%Page: 16 18
16 17 bop 150 -116 a Fv(16)2364 b(DejaGn)m(u)32 b(T)-8
b(esting)30 b(F)-8 b(ramew)m(ork)150 83 y Fr(target)192
b Fv(This)26 b(is)i(the)g(hostname)h(of)f(the)h(target.)41
b(This)27 b(is)g(for)h(TCP/IP)g(based)g(connections,)h(and)630
193 y(is)g(also)i(used)e(for)h(v)m(ersion)g(of)h(tip)e(that)i(use)f
(/etc/remote.)150 352 y Fr(serial)192 b Fv(This)29 b(is)g(the)i(serial)
e(p)s(ort.)40 b(This)28 b(is)i(t)m(ypically)f(/dev/tt)m(y?)42
b(or)31 b(com?:.)150 511 y Fr(netport)144 b Fv(This)29
b(is)g(the)i(IP)f(p)s(ort.)40 b(This)29 b(is)g(commonly)h(used)g(for)g
(telneting)g(to)h(target)h(b)s(oards)d(that)630 621 y(are)g(connected)g
(to)g(a)f(terminal)f(serv)m(er.)40 b(In)28 b(that)h(case)g(the)f(IP)g
(p)s(ort)g(sp)s(eci\014es)f(the)h(whic)m(h)630 731 y(serial)h(p)s(ort)h
(to)h(use.)150 890 y Fr(baud)288 b Fv(This)29 b(is)g(the)i(baud)e(rate)
i(for)f(a)h(serial)e(p)s(ort)h(connection.)150 1049 y
Fr(x10)336 b Fv(This)29 b(is)h(the)h(parameters)h(for)f(an)f(x10)i(con)
m(troller.)43 b(These)30 b(are)i(simple)d(devices)h(that)i(let)630
1159 y(us)e(p)s(o)m(w)m(er)g(cycle)h(or)f(reset)h(a)g(target)h(b)s
(oard)d(remotely)-8 b(.)150 1318 y Fr(fileid)192 b Fv(This)29
b(is)g(the)i(\014leid)d(or)i(spa)m(wn)g(id)f(of)h(of)h(the)g
(connection.)150 1478 y Fr(prompt)192 b Fv(a)31 b(glob)f(st)m(yle)g
(pattern)h(to)g(recognize)g(the)g(prompt.)150 1637 y
Fr(abbrev)192 b Fv(abbreviation)29 b(for)h(to)s(ol)h(init)d(\014les.)
150 1797 y Fr(ioport)192 b Fv(This)30 b(is)h(the)h(p)s(ort)f(for)h(I/O)
g(on)g(dual)e(p)s(ort)i(systems.)45 b(In)31 b(this)g(con\014guration,)h
(the)g(main)630 1906 y(serial)f(p)s(ort)g Fr(0)h Fv(is)f(usually)f
(used)h(for)h(stdin)e(and)i(stdout,)h(whic)m(h)d(the)j(second)f(serial)
f(p)s(ort)630 2016 y(can)g(b)s(e)e(used)h(for)g(debugging.)275
2175 y(The)d(\014rst)f(index)h(in)m(to)g(the)h(arra)m(y)g(is)f(the)g
(same)h(v)-5 b(alue)27 b(as)h(used)f(in)f(the)i Fr(name)e
Fv(\014eld.)39 b(This)26 b(is)g(usually)150 2285 y(a)33
b(short)g(v)m(ersion)f(of)h(the)g(name)g(of)g(the)g(target)h(b)s(oard.)
47 b(F)-8 b(or)33 b(an)g(example,)g(here's)g(the)g(settings)g(I)f(use)
150 2394 y(for)f(m)m(y)h Fr(Motorola's)d(IDP)i Fv(b)s(oard)g(and)g(m)m
(y)h Fr(Motorola)d Fv(6U)j(VME)g Fr(MVME135-1)d Fv(b)s(oard.)44
b(\(b)s(oth)31 b(m68k)150 2504 y(targets\))150 2588 y
Fm(\013)p 200 2588 3554 4 v 3553 w(\010)p 150 4758 4
2123 v 178 2741 a Fr(#)48 b(IDP)f(board)178 2845 y(set)g
(target_info\(idp,name\))328 b("idp")178 2948 y(set)47
b(target_info\(idp,ldflags\))184 b("-Tidp.ld")178 3052
y(set)47 b(target_info\(idp,config\))232 b(m68k-unknown-aout)178
3156 y(set)47 b(target_info\(idp,cflags\))232 b("")178
3260 y(set)47 b(target_info\(idp,connect\))184 b(telnet)178
3363 y(set)47 b(target_info\(idp,target\))232 b("s7")178
3467 y(set)47 b(target_info\(idp,serial\))232 b("tstty7")178
3571 y(set)47 b(target_info\(idp,netport\))184 b("wharfrat:1007")178
3675 y(set)47 b(target_info\(idp,baud\))328 b("9600")178
3779 y(#)48 b(MVME)e(135)h(board)178 3882 y(set)g
(target_info\(idp,name\))328 b("mvme")178 3986 y(set)47
b(target_info\(idp,ldflags\))184 b("-Tmvme.ld")178 4090
y(set)47 b(target_info\(idp,config\))232 b(m68k-unknown-aout)178
4194 y(set)47 b(target_info\(idp,cflags\))232 b("")178
4297 y(set)47 b(target_info\(idp,connect\))184 b(telnet)178
4401 y(set)47 b(target_info\(idp,target\))232 b("s8")178
4505 y(set)47 b(target_info\(idp,serial\))232 b("tstty8")178
4609 y(set)47 b(target_info\(idp,netport\))184 b("wharfrat:1008")178
4713 y(set)47 b(target_info\(idp,baud\))328 b("9600")p
3803 4758 V 150 4810 a Fm(\012)p 200 4810 3554 4 v 3553
w(\011)275 4954 y Fv(DejaGn)m(u)37 b(can)g(use)g(this)f(information)f
(to)i(switc)m(h)g(b)s(et)m(w)m(een)g(m)m(ultiple)e(targets)j(in)d(one)i
(test)h(run.)150 5064 y(This)29 b(is)g(done)h(through)g(the)g(use)g(of)
h(the)g Fr(push_target)c Fv(pro)s(cedure,)i(whic)m(h)g(is)h(discussed)e
(elsewhere.)275 5199 y(This)35 b(arra)m(y)j(can)f(also)h(hold)d
(information)h(for)h(a)h(remote)g(host,)h(whic)m(h)d(is)g(used)h(when)f
(testing)i(a)150 5308 y(candain)d(cross.)59 b(In)35 b(this)g(case,)k
(the)e(only)e(thing)g(di\013eren)m(t)h(is)f(the)i(index)e(is)g(just)h
Fr(host)p Fv(.)57 b(Here's)37 b(the)p eop
%%Page: 17 19
17 18 bop 150 -116 a Fv(Chapter)30 b(4:)41 b(Setting)30
b Fr(runtest)e Fv(defaults)2055 b(17)150 83 y(settings)32
b(I)f(use)h(to)g(run)e(tests)j(on)f(m)m(y)f(NT)h(mac)m(hine)f(while)f
(running)f(DejaGn)m(u)k(on)e(a)h(Unix)f(mac)m(hine.)150
193 y(\(in)e(this)h(case)h(a)g(Lin)m(ux)e(b)s(o)m(x\))150
276 y Fm(\013)p 200 276 3554 4 v 3553 w(\010)p 150 793
4 470 v 178 437 a Fr(set)47 b(target_info\(host,name\))280
b("nt-host")178 541 y(set)47 b(target_info\(host,config\))184
b("386-unknown-winnt")178 645 y(set)47 b(target_info\(host,connect\))
136 b("telnet")178 748 y(set)47 b(target_info\(host,target\))184
b("ripple")p 3803 793 V 150 845 a Fm(\012)p 200 845 3554
4 v 3553 w(\011)275 990 y Fv(There)31 b(is)f(more)i(info)f(on)g(ho)m(w)
h(to)g(use)g(these)g(v)-5 b(ariables)30 b(in)g(the)i(sections)g(on)f
(the)h(con\014g)g(\014les.)44 b(See)150 1100 y(Chapter)30
b(4)h([Con\014guration)e(Files],)h(page)h(18.)275 1234
y(In)37 b(the)h(user)g(editable)f(second)h(section)h(of)f(`)p
Fr(site.exp)p Fv(',)h(y)m(ou)f(can)h(not)f(only)g(o)m(v)m(erride)g(the)
g(con-)150 1344 y(\014guration)32 b(v)-5 b(ariables)31
b(captured)h(in)g(the)h(\014rst)e(section,)j(but)e(also)h(sp)s(ecify)e
(default)h(v)-5 b(alues)32 b(for)g(all)g(the)150 1454
y Fr(runtest)d Fv(command)h(line)f(options.)42 b(Sa)m(v)m(e)32
b(for)e(`)p Fr(--debug)p Fv(',)g(`)p Fr(--help)p Fv(',)g(and)g(`)p
Fr(--version)p Fv(',)f(eac)m(h)j(com-)150 1563 y(mand)j(line)f(option)i
(has)g(an)g(asso)s(ciated)g(Tcl)f(v)-5 b(ariable.)57
b(Use)36 b(the)g(Tcl)f Fr(set)g Fv(command)h(to)h(sp)s(ecify)e(a)150
1673 y(new)j(default)h(v)-5 b(alue)38 b(\(as)h(for)g(the)g
(con\014guration)g(v)-5 b(ariables\).)65 b(The)38 b(follo)m(wing)g
(table)h(describ)s(es)e(the)150 1782 y(corresp)s(ondence)j(b)s(et)m(w)m
(een)h(command)g(line)d(options)i(and)g(v)-5 b(ariables)39
b(y)m(ou)i(can)g(set)g(in)e(`)p Fr(site.exp)p Fv('.)150
1892 y(See)31 b(Chapter)e(3)i([Running)d(the)j(T)-8 b(ests],)31
b(page)g(9,)g(for)g(explanations)e(of)h(the)h(command-line)e(options.)
350 2033 y Fn(runtest)187 b(Tcl)379 2143 y(option)h(variable)395
b(description)p 150 2178 3600 4 v 341 2288 a Fr(--all)233
b(all)p 964 2288 29 4 v 33 w(flag)333 b Fv(displa)m(y)29
b(all)g(test)i(results)e(if)h(set)293 2397 y Fr(--baud)233
b(baud)510 b Fv(set)31 b(the)g(default)e(baud)g(rate)j(to)f(something)
1516 2507 y(other)g(than)f(9600.)150 2611 y Fr(--connect)232
b(connectmode)174 b Fv(`)p Fr(rlogin)p Fv(',)30 b(`)p
Fr(telnet)p Fv(',)f(`)p Fr(rsh)p Fv(',)h(`)p Fr(kermit)p
Fv(',)g(`)p Fr(tip)p Fv(',)1516 2721 y(or)h(`)p Fr(mondfe)p
Fv(')293 2840 y Fr(--mail)233 b(mailing)p 1156 2840 V
32 w(list)142 b Fv(address)30 b(list)f(for)h(mailing)e(test)j(output)
293 2949 y Fr(--name)233 b(targetname)222 b Fv(net)m(w)m(ork)31
b(name)g(of)f(testing)h(target)h(or)e(its)1516 3059 y(host)198
3177 y Fr(--outdir)232 b(outdir)414 b Fv(directory)30
b(for)g(`)p Fq(to)s(ol)p Fr(.sum)p Fv(')g(and)g(`)p Fq(to)s(ol)p
Fr(.log)p Fv(')198 3287 y Fr(--objdir)232 b(objdir)414
b Fv(directory)30 b(for)g(compiled)f(binaries)198 3397
y Fr(--reboot)232 b(reboot)414 b Fv(reb)s(o)s(ot)30 b(the)h(target)h
(if)d(set)i(to)g Fr("1")p Fv(;)f(do)g(not)1516 3506 y(reb)s(o)s(ot)g
(if)g(set)h(to)g Fr("0")e Fv(\(the)i(default\))198 3625
y Fr(--srcdir)232 b(srcdir)414 b Fv(directory)30 b(of)h(test)g(sub)s
(directories)198 3734 y Fr(--strace)232 b(tracelevel)222
b Fv(a)31 b(n)m(um)m(b)s(er:)44 b(Tcl)30 b(trace)i(depth)293
3844 y Fr(--tool)233 b(tool)510 b Fv(name)31 b(of)f(to)s(ol)g(to)i
(test;)f(iden)m(ti\014es)e(init,)g(test)1516 3954 y(sub)s(dir)150
4058 y Fr(--verbose)232 b(verbose)366 b Fv(v)m(erb)s(osit)m(y)30
b(lev)m(el.)46 b(As)30 b(option,)g(use)g(m)m(ultiple)1516
4167 y(times;)g(as)h(v)-5 b(ariable,)29 b(set)i(a)g(n)m(um)m(b)s(er,)e
(0)i(or)1516 4277 y(greater)198 4381 y Fr(--target)232
b(target)p 1108 4381 V 32 w(triplet)46 b Fv(The)30 b(canonical)g
(con\014guration)g(string)f(for)1516 4491 y(the)i(target.)293
4595 y Fr(--host)233 b(host)p 1012 4595 V 33 w(triplet)141
b Fv(The)30 b(canonical)g(con\014guration)g(string)f(for)1516
4705 y(the)i(host.)245 4809 y Fr(--build)233 b(build)p
1060 4809 V 33 w(triplet)93 b Fv(The)30 b(canonical)g(con\014guration)g
(string)f(for)1516 4919 y(the)i(build)c(host.)p eop
%%Page: 18 20
18 19 bop 150 -116 a Fv(18)2364 b(DejaGn)m(u)32 b(T)-8
b(esting)30 b(F)-8 b(ramew)m(ork)150 83 y Fi(4.0.2)63
b(Master)41 b(Con\014g)h(File)275 276 y Fv(The)28 b(master)i(con\014g)g
(\014le)e(is)h(where)g(all)f(the)i(target)g(sp)s(eci\014c)f(con\014g)g
(v)-5 b(ariables)28 b(get)j(set)f(for)f(a)h(whole)150
385 y(site)39 b(get)h(set.)67 b(The)38 b(idea)g(is)g(that)i(for)f(a)g
(cen)m(tralized)g(testing)g(lab)f(where)g(p)s(eople)g(ha)m(v)m(e)i(to)g
(share)f(a)150 495 y(target)31 b(b)s(et)m(w)m(een)f(m)m(ultiple)d(dev)m
(elop)s(ers.)39 b(There)29 b(are)h(settings)f(for)g(b)s(oth)g(remote)h
(targets)g(and)f(remote)150 604 y(hosts.)51 b(Here's)35
b(an)f(example)g(of)g(a)g(Master)h(Con\014g)e(File)g(\(also)i(called)e
(the)h(Global)f(con\014g)h(\014le\))g(for)g(a)150 714
y Fn(c)-5 b(anadian)32 b(cr)-5 b(oss)p Fv(.)42 b(A)28
b(canadian)f(cross)h(is)f(when)g(y)m(ou)i(build)c(and)i(test)i(a)f
(cross)g(compiler)f(on)h(a)g(mac)m(hine)150 824 y(other)j(than)f(the)g
(one)h(it's)f(to)h(b)s(e)f(hosted)g(on.)275 958 y(Here)f(w)m(e)g(ha)m
(v)m(e)h(the)f(con\014g)f(settings)h(for)f(our)h(California)d(o\016ce.)
41 b(Note)30 b(that)f(all)f(con\014g)h(v)-5 b(alues)28
b(are)150 1068 y(site)36 b(dep)s(endan)m(t.)58 b(Here)36
b(w)m(e)h(ha)m(v)m(e)h(t)m(w)m(o)f(sets)g(of)f(v)-5 b(alues)36
b(that)h(w)m(e)g(use)e(for)i(testing)f(m68k-aout)i(cross)150
1177 y(compilers.)56 b(As)36 b(b)s(oth)f(of)h(these)h(target)g(b)s
(oards)e(has)h(a)g(di\013eren)m(t)f(debugging)g(proto)s(col,)j(w)m(e)e
(test)h(on)150 1287 y(b)s(oth)30 b(of)g(them)h(in)e(sequence.)150
1366 y Fm(\013)p 200 1366 3554 4 v 3553 w(\010)p 150
4664 4 3252 v 178 1519 a Fr(global)46 b(CFLAGS)178 1622
y(global)g(CXXFLAGS)178 1830 y(case)h("$target_triplet")c(in)k({)369
1934 y({)h("native")d(})j({)560 2038 y(set)f(target_abbrev)d(unix)369
2141 y(})369 2245 y({)k("m68*-unknown-aout")42 b(})48
b({)560 2349 y(set)f(target_abbrev)712 b("rom68k")560
2453 y(#)47 b(IDP)g(target)953 b(#)48 b(IDP)f(board)f(with)h(rom68k)f
(monitor)560 2556 y(set)h(target_info\(idp,name\))328
b("idp")560 2660 y(set)47 b(target_info\(idp,ldflags\))184
b("-Tidp.ld")560 2764 y(set)47 b(target_info\(idp,config\))232
b(m68k-unknown-aout)560 2868 y(set)47 b(target_info\(idp,cflags\))232
b("")560 2972 y(set)47 b(target_info\(idp,connect\))184
b(telnet)560 3075 y(set)47 b(target_info\(idp,target\))232
b("s7")560 3179 y(set)47 b(target_info\(idp,serial\))232
b("tstty12")560 3283 y(set)47 b(target_info\(idp,netport\))184
b("truckin:1007")560 3387 y(set)47 b(target_info\(idp,baud\))328
b("9600")560 3490 y(#)47 b(MVME)g(target)905 b(#)48 b(Motorola)d(MVME)i
(135)g(with)f(BUG)h(monitor)560 3594 y(set)g(target_info\(mvme,name\))
280 b("mvme")560 3698 y(set)47 b(target_info\(mvme,ldflags)o(\))137
b("-Tmvme.ld")560 3802 y(set)47 b(target_info\(mvme,config\))184
b(m68k-unknown-aout)560 3906 y(set)47 b(target_info\(mvme,cflags\))184
b("")560 4009 y(set)47 b(target_info\(mvme,connect)o(\))137
b(telnet)560 4113 y(set)47 b(target_info\(mvme,target\))184
b("s4")560 4217 y(set)47 b(target_info\(mvme,serial\))184
b("tstty8")560 4321 y(set)47 b(target_info\(mvme,netport)o(\))137
b("truckin:1004")560 4424 y(set)47 b(target_info\(mvme,baud\))280
b("9600")417 4528 y(})178 4632 y(})p 3803 4664 V 150
4716 a Fm(\012)p 200 4716 3554 4 v 3553 w(\011)275 4861
y Fv(In)27 b(this)g(case,)j(w)m(e)f(ha)m(v)m(e)h(supp)s(ort)c(for)i
(sev)m(eral)h(remote)g(hosts)g(for)f(our)g(m68k-aout)i(cross)e
(compiler.)150 4971 y(T)m(ypically)h(the)j(remote)g(Unix)e(hosts)h(run)
f(DejaGn)m(u)i(lo)s(cally)-8 b(,)31 b(but)f(w)m(e)i(also)f(use)g(them)g
(for)g(debugging)150 5080 y(the)c(testsuites)f(when)g(w)m(e)h(\014nd)e
(problems)g(in)g(running)f(on)j(remote)g(hosts.)40 b(Exp)s(ect)26
b(w)m(on't)h(run)e(on)i(NT,)150 5190 y(so)j(DejaGn)m(u)h(is)e(run)f(on)
i(the)g(lo)s(cal)f(build)d(mac)m(hine,)k(and)g(it'll)e(connect)i(to)h
(the)f(NT)g(host)f(and)h(run)e(all)150 5300 y(the)j(tests)g(for)f(this)
f(cross)i(compiler)e(on)h(that)h(host.)p eop
%%Page: 19 21
19 20 bop 150 -116 a Fv(Chapter)30 b(4:)41 b(Setting)30
b Fr(runtest)e Fv(defaults)2055 b(19)390 52 y Fm(\013)p
440 52 3314 4 v 3313 w(\010)p 390 3063 4 2964 v 418 228
a Fr(case)47 b("$host_triplet")c(in)48 b({)609 332 y("native")e({)609
436 y(})609 540 y("i?86-*-linux*")e({)906 b(#)48 b(Linux)e(host)800
643 y(set)h(target_info\(host,name\))280 b("linux-host")800
747 y(set)47 b(target_info\(host,config\))184 b($host_triplet)800
851 y(set)47 b(target_info\(host,connect)o(\))137 b(rlogin)800
955 y(set)47 b(target_info\(host,target\))184 b(chinadoll)609
1059 y(})609 1162 y("i?86-*-winnt)1094 b(#)48 b(NT)f(host)800
1266 y(set)g(target_info\(host,name\))280 b("nt-host")800
1370 y(set)47 b(target_info\(host,config\))184 b(i386-unknown-winnt)800
1474 y(set)47 b(target_info\(host,connect)o(\))137 b(telnet)800
1577 y(set)47 b(target_info\(host,target\))184 b(ripple)609
1681 y(})609 1785 y("hppa*-hp-hpux*")43 b({)859 b(#)48
b(HP-UX)e(host)800 1889 y(set)h(target_info\(host,name\))280
b("hpux-host")800 1993 y(set)47 b(target_info\(host,config\))184
b($host_triplet)800 2096 y(set)47 b(target_info\(host,connect)o(\))137
b(rlogin)800 2200 y(set)47 b(target_info\(host,target\))184
b(slipknot)800 2304 y(})609 2408 y("sparc-sun-sunos*")43
b({)763 b(#)48 b(SunOS)e(\(sun4\))800 2511 y(set)h
(target_info\(host,name\))280 b("sunos-host")800 2615
y(set)47 b(target_info\(host,config\))184 b($host_triplet)800
2719 y(set)47 b(target_info\(host,connect)o(\))137 b(rlogin)800
2823 y(set)47 b(target_info\(host,target\))184 b(darkstar)609
2927 y(})418 3030 y(})p 3803 3063 V 390 3115 a Fm(\012)p
440 3115 3314 4 v 3313 w(\011)150 3339 y Fi(4.0.3)63
b(Lo)s(cal)40 b(Con\014g)i(File)275 3531 y Fv(It)33 b(is)g(usually)e
(more)j(con)m(v)m(enien)m(t)h(to)f(k)m(eep)h(these)f(\\man)m(ual)f(o)m
(v)m(errides")i(in)d(the)i(`)p Fr(site.exp)p Fv(')e(lo)s(cal)150
3641 y(to)f(eac)m(h)h(test)f(directory)-8 b(,)30 b(rather)h(than)f(in)f
(the)h(\\master")i(`)p Fr(site.exp)p Fv(')d(in)g(the)h(DejaGn)m(u)i
(library)-8 b(.)275 3776 y(All)36 b(lo)s(cal)g(`)p Fr(site.exp)p
Fv(')g(usually)f(\014les)i(ha)m(v)m(e)h(t)m(w)m(o)h(sections,)h
(separated)e(b)m(y)f(commen)m(t)h(text.)63 b(The)150
3885 y(\014rst)23 b(section)i(is)e(the)h(part)g(that)g(is)g(generated)h
(b)m(y)f Fr(make)p Fv(.)37 b(It)24 b(is)f(essen)m(tially)g(a)i
(collection)f(of)g(Tcl)f(v)-5 b(ariable)150 3995 y(de\014nitions)30
b(based)j(on)g(`)p Fr(Makefile)p Fv(')e(en)m(vironmen)m(t)h(v)-5
b(ariables.)47 b(Since)32 b(they)h(are)g(generated)h(b)m(y)f
Fr(make)p Fv(,)150 4104 y(they)27 b(con)m(tain)h(the)f(v)-5
b(alues)27 b(as)g(sp)s(eci\014ed)f(b)m(y)h Fr(configure)p
Fv(.)37 b(\(Y)-8 b(ou)28 b(can)f(also)g(customize)h(these)g(v)-5
b(alues)26 b(b)m(y)150 4214 y(using)d(the)h(`)p Fr(--site)p
Fv(')e(option)i(to)h Fr(configure)p Fv(.\))36 b(In)23
b(particular,)h(this)f(section)h(con)m(tains)g(the)h(`)p
Fr(Makefile)p Fv(')150 4323 y(v)-5 b(ariables)34 b(for)h(host)h(and)f
(target)i(con\014guration)e(data.)57 b(Do)36 b(not)g(edit)f(this)f
(\014rst)h(section;)j(if)d(y)m(ou)h(do,)150 4433 y(y)m(our)30
b(c)m(hanges)i(are)e(replaced)g(next)h(time)f(y)m(ou)h(run)e
Fr(make)p Fv(.)275 4568 y(The)g(\014rst)h(section)h(starts)f(with:)150
4629 y Fm(\013)p 200 4629 3554 4 v 3553 w(\010)p 150
5014 4 338 v 178 4782 a Fr(##)47 b(these)g(variables)e(are)i
(automatically)d(generated)h(by)j(make)e(##)178 4885
y(#)i(Do)f(not)g(edit)f(here.)h(If)g(you)g(wish)f(to)i(override)d
(these)i(values)178 4989 y(#)h(add)f(them)f(to)h(the)g(last)g(section)p
3803 5014 V 150 5066 a Fm(\012)p 200 5066 3554 4 v 3553
w(\011)275 5216 y Fv(In)23 b(the)h(second)g(section,)i(y)m(ou)e(can)g
(o)m(v)m(erride)g(an)m(y)h(default)e(v)-5 b(alues)23
b(\(lo)s(cally)g(to)i(DejaGn)m(u\))g(for)f(all)f(the)150
5326 y(v)-5 b(ariables.)39 b(The)29 b(second)h(section)g(can)g(also)g
(con)m(tain)g(y)m(our)g(preferred)e(defaults)h(for)h(all)e(the)i
(command)p eop
%%Page: 20 22
20 21 bop 150 -116 a Fv(20)2364 b(DejaGn)m(u)32 b(T)-8
b(esting)30 b(F)-8 b(ramew)m(ork)150 83 y(line)30 b(options)h(to)h
Fr(runtest)p Fv(.)43 b(This)30 b(allo)m(ws)h(y)m(ou)g(to)i(easily)e
(customize)h Fr(runtest)d Fv(for)j(y)m(our)f(preferences)150
193 y(in)41 b(eac)m(h)j(con\014gured)e(test-suite)h(tree,)j(so)d(that)g
(y)m(ou)g(need)f(not)h(t)m(yp)s(e)g(options)e(rep)s(eatedly)h(on)h(the)
150 302 y(command)31 b(line.)41 b(\(The)31 b(second)g(section)g(ma)m(y)
g(also)g(b)s(e)g(empt)m(y)-8 b(,)32 b(if)e(y)m(ou)h(do)g(not)h(wish)d
(to)i(o)m(v)m(erride)h(an)m(y)150 412 y(defaults.\))275
546 y(The)d(\014rst)h(section)h(ends)e(with)g(this)g(line:)150
607 y Fm(\013)p 200 607 3554 4 v 3553 w(\010)p 150 806
4 151 v 178 760 a Fr(##)47 b(All)g(variables)f(above)g(are)h(generated)
e(by)i(configure.)e(Do)i(Not)g(Edit)g(##)p 3803 806 V
150 857 a Fm(\012)p 200 857 3554 4 v 3553 w(\011)275
1002 y Fv(Y)-8 b(ou)31 b(can)f(mak)m(e)i(an)m(y)f(c)m(hanges)g(under)e
(this)h(line.)40 b(If)30 b(y)m(ou)h(wish)d(to)k(rede\014ne)d(a)i(v)-5
b(ariable)30 b(in)f(the)i(top)150 1112 y(section,)k(then)f(just)f(put)h
(a)g(duplicate)f(v)-5 b(alue)33 b(in)g(this)g(second)h(section.)51
b(Usually)33 b(the)h(v)-5 b(alues)33 b(de\014ned)150
1221 y(in)c(this)h(con\014g)h(\014le)f(are)h(related)g(to)h(the)f
(con\014guration)f(of)h(the)g(test)g(run.)41 b(This)29
b(is)h(the)h(ideal)e(place)i(to)150 1331 y(set)g(the)g(v)-5
b(ariables)29 b Fr(host_triplet)p Fv(,)e Fr(build_triplet)p
Fv(,)g Fr(target_triplet)p Fv(.)38 b(All)29 b(other)h(v)-5
b(ariables)30 b(are)150 1441 y(to)s(ol)i(dep)s(endan)m(t.)46
b(ie)32 b(for)g(testing)h(a)g(compiler,)e(the)i(v)-5
b(alue)32 b(for)g Fq(CC)40 b Fv(migh)m(t)32 b(b)s(e)g(set)g(to)i(a)e
(freshly)f(built)150 1550 y(binary)-8 b(,)29 b(as)i(opp)s(osed)e(to)j
(one)e(in)f(the)i(user's)f(path.)150 1774 y Fi(4.0.4)63
b(P)m(ersonal)41 b(Con\014g)g(File)275 1967 y Fv(The)j(p)s(ersonal)g
(con\014g)h(\014le)f(is)g(used)g(to)i(customize)g Fr(runtest's)c
Fv(b)s(eha)m(viour)i(for)h(eac)m(h)h(p)s(erson.)150 2077
y(It's)33 b(t)m(ypically)f(used)g(to)i(set)g(the)f(user)f(prefered)g
(setting)h(for)g(v)m(erb)s(osit)m(y)-8 b(,)34 b(and)f(an)m(y)g(exp)s
(erimen)m(tal)f(Tcl)150 2186 y(pro)s(cedures.)39 b(My)31
b(p)s(ersonal)e(`)p Fr(~/.dejagnurc)p Fv(')e(\014le)j(lo)s(oks)g(lik)m
(e:)150 2267 y Fm(\013)p 200 2267 V 3553 w(\010)p 150
2661 4 346 v 178 2421 a Fr(set)47 b(all_flag)f(1)178
2524 y(set)h(RLOGIN)f(/usr/ucb/rlogin)178 2628 y(set)h(RSH)g
(/usr/ucb/rsh)p 3803 2661 V 150 2712 a Fm(\012)p 200
2712 3554 4 v 3553 w(\011)275 2857 y Fv(Here)27 b(I)g(set)h
Fr(all_flag)d Fv(so)j(I)f(see)h(all)e(the)h(test)i(cases)f(that)g(P)-8
b(ASS)26 b(along)i(with)e(the)h(ones)h(that)g(F)-10 b(AIL.)150
2967 y(I)36 b(also)g(set)h Fq(RLOGIN)46 b Fv(and)36 b
Fr(RSH)f Fv(to)i(the)f(BSD)h(v)m(ersion.)58 b(I)36 b(ha)m(v)m(e)h
Fr(kerberos)d Fv(installed,)i(and)g(when)f(I)150 3077
y(rlogin)25 b(to)h(a)h(target)g(b)s(oard,)f(it)g(usually)e(isn't)h
(supp)s(orted.)38 b(So)25 b(I)h(use)g(the)g(non)g(secure)g(v)m(ersions)
f(of)h(these)150 3186 y(programs)k(rather)g(than)g(the)h(default)e
(that's)j(in)d(m)m(y)h(path.)p eop
%%Page: 21 23
21 22 bop 150 -116 a Fv(Chapter)30 b(5:)41 b(The)30 b(DejaGn)m(u)h
(Implemen)m(tation)1847 b(21)150 100 y Fs(5)80 b(The)54
b(DejaGn)l(u)e(Implemen)l(tation)275 334 y Fv(DejaGn)m(u)30
b(is)e(en)m(tirely)h(written)g(in)f Fr(expect)p Fv(,)g(whic)m(h)g(uses)
h(Tcl)g(as)h(a)g(command)f(language.)41 b Fr(expect)150
443 y Fv(serv)m(es)26 b(as)f(a)h(v)m(ery)g(programmable)e(shell;)h(y)m
(ou)h(can)g(run)d(an)m(y)j(program,)g(as)g(with)e(the)h(usual)f(Unix)g
(com-)150 553 y(mand)30 b(shells|but)e(once)k(the)f(program)f(is)g
(started,)i(y)m(our)f Fr(expect)e Fv(script)h(has)g(fully)f
(programmable)150 663 y(con)m(trol)24 b(of)f(its)g(input)e(and)i
(output.)38 b(This)21 b(do)s(es)i(not)g(just)g(apply)f(to)i(the)f
(programs)g(under)f(test;)27 b Fr(expect)150 772 y Fv(can)h(also)g(run)
f(an)m(y)h(auxiliary)e(program,)j(suc)m(h)e(as)i Fr(diff)d
Fv(or)i Fr(sh)p Fv(,)h(with)d(full)g(con)m(trol)j(o)m(v)m(er)g(its)e
(input)g(and)150 882 y(output.)275 1016 y(DejaGn)m(u)40
b(itself)f(is)g(merely)g(a)h(framew)m(ork)g(for)f(the)h(set)g(of)g
(test)h(suites)e(distributed)e(separately)150 1126 y(for)i(eac)m(h)h
Fo(gnu)f Fv(to)s(ol.)66 b(F)-8 b(uture)39 b(releases)g(of)g
Fo(gnu)g Fv(to)s(ols)g(will)d(include)h(ev)m(en)i(more)g(tests,)k(dev)m
(elop)s(ed)150 1235 y(throughout)30 b(the)h(free)f(soft)m(w)m(are)i
(comm)m(unit)m(y)-8 b(.)275 1370 y Fr(runtest)29 b Fv(is)h(the)i(glue)f
(to)h(tie)f(together)i(and)e(manage)h(the)g(test)g(scripts.)43
b(The)31 b Fr(runtest)e Fv(program)150 1479 y(is)36 b(actually)g(a)h
(simple)e(Bourne)h(shell)f(script)h(that)h(lo)s(cates)h(a)f(cop)m(y)g
(of)g(the)g Fr(expect)e Fv(shell)g(and)h(then)150 1589
y(starts)31 b(the)f(main)g(Tcl)f(co)s(de,)i Fr(runtest.exp)p
Fv(.)38 b Fr(runtest.exp)27 b Fv(itself)i(has)h(these)h(essen)m(tial)f
(functions:)199 1724 y(1.)61 b(P)m(arse)21 b(the)f(command)h(line)d
(options,)k(load)e(the)g(library)e(\014les,)k(and)e(load)g(the)g
(default)g(con\014guration)330 1833 y(\014les.)199 1968
y(2.)61 b(Lo)s(cating)41 b(the)g(individual)c(test)42
b(scripts.)71 b Fr(runtest.exp)38 b Fv(lo)s(cates)j(the)h(tests)f(b)m
(y)g(exploiting)f(a)330 2077 y(straigh)m(tforw)m(ard)33
b(naming)g(con)m(v)m(en)m(tion)h(based)g(on)f(the)h(string)e(y)m(ou)i
(sp)s(ecify)e(with)g(the)i(`)p Fr(--tool)p Fv(')330 2187
y(option.)199 2321 y(3.)61 b(Pro)m(viding)25 b(an)h(extended)h(test)g
(en)m(vironmen)m(t,)g(b)m(y)g(de\014ning)d(additional)h(Tcl)g(pro)s
(cedures)h(b)s(ey)m(ond)330 2431 y(those)31 b(already)f(in)f
Fr(expect)p Fv(.)199 2565 y(4.)61 b(Lo)s(cating)24 b(target-dep)s
(enden)m(t)h(functions,)f(to)h(standardize)e(the)i(test)g(en)m
(vironmen)m(t)e(across)i(a)f(wide)330 2675 y(v)-5 b(ariet)m(y)31
b(of)f(test)i(platforms.)150 2932 y Fu(5.1)68 b(Con)l(v)l(en)l(tions)47
b(for)e(using)g(to)t(ol)g(names)275 3125 y Fv(DejaGn)m(u)26
b(uses)f(`)p Fr($tool)p Fv(',)h(the)g(name)g(of)g(the)g(to)s(ol)f
(under)g(test,)i(to)g(tie)e(together)j(the)e(testing)f(con\014g-)150
3235 y(uration)31 b(in)f(a)i(straigh)m(tforw)m(ard)f(but)g(\015exible)f
(w)m(a)m(y)-8 b(.)45 b(If)32 b(there)f(is)g(only)g(one)g(testsuite)h
(for)g(a)g(particular)150 3344 y(application,)d(then)h(`)p
Fr($tool)p Fv(')f(is)h(optional.)275 3479 y(`)p Fr($tool)p
Fv(')38 b(is)g Fn(not)49 b Fv(used)38 b(to)i(in)m(v)m(ok)m(e)h(the)e
(to)s(ol,)j(since)d(sites)f(that)i(run)e(m)m(ultiple)f
(con\014gurations)i(of)150 3588 y(a)47 b(particular)e(to)s(ol)i(often)g
(call)f(eac)m(h)i(con\014guration)e(b)m(y)h(a)g(di\013eren)m(t)g(name.)
90 b Fr(runtest)44 b Fv(uses)j(the)150 3698 y(con\014guration-dep)s
(enden)m(t)40 b(v)-5 b(ariables)40 b(captured)h(in)f(`)p
Fr(site.exp)p Fv(')f(to)j(determine)e(ho)m(w)h(to)h(call)f(eac)m(h)150
3807 y(to)s(ol.)275 3942 y Fr(runtest)30 b Fv(uses)h(to)s(ol)h(names)g
(to)h(\014nd)e(directories)g(con)m(taining)h(tests.)46
b Fr(runtest)30 b Fv(scans)i(the)h(source)150 4051 y(directory)22
b(\(sp)s(eci\014ed)g(with)f Fr(--srcdir)p Fv(\))g(for)i(all)e
(directories)h(whose)h(names)f(start)h(with)f(the)h(to)s(ol)g(name.)150
4161 y(It)40 b(is)g(a)g(common)h(practice)f(to)h(put)f(a)g(p)s(erio)s
(d)e(after)j(the)g(to)s(ol)f(part)g(of)g(the)h(name.)70
b(F)-8 b(or)41 b(instance,)150 4271 y(directories)32
b(that)i(start)f(with)f(`)p Fr(g++.)p Fv(')h(con)m(tain)g
Fo(g)p Fr(++)g Fv(tests.)49 b(T)-8 b(o)34 b(add)e(a)i(new)e(test,)j
(just)e(put)f(it)h(in)f(an)m(y)150 4380 y(directory)24
b(\(create)j(an)e(en)m(tirely)f(new)g(directory)-8 b(,)27
b(if)c(y)m(ou)j(wish\))d(whose)i(name)g(follo)m(ws)f(this)g(con)m(v)m
(en)m(tion.)275 4515 y(A)h(test)g(is)f(an)m(y)h(\014le)f(in)g(an)h
(appropriately)e(named)h(sub)s(directory)f(whose)i(name)g(ends)f(in)f
(`)p Fr(.exp)p Fv(')h(\(the)150 4624 y(con)m(v)m(en)m(tional)32
b(w)m(a)m(y)h(of)f(naming)e Fr(expect)g Fv(scripts\).)44
b(These)31 b(simple)f(naming)g(con)m(v)m(en)m(tions)j(mak)m(e)g(it)e
(as)150 4734 y(simple)25 b(as)j(p)s(ossible)c(to)k(install)e(new)g
(tests:)40 b(all)26 b(y)m(ou)i(m)m(ust)f(do)g(is)f(put)h(the)g(test)i
(in)d(the)h(righ)m(t)g(directory)-8 b(.)275 4868 y Fr(runtest)31
b Fv(sorts)i(the)h(tests)g(in)e(eac)m(h)i(sub)s(directory)d(b)m(y)i
(name)h(\(using)e(the)h(Tcl)g Fr(lsort)f Fv(command\))150
4978 y(and)e(runs)f(them)h(in)f(the)h(resulting)f(order.)p
eop
%%Page: 22 24
22 23 bop 150 -116 a Fv(22)2364 b(DejaGn)m(u)32 b(T)-8
b(esting)30 b(F)-8 b(ramew)m(ork)150 83 y Fu(5.2)68 b(Initialization)48
b(mo)t(dule)275 276 y Fv(The)35 b(initialization)d(mo)s(dule)i(\(or)i
(\\init)e(\014le"\))h(has)g(t)m(w)m(o)i(purp)s(oses:)49
b(to)36 b(pro)m(vide)f(to)s(ol)h(and)e(target)150 385
y(dep)s(enden)m(t)29 b(pro)s(cedures,)h(and)g(to)h(start)g(up)e(an)i
(in)m(teractiv)m(e)g(to)s(ol)f(to)h(the)g(p)s(oin)m(t)e(where)h(it)g
(is)g(ready)g(to)150 495 y(op)s(erate.)41 b(The)30 b(latter)g(includes)
d(establishing)h(comm)m(unications)h(with)g(the)h(target.)42
b(All)28 b(the)j(tests)f(for)150 604 y(in)m(teractiv)m(e)24
b(programs)e(assume)h(that)g(the)g(to)s(ol)g(is)f(already)h(running)d
(and)i(comm)m(unicating.)38 b(Initializa-)150 714 y(tion)30
b(mo)s(dules)e(for)j(non-in)m(teractiv)m(e)g(programs)f(ma)m(y)h(only)e
(need)h(to)h(supply)d(the)j(supp)s(ort)d(functions.)275
848 y(Eac)m(h)33 b(test)g(suite)f(directory)g(m)m(ust)h(con)m(tain)g
(\(in)e(its)h(`)p Fr(config)p Fv(')g(sub)s(directory\))f(a)i(separate)g
(initial-)150 958 y(ization)27 b(mo)s(dule)f(for)h(eac)m(h)h(target.)41
b(The)27 b(appropriate)g(init)e(\014le)i(is)f(can)i(b)s(e)e(named)h
(sev)m(eral)h(w)m(a)m(ys.)40 b(The)150 1068 y(prefered)33
b(name)h(is)f(the)i Fn(os)42 b Fv(part)34 b(of)g(the)g(canonical)g
(con\014guration)f(name)h(with)f Fr(.exp)g Fv(as)h(the)h(su\016x.)150
1177 y(An)e(example)f(w)m(ould)g(b)s(e)h(that)g(for)g(an)g
Fr(m68k-coff)e Fv(system,)j(the)f Fr(target_os)e Fv(part)i(w)m(ould)e
(b)s(e)i Fr(coff)p Fv(.)150 1287 y(The)27 b(next)h(w)m(a)m(y)h(is)d
(for)i(system)g(where)f(there)h(are)g(short)f(\014lenames,)h(or)f(a)h
(shortcut)g(is)f(desired)f(to)i(refer)150 1396 y(to)j(the)g(OS)f(name)g
(for)g(that)h(target.)43 b(This)29 b(is)g(uses)h(the)h(v)-5
b(alue)30 b(of)h Fr($target_abbrev)26 b Fv(rather)31
b(than)f(the)150 1506 y Fr(target_os)p Fv(.)275 1641
y(The)h(\014nal)h(\014le)f(lo)s(ok)m(ed)i(for)f(is)f(simply)f(`)p
Fr(default.exp)p Fv('.)45 b(If)31 b(there)i(is)f(only)f(one)i(op)s
(erating)f(system)150 1750 y(to)26 b(supp)s(ort,)f(then)f(this)g
(\014le)h(can)g(b)s(e)g(used.)38 b(It's)25 b(main)f(purp)s(ose)g(is)g
(to)i(o\013er)f(some)h(supp)s(ort)d(for)i(new)g(op-)150
1860 y(erating)i(systems,)i(or)e(for)h(unsupp)s(orted)c(cross)k
(targets.)41 b(The)27 b(last)g(\014le)g(lo)s(ok)m(ed)g(for)h(is)e(`)p
Fr(unknown.exp)p Fv('.)150 1969 y(This)37 b(is)h(usually)f(limited)g
(to)j(error)e(handling)f(for)h(unsupp)s(orted)f(targets.)68
b(It's)39 b(whole)f(con)m(ten)m(ts)j(is)150 2079 y(t)m(ypically)-8
b(.)150 2158 y Fm(\013)p 200 2158 3554 4 v 3553 w(\010)p
150 2439 4 235 v 178 2311 a Fr(perror)46 b("Sorry,)g(there)g(is)i(no)f
(support)f(for)h(this)f(target")178 2414 y(exit)h(1)p
3803 2439 V 150 2491 a Fm(\012)p 200 2491 3554 4 v 3553
w(\011)275 2636 y Fv(A)m(t)35 b(the)f(b)s(eginning)e(of)j(the)f(init)f
(\014le,)h(y)m(ou)h(m)m(ust)f(\014rst)g(determine)f(the)i(prop)s(er)e
(executable)i(name)150 2746 y(of)c(the)g(to)s(ol)g(to)h(execute,)h
(since)d(the)h(actual)h(name)f(of)g(the)g(to)s(ol)g(to)h(b)s(e)e
(tested)i(m)m(y)f(v)-5 b(ary)31 b(from)g(system)150 2855
y(to)g(system.)41 b(Here's)31 b(an)f(example)g(for)g(the)h
Fo(GNU)g Fv(C)f(compiler.)150 2934 y Fm(\013)p 200 2934
V 3553 w(\010)p 150 4365 4 1384 v 178 3087 a Fr(global)46
b(AR)178 3191 y(#)i(look)e(for)h(the)g(archiver)f(ar)178
3295 y(if)h(![info)f(exists)h(AR])f({)369 3398 y(set)h(AR)g([findfile)e
($base_dir/../../binutils/a)o(r)d($base_dir/../../binutils)o(/ar)f([tr)
178 3502 y(ansform)46 b(ar]])369 3606 y(verbose)g("AR)h(defaulting)e
(to)i($AR")g(2)178 3710 y(})178 3814 y(})178 4021 y(global)f(CFLAGS)178
4125 y(if)h(![info)f(exists)h(CFLAGS])e(then)i({)369
4229 y(set)g(CFLAGS)f("")178 4332 y(})p 3803 4365 V 150
4417 a Fm(\012)p 200 4417 3554 4 v 3553 w(\011)275 4562
y Fv(It)30 b(is)f(alw)m(a)m(ys)i(a)f(go)s(o)s(d)g(idea)g(to)h(\014rst)e
(c)m(hec)m(k)j(the)e(v)-5 b(ariable,)29 b(and)h(only)f(set)i(it)e(if)g
(it)h(has)g(not)g(y)m(et)i(b)s(een)150 4671 y(de\014ned.)39
b(Often)31 b(the)f(prop)s(er)f(v)-5 b(alue)30 b(of)g
Fr(AR)g Fv(is)g(set)g(on)h(the)f(command)g(line)f(that)i(in)m(v)m(ok)m
(es)g(`)p Fr(runtest)p Fv('.)275 4806 y(The)c Fr(findfile)f
Fv(pro)s(cedure)h(tak)m(es)i(as)f(it's)g(\014rst)f(argumen)m(t)i(a)f
(\014le)f(name)h(to)h(lo)s(ok)f(for.)39 b(The)28 b(second)150
4915 y(argumen)m(t)f(is)f(returned)g(if)g(the)h(\014le)f(is)f(found,)i
(and)f(the)h(third)e(argumen)m(t)i(is)f(returned)g(if)g(the)h(\014le)f
(is)g(not)150 5025 y(found.)39 b Fr(base_dir)29 b Fv(is)g(set)i(in)m
(ternally)d(b)m(y)i(DejaGn)m(u)i(to)f(the)f(top)h(lev)m(el)f(directory)
g(of)g(the)h(ob)5 b(ject)31 b(tree.)275 5160 y(The)42
b Fr(transform)e Fv(pro)s(cedure)h(tak)m(es)j(as)f(its)f(argumen)m(t)h
(the)g(nativ)m(e)g(name)g(of)f(a)h(to)s(ol)g(\(suc)m(h)g(as)150
5269 y(`)p Fr(gcc)p Fv(')c(for)h(the)f(compiler\),)i(and)e(returns)g
(the)h(name)f(as)h(con\014gured)f(for)g(that)i(to)s(ol)e(in)f(the)i
(curren)m(t)p eop
%%Page: 23 25
23 24 bop 150 -116 a Fv(Chapter)30 b(5:)41 b(The)30 b(DejaGn)m(u)h
(Implemen)m(tation)1847 b(23)150 83 y(installation.)38
b(\(F)-8 b(or)31 b(example,)e(a)h(cross-compiling)d(v)m(ersion)i(of)g
Fo(gnu)g Fv(CC)g(that)g(generates)i(MIPS)e(co)s(de)150
193 y(ma)m(y)i(b)s(e)f(installed)e(with)h(a)i(name)f(lik)m(e)g
Fr(mips-idt-ecoff-gcc)p Fv(.\))275 327 y(In)j(a)h(test)h(running)c
(nativ)m(e,)36 b(writing)c(the)i(Tcl)f(co)s(de)h(for)g(initialization)d
(is)i(usually)e(quite)j(simple.)150 437 y(F)-8 b(or)23
b(cross)e(con\014gurations,)i(ho)m(w)m(ev)m(er,)i(more)d(elab)s(orate)g
(instructions)e(are)i(usually)e(needed)h(to)i(describ)s(e)150
546 y(ho)m(w)30 b(to)i(talk)e(to)h(a)g(remote)g(target.)275
681 y(Eac)m(h)g(initialization)c(mo)s(dule)i(de\014nes)g(up)h(to)h
(four)f(pro)s(cedures)f(with)g(standard)h(names)g(and)g(pur-)150
790 y(p)s(oses.)58 b(The)36 b(names)g(of)h(these)g(pro)s(cedures)e(b)s
(egin)f(with)h(`)p Fr($tool)p Fv(',)j(the)e(string)f(that)i(iden)m
(ti\014es)e(tests)150 900 y(for)j(a)h(particular)e(to)s(ol:)57
b Fr($tool_start)p Fv(,)38 b Fr($tool_load)p Fv(,)g Fr($tool_exit)p
Fv(,)g(and)g Fr($tool_version)p Fv(.)61 b(F)-8 b(or)150
1010 y(example,)28 b(the)f(start)h(pro)s(cedure)e(for)h
Fo(gdb)g Fv(is)g(called)f Fr(gdb_start)p Fv(.)37 b(\(Since)27
b(start)h(pro)s(cedures)e(are)i(used)150 1119 y(di\013eren)m(tly)f(for)
g(batc)m(h)i(and)e(in)m(teractiv)m(e)i(to)s(ols,)f(ho)m(w)m(ev)m(er,)j
Fr(runtest)25 b Fv(itself)i(nev)m(er)h(calls)g(the)g(start)g(pro-)150
1229 y(cedure.)40 b(Init)30 b(\014les)f(for)h(in)m(teractiv)m(e)h(to)s
(ols)g(are)f(exp)s(ected)h(to)g(end)f(b)m(y)g(running)e(the)i(start)h
(pro)s(cedure.\))275 1363 y(The)37 b(initialization)d(mo)s(dule)i(is)g
(also)i(a)g(go)s(o)s(d)f(place)g(to)i(call)d Fr(load_lib)g
Fv(to)i(get)h(an)m(y)e(collections)150 1473 y(of)c(utilit)m(y)f(pro)s
(cedures)f(mean)m(t)j(for)f(a)g(family)f(of)h(test)h(cases,)h(and)d(to)
i(set)f(up)f(default)g(v)-5 b(alues)33 b(for)g(an)m(y)150
1582 y(additional)28 b(Tcl)i(v)-5 b(ariables)29 b(needed)h(for)g(a)h
(sp)s(eci\014c)e(set)i(of)f(tests.)275 1717 y(See)40
b(Section)g(5.4)h([T)-8 b(arget)41 b(dep)s(enden)m(t)f(pro)s(cedures],)
h(page)g(31,)j(for)c(full)d(descriptions)h(of)i(these)150
1826 y(pro)s(cedures.)150 2084 y Fu(5.3)68 b(DejaGn)l(u)45
b(pro)t(cedures)275 2276 y Fv(DejaGn)m(u)40 b(pro)m(vides)e(these)i
(Tcl)e(pro)s(cedures)g(for)h(use)g(in)f(test)i(scripts.)66
b(Y)-8 b(ou)40 b(can)f(also)h(use)f(an)m(y)150 2386 y(standard)29
b Fr(expect)g Fv(or)h(Tcl)g(function.)39 b(These)30 b(pro)s(cedures)f
(are)i(stored)f(in)f(libraries,)f(whic)m(h)h(DejaGn)m(u)150
2496 y(loads)i(at)h(run)m(time.)42 b(Here's)32 b(explanation)e(of)i
(the)f(library)e(pro)s(cedures)h(that)i(get)g(loaded)f(at)h(run)m
(time.)150 2605 y(All)d(other)i(librarys)c(are)k(optional,)f(and)g
(need)g(to)h(b)s(e)f(loaded)g(b)m(y)g(the)g(testsuite.)150
2829 y Fi(5.3.1)63 b(Core)41 b(In)m(ternal)f(Pro)s(cedures)275
3022 y Fv(See)30 b(Section)g(2.4)i([A)f(POSIX)e(conforming)g(test)j
(framew)m(ork],)f(page)g(6,)g(for)f(more)h(detailed)e(expla-)150
3132 y(nations)h(of)g(the)h(test)g(outcomes)h(\(`)p Fr(FAIL)p
Fv(',)e(`)p Fr(PASS)p Fv(',)g(`)p Fr(UNTESTED)p Fv(',)f(`)p
Fr(UNRESOLVED)p Fv(',)f(`)p Fr(UNSUPPORTED)p Fv('\).)150
3316 y Fr(perror)h(")p Fq(string)37 b(n)m(um)m(b)s(er)7
b Fr(")630 3425 y Fv(Declares)28 b(a)g(sev)m(ere)g(error)f(in)f(the)h
(testing)h(framew)m(ork)f(itself.)39 b Fr(perror)25 b
Fv(writes)h(in)g(the)i(log)630 3535 y(\014les)j(a)i(message)h(b)s
(eginning)c(with)h(`)p Fr(ERROR)p Fv(',)h(app)s(ending)e(the)j(argumen)
m(t)g Fq(string)p Fv(.)46 b(If)32 b(the)630 3645 y(optional)25
b Fq(n)m(um)m(b)s(er)32 b Fv(is)25 b(supplied,)f(then)i(this)f(is)g
(used)g(to)i(set)g(the)f(in)m(ternal)f(coun)m(t)i(of)f(errors)630
3754 y(to)31 b(that)g(v)-5 b(alue.)630 3889 y(As)32 b(a)g(side)e
(e\013ect,)k Fr(perror)c Fv(also)i(c)m(hanges)h(the)e(e\013ect)j(of)e
(the)f(next)h Fr(pass)f Fv(or)h Fr(fail)e Fv(com-)630
3998 y(mand:)50 b(the)36 b(test)h(outcome)f(b)s(ecomes)g(`)p
Fr(UNRESOLVED)p Fv(',)f(since)g(an)h(automatic)g(`)p
Fr(PASS)p Fv(')f(or)630 4108 y(`)p Fr(FAIL)p Fv(')d(cannot)h(b)s(e)f
(trusted)g(after)h(a)g(sev)m(ere)g(error)f(in)g(the)g(test)i(framew)m
(ork.)47 b(If)32 b(the)h(op-)630 4218 y(tional)d(n)m(umeric)g(v)-5
b(alue)30 b(is)g(`)p Fr(0)p Fv(',)i(then)f(there)g(are)g(no)g(further)f
(side)g(e\013ects)i(to)g(calling)d(this)630 4327 y(function,)37
b(and)f(the)g(follo)m(wing)f(test)i(outcome)h(do)s(esn't)e(b)s(ecome)h
(`)p Fr(UNRESOLVED)p Fv('.)57 b(This)630 4437 y(can)31
b(b)s(e)e(used)h(for)g(errors)g(with)f(no)h(kno)m(wn)g(side)f
(e\013ects.)150 4621 y Fr(warning)f(")p Fq(string)37
b(n)m(um)m(b)s(er)7 b Fr(")630 4731 y Fv(Declares)27
b(detection)g(of)f(a)h(minor)e(error)g(in)g(the)i(test)g(case)g
(itself.)38 b Fr(warning)25 b Fv(writes)g(in)g(the)630
4840 y(log)35 b(\014les)e(a)i(message)h(b)s(eginning)c(with)h(`)p
Fr(WARNING)p Fv(',)i(app)s(ending)d(the)j(argumen)m(t)g
Fq(string)p Fv(.)630 4950 y(Use)41 b Fr(warning)d Fv(rather)j(than)f
Fr(error)f Fv(for)i(cases)g(\(suc)m(h)g(as)f(comm)m(unication)g
(failure)f(to)630 5059 y(b)s(e)44 b(follo)m(w)m(ed)g(b)m(y)g(a)h
(retry\))g(where)f(the)g(test)i(case)f(can)g(reco)m(v)m(er)h(from)e
(the)h(error.)82 b(If)630 5169 y(the)34 b(optional)e
Fq(n)m(um)m(b)s(er)39 b Fv(is)33 b(supplied,)e(then)i(this)f(is)h(used)
g(to)h(set)g(the)f(in)m(ternal)g(coun)m(t)h(of)630 5279
y(w)m(arnings)29 b(to)i(that)g(v)-5 b(alue.)p eop
%%Page: 24 26
24 25 bop 150 -116 a Fv(24)2364 b(DejaGn)m(u)32 b(T)-8
b(esting)30 b(F)-8 b(ramew)m(ork)630 83 y(As)32 b(a)g(side)f(e\013ect,)
k Fr(warning_threshold)27 b Fv(or)32 b(more)g(calls)f(to)i
Fr(warning)d Fv(in)h(a)h(single)f(test)630 193 y(case)k(also)e(c)m
(hanges)i(the)f(e\013ect)h(of)f(the)g(next)f Fr(pass)g
Fv(or)g Fr(fail)g Fv(command:)47 b(the)34 b(test)g(out-)630
302 y(come)39 b(b)s(ecomes)f(`)p Fr(UNRESOLVED)p Fv(')e(since)h(an)h
(automatic)h(`)p Fr(PASS)p Fv(')e(or)h(`)p Fr(FAIL)p
Fv(')f(ma)m(y)h(not)h(b)s(e)630 412 y(trust)m(w)m(orth)m(y)j(after)f
(man)m(y)g(w)m(arnings.)71 b(If)41 b(the)g(optional)f(n)m(umeric)g(v)-5
b(alue)40 b(is)g(`)p Fr(0)p Fv(',)k(then)630 521 y(there)32
b(are)h(no)f(further)f(side)g(e\013ects)i(to)g(calling)e(this)g
(function,)h(and)f(the)h(follo)m(wing)f(test)630 631
y(outcome)40 b(do)s(esn't)f(b)s(ecome)h(`)p Fr(UNRESOLVED)p
Fv('.)65 b(This)37 b(can)j(b)s(e)e(used)h(for)g(errors)f(with)g(no)630
741 y(kno)m(wn)30 b(side)f(e\013ects.)150 923 y Fr(note)g(")p
Fq(string)8 b Fr(")630 1032 y Fv(App)s(ends)32 b(an)i(informational)e
(message)j(to)g(the)f(log)g(\014le.)51 b Fr(note)33 b
Fv(writes)g(in)g(the)h(log)g(\014les)630 1142 y(a)40
b(message)g(b)s(eginning)d(with)h(`)p Fr(NOTE)p Fv(',)j(app)s(ending)c
(the)i(argumen)m(t)h Fq(string)p Fv(.)66 b(Use)40 b Fr(note)630
1252 y Fv(sparingly)-8 b(.)40 b Fr(verbose)29 b Fv(should)f(b)s(e)j
(used)e(for)i(most)g(suc)m(h)f(messages,)i(but)e(in)g(cases)h(where)630
1361 y(a)g(message)g(is)f(needed)g(in)f(the)h(log)h(\014le)e
(regardless)h(of)g(the)h(v)m(erb)s(osit)m(y)f(lev)m(el)g(use)g
Fr(note)p Fv(.)150 1543 y Fr(pass)f(")p Fq(string)8 b
Fr(")630 1653 y Fv(Declares)29 b(a)f(test)h(to)f(ha)m(v)m(e)h(passed.)
40 b Fr(pass)26 b Fv(writes)h(in)g(the)h(log)g(\014les)e(a)j(message)g
(b)s(eginning)630 1763 y(with)d(`)p Fr(PASS)p Fv(')g(\(or)h
Fr(XPASS)p Fv(,)g(if)f(failure)f(w)m(as)i(exp)s(ected\),)i(app)s
(ending)24 b(the)j(argumen)m(t)h Fq(string)p Fv(.)150
1945 y Fr(fail)h(")p Fq(string)8 b Fr(")630 2055 y Fv(Declares)32
b(a)f(test)h(to)g(ha)m(v)m(e)g(failed.)41 b Fr(fail)30
b Fv(writes)g(in)g(the)h(log)g(\014les)f(a)i(message)g(b)s(eginning)630
2164 y(with)26 b(`)p Fr(FAIL)p Fv(')g(\(or)h Fr(XFAIL)p
Fv(,)g(if)f(failure)f(w)m(as)i(exp)s(ected\),)i(app)s(ending)24
b(the)j(argumen)m(t)h Fq(string)p Fv(.)150 2346 y Fr(unresolved)g(")p
Fq(string)8 b Fr(")630 2456 y Fv(Declares)35 b(a)f(test)h(to)g(ha)m(v)m
(e)h(an)e(unresolv)m(ed)f(outcome.)53 b Fr(unresolved)31
b Fv(writes)j(in)e(the)j(log)630 2566 y(\014le)j(a)i(message)h(b)s
(eginning)36 b(with)i(`)p Fr(UNRESOLVED)p Fv(',)i(app)s(ending)c(the)k
(argumen)m(t)g Fq(string)p Fv(.)630 2675 y(This)33 b(usually)g(means)i
(the)g(test)h(did)d(not)j(execute)g(as)f(exp)s(ected,)i(and)e(a)g(h)m
(uman)f(b)s(eing)630 2785 y(m)m(ust)28 b(go)g(o)m(v)m(er)h(results)e
(to)i(determine)e(if)f(it)i(passed)f(or)h(failed)e(\(and)i(to)g(impro)m
(v)m(e)g(the)g(test)630 2894 y(case\).)150 3077 y Fr(untested)g(")p
Fq(string)8 b Fr(")630 3186 y Fv(Declares)25 b(a)g(test)g(w)m(as)f(not)
h(run.)37 b Fr(untested)22 b Fv(writes)h(in)g(the)h(log)g(\014le)g(a)g
(message)i(b)s(eginning)630 3296 y(with)31 b(`)p Fr(UNTESTED)p
Fv(',)g(app)s(ending)f(the)i(argumen)m(t)h Fq(string)p
Fv(.)45 b(F)-8 b(or)33 b(example,)g(y)m(ou)f(migh)m(t)g(use)630
3405 y(this)c(in)g(a)h(dumm)m(y)f(test)i(whose)f(only)f(role)g(is)g(to)
i(record)f(that)h(a)f(test)h(do)s(es)f(not)g(y)m(et)h(exist)630
3515 y(for)g(some)h(feature.)150 3697 y Fr(unsupported)c(")p
Fq(string)8 b Fr(")630 3807 y Fv(Declares)38 b(that)g(a)g(test)g(case)g
(dep)s(ends)e(on)h(some)h(facilit)m(y)e(that)i(do)s(es)f(not)h(exist)f
(in)f(the)630 3916 y(testing)h(en)m(vironmen)m(t.)58
b Fr(unsupported)33 b Fv(writes)j(in)f(the)h(log)h(\014le)e(a)i
(message)h(b)s(eginning)630 4026 y(with)29 b(`)p Fr(UNSUPPORTED)p
Fv(',)f(app)s(ending)g(the)j(argumen)m(t)f Fq(string)p
Fv(.)150 4208 y Fr(get_warning_threshold)630 4318 y Fv(Returns)f(the)i
(curren)m(t)f(v)-5 b(alue)30 b(of)h Fr(warning_threshold)p
Fv(.)36 b(The)29 b(default)h(v)-5 b(alue)30 b(is)f(3.)150
4500 y Fr(set_warning_threshold)c Fq(threshold)630 4610
y Fv(Sets)f(the)h(v)-5 b(alue)23 b(of)i Fr(warning_threshold)p
Fv(.)34 b(A)24 b(v)-5 b(alue)24 b(of)g Fr(0)g Fv(disables)e(it:)38
b(calls)23 b(to)i Fr(warning)630 4719 y Fv(will)j(not)i(turn)g(a)g(`)p
Fr(PASS)p Fv(')g(or)g(`)p Fr(FAIL)p Fv(')g(in)m(to)h(an)f(`)p
Fr(UNRESOLVED)p Fv('.)150 4902 y Fr(transform)e(")p Fq(to)s(olname)5
b Fr(")630 5011 y Fv(Generates)39 b(a)f(string)f(for)h(the)g(name)g(of)
g(a)h(to)s(ol)e(as)i(it)e(w)m(as)h(con\014gured)g(and)f(installed,)630
5121 y(giv)m(en)27 b(its)g(nativ)m(e)h(name)g(\(as)g(the)g(argumen)m(t)
f Fq(to)s(olname)5 b Fv(\).)41 b(This)25 b(mak)m(es)k(the)e(assumption)
630 5230 y(that)49 b(all)e(to)s(ols)h(are)g(installed)e(using)h(the)h
(same)h(naming)d(con)m(v)m(en)m(tions:)78 b(it)47 b(extrap-)630
5340 y(olates)52 b(from)g(the)g(in)m(v)m(o)s(cation)f(name)h(for)g(`)p
Fr(runtest)p Fv('.)103 b(F)-8 b(or)53 b(example,)k(if)51
b(y)m(ou)h(call)p eop
%%Page: 25 27
25 26 bop 150 -116 a Fv(Chapter)30 b(5:)41 b(The)30 b(DejaGn)m(u)h
(Implemen)m(tation)1847 b(25)630 83 y Fr(runtest)52 b
Fv(as)i(`)p Fr(m68k-vxworks-runtest)p Fv(',)g(the)g(result)f(of)h(`)30
b Fr(transform)e("gcc")h Fv(')54 b(is)630 193 y(`)p Fr
(m68k-vxworks-gcc)p Fv('.)150 377 y Fr(ishost)29 b(")p
Fq(host)r Fr(")630 487 y Fv(T)-8 b(ests)21 b(for)f(a)h(particular)d
Fn(host)31 b Fv(en)m(vironmen)m(t.)37 b(If)20 b(the)g(curren)m(tly)g
(con\014gured)f(host)i(matc)m(hes)630 596 y(the)34 b(argumen)m(t)g
(string,)f(the)h(result)e(is)h Fr(1)p Fv(;)i(otherwise)d(the)i(result)f
(is)f Fr(0)p Fv(.)50 b Fq(host)35 b Fv(m)m(ust)f(b)s(e)f(a)630
706 y(full)22 b(three-part)j Fr(configure)d Fv(host)j(name;)h(in)e
(particular,)g(y)m(ou)h(ma)m(y)g(not)f(use)h(the)f(shorter)630
815 y(nic)m(knames)f(supp)s(orted)f(b)m(y)i Fr(configure)d
Fv(\(but)i(y)m(ou)h(can)g(use)f(wildcard)f(c)m(haracters,)k(using)630
925 y(shell)j(syn)m(tax,)i(to)g(sp)s(ecify)e(sets)i(of)f(names\).)150
1109 y Fr(istarget)e(")p Fq(target)r Fr(")630 1219 y
Fv(T)-8 b(ests)40 b(for)g(a)g(particular)e Fn(tar)-5
b(get)50 b Fv(en)m(vironmen)m(t.)69 b(If)39 b(the)h(curren)m(tly)f
(con\014gured)g(target)630 1328 y(matc)m(hes)c(the)g(argumen)m(t)f
(string,)h(the)f(result)f(is)g Fr(1)p Fv(;)j(otherwise)e(the)g(result)f
(is)h Fr(0)p Fv(.)51 b Fq(target)630 1438 y Fv(m)m(ust)35
b(b)s(e)f(a)i(full)d(three-part)i Fr(configure)e Fv(target)j(name;)i
(in)c(particular,)h(y)m(ou)g(ma)m(y)h(not)630 1548 y(use)31
b(the)g(shorter)g(nic)m(knames)f(supp)s(orted)g(b)m(y)h
Fr(configure)d Fv(\(but)j(y)m(ou)g(can)h(use)e(wildcard)630
1657 y(c)m(haracters,)k(using)d(shell)f(syn)m(tax,)k(to)f(sp)s(ecify)d
(sets)j(of)f(names\).)46 b(If)32 b(it)g(is)f(passed)h(a)g
Fr(NULL)630 1767 y Fv(string,)e(then)g(it)g(returns)f(the)h(name)h(of)f
(the)h(build)c(canonical)j(con\014guration.)150 1951
y Fr(isbuild)e(")p Fq(host)r Fr(")630 2061 y Fv(T)-8
b(ests)33 b(for)f(a)h(particular)e Fn(build)k(host)42
b Fv(en)m(vironmen)m(t.)47 b(If)32 b(the)h(curren)m(tly)e(con\014gured)
h(host)630 2170 y(matc)m(hes)40 b(the)f(argumen)m(t)g(string,)h(the)f
(result)e(is)h Fr(1)p Fv(;)k(otherwise)d(the)f(result)g(is)g
Fr(0)p Fv(.)65 b Fq(host)630 2280 y Fv(m)m(ust)40 b(b)s(e)g(a)h(full)e
(three-part)i Fr(configure)d Fv(host)j(name;)46 b(in)39
b(particular,)j(y)m(ou)e(ma)m(y)i(not)630 2389 y(use)31
b(the)g(shorter)g(nic)m(knames)f(supp)s(orted)g(b)m(y)h
Fr(configure)d Fv(\(but)j(y)m(ou)g(can)h(use)e(wildcard)630
2499 y(c)m(haracters,)k(using)d(shell)f(syn)m(tax,)k(to)f(sp)s(ecify)d
(sets)j(of)f(names\).)46 b(If)32 b(it)g(is)f(passed)h(a)g
Fr(NULL)630 2609 y Fv(string,)e(then)g(it)g(returns)f(the)h(name)h(of)f
(the)h(build)c(canonical)j(con\014guration.)630 2743
y(item)k(is3w)m(a)m(y)h Fr(")p Fq(host)r Fr(")f Fv(T)-8
b(ests)34 b(for)g(a)h(canadian)f(cross.)52 b(This)33
b(is)g(when)g(the)i(tests)g(will)d(b)s(e)630 2853 y(run)24
b(on)h(a)h(remotly)f(hosted)h(cross)f(compiler.)38 b(If)25
b(it)g(is)g(a)g(canadian)g(cross,)i(then)e(the)h(result)630
2962 y(is)j Fr(1)p Fv(;)i(otherwise)e(the)i(result)e(is)h
Fr(0)p Fv(.)150 3147 y Fr(isnative)96 b Fv(T)-8 b(ests)28
b(whether)e(the)h(curren)m(t)g(con\014guration)f(has)h(the)g(same)h
(host)f(and)f(target.)42 b(When)26 b(it)630 3256 y(runs)32
b(in)g(a)h Fn(native)41 b Fv(con\014guration)32 b(this)g(pro)s(cedure)g
(returns)g(a)i Fr(1)p Fv(;)h(otherwise)d(it)h(returns)630
3366 y(a)e Fr(0)p Fv(.)150 3550 y Fr(load_lib)d(")p Fq(library-\014le)5
b Fr(")630 3660 y Fv(Loads)46 b(the)f(\014le)g Fq(library-\014le)j
Fv(b)m(y)d(searc)m(hing)g(a)h(\014xed)f(path)g(built)f(in)m(to)h
Fr(runtest)p Fv(.)84 b(If)630 3769 y(DejaGn)m(u)25 b(has)f(b)s(een)f
(installed,)h(it)f(lo)s(oks)h(in)f(a)h(path)g(starting)g(with)f(the)h
(installed)e(library)630 3879 y(directory)-8 b(.)39 b(If)26
b(y)m(ou)g(are)h(running)c(DejaGn)m(u)k(directly)e(from)g(a)i(source)f
(directory)-8 b(,)27 b(without)630 3988 y(\014rst)39
b(running)f(`)p Fr(make)29 b(install)p Fv(',)41 b(this)e(path)h
(defaults)g(to)g(the)h(curren)m(t)f(directory)-8 b(.)70
b(In)630 4098 y(either)31 b(case,)i(it)e(then)h(lo)s(oks)f(in)f(the)i
(curren)m(t)f(directory)g(for)g(a)h(directory)f(called)g
Fr(lib)p Fv(.)43 b(If)630 4208 y(there)38 b(are)f(duplicate)g
(de\014nitions,)g(the)g(last)g(one)h(loaded)f(tak)m(es)i(precedence)f
(o)m(v)m(er)h(the)630 4317 y(earlier)29 b(ones.)150 4501
y Fr(setup_xfail)e(")p Fq(con\014g)38 b Fv([)p Fq(bugid)t
Fv(])p Fr(")630 4611 y Fv(Declares)c(that)h(the)e(test)i(is)d(exp)s
(ected)j(to)f(fail)e(on)i(a)g(particular)e(set)i(of)f
(con\014gurations.)630 4721 y(The)f Fq(con\014g)40 b
Fv(argumen)m(t)32 b(m)m(ust)h(b)s(e)e(a)i(list)d(of)j(full)d
(three-part)i Fr(configure)e Fv(target)k(name;)630 4830
y(in)28 b(particular,)h(y)m(ou)h(ma)m(y)g(not)g(use)f(the)h(shorter)g
(nic)m(knames)f(supp)s(orted)f(b)m(y)h Fr(configure)630
4940 y Fv(\(but)22 b(y)m(ou)g(can)g(use)g(the)g(common)g(shell)f
(wildcard)e(c)m(haracters)24 b(to)e(sp)s(ecify)f(sets)h(of)g(names\).)
630 5049 y(The)33 b Fq(bugid)i Fv(argumen)m(t)f(is)f(optional,)h(and)f
(used)g(only)f(in)g(the)i(logging)g(\014le)e(output;)j(use)630
5159 y(it)29 b(as)g(a)h(link)d(to)j(a)f(bug-trac)m(king)h(system)f(suc)
m(h)g(as)g Fo(gna)-6 b(ts)28 b Fv(\(see)i(section)g(\\Ov)m(erview")f
(in)630 5269 y Fq(T)-8 b(rac)m(king)31 b(Bugs)f(With)g(GNA)-8
b(TS)5 b Fv(\).)p eop
%%Page: 26 28
26 27 bop 150 -116 a Fv(26)2364 b(DejaGn)m(u)32 b(T)-8
b(esting)30 b(F)-8 b(ramew)m(ork)630 83 y(Once)36 b(y)m(ou)g(use)f
Fr(setup_xfail)p Fv(,)f(the)i Fr(fail)e Fv(and)h Fr(pass)g
Fv(pro)s(cedures)f(pro)s(duce)h(the)h(mes-)630 193 y(sages)43
b(`)p Fr(XFAIL)p Fv(')e(and)h(`)p Fr(XPASS)p Fv(')f(resp)s(ectiv)m(ely)
-8 b(,)46 b(allo)m(wing)41 b(y)m(ou)h(to)h(distinguish)c(exp)s(ected)
630 302 y(failures)28 b(\(and)j(unexp)s(ected)e(success!\))42
b(from)30 b(other)g(test)h(outcomes.)630 437 y Fn(Warning:)43
b Fv(y)m(ou)25 b(m)m(ust)f(clear)h(the)f(exp)s(ected)h(failure)e(after)
i(using)e Fr(setup_xfail)e Fv(in)i(a)i(test)630 546 y(case.)41
b(An)m(y)29 b(call)f(to)h Fr(pass)f Fv(or)h Fr(fail)e
Fv(clears)i(the)g(exp)s(ected)g(failure)e(implicitly;)e(if)j(the)h
(test)630 656 y(has)k(some)g(other)g(outcome,)i(e.g.)49
b(an)32 b(error,)h(y)m(ou)h(can)f(call)f Fr(clear_xfail)d
Fv(to)34 b(clear)f(the)630 765 y(exp)s(ected)g(failure)f(explicitly)-8
b(.)46 b(Otherwise,)33 b(the)g(exp)s(ected-failure)f(declaration)h
(applies)630 875 y(to)e(whatev)m(er)g(test)h(runs)c(next,)j(leading)e
(to)i(surprising)c(results.)150 1059 y Fr(clear_xfail)g
Fq(con\014g)630 1169 y Fv(Cancel)c(an)h(exp)s(ected)g(failure)d
(\(previously)h(declared)h(with)f Fr(setup_xfail)p Fv(\))f(for)i(a)h
(partic-)630 1279 y(ular)k(set)i(of)g(con\014gurations.)40
b(The)29 b Fq(con\014g)37 b Fv(argumen)m(t)30 b(is)f(a)h(list)e(of)h
(con\014guration)g(target)630 1388 y(names.)68 b(It)40
b(is)e(only)h(necessary)h(to)g(call)f Fr(clear_xfail)d
Fv(if)i(a)i(test)h(case)f(ends)f(without)630 1498 y(calling)29
b(either)h Fr(pass)f Fv(or)h Fr(fail)p Fv(,)g(after)h(calling)e
Fr(setup_xfail)p Fv(.)150 1682 y Fr(verbose)f Fv([)p
Fr(-log)p Fv(])i([)p Fr(-n)p Fv(])g([)p Fr(--)p Fv(])h
Fr(")p Fq(string)8 b Fr(")28 b Fq(n)m(um)m(b)s(er)630
1792 y Fv(T)-8 b(est)42 b(cases)g(can)f(use)g(this)g(function)e(to)j
(issue)e(helpful)f(messages)j(dep)s(ending)d(on)i(the)630
1901 y(n)m(um)m(b)s(er)29 b(of)i(`)p Fr(--verbose)p Fv(')d(options)i
(on)g(the)h Fr(runtest)d Fv(command)i(line.)40 b(It)30
b(prin)m(ts)f Fq(string)630 2011 y Fv(if)40 b(the)i(v)-5
b(alue)41 b(of)h(the)g(v)-5 b(ariable)40 b Fr(verbose)f
Fv(is)i(higher)f(than)h(or)h(equal)f(to)h(the)g(optional)630
2120 y Fq(n)m(um)m(b)s(er)p Fv(.)g(The)31 b(default)f(v)-5
b(alue)31 b(for)g Fq(n)m(um)m(b)s(er)36 b Fv(is)31 b(1.)43
b(Use)32 b(the)f(optional)g(`)p Fr(-log)p Fv(')f(argumen)m(t)630
2230 y(to)k(cause)h Fq(string)40 b Fv(to)35 b(alw)m(a)m(ys)f(b)s(e)f
(added)g(to)i(the)f(log)f(\014le,)h(ev)m(en)h(if)d(it)i(w)m(on't)g(b)s
(e)f(prin)m(ted.)630 2340 y(Use)e(the)h(optional)e(`)p
Fr(-n)p Fv(')h(argumen)m(t)g(to)h(prin)m(t)e Fq(string)37
b Fv(without)30 b(a)i(trailing)d(newline.)41 b(Use)630
2449 y(the)31 b(optional)e(`)p Fr(--)p Fv(')h(argumen)m(t)h(if)f
Fq(string)37 b Fv(b)s(egins)28 b(with)i Fr(")p Fv(-)p
Fr(")p Fv(.)150 2698 y Fi(5.3.2)63 b(Remote)39 b(Comm)m(unication)h
(Pro)s(cedures)275 2891 y Fv(`)p Fr(lib/remote.exp)p
Fv(')c(de\014nes)i(these)i(functions,)g(for)g(establishing)d(and)i
(managing)g(comm)m(unica-)150 3000 y(tions:)275 3135
y Fn(Pr)-5 b(o)g(c)g(e)g(dur)g(es)45 b(to)e(establish)h(a)f(c)-5
b(onne)g(ction:)70 b Fv(Eac)m(h)42 b(of)g(these)f(pro)s(cedures)g
(tries)g(to)h(establish)e(the)150 3244 y(connection)31
b(up)f(to)h(three)g(times)g(b)s(efore)f(returning.)40
b(W)-8 b(arnings)31 b(\(if)f(retries)g(will)e(con)m(tin)m(ue\))k(or)e
(errors)150 3354 y(\(if)42 b(the)g(attempt)h(is)f(abandoned\))f(rep)s
(ort)h(on)g(comm)m(unication)g(failures.)74 b(The)42
b(result)f(for)h(an)m(y)h(of)150 3464 y(these)31 b(pro)s(cedures)e(is)h
(either)g Fr(-1)p Fv(,)g(when)f(the)i(connection)g(cannot)g(b)s(e)f
(established,)f(or)h(the)h(spa)m(wn)f(ID)150 3573 y(returned)f(b)m(y)h
(the)h Fr(expect)e Fv(command)h Fr(spawn)p Fv(.)275 3708
y(It)d(use)f(the)h(v)-5 b(alue)27 b(of)g(the)g Fr(connect)e
Fv(\014eld)g(in)h(the)h Fr(target_info)d Fv(arra)m(y)j(\(w)m(as)h
Fr(connectmode)c Fv(as)j(the)150 3817 y(t)m(yp)s(e)38
b(of)g(connection)f(to)i(mak)m(e.)63 b(Curren)m(t)37
b(supp)s(orted)f(connection)i(t)m(yp)s(es)f(are)h(tip,)h(k)m(ermit,)g
(telnet,)150 3927 y(rsh,)e(rlogin,)f(and)f(netdata.)59
b(If)36 b(the)g Fr(--reboot)e Fv(option)h(w)m(as)i(used)e(on)h(the)g
(run)m(test)g(command)g(line,)150 4037 y(then)30 b(the)h(target)h(is)d
(reb)s(o)s(oted)h(b)s(efore)g(the)h(connection)f(is)g(made.)150
4221 y Fr(remote_open)d Fq(t)m(yp)s(e)630 4330 y Fn(R)-5
b(emote)40 b(Conne)-5 b(ction)41 b(Pr)-5 b(o)g(c)g(e)g(dur)g(e.)64
b Fv(This)36 b(is)h(passed)g Fn(host)47 b Fv(or)38 b
Fn(tar)-5 b(get)p Fv(.)63 b(Host)39 b(or)e(target)630
4440 y(refers)31 b(to)h(whether)f(it)g(is)f(a)i(connection)g(to)g(a)g
(remote)g(target,)h(or)f(a)g(remote)g(host.)44 b(This)630
4550 y(op)s(ens)34 b(the)g(connection)h(to)g(the)g(desired)e(target)j
(or)e(host)h(using)e(the)i(default)e(v)-5 b(alues)34
b(in)630 4659 y(the)25 b(con\014guration)f(system.)39
b(It)25 b(returns)e(that)i Fr(spawn_id)e Fv(of)i(the)g(pro)s(cess)f
(that)h(manages)630 4769 y(the)32 b(connection.)46 b(This)30
b(v)-5 b(alue)31 b(can)i(b)s(e)e(used)g(in)g Fr(expect)f
Fv(or)i Fr(exp_send)e Fv(statemen)m(ts,)k(or)630 4878
y(passed)25 b(to)i(other)f(pro)s(cedures)e(that)i(need)g(the)g
(connection)g(pro)s(cess's)f(id.)38 b(This)24 b(also)i(sets)630
4988 y(the)31 b Fr(fileid)d Fv(\014eld)h(in)g(the)i Fr(target_info)c
Fv(arra)m(y)-8 b(.)p eop
%%Page: 27 29
27 28 bop 150 -116 a Fv(Chapter)30 b(5:)41 b(The)30 b(DejaGn)m(u)h
(Implemen)m(tation)1847 b(27)150 83 y Fr(remote_close)27
b Fq(shellid)630 193 y Fn(shel)5 b(lid)42 b Fv(is)31
b(v)-5 b(alue)31 b(returned)g(b)m(y)h(a)g(call)g(to)g
Fr(remote_open)p Fv(.)42 b(This)31 b(closes)h(the)g(connection)630
302 y(to)c(the)g(target)h(so)f(resources)f(can)h(b)s(e)f(used)g(b)m(y)g
(others.)40 b(This)26 b(parameter)i(can)f(b)s(e)g(left)h(o\013)630
412 y(if)h(the)i Fr(fileid)e Fv(\014eld)g(in)g(the)h
Fr(target_info)d Fv(arra)m(y)k(is)f(set.)150 596 y Fr(telnet)f
Fq(hostname)35 b(p)s(ort)150 706 y Fr(rlogin)29 b Fq(hostname)150
815 y Fr(rsh)g Fq(hostname)630 925 y Fn(IP)d(network)g(pr)-5
b(o)g(c)g(e)g(dur)g(es.)42 b Fq(hostname)28 b Fv(refers)23
b(to)g(the)h(IP)e(address)h(or)g(name)g(\(for)g(example,)630
1034 y(an)h(en)m(try)g(in)f(`)p Fr(/etc/hosts)p Fv('\))f(for)i(this)f
(target.)40 b(The)23 b(pro)s(cedure)g(names)h(re\015ect)h(the)f(Unix)
630 1144 y(utilit)m(y)29 b(used)h(to)i(establish)d(a)j(connection.)42
b(The)31 b(optional)f Fq(p)s(ort)i Fv(is)e(used)g(to)i(sp)s(ecify)e
(the)630 1254 y(IP)35 b(p)s(ort)f(n)m(um)m(b)s(er.)53
b(The)35 b(v)-5 b(alue)34 b(of)h(the)g Fr(netport)e Fv(\014eld)h(in)f
(the)j Fr(target_info)31 b Fv(arra)m(y)36 b(is)630 1363
y(used.)64 b(\(w)m(as)40 b Fr($netport)p Fv(\))c(This)h(v)-5
b(alue)38 b(has)g(t)m(w)m(o)i(parts,)h(the)d(hostname)h(and)f(the)h(p)s
(ort)630 1473 y(n)m(um)m(b)s(er,)26 b(sep)s(erated)g(b)m(y)g(a)h
Fn(:)p Fv(.)39 b(If)26 b Fr(host)f Fv(or)h Fr(target)f
Fv(is)g(used)h(in)f(the)h Fr(hostname)e Fv(\014eld,)i(than)630
1582 y(the)31 b(con\014g)f(arra)m(y)h(is)e(used)h(for)g(all)f
(information.)150 1767 y Fr(tip)g Fq(p)s(ort)137 b Fn(Serial)29
b(line)g(pr)-5 b(o)g(c)g(e)g(dur)g(e.)42 b Fv(Connect)26
b(using)f(the)h(Unix)f(utilit)m(y)g Fr(tip)p Fv(.)38
b Fq(p)s(ort)28 b Fv(m)m(ust)e(b)s(e)f(a)i(name)630 1876
y(from)g(the)g Fr(tip)g Fv(con\014guration)g(\014le)f(`)p
Fr(/etc/remote)p Fv('.)37 b(Often,)28 b(this)e(is)h(called)f(`)p
Fr(hardwire)p Fv(',)630 1986 y(or)h(something)g(lik)m(e)g(`)p
Fr(ttya)p Fv('.)39 b(This)26 b(\014le)g(holds)g(all)h(the)g
(con\014guration)g(data)h(for)g(the)f(serial)630 2095
y(p)s(ort.)61 b(The)37 b(v)-5 b(alue)37 b(of)h(the)f
Fr(serial)f Fv(\014eld)g(in)g(the)i Fr(target_info)c
Fv(arra)m(y)k(is)e(used.)61 b(\(w)m(as)630 2205 y Fr($serialport)p
Fv(\))24 b(If)i Fr(host)f Fv(or)h Fr(target)f Fv(is)g(used)h(in)f(the)i
Fr(port)e Fv(\014eld,)h(than)g(the)h(con\014g)f(arra)m(y)630
2315 y(is)j(used)h(for)g(all)f(information.)150 2499
y Fr(kermit)g Fq(p)s(ort)i(bps)630 2609 y Fn(Serial)39
b(line)e(pr)-5 b(o)g(c)g(e)g(dur)g(e.)60 b Fv(Connect)36
b(using)f(the)h(program)g Fr(kermit)p Fv(.)56 b Fq(p)s(ort)37
b Fv(is)e(the)h(device)630 2718 y(name,)28 b(e.g.)40
b(`)p Fr(/dev/ttyb)p Fv('.)e Fq(bps)29 b Fv(is)c(the)i(line)e(sp)s(eed)
g(to)j(use)e(\(in)g(bits)f(p)s(er)g(second\))i(for)g(the)630
2828 y(connection.)59 b(The)36 b(v)-5 b(alue)36 b(of)h(the)f
Fr(serial)f Fv(\014eld)g(in)g(the)i Fr(target_info)c
Fv(arra)m(y)k(is)e(used.)630 2937 y(\(w)m(as)29 b Fr($serialport)p
Fv(\))d(If)i Fr(host)f Fv(or)h Fr(target)f Fv(is)h(used)f(in)g(the)i
Fr(port)e Fv(\014eld,)h(than)g(the)h(con\014g)630 3047
y(arra)m(y)i(is)e(used)h(for)g(all)f(information.)150
3206 y Fn(Pr)-5 b(o)g(c)g(e)g(dur)g(es)35 b(to)e(manage)h(a)f(c)-5
b(onne)g(ction:)150 3391 y Fr(tip_download)27 b Fq(spa)m(wnid)32
b(\014le)630 3500 y Fv(Do)m(wnload)25 b(`)p Fq(\014le)5
b Fv(')24 b(to)i(the)f(pro)s(cess)f Fq(spa)m(wnid)j Fv(\(the)e(v)-5
b(alue)24 b(returned)g(when)g(the)h(connection)630 3610
y(w)m(as)42 b(established\),)h(using)d(the)h Fr(~put)g
Fv(command)g(under)f Fr(tip)p Fv(.)72 b(Most)43 b(often)f(used)e(for)
630 3719 y(single)29 b(b)s(oard)h(computers)g(that)h(require)e(do)m
(wnloading)g(programs)h(in)g Fo(asci)r(i)g Fv(S-records.)630
3829 y(Returns)f Fr(1)h Fv(if)g(an)g(error)g(o)s(ccurs,)g
Fr(0)g Fv(otherwise.)150 4013 y Fr(exit_remote_shell)c
Fq(spa)m(wnid)630 4123 y Fv(Exits)34 b(a)g(remote)h(pro)s(cess)f
(started)h(b)m(y)f(an)m(y)h(of)g(the)f(connection)h(pro)s(cedures.)51
b Fq(spa)m(wnid)630 4232 y Fv(is)29 b(the)i(result)e(of)i(the)f
(connection)h(pro)s(cedure)e(that)i(started)g(the)g(remote)g(pro)s
(cess.)150 4417 y Fr(download)d Fq(\014le)35 b Fv([)30
b Fq(spa)m(wnid)i Fv(])630 4526 y(After)c(y)m(ou)h(establish)d(a)j
(connection)f(to)h(a)f(target,)j(y)m(ou)d(can)g(do)m(wnload)g(programs)
f(using)630 4636 y(this)39 b(command.)68 b Fr(download)38
b Fv(reads)i(in)e Fq(\014le)44 b Fv(\(ob)5 b(ject)41
b(co)s(de)f(in)f(S-record)g(format\))i(and)630 4746 y(writes)29
b(it)g(to)h(the)g(device)g(con)m(trolling)e(this)h Fq(spa)m(wnid)p
Fv(.)38 b(\(F)-8 b(rom)31 b(the)f(p)s(oin)m(t)e(of)i(view)f(of)h(the)
630 4855 y(target,)i(the)f(S-record)f(\014le)f(comes)i(in)f(via)g
(standard)f(input.\))630 4990 y(If)38 b(y)m(ou)g(ha)m(v)m(e)i(more)e
(than)g(one)g(target)i(activ)m(e,)i(y)m(ou)c(can)h(use)f(the)g
(optional)f(argumen)m(t)630 5099 y Fq(spa)m(wnid)28 b
Fv(to)g(sp)s(ecify)d(an)h(alternativ)m(e)h(target)h(\(the)f(default)f
(is)g(the)g(most)h(recen)m(tly)g(estab-)630 5209 y(lished)h
Fq(spa)m(wnid)p Fv(.\))p eop
%%Page: 28 30
28 29 bop 150 -116 a Fv(28)2364 b(DejaGn)m(u)32 b(T)-8
b(esting)30 b(F)-8 b(ramew)m(ork)150 83 y Fi(5.3.3)63
b(Utilit)m(y)40 b(Pro)s(cedures)275 276 y Fv(`)p Fr(lib/utils.exp)p
Fv(')27 b(de\014nes)i(these)i(utilit)m(y)e(pro)s(cedures:)150
460 y Fr(getdirs)f Fq(dir)150 570 y Fr(getdirs)g Fq(dir)36
b(pattern)630 679 y Fv(Returns)21 b(a)h(list)e(of)i(all)f(the)h
(directories)e(in)h(the)h(single)e(directory)h Fq(dir)27
b Fv(that)22 b(matc)m(h)h Fq(pattern)p Fv(.)630 789 y(If)31
b(y)m(ou)g(do)g(not)g(sp)s(ecify)f Fq(pattern)p Fv(,)i
Fr(getdirs)d Fv(assumes)h(`)p Fr(*)p Fv('.)43 b(Y)-8
b(ou)32 b(ma)m(y)g(use)e(the)i(common)630 898 y(shell)f(wildcard)f(c)m
(haracters)k(in)e Fq(pattern)p Fv(.)48 b(If)32 b(no)g(directories)g
(matc)m(h)i(the)f(pattern,)g(then)630 1008 y(a)e Fr(NULL)e
Fv(string)g(is)h(returned.)150 1192 y Fr(find)f Fq(dir)35
b(pattern)630 1302 y Fv(Searc)m(h)42 b(for)f(\014les)f(whose)h(names)h
(matc)m(h)g Fq(pattern)g Fv(\(using)e(shell)f(wildcard)g(c)m(haracters)
630 1411 y(for)30 b(\014lename)g(expansion\).)41 b(Searc)m(h)31
b(sub)s(directories)d(recursiv)m(ely)-8 b(,)31 b(starting)f(at)h
Fq(dir)p Fv(.)40 b(The)630 1521 y(result)g(is)g(the)i(list)e(of)h
(\014les)f(whose)h(names)g(matc)m(h;)48 b(if)40 b(no)h(\014les)f(matc)m
(h,)45 b(the)d(result)e(is)630 1631 y(empt)m(y)-8 b(.)54
b(Filenames)34 b(in)f(the)h(result)g(include)e(all)h(in)m(terv)m(ening)
h(sub)s(directory)e(names.)53 b(If)630 1740 y(no)30 b(\014les)g(matc)m
(h)h(the)f(pattern,)h(then)f(a)h Fr(NULL)e Fv(string)h(is)f(returned.)
150 1924 y Fr(which)g Fq(binary)630 2034 y Fv(Searc)m(hes)43
b(the)f(execution)g(path)g(for)g(an)g(executable)h(\014le)e
Fq(binary)p Fv(,)j(lik)m(e)d(the)h(the)h(BSD)630 2144
y Fr(which)38 b Fv(utilit)m(y)-8 b(.)66 b(This)37 b(pro)s(cedure)i
(uses)f(the)i(shell)d(en)m(vironmen)m(t)i(v)-5 b(ariable)38
b(`)p Fr(PATH)p Fv('.)67 b(It)630 2253 y(returns)32 b
Fr(0)g Fv(if)g(the)h(binary)e(is)h(not)h(in)e(the)i(path,)h(or)f(if)f
(there)h(is)e(no)i(`)p Fr(PATH)p Fv(')f(en)m(vironmen)m(t)630
2363 y(v)-5 b(ariable.)40 b(If)29 b Fq(binary)37 b Fv(is)29
b(in)g(the)i(path,)f(it)g(returns)f(the)i(full)d(path)i(to)h
Fq(binary)p Fv(.)150 2547 y Fr(grep)e Fq(\014lename)35
b(regexp)150 2707 y Fr(grep)29 b Fq(\014lename)35 b(regexp)e
Fr(line)630 2816 y Fv(Searc)m(h)i(the)h(\014le)e(called)h
Fq(\014lename)k Fv(\(a)d(fully)d(sp)s(eci\014ed)g(path\))j(for)f(lines)
e(that)j(con)m(tain)g(a)630 2926 y(matc)m(h)i(for)g(regular)e
(expression)g Fq(regexp)p Fv(.)63 b(The)36 b(result)h(is)f(a)i(list)e
(of)i(all)e(the)i(lines)d(that)630 3035 y(matc)m(h.)54
b(If)33 b(no)i(lines)d(matc)m(h,)37 b(the)d(result)f(is)h(an)g(empt)m
(y)h(string.)51 b(Sp)s(ecify)33 b Fq(regexp)k Fv(using)630
3145 y(the)31 b(standard)e(regular)h(expression)f(st)m(yle)h(used)g(b)m
(y)g(the)h(Unix)e(utilit)m(y)g(program)h Fr(grep)p Fv(.)630
3279 y(Use)f(the)f(optional)g(third)e(argumen)m(t)j(`)p
Fr(line)p Fv(')f(to)h(start)g(lines)d(in)h(the)i(result)e(with)g(the)i
(line)630 3389 y(n)m(um)m(b)s(er)35 b(in)g Fq(\014lename)p
Fv(.)58 b(\(This)35 b(argumen)m(t)i(is)f(simply)e(an)i(option)g
(\015ag;)k(t)m(yp)s(e)d(it)f(just)g(as)630 3499 y(sho)m(wn|`)p
Fr(line)p Fv('.\))150 3683 y Fr(diff)29 b Fq(\014lename)35
b(\014lename)630 3792 y Fv(Compares)f(the)g(t)m(w)m(o)h(\014les)e(and)g
(returns)g(a)i(1)f(if)f(they)h(matc)m(h,)i(or)e(a)g(0)h(if)e(they)h
(don't.)51 b(If)630 3902 y Fr(verbose)28 b Fv(is)i(set,)h(then)f(it'll)
f(prin)m(t)g(the)h(di\013erences)g(to)h(the)g(screen.)150
4086 y Fr(slay)e Fq(name)630 4196 y Fv(This)h(lo)s(ok)h(in)g(the)h(pro)
s(cess)f(tab)s(el)g(for)g Fq(name)37 b Fv(and)31 b(send)g(it)h(a)g
(unix)e Fr(SIGINT)p Fv(,)g(killing)f(the)630 4306 y(pro)s(cess.)150
4490 y Fr(absolute)f Fq(path)630 4599 y Fv(This)h(pro)s(cedure)g(tak)m
(es)j(the)e(relativ)m(e)h Fq(path)p Fv(,)f(and)g(con)m(v)m(erts)i(it)e
(to)h(an)f(absolute)g(path.)150 4784 y Fr(psource)e Fq(\014lename)630
4893 y Fv(This)23 b(sources)j(the)f(\014le)f Fq(\014lename)p
Fv(,)i(and)f(traps)g(all)f(errors.)38 b(It)26 b(also)f(ignores)f(all)g
(extraneous)630 5003 y(output.)40 b(If)30 b(there)h(w)m(as)g(an)f
(error)g(it)g(returns)f(a)i(1,)g(otherwise)e(it)h(returns)f(a)i(0.)p
eop
%%Page: 29 31
29 30 bop 150 -116 a Fv(Chapter)30 b(5:)41 b(The)30 b(DejaGn)m(u)h
(Implemen)m(tation)1847 b(29)150 83 y Fr(prune)29 b Fq(list)i(pattern)
630 193 y Fv(Remo)m(v)m(e)37 b(elemen)m(ts)f(of)f(the)g(Tcl)g(list)f
Fq(list)p Fv(.)54 b(Elemen)m(ts)35 b(are)h(\014elds)d(delimited)g(b)m
(y)i(spaces.)630 302 y(The)29 b(result)f(is)g(a)h(cop)m(y)h(of)g
Fq(list)p Fv(,)e(without)g(an)m(y)h(elemen)m(ts)h(that)g(matc)m(h)g
Fq(pattern)p Fv(.)40 b(Y)-8 b(ou)30 b(can)630 412 y(use)g(the)h(common)
f(shell)f(wildcard)f(c)m(haracters)k(to)f(sp)s(ecify)e
Fq(pattern)p Fv(.)150 595 y Fr(setenv)g Fq(v)-5 b(ar)36
b(v)-5 b(al)630 705 y Fv(Sets)30 b(the)h(v)-5 b(ariable)29
b Fq(v)-5 b(ar)37 b Fv(to)31 b(the)g(v)-5 b(alue)29 b
Fq(v)-5 b(al)p Fv(.)150 888 y Fr(unsetenv)28 b Fq(v)-5
b(ar)630 998 y Fv(Unsets)30 b(the)h(en)m(vironmen)m(t)f(v)-5
b(ariable)29 b Fq(v)-5 b(ar)150 1181 y Fr(getenv)29 b
Fq(v)-5 b(ar)630 1291 y Fv(returns)39 b(the)i(v)-5 b(alue)40
b(of)h Fq(v)-5 b(ar)47 b Fv(in)39 b(the)i(en)m(vironmen)m(t)f(if)f(it)h
(exists,)j(otherwise)d(it)g(returns)630 1400 y Fr(NULL)p
Fv(.)150 1584 y Fr(runtest_file_p)26 b Fq(run)m(tests)34
b(testcase)630 1693 y Fv(Searc)m(h)d Fq(run)m(tests)j
Fv(for)c Fq(testcase)37 b Fv(and)30 b(return)g(1)g(if)g(found,)f(0)i
(if)e(not.)41 b Fq(run)m(tests)34 b Fv(is)c(a)h(list)e(of)630
1803 y(t)m(w)m(o)i(elemen)m(ts.)41 b(The)30 b(\014rst)f(is)g(the)h
(pathname)g(of)g(the)g(testsuite)g(exp)s(ect)h(script)d(running.)630
1912 y(The)g(second)h(is)f(a)i(cop)m(y)g(of)f(what)f(w)m(as)i(on)f(the)
g(righ)m(t)f(side)g(of)h(the)h Fr(=)e Fv(if)g(`)p Fr(foo.exp="...)m(")p
Fv(')630 2022 y(w)m(as)33 b(sp)s(eci\014ed,)f(or)h(an)f(empt)m(y)i
(string)d(if)h(no)h(suc)m(h)f(argumen)m(t)h(is)f(presen)m(t.)48
b(This)31 b(is)h(used)630 2131 y(b)m(y)e(to)s(ols)g(lik)m(e)g
(compilers)f(where)h(eac)m(h)h(testcase)i(is)c(a)i(\014le.)150
2315 y Fr(prune_system_crud)26 b Fq(system)k(text)630
2424 y Fv(F)-8 b(or)30 b(system)f Fq(system)p Fv(,)h(delete)g(text)g
(the)g(host)f(or)g(target)i(op)s(erating)e(system)g(migh)m(t)g(issue)
630 2534 y(that)22 b(will)c(in)m(terfere)j(with)e(pattern)j(matc)m
(hing)f(of)g(program)g(output)f(in)g Fq(text)p Fv(.)39
b(An)20 b(example)630 2644 y(is)29 b(the)i(message)g(that)g(is)f(prin)m
(ted)f(if)g(a)i(shared)e(library)f(is)i(out)g(of)h(date.)150
2891 y Fi(5.3.4)63 b(Cross)41 b(target)g(pro)s(cedure)275
3084 y Fv(`)p Fr(lib/target.exp)p Fv(')27 b(de\014nes)i(these)i(utilit)
m(y)e(pro)s(cedures:)150 3267 y Fr(push_target)e Fn(name)630
3377 y Fv(This)22 b(mak)m(es)j(the)f(target)h(named)e
Fn(name)31 b Fv(b)s(e)24 b(the)g(curren)m(t)f(target)i(connection.)39
b(The)23 b(v)-5 b(alue)630 3486 y(of)30 b Fn(name)38
b Fv(is)29 b(an)h(index)f(in)m(to)h(the)g Fr(target_info)d
Fv(arra)m(y)k(and)e(is)g(set)i(in)e(the)h(global)g(con\014g)630
3596 y(\014le.)150 3779 y Fr(pop_target)630 3889 y Fv(This)f(unsets)g
(the)i(curren)m(t)f(target)i(connection.)150 4072 y Fr(list_targets)630
4182 y Fv(This)d(lists)f(all)i(the)g(supp)s(orted)f(targets)j(for)e
(this)f(arc)m(hitecture.)150 4365 y Fr(push_host)f Fn(name)630
4475 y Fv(This)g(mak)m(es)j(the)g(host)f(named)g Fn(name)37
b Fv(b)s(e)30 b(the)g(curren)m(t)g(remote)h(host)g(connection.)40
b(The)630 4584 y(v)-5 b(alue)31 b(of)i Fn(name)39 b Fv(is)31
b(an)h(index)e(in)m(to)i(the)h Fr(target_info)28 b Fv(arra)m(y)33
b(and)e(is)g(set)i(in)d(the)j(global)630 4694 y(con\014g)e(\014le.)150
4877 y Fr(pop_host)96 b Fv(This)29 b(unsets)g(the)i(curren)m(t)f(host)h
(connection.)630 5011 y(This)f(in)m(v)m(ok)m(es)i(the)f(compiler)f(as)i
(set)g(b)m(y)f Fr(CC)g Fv(to)h(compile)e(the)i(\014le)e
Fn(\014le)p Fv(.)44 b(The)31 b(default)g(op-)630 5121
y(tions)24 b(for)h(man)m(y)g(cross)g(compilation)f(targets)i(are)f
Fn(guesse)-5 b(d)35 b Fv(b)m(y)25 b(DejaGn)m(u,)i(and)d(these)i(op-)630
5230 y(tions)g(can)h(b)s(e)f(added)h(to)g(b)m(y)g(passing)e(in)h(more)h
(parameters)g(as)g(argumen)m(ts)g(to)h Fr(compile)p Fv(.)630
5340 y(Optionally)-8 b(,)32 b(this)f(will)f(also)j(use)g(the)g(v)-5
b(alue)32 b(of)h(the)g Fr(cflags)e Fv(\014eld)g(in)g(the)i(target)i
(con\014g)p eop
%%Page: 30 32
30 31 bop 150 -116 a Fv(30)2364 b(DejaGn)m(u)32 b(T)-8
b(esting)30 b(F)-8 b(ramew)m(ork)630 83 y(arra)m(y)g(.)43
b(If)31 b(the)g(host)g(is)f(not)h(the)g(same)h(as)f(the)g(build)d(mac)m
(hines,)j(then)g(then)f(compiler)g(is)630 193 y(run)f(on)h(the)h
(remote)g(host)g(using)d Fr(execute_anywhere)p Fv(.)630
324 y(This)k(pro)s(duces)g(an)i(arc)m(hiv)m(e)g(\014le.)50
b(An)m(y)34 b(parameters)g(passed)f(to)h Fr(archive)e
Fv(are)i(used)f(in)630 434 y(addition)39 b(to)j(the)g(default)e
(\015ags.)74 b(Optionally)-8 b(,)42 b(this)e(will)f(also)i(use)g(the)h
(v)-5 b(alue)40 b(of)i(the)630 544 y Fr(arflags)d Fv(\014eld)g(in)h
(the)h(target)i(con\014g)e(arra)m(y)-8 b(.)73 b(If)41
b(the)g(host)g(is)f(not)h(the)g(same)h(as)f(the)630 653
y(build)31 b(mac)m(hines,)k(then)f(then)g(arc)m(hiv)m(er)h(is)e(run)g
(on)h(the)h(remote)g(host)f(using)f Fr(execute_)630 763
y(anywhere)p Fv(.)630 895 y(This)28 b(generates)j(an)f(index)e(for)h
(the)h(arc)m(hiv)m(e)g(\014le)f(for)h(systems)f(that)i(aren't)f(POSIX)f
(y)m(et.)630 1004 y(An)m(y)h(parameters)h(passed)f(to)h
Fr(ranlib)e Fv(are)i(used)e(in)g(for)h(the)h(\015ags.)150
1180 y Fr(execute_anywhere)26 b Fn(cmd)5 b(line)630 1290
y Fv(This)36 b(executes)j(the)f Fn(cmd)5 b(line)45 b
Fv(on)37 b(the)h(prop)s(er)f(host.)63 b(This)36 b(should)f(b)s(e)j
(used)f(as)h(a)g(re-)630 1399 y(placemen)m(t)c(for)e(the)i(Tcl)e
(command)h Fr(exec)f Fv(as)h(this)f(v)m(ersion)h(utilizes)e(the)i
(target)i(con\014g)630 1509 y(info)25 b(to)h(execute)h(this)d(command)i
(on)f(the)h(build)d(mac)m(hine)i(or)h(a)g(remote)g(host.)39
b(All)25 b(con\014g)630 1619 y(information)k(for)i(the)g(remote)h(host)
f(m)m(ust)g(b)s(e)f(setup)h(to)g(ha)m(v)m(e)h(this)e(command)h(w)m
(ork.)42 b(If)630 1728 y(this)25 b(is)g(a)h(canadian)g(cross,)h
(\(where)f(w)m(e)g(test)h(a)g(cross)f(compiler)e(that)j(runs)d(on)i(a)g
(di\013eren)m(t)630 1838 y(host)k(then)f(where)h(DejaGn)m(u)g(is)f
(running\))e(then)j(a)g(connection)g(is)f(made)h(to)g(the)g(remote)630
1947 y(host)39 b(and)e(the)i(command)f(is)g(executed)h(there.)65
b(It)39 b(returns)e(either)h Fn(REMOTERR)n(OR)630 2057
y Fv(\(for)32 b(an)h(error\))f(or)g(the)h(output)e(pro)s(duced)g(when)g
(the)i(command)f(w)m(as)g(executed.)48 b(This)630 2167
y(is)29 b(used)h(for)g(running)e(the)i(to)s(ol)h(to)g(b)s(e)f(tested,)h
(not)g(a)f(test)i(case.)150 2383 y Fi(5.3.5)63 b(Debugging)42
b(Pro)s(cedures)275 2573 y Fv(`)p Fr(lib/debugger.exp)p
Fv(')26 b(de\014nes)j(these)i(utilit)m(y)e(pro)s(cedures:)150
2749 y Fr(dumpvars)f Fn(expr)630 2858 y Fv(This)33 b(tak)m(es)k(a)f
(csh)f(st)m(yle)g(regular)g(expression)f(\(glob)h(rules\))f(and)h(prin)
m(ts)f(the)h(v)-5 b(alues)35 b(of)630 2968 y(the)c(global)e(v)-5
b(ariable)29 b(names)i(that)g(matc)m(h.)41 b(It)31 b(is)e(abbreviated)h
(as)h Fr(dv)150 3144 y(dumplocals)d Fn(expr)630 3254
y Fv(This)33 b(tak)m(es)k(a)f(csh)f(st)m(yle)g(regular)g(expression)f
(\(glob)h(rules\))f(and)h(prin)m(ts)f(the)h(v)-5 b(alues)35
b(of)630 3363 y(the)c(lo)s(cal)e(v)-5 b(ariable)29 b(names)i(that)g
(matc)m(h.)41 b(It)31 b(is)e(abbreviated)h(as)g Fr(dl)p
Fv(.)150 3539 y Fr(dumprocs)e Fn(expr)630 3649 y Fv(This)f(tak)m(es)j
(a)g(csh)e(st)m(yle)h(regular)f(expression)g(\(glob)h(rules\))e(and)h
(prin)m(ts)g(the)h(b)s(o)s(dy)e(of)i(all)630 3759 y(pro)s(cs)h(that)h
(matc)m(h.)41 b(It)31 b(is)e(abbreviated)h(as)g Fr(dp)150
3935 y(dumpwatch)e Fn(expr)630 4044 y Fv(This)i(tak)m(es)j(a)f(csh)g
(st)m(yle)g(regular)f(expression)g(\(glob)g(rules\))g(and)g(prin)m(ts)g
(all)f(the)i(w)m(atc)m(h-)630 4154 y(p)s(oin)m(ts.)40
b(It)30 b(is)f(abbreviated)h(as)h Fr(dw)p Fv(.)150 4330
y Fr(watchunset)d Fn(var)630 4440 y Fv(This)22 b(breaks)i(program)f
(execution)i(when)d(the)j(v)-5 b(ariable)22 b Fn(var)35
b Fv(is)22 b(unset.)39 b(It)24 b(is)f(abbreviated)630
4549 y(as)31 b Fr(wu)p Fv(.)150 4725 y Fr(watchwrite)d
Fn(var)630 4835 y Fv(This)g(breaks)h(program)h(execution)g(when)f(the)g
(v)-5 b(ariable)29 b Fn(var)40 b Fv(is)29 b(written.)39
b(It)30 b(is)f(abbrevi-)630 4945 y(ated)i(as)g Fr(ww)p
Fv(.)150 5121 y Fr(watchread)d Fn(var)630 5230 y Fv(This)e(breaks)h
(program)g(execution)h(when)e(the)i(v)-5 b(ariable)26
b Fn(var)38 b Fv(is)27 b(read.)39 b(It)28 b(is)f(abbreviated)630
5340 y(as)k Fr(wr)p Fv(.)p eop
%%Page: 31 33
31 32 bop 150 -116 a Fv(Chapter)30 b(5:)h(The)f(DejaGn)m(u)h(Implemen)m
(tation)1857 b(31)150 83 y Fr(watchdel)28 b Fn(watch)630
193 y Fv(This)h(deletes)h(a)h(the)f(w)m(atc)m(hp)s(oin)m(t)h(for)f
Fn(watch)p Fv(.)42 b(It)31 b(is)e(abbreviated)h(as)g
Fr(wd)p Fv(.)150 372 y Fr(print)f Fn(var)85 b Fv(This)29
b(prin)m(ts)f(the)j(v)-5 b(alue)30 b(of)g(the)h(v)-5
b(ariable)29 b Fn(var)p Fv(.)41 b(It)31 b(is)e(abbreviated)h(as)h
Fr(p)p Fv(.)150 552 y Fr(quit)288 b Fv(This)29 b(mak)m(es)i(run)m(test)
f(exit.)41 b(It)30 b(is)g(abbreviated)f(as)i Fr(q)p Fv(.)150
732 y Fr(bt)384 b Fv(This)29 b(prin)m(ts)f(a)j(bac)m(ktrace)i(of)d(the)
h(executed)g(Tcl)f(commands.)150 985 y Fu(5.4)68 b(T)-11
b(arget)45 b(dep)t(enden)l(t)g(pro)t(cedures)275 1176
y Fv(Eac)m(h)37 b(com)m(bination)e(of)i(target)h(and)e(to)s(ol)g
(requires)f(some)i(target-dep)s(enden)m(t)g(pro)s(cedures.)57
b(The)150 1286 y(names)24 b(of)f(these)h(pro)s(cedures)f(ha)m(v)m(e)h
(a)g(common)g(form:)37 b(the)24 b(to)s(ol)f(name,)j(follo)m(w)m(ed)d(b)
m(y)g(an)h(underbar)e(`)p Fr(_)p Fv(',)150 1396 y(and)k(\014nally)e(a)j
(su\016x)e(describing)f(the)i(pro)s(cedure's)g(purp)s(ose.)37
b(F)-8 b(or)27 b(example,)h(a)e(pro)s(cedure)f(to)i(extract)150
1505 y(the)45 b(v)m(ersion)g(from)g Fo(gdb)g Fv(is)f(called)h(`)p
Fr(gdb_version)p Fv('.)83 b(See)45 b(Section)g(5.2)h([Initialization)e
(Mo)s(dule],)150 1615 y(page)39 b(22,)i(for)d(a)h(discussion)c(of)k(ho)
m(w)f(DejaGn)m(u)h(arranges)f(to)h(\014nd)e(the)h(righ)m(t)g(pro)s
(cedures)f(for)h(eac)m(h)150 1724 y(target.)275 1857
y Fr(runtest)e Fv(itself)i(calls)f(only)h(t)m(w)m(o)i(of)f(these)g(pro)
s(cedures,)g Fq(to)s(ol)t Fr(_exit)e Fv(and)h Fq(to)s(ol)t
Fr(_version)p Fv(;)i(these)150 1967 y(pro)s(cedures)29
b(use)h(no)g(argumen)m(ts.)275 2100 y(The)f(other)i(t)m(w)m(o)h(pro)s
(cedures,)d Fq(to)s(ol)t Fr(_start)g Fv(and)h Fq(to)s(ol)t
Fr(_load)p Fv(,)e(are)j(only)f(called)f(b)m(y)i(the)f(test)i(suites)150
2209 y(themselv)m(es)38 b(\(or)f(b)m(y)h(testsuite-sp)s(eci\014c)f
(initialization)d(co)s(de\);)42 b(they)37 b(ma)m(y)h(tak)m(e)h(argumen)
m(ts)f(or)f(not,)150 2319 y(dep)s(ending)28 b(on)i(the)h(con)m(v)m(en)m
(tions)g(used)f(within)e(eac)m(h)j(test)g(suite.)150
2499 y Fq(to)s(ol)t Fr(_start)630 2609 y Fv(Starts)22
b(a)g(particular)e(to)s(ol.)37 b(F)-8 b(or)23 b(an)e(in)m(teractiv)m(e)
i(to)s(ol,)g Fq(to)s(ol)t Fr(_start)d Fv(starts)i(and)f(initializes)630
2718 y(the)28 b(to)s(ol,)h(lea)m(ving)f(the)g(to)s(ol)g(up)f(and)h
(running)d(for)j(the)g(test)h(cases;)h(an)e(example)g(is)f
Fr(gdb_)630 2828 y(start)p Fv(,)41 b(the)f(start)h(function)d(for)i
Fo(gdb)p Fv(.)69 b(F)-8 b(or)40 b(a)g(batc)m(h)h(orien)m(ted)f(to)s
(ol,)i Fq(to)s(ol)t Fr(_start)c Fv(is)630 2937 y(optional;)26
b(the)e(recommended)g(con)m(v)m(en)m(tion)h(is)e(to)i(let)f
Fq(to)s(ol)t Fr(_start)f Fv(run)f(the)j(to)s(ol,)g(lea)m(ving)630
3047 y(the)41 b(output)f(in)g(a)h(v)-5 b(ariable)40 b(called)g
Fr(comp_output)p Fv(.)69 b(T)-8 b(est)41 b(scripts)f(can)h(then)g
(analyze)630 3156 y(`)p Fr($comp_output)p Fv(')29 b(to)k(determine)e
(the)h(test)g(results.)44 b(An)32 b(example)f(of)h(this)f(second)h
(kind)630 3266 y(of)f(start)f(function)g(is)f Fr(gcc_start)p
Fv(,)f(the)j(start)g(function)e(for)h Fo(gcc)p Fv(.)630
3399 y Fr(runtest)18 b Fv(itself)h Fn(do)-5 b(es)25 b(not)f(c)-5
b(al)5 b(l)30 b Fq(to)s(ol)t Fr(_start)p Fv(.)36 b(The)19
b(initialization)e(mo)s(dule)i(`)p Fq(to)s(ol)t Fr(_init.exp)p
Fv(')630 3509 y(m)m(ust)35 b(call)f Fq(to)s(ol)t Fr(_start)f
Fv(for)i(in)m(teractiv)m(e)h(to)s(ols;)h(for)e(batc)m(h-orien)m(ted)h
(to)s(ols,)g(eac)m(h)g(indi-)630 3618 y(vidual)i(test)k(script)d(calls)
h Fq(to)s(ol)t Fr(_start)e Fv(\(or)j(mak)m(es)g(other)g(arrangemen)m
(ts)g(to)h(run)d(the)630 3728 y(to)s(ol\).)150 3908 y
Fq(to)s(ol)t Fr(_load)82 b Fv(Loads)25 b(something)f(in)m(to)h(a)g(to)s
(ol.)39 b(F)-8 b(or)26 b(an)e(in)m(teractiv)m(e)i(to)s(ol,)g(this)e
(conditions)f(the)i(to)s(ol)g(for)630 4017 y(a)35 b(particular)e(test)i
(case;)j(for)d(example,)g Fr(gdb_load)e Fv(loads)h(a)h(new)f
(executable)h(\014le)f(in)m(to)630 4127 y(the)24 b(debugger.)39
b(F)-8 b(or)24 b(batc)m(h)h(orien)m(ted)f(to)s(ols,)h
Fq(to)s(ol)t Fr(_load)d Fv(ma)m(y)j(do)f(nothing|though,)g(for)630
4237 y(example,)h(the)f Fo(gcc)g Fv(supp)s(ort)e(uses)h
Fr(gcc_load)f Fv(to)j(load)e(and)h(run)e(a)i(binary)e(on)i(the)g
(target)630 4346 y(en)m(vironmen)m(t.)61 b(Con)m(v)m(en)m(tionally)-8
b(,)39 b Fq(to)s(ol)t Fr(_load)d Fv(lea)m(v)m(es)j(the)e(output)g(of)h
(an)m(y)f(program)g(it)630 4456 y(runs)f(in)h(a)h(v)-5
b(ariable)36 b(called)h(`)p Fr(exec_output)p Fv('.)61
b(W)-8 b(riting)37 b Fq(to)s(ol)t Fr(_load)e Fv(can)k(b)s(e)e(the)h
(most)630 4565 y(complex)27 b(part)g(of)g(extending)g(DejaGn)m(u)h(to)f
(a)h(new)f(to)s(ol)g(or)g(a)g(new)g(target,)j(if)c(it)g(requires)630
4675 y(m)m(uc)m(h)k(comm)m(unication)g(co)s(ding)g(or)g(\014le)f(do)m
(wnloading.)630 4808 y(T)-8 b(est)31 b(scripts)e(call)h
Fq(to)s(ol)t Fr(_load)p Fv(.)150 4988 y Fq(to)s(ol)t
Fr(_exit)82 b Fv(Cleans)33 b(up)g(\(if)h(necessary\))h(b)s(efore)f
Fr(runtest)e Fv(exits.)52 b(F)-8 b(or)35 b(in)m(teractiv)m(e)g(to)s
(ols,)g(this)e(usu-)630 5097 y(ally)38 b(ends)f(the)i(in)m(teractiv)m
(e)h(session.)65 b(Y)-8 b(ou)39 b(can)g(also)g(use)f
Fq(to)s(ol)t Fr(_exit)f Fv(to)i(remo)m(v)m(e)i(an)m(y)630
5207 y(temp)s(orary)30 b(\014les)f(left)h(o)m(v)m(er)i(from)e(the)h
(tests.)630 5340 y Fr(runtest)d Fv(calls)i Fq(to)s(ol)t
Fr(_exit)p Fv(.)p eop
%%Page: 32 34
32 33 bop 150 -116 a Fv(32)2364 b(DejaGn)m(u)32 b(T)-8
b(esting)30 b(F)-8 b(ramew)m(ork)150 83 y Fq(to)s(ol)t
Fr(_version)630 193 y Fv(Prin)m(ts)36 b(the)i(v)m(ersion)e(lab)s(el)g
(and)h(n)m(um)m(b)s(er)f(for)h Fq(to)s(ol)p Fv(.)61 b(This)36
b(is)g(called)g(b)m(y)i(the)f(DejaGn)m(u)630 302 y(pro)s(cedure)31
b(that)i(prin)m(ts)e(the)i(\014nal)e(summary)h(rep)s(ort.)46
b(The)32 b(output)g(should)f(consist)h(of)630 412 y(the)f(full)d(path)i
(name)g(used)g(for)g(the)g(tested)i(to)s(ol,)e(and)g(its)g(v)m(ersion)g
(n)m(um)m(b)s(er.)630 546 y Fr(runtest)e Fv(calls)i Fq(to)s(ol)t
Fr(_version)p Fv(.)275 706 y(The)h(usual)g(con)m(v)m(en)m(tion)i(for)f
(return)f(co)s(des)h(from)g(an)m(y)g(of)h(these)f(pro)s(cedures)f
(\(although)h(it)g(is)f(not)150 815 y(required)25 b(b)m(y)i
Fr(runtest)p Fv(\))f(is)g(to)h(return)f Fr(0)h Fv(if)f(the)h(pro)s
(cedure)f(succeeded,)i Fr(1)f Fv(if)f(it)g(failed,)h(and)f
Fr(-1)h Fv(if)f(there)150 925 y(w)m(as)31 b(a)g(comm)m(unication)e
(error.)150 1182 y Fu(5.5)68 b(Remote)47 b(targets)f(supp)t(orted)275
1375 y Fv(The)35 b(DejaGn)m(u)j(distribution)33 b(includes)h(supp)s
(ort)g(for)i(the)h(follo)m(wing)e(remote)i(targets.)61
b(Y)-8 b(ou)37 b(can)150 1484 y(set)f(the)f(target)h(name)f(and)g(the)g
(connect)h(mo)s(de)f(in)e(the)j(`)p Fr(site.exp)p Fv(')d(\014le)h
(\(using)g(the)h(Tcl)f(v)-5 b(ariables)150 1594 y(`)p
Fr(targetname)p Fv(')37 b(and)h(`)p Fr(connectmode)p
Fv(',)h(resp)s(ectiv)m(ely\),)i(or)e(on)g(the)g Fr(runtest)e
Fv(command)i(line)e(\(using)150 1704 y(`)p Fr(--name)p
Fv(')29 b(and)h(`)p Fr(--connect)p Fv('\).)150 1863 y
Fo(amd)g Fh(29000,)j(with)d(UDI)g(proto)s(col)630 1973
y Fv(Con\014gure)e(DejaGn)m(u)h(for)g(target)h(`)p Fr(a29k-amd-udi)p
Fv('.)37 b(\(Cygn)m(us)29 b Fr(configure)d Fv(also)i(recog-)630
2082 y(nizes)36 b(the)g(abbreviation)f(`)p Fr(udi29k)p
Fv('.\))58 b(Then,)37 b(to)g(run)e(tests,)k(use)d(the)g
Fr(runtest)e Fv(target)630 2192 y(name)29 b(to)g(sp)s(ecify)e(whether)h
(y)m(ou)h(w)m(an)m(t)h(to)f(use)g(a)g(sim)m(ulator,)f(or)g(a)h
(particular)e(hardw)m(are)630 2301 y(b)s(oard.)67 b(The)38
b(particular)g(string)g(to)i(use)g(with)e(`)p Fr(--name)p
Fv(')g(will)e(dep)s(end)i(on)h(y)m(our)h(UDI)630 2411
y(setup)d(\014le,)j(`)p Fr(udi_soc)p Fv(')c(\(if)h(`)p
Fr(udi_soc)p Fv(')f(is)h(not)i(in)d(y)m(our)i(w)m(orking)f(directory)-8
b(,)40 b(the)e(en)m(vi-)630 2521 y(ronmen)m(t)31 b(v)-5
b(ariable)29 b(`)p Fr(UDICONF)p Fv(')g(should)g(con)m(tain)h(a)h(path)g
(to)g(this)e(\014le\).)41 b(F)-8 b(or)31 b(example,)g(if)630
2630 y(y)m(our)f(UDI)h(setup)f(\014le)f(includes)f(these)j(lines:)150
2734 y Fm(\013)p 200 2734 3554 4 v 3553 w(\010)p 150
3043 4 262 v 178 2894 a Fr(iss)143 b(AF_UNIX)93 b(*)143
b(isstip)46 b(-r)h(/home/gnu/29k/src/osboot/)o(sim/)o(osbo)o(ot)178
2998 y(mon)143 b(AF_UNIX)93 b(*)143 b(montip)46 b(-t)h(serial)f(-baud)h
(9600)f(-com)h(/dev/ttyb)p 3803 3043 V 150 3095 a Fm(\012)p
200 3095 3554 4 v 3553 w(\011)630 3265 y Fv(Y)-8 b(ou)37
b(can)f(use)g(`)p Fr(--name)28 b(iss)p Fv(')36 b(to)h(run)d(tests)j(on)
f(the)g(sim)m(ulator,)h(and)e(`)p Fr(--name)29 b(mon)p
Fv(')35 b(to)630 3375 y(run)e(tests)j(on)f(the)g(29K)g(hardw)m(are.)54
b(See)35 b(the)g(man)m(ufacturer's)g(man)m(uals)f(for)h(more)g(in-)630
3484 y(formation)30 b(on)g(UDI)h(and)f(`)p Fr(udi_soc)p
Fv('.)630 3619 y(The)k(default)g(connect)i(proto)s(col)e(is)g(`)p
Fr(mondfe)p Fv(')g(with)f(either)h(bac)m(k)i(end.)53
b Fr(mondfe)33 b Fv(is)h(the)630 3728 y(only)21 b(shell)f(DejaGn)m(u)j
(supp)s(orts)d(for)h(UDI)i(targets.)39 b Fr(mondfe)20
b Fv(is)h(an)h Fo(amd)f Fv(sp)s(eci\014c)g(monitor)630
3838 y(program)30 b(freely)g(a)m(v)-5 b(ailable)30 b(from)g
Fo(amd)p Fv(.)630 3972 y Fn(Warning:)49 b Fv(This)30
b(target)j(requires)d Fo(gdb)i Fv(v)m(ersion)f(4.7.2)i(\(or)f
(greater\).)47 b(Earlier)30 b(v)m(ersions)630 4082 y(of)e
Fo(gdb)g Fv(do)h(not)f(fully)e(supp)s(ort)h(the)h Fr(load)f
Fv(command)i(on)f(this)f(target,)j(so)f(DejaGn)m(u)g(has)630
4192 y(no)h(w)m(a)m(y)i(to)f(load)f(executable)h(\014les)e(from)h(the)g
(debugger.)150 4351 y Fh(Motorola)j(680x0)f(b)s(oards,)d(a.out)j(or)e
Fo(coff)f Fh(ob)5 b(ject)32 b(format)630 4461 y Fv(Con\014gure)d
(DejaGn)m(u)j(for)e(an)m(y)g(remote)i(target)g(matc)m(hing)e(`)p
Fr(m68k-*)p Fv('.)630 4595 y Fn(Warning:)70 b Fv(Most)43
b(`)p Fr(m68k-*)p Fv(')d(con\014gurations)i(run)e(all)h(tests)i(only)f
(for)f(nativ)m(e)i(testing)630 4705 y(\(when)c(the)g(target)i(is)e(the)
g(same)h(as)g(the)f(host\).)68 b(When)39 b(y)m(ou)h(sp)s(ecify)e(most)i
(of)f(these)630 4814 y(targets)i(for)e(a)h(cross)f(con\014guration,)i
(y)m(ou)f(will)d(only)h(b)s(e)h(able)g(to)h(use)f(tests)h(that)g(run)
630 4924 y(completely)25 b(within)e(the)j(host)g(\(for)g(example,)g
(tests)h(of)f(the)g(binary)d(utilities)g(suc)m(h)j(as)g(the)630
5033 y(arc)m(hiv)m(er;)31 b(or)f(compiler)f(tests)i(that)g(only)f
(generate)i(co)s(de)e(rather)g(than)g(running)e(it\).)630
5168 y(T)-8 b(o)27 b(run)e(a.out)j(or)f Fo(coff)e Fv(binaries)g(on)h(a)
i(remote)f(M68K,)h(y)m(ou)f(m)m(ust)g(con\014gure)f(DejaGn)m(u)630
5277 y(for)37 b(a)g(particular)e(target)k(b)s(oard.)59
b(`)p Fr(m68k-abug)p Fv(')35 b(is)h(an)h(example.)60
b(\(In)36 b(general)h(for)g(an)p eop
%%Page: 33 35
33 34 bop 150 -116 a Fv(Chapter)30 b(5:)41 b(The)30 b(DejaGn)m(u)h
(Implemen)m(tation)1847 b(33)630 83 y(em)m(b)s(edded)35
b(en)m(vironmen)m(t,)i(b)s(ecause)g(it)e(do)s(es)h(not)g(ha)m(v)m(e)i
(absolute)e(addresses,)h(a.out)g(is)630 193 y(not)25
b(a)g(go)s(o)s(d)g(c)m(hoice)h(for)f(output)f(format)h(in)f(an)m(y)h
(case;)j(most)e(often)f(S-records)f(or)h(Hex-32)630 302
y(are)31 b(used)e(instead.\))150 462 y Fh(Motorola)k(68K)e(MVME)g(135)g
(b)s(oard)f(running)f(ABug)g(b)s(o)s(ot)h(monitor)630
571 y Fv(Con\014gure)g(for)h(`)p Fr(m68k-abug-aout)p
Fv(')c(or)k(`)p Fr(m68k-abug-coff)p Fv(')d(\(as)j(a)h(target\).)44
b(This)29 b(b)s(o)s(ot)630 681 y(monitor)42 b(can)i(only)e(do)m(wnload)
h(S-records;)49 b(therefore,)e(the)c(DejaGn)m(u)h(tests)g(for)f(this)
630 790 y(en)m(vironmen)m(t)34 b(require)f(a)i(link)m(er)e(command)i
(script)e(to)i(con)m(v)m(ert)h(either)e(output)h(format)630
900 y(to)c(S-records,)f(setting)h(the)f(default)g(addresses)g(for)g
Fr(.text)p Fv(,)f Fr(.bss)p Fv(,)g(and)h Fr(.data)p Fv(.)630
1034 y(With)i(this)f(con\014guration,)i(the)f(default)g(for)g(`)p
Fr(--connect)p Fv(')e(is)i(`)p Fr(tip)p Fv('.)46 b(`)p
Fr(tip)p Fv(')32 b(is)f(the)i(only)630 1144 y(comm)m(unications)38
b(proto)s(col)g(supp)s(orted)f(for)h(connecting)h(to)g(`)p
Fr(m68k-abug-*)p Fv(')d(targets.)630 1254 y(`)p Fr(tip)p
Fv(')28 b(uses)h(an)f Fo(asci)r(i)h Fv(do)m(wnloader)f(\(the)h
Fr(~put)e Fv(command\))i(to)h(load)e(S-records)g(in)m(to)h(the)630
1363 y(target)39 b(b)s(oard.)59 b(The)37 b(`)p Fr(--name)p
Fv(')e(string)h(m)m(ust)h(b)s(e)f(a)i(mac)m(hine)e(name)i(that)f
Fr(tip)f Fv(under-)630 1473 y(stands)g(\(for)h(example,)i(on)e(some)g
Fr(tip)f Fv(implemen)m(tations)f(it)i(m)m(ust)f(b)s(e)h(an)f(en)m(try)h
(from)630 1582 y(the)31 b(initialization)c(\014le)i(for)h
Fr(tip)p Fv(;)g(this)f(\014le)h(is)f(sometimes)i(called)e(`)p
Fr(/etc/remote)p Fv('\).)630 1717 y(See)d(y)m(our)g(system)g(do)s
(cumen)m(tation)g(for)g(information)f(on)g(ho)m(w)h(to)h(create)h(new)d
(en)m(tries)h(in)630 1826 y(`)p Fr(/etc/remote)p Fv('.)50
b(\(Some)35 b Fo(unix)f Fv(systems)h(are)g(distributed)c(with)i(at)i
(least)g(one)g(default)630 1936 y(en)m(try)29 b(with)f(a)h(name)g
(resem)m(bling)e(`)p Fr(hardwire)p Fv(';)h(if)f(y)m(our)i(system)g(has)
g(one,)g(y)m(ou)g(can)g(edit)630 2046 y(it,)44 b(or)d(mak)m(e)h(a)g(mo)
s(di\014ed)d(cop)m(y)j(with)e(a)i(new)f(name.\))74 b(When)41
b(y)m(ou)g(ha)m(v)m(e)i(a)f(w)m(orking)630 2155 y(`)p
Fr(/etc/remote)p Fv(')30 b(en)m(try)j Fq(abugtarget)p
Fv(,)h(y)m(ou)f(should)e(b)s(e)g(able)h(to)i(t)m(yp)s(e)e(`)p
Fr(tip)e Fq(abugtarget)r Fv(',)630 2265 y(and)24 b(get)h(the)g(prompt)f
(`)p Fr(135ABUG>)p Fv(')e(from)i(the)h(b)s(oard.)38 b(Use)25
b(the)f(same)h Fq(abugtarget)j Fv(string)630 2374 y(with)h(`)p
Fr(runtest)g(--name)p Fv('.)150 2534 y Fh(Motorola)k(IDP)d(b)s(oard)f
(running)g(the)i(rom68k)g(b)s(o)s(ot)g(monitor)630 2643
y Fv(This)36 b(is)g(the)i(same)g(in)e(functionalit)m(y)g(as)h(the)h
(MVME)g(b)s(oard)e(running)f(the)j Fr(BUG)e Fv(b)s(o)s(ot)630
2753 y(monitor.)k(Only)29 b(the)h(monitor)g(commands)g(and)g(the)g
(addresses)g(are)h(di\013eren)m(t.)150 2912 y Fh(VxW)-8
b(orks)31 b(\(Motorola)i(68K)e(or)g(In)m(tel)g(960\))630
3022 y Fv(Con\014gure)k(DejaGn)m(u)h(for)g(either)f(`)p
Fr(m68k-wrs-vxworks)p Fv(')d(\(abbreviated)k(`)p Fr(vxworks68)p
Fv('\))630 3132 y(or)21 b(`)p Fr(i960-wrs-vxworks)p Fv(')c
(\(abbreviated)k(`)p Fr(vxworks960)p Fv('\).)35 b(Since)20
b(b)s(oth)g(targets)j(supp)s(ort)630 3241 y(IP)42 b(addressing,)i(sp)s
(ecify)d(the)i(net)m(w)m(ork)h(address)d(\(for)i(example,)i(a)e(host)g
(name)f(from)630 3351 y(`)p Fr(/etc/hosts)p Fv('\))28
b(with)i(`)p Fr(--name)p Fv('.)630 3485 y(The)35 b(default)g(connect)h
(proto)s(col)f(is)g(`)p Fr(rlogin)p Fv(',)h(but)e(y)m(ou)i(can)g(use)f
(an)m(y)h(of)f(`)p Fr(--connect)630 3595 y(rlogin)p Fv(',)29
b(`)p Fr(--connect)f(telnet)p Fv(',)h(or)i(`)p Fr(--connect)d(rsh)p
Fv('.)630 3729 y(T)-8 b(est)42 b(scripts)f(need)g(no)g(sp)s(ecial)g(co)
s(de)g(to)i(load)e(programs)g(in)m(to)h(these)g(targets;)49
b(since)630 3839 y(VxW)-8 b(orks)42 b(supp)s(orts)d(NFS,)j(all)e(y)m
(ou)h(m)m(ust)h(do)f(is)f(ensure)g(test)i(programs)f(are)h(on)f(an)630
3949 y(exp)s(orted)30 b(\014lesystem.)630 4083 y(When)j(y)m(ou)g
(compile)f(for)h(VxW)-8 b(orks,)35 b(use)d(the)i(link)m(er)d(`)p
Fr(-r)p Fv(')i(option)g(to)g(mak)m(e)h(the)g(link)m(er)630
4193 y(output)25 b(relo)s(catable|at)g(least)h(if)e(y)m(ou)h(w)m(an)m
(t)h(to)g(use)f(library)d(routines.)38 b(Man)m(y)26 b(standard)630
4302 y(C)34 b(routines)f(are)i(included)d(in)h(VxW)-8
b(orks;)37 b(often)e(no)f(additional)f(libraries)e(are)k(needed.)630
4412 y(See)c(y)m(our)f(VxW)-8 b(orks)31 b(system)g(do)s(cumen)m(tation)
f(for)g(additional)e(details.)p eop
%%Page: 34 36
34 35 bop 150 -116 a Fv(34)2364 b(DejaGn)m(u)32 b(T)-8
b(esting)30 b(F)-8 b(ramew)m(ork)150 83 y Fu(5.6)68 b(The)45
b(\014les)g(DejaGn)l(u)g(reads)275 276 y Fv(The)28 b
Fr(runtest)g Fv(program)h(used)f(to)i(in)m(v)m(ok)m(e)h(DejaGn)m(u)f
(is)e(a)i(short)f(shell)e(script)i(generated)h(b)m(y)f
Fr(make)150 385 y Fv(during)h(the)i(con\014guration)f(pro)s(cess.)45
b(Its)32 b(main)e(task)j(is)e(to)h(read)g(the)g(main)f(test)i(framew)m
(ork)f(driv)m(er,)150 495 y(`)p Fr(runtest.exp)p Fv('.)275
629 y(`)p Fr(runtest.exp)p Fv(',)c(in)h(turn,)g(reads)h
Fr(expect)f Fv(co)s(de)i(from)e(certain)i(other)f(\014les,)g(in)f(this)
g(order:)199 764 y(1.)61 b(Eac)m(h)31 b(of)f(the)g(`)p
Fr(site.exp)p Fv(')f(lo)s(cal)g(de\014nition)f(\014les)h(a)m(v)-5
b(ailable.)40 b(See)31 b(Chapter)e(4)i([Setting)f Fr(runtest)330
873 y Fv(defaults],)g(page)h(15,)h(for)e(details.)199
1008 y(2.)61 b(`)p Fr(lib/utils.exp)p Fv(',)23 b(a)i(collection)f(of)h
(utilit)m(y)d(pro)s(cedures.)38 b(See)25 b(Section)f(5.3)i([DejaGn)m(u)
f(Builtins],)330 1117 y(page)31 b(23,)h(for)e(descriptions)e(of)j
(these)f(pro)s(cedures.)199 1252 y(3.)61 b(`)p Fr(lib/framework.exp)p
Fv(',)37 b(a)j(\014le)e(of)h(subroutines)e(mean)m(t)j(for)f
Fr(runtest)e Fv(itself)g(rather)i(than)g(for)330 1362
y(general-purp)s(ose)29 b(use)h(in)f(b)s(oth)h Fr(runtest)e
Fv(and)i(test)h(suites.)199 1496 y(4.)61 b(`)p Fr(debugger.exp)p
Fv(',)45 b(Don)g(Lib)s(es')e(Tcl)g(Debugger.)84 b(\(See)45
b Fq(A)f(Debugger)h(for)f(Tcl)g(Applications)330 1606
y Fv(b)m(y)38 b(Don)h(Lib)s(es.)63 b(This)37 b(pap)s(er)g(is)g
(distributed)f(with)h Fr(expect)g Fv(in)g(P)m(ostScript)h(form)g(as)g
(the)h(\014le)330 1715 y(`)p Fr(expect/tcl-debug.ps)p
Fv('.\))199 1850 y(5.)61 b(`)p Fr(lib/remote.exp)p Fv(',)20
b(a)h(collection)f(of)h(subroutines)e(mean)m(t)i(for)g(connecting)g(to)
g(remote)h(mac)m(hines.)199 1984 y(6.)61 b(`)p Fr(lib/target.exp)p
Fv(',)41 b(a)g(collection)g(of)g(subroutines)e(used)h(for)h(the)g
(con\014guration)f(systems)h(in)330 2094 y(DejaGn)m(u.)h(These)30
b(pro)s(cedures)f(t)m(ypically)g(manipulate)g(or)h(utilize)f(the)h
(con\014guration)g(system.)199 2228 y(7.)61 b(An)34 b(initialization)e
(\014le)i Fq(to)s(ol)t Fr(_init.exp)p Fv(.)50 b(See)35
b(Section)g(5.2)g([Initialization)e(mo)s(dule],)h(page)i(22,)330
2338 y(for)30 b(more)h(discussion)c(of)k(init)e(\014les.)p
eop
%%Page: 35 37
35 36 bop 150 -116 a Fv(Chapter)30 b(5:)41 b(The)30 b(DejaGn)m(u)h
(Implemen)m(tation)1847 b(35)150 83 y Fu(5.7)68 b(The)45
b(\014les)g(DejaGn)l(u)g(writes)275 276 y Fr(runtest)31
b Fv(alw)m(a)m(ys)j(writes)e(t)m(w)m(o)j(kinds)c(of)i(output)g
(\014les:)46 b(summary)32 b(logs)h(and)g(detailed)f(logs.)49
b(The)150 385 y(con)m(ten)m(ts)32 b(of)f(b)s(oth)e(of)i(these)g(are)f
(determined)f(b)m(y)i(y)m(our)f(tests.)275 520 y(F)-8
b(or)37 b(troublesho)s(oting,)g(a)g(third)e(kind)g(of)i(output)g
(\014le)f(is)g(useful:)52 b(use)36 b(`)p Fr(--debug)p
Fv(')g(to)h(request)g(an)150 629 y(output)30 b(\014le)f(sho)m(wing)h
(details)f(of)i(what)f Fr(expect)f Fv(is)g(doing)h(in)m(ternally)-8
b(.)150 853 y Fi(5.7.1)63 b(Summary)39 b(log)275 1046
y Fr(runtest)33 b Fv(alw)m(a)m(ys)j(pro)s(duces)e(a)i(summary)f(output)
g(\014le)g(`)p Fq(to)s(ol)p Fr(.sum)p Fv('.)55 b(This)34
b(summary)g(sho)m(ws)i(the)150 1156 y(names)f(of)g(all)f(test)i
(\014les)e(run;)i(for)f(eac)m(h)h(test)g(\014le,)g(one)f(line)f(of)h
(output)f(from)h(eac)m(h)h Fr(pass)e Fv(command)150 1265
y(\(sho)m(wing)39 b(status)g(`)p Fr(PASS)p Fv(')g(or)g(`)p
Fr(XPASS)p Fv('\))f(or)h Fr(fail)f Fv(command)h(\(status)h(`)p
Fr(FAIL)p Fv(')f(or)g(`)p Fr(XFAIL)p Fv('\);)k(trailing)150
1375 y(summary)26 b(statistics)g(that)h(coun)m(t)h(passing)d(and)h
(failing)f(tests)i(\(exp)s(ected)h(and)e(unexp)s(ected\);)i(and)e(the)
150 1484 y(full)e(pathname)i(and)f(v)m(ersion)h(n)m(um)m(b)s(er)f(of)h
(the)g(to)s(ol)g(tested.)41 b(\(All)25 b(p)s(ossible)e(outcomes,)29
b(and)c(all)g(errors,)150 1594 y(are)36 b(alw)m(a)m(ys)g(re\015ected)g
(in)f(the)h(summary)e(output)h(\014le,)i(regardless)e(of)h(whether)f
(or)g(not)h(y)m(ou)g(sp)s(ecify)150 1704 y(`)p Fr(--all)p
Fv('.\))275 1838 y(If)k(an)m(y)g(of)h(y)m(our)f(tests)i(use)e(the)g
(pro)s(cedures)g Fr(unresolved)p Fv(,)g Fr(unsupported)p
Fv(,)g(or)h Fr(untested)p Fv(,)g(the)150 1948 y(summary)29
b(output)h(also)h(tabulates)f(the)h(corresp)s(onding)d(outcomes.)275
2082 y(F)-8 b(or)21 b(example,)h(after)f(`)p Fr(runtest)28
b(--tool)h(binutils)p Fv(',)20 b(lo)s(ok)g(for)g(a)h(summary)e(log)h
(in)f(`)p Fr(binutils.sum)p Fv('.)150 2192 y(Normally)-8
b(,)39 b Fr(runtest)d Fv(writes)h(this)g(\014le)g(in)f(y)m(our)i
(curren)m(t)g(w)m(orking)f(directory;)k(use)d(the)g(`)p
Fr(--outdir)p Fv(')150 2301 y(option)30 b(to)h(select)g(a)g(di\013eren)
m(t)f(directory)-8 b(.)150 2416 y(Here)31 b(is)e(a)i(short)f(sample)g
(summary)f(log:)150 2495 y Fm(\013)p 200 2495 3554 4
v 3553 w(\010)p 150 4457 4 1915 v 178 2648 a Fr(Test)47
b(Run)g(By)g(rob)g(on)g(Mon)g(May)g(25)g(21:40:57)f(PDT)g(1992)942
2752 y(===)h(gdb)g(tests)f(===)178 2856 y(Running)g(./gdb.t00/echo.exp)
d(...)178 2959 y(PASS:)142 b(Echo)47 b(test)178 3063
y(Running)f(./gdb.all/help.exp)d(...)178 3167 y(PASS:)142
b(help)47 b(add-symbol-file)178 3271 y(PASS:)142 b(help)47
b(aliases)178 3374 y(PASS:)142 b(help)47 b(breakpoint)e("bre")h
(abbreviation)178 3478 y(FAIL:)142 b(help)47 b(run)g("r")f
(abbreviation)178 3582 y(Running)g(./gdb.t10/crossload.exp)41
b(...)178 3686 y(PASS:)142 b(m68k-elf)46 b(\(elf-big\))f(explicit)g
(format;)h(loaded)178 3790 y(XFAIL:)94 b(mips-ecoff)45
b(\(ecoff-bigmips\))f("ptype)i(v_signed_char")e(signed)178
3893 y(C)k(types)942 3997 y(===)f(gdb)g(Summary)e(===)178
4101 y(#)j(of)f(expected)e(passes)h(5)178 4205 y(#)i(of)f(expected)e
(failures)h(1)178 4308 y(#)i(of)f(unexpected)e(failures)g(1)178
4412 y(/usr/latest/bin/gdb)e(version)j(4.6.5)g(-q)p 3803
4457 V 150 4509 a Fm(\012)p 200 4509 3554 4 v 3553 w(\011)p
eop
%%Page: 36 38
36 37 bop 150 -116 a Fv(36)2364 b(DejaGn)m(u)32 b(T)-8
b(esting)30 b(F)-8 b(ramew)m(ork)150 83 y Fi(5.7.2)63
b(Detailed)40 b(log)275 270 y Fr(runtest)28 b Fv(also)h(sa)m(v)m(es)j
(a)e(detailed)f(log)h(\014le)g(`)p Fq(to)s(ol)p Fr(.log)p
Fv(',)f(sho)m(wing)g(an)m(y)i(output)e(generated)i(b)m(y)f(tests)150
380 y(as)g(w)m(ell)f(as)h(the)g(summary)f(output.)40
b(F)-8 b(or)31 b(example,)f(after)h(`)p Fr(runtest)d(--tool)h(binutils)
p Fv(',)f(lo)s(ok)i(for)g(a)150 489 y(detailed)f(log)i(in)e(`)p
Fr(binutils.log)p Fv('.)37 b(Normally)-8 b(,)30 b Fr(runtest)f
Fv(writes)g(this)g(\014le)g(in)g(y)m(our)i(curren)m(t)f(w)m(orking)150
599 y(directory;)g(use)g(the)h(`)p Fr(--outdir)p Fv(')d(option)i(to)h
(select)g(a)g(di\013eren)m(t)f(directory)-8 b(.)150 708
y(Here)31 b(is)e(a)i(brief)e(example)h(sho)m(wing)f(a)i(detailed)f(log)
g(for)g Fo(g)p Fr(++)g Fv(tests:)150 787 y Fm(\013)p
200 787 3554 4 v 3553 w(\010)p 150 4306 4 3472 v 178
940 a Fr(Test)47 b(Run)g(By)g(rob)g(on)g(Mon)g(May)g(25)g(21:40:43)f
(PDT)g(1992)942 1148 y(===)h(g++)g(tests)f(===)178 1355
y(---)h(Running)f(./g++.other/t01-1.exp)c(---)560 1459
y(PASS:)142 b(operate)46 b(delete)178 1667 y(---)h(Running)f
(./g++.other/t01-2.exp)c(---)560 1770 y(FAIL:)142 b(i960)46
b(bug)h(EOF)178 1874 y(p0000646.C:)e(In)i(function)f(`int)94
b(warn_return_1)44 b(\(\)':)178 1978 y(p0000646.C:109:)g(warning:)h
(control)h(reaches)g(end)h(of)g(non-void)f(function)178
2082 y(p0000646.C:)f(In)i(function)f(`int)94 b(warn_return_arg)44
b(\(int\)':)178 2186 y(p0000646.C:117:)g(warning:)h(control)h(reaches)g
(end)h(of)g(non-void)f(function)178 2289 y(p0000646.C:)f(In)i(function)
f(`int)94 b(warn_return_sum)44 b(\(int,)i(int\)':)178
2393 y(p0000646.C:125:)e(warning:)h(control)h(reaches)g(end)h(of)g
(non-void)f(function)178 2497 y(p0000646.C:)f(In)i(function)f(`struct)f
(foo)i(warn_return_foo)d(\(\)':)178 2601 y(p0000646.C:132:)g(warning:)h
(control)h(reaches)g(end)h(of)g(non-void)f(function)178
2808 y(---)h(Running)f(./g++.other/t01-4.exp)c(---)560
2912 y(FAIL:)142 b(abort)178 3016 y(900403_04.C:8:)44
b(zero)j(width)f(for)h(bit-field)e(`foo')178 3120 y(---)i(Running)f
(./g++.other/t01-3.exp)c(---)560 3223 y(FAIL:)142 b(segment)46
b(violation)178 3327 y(900519_12.C:9:)e(parse)i(error)h(before)f(`;')
178 3431 y(900519_12.C:12:)e(Segmentation)g(violation)178
3535 y(/usr/latest/bin/gcc:)e(Internal)k(compiler)g(error:)g(program)f
(cc1plus)h(got)178 3638 y(fatal)h(signal)942 3846 y(===)g(g++)g
(Summary)e(===)178 4054 y(#)j(of)f(expected)e(passes)h(1)178
4157 y(#)i(of)f(expected)e(failures)h(3)178 4261 y(/usr/ps/bin/g++)e
(version)i(cygnus-2.0.1)p 3803 4306 V 150 4358 a Fm(\012)p
200 4358 3554 4 v 3553 w(\011)150 4566 y Fi(5.7.3)63
b(Logging)42 b Fg(expect)g Fi(in)m(ternal)e(actions)275
4753 y Fv(With)32 b(the)h(`)p Fr(--debug)p Fv(')e(option,)i(y)m(ou)h
(can)f(request)g(a)g(log)g(\014le)f(sho)m(wing)g(the)h(output)f(from)h
Fr(expect)150 4863 y Fv(itself,)k(running)d(in)h(debugging)g(mo)s(de.)
59 b(This)34 b(\014le)i(\(`)p Fr(dbg.log)p Fv(',)h(in)e(the)i
(directory)f(where)g(y)m(ou)g(start)150 4972 y Fr(runtest)p
Fv(\))29 b(sho)m(ws)h(eac)m(h)h(pattern)g Fr(expect)e
Fv(considers)g(in)g(analyzing)g(test)j(output.)275 5101
y(This)26 b(\014le)h(re\015ects)h(eac)m(h)h Fr(send)e
Fv(command,)h(sho)m(wing)f(the)h(string)f(sen)m(t)h(as)g(input)e(to)j
(the)f(to)s(ol)f(under)150 5211 y(test;)32 b(and)d(eac)m(h)j
Fr(expect)d Fv(command,)h(sho)m(wing)f(eac)m(h)j(pattern)e(it)g
(compares)h(with)e(the)i(to)s(ol)f(output.)275 5340 y(The)f(log)i
(messages)g(for)f Fr(expect)f Fv(b)s(egin)g(with)g(a)i(message)g(of)g
(the)f(form)p eop
%%Page: 37 39
37 38 bop 150 -116 a Fv(Chapter)30 b(5:)41 b(The)30 b(DejaGn)m(u)h
(Implemen)m(tation)1847 b(37)390 83 y Fr(expect:)46 b(does)g({)p
Fq(to)s(ol)31 b(output)r Fr(})47 b(\(spawn_id)e Fq(n)p
Fr(\))i(match)f(pattern)390 187 y({)p Fq(exp)s(ected)31
b(pattern)p Fr(}?)150 321 y Fv(F)-8 b(or)30 b(ev)m(ery)h(unsuccessful)c
(matc)m(h,)k Fr(expect)d Fv(issues)h(a)h(`)p Fr(no)p
Fv(')f(after)h(this)f(message;)i(if)e(other)h(patterns)g(are)150
431 y(sp)s(eci\014ed)f(for)i(the)g(same)h Fr(expect)d
Fv(command,)i(they)h(are)f(re\015ected)h(also,)f(but)f(without)h(the)g
(\014rst)f(part)150 540 y(of)h(the)f(message)i(\(`)p
Fr(expect...)n(match)d(pattern)p Fv('\).)275 675 y(When)j
Fr(expect)e Fv(\014nds)h(a)i(matc)m(h,)g(the)g(log)f(for)g(the)h
(successful)e(matc)m(h)i(ends)f(with)f(`)p Fr(yes)p Fv(',)h(follo)m(w)m
(ed)150 785 y(b)m(y)g(a)h(record)g(of)f(the)h Fr(expect)e
Fv(v)-5 b(ariables)31 b(set)i(to)g(describ)s(e)e(a)i(successful)e(matc)
m(h.)48 b(Here)33 b(is)f(an)g(excerpt)150 894 y(from)e(the)g(debugging)
g(log)g(for)g(a)h Fo(gdb)f Fv(test:)150 973 y Fm(\013)p
200 973 3554 4 v 3553 w(\010)p 150 3669 4 2649 v 178
1134 a Fr(send:)47 b(sent)f({break)g(gdbme.c:34\\n})e(to)k(spawn)e(id)h
(6)178 1237 y(expect:)f(does)h({})g(\(spawn_id)e(6\))i(match)g(pattern)
e({Breakpoint.*at.*)f(file)226 1341 y(gdbme.c,)h(line)i
(34.*\\\(gdb\\\))e($}?)i(no)178 1445 y({.*\\\(gdb\\\))e($}?)i(no)178
1549 y(expect:)f(does)h({})g(\(spawn_id)e(0\))i(match)g(pattern)e
({<return>}?)g(no)178 1652 y({\\\(y)i(or)g(n\\\))g(}?)g(no)178
1756 y({buffer_full}?)d(no)178 1860 y({virtual}?)h(no)178
1964 y({memory}?)g(no)178 2068 y({exhausted}?)g(no)178
2171 y({Undefined}?)g(no)178 2275 y({command}?)g(no)178
2379 y(break)i(gdbme.c:34)178 2483 y(Breakpoint)e(8)j(at)f(0x23d8:)f
(file)g(gdbme.c,)g(line)g(34.)178 2586 y(\(gdb\))h(expect:)e(does)i
({break)f(gdbme.c:34\\r\\nBreakpoint)41 b(8)48 b(at)f(0x23d8:)178
2690 y(file)g(gdbme.c,)e(line)i(34.\\r\\n\(gdb\))d(})k(\(spawn_id)d
(6\))i(match)g(pattern)178 2794 y({Breakpoint.*at.*)c(file)k(gdbme.c,)e
(line)i(34.*\\\(gdb\\\))e($}?)i(yes)178 2898 y(expect:)f(set)h
(expect_out\(0,start\))42 b({18})178 3002 y(expect:)k(set)h
(expect_out\(0,end\))c({71})178 3105 y(expect:)j(set)h
(expect_out\(0,string\))42 b({Breakpoint)j(8)i(at)h(0x23d8:)d(file)178
3209 y(gdbme.c,)h(line)g(34.\\r\\n\(gdb\))f(})178 3313
y(expect:)h(set)h(expect_out\(spawn_id\))42 b({6})178
3417 y(expect:)k(set)h(expect_out\(buffer\))c({break)j
(gdbme.c:34\\r\\nBreakpoint)41 b(8)178 3520 y(at)47 b(0x23d8:)f(file)h
(gdbme.c,)e(line)i(34.\\r\\n\(gdb\))d(})560 3624 y(PASS:)142
b(70)286 b(0)333 b(breakpoint)45 b(line)i(number)f(in)h(file)p
3803 3669 V 150 3721 a Fm(\012)p 200 3721 3554 4 v 3553
w(\011)150 3866 y Fv(This)26 b(example)i(exhibits)f(three)h(prop)s
(erties)f(of)h Fr(expect)f Fv(and)g(DejaGn)m(u)i(that)g(migh)m(t)f(b)s
(e)g(surprising)c(at)150 3976 y(\014rst)30 b(glance:)225
4110 y Ft(\017)60 b Fv(Empt)m(y)25 b(output)f(for)h(the)g(\014rst)f
(attempted)i(matc)m(h.)40 b(The)25 b(\014rst)f(set)h(of)g(attempted)h
(matc)m(hes)h(sho)m(wn)330 4220 y(ran)34 b(against)g(the)h(output)f(`)p
Fr({})p Fv('|that)h(is,)f(no)h(output.)52 b Fr(expect)33
b Fv(b)s(egins)f(attempting)j(to)g(matc)m(h)330 4329
y(the)i(patterns)f(supplied)e(immediately;)k(often,)g(the)f(\014rst)f
(pass)g(is)g(against)h(incomplete)e(output)330 4439 y(\(or)c
(completely)f(b)s(efore)g(all)f(output,)h(as)h(in)e(this)g(case\).)225
4573 y Ft(\017)60 b Fv(In)m(tersp)s(ersed)39 b(to)s(ol)i(output.)71
b(The)40 b(b)s(eginning)d(of)k(the)g(log)g(en)m(try)f(for)h(the)f
(second)h(attempted)330 4683 y(matc)m(h)32 b(ma)m(y)g(b)s(e)e(hard)h
(to)h(sp)s(ot:)42 b(this)30 b(is)g(b)s(ecause)h(the)h(prompt)e(`)p
Fr(\(gdb\))f Fv(')j(app)s(ears)e(on)h(the)h(same)330
4793 y(line,)d(just)h(b)s(efore)g(the)g(`)p Fr(expect:)p
Fv(')f(that)i(marks)f(the)h(b)s(eginning)c(of)k(the)f(log)h(en)m(try)-8
b(.)225 4927 y Ft(\017)60 b Fv(F)-8 b(ail-safe)32 b(patterns.)43
b(Man)m(y)32 b(of)f(the)h(patterns)f(tested)h(are)f(fail-safe)g
(patterns)g(pro)m(vided)f(b)m(y)h Fo(gdb)330 5037 y Fv(testing)43
b(utilities,)h(to)f(reduce)g(p)s(ossible)e(indeterminacy)-8
b(.)77 b(It)43 b(is)f(useful)f(to)j(an)m(ticipate)f(p)s(oten-)330
5146 y(tial)g(v)-5 b(ariations)44 b(caused)g(b)m(y)g(extreme)h(system)f
(conditions)f(\()p Fo(gdb)h Fv(migh)m(t)g(issue)e(the)j(message)p
eop
%%Page: 38 40
38 39 bop 150 -116 a Fv(38)2364 b(DejaGn)m(u)32 b(T)-8
b(esting)30 b(F)-8 b(ramew)m(ork)330 83 y(`)p Fr(virtual)29
b(memory)f(exhausted)p Fv(')j(in)h(rare)g(circumstances\),)i(or)f(b)m
(y)g(c)m(hanges)h(in)d(the)i(tested)h(pro-)330 193 y(gram)f(\(`)p
Fr(Undefined)28 b(command)p Fv(')j(is)g(the)h(lik)m(eliest)f(outcome)j
(if)d(the)h(name)h(of)f(a)h(tested)g(command)330 302
y(c)m(hanges\).)330 437 y(The)f(pattern)g(`)p Fr({<return>})p
Fv(')f(is)g(a)i(particularly)d(in)m(teresting)h(fail-safe)h(to)h
(notice;)h(it)e(c)m(hec)m(ks)i(for)330 546 y(an)k(unexp)s(ected)952
543 y Fk(h)p 976 490 151 4 v 976 546 a Fj(RET)p 976 562
V 1123 543 a Fk(i)1191 546 y Fv(prompt.)64 b(This)37
b(ma)m(y)i(happ)s(en,)g(for)f(example,)i(if)d(the)i(tested)g(to)s(ol)g
(can)330 656 y(\014lter)29 b(output)h(through)g(a)h(pager.)330
790 y(These)e(fail-safe)f(patterns)h(\(lik)m(e)g(the)g(debugging)f(log)
h(itself)7 b(\))28 b(are)h(primarily)d(useful)h(while)g(dev)m(el-)330
900 y(oping)32 b(test)h(scripts.)46 b(Use)33 b(the)g
Fr(error)e Fv(pro)s(cedure)g(to)j(mak)m(e)f(the)g(actions)g(for)f
(fail-safe)g(patterns)330 1010 y(pro)s(duce)i(messages)j(starting)e
(with)g(`)p Fr(ERROR)p Fv(')f(on)i(the)f Fr(runtest)f
Fv(standard)h(output,)i(and)d(in)h(the)330 1119 y(detailed)29
b(log)i(\014le.)p eop
%%Page: 39 41
39 40 bop 150 -116 a Fv(Chapter)30 b(6:)41 b(Ho)m(w)31
b(T)-8 b(o)31 b(W)-8 b(rite)31 b(a)f(T)-8 b(est)31 b(Case)1988
b(39)150 100 y Fs(6)80 b(Ho)l(w)53 b(T)-13 b(o)53 b(W)-13
b(rite)54 b(a)g(T)-13 b(est)53 b(Case)150 457 y Fu(6.1)68
b(W)-11 b(riting)46 b(a)f(test)h(case)275 649 y Fv(The)30
b(easiest)h(w)m(a)m(y)h(to)f(prepare)g(a)g(new)f(test)i(case)g(is)e(to)
h(base)g(it)f(on)h(an)g(existing)f(one)h(for)f(a)i(similar)150
759 y(situation.)63 b(There)38 b(are)g(t)m(w)m(o)i(ma)5
b(jor)38 b(categories)i(of)e(tests:)57 b(batc)m(h)39
b(or)f(in)m(teractiv)m(e.)65 b(Batc)m(h)40 b(orien)m(ted)150
868 y(tests)31 b(are)g(usually)d(easier)i(to)h(write.)275
1003 y(The)22 b Fo(gcc)h Fv(tests)h(are)f(a)h(go)s(o)s(d)f(example)g
(of)g(batc)m(h)h(orien)m(ted)f(tests.)39 b(All)22 b Fo(gcc)h
Fv(tests)h(consist)e(primarily)150 1112 y(of)35 b(a)h(call)f(to)h(a)g
(single)e(common)h(pro)s(cedure,)h(since)f(all)f(the)h(tests)h(either)f
(ha)m(v)m(e)i(no)e(output,)h(or)g(only)150 1222 y(ha)m(v)m(e)k(a)g(few)
f(w)m(arning)f(messages)i(when)e(successfully)g(compiled.)65
b(An)m(y)40 b(non-w)m(arning)d(output)i(is)g(a)150 1332
y(test)31 b(failure.)39 b(All)29 b(the)h(C)g(co)s(de)h(needed)e(is)h(k)
m(ept)h(in)e(the)h(test)h(directory)-8 b(.)41 b(The)30
b(test)h(driv)m(er,)e(written)g(in)150 1441 y Fr(expect)p
Fv(,)d(need)h(only)f(get)i(a)f(listing)e(of)i(all)e(the)i(C)g(\014les)f
(in)f(the)i(directory)-8 b(,)28 b(and)e(compile)g(them)h(all)e(using)
150 1551 y(a)j(generic)g(pro)s(cedure.)39 b(This)26 b(pro)s(cedure)h
(and)h(a)g(few)g(others)g(supp)s(orting)d(for)j(these)g(tests)h(are)g
(k)m(ept)f(in)150 1660 y(the)i(library)d(mo)s(dule)h(`)p
Fr(lib/c-torture.exp)p Fv(')d(in)k(the)h Fo(gcc)f Fv(test)h(suite.)40
b(Most)31 b(tests)f(of)g(this)e(kind)g(use)150 1770 y(v)m(ery)j(few)f
Fr(expect)f Fv(features,)h(and)g(are)h(co)s(ded)f(almost)h(purely)d(in)
h(Tcl.)150 1905 y(W)-8 b(riting)30 b(the)g(complete)h(suite)f(of)g(C)g
(tests,)i(then,)e(consisted)g(of)g(these)h(steps:)199
2039 y(1.)61 b(Cop)m(ying)26 b(all)f(the)i(C)f(co)s(de)g(in)m(to)h(the)
g(test)g(directory)-8 b(.)39 b(These)26 b(tests)i(w)m(ere)f(based)f(on)
g(the)h(C-torture)330 2149 y(test)e(created)g(b)m(y)f(T)-8
b(orb)5 b(jorn)23 b(Granlund)f(\(on)i(b)s(ehalf)e(of)j(the)f(F)-8
b(ree)25 b(Soft)m(w)m(are)g(F)-8 b(oundation\))24 b(for)g
Fo(gcc)330 2258 y Fv(dev)m(elopmen)m(t.)199 2393 y(2.)61
b(W)-8 b(riting)30 b(\(and)g(debugging\))f(the)i(generic)f
Fr(expect)f Fv(pro)s(cedures)g(for)h(compilation.)199
2527 y(3.)61 b(W)-8 b(riting)32 b(the)h(simple)e(test)i(driv)m(er:)45
b(its)32 b(main)g(task)h(is)f(to)h(searc)m(h)h(the)f(directory)f
(\(using)g(the)h(Tcl)330 2637 y(pro)s(cedure)f Fr(glob)f
Fv(for)i(\014lename)f(expansion)g(with)f(wildcards\))g(and)h(call)g(a)h
(Tcl)g(pro)s(cedure)e(with)330 2746 y(eac)m(h)h(\014lename.)39
b(It)31 b(also)f(c)m(hec)m(ks)i(for)e(a)h(few)f(errors)g(from)g(the)g
(testing)h(pro)s(cedure.)275 2906 y(T)-8 b(esting)37
b(in)m(teractiv)m(e)h(programs)g(is)e(in)m(trinsically)e(more)k
(complex.)62 b(T)-8 b(ests)38 b(for)f(most)h(in)m(teractiv)m(e)150
3015 y(programs)30 b(require)f(some)i(trial)e(and)h(error)g(b)s(efore)g
(they)g(are)h(complete.)275 3150 y(Ho)m(w)m(ev)m(er,)44
b(some)d(in)m(teractiv)m(e)f(programs)g(can)g(b)s(e)g(tested)g(in)f(a)h
(simple)e(fashion)h(reminiscen)m(t)g(of)150 3259 y(batc)m(h)c(tests.)54
b(F)-8 b(or)36 b(example,)f(prior)e(to)i(the)g(creation)g(of)g(DejaGn)m
(u,)h(the)f Fo(gdb)f Fv(distribution)d(already)150 3369
y(included)j(a)k(wide-ranging)d(testing)j(pro)s(cedure.)59
b(This)36 b(pro)s(cedure)g(w)m(as)h(v)m(ery)h(robust,)g(and)e(had)h
(al-)150 3479 y(ready)29 b(undergone)f(m)m(uc)m(h)g(more)h(debugging)f
(and)g(error)g(c)m(hec)m(king)i(than)e(man)m(y)h(recen)m(t)h(DejaGn)m
(u)f(test)150 3588 y(cases.)64 b(Accordingly)-8 b(,)39
b(the)e(b)s(est)h(approac)m(h)g(w)m(as)g(simply)d(to)j(encapsulate)g
(the)g(existing)f Fo(gdb)g Fv(tests,)150 3698 y(for)32
b(rep)s(orting)f(purp)s(oses.)45 b(Thereafter,)33 b(new)f
Fo(gdb)g Fv(tests)h(built)d(up)i(a)g(family)f(of)i Fr(expect)d
Fv(pro)s(cedures)150 3807 y(sp)s(ecialized)f(for)h Fo(gdb)g
Fv(testing.)275 3942 y(`)p Fr(gdb.t10/crossload.exp)p
Fv(')25 b(is)k(a)i(go)s(o)s(d)f(example)g(of)h(an)f(in)m(teractiv)m(e)h
(test.)p eop
%%Page: 40 42
40 41 bop 150 -116 a Fv(40)2364 b(DejaGn)m(u)32 b(T)-8
b(esting)30 b(F)-8 b(ramew)m(ork)150 83 y Fu(6.2)68 b(Debugging)46
b(a)f(test)h(case)150 276 y Fv(These)30 b(are)h(the)f(kinds)f(of)h
(debugging)g(information)e(a)m(v)-5 b(ailable)30 b(from)g(DejaGn)m(u:)
199 410 y(1.)61 b(Output)29 b(con)m(trolled)h(b)m(y)g(test)h(scripts)e
(themselv)m(es,)h(explicitly)e(allo)m(w)m(ed)i(for)g(b)m(y)g(the)g
(test)h(author.)330 520 y(This)21 b(kind)g(of)j(debugging)d(output)i
(app)s(ears)f(in)g(the)h(detailed)f(output)h(recorded)g(in)e(the)j(`)p
Fq(to)s(ol)p Fr(.log)p Fv(')330 629 y(\014le.)41 b(T)-8
b(o)31 b(do)g(the)f(same)i(for)e(new)g(tests,)i(use)e(the)h
Fr(verbose)e Fv(pro)s(cedure)h(\(whic)m(h)f(in)h(turn)f(uses)i(the)330
739 y(v)-5 b(ariable)29 b(also)h(called)f Fr(verbose)p
Fv(\))f(to)j(con)m(trol)g(ho)m(w)f(m)m(uc)m(h)g(output)f(to)i
(generate.)42 b(This)29 b(will)e(mak)m(e)330 848 y(it)i(easier)h(for)g
(other)g(p)s(eople)f(running)e(the)j(test)h(to)g(debug)e(it)g(if)g
(necessary)-8 b(.)42 b(Whenev)m(er)30 b(p)s(ossible,)330
958 y(if)h(`)p Fr($verbose)p Fv(')g(is)g Fr(0)p Fv(,)h(there)h(should)d
(b)s(e)i(no)g(output)g(other)g(than)g(the)h(output)e(from)h
Fr(pass)p Fv(,)g Fr(fail)p Fv(,)330 1068 y Fr(error)p
Fv(,)h(and)f Fr(warning)p Fv(.)47 b(Then,)33 b(to)h(whatev)m(er)g
(exten)m(t)g(is)e(appropriate)g(for)h(the)g(particular)f(test,)330
1177 y(allo)m(w)h(successiv)m(ely)f(higher)g(v)-5 b(alues)33
b(of)g(`)p Fr($verbose)p Fv(')e(to)j(generate)h(more)e(information.)48
b(Be)34 b(kind)330 1287 y(to)d(other)g(programmers)f(who)f(use)h(y)m
(our)h(tests:)41 b(pro)m(vide)30 b(for)g(a)h(lot)f(of)h(debugging)e
(information.)199 1421 y(2.)61 b(Output)26 b(from)g(the)h(in)m(ternal)e
(debugging)h(functions)f(of)i(Tcl)f(and)g Fr(expect)p
Fv(.)38 b(There)26 b(is)g(a)h(command)330 1531 y(line)h(options)i(for)g
(eac)m(h;)h(b)s(oth)e(forms)h(of)g(debugging)f(output)h(are)g(recorded)
g(in)f(the)h(\014le)f Fr(dbg.log)330 1641 y Fv(in)g(the)i(curren)m(t)f
(directory)-8 b(.)330 1775 y(Use)23 b(`)p Fr(--debug)p
Fv(')d(for)i(information)f(from)h(the)g Fr(expect)e Fv(lev)m(el;)25
b(it)d(generates)i(displa)m(ys)c(of)i(the)h Fr(expect)330
1885 y Fv(attempts)i(to)g(matc)m(h)h(the)e(to)s(ol)g(output)g(with)f
(the)i(patterns)f(sp)s(eci\014ed)f(\(see)i(Section)f(5.7.3)i([Debug)330
1994 y(Log],)34 b(page)f(36\).)47 b(This)30 b(output)i(can)g(b)s(e)g(v)
m(ery)h(helpful)c(while)h(dev)m(eloping)h(test)i(scripts,)f(since)f(it)
330 2104 y(sho)m(ws)e(precisely)f(the)i(c)m(haracters)h(receiv)m(ed.)41
b(Iterating)29 b(b)s(et)m(w)m(een)h(the)g(latest)g(attempt)g(at)h(a)e
(new)330 2213 y(test)k(script)d(and)h(the)h(corresp)s(onding)e(`)p
Fr(dbg.log)p Fv(')g(can)i(allo)m(w)f(y)m(ou)h(to)h(create)g(the)f
(\014nal)e(patterns)330 2323 y(b)m(y)g(\\cut)h(and)f(paste".)42
b(This)28 b(is)i(sometimes)g(the)h(b)s(est)f(w)m(a)m(y)h(to)g(write)f
(a)g(test)i(case.)330 2457 y(Use)45 b(`)p Fr(--strace)p
Fv(')d(to)j(see)g(more)f(detail)g(at)h(the)f(Tcl)g(lev)m(el;)51
b(this)43 b(sho)m(ws)h(ho)m(w)h(Tcl)e(pro)s(cedure)330
2567 y(de\014nitions)f(expand,)47 b(as)d(they)g(execute.)84
b(The)43 b(asso)s(ciated)i(n)m(um)m(b)s(er)e(con)m(trols)h(the)g(depth)
g(of)330 2677 y(de\014nitions)20 b(expanded;)25 b(see)e(the)g
(discussion)d(of)j(`)p Fr(--strace)p Fv(')d(in)i(Chapter)g(3)h
([Running)d(the)j(T)-8 b(ests],)330 2786 y(page)31 b(9.)199
2921 y(3.)61 b(Finally)-8 b(,)24 b(if)e(the)i(v)-5 b(alue)23
b(of)h(`)p Fr(verbose)p Fv(')e(is)h(3)h(or)f(greater,)k
Fr(runtest)22 b Fv(turns)g(on)h(the)h Fr(expect)e Fv(command)330
3030 y Fr(log_user)p Fv(.)38 b(This)26 b(command)h(prin)m(ts)f(all)h
Fr(expect)f Fv(actions)i(to)g(the)g Fr(expect)e Fv(standard)h(output,)h
(to)330 3140 y(the)j(detailed)e(log)h(\014le,)g(and)g(\(if)g(`)p
Fr(--debug)p Fv(')f(is)g(on\))i(to)g(`)p Fr(dbg.log)p
Fv('.)150 3397 y Fu(6.3)68 b(Adding)44 b(a)h(test)h(case)g(to)f(a)g
(test)h(suite)275 3590 y Fv(There)32 b(are)h(t)m(w)m(o)h(sligh)m(tly)c
(di\013eren)m(t)j(w)m(a)m(ys)g(to)g(add)f(a)h(test)h(case.)48
b(One)32 b(is)g(to)h(add)f(the)h(test)h(case)f(to)150
3699 y(an)27 b(existing)f(directory)-8 b(.)40 b(The)26
b(other)i(is)e(to)i(create)g(a)g(new)e(directory)h(to)h(hold)e(y)m(our)
h(test.)40 b(The)27 b(existing)150 3809 y(test)g(directories)e
(represen)m(t)h(sev)m(eral)g(st)m(yles)g(of)g(testing,)i(all)d(of)h
(whic)m(h)e(are)j(sligh)m(tly)d(di\013eren)m(t;)j(examine)150
3919 y(the)k(directories)e(for)h(the)h(to)s(ol)f(of)h(in)m(terest)f(to)
h(see)g(whic)m(h)e(\(if)h(an)m(y\))h(is)e(most)i(suitable.)275
4053 y(Adding)f(a)i Fo(gcc)f Fv(test)i(can)e(b)s(e)h(v)m(ery)g(simple:)
41 b(just)31 b(add)g(the)h(C)f(co)s(de)h(to)g(an)m(y)g(directory)g(b)s
(eginning)150 4163 y(with)d(`)p Fr(gcc.)p Fv(')h(and)g(it)f(runs)g(on)i
(the)f(next)h(`)p Fr(runtest)d(--tool)h(gcc)p Fv('.)275
4297 y(T)-8 b(o)26 b(add)g(a)h(test)g(to)g Fo(gdb)p Fv(,)g(\014rst)f
(add)g(an)m(y)g(source)h(co)s(de)f(y)m(ou)h(will)d(need)i(to)h(the)f
(test)i(directory)-8 b(.)39 b(Then)150 4407 y(y)m(ou)29
b(can)g(either)f(create)i(a)f(new)f Fr(expect)f Fv(\014le,)h(or)g(add)g
(y)m(our)h(test)g(to)h(an)e(existing)g(one)g(\(an)m(y)i(\014le)d(with)h
(a)150 4516 y(`)p Fr(.exp)p Fv(')g(su\016x\).)39 b(Creating)28
b(a)g(new)g(`)p Fr(.exp)p Fv(')g(\014le)f(is)g(probably)g(a)i(b)s
(etter)f(idea)g(if)f(the)h(test)h(is)f(signi\014can)m(tly)150
4626 y(di\013eren)m(t)36 b(from)f(existing)g(tests.)59
b(Adding)34 b(it)i(as)g(a)g(separate)h(\014le)f(also)g(mak)m(es)g
(upgrading)f(easier.)57 b(If)150 4736 y(the)33 b(C)g(co)s(de)h(has)f
(to)h(b)s(e)e(already)h(compiled)f(b)s(efore)h(the)g(test)i(will)30
b(run,)j(then)g(y)m(ou'll)f(ha)m(v)m(e)j(to)f(add)e(it)150
4845 y(to)f(the)g(`)p Fr(Makefile.in)p Fv(')c(\014le)j(for)g(that)h
(test)g(directory)-8 b(,)31 b(then)f(run)f Fr(configure)f
Fv(and)h Fr(make)p Fv(.)275 4980 y(Adding)f(a)j(test)g(b)m(y)g
(creating)f(a)h(new)f(directory)g(is)f(v)m(ery)i(similar:)199
5114 y(1.)61 b(Create)34 b(the)f(new)f(directory)-8 b(.)48
b(All)31 b(sub)s(directory)g(names)i(b)s(egin)e(with)h(the)h(name)f(of)
h(the)g(to)s(ol)g(to)330 5224 y(test;)f(e.g.)43 b Fo(g)p
Fr(++)31 b Fv(tests)h(migh)m(t)e(b)s(e)g(in)g(a)h(directory)f(called)g
(`)p Fr(g++.other)p Fv('.)41 b(There)30 b(can)h(b)s(e)f(m)m(ultiple)330
5333 y(test)h(directories)f(that)h(start)g(with)e(the)h(same)h(to)s(ol)
f(name)h(\(suc)m(h)f(as)h(`)p Fr(g++)p Fv('\).)p eop
%%Page: 41 43
41 42 bop 150 -116 a Fv(Chapter)30 b(6:)41 b(Ho)m(w)31
b(T)-8 b(o)31 b(W)-8 b(rite)31 b(a)f(T)-8 b(est)31 b(Case)1988
b(41)199 83 y(2.)61 b(Add)28 b(the)i(new)e(directory)h(name)g(to)h(the)
g(`)p Fr(configdirs)p Fv(')c(de\014nition)h(in)h(the)i(`)p
Fr(configure.in)p Fv(')c(\014le)330 193 y(for)g(the)g(test)h(suite)e
(directory)-8 b(.)40 b(This)24 b(w)m(a)m(y)j(when)e Fr(make)g
Fv(and)g Fr(configure)f Fv(next)i(run,)g(they)g(include)330
302 y(the)31 b(new)e(directory)-8 b(.)199 437 y(3.)61
b(Add)29 b(the)i(new)f(test)h(case)h(to)f(the)f(directory)-8
b(,)31 b(as)f(ab)s(o)m(v)m(e.)199 571 y(4.)61 b(T)-8
b(o)36 b(add)f(supp)s(ort)e(in)h(the)i(new)f(directory)g(for)g
(con\014gure)g(and)g(mak)m(e,)i(y)m(ou)f(m)m(ust)f(also)h(create)h(a)
330 681 y Fr(Makefile.in)h Fv(and)i(a)h Fr(configure.in)p
Fv(.)69 b(See)41 b(section)g(\\What)g(Con\014gure)f(Do)s(es")i(in)e
Fq(Cygn)m(us)330 790 y(Con\014gure)5 b Fv(.)150 1048
y Fu(6.4)68 b(Hin)l(ts)46 b(on)f(writing)g(a)h(test)g(case)275
1240 y Fv(There)27 b(ma)m(y)h(b)s(e)g(useful)e(existing)g(pro)s
(cedures)h(already)g(written)g(for)h(y)m(our)g(test)g(in)f(the)h(`)p
Fr(lib)p Fv(')g(direc-)150 1350 y(tory)j(of)f(the)h(DejaGn)m(u)g
(distribution.)37 b(See)31 b(Section)f(5.3)h([DejaGn)m(u)h(Builtins],)c
(page)j(23.)275 1484 y(It)26 b(is)g(safest)h(to)g(write)f(patterns)h
(that)g(matc)m(h)g Fn(al)5 b(l)37 b Fv(the)27 b(output)f(generated)h(b)
m(y)g(the)g(tested)g(program;)150 1594 y(this)22 b(is)g(called)h
Fq(closure)p Fv(.)38 b(If)22 b(a)i(pattern)f(do)s(es)g(not)h(matc)m(h)g
(the)f(en)m(tire)g(output,)i(an)m(y)e(output)g(that)h(remains)150
1704 y(will)35 b(b)s(e)j(examined)f(b)m(y)g(the)i Fn(next)46
b Fr(expect)37 b Fv(command.)63 b(In)37 b(this)g(situation,)i(the)f
(precise)f(b)s(oundary)150 1813 y(that)32 b(determines)e(whic)m(h)g
Fr(expect)f Fv(command)i(sees)g(what)g(is)g(v)m(ery)g(sensitiv)m(e)g
(to)g(timing)f(b)s(et)m(w)m(een)i(the)150 1923 y Fr(expect)37
b Fv(task)j(and)e(the)h(task)h(running)c(the)j(tested)h(to)s(ol.)66
b(As)39 b(a)g(result,)h(the)g(test)f(ma)m(y)h(sometimes)150
2032 y(app)s(ear)35 b(to)h(w)m(ork,)h(but)d(is)h(lik)m(ely)f(to)i(ha)m
(v)m(e)g(unpredictable)d(results.)54 b(\(This)34 b(problem)g(is)g
(particularly)150 2142 y(lik)m(ely)d(for)i(in)m(teractiv)m(e)h(to)s
(ols,)f(but)g(can)g(also)f(a\013ect)j(batc)m(h)e(to)s(ols|esp)s
(ecially)e(for)i(tests)h(that)f(tak)m(e)i(a)150 2252
y(long)24 b(time)h(to)g(\014nish.\))37 b(The)24 b(b)s(est)g(w)m(a)m(y)i
(to)f(ensure)f(closure)g(is)g(to)i(use)e(the)h(`)p Fr(-re)p
Fv(')f(option)g(for)h(the)g Fr(expect)150 2361 y Fv(command)k(to)h
(write)f(the)h(pattern)f(as)h(a)g(full)d(regular)i(expressions;)f(then)
h(y)m(ou)h(can)g(matc)m(h)g(the)g(end)f(of)150 2471 y(output)i(using)f
(a)i(`)p Fr($)p Fv('.)44 b(It)31 b(is)g(also)g(a)h(go)s(o)s(d)f(idea)g
(to)h(write)f(patterns)g(that)h(matc)m(h)g(all)f(a)m(v)-5
b(ailable)30 b(output)150 2580 y(b)m(y)36 b(using)f(`)p
Fr(.*\\)p Fv(')h(after)h(the)f(text)i(of)e(in)m(terest;)k(this)35
b(will)f(also)i(matc)m(h)h(an)m(y)g(in)m(terv)m(ening)f(blank)e(lines.)
150 2690 y(Sometimes)e(an)h(alternativ)m(e)g(is)e(to)i(matc)m(h)h(end)e
(of)g(line)f(using)g(`)p Fr(\\r)p Fv(')i(or)f(`)p Fr(\\n)p
Fv(',)h(but)f(this)f(is)h(usually)e(to)s(o)150 2800 y(dep)s(enden)m(t)f
(on)i(terminal)e(settings.)275 2934 y(Alw)m(a)m(ys)45
b(escap)s(e)g(punctuation,)j(suc)m(h)d(as)g(`)p Fr(\()p
Fv(')g(or)h(`)p Fr(")p Fv(',)j(in)43 b(y)m(our)j(patterns;)52
b(for)45 b(example,)k(write)150 3044 y(`)p Fr(\\\()p
Fv('.)41 b(If)30 b(y)m(ou)h(forget)g(to)h(escap)s(e)f(punctuation,)e(y)
m(ou)i(will)d(usually)g(see)j(an)g(error)f(message)h(lik)m(e)f(`)p
Fr(extra)150 3153 y(characters)e(after)h(close-quote)p
Fv('.)275 3288 y(If)k(y)m(ou)h(ha)m(v)m(e)h(trouble)e(understanding)f
(wh)m(y)h(a)i(pattern)f(do)s(es)f(not)h(matc)m(h)h(the)f(program)g
(output,)150 3397 y(try)45 b(using)f(the)h(`)p Fr(--debug)p
Fv(')f(option)h(to)h Fr(runtest)p Fv(,)h(and)d(examine)h(the)h(debug)e
(log)h(carefully)-8 b(.)85 b(See)150 3507 y(Section)30
b(5.7.3)i([Debug)f(Log],)h(page)f(36.)275 3641 y(Be)d(careful)f(not)h
(to)h(neglect)f(output)g(generated)g(b)m(y)g(setup)f(rather)h(than)f(b)
m(y)h(the)g(in)m(teresting)f(parts)150 3751 y(of)32 b(a)g(test)h(case.)
46 b(F)-8 b(or)33 b(example,)f(while)e(testing)i Fo(gdb)p
Fv(,)g(I)f(issue)g(a)h(send)f(`)p Fr(set)f(height)f(0\\n)p
Fv(')i(command.)150 3861 y(The)h(purp)s(ose)f(is)h(simply)f(to)i(mak)m
(e)h(sure)e Fo(gdb)h Fv(nev)m(er)g(calls)f(a)h(paging)f(program.)48
b(The)33 b(`)p Fr(set)c(height)p Fv(')150 3970 y(command)39
b(in)e Fo(gdb)i Fv(do)s(es)g(not)g(generate)h(an)m(y)g(output;)j(but)38
b(running)e Fn(any)48 b Fv(command)38 b(mak)m(es)i Fo(gdb)150
4080 y Fv(issue)28 b(a)h(new)g(`)p Fr(\(gdb\))g Fv(')g(prompt.)40
b(If)28 b(there)i(w)m(ere)f(no)g Fr(expect)e Fv(command)i(to)h(matc)m
(h)g(this)e(prompt,)h(the)150 4189 y(output)c(`)p Fr(\(gdb\))k
Fv(')d(b)s(egins)e(the)i(text)h(seen)f(b)m(y)f(the)h(next)g
Fr(expect)e Fv(command|whic)m(h)g(migh)m(t)h(mak)m(e)i
Fn(that)150 4299 y Fv(pattern)j(fail)g(to)h(matc)m(h.)275
4433 y(T)-8 b(o)39 b(preserv)m(e)g(basic)f(sanit)m(y)-8
b(,)42 b(I)c(also)h(recommended)f(that)i(no)f(test)g(ev)m(er)h(pass)f
(if)e(there)i(w)m(as)h(an)m(y)150 4543 y(kind)32 b(of)i(problem)f(in)g
(the)h(test)h(case.)53 b(T)-8 b(o)34 b(tak)m(e)i(an)e(extreme)h(case,)h
(tests)f(that)f(pass)g(ev)m(en)h(when)e(the)150 4653
y(to)s(ol)i(will)d(not)j(spa)m(wn)f(are)h(misleading.)51
b(Ideally)-8 b(,)35 b(a)g(test)g(in)f(this)f(sort)i(of)g(situation)f
(should)e(not)j(fail)150 4762 y(either.)41 b(Instead,)31
b(prin)m(t)e(an)i(error)f(message)i(b)m(y)e(calling)f(one)i(of)g(the)g
(DejaGn)m(u)g(pro)s(cedures)f Fr(error)f Fv(or)150 4872
y Fr(warning)p Fv(.)p eop
%%Page: 42 44
42 43 bop 150 -116 a Fv(42)2364 b(DejaGn)m(u)32 b(T)-8
b(esting)30 b(F)-8 b(ramew)m(ork)150 83 y Fu(6.5)68 b(Sp)t(ecial)45
b(v)-7 b(ariables)46 b(used)f(b)l(y)g(test)h(cases)275
276 y Fv(Y)-8 b(our)44 b(test)i(cases)f(can)g(use)f(these)h(v)-5
b(ariables,)47 b(with)c(con)m(v)m(en)m(tional)j(meanings)d(\(as)i(w)m
(ell)f(as)h(the)150 385 y(v)-5 b(ariables)29 b(sa)m(v)m(ed)i(in)f(`)p
Fr(site.exp)p Fv(')e(see)j(Chapter)f(4)h([Setting)f Fr(runtest)e
Fv(defaults],)i(page)h(15\):)390 514 y Fn(These)i(variables)g(ar)-5
b(e)34 b(available)g(to)f(al)5 b(l)33 b(test)g(c)-5 b(ases.)150
698 y Fr(prms_id)144 b Fv(The)34 b(trac)m(king)h(system)f(\(e.g.)55
b Fo(gna)-6 b(ts)p Fv(\))34 b(n)m(um)m(b)s(er)f(iden)m(tifying)f(a)j
(corresp)s(onding)d(bugre-)630 808 y(p)s(ort.)40 b(\(`)p
Fr(0)p Fv(')31 b(if)e(y)m(ou)i(do)f(not)h(sp)s(ecify)e(it)h(in)f(the)h
(test)i(script.\))150 992 y Fr(bug_id)192 b Fv(An)28
b(optional)f(bug)g(id;)h(ma)m(y)h(re\015ect)f(a)h(bug)e(iden)m
(ti\014cation)g(from)g(another)i(organization.)630 1102
y(\(`)p Fr(0)p Fv(')i(if)e(y)m(ou)i(do)f(not)h(sp)s(ecify)e(it.\))150
1286 y Fr(subdir)192 b Fv(The)30 b(sub)s(directory)e(for)i(the)h
(curren)m(t)f(test)h(case.)390 1440 y Fn(These)i(variables)g(should)h
(never)f(b)-5 b(e)32 b(change)-5 b(d.)43 b(They)33 b(app)-5
b(e)g(ar)36 b(in)c(most)i(tests.)150 1624 y Fr(expect_out\(buffer\))630
1733 y Fv(The)27 b(output)f(from)h(the)g(last)g(command.)40
b(This)25 b(is)h(an)h(in)m(ternal)f(v)-5 b(ariable)26
b(set)h(b)m(y)g Fr(expect)p Fv(.)150 1918 y Fr(exec_output)630
2027 y Fv(This)j(is)h(the)h(output)f(from)h(a)g Fq(to)s(ol)t
Fr(_load)e Fv(command.)45 b(This)30 b(only)g(applies)g(to)j(to)s(ols)f
(lik)m(e)630 2137 y Fo(gcc)37 b Fv(and)f Fo(gas)h Fv(whic)m(h)f(pro)s
(duce)g(an)h(ob)5 b(ject)38 b(\014le)f(that)g(m)m(ust)h(in)d(turn)i(b)s
(e)f(executed)i(to)630 2247 y(complete)31 b(a)g(test.)150
2431 y Fr(comp_output)630 2540 y Fv(This)k(is)g(the)h(output)g(from)g
(a)h Fq(to)s(ol)t Fr(_start)d Fv(command.)58 b(This)35
b(is)g(con)m(v)m(en)m(tionally)i(used)630 2650 y(for)d(batc)m(h)h
(orien)m(ted)f(programs,)i(lik)m(e)d Fo(gcc)h Fv(and)g
Fo(gas)p Fv(,)h(that)g(ma)m(y)g(pro)s(duce)f(in)m(teresting)630
2760 y(output)c(\(w)m(arnings,)g(errors\))g(without)f(further)g(in)m
(teraction.)p eop
%%Page: 43 45
43 44 bop 150 -116 a Fv(Chapter)30 b(7:)41 b(New)30 b(T)-8
b(o)s(ols,)31 b(T)-8 b(argets,)31 b(or)g(Hosts)1888 b(43)150
100 y Fs(7)80 b(New)54 b(T)-13 b(o)t(ols,)53 b(T)-13
b(argets,)53 b(or)g(Hosts)275 334 y Fv(The)31 b(most)h(common)g(w)m(a)m
(ys)h(to)g(extend)f(the)g(DejaGn)m(u)h(framew)m(ork)f(are:)44
b(adding)31 b(a)h(suite)f(of)h(tests)150 443 y(for)24
b(a)h(new)e(to)s(ol)h(to)h(b)s(e)f(tested;)j(adding)c(supp)s(ort)g(for)
h(testing)g(on)g(a)h(new)e(target;)28 b(and)c(p)s(orting)f
Fr(runtest)150 553 y Fv(to)31 b(a)g(new)f(host.)150 810
y Fu(7.1)68 b(W)-11 b(riting)46 b(tests)f(for)h(a)f(new)g(to)t(ol)275
1003 y Fv(In)38 b(general,)j(the)e(b)s(est)f(w)m(a)m(y)i(to)g(learn)e
(ho)m(w)h(to)g(write)f(\(co)s(de)i(or)e(ev)m(en)i(prose\))f(is)f(to)h
(read)g(some-)150 1112 y(thing)34 b(similar.)52 b(This)34
b(principle)e(applies)h(to)j(test)g(cases)g(and)e(to)i(test)g(suites.)
54 b(Unfortunately)-8 b(,)37 b(w)m(ell-)150 1222 y(established)42
b(test)i(suites)f(ha)m(v)m(e)i(a)f(w)m(a)m(y)h(of)e(dev)m(eloping)g
(their)g(o)m(wn)h(con)m(v)m(en)m(tions:)68 b(as)44 b(test)g(writers)150
1332 y(b)s(ecome)29 b(more)g(exp)s(erienced)e(with)h(DejaGn)m(u)h(and)g
(with)e(Tcl,)h(they)h(accum)m(ulate)h(more)f(utilities,)e(and)150
1441 y(tak)m(e)32 b(adv)-5 b(an)m(tage)32 b(of)f(more)f(and)g(more)h
(features)f(of)h Fr(expect)d Fv(and)i(Tcl)g(in)f(general.)275
1576 y(Insp)s(ecting)37 b(suc)m(h)h(established)f(test)j(suites)d(ma)m
(y)j(mak)m(e)f(the)g(prosp)s(ect)f(of)h(creating)g(an)g(en)m(tirely)150
1685 y(new)31 b(test)h(suite)e(app)s(ear)h(o)m(v)m(erwhelming.)42
b(Nev)m(ertheless,)32 b(it)f(is)f(quite)h(straigh)m(tforw)m(ard)g(to)h
(get)g(a)f(new)150 1795 y(test)g(suite)f(going.)275 1929
y(There)e(is)g(one)h(test)g(suite)f(that)i(is)d(guaran)m(teed)j(not)f
(to)g(gro)m(w)h(more)f(elab)s(orate)g(o)m(v)m(er)h(time:)39
b(b)s(oth)28 b(it)150 2039 y(and)34 b(the)g(to)s(ol)h(it)f(tests)h(w)m
(ere)g(created)g(expressly)f(to)h(illustrate)d(what)j(it)f(tak)m(es)i
(to)f(get)g(started)g(with)150 2149 y(DejaGn)m(u.)63
b(The)37 b(`)p Fr(example/)p Fv(')f(directory)h(of)h(the)g(DejaGn)m(u)g
(distribution)c(con)m(tains)k(b)s(oth)f(an)g(in)m(ter-)150
2258 y(activ)m(e)d(to)s(ol)f(called)f Fr(calc)p Fv(,)h(and)f(a)h(test)h
(suite)e(for)h(it.)47 b(Reading)33 b(this)f(test)h(suite,)g(and)g(exp)s
(erimen)m(ting)150 2368 y(with)h(it,)j(is)d(a)i(go)s(o)s(d)f(w)m(a)m(y)
i(to)f(supplemen)m(t)e(the)i(information)e(in)g(this)g(section.)56
b(\(Thanks)35 b(to)h(Rob)s(ert)150 2477 y(Lupton)29 b(for)g(creating)h
Fr(calc)e Fv(and)h(its)g(test)h(suite|and)e(also)i(the)g(\014rst)e(v)m
(ersion)h(of)h(this)e(section)i(of)g(the)150 2587 y(man)m(ual!\))275
2721 y(T)-8 b(o)31 b(help)f(orien)m(t)i(y)m(ou)f(further)g(in)f(this)g
(task,)i(here)g(is)e(an)h(outline)f(of)i(the)f(steps)h(to)g(b)s(egin)e
(building)150 2831 y(a)h(test)g(suite)f(for)g(a)h(program)f
Fq(example)p Fv(.)199 2966 y(1.)61 b(Create)38 b(or)g(select)g(a)g
(directory)g(to)g(con)m(tain)g(y)m(our)g(new)f(collection)g(of)h
(tests.)63 b(Change)38 b(to)g(that)330 3075 y(directory)30
b(\(sho)m(wn)g(here)g(as)h Fr(testsuite)p Fv(\):)570
3204 y Fr(eg$)47 b(cd)g(testsuite/)199 3338 y Fv(2.)61
b(Create)51 b(a)g(`)p Fr(configure.in)p Fv(')d(\014le)i(in)f(this)g
(directory)-8 b(,)56 b(to)51 b(con)m(trol)g(con\014guration-dep)s
(enden)m(t)330 3448 y(c)m(hoices)36 b(for)e(y)m(our)h(tests.)56
b(So)35 b(far)g(as)g(DejaGn)m(u)h(is)e(concerned,)i(the)f(imp)s(ortan)m
(t)g(thing)f(is)g(to)h(set)330 3557 y(a)g(v)-5 b(alue)33
b(for)h(the)h(v)-5 b(ariable)33 b Fr(target_abbrev)p
Fv(;)f(this)h(v)-5 b(alue)34 b(is)f(the)i(link)d(to)j(the)f(init)f
(\014le)g(y)m(ou)i(will)330 3667 y(write)30 b(so)s(on.)40
b(\(F)-8 b(or)32 b(simplicit)m(y)-8 b(,)28 b(w)m(e)j(assume)f(the)h(en)
m(vironmen)m(t)f(is)g(Unix,)f(and)h(use)g(`)p Fr(unix)p
Fv(')g(as)h(the)330 3777 y(v)-5 b(alue.\))330 3911 y(What)28
b(else)g(is)f(needed)g(in)f(`)p Fr(configure.in)p Fv(')f(dep)s(ends)h
(on)h(the)h(requiremen)m(ts)f(of)h(y)m(our)g(to)s(ol,)g(y)m(our)330
4021 y(in)m(tended)j(test)i(en)m(vironmen)m(ts,)f(and)g(whic)m(h)e
Fr(configure)g Fv(system)i(y)m(ou)h(use.)45 b(This)31
b(example)g(is)h(a)330 4130 y(minimal)g Fr(configure.in)g
Fv(for)i(use)h(with)e(Cygn)m(us)h(Con\014gure.)54 b(\(F)-8
b(or)36 b(an)e(alternativ)m(e)i(based)e(on)330 4240 y(the)d(FSF)g
Fr(autoconf)e Fv(system,)j(see)f(the)g Fr(calc)f Fv(example)h
(distributed)d(with)i(DejaGn)m(u.\))44 b(Replace)330
4350 y Fq(example)35 b Fv(with)29 b(the)i(name)f(of)h(y)m(our)f
(program:)p eop
%%Page: 44 46
44 45 bop 150 -116 a Fv(44)2364 b(DejaGn)m(u)32 b(T)-8
b(esting)30 b(F)-8 b(ramew)m(ork)330 52 y Fm(\013)p 380
52 3374 4 v 3373 w(\010)p 330 1683 4 1584 v 358 205 a
Fr(#)48 b(This)e(file)h(is)g(a)h(shell)e(script)g(fragment)358
309 y(#)i(for)f(use)f(with)h(Cygnus)f(configure.)358
516 y(srctrigger=")p Fq(example)p Fr(.0")358 620 y(srcname="The)f
(DejaGnu)g Fq(example)53 b Fr(tests")358 828 y(#)48 b(per-host:)358
1035 y(#)g(per-target:)358 1243 y(#)g(everything)d(defaults)g(to)i
(unix)g(for)g(a)g(target)358 1347 y(target_abbrev=unix)358
1554 y(#)h(post-target:)p 3803 1683 V 330 1735 a Fm(\012)p
380 1735 3374 4 v 3373 w(\011)199 1880 y Fv(3.)61 b(Create)28
b(`)p Fr(Makefile.in)p Fv(',)e(the)i(source)f(\014le)g(used)g(b)m(y)g
Fr(configure)e Fv(to)j(build)d(y)m(our)i(`)p Fr(Makefile)p
Fv('.)38 b(Its)330 1989 y(leading)29 b(section)i(should)d(as)j(usual)e
(con)m(tain)h(the)h(v)-5 b(alues)30 b(that)g Fr(configure)e
Fv(ma)m(y)j(o)m(v)m(erride:)330 2070 y Fm(\013)p 380
2070 V 3373 w(\010)p 330 3721 4 1604 v 358 2224 a Fr(srcdir)46
b(=)i(.)358 2327 y(prefix)e(=)i(/usr/local)358 2535 y(exec_prefix)d(=)i
($\(prefix\))358 2639 y(bindir)f(=)i($\(exec_prefix\)/bin)358
2742 y(libdir)e(=)i($\(exec_prefix\)/lib)358 2846 y(tooldir)e(=)h
($\(libdir\)/$\(target_alias\))358 3054 y(datadir)f(=)h
($\(exec_prefix\)/lib/dejagnu)358 3261 y(RUNTEST)f(=)h(runtest)358
3365 y(RUNTESTFLAGS)e(=)358 3469 y(FLAGS_TO_PASS)f(=)358
3676 y(####)j(host,)f(target,)g(site)h(specific)e(Makefile)h(frags)g
(come)h(in)g(here.)p 3803 3721 V 330 3773 a Fm(\012)p
380 3773 3374 4 v 3373 w(\011)330 3918 y Fv(This)26 b(should)g(b)s(e)h
(follo)m(w)m(ed)h(b)m(y)f(the)i(standard)e(targets)i(at)f(y)m(our)g
(site.)40 b(T)-8 b(o)28 b(b)s(egin)f(with,)g(they)h(need)330
4028 y(not)j(do)f(an)m(ything|for)f(example,)i(these)g(de\014nitions)c
(will)h(do:)p eop
%%Page: 45 47
45 46 bop 150 -116 a Fv(Chapter)30 b(7:)41 b(New)30 b(T)-8
b(o)s(ols,)31 b(T)-8 b(argets,)31 b(or)g(Hosts)1888 b(45)330
52 y Fm(\013)p 380 52 3374 4 v 3373 w(\010)p 330 1420
4 1321 v 358 253 a Fr(all:)358 461 y(info:)358 668 y(install-info:)358
876 y(install:)358 980 y(uninstall:)358 1187 y(clean:)740
1291 y(-rm)47 b(-f)g(*~)g(core)g(*.info*)p 3803 1420
V 330 1472 a Fm(\012)p 380 1472 3374 4 v 3373 w(\011)330
1616 y Fv(It)30 b(is)f(also)h(a)g(go)s(o)s(d)g(idea)f(to)i(mak)m(e)g
(sure)e(y)m(our)h(`)p Fr(Makefile)p Fv(')e(can)i(rebuild)d(itself)i(if)
g(`)p Fr(Makefile.in)p Fv(')330 1726 y(c)m(hanges,)j(with)d(a)h(target)
i(lik)m(e)e(this)f(\(whic)m(h)h(w)m(orks)g(for)g(either)g(Cygn)m(us)g
(or)g(FSF)h(Con\014gure\):)330 1810 y Fm(\013)p 380 1810
V 3373 w(\010)p 330 2223 4 366 v 358 1970 a Fr(Makefile)46
b(:)h($\(srcdir\)/Makefile.in)42 b($\(host_makefile_frag\))g(\\)979
2074 y($\(target_makefile_frag\))740 2178 y($\(SHELL\))k
(./config.status)p 3803 2223 V 330 2275 a Fm(\012)p 380
2275 3374 4 v 3373 w(\011)330 2420 y Fv(Y)-8 b(ou)34
b(also)f(need)g(to)h(include)d(t)m(w)m(o)j(targets)h(imp)s(ortan)m(t)d
(to)i(DejaGn)m(u:)47 b Fr(check)p Fv(,)33 b(to)h(run)e(the)h(tests,)330
2530 y(and)d Fr(site.exp)p Fv(,)g(to)i(set)f(up)f(the)h(Tcl)g(copies)g
(of)g(con\014guration-dep)s(enden)m(t)f(v)-5 b(alues.)42
b(The)30 b Fr(check)330 2639 y Fv(target)i(m)m(ust)e(run)f(`)p
Fr(runtest)g(--tool)f Fq(example)5 b Fv(':)330 2718 y
Fm(\013)p 380 2718 V 3373 w(\010)p 330 3121 4 356 v 358
2871 a Fr(check:)46 b(site.exp)g(all)740 2975 y($\(RUNTEST\))f
($\(RUNTESTFLAGS\))f($\(FLAGS_TO_PASS\))f(\\)931 3078
y(--tool)j Fq(example)53 b Fr(--srcdir)45 b($\(srcdir\))p
3803 3121 V 330 3173 a Fm(\012)p 380 3173 3374 4 v 3373
w(\011)330 3323 y Fv(The)35 b Fr(site.exp)f Fv(target)k(should)33
b(usually)h(set)j(up)d(\(among)j(other)f(things!\))57
b(a)36 b(Tcl)f(v)-5 b(ariable)35 b(for)330 3433 y(the)c(name)f(of)h(y)m
(our)f(program:)p eop
%%Page: 46 48
46 47 bop 150 -116 a Fv(46)2364 b(DejaGn)m(u)32 b(T)-8
b(esting)30 b(F)-8 b(ramew)m(ork)330 52 y Fm(\013)p 380
52 3374 4 v 3373 w(\010)p 330 3475 4 3376 v 358 213 a
Fr(site.exp:)45 b(./config.status)f(Makefile)740 316
y(@echo)i("Making)g(a)i(new)f(config)f(file...")740 420
y(-@rm)h(-f)g(./tmp?)740 524 y(@touch)f(site.exp)740
731 y(-@mv)h(site.exp)e(site.bak)740 835 y(@echo)h("##)h(these)g
(variables)e(are)i(automatically\\)406 939 y(generated)e(by)i(make)g
(##")g(>)g(./tmp0)740 1043 y(@echo)f("#)i(Do)f(not)g(edit)f(here.)h(If)
g(you)g(wish)f(to\\)406 1147 y(override)f(these)i(values")f(>>)h
(./tmp0)740 1250 y(@echo)f("#)i(add)e(them)h(to)g(the)g(last)g
(section")e(>>)j(./tmp0)740 1354 y(@echo)e("set)h(host_os)f
(${host_os}")f(>>)i(./tmp0)740 1458 y(@echo)f("set)h(host_alias)e
(${host_alias}")f(>>)j(./tmp0)740 1562 y(@echo)f("set)h(host_cpu)f
(${host_cpu}")e(>>)j(./tmp0)740 1665 y(@echo)f("set)h(host_vendor)e
(${host_vendor}")e(>>)48 b(./tmp0)740 1769 y(@echo)e("set)h(target_os)e
(${target_os}")f(>>)k(./tmp0)740 1873 y(@echo)e("set)h(target_alias)d
(${target_alias}")g(>>)j(./tmp0)740 1977 y(@echo)f("set)h(target_cpu)e
(${target_cpu}")f(>>)j(./tmp0)740 2081 y(@echo)f("set)h(target_vendor)d
(${target_vendor}")f(>>)k(./tmp0)740 2184 y(@echo)f("set)h
(host_triplet)d(${host_canonical}")f(>>)k(./tmp0)740
2288 y(@echo)f("set)h(target_triplet)d(${target_canonical}">>./)o(tmp0)
740 2392 y(@echo)i("set)h(tool)g(binutils")e(>>)i(./tmp0)740
2496 y(@echo)f("set)h(srcdir)f(${srcdir}")f(>>)i(./tmp0)740
2599 y(@echo)f("set)h(objdir)f(`pwd`")g(>>)h(./tmp0)740
2703 y(@echo)f("set)h Fq(examplename)53 b(example)5 b
Fr(")47 b(>>)g(./tmp0)740 2807 y(@echo)f("##)h(All)g(variables)e(above)
i(are)g(generated)e(by\\)406 2911 y(configure.)g(Do)i(Not)g(Edit)g(##")
g(>>)g(./tmp0)1122 3015 y(@cat)f(./tmp0)h(>)g(site.exp)740
3118 y(@sed)g(<)g(site.bak)f(\\)1074 3222 y(-e)h('1,/^##)f(All)h
(variables)e(above)i(are.*##/)e(d')i(\\)1074 3326 y(>>)g(site.exp)740
3430 y(-@rm)g(-f)g(./tmp?)p 3803 3475 V 330 3527 a Fm(\012)p
380 3527 3374 4 v 3373 w(\011)199 3677 y Fv(4.)61 b(Create)31
b(a)g(directory)f(\(in)f(`)p Fr(testsuite/)p Fv('\))g(called)g(`)p
Fr(config/)p Fv(':)570 3805 y Fr(eg$)47 b(mkdir)f(config)199
3940 y Fv(5.)61 b(Mak)m(e)31 b(an)e(init)e(\014le)i(in)e(this)h
(directory;)i(its)e(name)i(m)m(ust)f(start)g(with)f(the)i
Fr(target_abbrev)25 b Fv(v)-5 b(alue,)330 4049 y(so)33
b(call)g(it)f(`)p Fr(config/unix.exp)p Fv('.)45 b(This)32
b(is)g(the)h(\014le)f(that)i(con)m(tains)f(the)g(target-dep)s(enden)m
(t)h(pro-)330 4159 y(cedures;)f(fortunately)-8 b(,)33
b(most)g(of)f(them)h(do)f(not)g(ha)m(v)m(e)i(to)f(do)f(v)m(ery)h(m)m
(uc)m(h)f(in)f(order)h(for)g Fr(runtest)330 4269 y Fv(to)f(run.)330
4403 y(If)f Fq(example)35 b Fv(is)29 b(not)i(in)m(teractiv)m(e,)g(y)m
(ou)g(can)f(get)i(a)m(w)m(a)m(y)g(with)d(this)g(minimal)f(`)p
Fr(unix.exp)p Fv(')g(to)j(b)s(egin)330 4513 y(with:)330
4574 y Fm(\013)p 380 4574 V 3373 w(\010)p 330 4883 4
262 v 358 4734 a Fr(proc)47 b(foo_exit)e({})j({})358
4838 y(proc)f(foo_version)e({})i({})p 3803 4883 V 330
4935 a Fm(\012)p 380 4935 3374 4 v 3373 w(\011)330 5080
y Fv(If)30 b Fq(example)36 b Fv(is)30 b(in)m(teractiv)m(e,)h(ho)m(w)m
(ev)m(er,)i(y)m(ou)e(migh)m(t)f(as)h(w)m(ell)f(de\014ne)g(a)h(start)g
(routine)f Fn(and)k(invoke)330 5190 y(it)39 b Fv(b)m(y)30
b(using)f(an)h(init)f(\014le)h(lik)m(e)f(this:)p eop
%%Page: 47 49
47 48 bop 150 -116 a Fv(Chapter)30 b(7:)41 b(New)30 b(T)-8
b(o)s(ols,)31 b(T)-8 b(argets,)31 b(or)g(Hosts)1888 b(47)330
52 y Fm(\013)p 380 52 3374 4 v 3373 w(\010)p 330 1284
4 1185 v 358 213 a Fr(proc)47 b(foo_exit)e({})j({})358
316 y(proc)f(foo_version)e({})i({})358 524 y(proc)g(foo_start)e({})i({)
454 628 y(global)f Fq(examplename)454 731 y Fr(spawn)g($)p
Fq(examplename)454 835 y Fr(expect)g({)549 939 y(-re)h("")g({})454
1043 y(})358 1147 y(})358 1250 y(foo_start)p 3803 1284
V 330 1336 a Fm(\012)p 380 1336 3374 4 v 3373 w(\011)199
1481 y Fv(6.)61 b(Create)31 b(a)g(directory)f(whose)g(name)g(b)s(egins)
f(with)g(y)m(our)i(to)s(ol's)f(name,)h(to)g(con)m(tain)g(tests:)570
1609 y Fr(eg$)47 b(mkdir)f Fq(example)p Fr(.0)199 1744
y Fv(7.)61 b(Create)33 b(a)g(sample)f(test)h(\014le)f(in)f(`)p
Fq(example)p Fr(.0)p Fv('.)47 b(Its)32 b(name)h(m)m(ust)f(end)g(with)f
(`)p Fr(.exp)p Fv(';)j(y)m(ou)e(can)h(use)330 1853 y(`)p
Fr(first-try.exp)p Fv(')27 b(T)-8 b(o)30 b(b)s(egin)e(with,)h(just)g
(write)g(there)h(a)g(line)e(of)i(Tcl)f(co)s(de)h(to)h(issue)d(a)j
(message:)330 1935 y Fm(\013)p 380 1935 V 3373 w(\010)p
330 2140 4 159 v 358 2095 a Fr(send_user)45 b("Testing:)h(one,)g
(two...\\n")p 3803 2140 V 330 2192 a Fm(\012)p 380 2192
3374 4 v 3373 w(\011)199 2342 y Fv(8.)61 b(Bac)m(k)32
b(in)d(the)i(`)p Fr(testsuite/)p Fv(')d(\(top)j(lev)m(el\))f(directory)
-8 b(,)31 b(run)570 2471 y Fr(eg$)47 b(configure)330
2606 y Fv(\(Y)-8 b(ou)36 b(ma)m(y)f(ha)m(v)m(e)i(to)e(sp)s(ecify)f
(more)h(of)g(a)g(path,)i(if)c(a)j(suitable)d Fr(configure)g
Fv(is)h(not)h(a)m(v)-5 b(ailable)34 b(in)330 2715 y(y)m(our)c
(execution)h(path.\))199 2850 y(9.)61 b(Y)-8 b(ou)34
b(are)g(no)m(w)g(ready)g(to)g(triumphan)m(tly)e(t)m(yp)s(e)i(`)p
Fr(make)29 b(check)p Fv(')k(or)g(`)p Fr(runtest)c(--tool)g
Fq(example)5 b Fv('.)330 2959 y(Y)-8 b(ou)31 b(should)d(see)j
(something)f(lik)m(e)g(this:)330 3038 y Fm(\013)p 380
3038 V 3373 w(\010)p 330 4046 4 961 v 358 3191 a Fr(Test)47
b(Run)g(By)g(rhl)g(on)g(Fri)g(Jan)g(29)g(16:25:44)f(EST)g(1993)1122
3399 y(===)h Fq(example)52 b Fr(tests)47 b(===)358 3606
y(Running)f(./)p Fq(example)p Fr(.0/first-try.exp)d(...)358
3710 y(Testing:)j(one,)g(two...)1122 3917 y(===)h Fq(example)52
b Fr(Summary)46 b(===)p 3803 4046 V 330 4098 a Fm(\012)p
380 4098 3374 4 v 3373 w(\011)330 4243 y Fv(There)35
b(is)g(no)g(output)h(in)e(the)i(summary)-8 b(,)36 b(b)s(ecause)g(so)g
(far)f(the)h(example)g(do)s(es)f(not)h(call)f(an)m(y)h(of)330
4352 y(the)31 b(pro)s(cedures)e(that)i(establish)d(a)j(test)g(outcome.)
154 4487 y(10.)61 b(Begin)39 b(writing)e(some)i(real)g(tests.)67
b(F)-8 b(or)40 b(an)f(in)m(teractiv)m(e)h(to)s(ol,)h(y)m(ou)e(should)e
(probably)g(write)i(a)330 4597 y(real)31 b(exit)f(routine)g(in)g
(fairly)f(short)i(order;)f(in)g(an)m(y)h(case,)i(y)m(ou)e(should)e
(also)i(write)f(a)h(real)f(v)m(ersion)330 4706 y(routine)f(so)s(on.)p
eop
%%Page: 48 50
48 49 bop 150 -116 a Fv(48)2364 b(DejaGn)m(u)32 b(T)-8
b(esting)30 b(F)-8 b(ramew)m(ork)150 83 y Fu(7.2)68 b(Adding)44
b(a)h(target)275 276 y Fv(DejaGn)m(u)j(has)f(some)h(additional)e
(requiremen)m(ts)h(for)g(target)i(supp)s(ort,)i(b)s(ey)m(ond)c(the)h
(general-)150 385 y(purp)s(ose)37 b(pro)m(visions)g(of)h(Cygn)m(us)g
Fr(configure)p Fv(.)63 b Fr(runtest)37 b Fv(m)m(ust)h(activ)m(ely)h
(comm)m(unicate)g(with)f(the)150 495 y(target,)31 b(rather)e(than)g
(simply)e(generating)i(or)g(managing)g(co)s(de)g(for)g(the)h(target)g
(arc)m(hitecture.)41 b(There-)150 604 y(fore,)30 b(eac)m(h)i(to)s(ol)d
(requires)g(an)h(initialization)d(mo)s(dule)h(for)i(eac)m(h)h(target.)
42 b(F)-8 b(or)31 b(new)e(targets,)j(y)m(ou)e(m)m(ust)150
714 y(supply)21 b(a)j(few)g(Tcl)e(pro)s(cedures)h(to)h(adapt)g(DejaGn)m
(u)g(to)h(the)f(target.)40 b(This)21 b(p)s(ermits)h(DejaGn)m(u)j
(itself)d(to)150 824 y(remain)j(target)i(indep)s(enden)m(t.)37
b(See)26 b(Section)f(5.2)i([Initialization)c(mo)s(dule],)j(page)g(22,)i
(for)d(a)i(discussion)150 933 y(of)k(the)f(naming)f(con)m(v)m(en)m
(tions)j(that)f(enable)f(DejaGn)m(u)h(to)g(lo)s(cate)g(and)f(use)g
(init)f(\014les.)275 1068 y(Usually)24 b(the)i(b)s(est)f(w)m(a)m(y)i
(to)g(write)e(a)h(new)g(initialization)c(mo)s(dule)j(is)g(to)h(edit)g
(an)f(existing)g(initializa-)150 1177 y(tion)30 b(mo)s(dule;)g(some)h
(trial)f(and)g(error)g(will)e(b)s(e)i(required.)41 b(If)30
b(necessary)-8 b(,)32 b(y)m(ou)f(can)g(use)f(the)h(`)p
Fr(--debug)p Fv(')150 1287 y(option)f(to)h(see)g(what)f(is)g(really)f
(going)h(on.)275 1421 y(When)f(y)m(ou)h(co)s(de)g(an)f(initialization)e
(mo)s(dule,)h(b)s(e)h(generous)h(in)e(prin)m(ting)f(information)h(con)m
(trolled)150 1531 y(b)m(y)i(the)h Fr(verbose)d Fv(pro)s(cedure)h(\(see)
j(Section)e(5.3)h([DejaGn)m(u)h(Builtins],)c(page)j(23\).)275
1665 y(Most)40 b(of)f(the)h(w)m(ork)g(is)e(in)g(getting)i(the)g(comm)m
(unications)f(righ)m(t.)67 b(Comm)m(unications)38 b(co)s(de)i(\(for)150
1775 y(sev)m(eral)26 b(situations)e(in)m(v)m(olving)g(IP)h(net)m(w)m
(orks)h(or)f(serial)f(lines\))g(is)h(a)m(v)-5 b(ailable)25
b(in)f(a)h(DejaGn)m(u)i(library)c(\014le,)150 1885 y(`)p
Fr(lib/remote.exp)p Fv('.)37 b(See)31 b(Section)f(5.3)i([DejaGn)m(u)f
(Builtins],)d(page)j(23.)275 2019 y(If)e(y)m(ou)i(susp)s(ect)e(a)i
(comm)m(unication)f(problem,)f(try)h(running)d(the)k(connection)f(in)m
(teractiv)m(ely)g(from)150 2129 y Fr(expect)p Fv(.)37
b(\(There)24 b(are)h(three)f(w)m(a)m(ys)h(of)g(running)c
Fr(expect)i Fv(as)i(an)f(in)m(teractiv)m(e)h(in)m(terpreter.)38
b(Y)-8 b(ou)25 b(can)f(run)150 2238 y Fr(expect)k Fv(with)g(no)h
(argumen)m(ts,)h(and)f(con)m(trol)h(it)f(completely)g(in)m(teractiv)m
(ely;)h(or)f(y)m(ou)h(can)f(use)g(`)p Fr(expect)150 2348
y(-i)p Fv(')c(together)i(with)e(other)g(command-line)f(options)h(and)g
(argumen)m(ts;)j(or)e(y)m(ou)f(can)h(run)e(the)i(command)150
2457 y Fr(interpreter)f Fv(from)i(an)m(y)i Fr(expect)d
Fv(pro)s(cedure.)39 b(Use)28 b Fr(return)e Fv(to)j(get)g(bac)m(k)g(to)f
(the)h(calling)d(pro)s(cedure)150 2567 y(\(if)32 b(an)m(y\),)i(or)e
Fr(return)d(-tcl)i Fv(to)i(mak)m(e)h(the)e(calling)f(pro)s(cedure)g
(itself)h(return)f(to)i(its)f(caller;)h(use)f Fr(exit)150
2677 y Fv(or)40 b(end-of-\014le)g(to)h(lea)m(v)m(e)g
Fr(expect)e Fv(altogether.\))72 b(Run)39 b(the)h(program)h(whose)f
(name)g(is)f(recorded)h(in)150 2786 y(`)p Fr($connectmode)p
Fv(',)45 b(with)d(the)j(argumen)m(ts)f(in)e(`)p Fr($targetname)p
Fv(',)j(to)g(establish)d(a)j(connection.)81 b(Y)-8 b(ou)150
2896 y(should)28 b(at)j(least)g(b)s(e)f(able)g(to)h(get)g(a)g(prompt)f
(from)g(an)m(y)g(target)i(that)f(is)f(ph)m(ysically)e(connected.)150
3153 y Fu(7.3)68 b(P)l(orting)46 b(to)f(a)g(new)h(host)275
3346 y Fv(The)c(task)i(of)f(p)s(orting)f(DejaGn)m(u)h(is)g(basically)e
(that)j(of)f(p)s(orting)e(Tcl)i(and)f Fr(expect)p Fv(.)77
b(Tcl)43 b(and)150 3455 y Fr(expect)p Fv(,)31 b(as)h(distributed)e
(with)g(DejaGn)m(u,)k(b)s(oth)d(use)h Fr(autoconf)p Fv(;)f(they)h
(should)f(p)s(ort)g(automatically)150 3565 y(to)g(most)g(Unix)e
(systems.)275 3699 y(Once)k(Tcl)g(and)g Fr(expect)e Fv(are)j(p)s
(orted,)g(DejaGn)m(u)h(should)c(run.)49 b(Most)34 b(system)g(dep)s
(endencies)e(are)150 3809 y(tak)m(en)f(care)h(of)e(b)m(y)g(using)f
Fr(expect)g Fv(as)i(the)f(main)f(command)i(shell.)p eop
%%Page: 49 51
49 50 bop 150 -116 a Fv(App)s(endix)28 b(A:)i(Installing)e(DejaGn)m(u)
2215 b(49)150 100 y Fs(App)t(endix)53 b(A)81 b(Installing)55
b(DejaGn)l(u)275 301 y Fv(Once)27 b(y)m(ou)h(ha)m(v)m(e)h(the)f(DejaGn)
m(u)h(source)f(unpac)m(k)m(ed)g(and)f(a)m(v)-5 b(ailable,)28
b(y)m(ou)g(m)m(ust)f(\014rst)g(con\014gure)h(the)150
411 y(soft)m(w)m(are)35 b(to)g(sp)s(ecify)d(where)i(it)f(is)g(to)h(run)
f(\(and)g(the)h(asso)s(ciated)g(defaults\);)h(then)f(y)m(ou)g(can)g
(pro)s(ceed)150 520 y(to)d(installing)d(it.)150 758 y
Fu(A.1)67 b(Con\014guring)45 b(the)h(DejaGn)l(u)f(test)h(driv)l(er)275
944 y Fv(It)37 b(is)g(usually)e(b)s(est)i(to)h(con\014gure)g(in)e(a)i
(directory)f(separate)h(from)f(the)h(source)g(tree,)i(sp)s(ecifying)150
1054 y(where)29 b(to)i(\014nd)d(the)j(source)f(with)e(the)i(optional)f
(`)p Fr(--srcdir)p Fv(')g(option)g(to)i Fr(configure)p
Fv(.)38 b(DejaGn)m(u)30 b(uses)150 1164 y(the)39 b(GNU)h
Fr(autoconf)c Fv(to)k(con\014gure)e(itself.)65 b(F)-8
b(or)40 b(more)f(info)f(on)h(using)e(auto)s(conf,)k(read)e(the)g(GNU)
150 1273 y(auto)s(conf)i(man)m(ual.)70 b(T)-8 b(o)41
b(con\014gure,)i(execute)f(the)e(`)p Fr(configure)p Fv(')f(program,)k
(no)d(other)h(options)f(are)150 1383 y(required.)f(F)-8
b(or)31 b(an)f(example,)h(to)g(con\014gure)f(in)f(a)i(sep)s(erate)f
(tree)h(for)g(ob)5 b(jects,)31 b(execute)h(the)e(con\014gure)150
1492 y(script)f(from)h(the)h(source)f(tree)h(lik)m(e)f(this:)390
1615 y Fr(../dejagnu-1.3/configure)275 1743 y Fv(DejaGn)m(u)f(do)s
(esn't)g(care)g(at)g(con\014g)g(time)g(if)e(it's)i(for)f(testing)h(a)g
(nativ)m(e)g(system)g(or)g(a)g(cross)g(system.)150 1852
y(That)h(is)g(determined)f(at)i(run)m(time)e(b)m(y)h(using)f(the)i
(con\014g)f(\014les.)275 1980 y(Y)-8 b(ou)49 b(ma)m(y)g(also)g(w)m(an)m
(t)h(to)g(use)e(the)h Fr(configure)e Fv(option)h(`)p
Fr(--prefix)p Fv(')f(to)j(sp)s(ecify)d(where)i(y)m(ou)150
2090 y(w)m(an)m(t)f(DejaGn)m(u)f(and)f(its)g(supp)s(orting)e(co)s(de)j
(installed.)88 b(By)47 b(default,)j(installation)44 b(is)i(in)g(sub)s
(di-)150 2199 y(rectories)40 b(of)f(`)p Fr(/usr/local)p
Fv(',)g(but)g(y)m(ou)g(can)h(select)g(an)m(y)f(alternate)h(directory)f
Fq(altdir)44 b Fv(b)m(y)39 b(including)150 2309 y(`)p
Fr(--prefix=)p Fq(altdir)7 b Fv(')23 b(on)k(the)g Fr(configure)d
Fv(command)j(line.)37 b(\(This)26 b(v)-5 b(alue)26 b(is)g(captured)h
(in)e(the)i(Mak)m(e\014le)150 2419 y(v)-5 b(ariables)29
b Fr(prefix)g Fv(and)g Fr(exec_prefix)p Fv(.\))275 2547
y(Sa)m(v)m(e)46 b(for)e(a)i(small)d(n)m(um)m(b)s(er)g(of)i(example)g
(tests,)k(the)d(DejaGn)m(u)f(distribution)c(itself)j(do)s(es)h(not)150
2656 y(include)38 b(an)m(y)j(test)g(suites;)j(these)d(are)f(a)m(v)-5
b(ailable)40 b(separately)-8 b(.)71 b(T)-8 b(est)41 b(suites)e(for)h
(the)g Fo(gnu)g Fv(compiler)150 2766 y(\(testing)e(b)s(oth)g(GCC)f(and)
g(G)p Fr(++)p Fv(\))h(and)g(for)g(the)g Fo(gnu)f Fv(binary)g(utilities)
e(are)j(distributed)d(in)i(parallel)150 2875 y(with)29
b(the)h(DejaGn)m(u)h(distribution)26 b(\(but)k(pac)m(k)-5
b(aged)31 b(as)g(separate)g(\014les\).)39 b(The)30 b(test)h(suite)e
(for)h(the)g Fo(gnu)150 2985 y Fv(debugger)h(is)f(distributed)e(in)i
(parallel)g(with)f(eac)m(h)k(release)e(of)h(GDB)g(itself,)e(starting)h
(with)f(GDB)j(4.9.)150 3095 y(After)27 b(con\014guring)e(the)h(top-lev)
m(el)h(DejaGn)m(u)g(directory)-8 b(,)27 b(unpac)m(k)f(and)g
(con\014gure)g(the)h(test)g(directories)150 3204 y(for)40
b(the)h(to)s(ols)f(y)m(ou)h(w)m(an)m(t)g(to)g(test;)47
b(then,)c(in)c(eac)m(h)j(test)f(directory)-8 b(,)43 b(run)c
Fr(make)h Fv(to)h(build)c(auxiliary)150 3314 y(programs)30
b(required)f(b)m(y)h(some)h(of)f(the)h(tests.)150 3552
y Fu(A.2)67 b(Installing)47 b(DejaGn)l(u)275 3738 y Fv(T)-8
b(o)36 b(install)e(DejaGn)m(u)k(in)d(y)m(our)h(\014lesystem)f(\(either)
i(in)e(`)p Fr(/usr/local)p Fv(',)g(or)i(as)f(sp)s(eci\014ed)f(b)m(y)h
(y)m(our)150 3847 y(`)p Fr(--prefix)p Fv(')29 b(option)g(to)j
Fr(configure)p Fv(\),)c(execute)390 3969 y Fr(eg$)47
b(make)g(install)150 4098 y Fv(`)p Fr(make)29 b(install)p
Fv(')g(do)s(es)h(these)h(things)e(for)h(DejaGn)m(u:)199
4226 y(1.)61 b(Lo)s(ok)28 b(in)f(the)h(path)f(sp)s(eci\014ed)g(for)g
(executables)i(\(`)p Fr($exec_prefix)p Fv('\))d(for)h(directories)g
(called)g(`)p Fr(lib)p Fv(')330 4335 y(and)j(`)p Fr(bin)p
Fv('.)40 b(If)30 b(these)h(directories)e(do)i(not)f(exist,)h(`)p
Fr(make)e(install)p Fv(')g(creates)i(them.)199 4463 y(2.)61
b(Create)31 b(another)g(directory)f(in)f(the)h(`)p Fr(lib)p
Fv(')g(directory)-8 b(,)31 b(called)e(`)p Fr(dejagnu)p
Fv('.)199 4591 y(3.)61 b(Cop)m(y)30 b(the)h Fr(runtest)d
Fv(shell)h(script)g(in)m(to)i(`)p Fr($exec_prefix/bin)p
Fv('.)199 4719 y(4.)61 b(Cop)m(y)20 b(all)f(the)i(library)d(\014les)h
(\(used)h(to)h(supp)s(ort)d(the)j(framew)m(ork\))g(in)m(to)f(`)p
Fr($exec_prefix/lib/dejagnu)o Fv('.)199 4847 y(5.)61
b(Cop)m(y)40 b(`)p Fr(runtest.exp)p Fv(')e(in)m(to)i(`)p
Fr($exec_prefix/lib/dejagnu)o Fv('.)65 b(This)38 b(is)h(the)h(main)f
(Tcl)h(co)s(de)330 4957 y(implemen)m(ting)28 b(DejaGn)m(u.)275
5103 y(Eac)m(h)33 b(test)h(suite)e(collection)h(comes)g(with)f(simple)f
(installation)f(instructions)h(in)h(a)h(`)p Fr(README)p
Fv(')f(\014le;)150 5213 y(in)43 b(general,)49 b(the)c(test)g(suites)f
(are)h(designed)e(to)j(b)s(e)e(unpac)m(k)m(ed)g(in)g(the)g(source)h
(directory)f(for)h(the)150 5322 y(corresp)s(onding)28
b(to)s(ol,)j(and)f(extract)i(in)m(to)e(a)h(directory)f(called)f(`)p
Fr(testsuite)p Fv('.)p eop
%%Page: 50 52
50 51 bop 150 -116 a Fv(50)2364 b(DejaGn)m(u)32 b(T)-8
b(esting)30 b(F)-8 b(ramew)m(ork)p eop
%%Page: 51 53
51 52 bop 150 -116 a Fv(Index)3286 b(51)150 100 y Fs(Index)150
1097 y Fu(-)150 1255 y Ff(--all)27 b Fe(\()p Ff(runtest)g
Fe(option\))20 b Fd(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g
(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)46 b Fe(10)150
1366 y Ff(--baud)27 b Fe(\()p Ff(runtest)g Fe(option\))19
b Fd(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g
(.)h(.)f(.)g(.)h(.)44 b Fe(11)150 1476 y Ff(--build)27
b Fe(\()p Ff(runtest)g Fe(option\))17 b Fd(.)c(.)g(.)f(.)g(.)h(.)f(.)g
(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)43
b Fe(11)150 1587 y Ff(--connect)28 b Fe(\()p Ff(runtest)f
Fe(option\))15 b Fd(.)d(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h
(.)f(.)g(.)h(.)f(.)40 b Fe(11)150 1698 y Ff(--debug)27
b Fe(\()p Ff(runtest)g Fe(option\))17 b Fd(.)c(.)g(.)f(.)g(.)h(.)f(.)g
(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)43
b Fe(11)150 1809 y Ff(--help)27 b Fe(\()p Ff(runtest)g
Fe(option\))19 b Fd(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f
(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)44 b Fe(11)150 1920
y Ff(--host)27 b Fe(\()p Ff(runtest)g Fe(option\))19
b Fd(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g
(.)h(.)f(.)g(.)h(.)44 b Fe(11)150 2031 y Ff(--name)27
b Fe(\()p Ff(runtest)g Fe(option\))19 b Fd(.)12 b(.)h(.)f(.)g(.)h(.)f
(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)44
b Fe(11)150 2142 y Ff(--objdir)27 b Fe(\()p Ff(runtest)g
Fe(option\))16 b Fd(.)d(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f
(.)g(.)h(.)f(.)g(.)g(.)42 b Fe(12)150 2252 y Ff(--outdir)27
b Fe(\()p Ff(runtest)g Fe(option\))16 b Fd(.)d(.)f(.)h(.)f(.)g(.)h(.)f
(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)42 b Fe(12)150
2363 y Ff(--reboot)27 b Fe(\()p Ff(runtest)g Fe(option\))16
b Fd(.)d(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)
g(.)g(.)42 b Fe(12)150 2474 y Ff(--srcdir)27 b Fe(\()p
Ff(runtest)g Fe(option\))16 b Fd(.)d(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)
f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)42 b Fe(12)150 2585
y Ff(--strace)27 b Fe(\()p Ff(runtest)g Fe(option\))16
b Fd(.)d(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)
g(.)g(.)42 b Fe(12)150 2696 y Ff(--target)27 b Fe(\()p
Ff(runtest)g Fe(option\))16 b Fd(.)d(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)
f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)42 b Fe(12)150 2807
y Ff(--tool)27 b Fe(\()p Ff(runtest)g Fe(option\))19
b Fd(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g
(.)h(.)f(.)g(.)h(.)44 b Fe(10)150 2918 y Ff(--tool)27
b Fe(and)e(naming)g(con)n(v)n(en)n(tions)9 b Fd(.)j(.)h(.)f(.)g(.)h(.)f
(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)34 b Fe(21)150 3028
y Ff(--verbose)28 b Fe(\()p Ff(runtest)f Fe(option\))15
b Fd(.)d(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)
f(.)40 b Fe(13)150 3139 y Ff(--version)28 b Fe(\()p Ff(runtest)f
Fe(option\))15 b Fd(.)d(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h
(.)f(.)g(.)h(.)f(.)40 b Fe(13)150 3250 y Ff(-b)26 b Fe(\()p
Ff(runtest)h Fe(option\))7 b Fd(.)12 b(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h
(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)32
b Fe(11)150 3361 y Ff(-v)26 b Fe(\()p Ff(runtest)h Fe(option\))7
b Fd(.)12 b(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f
(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)32 b Fe(13)150
3472 y Ff(-V)26 b Fe(\()p Ff(runtest)h Fe(option\))7
b Fd(.)12 b(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f
(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)32 b Fe(13)150
3805 y Fu(.)150 3962 y Ff(.exp)14 b Fd(.)f(.)f(.)g(.)h(.)f(.)g(.)h(.)f
(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)
f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)40
b Fe(1)150 4296 y Fu(A)150 4453 y Ff(absolute)27 b Fc(path)8
b Fd(.)k(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)
g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)33
b Fe(28)150 4564 y(adding)26 b(a)g(target)14 b Fd(.)f(.)f(.)h(.)f(.)g
(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)
g(.)h(.)f(.)g(.)h(.)f(.)g(.)40 b Fe(48)150 4675 y(adding)26
b(a)g(test)f(case)8 b Fd(.)13 b(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h
(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)33
b Fe(40)150 4786 y Ff(all_flag)7 b Fd(.)14 b(.)e(.)g(.)h(.)f(.)g(.)h(.)
f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h
(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)32 b Fe(17)150
4897 y(am)n(biguit)n(y)-6 b(,)24 b(required)i(for)g(POSIX)11
b Fd(.)g(.)i(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)
37 b Fe(7)150 5007 y(arc)n(hiv)n(e)26 b(ob)t(ject)g(\014les)15
b Fd(.)e(.)g(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)
g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)41 b Fe(30)150
5118 y(auxiliary)26 b(\014les,)h(building)16 b Fd(.)c(.)h(.)f(.)g(.)h
(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)
g(.)43 b Fe(3)150 5229 y(auxiliary)26 b(programs)11 b
Fd(.)i(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h
(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)36 b Fe(49)150
5340 y(auxiliary)26 b(test)g(programs)9 b Fd(.)j(.)g(.)h(.)f(.)g(.)h(.)
f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)34
b Fe(12)2025 424 y Fu(B)2025 557 y Ff(baud)13 b Fd(.)g(.)f(.)g(.)g(.)h
(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)
h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)38
b Fe(17)2025 657 y(baud)25 b(rate,)h(sp)r(ecifying)12
b Fd(.)i(.)e(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)
f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)38 b Fe(11)2025 756 y(bps,)25
b(sp)r(ecifying)8 b Fd(.)13 b(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h
(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)
g(.)h(.)33 b Fe(11)2025 856 y Ff(bt)15 b Fd(.)e(.)f(.)h(.)f(.)g(.)h(.)f
(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)
h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)41
b Fe(31)2025 956 y(bug)25 b(n)n(um)n(b)r(er)16 b Fd(.)11
b(.)h(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g
(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)42
b Fe(42)2025 1055 y(bug)25 b(n)n(um)n(b)r(er,)f(extra)15
b Fd(.)e(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)
f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)41 b Fe(42)2025
1155 y Ff(bug_id)10 b Fd(.)j(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)
h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f
(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)35 b Fe(42)2025 1254
y(build)25 b(con\014g)h(name,)f(c)n(hanging)c Fd(.)12
b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)46
b Fe(11)2025 1354 y(build)25 b(host)h(con\014guration)g(test)14
b Fd(.)f(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)
f(.)40 b Fe(25)2025 1454 y Ff(build_triplet)18 b Fd(.)d(.)d(.)g(.)h(.)f
(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)
h(.)f(.)g(.)h(.)f(.)g(.)h(.)43 b Fe(17)2025 1553 y(built)25
b(in)h(pro)r(cedures,)g(DejaGn)n(u)19 b Fd(.)12 b(.)h(.)f(.)g(.)h(.)f
(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)45 b Fe(23)2025
1819 y Fu(C)2025 1952 y Fe(C)26 b(torture)f(test)d Fd(.)12
b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f
(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)47
b Fe(39)2025 2052 y(canadian)26 b(cross)h(con\014guration)f(test)12
b Fd(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)38
b Fe(25)2025 2151 y(cancelling)27 b(exp)r(ected)e(failure)11
b Fd(.)j(.)e(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)
g(.)h(.)f(.)37 b Fe(26)2025 2251 y Ff(check)26 b Fe(mak)n(e\014le)f
(target)e Fd(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g
(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)48 b Fe(3)2025
2351 y Ff(clear_xfail)28 b Fc(con\014g)22 b Fd(.)12 b(.)h(.)f(.)g(.)g
(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)
g(.)h(.)f(.)41 b Fe(26)2025 2450 y(Closing)27 b(a)f(remote)f
(connection)14 b Fd(.)g(.)e(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h
(.)f(.)g(.)g(.)h(.)40 b Fe(27)2025 2550 y(command)24
b(line)i(option)g(v)l(ariables)13 b Fd(.)g(.)g(.)f(.)g(.)h(.)f(.)g(.)h
(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)39 b Fe(17)2025 2650 y(command)24
b(line)i(options)13 b Fd(.)g(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)
g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)40
b Fe(9)2025 2749 y(command)24 b(line)i(Tcl)g(v)l(ariable)g
(de\014nition)18 b Fd(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)44
b Fe(10)2025 2849 y(comm)n(unications)24 b(pro)r(cedures)9
b Fd(.)k(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)
f(.)g(.)35 b Fe(26)2025 2948 y Ff(comp_output)23 b Fd(.)12
b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h
(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)46
b Fe(42)2025 3048 y(comparing)25 b(\014les)c Fd(.)13
b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g
(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)46 b Fe(28)2025
3148 y(compile)25 b(a)h(\014le)14 b Fd(.)f(.)g(.)f(.)g(.)h(.)f(.)g(.)g
(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)
g(.)h(.)f(.)g(.)h(.)f(.)40 b Fe(29)2025 3247 y(con\014guration)26
b(dep)r(enden)n(t)e(defaults)14 b Fd(.)f(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)
g(.)h(.)f(.)g(.)h(.)39 b Fe(15)2025 3347 y(con\014guring)26
b(DejaGn)n(u)16 b Fd(.)c(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)
f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)42 b
Fe(49)2025 3447 y(connecting)26 b(to)g(target)e Fd(.)13
b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g
(.)h(.)f(.)g(.)h(.)f(.)g(.)50 b Fe(11)2025 3546 y Ff(connectmode)23
b Fd(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f
(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)46
b Fe(17)2025 3646 y(con)n(v)n(erting)25 b(relativ)n(e)i(paths)e(to)h
(absolute)d Fd(.)12 b(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)48
b Fe(28)2025 3746 y(Core)26 b(In)n(ternal)g(Pro)r(cedures)14
b Fd(.)f(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)
h(.)f(.)g(.)h(.)39 b Fe(23)2025 3845 y(cross)27 b(con\014guration)14
b Fd(.)e(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)
h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)40 b Fe(4)2025
3945 y(curren)n(t)25 b(test)h(sub)r(directory)18 b Fd(.)12
b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g
(.)h(.)f(.)44 b Fe(42)2025 4211 y Fu(D)2025 4344 y Ff(dbg.log)27
b Fe(\014le)19 b Fd(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f
(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)
h(.)f(.)g(.)45 b Fe(11)2025 4443 y(debug)25 b(log)c Fd(.)12
b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g
(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)45
b Fe(36)2025 4543 y(debug)25 b(log)i(for)f(test)g(cases)8
b Fd(.)13 b(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f
(.)g(.)g(.)h(.)f(.)g(.)h(.)33 b Fe(11)2025 4642 y Ff(debugger.exp)22
b Fd(.)12 b(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h
(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)45
b Fe(30)2025 4742 y(debugging)26 b(a)g(test)f(case)f
Fd(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g
(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)48 b Fe(40)2025 4842 y(default)26
b(options,)g(con)n(trolling)c Fd(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h
(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)46 b Fe(17)2025
4941 y(defaults,)27 b(option)11 b Fd(.)h(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)
h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g
(.)h(.)f(.)g(.)37 b Fe(17)2025 5041 y(defaults,)27 b(setting)f(in)f
(init)h(\014le)9 b Fd(.)k(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f
(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)35 b Fe(23)2025 5141 y(DejaGn)n(u)25
b(con\014guration)18 b Fd(.)13 b(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)
h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)44 b
Fe(49)2025 5240 y(DejaGn)n(u)25 b(test)h(driv)n(er)11
b Fd(.)h(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)
h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)38 b Fe(9)2025
5340 y(DejaGn)n(u,)26 b(the)f(name)18 b Fd(.)12 b(.)g(.)g(.)h(.)f(.)g
(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)
f(.)g(.)h(.)44 b Fe(6)p eop
%%Page: 52 54
52 53 bop 150 -116 a Fv(52)2364 b(DejaGn)m(u)32 b(T)-8
b(esting)30 b(F)-8 b(ramew)m(ork)150 152 y Fe(Delete)26
b(a)g(w)n(atc)n(hp)r(oin)n(t.)16 b Fd(.)d(.)f(.)h(.)f(.)g(.)h(.)f(.)g
(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)42
b Fe(31)150 253 y(design)26 b(goals)18 b Fd(.)c(.)f(.)f(.)g(.)h(.)f(.)g
(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)
g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)44 b Fe(5)150 354
y(detailed)26 b(log)f Fd(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h
(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)
h(.)f(.)g(.)h(.)49 b Fe(36)150 455 y Ff(diff)27 b Fc(\014lename)i
(\014lename)18 b Fd(.)12 b(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g
(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)40 b Fe(28)150
555 y(directories)27 b(matc)n(hing)e(a)h(pattern)18 b
Fd(.)11 b(.)i(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)43
b Fe(28)150 656 y(directory)26 b(names)f(and)g Ff(--tool)17
b Fd(.)d(.)e(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)
g(.)43 b Fe(21)150 757 y(do)n(wnload)26 b(a)g(\014le)20
b Fd(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h
(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)45
b Fe(27)150 858 y Ff(download)27 b Fc(\014le)j Fe([)c
Fc(spa)n(wnid)j Fe(])18 b Fd(.)13 b(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f
(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)44 b Fe(27)150
959 y(do)n(wnload,)27 b Ff(tip)13 b Fd(.)g(.)f(.)h(.)f(.)g(.)h(.)f(.)g
(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)
f(.)g(.)h(.)f(.)g(.)39 b Fe(27)150 1059 y Ff(dumplocals)28
b Fd(expr)15 b(.)e(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g
(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)32
b Fe(30)150 1160 y Ff(dumprocs)27 b Fd(expr)18 b(.)c(.)e(.)g(.)h(.)f(.)
g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h
(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)35 b Fe(30)150 1261 y
Ff(dumpvars)27 b Fd(expr)18 b(.)c(.)e(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g
(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)
g(.)h(.)f(.)35 b Fe(30)150 1362 y Ff(dumpwatch)28 b Fd(expr)16
b(.)d(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h
(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)34
b Fe(30)150 1635 y Fu(E)150 1770 y Ff(echo.exp)8 b Fd(.)14
b(.)e(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g
(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)
g(.)34 b Fe(5)150 1870 y Ff(ERROR)24 b Fd(.)12 b(.)h(.)f(.)g(.)h(.)f(.)
g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h
(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)49 b Fe(9,)26
b(23)150 1971 y(example)9 b Fd(.)i(.)i(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g
(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)
f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)35 b Fe(5)150
2072 y Ff(exec_output)23 b Fd(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)
g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h
(.)f(.)g(.)h(.)f(.)46 b Fe(42)150 2173 y Ff(exec_prefix)p
Fe(,)28 b(con\014gure)e(options.)9 b Fd(.)k(.)g(.)f(.)g(.)h(.)f(.)g(.)h
(.)f(.)g(.)h(.)f(.)g(.)h(.)34 b Fe(49)150 2274 y Ff(execute_anywhere)29
b Fd(cmd)t(line)17 b(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f
(.)g(.)h(.)f(.)g(.)h(.)f(.)37 b Fe(30)150 2374 y(executing)26
b(commands)e(remotely)18 b Fd(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)
f(.)g(.)h(.)f(.)g(.)h(.)44 b Fe(30)150 2475 y(existing)26
b(tests,)h(running)10 b Fd(.)h(.)h(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f
(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)36
b Fe(3)150 2576 y(exit)25 b(co)r(de)i(from)e Ff(runtest)8
b Fd(.)14 b(.)f(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g
(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)35 b Fe(9)150 2677 y(exit)25
b(pro)r(cedure,)h(tested)g(to)r(ols)14 b Fd(.)g(.)e(.)h(.)f(.)g(.)h(.)f
(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)40 b Fe(31)150
2778 y Ff(exit_remote_shell)29 b Fc(spa)n(wnid)10 b Fd(.)j(.)g(.)f(.)g
(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)33
b Fe(27)150 2878 y Ff(exp)26 b Fe(\014lename)f(su\016x)15
b Fd(.)d(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)
g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)41 b Fe(21)150
2979 y Ff(expect)27 b Fe(in)n(ternal)f(tracing)10 b Fd(.)j(.)f(.)h(.)f
(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)
h(.)35 b Fe(12)150 3080 y Ff(expect)27 b Fe(script)f(names)c
Fd(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h
(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)48 b Fe(1)150
3181 y Ff(expect)27 b Fe(scripting)f(language)21 b Fd(.)12
b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f
(.)g(.)h(.)45 b Fe(8)150 3281 y Ff(expect_out\(buffer\))10
b Fd(.)17 b(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g
(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)36 b Fe(42)150
3382 y(exp)r(ected)25 b(failure)20 b Fd(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g
(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)
g(.)h(.)44 b Fe(9,)26 b(25)150 3483 y(exp)r(ected)f(failure,)i
(cancelling)21 b Fd(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h
(.)f(.)g(.)h(.)f(.)g(.)h(.)44 b Fe(26)150 3756 y Fu(F)150
3891 y Ff(FAIL)7 b Fd(.)13 b(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)
f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g
(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)34 b Fe(7,)26
b(9)150 3992 y Ff(fail)h(")p Fc(string)6 b Ff(")g Fd(.)14
b(.)e(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f
(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)32
b Fe(24)150 4093 y(failing)c(test,)e(exp)r(ected)15 b
Fd(.)d(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f
(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)41 b Fe(9)150 4193
y(failing)28 b(test,)e(unexp)r(ected)9 b Fd(.)i(.)h(.)g(.)h(.)f(.)g(.)h
(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)35
b Fe(9)150 4294 y(failure,)27 b(exp)r(ected)14 b Fd(.)e(.)h(.)f(.)g(.)h
(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)
h(.)f(.)g(.)h(.)f(.)g(.)40 b Fe(25)150 4395 y(failure,)27
b(POSIX)e(de\014nition)17 b Fd(.)12 b(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h
(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)43
b Fe(7)150 4496 y(\014lename)25 b(for)h(test)g(\014les)14
b Fd(.)f(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)
g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)40 b Fe(21)150 4596 y(\014les)26
b(matc)n(hing)f(a)h(pattern)18 b Fd(.)12 b(.)g(.)g(.)g(.)h(.)f(.)g(.)h
(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)43
b Fe(28)150 4697 y Ff(find)27 b Fc(dir)k(pattern)13 b
Fd(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h
(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)39 b Fe(28)150
4798 y Ff(findfile)7 b Fd(.)14 b(.)e(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)
f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h
(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)32 b Fe(22)150 4899 y(\014nding)25
b(\014le)h(di\013erences)17 b Fd(.)c(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)
f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)43
b Fe(28)150 5000 y(future)25 b(directions)15 b Fd(.)f(.)e(.)g(.)h(.)f
(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)
f(.)g(.)h(.)f(.)g(.)g(.)h(.)41 b Fe(8)2025 501 y Fu(G)2025
648 y Ff(gdb.t00/echo.exp)14 b Fd(.)i(.)c(.)h(.)f(.)g(.)h(.)f(.)g(.)h
(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)
g(.)41 b Fe(5)2025 755 y Ff(get_warning_threshold)29
b Fd(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f
(.)g(.)g(.)h(.)f(.)50 b Fe(24)2025 862 y Ff(getdirs)27
b Fc(dir)d Fd(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)
g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h
(.)f(.)44 b Fe(28)2025 968 y Ff(getdirs)27 b Fc(dir)k(pattern)9
b Fd(.)j(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)
f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)35 b Fe(28)2025 1075
y Ff(getenv)27 b Fc(v)l(ar)19 b Fd(.)13 b(.)f(.)g(.)h(.)f(.)g(.)g(.)h
(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)
h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)40 b Fe(29)2025 1181
y(getting)26 b(en)n(vironmen)n(t)e(v)l(ariables)11 b
Fd(.)i(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)37
b Fe(29)2025 1288 y(GNA)-6 b(TS)25 b(bug)g(n)n(um)n(b)r(er)15
b Fd(.)c(.)h(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)
h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)41 b Fe(42)2025 1395
y(Granlund,)25 b(T)-6 b(orb)t(jorn)12 b Fd(.)i(.)e(.)g(.)h(.)f(.)g(.)h
(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)
g(.)38 b Fe(39)2025 1501 y Ff(grep)26 b Fc(\014lename)j(regexp)10
b Fd(.)i(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)
h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)33 b Fe(28)2025 1608
y Ff(grep)26 b Fc(\014lename)j(regexp)f Ff(line)7 b Fd(.)13
b(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f
(.)g(.)33 b Fe(28)2025 1915 y Fu(H)2025 2063 y Fe(help)25
b(with)h Ff(runtest)21 b Fd(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f
(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)45
b Fe(11)2025 2170 y(hin)n(ts)25 b(on)h(test)f(case)i(writing)12
b Fd(.)h(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)
g(.)h(.)f(.)g(.)38 b Fe(41)2025 2276 y(host)26 b(con\014g)f(name,)h(c)n
(hanging)17 b Fd(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f
(.)g(.)h(.)f(.)g(.)h(.)42 b Fe(11)2025 2383 y(host)26
b(con\014guration)g(test)c Fd(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)
h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)47
b Fe(25)2025 2490 y(host,)26 b(explained)19 b Fd(.)13
b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g
(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)45 b Fe(49)2025
2596 y Ff(host_triplet)22 b Fd(.)12 b(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g
(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)
g(.)h(.)f(.)g(.)45 b Fe(17)2025 2904 y Fu(I)2025 3052
y Ff(ignoretests)23 b Fd(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g
(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)
f(.)g(.)h(.)46 b Fe(17)2025 3158 y(init)26 b(\014le)f(name)14
b Fd(.)e(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)
g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)40
b Fe(22)2025 3265 y(init)26 b(\014le,)g(purp)r(ose)16
b Fd(.)c(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)
g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)42 b
Fe(22)2025 3372 y(initialization)7 b Fd(.)14 b(.)f(.)f(.)g(.)h(.)f(.)g
(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)
f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)33 b Fe(22)2025 3478
y(input)25 b(\014les)15 b Fd(.)d(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)
h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g
(.)h(.)f(.)g(.)g(.)h(.)f(.)41 b Fe(34)2025 3585 y(installed)26
b(to)r(ol)h(name)c Fd(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)
g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)50
b Fe(24)2025 3691 y(installing)27 b(DejaGn)n(u)11 b Fd(.)i(.)f(.)g(.)h
(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)
h(.)f(.)g(.)h(.)f(.)37 b Fe(49)2025 3798 y(in)n(ternal)26
b(details)c Fd(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h
(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)47
b Fe(21)2025 3904 y(in)n(v)n(oking)23 b Fd(.)13 b(.)f(.)g(.)g(.)h(.)f
(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)
f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)50
b Fe(9)2025 4011 y(IP)25 b(net)n(w)n(ork)h(pro)r(cedures)20
b Fd(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g
(.)h(.)f(.)g(.)h(.)f(.)g(.)46 b Fe(27)2025 4118 y Ff(isbuild)27
b(")p Fc(host)r Ff(")12 b Fd(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)
h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f
(.)g(.)38 b Fe(25)2025 4224 y Ff(ishost)27 b(")p Fc(host)r
Ff(")13 b Fd(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)
f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)39
b Fe(25)2025 4331 y Ff(isnative)7 b Fd(.)14 b(.)e(.)g(.)h(.)f(.)g(.)h
(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)
g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)32 b Fe(25)2025
4437 y Ff(istarget)27 b(")p Fc(target)r Ff(")17 b Fd(.)c(.)g(.)f(.)g(.)
h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f
(.)g(.)h(.)f(.)g(.)43 b Fe(25)2025 4745 y Fu(K)2025 4893
y Ff(kermit)27 b Fc(p)r(ort)g(bps)18 b Fd(.)13 b(.)f(.)g(.)h(.)f(.)g(.)
h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g
(.)g(.)h(.)f(.)g(.)42 b Fe(27)2025 5000 y Ff(kermit)p
Fe(,)27 b(remote)e(testing)h(via)9 b Fd(.)k(.)f(.)g(.)h(.)f(.)g(.)h(.)f
(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)34 b Fe(11)p
eop
%%Page: 53 55
53 54 bop 150 -116 a Fv(Index)3286 b(53)150 695 y Fu(L)150
850 y Fe(last)26 b(command)e(output)c Fd(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h
(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)46
b Fe(42)150 960 y Ff(lib/debugger.exp)13 b Fd(.)j(.)d(.)f(.)g(.)h(.)f
(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)
h(.)f(.)g(.)39 b Fe(30)150 1070 y Ff(lib/remote.exp)16
b Fd(.)g(.)c(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)
h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)42 b
Fe(26)150 1180 y Ff(lib/target.exp)16 b Fd(.)g(.)c(.)g(.)h(.)f(.)g(.)h
(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)
g(.)h(.)f(.)g(.)42 b Fe(29)150 1289 y Ff(lib/utils.exp)18
b Fd(.)d(.)d(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)
f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)43
b Fe(28)150 1399 y(Lib)r(es,)27 b(Don)18 b Fd(.)12 b(.)g(.)h(.)f(.)g(.)
h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f
(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)44 b Fe(8)150
1509 y(list,)27 b(pruning)13 b Fd(.)f(.)g(.)g(.)g(.)h(.)f(.)g(.)h(.)f
(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)
f(.)g(.)h(.)f(.)g(.)h(.)38 b Fe(29)150 1619 y Ff(list_targets)22
b Fd(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f
(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)45
b Fe(29)150 1729 y(lists)27 b(supp)r(orted)e(targets)6
b Fd(.)13 b(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f
(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)32 b Fe(29)150 1839 y(load)26
b(library)g(\014le)15 b Fd(.)e(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g
(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)
g(.)41 b Fe(25)150 1948 y(load)26 b(pro)r(cedure,)g(tested)g(to)r(ols)7
b Fd(.)13 b(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g
(.)h(.)f(.)32 b Fe(31)150 2058 y Ff(load_lib)27 b(")p
Fc(library-\014le)t Ff(")15 b Fd(.)e(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)
f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)40
b Fe(25)150 2168 y(lo)r(cal)27 b(`)p Ff(site.exp)p Fe(')e
Fd(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h
(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)47
b Fe(19)150 2278 y(log)27 b(\014les,)f(where)g(to)g(write)7
b Fd(.)13 b(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f
(.)g(.)g(.)h(.)f(.)g(.)h(.)32 b Fe(12)150 2388 y(Lupton,)25
b(Rob)r(ert)10 b Fd(.)i(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g
(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)36
b Fe(43)150 2715 y Fu(M)150 2870 y Ff(make)27 b Fe(builds)e(part)h(of)g
(tests)9 b Fd(.)k(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g
(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)35 b Fe(49)150 2980 y
Ff(make)27 b(check)12 b Fd(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f
(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)
h(.)f(.)g(.)h(.)f(.)g(.)38 b Fe(3)150 3090 y(master)25
b(`)p Ff(site.exp)p Fe(')g Fd(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)
h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)48
b Fe(18)150 3199 y(Menapace,)27 b(Julia)20 b Fd(.)13
b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f
(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)45 b Fe(6)150
3309 y Ff(mondfe)10 b Fd(.)j(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)
f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g
(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)35 b Fe(32)150 3419
y Ff(mondfe)p Fe(,)27 b(remote)f(testing)g(via)9 b Fd(.)j(.)g(.)h(.)f
(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)34
b Fe(11)150 3746 y Fu(N)150 3901 y Fe(name)25 b(\\DejaGn)n(u")c
Fd(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f
(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)46
b Fe(6)150 4011 y(name)25 b(for)h(remote)g(test)f(mac)n(hine)7
b Fd(.)12 b(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h
(.)32 b Fe(12)150 4121 y(name)25 b(transformations)15
b Fd(.)e(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)
g(.)h(.)f(.)g(.)h(.)f(.)g(.)41 b Fe(24)150 4231 y(name,)25
b(initialization)j(mo)r(dule)13 b Fd(.)e(.)i(.)f(.)g(.)h(.)f(.)g(.)h(.)
f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)38 b Fe(22)150
4341 y(naming)25 b(con)n(v)n(en)n(tions)14 b Fd(.)e(.)h(.)f(.)g(.)h(.)f
(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)
f(.)g(.)40 b Fe(21)150 4450 y(naming)25 b(tests)h(to)g(run)14
b Fd(.)e(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)
f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)40 b Fe(10)150 4560
y(nativ)n(e)25 b(con\014guration)11 b Fd(.)j(.)e(.)g(.)h(.)f(.)g(.)h(.)
f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g
(.)h(.)37 b Fe(4)150 4670 y(nativ)n(e)25 b(con\014guration)i(test)8
b Fd(.)k(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)
g(.)h(.)f(.)g(.)h(.)33 b Fe(25)150 4780 y(net)n(w)n(ork)25
b(\(IP\))h(pro)r(cedures)8 b Fd(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g
(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)34
b Fe(27)150 4890 y Ff(NOTE)6 b Fd(.)13 b(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)
f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g
(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)32 b Fe(9,)26
b(24)150 5000 y Ff(note)h(")p Fc(string)6 b Ff(")g Fd(.)14
b(.)e(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f
(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)32
b Fe(24)2025 84 y Fu(O)2025 217 y Ff(objdir)10 b Fd(.)j(.)f(.)h(.)f(.)g
(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)
g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)35
b Fe(17)2025 316 y(ob)t(ject)26 b(directory)e Fd(.)13
b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g
(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)50 b Fe(12)2025
416 y(Op)r(ening)25 b(a)h(remote)f(connection)15 b Fd(.)e(.)f(.)g(.)h
(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)40
b Fe(26)2025 516 y(op)r(erating)26 b(principles)13 b
Fd(.)g(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h
(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)39 b Fe(21)2025 615
y(option)26 b(defaults)c Fd(.)13 b(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g
(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)
g(.)h(.)47 b Fe(17)2025 715 y(option)26 b(list,)g Ff(runtest)15
b Fd(.)f(.)e(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)
f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)41 b Fe(9)2025
814 y(options)7 b Fd(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h
(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)
h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)33 b Fe(9)2025 914
y(options)26 b(for)g Ff(runtest)p Fe(,)i(common)15 b
Fd(.)c(.)h(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f
(.)41 b Fe(4)2025 1014 y(options,)26 b(Tcl)h(v)l(ariables)f(for)h
(defaults)18 b Fd(.)13 b(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)
44 b Fe(17)2025 1113 y(order)26 b(of)g(tests)15 b Fd(.)e(.)f(.)g(.)h(.)
f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h
(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)41 b Fe(21)2025
1213 y(Ousterhout,)25 b(John)h(K.)16 b Fd(.)c(.)g(.)h(.)f(.)g(.)h(.)f
(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)
h(.)42 b Fe(8)2025 1313 y Ff(outdir)10 b Fd(.)j(.)f(.)h(.)f(.)g(.)h(.)f
(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)
h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)35
b Fe(17)2025 1412 y(output)24 b(directory)14 b Fd(.)f(.)g(.)f(.)g(.)h
(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)
g(.)h(.)f(.)g(.)h(.)f(.)40 b Fe(12)2025 1512 y(output)24
b(\014les)10 b Fd(.)j(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f
(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)
h(.)f(.)g(.)36 b Fe(35)2025 1612 y(output,)25 b(additional)e
Fd(.)12 b(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f
(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)48 b Fe(13)2025
1711 y(o)n(v)n(erriding)26 b(`)p Ff(site.exp)p Fe(')f
Fd(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g
(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)49 b Fe(15)2025 1811 y(o)n(v)n(erview)20
b Fd(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h
(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)
h(.)f(.)g(.)46 b Fe(1)2025 2077 y Fu(P)2025 2210 y Ff(PASS)7
b Fd(.)13 b(.)g(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f
(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)
f(.)g(.)g(.)h(.)f(.)33 b Fe(6,)27 b(9)2025 2309 y Ff(pass)f(")p
Fc(string)6 b Ff(")g Fd(.)14 b(.)f(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h
(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)
g(.)h(.)f(.)32 b Fe(24)2025 2409 y(path)25 b(lo)r(okup)15
b Fd(.)e(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)
f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)41
b Fe(28)2025 2509 y(pattern)25 b(matc)n(h,)g(directory)d
Fd(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f
(.)g(.)h(.)f(.)g(.)48 b Fe(28)2025 2608 y(pattern)25
b(matc)n(h,)g(\014lenames)18 b Fd(.)13 b(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)
f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)44 b
Fe(28)2025 2708 y Ff(perror)27 b(")p Fc(string)33 b(n)n(um)n(b)r(er)5
b Ff(")h Fd(.)11 b(.)h(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f
(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)32 b Fe(23)2025 2807 y(p)r(ersonal)26
b(con\014g)g(`)p Ff(site.exp)p Fe(')12 b Fd(.)j(.)e(.)f(.)g(.)h(.)f(.)g
(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)38
b Fe(20)2025 2907 y Ff(pop_host)7 b Fd(.)14 b(.)e(.)g(.)h(.)f(.)g(.)h
(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)
g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)32 b Fe(29)2025
3007 y Ff(pop_target)24 b Fd(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g
(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)
f(.)g(.)h(.)f(.)g(.)48 b Fe(29)2025 3106 y(p)r(orting)26
b(to)g(a)g(new)g(host)18 b Fd(.)12 b(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)
h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)43
b Fe(48)2025 3206 y(POSIX)24 b(conformance)e Fd(.)13
b(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f
(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)48 b Fe(6)2025 3306 y
Ff(prefix)p Fe(,)27 b(con\014gure)f(options)9 b Fd(.)j(.)h(.)f(.)g(.)h
(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)34
b Fe(49)2025 3405 y(Prin)n(t)25 b(a)h(bac)n(ktrace)17
b Fd(.)c(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)
f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)43 b Fe(31)2025
3505 y(Prin)n(t)25 b(global)j(v)l(ariable)e(v)l(alues)14
b Fd(.)e(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)
f(.)g(.)40 b Fe(30)2025 3605 y(Prin)n(t)25 b(lo)r(cal)j(v)l(ariable)e
(v)l(alue)15 b Fd(.)d(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f
(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)41 b Fe(30)2025 3704 y(Prin)n(t)25
b(pro)r(cedure)h(b)r(o)r(dies)15 b Fd(.)e(.)f(.)g(.)h(.)f(.)g(.)h(.)f
(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)40
b Fe(30)2025 3804 y Ff(print)26 b Fd(var)d(.)12 b(.)g(.)h(.)f(.)g(.)h
(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)
h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)39 b Fe(31)2025
3904 y(Prin)n(t)25 b(w)n(atc)n(hp)r(oin)n(ts)8 b Fd(.)14
b(.)e(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f
(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)34 b Fe(30)2025
4003 y(Prin)n(ting)26 b(v)l(ariable)g(v)l(alues)21 b
Fd(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g
(.)h(.)f(.)g(.)h(.)f(.)47 b Fe(31)2025 4103 y(PRMS)25
b(bug)h(n)n(um)n(b)r(er)17 b Fd(.)c(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h
(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)46
b Fe(42)2025 4202 y Ff(prms_id)8 b Fd(.)14 b(.)e(.)g(.)h(.)f(.)g(.)h(.)
f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h
(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)34 b Fe(42)2025
4302 y(problem,)25 b(detected)g(b)n(y)g(test)h(case)17
b Fd(.)c(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)
44 b Fe(9)2025 4402 y Ff(prune)26 b Fc(list)i(pattern)9
b Fd(.)k(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)
h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)35 b Fe(29)2025
4501 y Ff(prune_system_crud)29 b Fc(system)c(text)d Fd(.)13
b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)47
b Fe(29)2025 4601 y(pruning)25 b(system)g(output,)g(examining)g
(program)g(output)2193 4701 y Fd(.)12 b(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g
(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)
g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)40
b Fe(29)2025 4800 y Ff(psource)27 b Fc(\014lename)22
b Fd(.)12 b(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h
(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)44 b Fe(28)2025
4900 y Ff(push_host)27 b Fd(name)14 b(.)f(.)f(.)h(.)f(.)g(.)h(.)f(.)g
(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)
g(.)h(.)f(.)34 b Fe(29)2025 5000 y Ff(push_target)28
b Fd(name)i(.)12 b(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f
(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)49 b Fe(29)p
eop
%%Page: 54 56
54 55 bop 150 -116 a Fv(54)2364 b(DejaGn)m(u)32 b(T)-8
b(esting)30 b(F)-8 b(ramew)m(ork)150 657 y Fu(Q)150 810
y Ff(quit)13 b Fd(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h
(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)
g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)38 b Fe(31)150 919
y(Quiting)26 b(DejaGn)n(u)19 b Fd(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)
h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g
(.)g(.)45 b Fe(31)150 1243 y Fu(R)150 1396 y Fe(ranlib)26
b(a)g(\014le)8 b Fd(.)k(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g
(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)
f(.)g(.)h(.)33 b Fe(30)150 1506 y Ff(reboot)10 b Fd(.)j(.)g(.)f(.)g(.)h
(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)
g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)35
b Fe(17)150 1615 y(reb)r(o)r(oting)27 b(remote)e(targets)c
Fd(.)12 b(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h
(.)f(.)g(.)h(.)f(.)45 b Fe(12)150 1724 y(regular)27 b(expression,)f
(\014le)g(con)n(ten)n(ts)18 b Fd(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h
(.)f(.)g(.)h(.)f(.)g(.)44 b Fe(28)150 1833 y(remote)25
b(connection)h(pro)r(cedures)8 b Fd(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h(.)f
(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)33 b Fe(26)150 1942
y(remote)25 b(connection,)i(ending)12 b Fd(.)g(.)h(.)f(.)g(.)h(.)f(.)g
(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)38
b Fe(27)150 2052 y(remote)25 b(test)h(mac)n(hine)f(name)11
b Fd(.)h(.)g(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)
h(.)f(.)g(.)37 b Fe(12)150 2161 y(remote)25 b(testb)r(ed,)h(connecting)
g(to)8 b Fd(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h
(.)f(.)g(.)34 b Fe(11)150 2270 y(remote)25 b(testing)13
b Fd(.)g(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)
g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)39
b Fe(32)150 2379 y(remote)25 b(testing)h(via)g Ff(kermit)21
b Fd(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g
(.)g(.)h(.)f(.)45 b Fe(11)150 2488 y(remote)25 b(testing)h(via)g
Ff(mondfe)21 b Fd(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)
g(.)h(.)f(.)g(.)g(.)h(.)f(.)45 b Fe(11)150 2597 y(remote)25
b(testing)h(via)g Ff(rlogin)21 b Fd(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h
(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)45 b Fe(11)150
2707 y(remote)25 b(testing)h(via)g Ff(rsh)f Fd(.)12 b(.)g(.)h(.)f(.)g
(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)
49 b Fe(11)150 2816 y(remote)25 b(testing)h(via)g Ff(telnet)21
b Fd(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g
(.)g(.)h(.)f(.)45 b Fe(11)150 2925 y(remote)25 b(testing)h(via)g
Ff(tip)f Fd(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g
(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)49 b Fe(11)150 3034
y Ff(remote.exp)24 b Fd(.)13 b(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h
(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)
h(.)f(.)g(.)h(.)47 b Fe(26)150 3143 y Ff(remote_close)28
b Fc(shellid)10 b Fd(.)j(.)g(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)
f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)32 b
Fe(27)150 3253 y Ff(remote_open)c Fc(t)n(yp)r(e)e Fd(.)13
b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f
(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)48 b Fe(26)150 3362
y Ff(rlogin)27 b Fc(hostname)20 b Fd(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g
(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)
f(.)g(.)42 b Fe(27)150 3471 y Ff(rlogin)p Fe(,)27 b(remote)f(testing)g
(via)9 b Fd(.)j(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h
(.)f(.)g(.)g(.)h(.)34 b Fe(11)150 3580 y Ff(rsh)26 b
Fc(hostname)e Fd(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h
(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)
46 b Fe(27)150 3689 y Ff(rsh)p Fe(,)27 b(remote)e(testing)h(via)13
b Fd(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)
f(.)g(.)g(.)h(.)f(.)g(.)39 b Fe(11)150 3799 y(running)16
b Fd(.)c(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)
g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h
(.)f(.)g(.)h(.)42 b Fe(9)150 3908 y(running)25 b(tests)17
b Fd(.)c(.)f(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)
f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)43
b Fe(3)150 4017 y Ff(runtest)27 b Fe(description)12 b
Fd(.)h(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h
(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)38 b Fe(9)150
4126 y Ff(runtest)27 b Fe(exit)f(co)r(de)8 b Fd(.)13
b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g
(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)34 b Fe(9)150
4235 y Ff(runtest)27 b Fe(option)f(defaults)17 b Fd(.)c(.)f(.)h(.)f(.)g
(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)42
b Fe(17)150 4344 y Ff(runtest)27 b Fe(option)f(list)7
b Fd(.)13 b(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g
(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)33 b Fe(9)150
4454 y Ff(runtest)p Fe(,)28 b(listing)e(options)21 b
Fd(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f
(.)g(.)h(.)f(.)g(.)h(.)45 b Fe(11)150 4563 y Ff(runtest)p
Fe(,)28 b(most)d(common)f(options)16 b Fd(.)d(.)f(.)g(.)h(.)f(.)g(.)h
(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)42 b Fe(4)150 4672
y Ff(runtest)p Fe(,)28 b(v)l(ariable)e(defns)g(on)f(cmdline)12
b Fd(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)37
b Fe(10)150 4781 y Ff(runtest.exp)23 b Fd(.)12 b(.)h(.)f(.)g(.)h(.)f(.)
g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h
(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)46 b Fe(21)150 4890 y
Ff(runtest_file_p)29 b Fc(run)n(tests)f(testcase)17 b
Fd(.)d(.)e(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)39
b Fe(29)150 5000 y Ff(runtests)7 b Fd(.)14 b(.)e(.)g(.)h(.)f(.)g(.)h(.)
f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h
(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)32 b Fe(17)2025
681 y Fu(S)2025 835 y Fe(searc)n(hing)26 b(\014le)g(con)n(ten)n(ts)13
b Fd(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)
g(.)h(.)f(.)g(.)h(.)f(.)g(.)39 b Fe(28)2025 945 y(selecting)27
b(a)f(range)g(of)g(tests)15 b Fd(.)e(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)
g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)41 b Fe(10,)27 b(29)2025
1054 y(selecting)g(tests)f(for)g(a)g(to)r(ol)16 b Fd(.)e(.)e(.)g(.)h(.)
f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)42
b Fe(10)2025 1164 y(serial)27 b(do)n(wnload,)g Ff(tip)22
b Fd(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f
(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)47 b Fe(27)2025 1274
y(serial)27 b(line)f(connection,)g Ff(kermit)15 b Fd(.)f(.)f(.)f(.)g(.)
h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)41 b
Fe(27)2025 1383 y(serial)27 b(line)f(connection,)g Ff(tip)21
b Fd(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h
(.)f(.)g(.)h(.)45 b Fe(27)2025 1493 y(set)26 b(curren)n(t)f(host)9
b Fd(.)j(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)
f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)34
b Fe(29)2025 1602 y(set)26 b(curren)n(t)f(target)15 b
Fd(.)e(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f
(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)41 b Fe(29)2025
1712 y Ff(set_warning_threshold)30 b Fc(threshold)20
b Fd(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)43
b Fe(24)2025 1822 y Ff(setenv)27 b Fc(v)l(ar)j(v)l(al)10
b Fd(.)i(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)
g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)32
b Fe(29)2025 1931 y(setting)26 b(defaults)g(for)h(DejaGn)n(u)f(v)l
(ariables)17 b Fd(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)42
b Fe(15)2025 2041 y(setting)26 b(en)n(vironmen)n(t)e(v)l(ariables)15
b Fd(.)e(.)g(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)
41 b Fe(29)2025 2150 y(setting)26 b(up)f(targets)12 b
Fd(.)h(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g
(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)38 b Fe(22)2025
2260 y Ff(setup_xfail)28 b(")p Fc(con\014g)k Fe([)p Fc(bugid)s
Fe(])p Ff(")10 b Fd(.)j(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g
(.)h(.)f(.)g(.)36 b Fe(25)2025 2369 y Ff(site.exp)7 b
Fd(.)14 b(.)e(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g
(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)
g(.)h(.)32 b Fe(15)2025 2479 y(`)p Ff(site.exp)p Fe(')c(for)e(all)h(of)
f(DejaGn)n(u)13 b Fd(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)
h(.)f(.)g(.)h(.)38 b Fe(18)2025 2589 y(`)p Ff(site.exp)p
Fe(')28 b(for)e(eac)n(h)g(p)r(erson)8 b Fd(.)13 b(.)f(.)g(.)h(.)f(.)g
(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)34
b Fe(20)2025 2698 y(`)p Ff(site.exp)p Fe(')28 b(for)e(eac)n(h)g(to)r
(ol)17 b Fd(.)c(.)g(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h
(.)f(.)g(.)h(.)f(.)g(.)h(.)42 b Fe(19)2025 2808 y(`)p
Ff(site.exp)p Fe(',)28 b(m)n(ultiple)23 b Fd(.)13 b(.)f(.)g(.)h(.)f(.)g
(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)
g(.)50 b Fe(15)2025 2917 y Ff(slay)26 b Fc(name)21 b
Fd(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h
(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)
43 b Fe(28)2025 3027 y(sla)n(ying)26 b(pro)r(cesses)9
b Fd(.)14 b(.)f(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g
(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)35
b Fe(28)2025 3137 y(source)26 b(directory)d Fd(.)12 b(.)g(.)h(.)f(.)g
(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)
f(.)g(.)h(.)f(.)g(.)h(.)48 b Fe(12)2025 3246 y(sourcing)26
b(Tcl)h(\014les)7 b Fd(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g
(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)
32 b Fe(28)2025 3356 y(sp)r(ecial)27 b(v)l(ariables)20
b Fd(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f
(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)45
b Fe(42)2025 3465 y(sp)r(ecifying)26 b(target)h(name)18
b Fd(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h
(.)f(.)g(.)h(.)f(.)g(.)h(.)44 b Fe(11)2025 3575 y(sp)r(ecifying)26
b(the)g(build)f(con\014g)h(name)19 b Fd(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g
(.)h(.)f(.)g(.)h(.)f(.)g(.)46 b Fe(11)2025 3685 y(sp)r(ecifying)26
b(the)g(host)g(con\014g)f(name)17 b Fd(.)12 b(.)g(.)g(.)g(.)h(.)f(.)g
(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)42 b Fe(11)2025 3794 y(sp)r(ecifying)26
b(the)g(target)g(con\014guration)d Fd(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)
g(.)h(.)f(.)g(.)48 b Fe(12)2025 3904 y Ff(srcdir)10 b
Fd(.)j(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g
(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)
f(.)g(.)h(.)35 b Fe(17)2025 4013 y(standard)25 b(conformance:)35
b(POSIX)25 b(1003.3)17 b Fd(.)e(.)d(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)44
b Fe(6)2025 4123 y(start)26 b(pro)r(cedure,)g(tested)f(to)r(ols)16
b Fd(.)e(.)e(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)
g(.)42 b Fe(31)2025 4232 y(starting)26 b(in)n(teractiv)n(e)g(to)r(ols)f
Fd(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g
(.)h(.)f(.)g(.)h(.)49 b Fe(22)2025 4342 y(starting)26
b(the)f(tcl)h(debugger)20 b Fd(.)13 b(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f
(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)45 b Fe(13)2025
4452 y Ff(subdir)10 b Fd(.)j(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)
h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f
(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)35 b Fe(42)2025 4561
y(success,)27 b(POSIX)d(de\014nition)f Fd(.)12 b(.)h(.)f(.)g(.)h(.)f(.)
g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)49
b Fe(6)2025 4671 y(successful)27 b(test)19 b Fd(.)12
b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h
(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)45
b Fe(9)2025 4780 y(successful)27 b(test,)f(unexp)r(ected)c
Fd(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g
(.)h(.)f(.)g(.)50 b Fe(9)2025 4890 y(su\016x,)25 b Ff(expect)i
Fe(scripts)12 b Fd(.)i(.)e(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g
(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)39
b Fe(1)2025 5000 y(summary)23 b(log)e Fd(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f
(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)
f(.)g(.)h(.)f(.)g(.)h(.)f(.)45 b Fe(35)p eop
%%Page: 55 57
55 56 bop 150 -116 a Fv(Index)3286 b(55)150 84 y Fu(T)150
217 y Fe(target)26 b(con\014guration)h(test)10 b Fd(.)i(.)g(.)h(.)f(.)g
(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)35
b Fe(25)150 316 y(target)26 b(con\014guration,)h(sp)r(ecifying)d
Fd(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)49
b Fe(12)150 416 y(target)26 b(dep)r(enden)n(t)f(pro)r(cedures)11
b Fd(.)h(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)
g(.)37 b Fe(31)150 516 y(target)26 b(mac)n(hine)f(name)10
b Fd(.)i(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)
f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)36 b Fe(11)150 615 y(target,)27
b(explained)8 b Fd(.)k(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h
(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)33
b Fe(49)150 715 y Ff(target.exp)24 b Fd(.)13 b(.)f(.)g(.)h(.)f(.)g(.)g
(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)
g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)47 b Fe(29)150 815 y
Ff(target_triplet)16 b Fd(.)g(.)c(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f
(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)
42 b Fe(17)150 914 y Ff(targetname)24 b Fd(.)13 b(.)f(.)g(.)h(.)f(.)g
(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)
f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)47 b Fe(17)150 1014
y(targets)12 b Fd(.)h(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f
(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)
h(.)f(.)g(.)h(.)f(.)g(.)h(.)37 b Fe(32)150 1113 y(tcl)13
b Fd(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)
f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g
(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)39 b Fe(8)150 1213
y(tcl)26 b(debugger)11 b Fd(.)h(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h
(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)
g(.)h(.)f(.)g(.)37 b Fe(13)150 1313 y(Tcl)27 b(v)l(ariables)f(for)g
(option)g(defaults)8 b Fd(.)13 b(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)
h(.)f(.)g(.)h(.)33 b Fe(17)150 1412 y(Tcl)27 b(v)l(ariables,)f
(de\014ning)f(for)i Ff(runtest)22 b Fd(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f
(.)g(.)h(.)f(.)g(.)46 b Fe(10)150 1512 y Fc(tclv)l(ar)5
b Ff(=)p Fc(v)l(alue)16 b Fd(.)d(.)g(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)
g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f
(.)g(.)h(.)f(.)g(.)38 b Fe(10)150 1612 y Ff(telnet)27
b Fc(hostname)i(p)r(ort)24 b Fd(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h
(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)47
b Fe(27)150 1711 y Ff(telnet)p Fe(,)27 b(remote)f(testing)g(via)9
b Fd(.)j(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)
g(.)g(.)h(.)34 b Fe(11)150 1811 y(terminating)25 b(remote)h(connection)
10 b Fd(.)j(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)
36 b Fe(27)150 1911 y(test)26 b(case)g(cannot)g(run)7
b Fd(.)k(.)i(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)
g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)33 b Fe(9)150
2010 y(test)26 b(case)g(messages)d Fd(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h(.)
f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g
(.)h(.)f(.)48 b Fe(9)150 2110 y(test)26 b(case)g(w)n(arnings)f
Fd(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f
(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)49 b Fe(9)150
2210 y(test)26 b(case,)h(debugging)8 b Fd(.)k(.)g(.)h(.)f(.)g(.)h(.)f
(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)
h(.)33 b Fe(40)150 2309 y(test)26 b(case,)h(declaring)f(am)n(biguit)n
(y)10 b Fd(.)i(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g
(.)g(.)36 b Fe(24)150 2409 y(test)26 b(case,)h(declaring)f(failure)17
b Fd(.)d(.)f(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)
h(.)f(.)g(.)43 b Fe(24)150 2508 y(test)26 b(case,)h(declaring)f(no)g
(supp)r(ort)13 b Fd(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f
(.)g(.)h(.)38 b Fe(24)150 2608 y(test)26 b(case,)h(declaring)f(no)g
(test)8 b Fd(.)k(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)
h(.)f(.)g(.)h(.)f(.)33 b Fe(24)150 2708 y(test)26 b(case,)h(declaring)f
(success)f Fd(.)12 b(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)
f(.)g(.)h(.)f(.)g(.)49 b Fe(24)150 2807 y(test)26 b(case,)h(ERR)n(OR)d
(in)12 b Fd(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h
(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)38 b Fe(23)150
2907 y(test)26 b(case,)h(exp)r(ecting)e(failure)9 b Fd(.)14
b(.)e(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g
(.)h(.)34 b Fe(25)150 3007 y(test)26 b(case,)h(informational)g
(messages)8 b Fd(.)13 b(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f
(.)34 b Fe(24)150 3106 y(test)26 b(case,)h(W)-9 b(ARNING)24
b(in)12 b Fd(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)
g(.)g(.)h(.)f(.)g(.)h(.)f(.)38 b Fe(23)150 3206 y(test)26
b(case,)h(W)-9 b(ARNING)24 b(threshold)16 b Fd(.)c(.)g(.)g(.)h(.)f(.)g
(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)41 b Fe(24)150 3306
y(test)26 b(case,)h(writing)c Fd(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g
(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)
f(.)48 b Fe(39)150 3405 y(test)26 b(cases,)h(debug)e(log)c
Fd(.)12 b(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h
(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)45 b Fe(11)150 3505
y(test)26 b(directories,)h(naming)22 b Fd(.)12 b(.)h(.)f(.)g(.)h(.)f(.)
g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)48
b Fe(21)150 3605 y(test)26 b(\014lename)c Fd(.)12 b(.)g(.)h(.)f(.)g(.)h
(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)
h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)48 b Fe(21)150 3704 y(test)26
b(output,)f(displa)n(ying)h(all)c Fd(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g
(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)46 b Fe(10)150
3804 y(test)26 b(programs,)g(auxiliary)16 b Fd(.)d(.)f(.)h(.)f(.)g(.)h
(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)42
b Fe(12)150 3903 y(test)26 b(suite)g(distributions)21
b Fd(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g
(.)h(.)f(.)g(.)h(.)f(.)g(.)47 b Fe(49)150 4003 y(test,)26
b(failing)12 b Fd(.)i(.)f(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g
(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)
f(.)g(.)h(.)f(.)38 b Fe(9)150 4103 y(test,)26 b(successful)8
b Fd(.)14 b(.)e(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f
(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)34
b Fe(9)150 4202 y(test,)26 b(unresolv)n(ed)f(outcome)c
Fd(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h
(.)f(.)g(.)h(.)f(.)g(.)47 b Fe(9)150 4302 y(test,)26
b(unsupp)r(orted)14 b Fd(.)d(.)i(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)
h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)40
b Fe(9)150 4402 y(tests,)26 b(running)6 b Fd(.)13 b(.)f(.)g(.)h(.)f(.)g
(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)
f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)32 b Fe(3)150 4501
y(tests,)26 b(running)f(order)14 b Fd(.)f(.)f(.)h(.)f(.)g(.)h(.)f(.)g
(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)
39 b Fe(21)150 4601 y(tests,)26 b(running)f(sp)r(eci\014cally)e
Fd(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g
(.)48 b Fe(10,)26 b(29)150 4701 y(TET)10 b Fd(.)k(.)e(.)h(.)f(.)g(.)h
(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)
g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)37
b Fe(6)150 4800 y Ff(tip)26 b Fc(p)r(ort)c Fd(.)12 b(.)g(.)h(.)f(.)g(.)
h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f
(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)45
b Fe(27)150 4900 y Ff(tip)p Fe(,)27 b(remote)e(testing)h(via)13
b Fd(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)
f(.)g(.)g(.)h(.)f(.)g(.)39 b Fe(11)150 5000 y Ff(tip_download)28
b Fc(spa)n(wnid)h(\014le)f Fd(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)
f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)49 b Fe(27)2025 368
y Ff(tool)13 b Fd(.)g(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g
(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)
g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)38 b Fe(17)2025 472
y(to)r(ol)26 b(command)e(language)d Fd(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f
(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)45
b Fe(8)2025 576 y(to)r(ol)26 b(initialization)d Fd(.)12
b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h
(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)46 b Fe(22)2025
681 y(to)r(ol)26 b(name,)g(as)g(installed)c Fd(.)12 b(.)g(.)h(.)f(.)g
(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)
46 b Fe(24)2025 785 y(to)r(ol)26 b(names)g(and)f(naming)g(con)n(v)n(en)
n(tions)17 b Fd(.)12 b(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)42
b Fe(21)2025 889 y Fc(to)r(ol)s Ff(_exit)17 b Fd(.)d(.)f(.)f(.)g(.)h(.)
f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h
(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)43 b Fe(31)2025
994 y Fc(to)r(ol)s Ff(_load)17 b Fd(.)d(.)f(.)f(.)g(.)h(.)f(.)g(.)h(.)f
(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)
h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)43 b Fe(31)2025 1098
y Fc(to)r(ol)s Ff(_start)16 b Fd(.)e(.)f(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)
f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h
(.)f(.)g(.)h(.)f(.)g(.)h(.)41 b Fe(31)2025 1202 y Fc(to)r(ol)s
Ff(_version)13 b Fd(.)i(.)d(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h
(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)
g(.)39 b Fe(32)2025 1307 y Ff(tracelevel)24 b Fd(.)12
b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h
(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)48
b Fe(17)2025 1411 y(tracing)26 b(Tcl)h(commands)22 b
Fd(.)13 b(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g
(.)h(.)f(.)g(.)h(.)f(.)g(.)50 b Fe(12)2025 1516 y Ff(transform)25
b Fd(.)13 b(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g
(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)
49 b Fe(22)2025 1620 y Ff(transform)27 b(")p Fc(to)r(olname)t
Ff(")14 b Fd(.)g(.)e(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)
h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)40 b Fe(24)2025 1724
y(transform)26 b(to)r(ol)g(name)19 b Fd(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g
(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)
45 b Fe(24)2025 1829 y(turning)25 b(on)h(output)d Fd(.)12
b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h
(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)50 b Fe(13)2025 2123
y Fu(U)2025 2266 y Fe(unexp)r(ected)24 b(success)7 b
Fd(.)14 b(.)e(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h
(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)34 b Fe(9)2025
2370 y Ff(UNRESOLVED)17 b Fd(.)d(.)e(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)
g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h
(.)f(.)g(.)h(.)42 b Fe(7,)27 b(9)2025 2475 y Ff(unresolved)h(")p
Fc(string)6 b Ff(")16 b Fd(.)d(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g
(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)41
b Fe(24)2025 2579 y(unset)25 b(curren)n(t)g(host)c Fd(.)12
b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g
(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)46 b Fe(29)2025 2684
y(unset)25 b(curren)n(t)g(target)9 b Fd(.)k(.)f(.)g(.)h(.)f(.)g(.)h(.)f
(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)
34 b Fe(29)2025 2788 y Ff(unsetenv)27 b Fc(v)l(ar)17
b Fd(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f
(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)37
b Fe(29)2025 2892 y(unsetting)25 b(en)n(vironmen)n(t)f(v)l(ariables)9
b Fd(.)k(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)35
b Fe(29)2025 2997 y Ff(UNSUPPORTED)15 b Fd(.)g(.)d(.)g(.)h(.)f(.)g(.)h
(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)
h(.)f(.)g(.)h(.)f(.)g(.)41 b Fe(7,)27 b(9)2025 3101 y
Ff(unsupported)h(")p Fc(string)6 b Ff(")14 b Fd(.)g(.)e(.)h(.)f(.)g(.)h
(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)
40 b Fe(24)2025 3205 y(unsupp)r(orted)24 b(test)6 b Fd(.)13
b(.)g(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h
(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)33 b Fe(9)2025
3310 y Ff(UNTESTED)21 b Fd(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g
(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)
g(.)g(.)h(.)f(.)g(.)h(.)45 b Fe(7,)27 b(9)2025 3414 y
Ff(untested)g(")p Fc(string)6 b Ff(")20 b Fd(.)13 b(.)f(.)g(.)h(.)f(.)g
(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)
f(.)g(.)h(.)44 b Fe(24)2025 3519 y(un)n(tested)25 b(prop)r(erties)f
Fd(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f
(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)50 b Fe(9)2025
3623 y(utilities,)27 b(loading)g(from)e(init)h(\014le)15
b Fd(.)d(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)
40 b Fe(23)2025 3727 y Ff(utils.exp)25 b Fd(.)13 b(.)f(.)g(.)h(.)f(.)g
(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)
f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)49 b Fe(28)2025
4022 y Fu(V)2025 4165 y Fe(v)l(ariables)26 b(for)h(all)f(tests)15
b Fd(.)e(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)
g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)41 b Fe(42)2025 4269
y(v)l(ariables)26 b(for)h(option)f(defaults)c Fd(.)12
b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)47
b Fe(17)2025 4373 y(v)l(ariables)26 b(of)h(DejaGn)n(u,)f(defaults)21
b Fd(.)12 b(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)
46 b Fe(15)2025 4478 y Ff(verbose)8 b Fd(.)14 b(.)e(.)g(.)h(.)f(.)g(.)h
(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)
h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)34 b
Fe(17)2025 4582 y Ff(verbose)27 b Fe([)p Ff(-log)p Fe(])g([)p
Ff(-n)p Fe(])g([)p Ff(--)p Fe(])g Ff(")p Fc(string)6
b Ff(")27 b Fc(n)n(um)n(b)r(er)21 b Fd(.)12 b(.)h(.)f(.)g(.)g(.)44
b Fe(26)2025 4686 y Ff(verbose)27 b Fe(builtin)e(function)6
b Fd(.)13 b(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g
(.)h(.)f(.)g(.)g(.)h(.)32 b Fe(26)2025 4791 y(v)n(ersion)26
b(n)n(um)n(b)r(ers)18 b Fd(.)10 b(.)j(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g
(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)
g(.)44 b Fe(13)2025 4895 y(v)n(ersion)26 b(pro)r(cedure,)g(tested)f(to)
r(ols)14 b Fd(.)g(.)e(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f
(.)g(.)40 b Fe(32)2025 5000 y(VxW)-6 b(orks,)25 b(link)g(with)h(`)p
Ff(-r)p Fe(')16 b Fd(.)d(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)
f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)41 b Fe(33)p eop
%%Page: 56 58
56 57 bop 150 -116 a Fv(56)2364 b(DejaGn)m(u)32 b(T)-8
b(esting)30 b(F)-8 b(ramew)m(ork)150 147 y Fu(W)150 282
y Ff(WARNING)22 b Fd(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g
(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)
g(.)h(.)f(.)g(.)46 b Fe(9,)26 b(23)150 383 y Ff(warning)h(")p
Fc(string)33 b(n)n(um)n(b)r(er)5 b Ff(")22 b Fd(.)12
b(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g
(.)h(.)48 b Fe(23)150 483 y(W)-6 b(atc)n(h)25 b(when)h(a)g(v)l(ariable)
g(is)g(read)19 b Fd(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f
(.)g(.)g(.)h(.)44 b Fe(30)150 584 y(W)-6 b(atc)n(h)25
b(when)h(a)g(v)l(ariable)g(is)g(unset)19 b Fd(.)13 b(.)f(.)g(.)h(.)f(.)
g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)45 b Fe(30)150 685
y(W)-6 b(atc)n(h)25 b(when)h(a)g(v)l(ariable)g(is)g(written)f
Fd(.)12 b(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)50
b Fe(30)150 785 y Ff(watchdel)27 b Fd(watch)j(.)13 b(.)f(.)g(.)h(.)f(.)
g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f
(.)g(.)h(.)f(.)g(.)h(.)48 b Fe(31)150 886 y Ff(watchread)28
b Fd(var)16 b(.)d(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h
(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)33
b Fe(30)150 987 y Ff(watchunset)28 b Fd(var)14 b(.)f(.)g(.)f(.)g(.)h(.)
f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g
(.)h(.)f(.)g(.)h(.)f(.)g(.)32 b Fe(30)150 1087 y Ff(watchwrite)c
Fd(var)14 b(.)f(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h
(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)32
b Fe(30)2025 90 y(What)25 b(is)h(New)17 b Fd(.)c(.)g(.)f(.)g(.)h(.)f(.)
g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h
(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)44 b Fe(3)2025 189
y Ff(which)26 b Fc(binary)21 b Fd(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)
f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g
(.)h(.)f(.)g(.)h(.)f(.)40 b Fe(28)2025 289 y(writing)26
b(a)g(test)g(case)21 b Fd(.)12 b(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)
f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)45
b Fe(39)2025 556 y Fu(X)2025 688 y Ff(XFAIL)25 b Fd(.)12
b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h
(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)
g(.)50 b Fe(6,)27 b(9)2025 788 y(XF)-9 b(AIL,)25 b(a)n(v)n(oiding)h
(for)h(POSIX)19 b Fd(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f
(.)g(.)h(.)f(.)g(.)h(.)f(.)47 b Fe(6)2025 888 y Ff(XFAIL)p
Fe(,)27 b(pro)r(ducing)20 b Fd(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h
(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)
g(.)46 b Fe(25)2025 988 y Ff(XPASS)12 b Fd(.)h(.)g(.)f(.)g(.)h(.)f(.)g
(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)
f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)38
b Fe(9)2025 1087 y Ff(XPASS)p Fe(,)27 b(pro)r(ducing)20
b Fd(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f
(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)46 b Fe(25)p
eop
%%Page: -1 59
-1 58 bop 3725 -116 a Fv(i)150 100 y Fs(T)-13 b(able)54
b(of)g(Con)l(ten)l(ts)150 442 y Fu(1)135 b(What)45 b(is)g(DejaGn)l(u?)
24 b Fb(.)19 b(.)h(.)f(.)h(.)f(.)h(.)f(.)h(.)f(.)g(.)h(.)f(.)h(.)f(.)h
(.)f(.)g(.)h(.)f(.)h(.)f(.)h(.)f(.)g(.)69 b Fu(1)150
711 y(2)135 b(What)45 b(is)g(new)g(in)g(this)g(release)i(?)29
b Fb(.)19 b(.)g(.)h(.)f(.)h(.)f(.)h(.)f(.)g(.)h(.)f(.)h(.)f(.)h(.)73
b Fu(3)449 848 y Fv(2.1)92 b(Running)28 b(existing)h(tests)20
b Fn(.)c(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)
g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g
(.)49 b Fv(3)449 958 y(2.2)92 b(What)31 b(do)s(es)f(a)h(DejaGn)m(u)g
(test)g(lo)s(ok)f(lik)m(e?)f Fn(.)15 b(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g
(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)59 b Fv(5)449
1068 y(2.3)92 b(Design)30 b(goals)23 b Fn(.)16 b(.)f(.)g(.)g(.)g(.)g(.)
g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h
(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)
g(.)g(.)53 b Fv(5)449 1177 y(2.4)92 b(A)30 b(POSIX)g(conforming)f(test)
j(framew)m(ork)25 b Fn(.)15 b(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h
(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)55 b Fv(6)449
1287 y(2.5)92 b(F)-8 b(uture)30 b(directions)17 b Fn(.)d(.)h(.)g(.)g(.)
g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g
(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)
47 b Fv(8)449 1396 y(2.6)92 b(Tcl)30 b(and)f(Exp)s(ect)e
Fn(.)15 b(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g
(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)
g(.)g(.)g(.)g(.)g(.)g(.)g(.)56 b Fv(8)150 1639 y Fu(3)135
b(Using)45 b Fa(runtest)11 b Fb(.)16 b(.)k(.)f(.)h(.)f(.)h(.)f(.)g(.)h
(.)f(.)h(.)f(.)h(.)f(.)g(.)h(.)f(.)h(.)f(.)h(.)f(.)g(.)h(.)f(.)h(.)f(.)
h(.)f(.)g(.)56 b Fu(9)150 1909 y(4)135 b(Setting)46 b
Fa(runtest)41 b Fu(defaults)26 b Fb(.)21 b(.)e(.)h(.)f(.)g(.)h(.)f(.)h
(.)f(.)h(.)f(.)g(.)h(.)f(.)h(.)f(.)h(.)f(.)71 b Fu(15)748
2046 y Fv(4.0.1)93 b(Con\014g)29 b(V)-8 b(ariables)17
b Fn(.)d(.)h(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)
g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)46
b Fv(15)748 2155 y(4.0.2)93 b(Master)31 b(Con\014g)f(File)13
b Fn(.)h(.)i(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)
g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)43 b
Fv(18)748 2265 y(4.0.3)93 b(Lo)s(cal)30 b(Con\014g)g(File)22
b Fn(.)14 b(.)h(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g
(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)51
b Fv(19)748 2374 y(4.0.4)93 b(P)m(ersonal)30 b(Con\014g)g(File)24
b Fn(.)15 b(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g
(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)55 b Fv(20)150
2617 y Fu(5)135 b(The)44 b(DejaGn)l(u)h(Implemen)l(tation)28
b Fb(.)22 b(.)e(.)f(.)h(.)f(.)g(.)h(.)f(.)h(.)f(.)h(.)f(.)73
b Fu(21)449 2754 y Fv(5.1)92 b(Con)m(v)m(en)m(tions)31
b(for)f(using)f(to)s(ol)h(names)16 b Fn(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g
(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)45
b Fv(21)449 2863 y(5.2)92 b(Initialization)28 b(mo)s(dule)d
Fn(.)16 b(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g
(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)
h(.)56 b Fv(22)449 2973 y(5.3)92 b(DejaGn)m(u)31 b(pro)s(cedures)14
b Fn(.)g(.)h(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)
g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g
(.)g(.)44 b Fv(23)748 3083 y(5.3.1)93 b(Core)30 b(In)m(ternal)g(Pro)s
(cedures)15 b Fn(.)e(.)j(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)
g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)44 b Fv(23)748 3192
y(5.3.2)93 b(Remote)31 b(Comm)m(unication)e(Pro)s(cedures)14
b Fn(.)g(.)h(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)43
b Fv(26)748 3302 y(5.3.3)93 b(Utilit)m(y)29 b(Pro)s(cedures)21
b Fn(.)14 b(.)h(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g
(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)50
b Fv(28)748 3411 y(5.3.4)93 b(Cross)29 b(target)j(pro)s(cedure)17
b Fn(.)e(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)
g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)47 b Fv(29)748 3521 y(5.3.5)93
b(Debugging)30 b(Pro)s(cedures)25 b Fn(.)15 b(.)g(.)g(.)g(.)g(.)g(.)g
(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)
55 b Fv(30)449 3631 y(5.4)92 b(T)-8 b(arget)32 b(dep)s(enden)m(t)d(pro)
s(cedures)13 b Fn(.)h(.)h(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g
(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)42
b Fv(31)449 3740 y(5.5)92 b(Remote)32 b(targets)f(supp)s(orted)10
b Fn(.)j(.)i(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)
g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)39
b Fv(32)449 3850 y(5.6)92 b(The)30 b(\014les)f(DejaGn)m(u)i(reads)26
b Fn(.)15 b(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g
(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)55
b Fv(34)449 3959 y(5.7)92 b(The)30 b(\014les)f(DejaGn)m(u)i(writes)11
b Fn(.)j(.)h(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)
g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)40
b Fv(35)748 4069 y(5.7.1)93 b(Summary)28 b(log)14 b Fn(.)i(.)f(.)g(.)g
(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)
g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)43 b
Fv(35)748 4178 y(5.7.2)93 b(Detailed)30 b(log)17 b Fn(.)e(.)g(.)h(.)f
(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)
g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)47
b Fv(36)748 4288 y(5.7.3)93 b(Logging)30 b Fr(expect)f
Fv(in)m(ternal)g(actions)f Fn(.)15 b(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)
g(.)g(.)g(.)g(.)g(.)g(.)57 b Fv(36)150 4531 y Fu(6)135
b(Ho)l(w)45 b(T)-11 b(o)45 b(W)-11 b(rite)45 b(a)h(T)-11
b(est)44 b(Case)39 b Fb(.)19 b(.)h(.)f(.)h(.)f(.)h(.)f(.)h(.)f(.)g(.)h
(.)f(.)h(.)f(.)h(.)82 b Fu(39)449 4667 y Fv(6.1)92 b(W)-8
b(riting)30 b(a)g(test)i(case)25 b Fn(.)15 b(.)g(.)g(.)g(.)g(.)g(.)g(.)
g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g
(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)53 b Fv(39)449
4777 y(6.2)92 b(Debugging)30 b(a)h(test)g(case)f Fn(.)15
b(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g
(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)58
b Fv(40)449 4887 y(6.3)92 b(Adding)29 b(a)h(test)i(case)f(to)g(a)g
(test)g(suite)19 b Fn(.)c(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g
(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)48 b Fv(40)449
4996 y(6.4)92 b(Hin)m(ts)30 b(on)g(writing)f(a)h(test)i(case)22
b Fn(.)15 b(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g
(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)51
b Fv(41)449 5106 y(6.5)92 b(Sp)s(ecial)29 b(v)-5 b(ariables)29
b(used)g(b)m(y)h(test)i(cases)23 b Fn(.)15 b(.)g(.)g(.)h(.)f(.)g(.)g(.)
g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)52
b Fv(42)p eop
%%Page: -2 60
-2 59 bop 150 -116 a Fv(ii)2402 b(DejaGn)m(u)32 b(T)-8
b(esting)30 b(F)-8 b(ramew)m(ork)150 83 y Fu(7)135 b(New)45
b(T)-11 b(o)t(ols,)45 b(T)-11 b(argets,)46 b(or)f(Hosts)23
b Fb(.)e(.)e(.)h(.)f(.)g(.)h(.)f(.)h(.)f(.)h(.)f(.)h(.)f(.)68
b Fu(43)449 220 y Fv(7.1)92 b(W)-8 b(riting)30 b(tests)h(for)f(a)h(new)
e(to)s(ol)19 b Fn(.)d(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g
(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)48
b Fv(43)449 330 y(7.2)92 b(Adding)29 b(a)h(target)17
b Fn(.)g(.)e(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)
g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g
(.)g(.)g(.)g(.)g(.)g(.)46 b Fv(48)449 439 y(7.3)92 b(P)m(orting)30
b(to)h(a)g(new)f(host)f Fn(.)15 b(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g
(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)
g(.)g(.)g(.)g(.)g(.)g(.)58 b Fv(48)150 682 y Fu(App)t(endix)44
b(A)134 b(Installing)46 b(DejaGn)l(u)29 b Fb(.)20 b(.)f(.)h(.)f(.)g(.)h
(.)f(.)h(.)f(.)h(.)f(.)g(.)74 b Fu(49)449 819 y Fv(A.1)92
b(Con\014guring)28 b(the)i(DejaGn)m(u)i(test)f(driv)m(er)9
b Fn(.)k(.)j(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)
g(.)g(.)g(.)g(.)38 b Fv(49)449 928 y(A.2)92 b(Installing)28
b(DejaGn)m(u)10 b Fn(.)15 b(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h
(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)
g(.)g(.)g(.)g(.)g(.)g(.)g(.)39 b Fv(49)150 1171 y Fu(Index)e
Fb(.)19 b(.)h(.)f(.)h(.)f(.)g(.)h(.)f(.)h(.)f(.)h(.)f(.)g(.)h(.)f(.)h
(.)f(.)h(.)f(.)g(.)h(.)f(.)h(.)f(.)h(.)f(.)h(.)f(.)g(.)h(.)f(.)h(.)f(.)
h(.)f(.)g(.)h(.)f(.)82 b Fu(51)p eop
%%Trailer
end
userdict /end-hook known{end-hook}if
%%EOF