[comp.binaries.mac] Macintosh Technical Notes - #156: Checking for Specific Functionality

macintosh@felix.UUCP (09/17/87)

[Macintosh Technical Notes - #156: Checking for Specific Functionality]

This technical note explains how to check at run time to  see  if
specific functionality, such as the "new" TextEdit, is present.

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

:'P41-68f)%PNC@jdD@CjD@jR)%CPBA4eFQ9c!&G28N40380"!*!%*cB!!!0"!iN
!"J"f!!)!"!#3!rm!r`#3!`%!!#Bf!3!"!*!$*@3!S!#J!!!P2!#J!!)!N!0)!%J
!N!3#fJ)Srq(riJ,j!NB$"`8S!r`!!J#3!dJ!5!#3"!,D!LJ!!3#3!f3!N!-"!!'
3!`#3!`&p!!!"!!%!!VJQ!!+iVS"$!*!&'3'3!!#3)3)!N!-#!*!&!3!!(-`!3!!
!%cJ!$J!-!1lrmJ#*rr)"-2q3#J!"!*!$!3#3"3%!!"2q!#!!!!+H!!ErmJ!Hrr)
!l2rb!EVrN!B-!!!$!!)!N!-#!*!&!3!!(YB(B!!!(3`"b[rb!"lrmJ$Xrr)"Z[q
3"3!1!3!9JN(krr+K!!S"l`!#!*!$#J$5rL!"l`([CA)JDA-JC(*KCfGTEL!JG!!
"$@8!"J!!#J!!&3!Pp6%3DSAcV`RdrK4LFrC`p6pjJKpY$e8RTbFBm0!!!!B!!!i
!!"8!N!-'!!!+!3!9!!%0-3!'!!!-!!!9!!%0!!!'!!!+!!!@!"8!#J(J!!%!N!-
+!@J'J!#3&`B!!!`!!!-!#J(P!`3!N!-+!#J!H!&!!EJ"j3(PEL"TFb"KEQ&XEfG
[!'"IN&m0!!B!!!N!!"8!+2,r+L4Z!rGIEIBK3&d2d[G6IfhU(fd6)C!!*'lp2bV
br`d!!!B!!!S!!"B!"N*&4dP1$3!'!!!+!!!@!*!$!4!3'"%!&`!"$@8!"J!!$J!
!&J!"$3!!"J!!$!!!&3#3!`%3N!3!!3hr!!B!!!i!!"8!!3d!!!B!!!`!!"8!!3d
!!!B!!!`!!"8!!!i!!"8!,[9dFL%`pLpjmkm*p+Ifd24NFCTMN8m*p6(L(fhf)8$
c(b`2-I1I120r$3!'!!!1!!!9!'"IN&m0!!B!!!N!!"8!529"bcI'S26P)3mMmam
emfm*j[Ca!*!$"G$c2`Rd1acfYcpR$9328q((em$dEh8m*e0UF[HI$3!'!!!+!!!
9!$(dN!!a'3*3J4"p$e"Hp9ldd6pep6'K`JH!IfhU(fd6)CmZm0!!!")!!!`#!"8
!%3`#!"B!)!`#!"8!!3d"!!B!!!`!!"8!&J!"$3!!"J!!$J!!&3!+!H8$"!#3!`S
!+!"i!8!"Z!(P!H9Z)'Pc)'&ZB@a[Cfm!!Rd0!!B!!!S!!"B-!J!9!)$e5hJ#(,0
mDJ05%"pikQFi#eph!P$,(2D`BJ6h8`*rE4!P#"%(d)iFIA`0pe2#G6DR,hRb`)p
eb`D!+a$p)aphr6$e3IH#p&PbmX"i$N'"-[,[$3!!"J!!$J!!&3!'!!!1!!!9!'"
IN&m0!!B!!!N!!"8!!3d!!!B!!!`!!"8!*23l(2Dh2fF09!p6iFIA`24[G6`R8fT
bpjm0!!B!!!`"!"8!!3d!!!B!!!`!!"8!!3eZ!!B!!!`!!"8!%[9BFrC`p6pjMd8
rGR46M`d!"J!!$!%!&3!jp*!!-4N#8)%3I3+a$p)aphr6$e3IH#p&Pb$'US"N%'p
fCkEf+KmZm0!!"J!!$!)!&3!#b3d!"J!!#J!!&J!(m*'S%2$3!!B!!!S!!"B!"#S
[)!d!"J!!#J!!&J!!#J!!&J!@!!%0!3!'!!!-!!!9!!%0!!!'!!!-!!!9!!!-!!!
9!#l`R`Naphp8(hJ[3IGQHJmp$bJV(eG8UI,[E@bh-I92HH%22[23m`mTmlm0!!!
'!!!+!!!@!&Gp$bMe2hQ246pfG&12+23rG836,eB8Ke2bcbBV(eG8UI+3!22I23%
rG[6P,e""J6,bN!!2#I#I#6(hIe3IH#p"pfCk$cd0DS(cX2$3!!B!!!S!!"B!!!i
!!"8!&I5"3IeB"Jp$$8EfIfd6,cV`d!!'!!!-!!!9!"c`Q'pY%-Afhfd6)'J#X3p
3D-D[$3!'!!!+!!!@!!3[+L!0!!B!!!S!!"B!!3e*!!B!!!S!!"B!&[#I8rHBp&2
hEe)F$`NV(eG8UI1r$3!!"J!!#J!!&J!Bm*p#9D&M$`Naphp8(hJ[3IGQH[1r$3!
'!!!+!!!@!!,*$3!'!!!+!!!@!!%0!!!'!!!-!!!94dP$8%P$%3(r!!!#H`d!"J!
!#J!!&J!"$3!!"J!!$J!!&3!#b3d!"J!!#J!!&J!DmMNGFa$`Rd2h9%%bp@&)G6m
*mam0!!!'!!!+!!!@!#AbrbS23rG836)2GK5(8`A3p6pjMd8rGR46J2+[,r$3!!!
'!!!+!!!@!!C*EL"$1Jd!"J!!$!!!&@a[Cfm!+!(P!`J!N!-S!&!!H!#J!-J!m!%
B!8!"Z!(P!H9XEfG[!!%0!!!'!!!-!!!9!!%0!3!'!!!-!!!9!!!-!!!9!!S"j3-
%!*!$#J!S!(J"3!'i!H8"j@iJDA-JB@jKE'pRE`!#b3d!"J!!#J!!&J!@!!%0!!!
'!!!+!!!@!"8!!3d"!!B!!!`!!"8!+!(P!`J!N!-S!&!!H!#J!-J!m!%B!8!"Z!(
P!H9XEfG[!!9&6N3l$3!!"J!!#J!!&J!+!H8$"!#3!`S!+!"i!8!"Z!(P!H9Z)'P
c)'&ZB@a[Cfm!"8914$X0!!!'!!!+!!!@!!%0!!!'!!!1!!!9!"3*#8&cFf9YBQa
j)%aKEQGeB@GP$3!'!!!1!!!9!#,`R`Re3FXhaU$dj5%2)r-I-[1IdI8rHBp&2hC
d8im0!!!'!!!1!!!9!*RdN`pY@#$'JBmX"p$hPIG3(hK[EA-3ph[hN!$hPIG3phB
b!P!KJJe8!V%"piH#%m%&d'#1((em!NE[,!pjAh82GhUJecN#YL!V&""i"M"U)80
LIhB3pY%V@I,!e8!IH'pYkKmkm0!!!!B!!!`!!"8!+!(P!!J!N!-S!&!!H!#J!-J
!m!%B!8!"Z!(P!H9XEfG[$!!!&J#r$!!!&3!(#89-8d8J$Im!"J!!#J!!&J`!!"8
!!3d!!!B!!!S!!"B!!XN0!!B!!!S!!"B!!3e*!!B!!!S!!"B!"J!!$!!!&3!J!2#
I,r+[5B$e1rG5PIGc"rEHSIE4-KRcrbVbr`d!!!B!!!S!!"B!+!(P!!J!N!-S!&!
!H!#J!-J!m!%B!8!"Z!(P!H9XEfG[!!S"j3-%!*!$#J!S!(J"3!'i!H8"j@iJDA-
JB@jKE'pRE`!Zm*m*-IGr9"pi,d(hCRVcVcd2+#XI9e5TmZpYE,Fap8pji3mqmp$
c$bRc[`d!"J!!#J!!&J!$#Ad0)!!'!!!+!!!@$3!!"J!!$!!!&3"k!!m*p6[h8TA
hFr5Bp*pYkKpY%b'3!22I#I#I#I#I#I#I6[4a,e4'ld'C3BMbMe1rG5p%AhFr9%E
[6[GIEI,29&@[9%E[+3mKmp$`R`R`RdldF5p84Zp"Q8')mSp92dRfhUp84Zp1pep
YmXp89Dp84ZmTmlm0!!B!!!S!!"B!!RX0!!B!!!S!!"B!!3d!!!B!!!`!!"8"$[9
,%)Efd3Biph&!D!Ef*IGK"ZkR'!X8(b`)Fm%#X3r5-IGrd`p0%rG3p0BfpR&!aUU
!C""6VhN(pYkKpY%b'3F`p6pjJKpY$c6blc%&-2-I-[125`9!TNpR&!p5p2p0$fe
XYc'!mSBjmX"S$hF3eIG6N!"[BPpf(b`28&leA[642hAe-D(##fJ#X3K[E4!NEJ2
hAfhf)8"S$ere)6EfdI,!K3aUTcpR$dldF5p84Zp"Q8')$hG6r9)2Ge6fX&-20[0
25`p5p2p0MbRbl`d!+J!!$!!!&3#P$!!!&J#d$!!!&3$4$!!!&J$B$!!!&3$P$!!
!&J$d$!!!&3!qm*&%92,!ph%2DcAhF#YL$hF3C""2G60cpR"JMhQ#(fd14e3#820
2,[-I,!KI$3!'!!!+!!!@!!%0!3!'!!!+!!!@!#$`Rd*9S@-28lpe+9ph2dQ25IE
HSIE4-KRc[`d!!!B!!!S!!"B!!XN0!!B!!!S!!"B!!3d#!!B!!!`!!"8-!!!9!!%
0!!!'!!!-!!!9!&E`RdRdB28rHBp&2hCd8imSp$pe4"-[9K5(8r,#XI9e5TmT$cd
"2hEdj5p33B%b$e6dMdAdi2#I#6(hIe3IH#p"pfCkmkmp$dEd(dce2d82$3!'!!!
+!!!@!$r`R'UR2fF28rHBp&2hCd8imZ!25G$e2hQ246pfG&1!35pe3i"M!6pfp18
[8%'"-[$3!!!'!!!+!!!@!$l`NVH!aC%-XFpVJ#8)%3I3p6pjJKpY$c6blc%&3+B
K3(J%pe-h2fF2B[HI$3!'!!!+!!!@!!-*H`eT!!B!!!S!!"B!"N*&4dP1$3!'!!!
+!!!@!!,*$3!'!!!+!!!@$!!!&3!UmMmamemfmk$d1acfYcpR$9328q((em$dEh8
m*e0UF[HI$3!'!!!1!!!9!I6e5a33C""'33*rE4J2Gl%`pjAh82E@pj!!d4S#YL"
b"i!a`BKNpj!!*3)B)09!MKapI!hh8m*e0UF[HI,J$dN`9*&!*3DUAhF09!)B*cp
R"G#1((em!NEJhh8m*e0UF[HI,!+a33H!B`AGI(DJpe0rEHSIE4-KN!!NE[,J$e5
hJ#4Z$bMb6d(cMcRdEbN(J2G6IfhU(fd6)C!!8`DU$deXFb@,'2,J$e43)B)#8)%
3I3B1C#I2GDC!*'i#YL$hPIG3phH,!P$h@""i"rEHSIE4-KRb`2H9pe$'--AfhQ3
3FS"TP"L!phFV!V%'Q8')"G!V%2G6IfhU(fd6)C!!*'lbi25"33C"![Ge$8EfIfd
6+!+f))YIG`YIG`*3bacfX#8)%3I3p6[h8TAhF`H!IfhU(fd6)CmZ!24R5#mX$e"
SaUmk$`d!!"i!!!`!!"8!e!`!!"B!f3`!!"8"bJ`!!"B"dJ`!!"8!&`PdD'9AEh*
XC!Nk)&0jFd9ZGP*PBcX0!!!'!!!+!!!@!"N*EQ9h9'9iG%&fB@PX#6SJ3Np26%9
"6MX0Z!!'!!!+!!!@!!4@39)0!!B!!!S!!"B!"N026P08$3!'!!!+!!!@!!B!!!S
!!"B!"N026P08$3!'!!!+!!!@!!4@39)0!!B!!!S!!"B-!!!9!VcdldF5p84Zp"Q
8')"i$h@"N!$f)FEh@""b!6Mh9"J#YL$hPIG3phHU$fF5!V%-9%(#!NEJF`aS%#X
8%(J'$e49Ve4'i'13!'-26r8r9%EJphFV!V%)Efd32hAfhf)8mZ!28+&S%$8K!VB
JaUTcpR$dldF5p84Zp"Q8')#9'!05$'peJ3aIEHBRpLHR,hN14IBU(ff!phFV$cE
c6dX28[6r6I8r,J$eHa-%pe-&-#YB%28[6r6BmX"b$fVh@#$f)FAfdB"Jp(%[9%E
[3CP"L!aUVbi!pCAh8,EhB3*3pL%-C"hh@J8`mfmdp,$e,drdf!r4$hPIG3aMr9)
#'#$932Ar8&leA[642hAe-D(#$bMb6d(cMc$d,bRb`09!(hK[EHSI,!pL('peJ3F
JYS!V%)Efd3*'i$pepYpL&!D!pIp5%fpY(bMb6d(c$c$d,bRbi!p8X3mfmdp,$e,
drdd*H6r9)%&UVhN*IG&"-RBK$f)5ph%6$e49Ve4'k!Bj$dre2e4'k!mS+a33phD
!03AhB8TZ"c!NEJ2hAfhf)8MbRbi!p6Ab`(d2H9pe$hGM)C!!*3)B)09!pIp3A[9
Hp0%rGI8aSF,b`2H9pe$hGIGDN!!a'3*3edJJbacfX#82E@pV%)pe33pjAh82Ga3
6r9)%pe-h2fF&-20[025`p5p2p0J2+)%3pL'PphmTmZm0!!#F!!!-!!!@!!m-!!!
9!'%-!!!@!'N-!!!9!(%-!!!@!(F-!!!9!+J-!!!@!,F-!!!9!4J-!!!@!5B-!!!
9!@B-!!!@!AB-!!!9!AJ-!!!@!Ad-!!!9!E3-!!!@!EX-!!!9!E`-!!!@!F%-!!!
9!I8-!!!@!Ii-!!!9!J--!!!@!JS-!!!9!KB-!3!9!KJ-!!!9!P)-!!!@!Q)-!!!
9!"dMC'9QD@jP)!P9ENPYF'a8FQ&`6R9Y)!N`H$P'$3!!"J!!#J!!&J!#b3d!"J!
!#J!!&J!#b3d!"J!!#J!!&J!#b3d!"J!!#J!!&J!'!!!+!!!@!"iMC'9QD@jP)!P
6D(9d4'phEP4bBA"1G@d*-(Jj03d!"J!!#J!!&J!Fm[mU*'i$pepYpL&!A3p6[h8
TAhFr+[,r$3!!"J!!#J!!&J!#I3d!"J!!#J!!&J#3!`%-$!!"$!`!!3`-b3d!"J!
!#J!!&J"l!!m*p6[h8TAhFr5Bp*pYkKpY%b'3!21[2I#I#I#I#I#I#I6[4a,e4'l
d'C3BMbMe1rG5p%AhFr9%E[6[GIEI,29&@[9%E[+3!2222Jm*m*m*p1p(%[9%E[3
CP"L2+296p*pYk[9%E[6[GIEI,29&@[9%E[+I1r$3!")!!!S!!"B!8!`!!"8!83S
!!"B!'rHr5B$e1rG5PIGc"rEHSIE4-KRcrhh`d!!'!!!+!!!@!*!&!UB+)!!"UJ!
L!*!$%!#3!`+PrL!!!F`!#LX"!!B!!!S!!"B!3!$e1rG5PIGcp*MdRfhU(fd6)C!
!!21Jp#p2p2p-p&p"p1ml!2HhJ28lpe+9ph-(pYkKpY%b'III$3!'!!!+!!!@!!%
0-3!'!!!-!!!9!$`!p92dRfhUp84Zp1pepYm*mp$b6cRdEc[hXNEJ2hAfhf)8"G$
p,h8hpYkKpY%b'3*'lp2hh`d!"J!!#J!!&NE[)[II$3!'!!!+!!!@!$)!p6[h8[4
&ph2e4'ldlhAfh`Rcd2*21I0I1rHb4Z!rGIEIBK3&d28lpe+9ph2hh`d!"J!!#J!
!&J%$m*ph%2DcAhF2Ga#92p8JY[GK!V%$(hF29"pi,d@A,bi!p*d28rHBp&2hCd8
i#9'$r9)2#8%[G8-"2hEdj5p33B%bmX$hF3bacfX2E@bh-3,hRK!P$fe[Da#2G8%
2Ga"N%2#8pe-h2fF&-2-I-[125`p5p2p0J2+$8K!VBJph%'L2GIE4!VBJ%rG[6@b
r96pV0IGc#fJ2#@)+&S)2-I-[125`p5p2p0J2Gl%`ph%-XFpV!P#"%(d2E@bh-I9
2HH%22[23m`mTm0!!%J!!#J!!&J$q#J%!&J$r#J!!&J!hm*p$pe4"-[9K5(8`mp$
c(cX!plp$pe4"-Jpf&)G6"G$e2hQ246pfG&12II$3!!!'!!!+!!!@!*!&!UB+)!!
"UJ!L!*!$%!#3!`+PrL!!!F`!#LX"Cfm"9r3fUJp6pjMd8rGR46J'13bacfX#8)%
3+f)28rHBp&2hEe)FmZpYE,Fap8pji3mqmp$c!2+2-I-[125`p5p2p0J&3$(hF8m
T"MN#YL$hF3C""2G60cpR$e2hQ#(fd202,[-39!TL&!mSp6pjJKpY$c6blc%'13T
L&!MhAZ9#!V%$(hF29"pi,d@A)&-2-I-[125`Bj!!pR3@)8$e,drdd2E@bh-Br4p
h%-B`bacfX#Yi$f,hN!$fVh@##"&cpR"p!V%28rHBp&2hCd8i!NEJ(hKi+2,!I3p
h%2Ca)'-"2hEdj5p33B%b!848mX$hF3pV0IG`FJP4Jre5mTmZ!256$e"SaUmkm0!
!0J!!$!!!&3!&$!!!&J!3$!!!&3!R$!!!&J""$!!!&3$l$!!!&J%'$!!!&3%K$!!
!&J%Z$!!!&3$$p*d2H9pe$A13!#YL$hPIG3-4N!"ce8pYBR8`+f)(J$8Ja6*R-C!
!F`p6pjMd8rGR46Mb`1S@J3J6N!#2GICrCaJR8i$93"pi)6PcpR"b!P$deXFb@,$
d3IGKTH&!p8(,0mDJp6pelP3JBJ+a"TP"L!F`p8(,0mDJp18K$b2c$bl`d!!5!!!
-!!!9!$m-!!!@!%S-!!!9pY%V@I,!e8!IH'pYkKmkm0!!!!B!!!`!!"8!Y[8lpe+
9ph-2+2*23I121I0I+3H!pUpeJJB`(hK[EHS3A3B#4Z!VBJph%2EApRXJ-4N#8-X
FpV$f)G9"$'UR2fIbi!p0@#"ZkRaLG6J2Ge2p8JaUS28lpe,d4IGcmX#&!VH!H!p
UpeJJB`(hK[EHS3A3YIG`*3P3+a!KJR2fIbi!!#3!!!`!!"B!#3`!!"8!#J`!!"B
!$``!!"8!H!`!!"B!J!`!!"8!([6@ac*BX29"bcI'S26P)Bm*m*!!r`m0!"J!!!i
"!"8!'3i&!"8!'`i"!"8!("J4!"F!'!!#T&SJ!!''!#3b!J!'!!!1!!!9!URePIG
3aM$fF5!V%#4Z!rGIEIBK3&d#X3*'i2H9pe$hGiX#8#'#$9304IE3p*1(N3p0E(-
PL`mSp"lK1Api$d-&d29PVhAfdB$dRbhdRdRdN!"MN!$d(Z%jIhJ23JA3p@@[GIE
4$dReEbRbi!pCAh8-B`)DS(d#X3*'i(J'-26r8r9%EJ9!B29&@[9%EJpLpj!!bac
fYcpR!P#"%(d2BR)2-I-3F`+a!NEJph9*"i#",b`#YL"imX!NES#RpV%2*23I12H
2H!mS9!mNp"mjpipi"8$b6d(d(hMhMbN#YL#fpf%#X3r5mir6$&pYj6%b#",b`'3
3p89Dp84ZJ'13!#4ZJ#YL#92p8JmSmNp"m`pipimT"N%26r8r9%ESmZ!29,%#4Z!
rGIEIBK3#YL$hPIG3jSJ#826[4a,e4'ld'C3BJ09!p89Dp84ZJ(J#X3TIG`mj$f*
bJ&d#X3*'i2Ge53mS+a!NEJ2hAfhf)8$932Ar8&leA[642hAe-D(#pEmNp"mim`p
#pG"i$b6c$c$d,bRbi29,%#4Z!rGIEIBK3#YL$hPIG3jSJ#826[4a,e4'ld'C3BJ
09!p2p6p84ZJ(J#X3TIG`mi$f*bJ&d#X3*'i2Ge53!2+#X3*'i$pepYpL&!e8$er
deIGKp)p)Ie[b6d(c$cEc6ed(J2*2-20[02+I,[$3!!$5!!!-!!!9!%)-!J!9!&)
-!!!9!+i-!!!@!,3-!!!9!,S-!!!@!-)-!!!9!3d-!!!@!4)-!!!9!4F-!!!@!4`
-!!!9!5!-!!!@!58-!!!9!8`-!!!@!98-!!!9!@`-!!!@!A%-!!!9!AF-!!!@!Ai
-!!!9!D)-!!!@!E%-!!!9!EB-!!!@!Em-!!!9!IJ-!!!@!Jm-!!!9!K--!!!@!KS
-!!!9!MX-!!!@!NS-!!!9!Nm-!!!@!PB-!!!9!Sm-!!!@!Ti-!!!9!U)-!!!@!UB
-!!!9!6cd(ZTmBR8i#,Ah@T!!JNIhB3*3pL%-AfhQ*rBU%'a&L!DU$deXFb@,'2,
!pLpe)#X8%'33*rE4J2Gl%`B`EZTmBR8`pYpeJJY[GK$fXephSCpR%'pLAh8J+a$
feXYc%#YL"b"i"2G60cpR"6mZ!29,%$(hF#4ZmX$e2hQ246pfG&12,!phHU$fGrG
K"M"ZkRaLG6$feB)&d#X3Fp92E@*e-#YL"b""papeG"J2+2GlBJYNRhGN(b`2GlB
Jpf&)G6"G#2HB)IE3KG,hGN(mRbRbi!m0!")!!!`!!"8!Z!`!!"B!```!!"8!N!8
#T*SJ!!%`!#)!N!--!*!$!U5Q)!!"8J!--J%!$!!-!!+Q$LJ!!j!!!%!b!3!-!"J
!!U4D)!!"KJ!+-J)!N!-"#`X!!5-M!!%2$`!"$`m!!3m2!!%2$`!"$`m!!3m2!!%
2$`!"$`m!!3X,!!%2$`!#$i)!!3X,!!%2$`!#$S3!!3i1!!%1$J!"$Ji!!Jk#!!%
1$J!"$Ji!!3i1!!)1K3!"$Ji!N!-"$!`!!3`-!!%-$!!"$!`!!3`-!!%-$!!"$!`
!!3`-!!%-$!!"$!`!!3`-!!%-$!!#$)3!!3`-!!%-$!!#$))!!3`-!!%-$!!"$!`
!!3`-!*!$!3i1!!%1$J#3!`%-$!!"$!`!!3`-!!%-$!!"$!`!!3`-!!%-$!!"$!`
!!3`-!!%-$!!"$!`!!Jb#!!%-$!!"$!`!!3`-!!%-$!#3!`%1$J!"$Ji!!3i1!!)
1K!!"$Ji!!Jk$!!%1$J!"$Ji!!3i1!!)1KJ#3!`%1$J!"$!`!!3`-!!%-$!!"$!`
!!3`-!!%-$!!"$!`!!3`-!!%-$!!"$!`!!``1JJi!!3`-!!%-$!!"$Ji!N!-"$Ji
!!3i1!!%1$J!"$!`!!3`-!!%-$!!"$!`!!3`-!!%-$!!"$!`!!3`-!!%-$!!"$!`
!!Jb$!!%-$!!"$!`!N!-"$Ji!!Jk*!!%1$J!#$SN!!3i1!!)1J`#3"3+N5L!!!GB
!)J#3!`X!N!-#T(SJ!!(i!'Sa!3!M!!X!!U5H+!!Bb!!b0!)!$`!Z!!+LEL!!!UJ
!$#3"!!m!23!#T,)S!!h)!#`d!3!2!%`!!U6#)!!#b!!-0!%!$`"E!!+MDLJ!!9i
!+$3"!!m!DJ!#SdiJ!!M-!"id!3!2!(N!!U-k+!!)kJ!U0!%!$`#)!!+M0L!!#-!
!$$3"!!m!P`!#T2iS!!,b!$3d!3!,!+B!!U8f)!!$*J"U-3%!$`#a!!+P(L!!""J
!$$3"!"i!`!!#T'BS!!4@!&id!3!,!0i!!U8b)!!%[!"U-3%!$`$T!!+P*L!!"e`
!$$3"!$J!q!!#TMiS!"[N!1J$!3!1!6!!!U8')!!#Y!!--`%!$J%q!!+L8LJ!"@i
!'M-#!!i"6!!#SeBJ!!9L!!`c!J!F!9S!!U3U+!!*&!"`-`%!$J&f!!+P`L!!"cS
!$$-"!!i"K!!#V8)S!!@)!$)c"!!1!C)!!U4Z)!!&q!!--`%!4J'J!!+N4LJ!&M3
"2J-"!!i"jJ!#T&iJ!!'3!!!--`%!!!(d!!+NJL!!#B3!)J#3!``"p!!#TG)J!!q
U!"!L!3!-!J!!!U45+!!9fJ!i)J%!$!)-!!+NPL!!$j`!$L)"!!`#'!!#V6SJ!!p
i!#3L!3!-!L3!!U6k)!!29J!L)J%!$!)`!!+NiL!!$EJ!$#)"!!`#2!!#T1BJ!!a
d!!`L!3!-!NJ!!U6H)!!0U!!3)J%!$!*8!!+NeL!!$CS!$L)"!!`#B!!#T-SS!!e
N!$BL!3!-!Q`!!U85+!!0+!!m)J%!$!*i!!+Y+LJ!$$`!1#)"!$!#K!!#T,BS!"6
m!0iL!3!-!V3!!U+')!!+P!!1)J%!$!!-!3+N6L!!#Gi!$#)"!"J!'!%#T0SS!!c
1!&SL!3!-!$!"!U0D)!!*X!!5)J%!$!!m!3+NSLJ!#Pi!0L)"!!`!5!%#T,SJ!!J
d!!`L!3!-!&3"!U6Z)!!)X!!3)J%!N!0J!3+P!L!!#M`!)J#3!`i!B!%#SfBJ!!J
!!!`c!3!1!'i"!U+5)!!([J!3-`%!N!0m!3+M-L!!#KS!)J#3!``!I!%#T*)S!!H
8!#SL!3!-!)J"!U0f+!!(G!!J)J%!$!#8!3+MHL!!"fJ!$#)"!!`!S!%#Si)J!!G
3!!`L!3!-!+`"!U0q)!!(,J!-)J%!$!#i!3+MLLJ!"`i!)#)"!!`!a!%#SiiS!!E
Z!#!L!3!-!0!"!U15)!!'iJ!-)J%!$!$F!3+MQL!!"Y3!$L)"!!`!k!%#SjBS!!D
f!"iL!3!-!23"!U1')!!&eJ!1)J%!'!%!!3+MRLJ!"N!!9#)"!!`"'!%#SkSS!!A
'!"!L!3!-!53"!U1L+!!'#J!f)J%!$!%`!3+MVL!!"ES!$#)"!!`"2!%#SVSJ!!4
'!!`L!3!!!8J"!U1Q)!!%*!!L!*!$$J&)!3+MXL!!"!S!$$-"!!i"9J%#V9iS!!2
3!$S$"!!1!@3"!U1f)!!#i!!--`%!1!&b!3+MZLJ!#d)!qJ-"!!i"UJ%#SliJ!!,
8!!`c!3!U!EJ"!U2#+!!AFJ#8!`%!$J(L!3+MaL!!"9B!$$-"!!i"m!%#Sp)S!!8
b!#3c!J!1!Ii"!U2+)!!&*J!--`)!9!)-!3+McLJ!$I3"BJ-"!!!#B!%#Sq)J!!K
F!#),!3!1!Q!"!U2D)!!)8!!--`%!$!*Z!3+MhL!!$m)!%#)"!!`#HJ%#SpBS!"6
#!$SL!3!-!SB"!U2U+!!8G!"!)J%!$!+5!3+P&L!!#%)!$#)"!!`#RJ%#T2)J!!r
5!!iL!3!-!US"!UBk+!!8*J"#)J%!$!!!!J+M4L!!!C`!$#)"!!`!$!)#TFBJ!!+
1!"!L!3!-!"J#!U0Z)!!5Y!!-)J%!$!!N!J+MjLJ!%p`!)L)"!#J!-!)#SrSS!"0
3!)`!!3!-!&J#!U31)!!5`!!-)J%!$!"N!J+NpL!!#(i!%#)"!!i!F!)#SUiJ!!I
d!!`c!3#3!hi#!U4#)!!)MJ!L#`%!$J"q!J+N1LJ!"TS!($-"!*!$M!)#&0!J!!I
5!#),!3!1!)`#!U)b)!!&l!!--`%!$!#D!J+LQLJ!%`J!*#)"!!`!TJ)#SVBJ!",
J!#JL!3!-!,)#!U)U+!!#BJ!X)J%!$!#q!J+P,L!!%S`!+#)"!!`!bJ)#Sd)J!!b
Q!!`L!3!-!0B#!U8D)!!,+J!-)J%!$!$L!J+P)L!!#G)!$#)"!!`!lJ)#T5SS!!b
!!#BL!3!-!2S#!U0H)!!*aJ!-)J%!$!%'!J+MrLJ!#I)!+#)"!#3"%J)#T!)S!!U
X!(iL!3!-!6B#!U35)!!5c!!-)J%!$!&#!J+N&L!!%b`!$#)"!!!"6J)#T#)J!!J
5!#),!3!1!8i#!U)k)!!-XJ!--`%!IJ&F!J+MFLJ!$q3#U!-!!!i"fJ)#T(BJ!!c
#!!`c!3"q!HJ#!U4U+!!C%!,8!`!!$J*Q!J+NIL!!#cB!$$-"!#S#G!)#T()S!"J
J!+J$!3!!!DJ!N!-#!!!#T!#3!`3!!!,!!*!$#!!!!Z`!N!-'!!!%&J#3!`)!!!4
5!*!$"!!!",3!N!-)!!!&j!#3!`J!!!B%!*!$"J!!"T3!N!-'!!!(4J#3!`S!!!I
1!*!$"!!!#!`!N!-'!!!)3!#3!`)!!!K1!*!$!J!!#DB!N!-+!!!*`J#3!`3!!!R
U!*!$#!!!#U)!N!-+!!!-[J#3!`3!!!h%!*!$"!!!$lS!N!-)!!!2i!#3!`3!!",
B!*!$#!!!%dB!N!-+!!!8(J#3!`J!!"4S!*!$$!!!&,3!N!-1!!!@%J#3!b)!!"J
'!*!$'J!!'2S!N!-@!!!R0J$+LlV8J3!!!3#3!`,A!!!"e`#3!fS!N!G!"kECDTA
lhjD&3!l(TqTPk&d9Dd!8dQk('P41-68f)%PNC@jdD@CjD@jR)%CPBA4eFQ9cC3)
!N!9A6e*%68&$33#3'*e![LF!!#Ff!!!$3Fp!#Z'3!*-*NhCQU`!$[qQar$0MejX
S1$rpUTeaf$l(60(!!qR0ML5jCAfl3!I`QMC`R8XB0J!%2rqBdakZ+[TGV8!$MhP
-f,20lpP!"BihlB9`Z,0S3!A0T,kKV&RcZ%!%a!@F98c`aPB!"$rrJ!#3"d!#SMY
X%aq5$M"!!m-!N!-J,L`l*!!!d!!!,rpJ)%&0!#"363!k!*!+!3!!!8`28h9ZC'&
j!*!*$de[EQ4KH3#3#3p8G@9cC'&j!*!)$eGPC'jPFf4KH3#3"Jp8D(9bFf4KH3#
3"`p'FQPNBAN!N!N28f&dGA*NBAN!N!F25Q&ZG@&bH3#3#!p'C@*bG@&bH3#3"`p
0BA*MD!#3#Jp"F(*TE!#3#Jp0BAN!N!`25R9ZC3#3#`p+G@aj!*!,$d&eCh9cG!#
3#3p6CA"dC@eLCA)!N!B26f0dEf*PFJ#3#!p1EhCPE@*PFJ#3"`p%C@0PE@*PFJ#
3"rrr!!-!N!3X)!!!)!#3!b`J!*!(!8je!*!$'!!,!"F!&J!9!"3!N!-$!!)!"!!
&!!B!"`#3!a!2)'9dER*[B@PcC'aSBfC`!*!$,`!2!#%!$J#3!aB!!`!9!!3!$`!
L!"!!-J!A!"3!%J!0,#B%2j!$"3`80!3e2c`i!!!"!*!$!YF!!!(A!*!$DJ!#TE)
$VJ#3!a`!DJ!"58j86!!"!"*69&)J!!)!+J!!rrmJ!*!)!Irr)!!!*!#3"!-Jrrm
!!!&d!*!%!Vcrr`!!!C!!!*!%!b(rr`!!!D3!!U++$%F:
---