brad@gobi.jpl.nasa.GOV (Brad Pickering) (09/16/90)
[XCMDs with global data and multiple segments] The following is the source (for MPW) of an XCMD which handles the interface between HyperCard and specially written applications allowing the application to act like an XCMD. The application can use globals and have multiple segments, which is impossible for a regular XCMD. There is not enough documentation for this to be used by people who are new to the Mac, but it can be very interesting and useful to those who have run into some of the limitations of HyperCard XCMDS. I have used this interface to implement a XCMD version of CLIPS (an expert systems shell). Brad Pickering. --- (This file must be converted with BinHex 4.0) :#9KB3de%,R0TG!"6593K8dP8)3#3"$(2!*!%m,T6593K!!F!!$(2FNaKG3%!N!F #!Ja)HA"PFPKB3feN,QKM!%ZHLJ",RT`!5jkX!2m!!`#3#66V"J!b%L!!095b!l) "$J!E!!%!N!-dkb"849K869"6)!%!SD`8`U+Q3`F!!!&q!*!$`!!!!3X!N!15C*Q SfJ#3"R1p!!!%##L3!!P"J`&Ph+!%!3)!83d"U'Nii"mN#!3!3-(SEf1"!"j"3Q# !*!qF-R+`B"R5KS`,0#d%%+45"!Z9*P#QJ"JB-!#3!)!dEH,8b92J6`"GC"*FbK4 !+&B8K"%%eY-2[!rrrPh0ZP8V9UpF[hBG+lCXf,0Jdj*&#irJJ5"3S"JX#Z#!R$P baJ"3'[##"5PPjK3KNiB1##XSjk4ji`C%$"FaK-aS3*!!`S3QBI3'4!)J342'QGm !Q$-Rc*Nb,%#-H92($CdG$4+`BA`'K1)cX!%B!%"!J!B!"36S#q$20h$Ka%@C'R+ !i"AR5iY+4`L!ZJ`!0F*3)m#!)!F!e`%-P8*3`B"f@CRDi)3*FqM)U61'$JJX@)D d)51%cCXaDd$XDC!!B!kD0h)-YLNcCdkB-f9BJ"McTSiE1MXS1R4c"X5F0'G5*PM CdNdC2(6JM*'CF#%8J5$JK*%6TXe215RlT'a!*`qF-Q6+Q(%TN!#J3B3+'6U%H,# ReSGV8MCp'R8UeS80`B*3FCE-8C%Uf(T&%XB0'6BKemCY5pFZhU-l!!)#$%KjF'9 b@&K$E@3ZF%3!!++J!$8B`J#3"3'ReJ!e'-*!J'9%!$8B`J![UN`!-K%!!#rKf!" *SQiJ"!![!#p849K869"6)!%!SD`'+D+Q3ai!!!He!!!"3`!!"1J!N!2FAc'IdJ# 3"Z&-!!!%#!MJJ)'!"Ji'I"@`3#8!43B3R$La`"J#8+3m1C)(K*%hE-L8BB!N$j` bFV"J'G+'M!Xi,333T&)%#j8Q8+D!'%J3@%#D0R(Uj"R3*i!Z-LNU$4L+PB%8!3- -#ALJ&J%!S+jKNY48!,Z*,ZBXT@Ja)!%5!XF53*&f,%%'""dDS&0Q$TfABj)#!(S cjmk*J#T#QNKJ58!%&!2i-3XJ9#P*Zd+P-M&[U4efNEL`q9&1"J`!9r85$+8X#KR 5TTX1U!*J3)FFD3X)G+"b5"-L)+$)HD1Qc"JkZN!,N41'M-!B!%LD4&Qlj8X!)YL 8S3-#$jia,8(-#@1RM(BkBHL#%$2p6TNbEN#-#F1'M9LP5!!ND2,'6CJaE`#`*#1 %cCXaDi$3!`K5&$(%%e)3d3!)$$B)!J!(AE9-!#i)---!E3!`BB8AYL'++80i3"! [)dj%9!$H!,$(213%FJ!$3*KaAaNmbI$2MIm!`---i*J)B@)#T8M3Kd`839!,r2" KaBY%-*&%6J-&S!+192i6T304cR%M4924!%B'R`4aiaYVe!%(P6cjN5C"%!`dJ"d %X3%!#&'dF`516Y64(TS"LF+6+'bk+CCH0-L`"T9NQXQ61M`CdkL2Ei)'J*`JS-! (!pIFQ1HH9Gki++3p)RB0!%BX-BNi42cbMaYN*!0!TjdQ*BfED53(`"4X!T!!aN# H"L5$!A2`T)@`9!,J"Kp+ZT!!kN4m"Q"'Xe*%1FD@%ce$d&9bm'UP3#S-!-@9FbD j*%RGp5&#P+,!ZQd!MN5C"V8%YA-Y!-'qZUiC!q`4T43!P#&Z!J``)4eGkMDV6*3 e`#X3A)bPe@X!SJ`34T51%#3"XPDmm!)L1Ycc`L9E!2*ab*'m%&9!4`!JJ3#q%*% %&8`!--%!SM44K"1X%8#!*0L4N9m6!,a!!KC"Qk!&!"f)3SF0cbL!4"C3&#&&EEI 4%r634+!4p!,-#'5#$flaB)8A!6NKC"9'%+634&933a!29f$M9J#Ke1-)"JNm(IA 8YK&"K09#Bj(eePd(m(ABBjGpGYS)+GAffh'leCMG%#"!48!#a"F!$UKmdJ`rDLM 00)a8#P'!!N5e0G&",Q5M$J!Za#1L!90F(X!&8i#(14#HJdjN%D6MD$VU2P*dd!f AJ(f$+h)!)"[Ff1!1(UYKb%&'EQ(-X4iE)%b44aYLJ$6(heF,V[8,A(X0pPKLN`f !f3'KV6B!0i6$#[hM+!,!"Vml$EA89#0#I1Th2`!`!`4$@dS4A'!$aF@2F6qLb12 '8S3A`'*ZGEYEh[l(YpX)N!"qpJ[)!41SP!8fm(f,Qjm%h8C"#dSZJj@M`K1Hi#3 R8-%)IKYJ#!f)3++9N!#"$J5!r"Uh3VG8m)*Zb@"#RM#&*0M3#$I-)3J,1%)I8X5 %34aL"0R'3J@k-)Pf%d!#SP#&*!aK#853!%)3V[""!SU`K`S%)JSIU%)Z'[',B`N &23,K$`6BV!P8q0m8f+K$+X,aKbH%Ra!KZ$D#60#,5#5+34#b0SEB)"1F-!!3#-) "!#a'!(9`3aVSd"S!D!"!D6"13*3J&(i&a!UP9!""M%%4Q9!!FkJ`(Y)`jiZPU#! J!a!'43,MPJ'd!ejkQ%J#G--Ehp$K$A*)J2I!4i8`L%%k#)$#IGB`c6N`)!PZ'!- EkL!5)k4"1R-`!",+8"b8!&@F*+%#!NNH1'ANB-%bT!fC(3dDJ!#4a!Q9)P+-""P 5*1,%L9@Q&*P5m'"#KJiK5[a)*3Z8MKmr,Qa)4JLE0f2@J1J"3NU4)8qN%&NCFf+ E-R2QK$P6KJ@)-@rUZ+'M!d5DU@@BbS&Bp11F0'HUhR4cjLSGL!N5Z#Q$K`kF-@, IN!!ebl8V#$KKj)4T!i@1R+SSbI6G5V4S%5G%kXDFkA$`6K"H'0HmQ91ac-")`VJ K`kE-imL""eZH+$RcjXk1HB+QDCTc'C86Nc5"`U4)Nm08JP"*mX4*a-0%A$3!!J) )E@&VC@CTE'9YC#j`4!!!SU!!04M#!*!&!DI@!$8B`N#!C83!04M#!#qU6!!b%3! !,q(i!%QLEL!8!#m!,e4&@&408&-J!3#JejL5SV$NS3!!!L%!!!*h!!!"6!!!!AT UQA-[!*!'DPm!!!3)+$!D3B-"S4J!X,!K`iF1$35)#,%LJMCKeT3aNiC0Q4B##&) TJS9+%bK63!`Nb&)N5C-S9EB-k',1c*X!3&h$*#QJJ$Xq3e!F@T'SdD*)MdDFQ03 L!!3!%JL3!,L`3&1L9JmmI6M!DF5T,!-phH6T4cNC-!!3!0#eC5K@%HkmMIYf3"@ f(A))h#[!!4BX3jS3!3&&cKXeCFE3dD9@L*``C!6+H)T4)dH2,'0!*J1LFKN3DGc -S51RMZ)dEd5$-20'$SJa)0L%FA1Q6TJcRqQ8'3d#MZ%cMpZ`4"+e5HS`Bpi!#!( JAi!3!jm,##,p5!!@!Dp(eEj3!3!c!%B%f#D!brI`imZ,JN8Z&%%4leQZh*XG)3$ l8!$8#%10!!1#(!"JK%"MV*&'C!&*F0)88K$N!3#!i"63!1hmm`p"K3"J!bFd*&$ BBBR4d4SM%V3*XkD-Q64XbS!`mdB1#$TS&',"-U3*%4!8,6BBXE&"JiN9L53JPJ# N44G`A,aTN!#!54ShDc"Q*)*5*BJ@E8!8F8*&5KBS6j,`[#Q($XD3!$eXh*ac4LE 5*Q&HJV$&-S')25l&b!NM*dfC1Ae%*(&$Ti`F-f('P,&*0B&9V'QdF[8+9J552($ -BXR+YZT9+&QhG[dD&NUB1AcI6+hD3V(*Lbf-bTNMCma0be+Q&#(LmA(00b0,cN3 *iQjH15$EN!""bG,`R$&Kf$Jp#HHQip%T9cE!JfH-kLpc)V*Kif+-bY#mIC-",Tb iCG0k+DTfJBEP%"$*I`F[-lbiEHbpY6F[VY*Mf6Pd3TqR3ejapZAEZaYIfI*Pc-B 2[aTGhhkafkZ"c8@B@'5CKCCDIIfhaa!"$PEA%'19G9CDDbR@ePX-aL8BA@%0)88 GC+A44SAqBGJJKb*-33FC'BU4i&XR$JJGDSQ9q"jch$PAAJ2mcDHHIX9CPapkhZ( ABhN#!JC548&%689XC@eN,QK%!!#LS!!e'-)!N!8"TpB!04M#3)"P4!!e'-)!,kT -!$)4!!![iG3!5D*Z)"3!,`![9%9B9%e38b!"!++,fi#LX18i!!!"IJ!!"QN!!!% h!!!%-5FED(%!N!B*b`!!"!JSN!!*3B-"C5!jp`qHN!!M3I3&F#!#`jZ!`&4J-%0 !4300J8`8@3J1f)X&"U38#8+N5C%@!JK5+B+&5K-S8d!-*!L)))!+X`,1V(Ncjmk !23&dLHQcU8p4LlBP0C!!*Q!!2h`%10%&3!b#3J!HR#%3VT!!"Ja$jQ%"3#)*!J) !#Tc4`#,!9J"''!3")1#-J6B)YNN#3f+E&$!JYNN!`i&")))bbN"i!8!R+"FJ2N3 ,0LdB'!-5X%9*pSrI@`!'aTTSF%e5&'6rc$$jpZ#INcTk!)!KfqKX&'Irp0fQ8rP ,CK&IcU#3!*&!`0k!5!!ND2,'6CJa&jeUEmT'Z`%!F2GD#%!XJ$N!iXQE&`@V()k !91&A$4MTU(f%!2$,!&!M$$8#b"$%!3$l!9#8&!3T-%!lrrc6P!fFi!"BX!aT3J3 %LM*Bk*54ibB-'a!##DB!N@B1L$"Z)!iXH!G0QM&S3+!T``D146T[3,baXh$-QcC P30!C#B*0QMCTk)5KNqD0QcN0hTJ"iHD0R$B104+Fi`)%##G'N6k-5-6L')a&kBJ -`a,%'6C[a#3PXc2-46GN3,5T-dHVQ*KXbX`"1K-ML"NbPS!3NdHK4E"ZcM5&509 V'6S@`mKj8`HYc*&ci0l-ZE2Rclej,SlK'IJL8,YTh#L8BbE-Q*K[kG`T8bBMNMa `&Jj4R"CMfMQaak4ab#Ec(6Nj&@B-!`H1cDXmI6)&d5$*6i9KdJVG@bEdQCTK'S- XNjE[ijK06)0i-SA&Gk*PlK$HQ&J1h$I4Z9-8rDE"kpKbCXXKBl'eR65,Z3'6D'H PG8BD,'8d8h9bU(4(4L+%83-)GaM&"KNLZ0"!!e63C%BDFB'!"ajMY%('&h1-a!B E,S`K8aKVb!A#9HkT0&3EEl4PihPNT'('Kf28`3C2-JV93'LMPDCEChIN&0*pXY% f@"-jDN@FF4p9TKb&)$kN"PYDSF&96#K4#*a#$5`S8i8J,&B(Cc+1@1+*SH@%`N5 fL8LLL9rdL0Y1)0eCi(FCfH6''Pc1e)#FI+C)%SYMZ2$'B)c5kBDG%e8d)frbqG5 E5QkF4Z&)#Y)8d%B8!I@K($U#&4mCP1jjSTp`!)U'S*UUk5DFMqd%3SU-A3J#'5R T@SC$$F#af'Pc@DFKKb29U'P4`li4j)!k*6HF9M0T#XFE5!l@)@TbD68(Bh+)1Pe SCN5PT4Y(RN66ZA@N'j0,C*3a'"4aK4'C6(*N9UCld9&%af"*$*8(BeYe&8FGj9T QdF*e0("94T%j"K-)CE5!&)L$"@&4%Qh+pDeMCH*BBjiUar4`a&Z5h15+!1H4CNS ZV9M'CZGK0-GUV-jATPNYrdU(((9X9Upma&lEfX&1GDJT[M&9e%"@)14aQ&V(%PM Q@b#`*CphDL)ePecQH5U`KqQ0QP)BBTc,aTXNCHB'Df6FE*L9EMVQ8dc63CNIE5I m09Qf%Mml,JLVkYKYC`1A!9-EEc@BUjK@6KK#$b!-8DplSJ94JhRRYXNBR2,Ze%# qXINph)3Si0M@Te(8mG%D4-J4KRTj#UjI@V1Y+0BBDm`adF`2B9fK('XdJ%*MFFf 90F14d9%(("G0k*)FlQh@@`UacSQLLT!![KLM9BS"2P6eR*f4*Ne"F[rdX!$ZM&, !-K9,8irGhjrCG'U+(qM-T42LN5iPEHP4IC!!9l+#jHNh1BR*Kk,(Z-@di39PkTC &q'FrSq6K@3d3JZl5!SAE,F3k$4$$#)&`KV#N`39U-)i,'M+(-,LJKAEBN!"l(PD r1HLJ!6i!JHpS!i)BZ#!'314FDaKcKT!!6-k$q42*'i3ea2f!B!9RbFbT#$+p1Qa U44Vb!HHD!)8Vh-8&-!!#!JCdCA0d,Q0B3feN,QK%!!#LS!!e'-)!N!8"TpB!04M #3)"P4!!e'-)!,kT-!$)4!!![iJ!!5D*Z)"3!,`![9%9B9%e38b!"!++P43DLTNm F!!!"IJ!!!Rm!!!%Y!!!"[IkiI)F!N!C[,!!!"!JSN!!*3B-"C36*3@3(L!C``X` C%iB0#$Y[dT!!!6'P$*dLEZM)b90P6TJcC9!BS&0Q$KdABeS))%LP#"BU6D"-!6% 3!#!!3!J#U$!RB-fE1AIfr"N83*HC3U-+&9@UL)'!![i%$1!R43-3B%(d!!%$6j! !K88F3T4)d5*'M5#'8!NM4JD8LKjCST!!5aG*'$GNf*3"-8I1',jL@0`96)HPAm# #3C!!FENiEaN@Fp#mN81(X1'5*bpr$CYjFqI#BkLm%5cRljJbAX1#))J%3))QEpb %'I-'3)-p$4)3+51QcKQ8FP#Nf"&F6XXkE$Vh!(#9!!!l!&3&1$G!`rAXflZ,-[@ %!eDY!,)5a096)-%!#!(%P`'J4KKU""J30%mI3&)T"#N`3$[rr"19$CV`!5p8J+# $*XdF%'A`K'N$KddC%&L`$'P#")5F-R6Ub(&cN!$J`c&[h)`*3bH0'j*T3S*iB`C %'MS(iB54Xa"M'6N(9EaSd'#%b6&XkT!!HFL$5KiiCHDi311MjmqJ3d(`Q%1($*X dBTBfp5N5+P'UFNbHdFU6+XSa)-DJQ3P#aF8jGGM3fF%6$jiaEFKm-IN543UHHaS NH"ZA$SJH)*a8BF+%EKqHDYQUX)YA,aQ$-ZQS46(cc"J@)$VEq@[5F1FaG#2,DDY #00d'J418GJRD$Gd%UPR$L3&D"4`CY`8("'('**Q"EqL%B32#SCXc"&Hfl&bR64N hKX'+2BL#6-J6KTm+I4KaBX@6eP1dhCR!c*[9+0)F"X%EK*[j-%$[RLpk4B`G,NN 9QKbH!CM'#L[8"X)+L)(P(!UqaB"J#ZS&*eY,+"!Q&`JK)+BBBqUCF9%C'5C9@!U hD@JBBQdXamBEBk$JKRmS#ZD@L4XL"S1&`i%N%NNJD2GF4fqFJ4%D0kdRQ([`bBG BIEr0Tk*q-I"(S"hq'5MJD3BL#&U3!(6)-3BFHD$`@fqlTD#I$!Xf'1D$%8jBS@# #AC644KEK1&F$I3!#!JGB@%004#j`3feN,QK%!!#LS!!e'-)!N!8"TpB!04M#3)" P4!!e'-)!,kT-!$)4!!![iK`!5D*Z)"3!,`![9%9B9%e38b!"!+$L&0LLX2Aj!!! (&`!!*1`!!!8R!!!2Fc&ZYE)!N!B9[3!!"!J)`%#FJ!81"M59))B0&'&XT'!4"ND $"(2UL(("*X')'#c)@'6cjJfF"'hHf$Q!"FZ3!#C%A-!43*!!5K%X9*T!Q3*L)%% J"!&8!"E3*NkG2(d'"!UJ#mfJ8)1#%NF"@d!5l!)HZ0$JBKNhC-!)q!!"9)SA$&# 0XZ%#!)-h#Pj)q0(@`Bm"U!U"8+)%M`"(D`a!q!"+M9J)Rj5da@$'%aK(!3@%94$ 3b*)L@3!-#1M%5Mm'5-lpi`IRK*!!-e'3!)eQJ1I([lpQ-!JjT5U&L5mQTTKB!m" #EJDm"i)`)p$El"F28N%3m895))*af085!qY(14N`!"!!m$4S+&B,%(d2rhe!&Fd GFJM8,Y""bjG%3%#4mdC0Q6&dG'NA)LF-'B%a!-#55c$*&*3)+C'4KKPjJ%"JI(5 m!8)GFj3"!K*j`&''(1qe3FD%EU4"4e"iD%B3%J#J5*!!!0S)J-)riI`MMJ$j#'$ %!%F8J-)!r("hBST"XHMLHJ(p&p"!!54*8!!R2,#H8P%!'!8!#&904CUNP3CS !N!#1&r%miYSrrk#$"#"NNZQ6$9N1C!#@4(C*N!!STT!!B3)!I!!!`6q[!'#%!)R NBB)L2mM3eTjT*TVSNB)-4!#52UNK3&X-N!#T*3&,6#)1%Ermii3ZNP#Lk+MrE!D !0!24e)!aPRD(!(F4m')LN@%-piBFDc3J4aPc[&'(('0BD-DYDa"!dKL"eH('X@X NS1#Zq0fD"`&QT-&''3SmBFH'GmJKSS8-N!!4"Kfe$SXV#'qB!F'Z[IiDV+hRTPY !5YZ5BF!B*U94"KN%0+&5'3N383FFE+3aaVKP''"Z'q-DX+fh$#U3!%D)G+344X& kP&&"&@k%)FDe)%5)VSCZJ#"##A1)i%)$(K3K"hebJ)!b#'6m1[%C)1!,4i2TQSb bbJfFF(,+),Ma"Kff+[[Ka#'()FFCC5$pl(d4bY%JbLX,rA244bF0&JK-paUC)jm d`imDG*+a!J05*+T%!3K!Z54""`"`!bEQf!f,"YbjJ6-G&da",PK1I`K&'(-Fc!B )8q64KKK[X$&(ih2388BE)"J414NEJS!#&%e-!88+,S$34eFJT+lkkUcE23i9VVZ MAGSQ&%"%&8ddN38-HJ!34!aF")4d3!3J-rH4VSY3M$-%CGG$3+$B%!!LGJ2!JYf Zm"d%'F3&9-3,4'a**a0&+)"%&P!8)F9l-!82`2$D'BmmmMH-Sccc!6N2[I68hf! ppYVM(N'q&lifKD)HMX"!!XkA[[A"K`MZJeraMVHHqYf[H3"i(J#L0lhUAHm'fI1 G!,d([LdGd"%33!!9R[!%*L6"#93`!K%J+$`3%%pq4+UJrCD(33ebX(rr!f%!Z`F !!TS3J3B``"1Qm-)BaR#'%E4Kr#Ji%![b-(mCh&m(rII"%'k2L%E8dJN&N!#!+&3 K#80B!K'N%)3Vd2"p8TcJr(4i35ckN!"r(J5J#-&B3M(5)a$q3%!6LY!%+U#[#&0 `Ba4[5-ANA4%!qYXJ(VQSabm1X)p!5S#r1SB[!26(@l`#!18Xe`BGk13+1Q"#'X6 `b638K$el!)!(!M!2!FJ#!,'FC5eP)3TBe#-I"2P"-)1L&+8B"#%+!B!T!&#$-&$ $!$d+#!F!i!IZ+%Y%2Y)!XY*J*!$i!#P5@)m56%5CJ-3$+JB!!!@1p)JSK5!bNi! +),Bd!(GB+L"e#-S!fR(2!T3!!$E34%IQ8aqUh5S"MAXF&6af,3BN`3eMB%-G1'F %Dr(+!%JSJhmf"(XDB-%bT!N4%#e!K(%$JU""%'EHb!%KTiiE0fRFR!&4"JqG-R, FK'(6X##413dDL-N$3SbF-'4!`%NcCJh)M'FDp%QjKi5F&MXE9('5K!S)-RADY-Q c)b8)%%QF8#NLa8L3!#&&R$i&8@9+N5NJQT4T3b82R$*c@)#)8SIQ'M)[lkKp-L@ *'cTQe&*jmiD0AEaUNCJ&5E!0QF#$j3`FBVKTJkdJS%KjJT9)&5P&3"5j+bF2P$F CkD#!%qCP'bKdj1JSD4LeR"51RbCT!S9*N5C&T!DKNZ5*%ke2*9-ZBKPc3iG%4TF 1FcVekX*NA--'[YA)%bPAJNJK%RZVm-UA-fp1l4RdAH@QA6pR($hep-GEpi#JJUD -CXlP3i0S8fF1RCEfd9%I4'R)iCp-DC3aKRe[Q!(#''q3!'&I4L!)D"pb,N"&"hb 3!-f44KY`X-(5'#1a-8H&!mVa4KedC"3J'Q(m4mBED+&SAaYK8!L(LJ[1iD&',R! )3P#3!$dP4"&(4#8NC)XCK"jcdM99T'C1F%IGGm5&TaNH#V*B"JTKe+!@('1XaXB E'SAf(Q6b&F(P'&lDH*a*)*b4KKeP-*3'(5HHFDBB)mPNhNF6,466MQqFBGU$+pi &8T!!8cl9aKYiZN!5##M-!8F++l!3"Jb3!1dJdaK,EM9TTCGQZQQRBF33UN)eP#S TT@0CUT!!$#f%q3)CZ**a!`XYU*U#V2[4DUY#-AJDDk3JU$((4'$#-#bcTpC+NV# XiUSVVbhi+L5448E&4&5CN5!$$$8BSCDj-U5l,Jdi&2%V##6-B-3-3k`V3a!dj2" Z%6R!m1i34+K,,lj'$0&GF*1"Ceb6bC'@RR1XYIID`PY4N388@6'Va&6iJG!$#*J 0F4d4a$iPaa0Qj!A#'f4'@-CUSC9a"NK5-JZ#(529-6-)CkCj9ml-jQDPae5i*M) )AR`mAQFB2f@&GX5LX4S5KV*4"Y&&iL&5'f@ST3BGAiGGSAqUJ6"&DZh@`$9NBkr fX@Y[Ei8('6''m4ad@,Y"KYCe2i8(((ZcerIICG"0(F2$&CFC%fr!"((8@jRXa"4 8T,aI'(K)8H2)l9)Z0G8kJf!e#)F$VRND0$YkXab"Ec@(cDYT*d83@B#`43`ZZ)" MjfKe!F)64N5@@Zb#idf(hR-DP[V@QJpHZ20C*hlmiYieR+9aN!$$0)A0FiLqeG4 5D#ki'@PSV4EV)06mZ[L-1raij'38)BFF+,3aaaQVV5e(ffXU(3M)ClkYX-pp1#[ J8dlh22KYj8K*qSd#35#I)@KY)5#S!a`8iMH1i'&2'3+A!%&J`6I-cR0c-%,k[S3 (p'PY1L0mLR@Nd$i3k'"NVU,#%cB(["-4i3N6P%haCRH',D4"H$c`!3L)`S6j)#% h))#JNQ*B*$6BF'5HJa#Hj2#m60R-L&f!)4@h3S3dD-U%A85$'+PS01395@*35Sd AA##(-Y#K$L'a3XrXFm2)K'%1Hp%#50l`T1E)35hk1m-D"GL42D%!BSXX@T8FL#A ($HmXETJFpUC%3#UDB3aL@%h#K!!&)@64M4eDhKhRX"Ukf!pf%f4Jp9#jP6$!S@c pBeX0h,E*)NP4JP58$a8kmc*-iN41GCc$LZ5`)!*TVAd-X4!)jX!Fqj!!S8!+SS0 %@2*(1F(TIRRkMhr#8*-3pR*+Ra5$#p,`KL'm!84DDa'DVVM%*$#"PNp*jcVIi)4 U+Uf26-3R4%#j6bYicJa15!SpB5"3IE,cS!PY!cf(J%F8UP"eRL3S1dGT&c,JBD% #(HFUk9R+)pL4Sfk)#!U!N!"1YCKK*,1,T-k5-%49pQGTERM$+jfBQb##S)8VT#F 5RS"*Lki3"3jp`bJ0@JD%*X@P'PAU%%KCQL3335eHUkC,jb#&k)#N$6*P&Nda*G+ E*K%%1AeP#SC(3a5Jm*85!F&CdhUrY9,KL8k))T+8j&0K%K0QH6UQ0*1jc'DkF%, 4("!e`AB8E)j"Qm6XTQ$1)SFKP)B-j[4T8Yd*6cZbNb%!YDG!maR9IS,YRb-,U'D MbP5R5V52$2@T5HN3"$M!!3UPd4qBEUR9JDVcS8f0U&V81&VIlK1P(J@T6mYkSMk @p+46YBY+@3T+Pm+d$''GD8eMG014dA8LGqhT'1ef@+%508p'e4T5SlT8L$l9Z"Z G+QlPB&@XPQfVABA#9l-VeZ*PbUBRQUY1kmT@6,heIR%9X&TjQYGIRP0RIQ8*B$' L%@5LTE$f+5q&T$Q&22KR,#!`3PmN"#dS0'%+8%K"CXGl[U$fmEaZU)TqjG!'&'3 9E'S4'%5ikP8DmeHl*%-,A#HLi2Xa@+m4p#PNi'M)1GEaMRRF)dRr'-K"&Y)eDS' 3!"Y)**S68'8b8PJ0LGa`JK2mCm)8Z6!H$4[8%pLhYbG``3P5m12509)dN!!XlP2 Dq1!TmCQ0Nb`JRc9A55ej6R,)FH"60-Da#ET63NJS!db@9V+6q63-BU#9@X43KM2 *T9Pdd*SEa+E0PTN*6ABDQNm(2F*1aM!0kb0$kclb[PKHECB6$%NeFrQrA3T8$R3 Bc'T3@*Dc#*4`3%0eD!3+)3QYjY&PL$4-&)eN[JB6"0f,LD6(B-9QfiH)B,[,LQ- i`aVf-BFlG+G&k"!$&'*i$LJiJFQ)8)3jJq#(e3EQ'1@6lIE4BGa8Y')ICaZ$MVT lc9q5pa2SlHEfe6PFa6Z`LSLXa1mb@-RBTYmVirhPkiKj)@Aq6adRlHdd+a2KFJl JYBG3RjUJ+%B@2MNc*a36-k,e$Ir4jKY-PiBcS!(J-C`Y#U9,5$6%@Lh!(Jc5brC `b)`e$6&4iZp3H(%@Ca`Q'rHb&-!XCTQC(-0S63UR*f*cRI2FjbQR0TY)f2)eJ1! 1pE(34!4Nml)25!e*fH$ba2"-F)IcCB9+maRU`)E5600QiIlhN!$k$2(fa@4NS!T [JrHUlr(+*`KX1"1Al@-SCj*%QRJ(8B8`V6@J8e%)QPp$%fL&!M4i35fZ@DQh8k! @$qQK$!e#!E5P63BkkpPiq0X82Ce3KM[%hYXZ`$5Y3,!#4NR)"CcfG0-E,jBf$&Q Z&4m`H2'+mDGN1qXG$r2,@23b"i&Y8Te*1mE(4XqjT@Bdc(Gq'D$Ik6IF)Il)(eZ $c$"pb+$q$6@aHRL#!V%A0+NQ'Ukh9XeRHlKR"VSR-la(Cl$hIQ0$Hr,R!Q-MD[f h&Cjc35HNCM2AHLSA3dDcDNcJ&IR'H&-L(dC34bp5"XVJGhI"36'4H[jf&2ER"UB A3d4J4q5%"JFAJX5&F3)BE8L3!!BLq(Y)!$NeNB3B4d4'4!E#ddHZThCEm@FN''J Ma'Skif!&*"pfX5GT-"*TF(YbSMaKX)06`RkKG8m&9'jT3%rSaN08pd-6")9(0(b LaAMb!@0b!M%d''56YQ%$8R)bb#GU@#3`TNNMG'KNS%PIb(B+iRB#!R1$"B*XpNa hd%d8BNXK3K-amPN3)4%iNR2e`4"MF%%-S8'*k(6&`hkTC8p9&d2IGcmFYh8Hpb! JCfB%dN%P4eJ)"`)`S(iM9%)IQ%*("93[j%"F1#@&CK`UK!FIid#-eM%#p$eR`(Z 89J3QXad6K$i'3JFXic*PS'jh-@XfNd#!GM6AD$1mTc3Mi`ABb(X1j'UP!f[0JSk e0N*c`([piik5CM'd0$E)jRk`4'MDBdP0%!BfN@eP3!BS3$l0-K9b!c,N)5T%Y"T 4`RL@JcN6T!DL0c)N3!0&B!3j3'eHH'hIFdGkGhGj0hTmCarK4%ahX#G@*%dCJ6C em&LLU%h0mT)q+8d3!Nk244%VdL*Z-(q,0d&A8"4)-*'CJ@m10Pi`8h*p"**`8&` m``Bq3dm''"THT%Maai#j0im"UB$**M5LX6)Y-hh0U$0[158T+8$bXC)D*#HKThH N*j1FN5!R%K%6X@e@T#)XiL+M'*JrH(KRN!"iV9JGef&Z1$3I1c4e0@+(9$4@H)K %5X4%4cD9Bp52!8P2CJN6XCHC'dL3!1fA01rhPHG4J@2*Hh-%M[iaMKYBEQSJKj) j6E$T!ZAB+2mKPC4(K!aC"Ji*N36jHSS*4K[i&+MC4`D*!U`T'J5*PQ6TJ%k$(lk hDPUBK9DL1A(j3-'T1I,KL(q)(0"8)6YhIYX8L,2$NRJ*P([CQ0Q'MH'M1G%iM3p @PhD834X8"LeKJ`eb&(Q$RM,a4bF5P!-#L0dN6EAeL9`QL[096B3b"iej0`2D4iY "2AkMAX4h"ee8RBm%(IpA%h6fBf09IGGAC0X(4CjC1R#)QcT%Kj8*4*Fj4&q8KfI &QC+AJZ-PF&LN),6#4G86PXTCA'9d4[diT%1iMV6%C+lKC(D%4fkJ4ec*4b1$@i$ d"S+N)PH@'QUKG9`hIQGQIQ1a6F6)5"q%CmMaBeM),%ej9cq&KPlJ"IHf3bfU-f$ M)f&`-mSe3K#bERdU3"kb%Ae%!MK`!cC3!c3`!c)3!k*5PcdR%P$fE6YALDCi)HB jCKA5D55a*bG`)MRe(jaf6"A"%'DJ)K)P6HMM0iqbH#18P"j"*PkTE+e*"fJT!im k(`1#)cUL)SV#(01d2-"f)M8T)()LQrq4Pc$j6$1C"qC81QdD+I)4*[6%IJR"U++ bUL3'64&"6p6DI$&J!kkU-i0$6aP+"Xp6J,3URED+%#$!U2%AVMmf1(6D4aDk21, cRA1jJT,SFTCkV!9b)%aQ4b$42JFk)'96IZ9T%SNi9NiU4bl!C1Ei(j!!ejR"@6S 2+`G3#Q96+QA14@9DDQ8CqkAKYaSGF4D2pC!!D&90#JZ)2YN4AI)4CmSXGaDL*T& GhrN8&G4flH-JdJ5)0MF5)dF',(%Q-2'3!)QiT@q`&eMDTBG8S"1MX4'l(2Uc1ef !R$H'AE%c0JRE4eV'C6CfAb"`!Q-cCl(MSb!`@dI`*b2KY+6'G,%c9Ufh0%bd9Rb !+Dj(YrCNYhJlTdXM,4DEC+8c9PD8Sl)SH39dT(#!4NSkJ[cDEcq,)8YC1YN'LD9 6Pf'!*`SK+$8cGcZh*bHLV([h6"3b@5"K@A+!@C1V-j!!Sa&li6pZQjB(L!)9U"C miKjZK,CB@Q9F1V*RJlZDXj*Vq`D!`JDabl@pYD3kSlL-Zk&I-S6%8S*&Fi+CXDr 5QVElkCq,flN%'VNQmDNr+AUMQf'SLMU*JEUU+d+4SV4-qdHakhUfLcBraVa*kVa 1@$TX1$,2k6pldETR%,ZhqaU1Hi@"4LaYmLCaiVd'NBMPLU&m8chUUTDdfklA+J2 aDJ2CGDrqDDp`i!@aSm&c1V945dmC'cYZ%V0I%Td6[&B9M&9b1NH`5JGN-X#$CM4 "!T!$$AKiBfeNAh0SC@aX,Q-!!++J!$8B`J#3"3'ReJ!e'-*!J'9%!$8B`J![UN` !-K%!!#rL*!"*SQiJ&!![!#p849K869"6)!%!SQfTiD+`kZJ!!!&q!!!+f`!!!4i !!!CiHUf1Y`#3"P6S!!!%##L3!!P"J`&PU&M)X+($Ka!E0X#$Cd`E-PrQS#R$KSf ,-3))8LQ#K8S6+&0!$!3!+!#3!)!M5jj-ZE,P5`"G3K,Fb41!U$DT`J98X#eJ!$p kbT!!!8(R$BJfEq58!6''cCXj(2-d50!Q$*daD%#)51*Q6KSb8jZ%'C2'6910)N" )090'UTXa8m@mHE0Q$SJ`ETD+Q3T9+Y8hCG2-S31BcPBcFYkd!F%'m*NkBFj-E8V C-QE0,VCZ*8ZRVTQeCIbDL8S3#B!%64#[I32!"B!#Y39)#9$Z0QrGIqS"8K!m1%% $!!M8pMe+`"3!IJ+d#M"[`$j4X05K'`U0qmk9!JN'3!L![!`!0F*3)m#!)!F!j`( -P%*3`B"frrlaY*'*!b25Z"R$TJkC-L"i8-N$Tm`F&fKm0!JiX1$"K%h+Y(NM*`p %L43*'N6)imQ8+R65X(NBFD*!N4Gj6#PcKXQE-'3qZU`i-U%8KfrUb"RM8'G)Lb5 0U#cDmQK2(NJBPT'$C8LER%eI)J8K)QT$UP@[3K64B#G-NR2SN!"KNdD-8De2dj) jD1BYcjKTj3JmSh-LAB%)LdK*XJ3%$$`dDY53!%%M"`dKCG1'56N'a"`d(1Q!'#2 dLab(Aqk3!0R43$*P%!)eKj&cCJaTdfNUMd'c'S5+e@IXE)PKS`[T"Qh##%54SZb H"JQQd*%M3c')-(#FK'P6KR5#bjQI`rPTaNQG0YD4K('c&L&d++ZR@jq54Jp#0(2 D9dH1*5`C+-Y"i#%c1Bcee2VK-FC9Ama4"Kee`%'FGGM*SCNGEl$a@`)[U!"#F'X J0)G3#0&"QfBHQJF(('b0-9NDElL"fK`JL&('ATZ&`3BECC!!d@)H)03h4"0%f2B #FXJGF@!3)k)R4aYcS!#GG05a!))*d((RA4Y13JQ(NG1PB"emmS(3!`K#dL%HH65 bjjk59kEAKTE)lGHIPb#JS109q-Q4JQhRUIQI'A'L`+9lARiCRhY[Q#'RI8+`mFB BDk4`T`NQ)!I#T('k58FB,IK!h4acK(%'3Mem#F1MN5D3!!!+PQ,U`aK"ZD&CU)D 4LYbTU@BDhaQ"'SB($MIB8!-0-mJ3Jk-J('IUV"4DL+&j-eT@KaJ'aP&('Dl'1#1 ,NMN)`KeTH"MJJ'38H'##a2Q),,+eqZ"''AM3!8GPAq)K))%')JL(GFHDQUaP"i) 3iQC#I9BY'@Pm0JBG(1%iaa[qIJL#'8Zab'fc,MlFUSd#23I#C`Zl%BBB0)*!BKK %QDX[Z[1'qbNGSC'a),*K@K%K#QkS9#@%E,#Tldadb-`'c6B$,)GRS)QQFlkQ9QJ Y'`dM*&#hDFMBhSNTEKa85ZZDM(3#mS,laG0d[,ccJ6i$cBD61"qG!,*+Nm(`[fj `&"c6F-LaU%2aZB'V#MqHV'rAp)kVS-jp0&"i!i#VI'$,a"Q(R"&$#!'&%$p9CXB BBPKh"4'69llYD-LC9)3FFPKQ(A*+Mr(CC1CYbp%D-"*X--)G@9ck[l+AFA$#)"6 DY0!#DmCa8%-K"$'0,U#Q)YqS@qM99%1XCZ1rR*&1VI"!#9Abm3K0c(6&e!Gm[@@ A-TSmmfXRF,PE+!la4KXN(SLLLPr@,#&bklZ!)T0Pe!QRrGE*(iUX)+A[`!N'!F5 FrYj3`$E!D3K#qFNFP%)MX3R`$C!!%d)5b)1(!qkT6bckdZ6#P-%0QZ%0+$$"qTa N"KNCL&L`LY[Sl&5X@BPQJHk$(ie58VAkU34I0pcIG2UA(arHce4"I!-"bp!G!hl TJKPFBK2"Bm1FS'Kc8,$E'*,3Sbm*KM"!Y1)E0NH%JR%46P#-R*'iL+mdm!N&+!J K##EhK)DiBA-T&!d,A9J''0E[$61mNl&-96fLcD&PF%UL&+H%Vck!S!`V3FJJ%e" )ML&59)e%ML-KDD!D%V)cPK50"c9jXX-P6PcfDP`$M+8FjMKR580N%'Dd&58Q6JP Y%3V2H-UM(5a4#34SX)jpr!F(0GA*1V1TM3VJi#39R**JFbJQ(@BM0J#PB8*+UaF )%[5lBXTKL(5B#SX3pMXGmFKN34T5N9D$*$6aVdUeR#)mdr6009R(Qp2ahjIJ1+I l,1G1Yk&RPM+&ccBF%cQiJCI)M,NFJUV*IA9`93!j%UFdH"!e#AN1Deb$QK@X3*! !Xd+#64L&JS,@bD(eR--@dY#&Sq&'0bb&N`T+bP!jS(3k+Q8TiB#d,feb-hc@'eM "G%Fl(+%[R6fEQIeZ&L'GmDaX5a@D)9ZQXqBYVCYDa"Z-l&B(V#(NU!Q!!jbHQBC S6SDD#AA55kZk,i+8B6cE&#YBRkV8S+9YSU9$J88aL9%HD,3e1qMS4cfC!$I'kD8 Vl3))3[!P*e5"#8`!UEk3!&!&0bL+T#CYU!m+QY1@CM)"K8YI0[[e8c3Jj$-)NS1 +l##MDD'cX'm8+f0"i&M)5KDfFDS6&Gi`*TFamdPSF&*HD15'NYjT"5!B9UjN5,V EKV@QQ8+Y80aJKGD##TL0I'3N#4Y@1)P!-&*iJK4dd,ZZpSj2e0P)4e`J!RcK&J@ kjHdZ5eUPi**2$X3e,JL3!+[F'!+bZGapEMe2kJ2TUVDk"EPZ-*%9@Y"U%NKp!%I a!!!: ---