[mod.mac.binaries] Macintosh Technical Notes - #81: Disk Caching

Michael.Fryd@A.CS.CMU.EDU (X435MF0E) (09/08/86)

[Macintosh Technical Notes - #81: Disk Caching]

---
(This file must be converted with BinHex 4.0)

:$&411$%J3f&MD'PZC`"A6e*%68&$33#3"#'N!!!$1mi`!!B!5J!#!!3!N!2r!2m
!N!-"!!!Jr!#S!+J!!#$m!*J!Q!!!)03!Q!!#!*!$5!")!*!%!YJ#+2rJrq)#q!*
'!`F&+!2m!!)!N!0)!%J!N!3#f!)S!!%!N!0N!*!$!3!"N!-!N!-"*`m!!3!"!!(
Kh!!"iQ5!3`#3!`)!'3'3!!#3)3-!N!-$!*!&!3!!#`!!3!!!#63!$J!-!1lrmJ#
8rr)"4rq3"!$rN!8!!3#3!`%!N!8"!!!*a!!J!!!#TJ!'rr)!([rb!1crmJ'krj!
'$!!!!`!#!*!$!J#3"3%!!"aF"+!!!"Xf!5ErmJ!Hrr)!l2rb!EVrN!8!rj!%4N)
`!*!%#J([!!)!N!-+!0,q)!([!HpPFL"TFb"NFQ&RCfPZ)#"d!!%0C3!'!!!+!!!
9!#[e3FXhaU$dj5%2)r12-I#HEfF3!*!$A3mcm*p$E,FrCr$3!!B!!!S!!"8!N!-
'!!!+!3!9!!%0Q`!'!!!-!!!9!!%0!!!'!!!-!!!9#J%!&3!+!H!!!3#3!`S"D!D
!!*!A"J!!$!!!!`!+!H8$"!#3!`S!+!"i!8!"Z!(P!H9Z)'Pc)'&ZB@a[Cfm!B&q
3A`d!"J!!#3!!&3!Hp0E(-PL`p8(,0mDJp18KM`R`N!$r$`d!'!!!$J%!&3!C$J8
!&3!E$J%!&3!F'"%!&`!"$3%!"J!!$!!!&3#3!`%3%!!A!!%0C3!'!!!1!!!@!!d
M1$%k)%0KBfKTEQF0D3!'!!!1!!!9!"8!!3hr!!B!!!i!!"8!&r8a%'U&mkm*p'H
K$deMEfF8m0!!!!B!!!i!!"8!%I#I#I4"pfI"$deMEfF8m0!!"J!!$J!!&3!Vm*m
*p8(,0mDJp18K$b2c(c6p(e5a$dRdldRe32-r-3p0(,BhMfh`d!!'!!!1!!!9!!%
0!!!'!!!1!!!9!#9AFQPdG'9Z)'*j1JP5D@0V)%*XB@Pb#8TeEQ8J-6FX)$%j1$B
0!!!'!!!1!!!9!'"IN&m0!!B!!!N!!"8!!3d!!!B!!!i!!"8"-I3R)20Ja6*R1!B
e+a30T[C`phYmX-B`e8`3DU!25I,r6`*3pR8#8#X3PipVmZ$dR3+f)0T[C`H!J5!
V%`(hB8pj!RpY%"pf%`8a$f,hNK"i""pape'#'3e&pY!V%24RS3p6pjJKpY!V%*H
2D`phHU$f)3YbmZ$dN!$'-#YcpV"G!e$fG9N%&S8`*3peJ3+hJ"pi`H)#8#'#!V%
)pjJKpY$&N3FS'YmZ$e5a"5X8$f*bJ)YIGDN+IfXIGhJ3pL%+(5"U8amZm0!!'!!
!$!!!&3!X$!%!&3![$!)!&3!a$!!!&3#3!`%3%!i!!"8!B&q3A`d!"J!!#3!!&3!
"$3!!"J!!$J!!&3!"$3%!"J!!$!!!&3!"$3!!"J!!$!!!&3!"$3)!"J!!$!!!&3!
"$@J!"J!!$!!!&3!Gp$E,%2E4"p$hPIG3aM$bJ[HH%2-r+I$3!!B!!!`&!"8!!3d
"!!B!!!`!!"8!"J!!$!!!&3!"$@J!"J!!$!!!&3!"$@J!"J!!$!!!&3!Jp8X8(p@
!D[GfpjJ'$'ba$bJ[HH%2-I+I$3!!"J!!$!8!&3!"$3%!"J!!$!!!&3!"$3F!"J!
!$!!!&3!(35"dCA*Y$3!!"J!!$!8!&3!"$3%!"J!!$!!!&3!!$!!!&3!(3R9Q8(4
b$3i!"J!!$!8!&3!"$3B!"J!!$!!!&3!-)#"#6N8Z8b"!0MN0!!B!!!`!!"B!!3e
b!!B!!!`!!"8!!Li0!!B!!!`!!"B0!!!'!!!-"3!9!+$e5a"cJQUQ*e--@4$hGkS
'U&$fG'pL!V%)jX%2GB'3!2B[H3+a"DN24RS3p6pjJKpY$'ba$bJ[HH%2-I+3!)F
m%'UJ,hRKJ&d*H2D`pLTFpVJ-B`pL%'c&pYpY@@)C$f,hN!!VH!-IG`aXXI,[$3!
!"J!!$!!!&3!d!26I6r9[4I,[3Jp$E,(d0IEI,)EhB5(fhJmlK[GK"[Gfpj!!+a"
DN!$hCUpe(`d!!!B!!!`!!"B!"%!f13d!"J!!$!!!&J!"$3!!"J!!$!!!&J!9!"i
-!!!9!$m!p#p6p&p8!!mMmhmXp$E,(d0IE3#3!`ml)DS-E,FrC`aC%#8)*H$e,br
eF25I,[82,[$3!!B!!!`!!"B!!3d!!!B!!!`!!"8!&3!"$@J!"J!!$!!!&3%[p8Y
i![HH%&d-E,FrC`H!JRUJpeJC$f,hN!$dMdEe2b`2GlI,"cb[GC'!p0p'p6mYe8p
YBJpf@[GIE4J2GlI,$fe[H3pL%2E9pe-KN!$hHhS36h8cFrC`p)p'p6mZ$eGbX25
24[8r,!+a$'ba"i"JTb+K$f*rCrCa6cS"E,$hCDpepY%2Ca+!ma$f+PcfX&d2B[G
Gd8FrC`e8!V%2BR,feZmX$c)2BUA2Di$932GPVhAfd3mSFmVh@A2fF0HKmT!!PLE
b`'13!2-I0JpLTFpVJ09!p)p'p6$d,bVbdN%3a6*&S2B[GGd8FrCr,[$3!!!'!!!
-!!!9!!%0D!!'!!!-!!!9!!%0!3!'!!!-!!!9!"!!p#p8p6p8#'pf%KpYl`d!!!B
!!!`!!"B!!3d!!!B!!!`!!"8!!Li0!!B!!!`!!"B!!3d!!!B!!!N!!"B!!3d"!!B
!!!`!!"8!!3eK!!B!!!`!!"8!!3eS!!B!!!`!!"8!!Li0!!B!!!`!!"B!N!-"$!`
!!3`-!!%-N!-!!"8!'r3fba!NE2D`dIGK32+#pji3mbmTm0!!"J!!$!8!&3"Bp$E
,(d0IE3H!BJmNmcmjp$mZ$d*b$cF(J#X3pLFJ*3J5!P#AK[BU%)pepLJIFIG4-Ja
XYcpRmX"S$9UPphMcV`d!!"J!!!`!!"B!#!`!!"8!$``!!"B!%``!!"8!N!8"R3J
J!!'`!#)!N!-3!*!$!M!!)!!"dJ!+)`%-$!!"$Ji!3`$d,d2dce)2)r0r,23fbap
$Afd!N!321e1[H3bKC!FJI3FJphD!bKC"N!$f)G9"m0!!!!B!!!`!!"B!!Li0!!B
!!!`!!"B!!3eb!!B!!!`!!"8!ZI9%E2D`aXYcpR"6VhN#EfXB$UE"$93)pj2,46A
h@!p*m[p2$'USml$hHa-'-'lUI'*e-2E@pV'!D2H6bd8epeJ-DUJ()"piiF+!*3p
eJ3+a!RpY%2GlHK!V%*H2D`H!J4pVFrCr,!%XmZ!P!IH"ch8K"5X8$&NI,[$3!!B
!!!`!!"8!!3d"!!B!!!`!!"8!2I9,%#4XpV$'ba$fF5J(+!JP4[Ca#1E"$8Afd#X
3MhQ#(fd,&ZmZm0!!"J!!$!!!&3#3"3%8P#!!!6!!)J#3!``!N!-#*m`J!!&5!!`
U!3!-!!`!!45F+!!"AJ!X+J%!$!!B!!)Td#!!!BS!#LS#!*!&!93X)!!"X!!L!*!
$%!#3!`&8-#!!!G)!#KX"%&U3!2GQVh8I$3!!"J!!$!!!&J#Np8Yi$'ba#Rpf'!F
`+a#2HB)IE3X@i2+2G6SBJ2524[8`H!peKcpR!V%$(hF24RS3p6pjJKpY$'bh2fF
2E4bf0ipYmX"c$hHhb`aS%#YcpRJ2BKaIE4$fe8%-AfhUI')CmZ$e-4$p)[HH%2-
rd`$f)DAhIbRbl`d!!!B!!!`!!"8!&3&"p3S@J3P6r9)2GB%#Yi$4B[G8%2G6-F'
)C(VhRcX#X3peJ8#,Ah@T""*R--8b4D"IGK3-E,FrCr,Jp*pYj8*M,cS(d2H9pe3
14ICdEfd*8B2p8JY[GK!6AhAfH`MQ`3*36h8`Rh83*3aXYcpR$hPIG3LepeU3!'M
fX#X3peJ8!P#AK[BU%2+&3%'IGF(bN!"b$hGbX#X3a6*&S1BaS'13!#X6""T[G6b
`pjAh9!EZTmBR8r,Jp8Yi$fe[H3pL%#X3MhAf,fSF)&d'$IG5pe33)FXe)I,Jm0!
!%J!!$!!!&3"D$!%!&3"M$!!!&3#3!29,%+D#![HH%&d-E,%#82BK#AM2GBJC"i"
6VhN'pfCkEf+K$h8j&!+a$c(c,cMdX26@ac*BX28+peJ28[6r6BmZ$e5hJ2GB&2,
F8b4DSC!!aXX3H!05$p,hG()I,5Y&pepR[p2bl`d!%J!!$!!!&3"l$!%!&3"q$!!
!&A-2GlI,$'J3+h2fH!pL(&pY%2E933aIEHTmBKRbi28a%2dLpji3mcr6!2BKTIG
r+I,[$3!!"J!!$!!!&3%qp8Yi$e3FXhaU$dj5%*'-4rBKJ*H2D`Bj$dCk%28rHB)
IE3aXYcpR"6!V%26@ac*B[b`2Gh+`jN*mpeTN!IEHYSH!8`+a#hpR[bfKpf'Jp'H
K$e2hQ#(fd-E,(bi26p!V%#Y"%-E,'!peJC!!e8$AS3p*m[p2mX!VH!H!+a"6%2G
lI,$&peU3!,EhB3+a$feB)(pYjX)&-2H9pe314ICdEfhbi!p18Kmk$e5hJ2BRpR$
dCk%28rHB)IE3aXX3H!8kpj!!EhCRT[BU%&-2-I-[125`p5p2p0$feXYc'2,[$3!
5!!!1!!!9!281!3!9!2N1!!!9!*!$!3`-!!%-$!!"$Ji!N!8"&+3J!!'`!#)!N!-
3!*!$!45S)!!"dJ!+)`%!"J!!$!!!&J!"$3%!"J!!$!!!&3)5p9i#82-r0JJHC')
3ek'!pYEhN!$f)3pLpeh43C!!pLpj!V%-E,(bi24@b`pape(h83H!B+H#"G$f+Pc
fZ!aXXC!!e8!VBJek(bi256e8pYBR8`H!pV(L"[BPpe)#X3r5EfFId`A3&XX2BUA
2D`Bj!V%2BUA2Di"N%'U&$fXH)(-'#RJJF`+a"8N8"c$hHhb`+apj"Fch9!F`+a$
ASI,Jp8X3EfGcpR"ce8pYBR8`)DU!phYmX2BUA2Di$hF8%26"D#$e)F%bVhN29B'
I1`+aJ3C"!V%0G))#82BK""S@JC!!phX6!aph$f+PcfZ!pL(&pY%"TrChpLS3e8$
'bh2fIbi29,%0HK"8N8"ce8pYBR8`H!peJGpeS09!f[GBYcpR!V%-E,%#8#X3Pip
V"c"M!GemF6)2E@-a6b`(mZ(bi#X3ek%&543'lNAhKrE@)B#AMfX&546bl`d!+J!
!$!!!&3%J$!3!&3%K$!!!&3%Q$!3!&3%R$!!!&3%[$!3!&3%`$!!!&3%Jp8X3*'c
fX-E,(b`&1[H3!13B%b$hGbX#X3%lBm'3!28e2hN*4rGK6b`2GhUJaXX3+a$2G83
6)#4XpV$bMhAJ*3,hFDpf%!pLTFpVMbN)8#YL#2GIBS(h(h86)%&TJ#8#YL!NE2D
`pYEhN!$h@"!V%-E,(bi29,%#4XpV$'ba"i$p,hG()3+dAhAfHrdr1`DU$hG()B$
fG3*3pL8V!V%-E,%'13+a$e06pj!!PipV#&$DpeLh2fF(J$(hB8""papeG"Rbl`d
!!!B!!!`!!"8!%J!!$J!!&3"E$J3!&3"H$J!!&3#3"3'G%#!!!6!!)J#3!``!N!-
"R4`J!!&5!!`U!3!-!!`!!Ccd+!!"AJ!X+J%!$J!B!!'Fr#!!!B`!*#S#m0!!"J!
!$!!!&J'Sp"L2GIEA2fF#Yi$'ba#fJ2BK%`%fpLSC$f,hN!!V%2GB&2,!DU$ASB$
hHhb`C"""D3e&pY"8$hG()K-#82B[H3p'HK$e2hQ#(fd2+2524[8r+3aUU!C"#2G
IB[DK`J*3aXYcpR$h8j&!+a$2G836)(pYkKpY%bBR8r,Jp8X3aXX3H!05$p,hG()
3+dAhAfHrd`TrDa!V%#4XpV$'bamZ$eHa-'$dCk%28rHB)IE3ph4b%2+2823[9dF
KmX$eG()I8KKIG8`I,!%XmZmT"i#9-3+a$f+PcfX(J2B[GGd8'3pe-RS#X3pLTFp
V"i""S@JC$bK[Ca#AM%IfecBR8r+I,!B2GPVhAfd3f[GBX(J*8a"8!V%'lUI'*e-
#&2EA0L'2,Jm0!#S!!!`!!"8!8!`%!"8!8J`!!"8"!``!!"B"#J`!!"8"$!`!!"B
"'3`!!"8"jr3QJC!!8`YIG`pYpeb`MQ`3+a$h@"3,D!DUA')C$hCf!V%-8b4D$Q-
DmX!V%24RS3p6pjJKpY$hGkS)%Jpei'$'ba$hHhb`aM"XaIEIE9PL%'$"3QF`2hA
fhf)8"G$f+PcfZ2,Jp8Yi##9'pR%2GhUJaIE4$8Afd#X3EZTmBR8`X@i(-#X3MQ`
3Ef*IGK$d,hAI8#32+)%3)FXe)3mMmamd"MN2BKTIGr+I,Jp8Yi"i""DUpj!!+a#
1E""[BPpf%#X3pUpepYi#Ef+K"MN#X3r5p"me$hG8UIdr,!05!#(,0mDUpj!!jN)
&d#X3EZTmBR8`X@lbi25&ph(hB8mX$feIGR2fF23[GGp3*!PIGc$hGkS-Eh@""Ja
83Bj6PcpR""RhA#G6"c!V%)jX%'pfCkEf+K!P!V%'lUI'*e-,&ZmZm0!!!#S!!!`
!!"8!i!`!!"B!jJ`!!"8"2!`!!"B"2J`!!"8"KJ`!!"B"M!`!!"8"Nr9,%0G))#p
ji3A3aXX3peJC$f,hN!!V%24RS3p6pjJKpY#fJ2BK%`C&pe13!)Fm%#X3P[HB"G!
V%26@ac*BX24RS3p6pjJKpYmZ$e8j&!p0p'p6mX!@b`pf@[GIE4#fJ'"6(bhf+Pc
fX2B[GGd8$93'UJek(brhCDpepY%*BQmZ$e5hJ13IGK-S"J3@N!"G![Ge$f,hNKJ
0@UAhFC!!pLpj"J3@N!$bKL!V%$(hJJek%1@(*e2bN!"G$c32B[H5'!e&pY$'peK
cpR"X,h9U#AMfX25I,r6r,Jp8X3pf@[GIE4"UTFBR8`pYEJDS82Ca+!K[GKN(-#X
3MhQ#(fd,&Z$f,h8JF[eB!e)%&UVhN!$Q3JA3+a$'bamZm0!!"J!!$!!!&3(,p8X
3p5p"p0mY3BH4-JaXYcpR#&d[Gf33C2BR*')B$d,hAI8#3(-#X3e(%jTaJJpYBc&
!jBKrBU(bi255#'pf'!+a"DN2GQVh83EhG[H3!2BKe8%-YMpRFrC`F[,!Bj!!+a-
2Gl%`FJH!*rE4!P""S@J3FS#1E""b#PAfZ!BJFJEfGR2bi25G$d,hAI8#3,D!pL%
6$feIGKN'pRCcmX"b$fXephJ#YL"b$'2p8J3B*8%#X3@T$hCUpe%())EhBC!!pe-
RS23[GGp3*!H!lh8JpLE2D`*3phX8%()+(5"bmZ$dN`+hJ2E@-a3'2hN)pepLJIF
IG4-JaC%&3*BQ$[G5$hAJpe14323[GGp3*!H!D)pe3C!!A305$f)A2fF&pLTb&')
C$f,hN!!V%-E,FrC`4IG5FaMbi!!!0J!!$!!!&3!Y$!!!&J!c$!!!&3$2$!!!&J$
9$!!!&3%S$!!!&J%Z$!!!&3')$!!!&J'1$!!!&3!9!N$dNJpYEhN2BK$h@"hh@J*
3B`EZTmBR8`*3j"pf%b!VH!j&`BJ&d%&TFrC`Bj!!ph4bFrC`r5F`kQ`Idr,Jp8X
3p'Fj&!PiEf+KJ-E,FrC`A3-IGkpj""DI,rGdFL%`pLTFpVJ2GlHK#9FrC`ek%-A
R'!Kc`3FJphAh@T!!pL%)HUpj!P$'ba$ASB!VBJ+a$dCcN8$hGS""DA2fF(-P$fd
IE96hN!"MpjphEhRbi23elhN145(#G6#-XIE4J2E@pj!!DS8$%C!!+hJ-EQpLHR,
hRbi24(K[BUFrC`3@PcpR"MN2GdFR2fF(-1TX%(J'c&pYkRLaN!$f,hN)%LFrC`B
2BR)(-'#Pph$fdIE96hN0T[C`pLpj)I,!p$E,(d0IE3mSJ4$f)DAhIbRbi29l%`p
jAh8)%J+hJ0T[Cr,!03-IG`aMPjBKJ09!aXYcpR$hGkS2BK"X`H)CmZ$d+PcfZ!D
N&Tpj#'pf'3pYEhN)*kS2BK""D3e&pY!V%-E,(b`&d-Ah9)(bl`d!%J!!$!!!&3'
J$!!!&J'S$!!!&3(Bp8X3pLpeVfX&d#X3aXYcpR$&N3peJC!!e8!VH!p5p"p0$'b
a"i"UK3T@NC!!Ef*IGK$d,hAI8#3')'lUI'*e-+Eh8mX#IfdI,Jp8Yi"i"XaIEHT
iXC!!pLpj!V%25I6[5I9!mcme""KIG8`3phYmX(J(1#DU'3"c!V%)pjJKpY#aEJB
j"cFRDRpk'3BJpL95!RpY(bi!p")'lUI'*e-+Eh8mX#IfdI,!p*p1p*p8$c2c8-X
FpVJ#X3EfeIG6)&d-E,%'UPaL'3pfGJ+a$&-N@JjM'JBj$feIGKJ23[GGp3*!PIG
c"Xa8PcpRVhN2BKe8%2BNFrCh2fF(-#X3pLDQ2""G!V%-E,FrC`aC(bi29,%28[3
I63aXYcpR$&N3H!F`+a$d2d(d2dJ2-33BAh9-%(-#X3p6pjJKpY$dCk(bl`d!!#S
!!!`!!"8!'!`"!"8!(!`!!"8!5J`!!"B!8!`!!"8"53`!!"B"6``!!"8!mr56!VH
!05%253phHU$h@"!V%#&2E3r5p)p'p6r6!P$fd@-#X3p)F8C-YmDJp'HK$e2hQ#(
fd'13!#X3-IGa328e2hN*4rGK32GlI,$'-'c"L!+a$cMc$c$dX*4rGKMbi23P+`p
5p"p0mYpLD"N2524[8`mSp)C*$d4ipV$c,c!0HKmT"MN#X3mambmip,$e,drdd2G
K5(8`FmVh@4!V%)(&1I,ICa-8BR8`p68rH3P(pf&2,[$3!!!5!!!-!!!9!%`-!3!
9!%m-!!!9!"8!AJ`!!"8!hI9,%-E,FrC`aC%'VhG[HB$fe[DaJ)pe33+a33H!49p
Y$932-I-[125`A3EZTmBR8`X@i'13!2-r-[5`A3aXXI,Jp*d#X3peJ8mY3IFIG4J
KN!"[E9pe-JphAh@T!%'IGF%#X3X@lbr'ba$f)DAhF#XB%2GQVh8B!V%`+a$'ba#
1E""i""DID[GB)C!!E-9*FrCkpjmZm0!!"J!!$!!!&3#3!`%,#`!")b-!!3m2!!%
2$`!"$`m!!3m2!!%2$`!"$`m!!3m2!!%2$`!"#`X!!3m2!!)2K3!"#`X!!3m2!!%
1$J!"$Ji!!Jk$!!%1$J!"$Ji!!3i1!!)1K3!"$Ji!!Jk%!!%1$J!#$S)!!3i1!!%
1$J!"$Ji!!Jk%!!%1$J!#$S-!!3i1!!%1$J!"$Ji!!3i1!!%1$J!#$S)!!3i1!!)
1KJ!"$Ji!!Jk#!!%1$J!#$SB!!3i1!!)1J`!"$Ji!!Jk'!!%1$J!#$SB!!3i1!!)
1K`!"$Ji!!3i1!!%,#`!"$!`!!3`-!!%-$!!"$!`!!3`-!!%-$!!"$!`!!3`-!!%
-$!!"$!`!!Jk%!!%1$J!#$S3!!3i1!!%1$J!"$Ji!!3i1!!)1KJ#3"3)RG#!!!G`
!)J#3!`X!N!-#*j!!)!!"rJ"U+3%!)`!,!!)U&#J!!QJ!-L`#!!m!,J!#+K`J!!+
Z!!`F!3!2!$d!!Lq3!#!!!VS!'#`"!!m!6!!#+"!J!!,8!!`X!3!2!&X!!LS-+!!
#i!!H,!%!$`"U!!)[c#J!![i!'L`"!!m!H3!"&+!S!!-B!$)X!3!2!)J!!LHN)!!
$5J!-,!%!$`#A!!)V[#!!!eB!-#`"!!X!TJ!"&&3J!!1'!'ST!3!2!,%!!La%)!!
$m!!-,!%!5`$!!!)[U#J!$CJ!mL`!!!X"#`!#,m3J!!6S!'ST!3!2!4B!!LFX)!!
&8J!-,!%!$J%P!!'G&#!!"KJ!%LX+!!i"-`!#*i3J!!B-!!`V!3!U!8%!!45-+!!
Ca!$-+`%!$J&V!!%8C#!!"J!!$#X"!!i"H3!#+KJS!!AF!#3V#J!1!BF!!LGm)!!
&d!!-+`%!4J'9!!)R)#J!&$B"(LX"!!i"f`!#,j`J!!HZ!!`V!3!i!HN!!Lr!+!!
(ZJ$d+`%!$J)K!!%8I#!!#+i!$#X"!"`#,`!#*d`S!!Yb!))V!3!1!NX!!Lqm)!!
#QJ!-+`%!$J*C!!)X*#J!#8B!)#X+!!i#C`!#,k`J!!A%!!`V!3!i!R8!!La8+!!
36J$-+`%!$J+Y!!)Vm#!!"R!!$#X"!#S!$J%#,iJS!!Sq!)3V!3!1!$J"!Lq`)!!
'+J!-+`%!$J"'!3)Rb#J!#Xi!-LX"!!i!9!%"&+`J!!@`!!`V!3!1!')"!LHX+!!
&MJ!L+`S!$J"`!3)[i#!!"@S!$#X"!"`!IJ%#*q!S!!cJ!(`V!!!1!*S"!LG!)!!
&GJ!-+`%!9!#S!3)Rd#J!%XJ"EJ-"!!i!r!%"R33J!!NF!!`V!3!F!3S"!L`X+!!
'NJ"f+`%!$J%Q!3)Vh#!!#1!!$#X"!&3"0!%#+k3S!"KB!@`V!3!1!BJ"!44B)!!
"P!!-+`%!+J'@!3)R4#J!'TJ!RLX"!!i"`!%#*c!J!!Lk!!`V!3"8!Fi"!LR%+!!
1c!'#+`!!$J)L!3)[J#!!"k!!$#X"!&3#-!%#*aJS!"&i!9!$!!!1!S3"!La-)!!
*"!!-+`%!BJ+5!3%8Q#J!&X)"PJ-"!!i!4J)#+F`J!!N3!!`V!3!1!&3#!LH)+!!
*CJ"H!`%!#`"L!J)[1#!!#2J!$"N"!!`!E3)"R4`S!!F)!$JE!3!-!(N#!Lb-+!!
(BJ!q'`%!$!#&!J)RY#!!#1`!$"X"!!`!N3)#*j`J!!NS!!`E!3!-!*d#!LHB)!!
'I!!-'`%!$!#T!J)RB#J!#-B!'KX"!!`!Y3)#*q3J!!CD!"BE!3!-!-%#!LHm+!!
*kJ!m'`%!$!$0!J)R`#!!"d!!$KX"!!`!f3)#+J3J!!G1!!`E!3!i!18#!LFN+!!
$r!$L+`!!$J%G!J)RX#!!!D!!$#X"!$J"+`)#*m3S!![f!1SV!!!1!@-#!LmX)!!
&AJ!-+`%!$J&a!J%88#!!"Ni!$#X"!!i"I`)"R3`J!!Bm!")V#J!1!Bd#!LI8)!!
&JJ!-+`%!9!'E!J%8J#J!&93"E!-"!!!"V!#3!`3!!!+X!*!$!J!!!Y)!N!-#!!!
%hJ#3!`S!!!@m!*!$#!!!"MB!N!-'!!!'L!#3!`S!!!GD!*!$#!!!"k`!N!-#!!!
*3J#3!`3!!!RN!*!$"J!!#LB!N!-B!!!+`J#3!``!!!Y!!*!$-J!!#r3!N!-#!!!
0A!#3!c`!!!k+!*!$3J!!%4S!N!0H!!!@`!#3!`)!!"U3!!#3!`J!!#'N!%E'@JP
p!!!"!*!$!Y%!!!(4!*!$DN!!N!BIr`!!(rm!!"rr!!!Ir`!!(rr`!"rrm!!I$&4
11$%J3f&MD'PZCfi#!*!$9dp54%e"3d%"!!"N!5!!!&G28N40380"!3!!C!%JDTm
!N!`$8!!!Qdj9A`#3"J-lrrri!0Irq!$rrrJ!Irr`!*!(!3!-rri!#N!$!!NJ!S!
)N!!#3!K)!L!)*!)3#")$q!J*!!J)")!)#!*!#!J"3!J)!8!)#!&!#!J"3!J)!8!
)#!%J#!J!N!!)#!")#!J!*!J)$K))#!B*#!J+"3J)%!8)##)&#!K%")J)#!*)#&!
!N!-J,L`l*!!!d!!!,rpJ)%&0!#"363!k!*!+!3!!!8`'8h9ZC'&j!*!*"Ne[EQ4
KH3#3#3G8G@9cC'&j!*!)#9GPC'jPFf4KH3#3"JK8D(9bFf4KH3#3"`C'FQPNBAN
!N!N)8f&dGA*NBAN!N!F(5Q&ZG@&bH3#3#!K'C@*bG@&bH3#3"`90BA*MD!#3#J9
"F(*TE!#3#J00BAN!N!`%5R9ZC3#3#`4+G@aj!*!,"N&eCh9cG!#3#3P6CA"dC@e
LCA)!N!B(6f0dEf*PFJ#3#!K1EhCPE@*PFJ#3"`K%C@0PE@*PFJ#3"rrr!!-!N!3
X)!!!)!#3!b`J!*!(!8je!*!$'!!,!"F!&J!9!"3!N!-$!!)!"!!&!!B!"`#3!a!
2)'9dER*[B@PcC'aSBfC`!*!$+3!0!!i!N!-@!!-!&3!%!#)!!J!A!"3!"3!5!!d
q"$q3!`8q2c8r#$iq!!!"!*!$!Y%!!!(4!*!$DJ!#+HJ$VJ#3!a`!DJ!"58j86!!
"!"*69&)J!!)!+J!!rrmJ!*!)!Irr)!!!*!#3"!-Jrrm!!!&d!*!%!Vcrr`!!!C!
!!*!%!b(rr`!!!D3!!LamBD):
---