[comp.binaries.mac] Macintosh Technical Notes - 79 _ZoomWindow

bytebug@dhw68k.cts.com (Roger L. Long) (02/22/90)

[02/90 Macintosh Technical Notes - 79 _ZoomWindow]

Revised by: Craig Prouse				   February 1990
Written by: Jim Friedlander				       June 1986

This Technical Note contains some hints about using _ZoomWindow.

Changes since March 1988:  Added a discussion  of  and  sample  code  to
demonstrate   recommended   window  zooming  technique  in  multi-screen
environments.

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

:#941-$Fj,R0TG!"6593K8dP8)3#3"#L`!*!%dMT6593K!!%!!#L`FNaKG3%!N!J
#%P41,M!h15jI@Qp[E9GTEQ4[Gdbp&!"-[53!!3!$!*!$0`m)!!%!2(ID!$QHj!!
miBB$KJ%C!"F!!3#3!cahp&G28N40380"!3#Ki3&MSJ@)JJ#3"NE`!*!'+#S!!!p
P!*!'ba3!$!$3"5!!!!)!%[jEq)pI`B4'J!#!04%L#J#i-&V81#!K!#3I23)3S%d
!LRrKrSN6N!"2J*%"4`UJ'1"3J%H3!#!pNM6j-#%CM`B$#!AD*f&3!'5b%%'D"4U
J%6S"C!J!553!L9D"CYdUXL-%!&ke!V""iQV#&#i!8!#!)F#ZIr)!X)-E30FrI4i
C,Zc*&m"H!$*%!IKD80P)Z!!m)*iVVqlG[(S",$!l'@Y2(D!@J%TSJ``"(SJ9af9
F9q3r[`b0QKYJF!+p0h@%a!*5,d5d)$`qk)!(,D&!!!`-VJh3`(G#"3Q(0d$qQd&
b!"G'h-LK!`5),eVH['Pc*BdE-QrZ*!$aaJ`)'L!#(RrH)N#hMKih#$J`[ri"V[L
*RflqR,Kai2d9Tak!DRP%K6jI*%$2*)G%mN!6E-a4`L,b!&02'Dr8B8md$eK4)6e
dZ(%,-Jm3mB%GI'$`!!V[Z2"!$21m3)-mRl$`!"@a2($&(*AF!`FpeYKJ6aa!b11
)21$%#1-$+53N38,1&5J!!cDY*8'8Dke9JNF2k'(2#e*`8-mlAXL$6JVeb#!'"21
mdN1A9GMc6CJ[l-$EI`NNC!%!8h"j4CTLI%#%''mJ-BBQ(k"3cadjI(&(23&mX)B
mJX5bD+0hd&KQ1S3DLLLDC*U*TTTXZJQRR(6DfGY[H3+`Thi$Y[TU!cEa9f!"46K
"a!i0l*H3!+`!l!#&&%m-833498K4"!K%[(&&GYZK3!FDCA6hAAM9@3[H(9$3)FF
1)1LKA4Y%T#&(G8Ni38844a3K43UmiUPR3Ed1L#@p"YQUR+m!!#Z5IrB'Q#q8crP
P$3!Q$1!,!!dd%F3453`"4F34"2"2HLG)8BBGDFa4"KNJL*'($JN-)8FBDC`"!K4
b`1Ca!ND8)BBFGB3K4aiJa*!!3`i`#+K[[qjCPB"ppZ((e88*PIM&Rk9mdBBmMpa
abc+A1PUK18,38d-N01iJcc[&X6V[[`fNpr0rpeC&(%*RiaF%&@Kd$!)9CBb"KKY
TM"%''b!im3BGCB!`aKYZd)'b'h1!--GfJFGGH1*K%&S((5$8-BGh+Q-hVVEKZ5$
JN`5Z4818Hrj`VbcdP"0#Q`R8mim@FAkcBip`S2')KY%!XS)B!Z4i"imql[j!(Pr
8B8!3Telc`aN(k!l"-h83-3%)),C46`&#)2P!%Y#Xm!%89)#!a`"5)##"!&#X!-%
pM$SUJ#hL2b$'"FZI'Nf0"X#3!!BP'!"#34&!`--$cM!"#SJK!emV$JbJ*"`!&1"
H"L!G!#*`,bG)d!VhiS)%ah![iN`MB!8L6Tpq"M!5qSaJ)DbAf&`&J!-))3bA'm-
F'P#&!6QJJF3T!!JT%!"DD'ilR,X$#2E'K["!$J4hm-kf3%#(0i3XF%dm`aRBm,%
RdZ%1C5L$'jKi"bI1`A#!5a`+lN!Y1341'Pm-!q#Q!B)fP#%-L&0F'[331$L#V)K
kSd-D#*H#kJ`4"'3SJaR#8!Ff8#k0J"[LGrjSZ6,)S38HSq)B$#F'+LS1M'9`JAA
J&VK!$V+3!)I%j#A$N!#(a%dVF(-)JaXVj`BUcX'8e"SL(1$!KVbTFBpEY"XFce#
'a+@"$La!BY`XHFV+HHb4ND`E*5f*b-$*E@q!-b2)b+K&*XDbNA)3("Tff8YVSR+
1JAY$0[&i5m+4acaK#0Hi)QI**&lV$TUF@b`(&dJQ1R'Ehl'NZ,E$cX#jFeZqh')
kfh!i%'a-Lj3ViK[JJ%6BX1'1fPQ$iKJh,Fb"S*CVJ')Xbi!(9G+bQf6-'aT!B)B
hX+')m#a1P#5iJ(ZCS"lH#J%-[T3(eY(M&2D!"Mh)%!G0M#%56e"3KQ,`SRPm!JI
cH--*3`H!5G"M"f-B%L!1`3-)!)N*X*M("h)`MdFJ&432#%)Q-Q#!"1!"HSLS!`b
kB)!F)'!lkS"!-5+"[NMBSaSi)-'DJP!-1E9K!T'!"2X`PEcP#B!$XrK$(1i4K32
-p"Ye%-8I@X#))%`J!$q`!afQX#%C2-)&GeTT!c0`Vam%654$SipU"3!"eVUfYE"
p,@Z"eJfK%BdqXFfYE'%,J#LiKc8H58!!',&ESfe&Z1p"l@hRBpbX%'GJS@X!!RB
SQ5C!i3SVJk(Hf0#!8pLVJ4'3!!je%["$lLJa2!hB`i!Nd-#e*#d*p!"$2BM!"R[
m3JKI`!-r2K'fAih0+T0*QKASm3%Th'Q&HpU6"Uc$i!Dh`@9PD0BGh&!G)E!VAIh
Yelamd1!1@`F10U2$%0i35"hd!!4'8')38G#'2"6"$JKe!6A0'-b3!0SYL2$+-,!
mi1%H$b%)8eJ@L18JBK)(lJP'd2'm50$M*RX(@Qe)JKZ#+@8S2f&b1P!b#j(3j#i
R`3Kc1pNBeL#%0q"KM('lmAR[%-`@[cM'-bj$-)GFj%#QB'j)b*@@pj5",[[C`K"
c`P+"G3)r'rS)CD!$&-4*"a5BP!b,*R+1jFA#&4MDce0)G+3EE@-di$KHXGV`TEX
-j49h1SKc$[')!aP-+NLK#N@B0))"81K4pcM6LQDdSaqkk8Q(QS8GX(@(Fl8V%1c
KbhdBp,aiE'XA1(X2GT`SHGb3!1aImhR8a!EA(RiFj'TE'`!F-(5fMIhJ4NUBfRY
Q5jHGl3*S,h*adklfV*%,RemYpcl04HeTJh[[I)YN6dRV``0H)!p34%d1bhL!#Z6
aMh42cm2MhMD3!)[JE346c'+@#)KeX6Z%$!HR3"cJdK!)2!9k3%&1HD$(&q``J4H
ii"jl%--$R[!DCEXU!%3)!"UXmS%Hcb'*G,!E#&MXBKJA6XEET-1Gpk"#rl+`cdh
@QmID#1&cCjPI`2U"SHQmkX#G1-AI@E'EM8i(T$Y5cL!``DRAR1-DcVVRI[lj,i@
1!UiEHHN0'-5h`heTU6[6$9#@FTDr(Hbq`r$[9XCbdcA-`QAC1JhQ33%9a%aQ-k0
CT+KZBp(KA%Ddfph1H-IkNS9Y(86RQXJS--'MHaf[@GGDf,MHp1A9r-iFLjk&IK4
fUGFmHdq[1G9%lRS`[9@(-XMDkAXD!HP"%(YGVjl4YYrlm[X!JKHS!!53!!H"#Pk
3!'i,#(YQEea$kj%2J"#-QYh9[hkdi@h1l5mH@![f-r@YVcLJ#phpK&qhXp1[5*!
!XAq,lRGlHd*[bV9DUZ9[`I9E"AKE#-J`r))P!M!'5B"15,4Qf*Fiqd43PB4fdk*
'&aK-fIG,),"04r42i3&)JZ3G[i4,)*!!"%3!!LH'!d0R14C96'Rd(6B$-LG`"84
3"%C`!LN36%'N-B-M"f6J!Q5J4Q'!"(CN5A$`"Yj""kEN41Rd463c5A9J4YENJB1
$1"dMKHI%48jN4T1d5ki86jaN6)i%5@8J5FZ%5U)N0emN6PAN(Gj%8ZEb45"!KSE
M"P1%GY&@6*j%5)Bd5SNNKddN6GLh46CB0i3$-RaSKTPN(8%J8,085hR%JRUc43p
'"T!!Kc0Pm%YP&)DR0(A00!I$K`D`F3BMeBQI@)2AG%aXk)EpC)L"d`BTJ`D8!`G
Qj$'&mdGcN!#&[0Ja814%aB40`P40a@5#3L3h'9K&CY!bEA#(J`K+YKK2P5K,Y'4
,HQ41Fk#+K33bH`0[BK!iHQ0'CP")pJ3#E[!hfX40"L@+MV5(bL5*dYD"P&0-HN3
(PL3'0N1+XF5-&cL#D8!'JE4&)R1(EZ3'G4!b0Z-jTk%#+,3@3#""4R![@b""BA!
[C#""Hp""LhF[qL!%JN5(91H*CT!!"l$B5i%6LAlS5X%%4pU)LHA%LCC$13598BU
6K4VPJ85JK%bB6mk811e)18k3!!4-%%m6L(f8)cG(b33N*8jr**!!3$G5!ZP*+YL
0@q5#-!J#1*!!LKlS4R!%5ajB6,ci"QG`-Y-S0d9T8(K30j0M8HC8KD8%10-SP34
P0pl4NiG8"l2%D"Ji,KE&M(2J1@-aN3"`NI-#"IH#"4+8NFpa"K+N"[Ib#"*8#5#
*$6X8!$M`"'i31*pC4@eCMS*$1'2J5*mTMT+6Ml%B6K4)PD*BJHq%JQD3!*8Xb*8
af%CKX!B@*C0KF)RFb)*jk6KP!%P`8$H3!*FhdC!!I6CBPf9`PpNdR(ZjKDaC4m#
CLHBN0c6M"RMMKp-'5'r35fj3$AhjPd5Q6YXaQ'Z'LYF"GQ3341ai80PN4R53!)9
ap'6M)QANN8hiZ4eA"Nc5pTRbQ%eI-(PK-'CPKJIX+*AP"CmfBij%p$''k35)Z33
5&!AhBJd5&!lh!Jm5K!rh`JqN%`!2P"`"F#9k%J!EJ#8"%!)MZJ)J13I8j3e,qC1
'%j4NB%PXkBj2'C1@Z)hBQ8Xbk6(9@CVLj)PZS%EG9"laH%Vc@Bm[1BNS*T8Fj9&
8P)U"ijlc5+5`K%U1Z%JZqBG$9if&f%ah"Qriq%I25!BY!"Z8FjAK5C6Z1$J`PNf
#f$%5&BJRmihBei@&@4`HJ*J$)%%0F#m9)%%B!**S%b#,@L!XB!45@8a0B**"3!C
NPi8Z-h45Q@QKk*h08JFEQ!)CGN-Te+J8)!#)3!3(986(+3H*mid1"9(HZ8d`pN6
9&!Chm+$8k8di!k[KU*XkfBj$p%Ted!C`S*@3!,1DGcJ(Bf"'eA3jG04rDUJicCT
&EL!%[e5BN[-G8cK%GJ#&Gj3'Z+K(hKQAYD3(04Q'E'!c[!3#("0)6Z5*Fd",T&5
BeM'TC&")rpJ%"aU&Er#0h44Y)eC%f43&GC!!0fY!"#FM4-&SRMJ*5QR`8B$8-I5
+-i(%-DI*RTffL(D`0`@TT&dkV8c+V-jkVGRU!YY+"SP6"kh85b'EXMD$-da+1'b
!-fBT"q)DXa-lVqZ+-p)55i6M6l&C6![CN!$q+!Gh*MH"G$R5&%pA3#eE4!BR)d@
pZ8KT'4lUq8i"p8GY!,'3!&5YeD4&(0-bEV#3!!"kX@fi8)i%19VBMN+8KE`%-Nd
dVF@8XKB9TTE%T-9d"#H6"e*`"QkJP*ciVj6MGqaC8EiNTj3c8''J"RK*BXNCT0)
+(Yh8PQ&JN!$!Q$*i8jZEZ,MPpSY-5Np51JAL5NX@Qi+Iq8FGLl2p9"`fJ*L815m
IDD)VQU)X`++Ym(%m9!`3@++Z-L8JqB$2%8mGYV4Vd%4`8!4i!$LrD')JB(Tm5dT
rk`CHi!8Z)!H!+`3*1Rk-0b[#@b!j!3$h!!Z2N!!(Mc!%8h!0pJ!(H'!!!e3+pQ!
#S&!22f#q4C!!@E8"$)%!![IJ"3P`$e3`"qXl"h*J"kG`$kC`!Reb$ppJF`$h$`I
$"JV$-!i$-4*cFAZ"A,CPJ-c9J"UmJ!EBJ!$3(VP3Erh5E`eS!PCa$kmJ"[N,!2-
`[hm`"5B3![4J"#C!$iD3!!1K-!qri-!5T!,"Zd-#J!jTL*+F#dSi)cGT5Nd#&Cp
#**!!FP1Y5MT0XIN&6P!'G`#I$'Tk@Ec&[mH8L81QS83'8b"+H"Xi2pZ58#UQJ44
0Z0LG+Q1$i#5Y6hJj@JQ3!)'cTV+j,8RlUSN@-MBE5r$*VdR+5hEU4+4C6'P*5[4
i"LbSYl&%8(BSVa@,JKMlGd3Ub0ENV#!!"fR`PK(bR@mNG*F65'L)"TD$IDpTJ54
SUi-,Bh)lKS,NKRpdabYS6R1T1&qDK$HcXa8,PQpUJ9q8"LH&RQf3!$L%-lG%@e!
AQcGSCdCaF,!ikjh(H%cV#')#eDcr'V,'LlcV@&)RGB,,Z'DT($Lm+%L1T)MP5+Y
la*rGQS&h+*!!bfb-XI6-TeQDKA-i+hP4l0T,ZmKSN@`HaqJ'I-b-U5`hcr6*MQ3
'bZ5@9ZUDIq4hbDL&)XL@GH1b1PY5GKT,[`QNk6UhVTL5e#K)K"K+N!12C4LP6m6
4HbbBIQLB%XP815""3h![4b""9(![BM#C3k`["&!#cI)Xic+3!1N%"GUe0jrF-UH
CVeUiXD9,4@B,5h+6MQi`5EMNXA53!!G+fC4(G!ED!6*9DUajDakU+%3L$8F4Ukq
*4#M6mNGAF-C+DU2T4)C(+Uh&0,"5DE!)Ul#iLXR3I&&I'%qHUCYkqCQ*8j9Z#J*
kAE!(1fCq,83SN!"*Cq!#`F5[Bq#[I!S&E'!jPpf[KI1[)a9NRjhCSEhCM0C2GfD
$G'$'D0c'1TSi9'3'P-1b)jd'945)XA5@6Ff6p*L['4[1D9#VhQ'&GB$9K-1HDR#
6JUf6&qe,*h@6*`-i)-1bJC40d["#-B5+E&59GhLjRTM(6#U6Ae!%HeS'4&Li4#4
-)M@3!-%S43!0M9)j1(2J4RSd"[3)3mQYP1E4f#$!ej!![E!$QFkq#+!b@EUTrBX
H-meDP-qKZcGM`0Di0-D*jNKa$&*T0P+@h,1!RFpGD$M&6A9k+-P#1j[$'+P1P)'
BNmSHL-p$UFqRI(BJ!aja$%H,ZdK-I-mE%pMec0j#9mkckBcM)U'8#-@Aj0STRFB
$16M'1MP9j)mH!c,Qa-KNN!$HHJbH0Ik,4k#UQBb0ijbV9af`@NK3pF64mlaQe@"
+[p520S1PED4&4[Z2fIHC'CY+0q1M)'2QV'e(1GM*@G3#S#c+ZSQphY(9!pQ@G+l
4[cbhQra&5*j)*jl)JN0%&V9lXqR%b'a4rMKQkiK0FJdi`B5Q'l@m*e1DpE5MP-0
4F%RGLfK08haiKJN!H)"#Hh)!pe)(%[3(,1S!)fS",)S+)bS,%$J0T#-!f`#"rd!
k!q#l&$!![UiR!p!"@$)!X+$XZ$$YbU$Xe$$YkU$Xmk#Se)813`eP!pP%6X6N(k@
JFk[U%Cj)9@Q(c@b("r@,#X93-+3iCle&GTMG-*3hh"dbNm2+LM56`CQGN!$$"QC
dZ6K$JpjCKH*Uc2r)V06L4L#ShPYd1@50-q"pKq0He,cp-EiGE@C%VrPF6&dBhPR
00jAd"T`HZNB@P9q11F@"!E6H3[FL#K+8#[Ib"&r3mclrmd!Ip%)rp%4Ip%Crp#%
C)0ql,p6e-`93P8Ye,r4Q%,m5!-*30#*-@bDF@JcBJ1NK%Ylc*b%!$$&F0Bm5+@[
J``kXJ-(9B0RfI[-#+crc!%`i5cJ$C5ZHp!95%+Y"p8C"$9N[0'a[Eab-E`MiA05
&q$rM!#*"$bp3"26`"r!&0T5f*`4J"8%J"HN@6#!`4@rJMfb`DHQ0TCNf5F'8J9C
H(HR0[F"bCq`i,9`1cF&%ipjKieZqirPF(9Z1Se6%+`))!%c'bj-8"!NI6'Rj4Q&
%"m6r4L"3(8c`"%i3D&6!q[-L!GBK"QP`lqLL,ZcL,Y623YiRr(4J"1ZU-KAf"%r
!"%83"%l`rAYL!)#'BGm'"0Da"pldCVqid*i2qL#!rh4!K(FY'Qd(K943jPe#d3i
-4Gk3!"rkCf`84aL!-C['U(@q)X,rSTFCk"ECa-b4,$8LG+C2ZUN"eZ(,K*N$9AR
1c#P"0DI%rjNG'T1"bJA5`M0kj[FTJ!B6r`60Yi%k$FEdb*j8!J'KMqrl0['R`63
Ie(-#fBll!`"3DGLFYr5faS+)pAT#4#Dp`BX'X`IX@KYB5)%NcmfhIfAImNCq@ab
)3`&f,hTa!li,q2)`pQmT1DNACjDk@4V!IV9NUi@KVQ9))TBP131a,f0KU5f#46U
-'!3@A+E$f,qZTBIX4Yf3!#LRC"UP0Cd8M*jD(G&#+XilpEKLJV0B%H9J-(p`AJ4
#+JM-1*b,5dCE*"+U$$G&[*D2r%Nh65)Kp)jkm!I#a!23!I-!'TJp5#%T+)@PD"q
CiK1SLXSR&6a#2BJ",`"m[!!8B!MZ34Li(YP$&pi*D`-X6Nb(%B%SS!@DLkl8RpV
!IlScl1m&cB&5-Q,F3'fUE#5SX8@"&d3&mSbJqAe'J3%iK`#J$JY#1a3DQY$2f$p
QG!)5"a6mI`q0%&)1dY5&kK5VQe[l6kN0ML09qm))#-L%,#3'q*Q!'2SB6HSl-8A
`R6a"KkK-IZ#X8BKGKJQ`[,e""Gl!%D#!H`-&-%64TdaF!2*L!S*%k9K%mL-$r)a
'h#iGm50q[T!!1")TiL4"@Ap$#Z3LPCKZFNq2'B6-EEY%Z(@95+M&6Ja$p&$0mD2
!FE31iZEc-pK2qcP$ke!6Sf"*"'FY)'HNQaHdI,)L#!JL8##,V)%Qb(DXPh%E!p1
VHPf[l*@J61*#1B)Q`-m8$M53!!F$Kr-b2A@4#AbK)eKiQXca!eR+,q%e[a-$!d$
0V&N#mP#Hb)ekTdd1BFJ55'(J$"`12E6HU&akfeV&a$T8(2+$',Z-rF1$Z#p`e",
+#+DHdh-U4kl+aif8-e$P(YU(QiahD&eK,i$Q&(pI5r5-RdbJk6+#&T!!,&!jXLK
V5T-Ja$d4r*V-&8!#5'PCc-@k#!*i!)Gj5XcL#D3EkfGSDQ#kH3+faQ0-%[)A'3F
Mme%Q6,!UiN26Yaa$SeTNMD2[P*3qRRJ1[JfcZ64A)!Q83fqb(U2M9L3pfM%`-Mr
RpIbLAlUJ!LLJ%ZSL%*!!&@HEdY%q3mHY0C&TP"@4er%CJkA3ciM!r,MmdJQ(qB[
*Vd,#3"XiDm+IVE'1hiEcN4i-#G!dT21LN!!*l`M#!&0)qj*8iEKpQF`lPXG-GJ3
V!1PjHl`3")kD'4RBlQ+Lb@,,UbkL!"jjQRc0V1%lILEL-+RMQ"b()`"`2%h'rPf
"@a38%eiL55Ib6-N4&)C%4*BB)iSELF2[#%F(pL36ii%D(#b,FTLjSZ@3!,+*8E5
%``U*Y#%f!),-JcQKC&%V0$T&ARJEQi`)E*'fMcQH'02$Vl`$Fbb(HZEEA"p$%a8
6Kr0UP#$!dK$+&b)(N!"!+,+%4p$5G*Ri1"m"jBZXLqHa08i5qmJ,KF#P`69-%28
T%aCJ)&I!$'!"b'YhC,mji#TCJ)#N!bhJ95V)lC!!+amNX1!"L4(A9!k'8NcL'LD
KDbSY!%BU-0R(1XHHR$9@`-mBblN'P*T3'8!"B&%XNXADBlf5d)fbPLP!,6Uk6fF
A6ibUR#4(%$hd'#AChdc+ARYX#8[!REaFPU6iaKHT!fE!$$K*Z8Gq&Q@$XA6EBPY
Z#aBJ$H8!#h!eX-CAcJX[F23DTX0mQ"!cBJDp$)-FpTj)J!Sa3"8!!"(J%8K"4r4
@i!S&M3(Cf*X-%Ve8DUXVqffJ`qA4ASRQ-PZf#'EfSLINK6C39-SQ4)TFcE&B-Lj
IfdS68pUT$Gd5'&1c5K0CibM5bMYm+cB!Bda*&f%LHH!iY3#T)i8-%qLi&ej!JTL
"Hb%5b%!8!!*3J35BJSdCq"+#$d!3#S*"1!J))5%SK)A!%,KMHp5$0f!MF)51!"i
r)NJ-L5,K#&V%!k!"4J8Dc)-[)!0S4('iQXpK5P3*!)#Le!+j6!pP-'Pi#6$"!9j
K,'5&0-b'i6!GaX0X)5X-%f2#"9L#(,E$3N(A1$$NKemb&4b3!!3+9kak)Qj*QfA
"465h"ST*5RK*b'CbY'N8M)31$"Nm2b-9MJ4,d3SV*bb8KEL3!"C1LNTKpNjRErJ
f#k$"!!#H*c'VTr@dRRU2![#q-R!%r8X9F!m")#hFKr[!"3)!1kJBQd%3E!C'X$j
$!3$)1!C!KkM#*Z!q03%!Q#krSEFNK-f!#3`#FKLI!+"mXS113!&QhJT`!"e!!@!
fcBB''X"Qb!6emhlq!hIJ%D,!rJ3!Q%!&U!LkB6I`aRET'hqMPcc3cA!*h#ImP*m
MJAi#!2Z*!"U#4f!$&a36(-i9%!mq`!EJFQQV9Ff0ZR%hE!RIQ!*qk4k18!"`#Hk
$64!!kH%(D"M6NJdf3b0SRqmc)+"3!D"#@HJrH!Ia)BBUN!#,F!-#J#`)!2"JL*E
3+"SrG8)9PD$q`#2m"[jC("*!#K!"!3!9L&%R5NF"`#!i$GGJ$!J@,!!"9J!HF#c
UJ!e!J#k!!)K""2J"3N!1I"Cl8!,Z`46!"0VM#X3#'(!2QNBb@epJS"*!Mmlb!(j
(MrJ$,'!"1)S633%U4"Ui"!T-$A45+Q!2B!%H)!!IB,&FJ5!!#8V!!E!(hL!8G"E
hj8R[`@5TT%j$J-%"3@!%3S!pq!0jS*01M3C`$l6!+mJ$$'!+9)-Rd!B!!IYB!@(
&(B5#IS!&k0ipF"TMB([)!!TJ$B,"!cJ#pq!+4)*6%!-qbc*%R!@#Y-`,)9B`2),
A*!&3B35N8Bk*3T!!JK,J!qNK"XJ"!)!'4)&"F!l1J3`m!AB!&3+!%J!1"K9!d$b
&5JNDUKMBQ"(9ZE6$!$!"*S!lA)FE0D5#e(AB!)S$F5J18d)3I059bJlAi30i!#Y
e!"3U3M"52B*-&36[N!#PLP5JX!!Q3`$SU38"U2j8RbT8LbT42DT"&DN1eD6+9*H
U8`@Urf+RTX0eD&5EDP9pUNVeUQV9V-T9J8)l*!!0!+F@JTJD9RFU@'8!BC@X-J#
FUP0G+NaYU6D[8-R9RHT8GkT-ADXe&DcL9%1`8Y%U6LfVJU#X&LUbLP0VDPdeV"Y
9U0,9R)T9V@TAEDb3!(@V1YE*'PNIUf5YV*6eXQT@bmTC-fYRaDbJGE-beDNk%Y!
U5e@XL$9+H0E9HPKA+QQ&UkmeTjE0f8TEDkYY[Dfi0EIUeYh+@hZVEb8$6J!)K)$
lL4cik6pB"IB8#X!$-!!!D!!2#!#[5b68%1!+"SEV!8!('l--f!6R-&fM!!SB!l4
'%J#(8@!62'SB3!T"`&$F6di!ENV"GJ8!G!!Tq!"k!"8'J%4J!+2!l`%#T-!%`!&
83!!XJ'`5M2e+"T)!2UL[EJ!`j&F!`3L3!))6)!8VS)8X"4H`B*d$*N!+5`!Ce0H
iJ&rp(LP!#P!!(IaA#X92'3B!q,"HN`G!"3+3!"k``)+PHE'![h+!#(X!"USG'!8
%)aNJK5J!#Y,$#)L[@U$#!S"U`&p4!&3S!$jJ["j8!"!13#``D+K@3-N#!*MD$RB
X#cLb&e8#N!##pqS3[#B$1,,aYF-#J"i3!+D,3Z8&4aB3"!"L!&b#3a(BX3$Jb$j
8-9X3,+MAT!&3330)""%`"Jb##3J!GMB+`)!)5`"QR5ZS0`(J$S"BqLSCM-('l,2
!)G'#f!2V3'5!P!d1HSF-,!&'L`$iUJ8JVj(f%B"BA("N94LG$3#EB-FLJ$`EU%4
!#$!)#`$91PJ!F"%BJ"C!'$N!eJD!XHNeVF2pK!I!,pG+KJ!3BleQZ1NAD`%*#0Y
Bb`Z3!%)6i!ET)3&`!9UlE!2!-GLa'#$D%J)!i!+UV66BX4!JfXS#!#!&UQeY!Dl
C&J!S!)4!!USYGJ@Z`&,GAJ3C8'hRJB0&!HP"!GaD'e"YdbJCD!+N)0p@"@8,D`9
!RL!$2`#JUP[04'm,lPS!VS`J25`!j)!#PUd!q!$1PKT)A%YEF3ZZ42UhV%$LhYT
f@h"VJ)1&"4,A$q$DJLX4rQf2P3`I9J4Bh#AJE$P"HQ!!+X`$j0Tr!!S%3*6pYjJ
J2@3!Fm"#V%)!q,H8)$dm!2[*CjGX3ILhN!!JE0U$5aYTrbdMJ!S-i+&#!&#E%0V
#[d8%3YFK0&f*HR5E!#(iVh"!bNi'%R"dJ`!BZ,Q)!!#SJ'8,!&l!dA8#)!-iM&Z
5+aN!J!iSZi$JjKi-*8"hLd$C9EKP3ql5A5K3GK88`hLS*S$ZES'b5cNB4YVYZ(h
A$*4GKX)`,L`8S,YaS1cb$BD"AEXYV!8!I+$XMK3!i!$f4-2YZiHJl1CG"`!5L!$
GP34PpqfbhJCVH[YZ*bLlA#!p1!##%(P2,bSSZeK!q))$!!!#k1iX+,[KBmSQ""C
!Ghe"fB8#5MI!mYh*N!!-bLj8QV*3J0UHAQT3GT&!V881(%$B*S4[F(66(e4i!,0
Zl$S(pUY3NF#+43jL0XUZJrC,"0k[-4!!NU$0"S!Jd(l"*Z2%!P,fccD"pUYL'5F
C#!!d3!$2JID,!k$#",L`BRB'")!rd(la,!#B!+3J!#J#!Ia&&5S-J!S9)#f)f4)
3!+b[3Vfb!+!#r&f`F&!$`$KS[dE@9HL!5aX!hN(laDHZ`JK)f3F3!2C"q`8"8-%
#5)'aX'@"J`"3!1fA!b6KZ#YQVi!!X!$Y&`-NB8SJ!)3"I+!5ED$p8J#SN!!"SUb
BA3!#)!qdA`K!KLmU$K#f9))3Y0m[+aAXCiIp"b8"%V4I"*!!(JB!![kd"Q&,M!5
&5J!LE!dBU,+Jc3+!%L!!&'UF"3!DJ"*)fBXD!aUa%q!(H4B81$Y&2!NX-DAY!,C
!bPi#!2!*,$'Ml3$#J!#)!J&X!b`a2)!+)Z!RL0Nr+`3X-82GQ(!J!"!!!B`',(&
&,3J,i``(!$V3L+%!%,J)##!MT0mDr!FX-6QSVdb!"bm#5qaIib`&hESeq"*BBQl
38-HY-#D[`"8EA)3")!`!!2@Y`Dl!%P1$qPS@a'a`d!@@'"U%c3DV!5TX!2Lr`*8
Ce&HDGfUPJ5A@X*)"ZlTDAHZ2J5Xa5!m#i0XD!A0VLB&"HLJ"'S$eZPY,c!XHmNA
JYlTf(PKLA2#3!,e!FqfhaCJG2'6afR[4m0!!VL&h%3-$F'0a6aA#C6+,Q"X`Ai[
l!4Va%NM**F!K3!#,U`++F89''-k"m*EFBS`0dS-*L,*#@6))!#"JL@Q"8Gi-3'$
Q@Q+`Lc#@,`@`Z&DJ%6F"P)X`k%'`,EKK3#XIC&T$mlD[!'!$M6J+"&aD``-!J"@
`Z(G!+b1$2Va!')$&&34T@3E4'Np!ELeZ)dM,f*I@!0Yb@h!a352q!8'AeJU"[Pa
``E%6`!%A)31-cDKFF01aTRA+Y*ES%YbqZ`!'!+5K"4H"%E-&ZQX"22-51,BT3!J
6jViE!Mac&%M-+H$#mJ#kb`*-XdJ'!#N!m-hQdhX$2$-85-NUi#[XjViV"%`c2NJ
2+L!Dfpl6f`4--da@!98")rGG,1#D@DcFGE41J1k1!FqX+p,$#PJ,-)$ZZJ(A$!Q
mme,![*-K$h"RAlX#B1KE2Vf%`$-hJH--!&C!1Al2IIF4b1HLE)jThR#H$*U!1r0
KFd`&Z#hG,3Ab'4UN"aDJ8TGahi8&h$QBQ'1qV!ASlLk3!-qBQ3AJ!r(EGif"Eal
,@4%!C1I6'`dmm`ri[LdJ`ElKdmX0j$-k5!mYB'`fhp0l$VKcZ"eKMPBk6`Cji*Q
I3'*Z!3j""p$GIL#IQ8&kF!'[DdB2@`6JQC@!K(B"8CBb$pX*i*[*`C(11-9hf(S
!hkbJZ@fcrEbk0J9iCLC!!G,$#h!1B(VB4Z"rbj(VlV6pcjK&2Y-$-heKD8#e93,
bq6Dr!'B`&UTY&C!!ccmC"YJ%*P"Y`B"[0Y)!!!C3U)@XDpH!C`i#J4N'5')`8'h
YJ'ZfZBRD+rZ!DKX)A(2`(3NDdblV@NE!R9FN!)J"5GC1kpT,i*ST`89!!H9B5FI
D93aFd32`Jk&A@GHf!Zi-Nl[`B&#r!3!AZ1DV#rc5Jr`0eUiC%8#&pb&PT`+EpCT
Rpe4M9edJJ0q$eh`+"@&X#Z0di*Vj`%83!,Ff63F(HZ#Dm8$B9!HAeLDiCMS!&@E
!Y"8#&AC+Z'BiN!"2YB'8(3NB`$5rBV#`'3Db8XlA`*8")'0lRDZ9mJL3!-r`i#+
3!)$&E*CGJ'q'"4G"!ea8p#`!FS"VcVX&`!aEA#,JQX(!UjE%*9N!2!(AM!BZ`Jb
JH5YD+@X"ei`&[R9D1-G1Z!biCLU3!%qG3EU1!r)C%`1rr8TR"8!Ii-j5'2JKJdH
lAAffDfB#%6B!,*!!HPbd%i&VjM)!B!Cmfb",p34!*A$0,kJJE&[jDlAP-cQ)X$+
!')KS(1Z%3i&m4J9*Qdq$!E*G%'EDJ"!!!9B9*S3"d*B6!N)!#a68EXrY0,SH$J,
!8EF*!3(`!Bp3-4%!i2X2##"[M`3SX463aRi0h%QMfICY$5"HjADF*EU3!"Xh,fD
pIDSY,3U*!IBk)6!q`$"ZR84#Q!'heR,2!,kF%0*#FihEJ`%L`!-"F!lq!6`!3SN
!!!:
---

bytebug@dhw68k.cts.com (Roger L. Long) (07/30/90)

[4/90 Macintosh Technical Notes - 79 _ZoomWindow]

Revised by: Craig Prouse				      April 1990
Written by: Jim Friedlander				       June 1986

This Technical Note contains some hints about using _ZoomWindow.

Changes since February 1990:   Fixed  a  bug  in  DoWZoom  which  caused
crashes  if  the content of a window did not intersect with any device's
gdRect.  Also made DoWZoom  more  robust  by  making  savePort  a  local
variable and checking for off-screen and inactive GDevice records.  (One
variable  name  has  changed.)   Additional  minor  changes:   Corrected
original  sample  code  to  use  _EraseRect  before  zooming  and  added
references to Human Interface Note #7, Who's  Zooming  Whom?,  for  more
subtle and application-specific considerations.

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

:#941-$Fj,R0TG!"6593K8dP8)3#3"#b(!*!%[k&6593K!!%!!#b(FNaKG3%!N!J
#%P41,M!h15jI@Qp[E9GTEQ4[Gbij-&`L!!68r!""%-S!34$+!*!("4@+!!5PNJ"
"%")!"06mrrm"!2rr9dp54%e"3d%"!+)j@m1L2PHb!*!'6&)!N!BX!3!![B!!N!C
,,J!-!"!')!!!!J!5rP[iMer"K%Yd!F!d-5%1D3!3CE3S#3!H!!-5!N!b8L3!!GS
%S2JAlTmi!IN%'"P`T!#+!3i&L#4*8L4+P3m6NK&T-)"4SLFH2$4SXUP2!"N#3'S
+a#P4UeJ6'ZcbN!#V9Si!UJ*J338!"3!B!Yck*`m!2EB"K2fcTj!!iF+JH!(F"C!
!`K!!#&S*R@3,`!6KYr,LcK9Tpam!B!"F2)jm&F!263a!*0c"JS!E`SEE)SjVdM'
$K'G2FKKJF!+p0h@%a!*5,d5d)$`qk)!(,D&!!!`-RL9J*BL8"J%6*NKSS5$bj!!
8S!CJBF50($T!J2LLjFfE0PI5Z#(cjNk#0fC!e)!ZhDc)XbrdI8P!le%GHpCJd*X
8SJNE#258%m)$)mcc"`X2A&&,2eJmS%89pPcc`aN*eQ,20cr`jPY#TlRRJhcd6A*
)*!ri0dF*LmJ$6$eP[(*I0!mN8FmE#&)45i*c9()2(24BBi-pF3!KMb2[Z2!!$I0
m!XdmAmJJcbI)5F$KG!)`S00C%R4i9JNL2D#(25p)`8%plhJK$cSTe#1$'"$-mdS
2AN,iMCJ[l+!KG-Y4"m!#A9T"c`G5D2KERXe0dH89DSVa!4&L[)(%'*TmJ%)pGq6
`a4he"2$"'[))%JZPPYlaT*RT02TST'Q@H@DDDlEjCT`AdQPREi-b"m!$5)3""aa
jJ0$GGq+GiF*c[fN*!!TG%[%&SU9mdBBmMpaabc+JAUUL18,38d-N6qiJcc[)eDT
R!!e)9qadc5Ad3"m2[#!2+0(+XF`$+XMc6lM+f6U"G[aU9i3641`!`Kj$"$&&%Ad
3QkqH((3ja*p6d!2&KAR3mi8G%lcJ`MelL2(!%kmT$!#K8#&`cadX`!*Y'rGm8X3
pB6MjcKff[*!!`J0l#,T`Fl)%')+E#G6cci-AAT(MMQMBCdmdJ+`JKJ!hhR%d(%i
rN!$(&h8B%!5X%Tja30-32&-(%I[53dFEp43JK$cJa!M0#Kp!338)H!`J"3)5#!$
&#K#F(+S!YY$pJ"JA6!KV0*q`B!!-D9##!5!8&!%%(JqF-3%&BQ6`,A)`F#JF!!8
BDd#(c89JV"1N!f#&X9bN2SDa3h`KqqbdeflllEMRV[[Z$H!,h1Gk@32!-J2i!N!
$634a4"*$3-&m"!%ijTa"jlUA3!$G0*@!!!G`,i!*hiF2r[MLLcmbpYTlhhhhj,G
Ir[M63qI!jq3@!*fa6qbZrrlmplqrb-DkAMGB)j,V#F0m@FP+&8#dRa'9L!dR5Y'
+@[5L"eK"4@Cc`bf3!2%!)Rc!$Rc!`!038+3(a'!H,k$"NfTd)k2TL%Fq!T+3!"c
"0K5Hm!%TZ*18J%-P+lNR5p-KeiC'CLX6018HVa"$E5!c$e$8i`p6-%%)k'%%%p$
$%$N)a6aq)6*#i3i!QM%*h"!9!Q!dX9UBdY3DYYK&jYM118-dPK$[KaTM"D%H5k!
F&6J`#ckSi3&1N!!#")SKJc2J!!(1JX!YC!#)0iJ"Db#i"aEQB!mi#)eShh$K2Il
J!JhYd&Jd50d2M'@#HY""$L'!!CMb!$4kR-)Hd+!('H+JL6&%iJRdF9%-6*JN(-c
M$3#F$JPUFimc"!)5Uf`P$Fj3bAS3!'Z"J-FRJN!12I$b%cQBa`1#kCiieP%jf'1
+FYj(6[Hecc,B#dN"e9I1GX+2A05ENR[)"3FkQN9NmjXR0bN3!&T`ac[J%3pjlJ#
#-,#"$H@C3d&"F!H"PJF%G(J$#-43"SLqi3aRB%-Cb$$4-Y$K$Q8SJaXJHJH*cS%
1BD"$'45+JMZJS3abU+Jd6TV5-N`$"'dS3aMFS0!jT%%2&GdT4a%kKT5Qi3eZ5%&
f&NU'-TJK$(9J!ae!3&19&R3m#kh$('$DJUeUG!`S&B0'UBT5PET!1e4i+3LDqY5
S6V@U&D9T(K4+"lA1)3`j"8%Gh+$41G"9VEU#!a[58&3k((@NBd$$6Xq`8K#NJ3i
XB#JDdM$@ZPC8UeceDKR!'JDaaV@X&8f$3JfUdTKbe+8LKDKD-5X(%#4fXBfe,&9
r@Y%hY*DS4N8U#0#c8$d!Y,0MEHKibR0@%+5eSQ0i3e-Y#J,&MQHX[[d1F#XUh)%
U9$`,E8-BX&X'1iKdUJKp!a`B#KXf$08lDk$UGc`k@6HF!35$A80&C9X'21"9X)e
e+@(4!!)c[1'Ja%91Ke+h!'2PU`VKP-`"!,"J,J5!(G!$"3!%)@&'9$J8!,"%31b
A%!%d!F1D!!!#S!1!+#4%`TJ`L(3@h1!(Ki3#b-(!#Kc3!38d)3aM%%p%ji#'"NJ
i%b!@m6rF)4)6!`$&+K!K&6D,"MF3eU!JF-)E9$U((d[i%KM@X!%iI*)2!b$%#'L
)50K`iSP%D3Aaq-!'L0$G-L!8$M!e,T1GA&3fJ'!+GGL9EHPJC3"FBX%k%B"QIN$
%(`3J'a*Za)8c[''IH"R-rhL(5$C3CNa`$PNh#)!X!J#22Q1Cd9YfG*!!`q`2NI`
'aFK*3!T%%!"8H$V4X!E!)"a$,Te8lb`,D!)8VJ!#+)4K$R8'i1HLN!"1F9k2%H`
dTcX"%!(VB#F"rra1H)Cl"j&*!(Mr%0jUM)Fmj6(2H81!hMmdSi&qQEX0X0NU%FV
MKZ`)S3M,Fi,[51B$FpXE$Q'3!!-GKU$F-ZLJ"b!`JN#R29!8Y#%24I#Z'qMJ!Y6
'0,,k65c"bj1#(FcE9Kk`YmB,GM!3i&[Ir&lZ%ia`F6f431-S&mq[fT!!"$G%YZ8
VId)Gk+#$NMF(#5M2H4+-B&`ji(J03RJ$(PSk@BNl&'8i4EM#'Hl`-N6fir[ZG`U
-Li4rf4`U1FrkZq2G4MfG)1YJ2i*(SE"R&2bA$'6AGm@lhT`9J$hV8aKlf511KSR
IBHe$*0N0hTlc)[KmUe,B,"f)[PqlHm%&F0Kci-'+GccCUYjmerM+l8jiSe2lkIQ
1HP-M5`8T9+%)H"GAFliHHA[(R3jT(rcC8ppid31J!kA[elm#0V#G*bc['#qp#hD
r"k'UGlGZZ,hV-m$hf3Z-B!C$'0X"`!'`'hpJk-EXZZm3r+YM)1HlGd([X6S(L5*
9q$Xlh`"0XVheZA2C"k#(#3k"$*d")*pR@A"#lL6klm(4RQHCikd$X[8Nb0[ail*
2jm-2"!41jT!!3!LS&3)S31Sd6ZDRE""SIrSR6rRA!2(d1qj"I#KA9&Z&8qP@"Y2
AEX[h!f!(G5&A83!RF10"H3HAF0r9F#reF#"J!R4RGkdAIKm!GR238(53!&JJJ!)
Q+(8$Xhc0phBF'&TZX()Y9h-!f"b`Ci5rKS3a0h0-f)3!8!5PP`ETJ3*8i(0M!(4
#9hPeGh54eB*,"i-`jA3HPhNRQ!*6Y`I,Gh+a*hDS9hBQX(Tl&RVK4hUPGhUT*iB
fD('iTbFc%(XJi(G4Z(L$9i0(e`)qN!"iqUD)0dK%HV*8T6Gj4`H)C,L')0G[NA9
+G9!'HNL*c6%#KZL(CBH(DLH)9PL%TGF()2!#+Z"BkD%#,h"e&P"kBK"6BE!'JZK
k)F"hf4H,XqKlh3Gm)'#,beGZ@3H,XNK921L$bQL&6kKa`rL-aZKp)c@09NJZ8(!
rp0-!heJXi6L1RQ-@b`C2q"FrqhGV!M!'5C!!(Q(!8%IR@!S9AGVP@CqS@&-P@T'
PKBie9BSe@[4)E@[P91,a@)F&!NP!"#!!F$M`JeS9,+Ve@8+9Eaae!PG!"%9J"#H
3!!+4CAH,CeYNi!*NN!"5BC!!+mp98BQRBh3P8I0i8R*3"f"9"c'P@LRP@NMP8bH
P8,ce84)98jcPARe9A-HP9eXP"ehPCS)hA@498rC)9VDe8Bie8V*P"QNJ"bF&!N+
*8N5TKViR@f`&99,eP&BP@P*T@P9CN95e@8M&89fj@"T9A%%`8S%e@)@eN!"&09,
S4JCDf#YPm&JaZ&[TB9NG#&GcX)q`F3EmeCGr5C'ba9T,q99K09C`K90T`*K6"3F
aY98,Ye"cB*1F+9Vc*9'4QC55P9Ub99d2KCEi5*9Q)!II`CCMk9CQ@3CdDCHlJTH
j09)m9PiFC9$(5&'ZP@p1&9A-j3C6jPV1a9JJ%*L@e9TaqC@r9eFj+9Z'43GM*3E
j4TKXbCS%KCD643C009*Ld#ZbP90Z8!F6P@r$NK!U3)&KN6T'B#aEN!!kB@!XC*!
!1RXJ4`+S$d,J9&2TJAjT"RN!Q5r9JG1C85X9@6Y98,[jC)DP@ffJ991PAI*&96B
jAr`)!N5!NLT*"Q1&PXSj98k3!!4-8&ca'*!!8AQL60"IYV93i%Q2G9@3!!0eN!"
Bk@361P)0qC!!))!$qjL61E96Ih@GDX@C&q9cE4#9*IUFH,"C-dH4ZK@6Fk955aU
MfT9BiX'K14QDHUC[p`K3&!QHFr#H0L#Ip@NV8'!X@*!!1[Fj(@H3!$TUB#b2N!!
kPH#IhQ3@!B!$6q!'&H@R90QNa*PFEM!'-1@R`GNS-mH@Q1@GmcLM2-KI-mT@#EQ
M$1Q3!"#*8le)N3pkPa+kN!"CfPjPd&9`PQ0B13E4!*!!XM8(99S'9pTDSEUP1$P
9XZ@THDPED$Q6EZ"NlS@-j,&5EP!0Ej9RN!!i9IJiTNHAQ0ZKJQ4JGb$JTpiPR4j
PNca9P8Si8M'UFJ!PFj!!pAYq+TKapJ9Gq(0"K`I2'U24&P!'DCc&H9!EpCj1)*p
,N!!k8@!XeT!!1Z&J,2#3!$ViB#cm3$S"%$US%3"!4"d"X!&D%J!K!,!VJ+IVk!d
VqU%S&D)MUP"0kU)1UTZ#pDQkYCGY5DYUP9`N+4iejC2T!Cf$ZD"cU4e'%+2eG9m
DYBm9aDaaYP9dm&GajCCBTE)9K3+e@CC`0AA(D*e60Bq[53BY!"Y60DP[d&K0QPc
45TZLP9jKqAIm49JlqCiH)*m$N!!k$@!X&C!!1KMJX2XhJ6cN(Lc3XUdP@dd`S%&
!"NYRNqRfJc%DGi(CUqY@"jk9!Vi$IrIRMSM!CYleCM$98fJ!R2#&91qP@0l98DN
9"RI!VN4ENEhbQe(&84MkTc$T9hA3"R#`Sk1PU#!E9f-38kRP8d"e94c9U-"QZQi
J")p9TSSk(LpC8(E`"QN`9'R3"JVCUe%k@(V3Qpl*"[RQR(D3!,YP)&&q13H#&3C
c99aY5`C4eCdhPQ-,p`BmePLqafm)e9T48!H%Y3C%i(-%jDA&LP0ZP3EiY9DLeEb
pdP6(DkM+5RG9D3F'PEXPbkJGb&ZY'e+['lXZ-,YNS&"le9Fi1e'`-4ljeLZmK94
XJ*j(+JHlZm$Xblc%fbXS)&Y)49f#bCEUbClF+3G6KjC0j91Q99aAm&)M43BqKe'
FLP9R)*[#p9jNZTEc@+&5P3CG9EVqqjaZF,bbk3EUfDh`kfEL9EJ&GC2+59!fb9J
F&9&)bD%9*F!8bE2H+9Y(i(0j)!9Ri!BUbTIB1e9(U+aeKCBNZT`h(!CUJ+A+TB8
FDjGBpDX@LmEN#CUCk@5RZP0&'hfIb9[*e96&03@l+eM[Lj!!IVT3pL["di8FChU
fCc'RYY+I!iZ`c"%!,*!!X+d3((TD$&SL!!*,(99#Y[*CA1C@`QX38A"3"(LJ8Tr
jEb"!KeRX[&cX"Pj`H(,3a8*3VVmBIM`!"9,`"%03"%43"9+!KHYf"5[hJjCPGpP
KGe"`5J+$Md53!*ACiAp8!'p&)!@M5$,A-!D3!#"*%,!#H(!!-+!1rp%&#%!-%I!
$3L!(Mq!#pP!#pc!&Q-!f#4),-(!2cG)'P!3(B&!*BV-d-[!!8U-M"l)!Pr*"&+!
LDA!**c!&Ih3(9'!2X)!("2!"FA!29a!%N!"3!JGJ$pi3#J*Y!!4p0(r3![VX,2d
X#%B3![E`"hP!d025!2HJ"Dq3!!F--!A9m!4Y!!JRX`)2%!6Z%!S-JL[hi#aM%#-
b3!(@%!`2F!3D(3QR%!2[V%2bQ3'TS`,'8S&j5J%#-!jp@P%&HUTZe5YS1EQSCCI
2@JB%0D0SbF-eG9SGr!91`0E1LUjd@0GhB(IrH,-i5TC[43GN-!@JaC905CdCV&C
@h&5PaEZmqPkV5PZUkh(BUj!!Z[@6DR@d0NTa8@Qc%`A"&H@X0qB'BF"BDbY4a#P
E-HbmKRd'#iRC&D9Gf,@mlRZ3!2',K*jpRUTPZKkA"Nm+3FLS8clS8i#X(5[kU28
iN!#1#mEHpF4"k958Z9#*je1@1U9Y5DJR+3I[fliA(+4,@imR49PfKSmqHEdH[&d
Vh&f%TBBa&3IJ+m'pHTTa"XAiCTHPLld(E-USc&cq"@!%YCT(Cj34l&3`TCB8aEK
(e9TR,9(iq*heL&43,*EUEDJkZA$SMD!94Ebh[&+EZ@H[ACLVj3DD$Ci#EXB%#@G
bB!D#jk3`@e[b@*`Gf(3X5U+EY9*hTGd`ZVD!&D'hDT85jCJ'5TY1"GLhDGK$bD!
Gj9mhHDcZpCi!d-M'NJ1T-`6'FJ5T3`A')JCbfXNfS-PHA35Ll-J&S!((R-aS1Bq
q"Qa3KU5'+Vdh5Eq$V&&$r&GSD3Cl"9D(GEpdN!!(+YU2"(N'hX&4,qZjBm9EKr[
I2lj6kMZp9Y8S06U29d$B05@ambL8*$RCXX@p-IUpi6ZqN!"VfqX0Ak,&F0V4TjU
UTAkU8*'UY##JkGi,[PrSk35&!VJT,*&9[6U'[I`&"@bJ9EH1BlR1BhG@",pZ[6Z
fkhXfA91hUS)Yk9CPa@LT8@B`9AX&j'P!P@%C`@r3jKYUf0)V[rbG"SdV(M**Nk!
E@@TJSD+HSBm9PH*YS6kR8UXl(R%Q$8,`Di49TMI&N!$TiHSJ`1Qa6Vj4bCNVp9d
1fTEZ,9)8lXF'03D-IPJ+aGJ`jGMj9A6m4GXA$1S86UJS4HiHZ*@`[GN%0CSa#X9
-,LaSeD(`'qT[[C2)UjENiGKk20PRV9BV[r$Q6Em!ET!!VJP3lkSG3E$@jG[XK3h
Y#T9FRMYc9-QG@m94ZUADC+#)9fcc`%,DRhN%JV[HG1RI1`AZl+TGbkAN$NjYe8"
AMl@Gq5Dc1#95)0bG!1QRmR[MHC!!X4`PpXaqNA,`a'KJZLd!"llYCTTkbq*4A#M
!kcV9J5A+T909jJ!&I!q-QE`l"JGmi'&`[$%DmMml9HRUV+HN+`9eAHR4lL"eNh(
ZUYp&P9"X[RZ'[MQm[KM[['9Uh&-PaqGDY'13!&al099fVeE530TdB*03KVSfjDJ
LRq25RAQ%0EfY"3HLLEfiU4ef#`*)d,N2fR+Pp938,Q9@C4dKHEKPlbYLfUXTr"d
r%&PLcpME"Gbkj9)j5DMKrIY8aTDq$raf*[c%6q*6aj!!IPllDahh&*ck(S@X$,E
#4[*1@lXD,,eUmp@MY!B#6PjlqN,-KE8i1c8dY04+IHPm1QQjR,'T8PqJP,aE5fA
Xk%@Kpb3BcPCc1!$'SJkNMMq3!,!F!-#b!*hX$T!!$J(!!P'$!"J&-c!9G$*G-!1
$JCBB!21+1GL0(bM*U--!-!4DJJ#3!!,533"B34,d"8``'56"Em!%d8'B-aESJ2(
0TJ8R8C!!(Ria9e#X!cSmUa+TX%Yk3Qr2DHNN,[(bqDM+S4XTf-AHi6[*a`*ZLKK
B9!#T8r%iiAAQf!![)J1pBL,eUTLdZbK,G`)f,b@Rp,ALj*[LA+m)!h9-YQM"*FA
Q0NUhmcdaTAP410Q#h5`EDE-cBQAET4FreQpJP(m,&M&'RTa!Bb%+8SF1R!i-L2`
NQr0M6J+#VZ%e3m"hH,Qr*Cr-PV%S!*&+!-NI!%"rGSB%%N#Ti9BN!AS!"ZS"%@!
$pZ!A#)%[J!Ii!C5`3X1`'*+Lja%p6S)4LBAVj!(4`[FKIKV3b*L&%DJ@&J$MXh`
FJ%QJ"bqJ#0#$2l!-`F8JDJlJd!&jMh4B6XUK,"5(r2#FY)!!N!!,c'(jfBIMm*c
N`h-)%"1Lr8N!XJGJX#,4FabXN!!*d!l944(*V,J$9L),2T*kf8%4l6*5a"Hd`m*
"!eR28%@@Q%Hb&Jl@Qh!9*6YJ2BT9"LCLq*&$@`@X"!&H&&PLQ%kK-R4J*qS8%*!
!(CM!%h!#mBB+M%55)3'dJaK)!lq'+$)N*h$0MN!f@iUf)KGG0cTJ")MAHh%h6q!
*-)%L%!5F!&E8%eVaVRLAe#-9BjNCH'Cbi#bQ#j%`"LS"("J"ldF0!!!4)"+!J(E
B!aA*"AfQ-`F#-SSMJ6+#N3k-T,cAAf66NMU$h%80KTIa!Rj)BJd`EMaRA(fKFTA
BbJ"IXbb*%3dp('Q@PDB1&DJkrmF++B"qdArqcr#a0h6S$kR&-X"k,)jMF$h-U&q
J)Rh6'324eAP4jJB4!4l"daZ2cZ%T9T*)B2#,2@$TfS"kDLTe,dBPPcQ3!&--baJ
`E,pQ*e9'NR%!l-hb`8,Q"M#ZU1J8@JlBG2-T6h'`l$R[K---brSk!bQa39@NN3*
5Y-2YX8,JX9m!aJUeP4,,CNN[PZ8a*VS-&CVHA&"CFZ([[8!idk6B-K-DQ#VhdI@
iRI"B`@VEcD-Z+U`"*XMG-R215S3-2cL(3V+U1F"[h!"@HLq%d6"b*cXc"HC+%IK
KLqGMkCAaiZBS8U@#LX",H)'!l@JV!)kjf6NrL$5f&S#MVEi$YjSkCG%KMFJ5H5*
G`%"bG9(!)Ce'Uh-E`ip@B!#R)3"JbB+`*E@(V3L4+!F`JUF6S&#3!11+iip6C9!
KP@Me!D'BLS3b)L[[NDciab2ea)4%14PaaEQbC@BF%BrL%6`fN56H5Bh$",DG3D%
#Eq!))*39f9)%LL*b!DL-#6J91M#*5%CNb6Q&XXiJ5N9j'0P!Sa`2Mp,453%(55R
P)J#`4"TR2kUl1Z2`L*G9H5QNdMZ05E1RRDCBGkU6cD%%C*fR'"9G'8CdP))(8V,
"&J!#BX$bmBYmKeL#!'F@8YC!FD3f+H$`P,Xa--YUQ3ZiCDqVA!P,1'!UN5@H"*C
JC9X54B#6*m2PIL1@[()1(*qdXP2@J,+k!Xl,6i8!A&NBXXj*M)rMmT9jP2M)"%D
GUDa''XFRPUbJb)[b*3`)P#4M#@3G`*K@STeh'#rqm3XGX"P9fY$E9M)SGJEU+D,
VBTA8LReF2JScj`"'q!J64Gh&h&QQV`e3&+dN@IC,BBak+ilM@8bfT1%BbeEkN!!
N83BX6-UQEclFf,Y4&)8L(5d2HAAN%-Uj!NJ!4@'KHeNbH8#pF9%HkJPF(@qTFc)
MKiZ23B!1R*)dF!G9#JTJQVH0"I3[N4)I650U[$T#)2)!b59c8V#QeT4JAE--I-f
k%Kr&*Jm6+8%!chNAXfPeV*!!9S`mVI(U0!&$Y"@lBQR,Paa4-4,(FJPC`1CkXjC
R!'Cf4-Z51#ZPV4!"K2-+*)(6@*%5Cp5m1Q$5%19%JMN8ACP44)V@$!9)--d%!SL
PY+18bHJ(1EU)XU5)*5VECVC#CaSL)$NkKH)mUMF#%bMk6UV60h%MiG31JG-+`B$
Mb5q#*iFERUkXGr)L8dN$Q+GfB)P@M`kma0Z@,afRS6+9'SK`XX0l#!"b!1(dRM%
4i15e#aJIjbC+K)Q@8dmBSZHc"hJ,dP5Dp$)rTXTP'GY@*5qb+NDVm9NalE+H-+C
CkjK[E36Zb!C3*8QLrV3hJ"((i,l2*2Bq@(YU,E#5G8C&N!"b82j4HU"3D2"#,P$
bU6Y4$T!!a*jkE(Z'1[AT8@k-H-#A8p)eKTpC"(E5CEkdS@k($M@"HbF(N!"!B0*
-TR*3fK[0b6P4U%Z-Mj!!8h)Z2UP*2Y-Qf$NpLJJ&I%6"``*Hj`UB!5`!P6N0U$J
(VLJ,@*d2XJ9JdGRj(F3SlY362'"RRTiCbCBL(@LKG%EZdZdqY%6L4UMVX3*Caie
11K!P9$3+#Q#@CF"CmNPSHAK1dX6USk,)@Tk8!3L9A0N8"5[8%qA36plLl`#Hq"*
iRA"("ErIC`E-!,hXMZCQqG$3IS'*U-fc(#JX3%L5"Fm$HX#RkC%l[(%feXEP!a(
jaILd3J[a),)2K`Jr"Z,iQ66SN!#ALKY,%!"X3-Zj+J9&DlUUcm9F+KrZiLK0C3a
S1%j&RM`KP%PN80'cN!!aY@*E-K2*XM24bUGF0K"(`VCGjrSZ$#8UQJ(L"9*+NR'
c5p9d4kQpAq06ZYJ3ZdhhY$-P(Tl#0FH+f,0CKL@qf4@L"j@-RQ&cPH,1cI3+,kK
4c*A[%3qhL`ei&lT58L"+(S!c,B!$h5`"9e(k'd+CBCUU9i5Ap"*I+XS3L#aGNdA
aSS0LeK4+QUXc4QNQED@FmTiqbA4`JVD#&KL,'p!P[N5Bi!!23!I-!fM`4+,)&+N
L9b5,G)T2m3I%"*P`!CE!LQ#480!Yh!r*`!(d3")`!+b4#JB("2J!H-!Fj)!-F!"
N!"3!!rDJ'J3"!Q!",)%p8!%3B+He!C2""@!"'R!6ZR!k*""I1"e5J%pJUQ)LU!j
90*)T0X954509Y6GB)3@8%,b!rhLXN!!eXNV@fH%lfN-be**CFNYL9Ua!+)a$ec%
*Bm!6F!+m@!#)`&i8#4d#!)`"5J!+m#)1%!KS3"3BK00`'ZSL$-#,!3!,!!ICbN-
`J'Ve"-3!Y`i&%-"E#d*m'L)"`#pd'0pJ"%3#3Q!`C5%KY!F&3!e-68+)!2T!*,3
(#G!`%X+)!3!RS!5HK)5!!KVCqb'[LN!NZ%-!S!)`3N,B)69!#)L%(@)$RZY"5!J
h`"Ni9iXJ#+aVqG3#6`%!,!&R)!"%`"(!"fEKN!#ZT)SM!"B!2GJ"B`")!)*$`!-
!4"L`"b6J(PL"*a$66JJfd5Bk`#fFJAY`60$U#lJ2F'!1G*!!C9%2pTP-@`B-!$B
F%f+!"Q)")1J$8#1RK3!C8!#J!4M`'jFL!H3"Ze&@+8!J%!B%63l!JM&`$b""*#J
Q`D#SRB&23#FN!ch3!)AJ!I!Z!&%%RJM4J!CTGDeq!6%J58$!+Y'bEm"G9K*$!$2
5KK!`!!U!#r`41`#hhLS%m'E,J!2BJeX`)4S!&5J!h8!HB!0e"J1mf4aJ!bF!CM`
eHK!%S#`"i!"8S*ke$44!$qC"hc!$4m#4K))"m"dJJ#d!"-XJ`XD"6q!#j!%N#'U
CB#EC!&!3)@S!%!Le31)4K&KY333i3!L!"&6J$jb"1D!'%-"h8!H$*",S$A!Q0$T
5)+J05&B-G!!Ud$If@6rcCQNJ%N##)(!EH!!'d"[ei6lNKrh3(rk$cb!3"J*"+)L
L4M5k4S@i%$p!493$)""Q6FDBKD[Hc!fS!cj`"hp!#h!%(+!2m)'F0L)mdK5SDSS
eZZj#$Q!X@N$U##A6)4'NMMSe(6K"kX#"di%(fJTKB#ck!F!L!!P,$J#XIDYAL8+
A,!J6B!*`bG5k@8[Zab8Ab+%!0)""`!#q9QCpZ3AK!5L&!#"c4bj)q&U%J14Zb3(
3!!6"bG@X3*IN,J!q%3#'EN%`ZN@Ak#,GTDYdQql4GET*pqP+hDK,GCQZai@j*KI
V'PfYB(@V,Y6YZQ$hkiVGU4YfVqj"k,N-S"$BA*lVFf%Z!IKD2AIYILfIDh0,EXh
GV#J3lVEFS$YeGqlFGEYSebpXeQhLFqFZfM@mE9IZ*Yk5Lh6j,Z-PZSjAXjCGVdY
fablP[Eb60r0DAXeEH6X[jYfmS0IcFYl2+hT$,qNp[@8h)@$FZ@YcZ5kIZ**Bpq5
1hXR,Gf&[kkflN6He*U$GbhYlVqrp[F!hq!VIi8YmLkra2El)0rNUh`45&l&!#*!
%PLrUK99!&cm"-J!$)m-&&&28#J#UJ'Vp""$Jq4i!(J!F4S%i#31Up4+%A`DM!IC
L+G!*)KIpKPCNJ"F9!#TJ2ZqAKp#"l`X!m1)")!N-`2b+"%$`I4R!me8!IN%%#1$
63)$(!#JJ!#XJ)"J2&l#!!3!Mq,k%)!)EJ+P!J@GV44J$R`!$i%8(i!A+VcJK"Gr
AeKk2YU#!$3*b3-%J'!4SB#8!!'D#3@!#!#!@I&m5%)&cJ"N)!-C!RCb'I["p8B"
Q)!$U!!"SJ38F!*B$#'B"H*%!H!-6I#X#3!Ai[VIe)'!%"N!+G-)$#!!Ni2[LJ!M
X!-i#"1M#[f-'I&mDi(p,F!!f#$dJ!"!D%!`&r+mD#!$%S!!&!$kJ@N2"h$J@CkS
&r`iq(&U"3IdG#Qqi-!3!M9!A88!%(J$ea"8dS!$J#Vi[,Y!-+%#h#Z,J8)PA+bk
)`[de%3F(L4"D)8(pV5F@B"6SK1"J$!#!'-!(['!%RkP%A"!``L['"FqA!-##[CJ
$$-)##!#f'"r!!Q3a!*!!K3RSaAX#IB"J-+!C&)!f!!!N!"RrBR6`@`&"-bie5%!
D"i"ji)Va!6A3$!ZJZD)!E9aU3$!@!-GZ)$*)B`(JK$d",3$(R!!!5)&eI"C!m)[
D%d3Q'[YL!I!"[LmAd!`-3%V)J(8FRqSL*3$)TY8'V12e%&V*!8$@!`"!#+cMUP!
Ac49`i!8MB4d[JHrlKaX!3KM)qpJ+U0C+%&Q1ajNDarXBrEjL9+!C'N!*4XPl3J#
3!"N3l"H2Ker3ac(j$R4MEY#598&K@-Ip&33lT124'd6!1Qi%)aN5D)B")"dm!$)
q#44KYA+#jqX!+))#AX8#J#+mBR3`"TJ0N3R!@"N'I`*fd*8MJ$JS[eKj&i0JEP#
@K3GBjL("!35$JklX!&Va@ci0D3%%mi1ZE!)F!J43aAX#'JF!%-`)eJ"i6FF3i#N
$J"F`Q$d"(mM&MZ#d*J3q`CKI-5dJa[(++2[L8cQB2`&(H6mB!5IcL5,3Q(Q"CR!
!G%%*5'-!!!8kXd1q&99""DcQ,G#CLB&QH!"km4K[jKmF@TR"ECi+-*P2a)(16!p
Z-bjJcDZC$c4QIU!C)-#)F3'Vq4!-CP"`IIl#Q3,*J9N56'F`mKI3!!$`!DZj%h4
QE0#F63%!)!+V'48-jNTJCrj#%SE1QhN@0'Ebc'amUfi1c,kJ-l0NCZ-$`-KU6JD
Gq4XcQa,-!PBc0HM-[TRCT&I4$!#q`AT1SmbQ%JGR!+!1TM-&3"B#J-K`!-@F+4b
`!5i-chJ6!i!1A3Qi!&i8!'Fj%9X"Sl#H#3"HP!!N3!")!J)5(+j!!(M&d!![8J"
E3)90`'!Hc*G!"*X&B4!!D!#0$J#*B$dc!,aB!HK#)Ti"!D!5$'C+B)T"@3"3"%F
D'8aT@S!A,m!&6X3P)!!FD!I-",TdLJ%*Xc8!j)-Tc3l`)JDJ#+,BNdeR*1#Q8A!
LIJ!#!(UmBR,JTRHa$8$$9J)%$1C3F"I4`J&+a&G!!,#!'jd2PM4DN!!(!N!B#'%
"-!Jk-a[!LaZ!&P$K"5!!(X&kKJ#B'M,JJ&lm$mL"!0!%JaVR4!GL3"d%-*Fi#@-
J&(#!#-`"qV-XS0%!S!5mSdT!![!L"fJ,L9J-!)!Bm)iS!5R`eIjJ!(J!)3`!*X'
Z4J0i%33dM%5-N6p"X3B%d4S&&!"4F+5h`$Zk""3!,jB!CG#M!m!C+0D`3&aEJ`"
!!)jd)bM@V!![RJ$IQSKrF5BSeT3!@C`!+F"mN!"aF1M#Ua82['M!))S$!#ai4jk
!'mMV-2bAdc3[+0DBi%8MK(SG!*!!`EF'!aLD4aIS0$d0LM8I'-(bY@"rJf,0Tdp
#20B!j[FIe)!!X!lHd5G!"dHBc+6Lc3`53LXk`03)eJLXjJ8`!-4!2ZLr"B%'1i$
9E!%'3&d%!RJ4"9!%',#D3i$4VJ4Xq&JJ!`"!!eBc#c$DP)!3*'f(!*m$m`d`fTm
!@[1&q,5K0l-3k0RiJ"rJa463A%(!DQi#4MX8i)#eE3EmmfE'!Q#E%ScJH*@B0r-
B-0UJ3'bR!!fMQMHc'm$DDTX[J)1`X*U(V!1Q!RKa&TQ&e8`)X(D1CUmd!"U[jNF
3YjP"j0DY$&S6!'i8%,RjX"9BcD8!Dc1##(`#-RII$Xb`)'iEB[C+$T!!mfEH"B!
E9!1!&C!!ZD(!DJl#$KJ%i-89)"J8mQD1"S#E$!a[L6#20c-h!0a3H#bFKQbmQFm
"i)B"V2XCBi$9,!m!Gp5ZS[*i0IF$`!d'm#),-"l'1aNM!+2Y#4L"qDB(6diE6`$
!ADKE3(a+hlpi@BG@[3d!@J$f4Fqq1!#N!-#0"I"L#d$"6$Z!'fN(6!3-H(8Yh-R
i"`$ZMadCYKB%rm9+J(h(kmMJR40i-Ui#J&YJ4`D+%*`$!"KifR-l-N#'dah!e`$
@4J9im38d"aDHM1h!dqB!-Cc-m!"Y(!L-pLASeB[jrREYAm`)iRBGAXc#ii)(J%X
3Ya8f!&LH!)!*D'0ZlB#ap4-R-filJ,F#`-d$m#)-Z-"B3"[MJVKpV*pilGlBbAJ
BS'eiJ"GM!'"ShXRB'6cY-MfXKI81$q$C!'XMJMEZ#64h!#F(J"YT$fZ#S!1dm6X
!h%Fm"MJ%m"c!p3(DhZ!b)-5+CNr'[Lqh$#M"!$`Q3i#HR3pF0!#3!!'LJ,fZi`f
!YX%"AT3"c-"faf36`,l603#B!3h$GqrM'-#qk3"HR!%kI"hc!+`YYQI!rDhDqrJ
)X1p2r-Uj3IcHae+!I@YYULdPT2JqlJ,X1f*6l4+XXrFa'[$K@CJ'S'!`X)lR!0D
fj3#J"L!%4Kk6r3$lTJCNQ''[id6`Y"%!AU`"C3'Baf4+m,6TG$MA#*2m%ccYF(d
X)$)&@-HUi'Q$ma0!VPrh5DJ&6jX)20m6F(qPll!@!!Kp$&b#U'd$%%!!B!+i1JB
3!!H-`pq24+$&!+!(E(4+!!F@1JYHc5+p,[kJNi#$CIP1f1LA!!8mAa4`&N3d%KM
Tj4ZmdYB+6!8f1LK!!"(i"PaJ'&#"`F"'r`4Xr2emD3'F%0J!!AM&b1$jeJ$)S*N
$Xe1[LiJ!3q1!bEfClm"'$`A8!&NB!)6!S!A"88F#b+)!90F*h3KmHRXZ!&1E!Da
Q6,$4+`%8`$3BBBJ$J&&`e)%"TLN,ShScZi+[MJ)`p'P!ikFK&acebfd!*)-S"J$
&i+ZEk)!3BN&k0$MU"'#K*f$!I"SZqfT&"a%i!(31P,f+!8!hU1Y@R!"X,5F!Q"0
#1KMTi%#URf84rGVViZiZ#-D$Y8m*Cl*Dk8%%,J"e@`b-!Xr"VPFV0JMY'X%'-''
2l)#"Z!&J"p'"U3H!i`SGNQZ!03$09I8QK!-3AD2$GFfZd[@pGPF4Na!i!$`)X#F
JZjqY%q!(4-*h43'41Ebc9rF+!(B)#r$1fMfFbpIhQK"U!#Yi$`QK[ZjA!*!!A`F
m$NM(#D(p!S#,)",5Da5A!J)!(33!%`!6Q`!!!:
---