From: (Chris Culy) cculy@blue.weeg.uiowa.edu Subject: Associative arrays for HyperCard This stack contains 2 XFCNs and 2 XCMDS to manage associative arrays. Associative arrays are arrays which can have strings as indices. For example, myPets[dog] Of course, the indices can be numbers as well, so these externals provide true arrays for HyperCard. These externals are free for non-commercial use, and may be freely distributed. If you like them, or are inspired to do a better job on associative arrays, send me e-mail: chris-culy@uiowa.edu Thanks. Chris (This file must be converted with BinHex 4.0) :(%&cFfpMD@&dDACP3A*bBAPc)%C[E'4PFLjcDA3!8dP84&0*9#%!N!3YbJ#3"!I p8dP8)3!"!!!YbR*-BA8#!*!%&J!!)#!B3A0cEf0TBA4TGQ9"FR*KHA-J4QpXC'9 b!*!(T2X!N!-Z!!J!kJ'F!*!$!J#3$iB!!!%Jrj!%!3#ZEDF4VQfR%3#3"RT1!*! ',86ri[rl!*!'#p`0$4*"Fh0[BfPKG'PfC5"KFR*KHA-!N!e1&3#3%4B!!#TS!*! $&J#3"&0838YA58a%!3#YPE[0VNH%+`!!363!!$'J!!!BJ3!!%2&,$RST!*!'qcm 1!&hfGYR,j(4KQd8hh63mArQkV*`QSG`elQDEFYSYG&&kGTbf-MRP+eRjHLeXS3Y 26ipGDc,IAV*QYfQh--)fjA63CVmPh&[BCS6YLa&'@(5l--*M&f%,Lbk-d)864KK KK"'km)84[M$###-lbLqkF-))AaMKZYNfGT(Y%EB``JMEE+&lCDC!iEpRJrbHFQq ILhNGf@3K[aKCb1f-c"E*3THMV3+RHANaaMM'@0PqaKl",q["EaEcD[#Cr1-c*1q UpQLJ4DTU#f@9Yj!$V@Md4aXl!j)r%['[D[IcD1,f4k,HaEAhADY-rHeVqIB-T9) qrdk2QI54C5i2Kd-"kI&!DiHd'2ME`c3VpJ"q2r25b6rHr1F,rr6hj(CcQ)EpJ2Z '!SZA@'(mY)+M@dAkk9rfDHICc*,m0LBj[ZTDFVREX5mq(Plp,8ZK+,R$BDREcl* ,T4$MlD+IT3qLST-V,k*LP#Xl8-Q3!#YEr)c,Qe2'(&)CUM@ZC6@RFXr2IGl989I aH'8`e"(JdVP(([b$GRm`X&!#N4U$V8[m)B9'MhD&#kASbJ!pq&*K'iUGrY#mTGa p$qq49V5&9d8DJbZMdN-,&K3A5K8V)ihYdEE`bN"%UZJ)V5U8bN-K5Hl3,N8#lB& )Cq"TI6$8YKaJFYX$83)Q0B*#PB&3B`X+%5RD*PQqBQ'FCBC&DQbA@YZLNPpUl@K C(SKS`Ke46K)D@k0YM2Y5VVqerFYS+&NHEm6)@S05@cM35YpIQS[q5fqrAa&UNlq AiVdK1@EA%Mi5,[5cHdSFhrl92er@M&[6Hc3@Ihp10A1(q39PV-DaPiA"3DGVFh@ )Z4Ub8!YEh*eXjSb"qb@0Rf@pYR1#lBK`pR*fdQCR*dpVRQDXFe&X-TVh@DYHDZ0 %Up22CUb92*,"@9E%@ajl`9eGeX"B6RPXdS1AKr`XFlrGbGlh-A'VMl'&k,dbll1 f9'q(fPZ6l$d6[D[`%[U4fDRfVJYcH8c5fm[BL6#[9NB*!hTil+,VS,LVET28aNC 3pq(YL&SVlSThFPE0fR3rbrLLRjP'l+,kFU'pRKeADfCdiG8ZXp$P*ER,FEc-4TH MU"feL8("kUl1`Rad2UBr@KklmTDIQ8qLiaX@ZCFTAqiRqRJZ[5)@Rj!!k[dXlCL -j#Lk(!15)kJG3@eJMK--Y0eJ),S92PJ@(dI9M4lED3)9jbE2!p9cdQ+jSmaCT4X a&9f@b2J)8a2`$8ZYmA(8PL@jQL(Cf3R-D4,FXkQe#jLGE8BCbj%aD@p-!@L'SF# 6#Qr3$4h6"FaQ'h"eiTHh9l"$3-"M,Qm$d5'l@)iT1B*lcPQF0(2MQa@aL62irSi b[3``,2hiR-@h0BGQZ2BV`,(-cJEZVhkC$5rj'irHTPrh[$`lThd0BjVhf#&#QF# )ELZ"KbCmi[FViTIXiPVZFi[LPmV2a5qTq*1F5&p#R,#MZm,Qp(aC+BVGQk!3Qje YmZrk4dVc-rDm9r-2JSEe1HPV--*$lhlb[JZ["['ljT&5a[DmK`Up#+12HFplQ%Z S9E!YM%mU6$)0GF@*4jR%EkLKd592Ca![$f!kHp([8'd[1$9p!0j+&Dm%[$9qCRK EaVXA,jh!ZrZk-Sb#RHqSbN#e%q@abkDI+J03T,f$2Z#@1!`1lA+mc!E#R,FEY4h !X'[cbfb(RIN%B&VT`9[[0jTCr#)`$b4RK-QR$5JcbPJ$2Zc'M"BUUQc$2T!!2Xp QN!$UD60)cdpZ"YiAh!ZC9)h1IG@23S'0mNDbbrG0hrDk6B41RZJ&l!2-QY,T+Y4 *ZHDK``i&Ii),DARiADP-)Id5TQ#a3$N-KFRhZF396(&lUMGHBPE'Gp5Zi*VKII" J,D'a!$PU0Y5bX!e-S*DMU&rD'k5%Gr6EZ1hfE)`pq$fZSR`5+0I4E-60bIIGbQ` iMl*C',&R'AF!aqL8(ZUV%STMa)CLM(6&Se`RTQ9J-Uk5e'[5S`mip+6#)30deeM b%ibkdiRT'+!0aS`%4R%(BG52TPkV[0S@CLP&Tph#m+c#)GeTe,kMF%MhTX)Kih0 iXr%1K`bHRmkP1SNFql1K-cNA3Cj,DHSecF9+fXLRYUDdSkQY+3dlccqHrjNfLNH 9cF%Z3Tqhi[ICUeUqAYEb0AJeK0rZT*E6LfK5bm0*V5'0lF,[UiS5T'%Re+qKUHR @*IBEX92Hq@4G%QY5Qm6d!IMef#9&Ki,IL#e10b(MKiZM[Vp%q*-E48PUBa92fJe UMb&d)jhC#pl8cUN(Gqj*-4Mm@PXHZh3-$)3$T&pI%E[dUTm*@e%l"Jf!aJV36re K[(X*0H`,q[fS$D!'jZYI4!epKDG4fkjXiF),8lZeCL5e@qZrU1c*qQ,&3G$2994 1Eb2e`hFHCJIpdFp8r!&pKV)rkR@+iZT8IZJZ+6ZAlTc#IpdCKBZkYpqHB1rAR'* k9iGI0R%krH6Kh24Rb&ZTL2hSK)TL)hjVl!ifJ%ei!0TEqQMX4iGPVqB$YF%dHAQ DmK4eiD*5GZ`DTbiH8"'9B)ZI*2CUXp&cG&(X4mq5pd,EPIlB0Gp&fDjdYZT(J`V ZKLRFr-B8EZhi,GaPY)YjHaAdfS1NYQ$N0i'pM[VGm%EiIE+1J-[DIG!4fQ!'2,h 9[HSfT&%iTSd5(r'pd@D)aYrX89mYJbV0"VC5i*K)iX"FY9[`XN563bS[j*&HD43 rJ0jA%8l8GU#@#fGT%2V$Up-U80pC`0e"KE[`BpX$jC()4pa9f)[pGjFb%3(kS)- r)Tbf,lkq%`mS1h&L'fC9Q22ZlrAD0IMHP96EipjHp#pqC81,B$-%4BXllk%5"TG --r+mR3(&L!A6eJe)(&$YpZf[ff4[Bl[BN!!k2m,IK,N0+A2c4Q[EA"dY%ZB'&V" L@jA9kqJYcPVDfj`Yc5X4JTHU)b9LmhQTE1"qUpIhVP3eF$r3(DSjac)[McP(@#C dLc&,8(5rb`5`IF,9iF[D[epN$IRP&d4@FmVdQHV0VSi(RI'*i,Mcl,Y&&P('f1h S+mSTbA'J8c9eikeXDAI6Dd0p,I-NIQPhG838JVPiF8Pk,0aeSMYX(1NEX&UpG4X Ec&qSM%rk6&BQ484i36jqD8rjKA`Q2H0BbB5RHSDDiK0Y`KFFmBN%pU*#jR)1"fH PYNJYP&d$he$MN!"%hdaP0p38Kl@E3k`QU+XVDhSRc&`G0Bh,)r@IVr!iZJIA"b8 SJl[D(-c#VqR`V)CaI!ZHEYp&6cFTP'DQfUr%pB6cl"Jcc`M1Pm3JYRa0SGe![VA 3*qmj)ZP"hLblD0I['51q5,0p4QNahX2aiIFVV*5421cd!NQCC!J@!dN4ATm'%J9 ,LBc&4&JXEVX",faf`m!F)*TY)8ce!`A5iTT6I!U,dhPf(0UP)B@0(G`3HXV2*N2 "*4&@$GB%V9lkbT1d`6*2plFX$3Z"PVECE#KIYX8YP8PZAiB(2@KLU#rfX0H2j"X NlF"FUG*49-FN,QJFk4q`"JASA(E0+FhX*2*&Q+*%-q)Yq)@V5K28G&Eh03X(0V6 `qALT@5*P"DY'2-lK0iDGClZ(d81JfH+El4QV1F9a&[IDp++XS2'HVcUCTmpEeJ! R4PKC9-$iDfmF@bcee2RV4kVlQi@$3&GJX'["P'a*E$"@a"JMr[K-#QIi#pFj-cX S3Z8+N!!ZU#EZ##RZB#2KIF(FkTk3!-kUKGVY(1S2Q8ldE1pjT6r%&fKm`SPq4hq Lff12SGZm"X(4lfYbRZ9pK@+$cY%IMIZX&[GhM`#$,FS9DS-ChRA0TX2h0SalHVc V3THmF(*BPHqNYlmjcp1(GhJ4ZP#S44FcGI(fYPlF[XlElmYbp"-h26f(5ePkN!# [h6LrTqD8VLb*rSRURU#eYVGC222#D+qhacF,l"Yf"(IlSHUc`8[pZPI([MEf0DZ QNd[dI1)*l'feF(,JH9V0IiFD1E"4BB%MkCl8@`YC1#KXhHbK14@SRHGl(rHc#9[ 35"V5,#6d3Afp`2N3AS[J$@Q,f*C0'Y13!1(Bc4Ke)4pAQRfeAiRc)G)l2lXm'T` Ppmb495QEHZcjAP$mNk-q)Fcp'96Nm[i%eUXDYm"Cj$bl'rfjR(b$"3V2c(Mp1qV VHFl&MPi(mrBePqAG#qimf#"8-Gpj9+6J$r'eS-h8'6rp0Cm9(A,blYeCbSTDX[$ 1d'VkIUp9mi2H0h[Hr+V[Y*N&qFVH"+E&Ll&aL3dQG5UjLTiRj[QNdl)qQ1Xm1bb &QG@GPH0K3Gdpcc$@F0(,XVUK-*VNE#VX"Nr[YTj@hY%,KH"YI(9Ib'`hBSDPADa JBAc#fQHY(jaJ,)MYR#dmX+(9q28M"cHdL38'Rj!!Eh$d@qV"Hm(E8ldZ`BE(R[3 ,P,baeLG32ZDb1'8-'4DhFe(H[3d6AaraER!Z5ZK!$IcQS1hdTUF&U$fI0mZVEjj PRKA-(LaPpVB,`k@X(TAD"R$3aiHCP-49lR#H29pQ&m2-2)Zf"r,6l)DJbI)%[A! mK#eYVP32,Q*A9$TkXBfFlrD,M'NV&bq4LU4k'f[@0I#ekbYl*Dk*Vqb15PZHqHi cEr3'q#fpVhFrF5aqd6Vl,jp[%LUIUHc',MQ1RF#NSRQSFJNd"5kGj()-r-AIYXC S[f!j0GK0RHU@kKjf[DjUc!+rZ3&rAmEIFIbG`epbNX9Zq*rSE69MTdYb[&*qBmi c*ppmIR&PH3cfI!GMVQ@ZMN*kj)qXBNbrm9V+kFVBcC36c5Q4FZ)2*P*12"a9YLq 4D1+ETK*00MA49"%*q+0N0IKA8H$)j@m*)-T%*@rMkX"50Ke!PSQcT-YTT84558" 55@)kLD*+%V[YF-$G+&d8Lbp6XMV-4jk4G[qYV!jb2R&i-&TiIN)GpXSDq0*Z*HF 6VlRHZr1MR%mFQjPf#,h*MD(HfAMM`KYbq%3iHMj`"lk6!"rhZRFd6rCd`#b"`G- T49IN(E40k)JGQ&q'2PRi0LPZT0#%EI6%T`N8BC`f&pYXfFGm#[NMZ0$DA(6Y8a' C8(ZY)MB*0j!!H`@eJmTXZ)Z*1@MJe'YfTE`RrPhbRRKb'*6hG63Re-!@cG`TMj, ,6AQ8QRc&CG0)a#"mcm)h*U%aUaK%q$deLV1`3PB22rP8rqlh#+h6IIJp'VM"(0) Sh&M+lq&'lrJp0r`E,UCi,[cBcr`E$G*J(,DkRrJhh'$#[q'hh[4[q*jrm@m8&i@ $3R%[+Li+Ah204H%,Iq1Lm)1rG9'iSe-Z#YYbfdAKLUqk+0,2A*6Iq"KqGQApTfl %PDCIZa&ALRrZ4Pc*RR)MVRN$%qHRdr%'rR9$rq8fISrljjRMV*F5flLT-V'0Qq" pFJ@*E6cYiY3frRPe'em8L'+6cUIe@el*#kAQ`+TfD3hPLMX#9&M4eV+mX6A`Y$4 RHS$0r(D1H%Eb3DZ5FCiVd!JSB8!6B'*L!)`VR(&IqI+f5"6$@,j+kJ#fZI2Zqk1 f$UQPScdUYBF$+aSE9NN282X(#U8(&!#SY%@N"a)S(TM,G-V3C5H!XXBcpNf2N!! [RZ'%cc#-6(#IQJNfN9GJA[D4cc#j(#q4d-MB!UpJh-GdDp8mmGVV[5dIjiQa1CZ a45-[Ur4f*22%lbEca1qJ6`Kp5Y"R,Y*Sf2R6RTVDe)e+$NC*kNV`e0p&hc9UqKB E1UFk$jR#RG4D1K*qDX)@1e3kBF9@Re'*fJJbA'0)f!*6jPjJ'lZ9X&e6%EZ#[)N aUU$-f)QZfrmTB9YieGmS!$DNI6)aZr3UCFj'T'c5NEkkXKke2)8M@NT")GqFAJE hrq5Lf"A`,*AjcMKi-r20143HC%D4E"Rc)1'#AQCP3ZN6GhKJ1Y)9Ymf18TSBmc! KK@@F,hXQ3'jk$Cl*#6RVLD`hTI"-5!TQ)X9SU"jmQBff-%CB4j-T'ZS39I1[3*3 'TmC`*T(FTQba9Bm1i6cqY"im+,V9Hjh51q-ep&k0lm1BaQQ`i3584SF%ckL2aE[ 8ALDlL2l[8qi`P6V%T'2SI4kH1leeI2$fEEa&&Y*e8$$$[6%T8diEJrDFp$(0cN@ a#HPD0Mjpb8dYifS9MQ@BL@1ebE38d)jp[mI6BpIBN3ILXKA@QGEGB9fDLeK(#DT dT0JTAbNHPPQ(&(#D'k`E5E)1MPFD[,AdrC6Mr*Kek'"%APc1Uck,'MBX-Ab6GFE Bak`MG%MIblh"Ib2iRil*'d*JhFJ(V#1FfkCBCqV$fp96V$-K,fjF4UcMYkGBCfa 5@-IR,iV&pPpMAGVB,GDG$c-jch@F@)GmQ`DCVZ0bTQZ%-PhF-E!5@@$6DZ!IUHf TlQN9V*4KZmT&BqaZIK8*6h!4$$$"q64!Yr5+ZiPjbhPC3[e1E5pK'i9Em#'fRAH a055`T9d!+eqN6'hLYS&KTAcE30D60%U4dTYLe*!!F06q%0-qSUEB6U$(%8cmK$c aNh++E4pQF[)DLm8*0DH+&+1)5`Zk9N*6%IXaYLiY)5Y)G8a-9cbUpPb#'V`2h8* P[p'Hq5YiEq*4FZ$%#cHFAffhh"dc%`RTD-Ta43)8lhAKj2[eQ#r5lI'DZNhQ%Ql eF!QhUNRH*-HrSk5Q45G8CJ+D3(Re)KqE,+VEK!VfaA&5IVKl%"Yj&f*CLQU)-p8 kX3plNfK9%U4LV[Sq@pN14&)CQV#J*%Ee%fSDpL,3)ZG!IQ)`%2A$&D#8hSIT3YQ "lqT-[kPdKZe!S@6"XD[TGf('I8Vk9,mDXqP@Dm3qH*Ik2U34ekJmlJ+2ei$(A6+ 2emM+p4*BZ5E*icl*lHeprDmM1#"Mj`L*R*8HZCP+I19jD#*Tl4T28Z[8lMf[[rT "pbdIG@G&e$h9fFClHpGbXUZT`CIHRZRipTkaZNeHc!PXqqB[X!l+@'h6!Q#&-m, @@pa4PMhM"MF'IRH`0b4)QJ'V`K*c$lSeh-$fd96dQcqHbRrJR(6,edh!E1e@X*` ZU9$ZNqS[+*PM,Gd,fBA[,B3"haZK0&X9TI%%`L(rLN$Ph4`Vj4,JI'K,J+e5VF% $dVf*E`F8T%a9N!"5+%JC&+489T!!-RN6@)RTP5@Rjra!3F,%!0ecGaQ`-XQ!UaJ qC-"QHIkBLd$cVeAR6h@D2cBmJHD2(,L`"A1[[6lhL[r-`@kEpL-(LkX"'ZLrTZP U$RECrq4J[hJh"eZVCPIhrR-1&MN0rUe2Fa3DBc)(klZ9JhAp@`i@[i,PPcPBec3 %19JiDM`5lM4"cFlV1GLerjf$GI`f`D(*q53('lQCi)#A6bNVl!`F,NZJ-PDY$qC ChC+fCGj)hq&j)[)$KqFji`e'Eeq6d-9m[+Ir`)E36'@1P%T3*U(X88VH!ZR9K2I rX"1H*Qrl9G+@'jrZ)'R,[6rG30)@+G(*6a-UPmIq+bqlpaGjfBh68q4PBaHRdmR %6"q4F-dmmr0-6@CC)P-M)Uh*BSNNMGJkPD6j6#T*JrYeqBNcIG-#T'9qIC2[Iqr `86)'3d`QBc,@6UG`IbmMLkk-)11b6mh5RLH(f[6@arNBH1rTm2c5-V$AM[QB3+i Qj@2NQbr*hMXrcXFJIfJL9r`0TEIQD$)I-j,-ap#e2(+EFEFC"GQ6SrY3K[*9 [j+''kbZ*Hh[N9)V+45ekZ8fpIdHe81VHRJ(*%c&j8FJB9LmD$9qpYfI%eNdcQBr F#Y)9T[RS8i$m,IVTS8h'd!f(@'q4dF!,-&U!KQkri3U(BA`UbD2V5b9j$,JJaSk SR[UCZjkkFVH'-,d+I!IS1JZP$$#GTqrHKj+633EbjJkSq1jQ-`c)CLM*),SS+0C L4VLQCd!QaH""-QJ)1(2!mVR!MGY+0j*"1KYZldhL1dp&LH5')II6C"$BR%S'*5l Z$4'fP+0Na%dQm3!mZT'T+e[D`33Ma%'C%I)p-C'Z``hLqYj3mPS9G%26*erISlY hHe2j&H)&c9V0!m!2dX2$dCj,h1F5+6e0YqZ'j"c%hP313ZfFJj`$&!@cZSMHP!A I,rHQbeKdbfdA*NU*U9GaiHl`6kpiSCqHdJ(li-#mK$PpH-P([QkhlC2VGZ5p2kG -d3K0e5'[T-8&$[Q#*19DT-4e1m2-fpIYp"(jZPhaG83dN9)9%G4G"cG&8$)FQ,Z q$,2&&D"i+rh+LJcQk8f+LXXH+94!Rk1Q%#M&3+TT92446qr"@Pe-3D-Mr80rh3m 9h,V6LUHXH`ZH+T`U0E@!#1&8DN'jCa96EdMUeZ(AHH1H9DccNlY5NeI[@B9ZhTA k-HNQ)CUI['GPTSYH51j8*ZpC[IEK25Y,iTj9,1m6h1Y5Z,8AEq(1ZAl2kKAeRK@ ZNfQJbPTNrbYLPpIrhaVLPY@0rl%!2r[[Kh)LU15bCBbVUkT`S8%@qIMi,R"mMmf 8@'k81&UaL(e1B[DMk*MV!!K*r4m!r1&4@)`Xq`c98[IUdkkHXe,[5UJQq[m$!*! $$3#9l&Gf86`lZ@HAK*pN%`#'AeMR'QpP,R6!-rD4K8GPIPiGlD*FVpZ56A-K$0m $V1qQq,`irNXQ*lYcCEH`jD3mEb%,[mJQYh#bAl,TCJYIMPpXB@9("XYa&pE#chf %,mm[XJcBNGf6jAJH1EjS$55Em#-l6VD466EC%3T89pDJ`@BYE(Pqbj1GNH0("XZ 4m8*q)Fq@`e-"ANG4aK*XC$4pqb`qTVi9M(A1d,Zj,mEBFVaKbaKVk@(XQPIQ(mY [#9jHH)6"(E@&hkr(Ihq$I(L524"E&AZ!VTVbmGU24PqajY1r`9McLpTq52++-Km C#$R@0$28ll4Kb0rMaR(krF2MhI,hYH1Re1qT8kr4lqbTfIV[,2h@@Q*F5r6%b3r TQcE8hp9'hc6p2PYV,[E'1Qli8NI6GApaZ[QAMc2e0fhX`a6mlM2fd@re*I9A0lE Mqp4Idp("MZDBTKhTfpCh401dk9BM2Cdf@QZep+f*41XV4[cq`,MQSCDRDp1*EbH QDpFreh9[EY23*ijp*[hdMFqhIVX(,Kb(3pGk1)[&%d"H!pme0PY6Af+$mH@D&S[ 6r@`LNIKqB!cmbMA'hFq`Cjlj)VlCMcipILaGBcpii`G[c!c2$&pKaN5Zb2+j$Xr DVLp'!M-lSHIFhF+TF+2A,CA0E-$P+d-[Qlir2dBiZERV+hij3)cY6Sq-cZArFpm IM6,f5D51ibHCGVI'Y)qpb,52)i2@[c2S!al9'2[E!ic0(Q2D6ch&Y04QTJfGC@` B2F&Spa@[$+!fY'X%'Smk(@KCGMr,f"$-B69V1XLDG(N[[rAGpCXV"A`*0T`Hk*H ij(I0+ql$fKp3ch6`JaZdj!q2V(m2hlMQfVAYRk[&pEj0hjVHqQYGNlrh9brblbA -`kqrf((2kir-['r`ETkTVEh*d#FfE0*RRLfrX,9R1((I,r6XQ-kFj)bY2X!22&C VfYl5%l[TMDZr'&m4MqXVcb`I2Ff@IZ5@*DIhV[cQKYVdeSIZ1I$RPFillA6K&`G cmIa9ekliaUVpXHmhriEfZF6MHalBm9M[je&aV6R'qcD`6jmkH(4lamP2RVcr,Zh CM[X5[mlM"idRHIbjXHR[VRb@E6hG-VKrcGGD0Qk-phfPf,5kEHLfRX2$qdkX1h( RNkf2(ElVfQ6k593$V8raRKECA6"ffjQ1a!UpT5['(N'e3fqDil'A9mB6EG1X"d9 CR,H`("YD(PZH@!'0aJr6!cDpCMe,(13BYhBc2r#G`5H12(,Q51[pmHRQj0T0em9 DMqkSPBp9bV'Kr9HGrX,4k@dp+cEXrI+[0[reJj2pAqhTAlVVYKYRPVehbEILaql mqm4eiqYARXKZ!CCeCrP!UrEUbZq-pHmYIIEQ$8qIZ2G2(qerr-6,8aZVrMpmp@G rmfmq)qlpiCrXQhhYe5rpV[R4kemk-rlE4rlbm8pA2l[pLDq0PGH8el6h2Z`qpk& $d0j9fXYXlIVE@++&Y3lHp9$2)AiiGTh'%V@H@&[QB&mE1jf-*DL(k1PSLG@Z2pU fJhfG,DrG&er$PL9DqC+@H'hTTikd,@Qq9#rqRf$KLahFFIY!AlKIJZpUp!rb@iT 9P*2bGbNe$V'9iE[lQ4CE`Ji`6f[@(SkkL#E@M&0,R`K-brCPX9Pb+llB9pDY2!q +J[Y&+arF,UDijI1F@hASNF0p%FMAYTZG'"@(!ZlQH8R``1@1HqQP,$p$C)cYCc& 8BZ[BRfNTEGY-Nf5#q*0Fp"mb5f9E,("4V[K&RXhT"4FRES3MM%980l!Q-,b1r6` Ee"kNh4Z*US@Y",69qhbc!%b-l@9aB(qrYNVEV@e#d'C0Ec5`l`&K#m!"f#%5JGS LkL'#6'%40[X3@d+)f1Y!Y%`LqPi$dE!R*Lf-1SqU(,llGf6,J'`ED,b$[BH3!&A ('mK'ACi4"FYa,+G`(PhHmRa*'X6hMp"qr"hFX6Z0IL(b&D931SBl01I2FprkCij HqMXk0b)HqKGj&Ad*G'PeP14Tq)f6PmA$rU+TaM3mR@%[X0r52REH-flP[@l&#AM 9p8K1IQ!k@H(c@aGd3Ck9VALqkj&29FdJ@i5a"&b8bJ(XcF'M6)(RE4L-kIK9iD( #ah-bXm$+6[KU","j`DJ&5k2(%[B(JGT2eQH6k4PYDPJ!E*G!3)X53Ye',3cU%lC 9`S9NadJC1SM#Dd)3hI#Fm,-B$XPcTe)5RTAPQ5PZQe!lB5#p#c2N93jmNeEjh0L &%Dil`3eq!dq'M2!Y$B,EI[VQ$M`eB2CCemRja%Y@bX`)f5f+B3ml$d&%-6M*J%# `3%SNXL2X!FP#`P&26GK4hX,"i'CHX[i@'YYb)1Fj0#'6%Nr1mJ2,`Gk&"0Cq%Bm D0[GJcJTeAFpA-0b#866%6,0)ahU[*ma!T$h2R1)'24de-dDUmre[-al19KSTZYA GTM1PHk)-*,aU"89ZmCrKRD5QqQ-Taa$G'*'UI%bjY`)$SXG$fCR%4[qKXTlfID[ Jl$IYk%Q+TichJKr*X)+Xa$iJJV4Y*aX83XQP$&59#jfU@X3S6`39ce&hK+!K#-D 55&GaGU2fJ(D,0RXq2bU&b4FhX#@BNfC0'QGRcmmK+ZAp$VB8bDC,5b)cB5F,!ll EF2-GFMeQ2[kjC8Trrj9J`[`5jBSV$Z5Af-ZpkEh),l6AHHQMAVkHc@NFIYUKJYX C41YQ,61`*J9A[Y*r#(EPQ,D[IjjhEYYf-cPkEp'$UlRP)VbPYf*2k9![pka#-I# KDepiNb)(kV3ADT6[0@dcp2BqTSe5eS1"CbHJE`HCh[&j&lpVCqmHCELikphG0d, H8c)G*'+1(D@)$ZNLIM[Ab9R1[F)aZUS@V5cLZ1R`SSN"IZ!KMf!#Z9r13["UjcX 4XS4+k5PG,dd0Lm!IblQ&F9fr)dmT`[0&5N8I09,#bG6p9)+T#YY1F9rQ$&m!6LJ 6C'GhdXSK8(Q9L*-m!!p1PBAADhUjGPdI26H6k-Yl!JF-FPaR#r`2q3NNfab1NT, b+%'0i)$Qf&-b9hK@TK))!V3VckIF#T,)")!A45R&!B433@0Pba-j%P81lJ`%!H@ 2$lXC$Jql+$"`+Td-p'`TSAECVZYCN[Z@,)6H8l(FUYNZFK8b3,FX(#*8TcD&qeN 3iqK&iKj"+"-ih+Mh#kS,LHETp3fe#p0pK)l,dk1"dV#9[kh'IY)lr[Bl'-VCI'+ #6[DBi(P-5Rh%ZNHJ[iJp@&XRh6L1UD[JABqL$AU#[%[`qH(N9"bFi3'C9aM6TB4 J&VC0LP2ifVRd26N3jiTI`I-Tf83j3Z5NI!QG@kDB*q05!H%C36CNKDD5,jLj55S 1FZ3)j%(3K&m@@5Y[J3,5MBh*8[j`2M45JCQaPD23%d80p&9"3Xf!P@3D9N@K1Jb *CXC&&#ZDGYLX%A)9mHCLC0d23BN*UcGp-%BSXd8AlpVEH*q9c`Z2f!ZY,c,LA24 53QY3"%-QrR-LEeCXBL$L6Ji#e-k1MZjf2J*r$*0LQk5ej%U$`e8*$ZBk%&,B[IR EpFlfaAJ-(RFj"6LK"3TJ+G!FN!$0+AK"ZaI(GIdERK6[lJ`a`G"44E`$,-9Ki5T iQr283fZ5rHl1pKrj@lbQr'r0XAIp,li9rVHCmYf&8!j'k-&BbXAPT'PhMF2riXY U0dXIA#lha66fFcMr%Xi[iIa0q')"[PL'AqjLXGLG1*r%q5[+*kA9c5'90f3BMUJ 5313L+JVUbK#f),Y6,U#HN!#hKFpNLP&U3ZNJr3MK4c@jTSeh15!iK$!%p6F`3dQ )Nq3-SE[i&[Q#*jr`$eI3509T#HPAM9'%ZS"%K-JA@MTd3X%cG*IYFd$2kAP-&!V q1&6G&CS"iC!!'%2LZb+J'"5K$Ae@NEq)+%`(UZ95p'&DJi"XdA3+)F4r*Um1@R% JdD,ZUBqVPbh+KY"QN!$mb!J3%ZD`Pdd2FBE#ipQkD-k51i-)'('M+-kD2L8"40* j6R)Z5#,45V'Q8!M+fBi9)16#k@4#lH$*Hi6RYTehmKrVVI-r4XMZ5FSbBV6Ha5i UbXbK+AYETh2J`JB!BVS%'NeD0kK%G2J*1p5UiTP`SQcL1PQiRL0cK-(9fdCpq*r -!!,+a`S9XP,EdQ3b,Y*B[Ili*pk-lK$`QrP#ibTrY$leE[jJIiImF69$IS-)NR9 IDU1%mFGcLCZf)$q!mdk9*03i@4%KE9,p0qqPi*b5GkJ!e@dUbf[i"qU,5([*bpV VDUZhN!$r-L3X)T'%qh'[kq%&HCL$k#hZ4USRbqL5F5dHpK0V0lqVMkB6d-F@dJI P@f*5jX`8Ra!)d4p4M00&C0DNRDE+1HfmLM1kbP!lJ,+S(@43+4)*+KQ'q6DCqS" 1PNB+Rmc6*$!j+F`$4%"B*i6N8*X[Db3i+X@$!*Xe)+HGc0qS-i9L''C@4([M5,Z "C'NX$@VdJ#B",c9`j2!H)BdN6Ka)#U5m`m)+!b3MmdVr55VME`dT@IB%@Z`80fl LfAEMV8PqT@"kK-ISP*2dHS&p)G`ET"qB4bK!A5FQG%+U5a#kRP4&%(6SQjk&BNM k'!)&LQhKYEf068Pb(PfA6Y6Ta-Vr)SZNHiijj#IL,L945J*6rife6H@3!%9[m'e AE8$!c8RM,JkiVQ*6L!)m6e*&8Zr0mYJQU3r,ZC4X&NIkX',3L&"T6m(CK+c)j13 U@FqjGJcS9@Z@p0%Zc4Fm8F%%HeXFfRDTN9RmiM2+rpIKrb@mirq[bbf%RE"HQf+ bm1(Z,c(&KB2FV8TLNKRPDbTTI86R553i8XG&8kGa#$p[aM[N1b5%#qmZ6h[mI%E X(aJB`E"d[F#"L)S#V5)dEr+#l@C!i54XS&jNb6U4QPELXCd23Zf6`NZ"6#imMc* (8@3R5-TbL`qa3#iKq483AXr@)94#S-T(Q*p&'5#%UD#Th!aRX0%,%3Tdj&52d&B #ZNA)!fM`PKD5($lBLlM@hEDi$i$HIQUq56)kadU#[,jEakU1$#'!4jY*)6%4"A* R5hMYr!khl'rN(1Xm'6a895q%iEU3!%K1Q2ajUP@Sr+"P!4"6NP0-A,V!89)@1GL lf8IP'3a)2F%iU8$-B(IL!h$61a`-l%5PLZ6Vee[MD"%LAb'lmb[P-MDcd#rchH$ HfR*j@YN&em4INL`[NN&M+m)I(pYTjGaa$MXPViQX2+TdX""%+afH*l)"'5ha9lU -Q@Uk-)8fpKpJrh!+E*!!N!$p%3,2`TD#3b)YfmL(DRPLe,3RC*Z(!633)D*XS94 0+F5q64XS-'ddc4DD%k"'T-9`qXmhQ,-Vf!J#TrLJ30hNm4%h(e3KJ)[E%r1V'I9 -,(LPV'#'#a5`UE#@rjm9LS8GLS@p#GVdr0HGLB8pLFDdq4f*YlrBDC92VSVf*aF AK5LIb0e(p4lj42X8rK[F&pK1fSf"dN%ei2V`FBG2#C2@%3SZY&*"`fT5&X05TqG @5)r3#,@+pA*30P+bej9eF0Jdi&P@3%%b40J@YJeSQ`)3X4p"@PEe)*N'6"+1KHJ M%F'$UG1!b5cda,+1SBfQ9aK!),@DD!L*)6TLE`FR6q!8FS5EL!"eTcLL1i8)0a% 6Z&2iF"'566G%-mk43R"R16L%E1)',1'N'+F,8F9*AQ%Q6R28iPD+#fFL@4i*%@Q )MLi18RFiXp#c&qa%,ZeGB81YiIlJ`NEQJJ8Zl-q0M1iBS[qC&fh`8HQQr%TkP[T 2E`X0C2K1`frdMZD'ljE-[q[C+I(4rq@,jZ$Va@iCT)2l!H')5C0p!M[8TJe91#i MMV#++$mqQYie9'GJeCi+rlJ(F@$eaDi%crmr$3d(8Q9KC#"0CA4TGQ8JBA*bBAP c!*!0Z%-!N"''!!!Y@J#3!aB!'J"!9%9B9(4dH(3"!+j(JjkZ4i1I!!!&VJ!!!F` !!!&C!!!"+4a$dN`!N!CZSL0%$L)U6K'j8%RV93kkH9LLDqj((G&$G)0%Lp(lSVp QF8peH@NhPq+XNcXKPL2TCU3p1Jf3!2MBfd*raqTmfp*h9pZ)iMjiUk1$Uh0[cKe ZTSNAr)#8B3F0ELNVZUYK'Q9#`m5fP$R[qXJ2FSGf1kMXQQQj24Hm4%fl*4VF[Cf fl2ii$HpqP(BJVcVN96H@PcDIPaGiLBZh%@fjhEbR3D*P@fl2hJ1pCI#3!,3AQK# $KGbGQLV&0,Vcc+AddFIVk+2pEp"(Rk[)j4`1p'Yb15SK&pA5&-FHCe1KhlEbJPX a26qeUcK(r16ZfE'8jFT6`f0+l#MAr"X1#AKqH"SaKTSfV[4c8ij**Chr0XX3k!+ DQT!!ie`eC8NTFlIp'bfE!"Bbl'qkM&d9QBa&pX!3Kr21)KrpUrXR$!)a!@-k`j& ZB,jqIb5+2UMSClJjm-%93SBY,)XqqYd2[3m!!&%ZaKm'BHcf")!(KV$E(`S$*HK XdY[#`"hbmMI$DNJ$'))XGmLGk32ZF"Kkr'lXMj!!@icFfH&NS9#h+S5[q@R#q$d -m,K$J(%6!-I)(mSN"!lm)DrIi`XR!a0%`0I2RF8'I6+K-#[EiF2KEPkBf8-SY'H 3!'T'+1b6!FciiNLKdr1"%*H9lN-j-K0I-#J$BFKMZ)rS*$i8FJI$J%8`i[Ik!%D F6aMVa#2#KpQX$qRGb%XDl+jJ8RdHmT%A")8`*2I!V#`I)L8(J11lS(8-h0Pm"m3 *XS(AccIEil#2&fTQJ'c)JD!r3-6l[L`C)#*NK4-EqT(2bfr+JF"0$"*L$AeJ1S# K0I[#6Yf3!&HB4HSTCERp3De3k''3!$mXph$"l*DF(dEGb6i[*p`2!!!K)4K"Fh0 [BfPKG'PfC8&bFQ&jFb"'EfaNCA)!N!`Z!!J!kJ'F!*!$!3!!+QJ!N!F@!*!$KJ! !!5$rN!3"!+jYTa'ZEDF4!*!'HNi!N!BXe2rLrrX!N!DXjiJ&!!!: