Path: utzoo!utgpu!news-server.csri.toronto.edu!mailrus!wuarchive!usc!elroy.jpl.nasa.gov!zardoz.cpd.com!dhw68k!macintosh From: bytebug@dhw68k.cts.com (Roger L. Long) Newsgroups: comp.binaries.mac Subject: Macintosh Technical Notes - 79 _ZoomWindow Message-ID: <1990Jul30.050059.10399@dhw68k.cts.com> Date: 30 Jul 90 05:00:27 GMT Organization: Wolfskill & Dowling residence; Anaheim, CA (USA) Lines: 260 Approved: bytebug@dhw68k.cts.com (Roger L. Long) [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!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`!!!: ---