[comp.binaries.mac] Macintosh Technical Notes - 241 Script Manager's Pixel2Char Routine

bytebug@dhw68k.cts.com (Roger L. Long) (09/10/89)

[8/89 Macintosh Technical Notes - 241 Script Manager's Pixel2Char Routine]

This Technical Note discusses the Pixel2Char  routine  provided  by  the
Script Manager.

Changes since June 1989:  Clarified information, corrected minor errors,
and replaced the illustration.

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

:#941-M3a,R0TG!"6593K8dP8)3#3"#(L!*!%j@p6593K!!%!!#(LFNaKG3%!N!J
#'e41,M)d-5j6Bh*TF(40Ch)J8'PiC@`b3fKKFJ!$!*!$3Sld!!%!4rI+!%8Hj!"
)BAB$GJ%5!"N!!3#3!dIhj&G28N40380"!3#Jj[+LS5)P2J#3"MqU!*!')9`!!&d
!N!H"YJ!-!(J")!!!!J!5rP[iMer"K$p%!%!d%D)$!(J`@J3!"X#!K!#3!)3%#8#
!0J%SrSAl*dj!2J&'"K`TJ'+!3`%J4BS%D4,P`i4N3"S-3&6SL3F2$C*F#P)"J!`
")#d&`P4SeDX*F@CGUP5(23"8!HK`5J%!KJ#lrXN$`%jY!&hrZ)&NZ2#RA3"eaAS
!!#&KJ)i#e!,`),LY[,Gajp)&i!*NBj*+HFJ3!#rK$KX!q!NQ[0E`@j,rm$,dDfl
!d!BT!LCNN!#`E)!'S38#B!h!G31RXTh@,YMJJ'S!#4*D!&N@KV`I-ZBpL6%2e)-
Ta2b!S'I0KVdi6kS"URIJAU"A-ZMY)20!bTFk*f,!Jp6PJBb%Z9[rePdf3B"Z5K-
Q%!#"[rrq!2iR))!J"8I&I3(Jj*Y[@`53!%i%!B!#J#!5-K)+!*B%9!"2U&bS#3!
)r%-25"8N*#%Q"MQe)!!0T[-4"3d!!!-+!0J3J#`"`#0K*K*H8Z'&'4U`B9BG![!
K!Vm"%)@*!'!5)`BdFJ#!!`Sd%FBBDEK"aaYcS0(!MKk#q)ml)#d*`)NUB2!!&@@
-JBBEDB`4"KXJ12%'(@A-X@123'V)BCJK1T33'd`k#B!%+m6c`3C%P'&('@bm!8F
CFS$!TTY`bNRR&(A!!FFEFY#a*`#Aq)D6!#!!i!0`UJD3!)f%MF!Ui5#KfGH0D38
'))`!"r#+eDqb-@"3@5,83iFF)F"Jc`Yjc20+![Am8!F%p*JJK"TI*%$2+hA%m!"
cRq!`cbFarNCE@9(FKkYq!6!L`!,[[[YV9Dq9&DamYRk8kcJ"M-1VVr-ZCB-8MUB
a4aPNJ#"'(MSNB+8FDi!JK!XJ+2('Qh1mi3B)*S"!4"L2JY$%'%H%)8FH#344aaP
ec%%(#$(NJ%-1-GklQ`V(*EHFXp$bF)3i$icmaKN8p)2&!e$mJBF'ml``K#e!e&2
#29,-m8(0#8N`,'qaV5EIDeh2*Kp6Vm(Rp@k[T@(ZeQ$r&K`!&Jci(`"98)''`CD
fq@DFFpCjCaNJN!"Km"JY(c`(#(5J!6J8DH!"U3a$S'%b#(+m83FG@3)14q9fT%%
'`JVRJEML)%`aKKaT`2'bP@k%F3DP,T3V`GR%dMBF#qF#3!)pCpMc4ae"I0X2dNS
cl668S4MXHa'IR%'Y'N1[[9Zq*1dAi29bBppA3DAP9a!e!ImUl'iBj'lV8YCRVrl
e!C!!8Xm5%)3L66dh40+!+IE!-BF!X4#rG002!d)4U$B(#0c$$S#BJa[)iB8ML%%
$pi#%GD,a#4BB)!F(!-%LcT1+!AcK$Jm3!`5-SBS-m%m"&VM%$mj!MbaFjhkqDmc
l)"!%0%bK!933`#d!XB`aA1F!J&L"'2Mh!$ZSi4j4m*ra!KL%&p4K#!QmK$&#!)K
ll%%#X3!#'1a4MAYJi3-YU-3pjP!!CYb$#N'!a"41Q-)9"U"j%1L#!4KJ#b-)J`,
b!)B9q3!,2!a!#JCia4hHN!#()-C2'JM)``FD)ip(*!%'p+$!'m6!K`)!J4k"X!F
*2R#(20UM"#XS!$6f#!Xb31!)pYM$#eT3!RPSS`-JB-62(X%#)VEK2)'3!%Ff2JJ
$,MbM$NJS!!a@F-T8JZ!3N4!P-CG""MD%i!NZN!!(Z4+#'E(YKJ#fQdhZ-T!!c4(
NlJcCP%2Z6T(0@16Z03Da@9QHm)9fZ[1Gm)bR21G*chVDmjlP8LF!IU#Zk[fV9pS
,Ap[dqCU2k(-ij[aD!k"K,[R`i3TT50cSm1DQ-,MKG5`B(H#bK#FjQ1&+H3,"R$)
'JSTHY!`8!i%4hX#'50dK5fF3U4`!*iBlS8'M)'"T`LbD-$H8i3k"+i-CXK640'M
XF&N#!46#-!G0LG30#4X#jI)dU6&JlP&XB"M@V'NEXh%912dXd2V'5U!(2)%0#@[
881'%1BhPFc9XDd!kD8Fh)e6"#81J3K+Hi!5P0ZjaN6-C#[#%"cS)S3jQd)&5Ml8
$`Y+"#@9`Jf+6i!3U&1%)4C!!`JlQ%#Ni6,DbPmhX$Z$`9cC!P!b*qkaP-D[CYl)
+EJ#J!3KQ5p[DfVDf9JL#&%$!"U(5B3UH+i0LKI#%*c#K#%&`3JT8'pV@ZNdiA(X
ZE*m!"kBkY8ZJHKRM(-F'b%P1$LL!`V%39iE#(YB-,-"ZU-KE@-Lk)EeSb#i)1#X
Tq-UAY0`pEH*Bd)$hb1CY`e("E3G-i0N+i3dX,B0&3D##hTVKYm&0`9B"c"Z$d[8
"6[LTai4+e,Dk!6E5XdhBFPF&Zq*9Vhce+hHp+eM(RPHaiT9$Bm[lf-JbPl@ElHb
04BYI51NA$6YZEGJSI)-#'cQhZqeY'!4hd5+3!1&e`bhZFC1lA""3GV@LEF#'rJ[
GerL'bp1YEP2lTPlYPTE&i)daH`f,@2ZZel(ZGI2,k!X(1B1JakEeh(j"$1EKY-$
)J$B`JT@mX3BVQ-PRF2,V*$aNk0V+Hr[T&8$*1L#3!!4VDa3)!!EX"MJlc+N1J(Z
$'A#UC%3V'R"QB)2V3)!h+XJ"e+`HG4K!d!E,(D`&C(M$(6EfKM%36Jk(daLT$`e
6%#$XG6NGGH)!9e%jA+QMV0jB4!mRZ*PDeDJE3`&+cq##M#kEYlkGEh""B!C3L46
F$fl"PPU!ZM1JBFkR5ph,8##&0l6"SLPiDX+qhHjhLrYcj$EhV2Y0"h@rS381ITR
'!)H#)$KE$((+DD@3!&!'-Fcd$LP)38U0N!!'PXd8CUaZDFZ1&3Bm(@lC"`YF'Xa
J"NT&GJajLYeJk"U"E()JGbA)CJV1b@Hk+X0ZH,-6RS,D905*)D6I[N-B4&GdHFm
h$biV3aX1KpdkS"8%Ji6B$N!3hcXiLP)C6@V'fJ#i18!G6e2h0ZNmc3C3"h[8TBE
TUI9GdZmqQe,*0X2"AQBb`08"UKcfDF,ZS,L0I4[22fCeX#mhKh&rZkCr*i2*dK"
58H28X6,IbeI"N!$00H31%pN8"Fp(h"S"6#%,PJ[U@J(hECHC61'bTPc(hfe`K)H
E$CP$h"X8&QV$NilJG2pfC2Hpqk2Re2H!5rM@Pch6FXmdl#mVGdYeIA,*[DceG(K
pXXqGm0S$(rFq9IcaKrhJM")q$Eh&kI$&,faqcji1+H8d#0MZGT&HRh5ZAkrPC`h
qXXIAkJPMI%B`8UKQER(AC%m'1$`&!RT!+E[RI(9R-RGA+D+QGf8!Il-PIr3A8L@
RIP!P8i$MDV!'J3HBD!NBI+66E"1BGhXRIYqf*GP(*`XcG'0J19UbIBR6JIfA8UK
A"r2eIeIR*Qd5-4#)FU&f15dJDLd!H9"e1$8)989e9-D'"h#!HeK#"eP&Gj2L8D$
5"MJ9"Tj51CZ6"L@RJ0Gf92&h0diS15H&GHK(*f!i+C1690rQ8i8eIj65H-*QHGp
Q1ULM1L*M8Dk$GlP'1'5R*5@(EE%$2Nj!9pi`2Q8a$VQ$$pR8$qH5),Ec'TF)"*!
!'!"$F)P)N!#*6(#*8C!!L9b3!$[k)3!cF"mU8!0d)3!b%!$J!#%53L%!`!JrJL'
cN4pDX45!dK!J%3Pq!3#k!3!E!L%Um#)%8$B1X!*c*!+"j@a@KAF,b!5j4`4TB'd
H"J*&%!Ge-#Gm!J$BF"!,!3J!F#(@3)lrB)i5FJdA3J['Q"8*B"r%q)Ua#!kQ8K*
)FJ'TJJN!N!!D+!)0%P),k+L1l!J!eb!Kf9#3!!43MZFSMJCj*J$J#`TC)INB!%L
#!"*a#Iq)*"X*!$[JND3#!%dJNKcj"5B*!('3!*+$N!#5PC!!NUH3!*+jN!#5bj!
!NYf3!*,[B**%SC-6S*-PS*-hS*0*S*0ES*0YS*0rS*14S*1MS*1eS*2(J#5`FL(
Mf*!!kbL4[e#4#0NR$0#,[8J5[kJ1*$+-6N%MTD!4dd!!#4!M5,!#S+!&!5!'iCJ
KAFN69I',k`!5%d#@!%!M43!!HJ!!Y8!MCJ!!D4!!B8!!%*!!!LJ3!#"!!"+3!!)
AJ#SJd#-9NL,f+)Zq!4)5X4IS`#5JF#'N8")2X!ja-(0PmCPlm48C!!"IiCP2!3$
YX"ZIfCVfN!!L9b%4YLN2"6!##6%#"E!2[JN!)l!2`[QE$Y#E#8%)a(J9%M)+Q-N
3X#L,c&Q-5c%#[!QF`QQF)j!!R")5#Via&+R5QV2CQN)`PESi2P["&,rB$b!a"A`
C!J'J!3$!!J%`$!3J!$'5!$55!J'`!3S!@HNQ"Hq(%#P!!K(!@lPAE@fbM68"0bP
`!`f!*e-!G8S`FL$3!b!!!bq5!N%3!#N`PlYSPqaT*',LRJP4!RaC!I-*!#!3!'H
3!*mddJ(r'D#qe3)%kQjdB+!NS!$c43GjN!"qVqB')UUH*A'A*KSS)+%#I(QBp&N
(!4!(baJM$%!MF[#I%&##FjGUVP1N[)LN4r)2+!S!0F#AGp#LK"!!Kk!#$J!"dEL
#6m"bHfHCYhLCp5LGplLC#5%4,3!!I!#DSNQDrA#DHq'EIpURLY#A!*!!U(hkTc3
5#-6TTiUU#,KC&4*")iU3!*fr'Cc$@Cc(5Cc*1Cc9kC`!!*ehZK$6#3kM@KABfCZ
FbThHHBlK@4#A#J#"8!i5'5ZhU+F!`+F!%!b!#J#M+3!2-+Jcjj[!fUI2S+M,fUI
!5L2'%+R2#J$28+P-8D[2S+R%bDQrbCh)UC`!X+T-mCc4LDVh++lAQCf[+Tba#Tj
*8D['J+Zb!J#0N!#2!L!4-`!!fP!M&f),"q'L!!!)XaS!%N%$!-!*XG@[rcS8[$U
FpSU[!-!&0C)UDK-%KXN@&NN5%R%K6a#X`rS!86Tc&f+aU`!!(@X+!'#a(!X!++X
%!&#b*jZbeVS8%S'b3H!!ReUFi!UF1bX2RiUZ*%'ZTrS2U3Ud)0'GfqQU[HQchcQ
`UB+bpF#b!+!%k%QAAeULB6UQBF#Ad%QIVK!!hj!!RrZT!LZJ!$P+H`+kSrq)S!S
DIJakKYRf%4B3S4&!S4D+S4T+!ND`Yc&4'bP3"5$UT56ULdNUTL#KSJrK&+r3SVS
!Sc)+!,I`R`Y`YJ@AYSrjMbD3!!!Z%k5!-k5#Zjk%Ql9,bTHhZ3%"B"Tb-+@c352
r%!!FN!#Pa)D!b-DPCr#j4iUe*`S5CCUi!E#-TJXKL-#QEQThdeJTF@U"SN)U&@+
R#T!!QILSX3!!#`!`"aiVU)3D[3"3"J#J#p-VQ0Q,[G4E#`$J"Y[E[H*E"M-,[HH
,Xjfk$cYE!$hlXmeC&8,E[(K+RI2,&%LVXcb,RI[3Y1rU[BNJVr5DXCb*[EK3[F4
UV(XK[DT3[JNX[JmX[4%-!,-!`GkV#ZPl`",-[Yhk[[%VU[Ql&2AV[%D,R%RE[d`
VU`%X[Xj!`,TDVdGkV`!!$!#3!!hm#J$qLK#T)V!"$+bEN!$$1j`8$CX3$e[$,$+
a!(!2B,(%!,!1#SX39!%)9"Q4$1Q3!1hiM[&B%J-`!!1lMa,"a",l!30ja9ICMJT
TaZCBa9CjN!!8HF-9NT&K(,%P)4(Z+E(hHVTdR-I"JFFL%!")iFF"8#)5QkYXM-8
!N!#9F,b91Vb`"9(%$cR%8hc)9kR'%ZQ1!!#23b)!AIc&!(!"%T%2qMSBC3`!kGM
'Pjc'TQc&%)R+%[,'Vh+,FJ`!SVb[0"`DY[c('j,,!E!!Sjc(%I$,k&Q9L+c)XBc
*3mb`*$'F8Gc%90c+$QR*@Cc*@mc*AT`8B!`!D`!!A3!!C#bBdSb3!+TmbY%-c@F
mN9V*#,1mcGe-`kICcK*a"paFa`$3"r0-`i0`ca+4#20Xb1CmN!$'2-h*r-M,R"$
02-Rrr*!!j(c1Q+c*@G(*f2c*%N'qfd$+i,c+VLc10fc*P1c'k6c,&%h2G!!!&8h
$J9R5%Q'1+!d!KN$5*6(-%5NK!Fh)!ad!N!$-P9i*TL"bZal"Pk*m"!%3c&63Q$L
K"!*!"3f`!J%J,$*3T$Q0ZdLL,lH,QrU3!,d"-$Yad*JIJ3B`d3!U`0412EKJQD3
pR4$k3YAKHY8!%!PD$3#(F04*[G3"%!0K$ETMI54P2GA0@G@PS0Dad0DSd09I2GG
ecG0h[G05IGCl$3$%S0E4d0E(!0G+,5``80KI#4+!`Y0DJCZL(!j",CY%$3$N)0L
8EGNkM542MCYY!!"(!!#&!!"63#0f-,@N(3#965Si,GDB6GDpU0K1XGU&qGTc)0Z
'+GPbIGZAN!$EGVhEH*hDcERDVrhDE!d!Xid)Y8hAZ*fH6afk1phEI,RDTq$DQ8c
FUQ$F`S,GbDhGZQh3[%fLUJd!a5$HMdhG!)!-YGh8f8fAfhhBU!d5[Jd!Ubd1i[d
1a&d1jKd!q1dMYkMFKXhFBL+@#E'ALG[)k#X3Md!!#m#@0$)LCK#ATJh9rm!1a-'
ArUS(!H!8qC!!![b8Q"[!Q!0!@h6D#!FGX"fYd$(0b!l0aEKL[qDUQ4%0bKIE#3!
3!U@md!HCN!!EMG(P6-cR$-Ya$#)5S6C#6X0[!!"6,K&eB1Ad[!GD6X13!(VPEYh
P-*h4-ih-MQc6"4h*riV36,l'5Xl3@Vc*%$d8f5c+3Ic0"2RQ4cl1V0cQ%ZRNXJc
PY!`!3Ac,K&l(!E!KKIl([VcSRqhS&h$SrZcR-Uf9CSi3bRbdl$h%29cMiGc3e6c
R"C(0lr'R9P$N0ilN#kRR$dRTk,c)kLcST8l21##T0,`UIdV$4'$V%Z'bZ5i48-$
V!'!&`Lka[`i!BL$XD#$Xj([X)hhXJARXjRMX,IfR%8+[09lTLhcT4*cQcGcT#Ih
TFIl3edcR%Jd!qFS,!A!&U*l4UXl4#Ih+(bhSkHi4%T%$!-!,pVj2qEl[IkR[!b!
45p$[!DmN"#m49h$`mkcZ"6m'!0!,qkif%&r`96la@2l`qmlP&QqV'&r`Kp$aBel
-PYl-QIkEQrk[i1lRiNl0FPlZShlZ[`!!A-lZ&fhNUCcN0TrYVal,XDk4L5ccp"c
IA%l$b`$d0"`04Lm4ej!!p!$3$8`r$NbI$Ncr$N`IY8-[%IZ3!24&FI9Sc[8a`[9
l1I3KImjP6[)%VHPUcX-d(ZkX2XdjEXfH$13fc,fRA[1TcZHSV21!h[-5-IId(+h
F5m2-8,id,!f%,a(M'2J5i3f(,pU0,jD+$`#9%IPI%IN1SIJ*F[JBUINAJIPP`Eh
A,Z2aRXJMhmLBI[BQRkZjD,AVrC!!B5SS!#!9[#X4"E'+)k#k$Y#BM4%!*2#Qa8Y
heKKqf+L0f!B#9H"6hJL1q6dEqqhJ8HhIC"N!NJ!!R[h!lN#P+c!1EA$J#FlJPmh
HH*hBd6rpa4!!$b`0M4R%pSh8NfhE(mlGclqH+5,p!0$A$rcA!4$%J@d%ARhHlmr
IH@fc%52kKliH@&E,I`#!Ur'r`GEpe0Yb!hq)cEd0`1N(e"jBE%1!4Qd"PMEPYH!
FB)1$J#%#`J%!#6Ir'Y%B#!#HJ&jK1!hA,J!!'I"`bkmZ28$A*bC%h0JSJ4JK!)L
#*DEL%"-"D(%e!FCa30'RmYSHMUYQmkKF%Ddm0F2fdBZ#H)fT&`5!Cp$Z%0QlBh9
k,jeG*$N@!23G#[")A9!XJ%&pa`6')!$`!QB3$TK"3@!'+B%C0!9Q%"HB3@9J"VQ
"'A3(Bp!Jj%%*N!!(58!HY!&j%!RN35f3!!IC3"ld!hN3%Z4"8C!!"fP"(M3'8JR
EMEibCm$fP#F#!1C!J6f!Id#S!J#q-`HAN!!H")"9)3U(!#BFK8r-%jj#8VM",#%
Te&EDUAhPV&#eR%CBd#T95V"SfF+MTDkf%lXU!!"-2+(#GB!+J8$9'P%cX$f"K#S
3rA,!I!S!4#!!(!1a"4`DdiF#8'N,4a@SYC@JqSr+)Al#jN(0V4[J!1c@(,K3,L0
$EDJ3&31[&[`cA#NUqJ%e$4!!T!#-8NBS)3!mJ4T&Z9T!fZ*42QTc#DQrBlZq(`d
-%@1+5I%Z52#I!J!R#!#TUfa8U3#3!!PF&qaD-R,R"0'ZJRMDi#'kLhkIS#'bJJ"
!#&6!!aKH%ZMh(Dmja3%C35jNJT`T!)J%kL@43T1`XPk$35CD05N`[3*!%l"U-p%
RMUpkf"0r)[VDKCE3+(S`iZ5q1KAmkP3q5i4CTeYSURMF%X4I8r&SXDqQq"4AQ,X
D#RrX*`i`eEHV0*C16'!e-9!YX%iS%M3B6m3&3P'$L35iq"0R!9'NL`"!Jb(&AK8
APb,rfP3KV"CQ45C4&8hBAYaIA(&Tr5m@"KD&iJ[,93mV!'#"'bE%8&l!'PKrE$)
LV"YJpY!FfSZ-Nh%,6+`!m!M!!QPmBYl[Y18ehdEr#S(j!`#5)2e0K!1(hP)M900
XC%N!Y+CK)!"L!,9D!6eJ$pbhrqImH*T[did!B!cd4J!!"e!!$6-$"`kjf8EiCaa
cBfY#!XZa#MK(JFIpk*5&m)!'-5b0*Gi&2ND"!#!"!#!DU#80*`"Q"bQ!JHP0[l8
q[+5ASKri'!)#`!4B-1Fi1mk!$ea-MHNa4DE*0&YL(20bAVcUMpQ`4T3@Eb+a-Nd
jdBB"J3#J$!#!%`J!m@e#,NJ-#3#5!)@dN!!FFN,Za6q@)IeL8`5-8&&q$8D*9"M
[PkSkM&Y4DIQ[B&J3AP4m%iAa,3NF3b-9(J[AQ1TQ[%XB2-0Q%!#Z!6AN6a55(li
IIqKEH&3hA&$CU%%92h&)Ym`K1R`CHBY[p5d+m,F#9cZFMclbF%@rDN82YB(MbSI
A3(*P3mTeZ9*!jK+)RBXJIXPN'#B6JN*-%3+!4@Q!2#DP*+*cp!"B5NYT4&96ZqE
N"cb)(R&9*#i"-!,QN`#!!444H2NqD,-5,j!!Ghb*2LiQiV$!e#!r&J1EJS$*98b
%!!!q%)'S0((Ji`q!5P3j+NFNUC`)X*!!@c(&@3LZ6KL,a*3[FN@fUPJ)Ui!KBk4
9Vr)2`,"+b"Ga@-cVP$J48#kVAb!UL56i)*,'mP8fYQAj+SQNUhb@X6*RH5Y395[
hBJPcNECb9kkVlZ3V[b+`""r%!)C&aQm!N@c!YlZ-ldS@QDJDd"NKfES%!&TJBJQ
!iI!$pL8!8!I6%3!k0`@!(!I"FR`%fj'PA6IL#!+Vik*X6D4J1Iie'RB+D#2$2)L
im@%#J'q`(0G"`Q`*'Y$pC6G*Y[D+S-ecHk&Zab()(bF#"-!'-&%4S!Sb0,bhj'l
FhT0M,Y0%h5X"%!*dCXXm!6Tcl!'ddPI6ETVTFfDHcJL#ZTBAprkB2j*B(N"QlMQ
FeqGXjVc65!(JD5+k&#M)4T-JHf##6(VK-D'*PBMQQ61D*21CQFa80qjdA01NL+-
XDYSpGdFc+pRSZjP3$QlbXNr`brlB@H*P*BZAa3*K*JPGAGNlQL8[8U8pT-Rf6ZB
4C*SX-`"m#)3P0r1Filb#1HpZAXdr0MN4RB4!@(N-CB(12mB+$KDLN`@Q8`#3!%e
YGmcUTEFlQLQ2P9h1YJRh)LHZ5JY(3'VH[&@A19dGhX5DYp2H"B#mY!Z%Cc`!!-8
ci!8!*TBmrjKlDTkF$(RD1`%3(,KA`#0@jHYkPJMVf6*I*[INQGRcCfE2e8RkYTh
V4([[8Qh+6VE*mXMGfq`)A+lZ@Fkl4cAcRZD%G9`3IL+k`X6e#!AAN`0D,b0`26q
JpCJ6edY8A%mUF,d-`I83&YIEJ9`2&@Jp9k$ei"'A#hdklh!@cGI*k8VQqR4hY&2
8E6j3KTM+&mfERh5cIYE-M2BlrpM@`RaR321Y0Xa([6"I(Y"mId$c[6E-Y`JdRc$
#I"`*m`Njc$F+0&mUd(b[321*Vm"(2MASfH5JDmk$fXrCf6lG*X[-QD)aCXj0+eJ
hhCc[h*aBY)k"6p'i-i%Q'@fLC[2dHFE80q28ja4PRfp2K))a!8#IF*J@4D&F9)A
Dc5q+2k%F(D@-1c09i,#GU4m(+4SeRiJ6p5R1p*NdU@JFGANMp)pp*Mh`$h,R&Tf
CHY5,@XdqLM8RUI!N%i&*HBk)82V(UKSTe3UR9##F8YC`3krRl'LP,4-$!!"B+J$
f!Le&Ml585EA53pSk%qND9Ccc5[4ed'G@djJCl&alaI6N56&NHZD-DGVXM-idLK,
6CUT-'@FbAC`)lCUf8@KD6F'G0MfQde504P1e&dk6`MJ&@19d+*a6EdT0&bFl&DI
90*ZfdfhU5mqT2)@Rf*5CiP0'@NqlU6ieTridR4B%HrT2e@Nm,DJ$0D"b8iP%+d+
$Af!!V''T495)1Lr+3!qJ!,k*!'4#fTG3'@TG3!2L`BI%!8"`#(J!YH!@hJ*FL)Y
2S!-!!$h3!@5J$m3"5$!(UX%6D!0LS!lm!0b"4S4""RJ!8qG!%!%U3%XZ#!(`!+B
J'%!#BU)(Z)8J-!)RB!V)JhG3,QJ$*$),ZF-,h*1YbP@lUPIpU[&NUp#(T9!'JJ!
2m%d#B2"a90U3!,f!!$a)&6V!%54!8@!3@!0V+!-l!"[i*Th)!1LUf*!!T@@!"`#
$&9!3JJ)0m+YNB`,X*BNU&#JUBf@XIU%"a!J"`!!%38&`V"59!$3!3F!!mKPMTDb
@&E*HeSND84H!,qYPTp@d&J69LPT(UfYpV+`eYUE@fGTB@F-!D!#9PE4k"!D!@hA
V("%%Ql@bePDZJ&RCD[JiVXJeZ5VAl08$'%$2[(Ddlaq8cS5!9fP"4p!9*fiT8)(
Xa3-)J'mb!*p*"*3"R,#AYQYC*3$EE!#J6KK3#R!#DiLKC3!)S!2I0!"f(3-`93Q
"HZ&92N"I*F*Dl9jP!!C3!rS+3)'!U@)0166!dJ,#+J#q!JXiX!#JKq*93T!!89F
$IKe*C)!5i!2k'Z`iDScJ5'8J"Q#!M0SBf!#ZN!#PSbR!8J,#UJ0UR48SSQ*$h`9
BIT!!+Jb!A08#%"BCY0@E%K!Xkhde#+X#I)4B-N"B#`!0#!"1!&F)LpN4@%'!EcS
!61V(QS8!X"IL+aeiXTM"%"cB!)!CbLSmH,,k6XS@"#'3!,eq!!T)&39JGUc9!%"
Q,5S15"8(3#aT!21iLaT4B-8'U3)")!3TZ`!#3,iXUa!JcrB&-1!-!8#Ie9iCPKI
N@6LJ+JTYRf@dC@!)R0Q$)%XCJ+-0!&`Z`!+#2-ZpY-#PE@PP3!B`JP54!-S#$5L
d`N)B"9Km!'H(Jj39&N)ZX()!8VYGjkal$3"(0,$+&J"`!*`#R`d!iL[$SJ05'jJ
)V8(SXcBXX0*Bi,#[K-#P,ATiP3QNLJ#`A5hYX3d!kFLL)S"8S3"SK+HpYZ%JHqd
!,-"Y,H[-8!S"3-59eIR+DhAXQP@h23!#d&Fb)@9,3!$!"m`e8LN!G"!!G)#5&3!
GJ,Pk9imJi1UY!%J0JC8%q#B'd"MB`EqeXcZ!(Ha9(M!E6*94ql-`J"6iTJCJ!J5
!+C!!DJ)JaFS!FT!!+JJ!-HK9*j!!qDAB(8!1pLS-U,J"S"md!lpJ8B&!URJ!c%!
&+-UXX)VLUmdP4Ya,"#K(jYGcH`!-k*RBT1+k9`(!6mSU0NJ0"1"$U!!k@a!8iQq
)5ql0(b8%*&%5b-6@0@Y9cDX3!25B%(4$!H#kmqX!F&5ZL`!Sk0P)!$["QL3!mR8
f&)#8U,Ybi@``J2m+!"S!I6SE1Z!a[*BI80l139`!'CS!!!:
---